diff --git a/.project b/.project new file mode 100644 index 00000000000..9259477aa08 --- /dev/null +++ b/.project @@ -0,0 +1,11 @@ + + + jOOQ-trunk + + + + + + + + diff --git a/LICENSE b/LICENSE new file mode 100644 index 00000000000..14ab85a6b7d --- /dev/null +++ b/LICENSE @@ -0,0 +1,33 @@ +Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com +All rights reserved. + +This software is licensed to you under the Apache License, Version 2.0 +(the "License"); You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +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 "jOOQ" 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 COPYRIGHT OWNER 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. \ No newline at end of file diff --git a/README b/README new file mode 100644 index 00000000000..dd0e61cac1e --- /dev/null +++ b/README @@ -0,0 +1,24 @@ +What's jOOQ +=========== + +jOOQ stands for Java Object Oriented Querying. It combines these essential features: + + * Code Generation: + jOOQ generates a simple Java representation of your database schema. Every table, view, stored procedure, enum, UDT is a class. + + * Active records: + jOOQ implements an easy-to-use active record pattern. It is NOT an OR-mapper, but provides a 1:1 mapping between tables/views and classes. Between columns and members. + + * Typesafe SQL: + jOOQ allows for writing compile-time typesafe querying using its built-in DSL. + + * SQL standard: + jOOQ supports all standard SQL language features including the more complex UNION's, nested SELECTs, joins, aliasing + + * Vendor-specific feature support: + jOOQ encourages the use of vendor-specific extensions such as stored procedures, UDT's and ARRAY's, recursive queries, and many more. + +For more details please visit http://www.jooq.org + +Follow jOOQ on Twitter: http://twitter.com/#!/JavaOOQ +... and on Wordpress: http://lukaseder.wordpress.com diff --git a/authors.txt b/authors.txt new file mode 100644 index 00000000000..078867a0a35 --- /dev/null +++ b/authors.txt @@ -0,0 +1,2 @@ +lukaseder = Lukas Eder +Chrriis = Chrriis diff --git a/jOOQ-codegen-maven-example/.classpath b/jOOQ-codegen-maven-example/.classpath new file mode 100644 index 00000000000..783c2333c8d --- /dev/null +++ b/jOOQ-codegen-maven-example/.classpath @@ -0,0 +1,11 @@ + + + + + + + + + + + diff --git a/jOOQ-codegen-maven-example/.gitignore b/jOOQ-codegen-maven-example/.gitignore new file mode 100644 index 00000000000..ea8c4bf7f35 --- /dev/null +++ b/jOOQ-codegen-maven-example/.gitignore @@ -0,0 +1 @@ +/target diff --git a/jOOQ-codegen-maven-example/.project b/jOOQ-codegen-maven-example/.project new file mode 100644 index 00000000000..c5ada0e7c47 --- /dev/null +++ b/jOOQ-codegen-maven-example/.project @@ -0,0 +1,23 @@ + + + jOOQ-codegen-maven-example + + + + + + org.eclipse.jdt.core.javabuilder + + + + + org.maven.ide.eclipse.maven2Builder + + + + + + org.maven.ide.eclipse.maven2Nature + org.eclipse.jdt.core.javanature + + diff --git a/jOOQ-codegen-maven-example/.settings/org.eclipse.jdt.core.prefs b/jOOQ-codegen-maven-example/.settings/org.eclipse.jdt.core.prefs new file mode 100644 index 00000000000..eea4bca85e9 --- /dev/null +++ b/jOOQ-codegen-maven-example/.settings/org.eclipse.jdt.core.prefs @@ -0,0 +1,350 @@ +#Sat Nov 05 12:53:40 CET 2011 +eclipse.preferences.version=1 +org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled +org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.6 +org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve +org.eclipse.jdt.core.compiler.compliance=1.6 +org.eclipse.jdt.core.compiler.debug.lineNumber=generate +org.eclipse.jdt.core.compiler.debug.localVariable=generate +org.eclipse.jdt.core.compiler.debug.sourceFile=generate +org.eclipse.jdt.core.compiler.problem.annotationSuperInterface=warning +org.eclipse.jdt.core.compiler.problem.assertIdentifier=error +org.eclipse.jdt.core.compiler.problem.autoboxing=ignore +org.eclipse.jdt.core.compiler.problem.comparingIdentical=warning +org.eclipse.jdt.core.compiler.problem.deadCode=warning +org.eclipse.jdt.core.compiler.problem.deprecation=warning +org.eclipse.jdt.core.compiler.problem.deprecationInDeprecatedCode=disabled +org.eclipse.jdt.core.compiler.problem.deprecationWhenOverridingDeprecatedMethod=disabled +org.eclipse.jdt.core.compiler.problem.discouragedReference=warning +org.eclipse.jdt.core.compiler.problem.emptyStatement=ignore +org.eclipse.jdt.core.compiler.problem.enumIdentifier=error +org.eclipse.jdt.core.compiler.problem.fallthroughCase=ignore +org.eclipse.jdt.core.compiler.problem.fatalOptionalError=disabled +org.eclipse.jdt.core.compiler.problem.fieldHiding=warning +org.eclipse.jdt.core.compiler.problem.finalParameterBound=warning +org.eclipse.jdt.core.compiler.problem.finallyBlockNotCompletingNormally=warning +org.eclipse.jdt.core.compiler.problem.forbiddenReference=warning +org.eclipse.jdt.core.compiler.problem.hiddenCatchBlock=warning +org.eclipse.jdt.core.compiler.problem.incompatibleNonInheritedInterfaceMethod=warning +org.eclipse.jdt.core.compiler.problem.incompleteEnumSwitch=ignore +org.eclipse.jdt.core.compiler.problem.indirectStaticAccess=ignore +org.eclipse.jdt.core.compiler.problem.localVariableHiding=warning +org.eclipse.jdt.core.compiler.problem.methodWithConstructorName=warning +org.eclipse.jdt.core.compiler.problem.missingDeprecatedAnnotation=warning +org.eclipse.jdt.core.compiler.problem.missingHashCodeMethod=ignore +org.eclipse.jdt.core.compiler.problem.missingOverrideAnnotation=warning +org.eclipse.jdt.core.compiler.problem.missingOverrideAnnotationForInterfaceMethodImplementation=enabled +org.eclipse.jdt.core.compiler.problem.missingSerialVersion=warning +org.eclipse.jdt.core.compiler.problem.missingSynchronizedOnInheritedMethod=warning +org.eclipse.jdt.core.compiler.problem.noEffectAssignment=warning +org.eclipse.jdt.core.compiler.problem.noImplicitStringConversion=warning +org.eclipse.jdt.core.compiler.problem.nonExternalizedStringLiteral=ignore +org.eclipse.jdt.core.compiler.problem.nullReference=error +org.eclipse.jdt.core.compiler.problem.overridingPackageDefaultMethod=warning +org.eclipse.jdt.core.compiler.problem.parameterAssignment=ignore +org.eclipse.jdt.core.compiler.problem.possibleAccidentalBooleanAssignment=warning +org.eclipse.jdt.core.compiler.problem.potentialNullReference=warning +org.eclipse.jdt.core.compiler.problem.rawTypeReference=warning +org.eclipse.jdt.core.compiler.problem.redundantNullCheck=warning +org.eclipse.jdt.core.compiler.problem.redundantSuperinterface=warning +org.eclipse.jdt.core.compiler.problem.specialParameterHidingField=disabled +org.eclipse.jdt.core.compiler.problem.staticAccessReceiver=warning +org.eclipse.jdt.core.compiler.problem.suppressOptionalErrors=disabled +org.eclipse.jdt.core.compiler.problem.suppressWarnings=enabled +org.eclipse.jdt.core.compiler.problem.syntheticAccessEmulation=ignore +org.eclipse.jdt.core.compiler.problem.typeParameterHiding=warning +org.eclipse.jdt.core.compiler.problem.uncheckedTypeOperation=warning +org.eclipse.jdt.core.compiler.problem.undocumentedEmptyBlock=ignore +org.eclipse.jdt.core.compiler.problem.unhandledWarningToken=warning +org.eclipse.jdt.core.compiler.problem.unnecessaryElse=ignore +org.eclipse.jdt.core.compiler.problem.unnecessaryTypeCheck=warning +org.eclipse.jdt.core.compiler.problem.unqualifiedFieldAccess=ignore +org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownException=warning +org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionExemptExceptionAndThrowable=enabled +org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionIncludeDocCommentReference=enabled +org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionWhenOverriding=disabled +org.eclipse.jdt.core.compiler.problem.unusedImport=warning +org.eclipse.jdt.core.compiler.problem.unusedLabel=warning +org.eclipse.jdt.core.compiler.problem.unusedLocal=warning +org.eclipse.jdt.core.compiler.problem.unusedObjectAllocation=ignore +org.eclipse.jdt.core.compiler.problem.unusedParameter=warning +org.eclipse.jdt.core.compiler.problem.unusedParameterIncludeDocCommentReference=enabled +org.eclipse.jdt.core.compiler.problem.unusedParameterWhenImplementingAbstract=disabled +org.eclipse.jdt.core.compiler.problem.unusedParameterWhenOverridingConcrete=disabled +org.eclipse.jdt.core.compiler.problem.unusedPrivateMember=warning +org.eclipse.jdt.core.compiler.problem.unusedWarningToken=warning +org.eclipse.jdt.core.compiler.problem.varargsArgumentNeedCast=warning +org.eclipse.jdt.core.compiler.source=1.6 +org.eclipse.jdt.core.formatter.align_type_members_on_columns=true +org.eclipse.jdt.core.formatter.alignment_for_arguments_in_allocation_expression=16 +org.eclipse.jdt.core.formatter.alignment_for_arguments_in_annotation=0 +org.eclipse.jdt.core.formatter.alignment_for_arguments_in_enum_constant=16 +org.eclipse.jdt.core.formatter.alignment_for_arguments_in_explicit_constructor_call=16 +org.eclipse.jdt.core.formatter.alignment_for_arguments_in_method_invocation=16 +org.eclipse.jdt.core.formatter.alignment_for_arguments_in_qualified_allocation_expression=16 +org.eclipse.jdt.core.formatter.alignment_for_assignment=0 +org.eclipse.jdt.core.formatter.alignment_for_binary_expression=16 +org.eclipse.jdt.core.formatter.alignment_for_compact_if=16 +org.eclipse.jdt.core.formatter.alignment_for_conditional_expression=80 +org.eclipse.jdt.core.formatter.alignment_for_enum_constants=49 +org.eclipse.jdt.core.formatter.alignment_for_expressions_in_array_initializer=16 +org.eclipse.jdt.core.formatter.alignment_for_method_declaration=0 +org.eclipse.jdt.core.formatter.alignment_for_multiple_fields=16 +org.eclipse.jdt.core.formatter.alignment_for_parameters_in_constructor_declaration=16 +org.eclipse.jdt.core.formatter.alignment_for_parameters_in_method_declaration=16 +org.eclipse.jdt.core.formatter.alignment_for_selector_in_method_invocation=16 +org.eclipse.jdt.core.formatter.alignment_for_superclass_in_type_declaration=16 +org.eclipse.jdt.core.formatter.alignment_for_superinterfaces_in_enum_declaration=16 +org.eclipse.jdt.core.formatter.alignment_for_superinterfaces_in_type_declaration=16 +org.eclipse.jdt.core.formatter.alignment_for_throws_clause_in_constructor_declaration=16 +org.eclipse.jdt.core.formatter.alignment_for_throws_clause_in_method_declaration=16 +org.eclipse.jdt.core.formatter.blank_lines_after_imports=1 +org.eclipse.jdt.core.formatter.blank_lines_after_package=1 +org.eclipse.jdt.core.formatter.blank_lines_before_field=0 +org.eclipse.jdt.core.formatter.blank_lines_before_first_class_body_declaration=0 +org.eclipse.jdt.core.formatter.blank_lines_before_imports=1 +org.eclipse.jdt.core.formatter.blank_lines_before_member_type=1 +org.eclipse.jdt.core.formatter.blank_lines_before_method=1 +org.eclipse.jdt.core.formatter.blank_lines_before_new_chunk=1 +org.eclipse.jdt.core.formatter.blank_lines_before_package=0 +org.eclipse.jdt.core.formatter.blank_lines_between_import_groups=1 +org.eclipse.jdt.core.formatter.blank_lines_between_type_declarations=1 +org.eclipse.jdt.core.formatter.brace_position_for_annotation_type_declaration=end_of_line +org.eclipse.jdt.core.formatter.brace_position_for_anonymous_type_declaration=end_of_line +org.eclipse.jdt.core.formatter.brace_position_for_array_initializer=end_of_line +org.eclipse.jdt.core.formatter.brace_position_for_block=end_of_line +org.eclipse.jdt.core.formatter.brace_position_for_block_in_case=end_of_line +org.eclipse.jdt.core.formatter.brace_position_for_constructor_declaration=end_of_line +org.eclipse.jdt.core.formatter.brace_position_for_enum_constant=end_of_line +org.eclipse.jdt.core.formatter.brace_position_for_enum_declaration=end_of_line +org.eclipse.jdt.core.formatter.brace_position_for_method_declaration=end_of_line +org.eclipse.jdt.core.formatter.brace_position_for_switch=end_of_line +org.eclipse.jdt.core.formatter.brace_position_for_type_declaration=end_of_line +org.eclipse.jdt.core.formatter.comment.clear_blank_lines_in_block_comment=true +org.eclipse.jdt.core.formatter.comment.clear_blank_lines_in_javadoc_comment=true +org.eclipse.jdt.core.formatter.comment.format_block_comments=true +org.eclipse.jdt.core.formatter.comment.format_header=false +org.eclipse.jdt.core.formatter.comment.format_html=true +org.eclipse.jdt.core.formatter.comment.format_javadoc_comments=true +org.eclipse.jdt.core.formatter.comment.format_line_comments=true +org.eclipse.jdt.core.formatter.comment.format_source_code=true +org.eclipse.jdt.core.formatter.comment.indent_parameter_description=true +org.eclipse.jdt.core.formatter.comment.indent_root_tags=true +org.eclipse.jdt.core.formatter.comment.insert_new_line_before_root_tags=insert +org.eclipse.jdt.core.formatter.comment.insert_new_line_for_parameter=do not insert +org.eclipse.jdt.core.formatter.comment.line_length=80 +org.eclipse.jdt.core.formatter.comment.new_lines_at_block_boundaries=true +org.eclipse.jdt.core.formatter.comment.new_lines_at_javadoc_boundaries=true +org.eclipse.jdt.core.formatter.comment.preserve_white_space_between_code_and_line_comments=false +org.eclipse.jdt.core.formatter.compact_else_if=true +org.eclipse.jdt.core.formatter.continuation_indentation=1 +org.eclipse.jdt.core.formatter.continuation_indentation_for_array_initializer=1 +org.eclipse.jdt.core.formatter.disabling_tag=@formatter\:off +org.eclipse.jdt.core.formatter.enabling_tag=@formatter\:on +org.eclipse.jdt.core.formatter.format_guardian_clause_on_one_line=false +org.eclipse.jdt.core.formatter.format_line_comment_starting_on_first_column=true +org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_annotation_declaration_header=true +org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_enum_constant_header=true +org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_enum_declaration_header=true +org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_type_header=true +org.eclipse.jdt.core.formatter.indent_breaks_compare_to_cases=true +org.eclipse.jdt.core.formatter.indent_empty_lines=false +org.eclipse.jdt.core.formatter.indent_statements_compare_to_block=true +org.eclipse.jdt.core.formatter.indent_statements_compare_to_body=true +org.eclipse.jdt.core.formatter.indent_switchstatements_compare_to_cases=true +org.eclipse.jdt.core.formatter.indent_switchstatements_compare_to_switch=true +org.eclipse.jdt.core.formatter.indentation.size=4 +org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_field=insert +org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_local_variable=insert +org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_member=insert +org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_method=insert +org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_package=insert +org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_parameter=do not insert +org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_type=insert +org.eclipse.jdt.core.formatter.insert_new_line_after_label=do not insert +org.eclipse.jdt.core.formatter.insert_new_line_after_opening_brace_in_array_initializer=do not insert +org.eclipse.jdt.core.formatter.insert_new_line_at_end_of_file_if_missing=insert +org.eclipse.jdt.core.formatter.insert_new_line_before_catch_in_try_statement=insert +org.eclipse.jdt.core.formatter.insert_new_line_before_closing_brace_in_array_initializer=do not insert +org.eclipse.jdt.core.formatter.insert_new_line_before_else_in_if_statement=insert +org.eclipse.jdt.core.formatter.insert_new_line_before_finally_in_try_statement=insert +org.eclipse.jdt.core.formatter.insert_new_line_before_while_in_do_statement=insert +org.eclipse.jdt.core.formatter.insert_new_line_in_empty_annotation_declaration=do not insert +org.eclipse.jdt.core.formatter.insert_new_line_in_empty_anonymous_type_declaration=do not insert +org.eclipse.jdt.core.formatter.insert_new_line_in_empty_block=do not insert +org.eclipse.jdt.core.formatter.insert_new_line_in_empty_enum_constant=do not insert +org.eclipse.jdt.core.formatter.insert_new_line_in_empty_enum_declaration=do not insert +org.eclipse.jdt.core.formatter.insert_new_line_in_empty_method_body=do not insert +org.eclipse.jdt.core.formatter.insert_new_line_in_empty_type_declaration=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_and_in_type_parameter=insert +org.eclipse.jdt.core.formatter.insert_space_after_assignment_operator=insert +org.eclipse.jdt.core.formatter.insert_space_after_at_in_annotation=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_at_in_annotation_type_declaration=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_binary_operator=insert +org.eclipse.jdt.core.formatter.insert_space_after_closing_angle_bracket_in_type_arguments=insert +org.eclipse.jdt.core.formatter.insert_space_after_closing_angle_bracket_in_type_parameters=insert +org.eclipse.jdt.core.formatter.insert_space_after_closing_brace_in_block=insert +org.eclipse.jdt.core.formatter.insert_space_after_closing_paren_in_cast=insert +org.eclipse.jdt.core.formatter.insert_space_after_colon_in_assert=insert +org.eclipse.jdt.core.formatter.insert_space_after_colon_in_case=insert +org.eclipse.jdt.core.formatter.insert_space_after_colon_in_conditional=insert +org.eclipse.jdt.core.formatter.insert_space_after_colon_in_for=insert +org.eclipse.jdt.core.formatter.insert_space_after_colon_in_labeled_statement=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_allocation_expression=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_annotation=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_array_initializer=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_constructor_declaration_parameters=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_constructor_declaration_throws=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_enum_constant_arguments=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_enum_declarations=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_explicitconstructorcall_arguments=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_for_increments=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_for_inits=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_method_declaration_parameters=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_method_declaration_throws=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_method_invocation_arguments=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_multiple_field_declarations=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_multiple_local_declarations=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_parameterized_type_reference=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_superinterfaces=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_type_arguments=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_type_parameters=insert +org.eclipse.jdt.core.formatter.insert_space_after_ellipsis=insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_parameterized_type_reference=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_type_arguments=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_type_parameters=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_brace_in_array_initializer=insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_bracket_in_array_allocation_expression=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_bracket_in_array_reference=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_annotation=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_cast=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_catch=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_constructor_declaration=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_enum_constant=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_for=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_if=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_method_declaration=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_method_invocation=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_parenthesized_expression=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_switch=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_synchronized=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_while=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_postfix_operator=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_prefix_operator=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_question_in_conditional=insert +org.eclipse.jdt.core.formatter.insert_space_after_question_in_wildcard=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_semicolon_in_for=insert +org.eclipse.jdt.core.formatter.insert_space_after_unary_operator=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_and_in_type_parameter=insert +org.eclipse.jdt.core.formatter.insert_space_before_assignment_operator=insert +org.eclipse.jdt.core.formatter.insert_space_before_at_in_annotation_type_declaration=insert +org.eclipse.jdt.core.formatter.insert_space_before_binary_operator=insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_angle_bracket_in_parameterized_type_reference=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_angle_bracket_in_type_arguments=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_angle_bracket_in_type_parameters=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_brace_in_array_initializer=insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_bracket_in_array_allocation_expression=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_bracket_in_array_reference=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_annotation=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_cast=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_catch=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_constructor_declaration=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_enum_constant=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_for=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_if=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_method_declaration=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_method_invocation=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_parenthesized_expression=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_switch=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_synchronized=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_while=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_colon_in_assert=insert +org.eclipse.jdt.core.formatter.insert_space_before_colon_in_case=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_colon_in_conditional=insert +org.eclipse.jdt.core.formatter.insert_space_before_colon_in_default=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_colon_in_for=insert +org.eclipse.jdt.core.formatter.insert_space_before_colon_in_labeled_statement=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_allocation_expression=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_annotation=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_array_initializer=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_constructor_declaration_parameters=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_constructor_declaration_throws=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_enum_constant_arguments=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_enum_declarations=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_explicitconstructorcall_arguments=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_for_increments=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_for_inits=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_method_declaration_parameters=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_method_declaration_throws=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_method_invocation_arguments=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_multiple_field_declarations=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_multiple_local_declarations=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_parameterized_type_reference=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_superinterfaces=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_type_arguments=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_type_parameters=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_ellipsis=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_parameterized_type_reference=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_type_arguments=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_type_parameters=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_annotation_type_declaration=insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_anonymous_type_declaration=insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_array_initializer=insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_block=insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_constructor_declaration=insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_enum_constant=insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_enum_declaration=insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_method_declaration=insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_switch=insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_type_declaration=insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_bracket_in_array_allocation_expression=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_bracket_in_array_reference=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_bracket_in_array_type_reference=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_annotation=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_annotation_type_member_declaration=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_catch=insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_constructor_declaration=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_enum_constant=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_for=insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_if=insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_method_declaration=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_method_invocation=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_parenthesized_expression=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_switch=insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_synchronized=insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_while=insert +org.eclipse.jdt.core.formatter.insert_space_before_parenthesized_expression_in_return=insert +org.eclipse.jdt.core.formatter.insert_space_before_parenthesized_expression_in_throw=insert +org.eclipse.jdt.core.formatter.insert_space_before_postfix_operator=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_prefix_operator=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_question_in_conditional=insert +org.eclipse.jdt.core.formatter.insert_space_before_question_in_wildcard=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_semicolon=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_semicolon_in_for=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_unary_operator=do not insert +org.eclipse.jdt.core.formatter.insert_space_between_brackets_in_array_type_reference=do not insert +org.eclipse.jdt.core.formatter.insert_space_between_empty_braces_in_array_initializer=do not insert +org.eclipse.jdt.core.formatter.insert_space_between_empty_brackets_in_array_allocation_expression=do not insert +org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_annotation_type_member_declaration=do not insert +org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_constructor_declaration=do not insert +org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_enum_constant=do not insert +org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_method_declaration=do not insert +org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_method_invocation=do not insert +org.eclipse.jdt.core.formatter.join_lines_in_comments=true +org.eclipse.jdt.core.formatter.join_wrapped_lines=true +org.eclipse.jdt.core.formatter.keep_else_statement_on_same_line=false +org.eclipse.jdt.core.formatter.keep_empty_array_initializer_on_one_line=false +org.eclipse.jdt.core.formatter.keep_imple_if_on_one_line=false +org.eclipse.jdt.core.formatter.keep_then_statement_on_same_line=false +org.eclipse.jdt.core.formatter.lineSplit=120 +org.eclipse.jdt.core.formatter.never_indent_block_comments_on_first_column=false +org.eclipse.jdt.core.formatter.never_indent_line_comments_on_first_column=false +org.eclipse.jdt.core.formatter.number_of_blank_lines_at_beginning_of_method_body=0 +org.eclipse.jdt.core.formatter.number_of_empty_lines_to_preserve=1 +org.eclipse.jdt.core.formatter.put_empty_statement_on_new_line=true +org.eclipse.jdt.core.formatter.tabulation.char=space +org.eclipse.jdt.core.formatter.tabulation.size=4 +org.eclipse.jdt.core.formatter.use_on_off_tags=false +org.eclipse.jdt.core.formatter.use_tabs_only_for_leading_indentations=false +org.eclipse.jdt.core.formatter.wrap_before_binary_operator=true +org.eclipse.jdt.core.formatter.wrap_outer_expressions_when_nested=true diff --git a/jOOQ-codegen-maven-example/.settings/org.eclipse.jdt.ui.prefs b/jOOQ-codegen-maven-example/.settings/org.eclipse.jdt.ui.prefs new file mode 100644 index 00000000000..b07f39ee3e9 --- /dev/null +++ b/jOOQ-codegen-maven-example/.settings/org.eclipse.jdt.ui.prefs @@ -0,0 +1,116 @@ +#Sat Nov 05 13:02:50 CET 2011 +cleanup.add_default_serial_version_id=false +cleanup.add_generated_serial_version_id=true +cleanup.add_missing_annotations=true +cleanup.add_missing_deprecated_annotations=true +cleanup.add_missing_methods=false +cleanup.add_missing_nls_tags=false +cleanup.add_missing_override_annotations=true +cleanup.add_missing_override_annotations_interface_methods=true +cleanup.add_serial_version_id=true +cleanup.always_use_blocks=true +cleanup.always_use_parentheses_in_expressions=false +cleanup.always_use_this_for_non_static_field_access=true +cleanup.always_use_this_for_non_static_method_access=false +cleanup.convert_to_enhanced_for_loop=false +cleanup.correct_indentation=true +cleanup.format_source_code=false +cleanup.format_source_code_changes_only=false +cleanup.make_local_variable_final=true +cleanup.make_parameters_final=false +cleanup.make_private_fields_final=true +cleanup.make_type_abstract_if_missing_method=false +cleanup.make_variable_declarations_final=false +cleanup.never_use_blocks=false +cleanup.never_use_parentheses_in_expressions=true +cleanup.organize_imports=true +cleanup.qualify_static_field_accesses_with_declaring_class=false +cleanup.qualify_static_member_accesses_through_instances_with_declaring_class=true +cleanup.qualify_static_member_accesses_through_subtypes_with_declaring_class=true +cleanup.qualify_static_member_accesses_with_declaring_class=true +cleanup.qualify_static_method_accesses_with_declaring_class=false +cleanup.remove_private_constructors=true +cleanup.remove_trailing_whitespaces=true +cleanup.remove_trailing_whitespaces_all=true +cleanup.remove_trailing_whitespaces_ignore_empty=false +cleanup.remove_unnecessary_casts=true +cleanup.remove_unnecessary_nls_tags=true +cleanup.remove_unused_imports=true +cleanup.remove_unused_local_variables=false +cleanup.remove_unused_private_fields=true +cleanup.remove_unused_private_members=false +cleanup.remove_unused_private_methods=true +cleanup.remove_unused_private_types=true +cleanup.sort_members=false +cleanup.sort_members_all=false +cleanup.use_blocks=true +cleanup.use_blocks_only_for_return_and_throw=false +cleanup.use_parentheses_in_expressions=false +cleanup.use_this_for_non_static_field_access=false +cleanup.use_this_for_non_static_field_access_only_if_necessary=false +cleanup.use_this_for_non_static_method_access=false +cleanup.use_this_for_non_static_method_access_only_if_necessary=true +cleanup_profile=_jOOQ +cleanup_settings_version=2 +eclipse.preferences.version=1 +editor_save_participant_org.eclipse.jdt.ui.postsavelistener.cleanup=true +formatter_profile=_jOOQ +formatter_settings_version=12 +org.eclipse.jdt.ui.ignorelowercasenames=true +org.eclipse.jdt.ui.importorder=java;javax;org.jooq;org;com; +org.eclipse.jdt.ui.javadoc=false +org.eclipse.jdt.ui.ondemandthreshold=99 +org.eclipse.jdt.ui.staticondemandthreshold=99 +org.eclipse.jdt.ui.text.custom_code_templates= +sp_cleanup.add_default_serial_version_id=true +sp_cleanup.add_generated_serial_version_id=false +sp_cleanup.add_missing_annotations=true +sp_cleanup.add_missing_deprecated_annotations=true +sp_cleanup.add_missing_methods=false +sp_cleanup.add_missing_nls_tags=false +sp_cleanup.add_missing_override_annotations=true +sp_cleanup.add_missing_override_annotations_interface_methods=true +sp_cleanup.add_serial_version_id=false +sp_cleanup.always_use_blocks=true +sp_cleanup.always_use_parentheses_in_expressions=false +sp_cleanup.always_use_this_for_non_static_field_access=false +sp_cleanup.always_use_this_for_non_static_method_access=false +sp_cleanup.convert_to_enhanced_for_loop=false +sp_cleanup.correct_indentation=false +sp_cleanup.format_source_code=false +sp_cleanup.format_source_code_changes_only=false +sp_cleanup.make_local_variable_final=false +sp_cleanup.make_parameters_final=false +sp_cleanup.make_private_fields_final=true +sp_cleanup.make_type_abstract_if_missing_method=false +sp_cleanup.make_variable_declarations_final=false +sp_cleanup.never_use_blocks=false +sp_cleanup.never_use_parentheses_in_expressions=true +sp_cleanup.on_save_use_additional_actions=true +sp_cleanup.organize_imports=true +sp_cleanup.qualify_static_field_accesses_with_declaring_class=false +sp_cleanup.qualify_static_member_accesses_through_instances_with_declaring_class=true +sp_cleanup.qualify_static_member_accesses_through_subtypes_with_declaring_class=true +sp_cleanup.qualify_static_member_accesses_with_declaring_class=false +sp_cleanup.qualify_static_method_accesses_with_declaring_class=false +sp_cleanup.remove_private_constructors=true +sp_cleanup.remove_trailing_whitespaces=true +sp_cleanup.remove_trailing_whitespaces_all=true +sp_cleanup.remove_trailing_whitespaces_ignore_empty=false +sp_cleanup.remove_unnecessary_casts=true +sp_cleanup.remove_unnecessary_nls_tags=false +sp_cleanup.remove_unused_imports=true +sp_cleanup.remove_unused_local_variables=false +sp_cleanup.remove_unused_private_fields=true +sp_cleanup.remove_unused_private_members=false +sp_cleanup.remove_unused_private_methods=true +sp_cleanup.remove_unused_private_types=true +sp_cleanup.sort_members=false +sp_cleanup.sort_members_all=false +sp_cleanup.use_blocks=false +sp_cleanup.use_blocks_only_for_return_and_throw=false +sp_cleanup.use_parentheses_in_expressions=false +sp_cleanup.use_this_for_non_static_field_access=false +sp_cleanup.use_this_for_non_static_field_access_only_if_necessary=true +sp_cleanup.use_this_for_non_static_method_access=false +sp_cleanup.use_this_for_non_static_method_access_only_if_necessary=true diff --git a/jOOQ-codegen-maven-example/.settings/org.maven.ide.eclipse.prefs b/jOOQ-codegen-maven-example/.settings/org.maven.ide.eclipse.prefs new file mode 100644 index 00000000000..8bea9918fba --- /dev/null +++ b/jOOQ-codegen-maven-example/.settings/org.maven.ide.eclipse.prefs @@ -0,0 +1,8 @@ +#Sun Apr 10 10:40:24 CEST 2011 +activeProfiles= +eclipse.preferences.version=1 +fullBuildGoals=process-test-resources +resolveWorkspaceProjects=true +resourceFilterGoals=process-resources resources\:testResources +skipCompilerPlugin=true +version=1 diff --git a/jOOQ-codegen-maven-example/LICENSE.txt b/jOOQ-codegen-maven-example/LICENSE.txt new file mode 100644 index 00000000000..fd12d44afa0 --- /dev/null +++ b/jOOQ-codegen-maven-example/LICENSE.txt @@ -0,0 +1,33 @@ + Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com + All rights reserved. + + This software is licensed to you under the Apache License, Version 2.0 + (the "License"); You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + 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 "jOOQ" 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 COPYRIGHT OWNER 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. \ No newline at end of file diff --git a/jOOQ-codegen-maven-example/pom.xml b/jOOQ-codegen-maven-example/pom.xml new file mode 100644 index 00000000000..9d8fd59d020 --- /dev/null +++ b/jOOQ-codegen-maven-example/pom.xml @@ -0,0 +1,398 @@ + + + oss-parent + org.sonatype.oss + 7 + + 4.0.0 + + org.jooq + jooq-codegen-maven-example + 2.2.0 + jar + + jOOQ Codegen Maven + jOOQ effectively combines complex SQL, typesafety, source code generation, active records, stored procedures, advanced data types, and Java in a fluent, intuitive DSL. + http://www.jooq.org + + + + + Apache License, Version 2.0 + http://www.jooq.org/inc/LICENSE.txt + repo + + + + + scm:svn:https://jooq.svn.sourceforge.net/svnroot/jooq + https://jooq.svn.sourceforge.net/svnroot/jooq + scm:svn:https://jooq.svn.sourceforge.net/svnroot/jooq + + + + Trac + https://sourceforge.net/apps/trac/jooq/report/6 + + + + + Lukas Eder + lukas.eder@gmail.com + + + Sander Plas + sander.plas@gmail.com + + + + + + org.jooq + jooq + 2.2.0 + jar + compile + + + junit + junit + 4.9 + jar + test + + + postgresql + postgresql + 9.0-801.jdbc4 + jar + test + + + net.sourceforge.jtds + jtds + 1.2.4 + jar + test + + + mysql + mysql-connector-java + 5.1.18 + jar + test + + + javax.persistence + persistence-api + 1.0.2 + jar + true + + + + + UTF-8 + + + + deploy + ${project.artifactId}-${project.version} + + + + + + org.jooq + jooq-codegen-maven + 2.2.0 + + + exec1 + + generate + + + + org.postgresql.Driver + jdbc:postgresql:postgres + public + postgres + test + + + org.jooq.util.DefaultGenerator + + org.jooq.util.postgres.PostgresDatabase + .* + + true + + + true + false + false + true + + + org.jooq.util.maven.example.postgres + target/generated-sources/jooq-postgres + + + + + + + exec2 + + generate + + + + net.sourceforge.jtds.jdbc.Driver + jdbc:jtds:sybase://lukas-hp:5000/TEST + dbo + sa + + + + + + org.jooq.util.DefaultGenerator + + org.jooq.util.ase.ASEDatabase + t_.*,x_.*,v_.*,V_.*,p_.*,f_.*,(f|p)[0-9]+,s_.* + + + + true + false + true + true + + + org.jooq.util.maven.example.ase + target/generated-sources/jooq-ase + + + + + + + exec3 + + generate + + + + com.mysql.jdbc.Driver + jdbc:mysql://localhost/test + root + + + + org.jooq.util.DefaultGenerator + + org.jooq.util.mysql.MySQLDatabase + .* + t_book_details + true + + + test + test2 + + + + + BOOLEAN_10 + 1,0 + + + BOOLEAN_YN_UC + "Y",N + + + BOOLEAN_YN_LC + y,"n" + + + BOOLEAN_YES_NO_UC + "YES","NO" + + + BOOLEAN_YES_NO_LC + yes,no + + + BOOLEAN_TRUE_FALSE_UC + TRUE,FALSE + + + BOOLEAN_TRUE_FALSE_LC + true,false + + + + + + + BOOLEAN_10 + (?i:(.*?\.)?T_BOOLEANS\.ONE_ZERO) + + + BOOLEAN_YN_UC + (?i:(.*?\.)?T_BOOLEANS\.Y_N_UC) + + + BOOLEAN_YN_LC + (?i:(.*?\.)?T_BOOLEANS\.Y_N_LC) + + + BOOLEAN_YES_NO_UC + (?i:(.*?\.)?T_BOOLEANS\.YES_NO_UC) + + + BOOLEAN_YES_NO_LC + (?i:(.*?\.)?T_BOOLEANS\.YES_NO_LC) + + + BOOLEAN_TRUE_FALSE_UC + (?i:(.*?\.)?T_BOOLEANS\.TRUE_FALSE_UC) + + + BOOLEAN_TRUE_FALSE_LC + (?i:(.*?\.)?T_BOOLEANS\.TRUE_FALSE_LC) + + + + + true + false + true + false + true + true + + + org.jooq.util.maven.example.mysql + target/generated-sources/jooq-mysql + + + + + + + + net.sourceforge.jtds + jtds + 1.2.4 + + + postgresql + postgresql + 8.4-702.jdbc4 + + + mysql + mysql-connector-java + 5.1.18 + + + + + + + org.apache.maven.plugins + maven-gpg-plugin + 1.1 + + + sign-artifacts + verify + + sign + + + + + + + org.apache.maven.plugins + maven-compiler-plugin + 2.3.2 + + true + 512m + 256m + UTF-8 + 1.6 + 1.6 + true + lines,vars,source + + + + + true + org.apache.maven.plugins + maven-source-plugin + 2.1.2 + + + attach-sources + + jar + + + + + + true + true + + + + + true + org.apache.maven.plugins + maven-javadoc-plugin + 2.7 + + + bundle-sources + package + + jar + + + + + 512 + UTF-8 + protected + true + + + + + org.apache.maven.plugins + maven-resources-plugin + 2.5 + + UTF-8 + + + + + org.apache.maven.plugins + maven-eclipse-plugin + 2.8 + + true + + + + + \ No newline at end of file diff --git a/jOOQ-codegen-maven-example/src/main/resources/META-INF/LICENSE.txt b/jOOQ-codegen-maven-example/src/main/resources/META-INF/LICENSE.txt new file mode 100644 index 00000000000..fd12d44afa0 --- /dev/null +++ b/jOOQ-codegen-maven-example/src/main/resources/META-INF/LICENSE.txt @@ -0,0 +1,33 @@ + Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com + All rights reserved. + + This software is licensed to you under the Apache License, Version 2.0 + (the "License"); You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + 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 "jOOQ" 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 COPYRIGHT OWNER 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. \ No newline at end of file diff --git a/jOOQ-codegen-maven-example/src/main/resources/META-INF/README.txt b/jOOQ-codegen-maven-example/src/main/resources/META-INF/README.txt new file mode 100644 index 00000000000..3e6e227e05b --- /dev/null +++ b/jOOQ-codegen-maven-example/src/main/resources/META-INF/README.txt @@ -0,0 +1,2 @@ +Thanks for downloading jOOQ. +Please visit http://www.jooq.org for more information. \ No newline at end of file diff --git a/jOOQ-codegen-maven-example/src/test/java/org/jooq/test/util/maven/Data.java b/jOOQ-codegen-maven-example/src/test/java/org/jooq/test/util/maven/Data.java new file mode 100644 index 00000000000..e429a1256a2 --- /dev/null +++ b/jOOQ-codegen-maven-example/src/test/java/org/jooq/test/util/maven/Data.java @@ -0,0 +1,49 @@ +/** + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com + * All rights reserved. + * + * This software is licensed to you under the Apache License, Version 2.0 + * (the "License"); You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * 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 "jOOQ" 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 COPYRIGHT OWNER 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. + */ +package org.jooq.test.util.maven; + +import java.util.Arrays; +import java.util.List; + +/** + * @author Lukas Eder + */ +class Data { + + static final List BOOK_IDS = Arrays.asList(1, 2, 3, 4); + static final List BOOK_TITLES = Arrays.asList("1984", "Animal Farm", "O Alquimista", "Brida"); + +} diff --git a/jOOQ-codegen-maven-example/src/test/java/org/jooq/test/util/maven/TestASE.java b/jOOQ-codegen-maven-example/src/test/java/org/jooq/test/util/maven/TestASE.java new file mode 100644 index 00000000000..531de8f205c --- /dev/null +++ b/jOOQ-codegen-maven-example/src/test/java/org/jooq/test/util/maven/TestASE.java @@ -0,0 +1,94 @@ +/** + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com + * All rights reserved. + * + * This software is licensed to you under the Apache License, Version 2.0 + * (the "License"); You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * 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 "jOOQ" 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 COPYRIGHT OWNER 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. + */ +package org.jooq.test.util.maven; + +import static junit.framework.Assert.assertEquals; +import static org.jooq.impl.Factory.countDistinct; +import static org.jooq.util.maven.example.ase.Tables.T_AUTHOR; +import static org.jooq.util.maven.example.ase.Tables.T_BOOK; +import static org.jooq.util.maven.example.ase.Tables.T_BOOK_STORE; +import static org.jooq.util.maven.example.ase.Tables.T_BOOK_TO_BOOK_STORE; + +import java.sql.Connection; +import java.sql.DriverManager; + +import org.jooq.Record; +import org.jooq.Result; +import org.jooq.util.maven.example.ase.DboFactory; +import org.jooq.util.maven.example.ase.tables.TAuthor; +import org.jooq.util.maven.example.ase.tables.TBook; +import org.jooq.util.maven.example.ase.tables.TBookStore; +import org.jooq.util.maven.example.ase.tables.TBookToBookStore; + +import org.junit.Test; + +/** + * @author Lukas Eder + */ +public class TestASE { + + @Test + public void testInstanceModel() throws Exception { + Class.forName("net.sourceforge.jtds.jdbc.Driver"); + Connection connection = DriverManager.getConnection("jdbc:jtds:sybase://lukas-hp:5000/TEST", "sa", ""); + DboFactory create = new DboFactory(connection); + + TBook b = T_BOOK.as("b"); + TAuthor a = T_AUTHOR.as("a"); + TBookStore s = T_BOOK_STORE.as("s"); + TBookToBookStore t = T_BOOK_TO_BOOK_STORE.as("t"); + + Result result = + create.select(a.FIRST_NAME, a.LAST_NAME, countDistinct(s.NAME)) + .from(a) + .join(b).on(b.AUTHOR_ID.equal(a.ID)) + .join(t).on(t.BOOK_ID.equal(b.ID)) + .join(s).on(t.BOOK_STORE_NAME.equal(s.NAME)) + .groupBy(a.FIRST_NAME, a.LAST_NAME) + .orderBy(countDistinct(s.NAME).desc()) + .fetch(); + + assertEquals(2, result.size()); + assertEquals("Paulo", result.getValue(0, a.FIRST_NAME)); + assertEquals("George", result.getValue(1, a.FIRST_NAME)); + + assertEquals("Coelho", result.getValue(0, a.LAST_NAME)); + assertEquals("Orwell", result.getValue(1, a.LAST_NAME)); + + assertEquals(Integer.valueOf(3), result.getValue(0, countDistinct(s.NAME))); + assertEquals(Integer.valueOf(2), result.getValue(1, countDistinct(s.NAME))); + } +} diff --git a/jOOQ-codegen-maven-example/src/test/java/org/jooq/test/util/maven/TestMySQL.java b/jOOQ-codegen-maven-example/src/test/java/org/jooq/test/util/maven/TestMySQL.java new file mode 100644 index 00000000000..39cab53fb66 --- /dev/null +++ b/jOOQ-codegen-maven-example/src/test/java/org/jooq/test/util/maven/TestMySQL.java @@ -0,0 +1,137 @@ +/** + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com + * All rights reserved. + * + * This software is licensed to you under the Apache License, Version 2.0 + * (the "License"); You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * 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 "jOOQ" 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 COPYRIGHT OWNER 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. + */ +package org.jooq.test.util.maven; + +import static junit.framework.Assert.assertEquals; +import static org.jooq.impl.Factory.countDistinct; +import static org.jooq.util.maven.example.mysql.Tables.T_AUTHOR; +import static org.jooq.util.maven.example.mysql.Tables.T_BOOK; +import static org.jooq.util.maven.example.mysql.Tables.T_BOOK_STORE; +import static org.jooq.util.maven.example.mysql.Tables.T_BOOK_TO_BOOK_STORE; +import static org.jooq.util.maven.example.mysql.Tables.T_BOOLEANS; + +import java.sql.Connection; +import java.sql.DriverManager; + +import org.jooq.Record; +import org.jooq.Result; +import org.jooq.util.maven.example.mysql.Test2Factory; +import org.jooq.util.maven.example.mysql.enums.BooleanTrueFalseLc; +import org.jooq.util.maven.example.mysql.enums.BooleanTrueFalseUc; +import org.jooq.util.maven.example.mysql.enums.BooleanYesNoLc; +import org.jooq.util.maven.example.mysql.enums.BooleanYesNoUc; +import org.jooq.util.maven.example.mysql.enums.BooleanYnLc; +import org.jooq.util.maven.example.mysql.enums.BooleanYnUc; +import org.jooq.util.maven.example.mysql.enums.Boolean_10; +import org.jooq.util.maven.example.mysql.tables.TAuthor; +import org.jooq.util.maven.example.mysql.tables.TBook; +import org.jooq.util.maven.example.mysql.tables.TBookStore; +import org.jooq.util.maven.example.mysql.tables.TBookToBookStore; +import org.jooq.util.maven.example.mysql.tables.records.TBooleansRecord; + +import org.junit.Test; + +/** + * @author Lukas Eder + */ +public class TestMySQL { + + @Test + public void testInstanceModel() throws Exception { + Class.forName("com.mysql.jdbc.Driver"); + Connection connection = DriverManager.getConnection("jdbc:mysql://localhost/test2", "root", ""); + Test2Factory create = new Test2Factory(connection); + + TBook b = T_BOOK.as("b"); + TAuthor a = T_AUTHOR.as("a"); + TBookStore s = T_BOOK_STORE.as("s"); + TBookToBookStore t = T_BOOK_TO_BOOK_STORE.as("t"); + + Result result = + create.select(a.FIRST_NAME, a.LAST_NAME, countDistinct(s.NAME)) + .from(a) + .join(b).on(b.AUTHOR_ID.equal(a.ID)) + .join(t).on(t.BOOK_ID.equal(b.ID)) + .join(s).on(t.BOOK_STORE_NAME.equal(s.NAME)) + .groupBy(a.FIRST_NAME, a.LAST_NAME) + .orderBy(countDistinct(s.NAME).desc()) + .fetch(); + + assertEquals(2, result.size()); + assertEquals("Paulo", result.getValue(0, a.FIRST_NAME)); + assertEquals("George", result.getValue(1, a.FIRST_NAME)); + + assertEquals("Coelho", result.getValue(0, a.LAST_NAME)); + assertEquals("Orwell", result.getValue(1, a.LAST_NAME)); + + assertEquals(Integer.valueOf(3), result.getValue(0, countDistinct(s.NAME))); + assertEquals(Integer.valueOf(2), result.getValue(1, countDistinct(s.NAME))); + } + + @Test + public void testCustomEnum() throws Exception { + Class.forName("com.mysql.jdbc.Driver"); + Connection connection = DriverManager.getConnection("jdbc:mysql://localhost/test2", "root", ""); + Test2Factory create = new Test2Factory(connection); + + create.delete(T_BOOLEANS).execute(); + + assertEquals(1, + create.insertInto(T_BOOLEANS) + .set(T_BOOLEANS.ID, 1) + .set(T_BOOLEANS.ONE_ZERO, Boolean_10._0) + .set(T_BOOLEANS.TRUE_FALSE_LC, BooleanTrueFalseLc.true_) + .set(T_BOOLEANS.TRUE_FALSE_UC, BooleanTrueFalseUc.FALSE) + .set(T_BOOLEANS.Y_N_LC, BooleanYnLc.y) + .set(T_BOOLEANS.Y_N_UC, BooleanYnUc.N) + .set(T_BOOLEANS.YES_NO_LC, BooleanYesNoLc.yes) + .set(T_BOOLEANS.YES_NO_UC, BooleanYesNoUc.NO) + .execute()); + + TBooleansRecord bool = create.selectFrom(T_BOOLEANS).fetchOne(); + assertEquals(1, (int) bool.getId()); + assertEquals(Boolean_10._0, bool.getOneZero()); + assertEquals(BooleanTrueFalseLc.true_, bool.getTrueFalseLc()); + assertEquals(BooleanTrueFalseUc.FALSE, bool.getTrueFalseUc()); + assertEquals(BooleanYnLc.y, bool.getYNLc()); + assertEquals(BooleanYnUc.N, bool.getYNUc()); + assertEquals(BooleanYesNoLc.yes, bool.getYesNoLc()); + assertEquals(BooleanYesNoUc.NO, bool.getYesNoUc()); + + assertEquals(1, + create.delete(T_BOOLEANS).execute()); + } +} diff --git a/jOOQ-codegen-maven-example/src/test/java/org/jooq/test/util/maven/TestPostgres.java b/jOOQ-codegen-maven-example/src/test/java/org/jooq/test/util/maven/TestPostgres.java new file mode 100644 index 00000000000..ca4d7e493b5 --- /dev/null +++ b/jOOQ-codegen-maven-example/src/test/java/org/jooq/test/util/maven/TestPostgres.java @@ -0,0 +1,88 @@ +/** + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com + * All rights reserved. + * + * This software is licensed to you under the Apache License, Version 2.0 + * (the "License"); You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * 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 "jOOQ" 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 COPYRIGHT OWNER 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. + */ +package org.jooq.test.util.maven; + +import static junit.framework.Assert.assertEquals; + +import java.sql.Connection; +import java.sql.DriverManager; +import java.util.List; + +import org.jooq.Record; +import org.jooq.Result; +import org.jooq.util.maven.example.postgres.PublicFactory; +import org.jooq.util.maven.example.postgres.tables.TBook; +import org.jooq.util.maven.example.postgres.tables.records.TBookRecord; + +import org.junit.Test; + +/** + * @author Lukas Eder + */ +public class TestPostgres { + + @Test + public void testFetch() throws Exception { + Connection connection = DriverManager.getConnection("jdbc:postgresql:postgres", "postgres", "test"); + PublicFactory create = new PublicFactory(connection); + + Result books = + create.select(TBook.ID, TBook.TITLE) + .from(TBook.T_BOOK) + .orderBy(TBook.ID) + .fetch(); + + assertEquals(Data.BOOK_IDS, books.getValues(0)); + assertEquals(Data.BOOK_TITLES, books.getValues(1)); + } + + @Test + public void testFetchInto() throws Exception { + Connection connection = DriverManager.getConnection("jdbc:postgresql:postgres", "postgres", "test"); + PublicFactory create = new PublicFactory(connection); + + List books = + create.select(TBook.ID, TBook.TITLE) + .from(TBook.T_BOOK) + .orderBy(TBook.ID) + .fetchInto(TBookRecord.class); + + for (int i = 0; i < Data.BOOK_IDS.size(); i++) { + assertEquals(Data.BOOK_IDS.get(i), books.get(i).getId()); + assertEquals(Data.BOOK_TITLES.get(i), books.get(i).getTitle()); + } + } +} diff --git a/jOOQ-codegen-maven/.classpath b/jOOQ-codegen-maven/.classpath new file mode 100644 index 00000000000..c0227443546 --- /dev/null +++ b/jOOQ-codegen-maven/.classpath @@ -0,0 +1,8 @@ + + + + + + + + diff --git a/jOOQ-codegen-maven/.gitignore b/jOOQ-codegen-maven/.gitignore new file mode 100644 index 00000000000..ea8c4bf7f35 --- /dev/null +++ b/jOOQ-codegen-maven/.gitignore @@ -0,0 +1 @@ +/target diff --git a/jOOQ-codegen-maven/.project b/jOOQ-codegen-maven/.project new file mode 100644 index 00000000000..8e34f049306 --- /dev/null +++ b/jOOQ-codegen-maven/.project @@ -0,0 +1,23 @@ + + + jOOQ-codegen-maven + + + + + + org.eclipse.jdt.core.javabuilder + + + + + org.maven.ide.eclipse.maven2Builder + + + + + + org.maven.ide.eclipse.maven2Nature + org.eclipse.jdt.core.javanature + + diff --git a/jOOQ-codegen-maven/.settings/org.eclipse.jdt.core.prefs b/jOOQ-codegen-maven/.settings/org.eclipse.jdt.core.prefs new file mode 100644 index 00000000000..eea4bca85e9 --- /dev/null +++ b/jOOQ-codegen-maven/.settings/org.eclipse.jdt.core.prefs @@ -0,0 +1,350 @@ +#Sat Nov 05 12:53:40 CET 2011 +eclipse.preferences.version=1 +org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled +org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.6 +org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve +org.eclipse.jdt.core.compiler.compliance=1.6 +org.eclipse.jdt.core.compiler.debug.lineNumber=generate +org.eclipse.jdt.core.compiler.debug.localVariable=generate +org.eclipse.jdt.core.compiler.debug.sourceFile=generate +org.eclipse.jdt.core.compiler.problem.annotationSuperInterface=warning +org.eclipse.jdt.core.compiler.problem.assertIdentifier=error +org.eclipse.jdt.core.compiler.problem.autoboxing=ignore +org.eclipse.jdt.core.compiler.problem.comparingIdentical=warning +org.eclipse.jdt.core.compiler.problem.deadCode=warning +org.eclipse.jdt.core.compiler.problem.deprecation=warning +org.eclipse.jdt.core.compiler.problem.deprecationInDeprecatedCode=disabled +org.eclipse.jdt.core.compiler.problem.deprecationWhenOverridingDeprecatedMethod=disabled +org.eclipse.jdt.core.compiler.problem.discouragedReference=warning +org.eclipse.jdt.core.compiler.problem.emptyStatement=ignore +org.eclipse.jdt.core.compiler.problem.enumIdentifier=error +org.eclipse.jdt.core.compiler.problem.fallthroughCase=ignore +org.eclipse.jdt.core.compiler.problem.fatalOptionalError=disabled +org.eclipse.jdt.core.compiler.problem.fieldHiding=warning +org.eclipse.jdt.core.compiler.problem.finalParameterBound=warning +org.eclipse.jdt.core.compiler.problem.finallyBlockNotCompletingNormally=warning +org.eclipse.jdt.core.compiler.problem.forbiddenReference=warning +org.eclipse.jdt.core.compiler.problem.hiddenCatchBlock=warning +org.eclipse.jdt.core.compiler.problem.incompatibleNonInheritedInterfaceMethod=warning +org.eclipse.jdt.core.compiler.problem.incompleteEnumSwitch=ignore +org.eclipse.jdt.core.compiler.problem.indirectStaticAccess=ignore +org.eclipse.jdt.core.compiler.problem.localVariableHiding=warning +org.eclipse.jdt.core.compiler.problem.methodWithConstructorName=warning +org.eclipse.jdt.core.compiler.problem.missingDeprecatedAnnotation=warning +org.eclipse.jdt.core.compiler.problem.missingHashCodeMethod=ignore +org.eclipse.jdt.core.compiler.problem.missingOverrideAnnotation=warning +org.eclipse.jdt.core.compiler.problem.missingOverrideAnnotationForInterfaceMethodImplementation=enabled +org.eclipse.jdt.core.compiler.problem.missingSerialVersion=warning +org.eclipse.jdt.core.compiler.problem.missingSynchronizedOnInheritedMethod=warning +org.eclipse.jdt.core.compiler.problem.noEffectAssignment=warning +org.eclipse.jdt.core.compiler.problem.noImplicitStringConversion=warning +org.eclipse.jdt.core.compiler.problem.nonExternalizedStringLiteral=ignore +org.eclipse.jdt.core.compiler.problem.nullReference=error +org.eclipse.jdt.core.compiler.problem.overridingPackageDefaultMethod=warning +org.eclipse.jdt.core.compiler.problem.parameterAssignment=ignore +org.eclipse.jdt.core.compiler.problem.possibleAccidentalBooleanAssignment=warning +org.eclipse.jdt.core.compiler.problem.potentialNullReference=warning +org.eclipse.jdt.core.compiler.problem.rawTypeReference=warning +org.eclipse.jdt.core.compiler.problem.redundantNullCheck=warning +org.eclipse.jdt.core.compiler.problem.redundantSuperinterface=warning +org.eclipse.jdt.core.compiler.problem.specialParameterHidingField=disabled +org.eclipse.jdt.core.compiler.problem.staticAccessReceiver=warning +org.eclipse.jdt.core.compiler.problem.suppressOptionalErrors=disabled +org.eclipse.jdt.core.compiler.problem.suppressWarnings=enabled +org.eclipse.jdt.core.compiler.problem.syntheticAccessEmulation=ignore +org.eclipse.jdt.core.compiler.problem.typeParameterHiding=warning +org.eclipse.jdt.core.compiler.problem.uncheckedTypeOperation=warning +org.eclipse.jdt.core.compiler.problem.undocumentedEmptyBlock=ignore +org.eclipse.jdt.core.compiler.problem.unhandledWarningToken=warning +org.eclipse.jdt.core.compiler.problem.unnecessaryElse=ignore +org.eclipse.jdt.core.compiler.problem.unnecessaryTypeCheck=warning +org.eclipse.jdt.core.compiler.problem.unqualifiedFieldAccess=ignore +org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownException=warning +org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionExemptExceptionAndThrowable=enabled +org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionIncludeDocCommentReference=enabled +org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionWhenOverriding=disabled +org.eclipse.jdt.core.compiler.problem.unusedImport=warning +org.eclipse.jdt.core.compiler.problem.unusedLabel=warning +org.eclipse.jdt.core.compiler.problem.unusedLocal=warning +org.eclipse.jdt.core.compiler.problem.unusedObjectAllocation=ignore +org.eclipse.jdt.core.compiler.problem.unusedParameter=warning +org.eclipse.jdt.core.compiler.problem.unusedParameterIncludeDocCommentReference=enabled +org.eclipse.jdt.core.compiler.problem.unusedParameterWhenImplementingAbstract=disabled +org.eclipse.jdt.core.compiler.problem.unusedParameterWhenOverridingConcrete=disabled +org.eclipse.jdt.core.compiler.problem.unusedPrivateMember=warning +org.eclipse.jdt.core.compiler.problem.unusedWarningToken=warning +org.eclipse.jdt.core.compiler.problem.varargsArgumentNeedCast=warning +org.eclipse.jdt.core.compiler.source=1.6 +org.eclipse.jdt.core.formatter.align_type_members_on_columns=true +org.eclipse.jdt.core.formatter.alignment_for_arguments_in_allocation_expression=16 +org.eclipse.jdt.core.formatter.alignment_for_arguments_in_annotation=0 +org.eclipse.jdt.core.formatter.alignment_for_arguments_in_enum_constant=16 +org.eclipse.jdt.core.formatter.alignment_for_arguments_in_explicit_constructor_call=16 +org.eclipse.jdt.core.formatter.alignment_for_arguments_in_method_invocation=16 +org.eclipse.jdt.core.formatter.alignment_for_arguments_in_qualified_allocation_expression=16 +org.eclipse.jdt.core.formatter.alignment_for_assignment=0 +org.eclipse.jdt.core.formatter.alignment_for_binary_expression=16 +org.eclipse.jdt.core.formatter.alignment_for_compact_if=16 +org.eclipse.jdt.core.formatter.alignment_for_conditional_expression=80 +org.eclipse.jdt.core.formatter.alignment_for_enum_constants=49 +org.eclipse.jdt.core.formatter.alignment_for_expressions_in_array_initializer=16 +org.eclipse.jdt.core.formatter.alignment_for_method_declaration=0 +org.eclipse.jdt.core.formatter.alignment_for_multiple_fields=16 +org.eclipse.jdt.core.formatter.alignment_for_parameters_in_constructor_declaration=16 +org.eclipse.jdt.core.formatter.alignment_for_parameters_in_method_declaration=16 +org.eclipse.jdt.core.formatter.alignment_for_selector_in_method_invocation=16 +org.eclipse.jdt.core.formatter.alignment_for_superclass_in_type_declaration=16 +org.eclipse.jdt.core.formatter.alignment_for_superinterfaces_in_enum_declaration=16 +org.eclipse.jdt.core.formatter.alignment_for_superinterfaces_in_type_declaration=16 +org.eclipse.jdt.core.formatter.alignment_for_throws_clause_in_constructor_declaration=16 +org.eclipse.jdt.core.formatter.alignment_for_throws_clause_in_method_declaration=16 +org.eclipse.jdt.core.formatter.blank_lines_after_imports=1 +org.eclipse.jdt.core.formatter.blank_lines_after_package=1 +org.eclipse.jdt.core.formatter.blank_lines_before_field=0 +org.eclipse.jdt.core.formatter.blank_lines_before_first_class_body_declaration=0 +org.eclipse.jdt.core.formatter.blank_lines_before_imports=1 +org.eclipse.jdt.core.formatter.blank_lines_before_member_type=1 +org.eclipse.jdt.core.formatter.blank_lines_before_method=1 +org.eclipse.jdt.core.formatter.blank_lines_before_new_chunk=1 +org.eclipse.jdt.core.formatter.blank_lines_before_package=0 +org.eclipse.jdt.core.formatter.blank_lines_between_import_groups=1 +org.eclipse.jdt.core.formatter.blank_lines_between_type_declarations=1 +org.eclipse.jdt.core.formatter.brace_position_for_annotation_type_declaration=end_of_line +org.eclipse.jdt.core.formatter.brace_position_for_anonymous_type_declaration=end_of_line +org.eclipse.jdt.core.formatter.brace_position_for_array_initializer=end_of_line +org.eclipse.jdt.core.formatter.brace_position_for_block=end_of_line +org.eclipse.jdt.core.formatter.brace_position_for_block_in_case=end_of_line +org.eclipse.jdt.core.formatter.brace_position_for_constructor_declaration=end_of_line +org.eclipse.jdt.core.formatter.brace_position_for_enum_constant=end_of_line +org.eclipse.jdt.core.formatter.brace_position_for_enum_declaration=end_of_line +org.eclipse.jdt.core.formatter.brace_position_for_method_declaration=end_of_line +org.eclipse.jdt.core.formatter.brace_position_for_switch=end_of_line +org.eclipse.jdt.core.formatter.brace_position_for_type_declaration=end_of_line +org.eclipse.jdt.core.formatter.comment.clear_blank_lines_in_block_comment=true +org.eclipse.jdt.core.formatter.comment.clear_blank_lines_in_javadoc_comment=true +org.eclipse.jdt.core.formatter.comment.format_block_comments=true +org.eclipse.jdt.core.formatter.comment.format_header=false +org.eclipse.jdt.core.formatter.comment.format_html=true +org.eclipse.jdt.core.formatter.comment.format_javadoc_comments=true +org.eclipse.jdt.core.formatter.comment.format_line_comments=true +org.eclipse.jdt.core.formatter.comment.format_source_code=true +org.eclipse.jdt.core.formatter.comment.indent_parameter_description=true +org.eclipse.jdt.core.formatter.comment.indent_root_tags=true +org.eclipse.jdt.core.formatter.comment.insert_new_line_before_root_tags=insert +org.eclipse.jdt.core.formatter.comment.insert_new_line_for_parameter=do not insert +org.eclipse.jdt.core.formatter.comment.line_length=80 +org.eclipse.jdt.core.formatter.comment.new_lines_at_block_boundaries=true +org.eclipse.jdt.core.formatter.comment.new_lines_at_javadoc_boundaries=true +org.eclipse.jdt.core.formatter.comment.preserve_white_space_between_code_and_line_comments=false +org.eclipse.jdt.core.formatter.compact_else_if=true +org.eclipse.jdt.core.formatter.continuation_indentation=1 +org.eclipse.jdt.core.formatter.continuation_indentation_for_array_initializer=1 +org.eclipse.jdt.core.formatter.disabling_tag=@formatter\:off +org.eclipse.jdt.core.formatter.enabling_tag=@formatter\:on +org.eclipse.jdt.core.formatter.format_guardian_clause_on_one_line=false +org.eclipse.jdt.core.formatter.format_line_comment_starting_on_first_column=true +org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_annotation_declaration_header=true +org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_enum_constant_header=true +org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_enum_declaration_header=true +org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_type_header=true +org.eclipse.jdt.core.formatter.indent_breaks_compare_to_cases=true +org.eclipse.jdt.core.formatter.indent_empty_lines=false +org.eclipse.jdt.core.formatter.indent_statements_compare_to_block=true +org.eclipse.jdt.core.formatter.indent_statements_compare_to_body=true +org.eclipse.jdt.core.formatter.indent_switchstatements_compare_to_cases=true +org.eclipse.jdt.core.formatter.indent_switchstatements_compare_to_switch=true +org.eclipse.jdt.core.formatter.indentation.size=4 +org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_field=insert +org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_local_variable=insert +org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_member=insert +org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_method=insert +org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_package=insert +org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_parameter=do not insert +org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_type=insert +org.eclipse.jdt.core.formatter.insert_new_line_after_label=do not insert +org.eclipse.jdt.core.formatter.insert_new_line_after_opening_brace_in_array_initializer=do not insert +org.eclipse.jdt.core.formatter.insert_new_line_at_end_of_file_if_missing=insert +org.eclipse.jdt.core.formatter.insert_new_line_before_catch_in_try_statement=insert +org.eclipse.jdt.core.formatter.insert_new_line_before_closing_brace_in_array_initializer=do not insert +org.eclipse.jdt.core.formatter.insert_new_line_before_else_in_if_statement=insert +org.eclipse.jdt.core.formatter.insert_new_line_before_finally_in_try_statement=insert +org.eclipse.jdt.core.formatter.insert_new_line_before_while_in_do_statement=insert +org.eclipse.jdt.core.formatter.insert_new_line_in_empty_annotation_declaration=do not insert +org.eclipse.jdt.core.formatter.insert_new_line_in_empty_anonymous_type_declaration=do not insert +org.eclipse.jdt.core.formatter.insert_new_line_in_empty_block=do not insert +org.eclipse.jdt.core.formatter.insert_new_line_in_empty_enum_constant=do not insert +org.eclipse.jdt.core.formatter.insert_new_line_in_empty_enum_declaration=do not insert +org.eclipse.jdt.core.formatter.insert_new_line_in_empty_method_body=do not insert +org.eclipse.jdt.core.formatter.insert_new_line_in_empty_type_declaration=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_and_in_type_parameter=insert +org.eclipse.jdt.core.formatter.insert_space_after_assignment_operator=insert +org.eclipse.jdt.core.formatter.insert_space_after_at_in_annotation=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_at_in_annotation_type_declaration=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_binary_operator=insert +org.eclipse.jdt.core.formatter.insert_space_after_closing_angle_bracket_in_type_arguments=insert +org.eclipse.jdt.core.formatter.insert_space_after_closing_angle_bracket_in_type_parameters=insert +org.eclipse.jdt.core.formatter.insert_space_after_closing_brace_in_block=insert +org.eclipse.jdt.core.formatter.insert_space_after_closing_paren_in_cast=insert +org.eclipse.jdt.core.formatter.insert_space_after_colon_in_assert=insert +org.eclipse.jdt.core.formatter.insert_space_after_colon_in_case=insert +org.eclipse.jdt.core.formatter.insert_space_after_colon_in_conditional=insert +org.eclipse.jdt.core.formatter.insert_space_after_colon_in_for=insert +org.eclipse.jdt.core.formatter.insert_space_after_colon_in_labeled_statement=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_allocation_expression=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_annotation=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_array_initializer=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_constructor_declaration_parameters=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_constructor_declaration_throws=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_enum_constant_arguments=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_enum_declarations=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_explicitconstructorcall_arguments=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_for_increments=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_for_inits=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_method_declaration_parameters=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_method_declaration_throws=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_method_invocation_arguments=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_multiple_field_declarations=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_multiple_local_declarations=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_parameterized_type_reference=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_superinterfaces=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_type_arguments=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_type_parameters=insert +org.eclipse.jdt.core.formatter.insert_space_after_ellipsis=insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_parameterized_type_reference=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_type_arguments=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_type_parameters=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_brace_in_array_initializer=insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_bracket_in_array_allocation_expression=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_bracket_in_array_reference=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_annotation=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_cast=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_catch=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_constructor_declaration=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_enum_constant=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_for=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_if=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_method_declaration=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_method_invocation=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_parenthesized_expression=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_switch=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_synchronized=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_while=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_postfix_operator=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_prefix_operator=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_question_in_conditional=insert +org.eclipse.jdt.core.formatter.insert_space_after_question_in_wildcard=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_semicolon_in_for=insert +org.eclipse.jdt.core.formatter.insert_space_after_unary_operator=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_and_in_type_parameter=insert +org.eclipse.jdt.core.formatter.insert_space_before_assignment_operator=insert +org.eclipse.jdt.core.formatter.insert_space_before_at_in_annotation_type_declaration=insert +org.eclipse.jdt.core.formatter.insert_space_before_binary_operator=insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_angle_bracket_in_parameterized_type_reference=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_angle_bracket_in_type_arguments=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_angle_bracket_in_type_parameters=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_brace_in_array_initializer=insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_bracket_in_array_allocation_expression=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_bracket_in_array_reference=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_annotation=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_cast=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_catch=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_constructor_declaration=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_enum_constant=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_for=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_if=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_method_declaration=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_method_invocation=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_parenthesized_expression=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_switch=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_synchronized=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_while=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_colon_in_assert=insert +org.eclipse.jdt.core.formatter.insert_space_before_colon_in_case=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_colon_in_conditional=insert +org.eclipse.jdt.core.formatter.insert_space_before_colon_in_default=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_colon_in_for=insert +org.eclipse.jdt.core.formatter.insert_space_before_colon_in_labeled_statement=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_allocation_expression=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_annotation=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_array_initializer=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_constructor_declaration_parameters=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_constructor_declaration_throws=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_enum_constant_arguments=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_enum_declarations=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_explicitconstructorcall_arguments=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_for_increments=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_for_inits=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_method_declaration_parameters=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_method_declaration_throws=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_method_invocation_arguments=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_multiple_field_declarations=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_multiple_local_declarations=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_parameterized_type_reference=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_superinterfaces=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_type_arguments=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_type_parameters=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_ellipsis=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_parameterized_type_reference=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_type_arguments=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_type_parameters=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_annotation_type_declaration=insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_anonymous_type_declaration=insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_array_initializer=insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_block=insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_constructor_declaration=insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_enum_constant=insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_enum_declaration=insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_method_declaration=insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_switch=insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_type_declaration=insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_bracket_in_array_allocation_expression=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_bracket_in_array_reference=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_bracket_in_array_type_reference=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_annotation=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_annotation_type_member_declaration=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_catch=insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_constructor_declaration=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_enum_constant=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_for=insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_if=insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_method_declaration=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_method_invocation=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_parenthesized_expression=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_switch=insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_synchronized=insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_while=insert +org.eclipse.jdt.core.formatter.insert_space_before_parenthesized_expression_in_return=insert +org.eclipse.jdt.core.formatter.insert_space_before_parenthesized_expression_in_throw=insert +org.eclipse.jdt.core.formatter.insert_space_before_postfix_operator=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_prefix_operator=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_question_in_conditional=insert +org.eclipse.jdt.core.formatter.insert_space_before_question_in_wildcard=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_semicolon=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_semicolon_in_for=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_unary_operator=do not insert +org.eclipse.jdt.core.formatter.insert_space_between_brackets_in_array_type_reference=do not insert +org.eclipse.jdt.core.formatter.insert_space_between_empty_braces_in_array_initializer=do not insert +org.eclipse.jdt.core.formatter.insert_space_between_empty_brackets_in_array_allocation_expression=do not insert +org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_annotation_type_member_declaration=do not insert +org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_constructor_declaration=do not insert +org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_enum_constant=do not insert +org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_method_declaration=do not insert +org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_method_invocation=do not insert +org.eclipse.jdt.core.formatter.join_lines_in_comments=true +org.eclipse.jdt.core.formatter.join_wrapped_lines=true +org.eclipse.jdt.core.formatter.keep_else_statement_on_same_line=false +org.eclipse.jdt.core.formatter.keep_empty_array_initializer_on_one_line=false +org.eclipse.jdt.core.formatter.keep_imple_if_on_one_line=false +org.eclipse.jdt.core.formatter.keep_then_statement_on_same_line=false +org.eclipse.jdt.core.formatter.lineSplit=120 +org.eclipse.jdt.core.formatter.never_indent_block_comments_on_first_column=false +org.eclipse.jdt.core.formatter.never_indent_line_comments_on_first_column=false +org.eclipse.jdt.core.formatter.number_of_blank_lines_at_beginning_of_method_body=0 +org.eclipse.jdt.core.formatter.number_of_empty_lines_to_preserve=1 +org.eclipse.jdt.core.formatter.put_empty_statement_on_new_line=true +org.eclipse.jdt.core.formatter.tabulation.char=space +org.eclipse.jdt.core.formatter.tabulation.size=4 +org.eclipse.jdt.core.formatter.use_on_off_tags=false +org.eclipse.jdt.core.formatter.use_tabs_only_for_leading_indentations=false +org.eclipse.jdt.core.formatter.wrap_before_binary_operator=true +org.eclipse.jdt.core.formatter.wrap_outer_expressions_when_nested=true diff --git a/jOOQ-codegen-maven/.settings/org.eclipse.jdt.ui.prefs b/jOOQ-codegen-maven/.settings/org.eclipse.jdt.ui.prefs new file mode 100644 index 00000000000..b07f39ee3e9 --- /dev/null +++ b/jOOQ-codegen-maven/.settings/org.eclipse.jdt.ui.prefs @@ -0,0 +1,116 @@ +#Sat Nov 05 13:02:50 CET 2011 +cleanup.add_default_serial_version_id=false +cleanup.add_generated_serial_version_id=true +cleanup.add_missing_annotations=true +cleanup.add_missing_deprecated_annotations=true +cleanup.add_missing_methods=false +cleanup.add_missing_nls_tags=false +cleanup.add_missing_override_annotations=true +cleanup.add_missing_override_annotations_interface_methods=true +cleanup.add_serial_version_id=true +cleanup.always_use_blocks=true +cleanup.always_use_parentheses_in_expressions=false +cleanup.always_use_this_for_non_static_field_access=true +cleanup.always_use_this_for_non_static_method_access=false +cleanup.convert_to_enhanced_for_loop=false +cleanup.correct_indentation=true +cleanup.format_source_code=false +cleanup.format_source_code_changes_only=false +cleanup.make_local_variable_final=true +cleanup.make_parameters_final=false +cleanup.make_private_fields_final=true +cleanup.make_type_abstract_if_missing_method=false +cleanup.make_variable_declarations_final=false +cleanup.never_use_blocks=false +cleanup.never_use_parentheses_in_expressions=true +cleanup.organize_imports=true +cleanup.qualify_static_field_accesses_with_declaring_class=false +cleanup.qualify_static_member_accesses_through_instances_with_declaring_class=true +cleanup.qualify_static_member_accesses_through_subtypes_with_declaring_class=true +cleanup.qualify_static_member_accesses_with_declaring_class=true +cleanup.qualify_static_method_accesses_with_declaring_class=false +cleanup.remove_private_constructors=true +cleanup.remove_trailing_whitespaces=true +cleanup.remove_trailing_whitespaces_all=true +cleanup.remove_trailing_whitespaces_ignore_empty=false +cleanup.remove_unnecessary_casts=true +cleanup.remove_unnecessary_nls_tags=true +cleanup.remove_unused_imports=true +cleanup.remove_unused_local_variables=false +cleanup.remove_unused_private_fields=true +cleanup.remove_unused_private_members=false +cleanup.remove_unused_private_methods=true +cleanup.remove_unused_private_types=true +cleanup.sort_members=false +cleanup.sort_members_all=false +cleanup.use_blocks=true +cleanup.use_blocks_only_for_return_and_throw=false +cleanup.use_parentheses_in_expressions=false +cleanup.use_this_for_non_static_field_access=false +cleanup.use_this_for_non_static_field_access_only_if_necessary=false +cleanup.use_this_for_non_static_method_access=false +cleanup.use_this_for_non_static_method_access_only_if_necessary=true +cleanup_profile=_jOOQ +cleanup_settings_version=2 +eclipse.preferences.version=1 +editor_save_participant_org.eclipse.jdt.ui.postsavelistener.cleanup=true +formatter_profile=_jOOQ +formatter_settings_version=12 +org.eclipse.jdt.ui.ignorelowercasenames=true +org.eclipse.jdt.ui.importorder=java;javax;org.jooq;org;com; +org.eclipse.jdt.ui.javadoc=false +org.eclipse.jdt.ui.ondemandthreshold=99 +org.eclipse.jdt.ui.staticondemandthreshold=99 +org.eclipse.jdt.ui.text.custom_code_templates= +sp_cleanup.add_default_serial_version_id=true +sp_cleanup.add_generated_serial_version_id=false +sp_cleanup.add_missing_annotations=true +sp_cleanup.add_missing_deprecated_annotations=true +sp_cleanup.add_missing_methods=false +sp_cleanup.add_missing_nls_tags=false +sp_cleanup.add_missing_override_annotations=true +sp_cleanup.add_missing_override_annotations_interface_methods=true +sp_cleanup.add_serial_version_id=false +sp_cleanup.always_use_blocks=true +sp_cleanup.always_use_parentheses_in_expressions=false +sp_cleanup.always_use_this_for_non_static_field_access=false +sp_cleanup.always_use_this_for_non_static_method_access=false +sp_cleanup.convert_to_enhanced_for_loop=false +sp_cleanup.correct_indentation=false +sp_cleanup.format_source_code=false +sp_cleanup.format_source_code_changes_only=false +sp_cleanup.make_local_variable_final=false +sp_cleanup.make_parameters_final=false +sp_cleanup.make_private_fields_final=true +sp_cleanup.make_type_abstract_if_missing_method=false +sp_cleanup.make_variable_declarations_final=false +sp_cleanup.never_use_blocks=false +sp_cleanup.never_use_parentheses_in_expressions=true +sp_cleanup.on_save_use_additional_actions=true +sp_cleanup.organize_imports=true +sp_cleanup.qualify_static_field_accesses_with_declaring_class=false +sp_cleanup.qualify_static_member_accesses_through_instances_with_declaring_class=true +sp_cleanup.qualify_static_member_accesses_through_subtypes_with_declaring_class=true +sp_cleanup.qualify_static_member_accesses_with_declaring_class=false +sp_cleanup.qualify_static_method_accesses_with_declaring_class=false +sp_cleanup.remove_private_constructors=true +sp_cleanup.remove_trailing_whitespaces=true +sp_cleanup.remove_trailing_whitespaces_all=true +sp_cleanup.remove_trailing_whitespaces_ignore_empty=false +sp_cleanup.remove_unnecessary_casts=true +sp_cleanup.remove_unnecessary_nls_tags=false +sp_cleanup.remove_unused_imports=true +sp_cleanup.remove_unused_local_variables=false +sp_cleanup.remove_unused_private_fields=true +sp_cleanup.remove_unused_private_members=false +sp_cleanup.remove_unused_private_methods=true +sp_cleanup.remove_unused_private_types=true +sp_cleanup.sort_members=false +sp_cleanup.sort_members_all=false +sp_cleanup.use_blocks=false +sp_cleanup.use_blocks_only_for_return_and_throw=false +sp_cleanup.use_parentheses_in_expressions=false +sp_cleanup.use_this_for_non_static_field_access=false +sp_cleanup.use_this_for_non_static_field_access_only_if_necessary=true +sp_cleanup.use_this_for_non_static_method_access=false +sp_cleanup.use_this_for_non_static_method_access_only_if_necessary=true diff --git a/jOOQ-codegen-maven/.settings/org.maven.ide.eclipse.prefs b/jOOQ-codegen-maven/.settings/org.maven.ide.eclipse.prefs new file mode 100644 index 00000000000..8bea9918fba --- /dev/null +++ b/jOOQ-codegen-maven/.settings/org.maven.ide.eclipse.prefs @@ -0,0 +1,8 @@ +#Sun Apr 10 10:40:24 CEST 2011 +activeProfiles= +eclipse.preferences.version=1 +fullBuildGoals=process-test-resources +resolveWorkspaceProjects=true +resourceFilterGoals=process-resources resources\:testResources +skipCompilerPlugin=true +version=1 diff --git a/jOOQ-codegen-maven/LICENSE.txt b/jOOQ-codegen-maven/LICENSE.txt new file mode 100644 index 00000000000..fd12d44afa0 --- /dev/null +++ b/jOOQ-codegen-maven/LICENSE.txt @@ -0,0 +1,33 @@ + Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com + All rights reserved. + + This software is licensed to you under the Apache License, Version 2.0 + (the "License"); You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + 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 "jOOQ" 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 COPYRIGHT OWNER 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. \ No newline at end of file diff --git a/jOOQ-codegen-maven/pom.xml b/jOOQ-codegen-maven/pom.xml new file mode 100644 index 00000000000..621b412c3a3 --- /dev/null +++ b/jOOQ-codegen-maven/pom.xml @@ -0,0 +1,173 @@ + + + oss-parent + org.sonatype.oss + 7 + + 4.0.0 + + org.jooq + jooq-codegen-maven + 2.2.0 + maven-plugin + + jOOQ Codegen Maven + jOOQ effectively combines complex SQL, typesafety, source code generation, active records, stored procedures, advanced data types, and Java in a fluent, intuitive DSL. + http://www.jooq.org + + + + + Apache License, Version 2.0 + http://www.jooq.org/inc/LICENSE.txt + repo + + + + + scm:svn:https://jooq.svn.sourceforge.net/svnroot/jooq + https://jooq.svn.sourceforge.net/svnroot/jooq + scm:svn:https://jooq.svn.sourceforge.net/svnroot/jooq + + + + Trac + https://sourceforge.net/apps/trac/jooq/report/6 + + + + + Lukas Eder + lukas.eder@gmail.com + + + Sander Plas + sander.plas@gmail.com + + + + + deploy + ${project.artifactId}-${project.version} + + + + org.apache.maven.plugins + maven-gpg-plugin + 1.1 + + + sign-artifacts + verify + + sign + + + + + + + org.apache.maven.plugins + maven-compiler-plugin + 2.3.2 + + true + 512m + 256m + UTF-8 + 1.6 + 1.6 + true + lines,vars,source + + + + + true + org.apache.maven.plugins + maven-source-plugin + 2.1.2 + + + attach-sources + + jar + + + + + + true + true + + + + + true + org.apache.maven.plugins + maven-javadoc-plugin + 2.7 + + + bundle-sources + package + + jar + + + + + 512 + UTF-8 + protected + true + + + + + org.apache.maven.plugins + maven-resources-plugin + 2.5 + + UTF-8 + + + + + org.apache.maven.plugins + maven-eclipse-plugin + 2.8 + + true + + + + + + + + junit + junit + 3.8.1 + test + + + org.apache.maven + maven-plugin-api + 2.2.1 + + + org.jooq + jooq-codegen + 2.2.0 + jar + + + org.apache.maven + maven-project + 2.2.1 + jar + + + diff --git a/jOOQ-codegen-maven/src/main/java/org/jooq/util/maven/Plugin.java b/jOOQ-codegen-maven/src/main/java/org/jooq/util/maven/Plugin.java new file mode 100644 index 00000000000..9c11a56c4ff --- /dev/null +++ b/jOOQ-codegen-maven/src/main/java/org/jooq/util/maven/Plugin.java @@ -0,0 +1,98 @@ +/** + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com + * All rights reserved. + * + * This software is licensed to you under the Apache License, Version 2.0 + * (the "License"); You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * 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 "jOOQ" 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 COPYRIGHT OWNER 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. + */ +package org.jooq.util.maven; + +import java.io.StringWriter; + +import javax.xml.bind.JAXB; + +import org.jooq.util.GenerationTool; +import org.jooq.util.jaxb.Configuration; + +import org.apache.maven.plugin.AbstractMojo; +import org.apache.maven.plugin.MojoExecutionException; +import org.apache.maven.project.MavenProject; + +/** + * @goal generate + * @phase generate-sources + * @version $Id$ + * @author Sander Plas + */ +public class Plugin extends AbstractMojo { + + /** + * The Maven project. + * + * @parameter expression="${project}" + * @required + * @readonly + */ + private MavenProject project; + + /** + * The jdbc settings. + * + * @parameter + */ + private org.jooq.util.jaxb.Jdbc jdbc; + + /** + * The generator settings + * + * @parameter + */ + private org.jooq.util.jaxb.Generator generator; + + @Override + public void execute() throws MojoExecutionException { + try { + Configuration configuration = new Configuration(); + configuration.setJdbc(jdbc); + configuration.setGenerator(generator); + + StringWriter writer = new StringWriter(); + JAXB.marshal(configuration, writer); + + getLog().info("Using this configuration:\n" + writer.toString()); + GenerationTool.main(configuration); + } + catch (Exception ex) { + throw new MojoExecutionException("Error running jOOQ code generation tool", ex); + } + project.addCompileSourceRoot(generator.getTarget().getDirectory()); + } +} diff --git a/jOOQ-codegen-maven/src/main/resources/META-INF/LICENSE.txt b/jOOQ-codegen-maven/src/main/resources/META-INF/LICENSE.txt new file mode 100644 index 00000000000..fd12d44afa0 --- /dev/null +++ b/jOOQ-codegen-maven/src/main/resources/META-INF/LICENSE.txt @@ -0,0 +1,33 @@ + Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com + All rights reserved. + + This software is licensed to you under the Apache License, Version 2.0 + (the "License"); You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + 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 "jOOQ" 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 COPYRIGHT OWNER 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. \ No newline at end of file diff --git a/jOOQ-codegen-maven/src/main/resources/META-INF/README.txt b/jOOQ-codegen-maven/src/main/resources/META-INF/README.txt new file mode 100644 index 00000000000..3e6e227e05b --- /dev/null +++ b/jOOQ-codegen-maven/src/main/resources/META-INF/README.txt @@ -0,0 +1,2 @@ +Thanks for downloading jOOQ. +Please visit http://www.jooq.org for more information. \ No newline at end of file diff --git a/jOOQ-codegen/.classpath b/jOOQ-codegen/.classpath new file mode 100644 index 00000000000..9b3745e6d46 --- /dev/null +++ b/jOOQ-codegen/.classpath @@ -0,0 +1,8 @@ + + + + + + + + diff --git a/jOOQ-codegen/.gitignore b/jOOQ-codegen/.gitignore new file mode 100644 index 00000000000..ea8c4bf7f35 --- /dev/null +++ b/jOOQ-codegen/.gitignore @@ -0,0 +1 @@ +/target diff --git a/jOOQ-codegen/.project b/jOOQ-codegen/.project new file mode 100644 index 00000000000..9787bc3fcaa --- /dev/null +++ b/jOOQ-codegen/.project @@ -0,0 +1,23 @@ + + + jOOQ-codegen + + + + + + org.eclipse.jdt.core.javabuilder + + + + + org.maven.ide.eclipse.maven2Builder + + + + + + org.maven.ide.eclipse.maven2Nature + org.eclipse.jdt.core.javanature + + diff --git a/jOOQ-codegen/.settings/org.eclipse.jdt.core.prefs b/jOOQ-codegen/.settings/org.eclipse.jdt.core.prefs new file mode 100644 index 00000000000..eea4bca85e9 --- /dev/null +++ b/jOOQ-codegen/.settings/org.eclipse.jdt.core.prefs @@ -0,0 +1,350 @@ +#Sat Nov 05 12:53:40 CET 2011 +eclipse.preferences.version=1 +org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled +org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.6 +org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve +org.eclipse.jdt.core.compiler.compliance=1.6 +org.eclipse.jdt.core.compiler.debug.lineNumber=generate +org.eclipse.jdt.core.compiler.debug.localVariable=generate +org.eclipse.jdt.core.compiler.debug.sourceFile=generate +org.eclipse.jdt.core.compiler.problem.annotationSuperInterface=warning +org.eclipse.jdt.core.compiler.problem.assertIdentifier=error +org.eclipse.jdt.core.compiler.problem.autoboxing=ignore +org.eclipse.jdt.core.compiler.problem.comparingIdentical=warning +org.eclipse.jdt.core.compiler.problem.deadCode=warning +org.eclipse.jdt.core.compiler.problem.deprecation=warning +org.eclipse.jdt.core.compiler.problem.deprecationInDeprecatedCode=disabled +org.eclipse.jdt.core.compiler.problem.deprecationWhenOverridingDeprecatedMethod=disabled +org.eclipse.jdt.core.compiler.problem.discouragedReference=warning +org.eclipse.jdt.core.compiler.problem.emptyStatement=ignore +org.eclipse.jdt.core.compiler.problem.enumIdentifier=error +org.eclipse.jdt.core.compiler.problem.fallthroughCase=ignore +org.eclipse.jdt.core.compiler.problem.fatalOptionalError=disabled +org.eclipse.jdt.core.compiler.problem.fieldHiding=warning +org.eclipse.jdt.core.compiler.problem.finalParameterBound=warning +org.eclipse.jdt.core.compiler.problem.finallyBlockNotCompletingNormally=warning +org.eclipse.jdt.core.compiler.problem.forbiddenReference=warning +org.eclipse.jdt.core.compiler.problem.hiddenCatchBlock=warning +org.eclipse.jdt.core.compiler.problem.incompatibleNonInheritedInterfaceMethod=warning +org.eclipse.jdt.core.compiler.problem.incompleteEnumSwitch=ignore +org.eclipse.jdt.core.compiler.problem.indirectStaticAccess=ignore +org.eclipse.jdt.core.compiler.problem.localVariableHiding=warning +org.eclipse.jdt.core.compiler.problem.methodWithConstructorName=warning +org.eclipse.jdt.core.compiler.problem.missingDeprecatedAnnotation=warning +org.eclipse.jdt.core.compiler.problem.missingHashCodeMethod=ignore +org.eclipse.jdt.core.compiler.problem.missingOverrideAnnotation=warning +org.eclipse.jdt.core.compiler.problem.missingOverrideAnnotationForInterfaceMethodImplementation=enabled +org.eclipse.jdt.core.compiler.problem.missingSerialVersion=warning +org.eclipse.jdt.core.compiler.problem.missingSynchronizedOnInheritedMethod=warning +org.eclipse.jdt.core.compiler.problem.noEffectAssignment=warning +org.eclipse.jdt.core.compiler.problem.noImplicitStringConversion=warning +org.eclipse.jdt.core.compiler.problem.nonExternalizedStringLiteral=ignore +org.eclipse.jdt.core.compiler.problem.nullReference=error +org.eclipse.jdt.core.compiler.problem.overridingPackageDefaultMethod=warning +org.eclipse.jdt.core.compiler.problem.parameterAssignment=ignore +org.eclipse.jdt.core.compiler.problem.possibleAccidentalBooleanAssignment=warning +org.eclipse.jdt.core.compiler.problem.potentialNullReference=warning +org.eclipse.jdt.core.compiler.problem.rawTypeReference=warning +org.eclipse.jdt.core.compiler.problem.redundantNullCheck=warning +org.eclipse.jdt.core.compiler.problem.redundantSuperinterface=warning +org.eclipse.jdt.core.compiler.problem.specialParameterHidingField=disabled +org.eclipse.jdt.core.compiler.problem.staticAccessReceiver=warning +org.eclipse.jdt.core.compiler.problem.suppressOptionalErrors=disabled +org.eclipse.jdt.core.compiler.problem.suppressWarnings=enabled +org.eclipse.jdt.core.compiler.problem.syntheticAccessEmulation=ignore +org.eclipse.jdt.core.compiler.problem.typeParameterHiding=warning +org.eclipse.jdt.core.compiler.problem.uncheckedTypeOperation=warning +org.eclipse.jdt.core.compiler.problem.undocumentedEmptyBlock=ignore +org.eclipse.jdt.core.compiler.problem.unhandledWarningToken=warning +org.eclipse.jdt.core.compiler.problem.unnecessaryElse=ignore +org.eclipse.jdt.core.compiler.problem.unnecessaryTypeCheck=warning +org.eclipse.jdt.core.compiler.problem.unqualifiedFieldAccess=ignore +org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownException=warning +org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionExemptExceptionAndThrowable=enabled +org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionIncludeDocCommentReference=enabled +org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionWhenOverriding=disabled +org.eclipse.jdt.core.compiler.problem.unusedImport=warning +org.eclipse.jdt.core.compiler.problem.unusedLabel=warning +org.eclipse.jdt.core.compiler.problem.unusedLocal=warning +org.eclipse.jdt.core.compiler.problem.unusedObjectAllocation=ignore +org.eclipse.jdt.core.compiler.problem.unusedParameter=warning +org.eclipse.jdt.core.compiler.problem.unusedParameterIncludeDocCommentReference=enabled +org.eclipse.jdt.core.compiler.problem.unusedParameterWhenImplementingAbstract=disabled +org.eclipse.jdt.core.compiler.problem.unusedParameterWhenOverridingConcrete=disabled +org.eclipse.jdt.core.compiler.problem.unusedPrivateMember=warning +org.eclipse.jdt.core.compiler.problem.unusedWarningToken=warning +org.eclipse.jdt.core.compiler.problem.varargsArgumentNeedCast=warning +org.eclipse.jdt.core.compiler.source=1.6 +org.eclipse.jdt.core.formatter.align_type_members_on_columns=true +org.eclipse.jdt.core.formatter.alignment_for_arguments_in_allocation_expression=16 +org.eclipse.jdt.core.formatter.alignment_for_arguments_in_annotation=0 +org.eclipse.jdt.core.formatter.alignment_for_arguments_in_enum_constant=16 +org.eclipse.jdt.core.formatter.alignment_for_arguments_in_explicit_constructor_call=16 +org.eclipse.jdt.core.formatter.alignment_for_arguments_in_method_invocation=16 +org.eclipse.jdt.core.formatter.alignment_for_arguments_in_qualified_allocation_expression=16 +org.eclipse.jdt.core.formatter.alignment_for_assignment=0 +org.eclipse.jdt.core.formatter.alignment_for_binary_expression=16 +org.eclipse.jdt.core.formatter.alignment_for_compact_if=16 +org.eclipse.jdt.core.formatter.alignment_for_conditional_expression=80 +org.eclipse.jdt.core.formatter.alignment_for_enum_constants=49 +org.eclipse.jdt.core.formatter.alignment_for_expressions_in_array_initializer=16 +org.eclipse.jdt.core.formatter.alignment_for_method_declaration=0 +org.eclipse.jdt.core.formatter.alignment_for_multiple_fields=16 +org.eclipse.jdt.core.formatter.alignment_for_parameters_in_constructor_declaration=16 +org.eclipse.jdt.core.formatter.alignment_for_parameters_in_method_declaration=16 +org.eclipse.jdt.core.formatter.alignment_for_selector_in_method_invocation=16 +org.eclipse.jdt.core.formatter.alignment_for_superclass_in_type_declaration=16 +org.eclipse.jdt.core.formatter.alignment_for_superinterfaces_in_enum_declaration=16 +org.eclipse.jdt.core.formatter.alignment_for_superinterfaces_in_type_declaration=16 +org.eclipse.jdt.core.formatter.alignment_for_throws_clause_in_constructor_declaration=16 +org.eclipse.jdt.core.formatter.alignment_for_throws_clause_in_method_declaration=16 +org.eclipse.jdt.core.formatter.blank_lines_after_imports=1 +org.eclipse.jdt.core.formatter.blank_lines_after_package=1 +org.eclipse.jdt.core.formatter.blank_lines_before_field=0 +org.eclipse.jdt.core.formatter.blank_lines_before_first_class_body_declaration=0 +org.eclipse.jdt.core.formatter.blank_lines_before_imports=1 +org.eclipse.jdt.core.formatter.blank_lines_before_member_type=1 +org.eclipse.jdt.core.formatter.blank_lines_before_method=1 +org.eclipse.jdt.core.formatter.blank_lines_before_new_chunk=1 +org.eclipse.jdt.core.formatter.blank_lines_before_package=0 +org.eclipse.jdt.core.formatter.blank_lines_between_import_groups=1 +org.eclipse.jdt.core.formatter.blank_lines_between_type_declarations=1 +org.eclipse.jdt.core.formatter.brace_position_for_annotation_type_declaration=end_of_line +org.eclipse.jdt.core.formatter.brace_position_for_anonymous_type_declaration=end_of_line +org.eclipse.jdt.core.formatter.brace_position_for_array_initializer=end_of_line +org.eclipse.jdt.core.formatter.brace_position_for_block=end_of_line +org.eclipse.jdt.core.formatter.brace_position_for_block_in_case=end_of_line +org.eclipse.jdt.core.formatter.brace_position_for_constructor_declaration=end_of_line +org.eclipse.jdt.core.formatter.brace_position_for_enum_constant=end_of_line +org.eclipse.jdt.core.formatter.brace_position_for_enum_declaration=end_of_line +org.eclipse.jdt.core.formatter.brace_position_for_method_declaration=end_of_line +org.eclipse.jdt.core.formatter.brace_position_for_switch=end_of_line +org.eclipse.jdt.core.formatter.brace_position_for_type_declaration=end_of_line +org.eclipse.jdt.core.formatter.comment.clear_blank_lines_in_block_comment=true +org.eclipse.jdt.core.formatter.comment.clear_blank_lines_in_javadoc_comment=true +org.eclipse.jdt.core.formatter.comment.format_block_comments=true +org.eclipse.jdt.core.formatter.comment.format_header=false +org.eclipse.jdt.core.formatter.comment.format_html=true +org.eclipse.jdt.core.formatter.comment.format_javadoc_comments=true +org.eclipse.jdt.core.formatter.comment.format_line_comments=true +org.eclipse.jdt.core.formatter.comment.format_source_code=true +org.eclipse.jdt.core.formatter.comment.indent_parameter_description=true +org.eclipse.jdt.core.formatter.comment.indent_root_tags=true +org.eclipse.jdt.core.formatter.comment.insert_new_line_before_root_tags=insert +org.eclipse.jdt.core.formatter.comment.insert_new_line_for_parameter=do not insert +org.eclipse.jdt.core.formatter.comment.line_length=80 +org.eclipse.jdt.core.formatter.comment.new_lines_at_block_boundaries=true +org.eclipse.jdt.core.formatter.comment.new_lines_at_javadoc_boundaries=true +org.eclipse.jdt.core.formatter.comment.preserve_white_space_between_code_and_line_comments=false +org.eclipse.jdt.core.formatter.compact_else_if=true +org.eclipse.jdt.core.formatter.continuation_indentation=1 +org.eclipse.jdt.core.formatter.continuation_indentation_for_array_initializer=1 +org.eclipse.jdt.core.formatter.disabling_tag=@formatter\:off +org.eclipse.jdt.core.formatter.enabling_tag=@formatter\:on +org.eclipse.jdt.core.formatter.format_guardian_clause_on_one_line=false +org.eclipse.jdt.core.formatter.format_line_comment_starting_on_first_column=true +org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_annotation_declaration_header=true +org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_enum_constant_header=true +org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_enum_declaration_header=true +org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_type_header=true +org.eclipse.jdt.core.formatter.indent_breaks_compare_to_cases=true +org.eclipse.jdt.core.formatter.indent_empty_lines=false +org.eclipse.jdt.core.formatter.indent_statements_compare_to_block=true +org.eclipse.jdt.core.formatter.indent_statements_compare_to_body=true +org.eclipse.jdt.core.formatter.indent_switchstatements_compare_to_cases=true +org.eclipse.jdt.core.formatter.indent_switchstatements_compare_to_switch=true +org.eclipse.jdt.core.formatter.indentation.size=4 +org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_field=insert +org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_local_variable=insert +org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_member=insert +org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_method=insert +org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_package=insert +org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_parameter=do not insert +org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_type=insert +org.eclipse.jdt.core.formatter.insert_new_line_after_label=do not insert +org.eclipse.jdt.core.formatter.insert_new_line_after_opening_brace_in_array_initializer=do not insert +org.eclipse.jdt.core.formatter.insert_new_line_at_end_of_file_if_missing=insert +org.eclipse.jdt.core.formatter.insert_new_line_before_catch_in_try_statement=insert +org.eclipse.jdt.core.formatter.insert_new_line_before_closing_brace_in_array_initializer=do not insert +org.eclipse.jdt.core.formatter.insert_new_line_before_else_in_if_statement=insert +org.eclipse.jdt.core.formatter.insert_new_line_before_finally_in_try_statement=insert +org.eclipse.jdt.core.formatter.insert_new_line_before_while_in_do_statement=insert +org.eclipse.jdt.core.formatter.insert_new_line_in_empty_annotation_declaration=do not insert +org.eclipse.jdt.core.formatter.insert_new_line_in_empty_anonymous_type_declaration=do not insert +org.eclipse.jdt.core.formatter.insert_new_line_in_empty_block=do not insert +org.eclipse.jdt.core.formatter.insert_new_line_in_empty_enum_constant=do not insert +org.eclipse.jdt.core.formatter.insert_new_line_in_empty_enum_declaration=do not insert +org.eclipse.jdt.core.formatter.insert_new_line_in_empty_method_body=do not insert +org.eclipse.jdt.core.formatter.insert_new_line_in_empty_type_declaration=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_and_in_type_parameter=insert +org.eclipse.jdt.core.formatter.insert_space_after_assignment_operator=insert +org.eclipse.jdt.core.formatter.insert_space_after_at_in_annotation=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_at_in_annotation_type_declaration=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_binary_operator=insert +org.eclipse.jdt.core.formatter.insert_space_after_closing_angle_bracket_in_type_arguments=insert +org.eclipse.jdt.core.formatter.insert_space_after_closing_angle_bracket_in_type_parameters=insert +org.eclipse.jdt.core.formatter.insert_space_after_closing_brace_in_block=insert +org.eclipse.jdt.core.formatter.insert_space_after_closing_paren_in_cast=insert +org.eclipse.jdt.core.formatter.insert_space_after_colon_in_assert=insert +org.eclipse.jdt.core.formatter.insert_space_after_colon_in_case=insert +org.eclipse.jdt.core.formatter.insert_space_after_colon_in_conditional=insert +org.eclipse.jdt.core.formatter.insert_space_after_colon_in_for=insert +org.eclipse.jdt.core.formatter.insert_space_after_colon_in_labeled_statement=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_allocation_expression=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_annotation=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_array_initializer=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_constructor_declaration_parameters=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_constructor_declaration_throws=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_enum_constant_arguments=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_enum_declarations=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_explicitconstructorcall_arguments=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_for_increments=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_for_inits=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_method_declaration_parameters=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_method_declaration_throws=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_method_invocation_arguments=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_multiple_field_declarations=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_multiple_local_declarations=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_parameterized_type_reference=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_superinterfaces=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_type_arguments=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_type_parameters=insert +org.eclipse.jdt.core.formatter.insert_space_after_ellipsis=insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_parameterized_type_reference=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_type_arguments=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_type_parameters=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_brace_in_array_initializer=insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_bracket_in_array_allocation_expression=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_bracket_in_array_reference=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_annotation=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_cast=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_catch=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_constructor_declaration=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_enum_constant=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_for=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_if=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_method_declaration=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_method_invocation=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_parenthesized_expression=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_switch=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_synchronized=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_while=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_postfix_operator=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_prefix_operator=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_question_in_conditional=insert +org.eclipse.jdt.core.formatter.insert_space_after_question_in_wildcard=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_semicolon_in_for=insert +org.eclipse.jdt.core.formatter.insert_space_after_unary_operator=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_and_in_type_parameter=insert +org.eclipse.jdt.core.formatter.insert_space_before_assignment_operator=insert +org.eclipse.jdt.core.formatter.insert_space_before_at_in_annotation_type_declaration=insert +org.eclipse.jdt.core.formatter.insert_space_before_binary_operator=insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_angle_bracket_in_parameterized_type_reference=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_angle_bracket_in_type_arguments=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_angle_bracket_in_type_parameters=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_brace_in_array_initializer=insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_bracket_in_array_allocation_expression=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_bracket_in_array_reference=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_annotation=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_cast=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_catch=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_constructor_declaration=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_enum_constant=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_for=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_if=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_method_declaration=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_method_invocation=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_parenthesized_expression=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_switch=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_synchronized=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_while=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_colon_in_assert=insert +org.eclipse.jdt.core.formatter.insert_space_before_colon_in_case=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_colon_in_conditional=insert +org.eclipse.jdt.core.formatter.insert_space_before_colon_in_default=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_colon_in_for=insert +org.eclipse.jdt.core.formatter.insert_space_before_colon_in_labeled_statement=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_allocation_expression=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_annotation=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_array_initializer=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_constructor_declaration_parameters=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_constructor_declaration_throws=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_enum_constant_arguments=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_enum_declarations=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_explicitconstructorcall_arguments=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_for_increments=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_for_inits=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_method_declaration_parameters=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_method_declaration_throws=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_method_invocation_arguments=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_multiple_field_declarations=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_multiple_local_declarations=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_parameterized_type_reference=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_superinterfaces=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_type_arguments=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_type_parameters=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_ellipsis=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_parameterized_type_reference=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_type_arguments=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_type_parameters=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_annotation_type_declaration=insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_anonymous_type_declaration=insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_array_initializer=insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_block=insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_constructor_declaration=insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_enum_constant=insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_enum_declaration=insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_method_declaration=insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_switch=insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_type_declaration=insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_bracket_in_array_allocation_expression=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_bracket_in_array_reference=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_bracket_in_array_type_reference=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_annotation=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_annotation_type_member_declaration=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_catch=insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_constructor_declaration=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_enum_constant=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_for=insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_if=insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_method_declaration=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_method_invocation=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_parenthesized_expression=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_switch=insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_synchronized=insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_while=insert +org.eclipse.jdt.core.formatter.insert_space_before_parenthesized_expression_in_return=insert +org.eclipse.jdt.core.formatter.insert_space_before_parenthesized_expression_in_throw=insert +org.eclipse.jdt.core.formatter.insert_space_before_postfix_operator=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_prefix_operator=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_question_in_conditional=insert +org.eclipse.jdt.core.formatter.insert_space_before_question_in_wildcard=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_semicolon=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_semicolon_in_for=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_unary_operator=do not insert +org.eclipse.jdt.core.formatter.insert_space_between_brackets_in_array_type_reference=do not insert +org.eclipse.jdt.core.formatter.insert_space_between_empty_braces_in_array_initializer=do not insert +org.eclipse.jdt.core.formatter.insert_space_between_empty_brackets_in_array_allocation_expression=do not insert +org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_annotation_type_member_declaration=do not insert +org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_constructor_declaration=do not insert +org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_enum_constant=do not insert +org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_method_declaration=do not insert +org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_method_invocation=do not insert +org.eclipse.jdt.core.formatter.join_lines_in_comments=true +org.eclipse.jdt.core.formatter.join_wrapped_lines=true +org.eclipse.jdt.core.formatter.keep_else_statement_on_same_line=false +org.eclipse.jdt.core.formatter.keep_empty_array_initializer_on_one_line=false +org.eclipse.jdt.core.formatter.keep_imple_if_on_one_line=false +org.eclipse.jdt.core.formatter.keep_then_statement_on_same_line=false +org.eclipse.jdt.core.formatter.lineSplit=120 +org.eclipse.jdt.core.formatter.never_indent_block_comments_on_first_column=false +org.eclipse.jdt.core.formatter.never_indent_line_comments_on_first_column=false +org.eclipse.jdt.core.formatter.number_of_blank_lines_at_beginning_of_method_body=0 +org.eclipse.jdt.core.formatter.number_of_empty_lines_to_preserve=1 +org.eclipse.jdt.core.formatter.put_empty_statement_on_new_line=true +org.eclipse.jdt.core.formatter.tabulation.char=space +org.eclipse.jdt.core.formatter.tabulation.size=4 +org.eclipse.jdt.core.formatter.use_on_off_tags=false +org.eclipse.jdt.core.formatter.use_tabs_only_for_leading_indentations=false +org.eclipse.jdt.core.formatter.wrap_before_binary_operator=true +org.eclipse.jdt.core.formatter.wrap_outer_expressions_when_nested=true diff --git a/jOOQ-codegen/.settings/org.eclipse.jdt.ui.prefs b/jOOQ-codegen/.settings/org.eclipse.jdt.ui.prefs new file mode 100644 index 00000000000..b07f39ee3e9 --- /dev/null +++ b/jOOQ-codegen/.settings/org.eclipse.jdt.ui.prefs @@ -0,0 +1,116 @@ +#Sat Nov 05 13:02:50 CET 2011 +cleanup.add_default_serial_version_id=false +cleanup.add_generated_serial_version_id=true +cleanup.add_missing_annotations=true +cleanup.add_missing_deprecated_annotations=true +cleanup.add_missing_methods=false +cleanup.add_missing_nls_tags=false +cleanup.add_missing_override_annotations=true +cleanup.add_missing_override_annotations_interface_methods=true +cleanup.add_serial_version_id=true +cleanup.always_use_blocks=true +cleanup.always_use_parentheses_in_expressions=false +cleanup.always_use_this_for_non_static_field_access=true +cleanup.always_use_this_for_non_static_method_access=false +cleanup.convert_to_enhanced_for_loop=false +cleanup.correct_indentation=true +cleanup.format_source_code=false +cleanup.format_source_code_changes_only=false +cleanup.make_local_variable_final=true +cleanup.make_parameters_final=false +cleanup.make_private_fields_final=true +cleanup.make_type_abstract_if_missing_method=false +cleanup.make_variable_declarations_final=false +cleanup.never_use_blocks=false +cleanup.never_use_parentheses_in_expressions=true +cleanup.organize_imports=true +cleanup.qualify_static_field_accesses_with_declaring_class=false +cleanup.qualify_static_member_accesses_through_instances_with_declaring_class=true +cleanup.qualify_static_member_accesses_through_subtypes_with_declaring_class=true +cleanup.qualify_static_member_accesses_with_declaring_class=true +cleanup.qualify_static_method_accesses_with_declaring_class=false +cleanup.remove_private_constructors=true +cleanup.remove_trailing_whitespaces=true +cleanup.remove_trailing_whitespaces_all=true +cleanup.remove_trailing_whitespaces_ignore_empty=false +cleanup.remove_unnecessary_casts=true +cleanup.remove_unnecessary_nls_tags=true +cleanup.remove_unused_imports=true +cleanup.remove_unused_local_variables=false +cleanup.remove_unused_private_fields=true +cleanup.remove_unused_private_members=false +cleanup.remove_unused_private_methods=true +cleanup.remove_unused_private_types=true +cleanup.sort_members=false +cleanup.sort_members_all=false +cleanup.use_blocks=true +cleanup.use_blocks_only_for_return_and_throw=false +cleanup.use_parentheses_in_expressions=false +cleanup.use_this_for_non_static_field_access=false +cleanup.use_this_for_non_static_field_access_only_if_necessary=false +cleanup.use_this_for_non_static_method_access=false +cleanup.use_this_for_non_static_method_access_only_if_necessary=true +cleanup_profile=_jOOQ +cleanup_settings_version=2 +eclipse.preferences.version=1 +editor_save_participant_org.eclipse.jdt.ui.postsavelistener.cleanup=true +formatter_profile=_jOOQ +formatter_settings_version=12 +org.eclipse.jdt.ui.ignorelowercasenames=true +org.eclipse.jdt.ui.importorder=java;javax;org.jooq;org;com; +org.eclipse.jdt.ui.javadoc=false +org.eclipse.jdt.ui.ondemandthreshold=99 +org.eclipse.jdt.ui.staticondemandthreshold=99 +org.eclipse.jdt.ui.text.custom_code_templates= +sp_cleanup.add_default_serial_version_id=true +sp_cleanup.add_generated_serial_version_id=false +sp_cleanup.add_missing_annotations=true +sp_cleanup.add_missing_deprecated_annotations=true +sp_cleanup.add_missing_methods=false +sp_cleanup.add_missing_nls_tags=false +sp_cleanup.add_missing_override_annotations=true +sp_cleanup.add_missing_override_annotations_interface_methods=true +sp_cleanup.add_serial_version_id=false +sp_cleanup.always_use_blocks=true +sp_cleanup.always_use_parentheses_in_expressions=false +sp_cleanup.always_use_this_for_non_static_field_access=false +sp_cleanup.always_use_this_for_non_static_method_access=false +sp_cleanup.convert_to_enhanced_for_loop=false +sp_cleanup.correct_indentation=false +sp_cleanup.format_source_code=false +sp_cleanup.format_source_code_changes_only=false +sp_cleanup.make_local_variable_final=false +sp_cleanup.make_parameters_final=false +sp_cleanup.make_private_fields_final=true +sp_cleanup.make_type_abstract_if_missing_method=false +sp_cleanup.make_variable_declarations_final=false +sp_cleanup.never_use_blocks=false +sp_cleanup.never_use_parentheses_in_expressions=true +sp_cleanup.on_save_use_additional_actions=true +sp_cleanup.organize_imports=true +sp_cleanup.qualify_static_field_accesses_with_declaring_class=false +sp_cleanup.qualify_static_member_accesses_through_instances_with_declaring_class=true +sp_cleanup.qualify_static_member_accesses_through_subtypes_with_declaring_class=true +sp_cleanup.qualify_static_member_accesses_with_declaring_class=false +sp_cleanup.qualify_static_method_accesses_with_declaring_class=false +sp_cleanup.remove_private_constructors=true +sp_cleanup.remove_trailing_whitespaces=true +sp_cleanup.remove_trailing_whitespaces_all=true +sp_cleanup.remove_trailing_whitespaces_ignore_empty=false +sp_cleanup.remove_unnecessary_casts=true +sp_cleanup.remove_unnecessary_nls_tags=false +sp_cleanup.remove_unused_imports=true +sp_cleanup.remove_unused_local_variables=false +sp_cleanup.remove_unused_private_fields=true +sp_cleanup.remove_unused_private_members=false +sp_cleanup.remove_unused_private_methods=true +sp_cleanup.remove_unused_private_types=true +sp_cleanup.sort_members=false +sp_cleanup.sort_members_all=false +sp_cleanup.use_blocks=false +sp_cleanup.use_blocks_only_for_return_and_throw=false +sp_cleanup.use_parentheses_in_expressions=false +sp_cleanup.use_this_for_non_static_field_access=false +sp_cleanup.use_this_for_non_static_field_access_only_if_necessary=true +sp_cleanup.use_this_for_non_static_method_access=false +sp_cleanup.use_this_for_non_static_method_access_only_if_necessary=true diff --git a/jOOQ-codegen/.settings/org.maven.ide.eclipse.prefs b/jOOQ-codegen/.settings/org.maven.ide.eclipse.prefs new file mode 100644 index 00000000000..8bea9918fba --- /dev/null +++ b/jOOQ-codegen/.settings/org.maven.ide.eclipse.prefs @@ -0,0 +1,8 @@ +#Sun Apr 10 10:40:24 CEST 2011 +activeProfiles= +eclipse.preferences.version=1 +fullBuildGoals=process-test-resources +resolveWorkspaceProjects=true +resourceFilterGoals=process-resources resources\:testResources +skipCompilerPlugin=true +version=1 diff --git a/jOOQ-codegen/LICENSE.txt b/jOOQ-codegen/LICENSE.txt new file mode 100644 index 00000000000..fd12d44afa0 --- /dev/null +++ b/jOOQ-codegen/LICENSE.txt @@ -0,0 +1,33 @@ + Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com + All rights reserved. + + This software is licensed to you under the Apache License, Version 2.0 + (the "License"); You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + 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 "jOOQ" 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 COPYRIGHT OWNER 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. \ No newline at end of file diff --git a/jOOQ-codegen/pom.xml b/jOOQ-codegen/pom.xml new file mode 100644 index 00000000000..375a0a8f9ff --- /dev/null +++ b/jOOQ-codegen/pom.xml @@ -0,0 +1,195 @@ + + + + oss-parent + org.sonatype.oss + 7 + + 4.0.0 + + org.jooq + jooq-codegen + 2.2.0 + jar + + jOOQ Codegen + jOOQ effectively combines complex SQL, typesafety, source code generation, active records, stored procedures, advanced data types, and Java in a fluent, intuitive DSL. + http://www.jooq.org + + + + + Apache License, Version 2.0 + http://www.jooq.org/inc/LICENSE.txt + repo + + + + + scm:svn:https://jooq.svn.sourceforge.net/svnroot/jooq + https://jooq.svn.sourceforge.net/svnroot/jooq + scm:svn:https://jooq.svn.sourceforge.net/svnroot/jooq + + + + deploy + ${project.artifactId}-${project.version} + + + + org.apache.maven.plugins + maven-gpg-plugin + 1.1 + + + sign-artifacts + verify + + sign + + + + + + + org.apache.maven.plugins + maven-compiler-plugin + 2.3.2 + + true + 512m + 256m + UTF-8 + 1.6 + 1.6 + true + lines,vars,source + + + + + true + org.apache.maven.plugins + maven-source-plugin + 2.1.2 + + + attach-sources + + jar + + + + + + true + true + + + + + true + org.apache.maven.plugins + maven-javadoc-plugin + 2.7 + + + bundle-sources + package + + jar + + + + + 512 + UTF-8 + protected + true + + + + + org.apache.maven.plugins + maven-resources-plugin + 2.5 + + UTF-8 + + + + + org.apache.maven.plugins + maven-eclipse-plugin + 2.8 + + true + + + + + + + Trac + https://sourceforge.net/apps/trac/jooq/report/6 + + + + + Lukas Eder + lukas.eder@gmail.com + + + Espen Stromsnes + estromsnes@gmail.com + + + + + + org.jooq + jooq + 2.2.0 + jar + compile + + + org.jooq + jooq-meta + 2.2.0 + jar + compile + + + org.apache.ant + ant + 1.8.2 + provided + true + + + org.slf4j + integration + 1.6.1 + jar + test + true + + + org.slf4j + slf4j-log4j12 + 1.6.1 + jar + test + true + + + log4j + log4j + 1.2.16 + test + true + + + \ No newline at end of file diff --git a/jOOQ-codegen/src/main/java/org/jooq/util/AbstractGeneratorStrategy.java b/jOOQ-codegen/src/main/java/org/jooq/util/AbstractGeneratorStrategy.java new file mode 100644 index 00000000000..16bb6d51171 --- /dev/null +++ b/jOOQ-codegen/src/main/java/org/jooq/util/AbstractGeneratorStrategy.java @@ -0,0 +1,163 @@ +/** + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com + * All rights reserved. + * + * This software is licensed to you under the Apache License, Version 2.0 + * (the "License"); You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * 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 "jOOQ" 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 COPYRIGHT OWNER 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. + */ +package org.jooq.util; + +import java.io.File; +import java.util.List; + +/** + * Common base class for convenience method abstraction + * + * @author Lukas Eder + */ +public abstract class AbstractGeneratorStrategy implements GeneratorStrategy { + + // ------------------------------------------------------------------------- + // Strategy methods + // ------------------------------------------------------------------------- + + @Override + public final String getFileName(Definition definition) { + return getFileName(definition, Mode.DEFAULT); + } + + @Override + public final String getFileName(Definition definition, Mode mode) { + return getJavaClassName(definition, mode) + ".java"; + } + + @Override + public final File getFile(Definition definition) { + return getFile(definition, Mode.DEFAULT); + } + + @Override + public final File getFile(Definition definition, Mode mode) { + String dir = getTargetDirectory(); + String pkg = getJavaPackageName(definition, mode).replaceAll("\\.", "/"); + return new File(dir + "/" + pkg, getFileName(definition, mode)); + } + + @Override + public final String getFullJavaIdentifier(Definition definition) { + StringBuilder sb = new StringBuilder(); + + // Columns + if (definition instanceof ColumnDefinition) { + TypedElementDefinition e = (TypedElementDefinition) definition; + + if (getInstanceFields()) { + sb.append(getFullJavaIdentifier(e.getContainer())); + } + else { + sb.append(getFullJavaClassName(e.getContainer())); + } + } + + // Attributes, Parameters + else if (definition instanceof TypedElementDefinition) { + TypedElementDefinition e = (TypedElementDefinition) definition; + sb.append(getFullJavaClassName(e.getContainer())); + } + + // Table, UDT, Schema, etc + else { + sb.append(getFullJavaClassName(definition)); + } + + sb.append("."); + sb.append(getJavaIdentifier(definition)); + + return sb.toString(); + } + + @Override + public final String getJavaSetterName(Definition definition) { + return getJavaSetterName(definition, Mode.DEFAULT); + } + + @Override + public final String getJavaGetterName(Definition definition) { + return getJavaGetterName(definition, Mode.DEFAULT); + } + + @Override + public final String getJavaMethodName(Definition definition) { + return getJavaMethodName(definition, Mode.DEFAULT); + } + + @Override + public final String getJavaClassExtends(Definition definition) { + return getJavaClassExtends(definition, Mode.DEFAULT); + } + + @Override + public final List getJavaClassImplements(Definition definition) { + return getJavaClassImplements(definition, Mode.DEFAULT); + } + + @Override + public final String getJavaClassName(Definition definition) { + return getJavaClassName(definition, Mode.DEFAULT); + } + + @Override + public final String getJavaPackageName(Definition definition) { + return getJavaPackageName(definition, Mode.DEFAULT); + } + + @Override + public final String getJavaMemberName(Definition definition) { + return getJavaMemberName(definition, Mode.DEFAULT); + } + + @Override + public final String getFullJavaClassName(Definition definition) { + return getFullJavaClassName(definition, Mode.DEFAULT); + } + + @Override + public final String getFullJavaClassName(Definition definition, Mode mode) { + StringBuilder sb = new StringBuilder(); + + sb.append(getJavaPackageName(definition, mode)); + sb.append("."); + sb.append(getJavaClassName(definition, mode)); + + return sb.toString(); + } + +} diff --git a/jOOQ-codegen/src/main/java/org/jooq/util/DefaultGenerator.java b/jOOQ-codegen/src/main/java/org/jooq/util/DefaultGenerator.java new file mode 100644 index 00000000000..25c72fea4b2 --- /dev/null +++ b/jOOQ-codegen/src/main/java/org/jooq/util/DefaultGenerator.java @@ -0,0 +1,2967 @@ +/** + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com + * All rights reserved. + * + * This software is licensed to you under the Apache License, Version 2.0 + * (the "License"); You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * 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 "jOOQ" 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 COPYRIGHT OWNER 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. + */ + +package org.jooq.util; + + +import static org.jooq.util.GenerationUtil.convertToJavaIdentifier; + +import java.io.File; +import java.io.FileNotFoundException; +import java.io.IOException; +import java.lang.reflect.TypeVariable; +import java.sql.Connection; +import java.sql.SQLException; +import java.util.ArrayList; +import java.util.Arrays; +import java.util.Collections; +import java.util.HashSet; +import java.util.LinkedHashSet; +import java.util.List; +import java.util.Set; + +import org.jooq.Configuration; +import org.jooq.Constants; +import org.jooq.DataType; +import org.jooq.EnumType; +import org.jooq.Field; +import org.jooq.ForeignKey; +import org.jooq.Identity; +import org.jooq.MasterDataType; +import org.jooq.Parameter; +import org.jooq.Record; +import org.jooq.Result; +import org.jooq.Select; +import org.jooq.Sequence; +import org.jooq.Table; +import org.jooq.TableField; +import org.jooq.UDT; +import org.jooq.UDTField; +import org.jooq.UniqueKey; +import org.jooq.conf.Settings; +import org.jooq.exception.DataAccessException; +import org.jooq.exception.SQLDialectNotSupportedException; +import org.jooq.impl.AbstractKeys; +import org.jooq.impl.AbstractRoutine; +import org.jooq.impl.ArrayRecordImpl; +import org.jooq.impl.FieldTypeHelper; +import org.jooq.impl.PackageImpl; +import org.jooq.impl.SQLDataType; +import org.jooq.impl.SchemaImpl; +import org.jooq.impl.SequenceImpl; +import org.jooq.impl.TableImpl; +import org.jooq.impl.TableRecordImpl; +import org.jooq.impl.UDTImpl; +import org.jooq.impl.UDTRecordImpl; +import org.jooq.impl.UpdatableRecordImpl; +import org.jooq.impl.UpdatableTableImpl; +import org.jooq.tools.JooqLogger; +import org.jooq.tools.StopWatch; +import org.jooq.tools.StringUtils; +import org.jooq.util.GeneratorStrategy.Mode; + + +/** + * A default implementation for code generation. Replace this code with your own + * logic, if you need your database schema represented in a different way. + *

+ * Note that you can also extend this class to generate POJO's or other stuff + * entirely independent of jOOQ. + * + * @author Lukas Eder + */ +public class DefaultGenerator implements Generator { + + private static final JooqLogger log = JooqLogger.getLogger(DefaultGenerator.class); + + private boolean generateDeprecated = true; + private boolean generateRelations = false; + private boolean generateNavigationMethods = true; + private boolean generateInstanceFields = true; + private boolean generateGeneratedAnnotation = true; + private boolean generatePojos = false; + private boolean generateRecords = true; + private boolean generateJPAAnnotations = false; + + private GeneratorStrategyWrapper strategy; + + @Override + public void setStrategy(GeneratorStrategy strategy) { + this.strategy = new GeneratorStrategyWrapper(this, strategy); + } + + @Override + public GeneratorStrategy getStrategy() { + return strategy; + } + + @Override + public boolean generateDeprecated() { + return generateDeprecated; + } + + @Override + public void setGenerateDeprecated(boolean generateDeprecated) { + this.generateDeprecated = generateDeprecated; + } + + @Override + public boolean generateRelations() { + return generateRelations; + } + + @Override + public void setGenerateRelations(boolean generateRelations) { + this.generateRelations = generateRelations; + } + + @Override + public boolean generateInstanceFields() { + return generateInstanceFields; + } + + @Override + public boolean generateNavigationMethods() { + return generateNavigationMethods; + } + + @Override + public void setGenerateNavigationMethods(boolean generateNavigationMethods) { + this.generateNavigationMethods = generateNavigationMethods; + } + + @Override + public void setGenerateInstanceFields(boolean generateInstanceFields) { + this.generateInstanceFields = generateInstanceFields; + } + + @Override + public boolean generateGeneratedAnnotation() { + return generateGeneratedAnnotation; + } + + @Override + public void setGenerateGeneratedAnnotation(boolean generateGeneratedAnnotation) { + this.generateGeneratedAnnotation = generateGeneratedAnnotation; + } + + @Override + public boolean generatePojos() { + return generatePojos; + } + + @Override + public void setGeneratePojos(boolean generatePojos) { + this.generatePojos = generatePojos; + } + + @Override + public boolean generateRecords() { + return generateRecords; + } + + @Override + public void setGenerateRecords(boolean generateRecords) { + this.generateRecords = generateRecords; + } + + @Override + public boolean generateJPAAnnotations() { + return generateJPAAnnotations; + } + + @Override + public void setGenerateJPAAnnotations(boolean generateJPAAnnotations) { + this.generateJPAAnnotations = generateJPAAnnotations; + } + + // ---- + + @Override + public void setTargetDirectory(String directory) { + strategy.setTargetDirectory(directory); + } + + @Override + public String getTargetDirectory() { + return strategy.getTargetDirectory(); + } + + @Override + public void setTargetPackage(String packageName) { + strategy.setTargetPackage(packageName); + } + + @Override + public String getTargetPackage() { + return strategy.getTargetPackage(); + } + + // ---- + + @Override + public void generate(Database database) throws SQLException, IOException { + StopWatch watch = new StopWatch(); + + log.info("Database parameters"); + log.info("----------------------------------------------------------"); + log.info(" dialect", database.getDialect()); + log.info(" target dir", getTargetDirectory()); + log.info(" target package", getTargetPackage()); + log.info("----------------------------------------------------------"); + log.info(""); + log.info("Generation parameters"); + log.info("----------------------------------------------------------"); + log.info(" strategy", strategy.delegate.getClass()); + log.info(" deprecated", generateDeprecated()); + log.info(" generated annotation", generateGeneratedAnnotation()); + log.info(" instance fields", generateInstanceFields()); + log.info(" JPA annotations", generateJPAAnnotations()); + log.info(" navigation methods", generateNavigationMethods()); + log.info(" records", generateRecords()); + log.info(" pojos", generatePojos()); + log.info(" relations", generateRelations()); + + log.info("----------------------------------------------------------"); + + String targetPackage = getTargetPackage(); + File targetPackageDir = new File(getTargetDirectory() + File.separator + targetPackage.replace('.', File.separatorChar)); + + // ---------------------------------------------------------------------- + // XXX Initialising + // ---------------------------------------------------------------------- + log.info("Emptying", targetPackageDir.getCanonicalPath()); + empty(targetPackageDir); + + // ---------------------------------------------------------------------- + // XXX Generating schemas + // ---------------------------------------------------------------------- + for (SchemaDefinition schema : database.getSchemata()) { + generate(database, schema, watch); + } + } + + private void generate( + Database database, + SchemaDefinition schema, + StopWatch watch) throws SQLException, IOException { + + File targetSchemaDir = strategy.getFile(schema).getParentFile(); + + GenerationWriter outS = null; + GenerationWriter outF = null; + + if (!schema.isDefaultSchema()) { + + // Generating the schema + // ----------------------------------------------------------------- + log.info("Generating schema", strategy.getFileName(schema)); + log.info("----------------------------------------------------------"); + + outS = new GenerationWriter(strategy.getFile(schema)); + printHeader(outS, schema); + printClassJavadoc(outS, schema); + + outS.print("public class "); + outS.print(strategy.getJavaClassName(schema)); + outS.print(" extends "); + outS.print(SchemaImpl.class); + printImplements(outS, schema, Mode.DEFAULT); + outS.println(" {"); + outS.printSerial(); + outS.println(); + outS.println("\t/**"); + outS.println("\t * The singleton instance of " + schema.getQualifiedOutputName()); + outS.println("\t */"); + outS.println("\tpublic static final " + strategy.getJavaClassName(schema) + " " + strategy.getJavaIdentifier(schema) + " = new " + strategy.getJavaClassName(schema) + "();"); + + outS.println(); + printNoFurtherInstancesAllowedJavadoc(outS); + outS.println("\tprivate " + strategy.getJavaClassName(schema) + "() {"); + outS.println("\t\tsuper(\"" + schema.getOutputName() + "\");"); + outS.println("\t}"); + + outS.printInitialisationStatementsPlaceholder(); + + // Generating the factory + // ----------------------------------------------------------------- + log.info("Generating factory", strategy.getFileName(schema, Mode.FACTORY)); + + outF = new GenerationWriter(strategy.getFile(schema, Mode.FACTORY)); + printHeader(outF, schema); + printClassJavadoc(outF, schema); + + outF.print("public class "); + outF.print(strategy.getJavaClassName(schema, Mode.FACTORY)); + outF.print(" extends "); + outF.print(database.getDialect().getFactory()); + printImplements(outF, schema, Mode.FACTORY); + outF.println(" {"); + outF.printSerial(); + + outF.println(); + outF.println("\t/**"); + outF.println("\t * Create a factory with a connection"); + outF.println("\t *"); + outF.println("\t * @param connection The connection to use with objects created from this factory"); + outF.println("\t */"); + outF.print("\tpublic "); + outF.print(strategy.getJavaClassName(schema, Mode.FACTORY)); + outF.print("("); + outF.print(Connection.class); + outF.println(" connection) {"); + outF.println("\t\tsuper(connection);"); + outF.println("\t}"); + + if (generateDeprecated()) { + outF.println(); + outF.println("\t/**"); + outF.println("\t * Create a factory with a connection and a schema mapping"); + outF.println("\t * "); + outF.print("\t * @deprecated - 2.0.5 - Use {@link #"); + outF.print(strategy.getJavaClassName(schema, Mode.FACTORY)); + outF.print("("); + outF.print(Connection.class); + outF.print(", "); + outF.print(Settings.class); + outF.println(")} instead"); + outF.println("\t */"); + outF.println("\t@Deprecated"); + outF.print("\tpublic "); + outF.print(strategy.getJavaClassName(schema, Mode.FACTORY)); + outF.print("("); + outF.print(Connection.class); + outF.println(" connection, org.jooq.SchemaMapping mapping) {"); + outF.println("\t\tsuper(connection, mapping);"); + outF.println("\t}"); + } + + outF.println(); + outF.println("\t/**"); + outF.println("\t * Create a factory with a connection and some settings"); + outF.println("\t *"); + outF.println("\t * @param connection The connection to use with objects created from this factory"); + outF.println("\t * @param settings The settings to apply to objects created from this factory"); + outF.println("\t */"); + outF.print("\tpublic "); + outF.print(strategy.getJavaClassName(schema, Mode.FACTORY)); + outF.print("("); + outF.print(Connection.class); + outF.print(" connection, "); + outF.print(Settings.class); + outF.println(" settings) {"); + outF.println("\t\tsuper(connection, settings);"); + outF.println("\t}"); + + watch.splitInfo("Schema generated"); + } + + // ---------------------------------------------------------------------- + // XXX Generating sequences + // ---------------------------------------------------------------------- + if (database.getSequences(schema).size() > 0) { + log.info("Generating sequences"); + + GenerationWriter out = new GenerationWriter(new File(targetSchemaDir, "Sequences.java")); + printHeader(out, schema); + printClassJavadoc(out, "Convenience access to all sequences in " + schema.getOutputName()); + out.println("public final class Sequences {"); + + for (SequenceDefinition sequence : database.getSequences(schema)) { + out.println(); + out.println("\t/**"); + out.println("\t * The sequence " + sequence.getQualifiedOutputName()); + out.println("\t */"); + + out.print("\tpublic static final "); + out.print(Sequence.class); + out.print("<"); + out.print(getJavaType(sequence.getType())); + out.print(">"); + out.print(" "); + out.print(strategy.getJavaIdentifier(sequence)); + out.print(" = new "); + out.print(SequenceImpl.class); + out.print("<"); + out.print(getJavaType(sequence.getType())); + out.print(">"); + out.print("(\""); + out.print(sequence.getOutputName()); + out.print("\""); + + if (!schema.isDefaultSchema()) { + out.print(", "); + out.print(strategy.getFullJavaIdentifier(schema)); + } else { + out.print(", null"); + } + + out.print(", "); + out.print(getJavaTypeReference(sequence.getDatabase(), sequence.getType())); + + out.println(");"); + } + + printPrivateConstructor(out, "Sequences"); + out.println("}"); + out.close(); + + registerInSchema(outS, database.getSequences(schema), Sequence.class, true); + watch.splitInfo("Sequences generated"); + } + + // --------------------------------------------------------------------- + // XXX Generating master data tables + // --------------------------------------------------------------------- + if (database.getMasterDataTables(schema).size() > 0) { + log.info("Generating master data"); + + for (MasterDataTableDefinition table : database.getMasterDataTables(schema)) { + try { + log.info("Generating table", strategy.getFileName(table)); + + GenerationWriter out = new GenerationWriter(strategy.getFile(table)); + printHeader(out, table); + printClassJavadoc(out, table); + + ColumnDefinition pk = table.getPrimaryKeyColumn(); + ColumnDefinition l = table.getLiteralColumn(); + ColumnDefinition d = table.getDescriptionColumn(); + + Result data = table.getData(); + + out.print("public enum "); + out.print(strategy.getJavaClassName(table)); + printImplements(out, table, Mode.ENUM, + MasterDataType.class.getName() + "<" + getJavaType(pk.getType()) + ">"); + out.println(" {"); + + Set columns = + new LinkedHashSet(Arrays.asList(pk, l, d)); + + + for (Record record : data) { + String literal = record.getValueAsString(l.getName()); + String description = record.getValueAsString(d.getName()); + + if (!StringUtils.isEmpty(description)) { + out.println(); + out.println("\t/**"); + out.println("\t * " + description); + out.println("\t */"); + } + + out.print("\t"); + out.print(GenerationUtil.convertToJavaIdentifier(literal)); + out.print("("); + + String separator = ""; + for (ColumnDefinition column : columns) { + out.print(separator); + out.printNewJavaObject(getJavaType(column.getType()), record.getValue(column.getName())); + + separator = ", "; + } + + out.println("),"); + } + + out.println("\t;"); + out.println(); + + // Fields + for (ColumnDefinition column : columns) { + out.print("\tprivate final "); + out.print(getJavaType(column.getType())); + out.print(" "); + out.println(strategy.getJavaMemberName(column) + ";"); + } + + // Constructor + out.println(); + out.print("\tprivate " + strategy.getJavaClassName(table) + "("); + + String separator = ""; + for (ColumnDefinition column : columns) { + out.print(separator); + out.print(getJavaType(column.getType())); + out.print(" "); + out.print(strategy.getJavaMemberName(column)); + + separator = ", "; + } + + out.println(") {"); + for (ColumnDefinition column : columns) { + out.print("\t\tthis."); + out.print(strategy.getJavaMemberName(column)); + out.print(" = "); + out.print(strategy.getJavaMemberName(column)); + out.println(";"); + } + out.println("\t}"); + + // Implementation methods + out.println(); + printOverride(out); + out.print("\tpublic "); + out.print(getJavaType(pk.getType())); + out.println(" getPrimaryKey() {"); + out.println("\t\treturn " + strategy.getJavaMemberName(pk) + ";"); + out.println("\t}"); + + // Getters + for (ColumnDefinition column : columns) { + printFieldJavaDoc(out, column); + out.print("\tpublic final "); + out.print(getJavaType(column.getType())); + out.print(" "); + out.print(strategy.getJavaGetterName(column, Mode.DEFAULT)); + out.println("() {"); + out.print("\t\treturn "); + out.print(strategy.getJavaMemberName(column)); + out.println(";"); + out.println("\t}"); + } + + out.println("}"); + out.close(); + } catch (Exception e) { + log.error("Exception while generating master data table " + table, e); + } + } + + watch.splitInfo("Master data generated"); + } + + // ---------------------------------------------------------------------- + // XXX Generating tables + // ---------------------------------------------------------------------- + if (database.getTables(schema).size() > 0) { + log.info("Generating tables"); + + for (TableDefinition table : database.getTables(schema)) { + try { + log.info("Generating table", strategy.getFileName(table)); + + GenerationWriter out = new GenerationWriter(strategy.getFile(table)); + printHeader(out, table); + printClassJavadoc(out, table); + + Class baseClass; + if (generateRelations() && table.getMainUniqueKey() != null) { + baseClass = UpdatableTableImpl.class; + } else { + baseClass = TableImpl.class; + } + + out.print("public class "); + out.print(strategy.getJavaClassName(table)); + out.print(" extends "); + out.print(baseClass); + out.print("<"); + out.print(strategy.getFullJavaClassName(table, Mode.RECORD)); + out.print(">"); + printImplements(out, table, Mode.RECORD); + out.println(" {"); + out.printSerial(); + printSingletonInstance(table, out); + printRecordTypeMethod(table, out); + + for (ColumnDefinition column : table.getColumns()) { + printTableColumn(out, column, table); + } + + // [#1255] With instance fields, the table constructor may + // be public, as tables are no longer singletons + out.println(); + if (generateInstanceFields()) { + out.print("\tpublic "); + } + else { + printNoFurtherInstancesAllowedJavadoc(out); + out.print("\tprivate "); + } + out.println(strategy.getJavaClassName(table) + "() {"); + + if (!schema.isDefaultSchema()) { + out.println("\t\tsuper(\"" + table.getOutputName() + "\", " + strategy.getFullJavaIdentifier(schema) + ");"); + } else { + out.println("\t\tsuper(\"" + table.getOutputName() + "\");"); + } + + out.println("\t}"); + + // [#117] With instance fields, it makes sense to create a + // type-safe table alias + // [#1255] With instance fields, the table constructor may + // be public, as tables are no longer singletons + if (generateInstanceFields()) { + out.println(); + out.print("\tpublic "); + out.print(strategy.getJavaClassName(table)); + out.print("("); + out.print(String.class); + out.println(" alias) {"); + + out.print("\t\tsuper(alias, "); + out.print(strategy.getFullJavaIdentifier(schema)); + out.print(", "); + out.print(strategy.getFullJavaIdentifier(table)); + out.println(");"); + out.println("\t}"); + } + + // Add primary / unique / foreign key information + if (generateRelations()) { + ColumnDefinition identity = table.getIdentity(); + + // The identity column + if (identity != null) { + out.println(); + + out.println("\t@Override"); + out.print("\tpublic "); + out.print(Identity.class); + out.print("<"); + out.print(strategy.getFullJavaClassName(table, Mode.RECORD)); + out.print(", "); + out.print(getJavaType(table.getIdentity().getType())); + out.println("> getIdentity() {"); + + out.print("\t\treturn "); + out.print(strategy.getJavaPackageName(schema)); + out.print(".Keys.IDENTITY_"); + out.print(strategy.getJavaIdentifier(identity.getContainer())); + out.println(";"); + + out.println("\t}"); + } + + UniqueKeyDefinition mainKey = table.getMainUniqueKey(); + + // The primary / main unique key + if (mainKey != null) { + out.println(); + + out.println("\t@Override"); + out.print("\tpublic "); + out.print(UniqueKey.class); + out.print("<"); + out.print(strategy.getFullJavaClassName(table, Mode.RECORD)); + out.println("> getMainKey() {"); + + out.print("\t\treturn "); + out.print(strategy.getJavaPackageName(schema)); + out.print(".Keys."); + out.print(strategy.getJavaIdentifier(mainKey)); + out.println(";"); + + out.println("\t}"); + } + + // The remaining unique keys + List uniqueKeys = table.getUniqueKeys(); + if (uniqueKeys.size() > 0) { + out.println(); + out.println("\t@Override"); + out.println("\t@SuppressWarnings(\"unchecked\")"); + + out.print("\tpublic "); + out.print(List.class); + out.print("<"); + out.print(UniqueKey.class); + out.print("<"); + out.print(strategy.getFullJavaClassName(table, Mode.RECORD)); + out.println(">> getKeys() {"); + + out.print("\t\treturn "); + out.print(Arrays.class); + out.print(".<"); + out.print(UniqueKey.class); + out.print("<"); + out.print(strategy.getFullJavaClassName(table, Mode.RECORD)); + out.print(">>asList("); + + String separator = ""; + for (UniqueKeyDefinition uniqueKey : uniqueKeys) { + out.print(separator); + out.print(strategy.getJavaPackageName(schema)); + out.print(".Keys."); + out.print(strategy.getJavaIdentifier(uniqueKey)); + + separator = ", "; + } + + out.println(");"); + out.println("\t}"); + } + + // Foreign keys + List foreignKeys = table.getForeignKeys(); + if (foreignKeys.size() > 0) { + out.println(); + out.println("\t@Override"); + out.println("\t@SuppressWarnings(\"unchecked\")"); + + out.print("\tpublic "); + out.print(List.class); + out.print("<"); + out.print(ForeignKey.class); + out.print("<"); + out.print(strategy.getFullJavaClassName(table, Mode.RECORD)); + out.println(", ?>> getReferences() {"); + + out.print("\t\treturn "); + out.print(Arrays.class); + out.print(".<"); + out.print(ForeignKey.class); + out.print("<"); + out.print(strategy.getFullJavaClassName(table, Mode.RECORD)); + out.print(", ?>>asList("); + + String separator = ""; + for (ForeignKeyDefinition foreignKey : foreignKeys) { + TableDefinition referencedTable = foreignKey.getReferencedTable(); + + // Skip master data foreign keys + if (referencedTable instanceof MasterDataTableDefinition) { + continue; + } + + out.print(separator); + out.print(strategy.getJavaPackageName(schema)); + out.print(".Keys."); + out.print(strategy.getJavaIdentifier(foreignKey)); + + separator = ", "; + } + + out.println(");"); + out.println("\t}"); + } + } + + // [#117] With instance fields, it makes sense to create a + // type-safe table alias + if (generateInstanceFields()) { + out.println(); + out.println("\t@Override"); + out.print("\tpublic "); + out.print(strategy.getFullJavaClassName(table)); + out.print(" as("); + out.print(String.class); + out.println(" alias) {"); + + out.print("\t\treturn new "); + out.print(strategy.getFullJavaClassName(table)); + out.println("(alias);"); + out.println("\t}"); + } + + out.printStaticInitialisationStatementsPlaceholder(); + out.println("}"); + out.close(); + } + catch (Exception e) { + log.error("Error while generating table " + table, e); + } + } + + registerInSchema(outS, database.getTables(schema), Table.class, true); + watch.splitInfo("Tables generated"); + } + + // ---------------------------------------------------------------------- + // XXX Generating table POJOs (courtesy of Marcel Bichon) + // ---------------------------------------------------------------------- + if (generatePojos() && database.getTables(schema).size() > 0) { + log.info("Generating table POJOs"); + + for (TableDefinition table : database.getTables(schema)) { + try { + log.info("Generating table POJO", strategy.getFileName(table, Mode.POJO)); + + GenerationWriter out = new GenerationWriter(strategy.getFile(table, Mode.POJO)); + printHeader(out, table, Mode.POJO); + printClassJavadoc(out, table); + printTableJPAAnnotation(out, table); + + out.print("public class "); + out.print(strategy.getJavaClassName(table, Mode.POJO)); + printExtends(out, table, Mode.POJO); + printImplements(out, table, Mode.POJO); + out.print(" {"); + out.println(); + out.printSerial(); + + out.println(); + + int maxLength = 0; + for (ColumnDefinition column : table.getColumns()) { + maxLength = Math.max(maxLength, getJavaType(column.getType()).length()); + } + + for (ColumnDefinition column : table.getColumns()) { + out.print("\tprivate "); + out.print(StringUtils.rightPad(getJavaType(column.getType()), maxLength)); + out.print(" "); + out.print(convertToJavaIdentifier(strategy.getJavaMemberName(column, Mode.POJO))); + out.println(";"); + } + + for (ColumnDefinition column : table.getColumns()) { + + // Getter + out.println(); + printColumnJPAAnnotation(out, column); + out.print("\tpublic "); + out.print(getJavaType(column.getType())); + out.print(" "); + out.print(strategy.getJavaGetterName(column, Mode.POJO)); + out.println("() {"); + + out.print("\t\treturn this."); + out.print(convertToJavaIdentifier(strategy.getJavaMemberName(column, Mode.POJO))); + out.println(";"); + out.println("\t}"); + + // Setter + out.println(); + out.print("\tpublic void "); + out.print(strategy.getJavaSetterName(column, Mode.POJO)); + out.print("("); + out.print(getJavaType(column.getType())); + out.print(" "); + out.print(convertToJavaIdentifier(strategy.getJavaMemberName(column, Mode.POJO))); + out.println(") {"); + + out.print("\t\tthis."); + out.print(convertToJavaIdentifier(strategy.getJavaMemberName(column, Mode.POJO))); + out.print(" = "); + out.print(convertToJavaIdentifier(strategy.getJavaMemberName(column, Mode.POJO))); + out.println(";"); + out.println("\t}"); + } + + out.println("}"); + out.close(); + } + catch (Exception e) { + log.error("Error while generating table POJO " + table, e); + } + } + + watch.splitInfo("Table POJOs generated"); + } + + + // ---------------------------------------------------------------------- + // XXX Generating central static table access + // ---------------------------------------------------------------------- + if (database.getTables(schema).size() > 0) { + log.info("Generating table references"); + + GenerationWriter out = new GenerationWriter(new File(targetSchemaDir, "Tables.java")); + printHeader(out, schema); + printClassJavadoc(out, "Convenience access to all tables in " + schema.getOutputName()); + out.println("public final class Tables {"); + + for (TableDefinition table : database.getTables(schema)) { + out.println(); + out.println("\t/**"); + + if (!StringUtils.isBlank(table.getComment())) { + out.println("\t * " + table.getComment()); + } + else { + out.println("\t * The table " + table.getQualifiedOutputName()); + } + + out.println("\t */"); + + out.print("\tpublic static "); + out.print(strategy.getFullJavaClassName(table)); + out.print(" "); + out.print(strategy.getJavaIdentifier(table)); + out.print(" = "); + out.print(strategy.getFullJavaIdentifier(table)); + out.println(";"); + } + + printPrivateConstructor(out, "Tables"); + out.println("}"); + out.close(); + + watch.splitInfo("Table references generated"); + } + + // ---------------------------------------------------------------------- + // XXX Generating relations + // ---------------------------------------------------------------------- + if (generateRelations() && database.getTables(schema).size() > 0) { + log.info("Generating Keys"); + + GenerationWriter out = new GenerationWriter(new File(targetSchemaDir, "Keys.java")); + printHeader(out, schema); + printClassJavadoc(out, "A class modelling foreign key relationships between tables of the " + schema.getOutputName() + " schema"); + + out.suppressWarnings("unchecked"); + out.print("public class Keys extends "); + out.print(AbstractKeys.class); + out.println(" {"); + out.println(); + out.println("\t// IDENTITY definitions"); + + for (TableDefinition table : database.getTables(schema)) { + try { + ColumnDefinition identity = table.getIdentity(); + + if (identity != null) { + out.print("\tpublic static final "); + out.print(Identity.class); + out.print("<"); + out.print(strategy.getFullJavaClassName(identity.getContainer(), Mode.RECORD)); + out.print(", "); + out.print(getJavaType(identity.getType())); + out.print("> IDENTITY_"); + out.print(strategy.getJavaIdentifier(identity.getContainer())); + out.print(" = createIdentity("); + out.print(strategy.getFullJavaIdentifier(identity.getContainer())); + out.print(", "); + out.print(strategy.getFullJavaIdentifier(identity)); + out.println(");"); + } + } + catch (Exception e) { + log.error("Error while generating table " + table, e); + } + } + + // Unique keys + out.println(); + out.println("\t// UNIQUE and PRIMARY KEY definitions"); + + for (TableDefinition table : database.getTables(schema)) { + try { + List uniqueKeys = table.getUniqueKeys(); + + if (uniqueKeys.size() > 0) { + for (UniqueKeyDefinition uniqueKey : uniqueKeys) { + out.print("\tpublic static final "); + out.print(UniqueKey.class); + out.print("<"); + out.print(strategy.getFullJavaClassName(uniqueKey.getTable(), Mode.RECORD)); + out.print("> "); + out.print(strategy.getJavaIdentifier(uniqueKey)); + out.print(" = createUniqueKey("); + out.print(strategy.getFullJavaIdentifier(uniqueKey.getTable())); + out.print(", "); + + String separator = ""; + for (ColumnDefinition column : uniqueKey.getKeyColumns()) { + out.print(separator); + out.print(strategy.getFullJavaIdentifier(column)); + separator = ", "; + } + + out.println(");"); + } + } + } + catch (Exception e) { + log.error("Error while generating table " + table, e); + } + } + + // Foreign keys + out.println(); + out.println("\t// FOREIGN KEY definitions"); + + for (TableDefinition table : database.getTables(schema)) { + try { + List foreignKeys = table.getForeignKeys(); + + if (foreignKeys.size() > 0) { + for (ForeignKeyDefinition foreignKey : foreignKeys) { + + // Skip master data foreign keys + if (foreignKey.getReferencedTable() instanceof MasterDataTableDefinition) { + continue; + } + + out.print("\tpublic static final "); + out.print(ForeignKey.class); + out.print("<"); + out.print(strategy.getFullJavaClassName(foreignKey.getKeyTable(), Mode.RECORD)); + out.print(", "); + out.print(strategy.getFullJavaClassName(foreignKey.getReferencedTable(), Mode.RECORD)); + out.print("> "); + out.print(strategy.getJavaIdentifier(foreignKey)); + out.print(" = createForeignKey("); + + // Beware of cross-schema referencing foreign keys + if (!foreignKey.getSchema().equals(foreignKey.getReferencedKey().getSchema())) { + out.print(strategy.getJavaPackageName(foreignKey.getReferencedKey().getSchema())); + out.print(".Keys."); + } + + out.print(strategy.getJavaIdentifier(foreignKey.getReferencedKey())); + out.print(", "); + out.print(strategy.getFullJavaIdentifier(foreignKey.getKeyTable())); + out.print(", "); + + String separator = ""; + for (ColumnDefinition column : foreignKey.getKeyColumns()) { + out.print(separator); + out.print(strategy.getFullJavaIdentifier(column)); + separator = ", "; + } + + out.println(");"); + } + } + } + catch (Exception e) { + log.error("Error while generating reference " + table, e); + } + } + + printPrivateConstructor(out, "Keys"); + out.println("}"); + out.close(); + + watch.splitInfo("Keys generated"); + } + + // ---------------------------------------------------------------------- + // XXX Generating table records + // ---------------------------------------------------------------------- + if (generateRecords() && database.getTables(schema).size() > 0) { + log.info("Generating records"); + + for (TableDefinition table : database.getTables(schema)) { + try { + log.info("Generating record", strategy.getFileName(table, Mode.RECORD)); + + GenerationWriter out = new GenerationWriter(strategy.getFile(table, Mode.RECORD)); + printHeader(out, table, Mode.RECORD); + printClassJavadoc(out, table); + printTableJPAAnnotation(out, table); + + Class baseClass; + + if (generateRelations() && table.getMainUniqueKey() != null) { + baseClass = UpdatableRecordImpl.class; + } else { + baseClass = TableRecordImpl.class; + } + + out.print("public class "); + out.print(strategy.getJavaClassName(table, Mode.RECORD)); + out.print(" extends "); + out.print(baseClass); + out.print("<"); + out.print(strategy.getFullJavaClassName(table, Mode.RECORD)); + out.print(">"); + printImplements(out, table, Mode.RECORD); + out.println(" {"); + out.printSerial(); + + for (ColumnDefinition column : table.getColumns()) { + printGetterAndSetter(out, column); + } + + out.println(); + out.println("\t/**"); + out.println("\t * Create a detached " + strategy.getJavaClassName(table, Mode.RECORD)); + out.println("\t */"); + out.println("\tpublic " + strategy.getJavaClassName(table, Mode.RECORD) + "() {"); + out.print("\t\tsuper("); + out.print(strategy.getFullJavaIdentifier(table)); + out.println(");"); + out.println("\t}"); + out.println("}"); + out.close(); + } catch (Exception e) { + log.error("Error while generating table record " + table, e); + } + } + + watch.splitInfo("Table records generated"); + } + + // ---------------------------------------------------------------------- + // XXX Generating UDTs + // ---------------------------------------------------------------------- + if (database.getUDTs(schema).size() > 0) { + log.info("Generating UDTs"); + + for (UDTDefinition udt : database.getUDTs(schema)) { + try { + log.info("Generating UDT ", strategy.getFileName(udt)); + + GenerationWriter out = new GenerationWriter(strategy.getFile(udt)); + printHeader(out, udt); + printClassJavadoc(out, udt); + + out.print("public class "); + out.print(strategy.getJavaClassName(udt)); + out.print(" extends "); + out.print(UDTImpl.class); + out.print("<"); + out.print(strategy.getFullJavaClassName(udt, Mode.RECORD)); + out.print(">"); + + // [#799] Oracle UDTs with member procedures have similarities + // with packages + if (udt.getRoutines().size() > 0) { + printImplements(out, udt, Mode.DEFAULT, org.jooq.Package.class.getName()); + } + else { + printImplements(out, udt, Mode.DEFAULT); + } + + out.println(" {"); + out.printSerial(); + + printSingletonInstance(udt, out); + printRecordTypeMethod(udt, out); + + for (AttributeDefinition attribute : udt.getAttributes()) { + printUDTColumn(out, attribute, udt); + } + + // [#799] Oracle UDT's can have member procedures + for (RoutineDefinition routine : udt.getRoutines()) { + try { + if (!routine.isSQLUsable()) { + + // Static execute() convenience method + printConvenienceMethodProcedure(out, routine, false); + } + else { + + // Static execute() convenience method + printConvenienceMethodFunction(out, routine, false); + + // Static asField() convenience method + printConvenienceMethodFunctionAsField(out, routine, false); + printConvenienceMethodFunctionAsField(out, routine, true); + } + + } catch (Exception e) { + log.error("Error while generating routine " + routine, e); + } + } + + out.println(); + printNoFurtherInstancesAllowedJavadoc(out); + out.println("\tprivate " + strategy.getJavaClassName(udt) + "() {"); + + if (!schema.isDefaultSchema()) { + out.println("\t\tsuper(\"" + udt.getOutputName() + "\", " + strategy.getFullJavaIdentifier(schema) + ");"); + } else { + out.println("\t\tsuper(\"" + udt.getOutputName() + "\");"); + } + + out.println("\t}"); + + out.println("}"); + out.close(); + + if (outS != null) { + outS.printInitialisationStatement( + "addMapping(\"" + udt.getQualifiedOutputName() + "\", " + + strategy.getFullJavaClassName(udt, Mode.RECORD) + ".class);"); + } + } catch (Exception e) { + log.error("Error while generating udt " + udt, e); + } + } + + registerInSchema(outS, database.getUDTs(schema), UDT.class, true); + watch.splitInfo("UDTs generated"); + } + + // ---------------------------------------------------------------------- + // XXX Generating UDT record classes + // ---------------------------------------------------------------------- + if (database.getUDTs(schema).size() > 0) { + log.info("Generating UDT records"); + + for (UDTDefinition udt : database.getUDTs(schema)) { + try { + log.info("Generating UDT record", strategy.getFileName(udt, Mode.RECORD)); + + GenerationWriter out = new GenerationWriter(strategy.getFile(udt, Mode.RECORD)); + printHeader(out, udt, Mode.RECORD); + printClassJavadoc(out, udt); + + out.print("public class "); + out.print(strategy.getJavaClassName(udt, Mode.RECORD)); + out.print(" extends "); + out.print(UDTRecordImpl.class); + out.print("<"); + out.print(strategy.getFullJavaClassName(udt, Mode.RECORD)); + out.print(">"); + printImplements(out, udt, Mode.RECORD); + out.println(" {"); + + out.printSerial(); + out.println(); + + for (AttributeDefinition attribute : udt.getAttributes()) { + printGetterAndSetter(out, attribute); + } + + // [#799] Oracle UDT's can have member procedures + for (RoutineDefinition routine : udt.getRoutines()) { + try { + if (!routine.isSQLUsable()) { + // Instance execute() convenience method + printConvenienceMethodProcedure(out, routine, true); + } + else { + // Instance execute() convenience method + printConvenienceMethodFunction(out, routine, true); + } + + } catch (Exception e) { + log.error("Error while generating routine " + routine, e); + } + } + + out.println(); + out.println("\tpublic " + strategy.getJavaClassName(udt, Mode.RECORD) + "() {"); + + out.print("\t\tsuper("); + out.print(strategy.getFullJavaIdentifier(udt)); + out.println(");"); + + out.println("\t}"); + out.println("}"); + out.close(); + } catch (Exception e) { + log.error("Error while generating UDT record " + udt, e); + } + } + + watch.splitInfo("UDT records generated"); + } + + // ---------------------------------------------------------------------- + // XXX Generating UDT member procedures + // ---------------------------------------------------------------------- + if (database.getUDTs(schema).size() > 0) { + for (UDTDefinition udt : database.getUDTs(schema)) { + if (udt.getRoutines().size() > 0) { + try { + log.info("Generating member routines"); + + for (RoutineDefinition routine : udt.getRoutines()) { + try { + printRoutine(database, schema, routine); + } catch (Exception e) { + log.error("Error while generating member routines " + routine, e); + } + } + } catch (Exception e) { + log.error("Error while generating UDT " + udt, e); + } + + watch.splitInfo("Member procedures routines"); + } + } + } + + // ---------------------------------------------------------------------- + // XXX Generating central static udt access + // ---------------------------------------------------------------------- + if (database.getUDTs(schema).size() > 0) { + log.info("Generating UDT references"); + + GenerationWriter out = new GenerationWriter(new File(targetSchemaDir, "UDTs.java")); + printHeader(out, schema); + printClassJavadoc(out, "Convenience access to all UDTs in " + schema.getOutputName()); + out.println("public final class UDTs {"); + + for (UDTDefinition udt : database.getUDTs(schema)) { + out.println(); + out.println("\t/**"); + out.println("\t * The type " + udt.getQualifiedOutputName()); + out.println("\t */"); + + out.print("\tpublic static "); + out.print(strategy.getFullJavaClassName(udt)); + out.print(" "); + out.print(strategy.getJavaIdentifier(udt)); + out.print(" = "); + out.print(strategy.getFullJavaIdentifier(udt)); + out.println(";"); + } + + printPrivateConstructor(out, "UDTs"); + out.println("}"); + out.close(); + + watch.splitInfo("UDT references generated"); + } + + // ---------------------------------------------------------------------- + // XXX Generating ARRAY record classes + // ---------------------------------------------------------------------- + if (database.getArrays(schema).size() > 0) { + log.info("Generating ARRAYs"); + + for (ArrayDefinition array : database.getArrays(schema)) { + try { + log.info("Generating ARRAY", strategy.getFileName(array, Mode.RECORD)); + + GenerationWriter out = new GenerationWriter(strategy.getFile(array, Mode.RECORD)); + printHeader(out, array, Mode.RECORD); + printClassJavadoc(out, array); + + out.print("public class "); + out.print(strategy.getJavaClassName(array, Mode.RECORD)); + out.print(" extends "); + out.print(ArrayRecordImpl.class); + out.print("<"); + out.print(getJavaType(array.getElementType())); + out.print(">"); + printImplements(out, array, Mode.RECORD); + out.println(" {"); + out.printSerial(); + + out.println(); + out.print("\tpublic "); + out.print(strategy.getJavaClassName(array, Mode.RECORD)); + out.print("("); + out.print(Configuration.class); + out.println(" configuration) {"); + out.print("\t\tsuper("); + out.print(strategy.getFullJavaIdentifier(schema)); + out.print(", \""); + out.print(array.getOutputName()); + out.print("\", "); + out.print(getJavaTypeReference(database, array.getElementType())); + out.println(", configuration);"); + out.println("\t}"); + + out.println(); + out.print("\tpublic "); + out.print(strategy.getJavaClassName(array, Mode.RECORD)); + out.print("("); + out.print(Configuration.class); + out.print(" configuration, "); + out.print(getJavaType(array.getElementType())); + out.print("... array"); + out.println(") {"); + out.println("\t\tthis(configuration);"); + out.println("\t\tset(array);"); + out.println("\t}"); + + out.println(); + out.print("\tpublic "); + out.print(strategy.getJavaClassName(array, Mode.RECORD)); + out.print("("); + out.print(Configuration.class); + out.print(" configuration, "); + out.print(List.class); + out.print(" list"); + out.println(") {"); + out.println("\t\tthis(configuration);"); + out.println("\t\tsetList(list);"); + out.println("\t}"); + + out.println("}"); + out.close(); + } catch (Exception e) { + log.error("Error while generating ARRAY record " + array, e); + } + } + + watch.splitInfo("ARRAYs generated"); + } + + // ---------------------------------------------------------------------- + // XXX Generating enums + // ---------------------------------------------------------------------- + if (database.getEnums(schema).size() > 0) { + log.info("Generating ENUMs"); + + for (EnumDefinition e : database.getEnums(schema)) { + try { + log.info("Generating ENUM", strategy.getFileName(e, Mode.ENUM)); + + GenerationWriter out = new GenerationWriter(strategy.getFile(e, Mode.ENUM)); + printHeader(out, e); + printClassJavadoc(out, e); + + out.print("public enum "); + out.print(strategy.getJavaClassName(e, Mode.ENUM)); + printImplements(out, e, Mode.ENUM, EnumType.class.getName()); + out.print(" {"); + out.println(); + + for (String literal : e.getLiterals()) { + out.println("\t" + GenerationUtil.convertToJavaIdentifier(literal) + "(\"" + literal + "\"),"); + out.println(); + } + + out.println("\t;"); + out.println(); + out.println("\tprivate final java.lang.String literal;"); + out.println(); + out.println("\tprivate " + strategy.getJavaClassName(e, Mode.ENUM) + "(java.lang.String literal) {"); + out.println("\t\tthis.literal = literal;"); + out.println("\t}"); + out.println(); + out.println("\t@Override"); + out.println("\tpublic java.lang.String getName() {"); + + if (e.isSynthetic()) { + out.println("\t\treturn null;"); + } + else { + out.println("\t\treturn \"" + e.getName() + "\";"); + } + + out.println("\t}"); + out.println(); + out.println("\t@Override"); + out.println("\tpublic java.lang.String getLiteral() {"); + out.println("\t\treturn literal;"); + out.println("\t}"); + + out.println("}"); + + out.close(); + } catch (Exception ex) { + log.error("Error while generating enum " + e, ex); + } + } + + watch.splitInfo("Enums generated"); + } + + // ---------------------------------------------------------------------- + // XXX Generating routines + // ---------------------------------------------------------------------- + if (database.getRoutines(schema).size() > 0) { + log.info("Generating routines"); + + GenerationWriter outR = new GenerationWriter(new File(targetSchemaDir, "Routines.java")); + printHeader(outR, schema); + printClassJavadoc(outR, "Convenience access to all stored procedures and functions in " + schema.getOutputName()); + + outR.println("public final class Routines {"); + for (RoutineDefinition routine : database.getRoutines(schema)) { + try { + printRoutine(database, schema, routine); + + if (!routine.isSQLUsable()) { + + // Static execute() convenience method + printConvenienceMethodProcedure(outR, routine, false); + } + else { + + // Static execute() convenience method + printConvenienceMethodFunction(outR, routine, false); + + // Static asField() convenience method + printConvenienceMethodFunctionAsField(outR, routine, false); + printConvenienceMethodFunctionAsField(outR, routine, true); + } + } catch (Exception e) { + log.error("Error while generating routine " + routine, e); + } + } + + printPrivateConstructor(outR, "Routines"); + outR.println("}"); + outR.close(); + + watch.splitInfo("Routines generated"); + } + + // ---------------------------------------------------------------------- + // XXX Generating packages + // ---------------------------------------------------------------------- + if (database.getPackages(schema).size() > 0) { + log.info("Generating packages"); + + for (PackageDefinition pkg : database.getPackages(schema)) { + try { + log.info("Generating package", pkg); + + for (RoutineDefinition routine : pkg.getRoutines()) { + try { + printRoutine(database, schema, routine); + } catch (Exception e) { + log.error("Error while generating routine " + routine, e); + } + } + + // Static convenience methods + GenerationWriter outPkg = new GenerationWriter(strategy.getFile(pkg)); + printHeader(outPkg, pkg); + printClassJavadoc(outPkg, "Convenience access to all stored procedures and functions in " + pkg.getName()); + outPkg.print("public final class "); + outPkg.print(strategy.getJavaClassName(pkg)); + outPkg.print(" extends "); + outPkg.print(PackageImpl.class); + printImplements(outPkg, pkg, Mode.DEFAULT); + outPkg.println(" {"); + outPkg.printSerial(); + printSingletonInstance(pkg, outPkg); + + for (RoutineDefinition routine : pkg.getRoutines()) { + try { + if (!routine.isSQLUsable()) { + // Static execute() convenience method + printConvenienceMethodProcedure(outPkg, routine, false); + } + else { + // Static execute() convenience method + printConvenienceMethodFunction(outPkg, routine, false); + + // Static asField() convenience method + printConvenienceMethodFunctionAsField(outPkg, routine, false); + printConvenienceMethodFunctionAsField(outPkg, routine, true); + } + + } catch (Exception e) { + log.error("Error while generating routine " + routine, e); + } + } + + printNoFurtherInstancesAllowedJavadoc(outPkg); + outPkg.println("\tprivate " + strategy.getJavaClassName(pkg) + "() {"); + outPkg.print("\t\tsuper(\""); + outPkg.print(pkg.getOutputName()); + outPkg.print("\", "); + outPkg.print(strategy.getFullJavaIdentifier(schema)); + outPkg.println(");"); + outPkg.println("\t}"); + outPkg.println("}"); + + outPkg.close(); + } catch (Exception e) { + log.error("Error while generating package " + pkg, e); + } + } + + watch.splitInfo("Packages generated"); + } + + // Finalise schema + if (outS != null) { + outS.println("}"); + outS.close(); + } + + // Finalise factory + if (outF != null) { + outF.println("}"); + outF.close(); + } + + // XXX [#651] Refactoring-cursor + watch.splitInfo("GENERATION FINISHED!"); + } + + private void printExtends(GenerationWriter out, Definition definition, Mode mode) { + String superclass = strategy.getJavaClassExtends(definition, mode); + + if (!StringUtils.isBlank(superclass)) { + out.print(" extends "); + out.print(superclass); + } + } + + private void printImplements(GenerationWriter out, Definition definition, Mode mode, String... forcedInterfaces) { + List interfaces = strategy.getJavaClassImplements(definition, mode); + + interfaces = new ArrayList(interfaces == null ? Collections.emptyList() : interfaces); + interfaces.addAll(Arrays.asList(forcedInterfaces)); + + if (!interfaces.isEmpty()) { + String glue = " implements "; + + // Avoid duplicates + for (String i : new LinkedHashSet(interfaces)) { + if (!StringUtils.isBlank(i)) { + out.print(glue); + out.print(i); + + glue = ", "; + } + } + } + } + + private void printTableJPAAnnotation(GenerationWriter out, TableDefinition table) { + SchemaDefinition schema = table.getSchema(); + + if (generateJPAAnnotations()) { + out.println("@javax.persistence.Entity"); + out.print("@javax.persistence.Table(name = \""); + out.print(table.getName().replace("\"", "\\\"")); + out.print("\""); + + if (!schema.isDefaultSchema()) { + out.print(", schema = \""); + out.print(schema.getOutputName().replace("\"", "\\\"")); + out.print("\""); + } + + StringBuilder sb = new StringBuilder(); + String glue1 = ""; + + for (UniqueKeyDefinition uk : table.getUniqueKeys()) { + + // Single-column keys are annotated on the column itself + if (uk.getKeyColumns().size() > 1) { + sb.append(glue1); + sb.append("\t@javax.persistence.UniqueConstraint(columnNames = {"); + + String glue2 = ""; + for (ColumnDefinition column : uk.getKeyColumns()) { + sb.append(glue2); + sb.append("\""); + sb.append(column.getName().replace("\"", "\\\"")); + sb.append("\""); + + glue2 = ", "; + } + + sb.append("})"); + + glue1 = ",\n"; + } + } + + if (sb.length() > 0) { + out.println(", uniqueConstraints = {"); + out.println(sb); + out.print("}"); + } + + out.println(")"); + } + } + + private void printColumnJPAAnnotation(GenerationWriter out, ColumnDefinition column) { + if (generateJPAAnnotations()) { + UniqueKeyDefinition pk = column.getPrimaryKey(); + List uks = column.getUniqueKeys(); + + if (pk != null) { + if (pk.getKeyColumns().size() == 1) { + out.println("\t@javax.persistence.Id"); + } + } + + String unique = ""; + for (UniqueKeyDefinition uk : uks) { + if (uk.getKeyColumns().size() == 1) { + unique = ", unique = true"; + break; + } + } + + String nullable = ""; + if (!column.isNullable()) { + nullable = ", nullable = false"; + } + + String length = ""; + String precision = ""; + String scale = ""; + + if (column.getType().getLength() > 0) { + length = ", length = " + column.getType().getLength(); + } + else if (column.getType().getPrecision() > 0) { + precision = ", precision = " + column.getType().getPrecision(); + + if (column.getType().getScale() > 0) { + scale = ", scale = " + column.getType().getScale(); + } + } + + out.print("\t@javax.persistence.Column(name = \""); + out.print(column.getName().replace("\"", "\\\"")); + out.print("\""); + out.print(unique); + out.print(nullable); + out.print(length); + out.print(precision); + out.print(scale); + out.println(")"); + } + } + + private void registerInSchema(GenerationWriter outS, List definitions, Class type, boolean isGeneric) { + if (outS != null) { + outS.println(); + printOverride(outS); + outS.print("\tpublic final "); + outS.print(List.class); + outS.print("<"); + outS.print(type); + + if (isGeneric) { + outS.print(""); + } + + outS.print("> get"); + outS.print(type.getSimpleName()); + outS.println("s() {"); + + outS.print("\t\treturn "); + outS.print(Arrays.class); + outS.print(".<"); + outS.print(type); + + if (isGeneric) { + outS.print(""); + } + + outS.print(">asList("); + + if (definitions.size() > 1) { + outS.print("\n\t\t\t"); + } + + for (int i = 0; i < definitions.size(); i++) { + Definition def = definitions.get(i); + + if (i > 0) { + outS.print(",\n\t\t\t"); + } + + printSingletonReference(outS, def); + } + + outS.println(");"); + outS.println("\t}"); + } + } + + private void printRoutine(Database database, SchemaDefinition schema, RoutineDefinition routine) + throws FileNotFoundException, SQLException { + log.info("Generating routine", strategy.getFileName(routine)); + + GenerationWriter out = new GenerationWriter(strategy.getFile(routine)); + printHeader(out, routine); + printClassJavadoc(out, routine); + + out.print("public class "); + out.print(strategy.getJavaClassName(routine)); + out.print(" extends "); + out.print(AbstractRoutine.class); + out.print("<"); + + if (routine.getReturnValue() == null) { + out.print(Void.class); + } + else { + out.print(getJavaType(routine.getReturnType())); + } + + out.print(">"); + printImplements(out, routine, Mode.DEFAULT); + out.println(" {"); + out.printSerial(); + out.println(); + + for (ParameterDefinition parameter : routine.getAllParameters()) { + printParameter(out, parameter, routine); + } + + out.println(); + printJavadoc(out, "Create a new routine call instance"); + out.println("\tpublic " + strategy.getJavaClassName(routine) + "() {"); + out.print("\t\tsuper("); + out.print("\""); + out.print(routine.getName()); + out.print("\", "); + out.print(strategy.getFullJavaIdentifier(schema)); + + if (routine.getPackage() != null) { + out.print(", "); + out.print(strategy.getFullJavaIdentifier(routine.getPackage())); + } + + if (routine.getReturnValue() != null) { + out.print(", "); + out.print(getJavaTypeReference(database, routine.getReturnType())); + } + + out.println(");"); + + if (routine.getAllParameters().size() > 0) { + out.println(); + } + + for (ParameterDefinition parameter : routine.getAllParameters()) { + out.print("\t\t"); + + if (parameter.equals(routine.getReturnValue())) { + out.println("setReturnParameter(" + strategy.getJavaIdentifier(parameter) + ");"); + } + else if (routine.getInParameters().contains(parameter)) { + if (routine.getOutParameters().contains(parameter)) { + out.println("addInOutParameter(" + strategy.getJavaIdentifier(parameter) + ");"); + } + else { + out.println("addInParameter(" + strategy.getJavaIdentifier(parameter) + ");"); + } + } + else { + out.println("addOutParameter(" + strategy.getJavaIdentifier(parameter) + ");"); + } + } + + if (routine.getOverload() != null) { + out.println("\t\tsetOverloaded(true);"); + } + + out.println("\t}"); + + for (ParameterDefinition parameter : routine.getInParameters()) { + out.println(); + out.println("\t/**"); + out.println("\t * Set the " + parameter.getOutputName() + " parameter to the routine"); + out.println("\t */"); + out.print("\tpublic void "); + out.print(strategy.getJavaSetterName(parameter, Mode.DEFAULT)); + out.print("("); + printNumberType(out, parameter.getType()); + out.println(" value) {"); + + out.print("\t\tset"); + if (parameter.getType().isGenericNumberType()) { + out.print("Number"); + } + else { + out.print("Value"); + } + out.print("("); + out.print(strategy.getJavaIdentifier(parameter)); + out.println(", value);"); + out.println("\t}"); + + if (routine.isSQLUsable()) { + out.println(); + out.println("\t/**"); + out.println("\t * Set the " + parameter.getOutputName() + " parameter to the function"); + out.println("\t *

"); + out.print("\t * Use this method only, if the function is called as a {@link "); + out.print(Field.class); + out.print("} in a {@link "); + out.print(Select.class); + out.println("} statement!"); + out.println("\t */"); + out.print("\tpublic void "); + out.print(strategy.getJavaSetterName(parameter, Mode.DEFAULT)); + out.print("("); + out.print(Field.class); + out.print("<"); + printExtendsNumberType(out, parameter.getType()); + out.println("> field) {"); + + out.print("\t\tset"); + if (parameter.getType().isGenericNumberType()) { + out.print("Number"); + } + else { + out.print("Field"); + } + out.print("("); + out.print(strategy.getJavaIdentifier(parameter)); + out.println(", field);"); + out.println("\t}"); + } + } + + for (ParameterDefinition parameter : routine.getAllParameters()) { + boolean isReturnValue = parameter.equals(routine.getReturnValue()); + boolean isOutParameter = routine.getOutParameters().contains(parameter); + + if (isOutParameter && !isReturnValue) { + out.println(); + out.print("\tpublic "); + out.print(getJavaType(parameter.getType())); + out.print(" "); + out.print(strategy.getJavaGetterName(parameter, Mode.DEFAULT)); + out.println("() {"); + + out.print("\t\treturn getValue("); + out.print(strategy.getJavaIdentifier(parameter)); + out.println(");"); + out.println("\t}"); + } + } + + out.println("}"); + out.close(); + } + + private void printConvenienceMethodFunctionAsField(GenerationWriter out, RoutineDefinition function, boolean parametersAsField) throws SQLException { + // [#281] - Java can't handle more than 255 method parameters + if (function.getInParameters().size() > 254) { + log.warn("Too many parameters", "Function " + function + " has more than 254 in parameters. Skipping generation of convenience method."); + return; + } + + // Do not generate separate convenience methods, if there are no IN + // parameters. They would have the same signature and no additional + // meaning + if (parametersAsField && function.getInParameters().isEmpty()) { + return; + } + + out.println(); + out.println("\t/**"); + out.println("\t * Get " + function.getQualifiedOutputName() + " as a field"); + out.println("\t *"); + + for (ParameterDefinition parameter : function.getInParameters()) { + out.println("\t * @param " + strategy.getJavaMemberName(parameter)); + } + + out.println("\t */"); + out.print("\tpublic static "); + out.print(Field.class); + out.print("<"); + out.print(getJavaType(function.getReturnType())); + out.print("> "); + out.print(strategy.getJavaMethodName(function, Mode.DEFAULT)); + out.print("("); + + String separator = ""; + for (ParameterDefinition parameter : function.getInParameters()) { + out.print(separator); + + if (parametersAsField) { + out.print(Field.class); + out.print("<"); + printExtendsNumberType(out, parameter.getType()); + out.print(">"); + } else { + printNumberType(out, parameter.getType()); + } + + out.print(" "); + out.print(strategy.getJavaMemberName(parameter)); + + separator = ", "; + } + + out.println(") {"); + out.print("\t\t"); + out.print(strategy.getFullJavaClassName(function)); + out.print(" f = new "); + out.print(strategy.getFullJavaClassName(function)); + out.println("();"); + + for (ParameterDefinition parameter : function.getInParameters()) { + out.print("\t\tf."); + out.print(strategy.getJavaSetterName(parameter, Mode.DEFAULT)); + out.print("("); + out.print(strategy.getJavaMemberName(parameter)); + out.println(");"); + } + + out.println(); + out.println("\t\treturn f.asField();"); + out.println("\t}"); + } + + private void printConvenienceMethodFunction(GenerationWriter out, RoutineDefinition function, boolean instance) throws SQLException { + // [#281] - Java can't handle more than 255 method parameters + if (function.getInParameters().size() > 254) { + log.warn("Too many parameters", "Function " + function + " has more than 254 in parameters. Skipping generation of convenience method."); + return; + } + + out.println(); + out.println("\t/**"); + out.println("\t * Call " + function.getQualifiedOutputName()); + out.println("\t *"); + + for (ParameterDefinition parameter : function.getInParameters()) { + out.println("\t * @param " + strategy.getJavaMemberName(parameter)); + } + + printThrowsDataAccessException(out); + out.println("\t */"); + out.print("\tpublic "); + + if (!instance) { + out.print("static "); + } + + out.print(getJavaType(function.getReturnType())); + out.print(" "); + out.print(strategy.getJavaMethodName(function, Mode.DEFAULT)); + out.print("("); + + String glue = ""; + if (!instance) { + out.print(Configuration.class); + out.print(" configuration"); + glue = ", "; + } + + for (ParameterDefinition parameter : function.getInParameters()) { + // Skip SELF parameter + if (instance && parameter.equals(function.getInParameters().get(0))) { + continue; + } + + out.print(glue); + printNumberType(out, parameter.getType()); + out.print(" "); + out.print(strategy.getJavaMemberName(parameter)); + + glue = ", "; + } + + out.println(") {"); + out.print("\t\t"); + out.print(strategy.getFullJavaClassName(function)); + out.print(" f = new "); + out.print(strategy.getFullJavaClassName(function)); + out.println("();"); + + for (ParameterDefinition parameter : function.getInParameters()) { + out.print("\t\tf."); + out.print(strategy.getJavaSetterName(parameter, Mode.DEFAULT)); + out.print("("); + + if (instance && parameter.equals(function.getInParameters().get(0))) { + out.print("this"); + } + else { + out.print(strategy.getJavaMemberName(parameter)); + } + + out.println(");"); + } + + out.println(); + out.print("\t\tf.execute("); + + if (instance) { + out.print("getConfiguration()"); + } + else { + out.print("configuration"); + } + + out.println(");"); + + // TODO [#956] Find a way to register "SELF" as OUT parameter + // in case this is a UDT instance (member) function + + out.println("\t\treturn f.getReturnValue();"); + out.println("\t}"); + } + + private void printThrowsDataAccessException(GenerationWriter out) { + out.print("\t * @throws "); + out.print(DataAccessException.class); + out.print(" if something went wrong executing the query"); + out.println(); + } + + private void printPrivateConstructor(GenerationWriter out, String javaClassName) { + out.println(); + out.println("\t/**"); + out.println("\t * No instances"); + out.println("\t */"); + out.println("\tprivate " + javaClassName + "() {}"); + } + + private void printConvenienceMethodProcedure(GenerationWriter out, RoutineDefinition procedure, boolean instance) throws SQLException { + // [#281] - Java can't handle more than 255 method parameters + if (procedure.getInParameters().size() > 254) { + log.warn("Too many parameters", "Procedure " + procedure + " has more than 254 in parameters. Skipping generation of convenience method."); + return; + } + + out.println(); + out.println("\t/**"); + out.println("\t * Call " + procedure.getQualifiedOutputName()); + out.println("\t *"); + + for (ParameterDefinition parameter : procedure.getAllParameters()) { + out.print("\t * @param " + strategy.getJavaMemberName(parameter) + " "); + + if (procedure.getInParameters().contains(parameter)) { + if (procedure.getOutParameters().contains(parameter)) { + out.println("IN OUT parameter"); + } else { + out.println("IN parameter"); + } + } else { + out.println("OUT parameter"); + } + } + + printThrowsDataAccessException(out); + out.println("\t */"); + out.print("\tpublic "); + + if (!instance) { + out.print("static "); + } + + if (procedure.getOutParameters().size() == 0) { + out.print("void "); + } + else if (procedure.getOutParameters().size() == 1) { + out.print(getJavaType(procedure.getOutParameters().get(0).getType())); + out.print(" "); + } + else { + out.print(strategy.getFullJavaClassName(procedure) + " "); + } + + out.print(strategy.getJavaMethodName(procedure, Mode.DEFAULT)); + out.print("("); + + String glue = ""; + if (!instance) { + out.print(Configuration.class); + out.print(" configuration"); + glue = ", "; + } + + for (ParameterDefinition parameter : procedure.getInParameters()) { + // Skip SELF parameter + if (instance && parameter.equals(procedure.getInParameters().get(0))) { + continue; + } + + out.print(glue); + printNumberType(out, parameter.getType()); + out.print(" "); + out.print(strategy.getJavaMemberName(parameter)); + + glue = ", "; + } + + out.println(") {"); + out.print("\t\t"); + out.print(strategy.getFullJavaClassName(procedure)); + out.print(" p = new "); + out.print(strategy.getFullJavaClassName(procedure)); + out.println("();"); + + for (ParameterDefinition parameter : procedure.getInParameters()) { + out.print("\t\tp."); + out.print(strategy.getJavaSetterName(parameter, Mode.DEFAULT)); + out.print("("); + + if (instance && parameter.equals(procedure.getInParameters().get(0))) { + out.print("this"); + } + else { + out.print(strategy.getJavaMemberName(parameter)); + } + + out.println(");"); + } + + out.println(); + out.print("\t\tp.execute("); + + if (instance) { + out.print("getConfiguration()"); + } + else { + out.print("configuration"); + } + + out.println(");"); + + if (procedure.getOutParameters().size() > 0) { + if (instance) { + out.print("\t\tfrom(p."); + out.print(strategy.getJavaGetterName(procedure.getOutParameters().get(0), Mode.DEFAULT)); + out.println("());"); + } + + if (procedure.getOutParameters().size() == 1) { + out.print("\t\treturn p."); + out.print(strategy.getJavaGetterName(procedure.getOutParameters().get(0), Mode.DEFAULT)); + out.println("();"); + } + else if (procedure.getOutParameters().size() > 1) { + out.println("\t\treturn p;"); + } + } + + out.println("\t}"); + } + + private void printRecordTypeMethod(Definition definition, GenerationWriter out) { + out.println(); + out.println("\t/**"); + out.println("\t * The class holding records for this type"); + out.println("\t */"); + out.print("\tprivate static final "); + out.print(Class.class); + out.print("<"); + out.print(strategy.getFullJavaClassName(definition, Mode.RECORD)); + out.print("> __RECORD_TYPE = "); + out.print(strategy.getFullJavaClassName(definition, Mode.RECORD)); + out.println(".class;"); + + out.println(); + out.println("\t/**"); + out.println("\t * The class holding records for this type"); + out.println("\t */"); + printOverride(out); + out.print("\tpublic "); + out.print(Class.class); + out.print("<"); + out.print(strategy.getFullJavaClassName(definition, Mode.RECORD)); + out.println("> getRecordType() {"); + out.println("\t\treturn __RECORD_TYPE;"); + out.println("\t}"); + } + + private void printSingletonInstance(Definition definition, GenerationWriter out) { + out.println(); + out.println("\t/**"); + out.println("\t * The singleton instance of " + definition.getQualifiedOutputName()); + out.println("\t */"); + out.print("\tpublic static final "); + out.print(strategy.getFullJavaClassName(definition)); + out.print(" "); + out.print(strategy.getJavaIdentifier(definition)); + out.print(" = new "); + out.print(strategy.getFullJavaClassName(definition)); + out.println("();"); + } + + private void printSingletonReference(GenerationWriter out, Definition definition) { + if (definition instanceof SequenceDefinition) { + out.print(strategy.getJavaPackageName(definition.getSchema())); + out.print("."); + out.print("Sequences"); + out.print("."); + out.print(strategy.getJavaIdentifier(definition)); + } + else { + out.print(strategy.getFullJavaIdentifier(definition)); + } + } + + private void printOverride(GenerationWriter out) { + out.println("\t@Override"); + } + + /** + * If file is a directory, recursively empty its children. + * If file is a file, delete it + */ + private void empty(File file) { + if (file != null) { + if (file.isDirectory()) { + File[] children = file.listFiles(); + + if (children != null) { + for (File child : children) { + empty(child); + } + } + } else { + if (file.getName().endsWith(".java")) { + file.delete(); + } + } + } + } + + private void printGetterAndSetter(GenerationWriter out, TypedElementDefinition element) throws SQLException { + printFieldJavaDoc(out, element); + out.println("\tpublic void " + strategy.getJavaSetterName(element, Mode.DEFAULT) + "(" + getJavaType(element.getType()) + " value) {"); + out.println("\t\tsetValue(" + strategy.getFullJavaIdentifier(element) + ", value);"); + out.println("\t}"); + + printFieldJavaDoc(out, element); + if (element instanceof ColumnDefinition) { + printColumnJPAAnnotation(out, (ColumnDefinition) element); + } + + out.println("\tpublic " + getJavaType(element.getType()) + " " + strategy.getJavaGetterName(element, Mode.DEFAULT) + "() {"); + out.println("\t\treturn getValue(" + strategy.getFullJavaIdentifier(element) + ");"); + out.println("\t}"); + + if (generateRelations() && + generateNavigationMethods() && + element instanceof ColumnDefinition) { + + ColumnDefinition column = (ColumnDefinition) element; + + List uniqueKeys = column.getUniqueKeys(); + + // Print references from this column's unique keys to all + // corresponding foreign keys. + + // e.g. in TAuthorRecord, print getTBooks() + // ----------------------------------------------------------------- + Set fetchMethodNames = new HashSet(); + for (UniqueKeyDefinition uniqueKey : uniqueKeys) { + if (out.printOnlyOnce(uniqueKey)) { + foreignKeyLoop: for (ForeignKeyDefinition foreignKey : uniqueKey.getForeignKeys()) { + + // #64 - If the foreign key does not match the referenced key, it + // is most likely because it references a non-primary unique key + // Skip code generation for this foreign key + + // #69 - Should resolve this issue more thoroughly. + if (foreignKey.getReferencedColumns().size() != foreignKey.getKeyColumns().size()) { + log.warn("Foreign key mismatch", foreignKey.getName() + " does not match its primary key! No code is generated for this key. See trac tickets #64 and #69"); + continue foreignKeyLoop; + } + + TableDefinition referencing = foreignKey.getKeyTable(); + + StringBuilder fetchMethodName = new StringBuilder(); + fetchMethodName.append("fetch"); + fetchMethodName.append(strategy.getJavaClassName(referencing)); + + // #352 - Disambiguate foreign key navigation directions + fetchMethodName.append("List"); + + // #350 - Disambiguate multiple foreign keys referencing + // the same table + if (foreignKey.countSimilarReferences() > 1) { + fetchMethodName.append("By"); + fetchMethodName.append(strategy.getJavaClassName(foreignKey.getKeyColumns().get(0))); + } + + // #1270 - Disambiguate identical foreign keys + if (fetchMethodNames.contains(fetchMethodName.toString())) { + log.warn("Duplicate foreign key", foreignKey.getName() + " has the same properties as another foreign key! No code is generated for this key. See trac ticket #1270"); + continue foreignKeyLoop; + } + else { + fetchMethodNames.add(fetchMethodName.toString()); + } + + printFieldJavaDoc(out, column); + out.print("\tpublic "); + out.print(List.class); + out.print("<"); + out.print(strategy.getFullJavaClassName(referencing, Mode.RECORD)); + out.print("> "); + out.print(fetchMethodName); + + out.println("() {"); + out.println("\t\treturn create()"); + out.print("\t\t\t.selectFrom("); + out.print(strategy.getFullJavaIdentifier(referencing)); + out.println(")"); + + String connector = "\t\t\t.where("; + + for (int i = 0; i < foreignKey.getReferencedColumns().size(); i++) { + out.print(connector); + out.print(strategy.getFullJavaIdentifier(foreignKey.getKeyColumns().get(i))); + out.print(".equal(getValue"); + + DataTypeDefinition foreignType = foreignKey.getKeyColumns().get(i).getType(); + DataTypeDefinition primaryType = uniqueKey.getKeyColumns().get(i).getType(); + + // Convert foreign key value, if there is a type mismatch + if (!match(foreignType, primaryType)) { + out.print("As"); + out.print(getSimpleJavaType(foreignKey.getKeyColumns().get(i).getType())); + } + + out.print("("); + out.print(strategy.getFullJavaIdentifier(uniqueKey.getKeyColumns().get(i))); + out.println(")))"); + + connector = "\t\t\t.and("; + } + + out.println("\t\t\t.fetch();"); + out.println("\t}"); + } + } + } + + // Print references from this foreign key to its related primary key + // E.g. in TBookRecord print getTAuthor() + // ----------------------------------------------------------------- + ForeignKeyDefinition foreignKey = column.getForeignKey(); + if (foreignKey != null && out.printOnlyOnce(foreignKey)) { + boolean skipGeneration = false; + + // #64 - If the foreign key does not match the referenced key, it + // is most likely because it references a non-primary unique key + // Skip code generation for this foreign key + + // #69 - Should resolve this issue more thoroughly. + if (foreignKey.getReferencedColumns().size() != foreignKey.getKeyColumns().size()) { + log.warn("Foreign key mismatch", foreignKey.getName() + " does not match its primary key! No code is generated for this key. See trac tickets #64 and #69"); + skipGeneration = true; + } + + // Do not generate referential code for master data tables + TableDefinition referenced = foreignKey.getReferencedTable(); + if (referenced instanceof MasterDataTableDefinition) { + skipGeneration = true; + } + + if (!skipGeneration) { + printFieldJavaDoc(out, column); + out.print("\tpublic "); + out.print(strategy.getFullJavaClassName(referenced, Mode.RECORD)); + out.print(" fetch"); + out.print(strategy.getJavaClassName(referenced)); + + // #350 - Disambiguate multiple foreign keys referencing + // the same table + if (foreignKey.countSimilarReferences() > 1) { + out.print("By"); + out.print(strategy.getJavaClassName(column)); + } + + out.println("() {"); + out.println("\t\treturn create()"); + out.print("\t\t\t.selectFrom("); + out.print(strategy.getFullJavaIdentifier(referenced)); + out.println(")"); + + String connector = "\t\t\t.where("; + + for (int i = 0; i < foreignKey.getReferencedColumns().size(); i++) { + out.print(connector); + out.print(strategy.getFullJavaIdentifier(foreignKey.getReferencedColumns().get(i))); + out.print(".equal(getValue"); + + DataTypeDefinition foreignType = foreignKey.getKeyColumns().get(i).getType(); + DataTypeDefinition primaryType = foreignKey.getReferencedColumns().get(i).getType(); + + // Convert foreign key value, if there is a type mismatch + if (!match(foreignType, primaryType)) { + out.print("As"); + out.print(getSimpleJavaType(foreignKey.getReferencedColumns().get(i).getType())); + } + + out.print("("); + out.print(strategy.getFullJavaIdentifier(foreignKey.getKeyColumns().get(i))); + out.println(")))"); + + connector = "\t\t\t.and("; + } + + out.println("\t\t\t.fetchOne();"); + out.println("\t}"); + } + } + } + } + + private void printUDTColumn(GenerationWriter out, AttributeDefinition attribute, Definition table) throws SQLException { + Class declaredMemberClass = UDTField.class; + printColumnDefinition(out, attribute, table, declaredMemberClass); + } + + private void printTableColumn(GenerationWriter out, ColumnDefinition column, Definition table) throws SQLException { + Class declaredMemberClass = TableField.class; + printColumnDefinition(out, column, table, declaredMemberClass); + } + + private void printParameter(GenerationWriter out, ParameterDefinition parameter, Definition proc) throws SQLException { + printColumnDefinition(out, parameter, proc, Parameter.class); + } + + private void printColumnDefinition(GenerationWriter out, TypedElementDefinition column, Definition type, Class declaredMemberClass) throws SQLException { + printFieldJavaDoc(out, column); + + boolean hasType = + type instanceof TableDefinition || + type instanceof UDTDefinition; + + boolean isDefaulted = + column instanceof ParameterDefinition && + ((ParameterDefinition) column).isDefaulted(); + + if (type instanceof TableDefinition) { + if (generateInstanceFields()) { + out.print("\tpublic final "); + } + else { + out.print("\tpublic static final "); + } + } + else { + out.print("\tpublic static final "); + } + out.print(declaredMemberClass); + out.print("<"); + + if (hasType) { + out.print(strategy.getFullJavaClassName(type, Mode.RECORD)); + out.print(", "); + } + + out.print(getJavaType(column.getType())); + out.print("> "); + out.print(strategy.getJavaIdentifier(column)); + + if (declaredMemberClass == TableField.class) { + out.print(" = createField"); + } + else if (declaredMemberClass == UDTField.class) { + out.print(" = createField"); + } + else { + out.print(" = createParameter"); + } + + out.print("(\""); + out.print(column.getName()); + out.print("\", "); + out.print(getJavaTypeReference(column.getDatabase(), column.getType())); + + if (hasType) { + if (type instanceof TableDefinition) { + if (generateInstanceFields()) { + out.print(", this"); + } + else { + out.print(", " + strategy.getJavaIdentifier(type)); + } + } + else { + out.print(", " + strategy.getJavaIdentifier(type)); + } + } + + if (isDefaulted) { + out.print(", true"); + } + + out.println(");"); + } + + private void printFieldJavaDoc(GenerationWriter out, TypedElementDefinition element) throws SQLException { + printFieldJavaDoc(out, element, null); + } + + private void printFieldJavaDoc(GenerationWriter out, TypedElementDefinition element, String deprecation) throws SQLException { + out.println(); + out.println("\t/**"); + + String comment = element.getComment(); + + if (comment != null && comment.length() > 0) { + out.println("\t * " + comment); + } else { + out.println("\t * An uncommented item"); + } + + if (getJavaType(element.getType()).startsWith("java.lang.Object")) { + String t = element.getType().getType(); + String u = element.getType().getUserType(); + String combined = t.equalsIgnoreCase(u) ? t : t + ", " + u; + + out.println("\t * "); + out.print("\t * The SQL type of this item ("); + out.print(combined); + out.println(") could not be mapped.
"); + out.println("\t * Deserialising this field might not work!"); + + log.warn("Unknown type", element.getQualifiedName() + " (" + combined + ")"); + } + + if (element instanceof ColumnDefinition) { + ColumnDefinition column = (ColumnDefinition) element; + + UniqueKeyDefinition primaryKey = column.getPrimaryKey(); + ForeignKeyDefinition foreignKey = column.getForeignKey(); + + if (primaryKey != null) { + out.println("\t * "); + out.print("\t * PRIMARY KEY"); + out.println(); + } + + if (foreignKey != null) { + out.println("\t *

"); + out.println("\t *

");
+
+	            out.print("\t * CONSTRAINT ");
+	            out.println(foreignKey.getOutputName());
+	            out.print("\t * FOREIGN KEY (");
+
+	            String separator = "";
+	            for (ColumnDefinition fkColumn : foreignKey.getKeyColumns()) {
+	                out.print(separator);
+	                out.print(fkColumn.getOutputName());
+	                separator = ", ";
+	            }
+
+	            out.println(")");
+	            out.print("\t * REFERENCES ");
+	            out.print(foreignKey.getReferencedTable().getQualifiedOutputName());
+	            out.print(" (");
+
+	            separator = "";
+                for (ColumnDefinition fkColumn : foreignKey.getReferencedColumns()) {
+                    out.print(separator);
+                    out.print(fkColumn.getOutputName());
+                    separator = ", ";
+                }
+
+                out.println(")");
+	            out.println("\t * 
"); + } + } + + printDeprecation(out, deprecation); + + out.println("\t */"); + + if (deprecation != null) { + out.println("\t@Deprecated"); + } + } + + private void printDeprecation(GenerationWriter out, String deprecation) { + if (deprecation != null) { + out.println("\t *"); + + String[] strings = deprecation.split("[\n\r]+"); + for (int i = 0; i < strings.length; i++) { + if (i == 0) { + out.println("\t * @deprecated " + strings[i]); + } + else { + out.println("\t * " + strings[i]); + } + } + } + } + + private void printNoFurtherInstancesAllowedJavadoc(GenerationWriter out) { + printJavadoc(out, "No further instances allowed"); + } + + private void printJavadoc(GenerationWriter out, String doc) { + out.println("\t/**"); + out.println("\t * " + doc); + out.println("\t */"); + } + + private void printClassJavadoc(GenerationWriter out, Definition definition) { + printClassJavadoc(out, definition.getComment()); + } + + private void printClassJavadoc(GenerationWriter out, String comment) { + printClassJavadoc(out, comment, null); + } + + private void printClassJavadoc(GenerationWriter out, String comment, String deprecation) { + out.println("/**"); + out.println(" * This class is generated by jOOQ."); + + if (comment != null && comment.length() > 0) { + out.println(" *"); + out.println(" * " + comment); + } + + if (deprecation != null && deprecation.length() > 0) { + out.println(" *"); + out.println(" * @deprecated : " + deprecation); + } + + out.println(" */"); + + if (generateGeneratedAnnotation()) { + out.println( + "@javax.annotation.Generated(value = {\"http://www.jooq.org\", \"" + Constants.VERSION + "\"},\n" + + " comments = \"This class is generated by jOOQ\")"); + } + + if (deprecation != null && deprecation.length() > 0) { + out.println("@Deprecated"); + } + + out.printSuppressWarningsPlaceholder(); + } + + private void printHeader(GenerationWriter out, Definition definition) { + printHeader(out, definition, Mode.DEFAULT); + } + + private void printHeader(GenerationWriter out, Definition definition, Mode mode) { + out.println("/**"); + out.println(" * This class is generated by jOOQ"); + out.println(" */"); + out.println("package " + strategy.getJavaPackageName(definition, mode) + ";"); + out.println(); + } + + private void printExtendsNumberType(GenerationWriter out, DataTypeDefinition type) throws SQLException { + printNumberType(out, type, "? extends "); + } + + private void printNumberType(GenerationWriter out, DataTypeDefinition type) throws SQLException { + printNumberType(out, type, ""); + } + + private void printNumberType(GenerationWriter out, DataTypeDefinition type, String prefix) throws SQLException { + if (type.isGenericNumberType()) { + out.print(prefix); + out.print(Number.class); + } + else { + out.print(getJavaType(type)); + } + } + + private String getSimpleJavaType(DataTypeDefinition type) throws SQLException { + return GenerationUtil.getSimpleJavaType(getJavaType(type)); + } + + private String getJavaTypeReference(Database db, DataTypeDefinition type) throws SQLException { + if (type instanceof MasterDataTypeDefinition) { + StringBuilder sb = new StringBuilder(); + + sb.append(getJavaTypeReference(db, ((MasterDataTypeDefinition) type).underlying)); + sb.append(".asMasterDataType("); + sb.append(getJavaType(type)); + sb.append(".class)"); + + return sb.toString(); + } + + else { + if (db.isArrayType(type.getType())) { + String baseType = GenerationUtil.getArrayBaseType(db.getDialect(), type.getType(), type.getUserType()); + return getTypeReference(db, type.getSchema(), baseType, 0, 0, baseType) + ".getArrayDataType()"; + } + else { + return getTypeReference(db, type.getSchema(), type.getType(), type.getPrecision(), type.getScale(), type.getUserType()); + } + } + } + + private String getJavaType(DataTypeDefinition type) throws SQLException { + if (type instanceof MasterDataTypeDefinition) { + return strategy.getFullJavaClassName(((MasterDataTypeDefinition) type).table); + } + else { + return getType( + type.getDatabase(), + type.getSchema(), + type.getType(), + type.getPrecision(), + type.getScale(), + type.getUserType(), + Object.class.getName()); + } + } + + private String getType(Database db, SchemaDefinition schema, String t, int p, int s, String u, String defaultType) throws SQLException { + String type = defaultType; + + // Array types + if (db.isArrayType(t)) { + String baseType = GenerationUtil.getArrayBaseType(db.getDialect(), t, u); + type = getType(db, schema, baseType, p, s, baseType, defaultType) + "[]"; + } + + // Check for Oracle-style VARRAY types + else if (db.getArray(schema, u) != null) { + type = strategy.getFullJavaClassName(db.getArray(schema, u), Mode.RECORD); + } + + // Check for ENUM types + else if (db.getEnum(schema, u) != null) { + type = strategy.getFullJavaClassName(db.getEnum(schema, u)); + } + + // Check for UDTs + else if (db.getUDT(schema, u) != null) { + type = strategy.getFullJavaClassName(db.getUDT(schema, u), Mode.RECORD); + } + + // Check for custom types + else if (db.getConfiguredCustomType(u) != null) { + type = u; + } + + // Try finding a basic standard SQL type according to the current dialect + else { + try { + Class clazz = FieldTypeHelper.getDialectJavaType(db.getDialect(), t, p, s); + type = clazz.getCanonicalName(); + + if (clazz.getTypeParameters().length > 0) { + type += "<"; + + String separator = ""; + for (TypeVariable var : clazz.getTypeParameters()) { + type += separator; + type += ((Class) var.getBounds()[0]).getCanonicalName(); + + separator = ", "; + } + + type += ">"; + } + } + catch (SQLDialectNotSupportedException e) { + if (defaultType == null) { + throw e; + } + } + } + + return type; + } + + private String getTypeReference(Database db, SchemaDefinition schema, String t, int p, int s, String u) throws SQLException { + StringBuilder sb = new StringBuilder(); + if (db.getArray(schema, u) != null) { + ArrayDefinition array = db.getArray(schema, u); + + sb.append(getJavaTypeReference(db, array.getElementType())); + sb.append(".asArrayDataType("); + sb.append(strategy.getFullJavaClassName(array, Mode.RECORD)); + sb.append(".class)"); + } + else if (db.getUDT(schema, u) != null) { + UDTDefinition udt = db.getUDT(schema, u); + + sb.append(strategy.getFullJavaIdentifier(udt)); + sb.append(".getDataType()"); + } + else if (db.getEnum(schema, u) != null) { + sb.append("org.jooq.util."); + sb.append(db.getDialect().getName().toLowerCase()); + sb.append("."); + sb.append(db.getDialect().getName()); + sb.append("DataType."); + sb.append(FieldTypeHelper.normalise(FieldTypeHelper.getDataType(db.getDialect(), String.class).getTypeName())); + sb.append(".asEnumDataType("); + sb.append(strategy.getFullJavaClassName(db.getEnum(schema, u))); + sb.append(".class)"); + } + else { + DataType dataType = null; + + try { + dataType = FieldTypeHelper.getDialectDataType(db.getDialect(), t, p, s); + } + + // Mostly because of unsupported data types. Will be handled later. + catch (SQLDialectNotSupportedException ignore) { + } + + // If there is a standard SQLDataType available for the dialect- + // specific DataType t, then reference that one. + if (dataType != null && dataType.getSQLDataType() != null) { + SQLDataType sqlDataType = dataType.getSQLDataType(); + + sb.append(SQLDataType.class.getCanonicalName()); + sb.append("."); + sb.append(FieldTypeHelper.normalise(sqlDataType.getTypeName())); + + if (db.getConfiguredCustomType(u) != null) { + sb.append(".asConvertedDataType(new "); + sb.append(db.getConfiguredCustomType(u).getConverter()); + sb.append("())"); + } + } + + // Otherwise, reference the dialect-specific DataType itself. + else { + sb.append("org.jooq.util."); + sb.append(db.getDialect().getName().toLowerCase()); + sb.append("."); + sb.append(db.getDialect().getName()); + sb.append("DataType."); + + try { + String type1 = getType(db, schema, t, p, s, u, null); + String type2 = getType(db, schema, t, 0, 0, u, null); + + sb.append(FieldTypeHelper.normalise(t)); + + if (!type1.equals(type2)) { + Class clazz = FieldTypeHelper.getDialectJavaType(db.getDialect(), t, p, s); + + sb.append(".asNumberDataType("); + sb.append(clazz.getCanonicalName()); + sb.append(".class)"); + } + } + + // Mostly because of unsupported data types + catch (SQLDialectNotSupportedException e) { + sb.append("getDefaultDataType(\""); + sb.append(t); + sb.append("\")"); + } + } + } + + return sb.toString(); + } + + private boolean match(DataTypeDefinition type1, DataTypeDefinition type2) throws SQLException { + return getJavaType(type1).equals(getJavaType(type2)); + } +} diff --git a/jOOQ-codegen/src/main/java/org/jooq/util/DefaultGeneratorStrategy.java b/jOOQ-codegen/src/main/java/org/jooq/util/DefaultGeneratorStrategy.java new file mode 100644 index 00000000000..ab95d405cba --- /dev/null +++ b/jOOQ-codegen/src/main/java/org/jooq/util/DefaultGeneratorStrategy.java @@ -0,0 +1,235 @@ +/** + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com + * All rights reserved. + * + * This software is licensed to you under the Apache License, Version 2.0 + * (the "License"); You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * 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 "jOOQ" 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 COPYRIGHT OWNER 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. + */ +package org.jooq.util; + +import static org.jooq.util.GenerationUtil.convertToJavaIdentifier; + +import java.io.Serializable; +import java.util.ArrayList; +import java.util.List; + +import org.jooq.tools.StringUtils; + +/** + * The default naming strategy for the {@link DefaultGenerator} + * + * @author Lukas Eder + */ +public class DefaultGeneratorStrategy extends AbstractGeneratorStrategy { + + private String targetDirectory; + private String targetPackage; + private boolean instanceFields; + + // ------------------------------------------------------------------------- + // Initialisation + // ------------------------------------------------------------------------- + + @Override + public final void setInstanceFields(boolean instanceFields) { + this.instanceFields = instanceFields; + } + + @Override + public final boolean getInstanceFields() { + return instanceFields; + } + + @Override + public final String getTargetDirectory() { + return targetDirectory; + } + + @Override + public final void setTargetDirectory(String directory) { + this.targetDirectory = directory; + } + + @Override + public final String getTargetPackage() { + return targetPackage; + } + + @Override + public final void setTargetPackage(String packageName) { + this.targetPackage = packageName; + } + + // ------------------------------------------------------------------------- + // Strategy methods + // ------------------------------------------------------------------------- + + @Override + public String getJavaIdentifier(Definition definition) { + return GenerationUtil.convertToJavaIdentifier(definition.getOutputName().toUpperCase()); + } + + @Override + public String getJavaSetterName(Definition definition, Mode mode) { + return "set" + getJavaClassName0(definition, Mode.DEFAULT); + } + + @Override + public String getJavaGetterName(Definition definition, Mode mode) { + return "get" + getJavaClassName0(definition, Mode.DEFAULT); + } + + @Override + public String getJavaMethodName(Definition definition, Mode mode) { + return getJavaClassName0LC(definition, Mode.DEFAULT); + } + + @Override + public String getJavaClassExtends(Definition definition, Mode mode) { + return null; + } + + @Override + public List getJavaClassImplements(Definition definition, Mode mode) { + List result = new ArrayList(); + + if (mode == Mode.POJO) { + result.add(Serializable.class.getName()); + } + + return result; + } + + @Override + public String getJavaClassName(Definition definition, Mode mode) { + return getJavaClassName0(definition, mode); + } + + @Override + public String getJavaPackageName(Definition definition, Mode mode) { + StringBuilder sb = new StringBuilder(); + + sb.append(getTargetPackage()); + + // [#282] In multi-schema setups, the schema name goes into the package + if (definition.getDatabase().getSchemata().size() > 1) { + sb.append("."); + sb.append(convertToJavaIdentifier(definition.getSchema().getOutputName()).toLowerCase()); + } + + // Some definitions have their dedicated subpackages, e.g. "tables", "routines" + if (!StringUtils.isBlank(getSubPackage(definition))) { + sb.append("."); + sb.append(getSubPackage(definition)); + } + + // Record are yet in another subpackage + if (mode == Mode.RECORD) { + sb.append(".records"); + } + + // POJOs too + else if (mode == Mode.POJO) { + sb.append(".pojos"); + } + + return sb.toString(); + } + + @Override + public String getJavaMemberName(Definition definition, Mode mode) { + return getJavaClassName0LC(definition, mode); + } + + private String getJavaClassName0LC(Definition definition, Mode mode) { + String result = getJavaClassName0(definition, mode); + return result.substring(0, 1).toLowerCase() + result.substring(1); + } + + private String getJavaClassName0(Definition definition, Mode mode) { + StringBuilder result = new StringBuilder(); + + String name = GenerationUtil.convertToJavaIdentifier(definition.getOutputName()); + result.append(StringUtils.toCamelCase(name)); + + if (mode == Mode.RECORD) { + result.append("Record"); + } + else if (mode == Mode.FACTORY) { + result.append("Factory"); + } + + if (!StringUtils.isBlank(definition.getOverload())) { + result.append(definition.getOverload()); + } + + return result.toString(); + } + + private final String getSubPackage(Definition definition) { + if (definition instanceof MasterDataTableDefinition) { + return "enums"; + } + else if (definition instanceof TableDefinition) { + return "tables"; + } + + // [#799] UDT's are also packages + else if (definition instanceof UDTDefinition) { + return "udt"; + } + else if (definition instanceof PackageDefinition) { + return "packages"; + } + else if (definition instanceof RoutineDefinition) { + RoutineDefinition routine = (RoutineDefinition) definition; + + if (routine.getPackage() instanceof UDTDefinition) { + return "udt." + getJavaIdentifier(routine.getPackage()).toLowerCase(); + } + else if (routine.getPackage() != null) { + return "packages." + getJavaIdentifier(routine.getPackage()).toLowerCase(); + } + else { + return "routines"; + } + } + else if (definition instanceof EnumDefinition) { + return "enums"; + } + else if (definition instanceof ArrayDefinition) { + return "udt"; + } + + // Default always to the main package + return ""; + } +} diff --git a/jOOQ-codegen/src/main/java/org/jooq/util/GenerationTask.java b/jOOQ-codegen/src/main/java/org/jooq/util/GenerationTask.java new file mode 100644 index 00000000000..56b8af00bfd --- /dev/null +++ b/jOOQ-codegen/src/main/java/org/jooq/util/GenerationTask.java @@ -0,0 +1,150 @@ +/** + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com + * All rights reserved. + * + * This software is licensed to you under the Apache License, Version 2.0 + * (the "License"); You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * 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 "jOOQ" 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 COPYRIGHT OWNER 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. + */ + +package org.jooq.util; + +import java.util.Properties; + +import org.apache.tools.ant.BuildException; +import org.apache.tools.ant.Task; + +/** + * Class generation facility that can be invoked from ant. + * + * @author Lukas Eder + */ +public class GenerationTask extends Task { + + private Properties properties = new Properties(); + + { + // Set default values + properties.setProperty("jdbc.Driver", "com.mysql.jdbc.Driver"); + + properties.setProperty("generator", "org.jooq.util.DefaultGenerator"); + properties.setProperty("generator.database", "org.jooq.util.mysql.MySQLDatabase"); + properties.setProperty("generator.database.includes", ".*"); + properties.setProperty("generator.database.excludes", ""); + properties.setProperty("generator.generate.records", "true"); + properties.setProperty("generator.generate.relations", "false"); + properties.setProperty("generator.generate.instance-fields", "true"); + properties.setProperty("generator.generate.generated-annotation", "true"); + properties.setProperty("generator.generate.unsigned-types", "true"); + + properties.setProperty("generator.target.directory", "."); + } + + public void setJdbcdriver(String value) { + properties.setProperty("jdbc.Driver", value); + } + + public void setJdbcurl(String value) { + properties.setProperty("jdbc.URL", value); + } + + public void setJdbcschema(String value) { + properties.setProperty("jdbc.Schema", value); + } + + public void setJdbcuser(String value) { + properties.setProperty("jdbc.User", value); + } + + public void setJdbcpassword(String value) { + properties.setProperty("jdbc.Password", value); + } + + public void setGenerator(String value) { + properties.setProperty("generator", value); + } + + public void setGeneratordatabase(String value) { + properties.setProperty("generator.database", value); + } + + public void setGeneratordatabaseincludes(String value) { + properties.setProperty("generator.database.includes", value); + } + + public void setGeneratordatabaseexcludes(String value) { + properties.setProperty("generator.database.excludes", value); + } + + public void setGeneratordatabaseinputschema(String value) { + properties.setProperty("generator.database.input-schema", value); + } + + public void setGeneratordatabaseoutputschema(String value) { + properties.setProperty("generator.database.output-schema", value); + } + + public void setGeneratorgeneraterecords(String value) { + properties.setProperty("generator.generate.records", value); + } + + public void setGeneratorgeneraterelations(String value) { + properties.setProperty("generator.generate.relations", value); + } + + public void setGeneratorgenerateinstancefields(String value) { + properties.setProperty("generator.generate.instance-fields", value); + } + + public void setGeneratorgenerateunsignedtypes(String value) { + properties.setProperty("generator.generate.unsigned-types", value); + } + + public void setGeneratorgenerategeneratedannotation(String value) { + properties.setProperty("generator.generate.generated-annotation", value); + } + + public void setGeneratortargetpackage(String value) { + properties.setProperty("generator.target.package", value); + } + + public void setGeneratortargetdirectory(String value) { + properties.setProperty("generator.target.directory", value); + } + + @Override + public void execute() throws BuildException { + try { + GenerationTool.main(properties); + } catch (Exception e) { + throw new BuildException(e); + } + } +} diff --git a/jOOQ-codegen/src/main/java/org/jooq/util/GenerationTool.java b/jOOQ-codegen/src/main/java/org/jooq/util/GenerationTool.java new file mode 100644 index 00000000000..1f97d02b54d --- /dev/null +++ b/jOOQ-codegen/src/main/java/org/jooq/util/GenerationTool.java @@ -0,0 +1,426 @@ +/** + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com + * All rights reserved. + * + * This software is licensed to you under the Apache License, Version 2.0 + * (the "License"); You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * 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 "jOOQ" 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 COPYRIGHT OWNER 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. + */ + +package org.jooq.util; + +import static org.jooq.tools.StringUtils.defaultString; +import static org.jooq.tools.StringUtils.isBlank; + +import java.io.ByteArrayOutputStream; +import java.io.IOException; +import java.io.InputStream; +import java.io.OutputStream; +import java.io.StringReader; +import java.sql.Connection; +import java.sql.DriverManager; +import java.util.ArrayList; +import java.util.List; +import java.util.Properties; + +import javax.xml.bind.JAXB; + +import org.jooq.tools.JooqLogger; +import org.jooq.tools.StringUtils; +import org.jooq.util.jaxb.Configuration; +import org.jooq.util.jaxb.EnumType; +import org.jooq.util.jaxb.ForcedType; +import org.jooq.util.jaxb.Generate; +import org.jooq.util.jaxb.Jdbc; +import org.jooq.util.jaxb.MasterDataTable; +import org.jooq.util.jaxb.Property; +import org.jooq.util.jaxb.Schema; +import org.jooq.util.jaxb.Strategy; +import org.jooq.util.jaxb.Target; + +/** + * The GenerationTool takes care of generating Java code from a database schema. It + * takes its configuration parameters from a standard Java properties file, + * using this format: + * + *
    + * + *
  • jdbcDriver = [the JDBC driver to connect with. Make sure it is on the + * classpath]
  • + *
  • jdbcURL = [the JDBC URL to connect with]
  • + *
  • jdbcUser = [the JDBC user to connect with]
  • + *
  • jdbcPassword = [the JDBC password to connect with]
  • + * + *
+ * + * @author Lukas Eder + */ +public class GenerationTool { + + private static final JooqLogger log = JooqLogger.getLogger(GenerationTool.class); + + /** + * @param args + * @throws Exception + */ + public static void main(String[] args) throws Exception { + if (args.length < 1) { + error(); + } + + InputStream in = GenerationTool.class.getResourceAsStream(args[0]); + + if (in == null) { + log.error("Cannot find " + args[0]); + log.error("-----------"); + log.error("Please be sure it is located on the classpath and qualified as a classpath location."); + log.error("If it is located at the current working directory, try adding a '/' to the path"); + error(); + } + + log.info("Initialising properties", args[0]); + + try { + if (args[0].endsWith(".xml")) { + + // [#1149] If there is no namespace defined, add the default one + ByteArrayOutputStream out = new ByteArrayOutputStream(); + copyLarge(in, out); + String xml = out.toString(); + + // TODO [#1201] Add better error handling here + xml = xml.replaceAll( + "", + ""); + + xml = xml.replace( + "", + ""); + + main(JAXB.unmarshal(new StringReader(xml), Configuration.class)); + } + else { + Properties properties = new Properties(); + properties.load(in); + main(properties, args); + } + } catch (Exception e) { + log.error("Cannot read " + args[0] + ". Error : " + e.getMessage()); + e.printStackTrace(); + error(); + } finally { + if (in != null) { + in.close(); + } + } + } + + public static void main(Properties properties, String... args) throws Exception { + Jdbc jdbc = new Jdbc(); + jdbc.setDriver(properties.getProperty("jdbc.Driver")); + jdbc.setUrl(properties.getProperty("jdbc.URL")); + jdbc.setUser(properties.getProperty("jdbc.User")); + jdbc.setPassword(properties.getProperty("jdbc.Password")); + jdbc.setSchema(properties.getProperty("jdbc.Schema")); + + Strategy strategy = new Strategy(); + strategy.setName(properties.containsKey("generator.strategy") ? properties.getProperty("generator.strategy") : null); + + List masterDataTables = new ArrayList(); + for (String name : defaultString(properties.getProperty("generator.generate.master-data-tables")).split(",")) { + if (isBlank(name)) continue; + + MasterDataTable table = new MasterDataTable(); + + table.setName(name); + table.setLiteral(properties.getProperty("generator.generate.master-data-table-literal." + name)); + table.setDescription(properties.getProperty("generator.generate.master-data-table-description." + name)); + + masterDataTables.add(table); + } + + List enumTypes = new ArrayList(); + for (String property : properties.stringPropertyNames()) { + if (property.startsWith("generator.database.enum-type.")) { + String name = property.replace("generator.database.enum-type.", ""); + + EnumType type = new EnumType(); + type.setName(name); + type.setLiterals(properties.getProperty(property)); + enumTypes.add(type); + } + } + + List forcedTypes = new ArrayList(); + for (String property : properties.stringPropertyNames()) { + if (property.startsWith("generator.database.forced-type.")) { + String name = property.replace("generator.database.forced-type.", ""); + + ForcedType type = new ForcedType(); + type.setName(name); + type.setExpressions(properties.getProperty(property)); + forcedTypes.add(type); + } + } + + org.jooq.util.jaxb.Database database = new org.jooq.util.jaxb.Database(); + database.setName(properties.getProperty("generator.database")); + database.setIncludes(properties.containsKey("generator.database.includes") ? properties.getProperty("generator.database.includes") : null); + database.setExcludes(properties.containsKey("generator.database.excludes") ? properties.getProperty("generator.database.excludes") : null); + database.setDateAsTimestamp("true".equalsIgnoreCase(properties.getProperty("generator.database.date-as-timestamp"))); + database.setUnsignedTypes(!"false".equalsIgnoreCase(properties.getProperty("generator.generate.unsigned-types"))); + database.setInputSchema(properties.containsKey("generator.database.input-schema") ? properties.getProperty("generator.database.input-schema") : null); + database.setOutputSchema(properties.containsKey("generator.database.output-schema") ? properties.getProperty("generator.database.output-schema") : null); + + // Avoid creating these empty elements when migrating + if (!masterDataTables.isEmpty()) + database.getMasterDataTables().addAll(masterDataTables); + + if (!enumTypes.isEmpty()) + database.getEnumTypes().addAll(enumTypes); + + if (!forcedTypes.isEmpty()) + database.getForcedTypes().addAll(forcedTypes); + + Target target = new Target(); + target.setPackageName(properties.getProperty("generator.target.package")); + target.setDirectory(properties.getProperty("generator.target.directory")); + + Generate generate = new Generate(); + generate.setRelations("true".equalsIgnoreCase(properties.getProperty("generator.generate.relations"))); + generate.setDeprecated(!"false".equalsIgnoreCase(properties.getProperty("generator.generate.deprecated"))); + generate.setInstanceFields(!"false".equalsIgnoreCase(properties.getProperty("generator.generate.instance-fields"))); + generate.setGeneratedAnnotation(!"false".equalsIgnoreCase(properties.getProperty("generator.generate.generated-annotation"))); + generate.setPojos("true".equalsIgnoreCase(properties.getProperty("generator.generate.pojos"))); + generate.setRecords(!"false".equalsIgnoreCase(properties.getProperty("generator.generate.records"))); + generate.setJpaAnnotations("true".equalsIgnoreCase(properties.getProperty("generator.generate.jpa-annotations"))); + + org.jooq.util.jaxb.Generator generator = new org.jooq.util.jaxb.Generator(); + + if (!isBlank(strategy.getName())) + generator.setStrategy(strategy); + + generator.setDatabase(database); + generator.setTarget(target); + generator.setGenerate(generate); + generator.setName(properties.containsKey("generator") ? properties.getProperty("generator") : null); + + Configuration configuration = new Configuration(); + configuration.setJdbc(jdbc); + configuration.setGenerator(generator); + + if (args.length < 2) { + log.warn("WARNING: jooq-codegen source code generation using .properties files is deprecated as of jOOQ 2.0.4"); + log.info(" Consider using XML configuration instead"); + log.info(" See http://www.jooq.org/manual/META/Configuration/ for more details"); + log.info(""); + log.info("Use GenerationTool to migrate your .properties file to XML (printed on System.out) :"); + log.info("Usage : GenerationTool migrate"); + log.info(""); + log.info("XML output:"); + log.info(""); + JAXB.marshal(configuration, System.out); + log.info(""); + log.info(""); + + main(configuration); + } + else if ("migrate".equals(args[1])) { + log.info("Migrating properties to XML"); + JAXB.marshal(configuration, System.out); + } + } + + @SuppressWarnings("unchecked") + public static void main(Configuration configuration) throws Exception { + Jdbc j = configuration.getJdbc(); + org.jooq.util.jaxb.Generator g = configuration.getGenerator(); + + // Some default values for optional elements to avoid NPE's + if (g.getStrategy() == null) + g.setStrategy(new Strategy()); + if (g.getTarget() == null) + g.setTarget(new Target()); + + Class.forName(j.getDriver()); + Connection connection = null; + + try { + + // Initialise connection + // --------------------- + Properties properties = new Properties(); + for (Property p : j.getProperties()) { + properties.put(p.getKey(), p.getValue()); + } + + if (!properties.containsKey("user")) + properties.put("user", defaultString(j.getUser())); + if (!properties.containsKey("password")) + properties.put("password", defaultString(j.getPassword())); + + connection = DriverManager.getConnection(defaultString(j.getUrl()), properties); + + // Initialise generator + // -------------------- + Class generatorClass = (Class) (!isBlank(g.getName()) + ? Class.forName(trim(g.getName())) + : DefaultGenerator.class); + Generator generator = generatorClass.newInstance(); + + Class strategyClass = (Class) (!isBlank(g.getStrategy().getName()) + ? Class.forName(trim(g.getStrategy().getName())) + : DefaultGeneratorStrategy.class); + GeneratorStrategy strategy = strategyClass.newInstance(); + + generator.setStrategy(strategy); + + Class databaseClass = (Class) Class.forName(trim(g.getDatabase().getName())); + Database database = databaseClass.newInstance(); + + List schemata = g.getDatabase().getSchemata(); + if (schemata.isEmpty()) { + Schema schema = new Schema(); + schema.setInputSchema(trim(g.getDatabase().getInputSchema())); + schema.setOutputSchema(trim(g.getDatabase().getOutputSchema())); + schemata.add(schema); + } + else { + if (!StringUtils.isBlank(g.getDatabase().getInputSchema())) { + log.warn("WARNING: Cannot combine configuration properties /configuration/generator/database/inputSchema and /configuration/generator/database/schemata"); + } + if (!StringUtils.isBlank(g.getDatabase().getOutputSchema())) { + log.warn("WARNING: Cannot combine configuration properties /configuration/generator/database/outputSchema and /configuration/generator/database/schemata"); + } + } + + for (Schema schema : schemata) { + if (StringUtils.isBlank(schema.getInputSchema())) { + log.warn("WARNING: The configuration property jdbc.Schema is deprecated and will be removed in the future. Use /configuration/generator/database/inputSchema instead"); + schema.setInputSchema(trim(j.getSchema())); + } + + if (StringUtils.isBlank(schema.getOutputSchema())) { + schema.setOutputSchema(trim(schema.getInputSchema())); + } + } + + database.setConnection(connection); + database.setConfiguredSchemata(schemata); + database.setIncludes(defaultString(g.getDatabase().getIncludes()).split(",")); + database.setExcludes(defaultString(g.getDatabase().getExcludes()).split(",")); + database.setConfiguredMasterDataTables(g.getDatabase().getMasterDataTables()); + database.setConfiguredCustomTypes(g.getDatabase().getCustomTypes()); + database.setConfiguredEnumTypes(g.getDatabase().getEnumTypes()); + database.setConfiguredForcedTypes(g.getDatabase().getForcedTypes()); + + if (g.getDatabase().getEnumTypes().size() > 0) { + log.warn("WARNING: The configuration property /configuration/generator/database/enumTypes is experimental and deprecated and will be removed in the future."); + } + + if (g.getDatabase().isDateAsTimestamp() != null) + database.setDateAsTimestamp(g.getDatabase().isDateAsTimestamp()); + if (g.getDatabase().isUnsignedTypes() != null) + database.setSupportsUnsignedTypes(g.getDatabase().isUnsignedTypes()); + + if (StringUtils.isBlank(g.getTarget().getPackageName())) + g.getTarget().setPackageName("org.jooq.generated"); + if (StringUtils.isBlank(g.getTarget().getDirectory())) + g.getTarget().setPackageName("target/generated-sources/jooq"); + + generator.setTargetPackage(g.getTarget().getPackageName()); + generator.setTargetDirectory(g.getTarget().getDirectory()); + + if (g.getGenerate().isRelations() != null) + generator.setGenerateRelations(g.getGenerate().isRelations()); + if (g.getGenerate().isNavigationMethods() != null) + generator.setGenerateNavigationMethods(g.getGenerate().isNavigationMethods()); + if (g.getGenerate().isDeprecated() != null) + generator.setGenerateDeprecated(g.getGenerate().isDeprecated()); + if (g.getGenerate().isInstanceFields() != null) + generator.setGenerateInstanceFields(g.getGenerate().isInstanceFields()); + if (g.getGenerate().isGeneratedAnnotation() != null) + generator.setGenerateGeneratedAnnotation(g.getGenerate().isGeneratedAnnotation()); + if (g.getGenerate().isPojos() != null) + generator.setGeneratePojos(g.getGenerate().isPojos()); + if (g.getGenerate().isRecords() != null) + generator.setGenerateRecords(g.getGenerate().isRecords()); + if (g.getGenerate().isJpaAnnotations() != null) + generator.setGenerateJPAAnnotations(g.getGenerate().isJpaAnnotations()); + + // Generator properties that should in fact be strategy properties + strategy.setInstanceFields(generator.generateInstanceFields()); + + + generator.generate(database); + } catch (Exception e) { + e.printStackTrace(); + throw e; + } finally { + if (connection != null) { + connection.close(); + } + } + } + + private static String trim(String string) { + return (string == null ? null : string.trim()); + } + + private static void error() { + log.error("Usage : GenerationTool "); + System.exit(-1); + } + + /** + * Copy bytes from a large (over 2GB) InputStream to an + * OutputStream. + *

+ * This method buffers the input internally, so there is no need to use a + * BufferedInputStream. + * + * @param input the InputStream to read from + * @param output the OutputStream to write to + * @return the number of bytes copied + * @throws NullPointerException if the input or output is null + * @throws IOException if an I/O error occurs + * @since Commons IO 1.3 + */ + public static long copyLarge(InputStream input, OutputStream output) throws IOException { + byte[] buffer = new byte[1024 * 4]; + long count = 0; + int n = 0; + while (-1 != (n = input.read(buffer))) { + output.write(buffer, 0, n); + count += n; + } + return count; + } +} diff --git a/jOOQ-codegen/src/main/java/org/jooq/util/GenerationUtil.java b/jOOQ-codegen/src/main/java/org/jooq/util/GenerationUtil.java new file mode 100644 index 00000000000..cf16c7a758d --- /dev/null +++ b/jOOQ-codegen/src/main/java/org/jooq/util/GenerationUtil.java @@ -0,0 +1,197 @@ +/** + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com + * All rights reserved. + * + * This software is licensed to you under the Apache License, Version 2.0 + * (the "License"); You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * 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 "jOOQ" 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 COPYRIGHT OWNER 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. + */ +package org.jooq.util; + +import static java.util.Arrays.asList; +import static java.util.Collections.unmodifiableSet; + +import java.util.HashSet; +import java.util.Set; + +import org.jooq.SQLDialect; +import org.jooq.exception.SQLDialectNotSupportedException; +import org.jooq.util.h2.H2DataType; + +/** + * @author Lukas Eder + */ +class GenerationUtil { + + private static Set JAVA_KEYWORDS = unmodifiableSet(new HashSet(asList( + "abstract", + "assert", + "boolean", + "break", + "byte", + "case", + "catch", + "char", + "class", + "const", + "continue", + "default", + "double", + "do", + "else", + "enum", + "extends", + "false", + "final", + "finally", + "float", + "for", + "goto", + "if", + "implements", + "import", + "instanceof", + "interface", + "int", + "long", + "native", + "new", + "package", + "private", + "protected", + "public", + "return", + "short", + "static", + "strictfp", + "super", + "switch", + "synchronized", + "this", + "throw", + "throws", + "transient", + "true", + "try", + "void", + "volatile", + "while"))); + + /** + * Take a literal (e.g. database column) and make it a Java identifier to be + * used without case-change as an enum identifier + *

+ * [#959] These literals are escaped if they collide with reserved words. + * This implementation is meant as a fix for [#959]. These types of + * collisions have to be generally reviewed again, when allowing for more + * control over generated source code, as of [#408][#911] + */ + static String convertToJavaIdentifier(String literal) { + if (JAVA_KEYWORDS.contains(literal)) { + return literal + "_"; + } + + StringBuilder sb = new StringBuilder(); + + if ("".equals(literal)) { + return "_"; + } + + if (!Character.isJavaIdentifierStart(literal.charAt(0))) { + sb.append("_"); + } + + for (int i = 0; i < literal.length(); i++) { + char c = literal.charAt(i); + + if (!Character.isJavaIdentifierPart(c)) { + sb.append("_"); + } + else { + sb.append(c); + } + } + + return sb.toString(); + } + + /** + * Take a qualified Java type and make it a simple type + * + * @see Class#getSimpleName() + */ + static String getSimpleJavaType(String qualifiedJavaType) { + if (qualifiedJavaType == null) { + return null; + } + + return qualifiedJavaType.replaceAll(".*\\.", ""); + } + + /** + * Gets the base type for an array type, depending on the RDBMS dialect + */ + static String getArrayBaseType(SQLDialect dialect, String t, String u) { + switch (dialect) { + case POSTGRES: { + + // The convention is to prepend a "_" to a type to get an array type + if (u != null && u.startsWith("_")) { + return u.substring(1); + } + + // But there are also arrays with a "vector" suffix + else { + return u; + } + } + + case H2: { + return H2DataType.OTHER.getTypeName(); + } + + case HSQLDB: { + + // In HSQLDB 2.2.5, there has been an incompatible INFORMATION_SCHEMA change around the + // ELEMENT_TYPES view. Arrays are now described much more explicitly + if ("ARRAY".equalsIgnoreCase(t)) { + return "OTHER"; + } + + // This is for backwards compatibility + else { + return t.replace(" ARRAY", ""); + } + } + } + + throw new SQLDialectNotSupportedException("getArrayBaseType() is not supported for dialect " + dialect); + } +} \ No newline at end of file diff --git a/jOOQ-codegen/src/main/java/org/jooq/util/GenerationWriter.java b/jOOQ-codegen/src/main/java/org/jooq/util/GenerationWriter.java new file mode 100644 index 00000000000..ab7a57daed8 --- /dev/null +++ b/jOOQ-codegen/src/main/java/org/jooq/util/GenerationWriter.java @@ -0,0 +1,262 @@ +package org.jooq.util; + +import java.io.File; +import java.io.FileNotFoundException; +import java.io.PrintWriter; +import java.math.BigDecimal; +import java.math.BigInteger; +import java.sql.Blob; +import java.sql.Clob; +import java.sql.Date; +import java.sql.Time; +import java.sql.Timestamp; +import java.util.ArrayList; +import java.util.HashSet; +import java.util.List; +import java.util.Set; +import java.util.TreeSet; +import java.util.regex.Matcher; + +import org.jooq.tools.StringUtils; + +/** + * A wrapper for a {@link PrintWriter} + *

+ * This wrapper postpones the actual write to the wrapped {@link PrintWriter} + * until all information about the target Java class is available. This way, the + * import dependencies can be calculated at the end. + * + * @author Lukas Eder + */ +public class GenerationWriter { + + private static final String SUPPRESS_WARNINGS_STATEMENT = "__SUPPRESS_WARNINGS_STATEMENT__"; + private static final String STATIC_INITIALISATION_STATEMENT = "__STATIC_INITIALISATION_STATEMENT__"; + private static final String INITIALISATION_STATEMENT = "__INITIALISATION_STATEMENT__"; + private static final String SERIAL_STATEMENT = "__SERIAL_STATEMENT__"; + + private final PrintWriter writer; + private final StringBuilder sb; + private final List staticInitialisationStatements; + private final List initialisationStatements; + private final Set alreadyPrinted; + private final Set suppressWarnings; + + public GenerationWriter(File file) throws FileNotFoundException { + file.getParentFile().mkdirs(); + + this.writer = new PrintWriter(file); + this.sb = new StringBuilder(); + this.staticInitialisationStatements = new ArrayList(); + this.initialisationStatements = new ArrayList(); + this.alreadyPrinted = new HashSet(); + this.suppressWarnings = new TreeSet(); + } + + public void printStaticInitialisationStatementsPlaceholder() { + println(STATIC_INITIALISATION_STATEMENT); + } + + public void printInitialisationStatementsPlaceholder() { + println(INITIALISATION_STATEMENT); + } + + public void printSuppressWarningsPlaceholder() { + println(SUPPRESS_WARNINGS_STATEMENT); + } + + public void printStaticInitialisationStatement(String statement) { + staticInitialisationStatements.add(statement); + } + + public void printInitialisationStatement(String statement) { + initialisationStatements.add(statement); + } + + public void print(CharSequence string) { + sb.append(string); + } + + public void println(CharSequence string) { + sb.append(string + "\n"); + } + + public void println() { + sb.append("\n"); + } + + public void print(Class clazz) { + sb.append(clazz.getCanonicalName()); + } + + public boolean printOnlyOnce(Object object) { + if (!alreadyPrinted.contains(object)) { + alreadyPrinted.add(object); + return true; + } + + return false; + } + + public void printSerial() { + println(); + println("\tprivate static final long serialVersionUID = " + SERIAL_STATEMENT + ";"); + } + + public void close() { + String string = sb.toString(); + + StringBuilder staticInits = new StringBuilder(); + StringBuilder inits = new StringBuilder(); + StringBuilder warnings = new StringBuilder(); + + boolean hasStaticInits = false; + boolean hasInits = false; + + for (String statement : staticInitialisationStatements) { + if (!StringUtils.isBlank(statement)) { + hasStaticInits = true; + break; + } + } + + for (String statement : initialisationStatements) { + if (!StringUtils.isBlank(statement)) { + hasInits = true; + break; + } + } + + if (hasStaticInits) { + staticInits.append("\n"); + staticInits.append("\t/*\n"); + staticInits.append("\t * static initialiser\n"); + staticInits.append("\t */\n"); + staticInits.append("\tstatic {\n"); + for (String statement : staticInitialisationStatements) { + staticInits.append("\t\t" + statement + "\n"); + } + staticInits.append("\t}\n"); + } + + if (hasInits) { + inits.append("\n"); + inits.append("\t/*\n"); + inits.append("\t * instance initialiser\n"); + inits.append("\t */\n"); + inits.append("\t{\n"); + for (String statement : initialisationStatements) { + inits.append("\t\t" + statement + "\n"); + } + inits.append("\t}\n"); + } + + if (!suppressWarnings.isEmpty()) { + warnings.append("@SuppressWarnings({"); + + String separator = ""; + for (String warning : suppressWarnings) { + warnings.append(separator); + warnings.append("\""); + warnings.append(warning); + warnings.append("\""); + + separator = ", "; + } + + warnings.append("})\n"); + } + + string = string.replaceAll(STATIC_INITIALISATION_STATEMENT + "\\n", + Matcher.quoteReplacement(staticInits.toString())); + string = string.replaceAll(INITIALISATION_STATEMENT + "\\n", + Matcher.quoteReplacement(inits.toString())); + string = string.replaceAll(SUPPRESS_WARNINGS_STATEMENT + "\\n", + Matcher.quoteReplacement(warnings.toString())); + string = string.replaceAll(SERIAL_STATEMENT, + Matcher.quoteReplacement(String.valueOf(string.hashCode()))); + + writer.append(string); + writer.close(); + } + + public void printNewJavaObject(String type, Object value) { + print(getNewJavaObject(type, value)); + } + + private String getNewJavaObject(String type, Object value) { + if (value == null) { + return "null"; + } + + if (type == Blob.class.getName()) { + // Not supported + } + else if (type == Boolean.class.getName()) { + return Boolean.toString(getIsTrue(String.valueOf(value))); + } + else if (type == BigInteger.class.getName()) { + return "new java.math.BigInteger(\"" + value + "\")"; + } + else if (type == BigDecimal.class.getName()) { + return "new java.math.BigDecimal(\"" + value + "\")"; + } + else if (type == Byte.class.getName()) { + return "(byte) " + value; + } + else if (type == byte[].class.getName()) { + // Not supported + } + else if (type == Clob.class.getName()) { + // Not supported + } + else if (type == Date.class.getName()) { + return "new java.sql.Date(" + ((Date) value).getTime() + "L)"; + } + else if (type == Double.class.getName()) { + return Double.toString(Double.valueOf("" + value)); + } + else if (type == Float.class.getName()) { + return Float.toString(Float.valueOf("" + value)) + "f"; + } + else if (type == Integer.class.getName()) { + return Integer.toString(Integer.valueOf("" + value)); + } + else if (type == Long.class.getName()) { + return Long.toString(Long.valueOf("" + value)) + "L"; + } + else if (type == Short.class.getName()) { + return "(short) " + value; + } + else if (type == String.class.getName()) { + return "\"" + value.toString().replace("\"", "\\\"") + "\""; + } + else if (type == Time.class.getName()) { + return "new java.sql.Time(" + ((Time) value).getTime() + "L)"; + } + else if (type == Timestamp.class.getName()) { + return "new java.sql.Timestamp(" + ((Timestamp) value).getTime() + "L)"; + } + else { + // Not supported + } + + throw new UnsupportedOperationException("Class " + type + " is not supported"); + } + + private boolean getIsTrue(String string) { + if ("1".equals(string)) { + return true; + } + else if ("true".equalsIgnoreCase(string)) { + return true; + } + else { + return false; + } + } + + public void suppressWarnings(String string) { + suppressWarnings.add(string); + } +} \ No newline at end of file diff --git a/jOOQ-codegen/src/main/java/org/jooq/util/Generator.java b/jOOQ-codegen/src/main/java/org/jooq/util/Generator.java new file mode 100644 index 00000000000..6475e813275 --- /dev/null +++ b/jOOQ-codegen/src/main/java/org/jooq/util/Generator.java @@ -0,0 +1,166 @@ +/** + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com + * All rights reserved. + * + * This software is licensed to you under the Apache License, Version 2.0 + * (the "License"); You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * 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 "jOOQ" 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 COPYRIGHT OWNER 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. + */ + +package org.jooq.util; + +import java.io.IOException; +import java.sql.SQLException; + +import javax.annotation.Generated; + +/** + * The Generator provides a basic interface for java code generation + * + * @author Lukas Eder + */ +public interface Generator { + + /** + * Do the code generation + */ + void generate(Database database) throws SQLException, IOException; + + /** + * Set a naming strategy to this generator + */ + void setStrategy(GeneratorStrategy strategy); + + /** + * Get this generator's underlying naming strategy + */ + GeneratorStrategy getStrategy(); + + /** + * Whether deprecated code should be generated + */ + boolean generateDeprecated(); + + /** + * Whether deprecated code should be generated + */ + void setGenerateDeprecated(boolean generateDeprecated); + + /** + * Whether foreign key relations should be resolved + */ + boolean generateRelations(); + + /** + * Whether foreign key relations should be resolved + */ + void setGenerateRelations(boolean generateRelations); + + /** + * Whether foreign key navigation methods should be generated + */ + boolean generateNavigationMethods(); + + /** + * Whether foreign key navigation methods should be generated + */ + void setGenerateNavigationMethods(boolean generateNavigationMethods); + + /** + * Whether instance fields should be generated (as opposed to static fields) + */ + boolean generateInstanceFields(); + + /** + * Whether instance fields should be generated (as opposed to static fields) + */ + void setGenerateInstanceFields(boolean generateInstanceFields); + + /** + * Whether the {@link Generated} annotation should be generated + */ + boolean generateGeneratedAnnotation(); + + /** + * Whether the {@link Generated} annotation should be generated + */ + void setGenerateGeneratedAnnotation(boolean generateGeneratedAnnotation); + + /** + * Whether POJO's should be generated in addition to records + */ + boolean generatePojos(); + + /** + * Whether POJO's should be generated in addition to records + */ + void setGeneratePojos(boolean generatePojos); + + /** + * Whether TableRecords should be generated in addition to tables + */ + boolean generateRecords(); + + /** + * Whether TableRecords should be generated in addition to tables + */ + void setGenerateRecords(boolean generateRecords); + + /** + * Whether POJO's and records should be annotated with JPA annotations + */ + boolean generateJPAAnnotations(); + + /** + * Whether POJO's and records should be annotated with JPA annotations + */ + void setGenerateJPAAnnotations(boolean generateJPAAnnotations); + + /** + * The target directory + */ + String getTargetDirectory(); + + /** + * Initialise the target directory + */ + void setTargetDirectory(String directory); + + /** + * @return Get the target package for the current configuration + */ + String getTargetPackage(); + + /** + * Initialise the target package name + */ + void setTargetPackage(String packageName); + +} diff --git a/jOOQ-codegen/src/main/java/org/jooq/util/GeneratorStrategy.java b/jOOQ-codegen/src/main/java/org/jooq/util/GeneratorStrategy.java new file mode 100644 index 00000000000..04e0c37caa6 --- /dev/null +++ b/jOOQ-codegen/src/main/java/org/jooq/util/GeneratorStrategy.java @@ -0,0 +1,341 @@ +/** + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com + * All rights reserved. + * + * This software is licensed to you under the Apache License, Version 2.0 + * (the "License"); You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * 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 "jOOQ" 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 COPYRIGHT OWNER 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. + */ +package org.jooq.util; + +import java.io.File; +import java.util.List; + +/** + * A strategy for naming various artefacts generated from {@link Definition}'s + * + * @author Lukas Eder + */ +public interface GeneratorStrategy { + + /** + * The target directory + */ + String getTargetDirectory(); + + /** + * Initialise the target directory + */ + void setTargetDirectory(String directory); + + /** + * @return Get the target package for the current configuration + */ + String getTargetPackage(); + + /** + * Initialise the target package name + */ + void setTargetPackage(String packageName); + + /** + * Whether fields are instance fields (as opposed to static fields) + */ + void setInstanceFields(boolean instanceFields); + + /** + * Whether fields are instance fields (as opposed to static fields) + */ + boolean getInstanceFields(); + + /** + * This is applied to definitions that can result in singleton static and + * instance members. For instance, the singleton instance of a + * {@link TableDefinition} is a java identifier + * + * @return The Java identifier representing this object, e.g. [my_table] + */ + String getJavaIdentifier(Definition definition); + + /** + * This is applied to definitions that can result in singleton static and + * instance members. For instance, the singleton instance of a + * {@link TableDefinition} is a java identifier + * + * @return The Java identifier representing this object, e.g. [my_table] + */ + String getFullJavaIdentifier(Definition definition); + + /** + * This is applied to definitions that can result in setters of a container. + * For example, the definition could be a {@link ColumnDefinition}, the + * container a {@link TableDefinition}. Then this would apply to records and + * POJOs. Also, the definition could be an {@link AttributeDefinition} and + * the container a {@link UDTDefinition} + *

+ * This is the same as calling + * getJavaSetterName(definition, Mode.DEFAULT) + * + * @return The Java setter method name representing this object, e.g. + * [setMyTable] + */ + String getJavaSetterName(Definition definition); + + /** + * This is applied to definitions that can result in setters of a container. + * For example, the definition could be a {@link ColumnDefinition}, the + * container a {@link TableDefinition}. Then this would apply to records and + * POJOs. Also, the definition could be an {@link AttributeDefinition} and + * the container a {@link UDTDefinition} + * + * @return The Java setter method name representing this object, e.g. + * [setMyTable] + */ + String getJavaSetterName(Definition definition, Mode mode); + + /** + * This is applied to definitions that can result in getters of a container. + * For example, the definition could be a {@link ColumnDefinition}, the + * container a {@link TableDefinition}. Then this would apply to records and + * POJOs. Also, the definition could be an {@link AttributeDefinition} and + * the container a {@link UDTDefinition} + *

+ * This is the same as calling + * getJavaGetterName(definition, Mode.DEFAULT) + * + * @return The Java getter method name representing this object, e.g. + * [getMyTable] + */ + String getJavaGetterName(Definition definition); + + /** + * This is applied to definitions that can result in getters of a container. + * For example, the definition could be a {@link ColumnDefinition}, the + * container a {@link TableDefinition}. Then this would apply to records and + * POJOs. Also, the definition could be an {@link AttributeDefinition} and + * the container a {@link UDTDefinition} + * + * @return The Java getter method name representing this object, e.g. + * [getMyTable] + */ + String getJavaGetterName(Definition definition, Mode mode); + + /** + * This is applied to definitions that can result in methods. For example, + * the definition could be a {@link RoutineDefinition} + *

+ * This is the same as calling + * getJavaMethodName(definition, Mode.DEFAULT) + * + * @return The Java method name representing this object, e.g. [myFunction] + */ + String getJavaMethodName(Definition definition); + + /** + * This is applied to definitions that can result in methods. For example, + * the definition could be a {@link RoutineDefinition} + * + * @return The Java method name representing this object, e.g. [myFunction] + */ + String getJavaMethodName(Definition definition, Mode mode); + + /** + * This is the same as calling + * getJavaClassExtends(definition, Mode.DEFAULT) + * + * @return The super class name of the Java class representing this object, + * e.g. [com.example.AbstractPojo]. If this returns + * null or an empty string, then no super class is + * extended. + */ + String getJavaClassExtends(Definition definition); + + /** + * @return The super class name of the Java class representing this object, + * e.g. [com.example.AbstractPojo]. If this returns + * null or an empty string, then no super class is + * extended. + */ + String getJavaClassExtends(Definition definition, Mode mode); + + /** + * This is the same as calling + * getJavaClassImplements(definition, Mode.DEFAULT) + * + * @return The implemented interface names of the Java class name + * representing this object, e.g. [com.example.Pojo] If this returns + * null or an empty list, then no interfaces are + * implemented. + */ + List getJavaClassImplements(Definition definition); + + /** + * @return The implemented interface names of the Java class name + * representing this object, e.g. [com.example.Pojo]. If this + * returns null or an empty list, then no interfaces + * are implemented. + */ + List getJavaClassImplements(Definition definition, Mode mode); + + /** + * This is the same as calling + * getJavaClassName(definition, Mode.DEFAULT) + * + * @return The Java class name representing this object, e.g. [MyTable] + */ + String getJavaClassName(Definition definition); + + /** + * @return The Java class name representing this object, e.g. + * [MyTableSuffix] + */ + String getJavaClassName(Definition definition, Mode mode); + + /** + * This is the same as calling + * getJavaPackageName(definition, Mode.DEFAULT) + * + * @return The Java package name of this object, e.g. [org.jooq.generated] + */ + String getJavaPackageName(Definition definition); + + /** + * @return The Java package name of this object, e.g. [org.jooq.generated] + */ + String getJavaPackageName(Definition definition, Mode mode); + + /** + * The "java member name" is applied where a definition is used as a member + * (for POJOs) or as a method argument (for setters). Example definitions + * are + *

    + *
  • {@link ColumnDefinition}
  • + *
  • {@link ParameterDefinition}
  • + *
  • {@link AttributeDefinition}
  • + *
+ * This is the same as calling + * getJavaMemberName(definition, Mode.DEFAULT) + * + * @return The Java class name representing this object, starting with a + * lower case character, e.g. [myTable] + */ + String getJavaMemberName(Definition definition); + + /** + * The "java member name" is applied where a definition is used as a member + * (for POJOs) or as a method argument (for setters). Example definitions + * are + *
    + *
  • {@link ColumnDefinition}
  • + *
  • {@link ParameterDefinition}
  • + *
  • {@link AttributeDefinition}
  • + *
+ * + * @return The Java class name representing this object, starting with a + * lower case character, e.g. [myTableSuffix] + */ + String getJavaMemberName(Definition definition, Mode mode); + + /** + * @return The full Java class name representing this object, e.g. + * [org.jooq.generated.MyTable] + */ + String getFullJavaClassName(Definition definition); + + /** + * This is the same as calling + * getFullJavaClassName(definition, Mode.DEFAULT) + * + * @return The full Java class name representing this object, e.g. + * [org.jooq.generated.MyTable][suffix] + */ + String getFullJavaClassName(Definition definition, Mode mode); + + /** + * @return The Java class file name representing this object, e.g. + * [MyTable.java] + */ + String getFileName(Definition definition); + + /** + * @return The Java class file name representing this object, e.g. + * [MyTableSuffix.java] + */ + String getFileName(Definition definition, Mode mode); + + /** + * @return The Java class file name representing this object, e.g. + * [C:\org\jooq\generated\MyTable.java] + */ + File getFile(Definition definition); + + /** + * @return The Java class file name representing this object, e.g. + * [C:\org\jooq\generated\MyTableSuffix.java] + */ + File getFile(Definition definition, Mode mode); + + /** + * The "mode" by which an artefact should be named + */ + enum Mode { + + /** + * The default mode. This is used when any {@link Definition}'s meta + * type is being rendered. + */ + DEFAULT, + + /** + * The record mode. This is used when a {@link TableDefinition} or a + * {@link UDTDefinition}'s record class is being rendered. + */ + RECORD, + + /** + * The pojo mode. This is used when a {@link TableDefinition}'s pojo + * class is being rendered + */ + POJO, + + /** + * The enum mode. This is used when a {@link EnumDefinition}'s class is + * being rendered + */ + ENUM, + + /** + * The factory mode. This is used when a {@link SchemaDefinition}'s + * factory class is being rendered + */ + FACTORY, + + } +} diff --git a/jOOQ-codegen/src/main/java/org/jooq/util/GeneratorStrategyWrapper.java b/jOOQ-codegen/src/main/java/org/jooq/util/GeneratorStrategyWrapper.java new file mode 100644 index 00000000000..e325caa2322 --- /dev/null +++ b/jOOQ-codegen/src/main/java/org/jooq/util/GeneratorStrategyWrapper.java @@ -0,0 +1,269 @@ +/** + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com + * All rights reserved. + * + * This software is licensed to you under the Apache License, Version 2.0 + * (the "License"); You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * 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 "jOOQ" 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 COPYRIGHT OWNER 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. + */ +package org.jooq.util; + +import static org.jooq.util.GenerationUtil.convertToJavaIdentifier; + +import java.lang.reflect.Method; +import java.util.Collections; +import java.util.HashMap; +import java.util.HashSet; +import java.util.List; +import java.util.Map; +import java.util.Set; + +import org.jooq.Record; +import org.jooq.impl.TableRecordImpl; +import org.jooq.impl.UDTRecordImpl; +import org.jooq.impl.UpdatableRecordImpl; +import org.jooq.tools.JooqLogger; +import org.jooq.tools.StringUtils; + +/** + * A wrapper for generator strategies preventing some common compilation errors + * resulting from badly generated source code + * + * @author Lukas Eder + */ +class GeneratorStrategyWrapper extends AbstractGeneratorStrategy { + + private static final JooqLogger log = JooqLogger.getLogger(GeneratorStrategyWrapper.class); + + private final Map, Set> reservedColumns = new HashMap, Set>(); + + final Generator generator; + final GeneratorStrategy delegate; + + GeneratorStrategyWrapper(Generator generator, GeneratorStrategy delegate) { + this.generator = generator; + this.delegate = delegate; + } + + @Override + public String getTargetDirectory() { + return delegate.getTargetDirectory(); + } + + @Override + public void setTargetDirectory(String directory) { + delegate.setTargetDirectory(directory); + } + + @Override + public String getTargetPackage() { + return delegate.getTargetPackage(); + } + + @Override + public void setTargetPackage(String packageName) { + delegate.setTargetPackage(packageName); + } + + @Override + public void setInstanceFields(boolean instanceFields) { + delegate.setInstanceFields(instanceFields); + } + + @Override + public boolean getInstanceFields() { + return delegate.getInstanceFields(); + } + + @Override + public String getJavaIdentifier(Definition definition) { + String identifier = convertToJavaIdentifier(delegate.getJavaIdentifier(definition)); + + // [#1212] Don't trust custom strategies and disambiguate identifiers here + if (definition instanceof ColumnDefinition || + definition instanceof AttributeDefinition) { + + TypedElementDefinition e = (TypedElementDefinition) definition; + + if (identifier.equals(getJavaIdentifier(e.getContainer()))) { + return identifier + "_"; + } + } + + return identifier; + } + + @Override + public String getJavaSetterName(Definition definition, Mode mode) { + return disambiguateMethod(definition, + convertToJavaIdentifier(delegate.getJavaSetterName(definition, mode))); + } + + @Override + public String getJavaGetterName(Definition definition, Mode mode) { + return disambiguateMethod(definition, + convertToJavaIdentifier(delegate.getJavaGetterName(definition, mode))); + } + + @Override + public String getJavaMethodName(Definition definition, Mode mode) { + return disambiguateMethod(definition, + convertToJavaIdentifier(delegate.getJavaMethodName(definition, mode))); + } + + /** + * [#182] Method name disambiguation is important to avoid name clashes due + * to pre-existing getters / setters in super classes + */ + private String disambiguateMethod(Definition definition, String method) { + Set reserved = null; + + if (definition instanceof AttributeDefinition) { + reserved = reservedColumns(UDTRecordImpl.class); + } + else if (definition instanceof ColumnDefinition) { + if (((ColumnDefinition) definition).getContainer().getMainUniqueKey() != null) { + reserved = reservedColumns(UpdatableRecordImpl.class); + } + else { + reserved = reservedColumns(TableRecordImpl.class); + } + } + + if (reserved != null) { + if (reserved.contains(method)) { + return method + "_"; + } + + // If this is the setter, check if the getter needed disambiguation + // This ensures that getters and setters have the same name + if (method.startsWith("set")) { + String base = method.substring(3); + + if (reserved.contains("get" + base) || reserved.contains("is" + base)) { + return method + "_"; + } + } + } + + return method; + } + + /** + * [#182] Find all column names that are reserved because of the extended + * class hierarchy of a generated class + */ + private Set reservedColumns(Class clazz) { + if (clazz == null) { + return Collections.emptySet(); + } + + Set result = reservedColumns.get(clazz); + + if (result == null) { + result = new HashSet(); + reservedColumns.put(clazz, result); + + // Recurse up in class hierarchy + result.addAll(reservedColumns(clazz.getSuperclass())); + for (Class c : clazz.getInterfaces()) { + result.addAll(reservedColumns(c)); + } + + for (Method m : clazz.getDeclaredMethods()) { + String name = m.getName(); + + if (name.startsWith("get") && m.getParameterTypes().length == 0) { + result.add(name); + } + } + } + + return result; + } + + @Override + public String getJavaClassExtends(Definition definition, Mode mode) { + + // [#1243] Only POJO mode can accept super classes + return delegate.getJavaClassExtends(definition, mode); + } + + @Override + public List getJavaClassImplements(Definition definition, Mode mode) { + + // [#1243] All generation modes can accept interfaces + return delegate.getJavaClassImplements(definition, mode); + } + + @Override + public String getJavaClassName(Definition definition, Mode mode) { + + // [#1150] Intercept Mode.RECORD calls for tables + if (!generator.generateRecords() && mode == Mode.RECORD && definition instanceof TableDefinition) { + return Record.class.getSimpleName(); + } + + String className = convertToJavaIdentifier(delegate.getJavaClassName(definition, mode)); + + if (mode == Mode.FACTORY) { + String alternative = convertToJavaIdentifier(delegate.getJavaClassName(definition, Mode.DEFAULT)); + + if (className.equalsIgnoreCase(alternative)) { + log.warn("Configuration problem", "Factory has the same name as Schema, forcing Factory suffix. Consider correcting your strategy"); + className += "Factory"; + } + } + + return className; + } + + @Override + public String getJavaPackageName(Definition definition, Mode mode) { + + // [#1150] Intercept Mode.RECORD calls for tables + if (!generator.generateRecords() && mode == Mode.RECORD && definition instanceof TableDefinition) { + return Record.class.getPackage().getName(); + } + + String[] split = delegate.getJavaPackageName(definition, mode).split("\\."); + + for (int i = 0; i < split.length; i++) { + split[i] = convertToJavaIdentifier(split[i]); + } + + return StringUtils.join(split, "."); + } + + @Override + public String getJavaMemberName(Definition definition, Mode mode) { + return convertToJavaIdentifier(delegate.getJavaMemberName(definition, mode)); + } +} diff --git a/jOOQ-codegen/src/main/resources/META-INF/LICENSE.txt b/jOOQ-codegen/src/main/resources/META-INF/LICENSE.txt new file mode 100644 index 00000000000..fd12d44afa0 --- /dev/null +++ b/jOOQ-codegen/src/main/resources/META-INF/LICENSE.txt @@ -0,0 +1,33 @@ + Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com + All rights reserved. + + This software is licensed to you under the Apache License, Version 2.0 + (the "License"); You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + 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 "jOOQ" 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 COPYRIGHT OWNER 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. \ No newline at end of file diff --git a/jOOQ-codegen/src/main/resources/META-INF/README.txt b/jOOQ-codegen/src/main/resources/META-INF/README.txt new file mode 100644 index 00000000000..3e6e227e05b --- /dev/null +++ b/jOOQ-codegen/src/main/resources/META-INF/README.txt @@ -0,0 +1,2 @@ +Thanks for downloading jOOQ. +Please visit http://www.jooq.org for more information. \ No newline at end of file diff --git a/jOOQ-console/.classpath b/jOOQ-console/.classpath new file mode 100644 index 00000000000..6f8b08c3b66 --- /dev/null +++ b/jOOQ-console/.classpath @@ -0,0 +1,9 @@ + + + + + + + + + diff --git a/jOOQ-console/.gitignore b/jOOQ-console/.gitignore new file mode 100644 index 00000000000..ea8c4bf7f35 --- /dev/null +++ b/jOOQ-console/.gitignore @@ -0,0 +1 @@ +/target diff --git a/jOOQ-console/.project b/jOOQ-console/.project new file mode 100644 index 00000000000..39fe62bd0f2 --- /dev/null +++ b/jOOQ-console/.project @@ -0,0 +1,23 @@ + + + jOOQ-console + + + + + + org.eclipse.jdt.core.javabuilder + + + + + org.maven.ide.eclipse.maven2Builder + + + + + + org.maven.ide.eclipse.maven2Nature + org.eclipse.jdt.core.javanature + + diff --git a/jOOQ-console/.settings/org.eclipse.jdt.core.prefs b/jOOQ-console/.settings/org.eclipse.jdt.core.prefs new file mode 100644 index 00000000000..eea4bca85e9 --- /dev/null +++ b/jOOQ-console/.settings/org.eclipse.jdt.core.prefs @@ -0,0 +1,350 @@ +#Sat Nov 05 12:53:40 CET 2011 +eclipse.preferences.version=1 +org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled +org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.6 +org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve +org.eclipse.jdt.core.compiler.compliance=1.6 +org.eclipse.jdt.core.compiler.debug.lineNumber=generate +org.eclipse.jdt.core.compiler.debug.localVariable=generate +org.eclipse.jdt.core.compiler.debug.sourceFile=generate +org.eclipse.jdt.core.compiler.problem.annotationSuperInterface=warning +org.eclipse.jdt.core.compiler.problem.assertIdentifier=error +org.eclipse.jdt.core.compiler.problem.autoboxing=ignore +org.eclipse.jdt.core.compiler.problem.comparingIdentical=warning +org.eclipse.jdt.core.compiler.problem.deadCode=warning +org.eclipse.jdt.core.compiler.problem.deprecation=warning +org.eclipse.jdt.core.compiler.problem.deprecationInDeprecatedCode=disabled +org.eclipse.jdt.core.compiler.problem.deprecationWhenOverridingDeprecatedMethod=disabled +org.eclipse.jdt.core.compiler.problem.discouragedReference=warning +org.eclipse.jdt.core.compiler.problem.emptyStatement=ignore +org.eclipse.jdt.core.compiler.problem.enumIdentifier=error +org.eclipse.jdt.core.compiler.problem.fallthroughCase=ignore +org.eclipse.jdt.core.compiler.problem.fatalOptionalError=disabled +org.eclipse.jdt.core.compiler.problem.fieldHiding=warning +org.eclipse.jdt.core.compiler.problem.finalParameterBound=warning +org.eclipse.jdt.core.compiler.problem.finallyBlockNotCompletingNormally=warning +org.eclipse.jdt.core.compiler.problem.forbiddenReference=warning +org.eclipse.jdt.core.compiler.problem.hiddenCatchBlock=warning +org.eclipse.jdt.core.compiler.problem.incompatibleNonInheritedInterfaceMethod=warning +org.eclipse.jdt.core.compiler.problem.incompleteEnumSwitch=ignore +org.eclipse.jdt.core.compiler.problem.indirectStaticAccess=ignore +org.eclipse.jdt.core.compiler.problem.localVariableHiding=warning +org.eclipse.jdt.core.compiler.problem.methodWithConstructorName=warning +org.eclipse.jdt.core.compiler.problem.missingDeprecatedAnnotation=warning +org.eclipse.jdt.core.compiler.problem.missingHashCodeMethod=ignore +org.eclipse.jdt.core.compiler.problem.missingOverrideAnnotation=warning +org.eclipse.jdt.core.compiler.problem.missingOverrideAnnotationForInterfaceMethodImplementation=enabled +org.eclipse.jdt.core.compiler.problem.missingSerialVersion=warning +org.eclipse.jdt.core.compiler.problem.missingSynchronizedOnInheritedMethod=warning +org.eclipse.jdt.core.compiler.problem.noEffectAssignment=warning +org.eclipse.jdt.core.compiler.problem.noImplicitStringConversion=warning +org.eclipse.jdt.core.compiler.problem.nonExternalizedStringLiteral=ignore +org.eclipse.jdt.core.compiler.problem.nullReference=error +org.eclipse.jdt.core.compiler.problem.overridingPackageDefaultMethod=warning +org.eclipse.jdt.core.compiler.problem.parameterAssignment=ignore +org.eclipse.jdt.core.compiler.problem.possibleAccidentalBooleanAssignment=warning +org.eclipse.jdt.core.compiler.problem.potentialNullReference=warning +org.eclipse.jdt.core.compiler.problem.rawTypeReference=warning +org.eclipse.jdt.core.compiler.problem.redundantNullCheck=warning +org.eclipse.jdt.core.compiler.problem.redundantSuperinterface=warning +org.eclipse.jdt.core.compiler.problem.specialParameterHidingField=disabled +org.eclipse.jdt.core.compiler.problem.staticAccessReceiver=warning +org.eclipse.jdt.core.compiler.problem.suppressOptionalErrors=disabled +org.eclipse.jdt.core.compiler.problem.suppressWarnings=enabled +org.eclipse.jdt.core.compiler.problem.syntheticAccessEmulation=ignore +org.eclipse.jdt.core.compiler.problem.typeParameterHiding=warning +org.eclipse.jdt.core.compiler.problem.uncheckedTypeOperation=warning +org.eclipse.jdt.core.compiler.problem.undocumentedEmptyBlock=ignore +org.eclipse.jdt.core.compiler.problem.unhandledWarningToken=warning +org.eclipse.jdt.core.compiler.problem.unnecessaryElse=ignore +org.eclipse.jdt.core.compiler.problem.unnecessaryTypeCheck=warning +org.eclipse.jdt.core.compiler.problem.unqualifiedFieldAccess=ignore +org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownException=warning +org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionExemptExceptionAndThrowable=enabled +org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionIncludeDocCommentReference=enabled +org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionWhenOverriding=disabled +org.eclipse.jdt.core.compiler.problem.unusedImport=warning +org.eclipse.jdt.core.compiler.problem.unusedLabel=warning +org.eclipse.jdt.core.compiler.problem.unusedLocal=warning +org.eclipse.jdt.core.compiler.problem.unusedObjectAllocation=ignore +org.eclipse.jdt.core.compiler.problem.unusedParameter=warning +org.eclipse.jdt.core.compiler.problem.unusedParameterIncludeDocCommentReference=enabled +org.eclipse.jdt.core.compiler.problem.unusedParameterWhenImplementingAbstract=disabled +org.eclipse.jdt.core.compiler.problem.unusedParameterWhenOverridingConcrete=disabled +org.eclipse.jdt.core.compiler.problem.unusedPrivateMember=warning +org.eclipse.jdt.core.compiler.problem.unusedWarningToken=warning +org.eclipse.jdt.core.compiler.problem.varargsArgumentNeedCast=warning +org.eclipse.jdt.core.compiler.source=1.6 +org.eclipse.jdt.core.formatter.align_type_members_on_columns=true +org.eclipse.jdt.core.formatter.alignment_for_arguments_in_allocation_expression=16 +org.eclipse.jdt.core.formatter.alignment_for_arguments_in_annotation=0 +org.eclipse.jdt.core.formatter.alignment_for_arguments_in_enum_constant=16 +org.eclipse.jdt.core.formatter.alignment_for_arguments_in_explicit_constructor_call=16 +org.eclipse.jdt.core.formatter.alignment_for_arguments_in_method_invocation=16 +org.eclipse.jdt.core.formatter.alignment_for_arguments_in_qualified_allocation_expression=16 +org.eclipse.jdt.core.formatter.alignment_for_assignment=0 +org.eclipse.jdt.core.formatter.alignment_for_binary_expression=16 +org.eclipse.jdt.core.formatter.alignment_for_compact_if=16 +org.eclipse.jdt.core.formatter.alignment_for_conditional_expression=80 +org.eclipse.jdt.core.formatter.alignment_for_enum_constants=49 +org.eclipse.jdt.core.formatter.alignment_for_expressions_in_array_initializer=16 +org.eclipse.jdt.core.formatter.alignment_for_method_declaration=0 +org.eclipse.jdt.core.formatter.alignment_for_multiple_fields=16 +org.eclipse.jdt.core.formatter.alignment_for_parameters_in_constructor_declaration=16 +org.eclipse.jdt.core.formatter.alignment_for_parameters_in_method_declaration=16 +org.eclipse.jdt.core.formatter.alignment_for_selector_in_method_invocation=16 +org.eclipse.jdt.core.formatter.alignment_for_superclass_in_type_declaration=16 +org.eclipse.jdt.core.formatter.alignment_for_superinterfaces_in_enum_declaration=16 +org.eclipse.jdt.core.formatter.alignment_for_superinterfaces_in_type_declaration=16 +org.eclipse.jdt.core.formatter.alignment_for_throws_clause_in_constructor_declaration=16 +org.eclipse.jdt.core.formatter.alignment_for_throws_clause_in_method_declaration=16 +org.eclipse.jdt.core.formatter.blank_lines_after_imports=1 +org.eclipse.jdt.core.formatter.blank_lines_after_package=1 +org.eclipse.jdt.core.formatter.blank_lines_before_field=0 +org.eclipse.jdt.core.formatter.blank_lines_before_first_class_body_declaration=0 +org.eclipse.jdt.core.formatter.blank_lines_before_imports=1 +org.eclipse.jdt.core.formatter.blank_lines_before_member_type=1 +org.eclipse.jdt.core.formatter.blank_lines_before_method=1 +org.eclipse.jdt.core.formatter.blank_lines_before_new_chunk=1 +org.eclipse.jdt.core.formatter.blank_lines_before_package=0 +org.eclipse.jdt.core.formatter.blank_lines_between_import_groups=1 +org.eclipse.jdt.core.formatter.blank_lines_between_type_declarations=1 +org.eclipse.jdt.core.formatter.brace_position_for_annotation_type_declaration=end_of_line +org.eclipse.jdt.core.formatter.brace_position_for_anonymous_type_declaration=end_of_line +org.eclipse.jdt.core.formatter.brace_position_for_array_initializer=end_of_line +org.eclipse.jdt.core.formatter.brace_position_for_block=end_of_line +org.eclipse.jdt.core.formatter.brace_position_for_block_in_case=end_of_line +org.eclipse.jdt.core.formatter.brace_position_for_constructor_declaration=end_of_line +org.eclipse.jdt.core.formatter.brace_position_for_enum_constant=end_of_line +org.eclipse.jdt.core.formatter.brace_position_for_enum_declaration=end_of_line +org.eclipse.jdt.core.formatter.brace_position_for_method_declaration=end_of_line +org.eclipse.jdt.core.formatter.brace_position_for_switch=end_of_line +org.eclipse.jdt.core.formatter.brace_position_for_type_declaration=end_of_line +org.eclipse.jdt.core.formatter.comment.clear_blank_lines_in_block_comment=true +org.eclipse.jdt.core.formatter.comment.clear_blank_lines_in_javadoc_comment=true +org.eclipse.jdt.core.formatter.comment.format_block_comments=true +org.eclipse.jdt.core.formatter.comment.format_header=false +org.eclipse.jdt.core.formatter.comment.format_html=true +org.eclipse.jdt.core.formatter.comment.format_javadoc_comments=true +org.eclipse.jdt.core.formatter.comment.format_line_comments=true +org.eclipse.jdt.core.formatter.comment.format_source_code=true +org.eclipse.jdt.core.formatter.comment.indent_parameter_description=true +org.eclipse.jdt.core.formatter.comment.indent_root_tags=true +org.eclipse.jdt.core.formatter.comment.insert_new_line_before_root_tags=insert +org.eclipse.jdt.core.formatter.comment.insert_new_line_for_parameter=do not insert +org.eclipse.jdt.core.formatter.comment.line_length=80 +org.eclipse.jdt.core.formatter.comment.new_lines_at_block_boundaries=true +org.eclipse.jdt.core.formatter.comment.new_lines_at_javadoc_boundaries=true +org.eclipse.jdt.core.formatter.comment.preserve_white_space_between_code_and_line_comments=false +org.eclipse.jdt.core.formatter.compact_else_if=true +org.eclipse.jdt.core.formatter.continuation_indentation=1 +org.eclipse.jdt.core.formatter.continuation_indentation_for_array_initializer=1 +org.eclipse.jdt.core.formatter.disabling_tag=@formatter\:off +org.eclipse.jdt.core.formatter.enabling_tag=@formatter\:on +org.eclipse.jdt.core.formatter.format_guardian_clause_on_one_line=false +org.eclipse.jdt.core.formatter.format_line_comment_starting_on_first_column=true +org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_annotation_declaration_header=true +org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_enum_constant_header=true +org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_enum_declaration_header=true +org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_type_header=true +org.eclipse.jdt.core.formatter.indent_breaks_compare_to_cases=true +org.eclipse.jdt.core.formatter.indent_empty_lines=false +org.eclipse.jdt.core.formatter.indent_statements_compare_to_block=true +org.eclipse.jdt.core.formatter.indent_statements_compare_to_body=true +org.eclipse.jdt.core.formatter.indent_switchstatements_compare_to_cases=true +org.eclipse.jdt.core.formatter.indent_switchstatements_compare_to_switch=true +org.eclipse.jdt.core.formatter.indentation.size=4 +org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_field=insert +org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_local_variable=insert +org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_member=insert +org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_method=insert +org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_package=insert +org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_parameter=do not insert +org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_type=insert +org.eclipse.jdt.core.formatter.insert_new_line_after_label=do not insert +org.eclipse.jdt.core.formatter.insert_new_line_after_opening_brace_in_array_initializer=do not insert +org.eclipse.jdt.core.formatter.insert_new_line_at_end_of_file_if_missing=insert +org.eclipse.jdt.core.formatter.insert_new_line_before_catch_in_try_statement=insert +org.eclipse.jdt.core.formatter.insert_new_line_before_closing_brace_in_array_initializer=do not insert +org.eclipse.jdt.core.formatter.insert_new_line_before_else_in_if_statement=insert +org.eclipse.jdt.core.formatter.insert_new_line_before_finally_in_try_statement=insert +org.eclipse.jdt.core.formatter.insert_new_line_before_while_in_do_statement=insert +org.eclipse.jdt.core.formatter.insert_new_line_in_empty_annotation_declaration=do not insert +org.eclipse.jdt.core.formatter.insert_new_line_in_empty_anonymous_type_declaration=do not insert +org.eclipse.jdt.core.formatter.insert_new_line_in_empty_block=do not insert +org.eclipse.jdt.core.formatter.insert_new_line_in_empty_enum_constant=do not insert +org.eclipse.jdt.core.formatter.insert_new_line_in_empty_enum_declaration=do not insert +org.eclipse.jdt.core.formatter.insert_new_line_in_empty_method_body=do not insert +org.eclipse.jdt.core.formatter.insert_new_line_in_empty_type_declaration=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_and_in_type_parameter=insert +org.eclipse.jdt.core.formatter.insert_space_after_assignment_operator=insert +org.eclipse.jdt.core.formatter.insert_space_after_at_in_annotation=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_at_in_annotation_type_declaration=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_binary_operator=insert +org.eclipse.jdt.core.formatter.insert_space_after_closing_angle_bracket_in_type_arguments=insert +org.eclipse.jdt.core.formatter.insert_space_after_closing_angle_bracket_in_type_parameters=insert +org.eclipse.jdt.core.formatter.insert_space_after_closing_brace_in_block=insert +org.eclipse.jdt.core.formatter.insert_space_after_closing_paren_in_cast=insert +org.eclipse.jdt.core.formatter.insert_space_after_colon_in_assert=insert +org.eclipse.jdt.core.formatter.insert_space_after_colon_in_case=insert +org.eclipse.jdt.core.formatter.insert_space_after_colon_in_conditional=insert +org.eclipse.jdt.core.formatter.insert_space_after_colon_in_for=insert +org.eclipse.jdt.core.formatter.insert_space_after_colon_in_labeled_statement=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_allocation_expression=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_annotation=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_array_initializer=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_constructor_declaration_parameters=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_constructor_declaration_throws=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_enum_constant_arguments=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_enum_declarations=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_explicitconstructorcall_arguments=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_for_increments=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_for_inits=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_method_declaration_parameters=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_method_declaration_throws=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_method_invocation_arguments=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_multiple_field_declarations=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_multiple_local_declarations=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_parameterized_type_reference=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_superinterfaces=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_type_arguments=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_type_parameters=insert +org.eclipse.jdt.core.formatter.insert_space_after_ellipsis=insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_parameterized_type_reference=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_type_arguments=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_type_parameters=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_brace_in_array_initializer=insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_bracket_in_array_allocation_expression=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_bracket_in_array_reference=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_annotation=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_cast=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_catch=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_constructor_declaration=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_enum_constant=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_for=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_if=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_method_declaration=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_method_invocation=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_parenthesized_expression=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_switch=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_synchronized=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_while=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_postfix_operator=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_prefix_operator=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_question_in_conditional=insert +org.eclipse.jdt.core.formatter.insert_space_after_question_in_wildcard=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_semicolon_in_for=insert +org.eclipse.jdt.core.formatter.insert_space_after_unary_operator=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_and_in_type_parameter=insert +org.eclipse.jdt.core.formatter.insert_space_before_assignment_operator=insert +org.eclipse.jdt.core.formatter.insert_space_before_at_in_annotation_type_declaration=insert +org.eclipse.jdt.core.formatter.insert_space_before_binary_operator=insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_angle_bracket_in_parameterized_type_reference=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_angle_bracket_in_type_arguments=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_angle_bracket_in_type_parameters=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_brace_in_array_initializer=insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_bracket_in_array_allocation_expression=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_bracket_in_array_reference=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_annotation=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_cast=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_catch=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_constructor_declaration=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_enum_constant=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_for=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_if=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_method_declaration=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_method_invocation=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_parenthesized_expression=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_switch=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_synchronized=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_while=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_colon_in_assert=insert +org.eclipse.jdt.core.formatter.insert_space_before_colon_in_case=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_colon_in_conditional=insert +org.eclipse.jdt.core.formatter.insert_space_before_colon_in_default=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_colon_in_for=insert +org.eclipse.jdt.core.formatter.insert_space_before_colon_in_labeled_statement=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_allocation_expression=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_annotation=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_array_initializer=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_constructor_declaration_parameters=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_constructor_declaration_throws=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_enum_constant_arguments=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_enum_declarations=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_explicitconstructorcall_arguments=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_for_increments=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_for_inits=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_method_declaration_parameters=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_method_declaration_throws=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_method_invocation_arguments=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_multiple_field_declarations=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_multiple_local_declarations=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_parameterized_type_reference=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_superinterfaces=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_type_arguments=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_type_parameters=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_ellipsis=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_parameterized_type_reference=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_type_arguments=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_type_parameters=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_annotation_type_declaration=insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_anonymous_type_declaration=insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_array_initializer=insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_block=insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_constructor_declaration=insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_enum_constant=insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_enum_declaration=insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_method_declaration=insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_switch=insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_type_declaration=insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_bracket_in_array_allocation_expression=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_bracket_in_array_reference=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_bracket_in_array_type_reference=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_annotation=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_annotation_type_member_declaration=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_catch=insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_constructor_declaration=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_enum_constant=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_for=insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_if=insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_method_declaration=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_method_invocation=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_parenthesized_expression=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_switch=insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_synchronized=insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_while=insert +org.eclipse.jdt.core.formatter.insert_space_before_parenthesized_expression_in_return=insert +org.eclipse.jdt.core.formatter.insert_space_before_parenthesized_expression_in_throw=insert +org.eclipse.jdt.core.formatter.insert_space_before_postfix_operator=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_prefix_operator=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_question_in_conditional=insert +org.eclipse.jdt.core.formatter.insert_space_before_question_in_wildcard=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_semicolon=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_semicolon_in_for=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_unary_operator=do not insert +org.eclipse.jdt.core.formatter.insert_space_between_brackets_in_array_type_reference=do not insert +org.eclipse.jdt.core.formatter.insert_space_between_empty_braces_in_array_initializer=do not insert +org.eclipse.jdt.core.formatter.insert_space_between_empty_brackets_in_array_allocation_expression=do not insert +org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_annotation_type_member_declaration=do not insert +org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_constructor_declaration=do not insert +org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_enum_constant=do not insert +org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_method_declaration=do not insert +org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_method_invocation=do not insert +org.eclipse.jdt.core.formatter.join_lines_in_comments=true +org.eclipse.jdt.core.formatter.join_wrapped_lines=true +org.eclipse.jdt.core.formatter.keep_else_statement_on_same_line=false +org.eclipse.jdt.core.formatter.keep_empty_array_initializer_on_one_line=false +org.eclipse.jdt.core.formatter.keep_imple_if_on_one_line=false +org.eclipse.jdt.core.formatter.keep_then_statement_on_same_line=false +org.eclipse.jdt.core.formatter.lineSplit=120 +org.eclipse.jdt.core.formatter.never_indent_block_comments_on_first_column=false +org.eclipse.jdt.core.formatter.never_indent_line_comments_on_first_column=false +org.eclipse.jdt.core.formatter.number_of_blank_lines_at_beginning_of_method_body=0 +org.eclipse.jdt.core.formatter.number_of_empty_lines_to_preserve=1 +org.eclipse.jdt.core.formatter.put_empty_statement_on_new_line=true +org.eclipse.jdt.core.formatter.tabulation.char=space +org.eclipse.jdt.core.formatter.tabulation.size=4 +org.eclipse.jdt.core.formatter.use_on_off_tags=false +org.eclipse.jdt.core.formatter.use_tabs_only_for_leading_indentations=false +org.eclipse.jdt.core.formatter.wrap_before_binary_operator=true +org.eclipse.jdt.core.formatter.wrap_outer_expressions_when_nested=true diff --git a/jOOQ-console/.settings/org.eclipse.jdt.ui.prefs b/jOOQ-console/.settings/org.eclipse.jdt.ui.prefs new file mode 100644 index 00000000000..30d05435664 --- /dev/null +++ b/jOOQ-console/.settings/org.eclipse.jdt.ui.prefs @@ -0,0 +1,116 @@ +#Thu Feb 23 20:01:01 CET 2012 +cleanup.add_default_serial_version_id=false +cleanup.add_generated_serial_version_id=true +cleanup.add_missing_annotations=true +cleanup.add_missing_deprecated_annotations=true +cleanup.add_missing_methods=false +cleanup.add_missing_nls_tags=false +cleanup.add_missing_override_annotations=true +cleanup.add_missing_override_annotations_interface_methods=true +cleanup.add_serial_version_id=true +cleanup.always_use_blocks=true +cleanup.always_use_parentheses_in_expressions=false +cleanup.always_use_this_for_non_static_field_access=true +cleanup.always_use_this_for_non_static_method_access=false +cleanup.convert_to_enhanced_for_loop=false +cleanup.correct_indentation=true +cleanup.format_source_code=false +cleanup.format_source_code_changes_only=false +cleanup.make_local_variable_final=true +cleanup.make_parameters_final=false +cleanup.make_private_fields_final=true +cleanup.make_type_abstract_if_missing_method=false +cleanup.make_variable_declarations_final=false +cleanup.never_use_blocks=false +cleanup.never_use_parentheses_in_expressions=true +cleanup.organize_imports=true +cleanup.qualify_static_field_accesses_with_declaring_class=false +cleanup.qualify_static_member_accesses_through_instances_with_declaring_class=true +cleanup.qualify_static_member_accesses_through_subtypes_with_declaring_class=true +cleanup.qualify_static_member_accesses_with_declaring_class=true +cleanup.qualify_static_method_accesses_with_declaring_class=false +cleanup.remove_private_constructors=true +cleanup.remove_trailing_whitespaces=true +cleanup.remove_trailing_whitespaces_all=true +cleanup.remove_trailing_whitespaces_ignore_empty=false +cleanup.remove_unnecessary_casts=true +cleanup.remove_unnecessary_nls_tags=true +cleanup.remove_unused_imports=true +cleanup.remove_unused_local_variables=false +cleanup.remove_unused_private_fields=true +cleanup.remove_unused_private_members=false +cleanup.remove_unused_private_methods=true +cleanup.remove_unused_private_types=true +cleanup.sort_members=false +cleanup.sort_members_all=false +cleanup.use_blocks=true +cleanup.use_blocks_only_for_return_and_throw=false +cleanup.use_parentheses_in_expressions=false +cleanup.use_this_for_non_static_field_access=false +cleanup.use_this_for_non_static_field_access_only_if_necessary=false +cleanup.use_this_for_non_static_method_access=false +cleanup.use_this_for_non_static_method_access_only_if_necessary=true +cleanup_profile=_jOOQ +cleanup_settings_version=2 +eclipse.preferences.version=1 +editor_save_participant_org.eclipse.jdt.ui.postsavelistener.cleanup=true +formatter_profile=_jOOQ +formatter_settings_version=12 +org.eclipse.jdt.ui.ignorelowercasenames=true +org.eclipse.jdt.ui.importorder=java;javax;org.jooq;org;com; +org.eclipse.jdt.ui.javadoc=false +org.eclipse.jdt.ui.ondemandthreshold=99 +org.eclipse.jdt.ui.staticondemandthreshold=99 +org.eclipse.jdt.ui.text.custom_code_templates= +sp_cleanup.add_default_serial_version_id=true +sp_cleanup.add_generated_serial_version_id=false +sp_cleanup.add_missing_annotations=true +sp_cleanup.add_missing_deprecated_annotations=true +sp_cleanup.add_missing_methods=false +sp_cleanup.add_missing_nls_tags=false +sp_cleanup.add_missing_override_annotations=true +sp_cleanup.add_missing_override_annotations_interface_methods=true +sp_cleanup.add_serial_version_id=false +sp_cleanup.always_use_blocks=true +sp_cleanup.always_use_parentheses_in_expressions=false +sp_cleanup.always_use_this_for_non_static_field_access=false +sp_cleanup.always_use_this_for_non_static_method_access=false +sp_cleanup.convert_to_enhanced_for_loop=false +sp_cleanup.correct_indentation=false +sp_cleanup.format_source_code=false +sp_cleanup.format_source_code_changes_only=false +sp_cleanup.make_local_variable_final=false +sp_cleanup.make_parameters_final=false +sp_cleanup.make_private_fields_final=true +sp_cleanup.make_type_abstract_if_missing_method=false +sp_cleanup.make_variable_declarations_final=false +sp_cleanup.never_use_blocks=false +sp_cleanup.never_use_parentheses_in_expressions=true +sp_cleanup.on_save_use_additional_actions=true +sp_cleanup.organize_imports=true +sp_cleanup.qualify_static_field_accesses_with_declaring_class=false +sp_cleanup.qualify_static_member_accesses_through_instances_with_declaring_class=true +sp_cleanup.qualify_static_member_accesses_through_subtypes_with_declaring_class=true +sp_cleanup.qualify_static_member_accesses_with_declaring_class=false +sp_cleanup.qualify_static_method_accesses_with_declaring_class=false +sp_cleanup.remove_private_constructors=true +sp_cleanup.remove_trailing_whitespaces=true +sp_cleanup.remove_trailing_whitespaces_all=true +sp_cleanup.remove_trailing_whitespaces_ignore_empty=false +sp_cleanup.remove_unnecessary_casts=true +sp_cleanup.remove_unnecessary_nls_tags=false +sp_cleanup.remove_unused_imports=true +sp_cleanup.remove_unused_local_variables=false +sp_cleanup.remove_unused_private_fields=true +sp_cleanup.remove_unused_private_members=false +sp_cleanup.remove_unused_private_methods=true +sp_cleanup.remove_unused_private_types=true +sp_cleanup.sort_members=false +sp_cleanup.sort_members_all=false +sp_cleanup.use_blocks=false +sp_cleanup.use_blocks_only_for_return_and_throw=false +sp_cleanup.use_parentheses_in_expressions=false +sp_cleanup.use_this_for_non_static_field_access=false +sp_cleanup.use_this_for_non_static_field_access_only_if_necessary=true +sp_cleanup.use_this_for_non_static_method_access=false +sp_cleanup.use_this_for_non_static_method_access_only_if_necessary=true diff --git a/jOOQ-console/.settings/org.maven.ide.eclipse.prefs b/jOOQ-console/.settings/org.maven.ide.eclipse.prefs new file mode 100644 index 00000000000..c5172a20ac8 --- /dev/null +++ b/jOOQ-console/.settings/org.maven.ide.eclipse.prefs @@ -0,0 +1,8 @@ +#Sun Apr 10 10:03:42 CEST 2011 +activeProfiles= +eclipse.preferences.version=1 +fullBuildGoals=process-test-resources +resolveWorkspaceProjects=true +resourceFilterGoals=process-resources resources\:testResources +skipCompilerPlugin=true +version=1 diff --git a/jOOQ-console/LICENSE.txt b/jOOQ-console/LICENSE.txt new file mode 100644 index 00000000000..2d2ab01a5d2 --- /dev/null +++ b/jOOQ-console/LICENSE.txt @@ -0,0 +1,34 @@ + Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com + Christopher Deckers, chrriis@gmail.com + All rights reserved. + + This software is licensed to you under the Apache License, Version 2.0 + (the "License"); You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + 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 "jOOQ" 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 COPYRIGHT OWNER 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. \ No newline at end of file diff --git a/jOOQ-console/pom.xml b/jOOQ-console/pom.xml new file mode 100644 index 00000000000..bf5b89c7142 --- /dev/null +++ b/jOOQ-console/pom.xml @@ -0,0 +1,209 @@ + + + + oss-parent + org.sonatype.oss + 7 + + 4.0.0 + + org.jooq + jooq-console + 2.2.0 + jar + + jOOQ + jOOQ effectively combines complex SQL, typesafety, source code generation, active records, stored procedures, advanced data types, and Java in a fluent, intuitive DSL. + http://www.jooq.org + + + + + Apache License, Version 2.0 + http://www.jooq.org/inc/LICENSE.txt + repo + + + + + scm:svn:https://jooq.svn.sourceforge.net/svnroot/jooq + https://jooq.svn.sourceforge.net/svnroot/jooq + scm:svn:https://jooq.svn.sourceforge.net/svnroot/jooq + + + + deploy + ${project.artifactId}-${project.version} + + + + org.apache.maven.plugins + maven-gpg-plugin + 1.1 + + + sign-artifacts + verify + + sign + + + + + + + org.apache.maven.plugins + maven-compiler-plugin + 2.3.2 + + true + 512m + 256m + UTF-8 + 1.6 + 1.6 + true + lines,vars,source + + + + + true + org.apache.maven.plugins + maven-source-plugin + 2.1.2 + + + attach-sources + + jar + + + + + + true + true + + + + + true + org.apache.maven.plugins + maven-javadoc-plugin + 2.7 + + + bundle-sources + package + + jar + + + + + 512 + UTF-8 + protected + true + + + + + org.apache.maven.plugins + maven-resources-plugin + 2.5 + + UTF-8 + + + + + org.apache.maven.plugins + maven-eclipse-plugin + 2.8 + + true + + + + + org.apache.felix + maven-bundle-plugin + 2.1.0 + true + + + bundle-manifest + process-classes + + manifest + + + + + + jar + + + ${project.artifactId} + * + + org.fife, + * + + <_versionpolicy>[$(version;==;$(@)),$(version;+;$(@))) + + + + + org.apache.maven.plugins + maven-jar-plugin + 2.3.2 + + + + org.jooq.debug.console.Console + org.jooq.debug.console + + + + ${project.build.outputDirectory}/META-INF/MANIFEST.MF + + + + + + + + Trac + https://sourceforge.net/apps/trac/jooq/report/6 + + + + Lukas Eder + lukas.eder@gmail.com + + + Christopher Deckers + chrriis@gmail.com + + + + + + com.fifesoft + rsyntaxtextarea + 1.5.0 + jar + + + org.jooq + jooq + 2.2.0 + jar + compile + + + diff --git a/jOOQ-console/src/main/java/org/jooq/debug/DebugListener.java b/jOOQ-console/src/main/java/org/jooq/debug/DebugListener.java new file mode 100644 index 00000000000..a65d8a2c6ad --- /dev/null +++ b/jOOQ-console/src/main/java/org/jooq/debug/DebugListener.java @@ -0,0 +1,180 @@ +/** + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com + * Christopher Deckers, chrriis@gmail.com + * All rights reserved. + * + * This software is licensed to you under the Apache License, Version 2.0 + * (the "License"); You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * 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 "jOOQ" 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 COPYRIGHT OWNER 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. + */ +package org.jooq.debug; + +import java.sql.CallableStatement; +import java.sql.PreparedStatement; +import java.sql.ResultSet; +import java.util.List; + +import org.jooq.ExecuteContext; +import org.jooq.ExecuteType; +import org.jooq.impl.DefaultExecuteListener; + +public class DebugListener extends DefaultExecuteListener { + + private boolean isLogging; + + @Override + public void renderStart(ExecuteContext ctx) { + isLogging = !DebuggerRegistry.getDebuggerList().isEmpty(); + startPreparationTime = 0; + aggregatedPreparationDuration = 0; + startBindTime = 0; + endBindTime = 0; + startExecutionTime = 0; + endExecutionTime = 0; + } + + private long startPreparationTime; + private long aggregatedPreparationDuration; + + @Override + public void prepareStart(ExecuteContext ctx) { + if(!isLogging) { + return; + } + startPreparationTime = System.currentTimeMillis(); + } + + @Override + public void prepareEnd(ExecuteContext ctx) { + if(!isLogging) { + return; + } + aggregatedPreparationDuration += System.currentTimeMillis() - startPreparationTime; + PreparedStatement statement = ctx.statement(); + if (ctx.type() == ExecuteType.ROUTINE) { + ctx.statement(new UsageTrackingCallableStatement((CallableStatement)statement)); + } else { + ctx.statement(new UsageTrackingPreparedStatement(statement)); + } + } + + private long startBindTime; + private long endBindTime; + + @Override + public void bindStart(ExecuteContext ctx) { + if(!isLogging) { + return; + } + startBindTime = System.currentTimeMillis(); + } + + @Override + public void bindEnd(ExecuteContext ctx) { + if(!isLogging) { + return; + } + endBindTime = System.currentTimeMillis(); + } + + private long startExecutionTime; + private long endExecutionTime; + + @Override + public void executeStart(ExecuteContext ctx) { + if(!isLogging) { + return; + } + startExecutionTime = System.currentTimeMillis(); + } + + @Override + public void executeEnd(ExecuteContext ctx) { + if(!isLogging) { + return; + } + endExecutionTime = System.currentTimeMillis(); + List sqlQueryDebuggerList = DebuggerRegistry.getDebuggerList(); + if(sqlQueryDebuggerList.isEmpty()) { + return; + } + ResultSet resultSet = ctx.resultSet(); + String[] sql = ctx.batchSQL(); + SqlQueryType sqlQueryType = SqlQueryType.detectType(sql[0]); + String parameterDescription = null; + if(sql.length == 1) { + PreparedStatement statement = ctx.statement(); + if(statement instanceof UsageTrackingPreparedStatement) { + parameterDescription = ((UsageTrackingPreparedStatement) statement).getParameterDescription(); + } + } + DebuggerData sqlQueryDebuggerData = new DebuggerData(sqlQueryType, sql, parameterDescription, startPreparationTime == 0? null: aggregatedPreparationDuration, startBindTime == 0? null: endBindTime - startBindTime, endExecutionTime - startExecutionTime); + for(Debugger listener: sqlQueryDebuggerList) { + listener.debugQueries(sqlQueryDebuggerData); + } + if(resultSet != null) { + final int sqlQueryDebuggerDataID = sqlQueryDebuggerData.getID(); + ResultSet newResultSet = new UsageTrackingResultSet(resultSet) { + @Override + protected void notifyData(long lifeTime, int readRows, int readCount, int writeCount) { + List sqlQueryDebuggerList = DebuggerRegistry.getDebuggerList(); + if(sqlQueryDebuggerList.isEmpty()) { + return; + } + DebuggerResultSetData sqlQueryDebuggerResultSetData = new DebuggerResultSetData(lifeTime, readRows, readCount, writeCount); + for(Debugger listener: sqlQueryDebuggerList) { + listener.debugResultSet(sqlQueryDebuggerDataID, sqlQueryDebuggerResultSetData); + } + } + }; + ctx.resultSet(newResultSet); + } + } + +// private long startFetchTime; +// private long endFetchTime; +// +// @Override +// public void fetchStart(ExecuteContext ctx) { +// if(!isLogging) { +// return; +// } +// startFetchTime = System.currentTimeMillis(); +// } +// +// @Override +// public void fetchEnd(ExecuteContext ctx) { +// if(!isLogging) { +// return; +// } +// endFetchTime = System.currentTimeMillis(); +// } + +} diff --git a/jOOQ-console/src/main/java/org/jooq/debug/Debugger.java b/jOOQ-console/src/main/java/org/jooq/debug/Debugger.java new file mode 100644 index 00000000000..0d08d7cf80c --- /dev/null +++ b/jOOQ-console/src/main/java/org/jooq/debug/Debugger.java @@ -0,0 +1,49 @@ +/** + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com + * Christopher Deckers, chrriis@gmail.com + * All rights reserved. + * + * This software is licensed to you under the Apache License, Version 2.0 + * (the "License"); You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * 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 "jOOQ" 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 COPYRIGHT OWNER 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. + */ +package org.jooq.debug; + + +/** + * @author Christopher Deckers + */ +public interface Debugger { + + public void debugQueries(DebuggerData sqlQueryDebuggerData); + + public void debugResultSet(int sqlQueryDebuggerDataID, DebuggerResultSetData sqlQueryDebuggerResultSetData); + +} diff --git a/jOOQ-console/src/main/java/org/jooq/debug/DebuggerData.java b/jOOQ-console/src/main/java/org/jooq/debug/DebuggerData.java new file mode 100644 index 00000000000..82351505d0e --- /dev/null +++ b/jOOQ-console/src/main/java/org/jooq/debug/DebuggerData.java @@ -0,0 +1,117 @@ +/** + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com + * Christopher Deckers, chrriis@gmail.com + * All rights reserved. + * + * This software is licensed to you under the Apache License, Version 2.0 + * (the "License"); You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * 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 "jOOQ" 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 COPYRIGHT OWNER 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. + */ +package org.jooq.debug; + +import java.io.Serializable; + + +/** + * @author Christopher Deckers + */ +public class DebuggerData implements Serializable { + + private static volatile int nextID; + + private int id; + private SqlQueryType queryType; + private String[] queries; + private String parameterDescription; + private Long preparationDuration; + private Long bindingDuration; + private long executionDuration; + private String threadName; + private long threadID; + private StackTraceElement[] callerStackTraceElements; + + public DebuggerData(SqlQueryType queryType, String[] queries, String parameterDescription, Long preparationDuration, Long bindingDuration, long executionDuration) { + this.id = nextID++; + Thread currentThread = Thread.currentThread(); + this.threadName = currentThread.getName(); + this.threadID = currentThread.getId(); + this.callerStackTraceElements = new Exception().getStackTrace(); + this.queryType = queryType; + this.queries = queries; + this.parameterDescription = parameterDescription; + this.preparationDuration = preparationDuration; + this.bindingDuration = bindingDuration; + this.executionDuration = executionDuration; + } + + public int getID() { + return id; + } + + public String getThreadName() { + return threadName; + } + + public long getThreadID() { + return threadID; + } + + public StackTraceElement[] getCallerStackTraceElements() { + return callerStackTraceElements; + } + + public SqlQueryType getQueryType() { + return queryType; + } + + public String[] getQueries() { + return queries; + } + + /** + * @return non null if queries consist of a single prepared statement with parameters. + */ + public String getParameterDescription() { + return parameterDescription; + } + + public Long getPreparedStatementPreparationDuration() { + return preparationDuration; + } + + public Long getPreparedStatementBindingDuration() { + return bindingDuration; + } + + public long getExecutionDuration() { + return executionDuration; + } + +} diff --git a/jOOQ-console/src/main/java/org/jooq/debug/DebuggerRegistry.java b/jOOQ-console/src/main/java/org/jooq/debug/DebuggerRegistry.java new file mode 100644 index 00000000000..67f8db36c18 --- /dev/null +++ b/jOOQ-console/src/main/java/org/jooq/debug/DebuggerRegistry.java @@ -0,0 +1,100 @@ +/** + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com + * Christopher Deckers, chrriis@gmail.com + * All rights reserved. + * + * This software is licensed to you under the Apache License, Version 2.0 + * (the "License"); You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * 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 "jOOQ" 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 COPYRIGHT OWNER 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. + */ +package org.jooq.debug; + +import java.util.ArrayList; +import java.util.Collections; +import java.util.List; + +/** + * @author Christopher Deckers + */ +public class DebuggerRegistry { + + private DebuggerRegistry() {} + + private static final Object LOCK = new Object(); + private static final List debuggerList = new ArrayList(); + + public static void addSqlQueryDebugger(Debugger sqlQueryDebugger) { + synchronized(LOCK) { + debuggerList.add(sqlQueryDebugger); + for(DebuggerRegistryListener l: debuggerRegisterListenerList) { + l.notifyDebuggerListenersModified(); + } + } + } + + public static void removeSqlQueryDebugger(Debugger sqlQueryDebugger) { + synchronized(LOCK) { + debuggerList.remove(sqlQueryDebugger); + for(DebuggerRegistryListener l: debuggerRegisterListenerList) { + l.notifyDebuggerListenersModified(); + } + } + } + + private static final List debuggerRegisterListenerList = new ArrayList(1); + + public static void addDebuggerRegisterListener(DebuggerRegistryListener listener) { + synchronized(LOCK) { + debuggerRegisterListenerList.add(listener); + } + } + + public static void removeDebuggerRegisterListener(DebuggerRegistryListener listener) { + synchronized(LOCK) { + debuggerRegisterListenerList.remove(listener); + } + } + + /* + * @return an immutable list of all the debuggers currently registered. + */ + public static List getDebuggerList() { + synchronized(LOCK) { + if(debuggerList.isEmpty()) { + // No cost when no loggers + return Collections.emptyList(); + } + // Small cost: copy collection and make it immutable. + // Generally, no more than one or two listeners in the list. + return Collections.unmodifiableList(new ArrayList(debuggerList)); + } + } + +} diff --git a/jOOQ-console/src/main/java/org/jooq/debug/DebuggerRegistryListener.java b/jOOQ-console/src/main/java/org/jooq/debug/DebuggerRegistryListener.java new file mode 100644 index 00000000000..982051985d0 --- /dev/null +++ b/jOOQ-console/src/main/java/org/jooq/debug/DebuggerRegistryListener.java @@ -0,0 +1,43 @@ +/** + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com + * Christopher Deckers, chrriis@gmail.com + * All rights reserved. + * + * This software is licensed to you under the Apache License, Version 2.0 + * (the "License"); You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * 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 "jOOQ" 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 COPYRIGHT OWNER 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. + */ +package org.jooq.debug; + +public interface DebuggerRegistryListener { + + public void notifyDebuggerListenersModified(); + +} diff --git a/jOOQ-console/src/main/java/org/jooq/debug/DebuggerResultSetData.java b/jOOQ-console/src/main/java/org/jooq/debug/DebuggerResultSetData.java new file mode 100644 index 00000000000..1a881b8296f --- /dev/null +++ b/jOOQ-console/src/main/java/org/jooq/debug/DebuggerResultSetData.java @@ -0,0 +1,82 @@ +/** + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com + * Christopher Deckers, chrriis@gmail.com + * All rights reserved. + * + * This software is licensed to you under the Apache License, Version 2.0 + * (the "License"); You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * 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 "jOOQ" 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 COPYRIGHT OWNER 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. + */ +package org.jooq.debug; + +import java.io.Serializable; + +/** + * @author Christopher Deckers + */ +public class DebuggerResultSetData implements Serializable { + + private static volatile int nextID; + + private int id; + private long lifeTime; + private final int readRows; + private final int readCount; + private final int writeCount; + + public DebuggerResultSetData(long lifeTime, final int readRows, final int readCount, final int writeCount) { + this.id = nextID++; + this.lifeTime = lifeTime; + this.readRows = readRows; + this.readCount = readCount; + this.writeCount = writeCount; + } + + public int getId() { + return id; + } + + public long getLifeTime() { + return lifeTime; + } + + public int getReadRows() { + return readRows; + } + + public int getReadCount() { + return readCount; + } + + public int getWriteCount() { + return writeCount; + } + +} diff --git a/jOOQ-console/src/main/java/org/jooq/debug/SqlQueryType.java b/jOOQ-console/src/main/java/org/jooq/debug/SqlQueryType.java new file mode 100644 index 00000000000..9b05340ceed --- /dev/null +++ b/jOOQ-console/src/main/java/org/jooq/debug/SqlQueryType.java @@ -0,0 +1,122 @@ +/** + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com + * Christopher Deckers, chrriis@gmail.com + * All rights reserved. + * + * This software is licensed to you under the Apache License, Version 2.0 + * (the "License"); You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * 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 "jOOQ" 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 COPYRIGHT OWNER 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. + */ +package org.jooq.debug; + +import java.util.Locale; + +/** + * @author Christopher Deckers + */ +public enum SqlQueryType { + SELECT, + INSERT, + UPDATE, + DELETE, + OTHER, + + ; + + public static SqlQueryType detectType(String sql) { + String queryLC = sql.toLowerCase(Locale.ENGLISH).trim(); + if(queryLC.startsWith("insert ")) { + return SqlQueryType.INSERT; + } + if(queryLC.startsWith("update ")) { + return SqlQueryType.UPDATE; + } + if(queryLC.startsWith("delete ")) { + return SqlQueryType.DELETE; + } + if(queryLC.startsWith("select ")) { + return SqlQueryType.SELECT; + } + if(queryLC.startsWith("with ")) { + // Let's skip the table definition to see what action is performed. + queryLC = queryLC.replaceAll("[\\t\\n\\x0B\\f\\r]+", " "); + queryLC = queryLC.substring("with ".length()); + boolean isFindingWithStatementEnd = true; + while(isFindingWithStatementEnd) { + isFindingWithStatementEnd = false; + // Let's consider the query is properly created, and the "as" is at the right place. + int index = queryLC.indexOf(" as "); + if(index == -1) { + break; + } + queryLC = queryLC.substring(index + " as ".length()).trim(); + if(!queryLC.startsWith("(")) { + break; + } + int length = queryLC.length(); + boolean isQuote = false; + int pCount = 1; + for(int i=1; i> map) throws SQLException { + return stmt.getObject(parameterIndex, map); + } + + @Override + public Ref getRef(int parameterIndex) throws SQLException { + return stmt.getRef(parameterIndex); + } + + @Override + public Blob getBlob(int parameterIndex) throws SQLException { + return stmt.getBlob(parameterIndex); + } + + @Override + public Clob getClob(int parameterIndex) throws SQLException { + return stmt.getClob(parameterIndex); + } + + @Override + public Array getArray(int parameterIndex) throws SQLException { + return stmt.getArray(parameterIndex); + } + + @Override + public Date getDate(int parameterIndex, Calendar cal) throws SQLException { + return stmt.getDate(parameterIndex, cal); + } + + @Override + public Time getTime(int parameterIndex, Calendar cal) throws SQLException { + return stmt.getTime(parameterIndex, cal); + } + + @Override + public Timestamp getTimestamp(int parameterIndex, Calendar cal) throws SQLException { + return stmt.getTimestamp(parameterIndex, cal); + } + + @Override + public void registerOutParameter(int parameterIndex, int sqlType, String typeName) throws SQLException { + stmt.registerOutParameter(parameterIndex, sqlType, typeName); + } + + @Override + public void registerOutParameter(String parameterName, int sqlType) throws SQLException { + stmt.registerOutParameter(parameterName, sqlType); + } + + @Override + public void registerOutParameter(String parameterName, int sqlType, int scale) throws SQLException { + stmt.registerOutParameter(parameterName, sqlType, scale); + } + + @Override + public void registerOutParameter(String parameterName, int sqlType, String typeName) throws SQLException { + stmt.registerOutParameter(parameterName, sqlType, typeName); + } + + @Override + public URL getURL(int parameterIndex) throws SQLException { + return stmt.getURL(parameterIndex); + } + + @Override + public void setURL(String parameterName, URL val) throws SQLException { + stmt.setURL(parameterName, val); + } + + @Override + public void setNull(String parameterName, int sqlType) throws SQLException { + stmt.setNull(parameterName, sqlType); + } + + @Override + public void setBoolean(String parameterName, boolean x) throws SQLException { + stmt.setBoolean(parameterName, x); + } + + @Override + public void setByte(String parameterName, byte x) throws SQLException { + stmt.setByte(parameterName, x); + } + + @Override + public void setShort(String parameterName, short x) throws SQLException { + stmt.setShort(parameterName, x); + } + + @Override + public void setInt(String parameterName, int x) throws SQLException { + stmt.setInt(parameterName, x); + } + + @Override + public void setLong(String parameterName, long x) throws SQLException { + stmt.setLong(parameterName, x); + } + + @Override + public void setFloat(String parameterName, float x) throws SQLException { + stmt.setFloat(parameterName, x); + } + + @Override + public void setDouble(String parameterName, double x) throws SQLException { + stmt.setDouble(parameterName, x); + } + + @Override + public void setBigDecimal(String parameterName, BigDecimal x) throws SQLException { + stmt.setBigDecimal(parameterName, x); + } + + @Override + public void setString(String parameterName, String x) throws SQLException { + stmt.setString(parameterName, x); + } + + @Override + public void setBytes(String parameterName, byte[] x) throws SQLException { + stmt.setBytes(parameterName, x); + } + + @Override + public void setDate(String parameterName, Date x) throws SQLException { + stmt.setDate(parameterName, x); + } + + @Override + public void setTime(String parameterName, Time x) throws SQLException { + stmt.setTime(parameterName, x); + } + + @Override + public void setTimestamp(String parameterName, Timestamp x) throws SQLException { + stmt.setTimestamp(parameterName, x); + } + + @Override + public void setAsciiStream(String parameterName, InputStream x, int length) throws SQLException { + stmt.setAsciiStream(parameterName, x, length); + } + + @Override + public void setBinaryStream(String parameterName, InputStream x, int length) throws SQLException { + stmt.setBinaryStream(parameterName, x, length); + } + + @Override + public void setObject(String parameterName, Object x, int targetSqlType, int scale) throws SQLException { + stmt.setObject(parameterName, x, targetSqlType, scale); + } + + @Override + public void setObject(String parameterName, Object x, int targetSqlType) throws SQLException { + stmt.setObject(parameterName, x, targetSqlType); + } + + @Override + public void setObject(String parameterName, Object x) throws SQLException { + stmt.setObject(parameterName, x); + } + + @Override + public void setCharacterStream(String parameterName, Reader reader, int length) throws SQLException { + stmt.setCharacterStream(parameterName, reader, length); + } + + @Override + public void setDate(String parameterName, Date x, Calendar cal) throws SQLException { + stmt.setDate(parameterName, x, cal); + } + + @Override + public void setTime(String parameterName, Time x, Calendar cal) throws SQLException { + stmt.setTime(parameterName, x, cal); + } + + @Override + public void setTimestamp(String parameterName, Timestamp x, Calendar cal) throws SQLException { + stmt.setTimestamp(parameterName, x, cal); + } + + @Override + public void setNull(String parameterName, int sqlType, String typeName) throws SQLException { + stmt.setNull(parameterName, sqlType, typeName); + } + + @Override + public String getString(String parameterName) throws SQLException { + return stmt.getString(parameterName); + } + + @Override + public boolean getBoolean(String parameterName) throws SQLException { + return stmt.getBoolean(parameterName); + } + + @Override + public byte getByte(String parameterName) throws SQLException { + return stmt.getByte(parameterName); + } + + @Override + public short getShort(String parameterName) throws SQLException { + return stmt.getShort(parameterName); + } + + @Override + public int getInt(String parameterName) throws SQLException { + return stmt.getInt(parameterName); + } + + @Override + public long getLong(String parameterName) throws SQLException { + return stmt.getLong(parameterName); + } + + @Override + public float getFloat(String parameterName) throws SQLException { + return stmt.getFloat(parameterName); + } + + @Override + public double getDouble(String parameterName) throws SQLException { + return stmt.getDouble(parameterName); + } + + @Override + public byte[] getBytes(String parameterName) throws SQLException { + return stmt.getBytes(parameterName); + } + + @Override + public Date getDate(String parameterName) throws SQLException { + return stmt.getDate(parameterName); + } + + @Override + public Time getTime(String parameterName) throws SQLException { + return stmt.getTime(parameterName); + } + + @Override + public Timestamp getTimestamp(String parameterName) throws SQLException { + return stmt.getTimestamp(parameterName); + } + + @Override + public Object getObject(String parameterName) throws SQLException { + return stmt.getObject(parameterName); + } + + @Override + public BigDecimal getBigDecimal(String parameterName) throws SQLException { + return stmt.getBigDecimal(parameterName); + } + + @Override + public Object getObject(String parameterName, Map> map) throws SQLException { + return stmt.getObject(parameterName, map); + } + + @Override + public Ref getRef(String parameterName) throws SQLException { + return stmt.getRef(parameterName); + } + + @Override + public Blob getBlob(String parameterName) throws SQLException { + return stmt.getBlob(parameterName); + } + + @Override + public Clob getClob(String parameterName) throws SQLException { + return stmt.getClob(parameterName); + } + + @Override + public Array getArray(String parameterName) throws SQLException { + return stmt.getArray(parameterName); + } + + @Override + public Date getDate(String parameterName, Calendar cal) throws SQLException { + return stmt.getDate(parameterName); + } + + @Override + public Time getTime(String parameterName, Calendar cal) throws SQLException { + return stmt.getTime(parameterName, cal); + } + + @Override + public Timestamp getTimestamp(String parameterName, Calendar cal) throws SQLException { + return stmt.getTimestamp(parameterName, cal); + } + + @Override + public URL getURL(String parameterName) throws SQLException { + return stmt.getURL(parameterName); + } + + @Override + public RowId getRowId(int parameterIndex) throws SQLException { + return stmt.getRowId(parameterIndex); + } + + @Override + public RowId getRowId(String parameterName) throws SQLException { + return stmt.getRowId(parameterName); + } + + @Override + public void setRowId(String parameterName, RowId x) throws SQLException { + stmt.setRowId(parameterName, x); + } + + @Override + public void setNString(String parameterName, String value) throws SQLException { + stmt.setNString(parameterName, value); + } + + @Override + public void setNCharacterStream(String parameterName, Reader value, long length) throws SQLException { + stmt.setNCharacterStream(parameterName, value, length); + } + + @Override + public void setNClob(String parameterName, NClob value) throws SQLException { + stmt.setNClob(parameterName, value); + } + + @Override + public void setClob(String parameterName, Reader reader, long length) throws SQLException { + stmt.setClob(parameterName, reader, length); + } + + @Override + public void setBlob(String parameterName, InputStream inputStream, long length) throws SQLException { + stmt.setBlob(parameterName, inputStream, length); + } + + @Override + public void setNClob(String parameterName, Reader reader, long length) throws SQLException { + stmt.setNClob(parameterName, reader, length); + } + + @Override + public NClob getNClob(int parameterIndex) throws SQLException { + return stmt.getNClob(parameterIndex); + } + + @Override + public NClob getNClob(String parameterName) throws SQLException { + return stmt.getNClob(parameterName); + } + + @Override + public void setSQLXML(String parameterName, SQLXML xmlObject) throws SQLException { + stmt.setSQLXML(parameterName, xmlObject); + } + + @Override + public SQLXML getSQLXML(int parameterIndex) throws SQLException { + return stmt.getSQLXML(parameterIndex); + } + + @Override + public SQLXML getSQLXML(String parameterName) throws SQLException { + return stmt.getSQLXML(parameterName); + } + + @Override + public String getNString(int parameterIndex) throws SQLException { + return stmt.getNString(parameterIndex); + } + + @Override + public String getNString(String parameterName) throws SQLException { + return stmt.getNString(parameterName); + } + + @Override + public Reader getNCharacterStream(int parameterIndex) throws SQLException { + return stmt.getNCharacterStream(parameterIndex); + } + + @Override + public Reader getNCharacterStream(String parameterName) throws SQLException { + return stmt.getNCharacterStream(parameterName); + } + + @Override + public Reader getCharacterStream(int parameterIndex) throws SQLException { + return stmt.getCharacterStream(parameterIndex); + } + + @Override + public Reader getCharacterStream(String parameterName) throws SQLException { + return stmt.getCharacterStream(parameterName); + } + + @Override + public void setBlob(String parameterName, Blob x) throws SQLException { + stmt.setBlob(parameterName, x); + } + + @Override + public void setClob(String parameterName, Clob x) throws SQLException { + stmt.setClob(parameterName, x); + } + + @Override + public void setAsciiStream(String parameterName, InputStream x, long length) throws SQLException { + stmt.setAsciiStream(parameterName, x, length); + } + + @Override + public void setBinaryStream(String parameterName, InputStream x, long length) throws SQLException { + stmt.setBinaryStream(parameterName, x, length); + } + + @Override + public void setCharacterStream(String parameterName, Reader reader, long length) throws SQLException { + stmt.setCharacterStream(parameterName, reader, length); + } + + @Override + public void setAsciiStream(String parameterName, InputStream x) throws SQLException { + stmt.setAsciiStream(parameterName, x); + } + + @Override + public void setBinaryStream(String parameterName, InputStream x) throws SQLException { + stmt.setBinaryStream(parameterName, x); + } + + @Override + public void setCharacterStream(String parameterName, Reader reader) throws SQLException { + stmt.setCharacterStream(parameterName, reader); + } + + @Override + public void setNCharacterStream(String parameterName, Reader value) throws SQLException { + stmt.setNCharacterStream(parameterName, value); + } + + @Override + public void setClob(String parameterName, Reader reader) throws SQLException { + stmt.setClob(parameterName, reader); + } + + @Override + public void setBlob(String parameterName, InputStream inputStream) throws SQLException { + stmt.setBlob(parameterName, inputStream); + } + + @Override + public void setNClob(String parameterName, Reader reader) throws SQLException { + stmt.setNClob(parameterName, reader); + } + +} diff --git a/jOOQ-console/src/main/java/org/jooq/debug/UsageTrackingPreparedStatement.java b/jOOQ-console/src/main/java/org/jooq/debug/UsageTrackingPreparedStatement.java new file mode 100644 index 00000000000..e49a38ff2cc --- /dev/null +++ b/jOOQ-console/src/main/java/org/jooq/debug/UsageTrackingPreparedStatement.java @@ -0,0 +1,666 @@ +/** + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com + * Christopher Deckers, chrriis@gmail.com + * All rights reserved. + * + * This software is licensed to you under the Apache License, Version 2.0 + * (the "License"); You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * 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 "jOOQ" 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 COPYRIGHT OWNER 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. + */ +package org.jooq.debug; + +import java.io.InputStream; +import java.io.Reader; +import java.math.BigDecimal; +import java.net.URL; +import java.sql.Array; +import java.sql.Blob; +import java.sql.Clob; +import java.sql.Connection; +import java.sql.Date; +import java.sql.NClob; +import java.sql.ParameterMetaData; +import java.sql.PreparedStatement; +import java.sql.Ref; +import java.sql.ResultSet; +import java.sql.ResultSetMetaData; +import java.sql.RowId; +import java.sql.SQLException; +import java.sql.SQLWarning; +import java.sql.SQLXML; +import java.sql.Time; +import java.sql.Timestamp; +import java.util.ArrayList; +import java.util.Calendar; +import java.util.List; + +/** + * @author Christopher Deckers + */ +public class UsageTrackingPreparedStatement implements PreparedStatement { + + private PreparedStatement stmt; + + public UsageTrackingPreparedStatement(PreparedStatement stmt) { + this.stmt = stmt; + } + + @Override + public void addBatch() throws SQLException { + stmt.addBatch(); + commitParameterDescription(); + } + + @Override + public void clearParameters() throws SQLException { + stmt.clearParameters(); + paramList.clear(); + } + + @Override + public boolean execute() throws SQLException { + return stmt.execute(); + } + + @Override + public ResultSet executeQuery() throws SQLException { + return stmt.executeQuery(); + } + + @Override + public int executeUpdate() throws SQLException { + return stmt.executeUpdate(); + } + + @Override + public ResultSetMetaData getMetaData() throws SQLException { + return stmt.getMetaData(); + } + + @Override + public ParameterMetaData getParameterMetaData() throws SQLException { + return stmt.getParameterMetaData(); + } + + @Override + public void setArray(int parameterIndex, Array x) throws SQLException { + stmt.setArray(parameterIndex, x); + logValue(parameterIndex, x == null? null: ""); + } + + @Override + public void setAsciiStream(int parameterIndex, InputStream x) throws SQLException { + stmt.setAsciiStream(parameterIndex, x); + logValue(parameterIndex, x == null? null: ""); + } + + @Override + public void setAsciiStream(int parameterIndex, InputStream x, int length) throws SQLException { + stmt.setAsciiStream(parameterIndex, x, length); + logValue(parameterIndex, x == null? null: ""); + } + + @Override + public void setAsciiStream(int parameterIndex, InputStream x, long length) throws SQLException { + stmt.setAsciiStream(parameterIndex, x, length); + logValue(parameterIndex, x == null? null: ""); + } + + @Override + public void setBigDecimal(int parameterIndex, BigDecimal x) throws SQLException { + stmt.setBigDecimal(parameterIndex, x); + logValue(parameterIndex, x); + } + + @Override + public void setBinaryStream(int parameterIndex, InputStream x) throws SQLException { + stmt.setBinaryStream(parameterIndex, x); + logValue(parameterIndex, x == null? null: ""); + } + + @Override + public void setBinaryStream(int parameterIndex, InputStream x, int length) throws SQLException { + stmt.setBinaryStream(parameterIndex, x, length); + logValue(parameterIndex, x == null? null: ""); + } + + @Override + public void setBinaryStream(int parameterIndex, InputStream x, long length) throws SQLException { + stmt.setBinaryStream(parameterIndex, x, length); + logValue(parameterIndex, x == null? null: ""); + } + + @Override + public void setBlob(int parameterIndex, Blob x) throws SQLException { + stmt.setBlob(parameterIndex, x); + logValue(parameterIndex, x == null? null: ""); + } + + @Override + public void setBlob(int parameterIndex, InputStream x) throws SQLException { + stmt.setBlob(parameterIndex, x); + logValue(parameterIndex, x == null? null: ""); + } + + @Override + public void setBlob(int parameterIndex, InputStream x, long length) throws SQLException { + stmt.setBlob(parameterIndex, x, length); + logValue(parameterIndex, x == null? null: ""); + } + + @Override + public void setBoolean(int parameterIndex, boolean x) throws SQLException { + stmt.setBoolean(parameterIndex, x); + logValue(parameterIndex, x); + } + + @Override + public void setByte(int parameterIndex, byte x) throws SQLException { + stmt.setByte(parameterIndex, x); + logValue(parameterIndex, x); + } + + @Override + public void setBytes(int parameterIndex, byte[] x) throws SQLException { + stmt.setBytes(parameterIndex, x); + logValue(parameterIndex, x); + } + + @Override + public void setCharacterStream(int parameterIndex, Reader x) throws SQLException { + stmt.setCharacterStream(parameterIndex, x); + logValue(parameterIndex, x == null? null: ""); + } + + @Override + public void setCharacterStream(int parameterIndex, Reader x, int length) throws SQLException { + stmt.setCharacterStream(parameterIndex, x, length); + logValue(parameterIndex, x == null? null: ""); + } + + @Override + public void setCharacterStream(int parameterIndex, Reader x, long length) throws SQLException { + stmt.setCharacterStream(parameterIndex, x, length); + logValue(parameterIndex, x == null? null: ""); + } + + @Override + public void setClob(int parameterIndex, Clob x) throws SQLException { + stmt.setClob(parameterIndex, x); + logValue(parameterIndex, x == null? null: ""); + } + + @Override + public void setClob(int parameterIndex, Reader x) throws SQLException { + stmt.setCharacterStream(parameterIndex, x); + logValue(parameterIndex, x == null? null: ""); + } + + @Override + public void setClob(int parameterIndex, Reader x, long length) throws SQLException { + stmt.setCharacterStream(parameterIndex, x, length); + logValue(parameterIndex, x == null? null: ""); + } + + @Override + public void setDate(int parameterIndex, Date x) throws SQLException { + stmt.setDate(parameterIndex, x); + logValue(parameterIndex, x); + } + + @Override + public void setDate(int parameterIndex, Date x, Calendar cal) throws SQLException { + stmt.setDate(parameterIndex, x, cal); + logValue(parameterIndex, x); + } + + @Override + public void setDouble(int parameterIndex, double x) throws SQLException { + stmt.setDouble(parameterIndex, x); + logValue(parameterIndex, x); + } + + @Override + public void setFloat(int parameterIndex, float x) throws SQLException { + stmt.setFloat(parameterIndex, x); + logValue(parameterIndex, x); + } + + @Override + public void setInt(int parameterIndex, int x) throws SQLException { + stmt.setInt(parameterIndex, x); + logValue(parameterIndex, x); + } + + @Override + public void setLong(int parameterIndex, long x) throws SQLException { + stmt.setLong(parameterIndex, x); + logValue(parameterIndex, x); + } + + @Override + public void setNCharacterStream(int parameterIndex, Reader x) throws SQLException { + stmt.setNCharacterStream(parameterIndex, x); + logValue(parameterIndex, x == null? null: ""); + } + + @Override + public void setNCharacterStream(int parameterIndex, Reader x, long length) throws SQLException { + stmt.setNCharacterStream(parameterIndex, x, length); + logValue(parameterIndex, x == null? null: ""); + } + + @Override + public void setNClob(int parameterIndex, NClob x) throws SQLException { + stmt.setNClob(parameterIndex, x); + logValue(parameterIndex, x == null? null: ""); + } + + @Override + public void setNClob(int parameterIndex, Reader x) throws SQLException { + stmt.setNClob(parameterIndex, x); + logValue(parameterIndex, x == null? null: ""); + } + + @Override + public void setNClob(int parameterIndex, Reader x, long length) throws SQLException { + stmt.setNClob(parameterIndex, x, length); + logValue(parameterIndex, x == null? null: ""); + } + + @Override + public void setNString(int parameterIndex, String x) throws SQLException { + stmt.setNString(parameterIndex, x); + logValue(parameterIndex, x == null? null: '\'' + x.replace("'", "''") + '\''); + } + + @Override + public void setNull(int parameterIndex, int sqlType) throws SQLException { + stmt.setNull(parameterIndex, sqlType); + logValue(parameterIndex, null); + } + + @Override + public void setNull(int parameterIndex, int sqlType, String typeName) throws SQLException { + stmt.setNull(parameterIndex, sqlType, typeName); + logValue(parameterIndex, null); + } + + @Override + public void setObject(int parameterIndex, Object x) throws SQLException { + stmt.setObject(parameterIndex, x); + logValue(parameterIndex, x); + } + + @Override + public void setObject(int parameterIndex, Object x, int targetSqlType) throws SQLException { + stmt.setObject(parameterIndex, x, targetSqlType); + logValue(parameterIndex, x); + } + + @Override + public void setObject(int parameterIndex, Object x, int targetSqlType, int scaleOrLength) throws SQLException { + stmt.setObject(parameterIndex, x, targetSqlType, scaleOrLength); + logValue(parameterIndex, x); + } + + @Override + public void setRef(int parameterIndex, Ref x) throws SQLException { + stmt.setRef(parameterIndex, x); + logValue(parameterIndex, x == null? null: ""); + } + + @Override + public void setRowId(int parameterIndex, RowId x) throws SQLException { + stmt.setRowId(parameterIndex, x); + logValue(parameterIndex, x == null? null: ""); + } + + @Override + public void setSQLXML(int parameterIndex, SQLXML x) throws SQLException { + stmt.setSQLXML(parameterIndex, x); + logValue(parameterIndex, x == null? null: ""); + } + + @Override + public void setShort(int parameterIndex, short x) throws SQLException { + stmt.setShort(parameterIndex, x); + logValue(parameterIndex, x); + } + + @Override + public void setString(int parameterIndex, String x) throws SQLException { + stmt.setString(parameterIndex, x); + logValue(parameterIndex, x == null? null: '\'' + x.replace("'", "''") + '\''); + } + + @Override + public void setTime(int parameterIndex, Time x) throws SQLException { + stmt.setTime(parameterIndex, x); + logValue(parameterIndex, x); + } + + @Override + public void setTime(int parameterIndex, Time x, Calendar cal) throws SQLException { + stmt.setTime(parameterIndex, x, cal); + logValue(parameterIndex, x); + } + + @Override + public void setTimestamp(int parameterIndex, Timestamp x) throws SQLException { + stmt.setTimestamp(parameterIndex, x); + logValue(parameterIndex, x); + } + + @Override + public void setTimestamp(int parameterIndex, Timestamp x, Calendar cal) throws SQLException { + stmt.setTimestamp(parameterIndex, x, cal); + logValue(parameterIndex, x); + } + + @Override + public void setURL(int parameterIndex, URL x) throws SQLException { + stmt.setURL(parameterIndex, x); + logValue(parameterIndex, x); + } + + @Override + @Deprecated + public void setUnicodeStream(int parameterIndex, InputStream x, int length) throws SQLException { + stmt.setUnicodeStream(parameterIndex, x, length); + logValue(parameterIndex, x == null? null: ""); + } + + @Override + public void addBatch(String sql) throws SQLException { + stmt.addBatch(sql); + commitParameterDescription(); + } + + @Override + public void cancel() throws SQLException { + stmt.cancel(); + } + + @Override + public void clearBatch() throws SQLException { + stmt.clearBatch(); + } + + @Override + public void clearWarnings() throws SQLException { + stmt.clearWarnings(); + } + + @Override + public void close() throws SQLException { + stmt.close(); + } + + @Override + public boolean execute(String sql) throws SQLException { + return stmt.execute(sql); + } + + @Override + public boolean execute(String sql, int autoGeneratedKeys) throws SQLException { + return stmt.execute(sql, autoGeneratedKeys); + } + + @Override + public boolean execute(String sql, int[] columnIndexes) throws SQLException { + return stmt.execute(sql, columnIndexes); + } + + @Override + public boolean execute(String sql, String[] columnNames) throws SQLException { + return stmt.execute(sql, columnNames); + } + + @Override + public int[] executeBatch() throws SQLException { + return stmt.executeBatch(); + } + + @Override + public ResultSet executeQuery(String sql) throws SQLException { + return stmt.executeQuery(sql); + } + + @Override + public int executeUpdate(String sql) throws SQLException { + return stmt.executeUpdate(sql); + } + + @Override + public int executeUpdate(String sql, int autoGeneratedKeys) throws SQLException { + return stmt.executeUpdate(sql, autoGeneratedKeys); + } + + @Override + public int executeUpdate(String sql, int[] columnIndexes) throws SQLException { + return stmt.executeUpdate(sql, columnIndexes); + } + + @Override + public int executeUpdate(String sql, String[] columnNames) throws SQLException { + return stmt.executeUpdate(sql, columnNames); + } + +// @Override +// public void closeOnCompletion() throws SQLException { +// stmt.closeOnCompletion(); +// } +// +// @Override +// public boolean isCloseOnCompletion() throws SQLException { +// return stmt.isCloseOnCompletion(); +// } + + @Override + public Connection getConnection() throws SQLException { + return stmt.getConnection(); + } + + @Override + public int getFetchDirection() throws SQLException { + return stmt.getFetchDirection(); + } + + @Override + public int getFetchSize() throws SQLException { + return stmt.getFetchDirection(); + } + + @Override + public ResultSet getGeneratedKeys() throws SQLException { + return stmt.getGeneratedKeys(); + } + + @Override + public int getMaxFieldSize() throws SQLException { + return stmt.getMaxFieldSize(); + } + + @Override + public int getMaxRows() throws SQLException { + return stmt.getMaxRows(); + } + + @Override + public boolean getMoreResults() throws SQLException { + return stmt.getMoreResults(); + } + + @Override + public boolean getMoreResults(int current) throws SQLException { + return stmt.getMoreResults(current); + } + + @Override + public int getQueryTimeout() throws SQLException { + return stmt.getQueryTimeout(); + } + + @Override + public ResultSet getResultSet() throws SQLException { + return stmt.getResultSet(); + } + + @Override + public int getResultSetConcurrency() throws SQLException { + return stmt.getResultSetConcurrency(); + } + + @Override + public int getResultSetHoldability() throws SQLException { + return stmt.getResultSetHoldability(); + } + + @Override + public int getResultSetType() throws SQLException { + return stmt.getResultSetType(); + } + + @Override + public int getUpdateCount() throws SQLException { + return stmt.getUpdateCount(); + } + + @Override + public SQLWarning getWarnings() throws SQLException { + return stmt.getWarnings(); + } + + @Override + public boolean isClosed() throws SQLException { + return stmt.isClosed(); + } + + @Override + public boolean isPoolable() throws SQLException { + return stmt.isPoolable(); + } + + @Override + public void setCursorName(String name) throws SQLException { + stmt.setCursorName(name); + } + + @Override + public void setEscapeProcessing(boolean enable) throws SQLException { + stmt.setEscapeProcessing(enable); + } + + @Override + public void setFetchDirection(int direction) throws SQLException { + stmt.setFetchDirection(direction); + } + + @Override + public void setFetchSize(int rows) throws SQLException { + stmt.setFetchSize(rows); + } + + @Override + public void setMaxFieldSize(int max) throws SQLException { + stmt.setMaxFieldSize(max); + } + + @Override + public void setMaxRows(int max) throws SQLException { + stmt.setMaxRows(max); + } + + @Override + public void setPoolable(boolean poolable) throws SQLException { + stmt.setPoolable(poolable); + } + + @Override + public void setQueryTimeout(int seconds) throws SQLException { + stmt.setQueryTimeout(seconds); + } + + @Override + public boolean isWrapperFor(Class iface) throws SQLException { + return stmt.isWrapperFor(iface); + } + + @Override + public T unwrap(Class iface) throws SQLException { + return stmt.unwrap(iface); + } + + @Override + public String toString() { + return stmt.toString(); + } + + PreparedStatement getWrappedStatement() { + return stmt; + } + + private StringBuilder sb = new StringBuilder(); + private List paramList = new ArrayList(); + + private void commitParameterDescription() { + sb.append("["); + int size = paramList.size(); + for(int i=0; i 0) { + sb.append(", "); + } + String param = paramList.get(i); + if(param != null) { + sb.append(param); + } + } + sb.append("]"); + } + + protected void logValue(int parameterIndex, Object o) { + // parameters in SQL are 1-based + int missingLength = parameterIndex - paramList.size(); + for(int i=0; i T unwrap(Class iface) throws SQLException { + return resultSet.unwrap(iface); + } + + @Override + public boolean isWrapperFor(Class iface) throws SQLException { + return resultSet.isWrapperFor(iface); + } + + @Override + public boolean next() throws SQLException { + boolean next = resultSet.next(); + if(next) { + readRows++; + } + return next; + } + + @Override + public void close() throws SQLException { + resultSet.close(); + if(disposeTime == 0) { + disposeTime = System.currentTimeMillis(); + notifyData(); + } + } + + @Override + public boolean wasNull() throws SQLException { + return resultSet.wasNull(); + } + + @Override + public String getString(int columnIndex) throws SQLException { + readCount++; + return resultSet.getString(columnIndex); + } + + @Override + public boolean getBoolean(int columnIndex) throws SQLException { + readCount++; + return resultSet.getBoolean(columnIndex); + } + +// @Override +// public T getObject(int columnIndex, Class type) throws SQLException { +// readCount++; +// return resultSet.getObject(columnIndex, type); +// } +// +// @Override +// public T getObject(String columnLabel, Class type) throws SQLException { +// readCount++; +// return resultSet.getObject(columnLabel, type); +// } + + @Override + public byte getByte(int columnIndex) throws SQLException { + readCount++; + return resultSet.getByte(columnIndex); + } + + @Override + public short getShort(int columnIndex) throws SQLException { + readCount++; + return resultSet.getShort(columnIndex); + } + + @Override + public int getInt(int columnIndex) throws SQLException { + readCount++; + return resultSet.getInt(columnIndex); + } + + @Override + public long getLong(int columnIndex) throws SQLException { + readCount++; + return resultSet.getLong(columnIndex); + } + + @Override + public float getFloat(int columnIndex) throws SQLException { + readCount++; + return resultSet.getFloat(columnIndex); + } + + @Override + public double getDouble(int columnIndex) throws SQLException { + readCount++; + return resultSet.getDouble(columnIndex); + } + + @Override + @Deprecated + public BigDecimal getBigDecimal(int columnIndex, int scale) throws SQLException { + readCount++; + return resultSet.getBigDecimal(columnIndex, scale); + } + + @Override + public byte[] getBytes(int columnIndex) throws SQLException { + readCount++; + return resultSet.getBytes(columnIndex); + } + + @Override + public Date getDate(int columnIndex) throws SQLException { + readCount++; + return resultSet.getDate(columnIndex); + } + + @Override + public Time getTime(int columnIndex) throws SQLException { + readCount++; + return resultSet.getTime(columnIndex); + } + + @Override + public Timestamp getTimestamp(int columnIndex) throws SQLException { + readCount++; + return resultSet.getTimestamp(columnIndex); + } + + @Override + public InputStream getAsciiStream(int columnIndex) throws SQLException { + readCount++; + return resultSet.getAsciiStream(columnIndex); + } + + @Override + @Deprecated + public InputStream getUnicodeStream(int columnIndex) throws SQLException { + readCount++; + return resultSet.getUnicodeStream(columnIndex); + } + + @Override + public InputStream getBinaryStream(int columnIndex) throws SQLException { + readCount++; + return resultSet.getBinaryStream(columnIndex); + } + + @Override + public String getString(String columnLabel) throws SQLException { + readCount++; + return resultSet.getString(columnLabel); + } + + @Override + public boolean getBoolean(String columnLabel) throws SQLException { + readCount++; + return resultSet.getBoolean(columnLabel); + } + + @Override + public byte getByte(String columnLabel) throws SQLException { + readCount++; + return resultSet.getByte(columnLabel); + } + + @Override + public short getShort(String columnLabel) throws SQLException { + readCount++; + return resultSet.getShort(columnLabel); + } + + @Override + public int getInt(String columnLabel) throws SQLException { + readCount++; + return resultSet.getInt(columnLabel); + } + + @Override + public long getLong(String columnLabel) throws SQLException { + readCount++; + return resultSet.getLong(columnLabel); + } + + @Override + public float getFloat(String columnLabel) throws SQLException { + readCount++; + return resultSet.getFloat(columnLabel); + } + + @Override + public double getDouble(String columnLabel) throws SQLException { + readCount++; + return resultSet.getDouble(columnLabel); + } + + @Override + @Deprecated + public BigDecimal getBigDecimal(String columnLabel, int scale) throws SQLException { + readCount++; + return resultSet.getBigDecimal(columnLabel, scale); + } + + @Override + public byte[] getBytes(String columnLabel) throws SQLException { + readCount++; + return resultSet.getBytes(columnLabel); + } + + @Override + public Date getDate(String columnLabel) throws SQLException { + readCount++; + return resultSet.getDate(columnLabel); + } + + @Override + public Time getTime(String columnLabel) throws SQLException { + readCount++; + return resultSet.getTime(columnLabel); + } + + @Override + public Timestamp getTimestamp(String columnLabel) throws SQLException { + readCount++; + return resultSet.getTimestamp(columnLabel); + } + + @Override + public InputStream getAsciiStream(String columnLabel) throws SQLException { + readCount++; + return resultSet.getAsciiStream(columnLabel); + } + + @Override + @Deprecated + public InputStream getUnicodeStream(String columnLabel) throws SQLException { + readCount++; + return resultSet.getUnicodeStream(columnLabel); + } + + @Override + public InputStream getBinaryStream(String columnLabel) throws SQLException { + readCount++; + return resultSet.getBinaryStream(columnLabel); + } + + @Override + public SQLWarning getWarnings() throws SQLException { + return resultSet.getWarnings(); + } + + @Override + public void clearWarnings() throws SQLException { + resultSet.clearWarnings(); + } + + @Override + public String getCursorName() throws SQLException { + return resultSet.getCursorName(); + } + + @Override + public ResultSetMetaData getMetaData() throws SQLException { + return resultSet.getMetaData(); + } + + @Override + public Object getObject(int columnIndex) throws SQLException { + readCount++; + return resultSet.getObject(columnIndex); + } + + @Override + public Object getObject(String columnLabel) throws SQLException { + readCount++; + return resultSet.getObject(columnLabel); + } + + @Override + public int findColumn(String columnLabel) throws SQLException { + return resultSet.findColumn(columnLabel); + } + + @Override + public Reader getCharacterStream(int columnIndex) throws SQLException { + readCount++; + return resultSet.getCharacterStream(columnIndex); + } + + @Override + public Reader getCharacterStream(String columnLabel) throws SQLException { + readCount++; + return resultSet.getCharacterStream(columnLabel); + } + + @Override + public BigDecimal getBigDecimal(int columnIndex) throws SQLException { + readCount++; + return resultSet.getBigDecimal(columnIndex); + } + + @Override + public BigDecimal getBigDecimal(String columnLabel) throws SQLException { + readCount++; + return resultSet.getBigDecimal(columnLabel); + } + + @Override + public boolean isBeforeFirst() throws SQLException { + return resultSet.isBeforeFirst(); + } + + @Override + public boolean isAfterLast() throws SQLException { + return resultSet.isAfterLast(); + } + + @Override + public boolean isFirst() throws SQLException { + return resultSet.isFirst(); + } + + @Override + public boolean isLast() throws SQLException { + return resultSet.isLast(); + } + + @Override + public void beforeFirst() throws SQLException { + resultSet.beforeFirst(); + } + + @Override + public void afterLast() throws SQLException { + resultSet.afterLast(); + } + + @Override + public boolean first() throws SQLException { + return resultSet.first(); + } + + @Override + public boolean last() throws SQLException { + return resultSet.last(); + } + + @Override + public int getRow() throws SQLException { + return resultSet.getRow(); + } + + @Override + public boolean absolute(int row) throws SQLException { + return resultSet.absolute(row); + } + + @Override + public boolean relative(int rows) throws SQLException { + return resultSet.relative(rows); + } + + @Override + public boolean previous() throws SQLException { + return resultSet.previous(); + } + + @Override + public void setFetchDirection(int direction) throws SQLException { + resultSet.setFetchDirection(direction); + } + + @Override + public int getFetchDirection() throws SQLException { + return resultSet.getFetchDirection(); + } + + @Override + public void setFetchSize(int rows) throws SQLException { + resultSet.setFetchSize(rows); + } + + @Override + public int getFetchSize() throws SQLException { + return resultSet.getFetchSize(); + } + + @Override + public int getType() throws SQLException { + return resultSet.getType(); + } + + @Override + public int getConcurrency() throws SQLException { + return resultSet.getConcurrency(); + } + + @Override + public boolean rowUpdated() throws SQLException { + return resultSet.rowUpdated(); + } + + @Override + public boolean rowInserted() throws SQLException { + return resultSet.rowInserted(); + } + + @Override + public boolean rowDeleted() throws SQLException { + return resultSet.rowDeleted(); + } + + @Override + public void updateNull(int columnIndex) throws SQLException { + writeCount++; + resultSet.updateNull(columnIndex); + } + + @Override + public void updateBoolean(int columnIndex, boolean x) throws SQLException { + writeCount++; + resultSet.updateBoolean(columnIndex, x); + } + + @Override + public void updateByte(int columnIndex, byte x) throws SQLException { + writeCount++; + resultSet.updateByte(columnIndex, x); + } + + @Override + public void updateShort(int columnIndex, short x) throws SQLException { + writeCount++; + resultSet.updateShort(columnIndex, x); + } + + @Override + public void updateInt(int columnIndex, int x) throws SQLException { + writeCount++; + resultSet.updateInt(columnIndex, x); + } + + @Override + public void updateLong(int columnIndex, long x) throws SQLException { + writeCount++; + resultSet.updateLong(columnIndex, x); + } + + @Override + public void updateFloat(int columnIndex, float x) throws SQLException { + writeCount++; + resultSet.updateFloat(columnIndex, x); + } + + @Override + public void updateDouble(int columnIndex, double x) throws SQLException { + writeCount++; + resultSet.updateDouble(columnIndex, x); + } + + @Override + public void updateBigDecimal(int columnIndex, BigDecimal x) throws SQLException { + writeCount++; + resultSet.updateBigDecimal(columnIndex, x); + } + + @Override + public void updateString(int columnIndex, String x) throws SQLException { + writeCount++; + resultSet.updateString(columnIndex, x); + } + + @Override + public void updateBytes(int columnIndex, byte[] x) throws SQLException { + writeCount++; + resultSet.updateBytes(columnIndex, x); + } + + @Override + public void updateDate(int columnIndex, Date x) throws SQLException { + writeCount++; + resultSet.updateDate(columnIndex, x); + } + + @Override + public void updateTime(int columnIndex, Time x) throws SQLException { + writeCount++; + resultSet.updateTime(columnIndex, x); + } + + @Override + public void updateTimestamp(int columnIndex, Timestamp x) throws SQLException { + writeCount++; + resultSet.updateTimestamp(columnIndex, x); + } + + @Override + public void updateAsciiStream(int columnIndex, InputStream x, int length) throws SQLException { + writeCount++; + resultSet.updateAsciiStream(columnIndex, x, length); + } + + @Override + public void updateBinaryStream(int columnIndex, InputStream x, int length) throws SQLException { + writeCount++; + resultSet.updateBinaryStream(columnIndex, x, length); + } + + @Override + public void updateCharacterStream(int columnIndex, Reader x, int length) throws SQLException { + writeCount++; + resultSet.updateCharacterStream(columnIndex, x, length); + } + + @Override + public void updateObject(int columnIndex, Object x, int scaleOrLength) throws SQLException { + writeCount++; + resultSet.updateObject(columnIndex, x, scaleOrLength); + } + + @Override + public void updateObject(int columnIndex, Object x) throws SQLException { + writeCount++; + resultSet.updateObject(columnIndex, x); + } + + @Override + public void updateNull(String columnLabel) throws SQLException { + writeCount++; + resultSet.updateNull(columnLabel); + } + + @Override + public void updateBoolean(String columnLabel, boolean x) throws SQLException { + writeCount++; + resultSet.updateBoolean(columnLabel, x); + } + + @Override + public void updateByte(String columnLabel, byte x) throws SQLException { + writeCount++; + resultSet.updateByte(columnLabel, x); + } + + @Override + public void updateShort(String columnLabel, short x) throws SQLException { + writeCount++; + resultSet.updateShort(columnLabel, x); + } + + @Override + public void updateInt(String columnLabel, int x) throws SQLException { + writeCount++; + resultSet.updateInt(columnLabel, x); + } + + @Override + public void updateLong(String columnLabel, long x) throws SQLException { + writeCount++; + resultSet.updateLong(columnLabel, x); + } + + @Override + public void updateFloat(String columnLabel, float x) throws SQLException { + writeCount++; + resultSet.updateFloat(columnLabel, x); + } + + @Override + public void updateDouble(String columnLabel, double x) throws SQLException { + writeCount++; + resultSet.updateDouble(columnLabel, x); + } + + @Override + public void updateBigDecimal(String columnLabel, BigDecimal x) throws SQLException { + writeCount++; + resultSet.updateBigDecimal(columnLabel, x); + } + + @Override + public void updateString(String columnLabel, String x) throws SQLException { + writeCount++; + resultSet.updateString(columnLabel, x); + } + + @Override + public void updateBytes(String columnLabel, byte[] x) throws SQLException { + writeCount++; + resultSet.updateBytes(columnLabel, x); + } + + @Override + public void updateDate(String columnLabel, Date x) throws SQLException { + writeCount++; + resultSet.updateDate(columnLabel, x); + } + + @Override + public void updateTime(String columnLabel, Time x) throws SQLException { + writeCount++; + resultSet.updateTime(columnLabel, x); + } + + @Override + public void updateTimestamp(String columnLabel, Timestamp x) throws SQLException { + writeCount++; + resultSet.updateTimestamp(columnLabel, x); + } + + @Override + public void updateAsciiStream(String columnLabel, InputStream x, int length) throws SQLException { + writeCount++; + resultSet.updateAsciiStream(columnLabel, x, length); + } + + @Override + public void updateBinaryStream(String columnLabel, InputStream x, int length) throws SQLException { + writeCount++; + resultSet.updateBinaryStream(columnLabel, x, length); + } + + @Override + public void updateCharacterStream(String columnLabel, Reader reader, int length) throws SQLException { + writeCount++; + resultSet.updateCharacterStream(columnLabel, reader, length); + } + + @Override + public void updateObject(String columnLabel, Object x, int scaleOrLength) throws SQLException { + writeCount++; + resultSet.updateObject(columnLabel, x, scaleOrLength); + } + + @Override + public void updateObject(String columnLabel, Object x) throws SQLException { + writeCount++; + resultSet.updateObject(columnLabel, x); + } + + @Override + public void insertRow() throws SQLException { + resultSet.insertRow(); + } + + @Override + public void updateRow() throws SQLException { + resultSet.updateRow(); + } + + @Override + public void deleteRow() throws SQLException { + resultSet.deleteRow(); + } + + @Override + public void refreshRow() throws SQLException { + resultSet.refreshRow(); + } + + @Override + public void cancelRowUpdates() throws SQLException { + resultSet.cancelRowUpdates(); + } + + @Override + public void moveToInsertRow() throws SQLException { + resultSet.moveToInsertRow(); + } + + @Override + public void moveToCurrentRow() throws SQLException { + resultSet.moveToCurrentRow(); + } + + @Override + public Statement getStatement() throws SQLException { + return resultSet.getStatement(); + } + + @Override + public Object getObject(int columnIndex, Map> map) throws SQLException { + readCount++; + return resultSet.getObject(columnIndex, map); + } + + @Override + public Ref getRef(int columnIndex) throws SQLException { + readCount++; + return resultSet.getRef(columnIndex); + } + + @Override + public Blob getBlob(int columnIndex) throws SQLException { + readCount++; + return resultSet.getBlob(columnIndex); + } + + @Override + public Clob getClob(int columnIndex) throws SQLException { + readCount++; + return resultSet.getClob(columnIndex); + } + + @Override + public Array getArray(int columnIndex) throws SQLException { + readCount++; + return resultSet.getArray(columnIndex); + } + + @Override + public Object getObject(String columnLabel, Map> map) throws SQLException { + readCount++; + return resultSet.getObject(columnLabel, map); + } + + @Override + public Ref getRef(String columnLabel) throws SQLException { + readCount++; + return resultSet.getRef(columnLabel); + } + + @Override + public Blob getBlob(String columnLabel) throws SQLException { + readCount++; + return resultSet.getBlob(columnLabel); + } + + @Override + public Clob getClob(String columnLabel) throws SQLException { + readCount++; + return resultSet.getClob(columnLabel); + } + + @Override + public Array getArray(String columnLabel) throws SQLException { + readCount++; + return resultSet.getArray(columnLabel); + } + + @Override + public Date getDate(int columnIndex, Calendar cal) throws SQLException { + readCount++; + return resultSet.getDate(columnIndex, cal); + } + + @Override + public Date getDate(String columnLabel, Calendar cal) throws SQLException { + readCount++; + return resultSet.getDate(columnLabel, cal); + } + + @Override + public Time getTime(int columnIndex, Calendar cal) throws SQLException { + readCount++; + return resultSet.getTime(columnIndex, cal); + } + + @Override + public Time getTime(String columnLabel, Calendar cal) throws SQLException { + readCount++; + return resultSet.getTime(columnLabel, cal); + } + + @Override + public Timestamp getTimestamp(int columnIndex, Calendar cal) throws SQLException { + readCount++; + return resultSet.getTimestamp(columnIndex, cal); + } + + @Override + public Timestamp getTimestamp(String columnLabel, Calendar cal) throws SQLException { + readCount++; + return resultSet.getTimestamp(columnLabel, cal); + } + + @Override + public URL getURL(int columnIndex) throws SQLException { + readCount++; + return resultSet.getURL(columnIndex); + } + + @Override + public URL getURL(String columnLabel) throws SQLException { + readCount++; + return resultSet.getURL(columnLabel); + } + + @Override + public void updateRef(int columnIndex, Ref x) throws SQLException { + writeCount++; + resultSet.updateRef(columnIndex, x); + } + + @Override + public void updateRef(String columnLabel, Ref x) throws SQLException { + writeCount++; + resultSet.updateRef(columnLabel, x); + } + + @Override + public void updateBlob(int columnIndex, Blob x) throws SQLException { + writeCount++; + resultSet.updateBlob(columnIndex, x); + } + + @Override + public void updateBlob(String columnLabel, Blob x) throws SQLException { + writeCount++; + resultSet.updateBlob(columnLabel, x); + } + + @Override + public void updateClob(int columnIndex, Clob x) throws SQLException { + writeCount++; + resultSet.updateClob(columnIndex, x); + } + + @Override + public void updateClob(String columnLabel, Clob x) throws SQLException { + writeCount++; + resultSet.updateClob(columnLabel, x); + } + + @Override + public void updateArray(int columnIndex, Array x) throws SQLException { + writeCount++; + resultSet.updateArray(columnIndex, x); + } + + @Override + public void updateArray(String columnLabel, Array x) throws SQLException { + writeCount++; + resultSet.updateArray(columnLabel, x); + } + + @Override + public RowId getRowId(int columnIndex) throws SQLException { + return resultSet.getRowId(columnIndex); + } + + @Override + public RowId getRowId(String columnLabel) throws SQLException { + return resultSet.getRowId(columnLabel); + } + + @Override + public void updateRowId(int columnIndex, RowId x) throws SQLException { + readCount++; + resultSet.updateRowId(columnIndex, x); + } + + @Override + public void updateRowId(String columnLabel, RowId x) throws SQLException { + writeCount++; + resultSet.updateRowId(columnLabel, x); + } + + @Override + public int getHoldability() throws SQLException { + return resultSet.getHoldability(); + } + + @Override + public boolean isClosed() throws SQLException { + return resultSet.isClosed(); + } + + @Override + public void updateNString(int columnIndex, String nString) throws SQLException { + writeCount++; + resultSet.updateNString(columnIndex, nString); + } + + @Override + public void updateNString(String columnLabel, String nString) throws SQLException { + writeCount++; + resultSet.updateNString(columnLabel, nString); + } + + @Override + public void updateNClob(int columnIndex, NClob nClob) throws SQLException { + writeCount++; + resultSet.updateNClob(columnIndex, nClob); + } + + @Override + public void updateNClob(String columnLabel, NClob nClob) throws SQLException { + writeCount++; + resultSet.updateNClob(columnLabel, nClob); + } + + @Override + public NClob getNClob(int columnIndex) throws SQLException { + readCount++; + return resultSet.getNClob(columnIndex); + } + + @Override + public NClob getNClob(String columnLabel) throws SQLException { + readCount++; + return resultSet.getNClob(columnLabel); + } + + @Override + public SQLXML getSQLXML(int columnIndex) throws SQLException { + readCount++; + return resultSet.getSQLXML(columnIndex); + } + + @Override + public SQLXML getSQLXML(String columnLabel) throws SQLException { + readCount++; + return resultSet.getSQLXML(columnLabel); + } + + @Override + public void updateSQLXML(int columnIndex, SQLXML xmlObject) throws SQLException { + writeCount++; + resultSet.updateSQLXML(columnIndex, xmlObject); + } + + @Override + public void updateSQLXML(String columnLabel, SQLXML xmlObject) throws SQLException { + writeCount++; + resultSet.updateSQLXML(columnLabel, xmlObject); + } + + @Override + public String getNString(int columnIndex) throws SQLException { + readCount++; + return resultSet.getNString(columnIndex); + } + + @Override + public String getNString(String columnLabel) throws SQLException { + readCount++; + return resultSet.getNString(columnLabel); + } + + @Override + public Reader getNCharacterStream(int columnIndex) throws SQLException { + readCount++; + return resultSet.getNCharacterStream(columnIndex); + } + + @Override + public Reader getNCharacterStream(String columnLabel) throws SQLException { + readCount++; + return resultSet.getNCharacterStream(columnLabel); + } + + @Override + public void updateNCharacterStream(int columnIndex, Reader x, long length) throws SQLException { + writeCount++; + resultSet.updateNCharacterStream(columnIndex, x, length); + } + + @Override + public void updateNCharacterStream(String columnLabel, Reader reader, long length) throws SQLException { + writeCount++; + resultSet.updateNCharacterStream(columnLabel, reader, length); + } + + @Override + public void updateAsciiStream(int columnIndex, InputStream x, long length) throws SQLException { + writeCount++; + resultSet.updateAsciiStream(columnIndex, x, length); + } + + @Override + public void updateBinaryStream(int columnIndex, InputStream x, long length) throws SQLException { + writeCount++; + resultSet.updateBinaryStream(columnIndex, x, length); + } + + @Override + public void updateCharacterStream(int columnIndex, Reader x, long length) throws SQLException { + writeCount++; + resultSet.updateCharacterStream(columnIndex, x, length); + } + + @Override + public void updateAsciiStream(String columnLabel, InputStream x, long length) throws SQLException { + writeCount++; + resultSet.updateAsciiStream(columnLabel, x, length); + } + + @Override + public void updateBinaryStream(String columnLabel, InputStream x, long length) throws SQLException { + writeCount++; + resultSet.updateBinaryStream(columnLabel, x, length); + } + + @Override + public void updateCharacterStream(String columnLabel, Reader reader, long length) throws SQLException { + writeCount++; + resultSet.updateCharacterStream(columnLabel, reader, length); + } + + @Override + public void updateBlob(int columnIndex, InputStream inputStream, long length) throws SQLException { + writeCount++; + resultSet.updateBlob(columnIndex, inputStream, length); + } + + @Override + public void updateBlob(String columnLabel, InputStream inputStream, long length) throws SQLException { + writeCount++; + resultSet.updateBlob(columnLabel, inputStream, length); + } + + @Override + public void updateClob(int columnIndex, Reader reader, long length) throws SQLException { + writeCount++; + resultSet.updateClob(columnIndex, reader, length); + } + + @Override + public void updateClob(String columnLabel, Reader reader, long length) throws SQLException { + writeCount++; + resultSet.updateClob(columnLabel, reader, length); + } + + @Override + public void updateNClob(int columnIndex, Reader reader, long length) throws SQLException { + writeCount++; + resultSet.updateNClob(columnIndex, reader, length); + } + + @Override + public void updateNClob(String columnLabel, Reader reader, long length) throws SQLException { + writeCount++; + resultSet.updateNClob(columnLabel, reader, length); + } + + @Override + public void updateNCharacterStream(int columnIndex, Reader x) throws SQLException { + writeCount++; + resultSet.updateNCharacterStream(columnIndex, x); + } + + @Override + public void updateNCharacterStream(String columnLabel, Reader reader) throws SQLException { + writeCount++; + resultSet.updateNCharacterStream(columnLabel, reader); + } + + @Override + public void updateAsciiStream(int columnIndex, InputStream x) throws SQLException { + writeCount++; + resultSet.updateAsciiStream(columnIndex, x); + } + + @Override + public void updateBinaryStream(int columnIndex, InputStream x) throws SQLException { + writeCount++; + resultSet.updateBinaryStream(columnIndex, x); + } + + @Override + public void updateCharacterStream(int columnIndex, Reader x) throws SQLException { + writeCount++; + resultSet.updateCharacterStream(columnIndex, x); + } + + @Override + public void updateAsciiStream(String columnLabel, InputStream x) throws SQLException { + writeCount++; + resultSet.updateAsciiStream(columnLabel, x); + } + + @Override + public void updateBinaryStream(String columnLabel, InputStream x) throws SQLException { + writeCount++; + resultSet.updateBinaryStream(columnLabel, x); + } + + @Override + public void updateCharacterStream(String columnLabel, Reader reader) throws SQLException { + writeCount++; + resultSet.updateCharacterStream(columnLabel, reader); + } + + @Override + public void updateBlob(int columnIndex, InputStream inputStream) throws SQLException { + writeCount++; + resultSet.updateBlob(columnIndex, inputStream); + } + + @Override + public void updateBlob(String columnLabel, InputStream inputStream) throws SQLException { + writeCount++; + resultSet.updateBlob(columnLabel, inputStream); + } + + @Override + public void updateClob(int columnIndex, Reader reader) throws SQLException { + writeCount++; + resultSet.updateClob(columnIndex, reader); + } + + @Override + public void updateClob(String columnLabel, Reader reader) throws SQLException { + writeCount++; + resultSet.updateClob(columnLabel, reader); + } + + @Override + public void updateNClob(int columnIndex, Reader reader) throws SQLException { + writeCount++; + resultSet.updateNClob(columnIndex, reader); + } + + @Override + public void updateNClob(String columnLabel, Reader reader) throws SQLException { + writeCount++; + resultSet.updateNClob(columnLabel, reader); + } + + private long creationTime; + private long disposeTime; + private int readCount; + private int writeCount; + private int readRows; + + private void notifyData() { + notifyData(disposeTime - creationTime, readRows, readCount, writeCount); + } + + protected abstract void notifyData(long lifeTime, int readRows, int readCount, int writeCount); + +} diff --git a/jOOQ-console/src/main/java/org/jooq/debug/console/Console.java b/jOOQ-console/src/main/java/org/jooq/debug/console/Console.java new file mode 100644 index 00000000000..553a4a41e75 --- /dev/null +++ b/jOOQ-console/src/main/java/org/jooq/debug/console/Console.java @@ -0,0 +1,498 @@ +/** + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com + * Christopher Deckers, chrriis@gmail.com + * All rights reserved. + * + * This software is licensed to you under the Apache License, Version 2.0 + * (the "License"); You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * 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 "jOOQ" 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 COPYRIGHT OWNER 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. + */ +package org.jooq.debug.console; + +import java.awt.BorderLayout; +import java.awt.Color; +import java.awt.Component; +import java.awt.Container; +import java.awt.Cursor; +import java.awt.Desktop; +import java.awt.Dialog.ModalityType; +import java.awt.FlowLayout; +import java.awt.GridBagConstraints; +import java.awt.GridBagLayout; +import java.awt.Insets; +import java.awt.event.ActionEvent; +import java.awt.event.ActionListener; +import java.awt.event.KeyAdapter; +import java.awt.event.KeyEvent; +import java.awt.event.MouseAdapter; +import java.awt.event.MouseEvent; +import java.awt.event.WindowAdapter; +import java.awt.event.WindowEvent; +import java.awt.font.TextAttribute; +import java.net.URI; +import java.util.ArrayList; +import java.util.Arrays; +import java.util.Collections; +import java.util.HashMap; +import java.util.List; +import java.util.Locale; +import java.util.Map; + +import javax.swing.AbstractListModel; +import javax.swing.BorderFactory; +import javax.swing.ImageIcon; +import javax.swing.JButton; +import javax.swing.JDialog; +import javax.swing.JFrame; +import javax.swing.JLabel; +import javax.swing.JList; +import javax.swing.JMenu; +import javax.swing.JMenuBar; +import javax.swing.JMenuItem; +import javax.swing.JPanel; +import javax.swing.JScrollPane; +import javax.swing.JSplitPane; +import javax.swing.JTabbedPane; +import javax.swing.JTextField; +import javax.swing.ListModel; +import javax.swing.SwingUtilities; +import javax.swing.UIManager; +import javax.swing.event.ChangeEvent; +import javax.swing.event.ChangeListener; +import javax.swing.event.DocumentEvent; +import javax.swing.event.DocumentListener; + +import org.jooq.Record; +import org.jooq.Table; +import org.jooq.debug.console.remote.RemoteDebuggerClient; + +/** + * @author Christopher Deckers + */ +public class Console extends JFrame { + + private JTabbedPane mainTabbedPane; + private JTabbedPane editorTabbedPane; + + public Console(final DatabaseDescriptor editorDatabaseDescriptor, boolean isShowingLoggingTab) { + setDefaultCloseOperation(DISPOSE_ON_CLOSE); + JMenuBar menuBar = new JMenuBar(); + JMenu fileMenu = new JMenu("File"); + fileMenu.setMnemonic('F'); + JMenuItem exitMenuItem = new JMenuItem("Exit"); + exitMenuItem.setMnemonic('x'); + exitMenuItem.addActionListener(new ActionListener() { + @Override + public void actionPerformed(ActionEvent e) { + try { + performCleanup(); + } catch(Exception ex) { + ex.printStackTrace(); + } + switch(getDefaultCloseOperation()) { + case HIDE_ON_CLOSE: + setVisible(false); + break; + case DISPOSE_ON_CLOSE: + dispose(); + break; + case EXIT_ON_CLOSE: + System.exit(0); + break; + case DO_NOTHING_ON_CLOSE: + default: + break; + } + } + }); + fileMenu.add(exitMenuItem); + menuBar.add(fileMenu); + JMenu helpMenu = new JMenu("Help"); + helpMenu.setMnemonic('H'); + JMenuItem aboutMenuItem = new JMenuItem("About"); + aboutMenuItem.setMnemonic('A'); + aboutMenuItem.addActionListener(new ActionListener() { + @Override + public void actionPerformed(ActionEvent e) { + final JDialog aboutDialog = new JDialog(Console.this, "About jOOQ Console", ModalityType.APPLICATION_MODAL); + aboutDialog.setResizable(false); + Container contentPane = aboutDialog.getContentPane(); + JPanel centerPane = new JPanel(new GridBagLayout()); + centerPane.setBorder(BorderFactory.createEmptyBorder(20, 20, 20, 20)); + centerPane.add(new JLabel("jOOQ library: "), new GridBagConstraints(0, 0, 1, 1, 0, 0, GridBagConstraints.CENTER, GridBagConstraints.HORIZONTAL, new Insets(0, 0, 0, 0), 0, 0)); + centerPane.add(new JLabel("Lukas Eder"), new GridBagConstraints(1, 0, 1, 1, 0, 0, GridBagConstraints.CENTER, GridBagConstraints.HORIZONTAL, new Insets(0, 0, 0, 0), 0, 0)); + centerPane.add(new JLabel("jOOQ Console: "), new GridBagConstraints(0, 1, 1, 1, 0, 0, GridBagConstraints.CENTER, GridBagConstraints.HORIZONTAL, new Insets(5, 0, 0, 0), 0, 0)); + centerPane.add(new JLabel("Christopher Deckers"), new GridBagConstraints(1, 1, 1, 1, 0, 0, GridBagConstraints.CENTER, GridBagConstraints.HORIZONTAL, new Insets(5, 0, 0, 0), 0, 0)); + centerPane.add(new JLabel("License: "), new GridBagConstraints(0, 2, 1, 1, 0, 0, GridBagConstraints.CENTER, GridBagConstraints.HORIZONTAL, new Insets(5, 0, 0, 0), 0, 0)); + centerPane.add(new JLabel("Apache License, Version 2.0"), new GridBagConstraints(1, 2, 1, 1, 0, 0, GridBagConstraints.CENTER, GridBagConstraints.HORIZONTAL, new Insets(5, 0, 0, 0), 0, 0)); + centerPane.add(new JLabel("Web site: "), new GridBagConstraints(0, 3, 1, 1, 0, 0, GridBagConstraints.CENTER, GridBagConstraints.HORIZONTAL, new Insets(5, 0, 0, 0), 0, 0)); + JLabel siteLabel = new JLabel("http://www.jooq.org"); + siteLabel.setForeground(Color.BLUE); + Map attributeMap = new HashMap(); + attributeMap.put(TextAttribute.UNDERLINE, TextAttribute.UNDERLINE_LOW_ONE_PIXEL); + siteLabel.setFont(siteLabel.getFont().deriveFont(attributeMap)); + siteLabel.setCursor(Cursor.getPredefinedCursor(Cursor.HAND_CURSOR)); + siteLabel.addMouseListener(new MouseAdapter() { + @Override + public void mousePressed(MouseEvent e) { + try { + Desktop.getDesktop().browse(new URI("http://www.jooq.org")); + } + catch (Exception ex) { + ex.printStackTrace(); + } + } + }); + centerPane.add(siteLabel, new GridBagConstraints(1, 3, 1, 1, 0, 0, GridBagConstraints.CENTER, GridBagConstraints.HORIZONTAL, new Insets(5, 0, 0, 0), 0, 0)); + contentPane.add(centerPane, BorderLayout.CENTER); + JPanel southPane = new JPanel(new FlowLayout(FlowLayout.RIGHT)); + JButton okButton = new JButton("OK"); + okButton.addActionListener(new ActionListener() { + @Override + public void actionPerformed(ActionEvent e) { + aboutDialog.dispose(); + } + }); + southPane.add(okButton); + contentPane.add(southPane, BorderLayout.SOUTH); + aboutDialog.pack(); + aboutDialog.setLocationRelativeTo(Console.this); + aboutDialog.setVisible(true); + } + }); + helpMenu.add(aboutMenuItem); + menuBar.add(helpMenu); + setJMenuBar(menuBar); + mainTabbedPane = new JTabbedPane(); + String title = "jOOQ Console"; + if(editorDatabaseDescriptor != null) { + String schemaName = editorDatabaseDescriptor.getSchema().getName(); + if(schemaName != null && schemaName.length() != 0) { + title += " - " + schemaName; + } + } + setTitle(title); + if(editorDatabaseDescriptor != null) { + addEditorTab(editorDatabaseDescriptor); + } + if(isShowingLoggingTab) { + addLoggerTab(); + } + getContentPane().add(mainTabbedPane, BorderLayout.CENTER); + setLocationByPlatform(true); + setSize(800, 600); + addNotify(); + if(editorDatabaseDescriptor != null) { + getFocusedEditorPane().adjustDefaultFocus(); + } + addWindowListener(new WindowAdapter() { + @Override + public void windowClosing(WindowEvent e) { + try { + performCleanup(); + } catch(Exception ex) { + ex.printStackTrace(); + } + } + }); + } + + private void performCleanup() { + if(sqlLoggerPane != null) { + sqlLoggerPane.setLogging(false); + } + if(editorTabbedPane != null) { + for(int i=editorTabbedPane.getTabCount()-2; i>=0; i--) { + ((EditorPane)editorTabbedPane.getComponentAt(i)).closeConnection(); + } + } + } + + private LoggerPane sqlLoggerPane; + + private void addLoggerTab() { + sqlLoggerPane = new LoggerPane(); + mainTabbedPane.addTab("Logger", sqlLoggerPane); + } + + private void addEditorTab(final DatabaseDescriptor databaseDescriptor) { + JPanel editorsPane = new JPanel(new BorderLayout()); + final String[] tableNames = getTableNames(databaseDescriptor); + final JList tableNamesJList = new JList(tableNames); + tableNamesJList.addMouseListener(new MouseAdapter() { + @Override + public void mousePressed(MouseEvent e) { + if(e.getClickCount() == 2 && e.getButton() == MouseEvent.BUTTON1) { + Object[] values = tableNamesJList.getSelectedValues(); + if(values.length == 1) { + getFocusedEditorPane().evaluate("SELECT * FROM " + values[0]); + } + } + } + }); + editorTabbedPane = new JTabbedPane(); + editorTabbedPane.setTabLayoutPolicy(JTabbedPane.SCROLL_TAB_LAYOUT); + editorTabbedPane.addTab("New...", new JPanel()); + editorTabbedPane.addChangeListener(new ChangeListener() { + @Override + public void stateChanged(ChangeEvent e) { + if(!isAdjusting && editorTabbedPane.getSelectedIndex() == editorTabbedPane.getTabCount() - 1) { + addSQLEditorPane(databaseDescriptor); + } + } + }); + JPanel tableNamePane = new JPanel(new BorderLayout()); + final JTextField tableNameFilterTextField = new JTextField(); + tableNameFilterTextField.getDocument().addDocumentListener(new DocumentListener() { + @Override + public void removeUpdate(DocumentEvent e) { + filter(); + } + @Override + public void insertUpdate(DocumentEvent e) { + filter(); + } + @Override + public void changedUpdate(DocumentEvent e) { + filter(); + } + private void filter() { + String filterText = tableNameFilterTextField.getText(); + final List tableNameList = new ArrayList(tableNames.length); + if(filterText == null || filterText.length() == 0) { + tableNameList.addAll(Arrays.asList(tableNames)); + } else { + String[] filterTexts = filterText.split(" "); + for(String tableName: tableNames) { + boolean isAccepted = true; + int lastIndex = 0; + for(int j=0; j=0; i--) { + if(Character.isUpperCase(filter.charAt(i))) { + isCaseSensitive = true; + break; + } + } + int index; + if(isCaseSensitive) { + index = tableName.indexOf(filter, lastIndex); + } else { + index = tableName.toLowerCase(Locale.ENGLISH).indexOf(filter.toLowerCase(Locale.ENGLISH), lastIndex); + } + if(index < 0) { + isAccepted = false; + break; + } + lastIndex = index + filter.length() + 1; + } + if(isAccepted) { + tableNameList.add(tableName); + } + } + } + tableNamesJList.setModel(new AbstractListModel() { + @Override + public int getSize() { return tableNameList.size(); } + @Override + public String getElementAt(int i) { return tableNameList.get(i); } + }); + } + }); + tableNameFilterTextField.addActionListener(new ActionListener() { + @Override + public void actionPerformed(ActionEvent e) { + ListModel model = tableNamesJList.getModel(); + if(model.getSize() >= 1) { + Object selectedValue = tableNamesJList.getSelectedValue(); + getFocusedEditorPane().evaluate("SELECT * FROM " + (selectedValue == null? model.getElementAt(0): selectedValue)); + } + } + }); + tableNameFilterTextField.addKeyListener(new KeyAdapter() { + @Override + public void keyPressed(KeyEvent e) { + if(e.getKeyCode() == KeyEvent.VK_DOWN) { + ListModel model = tableNamesJList.getModel(); + if(model.getSize() >= 1) { + tableNamesJList.setSelectedIndex(0); + tableNamesJList.requestFocus(); + } + } + } + }); + tableNamesJList.addKeyListener(new KeyAdapter() { + @Override + public void keyPressed(KeyEvent e) { + switch(e.getKeyCode()) { + case KeyEvent.VK_UP: { + if(tableNamesJList.getSelectedIndex() == 0) { + tableNamesJList.clearSelection(); + tableNameFilterTextField.requestFocus(); + } + break; + } + case KeyEvent.VK_ENTER: { + Object selectedValue = tableNamesJList.getSelectedValue(); + if(selectedValue != null) { + getFocusedEditorPane().evaluate("SELECT * FROM " + selectedValue); + } + break; + } + } + } + }); + tableNamePane.add(tableNameFilterTextField, BorderLayout.NORTH); + tableNamePane.add(new JScrollPane(tableNamesJList), BorderLayout.CENTER); + JSplitPane horizontalSplitPane = new JSplitPane(JSplitPane.HORIZONTAL_SPLIT, true, tableNamePane, editorTabbedPane); + addSQLEditorPane(databaseDescriptor); + editorsPane.add(horizontalSplitPane, BorderLayout.CENTER); + mainTabbedPane.addTab("Editor", editorsPane); + } + + public static void openConsole(DatabaseDescriptor databaseDescriptor, boolean isLoggingActive) { + Console sqlConsoleFrame = new Console(databaseDescriptor, true); + sqlConsoleFrame.setLoggingActive(isLoggingActive); + sqlConsoleFrame.setVisible(true); + } + + public void setLoggingActive(boolean isLoggingActive) { + if(sqlLoggerPane != null) { + sqlLoggerPane.setLogging(isLoggingActive); + // Logger is the last tab. + mainTabbedPane.setSelectedIndex(mainTabbedPane.getTabCount() - 1); + } + } + + private boolean isAdjusting; + private int contextCount = 1; + + private void addSQLEditorPane(DatabaseDescriptor databaseDescriptor) { + isAdjusting = true; + int index = editorTabbedPane.getTabCount() - 1; + final EditorPane sqlEditorPane = new EditorPane(databaseDescriptor); + String title = "Context " + contextCount++; + editorTabbedPane.insertTab(title, null, sqlEditorPane, null, index); + final JPanel tabComponent = new JPanel(new BorderLayout()); + tabComponent.setOpaque(false); + tabComponent.add(new JLabel(title), BorderLayout.CENTER); + final JLabel closeLabel = new JLabel(new ImageIcon(getClass().getResource("/org/jooq/debug/console/resources/TabCloseInactive14.png"))); + closeLabel.setBorder(BorderFactory.createEmptyBorder(0, 2, 0, 0)); + closeLabel.addMouseListener(new MouseAdapter() { + @Override + public void mouseReleased(MouseEvent e) { + if(!closeLabel.contains(e.getPoint())) { + return; + } + isAdjusting = true; + if(editorTabbedPane.getTabCount() > 2) { + for(int i=editorTabbedPane.getTabCount()-1; i>=0; i--) { + if(editorTabbedPane.getTabComponentAt(i) == tabComponent) { + ((EditorPane)editorTabbedPane.getComponentAt(i)).closeConnection(); + editorTabbedPane.removeTabAt(i); + if(i == editorTabbedPane.getTabCount() - 1) { + editorTabbedPane.setSelectedIndex(i - 1); + } + break; + } + } + } + isAdjusting = false; + } + @Override + public void mouseEntered(MouseEvent e) { + if(editorTabbedPane.getTabCount() > 2) { + closeLabel.setIcon(new ImageIcon(getClass().getResource("/org/jooq/debug/console/resources/TabCloseActive14.png"))); + } + } + @Override + public void mouseExited(MouseEvent e) { + closeLabel.setIcon(new ImageIcon(getClass().getResource("/org/jooq/debug/console/resources/TabCloseInactive14.png"))); + } + }); + editorTabbedPane.addChangeListener(new ChangeListener() { + @Override + public void stateChanged(ChangeEvent e) { + int selectedIndex = editorTabbedPane.getSelectedIndex(); + Component tabComponent2 = editorTabbedPane.getTabComponentAt(selectedIndex); + closeLabel.setVisible(tabComponent2 == tabComponent && editorTabbedPane.getTabCount() > 2); + } + }); + tabComponent.add(closeLabel, BorderLayout.EAST); + editorTabbedPane.setTabComponentAt(index, tabComponent); + editorTabbedPane.setSelectedIndex(index); + isAdjusting = false; + sqlEditorPane.adjustDefaultFocus(); + } + + private EditorPane getFocusedEditorPane() { + return (EditorPane)editorTabbedPane.getSelectedComponent(); + } + + private static String[] getTableNames(DatabaseDescriptor databaseDescriptor) { + List> tableList = databaseDescriptor.getSchema().getTables(); + List tableNameList = new ArrayList(); + for(Table table: tableList) { + String tableName = table.getName(); + tableNameList.add(tableName); + } + Collections.sort(tableNameList, String.CASE_INSENSITIVE_ORDER); + return tableNameList.toArray(new String[0]); + } + + public static void main(String[] args) { + if(args.length < 2) { + System.out.println("Please specify IP and port of a running RemoteDebuggerServer"); + System.out.println("Usage: Console "); + return; + } + try { + new RemoteDebuggerClient(args[0], Integer.parseInt(args[1])); + } catch(Exception e) { + e.printStackTrace(); + return; + } + try { + UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName()); + } catch (Exception e) { + e.printStackTrace(); + } + SwingUtilities.invokeLater(new Runnable() { + @Override + public void run() { + Console sqlConsoleFrame = new Console(null, true); + sqlConsoleFrame.setDefaultCloseOperation(EXIT_ON_CLOSE); + sqlConsoleFrame.setVisible(true); + } + }); + } + +} diff --git a/jOOQ-console/src/main/java/org/jooq/debug/console/DatabaseDescriptor.java b/jOOQ-console/src/main/java/org/jooq/debug/console/DatabaseDescriptor.java new file mode 100644 index 00000000000..9bb40ffd5d7 --- /dev/null +++ b/jOOQ-console/src/main/java/org/jooq/debug/console/DatabaseDescriptor.java @@ -0,0 +1,59 @@ +/** + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com + * Christopher Deckers, chrriis@gmail.com + * All rights reserved. + * + * This software is licensed to you under the Apache License, Version 2.0 + * (the "License"); You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * 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 "jOOQ" 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 COPYRIGHT OWNER 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. + */ +package org.jooq.debug.console; + +import java.sql.Connection; + +import org.jooq.SQLDialect; +import org.jooq.Schema; + +/** + * @author Christopher Deckers + */ +public abstract class DatabaseDescriptor { + + public abstract Schema getSchema(); + + public abstract SQLDialect getSQLDialect(); + + public abstract Connection createConnection(); + + public boolean isReadOnly() { + return false; + } + +} diff --git a/jOOQ-console/src/main/java/org/jooq/debug/console/EditorPane.java b/jOOQ-console/src/main/java/org/jooq/debug/console/EditorPane.java new file mode 100644 index 00000000000..60a31190c90 --- /dev/null +++ b/jOOQ-console/src/main/java/org/jooq/debug/console/EditorPane.java @@ -0,0 +1,1204 @@ +/** + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com + * Christopher Deckers, chrriis@gmail.com + * All rights reserved. + * + * This software is licensed to you under the Apache License, Version 2.0 + * (the "License"); You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * 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 "jOOQ" 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 COPYRIGHT OWNER 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. + */ +package org.jooq.debug.console; + +import java.awt.BorderLayout; +import java.awt.Color; +import java.awt.Component; +import java.awt.Dimension; +import java.awt.FlowLayout; +import java.awt.Font; +import java.awt.Insets; +import java.awt.Rectangle; +import java.awt.event.ActionEvent; +import java.awt.event.ActionListener; +import java.awt.event.InputEvent; +import java.awt.event.ItemEvent; +import java.awt.event.ItemListener; +import java.awt.event.KeyAdapter; +import java.awt.event.KeyEvent; +import java.awt.event.MouseAdapter; +import java.awt.event.MouseEvent; +import java.io.BufferedInputStream; +import java.io.BufferedReader; +import java.io.ByteArrayOutputStream; +import java.io.InputStream; +import java.io.PrintWriter; +import java.io.Reader; +import java.io.StringWriter; +import java.sql.Blob; +import java.sql.Clob; +import java.sql.Connection; +import java.sql.ResultSet; +import java.sql.ResultSetMetaData; +import java.sql.SQLException; +import java.sql.Statement; +import java.sql.Timestamp; +import java.sql.Types; +import java.text.NumberFormat; +import java.util.ArrayList; +import java.util.Arrays; +import java.util.Collections; +import java.util.Comparator; +import java.util.Date; +import java.util.HashSet; +import java.util.List; +import java.util.Locale; +import java.util.Set; +import java.util.regex.Matcher; +import java.util.regex.Pattern; + +import javax.swing.Box; +import javax.swing.DefaultCellEditor; +import javax.swing.DefaultListCellRenderer; +import javax.swing.Icon; +import javax.swing.ImageIcon; +import javax.swing.JButton; +import javax.swing.JCheckBox; +import javax.swing.JFormattedTextField; +import javax.swing.JLabel; +import javax.swing.JList; +import javax.swing.JMenuItem; +import javax.swing.JPanel; +import javax.swing.JPopupMenu; +import javax.swing.JScrollPane; +import javax.swing.JSplitPane; +import javax.swing.JTabbedPane; +import javax.swing.JTable; +import javax.swing.JTextArea; +import javax.swing.JTextField; +import javax.swing.JToggleButton; +import javax.swing.JToolBar; +import javax.swing.RowFilter; +import javax.swing.RowSorter; +import javax.swing.SortOrder; +import javax.swing.SwingUtilities; +import javax.swing.ToolTipManager; +import javax.swing.UIManager; +import javax.swing.event.DocumentEvent; +import javax.swing.event.DocumentListener; +import javax.swing.event.ListSelectionEvent; +import javax.swing.event.ListSelectionListener; +import javax.swing.table.AbstractTableModel; +import javax.swing.table.DefaultTableCellRenderer; +import javax.swing.table.JTableHeader; +import javax.swing.table.TableCellEditor; +import javax.swing.table.TableCellRenderer; +import javax.swing.table.TableRowSorter; +import javax.swing.text.BadLocationException; + +import org.jooq.Field; +import org.jooq.Record; +import org.jooq.SQLDialect; +import org.jooq.Table; +import org.jooq.debug.console.misc.JTableX; +import org.jooq.debug.console.misc.Utils; + +import org.fife.ui.rtextarea.RTextScrollPane; + +/** + * @author Christopher Deckers + */ +public class EditorPane extends JPanel { + + private static final int MAX_ROW_COUNT = 10000; + private boolean isUsingMaxRowCount = true; + private JFormattedTextField displayedRowCountField; + + private DatabaseDescriptor databaseDescriptor; + private SqlTextArea editorTextArea; + private JPanel southPanel = new JPanel(new BorderLayout()); + private boolean isDBEditable; + private JButton startButton; + private JButton stopButton; + + EditorPane(DatabaseDescriptor databaseDescriptor) { + super(new BorderLayout()); + this.databaseDescriptor = databaseDescriptor; + this.isDBEditable = !databaseDescriptor.isReadOnly(); + setOpaque(false); + JPanel northPanel = new JPanel(new BorderLayout()); + northPanel.setOpaque(false); + JToolBar northWestPanel = new JToolBar(); + northWestPanel.setOpaque(false); + northWestPanel.setFloatable(false); + startButton = new JButton(new ImageIcon(getClass().getResource("/org/jooq/debug/console/resources/Play16.png"))); + startButton.setOpaque(false); + startButton.setFocusable(false); +// startButton.setMargin(new Insets(2, 2, 2, 2)); + startButton.setToolTipText("Run the (selected) text (F5)"); + startButton.addActionListener(new ActionListener() { + @Override + public void actionPerformed(ActionEvent e) { + evaluateInternal(); + } + }); + northWestPanel.add(startButton); + stopButton = new JButton(new ImageIcon(getClass().getResource("/org/jooq/debug/console/resources/Stop16.png"))); + stopButton.setVisible(false); + stopButton.setOpaque(false); + stopButton.setFocusable(false); +// stopButton.setMargin(new Insets(2, 2, 2, 2)); + stopButton.addActionListener(new ActionListener() { + @Override + public void actionPerformed(ActionEvent e) { + evaluationThread = null; + closeConnection(); + } + }); + northWestPanel.add(stopButton); + northPanel.add(northWestPanel, BorderLayout.WEST); + JPanel northEastPanel = new JPanel(new FlowLayout(FlowLayout.CENTER, 5, 2)); + northEastPanel.setOpaque(false); + JCheckBox limitCheckBox = new JCheckBox("Parse 10000 rows max", isUsingMaxRowCount); + limitCheckBox.addItemListener(new ItemListener() { + @Override + public void itemStateChanged(ItemEvent e) { + isUsingMaxRowCount = e.getStateChange() == ItemEvent.SELECTED; + } + }); + limitCheckBox.setOpaque(false); + northEastPanel.add(limitCheckBox); + northEastPanel.add(Box.createHorizontalStrut(5)); + northEastPanel.add(new JLabel("No display when rows >")); + NumberFormat numberFormat = NumberFormat.getIntegerInstance(); + displayedRowCountField = new JFormattedTextField(numberFormat); + displayedRowCountField.setHorizontalAlignment(JFormattedTextField.RIGHT); + displayedRowCountField.setValue(100000); + displayedRowCountField.setColumns(7); + northEastPanel.add(displayedRowCountField); + northPanel.add(northEastPanel, BorderLayout.CENTER); + add(northPanel, BorderLayout.NORTH); +// editorTextArea = new JTextArea(); + editorTextArea = new SqlTextArea(); + editorTextArea.addKeyListener(new KeyAdapter() { + @Override + public void keyPressed(KeyEvent e) { + boolean isControlDown = e.isControlDown(); + switch(e.getKeyCode()) { + case KeyEvent.VK_SPACE: + if(isControlDown) { + showCompletion(); + } + break; + case KeyEvent.VK_F5: + if(startButton.isVisible()) { + evaluateInternal(); + } + break; + case KeyEvent.VK_ESCAPE: + new Thread("SQLConsole - Interruption") { + @Override + public void run() { + if(evaluationThread != null) { + evaluationThread = null; + closeConnection(); + } + } + }.start(); + break; + } + } + }); + RTextScrollPane editorTextAreaScrollPane = new RTextScrollPane(editorTextArea); + JSplitPane verticalSplitPane = new JSplitPane(JSplitPane.VERTICAL_SPLIT, true, editorTextAreaScrollPane, southPanel); + add(verticalSplitPane, BorderLayout.CENTER); + verticalSplitPane.setDividerLocation(150); + } + + private void evaluateInternal() { + String text = editorTextArea.getSelectedText(); + if(text == null || text.length() == 0) { + text = editorTextArea.getText(); + } + evaluateInternal(text); + } + + public void evaluate(final String sql) { + int caretPosition = editorTextArea.getSelectionStart(); + if(caretPosition == editorTextArea.getSelectionEnd()) { + String text = editorTextArea.getText(); + if((caretPosition == 0 || text.charAt(caretPosition - 1) == '\n') && (text.length() <= caretPosition || text.charAt(caretPosition) == '\n')) { + editorTextArea.insert(sql + '\n', caretPosition); + } + } + evaluateInternal(sql); + } + + public void evaluateInternal(final String sql) { + southPanel.removeAll(); + southPanel.revalidate(); + southPanel.repaint(); + SwingUtilities.invokeLater(new Runnable() { + @Override + public void run() { + evaluate_(sql); + } + }); + } + + private void evaluate_(String sql) { + // Here could pre process magic commands. + boolean isAllowed = true; + if(!isDBEditable) { + String simplifiedSql = sql.replaceAll("'[^']*'", ""); + Matcher matcher = Pattern.compile("[a-zA-Z_0-9\\$]+").matcher(simplifiedSql); + boolean isFirst = true; + while(matcher.find()) { + String word = simplifiedSql.substring(matcher.start(), matcher.end()).toUpperCase(Locale.ENGLISH); + if(isFirst && !word.equals("SELECT")) { + isAllowed = false; + break; + } + isFirst = false; + for(String keyword: new String[] { + "INSERT", + "UPDATE", + "DELETE", + "ALTER", + "DROP", + "CREATE", + "EXEC", + "EXECUTE", + }) { + if(word.equals(keyword)) { + isAllowed = false; + break; + } + } + } + } + if(!isAllowed) { + setMessage(southPanel, "It is only possible to execute SELECT queries.", true); + } else { + evaluate_unrestricted(sql); + } + southPanel.revalidate(); + southPanel.repaint(); + } + + private static class TypeInfo { + + private String columnName; + private int precision; + private int scale; + private int nullable = ResultSetMetaData.columnNullableUnknown; + + TypeInfo(ResultSetMetaData metaData, int column) { + try { + columnName = metaData.getColumnTypeName(column); + precision = metaData.getPrecision(column); + scale = metaData.getScale(column); + nullable = metaData.isNullable(column); + } catch (SQLException e) { + e.printStackTrace(); + } + } + + @Override + public String toString() { + StringBuilder sb = new StringBuilder(); + sb.append(columnName); + if(precision != 0) { + sb.append(" (" + precision + (scale != 0? ", " + scale: "") + ")"); + } + if(nullable != ResultSetMetaData.columnNullableUnknown) { + sb.append(nullable == ResultSetMetaData.columnNoNulls? " not null": " null"); + } + return sb.toString(); + } + + } + + private volatile Connection conn; + private volatile Statement stmt; + + private volatile Thread evaluationThread; + + private void evaluate_unrestricted(final String sql) { + final int maxDisplayedRowCount = ((Number)displayedRowCountField.getValue()).intValue(); + evaluationThread = new Thread("SQLConsole - Evaluation") { + @Override + public void run() { + evaluate_unrestricted_nothread(sql, maxDisplayedRowCount); + evaluationThread = null; + } + }; + evaluationThread.start(); + } + + private void evaluate_unrestricted_nothread(final String sql, final int maxDisplayedRowCount) { + closeConnection(); + SwingUtilities.invokeLater(new Runnable() { + @Override + public void run() { + startButton.setVisible(false); + stopButton.setVisible(true); + stopButton.setToolTipText("Query started on " + Utils.formatDateTimeTZ(new Date())); + } + }); + try { + conn = databaseDescriptor.createConnection(); + stmt = conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE, ResultSet.CONCUR_UPDATABLE); + final long start = System.currentTimeMillis(); + if(evaluationThread != Thread.currentThread()) { + SwingUtilities.invokeLater(new Runnable() { + @Override + public void run() { + setMessage(addResultPane(), "Interrupted by user after " + Utils.formatDuration(System.currentTimeMillis() - start), true); + } + }); + return; + } + boolean executeResult; + try { + executeResult = stmt.execute(sql); + } catch(SQLException e) { + if(evaluationThread != Thread.currentThread()) { + SwingUtilities.invokeLater(new Runnable() { + @Override + public void run() { + setMessage(addResultPane(), "Interrupted by user after " + Utils.formatDuration(System.currentTimeMillis() - start), true); + } + }); + return; + } + throw e; + } + final long duration = System.currentTimeMillis() - start; + if(evaluationThread != Thread.currentThread()) { + SwingUtilities.invokeLater(new Runnable() { + @Override + public void run() { + setMessage(addResultPane(), "Interrupted by user after " + Utils.formatDuration(duration), true); + } + }); + return; + } + do { + if(executeResult) { + final ResultSet rs = stmt.getResultSet(); + ResultSetMetaData metaData = rs.getMetaData(); + // The first column is the line count + final String[] columnNames = new String[metaData.getColumnCount() + 1]; + final int[] columnTypes = new int[columnNames.length]; + final TypeInfo[] typeInfos = new TypeInfo[columnNames.length]; + final Class[] columnClasses = new Class[columnNames.length]; + columnNames[0] = ""; + columnClasses[0] = Integer.class; + for(int i=1; i rowDataList = new ArrayList(); + int rowCount = 0; + long rsStart = System.currentTimeMillis(); + while(rs.next() && (!isUsingMaxRowCount || rowCount < MAX_ROW_COUNT)) { + if(evaluationThread != Thread.currentThread()) { + SwingUtilities.invokeLater(new Runnable() { + @Override + public void run() { + setMessage(addResultPane(), "Interrupted by user after " + Utils.formatDuration(duration), true); + } + }); + return; + } + rowCount++; + Object[] rowData = new Object[columnNames.length]; + rowData[0] = rowCount; + for(int i=1; i=0; ) { + stringWriter.write(chars, 0, count); + } + rowData[i] = stringWriter.toString(); + } else { + rowData[i] = null; + } + break; + } + case Types.BLOB: { + Blob blob = rs.getBlob(i); + if(blob != null) { + ByteArrayOutputStream baos = new ByteArrayOutputStream(); + byte[] bytes = new byte[1024]; + InputStream in = new BufferedInputStream(blob.getBinaryStream()); + for(int count; (count=in.read(bytes))>=0; ) { + baos.write(bytes, 0, count); + } + rowData[i] = baos.toByteArray(); + } else { + rowData[i] = null; + } + break; + } + default: + Object object = rs.getObject(i); + if(object != null) { + String className = object.getClass().getName(); + if ("oracle.sql.TIMESTAMP".equals(className) || "oracle.sql.TIMESTAMPTZ".equals(className)) { + object = rs.getTimestamp(i); + } + // Probably something to do for oracle.sql.DATE + } + rowData[i] = object; + break; + } + } + if(rowCount <= maxDisplayedRowCount) { + rowDataList.add(rowData); + } else if(rowCount == maxDisplayedRowCount + 1) { + rowDataList.clear(); + } + } + final long rsDuration = System.currentTimeMillis() - rsStart; + final int rowCount_ = rowCount; + SwingUtilities.invokeLater(new Runnable() { + @Override + public void run() { + addResultTable(sql, duration, rs, columnNames, typeInfos, columnClasses, rowDataList, rowCount_, rsDuration, maxDisplayedRowCount); + } + }); + } else { + final int updateCount = stmt.getUpdateCount(); + SwingUtilities.invokeLater(new Runnable() { + @Override + public void run() { + setMessage(addResultPane(), Utils.formatDuration(duration) + "> " + updateCount + " row(s) affected.", false); + } + }); + } + if(databaseDescriptor.getSQLDialect() == SQLDialect.SQLSERVER) { + try { + executeResult = stmt.getMoreResults(Statement.KEEP_CURRENT_RESULT); + } catch(Exception e) { + executeResult = stmt.getMoreResults(); + } + } else { + executeResult = false; + } + } while(executeResult || stmt.getUpdateCount() != -1); + } catch(Exception e) { + StringWriter stringWriter = new StringWriter(); + e.printStackTrace(new PrintWriter(stringWriter)); + final String message = stringWriter.toString(); + SwingUtilities.invokeLater(new Runnable() { + @Override + public void run() { + setMessage(addResultPane(), message, true); + } + }); + } finally { + SwingUtilities.invokeLater(new Runnable() { + @Override + public void run() { + startButton.setVisible(true); + stopButton.setVisible(false); + stopButton.setToolTipText(null); + } + }); + if(!isDBEditable) { + closeConnection(); + } + } + } + + private void addResultTable(final String sql, long duration, final ResultSet rs, final String[] columnNames, final TypeInfo[] typeInfos, final Class[] columnClasses, final List rowDataList, int rowCount, long rsDuration, int maxDisplayedRowCount) { + JPanel resultPane = addResultPane(); + final JLabel label = new JLabel(" " + rowCount + " rows"); + FlowLayout flowLayout = new FlowLayout(FlowLayout.LEFT, 0, 0); + flowLayout.setAlignOnBaseline(true); + JPanel statusCountPane = new JPanel(flowLayout); + if(rowCount <= maxDisplayedRowCount) { + final JTableX table = new JTableX(new AbstractTableModel() { + @Override + public String getColumnName(int column) { + return columnNames[column].toString(); + } + @Override + public int getRowCount() { + return rowDataList.size(); + } + @Override + public int getColumnCount() { + return columnNames.length; + } + @Override + public Object getValueAt(int row, int col) { + return rowDataList.get(row)[col]; + } + @Override + public void setValueAt(Object o, int row, int col) { + if(Utils.equals(o, rowDataList.get(row)[col])) { + return; + } + int dbRow = (Integer)rowDataList.get(row)[0]; + try { + rs.absolute(dbRow); + rs.updateObject(col, o); + rs.updateRow(); + rowDataList.get(row)[col] = o; + } catch (SQLException e) { + e.printStackTrace(); + try { + rs.cancelRowUpdates(); + } catch (SQLException ex) { + ex.printStackTrace(); + } + } + } + @Override + public boolean isCellEditable(int rowIndex, int columnIndex) { + try { + if(rs.getConcurrency() == ResultSet.CONCUR_UPDATABLE) { + return isDBEditable && columnIndex > 0; + } + } catch (SQLException e) { + } + return false; + } + @Override + public Class getColumnClass(int columnIndex) { + return columnClasses[columnIndex]; + } + }) { + @Override + public TableCellEditor getCellEditor(int row, int column) { + TableCellEditor editor = super.getCellEditor(row, column); + if(editor instanceof DefaultCellEditor) { + DefaultCellEditor defaultEditor = (DefaultCellEditor) editor; + defaultEditor.setClickCountToStart(2); + } + return editor; + } + }; + JTableHeader tableHeader = new JTableHeader(table.getColumnModel()) { + @Override + public String getToolTipText(MouseEvent e) { + int col = getTable().convertColumnIndexToModel(columnAtPoint(e.getPoint())); + return col == 0? null: typeInfos[col].toString(); + } + }; + ToolTipManager.sharedInstance().registerComponent(tableHeader); + table.setTableHeader(tableHeader); + table.setDefaultRenderer(String.class, new DefaultTableCellRenderer() { + @Override + public Component getTableCellRendererComponent(JTable table, Object value, boolean isSelected, boolean hasFocus, int row, int column) { + if(value != null) { + value = "\"" + value + "\""; + } + return super.getTableCellRendererComponent(table, value, isSelected, hasFocus, row, column); + } + }); + final TableCellRenderer booleanRenderer = table.getDefaultRenderer(Boolean.class); + table.setDefaultRenderer(Boolean.class, new DefaultTableCellRenderer() { + @Override + public Component getTableCellRendererComponent(JTable table, Object value, boolean isSelected, boolean hasFocus, int row, int column) { + Component c = null; + if(value == null) { + c = super.getTableCellRendererComponent(table, " ", isSelected, hasFocus, row, column); + } else { + c = booleanRenderer.getTableCellRendererComponent(table, value, isSelected, hasFocus, row, column); + } + if(!isSelected) { + c.setBackground(row %2 == 0? UIManager.getColor("Table.background"): JTableX.getTableAlternateRowBackgroundColor()); + } + return c; + } + }); + table.setDefaultRenderer(Timestamp.class, new DefaultTableCellRenderer() { + @Override + public Component getTableCellRendererComponent(JTable table, Object value, boolean isSelected, boolean hasFocus, int row, int column) { + Component c = super.getTableCellRendererComponent(table, value, isSelected, hasFocus, row, column); + if(value != null && c instanceof JLabel) { + Timestamp timestamp = (Timestamp)value; + String s; + if(timestamp.getHours() != 0 || timestamp.getMinutes() != 0 || timestamp.getSeconds() != 0) { + s = Utils.formatDateTimeGMT((Timestamp)value); + } else { + s = Utils.formatDateGMT((Timestamp)value); + } + ((JLabel) c).setText(s); + } + return c; + } + }); + table.setDefaultRenderer(byte[].class, new DefaultTableCellRenderer() { + @Override + public Component getTableCellRendererComponent(JTable table, Object value, boolean isSelected, boolean hasFocus, int row, int column) { + Component c = super.getTableCellRendererComponent(table, value, isSelected, hasFocus, row, column); + if(value != null && c instanceof JLabel) { + byte[] bytes = (byte[])value; + ((JLabel) c).setText("Blob (" + bytes.length + " bytes)"); + } + return c; + } + }); + table.setAutoResizeMode(JTable.AUTO_RESIZE_OFF); + table.setAutoCreateRowSorter(true); + table.getRowSorter().setSortKeys(Arrays.asList(new RowSorter.SortKey(0, SortOrder.ASCENDING))); + table.setColumnSelectionAllowed(true); + table.applyMinimumAndPreferredColumnSizes(200); + resultPane.add(new JScrollPane(table), BorderLayout.CENTER); + table.getSelectionModel().addListSelectionListener(new ListSelectionListener() { + @Override + public void valueChanged(ListSelectionEvent e) { + int selectedRowCount = table.getSelectedRowCount(); + label.setText(" " + rowDataList.size() + " rows" + (selectedRowCount == 0? "": " - " + selectedRowCount + " selected rows")); + } + }); + table.addMouseListener(new MouseAdapter() { + @Override + public void mousePressed(MouseEvent e) { + int row = table.rowAtPoint(e.getPoint()); + int column = table.columnAtPoint(e.getPoint()); + if(!table.isCellSelected(row, column)) { + table.changeSelection(row, column, false, false); + } + maybeShowPopup(e); + } + @Override + public void mouseReleased(MouseEvent e) { + maybeShowPopup(e); + } + private void maybeShowPopup(MouseEvent e) { + if(!e.isPopupTrigger()) { + return; + } + boolean isEditable = false; + try { + if(rs.getConcurrency() == ResultSet.CONCUR_UPDATABLE) { + isEditable = isDBEditable; + } + } catch (SQLException ex) { + isEditable = false; + } + JPopupMenu menu = new JPopupMenu(); + int selectedRowCount = table.getSelectedRowCount(); + int selectedColumnCount = table.getSelectedColumnCount(); + boolean isAddingSeparator = false; + // Here to add custom menus. + if(isEditable) { + if(isAddingSeparator) { + isAddingSeparator = false; + menu.addSeparator(); + } + JMenuItem insertNullMenuItem = new JMenuItem("Insert NULL"); + insertNullMenuItem.addActionListener(new ActionListener() { + @Override + public void actionPerformed(ActionEvent e) { + int row = table.getSelectedRow(); + int column = table.getSelectedColumn(); + table.setValueAt(null, row, column); + } + }); + insertNullMenuItem.setEnabled(selectedRowCount == 1 && selectedColumnCount == 1 && table.convertColumnIndexToModel(table.getSelectedColumn()) != 0); + menu.add(insertNullMenuItem); + menu.addSeparator(); + JMenuItem deleteRowMenuItem = new JMenuItem("Delete " + (selectedRowCount > 1? selectedRowCount + " rows": "row")); + deleteRowMenuItem.addActionListener(new ActionListener() { + @Override + public void actionPerformed(ActionEvent e) { + int[] selectedRows = table.getSelectedRows(); + for(int i=selectedRows.length-1; i>=0; i--) { + selectedRows[i] = table.convertRowIndexToModel(selectedRows[i]); + } + Arrays.sort(selectedRows); + for(int i=selectedRows.length-1; i>=0; i--) { + int row = selectedRows[i]; + int dbRow = (Integer)rowDataList.get(row)[0]; + try { + rs.absolute(dbRow); + rs.deleteRow(); + rowDataList.remove(row); + ((AbstractTableModel)table.getModel()).fireTableRowsDeleted(row, row); + } catch (SQLException ex) { + ex.printStackTrace(); + } + } + } + }); + deleteRowMenuItem.setEnabled(selectedRowCount > 0); + menu.add(deleteRowMenuItem); + } + if(menu.getComponentCount() > 0) { + menu.show(e.getComponent(), e.getX(), e.getY()); + } + } + }); + final JPanel filterPane = new JPanel(flowLayout); + final JToggleButton filterToggleButton = new JToggleButton(new ImageIcon(getClass().getResource("/org/jooq/debug/console/resources/Search16.png"))); + filterToggleButton.setToolTipText("Filter (" + KeyEvent.getKeyModifiersText(InputEvent.CTRL_MASK) + "+" + KeyEvent.getKeyText(KeyEvent.VK_F) + ")"); + filterToggleButton.setMargin(new Insets(0, 0, 0, 0)); + filterPane.add(filterToggleButton); + final JTextField searchField = new JTextField(7); + searchField.getDocument().addDocumentListener(new DocumentListener() { + @Override + public void removeUpdate(DocumentEvent e) { + adjustFilter(); + } + @Override + public void insertUpdate(DocumentEvent e) { + adjustFilter(); + } + @Override + public void changedUpdate(DocumentEvent e) { + adjustFilter(); + } + private void adjustFilter() { + setFilter(table, searchField.getText()); + } + }); + searchField.setVisible(false); + filterPane.add(searchField); + filterToggleButton.addItemListener(new ItemListener() { + @Override + public void itemStateChanged(ItemEvent e) { + boolean isActive = e.getStateChange() == ItemEvent.SELECTED; + searchField.setVisible(isActive); + if(isActive) { + searchField.requestFocus(); + } else { + searchField.setText(""); + table.requestFocus(); + } + filterPane.revalidate(); + filterPane.repaint(); + } + }); + searchField.addKeyListener(new KeyAdapter() { + @Override + public void keyPressed(KeyEvent e) { + if(e.getKeyCode() == KeyEvent.VK_ESCAPE) { + e.consume(); + filterToggleButton.setSelected(false); + } else if(e.getKeyCode() == KeyEvent.VK_F && e.isControlDown()) { + filterToggleButton.setSelected(false); + } + } + }); + table.addKeyListener(new KeyAdapter() { + @Override + public void keyPressed(KeyEvent e) { + if(e.getKeyCode() == KeyEvent.VK_F && e.isControlDown()) { + e.consume(); + filterToggleButton.setSelected(true); + searchField.requestFocus(); + searchField.selectAll(); + } + } + }); + statusCountPane.add(filterPane); + } + JPanel southPanel = new JPanel(new BorderLayout()); + if(isUsingMaxRowCount && rowCount == MAX_ROW_COUNT) { + label.setForeground(Color.RED); + } + statusCountPane.add(label); + southPanel.add(statusCountPane, BorderLayout.WEST); + southPanel.add(new JLabel(Utils.formatDuration(duration) + " - " + Utils.formatDuration(rsDuration)), BorderLayout.EAST); + resultPane.add(southPanel, BorderLayout.SOUTH); + southPanel.setToolTipText(sql); + resultPane.revalidate(); + resultPane.repaint(); + } + + private String filter; + + public void setFilter(JTable table, String filter) { + if(filter != null && filter.length() == 0) { + this.filter = null; + ((TableRowSorter)table.getRowSorter()).setRowFilter(null); + return; + } + this.filter = filter; + ((TableRowSorter)table.getRowSorter()).setRowFilter(new RowFilter() { + @Override + public boolean include(javax.swing.RowFilter.Entry entry) { + String lcFilter = EditorPane.this.filter.toLowerCase(); + for (int i = entry.getValueCount() - 1; i >= 0; i--) { + if (entry.getStringValue(i).toLowerCase().contains(lcFilter)) { + return true; + } + } + return false; + } + }); + } + + private JPanel addResultPane() { + JPanel resultPane = new JPanel(new BorderLayout()); + int componentCount = southPanel.getComponentCount(); + if(componentCount == 0) { + southPanel.add(resultPane, BorderLayout.CENTER); + southPanel.revalidate(); + southPanel.repaint(); + } else { + JTabbedPane tabbedPane; + Component component0 = southPanel.getComponent(0); + if(component0 instanceof JTabbedPane) { + tabbedPane = (JTabbedPane)component0; + } else { + JPanel query1Panel = (JPanel)component0; + southPanel.remove(0); + tabbedPane = new JTabbedPane(); + tabbedPane.addTab("Query 1", query1Panel); + southPanel.add(tabbedPane, BorderLayout.CENTER); + southPanel.revalidate(); + southPanel.repaint(); + } + tabbedPane.addTab("Query " + (tabbedPane.getTabCount() + 1), resultPane); + } + return resultPane; + } + + void closeConnection() { + if (conn != null) { + if (stmt != null) { + try { + stmt.cancel(); + } catch (Exception e) { + } + try { + stmt.close(); + } catch (Exception e) { + } + } + stmt = null; + try { + conn.close(); + } catch (Exception e) { + } + conn = null; + } + } + + private void setMessage(JPanel messageContentPanel, String message, boolean isError) { + JTextArea textArea = new JTextArea(message); + Font editorFont = textArea.getFont().deriveFont(UIManager.getFont("TextField.font").getSize2D()); + textArea.setFont(new Font("Monospaced", editorFont.getStyle(), editorFont.getSize())); + textArea.setEditable(false); + if(isError) { + textArea.setForeground(Color.RED); + } + messageContentPanel.add(new JScrollPane(textArea), BorderLayout.CENTER); + messageContentPanel.revalidate(); + messageContentPanel.repaint(); + } + + private void showCompletion() { + try { + int caretPosition = editorTextArea.getCaretPosition(); + int wordStart = getWordStart(); + CompletionCandidate[] words = getFilteredWords(wordStart, editorTextArea.getText(wordStart, caretPosition - wordStart)); + if(words.length == 0) { + return; + } + final JPopupMenu w = new JPopupMenu(); + final JList jList = new JList(words); + jList.setCellRenderer(new DefaultListCellRenderer() { + private ImageIcon tableIcon = new ImageIcon(getClass().getResource("/org/jooq/debug/console/resources/Table16.png")); + private ImageIcon tableColumnIcon = new ImageIcon(getClass().getResource("/org/jooq/debug/console/resources/TableColumn16.png")); + private ImageIcon sqlIcon = new ImageIcon(getClass().getResource("/org/jooq/debug/console/resources/SQL16.png")); + @Override + public Component getListCellRendererComponent(JList list, Object value, int index, boolean isSelected, boolean cellHasFocus) { + Component c = super.getListCellRendererComponent(list, value, index, isSelected, cellHasFocus); + if(c instanceof JLabel) { + Icon icon; + switch(((CompletionCandidate)value).getKeyWordType()) { + case TABLE: icon = tableIcon; break; + case TABLE_COlUMN: icon = tableColumnIcon; break; + default: icon = sqlIcon; break; + } + ((JLabel)c).setIcon(icon); + } + return c; + } + }); + jList.setSelectedIndex(0); + jList.addKeyListener(new KeyAdapter() { + @Override + public void keyPressed(KeyEvent e) { + switch(e.getKeyCode()) { + case KeyEvent.VK_PAGE_UP: + case KeyEvent.VK_PAGE_DOWN: + case KeyEvent.VK_UP: + case KeyEvent.VK_DOWN: + case KeyEvent.VK_HOME: + case KeyEvent.VK_END: + case KeyEvent.VK_ESCAPE: + return; + case KeyEvent.VK_ENTER: + editorTextArea.replaceRange(((CompletionCandidate)jList.getSelectedValue()).toString(), getWordStart(), editorTextArea.getCaretPosition()); + w.setVisible(false); + return; + } + editorTextArea.dispatchEvent(new KeyEvent(editorTextArea, e.getID(), e.getWhen(), e.getModifiers(), e.getKeyCode(), e.getKeyChar(), e.getKeyLocation())); + if(e.getKeyChar() != KeyEvent.CHAR_UNDEFINED || e.getKeyCode() == KeyEvent.VK_LEFT || e.getKeyCode() == KeyEvent.VK_RIGHT) { + adjustListContent(); + } + } + @Override + public void keyReleased(KeyEvent e) { + switch(e.getKeyCode()) { + case KeyEvent.VK_PAGE_UP: + case KeyEvent.VK_PAGE_DOWN: + case KeyEvent.VK_UP: + case KeyEvent.VK_DOWN: + case KeyEvent.VK_HOME: + case KeyEvent.VK_END: + case KeyEvent.VK_ESCAPE: + case KeyEvent.VK_ENTER: + return; + } + editorTextArea.dispatchEvent(new KeyEvent(editorTextArea, e.getID(), e.getWhen(), e.getModifiers(), e.getKeyCode(), e.getKeyChar(), e.getKeyLocation())); + if(e.getKeyChar() != KeyEvent.CHAR_UNDEFINED || e.getKeyCode() == KeyEvent.VK_LEFT || e.getKeyCode() == KeyEvent.VK_RIGHT) { + adjustListContent(); + } + } + @Override + public void keyTyped(KeyEvent e) { + switch(e.getKeyCode()) { + case KeyEvent.VK_PAGE_UP: + case KeyEvent.VK_PAGE_DOWN: + case KeyEvent.VK_UP: + case KeyEvent.VK_DOWN: + case KeyEvent.VK_HOME: + case KeyEvent.VK_END: + case KeyEvent.VK_ESCAPE: + case KeyEvent.VK_ENTER: + return; + } + editorTextArea.dispatchEvent(new KeyEvent(editorTextArea, e.getID(), e.getWhen(), e.getModifiers(), e.getKeyCode(), e.getKeyChar(), e.getKeyLocation())); + if(e.getKeyChar() != KeyEvent.CHAR_UNDEFINED || e.getKeyCode() == KeyEvent.VK_LEFT || e.getKeyCode() == KeyEvent.VK_RIGHT) { + adjustListContent(); + } + } + private void adjustListContent() { + try { + int wordStart = getWordStart(); + CompletionCandidate[] words = getFilteredWords(wordStart, editorTextArea.getText(wordStart, editorTextArea.getCaretPosition() - wordStart)); + if(words.length == 0) { + w.setVisible(false); + return; + } + jList.setListData(words); + jList.setSelectedIndex(0); + } catch (BadLocationException e) { + e.printStackTrace(); + } + } + }); + jList.addMouseListener(new MouseAdapter() { + @Override + public void mousePressed(MouseEvent e) { + if(e.getButton() == MouseEvent.BUTTON1 && e.getClickCount() == 2) { + editorTextArea.replaceRange(((CompletionCandidate)jList.getSelectedValue()).toString(), getWordStart(), editorTextArea.getCaretPosition()); + w.setVisible(false); + } + } + }); + w.add(new JScrollPane(jList), BorderLayout.CENTER); + w.setPreferredSize(new Dimension(200, 200)); + Rectangle position = editorTextArea.modelToView(caretPosition); + w.show(editorTextArea, position.x + position.width, position.y + position.height); + jList.requestFocus(); + } catch (BadLocationException e) { + e.printStackTrace(); + } + } + + private int getWordStart() { + int caretPosition = editorTextArea.getCaretPosition(); + int wordStart = caretPosition; + while(wordStart > 0) { + try { + char c = editorTextArea.getText(wordStart - 1, 1).charAt(0); + if(!Character.isLetterOrDigit(c) && c!= '_') { + break; + } + } catch (BadLocationException e) { + e.printStackTrace(); + } + wordStart--; + } + return wordStart; + } + + private static enum KeyWordType { + DYNAMIC_STATEMENT, + TABLE, + TABLE_COlUMN, + KEYWORD, + } + + private static class CompletionCandidate { + private KeyWordType keyWordType; + private String word; + public CompletionCandidate(KeyWordType keyWordType, String word) { + this.keyWordType = keyWordType; + this.word = word; + } + public KeyWordType getKeyWordType() { + return keyWordType; + } + @Override + public String toString() { + return word; + } + } + + private CompletionCandidate[] getFilteredWords(int wordStart, String word) { + List candidateList = new ArrayList(); + // Here can add more candidates depending on magic word start. + if(candidateList.isEmpty()) { + for(String s: getTableNames()) { + candidateList.add(new CompletionCandidate(KeyWordType.TABLE, s)); + } + for(String s: getTableColumnNames()) { + candidateList.add(new CompletionCandidate(KeyWordType.TABLE_COlUMN, s)); + } + for(String s: new String[] { + "ALTER", + "ASC", + "BY", + "DESC", + "DROP", + "FROM", + "IN", + "INNER", + "INSERT", + "INTO", + "JOIN", + "LEFT", + "NOT", + "ORDER", + "SELECT", + "UPDATE", + "WHERE", + "AND", + "OR", + "EXISTS", + "HAVING", + "TOP", + "GROUP", + "SET", + }) { + candidateList.add(new CompletionCandidate(KeyWordType.KEYWORD, s)); + } + } + word = word.toUpperCase(Locale.ENGLISH); + List filteredCompletionCandidateList = new ArrayList(); + for(CompletionCandidate completionCandidate: candidateList) { + if(completionCandidate.toString().toLowerCase(Locale.ENGLISH).startsWith(word.toLowerCase(Locale.ENGLISH))) { + filteredCompletionCandidateList.add(completionCandidate); + } + } + Collections.sort(filteredCompletionCandidateList, new Comparator() { + @Override + public int compare(CompletionCandidate o1, CompletionCandidate o2) { + return String.CASE_INSENSITIVE_ORDER.compare(o1.toString(), o2.toString()); + } + }); + return filteredCompletionCandidateList.toArray(new CompletionCandidate[0]); + } + + private String[] getTableNames() { + List tableNameList = new ArrayList(); + for(Table table: databaseDescriptor.getSchema().getTables()) { + String tableName = table.getName(); + tableNameList.add(tableName); + } + Collections.sort(tableNameList, String.CASE_INSENSITIVE_ORDER); + return tableNameList.toArray(new String[0]); + } + + private String[] getTableColumnNames() { + Set columnNameSet = new HashSet(); + for(Table table: databaseDescriptor.getSchema().getTables()) { + for(Field field: table.getFields()) { + String columnName = field.getName(); + columnNameSet.add(columnName); + } + } + String[] columnNames = columnNameSet.toArray(new String[0]); + Arrays.sort(columnNames, String.CASE_INSENSITIVE_ORDER); + return columnNames; + } + + public void adjustDefaultFocus() { + editorTextArea.requestFocusInWindow(); + } + +} diff --git a/jOOQ-console/src/main/java/org/jooq/debug/console/LoggerPane.java b/jOOQ-console/src/main/java/org/jooq/debug/console/LoggerPane.java new file mode 100644 index 00000000000..63150ed42fc --- /dev/null +++ b/jOOQ-console/src/main/java/org/jooq/debug/console/LoggerPane.java @@ -0,0 +1,1077 @@ +/** + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com + * Christopher Deckers, chrriis@gmail.com + * All rights reserved. + * + * This software is licensed to you under the Apache License, Version 2.0 + * (the "License"); You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * 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 "jOOQ" 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 COPYRIGHT OWNER 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. + */ +package org.jooq.debug.console; + +import java.awt.BorderLayout; +import java.awt.Component; +import java.awt.Dimension; +import java.awt.FlowLayout; +import java.awt.GraphicsConfiguration; +import java.awt.Insets; +import java.awt.Point; +import java.awt.Rectangle; +import java.awt.Toolkit; +import java.awt.datatransfer.Clipboard; +import java.awt.datatransfer.StringSelection; +import java.awt.event.ActionEvent; +import java.awt.event.ActionListener; +import java.awt.event.ItemEvent; +import java.awt.event.ItemListener; +import java.awt.event.MouseAdapter; +import java.awt.event.MouseEvent; +import java.io.PrintWriter; +import java.io.StringWriter; +import java.text.SimpleDateFormat; +import java.util.ArrayList; +import java.util.Arrays; +import java.util.Date; +import java.util.HashMap; +import java.util.List; +import java.util.Map; +import java.util.regex.Pattern; + +import javax.swing.Icon; +import javax.swing.ImageIcon; +import javax.swing.JButton; +import javax.swing.JCheckBox; +import javax.swing.JLabel; +import javax.swing.JMenuItem; +import javax.swing.JPanel; +import javax.swing.JPopupMenu; +import javax.swing.JScrollPane; +import javax.swing.JSplitPane; +import javax.swing.JTable; +import javax.swing.JTextArea; +import javax.swing.JToggleButton; +import javax.swing.JToolBar; +import javax.swing.ListSelectionModel; +import javax.swing.Popup; +import javax.swing.PopupFactory; +import javax.swing.RowSorter; +import javax.swing.RowSorter.SortKey; +import javax.swing.SortOrder; +import javax.swing.SwingUtilities; +import javax.swing.Timer; +import javax.swing.TransferHandler; +import javax.swing.UIManager; +import javax.swing.event.ListSelectionEvent; +import javax.swing.event.ListSelectionListener; +import javax.swing.event.MouseInputAdapter; +import javax.swing.event.TableModelEvent; +import javax.swing.event.TableModelListener; +import javax.swing.table.AbstractTableModel; +import javax.swing.table.DefaultTableCellRenderer; + +import org.jooq.debug.Debugger; +import org.jooq.debug.DebuggerData; +import org.jooq.debug.DebuggerRegistry; +import org.jooq.debug.DebuggerResultSetData; +import org.jooq.debug.SqlQueryType; +import org.jooq.debug.console.misc.JTableX; +import org.jooq.debug.console.misc.RichTextTransferable; +import org.jooq.debug.console.misc.Utils; +import org.jooq.debug.console.misc.XTableColumnModel; + + +/** + * @author Christopher Deckers + */ +public class LoggerPane extends JPanel { + + private static final SimpleDateFormat TIMESTAMP_FORMAT = new SimpleDateFormat("HH:mm:ss.SSS"); + + private static final int COLUMN_LINE = 0; + private static final int COLUMN_TYPE = 1; + private static final int COLUMN_THREAD = 2; + private static final int COLUMN_TIMESTAMP = 3; + private static final int COLUMN_PS_PREPARATION_DURATION = 4; + private static final int COLUMN_PS_BINDING_DURATION = 5; + private static final int COLUMN_EXEC_TIME = 6; + private static final int COLUMN_RS_LIFETIME = 7; + private static final int COLUMN_RS_READ = 8; + private static final int COLUMN_RS_READ_ROWS = 9; + private static final int COLUMN_DUPLICATION_COUNT = 10; + private static final int COLUMN_QUERY = 11; + private static final int COLUMN_COUNT = COLUMN_QUERY + 1; + + private final ImageIcon INSERT_ICON = new ImageIcon(getClass().getResource("/org/jooq/debug/console/resources/SqlInsert16.png")); + private final ImageIcon UPDATE_ICON = new ImageIcon(getClass().getResource("/org/jooq/debug/console/resources/SqlUpdate16.png")); + private final ImageIcon DELETE_ICON = new ImageIcon(getClass().getResource("/org/jooq/debug/console/resources/SqlDelete16.png")); + private final ImageIcon OTHER_ICON = new ImageIcon(getClass().getResource("/org/jooq/debug/console/resources/SqlOther16.png")); + private final ImageIcon SELECT_ICON = new ImageIcon(getClass().getResource("/org/jooq/debug/console/resources/SqlSelect16.png")); + + private Debugger sqlQueryDebugger; + private JTableX table; + private SqlTextArea textArea; + private JLabel loggerStatusLabel; + private JButton loggerOnButton; + private JButton loggerOffButton; + private boolean isLogging; + private boolean isReadQueryTypeDisplayed = true; + private boolean isWriteQueryTypeDisplayed = true; + private boolean isOtherQueryTypeDisplayed = true; + private boolean isScrollLocked; + + public LoggerPane() { + super(new BorderLayout()); + setOpaque(false); + JPanel loggerHeaderPanel = new JPanel(new BorderLayout()); + loggerHeaderPanel.setOpaque(false); + JToolBar loggerHeaderWestPanel = new JToolBar(); + loggerHeaderWestPanel.setFloatable(false); + loggerHeaderWestPanel.setOpaque(false); + loggerOnButton = new JButton(new ImageIcon(getClass().getResource("/org/jooq/debug/console/resources/Paused16.png"))); + loggerOnButton.setOpaque(false); + loggerOnButton.setFocusable(false); + loggerOnButton.setToolTipText("Activate logging"); + loggerOnButton.addActionListener(new ActionListener() { + @Override + public void actionPerformed(ActionEvent e) { + setLogging(true); + } + }); + loggerHeaderWestPanel.add(loggerOnButton); + loggerOffButton = new JButton(new ImageIcon(getClass().getResource("/org/jooq/debug/console/resources/Running16.png"))); + loggerOffButton.setOpaque(false); + loggerOffButton.setFocusable(false); + loggerOffButton.setToolTipText("Deactivate logging"); + loggerOffButton.setVisible(false); + loggerOffButton.addActionListener(new ActionListener() { + @Override + public void actionPerformed(ActionEvent e) { + setLogging(false); + loggerOnButton.requestFocus(); + } + }); + loggerHeaderWestPanel.add(loggerOffButton); + loggerHeaderPanel.add(loggerHeaderWestPanel, BorderLayout.WEST); + JPanel loggerHeaderCenterPanel = new JPanel(new FlowLayout(FlowLayout.CENTER, 2, 2)); + loggerHeaderCenterPanel.setOpaque(false); + JCheckBox loggerThreadCheckBox = new JCheckBox("Threads", true); + loggerThreadCheckBox.setOpaque(false); + loggerThreadCheckBox.addItemListener(new ItemListener() { + @Override + public void itemStateChanged(ItemEvent e) { + boolean isThreadDisplayed = e.getStateChange() == ItemEvent.SELECTED; + XTableColumnModel columnModel = (XTableColumnModel)table.getColumnModel(); + columnModel.setColumnVisible(columnModel.getColumnByModelIndex(COLUMN_THREAD), isThreadDisplayed); + table.adjustLastColumn(); + } + }); + loggerHeaderCenterPanel.add(loggerThreadCheckBox); + JCheckBox loggerTimestampCheckBox = new JCheckBox("Timestamps", true); + loggerTimestampCheckBox.setOpaque(false); + loggerTimestampCheckBox.addItemListener(new ItemListener() { + @Override + public void itemStateChanged(ItemEvent e) { + boolean isTimestampDisplayed = e.getStateChange() == ItemEvent.SELECTED; + XTableColumnModel columnModel = (XTableColumnModel)table.getColumnModel(); + columnModel.setColumnVisible(columnModel.getColumnByModelIndex(COLUMN_TIMESTAMP), isTimestampDisplayed); + table.adjustLastColumn(); + } + }); + loggerHeaderCenterPanel.add(loggerTimestampCheckBox); + JCheckBox preparedStatementDataCheckBox = new JCheckBox("PS Data", true); + preparedStatementDataCheckBox.setOpaque(false); + preparedStatementDataCheckBox.addItemListener(new ItemListener() { + @Override + public void itemStateChanged(ItemEvent e) { + boolean isPreparedStatementDataShown = e.getStateChange() == ItemEvent.SELECTED; + XTableColumnModel columnModel = (XTableColumnModel)table.getColumnModel(); + columnModel.setColumnVisible(columnModel.getColumnByModelIndex(COLUMN_PS_PREPARATION_DURATION), isPreparedStatementDataShown); + columnModel.setColumnVisible(columnModel.getColumnByModelIndex(COLUMN_PS_BINDING_DURATION), isPreparedStatementDataShown); + table.adjustLastColumn(); + } + }); + loggerHeaderCenterPanel.add(preparedStatementDataCheckBox); + JCheckBox loggerDurationCheckBox = new JCheckBox("Exec Time", true); + loggerDurationCheckBox.setOpaque(false); + loggerDurationCheckBox.addItemListener(new ItemListener() { + @Override + public void itemStateChanged(ItemEvent e) { + boolean isDurationDisplayed = e.getStateChange() == ItemEvent.SELECTED; + XTableColumnModel columnModel = (XTableColumnModel)table.getColumnModel(); + columnModel.setColumnVisible(columnModel.getColumnByModelIndex(COLUMN_EXEC_TIME), isDurationDisplayed); + table.adjustLastColumn(); + } + }); + loggerHeaderCenterPanel.add(loggerDurationCheckBox); + JCheckBox resultSetDataCheckBox = new JCheckBox("RS Data", true); + resultSetDataCheckBox.setOpaque(false); + resultSetDataCheckBox.addItemListener(new ItemListener() { + @Override + public void itemStateChanged(ItemEvent e) { + boolean isResultSetDataShown = e.getStateChange() == ItemEvent.SELECTED; + XTableColumnModel columnModel = (XTableColumnModel)table.getColumnModel(); + columnModel.setColumnVisible(columnModel.getColumnByModelIndex(COLUMN_RS_LIFETIME), isResultSetDataShown); + columnModel.setColumnVisible(columnModel.getColumnByModelIndex(COLUMN_RS_READ), isResultSetDataShown); + columnModel.setColumnVisible(columnModel.getColumnByModelIndex(COLUMN_RS_READ_ROWS), isResultSetDataShown); + table.adjustLastColumn(); + } + }); + loggerHeaderCenterPanel.add(resultSetDataCheckBox); + JCheckBox duplicationCountCheckBox = new JCheckBox("Duplication", true); + duplicationCountCheckBox.setOpaque(false); + duplicationCountCheckBox.addItemListener(new ItemListener() { + @Override + public void itemStateChanged(ItemEvent e) { + boolean isDuplicationCountShown = e.getStateChange() == ItemEvent.SELECTED; + XTableColumnModel columnModel = (XTableColumnModel)table.getColumnModel(); + columnModel.setColumnVisible(columnModel.getColumnByModelIndex(COLUMN_DUPLICATION_COUNT), isDuplicationCountShown); + table.adjustLastColumn(); + } + }); + loggerHeaderCenterPanel.add(duplicationCountCheckBox); + loggerHeaderPanel.add(loggerHeaderCenterPanel, BorderLayout.CENTER); + JToolBar loggerHeaderEastPanel = new JToolBar(); + loggerHeaderEastPanel.setFloatable(false); + loggerHeaderEastPanel.setOpaque(false); + JToggleButton loggerReadQueryTypeToggleButton = new JToggleButton(SELECT_ICON, isReadQueryTypeDisplayed); + loggerReadQueryTypeToggleButton.setOpaque(false); + loggerReadQueryTypeToggleButton.setFocusable(false); + loggerReadQueryTypeToggleButton.setToolTipText("Show/hide read statements"); + loggerReadQueryTypeToggleButton.addItemListener(new ItemListener() { + @Override + public void itemStateChanged(ItemEvent e) { + isReadQueryTypeDisplayed = e.getStateChange() == ItemEvent.SELECTED; + refreshRows(); + } + }); + loggerHeaderEastPanel.add(loggerReadQueryTypeToggleButton); + JToggleButton loggerWriteQueryTypeToggleButton = new JToggleButton(UPDATE_ICON, isWriteQueryTypeDisplayed); + loggerWriteQueryTypeToggleButton.setOpaque(false); + loggerWriteQueryTypeToggleButton.setFocusable(false); + loggerWriteQueryTypeToggleButton.setToolTipText("Show/hide modification statements"); + loggerWriteQueryTypeToggleButton.addItemListener(new ItemListener() { + @Override + public void itemStateChanged(ItemEvent e) { + isWriteQueryTypeDisplayed = e.getStateChange() == ItemEvent.SELECTED; + refreshRows(); + } + }); + loggerHeaderEastPanel.add(loggerWriteQueryTypeToggleButton); + JToggleButton loggerOtherQueryTypeToggleButton = new JToggleButton(OTHER_ICON, isOtherQueryTypeDisplayed); + loggerOtherQueryTypeToggleButton.setOpaque(false); + loggerOtherQueryTypeToggleButton.setFocusable(false); + loggerOtherQueryTypeToggleButton.setToolTipText("Show/hide other types of statements"); + loggerOtherQueryTypeToggleButton.addItemListener(new ItemListener() { + @Override + public void itemStateChanged(ItemEvent e) { + isOtherQueryTypeDisplayed = e.getStateChange() == ItemEvent.SELECTED; + refreshRows(); + } + }); + loggerHeaderEastPanel.add(loggerOtherQueryTypeToggleButton); + JButton loggerClearButton = new JButton(new ImageIcon(getClass().getResource("/org/jooq/debug/console/resources/Clear16.png"))); + loggerClearButton.setOpaque(false); + loggerClearButton.setFocusable(false); + loggerClearButton.setToolTipText("Clear collected data"); + loggerClearButton.addActionListener(new ActionListener() { + @Override + public void actionPerformed(ActionEvent e) { + queryDebuggingInfoList.clear(); + textArea.setText(""); + int originalRowCount = displayedQueryDebuggingInfoList.size(); + displayedQueryDebuggingInfoList.clear(); + queriesToCountMap.clear(); + if(originalRowCount > 0) { + ((AbstractTableModel)table.getModel()).fireTableRowsDeleted(0, originalRowCount - 1); + } + updateStatusLabel(); + } + }); + loggerHeaderEastPanel.add(new JToolBar.Separator()); + loggerHeaderEastPanel.add(loggerClearButton); + JToggleButton scrollLockToggleButton = new JToggleButton(new ImageIcon(getClass().getResource("/org/jooq/debug/console/resources/LockScroll16.png"))); + scrollLockToggleButton.setFocusable(false); + scrollLockToggleButton.setToolTipText("Scroll Lock"); + scrollLockToggleButton.addItemListener(new ItemListener() { + @Override + public void itemStateChanged(ItemEvent e) { + isScrollLocked = e.getStateChange() == ItemEvent.SELECTED; + } + }); + loggerHeaderEastPanel.add(scrollLockToggleButton); + loggerHeaderPanel.add(loggerHeaderEastPanel, BorderLayout.EAST); + add(loggerHeaderPanel, BorderLayout.NORTH); + table = new JTableX(new AbstractTableModel() { + @Override + public Object getValueAt(int rowIndex, int columnIndex) { + QueryDebuggingInfo queryDebuggingInfo = displayedQueryDebuggingInfoList.get(rowIndex); + switch(columnIndex) { + case COLUMN_LINE: { + return rowIndex + 1; + } + case COLUMN_TYPE: { + return queryDebuggingInfo.getQueryType(); + } + case COLUMN_THREAD: { + return queryDebuggingInfo.getThreadName() + " [" + queryDebuggingInfo.getThreadId() + "]"; + } + case COLUMN_TIMESTAMP: { + return TIMESTAMP_FORMAT.format(new Date(queryDebuggingInfo.getTimestamp())); + } + case COLUMN_PS_PREPARATION_DURATION: { + Long duration = queryDebuggingInfo.getPrepardeStatementPreparationDuration(); + return duration == null? null: duration; + } + case COLUMN_PS_BINDING_DURATION: { + Long duration = queryDebuggingInfo.getPrepardeStatementBindingDuration(); + return duration == null? null: duration; + } + case COLUMN_EXEC_TIME: { + long duration = queryDebuggingInfo.getExecutionDuration(); + return duration < 0? null: duration; + } + case COLUMN_RS_LIFETIME: { + DebuggerResultSetData rsData = queryDebuggingInfo.getSqlQueryDebuggerResultSetData(); + return rsData == null? null: rsData.getLifeTime(); + } + case COLUMN_RS_READ: { + DebuggerResultSetData rsData = queryDebuggingInfo.getSqlQueryDebuggerResultSetData(); + return rsData == null? null: rsData.getReadCount(); + } + case COLUMN_RS_READ_ROWS: { + DebuggerResultSetData rsData = queryDebuggingInfo.getSqlQueryDebuggerResultSetData(); + return rsData == null? null: rsData.getReadRows(); + } + case COLUMN_DUPLICATION_COUNT: { + return queryDebuggingInfo.getDuplicationCount(); + } + case COLUMN_QUERY: { + StringBuilder querySB = new StringBuilder(); + String[] queries = queryDebuggingInfo.getQueries(); + for(int i=0; i 0) { + querySB.append(LS); + } + String s = queries[i]; + querySB.append(s.trim()); + } + return querySB.toString(); + } + } + return null; + } + + @Override + public int getRowCount() { + return displayedQueryDebuggingInfoList.size(); + } + + @Override + public int getColumnCount() { + return COLUMN_COUNT; + } + + @Override + public String getColumnName(int column) { + switch(column) { + case COLUMN_LINE: + return "Line"; + case COLUMN_TYPE: + return "Type"; + case COLUMN_THREAD: + return "Thread"; + case COLUMN_TIMESTAMP: + return "Timestamp"; + case COLUMN_PS_PREPARATION_DURATION: + return "PS preparation (ms)"; + case COLUMN_PS_BINDING_DURATION: + return "PS binding (ms)"; + case COLUMN_EXEC_TIME: + return "Exec time (ms)"; + case COLUMN_RS_LIFETIME: + return "RS lifetime (ms)"; + case COLUMN_RS_READ: + return "RS read"; + case COLUMN_RS_READ_ROWS: + return "RS rows"; + case COLUMN_DUPLICATION_COUNT: + return "Duplic."; + case COLUMN_QUERY: + return "Query"; + } + return null; + } + + @Override + public Class getColumnClass(int columnIndex) { + switch(columnIndex) { + case COLUMN_LINE: return Integer.class; + case COLUMN_TYPE: return SqlQueryType.class; + case COLUMN_PS_PREPARATION_DURATION: return Long.class; + case COLUMN_PS_BINDING_DURATION: return Long.class; + case COLUMN_EXEC_TIME: return Long.class; + case COLUMN_RS_LIFETIME: return Long.class; + case COLUMN_RS_READ: return Integer.class; + case COLUMN_RS_READ_ROWS: return Integer.class; + case COLUMN_DUPLICATION_COUNT: return Integer.class; + case COLUMN_QUERY: return String.class; + } + return super.getColumnClass(columnIndex); + } + + }); + registerTooltip(); + table.setAutoCreateRowSorter(true); + table.getRowSorter().setSortKeys(Arrays.asList(new RowSorter.SortKey(COLUMN_LINE, SortOrder.ASCENDING))); + XTableColumnModel columnModel = new XTableColumnModel(); + table.setColumnModel(columnModel); + table.createDefaultColumnsFromModel(); + table.setAutoResizeMode(JTable.AUTO_RESIZE_OFF); + columnModel.getColumnByModelIndex(COLUMN_LINE).setPreferredWidth(30); + columnModel.getColumnByModelIndex(COLUMN_TYPE).setPreferredWidth(20); + columnModel.getColumnByModelIndex(COLUMN_TIMESTAMP).setPreferredWidth(80); + columnModel.getColumnByModelIndex(COLUMN_THREAD).setPreferredWidth(150); + columnModel.getColumnByModelIndex(COLUMN_DUPLICATION_COUNT).setPreferredWidth(40); + table.setColumnSelectionAllowed(true); + table.setFillsViewportHeight(true); +// ToolTipManager.sharedInstance().registerComponent(table); + table.setDefaultRenderer(SqlQueryType.class, new DefaultTableCellRenderer() { + @Override + public Component getTableCellRendererComponent(JTable table, Object value, boolean isSelected, boolean hasFocus, int row, int column) { + Component c = super.getTableCellRendererComponent(table, value, isSelected, hasFocus, row, column); + if(c instanceof JLabel) { + Icon icon = null; + int modelRow = table.convertRowIndexToModel(row); + QueryDebuggingInfo queryDebuggingInfo = displayedQueryDebuggingInfoList.get(modelRow); + switch(queryDebuggingInfo.getQueryType()) { + case SELECT: icon = SELECT_ICON; break; + case INSERT: icon = INSERT_ICON; break; + case UPDATE: icon = UPDATE_ICON; break; + case DELETE: icon = DELETE_ICON; break; + case OTHER: icon = OTHER_ICON; break; + } + ((JLabel)c).setText(null); + ((JLabel)c).setIcon(icon); + } + return c; + } + }); + table.setDefaultRenderer(String.class, new DefaultTableCellRenderer() { + private Pattern pattern = Pattern.compile("[\\t\\n\\x0B\\f\\r]+"); + @Override + public Component getTableCellRendererComponent(JTable table, Object value, boolean isSelected, boolean hasFocus, int row, int column) { + // Convert special whitespace characters to a space. + if(value != null) { + value = pattern.matcher((String)value).replaceAll(" "); + } + return super.getTableCellRendererComponent(table, value, isSelected, hasFocus, row, column); + } + }); + table.addMouseListener(new MouseAdapter() { + @Override + public void mousePressed(MouseEvent e) { + maybeShowPopup(e); + } + @Override + public void mouseReleased(MouseEvent e) { + maybeShowPopup(e); + } + private void maybeShowPopup(MouseEvent e) { + if(e.isPopupTrigger()) { + Point location = e.getPoint(); + int row = table.rowAtPoint(location); + if(row < 0) { + return; + } + int column = table.columnAtPoint(location); + if(column < 0) { + return; + } + if(!table.isCellSelected(row, column)) { + ListSelectionModel selectionModel = table.getSelectionModel(); + selectionModel.clearSelection(); + selectionModel.addSelectionInterval(row, row); + } + JPopupMenu popupMenu = new JPopupMenu(); + int[] selectedRows = table.getSelectedRows(); + final QueryDebuggingInfo[] selectedQueryDebuggingInfos = new QueryDebuggingInfo[selectedRows.length]; + for(int i=0; i= 0 && table.getSelectedColumn() >= 0) { + JMenuItem copyCellsToClipboardMenuItem = new JMenuItem("Copy Selected Cells to Clipboard"); +// copyCellsToClipboardMenuItem.setAccelerator(keyStroke); + copyCellsToClipboardMenuItem.addActionListener(new ActionListener() { + @Override + public void actionPerformed(ActionEvent e) { + table.getTransferHandler().exportToClipboard(table, Toolkit.getDefaultToolkit().getSystemClipboard(), TransferHandler.COPY); + } + }); + popupMenu.add(copyCellsToClipboardMenuItem); + } + if(selectedQueryDebuggingInfos.length > 0) { + JMenuItem copyToClipboardMenuItem = new JMenuItem("Copy " + (selectedQueryDebuggingInfos.length > 1? selectedQueryDebuggingInfos.length + " ": "") + "Statement Data to Clipboard"); + copyToClipboardMenuItem.addActionListener(new ActionListener() { + @Override + public void actionPerformed(ActionEvent e) { + copyToClipboard(selectedQueryDebuggingInfos); + } + }); + popupMenu.add(copyToClipboardMenuItem); + } + if(displayedQueryDebuggingInfoList.size() > 0) { + JMenuItem copyAllToClipboardMenuItem = new JMenuItem("Copy All Statements Data (" + displayedQueryDebuggingInfoList.size() + ") to Clipboard"); + copyAllToClipboardMenuItem.addActionListener(new ActionListener() { + @Override + public void actionPerformed(ActionEvent e) { + copyToClipboard(displayedQueryDebuggingInfoList.toArray(new QueryDebuggingInfo[0])); + } + }); + popupMenu.add(copyAllToClipboardMenuItem); + } + if(selectedQueryDebuggingInfos.length == 1) { + if(popupMenu.getComponentCount() > 0) { + popupMenu.addSeparator(); + } + JMenuItem copyStackToClipboardMenuItem = new JMenuItem("Copy Call Stack to Clipboard"); + copyStackToClipboardMenuItem.addActionListener(new ActionListener() { + @Override + public void actionPerformed(ActionEvent e) { + StringWriter sw = new StringWriter(); + selectedQueryDebuggingInfos[0].getThrowable().printStackTrace(new PrintWriter(sw)); + Clipboard clipboard = Toolkit.getDefaultToolkit().getSystemClipboard(); + clipboard.setContents(new StringSelection(sw.toString()), null); + } + }); + popupMenu.add(copyStackToClipboardMenuItem); + JMenuItem dumpStackMenuItem = new JMenuItem("Dump Call Stack"); + dumpStackMenuItem.addActionListener(new ActionListener() { + @Override + public void actionPerformed(ActionEvent e) { + selectedQueryDebuggingInfos[0].getThrowable().printStackTrace(); + } + }); + popupMenu.add(dumpStackMenuItem); + } + if(popupMenu.getComponentCount() > 0) { + popupMenu.show(table, e.getX(), e.getY()); + } + } + } + }); + table.getSelectionModel().addListSelectionListener(new ListSelectionListener() { + @Override + public void valueChanged(ListSelectionEvent e) { + if(e.getValueIsAdjusting()) { + return; + } + int[] selectedRows = table.getSelectedRows(); + String text; + if(selectedRows.length > 30) { + text = "(Too many selected rows)"; + } else { + StringBuilder sb = new StringBuilder(); + for(int row: selectedRows) { + row = table.convertRowIndexToModel(row); + QueryDebuggingInfo queryDebuggingInfo = displayedQueryDebuggingInfoList.get(row); + for(String query: queryDebuggingInfo.getQueries()) { + sb.append(query.trim()).append(LS); + } + } + text = sb.toString(); + } + if(!text.equals(textArea.getText())) { + textArea.setText(text); + textArea.setCaretPosition(0); + } + updateStatusLabel(); + } + }); + textArea = new SqlTextArea(); + final JSplitPane splitPane = new JSplitPane(JSplitPane.VERTICAL_SPLIT, true, new JScrollPane(table), new JScrollPane(textArea)); + splitPane.setResizeWeight(1); + SwingUtilities.invokeLater(new Runnable() { + @Override + public void run() { + splitPane.setDividerLocation(splitPane.getHeight() - 100); + } + }); + add(splitPane, BorderLayout.CENTER); + loggerStatusLabel = new JLabel(); + updateStatusLabel(); + add(loggerStatusLabel, BorderLayout.SOUTH); + preparedStatementDataCheckBox.setSelected(false); + resultSetDataCheckBox.setSelected(false); + duplicationCountCheckBox.setSelected(false); + loggerTimestampCheckBox.setSelected(false); + loggerDurationCheckBox.setSelected(false); + loggerThreadCheckBox.setSelected(false); + } + + private List queryDebuggingInfoList = new ArrayList(); + private List displayedQueryDebuggingInfoList = new ArrayList(); + private Map, Integer> queriesToCountMap = new HashMap, Integer>(); + + private void refreshRows() { + int originalRowCount = displayedQueryDebuggingInfoList.size(); + displayedQueryDebuggingInfoList.clear(); + queriesToCountMap.clear(); + textArea.setText(""); + if(originalRowCount > 0) { + ((AbstractTableModel)table.getModel()).fireTableRowsDeleted(0, originalRowCount - 1); + } + for(QueryDebuggingInfo queryDebuggingInfo: queryDebuggingInfoList) { + addDisplayedRow(queryDebuggingInfo); + } + int displayedRowCount = displayedQueryDebuggingInfoList.size(); + if(displayedRowCount > 0) { + ((AbstractTableModel)table.getModel()).fireTableRowsInserted(0, displayedRowCount - 1); + } + updateStatusLabel(); + } + + private static final int MAX_NUMBER_OF_ROWS = 10000; + + private void addRow(QueryDebuggingInfo queryDebuggingInfo) { + if(queryDebuggingInfoList.size() == MAX_NUMBER_OF_ROWS) { + QueryDebuggingInfo discaredDebuggingInfo = queryDebuggingInfoList.remove(0); + if(displayedQueryDebuggingInfoList.size() > 0 && displayedQueryDebuggingInfoList.get(0) == discaredDebuggingInfo) { + displayedQueryDebuggingInfoList.remove(0); + for(int i=displayedQueryDebuggingInfoList.size()-1; i>=0; i--) { + displayedQueryDebuggingInfoList.get(i).setDisplayedRow(i); + } + ((AbstractTableModel)table.getModel()).fireTableRowsDeleted(0, 0); + } + } + queryDebuggingInfoList.add(queryDebuggingInfo); + addDisplayedRow(queryDebuggingInfo); + int displayedRow = queryDebuggingInfo.getDisplayedRow(); + if(displayedRow >= 0) { + ((AbstractTableModel)table.getModel()).fireTableRowsInserted(displayedRow, displayedRow); + if(!isScrollLocked) { + SwingUtilities.invokeLater(new Runnable() { + @Override + public void run() { + // Sort the line column if it is the primary sort key in ascending order. + List sortKeys = table.getRowSorter().getSortKeys(); + if(sortKeys.size() >= 1) { + SortKey sortKey = sortKeys.get(0); + if(sortKey.getColumn() == COLUMN_LINE && sortKey.getSortOrder() == SortOrder.ASCENDING) { + table.scrollRectToVisible(new Rectangle(0, table.getHeight() - 1, 1, 1)); + } + } + } + }); + } + } + updateStatusLabel(); + } + + private void addDisplayedRow(QueryDebuggingInfo queryDebuggingInfo) { + boolean isDisplayed = false; + switch(queryDebuggingInfo.getQueryType()) { + case SELECT: isDisplayed = isReadQueryTypeDisplayed; break; + case INSERT: + case UPDATE: + case DELETE: + isDisplayed = isWriteQueryTypeDisplayed; + break; + case OTHER: isDisplayed = isOtherQueryTypeDisplayed; break; + } + int displayedRow = -1; + if(isDisplayed) { + List queryList = Arrays.asList(queryDebuggingInfo.getQueries()); + Integer count = queriesToCountMap.get(queryList); + if(count == null) { + count = 1; + } else { + count++; + } + queriesToCountMap.put(queryList, count); + displayedRow = displayedQueryDebuggingInfoList.size(); + queryDebuggingInfo.setDuplicationCount(count); + displayedQueryDebuggingInfoList.add(queryDebuggingInfo); + } + queryDebuggingInfo.setDisplayedRow(displayedRow); + } + + private void updateRow(QueryDebuggingInfo queryDebuggingInfo) { + int displayedRow = queryDebuggingInfo.getDisplayedRow(); + if(displayedRow >= 0) { + ((AbstractTableModel)table.getModel()).fireTableRowsUpdated(displayedRow, displayedRow); + } + } + + private static class QueryDebuggingInfo { + private long timestamp; + private DebuggerData sqlQueryDebuggerData; + private Throwable throwable; + private int duplicationCount; + public QueryDebuggingInfo(long timestamp, DebuggerData sqlQueryDebuggerData) { + this.timestamp = timestamp; + this.sqlQueryDebuggerData = sqlQueryDebuggerData; + this.throwable = new Exception("Statement Stack trace"); + throwable.setStackTrace(sqlQueryDebuggerData.getCallerStackTraceElements()); + } + public long getTimestamp() { + return timestamp; + } + public DebuggerData getSqlQueryDebuggerData() { + return sqlQueryDebuggerData; + } + public Long getPrepardeStatementPreparationDuration() { + return sqlQueryDebuggerData.getPreparedStatementPreparationDuration(); + } + public Long getPrepardeStatementBindingDuration() { + return sqlQueryDebuggerData.getPreparedStatementBindingDuration(); + } + public long getExecutionDuration() { + return sqlQueryDebuggerData.getExecutionDuration(); + } + public SqlQueryType getQueryType() { + return sqlQueryDebuggerData.getQueryType(); + } + public String[] getQueries() { + String parameterDescription = sqlQueryDebuggerData.getParameterDescription(); + String[] queries = sqlQueryDebuggerData.getQueries(); + if(parameterDescription != null) { + return new String[] {queries[0] + " -> " + parameterDescription}; + } + return queries; + } + public Throwable getThrowable() { + return throwable; + } + public String getThreadName() { + return sqlQueryDebuggerData.getThreadName(); + } + public long getThreadId() { + return sqlQueryDebuggerData.getThreadID(); + } + public void setDuplicationCount(int duplicationCount) { + this.duplicationCount = duplicationCount; + } + public int getDuplicationCount() { + return duplicationCount; + } + private DebuggerResultSetData sqlQueryDebuggerResultSetData; + public void setSqlQueryDebuggerResultSetData(DebuggerResultSetData sqlQueryDebuggerResultSetData) { + this.sqlQueryDebuggerResultSetData = sqlQueryDebuggerResultSetData; + } + public DebuggerResultSetData getSqlQueryDebuggerResultSetData() { + return sqlQueryDebuggerResultSetData; + } + private int displayedRow = -1; + public int getDisplayedRow() { + return displayedRow; + } + public void setDisplayedRow(int displayedRow) { + this.displayedRow = displayedRow; + } + } + + private static String LS = System.getProperty("line.separator"); + + public void setLogging(boolean isLogging) { + if(this.isLogging == isLogging) { + return; + } + this.isLogging = isLogging; + loggerOnButton.setVisible(!isLogging); + loggerOffButton.setVisible(isLogging); + if(sqlQueryDebugger != null) { + DebuggerRegistry.removeSqlQueryDebugger(sqlQueryDebugger); + sqlQueryDebugger = null; + } + if(isLogging) { + sqlQueryDebugger = new Debugger() { + @Override + public void debugQueries(DebuggerData sqlQueryDebuggerData) { + debugQueries(new QueryDebuggingInfo(System.currentTimeMillis(), sqlQueryDebuggerData)); + } + public void debugQueries(final QueryDebuggingInfo queryDebuggingInfo) { + if(!SwingUtilities.isEventDispatchThread()) { + SwingUtilities.invokeLater(new Runnable() { + @Override + public void run() { + debugQueries(queryDebuggingInfo); + } + }); + return; + } + addRow(queryDebuggingInfo); + } + @Override + public void debugResultSet(final int sqlQueryDebuggerDataID, final DebuggerResultSetData sqlQueryDebuggerResultSetData) { + if(!SwingUtilities.isEventDispatchThread()) { + SwingUtilities.invokeLater(new Runnable() { + @Override + public void run() { + debugResultSet(sqlQueryDebuggerDataID, sqlQueryDebuggerResultSetData); + } + }); + return; + } + for(int i=queryDebuggingInfoList.size()-1; i>=0; i--) { + QueryDebuggingInfo queryDebuggingInfo = queryDebuggingInfoList.get(i); + if(queryDebuggingInfo.getSqlQueryDebuggerData().getID() == sqlQueryDebuggerDataID) { + queryDebuggingInfo.setSqlQueryDebuggerResultSetData(sqlQueryDebuggerResultSetData); + XTableColumnModel columnModel = (XTableColumnModel)table.getColumnModel(); + boolean isResultSetDataShown = columnModel.isColumnVisible(columnModel.getColumnByModelIndex(COLUMN_RS_LIFETIME)); + if(isResultSetDataShown) { + updateRow(queryDebuggingInfo); + } + break; + } + } + } + }; + DebuggerRegistry.addSqlQueryDebugger(sqlQueryDebugger); + } + } + + private void updateStatusLabel() { + int size = queryDebuggingInfoList.size(); + int displayedCount = displayedQueryDebuggingInfoList.size(); + String text; + if(displayedCount == size) { + text = size + " queries"; + } else { + text = displayedCount + "/" + size + " queries"; + } + int count = table.getSelectedRowCount(); + if(count > 0) { + text = text + " - " + count + " selected rows"; + } + loggerStatusLabel.setText(text); + } + + private String getStackTrace(final QueryDebuggingInfo queryDebuggingInfo) { + StackTraceElement[] stackTraceElements = queryDebuggingInfo.getThrowable().getStackTrace(); + StringBuilder sb = new StringBuilder(); + // TODO: adjust number of levels to ignore before and after. + for(int i=1; i 0) { + sb.append('\n'); + } + sb.append(stackTraceElement); + } + return sb.toString(); + } + + private void copyToClipboard(QueryDebuggingInfo[] queryDebuggingInfos) { + StringBuilder stringSB = new StringBuilder(); + StringBuilder htmlSB = new StringBuilder(); + htmlSB.append("\n\n\n"); + htmlSB.append("" + + "" + + "" + + "" + + "" + + "" + + "" + + "" + +// "" + + "" + + "" + + "" + + "\n"); + for(QueryDebuggingInfo queryDebuggingInfo: queryDebuggingInfos) { + DebuggerResultSetData resultSetData = queryDebuggingInfo.getSqlQueryDebuggerResultSetData(); + htmlSB.append("\n"); + htmlSB.append("\n"); + htmlSB.append("\n"); + htmlSB.append("\n"); + htmlSB.append("\n"); + htmlSB.append("\n"); + htmlSB.append("\n"); + htmlSB.append("\n"); +// htmlSB.append("\n"); + htmlSB.append("\n"); + htmlSB.append("\n"); + htmlSB.append("\n"); + htmlSB.append("\n"); + } + htmlSB.append("
TypeThread nameThread IDTimestampExec time (ms)RS lifetime (ms)RS readRS writeRS rows readQueryStack trace
"); + htmlSB.append(queryDebuggingInfo.getQueryType()); + htmlSB.append(""); + htmlSB.append(queryDebuggingInfo.getThreadName()); + htmlSB.append(""); + htmlSB.append(queryDebuggingInfo.getThreadId()); + htmlSB.append(""); + htmlSB.append(TIMESTAMP_FORMAT.format(new Date(queryDebuggingInfo.getTimestamp()))); + htmlSB.append(""); + htmlSB.append(queryDebuggingInfo.getExecutionDuration()); + htmlSB.append(""); + htmlSB.append(resultSetData == null? "": resultSetData.getLifeTime()); + htmlSB.append(""); + htmlSB.append(resultSetData == null? "": resultSetData.getReadCount()); + htmlSB.append(""); +// htmlSB.append(resultSetData == null? "": resultSetData.getWriteCount()); +// htmlSB.append(""); + htmlSB.append(resultSetData == null? "": resultSetData.getReadRows()); + htmlSB.append(""); + String[] queries = queryDebuggingInfo.getQueries(); + for(int i=0; i 0) { + htmlSB.append("\n"); + } + htmlSB.append(query); + stringSB.append(query.trim() + LS); + } + htmlSB.append(""); + htmlSB.append(getStackTrace(queryDebuggingInfo)); + htmlSB.append("
\n\n"); + Clipboard clipboard = Toolkit.getDefaultToolkit().getSystemClipboard(); + clipboard.setContents(new RichTextTransferable(htmlSB.toString(), stringSB.toString()), null); + } + + private void registerTooltip() { + class TableTipListener extends MouseInputAdapter implements TableModelListener { + private Timer enterTimer; + public TableTipListener() { + enterTimer = new Timer(750, new ActionListener() { + @Override + public void actionPerformed(ActionEvent e) { + processTip(); + } + }); + enterTimer.setRepeats(false); + } + private Point point; + @Override + public void mouseEntered(MouseEvent e) { + point = SwingUtilities.convertPoint(table, e.getPoint(), table.getParent()); + enterTimer.start(); + } + @Override + public void mouseMoved(MouseEvent e) { + point = SwingUtilities.convertPoint(table, e.getPoint(), table.getParent()); + if(tip == null) { + enterTimer.restart(); + } else { + processTip(); + } + } + @Override + public void mousePressed(MouseEvent e) { + enterTimer.stop(); + processTip(null); + } + private void processTip() { + String text = getMultilineTooltip(SwingUtilities.convertPoint(table.getParent(), point, table)); + processTip(text); + } + @Override + public void mouseExited(MouseEvent e) { + point = null; + enterTimer.stop(); + processTip(null); + } + private String lastText; + private Popup tip; + private void processTip(String text) { + if(Utils.equals(lastText, text)) { + return; + } + lastText = text; + if(tip != null) { + tip.hide(); + tip = null; + } + if(text != null) { + PopupFactory popupFactory = PopupFactory.getSharedInstance(); + JTextArea textContent = new JTextArea(text); + textContent.setFont(UIManager.getFont("ToolTip.font")); + textContent.setBackground(UIManager.getColor("ToolTip.background")); + textContent.setForeground(UIManager.getColor("ToolTip.foreground")); + textContent.setBorder(UIManager.getBorder("ToolTip.border")); + Point location = new Point(point); + SwingUtilities.convertPointToScreen(location, table.getParent()); + GraphicsConfiguration gc = table.getGraphicsConfiguration(); + Rectangle sBounds = gc.getBounds(); + Insets screenInsets = Toolkit.getDefaultToolkit().getScreenInsets(gc); + sBounds.x += screenInsets.left; + sBounds.y += screenInsets.top; + sBounds.width -= screenInsets.left + screenInsets.right; + sBounds.height -= screenInsets.top + screenInsets.bottom; + Dimension tipSize = textContent.getPreferredSize(); +// tipSize.height = Math.min(tipSize.height, 500); + textContent.setPreferredSize(tipSize); + location.x += 20; + location.x = Math.min(location.x, sBounds.x + sBounds.width - tipSize.width); + if(location.y + tipSize.height > sBounds.y + sBounds.height && location.y - 40 - tipSize.height >= sBounds.y) { + location.y -= 40 + tipSize.height; + } + location.y += 20; + tip = popupFactory.getPopup(null, textContent, location.x, location.y); + tip.show(); + } + } + @Override + public void tableChanged(TableModelEvent e) { + if(tip != null) { + processTip(); + } + } + }; + TableTipListener tableTipListener = new TableTipListener(); + table.addMouseListener(tableTipListener); + table.addMouseMotionListener(tableTipListener); + table.getModel().addTableModelListener(tableTipListener); + } + + private String getMultilineTooltip(Point p) { + int row = table.rowAtPoint(p); + if(row < 0) { + return null; + } + int column = table.columnAtPoint(p); + if(column < 0) { + return null; + } + row = table.convertRowIndexToModel(row); + column = table.convertColumnIndexToModel(column); + if(column != COLUMN_QUERY) { + return null; + } + final QueryDebuggingInfo queryDebuggingInfo = displayedQueryDebuggingInfoList.get(row); + if(queryDebuggingInfo != null) { + return queryDebuggingInfo.getThreadName() + " [" + queryDebuggingInfo.getThreadId() + "]\n" + getStackTrace(queryDebuggingInfo); + } + return null; + } + +} diff --git a/jOOQ-console/src/main/java/org/jooq/debug/console/SqlTextArea.java b/jOOQ-console/src/main/java/org/jooq/debug/console/SqlTextArea.java new file mode 100644 index 00000000000..b8b9820bcb4 --- /dev/null +++ b/jOOQ-console/src/main/java/org/jooq/debug/console/SqlTextArea.java @@ -0,0 +1,168 @@ +/** + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com + * Christopher Deckers, chrriis@gmail.com + * All rights reserved. + * + * This software is licensed to you under the Apache License, Version 2.0 + * (the "License"); You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * 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 "jOOQ" 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 COPYRIGHT OWNER 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. + */ +package org.jooq.debug.console; + +import java.awt.Color; +import java.awt.Font; +import java.awt.Toolkit; +import java.awt.datatransfer.Clipboard; +import java.awt.datatransfer.DataFlavor; +import java.awt.event.ActionEvent; +import java.awt.event.ActionListener; +import java.awt.event.KeyAdapter; +import java.awt.event.KeyEvent; + +import javax.swing.JMenuItem; +import javax.swing.JPopupMenu; +import javax.swing.KeyStroke; +import javax.swing.UIManager; + +import org.jooq.debug.console.misc.Utils; + +import org.fife.ui.rsyntaxtextarea.RSyntaxTextArea; +import org.fife.ui.rsyntaxtextarea.RSyntaxTextAreaEditorKit; +import org.fife.ui.rsyntaxtextarea.RSyntaxUtilities; +import org.fife.ui.rsyntaxtextarea.Style; +import org.fife.ui.rsyntaxtextarea.SyntaxConstants; +import org.fife.ui.rsyntaxtextarea.SyntaxScheme; +import org.fife.ui.rsyntaxtextarea.Token; + +/** + * @author Christopher Deckers + */ +public class SqlTextArea extends RSyntaxTextArea { + + public SqlTextArea() { + setTabSize(2); + setTabsEmulated(true); + setSyntaxEditingStyle(SyntaxConstants.SYNTAX_STYLE_SQL); + setMarkOccurrences(true); + setAnimateBracketMatching(false); + setAutoIndentEnabled(true); + setCurrentLineHighlightColor(new Color(232, 242, 254)); + setMarkOccurrencesColor(new Color(220, 220, 220)); + setMatchedBracketBGColor(null); + setMatchedBracketBorderColor(new Color(192, 192, 192)); + getActionMap().put("copy", new RSyntaxTextAreaEditorKit.CopyAsRtfAction()); + Font editorFont = getFont().deriveFont(UIManager.getFont("TextField.font").getSize2D()); + SyntaxScheme syntaxScheme = getSyntaxScheme(); + syntaxScheme.setStyle(Token.SEPARATOR, new Style(new Color(200, 0, 0), null)); + syntaxScheme.setStyle(Token.RESERVED_WORD, new Style(Color.BLUE, null, editorFont)); + setFont(new Font("Monospaced", editorFont.getStyle(), editorFont.getSize())); + addKeyListener(new KeyAdapter() { + @Override + public void keyPressed(KeyEvent e) { + boolean isControlDown = e.isControlDown(); + boolean isShiftDown = e.isShiftDown(); + switch(e.getKeyCode()) { + case KeyEvent.VK_P: + if(isControlDown && isShiftDown) { + int position = RSyntaxUtilities.getMatchingBracketPosition(SqlTextArea.this); + if(position >= 0) { + setCaretPosition(position + 1); + } + } + break; + case KeyEvent.VK_F: + if(isControlDown && isShiftDown) { + formatSelection(); + } + break; + } + } + }); + } + + @Override + public JPopupMenu getPopupMenu() { + boolean isEditable = isEditable(); + JPopupMenu popupMenu = new JPopupMenu(); + final Clipboard clipboard = Toolkit.getDefaultToolkit().getSystemClipboard(); + JMenuItem copyClipboardMenuItem = new JMenuItem("Copy"); + copyClipboardMenuItem.setEnabled(getSelectionStart() < getSelectionEnd()); + copyClipboardMenuItem.addActionListener(new ActionListener() { + @Override + public void actionPerformed(ActionEvent e) { + copyAsRtf(); + } + }); + popupMenu.add(copyClipboardMenuItem); + JMenuItem pasteClipboardMenuItem = new JMenuItem("Paste"); + pasteClipboardMenuItem.setEnabled(false); + if(isEditable && clipboard.isDataFlavorAvailable(DataFlavor.stringFlavor)) { + try { + final String data = (String)clipboard.getData(DataFlavor.stringFlavor); + if(data != null && data.length() > 0) { + pasteClipboardMenuItem.addActionListener(new ActionListener() { + @Override + public void actionPerformed(ActionEvent e) { + replaceSelection(data); + } + }); + pasteClipboardMenuItem.setEnabled(true); + } + } catch (Exception ex) { + ex.printStackTrace(); + } + } + popupMenu.add(pasteClipboardMenuItem); + popupMenu.addSeparator(); + JMenuItem formatMenuItem = new JMenuItem("Format"); + formatMenuItem.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_F, KeyEvent.CTRL_MASK | KeyEvent.SHIFT_MASK)); + formatMenuItem.setEnabled(isEditable && getSelectionStart() < getSelectionEnd()); + formatMenuItem.addActionListener(new ActionListener() { + @Override + public void actionPerformed(ActionEvent e) { + formatSelection(); + } + }); + popupMenu.add(formatMenuItem); + if(popupMenu.getComponentCount() > 0) { + return popupMenu; + } + return null; + } + + private void formatSelection() { + String text = getSelectedText(); + String newText = Utils.getFormattedSql(text); + if(!Utils.equals(text, newText)) { + replaceSelection(newText); + } + } + +} diff --git a/jOOQ-console/src/main/java/org/jooq/debug/console/misc/JTableX.java b/jOOQ-console/src/main/java/org/jooq/debug/console/misc/JTableX.java new file mode 100644 index 00000000000..a31509847a1 --- /dev/null +++ b/jOOQ-console/src/main/java/org/jooq/debug/console/misc/JTableX.java @@ -0,0 +1,266 @@ +/** + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com + * Christopher Deckers, chrriis@gmail.com + * All rights reserved. + * + * This software is licensed to you under the Apache License, Version 2.0 + * (the "License"); You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * 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 "jOOQ" 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 COPYRIGHT OWNER 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. + */ +package org.jooq.debug.console.misc; + +import java.awt.Color; +import java.awt.Component; +import java.awt.Container; +import java.awt.Graphics; +import java.awt.event.ComponentAdapter; +import java.awt.event.ComponentEvent; +import java.beans.PropertyChangeEvent; +import java.beans.PropertyChangeListener; + +import javax.swing.JComponent; +import javax.swing.JScrollPane; +import javax.swing.JTable; +import javax.swing.JViewport; +import javax.swing.UIManager; +import javax.swing.table.TableCellRenderer; +import javax.swing.table.TableColumn; +import javax.swing.table.TableColumnModel; +import javax.swing.table.TableModel; + +/** + * @author Christopher Deckers + */ +public class JTableX extends JTable { + + private static final Color GRID_COLOR = new Color(0xd9d9d9); + private static final Color EVEN_ROW_COLOR = Color.WHITE; + private static final Color ODD_ROW_COLOR = getTableAlternateRowBackgroundColor(); + + public static Color getTableAlternateRowBackgroundColor() { + Color defaultBackground = UIManager.getDefaults().getColor("Panel.background"); + Color c = new Color((defaultBackground.getRed() + 0xFF) / 2, (defaultBackground.getGreen() + 0xFF) / 2, (defaultBackground.getBlue() + 0xFF) / 2); + return c; + } + + public JTableX(TableModel dm) { + super(dm); + init(); + } + + public JTableX(final Object[][] rowData, final Object[] columnNames) { + super(rowData, columnNames); + init(); + } + + public JTableX() { + init(); + } + + private void init() { + setFillsViewportHeight(true); + setAutoAdjustingColumn(Integer.MAX_VALUE); + setRowHeight(getRowHeight() + 3); + setOpaque(false); + setGridColor(GRID_COLOR); + } + + public void applyPreferredColumnSizes(int maxWidth) { + autoFitTableColumn(this, -1, maxWidth, false); + } + + public void applyMinimumAndPreferredColumnSizes(int maxWidth) { + autoFitTableColumn(this, -1, maxWidth, true); + } + + private static void autoFitTableColumn(JTable table, int columnIndex, int maxWidth, boolean isSettingMinimumSize) { + TableColumnModel columnModel = table.getColumnModel(); + TableCellRenderer headerRenderer = table.getTableHeader().getDefaultRenderer(); + int rowCount = table.getRowCount(); + int rowMargin = table.getRowMargin(); + int margin = 20; + for(int i = columnIndex < 0 ? columnModel.getColumnCount() - 1 : columnIndex; i >= 0; i--) { + TableColumn column = columnModel.getColumn(i); + int headerWidth; + headerWidth = headerRenderer.getTableCellRendererComponent(table, column.getHeaderValue(), false, false, 0, 0).getPreferredSize().width; + headerWidth += margin; + int cellWidth = 0; + for(int j = 0; j < rowCount; j++) { + Component comp = table.prepareRenderer(table.getDefaultRenderer(table.getColumnClass(i)), j, i); + int preferredWidth = comp.getPreferredSize().width; + preferredWidth += 10; + cellWidth = Math.max(cellWidth, preferredWidth); + if(Math.max(headerWidth, cellWidth) + rowMargin >= maxWidth) { + break; + } + } + int width = Math.min(Math.max(headerWidth, cellWidth) + rowMargin, maxWidth); + column.setPreferredWidth(width); + if(isSettingMinimumSize) { + column.setMinWidth(width); + } + if(columnIndex >= 0) { + break; + } + } + + } + + private int autoAdjustingColumn; + + /** + * Set the column to auto fit, or -1 to disable it. If the column to auto fit is greater or equal to the number of columns, it will auto fit the last visual column. + */ + public void setAutoAdjustingColumn(int autoAdjustingColumn) { + this.autoAdjustingColumn = autoAdjustingColumn; + } + + public int getAutoAdjustingColumn() { + return autoAdjustingColumn; + } + + private boolean isAdjusting; + + public void adjustLastColumn() { + if(isAdjusting) { + return; + } + isAdjusting = true; + if(autoAdjustingColumn >= 0 && getAutoResizeMode() == JTable.AUTO_RESIZE_OFF) { + Container p = getParent(); + if (p instanceof JViewport) { + Container gp = p.getParent(); + if (gp instanceof JScrollPane) { + int columnCount = getColumnModel().getColumnCount(); + if(columnCount > 0) { + int autoFitColumn = autoAdjustingColumn; + if(autoFitColumn >= columnCount) { + autoFitColumn = columnCount - 1; + } else { + autoFitColumn = convertColumnIndexToView(autoFitColumn); + } + TableColumn column = getColumnModel().getColumn(autoFitColumn); + int minWidth = column.getMinWidth(); + column.setMinWidth(0); + column.setPreferredWidth(0); + column.setWidth(0); + int diff = p.getSize().width - getPreferredSize().width; + column.setMinWidth(minWidth); + diff = Math.max(minWidth, diff); + column.setPreferredWidth(diff); + column.setWidth(diff); + } + } + } + } + isAdjusting = false; + } + + private PropertyChangeListener listener = new PropertyChangeListener() { + @Override + public void propertyChange(PropertyChangeEvent evt) { + adjustLastColumn(); + } + }; + + @Override + public void setModel(TableModel dataModel) { + for (int i=0; i 0) { + System.arraycopy(htmlFlavors, 0, flavors, 0, htmlCount); + } + if(plainCount > 0) { + System.arraycopy(plainFlavors, 0, flavors, htmlCount, plainCount); + } + return flavors; + } + + @Override + public boolean isDataFlavorSupported(DataFlavor flavor) { + for(DataFlavor flavor_: getTransferDataFlavors()) { + if(flavor_.equals(flavor)) { + return true; + } + } + return false; + } + +} diff --git a/jOOQ-console/src/main/java/org/jooq/debug/console/misc/Utils.java b/jOOQ-console/src/main/java/org/jooq/debug/console/misc/Utils.java new file mode 100644 index 00000000000..e05359c8573 --- /dev/null +++ b/jOOQ-console/src/main/java/org/jooq/debug/console/misc/Utils.java @@ -0,0 +1,290 @@ +/** + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com + * Christopher Deckers, chrriis@gmail.com + * All rights reserved. + * + * This software is licensed to you under the Apache License, Version 2.0 + * (the "License"); You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * 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 "jOOQ" 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 COPYRIGHT OWNER 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. + */ +package org.jooq.debug.console.misc; + +import java.text.DateFormat; +import java.util.Arrays; +import java.util.Date; +import java.util.HashSet; +import java.util.Locale; +import java.util.Set; +import java.util.Stack; + +/** + * @author Christopher Deckers & others + */ +public class Utils { + + private Utils() {} + + public static enum DurationFormatPrecision { + DAY, + HOUR, + MINUTE, + SECOND, + MILLISECOND, + } + + public static String formatDuration(long duration) { + return formatDuration(duration, DurationFormatPrecision.MILLISECOND); + } + + public static String formatDuration(long duration, DurationFormatPrecision precision) { + StringBuilder sb = new StringBuilder(); + if (duration < 0) { + duration = -duration; + sb.append("-"); + } + if (duration / (24 * 1000 * 60 * 60) != 0 || precision == DurationFormatPrecision.DAY) { + sb.append(duration / (24 * 1000 * 60 * 60)).append("d "); + if (precision == DurationFormatPrecision.DAY) { + return sb.toString().trim(); + } + } + if (duration / (1000 * 60 * 60) != 0 || precision == DurationFormatPrecision.HOUR) { + sb.append((duration / (1000 * 60 * 60)) % 24).append("h "); + if (precision == DurationFormatPrecision.HOUR) { + return sb.toString().trim(); + } + } + if (duration / (1000 * 60) != 0 || precision == DurationFormatPrecision.MINUTE) { + sb.append((duration / (1000 * 60)) % 60).append("min "); + if (precision == DurationFormatPrecision.MINUTE) { + return sb.toString().trim(); + } + } + if (duration / 1000 != 0 || precision == DurationFormatPrecision.SECOND) { + sb.append((duration / 1000) % 60).append("s "); + if (precision == DurationFormatPrecision.SECOND) { + return sb.toString().trim(); + } + } + sb.append(duration % 1000).append("ms"); + return sb.toString(); + } + + public static String formatDateTimeTZ(Date date) { + // TODO: GMT vs TZ + return DateFormat.getDateTimeInstance(DateFormat.SHORT, DateFormat.LONG).format(date); + } + + public static String formatDateTimeGMT(Date date) { + // TODO: GMT vs TZ + return DateFormat.getDateTimeInstance(DateFormat.SHORT, DateFormat.LONG).format(date); + } + + public static String formatDateGMT(Date date) { + // TODO: GMT vs TZ + return DateFormat.getDateInstance(DateFormat.SHORT).format(date); + } + + public static boolean equals(Object o1, Object o2) { + return (o1 == o2) || (o1 != null && o1.equals(o2)); + } + + public static String getFormattedSql(String text) { + if(text == null) { + return null; + } + String originalText = text; + text = text.trim(); + if(text.length() == 0) { + return originalText; + } + int startIndex = originalText.indexOf(text); + int endIndex = startIndex + text.length(); + text = text.replaceAll("[\\t\\n\\x0B\\f\\r]+", " "); + String textIndent = " "; + StringBuilder sb = new StringBuilder(); + int charCount = text.length(); + char quoteStart = 0; + boolean isLineStart = false; + String currentIndent = ""; + boolean isWritingKeyword = isSqlKeywordStart(text.trim()); + Stack isParenthesisNewLineStack = new Stack(); + for(int i = 0; i i + 1 && isKeywordStart(text.substring(i + 1).trim())) { + while(text.length() > i + 1 && text.charAt(i + 1) == ' ') { + i++; + } + isNewLine = true; + if(isLineStart) { + isLineStart = false; + sb.append(currentIndent); + } + sb.append(c); + sb.append('\n'); + isLineStart = true; + currentIndent += textIndent; + } else { + sb.append(c); + } + isParenthesisNewLineStack.push(isNewLine); + break; + } + case ')': { + isWritingKeyword = false; + if(!isParenthesisNewLineStack.isEmpty()) { + boolean isNewLine = isParenthesisNewLineStack.pop(); + if(isNewLine) { + if(isLineStart) { + isLineStart = false; + } else { + sb.append('\n'); + } + int length = currentIndent.length(); + length -= textIndent.length(); + if(length >= 0) { + currentIndent = currentIndent.substring(0, length); + } + sb.append(currentIndent); + } + } + sb.append(c); + break; + } + case ' ': { + boolean isFirstKeyWord = !isWritingKeyword; + isWritingKeyword = text.length() > i + 1 && isSqlKeywordStart(text.substring(i + 1).trim()); + if(!isLineStart && isWritingKeyword && isFirstKeyWord) { + while(text.length() > i + 1 && text.charAt(i + 1) == ' ') { + i++; + } + sb.append('\n'); + isLineStart = true; + } else { + if(text.length() > i + 1 && text.charAt(i + 1) != ' ') { + sb.append(c); + } + } + break; + } + case ',': { + isWritingKeyword = false; + if(isLineStart) { + isLineStart = false; + sb.append(currentIndent); + } + sb.append(c); + if(text.length() > i + 1 && text.charAt(i + 1) != ' ') { + sb.append(' '); + } + break; + } + case '[': + case ']': + isWritingKeyword = false; + // Fall through + default: { + if(isLineStart) { + isLineStart = false; + sb.append(currentIndent); + } + sb.append(c); + break; + } + } + } + } + String newContent = sb.toString().replaceAll(" +\n", "\n"); + String newText = originalText.substring(0, startIndex) + newContent + originalText.substring(endIndex); + return newText; + } + + private static final Set keywordSet; + + static { + keywordSet = new HashSet(); + keywordSet.addAll(Arrays.asList( + "UNION", + "CROSS", + "INNER", + "JOIN", + "ORDER", + "GROUP", + "BY", + "HAVING", + "ON", + "WITH", + "INSERT", + "DELETE", + "SELECT", + "UPDATE", + "VALUES", + "LEFT", + "OUTER", + "FROM", + "WHERE", + "AND", + "OR", + "SET" + )); + } + + private static boolean isSqlKeywordStart(String s) { + s = s.toUpperCase(Locale.ENGLISH); + int index = s.indexOf(' '); + if(index < 1) { + return false; + } + return keywordSet.contains(s.substring(0, index)); + } + +} diff --git a/jOOQ-console/src/main/java/org/jooq/debug/console/misc/XTableColumnModel.java b/jOOQ-console/src/main/java/org/jooq/debug/console/misc/XTableColumnModel.java new file mode 100644 index 00000000000..157c1583160 --- /dev/null +++ b/jOOQ-console/src/main/java/org/jooq/debug/console/misc/XTableColumnModel.java @@ -0,0 +1,248 @@ +package org.jooq.debug.console.misc; + +import java.util.Enumeration; +import java.util.Vector; + +import javax.swing.table.DefaultTableColumnModel; +import javax.swing.table.TableColumn; + +/** + * XTableColumnModel extends the DefaultTableColumnModel . + * It provides a comfortable way to hide/show columns. + * Columns keep their positions when hidden and shown again. + * + * In order to work with JTable it cannot add any events to TableColumnModelListener. + * Therefore hiding a column will result in columnRemoved event and showing it + * again will notify listeners of a columnAdded, and possibly a columnMoved event. + * For the same reason the following methods still deal with visible columns only: + * getColumnCount(), getColumns(), getColumnIndex(), getColumn() + * There are overloaded versions of these methods that take a parameter onlyVisible which let's + * you specify whether you want invisible columns taken into account. + * + * @version 0.9 04/03/01 + * @author Stephen Kelvin, mail@StephenKelvin.de + * @see DefaultTableColumnModel + */ + +public class XTableColumnModel extends DefaultTableColumnModel { + /** Array of TableColumn objects in this model. + * Holds all column objects, regardless of their visibility + */ + protected Vector allTableColumns = new Vector(); + + /** + * Creates an extended table column model. + */ + public XTableColumnModel() { + } + + /** + * Sets the visibility of the specified TableColumn. + * The call is ignored if the TableColumn is not found in this column model + * or its visibility status did not change. + * @param aColumn the column to show/hide + * @param visible its new visibility status + */ + // listeners will receive columnAdded()/columnRemoved() event + public void setColumnVisible(TableColumn column, boolean visible) { + if(!visible) { + super.removeColumn(column); + } + else { + // find the visible index of the column: + // iterate through both collections of visible and all columns, counting + // visible columns up to the one that's about to be shown again + int noVisibleColumns = tableColumns.size(); + int noInvisibleColumns = allTableColumns.size(); + int visibleIndex = 0; + + for(int invisibleIndex = 0; invisibleIndex < noInvisibleColumns; ++invisibleIndex) { + TableColumn visibleColumn = (visibleIndex < noVisibleColumns ? (TableColumn)tableColumns.get(visibleIndex) : null); + TableColumn testColumn = allTableColumns.get(invisibleIndex); + + if(testColumn == column) { + if(visibleColumn != column) { + super.addColumn(column); + super.moveColumn(tableColumns.size() - 1, visibleIndex); + } + return; // #################### + } + if(testColumn == visibleColumn) { + ++visibleIndex; + } + } + } + } + + /** + * Makes all columns in this model visible + */ + public void setAllColumnsVisible() { + int noColumns = allTableColumns.size(); + + for(int columnIndex = 0; columnIndex < noColumns; ++columnIndex) { + TableColumn visibleColumn = (columnIndex < tableColumns.size() ? (TableColumn)tableColumns.get(columnIndex) : null); + TableColumn invisibleColumn = allTableColumns.get(columnIndex); + + if(visibleColumn != invisibleColumn) { + super.addColumn(invisibleColumn); + super.moveColumn(tableColumns.size() - 1, columnIndex); + } + } + } + + /** + * Maps the index of the column in the table model at + * modelColumnIndex to the TableColumn object. + * There may me multiple TableColumn objects showing the same model column, though this is uncommon. + * This method will always return the first visible or else the first invisible column with the specified index. + * @param modelColumnIndex index of column in table model + * @return table column object or null if no such column in this column model + */ + public TableColumn getColumnByModelIndex(int modelColumnIndex) { + for (int columnIndex = 0; columnIndex < allTableColumns.size(); ++columnIndex) { + TableColumn column = allTableColumns.elementAt(columnIndex); + if(column.getModelIndex() == modelColumnIndex) { + return column; + } + } + return null; + } + + /** Checks whether the specified column is currently visible. + * @param aColumn column to check + * @return visibility of specified column (false if there is no such column at all. [It's not visible, right?]) + */ + public boolean isColumnVisible(TableColumn aColumn) { + return (tableColumns.indexOf(aColumn) >= 0); + } + + /** Append column to the right of existing columns. + * Posts columnAdded event. + * @param column The column to be added + * @see #removeColumn + * @exception IllegalArgumentException if column is null + */ + @Override + public void addColumn(TableColumn column) { + allTableColumns.addElement(column); + super.addColumn(column); + } + + /** Removes column from this column model. + * Posts columnRemoved event. + * Will do nothing if the column is not in this model. + * @param column the column to be added + * @see #addColumn + */ + @Override + public void removeColumn(TableColumn column) { + int allColumnsIndex = allTableColumns.indexOf(column); + if(allColumnsIndex != -1) { + allTableColumns.removeElementAt(allColumnsIndex); + } + super.removeColumn(column); + } + + /** Moves the column from oldIndex to newIndex. + * Posts columnMoved event. + * Will not move any columns if oldIndex equals newIndex. + * + * @param oldIndex index of column to be moved + * @param newIndex new index of the column + * @exception IllegalArgumentException if either oldIndex or + * newIndex + * are not in [0, getColumnCount() - 1] + */ + @Override + public void moveColumn(int oldIndex, int newIndex) { + if ((oldIndex < 0) || (oldIndex >= getColumnCount()) || + (newIndex < 0) || (newIndex >= getColumnCount())) { + throw new IllegalArgumentException("moveColumn() - Index out of range"); + } + + TableColumn fromColumn = tableColumns.get(oldIndex); + TableColumn toColumn = tableColumns.get(newIndex); + + int allColumnsOldIndex = allTableColumns.indexOf(fromColumn); + int allColumnsNewIndex = allTableColumns.indexOf(toColumn); + + if(oldIndex != newIndex) { + allTableColumns.removeElementAt(allColumnsOldIndex); + allTableColumns.insertElementAt(fromColumn, allColumnsNewIndex); + } + + super.moveColumn(oldIndex, newIndex); + } + + /** + * Returns the total number of columns in this model. + * + * @param onlyVisible if set only visible columns will be counted + * @return the number of columns in the tableColumns array + * @see #getColumns + */ + public int getColumnCount(boolean onlyVisible) { + Vector columns = (onlyVisible ? tableColumns : allTableColumns); + return columns.size(); + } + + /** + * Returns an Enumeration of all the columns in the model. + * + * @param onlyVisible if set all invisible columns will be missing from the enumeration. + * @return an Enumeration of the columns in the model + */ + public Enumeration getColumns(boolean onlyVisible) { + Vector columns = (onlyVisible ? tableColumns : allTableColumns); + + return columns.elements(); + } + + /** + * Returns the position of the first column whose identifier equals identifier. + * Position is the the index in all visible columns if onlyVisible is true or + * else the index in all columns. + * + * @param identifier the identifier object to search for + * @param onlyVisible if set searches only visible columns + * + * @return the index of the first column whose identifier + * equals identifier + * + * @exception IllegalArgumentException if identifier + * is null, or if no + * TableColumn has this + * identifier + * @see #getColumn + */ + public int getColumnIndex(Object identifier, boolean onlyVisible) { + if (identifier == null) { + throw new IllegalArgumentException("Identifier is null"); + } + + Vector columns = (onlyVisible ? tableColumns : allTableColumns); + int noColumns = columns.size(); + TableColumn column; + + for(int columnIndex = 0; columnIndex < noColumns; ++columnIndex) { + column = columns.get(columnIndex); + + if(identifier.equals(column.getIdentifier())) { + return columnIndex; + } + } + + throw new IllegalArgumentException("Identifier not found"); + } + + /** + * Returns the TableColumn object for the column at columnIndex. + * @param columnIndex the index of the column desired + * @param onlyVisible if set columnIndex is meant to be relative to all visible columns only else it is the index in all columns + * @return the TableColumn object for the column at columnIndex + */ + public TableColumn getColumn(int columnIndex, boolean onlyVisible) { + return tableColumns.elementAt(columnIndex); + } +} diff --git a/jOOQ-console/src/main/java/org/jooq/debug/console/remote/ClientDebugQueriesMessage.java b/jOOQ-console/src/main/java/org/jooq/debug/console/remote/ClientDebugQueriesMessage.java new file mode 100644 index 00000000000..c3983b65eda --- /dev/null +++ b/jOOQ-console/src/main/java/org/jooq/debug/console/remote/ClientDebugQueriesMessage.java @@ -0,0 +1,56 @@ +/** + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com + * Christopher Deckers, chrriis@gmail.com + * All rights reserved. + * + * This software is licensed to you under the Apache License, Version 2.0 + * (the "License"); You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * 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 "jOOQ" 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 COPYRIGHT OWNER 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. + */ +package org.jooq.debug.console.remote; + +import org.jooq.debug.DebuggerData; + +/** + * @author Christopher Deckers + */ +public class ClientDebugQueriesMessage implements Message { + + private DebuggerData sqlQueryDebuggerData; + + public ClientDebugQueriesMessage(DebuggerData sqlQueryDebuggerData) { + this.sqlQueryDebuggerData = sqlQueryDebuggerData; + } + + public DebuggerData getSqlQueryDebuggerData() { + return sqlQueryDebuggerData; + } + +} diff --git a/jOOQ-console/src/main/java/org/jooq/debug/console/remote/ClientDebugResultSetMessage.java b/jOOQ-console/src/main/java/org/jooq/debug/console/remote/ClientDebugResultSetMessage.java new file mode 100644 index 00000000000..52a79acb8f7 --- /dev/null +++ b/jOOQ-console/src/main/java/org/jooq/debug/console/remote/ClientDebugResultSetMessage.java @@ -0,0 +1,62 @@ +/** + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com + * Christopher Deckers, chrriis@gmail.com + * All rights reserved. + * + * This software is licensed to you under the Apache License, Version 2.0 + * (the "License"); You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * 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 "jOOQ" 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 COPYRIGHT OWNER 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. + */ +package org.jooq.debug.console.remote; + +import org.jooq.debug.DebuggerResultSetData; + +/** + * @author Christopher Deckers + */ +public class ClientDebugResultSetMessage implements Message { + + private int sqlQueryDebuggerDataID; + private DebuggerResultSetData sqlQueryDebuggerResultSetData; + + public ClientDebugResultSetMessage(int sqlQueryDebuggerDataID, DebuggerResultSetData sqlQueryDebuggerData) { + this.sqlQueryDebuggerDataID = sqlQueryDebuggerDataID; + this.sqlQueryDebuggerResultSetData = sqlQueryDebuggerData; + } + + public int getSqlQueryDebuggerDataID() { + return sqlQueryDebuggerDataID; + } + + public DebuggerResultSetData getSqlQueryDebuggerResultSetData() { + return sqlQueryDebuggerResultSetData; + } + +} diff --git a/jOOQ-console/src/main/java/org/jooq/debug/console/remote/Message.java b/jOOQ-console/src/main/java/org/jooq/debug/console/remote/Message.java new file mode 100644 index 00000000000..dfd63d2e8ae --- /dev/null +++ b/jOOQ-console/src/main/java/org/jooq/debug/console/remote/Message.java @@ -0,0 +1,46 @@ +/** + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com + * Christopher Deckers, chrriis@gmail.com + * All rights reserved. + * + * This software is licensed to you under the Apache License, Version 2.0 + * (the "License"); You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * 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 "jOOQ" 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 COPYRIGHT OWNER 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. + */ +package org.jooq.debug.console.remote; + +import java.io.Serializable; + +/** + * @author Christopher Deckers + */ +public interface Message extends Serializable { + +} diff --git a/jOOQ-console/src/main/java/org/jooq/debug/console/remote/RemoteDebuggerClient.java b/jOOQ-console/src/main/java/org/jooq/debug/console/remote/RemoteDebuggerClient.java new file mode 100644 index 00000000000..363ac1b91b2 --- /dev/null +++ b/jOOQ-console/src/main/java/org/jooq/debug/console/remote/RemoteDebuggerClient.java @@ -0,0 +1,109 @@ +/** + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com + * Christopher Deckers, chrriis@gmail.com + * All rights reserved. + * + * This software is licensed to you under the Apache License, Version 2.0 + * (the "License"); You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * 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 "jOOQ" 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 COPYRIGHT OWNER 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. + */ +package org.jooq.debug.console.remote; + +import java.io.BufferedInputStream; +import java.io.BufferedOutputStream; +import java.io.IOException; +import java.io.ObjectInputStream; +import java.io.ObjectOutputStream; +import java.net.Socket; + +import org.jooq.debug.Debugger; +import org.jooq.debug.DebuggerData; +import org.jooq.debug.DebuggerRegistry; +import org.jooq.debug.DebuggerRegistryListener; +import org.jooq.debug.DebuggerResultSetData; + +/** + * @author Christopher Deckers + */ +public class RemoteDebuggerClient { + + private Socket socket; + + public RemoteDebuggerClient(String ip, int port) throws Exception { + socket = new Socket(ip, port); + Thread thread = new Thread("SQL Remote Debugger Client on port " + port) { + @Override + public void run() { + DebuggerRegistryListener debuggerRegisterListener = null; + try { + final ObjectOutputStream out = new ObjectOutputStream(new BufferedOutputStream(socket.getOutputStream())); + debuggerRegisterListener = new DebuggerRegistryListener() { + @Override + public void notifyDebuggerListenersModified() { + try { + boolean isLogging = !DebuggerRegistry.getDebuggerList().isEmpty(); + out.writeObject(new ServerLoggingActivationMessage(isLogging)); + out.flush(); + } catch (IOException e) { + e.printStackTrace(); + } + } + }; + DebuggerRegistry.addDebuggerRegisterListener(debuggerRegisterListener); + ObjectInputStream in = new ObjectInputStream(new BufferedInputStream(socket.getInputStream())); + for(Message o; (o=(Message)in.readObject()) != null; ) { + if(o instanceof ClientDebugQueriesMessage) { + DebuggerData sqlQueryDebuggerData = ((ClientDebugQueriesMessage) o).getSqlQueryDebuggerData(); + for(Debugger debugger: DebuggerRegistry.getDebuggerList()) { + debugger.debugQueries(sqlQueryDebuggerData); + } + } else if(o instanceof ClientDebugResultSetMessage) { + ClientDebugResultSetMessage m = (ClientDebugResultSetMessage) o; + int sqlQueryDebuggerDataID = m.getSqlQueryDebuggerDataID(); + DebuggerResultSetData clientDebugResultSetData = m.getSqlQueryDebuggerResultSetData(); + for(Debugger debugger: DebuggerRegistry.getDebuggerList()) { + debugger.debugResultSet(sqlQueryDebuggerDataID, clientDebugResultSetData); + } + } + } + } catch(Exception e) { + e.printStackTrace(); + } finally { + if(debuggerRegisterListener != null) { + DebuggerRegistry.removeDebuggerRegisterListener(debuggerRegisterListener); + } + } + } + }; + thread.setDaemon(true); + thread.start(); + } + +} diff --git a/jOOQ-console/src/main/java/org/jooq/debug/console/remote/RemoteDebuggerServer.java b/jOOQ-console/src/main/java/org/jooq/debug/console/remote/RemoteDebuggerServer.java new file mode 100644 index 00000000000..72f65243ed2 --- /dev/null +++ b/jOOQ-console/src/main/java/org/jooq/debug/console/remote/RemoteDebuggerServer.java @@ -0,0 +1,154 @@ +/** + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com + * Christopher Deckers, chrriis@gmail.com + * All rights reserved. + * + * This software is licensed to you under the Apache License, Version 2.0 + * (the "License"); You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * 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 "jOOQ" 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 COPYRIGHT OWNER 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. + */ +package org.jooq.debug.console.remote; + +import java.io.BufferedInputStream; +import java.io.BufferedOutputStream; +import java.io.IOException; +import java.io.ObjectInputStream; +import java.io.ObjectOutputStream; +import java.net.ServerSocket; +import java.net.Socket; + +import org.jooq.debug.Debugger; +import org.jooq.debug.DebuggerData; +import org.jooq.debug.DebuggerRegistry; +import org.jooq.debug.DebuggerResultSetData; + +/** + * @author Christopher Deckers + */ +public class RemoteDebuggerServer { + + private final Object LOCK = new Object(); + private ServerSocket serverSocket; + + public RemoteDebuggerServer(final int port) { + Thread serverThread = new Thread("SQL Remote Debugger Server on port " + port) { + @Override + public void run() { + try { + synchronized(LOCK) { + serverSocket = new ServerSocket(port); + } + while(true) { + ServerSocket serverSocket_; + synchronized(LOCK) { + serverSocket_ = serverSocket; + } + if(serverSocket_ != null) { + Socket socket = serverSocket_.accept(); + startServerToClientThread(socket, port); + } + } + } catch(Exception e) { + e.printStackTrace(); + } + } + }; + serverThread.setDaemon(true); + serverThread.start(); + } + + private void startServerToClientThread(final Socket socket, int port) { + Thread clientThread = new Thread("SQL Remote Debugger Server on port " + port) { + @Override + public void run() { + Debugger sqlQueryDebugger = null; + boolean isLogging = false; + try { + ObjectInputStream in = new ObjectInputStream(new BufferedInputStream(socket.getInputStream())); + final ObjectOutputStream out = new ObjectOutputStream(new BufferedOutputStream(socket.getOutputStream())); + sqlQueryDebugger = new Debugger() { + @Override + public synchronized void debugQueries(DebuggerData sqlQueryDebuggerData) { + try { + out.writeObject(new ClientDebugQueriesMessage(sqlQueryDebuggerData)); + out.flush(); + } catch (IOException e) { + e.printStackTrace(); + } + } + @Override + public synchronized void debugResultSet(int sqlQueryDebuggerDataID, DebuggerResultSetData sqlQueryDebuggerResultSetData) { + try { + out.writeObject(new ClientDebugResultSetMessage(sqlQueryDebuggerDataID, sqlQueryDebuggerResultSetData)); + out.flush(); + } catch (IOException e) { + e.printStackTrace(); + } + } + }; + for(Message o; (o=(Message)in.readObject()) != null; ) { + if(o instanceof ServerLoggingActivationMessage) { + isLogging = ((ServerLoggingActivationMessage) o).isLogging(); + if(isLogging) { + DebuggerRegistry.addSqlQueryDebugger(sqlQueryDebugger); + } else { + DebuggerRegistry.removeSqlQueryDebugger(sqlQueryDebugger); + } + } + } + } catch(Exception e) { + if(isLogging) { + e.printStackTrace(); + } + } finally { + if(sqlQueryDebugger != null) { + DebuggerRegistry.removeSqlQueryDebugger(sqlQueryDebugger); + } + } + } + }; + clientThread.setDaemon(true); + clientThread.start(); + } + + public void close() { + synchronized(LOCK) { + if(serverSocket != null) { + try { + serverSocket.close(); + } catch (IOException e) { + e.printStackTrace(); + } + serverSocket = null; + } + } + } + +} diff --git a/jOOQ-console/src/main/java/org/jooq/debug/console/remote/ServerLoggingActivationMessage.java b/jOOQ-console/src/main/java/org/jooq/debug/console/remote/ServerLoggingActivationMessage.java new file mode 100644 index 00000000000..3b672cfc976 --- /dev/null +++ b/jOOQ-console/src/main/java/org/jooq/debug/console/remote/ServerLoggingActivationMessage.java @@ -0,0 +1,54 @@ +/** + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com + * Christopher Deckers, chrriis@gmail.com + * All rights reserved. + * + * This software is licensed to you under the Apache License, Version 2.0 + * (the "License"); You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * 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 "jOOQ" 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 COPYRIGHT OWNER 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. + */ +package org.jooq.debug.console.remote; + +/** + * @author Christopher Deckers + */ +public class ServerLoggingActivationMessage implements Message { + + private boolean isLogging; + + public ServerLoggingActivationMessage(boolean isLogging) { + this.isLogging = isLogging; + } + + public boolean isLogging() { + return isLogging; + } + +} diff --git a/jOOQ-console/src/main/resources/org/jooq/debug/console/resources/Clear16.png b/jOOQ-console/src/main/resources/org/jooq/debug/console/resources/Clear16.png new file mode 100644 index 00000000000..76207ac57f7 Binary files /dev/null and b/jOOQ-console/src/main/resources/org/jooq/debug/console/resources/Clear16.png differ diff --git a/jOOQ-console/src/main/resources/org/jooq/debug/console/resources/LockScroll16.png b/jOOQ-console/src/main/resources/org/jooq/debug/console/resources/LockScroll16.png new file mode 100644 index 00000000000..6a00020ab71 Binary files /dev/null and b/jOOQ-console/src/main/resources/org/jooq/debug/console/resources/LockScroll16.png differ diff --git a/jOOQ-console/src/main/resources/org/jooq/debug/console/resources/Paused16.png b/jOOQ-console/src/main/resources/org/jooq/debug/console/resources/Paused16.png new file mode 100644 index 00000000000..41e8d4de52a Binary files /dev/null and b/jOOQ-console/src/main/resources/org/jooq/debug/console/resources/Paused16.png differ diff --git a/jOOQ-console/src/main/resources/org/jooq/debug/console/resources/Play16.png b/jOOQ-console/src/main/resources/org/jooq/debug/console/resources/Play16.png new file mode 100644 index 00000000000..93e8f538f07 Binary files /dev/null and b/jOOQ-console/src/main/resources/org/jooq/debug/console/resources/Play16.png differ diff --git a/jOOQ-console/src/main/resources/org/jooq/debug/console/resources/Running16.png b/jOOQ-console/src/main/resources/org/jooq/debug/console/resources/Running16.png new file mode 100644 index 00000000000..471c0918dd8 Binary files /dev/null and b/jOOQ-console/src/main/resources/org/jooq/debug/console/resources/Running16.png differ diff --git a/jOOQ-console/src/main/resources/org/jooq/debug/console/resources/SQL16.png b/jOOQ-console/src/main/resources/org/jooq/debug/console/resources/SQL16.png new file mode 100644 index 00000000000..d86f6d0026e Binary files /dev/null and b/jOOQ-console/src/main/resources/org/jooq/debug/console/resources/SQL16.png differ diff --git a/jOOQ-console/src/main/resources/org/jooq/debug/console/resources/Search16.png b/jOOQ-console/src/main/resources/org/jooq/debug/console/resources/Search16.png new file mode 100644 index 00000000000..ab1ba73a7e4 Binary files /dev/null and b/jOOQ-console/src/main/resources/org/jooq/debug/console/resources/Search16.png differ diff --git a/jOOQ-console/src/main/resources/org/jooq/debug/console/resources/SqlDelete16.png b/jOOQ-console/src/main/resources/org/jooq/debug/console/resources/SqlDelete16.png new file mode 100644 index 00000000000..5f99a9d70be Binary files /dev/null and b/jOOQ-console/src/main/resources/org/jooq/debug/console/resources/SqlDelete16.png differ diff --git a/jOOQ-console/src/main/resources/org/jooq/debug/console/resources/SqlInsert16.png b/jOOQ-console/src/main/resources/org/jooq/debug/console/resources/SqlInsert16.png new file mode 100644 index 00000000000..b68423dbb56 Binary files /dev/null and b/jOOQ-console/src/main/resources/org/jooq/debug/console/resources/SqlInsert16.png differ diff --git a/jOOQ-console/src/main/resources/org/jooq/debug/console/resources/SqlOther16.png b/jOOQ-console/src/main/resources/org/jooq/debug/console/resources/SqlOther16.png new file mode 100644 index 00000000000..3a179582301 Binary files /dev/null and b/jOOQ-console/src/main/resources/org/jooq/debug/console/resources/SqlOther16.png differ diff --git a/jOOQ-console/src/main/resources/org/jooq/debug/console/resources/SqlSelect16.png b/jOOQ-console/src/main/resources/org/jooq/debug/console/resources/SqlSelect16.png new file mode 100644 index 00000000000..8e87830d4d5 Binary files /dev/null and b/jOOQ-console/src/main/resources/org/jooq/debug/console/resources/SqlSelect16.png differ diff --git a/jOOQ-console/src/main/resources/org/jooq/debug/console/resources/SqlUpdate16.png b/jOOQ-console/src/main/resources/org/jooq/debug/console/resources/SqlUpdate16.png new file mode 100644 index 00000000000..274958838af Binary files /dev/null and b/jOOQ-console/src/main/resources/org/jooq/debug/console/resources/SqlUpdate16.png differ diff --git a/jOOQ-console/src/main/resources/org/jooq/debug/console/resources/Stop16.png b/jOOQ-console/src/main/resources/org/jooq/debug/console/resources/Stop16.png new file mode 100644 index 00000000000..ff006fc2a77 Binary files /dev/null and b/jOOQ-console/src/main/resources/org/jooq/debug/console/resources/Stop16.png differ diff --git a/jOOQ-console/src/main/resources/org/jooq/debug/console/resources/TabCloseActive14.png b/jOOQ-console/src/main/resources/org/jooq/debug/console/resources/TabCloseActive14.png new file mode 100644 index 00000000000..00c16c43d91 Binary files /dev/null and b/jOOQ-console/src/main/resources/org/jooq/debug/console/resources/TabCloseActive14.png differ diff --git a/jOOQ-console/src/main/resources/org/jooq/debug/console/resources/TabCloseInactive14.png b/jOOQ-console/src/main/resources/org/jooq/debug/console/resources/TabCloseInactive14.png new file mode 100644 index 00000000000..4fcb259b85f Binary files /dev/null and b/jOOQ-console/src/main/resources/org/jooq/debug/console/resources/TabCloseInactive14.png differ diff --git a/jOOQ-console/src/main/resources/org/jooq/debug/console/resources/Table16.png b/jOOQ-console/src/main/resources/org/jooq/debug/console/resources/Table16.png new file mode 100644 index 00000000000..e9868453a29 Binary files /dev/null and b/jOOQ-console/src/main/resources/org/jooq/debug/console/resources/Table16.png differ diff --git a/jOOQ-console/src/main/resources/org/jooq/debug/console/resources/TableColumn16.png b/jOOQ-console/src/main/resources/org/jooq/debug/console/resources/TableColumn16.png new file mode 100644 index 00000000000..02a3df01e1a Binary files /dev/null and b/jOOQ-console/src/main/resources/org/jooq/debug/console/resources/TableColumn16.png differ diff --git a/jOOQ-console/test/chrriis/jooq/test/SQLConsoleTest.java b/jOOQ-console/test/chrriis/jooq/test/SQLConsoleTest.java new file mode 100644 index 00000000000..64fd64dbbe5 --- /dev/null +++ b/jOOQ-console/test/chrriis/jooq/test/SQLConsoleTest.java @@ -0,0 +1,176 @@ +/** + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com + * Christopher Deckers, chrriis@gmail.com + * All rights reserved. + * + * This software is licensed to you under the Apache License, Version 2.0 + * (the "License"); You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * 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 "jOOQ" 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 COPYRIGHT OWNER 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. + */ +package chrriis.jooq.test; + +import java.sql.Connection; +import java.util.ArrayList; +import java.util.List; + +import javax.swing.JFrame; +import javax.swing.SwingUtilities; +import javax.swing.UIManager; + +import org.jooq.Record; +import org.jooq.SQLDialect; +import org.jooq.Schema; +import org.jooq.Table; +import org.jooq.debugger.SqlQueryDebugger; +import org.jooq.debugger.SqlQueryDebuggerData; +import org.jooq.debugger.SqlQueryDebuggerRegister; +import org.jooq.debugger.SqlQueryDebuggerResultSetData; +import org.jooq.debugger.SqlQueryType; +import org.jooq.debugger.console.DatabaseDescriptor; +import org.jooq.debugger.console.SqlConsoleFrame; +import org.jooq.impl.SQLDataType; +import org.jooq.impl.SchemaImpl; +import org.jooq.impl.TableImpl; + +public class SQLConsoleTest { + + public static void main(String[] args) { + SwingUtilities.invokeLater(new Runnable() { + public void run() { + try { + UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName()); + } catch (Exception e) { + e.printStackTrace(); + } + DatabaseDescriptor editorDatabaseDescriptor = null; + editorDatabaseDescriptor = new DatabaseDescriptor() { + @Override + public Schema getSchema() { + final List> tableList = new ArrayList>(); + tableList.add(new TableImpl("An_Example_Table") {{ + createField("SomeDecimal", SQLDataType.DECIMAL, this); + createField("AnInt", SQLDataType.BIGINT, this); + }}); + tableList.add(new TableImpl("Another_Table") {{ + createField("Wow", SQLDataType.CLOB, this); + createField("Great", SQLDataType.BIT, this); + }}); + tableList.add(new TableImpl("Basic") {{ + createField("Stuff", SQLDataType.CLOB, this); + createField("Thing", SQLDataType.BIT, this); + }}); + tableList.add(new TableImpl("Yet_Another_One") {{ + createField("SoGood", SQLDataType.DECIMAL, this); + createField("Great", SQLDataType.VARCHAR, this); + }}); + return new SchemaImpl("Test") { + @Override + public List> getTables() { + return tableList; + } + }; + } + @Override + public SQLDialect getSQLDialect() { + return SQLDialect.SQLSERVER; + } + @Override + public Connection createConnection() { + return null; + } + }; + SqlConsoleFrame sqlConsoleFrame = new SqlConsoleFrame(editorDatabaseDescriptor, true); + sqlConsoleFrame.setLoggingActive(true); + sqlConsoleFrame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); + sqlConsoleFrame.setVisible(true); + new Thread("SQL Thread") { + public void run() { + while(true) { + try { + sleep(Math.round(Math.random() * 3000)); + } catch (InterruptedException e) { + } + if(Math.random() < 0.2) { + performSP(); + } else if(Math.random() < 0.6) { + performInsert(); + } else { + performSelectWithIndirection(); + } + } + } + + }.start(); + } + }); + } + + private static void performSP() { + SqlQueryDebuggerData sqlQueryDebuggerData = new SqlQueryDebuggerData(SqlQueryType.OTHER, new String[] {"spCustomFnt" + Math.round(Math.random() * 10) + "('Some params')"}, Math.round(Math.random() * 1500), Math.round(Math.random() * 1500), Math.round(Math.random() * 1500)); + for(SqlQueryDebugger debugger: SqlQueryDebuggerRegister.getSqlQueryDebuggerList()) { + debugger.debugQueries(sqlQueryDebuggerData); + } + } + + private static void performSelectWithIndirection() { + performSelectWithAnotherIndirection(); + } + + private static void performSelectWithAnotherIndirection() { + yetAnotherSelectIndirection(); + } + + private static void yetAnotherSelectIndirection() { + performSelect(); + } + + private static void performSelect() { + SqlQueryDebuggerData sqlQueryDebuggerData = new SqlQueryDebuggerData(SqlQueryType.READ, new String[] {"SELECT * FROM Table" + Math.round(Math.random() * 10)}, null, null, Math.round(Math.random() * 1500)); + for(SqlQueryDebugger debugger: SqlQueryDebuggerRegister.getSqlQueryDebuggerList()) { + debugger.debugQueries(sqlQueryDebuggerData); + } + try { + Thread.sleep(Math.round(Math.random() * 1000)); + } catch (InterruptedException e) { + } + int sqlQueryDebuggerDataID = sqlQueryDebuggerData.getID(); + for(SqlQueryDebugger debugger: SqlQueryDebuggerRegister.getSqlQueryDebuggerList()) { + debugger.debugResultSet(sqlQueryDebuggerDataID, new SqlQueryDebuggerResultSetData((int)Math.round(Math.random() * 1000), (int)Math.round(Math.random() * 1000000), (int)Math.round(Math.random() * 1000000), 0)); + } + } + + private static void performInsert() { + SqlQueryDebuggerData sqlQueryDebuggerData = new SqlQueryDebuggerData(SqlQueryType.WRITE, new String[] {"INSERT INTO Table" + Math.round(Math.random() * 10) + " (Col1, Col2, Col3) VALUES ('abc', NULL, " + Math.round(Math.random() * 150) + ")"}, null, null, Math.round(Math.random() * 1500)); + for(SqlQueryDebugger debugger: SqlQueryDebuggerRegister.getSqlQueryDebuggerList()) { + debugger.debugQueries(sqlQueryDebuggerData); + } + } + +} diff --git a/jOOQ-meta/.classpath b/jOOQ-meta/.classpath new file mode 100644 index 00000000000..9b3745e6d46 --- /dev/null +++ b/jOOQ-meta/.classpath @@ -0,0 +1,8 @@ + + + + + + + + diff --git a/jOOQ-meta/.gitignore b/jOOQ-meta/.gitignore new file mode 100644 index 00000000000..ea8c4bf7f35 --- /dev/null +++ b/jOOQ-meta/.gitignore @@ -0,0 +1 @@ +/target diff --git a/jOOQ-meta/.project b/jOOQ-meta/.project new file mode 100644 index 00000000000..226d659117d --- /dev/null +++ b/jOOQ-meta/.project @@ -0,0 +1,23 @@ + + + jOOQ-meta + + + + + + org.eclipse.jdt.core.javabuilder + + + + + org.maven.ide.eclipse.maven2Builder + + + + + + org.maven.ide.eclipse.maven2Nature + org.eclipse.jdt.core.javanature + + diff --git a/jOOQ-meta/.settings/org.eclipse.jdt.core.prefs b/jOOQ-meta/.settings/org.eclipse.jdt.core.prefs new file mode 100644 index 00000000000..eea4bca85e9 --- /dev/null +++ b/jOOQ-meta/.settings/org.eclipse.jdt.core.prefs @@ -0,0 +1,350 @@ +#Sat Nov 05 12:53:40 CET 2011 +eclipse.preferences.version=1 +org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled +org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.6 +org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve +org.eclipse.jdt.core.compiler.compliance=1.6 +org.eclipse.jdt.core.compiler.debug.lineNumber=generate +org.eclipse.jdt.core.compiler.debug.localVariable=generate +org.eclipse.jdt.core.compiler.debug.sourceFile=generate +org.eclipse.jdt.core.compiler.problem.annotationSuperInterface=warning +org.eclipse.jdt.core.compiler.problem.assertIdentifier=error +org.eclipse.jdt.core.compiler.problem.autoboxing=ignore +org.eclipse.jdt.core.compiler.problem.comparingIdentical=warning +org.eclipse.jdt.core.compiler.problem.deadCode=warning +org.eclipse.jdt.core.compiler.problem.deprecation=warning +org.eclipse.jdt.core.compiler.problem.deprecationInDeprecatedCode=disabled +org.eclipse.jdt.core.compiler.problem.deprecationWhenOverridingDeprecatedMethod=disabled +org.eclipse.jdt.core.compiler.problem.discouragedReference=warning +org.eclipse.jdt.core.compiler.problem.emptyStatement=ignore +org.eclipse.jdt.core.compiler.problem.enumIdentifier=error +org.eclipse.jdt.core.compiler.problem.fallthroughCase=ignore +org.eclipse.jdt.core.compiler.problem.fatalOptionalError=disabled +org.eclipse.jdt.core.compiler.problem.fieldHiding=warning +org.eclipse.jdt.core.compiler.problem.finalParameterBound=warning +org.eclipse.jdt.core.compiler.problem.finallyBlockNotCompletingNormally=warning +org.eclipse.jdt.core.compiler.problem.forbiddenReference=warning +org.eclipse.jdt.core.compiler.problem.hiddenCatchBlock=warning +org.eclipse.jdt.core.compiler.problem.incompatibleNonInheritedInterfaceMethod=warning +org.eclipse.jdt.core.compiler.problem.incompleteEnumSwitch=ignore +org.eclipse.jdt.core.compiler.problem.indirectStaticAccess=ignore +org.eclipse.jdt.core.compiler.problem.localVariableHiding=warning +org.eclipse.jdt.core.compiler.problem.methodWithConstructorName=warning +org.eclipse.jdt.core.compiler.problem.missingDeprecatedAnnotation=warning +org.eclipse.jdt.core.compiler.problem.missingHashCodeMethod=ignore +org.eclipse.jdt.core.compiler.problem.missingOverrideAnnotation=warning +org.eclipse.jdt.core.compiler.problem.missingOverrideAnnotationForInterfaceMethodImplementation=enabled +org.eclipse.jdt.core.compiler.problem.missingSerialVersion=warning +org.eclipse.jdt.core.compiler.problem.missingSynchronizedOnInheritedMethod=warning +org.eclipse.jdt.core.compiler.problem.noEffectAssignment=warning +org.eclipse.jdt.core.compiler.problem.noImplicitStringConversion=warning +org.eclipse.jdt.core.compiler.problem.nonExternalizedStringLiteral=ignore +org.eclipse.jdt.core.compiler.problem.nullReference=error +org.eclipse.jdt.core.compiler.problem.overridingPackageDefaultMethod=warning +org.eclipse.jdt.core.compiler.problem.parameterAssignment=ignore +org.eclipse.jdt.core.compiler.problem.possibleAccidentalBooleanAssignment=warning +org.eclipse.jdt.core.compiler.problem.potentialNullReference=warning +org.eclipse.jdt.core.compiler.problem.rawTypeReference=warning +org.eclipse.jdt.core.compiler.problem.redundantNullCheck=warning +org.eclipse.jdt.core.compiler.problem.redundantSuperinterface=warning +org.eclipse.jdt.core.compiler.problem.specialParameterHidingField=disabled +org.eclipse.jdt.core.compiler.problem.staticAccessReceiver=warning +org.eclipse.jdt.core.compiler.problem.suppressOptionalErrors=disabled +org.eclipse.jdt.core.compiler.problem.suppressWarnings=enabled +org.eclipse.jdt.core.compiler.problem.syntheticAccessEmulation=ignore +org.eclipse.jdt.core.compiler.problem.typeParameterHiding=warning +org.eclipse.jdt.core.compiler.problem.uncheckedTypeOperation=warning +org.eclipse.jdt.core.compiler.problem.undocumentedEmptyBlock=ignore +org.eclipse.jdt.core.compiler.problem.unhandledWarningToken=warning +org.eclipse.jdt.core.compiler.problem.unnecessaryElse=ignore +org.eclipse.jdt.core.compiler.problem.unnecessaryTypeCheck=warning +org.eclipse.jdt.core.compiler.problem.unqualifiedFieldAccess=ignore +org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownException=warning +org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionExemptExceptionAndThrowable=enabled +org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionIncludeDocCommentReference=enabled +org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionWhenOverriding=disabled +org.eclipse.jdt.core.compiler.problem.unusedImport=warning +org.eclipse.jdt.core.compiler.problem.unusedLabel=warning +org.eclipse.jdt.core.compiler.problem.unusedLocal=warning +org.eclipse.jdt.core.compiler.problem.unusedObjectAllocation=ignore +org.eclipse.jdt.core.compiler.problem.unusedParameter=warning +org.eclipse.jdt.core.compiler.problem.unusedParameterIncludeDocCommentReference=enabled +org.eclipse.jdt.core.compiler.problem.unusedParameterWhenImplementingAbstract=disabled +org.eclipse.jdt.core.compiler.problem.unusedParameterWhenOverridingConcrete=disabled +org.eclipse.jdt.core.compiler.problem.unusedPrivateMember=warning +org.eclipse.jdt.core.compiler.problem.unusedWarningToken=warning +org.eclipse.jdt.core.compiler.problem.varargsArgumentNeedCast=warning +org.eclipse.jdt.core.compiler.source=1.6 +org.eclipse.jdt.core.formatter.align_type_members_on_columns=true +org.eclipse.jdt.core.formatter.alignment_for_arguments_in_allocation_expression=16 +org.eclipse.jdt.core.formatter.alignment_for_arguments_in_annotation=0 +org.eclipse.jdt.core.formatter.alignment_for_arguments_in_enum_constant=16 +org.eclipse.jdt.core.formatter.alignment_for_arguments_in_explicit_constructor_call=16 +org.eclipse.jdt.core.formatter.alignment_for_arguments_in_method_invocation=16 +org.eclipse.jdt.core.formatter.alignment_for_arguments_in_qualified_allocation_expression=16 +org.eclipse.jdt.core.formatter.alignment_for_assignment=0 +org.eclipse.jdt.core.formatter.alignment_for_binary_expression=16 +org.eclipse.jdt.core.formatter.alignment_for_compact_if=16 +org.eclipse.jdt.core.formatter.alignment_for_conditional_expression=80 +org.eclipse.jdt.core.formatter.alignment_for_enum_constants=49 +org.eclipse.jdt.core.formatter.alignment_for_expressions_in_array_initializer=16 +org.eclipse.jdt.core.formatter.alignment_for_method_declaration=0 +org.eclipse.jdt.core.formatter.alignment_for_multiple_fields=16 +org.eclipse.jdt.core.formatter.alignment_for_parameters_in_constructor_declaration=16 +org.eclipse.jdt.core.formatter.alignment_for_parameters_in_method_declaration=16 +org.eclipse.jdt.core.formatter.alignment_for_selector_in_method_invocation=16 +org.eclipse.jdt.core.formatter.alignment_for_superclass_in_type_declaration=16 +org.eclipse.jdt.core.formatter.alignment_for_superinterfaces_in_enum_declaration=16 +org.eclipse.jdt.core.formatter.alignment_for_superinterfaces_in_type_declaration=16 +org.eclipse.jdt.core.formatter.alignment_for_throws_clause_in_constructor_declaration=16 +org.eclipse.jdt.core.formatter.alignment_for_throws_clause_in_method_declaration=16 +org.eclipse.jdt.core.formatter.blank_lines_after_imports=1 +org.eclipse.jdt.core.formatter.blank_lines_after_package=1 +org.eclipse.jdt.core.formatter.blank_lines_before_field=0 +org.eclipse.jdt.core.formatter.blank_lines_before_first_class_body_declaration=0 +org.eclipse.jdt.core.formatter.blank_lines_before_imports=1 +org.eclipse.jdt.core.formatter.blank_lines_before_member_type=1 +org.eclipse.jdt.core.formatter.blank_lines_before_method=1 +org.eclipse.jdt.core.formatter.blank_lines_before_new_chunk=1 +org.eclipse.jdt.core.formatter.blank_lines_before_package=0 +org.eclipse.jdt.core.formatter.blank_lines_between_import_groups=1 +org.eclipse.jdt.core.formatter.blank_lines_between_type_declarations=1 +org.eclipse.jdt.core.formatter.brace_position_for_annotation_type_declaration=end_of_line +org.eclipse.jdt.core.formatter.brace_position_for_anonymous_type_declaration=end_of_line +org.eclipse.jdt.core.formatter.brace_position_for_array_initializer=end_of_line +org.eclipse.jdt.core.formatter.brace_position_for_block=end_of_line +org.eclipse.jdt.core.formatter.brace_position_for_block_in_case=end_of_line +org.eclipse.jdt.core.formatter.brace_position_for_constructor_declaration=end_of_line +org.eclipse.jdt.core.formatter.brace_position_for_enum_constant=end_of_line +org.eclipse.jdt.core.formatter.brace_position_for_enum_declaration=end_of_line +org.eclipse.jdt.core.formatter.brace_position_for_method_declaration=end_of_line +org.eclipse.jdt.core.formatter.brace_position_for_switch=end_of_line +org.eclipse.jdt.core.formatter.brace_position_for_type_declaration=end_of_line +org.eclipse.jdt.core.formatter.comment.clear_blank_lines_in_block_comment=true +org.eclipse.jdt.core.formatter.comment.clear_blank_lines_in_javadoc_comment=true +org.eclipse.jdt.core.formatter.comment.format_block_comments=true +org.eclipse.jdt.core.formatter.comment.format_header=false +org.eclipse.jdt.core.formatter.comment.format_html=true +org.eclipse.jdt.core.formatter.comment.format_javadoc_comments=true +org.eclipse.jdt.core.formatter.comment.format_line_comments=true +org.eclipse.jdt.core.formatter.comment.format_source_code=true +org.eclipse.jdt.core.formatter.comment.indent_parameter_description=true +org.eclipse.jdt.core.formatter.comment.indent_root_tags=true +org.eclipse.jdt.core.formatter.comment.insert_new_line_before_root_tags=insert +org.eclipse.jdt.core.formatter.comment.insert_new_line_for_parameter=do not insert +org.eclipse.jdt.core.formatter.comment.line_length=80 +org.eclipse.jdt.core.formatter.comment.new_lines_at_block_boundaries=true +org.eclipse.jdt.core.formatter.comment.new_lines_at_javadoc_boundaries=true +org.eclipse.jdt.core.formatter.comment.preserve_white_space_between_code_and_line_comments=false +org.eclipse.jdt.core.formatter.compact_else_if=true +org.eclipse.jdt.core.formatter.continuation_indentation=1 +org.eclipse.jdt.core.formatter.continuation_indentation_for_array_initializer=1 +org.eclipse.jdt.core.formatter.disabling_tag=@formatter\:off +org.eclipse.jdt.core.formatter.enabling_tag=@formatter\:on +org.eclipse.jdt.core.formatter.format_guardian_clause_on_one_line=false +org.eclipse.jdt.core.formatter.format_line_comment_starting_on_first_column=true +org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_annotation_declaration_header=true +org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_enum_constant_header=true +org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_enum_declaration_header=true +org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_type_header=true +org.eclipse.jdt.core.formatter.indent_breaks_compare_to_cases=true +org.eclipse.jdt.core.formatter.indent_empty_lines=false +org.eclipse.jdt.core.formatter.indent_statements_compare_to_block=true +org.eclipse.jdt.core.formatter.indent_statements_compare_to_body=true +org.eclipse.jdt.core.formatter.indent_switchstatements_compare_to_cases=true +org.eclipse.jdt.core.formatter.indent_switchstatements_compare_to_switch=true +org.eclipse.jdt.core.formatter.indentation.size=4 +org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_field=insert +org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_local_variable=insert +org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_member=insert +org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_method=insert +org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_package=insert +org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_parameter=do not insert +org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_type=insert +org.eclipse.jdt.core.formatter.insert_new_line_after_label=do not insert +org.eclipse.jdt.core.formatter.insert_new_line_after_opening_brace_in_array_initializer=do not insert +org.eclipse.jdt.core.formatter.insert_new_line_at_end_of_file_if_missing=insert +org.eclipse.jdt.core.formatter.insert_new_line_before_catch_in_try_statement=insert +org.eclipse.jdt.core.formatter.insert_new_line_before_closing_brace_in_array_initializer=do not insert +org.eclipse.jdt.core.formatter.insert_new_line_before_else_in_if_statement=insert +org.eclipse.jdt.core.formatter.insert_new_line_before_finally_in_try_statement=insert +org.eclipse.jdt.core.formatter.insert_new_line_before_while_in_do_statement=insert +org.eclipse.jdt.core.formatter.insert_new_line_in_empty_annotation_declaration=do not insert +org.eclipse.jdt.core.formatter.insert_new_line_in_empty_anonymous_type_declaration=do not insert +org.eclipse.jdt.core.formatter.insert_new_line_in_empty_block=do not insert +org.eclipse.jdt.core.formatter.insert_new_line_in_empty_enum_constant=do not insert +org.eclipse.jdt.core.formatter.insert_new_line_in_empty_enum_declaration=do not insert +org.eclipse.jdt.core.formatter.insert_new_line_in_empty_method_body=do not insert +org.eclipse.jdt.core.formatter.insert_new_line_in_empty_type_declaration=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_and_in_type_parameter=insert +org.eclipse.jdt.core.formatter.insert_space_after_assignment_operator=insert +org.eclipse.jdt.core.formatter.insert_space_after_at_in_annotation=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_at_in_annotation_type_declaration=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_binary_operator=insert +org.eclipse.jdt.core.formatter.insert_space_after_closing_angle_bracket_in_type_arguments=insert +org.eclipse.jdt.core.formatter.insert_space_after_closing_angle_bracket_in_type_parameters=insert +org.eclipse.jdt.core.formatter.insert_space_after_closing_brace_in_block=insert +org.eclipse.jdt.core.formatter.insert_space_after_closing_paren_in_cast=insert +org.eclipse.jdt.core.formatter.insert_space_after_colon_in_assert=insert +org.eclipse.jdt.core.formatter.insert_space_after_colon_in_case=insert +org.eclipse.jdt.core.formatter.insert_space_after_colon_in_conditional=insert +org.eclipse.jdt.core.formatter.insert_space_after_colon_in_for=insert +org.eclipse.jdt.core.formatter.insert_space_after_colon_in_labeled_statement=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_allocation_expression=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_annotation=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_array_initializer=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_constructor_declaration_parameters=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_constructor_declaration_throws=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_enum_constant_arguments=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_enum_declarations=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_explicitconstructorcall_arguments=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_for_increments=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_for_inits=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_method_declaration_parameters=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_method_declaration_throws=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_method_invocation_arguments=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_multiple_field_declarations=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_multiple_local_declarations=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_parameterized_type_reference=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_superinterfaces=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_type_arguments=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_type_parameters=insert +org.eclipse.jdt.core.formatter.insert_space_after_ellipsis=insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_parameterized_type_reference=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_type_arguments=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_type_parameters=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_brace_in_array_initializer=insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_bracket_in_array_allocation_expression=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_bracket_in_array_reference=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_annotation=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_cast=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_catch=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_constructor_declaration=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_enum_constant=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_for=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_if=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_method_declaration=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_method_invocation=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_parenthesized_expression=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_switch=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_synchronized=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_while=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_postfix_operator=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_prefix_operator=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_question_in_conditional=insert +org.eclipse.jdt.core.formatter.insert_space_after_question_in_wildcard=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_semicolon_in_for=insert +org.eclipse.jdt.core.formatter.insert_space_after_unary_operator=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_and_in_type_parameter=insert +org.eclipse.jdt.core.formatter.insert_space_before_assignment_operator=insert +org.eclipse.jdt.core.formatter.insert_space_before_at_in_annotation_type_declaration=insert +org.eclipse.jdt.core.formatter.insert_space_before_binary_operator=insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_angle_bracket_in_parameterized_type_reference=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_angle_bracket_in_type_arguments=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_angle_bracket_in_type_parameters=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_brace_in_array_initializer=insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_bracket_in_array_allocation_expression=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_bracket_in_array_reference=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_annotation=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_cast=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_catch=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_constructor_declaration=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_enum_constant=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_for=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_if=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_method_declaration=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_method_invocation=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_parenthesized_expression=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_switch=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_synchronized=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_while=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_colon_in_assert=insert +org.eclipse.jdt.core.formatter.insert_space_before_colon_in_case=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_colon_in_conditional=insert +org.eclipse.jdt.core.formatter.insert_space_before_colon_in_default=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_colon_in_for=insert +org.eclipse.jdt.core.formatter.insert_space_before_colon_in_labeled_statement=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_allocation_expression=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_annotation=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_array_initializer=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_constructor_declaration_parameters=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_constructor_declaration_throws=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_enum_constant_arguments=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_enum_declarations=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_explicitconstructorcall_arguments=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_for_increments=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_for_inits=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_method_declaration_parameters=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_method_declaration_throws=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_method_invocation_arguments=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_multiple_field_declarations=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_multiple_local_declarations=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_parameterized_type_reference=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_superinterfaces=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_type_arguments=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_type_parameters=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_ellipsis=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_parameterized_type_reference=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_type_arguments=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_type_parameters=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_annotation_type_declaration=insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_anonymous_type_declaration=insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_array_initializer=insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_block=insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_constructor_declaration=insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_enum_constant=insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_enum_declaration=insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_method_declaration=insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_switch=insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_type_declaration=insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_bracket_in_array_allocation_expression=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_bracket_in_array_reference=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_bracket_in_array_type_reference=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_annotation=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_annotation_type_member_declaration=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_catch=insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_constructor_declaration=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_enum_constant=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_for=insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_if=insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_method_declaration=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_method_invocation=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_parenthesized_expression=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_switch=insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_synchronized=insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_while=insert +org.eclipse.jdt.core.formatter.insert_space_before_parenthesized_expression_in_return=insert +org.eclipse.jdt.core.formatter.insert_space_before_parenthesized_expression_in_throw=insert +org.eclipse.jdt.core.formatter.insert_space_before_postfix_operator=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_prefix_operator=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_question_in_conditional=insert +org.eclipse.jdt.core.formatter.insert_space_before_question_in_wildcard=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_semicolon=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_semicolon_in_for=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_unary_operator=do not insert +org.eclipse.jdt.core.formatter.insert_space_between_brackets_in_array_type_reference=do not insert +org.eclipse.jdt.core.formatter.insert_space_between_empty_braces_in_array_initializer=do not insert +org.eclipse.jdt.core.formatter.insert_space_between_empty_brackets_in_array_allocation_expression=do not insert +org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_annotation_type_member_declaration=do not insert +org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_constructor_declaration=do not insert +org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_enum_constant=do not insert +org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_method_declaration=do not insert +org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_method_invocation=do not insert +org.eclipse.jdt.core.formatter.join_lines_in_comments=true +org.eclipse.jdt.core.formatter.join_wrapped_lines=true +org.eclipse.jdt.core.formatter.keep_else_statement_on_same_line=false +org.eclipse.jdt.core.formatter.keep_empty_array_initializer_on_one_line=false +org.eclipse.jdt.core.formatter.keep_imple_if_on_one_line=false +org.eclipse.jdt.core.formatter.keep_then_statement_on_same_line=false +org.eclipse.jdt.core.formatter.lineSplit=120 +org.eclipse.jdt.core.formatter.never_indent_block_comments_on_first_column=false +org.eclipse.jdt.core.formatter.never_indent_line_comments_on_first_column=false +org.eclipse.jdt.core.formatter.number_of_blank_lines_at_beginning_of_method_body=0 +org.eclipse.jdt.core.formatter.number_of_empty_lines_to_preserve=1 +org.eclipse.jdt.core.formatter.put_empty_statement_on_new_line=true +org.eclipse.jdt.core.formatter.tabulation.char=space +org.eclipse.jdt.core.formatter.tabulation.size=4 +org.eclipse.jdt.core.formatter.use_on_off_tags=false +org.eclipse.jdt.core.formatter.use_tabs_only_for_leading_indentations=false +org.eclipse.jdt.core.formatter.wrap_before_binary_operator=true +org.eclipse.jdt.core.formatter.wrap_outer_expressions_when_nested=true diff --git a/jOOQ-meta/.settings/org.eclipse.jdt.ui.prefs b/jOOQ-meta/.settings/org.eclipse.jdt.ui.prefs new file mode 100644 index 00000000000..b07f39ee3e9 --- /dev/null +++ b/jOOQ-meta/.settings/org.eclipse.jdt.ui.prefs @@ -0,0 +1,116 @@ +#Sat Nov 05 13:02:50 CET 2011 +cleanup.add_default_serial_version_id=false +cleanup.add_generated_serial_version_id=true +cleanup.add_missing_annotations=true +cleanup.add_missing_deprecated_annotations=true +cleanup.add_missing_methods=false +cleanup.add_missing_nls_tags=false +cleanup.add_missing_override_annotations=true +cleanup.add_missing_override_annotations_interface_methods=true +cleanup.add_serial_version_id=true +cleanup.always_use_blocks=true +cleanup.always_use_parentheses_in_expressions=false +cleanup.always_use_this_for_non_static_field_access=true +cleanup.always_use_this_for_non_static_method_access=false +cleanup.convert_to_enhanced_for_loop=false +cleanup.correct_indentation=true +cleanup.format_source_code=false +cleanup.format_source_code_changes_only=false +cleanup.make_local_variable_final=true +cleanup.make_parameters_final=false +cleanup.make_private_fields_final=true +cleanup.make_type_abstract_if_missing_method=false +cleanup.make_variable_declarations_final=false +cleanup.never_use_blocks=false +cleanup.never_use_parentheses_in_expressions=true +cleanup.organize_imports=true +cleanup.qualify_static_field_accesses_with_declaring_class=false +cleanup.qualify_static_member_accesses_through_instances_with_declaring_class=true +cleanup.qualify_static_member_accesses_through_subtypes_with_declaring_class=true +cleanup.qualify_static_member_accesses_with_declaring_class=true +cleanup.qualify_static_method_accesses_with_declaring_class=false +cleanup.remove_private_constructors=true +cleanup.remove_trailing_whitespaces=true +cleanup.remove_trailing_whitespaces_all=true +cleanup.remove_trailing_whitespaces_ignore_empty=false +cleanup.remove_unnecessary_casts=true +cleanup.remove_unnecessary_nls_tags=true +cleanup.remove_unused_imports=true +cleanup.remove_unused_local_variables=false +cleanup.remove_unused_private_fields=true +cleanup.remove_unused_private_members=false +cleanup.remove_unused_private_methods=true +cleanup.remove_unused_private_types=true +cleanup.sort_members=false +cleanup.sort_members_all=false +cleanup.use_blocks=true +cleanup.use_blocks_only_for_return_and_throw=false +cleanup.use_parentheses_in_expressions=false +cleanup.use_this_for_non_static_field_access=false +cleanup.use_this_for_non_static_field_access_only_if_necessary=false +cleanup.use_this_for_non_static_method_access=false +cleanup.use_this_for_non_static_method_access_only_if_necessary=true +cleanup_profile=_jOOQ +cleanup_settings_version=2 +eclipse.preferences.version=1 +editor_save_participant_org.eclipse.jdt.ui.postsavelistener.cleanup=true +formatter_profile=_jOOQ +formatter_settings_version=12 +org.eclipse.jdt.ui.ignorelowercasenames=true +org.eclipse.jdt.ui.importorder=java;javax;org.jooq;org;com; +org.eclipse.jdt.ui.javadoc=false +org.eclipse.jdt.ui.ondemandthreshold=99 +org.eclipse.jdt.ui.staticondemandthreshold=99 +org.eclipse.jdt.ui.text.custom_code_templates= +sp_cleanup.add_default_serial_version_id=true +sp_cleanup.add_generated_serial_version_id=false +sp_cleanup.add_missing_annotations=true +sp_cleanup.add_missing_deprecated_annotations=true +sp_cleanup.add_missing_methods=false +sp_cleanup.add_missing_nls_tags=false +sp_cleanup.add_missing_override_annotations=true +sp_cleanup.add_missing_override_annotations_interface_methods=true +sp_cleanup.add_serial_version_id=false +sp_cleanup.always_use_blocks=true +sp_cleanup.always_use_parentheses_in_expressions=false +sp_cleanup.always_use_this_for_non_static_field_access=false +sp_cleanup.always_use_this_for_non_static_method_access=false +sp_cleanup.convert_to_enhanced_for_loop=false +sp_cleanup.correct_indentation=false +sp_cleanup.format_source_code=false +sp_cleanup.format_source_code_changes_only=false +sp_cleanup.make_local_variable_final=false +sp_cleanup.make_parameters_final=false +sp_cleanup.make_private_fields_final=true +sp_cleanup.make_type_abstract_if_missing_method=false +sp_cleanup.make_variable_declarations_final=false +sp_cleanup.never_use_blocks=false +sp_cleanup.never_use_parentheses_in_expressions=true +sp_cleanup.on_save_use_additional_actions=true +sp_cleanup.organize_imports=true +sp_cleanup.qualify_static_field_accesses_with_declaring_class=false +sp_cleanup.qualify_static_member_accesses_through_instances_with_declaring_class=true +sp_cleanup.qualify_static_member_accesses_through_subtypes_with_declaring_class=true +sp_cleanup.qualify_static_member_accesses_with_declaring_class=false +sp_cleanup.qualify_static_method_accesses_with_declaring_class=false +sp_cleanup.remove_private_constructors=true +sp_cleanup.remove_trailing_whitespaces=true +sp_cleanup.remove_trailing_whitespaces_all=true +sp_cleanup.remove_trailing_whitespaces_ignore_empty=false +sp_cleanup.remove_unnecessary_casts=true +sp_cleanup.remove_unnecessary_nls_tags=false +sp_cleanup.remove_unused_imports=true +sp_cleanup.remove_unused_local_variables=false +sp_cleanup.remove_unused_private_fields=true +sp_cleanup.remove_unused_private_members=false +sp_cleanup.remove_unused_private_methods=true +sp_cleanup.remove_unused_private_types=true +sp_cleanup.sort_members=false +sp_cleanup.sort_members_all=false +sp_cleanup.use_blocks=false +sp_cleanup.use_blocks_only_for_return_and_throw=false +sp_cleanup.use_parentheses_in_expressions=false +sp_cleanup.use_this_for_non_static_field_access=false +sp_cleanup.use_this_for_non_static_field_access_only_if_necessary=true +sp_cleanup.use_this_for_non_static_method_access=false +sp_cleanup.use_this_for_non_static_method_access_only_if_necessary=true diff --git a/jOOQ-meta/.settings/org.maven.ide.eclipse.prefs b/jOOQ-meta/.settings/org.maven.ide.eclipse.prefs new file mode 100644 index 00000000000..c5172a20ac8 --- /dev/null +++ b/jOOQ-meta/.settings/org.maven.ide.eclipse.prefs @@ -0,0 +1,8 @@ +#Sun Apr 10 10:03:42 CEST 2011 +activeProfiles= +eclipse.preferences.version=1 +fullBuildGoals=process-test-resources +resolveWorkspaceProjects=true +resourceFilterGoals=process-resources resources\:testResources +skipCompilerPlugin=true +version=1 diff --git a/jOOQ-meta/LICENSE.txt b/jOOQ-meta/LICENSE.txt new file mode 100644 index 00000000000..fd12d44afa0 --- /dev/null +++ b/jOOQ-meta/LICENSE.txt @@ -0,0 +1,33 @@ + Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com + All rights reserved. + + This software is licensed to you under the Apache License, Version 2.0 + (the "License"); You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + 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 "jOOQ" 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 COPYRIGHT OWNER 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. \ No newline at end of file diff --git a/jOOQ-meta/build.xml b/jOOQ-meta/build.xml new file mode 100644 index 00000000000..06050f1ad6d --- /dev/null +++ b/jOOQ-meta/build.xml @@ -0,0 +1,36 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/jOOQ-meta/lib/activation.jar b/jOOQ-meta/lib/activation.jar new file mode 100644 index 00000000000..8cbef16f485 Binary files /dev/null and b/jOOQ-meta/lib/activation.jar differ diff --git a/jOOQ-meta/lib/jaxb-api.jar b/jOOQ-meta/lib/jaxb-api.jar new file mode 100644 index 00000000000..3918383710b Binary files /dev/null and b/jOOQ-meta/lib/jaxb-api.jar differ diff --git a/jOOQ-meta/lib/jaxb-impl.jar b/jOOQ-meta/lib/jaxb-impl.jar new file mode 100644 index 00000000000..7ff2dac935d Binary files /dev/null and b/jOOQ-meta/lib/jaxb-impl.jar differ diff --git a/jOOQ-meta/lib/jaxb-xjc.jar b/jOOQ-meta/lib/jaxb-xjc.jar new file mode 100644 index 00000000000..e586232048c Binary files /dev/null and b/jOOQ-meta/lib/jaxb-xjc.jar differ diff --git a/jOOQ-meta/lib/jaxb1-impl.jar b/jOOQ-meta/lib/jaxb1-impl.jar new file mode 100644 index 00000000000..f6c8349da4c Binary files /dev/null and b/jOOQ-meta/lib/jaxb1-impl.jar differ diff --git a/jOOQ-meta/lib/jaxb2-default-value-1.1.jar b/jOOQ-meta/lib/jaxb2-default-value-1.1.jar new file mode 100644 index 00000000000..884897de55e Binary files /dev/null and b/jOOQ-meta/lib/jaxb2-default-value-1.1.jar differ diff --git a/jOOQ-meta/lib/jaxb2-fluent-api-3.0.jar b/jOOQ-meta/lib/jaxb2-fluent-api-3.0.jar new file mode 100644 index 00000000000..f3c384f497e Binary files /dev/null and b/jOOQ-meta/lib/jaxb2-fluent-api-3.0.jar differ diff --git a/jOOQ-meta/lib/jaxb2-value-constructor-3.0.jar b/jOOQ-meta/lib/jaxb2-value-constructor-3.0.jar new file mode 100644 index 00000000000..1d53dc15658 Binary files /dev/null and b/jOOQ-meta/lib/jaxb2-value-constructor-3.0.jar differ diff --git a/jOOQ-meta/lib/jsr173_1.0_api.jar b/jOOQ-meta/lib/jsr173_1.0_api.jar new file mode 100644 index 00000000000..87ff1c1abba Binary files /dev/null and b/jOOQ-meta/lib/jsr173_1.0_api.jar differ diff --git a/jOOQ-meta/lib/xew.jar b/jOOQ-meta/lib/xew.jar new file mode 100644 index 00000000000..a7e6051e97e Binary files /dev/null and b/jOOQ-meta/lib/xew.jar differ diff --git a/jOOQ-meta/pom.xml b/jOOQ-meta/pom.xml new file mode 100644 index 00000000000..1f998322345 --- /dev/null +++ b/jOOQ-meta/pom.xml @@ -0,0 +1,157 @@ + + + oss-parent + org.sonatype.oss + 7 + + 4.0.0 + + org.jooq + jooq-meta + 2.2.0 + jar + + jOOQ Meta + jOOQ effectively combines complex SQL, typesafety, source code generation, active records, stored procedures, advanced data types, and Java in a fluent, intuitive DSL. + http://www.jooq.org + + + + + Apache License, Version 2.0 + http://www.jooq.org/inc/LICENSE.txt + repo + + + + + scm:svn:https://jooq.svn.sourceforge.net/svnroot/jooq + scm:svn:https://jooq.svn.sourceforge.net/svnroot/jooq + https://jooq.svn.sourceforge.net/svnroot/jooq + + + + deploy + ${project.artifactId}-${project.version} + + + + org.apache.maven.plugins + maven-gpg-plugin + 1.1 + + + sign-artifacts + verify + + sign + + + + + + + org.apache.maven.plugins + maven-compiler-plugin + 2.3.2 + + true + 512m + 256m + UTF-8 + 1.6 + 1.6 + true + lines,vars,source + + + + + true + org.apache.maven.plugins + maven-source-plugin + 2.1.2 + + + attach-sources + + jar + + + + + + true + true + + + + + true + org.apache.maven.plugins + maven-javadoc-plugin + 2.7 + + + bundle-sources + package + + jar + + + + + 512 + UTF-8 + protected + true + + + + + org.apache.maven.plugins + maven-resources-plugin + 2.5 + + UTF-8 + + + + + org.apache.maven.plugins + maven-eclipse-plugin + 2.8 + + true + + + + + + + Trac + https://sourceforge.net/apps/trac/jooq/report/6 + + + + + Lukas Eder + lukas.eder@gmail.com + + + Espen Stromsnes + estromsnes@gmail.com + + + + + + org.jooq + jooq + 2.2.0 + jar + compile + + + \ No newline at end of file diff --git a/jOOQ-meta/src/main/java/org/jooq/util/AbstractDatabase.java b/jOOQ-meta/src/main/java/org/jooq/util/AbstractDatabase.java new file mode 100644 index 00000000000..ebf9a97f1f7 --- /dev/null +++ b/jOOQ-meta/src/main/java/org/jooq/util/AbstractDatabase.java @@ -0,0 +1,695 @@ +/** + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com + * All rights reserved. + * + * This software is licensed to you under the Apache License, Version 2.0 + * (the "License"); You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * 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 "jOOQ" 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 COPYRIGHT OWNER 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. + */ + +package org.jooq.util; + +import java.io.IOException; +import java.io.StringReader; +import java.math.BigInteger; +import java.sql.Connection; +import java.sql.SQLException; +import java.util.ArrayList; +import java.util.List; + +import org.jooq.SQLDialect; +import org.jooq.impl.SQLDataType; +import org.jooq.tools.JooqLogger; +import org.jooq.tools.csv.CSVReader; +import org.jooq.util.jaxb.CustomType; +import org.jooq.util.jaxb.EnumType; +import org.jooq.util.jaxb.ForcedType; +import org.jooq.util.jaxb.MasterDataTable; +import org.jooq.util.jaxb.Schema; + +/** + * A base implementation for all types of databases. + * + * @author Lukas Eder + */ +public abstract class AbstractDatabase implements Database { + + private static final JooqLogger log = JooqLogger.getLogger(AbstractDatabase.class); + + // ------------------------------------------------------------------------- + // Configuration elements + // ------------------------------------------------------------------------- + + private Connection connection; + private String[] excludes; + private String[] includes; + private boolean supportsUnsignedTypes; + private boolean dateAsTimestamp; + private List configuredSchemata; + private List configuredMasterDataTables; + private List configuredCustomTypes; + private List configuredEnumTypes; + private List configuredForcedTypes; + + // ------------------------------------------------------------------------- + // Loaded definitions + // ------------------------------------------------------------------------- + + private List schemata; + private List sequences; + private List tables; + private List masterDataTables; + private List enums; + private List udts; + private List arrays; + private List routines; + private List packages; + private Relations relations; + + + + @Override + public final SQLDialect getDialect() { + return create().getDialect(); + } + + @Override + public final void setConnection(Connection connection) { + this.connection = connection; + } + + @Override + public final Connection getConnection() { + return connection; + } + + @Override + public final List getSchemata() { + if (schemata == null) { + schemata = new ArrayList(); + + for (String name : getInputSchemata()) { + schemata.add(new SchemaDefinition(this, name, null)); + } + } + + return schemata; + } + + @Override + public final SchemaDefinition getSchema(String inputName) { + for (SchemaDefinition schema : getSchemata()) { + if (schema.getName().equals(inputName)) { + return schema; + } + } + + return null; + } + + @Override + public final List getInputSchemata() { + List result = new ArrayList(); + + for (Schema schema : configuredSchemata) { + result.add(schema.getInputSchema()); + } + + return result; + } + + @Override + @Deprecated + public String getOutputSchema(String inputSchema) { + for (Schema schema : configuredSchemata) { + if (inputSchema.equals(schema.getInputSchema())) { + return schema.getOutputSchema(); + } + } + + return inputSchema; + } + + @Override + public final void setConfiguredSchemata(List schemata) { + this.configuredSchemata = schemata; + } + + @Override + public final void setExcludes(String[] excludes) { + this.excludes = excludes; + } + + @Override + public final String[] getExcludes() { + return excludes; + } + + @Override + public final void setIncludes(String[] includes) { + this.includes = includes; + } + + @Override + public final String[] getIncludes() { + return includes; + } + + @Override + public final void setConfiguredMasterDataTables(List configuredMasterDataTables) { + this.configuredMasterDataTables = configuredMasterDataTables; + } + + @Override + public final List getConfiguredMasterDataTables() { + return configuredMasterDataTables; + } + + @Override + public final void setConfiguredEnumTypes(List configuredEnumTypes) { + this.configuredEnumTypes = configuredEnumTypes; + } + + @Override + public final List getConfiguredEnumTypes() { + return configuredEnumTypes; + } + + @Override + public final void setConfiguredCustomTypes(List configuredCustomTypes) { + this.configuredCustomTypes = configuredCustomTypes; + } + + @Override + public final List getConfiguredCustomTypes() { + return configuredCustomTypes; + } + + @Override + public final CustomType getConfiguredCustomType(String name) { + for (CustomType type : configuredCustomTypes) { + if (type.getName().equals(name)) { + return type; + } + } + + return null; + } + + @Override + public final void setConfiguredForcedTypes(List configuredForcedTypes) { + this.configuredForcedTypes = configuredForcedTypes; + } + + @Override + public final List getConfiguredForcedTypes() { + return configuredForcedTypes; + } + + @Override + public final void setSupportsUnsignedTypes(boolean supportsUnsignedTypes) { + this.supportsUnsignedTypes = supportsUnsignedTypes; + } + + @Override + public final boolean supportsUnsignedTypes() { + return supportsUnsignedTypes; + } + + @Override + public final void setDateAsTimestamp(boolean dateAsTimestamp) { + this.dateAsTimestamp = dateAsTimestamp; + } + + @Override + public final boolean dateAsTimestamp() { + return dateAsTimestamp; + } + + @Override + public final List getSequences(SchemaDefinition schema) { + if (sequences == null) { + sequences = new ArrayList(); + + try { + List s = getSequences0(); + + sequences = filterExcludeInclude(s); + log.info("Sequences fetched", fetchedSize(s, sequences)); + } catch (Exception e) { + log.error("Error while fetching sequences", e); + } + } + + return filterSchema(sequences, schema); + } + + @Override + public final List getTables(SchemaDefinition schema) { + if (tables == null) { + tables = new ArrayList(); + + try { + List t = filterMasterDataTables(getTables0(), false); + + tables = filterExcludeInclude(t); + log.info("Tables fetched", fetchedSize(t, tables)); + } catch (Exception e) { + log.error("Error while fetching tables", e); + } + } + + return filterSchema(tables, schema); + } + + @Override + public final TableDefinition getTable(SchemaDefinition schema, String name) { + return getTable(schema, name, false); + } + + @Override + public final TableDefinition getTable(SchemaDefinition schema, String name, boolean ignoreCase) { + TableDefinition result = null; + + result = getDefinition(getTables(schema), name, ignoreCase); + if (result == null) { + result = getDefinition(getMasterDataTables(schema), name, ignoreCase); + } + + return result; + } + + @Override + public final List getMasterDataTables(SchemaDefinition schema) { + if (masterDataTables == null) { + masterDataTables = new ArrayList(); + + try { + List t = filterMasterDataTables(getTables0(), true); + masterDataTables = filterExcludeInclude(t); + + log.info("Masterdata tables fetched", fetchedSize(t, masterDataTables)); + } catch (Exception e) { + log.error("Exception while fetching master data tables", e); + } + } + + return filterSchema(masterDataTables, schema); + } + + @Override + public final MasterDataTableDefinition getMasterDataTable(SchemaDefinition schema, String name) { + return getMasterDataTable(schema, name, false); + } + + @Override + public final MasterDataTableDefinition getMasterDataTable(SchemaDefinition schema, String name, boolean ignoreCase) { + return getDefinition(getMasterDataTables(schema), name, ignoreCase); + } + + @Override + public final List getEnums(SchemaDefinition schema) { + if (enums == null) { + enums = new ArrayList(); + + try { + List e = getEnums0(); + + enums = filterExcludeInclude(e); + enums.addAll(getConfiguredEnums()); + + log.info("Enums fetched", fetchedSize(e, enums)); + } catch (Exception e) { + log.error("Error while fetching enums", e); + } + } + + return enums; + } + + private final List getConfiguredEnums() { + List result = new ArrayList(); + + for (EnumType enumType : configuredEnumTypes) { + String name = enumType.getName(); + DefaultEnumDefinition e = new DefaultEnumDefinition(getSchemata().get(0), name, null, true); + + String literals = enumType.getLiterals(); + + try { + CSVReader reader = new CSVReader(new StringReader(literals)); + e.addLiterals(reader.readNext()); + } catch (IOException ignore) {} + + result.add(e); + } + + return result; + } + + @Override + public final ForcedType getConfiguredForcedType(Definition definition) { + for (ForcedType forcedType : getConfiguredForcedTypes()) { + if (definition.getQualifiedName().matches(forcedType.getExpressions())) { + return forcedType; + } + } + + return null; + } + + @Override + public final EnumDefinition getEnum(SchemaDefinition schema, String name) { + return getEnum(schema, name, false); + } + + @Override + public final EnumDefinition getEnum(SchemaDefinition schema, String name, boolean ignoreCase) { + return getDefinition(getEnums(schema), name, ignoreCase); + } + + @Override + public final List getArrays(SchemaDefinition schema) { + if (arrays == null) { + arrays = new ArrayList(); + + try { + List a = getArrays0(); + + arrays = filterExcludeInclude(a); + log.info("ARRAYs fetched", fetchedSize(a, arrays)); + } catch (Exception e) { + log.error("Error while fetching ARRAYS", e); + } + } + + return filterSchema(arrays, schema); + } + + @Override + public final ArrayDefinition getArray(SchemaDefinition schema, String name) { + return getArray(schema, name, false); + } + + @Override + public final ArrayDefinition getArray(SchemaDefinition schema, String name, boolean ignoreCase) { + return getDefinition(getArrays(schema), name, ignoreCase); + } + + @Override + public final List getUDTs(SchemaDefinition schema) { + if (udts == null) { + udts = new ArrayList(); + + try { + List u = getUDTs0(); + + udts = filterExcludeInclude(u); + log.info("UDTs fetched", fetchedSize(u, udts)); + } catch (Exception e) { + log.error("Error while fetching udts", e); + } + } + + return filterSchema(udts, schema); + } + + @Override + public final UDTDefinition getUDT(SchemaDefinition schema, String name) { + return getUDT(schema, name, false); + } + + @Override + public final UDTDefinition getUDT(SchemaDefinition schema, String name, boolean ignoreCase) { + return getDefinition(getUDTs(schema), name, ignoreCase); + } + + @Override + public final Relations getRelations() { + if (relations == null) { + try { + relations = getRelations0(); + } catch (Exception e) { + log.error("Error while fetching relations", e); + relations = new DefaultRelations(); + } + } + + return relations; + } + + @Override + public final List getRoutines(SchemaDefinition schema) { + if (routines == null) { + routines = new ArrayList(); + + try { + List r = getRoutines0(); + + routines = filterExcludeInclude(r); + log.info("Routines fetched", fetchedSize(r, routines)); + } catch (Exception e) { + log.error("Error while fetching functions", e); + } + } + + return filterSchema(routines, schema); + } + + @Override + public final List getPackages(SchemaDefinition schema) { + if (packages == null) { + packages = new ArrayList(); + + try { + List p = getPackages0(); + + packages = filterExcludeInclude(p); + log.info("Packages fetched", fetchedSize(p, packages)); + } catch (Exception e) { + log.error("Error while fetching packages", e); + } + } + + return filterSchema(packages, schema); + } + + static final D getDefinition(List definitions, String name, boolean ignoreCase) { + for (D definition : definitions) { + if ((ignoreCase && definition.getName().equalsIgnoreCase(name)) || + (!ignoreCase && definition.getName().equals(name))) { + + return definition; + } + } + + return null; + } + + private final List filterSchema(List definitions, SchemaDefinition schema) { + if (schema == null) { + return definitions; + } + else { + List result = new ArrayList(); + + for (T definition : definitions) { + if (definition.getSchema().equals(schema)) { + result.add(definition); + } + } + + return result; + } + } + + private final List filterExcludeInclude(List definitions) { + List result = new ArrayList(); + + definitionsLoop: for (T definition : definitions) { + for (String exclude : excludes) { + if (exclude != null && definition.getName().matches(exclude.trim())) { + continue definitionsLoop; + } + } + + for (String include : includes) { + if (include != null && definition.getName().matches(include.trim())) { + result.add(definition); + continue definitionsLoop; + } + } + } + + return result; + } + + @SuppressWarnings("unchecked") + private final List filterMasterDataTables(List list, boolean include) { + List result = new ArrayList(); + + definitionLoop: for (TableDefinition definition : list) { + for (MasterDataTable table : configuredMasterDataTables) { + if (definition.getName().equals(table.getName())) { + + // If we have a match, then add the table only if master + // data tables are included in the result + if (include) { + result.add((T) new DefaultMasterDataTableDefinition(definition)); + } + + continue definitionLoop; + } + + } + + // If we don't have any match, then add the table only if + // master data tables are excluded in the result + if (!include) { + result.add((T) definition); + } + } + + return result; + } + + /** + * Retrieve ALL relations from the database. + */ + protected final Relations getRelations0() throws SQLException { + DefaultRelations result = new DefaultRelations(); + + loadPrimaryKeys(result); + loadUniqueKeys(result); + loadForeignKeys(result); + + return result; + } + + @Override + public final boolean isArrayType(String dataType) { + switch (getDialect()) { + case POSTGRES: + case H2: + return "ARRAY".equals(dataType); + case HSQLDB: + return dataType.endsWith("ARRAY"); + } + + return false; + } + + private final String fetchedSize(List fetched, List included) { + return fetched.size() + " (" + included.size() + " included, " + (fetched.size() - included.size()) + " excluded)"; + } + + /** + * Retrieve primary keys and store them to relations + */ + protected abstract void loadPrimaryKeys(DefaultRelations r) throws SQLException; + + /** + * Retrieve non-primary unique keys and store them to relations + */ + protected abstract void loadUniqueKeys(DefaultRelations r) throws SQLException; + + /** + * Retrieve foreign keys and store them to relations. Unique keys are + * already loaded. + */ + protected abstract void loadForeignKeys(DefaultRelations r) throws SQLException; + + /** + * Retrieve ALL sequences from the database. This will be filtered in + * {@link #getTables(SchemaDefinition)} + */ + protected abstract List getSequences0() throws SQLException; + + /** + * Retrieve ALL tables from the database. This will be filtered in + * {@link #getTables(SchemaDefinition)} + */ + protected abstract List getTables0() throws SQLException; + + /** + * Retrieve ALL stored routines (functions and procedures) from the + * database. This will be filtered in {@link #getRoutines(SchemaDefinition)} + */ + protected abstract List getRoutines0() throws SQLException; + + /** + * Retrieve ALL packages from the database. This will be filtered in + * {@link #getPackages(SchemaDefinition)} + */ + protected abstract List getPackages0() throws SQLException; + + /** + * Retrieve ALL enum UDTs from the database. This will be filtered in + * {@link #getEnums(SchemaDefinition)} + */ + protected abstract List getEnums0() throws SQLException; + + /** + * Retrieve ALL UDTs from the database. This will be filtered in + * {@link #getEnums(SchemaDefinition)} + */ + protected abstract List getUDTs0() throws SQLException; + + /** + * Retrieve ALL ARRAYs from the database. This will be filtered in + * {@link #getArrays(SchemaDefinition)} + */ + protected abstract List getArrays0() throws SQLException; + + /** + * Get the data type considering a known max value + */ + protected final DataTypeDefinition getDataTypeForMAX_VAL(SchemaDefinition schema, BigInteger value) { + DataTypeDefinition type; + + if (BigInteger.valueOf(Byte.MAX_VALUE).compareTo(value) >= 0) { + type = new DefaultDataTypeDefinition(this, schema, SQLDataType.NUMERIC.getTypeName(), 0, 2, 0); + } + else if (BigInteger.valueOf(Short.MAX_VALUE).compareTo(value) >= 0) { + type = new DefaultDataTypeDefinition(this, schema, SQLDataType.NUMERIC.getTypeName(), 0, 4, 0); + } + else if (BigInteger.valueOf(Integer.MAX_VALUE).compareTo(value) >= 0) { + type = new DefaultDataTypeDefinition(this, schema, SQLDataType.NUMERIC.getTypeName(), 0, 9, 0); + } + else if (BigInteger.valueOf(Long.MAX_VALUE).compareTo(value) >= 0) { + type = new DefaultDataTypeDefinition(this, schema, SQLDataType.NUMERIC.getTypeName(), 0, 18, 0); + } + else { + type = new DefaultDataTypeDefinition(this, schema, SQLDataType.NUMERIC.getTypeName(), 0, 38, 0); + } + + return type; + } +} diff --git a/jOOQ-meta/src/main/java/org/jooq/util/AbstractDefinition.java b/jOOQ-meta/src/main/java/org/jooq/util/AbstractDefinition.java new file mode 100644 index 00000000000..86b7b3fe14f --- /dev/null +++ b/jOOQ-meta/src/main/java/org/jooq/util/AbstractDefinition.java @@ -0,0 +1,201 @@ +/** + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com + * All rights reserved. + * + * This software is licensed to you under the Apache License, Version 2.0 + * (the "License"); You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * 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 "jOOQ" 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 COPYRIGHT OWNER 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. + */ + +package org.jooq.util; + +import java.sql.Connection; + +import org.jooq.SQLDialect; +import org.jooq.impl.Factory; + +/** + * A base implementation for any type of definition. + * + * @author Lukas Eder + */ +public abstract class AbstractDefinition implements Definition { + + private final Database database; + private final SchemaDefinition schema; + private final String name; + private final String comment; + private final String overload; + + public AbstractDefinition(Database database, SchemaDefinition schema, String name) { + this(database, schema, name, null); + } + + public AbstractDefinition(Database database, SchemaDefinition schema, String name, String comment) { + this(database, schema, name, comment, null); + } + + public AbstractDefinition(Database database, SchemaDefinition schema, String name, String comment, String overload) { + this.database = database; + + // The subclass constructor cannot pass "this" to the super constructor + this.schema = (schema == null && this instanceof SchemaDefinition) + ? (SchemaDefinition) this + : schema; + this.name = name; + this.comment = comment; + this.overload = overload; + } + + @Override + public final String getOverload() { + return overload; + } + + @Override + public final SchemaDefinition getSchema() { + return schema; + } + + @Override + public final String getName() { + return name; + } + + @Override + public final String getInputName() { + return name; + } + + /** + * Subclasses may override this method + * + * {@inheritDoc} + */ + @Override + public String getOutputName() { + return getInputName(); + } + + @Override + public final String getComment() { + return comment; + } + + @Override + public final String getQualifiedName() { + return getQualifiedInputName(); + } + + /** + * Subclasses may override this method + * + * {@inheritDoc} + */ + @Override + public final String getQualifiedInputName() { + StringBuilder sb = new StringBuilder(); + + String separator = ""; + for (Definition part : getDefinitionPath()) { + if (part instanceof SchemaDefinition && ((SchemaDefinition) part).isDefaultSchema()) { + continue; + } + + sb.append(separator); + sb.append(part.getInputName()); + + separator = "."; + } + + return sb.toString(); + } + + /** + * Subclasses may override this method + * + * {@inheritDoc} + */ + @Override + public final String getQualifiedOutputName() { + StringBuilder sb = new StringBuilder(); + + String separator = ""; + for (Definition part : getDefinitionPath()) { + if (part instanceof SchemaDefinition && ((SchemaDefinition) part).isDefaultSchema()) { + continue; + } + + sb.append(separator); + sb.append(part.getOutputName()); + + separator = "."; + } + + return sb.toString(); + } + + @Override + public final Database getDatabase() { + return database; + } + + protected final Connection getConnection() { + return database.getConnection(); + } + + @Override + public final String toString() { + return getQualifiedName(); + } + + @Override + public final boolean equals(Object obj) { + if (obj instanceof Definition) { + Definition that = (Definition) obj; + return that.getQualifiedName().equals(getQualifiedName()); + } + + return false; + } + + @Override + public final int hashCode() { + return getQualifiedName().hashCode(); + } + + protected final Factory create() { + return database.create(); + } + + protected final SQLDialect getDialect() { + return create().getDialect(); + } +} diff --git a/jOOQ-meta/src/main/java/org/jooq/util/AbstractElementContainerDefinition.java b/jOOQ-meta/src/main/java/org/jooq/util/AbstractElementContainerDefinition.java new file mode 100644 index 00000000000..8a022026efb --- /dev/null +++ b/jOOQ-meta/src/main/java/org/jooq/util/AbstractElementContainerDefinition.java @@ -0,0 +1,135 @@ +/** + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com + * All rights reserved. + * + * This software is licensed to you under the Apache License, Version 2.0 + * (the "License"); You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * 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 "jOOQ" 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 COPYRIGHT OWNER 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. + */ + +package org.jooq.util; + +import java.sql.SQLException; +import java.util.ArrayList; +import java.util.Arrays; +import java.util.List; +import java.util.regex.Matcher; +import java.util.regex.Pattern; + +import org.jooq.tools.JooqLogger; +import org.jooq.tools.StringUtils; + +/** + * A base implementation for element container definitions + * + * @author Lukas Eder + */ +public abstract class AbstractElementContainerDefinition> +extends AbstractDefinition { + + /** + * Precision and scale for those dialects that don't formally provide that + * information in a separate field + */ + protected static final Pattern PRECISION_SCALE = Pattern.compile("\\((\\d+)\\s*(?:,\\s*(\\d+))?\\)"); + private static final JooqLogger log = JooqLogger.getLogger(AbstractElementContainerDefinition.class); + + private List elements; + + public AbstractElementContainerDefinition(SchemaDefinition schema, String name, String comment) { + super(schema.getDatabase(), schema, name, comment); + } + + @Override + public final List getDefinitionPath() { + return Arrays.asList(getSchema(), this); + } + + protected final List getElements() { + if (elements == null) { + elements = new ArrayList(); + + try { + elements = getElements0(); + } + catch (SQLException e) { + log.error("Error while initialising type", e); + } + } + + return elements; + } + + protected final E getElement(String name) { + return getElement(name, false); + } + + protected final E getElement(String name, boolean ignoreCase) { + return AbstractDatabase.getDefinition(getElements(), name, ignoreCase); + } + + protected final E getElement(int index) { + return getElements().get(index); + } + + protected abstract List getElements0() throws SQLException; + + protected Number parsePrecision(String typeName) { + if (typeName.contains("(")) { + Matcher m = PRECISION_SCALE.matcher(typeName); + + if (m.find()) { + if (!StringUtils.isBlank(m.group(1))) { + return Integer.valueOf(m.group(1)); + } + } + } + + return 0; + } + + protected Number parseScale(String typeName) { + if (typeName.contains("(")) { + Matcher m = PRECISION_SCALE.matcher(typeName); + + if (m.find()) { + if (!StringUtils.isBlank(m.group(2))) { + return Integer.valueOf(m.group(2)); + } + } + } + + return 0; + } + + protected boolean parseNotNull(String typeName) { + return typeName.toUpperCase().contains("NOT NULL"); + } +} diff --git a/jOOQ-meta/src/main/java/org/jooq/util/AbstractPackageDefinition.java b/jOOQ-meta/src/main/java/org/jooq/util/AbstractPackageDefinition.java new file mode 100644 index 00000000000..bad7210a729 --- /dev/null +++ b/jOOQ-meta/src/main/java/org/jooq/util/AbstractPackageDefinition.java @@ -0,0 +1,80 @@ +/** + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com + * All rights reserved. + * + * This software is licensed to you under the Apache License, Version 2.0 + * (the "License"); You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * 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 "jOOQ" 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 COPYRIGHT OWNER 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. + */ +package org.jooq.util; + +import java.sql.SQLException; +import java.util.ArrayList; +import java.util.Arrays; +import java.util.List; + +import org.jooq.tools.JooqLogger; + +/** + * @author Lukas Eder + */ +public abstract class AbstractPackageDefinition extends AbstractDefinition implements PackageDefinition { + + private static final JooqLogger log = JooqLogger.getLogger(AbstractPackageDefinition.class); + + private List routines; + + public AbstractPackageDefinition(SchemaDefinition schema, String name, String comment) { + super(schema.getDatabase(), schema, name, comment); + } + + @Override + public List getDefinitionPath() { + return Arrays.asList(getSchema(), this); + } + + @Override + public final List getRoutines() { + if (routines == null) { + routines = new ArrayList(); + + try { + routines = getRoutines0(); + } + catch (SQLException e) { + log.error("Error while initialising package", e); + } + } + + return routines; + } + + protected abstract List getRoutines0() throws SQLException; +} diff --git a/jOOQ-meta/src/main/java/org/jooq/util/AbstractRoutineDefinition.java b/jOOQ-meta/src/main/java/org/jooq/util/AbstractRoutineDefinition.java new file mode 100644 index 00000000000..3aecc112daa --- /dev/null +++ b/jOOQ-meta/src/main/java/org/jooq/util/AbstractRoutineDefinition.java @@ -0,0 +1,178 @@ +/** + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com + * All rights reserved. + * + * This software is licensed to you under the Apache License, Version 2.0 + * (the "License"); You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * 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 "jOOQ" 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 COPYRIGHT OWNER 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. + */ + +package org.jooq.util; + +import java.sql.SQLException; +import java.util.ArrayList; +import java.util.Arrays; +import java.util.List; +import java.util.regex.Pattern; + +import org.jooq.tools.JooqLogger; + +/** + * @author Lukas Eder + */ +public abstract class AbstractRoutineDefinition extends AbstractDefinition implements RoutineDefinition { + + private static final JooqLogger log = JooqLogger.getLogger(AbstractRoutineDefinition.class); + private static final String INOUT = "(?:(IN|OUT|INOUT)\\s+?)?"; + private static final String PARAM_NAME = "(?:(\\S+?)\\s+?)"; + private static final String PARAM_TYPE = "([^\\s\\(]+)(?:\\s*\\((\\d+)(?:\\s*,\\s*(\\d+))?\\))?"; + private static final String PARAMETER = "(" + INOUT + PARAM_NAME + PARAM_TYPE + ")"; + + protected static final Pattern PARAMETER_PATTERN = Pattern.compile(PARAMETER); + protected static final Pattern TYPE_PATTERN = Pattern.compile(PARAM_TYPE); + + protected List inParameters; + protected List outParameters; + protected ParameterDefinition returnValue; + protected List allParameters; + + private final PackageDefinition pkg; + + public AbstractRoutineDefinition(SchemaDefinition schema, PackageDefinition pkg, String name, String comment, String overload) { + super(schema.getDatabase(), schema, name, comment, overload); + + this.pkg = pkg; + } + + @Override + public List getDefinitionPath() { + if (pkg != null) { + return Arrays.asList(getSchema(), pkg, this); + } + else { + return Arrays.asList(getSchema(), this); + } + } + + private void init() { + inParameters = new ArrayList(); + outParameters = new ArrayList(); + allParameters = new ArrayList(); + + try { + if (returnValue != null) { + addParameter(InOutDefinition.RETURN, returnValue); + } + + init0(); + } + catch (SQLException e) { + log.error("Error while initialising routine", e); + } + } + + protected abstract void init0() throws SQLException; + + @Override + public final PackageDefinition getPackage() { + return pkg; + } + + @Override + public final List getInParameters() { + if (inParameters == null) { + init(); + } + + return inParameters; + } + + @Override + public final List getOutParameters() { + if (outParameters == null) { + init(); + } + + return outParameters; + } + + @Override + public final List getAllParameters() { + if (allParameters == null) { + init(); + } + + return allParameters; + } + + @Override + public final ParameterDefinition getReturnValue() { + if (allParameters == null) { + init(); + } + + return returnValue; + } + + @Override + public final DataTypeDefinition getReturnType() { + if (getReturnValue() != null) { + return getReturnValue().getType(); + } + else { + return new DefaultDataTypeDefinition(getDatabase(), getSchema(), "unknown", 0, 0, 0); + } + } + + @Override + public final boolean isSQLUsable() { + return getReturnValue() != null && getOutParameters().isEmpty(); + } + + protected final void addParameter(InOutDefinition inOut, ParameterDefinition parameter) { + allParameters.add(parameter); + + switch (inOut) { + case IN: + inParameters.add(parameter); + break; + case OUT: + outParameters.add(parameter); + break; + case INOUT: + inParameters.add(parameter); + outParameters.add(parameter); + break; + case RETURN: + returnValue = parameter; + break; + } + } +} diff --git a/jOOQ-meta/src/main/java/org/jooq/util/AbstractTableDefinition.java b/jOOQ-meta/src/main/java/org/jooq/util/AbstractTableDefinition.java new file mode 100644 index 00000000000..2575dd780b4 --- /dev/null +++ b/jOOQ-meta/src/main/java/org/jooq/util/AbstractTableDefinition.java @@ -0,0 +1,157 @@ +/** + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com + * All rights reserved. + * + * This software is licensed to you under the Apache License, Version 2.0 + * (the "License"); You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * 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 "jOOQ" 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 COPYRIGHT OWNER 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. + */ + +package org.jooq.util; + +import static org.jooq.impl.Factory.table; + +import java.sql.SQLException; +import java.util.List; + +import org.jooq.Record; +import org.jooq.Table; + +/** + * A base implementation for table definitions. + * + * @author Lukas Eder + */ +public abstract class AbstractTableDefinition +extends AbstractElementContainerDefinition +implements TableDefinition { + + private List uniqueKeys; + private List foreignKeys; + private boolean mainUniqueKeyLoaded; + private UniqueKeyDefinition mainUniqueKey; + private boolean identityLoaded; + private ColumnDefinition identity; + + public AbstractTableDefinition(SchemaDefinition schema, String name, String comment) { + super(schema, name, comment); + } + + @Override + public final UniqueKeyDefinition getMainUniqueKey() { + if (!mainUniqueKeyLoaded) { + mainUniqueKeyLoaded = true; + + // Try finding a primary key first + for (ColumnDefinition column : getColumns()) { + if (column.getPrimaryKey() != null) { + mainUniqueKey = column.getPrimaryKey(); + return mainUniqueKey; + } + } + + // Find best matching unique key. Matching algorithm: + // 1. Prefer single-column indexes + // 2. Prefer scalar-type indexes + for (ColumnDefinition column : getColumns()) { + for (UniqueKeyDefinition uniqueKey : column.getUniqueKeys()) { + mainUniqueKey = uniqueKey; + return mainUniqueKey; + } + } + } + + return mainUniqueKey; + } + + @Override + public final List getUniqueKeys() { + if (uniqueKeys == null) { + uniqueKeys = getDatabase().getRelations().getUniqueKeys(this); + } + + return uniqueKeys; + } + + @Override + public final List getForeignKeys() { + if (foreignKeys == null) { + foreignKeys = getDatabase().getRelations().getForeignKeys(this); + } + + return foreignKeys; + } + + @Override + public final ColumnDefinition getIdentity() { + if (!identityLoaded) { + identityLoaded = true; + + for (ColumnDefinition column : getColumns()) { + if (column.isIdentity()) { + identity = column; + break; + } + } + } + + return identity; + } + + @Override + public final Table getTable() { + return table(getQualifiedName()); + } + + @Override + public final List getColumns() { + return getElements(); + } + + @Override + public final ColumnDefinition getColumn(String columnName) { + return getElement(columnName); + } + + @Override + public final ColumnDefinition getColumn(String columnName, boolean ignoreCase) { + return getElement(columnName, ignoreCase); + } + + @Override + protected List getElements0() throws SQLException { + return null; + } + + @Override + public final ColumnDefinition getColumn(int columnIndex) { + return getElement(columnIndex); + } +} diff --git a/jOOQ-meta/src/main/java/org/jooq/util/AbstractTypedElementDefinition.java b/jOOQ-meta/src/main/java/org/jooq/util/AbstractTypedElementDefinition.java new file mode 100644 index 00000000000..05e538e99d1 --- /dev/null +++ b/jOOQ-meta/src/main/java/org/jooq/util/AbstractTypedElementDefinition.java @@ -0,0 +1,149 @@ +/** + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com + * All rights reserved. + * + * This software is licensed to you under the Apache License, Version 2.0 + * (the "License"); You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * 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 "jOOQ" 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 COPYRIGHT OWNER 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. + */ +package org.jooq.util; + +import static org.jooq.impl.FieldTypeHelper.getDialectDataType; + +import java.sql.Types; +import java.util.ArrayList; +import java.util.List; + +import org.jooq.DataType; +import org.jooq.exception.SQLDialectNotSupportedException; +import org.jooq.impl.SQLDataType; +import org.jooq.tools.JooqLogger; +import org.jooq.util.jaxb.ForcedType; + +abstract class AbstractTypedElementDefinition + extends AbstractDefinition + implements TypedElementDefinition { + + private static final JooqLogger log = JooqLogger.getLogger(AbstractTypedElementDefinition.class); + + private final T container; + private final DataTypeDefinition definedType; + private transient DataTypeDefinition type; + + public AbstractTypedElementDefinition(T container, String name, int position, DataTypeDefinition definedType, String comment) { + super(container.getDatabase(), + container.getSchema(), + protectName(container.getName(), name, position), + comment); + + this.container = container; + this.definedType = definedType; + } + + private static String protectName(String table, String name, int position) { + if (name == null) { + log.warn("Missing name", "Object " + table + " holds a column without a name at position " + position); + return "_" + position; + } + + return name; + } + + @Override + public final T getContainer() { + return container; + } + + @Override + public List getDefinitionPath() { + List result = new ArrayList(); + + result.addAll(getContainer().getDefinitionPath()); + result.add(this); + + return result; + } + + @Override + public DataTypeDefinition getType() { + if (type == null) { + Database db = container.getDatabase(); + + // [#677] Forced types for matching regular expressions + ForcedType forcedType = db.getConfiguredForcedType(this); + if (forcedType != null) { + log.debug("Forcing type", this + " into " + forcedType.getName()); + DataType forcedDataType = null; + + String t = definedType.getType(); + int l = definedType.getLength(); + int p = definedType.getPrecision(); + int s = definedType.getScale(); + + try { + forcedDataType = getDialectDataType(db.getDialect(), forcedType.getName(), p, s); + } catch (SQLDialectNotSupportedException ignore) {} + + // [#677] SQLDataType matches are actual type-rewrites + if (forcedDataType != null) { + type = new DefaultDataTypeDefinition(db, getSchema(), forcedType.getName(), l, p, s); + } + + // Other forced types are UDT's, enums, etc. + else { + type = new DefaultDataTypeDefinition(db, getSchema(), t, l, p, s, forcedType.getName()); + } + } + + // [#976] Mapping DATE as TIMESTAMP + if (db.dateAsTimestamp()) { + DataType dataType = null; + + try { + dataType = getDialectDataType(db.getDialect(), definedType.getType(), 0, 0); + } catch (SQLDialectNotSupportedException ignore) {} + + if (dataType != null) { + if (dataType.getSQLType() == Types.DATE) { + DataType forcedDataType = getDialectDataType(db.getDialect(), SQLDataType.TIMESTAMP.getTypeName(), 0, 0); + type = new DefaultDataTypeDefinition(db, getSchema(), forcedDataType.getTypeName(), 0, 0, 0); + } + } + } + + // If not yet set, use the default defined type + if (type == null) { + type = definedType; + } + } + + return type; + } +} diff --git a/jOOQ-meta/src/main/java/org/jooq/util/AbstractUDTDefinition.java b/jOOQ-meta/src/main/java/org/jooq/util/AbstractUDTDefinition.java new file mode 100644 index 00000000000..792de45e3c4 --- /dev/null +++ b/jOOQ-meta/src/main/java/org/jooq/util/AbstractUDTDefinition.java @@ -0,0 +1,82 @@ +/** + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com + * All rights reserved. + * + * This software is licensed to you under the Apache License, Version 2.0 + * (the "License"); You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * 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 "jOOQ" 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 COPYRIGHT OWNER 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. + */ +package org.jooq.util; + +import java.util.List; + +/** + * Abstract base implementation for {@link UDTDefinition}'s + * + * @author Lukas Eder + */ +public abstract class AbstractUDTDefinition +extends + AbstractElementContainerDefinition +implements + UDTDefinition { + + private List routines; + + public AbstractUDTDefinition(SchemaDefinition schema, String name, String comment) { + super(schema, name, comment); + } + + @Override + public final List getAttributes() { + return getElements(); + } + + @Override + public final AttributeDefinition getAttribute(String attributeName) { + return getElement(attributeName); + } + + @Override + public final AttributeDefinition getAttribute(int attributeIndex) { + return getElement(attributeIndex); + } + + @Override + public final List getRoutines() { + if (routines == null) { + routines = getRoutines0(); + } + + return routines; + } + + protected abstract List getRoutines0(); +} diff --git a/jOOQ-meta/src/main/java/org/jooq/util/ArrayDefinition.java b/jOOQ-meta/src/main/java/org/jooq/util/ArrayDefinition.java new file mode 100644 index 00000000000..3562e930caf --- /dev/null +++ b/jOOQ-meta/src/main/java/org/jooq/util/ArrayDefinition.java @@ -0,0 +1,51 @@ +/** + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com + * All rights reserved. + * + * This software is licensed to you under the Apache License, Version 2.0 + * (the "License"); You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * 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 "jOOQ" 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 COPYRIGHT OWNER 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. + */ +package org.jooq.util; + + +/** + * A definition for an ARRAY type + * + * @author Lukas Eder + */ +public interface ArrayDefinition extends Definition { + + /** + * @return The type of the ARRAY's elements + */ + DataTypeDefinition getElementType(); + +} diff --git a/jOOQ-meta/src/main/java/org/jooq/util/AttributeDefinition.java b/jOOQ-meta/src/main/java/org/jooq/util/AttributeDefinition.java new file mode 100644 index 00000000000..9ba099b0824 --- /dev/null +++ b/jOOQ-meta/src/main/java/org/jooq/util/AttributeDefinition.java @@ -0,0 +1,46 @@ +/** + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com + * All rights reserved. + * + * This software is licensed to you under the Apache License, Version 2.0 + * (the "License"); You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * 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 "jOOQ" 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 COPYRIGHT OWNER 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. + */ +package org.jooq.util; + +/** + * An attribute in a {@link UDTDefinition} + * + * @author Lukas Eder + */ +public interface AttributeDefinition extends TypedElementDefinition { + + +} diff --git a/jOOQ-meta/src/main/java/org/jooq/util/ColumnDefinition.java b/jOOQ-meta/src/main/java/org/jooq/util/ColumnDefinition.java new file mode 100644 index 00000000000..cef012292b7 --- /dev/null +++ b/jOOQ-meta/src/main/java/org/jooq/util/ColumnDefinition.java @@ -0,0 +1,79 @@ +/** + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com + * All rights reserved. + * + * This software is licensed to you under the Apache License, Version 2.0 + * (the "License"); You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * 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 "jOOQ" 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 COPYRIGHT OWNER 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. + */ + +package org.jooq.util; + +import java.util.List; + +/** + * An interface defining a column of a table + * + * @author Lukas Eder + */ +public interface ColumnDefinition extends TypedElementDefinition { + + /** + * The column position in the table + */ + int getPosition(); + + /** + * A definition for the primary key that this column is part of, or + * null if this column is not part of a primary key. + */ + UniqueKeyDefinition getPrimaryKey(); + + /** + * All definitions of unique keys that this column is part of. + */ + List getUniqueKeys(); + + /** + * A definition for the foreign key that this column is part of, or + * null if this column is not part of a foreign key. + */ + ForeignKeyDefinition getForeignKey(); + + /** + * Whether this column is the table's IDENTITY column. + */ + boolean isIdentity(); + + /** + * Whether the column is nullable + */ + boolean isNullable(); +} diff --git a/jOOQ-meta/src/main/java/org/jooq/util/DataTypeDefinition.java b/jOOQ-meta/src/main/java/org/jooq/util/DataTypeDefinition.java new file mode 100644 index 00000000000..2e0104072c0 --- /dev/null +++ b/jOOQ-meta/src/main/java/org/jooq/util/DataTypeDefinition.java @@ -0,0 +1,91 @@ +/** + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com + * All rights reserved. + * + * This software is licensed to you under the Apache License, Version 2.0 + * (the "License"); You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * 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 "jOOQ" 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 COPYRIGHT OWNER 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. + */ +package org.jooq.util; + + +/** + * A definition for a data type object + * + * @author Lukas Eder + */ +public interface DataTypeDefinition { + + /** + * The dialect-specific column type + */ + String getType(); + + /** + * The type's length + */ + int getLength(); + + /** + * The type's precision + */ + int getPrecision(); + + /** + * The type's scale + */ + int getScale(); + + /** + * The user type, if applicable + */ + String getUserType(); + + /** + * Whether this data type represents a udt + */ + boolean isUDT(); + + /** + * Whether this data type is a NUMBER type without precision and scale + */ + boolean isGenericNumberType(); + + /** + * The underlying database + */ + Database getDatabase(); + + /** + * The underlying schema + */ + SchemaDefinition getSchema(); + +} diff --git a/jOOQ-meta/src/main/java/org/jooq/util/Database.java b/jOOQ-meta/src/main/java/org/jooq/util/Database.java new file mode 100644 index 00000000000..39f0dddb54b --- /dev/null +++ b/jOOQ-meta/src/main/java/org/jooq/util/Database.java @@ -0,0 +1,308 @@ +/** + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com + * All rights reserved. + * + * This software is licensed to you under the Apache License, Version 2.0 + * (the "License"); You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * 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 "jOOQ" 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 COPYRIGHT OWNER 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. + */ + +package org.jooq.util; + +import java.sql.Connection; +import java.util.List; + +import org.jooq.SQLDialect; +import org.jooq.impl.Factory; +import org.jooq.util.jaxb.CustomType; +import org.jooq.util.jaxb.EnumType; +import org.jooq.util.jaxb.ForcedType; +import org.jooq.util.jaxb.MasterDataTable; +import org.jooq.util.jaxb.Schema; + +/** + * A general database model. + * + * @author Lukas Eder + */ +public interface Database { + + /** + * The schemata generated from this database + */ + List getSchemata(); + + /** + * Get a schema defined in this database by name + */ + SchemaDefinition getSchema(String name); + + /** + * Retrieve the schema's primary key / foreign key relations + */ + Relations getRelations(); + + /** + * The sequences contained in this database + */ + List getSequences(SchemaDefinition schema); + + /** + * The tables contained in this database + */ + List getTables(SchemaDefinition schema); + + /** + * Get a table in this database by name + */ + TableDefinition getTable(SchemaDefinition schema, String name); + + /** + * Get a table in this database by name + */ + TableDefinition getTable(SchemaDefinition schema, String name, boolean ignoreCase); + + /** + * The master data tables contained in this database (for schema + * {@link #getSchema(String)}) + */ + List getMasterDataTables(SchemaDefinition schema); + + /** + * Get a master data table in this database by name + */ + MasterDataTableDefinition getMasterDataTable(SchemaDefinition schema, String name); + + /** + * Get a master data table in this database by name + */ + MasterDataTableDefinition getMasterDataTable(SchemaDefinition schema, String name, boolean ignoreCase); + + /** + * The enum UDTs defined in this database + */ + List getEnums(SchemaDefinition schema); + + /** + * Get an enum UDT defined in this database by name + */ + EnumDefinition getEnum(SchemaDefinition schema, String name); + + /** + * Get an enum UDT defined in this database by name + */ + EnumDefinition getEnum(SchemaDefinition schema, String name, boolean ignoreCase); + + /** + * The UDTs defined in this database + */ + List getUDTs(SchemaDefinition schema); + + /** + * Get a UDT defined in this database by name + */ + UDTDefinition getUDT(SchemaDefinition schema, String name); + + /** + * Get a UDT defined in this database by name + */ + UDTDefinition getUDT(SchemaDefinition schema, String name, boolean ignoreCase); + + /** + * The Arrays defined in this database + */ + List getArrays(SchemaDefinition schema); + + /** + * Get a ARRAY defined in this database by name + */ + ArrayDefinition getArray(SchemaDefinition schema, String name); + + /** + * Get a ARRAY defined in this database by name + */ + ArrayDefinition getArray(SchemaDefinition schema, String name, boolean ignoreCase); + + /** + * The stored routines (procedures and functions) contained in this database + */ + List getRoutines(SchemaDefinition schema); + + /** + * The packages contained in this database + */ + List getPackages(SchemaDefinition schema); + + /** + * Initialise a connection to this database + */ + void setConnection(Connection connection); + + /** + * The database connection + */ + Connection getConnection(); + + /** + * The input schemata are the schemata that jooq-meta is reading data from + */ + List getInputSchemata(); + + /** + * The output schema is the schema used by jooq-codegen in class names + * + * @deprecated - 2.0.5 - This will be implemented in each {@link Definition#getOutputName()} + */ + @Deprecated + String getOutputSchema(String inputSchema); + + /** + * The input and output schemata + */ + void setConfiguredSchemata(List schemata); + + /** + * Only database objects matching any of these regular expressions will be + * generated. + */ + void setIncludes(String[] includes); + + /** + * Only database objects matching any of these regular expressions will be + * generated. + */ + String[] getIncludes(); + + /** + * Database objects matching any of these table names will be generated as + * master data tables. + */ + void setConfiguredMasterDataTables(List tables); + + /** + * Database objects matching any of these table names will be generated as + * master data tables. + */ + List getConfiguredMasterDataTables(); + + /** + * Database objects matching any of these field names will be generated as + * custom types + */ + void setConfiguredCustomTypes(List types); + + /** + * Database objects matching any of these field names will be generated as + * custom types + */ + List getConfiguredCustomTypes(); + + /** + * Get a specific configured custom type by its name + */ + CustomType getConfiguredCustomType(String name); + + /** + * Database objects matching any of these field names will be generated as + * enum types + */ + void setConfiguredEnumTypes(List types); + + /** + * Database objects matching any of these field names will be generated as + * enum types + */ + List getConfiguredEnumTypes(); + + /** + * Database objects matching any of these field names will be generated as + * forced types + */ + void setConfiguredForcedTypes(List types); + + /** + * Database objects matching any of these field names will be generated as + * forced types + */ + List getConfiguredForcedTypes(); + + /** + * Get the configured forced type object for any given {@link Definition}, + * or null if no {@link ForcedType} matches the definition. + */ + ForcedType getConfiguredForcedType(Definition definition); + + /** + * Database objects matching any of these regular expressions will not be + * generated. + */ + void setExcludes(String[] excludes); + + /** + * Database objects matching any of these regular expressions will not be + * generated. + */ + String[] getExcludes(); + + /** + * Get the dialect for this database + */ + SQLDialect getDialect(); + + /** + * Create the factory for this database + */ + Factory create(); + + /** + * Check whether a type is an array type + */ + boolean isArrayType(String dataType); + + /** + * Whether this database supports unsigned types + */ + void setSupportsUnsignedTypes(boolean supportsUnsignedTypes); + + /** + * Whether this database supports unsigned types + */ + boolean supportsUnsignedTypes(); + + /** + * Whether DATE columns should be treated as TIMESTAMP columns + */ + void setDateAsTimestamp(boolean dateAsTimestamp); + + /** + * Whether DATE columns should be treated as TIMESTAMP columns + */ + boolean dateAsTimestamp(); +} diff --git a/jOOQ-meta/src/main/java/org/jooq/util/DefaultArrayDefinition.java b/jOOQ-meta/src/main/java/org/jooq/util/DefaultArrayDefinition.java new file mode 100644 index 00000000000..332b1ac0336 --- /dev/null +++ b/jOOQ-meta/src/main/java/org/jooq/util/DefaultArrayDefinition.java @@ -0,0 +1,61 @@ +/** + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com + * All rights reserved. + * + * This software is licensed to you under the Apache License, Version 2.0 + * (the "License"); You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * 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 "jOOQ" 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 COPYRIGHT OWNER 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. + */ +package org.jooq.util; + +import java.util.Arrays; +import java.util.List; + + +public class DefaultArrayDefinition extends AbstractDefinition implements ArrayDefinition { + + private final DataTypeDefinition type; + + public DefaultArrayDefinition(SchemaDefinition schema, String name, DataTypeDefinition type) { + super(schema.getDatabase(), schema, name, ""); + + this.type = type; + } + + @Override + public List getDefinitionPath() { + return Arrays.asList(getSchema(), this); + } + + @Override + public DataTypeDefinition getElementType() { + return type; + } +} diff --git a/jOOQ-meta/src/main/java/org/jooq/util/DefaultAttributeDefinition.java b/jOOQ-meta/src/main/java/org/jooq/util/DefaultAttributeDefinition.java new file mode 100644 index 00000000000..cce2f94ba81 --- /dev/null +++ b/jOOQ-meta/src/main/java/org/jooq/util/DefaultAttributeDefinition.java @@ -0,0 +1,51 @@ +/** + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com + * All rights reserved. + * + * This software is licensed to you under the Apache License, Version 2.0 + * (the "License"); You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * 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 "jOOQ" 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 COPYRIGHT OWNER 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. + */ + +package org.jooq.util; + + + +/** + * A base implementation for column definitions. + * + * @author Lukas Eder + */ +public class DefaultAttributeDefinition extends AbstractTypedElementDefinition implements AttributeDefinition { + + public DefaultAttributeDefinition(UDTDefinition udt, String name, int position, DataTypeDefinition type) { + super(udt, name, position, type, null); + } +} diff --git a/jOOQ-meta/src/main/java/org/jooq/util/DefaultColumnDefinition.java b/jOOQ-meta/src/main/java/org/jooq/util/DefaultColumnDefinition.java new file mode 100644 index 00000000000..4d99f8168a0 --- /dev/null +++ b/jOOQ-meta/src/main/java/org/jooq/util/DefaultColumnDefinition.java @@ -0,0 +1,150 @@ +/** + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com + * All rights reserved. + * + * This software is licensed to you under the Apache License, Version 2.0 + * (the "License"); You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * 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 "jOOQ" 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 COPYRIGHT OWNER 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. + */ + +package org.jooq.util; + +import java.util.List; + +/** + * A base implementation for column definitions. + * + * @author Lukas Eder + */ +public class DefaultColumnDefinition + extends AbstractTypedElementDefinition + implements ColumnDefinition { + + private final int position; + private final DataTypeDefinition underlying; + private final boolean isIdentity; + private final boolean nullable; + + private DataTypeDefinition type; + private boolean primaryKeyLoaded; + private UniqueKeyDefinition primaryKey; + private List uniqueKeys; + private boolean foreignKeyLoaded; + private ForeignKeyDefinition foreignKey; + + /** + * @deprecated - 2.1.0 - Use the other constructor instead + */ + @Deprecated + public DefaultColumnDefinition(TableDefinition table, String name, int position, DataTypeDefinition type, + boolean isIdentity, String comment) { + this(table, name, position, type, true, isIdentity, comment); + } + + public DefaultColumnDefinition(TableDefinition table, String name, int position, DataTypeDefinition type, + boolean nullable, boolean isIdentity, String comment) { + + super(table, name, position, type, comment); + + this.position = position; + this.underlying = type; + this.isIdentity = isIdentity; + this.nullable = nullable; + } + + @Override + public final int getPosition() { + return position; + } + + @Override + public final DataTypeDefinition getType() { + + // Lazy initialise + if (type == null) { + ForeignKeyDefinition fk = getDatabase().getRelations().getForeignKey(this); + + // If this is a foreign key to a master data type + if (fk != null) { + TableDefinition referencedTable = fk.getReferencedTable(); + + if (referencedTable instanceof MasterDataTableDefinition) { + type = new MasterDataTypeDefinition(referencedTable, underlying); + } + } + + // Else... + if (type == null) { + type = super.getType(); + } + } + + return type; + } + + @Override + public final UniqueKeyDefinition getPrimaryKey() { + if (!primaryKeyLoaded) { + primaryKeyLoaded = true; + primaryKey = getDatabase().getRelations().getPrimaryKey(this); + } + + return primaryKey; + } + + @Override + public List getUniqueKeys() { + if (uniqueKeys == null) { + uniqueKeys = getDatabase().getRelations().getUniqueKeys(this); + } + + return uniqueKeys; + } + + @Override + public final ForeignKeyDefinition getForeignKey() { + if (!foreignKeyLoaded) { + foreignKeyLoaded = true; + foreignKey = getDatabase().getRelations().getForeignKey(this); + } + + return foreignKey; + } + + @Override + public final boolean isIdentity() { + return isIdentity; + } + + @Override + public final boolean isNullable() { + return nullable; + } +} diff --git a/jOOQ-meta/src/main/java/org/jooq/util/DefaultDataTypeDefinition.java b/jOOQ-meta/src/main/java/org/jooq/util/DefaultDataTypeDefinition.java new file mode 100644 index 00000000000..12247103951 --- /dev/null +++ b/jOOQ-meta/src/main/java/org/jooq/util/DefaultDataTypeDefinition.java @@ -0,0 +1,183 @@ +/** + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com + * All rights reserved. + * + * This software is licensed to you under the Apache License, Version 2.0 + * (the "License"); You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * 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 "jOOQ" 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 COPYRIGHT OWNER 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. + */ +package org.jooq.util; + + +import static org.jooq.impl.FieldTypeHelper.normalise; + +import org.jooq.SQLDialect; +import org.jooq.util.oracle.OracleDataType; + + +/** + * @author Lukas Eder + */ +public class DefaultDataTypeDefinition implements DataTypeDefinition { + + private final Database database; + private final SchemaDefinition schema; + private final String typeName; + private final String udtName; + private final int length; + private final int precision; + private final int scale; + + public DefaultDataTypeDefinition(Database database, SchemaDefinition schema, String typeName, Number length, Number precision, Number scale) { + this(database, schema, typeName, length, precision, scale, typeName); + } + + public DefaultDataTypeDefinition(Database database, SchemaDefinition schema, String typeName, Number length, Number precision, Number scale, String udtName) { + this.database = database; + this.schema = schema; + this.typeName = typeName; + this.udtName = udtName; + + // Some dialects do not distinguish between length and precision... + if (length != null && precision != null && length.intValue() != 0 && precision.intValue() != 0) { + + // [#650] TODO Use the central type registry to find the right + // data type instead of pattern matching + if (typeName.toLowerCase().matches(".*?(char|text|lob|xml|graphic).*?")) { + precision = null; + scale = null; + } + else { + length = null; + } + } + + this.length = length == null ? 0 : length.intValue(); + this.precision = precision == null ? 0 : precision.intValue(); + this.scale = scale == null ? 0 : scale.intValue(); + } + + @Override + public final Database getDatabase() { + return database; + } + + @Override + public final SchemaDefinition getSchema() { + return schema; + } + + private final SQLDialect getDialect() { + return getDatabase().getDialect(); + } + + @Override + public final boolean isUDT() { + return getDatabase().getUDT(schema, udtName) != null; + } + + @Override + public final String getType() { + return typeName; + } + + @Override + public final int getLength() { + return length; + } + + @Override + public final int getPrecision() { + return precision; + } + + @Override + public final int getScale() { + return scale; + } + + @Override + public final String getUserType() { + return udtName; + } + + @Override + public final boolean isGenericNumberType() { + switch (getDialect()) { + case ORACLE: { + return (OracleDataType.NUMBER.getTypeName().equalsIgnoreCase(typeName) + && precision == 0 + && scale == 0); + } + } + + return false; + } + + @Override + public int hashCode() { + final int prime = 31; + int result = 1; + result = prime * result + ((typeName == null) ? 0 : typeName.hashCode()); + result = prime * result + ((udtName == null) ? 0 : udtName.hashCode()); + return result; + } + + @Override + public boolean equals(Object obj) { + if (obj instanceof DefaultDataTypeDefinition) { + DefaultDataTypeDefinition other = (DefaultDataTypeDefinition) obj; + + if (normalise(typeName).equals(normalise(other.typeName)) && + normalise(udtName).equals(normalise(other.udtName))) { + return true; + } + } + + return false; + } + + @Override + public final String toString() { + StringBuilder sb = new StringBuilder(); + + sb.append("DataType [ t="); + sb.append(typeName); + sb.append("; p="); + sb.append(precision); + sb.append("; s="); + sb.append(scale); + sb.append("; u="); + sb.append(udtName); + sb.append(" ]"); + + return sb.toString(); + } +} diff --git a/jOOQ-meta/src/main/java/org/jooq/util/DefaultEnumDefinition.java b/jOOQ-meta/src/main/java/org/jooq/util/DefaultEnumDefinition.java new file mode 100644 index 00000000000..e48d8eef565 --- /dev/null +++ b/jOOQ-meta/src/main/java/org/jooq/util/DefaultEnumDefinition.java @@ -0,0 +1,80 @@ +/** + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com + * All rights reserved. + * + * This software is licensed to you under the Apache License, Version 2.0 + * (the "License"); You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * 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 "jOOQ" 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 COPYRIGHT OWNER 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. + */ +package org.jooq.util; + +import java.util.ArrayList; +import java.util.Arrays; +import java.util.List; + +public class DefaultEnumDefinition extends AbstractDefinition implements EnumDefinition { + + private final List literals; + private final boolean isSynthetic; + + public DefaultEnumDefinition(SchemaDefinition schema, String name, String comment) { + this(schema, name, comment, false); + } + + public DefaultEnumDefinition(SchemaDefinition schema, String name, String comment, boolean isSynthetic) { + super(schema.getDatabase(), schema, name, comment); + + this.literals = new ArrayList(); + this.isSynthetic = isSynthetic; + } + + @Override + public List getDefinitionPath() { + return Arrays.asList(getSchema(), this); + } + + public void addLiteral(String literal) { + literals.add(literal); + } + + public void addLiterals(String... literal) { + literals.addAll(Arrays.asList(literal)); + } + + @Override + public List getLiterals() { + return literals; + } + + @Override + public boolean isSynthetic() { + return isSynthetic; + } +} diff --git a/jOOQ-meta/src/main/java/org/jooq/util/DefaultForeignKeyDefinition.java b/jOOQ-meta/src/main/java/org/jooq/util/DefaultForeignKeyDefinition.java new file mode 100644 index 00000000000..375696eac2c --- /dev/null +++ b/jOOQ-meta/src/main/java/org/jooq/util/DefaultForeignKeyDefinition.java @@ -0,0 +1,106 @@ +/** + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com + * All rights reserved. + * + * This software is licensed to you under the Apache License, Version 2.0 + * (the "License"); You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * 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 "jOOQ" 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 COPYRIGHT OWNER 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. + */ +package org.jooq.util; + +import java.util.ArrayList; +import java.util.Arrays; +import java.util.HashSet; +import java.util.List; +import java.util.Set; + +public class DefaultForeignKeyDefinition extends AbstractDefinition implements ForeignKeyDefinition { + + private final List keyColumns; + private final TableDefinition table; + private final UniqueKeyDefinition uniqueKey; + + public DefaultForeignKeyDefinition(SchemaDefinition schema, String name, TableDefinition table, + UniqueKeyDefinition uniqueKey) { + + super(schema.getDatabase(), schema, name, null); + + this.keyColumns = new ArrayList(); + this.table = table; + this.uniqueKey = uniqueKey; + } + + @Override + public List getDefinitionPath() { + return Arrays.asList(getSchema(), this); + } + + @Override + public TableDefinition getKeyTable() { + return table; + } + + @Override + public List getKeyColumns() { + return keyColumns; + } + + @Override + public UniqueKeyDefinition getReferencedKey() { + return uniqueKey; + } + + @Override + public TableDefinition getReferencedTable() { + return uniqueKey.getTable(); + } + + @Override + public List getReferencedColumns() { + return uniqueKey.getKeyColumns(); + } + + @Override + public int countSimilarReferences() { + Set keys = new HashSet(); + + for (ColumnDefinition column : table.getColumns()) { + ForeignKeyDefinition key = getDatabase().getRelations().getForeignKey(column); + + if (key != null) { + if (key.getReferencedTable().equals(getReferencedTable())) { + keys.add(key.getName()); + } + } + } + + return keys.size(); + } +} diff --git a/jOOQ-meta/src/main/java/org/jooq/util/DefaultMasterDataTableDefinition.java b/jOOQ-meta/src/main/java/org/jooq/util/DefaultMasterDataTableDefinition.java new file mode 100644 index 00000000000..8d98c4a4524 --- /dev/null +++ b/jOOQ-meta/src/main/java/org/jooq/util/DefaultMasterDataTableDefinition.java @@ -0,0 +1,175 @@ +/** + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com + * All rights reserved. + * + * This software is licensed to you under the Apache License, Version 2.0 + * (the "License"); You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * 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 "jOOQ" 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 COPYRIGHT OWNER 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. + */ +package org.jooq.util; + +import static org.jooq.impl.Factory.field; + +import java.util.Arrays; +import java.util.List; + +import org.jooq.Record; +import org.jooq.Result; +import org.jooq.Table; +import org.jooq.exception.DataAccessException; +import org.jooq.tools.JooqLogger; +import org.jooq.util.jaxb.MasterDataTable; + +public class DefaultMasterDataTableDefinition extends AbstractDefinition implements MasterDataTableDefinition { + + private static final JooqLogger log = JooqLogger.getLogger(DefaultMasterDataTableDefinition.class); + + private final TableDefinition delegate; + private Result data; + private boolean dataFetched; + + public DefaultMasterDataTableDefinition(TableDefinition delegate) { + super(delegate.getDatabase(), delegate.getSchema(), delegate.getName(), delegate.getComment()); + + this.delegate = delegate; + } + + @Override + public List getDefinitionPath() { + return Arrays.asList(getSchema(), this); + } + + @Override + public ColumnDefinition getPrimaryKeyColumn() { + for (ColumnDefinition column : getColumns()) { + if (getDatabase().getRelations().getPrimaryKey(column) != null) { + return column; + } + } + + return null; + } + + @Override + public ColumnDefinition getLiteralColumn() { + String columnName = getConfiguredMasterDataTable().getLiteral(); + + if (columnName == null) { + columnName = getPrimaryKeyColumn().getName(); + } + + return getColumn(columnName); + } + + @Override + public ColumnDefinition getDescriptionColumn() { + String columnName = getConfiguredMasterDataTable().getDescription(); + + if (columnName == null) { + columnName = getLiteralColumn().getName(); + } + + return getColumn(columnName); + } + + private final MasterDataTable getConfiguredMasterDataTable() { + for (MasterDataTable table : getDatabase().getConfiguredMasterDataTables()) { + if (table.getName().equals(getName())) { + return table; + } + } + + return null; + } + + @Override + public Result getData() { + if (!dataFetched) { + dataFetched = true; + + try { + data = create().select() + .from(delegate.getTable()) + .orderBy(field(getPrimaryKeyColumn().getName())) + .fetch(); + } + catch (DataAccessException e) { + log.error("Error while initialising master data", e); + } + } + + return data; + } + + @Override + public UniqueKeyDefinition getMainUniqueKey() { + return delegate.getMainUniqueKey(); + } + + @Override + public List getUniqueKeys() { + return delegate.getUniqueKeys(); + } + + @Override + public List getForeignKeys() { + return delegate.getForeignKeys(); + } + + @Override + public ColumnDefinition getIdentity() { + return delegate.getIdentity(); + } + + @Override + public List getColumns() { + return delegate.getColumns(); + } + + @Override + public ColumnDefinition getColumn(String columnName) { + return delegate.getColumn(columnName); + } + + @Override + public ColumnDefinition getColumn(String columnName, boolean ignoreCase) { + return delegate.getColumn(columnName, ignoreCase); + } + + @Override + public ColumnDefinition getColumn(int columnIndex) { + return delegate.getColumn(columnIndex); + } + + @Override + public Table getTable() { + return delegate.getTable(); + } +} diff --git a/jOOQ-meta/src/main/java/org/jooq/util/DefaultParameterDefinition.java b/jOOQ-meta/src/main/java/org/jooq/util/DefaultParameterDefinition.java new file mode 100644 index 00000000000..cae81f2c133 --- /dev/null +++ b/jOOQ-meta/src/main/java/org/jooq/util/DefaultParameterDefinition.java @@ -0,0 +1,65 @@ +/** + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com + * All rights reserved. + * + * This software is licensed to you under the Apache License, Version 2.0 + * (the "License"); You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * 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 "jOOQ" 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 COPYRIGHT OWNER 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. + */ + +package org.jooq.util; + + +/** + * A base implementation for column definitions. + * + * @author Lukas Eder + */ +public class DefaultParameterDefinition + extends AbstractTypedElementDefinition + implements ParameterDefinition { + + private final boolean isDefaulted; + + public DefaultParameterDefinition(RoutineDefinition routine, String name, int position, DataTypeDefinition type) { + this(routine, name, position, type, false); + } + + public DefaultParameterDefinition(RoutineDefinition routine, String name, int position, DataTypeDefinition type, boolean isDefaulted) { + super(routine, name, position, type, null); + + this.isDefaulted = isDefaulted; + } + + @Override + public boolean isDefaulted() { + return isDefaulted; + } +} diff --git a/jOOQ-meta/src/main/java/org/jooq/util/DefaultRelations.java b/jOOQ-meta/src/main/java/org/jooq/util/DefaultRelations.java new file mode 100644 index 00000000000..63a5c0976b0 --- /dev/null +++ b/jOOQ-meta/src/main/java/org/jooq/util/DefaultRelations.java @@ -0,0 +1,259 @@ +/** + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com + * All rights reserved. + * + * This software is licensed to you under the Apache License, Version 2.0 + * (the "License"); You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * 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 "jOOQ" 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 COPYRIGHT OWNER 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. + */ +package org.jooq.util; + +import java.util.ArrayList; +import java.util.LinkedHashMap; +import java.util.LinkedHashSet; +import java.util.List; +import java.util.Map; +import java.util.Set; + +import org.jooq.tools.JooqLogger; + +public class DefaultRelations implements Relations { + + private static final JooqLogger log = JooqLogger.getLogger(DefaultRelations.class); + + private Map foreignKeys = new LinkedHashMap(); + private Map primaryKeys = new LinkedHashMap(); + private Map uniqueKeys = new LinkedHashMap(); + + private Map foreignKeysByColumn = new LinkedHashMap(); + private Map primaryKeysByColumn = new LinkedHashMap(); + private Map> uniqueKeysByColumn = new LinkedHashMap>(); + + public void addPrimaryKey(String keyName, ColumnDefinition column) { + if (log.isDebugEnabled()) { + log.debug("Adding primary key", keyName + " (" + column + ")"); + } + + UniqueKeyDefinition key = getUniqueKey(keyName, column, true); + key.getKeyColumns().add(column); + } + + public void addUniqueKey(String keyName, ColumnDefinition column) { + if (log.isDebugEnabled()) { + log.debug("Adding unique key", keyName + " (" + column + ")"); + } + + UniqueKeyDefinition key = getUniqueKey(keyName, column, false); + key.getKeyColumns().add(column); + } + + private UniqueKeyDefinition getUniqueKey(String keyName, ColumnDefinition column, boolean isPK) { + UniqueKeyDefinition key = uniqueKeys.get(key(column, keyName)); + + if (key == null) { + key = new DefaultUniqueKeyDefinition(column.getSchema(), keyName, column.getContainer()); + uniqueKeys.put(key(column, keyName), key); + + if (isPK) { + primaryKeys.put(key(column, keyName), key); + } + } + + return key; + } + + public void addForeignKey( + String foreignKeyName, + String uniqueKeyName, + ColumnDefinition foreignKeyColumn, + SchemaDefinition uniqueKeySchema) { + + // [#1134] Prevent NPE's when a foreign key references a unique key + // from another schema + if (uniqueKeySchema == null) { + log.warn("Unused foreign key", foreignKeyName + " (" + foreignKeyColumn + ") referencing " + uniqueKeyName + " references a schema out of scope for jooq-meta"); + return; + } + + log.info("Adding foreign key", foreignKeyName + " (" + foreignKeyColumn + ") referencing " + uniqueKeyName); + + ForeignKeyDefinition foreignKey = foreignKeys.get(key(foreignKeyColumn, foreignKeyName)); + + if (foreignKey == null) { + UniqueKeyDefinition uniqueKey = uniqueKeys.get(key(uniqueKeySchema, uniqueKeyName)); + + // If the unique key is not loaded, ignore this foreign key + if (uniqueKey != null) { + foreignKey = new DefaultForeignKeyDefinition(foreignKeyColumn.getSchema(), foreignKeyName, foreignKeyColumn.getContainer(), uniqueKey); + foreignKeys.put(key(foreignKeyColumn, foreignKeyName), foreignKey); + + uniqueKey.getForeignKeys().add(foreignKey); + } + } + + if (foreignKey != null) { + foreignKey.getKeyColumns().add(foreignKeyColumn); + } + } + + @Override + public UniqueKeyDefinition getPrimaryKey(ColumnDefinition column) { + if (!primaryKeysByColumn.containsKey(column)) { + UniqueKeyDefinition key = null; + + for (UniqueKeyDefinition primaryKey : primaryKeys.values()) { + if (primaryKey.getKeyColumns().contains(column)) { + key = primaryKey; + break; + } + } + + primaryKeysByColumn.put(column, key); + } + + return primaryKeysByColumn.get(column); + } + + @Override + public List getUniqueKeys(ColumnDefinition column) { + if (!uniqueKeysByColumn.containsKey(column)) { + List list = new ArrayList(); + + for (UniqueKeyDefinition uniqueKey : uniqueKeys.values()) { + if (uniqueKey.getKeyColumns().contains(column)) { + list.add(uniqueKey); + } + } + + uniqueKeysByColumn.put(column, list); + } + + return uniqueKeysByColumn.get(column); + } + + @Override + public List getUniqueKeys(TableDefinition table) { + Set result = new LinkedHashSet(); + + for (ColumnDefinition column : table.getColumns()) { + result.addAll(getUniqueKeys(column)); + } + + return new ArrayList(result); + } + + @Override + public ForeignKeyDefinition getForeignKey(ColumnDefinition column) { + if (!foreignKeysByColumn.containsKey(column)) { + ForeignKeyDefinition key = null; + + for (ForeignKeyDefinition foreignKey : foreignKeys.values()) { + if (foreignKey.getKeyColumns().contains(column)) { + key = foreignKey; + break; + } + } + + foreignKeysByColumn.put(column, key); + } + + return foreignKeysByColumn.get(column); + } + + @Override + public List getForeignKeys(TableDefinition table) { + Set result = new LinkedHashSet(); + + for (ColumnDefinition column : table.getColumns()) { + ForeignKeyDefinition foreignKey = getForeignKey(column); + + if (foreignKey != null) { + result.add(foreignKey); + } + } + + return new ArrayList(result); + } + + private static Key key(Definition definition, String keyName) { + return new Key(definition.getSchema(), keyName); + } + + /** + * A simple local wrapper for a key definition (schema + key name) + */ + private static class Key { + final SchemaDefinition schema; + final String keyName; + + Key(SchemaDefinition schema, String keyName) { + this.schema = schema; + this.keyName = keyName; + } + + @Override + public String toString() { + return "Key [schema=" + schema + ", keyName=" + keyName + "]"; + } + + @Override + public int hashCode() { + final int prime = 31; + int result = 1; + result = prime * result + ((keyName == null) ? 0 : keyName.hashCode()); + result = prime * result + ((schema == null) ? 0 : schema.hashCode()); + return result; + } + + @Override + public boolean equals(Object obj) { + if (this == obj) + return true; + if (obj == null) + return false; + if (getClass() != obj.getClass()) + return false; + Key other = (Key) obj; + if (keyName == null) { + if (other.keyName != null) + return false; + } + else if (!keyName.equals(other.keyName)) + return false; + if (schema == null) { + if (other.schema != null) + return false; + } + else if (!schema.equals(other.schema)) + return false; + return true; + } + } +} diff --git a/jOOQ-meta/src/main/java/org/jooq/util/DefaultSequenceDefinition.java b/jOOQ-meta/src/main/java/org/jooq/util/DefaultSequenceDefinition.java new file mode 100644 index 00000000000..f0feb571c8f --- /dev/null +++ b/jOOQ-meta/src/main/java/org/jooq/util/DefaultSequenceDefinition.java @@ -0,0 +1,48 @@ +/** + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com + * All rights reserved. + * + * This software is licensed to you under the Apache License, Version 2.0 + * (the "License"); You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * 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 "jOOQ" 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 COPYRIGHT OWNER 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. + */ +package org.jooq.util; + +/** + * @author Lukas Eder + */ +public class DefaultSequenceDefinition + extends AbstractTypedElementDefinition + implements SequenceDefinition { + + public DefaultSequenceDefinition(SchemaDefinition schema, String name, DataTypeDefinition type) { + super(schema, name, -1, type, null); + } +} diff --git a/jOOQ-meta/src/main/java/org/jooq/util/DefaultUniqueKeyDefinition.java b/jOOQ-meta/src/main/java/org/jooq/util/DefaultUniqueKeyDefinition.java new file mode 100644 index 00000000000..d29ff2c47ba --- /dev/null +++ b/jOOQ-meta/src/main/java/org/jooq/util/DefaultUniqueKeyDefinition.java @@ -0,0 +1,75 @@ +/** + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com + * All rights reserved. + * + * This software is licensed to you under the Apache License, Version 2.0 + * (the "License"); You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * 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 "jOOQ" 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 COPYRIGHT OWNER 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. + */ +package org.jooq.util; + +import java.util.ArrayList; +import java.util.Arrays; +import java.util.List; + +public class DefaultUniqueKeyDefinition extends AbstractDefinition implements UniqueKeyDefinition { + + private final List foreignKeys; + private final List keyColumns; + private final TableDefinition table; + + public DefaultUniqueKeyDefinition(SchemaDefinition schema, String name, TableDefinition table) { + super(schema.getDatabase(), schema, name, null); + + this.foreignKeys = new ArrayList(); + this.keyColumns = new ArrayList(); + this.table = table; + } + + @Override + public List getDefinitionPath() { + return Arrays.asList(getSchema(), this); + } + + @Override + public List getKeyColumns() { + return keyColumns; + } + + @Override + public List getForeignKeys() { + return foreignKeys; + } + + @Override + public TableDefinition getTable() { + return table; + } +} diff --git a/jOOQ-meta/src/main/java/org/jooq/util/Definition.java b/jOOQ-meta/src/main/java/org/jooq/util/Definition.java new file mode 100644 index 00000000000..c0aa9838a99 --- /dev/null +++ b/jOOQ-meta/src/main/java/org/jooq/util/Definition.java @@ -0,0 +1,111 @@ +/** + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com + * All rights reserved. + * + * This software is licensed to you under the Apache License, Version 2.0 + * (the "License"); You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * 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 "jOOQ" 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 COPYRIGHT OWNER 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. + */ + +package org.jooq.util; + +import java.util.List; + +/** + * A general interface defining any database object, such as tables, views, + * stored procedures, etc. + * + * @author Lukas Eder + */ +public interface Definition { + + /** + * @return A reference to the Database context + */ + Database getDatabase(); + + /** + * @return The schema of this object + */ + SchemaDefinition getSchema(); + + /** + * @return The name of this object, e.g. [my_table]. This corresponds to + * {@link #getInputName()} + */ + String getName(); + + /** + * @return The name of this object, e.g. [my_table], as defined in the + * source database. + */ + String getInputName(); + + /** + * @return The name of this object, e.g. [my_table], as defined for the + * target database. This may differ from the input name if schema / + * table rewriting is applied. + */ + String getOutputName(); + + /** + * @return The comment of this object + */ + String getComment(); + + /** + * @return A path of definitions for this definition, e.g. + * [schema].[package].[routine].[parameter] + */ + List getDefinitionPath(); + + /** + * @return A qualified name for this object (corresponding to + * {@link #getName()}) + */ + String getQualifiedName(); + + /** + * @return A qualified name for this object (corresponding to + * {@link #getInputName()}) + */ + String getQualifiedInputName(); + + /** + * @return A qualified name for this object (corresponding to + * {@link #getOutputName()}) + */ + String getQualifiedOutputName(); + + /** + * @return The overload suffix if applicable + */ + String getOverload(); +} diff --git a/jOOQ-meta/src/main/java/org/jooq/util/EnumDefinition.java b/jOOQ-meta/src/main/java/org/jooq/util/EnumDefinition.java new file mode 100644 index 00000000000..cde2aefb109 --- /dev/null +++ b/jOOQ-meta/src/main/java/org/jooq/util/EnumDefinition.java @@ -0,0 +1,57 @@ +/** + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com + * All rights reserved. + * + * This software is licensed to you under the Apache License, Version 2.0 + * (the "License"); You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * 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 "jOOQ" 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 COPYRIGHT OWNER 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. + */ +package org.jooq.util; + +import java.util.List; + +/** + * A definition for an ENUM UDT + * + * @author Lukas Eder + */ +public interface EnumDefinition extends Definition { + + /** + * @return The literals defined in this enum + */ + List getLiterals(); + + /** + * @return Whether this enum type is "synthetic", i.e. not defined in the + * database, but in code generation configurations. + */ + boolean isSynthetic(); +} diff --git a/jOOQ-meta/src/main/java/org/jooq/util/ForeignKeyDefinition.java b/jOOQ-meta/src/main/java/org/jooq/util/ForeignKeyDefinition.java new file mode 100644 index 00000000000..4aaff69d06c --- /dev/null +++ b/jOOQ-meta/src/main/java/org/jooq/util/ForeignKeyDefinition.java @@ -0,0 +1,76 @@ +/** + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com + * All rights reserved. + * + * This software is licensed to you under the Apache License, Version 2.0 + * (the "License"); You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * 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 "jOOQ" 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 COPYRIGHT OWNER 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. + */ +package org.jooq.util; + +import java.util.List; + +/** + * An object holding information about a foreign key relationship. + * + * @author Lukas Eder + */ +public interface ForeignKeyDefinition extends Definition { + + /** + * The definition of the referencing table + */ + TableDefinition getKeyTable(); + + /** + * The list of columns making up the foreign key. + */ + List getKeyColumns(); + + /** + * The referenced key. + */ + UniqueKeyDefinition getReferencedKey(); + + /** + * The definition of the referenced table. + */ + TableDefinition getReferencedTable(); + + /** + * The list of columns referenced by this foreign key + */ + List getReferencedColumns(); + + /** + * Count the number of references between referencing and referenced tables. + */ + int countSimilarReferences(); +} diff --git a/jOOQ-meta/src/main/java/org/jooq/util/InOutDefinition.java b/jOOQ-meta/src/main/java/org/jooq/util/InOutDefinition.java new file mode 100644 index 00000000000..e0d94f4ed5d --- /dev/null +++ b/jOOQ-meta/src/main/java/org/jooq/util/InOutDefinition.java @@ -0,0 +1,85 @@ +/** + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com + * All rights reserved. + * + * This software is licensed to you under the Apache License, Version 2.0 + * (the "License"); You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * 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 "jOOQ" 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 COPYRIGHT OWNER 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. + */ + +package org.jooq.util; + +/** + * The parameter type of a stored procedure + * + * @author Lukas Eder + */ +public enum InOutDefinition { + + /** + * An in parameter. Default if the in/out keyword is absent. + */ + IN, + + /** + * An out parameter + */ + OUT, + + /** + * An in/out parameter + */ + INOUT, + + /** + * A return value for a function + */ + RETURN; + + /** + * Convert a string into the corresponding {@link InOutDefinition} value. + * + * @param string IN, OUT, INOUT or null + * @return The in/out value + */ + public static final InOutDefinition getFromString(String string) { + if (string == null) { + return IN; + } + + else if ("IN/OUT".equalsIgnoreCase(string)) { + return INOUT; + } + + else { + return InOutDefinition.valueOf(string.toUpperCase()); + } + } +} diff --git a/jOOQ-meta/src/main/java/org/jooq/util/MasterDataTableDefinition.java b/jOOQ-meta/src/main/java/org/jooq/util/MasterDataTableDefinition.java new file mode 100644 index 00000000000..343e8cfb191 --- /dev/null +++ b/jOOQ-meta/src/main/java/org/jooq/util/MasterDataTableDefinition.java @@ -0,0 +1,70 @@ +/** + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com + * All rights reserved. + * + * This software is licensed to you under the Apache License, Version 2.0 + * (the "License"); You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * 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 "jOOQ" 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 COPYRIGHT OWNER 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. + */ +package org.jooq.util; + +import org.jooq.Record; +import org.jooq.Result; + +/** + * A definition for a master data table + * + * @author Lukas Eder + */ +public interface MasterDataTableDefinition extends TableDefinition { + + /** + * The primary key for this master data table. This will not be + * null. + */ + ColumnDefinition getPrimaryKeyColumn(); + + /** + * The column used for generating literals in the generated class. This may + * be null. + */ + ColumnDefinition getLiteralColumn(); + + /** + * The column used for generating a description (Javadoc) in the generated + * class. This may be null. + */ + ColumnDefinition getDescriptionColumn(); + + /** + * The data contained in the master table + */ + Result getData(); +} diff --git a/jOOQ-meta/src/main/java/org/jooq/util/MasterDataTypeDefinition.java b/jOOQ-meta/src/main/java/org/jooq/util/MasterDataTypeDefinition.java new file mode 100644 index 00000000000..85e3c1a2b02 --- /dev/null +++ b/jOOQ-meta/src/main/java/org/jooq/util/MasterDataTypeDefinition.java @@ -0,0 +1,96 @@ +/** + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com + * All rights reserved. + * + * This software is licensed to you under the Apache License, Version 2.0 + * (the "License"); You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * 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 "jOOQ" 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 COPYRIGHT OWNER 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. + */ +package org.jooq.util; + + +/** + * @author Lukas Eder + */ +public class MasterDataTypeDefinition implements DataTypeDefinition { + + final TableDefinition table; + final DataTypeDefinition underlying; + + public MasterDataTypeDefinition(TableDefinition table, DataTypeDefinition underlying) { + this.table = table; + this.underlying = underlying; + } + + @Override + public final String getType() { + return underlying.getType(); + } + + @Override + public final int getLength() { + return underlying.getLength(); + } + + @Override + public final int getPrecision() { + return underlying.getPrecision(); + } + + @Override + public final int getScale() { + return underlying.getScale(); + } + + @Override + public final String getUserType() { + return underlying.getUserType(); + } + + @Override + public final boolean isGenericNumberType() { + return underlying.isGenericNumberType(); + } + + @Override + public final boolean isUDT() { + return false; + } + + @Override + public final Database getDatabase() { + return underlying.getDatabase(); + } + + @Override + public final SchemaDefinition getSchema() { + return underlying.getSchema(); + } +} diff --git a/jOOQ-meta/src/main/java/org/jooq/util/PackageDefinition.java b/jOOQ-meta/src/main/java/org/jooq/util/PackageDefinition.java new file mode 100644 index 00000000000..36f89f9db9c --- /dev/null +++ b/jOOQ-meta/src/main/java/org/jooq/util/PackageDefinition.java @@ -0,0 +1,51 @@ +/** + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com + * All rights reserved. + * + * This software is licensed to you under the Apache License, Version 2.0 + * (the "License"); You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * 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 "jOOQ" 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 COPYRIGHT OWNER 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. + */ +package org.jooq.util; + +import java.util.List; + +/** + * An interface defining a package in a database schema + * + * @author Lukas Eder + */ +public interface PackageDefinition extends Definition { + + /** + * Fetch all routines from the package + */ + List getRoutines(); +} diff --git a/jOOQ-meta/src/main/java/org/jooq/util/ParameterDefinition.java b/jOOQ-meta/src/main/java/org/jooq/util/ParameterDefinition.java new file mode 100644 index 00000000000..6c621f7df26 --- /dev/null +++ b/jOOQ-meta/src/main/java/org/jooq/util/ParameterDefinition.java @@ -0,0 +1,53 @@ +/** + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com + * All rights reserved. + * + * This software is licensed to you under the Apache License, Version 2.0 + * (the "License"); You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * 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 "jOOQ" 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 COPYRIGHT OWNER 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. + */ +package org.jooq.util; + +import org.jooq.Parameter; + +/** + * An interface defining a parameter of a stored procedure or stored function. + * + * @author Lukas Eder + */ +public interface ParameterDefinition extends TypedElementDefinition { + + /** + * Whether the parameter has a default value. + *

+ * @see Parameter#isDefaulted() + */ + boolean isDefaulted(); +} diff --git a/jOOQ-meta/src/main/java/org/jooq/util/Relations.java b/jOOQ-meta/src/main/java/org/jooq/util/Relations.java new file mode 100644 index 00000000000..f217396cf07 --- /dev/null +++ b/jOOQ-meta/src/main/java/org/jooq/util/Relations.java @@ -0,0 +1,78 @@ +/** + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com + * All rights reserved. + * + * This software is licensed to you under the Apache License, Version 2.0 + * (the "License"); You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * 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 "jOOQ" 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 COPYRIGHT OWNER 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. + */ +package org.jooq.util; + +import java.util.List; + +/** + * A model for all known Referenced Key / Referencing Key relations in the + * {@link Database}'s schema. + * + * @author Lukas Eder + */ +public interface Relations { + + /** + * Get the the primary for a given column, or null if that + * column is not part of the primary key. + */ + UniqueKeyDefinition getPrimaryKey(ColumnDefinition column); + + /** + * Get a list of referenced keys (primary or unique) for a given table, that + * the column participates in. Returns an empty list if the given column is + * not part of any primary key or unique key. + */ + List getUniqueKeys(ColumnDefinition column); + + /** + * Get a list of referenced keys (primary or unique) for a given table. + * Returns an empty list if the given table has no primary or unique keys. + */ + List getUniqueKeys(TableDefinition table); + + /** + * Get the foreign key for a given column, or null if that + * column is not part of a foreign key. + */ + ForeignKeyDefinition getForeignKey(ColumnDefinition column); + + /** + * Get a list of foreign keys for a given table. Returns an empty list if + * the given table has no foreign keys. + */ + List getForeignKeys(TableDefinition table); +} diff --git a/jOOQ-meta/src/main/java/org/jooq/util/RoutineDefinition.java b/jOOQ-meta/src/main/java/org/jooq/util/RoutineDefinition.java new file mode 100644 index 00000000000..1e4fadd8bfa --- /dev/null +++ b/jOOQ-meta/src/main/java/org/jooq/util/RoutineDefinition.java @@ -0,0 +1,85 @@ +/** + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com + * All rights reserved. + * + * This software is licensed to you under the Apache License, Version 2.0 + * (the "License"); You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * 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 "jOOQ" 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 COPYRIGHT OWNER 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. + */ + +package org.jooq.util; + +import java.util.List; + +/** + * An interface defining a stored routine in a database. + * + * @author Lukas Eder + */ +public interface RoutineDefinition extends Definition { + + /** + * @return The routine's package. null if the routine is not in + * a package + */ + PackageDefinition getPackage(); + + /** + * A list of IN or INOUT parameter column definitions + */ + List getInParameters(); + + /** + * A list of OUT or INOUT parameter column definitions + */ + List getOutParameters(); + + /** + * A list of all IN, OUT, and INOUT parameter column definitions + */ + List getAllParameters(); + + /** + * @return The return value column definition + */ + ParameterDefinition getReturnValue(); + + /** + * @return The return value simple Java type + */ + DataTypeDefinition getReturnType(); + + /** + * @return Whether this routine can be used in SQL (a function without OUT + * parameters) + */ + boolean isSQLUsable(); + +} diff --git a/jOOQ-meta/src/main/java/org/jooq/util/SchemaDefinition.java b/jOOQ-meta/src/main/java/org/jooq/util/SchemaDefinition.java new file mode 100644 index 00000000000..583eaba209b --- /dev/null +++ b/jOOQ-meta/src/main/java/org/jooq/util/SchemaDefinition.java @@ -0,0 +1,69 @@ +/** + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com + * All rights reserved. + * + * This software is licensed to you under the Apache License, Version 2.0 + * (the "License"); You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * 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 "jOOQ" 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 COPYRIGHT OWNER 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. + */ + +package org.jooq.util; + +import java.util.Arrays; +import java.util.List; + +import org.jooq.tools.StringUtils; + +/** + * The definition of a database schema + * + * @author Lukas Eder + */ +public class SchemaDefinition extends AbstractDefinition { + + public SchemaDefinition(Database database, String name, String comment) { + super(database, null, name, comment); + } + + @SuppressWarnings("deprecation") + @Override + public final String getOutputName() { + return getDatabase().getOutputSchema(getInputName()); + } + + @Override + public final List getDefinitionPath() { + return Arrays.asList(this); + } + + public boolean isDefaultSchema() { + return StringUtils.isBlank(getName()); + } +} diff --git a/jOOQ-meta/src/main/java/org/jooq/util/SequenceDefinition.java b/jOOQ-meta/src/main/java/org/jooq/util/SequenceDefinition.java new file mode 100644 index 00000000000..126209a9664 --- /dev/null +++ b/jOOQ-meta/src/main/java/org/jooq/util/SequenceDefinition.java @@ -0,0 +1,45 @@ +/** + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com + * All rights reserved. + * + * This software is licensed to you under the Apache License, Version 2.0 + * (the "License"); You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * 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 "jOOQ" 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 COPYRIGHT OWNER 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. + */ +package org.jooq.util; + +/** + * An interface defining a sequence + * + * @author Lukas Eder + */ +public interface SequenceDefinition extends TypedElementDefinition { + +} diff --git a/jOOQ-meta/src/main/java/org/jooq/util/TableDefinition.java b/jOOQ-meta/src/main/java/org/jooq/util/TableDefinition.java new file mode 100644 index 00000000000..3294e4183f5 --- /dev/null +++ b/jOOQ-meta/src/main/java/org/jooq/util/TableDefinition.java @@ -0,0 +1,97 @@ +/** + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com + * All rights reserved. + * + * This software is licensed to you under the Apache License, Version 2.0 + * (the "License"); You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * 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 "jOOQ" 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 COPYRIGHT OWNER 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. + */ + +package org.jooq.util; + +import java.util.List; + +import org.jooq.Record; +import org.jooq.Table; + +/** + * The definition of a table or view. + * + * @author Lukas Eder + */ +public interface TableDefinition extends Definition { + + /** + * All columns in the type, table or view + */ + List getColumns(); + + /** + * Get a column in this type by its name + */ + ColumnDefinition getColumn(String columnName); + + /** + * Get a column in this type by its name + */ + ColumnDefinition getColumn(String columnName, boolean ignoreCase); + + /** + * Get a column in this type by its index (starting at 0) + */ + ColumnDefinition getColumn(int columnIndex); + + /** + * Get the primary key or the main unique key for this table + */ + UniqueKeyDefinition getMainUniqueKey(); + + /** + * Get the unique keys for this table + */ + List getUniqueKeys(); + + /** + * Get the foreign keys for this table + */ + List getForeignKeys(); + + /** + * Get the IDENTITY column of this table, or null, + * if no such column exists. + */ + ColumnDefinition getIdentity(); + + /** + * This TableDefinition as a {@link Table} + */ + Table getTable(); + +} diff --git a/jOOQ-meta/src/main/java/org/jooq/util/TypedElementDefinition.java b/jOOQ-meta/src/main/java/org/jooq/util/TypedElementDefinition.java new file mode 100644 index 00000000000..22329d912e2 --- /dev/null +++ b/jOOQ-meta/src/main/java/org/jooq/util/TypedElementDefinition.java @@ -0,0 +1,54 @@ +/** + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com + * All rights reserved. + * + * This software is licensed to you under the Apache License, Version 2.0 + * (the "License"); You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * 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 "jOOQ" 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 COPYRIGHT OWNER 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. + */ +package org.jooq.util; + +/** + * An element that has a data type + * + * @author Lukas Eder + */ +public interface TypedElementDefinition extends Definition { + + /** + * The column / parameter type + */ + DataTypeDefinition getType(); + + /** + * The container that contains this typed element + */ + T getContainer(); +} diff --git a/jOOQ-meta/src/main/java/org/jooq/util/UDTDefinition.java b/jOOQ-meta/src/main/java/org/jooq/util/UDTDefinition.java new file mode 100644 index 00000000000..08b700dd267 --- /dev/null +++ b/jOOQ-meta/src/main/java/org/jooq/util/UDTDefinition.java @@ -0,0 +1,71 @@ +/** + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com + * All rights reserved. + * + * This software is licensed to you under the Apache License, Version 2.0 + * (the "License"); You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * 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 "jOOQ" 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 COPYRIGHT OWNER 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. + */ +package org.jooq.util; + +import java.util.List; + +/** + * A definition for a UDT + *

+ * This extends {@link PackageDefinition} because Oracle internally models UDT's + * in similar ways as packages. This is especially true for the way, member + * procedures and functions are called. + * + * @author Lukas Eder + */ +public interface UDTDefinition extends PackageDefinition { + + /** + * All attributes in the UDT + */ + List getAttributes(); + + /** + * Get an attribute in this UDT by its name + */ + AttributeDefinition getAttribute(String attributeName); + + /** + * Get an attribute in this UDT by its index (starting at 0) + */ + AttributeDefinition getAttribute(int attributeIndex); + + /** + * All routines in the UDT + */ + @Override + List getRoutines(); +} diff --git a/jOOQ-meta/src/main/java/org/jooq/util/UniqueKeyDefinition.java b/jOOQ-meta/src/main/java/org/jooq/util/UniqueKeyDefinition.java new file mode 100644 index 00000000000..754c54e1642 --- /dev/null +++ b/jOOQ-meta/src/main/java/org/jooq/util/UniqueKeyDefinition.java @@ -0,0 +1,64 @@ +/** + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com + * All rights reserved. + * + * This software is licensed to you under the Apache License, Version 2.0 + * (the "License"); You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * 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 "jOOQ" 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 COPYRIGHT OWNER 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. + */ +package org.jooq.util; + +import java.util.List; + +/** + * An object holding information about an inverse foreign key relationship. + *

+ * This object may either represent a primary key or a unique key. It holds a + * list of foreign keys referencing this key. + * + * @author Lukas Eder + */ +public interface UniqueKeyDefinition extends Definition { + + /** + * The list of columns making up the primary key. + */ + List getKeyColumns(); + + /** + * The foreign keys referencing this primary key + */ + List getForeignKeys(); + + /** + * The table holding this key + */ + TableDefinition getTable(); +} diff --git a/jOOQ-meta/src/main/java/org/jooq/util/ase/ASEDatabase.java b/jOOQ-meta/src/main/java/org/jooq/util/ase/ASEDatabase.java new file mode 100644 index 00000000000..aa2f675b357 --- /dev/null +++ b/jOOQ-meta/src/main/java/org/jooq/util/ase/ASEDatabase.java @@ -0,0 +1,277 @@ +/** + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com + * All rights reserved. + * + * This software is licensed to you under the Apache License, Version 2.0 + * (the "License"); You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * 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 "jOOQ" 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 COPYRIGHT OWNER 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. + */ +package org.jooq.util.ase; + +import static java.util.Arrays.asList; +import static org.jooq.impl.Factory.concat; +import static org.jooq.impl.Factory.field; +import static org.jooq.impl.Factory.val; +import static org.jooq.util.ase.sys.tables.Sysindexes.SYSINDEXES; + +import java.sql.SQLException; +import java.util.ArrayList; +import java.util.List; + +import org.jooq.Field; +import org.jooq.Record; +import org.jooq.impl.Factory; +import org.jooq.tools.JooqLogger; +import org.jooq.util.AbstractDatabase; +import org.jooq.util.ArrayDefinition; +import org.jooq.util.ColumnDefinition; +import org.jooq.util.DefaultRelations; +import org.jooq.util.EnumDefinition; +import org.jooq.util.PackageDefinition; +import org.jooq.util.RoutineDefinition; +import org.jooq.util.SchemaDefinition; +import org.jooq.util.SequenceDefinition; +import org.jooq.util.TableDefinition; +import org.jooq.util.UDTDefinition; +import org.jooq.util.ase.sys.DboFactory; +import org.jooq.util.ase.sys.tables.Sysindexes; +import org.jooq.util.ase.sys.tables.Sysreferences; + +/** + * Sybase Adaptive Server implementation of {@link AbstractDatabase} + * + * @author Lukas Eder + */ +public class ASEDatabase extends AbstractDatabase { + + private static final JooqLogger log = JooqLogger.getLogger(ASEDatabase.class); + + @Override + public Factory create() { + return new DboFactory(getConnection()); + } + + private SchemaDefinition getSchema() { + List schemata = getSchemata(); + + if (schemata.size() > 1) { + log.error("NOT SUPPORTED", "jOOQ does not support multiple schemata in Sybase ASE."); + log.error("-----------------------------------------------------------------------"); + + // TODO [#1098] Support this also for Sybase ASE + } + + return schemata.get(0); + } + + @Override + protected void loadPrimaryKeys(DefaultRelations relations) throws SQLException { + for (Record record : fetchKeys(PK_INCL, PK_EXCL)) { + String keyName = record.getValueAsString(0); + TableDefinition table = getTable(getSchema(), record.getValueAsString(1)); + + if (table != null) { + for (int i = 0; i < 8; i++) { + if (record.getValue(2 + i) == null) { + break; + } + + relations.addPrimaryKey(keyName, table.getColumn(record.getValueAsString(2 + i))); + } + } + } + } + + @Override + protected void loadUniqueKeys(DefaultRelations relations) throws SQLException { + for (Record record : fetchKeys(UK_INCL, UK_EXCL)) { + String keyName = record.getValueAsString(0); + TableDefinition table = getTable(getSchema(), record.getValueAsString(1)); + + if (table != null) { + for (int i = 0; i < 8; i++) { + if (record.getValue(2 + i) == null) { + break; + } + + relations.addUniqueKey(keyName, table.getColumn(record.getValueAsString(2 + i))); + } + } + } + } + + private static final int PK_INCL = 2048; + private static final int PK_EXCL = 64; + private static final int UK_INCL = 4096 | 2; + private static final int UK_EXCL = 2048 | 64; + + /** + * The underlying query of this method was found here: + *

+ * http://www.dbforums.com/sybase/1625012-sysindexes-question-testing- + * unique-clustered-indexes.html + */ + private List fetchKeys(int incl, int excl) { + Field table = field("object_name(id)", String.class); + Field key = field("name", String.class); + + return create().select( + concat(table, val("__"), key), + table, + field("index_col(object_name(id), indid, 1)", String.class), + field("index_col(object_name(id), indid, 2)", String.class), + field("index_col(object_name(id), indid, 3)", String.class), + field("index_col(object_name(id), indid, 4)", String.class), + field("index_col(object_name(id), indid, 5)", String.class), + field("index_col(object_name(id), indid, 6)", String.class), + field("index_col(object_name(id), indid, 7)", String.class), + field("index_col(object_name(id), indid, 8)", String.class)) + .from(SYSINDEXES) + .where("status & ? = 0", excl) + .and("status & ? <> 0", incl) + .orderBy(Sysindexes.ID) + .fetch(); + } + + @Override + protected void loadForeignKeys(DefaultRelations relations) throws SQLException { + Field fkTable = field("object_name(tableid)", String.class); + Field fk = field("object_name(constrid)", String.class); + Field pkTable = field("object_name(reftabid)", String.class); + Field pk = field("index_name(pmrydbid, reftabid, indexid)", String.class); + + for (Record record : create().select( + fkTable.as("fk_table"), + concat(fkTable, val("__"), fk).as("fk"), + concat(pkTable, val("__"), pk).as("pk"), + field("col_name(tableid, fokey1)", String.class), + field("col_name(tableid, fokey2)", String.class), + field("col_name(tableid, fokey3)", String.class), + field("col_name(tableid, fokey4)", String.class), + field("col_name(tableid, fokey5)", String.class), + field("col_name(tableid, fokey6)", String.class), + field("col_name(tableid, fokey7)", String.class), + field("col_name(tableid, fokey8)", String.class), + field("col_name(tableid, fokey9)", String.class), + field("col_name(tableid, fokey10)", String.class), + field("col_name(tableid, fokey11)", String.class), + field("col_name(tableid, fokey12)", String.class), + field("col_name(tableid, fokey13)", String.class), + field("col_name(tableid, fokey14)", String.class), + field("col_name(tableid, fokey15)", String.class), + field("col_name(tableid, fokey16)", String.class), + field("object_owner_id(tableid)")) + .from(Sysreferences.SYSREFERENCES) + .fetch()) { + + TableDefinition referencingTable = getTable(getSchema(), record.getValueAsString("fk_table")); + if (referencingTable != null) { + for (int i = 0; i < 16; i++) { + if (record.getValue(i + 3) == null) { + break; + } + + String foreignKeyName = record.getValueAsString("fk"); + String foreignKeyColumnName = record.getValueAsString(i + 3); + String uniqueKeyName = record.getValueAsString("pk"); + + ColumnDefinition column = referencingTable.getColumn(foreignKeyColumnName); + relations.addForeignKey(foreignKeyName, uniqueKeyName, column, getSchema()); + } + } + } + } + + @Override + protected List getSequences0() throws SQLException { + List result = new ArrayList(); + return result; + } + + @Override + protected List getTables0() throws SQLException { + List result = new ArrayList(); + + for (Record record : fetchTables()) { + SchemaDefinition schema = getSchema(record.getValueAsString("Owner")); + String name = record.getValueAsString("Name"); + + result.add(new ASETableDefinition(schema, name, null)); + } + + return result; + } + + private List fetchTables() { + List result = new ArrayList(); + + for (Record record : create().fetch("sp_help")) { + if (asList("view", "user table", "system table").contains(record.getValueAsString("Object_type"))) { + if (getInputSchemata().contains(record.getValueAsString("Owner"))) { + result.add(record); + } + } + } + + return result; + } + + @Override + protected List getRoutines0() throws SQLException { + List result = new ArrayList(); + return result; + } + + @Override + protected List getPackages0() throws SQLException { + List result = new ArrayList(); + return result; + } + + @Override + protected List getEnums0() throws SQLException { + List result = new ArrayList(); + return result; + } + + @Override + protected List getUDTs0() throws SQLException { + List result = new ArrayList(); + return result; + } + + @Override + protected List getArrays0() throws SQLException { + List result = new ArrayList(); + return result; + } +} diff --git a/jOOQ-meta/src/main/java/org/jooq/util/ase/ASETableDefinition.java b/jOOQ-meta/src/main/java/org/jooq/util/ase/ASETableDefinition.java new file mode 100644 index 00000000000..b6411751763 --- /dev/null +++ b/jOOQ-meta/src/main/java/org/jooq/util/ase/ASETableDefinition.java @@ -0,0 +1,100 @@ +/** + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com + * All rights reserved. + * + * This software is licensed to you under the Apache License, Version 2.0 + * (the "License"); You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * 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 "jOOQ" 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 COPYRIGHT OWNER 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. + */ +package org.jooq.util.ase; + +import java.sql.SQLException; +import java.util.ArrayList; +import java.util.List; + +import org.jooq.Record; +import org.jooq.util.AbstractTableDefinition; +import org.jooq.util.ColumnDefinition; +import org.jooq.util.DataTypeDefinition; +import org.jooq.util.DefaultColumnDefinition; +import org.jooq.util.DefaultDataTypeDefinition; +import org.jooq.util.SchemaDefinition; + + +/** + * Sybase Adaptive Server table definition + * + * @author Lukas Eder + */ +public class ASETableDefinition extends AbstractTableDefinition { + + public ASETableDefinition(SchemaDefinition schema, String name, String comment) { + super(schema, name, comment); + } + + @Override + protected List getElements0() throws SQLException { + List result = new ArrayList(); + + int position = 1; + for (Record record : create().fetchMany("sp_help '" + getName() + "'").get(1)) { + String l = record.getValueAsString("Length"); + String p = record.getValueAsString("Prec"); + String s = record.getValueAsString("Scale"); + + int length = 0; + int precision = 0; + int scale = 0; + + if (l != null && !"null".equalsIgnoreCase(l.trim())) length = Integer.valueOf(l.trim()); + if (p != null && !"null".equalsIgnoreCase(p.trim())) precision = Integer.valueOf(p.trim()); + if (s != null && !"null".equalsIgnoreCase(s.trim())) scale = Integer.valueOf(s.trim()); + + DataTypeDefinition type = new DefaultDataTypeDefinition( + getDatabase(), + getSchema(), + record.getValueAsString("Type"), + length, + precision, + scale); + + result.add(new DefaultColumnDefinition( + getDatabase().getTable(getSchema(), getName()), + record.getValueAsString("Column_name"), + position++, + type, + record.getValue("Nulls", boolean.class), + record.getValueAsBoolean("Identity", false), + null)); + } + + return result; + } +} diff --git a/jOOQ-meta/src/main/java/org/jooq/util/ase/sys/Dbo.java b/jOOQ-meta/src/main/java/org/jooq/util/ase/sys/Dbo.java new file mode 100644 index 00000000000..cc167ce4876 --- /dev/null +++ b/jOOQ-meta/src/main/java/org/jooq/util/ase/sys/Dbo.java @@ -0,0 +1,34 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.util.ase.sys; + +/** + * This class is generated by jOOQ. + */ +@javax.annotation.Generated(value = {"http://www.jooq.org", "2.0.6"}, + comments = "This class is generated by jOOQ") +public class Dbo extends org.jooq.impl.SchemaImpl { + + private static final long serialVersionUID = 1383637504; + + /** + * The singleton instance of dbo + */ + public static final Dbo DBO = new Dbo(); + + /** + * No further instances allowed + */ + private Dbo() { + super("dbo"); + } + + @Override + public final java.util.List> getTables() { + return java.util.Arrays.>asList( + org.jooq.util.ase.sys.tables.Sysindexes.SYSINDEXES, + org.jooq.util.ase.sys.tables.Sysobjects.SYSOBJECTS, + org.jooq.util.ase.sys.tables.Sysreferences.SYSREFERENCES); + } +} diff --git a/jOOQ-meta/src/main/java/org/jooq/util/ase/sys/DboFactory.java b/jOOQ-meta/src/main/java/org/jooq/util/ase/sys/DboFactory.java new file mode 100644 index 00000000000..8b6ff4dd891 --- /dev/null +++ b/jOOQ-meta/src/main/java/org/jooq/util/ase/sys/DboFactory.java @@ -0,0 +1,33 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.util.ase.sys; + +/** + * This class is generated by jOOQ. + */ +@javax.annotation.Generated(value = {"http://www.jooq.org", "2.0.6"}, + comments = "This class is generated by jOOQ") +public class DboFactory extends org.jooq.util.ase.ASEFactory { + + private static final long serialVersionUID = -1750129658; + + /** + * Create a factory with a connection + * + * @param connection The connection to use with objects created from this factory + */ + public DboFactory(java.sql.Connection connection) { + super(connection); + } + + /** + * Create a factory with a connection and some settings + * + * @param connection The connection to use with objects created from this factory + * @param settings The settings to apply to objects created from this factory + */ + public DboFactory(java.sql.Connection connection, org.jooq.conf.Settings settings) { + super(connection, settings); + } +} diff --git a/jOOQ-meta/src/main/java/org/jooq/util/ase/sys/Tables.java b/jOOQ-meta/src/main/java/org/jooq/util/ase/sys/Tables.java new file mode 100644 index 00000000000..e0cbe06b4ec --- /dev/null +++ b/jOOQ-meta/src/main/java/org/jooq/util/ase/sys/Tables.java @@ -0,0 +1,34 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.util.ase.sys; + +/** + * This class is generated by jOOQ. + * + * Convenience access to all tables in dbo + */ +@javax.annotation.Generated(value = {"http://www.jooq.org", "2.0.6"}, + comments = "This class is generated by jOOQ") +public final class Tables { + + /** + * The table dbo.sysindexes + */ + public static org.jooq.util.ase.sys.tables.Sysindexes SYSINDEXES = org.jooq.util.ase.sys.tables.Sysindexes.SYSINDEXES; + + /** + * The table dbo.sysobjects + */ + public static org.jooq.util.ase.sys.tables.Sysobjects SYSOBJECTS = org.jooq.util.ase.sys.tables.Sysobjects.SYSOBJECTS; + + /** + * The table dbo.sysreferences + */ + public static org.jooq.util.ase.sys.tables.Sysreferences SYSREFERENCES = org.jooq.util.ase.sys.tables.Sysreferences.SYSREFERENCES; + + /** + * No instances + */ + private Tables() {} +} diff --git a/jOOQ-meta/src/main/java/org/jooq/util/ase/sys/tables/Sysindexes.java b/jOOQ-meta/src/main/java/org/jooq/util/ase/sys/tables/Sysindexes.java new file mode 100644 index 00000000000..0d7e0219fa5 --- /dev/null +++ b/jOOQ-meta/src/main/java/org/jooq/util/ase/sys/tables/Sysindexes.java @@ -0,0 +1,204 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.util.ase.sys.tables; + +/** + * This class is generated by jOOQ. + */ +@javax.annotation.Generated(value = {"http://www.jooq.org", "2.0.6"}, + comments = "This class is generated by jOOQ") +public class Sysindexes extends org.jooq.impl.TableImpl { + + private static final long serialVersionUID = 664930674; + + /** + * The singleton instance of dbo.sysindexes + */ + public static final org.jooq.util.ase.sys.tables.Sysindexes SYSINDEXES = new org.jooq.util.ase.sys.tables.Sysindexes(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.Record.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + */ + public static final org.jooq.TableField NAME = createField("name", org.jooq.impl.SQLDataType.VARCHAR, SYSINDEXES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField ID = createField("id", org.jooq.impl.SQLDataType.INTEGER, SYSINDEXES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField INDID = createField("indid", org.jooq.impl.SQLDataType.SMALLINT, SYSINDEXES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField DOAMPG = createField("doampg", org.jooq.impl.SQLDataType.INTEGER, SYSINDEXES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField IOAMPG = createField("ioampg", org.jooq.impl.SQLDataType.INTEGER, SYSINDEXES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField OAMPGTRIPS = createField("oampgtrips", org.jooq.impl.SQLDataType.INTEGER, SYSINDEXES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField STATUS3 = createField("status3", org.jooq.impl.SQLDataType.SMALLINT, SYSINDEXES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField STATUS2 = createField("status2", org.jooq.impl.SQLDataType.SMALLINT, SYSINDEXES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField IPGTRIPS = createField("ipgtrips", org.jooq.impl.SQLDataType.INTEGER, SYSINDEXES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField FIRST = createField("first", org.jooq.impl.SQLDataType.INTEGER, SYSINDEXES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField ROOT = createField("root", org.jooq.impl.SQLDataType.INTEGER, SYSINDEXES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField DISTRIBUTION = createField("distribution", org.jooq.impl.SQLDataType.INTEGER, SYSINDEXES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField USAGECNT = createField("usagecnt", org.jooq.impl.SQLDataType.SMALLINT, SYSINDEXES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField SEGMENT = createField("segment", org.jooq.impl.SQLDataType.SMALLINT, SYSINDEXES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField STATUS = createField("status", org.jooq.impl.SQLDataType.SMALLINT, SYSINDEXES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField MAXROWSPERPAGE = createField("maxrowsperpage", org.jooq.impl.SQLDataType.SMALLINT, SYSINDEXES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField MINLEN = createField("minlen", org.jooq.impl.SQLDataType.SMALLINT, SYSINDEXES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField MAXLEN = createField("maxlen", org.jooq.impl.SQLDataType.SMALLINT, SYSINDEXES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField MAXIROW = createField("maxirow", org.jooq.impl.SQLDataType.SMALLINT, SYSINDEXES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField KEYCNT = createField("keycnt", org.jooq.impl.SQLDataType.SMALLINT, SYSINDEXES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField KEYS1 = createField("keys1", org.jooq.impl.SQLDataType.VARBINARY, SYSINDEXES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField KEYS2 = createField("keys2", org.jooq.impl.SQLDataType.VARBINARY, SYSINDEXES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField SOID = createField("soid", org.jooq.impl.SQLDataType.TINYINT, SYSINDEXES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField CSID = createField("csid", org.jooq.impl.SQLDataType.TINYINT, SYSINDEXES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField BASE_PARTITION = createField("base_partition", org.jooq.impl.SQLDataType.INTEGER, SYSINDEXES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField FILL_FACTOR = createField("fill_factor", org.jooq.impl.SQLDataType.SMALLINT, SYSINDEXES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField RES_PAGE_GAP = createField("res_page_gap", org.jooq.impl.SQLDataType.SMALLINT, SYSINDEXES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField EXP_ROWSIZE = createField("exp_rowsize", org.jooq.impl.SQLDataType.SMALLINT, SYSINDEXES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField KEYS3 = createField("keys3", org.jooq.impl.SQLDataType.VARBINARY, SYSINDEXES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField IDENTITYGAP = createField("identitygap", org.jooq.impl.SQLDataType.INTEGER, SYSINDEXES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField CRDATE = createField("crdate", org.jooq.impl.SQLDataType.TIMESTAMP, SYSINDEXES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField PARTITIONTYPE = createField("partitiontype", org.jooq.impl.SQLDataType.SMALLINT, SYSINDEXES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField CONDITIONID = createField("conditionid", org.jooq.impl.SQLDataType.INTEGER, SYSINDEXES); + + /** + * No further instances allowed + */ + private Sysindexes() { + super("sysindexes", org.jooq.util.ase.sys.Dbo.DBO); + } +} diff --git a/jOOQ-meta/src/main/java/org/jooq/util/ase/sys/tables/Sysobjects.java b/jOOQ-meta/src/main/java/org/jooq/util/ase/sys/tables/Sysobjects.java new file mode 100644 index 00000000000..03803bdaa6c --- /dev/null +++ b/jOOQ-meta/src/main/java/org/jooq/util/ase/sys/tables/Sysobjects.java @@ -0,0 +1,164 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.util.ase.sys.tables; + +/** + * This class is generated by jOOQ. + */ +@javax.annotation.Generated(value = {"http://www.jooq.org", "2.0.6"}, + comments = "This class is generated by jOOQ") +public class Sysobjects extends org.jooq.impl.TableImpl { + + private static final long serialVersionUID = -1862765525; + + /** + * The singleton instance of dbo.sysobjects + */ + public static final org.jooq.util.ase.sys.tables.Sysobjects SYSOBJECTS = new org.jooq.util.ase.sys.tables.Sysobjects(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.Record.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + */ + public static final org.jooq.TableField NAME = createField("name", org.jooq.impl.SQLDataType.VARCHAR, SYSOBJECTS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField ID = createField("id", org.jooq.impl.SQLDataType.INTEGER, SYSOBJECTS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField UID = createField("uid", org.jooq.impl.SQLDataType.INTEGER, SYSOBJECTS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField TYPE = createField("type", org.jooq.impl.SQLDataType.CHAR, SYSOBJECTS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField USERSTAT = createField("userstat", org.jooq.impl.SQLDataType.SMALLINT, SYSOBJECTS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField SYSSTAT = createField("sysstat", org.jooq.impl.SQLDataType.SMALLINT, SYSOBJECTS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField INDEXDEL = createField("indexdel", org.jooq.impl.SQLDataType.SMALLINT, SYSOBJECTS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField SCHEMACNT = createField("schemacnt", org.jooq.impl.SQLDataType.SMALLINT, SYSOBJECTS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField SYSSTAT2 = createField("sysstat2", org.jooq.impl.SQLDataType.INTEGER, SYSOBJECTS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField CRDATE = createField("crdate", org.jooq.impl.SQLDataType.TIMESTAMP, SYSOBJECTS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField EXPDATE = createField("expdate", org.jooq.impl.SQLDataType.TIMESTAMP, SYSOBJECTS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField DELTRIG = createField("deltrig", org.jooq.impl.SQLDataType.INTEGER, SYSOBJECTS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField INSTRIG = createField("instrig", org.jooq.impl.SQLDataType.INTEGER, SYSOBJECTS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField UPDTRIG = createField("updtrig", org.jooq.impl.SQLDataType.INTEGER, SYSOBJECTS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField SELTRIG = createField("seltrig", org.jooq.impl.SQLDataType.INTEGER, SYSOBJECTS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField CKFIRST = createField("ckfirst", org.jooq.impl.SQLDataType.INTEGER, SYSOBJECTS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField CACHE = createField("cache", org.jooq.impl.SQLDataType.SMALLINT, SYSOBJECTS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField AUDFLAGS = createField("audflags", org.jooq.impl.SQLDataType.INTEGER, SYSOBJECTS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField OBJSPARE = createField("objspare", org.jooq.impl.SQLDataType.SMALLINT, SYSOBJECTS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField VERSIONTS = createField("versionts", org.jooq.impl.SQLDataType.BINARY, SYSOBJECTS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField LOGINAME = createField("loginame", org.jooq.impl.SQLDataType.VARCHAR, SYSOBJECTS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField IDENTBURNMAX = createField("identburnmax", org.jooq.impl.SQLDataType.DECIMAL_INTEGER, SYSOBJECTS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField SPACESTATE = createField("spacestate", org.jooq.impl.SQLDataType.SMALLINT, SYSOBJECTS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField ERLCHGTS = createField("erlchgts", org.jooq.impl.SQLDataType.BINARY, SYSOBJECTS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField SYSSTAT3 = createField("sysstat3", org.jooq.impl.SQLDataType.SMALLINT, SYSOBJECTS); + + /** + * No further instances allowed + */ + private Sysobjects() { + super("sysobjects", org.jooq.util.ase.sys.Dbo.DBO); + } +} diff --git a/jOOQ-meta/src/main/java/org/jooq/util/ase/sys/tables/Sysreferences.java b/jOOQ-meta/src/main/java/org/jooq/util/ase/sys/tables/Sysreferences.java new file mode 100644 index 00000000000..068a733e7a7 --- /dev/null +++ b/jOOQ-meta/src/main/java/org/jooq/util/ase/sys/tables/Sysreferences.java @@ -0,0 +1,254 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.util.ase.sys.tables; + +/** + * This class is generated by jOOQ. + */ +@javax.annotation.Generated(value = {"http://www.jooq.org", "2.0.6"}, + comments = "This class is generated by jOOQ") +public class Sysreferences extends org.jooq.impl.TableImpl { + + private static final long serialVersionUID = -1354733426; + + /** + * The singleton instance of dbo.sysreferences + */ + public static final org.jooq.util.ase.sys.tables.Sysreferences SYSREFERENCES = new org.jooq.util.ase.sys.tables.Sysreferences(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.Record.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + */ + public static final org.jooq.TableField INDEXID = createField("indexid", org.jooq.impl.SQLDataType.SMALLINT, SYSREFERENCES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField CONSTRID = createField("constrid", org.jooq.impl.SQLDataType.INTEGER, SYSREFERENCES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField TABLEID = createField("tableid", org.jooq.impl.SQLDataType.INTEGER, SYSREFERENCES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField REFTABID = createField("reftabid", org.jooq.impl.SQLDataType.INTEGER, SYSREFERENCES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField KEYCNT = createField("keycnt", org.jooq.impl.SQLDataType.SMALLINT, SYSREFERENCES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField STATUS = createField("status", org.jooq.impl.SQLDataType.SMALLINT, SYSREFERENCES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField FRGNDBID = createField("frgndbid", org.jooq.impl.SQLDataType.SMALLINT, SYSREFERENCES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField PMRYDBID = createField("pmrydbid", org.jooq.impl.SQLDataType.SMALLINT, SYSREFERENCES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField SPARE2 = createField("spare2", org.jooq.impl.SQLDataType.INTEGER, SYSREFERENCES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField FOKEY1 = createField("fokey1", org.jooq.impl.SQLDataType.SMALLINT, SYSREFERENCES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField FOKEY2 = createField("fokey2", org.jooq.impl.SQLDataType.SMALLINT, SYSREFERENCES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField FOKEY3 = createField("fokey3", org.jooq.impl.SQLDataType.SMALLINT, SYSREFERENCES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField FOKEY4 = createField("fokey4", org.jooq.impl.SQLDataType.SMALLINT, SYSREFERENCES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField FOKEY5 = createField("fokey5", org.jooq.impl.SQLDataType.SMALLINT, SYSREFERENCES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField FOKEY6 = createField("fokey6", org.jooq.impl.SQLDataType.SMALLINT, SYSREFERENCES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField FOKEY7 = createField("fokey7", org.jooq.impl.SQLDataType.SMALLINT, SYSREFERENCES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField FOKEY8 = createField("fokey8", org.jooq.impl.SQLDataType.SMALLINT, SYSREFERENCES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField FOKEY9 = createField("fokey9", org.jooq.impl.SQLDataType.SMALLINT, SYSREFERENCES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField FOKEY10 = createField("fokey10", org.jooq.impl.SQLDataType.SMALLINT, SYSREFERENCES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField FOKEY11 = createField("fokey11", org.jooq.impl.SQLDataType.SMALLINT, SYSREFERENCES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField FOKEY12 = createField("fokey12", org.jooq.impl.SQLDataType.SMALLINT, SYSREFERENCES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField FOKEY13 = createField("fokey13", org.jooq.impl.SQLDataType.SMALLINT, SYSREFERENCES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField FOKEY14 = createField("fokey14", org.jooq.impl.SQLDataType.SMALLINT, SYSREFERENCES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField FOKEY15 = createField("fokey15", org.jooq.impl.SQLDataType.SMALLINT, SYSREFERENCES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField FOKEY16 = createField("fokey16", org.jooq.impl.SQLDataType.SMALLINT, SYSREFERENCES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField REFKEY1 = createField("refkey1", org.jooq.impl.SQLDataType.SMALLINT, SYSREFERENCES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField REFKEY2 = createField("refkey2", org.jooq.impl.SQLDataType.SMALLINT, SYSREFERENCES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField REFKEY3 = createField("refkey3", org.jooq.impl.SQLDataType.SMALLINT, SYSREFERENCES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField REFKEY4 = createField("refkey4", org.jooq.impl.SQLDataType.SMALLINT, SYSREFERENCES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField REFKEY5 = createField("refkey5", org.jooq.impl.SQLDataType.SMALLINT, SYSREFERENCES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField REFKEY6 = createField("refkey6", org.jooq.impl.SQLDataType.SMALLINT, SYSREFERENCES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField REFKEY7 = createField("refkey7", org.jooq.impl.SQLDataType.SMALLINT, SYSREFERENCES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField REFKEY8 = createField("refkey8", org.jooq.impl.SQLDataType.SMALLINT, SYSREFERENCES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField REFKEY9 = createField("refkey9", org.jooq.impl.SQLDataType.SMALLINT, SYSREFERENCES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField REFKEY10 = createField("refkey10", org.jooq.impl.SQLDataType.SMALLINT, SYSREFERENCES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField REFKEY11 = createField("refkey11", org.jooq.impl.SQLDataType.SMALLINT, SYSREFERENCES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField REFKEY12 = createField("refkey12", org.jooq.impl.SQLDataType.SMALLINT, SYSREFERENCES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField REFKEY13 = createField("refkey13", org.jooq.impl.SQLDataType.SMALLINT, SYSREFERENCES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField REFKEY14 = createField("refkey14", org.jooq.impl.SQLDataType.SMALLINT, SYSREFERENCES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField REFKEY15 = createField("refkey15", org.jooq.impl.SQLDataType.SMALLINT, SYSREFERENCES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField REFKEY16 = createField("refkey16", org.jooq.impl.SQLDataType.SMALLINT, SYSREFERENCES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField FRGNDBNAME = createField("frgndbname", org.jooq.impl.SQLDataType.VARCHAR, SYSREFERENCES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField PMRYDBNAME = createField("pmrydbname", org.jooq.impl.SQLDataType.VARCHAR, SYSREFERENCES); + + /** + * No further instances allowed + */ + private Sysreferences() { + super("sysreferences", org.jooq.util.ase.sys.Dbo.DBO); + } +} diff --git a/jOOQ-meta/src/main/java/org/jooq/util/cubrid/CUBRIDDatabase.java b/jOOQ-meta/src/main/java/org/jooq/util/cubrid/CUBRIDDatabase.java new file mode 100644 index 00000000000..7ff72fde469 --- /dev/null +++ b/jOOQ-meta/src/main/java/org/jooq/util/cubrid/CUBRIDDatabase.java @@ -0,0 +1,245 @@ +/** + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com + * All rights reserved. + * + * This software is licensed to you under the Apache License, Version 2.0 + * (the "License"); You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * 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 "jOOQ" 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 COPYRIGHT OWNER 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. + */ + +package org.jooq.util.cubrid; + +import static org.jooq.impl.Factory.concat; +import static org.jooq.impl.Factory.field; +import static org.jooq.impl.Factory.val; +import static org.jooq.util.cubrid.dba.Tables.DB_CLASS; +import static org.jooq.util.cubrid.dba.Tables.DB_INDEX; +import static org.jooq.util.cubrid.dba.Tables.DB_INDEX_KEY; +import static org.jooq.util.cubrid.dba.Tables.DB_SERIAL; + +import java.math.BigInteger; +import java.sql.DatabaseMetaData; +import java.sql.SQLException; +import java.util.ArrayList; +import java.util.List; + +import org.jooq.Condition; +import org.jooq.Record; +import org.jooq.Result; +import org.jooq.impl.Factory; +import org.jooq.util.AbstractDatabase; +import org.jooq.util.ArrayDefinition; +import org.jooq.util.ColumnDefinition; +import org.jooq.util.DataTypeDefinition; +import org.jooq.util.DefaultRelations; +import org.jooq.util.DefaultSequenceDefinition; +import org.jooq.util.EnumDefinition; +import org.jooq.util.PackageDefinition; +import org.jooq.util.RoutineDefinition; +import org.jooq.util.SchemaDefinition; +import org.jooq.util.SequenceDefinition; +import org.jooq.util.TableDefinition; +import org.jooq.util.UDTDefinition; + +/** + * @author Lukas Eder + */ +public class CUBRIDDatabase extends AbstractDatabase { + + @Override + protected void loadPrimaryKeys(DefaultRelations relations) throws SQLException { + for (Record record : fetchKeys(DB_INDEX.IS_UNIQUE.isTrue().and(DB_INDEX.IS_PRIMARY_KEY.isFalse()))) { + SchemaDefinition schema = getSchema(record.getValue(DB_CLASS.OWNER_NAME)); + String key = record.getValue("constraint_name", String.class); + String tableName = record.getValue(DB_CLASS.CLASS_NAME); + String columnName = record.getValue(DB_INDEX_KEY.KEY_ATTR_NAME); + + TableDefinition table = getTable(schema, tableName); + if (table != null) { + relations.addUniqueKey(key, table.getColumn(columnName)); + } + } + } + + @Override + protected void loadUniqueKeys(DefaultRelations relations) throws SQLException { + for (Record record : fetchKeys(DB_INDEX.IS_PRIMARY_KEY.isTrue())) { + SchemaDefinition schema = getSchema(record.getValue(DB_CLASS.OWNER_NAME)); + String key = record.getValue("constraint_name", String.class); + String tableName = record.getValue(DB_CLASS.CLASS_NAME); + String columnName = record.getValue(DB_INDEX_KEY.KEY_ATTR_NAME); + + TableDefinition table = getTable(schema, tableName); + if (table != null) { + relations.addPrimaryKey(key, table.getColumn(columnName)); + } + } + } + + private Result fetchKeys(Condition condition) { + return + create().select( + concat(DB_CLASS.CLASS_NAME, val("__"), DB_INDEX.INDEX_NAME).as("constraint_name"), + DB_INDEX_KEY.KEY_ATTR_NAME, + DB_CLASS.CLASS_NAME, + DB_CLASS.OWNER_NAME) + .from(DB_INDEX) + .join(DB_CLASS).on(DB_INDEX.CLASS_NAME.equal(DB_CLASS.CLASS_NAME)) + .join(DB_INDEX_KEY).on( + DB_INDEX_KEY.INDEX_NAME.equal(DB_INDEX.INDEX_NAME).and( + DB_INDEX_KEY.CLASS_NAME.equal(DB_INDEX.CLASS_NAME))) + .where(condition) + .and(DB_CLASS.OWNER_NAME.in(getInputSchemata())) + .orderBy( + DB_CLASS.OWNER_NAME.asc(), + DB_INDEX.INDEX_NAME.asc()) + .fetch(); + } + + @Override + protected void loadForeignKeys(DefaultRelations relations) throws SQLException { + DatabaseMetaData meta = create().getConnection().getMetaData(); + + for (String table : create() + .selectDistinct(DB_INDEX.CLASS_NAME) + .from(DB_INDEX) + .where(DB_INDEX.IS_FOREIGN_KEY.isTrue()) + .fetch(DB_INDEX.CLASS_NAME)) { + + for (Record record : create().fetch(meta.getImportedKeys(null, null, table))) { + SchemaDefinition foreignKeySchema = getSchema(getInputSchemata().get(0)); + SchemaDefinition uniqueKeySchema = getSchema(getInputSchemata().get(0)); + + String foreignKeyName = + record.getValue("FKTABLE_NAME", String.class) + + "__" + + record.getValue("FK_NAME", String.class); + String foreignKeyTableName = record.getValue("FKTABLE_NAME", String.class); + String foreignKeyColumnName = record.getValue("FKCOLUMN_NAME", String.class); + String uniqueKeyName = + record.getValue("PKTABLE_NAME", String.class) + + "__" + + record.getValue("PK_NAME", String.class); + + TableDefinition referencingTable = getTable(foreignKeySchema, foreignKeyTableName); + if (referencingTable != null) { + ColumnDefinition column = referencingTable.getColumn(foreignKeyColumnName); + relations.addForeignKey(foreignKeyName, uniqueKeyName, column, uniqueKeySchema); + } + } + } + } + + @Override + protected List getSequences0() throws SQLException { + List result = new ArrayList(); + + for (Record record : create() + .select( + DB_SERIAL.NAME, + DB_SERIAL.MAX_VAL, + field("owner.name", String.class).as("owner")) + .from(DB_SERIAL) + .where(field("owner.name", String.class).in(getInputSchemata())) + .fetch()) { + + SchemaDefinition schema = getSchema(record.getValue("owner", String.class)); + BigInteger value = record.getValue(DB_SERIAL.MAX_VAL, BigInteger.class, BigInteger.valueOf(Long.MAX_VALUE)); + DataTypeDefinition type = getDataTypeForMAX_VAL(schema, value); + + result.add(new DefaultSequenceDefinition( + schema, + record.getValue(DB_SERIAL.NAME), + type)); + } + + return result; + } + + @Override + protected List getTables0() throws SQLException { + List result = new ArrayList(); + + for (Record record : create() + .select( + DB_CLASS.OWNER_NAME, + DB_CLASS.CLASS_NAME) + .from(DB_CLASS) + .where(DB_CLASS.OWNER_NAME.in(getInputSchemata())) + .orderBy( + DB_CLASS.OWNER_NAME.asc(), + DB_CLASS.CLASS_NAME.asc()) + .fetch()) { + + SchemaDefinition schema = getSchema(record.getValue(DB_CLASS.OWNER_NAME)); + String name = record.getValue(DB_CLASS.CLASS_NAME); + + CUBRIDTableDefinition table = new CUBRIDTableDefinition(schema, name, null); + result.add(table); + } + + return result; + } + + @Override + protected List getEnums0() throws SQLException { + List result = new ArrayList(); + return result; + } + + @Override + protected List getUDTs0() throws SQLException { + List result = new ArrayList(); + return result; + } + + @Override + protected List getArrays0() throws SQLException { + List result = new ArrayList(); + return result; + } + + @Override + protected List getRoutines0() throws SQLException { + List result = new ArrayList(); + return result; + } + + @Override + protected List getPackages0() throws SQLException { + List result = new ArrayList(); + return result; + } + + @Override + public Factory create() { + return new CUBRIDFactory(getConnection()); + } +} diff --git a/jOOQ-meta/src/main/java/org/jooq/util/cubrid/CUBRIDTableDefinition.java b/jOOQ-meta/src/main/java/org/jooq/util/cubrid/CUBRIDTableDefinition.java new file mode 100644 index 00000000000..f02bb31e7a3 --- /dev/null +++ b/jOOQ-meta/src/main/java/org/jooq/util/cubrid/CUBRIDTableDefinition.java @@ -0,0 +1,109 @@ +/** + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com + * All rights reserved. + * + * This software is licensed to you under the Apache License, Version 2.0 + * (the "License"); You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * 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 "jOOQ" 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 COPYRIGHT OWNER 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. + */ + +package org.jooq.util.cubrid; + +import static org.jooq.util.cubrid.dba.Tables.DB_ATTRIBUTE; +import static org.jooq.util.cubrid.dba.Tables.DB_SERIAL; + +import java.sql.SQLException; +import java.util.ArrayList; +import java.util.List; + +import org.jooq.Record; +import org.jooq.util.AbstractTableDefinition; +import org.jooq.util.ColumnDefinition; +import org.jooq.util.DataTypeDefinition; +import org.jooq.util.DefaultColumnDefinition; +import org.jooq.util.DefaultDataTypeDefinition; +import org.jooq.util.SchemaDefinition; + +/** + * @author Lukas Eder + */ +public class CUBRIDTableDefinition extends AbstractTableDefinition { + + public CUBRIDTableDefinition(SchemaDefinition schema, String name, String comment) { + super(schema, name, comment); + } + + @Override + public List getElements0() throws SQLException { + List result = new ArrayList(); + + for (Record record : create() + .select( + DB_ATTRIBUTE.ATTR_NAME, + DB_ATTRIBUTE.DEF_ORDER, + DB_ATTRIBUTE.DATA_TYPE, + DB_ATTRIBUTE.PREC, + DB_ATTRIBUTE.SCALE, + DB_ATTRIBUTE.IS_NULLABLE, + DB_SERIAL.NAME) + .from(DB_ATTRIBUTE) + .leftOuterJoin(DB_SERIAL).on( + DB_ATTRIBUTE.ATTR_NAME.equal(DB_SERIAL.ATT_NAME).and( + DB_ATTRIBUTE.CLASS_NAME.equal(DB_SERIAL.CLASS_NAME))) + .where(DB_ATTRIBUTE.CLASS_NAME.equal(getName())) + .orderBy(DB_ATTRIBUTE.DEF_ORDER) + .fetch()) { + + String dataType = record.getValue(DB_ATTRIBUTE.DATA_TYPE); + + DataTypeDefinition type = new DefaultDataTypeDefinition( + getDatabase(), + getSchema(), + dataType, + record.getValue(DB_ATTRIBUTE.PREC), + record.getValue(DB_ATTRIBUTE.PREC), + record.getValue(DB_ATTRIBUTE.SCALE), + dataType); + + ColumnDefinition column = new DefaultColumnDefinition( + getDatabase().getTable(getSchema(), getName()), + record.getValue(DB_ATTRIBUTE.ATTR_NAME), + record.getValue(DB_ATTRIBUTE.DEF_ORDER), + type, + record.getValue(DB_ATTRIBUTE.IS_NULLABLE, boolean.class), + record.getValue(DB_SERIAL.NAME) != null, + null); + + result.add(column); + } + + return result; + } +} diff --git a/jOOQ-meta/src/main/java/org/jooq/util/cubrid/dba/Dba.java b/jOOQ-meta/src/main/java/org/jooq/util/cubrid/dba/Dba.java new file mode 100644 index 00000000000..0fde09500b7 --- /dev/null +++ b/jOOQ-meta/src/main/java/org/jooq/util/cubrid/dba/Dba.java @@ -0,0 +1,36 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.util.cubrid.dba; + +/** + * This class is generated by jOOQ. + */ +@javax.annotation.Generated(value = {"http://www.jooq.org", "2.1.0"}, + comments = "This class is generated by jOOQ") +public class Dba extends org.jooq.impl.SchemaImpl { + + private static final long serialVersionUID = 122025387; + + /** + * The singleton instance of DBA + */ + public static final Dba DBA = new Dba(); + + /** + * No further instances allowed + */ + private Dba() { + super("DBA"); + } + + @Override + public final java.util.List> getTables() { + return java.util.Arrays.>asList( + org.jooq.util.cubrid.dba.tables.DbAttribute.DB_ATTRIBUTE, + org.jooq.util.cubrid.dba.tables.DbClass.DB_CLASS, + org.jooq.util.cubrid.dba.tables.DbIndex.DB_INDEX, + org.jooq.util.cubrid.dba.tables.DbIndexKey.DB_INDEX_KEY, + org.jooq.util.cubrid.dba.tables.DbSerial.DB_SERIAL); + } +} diff --git a/jOOQ-meta/src/main/java/org/jooq/util/cubrid/dba/DbaFactory.java b/jOOQ-meta/src/main/java/org/jooq/util/cubrid/dba/DbaFactory.java new file mode 100644 index 00000000000..0561f9552e9 --- /dev/null +++ b/jOOQ-meta/src/main/java/org/jooq/util/cubrid/dba/DbaFactory.java @@ -0,0 +1,33 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.util.cubrid.dba; + +/** + * This class is generated by jOOQ. + */ +@javax.annotation.Generated(value = {"http://www.jooq.org", "2.1.0"}, + comments = "This class is generated by jOOQ") +public class DbaFactory extends org.jooq.util.ase.ASEFactory { + + private static final long serialVersionUID = 2132590899; + + /** + * Create a factory with a connection + * + * @param connection The connection to use with objects created from this factory + */ + public DbaFactory(java.sql.Connection connection) { + super(connection); + } + + /** + * Create a factory with a connection and some settings + * + * @param connection The connection to use with objects created from this factory + * @param settings The settings to apply to objects created from this factory + */ + public DbaFactory(java.sql.Connection connection, org.jooq.conf.Settings settings) { + super(connection, settings); + } +} diff --git a/jOOQ-meta/src/main/java/org/jooq/util/cubrid/dba/Tables.java b/jOOQ-meta/src/main/java/org/jooq/util/cubrid/dba/Tables.java new file mode 100644 index 00000000000..e12910ca1a5 --- /dev/null +++ b/jOOQ-meta/src/main/java/org/jooq/util/cubrid/dba/Tables.java @@ -0,0 +1,44 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.util.cubrid.dba; + +/** + * This class is generated by jOOQ. + * + * Convenience access to all tables in DBA + */ +@javax.annotation.Generated(value = {"http://www.jooq.org", "2.1.0"}, + comments = "This class is generated by jOOQ") +public final class Tables { + + /** + * The table DBA.db_attribute + */ + public static org.jooq.util.cubrid.dba.tables.DbAttribute DB_ATTRIBUTE = org.jooq.util.cubrid.dba.tables.DbAttribute.DB_ATTRIBUTE; + + /** + * The table DBA.db_class + */ + public static org.jooq.util.cubrid.dba.tables.DbClass DB_CLASS = org.jooq.util.cubrid.dba.tables.DbClass.DB_CLASS; + + /** + * The table DBA.db_index + */ + public static org.jooq.util.cubrid.dba.tables.DbIndex DB_INDEX = org.jooq.util.cubrid.dba.tables.DbIndex.DB_INDEX; + + /** + * The table DBA.db_index_key + */ + public static org.jooq.util.cubrid.dba.tables.DbIndexKey DB_INDEX_KEY = org.jooq.util.cubrid.dba.tables.DbIndexKey.DB_INDEX_KEY; + + /** + * The table DBA.db_serial + */ + public static org.jooq.util.cubrid.dba.tables.DbSerial DB_SERIAL = org.jooq.util.cubrid.dba.tables.DbSerial.DB_SERIAL; + + /** + * No instances + */ + private Tables() {} +} diff --git a/jOOQ-meta/src/main/java/org/jooq/util/cubrid/dba/tables/DbAttribute.java b/jOOQ-meta/src/main/java/org/jooq/util/cubrid/dba/tables/DbAttribute.java new file mode 100644 index 00000000000..c225683d8ef --- /dev/null +++ b/jOOQ-meta/src/main/java/org/jooq/util/cubrid/dba/tables/DbAttribute.java @@ -0,0 +1,116 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.util.cubrid.dba.tables; + +/** + * This class is generated by jOOQ. + */ +@javax.annotation.Generated(value = {"http://www.jooq.org", "2.1.0"}, + comments = "This class is generated by jOOQ") +public class DbAttribute extends org.jooq.impl.TableImpl { + + private static final long serialVersionUID = 1673379172; + + /** + * The singleton instance of DBA.db_attribute + */ + public static final org.jooq.util.cubrid.dba.tables.DbAttribute DB_ATTRIBUTE = new org.jooq.util.cubrid.dba.tables.DbAttribute(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.Record.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + */ + public final org.jooq.TableField ATTR_NAME = createField("attr_name", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField CLASS_NAME = createField("class_name", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField ATTR_TYPE = createField("attr_type", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField DEF_ORDER = createField("def_order", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField FROM_CLASS_NAME = createField("from_class_name", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField FROM_ATTR_NAME = createField("from_attr_name", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField DATA_TYPE = createField("data_type", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField PREC = createField("prec", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField SCALE = createField("scale", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField CODE_SET = createField("code_set", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField DOMAIN_CLASS_NAME = createField("domain_class_name", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField DEFAULT_VALUE = createField("default_value", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField IS_NULLABLE = createField("is_nullable", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * No further instances allowed + */ + private DbAttribute() { + super("db_attribute", org.jooq.util.cubrid.dba.Dba.DBA); + } + + /** + * No further instances allowed + */ + private DbAttribute(java.lang.String alias) { + super(alias, org.jooq.util.cubrid.dba.Dba.DBA, org.jooq.util.cubrid.dba.tables.DbAttribute.DB_ATTRIBUTE); + } + + @Override + public org.jooq.util.cubrid.dba.tables.DbAttribute as(java.lang.String alias) { + return new org.jooq.util.cubrid.dba.tables.DbAttribute(alias); + } +} diff --git a/jOOQ-meta/src/main/java/org/jooq/util/cubrid/dba/tables/DbClass.java b/jOOQ-meta/src/main/java/org/jooq/util/cubrid/dba/tables/DbClass.java new file mode 100644 index 00000000000..35004f5a346 --- /dev/null +++ b/jOOQ-meta/src/main/java/org/jooq/util/cubrid/dba/tables/DbClass.java @@ -0,0 +1,81 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.util.cubrid.dba.tables; + +/** + * This class is generated by jOOQ. + */ +@javax.annotation.Generated(value = {"http://www.jooq.org", "2.1.0"}, + comments = "This class is generated by jOOQ") +public class DbClass extends org.jooq.impl.TableImpl { + + private static final long serialVersionUID = -742829459; + + /** + * The singleton instance of DBA.db_class + */ + public static final org.jooq.util.cubrid.dba.tables.DbClass DB_CLASS = new org.jooq.util.cubrid.dba.tables.DbClass(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.Record.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + */ + public final org.jooq.TableField CLASS_NAME = createField("class_name", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField OWNER_NAME = createField("owner_name", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField CLASS_TYPE = createField("class_type", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField IS_SYSTEM_CLASS = createField("is_system_class", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField PARTITIONED = createField("partitioned", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField IS_REUSE_OID_CLASS = createField("is_reuse_oid_class", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * No further instances allowed + */ + private DbClass() { + super("db_class", org.jooq.util.cubrid.dba.Dba.DBA); + } + + /** + * No further instances allowed + */ + private DbClass(java.lang.String alias) { + super(alias, org.jooq.util.cubrid.dba.Dba.DBA, org.jooq.util.cubrid.dba.tables.DbClass.DB_CLASS); + } + + @Override + public org.jooq.util.cubrid.dba.tables.DbClass as(java.lang.String alias) { + return new org.jooq.util.cubrid.dba.tables.DbClass(alias); + } +} diff --git a/jOOQ-meta/src/main/java/org/jooq/util/cubrid/dba/tables/DbIndex.java b/jOOQ-meta/src/main/java/org/jooq/util/cubrid/dba/tables/DbIndex.java new file mode 100644 index 00000000000..ed890ba1cef --- /dev/null +++ b/jOOQ-meta/src/main/java/org/jooq/util/cubrid/dba/tables/DbIndex.java @@ -0,0 +1,86 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.util.cubrid.dba.tables; + +/** + * This class is generated by jOOQ. + */ +@javax.annotation.Generated(value = {"http://www.jooq.org", "2.1.0"}, + comments = "This class is generated by jOOQ") +public class DbIndex extends org.jooq.impl.TableImpl { + + private static final long serialVersionUID = 114806504; + + /** + * The singleton instance of DBA.db_index + */ + public static final org.jooq.util.cubrid.dba.tables.DbIndex DB_INDEX = new org.jooq.util.cubrid.dba.tables.DbIndex(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.Record.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + */ + public final org.jooq.TableField INDEX_NAME = createField("index_name", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField IS_UNIQUE = createField("is_unique", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField IS_REVERSE = createField("is_reverse", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField CLASS_NAME = createField("class_name", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField KEY_COUNT = createField("key_count", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField IS_PRIMARY_KEY = createField("is_primary_key", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField IS_FOREIGN_KEY = createField("is_foreign_key", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * No further instances allowed + */ + private DbIndex() { + super("db_index", org.jooq.util.cubrid.dba.Dba.DBA); + } + + /** + * No further instances allowed + */ + private DbIndex(java.lang.String alias) { + super(alias, org.jooq.util.cubrid.dba.Dba.DBA, org.jooq.util.cubrid.dba.tables.DbIndex.DB_INDEX); + } + + @Override + public org.jooq.util.cubrid.dba.tables.DbIndex as(java.lang.String alias) { + return new org.jooq.util.cubrid.dba.tables.DbIndex(alias); + } +} diff --git a/jOOQ-meta/src/main/java/org/jooq/util/cubrid/dba/tables/DbIndexKey.java b/jOOQ-meta/src/main/java/org/jooq/util/cubrid/dba/tables/DbIndexKey.java new file mode 100644 index 00000000000..060b7ed374b --- /dev/null +++ b/jOOQ-meta/src/main/java/org/jooq/util/cubrid/dba/tables/DbIndexKey.java @@ -0,0 +1,81 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.util.cubrid.dba.tables; + +/** + * This class is generated by jOOQ. + */ +@javax.annotation.Generated(value = {"http://www.jooq.org", "2.1.0"}, + comments = "This class is generated by jOOQ") +public class DbIndexKey extends org.jooq.impl.TableImpl { + + private static final long serialVersionUID = -859845233; + + /** + * The singleton instance of DBA.db_index_key + */ + public static final org.jooq.util.cubrid.dba.tables.DbIndexKey DB_INDEX_KEY = new org.jooq.util.cubrid.dba.tables.DbIndexKey(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.Record.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + */ + public final org.jooq.TableField INDEX_NAME = createField("index_name", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField CLASS_NAME = createField("class_name", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField KEY_ATTR_NAME = createField("key_attr_name", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField KEY_ORDER = createField("key_order", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField ASC_DESC = createField("asc_desc", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField KEY_PREFIX_LENGTH = createField("key_prefix_length", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * No further instances allowed + */ + private DbIndexKey() { + super("db_index_key", org.jooq.util.cubrid.dba.Dba.DBA); + } + + /** + * No further instances allowed + */ + private DbIndexKey(java.lang.String alias) { + super(alias, org.jooq.util.cubrid.dba.Dba.DBA, org.jooq.util.cubrid.dba.tables.DbIndexKey.DB_INDEX_KEY); + } + + @Override + public org.jooq.util.cubrid.dba.tables.DbIndexKey as(java.lang.String alias) { + return new org.jooq.util.cubrid.dba.tables.DbIndexKey(alias); + } +} diff --git a/jOOQ-meta/src/main/java/org/jooq/util/cubrid/dba/tables/DbSerial.java b/jOOQ-meta/src/main/java/org/jooq/util/cubrid/dba/tables/DbSerial.java new file mode 100644 index 00000000000..1c5c78b44b3 --- /dev/null +++ b/jOOQ-meta/src/main/java/org/jooq/util/cubrid/dba/tables/DbSerial.java @@ -0,0 +1,111 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.util.cubrid.dba.tables; + +/** + * This class is generated by jOOQ. + */ +@javax.annotation.Generated(value = {"http://www.jooq.org", "2.1.0"}, + comments = "This class is generated by jOOQ") +public class DbSerial extends org.jooq.impl.TableImpl { + + private static final long serialVersionUID = -1925603367; + + /** + * The singleton instance of DBA.db_serial + */ + public static final org.jooq.util.cubrid.dba.tables.DbSerial DB_SERIAL = new org.jooq.util.cubrid.dba.tables.DbSerial(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.Record.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final org.jooq.TableField NAME = createField("name", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + * + * The SQL type of this item (OBJECT) could not be mapped.
+ * Deserialising this field might not work! + */ + public final org.jooq.TableField OWNER = createField("owner", org.jooq.util.cubrid.CUBRIDDataType.getDefaultDataType("OBJECT"), this); + + /** + * An uncommented item + */ + public final org.jooq.TableField CURRENT_VAL = createField("current_val", org.jooq.impl.SQLDataType.DECIMAL_INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField INCREMENT_VAL = createField("increment_val", org.jooq.impl.SQLDataType.DECIMAL_INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField MAX_VAL = createField("max_val", org.jooq.impl.SQLDataType.DECIMAL_INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField MIN_VAL = createField("min_val", org.jooq.impl.SQLDataType.DECIMAL_INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField CYCLIC = createField("cyclic", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField STARTED = createField("started", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField CLASS_NAME = createField("class_name", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField ATT_NAME = createField("att_name", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField CACHED_NUM = createField("cached_num", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * No further instances allowed + */ + private DbSerial() { + super("db_serial", org.jooq.util.cubrid.dba.Dba.DBA); + } + + /** + * No further instances allowed + */ + private DbSerial(java.lang.String alias) { + super(alias, org.jooq.util.cubrid.dba.Dba.DBA, org.jooq.util.cubrid.dba.tables.DbSerial.DB_SERIAL); + } + + @Override + public org.jooq.util.cubrid.dba.tables.DbSerial as(java.lang.String alias) { + return new org.jooq.util.cubrid.dba.tables.DbSerial(alias); + } +} diff --git a/jOOQ-meta/src/main/java/org/jooq/util/db2/DB2Database.java b/jOOQ-meta/src/main/java/org/jooq/util/db2/DB2Database.java new file mode 100644 index 00000000000..51c4175ded3 --- /dev/null +++ b/jOOQ-meta/src/main/java/org/jooq/util/db2/DB2Database.java @@ -0,0 +1,322 @@ +/** + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com + * All rights reserved. + * + * This software is licensed to you under the Apache License, Version 2.0 + * (the "License"); You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * 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 "jOOQ" 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 COPYRIGHT OWNER 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. + */ +package org.jooq.util.db2; + +import static org.jooq.impl.Factory.concat; +import static org.jooq.impl.Factory.two; +import static org.jooq.impl.Factory.val; +import static org.jooq.util.db2.syscat.tables.Datatypes.DATATYPES; +import static org.jooq.util.db2.syscat.tables.Functions.FUNCNAME; +import static org.jooq.util.db2.syscat.tables.Functions.FUNCSCHEMA; +import static org.jooq.util.db2.syscat.tables.Functions.FUNCTIONS; +import static org.jooq.util.db2.syscat.tables.Keycoluse.KEYCOLUSE; +import static org.jooq.util.db2.syscat.tables.Procedures.PROCEDURES; +import static org.jooq.util.db2.syscat.tables.Procedures.PROCNAME; +import static org.jooq.util.db2.syscat.tables.Procedures.PROCSCHEMA; +import static org.jooq.util.db2.syscat.tables.References.REFERENCES; +import static org.jooq.util.db2.syscat.tables.Sequences.SEQUENCES; +import static org.jooq.util.db2.syscat.tables.Tabconst.TABCONST; +import static org.jooq.util.db2.syscat.tables.Tables.TABLES; + +import java.sql.SQLException; +import java.util.ArrayList; +import java.util.List; + +import org.jooq.Record; +import org.jooq.SelectQuery; +import org.jooq.impl.Factory; +import org.jooq.util.AbstractDatabase; +import org.jooq.util.ArrayDefinition; +import org.jooq.util.ColumnDefinition; +import org.jooq.util.DataTypeDefinition; +import org.jooq.util.DefaultDataTypeDefinition; +import org.jooq.util.DefaultRelations; +import org.jooq.util.DefaultSequenceDefinition; +import org.jooq.util.EnumDefinition; +import org.jooq.util.PackageDefinition; +import org.jooq.util.RoutineDefinition; +import org.jooq.util.SchemaDefinition; +import org.jooq.util.SequenceDefinition; +import org.jooq.util.TableDefinition; +import org.jooq.util.UDTDefinition; +import org.jooq.util.db2.syscat.SyscatFactory; +import org.jooq.util.db2.syscat.tables.Datatypes; +import org.jooq.util.db2.syscat.tables.Keycoluse; +import org.jooq.util.db2.syscat.tables.References; +import org.jooq.util.db2.syscat.tables.Sequences; +import org.jooq.util.db2.syscat.tables.Tabconst; +import org.jooq.util.db2.syscat.tables.Tables; + +/** + * DB2 implementation of {@link AbstractDatabase} + * + * @author Espen Stromsnes + */ +public class DB2Database extends AbstractDatabase { + + @Override + public Factory create() { + return new SyscatFactory(getConnection()); + } + + @Override + protected void loadPrimaryKeys(DefaultRelations relations) throws SQLException { + for (Record record : fetchKeys("P")) { + SchemaDefinition schema = getSchema(record.getValue(Keycoluse.TABSCHEMA.trim())); + String key = record.getValue("constraint_name", String.class); + String tableName = record.getValue(Keycoluse.TABNAME); + String columnName = record.getValue(Keycoluse.COLNAME); + + TableDefinition table = getTable(schema, tableName); + if (table != null) { + relations.addPrimaryKey(key, table.getColumn(columnName)); + } + } + } + + @Override + protected void loadUniqueKeys(DefaultRelations relations) throws SQLException { + for (Record record : fetchKeys("U")) { + SchemaDefinition schema = getSchema(record.getValue(Keycoluse.TABSCHEMA.trim())); + String key = record.getValue("constraint_name", String.class); + String tableName = record.getValue(Keycoluse.TABNAME); + String columnName = record.getValue(Keycoluse.COLNAME); + + TableDefinition table = getTable(schema, tableName); + if (table != null) { + relations.addUniqueKey(key, table.getColumn(columnName)); + } + } + } + + private List fetchKeys(String constraintType) { + return create().select( + concat(Keycoluse.TABNAME, val("__"), Keycoluse.CONSTNAME).as("constraint_name"), + Keycoluse.TABSCHEMA.trim(), + Keycoluse.TABNAME, + Keycoluse.COLNAME) + .from(KEYCOLUSE) + .join(TABCONST) + .on(Keycoluse.TABSCHEMA.equal(Tabconst.TABSCHEMA)) + .and(Keycoluse.CONSTNAME.equal(Tabconst.CONSTNAME)) + .where(Keycoluse.TABSCHEMA.in(getInputSchemata())) + .and(Tabconst.TYPE.equal(constraintType)) + .orderBy( + Keycoluse.TABSCHEMA.asc(), + Keycoluse.TABNAME.asc(), + Keycoluse.CONSTNAME.asc(), + Keycoluse.COLSEQ.asc()) + .fetch(); + } + + @Override + protected void loadForeignKeys(DefaultRelations relations) throws SQLException { + for (Record record : create().select( + concat(References.TABNAME, val("__"), References.CONSTNAME).as("constraint_name"), + References.TABSCHEMA.trim(), + References.TABNAME, + References.FK_COLNAMES, + concat(References.REFTABNAME, val("__"), References.REFKEYNAME).as("referenced_constraint_name"), + References.REFTABSCHEMA.trim()) + .from(REFERENCES) + .where(References.TABSCHEMA.in(getInputSchemata())) + .orderBy( + References.TABSCHEMA, + References.TABNAME, + References.CONSTNAME, + References.FK_COLNAMES) + .fetch()) { + + SchemaDefinition foreignKeySchema = getSchema(record.getValue(References.TABSCHEMA.trim())); + SchemaDefinition uniqueKeySchema = getSchema(record.getValue(References.REFTABSCHEMA.trim())); + + String foreignKey = record.getValue("constraint_name", String.class); + String foreignKeyTableName = record.getValue(References.TABNAME); + String foreignKeyColumn = record.getValue(References.FK_COLNAMES); + String uniqueKey = record.getValue("referenced_constraint_name", String.class); + + TableDefinition foreignKeyTable = getTable(foreignKeySchema, foreignKeyTableName); + + if (foreignKeyTable != null) { + /* + * If a foreign key consists of several columns, all the columns + * are contained in a single database column (delimited with + * space) here we split the combined string into individual + * columns + */ + String[] referencingColumnNames = foreignKeyColumn.trim().split("[ ]+"); + for (int i = 0; i < referencingColumnNames.length; i++) { + ColumnDefinition column = foreignKeyTable.getColumn(referencingColumnNames[i]); + + relations.addForeignKey(foreignKey, uniqueKey, column, uniqueKeySchema); + } + } + } + } + + @Override + protected List getSequences0() throws SQLException { + List result = new ArrayList(); + + for (Record record : create().select( + Sequences.SEQSCHEMA.trim(), + Sequences.SEQNAME, + Sequences.SEQTYPE, + Datatypes.TYPENAME, + Sequences.PRECISION) + .from(SEQUENCES) + .join(DATATYPES) + .on(Sequences.DATATYPEID.equal(Datatypes.TYPEID.cast(Integer.class))) + .where(Sequences.SEQSCHEMA.in(getInputSchemata())) + .orderBy( + Sequences.SEQSCHEMA, + Sequences.SEQNAME) + .fetch()) { + + SchemaDefinition schema = getSchema(record.getValue(Sequences.SEQSCHEMA.trim())); + + DataTypeDefinition type = new DefaultDataTypeDefinition( + this, schema, + record.getValue(Datatypes.TYPENAME), + 0, + record.getValue(Sequences.PRECISION), + 0); + + result.add(new DefaultSequenceDefinition( + schema, + record.getValue(Sequences.SEQNAME), + type)); + } + + return result; + } + + @Override + protected List getTables0() throws SQLException { + List result = new ArrayList(); + + SelectQuery q = create().selectQuery(); + q.addFrom(TABLES); + q.addSelect(Tables.TABSCHEMA.trim()); + q.addSelect(Tables.TABNAME); + q.addConditions(Tables.TABSCHEMA.in(getInputSchemata())); + q.addConditions(Tables.TYPE.in("T", "V")); // tables and views + q.addOrderBy(Tables.TABNAME); + q.execute(); + + for (Record record : q.getResult()) { + SchemaDefinition schema = getSchema(record.getValue(Tables.TABSCHEMA.trim())); + String name = record.getValue(Tables.TABNAME); + String comment = ""; + + DB2TableDefinition table = new DB2TableDefinition(schema, name, comment); + result.add(table); + + } + return result; + } + + @Override + protected List getRoutines0() throws SQLException { + List result = new ArrayList(); + + for (Record record : create() + .select().from(create() + .select( + PROCSCHEMA.trim().as("schema"), + PROCNAME.as("name"), + val(true).as("isProcedure")) + .from(PROCEDURES) + .where(PROCSCHEMA.in(getInputSchemata())) + .unionAll(create() + .select( + FUNCSCHEMA.trim().as("schema"), + FUNCNAME.as("name"), + val(false).as("isProcedure")) + .from(FUNCTIONS) + .where(FUNCSCHEMA.in(getInputSchemata())))) + .orderBy(two()) + .fetch()) { + + result.add(new DB2RoutineDefinition( + getSchema(record.getValueAsString("schema")), + record.getValueAsString("name"), + null, + record.getValueAsBoolean("isProcedure"))); + } + + return result; + } + + @Override + protected List getPackages0() throws SQLException { + List result = new ArrayList(); + return result; + } + + @Override + protected List getEnums0() throws SQLException { + List result = new ArrayList(); + return result; + } + + @Override + protected List getUDTs0() throws SQLException { + List result = new ArrayList(); + + for (Record record : create().selectDistinct( + Datatypes.TYPESCHEMA.trim(), + Datatypes.TYPENAME) + .from(DATATYPES) + .where(Datatypes.TYPESCHEMA.in(getInputSchemata())) + .orderBy(Datatypes.TYPENAME) + .fetch()) { + + result.add(new DB2UDTDefinition( + getSchema(record.getValue(Datatypes.TYPESCHEMA.trim())), + record.getValue(Datatypes.TYPENAME), + null)); + } + + return result; + } + + @Override + protected List getArrays0() throws SQLException { + List result = new ArrayList(); + return result; + } +} diff --git a/jOOQ-meta/src/main/java/org/jooq/util/db2/DB2RoutineDefinition.java b/jOOQ-meta/src/main/java/org/jooq/util/db2/DB2RoutineDefinition.java new file mode 100644 index 00000000000..7b97096ef9b --- /dev/null +++ b/jOOQ-meta/src/main/java/org/jooq/util/db2/DB2RoutineDefinition.java @@ -0,0 +1,178 @@ +/** + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com + * All rights reserved. + * + * This software is licensed to you under the Apache License, Version 2.0 + * (the "License"); You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * 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 "jOOQ" 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 COPYRIGHT OWNER 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. + */ +package org.jooq.util.db2; + +import static org.jooq.util.db2.syscat.tables.Funcparms.FUNCPARMS; +import static org.jooq.util.db2.syscat.tables.Functions.FUNCTIONS; +import static org.jooq.util.db2.syscat.tables.Procparms.PROCPARMS; + +import java.sql.SQLException; + +import org.jooq.Record; +import org.jooq.util.AbstractRoutineDefinition; +import org.jooq.util.DataTypeDefinition; +import org.jooq.util.DefaultDataTypeDefinition; +import org.jooq.util.DefaultParameterDefinition; +import org.jooq.util.InOutDefinition; +import org.jooq.util.ParameterDefinition; +import org.jooq.util.SchemaDefinition; +import org.jooq.util.db2.syscat.tables.Funcparms; +import org.jooq.util.db2.syscat.tables.Functions; +import org.jooq.util.db2.syscat.tables.Procparms; + +/** + * DB2 implementation of {@link AbstractRoutineDefinition} + * + * @author Espen Stromsnes + * @author Lukas Eder + */ +public class DB2RoutineDefinition extends AbstractRoutineDefinition { + + private final boolean isProcedure; + + public DB2RoutineDefinition(SchemaDefinition schema, String name, String comment, boolean isProcedure) { + super(schema, null, name, comment, null); + + this.isProcedure = isProcedure; + } + + @Override + protected void init0() throws SQLException { + if (isProcedure) { + initP(); + } + else { + initF(); + } + } + + private void initF() { + for (Record record : create() + .select( + Funcparms.ROWTYPE, + Funcparms.TYPENAME, + Funcparms.LENGTH, + Funcparms.SCALE, + Funcparms.ORDINAL, + Funcparms.PARMNAME) + .from(FUNCPARMS) + .join(FUNCTIONS) + .on( + Funcparms.FUNCSCHEMA.equal(Functions.FUNCSCHEMA), + Funcparms.FUNCNAME.equal(Functions.FUNCNAME)) + .where( + Funcparms.FUNCSCHEMA.equal(getSchema().getName()), + Funcparms.FUNCNAME.equal(getName()), + Functions.ORIGIN.equal("Q")) + .orderBy( + Funcparms.FUNCNAME.asc(), + Funcparms.ORDINAL.asc()) + .fetch()) { + + String rowType = record.getValue(Funcparms.ROWTYPE); + String dataType = record.getValue(Funcparms.TYPENAME); + Integer precision = record.getValue(Funcparms.LENGTH); + Short scale = record.getValue(Funcparms.SCALE); + int position = record.getValue(Funcparms.ORDINAL); + String paramName = record.getValue(Funcparms.PARMNAME); + + // result after casting + if ("C".equals(rowType)) { + DataTypeDefinition type = new DefaultDataTypeDefinition( + getDatabase(), + getSchema(), + dataType, + precision, + precision, + scale); + + addParameter(InOutDefinition.RETURN, new DefaultParameterDefinition(this, "RETURN_VALUE", -1, type)); + } + + // parameter + else if ("P".equals(rowType)) { + DataTypeDefinition type = new DefaultDataTypeDefinition( + getDatabase(), + getSchema(), + dataType, + precision, + precision, + scale); + + ParameterDefinition column = new DefaultParameterDefinition(this, paramName, position, type); + + addParameter(InOutDefinition.IN, column); + } + + // result before casting + else { + } + } + } + + private void initP() { + for (Record record : create().select( + Procparms.PARMNAME, + Procparms.TYPENAME, + Procparms.LENGTH, + Procparms.SCALE, + Procparms.ORDINAL, + Procparms.PARM_MODE) + .from(PROCPARMS) + .where(Procparms.PROCSCHEMA.equal(getSchema().getName())) + .and(Procparms.PROCNAME.equal(getName())) + .orderBy(Procparms.ORDINAL).fetch()) { + + String paramMode = record.getValue(Procparms.PARM_MODE); + + DataTypeDefinition type = new DefaultDataTypeDefinition( + getDatabase(), + getSchema(), + record.getValue(Procparms.TYPENAME), + record.getValue(Procparms.LENGTH), + record.getValue(Procparms.LENGTH), + record.getValue(Procparms.SCALE)); + + addParameter( + InOutDefinition.getFromString(paramMode), + new DefaultParameterDefinition( + this, + record.getValue(Procparms.PARMNAME), + record.getValue(Procparms.ORDINAL), + type)); + } + } +} diff --git a/jOOQ-meta/src/main/java/org/jooq/util/db2/DB2TableDefinition.java b/jOOQ-meta/src/main/java/org/jooq/util/db2/DB2TableDefinition.java new file mode 100644 index 00000000000..e3325fc4d8a --- /dev/null +++ b/jOOQ-meta/src/main/java/org/jooq/util/db2/DB2TableDefinition.java @@ -0,0 +1,104 @@ +/** + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com + * All rights reserved. + * + * This software is licensed to you under the Apache License, Version 2.0 + * (the "License"); You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * 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 "jOOQ" 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 COPYRIGHT OWNER 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. + */ +package org.jooq.util.db2; + +import static org.jooq.util.db2.syscat.tables.Columns.COLUMNS; + +import java.sql.SQLException; +import java.util.ArrayList; +import java.util.List; + +import org.jooq.Record; +import org.jooq.util.AbstractTableDefinition; +import org.jooq.util.ColumnDefinition; +import org.jooq.util.DataTypeDefinition; +import org.jooq.util.DefaultColumnDefinition; +import org.jooq.util.DefaultDataTypeDefinition; +import org.jooq.util.SchemaDefinition; +import org.jooq.util.db2.syscat.tables.Columns; + +/** + * DB2 table definition + * + * @author Espen Stromsnes + */ +public class DB2TableDefinition extends AbstractTableDefinition { + + public DB2TableDefinition(SchemaDefinition schema, String name, String comment) { + super(schema, name, comment); + } + + @Override + public List getElements0() throws SQLException { + List result = new ArrayList(); + + for (Record record : create().select( + Columns.COLNAME, + Columns.COLNO, + Columns.TYPENAME, + Columns.LENGTH, + Columns.SCALE, + Columns.IDENTITY, + Columns.NULLS) + .from(COLUMNS) + .where(Columns.TABSCHEMA.equal(getSchema().getName())) + .and(Columns.TABNAME.equal(getName())) + .orderBy(Columns.COLNO) + .fetch()) { + + DataTypeDefinition type = new DefaultDataTypeDefinition( + getDatabase(), + getSchema(), + record.getValue(Columns.TYPENAME), + record.getValue(Columns.LENGTH), + record.getValue(Columns.LENGTH), + record.getValue(Columns.SCALE)); + + ColumnDefinition column = new DefaultColumnDefinition( + getDatabase().getTable(getSchema(), getName()), + record.getValue(Columns.COLNAME), + record.getValue(Columns.COLNO), + type, + record.getValue(Columns.NULLS, boolean.class), + record.getValue(Columns.IDENTITY, boolean.class), + null); + + result.add(column); + } + + return result; + } +} diff --git a/jOOQ-meta/src/main/java/org/jooq/util/db2/DB2UDTDefinition.java b/jOOQ-meta/src/main/java/org/jooq/util/db2/DB2UDTDefinition.java new file mode 100644 index 00000000000..30c842ba8ac --- /dev/null +++ b/jOOQ-meta/src/main/java/org/jooq/util/db2/DB2UDTDefinition.java @@ -0,0 +1,105 @@ +/** + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com + * All rights reserved. + * + * This software is licensed to you under the Apache License, Version 2.0 + * (the "License"); You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * 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 "jOOQ" 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 COPYRIGHT OWNER 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. + */ +package org.jooq.util.db2; + +import static org.jooq.util.db2.syscat.tables.Attributes.ATTRIBUTES; + +import java.sql.SQLException; +import java.util.ArrayList; +import java.util.Collections; +import java.util.List; + +import org.jooq.Record; +import org.jooq.util.AbstractUDTDefinition; +import org.jooq.util.AttributeDefinition; +import org.jooq.util.DataTypeDefinition; +import org.jooq.util.DefaultAttributeDefinition; +import org.jooq.util.DefaultDataTypeDefinition; +import org.jooq.util.RoutineDefinition; +import org.jooq.util.SchemaDefinition; +import org.jooq.util.db2.syscat.tables.Attributes; + +/** + * DB2 UDT definition + * + * @author Espen Stromsnes + */ +public class DB2UDTDefinition extends AbstractUDTDefinition { + + public DB2UDTDefinition(SchemaDefinition schema, String name, String comment) { + super(schema, name, comment); + } + + @Override + protected List getElements0() throws SQLException { + List result = new ArrayList(); + + for (Record record : create().select( + Attributes.ATTR_NAME, + Attributes.ORDINAL, + Attributes.ATTR_TYPENAME, + Attributes.LENGTH, + Attributes.SCALE) + .from(ATTRIBUTES) + .where(Attributes.TYPESCHEMA.equal(getSchema().getName())) + .and(Attributes.TYPENAME.equal(getName())) + .orderBy(Attributes.ORDINAL).fetch()) { + + DataTypeDefinition type = new DefaultDataTypeDefinition( + getDatabase(), + getSchema(), + record.getValue(Attributes.ATTR_TYPENAME), + record.getValue(Attributes.LENGTH), + record.getValue(Attributes.LENGTH), + record.getValue(Attributes.SCALE)); + + AttributeDefinition column = new DefaultAttributeDefinition( + this, + record.getValue(Attributes.ATTR_NAME), + record.getValue(Attributes.ORDINAL), + type); + + result.add(column); + } + + return result; + } + + @Override + protected List getRoutines0() { + return Collections.emptyList(); + } +} diff --git a/jOOQ-meta/src/main/java/org/jooq/util/db2/syscat/Syscat.java b/jOOQ-meta/src/main/java/org/jooq/util/db2/syscat/Syscat.java new file mode 100644 index 00000000000..d903b1aecf6 --- /dev/null +++ b/jOOQ-meta/src/main/java/org/jooq/util/db2/syscat/Syscat.java @@ -0,0 +1,43 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.util.db2.syscat; + +/** + * This class is generated by jOOQ. + */ +@javax.annotation.Generated(value = {"http://www.jooq.org", "2.0.6"}, + comments = "This class is generated by jOOQ") +public class Syscat extends org.jooq.impl.SchemaImpl { + + private static final long serialVersionUID = 1387661164; + + /** + * The singleton instance of SYSCAT + */ + public static final Syscat SYSCAT = new Syscat(); + + /** + * No further instances allowed + */ + private Syscat() { + super("SYSCAT"); + } + + @Override + public final java.util.List> getTables() { + return java.util.Arrays.>asList( + org.jooq.util.db2.syscat.tables.Attributes.ATTRIBUTES, + org.jooq.util.db2.syscat.tables.Columns.COLUMNS, + org.jooq.util.db2.syscat.tables.Datatypes.DATATYPES, + org.jooq.util.db2.syscat.tables.Funcparms.FUNCPARMS, + org.jooq.util.db2.syscat.tables.Functions.FUNCTIONS, + org.jooq.util.db2.syscat.tables.Keycoluse.KEYCOLUSE, + org.jooq.util.db2.syscat.tables.Procedures.PROCEDURES, + org.jooq.util.db2.syscat.tables.Procparms.PROCPARMS, + org.jooq.util.db2.syscat.tables.References.REFERENCES, + org.jooq.util.db2.syscat.tables.Sequences.SEQUENCES, + org.jooq.util.db2.syscat.tables.Tabconst.TABCONST, + org.jooq.util.db2.syscat.tables.Tables.TABLES); + } +} diff --git a/jOOQ-meta/src/main/java/org/jooq/util/db2/syscat/SyscatFactory.java b/jOOQ-meta/src/main/java/org/jooq/util/db2/syscat/SyscatFactory.java new file mode 100644 index 00000000000..dc314957690 --- /dev/null +++ b/jOOQ-meta/src/main/java/org/jooq/util/db2/syscat/SyscatFactory.java @@ -0,0 +1,33 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.util.db2.syscat; + +/** + * This class is generated by jOOQ. + */ +@javax.annotation.Generated(value = {"http://www.jooq.org", "2.0.6"}, + comments = "This class is generated by jOOQ") +public class SyscatFactory extends org.jooq.util.db2.DB2Factory { + + private static final long serialVersionUID = -372754065; + + /** + * Create a factory with a connection + * + * @param connection The connection to use with objects created from this factory + */ + public SyscatFactory(java.sql.Connection connection) { + super(connection); + } + + /** + * Create a factory with a connection and some settings + * + * @param connection The connection to use with objects created from this factory + * @param settings The settings to apply to objects created from this factory + */ + public SyscatFactory(java.sql.Connection connection, org.jooq.conf.Settings settings) { + super(connection, settings); + } +} diff --git a/jOOQ-meta/src/main/java/org/jooq/util/db2/syscat/Tables.java b/jOOQ-meta/src/main/java/org/jooq/util/db2/syscat/Tables.java new file mode 100644 index 00000000000..49b8baf7346 --- /dev/null +++ b/jOOQ-meta/src/main/java/org/jooq/util/db2/syscat/Tables.java @@ -0,0 +1,79 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.util.db2.syscat; + +/** + * This class is generated by jOOQ. + * + * Convenience access to all tables in SYSCAT + */ +@javax.annotation.Generated(value = {"http://www.jooq.org", "2.0.6"}, + comments = "This class is generated by jOOQ") +public final class Tables { + + /** + * The table SYSCAT.ATTRIBUTES + */ + public static org.jooq.util.db2.syscat.tables.Attributes ATTRIBUTES = org.jooq.util.db2.syscat.tables.Attributes.ATTRIBUTES; + + /** + * The table SYSCAT.COLUMNS + */ + public static org.jooq.util.db2.syscat.tables.Columns COLUMNS = org.jooq.util.db2.syscat.tables.Columns.COLUMNS; + + /** + * The table SYSCAT.DATATYPES + */ + public static org.jooq.util.db2.syscat.tables.Datatypes DATATYPES = org.jooq.util.db2.syscat.tables.Datatypes.DATATYPES; + + /** + * The table SYSCAT.FUNCPARMS + */ + public static org.jooq.util.db2.syscat.tables.Funcparms FUNCPARMS = org.jooq.util.db2.syscat.tables.Funcparms.FUNCPARMS; + + /** + * The table SYSCAT.FUNCTIONS + */ + public static org.jooq.util.db2.syscat.tables.Functions FUNCTIONS = org.jooq.util.db2.syscat.tables.Functions.FUNCTIONS; + + /** + * The table SYSCAT.KEYCOLUSE + */ + public static org.jooq.util.db2.syscat.tables.Keycoluse KEYCOLUSE = org.jooq.util.db2.syscat.tables.Keycoluse.KEYCOLUSE; + + /** + * The table SYSCAT.PROCEDURES + */ + public static org.jooq.util.db2.syscat.tables.Procedures PROCEDURES = org.jooq.util.db2.syscat.tables.Procedures.PROCEDURES; + + /** + * The table SYSCAT.PROCPARMS + */ + public static org.jooq.util.db2.syscat.tables.Procparms PROCPARMS = org.jooq.util.db2.syscat.tables.Procparms.PROCPARMS; + + /** + * The table SYSCAT.REFERENCES + */ + public static org.jooq.util.db2.syscat.tables.References REFERENCES = org.jooq.util.db2.syscat.tables.References.REFERENCES; + + /** + * The table SYSCAT.SEQUENCES + */ + public static org.jooq.util.db2.syscat.tables.Sequences SEQUENCES = org.jooq.util.db2.syscat.tables.Sequences.SEQUENCES; + + /** + * The table SYSCAT.TABCONST + */ + public static org.jooq.util.db2.syscat.tables.Tabconst TABCONST = org.jooq.util.db2.syscat.tables.Tabconst.TABCONST; + + /** + * The table SYSCAT.TABLES + */ + public static org.jooq.util.db2.syscat.tables.Tables TABLES = org.jooq.util.db2.syscat.tables.Tables.TABLES; + + /** + * No instances + */ + private Tables() {} +} diff --git a/jOOQ-meta/src/main/java/org/jooq/util/db2/syscat/tables/Attributes.java b/jOOQ-meta/src/main/java/org/jooq/util/db2/syscat/tables/Attributes.java new file mode 100644 index 00000000000..43ee4dd0ece --- /dev/null +++ b/jOOQ-meta/src/main/java/org/jooq/util/db2/syscat/tables/Attributes.java @@ -0,0 +1,154 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.util.db2.syscat.tables; + +/** + * This class is generated by jOOQ. + */ +@javax.annotation.Generated(value = {"http://www.jooq.org", "2.0.6"}, + comments = "This class is generated by jOOQ") +public class Attributes extends org.jooq.impl.TableImpl { + + private static final long serialVersionUID = 1544180123; + + /** + * The singleton instance of SYSCAT.ATTRIBUTES + */ + public static final org.jooq.util.db2.syscat.tables.Attributes ATTRIBUTES = new org.jooq.util.db2.syscat.tables.Attributes(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.Record.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + */ + public static final org.jooq.TableField TYPESCHEMA = createField("TYPESCHEMA", org.jooq.impl.SQLDataType.VARCHAR, ATTRIBUTES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField TYPEMODULENAME = createField("TYPEMODULENAME", org.jooq.impl.SQLDataType.VARCHAR, ATTRIBUTES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField TYPENAME = createField("TYPENAME", org.jooq.impl.SQLDataType.VARCHAR, ATTRIBUTES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField ATTR_NAME = createField("ATTR_NAME", org.jooq.impl.SQLDataType.VARCHAR, ATTRIBUTES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField ATTR_TYPESCHEMA = createField("ATTR_TYPESCHEMA", org.jooq.impl.SQLDataType.VARCHAR, ATTRIBUTES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField ATTR_TYPEMODULENAME = createField("ATTR_TYPEMODULENAME", org.jooq.impl.SQLDataType.VARCHAR, ATTRIBUTES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField ATTR_TYPENAME = createField("ATTR_TYPENAME", org.jooq.impl.SQLDataType.VARCHAR, ATTRIBUTES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField TARGET_TYPESCHEMA = createField("TARGET_TYPESCHEMA", org.jooq.impl.SQLDataType.VARCHAR, ATTRIBUTES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField TARGET_TYPEMODULENAME = createField("TARGET_TYPEMODULENAME", org.jooq.impl.SQLDataType.VARCHAR, ATTRIBUTES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField TARGET_TYPENAME = createField("TARGET_TYPENAME", org.jooq.impl.SQLDataType.VARCHAR, ATTRIBUTES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField SOURCE_TYPESCHEMA = createField("SOURCE_TYPESCHEMA", org.jooq.impl.SQLDataType.VARCHAR, ATTRIBUTES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField SOURCE_TYPEMODULENAME = createField("SOURCE_TYPEMODULENAME", org.jooq.impl.SQLDataType.VARCHAR, ATTRIBUTES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField SOURCE_TYPENAME = createField("SOURCE_TYPENAME", org.jooq.impl.SQLDataType.VARCHAR, ATTRIBUTES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField ORDINAL = createField("ORDINAL", org.jooq.impl.SQLDataType.SMALLINT, ATTRIBUTES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField LENGTH = createField("LENGTH", org.jooq.impl.SQLDataType.INTEGER, ATTRIBUTES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField SCALE = createField("SCALE", org.jooq.impl.SQLDataType.SMALLINT, ATTRIBUTES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField CODEPAGE = createField("CODEPAGE", org.jooq.impl.SQLDataType.SMALLINT, ATTRIBUTES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField COLLATIONSCHEMA = createField("COLLATIONSCHEMA", org.jooq.impl.SQLDataType.VARCHAR, ATTRIBUTES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField COLLATIONNAME = createField("COLLATIONNAME", org.jooq.impl.SQLDataType.VARCHAR, ATTRIBUTES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField LOGGED = createField("LOGGED", org.jooq.impl.SQLDataType.CHAR, ATTRIBUTES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField COMPACT = createField("COMPACT", org.jooq.impl.SQLDataType.CHAR, ATTRIBUTES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField DL_FEATURES = createField("DL_FEATURES", org.jooq.impl.SQLDataType.CHAR, ATTRIBUTES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField JAVA_FIELDNAME = createField("JAVA_FIELDNAME", org.jooq.impl.SQLDataType.VARCHAR, ATTRIBUTES); + + /** + * No further instances allowed + */ + private Attributes() { + super("ATTRIBUTES", org.jooq.util.db2.syscat.Syscat.SYSCAT); + } +} diff --git a/jOOQ-meta/src/main/java/org/jooq/util/db2/syscat/tables/Columns.java b/jOOQ-meta/src/main/java/org/jooq/util/db2/syscat/tables/Columns.java new file mode 100644 index 00000000000..4f29caf64d4 --- /dev/null +++ b/jOOQ-meta/src/main/java/org/jooq/util/db2/syscat/tables/Columns.java @@ -0,0 +1,279 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.util.db2.syscat.tables; + +/** + * This class is generated by jOOQ. + */ +@javax.annotation.Generated(value = {"http://www.jooq.org", "2.0.6"}, + comments = "This class is generated by jOOQ") +public class Columns extends org.jooq.impl.TableImpl { + + private static final long serialVersionUID = 2033717233; + + /** + * The singleton instance of SYSCAT.COLUMNS + */ + public static final org.jooq.util.db2.syscat.tables.Columns COLUMNS = new org.jooq.util.db2.syscat.tables.Columns(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.Record.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + */ + public static final org.jooq.TableField TABSCHEMA = createField("TABSCHEMA", org.jooq.impl.SQLDataType.VARCHAR, COLUMNS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField TABNAME = createField("TABNAME", org.jooq.impl.SQLDataType.VARCHAR, COLUMNS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField COLNAME = createField("COLNAME", org.jooq.impl.SQLDataType.VARCHAR, COLUMNS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField COLNO = createField("COLNO", org.jooq.impl.SQLDataType.SMALLINT, COLUMNS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField TYPESCHEMA = createField("TYPESCHEMA", org.jooq.impl.SQLDataType.VARCHAR, COLUMNS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField TYPENAME = createField("TYPENAME", org.jooq.impl.SQLDataType.VARCHAR, COLUMNS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField LENGTH = createField("LENGTH", org.jooq.impl.SQLDataType.INTEGER, COLUMNS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField SCALE = createField("SCALE", org.jooq.impl.SQLDataType.SMALLINT, COLUMNS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField DEFAULT = createField("DEFAULT", org.jooq.impl.SQLDataType.VARCHAR, COLUMNS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField NULLS = createField("NULLS", org.jooq.impl.SQLDataType.CHAR, COLUMNS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField CODEPAGE = createField("CODEPAGE", org.jooq.impl.SQLDataType.SMALLINT, COLUMNS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField COLLATIONSCHEMA = createField("COLLATIONSCHEMA", org.jooq.impl.SQLDataType.VARCHAR, COLUMNS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField COLLATIONNAME = createField("COLLATIONNAME", org.jooq.impl.SQLDataType.VARCHAR, COLUMNS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField LOGGED = createField("LOGGED", org.jooq.impl.SQLDataType.CHAR, COLUMNS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField COMPACT = createField("COMPACT", org.jooq.impl.SQLDataType.CHAR, COLUMNS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField COLCARD = createField("COLCARD", org.jooq.impl.SQLDataType.BIGINT, COLUMNS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField HIGH2KEY = createField("HIGH2KEY", org.jooq.impl.SQLDataType.VARCHAR, COLUMNS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField LOW2KEY = createField("LOW2KEY", org.jooq.impl.SQLDataType.VARCHAR, COLUMNS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField AVGCOLLEN = createField("AVGCOLLEN", org.jooq.impl.SQLDataType.INTEGER, COLUMNS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField KEYSEQ = createField("KEYSEQ", org.jooq.impl.SQLDataType.SMALLINT, COLUMNS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField PARTKEYSEQ = createField("PARTKEYSEQ", org.jooq.impl.SQLDataType.SMALLINT, COLUMNS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField NQUANTILES = createField("NQUANTILES", org.jooq.impl.SQLDataType.SMALLINT, COLUMNS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField NMOSTFREQ = createField("NMOSTFREQ", org.jooq.impl.SQLDataType.SMALLINT, COLUMNS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField NUMNULLS = createField("NUMNULLS", org.jooq.impl.SQLDataType.BIGINT, COLUMNS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField TARGET_TYPESCHEMA = createField("TARGET_TYPESCHEMA", org.jooq.impl.SQLDataType.VARCHAR, COLUMNS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField TARGET_TYPENAME = createField("TARGET_TYPENAME", org.jooq.impl.SQLDataType.VARCHAR, COLUMNS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField SCOPE_TABSCHEMA = createField("SCOPE_TABSCHEMA", org.jooq.impl.SQLDataType.VARCHAR, COLUMNS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField SCOPE_TABNAME = createField("SCOPE_TABNAME", org.jooq.impl.SQLDataType.VARCHAR, COLUMNS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField SOURCE_TABSCHEMA = createField("SOURCE_TABSCHEMA", org.jooq.impl.SQLDataType.VARCHAR, COLUMNS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField SOURCE_TABNAME = createField("SOURCE_TABNAME", org.jooq.impl.SQLDataType.VARCHAR, COLUMNS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField DL_FEATURES = createField("DL_FEATURES", org.jooq.impl.SQLDataType.CHAR, COLUMNS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField SPECIAL_PROPS = createField("SPECIAL_PROPS", org.jooq.impl.SQLDataType.CHAR, COLUMNS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField HIDDEN = createField("HIDDEN", org.jooq.impl.SQLDataType.CHAR, COLUMNS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField INLINE_LENGTH = createField("INLINE_LENGTH", org.jooq.impl.SQLDataType.INTEGER, COLUMNS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField PCTINLINED = createField("PCTINLINED", org.jooq.impl.SQLDataType.SMALLINT, COLUMNS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField IDENTITY = createField("IDENTITY", org.jooq.impl.SQLDataType.CHAR, COLUMNS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField ROWCHANGETIMESTAMP = createField("ROWCHANGETIMESTAMP", org.jooq.impl.SQLDataType.CHAR, COLUMNS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField GENERATED = createField("GENERATED", org.jooq.impl.SQLDataType.CHAR, COLUMNS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField TEXT = createField("TEXT", org.jooq.impl.SQLDataType.CLOB, COLUMNS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField COMPRESS = createField("COMPRESS", org.jooq.impl.SQLDataType.CHAR, COLUMNS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField AVGDISTINCTPERPAGE = createField("AVGDISTINCTPERPAGE", org.jooq.impl.SQLDataType.DOUBLE, COLUMNS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField PAGEVARIANCERATIO = createField("PAGEVARIANCERATIO", org.jooq.impl.SQLDataType.DOUBLE, COLUMNS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField SUB_COUNT = createField("SUB_COUNT", org.jooq.impl.SQLDataType.SMALLINT, COLUMNS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField SUB_DELIM_LENGTH = createField("SUB_DELIM_LENGTH", org.jooq.impl.SQLDataType.SMALLINT, COLUMNS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField AVGCOLLENCHAR = createField("AVGCOLLENCHAR", org.jooq.impl.SQLDataType.INTEGER, COLUMNS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField IMPLICITVALUE = createField("IMPLICITVALUE", org.jooq.impl.SQLDataType.VARCHAR, COLUMNS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField SECLABELNAME = createField("SECLABELNAME", org.jooq.impl.SQLDataType.VARCHAR, COLUMNS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField REMARKS = createField("REMARKS", org.jooq.impl.SQLDataType.VARCHAR, COLUMNS); + + /** + * No further instances allowed + */ + private Columns() { + super("COLUMNS", org.jooq.util.db2.syscat.Syscat.SYSCAT); + } +} diff --git a/jOOQ-meta/src/main/java/org/jooq/util/db2/syscat/tables/Datatypes.java b/jOOQ-meta/src/main/java/org/jooq/util/db2/syscat/tables/Datatypes.java new file mode 100644 index 00000000000..8e206eb9ddb --- /dev/null +++ b/jOOQ-meta/src/main/java/org/jooq/util/db2/syscat/tables/Datatypes.java @@ -0,0 +1,234 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.util.db2.syscat.tables; + +/** + * This class is generated by jOOQ. + */ +@javax.annotation.Generated(value = {"http://www.jooq.org", "2.0.6"}, + comments = "This class is generated by jOOQ") +public class Datatypes extends org.jooq.impl.TableImpl { + + private static final long serialVersionUID = -678430722; + + /** + * The singleton instance of SYSCAT.DATATYPES + */ + public static final org.jooq.util.db2.syscat.tables.Datatypes DATATYPES = new org.jooq.util.db2.syscat.tables.Datatypes(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.Record.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + */ + public static final org.jooq.TableField TYPESCHEMA = createField("TYPESCHEMA", org.jooq.impl.SQLDataType.VARCHAR, DATATYPES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField TYPEMODULENAME = createField("TYPEMODULENAME", org.jooq.impl.SQLDataType.VARCHAR, DATATYPES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField TYPENAME = createField("TYPENAME", org.jooq.impl.SQLDataType.VARCHAR, DATATYPES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField OWNER = createField("OWNER", org.jooq.impl.SQLDataType.VARCHAR, DATATYPES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField OWNERTYPE = createField("OWNERTYPE", org.jooq.impl.SQLDataType.CHAR, DATATYPES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField SOURCESCHEMA = createField("SOURCESCHEMA", org.jooq.impl.SQLDataType.VARCHAR, DATATYPES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField SOURCEMODULENAME = createField("SOURCEMODULENAME", org.jooq.impl.SQLDataType.VARCHAR, DATATYPES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField SOURCENAME = createField("SOURCENAME", org.jooq.impl.SQLDataType.VARCHAR, DATATYPES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField METATYPE = createField("METATYPE", org.jooq.impl.SQLDataType.CHAR, DATATYPES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField TYPEID = createField("TYPEID", org.jooq.impl.SQLDataType.SMALLINT, DATATYPES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField TYPEMODULEID = createField("TYPEMODULEID", org.jooq.impl.SQLDataType.INTEGER, DATATYPES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField SOURCETYPEID = createField("SOURCETYPEID", org.jooq.impl.SQLDataType.SMALLINT, DATATYPES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField SOURCEMODULEID = createField("SOURCEMODULEID", org.jooq.impl.SQLDataType.INTEGER, DATATYPES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField PUBLISHED = createField("PUBLISHED", org.jooq.impl.SQLDataType.CHAR, DATATYPES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField LENGTH = createField("LENGTH", org.jooq.impl.SQLDataType.INTEGER, DATATYPES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField SCALE = createField("SCALE", org.jooq.impl.SQLDataType.SMALLINT, DATATYPES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField CODEPAGE = createField("CODEPAGE", org.jooq.impl.SQLDataType.SMALLINT, DATATYPES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField COLLATIONSCHEMA = createField("COLLATIONSCHEMA", org.jooq.impl.SQLDataType.VARCHAR, DATATYPES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField COLLATIONNAME = createField("COLLATIONNAME", org.jooq.impl.SQLDataType.VARCHAR, DATATYPES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField ARRAY_LENGTH = createField("ARRAY_LENGTH", org.jooq.impl.SQLDataType.INTEGER, DATATYPES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField ARRAYINDEXTYPESCHEMA = createField("ARRAYINDEXTYPESCHEMA", org.jooq.impl.SQLDataType.VARCHAR, DATATYPES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField ARRAYINDEXTYPENAME = createField("ARRAYINDEXTYPENAME", org.jooq.impl.SQLDataType.VARCHAR, DATATYPES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField ARRAYINDEXTYPEID = createField("ARRAYINDEXTYPEID", org.jooq.impl.SQLDataType.SMALLINT, DATATYPES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField ARRAYINDEXTYPELENGTH = createField("ARRAYINDEXTYPELENGTH", org.jooq.impl.SQLDataType.INTEGER, DATATYPES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField CREATE_TIME = createField("CREATE_TIME", org.jooq.impl.SQLDataType.TIMESTAMP, DATATYPES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField VALID = createField("VALID", org.jooq.impl.SQLDataType.CHAR, DATATYPES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField ATTRCOUNT = createField("ATTRCOUNT", org.jooq.impl.SQLDataType.SMALLINT, DATATYPES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField INSTANTIABLE = createField("INSTANTIABLE", org.jooq.impl.SQLDataType.CHAR, DATATYPES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField WITH_FUNC_ACCESS = createField("WITH_FUNC_ACCESS", org.jooq.impl.SQLDataType.CHAR, DATATYPES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField FINAL = createField("FINAL", org.jooq.impl.SQLDataType.CHAR, DATATYPES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField INLINE_LENGTH = createField("INLINE_LENGTH", org.jooq.impl.SQLDataType.INTEGER, DATATYPES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField NATURAL_INLINE_LENGTH = createField("NATURAL_INLINE_LENGTH", org.jooq.impl.SQLDataType.INTEGER, DATATYPES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField JARSCHEMA = createField("JARSCHEMA", org.jooq.impl.SQLDataType.VARCHAR, DATATYPES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField JAR_ID = createField("JAR_ID", org.jooq.impl.SQLDataType.VARCHAR, DATATYPES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField CLASS = createField("CLASS", org.jooq.impl.SQLDataType.VARCHAR, DATATYPES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField SQLJ_REPRESENTATION = createField("SQLJ_REPRESENTATION", org.jooq.impl.SQLDataType.CHAR, DATATYPES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField ALTER_TIME = createField("ALTER_TIME", org.jooq.impl.SQLDataType.TIMESTAMP, DATATYPES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField DEFINER = createField("DEFINER", org.jooq.impl.SQLDataType.VARCHAR, DATATYPES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField REMARKS = createField("REMARKS", org.jooq.impl.SQLDataType.VARCHAR, DATATYPES); + + /** + * No further instances allowed + */ + private Datatypes() { + super("DATATYPES", org.jooq.util.db2.syscat.Syscat.SYSCAT); + } +} diff --git a/jOOQ-meta/src/main/java/org/jooq/util/db2/syscat/tables/Funcparms.java b/jOOQ-meta/src/main/java/org/jooq/util/db2/syscat/tables/Funcparms.java new file mode 100644 index 00000000000..143e68758b7 --- /dev/null +++ b/jOOQ-meta/src/main/java/org/jooq/util/db2/syscat/tables/Funcparms.java @@ -0,0 +1,129 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.util.db2.syscat.tables; + +/** + * This class is generated by jOOQ. + */ +@javax.annotation.Generated(value = {"http://www.jooq.org", "2.0.6"}, + comments = "This class is generated by jOOQ") +public class Funcparms extends org.jooq.impl.TableImpl { + + private static final long serialVersionUID = 1422623242; + + /** + * The singleton instance of SYSCAT.FUNCPARMS + */ + public static final org.jooq.util.db2.syscat.tables.Funcparms FUNCPARMS = new org.jooq.util.db2.syscat.tables.Funcparms(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.Record.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + */ + public static final org.jooq.TableField FUNCSCHEMA = createField("FUNCSCHEMA", org.jooq.impl.SQLDataType.VARCHAR, FUNCPARMS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField FUNCNAME = createField("FUNCNAME", org.jooq.impl.SQLDataType.VARCHAR, FUNCPARMS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField SPECIFICNAME = createField("SPECIFICNAME", org.jooq.impl.SQLDataType.VARCHAR, FUNCPARMS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField ROWTYPE = createField("ROWTYPE", org.jooq.impl.SQLDataType.CHAR, FUNCPARMS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField ORDINAL = createField("ORDINAL", org.jooq.impl.SQLDataType.SMALLINT, FUNCPARMS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField PARMNAME = createField("PARMNAME", org.jooq.impl.SQLDataType.VARCHAR, FUNCPARMS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField TYPESCHEMA = createField("TYPESCHEMA", org.jooq.impl.SQLDataType.VARCHAR, FUNCPARMS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField TYPENAME = createField("TYPENAME", org.jooq.impl.SQLDataType.VARCHAR, FUNCPARMS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField LENGTH = createField("LENGTH", org.jooq.impl.SQLDataType.INTEGER, FUNCPARMS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField SCALE = createField("SCALE", org.jooq.impl.SQLDataType.SMALLINT, FUNCPARMS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField CODEPAGE = createField("CODEPAGE", org.jooq.impl.SQLDataType.SMALLINT, FUNCPARMS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField CAST_FUNCID = createField("CAST_FUNCID", org.jooq.impl.SQLDataType.INTEGER, FUNCPARMS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField AS_LOCATOR = createField("AS_LOCATOR", org.jooq.impl.SQLDataType.CHAR, FUNCPARMS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField TARGET_TYPESCHEMA = createField("TARGET_TYPESCHEMA", org.jooq.impl.SQLDataType.VARCHAR, FUNCPARMS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField TARGET_TYPENAME = createField("TARGET_TYPENAME", org.jooq.impl.SQLDataType.VARCHAR, FUNCPARMS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField SCOPE_TABSCHEMA = createField("SCOPE_TABSCHEMA", org.jooq.impl.SQLDataType.VARCHAR, FUNCPARMS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField SCOPE_TABNAME = createField("SCOPE_TABNAME", org.jooq.impl.SQLDataType.VARCHAR, FUNCPARMS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField TRANSFORM_GRPNAME = createField("TRANSFORM_GRPNAME", org.jooq.impl.SQLDataType.VARCHAR, FUNCPARMS); + + /** + * No further instances allowed + */ + private Funcparms() { + super("FUNCPARMS", org.jooq.util.db2.syscat.Syscat.SYSCAT); + } +} diff --git a/jOOQ-meta/src/main/java/org/jooq/util/db2/syscat/tables/Functions.java b/jOOQ-meta/src/main/java/org/jooq/util/db2/syscat/tables/Functions.java new file mode 100644 index 00000000000..95c7e4c879b --- /dev/null +++ b/jOOQ-meta/src/main/java/org/jooq/util/db2/syscat/tables/Functions.java @@ -0,0 +1,294 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.util.db2.syscat.tables; + +/** + * This class is generated by jOOQ. + */ +@javax.annotation.Generated(value = {"http://www.jooq.org", "2.0.6"}, + comments = "This class is generated by jOOQ") +public class Functions extends org.jooq.impl.TableImpl { + + private static final long serialVersionUID = 1565733387; + + /** + * The singleton instance of SYSCAT.FUNCTIONS + */ + public static final org.jooq.util.db2.syscat.tables.Functions FUNCTIONS = new org.jooq.util.db2.syscat.tables.Functions(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.Record.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + */ + public static final org.jooq.TableField FUNCSCHEMA = createField("FUNCSCHEMA", org.jooq.impl.SQLDataType.VARCHAR, FUNCTIONS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField FUNCNAME = createField("FUNCNAME", org.jooq.impl.SQLDataType.VARCHAR, FUNCTIONS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField SPECIFICNAME = createField("SPECIFICNAME", org.jooq.impl.SQLDataType.VARCHAR, FUNCTIONS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField DEFINER = createField("DEFINER", org.jooq.impl.SQLDataType.VARCHAR, FUNCTIONS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField FUNCID = createField("FUNCID", org.jooq.impl.SQLDataType.INTEGER, FUNCTIONS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField RETURN_TYPE = createField("RETURN_TYPE", org.jooq.impl.SQLDataType.SMALLINT, FUNCTIONS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField ORIGIN = createField("ORIGIN", org.jooq.impl.SQLDataType.CHAR, FUNCTIONS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField TYPE = createField("TYPE", org.jooq.impl.SQLDataType.CHAR, FUNCTIONS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField METHOD = createField("METHOD", org.jooq.impl.SQLDataType.CHAR, FUNCTIONS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField EFFECT = createField("EFFECT", org.jooq.impl.SQLDataType.CHAR, FUNCTIONS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField PARM_COUNT = createField("PARM_COUNT", org.jooq.impl.SQLDataType.SMALLINT, FUNCTIONS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField PARM_SIGNATURE = createField("PARM_SIGNATURE", org.jooq.impl.SQLDataType.VARCHAR, FUNCTIONS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField CREATE_TIME = createField("CREATE_TIME", org.jooq.impl.SQLDataType.TIMESTAMP, FUNCTIONS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField QUALIFIER = createField("QUALIFIER", org.jooq.impl.SQLDataType.VARCHAR, FUNCTIONS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField WITH_FUNC_ACCESS = createField("WITH_FUNC_ACCESS", org.jooq.impl.SQLDataType.CHAR, FUNCTIONS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField TYPE_PRESERVING = createField("TYPE_PRESERVING", org.jooq.impl.SQLDataType.CHAR, FUNCTIONS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField VARIANT = createField("VARIANT", org.jooq.impl.SQLDataType.CHAR, FUNCTIONS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField SIDE_EFFECTS = createField("SIDE_EFFECTS", org.jooq.impl.SQLDataType.CHAR, FUNCTIONS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField FENCED = createField("FENCED", org.jooq.impl.SQLDataType.CHAR, FUNCTIONS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField NULLCALL = createField("NULLCALL", org.jooq.impl.SQLDataType.CHAR, FUNCTIONS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField CAST_FUNCTION = createField("CAST_FUNCTION", org.jooq.impl.SQLDataType.CHAR, FUNCTIONS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField ASSIGN_FUNCTION = createField("ASSIGN_FUNCTION", org.jooq.impl.SQLDataType.CHAR, FUNCTIONS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField SCRATCHPAD = createField("SCRATCHPAD", org.jooq.impl.SQLDataType.CHAR, FUNCTIONS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField FINAL_CALL = createField("FINAL_CALL", org.jooq.impl.SQLDataType.CHAR, FUNCTIONS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField PARALLELIZABLE = createField("PARALLELIZABLE", org.jooq.impl.SQLDataType.CHAR, FUNCTIONS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField CONTAINS_SQL = createField("CONTAINS_SQL", org.jooq.impl.SQLDataType.CHAR, FUNCTIONS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField DBINFO = createField("DBINFO", org.jooq.impl.SQLDataType.CHAR, FUNCTIONS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField RESULT_COLS = createField("RESULT_COLS", org.jooq.impl.SQLDataType.SMALLINT, FUNCTIONS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField LANGUAGE = createField("LANGUAGE", org.jooq.impl.SQLDataType.CHAR, FUNCTIONS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField IMPLEMENTATION = createField("IMPLEMENTATION", org.jooq.impl.SQLDataType.VARCHAR, FUNCTIONS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField CLASS = createField("CLASS", org.jooq.impl.SQLDataType.VARCHAR, FUNCTIONS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField JAR_ID = createField("JAR_ID", org.jooq.impl.SQLDataType.VARCHAR, FUNCTIONS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField PARM_STYLE = createField("PARM_STYLE", org.jooq.impl.SQLDataType.CHAR, FUNCTIONS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField SOURCE_SCHEMA = createField("SOURCE_SCHEMA", org.jooq.impl.SQLDataType.VARCHAR, FUNCTIONS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField SOURCE_SPECIFIC = createField("SOURCE_SPECIFIC", org.jooq.impl.SQLDataType.VARCHAR, FUNCTIONS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField IOS_PER_INVOC = createField("IOS_PER_INVOC", org.jooq.impl.SQLDataType.DOUBLE, FUNCTIONS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField INSTS_PER_INVOC = createField("INSTS_PER_INVOC", org.jooq.impl.SQLDataType.DOUBLE, FUNCTIONS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField IOS_PER_ARGBYTE = createField("IOS_PER_ARGBYTE", org.jooq.impl.SQLDataType.DOUBLE, FUNCTIONS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField INSTS_PER_ARGBYTE = createField("INSTS_PER_ARGBYTE", org.jooq.impl.SQLDataType.DOUBLE, FUNCTIONS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField PERCENT_ARGBYTES = createField("PERCENT_ARGBYTES", org.jooq.impl.SQLDataType.SMALLINT, FUNCTIONS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField INITIAL_IOS = createField("INITIAL_IOS", org.jooq.impl.SQLDataType.DOUBLE, FUNCTIONS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField INITIAL_INSTS = createField("INITIAL_INSTS", org.jooq.impl.SQLDataType.DOUBLE, FUNCTIONS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField CARDINALITY = createField("CARDINALITY", org.jooq.impl.SQLDataType.BIGINT, FUNCTIONS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField IMPLEMENTED = createField("IMPLEMENTED", org.jooq.impl.SQLDataType.CHAR, FUNCTIONS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField SELECTIVITY = createField("SELECTIVITY", org.jooq.impl.SQLDataType.DOUBLE, FUNCTIONS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField OVERRIDDEN_FUNCID = createField("OVERRIDDEN_FUNCID", org.jooq.impl.SQLDataType.INTEGER, FUNCTIONS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField SUBJECT_TYPESCHEMA = createField("SUBJECT_TYPESCHEMA", org.jooq.impl.SQLDataType.VARCHAR, FUNCTIONS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField SUBJECT_TYPENAME = createField("SUBJECT_TYPENAME", org.jooq.impl.SQLDataType.VARCHAR, FUNCTIONS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField FUNC_PATH = createField("FUNC_PATH", org.jooq.impl.SQLDataType.CLOB, FUNCTIONS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField BODY = createField("BODY", org.jooq.impl.SQLDataType.CLOB, FUNCTIONS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField REMARKS = createField("REMARKS", org.jooq.impl.SQLDataType.VARCHAR, FUNCTIONS); + + /** + * No further instances allowed + */ + private Functions() { + super("FUNCTIONS", org.jooq.util.db2.syscat.Syscat.SYSCAT); + } +} diff --git a/jOOQ-meta/src/main/java/org/jooq/util/db2/syscat/tables/Keycoluse.java b/jOOQ-meta/src/main/java/org/jooq/util/db2/syscat/tables/Keycoluse.java new file mode 100644 index 00000000000..4ef385f2335 --- /dev/null +++ b/jOOQ-meta/src/main/java/org/jooq/util/db2/syscat/tables/Keycoluse.java @@ -0,0 +1,64 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.util.db2.syscat.tables; + +/** + * This class is generated by jOOQ. + */ +@javax.annotation.Generated(value = {"http://www.jooq.org", "2.0.6"}, + comments = "This class is generated by jOOQ") +public class Keycoluse extends org.jooq.impl.TableImpl { + + private static final long serialVersionUID = -1024358622; + + /** + * The singleton instance of SYSCAT.KEYCOLUSE + */ + public static final org.jooq.util.db2.syscat.tables.Keycoluse KEYCOLUSE = new org.jooq.util.db2.syscat.tables.Keycoluse(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.Record.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + */ + public static final org.jooq.TableField CONSTNAME = createField("CONSTNAME", org.jooq.impl.SQLDataType.VARCHAR, KEYCOLUSE); + + /** + * An uncommented item + */ + public static final org.jooq.TableField TABSCHEMA = createField("TABSCHEMA", org.jooq.impl.SQLDataType.VARCHAR, KEYCOLUSE); + + /** + * An uncommented item + */ + public static final org.jooq.TableField TABNAME = createField("TABNAME", org.jooq.impl.SQLDataType.VARCHAR, KEYCOLUSE); + + /** + * An uncommented item + */ + public static final org.jooq.TableField COLNAME = createField("COLNAME", org.jooq.impl.SQLDataType.VARCHAR, KEYCOLUSE); + + /** + * An uncommented item + */ + public static final org.jooq.TableField COLSEQ = createField("COLSEQ", org.jooq.impl.SQLDataType.SMALLINT, KEYCOLUSE); + + /** + * No further instances allowed + */ + private Keycoluse() { + super("KEYCOLUSE", org.jooq.util.db2.syscat.Syscat.SYSCAT); + } +} diff --git a/jOOQ-meta/src/main/java/org/jooq/util/db2/syscat/tables/Procedures.java b/jOOQ-meta/src/main/java/org/jooq/util/db2/syscat/tables/Procedures.java new file mode 100644 index 00000000000..c5dfdced278 --- /dev/null +++ b/jOOQ-meta/src/main/java/org/jooq/util/db2/syscat/tables/Procedures.java @@ -0,0 +1,164 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.util.db2.syscat.tables; + +/** + * This class is generated by jOOQ. + */ +@javax.annotation.Generated(value = {"http://www.jooq.org", "2.0.6"}, + comments = "This class is generated by jOOQ") +public class Procedures extends org.jooq.impl.TableImpl { + + private static final long serialVersionUID = 1262378665; + + /** + * The singleton instance of SYSCAT.PROCEDURES + */ + public static final org.jooq.util.db2.syscat.tables.Procedures PROCEDURES = new org.jooq.util.db2.syscat.tables.Procedures(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.Record.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + */ + public static final org.jooq.TableField PROCSCHEMA = createField("PROCSCHEMA", org.jooq.impl.SQLDataType.VARCHAR, PROCEDURES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField PROCNAME = createField("PROCNAME", org.jooq.impl.SQLDataType.VARCHAR, PROCEDURES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField SPECIFICNAME = createField("SPECIFICNAME", org.jooq.impl.SQLDataType.VARCHAR, PROCEDURES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField PROCEDURE_ID = createField("PROCEDURE_ID", org.jooq.impl.SQLDataType.INTEGER, PROCEDURES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField DEFINER = createField("DEFINER", org.jooq.impl.SQLDataType.VARCHAR, PROCEDURES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField PARM_COUNT = createField("PARM_COUNT", org.jooq.impl.SQLDataType.SMALLINT, PROCEDURES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField PARM_SIGNATURE = createField("PARM_SIGNATURE", org.jooq.impl.SQLDataType.VARCHAR, PROCEDURES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField ORIGIN = createField("ORIGIN", org.jooq.impl.SQLDataType.CHAR, PROCEDURES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField CREATE_TIME = createField("CREATE_TIME", org.jooq.impl.SQLDataType.TIMESTAMP, PROCEDURES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField DETERMINISTIC = createField("DETERMINISTIC", org.jooq.impl.SQLDataType.CHAR, PROCEDURES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField FENCED = createField("FENCED", org.jooq.impl.SQLDataType.CHAR, PROCEDURES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField NULLCALL = createField("NULLCALL", org.jooq.impl.SQLDataType.CHAR, PROCEDURES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField LANGUAGE = createField("LANGUAGE", org.jooq.impl.SQLDataType.CHAR, PROCEDURES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField IMPLEMENTATION = createField("IMPLEMENTATION", org.jooq.impl.SQLDataType.VARCHAR, PROCEDURES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField CLASS = createField("CLASS", org.jooq.impl.SQLDataType.VARCHAR, PROCEDURES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField JAR_ID = createField("JAR_ID", org.jooq.impl.SQLDataType.VARCHAR, PROCEDURES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField PARM_STYLE = createField("PARM_STYLE", org.jooq.impl.SQLDataType.CHAR, PROCEDURES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField CONTAINS_SQL = createField("CONTAINS_SQL", org.jooq.impl.SQLDataType.CHAR, PROCEDURES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField DBINFO = createField("DBINFO", org.jooq.impl.SQLDataType.CHAR, PROCEDURES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField PROGRAM_TYPE = createField("PROGRAM_TYPE", org.jooq.impl.SQLDataType.CHAR, PROCEDURES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField RESULT_SETS = createField("RESULT_SETS", org.jooq.impl.SQLDataType.SMALLINT, PROCEDURES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField VALID = createField("VALID", org.jooq.impl.SQLDataType.CHAR, PROCEDURES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField TEXT_BODY_OFFSET = createField("TEXT_BODY_OFFSET", org.jooq.impl.SQLDataType.INTEGER, PROCEDURES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField TEXT = createField("TEXT", org.jooq.impl.SQLDataType.CLOB, PROCEDURES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField REMARKS = createField("REMARKS", org.jooq.impl.SQLDataType.VARCHAR, PROCEDURES); + + /** + * No further instances allowed + */ + private Procedures() { + super("PROCEDURES", org.jooq.util.db2.syscat.Syscat.SYSCAT); + } +} diff --git a/jOOQ-meta/src/main/java/org/jooq/util/db2/syscat/tables/Procparms.java b/jOOQ-meta/src/main/java/org/jooq/util/db2/syscat/tables/Procparms.java new file mode 100644 index 00000000000..8ced64d5923 --- /dev/null +++ b/jOOQ-meta/src/main/java/org/jooq/util/db2/syscat/tables/Procparms.java @@ -0,0 +1,144 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.util.db2.syscat.tables; + +/** + * This class is generated by jOOQ. + */ +@javax.annotation.Generated(value = {"http://www.jooq.org", "2.0.6"}, + comments = "This class is generated by jOOQ") +public class Procparms extends org.jooq.impl.TableImpl { + + private static final long serialVersionUID = -1518578228; + + /** + * The singleton instance of SYSCAT.PROCPARMS + */ + public static final org.jooq.util.db2.syscat.tables.Procparms PROCPARMS = new org.jooq.util.db2.syscat.tables.Procparms(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.Record.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + */ + public static final org.jooq.TableField PROCSCHEMA = createField("PROCSCHEMA", org.jooq.impl.SQLDataType.VARCHAR, PROCPARMS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField PROCNAME = createField("PROCNAME", org.jooq.impl.SQLDataType.VARCHAR, PROCPARMS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField SPECIFICNAME = createField("SPECIFICNAME", org.jooq.impl.SQLDataType.VARCHAR, PROCPARMS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField SERVERNAME = createField("SERVERNAME", org.jooq.impl.SQLDataType.VARCHAR, PROCPARMS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField ORDINAL = createField("ORDINAL", org.jooq.impl.SQLDataType.SMALLINT, PROCPARMS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField PARMNAME = createField("PARMNAME", org.jooq.impl.SQLDataType.VARCHAR, PROCPARMS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField TYPESCHEMA = createField("TYPESCHEMA", org.jooq.impl.SQLDataType.VARCHAR, PROCPARMS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField TYPENAME = createField("TYPENAME", org.jooq.impl.SQLDataType.VARCHAR, PROCPARMS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField TYPEID = createField("TYPEID", org.jooq.impl.SQLDataType.SMALLINT, PROCPARMS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField SOURCETYPEID = createField("SOURCETYPEID", org.jooq.impl.SQLDataType.SMALLINT, PROCPARMS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField NULLS = createField("NULLS", org.jooq.impl.SQLDataType.CHAR, PROCPARMS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField LENGTH = createField("LENGTH", org.jooq.impl.SQLDataType.INTEGER, PROCPARMS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField SCALE = createField("SCALE", org.jooq.impl.SQLDataType.SMALLINT, PROCPARMS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField PARM_MODE = createField("PARM_MODE", org.jooq.impl.SQLDataType.VARCHAR, PROCPARMS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField CODEPAGE = createField("CODEPAGE", org.jooq.impl.SQLDataType.SMALLINT, PROCPARMS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField DBCS_CODEPAGE = createField("DBCS_CODEPAGE", org.jooq.impl.SQLDataType.SMALLINT, PROCPARMS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField AS_LOCATOR = createField("AS_LOCATOR", org.jooq.impl.SQLDataType.CHAR, PROCPARMS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField TARGET_TYPESCHEMA = createField("TARGET_TYPESCHEMA", org.jooq.impl.SQLDataType.VARCHAR, PROCPARMS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField TARGET_TYPENAME = createField("TARGET_TYPENAME", org.jooq.impl.SQLDataType.VARCHAR, PROCPARMS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField SCOPE_TABSCHEMA = createField("SCOPE_TABSCHEMA", org.jooq.impl.SQLDataType.VARCHAR, PROCPARMS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField SCOPE_TABNAME = createField("SCOPE_TABNAME", org.jooq.impl.SQLDataType.VARCHAR, PROCPARMS); + + /** + * No further instances allowed + */ + private Procparms() { + super("PROCPARMS", org.jooq.util.db2.syscat.Syscat.SYSCAT); + } +} diff --git a/jOOQ-meta/src/main/java/org/jooq/util/db2/syscat/tables/References.java b/jOOQ-meta/src/main/java/org/jooq/util/db2/syscat/tables/References.java new file mode 100644 index 00000000000..0b0b5d23218 --- /dev/null +++ b/jOOQ-meta/src/main/java/org/jooq/util/db2/syscat/tables/References.java @@ -0,0 +1,114 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.util.db2.syscat.tables; + +/** + * This class is generated by jOOQ. + */ +@javax.annotation.Generated(value = {"http://www.jooq.org", "2.0.6"}, + comments = "This class is generated by jOOQ") +public class References extends org.jooq.impl.TableImpl { + + private static final long serialVersionUID = -98734711; + + /** + * The singleton instance of SYSCAT.REFERENCES + */ + public static final org.jooq.util.db2.syscat.tables.References REFERENCES = new org.jooq.util.db2.syscat.tables.References(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.Record.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + */ + public static final org.jooq.TableField CONSTNAME = createField("CONSTNAME", org.jooq.impl.SQLDataType.VARCHAR, REFERENCES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField TABSCHEMA = createField("TABSCHEMA", org.jooq.impl.SQLDataType.VARCHAR, REFERENCES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField TABNAME = createField("TABNAME", org.jooq.impl.SQLDataType.VARCHAR, REFERENCES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField OWNER = createField("OWNER", org.jooq.impl.SQLDataType.VARCHAR, REFERENCES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField OWNERTYPE = createField("OWNERTYPE", org.jooq.impl.SQLDataType.CHAR, REFERENCES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField REFKEYNAME = createField("REFKEYNAME", org.jooq.impl.SQLDataType.VARCHAR, REFERENCES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField REFTABSCHEMA = createField("REFTABSCHEMA", org.jooq.impl.SQLDataType.VARCHAR, REFERENCES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField REFTABNAME = createField("REFTABNAME", org.jooq.impl.SQLDataType.VARCHAR, REFERENCES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField COLCOUNT = createField("COLCOUNT", org.jooq.impl.SQLDataType.SMALLINT, REFERENCES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField DELETERULE = createField("DELETERULE", org.jooq.impl.SQLDataType.CHAR, REFERENCES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField UPDATERULE = createField("UPDATERULE", org.jooq.impl.SQLDataType.CHAR, REFERENCES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField CREATE_TIME = createField("CREATE_TIME", org.jooq.impl.SQLDataType.TIMESTAMP, REFERENCES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField FK_COLNAMES = createField("FK_COLNAMES", org.jooq.impl.SQLDataType.VARCHAR, REFERENCES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField PK_COLNAMES = createField("PK_COLNAMES", org.jooq.impl.SQLDataType.VARCHAR, REFERENCES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField DEFINER = createField("DEFINER", org.jooq.impl.SQLDataType.VARCHAR, REFERENCES); + + /** + * No further instances allowed + */ + private References() { + super("REFERENCES", org.jooq.util.db2.syscat.Syscat.SYSCAT); + } +} diff --git a/jOOQ-meta/src/main/java/org/jooq/util/db2/syscat/tables/Sequences.java b/jOOQ-meta/src/main/java/org/jooq/util/db2/syscat/tables/Sequences.java new file mode 100644 index 00000000000..307bfa40131 --- /dev/null +++ b/jOOQ-meta/src/main/java/org/jooq/util/db2/syscat/tables/Sequences.java @@ -0,0 +1,164 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.util.db2.syscat.tables; + +/** + * This class is generated by jOOQ. + */ +@javax.annotation.Generated(value = {"http://www.jooq.org", "2.0.6"}, + comments = "This class is generated by jOOQ") +public class Sequences extends org.jooq.impl.TableImpl { + + private static final long serialVersionUID = 1706667636; + + /** + * The singleton instance of SYSCAT.SEQUENCES + */ + public static final org.jooq.util.db2.syscat.tables.Sequences SEQUENCES = new org.jooq.util.db2.syscat.tables.Sequences(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.Record.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + */ + public static final org.jooq.TableField SEQSCHEMA = createField("SEQSCHEMA", org.jooq.impl.SQLDataType.VARCHAR, SEQUENCES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField SEQNAME = createField("SEQNAME", org.jooq.impl.SQLDataType.VARCHAR, SEQUENCES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField DEFINER = createField("DEFINER", org.jooq.impl.SQLDataType.VARCHAR, SEQUENCES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField DEFINERTYPE = createField("DEFINERTYPE", org.jooq.impl.SQLDataType.CHAR, SEQUENCES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField OWNER = createField("OWNER", org.jooq.impl.SQLDataType.VARCHAR, SEQUENCES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField OWNERTYPE = createField("OWNERTYPE", org.jooq.impl.SQLDataType.CHAR, SEQUENCES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField SEQID = createField("SEQID", org.jooq.impl.SQLDataType.INTEGER, SEQUENCES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField SEQTYPE = createField("SEQTYPE", org.jooq.impl.SQLDataType.CHAR, SEQUENCES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField BASE_SEQSCHEMA = createField("BASE_SEQSCHEMA", org.jooq.impl.SQLDataType.VARCHAR, SEQUENCES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField BASE_SEQNAME = createField("BASE_SEQNAME", org.jooq.impl.SQLDataType.VARCHAR, SEQUENCES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField INCREMENT = createField("INCREMENT", org.jooq.impl.SQLDataType.DECIMAL_INTEGER, SEQUENCES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField START = createField("START", org.jooq.impl.SQLDataType.DECIMAL_INTEGER, SEQUENCES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField MAXVALUE = createField("MAXVALUE", org.jooq.impl.SQLDataType.DECIMAL_INTEGER, SEQUENCES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField MINVALUE = createField("MINVALUE", org.jooq.impl.SQLDataType.DECIMAL_INTEGER, SEQUENCES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField NEXTCACHEFIRSTVALUE = createField("NEXTCACHEFIRSTVALUE", org.jooq.impl.SQLDataType.DECIMAL_INTEGER, SEQUENCES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField CYCLE = createField("CYCLE", org.jooq.impl.SQLDataType.CHAR, SEQUENCES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField CACHE = createField("CACHE", org.jooq.impl.SQLDataType.INTEGER, SEQUENCES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField ORDER = createField("ORDER", org.jooq.impl.SQLDataType.CHAR, SEQUENCES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField DATATYPEID = createField("DATATYPEID", org.jooq.impl.SQLDataType.INTEGER, SEQUENCES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField SOURCETYPEID = createField("SOURCETYPEID", org.jooq.impl.SQLDataType.INTEGER, SEQUENCES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField CREATE_TIME = createField("CREATE_TIME", org.jooq.impl.SQLDataType.TIMESTAMP, SEQUENCES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField ALTER_TIME = createField("ALTER_TIME", org.jooq.impl.SQLDataType.TIMESTAMP, SEQUENCES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField PRECISION = createField("PRECISION", org.jooq.impl.SQLDataType.SMALLINT, SEQUENCES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField ORIGIN = createField("ORIGIN", org.jooq.impl.SQLDataType.CHAR, SEQUENCES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField REMARKS = createField("REMARKS", org.jooq.impl.SQLDataType.VARCHAR, SEQUENCES); + + /** + * No further instances allowed + */ + private Sequences() { + super("SEQUENCES", org.jooq.util.db2.syscat.Syscat.SYSCAT); + } +} diff --git a/jOOQ-meta/src/main/java/org/jooq/util/db2/syscat/tables/Tabconst.java b/jOOQ-meta/src/main/java/org/jooq/util/db2/syscat/tables/Tabconst.java new file mode 100644 index 00000000000..87e2db04e11 --- /dev/null +++ b/jOOQ-meta/src/main/java/org/jooq/util/db2/syscat/tables/Tabconst.java @@ -0,0 +1,94 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.util.db2.syscat.tables; + +/** + * This class is generated by jOOQ. + */ +@javax.annotation.Generated(value = {"http://www.jooq.org", "2.0.6"}, + comments = "This class is generated by jOOQ") +public class Tabconst extends org.jooq.impl.TableImpl { + + private static final long serialVersionUID = 1915033245; + + /** + * The singleton instance of SYSCAT.TABCONST + */ + public static final org.jooq.util.db2.syscat.tables.Tabconst TABCONST = new org.jooq.util.db2.syscat.tables.Tabconst(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.Record.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + */ + public static final org.jooq.TableField CONSTNAME = createField("CONSTNAME", org.jooq.impl.SQLDataType.VARCHAR, TABCONST); + + /** + * An uncommented item + */ + public static final org.jooq.TableField TABSCHEMA = createField("TABSCHEMA", org.jooq.impl.SQLDataType.VARCHAR, TABCONST); + + /** + * An uncommented item + */ + public static final org.jooq.TableField TABNAME = createField("TABNAME", org.jooq.impl.SQLDataType.VARCHAR, TABCONST); + + /** + * An uncommented item + */ + public static final org.jooq.TableField OWNER = createField("OWNER", org.jooq.impl.SQLDataType.VARCHAR, TABCONST); + + /** + * An uncommented item + */ + public static final org.jooq.TableField OWNERTYPE = createField("OWNERTYPE", org.jooq.impl.SQLDataType.CHAR, TABCONST); + + /** + * An uncommented item + */ + public static final org.jooq.TableField TYPE = createField("TYPE", org.jooq.impl.SQLDataType.CHAR, TABCONST); + + /** + * An uncommented item + */ + public static final org.jooq.TableField ENFORCED = createField("ENFORCED", org.jooq.impl.SQLDataType.CHAR, TABCONST); + + /** + * An uncommented item + */ + public static final org.jooq.TableField CHECKEXISTINGDATA = createField("CHECKEXISTINGDATA", org.jooq.impl.SQLDataType.CHAR, TABCONST); + + /** + * An uncommented item + */ + public static final org.jooq.TableField ENABLEQUERYOPT = createField("ENABLEQUERYOPT", org.jooq.impl.SQLDataType.CHAR, TABCONST); + + /** + * An uncommented item + */ + public static final org.jooq.TableField DEFINER = createField("DEFINER", org.jooq.impl.SQLDataType.VARCHAR, TABCONST); + + /** + * An uncommented item + */ + public static final org.jooq.TableField REMARKS = createField("REMARKS", org.jooq.impl.SQLDataType.VARCHAR, TABCONST); + + /** + * No further instances allowed + */ + private Tabconst() { + super("TABCONST", org.jooq.util.db2.syscat.Syscat.SYSCAT); + } +} diff --git a/jOOQ-meta/src/main/java/org/jooq/util/db2/syscat/tables/Tables.java b/jOOQ-meta/src/main/java/org/jooq/util/db2/syscat/tables/Tables.java new file mode 100644 index 00000000000..2590df434ab --- /dev/null +++ b/jOOQ-meta/src/main/java/org/jooq/util/db2/syscat/tables/Tables.java @@ -0,0 +1,409 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.util.db2.syscat.tables; + +/** + * This class is generated by jOOQ. + */ +@javax.annotation.Generated(value = {"http://www.jooq.org", "2.0.6"}, + comments = "This class is generated by jOOQ") +public class Tables extends org.jooq.impl.TableImpl { + + private static final long serialVersionUID = 1553584909; + + /** + * The singleton instance of SYSCAT.TABLES + */ + public static final org.jooq.util.db2.syscat.tables.Tables TABLES = new org.jooq.util.db2.syscat.tables.Tables(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.Record.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + */ + public static final org.jooq.TableField TABSCHEMA = createField("TABSCHEMA", org.jooq.impl.SQLDataType.VARCHAR, TABLES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField TABNAME = createField("TABNAME", org.jooq.impl.SQLDataType.VARCHAR, TABLES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField OWNER = createField("OWNER", org.jooq.impl.SQLDataType.VARCHAR, TABLES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField OWNERTYPE = createField("OWNERTYPE", org.jooq.impl.SQLDataType.CHAR, TABLES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField TYPE = createField("TYPE", org.jooq.impl.SQLDataType.CHAR, TABLES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField STATUS = createField("STATUS", org.jooq.impl.SQLDataType.CHAR, TABLES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField BASE_TABSCHEMA = createField("BASE_TABSCHEMA", org.jooq.impl.SQLDataType.VARCHAR, TABLES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField BASE_TABNAME = createField("BASE_TABNAME", org.jooq.impl.SQLDataType.VARCHAR, TABLES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField ROWTYPESCHEMA = createField("ROWTYPESCHEMA", org.jooq.impl.SQLDataType.VARCHAR, TABLES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField ROWTYPENAME = createField("ROWTYPENAME", org.jooq.impl.SQLDataType.VARCHAR, TABLES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField CREATE_TIME = createField("CREATE_TIME", org.jooq.impl.SQLDataType.TIMESTAMP, TABLES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField ALTER_TIME = createField("ALTER_TIME", org.jooq.impl.SQLDataType.TIMESTAMP, TABLES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField INVALIDATE_TIME = createField("INVALIDATE_TIME", org.jooq.impl.SQLDataType.TIMESTAMP, TABLES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField STATS_TIME = createField("STATS_TIME", org.jooq.impl.SQLDataType.TIMESTAMP, TABLES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField COLCOUNT = createField("COLCOUNT", org.jooq.impl.SQLDataType.SMALLINT, TABLES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField TABLEID = createField("TABLEID", org.jooq.impl.SQLDataType.SMALLINT, TABLES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField TBSPACEID = createField("TBSPACEID", org.jooq.impl.SQLDataType.SMALLINT, TABLES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField CARD = createField("CARD", org.jooq.impl.SQLDataType.BIGINT, TABLES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField NPAGES = createField("NPAGES", org.jooq.impl.SQLDataType.BIGINT, TABLES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField FPAGES = createField("FPAGES", org.jooq.impl.SQLDataType.BIGINT, TABLES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField OVERFLOW = createField("OVERFLOW", org.jooq.impl.SQLDataType.BIGINT, TABLES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField TBSPACE = createField("TBSPACE", org.jooq.impl.SQLDataType.VARCHAR, TABLES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField INDEX_TBSPACE = createField("INDEX_TBSPACE", org.jooq.impl.SQLDataType.VARCHAR, TABLES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField LONG_TBSPACE = createField("LONG_TBSPACE", org.jooq.impl.SQLDataType.VARCHAR, TABLES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField PARENTS = createField("PARENTS", org.jooq.impl.SQLDataType.SMALLINT, TABLES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField CHILDREN = createField("CHILDREN", org.jooq.impl.SQLDataType.SMALLINT, TABLES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField SELFREFS = createField("SELFREFS", org.jooq.impl.SQLDataType.SMALLINT, TABLES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField KEYCOLUMNS = createField("KEYCOLUMNS", org.jooq.impl.SQLDataType.SMALLINT, TABLES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField KEYINDEXID = createField("KEYINDEXID", org.jooq.impl.SQLDataType.SMALLINT, TABLES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField KEYUNIQUE = createField("KEYUNIQUE", org.jooq.impl.SQLDataType.SMALLINT, TABLES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField CHECKCOUNT = createField("CHECKCOUNT", org.jooq.impl.SQLDataType.SMALLINT, TABLES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField DATACAPTURE = createField("DATACAPTURE", org.jooq.impl.SQLDataType.CHAR, TABLES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField CONST_CHECKED = createField("CONST_CHECKED", org.jooq.impl.SQLDataType.CHAR, TABLES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField PMAP_ID = createField("PMAP_ID", org.jooq.impl.SQLDataType.SMALLINT, TABLES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField PARTITION_MODE = createField("PARTITION_MODE", org.jooq.impl.SQLDataType.CHAR, TABLES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField LOG_ATTRIBUTE = createField("LOG_ATTRIBUTE", org.jooq.impl.SQLDataType.CHAR, TABLES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField PCTFREE = createField("PCTFREE", org.jooq.impl.SQLDataType.SMALLINT, TABLES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField APPEND_MODE = createField("APPEND_MODE", org.jooq.impl.SQLDataType.CHAR, TABLES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField REFRESH = createField("REFRESH", org.jooq.impl.SQLDataType.CHAR, TABLES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField REFRESH_TIME = createField("REFRESH_TIME", org.jooq.impl.SQLDataType.TIMESTAMP, TABLES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField LOCKSIZE = createField("LOCKSIZE", org.jooq.impl.SQLDataType.CHAR, TABLES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField VOLATILE = createField("VOLATILE", org.jooq.impl.SQLDataType.CHAR, TABLES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField ROW_FORMAT = createField("ROW_FORMAT", org.jooq.impl.SQLDataType.CHAR, TABLES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField PROPERTY = createField("PROPERTY", org.jooq.impl.SQLDataType.VARCHAR, TABLES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField STATISTICS_PROFILE = createField("STATISTICS_PROFILE", org.jooq.impl.SQLDataType.CLOB, TABLES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField COMPRESSION = createField("COMPRESSION", org.jooq.impl.SQLDataType.CHAR, TABLES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField ACCESS_MODE = createField("ACCESS_MODE", org.jooq.impl.SQLDataType.CHAR, TABLES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField CLUSTERED = createField("CLUSTERED", org.jooq.impl.SQLDataType.CHAR, TABLES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField ACTIVE_BLOCKS = createField("ACTIVE_BLOCKS", org.jooq.impl.SQLDataType.BIGINT, TABLES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField DROPRULE = createField("DROPRULE", org.jooq.impl.SQLDataType.CHAR, TABLES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField MAXFREESPACESEARCH = createField("MAXFREESPACESEARCH", org.jooq.impl.SQLDataType.SMALLINT, TABLES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField AVGCOMPRESSEDROWSIZE = createField("AVGCOMPRESSEDROWSIZE", org.jooq.impl.SQLDataType.SMALLINT, TABLES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField AVGROWCOMPRESSIONRATIO = createField("AVGROWCOMPRESSIONRATIO", org.jooq.impl.SQLDataType.REAL, TABLES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField AVGROWSIZE = createField("AVGROWSIZE", org.jooq.impl.SQLDataType.SMALLINT, TABLES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField PCTROWSCOMPRESSED = createField("PCTROWSCOMPRESSED", org.jooq.impl.SQLDataType.REAL, TABLES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField LOGINDEXBUILD = createField("LOGINDEXBUILD", org.jooq.impl.SQLDataType.VARCHAR, TABLES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField CODEPAGE = createField("CODEPAGE", org.jooq.impl.SQLDataType.SMALLINT, TABLES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField COLLATIONSCHEMA = createField("COLLATIONSCHEMA", org.jooq.impl.SQLDataType.VARCHAR, TABLES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField COLLATIONNAME = createField("COLLATIONNAME", org.jooq.impl.SQLDataType.VARCHAR, TABLES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField COLLATIONSCHEMA_ORDERBY = createField("COLLATIONSCHEMA_ORDERBY", org.jooq.impl.SQLDataType.VARCHAR, TABLES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField COLLATIONNAME_ORDERBY = createField("COLLATIONNAME_ORDERBY", org.jooq.impl.SQLDataType.VARCHAR, TABLES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField ENCODING_SCHEME = createField("ENCODING_SCHEME", org.jooq.impl.SQLDataType.CHAR, TABLES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField PCTPAGESSAVED = createField("PCTPAGESSAVED", org.jooq.impl.SQLDataType.SMALLINT, TABLES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField LAST_REGEN_TIME = createField("LAST_REGEN_TIME", org.jooq.impl.SQLDataType.TIMESTAMP, TABLES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField SECPOLICYID = createField("SECPOLICYID", org.jooq.impl.SQLDataType.INTEGER, TABLES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField PROTECTIONGRANULARITY = createField("PROTECTIONGRANULARITY", org.jooq.impl.SQLDataType.CHAR, TABLES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField AUDITPOLICYID = createField("AUDITPOLICYID", org.jooq.impl.SQLDataType.INTEGER, TABLES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField AUDITPOLICYNAME = createField("AUDITPOLICYNAME", org.jooq.impl.SQLDataType.VARCHAR, TABLES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField DEFINER = createField("DEFINER", org.jooq.impl.SQLDataType.VARCHAR, TABLES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField ONCOMMIT = createField("ONCOMMIT", org.jooq.impl.SQLDataType.CHAR, TABLES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField LOGGED = createField("LOGGED", org.jooq.impl.SQLDataType.CHAR, TABLES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField ONROLLBACK = createField("ONROLLBACK", org.jooq.impl.SQLDataType.CHAR, TABLES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField LASTUSED = createField("LASTUSED", org.jooq.impl.SQLDataType.DATE, TABLES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField REMARKS = createField("REMARKS", org.jooq.impl.SQLDataType.VARCHAR, TABLES); + + /** + * No further instances allowed + */ + private Tables() { + super("TABLES", org.jooq.util.db2.syscat.Syscat.SYSCAT); + } +} diff --git a/jOOQ-meta/src/main/java/org/jooq/util/derby/DerbyDatabase.java b/jOOQ-meta/src/main/java/org/jooq/util/derby/DerbyDatabase.java new file mode 100644 index 00000000000..925b8fb0f9a --- /dev/null +++ b/jOOQ-meta/src/main/java/org/jooq/util/derby/DerbyDatabase.java @@ -0,0 +1,310 @@ +/** + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com + * All rights reserved. + * + * This software is licensed to you under the Apache License, Version 2.0 + * (the "License"); You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * 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 "jOOQ" 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 COPYRIGHT OWNER 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. + */ + +package org.jooq.util.derby; + +import static org.jooq.impl.Factory.field; +import static org.jooq.util.derby.sys.tables.Sysconglomerates.SYSCONGLOMERATES; +import static org.jooq.util.derby.sys.tables.Sysconstraints.SYSCONSTRAINTS; +import static org.jooq.util.derby.sys.tables.Syskeys.SYSKEYS; +import static org.jooq.util.derby.sys.tables.Sysschemas.SYSSCHEMAS; +import static org.jooq.util.derby.sys.tables.Syssequences.SYSSEQUENCES; +import static org.jooq.util.derby.sys.tables.Systables.SYSTABLES; + +import java.sql.SQLException; +import java.util.ArrayList; +import java.util.List; +import java.util.regex.Matcher; +import java.util.regex.Pattern; + +import org.jooq.Field; +import org.jooq.Record; +import org.jooq.impl.Factory; +import org.jooq.util.AbstractDatabase; +import org.jooq.util.ArrayDefinition; +import org.jooq.util.ColumnDefinition; +import org.jooq.util.DataTypeDefinition; +import org.jooq.util.DefaultDataTypeDefinition; +import org.jooq.util.DefaultRelations; +import org.jooq.util.DefaultSequenceDefinition; +import org.jooq.util.EnumDefinition; +import org.jooq.util.PackageDefinition; +import org.jooq.util.RoutineDefinition; +import org.jooq.util.SchemaDefinition; +import org.jooq.util.SequenceDefinition; +import org.jooq.util.TableDefinition; +import org.jooq.util.UDTDefinition; +import org.jooq.util.derby.sys.SysFactory; +import org.jooq.util.derby.sys.tables.Sysconglomerates; +import org.jooq.util.derby.sys.tables.Sysconstraints; +import org.jooq.util.derby.sys.tables.Syskeys; +import org.jooq.util.derby.sys.tables.Sysschemas; +import org.jooq.util.derby.sys.tables.Syssequences; +import org.jooq.util.derby.sys.tables.Systables; + +/** + * @author Lukas Eder + */ +public class DerbyDatabase extends AbstractDatabase { + + @Override + protected void loadPrimaryKeys(DefaultRelations relations) throws SQLException { + for (Record record : fetchKeys("P")) { + SchemaDefinition schema = getSchema(record.getValue(Sysschemas.SCHEMANAME)); + String key = record.getValue(Sysconstraints.CONSTRAINTNAME); + String tableName = record.getValue(Systables.TABLENAME); + String descriptor = record.getValueAsString(Sysconglomerates.DESCRIPTOR); + + TableDefinition table = getTable(schema, tableName); + if (table != null) { + for (int index : decode(descriptor)) { + relations.addPrimaryKey(key, table.getColumn(index)); + } + } + } + } + + /** + * {@inheritDoc} + */ + @Override + protected void loadUniqueKeys(DefaultRelations relations) throws SQLException { + for (Record record : fetchKeys("U")) { + SchemaDefinition schema = getSchema(record.getValue(Sysschemas.SCHEMANAME)); + String key = record.getValue(Sysconstraints.CONSTRAINTNAME); + String tableName = record.getValue(Systables.TABLENAME); + String descriptor = record.getValueAsString(Sysconglomerates.DESCRIPTOR); + + TableDefinition table = getTable(schema, tableName); + if (table != null) { + for (int index : decode(descriptor)) { + relations.addUniqueKey(key, table.getColumn(index)); + } + } + } + } + + private List fetchKeys(String constraintType) { + return create().select( + Sysschemas.SCHEMANAME, + Systables.TABLENAME, + Systables.TABLEID, + Sysconstraints.CONSTRAINTNAME, + Sysconglomerates.DESCRIPTOR) + .from(SYSCONGLOMERATES) + .join(SYSKEYS) + .on(Syskeys.CONGLOMERATEID.equal(Sysconglomerates.CONGLOMERATEID)) + .join(SYSCONSTRAINTS) + .on(Sysconstraints.CONSTRAINTID.equal(Syskeys.CONSTRAINTID)) + .join(SYSTABLES) + .on(Systables.TABLEID.equal(Sysconglomerates.TABLEID)) + .join(SYSSCHEMAS) + .on(Sysschemas.SCHEMAID.equal(Systables.SCHEMAID)) + .and(Sysschemas.SCHEMANAME.in(getInputSchemata())) + .where(Sysconstraints.TYPE.equal(constraintType)) + .orderBy( + Sysschemas.SCHEMANAME, + Systables.TABLENAME, + Sysconstraints.CONSTRAINTNAME) + .fetch(); + } + + @Override + protected void loadForeignKeys(DefaultRelations relations) throws SQLException { + Field fkName = field("fc.constraintname", String.class); + Field fkTable = field("ft.tablename", String.class); + Field fkSchema = field("fs.schemaname", String.class); + Field fkDescriptor = field("fg.descriptor"); + Field ukName = field("pc.constraintname", String.class); + Field ukSchema = field("ps.schemaname", String.class); + + for (Record record : create().select( + fkName, + fkTable, + fkSchema, + fkDescriptor, + ukName, + ukSchema) + .from("sys.sysconstraints fc") + .join("sys.sysforeignkeys f ").on("f.constraintid = fc.constraintid") + .join("sys.sysconglomerates fg").on("fg.conglomerateid = f.conglomerateid") + .join("sys.systables ft").on("ft.tableid = fg.tableid") + .join("sys.sysschemas fs").on("ft.schemaid = fs.schemaid") + .join("sys.sysconstraints pc").on("pc.constraintid = f.keyconstraintid") + .join("sys.sysschemas ps").on("pc.schemaid = ps.schemaid") + .where("fc.type = 'F'") + .fetch()) { + + SchemaDefinition foreignKeySchema = getSchema(record.getValue(fkSchema)); + SchemaDefinition uniqueKeySchema = getSchema(record.getValue(ukSchema)); + + String foreignKeyName = record.getValue(fkName); + String foreignKeyTableName = record.getValue(fkTable); + List foreignKeyIndexes = decode(record.getValueAsString(fkDescriptor)); + String uniqueKeyName = record.getValue(ukName); + + TableDefinition referencingTable = getTable(foreignKeySchema, foreignKeyTableName); + if (referencingTable != null) { + for (int i = 0; i < foreignKeyIndexes.size(); i++) { + ColumnDefinition column = referencingTable.getColumn(foreignKeyIndexes.get(i)); + + relations.addForeignKey(foreignKeyName, uniqueKeyName, column, uniqueKeySchema); + } + } + } + } + + /* + * Unfortunately the descriptor interface is not exposed publicly Hence, the + * toString() method is used and its results are parsed The results are + * something like UNIQUE BTREE (index1, index2, ... indexN) + */ + private List decode(String descriptor) { + List result = new ArrayList(); + + Pattern p = Pattern.compile(".*?\\((.*?)\\)"); + Matcher m = p.matcher(descriptor); + + while (m.find()) { + String[] split = m.group(1).split(","); + + if (split != null) { + for (String index : split) { + result.add(Integer.valueOf(index.trim()) - 1); + } + } + } + + return result; + } + + @Override + protected List getSequences0() throws SQLException { + List result = new ArrayList(); + + for (Record record : create().select( + Sysschemas.SCHEMANAME, + Syssequences.SEQUENCENAME, + Syssequences.SEQUENCEDATATYPE) + .from(SYSSEQUENCES) + .join(SYSSCHEMAS) + .on(Sysschemas.SCHEMAID.equal(Syssequences.SCHEMAID)) + .where(Sysschemas.SCHEMANAME.in(getInputSchemata())) + .orderBy( + Sysschemas.SCHEMANAME, + Syssequences.SEQUENCENAME) + .fetch()) { + + SchemaDefinition schema = getSchema(record.getValue(Sysschemas.SCHEMANAME)); + + DataTypeDefinition type = new DefaultDataTypeDefinition( + this, + schema, + record.getValue(Syssequences.SEQUENCEDATATYPE), + 0, 0, 0); + + result.add(new DefaultSequenceDefinition( + schema, + record.getValueAsString(Syssequences.SEQUENCENAME), + type)); + } + + return result; + } + + @Override + protected List getTables0() throws SQLException { + List result = new ArrayList(); + + for (Record record : create().select( + Sysschemas.SCHEMANAME, + Systables.TABLENAME, + Systables.TABLEID) + .from(SYSTABLES) + .join(SYSSCHEMAS) + .on(Systables.SCHEMAID.equal(Sysschemas.SCHEMAID)) + .where(Sysschemas.SCHEMANAME.in(getInputSchemata())) + .orderBy( + Sysschemas.SCHEMANAME, + Systables.TABLENAME) + .fetch()) { + + SchemaDefinition schema = getSchema(record.getValue(Sysschemas.SCHEMANAME)); + String name = record.getValue(Systables.TABLENAME); + String id = record.getValue(Systables.TABLEID); + + DerbyTableDefinition table = new DerbyTableDefinition(schema, name, id); + result.add(table); + } + + return result; + } + + @Override + protected List getEnums0() throws SQLException { + List result = new ArrayList(); + return result; + } + + @Override + protected List getUDTs0() throws SQLException { + List result = new ArrayList(); + return result; + } + + @Override + protected List getArrays0() throws SQLException { + List result = new ArrayList(); + return result; + } + + @Override + protected List getRoutines0() throws SQLException { + List result = new ArrayList(); + return result; + } + + @Override + protected List getPackages0() throws SQLException { + List result = new ArrayList(); + return result; + } + + @Override + public Factory create() { + return new SysFactory(getConnection()); + } +} diff --git a/jOOQ-meta/src/main/java/org/jooq/util/derby/DerbyTableDefinition.java b/jOOQ-meta/src/main/java/org/jooq/util/derby/DerbyTableDefinition.java new file mode 100644 index 00000000000..bf57636ab2f --- /dev/null +++ b/jOOQ-meta/src/main/java/org/jooq/util/derby/DerbyTableDefinition.java @@ -0,0 +1,109 @@ +/** + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com + * All rights reserved. + * + * This software is licensed to you under the Apache License, Version 2.0 + * (the "License"); You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * 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 "jOOQ" 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 COPYRIGHT OWNER 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. + */ + +package org.jooq.util.derby; + +import static org.jooq.impl.Factory.literal; +import static org.jooq.util.derby.sys.tables.Syscolumns.SYSCOLUMNS; + +import java.sql.SQLException; +import java.util.ArrayList; +import java.util.List; + +import org.jooq.Record; +import org.jooq.util.AbstractTableDefinition; +import org.jooq.util.ColumnDefinition; +import org.jooq.util.DataTypeDefinition; +import org.jooq.util.DefaultColumnDefinition; +import org.jooq.util.DefaultDataTypeDefinition; +import org.jooq.util.SchemaDefinition; +import org.jooq.util.derby.sys.tables.Syscolumns; + +/** + * @author Lukas Eder + */ +public class DerbyTableDefinition extends AbstractTableDefinition { + + private final String tableid; + + public DerbyTableDefinition(SchemaDefinition schema, String name, String tableid) { + super(schema, name, ""); + + this.tableid = tableid; + } + + @Override + public List getElements0() throws SQLException { + List result = new ArrayList(); + + for (Record record : create().select( + Syscolumns.COLUMNNAME, + Syscolumns.COLUMNNUMBER, + Syscolumns.COLUMNDATATYPE, + Syscolumns.AUTOINCREMENTINC) + .from(SYSCOLUMNS) + // [#1241] Suddenly, bind values didn't work any longer, here... + .where(Syscolumns.REFERENCEID.equal(literal("'" + tableid + "'"))) + .orderBy(Syscolumns.COLUMNNUMBER) + .fetch()) { + + String typeName = record.getValueAsString(Syscolumns.COLUMNDATATYPE); + Number precision = parsePrecision(typeName); + Number scale = parseScale(typeName); + + DataTypeDefinition type = new DefaultDataTypeDefinition( + getDatabase(), + getSchema(), + typeName, + precision, + precision, + scale); + + ColumnDefinition column = new DefaultColumnDefinition( + getDatabase().getTable(getSchema(), getName()), + record.getValue(Syscolumns.COLUMNNAME), + record.getValue(Syscolumns.COLUMNNUMBER), + type, + !parseNotNull(typeName), + null != record.getValue(Syscolumns.AUTOINCREMENTINC), + null); + + result.add(column); + } + + return result; + } +} diff --git a/jOOQ-meta/src/main/java/org/jooq/util/derby/sys/Sys.java b/jOOQ-meta/src/main/java/org/jooq/util/derby/sys/Sys.java new file mode 100644 index 00000000000..ee617373547 --- /dev/null +++ b/jOOQ-meta/src/main/java/org/jooq/util/derby/sys/Sys.java @@ -0,0 +1,38 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.util.derby.sys; + +/** + * This class is generated by jOOQ. + */ +@javax.annotation.Generated(value = {"http://www.jooq.org", "2.0.6"}, + comments = "This class is generated by jOOQ") +public class Sys extends org.jooq.impl.SchemaImpl { + + private static final long serialVersionUID = 1010222816; + + /** + * The singleton instance of SYS + */ + public static final Sys SYS = new Sys(); + + /** + * No further instances allowed + */ + private Sys() { + super("SYS"); + } + + @Override + public final java.util.List> getTables() { + return java.util.Arrays.>asList( + org.jooq.util.derby.sys.tables.Syscolumns.SYSCOLUMNS, + org.jooq.util.derby.sys.tables.Sysconglomerates.SYSCONGLOMERATES, + org.jooq.util.derby.sys.tables.Sysconstraints.SYSCONSTRAINTS, + org.jooq.util.derby.sys.tables.Syskeys.SYSKEYS, + org.jooq.util.derby.sys.tables.Sysschemas.SYSSCHEMAS, + org.jooq.util.derby.sys.tables.Syssequences.SYSSEQUENCES, + org.jooq.util.derby.sys.tables.Systables.SYSTABLES); + } +} diff --git a/jOOQ-meta/src/main/java/org/jooq/util/derby/sys/SysFactory.java b/jOOQ-meta/src/main/java/org/jooq/util/derby/sys/SysFactory.java new file mode 100644 index 00000000000..c65b67235d6 --- /dev/null +++ b/jOOQ-meta/src/main/java/org/jooq/util/derby/sys/SysFactory.java @@ -0,0 +1,33 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.util.derby.sys; + +/** + * This class is generated by jOOQ. + */ +@javax.annotation.Generated(value = {"http://www.jooq.org", "2.0.6"}, + comments = "This class is generated by jOOQ") +public class SysFactory extends org.jooq.util.derby.DerbyFactory { + + private static final long serialVersionUID = -483544403; + + /** + * Create a factory with a connection + * + * @param connection The connection to use with objects created from this factory + */ + public SysFactory(java.sql.Connection connection) { + super(connection); + } + + /** + * Create a factory with a connection and some settings + * + * @param connection The connection to use with objects created from this factory + * @param settings The settings to apply to objects created from this factory + */ + public SysFactory(java.sql.Connection connection, org.jooq.conf.Settings settings) { + super(connection, settings); + } +} diff --git a/jOOQ-meta/src/main/java/org/jooq/util/derby/sys/Tables.java b/jOOQ-meta/src/main/java/org/jooq/util/derby/sys/Tables.java new file mode 100644 index 00000000000..a4596134b19 --- /dev/null +++ b/jOOQ-meta/src/main/java/org/jooq/util/derby/sys/Tables.java @@ -0,0 +1,54 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.util.derby.sys; + +/** + * This class is generated by jOOQ. + * + * Convenience access to all tables in SYS + */ +@javax.annotation.Generated(value = {"http://www.jooq.org", "2.0.6"}, + comments = "This class is generated by jOOQ") +public final class Tables { + + /** + * The table SYS.SYSCOLUMNS + */ + public static org.jooq.util.derby.sys.tables.Syscolumns SYSCOLUMNS = org.jooq.util.derby.sys.tables.Syscolumns.SYSCOLUMNS; + + /** + * The table SYS.SYSCONGLOMERATES + */ + public static org.jooq.util.derby.sys.tables.Sysconglomerates SYSCONGLOMERATES = org.jooq.util.derby.sys.tables.Sysconglomerates.SYSCONGLOMERATES; + + /** + * The table SYS.SYSCONSTRAINTS + */ + public static org.jooq.util.derby.sys.tables.Sysconstraints SYSCONSTRAINTS = org.jooq.util.derby.sys.tables.Sysconstraints.SYSCONSTRAINTS; + + /** + * The table SYS.SYSKEYS + */ + public static org.jooq.util.derby.sys.tables.Syskeys SYSKEYS = org.jooq.util.derby.sys.tables.Syskeys.SYSKEYS; + + /** + * The table SYS.SYSSCHEMAS + */ + public static org.jooq.util.derby.sys.tables.Sysschemas SYSSCHEMAS = org.jooq.util.derby.sys.tables.Sysschemas.SYSSCHEMAS; + + /** + * The table SYS.SYSSEQUENCES + */ + public static org.jooq.util.derby.sys.tables.Syssequences SYSSEQUENCES = org.jooq.util.derby.sys.tables.Syssequences.SYSSEQUENCES; + + /** + * The table SYS.SYSTABLES + */ + public static org.jooq.util.derby.sys.tables.Systables SYSTABLES = org.jooq.util.derby.sys.tables.Systables.SYSTABLES; + + /** + * No instances + */ + private Tables() {} +} diff --git a/jOOQ-meta/src/main/java/org/jooq/util/derby/sys/tables/Syscolumns.java b/jOOQ-meta/src/main/java/org/jooq/util/derby/sys/tables/Syscolumns.java new file mode 100644 index 00000000000..c901226332d --- /dev/null +++ b/jOOQ-meta/src/main/java/org/jooq/util/derby/sys/tables/Syscolumns.java @@ -0,0 +1,84 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.util.derby.sys.tables; + +/** + * This class is generated by jOOQ. + */ +@javax.annotation.Generated(value = {"http://www.jooq.org", "2.0.6"}, + comments = "This class is generated by jOOQ") +public class Syscolumns extends org.jooq.impl.TableImpl { + + private static final long serialVersionUID = 395894311; + + /** + * The singleton instance of SYS.SYSCOLUMNS + */ + public static final org.jooq.util.derby.sys.tables.Syscolumns SYSCOLUMNS = new org.jooq.util.derby.sys.tables.Syscolumns(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.Record.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + */ + public static final org.jooq.TableField REFERENCEID = createField("REFERENCEID", org.jooq.impl.SQLDataType.CHAR, SYSCOLUMNS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField COLUMNNAME = createField("COLUMNNAME", org.jooq.impl.SQLDataType.VARCHAR, SYSCOLUMNS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField COLUMNNUMBER = createField("COLUMNNUMBER", org.jooq.impl.SQLDataType.INTEGER, SYSCOLUMNS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField COLUMNDATATYPE = createField("COLUMNDATATYPE", org.jooq.impl.SQLDataType.CLOB, SYSCOLUMNS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField COLUMNDEFAULT = createField("COLUMNDEFAULT", org.jooq.impl.SQLDataType.CLOB, SYSCOLUMNS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField COLUMNDEFAULTID = createField("COLUMNDEFAULTID", org.jooq.impl.SQLDataType.CHAR, SYSCOLUMNS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField AUTOINCREMENTVALUE = createField("AUTOINCREMENTVALUE", org.jooq.impl.SQLDataType.BIGINT, SYSCOLUMNS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField AUTOINCREMENTSTART = createField("AUTOINCREMENTSTART", org.jooq.impl.SQLDataType.BIGINT, SYSCOLUMNS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField AUTOINCREMENTINC = createField("AUTOINCREMENTINC", org.jooq.impl.SQLDataType.BIGINT, SYSCOLUMNS); + + /** + * No further instances allowed + */ + private Syscolumns() { + super("SYSCOLUMNS", org.jooq.util.derby.sys.Sys.SYS); + } +} diff --git a/jOOQ-meta/src/main/java/org/jooq/util/derby/sys/tables/Sysconglomerates.java b/jOOQ-meta/src/main/java/org/jooq/util/derby/sys/tables/Sysconglomerates.java new file mode 100644 index 00000000000..cfd6ed5d740 --- /dev/null +++ b/jOOQ-meta/src/main/java/org/jooq/util/derby/sys/tables/Sysconglomerates.java @@ -0,0 +1,79 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.util.derby.sys.tables; + +/** + * This class is generated by jOOQ. + */ +@javax.annotation.Generated(value = {"http://www.jooq.org", "2.0.6"}, + comments = "This class is generated by jOOQ") +public class Sysconglomerates extends org.jooq.impl.TableImpl { + + private static final long serialVersionUID = 1728016698; + + /** + * The singleton instance of SYS.SYSCONGLOMERATES + */ + public static final org.jooq.util.derby.sys.tables.Sysconglomerates SYSCONGLOMERATES = new org.jooq.util.derby.sys.tables.Sysconglomerates(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.Record.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + */ + public static final org.jooq.TableField SCHEMAID = createField("SCHEMAID", org.jooq.impl.SQLDataType.CHAR, SYSCONGLOMERATES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField TABLEID = createField("TABLEID", org.jooq.impl.SQLDataType.CHAR, SYSCONGLOMERATES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField CONGLOMERATENUMBER = createField("CONGLOMERATENUMBER", org.jooq.impl.SQLDataType.BIGINT, SYSCONGLOMERATES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField CONGLOMERATENAME = createField("CONGLOMERATENAME", org.jooq.impl.SQLDataType.VARCHAR, SYSCONGLOMERATES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField ISINDEX = createField("ISINDEX", org.jooq.impl.SQLDataType.BOOLEAN, SYSCONGLOMERATES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField DESCRIPTOR = createField("DESCRIPTOR", org.jooq.impl.SQLDataType.CLOB, SYSCONGLOMERATES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField ISCONSTRAINT = createField("ISCONSTRAINT", org.jooq.impl.SQLDataType.BOOLEAN, SYSCONGLOMERATES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField CONGLOMERATEID = createField("CONGLOMERATEID", org.jooq.impl.SQLDataType.CHAR, SYSCONGLOMERATES); + + /** + * No further instances allowed + */ + private Sysconglomerates() { + super("SYSCONGLOMERATES", org.jooq.util.derby.sys.Sys.SYS); + } +} diff --git a/jOOQ-meta/src/main/java/org/jooq/util/derby/sys/tables/Sysconstraints.java b/jOOQ-meta/src/main/java/org/jooq/util/derby/sys/tables/Sysconstraints.java new file mode 100644 index 00000000000..71ff75fc347 --- /dev/null +++ b/jOOQ-meta/src/main/java/org/jooq/util/derby/sys/tables/Sysconstraints.java @@ -0,0 +1,74 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.util.derby.sys.tables; + +/** + * This class is generated by jOOQ. + */ +@javax.annotation.Generated(value = {"http://www.jooq.org", "2.0.6"}, + comments = "This class is generated by jOOQ") +public class Sysconstraints extends org.jooq.impl.TableImpl { + + private static final long serialVersionUID = -1611327913; + + /** + * The singleton instance of SYS.SYSCONSTRAINTS + */ + public static final org.jooq.util.derby.sys.tables.Sysconstraints SYSCONSTRAINTS = new org.jooq.util.derby.sys.tables.Sysconstraints(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.Record.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + */ + public static final org.jooq.TableField CONSTRAINTID = createField("CONSTRAINTID", org.jooq.impl.SQLDataType.CHAR, SYSCONSTRAINTS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField TABLEID = createField("TABLEID", org.jooq.impl.SQLDataType.CHAR, SYSCONSTRAINTS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField CONSTRAINTNAME = createField("CONSTRAINTNAME", org.jooq.impl.SQLDataType.VARCHAR, SYSCONSTRAINTS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField TYPE = createField("TYPE", org.jooq.impl.SQLDataType.CHAR, SYSCONSTRAINTS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField SCHEMAID = createField("SCHEMAID", org.jooq.impl.SQLDataType.CHAR, SYSCONSTRAINTS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField STATE = createField("STATE", org.jooq.impl.SQLDataType.CHAR, SYSCONSTRAINTS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField REFERENCECOUNT = createField("REFERENCECOUNT", org.jooq.impl.SQLDataType.INTEGER, SYSCONSTRAINTS); + + /** + * No further instances allowed + */ + private Sysconstraints() { + super("SYSCONSTRAINTS", org.jooq.util.derby.sys.Sys.SYS); + } +} diff --git a/jOOQ-meta/src/main/java/org/jooq/util/derby/sys/tables/Syskeys.java b/jOOQ-meta/src/main/java/org/jooq/util/derby/sys/tables/Syskeys.java new file mode 100644 index 00000000000..df07d8617c1 --- /dev/null +++ b/jOOQ-meta/src/main/java/org/jooq/util/derby/sys/tables/Syskeys.java @@ -0,0 +1,49 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.util.derby.sys.tables; + +/** + * This class is generated by jOOQ. + */ +@javax.annotation.Generated(value = {"http://www.jooq.org", "2.0.6"}, + comments = "This class is generated by jOOQ") +public class Syskeys extends org.jooq.impl.TableImpl { + + private static final long serialVersionUID = -301380660; + + /** + * The singleton instance of SYS.SYSKEYS + */ + public static final org.jooq.util.derby.sys.tables.Syskeys SYSKEYS = new org.jooq.util.derby.sys.tables.Syskeys(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.Record.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + */ + public static final org.jooq.TableField CONSTRAINTID = createField("CONSTRAINTID", org.jooq.impl.SQLDataType.CHAR, SYSKEYS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField CONGLOMERATEID = createField("CONGLOMERATEID", org.jooq.impl.SQLDataType.CHAR, SYSKEYS); + + /** + * No further instances allowed + */ + private Syskeys() { + super("SYSKEYS", org.jooq.util.derby.sys.Sys.SYS); + } +} diff --git a/jOOQ-meta/src/main/java/org/jooq/util/derby/sys/tables/Sysschemas.java b/jOOQ-meta/src/main/java/org/jooq/util/derby/sys/tables/Sysschemas.java new file mode 100644 index 00000000000..25d57199f77 --- /dev/null +++ b/jOOQ-meta/src/main/java/org/jooq/util/derby/sys/tables/Sysschemas.java @@ -0,0 +1,54 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.util.derby.sys.tables; + +/** + * This class is generated by jOOQ. + */ +@javax.annotation.Generated(value = {"http://www.jooq.org", "2.0.6"}, + comments = "This class is generated by jOOQ") +public class Sysschemas extends org.jooq.impl.TableImpl { + + private static final long serialVersionUID = -1393598965; + + /** + * The singleton instance of SYS.SYSSCHEMAS + */ + public static final org.jooq.util.derby.sys.tables.Sysschemas SYSSCHEMAS = new org.jooq.util.derby.sys.tables.Sysschemas(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.Record.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + */ + public static final org.jooq.TableField SCHEMAID = createField("SCHEMAID", org.jooq.impl.SQLDataType.CHAR, SYSSCHEMAS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField SCHEMANAME = createField("SCHEMANAME", org.jooq.impl.SQLDataType.VARCHAR, SYSSCHEMAS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField AUTHORIZATIONID = createField("AUTHORIZATIONID", org.jooq.impl.SQLDataType.VARCHAR, SYSSCHEMAS); + + /** + * No further instances allowed + */ + private Sysschemas() { + super("SYSSCHEMAS", org.jooq.util.derby.sys.Sys.SYS); + } +} diff --git a/jOOQ-meta/src/main/java/org/jooq/util/derby/sys/tables/Syssequences.java b/jOOQ-meta/src/main/java/org/jooq/util/derby/sys/tables/Syssequences.java new file mode 100644 index 00000000000..d73c559b707 --- /dev/null +++ b/jOOQ-meta/src/main/java/org/jooq/util/derby/sys/tables/Syssequences.java @@ -0,0 +1,89 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.util.derby.sys.tables; + +/** + * This class is generated by jOOQ. + */ +@javax.annotation.Generated(value = {"http://www.jooq.org", "2.0.6"}, + comments = "This class is generated by jOOQ") +public class Syssequences extends org.jooq.impl.TableImpl { + + private static final long serialVersionUID = -935260837; + + /** + * The singleton instance of SYS.SYSSEQUENCES + */ + public static final org.jooq.util.derby.sys.tables.Syssequences SYSSEQUENCES = new org.jooq.util.derby.sys.tables.Syssequences(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.Record.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + */ + public static final org.jooq.TableField SEQUENCEID = createField("SEQUENCEID", org.jooq.impl.SQLDataType.CHAR, SYSSEQUENCES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField SEQUENCENAME = createField("SEQUENCENAME", org.jooq.impl.SQLDataType.VARCHAR, SYSSEQUENCES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField SCHEMAID = createField("SCHEMAID", org.jooq.impl.SQLDataType.CHAR, SYSSEQUENCES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField SEQUENCEDATATYPE = createField("SEQUENCEDATATYPE", org.jooq.impl.SQLDataType.CLOB, SYSSEQUENCES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField CURRENTVALUE = createField("CURRENTVALUE", org.jooq.impl.SQLDataType.BIGINT, SYSSEQUENCES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField STARTVALUE = createField("STARTVALUE", org.jooq.impl.SQLDataType.BIGINT, SYSSEQUENCES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField MINIMUMVALUE = createField("MINIMUMVALUE", org.jooq.impl.SQLDataType.BIGINT, SYSSEQUENCES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField MAXIMUMVALUE = createField("MAXIMUMVALUE", org.jooq.impl.SQLDataType.BIGINT, SYSSEQUENCES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField INCREMENT = createField("INCREMENT", org.jooq.impl.SQLDataType.BIGINT, SYSSEQUENCES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField CYCLEOPTION = createField("CYCLEOPTION", org.jooq.impl.SQLDataType.CHAR, SYSSEQUENCES); + + /** + * No further instances allowed + */ + private Syssequences() { + super("SYSSEQUENCES", org.jooq.util.derby.sys.Sys.SYS); + } +} diff --git a/jOOQ-meta/src/main/java/org/jooq/util/derby/sys/tables/Systables.java b/jOOQ-meta/src/main/java/org/jooq/util/derby/sys/tables/Systables.java new file mode 100644 index 00000000000..1ff1f078128 --- /dev/null +++ b/jOOQ-meta/src/main/java/org/jooq/util/derby/sys/tables/Systables.java @@ -0,0 +1,64 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.util.derby.sys.tables; + +/** + * This class is generated by jOOQ. + */ +@javax.annotation.Generated(value = {"http://www.jooq.org", "2.0.6"}, + comments = "This class is generated by jOOQ") +public class Systables extends org.jooq.impl.TableImpl { + + private static final long serialVersionUID = -184649128; + + /** + * The singleton instance of SYS.SYSTABLES + */ + public static final org.jooq.util.derby.sys.tables.Systables SYSTABLES = new org.jooq.util.derby.sys.tables.Systables(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.Record.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + */ + public static final org.jooq.TableField TABLEID = createField("TABLEID", org.jooq.impl.SQLDataType.CHAR, SYSTABLES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField TABLENAME = createField("TABLENAME", org.jooq.impl.SQLDataType.VARCHAR, SYSTABLES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField TABLETYPE = createField("TABLETYPE", org.jooq.impl.SQLDataType.CHAR, SYSTABLES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField SCHEMAID = createField("SCHEMAID", org.jooq.impl.SQLDataType.CHAR, SYSTABLES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField LOCKGRANULARITY = createField("LOCKGRANULARITY", org.jooq.impl.SQLDataType.CHAR, SYSTABLES); + + /** + * No further instances allowed + */ + private Systables() { + super("SYSTABLES", org.jooq.util.derby.sys.Sys.SYS); + } +} diff --git a/jOOQ-meta/src/main/java/org/jooq/util/h2/H2Database.java b/jOOQ-meta/src/main/java/org/jooq/util/h2/H2Database.java new file mode 100644 index 00000000000..4b6240692d7 --- /dev/null +++ b/jOOQ-meta/src/main/java/org/jooq/util/h2/H2Database.java @@ -0,0 +1,290 @@ +/** + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com + * All rights reserved. + * + * This software is licensed to you under the Apache License, Version 2.0 + * (the "License"); You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * 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 "jOOQ" 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 COPYRIGHT OWNER 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. + */ +package org.jooq.util.h2; + +import static org.jooq.util.h2.information_schema.tables.Constraints.CONSTRAINTS; +import static org.jooq.util.h2.information_schema.tables.CrossReferences.CROSS_REFERENCES; +import static org.jooq.util.h2.information_schema.tables.FunctionAliases.FUNCTION_ALIASES; +import static org.jooq.util.h2.information_schema.tables.Sequences.SEQUENCES; +import static org.jooq.util.h2.information_schema.tables.Tables.TABLES; +import static org.jooq.util.h2.information_schema.tables.TypeInfo.TYPE_INFO; + +import java.sql.SQLException; +import java.util.ArrayList; +import java.util.List; + +import org.jooq.Record; +import org.jooq.impl.Factory; +import org.jooq.util.AbstractDatabase; +import org.jooq.util.ArrayDefinition; +import org.jooq.util.ColumnDefinition; +import org.jooq.util.DefaultDataTypeDefinition; +import org.jooq.util.DefaultRelations; +import org.jooq.util.DefaultSequenceDefinition; +import org.jooq.util.EnumDefinition; +import org.jooq.util.PackageDefinition; +import org.jooq.util.RoutineDefinition; +import org.jooq.util.SchemaDefinition; +import org.jooq.util.SequenceDefinition; +import org.jooq.util.TableDefinition; +import org.jooq.util.UDTDefinition; +import org.jooq.util.h2.information_schema.InformationSchemaFactory; +import org.jooq.util.h2.information_schema.tables.Constraints; +import org.jooq.util.h2.information_schema.tables.CrossReferences; +import org.jooq.util.h2.information_schema.tables.FunctionAliases; +import org.jooq.util.h2.information_schema.tables.Sequences; +import org.jooq.util.h2.information_schema.tables.Tables; +import org.jooq.util.h2.information_schema.tables.TypeInfo; + +/** + * H2 implementation of {@link AbstractDatabase} + * + * @author Espen Stromsnes + */ +public class H2Database extends AbstractDatabase { + + @Override + public Factory create() { + return new InformationSchemaFactory(getConnection()); + } + + @Override + protected void loadPrimaryKeys(DefaultRelations relations) throws SQLException { + for (Record record : fetchKeys("PRIMARY KEY")) { + SchemaDefinition schema = getSchema(record.getValue(Constraints.TABLE_SCHEMA)); + String tableName = record.getValue(Constraints.TABLE_NAME); + String columnList = record.getValue(Constraints.COLUMN_LIST); + String primaryKey = record.getValue(Constraints.CONSTRAINT_NAME); + + TableDefinition table = getTable(schema, tableName); + if (table != null) { + String[] columnNames = columnList.split("[,]+"); + + for (String columnName : columnNames) { + relations.addPrimaryKey(primaryKey, table.getColumn(columnName)); + } + } + } + } + + @Override + protected void loadUniqueKeys(DefaultRelations relations) throws SQLException { + for (Record record : fetchKeys("UNIQUE")) { + SchemaDefinition schema = getSchema(record.getValue(Constraints.TABLE_SCHEMA)); + String tableName = record.getValue(Constraints.TABLE_NAME); + String columnList = record.getValue(Constraints.COLUMN_LIST); + String primaryKey = record.getValue(Constraints.CONSTRAINT_NAME); + + TableDefinition table = getTable(schema, tableName); + if (table != null) { + String[] columnNames = columnList.split("[,]+"); + + for (String columnName : columnNames) { + relations.addUniqueKey(primaryKey, table.getColumn(columnName)); + } + } + } + } + + private List fetchKeys(String constraintType) { + return create().select( + Constraints.TABLE_SCHEMA, + Constraints.TABLE_NAME, + Constraints.COLUMN_LIST, + Constraints.CONSTRAINT_NAME) + .from(CONSTRAINTS) + .where(Constraints.TABLE_SCHEMA.in(getInputSchemata())) + .and(Constraints.CONSTRAINT_TYPE.equal(constraintType)) + .orderBy( + Constraints.TABLE_SCHEMA, + Constraints.CONSTRAINT_NAME, + Constraints.COLUMN_LIST) + .fetch(); + } + + @Override + protected void loadForeignKeys(DefaultRelations relations) throws SQLException { + for (Record record : create().select( + CrossReferences.FK_NAME, + CrossReferences.FKTABLE_NAME, + CrossReferences.FKTABLE_SCHEMA, + CrossReferences.FKCOLUMN_NAME, + Constraints.CONSTRAINT_NAME, + Constraints.CONSTRAINT_SCHEMA) + .from(CROSS_REFERENCES) + .join(CONSTRAINTS) + .on(CrossReferences.PK_NAME.equal(Constraints.UNIQUE_INDEX_NAME)) + .and(CrossReferences.PKTABLE_NAME.equal(Constraints.TABLE_NAME)) + .and(CrossReferences.PKTABLE_SCHEMA.equal(Constraints.TABLE_SCHEMA)) + .where(CrossReferences.FKTABLE_SCHEMA.in(getInputSchemata())) + .orderBy( + CrossReferences.FKTABLE_SCHEMA.asc(), + CrossReferences.FK_NAME.asc(), + CrossReferences.ORDINAL_POSITION.asc()) + .fetch()) { + + SchemaDefinition foreignKeySchema = getSchema(record.getValue(CrossReferences.FKTABLE_SCHEMA)); + SchemaDefinition uniqueKeySchema = getSchema(record.getValue(Constraints.CONSTRAINT_SCHEMA)); + + String foreignKeyTableName = record.getValue(CrossReferences.FKTABLE_NAME); + String foreignKeyColumn = record.getValue(CrossReferences.FKCOLUMN_NAME); + String foreignKey = record.getValue(CrossReferences.FK_NAME); + String uniqueKey = record.getValue(Constraints.CONSTRAINT_NAME); + + TableDefinition foreignKeyTable = getTable(foreignKeySchema, foreignKeyTableName); + if (foreignKeyTable != null) { + ColumnDefinition referencingColumn = foreignKeyTable.getColumn(foreignKeyColumn); + + relations.addForeignKey(foreignKey, uniqueKey, referencingColumn, uniqueKeySchema); + } + } + } + + @Override + protected List getSequences0() throws SQLException { + List result = new ArrayList(); + + for (Record record : create().select( + Sequences.SEQUENCE_SCHEMA, + Sequences.SEQUENCE_NAME) + .from(SEQUENCES) + .where(Sequences.SEQUENCE_SCHEMA.in(getInputSchemata())) + .orderBy( + Sequences.SEQUENCE_SCHEMA, + Sequences.SEQUENCE_NAME) + .fetch()) { + + SchemaDefinition schema = getSchema(record.getValue(Sequences.SEQUENCE_SCHEMA)); + String name = record.getValue(Sequences.SEQUENCE_NAME); + + DefaultDataTypeDefinition type = new DefaultDataTypeDefinition( + this, + schema, + H2DataType.BIGINT.getTypeName(), 0, 0, 0); + + result.add(new DefaultSequenceDefinition(schema, name, type)); + } + + return result; + } + + @Override + protected List getTables0() throws SQLException { + List result = new ArrayList(); + + for (Record record : create().select( + Tables.TABLE_SCHEMA, + Tables.TABLE_NAME, + Tables.REMARKS) + .from(TABLES) + .where(Tables.TABLE_SCHEMA.in(getInputSchemata())) + .orderBy( + Tables.TABLE_SCHEMA, + Tables.ID) + .fetch()) { + + SchemaDefinition schema = getSchema(record.getValue(Tables.TABLE_SCHEMA)); + String name = record.getValue(Tables.TABLE_NAME); + String comment = record.getValue(Tables.REMARKS); + + H2TableDefinition table = new H2TableDefinition(schema, name, comment); + result.add(table); + } + + return result; + } + + @Override + protected List getRoutines0() throws SQLException { + List result = new ArrayList(); + + for (Record record : create() + .select( + FunctionAliases.ALIAS_SCHEMA, + FunctionAliases.ALIAS_NAME, + FunctionAliases.REMARKS, + FunctionAliases.DATA_TYPE, + FunctionAliases.RETURNS_RESULT, + TypeInfo.TYPE_NAME, + TypeInfo.PRECISION, + TypeInfo.MAXIMUM_SCALE) + .from(FUNCTION_ALIASES) + .leftOuterJoin(TYPE_INFO) + .on(FunctionAliases.DATA_TYPE.equal(TypeInfo.DATA_TYPE)) + // [#1256] TODO implement this correctly. Not sure if POS = 0 + // is the right predicate to rule out duplicate entries in TYPE_INFO + .and(TypeInfo.POS.equal(0)) + .where(FunctionAliases.ALIAS_SCHEMA.in(getInputSchemata())) + .and(FunctionAliases.RETURNS_RESULT.in((short) 1, (short) 2)) + .orderBy(FunctionAliases.ALIAS_NAME).fetch()) { + + SchemaDefinition schema = getSchema(record.getValue(FunctionAliases.ALIAS_SCHEMA)); + String name = record.getValue(FunctionAliases.ALIAS_NAME); + String comment = record.getValue(FunctionAliases.REMARKS); + String typeName = record.getValue(TypeInfo.TYPE_NAME); + Integer precision = record.getValue(TypeInfo.PRECISION); + Short scale = record.getValue(TypeInfo.MAXIMUM_SCALE); + + result.add(new H2RoutineDefinition(schema, name, comment, typeName, precision, scale)); + } + + return result; + } + + @Override + protected List getPackages0() throws SQLException { + List result = new ArrayList(); + return result; + } + + @Override + protected List getEnums0() throws SQLException { + List result = new ArrayList(); + return result; + } + + @Override + protected List getUDTs0() throws SQLException { + List result = new ArrayList(); + return result; + } + + @Override + protected List getArrays0() throws SQLException { + List result = new ArrayList(); + return result; + } +} diff --git a/jOOQ-meta/src/main/java/org/jooq/util/h2/H2RoutineDefinition.java b/jOOQ-meta/src/main/java/org/jooq/util/h2/H2RoutineDefinition.java new file mode 100644 index 00000000000..43992b1bd15 --- /dev/null +++ b/jOOQ-meta/src/main/java/org/jooq/util/h2/H2RoutineDefinition.java @@ -0,0 +1,117 @@ +/** + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com + * All rights reserved. + * + * This software is licensed to you under the Apache License, Version 2.0 + * (the "License"); You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * 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 "jOOQ" 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 COPYRIGHT OWNER 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. + */ +package org.jooq.util.h2; + + +import static org.jooq.util.h2.information_schema.tables.FunctionColumns.FUNCTION_COLUMNS; + +import java.sql.SQLException; + +import org.jooq.Record; +import org.jooq.tools.StringUtils; +import org.jooq.util.AbstractRoutineDefinition; +import org.jooq.util.DataTypeDefinition; +import org.jooq.util.DefaultDataTypeDefinition; +import org.jooq.util.DefaultParameterDefinition; +import org.jooq.util.InOutDefinition; +import org.jooq.util.ParameterDefinition; +import org.jooq.util.SchemaDefinition; +import org.jooq.util.h2.information_schema.tables.FunctionColumns; + +/** + * H2 implementation of {@link AbstractRoutineDefinition} + * + * @author Espen Stromsnes + * @author Lukas Eder + */ +public class H2RoutineDefinition extends AbstractRoutineDefinition { + + public H2RoutineDefinition(SchemaDefinition schema, String name, String comment, String typeName, Number precision, Number scale) { + super(schema, null, name, comment, null); + + if (!StringUtils.isBlank(typeName)) { + DataTypeDefinition type = new DefaultDataTypeDefinition( + getDatabase(), + schema, + typeName, + precision, + precision, + scale); + + this.returnValue = new DefaultParameterDefinition(this, "RETURN_VALUE", -1, type); + } + } + + @Override + protected void init0() throws SQLException { + for (Record record : create() + .select( + FunctionColumns.COLUMN_NAME, + FunctionColumns.TYPE_NAME, + FunctionColumns.PRECISION, + FunctionColumns.SCALE, + FunctionColumns.POS) + .from(FUNCTION_COLUMNS) + .where(FunctionColumns.ALIAS_SCHEMA.equal(getSchema().getName())) + .and(FunctionColumns.ALIAS_NAME.equal(getName())) + .orderBy(FunctionColumns.POS.asc()).fetch()) { + + String paramName = record.getValue(FunctionColumns.COLUMN_NAME); + String typeName = record.getValue(FunctionColumns.TYPE_NAME); + Integer precision = record.getValue(FunctionColumns.PRECISION); + Short scale = record.getValue(FunctionColumns.SCALE); + int position = record.getValue(FunctionColumns.POS); + + // VERY special case for H2 alias/function parameters. The first parameter + // may be a java.sql.Connection object and in such cases it should NEVER be used. + // It is only used internally by H2 to provide a connection to the current database. + if (position == 0 && H2DataType.OTHER.getTypeName().equalsIgnoreCase(typeName)) { + continue; + } + + DataTypeDefinition type = new DefaultDataTypeDefinition( + getDatabase(), + getSchema(), typeName, + precision, + precision, + scale); + + ParameterDefinition parameter = new DefaultParameterDefinition(this, paramName, position, type); + + addParameter(InOutDefinition.IN, parameter); + } + } +} diff --git a/jOOQ-meta/src/main/java/org/jooq/util/h2/H2TableDefinition.java b/jOOQ-meta/src/main/java/org/jooq/util/h2/H2TableDefinition.java new file mode 100644 index 00000000000..00b3e943b1b --- /dev/null +++ b/jOOQ-meta/src/main/java/org/jooq/util/h2/H2TableDefinition.java @@ -0,0 +1,107 @@ +/** + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com + * All rights reserved. + * + * This software is licensed to you under the Apache License, Version 2.0 + * (the "License"); You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * 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 "jOOQ" 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 COPYRIGHT OWNER 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. + */ +package org.jooq.util.h2; + +import static org.jooq.util.h2.information_schema.tables.Columns.COLUMNS; + +import java.sql.SQLException; +import java.util.ArrayList; +import java.util.List; + +import org.jooq.Record; +import org.jooq.util.AbstractTableDefinition; +import org.jooq.util.ColumnDefinition; +import org.jooq.util.DataTypeDefinition; +import org.jooq.util.DefaultColumnDefinition; +import org.jooq.util.DefaultDataTypeDefinition; +import org.jooq.util.SchemaDefinition; +import org.jooq.util.h2.information_schema.tables.Columns; + +/** + * H2 table definition + * + * @author Espen Stromsnes + */ + +public class H2TableDefinition extends AbstractTableDefinition { + + public H2TableDefinition(SchemaDefinition schema, String name, String comment) { + super(schema, name, comment); + } + + @Override + public List getElements0() throws SQLException { + List result = new ArrayList(); + + for (Record record : create().select( + Columns.COLUMN_NAME, + Columns.ORDINAL_POSITION, + Columns.TYPE_NAME, + Columns.CHARACTER_MAXIMUM_LENGTH, + Columns.NUMERIC_PRECISION, + Columns.NUMERIC_SCALE, + Columns.IS_NULLABLE, + Columns.REMARKS, + Columns.SEQUENCE_NAME) + .from(COLUMNS) + .where(Columns.TABLE_SCHEMA.equal(getSchema().getName())) + .and(Columns.TABLE_NAME.equal(getName())) + .orderBy(Columns.ORDINAL_POSITION) + .fetch()) { + + DataTypeDefinition type = new DefaultDataTypeDefinition( + getDatabase(), + getSchema(), + record.getValue(Columns.TYPE_NAME), + record.getValue(Columns.CHARACTER_MAXIMUM_LENGTH), + record.getValue(Columns.NUMERIC_PRECISION), + record.getValue(Columns.NUMERIC_SCALE)); + + ColumnDefinition column = new DefaultColumnDefinition( + getDatabase().getTable(getSchema(), getName()), + record.getValue(Columns.COLUMN_NAME), + record.getValue(Columns.ORDINAL_POSITION), + type, + record.getValue(Columns.IS_NULLABLE, boolean.class), + null != record.getValue(Columns.SEQUENCE_NAME), + record.getValue(Columns.REMARKS)); + + result.add(column); + } + + return result; + } +} diff --git a/jOOQ-meta/src/main/java/org/jooq/util/h2/information_schema/InformationSchema.java b/jOOQ-meta/src/main/java/org/jooq/util/h2/information_schema/InformationSchema.java new file mode 100644 index 00000000000..8fd4445d979 --- /dev/null +++ b/jOOQ-meta/src/main/java/org/jooq/util/h2/information_schema/InformationSchema.java @@ -0,0 +1,39 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.util.h2.information_schema; + +/** + * This class is generated by jOOQ. + */ +@javax.annotation.Generated(value = {"http://www.jooq.org", "2.0.6"}, + comments = "This class is generated by jOOQ") +public class InformationSchema extends org.jooq.impl.SchemaImpl { + + private static final long serialVersionUID = 1888320696; + + /** + * The singleton instance of INFORMATION_SCHEMA + */ + public static final InformationSchema INFORMATION_SCHEMA = new InformationSchema(); + + /** + * No further instances allowed + */ + private InformationSchema() { + super("INFORMATION_SCHEMA"); + } + + @Override + public final java.util.List> getTables() { + return java.util.Arrays.>asList( + org.jooq.util.h2.information_schema.tables.FunctionColumns.FUNCTION_COLUMNS, + org.jooq.util.h2.information_schema.tables.Constraints.CONSTRAINTS, + org.jooq.util.h2.information_schema.tables.CrossReferences.CROSS_REFERENCES, + org.jooq.util.h2.information_schema.tables.FunctionAliases.FUNCTION_ALIASES, + org.jooq.util.h2.information_schema.tables.Sequences.SEQUENCES, + org.jooq.util.h2.information_schema.tables.TypeInfo.TYPE_INFO, + org.jooq.util.h2.information_schema.tables.Columns.COLUMNS, + org.jooq.util.h2.information_schema.tables.Tables.TABLES); + } +} diff --git a/jOOQ-meta/src/main/java/org/jooq/util/h2/information_schema/InformationSchemaFactory.java b/jOOQ-meta/src/main/java/org/jooq/util/h2/information_schema/InformationSchemaFactory.java new file mode 100644 index 00000000000..d26196f6635 --- /dev/null +++ b/jOOQ-meta/src/main/java/org/jooq/util/h2/information_schema/InformationSchemaFactory.java @@ -0,0 +1,33 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.util.h2.information_schema; + +/** + * This class is generated by jOOQ. + */ +@javax.annotation.Generated(value = {"http://www.jooq.org", "2.0.6"}, + comments = "This class is generated by jOOQ") +public class InformationSchemaFactory extends org.jooq.util.h2.H2Factory { + + private static final long serialVersionUID = 1216829554; + + /** + * Create a factory with a connection + * + * @param connection The connection to use with objects created from this factory + */ + public InformationSchemaFactory(java.sql.Connection connection) { + super(connection); + } + + /** + * Create a factory with a connection and some settings + * + * @param connection The connection to use with objects created from this factory + * @param settings The settings to apply to objects created from this factory + */ + public InformationSchemaFactory(java.sql.Connection connection, org.jooq.conf.Settings settings) { + super(connection, settings); + } +} diff --git a/jOOQ-meta/src/main/java/org/jooq/util/h2/information_schema/Tables.java b/jOOQ-meta/src/main/java/org/jooq/util/h2/information_schema/Tables.java new file mode 100644 index 00000000000..9cbd2b3d110 --- /dev/null +++ b/jOOQ-meta/src/main/java/org/jooq/util/h2/information_schema/Tables.java @@ -0,0 +1,59 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.util.h2.information_schema; + +/** + * This class is generated by jOOQ. + * + * Convenience access to all tables in INFORMATION_SCHEMA + */ +@javax.annotation.Generated(value = {"http://www.jooq.org", "2.0.6"}, + comments = "This class is generated by jOOQ") +public final class Tables { + + /** + * The table INFORMATION_SCHEMA.FUNCTION_COLUMNS + */ + public static org.jooq.util.h2.information_schema.tables.FunctionColumns FUNCTION_COLUMNS = org.jooq.util.h2.information_schema.tables.FunctionColumns.FUNCTION_COLUMNS; + + /** + * The table INFORMATION_SCHEMA.CONSTRAINTS + */ + public static org.jooq.util.h2.information_schema.tables.Constraints CONSTRAINTS = org.jooq.util.h2.information_schema.tables.Constraints.CONSTRAINTS; + + /** + * The table INFORMATION_SCHEMA.CROSS_REFERENCES + */ + public static org.jooq.util.h2.information_schema.tables.CrossReferences CROSS_REFERENCES = org.jooq.util.h2.information_schema.tables.CrossReferences.CROSS_REFERENCES; + + /** + * The table INFORMATION_SCHEMA.FUNCTION_ALIASES + */ + public static org.jooq.util.h2.information_schema.tables.FunctionAliases FUNCTION_ALIASES = org.jooq.util.h2.information_schema.tables.FunctionAliases.FUNCTION_ALIASES; + + /** + * The table INFORMATION_SCHEMA.SEQUENCES + */ + public static org.jooq.util.h2.information_schema.tables.Sequences SEQUENCES = org.jooq.util.h2.information_schema.tables.Sequences.SEQUENCES; + + /** + * The table INFORMATION_SCHEMA.TYPE_INFO + */ + public static org.jooq.util.h2.information_schema.tables.TypeInfo TYPE_INFO = org.jooq.util.h2.information_schema.tables.TypeInfo.TYPE_INFO; + + /** + * The table INFORMATION_SCHEMA.COLUMNS + */ + public static org.jooq.util.h2.information_schema.tables.Columns COLUMNS = org.jooq.util.h2.information_schema.tables.Columns.COLUMNS; + + /** + * The table INFORMATION_SCHEMA.TABLES + */ + public static org.jooq.util.h2.information_schema.tables.Tables TABLES = org.jooq.util.h2.information_schema.tables.Tables.TABLES; + + /** + * No instances + */ + private Tables() {} +} diff --git a/jOOQ-meta/src/main/java/org/jooq/util/h2/information_schema/tables/Columns.java b/jOOQ-meta/src/main/java/org/jooq/util/h2/information_schema/tables/Columns.java new file mode 100644 index 00000000000..ac121b5aa7e --- /dev/null +++ b/jOOQ-meta/src/main/java/org/jooq/util/h2/information_schema/tables/Columns.java @@ -0,0 +1,154 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.util.h2.information_schema.tables; + +/** + * This class is generated by jOOQ. + */ +@javax.annotation.Generated(value = {"http://www.jooq.org", "2.0.6"}, + comments = "This class is generated by jOOQ") +public class Columns extends org.jooq.impl.TableImpl { + + private static final long serialVersionUID = 344248416; + + /** + * The singleton instance of INFORMATION_SCHEMA.COLUMNS + */ + public static final org.jooq.util.h2.information_schema.tables.Columns COLUMNS = new org.jooq.util.h2.information_schema.tables.Columns(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.Record.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + */ + public static final org.jooq.TableField TABLE_CATALOG = createField("TABLE_CATALOG", org.jooq.impl.SQLDataType.VARCHAR, COLUMNS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField TABLE_SCHEMA = createField("TABLE_SCHEMA", org.jooq.impl.SQLDataType.VARCHAR, COLUMNS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField TABLE_NAME = createField("TABLE_NAME", org.jooq.impl.SQLDataType.VARCHAR, COLUMNS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField COLUMN_NAME = createField("COLUMN_NAME", org.jooq.impl.SQLDataType.VARCHAR, COLUMNS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField ORDINAL_POSITION = createField("ORDINAL_POSITION", org.jooq.impl.SQLDataType.INTEGER, COLUMNS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField COLUMN_DEFAULT = createField("COLUMN_DEFAULT", org.jooq.impl.SQLDataType.VARCHAR, COLUMNS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField IS_NULLABLE = createField("IS_NULLABLE", org.jooq.impl.SQLDataType.VARCHAR, COLUMNS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField DATA_TYPE = createField("DATA_TYPE", org.jooq.impl.SQLDataType.INTEGER, COLUMNS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField CHARACTER_MAXIMUM_LENGTH = createField("CHARACTER_MAXIMUM_LENGTH", org.jooq.impl.SQLDataType.INTEGER, COLUMNS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField CHARACTER_OCTET_LENGTH = createField("CHARACTER_OCTET_LENGTH", org.jooq.impl.SQLDataType.INTEGER, COLUMNS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField NUMERIC_PRECISION = createField("NUMERIC_PRECISION", org.jooq.impl.SQLDataType.INTEGER, COLUMNS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField NUMERIC_PRECISION_RADIX = createField("NUMERIC_PRECISION_RADIX", org.jooq.impl.SQLDataType.INTEGER, COLUMNS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField NUMERIC_SCALE = createField("NUMERIC_SCALE", org.jooq.impl.SQLDataType.INTEGER, COLUMNS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField CHARACTER_SET_NAME = createField("CHARACTER_SET_NAME", org.jooq.impl.SQLDataType.VARCHAR, COLUMNS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField COLLATION_NAME = createField("COLLATION_NAME", org.jooq.impl.SQLDataType.VARCHAR, COLUMNS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField TYPE_NAME = createField("TYPE_NAME", org.jooq.impl.SQLDataType.VARCHAR, COLUMNS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField NULLABLE = createField("NULLABLE", org.jooq.impl.SQLDataType.INTEGER, COLUMNS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField IS_COMPUTED = createField("IS_COMPUTED", org.jooq.impl.SQLDataType.BOOLEAN, COLUMNS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField SELECTIVITY = createField("SELECTIVITY", org.jooq.impl.SQLDataType.INTEGER, COLUMNS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField CHECK_CONSTRAINT = createField("CHECK_CONSTRAINT", org.jooq.impl.SQLDataType.VARCHAR, COLUMNS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField SEQUENCE_NAME = createField("SEQUENCE_NAME", org.jooq.impl.SQLDataType.VARCHAR, COLUMNS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField REMARKS = createField("REMARKS", org.jooq.impl.SQLDataType.VARCHAR, COLUMNS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField SOURCE_DATA_TYPE = createField("SOURCE_DATA_TYPE", org.jooq.impl.SQLDataType.SMALLINT, COLUMNS); + + /** + * No further instances allowed + */ + private Columns() { + super("COLUMNS", org.jooq.util.h2.information_schema.InformationSchema.INFORMATION_SCHEMA); + } +} diff --git a/jOOQ-meta/src/main/java/org/jooq/util/h2/information_schema/tables/Constraints.java b/jOOQ-meta/src/main/java/org/jooq/util/h2/information_schema/tables/Constraints.java new file mode 100644 index 00000000000..4009fa2baca --- /dev/null +++ b/jOOQ-meta/src/main/java/org/jooq/util/h2/information_schema/tables/Constraints.java @@ -0,0 +1,104 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.util.h2.information_schema.tables; + +/** + * This class is generated by jOOQ. + */ +@javax.annotation.Generated(value = {"http://www.jooq.org", "2.0.6"}, + comments = "This class is generated by jOOQ") +public class Constraints extends org.jooq.impl.TableImpl { + + private static final long serialVersionUID = -820225270; + + /** + * The singleton instance of INFORMATION_SCHEMA.CONSTRAINTS + */ + public static final org.jooq.util.h2.information_schema.tables.Constraints CONSTRAINTS = new org.jooq.util.h2.information_schema.tables.Constraints(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.Record.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + */ + public static final org.jooq.TableField CONSTRAINT_CATALOG = createField("CONSTRAINT_CATALOG", org.jooq.impl.SQLDataType.VARCHAR, CONSTRAINTS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField CONSTRAINT_SCHEMA = createField("CONSTRAINT_SCHEMA", org.jooq.impl.SQLDataType.VARCHAR, CONSTRAINTS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField CONSTRAINT_NAME = createField("CONSTRAINT_NAME", org.jooq.impl.SQLDataType.VARCHAR, CONSTRAINTS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField CONSTRAINT_TYPE = createField("CONSTRAINT_TYPE", org.jooq.impl.SQLDataType.VARCHAR, CONSTRAINTS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField TABLE_CATALOG = createField("TABLE_CATALOG", org.jooq.impl.SQLDataType.VARCHAR, CONSTRAINTS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField TABLE_SCHEMA = createField("TABLE_SCHEMA", org.jooq.impl.SQLDataType.VARCHAR, CONSTRAINTS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField TABLE_NAME = createField("TABLE_NAME", org.jooq.impl.SQLDataType.VARCHAR, CONSTRAINTS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField UNIQUE_INDEX_NAME = createField("UNIQUE_INDEX_NAME", org.jooq.impl.SQLDataType.VARCHAR, CONSTRAINTS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField CHECK_EXPRESSION = createField("CHECK_EXPRESSION", org.jooq.impl.SQLDataType.VARCHAR, CONSTRAINTS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField COLUMN_LIST = createField("COLUMN_LIST", org.jooq.impl.SQLDataType.VARCHAR, CONSTRAINTS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField REMARKS = createField("REMARKS", org.jooq.impl.SQLDataType.VARCHAR, CONSTRAINTS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField SQL = createField("SQL", org.jooq.impl.SQLDataType.VARCHAR, CONSTRAINTS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField ID = createField("ID", org.jooq.impl.SQLDataType.INTEGER, CONSTRAINTS); + + /** + * No further instances allowed + */ + private Constraints() { + super("CONSTRAINTS", org.jooq.util.h2.information_schema.InformationSchema.INFORMATION_SCHEMA); + } +} diff --git a/jOOQ-meta/src/main/java/org/jooq/util/h2/information_schema/tables/CrossReferences.java b/jOOQ-meta/src/main/java/org/jooq/util/h2/information_schema/tables/CrossReferences.java new file mode 100644 index 00000000000..da5c833c4b9 --- /dev/null +++ b/jOOQ-meta/src/main/java/org/jooq/util/h2/information_schema/tables/CrossReferences.java @@ -0,0 +1,109 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.util.h2.information_schema.tables; + +/** + * This class is generated by jOOQ. + */ +@javax.annotation.Generated(value = {"http://www.jooq.org", "2.0.6"}, + comments = "This class is generated by jOOQ") +public class CrossReferences extends org.jooq.impl.TableImpl { + + private static final long serialVersionUID = 379859458; + + /** + * The singleton instance of INFORMATION_SCHEMA.CROSS_REFERENCES + */ + public static final org.jooq.util.h2.information_schema.tables.CrossReferences CROSS_REFERENCES = new org.jooq.util.h2.information_schema.tables.CrossReferences(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.Record.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + */ + public static final org.jooq.TableField PKTABLE_CATALOG = createField("PKTABLE_CATALOG", org.jooq.impl.SQLDataType.VARCHAR, CROSS_REFERENCES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField PKTABLE_SCHEMA = createField("PKTABLE_SCHEMA", org.jooq.impl.SQLDataType.VARCHAR, CROSS_REFERENCES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField PKTABLE_NAME = createField("PKTABLE_NAME", org.jooq.impl.SQLDataType.VARCHAR, CROSS_REFERENCES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField PKCOLUMN_NAME = createField("PKCOLUMN_NAME", org.jooq.impl.SQLDataType.VARCHAR, CROSS_REFERENCES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField FKTABLE_CATALOG = createField("FKTABLE_CATALOG", org.jooq.impl.SQLDataType.VARCHAR, CROSS_REFERENCES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField FKTABLE_SCHEMA = createField("FKTABLE_SCHEMA", org.jooq.impl.SQLDataType.VARCHAR, CROSS_REFERENCES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField FKTABLE_NAME = createField("FKTABLE_NAME", org.jooq.impl.SQLDataType.VARCHAR, CROSS_REFERENCES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField FKCOLUMN_NAME = createField("FKCOLUMN_NAME", org.jooq.impl.SQLDataType.VARCHAR, CROSS_REFERENCES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField ORDINAL_POSITION = createField("ORDINAL_POSITION", org.jooq.impl.SQLDataType.SMALLINT, CROSS_REFERENCES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField UPDATE_RULE = createField("UPDATE_RULE", org.jooq.impl.SQLDataType.SMALLINT, CROSS_REFERENCES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField DELETE_RULE = createField("DELETE_RULE", org.jooq.impl.SQLDataType.SMALLINT, CROSS_REFERENCES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField FK_NAME = createField("FK_NAME", org.jooq.impl.SQLDataType.VARCHAR, CROSS_REFERENCES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField PK_NAME = createField("PK_NAME", org.jooq.impl.SQLDataType.VARCHAR, CROSS_REFERENCES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField DEFERRABILITY = createField("DEFERRABILITY", org.jooq.impl.SQLDataType.SMALLINT, CROSS_REFERENCES); + + /** + * No further instances allowed + */ + private CrossReferences() { + super("CROSS_REFERENCES", org.jooq.util.h2.information_schema.InformationSchema.INFORMATION_SCHEMA); + } +} diff --git a/jOOQ-meta/src/main/java/org/jooq/util/h2/information_schema/tables/FunctionAliases.java b/jOOQ-meta/src/main/java/org/jooq/util/h2/information_schema/tables/FunctionAliases.java new file mode 100644 index 00000000000..fb5fe4565f4 --- /dev/null +++ b/jOOQ-meta/src/main/java/org/jooq/util/h2/information_schema/tables/FunctionAliases.java @@ -0,0 +1,94 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.util.h2.information_schema.tables; + +/** + * This class is generated by jOOQ. + */ +@javax.annotation.Generated(value = {"http://www.jooq.org", "2.0.6"}, + comments = "This class is generated by jOOQ") +public class FunctionAliases extends org.jooq.impl.TableImpl { + + private static final long serialVersionUID = -745022602; + + /** + * The singleton instance of INFORMATION_SCHEMA.FUNCTION_ALIASES + */ + public static final org.jooq.util.h2.information_schema.tables.FunctionAliases FUNCTION_ALIASES = new org.jooq.util.h2.information_schema.tables.FunctionAliases(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.Record.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + */ + public static final org.jooq.TableField ALIAS_CATALOG = createField("ALIAS_CATALOG", org.jooq.impl.SQLDataType.VARCHAR, FUNCTION_ALIASES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField ALIAS_SCHEMA = createField("ALIAS_SCHEMA", org.jooq.impl.SQLDataType.VARCHAR, FUNCTION_ALIASES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField ALIAS_NAME = createField("ALIAS_NAME", org.jooq.impl.SQLDataType.VARCHAR, FUNCTION_ALIASES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField JAVA_CLASS = createField("JAVA_CLASS", org.jooq.impl.SQLDataType.VARCHAR, FUNCTION_ALIASES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField JAVA_METHOD = createField("JAVA_METHOD", org.jooq.impl.SQLDataType.VARCHAR, FUNCTION_ALIASES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField DATA_TYPE = createField("DATA_TYPE", org.jooq.impl.SQLDataType.INTEGER, FUNCTION_ALIASES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField COLUMN_COUNT = createField("COLUMN_COUNT", org.jooq.impl.SQLDataType.INTEGER, FUNCTION_ALIASES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField RETURNS_RESULT = createField("RETURNS_RESULT", org.jooq.impl.SQLDataType.SMALLINT, FUNCTION_ALIASES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField REMARKS = createField("REMARKS", org.jooq.impl.SQLDataType.VARCHAR, FUNCTION_ALIASES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField ID = createField("ID", org.jooq.impl.SQLDataType.INTEGER, FUNCTION_ALIASES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField SOURCE = createField("SOURCE", org.jooq.impl.SQLDataType.VARCHAR, FUNCTION_ALIASES); + + /** + * No further instances allowed + */ + private FunctionAliases() { + super("FUNCTION_ALIASES", org.jooq.util.h2.information_schema.InformationSchema.INFORMATION_SCHEMA); + } +} diff --git a/jOOQ-meta/src/main/java/org/jooq/util/h2/information_schema/tables/FunctionColumns.java b/jOOQ-meta/src/main/java/org/jooq/util/h2/information_schema/tables/FunctionColumns.java new file mode 100644 index 00000000000..2a512890e33 --- /dev/null +++ b/jOOQ-meta/src/main/java/org/jooq/util/h2/information_schema/tables/FunctionColumns.java @@ -0,0 +1,124 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.util.h2.information_schema.tables; + +/** + * This class is generated by jOOQ. + */ +@javax.annotation.Generated(value = {"http://www.jooq.org", "2.0.6"}, + comments = "This class is generated by jOOQ") +public class FunctionColumns extends org.jooq.impl.TableImpl { + + private static final long serialVersionUID = 2037193224; + + /** + * The singleton instance of INFORMATION_SCHEMA.FUNCTION_COLUMNS + */ + public static final org.jooq.util.h2.information_schema.tables.FunctionColumns FUNCTION_COLUMNS = new org.jooq.util.h2.information_schema.tables.FunctionColumns(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.Record.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + */ + public static final org.jooq.TableField ALIAS_CATALOG = createField("ALIAS_CATALOG", org.jooq.impl.SQLDataType.VARCHAR, FUNCTION_COLUMNS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField ALIAS_SCHEMA = createField("ALIAS_SCHEMA", org.jooq.impl.SQLDataType.VARCHAR, FUNCTION_COLUMNS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField ALIAS_NAME = createField("ALIAS_NAME", org.jooq.impl.SQLDataType.VARCHAR, FUNCTION_COLUMNS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField JAVA_CLASS = createField("JAVA_CLASS", org.jooq.impl.SQLDataType.VARCHAR, FUNCTION_COLUMNS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField JAVA_METHOD = createField("JAVA_METHOD", org.jooq.impl.SQLDataType.VARCHAR, FUNCTION_COLUMNS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField COLUMN_COUNT = createField("COLUMN_COUNT", org.jooq.impl.SQLDataType.INTEGER, FUNCTION_COLUMNS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField POS = createField("POS", org.jooq.impl.SQLDataType.INTEGER, FUNCTION_COLUMNS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField COLUMN_NAME = createField("COLUMN_NAME", org.jooq.impl.SQLDataType.VARCHAR, FUNCTION_COLUMNS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField DATA_TYPE = createField("DATA_TYPE", org.jooq.impl.SQLDataType.INTEGER, FUNCTION_COLUMNS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField TYPE_NAME = createField("TYPE_NAME", org.jooq.impl.SQLDataType.VARCHAR, FUNCTION_COLUMNS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField PRECISION = createField("PRECISION", org.jooq.impl.SQLDataType.INTEGER, FUNCTION_COLUMNS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField SCALE = createField("SCALE", org.jooq.impl.SQLDataType.SMALLINT, FUNCTION_COLUMNS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField RADIX = createField("RADIX", org.jooq.impl.SQLDataType.SMALLINT, FUNCTION_COLUMNS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField NULLABLE = createField("NULLABLE", org.jooq.impl.SQLDataType.SMALLINT, FUNCTION_COLUMNS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField COLUMN_TYPE = createField("COLUMN_TYPE", org.jooq.impl.SQLDataType.SMALLINT, FUNCTION_COLUMNS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField REMARKS = createField("REMARKS", org.jooq.impl.SQLDataType.VARCHAR, FUNCTION_COLUMNS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField COLUMN_DEFAULT = createField("COLUMN_DEFAULT", org.jooq.impl.SQLDataType.VARCHAR, FUNCTION_COLUMNS); + + /** + * No further instances allowed + */ + private FunctionColumns() { + super("FUNCTION_COLUMNS", org.jooq.util.h2.information_schema.InformationSchema.INFORMATION_SCHEMA); + } +} diff --git a/jOOQ-meta/src/main/java/org/jooq/util/h2/information_schema/tables/Sequences.java b/jOOQ-meta/src/main/java/org/jooq/util/h2/information_schema/tables/Sequences.java new file mode 100644 index 00000000000..dba468706a5 --- /dev/null +++ b/jOOQ-meta/src/main/java/org/jooq/util/h2/information_schema/tables/Sequences.java @@ -0,0 +1,84 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.util.h2.information_schema.tables; + +/** + * This class is generated by jOOQ. + */ +@javax.annotation.Generated(value = {"http://www.jooq.org", "2.0.6"}, + comments = "This class is generated by jOOQ") +public class Sequences extends org.jooq.impl.TableImpl { + + private static final long serialVersionUID = 726821903; + + /** + * The singleton instance of INFORMATION_SCHEMA.SEQUENCES + */ + public static final org.jooq.util.h2.information_schema.tables.Sequences SEQUENCES = new org.jooq.util.h2.information_schema.tables.Sequences(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.Record.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + */ + public static final org.jooq.TableField SEQUENCE_CATALOG = createField("SEQUENCE_CATALOG", org.jooq.impl.SQLDataType.VARCHAR, SEQUENCES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField SEQUENCE_SCHEMA = createField("SEQUENCE_SCHEMA", org.jooq.impl.SQLDataType.VARCHAR, SEQUENCES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField SEQUENCE_NAME = createField("SEQUENCE_NAME", org.jooq.impl.SQLDataType.VARCHAR, SEQUENCES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField CURRENT_VALUE = createField("CURRENT_VALUE", org.jooq.impl.SQLDataType.BIGINT, SEQUENCES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField INCREMENT = createField("INCREMENT", org.jooq.impl.SQLDataType.BIGINT, SEQUENCES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField IS_GENERATED = createField("IS_GENERATED", org.jooq.impl.SQLDataType.BOOLEAN, SEQUENCES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField REMARKS = createField("REMARKS", org.jooq.impl.SQLDataType.VARCHAR, SEQUENCES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField CACHE = createField("CACHE", org.jooq.impl.SQLDataType.BIGINT, SEQUENCES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField ID = createField("ID", org.jooq.impl.SQLDataType.INTEGER, SEQUENCES); + + /** + * No further instances allowed + */ + private Sequences() { + super("SEQUENCES", org.jooq.util.h2.information_schema.InformationSchema.INFORMATION_SCHEMA); + } +} diff --git a/jOOQ-meta/src/main/java/org/jooq/util/h2/information_schema/tables/Tables.java b/jOOQ-meta/src/main/java/org/jooq/util/h2/information_schema/tables/Tables.java new file mode 100644 index 00000000000..5b1b0a776d2 --- /dev/null +++ b/jOOQ-meta/src/main/java/org/jooq/util/h2/information_schema/tables/Tables.java @@ -0,0 +1,94 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.util.h2.information_schema.tables; + +/** + * This class is generated by jOOQ. + */ +@javax.annotation.Generated(value = {"http://www.jooq.org", "2.0.6"}, + comments = "This class is generated by jOOQ") +public class Tables extends org.jooq.impl.TableImpl { + + private static final long serialVersionUID = -909898387; + + /** + * The singleton instance of INFORMATION_SCHEMA.TABLES + */ + public static final org.jooq.util.h2.information_schema.tables.Tables TABLES = new org.jooq.util.h2.information_schema.tables.Tables(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.Record.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + */ + public static final org.jooq.TableField TABLE_CATALOG = createField("TABLE_CATALOG", org.jooq.impl.SQLDataType.VARCHAR, TABLES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField TABLE_SCHEMA = createField("TABLE_SCHEMA", org.jooq.impl.SQLDataType.VARCHAR, TABLES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField TABLE_NAME = createField("TABLE_NAME", org.jooq.impl.SQLDataType.VARCHAR, TABLES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField TABLE_TYPE = createField("TABLE_TYPE", org.jooq.impl.SQLDataType.VARCHAR, TABLES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField STORAGE_TYPE = createField("STORAGE_TYPE", org.jooq.impl.SQLDataType.VARCHAR, TABLES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField SQL = createField("SQL", org.jooq.impl.SQLDataType.VARCHAR, TABLES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField REMARKS = createField("REMARKS", org.jooq.impl.SQLDataType.VARCHAR, TABLES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField LAST_MODIFICATION = createField("LAST_MODIFICATION", org.jooq.impl.SQLDataType.BIGINT, TABLES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField ID = createField("ID", org.jooq.impl.SQLDataType.INTEGER, TABLES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField TYPE_NAME = createField("TYPE_NAME", org.jooq.impl.SQLDataType.VARCHAR, TABLES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField TABLE_CLASS = createField("TABLE_CLASS", org.jooq.impl.SQLDataType.VARCHAR, TABLES); + + /** + * No further instances allowed + */ + private Tables() { + super("TABLES", org.jooq.util.h2.information_schema.InformationSchema.INFORMATION_SCHEMA); + } +} diff --git a/jOOQ-meta/src/main/java/org/jooq/util/h2/information_schema/tables/TypeInfo.java b/jOOQ-meta/src/main/java/org/jooq/util/h2/information_schema/tables/TypeInfo.java new file mode 100644 index 00000000000..e96efbc006e --- /dev/null +++ b/jOOQ-meta/src/main/java/org/jooq/util/h2/information_schema/tables/TypeInfo.java @@ -0,0 +1,109 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.util.h2.information_schema.tables; + +/** + * This class is generated by jOOQ. + */ +@javax.annotation.Generated(value = {"http://www.jooq.org", "2.0.6"}, + comments = "This class is generated by jOOQ") +public class TypeInfo extends org.jooq.impl.TableImpl { + + private static final long serialVersionUID = 1507222662; + + /** + * The singleton instance of INFORMATION_SCHEMA.TYPE_INFO + */ + public static final org.jooq.util.h2.information_schema.tables.TypeInfo TYPE_INFO = new org.jooq.util.h2.information_schema.tables.TypeInfo(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.Record.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + */ + public static final org.jooq.TableField TYPE_NAME = createField("TYPE_NAME", org.jooq.impl.SQLDataType.VARCHAR, TYPE_INFO); + + /** + * An uncommented item + */ + public static final org.jooq.TableField DATA_TYPE = createField("DATA_TYPE", org.jooq.impl.SQLDataType.INTEGER, TYPE_INFO); + + /** + * An uncommented item + */ + public static final org.jooq.TableField PRECISION = createField("PRECISION", org.jooq.impl.SQLDataType.INTEGER, TYPE_INFO); + + /** + * An uncommented item + */ + public static final org.jooq.TableField PREFIX = createField("PREFIX", org.jooq.impl.SQLDataType.VARCHAR, TYPE_INFO); + + /** + * An uncommented item + */ + public static final org.jooq.TableField SUFFIX = createField("SUFFIX", org.jooq.impl.SQLDataType.VARCHAR, TYPE_INFO); + + /** + * An uncommented item + */ + public static final org.jooq.TableField PARAMS = createField("PARAMS", org.jooq.impl.SQLDataType.VARCHAR, TYPE_INFO); + + /** + * An uncommented item + */ + public static final org.jooq.TableField AUTO_INCREMENT = createField("AUTO_INCREMENT", org.jooq.impl.SQLDataType.BOOLEAN, TYPE_INFO); + + /** + * An uncommented item + */ + public static final org.jooq.TableField MINIMUM_SCALE = createField("MINIMUM_SCALE", org.jooq.impl.SQLDataType.SMALLINT, TYPE_INFO); + + /** + * An uncommented item + */ + public static final org.jooq.TableField MAXIMUM_SCALE = createField("MAXIMUM_SCALE", org.jooq.impl.SQLDataType.SMALLINT, TYPE_INFO); + + /** + * An uncommented item + */ + public static final org.jooq.TableField RADIX = createField("RADIX", org.jooq.impl.SQLDataType.INTEGER, TYPE_INFO); + + /** + * An uncommented item + */ + public static final org.jooq.TableField POS = createField("POS", org.jooq.impl.SQLDataType.INTEGER, TYPE_INFO); + + /** + * An uncommented item + */ + public static final org.jooq.TableField CASE_SENSITIVE = createField("CASE_SENSITIVE", org.jooq.impl.SQLDataType.BOOLEAN, TYPE_INFO); + + /** + * An uncommented item + */ + public static final org.jooq.TableField NULLABLE = createField("NULLABLE", org.jooq.impl.SQLDataType.SMALLINT, TYPE_INFO); + + /** + * An uncommented item + */ + public static final org.jooq.TableField SEARCHABLE = createField("SEARCHABLE", org.jooq.impl.SQLDataType.SMALLINT, TYPE_INFO); + + /** + * No further instances allowed + */ + private TypeInfo() { + super("TYPE_INFO", org.jooq.util.h2.information_schema.InformationSchema.INFORMATION_SCHEMA); + } +} diff --git a/jOOQ-meta/src/main/java/org/jooq/util/hsqldb/HSQLDBDatabase.java b/jOOQ-meta/src/main/java/org/jooq/util/hsqldb/HSQLDBDatabase.java new file mode 100644 index 00000000000..000151f63eb --- /dev/null +++ b/jOOQ-meta/src/main/java/org/jooq/util/hsqldb/HSQLDBDatabase.java @@ -0,0 +1,316 @@ +/** + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com + * All rights reserved. + * + * This software is licensed to you under the Apache License, Version 2.0 + * (the "License"); You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * 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 "jOOQ" 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 COPYRIGHT OWNER 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. + */ + +package org.jooq.util.hsqldb; + +import static org.jooq.impl.Factory.nvl; +import static org.jooq.util.hsqldb.information_schema.Tables.ELEMENT_TYPES; +import static org.jooq.util.hsqldb.information_schema.Tables.KEY_COLUMN_USAGE; +import static org.jooq.util.hsqldb.information_schema.Tables.REFERENTIAL_CONSTRAINTS; +import static org.jooq.util.hsqldb.information_schema.Tables.ROUTINES; +import static org.jooq.util.hsqldb.information_schema.Tables.SEQUENCES; +import static org.jooq.util.hsqldb.information_schema.Tables.TABLES; +import static org.jooq.util.hsqldb.information_schema.Tables.TABLE_CONSTRAINTS; + +import java.sql.SQLException; +import java.util.ArrayList; +import java.util.List; + +import org.jooq.Record; +import org.jooq.Result; +import org.jooq.impl.Factory; +import org.jooq.util.AbstractDatabase; +import org.jooq.util.ArrayDefinition; +import org.jooq.util.ColumnDefinition; +import org.jooq.util.DataTypeDefinition; +import org.jooq.util.DefaultDataTypeDefinition; +import org.jooq.util.DefaultRelations; +import org.jooq.util.DefaultSequenceDefinition; +import org.jooq.util.EnumDefinition; +import org.jooq.util.PackageDefinition; +import org.jooq.util.RoutineDefinition; +import org.jooq.util.SchemaDefinition; +import org.jooq.util.SequenceDefinition; +import org.jooq.util.TableDefinition; +import org.jooq.util.UDTDefinition; + +/** + * The HSQLDB database + * + * @author Lukas Eder + */ +public class HSQLDBDatabase extends AbstractDatabase { + + @Override + public Factory create() { + return new HSQLDBFactory(getConnection()); + } + + /** + * {@inheritDoc} + */ + @Override + protected void loadPrimaryKeys(DefaultRelations relations) throws SQLException { + for (Record record : fetchKeys("PRIMARY KEY")) { + SchemaDefinition schema = getSchema(record.getValue(KEY_COLUMN_USAGE.TABLE_SCHEMA)); + String key = record.getValue(KEY_COLUMN_USAGE.CONSTRAINT_NAME); + String tableName = record.getValue(KEY_COLUMN_USAGE.TABLE_NAME); + String columnName = record.getValue(KEY_COLUMN_USAGE.COLUMN_NAME); + + TableDefinition table = getTable(schema, tableName); + if (table != null) { + relations.addPrimaryKey(key, table.getColumn(columnName)); + } + } + } + + /** + * {@inheritDoc} + */ + @Override + protected void loadUniqueKeys(DefaultRelations relations) throws SQLException { + for (Record record : fetchKeys("UNIQUE")) { + SchemaDefinition schema = getSchema(record.getValue(KEY_COLUMN_USAGE.TABLE_SCHEMA)); + String key = record.getValue(KEY_COLUMN_USAGE.CONSTRAINT_NAME); + String tableName = record.getValue(KEY_COLUMN_USAGE.TABLE_NAME); + String columnName = record.getValue(KEY_COLUMN_USAGE.COLUMN_NAME); + + TableDefinition table = getTable(schema, tableName); + if (table != null) { + relations.addUniqueKey(key, table.getColumn(columnName)); + } + } + } + + private List fetchKeys(String constraintType) { + return create() + .select( + KEY_COLUMN_USAGE.TABLE_SCHEMA, + KEY_COLUMN_USAGE.CONSTRAINT_NAME, + KEY_COLUMN_USAGE.TABLE_NAME, + KEY_COLUMN_USAGE.COLUMN_NAME) + .from(TABLE_CONSTRAINTS + .join(KEY_COLUMN_USAGE) + .on(TABLE_CONSTRAINTS.CONSTRAINT_SCHEMA.equal(KEY_COLUMN_USAGE.CONSTRAINT_SCHEMA)) + .and(TABLE_CONSTRAINTS.CONSTRAINT_NAME.equal(KEY_COLUMN_USAGE.CONSTRAINT_NAME))) + .where(TABLE_CONSTRAINTS.CONSTRAINT_TYPE.equal(constraintType)) + .and(TABLE_CONSTRAINTS.TABLE_SCHEMA.in(getInputSchemata())) + .orderBy( + KEY_COLUMN_USAGE.TABLE_SCHEMA.asc(), + KEY_COLUMN_USAGE.TABLE_NAME.asc(), + KEY_COLUMN_USAGE.CONSTRAINT_NAME.asc(), + KEY_COLUMN_USAGE.ORDINAL_POSITION.asc()) + .fetch(); + } + + /** + * {@inheritDoc} + */ + @Override + protected void loadForeignKeys(DefaultRelations relations) throws SQLException { + Result result = create() + .select( + REFERENTIAL_CONSTRAINTS.UNIQUE_CONSTRAINT_NAME, + REFERENTIAL_CONSTRAINTS.UNIQUE_CONSTRAINT_SCHEMA, + KEY_COLUMN_USAGE.CONSTRAINT_NAME, + KEY_COLUMN_USAGE.TABLE_SCHEMA, + KEY_COLUMN_USAGE.TABLE_NAME, + KEY_COLUMN_USAGE.COLUMN_NAME) + .from(REFERENTIAL_CONSTRAINTS) + .join(KEY_COLUMN_USAGE) + .on(KEY_COLUMN_USAGE.CONSTRAINT_SCHEMA.equal(REFERENTIAL_CONSTRAINTS.CONSTRAINT_SCHEMA)) + .and(KEY_COLUMN_USAGE.CONSTRAINT_NAME.equal(REFERENTIAL_CONSTRAINTS.CONSTRAINT_NAME)) + .where(KEY_COLUMN_USAGE.TABLE_SCHEMA.in(getInputSchemata())) + .orderBy( + KEY_COLUMN_USAGE.TABLE_SCHEMA.asc(), + KEY_COLUMN_USAGE.TABLE_NAME.asc(), + KEY_COLUMN_USAGE.CONSTRAINT_NAME.asc(), + KEY_COLUMN_USAGE.ORDINAL_POSITION.asc()) + .fetch(); + + for (Record record : result) { + SchemaDefinition foreignKeySchema = getSchema(record.getValue(KEY_COLUMN_USAGE.TABLE_SCHEMA)); + SchemaDefinition uniqueKeySchema = getSchema(record.getValue(REFERENTIAL_CONSTRAINTS.UNIQUE_CONSTRAINT_SCHEMA)); + + String foreignKey = record.getValue(KEY_COLUMN_USAGE.CONSTRAINT_NAME); + String foreignKeyTable = record.getValue(KEY_COLUMN_USAGE.TABLE_NAME); + String foreignKeyColumn = record.getValue(KEY_COLUMN_USAGE.COLUMN_NAME); + String uniqueKey = record.getValue(REFERENTIAL_CONSTRAINTS.UNIQUE_CONSTRAINT_NAME); + + TableDefinition referencingTable = getTable(foreignKeySchema, foreignKeyTable); + + if (referencingTable != null) { + ColumnDefinition referencingColumn = referencingTable.getColumn(foreignKeyColumn); + relations.addForeignKey(foreignKey, uniqueKey, referencingColumn, uniqueKeySchema); + } + } + } + + /** + * {@inheritDoc} + */ + @Override + protected List getSequences0() throws SQLException { + List result = new ArrayList(); + + for (Record record : create() + .select( + SEQUENCES.SEQUENCE_SCHEMA, + SEQUENCES.SEQUENCE_NAME, + SEQUENCES.DATA_TYPE) + .from(SEQUENCES) + .where(SEQUENCES.SEQUENCE_SCHEMA.in(getInputSchemata())) + .orderBy( + SEQUENCES.SEQUENCE_SCHEMA, + SEQUENCES.SEQUENCE_NAME) + .fetch()) { + + SchemaDefinition schema = getSchema(record.getValue(SEQUENCES.SEQUENCE_SCHEMA)); + + DataTypeDefinition type = new DefaultDataTypeDefinition( + this, + schema, + record.getValue(SEQUENCES.DATA_TYPE), 0, 0, 0); + + result.add(new DefaultSequenceDefinition( + schema, record.getValue(SEQUENCES.SEQUENCE_NAME), type)); + } + + return result; + } + + /** + * {@inheritDoc} + */ + @Override + protected List getTables0() throws SQLException { + List result = new ArrayList(); + + for (Record record : create() + .select( + TABLES.TABLE_SCHEMA, + TABLES.TABLE_NAME) + .from(TABLES) + .where(TABLES.TABLE_SCHEMA.in(getInputSchemata())) + .orderBy( + TABLES.TABLE_SCHEMA, + TABLES.TABLE_NAME) + .fetch()) { + + SchemaDefinition schema = getSchema(record.getValue(TABLES.TABLE_SCHEMA)); + String name = record.getValue(TABLES.TABLE_NAME); + String comment = ""; + + result.add(new HSQLDBTableDefinition(schema, name, comment)); + } + + return result; + } + + /** + * {@inheritDoc} + */ + @Override + protected List getEnums0() throws SQLException { + List result = new ArrayList(); + return result; + } + + /** + * {@inheritDoc} + */ + @Override + protected List getUDTs0() throws SQLException { + List result = new ArrayList(); + return result; + } + + /** + * {@inheritDoc} + */ + @Override + protected List getArrays0() throws SQLException { + List result = new ArrayList(); + return result; + } + + /** + * {@inheritDoc} + */ + @Override + protected List getRoutines0() throws SQLException { + List result = new ArrayList(); + + for (Record record : create() + .select( + ROUTINES.ROUTINE_SCHEMA, + ROUTINES.ROUTINE_NAME, + ROUTINES.SPECIFIC_NAME, + nvl(ELEMENT_TYPES.COLLECTION_TYPE_IDENTIFIER, ROUTINES.DATA_TYPE).as("datatype"), + ROUTINES.NUMERIC_PRECISION, + ROUTINES.NUMERIC_SCALE) + .from(ROUTINES) + .leftOuterJoin(ELEMENT_TYPES) + .on(ROUTINES.ROUTINE_SCHEMA.equal(ELEMENT_TYPES.OBJECT_SCHEMA)) + .and(ROUTINES.ROUTINE_NAME.equal(ELEMENT_TYPES.OBJECT_NAME)) + .and(ROUTINES.DTD_IDENTIFIER.equal(ELEMENT_TYPES.COLLECTION_TYPE_IDENTIFIER)) + .where(ROUTINES.ROUTINE_SCHEMA.in(getInputSchemata())) + .orderBy( + ROUTINES.ROUTINE_SCHEMA, + ROUTINES.ROUTINE_NAME) + .fetch()) { + + result.add(new HSQLDBRoutineDefinition( + getSchema(record.getValue(ROUTINES.ROUTINE_SCHEMA)), + record.getValue(ROUTINES.ROUTINE_NAME), + record.getValue(ROUTINES.SPECIFIC_NAME), + record.getValueAsString("datatype"), + record.getValue(ROUTINES.NUMERIC_PRECISION), + record.getValue(ROUTINES.NUMERIC_SCALE))); + } + + return result; + } + + /** + * {@inheritDoc} + */ + @Override + protected List getPackages0() throws SQLException { + List result = new ArrayList(); + return result; + } +} diff --git a/jOOQ-meta/src/main/java/org/jooq/util/hsqldb/HSQLDBRoutineDefinition.java b/jOOQ-meta/src/main/java/org/jooq/util/hsqldb/HSQLDBRoutineDefinition.java new file mode 100644 index 00000000000..ece37253da3 --- /dev/null +++ b/jOOQ-meta/src/main/java/org/jooq/util/hsqldb/HSQLDBRoutineDefinition.java @@ -0,0 +1,126 @@ +/** + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com + * All rights reserved. + * + * This software is licensed to you under the Apache License, Version 2.0 + * (the "License"); You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * 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 "jOOQ" 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 COPYRIGHT OWNER 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. + */ +package org.jooq.util.hsqldb; + +import static org.jooq.impl.Factory.nvl; +import static org.jooq.util.hsqldb.information_schema.Tables.ELEMENT_TYPES; +import static org.jooq.util.hsqldb.information_schema.Tables.PARAMETERS; +import static org.jooq.util.hsqldb.information_schema.Tables.ROUTINES; + +import java.sql.SQLException; + +import org.jooq.Record; +import org.jooq.Result; +import org.jooq.tools.StringUtils; +import org.jooq.util.AbstractRoutineDefinition; +import org.jooq.util.DataTypeDefinition; +import org.jooq.util.DefaultDataTypeDefinition; +import org.jooq.util.DefaultParameterDefinition; +import org.jooq.util.InOutDefinition; +import org.jooq.util.ParameterDefinition; +import org.jooq.util.SchemaDefinition; + +/** + * HSQLDB implementation of {@link AbstractRoutineDefinition} + * + * @author Espen Stromsnes + * @author Lukas Eder + */ +public class HSQLDBRoutineDefinition extends AbstractRoutineDefinition { + + private final String specificName; // internal name for the function used by HSQLDB + + public HSQLDBRoutineDefinition(SchemaDefinition schema, String name, String specificName, String dataType, Number precision, Number scale) { + super(schema, null, name, null, null); + + if (!StringUtils.isBlank(dataType)) { + DataTypeDefinition type = new DefaultDataTypeDefinition( + getDatabase(), + getSchema(), + dataType, + precision, + precision, + scale); + + this.returnValue = new DefaultParameterDefinition(this, "RETURN_VALUE", -1, type); + } + + this.specificName = specificName; + } + + @Override + protected void init0() throws SQLException { + Result result = create().select( + PARAMETERS.PARAMETER_MODE, + PARAMETERS.PARAMETER_NAME, + nvl(ELEMENT_TYPES.COLLECTION_TYPE_IDENTIFIER, PARAMETERS.DATA_TYPE).as("datatype"), + PARAMETERS.CHARACTER_MAXIMUM_LENGTH, + PARAMETERS.NUMERIC_PRECISION, + PARAMETERS.NUMERIC_SCALE, + PARAMETERS.ORDINAL_POSITION) + .from(PARAMETERS) + .join(ROUTINES) + .on(PARAMETERS.SPECIFIC_SCHEMA.equal(ROUTINES.SPECIFIC_SCHEMA)) + .and(PARAMETERS.SPECIFIC_NAME.equal(ROUTINES.SPECIFIC_NAME)) + .leftOuterJoin(ELEMENT_TYPES) + .on(ROUTINES.ROUTINE_SCHEMA.equal(ELEMENT_TYPES.OBJECT_SCHEMA)) + .and(ROUTINES.ROUTINE_NAME.equal(ELEMENT_TYPES.OBJECT_NAME)) + .and(PARAMETERS.DTD_IDENTIFIER.equal(ELEMENT_TYPES.COLLECTION_TYPE_IDENTIFIER)) + .where(PARAMETERS.SPECIFIC_SCHEMA.equal(getSchema().getName())) + .and(PARAMETERS.SPECIFIC_NAME.equal(this.specificName)) + .orderBy(PARAMETERS.ORDINAL_POSITION.asc()).fetch(); + + for (Record record : result) { + String inOut = record.getValue(PARAMETERS.PARAMETER_MODE); + + DataTypeDefinition type = new DefaultDataTypeDefinition( + getDatabase(), + getSchema(), + record.getValueAsString("datatype"), + record.getValue(PARAMETERS.CHARACTER_MAXIMUM_LENGTH), + record.getValue(PARAMETERS.NUMERIC_PRECISION), + record.getValue(PARAMETERS.NUMERIC_SCALE)); + + ParameterDefinition parameter = new DefaultParameterDefinition( + this, + record.getValue(PARAMETERS.PARAMETER_NAME).replaceAll("@", ""), + record.getValueAsInteger(PARAMETERS.ORDINAL_POSITION), + type); + + addParameter(InOutDefinition.getFromString(inOut), parameter); + } + } +} diff --git a/jOOQ-meta/src/main/java/org/jooq/util/hsqldb/HSQLDBTableDefinition.java b/jOOQ-meta/src/main/java/org/jooq/util/hsqldb/HSQLDBTableDefinition.java new file mode 100644 index 00000000000..3d32d0dbef9 --- /dev/null +++ b/jOOQ-meta/src/main/java/org/jooq/util/hsqldb/HSQLDBTableDefinition.java @@ -0,0 +1,111 @@ +/** + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com + * All rights reserved. + * + * This software is licensed to you under the Apache License, Version 2.0 + * (the "License"); You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * 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 "jOOQ" 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 COPYRIGHT OWNER 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. + */ + +package org.jooq.util.hsqldb; + +import static org.jooq.impl.Factory.nvl; +import static org.jooq.util.hsqldb.information_schema.Tables.COLUMNS; +import static org.jooq.util.hsqldb.information_schema.Tables.ELEMENT_TYPES; + +import java.sql.SQLException; +import java.util.ArrayList; +import java.util.List; + +import org.jooq.Record; +import org.jooq.util.AbstractTableDefinition; +import org.jooq.util.ColumnDefinition; +import org.jooq.util.DataTypeDefinition; +import org.jooq.util.DefaultColumnDefinition; +import org.jooq.util.DefaultDataTypeDefinition; +import org.jooq.util.SchemaDefinition; + +/** + * @author Lukas Eder + */ +public class HSQLDBTableDefinition extends AbstractTableDefinition { + + public HSQLDBTableDefinition(SchemaDefinition schema, String name, String comment) { + super(schema, name, comment); + } + + @Override + public List getElements0() throws SQLException { + List result = new ArrayList(); + + for (Record record : create().select( + COLUMNS.COLUMN_NAME, + COLUMNS.ORDINAL_POSITION, + nvl(ELEMENT_TYPES.COLLECTION_TYPE_IDENTIFIER, COLUMNS.DATA_TYPE).as("datatype"), + COLUMNS.IDENTITY_GENERATION, + COLUMNS.IS_NULLABLE, + COLUMNS.COLUMN_DEFAULT, + COLUMNS.CHARACTER_MAXIMUM_LENGTH, + COLUMNS.NUMERIC_PRECISION, + COLUMNS.NUMERIC_SCALE, + COLUMNS.UDT_NAME) + .from(COLUMNS) + .leftOuterJoin(ELEMENT_TYPES) + .on(COLUMNS.TABLE_SCHEMA.equal(ELEMENT_TYPES.OBJECT_SCHEMA)) + .and(COLUMNS.TABLE_NAME.equal(ELEMENT_TYPES.OBJECT_NAME)) + .and(COLUMNS.DTD_IDENTIFIER.equal(ELEMENT_TYPES.COLLECTION_TYPE_IDENTIFIER)) + .where(COLUMNS.TABLE_SCHEMA.equal(getSchema().getName())) + .and(COLUMNS.TABLE_NAME.equal(getName())) + .orderBy(COLUMNS.ORDINAL_POSITION) + .fetch()) { + + DataTypeDefinition type = new DefaultDataTypeDefinition( + getDatabase(), + getSchema(), + record.getValueAsString("datatype"), + record.getValue(COLUMNS.CHARACTER_MAXIMUM_LENGTH), + record.getValue(COLUMNS.NUMERIC_PRECISION), + record.getValue(COLUMNS.NUMERIC_SCALE), + record.getValue(COLUMNS.UDT_NAME)); + + ColumnDefinition column = new DefaultColumnDefinition( + getDatabase().getTable(getSchema(), getName()), + record.getValue(COLUMNS.COLUMN_NAME), + record.getValueAsInteger(COLUMNS.ORDINAL_POSITION), + type, + record.getValue(COLUMNS.IS_NULLABLE, boolean.class), + null != record.getValue(COLUMNS.IDENTITY_GENERATION), + null); + result.add(column); + } + + return result; + } +} diff --git a/jOOQ-meta/src/main/java/org/jooq/util/hsqldb/information_schema/InformationSchema.java b/jOOQ-meta/src/main/java/org/jooq/util/hsqldb/information_schema/InformationSchema.java new file mode 100644 index 00000000000..1c60da4070f --- /dev/null +++ b/jOOQ-meta/src/main/java/org/jooq/util/hsqldb/information_schema/InformationSchema.java @@ -0,0 +1,41 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.util.hsqldb.information_schema; + +/** + * This class is generated by jOOQ. + */ +@javax.annotation.Generated(value = {"http://www.jooq.org", "2.0.6"}, + comments = "This class is generated by jOOQ") +public class InformationSchema extends org.jooq.impl.SchemaImpl { + + private static final long serialVersionUID = -1534414125; + + /** + * The singleton instance of INFORMATION_SCHEMA + */ + public static final InformationSchema INFORMATION_SCHEMA = new InformationSchema(); + + /** + * No further instances allowed + */ + private InformationSchema() { + super("INFORMATION_SCHEMA"); + } + + @Override + public final java.util.List> getTables() { + return java.util.Arrays.>asList( + org.jooq.util.hsqldb.information_schema.tables.Columns.COLUMNS, + org.jooq.util.hsqldb.information_schema.tables.ConstraintColumnUsage.CONSTRAINT_COLUMN_USAGE, + org.jooq.util.hsqldb.information_schema.tables.ElementTypes.ELEMENT_TYPES, + org.jooq.util.hsqldb.information_schema.tables.KeyColumnUsage.KEY_COLUMN_USAGE, + org.jooq.util.hsqldb.information_schema.tables.Parameters.PARAMETERS, + org.jooq.util.hsqldb.information_schema.tables.ReferentialConstraints.REFERENTIAL_CONSTRAINTS, + org.jooq.util.hsqldb.information_schema.tables.Routines.ROUTINES, + org.jooq.util.hsqldb.information_schema.tables.Sequences.SEQUENCES, + org.jooq.util.hsqldb.information_schema.tables.Tables.TABLES, + org.jooq.util.hsqldb.information_schema.tables.TableConstraints.TABLE_CONSTRAINTS); + } +} diff --git a/jOOQ-meta/src/main/java/org/jooq/util/hsqldb/information_schema/InformationSchemaFactory.java b/jOOQ-meta/src/main/java/org/jooq/util/hsqldb/information_schema/InformationSchemaFactory.java new file mode 100644 index 00000000000..0869e15af58 --- /dev/null +++ b/jOOQ-meta/src/main/java/org/jooq/util/hsqldb/information_schema/InformationSchemaFactory.java @@ -0,0 +1,33 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.util.hsqldb.information_schema; + +/** + * This class is generated by jOOQ. + */ +@javax.annotation.Generated(value = {"http://www.jooq.org", "2.0.6"}, + comments = "This class is generated by jOOQ") +public class InformationSchemaFactory extends org.jooq.util.hsqldb.HSQLDBFactory { + + private static final long serialVersionUID = 1596782584; + + /** + * Create a factory with a connection + * + * @param connection The connection to use with objects created from this factory + */ + public InformationSchemaFactory(java.sql.Connection connection) { + super(connection); + } + + /** + * Create a factory with a connection and some settings + * + * @param connection The connection to use with objects created from this factory + * @param settings The settings to apply to objects created from this factory + */ + public InformationSchemaFactory(java.sql.Connection connection, org.jooq.conf.Settings settings) { + super(connection, settings); + } +} diff --git a/jOOQ-meta/src/main/java/org/jooq/util/hsqldb/information_schema/Tables.java b/jOOQ-meta/src/main/java/org/jooq/util/hsqldb/information_schema/Tables.java new file mode 100644 index 00000000000..724f1b8d30b --- /dev/null +++ b/jOOQ-meta/src/main/java/org/jooq/util/hsqldb/information_schema/Tables.java @@ -0,0 +1,69 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.util.hsqldb.information_schema; + +/** + * This class is generated by jOOQ. + * + * Convenience access to all tables in INFORMATION_SCHEMA + */ +@javax.annotation.Generated(value = {"http://www.jooq.org", "2.0.6"}, + comments = "This class is generated by jOOQ") +public final class Tables { + + /** + * The table INFORMATION_SCHEMA.COLUMNS + */ + public static org.jooq.util.hsqldb.information_schema.tables.Columns COLUMNS = org.jooq.util.hsqldb.information_schema.tables.Columns.COLUMNS; + + /** + * The table INFORMATION_SCHEMA.CONSTRAINT_COLUMN_USAGE + */ + public static org.jooq.util.hsqldb.information_schema.tables.ConstraintColumnUsage CONSTRAINT_COLUMN_USAGE = org.jooq.util.hsqldb.information_schema.tables.ConstraintColumnUsage.CONSTRAINT_COLUMN_USAGE; + + /** + * The table INFORMATION_SCHEMA.ELEMENT_TYPES + */ + public static org.jooq.util.hsqldb.information_schema.tables.ElementTypes ELEMENT_TYPES = org.jooq.util.hsqldb.information_schema.tables.ElementTypes.ELEMENT_TYPES; + + /** + * The table INFORMATION_SCHEMA.KEY_COLUMN_USAGE + */ + public static org.jooq.util.hsqldb.information_schema.tables.KeyColumnUsage KEY_COLUMN_USAGE = org.jooq.util.hsqldb.information_schema.tables.KeyColumnUsage.KEY_COLUMN_USAGE; + + /** + * The table INFORMATION_SCHEMA.PARAMETERS + */ + public static org.jooq.util.hsqldb.information_schema.tables.Parameters PARAMETERS = org.jooq.util.hsqldb.information_schema.tables.Parameters.PARAMETERS; + + /** + * The table INFORMATION_SCHEMA.REFERENTIAL_CONSTRAINTS + */ + public static org.jooq.util.hsqldb.information_schema.tables.ReferentialConstraints REFERENTIAL_CONSTRAINTS = org.jooq.util.hsqldb.information_schema.tables.ReferentialConstraints.REFERENTIAL_CONSTRAINTS; + + /** + * The table INFORMATION_SCHEMA.ROUTINES + */ + public static org.jooq.util.hsqldb.information_schema.tables.Routines ROUTINES = org.jooq.util.hsqldb.information_schema.tables.Routines.ROUTINES; + + /** + * The table INFORMATION_SCHEMA.SEQUENCES + */ + public static org.jooq.util.hsqldb.information_schema.tables.Sequences SEQUENCES = org.jooq.util.hsqldb.information_schema.tables.Sequences.SEQUENCES; + + /** + * The table INFORMATION_SCHEMA.TABLES + */ + public static org.jooq.util.hsqldb.information_schema.tables.Tables TABLES = org.jooq.util.hsqldb.information_schema.tables.Tables.TABLES; + + /** + * The table INFORMATION_SCHEMA.TABLE_CONSTRAINTS + */ + public static org.jooq.util.hsqldb.information_schema.tables.TableConstraints TABLE_CONSTRAINTS = org.jooq.util.hsqldb.information_schema.tables.TableConstraints.TABLE_CONSTRAINTS; + + /** + * No instances + */ + private Tables() {} +} diff --git a/jOOQ-meta/src/main/java/org/jooq/util/hsqldb/information_schema/tables/Columns.java b/jOOQ-meta/src/main/java/org/jooq/util/hsqldb/information_schema/tables/Columns.java new file mode 100644 index 00000000000..6179b8b3f74 --- /dev/null +++ b/jOOQ-meta/src/main/java/org/jooq/util/hsqldb/information_schema/tables/Columns.java @@ -0,0 +1,286 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.util.hsqldb.information_schema.tables; + +/** + * This class is generated by jOOQ. + */ +@javax.annotation.Generated(value = {"http://www.jooq.org", "2.0.6"}, + comments = "This class is generated by jOOQ") +public class Columns extends org.jooq.impl.TableImpl { + + private static final long serialVersionUID = -173682921; + + /** + * The singleton instance of INFORMATION_SCHEMA.COLUMNS + */ + public static final org.jooq.util.hsqldb.information_schema.tables.Columns COLUMNS = new org.jooq.util.hsqldb.information_schema.tables.Columns(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.Record.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + */ + public final org.jooq.TableField TABLE_CATALOG = createField("TABLE_CATALOG", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField TABLE_SCHEMA = createField("TABLE_SCHEMA", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField TABLE_NAME = createField("TABLE_NAME", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField COLUMN_NAME = createField("COLUMN_NAME", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField ORDINAL_POSITION = createField("ORDINAL_POSITION", org.jooq.impl.SQLDataType.BIGINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField COLUMN_DEFAULT = createField("COLUMN_DEFAULT", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField IS_NULLABLE = createField("IS_NULLABLE", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField DATA_TYPE = createField("DATA_TYPE", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField CHARACTER_MAXIMUM_LENGTH = createField("CHARACTER_MAXIMUM_LENGTH", org.jooq.impl.SQLDataType.BIGINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField CHARACTER_OCTET_LENGTH = createField("CHARACTER_OCTET_LENGTH", org.jooq.impl.SQLDataType.BIGINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField NUMERIC_PRECISION = createField("NUMERIC_PRECISION", org.jooq.impl.SQLDataType.BIGINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField NUMERIC_PRECISION_RADIX = createField("NUMERIC_PRECISION_RADIX", org.jooq.impl.SQLDataType.BIGINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField NUMERIC_SCALE = createField("NUMERIC_SCALE", org.jooq.impl.SQLDataType.BIGINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField DATETIME_PRECISION = createField("DATETIME_PRECISION", org.jooq.impl.SQLDataType.BIGINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField INTERVAL_TYPE = createField("INTERVAL_TYPE", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField INTERVAL_PRECISION = createField("INTERVAL_PRECISION", org.jooq.impl.SQLDataType.BIGINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField CHARACTER_SET_CATALOG = createField("CHARACTER_SET_CATALOG", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField CHARACTER_SET_SCHEMA = createField("CHARACTER_SET_SCHEMA", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField CHARACTER_SET_NAME = createField("CHARACTER_SET_NAME", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField COLLATION_CATALOG = createField("COLLATION_CATALOG", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField COLLATION_SCHEMA = createField("COLLATION_SCHEMA", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField COLLATION_NAME = createField("COLLATION_NAME", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField DOMAIN_CATALOG = createField("DOMAIN_CATALOG", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField DOMAIN_SCHEMA = createField("DOMAIN_SCHEMA", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField DOMAIN_NAME = createField("DOMAIN_NAME", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField UDT_CATALOG = createField("UDT_CATALOG", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField UDT_SCHEMA = createField("UDT_SCHEMA", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField UDT_NAME = createField("UDT_NAME", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField SCOPE_CATALOG = createField("SCOPE_CATALOG", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField SCOPE_SCHEMA = createField("SCOPE_SCHEMA", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField SCOPE_NAME = createField("SCOPE_NAME", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField MAXIMUM_CARDINALITY = createField("MAXIMUM_CARDINALITY", org.jooq.impl.SQLDataType.BIGINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField DTD_IDENTIFIER = createField("DTD_IDENTIFIER", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField IS_SELF_REFERENCING = createField("IS_SELF_REFERENCING", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField IS_IDENTITY = createField("IS_IDENTITY", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField IDENTITY_GENERATION = createField("IDENTITY_GENERATION", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField IDENTITY_START = createField("IDENTITY_START", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField IDENTITY_INCREMENT = createField("IDENTITY_INCREMENT", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField IDENTITY_MAXIMUM = createField("IDENTITY_MAXIMUM", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField IDENTITY_MINIMUM = createField("IDENTITY_MINIMUM", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField IDENTITY_CYCLE = createField("IDENTITY_CYCLE", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField IS_GENERATED = createField("IS_GENERATED", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField GENERATION_EXPRESSION = createField("GENERATION_EXPRESSION", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField IS_UPDATABLE = createField("IS_UPDATABLE", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField DECLARED_DATA_TYPE = createField("DECLARED_DATA_TYPE", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField DECLARED_NUMERIC_PRECISION = createField("DECLARED_NUMERIC_PRECISION", org.jooq.impl.SQLDataType.BIGINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField DECLARED_NUMERIC_SCALE = createField("DECLARED_NUMERIC_SCALE", org.jooq.impl.SQLDataType.BIGINT, this); + + /** + * No further instances allowed + */ + private Columns() { + super("COLUMNS", org.jooq.util.hsqldb.information_schema.InformationSchema.INFORMATION_SCHEMA); + } + + /** + * No further instances allowed + */ + private Columns(java.lang.String alias) { + super(alias, org.jooq.util.hsqldb.information_schema.InformationSchema.INFORMATION_SCHEMA, org.jooq.util.hsqldb.information_schema.tables.Columns.COLUMNS); + } + + @Override + public org.jooq.util.hsqldb.information_schema.tables.Columns as(java.lang.String alias) { + return new org.jooq.util.hsqldb.information_schema.tables.Columns(alias); + } +} diff --git a/jOOQ-meta/src/main/java/org/jooq/util/hsqldb/information_schema/tables/ConstraintColumnUsage.java b/jOOQ-meta/src/main/java/org/jooq/util/hsqldb/information_schema/tables/ConstraintColumnUsage.java new file mode 100644 index 00000000000..72fecad8ac0 --- /dev/null +++ b/jOOQ-meta/src/main/java/org/jooq/util/hsqldb/information_schema/tables/ConstraintColumnUsage.java @@ -0,0 +1,86 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.util.hsqldb.information_schema.tables; + +/** + * This class is generated by jOOQ. + */ +@javax.annotation.Generated(value = {"http://www.jooq.org", "2.0.6"}, + comments = "This class is generated by jOOQ") +public class ConstraintColumnUsage extends org.jooq.impl.TableImpl { + + private static final long serialVersionUID = -1586142196; + + /** + * The singleton instance of INFORMATION_SCHEMA.CONSTRAINT_COLUMN_USAGE + */ + public static final org.jooq.util.hsqldb.information_schema.tables.ConstraintColumnUsage CONSTRAINT_COLUMN_USAGE = new org.jooq.util.hsqldb.information_schema.tables.ConstraintColumnUsage(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.Record.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + */ + public final org.jooq.TableField TABLE_CATALOG = createField("TABLE_CATALOG", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField TABLE_SCHEMA = createField("TABLE_SCHEMA", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField TABLE_NAME = createField("TABLE_NAME", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField COLUMN_NAME = createField("COLUMN_NAME", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField CONSTRAINT_CATALOG = createField("CONSTRAINT_CATALOG", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField CONSTRAINT_SCHEMA = createField("CONSTRAINT_SCHEMA", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField CONSTRAINT_NAME = createField("CONSTRAINT_NAME", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * No further instances allowed + */ + private ConstraintColumnUsage() { + super("CONSTRAINT_COLUMN_USAGE", org.jooq.util.hsqldb.information_schema.InformationSchema.INFORMATION_SCHEMA); + } + + /** + * No further instances allowed + */ + private ConstraintColumnUsage(java.lang.String alias) { + super(alias, org.jooq.util.hsqldb.information_schema.InformationSchema.INFORMATION_SCHEMA, org.jooq.util.hsqldb.information_schema.tables.ConstraintColumnUsage.CONSTRAINT_COLUMN_USAGE); + } + + @Override + public org.jooq.util.hsqldb.information_schema.tables.ConstraintColumnUsage as(java.lang.String alias) { + return new org.jooq.util.hsqldb.information_schema.tables.ConstraintColumnUsage(alias); + } +} diff --git a/jOOQ-meta/src/main/java/org/jooq/util/hsqldb/information_schema/tables/ElementTypes.java b/jOOQ-meta/src/main/java/org/jooq/util/hsqldb/information_schema/tables/ElementTypes.java new file mode 100644 index 00000000000..8400e47aec0 --- /dev/null +++ b/jOOQ-meta/src/main/java/org/jooq/util/hsqldb/information_schema/tables/ElementTypes.java @@ -0,0 +1,206 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.util.hsqldb.information_schema.tables; + +/** + * This class is generated by jOOQ. + */ +@javax.annotation.Generated(value = {"http://www.jooq.org", "2.0.6"}, + comments = "This class is generated by jOOQ") +public class ElementTypes extends org.jooq.impl.TableImpl { + + private static final long serialVersionUID = 398841598; + + /** + * The singleton instance of INFORMATION_SCHEMA.ELEMENT_TYPES + */ + public static final org.jooq.util.hsqldb.information_schema.tables.ElementTypes ELEMENT_TYPES = new org.jooq.util.hsqldb.information_schema.tables.ElementTypes(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.Record.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + */ + public final org.jooq.TableField OBJECT_CATALOG = createField("OBJECT_CATALOG", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField OBJECT_SCHEMA = createField("OBJECT_SCHEMA", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField OBJECT_NAME = createField("OBJECT_NAME", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField OBJECT_TYPE = createField("OBJECT_TYPE", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField COLLECTION_TYPE_IDENTIFIER = createField("COLLECTION_TYPE_IDENTIFIER", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField DATA_TYPE = createField("DATA_TYPE", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField CHARACTER_MAXIMUM_LENGTH = createField("CHARACTER_MAXIMUM_LENGTH", org.jooq.impl.SQLDataType.BIGINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField CHARACTER_OCTET_LENGTH = createField("CHARACTER_OCTET_LENGTH", org.jooq.impl.SQLDataType.BIGINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField CHARACTER_SET_CATALOG = createField("CHARACTER_SET_CATALOG", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField CHARACTER_SET_SCHEMA = createField("CHARACTER_SET_SCHEMA", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField CHARACTER_SET_NAME = createField("CHARACTER_SET_NAME", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField COLLATION_CATALOG = createField("COLLATION_CATALOG", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField COLLATION_SCHEMA = createField("COLLATION_SCHEMA", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField COLLATION_NAME = createField("COLLATION_NAME", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField NUMERIC_PRECISION = createField("NUMERIC_PRECISION", org.jooq.impl.SQLDataType.BIGINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField NUMERIC_PRECISION_RADIX = createField("NUMERIC_PRECISION_RADIX", org.jooq.impl.SQLDataType.BIGINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField NUMERIC_SCALE = createField("NUMERIC_SCALE", org.jooq.impl.SQLDataType.BIGINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField DATETIME_PRECISION = createField("DATETIME_PRECISION", org.jooq.impl.SQLDataType.BIGINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField INTERVAL_TYPE = createField("INTERVAL_TYPE", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField INTERVAL_PRECISION = createField("INTERVAL_PRECISION", org.jooq.impl.SQLDataType.BIGINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField UDT_CATALOG = createField("UDT_CATALOG", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField UDT_SCHEMA = createField("UDT_SCHEMA", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField UDT_NAME = createField("UDT_NAME", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField SCOPE_CATALOG = createField("SCOPE_CATALOG", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField SCOPE_SCHEMA = createField("SCOPE_SCHEMA", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField SCOPE_NAME = createField("SCOPE_NAME", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField MAXIMUM_CARDINALITY = createField("MAXIMUM_CARDINALITY", org.jooq.impl.SQLDataType.BIGINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField DTD_IDENTIFIER = createField("DTD_IDENTIFIER", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField DECLARED_DATA_TYPE = createField("DECLARED_DATA_TYPE", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField DECLARED_NUMERIC_PRECISION = createField("DECLARED_NUMERIC_PRECISION", org.jooq.impl.SQLDataType.BIGINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField DECLARED_NUMERIC_SCALE = createField("DECLARED_NUMERIC_SCALE", org.jooq.impl.SQLDataType.BIGINT, this); + + /** + * No further instances allowed + */ + private ElementTypes() { + super("ELEMENT_TYPES", org.jooq.util.hsqldb.information_schema.InformationSchema.INFORMATION_SCHEMA); + } + + /** + * No further instances allowed + */ + private ElementTypes(java.lang.String alias) { + super(alias, org.jooq.util.hsqldb.information_schema.InformationSchema.INFORMATION_SCHEMA, org.jooq.util.hsqldb.information_schema.tables.ElementTypes.ELEMENT_TYPES); + } + + @Override + public org.jooq.util.hsqldb.information_schema.tables.ElementTypes as(java.lang.String alias) { + return new org.jooq.util.hsqldb.information_schema.tables.ElementTypes(alias); + } +} diff --git a/jOOQ-meta/src/main/java/org/jooq/util/hsqldb/information_schema/tables/KeyColumnUsage.java b/jOOQ-meta/src/main/java/org/jooq/util/hsqldb/information_schema/tables/KeyColumnUsage.java new file mode 100644 index 00000000000..c35826e90df --- /dev/null +++ b/jOOQ-meta/src/main/java/org/jooq/util/hsqldb/information_schema/tables/KeyColumnUsage.java @@ -0,0 +1,96 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.util.hsqldb.information_schema.tables; + +/** + * This class is generated by jOOQ. + */ +@javax.annotation.Generated(value = {"http://www.jooq.org", "2.0.6"}, + comments = "This class is generated by jOOQ") +public class KeyColumnUsage extends org.jooq.impl.TableImpl { + + private static final long serialVersionUID = -1398228570; + + /** + * The singleton instance of INFORMATION_SCHEMA.KEY_COLUMN_USAGE + */ + public static final org.jooq.util.hsqldb.information_schema.tables.KeyColumnUsage KEY_COLUMN_USAGE = new org.jooq.util.hsqldb.information_schema.tables.KeyColumnUsage(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.Record.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + */ + public final org.jooq.TableField CONSTRAINT_CATALOG = createField("CONSTRAINT_CATALOG", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField CONSTRAINT_SCHEMA = createField("CONSTRAINT_SCHEMA", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField CONSTRAINT_NAME = createField("CONSTRAINT_NAME", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField TABLE_CATALOG = createField("TABLE_CATALOG", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField TABLE_SCHEMA = createField("TABLE_SCHEMA", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField TABLE_NAME = createField("TABLE_NAME", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField COLUMN_NAME = createField("COLUMN_NAME", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField ORDINAL_POSITION = createField("ORDINAL_POSITION", org.jooq.impl.SQLDataType.BIGINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField POSITION_IN_UNIQUE_CONSTRAINT = createField("POSITION_IN_UNIQUE_CONSTRAINT", org.jooq.impl.SQLDataType.BIGINT, this); + + /** + * No further instances allowed + */ + private KeyColumnUsage() { + super("KEY_COLUMN_USAGE", org.jooq.util.hsqldb.information_schema.InformationSchema.INFORMATION_SCHEMA); + } + + /** + * No further instances allowed + */ + private KeyColumnUsage(java.lang.String alias) { + super(alias, org.jooq.util.hsqldb.information_schema.InformationSchema.INFORMATION_SCHEMA, org.jooq.util.hsqldb.information_schema.tables.KeyColumnUsage.KEY_COLUMN_USAGE); + } + + @Override + public org.jooq.util.hsqldb.information_schema.tables.KeyColumnUsage as(java.lang.String alias) { + return new org.jooq.util.hsqldb.information_schema.tables.KeyColumnUsage(alias); + } +} diff --git a/jOOQ-meta/src/main/java/org/jooq/util/hsqldb/information_schema/tables/Parameters.java b/jOOQ-meta/src/main/java/org/jooq/util/hsqldb/information_schema/tables/Parameters.java new file mode 100644 index 00000000000..3804fed9af9 --- /dev/null +++ b/jOOQ-meta/src/main/java/org/jooq/util/hsqldb/information_schema/tables/Parameters.java @@ -0,0 +1,251 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.util.hsqldb.information_schema.tables; + +/** + * This class is generated by jOOQ. + */ +@javax.annotation.Generated(value = {"http://www.jooq.org", "2.0.6"}, + comments = "This class is generated by jOOQ") +public class Parameters extends org.jooq.impl.TableImpl { + + private static final long serialVersionUID = -1754858560; + + /** + * The singleton instance of INFORMATION_SCHEMA.PARAMETERS + */ + public static final org.jooq.util.hsqldb.information_schema.tables.Parameters PARAMETERS = new org.jooq.util.hsqldb.information_schema.tables.Parameters(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.Record.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + */ + public final org.jooq.TableField SPECIFIC_CATALOG = createField("SPECIFIC_CATALOG", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField SPECIFIC_SCHEMA = createField("SPECIFIC_SCHEMA", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField SPECIFIC_NAME = createField("SPECIFIC_NAME", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField ORDINAL_POSITION = createField("ORDINAL_POSITION", org.jooq.impl.SQLDataType.BIGINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField PARAMETER_MODE = createField("PARAMETER_MODE", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField IS_RESULT = createField("IS_RESULT", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField AS_LOCATOR = createField("AS_LOCATOR", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField PARAMETER_NAME = createField("PARAMETER_NAME", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField FROM_SQL_SPECIFIC_CATALOG = createField("FROM_SQL_SPECIFIC_CATALOG", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField FROM_SQL_SPECIFIC_SCHEMA = createField("FROM_SQL_SPECIFIC_SCHEMA", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField FROM_SQL_SPECIFIC_NAME = createField("FROM_SQL_SPECIFIC_NAME", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField TO_SQL_SPECIFIC_CATALOG = createField("TO_SQL_SPECIFIC_CATALOG", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField TO_SQL_SPECIFIC_SCHEMA = createField("TO_SQL_SPECIFIC_SCHEMA", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField TO_SQL_SPECIFIC_NAME = createField("TO_SQL_SPECIFIC_NAME", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField DATA_TYPE = createField("DATA_TYPE", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField CHARACTER_MAXIMUM_LENGTH = createField("CHARACTER_MAXIMUM_LENGTH", org.jooq.impl.SQLDataType.BIGINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField CHARACTER_OCTET_LENGTH = createField("CHARACTER_OCTET_LENGTH", org.jooq.impl.SQLDataType.BIGINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField CHARACTER_SET_CATALOG = createField("CHARACTER_SET_CATALOG", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField CHARACTER_SET_SCHEMA = createField("CHARACTER_SET_SCHEMA", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField CHARACTER_SET_NAME = createField("CHARACTER_SET_NAME", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField COLLATION_CATALOG = createField("COLLATION_CATALOG", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField COLLATION_SCHEMA = createField("COLLATION_SCHEMA", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField COLLATION_NAME = createField("COLLATION_NAME", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField NUMERIC_PRECISION = createField("NUMERIC_PRECISION", org.jooq.impl.SQLDataType.BIGINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField NUMERIC_PRECISION_RADIX = createField("NUMERIC_PRECISION_RADIX", org.jooq.impl.SQLDataType.BIGINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField NUMERIC_SCALE = createField("NUMERIC_SCALE", org.jooq.impl.SQLDataType.BIGINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField DATETIME_PRECISION = createField("DATETIME_PRECISION", org.jooq.impl.SQLDataType.BIGINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField INTERVAL_TYPE = createField("INTERVAL_TYPE", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField INTERVAL_PRECISION = createField("INTERVAL_PRECISION", org.jooq.impl.SQLDataType.BIGINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField UDT_CATALOG = createField("UDT_CATALOG", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField UDT_SCHEMA = createField("UDT_SCHEMA", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField UDT_NAME = createField("UDT_NAME", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField SCOPE_CATALOG = createField("SCOPE_CATALOG", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField SCOPE_SCHEMA = createField("SCOPE_SCHEMA", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField SCOPE_NAME = createField("SCOPE_NAME", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField MAXIMUM_CARDINALITY = createField("MAXIMUM_CARDINALITY", org.jooq.impl.SQLDataType.BIGINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField DTD_IDENTIFIER = createField("DTD_IDENTIFIER", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField DECLARED_DATA_TYPE = createField("DECLARED_DATA_TYPE", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField DECLARED_NUMERIC_PRECISION = createField("DECLARED_NUMERIC_PRECISION", org.jooq.impl.SQLDataType.BIGINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField DECLARED_NUMERIC_SCALE = createField("DECLARED_NUMERIC_SCALE", org.jooq.impl.SQLDataType.BIGINT, this); + + /** + * No further instances allowed + */ + private Parameters() { + super("PARAMETERS", org.jooq.util.hsqldb.information_schema.InformationSchema.INFORMATION_SCHEMA); + } + + /** + * No further instances allowed + */ + private Parameters(java.lang.String alias) { + super(alias, org.jooq.util.hsqldb.information_schema.InformationSchema.INFORMATION_SCHEMA, org.jooq.util.hsqldb.information_schema.tables.Parameters.PARAMETERS); + } + + @Override + public org.jooq.util.hsqldb.information_schema.tables.Parameters as(java.lang.String alias) { + return new org.jooq.util.hsqldb.information_schema.tables.Parameters(alias); + } +} diff --git a/jOOQ-meta/src/main/java/org/jooq/util/hsqldb/information_schema/tables/ReferentialConstraints.java b/jOOQ-meta/src/main/java/org/jooq/util/hsqldb/information_schema/tables/ReferentialConstraints.java new file mode 100644 index 00000000000..fcd343fc6cf --- /dev/null +++ b/jOOQ-meta/src/main/java/org/jooq/util/hsqldb/information_schema/tables/ReferentialConstraints.java @@ -0,0 +1,96 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.util.hsqldb.information_schema.tables; + +/** + * This class is generated by jOOQ. + */ +@javax.annotation.Generated(value = {"http://www.jooq.org", "2.0.6"}, + comments = "This class is generated by jOOQ") +public class ReferentialConstraints extends org.jooq.impl.TableImpl { + + private static final long serialVersionUID = 131895180; + + /** + * The singleton instance of INFORMATION_SCHEMA.REFERENTIAL_CONSTRAINTS + */ + public static final org.jooq.util.hsqldb.information_schema.tables.ReferentialConstraints REFERENTIAL_CONSTRAINTS = new org.jooq.util.hsqldb.information_schema.tables.ReferentialConstraints(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.Record.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + */ + public final org.jooq.TableField CONSTRAINT_CATALOG = createField("CONSTRAINT_CATALOG", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField CONSTRAINT_SCHEMA = createField("CONSTRAINT_SCHEMA", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField CONSTRAINT_NAME = createField("CONSTRAINT_NAME", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField UNIQUE_CONSTRAINT_CATALOG = createField("UNIQUE_CONSTRAINT_CATALOG", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField UNIQUE_CONSTRAINT_SCHEMA = createField("UNIQUE_CONSTRAINT_SCHEMA", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField UNIQUE_CONSTRAINT_NAME = createField("UNIQUE_CONSTRAINT_NAME", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField MATCH_OPTION = createField("MATCH_OPTION", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField UPDATE_RULE = createField("UPDATE_RULE", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField DELETE_RULE = createField("DELETE_RULE", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * No further instances allowed + */ + private ReferentialConstraints() { + super("REFERENTIAL_CONSTRAINTS", org.jooq.util.hsqldb.information_schema.InformationSchema.INFORMATION_SCHEMA); + } + + /** + * No further instances allowed + */ + private ReferentialConstraints(java.lang.String alias) { + super(alias, org.jooq.util.hsqldb.information_schema.InformationSchema.INFORMATION_SCHEMA, org.jooq.util.hsqldb.information_schema.tables.ReferentialConstraints.REFERENTIAL_CONSTRAINTS); + } + + @Override + public org.jooq.util.hsqldb.information_schema.tables.ReferentialConstraints as(java.lang.String alias) { + return new org.jooq.util.hsqldb.information_schema.tables.ReferentialConstraints(alias); + } +} diff --git a/jOOQ-meta/src/main/java/org/jooq/util/hsqldb/information_schema/tables/Routines.java b/jOOQ-meta/src/main/java/org/jooq/util/hsqldb/information_schema/tables/Routines.java new file mode 100644 index 00000000000..b62697e8d21 --- /dev/null +++ b/jOOQ-meta/src/main/java/org/jooq/util/hsqldb/information_schema/tables/Routines.java @@ -0,0 +1,491 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.util.hsqldb.information_schema.tables; + +/** + * This class is generated by jOOQ. + */ +@javax.annotation.Generated(value = {"http://www.jooq.org", "2.0.6"}, + comments = "This class is generated by jOOQ") +public class Routines extends org.jooq.impl.TableImpl { + + private static final long serialVersionUID = -1452312172; + + /** + * The singleton instance of INFORMATION_SCHEMA.ROUTINES + */ + public static final org.jooq.util.hsqldb.information_schema.tables.Routines ROUTINES = new org.jooq.util.hsqldb.information_schema.tables.Routines(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.Record.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + */ + public final org.jooq.TableField SPECIFIC_CATALOG = createField("SPECIFIC_CATALOG", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField SPECIFIC_SCHEMA = createField("SPECIFIC_SCHEMA", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField SPECIFIC_NAME = createField("SPECIFIC_NAME", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField ROUTINE_CATALOG = createField("ROUTINE_CATALOG", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField ROUTINE_SCHEMA = createField("ROUTINE_SCHEMA", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField ROUTINE_NAME = createField("ROUTINE_NAME", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField ROUTINE_TYPE = createField("ROUTINE_TYPE", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField MODULE_CATALOG = createField("MODULE_CATALOG", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField MODULE_SCHEMA = createField("MODULE_SCHEMA", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField MODULE_NAME = createField("MODULE_NAME", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField UDT_CATALOG = createField("UDT_CATALOG", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField UDT_SCHEMA = createField("UDT_SCHEMA", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField UDT_NAME = createField("UDT_NAME", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField DATA_TYPE = createField("DATA_TYPE", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField CHARACTER_MAXIMUM_LENGTH = createField("CHARACTER_MAXIMUM_LENGTH", org.jooq.impl.SQLDataType.BIGINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField CHARACTER_OCTET_LENGTH = createField("CHARACTER_OCTET_LENGTH", org.jooq.impl.SQLDataType.BIGINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField CHARACTER_SET_CATALOG = createField("CHARACTER_SET_CATALOG", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField CHARACTER_SET_SCHEMA = createField("CHARACTER_SET_SCHEMA", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField CHARACTER_SET_NAME = createField("CHARACTER_SET_NAME", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField COLLATION_CATALOG = createField("COLLATION_CATALOG", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField COLLATION_SCHEMA = createField("COLLATION_SCHEMA", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField COLLATION_NAME = createField("COLLATION_NAME", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField NUMERIC_PRECISION = createField("NUMERIC_PRECISION", org.jooq.impl.SQLDataType.BIGINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField NUMERIC_PRECISION_RADIX = createField("NUMERIC_PRECISION_RADIX", org.jooq.impl.SQLDataType.BIGINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField NUMERIC_SCALE = createField("NUMERIC_SCALE", org.jooq.impl.SQLDataType.BIGINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField DATETIME_PRECISION = createField("DATETIME_PRECISION", org.jooq.impl.SQLDataType.BIGINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField INTERVAL_TYPE = createField("INTERVAL_TYPE", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField INTERVAL_PRECISION = createField("INTERVAL_PRECISION", org.jooq.impl.SQLDataType.BIGINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField TYPE_UDT_CATALOG = createField("TYPE_UDT_CATALOG", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField TYPE_UDT_SCHEMA = createField("TYPE_UDT_SCHEMA", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField TYPE_UDT_NAME = createField("TYPE_UDT_NAME", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField SCOPE_CATALOG = createField("SCOPE_CATALOG", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField SCOPE_SCHEMA = createField("SCOPE_SCHEMA", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField SCOPE_NAME = createField("SCOPE_NAME", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField MAXIMUM_CARDINALITY = createField("MAXIMUM_CARDINALITY", org.jooq.impl.SQLDataType.BIGINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField DTD_IDENTIFIER = createField("DTD_IDENTIFIER", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField ROUTINE_BODY = createField("ROUTINE_BODY", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField ROUTINE_DEFINITION = createField("ROUTINE_DEFINITION", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField EXTERNAL_NAME = createField("EXTERNAL_NAME", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField EXTERNAL_LANGUAGE = createField("EXTERNAL_LANGUAGE", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField PARAMETER_STYLE = createField("PARAMETER_STYLE", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField IS_DETERMINISTIC = createField("IS_DETERMINISTIC", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField SQL_DATA_ACCESS = createField("SQL_DATA_ACCESS", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField IS_NULL_CALL = createField("IS_NULL_CALL", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField SQL_PATH = createField("SQL_PATH", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField SCHEMA_LEVEL_ROUTINE = createField("SCHEMA_LEVEL_ROUTINE", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField MAX_DYNAMIC_RESULT_SETS = createField("MAX_DYNAMIC_RESULT_SETS", org.jooq.impl.SQLDataType.BIGINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField IS_USER_DEFINED_CAST = createField("IS_USER_DEFINED_CAST", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField IS_IMPLICITLY_INVOCABLE = createField("IS_IMPLICITLY_INVOCABLE", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField SECURITY_TYPE = createField("SECURITY_TYPE", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField TO_SQL_SPECIFIC_CATALOG = createField("TO_SQL_SPECIFIC_CATALOG", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField TO_SQL_SPECIFIC_SCHEMA = createField("TO_SQL_SPECIFIC_SCHEMA", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField TO_SQL_SPECIFIC_NAME = createField("TO_SQL_SPECIFIC_NAME", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField AS_LOCATOR = createField("AS_LOCATOR", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField CREATED = createField("CREATED", org.jooq.impl.SQLDataType.TIMESTAMP, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField LAST_ALTERED = createField("LAST_ALTERED", org.jooq.impl.SQLDataType.TIMESTAMP, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField NEW_SAVEPOINT_LEVEL = createField("NEW_SAVEPOINT_LEVEL", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField IS_UDT_DEPENDENT = createField("IS_UDT_DEPENDENT", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField RESULT_CAST_FROM_DATA_TYPE = createField("RESULT_CAST_FROM_DATA_TYPE", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField RESULT_CAST_AS_LOCATOR = createField("RESULT_CAST_AS_LOCATOR", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField RESULT_CAST_CHAR_MAX_LENGTH = createField("RESULT_CAST_CHAR_MAX_LENGTH", org.jooq.impl.SQLDataType.BIGINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField RESULT_CAST_CHAR_OCTET_LENGTH = createField("RESULT_CAST_CHAR_OCTET_LENGTH", org.jooq.impl.SQLDataType.BIGINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField RESULT_CAST_CHAR_SET_CATALOG = createField("RESULT_CAST_CHAR_SET_CATALOG", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField RESULT_CAST_CHAR_SET_SCHEMA = createField("RESULT_CAST_CHAR_SET_SCHEMA", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField RESULT_CAST_CHARACTER_SET_NAME = createField("RESULT_CAST_CHARACTER_SET_NAME", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField RESULT_CAST_COLLATION_CATALOG = createField("RESULT_CAST_COLLATION_CATALOG", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField RESULT_CAST_COLLATION_SCHEMA = createField("RESULT_CAST_COLLATION_SCHEMA", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField RESULT_CAST_COLLATION_NAME = createField("RESULT_CAST_COLLATION_NAME", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField RESULT_CAST_NUMERIC_PRECISION = createField("RESULT_CAST_NUMERIC_PRECISION", org.jooq.impl.SQLDataType.BIGINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField RESULT_CAST_NUMERIC_RADIX = createField("RESULT_CAST_NUMERIC_RADIX", org.jooq.impl.SQLDataType.BIGINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField RESULT_CAST_NUMERIC_SCALE = createField("RESULT_CAST_NUMERIC_SCALE", org.jooq.impl.SQLDataType.BIGINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField RESULT_CAST_DATETIME_PRECISION = createField("RESULT_CAST_DATETIME_PRECISION", org.jooq.impl.SQLDataType.BIGINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField RESULT_CAST_INTERVAL_TYPE = createField("RESULT_CAST_INTERVAL_TYPE", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField RESULT_CAST_INTERVAL_PRECISION = createField("RESULT_CAST_INTERVAL_PRECISION", org.jooq.impl.SQLDataType.BIGINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField RESULT_CAST_TYPE_UDT_CATALOG = createField("RESULT_CAST_TYPE_UDT_CATALOG", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField RESULT_CAST_TYPE_UDT_SCHEMA = createField("RESULT_CAST_TYPE_UDT_SCHEMA", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField RESULT_CAST_TYPE_UDT_NAME = createField("RESULT_CAST_TYPE_UDT_NAME", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField RESULT_CAST_SCOPE_CATALOG = createField("RESULT_CAST_SCOPE_CATALOG", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField RESULT_CAST_SCOPE_SCHEMA = createField("RESULT_CAST_SCOPE_SCHEMA", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField RESULT_CAST_SCOPE_NAME = createField("RESULT_CAST_SCOPE_NAME", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField RESULT_CAST_MAX_CARDINALITY = createField("RESULT_CAST_MAX_CARDINALITY", org.jooq.impl.SQLDataType.BIGINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField RESULT_CAST_DTD_IDENTIFIER = createField("RESULT_CAST_DTD_IDENTIFIER", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField DECLARED_DATA_TYPE = createField("DECLARED_DATA_TYPE", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField DECLARED_NUMERIC_PRECISION = createField("DECLARED_NUMERIC_PRECISION", org.jooq.impl.SQLDataType.BIGINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField DECLARED_NUMERIC_SCALE = createField("DECLARED_NUMERIC_SCALE", org.jooq.impl.SQLDataType.BIGINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField RESULT_CAST_FROM_DECLARED_DATA_TYPE = createField("RESULT_CAST_FROM_DECLARED_DATA_TYPE", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField RESULT_CAST_DECLARED_NUMERIC_PRECISION = createField("RESULT_CAST_DECLARED_NUMERIC_PRECISION", org.jooq.impl.SQLDataType.BIGINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField RESULT_CAST_DECLARED_NUMERIC_SCALE = createField("RESULT_CAST_DECLARED_NUMERIC_SCALE", org.jooq.impl.SQLDataType.BIGINT, this); + + /** + * No further instances allowed + */ + private Routines() { + super("ROUTINES", org.jooq.util.hsqldb.information_schema.InformationSchema.INFORMATION_SCHEMA); + } + + /** + * No further instances allowed + */ + private Routines(java.lang.String alias) { + super(alias, org.jooq.util.hsqldb.information_schema.InformationSchema.INFORMATION_SCHEMA, org.jooq.util.hsqldb.information_schema.tables.Routines.ROUTINES); + } + + @Override + public org.jooq.util.hsqldb.information_schema.tables.Routines as(java.lang.String alias) { + return new org.jooq.util.hsqldb.information_schema.tables.Routines(alias); + } +} diff --git a/jOOQ-meta/src/main/java/org/jooq/util/hsqldb/information_schema/tables/Sequences.java b/jOOQ-meta/src/main/java/org/jooq/util/hsqldb/information_schema/tables/Sequences.java new file mode 100644 index 00000000000..d5eb38635d3 --- /dev/null +++ b/jOOQ-meta/src/main/java/org/jooq/util/hsqldb/information_schema/tables/Sequences.java @@ -0,0 +1,131 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.util.hsqldb.information_schema.tables; + +/** + * This class is generated by jOOQ. + */ +@javax.annotation.Generated(value = {"http://www.jooq.org", "2.0.6"}, + comments = "This class is generated by jOOQ") +public class Sequences extends org.jooq.impl.TableImpl { + + private static final long serialVersionUID = -1921557034; + + /** + * The singleton instance of INFORMATION_SCHEMA.SEQUENCES + */ + public static final org.jooq.util.hsqldb.information_schema.tables.Sequences SEQUENCES = new org.jooq.util.hsqldb.information_schema.tables.Sequences(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.Record.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + */ + public final org.jooq.TableField SEQUENCE_CATALOG = createField("SEQUENCE_CATALOG", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField SEQUENCE_SCHEMA = createField("SEQUENCE_SCHEMA", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField SEQUENCE_NAME = createField("SEQUENCE_NAME", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField DATA_TYPE = createField("DATA_TYPE", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField NUMERIC_PRECISION = createField("NUMERIC_PRECISION", org.jooq.impl.SQLDataType.BIGINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField NUMERIC_PRECISION_RADIX = createField("NUMERIC_PRECISION_RADIX", org.jooq.impl.SQLDataType.BIGINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField NUMERIC_SCALE = createField("NUMERIC_SCALE", org.jooq.impl.SQLDataType.BIGINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField MAXIMUM_VALUE = createField("MAXIMUM_VALUE", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField MINIMUM_VALUE = createField("MINIMUM_VALUE", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField INCREMENT = createField("INCREMENT", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField CYCLE_OPTION = createField("CYCLE_OPTION", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField DECLARED_DATA_TYPE = createField("DECLARED_DATA_TYPE", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField DECLARED_NUMERIC_PRECISION = createField("DECLARED_NUMERIC_PRECISION", org.jooq.impl.SQLDataType.BIGINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField DECLARED_NUMERIC_SCALE = createField("DECLARED_NUMERIC_SCALE", org.jooq.impl.SQLDataType.BIGINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField START_WITH = createField("START_WITH", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField NEXT_VALUE = createField("NEXT_VALUE", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * No further instances allowed + */ + private Sequences() { + super("SEQUENCES", org.jooq.util.hsqldb.information_schema.InformationSchema.INFORMATION_SCHEMA); + } + + /** + * No further instances allowed + */ + private Sequences(java.lang.String alias) { + super(alias, org.jooq.util.hsqldb.information_schema.InformationSchema.INFORMATION_SCHEMA, org.jooq.util.hsqldb.information_schema.tables.Sequences.SEQUENCES); + } + + @Override + public org.jooq.util.hsqldb.information_schema.tables.Sequences as(java.lang.String alias) { + return new org.jooq.util.hsqldb.information_schema.tables.Sequences(alias); + } +} diff --git a/jOOQ-meta/src/main/java/org/jooq/util/hsqldb/information_schema/tables/TableConstraints.java b/jOOQ-meta/src/main/java/org/jooq/util/hsqldb/information_schema/tables/TableConstraints.java new file mode 100644 index 00000000000..825cad2cfd4 --- /dev/null +++ b/jOOQ-meta/src/main/java/org/jooq/util/hsqldb/information_schema/tables/TableConstraints.java @@ -0,0 +1,96 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.util.hsqldb.information_schema.tables; + +/** + * This class is generated by jOOQ. + */ +@javax.annotation.Generated(value = {"http://www.jooq.org", "2.0.6"}, + comments = "This class is generated by jOOQ") +public class TableConstraints extends org.jooq.impl.TableImpl { + + private static final long serialVersionUID = 1342081192; + + /** + * The singleton instance of INFORMATION_SCHEMA.TABLE_CONSTRAINTS + */ + public static final org.jooq.util.hsqldb.information_schema.tables.TableConstraints TABLE_CONSTRAINTS = new org.jooq.util.hsqldb.information_schema.tables.TableConstraints(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.Record.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + */ + public final org.jooq.TableField CONSTRAINT_CATALOG = createField("CONSTRAINT_CATALOG", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField CONSTRAINT_SCHEMA = createField("CONSTRAINT_SCHEMA", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField CONSTRAINT_NAME = createField("CONSTRAINT_NAME", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField CONSTRAINT_TYPE = createField("CONSTRAINT_TYPE", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField TABLE_CATALOG = createField("TABLE_CATALOG", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField TABLE_SCHEMA = createField("TABLE_SCHEMA", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField TABLE_NAME = createField("TABLE_NAME", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField IS_DEFERRABLE = createField("IS_DEFERRABLE", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField INITIALLY_DEFERRED = createField("INITIALLY_DEFERRED", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * No further instances allowed + */ + private TableConstraints() { + super("TABLE_CONSTRAINTS", org.jooq.util.hsqldb.information_schema.InformationSchema.INFORMATION_SCHEMA); + } + + /** + * No further instances allowed + */ + private TableConstraints(java.lang.String alias) { + super(alias, org.jooq.util.hsqldb.information_schema.InformationSchema.INFORMATION_SCHEMA, org.jooq.util.hsqldb.information_schema.tables.TableConstraints.TABLE_CONSTRAINTS); + } + + @Override + public org.jooq.util.hsqldb.information_schema.tables.TableConstraints as(java.lang.String alias) { + return new org.jooq.util.hsqldb.information_schema.tables.TableConstraints(alias); + } +} diff --git a/jOOQ-meta/src/main/java/org/jooq/util/hsqldb/information_schema/tables/Tables.java b/jOOQ-meta/src/main/java/org/jooq/util/hsqldb/information_schema/tables/Tables.java new file mode 100644 index 00000000000..410711f7486 --- /dev/null +++ b/jOOQ-meta/src/main/java/org/jooq/util/hsqldb/information_schema/tables/Tables.java @@ -0,0 +1,111 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.util.hsqldb.information_schema.tables; + +/** + * This class is generated by jOOQ. + */ +@javax.annotation.Generated(value = {"http://www.jooq.org", "2.0.6"}, + comments = "This class is generated by jOOQ") +public class Tables extends org.jooq.impl.TableImpl { + + private static final long serialVersionUID = -332419757; + + /** + * The singleton instance of INFORMATION_SCHEMA.TABLES + */ + public static final org.jooq.util.hsqldb.information_schema.tables.Tables TABLES = new org.jooq.util.hsqldb.information_schema.tables.Tables(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.Record.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + */ + public final org.jooq.TableField TABLE_CATALOG = createField("TABLE_CATALOG", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField TABLE_SCHEMA = createField("TABLE_SCHEMA", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField TABLE_NAME = createField("TABLE_NAME", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField TABLE_TYPE = createField("TABLE_TYPE", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField SELF_REFERENCING_COLUMN_NAME = createField("SELF_REFERENCING_COLUMN_NAME", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField REFERENCE_GENERATION = createField("REFERENCE_GENERATION", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField USER_DEFINED_TYPE_CATALOG = createField("USER_DEFINED_TYPE_CATALOG", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField USER_DEFINED_TYPE_SCHEMA = createField("USER_DEFINED_TYPE_SCHEMA", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField USER_DEFINED_TYPE_NAME = createField("USER_DEFINED_TYPE_NAME", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField IS_INSERTABLE_INTO = createField("IS_INSERTABLE_INTO", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField IS_TYPED = createField("IS_TYPED", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField COMMIT_ACTION = createField("COMMIT_ACTION", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * No further instances allowed + */ + private Tables() { + super("TABLES", org.jooq.util.hsqldb.information_schema.InformationSchema.INFORMATION_SCHEMA); + } + + /** + * No further instances allowed + */ + private Tables(java.lang.String alias) { + super(alias, org.jooq.util.hsqldb.information_schema.InformationSchema.INFORMATION_SCHEMA, org.jooq.util.hsqldb.information_schema.tables.Tables.TABLES); + } + + @Override + public org.jooq.util.hsqldb.information_schema.tables.Tables as(java.lang.String alias) { + return new org.jooq.util.hsqldb.information_schema.tables.Tables(alias); + } +} diff --git a/jOOQ-meta/src/main/java/org/jooq/util/ingres/IngresDatabase.java b/jOOQ-meta/src/main/java/org/jooq/util/ingres/IngresDatabase.java new file mode 100644 index 00000000000..41bf22f5f85 --- /dev/null +++ b/jOOQ-meta/src/main/java/org/jooq/util/ingres/IngresDatabase.java @@ -0,0 +1,281 @@ +/** + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com + * All rights reserved. + * + * This software is licensed to you under the Apache License, Version 2.0 + * (the "License"); You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * 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 "jOOQ" 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 COPYRIGHT OWNER 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. + */ +package org.jooq.util.ingres; + +import static org.jooq.impl.Factory.trim; +import static org.jooq.util.ingres.ingres.tables.IiconstraintIndexes.IICONSTRAINT_INDEXES; +import static org.jooq.util.ingres.ingres.tables.Iiconstraints.IICONSTRAINTS; +import static org.jooq.util.ingres.ingres.tables.IidbComments.IIDB_COMMENTS; +import static org.jooq.util.ingres.ingres.tables.IiindexColumns.IIINDEX_COLUMNS; +import static org.jooq.util.ingres.ingres.tables.Iiindexes.IIINDEXES; +import static org.jooq.util.ingres.ingres.tables.IirefConstraints.IIREF_CONSTRAINTS; +import static org.jooq.util.ingres.ingres.tables.Iisequences.IISEQUENCES; +import static org.jooq.util.ingres.ingres.tables.Iitables.IITABLES; + +import java.sql.SQLException; +import java.util.ArrayList; +import java.util.List; + +import org.jooq.Record; +import org.jooq.Result; +import org.jooq.impl.Factory; +import org.jooq.util.AbstractDatabase; +import org.jooq.util.ArrayDefinition; +import org.jooq.util.ColumnDefinition; +import org.jooq.util.DataTypeDefinition; +import org.jooq.util.DefaultDataTypeDefinition; +import org.jooq.util.DefaultRelations; +import org.jooq.util.DefaultSequenceDefinition; +import org.jooq.util.EnumDefinition; +import org.jooq.util.PackageDefinition; +import org.jooq.util.RoutineDefinition; +import org.jooq.util.SchemaDefinition; +import org.jooq.util.SequenceDefinition; +import org.jooq.util.TableDefinition; +import org.jooq.util.UDTDefinition; +import org.jooq.util.ingres.ingres.$ingresFactory; +import org.jooq.util.ingres.ingres.tables.IiconstraintIndexes; +import org.jooq.util.ingres.ingres.tables.Iiconstraints; +import org.jooq.util.ingres.ingres.tables.IidbComments; +import org.jooq.util.ingres.ingres.tables.IiindexColumns; +import org.jooq.util.ingres.ingres.tables.Iiindexes; +import org.jooq.util.ingres.ingres.tables.IirefConstraints; +import org.jooq.util.ingres.ingres.tables.Iisequences; +import org.jooq.util.ingres.ingres.tables.Iitables; + +/** + * @author Lukas Eder + */ +public class IngresDatabase extends AbstractDatabase { + + @Override + public Factory create() { + return new $ingresFactory(getConnection()); + } + + @Override + protected void loadPrimaryKeys(DefaultRelations relations) throws SQLException { + for (Record record : fetchKeys("P")) { + SchemaDefinition schema = getSchema(record.getValue(trim(Iiconstraints.SCHEMA_NAME))); + String key = record.getValue(trim(Iiconstraints.CONSTRAINT_NAME)); + String tableName = record.getValue(trim(Iiconstraints.TABLE_NAME)); + String columnName = record.getValue(trim(IiindexColumns.COLUMN_NAME)); + + TableDefinition table = getTable(schema, tableName); + if (table != null) { + relations.addPrimaryKey(key, table.getColumn(columnName)); + } + } + } + + @Override + protected void loadUniqueKeys(DefaultRelations relations) throws SQLException { + for (Record record : fetchKeys("U")) { + SchemaDefinition schema = getSchema(record.getValue(trim(Iiconstraints.SCHEMA_NAME))); + String key = record.getValue(trim(Iiconstraints.CONSTRAINT_NAME)); + String tableName = record.getValue(trim(Iiconstraints.TABLE_NAME)); + String columnName = record.getValue(trim(IiindexColumns.COLUMN_NAME)); + + TableDefinition table = getTable(schema, tableName); + if (table != null) { + relations.addPrimaryKey(key, table.getColumn(columnName)); + } + } + } + + private List fetchKeys(String constraintType) { + return create().select( + trim(Iiconstraints.SCHEMA_NAME), + trim(Iiconstraints.TABLE_NAME), + trim(Iiconstraints.CONSTRAINT_NAME), + trim(IiindexColumns.COLUMN_NAME)) + .from(IICONSTRAINTS) + .join(IICONSTRAINT_INDEXES) + .on(Iiconstraints.CONSTRAINT_NAME.equal(IiconstraintIndexes.CONSTRAINT_NAME)) + .and(Iiconstraints.SCHEMA_NAME.equal(IiconstraintIndexes.SCHEMA_NAME)) + .join(IIINDEXES) + .on(IiconstraintIndexes.INDEX_NAME.equal(Iiindexes.INDEX_NAME)) + .and(IiconstraintIndexes.SCHEMA_NAME.equal(Iiindexes.INDEX_OWNER)) + .join(IIINDEX_COLUMNS) + .on(Iiindexes.INDEX_NAME.equal(IiindexColumns.INDEX_NAME)) + .and(Iiindexes.INDEX_OWNER.equal(IiindexColumns.INDEX_OWNER)) + .where(Iiconstraints.SCHEMA_NAME.in(getInputSchemata())) + .and(Iiconstraints.CONSTRAINT_TYPE.equal(constraintType)) + .orderBy( + Iiconstraints.SCHEMA_NAME.asc(), + Iiconstraints.TABLE_NAME.asc(), + IiindexColumns.INDEX_NAME.asc(), + IiindexColumns.KEY_SEQUENCE.asc()) + .fetch(); + } + + @Override + protected void loadForeignKeys(DefaultRelations relations) throws SQLException { + Result result = create() + .select( + trim(IirefConstraints.REF_SCHEMA_NAME), + trim(IirefConstraints.REF_CONSTRAINT_NAME), + trim(IirefConstraints.UNIQUE_CONSTRAINT_NAME), + trim(IirefConstraints.UNIQUE_SCHEMA_NAME), + trim(IirefConstraints.REF_TABLE_NAME), + trim(IiindexColumns.COLUMN_NAME)) + .from(IICONSTRAINTS) + .join(IIREF_CONSTRAINTS) + .on(Iiconstraints.CONSTRAINT_NAME.equal(IirefConstraints.REF_CONSTRAINT_NAME)) + .and(Iiconstraints.SCHEMA_NAME.equal(IirefConstraints.REF_SCHEMA_NAME)) + .join(IICONSTRAINT_INDEXES) + .on(Iiconstraints.CONSTRAINT_NAME.equal(IiconstraintIndexes.CONSTRAINT_NAME)) + .and(Iiconstraints.SCHEMA_NAME.equal(IiconstraintIndexes.SCHEMA_NAME)) + .join(IIINDEXES) + .on(IiconstraintIndexes.INDEX_NAME.equal(Iiindexes.INDEX_NAME)) + .and(IiconstraintIndexes.SCHEMA_NAME.equal(Iiindexes.INDEX_OWNER)) + .join(IIINDEX_COLUMNS) + .on(Iiindexes.INDEX_NAME.equal(IiindexColumns.INDEX_NAME)) + .and(Iiindexes.INDEX_OWNER.equal(IiindexColumns.INDEX_OWNER)) + .where(IirefConstraints.REF_SCHEMA_NAME.in(getInputSchemata())) + .and(Iiconstraints.CONSTRAINT_TYPE.equal("R")) + .orderBy( + IirefConstraints.REF_SCHEMA_NAME.asc(), + IirefConstraints.REF_TABLE_NAME.asc(), + IirefConstraints.REF_CONSTRAINT_NAME.asc(), + IiindexColumns.KEY_SEQUENCE.asc()) + .fetch(); + + for (Record record : result) { + SchemaDefinition foreignKeySchema = getSchema(record.getValue(trim(IirefConstraints.REF_SCHEMA_NAME))); + SchemaDefinition uniqueKeySchema = getSchema(record.getValue(trim(IirefConstraints.UNIQUE_SCHEMA_NAME))); + + String foreignKey = record.getValue(trim(IirefConstraints.REF_CONSTRAINT_NAME)); + String foreignKeyTable = record.getValue(trim(IirefConstraints.REF_TABLE_NAME)); + String foreignKeyColumn = record.getValue(trim(IiindexColumns.COLUMN_NAME)); + String uniqueKey = record.getValue(trim(IirefConstraints.UNIQUE_CONSTRAINT_NAME)); + + TableDefinition referencingTable = getTable(foreignKeySchema, foreignKeyTable); + + if (referencingTable != null) { + ColumnDefinition referencingColumn = referencingTable.getColumn(foreignKeyColumn); + relations.addForeignKey(foreignKey, uniqueKey, referencingColumn, uniqueKeySchema); + } + } + } + + @Override + protected List getSequences0() throws SQLException { + List result = new ArrayList(); + + for (Record record : create().select( + trim(Iisequences.SEQ_OWNER), + trim(Iisequences.SEQ_NAME), + trim(Iisequences.DATA_TYPE)) + .from(IISEQUENCES) + .where(Iisequences.SEQ_OWNER.in(getInputSchemata())) + .orderBy( + Iisequences.SEQ_OWNER, + Iisequences.SEQ_NAME) + .fetch()) { + + SchemaDefinition schema = getSchema(record.getValue(trim(Iisequences.SEQ_OWNER))); + + DataTypeDefinition type = new DefaultDataTypeDefinition( + this, schema, + record.getValue(trim(Iisequences.DATA_TYPE)), 0, 0, 0); + + result.add(new DefaultSequenceDefinition( + schema, record.getValue(trim(Iisequences.SEQ_NAME)), type)); + } + + return result; + } + + @Override + protected List getTables0() throws SQLException { + List result = new ArrayList(); + + for (Record record : create().select( + trim(Iitables.TABLE_OWNER), + trim(Iitables.TABLE_NAME), + trim(IidbComments.LONG_REMARK)) + .from(IITABLES) + .leftOuterJoin(IIDB_COMMENTS) + .on(Iitables.TABLE_NAME.equal(IidbComments.OBJECT_NAME)) + .and(Iitables.TABLE_OWNER.equal(IidbComments.OBJECT_OWNER)) + .and(IidbComments.OBJECT_TYPE.equal("T")) + .and(IidbComments.TEXT_SEQUENCE.equal(1L)) + .where(Iitables.TABLE_OWNER.in(getInputSchemata())) + .orderBy( + trim(Iitables.TABLE_OWNER), + trim(Iitables.TABLE_NAME)) + .fetch()) { + + result.add(new IngresTableDefinition( + getSchema(record.getValue(trim(Iitables.TABLE_OWNER))), + record.getValue(trim(Iitables.TABLE_NAME)), + record.getValue(trim(IidbComments.LONG_REMARK)))); + } + + return result; + } + + @Override + protected List getRoutines0() throws SQLException { + List result = new ArrayList(); + return result; + } + + @Override + protected List getPackages0() throws SQLException { + List result = new ArrayList(); + return result; + } + + @Override + protected List getEnums0() throws SQLException { + List result = new ArrayList(); + return result; + } + + @Override + protected List getUDTs0() throws SQLException { + List result = new ArrayList(); + return result; + } + + @Override + protected List getArrays0() throws SQLException { + List result = new ArrayList(); + return result; + } +} diff --git a/jOOQ-meta/src/main/java/org/jooq/util/ingres/IngresTableDefinition.java b/jOOQ-meta/src/main/java/org/jooq/util/ingres/IngresTableDefinition.java new file mode 100644 index 00000000000..26287a8d73f --- /dev/null +++ b/jOOQ-meta/src/main/java/org/jooq/util/ingres/IngresTableDefinition.java @@ -0,0 +1,143 @@ +/** + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com + * All rights reserved. + * + * This software is licensed to you under the Apache License, Version 2.0 + * (the "License"); You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * 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 "jOOQ" 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 COPYRIGHT OWNER 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. + */ +package org.jooq.util.ingres; + +import static org.jooq.impl.Factory.trim; +import static org.jooq.util.ingres.ingres.tables.Iicolumns.IICOLUMNS; +import static org.jooq.util.ingres.ingres.tables.IidbSubcomments.IIDB_SUBCOMMENTS; + +import java.sql.SQLException; +import java.util.ArrayList; +import java.util.List; + +import org.jooq.Record; +import org.jooq.util.AbstractTableDefinition; +import org.jooq.util.ColumnDefinition; +import org.jooq.util.DataTypeDefinition; +import org.jooq.util.DefaultColumnDefinition; +import org.jooq.util.DefaultDataTypeDefinition; +import org.jooq.util.SchemaDefinition; +import org.jooq.util.ingres.ingres.tables.Iicolumns; +import org.jooq.util.ingres.ingres.tables.IidbSubcomments; + +/** + * @author Lukas Eder + */ +public class IngresTableDefinition extends AbstractTableDefinition { + + public IngresTableDefinition(SchemaDefinition schema, String name, String comment) { + super(schema, name, comment); + } + + @Override + protected List getElements0() throws SQLException { + List result = new ArrayList(); + + for (Record record : create().select( + Iicolumns.COLUMN_SEQUENCE, + trim(Iicolumns.COLUMN_NAME), + trim(Iicolumns.COLUMN_DATATYPE), + Iicolumns.COLUMN_LENGTH, + Iicolumns.COLUMN_SCALE, + Iicolumns.COLUMN_NULLS, + Iicolumns.COLUMN_ALWAYS_IDENT, + Iicolumns.COLUMN_BYDEFAULT_IDENT, + trim(IidbSubcomments.LONG_REMARK)) + .from(IICOLUMNS) + .leftOuterJoin(IIDB_SUBCOMMENTS) + .on(IidbSubcomments.OBJECT_NAME.equal(Iicolumns.TABLE_NAME)) + .and(IidbSubcomments.OBJECT_OWNER.equal(Iicolumns.TABLE_OWNER)) + .and(IidbSubcomments.SUBOBJECT_NAME.equal(Iicolumns.COLUMN_NAME)) + .and(IidbSubcomments.SUBOBJECT_TYPE.equal("C")) + .and(IidbSubcomments.TEXT_SEQUENCE.equal(1L)) + .where(Iicolumns.TABLE_OWNER.equal(getSchema().getName())) + .and(trim(Iicolumns.TABLE_NAME).equal(getName())) + .orderBy(Iicolumns.COLUMN_SEQUENCE) + .fetch()) { + + String typeName = record.getValue(trim(Iicolumns.COLUMN_DATATYPE)); + + // [#664] INTEGER types come with a COLUMN_LENGTH in bytes + // This is important to distinguish BIGINT, INT, SMALLINT, TINYINT + if (IngresDataType.INTEGER.getTypeName().equalsIgnoreCase(typeName)) { + switch (record.getValue(Iicolumns.COLUMN_LENGTH)) { + case 8: + typeName = IngresDataType.BIGINT.getTypeName(); + break; + case 2: + typeName = IngresDataType.SMALLINT.getTypeName(); + break; + case 1: + typeName = IngresDataType.TINYINT.getTypeName(); + break; + } + } + + // [#744] FLOAT types have the same issue + else if (IngresDataType.FLOAT.getTypeName().equalsIgnoreCase(typeName)) { + switch (record.getValue(Iicolumns.COLUMN_LENGTH)) { + case 8: + typeName = IngresDataType.FLOAT8.getTypeName(); + break; + case 4: + typeName = IngresDataType.FLOAT4.getTypeName(); + break; + } + } + + DataTypeDefinition type = new DefaultDataTypeDefinition( + getDatabase(), + getSchema(), + typeName, + record.getValue(Iicolumns.COLUMN_LENGTH), + record.getValue(Iicolumns.COLUMN_LENGTH), + record.getValue(Iicolumns.COLUMN_SCALE)); + + ColumnDefinition column = new DefaultColumnDefinition( + getDatabase().getTable(getSchema(), getName()), + record.getValue(trim(Iicolumns.COLUMN_NAME)), + record.getValue(Iicolumns.COLUMN_SEQUENCE), + type, + record.getValue(Iicolumns.COLUMN_NULLS, boolean.class), + record.getValueAsBoolean(Iicolumns.COLUMN_ALWAYS_IDENT, false) || + record.getValueAsBoolean(Iicolumns.COLUMN_BYDEFAULT_IDENT, false), + record.getValue(trim(IidbSubcomments.LONG_REMARK))); + result.add(column); + } + + return result; + } +} diff --git a/jOOQ-meta/src/main/java/org/jooq/util/ingres/ingres/$ingres.java b/jOOQ-meta/src/main/java/org/jooq/util/ingres/ingres/$ingres.java new file mode 100644 index 00000000000..7e1d8a65948 --- /dev/null +++ b/jOOQ-meta/src/main/java/org/jooq/util/ingres/ingres/$ingres.java @@ -0,0 +1,41 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.util.ingres.ingres; + +/** + * This class is generated by jOOQ. + */ +@javax.annotation.Generated(value = {"http://www.jooq.org", "2.0.6"}, + comments = "This class is generated by jOOQ") +public class $ingres extends org.jooq.impl.SchemaImpl { + + private static final long serialVersionUID = 826778745; + + /** + * The singleton instance of $ingres + */ + public static final $ingres $INGRES = new $ingres(); + + /** + * No further instances allowed + */ + private $ingres() { + super("$ingres"); + } + + @Override + public final java.util.List> getTables() { + return java.util.Arrays.>asList( + org.jooq.util.ingres.ingres.tables.Iicolumns.IICOLUMNS, + org.jooq.util.ingres.ingres.tables.IiconstraintIndexes.IICONSTRAINT_INDEXES, + org.jooq.util.ingres.ingres.tables.Iiconstraints.IICONSTRAINTS, + org.jooq.util.ingres.ingres.tables.IidbComments.IIDB_COMMENTS, + org.jooq.util.ingres.ingres.tables.IidbSubcomments.IIDB_SUBCOMMENTS, + org.jooq.util.ingres.ingres.tables.IiindexColumns.IIINDEX_COLUMNS, + org.jooq.util.ingres.ingres.tables.Iiindexes.IIINDEXES, + org.jooq.util.ingres.ingres.tables.IirefConstraints.IIREF_CONSTRAINTS, + org.jooq.util.ingres.ingres.tables.Iisequences.IISEQUENCES, + org.jooq.util.ingres.ingres.tables.Iitables.IITABLES); + } +} diff --git a/jOOQ-meta/src/main/java/org/jooq/util/ingres/ingres/$ingresFactory.java b/jOOQ-meta/src/main/java/org/jooq/util/ingres/ingres/$ingresFactory.java new file mode 100644 index 00000000000..7c6635300b9 --- /dev/null +++ b/jOOQ-meta/src/main/java/org/jooq/util/ingres/ingres/$ingresFactory.java @@ -0,0 +1,33 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.util.ingres.ingres; + +/** + * This class is generated by jOOQ. + */ +@javax.annotation.Generated(value = {"http://www.jooq.org", "2.0.6"}, + comments = "This class is generated by jOOQ") +public class $ingresFactory extends org.jooq.util.ingres.IngresFactory { + + private static final long serialVersionUID = -365695075; + + /** + * Create a factory with a connection + * + * @param connection The connection to use with objects created from this factory + */ + public $ingresFactory(java.sql.Connection connection) { + super(connection); + } + + /** + * Create a factory with a connection and some settings + * + * @param connection The connection to use with objects created from this factory + * @param settings The settings to apply to objects created from this factory + */ + public $ingresFactory(java.sql.Connection connection, org.jooq.conf.Settings settings) { + super(connection, settings); + } +} diff --git a/jOOQ-meta/src/main/java/org/jooq/util/ingres/ingres/Tables.java b/jOOQ-meta/src/main/java/org/jooq/util/ingres/ingres/Tables.java new file mode 100644 index 00000000000..0051d202758 --- /dev/null +++ b/jOOQ-meta/src/main/java/org/jooq/util/ingres/ingres/Tables.java @@ -0,0 +1,69 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.util.ingres.ingres; + +/** + * This class is generated by jOOQ. + * + * Convenience access to all tables in $ingres + */ +@javax.annotation.Generated(value = {"http://www.jooq.org", "2.0.6"}, + comments = "This class is generated by jOOQ") +public final class Tables { + + /** + * The table $ingres.iicolumns + */ + public static org.jooq.util.ingres.ingres.tables.Iicolumns IICOLUMNS = org.jooq.util.ingres.ingres.tables.Iicolumns.IICOLUMNS; + + /** + * The table $ingres.iiconstraint_indexes + */ + public static org.jooq.util.ingres.ingres.tables.IiconstraintIndexes IICONSTRAINT_INDEXES = org.jooq.util.ingres.ingres.tables.IiconstraintIndexes.IICONSTRAINT_INDEXES; + + /** + * The table $ingres.iiconstraints + */ + public static org.jooq.util.ingres.ingres.tables.Iiconstraints IICONSTRAINTS = org.jooq.util.ingres.ingres.tables.Iiconstraints.IICONSTRAINTS; + + /** + * The table $ingres.iidb_comments + */ + public static org.jooq.util.ingres.ingres.tables.IidbComments IIDB_COMMENTS = org.jooq.util.ingres.ingres.tables.IidbComments.IIDB_COMMENTS; + + /** + * The table $ingres.iidb_subcomments + */ + public static org.jooq.util.ingres.ingres.tables.IidbSubcomments IIDB_SUBCOMMENTS = org.jooq.util.ingres.ingres.tables.IidbSubcomments.IIDB_SUBCOMMENTS; + + /** + * The table $ingres.iiindex_columns + */ + public static org.jooq.util.ingres.ingres.tables.IiindexColumns IIINDEX_COLUMNS = org.jooq.util.ingres.ingres.tables.IiindexColumns.IIINDEX_COLUMNS; + + /** + * The table $ingres.iiindexes + */ + public static org.jooq.util.ingres.ingres.tables.Iiindexes IIINDEXES = org.jooq.util.ingres.ingres.tables.Iiindexes.IIINDEXES; + + /** + * The table $ingres.iiref_constraints + */ + public static org.jooq.util.ingres.ingres.tables.IirefConstraints IIREF_CONSTRAINTS = org.jooq.util.ingres.ingres.tables.IirefConstraints.IIREF_CONSTRAINTS; + + /** + * The table $ingres.iisequences + */ + public static org.jooq.util.ingres.ingres.tables.Iisequences IISEQUENCES = org.jooq.util.ingres.ingres.tables.Iisequences.IISEQUENCES; + + /** + * The table $ingres.iitables + */ + public static org.jooq.util.ingres.ingres.tables.Iitables IITABLES = org.jooq.util.ingres.ingres.tables.Iitables.IITABLES; + + /** + * No instances + */ + private Tables() {} +} diff --git a/jOOQ-meta/src/main/java/org/jooq/util/ingres/ingres/tables/Iicolumns.java b/jOOQ-meta/src/main/java/org/jooq/util/ingres/ingres/tables/Iicolumns.java new file mode 100644 index 00000000000..3b272d1333c --- /dev/null +++ b/jOOQ-meta/src/main/java/org/jooq/util/ingres/ingres/tables/Iicolumns.java @@ -0,0 +1,174 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.util.ingres.ingres.tables; + +/** + * This class is generated by jOOQ. + */ +@javax.annotation.Generated(value = {"http://www.jooq.org", "2.0.6"}, + comments = "This class is generated by jOOQ") +public class Iicolumns extends org.jooq.impl.TableImpl { + + private static final long serialVersionUID = 399159632; + + /** + * The singleton instance of $ingres.iicolumns + */ + public static final org.jooq.util.ingres.ingres.tables.Iicolumns IICOLUMNS = new org.jooq.util.ingres.ingres.tables.Iicolumns(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.Record.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + */ + public static final org.jooq.TableField TABLE_NAME = createField("table_name", org.jooq.impl.SQLDataType.CHAR, IICOLUMNS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField TABLE_OWNER = createField("table_owner", org.jooq.impl.SQLDataType.CHAR, IICOLUMNS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField COLUMN_NAME = createField("column_name", org.jooq.impl.SQLDataType.CHAR, IICOLUMNS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField COLUMN_DATATYPE = createField("column_datatype", org.jooq.impl.SQLDataType.CHAR, IICOLUMNS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField COLUMN_LENGTH = createField("column_length", org.jooq.impl.SQLDataType.INTEGER, IICOLUMNS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField COLUMN_SCALE = createField("column_scale", org.jooq.impl.SQLDataType.INTEGER, IICOLUMNS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField COLUMN_COLLID = createField("column_collid", org.jooq.impl.SQLDataType.SMALLINT, IICOLUMNS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField COLUMN_NULLS = createField("column_nulls", org.jooq.impl.SQLDataType.CHAR, IICOLUMNS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField COLUMN_DEFAULTS = createField("column_defaults", org.jooq.impl.SQLDataType.CHAR, IICOLUMNS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField COLUMN_SEQUENCE = createField("column_sequence", org.jooq.impl.SQLDataType.INTEGER, IICOLUMNS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField KEY_SEQUENCE = createField("key_sequence", org.jooq.impl.SQLDataType.INTEGER, IICOLUMNS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField SORT_DIRECTION = createField("sort_direction", org.jooq.impl.SQLDataType.CHAR, IICOLUMNS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField COLUMN_INGDATATYPE = createField("column_ingdatatype", org.jooq.impl.SQLDataType.INTEGER, IICOLUMNS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField COLUMN_INTERNAL_DATATYPE = createField("column_internal_datatype", org.jooq.impl.SQLDataType.CHAR, IICOLUMNS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField COLUMN_INTERNAL_LENGTH = createField("column_internal_length", org.jooq.impl.SQLDataType.INTEGER, IICOLUMNS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField COLUMN_INTERNAL_INGTYPE = createField("column_internal_ingtype", org.jooq.impl.SQLDataType.SMALLINT, IICOLUMNS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField COLUMN_SYSTEM_MAINTAINED = createField("column_system_maintained", org.jooq.impl.SQLDataType.CHAR, IICOLUMNS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField COLUMN_UPDATEABLE = createField("column_updateable", org.jooq.impl.SQLDataType.CHAR, IICOLUMNS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField COLUMN_HAS_DEFAULT = createField("column_has_default", org.jooq.impl.SQLDataType.CHAR, IICOLUMNS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField COLUMN_DEFAULT_VAL = createField("column_default_val", org.jooq.impl.SQLDataType.VARCHAR, IICOLUMNS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField SECURITY_AUDIT_KEY = createField("security_audit_key", org.jooq.impl.SQLDataType.CHAR, IICOLUMNS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField COLUMN_ALWAYS_IDENT = createField("column_always_ident", org.jooq.impl.SQLDataType.CHAR, IICOLUMNS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField COLUMN_BYDEFAULT_IDENT = createField("column_bydefault_ident", org.jooq.impl.SQLDataType.CHAR, IICOLUMNS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField COLUMN_ENCRYPTED = createField("column_encrypted", org.jooq.impl.SQLDataType.CHAR, IICOLUMNS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField COLUMN_ENCRYPT_WIDTH = createField("column_encrypt_width", org.jooq.impl.SQLDataType.INTEGER, IICOLUMNS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField COLUMN_ENCRYPT_SALT = createField("column_encrypt_salt", org.jooq.impl.SQLDataType.CHAR, IICOLUMNS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField COLUMN_ENCRYPT_CRC = createField("column_encrypt_crc", org.jooq.impl.SQLDataType.CHAR, IICOLUMNS); + + /** + * No further instances allowed + */ + private Iicolumns() { + super("iicolumns", org.jooq.util.ingres.ingres.$ingres.$INGRES); + } +} diff --git a/jOOQ-meta/src/main/java/org/jooq/util/ingres/ingres/tables/IiconstraintIndexes.java b/jOOQ-meta/src/main/java/org/jooq/util/ingres/ingres/tables/IiconstraintIndexes.java new file mode 100644 index 00000000000..523726b1a42 --- /dev/null +++ b/jOOQ-meta/src/main/java/org/jooq/util/ingres/ingres/tables/IiconstraintIndexes.java @@ -0,0 +1,54 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.util.ingres.ingres.tables; + +/** + * This class is generated by jOOQ. + */ +@javax.annotation.Generated(value = {"http://www.jooq.org", "2.0.6"}, + comments = "This class is generated by jOOQ") +public class IiconstraintIndexes extends org.jooq.impl.TableImpl { + + private static final long serialVersionUID = -1150393142; + + /** + * The singleton instance of $ingres.iiconstraint_indexes + */ + public static final org.jooq.util.ingres.ingres.tables.IiconstraintIndexes IICONSTRAINT_INDEXES = new org.jooq.util.ingres.ingres.tables.IiconstraintIndexes(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.Record.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + */ + public static final org.jooq.TableField CONSTRAINT_NAME = createField("constraint_name", org.jooq.impl.SQLDataType.CHAR, IICONSTRAINT_INDEXES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField SCHEMA_NAME = createField("schema_name", org.jooq.impl.SQLDataType.CHAR, IICONSTRAINT_INDEXES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField INDEX_NAME = createField("index_name", org.jooq.impl.SQLDataType.CHAR, IICONSTRAINT_INDEXES); + + /** + * No further instances allowed + */ + private IiconstraintIndexes() { + super("iiconstraint_indexes", org.jooq.util.ingres.ingres.$ingres.$INGRES); + } +} diff --git a/jOOQ-meta/src/main/java/org/jooq/util/ingres/ingres/tables/Iiconstraints.java b/jOOQ-meta/src/main/java/org/jooq/util/ingres/ingres/tables/Iiconstraints.java new file mode 100644 index 00000000000..8438abebfd5 --- /dev/null +++ b/jOOQ-meta/src/main/java/org/jooq/util/ingres/ingres/tables/Iiconstraints.java @@ -0,0 +1,79 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.util.ingres.ingres.tables; + +/** + * This class is generated by jOOQ. + */ +@javax.annotation.Generated(value = {"http://www.jooq.org", "2.0.6"}, + comments = "This class is generated by jOOQ") +public class Iiconstraints extends org.jooq.impl.TableImpl { + + private static final long serialVersionUID = 1625126507; + + /** + * The singleton instance of $ingres.iiconstraints + */ + public static final org.jooq.util.ingres.ingres.tables.Iiconstraints IICONSTRAINTS = new org.jooq.util.ingres.ingres.tables.Iiconstraints(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.Record.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + */ + public static final org.jooq.TableField CONSTRAINT_NAME = createField("constraint_name", org.jooq.impl.SQLDataType.CHAR, IICONSTRAINTS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField SCHEMA_NAME = createField("schema_name", org.jooq.impl.SQLDataType.CHAR, IICONSTRAINTS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField TABLE_NAME = createField("table_name", org.jooq.impl.SQLDataType.CHAR, IICONSTRAINTS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField CONSTRAINT_TYPE = createField("constraint_type", org.jooq.impl.SQLDataType.CHAR, IICONSTRAINTS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField CREATE_DATE = createField("create_date", org.jooq.impl.SQLDataType.CHAR, IICONSTRAINTS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField TEXT_SEQUENCE = createField("text_sequence", org.jooq.impl.SQLDataType.BIGINT, IICONSTRAINTS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField TEXT_SEGMENT = createField("text_segment", org.jooq.impl.SQLDataType.VARCHAR, IICONSTRAINTS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField SYSTEM_USE = createField("system_use", org.jooq.impl.SQLDataType.CHAR, IICONSTRAINTS); + + /** + * No further instances allowed + */ + private Iiconstraints() { + super("iiconstraints", org.jooq.util.ingres.ingres.$ingres.$INGRES); + } +} diff --git a/jOOQ-meta/src/main/java/org/jooq/util/ingres/ingres/tables/IidbComments.java b/jOOQ-meta/src/main/java/org/jooq/util/ingres/ingres/tables/IidbComments.java new file mode 100644 index 00000000000..ac75b3722c3 --- /dev/null +++ b/jOOQ-meta/src/main/java/org/jooq/util/ingres/ingres/tables/IidbComments.java @@ -0,0 +1,69 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.util.ingres.ingres.tables; + +/** + * This class is generated by jOOQ. + */ +@javax.annotation.Generated(value = {"http://www.jooq.org", "2.0.6"}, + comments = "This class is generated by jOOQ") +public class IidbComments extends org.jooq.impl.TableImpl { + + private static final long serialVersionUID = 433892058; + + /** + * The singleton instance of $ingres.iidb_comments + */ + public static final org.jooq.util.ingres.ingres.tables.IidbComments IIDB_COMMENTS = new org.jooq.util.ingres.ingres.tables.IidbComments(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.Record.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + */ + public static final org.jooq.TableField OBJECT_NAME = createField("object_name", org.jooq.impl.SQLDataType.CHAR, IIDB_COMMENTS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField OBJECT_OWNER = createField("object_owner", org.jooq.impl.SQLDataType.CHAR, IIDB_COMMENTS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField OBJECT_TYPE = createField("object_type", org.jooq.impl.SQLDataType.CHAR, IIDB_COMMENTS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField SHORT_REMARK = createField("short_remark", org.jooq.impl.SQLDataType.CHAR, IIDB_COMMENTS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField TEXT_SEQUENCE = createField("text_sequence", org.jooq.impl.SQLDataType.BIGINT, IIDB_COMMENTS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField LONG_REMARK = createField("long_remark", org.jooq.impl.SQLDataType.VARCHAR, IIDB_COMMENTS); + + /** + * No further instances allowed + */ + private IidbComments() { + super("iidb_comments", org.jooq.util.ingres.ingres.$ingres.$INGRES); + } +} diff --git a/jOOQ-meta/src/main/java/org/jooq/util/ingres/ingres/tables/IidbSubcomments.java b/jOOQ-meta/src/main/java/org/jooq/util/ingres/ingres/tables/IidbSubcomments.java new file mode 100644 index 00000000000..b765434b53a --- /dev/null +++ b/jOOQ-meta/src/main/java/org/jooq/util/ingres/ingres/tables/IidbSubcomments.java @@ -0,0 +1,74 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.util.ingres.ingres.tables; + +/** + * This class is generated by jOOQ. + */ +@javax.annotation.Generated(value = {"http://www.jooq.org", "2.0.6"}, + comments = "This class is generated by jOOQ") +public class IidbSubcomments extends org.jooq.impl.TableImpl { + + private static final long serialVersionUID = -554011227; + + /** + * The singleton instance of $ingres.iidb_subcomments + */ + public static final org.jooq.util.ingres.ingres.tables.IidbSubcomments IIDB_SUBCOMMENTS = new org.jooq.util.ingres.ingres.tables.IidbSubcomments(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.Record.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + */ + public static final org.jooq.TableField OBJECT_NAME = createField("object_name", org.jooq.impl.SQLDataType.CHAR, IIDB_SUBCOMMENTS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField OBJECT_OWNER = createField("object_owner", org.jooq.impl.SQLDataType.CHAR, IIDB_SUBCOMMENTS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField SUBOBJECT_NAME = createField("subobject_name", org.jooq.impl.SQLDataType.CHAR, IIDB_SUBCOMMENTS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField SUBOBJECT_TYPE = createField("subobject_type", org.jooq.impl.SQLDataType.CHAR, IIDB_SUBCOMMENTS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField SHORT_REMARK = createField("short_remark", org.jooq.impl.SQLDataType.CHAR, IIDB_SUBCOMMENTS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField TEXT_SEQUENCE = createField("text_sequence", org.jooq.impl.SQLDataType.BIGINT, IIDB_SUBCOMMENTS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField LONG_REMARK = createField("long_remark", org.jooq.impl.SQLDataType.VARCHAR, IIDB_SUBCOMMENTS); + + /** + * No further instances allowed + */ + private IidbSubcomments() { + super("iidb_subcomments", org.jooq.util.ingres.ingres.$ingres.$INGRES); + } +} diff --git a/jOOQ-meta/src/main/java/org/jooq/util/ingres/ingres/tables/IiindexColumns.java b/jOOQ-meta/src/main/java/org/jooq/util/ingres/ingres/tables/IiindexColumns.java new file mode 100644 index 00000000000..fb654ee027c --- /dev/null +++ b/jOOQ-meta/src/main/java/org/jooq/util/ingres/ingres/tables/IiindexColumns.java @@ -0,0 +1,64 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.util.ingres.ingres.tables; + +/** + * This class is generated by jOOQ. + */ +@javax.annotation.Generated(value = {"http://www.jooq.org", "2.0.6"}, + comments = "This class is generated by jOOQ") +public class IiindexColumns extends org.jooq.impl.TableImpl { + + private static final long serialVersionUID = -235957163; + + /** + * The singleton instance of $ingres.iiindex_columns + */ + public static final org.jooq.util.ingres.ingres.tables.IiindexColumns IIINDEX_COLUMNS = new org.jooq.util.ingres.ingres.tables.IiindexColumns(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.Record.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + */ + public static final org.jooq.TableField INDEX_NAME = createField("index_name", org.jooq.impl.SQLDataType.CHAR, IIINDEX_COLUMNS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField INDEX_OWNER = createField("index_owner", org.jooq.impl.SQLDataType.CHAR, IIINDEX_COLUMNS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField COLUMN_NAME = createField("column_name", org.jooq.impl.SQLDataType.CHAR, IIINDEX_COLUMNS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField KEY_SEQUENCE = createField("key_sequence", org.jooq.impl.SQLDataType.SMALLINT, IIINDEX_COLUMNS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField SORT_DIRECTION = createField("sort_direction", org.jooq.impl.SQLDataType.CHAR, IIINDEX_COLUMNS); + + /** + * No further instances allowed + */ + private IiindexColumns() { + super("iiindex_columns", org.jooq.util.ingres.ingres.$ingres.$INGRES); + } +} diff --git a/jOOQ-meta/src/main/java/org/jooq/util/ingres/ingres/tables/Iiindexes.java b/jOOQ-meta/src/main/java/org/jooq/util/ingres/ingres/tables/Iiindexes.java new file mode 100644 index 00000000000..ca924ca4a18 --- /dev/null +++ b/jOOQ-meta/src/main/java/org/jooq/util/ingres/ingres/tables/Iiindexes.java @@ -0,0 +1,104 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.util.ingres.ingres.tables; + +/** + * This class is generated by jOOQ. + */ +@javax.annotation.Generated(value = {"http://www.jooq.org", "2.0.6"}, + comments = "This class is generated by jOOQ") +public class Iiindexes extends org.jooq.impl.TableImpl { + + private static final long serialVersionUID = -1000725289; + + /** + * The singleton instance of $ingres.iiindexes + */ + public static final org.jooq.util.ingres.ingres.tables.Iiindexes IIINDEXES = new org.jooq.util.ingres.ingres.tables.Iiindexes(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.Record.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + */ + public static final org.jooq.TableField INDEX_NAME = createField("index_name", org.jooq.impl.SQLDataType.CHAR, IIINDEXES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField INDEX_OWNER = createField("index_owner", org.jooq.impl.SQLDataType.CHAR, IIINDEXES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField CREATE_DATE = createField("create_date", org.jooq.impl.SQLDataType.CHAR, IIINDEXES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField BASE_NAME = createField("base_name", org.jooq.impl.SQLDataType.CHAR, IIINDEXES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField BASE_OWNER = createField("base_owner", org.jooq.impl.SQLDataType.CHAR, IIINDEXES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField STORAGE_STRUCTURE = createField("storage_structure", org.jooq.impl.SQLDataType.CHAR, IIINDEXES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField IS_COMPRESSED = createField("is_compressed", org.jooq.impl.SQLDataType.CHAR, IIINDEXES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField KEY_IS_COMPRESSED = createField("key_is_compressed", org.jooq.impl.SQLDataType.CHAR, IIINDEXES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField UNIQUE_RULE = createField("unique_rule", org.jooq.impl.SQLDataType.CHAR, IIINDEXES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField UNIQUE_SCOPE = createField("unique_scope", org.jooq.impl.SQLDataType.CHAR, IIINDEXES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField SYSTEM_USE = createField("system_use", org.jooq.impl.SQLDataType.CHAR, IIINDEXES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField PERSISTENT = createField("persistent", org.jooq.impl.SQLDataType.CHAR, IIINDEXES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField INDEX_PAGESIZE = createField("index_pagesize", org.jooq.impl.SQLDataType.INTEGER, IIINDEXES); + + /** + * No further instances allowed + */ + private Iiindexes() { + super("iiindexes", org.jooq.util.ingres.ingres.$ingres.$INGRES); + } +} diff --git a/jOOQ-meta/src/main/java/org/jooq/util/ingres/ingres/tables/IirefConstraints.java b/jOOQ-meta/src/main/java/org/jooq/util/ingres/ingres/tables/IirefConstraints.java new file mode 100644 index 00000000000..b5a327e9746 --- /dev/null +++ b/jOOQ-meta/src/main/java/org/jooq/util/ingres/ingres/tables/IirefConstraints.java @@ -0,0 +1,69 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.util.ingres.ingres.tables; + +/** + * This class is generated by jOOQ. + */ +@javax.annotation.Generated(value = {"http://www.jooq.org", "2.0.6"}, + comments = "This class is generated by jOOQ") +public class IirefConstraints extends org.jooq.impl.TableImpl { + + private static final long serialVersionUID = 1093351088; + + /** + * The singleton instance of $ingres.iiref_constraints + */ + public static final org.jooq.util.ingres.ingres.tables.IirefConstraints IIREF_CONSTRAINTS = new org.jooq.util.ingres.ingres.tables.IirefConstraints(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.Record.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + */ + public static final org.jooq.TableField REF_CONSTRAINT_NAME = createField("ref_constraint_name", org.jooq.impl.SQLDataType.CHAR, IIREF_CONSTRAINTS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField REF_SCHEMA_NAME = createField("ref_schema_name", org.jooq.impl.SQLDataType.CHAR, IIREF_CONSTRAINTS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField REF_TABLE_NAME = createField("ref_table_name", org.jooq.impl.SQLDataType.CHAR, IIREF_CONSTRAINTS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField UNIQUE_CONSTRAINT_NAME = createField("unique_constraint_name", org.jooq.impl.SQLDataType.CHAR, IIREF_CONSTRAINTS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField UNIQUE_SCHEMA_NAME = createField("unique_schema_name", org.jooq.impl.SQLDataType.CHAR, IIREF_CONSTRAINTS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField UNIQUE_TABLE_NAME = createField("unique_table_name", org.jooq.impl.SQLDataType.CHAR, IIREF_CONSTRAINTS); + + /** + * No further instances allowed + */ + private IirefConstraints() { + super("iiref_constraints", org.jooq.util.ingres.ingres.$ingres.$INGRES); + } +} diff --git a/jOOQ-meta/src/main/java/org/jooq/util/ingres/ingres/tables/Iisequences.java b/jOOQ-meta/src/main/java/org/jooq/util/ingres/ingres/tables/Iisequences.java new file mode 100644 index 00000000000..87957844198 --- /dev/null +++ b/jOOQ-meta/src/main/java/org/jooq/util/ingres/ingres/tables/Iisequences.java @@ -0,0 +1,159 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.util.ingres.ingres.tables; + +/** + * This class is generated by jOOQ. + */ +@javax.annotation.Generated(value = {"http://www.jooq.org", "2.0.6"}, + comments = "This class is generated by jOOQ") +public class Iisequences extends org.jooq.impl.TableImpl { + + private static final long serialVersionUID = -280129123; + + /** + * The singleton instance of $ingres.iisequences + */ + public static final org.jooq.util.ingres.ingres.tables.Iisequences IISEQUENCES = new org.jooq.util.ingres.ingres.tables.Iisequences(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.Record.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + */ + public static final org.jooq.TableField SEQ_NAME = createField("seq_name", org.jooq.impl.SQLDataType.CHAR, IISEQUENCES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField SEQ_OWNER = createField("seq_owner", org.jooq.impl.SQLDataType.CHAR, IISEQUENCES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField CREATE_DATE = createField("create_date", org.jooq.impl.SQLDataType.DATE, IISEQUENCES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField MODIFY_DATE = createField("modify_date", org.jooq.impl.SQLDataType.DATE, IISEQUENCES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField DATA_TYPE = createField("data_type", org.jooq.impl.SQLDataType.VARCHAR, IISEQUENCES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField SEQ_LENGTH = createField("seq_length", org.jooq.impl.SQLDataType.SMALLINT, IISEQUENCES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField SEQ_PRECISION = createField("seq_precision", org.jooq.impl.SQLDataType.INTEGER, IISEQUENCES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField START_VALUE = createField("start_value", org.jooq.impl.SQLDataType.DECIMAL_INTEGER, IISEQUENCES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField INCREMENT_VALUE = createField("increment_value", org.jooq.impl.SQLDataType.DECIMAL_INTEGER, IISEQUENCES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField NEXT_VALUE = createField("next_value", org.jooq.impl.SQLDataType.DECIMAL_INTEGER, IISEQUENCES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField MIN_VALUE = createField("min_value", org.jooq.impl.SQLDataType.DECIMAL_INTEGER, IISEQUENCES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField MAX_VALUE = createField("max_value", org.jooq.impl.SQLDataType.DECIMAL_INTEGER, IISEQUENCES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField CACHE_SIZE = createField("cache_size", org.jooq.impl.SQLDataType.INTEGER, IISEQUENCES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField START_FLAG = createField("start_flag", org.jooq.impl.SQLDataType.CHAR, IISEQUENCES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField INCR_FLAG = createField("incr_flag", org.jooq.impl.SQLDataType.CHAR, IISEQUENCES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField MIN_FLAG = createField("min_flag", org.jooq.impl.SQLDataType.CHAR, IISEQUENCES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField MAX_FLAG = createField("max_flag", org.jooq.impl.SQLDataType.CHAR, IISEQUENCES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField RESTART_FLAG = createField("restart_flag", org.jooq.impl.SQLDataType.CHAR, IISEQUENCES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField CACHE_FLAG = createField("cache_flag", org.jooq.impl.SQLDataType.CHAR, IISEQUENCES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField CYCLE_FLAG = createField("cycle_flag", org.jooq.impl.SQLDataType.CHAR, IISEQUENCES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField ORDER_FLAG = createField("order_flag", org.jooq.impl.SQLDataType.CHAR, IISEQUENCES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField SEQL_FLAG = createField("seql_flag", org.jooq.impl.SQLDataType.CHAR, IISEQUENCES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField UNORDERED_FLAG = createField("unordered_flag", org.jooq.impl.SQLDataType.CHAR, IISEQUENCES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField IDENT_FLAG = createField("ident_flag", org.jooq.impl.SQLDataType.CHAR, IISEQUENCES); + + /** + * No further instances allowed + */ + private Iisequences() { + super("iisequences", org.jooq.util.ingres.ingres.$ingres.$INGRES); + } +} diff --git a/jOOQ-meta/src/main/java/org/jooq/util/ingres/ingres/tables/Iitables.java b/jOOQ-meta/src/main/java/org/jooq/util/ingres/ingres/tables/Iitables.java new file mode 100644 index 00000000000..e9c3c9102bb --- /dev/null +++ b/jOOQ-meta/src/main/java/org/jooq/util/ingres/ingres/tables/Iitables.java @@ -0,0 +1,344 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.util.ingres.ingres.tables; + +/** + * This class is generated by jOOQ. + */ +@javax.annotation.Generated(value = {"http://www.jooq.org", "2.0.6"}, + comments = "This class is generated by jOOQ") +public class Iitables extends org.jooq.impl.TableImpl { + + private static final long serialVersionUID = -1753068701; + + /** + * The singleton instance of $ingres.iitables + */ + public static final org.jooq.util.ingres.ingres.tables.Iitables IITABLES = new org.jooq.util.ingres.ingres.tables.Iitables(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.Record.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + */ + public static final org.jooq.TableField TABLE_NAME = createField("table_name", org.jooq.impl.SQLDataType.CHAR, IITABLES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField TABLE_OWNER = createField("table_owner", org.jooq.impl.SQLDataType.CHAR, IITABLES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField CREATE_DATE = createField("create_date", org.jooq.impl.SQLDataType.CHAR, IITABLES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField ALTER_DATE = createField("alter_date", org.jooq.impl.SQLDataType.CHAR, IITABLES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField TABLE_TYPE = createField("table_type", org.jooq.impl.SQLDataType.CHAR, IITABLES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField TABLE_SUBTYPE = createField("table_subtype", org.jooq.impl.SQLDataType.CHAR, IITABLES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField TABLE_VERSION = createField("table_version", org.jooq.impl.SQLDataType.VARCHAR, IITABLES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField SYSTEM_USE = createField("system_use", org.jooq.impl.SQLDataType.CHAR, IITABLES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField TABLE_STATS = createField("table_stats", org.jooq.impl.SQLDataType.CHAR, IITABLES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField TABLE_INDEXES = createField("table_indexes", org.jooq.impl.SQLDataType.CHAR, IITABLES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField IS_READONLY = createField("is_readonly", org.jooq.impl.SQLDataType.CHAR, IITABLES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField CONCURRENT_ACCESS = createField("concurrent_access", org.jooq.impl.SQLDataType.CHAR, IITABLES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField NUM_ROWS = createField("num_rows", org.jooq.impl.SQLDataType.INTEGER, IITABLES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField STORAGE_STRUCTURE = createField("storage_structure", org.jooq.impl.SQLDataType.CHAR, IITABLES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField IS_COMPRESSED = createField("is_compressed", org.jooq.impl.SQLDataType.CHAR, IITABLES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField KEY_IS_COMPRESSED = createField("key_is_compressed", org.jooq.impl.SQLDataType.CHAR, IITABLES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField DUPLICATE_ROWS = createField("duplicate_rows", org.jooq.impl.SQLDataType.CHAR, IITABLES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField UNIQUE_RULE = createField("unique_rule", org.jooq.impl.SQLDataType.CHAR, IITABLES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField NUMBER_PAGES = createField("number_pages", org.jooq.impl.SQLDataType.INTEGER, IITABLES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField OVERFLOW_PAGES = createField("overflow_pages", org.jooq.impl.SQLDataType.INTEGER, IITABLES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField ROW_WIDTH = createField("row_width", org.jooq.impl.SQLDataType.INTEGER, IITABLES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField EXPIRE_DATE = createField("expire_date", org.jooq.impl.SQLDataType.INTEGER, IITABLES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField MODIFY_DATE = createField("modify_date", org.jooq.impl.SQLDataType.CHAR, IITABLES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField LOCATION_NAME = createField("location_name", org.jooq.impl.SQLDataType.CHAR, IITABLES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField TABLE_INTEGRITIES = createField("table_integrities", org.jooq.impl.SQLDataType.CHAR, IITABLES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField TABLE_PERMITS = createField("table_permits", org.jooq.impl.SQLDataType.CHAR, IITABLES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField ALL_TO_ALL = createField("all_to_all", org.jooq.impl.SQLDataType.CHAR, IITABLES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField RET_TO_ALL = createField("ret_to_all", org.jooq.impl.SQLDataType.CHAR, IITABLES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField IS_JOURNALLED = createField("is_journalled", org.jooq.impl.SQLDataType.CHAR, IITABLES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField VIEW_BASE = createField("view_base", org.jooq.impl.SQLDataType.CHAR, IITABLES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField MULTI_LOCATIONS = createField("multi_locations", org.jooq.impl.SQLDataType.CHAR, IITABLES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField TABLE_IFILLPCT = createField("table_ifillpct", org.jooq.impl.SQLDataType.SMALLINT, IITABLES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField TABLE_DFILLPCT = createField("table_dfillpct", org.jooq.impl.SQLDataType.SMALLINT, IITABLES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField TABLE_LFILLPCT = createField("table_lfillpct", org.jooq.impl.SQLDataType.SMALLINT, IITABLES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField TABLE_MINPAGES = createField("table_minpages", org.jooq.impl.SQLDataType.INTEGER, IITABLES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField TABLE_MAXPAGES = createField("table_maxpages", org.jooq.impl.SQLDataType.INTEGER, IITABLES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField TABLE_RELSTAMP1 = createField("table_relstamp1", org.jooq.impl.SQLDataType.INTEGER, IITABLES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField TABLE_RELSTAMP2 = createField("table_relstamp2", org.jooq.impl.SQLDataType.INTEGER, IITABLES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField TABLE_RELTID = createField("table_reltid", org.jooq.impl.SQLDataType.INTEGER, IITABLES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField TABLE_RELTIDX = createField("table_reltidx", org.jooq.impl.SQLDataType.INTEGER, IITABLES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField UNIQUE_SCOPE = createField("unique_scope", org.jooq.impl.SQLDataType.CHAR, IITABLES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField ALLOCATION_SIZE = createField("allocation_size", org.jooq.impl.SQLDataType.INTEGER, IITABLES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField EXTEND_SIZE = createField("extend_size", org.jooq.impl.SQLDataType.INTEGER, IITABLES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField ALLOCATED_PAGES = createField("allocated_pages", org.jooq.impl.SQLDataType.INTEGER, IITABLES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField LABEL_GRANULARITY = createField("label_granularity", org.jooq.impl.SQLDataType.CHAR, IITABLES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField ROW_SECURITY_AUDIT = createField("row_security_audit", org.jooq.impl.SQLDataType.CHAR, IITABLES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField SECURITY_LABEL = createField("security_label", org.jooq.impl.SQLDataType.CHAR, IITABLES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField TABLE_PAGESIZE = createField("table_pagesize", org.jooq.impl.SQLDataType.INTEGER, IITABLES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField TABLE_RELVERSION = createField("table_relversion", org.jooq.impl.SQLDataType.SMALLINT, IITABLES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField TABLE_RELTOTWID = createField("table_reltotwid", org.jooq.impl.SQLDataType.INTEGER, IITABLES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField TABLE_RELTCPRI = createField("table_reltcpri", org.jooq.impl.SQLDataType.SMALLINT, IITABLES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField TUPS_PER_PAGE = createField("tups_per_page", org.jooq.impl.SQLDataType.INTEGER, IITABLES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField KEYS_PER_PAGE = createField("keys_per_page", org.jooq.impl.SQLDataType.INTEGER, IITABLES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField KEYS_PER_LEAF = createField("keys_per_leaf", org.jooq.impl.SQLDataType.INTEGER, IITABLES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField PHYS_PARTITIONS = createField("phys_partitions", org.jooq.impl.SQLDataType.SMALLINT, IITABLES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField PARTITION_DIMENSIONS = createField("partition_dimensions", org.jooq.impl.SQLDataType.SMALLINT, IITABLES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField TABLE_RELDATAWID = createField("table_reldatawid", org.jooq.impl.SQLDataType.INTEGER, IITABLES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField TABLE_RELTOTDATAWID = createField("table_reltotdatawid", org.jooq.impl.SQLDataType.INTEGER, IITABLES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField ENCRYPTED_COLUMNS = createField("encrypted_columns", org.jooq.impl.SQLDataType.CHAR, IITABLES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField ENCRYPTION_VERSION = createField("encryption_version", org.jooq.impl.SQLDataType.SMALLINT, IITABLES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField ENCRYPTION_TYPE = createField("encryption_type", org.jooq.impl.SQLDataType.VARCHAR, IITABLES); + + /** + * No further instances allowed + */ + private Iitables() { + super("iitables", org.jooq.util.ingres.ingres.$ingres.$INGRES); + } +} diff --git a/jOOQ-meta/src/main/java/org/jooq/util/jaxb/Configuration.java b/jOOQ-meta/src/main/java/org/jooq/util/jaxb/Configuration.java new file mode 100644 index 00000000000..30f11da496c --- /dev/null +++ b/jOOQ-meta/src/main/java/org/jooq/util/jaxb/Configuration.java @@ -0,0 +1,108 @@ +// +// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, v2.0.5-b02-fcs +// See http://java.sun.com/xml/jaxb +// Any modifications to this file will be lost upon recompilation of the source schema. +// Generated on: 2012.03.16 at 11:15:20 AM MEZ +// + + +package org.jooq.util.jaxb; + +import javax.xml.bind.annotation.XmlAccessType; +import javax.xml.bind.annotation.XmlAccessorType; +import javax.xml.bind.annotation.XmlElement; +import javax.xml.bind.annotation.XmlRootElement; +import javax.xml.bind.annotation.XmlType; + + +/** + *

Java class for anonymous complex type. + * + *

The following schema fragment specifies the expected content contained within this class. + * + *

+ * <complexType>
+ *   <complexContent>
+ *     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
+ *       <all>
+ *         <element name="jdbc" type="{http://www.jooq.org/xsd/jooq-codegen-2.1.0.xsd}Jdbc"/>
+ *         <element name="generator" type="{http://www.jooq.org/xsd/jooq-codegen-2.1.0.xsd}Generator"/>
+ *       </all>
+ *     </restriction>
+ *   </complexContent>
+ * </complexType>
+ * 
+ * + * + */ +@XmlAccessorType(XmlAccessType.FIELD) +@XmlType(name = "", propOrder = { + +}) +@XmlRootElement(name = "configuration") +public class Configuration { + + @XmlElement(required = true) + protected Jdbc jdbc; + @XmlElement(required = true) + protected Generator generator; + + /** + * Gets the value of the jdbc property. + * + * @return + * possible object is + * {@link Jdbc } + * + */ + public Jdbc getJdbc() { + return jdbc; + } + + /** + * Sets the value of the jdbc property. + * + * @param value + * allowed object is + * {@link Jdbc } + * + */ + public void setJdbc(Jdbc value) { + this.jdbc = value; + } + + /** + * Gets the value of the generator property. + * + * @return + * possible object is + * {@link Generator } + * + */ + public Generator getGenerator() { + return generator; + } + + /** + * Sets the value of the generator property. + * + * @param value + * allowed object is + * {@link Generator } + * + */ + public void setGenerator(Generator value) { + this.generator = value; + } + + public Configuration withJdbc(Jdbc value) { + setJdbc(value); + return this; + } + + public Configuration withGenerator(Generator value) { + setGenerator(value); + return this; + } + +} diff --git a/jOOQ-meta/src/main/java/org/jooq/util/jaxb/CustomType.java b/jOOQ-meta/src/main/java/org/jooq/util/jaxb/CustomType.java new file mode 100644 index 00000000000..8169c96619e --- /dev/null +++ b/jOOQ-meta/src/main/java/org/jooq/util/jaxb/CustomType.java @@ -0,0 +1,106 @@ +// +// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, v2.0.5-b02-fcs +// See http://java.sun.com/xml/jaxb +// Any modifications to this file will be lost upon recompilation of the source schema. +// Generated on: 2012.03.16 at 11:15:20 AM MEZ +// + + +package org.jooq.util.jaxb; + +import javax.xml.bind.annotation.XmlAccessType; +import javax.xml.bind.annotation.XmlAccessorType; +import javax.xml.bind.annotation.XmlElement; +import javax.xml.bind.annotation.XmlType; + + +/** + *

Java class for CustomType complex type. + * + *

The following schema fragment specifies the expected content contained within this class. + * + *

+ * <complexType name="CustomType">
+ *   <complexContent>
+ *     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
+ *       <all>
+ *         <element name="name" type="{http://www.w3.org/2001/XMLSchema}string"/>
+ *         <element name="converter" type="{http://www.w3.org/2001/XMLSchema}string"/>
+ *       </all>
+ *     </restriction>
+ *   </complexContent>
+ * </complexType>
+ * 
+ * + * + */ +@XmlAccessorType(XmlAccessType.FIELD) +@XmlType(name = "CustomType", propOrder = { + +}) +public class CustomType { + + @XmlElement(required = true) + protected String name; + @XmlElement(required = true) + protected String converter; + + /** + * Gets the value of the name property. + * + * @return + * possible object is + * {@link String } + * + */ + public String getName() { + return name; + } + + /** + * Sets the value of the name property. + * + * @param value + * allowed object is + * {@link String } + * + */ + public void setName(String value) { + this.name = value; + } + + /** + * Gets the value of the converter property. + * + * @return + * possible object is + * {@link String } + * + */ + public String getConverter() { + return converter; + } + + /** + * Sets the value of the converter property. + * + * @param value + * allowed object is + * {@link String } + * + */ + public void setConverter(String value) { + this.converter = value; + } + + public CustomType withName(String value) { + setName(value); + return this; + } + + public CustomType withConverter(String value) { + setConverter(value); + return this; + } + +} diff --git a/jOOQ-meta/src/main/java/org/jooq/util/jaxb/CustomTypes.java b/jOOQ-meta/src/main/java/org/jooq/util/jaxb/CustomTypes.java new file mode 100644 index 00000000000..30baef48e5b --- /dev/null +++ b/jOOQ-meta/src/main/java/org/jooq/util/jaxb/CustomTypes.java @@ -0,0 +1,91 @@ +// +// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, v2.0.5-b02-fcs +// See http://java.sun.com/xml/jaxb +// Any modifications to this file will be lost upon recompilation of the source schema. +// Generated on: 2012.03.16 at 11:15:20 AM MEZ +// + + +package org.jooq.util.jaxb; + +import java.util.ArrayList; +import java.util.Collection; +import java.util.List; +import javax.xml.bind.annotation.XmlAccessType; +import javax.xml.bind.annotation.XmlAccessorType; +import javax.xml.bind.annotation.XmlType; + + +/** + *

Java class for CustomTypes complex type. + * + *

The following schema fragment specifies the expected content contained within this class. + * + *

+ * <complexType name="CustomTypes">
+ *   <complexContent>
+ *     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
+ *       <sequence>
+ *         <element name="customType" type="{http://www.jooq.org/xsd/jooq-codegen-2.1.0.xsd}CustomType" maxOccurs="unbounded" minOccurs="0"/>
+ *       </sequence>
+ *     </restriction>
+ *   </complexContent>
+ * </complexType>
+ * 
+ * + * + */ +@XmlAccessorType(XmlAccessType.FIELD) +@XmlType(name = "CustomTypes", propOrder = { + "customType" +}) +public class CustomTypes { + + protected List customType; + + /** + * Gets the value of the customType property. + * + *

+ * This accessor method returns a reference to the live list, + * not a snapshot. Therefore any modification you make to the + * returned list will be present inside the JAXB object. + * This is why there is not a set method for the customType property. + * + *

+ * For example, to add a new item, do as follows: + *

+     *    getCustomType().add(newItem);
+     * 
+ * + * + *

+ * Objects of the following type(s) are allowed in the list + * {@link CustomType } + * + * + */ + public List getCustomType() { + if (customType == null) { + customType = new ArrayList(); + } + return this.customType; + } + + public CustomTypes withCustomType(CustomType... values) { + if (values!= null) { + for (CustomType value: values) { + getCustomType().add(value); + } + } + return this; + } + + public CustomTypes withCustomType(Collection values) { + if (values!= null) { + getCustomType().addAll(values); + } + return this; + } + +} diff --git a/jOOQ-meta/src/main/java/org/jooq/util/jaxb/Database.java b/jOOQ-meta/src/main/java/org/jooq/util/jaxb/Database.java new file mode 100644 index 00000000000..0c6f8d631fc --- /dev/null +++ b/jOOQ-meta/src/main/java/org/jooq/util/jaxb/Database.java @@ -0,0 +1,405 @@ +// +// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, v2.0.5-b02-fcs +// See http://java.sun.com/xml/jaxb +// Any modifications to this file will be lost upon recompilation of the source schema. +// Generated on: 2012.03.16 at 11:15:20 AM MEZ +// + + +package org.jooq.util.jaxb; + +import java.util.ArrayList; +import java.util.Collection; +import java.util.List; +import javax.xml.bind.annotation.XmlAccessType; +import javax.xml.bind.annotation.XmlAccessorType; +import javax.xml.bind.annotation.XmlElement; +import javax.xml.bind.annotation.XmlElementWrapper; +import javax.xml.bind.annotation.XmlType; + + +/** + *

Java class for Database complex type. + * + *

The following schema fragment specifies the expected content contained within this class. + * + *

+ * <complexType name="Database">
+ *   <complexContent>
+ *     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
+ *       <all>
+ *         <element name="name" type="{http://www.w3.org/2001/XMLSchema}string"/>
+ *         <element name="includes" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
+ *         <element name="excludes" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
+ *         <element name="dateAsTimestamp" type="{http://www.w3.org/2001/XMLSchema}boolean" minOccurs="0"/>
+ *         <element name="unsignedTypes" type="{http://www.w3.org/2001/XMLSchema}boolean" minOccurs="0"/>
+ *         <element name="inputSchema" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
+ *         <element name="outputSchema" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
+ *         <element name="schemata" type="{http://www.jooq.org/xsd/jooq-codegen-2.1.0.xsd}Schemata" minOccurs="0"/>
+ *         <element name="masterDataTables" type="{http://www.jooq.org/xsd/jooq-codegen-2.1.0.xsd}MasterDataTables" minOccurs="0"/>
+ *         <element name="customTypes" type="{http://www.jooq.org/xsd/jooq-codegen-2.1.0.xsd}CustomTypes" minOccurs="0"/>
+ *         <element name="enumTypes" type="{http://www.jooq.org/xsd/jooq-codegen-2.1.0.xsd}EnumTypes" minOccurs="0"/>
+ *         <element name="forcedTypes" type="{http://www.jooq.org/xsd/jooq-codegen-2.1.0.xsd}ForcedTypes" minOccurs="0"/>
+ *       </all>
+ *     </restriction>
+ *   </complexContent>
+ * </complexType>
+ * 
+ * + * + */ +@XmlAccessorType(XmlAccessType.FIELD) +@XmlType(name = "Database", propOrder = { + +}) +public class Database { + + @XmlElement(required = true) + protected String name; + @XmlElement(defaultValue = ".*") + protected String includes = ".*"; + @XmlElement(defaultValue = "") + protected String excludes = ""; + @XmlElement(defaultValue = "false") + protected Boolean dateAsTimestamp = false; + @XmlElement(defaultValue = "true") + protected Boolean unsignedTypes = true; + @XmlElement(defaultValue = "") + protected String inputSchema = ""; + @XmlElement(defaultValue = "") + protected String outputSchema = ""; + @XmlElementWrapper(name = "schemata") + @XmlElement(name = "schema") + protected List schemata; + @XmlElementWrapper(name = "masterDataTables") + @XmlElement(name = "masterDataTable") + protected List masterDataTables; + @XmlElementWrapper(name = "customTypes") + @XmlElement(name = "customType") + protected List customTypes; + @XmlElementWrapper(name = "enumTypes") + @XmlElement(name = "enumType") + protected List enumTypes; + @XmlElementWrapper(name = "forcedTypes") + @XmlElement(name = "forcedType") + protected List forcedTypes; + + /** + * Gets the value of the name property. + * + * @return + * possible object is + * {@link String } + * + */ + public String getName() { + return name; + } + + /** + * Sets the value of the name property. + * + * @param value + * allowed object is + * {@link String } + * + */ + public void setName(String value) { + this.name = value; + } + + /** + * Gets the value of the includes property. + * + * @return + * possible object is + * {@link String } + * + */ + public String getIncludes() { + return includes; + } + + /** + * Sets the value of the includes property. + * + * @param value + * allowed object is + * {@link String } + * + */ + public void setIncludes(String value) { + this.includes = value; + } + + /** + * Gets the value of the excludes property. + * + * @return + * possible object is + * {@link String } + * + */ + public String getExcludes() { + return excludes; + } + + /** + * Sets the value of the excludes property. + * + * @param value + * allowed object is + * {@link String } + * + */ + public void setExcludes(String value) { + this.excludes = value; + } + + /** + * Gets the value of the dateAsTimestamp property. + * + * @return + * possible object is + * {@link Boolean } + * + */ + public Boolean isDateAsTimestamp() { + return dateAsTimestamp; + } + + /** + * Sets the value of the dateAsTimestamp property. + * + * @param value + * allowed object is + * {@link Boolean } + * + */ + public void setDateAsTimestamp(Boolean value) { + this.dateAsTimestamp = value; + } + + /** + * Gets the value of the unsignedTypes property. + * + * @return + * possible object is + * {@link Boolean } + * + */ + public Boolean isUnsignedTypes() { + return unsignedTypes; + } + + /** + * Sets the value of the unsignedTypes property. + * + * @param value + * allowed object is + * {@link Boolean } + * + */ + public void setUnsignedTypes(Boolean value) { + this.unsignedTypes = value; + } + + /** + * Gets the value of the inputSchema property. + * + * @return + * possible object is + * {@link String } + * + */ + public String getInputSchema() { + return inputSchema; + } + + /** + * Sets the value of the inputSchema property. + * + * @param value + * allowed object is + * {@link String } + * + */ + public void setInputSchema(String value) { + this.inputSchema = value; + } + + /** + * Gets the value of the outputSchema property. + * + * @return + * possible object is + * {@link String } + * + */ + public String getOutputSchema() { + return outputSchema; + } + + /** + * Sets the value of the outputSchema property. + * + * @param value + * allowed object is + * {@link String } + * + */ + public void setOutputSchema(String value) { + this.outputSchema = value; + } + + public List getSchemata() { + if (schemata == null) { + schemata = new ArrayList(); + } + return schemata; + } + + public List getMasterDataTables() { + if (masterDataTables == null) { + masterDataTables = new ArrayList(); + } + return masterDataTables; + } + + public List getCustomTypes() { + if (customTypes == null) { + customTypes = new ArrayList(); + } + return customTypes; + } + + public List getEnumTypes() { + if (enumTypes == null) { + enumTypes = new ArrayList(); + } + return enumTypes; + } + + public List getForcedTypes() { + if (forcedTypes == null) { + forcedTypes = new ArrayList(); + } + return forcedTypes; + } + + public Database withName(String value) { + setName(value); + return this; + } + + public Database withIncludes(String value) { + setIncludes(value); + return this; + } + + public Database withExcludes(String value) { + setExcludes(value); + return this; + } + + public Database withDateAsTimestamp(Boolean value) { + setDateAsTimestamp(value); + return this; + } + + public Database withUnsignedTypes(Boolean value) { + setUnsignedTypes(value); + return this; + } + + public Database withInputSchema(String value) { + setInputSchema(value); + return this; + } + + public Database withOutputSchema(String value) { + setOutputSchema(value); + return this; + } + + public Database withSchemata(Schema... values) { + if (values!= null) { + for (Schema value: values) { + getSchemata().add(value); + } + } + return this; + } + + public Database withSchemata(Collection values) { + if (values!= null) { + getSchemata().addAll(values); + } + return this; + } + + public Database withMasterDataTables(MasterDataTable... values) { + if (values!= null) { + for (MasterDataTable value: values) { + getMasterDataTables().add(value); + } + } + return this; + } + + public Database withMasterDataTables(Collection values) { + if (values!= null) { + getMasterDataTables().addAll(values); + } + return this; + } + + public Database withCustomTypes(CustomType... values) { + if (values!= null) { + for (CustomType value: values) { + getCustomTypes().add(value); + } + } + return this; + } + + public Database withCustomTypes(Collection values) { + if (values!= null) { + getCustomTypes().addAll(values); + } + return this; + } + + public Database withEnumTypes(EnumType... values) { + if (values!= null) { + for (EnumType value: values) { + getEnumTypes().add(value); + } + } + return this; + } + + public Database withEnumTypes(Collection values) { + if (values!= null) { + getEnumTypes().addAll(values); + } + return this; + } + + public Database withForcedTypes(ForcedType... values) { + if (values!= null) { + for (ForcedType value: values) { + getForcedTypes().add(value); + } + } + return this; + } + + public Database withForcedTypes(Collection values) { + if (values!= null) { + getForcedTypes().addAll(values); + } + return this; + } + +} diff --git a/jOOQ-meta/src/main/java/org/jooq/util/jaxb/EnumType.java b/jOOQ-meta/src/main/java/org/jooq/util/jaxb/EnumType.java new file mode 100644 index 00000000000..95cb8f3a031 --- /dev/null +++ b/jOOQ-meta/src/main/java/org/jooq/util/jaxb/EnumType.java @@ -0,0 +1,106 @@ +// +// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, v2.0.5-b02-fcs +// See http://java.sun.com/xml/jaxb +// Any modifications to this file will be lost upon recompilation of the source schema. +// Generated on: 2012.03.16 at 11:15:20 AM MEZ +// + + +package org.jooq.util.jaxb; + +import javax.xml.bind.annotation.XmlAccessType; +import javax.xml.bind.annotation.XmlAccessorType; +import javax.xml.bind.annotation.XmlElement; +import javax.xml.bind.annotation.XmlType; + + +/** + *

Java class for EnumType complex type. + * + *

The following schema fragment specifies the expected content contained within this class. + * + *

+ * <complexType name="EnumType">
+ *   <complexContent>
+ *     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
+ *       <all>
+ *         <element name="name" type="{http://www.w3.org/2001/XMLSchema}string"/>
+ *         <element name="literals" type="{http://www.w3.org/2001/XMLSchema}string"/>
+ *       </all>
+ *     </restriction>
+ *   </complexContent>
+ * </complexType>
+ * 
+ * + * + */ +@XmlAccessorType(XmlAccessType.FIELD) +@XmlType(name = "EnumType", propOrder = { + +}) +public class EnumType { + + @XmlElement(required = true) + protected String name; + @XmlElement(required = true) + protected String literals; + + /** + * Gets the value of the name property. + * + * @return + * possible object is + * {@link String } + * + */ + public String getName() { + return name; + } + + /** + * Sets the value of the name property. + * + * @param value + * allowed object is + * {@link String } + * + */ + public void setName(String value) { + this.name = value; + } + + /** + * Gets the value of the literals property. + * + * @return + * possible object is + * {@link String } + * + */ + public String getLiterals() { + return literals; + } + + /** + * Sets the value of the literals property. + * + * @param value + * allowed object is + * {@link String } + * + */ + public void setLiterals(String value) { + this.literals = value; + } + + public EnumType withName(String value) { + setName(value); + return this; + } + + public EnumType withLiterals(String value) { + setLiterals(value); + return this; + } + +} diff --git a/jOOQ-meta/src/main/java/org/jooq/util/jaxb/ForcedType.java b/jOOQ-meta/src/main/java/org/jooq/util/jaxb/ForcedType.java new file mode 100644 index 00000000000..0f048e27823 --- /dev/null +++ b/jOOQ-meta/src/main/java/org/jooq/util/jaxb/ForcedType.java @@ -0,0 +1,106 @@ +// +// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, v2.0.5-b02-fcs +// See http://java.sun.com/xml/jaxb +// Any modifications to this file will be lost upon recompilation of the source schema. +// Generated on: 2012.03.16 at 11:15:20 AM MEZ +// + + +package org.jooq.util.jaxb; + +import javax.xml.bind.annotation.XmlAccessType; +import javax.xml.bind.annotation.XmlAccessorType; +import javax.xml.bind.annotation.XmlElement; +import javax.xml.bind.annotation.XmlType; + + +/** + *

Java class for ForcedType complex type. + * + *

The following schema fragment specifies the expected content contained within this class. + * + *

+ * <complexType name="ForcedType">
+ *   <complexContent>
+ *     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
+ *       <all>
+ *         <element name="name" type="{http://www.w3.org/2001/XMLSchema}string"/>
+ *         <element name="expressions" type="{http://www.w3.org/2001/XMLSchema}string"/>
+ *       </all>
+ *     </restriction>
+ *   </complexContent>
+ * </complexType>
+ * 
+ * + * + */ +@XmlAccessorType(XmlAccessType.FIELD) +@XmlType(name = "ForcedType", propOrder = { + +}) +public class ForcedType { + + @XmlElement(required = true) + protected String name; + @XmlElement(required = true) + protected String expressions; + + /** + * Gets the value of the name property. + * + * @return + * possible object is + * {@link String } + * + */ + public String getName() { + return name; + } + + /** + * Sets the value of the name property. + * + * @param value + * allowed object is + * {@link String } + * + */ + public void setName(String value) { + this.name = value; + } + + /** + * Gets the value of the expressions property. + * + * @return + * possible object is + * {@link String } + * + */ + public String getExpressions() { + return expressions; + } + + /** + * Sets the value of the expressions property. + * + * @param value + * allowed object is + * {@link String } + * + */ + public void setExpressions(String value) { + this.expressions = value; + } + + public ForcedType withName(String value) { + setName(value); + return this; + } + + public ForcedType withExpressions(String value) { + setExpressions(value); + return this; + } + +} diff --git a/jOOQ-meta/src/main/java/org/jooq/util/jaxb/Generate.java b/jOOQ-meta/src/main/java/org/jooq/util/jaxb/Generate.java new file mode 100644 index 00000000000..8cfe9ab59b1 --- /dev/null +++ b/jOOQ-meta/src/main/java/org/jooq/util/jaxb/Generate.java @@ -0,0 +1,298 @@ +// +// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, v2.0.5-b02-fcs +// See http://java.sun.com/xml/jaxb +// Any modifications to this file will be lost upon recompilation of the source schema. +// Generated on: 2012.03.16 at 11:15:20 AM MEZ +// + + +package org.jooq.util.jaxb; + +import javax.xml.bind.annotation.XmlAccessType; +import javax.xml.bind.annotation.XmlAccessorType; +import javax.xml.bind.annotation.XmlElement; +import javax.xml.bind.annotation.XmlType; + + +/** + *

Java class for Generate complex type. + * + *

The following schema fragment specifies the expected content contained within this class. + * + *

+ * <complexType name="Generate">
+ *   <complexContent>
+ *     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
+ *       <all>
+ *         <element name="relations" type="{http://www.w3.org/2001/XMLSchema}boolean" minOccurs="0"/>
+ *         <element name="navigationMethods" type="{http://www.w3.org/2001/XMLSchema}boolean" minOccurs="0"/>
+ *         <element name="deprecated" type="{http://www.w3.org/2001/XMLSchema}boolean" minOccurs="0"/>
+ *         <element name="instanceFields" type="{http://www.w3.org/2001/XMLSchema}boolean" minOccurs="0"/>
+ *         <element name="generatedAnnotation" type="{http://www.w3.org/2001/XMLSchema}boolean" minOccurs="0"/>
+ *         <element name="records" type="{http://www.w3.org/2001/XMLSchema}boolean" minOccurs="0"/>
+ *         <element name="pojos" type="{http://www.w3.org/2001/XMLSchema}boolean" minOccurs="0"/>
+ *         <element name="jpaAnnotations" type="{http://www.w3.org/2001/XMLSchema}boolean" minOccurs="0"/>
+ *       </all>
+ *     </restriction>
+ *   </complexContent>
+ * </complexType>
+ * 
+ * + * + */ +@XmlAccessorType(XmlAccessType.FIELD) +@XmlType(name = "Generate", propOrder = { + +}) +public class Generate { + + @XmlElement(defaultValue = "false") + protected Boolean relations = false; + @XmlElement(defaultValue = "true") + protected Boolean navigationMethods = true; + @XmlElement(defaultValue = "true") + protected Boolean deprecated = true; + @XmlElement(defaultValue = "true") + protected Boolean instanceFields = true; + @XmlElement(defaultValue = "true") + protected Boolean generatedAnnotation = true; + @XmlElement(defaultValue = "true") + protected Boolean records = true; + @XmlElement(defaultValue = "false") + protected Boolean pojos = false; + @XmlElement(defaultValue = "false") + protected Boolean jpaAnnotations = false; + + /** + * Gets the value of the relations property. + * + * @return + * possible object is + * {@link Boolean } + * + */ + public Boolean isRelations() { + return relations; + } + + /** + * Sets the value of the relations property. + * + * @param value + * allowed object is + * {@link Boolean } + * + */ + public void setRelations(Boolean value) { + this.relations = value; + } + + /** + * Gets the value of the navigationMethods property. + * + * @return + * possible object is + * {@link Boolean } + * + */ + public Boolean isNavigationMethods() { + return navigationMethods; + } + + /** + * Sets the value of the navigationMethods property. + * + * @param value + * allowed object is + * {@link Boolean } + * + */ + public void setNavigationMethods(Boolean value) { + this.navigationMethods = value; + } + + /** + * Gets the value of the deprecated property. + * + * @return + * possible object is + * {@link Boolean } + * + */ + public Boolean isDeprecated() { + return deprecated; + } + + /** + * Sets the value of the deprecated property. + * + * @param value + * allowed object is + * {@link Boolean } + * + */ + public void setDeprecated(Boolean value) { + this.deprecated = value; + } + + /** + * Gets the value of the instanceFields property. + * + * @return + * possible object is + * {@link Boolean } + * + */ + public Boolean isInstanceFields() { + return instanceFields; + } + + /** + * Sets the value of the instanceFields property. + * + * @param value + * allowed object is + * {@link Boolean } + * + */ + public void setInstanceFields(Boolean value) { + this.instanceFields = value; + } + + /** + * Gets the value of the generatedAnnotation property. + * + * @return + * possible object is + * {@link Boolean } + * + */ + public Boolean isGeneratedAnnotation() { + return generatedAnnotation; + } + + /** + * Sets the value of the generatedAnnotation property. + * + * @param value + * allowed object is + * {@link Boolean } + * + */ + public void setGeneratedAnnotation(Boolean value) { + this.generatedAnnotation = value; + } + + /** + * Gets the value of the records property. + * + * @return + * possible object is + * {@link Boolean } + * + */ + public Boolean isRecords() { + return records; + } + + /** + * Sets the value of the records property. + * + * @param value + * allowed object is + * {@link Boolean } + * + */ + public void setRecords(Boolean value) { + this.records = value; + } + + /** + * Gets the value of the pojos property. + * + * @return + * possible object is + * {@link Boolean } + * + */ + public Boolean isPojos() { + return pojos; + } + + /** + * Sets the value of the pojos property. + * + * @param value + * allowed object is + * {@link Boolean } + * + */ + public void setPojos(Boolean value) { + this.pojos = value; + } + + /** + * Gets the value of the jpaAnnotations property. + * + * @return + * possible object is + * {@link Boolean } + * + */ + public Boolean isJpaAnnotations() { + return jpaAnnotations; + } + + /** + * Sets the value of the jpaAnnotations property. + * + * @param value + * allowed object is + * {@link Boolean } + * + */ + public void setJpaAnnotations(Boolean value) { + this.jpaAnnotations = value; + } + + public Generate withRelations(Boolean value) { + setRelations(value); + return this; + } + + public Generate withNavigationMethods(Boolean value) { + setNavigationMethods(value); + return this; + } + + public Generate withDeprecated(Boolean value) { + setDeprecated(value); + return this; + } + + public Generate withInstanceFields(Boolean value) { + setInstanceFields(value); + return this; + } + + public Generate withGeneratedAnnotation(Boolean value) { + setGeneratedAnnotation(value); + return this; + } + + public Generate withRecords(Boolean value) { + setRecords(value); + return this; + } + + public Generate withPojos(Boolean value) { + setPojos(value); + return this; + } + + public Generate withJpaAnnotations(Boolean value) { + setJpaAnnotations(value); + return this; + } + +} diff --git a/jOOQ-meta/src/main/java/org/jooq/util/jaxb/Generator.java b/jOOQ-meta/src/main/java/org/jooq/util/jaxb/Generator.java new file mode 100644 index 00000000000..d51fe9b1b7d --- /dev/null +++ b/jOOQ-meta/src/main/java/org/jooq/util/jaxb/Generator.java @@ -0,0 +1,199 @@ +// +// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, v2.0.5-b02-fcs +// See http://java.sun.com/xml/jaxb +// Any modifications to this file will be lost upon recompilation of the source schema. +// Generated on: 2012.03.16 at 11:15:20 AM MEZ +// + + +package org.jooq.util.jaxb; + +import javax.xml.bind.annotation.XmlAccessType; +import javax.xml.bind.annotation.XmlAccessorType; +import javax.xml.bind.annotation.XmlElement; +import javax.xml.bind.annotation.XmlType; + + +/** + *

Java class for Generator complex type. + * + *

The following schema fragment specifies the expected content contained within this class. + * + *

+ * <complexType name="Generator">
+ *   <complexContent>
+ *     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
+ *       <all>
+ *         <element name="name" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
+ *         <element name="strategy" type="{http://www.jooq.org/xsd/jooq-codegen-2.1.0.xsd}Strategy" minOccurs="0"/>
+ *         <element name="database" type="{http://www.jooq.org/xsd/jooq-codegen-2.1.0.xsd}Database"/>
+ *         <element name="generate" type="{http://www.jooq.org/xsd/jooq-codegen-2.1.0.xsd}Generate" minOccurs="0"/>
+ *         <element name="target" type="{http://www.jooq.org/xsd/jooq-codegen-2.1.0.xsd}Target" minOccurs="0"/>
+ *       </all>
+ *     </restriction>
+ *   </complexContent>
+ * </complexType>
+ * 
+ * + * + */ +@XmlAccessorType(XmlAccessType.FIELD) +@XmlType(name = "Generator", propOrder = { + +}) +public class Generator { + + @XmlElement(defaultValue = "org.jooq.util.DefaultGenerator") + protected String name = "org.jooq.util.DefaultGenerator"; + protected Strategy strategy; + @XmlElement(required = true) + protected Database database; + protected Generate generate; + protected Target target; + + /** + * Gets the value of the name property. + * + * @return + * possible object is + * {@link String } + * + */ + public String getName() { + return name; + } + + /** + * Sets the value of the name property. + * + * @param value + * allowed object is + * {@link String } + * + */ + public void setName(String value) { + this.name = value; + } + + /** + * Gets the value of the strategy property. + * + * @return + * possible object is + * {@link Strategy } + * + */ + public Strategy getStrategy() { + return strategy; + } + + /** + * Sets the value of the strategy property. + * + * @param value + * allowed object is + * {@link Strategy } + * + */ + public void setStrategy(Strategy value) { + this.strategy = value; + } + + /** + * Gets the value of the database property. + * + * @return + * possible object is + * {@link Database } + * + */ + public Database getDatabase() { + return database; + } + + /** + * Sets the value of the database property. + * + * @param value + * allowed object is + * {@link Database } + * + */ + public void setDatabase(Database value) { + this.database = value; + } + + /** + * Gets the value of the generate property. + * + * @return + * possible object is + * {@link Generate } + * + */ + public Generate getGenerate() { + return generate; + } + + /** + * Sets the value of the generate property. + * + * @param value + * allowed object is + * {@link Generate } + * + */ + public void setGenerate(Generate value) { + this.generate = value; + } + + /** + * Gets the value of the target property. + * + * @return + * possible object is + * {@link Target } + * + */ + public Target getTarget() { + return target; + } + + /** + * Sets the value of the target property. + * + * @param value + * allowed object is + * {@link Target } + * + */ + public void setTarget(Target value) { + this.target = value; + } + + public Generator withName(String value) { + setName(value); + return this; + } + + public Generator withStrategy(Strategy value) { + setStrategy(value); + return this; + } + + public Generator withDatabase(Database value) { + setDatabase(value); + return this; + } + + public Generator withGenerate(Generate value) { + setGenerate(value); + return this; + } + + public Generator withTarget(Target value) { + setTarget(value); + return this; + } + +} diff --git a/jOOQ-meta/src/main/java/org/jooq/util/jaxb/Jdbc.java b/jOOQ-meta/src/main/java/org/jooq/util/jaxb/Jdbc.java new file mode 100644 index 00000000000..bceb5a3d13d --- /dev/null +++ b/jOOQ-meta/src/main/java/org/jooq/util/jaxb/Jdbc.java @@ -0,0 +1,230 @@ +// +// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, v2.0.5-b02-fcs +// See http://java.sun.com/xml/jaxb +// Any modifications to this file will be lost upon recompilation of the source schema. +// Generated on: 2012.03.16 at 11:15:20 AM MEZ +// + + +package org.jooq.util.jaxb; + +import java.util.ArrayList; +import java.util.Collection; +import java.util.List; +import javax.xml.bind.annotation.XmlAccessType; +import javax.xml.bind.annotation.XmlAccessorType; +import javax.xml.bind.annotation.XmlElement; +import javax.xml.bind.annotation.XmlElementWrapper; +import javax.xml.bind.annotation.XmlType; + + +/** + *

Java class for Jdbc complex type. + * + *

The following schema fragment specifies the expected content contained within this class. + * + *

+ * <complexType name="Jdbc">
+ *   <complexContent>
+ *     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
+ *       <all>
+ *         <element name="driver" type="{http://www.w3.org/2001/XMLSchema}string"/>
+ *         <element name="url" type="{http://www.w3.org/2001/XMLSchema}string"/>
+ *         <element name="schema" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
+ *         <element name="user" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
+ *         <element name="password" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
+ *         <element name="properties" type="{http://www.jooq.org/xsd/jooq-codegen-2.1.0.xsd}Properties" minOccurs="0"/>
+ *       </all>
+ *     </restriction>
+ *   </complexContent>
+ * </complexType>
+ * 
+ * + * + */ +@XmlAccessorType(XmlAccessType.FIELD) +@XmlType(name = "Jdbc", propOrder = { + +}) +public class Jdbc { + + @XmlElement(required = true) + protected String driver; + @XmlElement(required = true) + protected String url; + protected String schema; + protected String user; + protected String password; + @XmlElementWrapper(name = "properties") + @XmlElement(name = "property") + protected List properties; + + /** + * Gets the value of the driver property. + * + * @return + * possible object is + * {@link String } + * + */ + public String getDriver() { + return driver; + } + + /** + * Sets the value of the driver property. + * + * @param value + * allowed object is + * {@link String } + * + */ + public void setDriver(String value) { + this.driver = value; + } + + /** + * Gets the value of the url property. + * + * @return + * possible object is + * {@link String } + * + */ + public String getUrl() { + return url; + } + + /** + * Sets the value of the url property. + * + * @param value + * allowed object is + * {@link String } + * + */ + public void setUrl(String value) { + this.url = value; + } + + /** + * Gets the value of the schema property. + * + * @return + * possible object is + * {@link String } + * + */ + public String getSchema() { + return schema; + } + + /** + * Sets the value of the schema property. + * + * @param value + * allowed object is + * {@link String } + * + */ + public void setSchema(String value) { + this.schema = value; + } + + /** + * Gets the value of the user property. + * + * @return + * possible object is + * {@link String } + * + */ + public String getUser() { + return user; + } + + /** + * Sets the value of the user property. + * + * @param value + * allowed object is + * {@link String } + * + */ + public void setUser(String value) { + this.user = value; + } + + /** + * Gets the value of the password property. + * + * @return + * possible object is + * {@link String } + * + */ + public String getPassword() { + return password; + } + + /** + * Sets the value of the password property. + * + * @param value + * allowed object is + * {@link String } + * + */ + public void setPassword(String value) { + this.password = value; + } + + public List getProperties() { + if (properties == null) { + properties = new ArrayList(); + } + return properties; + } + + public Jdbc withDriver(String value) { + setDriver(value); + return this; + } + + public Jdbc withUrl(String value) { + setUrl(value); + return this; + } + + public Jdbc withSchema(String value) { + setSchema(value); + return this; + } + + public Jdbc withUser(String value) { + setUser(value); + return this; + } + + public Jdbc withPassword(String value) { + setPassword(value); + return this; + } + + public Jdbc withProperties(Property... values) { + if (values!= null) { + for (Property value: values) { + getProperties().add(value); + } + } + return this; + } + + public Jdbc withProperties(Collection values) { + if (values!= null) { + getProperties().addAll(values); + } + return this; + } + +} diff --git a/jOOQ-meta/src/main/java/org/jooq/util/jaxb/MasterDataTable.java b/jOOQ-meta/src/main/java/org/jooq/util/jaxb/MasterDataTable.java new file mode 100644 index 00000000000..9235c0b20e6 --- /dev/null +++ b/jOOQ-meta/src/main/java/org/jooq/util/jaxb/MasterDataTable.java @@ -0,0 +1,136 @@ +// +// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, v2.0.5-b02-fcs +// See http://java.sun.com/xml/jaxb +// Any modifications to this file will be lost upon recompilation of the source schema. +// Generated on: 2012.03.16 at 11:15:20 AM MEZ +// + + +package org.jooq.util.jaxb; + +import javax.xml.bind.annotation.XmlAccessType; +import javax.xml.bind.annotation.XmlAccessorType; +import javax.xml.bind.annotation.XmlElement; +import javax.xml.bind.annotation.XmlType; + + +/** + *

Java class for MasterDataTable complex type. + * + *

The following schema fragment specifies the expected content contained within this class. + * + *

+ * <complexType name="MasterDataTable">
+ *   <complexContent>
+ *     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
+ *       <all>
+ *         <element name="name" type="{http://www.w3.org/2001/XMLSchema}string"/>
+ *         <element name="literal" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
+ *         <element name="description" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
+ *       </all>
+ *     </restriction>
+ *   </complexContent>
+ * </complexType>
+ * 
+ * + * + */ +@XmlAccessorType(XmlAccessType.FIELD) +@XmlType(name = "MasterDataTable", propOrder = { + +}) +public class MasterDataTable { + + @XmlElement(required = true) + protected String name; + protected String literal; + protected String description; + + /** + * Gets the value of the name property. + * + * @return + * possible object is + * {@link String } + * + */ + public String getName() { + return name; + } + + /** + * Sets the value of the name property. + * + * @param value + * allowed object is + * {@link String } + * + */ + public void setName(String value) { + this.name = value; + } + + /** + * Gets the value of the literal property. + * + * @return + * possible object is + * {@link String } + * + */ + public String getLiteral() { + return literal; + } + + /** + * Sets the value of the literal property. + * + * @param value + * allowed object is + * {@link String } + * + */ + public void setLiteral(String value) { + this.literal = value; + } + + /** + * Gets the value of the description property. + * + * @return + * possible object is + * {@link String } + * + */ + public String getDescription() { + return description; + } + + /** + * Sets the value of the description property. + * + * @param value + * allowed object is + * {@link String } + * + */ + public void setDescription(String value) { + this.description = value; + } + + public MasterDataTable withName(String value) { + setName(value); + return this; + } + + public MasterDataTable withLiteral(String value) { + setLiteral(value); + return this; + } + + public MasterDataTable withDescription(String value) { + setDescription(value); + return this; + } + +} diff --git a/jOOQ-meta/src/main/java/org/jooq/util/jaxb/Property.java b/jOOQ-meta/src/main/java/org/jooq/util/jaxb/Property.java new file mode 100644 index 00000000000..a8c126f57f6 --- /dev/null +++ b/jOOQ-meta/src/main/java/org/jooq/util/jaxb/Property.java @@ -0,0 +1,106 @@ +// +// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, v2.0.5-b02-fcs +// See http://java.sun.com/xml/jaxb +// Any modifications to this file will be lost upon recompilation of the source schema. +// Generated on: 2012.03.16 at 11:15:20 AM MEZ +// + + +package org.jooq.util.jaxb; + +import javax.xml.bind.annotation.XmlAccessType; +import javax.xml.bind.annotation.XmlAccessorType; +import javax.xml.bind.annotation.XmlElement; +import javax.xml.bind.annotation.XmlType; + + +/** + *

Java class for Property complex type. + * + *

The following schema fragment specifies the expected content contained within this class. + * + *

+ * <complexType name="Property">
+ *   <complexContent>
+ *     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
+ *       <all>
+ *         <element name="key" type="{http://www.w3.org/2001/XMLSchema}string"/>
+ *         <element name="value" type="{http://www.w3.org/2001/XMLSchema}string"/>
+ *       </all>
+ *     </restriction>
+ *   </complexContent>
+ * </complexType>
+ * 
+ * + * + */ +@XmlAccessorType(XmlAccessType.FIELD) +@XmlType(name = "Property", propOrder = { + +}) +public class Property { + + @XmlElement(required = true) + protected String key; + @XmlElement(required = true) + protected String value; + + /** + * Gets the value of the key property. + * + * @return + * possible object is + * {@link String } + * + */ + public String getKey() { + return key; + } + + /** + * Sets the value of the key property. + * + * @param value + * allowed object is + * {@link String } + * + */ + public void setKey(String value) { + this.key = value; + } + + /** + * Gets the value of the value property. + * + * @return + * possible object is + * {@link String } + * + */ + public String getValue() { + return value; + } + + /** + * Sets the value of the value property. + * + * @param value + * allowed object is + * {@link String } + * + */ + public void setValue(String value) { + this.value = value; + } + + public Property withKey(String value) { + setKey(value); + return this; + } + + public Property withValue(String value) { + setValue(value); + return this; + } + +} diff --git a/jOOQ-meta/src/main/java/org/jooq/util/jaxb/Schema.java b/jOOQ-meta/src/main/java/org/jooq/util/jaxb/Schema.java new file mode 100644 index 00000000000..38296eb8741 --- /dev/null +++ b/jOOQ-meta/src/main/java/org/jooq/util/jaxb/Schema.java @@ -0,0 +1,106 @@ +// +// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, v2.0.5-b02-fcs +// See http://java.sun.com/xml/jaxb +// Any modifications to this file will be lost upon recompilation of the source schema. +// Generated on: 2012.03.16 at 11:15:20 AM MEZ +// + + +package org.jooq.util.jaxb; + +import javax.xml.bind.annotation.XmlAccessType; +import javax.xml.bind.annotation.XmlAccessorType; +import javax.xml.bind.annotation.XmlElement; +import javax.xml.bind.annotation.XmlType; + + +/** + *

Java class for Schema complex type. + * + *

The following schema fragment specifies the expected content contained within this class. + * + *

+ * <complexType name="Schema">
+ *   <complexContent>
+ *     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
+ *       <all>
+ *         <element name="inputSchema" type="{http://www.w3.org/2001/XMLSchema}string"/>
+ *         <element name="outputSchema" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
+ *       </all>
+ *     </restriction>
+ *   </complexContent>
+ * </complexType>
+ * 
+ * + * + */ +@XmlAccessorType(XmlAccessType.FIELD) +@XmlType(name = "Schema", propOrder = { + +}) +public class Schema { + + @XmlElement(required = true, defaultValue = "") + protected String inputSchema = ""; + @XmlElement(defaultValue = "") + protected String outputSchema = ""; + + /** + * Gets the value of the inputSchema property. + * + * @return + * possible object is + * {@link String } + * + */ + public String getInputSchema() { + return inputSchema; + } + + /** + * Sets the value of the inputSchema property. + * + * @param value + * allowed object is + * {@link String } + * + */ + public void setInputSchema(String value) { + this.inputSchema = value; + } + + /** + * Gets the value of the outputSchema property. + * + * @return + * possible object is + * {@link String } + * + */ + public String getOutputSchema() { + return outputSchema; + } + + /** + * Sets the value of the outputSchema property. + * + * @param value + * allowed object is + * {@link String } + * + */ + public void setOutputSchema(String value) { + this.outputSchema = value; + } + + public Schema withInputSchema(String value) { + setInputSchema(value); + return this; + } + + public Schema withOutputSchema(String value) { + setOutputSchema(value); + return this; + } + +} diff --git a/jOOQ-meta/src/main/java/org/jooq/util/jaxb/Strategy.java b/jOOQ-meta/src/main/java/org/jooq/util/jaxb/Strategy.java new file mode 100644 index 00000000000..37e4b9fb4a8 --- /dev/null +++ b/jOOQ-meta/src/main/java/org/jooq/util/jaxb/Strategy.java @@ -0,0 +1,74 @@ +// +// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, v2.0.5-b02-fcs +// See http://java.sun.com/xml/jaxb +// Any modifications to this file will be lost upon recompilation of the source schema. +// Generated on: 2012.03.16 at 11:15:20 AM MEZ +// + + +package org.jooq.util.jaxb; + +import javax.xml.bind.annotation.XmlAccessType; +import javax.xml.bind.annotation.XmlAccessorType; +import javax.xml.bind.annotation.XmlElement; +import javax.xml.bind.annotation.XmlType; + + +/** + *

Java class for Strategy complex type. + * + *

The following schema fragment specifies the expected content contained within this class. + * + *

+ * <complexType name="Strategy">
+ *   <complexContent>
+ *     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
+ *       <all>
+ *         <element name="name" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
+ *       </all>
+ *     </restriction>
+ *   </complexContent>
+ * </complexType>
+ * 
+ * + * + */ +@XmlAccessorType(XmlAccessType.FIELD) +@XmlType(name = "Strategy", propOrder = { + +}) +public class Strategy { + + @XmlElement(defaultValue = "org.jooq.util.DefaultGeneratorStrategy") + protected String name = "org.jooq.util.DefaultGeneratorStrategy"; + + /** + * Gets the value of the name property. + * + * @return + * possible object is + * {@link String } + * + */ + public String getName() { + return name; + } + + /** + * Sets the value of the name property. + * + * @param value + * allowed object is + * {@link String } + * + */ + public void setName(String value) { + this.name = value; + } + + public Strategy withName(String value) { + setName(value); + return this; + } + +} diff --git a/jOOQ-meta/src/main/java/org/jooq/util/jaxb/Target.java b/jOOQ-meta/src/main/java/org/jooq/util/jaxb/Target.java new file mode 100644 index 00000000000..bd87a15a7e7 --- /dev/null +++ b/jOOQ-meta/src/main/java/org/jooq/util/jaxb/Target.java @@ -0,0 +1,106 @@ +// +// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, v2.0.5-b02-fcs +// See http://java.sun.com/xml/jaxb +// Any modifications to this file will be lost upon recompilation of the source schema. +// Generated on: 2012.03.16 at 11:15:20 AM MEZ +// + + +package org.jooq.util.jaxb; + +import javax.xml.bind.annotation.XmlAccessType; +import javax.xml.bind.annotation.XmlAccessorType; +import javax.xml.bind.annotation.XmlElement; +import javax.xml.bind.annotation.XmlType; + + +/** + *

Java class for Target complex type. + * + *

The following schema fragment specifies the expected content contained within this class. + * + *

+ * <complexType name="Target">
+ *   <complexContent>
+ *     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
+ *       <all>
+ *         <element name="packageName" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
+ *         <element name="directory" type="{http://www.w3.org/2001/XMLSchema}string"/>
+ *       </all>
+ *     </restriction>
+ *   </complexContent>
+ * </complexType>
+ * 
+ * + * + */ +@XmlAccessorType(XmlAccessType.FIELD) +@XmlType(name = "Target", propOrder = { + +}) +public class Target { + + @XmlElement(defaultValue = "org.jooq.generated") + protected String packageName = "org.jooq.generated"; + @XmlElement(required = true, defaultValue = "target/generated-sources/jooq") + protected String directory = "target/generated-sources/jooq"; + + /** + * Gets the value of the packageName property. + * + * @return + * possible object is + * {@link String } + * + */ + public String getPackageName() { + return packageName; + } + + /** + * Sets the value of the packageName property. + * + * @param value + * allowed object is + * {@link String } + * + */ + public void setPackageName(String value) { + this.packageName = value; + } + + /** + * Gets the value of the directory property. + * + * @return + * possible object is + * {@link String } + * + */ + public String getDirectory() { + return directory; + } + + /** + * Sets the value of the directory property. + * + * @param value + * allowed object is + * {@link String } + * + */ + public void setDirectory(String value) { + this.directory = value; + } + + public Target withPackageName(String value) { + setPackageName(value); + return this; + } + + public Target withDirectory(String value) { + setDirectory(value); + return this; + } + +} diff --git a/jOOQ-meta/src/main/java/org/jooq/util/jaxb/package-info.java b/jOOQ-meta/src/main/java/org/jooq/util/jaxb/package-info.java new file mode 100644 index 00000000000..4a31d1bd9ec --- /dev/null +++ b/jOOQ-meta/src/main/java/org/jooq/util/jaxb/package-info.java @@ -0,0 +1,9 @@ +// +// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, v2.0.5-b02-fcs +// See http://java.sun.com/xml/jaxb +// Any modifications to this file will be lost upon recompilation of the source schema. +// Generated on: 2012.03.16 at 11:15:20 AM MEZ +// + +@javax.xml.bind.annotation.XmlSchema(namespace = "http://www.jooq.org/xsd/jooq-codegen-2.1.0.xsd", elementFormDefault = javax.xml.bind.annotation.XmlNsForm.QUALIFIED) +package org.jooq.util.jaxb; diff --git a/jOOQ-meta/src/main/java/org/jooq/util/mysql/MySQLDatabase.java b/jOOQ-meta/src/main/java/org/jooq/util/mysql/MySQLDatabase.java new file mode 100644 index 00000000000..9a5c215f41b --- /dev/null +++ b/jOOQ-meta/src/main/java/org/jooq/util/mysql/MySQLDatabase.java @@ -0,0 +1,315 @@ +/** + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com + * All rights reserved. + * + * This software is licensed to you under the Apache License, Version 2.0 + * (the "License"); You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * 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 "jOOQ" 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 COPYRIGHT OWNER 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. + */ + +package org.jooq.util.mysql; + +import static org.jooq.util.mysql.information_schema.tables.Columns.COLUMNS; +import static org.jooq.util.mysql.information_schema.tables.KeyColumnUsage.KEY_COLUMN_USAGE; +import static org.jooq.util.mysql.information_schema.tables.ReferentialConstraints.REFERENTIAL_CONSTRAINTS; +import static org.jooq.util.mysql.information_schema.tables.TableConstraints.TABLE_CONSTRAINTS; +import static org.jooq.util.mysql.information_schema.tables.Tables.TABLES; +import static org.jooq.util.mysql.mysql.tables.Proc.DB; +import static org.jooq.util.mysql.mysql.tables.Proc.PROC; + +import java.sql.SQLException; +import java.util.ArrayList; +import java.util.List; + +import org.jooq.Record; +import org.jooq.Result; +import org.jooq.impl.Factory; +import org.jooq.util.AbstractDatabase; +import org.jooq.util.ArrayDefinition; +import org.jooq.util.ColumnDefinition; +import org.jooq.util.DefaultEnumDefinition; +import org.jooq.util.DefaultRelations; +import org.jooq.util.EnumDefinition; +import org.jooq.util.PackageDefinition; +import org.jooq.util.RoutineDefinition; +import org.jooq.util.SchemaDefinition; +import org.jooq.util.SequenceDefinition; +import org.jooq.util.TableDefinition; +import org.jooq.util.UDTDefinition; +import org.jooq.util.mysql.information_schema.tables.Columns; +import org.jooq.util.mysql.information_schema.tables.KeyColumnUsage; +import org.jooq.util.mysql.information_schema.tables.ReferentialConstraints; +import org.jooq.util.mysql.information_schema.tables.TableConstraints; +import org.jooq.util.mysql.information_schema.tables.Tables; +import org.jooq.util.mysql.mysql.tables.Proc; + +/** + * @author Lukas Eder + */ +public class MySQLDatabase extends AbstractDatabase { + + @Override + protected void loadPrimaryKeys(DefaultRelations relations) throws SQLException { + for (Record record : fetchKeys("PRIMARY KEY")) { + SchemaDefinition schema = getSchema(record.getValue(KeyColumnUsage.TABLE_SCHEMA)); + String constraintName = record.getValue(KeyColumnUsage.CONSTRAINT_NAME); + String tableName = record.getValue(KeyColumnUsage.TABLE_NAME); + String columnName = record.getValue(KeyColumnUsage.COLUMN_NAME); + + String key = getKeyName(tableName, constraintName); + TableDefinition table = getTable(schema, tableName); + + if (table != null) { + relations.addPrimaryKey(key, table.getColumn(columnName)); + } + } + } + + @Override + protected void loadUniqueKeys(DefaultRelations relations) throws SQLException { + for (Record record : fetchKeys("UNIQUE")) { + SchemaDefinition schema = getSchema(record.getValue(KeyColumnUsage.TABLE_SCHEMA)); + String constraintName = record.getValue(KeyColumnUsage.CONSTRAINT_NAME); + String tableName = record.getValue(KeyColumnUsage.TABLE_NAME); + String columnName = record.getValue(KeyColumnUsage.COLUMN_NAME); + + String key = getKeyName(tableName, constraintName); + TableDefinition table = getTable(schema, tableName); + + if (table != null) { + relations.addUniqueKey(key, table.getColumn(columnName)); + } + } + } + + private String getKeyName(String tableName, String keyName) { + return "KEY_" + tableName + "_" + keyName; + } + + private List fetchKeys(String constraintType) { + return create().select( + KeyColumnUsage.TABLE_SCHEMA, + KeyColumnUsage.CONSTRAINT_NAME, + KeyColumnUsage.TABLE_NAME, + KeyColumnUsage.COLUMN_NAME) + .from(KEY_COLUMN_USAGE) + .join(TABLE_CONSTRAINTS) + .on(KeyColumnUsage.TABLE_SCHEMA.equal(TableConstraints.TABLE_SCHEMA)) + .and(KeyColumnUsage.TABLE_NAME.equal(TableConstraints.TABLE_NAME)) + .and(KeyColumnUsage.CONSTRAINT_NAME.equal(TableConstraints.CONSTRAINT_NAME)) + .where(TableConstraints.CONSTRAINT_TYPE.equal(constraintType)) + .and(KeyColumnUsage.TABLE_SCHEMA.in(getInputSchemata())) + .orderBy( + KeyColumnUsage.TABLE_SCHEMA.asc(), + KeyColumnUsage.TABLE_NAME.asc(), + KeyColumnUsage.ORDINAL_POSITION.asc()) + .fetch(); + } + + @Override + protected void loadForeignKeys(DefaultRelations relations) throws SQLException { + for (Record record : create().select( + ReferentialConstraints.CONSTRAINT_SCHEMA, + ReferentialConstraints.CONSTRAINT_NAME, + ReferentialConstraints.TABLE_NAME, + ReferentialConstraints.REFERENCED_TABLE_NAME, + ReferentialConstraints.UNIQUE_CONSTRAINT_NAME, + ReferentialConstraints.UNIQUE_CONSTRAINT_SCHEMA, + KeyColumnUsage.COLUMN_NAME) + .from(REFERENTIAL_CONSTRAINTS) + .join(KEY_COLUMN_USAGE) + .on(ReferentialConstraints.CONSTRAINT_SCHEMA.equal(KeyColumnUsage.CONSTRAINT_SCHEMA)) + .and(ReferentialConstraints.CONSTRAINT_NAME.equal(KeyColumnUsage.CONSTRAINT_NAME)) + .where(ReferentialConstraints.CONSTRAINT_SCHEMA.in(getInputSchemata())) + .orderBy( + KeyColumnUsage.CONSTRAINT_SCHEMA.asc(), + KeyColumnUsage.CONSTRAINT_NAME.asc(), + KeyColumnUsage.ORDINAL_POSITION.asc()) + .fetch()) { + + SchemaDefinition foreignKeySchema = getSchema(record.getValue(ReferentialConstraints.CONSTRAINT_SCHEMA)); + SchemaDefinition uniqueKeySchema = getSchema(record.getValue(ReferentialConstraints.UNIQUE_CONSTRAINT_SCHEMA)); + + String foreignKey = record.getValue(ReferentialConstraints.CONSTRAINT_NAME); + String foreignKeyColumn = record.getValue(KeyColumnUsage.COLUMN_NAME); + String foreignKeyTableName = record.getValue(ReferentialConstraints.TABLE_NAME); + String referencedKey = record.getValue(ReferentialConstraints.UNIQUE_CONSTRAINT_NAME); + String referencedTableName = record.getValue(ReferentialConstraints.REFERENCED_TABLE_NAME); + + TableDefinition foreignKeyTable = getTable(foreignKeySchema, foreignKeyTableName); + + if (foreignKeyTable != null) { + ColumnDefinition column = foreignKeyTable.getColumn(foreignKeyColumn); + + String key = getKeyName(referencedTableName, referencedKey); + relations.addForeignKey(foreignKey, key, column, uniqueKeySchema); + } + } + } + + @Override + protected List getSequences0() throws SQLException { + List result = new ArrayList(); + return result; + } + + @Override + protected List getTables0() throws SQLException { + List result = new ArrayList(); + + for (Record record : create().select( + Tables.TABLE_SCHEMA, + Tables.TABLE_NAME, + Tables.TABLE_COMMENT) + .from(TABLES) + .where(Tables.TABLE_SCHEMA.in(getInputSchemata())) + .orderBy( + Tables.TABLE_SCHEMA, + Tables.TABLE_NAME) + .fetch()) { + + SchemaDefinition schema = getSchema(record.getValue(Tables.TABLE_SCHEMA)); + String name = record.getValue(Tables.TABLE_NAME); + String comment = record.getValue(Tables.TABLE_COMMENT); + + MySQLTableDefinition table = new MySQLTableDefinition(schema, name, comment); + result.add(table); + } + + return result; + } + + @Override + protected List getEnums0() throws SQLException { + List result = new ArrayList(); + + Result records = create() + .select( + Columns.TABLE_SCHEMA, + Columns.COLUMN_COMMENT, + Columns.TABLE_NAME, + Columns.COLUMN_NAME, + Columns.COLUMN_TYPE) + .from(COLUMNS) + .where( + Columns.COLUMN_TYPE.like("enum(%)").and( + Columns.TABLE_SCHEMA.in(getInputSchemata()))) + .orderBy( + Columns.TABLE_SCHEMA.asc(), + Columns.TABLE_NAME.asc(), + Columns.COLUMN_NAME.asc()) + .fetch(); + + for (Record record : records) { + SchemaDefinition schema = getSchema(record.getValue(Columns.TABLE_SCHEMA)); + + String comment = record.getValue(Columns.COLUMN_COMMENT); + String table = record.getValue(Columns.TABLE_NAME); + String column = record.getValue(Columns.COLUMN_NAME); + String name = table + "_" + column; + String columnType = record.getValue(Columns.COLUMN_TYPE); + + // [#1237] Don't generate enum classes for columns in MySQL tables + // that are excluded from code generation + TableDefinition tableDefinition = getTable(schema, table); + if (tableDefinition != null) { + ColumnDefinition columnDefinition = tableDefinition.getColumn(column); + + if (columnDefinition != null) { + + // [#1137] Avoid generating enum classes for enum types that + // are explicitly forced to another type + if (getConfiguredForcedType(columnDefinition) == null) { + DefaultEnumDefinition definition = new DefaultEnumDefinition(schema, name, comment); + for (String string : columnType.replaceAll("enum\\(|\\)", "").split(",")) { + definition.addLiteral(string.trim().replaceAll("'", "")); + } + + result.add(definition); + } + } + } + } + + return result; + } + + @Override + protected List getUDTs0() throws SQLException { + List result = new ArrayList(); + return result; + } + + @Override + protected List getArrays0() throws SQLException { + List result = new ArrayList(); + return result; + } + + @Override + protected List getRoutines0() throws SQLException { + List result = new ArrayList(); + + for (Record record : create().select( + Proc.DB, + Proc.NAME, + Proc.COMMENT, + Proc.PARAM_LIST, + Proc.RETURNS) + .from(PROC) + .where(DB.in(getInputSchemata())) + .orderBy( + DB, + Proc.NAME) + .fetch()) { + + SchemaDefinition schema = getSchema(record.getValue(DB)); + String name = record.getValue(Proc.NAME); + String comment = record.getValue(Proc.COMMENT); + String params = new String(record.getValue(Proc.PARAM_LIST)); + String returns = new String(record.getValue(Proc.RETURNS)); + + result.add(new MySQLRoutineDefinition(schema, name, comment, params, returns)); + } + + return result; + } + + @Override + protected List getPackages0() throws SQLException { + List result = new ArrayList(); + return result; + } + + @Override + public Factory create() { + return new MySQLFactory(getConnection()); + } +} diff --git a/jOOQ-meta/src/main/java/org/jooq/util/mysql/MySQLRoutineDefinition.java b/jOOQ-meta/src/main/java/org/jooq/util/mysql/MySQLRoutineDefinition.java new file mode 100644 index 00000000000..285a05c5672 --- /dev/null +++ b/jOOQ-meta/src/main/java/org/jooq/util/mysql/MySQLRoutineDefinition.java @@ -0,0 +1,118 @@ +/** + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com + * All rights reserved. + * + * This software is licensed to you under the Apache License, Version 2.0 + * (the "License"); You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * 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 "jOOQ" 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 COPYRIGHT OWNER 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. + */ + +package org.jooq.util.mysql; + +import java.sql.SQLException; +import java.util.regex.Matcher; + +import org.jooq.tools.StringUtils; +import org.jooq.util.AbstractRoutineDefinition; +import org.jooq.util.DataTypeDefinition; +import org.jooq.util.DefaultDataTypeDefinition; +import org.jooq.util.DefaultParameterDefinition; +import org.jooq.util.InOutDefinition; +import org.jooq.util.ParameterDefinition; +import org.jooq.util.SchemaDefinition; + +/** + * @author Lukas Eder + */ +public class MySQLRoutineDefinition extends AbstractRoutineDefinition { + + private final String params; + private final String returns; + + public MySQLRoutineDefinition(SchemaDefinition schema, String name, String comment, String params, String returns) { + super(schema, null, name, comment, null); + + this.params = params; + this.returns = returns; + } + + @Override + protected void init0() throws SQLException { + // [#738] Avoid matching commas that appear in types, for instance DECIMAL(2, 1) + String[] split = params.split(",(?!\\s*\\d+\\s*\\))"); + + Matcher matcher = TYPE_PATTERN.matcher(returns); + if (matcher.find()) { + addParameter(InOutDefinition.RETURN, createParameter(matcher, 0, -1, "RETURN_VALUE")); + } + + for (int i = 0; i < split.length; i++) { + String param = split[i]; + + // TODO [#742] : Use the INFORMATION_SCHEMA.PARAMETERS dictionary view instead. + // It's much more reliable, than mysql.proc pattern matching... + + param = param.trim(); + matcher = PARAMETER_PATTERN.matcher(param); + while (matcher.find()) { + InOutDefinition inOut = InOutDefinition.getFromString(matcher.group(2)); + addParameter(inOut, createParameter(matcher, 3, i + 1)); + } + } + } + + private ParameterDefinition createParameter(Matcher matcher, int group, int columnIndex) { + return createParameter(matcher, group, columnIndex, matcher.group(group)); + } + + private ParameterDefinition createParameter(Matcher matcher, int group, int columnIndex, String paramName) { + String paramType = matcher.group(group + 1); + + Number precision = 0; + Number scale = 0; + + if (!StringUtils.isBlank(matcher.group(group + 2))) { + precision = Integer.valueOf(matcher.group(group + 2)); + } + if (!StringUtils.isBlank(matcher.group(group + 3))) { + scale = Integer.valueOf(matcher.group(group + 3)); + } + + DataTypeDefinition type = new DefaultDataTypeDefinition( + getDatabase(), + getSchema(), + paramType, + precision, + precision, + scale); + + return new DefaultParameterDefinition(this, paramName, columnIndex, type); + } +} diff --git a/jOOQ-meta/src/main/java/org/jooq/util/mysql/MySQLTableDefinition.java b/jOOQ-meta/src/main/java/org/jooq/util/mysql/MySQLTableDefinition.java new file mode 100644 index 00000000000..202d8953677 --- /dev/null +++ b/jOOQ-meta/src/main/java/org/jooq/util/mysql/MySQLTableDefinition.java @@ -0,0 +1,122 @@ +/** + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com + * All rights reserved. + * + * This software is licensed to you under the Apache License, Version 2.0 + * (the "License"); You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * 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 "jOOQ" 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 COPYRIGHT OWNER 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. + */ + +package org.jooq.util.mysql; + +import static java.util.Arrays.asList; +import static org.jooq.util.mysql.information_schema.tables.Columns.COLUMNS; +import static org.jooq.util.mysql.information_schema.tables.Columns.ORDINAL_POSITION; +import static org.jooq.util.mysql.information_schema.tables.Columns.TABLE_NAME; +import static org.jooq.util.mysql.information_schema.tables.Columns.TABLE_SCHEMA; + +import java.sql.SQLException; +import java.util.ArrayList; +import java.util.List; + +import org.jooq.Record; +import org.jooq.util.AbstractTableDefinition; +import org.jooq.util.ColumnDefinition; +import org.jooq.util.DataTypeDefinition; +import org.jooq.util.DefaultColumnDefinition; +import org.jooq.util.DefaultDataTypeDefinition; +import org.jooq.util.SchemaDefinition; +import org.jooq.util.mysql.information_schema.tables.Columns; + +/** + * @author Lukas Eder + */ +public class MySQLTableDefinition extends AbstractTableDefinition { + + public MySQLTableDefinition(SchemaDefinition schema, String name, String comment) { + super(schema, name, comment); + } + + @Override + public List getElements0() throws SQLException { + List result = new ArrayList(); + + for (Record record : create().select( + Columns.ORDINAL_POSITION, + Columns.COLUMN_NAME, + Columns.COLUMN_COMMENT, + Columns.COLUMN_TYPE, + Columns.DATA_TYPE, + Columns.IS_NULLABLE, + Columns.CHARACTER_MAXIMUM_LENGTH, + Columns.NUMERIC_PRECISION, + Columns.NUMERIC_SCALE, + Columns.EXTRA) + .from(COLUMNS) + .where(TABLE_SCHEMA.equal(getSchema().getName())) + .and(TABLE_NAME.equal(getName())) + .orderBy(ORDINAL_POSITION) + .fetch()) { + + String dataType = record.getValue(Columns.DATA_TYPE); + + // [#519] Some types have unsigned versions + if (getDatabase().supportsUnsignedTypes()) { + if (asList("tinyint", "smallint", "mediumint", "int", "bigint").contains(dataType.toLowerCase())) { + if (record.getValue(Columns.COLUMN_TYPE).toLowerCase().contains("unsigned")) { + dataType += "unsigned"; + } + } + } + + DataTypeDefinition type = new DefaultDataTypeDefinition( + getDatabase(), + getSchema(), + dataType, + record.getValue(Columns.CHARACTER_MAXIMUM_LENGTH), + record.getValue(Columns.NUMERIC_PRECISION), + record.getValue(Columns.NUMERIC_SCALE), + getName() + "_" + record.getValue(Columns.COLUMN_NAME)); + + ColumnDefinition column = new DefaultColumnDefinition( + getDatabase().getTable(getSchema(), getName()), + record.getValue(Columns.COLUMN_NAME), + record.getValueAsInteger(Columns.ORDINAL_POSITION), + type, + record.getValue(Columns.IS_NULLABLE, boolean.class), + "auto_increment".equalsIgnoreCase(record.getValue(Columns.EXTRA)), + record.getValue(Columns.COLUMN_COMMENT)); + + result.add(column); + } + + return result; + } +} diff --git a/jOOQ-meta/src/main/java/org/jooq/util/mysql/information_schema/InformationSchema.java b/jOOQ-meta/src/main/java/org/jooq/util/mysql/information_schema/InformationSchema.java new file mode 100644 index 00000000000..5d00c2fb5a1 --- /dev/null +++ b/jOOQ-meta/src/main/java/org/jooq/util/mysql/information_schema/InformationSchema.java @@ -0,0 +1,36 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.util.mysql.information_schema; + +/** + * This class is generated by jOOQ. + */ +@javax.annotation.Generated(value = {"http://www.jooq.org", "2.0.6"}, + comments = "This class is generated by jOOQ") +public class InformationSchema extends org.jooq.impl.SchemaImpl { + + private static final long serialVersionUID = 1515994441; + + /** + * The singleton instance of information_schema + */ + public static final InformationSchema INFORMATION_SCHEMA = new InformationSchema(); + + /** + * No further instances allowed + */ + private InformationSchema() { + super("information_schema"); + } + + @Override + public final java.util.List> getTables() { + return java.util.Arrays.>asList( + org.jooq.util.mysql.information_schema.tables.Columns.COLUMNS, + org.jooq.util.mysql.information_schema.tables.KeyColumnUsage.KEY_COLUMN_USAGE, + org.jooq.util.mysql.information_schema.tables.ReferentialConstraints.REFERENTIAL_CONSTRAINTS, + org.jooq.util.mysql.information_schema.tables.Tables.TABLES, + org.jooq.util.mysql.information_schema.tables.TableConstraints.TABLE_CONSTRAINTS); + } +} diff --git a/jOOQ-meta/src/main/java/org/jooq/util/mysql/information_schema/InformationSchemaFactory.java b/jOOQ-meta/src/main/java/org/jooq/util/mysql/information_schema/InformationSchemaFactory.java new file mode 100644 index 00000000000..d7c6da09422 --- /dev/null +++ b/jOOQ-meta/src/main/java/org/jooq/util/mysql/information_schema/InformationSchemaFactory.java @@ -0,0 +1,33 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.util.mysql.information_schema; + +/** + * This class is generated by jOOQ. + */ +@javax.annotation.Generated(value = {"http://www.jooq.org", "2.0.6"}, + comments = "This class is generated by jOOQ") +public class InformationSchemaFactory extends org.jooq.util.mysql.MySQLFactory { + + private static final long serialVersionUID = -515696430; + + /** + * Create a factory with a connection + * + * @param connection The connection to use with objects created from this factory + */ + public InformationSchemaFactory(java.sql.Connection connection) { + super(connection); + } + + /** + * Create a factory with a connection and some settings + * + * @param connection The connection to use with objects created from this factory + * @param settings The settings to apply to objects created from this factory + */ + public InformationSchemaFactory(java.sql.Connection connection, org.jooq.conf.Settings settings) { + super(connection, settings); + } +} diff --git a/jOOQ-meta/src/main/java/org/jooq/util/mysql/information_schema/Tables.java b/jOOQ-meta/src/main/java/org/jooq/util/mysql/information_schema/Tables.java new file mode 100644 index 00000000000..4d964fa6d2a --- /dev/null +++ b/jOOQ-meta/src/main/java/org/jooq/util/mysql/information_schema/Tables.java @@ -0,0 +1,44 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.util.mysql.information_schema; + +/** + * This class is generated by jOOQ. + * + * Convenience access to all tables in information_schema + */ +@javax.annotation.Generated(value = {"http://www.jooq.org", "2.0.6"}, + comments = "This class is generated by jOOQ") +public final class Tables { + + /** + * The table information_schema.COLUMNS + */ + public static org.jooq.util.mysql.information_schema.tables.Columns COLUMNS = org.jooq.util.mysql.information_schema.tables.Columns.COLUMNS; + + /** + * The table information_schema.KEY_COLUMN_USAGE + */ + public static org.jooq.util.mysql.information_schema.tables.KeyColumnUsage KEY_COLUMN_USAGE = org.jooq.util.mysql.information_schema.tables.KeyColumnUsage.KEY_COLUMN_USAGE; + + /** + * The table information_schema.REFERENTIAL_CONSTRAINTS + */ + public static org.jooq.util.mysql.information_schema.tables.ReferentialConstraints REFERENTIAL_CONSTRAINTS = org.jooq.util.mysql.information_schema.tables.ReferentialConstraints.REFERENTIAL_CONSTRAINTS; + + /** + * The table information_schema.TABLES + */ + public static org.jooq.util.mysql.information_schema.tables.Tables TABLES = org.jooq.util.mysql.information_schema.tables.Tables.TABLES; + + /** + * The table information_schema.TABLE_CONSTRAINTS + */ + public static org.jooq.util.mysql.information_schema.tables.TableConstraints TABLE_CONSTRAINTS = org.jooq.util.mysql.information_schema.tables.TableConstraints.TABLE_CONSTRAINTS; + + /** + * No instances + */ + private Tables() {} +} diff --git a/jOOQ-meta/src/main/java/org/jooq/util/mysql/information_schema/tables/Columns.java b/jOOQ-meta/src/main/java/org/jooq/util/mysql/information_schema/tables/Columns.java new file mode 100644 index 00000000000..4ede6428870 --- /dev/null +++ b/jOOQ-meta/src/main/java/org/jooq/util/mysql/information_schema/tables/Columns.java @@ -0,0 +1,134 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.util.mysql.information_schema.tables; + +/** + * This class is generated by jOOQ. + */ +@javax.annotation.Generated(value = {"http://www.jooq.org", "2.0.6"}, + comments = "This class is generated by jOOQ") +public class Columns extends org.jooq.impl.TableImpl { + + private static final long serialVersionUID = -473450104; + + /** + * The singleton instance of information_schema.COLUMNS + */ + public static final org.jooq.util.mysql.information_schema.tables.Columns COLUMNS = new org.jooq.util.mysql.information_schema.tables.Columns(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.Record.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + */ + public static final org.jooq.TableField TABLE_CATALOG = createField("TABLE_CATALOG", org.jooq.impl.SQLDataType.VARCHAR, COLUMNS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField TABLE_SCHEMA = createField("TABLE_SCHEMA", org.jooq.impl.SQLDataType.VARCHAR, COLUMNS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField TABLE_NAME = createField("TABLE_NAME", org.jooq.impl.SQLDataType.VARCHAR, COLUMNS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField COLUMN_NAME = createField("COLUMN_NAME", org.jooq.impl.SQLDataType.VARCHAR, COLUMNS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField ORDINAL_POSITION = createField("ORDINAL_POSITION", org.jooq.impl.SQLDataType.BIGINTUNSIGNED, COLUMNS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField COLUMN_DEFAULT = createField("COLUMN_DEFAULT", org.jooq.impl.SQLDataType.CLOB, COLUMNS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField IS_NULLABLE = createField("IS_NULLABLE", org.jooq.impl.SQLDataType.VARCHAR, COLUMNS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField DATA_TYPE = createField("DATA_TYPE", org.jooq.impl.SQLDataType.VARCHAR, COLUMNS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField CHARACTER_MAXIMUM_LENGTH = createField("CHARACTER_MAXIMUM_LENGTH", org.jooq.impl.SQLDataType.BIGINTUNSIGNED, COLUMNS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField CHARACTER_OCTET_LENGTH = createField("CHARACTER_OCTET_LENGTH", org.jooq.impl.SQLDataType.BIGINTUNSIGNED, COLUMNS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField NUMERIC_PRECISION = createField("NUMERIC_PRECISION", org.jooq.impl.SQLDataType.BIGINTUNSIGNED, COLUMNS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField NUMERIC_SCALE = createField("NUMERIC_SCALE", org.jooq.impl.SQLDataType.BIGINTUNSIGNED, COLUMNS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField CHARACTER_SET_NAME = createField("CHARACTER_SET_NAME", org.jooq.impl.SQLDataType.VARCHAR, COLUMNS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField COLLATION_NAME = createField("COLLATION_NAME", org.jooq.impl.SQLDataType.VARCHAR, COLUMNS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField COLUMN_TYPE = createField("COLUMN_TYPE", org.jooq.impl.SQLDataType.CLOB, COLUMNS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField COLUMN_KEY = createField("COLUMN_KEY", org.jooq.impl.SQLDataType.VARCHAR, COLUMNS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField EXTRA = createField("EXTRA", org.jooq.impl.SQLDataType.VARCHAR, COLUMNS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField PRIVILEGES = createField("PRIVILEGES", org.jooq.impl.SQLDataType.VARCHAR, COLUMNS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField COLUMN_COMMENT = createField("COLUMN_COMMENT", org.jooq.impl.SQLDataType.VARCHAR, COLUMNS); + + /** + * No further instances allowed + */ + private Columns() { + super("COLUMNS", org.jooq.util.mysql.information_schema.InformationSchema.INFORMATION_SCHEMA); + } +} diff --git a/jOOQ-meta/src/main/java/org/jooq/util/mysql/information_schema/tables/KeyColumnUsage.java b/jOOQ-meta/src/main/java/org/jooq/util/mysql/information_schema/tables/KeyColumnUsage.java new file mode 100644 index 00000000000..d8ae2c83b35 --- /dev/null +++ b/jOOQ-meta/src/main/java/org/jooq/util/mysql/information_schema/tables/KeyColumnUsage.java @@ -0,0 +1,99 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.util.mysql.information_schema.tables; + +/** + * This class is generated by jOOQ. + */ +@javax.annotation.Generated(value = {"http://www.jooq.org", "2.0.6"}, + comments = "This class is generated by jOOQ") +public class KeyColumnUsage extends org.jooq.impl.TableImpl { + + private static final long serialVersionUID = -1224002655; + + /** + * The singleton instance of information_schema.KEY_COLUMN_USAGE + */ + public static final org.jooq.util.mysql.information_schema.tables.KeyColumnUsage KEY_COLUMN_USAGE = new org.jooq.util.mysql.information_schema.tables.KeyColumnUsage(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.Record.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + */ + public static final org.jooq.TableField CONSTRAINT_CATALOG = createField("CONSTRAINT_CATALOG", org.jooq.impl.SQLDataType.VARCHAR, KEY_COLUMN_USAGE); + + /** + * An uncommented item + */ + public static final org.jooq.TableField CONSTRAINT_SCHEMA = createField("CONSTRAINT_SCHEMA", org.jooq.impl.SQLDataType.VARCHAR, KEY_COLUMN_USAGE); + + /** + * An uncommented item + */ + public static final org.jooq.TableField CONSTRAINT_NAME = createField("CONSTRAINT_NAME", org.jooq.impl.SQLDataType.VARCHAR, KEY_COLUMN_USAGE); + + /** + * An uncommented item + */ + public static final org.jooq.TableField TABLE_CATALOG = createField("TABLE_CATALOG", org.jooq.impl.SQLDataType.VARCHAR, KEY_COLUMN_USAGE); + + /** + * An uncommented item + */ + public static final org.jooq.TableField TABLE_SCHEMA = createField("TABLE_SCHEMA", org.jooq.impl.SQLDataType.VARCHAR, KEY_COLUMN_USAGE); + + /** + * An uncommented item + */ + public static final org.jooq.TableField TABLE_NAME = createField("TABLE_NAME", org.jooq.impl.SQLDataType.VARCHAR, KEY_COLUMN_USAGE); + + /** + * An uncommented item + */ + public static final org.jooq.TableField COLUMN_NAME = createField("COLUMN_NAME", org.jooq.impl.SQLDataType.VARCHAR, KEY_COLUMN_USAGE); + + /** + * An uncommented item + */ + public static final org.jooq.TableField ORDINAL_POSITION = createField("ORDINAL_POSITION", org.jooq.impl.SQLDataType.BIGINT, KEY_COLUMN_USAGE); + + /** + * An uncommented item + */ + public static final org.jooq.TableField POSITION_IN_UNIQUE_CONSTRAINT = createField("POSITION_IN_UNIQUE_CONSTRAINT", org.jooq.impl.SQLDataType.BIGINT, KEY_COLUMN_USAGE); + + /** + * An uncommented item + */ + public static final org.jooq.TableField REFERENCED_TABLE_SCHEMA = createField("REFERENCED_TABLE_SCHEMA", org.jooq.impl.SQLDataType.VARCHAR, KEY_COLUMN_USAGE); + + /** + * An uncommented item + */ + public static final org.jooq.TableField REFERENCED_TABLE_NAME = createField("REFERENCED_TABLE_NAME", org.jooq.impl.SQLDataType.VARCHAR, KEY_COLUMN_USAGE); + + /** + * An uncommented item + */ + public static final org.jooq.TableField REFERENCED_COLUMN_NAME = createField("REFERENCED_COLUMN_NAME", org.jooq.impl.SQLDataType.VARCHAR, KEY_COLUMN_USAGE); + + /** + * No further instances allowed + */ + private KeyColumnUsage() { + super("KEY_COLUMN_USAGE", org.jooq.util.mysql.information_schema.InformationSchema.INFORMATION_SCHEMA); + } +} diff --git a/jOOQ-meta/src/main/java/org/jooq/util/mysql/information_schema/tables/ReferentialConstraints.java b/jOOQ-meta/src/main/java/org/jooq/util/mysql/information_schema/tables/ReferentialConstraints.java new file mode 100644 index 00000000000..061ae2e3de6 --- /dev/null +++ b/jOOQ-meta/src/main/java/org/jooq/util/mysql/information_schema/tables/ReferentialConstraints.java @@ -0,0 +1,94 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.util.mysql.information_schema.tables; + +/** + * This class is generated by jOOQ. + */ +@javax.annotation.Generated(value = {"http://www.jooq.org", "2.0.6"}, + comments = "This class is generated by jOOQ") +public class ReferentialConstraints extends org.jooq.impl.TableImpl { + + private static final long serialVersionUID = 55957718; + + /** + * The singleton instance of information_schema.REFERENTIAL_CONSTRAINTS + */ + public static final org.jooq.util.mysql.information_schema.tables.ReferentialConstraints REFERENTIAL_CONSTRAINTS = new org.jooq.util.mysql.information_schema.tables.ReferentialConstraints(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.Record.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + */ + public static final org.jooq.TableField CONSTRAINT_CATALOG = createField("CONSTRAINT_CATALOG", org.jooq.impl.SQLDataType.VARCHAR, REFERENTIAL_CONSTRAINTS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField CONSTRAINT_SCHEMA = createField("CONSTRAINT_SCHEMA", org.jooq.impl.SQLDataType.VARCHAR, REFERENTIAL_CONSTRAINTS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField CONSTRAINT_NAME = createField("CONSTRAINT_NAME", org.jooq.impl.SQLDataType.VARCHAR, REFERENTIAL_CONSTRAINTS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField UNIQUE_CONSTRAINT_CATALOG = createField("UNIQUE_CONSTRAINT_CATALOG", org.jooq.impl.SQLDataType.VARCHAR, REFERENTIAL_CONSTRAINTS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField UNIQUE_CONSTRAINT_SCHEMA = createField("UNIQUE_CONSTRAINT_SCHEMA", org.jooq.impl.SQLDataType.VARCHAR, REFERENTIAL_CONSTRAINTS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField UNIQUE_CONSTRAINT_NAME = createField("UNIQUE_CONSTRAINT_NAME", org.jooq.impl.SQLDataType.VARCHAR, REFERENTIAL_CONSTRAINTS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField MATCH_OPTION = createField("MATCH_OPTION", org.jooq.impl.SQLDataType.VARCHAR, REFERENTIAL_CONSTRAINTS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField UPDATE_RULE = createField("UPDATE_RULE", org.jooq.impl.SQLDataType.VARCHAR, REFERENTIAL_CONSTRAINTS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField DELETE_RULE = createField("DELETE_RULE", org.jooq.impl.SQLDataType.VARCHAR, REFERENTIAL_CONSTRAINTS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField TABLE_NAME = createField("TABLE_NAME", org.jooq.impl.SQLDataType.VARCHAR, REFERENTIAL_CONSTRAINTS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField REFERENCED_TABLE_NAME = createField("REFERENCED_TABLE_NAME", org.jooq.impl.SQLDataType.VARCHAR, REFERENTIAL_CONSTRAINTS); + + /** + * No further instances allowed + */ + private ReferentialConstraints() { + super("REFERENTIAL_CONSTRAINTS", org.jooq.util.mysql.information_schema.InformationSchema.INFORMATION_SCHEMA); + } +} diff --git a/jOOQ-meta/src/main/java/org/jooq/util/mysql/information_schema/tables/TableConstraints.java b/jOOQ-meta/src/main/java/org/jooq/util/mysql/information_schema/tables/TableConstraints.java new file mode 100644 index 00000000000..c86438dadf1 --- /dev/null +++ b/jOOQ-meta/src/main/java/org/jooq/util/mysql/information_schema/tables/TableConstraints.java @@ -0,0 +1,69 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.util.mysql.information_schema.tables; + +/** + * This class is generated by jOOQ. + */ +@javax.annotation.Generated(value = {"http://www.jooq.org", "2.0.6"}, + comments = "This class is generated by jOOQ") +public class TableConstraints extends org.jooq.impl.TableImpl { + + private static final long serialVersionUID = -1287073714; + + /** + * The singleton instance of information_schema.TABLE_CONSTRAINTS + */ + public static final org.jooq.util.mysql.information_schema.tables.TableConstraints TABLE_CONSTRAINTS = new org.jooq.util.mysql.information_schema.tables.TableConstraints(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.Record.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + */ + public static final org.jooq.TableField CONSTRAINT_CATALOG = createField("CONSTRAINT_CATALOG", org.jooq.impl.SQLDataType.VARCHAR, TABLE_CONSTRAINTS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField CONSTRAINT_SCHEMA = createField("CONSTRAINT_SCHEMA", org.jooq.impl.SQLDataType.VARCHAR, TABLE_CONSTRAINTS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField CONSTRAINT_NAME = createField("CONSTRAINT_NAME", org.jooq.impl.SQLDataType.VARCHAR, TABLE_CONSTRAINTS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField TABLE_SCHEMA = createField("TABLE_SCHEMA", org.jooq.impl.SQLDataType.VARCHAR, TABLE_CONSTRAINTS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField TABLE_NAME = createField("TABLE_NAME", org.jooq.impl.SQLDataType.VARCHAR, TABLE_CONSTRAINTS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField CONSTRAINT_TYPE = createField("CONSTRAINT_TYPE", org.jooq.impl.SQLDataType.VARCHAR, TABLE_CONSTRAINTS); + + /** + * No further instances allowed + */ + private TableConstraints() { + super("TABLE_CONSTRAINTS", org.jooq.util.mysql.information_schema.InformationSchema.INFORMATION_SCHEMA); + } +} diff --git a/jOOQ-meta/src/main/java/org/jooq/util/mysql/information_schema/tables/Tables.java b/jOOQ-meta/src/main/java/org/jooq/util/mysql/information_schema/tables/Tables.java new file mode 100644 index 00000000000..1259206282f --- /dev/null +++ b/jOOQ-meta/src/main/java/org/jooq/util/mysql/information_schema/tables/Tables.java @@ -0,0 +1,144 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.util.mysql.information_schema.tables; + +/** + * This class is generated by jOOQ. + */ +@javax.annotation.Generated(value = {"http://www.jooq.org", "2.0.6"}, + comments = "This class is generated by jOOQ") +public class Tables extends org.jooq.impl.TableImpl { + + private static final long serialVersionUID = -722007800; + + /** + * The singleton instance of information_schema.TABLES + */ + public static final org.jooq.util.mysql.information_schema.tables.Tables TABLES = new org.jooq.util.mysql.information_schema.tables.Tables(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.Record.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + */ + public static final org.jooq.TableField TABLE_CATALOG = createField("TABLE_CATALOG", org.jooq.impl.SQLDataType.VARCHAR, TABLES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField TABLE_SCHEMA = createField("TABLE_SCHEMA", org.jooq.impl.SQLDataType.VARCHAR, TABLES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField TABLE_NAME = createField("TABLE_NAME", org.jooq.impl.SQLDataType.VARCHAR, TABLES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField TABLE_TYPE = createField("TABLE_TYPE", org.jooq.impl.SQLDataType.VARCHAR, TABLES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField ENGINE = createField("ENGINE", org.jooq.impl.SQLDataType.VARCHAR, TABLES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField VERSION = createField("VERSION", org.jooq.impl.SQLDataType.BIGINTUNSIGNED, TABLES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField ROW_FORMAT = createField("ROW_FORMAT", org.jooq.impl.SQLDataType.VARCHAR, TABLES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField TABLE_ROWS = createField("TABLE_ROWS", org.jooq.impl.SQLDataType.BIGINTUNSIGNED, TABLES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField AVG_ROW_LENGTH = createField("AVG_ROW_LENGTH", org.jooq.impl.SQLDataType.BIGINTUNSIGNED, TABLES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField DATA_LENGTH = createField("DATA_LENGTH", org.jooq.impl.SQLDataType.BIGINTUNSIGNED, TABLES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField MAX_DATA_LENGTH = createField("MAX_DATA_LENGTH", org.jooq.impl.SQLDataType.BIGINTUNSIGNED, TABLES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField INDEX_LENGTH = createField("INDEX_LENGTH", org.jooq.impl.SQLDataType.BIGINTUNSIGNED, TABLES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField DATA_FREE = createField("DATA_FREE", org.jooq.impl.SQLDataType.BIGINTUNSIGNED, TABLES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField AUTO_INCREMENT = createField("AUTO_INCREMENT", org.jooq.impl.SQLDataType.BIGINTUNSIGNED, TABLES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField CREATE_TIME = createField("CREATE_TIME", org.jooq.impl.SQLDataType.TIMESTAMP, TABLES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField UPDATE_TIME = createField("UPDATE_TIME", org.jooq.impl.SQLDataType.TIMESTAMP, TABLES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField CHECK_TIME = createField("CHECK_TIME", org.jooq.impl.SQLDataType.TIMESTAMP, TABLES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField TABLE_COLLATION = createField("TABLE_COLLATION", org.jooq.impl.SQLDataType.VARCHAR, TABLES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField CHECKSUM = createField("CHECKSUM", org.jooq.impl.SQLDataType.BIGINTUNSIGNED, TABLES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField CREATE_OPTIONS = createField("CREATE_OPTIONS", org.jooq.impl.SQLDataType.VARCHAR, TABLES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField TABLE_COMMENT = createField("TABLE_COMMENT", org.jooq.impl.SQLDataType.VARCHAR, TABLES); + + /** + * No further instances allowed + */ + private Tables() { + super("TABLES", org.jooq.util.mysql.information_schema.InformationSchema.INFORMATION_SCHEMA); + } +} diff --git a/jOOQ-meta/src/main/java/org/jooq/util/mysql/mysql/Mysql.java b/jOOQ-meta/src/main/java/org/jooq/util/mysql/mysql/Mysql.java new file mode 100644 index 00000000000..b16c4031399 --- /dev/null +++ b/jOOQ-meta/src/main/java/org/jooq/util/mysql/mysql/Mysql.java @@ -0,0 +1,33 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.util.mysql.mysql; + +/** + * This class is generated by jOOQ. + */ +@javax.annotation.Generated(value = {"http://www.jooq.org", "2.0.6"}, + comments = "This class is generated by jOOQ") +public class Mysql extends org.jooq.impl.SchemaImpl { + + private static final long serialVersionUID = -1230166735; + + /** + * The singleton instance of mysql + */ + public static final Mysql MYSQL = new Mysql(); + + /** + * No further instances allowed + */ + private Mysql() { + super("mysql"); + } + + @Override + public final java.util.List> getTables() { + return java.util.Arrays.>asList( + org.jooq.util.mysql.mysql.tables.Proc.PROC, + org.jooq.util.mysql.mysql.tables.ProcsPriv.PROCS_PRIV); + } +} diff --git a/jOOQ-meta/src/main/java/org/jooq/util/mysql/mysql/MysqlFactory.java b/jOOQ-meta/src/main/java/org/jooq/util/mysql/mysql/MysqlFactory.java new file mode 100644 index 00000000000..69b4c9423df --- /dev/null +++ b/jOOQ-meta/src/main/java/org/jooq/util/mysql/mysql/MysqlFactory.java @@ -0,0 +1,33 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.util.mysql.mysql; + +/** + * This class is generated by jOOQ. + */ +@javax.annotation.Generated(value = {"http://www.jooq.org", "2.0.6"}, + comments = "This class is generated by jOOQ") +public class MysqlFactory extends org.jooq.util.mysql.MySQLFactory { + + private static final long serialVersionUID = 1751227421; + + /** + * Create a factory with a connection + * + * @param connection The connection to use with objects created from this factory + */ + public MysqlFactory(java.sql.Connection connection) { + super(connection); + } + + /** + * Create a factory with a connection and some settings + * + * @param connection The connection to use with objects created from this factory + * @param settings The settings to apply to objects created from this factory + */ + public MysqlFactory(java.sql.Connection connection, org.jooq.conf.Settings settings) { + super(connection, settings); + } +} diff --git a/jOOQ-meta/src/main/java/org/jooq/util/mysql/mysql/Tables.java b/jOOQ-meta/src/main/java/org/jooq/util/mysql/mysql/Tables.java new file mode 100644 index 00000000000..c234b35ebe9 --- /dev/null +++ b/jOOQ-meta/src/main/java/org/jooq/util/mysql/mysql/Tables.java @@ -0,0 +1,29 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.util.mysql.mysql; + +/** + * This class is generated by jOOQ. + * + * Convenience access to all tables in mysql + */ +@javax.annotation.Generated(value = {"http://www.jooq.org", "2.0.6"}, + comments = "This class is generated by jOOQ") +public final class Tables { + + /** + * Stored Procedures + */ + public static org.jooq.util.mysql.mysql.tables.Proc PROC = org.jooq.util.mysql.mysql.tables.Proc.PROC; + + /** + * Procedure privileges + */ + public static org.jooq.util.mysql.mysql.tables.ProcsPriv PROCS_PRIV = org.jooq.util.mysql.mysql.tables.ProcsPriv.PROCS_PRIV; + + /** + * No instances + */ + private Tables() {} +} diff --git a/jOOQ-meta/src/main/java/org/jooq/util/mysql/mysql/enums/ProcIsDeterministic.java b/jOOQ-meta/src/main/java/org/jooq/util/mysql/mysql/enums/ProcIsDeterministic.java new file mode 100644 index 00000000000..f73b0ea1601 --- /dev/null +++ b/jOOQ-meta/src/main/java/org/jooq/util/mysql/mysql/enums/ProcIsDeterministic.java @@ -0,0 +1,33 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.util.mysql.mysql.enums; + +/** + * This class is generated by jOOQ. + */ +@javax.annotation.Generated(value = {"http://www.jooq.org", "2.0.6"}, + comments = "This class is generated by jOOQ") +public enum ProcIsDeterministic implements org.jooq.EnumType { + YES("YES"), + + NO("NO"), + + ; + + private final java.lang.String literal; + + private ProcIsDeterministic(java.lang.String literal) { + this.literal = literal; + } + + @Override + public java.lang.String getName() { + return "proc_is_deterministic"; + } + + @Override + public java.lang.String getLiteral() { + return literal; + } +} diff --git a/jOOQ-meta/src/main/java/org/jooq/util/mysql/mysql/enums/ProcLanguage.java b/jOOQ-meta/src/main/java/org/jooq/util/mysql/mysql/enums/ProcLanguage.java new file mode 100644 index 00000000000..1ff2d453b64 --- /dev/null +++ b/jOOQ-meta/src/main/java/org/jooq/util/mysql/mysql/enums/ProcLanguage.java @@ -0,0 +1,31 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.util.mysql.mysql.enums; + +/** + * This class is generated by jOOQ. + */ +@javax.annotation.Generated(value = {"http://www.jooq.org", "2.0.6"}, + comments = "This class is generated by jOOQ") +public enum ProcLanguage implements org.jooq.EnumType { + SQL("SQL"), + + ; + + private final java.lang.String literal; + + private ProcLanguage(java.lang.String literal) { + this.literal = literal; + } + + @Override + public java.lang.String getName() { + return "proc_language"; + } + + @Override + public java.lang.String getLiteral() { + return literal; + } +} diff --git a/jOOQ-meta/src/main/java/org/jooq/util/mysql/mysql/enums/ProcSecurityType.java b/jOOQ-meta/src/main/java/org/jooq/util/mysql/mysql/enums/ProcSecurityType.java new file mode 100644 index 00000000000..06384f3d74b --- /dev/null +++ b/jOOQ-meta/src/main/java/org/jooq/util/mysql/mysql/enums/ProcSecurityType.java @@ -0,0 +1,33 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.util.mysql.mysql.enums; + +/** + * This class is generated by jOOQ. + */ +@javax.annotation.Generated(value = {"http://www.jooq.org", "2.0.6"}, + comments = "This class is generated by jOOQ") +public enum ProcSecurityType implements org.jooq.EnumType { + INVOKER("INVOKER"), + + DEFINER("DEFINER"), + + ; + + private final java.lang.String literal; + + private ProcSecurityType(java.lang.String literal) { + this.literal = literal; + } + + @Override + public java.lang.String getName() { + return "proc_security_type"; + } + + @Override + public java.lang.String getLiteral() { + return literal; + } +} diff --git a/jOOQ-meta/src/main/java/org/jooq/util/mysql/mysql/enums/ProcSqlDataAccess.java b/jOOQ-meta/src/main/java/org/jooq/util/mysql/mysql/enums/ProcSqlDataAccess.java new file mode 100644 index 00000000000..f1e92d98fe1 --- /dev/null +++ b/jOOQ-meta/src/main/java/org/jooq/util/mysql/mysql/enums/ProcSqlDataAccess.java @@ -0,0 +1,37 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.util.mysql.mysql.enums; + +/** + * This class is generated by jOOQ. + */ +@javax.annotation.Generated(value = {"http://www.jooq.org", "2.0.6"}, + comments = "This class is generated by jOOQ") +public enum ProcSqlDataAccess implements org.jooq.EnumType { + CONTAINS_SQL("CONTAINS_SQL"), + + NO_SQL("NO_SQL"), + + READS_SQL_DATA("READS_SQL_DATA"), + + MODIFIES_SQL_DATA("MODIFIES_SQL_DATA"), + + ; + + private final java.lang.String literal; + + private ProcSqlDataAccess(java.lang.String literal) { + this.literal = literal; + } + + @Override + public java.lang.String getName() { + return "proc_sql_data_access"; + } + + @Override + public java.lang.String getLiteral() { + return literal; + } +} diff --git a/jOOQ-meta/src/main/java/org/jooq/util/mysql/mysql/enums/ProcType.java b/jOOQ-meta/src/main/java/org/jooq/util/mysql/mysql/enums/ProcType.java new file mode 100644 index 00000000000..43c98ae0e85 --- /dev/null +++ b/jOOQ-meta/src/main/java/org/jooq/util/mysql/mysql/enums/ProcType.java @@ -0,0 +1,33 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.util.mysql.mysql.enums; + +/** + * This class is generated by jOOQ. + */ +@javax.annotation.Generated(value = {"http://www.jooq.org", "2.0.6"}, + comments = "This class is generated by jOOQ") +public enum ProcType implements org.jooq.EnumType { + FUNCTION("FUNCTION"), + + PROCEDURE("PROCEDURE"), + + ; + + private final java.lang.String literal; + + private ProcType(java.lang.String literal) { + this.literal = literal; + } + + @Override + public java.lang.String getName() { + return "proc_type"; + } + + @Override + public java.lang.String getLiteral() { + return literal; + } +} diff --git a/jOOQ-meta/src/main/java/org/jooq/util/mysql/mysql/enums/ProcsPrivRoutineType.java b/jOOQ-meta/src/main/java/org/jooq/util/mysql/mysql/enums/ProcsPrivRoutineType.java new file mode 100644 index 00000000000..7d0b83b2457 --- /dev/null +++ b/jOOQ-meta/src/main/java/org/jooq/util/mysql/mysql/enums/ProcsPrivRoutineType.java @@ -0,0 +1,33 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.util.mysql.mysql.enums; + +/** + * This class is generated by jOOQ. + */ +@javax.annotation.Generated(value = {"http://www.jooq.org", "2.0.6"}, + comments = "This class is generated by jOOQ") +public enum ProcsPrivRoutineType implements org.jooq.EnumType { + FUNCTION("FUNCTION"), + + PROCEDURE("PROCEDURE"), + + ; + + private final java.lang.String literal; + + private ProcsPrivRoutineType(java.lang.String literal) { + this.literal = literal; + } + + @Override + public java.lang.String getName() { + return "procs_priv_Routine_type"; + } + + @Override + public java.lang.String getLiteral() { + return literal; + } +} diff --git a/jOOQ-meta/src/main/java/org/jooq/util/mysql/mysql/tables/Proc.java b/jOOQ-meta/src/main/java/org/jooq/util/mysql/mysql/tables/Proc.java new file mode 100644 index 00000000000..034e9535292 --- /dev/null +++ b/jOOQ-meta/src/main/java/org/jooq/util/mysql/mysql/tables/Proc.java @@ -0,0 +1,147 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.util.mysql.mysql.tables; + +/** + * This class is generated by jOOQ. + * + * Stored Procedures + */ +@javax.annotation.Generated(value = {"http://www.jooq.org", "2.0.6"}, + comments = "This class is generated by jOOQ") +public class Proc extends org.jooq.impl.TableImpl { + + private static final long serialVersionUID = -1906153041; + + /** + * The singleton instance of mysql.proc + */ + public static final org.jooq.util.mysql.mysql.tables.Proc PROC = new org.jooq.util.mysql.mysql.tables.Proc(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.Record.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public static final org.jooq.TableField DB = createField("db", org.jooq.impl.SQLDataType.CHAR, PROC); + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public static final org.jooq.TableField NAME = createField("name", org.jooq.impl.SQLDataType.CHAR, PROC); + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public static final org.jooq.TableField TYPE = createField("type", org.jooq.util.mysql.MySQLDataType.VARCHAR.asEnumDataType(org.jooq.util.mysql.mysql.enums.ProcType.class), PROC); + + /** + * An uncommented item + */ + public static final org.jooq.TableField SPECIFIC_NAME = createField("specific_name", org.jooq.impl.SQLDataType.CHAR, PROC); + + /** + * An uncommented item + */ + public static final org.jooq.TableField LANGUAGE = createField("language", org.jooq.util.mysql.MySQLDataType.VARCHAR.asEnumDataType(org.jooq.util.mysql.mysql.enums.ProcLanguage.class), PROC); + + /** + * An uncommented item + */ + public static final org.jooq.TableField SQL_DATA_ACCESS = createField("sql_data_access", org.jooq.util.mysql.MySQLDataType.VARCHAR.asEnumDataType(org.jooq.util.mysql.mysql.enums.ProcSqlDataAccess.class), PROC); + + /** + * An uncommented item + */ + public static final org.jooq.TableField IS_DETERMINISTIC = createField("is_deterministic", org.jooq.util.mysql.MySQLDataType.VARCHAR.asEnumDataType(org.jooq.util.mysql.mysql.enums.ProcIsDeterministic.class), PROC); + + /** + * An uncommented item + */ + public static final org.jooq.TableField SECURITY_TYPE = createField("security_type", org.jooq.util.mysql.MySQLDataType.VARCHAR.asEnumDataType(org.jooq.util.mysql.mysql.enums.ProcSecurityType.class), PROC); + + /** + * An uncommented item + */ + public static final org.jooq.TableField PARAM_LIST = createField("param_list", org.jooq.impl.SQLDataType.BLOB, PROC); + + /** + * An uncommented item + */ + public static final org.jooq.TableField RETURNS = createField("returns", org.jooq.impl.SQLDataType.BLOB, PROC); + + /** + * An uncommented item + */ + public static final org.jooq.TableField BODY = createField("body", org.jooq.impl.SQLDataType.BLOB, PROC); + + /** + * An uncommented item + */ + public static final org.jooq.TableField DEFINER = createField("definer", org.jooq.impl.SQLDataType.CHAR, PROC); + + /** + * An uncommented item + */ + public static final org.jooq.TableField CREATED = createField("created", org.jooq.impl.SQLDataType.TIMESTAMP, PROC); + + /** + * An uncommented item + */ + public static final org.jooq.TableField MODIFIED = createField("modified", org.jooq.impl.SQLDataType.TIMESTAMP, PROC); + + /** + * An uncommented item + */ + public static final org.jooq.TableField SQL_MODE = createField("sql_mode", org.jooq.impl.SQLDataType.VARCHAR, PROC); + + /** + * An uncommented item + */ + public static final org.jooq.TableField COMMENT = createField("comment", org.jooq.impl.SQLDataType.CLOB, PROC); + + /** + * An uncommented item + */ + public static final org.jooq.TableField CHARACTER_SET_CLIENT = createField("character_set_client", org.jooq.impl.SQLDataType.CHAR, PROC); + + /** + * An uncommented item + */ + public static final org.jooq.TableField COLLATION_CONNECTION = createField("collation_connection", org.jooq.impl.SQLDataType.CHAR, PROC); + + /** + * An uncommented item + */ + public static final org.jooq.TableField DB_COLLATION = createField("db_collation", org.jooq.impl.SQLDataType.CHAR, PROC); + + /** + * An uncommented item + */ + public static final org.jooq.TableField BODY_UTF8 = createField("body_utf8", org.jooq.impl.SQLDataType.BLOB, PROC); + + /** + * No further instances allowed + */ + private Proc() { + super("proc", org.jooq.util.mysql.mysql.Mysql.MYSQL); + } +} diff --git a/jOOQ-meta/src/main/java/org/jooq/util/mysql/mysql/tables/ProcsPriv.java b/jOOQ-meta/src/main/java/org/jooq/util/mysql/mysql/tables/ProcsPriv.java new file mode 100644 index 00000000000..f7286f7bc73 --- /dev/null +++ b/jOOQ-meta/src/main/java/org/jooq/util/mysql/mysql/tables/ProcsPriv.java @@ -0,0 +1,91 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.util.mysql.mysql.tables; + +/** + * This class is generated by jOOQ. + * + * Procedure privileges + */ +@javax.annotation.Generated(value = {"http://www.jooq.org", "2.0.6"}, + comments = "This class is generated by jOOQ") +public class ProcsPriv extends org.jooq.impl.TableImpl { + + private static final long serialVersionUID = 692012295; + + /** + * The singleton instance of mysql.procs_priv + */ + public static final org.jooq.util.mysql.mysql.tables.ProcsPriv PROCS_PRIV = new org.jooq.util.mysql.mysql.tables.ProcsPriv(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.Record.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public static final org.jooq.TableField HOST = createField("Host", org.jooq.impl.SQLDataType.CHAR, PROCS_PRIV); + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public static final org.jooq.TableField DB = createField("Db", org.jooq.impl.SQLDataType.CHAR, PROCS_PRIV); + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public static final org.jooq.TableField USER = createField("User", org.jooq.impl.SQLDataType.CHAR, PROCS_PRIV); + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public static final org.jooq.TableField ROUTINE_NAME = createField("Routine_name", org.jooq.impl.SQLDataType.CHAR, PROCS_PRIV); + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public static final org.jooq.TableField ROUTINE_TYPE = createField("Routine_type", org.jooq.util.mysql.MySQLDataType.VARCHAR.asEnumDataType(org.jooq.util.mysql.mysql.enums.ProcsPrivRoutineType.class), PROCS_PRIV); + + /** + * An uncommented item + */ + public static final org.jooq.TableField GRANTOR = createField("Grantor", org.jooq.impl.SQLDataType.CHAR, PROCS_PRIV); + + /** + * An uncommented item + */ + public static final org.jooq.TableField PROC_PRIV = createField("Proc_priv", org.jooq.impl.SQLDataType.VARCHAR, PROCS_PRIV); + + /** + * An uncommented item + */ + public static final org.jooq.TableField TIMESTAMP = createField("Timestamp", org.jooq.impl.SQLDataType.TIMESTAMP, PROCS_PRIV); + + /** + * No further instances allowed + */ + private ProcsPriv() { + super("procs_priv", org.jooq.util.mysql.mysql.Mysql.MYSQL); + } +} diff --git a/jOOQ-meta/src/main/java/org/jooq/util/oracle/OracleDatabase.java b/jOOQ-meta/src/main/java/org/jooq/util/oracle/OracleDatabase.java new file mode 100644 index 00000000000..1199fca8a3e --- /dev/null +++ b/jOOQ-meta/src/main/java/org/jooq/util/oracle/OracleDatabase.java @@ -0,0 +1,376 @@ +/** + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com + * All rights reserved. + * + * This software is licensed to you under the Apache License, Version 2.0 + * (the "License"); You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * 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 "jOOQ" 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 COPYRIGHT OWNER 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. + */ + +package org.jooq.util.oracle; + +import static org.jooq.util.oracle.sys.Tables.ALL_COLL_TYPES; +import static org.jooq.util.oracle.sys.Tables.ALL_CONSTRAINTS; +import static org.jooq.util.oracle.sys.Tables.ALL_CONS_COLUMNS; +import static org.jooq.util.oracle.sys.Tables.ALL_OBJECTS; +import static org.jooq.util.oracle.sys.Tables.ALL_SEQUENCES; +import static org.jooq.util.oracle.sys.Tables.ALL_TAB_COMMENTS; +import static org.jooq.util.oracle.sys.Tables.ALL_TYPES; + +import java.math.BigDecimal; +import java.math.BigInteger; +import java.sql.SQLException; +import java.util.ArrayList; +import java.util.List; + +import org.jooq.Record; +import org.jooq.impl.Factory; +import org.jooq.util.AbstractDatabase; +import org.jooq.util.ArrayDefinition; +import org.jooq.util.ColumnDefinition; +import org.jooq.util.DataTypeDefinition; +import org.jooq.util.DefaultArrayDefinition; +import org.jooq.util.DefaultDataTypeDefinition; +import org.jooq.util.DefaultRelations; +import org.jooq.util.DefaultSequenceDefinition; +import org.jooq.util.EnumDefinition; +import org.jooq.util.PackageDefinition; +import org.jooq.util.RoutineDefinition; +import org.jooq.util.SchemaDefinition; +import org.jooq.util.SequenceDefinition; +import org.jooq.util.TableDefinition; +import org.jooq.util.UDTDefinition; +import org.jooq.util.oracle.sys.SysFactory; + +/** + * @author Lukas Eder + */ +public class OracleDatabase extends AbstractDatabase { + + /** + * {@inheritDoc} + */ + @Override + protected void loadPrimaryKeys(DefaultRelations relations) throws SQLException { + for (Record record : fetchKeys("P")) { + SchemaDefinition schema = getSchema(record.getValue(ALL_CONS_COLUMNS.OWNER)); + String key = record.getValue(ALL_CONS_COLUMNS.CONSTRAINT_NAME); + String tableName = record.getValue(ALL_CONS_COLUMNS.TABLE_NAME); + String columnName = record.getValue(ALL_CONS_COLUMNS.COLUMN_NAME); + + TableDefinition table = getTable(schema, tableName); + if (table != null) { + relations.addPrimaryKey(key, table.getColumn(columnName)); + } + } + } + + /** + * {@inheritDoc} + */ + @Override + protected void loadUniqueKeys(DefaultRelations relations) throws SQLException { + for (Record record : fetchKeys("U")) { + SchemaDefinition schema = getSchema(record.getValue(ALL_CONS_COLUMNS.OWNER)); + String key = record.getValue(ALL_CONS_COLUMNS.CONSTRAINT_NAME); + String tableName = record.getValue(ALL_CONS_COLUMNS.TABLE_NAME); + String columnName = record.getValue(ALL_CONS_COLUMNS.COLUMN_NAME); + + TableDefinition table = getTable(schema, tableName); + if (table != null) { + relations.addUniqueKey(key, table.getColumn(columnName)); + } + } + } + + private List fetchKeys(String constraintType) { + return create().select( + ALL_CONS_COLUMNS.OWNER, + ALL_CONS_COLUMNS.CONSTRAINT_NAME, + ALL_CONS_COLUMNS.TABLE_NAME, + ALL_CONS_COLUMNS.COLUMN_NAME) + .from(ALL_CONS_COLUMNS + .join(ALL_CONSTRAINTS) + .on(ALL_CONS_COLUMNS.OWNER.equal(ALL_CONSTRAINTS.OWNER)) + .and(ALL_CONS_COLUMNS.CONSTRAINT_NAME.equal(ALL_CONSTRAINTS.CONSTRAINT_NAME))) + .where(ALL_CONSTRAINTS.CONSTRAINT_TYPE.equal(constraintType) + .and(ALL_CONSTRAINTS.CONSTRAINT_NAME.notLike("BIN$%")) + .and(ALL_CONS_COLUMNS.OWNER.in(getInputSchemata()))) + .orderBy( + ALL_CONS_COLUMNS.OWNER, + ALL_CONS_COLUMNS.CONSTRAINT_NAME, + ALL_CONS_COLUMNS.POSITION) + .fetch(); + } + + /** + * {@inheritDoc} + */ + @Override + protected void loadForeignKeys(DefaultRelations relations) throws SQLException { + for (Record record : create().select( + ALL_CONS_COLUMNS.OWNER, + ALL_CONS_COLUMNS.CONSTRAINT_NAME, + ALL_CONS_COLUMNS.TABLE_NAME, + ALL_CONS_COLUMNS.COLUMN_NAME, + ALL_CONSTRAINTS.R_CONSTRAINT_NAME, + ALL_CONSTRAINTS.R_OWNER) + .from(ALL_CONSTRAINTS + .join(ALL_CONS_COLUMNS) + .on(ALL_CONSTRAINTS.OWNER.equal(ALL_CONS_COLUMNS.OWNER)) + .and(ALL_CONSTRAINTS.TABLE_NAME.equal(ALL_CONS_COLUMNS.TABLE_NAME)) + .and(ALL_CONSTRAINTS.CONSTRAINT_NAME.equal(ALL_CONS_COLUMNS.CONSTRAINT_NAME))) + .where(ALL_CONSTRAINTS.CONSTRAINT_TYPE.equal("R")) + .and(ALL_CONSTRAINTS.OWNER.in(getInputSchemata())) + .orderBy( + ALL_CONS_COLUMNS.OWNER, + ALL_CONS_COLUMNS.TABLE_NAME, + ALL_CONS_COLUMNS.CONSTRAINT_NAME, + ALL_CONS_COLUMNS.POSITION) + .fetch()) { + + SchemaDefinition foreignKeySchema = getSchema(record.getValue(ALL_CONS_COLUMNS.OWNER)); + SchemaDefinition uniqueKeySchema = getSchema(record.getValue(ALL_CONSTRAINTS.R_OWNER)); + + String foreignKeyName = record.getValue(ALL_CONS_COLUMNS.CONSTRAINT_NAME); + String foreignKeyTableName = record.getValue(ALL_CONS_COLUMNS.TABLE_NAME); + String foreignKeyColumnName = record.getValue(ALL_CONS_COLUMNS.COLUMN_NAME); + String uniqueKeyName = record.getValue(ALL_CONSTRAINTS.R_CONSTRAINT_NAME); + + TableDefinition referencingTable = getTable(foreignKeySchema, foreignKeyTableName); + if (referencingTable != null) { + ColumnDefinition column = referencingTable.getColumn(foreignKeyColumnName); + relations.addForeignKey(foreignKeyName, uniqueKeyName, column, uniqueKeySchema); + } + } + } + + /** + * {@inheritDoc} + */ + @Override + protected List getSequences0() throws SQLException { + List result = new ArrayList(); + + for (Record record : create().select( + ALL_SEQUENCES.SEQUENCE_OWNER, + ALL_SEQUENCES.SEQUENCE_NAME, + ALL_SEQUENCES.MAX_VALUE) + .from(ALL_SEQUENCES) + .where(ALL_SEQUENCES.SEQUENCE_OWNER.in(getInputSchemata())) + .orderBy( + ALL_SEQUENCES.SEQUENCE_OWNER, + ALL_SEQUENCES.SEQUENCE_NAME) + .fetch()) { + + + SchemaDefinition schema = getSchema(record.getValue(ALL_SEQUENCES.SEQUENCE_OWNER)); + BigInteger value = record.getValue(ALL_SEQUENCES.MAX_VALUE, BigInteger.class, BigInteger.valueOf(Long.MAX_VALUE)); + DataTypeDefinition type = getDataTypeForMAX_VAL(schema, value); + + result.add(new DefaultSequenceDefinition( + schema, + record.getValue(ALL_SEQUENCES.SEQUENCE_NAME), + type)); + } + + return result; + } + + /** + * {@inheritDoc} + */ + @Override + protected List getTables0() throws SQLException { + List result = new ArrayList(); + + for (Record record : create().select( + ALL_TAB_COMMENTS.OWNER, + ALL_TAB_COMMENTS.TABLE_NAME, + ALL_TAB_COMMENTS.COMMENTS) + .from(ALL_TAB_COMMENTS) + .where(ALL_TAB_COMMENTS.OWNER.in(getInputSchemata())) + .and(ALL_TAB_COMMENTS.TABLE_NAME.notLike("%$%")) + .orderBy( + ALL_TAB_COMMENTS.OWNER, + ALL_TAB_COMMENTS.TABLE_NAME) + .fetch()) { + + SchemaDefinition schema = getSchema(record.getValue(ALL_TAB_COMMENTS.OWNER)); + String name = record.getValue(ALL_TAB_COMMENTS.TABLE_NAME); + String comment = record.getValue(ALL_TAB_COMMENTS.COMMENTS); + + OracleTableDefinition table = new OracleTableDefinition(schema, name, comment); + result.add(table); + } + + return result; + } + + /** + * {@inheritDoc} + */ + @Override + protected List getEnums0() throws SQLException { + List result = new ArrayList(); + return result; + } + + /** + * {@inheritDoc} + */ + @Override + protected List getUDTs0() throws SQLException { + List result = new ArrayList(); + + for (Record record : create().selectDistinct( + ALL_TYPES.OWNER, + ALL_TYPES.TYPE_NAME) + .from(ALL_TYPES) + .where(ALL_TYPES.OWNER.in(getInputSchemata())) + .and(ALL_TYPES.TYPECODE.equal("OBJECT")) + .orderBy( + ALL_TYPES.OWNER, + ALL_TYPES.TYPE_NAME) + .fetch()) { + + SchemaDefinition schema = getSchema(record.getValue(ALL_TYPES.OWNER)); + String name = record.getValue(ALL_TYPES.TYPE_NAME); + + result.add(new OracleUDTDefinition(schema, name, null)); + } + + return result; + } + + /** + * {@inheritDoc} + */ + @Override + protected List getArrays0() throws SQLException { + List arrays = new ArrayList(); + + for (Record record : create().select( + ALL_COLL_TYPES.OWNER, + ALL_COLL_TYPES.TYPE_NAME, + ALL_COLL_TYPES.ELEM_TYPE_NAME, + ALL_COLL_TYPES.LENGTH, + ALL_COLL_TYPES.PRECISION, + ALL_COLL_TYPES.SCALE) + .from(ALL_COLL_TYPES) + .where(ALL_COLL_TYPES.OWNER.in(getInputSchemata())) + .and(ALL_COLL_TYPES.COLL_TYPE.in("VARYING ARRAY", "TABLE")) + .orderBy( + ALL_COLL_TYPES.OWNER, + ALL_COLL_TYPES.TYPE_NAME) + .fetch()) { + + SchemaDefinition schema = getSchema(record.getValue(ALL_COLL_TYPES.OWNER)); + + String name = record.getValue(ALL_COLL_TYPES.TYPE_NAME); + String dataType = record.getValue(ALL_COLL_TYPES.ELEM_TYPE_NAME); + + int length = record.getValue(ALL_COLL_TYPES.LENGTH, BigDecimal.ZERO).intValue(); + int precision = record.getValue(ALL_COLL_TYPES.PRECISION, BigDecimal.ZERO).intValue(); + int scale = record.getValue(ALL_COLL_TYPES.SCALE, BigDecimal.ZERO).intValue(); + + DefaultDataTypeDefinition type = new DefaultDataTypeDefinition(this, schema, dataType, length, precision, scale); + DefaultArrayDefinition array = new DefaultArrayDefinition(schema, name, type); + + arrays.add(array); + } + + return arrays; + } + + @Override + protected List getRoutines0() throws SQLException { + List result = new ArrayList(); + + for (Record record : create().select( + ALL_OBJECTS.OWNER, + ALL_OBJECTS.OBJECT_NAME, + ALL_OBJECTS.OBJECT_ID) + .from(ALL_OBJECTS) + .where(ALL_OBJECTS.OWNER.in(getInputSchemata()) + .and(ALL_OBJECTS.OBJECT_TYPE.in("FUNCTION", "PROCEDURE"))) + .orderBy( + ALL_OBJECTS.OWNER, + ALL_OBJECTS.OBJECT_NAME, + ALL_OBJECTS.OBJECT_ID) + .fetch()) { + + SchemaDefinition schema = getSchema(record.getValue(ALL_OBJECTS.OWNER)); + String objectName = record.getValue(ALL_OBJECTS.OBJECT_NAME); + BigDecimal objectId = record.getValue(ALL_OBJECTS.OBJECT_ID); + + result.add(new OracleRoutineDefinition(schema, null, objectName, "", objectId, null)); + } + + return result; + } + + /** + * {@inheritDoc} + */ + @Override + protected List getPackages0() throws SQLException { + List result = new ArrayList(); + + for (Record record : create().select( + ALL_OBJECTS.OWNER, + ALL_OBJECTS.OBJECT_NAME, + ALL_OBJECTS.OBJECT_ID) + .from(ALL_OBJECTS) + .where(ALL_OBJECTS.OWNER.in(getInputSchemata()) + .and(ALL_OBJECTS.OBJECT_TYPE.equal("PACKAGE"))) + .orderBy( + ALL_OBJECTS.OWNER, + ALL_OBJECTS.OBJECT_NAME, + ALL_OBJECTS.OBJECT_ID) + .fetch()) { + + SchemaDefinition schema = getSchema(record.getValue(ALL_OBJECTS.OWNER)); + String name = record.getValue(ALL_OBJECTS.OBJECT_NAME); + + result.add(new OraclePackageDefinition(schema, name, "")); + } + + return result; + } + + /** + * {@inheritDoc} + */ + @Override + public Factory create() { + return new SysFactory(getConnection()); + } +} diff --git a/jOOQ-meta/src/main/java/org/jooq/util/oracle/OraclePackageDefinition.java b/jOOQ-meta/src/main/java/org/jooq/util/oracle/OraclePackageDefinition.java new file mode 100644 index 00000000000..ef30a10ca9a --- /dev/null +++ b/jOOQ-meta/src/main/java/org/jooq/util/oracle/OraclePackageDefinition.java @@ -0,0 +1,83 @@ +/** + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com + * All rights reserved. + * + * This software is licensed to you under the Apache License, Version 2.0 + * (the "License"); You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * 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 "jOOQ" 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 COPYRIGHT OWNER 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. + */ +package org.jooq.util.oracle; + +import static org.jooq.util.oracle.sys.Tables.ALL_ARGUMENTS; + +import java.sql.SQLException; +import java.util.ArrayList; +import java.util.List; + +import org.jooq.Record; +import org.jooq.util.AbstractPackageDefinition; +import org.jooq.util.RoutineDefinition; +import org.jooq.util.SchemaDefinition; + +/** + * @author Lukas Eder + */ +public class OraclePackageDefinition extends AbstractPackageDefinition { + + public OraclePackageDefinition(SchemaDefinition schema, String packageName, String comment) { + super(schema, packageName, comment); + } + + @Override + protected List getRoutines0() throws SQLException { + List result = new ArrayList(); + + for (Record record : create() + .selectDistinct( + ALL_ARGUMENTS.OBJECT_NAME, + ALL_ARGUMENTS.OBJECT_ID, + ALL_ARGUMENTS.OVERLOAD) + .from(ALL_ARGUMENTS) + .where(ALL_ARGUMENTS.OWNER.in(getSchema().getName())) + .and(ALL_ARGUMENTS.PACKAGE_NAME.equal(getName())) + .orderBy(ALL_ARGUMENTS.OBJECT_NAME, ALL_ARGUMENTS.OVERLOAD) + .fetch()) { + + result.add(new OracleRoutineDefinition(getSchema(), + this, + record.getValue(ALL_ARGUMENTS.OBJECT_NAME), + "", + record.getValue(ALL_ARGUMENTS.OBJECT_ID), + record.getValue(ALL_ARGUMENTS.OVERLOAD))); + } + + return result; + } +} diff --git a/jOOQ-meta/src/main/java/org/jooq/util/oracle/OracleRoutineDefinition.java b/jOOQ-meta/src/main/java/org/jooq/util/oracle/OracleRoutineDefinition.java new file mode 100644 index 00000000000..6b87b3f34b6 --- /dev/null +++ b/jOOQ-meta/src/main/java/org/jooq/util/oracle/OracleRoutineDefinition.java @@ -0,0 +1,126 @@ +/** + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com + * All rights reserved. + * + * This software is licensed to you under the Apache License, Version 2.0 + * (the "License"); You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * 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 "jOOQ" 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 COPYRIGHT OWNER 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. + */ + +package org.jooq.util.oracle; + +import static org.jooq.util.oracle.sys.Tables.ALL_ARGUMENTS; + +import java.math.BigDecimal; +import java.sql.SQLException; + +import org.jooq.Record; +import org.jooq.Result; +import org.jooq.tools.StringUtils; +import org.jooq.util.AbstractRoutineDefinition; +import org.jooq.util.DataTypeDefinition; +import org.jooq.util.DefaultDataTypeDefinition; +import org.jooq.util.DefaultParameterDefinition; +import org.jooq.util.InOutDefinition; +import org.jooq.util.PackageDefinition; +import org.jooq.util.ParameterDefinition; +import org.jooq.util.SchemaDefinition; + +/** + * @author Lukas Eder + */ +public class OracleRoutineDefinition extends AbstractRoutineDefinition { + + private final BigDecimal objectId; + + public OracleRoutineDefinition(SchemaDefinition schema, PackageDefinition pkg, String name, String comment, BigDecimal objectId, String overload) { + super(schema, pkg, name, comment, overload); + + this.objectId = objectId; + } + + @Override + protected void init0() throws SQLException { + Result result = create().select( + ALL_ARGUMENTS.IN_OUT, + ALL_ARGUMENTS.ARGUMENT_NAME, + ALL_ARGUMENTS.DATA_TYPE, + ALL_ARGUMENTS.DATA_LENGTH, + ALL_ARGUMENTS.DATA_PRECISION, + ALL_ARGUMENTS.DATA_SCALE, + ALL_ARGUMENTS.TYPE_NAME, + ALL_ARGUMENTS.POSITION, + ALL_ARGUMENTS.DEFAULTED) + .from(ALL_ARGUMENTS) + .where(ALL_ARGUMENTS.OWNER.equal(getSchema().getName())) + .and(ALL_ARGUMENTS.OBJECT_NAME.equal(getName())) + .and(ALL_ARGUMENTS.OBJECT_ID.equal(objectId)) + .and(ALL_ARGUMENTS.OVERLOAD.equal(getOverload())) + .and(ALL_ARGUMENTS.DATA_LEVEL.equal(BigDecimal.ZERO)) + + // [#284] In packages, procedures without arguments may have a + // single data type entry that does not mean anything...? + .and(ALL_ARGUMENTS.DATA_TYPE.isNotNull()) + .orderBy(ALL_ARGUMENTS.POSITION.asc()).fetch(); + + for (Record record : result) { + InOutDefinition inOut = + InOutDefinition.getFromString(record.getValue(ALL_ARGUMENTS.IN_OUT)); + + DataTypeDefinition type = new DefaultDataTypeDefinition( + getDatabase(), + getSchema(), + record.getValue(ALL_ARGUMENTS.DATA_TYPE), + record.getValue(ALL_ARGUMENTS.DATA_LENGTH), + record.getValue(ALL_ARGUMENTS.DATA_PRECISION), + record.getValue(ALL_ARGUMENTS.DATA_SCALE), + record.getValue(ALL_ARGUMENTS.TYPE_NAME)); + + String name = record.getValue(ALL_ARGUMENTS.ARGUMENT_NAME); + Integer position = record.getValueAsInteger(ALL_ARGUMENTS.POSITION); + + // [#378] Oracle supports stored functions with OUT parameters. + // They are mapped to procedures in jOOQ + if (StringUtils.isBlank(name) && position == 0) { + inOut = InOutDefinition.RETURN; + name = "RETURN_VALUE"; + } + + ParameterDefinition parameter = new DefaultParameterDefinition( + this, + name, + position, + type, + record.getValue(ALL_ARGUMENTS.DEFAULTED, boolean.class)); + + addParameter(inOut, parameter); + } + } +} diff --git a/jOOQ-meta/src/main/java/org/jooq/util/oracle/OracleTableDefinition.java b/jOOQ-meta/src/main/java/org/jooq/util/oracle/OracleTableDefinition.java new file mode 100644 index 00000000000..0bdfb24f1e5 --- /dev/null +++ b/jOOQ-meta/src/main/java/org/jooq/util/oracle/OracleTableDefinition.java @@ -0,0 +1,108 @@ +/** + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com + * All rights reserved. + * + * This software is licensed to you under the Apache License, Version 2.0 + * (the "License"); You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * 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 "jOOQ" 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 COPYRIGHT OWNER 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. + */ + +package org.jooq.util.oracle; + +import static org.jooq.util.oracle.sys.Tables.ALL_COL_COMMENTS; +import static org.jooq.util.oracle.sys.Tables.ALL_TAB_COLS; + +import java.sql.SQLException; +import java.util.ArrayList; +import java.util.List; + +import org.jooq.Record; +import org.jooq.util.AbstractTableDefinition; +import org.jooq.util.ColumnDefinition; +import org.jooq.util.DataTypeDefinition; +import org.jooq.util.DefaultColumnDefinition; +import org.jooq.util.DefaultDataTypeDefinition; +import org.jooq.util.SchemaDefinition; + +/** + * @author Lukas Eder + */ +public class OracleTableDefinition extends AbstractTableDefinition { + + public OracleTableDefinition(SchemaDefinition schema, String name, String comment) { + super(schema, name, comment); + } + + @Override + public List getElements0() throws SQLException { + List result = new ArrayList(); + + for (Record record : create().select( + ALL_TAB_COLS.DATA_TYPE, + ALL_TAB_COLS.DATA_LENGTH, + ALL_TAB_COLS.DATA_PRECISION, + ALL_TAB_COLS.DATA_SCALE, + ALL_TAB_COLS.NULLABLE, + ALL_TAB_COLS.COLUMN_NAME, + ALL_TAB_COLS.COLUMN_ID, + ALL_COL_COMMENTS.COMMENTS) + .from(ALL_TAB_COLS) + .join(ALL_COL_COMMENTS) + .on(ALL_TAB_COLS.OWNER.equal(ALL_COL_COMMENTS.OWNER), + ALL_TAB_COLS.TABLE_NAME.equal(ALL_COL_COMMENTS.TABLE_NAME), + ALL_TAB_COLS.COLUMN_NAME.equal(ALL_COL_COMMENTS.COLUMN_NAME)) + .where(ALL_TAB_COLS.OWNER.equal(getSchema().getName())) + .and(ALL_TAB_COLS.TABLE_NAME.equal(getName())) + .orderBy(ALL_TAB_COLS.COLUMN_ID) + .fetch()) { + + DataTypeDefinition type = new DefaultDataTypeDefinition( + getDatabase(), + getSchema(), + record.getValue(ALL_TAB_COLS.DATA_TYPE), + record.getValueAsInteger(ALL_TAB_COLS.DATA_LENGTH, 0), + record.getValueAsInteger(ALL_TAB_COLS.DATA_PRECISION, 0), + record.getValueAsInteger(ALL_TAB_COLS.DATA_SCALE, 0)); + + DefaultColumnDefinition column = new DefaultColumnDefinition( + getDatabase().getTable(getSchema(), getName()), + record.getValue(ALL_TAB_COLS.COLUMN_NAME), + record.getValueAsInteger(ALL_TAB_COLS.COLUMN_ID), + type, + record.getValue(ALL_TAB_COLS.NULLABLE, boolean.class), + false, + record.getValue(ALL_COL_COMMENTS.COMMENTS)); + + result.add(column); + } + + return result; + } +} diff --git a/jOOQ-meta/src/main/java/org/jooq/util/oracle/OracleUDTDefinition.java b/jOOQ-meta/src/main/java/org/jooq/util/oracle/OracleUDTDefinition.java new file mode 100644 index 00000000000..d5dfdbd32c5 --- /dev/null +++ b/jOOQ-meta/src/main/java/org/jooq/util/oracle/OracleUDTDefinition.java @@ -0,0 +1,123 @@ +/** + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com + * All rights reserved. + * + * This software is licensed to you under the Apache License, Version 2.0 + * (the "License"); You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * 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 "jOOQ" 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 COPYRIGHT OWNER 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. + */ +package org.jooq.util.oracle; + +import static org.jooq.util.oracle.sys.Tables.ALL_ARGUMENTS; +import static org.jooq.util.oracle.sys.Tables.ALL_TYPE_ATTRS; + +import java.sql.SQLException; +import java.util.ArrayList; +import java.util.List; + +import org.jooq.Record; +import org.jooq.util.AbstractUDTDefinition; +import org.jooq.util.AttributeDefinition; +import org.jooq.util.DataTypeDefinition; +import org.jooq.util.DefaultAttributeDefinition; +import org.jooq.util.DefaultDataTypeDefinition; +import org.jooq.util.RoutineDefinition; +import org.jooq.util.SchemaDefinition; + +public class OracleUDTDefinition extends AbstractUDTDefinition { + + public OracleUDTDefinition(SchemaDefinition schema, String name, String comment) { + super(schema, name, comment); + } + + @Override + protected List getElements0() throws SQLException { + List result = new ArrayList(); + + for (Record record : create().select( + ALL_TYPE_ATTRS.ATTR_NAME, + ALL_TYPE_ATTRS.ATTR_NO, + ALL_TYPE_ATTRS.ATTR_TYPE_NAME, + ALL_TYPE_ATTRS.LENGTH, + ALL_TYPE_ATTRS.PRECISION, + ALL_TYPE_ATTRS.SCALE) + .from(ALL_TYPE_ATTRS) + .where(ALL_TYPE_ATTRS.OWNER.equal(getSchema().getName())) + .and(ALL_TYPE_ATTRS.TYPE_NAME.equal(getName())) + .orderBy(ALL_TYPE_ATTRS.ATTR_NO).fetch()) { + + DataTypeDefinition type = new DefaultDataTypeDefinition( + getDatabase(), + getSchema(), + record.getValue(ALL_TYPE_ATTRS.ATTR_TYPE_NAME), + record.getValueAsInteger(ALL_TYPE_ATTRS.LENGTH, 0), + record.getValueAsInteger(ALL_TYPE_ATTRS.PRECISION, 0), + record.getValueAsInteger(ALL_TYPE_ATTRS.SCALE, 0)); + + AttributeDefinition attribute = new DefaultAttributeDefinition( + this, + record.getValue(ALL_TYPE_ATTRS.ATTR_NAME), + record.getValueAsInteger(ALL_TYPE_ATTRS.ATTR_NO), + type); + + result.add(attribute); + } + + return result; + } + + @Override + protected List getRoutines0() { + List result = new ArrayList(); + + for (Record record : create() + .selectDistinct( + ALL_ARGUMENTS.OBJECT_NAME, + ALL_ARGUMENTS.OBJECT_ID, + ALL_ARGUMENTS.OVERLOAD) + .from(ALL_ARGUMENTS) + .where(ALL_ARGUMENTS.OWNER.equal(getSchema().getName())) + .and(ALL_ARGUMENTS.PACKAGE_NAME.equal(getName())) + .orderBy( + ALL_ARGUMENTS.OBJECT_NAME, + ALL_ARGUMENTS.OVERLOAD) + .fetch()) { + + result.add(new OracleRoutineDefinition(getSchema(), + this, + record.getValue(ALL_ARGUMENTS.OBJECT_NAME), + "", + record.getValue(ALL_ARGUMENTS.OBJECT_ID), + record.getValue(ALL_ARGUMENTS.OVERLOAD))); + } + + return result; + } +} diff --git a/jOOQ-meta/src/main/java/org/jooq/util/oracle/sys/Sys.java b/jOOQ-meta/src/main/java/org/jooq/util/oracle/sys/Sys.java new file mode 100644 index 00000000000..f43914e62a4 --- /dev/null +++ b/jOOQ-meta/src/main/java/org/jooq/util/oracle/sys/Sys.java @@ -0,0 +1,43 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.util.oracle.sys; + +/** + * This class is generated by jOOQ. + */ +@javax.annotation.Generated(value = {"http://www.jooq.org", "2.0.6"}, + comments = "This class is generated by jOOQ") +public class Sys extends org.jooq.impl.SchemaImpl { + + private static final long serialVersionUID = -2003889206; + + /** + * The singleton instance of SYS + */ + public static final Sys SYS = new Sys(); + + /** + * No further instances allowed + */ + private Sys() { + super("SYS"); + } + + @Override + public final java.util.List> getTables() { + return java.util.Arrays.>asList( + org.jooq.util.oracle.sys.tables.AllArguments.ALL_ARGUMENTS, + org.jooq.util.oracle.sys.tables.AllColComments.ALL_COL_COMMENTS, + org.jooq.util.oracle.sys.tables.AllCollTypes.ALL_COLL_TYPES, + org.jooq.util.oracle.sys.tables.AllConsColumns.ALL_CONS_COLUMNS, + org.jooq.util.oracle.sys.tables.AllConstraints.ALL_CONSTRAINTS, + org.jooq.util.oracle.sys.tables.AllObjects.ALL_OBJECTS, + org.jooq.util.oracle.sys.tables.AllProcedures.ALL_PROCEDURES, + org.jooq.util.oracle.sys.tables.AllSequences.ALL_SEQUENCES, + org.jooq.util.oracle.sys.tables.AllTabCols.ALL_TAB_COLS, + org.jooq.util.oracle.sys.tables.AllTabComments.ALL_TAB_COMMENTS, + org.jooq.util.oracle.sys.tables.AllTypeAttrs.ALL_TYPE_ATTRS, + org.jooq.util.oracle.sys.tables.AllTypes.ALL_TYPES); + } +} diff --git a/jOOQ-meta/src/main/java/org/jooq/util/oracle/sys/SysFactory.java b/jOOQ-meta/src/main/java/org/jooq/util/oracle/sys/SysFactory.java new file mode 100644 index 00000000000..759156a546d --- /dev/null +++ b/jOOQ-meta/src/main/java/org/jooq/util/oracle/sys/SysFactory.java @@ -0,0 +1,33 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.util.oracle.sys; + +/** + * This class is generated by jOOQ. + */ +@javax.annotation.Generated(value = {"http://www.jooq.org", "2.0.6"}, + comments = "This class is generated by jOOQ") +public class SysFactory extends org.jooq.util.oracle.OracleFactory { + + private static final long serialVersionUID = 1588893751; + + /** + * Create a factory with a connection + * + * @param connection The connection to use with objects created from this factory + */ + public SysFactory(java.sql.Connection connection) { + super(connection); + } + + /** + * Create a factory with a connection and some settings + * + * @param connection The connection to use with objects created from this factory + * @param settings The settings to apply to objects created from this factory + */ + public SysFactory(java.sql.Connection connection, org.jooq.conf.Settings settings) { + super(connection, settings); + } +} diff --git a/jOOQ-meta/src/main/java/org/jooq/util/oracle/sys/Tables.java b/jOOQ-meta/src/main/java/org/jooq/util/oracle/sys/Tables.java new file mode 100644 index 00000000000..71d273d8963 --- /dev/null +++ b/jOOQ-meta/src/main/java/org/jooq/util/oracle/sys/Tables.java @@ -0,0 +1,79 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.util.oracle.sys; + +/** + * This class is generated by jOOQ. + * + * Convenience access to all tables in SYS + */ +@javax.annotation.Generated(value = {"http://www.jooq.org", "2.0.6"}, + comments = "This class is generated by jOOQ") +public final class Tables { + + /** + * Arguments in object accessible to the user + */ + public static org.jooq.util.oracle.sys.tables.AllArguments ALL_ARGUMENTS = org.jooq.util.oracle.sys.tables.AllArguments.ALL_ARGUMENTS; + + /** + * Comments on columns of accessible tables and views + */ + public static org.jooq.util.oracle.sys.tables.AllColComments ALL_COL_COMMENTS = org.jooq.util.oracle.sys.tables.AllColComments.ALL_COL_COMMENTS; + + /** + * Description of named collection types accessible to the user + */ + public static org.jooq.util.oracle.sys.tables.AllCollTypes ALL_COLL_TYPES = org.jooq.util.oracle.sys.tables.AllCollTypes.ALL_COLL_TYPES; + + /** + * Information about accessible columns in constraint definitions + */ + public static org.jooq.util.oracle.sys.tables.AllConsColumns ALL_CONS_COLUMNS = org.jooq.util.oracle.sys.tables.AllConsColumns.ALL_CONS_COLUMNS; + + /** + * Constraint definitions on accessible tables + */ + public static org.jooq.util.oracle.sys.tables.AllConstraints ALL_CONSTRAINTS = org.jooq.util.oracle.sys.tables.AllConstraints.ALL_CONSTRAINTS; + + /** + * Objects accessible to the user + */ + public static org.jooq.util.oracle.sys.tables.AllObjects ALL_OBJECTS = org.jooq.util.oracle.sys.tables.AllObjects.ALL_OBJECTS; + + /** + * Functions/procedures/packages/types/triggers available to the user + */ + public static org.jooq.util.oracle.sys.tables.AllProcedures ALL_PROCEDURES = org.jooq.util.oracle.sys.tables.AllProcedures.ALL_PROCEDURES; + + /** + * Description of SEQUENCEs accessible to the user + */ + public static org.jooq.util.oracle.sys.tables.AllSequences ALL_SEQUENCES = org.jooq.util.oracle.sys.tables.AllSequences.ALL_SEQUENCES; + + /** + * Columns of user's tables, views and clusters + */ + public static org.jooq.util.oracle.sys.tables.AllTabCols ALL_TAB_COLS = org.jooq.util.oracle.sys.tables.AllTabCols.ALL_TAB_COLS; + + /** + * Comments on tables and views accessible to the user + */ + public static org.jooq.util.oracle.sys.tables.AllTabComments ALL_TAB_COMMENTS = org.jooq.util.oracle.sys.tables.AllTabComments.ALL_TAB_COMMENTS; + + /** + * Description of attributes of types accessible to the user + */ + public static org.jooq.util.oracle.sys.tables.AllTypeAttrs ALL_TYPE_ATTRS = org.jooq.util.oracle.sys.tables.AllTypeAttrs.ALL_TYPE_ATTRS; + + /** + * Description of types accessible to the user + */ + public static org.jooq.util.oracle.sys.tables.AllTypes ALL_TYPES = org.jooq.util.oracle.sys.tables.AllTypes.ALL_TYPES; + + /** + * No instances + */ + private Tables() {} +} diff --git a/jOOQ-meta/src/main/java/org/jooq/util/oracle/sys/tables/AllArguments.java b/jOOQ-meta/src/main/java/org/jooq/util/oracle/sys/tables/AllArguments.java new file mode 100644 index 00000000000..6aee2ba13eb --- /dev/null +++ b/jOOQ-meta/src/main/java/org/jooq/util/oracle/sys/tables/AllArguments.java @@ -0,0 +1,188 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.util.oracle.sys.tables; + +/** + * This class is generated by jOOQ. + * + * Arguments in object accessible to the user + */ +@javax.annotation.Generated(value = {"http://www.jooq.org", "2.0.6"}, + comments = "This class is generated by jOOQ") +public class AllArguments extends org.jooq.impl.TableImpl { + + private static final long serialVersionUID = 766409551; + + /** + * The singleton instance of SYS.ALL_ARGUMENTS + */ + public static final org.jooq.util.oracle.sys.tables.AllArguments ALL_ARGUMENTS = new org.jooq.util.oracle.sys.tables.AllArguments(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.Record.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * Username of the owner of the object + */ + public final org.jooq.TableField OWNER = createField("OWNER", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * Procedure or function name + */ + public final org.jooq.TableField OBJECT_NAME = createField("OBJECT_NAME", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * Package name + */ + public final org.jooq.TableField PACKAGE_NAME = createField("PACKAGE_NAME", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * Object number of the object + */ + public final org.jooq.TableField OBJECT_ID = createField("OBJECT_ID", org.jooq.impl.SQLDataType.NUMERIC, this); + + /** + * Overload unique identifier + */ + public final org.jooq.TableField OVERLOAD = createField("OVERLOAD", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * Unique sub-program Identifier + */ + public final org.jooq.TableField SUBPROGRAM_ID = createField("SUBPROGRAM_ID", org.jooq.impl.SQLDataType.NUMERIC, this); + + /** + * Argument name + */ + public final org.jooq.TableField ARGUMENT_NAME = createField("ARGUMENT_NAME", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * Position in argument list, or null for function return value + */ + public final org.jooq.TableField POSITION = createField("POSITION", org.jooq.impl.SQLDataType.NUMERIC, this); + + /** + * Argument sequence, including all nesting levels + */ + public final org.jooq.TableField SEQUENCE = createField("SEQUENCE", org.jooq.impl.SQLDataType.NUMERIC, this); + + /** + * Nesting depth of argument for composite types + */ + public final org.jooq.TableField DATA_LEVEL = createField("DATA_LEVEL", org.jooq.impl.SQLDataType.NUMERIC, this); + + /** + * Datatype of the argument + */ + public final org.jooq.TableField DATA_TYPE = createField("DATA_TYPE", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * Is the argument defaulted? + */ + public final org.jooq.TableField DEFAULTED = createField("DEFAULTED", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * Default value for the argument + */ + public final org.jooq.TableField DEFAULT_VALUE = createField("DEFAULT_VALUE", org.jooq.impl.SQLDataType.CLOB, this); + + /** + * Length of default value for the argument + */ + public final org.jooq.TableField DEFAULT_LENGTH = createField("DEFAULT_LENGTH", org.jooq.impl.SQLDataType.NUMERIC, this); + + /** + * Argument direction (IN, OUT, or IN/OUT) + */ + public final org.jooq.TableField IN_OUT = createField("IN_OUT", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * Length of the column in bytes + */ + public final org.jooq.TableField DATA_LENGTH = createField("DATA_LENGTH", org.jooq.impl.SQLDataType.NUMERIC, this); + + /** + * Length: decimal digits (NUMBER) or binary digits (FLOAT) + */ + public final org.jooq.TableField DATA_PRECISION = createField("DATA_PRECISION", org.jooq.impl.SQLDataType.NUMERIC, this); + + /** + * Digits to right of decimal point in a number + */ + public final org.jooq.TableField DATA_SCALE = createField("DATA_SCALE", org.jooq.impl.SQLDataType.NUMERIC, this); + + /** + * Argument radix for a number + */ + public final org.jooq.TableField RADIX = createField("RADIX", org.jooq.impl.SQLDataType.NUMERIC, this); + + /** + * Character set name for the argument + */ + public final org.jooq.TableField CHARACTER_SET_NAME = createField("CHARACTER_SET_NAME", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * Owner name for the argument type in case of object types + */ + public final org.jooq.TableField TYPE_OWNER = createField("TYPE_OWNER", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * Object name for the argument type in case of object types + */ + public final org.jooq.TableField TYPE_NAME = createField("TYPE_NAME", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * Subordinate object name for the argument type in case of object types + */ + public final org.jooq.TableField TYPE_SUBNAME = createField("TYPE_SUBNAME", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * Database link name for the argument type in case of object types + */ + public final org.jooq.TableField TYPE_LINK = createField("TYPE_LINK", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * PL/SQL type name for numeric arguments + */ + public final org.jooq.TableField PLS_TYPE = createField("PLS_TYPE", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * Character limit for string datatypes + */ + public final org.jooq.TableField CHAR_LENGTH = createField("CHAR_LENGTH", org.jooq.impl.SQLDataType.NUMERIC, this); + + /** + * Is the byte limit (B) or char limit (C) official for this string? + */ + public final org.jooq.TableField CHAR_USED = createField("CHAR_USED", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * No further instances allowed + */ + private AllArguments() { + super("ALL_ARGUMENTS", org.jooq.util.oracle.sys.Sys.SYS); + } + + /** + * No further instances allowed + */ + private AllArguments(java.lang.String alias) { + super(alias, org.jooq.util.oracle.sys.Sys.SYS, org.jooq.util.oracle.sys.tables.AllArguments.ALL_ARGUMENTS); + } + + @Override + public org.jooq.util.oracle.sys.tables.AllArguments as(java.lang.String alias) { + return new org.jooq.util.oracle.sys.tables.AllArguments(alias); + } +} diff --git a/jOOQ-meta/src/main/java/org/jooq/util/oracle/sys/tables/AllColComments.java b/jOOQ-meta/src/main/java/org/jooq/util/oracle/sys/tables/AllColComments.java new file mode 100644 index 00000000000..fc5964eb533 --- /dev/null +++ b/jOOQ-meta/src/main/java/org/jooq/util/oracle/sys/tables/AllColComments.java @@ -0,0 +1,73 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.util.oracle.sys.tables; + +/** + * This class is generated by jOOQ. + * + * Comments on columns of accessible tables and views + */ +@javax.annotation.Generated(value = {"http://www.jooq.org", "2.0.6"}, + comments = "This class is generated by jOOQ") +public class AllColComments extends org.jooq.impl.TableImpl { + + private static final long serialVersionUID = 354918751; + + /** + * The singleton instance of SYS.ALL_COL_COMMENTS + */ + public static final org.jooq.util.oracle.sys.tables.AllColComments ALL_COL_COMMENTS = new org.jooq.util.oracle.sys.tables.AllColComments(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.Record.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * Owner of the object + */ + public final org.jooq.TableField OWNER = createField("OWNER", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * Name of the object + */ + public final org.jooq.TableField TABLE_NAME = createField("TABLE_NAME", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * Name of the column + */ + public final org.jooq.TableField COLUMN_NAME = createField("COLUMN_NAME", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * Comment on the column + */ + public final org.jooq.TableField COMMENTS = createField("COMMENTS", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * No further instances allowed + */ + private AllColComments() { + super("ALL_COL_COMMENTS", org.jooq.util.oracle.sys.Sys.SYS); + } + + /** + * No further instances allowed + */ + private AllColComments(java.lang.String alias) { + super(alias, org.jooq.util.oracle.sys.Sys.SYS, org.jooq.util.oracle.sys.tables.AllColComments.ALL_COL_COMMENTS); + } + + @Override + public org.jooq.util.oracle.sys.tables.AllColComments as(java.lang.String alias) { + return new org.jooq.util.oracle.sys.tables.AllColComments(alias); + } +} diff --git a/jOOQ-meta/src/main/java/org/jooq/util/oracle/sys/tables/AllCollTypes.java b/jOOQ-meta/src/main/java/org/jooq/util/oracle/sys/tables/AllCollTypes.java new file mode 100644 index 00000000000..83180189605 --- /dev/null +++ b/jOOQ-meta/src/main/java/org/jooq/util/oracle/sys/tables/AllCollTypes.java @@ -0,0 +1,125 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.util.oracle.sys.tables; + +/** + * This class is generated by jOOQ. + * + * Description of named collection types accessible to the user + */ +@javax.annotation.Generated(value = {"http://www.jooq.org", "2.0.6"}, + comments = "This class is generated by jOOQ") +public class AllCollTypes extends org.jooq.impl.TableImpl { + + private static final long serialVersionUID = -1534142998; + + /** + * The singleton instance of SYS.ALL_COLL_TYPES + */ + public static final org.jooq.util.oracle.sys.tables.AllCollTypes ALL_COLL_TYPES = new org.jooq.util.oracle.sys.tables.AllCollTypes(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.Record.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * Owner of the type + */ + public final org.jooq.TableField OWNER = createField("OWNER", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * Name of the type + */ + public final org.jooq.TableField TYPE_NAME = createField("TYPE_NAME", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * Collection type + */ + public final org.jooq.TableField COLL_TYPE = createField("COLL_TYPE", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * Size of the FIXED ARRAY type or maximum size of the VARYING ARRAY type + */ + public final org.jooq.TableField UPPER_BOUND = createField("UPPER_BOUND", org.jooq.impl.SQLDataType.NUMERIC, this); + + /** + * Type modifier of the element + */ + public final org.jooq.TableField ELEM_TYPE_MOD = createField("ELEM_TYPE_MOD", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * Owner of the type of the element + */ + public final org.jooq.TableField ELEM_TYPE_OWNER = createField("ELEM_TYPE_OWNER", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * Name of the type of the element + */ + public final org.jooq.TableField ELEM_TYPE_NAME = createField("ELEM_TYPE_NAME", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * Length of the CHAR element or maximum length of the VARCHAR +or VARCHAR2 element + */ + public final org.jooq.TableField LENGTH = createField("LENGTH", org.jooq.impl.SQLDataType.NUMERIC, this); + + /** + * Decimal precision of the NUMBER or DECIMAL element or +binary precision of the FLOAT element + */ + public final org.jooq.TableField PRECISION = createField("PRECISION", org.jooq.impl.SQLDataType.NUMERIC, this); + + /** + * Scale of the NUMBER or DECIMAL element + */ + public final org.jooq.TableField SCALE = createField("SCALE", org.jooq.impl.SQLDataType.NUMERIC, this); + + /** + * Character set name of the element + */ + public final org.jooq.TableField CHARACTER_SET_NAME = createField("CHARACTER_SET_NAME", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * Storage optimization specification for VARRAY of numeric elements + */ + public final org.jooq.TableField ELEM_STORAGE = createField("ELEM_STORAGE", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * Is null information stored with each VARRAY element? + */ + public final org.jooq.TableField NULLS_STORED = createField("NULLS_STORED", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * C if the width was specified in characters, B if in bytes + */ + public final org.jooq.TableField CHAR_USED = createField("CHAR_USED", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * No further instances allowed + */ + private AllCollTypes() { + super("ALL_COLL_TYPES", org.jooq.util.oracle.sys.Sys.SYS); + } + + /** + * No further instances allowed + */ + private AllCollTypes(java.lang.String alias) { + super(alias, org.jooq.util.oracle.sys.Sys.SYS, org.jooq.util.oracle.sys.tables.AllCollTypes.ALL_COLL_TYPES); + } + + @Override + public org.jooq.util.oracle.sys.tables.AllCollTypes as(java.lang.String alias) { + return new org.jooq.util.oracle.sys.tables.AllCollTypes(alias); + } +} diff --git a/jOOQ-meta/src/main/java/org/jooq/util/oracle/sys/tables/AllConsColumns.java b/jOOQ-meta/src/main/java/org/jooq/util/oracle/sys/tables/AllConsColumns.java new file mode 100644 index 00000000000..bac7a4e3035 --- /dev/null +++ b/jOOQ-meta/src/main/java/org/jooq/util/oracle/sys/tables/AllConsColumns.java @@ -0,0 +1,78 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.util.oracle.sys.tables; + +/** + * This class is generated by jOOQ. + * + * Information about accessible columns in constraint definitions + */ +@javax.annotation.Generated(value = {"http://www.jooq.org", "2.0.6"}, + comments = "This class is generated by jOOQ") +public class AllConsColumns extends org.jooq.impl.TableImpl { + + private static final long serialVersionUID = -708290058; + + /** + * The singleton instance of SYS.ALL_CONS_COLUMNS + */ + public static final org.jooq.util.oracle.sys.tables.AllConsColumns ALL_CONS_COLUMNS = new org.jooq.util.oracle.sys.tables.AllConsColumns(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.Record.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * Owner of the constraint definition + */ + public final org.jooq.TableField OWNER = createField("OWNER", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * Name associated with the constraint definition + */ + public final org.jooq.TableField CONSTRAINT_NAME = createField("CONSTRAINT_NAME", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * Name associated with table with constraint definition + */ + public final org.jooq.TableField TABLE_NAME = createField("TABLE_NAME", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * Name associated with column or attribute of object column specified in the constraint definition + */ + public final org.jooq.TableField COLUMN_NAME = createField("COLUMN_NAME", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * Original position of column or attribute in definition + */ + public final org.jooq.TableField POSITION = createField("POSITION", org.jooq.impl.SQLDataType.NUMERIC, this); + + /** + * No further instances allowed + */ + private AllConsColumns() { + super("ALL_CONS_COLUMNS", org.jooq.util.oracle.sys.Sys.SYS); + } + + /** + * No further instances allowed + */ + private AllConsColumns(java.lang.String alias) { + super(alias, org.jooq.util.oracle.sys.Sys.SYS, org.jooq.util.oracle.sys.tables.AllConsColumns.ALL_CONS_COLUMNS); + } + + @Override + public org.jooq.util.oracle.sys.tables.AllConsColumns as(java.lang.String alias) { + return new org.jooq.util.oracle.sys.tables.AllConsColumns(alias); + } +} diff --git a/jOOQ-meta/src/main/java/org/jooq/util/oracle/sys/tables/AllConstraints.java b/jOOQ-meta/src/main/java/org/jooq/util/oracle/sys/tables/AllConstraints.java new file mode 100644 index 00000000000..682cab7cb87 --- /dev/null +++ b/jOOQ-meta/src/main/java/org/jooq/util/oracle/sys/tables/AllConstraints.java @@ -0,0 +1,153 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.util.oracle.sys.tables; + +/** + * This class is generated by jOOQ. + * + * Constraint definitions on accessible tables + */ +@javax.annotation.Generated(value = {"http://www.jooq.org", "2.0.6"}, + comments = "This class is generated by jOOQ") +public class AllConstraints extends org.jooq.impl.TableImpl { + + private static final long serialVersionUID = -323067263; + + /** + * The singleton instance of SYS.ALL_CONSTRAINTS + */ + public static final org.jooq.util.oracle.sys.tables.AllConstraints ALL_CONSTRAINTS = new org.jooq.util.oracle.sys.tables.AllConstraints(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.Record.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * Owner of the table + */ + public final org.jooq.TableField OWNER = createField("OWNER", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * Name associated with constraint definition + */ + public final org.jooq.TableField CONSTRAINT_NAME = createField("CONSTRAINT_NAME", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * Type of constraint definition + */ + public final org.jooq.TableField CONSTRAINT_TYPE = createField("CONSTRAINT_TYPE", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * Name associated with table with constraint definition + */ + public final org.jooq.TableField TABLE_NAME = createField("TABLE_NAME", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * Text of search condition for table check + */ + public final org.jooq.TableField SEARCH_CONDITION = createField("SEARCH_CONDITION", org.jooq.impl.SQLDataType.CLOB, this); + + /** + * Owner of table used in referential constraint + */ + public final org.jooq.TableField R_OWNER = createField("R_OWNER", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * Name of unique constraint definition for referenced table + */ + public final org.jooq.TableField R_CONSTRAINT_NAME = createField("R_CONSTRAINT_NAME", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * The delete rule for a referential constraint + */ + public final org.jooq.TableField DELETE_RULE = createField("DELETE_RULE", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * Enforcement status of constraint - ENABLED or DISABLED + */ + public final org.jooq.TableField STATUS = createField("STATUS", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * Is the constraint deferrable - DEFERRABLE or NOT DEFERRABLE + */ + public final org.jooq.TableField DEFERRABLE = createField("DEFERRABLE", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * Is the constraint deferred by default - DEFERRED or IMMEDIATE + */ + public final org.jooq.TableField DEFERRED = createField("DEFERRED", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * Was this constraint system validated? - VALIDATED or NOT VALIDATED + */ + public final org.jooq.TableField VALIDATED = createField("VALIDATED", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * Was the constraint name system generated? - GENERATED NAME or USER NAME + */ + public final org.jooq.TableField GENERATED = createField("GENERATED", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * Creating this constraint should give ORA-02436. Rewrite it before 2000 AD. + */ + public final org.jooq.TableField BAD = createField("BAD", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * If set, this flag will be used in optimizer + */ + public final org.jooq.TableField RELY = createField("RELY", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * The date when this column was last enabled or disabled + */ + public final org.jooq.TableField LAST_CHANGE = createField("LAST_CHANGE", org.jooq.impl.SQLDataType.DATE, this); + + /** + * The owner of the index used by this constraint + */ + public final org.jooq.TableField INDEX_OWNER = createField("INDEX_OWNER", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * The index used by this constraint + */ + public final org.jooq.TableField INDEX_NAME = createField("INDEX_NAME", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField INVALID = createField("INVALID", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField VIEW_RELATED = createField("VIEW_RELATED", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * No further instances allowed + */ + private AllConstraints() { + super("ALL_CONSTRAINTS", org.jooq.util.oracle.sys.Sys.SYS); + } + + /** + * No further instances allowed + */ + private AllConstraints(java.lang.String alias) { + super(alias, org.jooq.util.oracle.sys.Sys.SYS, org.jooq.util.oracle.sys.tables.AllConstraints.ALL_CONSTRAINTS); + } + + @Override + public org.jooq.util.oracle.sys.tables.AllConstraints as(java.lang.String alias) { + return new org.jooq.util.oracle.sys.tables.AllConstraints(alias); + } +} diff --git a/jOOQ-meta/src/main/java/org/jooq/util/oracle/sys/tables/AllObjects.java b/jOOQ-meta/src/main/java/org/jooq/util/oracle/sys/tables/AllObjects.java new file mode 100644 index 00000000000..0695220ac43 --- /dev/null +++ b/jOOQ-meta/src/main/java/org/jooq/util/oracle/sys/tables/AllObjects.java @@ -0,0 +1,128 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.util.oracle.sys.tables; + +/** + * This class is generated by jOOQ. + * + * Objects accessible to the user + */ +@javax.annotation.Generated(value = {"http://www.jooq.org", "2.0.6"}, + comments = "This class is generated by jOOQ") +public class AllObjects extends org.jooq.impl.TableImpl { + + private static final long serialVersionUID = 137778950; + + /** + * The singleton instance of SYS.ALL_OBJECTS + */ + public static final org.jooq.util.oracle.sys.tables.AllObjects ALL_OBJECTS = new org.jooq.util.oracle.sys.tables.AllObjects(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.Record.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * Username of the owner of the object + */ + public final org.jooq.TableField OWNER = createField("OWNER", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * Name of the object + */ + public final org.jooq.TableField OBJECT_NAME = createField("OBJECT_NAME", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * Name of the sub-object (for example, partititon) + */ + public final org.jooq.TableField SUBOBJECT_NAME = createField("SUBOBJECT_NAME", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * Object number of the object + */ + public final org.jooq.TableField OBJECT_ID = createField("OBJECT_ID", org.jooq.impl.SQLDataType.NUMERIC, this); + + /** + * Object number of the segment which contains the object + */ + public final org.jooq.TableField DATA_OBJECT_ID = createField("DATA_OBJECT_ID", org.jooq.impl.SQLDataType.NUMERIC, this); + + /** + * Type of the object + */ + public final org.jooq.TableField OBJECT_TYPE = createField("OBJECT_TYPE", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * Timestamp for the creation of the object + */ + public final org.jooq.TableField CREATED = createField("CREATED", org.jooq.impl.SQLDataType.DATE, this); + + /** + * Timestamp for the last DDL change (including GRANT and REVOKE) to the object + */ + public final org.jooq.TableField LAST_DDL_TIME = createField("LAST_DDL_TIME", org.jooq.impl.SQLDataType.DATE, this); + + /** + * Timestamp for the specification of the object + */ + public final org.jooq.TableField TIMESTAMP = createField("TIMESTAMP", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * Status of the object + */ + public final org.jooq.TableField STATUS = createField("STATUS", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * Can the current session only see data that it placed in this object itself? + */ + public final org.jooq.TableField TEMPORARY = createField("TEMPORARY", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * Was the name of this object system generated? + */ + public final org.jooq.TableField GENERATED = createField("GENERATED", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * Is this a secondary object created as part of icreate for domain indexes? + */ + public final org.jooq.TableField SECONDARY = createField("SECONDARY", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * Namespace for the object + */ + public final org.jooq.TableField NAMESPACE = createField("NAMESPACE", org.jooq.impl.SQLDataType.NUMERIC, this); + + /** + * Name of the edition in which the object is actual + */ + public final org.jooq.TableField EDITION_NAME = createField("EDITION_NAME", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * No further instances allowed + */ + private AllObjects() { + super("ALL_OBJECTS", org.jooq.util.oracle.sys.Sys.SYS); + } + + /** + * No further instances allowed + */ + private AllObjects(java.lang.String alias) { + super(alias, org.jooq.util.oracle.sys.Sys.SYS, org.jooq.util.oracle.sys.tables.AllObjects.ALL_OBJECTS); + } + + @Override + public org.jooq.util.oracle.sys.tables.AllObjects as(java.lang.String alias) { + return new org.jooq.util.oracle.sys.tables.AllObjects(alias); + } +} diff --git a/jOOQ-meta/src/main/java/org/jooq/util/oracle/sys/tables/AllProcedures.java b/jOOQ-meta/src/main/java/org/jooq/util/oracle/sys/tables/AllProcedures.java new file mode 100644 index 00000000000..a374de9b920 --- /dev/null +++ b/jOOQ-meta/src/main/java/org/jooq/util/oracle/sys/tables/AllProcedures.java @@ -0,0 +1,128 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.util.oracle.sys.tables; + +/** + * This class is generated by jOOQ. + * + * Functions/procedures/packages/types/triggers available to the user + */ +@javax.annotation.Generated(value = {"http://www.jooq.org", "2.0.6"}, + comments = "This class is generated by jOOQ") +public class AllProcedures extends org.jooq.impl.TableImpl { + + private static final long serialVersionUID = 2039929463; + + /** + * The singleton instance of SYS.ALL_PROCEDURES + */ + public static final org.jooq.util.oracle.sys.tables.AllProcedures ALL_PROCEDURES = new org.jooq.util.oracle.sys.tables.AllProcedures(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.Record.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + */ + public final org.jooq.TableField OWNER = createField("OWNER", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * Name of the object: top level function/procedure/package/type/trigger name + */ + public final org.jooq.TableField OBJECT_NAME = createField("OBJECT_NAME", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * Name of the package or type subprogram + */ + public final org.jooq.TableField PROCEDURE_NAME = createField("PROCEDURE_NAME", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * Object number of the object + */ + public final org.jooq.TableField OBJECT_ID = createField("OBJECT_ID", org.jooq.impl.SQLDataType.NUMERIC, this); + + /** + * Unique sub-program identifier + */ + public final org.jooq.TableField SUBPROGRAM_ID = createField("SUBPROGRAM_ID", org.jooq.impl.SQLDataType.NUMERIC, this); + + /** + * Overload unique identifier + */ + public final org.jooq.TableField OVERLOAD = createField("OVERLOAD", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * The typename of the object + */ + public final org.jooq.TableField OBJECT_TYPE = createField("OBJECT_TYPE", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * Is it an aggregate function ? + */ + public final org.jooq.TableField AGGREGATE = createField("AGGREGATE", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * Is it a pipelined table function ? + */ + public final org.jooq.TableField PIPELINED = createField("PIPELINED", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * Name of the owner of the implementation type (if any) + */ + public final org.jooq.TableField IMPLTYPEOWNER = createField("IMPLTYPEOWNER", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * Name of the implementation type (if any) + */ + public final org.jooq.TableField IMPLTYPENAME = createField("IMPLTYPENAME", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * Is the procedure parallel enabled ? + */ + public final org.jooq.TableField PARALLEL = createField("PARALLEL", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField INTERFACE = createField("INTERFACE", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField DETERMINISTIC = createField("DETERMINISTIC", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField AUTHID = createField("AUTHID", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * No further instances allowed + */ + private AllProcedures() { + super("ALL_PROCEDURES", org.jooq.util.oracle.sys.Sys.SYS); + } + + /** + * No further instances allowed + */ + private AllProcedures(java.lang.String alias) { + super(alias, org.jooq.util.oracle.sys.Sys.SYS, org.jooq.util.oracle.sys.tables.AllProcedures.ALL_PROCEDURES); + } + + @Override + public org.jooq.util.oracle.sys.tables.AllProcedures as(java.lang.String alias) { + return new org.jooq.util.oracle.sys.tables.AllProcedures(alias); + } +} diff --git a/jOOQ-meta/src/main/java/org/jooq/util/oracle/sys/tables/AllSequences.java b/jOOQ-meta/src/main/java/org/jooq/util/oracle/sys/tables/AllSequences.java new file mode 100644 index 00000000000..3ffbde4cb2a --- /dev/null +++ b/jOOQ-meta/src/main/java/org/jooq/util/oracle/sys/tables/AllSequences.java @@ -0,0 +1,98 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.util.oracle.sys.tables; + +/** + * This class is generated by jOOQ. + * + * Description of SEQUENCEs accessible to the user + */ +@javax.annotation.Generated(value = {"http://www.jooq.org", "2.0.6"}, + comments = "This class is generated by jOOQ") +public class AllSequences extends org.jooq.impl.TableImpl { + + private static final long serialVersionUID = -1227013911; + + /** + * The singleton instance of SYS.ALL_SEQUENCES + */ + public static final org.jooq.util.oracle.sys.tables.AllSequences ALL_SEQUENCES = new org.jooq.util.oracle.sys.tables.AllSequences(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.Record.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * Name of the owner of the sequence + */ + public final org.jooq.TableField SEQUENCE_OWNER = createField("SEQUENCE_OWNER", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * SEQUENCE name + */ + public final org.jooq.TableField SEQUENCE_NAME = createField("SEQUENCE_NAME", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * Minimum value of the sequence + */ + public final org.jooq.TableField MIN_VALUE = createField("MIN_VALUE", org.jooq.impl.SQLDataType.NUMERIC, this); + + /** + * Maximum value of the sequence + */ + public final org.jooq.TableField MAX_VALUE = createField("MAX_VALUE", org.jooq.impl.SQLDataType.NUMERIC, this); + + /** + * Value by which sequence is incremented + */ + public final org.jooq.TableField INCREMENT_BY = createField("INCREMENT_BY", org.jooq.impl.SQLDataType.NUMERIC, this); + + /** + * Does sequence wrap around on reaching limit? + */ + public final org.jooq.TableField CYCLE_FLAG = createField("CYCLE_FLAG", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * Are sequence numbers generated in order? + */ + public final org.jooq.TableField ORDER_FLAG = createField("ORDER_FLAG", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * Number of sequence numbers to cache + */ + public final org.jooq.TableField CACHE_SIZE = createField("CACHE_SIZE", org.jooq.impl.SQLDataType.NUMERIC, this); + + /** + * Last sequence number written to disk + */ + public final org.jooq.TableField LAST_NUMBER = createField("LAST_NUMBER", org.jooq.impl.SQLDataType.NUMERIC, this); + + /** + * No further instances allowed + */ + private AllSequences() { + super("ALL_SEQUENCES", org.jooq.util.oracle.sys.Sys.SYS); + } + + /** + * No further instances allowed + */ + private AllSequences(java.lang.String alias) { + super(alias, org.jooq.util.oracle.sys.Sys.SYS, org.jooq.util.oracle.sys.tables.AllSequences.ALL_SEQUENCES); + } + + @Override + public org.jooq.util.oracle.sys.tables.AllSequences as(java.lang.String alias) { + return new org.jooq.util.oracle.sys.tables.AllSequences(alias); + } +} diff --git a/jOOQ-meta/src/main/java/org/jooq/util/oracle/sys/tables/AllTabCols.java b/jOOQ-meta/src/main/java/org/jooq/util/oracle/sys/tables/AllTabCols.java new file mode 100644 index 00000000000..e7eb24d1f08 --- /dev/null +++ b/jOOQ-meta/src/main/java/org/jooq/util/oracle/sys/tables/AllTabCols.java @@ -0,0 +1,233 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.util.oracle.sys.tables; + +/** + * This class is generated by jOOQ. + * + * Columns of user's tables, views and clusters + */ +@javax.annotation.Generated(value = {"http://www.jooq.org", "2.0.6"}, + comments = "This class is generated by jOOQ") +public class AllTabCols extends org.jooq.impl.TableImpl { + + private static final long serialVersionUID = -434173049; + + /** + * The singleton instance of SYS.ALL_TAB_COLS + */ + public static final org.jooq.util.oracle.sys.tables.AllTabCols ALL_TAB_COLS = new org.jooq.util.oracle.sys.tables.AllTabCols(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.Record.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + */ + public final org.jooq.TableField OWNER = createField("OWNER", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * Table, view or cluster name + */ + public final org.jooq.TableField TABLE_NAME = createField("TABLE_NAME", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * Column name + */ + public final org.jooq.TableField COLUMN_NAME = createField("COLUMN_NAME", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * Datatype of the column + */ + public final org.jooq.TableField DATA_TYPE = createField("DATA_TYPE", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * Datatype modifier of the column + */ + public final org.jooq.TableField DATA_TYPE_MOD = createField("DATA_TYPE_MOD", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * Owner of the datatype of the column + */ + public final org.jooq.TableField DATA_TYPE_OWNER = createField("DATA_TYPE_OWNER", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * Length of the column in bytes + */ + public final org.jooq.TableField DATA_LENGTH = createField("DATA_LENGTH", org.jooq.impl.SQLDataType.NUMERIC, this); + + /** + * Length: decimal digits (NUMBER) or binary digits (FLOAT) + */ + public final org.jooq.TableField DATA_PRECISION = createField("DATA_PRECISION", org.jooq.impl.SQLDataType.NUMERIC, this); + + /** + * Digits to right of decimal point in a number + */ + public final org.jooq.TableField DATA_SCALE = createField("DATA_SCALE", org.jooq.impl.SQLDataType.NUMERIC, this); + + /** + * Does column allow NULL values? + */ + public final org.jooq.TableField NULLABLE = createField("NULLABLE", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * Sequence number of the column as created + */ + public final org.jooq.TableField COLUMN_ID = createField("COLUMN_ID", org.jooq.impl.SQLDataType.NUMERIC, this); + + /** + * Length of default value for the column + */ + public final org.jooq.TableField DEFAULT_LENGTH = createField("DEFAULT_LENGTH", org.jooq.impl.SQLDataType.NUMERIC, this); + + /** + * Default value for the column + */ + public final org.jooq.TableField DATA_DEFAULT = createField("DATA_DEFAULT", org.jooq.impl.SQLDataType.CLOB, this); + + /** + * The number of distinct values in the column + */ + public final org.jooq.TableField NUM_DISTINCT = createField("NUM_DISTINCT", org.jooq.impl.SQLDataType.NUMERIC, this); + + /** + * The low value in the column + */ + public final org.jooq.TableField LOW_VALUE = createField("LOW_VALUE", org.jooq.impl.SQLDataType.BLOB, this); + + /** + * The high value in the column + */ + public final org.jooq.TableField HIGH_VALUE = createField("HIGH_VALUE", org.jooq.impl.SQLDataType.BLOB, this); + + /** + * The density of the column + */ + public final org.jooq.TableField DENSITY = createField("DENSITY", org.jooq.impl.SQLDataType.NUMERIC, this); + + /** + * The number of nulls in the column + */ + public final org.jooq.TableField NUM_NULLS = createField("NUM_NULLS", org.jooq.impl.SQLDataType.NUMERIC, this); + + /** + * The number of buckets in histogram for the column + */ + public final org.jooq.TableField NUM_BUCKETS = createField("NUM_BUCKETS", org.jooq.impl.SQLDataType.NUMERIC, this); + + /** + * The date of the most recent time this column was analyzed + */ + public final org.jooq.TableField LAST_ANALYZED = createField("LAST_ANALYZED", org.jooq.impl.SQLDataType.DATE, this); + + /** + * The sample size used in analyzing this column + */ + public final org.jooq.TableField SAMPLE_SIZE = createField("SAMPLE_SIZE", org.jooq.impl.SQLDataType.NUMERIC, this); + + /** + * Character set name + */ + public final org.jooq.TableField CHARACTER_SET_NAME = createField("CHARACTER_SET_NAME", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * Declaration length of character type column + */ + public final org.jooq.TableField CHAR_COL_DECL_LENGTH = createField("CHAR_COL_DECL_LENGTH", org.jooq.impl.SQLDataType.NUMERIC, this); + + /** + * Are the statistics calculated without merging underlying partitions? + */ + public final org.jooq.TableField GLOBAL_STATS = createField("GLOBAL_STATS", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * Were the statistics entered directly by the user? + */ + public final org.jooq.TableField USER_STATS = createField("USER_STATS", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * The average length of the column in bytes + */ + public final org.jooq.TableField AVG_COL_LEN = createField("AVG_COL_LEN", org.jooq.impl.SQLDataType.NUMERIC, this); + + /** + * The maximum length of the column in characters + */ + public final org.jooq.TableField CHAR_LENGTH = createField("CHAR_LENGTH", org.jooq.impl.SQLDataType.NUMERIC, this); + + /** + * C if maximum length is specified in characters, B if in bytes + */ + public final org.jooq.TableField CHAR_USED = createField("CHAR_USED", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * Is column data in 8.0 image format? + */ + public final org.jooq.TableField V80_FMT_IMAGE = createField("V80_FMT_IMAGE", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * Has column data been upgraded to the latest type version format? + */ + public final org.jooq.TableField DATA_UPGRADED = createField("DATA_UPGRADED", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * Is this a hidden column? + */ + public final org.jooq.TableField HIDDEN_COLUMN = createField("HIDDEN_COLUMN", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * Is this a virtual column? + */ + public final org.jooq.TableField VIRTUAL_COLUMN = createField("VIRTUAL_COLUMN", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * Sequence number of the column in the segment + */ + public final org.jooq.TableField SEGMENT_COLUMN_ID = createField("SEGMENT_COLUMN_ID", org.jooq.impl.SQLDataType.NUMERIC, this); + + /** + * Internal sequence number of the column + */ + public final org.jooq.TableField INTERNAL_COLUMN_ID = createField("INTERNAL_COLUMN_ID", org.jooq.impl.SQLDataType.NUMERIC, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField HISTOGRAM = createField("HISTOGRAM", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * Qualified column name + */ + public final org.jooq.TableField QUALIFIED_COL_NAME = createField("QUALIFIED_COL_NAME", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * No further instances allowed + */ + private AllTabCols() { + super("ALL_TAB_COLS", org.jooq.util.oracle.sys.Sys.SYS); + } + + /** + * No further instances allowed + */ + private AllTabCols(java.lang.String alias) { + super(alias, org.jooq.util.oracle.sys.Sys.SYS, org.jooq.util.oracle.sys.tables.AllTabCols.ALL_TAB_COLS); + } + + @Override + public org.jooq.util.oracle.sys.tables.AllTabCols as(java.lang.String alias) { + return new org.jooq.util.oracle.sys.tables.AllTabCols(alias); + } +} diff --git a/jOOQ-meta/src/main/java/org/jooq/util/oracle/sys/tables/AllTabComments.java b/jOOQ-meta/src/main/java/org/jooq/util/oracle/sys/tables/AllTabComments.java new file mode 100644 index 00000000000..a3fc42340c9 --- /dev/null +++ b/jOOQ-meta/src/main/java/org/jooq/util/oracle/sys/tables/AllTabComments.java @@ -0,0 +1,73 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.util.oracle.sys.tables; + +/** + * This class is generated by jOOQ. + * + * Comments on tables and views accessible to the user + */ +@javax.annotation.Generated(value = {"http://www.jooq.org", "2.0.6"}, + comments = "This class is generated by jOOQ") +public class AllTabComments extends org.jooq.impl.TableImpl { + + private static final long serialVersionUID = 2106465; + + /** + * The singleton instance of SYS.ALL_TAB_COMMENTS + */ + public static final org.jooq.util.oracle.sys.tables.AllTabComments ALL_TAB_COMMENTS = new org.jooq.util.oracle.sys.tables.AllTabComments(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.Record.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * Owner of the object + */ + public final org.jooq.TableField OWNER = createField("OWNER", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * Name of the object + */ + public final org.jooq.TableField TABLE_NAME = createField("TABLE_NAME", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * Type of the object + */ + public final org.jooq.TableField TABLE_TYPE = createField("TABLE_TYPE", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * Comment on the object + */ + public final org.jooq.TableField COMMENTS = createField("COMMENTS", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * No further instances allowed + */ + private AllTabComments() { + super("ALL_TAB_COMMENTS", org.jooq.util.oracle.sys.Sys.SYS); + } + + /** + * No further instances allowed + */ + private AllTabComments(java.lang.String alias) { + super(alias, org.jooq.util.oracle.sys.Sys.SYS, org.jooq.util.oracle.sys.tables.AllTabComments.ALL_TAB_COMMENTS); + } + + @Override + public org.jooq.util.oracle.sys.tables.AllTabComments as(java.lang.String alias) { + return new org.jooq.util.oracle.sys.tables.AllTabComments(alias); + } +} diff --git a/jOOQ-meta/src/main/java/org/jooq/util/oracle/sys/tables/AllTypeAttrs.java b/jOOQ-meta/src/main/java/org/jooq/util/oracle/sys/tables/AllTypeAttrs.java new file mode 100644 index 00000000000..893b3fec46c --- /dev/null +++ b/jOOQ-meta/src/main/java/org/jooq/util/oracle/sys/tables/AllTypeAttrs.java @@ -0,0 +1,121 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.util.oracle.sys.tables; + +/** + * This class is generated by jOOQ. + * + * Description of attributes of types accessible to the user + */ +@javax.annotation.Generated(value = {"http://www.jooq.org", "2.0.6"}, + comments = "This class is generated by jOOQ") +public class AllTypeAttrs extends org.jooq.impl.TableImpl { + + private static final long serialVersionUID = 1378271050; + + /** + * The singleton instance of SYS.ALL_TYPE_ATTRS + */ + public static final org.jooq.util.oracle.sys.tables.AllTypeAttrs ALL_TYPE_ATTRS = new org.jooq.util.oracle.sys.tables.AllTypeAttrs(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.Record.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * Owner of the type + */ + public final org.jooq.TableField OWNER = createField("OWNER", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * Name of the type + */ + public final org.jooq.TableField TYPE_NAME = createField("TYPE_NAME", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * Name of the attribute + */ + public final org.jooq.TableField ATTR_NAME = createField("ATTR_NAME", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * Type modifier of the attribute + */ + public final org.jooq.TableField ATTR_TYPE_MOD = createField("ATTR_TYPE_MOD", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * Owner of the type of the attribute + */ + public final org.jooq.TableField ATTR_TYPE_OWNER = createField("ATTR_TYPE_OWNER", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * Name of the type of the attribute + */ + public final org.jooq.TableField ATTR_TYPE_NAME = createField("ATTR_TYPE_NAME", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * Length of the CHAR attribute or maximum length of the VARCHAR +or VARCHAR2 attribute + */ + public final org.jooq.TableField LENGTH = createField("LENGTH", org.jooq.impl.SQLDataType.NUMERIC, this); + + /** + * Decimal precision of the NUMBER or DECIMAL attribute or +binary precision of the FLOAT attribute + */ + public final org.jooq.TableField PRECISION = createField("PRECISION", org.jooq.impl.SQLDataType.NUMERIC, this); + + /** + * Scale of the NUMBER or DECIMAL attribute + */ + public final org.jooq.TableField SCALE = createField("SCALE", org.jooq.impl.SQLDataType.NUMERIC, this); + + /** + * Character set name of the attribute + */ + public final org.jooq.TableField CHARACTER_SET_NAME = createField("CHARACTER_SET_NAME", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * Syntactical order number or position of the attribute as specified in the +type specification or CREATE TYPE statement (not to be used as ID number) + */ + public final org.jooq.TableField ATTR_NO = createField("ATTR_NO", org.jooq.impl.SQLDataType.NUMERIC, this); + + /** + * Is the attribute inherited from the supertype ? + */ + public final org.jooq.TableField INHERITED = createField("INHERITED", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * C if the width was specified in characters, B if in bytes + */ + public final org.jooq.TableField CHAR_USED = createField("CHAR_USED", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * No further instances allowed + */ + private AllTypeAttrs() { + super("ALL_TYPE_ATTRS", org.jooq.util.oracle.sys.Sys.SYS); + } + + /** + * No further instances allowed + */ + private AllTypeAttrs(java.lang.String alias) { + super(alias, org.jooq.util.oracle.sys.Sys.SYS, org.jooq.util.oracle.sys.tables.AllTypeAttrs.ALL_TYPE_ATTRS); + } + + @Override + public org.jooq.util.oracle.sys.tables.AllTypeAttrs as(java.lang.String alias) { + return new org.jooq.util.oracle.sys.tables.AllTypeAttrs(alias); + } +} diff --git a/jOOQ-meta/src/main/java/org/jooq/util/oracle/sys/tables/AllTypes.java b/jOOQ-meta/src/main/java/org/jooq/util/oracle/sys/tables/AllTypes.java new file mode 100644 index 00000000000..e4691fa0367 --- /dev/null +++ b/jOOQ-meta/src/main/java/org/jooq/util/oracle/sys/tables/AllTypes.java @@ -0,0 +1,128 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.util.oracle.sys.tables; + +/** + * This class is generated by jOOQ. + * + * Description of types accessible to the user + */ +@javax.annotation.Generated(value = {"http://www.jooq.org", "2.0.6"}, + comments = "This class is generated by jOOQ") +public class AllTypes extends org.jooq.impl.TableImpl { + + private static final long serialVersionUID = 1461505327; + + /** + * The singleton instance of SYS.ALL_TYPES + */ + public static final org.jooq.util.oracle.sys.tables.AllTypes ALL_TYPES = new org.jooq.util.oracle.sys.tables.AllTypes(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.Record.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * Owner of the type + */ + public final org.jooq.TableField OWNER = createField("OWNER", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * Name of the type + */ + public final org.jooq.TableField TYPE_NAME = createField("TYPE_NAME", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * Object identifier (OID) of the type + */ + public final org.jooq.TableField TYPE_OID = createField("TYPE_OID", org.jooq.impl.SQLDataType.BLOB, this); + + /** + * Typecode of the type + */ + public final org.jooq.TableField TYPECODE = createField("TYPECODE", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * Number of attributes in the type + */ + public final org.jooq.TableField ATTRIBUTES = createField("ATTRIBUTES", org.jooq.impl.SQLDataType.NUMERIC, this); + + /** + * Number of methods in the type + */ + public final org.jooq.TableField METHODS = createField("METHODS", org.jooq.impl.SQLDataType.NUMERIC, this); + + /** + * Is the type a predefined type? + */ + public final org.jooq.TableField PREDEFINED = createField("PREDEFINED", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * Is the type an incomplete type? + */ + public final org.jooq.TableField INCOMPLETE = createField("INCOMPLETE", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * Is the type a final type? + */ + public final org.jooq.TableField FINAL = createField("FINAL", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * Is the type an instantiable type? + */ + public final org.jooq.TableField INSTANTIABLE = createField("INSTANTIABLE", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * Owner of the supertype (null if type is not a subtype) + */ + public final org.jooq.TableField SUPERTYPE_OWNER = createField("SUPERTYPE_OWNER", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * Name of the supertype (null if type is not a subtype) + */ + public final org.jooq.TableField SUPERTYPE_NAME = createField("SUPERTYPE_NAME", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * Number of local (not inherited) attributes (if any) in the subtype + */ + public final org.jooq.TableField LOCAL_ATTRIBUTES = createField("LOCAL_ATTRIBUTES", org.jooq.impl.SQLDataType.NUMERIC, this); + + /** + * Number of local (not inherited) methods (if any) in the subtype + */ + public final org.jooq.TableField LOCAL_METHODS = createField("LOCAL_METHODS", org.jooq.impl.SQLDataType.NUMERIC, this); + + /** + * Type id value of the type + */ + public final org.jooq.TableField TYPEID = createField("TYPEID", org.jooq.impl.SQLDataType.BLOB, this); + + /** + * No further instances allowed + */ + private AllTypes() { + super("ALL_TYPES", org.jooq.util.oracle.sys.Sys.SYS); + } + + /** + * No further instances allowed + */ + private AllTypes(java.lang.String alias) { + super(alias, org.jooq.util.oracle.sys.Sys.SYS, org.jooq.util.oracle.sys.tables.AllTypes.ALL_TYPES); + } + + @Override + public org.jooq.util.oracle.sys.tables.AllTypes as(java.lang.String alias) { + return new org.jooq.util.oracle.sys.tables.AllTypes(alias); + } +} diff --git a/jOOQ-meta/src/main/java/org/jooq/util/oracle/sys/udt/records/OraMiningNumberNtRecord.java b/jOOQ-meta/src/main/java/org/jooq/util/oracle/sys/udt/records/OraMiningNumberNtRecord.java new file mode 100644 index 00000000000..b91257c7cbd --- /dev/null +++ b/jOOQ-meta/src/main/java/org/jooq/util/oracle/sys/udt/records/OraMiningNumberNtRecord.java @@ -0,0 +1,28 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.util.oracle.sys.udt.records; + +/** + * This class is generated by jOOQ. + */ +@javax.annotation.Generated(value = {"http://www.jooq.org", "2.0.6"}, + comments = "This class is generated by jOOQ") +public class OraMiningNumberNtRecord extends org.jooq.impl.ArrayRecordImpl { + + private static final long serialVersionUID = 1398345589; + + public OraMiningNumberNtRecord(org.jooq.Configuration configuration) { + super(org.jooq.util.oracle.sys.Sys.SYS, "ORA_MINING_NUMBER_NT", org.jooq.impl.SQLDataType.NUMERIC, configuration); + } + + public OraMiningNumberNtRecord(org.jooq.Configuration configuration, java.math.BigDecimal... array) { + this(configuration); + set(array); + } + + public OraMiningNumberNtRecord(org.jooq.Configuration configuration, java.util.List list) { + this(configuration); + setList(list); + } +} diff --git a/jOOQ-meta/src/main/java/org/jooq/util/oracle/sys/udt/records/OraMiningVarchar2NtRecord.java b/jOOQ-meta/src/main/java/org/jooq/util/oracle/sys/udt/records/OraMiningVarchar2NtRecord.java new file mode 100644 index 00000000000..b22343e4c95 --- /dev/null +++ b/jOOQ-meta/src/main/java/org/jooq/util/oracle/sys/udt/records/OraMiningVarchar2NtRecord.java @@ -0,0 +1,28 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.util.oracle.sys.udt.records; + +/** + * This class is generated by jOOQ. + */ +@javax.annotation.Generated(value = {"http://www.jooq.org", "2.0.6"}, + comments = "This class is generated by jOOQ") +public class OraMiningVarchar2NtRecord extends org.jooq.impl.ArrayRecordImpl { + + private static final long serialVersionUID = -155688449; + + public OraMiningVarchar2NtRecord(org.jooq.Configuration configuration) { + super(org.jooq.util.oracle.sys.Sys.SYS, "ORA_MINING_VARCHAR2_NT", org.jooq.impl.SQLDataType.VARCHAR, configuration); + } + + public OraMiningVarchar2NtRecord(org.jooq.Configuration configuration, java.lang.String... array) { + this(configuration); + set(array); + } + + public OraMiningVarchar2NtRecord(org.jooq.Configuration configuration, java.util.List list) { + this(configuration); + setList(list); + } +} diff --git a/jOOQ-meta/src/main/java/org/jooq/util/postgres/PostgresDatabase.java b/jOOQ-meta/src/main/java/org/jooq/util/postgres/PostgresDatabase.java new file mode 100644 index 00000000000..acfb43ac7fa --- /dev/null +++ b/jOOQ-meta/src/main/java/org/jooq/util/postgres/PostgresDatabase.java @@ -0,0 +1,374 @@ +/** + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com + * All rights reserved. + * + * This software is licensed to you under the Apache License, Version 2.0 + * (the "License"); You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * 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 "jOOQ" 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 COPYRIGHT OWNER 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. + */ + +package org.jooq.util.postgres; + +import static org.jooq.impl.Factory.count; +import static org.jooq.impl.Factory.decode; +import static org.jooq.impl.Factory.exists; +import static org.jooq.impl.Factory.upper; +import static org.jooq.impl.Factory.val; +import static org.jooq.util.postgres.information_schema.Tables.ATTRIBUTES; +import static org.jooq.util.postgres.information_schema.Tables.KEY_COLUMN_USAGE; +import static org.jooq.util.postgres.information_schema.Tables.PARAMETERS; +import static org.jooq.util.postgres.information_schema.Tables.REFERENTIAL_CONSTRAINTS; +import static org.jooq.util.postgres.information_schema.Tables.ROUTINES; +import static org.jooq.util.postgres.information_schema.Tables.SEQUENCES; +import static org.jooq.util.postgres.information_schema.Tables.TABLES; +import static org.jooq.util.postgres.information_schema.Tables.TABLE_CONSTRAINTS; +import static org.jooq.util.postgres.pg_catalog.Tables.PG_ENUM; +import static org.jooq.util.postgres.pg_catalog.Tables.PG_NAMESPACE; +import static org.jooq.util.postgres.pg_catalog.Tables.PG_TYPE; + +import java.sql.SQLException; +import java.util.ArrayList; +import java.util.List; + +import org.jooq.Record; +import org.jooq.Result; +import org.jooq.impl.Factory; +import org.jooq.util.AbstractDatabase; +import org.jooq.util.ArrayDefinition; +import org.jooq.util.ColumnDefinition; +import org.jooq.util.DataTypeDefinition; +import org.jooq.util.DefaultDataTypeDefinition; +import org.jooq.util.DefaultEnumDefinition; +import org.jooq.util.DefaultRelations; +import org.jooq.util.DefaultSequenceDefinition; +import org.jooq.util.EnumDefinition; +import org.jooq.util.PackageDefinition; +import org.jooq.util.RoutineDefinition; +import org.jooq.util.SchemaDefinition; +import org.jooq.util.SequenceDefinition; +import org.jooq.util.TableDefinition; +import org.jooq.util.UDTDefinition; +import org.jooq.util.hsqldb.HSQLDBDatabase; +import org.jooq.util.postgres.information_schema.InformationSchemaFactory; +import org.jooq.util.postgres.information_schema.tables.Routines; + +/** + * Postgres uses the ANSI default INFORMATION_SCHEMA, but unfortunately ships + * with a non-capitalised version of it: information_schema. Hence + * the {@link HSQLDBDatabase} is not used here. + * + * @author Lukas Eder + */ +public class PostgresDatabase extends AbstractDatabase { + + @Override + protected void loadPrimaryKeys(DefaultRelations relations) throws SQLException { + for (Record record : fetchKeys("PRIMARY KEY")) { + SchemaDefinition schema = getSchema(record.getValue(KEY_COLUMN_USAGE.TABLE_SCHEMA)); + String key = record.getValue(KEY_COLUMN_USAGE.CONSTRAINT_NAME); + String tableName = record.getValue(KEY_COLUMN_USAGE.TABLE_NAME); + String columnName = record.getValue(KEY_COLUMN_USAGE.COLUMN_NAME); + + TableDefinition table = getTable(schema, tableName); + if (table != null) { + relations.addPrimaryKey(key, table.getColumn(columnName)); + } + } + } + + @Override + protected void loadUniqueKeys(DefaultRelations relations) throws SQLException { + for (Record record : fetchKeys("UNIQUE")) { + SchemaDefinition schema = getSchema(record.getValue(KEY_COLUMN_USAGE.TABLE_SCHEMA)); + String key = record.getValue(KEY_COLUMN_USAGE.CONSTRAINT_NAME); + String tableName = record.getValue(KEY_COLUMN_USAGE.TABLE_NAME); + String columnName = record.getValue(KEY_COLUMN_USAGE.COLUMN_NAME); + + TableDefinition table = getTable(schema, tableName); + if (table != null) { + relations.addUniqueKey(key, table.getColumn(columnName)); + } + } + } + + private List fetchKeys(String constraintType) { + return create() + .select( + KEY_COLUMN_USAGE.CONSTRAINT_NAME, + KEY_COLUMN_USAGE.TABLE_SCHEMA, + KEY_COLUMN_USAGE.TABLE_NAME, + KEY_COLUMN_USAGE.COLUMN_NAME) + .from(TABLE_CONSTRAINTS) + .join(KEY_COLUMN_USAGE) + .on(TABLE_CONSTRAINTS.CONSTRAINT_SCHEMA.equal(KEY_COLUMN_USAGE.CONSTRAINT_SCHEMA)) + .and(TABLE_CONSTRAINTS.CONSTRAINT_NAME.equal(KEY_COLUMN_USAGE.CONSTRAINT_NAME)) + .where(TABLE_CONSTRAINTS.CONSTRAINT_TYPE.equal(constraintType)) + .and(TABLE_CONSTRAINTS.TABLE_SCHEMA.in(getInputSchemata())) + .orderBy( + KEY_COLUMN_USAGE.TABLE_SCHEMA.asc(), + KEY_COLUMN_USAGE.TABLE_NAME.asc(), + KEY_COLUMN_USAGE.CONSTRAINT_NAME.asc(), + KEY_COLUMN_USAGE.ORDINAL_POSITION.asc()) + .fetch(); + } + + @Override + protected void loadForeignKeys(DefaultRelations relations) throws SQLException { + Result result = create() + .select( + REFERENTIAL_CONSTRAINTS.UNIQUE_CONSTRAINT_NAME, + REFERENTIAL_CONSTRAINTS.UNIQUE_CONSTRAINT_SCHEMA, + KEY_COLUMN_USAGE.CONSTRAINT_NAME, + KEY_COLUMN_USAGE.TABLE_SCHEMA, + KEY_COLUMN_USAGE.TABLE_NAME, + KEY_COLUMN_USAGE.COLUMN_NAME) + .from(REFERENTIAL_CONSTRAINTS) + .join(KEY_COLUMN_USAGE) + .on(KEY_COLUMN_USAGE.CONSTRAINT_SCHEMA.equal(REFERENTIAL_CONSTRAINTS.CONSTRAINT_SCHEMA)) + .and(KEY_COLUMN_USAGE.CONSTRAINT_NAME.equal(REFERENTIAL_CONSTRAINTS.CONSTRAINT_NAME)) + .where(KEY_COLUMN_USAGE.TABLE_SCHEMA.in(getInputSchemata())) + .orderBy( + KEY_COLUMN_USAGE.TABLE_SCHEMA.asc(), + KEY_COLUMN_USAGE.TABLE_NAME.asc(), + KEY_COLUMN_USAGE.CONSTRAINT_NAME.asc(), + KEY_COLUMN_USAGE.ORDINAL_POSITION.asc()) + .fetch(); + + for (Record record : result) { + SchemaDefinition foreignKeySchema = getSchema(record.getValue(KEY_COLUMN_USAGE.TABLE_SCHEMA)); + SchemaDefinition uniqueKeySchema = getSchema(record.getValue(REFERENTIAL_CONSTRAINTS.UNIQUE_CONSTRAINT_SCHEMA)); + + String foreignKey = record.getValue(KEY_COLUMN_USAGE.CONSTRAINT_NAME); + String foreignKeyTable = record.getValue(KEY_COLUMN_USAGE.TABLE_NAME); + String foreignKeyColumn = record.getValue(KEY_COLUMN_USAGE.COLUMN_NAME); + String uniqueKey = record.getValue(REFERENTIAL_CONSTRAINTS.UNIQUE_CONSTRAINT_NAME); + + TableDefinition referencingTable = getTable(foreignKeySchema, foreignKeyTable); + + if (referencingTable != null) { + + // [#986] Add the table name as a namespace prefix to the key + // name. In Postgres, foreign key names are only unique per table + ColumnDefinition referencingColumn = referencingTable.getColumn(foreignKeyColumn); + relations.addForeignKey(foreignKeyTable + "__" + foreignKey, uniqueKey, referencingColumn, uniqueKeySchema); + } + } + } + + @Override + protected List getTables0() throws SQLException { + List result = new ArrayList(); + + for (Record record : create() + .select( + TABLES.TABLE_SCHEMA, + TABLES.TABLE_NAME) + .from(TABLES) + .where(TABLES.TABLE_SCHEMA.in(getInputSchemata())) + .orderBy( + TABLES.TABLE_SCHEMA, + TABLES.TABLE_NAME) + .fetch()) { + + SchemaDefinition schema = getSchema(record.getValue(TABLES.TABLE_SCHEMA)); + String name = record.getValue(TABLES.TABLE_NAME); + String comment = ""; + + result.add(new PostgresTableDefinition(schema, name, comment)); + } + + return result; + } + + @Override + protected List getSequences0() throws SQLException { + List result = new ArrayList(); + + for (Record record : create() + .select( + SEQUENCES.SEQUENCE_SCHEMA, + SEQUENCES.SEQUENCE_NAME, + SEQUENCES.DATA_TYPE, + SEQUENCES.NUMERIC_PRECISION, + SEQUENCES.NUMERIC_SCALE) + .from(SEQUENCES) + .where(SEQUENCES.SEQUENCE_SCHEMA.in(getInputSchemata())) + .orderBy( + SEQUENCES.SEQUENCE_SCHEMA, + SEQUENCES.SEQUENCE_NAME) + .fetch()) { + + SchemaDefinition schema = getSchema(record.getValue(SEQUENCES.SEQUENCE_SCHEMA)); + + DataTypeDefinition type = new DefaultDataTypeDefinition( + this, schema, + record.getValue(SEQUENCES.DATA_TYPE), + 0, + record.getValue(SEQUENCES.NUMERIC_PRECISION), + record.getValue(SEQUENCES.NUMERIC_SCALE)); + + result.add(new DefaultSequenceDefinition(schema, record.getValue(SEQUENCES.SEQUENCE_NAME), type)); + } + + return result; + } + + @Override + protected List getEnums0() throws SQLException { + List result = new ArrayList(); + + Result records = create() + .select( + PG_NAMESPACE.NSPNAME, + PG_TYPE.TYPNAME, + PG_ENUM.ENUMLABEL) + .from(PG_ENUM) + .join(PG_TYPE).on("pg_enum.enumtypid = pg_type.oid") + .join(PG_NAMESPACE).on("pg_type.typnamespace = pg_namespace.oid") + .where(PG_NAMESPACE.NSPNAME.in(getInputSchemata())) + .orderBy( + PG_NAMESPACE.NSPNAME, + PG_TYPE.TYPNAME, + PG_ENUM.ENUMLABEL) + .fetch(); + + DefaultEnumDefinition definition = null; + for (Record record : records) { + SchemaDefinition schema = getSchema(record.getValue(PG_NAMESPACE.NSPNAME)); + String typeName = String.valueOf(record.getValue(PG_TYPE.TYPNAME)); + + if (definition == null || !definition.getName().equals(typeName)) { + definition = new DefaultEnumDefinition(schema, typeName, null); + result.add(definition); + } + + definition.addLiteral(String.valueOf(record.getValue(PG_ENUM.ENUMLABEL))); + } + + return result; + } + + @Override + protected List getUDTs0() throws SQLException { + List result = new ArrayList(); + + for (Record record : create() + .selectDistinct( + ATTRIBUTES.UDT_SCHEMA, + ATTRIBUTES.UDT_NAME) + .from(ATTRIBUTES) + .where(ATTRIBUTES.UDT_SCHEMA.in(getInputSchemata())) + .orderBy( + ATTRIBUTES.UDT_SCHEMA, + ATTRIBUTES.UDT_NAME) + .fetch()) { + + SchemaDefinition schema = getSchema(record.getValue(ATTRIBUTES.UDT_SCHEMA)); + String name = record.getValue(ATTRIBUTES.UDT_NAME); + + result.add(new PostgresUDTDefinition(schema, name, null)); + } + + return result; + } + + @Override + protected List getArrays0() throws SQLException { + List result = new ArrayList(); + return result; + } + + @Override + protected List getRoutines0() throws SQLException { + List result = new ArrayList(); + + Routines r1 = ROUTINES.as("r1"); + Routines r2 = ROUTINES.as("r2"); + + for (Record record : create().select( + r1.ROUTINE_SCHEMA, + r1.ROUTINE_NAME, + r1.SPECIFIC_NAME, + + // Ignore the data type when there is at least one out parameter + decode() + .when(exists(create() + .selectOne() + .from(PARAMETERS) + .where(PARAMETERS.SPECIFIC_SCHEMA.equal(r1.SPECIFIC_SCHEMA)) + .and(PARAMETERS.SPECIFIC_NAME.equal(r1.SPECIFIC_NAME)) + .and(upper(PARAMETERS.PARAMETER_MODE).notEqual("IN"))), + val("void")) + .otherwise(r1.DATA_TYPE).as("data_type"), + r1.CHARACTER_MAXIMUM_LENGTH, + r1.NUMERIC_PRECISION, + r1.NUMERIC_SCALE, + r1.TYPE_UDT_NAME, + + // Calculate overload index if applicable + decode().when( + exists( + create().selectOne() + .from(r2) + .where(r2.ROUTINE_SCHEMA.in(getInputSchemata())) + .and(r2.ROUTINE_SCHEMA.equal(r1.ROUTINE_SCHEMA)) + .and(r2.ROUTINE_NAME.equal(r1.ROUTINE_NAME)) + .and(r2.SPECIFIC_NAME.notEqual(r1.SPECIFIC_NAME))), + create().select(count()) + .from(r2) + .where(r2.ROUTINE_SCHEMA.in(getInputSchemata())) + .and(r2.ROUTINE_SCHEMA.equal(r1.ROUTINE_SCHEMA)) + .and(r2.ROUTINE_NAME.equal(r1.ROUTINE_NAME)) + .and(r2.SPECIFIC_NAME.lessOrEqual(r1.SPECIFIC_NAME)).asField()) + .as("overload")) + .from(r1) + .where(r1.ROUTINE_SCHEMA.in(getInputSchemata())) + .orderBy( + r1.ROUTINE_SCHEMA.asc(), + r1.ROUTINE_NAME.asc()) + .fetch()) { + + result.add(new PostgresRoutineDefinition(this, record)); + } + + return result; + } + + @Override + protected List getPackages0() throws SQLException { + List result = new ArrayList(); + return result; + } + + @Override + public Factory create() { + return new InformationSchemaFactory(getConnection()); + } +} diff --git a/jOOQ-meta/src/main/java/org/jooq/util/postgres/PostgresRoutineDefinition.java b/jOOQ-meta/src/main/java/org/jooq/util/postgres/PostgresRoutineDefinition.java new file mode 100644 index 00000000000..46e5b2a42fb --- /dev/null +++ b/jOOQ-meta/src/main/java/org/jooq/util/postgres/PostgresRoutineDefinition.java @@ -0,0 +1,123 @@ +/** + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com + * All rights reserved. + * + * This software is licensed to you under the Apache License, Version 2.0 + * (the "License"); You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * 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 "jOOQ" 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 COPYRIGHT OWNER 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. + */ +package org.jooq.util.postgres; + + +import static org.jooq.util.postgres.information_schema.Tables.PARAMETERS; +import static org.jooq.util.postgres.information_schema.Tables.ROUTINES; + +import java.sql.SQLException; +import java.util.Arrays; + +import org.jooq.Record; +import org.jooq.util.AbstractRoutineDefinition; +import org.jooq.util.DataTypeDefinition; +import org.jooq.util.Database; +import org.jooq.util.DefaultDataTypeDefinition; +import org.jooq.util.DefaultParameterDefinition; +import org.jooq.util.InOutDefinition; +import org.jooq.util.ParameterDefinition; + +/** + * Postgres implementation of {@link AbstractRoutineDefinition} + * + * @author Lukas Eder + */ +public class PostgresRoutineDefinition extends AbstractRoutineDefinition { + + private final String specificName; + + public PostgresRoutineDefinition(Database database, Record record) { + super(database.getSchema(record.getValue(ROUTINES.ROUTINE_SCHEMA)), + null, + record.getValue(ROUTINES.ROUTINE_NAME), + null, + record.getValueAsString("overload")); + + if (!Arrays.asList("void", "record").contains(record.getValue("data_type"))) { + DataTypeDefinition type = new DefaultDataTypeDefinition( + getDatabase(), + database.getSchema(record.getValue(ROUTINES.ROUTINE_SCHEMA)), + record.getValueAsString("data_type"), + record.getValue(ROUTINES.CHARACTER_MAXIMUM_LENGTH), + record.getValue(ROUTINES.NUMERIC_PRECISION), + record.getValue(ROUTINES.NUMERIC_SCALE), + record.getValue(ROUTINES.TYPE_UDT_NAME)); + + returnValue = new DefaultParameterDefinition(this, "RETURN_VALUE", -1, type); + } + + specificName = record.getValue(ROUTINES.SPECIFIC_NAME); + } + + @Override + protected void init0() throws SQLException { + for (Record record : create().select( + PARAMETERS.PARAMETER_NAME, + PARAMETERS.DATA_TYPE, + PARAMETERS.CHARACTER_MAXIMUM_LENGTH, + PARAMETERS.NUMERIC_PRECISION, + PARAMETERS.NUMERIC_SCALE, + PARAMETERS.UDT_NAME, + PARAMETERS.ORDINAL_POSITION, + PARAMETERS.PARAMETER_MODE) + .from(PARAMETERS) + .where(PARAMETERS.SPECIFIC_SCHEMA.equal(getSchema().getName())) + .and(PARAMETERS.SPECIFIC_NAME.equal(specificName)) + .orderBy(PARAMETERS.ORDINAL_POSITION.asc()) + .fetch()) { + + String inOut = record.getValue(PARAMETERS.PARAMETER_MODE); + + DataTypeDefinition type = new DefaultDataTypeDefinition( + getDatabase(), + getSchema(), + record.getValue(PARAMETERS.DATA_TYPE), + record.getValue(PARAMETERS.CHARACTER_MAXIMUM_LENGTH), + record.getValue(PARAMETERS.NUMERIC_PRECISION), + record.getValue(PARAMETERS.NUMERIC_SCALE), + record.getValue(PARAMETERS.UDT_NAME)); + + ParameterDefinition parameter = new DefaultParameterDefinition( + this, + record.getValue(PARAMETERS.PARAMETER_NAME), + record.getValue(PARAMETERS.ORDINAL_POSITION), + type); + + addParameter(InOutDefinition.getFromString(inOut), parameter); + } + } +} diff --git a/jOOQ-meta/src/main/java/org/jooq/util/postgres/PostgresTableDefinition.java b/jOOQ-meta/src/main/java/org/jooq/util/postgres/PostgresTableDefinition.java new file mode 100644 index 00000000000..dc00bc86bfc --- /dev/null +++ b/jOOQ-meta/src/main/java/org/jooq/util/postgres/PostgresTableDefinition.java @@ -0,0 +1,105 @@ +/** + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com + * All rights reserved. + * + * This software is licensed to you under the Apache License, Version 2.0 + * (the "License"); You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * 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 "jOOQ" 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 COPYRIGHT OWNER 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. + */ + +package org.jooq.util.postgres; + +import static org.jooq.util.postgres.information_schema.Tables.COLUMNS; + +import java.sql.SQLException; +import java.util.ArrayList; +import java.util.List; + +import org.jooq.Record; +import org.jooq.util.AbstractTableDefinition; +import org.jooq.util.ColumnDefinition; +import org.jooq.util.DataTypeDefinition; +import org.jooq.util.DefaultColumnDefinition; +import org.jooq.util.DefaultDataTypeDefinition; +import org.jooq.util.SchemaDefinition; + +/** + * @author Lukas Eder + */ +public class PostgresTableDefinition extends AbstractTableDefinition { + + public PostgresTableDefinition(SchemaDefinition schema, String name, String comment) { + super(schema, name, comment); + } + + @Override + public List getElements0() throws SQLException { + List result = new ArrayList(); + + for (Record record : create().select( + COLUMNS.COLUMN_NAME, + COLUMNS.ORDINAL_POSITION, + COLUMNS.DATA_TYPE, + COLUMNS.CHARACTER_MAXIMUM_LENGTH, + COLUMNS.NUMERIC_PRECISION, + COLUMNS.NUMERIC_SCALE, + COLUMNS.IS_NULLABLE, + COLUMNS.IDENTITY_GENERATION, + COLUMNS.COLUMN_DEFAULT, + COLUMNS.UDT_NAME) + .from(COLUMNS) + .where(COLUMNS.TABLE_SCHEMA.equal(getSchema().getName())) + .and(COLUMNS.TABLE_NAME.equal(getName())) + .orderBy(COLUMNS.ORDINAL_POSITION) + .fetch()) { + + DataTypeDefinition type = new DefaultDataTypeDefinition( + getDatabase(), + getSchema(), + record.getValue(COLUMNS.DATA_TYPE), + record.getValue(COLUMNS.CHARACTER_MAXIMUM_LENGTH), + record.getValue(COLUMNS.NUMERIC_PRECISION), + record.getValue(COLUMNS.NUMERIC_SCALE), + record.getValue(COLUMNS.UDT_NAME)); + + ColumnDefinition column = new DefaultColumnDefinition( + getDatabase().getTable(getSchema(), getName()), + record.getValue(COLUMNS.COLUMN_NAME), + record.getValueAsInteger(COLUMNS.ORDINAL_POSITION), + type, + record.getValue(COLUMNS.IS_NULLABLE, boolean.class), + record.getValue(COLUMNS.COLUMN_DEFAULT, "").startsWith("nextval"), + null); + result.add(column); + } + + return result; + } +} diff --git a/jOOQ-meta/src/main/java/org/jooq/util/postgres/PostgresUDTDefinition.java b/jOOQ-meta/src/main/java/org/jooq/util/postgres/PostgresUDTDefinition.java new file mode 100644 index 00000000000..37bded2f9f9 --- /dev/null +++ b/jOOQ-meta/src/main/java/org/jooq/util/postgres/PostgresUDTDefinition.java @@ -0,0 +1,103 @@ +/** + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com + * All rights reserved. + * + * This software is licensed to you under the Apache License, Version 2.0 + * (the "License"); You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * 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 "jOOQ" 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 COPYRIGHT OWNER 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. + */ +package org.jooq.util.postgres; + +import static org.jooq.util.postgres.information_schema.Tables.ATTRIBUTES; + +import java.sql.SQLException; +import java.util.ArrayList; +import java.util.Collections; +import java.util.List; + +import org.jooq.Record; +import org.jooq.util.AbstractUDTDefinition; +import org.jooq.util.AttributeDefinition; +import org.jooq.util.DataTypeDefinition; +import org.jooq.util.DefaultAttributeDefinition; +import org.jooq.util.DefaultDataTypeDefinition; +import org.jooq.util.RoutineDefinition; +import org.jooq.util.SchemaDefinition; + +public class PostgresUDTDefinition extends AbstractUDTDefinition { + + public PostgresUDTDefinition(SchemaDefinition schema, String name, String comment) { + super(schema, name, comment); + } + + @Override + protected List getElements0() throws SQLException { + List result = new ArrayList(); + + for (Record record : create().select( + ATTRIBUTES.ATTRIBUTE_NAME, + ATTRIBUTES.ORDINAL_POSITION, + ATTRIBUTES.DATA_TYPE, + ATTRIBUTES.CHARACTER_MAXIMUM_LENGTH, + ATTRIBUTES.NUMERIC_PRECISION, + ATTRIBUTES.NUMERIC_SCALE, + ATTRIBUTES.ATTRIBUTE_UDT_NAME) + .from(ATTRIBUTES) + .where(ATTRIBUTES.UDT_SCHEMA.equal(getSchema().getName())) + .and(ATTRIBUTES.UDT_NAME.equal(getName())) + .orderBy(ATTRIBUTES.ORDINAL_POSITION) + .fetch()) { + + DataTypeDefinition type = new DefaultDataTypeDefinition( + getDatabase(), + getSchema(), + record.getValue(ATTRIBUTES.DATA_TYPE), + record.getValue(ATTRIBUTES.CHARACTER_MAXIMUM_LENGTH), + record.getValue(ATTRIBUTES.NUMERIC_PRECISION), + record.getValue(ATTRIBUTES.NUMERIC_SCALE), + record.getValue(ATTRIBUTES.ATTRIBUTE_UDT_NAME)); + + AttributeDefinition column = new DefaultAttributeDefinition( + this, + record.getValue(ATTRIBUTES.ATTRIBUTE_NAME), + record.getValue(ATTRIBUTES.ORDINAL_POSITION), + type); + + result.add(column); + } + + return result; + } + + @Override + protected List getRoutines0() { + return Collections.emptyList(); + } +} diff --git a/jOOQ-meta/src/main/java/org/jooq/util/postgres/information_schema/InformationSchema.java b/jOOQ-meta/src/main/java/org/jooq/util/postgres/information_schema/InformationSchema.java new file mode 100644 index 00000000000..e51247d37f3 --- /dev/null +++ b/jOOQ-meta/src/main/java/org/jooq/util/postgres/information_schema/InformationSchema.java @@ -0,0 +1,41 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.util.postgres.information_schema; + +/** + * This class is generated by jOOQ. + */ +@javax.annotation.Generated(value = {"http://www.jooq.org", "2.0.6"}, + comments = "This class is generated by jOOQ") +public class InformationSchema extends org.jooq.impl.SchemaImpl { + + private static final long serialVersionUID = -41433549; + + /** + * The singleton instance of information_schema + */ + public static final InformationSchema INFORMATION_SCHEMA = new InformationSchema(); + + /** + * No further instances allowed + */ + private InformationSchema() { + super("information_schema"); + } + + @Override + public final java.util.List> getTables() { + return java.util.Arrays.>asList( + org.jooq.util.postgres.information_schema.tables.Attributes.ATTRIBUTES, + org.jooq.util.postgres.information_schema.tables.Columns.COLUMNS, + org.jooq.util.postgres.information_schema.tables.ConstraintColumnUsage.CONSTRAINT_COLUMN_USAGE, + org.jooq.util.postgres.information_schema.tables.KeyColumnUsage.KEY_COLUMN_USAGE, + org.jooq.util.postgres.information_schema.tables.Parameters.PARAMETERS, + org.jooq.util.postgres.information_schema.tables.ReferentialConstraints.REFERENTIAL_CONSTRAINTS, + org.jooq.util.postgres.information_schema.tables.Routines.ROUTINES, + org.jooq.util.postgres.information_schema.tables.Sequences.SEQUENCES, + org.jooq.util.postgres.information_schema.tables.TableConstraints.TABLE_CONSTRAINTS, + org.jooq.util.postgres.information_schema.tables.Tables.TABLES); + } +} diff --git a/jOOQ-meta/src/main/java/org/jooq/util/postgres/information_schema/InformationSchemaFactory.java b/jOOQ-meta/src/main/java/org/jooq/util/postgres/information_schema/InformationSchemaFactory.java new file mode 100644 index 00000000000..4b132164125 --- /dev/null +++ b/jOOQ-meta/src/main/java/org/jooq/util/postgres/information_schema/InformationSchemaFactory.java @@ -0,0 +1,33 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.util.postgres.information_schema; + +/** + * This class is generated by jOOQ. + */ +@javax.annotation.Generated(value = {"http://www.jooq.org", "2.0.6"}, + comments = "This class is generated by jOOQ") +public class InformationSchemaFactory extends org.jooq.util.postgres.PostgresFactory { + + private static final long serialVersionUID = -749061501; + + /** + * Create a factory with a connection + * + * @param connection The connection to use with objects created from this factory + */ + public InformationSchemaFactory(java.sql.Connection connection) { + super(connection); + } + + /** + * Create a factory with a connection and some settings + * + * @param connection The connection to use with objects created from this factory + * @param settings The settings to apply to objects created from this factory + */ + public InformationSchemaFactory(java.sql.Connection connection, org.jooq.conf.Settings settings) { + super(connection, settings); + } +} diff --git a/jOOQ-meta/src/main/java/org/jooq/util/postgres/information_schema/Tables.java b/jOOQ-meta/src/main/java/org/jooq/util/postgres/information_schema/Tables.java new file mode 100644 index 00000000000..140096a11fc --- /dev/null +++ b/jOOQ-meta/src/main/java/org/jooq/util/postgres/information_schema/Tables.java @@ -0,0 +1,69 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.util.postgres.information_schema; + +/** + * This class is generated by jOOQ. + * + * Convenience access to all tables in information_schema + */ +@javax.annotation.Generated(value = {"http://www.jooq.org", "2.0.6"}, + comments = "This class is generated by jOOQ") +public final class Tables { + + /** + * The table information_schema.attributes + */ + public static org.jooq.util.postgres.information_schema.tables.Attributes ATTRIBUTES = org.jooq.util.postgres.information_schema.tables.Attributes.ATTRIBUTES; + + /** + * The table information_schema.columns + */ + public static org.jooq.util.postgres.information_schema.tables.Columns COLUMNS = org.jooq.util.postgres.information_schema.tables.Columns.COLUMNS; + + /** + * The table information_schema.constraint_column_usage + */ + public static org.jooq.util.postgres.information_schema.tables.ConstraintColumnUsage CONSTRAINT_COLUMN_USAGE = org.jooq.util.postgres.information_schema.tables.ConstraintColumnUsage.CONSTRAINT_COLUMN_USAGE; + + /** + * The table information_schema.key_column_usage + */ + public static org.jooq.util.postgres.information_schema.tables.KeyColumnUsage KEY_COLUMN_USAGE = org.jooq.util.postgres.information_schema.tables.KeyColumnUsage.KEY_COLUMN_USAGE; + + /** + * The table information_schema.parameters + */ + public static org.jooq.util.postgres.information_schema.tables.Parameters PARAMETERS = org.jooq.util.postgres.information_schema.tables.Parameters.PARAMETERS; + + /** + * The table information_schema.referential_constraints + */ + public static org.jooq.util.postgres.information_schema.tables.ReferentialConstraints REFERENTIAL_CONSTRAINTS = org.jooq.util.postgres.information_schema.tables.ReferentialConstraints.REFERENTIAL_CONSTRAINTS; + + /** + * The table information_schema.routines + */ + public static org.jooq.util.postgres.information_schema.tables.Routines ROUTINES = org.jooq.util.postgres.information_schema.tables.Routines.ROUTINES; + + /** + * The table information_schema.sequences + */ + public static org.jooq.util.postgres.information_schema.tables.Sequences SEQUENCES = org.jooq.util.postgres.information_schema.tables.Sequences.SEQUENCES; + + /** + * The table information_schema.table_constraints + */ + public static org.jooq.util.postgres.information_schema.tables.TableConstraints TABLE_CONSTRAINTS = org.jooq.util.postgres.information_schema.tables.TableConstraints.TABLE_CONSTRAINTS; + + /** + * The table information_schema.tables + */ + public static org.jooq.util.postgres.information_schema.tables.Tables TABLES = org.jooq.util.postgres.information_schema.tables.Tables.TABLES; + + /** + * No instances + */ + private Tables() {} +} diff --git a/jOOQ-meta/src/main/java/org/jooq/util/postgres/information_schema/tables/Attributes.java b/jOOQ-meta/src/main/java/org/jooq/util/postgres/information_schema/tables/Attributes.java new file mode 100644 index 00000000000..41b3ee6abbc --- /dev/null +++ b/jOOQ-meta/src/main/java/org/jooq/util/postgres/information_schema/tables/Attributes.java @@ -0,0 +1,206 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.util.postgres.information_schema.tables; + +/** + * This class is generated by jOOQ. + */ +@javax.annotation.Generated(value = {"http://www.jooq.org", "2.0.6"}, + comments = "This class is generated by jOOQ") +public class Attributes extends org.jooq.impl.TableImpl { + + private static final long serialVersionUID = -1137587038; + + /** + * The singleton instance of information_schema.attributes + */ + public static final org.jooq.util.postgres.information_schema.tables.Attributes ATTRIBUTES = new org.jooq.util.postgres.information_schema.tables.Attributes(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.Record.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + */ + public final org.jooq.TableField UDT_CATALOG = createField("udt_catalog", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField UDT_SCHEMA = createField("udt_schema", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField UDT_NAME = createField("udt_name", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField ATTRIBUTE_NAME = createField("attribute_name", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField ORDINAL_POSITION = createField("ordinal_position", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField ATTRIBUTE_DEFAULT = createField("attribute_default", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField IS_NULLABLE = createField("is_nullable", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField DATA_TYPE = createField("data_type", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField CHARACTER_MAXIMUM_LENGTH = createField("character_maximum_length", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField CHARACTER_OCTET_LENGTH = createField("character_octet_length", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField CHARACTER_SET_CATALOG = createField("character_set_catalog", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField CHARACTER_SET_SCHEMA = createField("character_set_schema", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField CHARACTER_SET_NAME = createField("character_set_name", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField COLLATION_CATALOG = createField("collation_catalog", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField COLLATION_SCHEMA = createField("collation_schema", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField COLLATION_NAME = createField("collation_name", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField NUMERIC_PRECISION = createField("numeric_precision", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField NUMERIC_PRECISION_RADIX = createField("numeric_precision_radix", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField NUMERIC_SCALE = createField("numeric_scale", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField DATETIME_PRECISION = createField("datetime_precision", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField INTERVAL_TYPE = createField("interval_type", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField INTERVAL_PRECISION = createField("interval_precision", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField ATTRIBUTE_UDT_CATALOG = createField("attribute_udt_catalog", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField ATTRIBUTE_UDT_SCHEMA = createField("attribute_udt_schema", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField ATTRIBUTE_UDT_NAME = createField("attribute_udt_name", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField SCOPE_CATALOG = createField("scope_catalog", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField SCOPE_SCHEMA = createField("scope_schema", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField SCOPE_NAME = createField("scope_name", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField MAXIMUM_CARDINALITY = createField("maximum_cardinality", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField DTD_IDENTIFIER = createField("dtd_identifier", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField IS_DERIVED_REFERENCE_ATTRIBUTE = createField("is_derived_reference_attribute", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * No further instances allowed + */ + private Attributes() { + super("attributes", org.jooq.util.postgres.information_schema.InformationSchema.INFORMATION_SCHEMA); + } + + /** + * No further instances allowed + */ + private Attributes(java.lang.String alias) { + super(alias, org.jooq.util.postgres.information_schema.InformationSchema.INFORMATION_SCHEMA, org.jooq.util.postgres.information_schema.tables.Attributes.ATTRIBUTES); + } + + @Override + public org.jooq.util.postgres.information_schema.tables.Attributes as(java.lang.String alias) { + return new org.jooq.util.postgres.information_schema.tables.Attributes(alias); + } +} diff --git a/jOOQ-meta/src/main/java/org/jooq/util/postgres/information_schema/tables/Columns.java b/jOOQ-meta/src/main/java/org/jooq/util/postgres/information_schema/tables/Columns.java new file mode 100644 index 00000000000..76da3439982 --- /dev/null +++ b/jOOQ-meta/src/main/java/org/jooq/util/postgres/information_schema/tables/Columns.java @@ -0,0 +1,271 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.util.postgres.information_schema.tables; + +/** + * This class is generated by jOOQ. + */ +@javax.annotation.Generated(value = {"http://www.jooq.org", "2.0.6"}, + comments = "This class is generated by jOOQ") +public class Columns extends org.jooq.impl.TableImpl { + + private static final long serialVersionUID = -1744083245; + + /** + * The singleton instance of information_schema.columns + */ + public static final org.jooq.util.postgres.information_schema.tables.Columns COLUMNS = new org.jooq.util.postgres.information_schema.tables.Columns(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.Record.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + */ + public final org.jooq.TableField TABLE_CATALOG = createField("table_catalog", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField TABLE_SCHEMA = createField("table_schema", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField TABLE_NAME = createField("table_name", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField COLUMN_NAME = createField("column_name", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField ORDINAL_POSITION = createField("ordinal_position", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField COLUMN_DEFAULT = createField("column_default", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField IS_NULLABLE = createField("is_nullable", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField DATA_TYPE = createField("data_type", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField CHARACTER_MAXIMUM_LENGTH = createField("character_maximum_length", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField CHARACTER_OCTET_LENGTH = createField("character_octet_length", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField NUMERIC_PRECISION = createField("numeric_precision", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField NUMERIC_PRECISION_RADIX = createField("numeric_precision_radix", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField NUMERIC_SCALE = createField("numeric_scale", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField DATETIME_PRECISION = createField("datetime_precision", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField INTERVAL_TYPE = createField("interval_type", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField INTERVAL_PRECISION = createField("interval_precision", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField CHARACTER_SET_CATALOG = createField("character_set_catalog", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField CHARACTER_SET_SCHEMA = createField("character_set_schema", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField CHARACTER_SET_NAME = createField("character_set_name", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField COLLATION_CATALOG = createField("collation_catalog", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField COLLATION_SCHEMA = createField("collation_schema", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField COLLATION_NAME = createField("collation_name", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField DOMAIN_CATALOG = createField("domain_catalog", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField DOMAIN_SCHEMA = createField("domain_schema", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField DOMAIN_NAME = createField("domain_name", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField UDT_CATALOG = createField("udt_catalog", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField UDT_SCHEMA = createField("udt_schema", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField UDT_NAME = createField("udt_name", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField SCOPE_CATALOG = createField("scope_catalog", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField SCOPE_SCHEMA = createField("scope_schema", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField SCOPE_NAME = createField("scope_name", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField MAXIMUM_CARDINALITY = createField("maximum_cardinality", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField DTD_IDENTIFIER = createField("dtd_identifier", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField IS_SELF_REFERENCING = createField("is_self_referencing", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField IS_IDENTITY = createField("is_identity", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField IDENTITY_GENERATION = createField("identity_generation", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField IDENTITY_START = createField("identity_start", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField IDENTITY_INCREMENT = createField("identity_increment", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField IDENTITY_MAXIMUM = createField("identity_maximum", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField IDENTITY_MINIMUM = createField("identity_minimum", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField IDENTITY_CYCLE = createField("identity_cycle", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField IS_GENERATED = createField("is_generated", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField GENERATION_EXPRESSION = createField("generation_expression", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField IS_UPDATABLE = createField("is_updatable", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * No further instances allowed + */ + private Columns() { + super("columns", org.jooq.util.postgres.information_schema.InformationSchema.INFORMATION_SCHEMA); + } + + /** + * No further instances allowed + */ + private Columns(java.lang.String alias) { + super(alias, org.jooq.util.postgres.information_schema.InformationSchema.INFORMATION_SCHEMA, org.jooq.util.postgres.information_schema.tables.Columns.COLUMNS); + } + + @Override + public org.jooq.util.postgres.information_schema.tables.Columns as(java.lang.String alias) { + return new org.jooq.util.postgres.information_schema.tables.Columns(alias); + } +} diff --git a/jOOQ-meta/src/main/java/org/jooq/util/postgres/information_schema/tables/ConstraintColumnUsage.java b/jOOQ-meta/src/main/java/org/jooq/util/postgres/information_schema/tables/ConstraintColumnUsage.java new file mode 100644 index 00000000000..a3b5118bf47 --- /dev/null +++ b/jOOQ-meta/src/main/java/org/jooq/util/postgres/information_schema/tables/ConstraintColumnUsage.java @@ -0,0 +1,86 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.util.postgres.information_schema.tables; + +/** + * This class is generated by jOOQ. + */ +@javax.annotation.Generated(value = {"http://www.jooq.org", "2.0.6"}, + comments = "This class is generated by jOOQ") +public class ConstraintColumnUsage extends org.jooq.impl.TableImpl { + + private static final long serialVersionUID = 1455273794; + + /** + * The singleton instance of information_schema.constraint_column_usage + */ + public static final org.jooq.util.postgres.information_schema.tables.ConstraintColumnUsage CONSTRAINT_COLUMN_USAGE = new org.jooq.util.postgres.information_schema.tables.ConstraintColumnUsage(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.Record.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + */ + public final org.jooq.TableField TABLE_CATALOG = createField("table_catalog", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField TABLE_SCHEMA = createField("table_schema", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField TABLE_NAME = createField("table_name", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField COLUMN_NAME = createField("column_name", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField CONSTRAINT_CATALOG = createField("constraint_catalog", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField CONSTRAINT_SCHEMA = createField("constraint_schema", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField CONSTRAINT_NAME = createField("constraint_name", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * No further instances allowed + */ + private ConstraintColumnUsage() { + super("constraint_column_usage", org.jooq.util.postgres.information_schema.InformationSchema.INFORMATION_SCHEMA); + } + + /** + * No further instances allowed + */ + private ConstraintColumnUsage(java.lang.String alias) { + super(alias, org.jooq.util.postgres.information_schema.InformationSchema.INFORMATION_SCHEMA, org.jooq.util.postgres.information_schema.tables.ConstraintColumnUsage.CONSTRAINT_COLUMN_USAGE); + } + + @Override + public org.jooq.util.postgres.information_schema.tables.ConstraintColumnUsage as(java.lang.String alias) { + return new org.jooq.util.postgres.information_schema.tables.ConstraintColumnUsage(alias); + } +} diff --git a/jOOQ-meta/src/main/java/org/jooq/util/postgres/information_schema/tables/KeyColumnUsage.java b/jOOQ-meta/src/main/java/org/jooq/util/postgres/information_schema/tables/KeyColumnUsage.java new file mode 100644 index 00000000000..52993c81868 --- /dev/null +++ b/jOOQ-meta/src/main/java/org/jooq/util/postgres/information_schema/tables/KeyColumnUsage.java @@ -0,0 +1,96 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.util.postgres.information_schema.tables; + +/** + * This class is generated by jOOQ. + */ +@javax.annotation.Generated(value = {"http://www.jooq.org", "2.0.6"}, + comments = "This class is generated by jOOQ") +public class KeyColumnUsage extends org.jooq.impl.TableImpl { + + private static final long serialVersionUID = 1442149778; + + /** + * The singleton instance of information_schema.key_column_usage + */ + public static final org.jooq.util.postgres.information_schema.tables.KeyColumnUsage KEY_COLUMN_USAGE = new org.jooq.util.postgres.information_schema.tables.KeyColumnUsage(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.Record.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + */ + public final org.jooq.TableField CONSTRAINT_CATALOG = createField("constraint_catalog", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField CONSTRAINT_SCHEMA = createField("constraint_schema", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField CONSTRAINT_NAME = createField("constraint_name", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField TABLE_CATALOG = createField("table_catalog", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField TABLE_SCHEMA = createField("table_schema", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField TABLE_NAME = createField("table_name", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField COLUMN_NAME = createField("column_name", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField ORDINAL_POSITION = createField("ordinal_position", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField POSITION_IN_UNIQUE_CONSTRAINT = createField("position_in_unique_constraint", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * No further instances allowed + */ + private KeyColumnUsage() { + super("key_column_usage", org.jooq.util.postgres.information_schema.InformationSchema.INFORMATION_SCHEMA); + } + + /** + * No further instances allowed + */ + private KeyColumnUsage(java.lang.String alias) { + super(alias, org.jooq.util.postgres.information_schema.InformationSchema.INFORMATION_SCHEMA, org.jooq.util.postgres.information_schema.tables.KeyColumnUsage.KEY_COLUMN_USAGE); + } + + @Override + public org.jooq.util.postgres.information_schema.tables.KeyColumnUsage as(java.lang.String alias) { + return new org.jooq.util.postgres.information_schema.tables.KeyColumnUsage(alias); + } +} diff --git a/jOOQ-meta/src/main/java/org/jooq/util/postgres/information_schema/tables/Parameters.java b/jOOQ-meta/src/main/java/org/jooq/util/postgres/information_schema/tables/Parameters.java new file mode 100644 index 00000000000..10e1c696286 --- /dev/null +++ b/jOOQ-meta/src/main/java/org/jooq/util/postgres/information_schema/tables/Parameters.java @@ -0,0 +1,206 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.util.postgres.information_schema.tables; + +/** + * This class is generated by jOOQ. + */ +@javax.annotation.Generated(value = {"http://www.jooq.org", "2.0.6"}, + comments = "This class is generated by jOOQ") +public class Parameters extends org.jooq.impl.TableImpl { + + private static final long serialVersionUID = -1336731788; + + /** + * The singleton instance of information_schema.parameters + */ + public static final org.jooq.util.postgres.information_schema.tables.Parameters PARAMETERS = new org.jooq.util.postgres.information_schema.tables.Parameters(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.Record.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + */ + public final org.jooq.TableField SPECIFIC_CATALOG = createField("specific_catalog", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField SPECIFIC_SCHEMA = createField("specific_schema", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField SPECIFIC_NAME = createField("specific_name", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField ORDINAL_POSITION = createField("ordinal_position", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField PARAMETER_MODE = createField("parameter_mode", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField IS_RESULT = createField("is_result", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField AS_LOCATOR = createField("as_locator", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField PARAMETER_NAME = createField("parameter_name", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField DATA_TYPE = createField("data_type", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField CHARACTER_MAXIMUM_LENGTH = createField("character_maximum_length", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField CHARACTER_OCTET_LENGTH = createField("character_octet_length", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField CHARACTER_SET_CATALOG = createField("character_set_catalog", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField CHARACTER_SET_SCHEMA = createField("character_set_schema", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField CHARACTER_SET_NAME = createField("character_set_name", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField COLLATION_CATALOG = createField("collation_catalog", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField COLLATION_SCHEMA = createField("collation_schema", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField COLLATION_NAME = createField("collation_name", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField NUMERIC_PRECISION = createField("numeric_precision", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField NUMERIC_PRECISION_RADIX = createField("numeric_precision_radix", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField NUMERIC_SCALE = createField("numeric_scale", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField DATETIME_PRECISION = createField("datetime_precision", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField INTERVAL_TYPE = createField("interval_type", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField INTERVAL_PRECISION = createField("interval_precision", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField UDT_CATALOG = createField("udt_catalog", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField UDT_SCHEMA = createField("udt_schema", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField UDT_NAME = createField("udt_name", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField SCOPE_CATALOG = createField("scope_catalog", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField SCOPE_SCHEMA = createField("scope_schema", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField SCOPE_NAME = createField("scope_name", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField MAXIMUM_CARDINALITY = createField("maximum_cardinality", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField DTD_IDENTIFIER = createField("dtd_identifier", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * No further instances allowed + */ + private Parameters() { + super("parameters", org.jooq.util.postgres.information_schema.InformationSchema.INFORMATION_SCHEMA); + } + + /** + * No further instances allowed + */ + private Parameters(java.lang.String alias) { + super(alias, org.jooq.util.postgres.information_schema.InformationSchema.INFORMATION_SCHEMA, org.jooq.util.postgres.information_schema.tables.Parameters.PARAMETERS); + } + + @Override + public org.jooq.util.postgres.information_schema.tables.Parameters as(java.lang.String alias) { + return new org.jooq.util.postgres.information_schema.tables.Parameters(alias); + } +} diff --git a/jOOQ-meta/src/main/java/org/jooq/util/postgres/information_schema/tables/ReferentialConstraints.java b/jOOQ-meta/src/main/java/org/jooq/util/postgres/information_schema/tables/ReferentialConstraints.java new file mode 100644 index 00000000000..16d38d6fdf9 --- /dev/null +++ b/jOOQ-meta/src/main/java/org/jooq/util/postgres/information_schema/tables/ReferentialConstraints.java @@ -0,0 +1,96 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.util.postgres.information_schema.tables; + +/** + * This class is generated by jOOQ. + */ +@javax.annotation.Generated(value = {"http://www.jooq.org", "2.0.6"}, + comments = "This class is generated by jOOQ") +public class ReferentialConstraints extends org.jooq.impl.TableImpl { + + private static final long serialVersionUID = -977220222; + + /** + * The singleton instance of information_schema.referential_constraints + */ + public static final org.jooq.util.postgres.information_schema.tables.ReferentialConstraints REFERENTIAL_CONSTRAINTS = new org.jooq.util.postgres.information_schema.tables.ReferentialConstraints(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.Record.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + */ + public final org.jooq.TableField CONSTRAINT_CATALOG = createField("constraint_catalog", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField CONSTRAINT_SCHEMA = createField("constraint_schema", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField CONSTRAINT_NAME = createField("constraint_name", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField UNIQUE_CONSTRAINT_CATALOG = createField("unique_constraint_catalog", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField UNIQUE_CONSTRAINT_SCHEMA = createField("unique_constraint_schema", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField UNIQUE_CONSTRAINT_NAME = createField("unique_constraint_name", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField MATCH_OPTION = createField("match_option", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField UPDATE_RULE = createField("update_rule", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField DELETE_RULE = createField("delete_rule", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * No further instances allowed + */ + private ReferentialConstraints() { + super("referential_constraints", org.jooq.util.postgres.information_schema.InformationSchema.INFORMATION_SCHEMA); + } + + /** + * No further instances allowed + */ + private ReferentialConstraints(java.lang.String alias) { + super(alias, org.jooq.util.postgres.information_schema.InformationSchema.INFORMATION_SCHEMA, org.jooq.util.postgres.information_schema.tables.ReferentialConstraints.REFERENTIAL_CONSTRAINTS); + } + + @Override + public org.jooq.util.postgres.information_schema.tables.ReferentialConstraints as(java.lang.String alias) { + return new org.jooq.util.postgres.information_schema.tables.ReferentialConstraints(alias); + } +} diff --git a/jOOQ-meta/src/main/java/org/jooq/util/postgres/information_schema/tables/Routines.java b/jOOQ-meta/src/main/java/org/jooq/util/postgres/information_schema/tables/Routines.java new file mode 100644 index 00000000000..93c90861b1c --- /dev/null +++ b/jOOQ-meta/src/main/java/org/jooq/util/postgres/information_schema/tables/Routines.java @@ -0,0 +1,461 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.util.postgres.information_schema.tables; + +/** + * This class is generated by jOOQ. + */ +@javax.annotation.Generated(value = {"http://www.jooq.org", "2.0.6"}, + comments = "This class is generated by jOOQ") +public class Routines extends org.jooq.impl.TableImpl { + + private static final long serialVersionUID = -559240587; + + /** + * The singleton instance of information_schema.routines + */ + public static final org.jooq.util.postgres.information_schema.tables.Routines ROUTINES = new org.jooq.util.postgres.information_schema.tables.Routines(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.Record.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + */ + public final org.jooq.TableField SPECIFIC_CATALOG = createField("specific_catalog", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField SPECIFIC_SCHEMA = createField("specific_schema", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField SPECIFIC_NAME = createField("specific_name", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField ROUTINE_CATALOG = createField("routine_catalog", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField ROUTINE_SCHEMA = createField("routine_schema", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField ROUTINE_NAME = createField("routine_name", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField ROUTINE_TYPE = createField("routine_type", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField MODULE_CATALOG = createField("module_catalog", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField MODULE_SCHEMA = createField("module_schema", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField MODULE_NAME = createField("module_name", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField UDT_CATALOG = createField("udt_catalog", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField UDT_SCHEMA = createField("udt_schema", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField UDT_NAME = createField("udt_name", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField DATA_TYPE = createField("data_type", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField CHARACTER_MAXIMUM_LENGTH = createField("character_maximum_length", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField CHARACTER_OCTET_LENGTH = createField("character_octet_length", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField CHARACTER_SET_CATALOG = createField("character_set_catalog", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField CHARACTER_SET_SCHEMA = createField("character_set_schema", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField CHARACTER_SET_NAME = createField("character_set_name", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField COLLATION_CATALOG = createField("collation_catalog", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField COLLATION_SCHEMA = createField("collation_schema", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField COLLATION_NAME = createField("collation_name", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField NUMERIC_PRECISION = createField("numeric_precision", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField NUMERIC_PRECISION_RADIX = createField("numeric_precision_radix", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField NUMERIC_SCALE = createField("numeric_scale", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField DATETIME_PRECISION = createField("datetime_precision", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField INTERVAL_TYPE = createField("interval_type", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField INTERVAL_PRECISION = createField("interval_precision", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField TYPE_UDT_CATALOG = createField("type_udt_catalog", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField TYPE_UDT_SCHEMA = createField("type_udt_schema", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField TYPE_UDT_NAME = createField("type_udt_name", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField SCOPE_CATALOG = createField("scope_catalog", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField SCOPE_SCHEMA = createField("scope_schema", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField SCOPE_NAME = createField("scope_name", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField MAXIMUM_CARDINALITY = createField("maximum_cardinality", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField DTD_IDENTIFIER = createField("dtd_identifier", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField ROUTINE_BODY = createField("routine_body", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField ROUTINE_DEFINITION = createField("routine_definition", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField EXTERNAL_NAME = createField("external_name", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField EXTERNAL_LANGUAGE = createField("external_language", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField PARAMETER_STYLE = createField("parameter_style", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField IS_DETERMINISTIC = createField("is_deterministic", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField SQL_DATA_ACCESS = createField("sql_data_access", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField IS_NULL_CALL = createField("is_null_call", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField SQL_PATH = createField("sql_path", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField SCHEMA_LEVEL_ROUTINE = createField("schema_level_routine", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField MAX_DYNAMIC_RESULT_SETS = createField("max_dynamic_result_sets", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField IS_USER_DEFINED_CAST = createField("is_user_defined_cast", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField IS_IMPLICITLY_INVOCABLE = createField("is_implicitly_invocable", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField SECURITY_TYPE = createField("security_type", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField TO_SQL_SPECIFIC_CATALOG = createField("to_sql_specific_catalog", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField TO_SQL_SPECIFIC_SCHEMA = createField("to_sql_specific_schema", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField TO_SQL_SPECIFIC_NAME = createField("to_sql_specific_name", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField AS_LOCATOR = createField("as_locator", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField CREATED = createField("created", org.jooq.impl.SQLDataType.TIMESTAMP, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField LAST_ALTERED = createField("last_altered", org.jooq.impl.SQLDataType.TIMESTAMP, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField NEW_SAVEPOINT_LEVEL = createField("new_savepoint_level", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField IS_UDT_DEPENDENT = createField("is_udt_dependent", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField RESULT_CAST_FROM_DATA_TYPE = createField("result_cast_from_data_type", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField RESULT_CAST_AS_LOCATOR = createField("result_cast_as_locator", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField RESULT_CAST_CHAR_MAX_LENGTH = createField("result_cast_char_max_length", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField RESULT_CAST_CHAR_OCTET_LENGTH = createField("result_cast_char_octet_length", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField RESULT_CAST_CHAR_SET_CATALOG = createField("result_cast_char_set_catalog", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField RESULT_CAST_CHAR_SET_SCHEMA = createField("result_cast_char_set_schema", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField RESULT_CAST_CHARACTER_SET_NAME = createField("result_cast_character_set_name", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField RESULT_CAST_COLLATION_CATALOG = createField("result_cast_collation_catalog", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField RESULT_CAST_COLLATION_SCHEMA = createField("result_cast_collation_schema", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField RESULT_CAST_COLLATION_NAME = createField("result_cast_collation_name", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField RESULT_CAST_NUMERIC_PRECISION = createField("result_cast_numeric_precision", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField RESULT_CAST_NUMERIC_PRECISION_RADIX = createField("result_cast_numeric_precision_radix", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField RESULT_CAST_NUMERIC_SCALE = createField("result_cast_numeric_scale", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField RESULT_CAST_DATETIME_PRECISION = createField("result_cast_datetime_precision", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField RESULT_CAST_INTERVAL_TYPE = createField("result_cast_interval_type", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField RESULT_CAST_INTERVAL_PRECISION = createField("result_cast_interval_precision", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField RESULT_CAST_TYPE_UDT_CATALOG = createField("result_cast_type_udt_catalog", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField RESULT_CAST_TYPE_UDT_SCHEMA = createField("result_cast_type_udt_schema", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField RESULT_CAST_TYPE_UDT_NAME = createField("result_cast_type_udt_name", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField RESULT_CAST_SCOPE_CATALOG = createField("result_cast_scope_catalog", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField RESULT_CAST_SCOPE_SCHEMA = createField("result_cast_scope_schema", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField RESULT_CAST_SCOPE_NAME = createField("result_cast_scope_name", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField RESULT_CAST_MAXIMUM_CARDINALITY = createField("result_cast_maximum_cardinality", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField RESULT_CAST_DTD_IDENTIFIER = createField("result_cast_dtd_identifier", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * No further instances allowed + */ + private Routines() { + super("routines", org.jooq.util.postgres.information_schema.InformationSchema.INFORMATION_SCHEMA); + } + + /** + * No further instances allowed + */ + private Routines(java.lang.String alias) { + super(alias, org.jooq.util.postgres.information_schema.InformationSchema.INFORMATION_SCHEMA, org.jooq.util.postgres.information_schema.tables.Routines.ROUTINES); + } + + @Override + public org.jooq.util.postgres.information_schema.tables.Routines as(java.lang.String alias) { + return new org.jooq.util.postgres.information_schema.tables.Routines(alias); + } +} diff --git a/jOOQ-meta/src/main/java/org/jooq/util/postgres/information_schema/tables/Sequences.java b/jOOQ-meta/src/main/java/org/jooq/util/postgres/information_schema/tables/Sequences.java new file mode 100644 index 00000000000..47e97b8f486 --- /dev/null +++ b/jOOQ-meta/src/main/java/org/jooq/util/postgres/information_schema/tables/Sequences.java @@ -0,0 +1,106 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.util.postgres.information_schema.tables; + +/** + * This class is generated by jOOQ. + */ +@javax.annotation.Generated(value = {"http://www.jooq.org", "2.0.6"}, + comments = "This class is generated by jOOQ") +public class Sequences extends org.jooq.impl.TableImpl { + + private static final long serialVersionUID = 1106417154; + + /** + * The singleton instance of information_schema.sequences + */ + public static final org.jooq.util.postgres.information_schema.tables.Sequences SEQUENCES = new org.jooq.util.postgres.information_schema.tables.Sequences(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.Record.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + */ + public final org.jooq.TableField SEQUENCE_CATALOG = createField("sequence_catalog", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField SEQUENCE_SCHEMA = createField("sequence_schema", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField SEQUENCE_NAME = createField("sequence_name", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField DATA_TYPE = createField("data_type", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField NUMERIC_PRECISION = createField("numeric_precision", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField NUMERIC_PRECISION_RADIX = createField("numeric_precision_radix", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField NUMERIC_SCALE = createField("numeric_scale", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField MAXIMUM_VALUE = createField("maximum_value", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField MINIMUM_VALUE = createField("minimum_value", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField INCREMENT = createField("increment", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField CYCLE_OPTION = createField("cycle_option", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * No further instances allowed + */ + private Sequences() { + super("sequences", org.jooq.util.postgres.information_schema.InformationSchema.INFORMATION_SCHEMA); + } + + /** + * No further instances allowed + */ + private Sequences(java.lang.String alias) { + super(alias, org.jooq.util.postgres.information_schema.InformationSchema.INFORMATION_SCHEMA, org.jooq.util.postgres.information_schema.tables.Sequences.SEQUENCES); + } + + @Override + public org.jooq.util.postgres.information_schema.tables.Sequences as(java.lang.String alias) { + return new org.jooq.util.postgres.information_schema.tables.Sequences(alias); + } +} diff --git a/jOOQ-meta/src/main/java/org/jooq/util/postgres/information_schema/tables/TableConstraints.java b/jOOQ-meta/src/main/java/org/jooq/util/postgres/information_schema/tables/TableConstraints.java new file mode 100644 index 00000000000..0c6031bcc75 --- /dev/null +++ b/jOOQ-meta/src/main/java/org/jooq/util/postgres/information_schema/tables/TableConstraints.java @@ -0,0 +1,96 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.util.postgres.information_schema.tables; + +/** + * This class is generated by jOOQ. + */ +@javax.annotation.Generated(value = {"http://www.jooq.org", "2.0.6"}, + comments = "This class is generated by jOOQ") +public class TableConstraints extends org.jooq.impl.TableImpl { + + private static final long serialVersionUID = -676936346; + + /** + * The singleton instance of information_schema.table_constraints + */ + public static final org.jooq.util.postgres.information_schema.tables.TableConstraints TABLE_CONSTRAINTS = new org.jooq.util.postgres.information_schema.tables.TableConstraints(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.Record.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + */ + public final org.jooq.TableField CONSTRAINT_CATALOG = createField("constraint_catalog", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField CONSTRAINT_SCHEMA = createField("constraint_schema", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField CONSTRAINT_NAME = createField("constraint_name", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField TABLE_CATALOG = createField("table_catalog", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField TABLE_SCHEMA = createField("table_schema", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField TABLE_NAME = createField("table_name", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField CONSTRAINT_TYPE = createField("constraint_type", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField IS_DEFERRABLE = createField("is_deferrable", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField INITIALLY_DEFERRED = createField("initially_deferred", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * No further instances allowed + */ + private TableConstraints() { + super("table_constraints", org.jooq.util.postgres.information_schema.InformationSchema.INFORMATION_SCHEMA); + } + + /** + * No further instances allowed + */ + private TableConstraints(java.lang.String alias) { + super(alias, org.jooq.util.postgres.information_schema.InformationSchema.INFORMATION_SCHEMA, org.jooq.util.postgres.information_schema.tables.TableConstraints.TABLE_CONSTRAINTS); + } + + @Override + public org.jooq.util.postgres.information_schema.tables.TableConstraints as(java.lang.String alias) { + return new org.jooq.util.postgres.information_schema.tables.TableConstraints(alias); + } +} diff --git a/jOOQ-meta/src/main/java/org/jooq/util/postgres/information_schema/tables/Tables.java b/jOOQ-meta/src/main/java/org/jooq/util/postgres/information_schema/tables/Tables.java new file mode 100644 index 00000000000..218c9196225 --- /dev/null +++ b/jOOQ-meta/src/main/java/org/jooq/util/postgres/information_schema/tables/Tables.java @@ -0,0 +1,111 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.util.postgres.information_schema.tables; + +/** + * This class is generated by jOOQ. + */ +@javax.annotation.Generated(value = {"http://www.jooq.org", "2.0.6"}, + comments = "This class is generated by jOOQ") +public class Tables extends org.jooq.impl.TableImpl { + + private static final long serialVersionUID = -621093537; + + /** + * The singleton instance of information_schema.tables + */ + public static final org.jooq.util.postgres.information_schema.tables.Tables TABLES = new org.jooq.util.postgres.information_schema.tables.Tables(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.Record.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + */ + public final org.jooq.TableField TABLE_CATALOG = createField("table_catalog", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField TABLE_SCHEMA = createField("table_schema", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField TABLE_NAME = createField("table_name", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField TABLE_TYPE = createField("table_type", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField SELF_REFERENCING_COLUMN_NAME = createField("self_referencing_column_name", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField REFERENCE_GENERATION = createField("reference_generation", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField USER_DEFINED_TYPE_CATALOG = createField("user_defined_type_catalog", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField USER_DEFINED_TYPE_SCHEMA = createField("user_defined_type_schema", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField USER_DEFINED_TYPE_NAME = createField("user_defined_type_name", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField IS_INSERTABLE_INTO = createField("is_insertable_into", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField IS_TYPED = createField("is_typed", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField COMMIT_ACTION = createField("commit_action", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * No further instances allowed + */ + private Tables() { + super("tables", org.jooq.util.postgres.information_schema.InformationSchema.INFORMATION_SCHEMA); + } + + /** + * No further instances allowed + */ + private Tables(java.lang.String alias) { + super(alias, org.jooq.util.postgres.information_schema.InformationSchema.INFORMATION_SCHEMA, org.jooq.util.postgres.information_schema.tables.Tables.TABLES); + } + + @Override + public org.jooq.util.postgres.information_schema.tables.Tables as(java.lang.String alias) { + return new org.jooq.util.postgres.information_schema.tables.Tables(alias); + } +} diff --git a/jOOQ-meta/src/main/java/org/jooq/util/postgres/pg_catalog/PgCatalog.java b/jOOQ-meta/src/main/java/org/jooq/util/postgres/pg_catalog/PgCatalog.java new file mode 100644 index 00000000000..c25fa727be0 --- /dev/null +++ b/jOOQ-meta/src/main/java/org/jooq/util/postgres/pg_catalog/PgCatalog.java @@ -0,0 +1,37 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.util.postgres.pg_catalog; + +/** + * This class is generated by jOOQ. + */ +@javax.annotation.Generated(value = {"http://www.jooq.org", "2.0.6"}, + comments = "This class is generated by jOOQ") +public class PgCatalog extends org.jooq.impl.SchemaImpl { + + private static final long serialVersionUID = -1216270135; + + /** + * The singleton instance of pg_catalog + */ + public static final PgCatalog PG_CATALOG = new PgCatalog(); + + /** + * No further instances allowed + */ + private PgCatalog() { + super("pg_catalog"); + } + + @Override + public final java.util.List> getTables() { + return java.util.Arrays.>asList( + org.jooq.util.postgres.pg_catalog.tables.PgAttribute.PG_ATTRIBUTE, + org.jooq.util.postgres.pg_catalog.tables.PgClass.PG_CLASS, + org.jooq.util.postgres.pg_catalog.tables.PgEnum.PG_ENUM, + org.jooq.util.postgres.pg_catalog.tables.PgNamespace.PG_NAMESPACE, + org.jooq.util.postgres.pg_catalog.tables.PgProc.PG_PROC, + org.jooq.util.postgres.pg_catalog.tables.PgType.PG_TYPE); + } +} diff --git a/jOOQ-meta/src/main/java/org/jooq/util/postgres/pg_catalog/PgCatalogFactory.java b/jOOQ-meta/src/main/java/org/jooq/util/postgres/pg_catalog/PgCatalogFactory.java new file mode 100644 index 00000000000..9eb63024bc5 --- /dev/null +++ b/jOOQ-meta/src/main/java/org/jooq/util/postgres/pg_catalog/PgCatalogFactory.java @@ -0,0 +1,33 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.util.postgres.pg_catalog; + +/** + * This class is generated by jOOQ. + */ +@javax.annotation.Generated(value = {"http://www.jooq.org", "2.0.6"}, + comments = "This class is generated by jOOQ") +public class PgCatalogFactory extends org.jooq.util.postgres.PostgresFactory { + + private static final long serialVersionUID = -2055956907; + + /** + * Create a factory with a connection + * + * @param connection The connection to use with objects created from this factory + */ + public PgCatalogFactory(java.sql.Connection connection) { + super(connection); + } + + /** + * Create a factory with a connection and some settings + * + * @param connection The connection to use with objects created from this factory + * @param settings The settings to apply to objects created from this factory + */ + public PgCatalogFactory(java.sql.Connection connection, org.jooq.conf.Settings settings) { + super(connection, settings); + } +} diff --git a/jOOQ-meta/src/main/java/org/jooq/util/postgres/pg_catalog/Routines.java b/jOOQ-meta/src/main/java/org/jooq/util/postgres/pg_catalog/Routines.java new file mode 100644 index 00000000000..a597f02a482 --- /dev/null +++ b/jOOQ-meta/src/main/java/org/jooq/util/postgres/pg_catalog/Routines.java @@ -0,0 +1,63 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.util.postgres.pg_catalog; + +/** + * This class is generated by jOOQ. + * + * Convenience access to all stored procedures and functions in pg_catalog + */ +@javax.annotation.Generated(value = {"http://www.jooq.org", "2.0.6"}, + comments = "This class is generated by jOOQ") +public final class Routines { + + /** + * Call pg_catalog.format_type + * + * @param __1 + * @param __2 + * @throws org.jooq.exception.DataAccessException if something went wrong executing the query + */ + public static java.lang.String formatType(org.jooq.Configuration configuration, java.lang.Long __1, java.lang.Integer __2) { + org.jooq.util.postgres.pg_catalog.routines.FormatType f = new org.jooq.util.postgres.pg_catalog.routines.FormatType(); + f.set__1(__1); + f.set__2(__2); + + f.execute(configuration); + return f.getReturnValue(); + } + + /** + * Get pg_catalog.format_type as a field + * + * @param __1 + * @param __2 + */ + public static org.jooq.Field formatType(java.lang.Long __1, java.lang.Integer __2) { + org.jooq.util.postgres.pg_catalog.routines.FormatType f = new org.jooq.util.postgres.pg_catalog.routines.FormatType(); + f.set__1(__1); + f.set__2(__2); + + return f.asField(); + } + + /** + * Get pg_catalog.format_type as a field + * + * @param __1 + * @param __2 + */ + public static org.jooq.Field formatType(org.jooq.Field __1, org.jooq.Field __2) { + org.jooq.util.postgres.pg_catalog.routines.FormatType f = new org.jooq.util.postgres.pg_catalog.routines.FormatType(); + f.set__1(__1); + f.set__2(__2); + + return f.asField(); + } + + /** + * No instances + */ + private Routines() {} +} diff --git a/jOOQ-meta/src/main/java/org/jooq/util/postgres/pg_catalog/Tables.java b/jOOQ-meta/src/main/java/org/jooq/util/postgres/pg_catalog/Tables.java new file mode 100644 index 00000000000..d25f0e2d497 --- /dev/null +++ b/jOOQ-meta/src/main/java/org/jooq/util/postgres/pg_catalog/Tables.java @@ -0,0 +1,49 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.util.postgres.pg_catalog; + +/** + * This class is generated by jOOQ. + * + * Convenience access to all tables in pg_catalog + */ +@javax.annotation.Generated(value = {"http://www.jooq.org", "2.0.6"}, + comments = "This class is generated by jOOQ") +public final class Tables { + + /** + * The table pg_catalog.pg_attribute + */ + public static org.jooq.util.postgres.pg_catalog.tables.PgAttribute PG_ATTRIBUTE = org.jooq.util.postgres.pg_catalog.tables.PgAttribute.PG_ATTRIBUTE; + + /** + * The table pg_catalog.pg_class + */ + public static org.jooq.util.postgres.pg_catalog.tables.PgClass PG_CLASS = org.jooq.util.postgres.pg_catalog.tables.PgClass.PG_CLASS; + + /** + * The table pg_catalog.pg_enum + */ + public static org.jooq.util.postgres.pg_catalog.tables.PgEnum PG_ENUM = org.jooq.util.postgres.pg_catalog.tables.PgEnum.PG_ENUM; + + /** + * The table pg_catalog.pg_namespace + */ + public static org.jooq.util.postgres.pg_catalog.tables.PgNamespace PG_NAMESPACE = org.jooq.util.postgres.pg_catalog.tables.PgNamespace.PG_NAMESPACE; + + /** + * The table pg_catalog.pg_proc + */ + public static org.jooq.util.postgres.pg_catalog.tables.PgProc PG_PROC = org.jooq.util.postgres.pg_catalog.tables.PgProc.PG_PROC; + + /** + * The table pg_catalog.pg_type + */ + public static org.jooq.util.postgres.pg_catalog.tables.PgType PG_TYPE = org.jooq.util.postgres.pg_catalog.tables.PgType.PG_TYPE; + + /** + * No instances + */ + private Tables() {} +} diff --git a/jOOQ-meta/src/main/java/org/jooq/util/postgres/pg_catalog/routines/FormatType.java b/jOOQ-meta/src/main/java/org/jooq/util/postgres/pg_catalog/routines/FormatType.java new file mode 100644 index 00000000000..41c0bd46a91 --- /dev/null +++ b/jOOQ-meta/src/main/java/org/jooq/util/postgres/pg_catalog/routines/FormatType.java @@ -0,0 +1,73 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.util.postgres.pg_catalog.routines; + +/** + * This class is generated by jOOQ. + */ +@javax.annotation.Generated(value = {"http://www.jooq.org", "2.0.6"}, + comments = "This class is generated by jOOQ") +public class FormatType extends org.jooq.impl.AbstractRoutine { + + private static final long serialVersionUID = -1197259008; + + + /** + * An uncommented item + */ + public static final org.jooq.Parameter RETURN_VALUE = createParameter("RETURN_VALUE", org.jooq.impl.SQLDataType.CLOB); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter _1 = createParameter("_1", org.jooq.impl.SQLDataType.BIGINT); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter _2 = createParameter("_2", org.jooq.impl.SQLDataType.INTEGER); + + /** + * Create a new routine call instance + */ + public FormatType() { + super("format_type", org.jooq.util.postgres.pg_catalog.PgCatalog.PG_CATALOG, org.jooq.impl.SQLDataType.CLOB); + + setReturnParameter(RETURN_VALUE); + addInParameter(_1); + addInParameter(_2); + } + + /** + * Set the _1 parameter to the routine + */ + public void set__1(java.lang.Long value) { + setValue(_1, value); + } + + /** + * Set the _1 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void set__1(org.jooq.Field field) { + setField(_1, field); + } + + /** + * Set the _2 parameter to the routine + */ + public void set__2(java.lang.Integer value) { + setValue(_2, value); + } + + /** + * Set the _2 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void set__2(org.jooq.Field field) { + setField(_2, field); + } +} diff --git a/jOOQ-meta/src/main/java/org/jooq/util/postgres/pg_catalog/tables/PgAttribute.java b/jOOQ-meta/src/main/java/org/jooq/util/postgres/pg_catalog/tables/PgAttribute.java new file mode 100644 index 00000000000..9e7a5bbd101 --- /dev/null +++ b/jOOQ-meta/src/main/java/org/jooq/util/postgres/pg_catalog/tables/PgAttribute.java @@ -0,0 +1,146 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.util.postgres.pg_catalog.tables; + +/** + * This class is generated by jOOQ. + */ +@javax.annotation.Generated(value = {"http://www.jooq.org", "2.0.6"}, + comments = "This class is generated by jOOQ") +public class PgAttribute extends org.jooq.impl.TableImpl { + + private static final long serialVersionUID = 2062334520; + + /** + * The singleton instance of pg_catalog.pg_attribute + */ + public static final org.jooq.util.postgres.pg_catalog.tables.PgAttribute PG_ATTRIBUTE = new org.jooq.util.postgres.pg_catalog.tables.PgAttribute(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.Record.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + */ + public final org.jooq.TableField ATTRELID = createField("attrelid", org.jooq.impl.SQLDataType.BIGINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField ATTNAME = createField("attname", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField ATTTYPID = createField("atttypid", org.jooq.impl.SQLDataType.BIGINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField ATTSTATTARGET = createField("attstattarget", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField ATTLEN = createField("attlen", org.jooq.impl.SQLDataType.SMALLINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField ATTNUM = createField("attnum", org.jooq.impl.SQLDataType.SMALLINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField ATTNDIMS = createField("attndims", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField ATTCACHEOFF = createField("attcacheoff", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField ATTTYPMOD = createField("atttypmod", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField ATTBYVAL = createField("attbyval", org.jooq.impl.SQLDataType.BOOLEAN, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField ATTSTORAGE = createField("attstorage", org.jooq.impl.SQLDataType.CHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField ATTALIGN = createField("attalign", org.jooq.impl.SQLDataType.CHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField ATTNOTNULL = createField("attnotnull", org.jooq.impl.SQLDataType.BOOLEAN, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField ATTHASDEF = createField("atthasdef", org.jooq.impl.SQLDataType.BOOLEAN, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField ATTISDROPPED = createField("attisdropped", org.jooq.impl.SQLDataType.BOOLEAN, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField ATTISLOCAL = createField("attislocal", org.jooq.impl.SQLDataType.BOOLEAN, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField ATTINHCOUNT = createField("attinhcount", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField ATTACL = createField("attacl", org.jooq.impl.SQLDataType.VARCHAR.getArrayDataType(), this); + + /** + * An uncommented item + */ + public final org.jooq.TableField ATTOPTIONS = createField("attoptions", org.jooq.impl.SQLDataType.CLOB.getArrayDataType(), this); + + /** + * No further instances allowed + */ + private PgAttribute() { + super("pg_attribute", org.jooq.util.postgres.pg_catalog.PgCatalog.PG_CATALOG); + } + + /** + * No further instances allowed + */ + private PgAttribute(java.lang.String alias) { + super(alias, org.jooq.util.postgres.pg_catalog.PgCatalog.PG_CATALOG, org.jooq.util.postgres.pg_catalog.tables.PgAttribute.PG_ATTRIBUTE); + } + + @Override + public org.jooq.util.postgres.pg_catalog.tables.PgAttribute as(java.lang.String alias) { + return new org.jooq.util.postgres.pg_catalog.tables.PgAttribute(alias); + } +} diff --git a/jOOQ-meta/src/main/java/org/jooq/util/postgres/pg_catalog/tables/PgClass.java b/jOOQ-meta/src/main/java/org/jooq/util/postgres/pg_catalog/tables/PgClass.java new file mode 100644 index 00000000000..c8167d9f2ef --- /dev/null +++ b/jOOQ-meta/src/main/java/org/jooq/util/postgres/pg_catalog/tables/PgClass.java @@ -0,0 +1,186 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.util.postgres.pg_catalog.tables; + +/** + * This class is generated by jOOQ. + */ +@javax.annotation.Generated(value = {"http://www.jooq.org", "2.0.6"}, + comments = "This class is generated by jOOQ") +public class PgClass extends org.jooq.impl.TableImpl { + + private static final long serialVersionUID = 497846309; + + /** + * The singleton instance of pg_catalog.pg_class + */ + public static final org.jooq.util.postgres.pg_catalog.tables.PgClass PG_CLASS = new org.jooq.util.postgres.pg_catalog.tables.PgClass(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.Record.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + */ + public final org.jooq.TableField RELNAME = createField("relname", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField RELNAMESPACE = createField("relnamespace", org.jooq.impl.SQLDataType.BIGINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField RELTYPE = createField("reltype", org.jooq.impl.SQLDataType.BIGINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField RELOFTYPE = createField("reloftype", org.jooq.impl.SQLDataType.BIGINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField RELOWNER = createField("relowner", org.jooq.impl.SQLDataType.BIGINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField RELAM = createField("relam", org.jooq.impl.SQLDataType.BIGINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField RELFILENODE = createField("relfilenode", org.jooq.impl.SQLDataType.BIGINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField RELTABLESPACE = createField("reltablespace", org.jooq.impl.SQLDataType.BIGINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField RELPAGES = createField("relpages", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField RELTUPLES = createField("reltuples", org.jooq.impl.SQLDataType.REAL, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField RELTOASTRELID = createField("reltoastrelid", org.jooq.impl.SQLDataType.BIGINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField RELTOASTIDXID = createField("reltoastidxid", org.jooq.impl.SQLDataType.BIGINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField RELHASINDEX = createField("relhasindex", org.jooq.impl.SQLDataType.BOOLEAN, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField RELISSHARED = createField("relisshared", org.jooq.impl.SQLDataType.BOOLEAN, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField RELISTEMP = createField("relistemp", org.jooq.impl.SQLDataType.BOOLEAN, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField RELKIND = createField("relkind", org.jooq.impl.SQLDataType.CHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField RELNATTS = createField("relnatts", org.jooq.impl.SQLDataType.SMALLINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField RELCHECKS = createField("relchecks", org.jooq.impl.SQLDataType.SMALLINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField RELHASOIDS = createField("relhasoids", org.jooq.impl.SQLDataType.BOOLEAN, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField RELHASPKEY = createField("relhaspkey", org.jooq.impl.SQLDataType.BOOLEAN, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField RELHASEXCLUSION = createField("relhasexclusion", org.jooq.impl.SQLDataType.BOOLEAN, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField RELHASRULES = createField("relhasrules", org.jooq.impl.SQLDataType.BOOLEAN, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField RELHASTRIGGERS = createField("relhastriggers", org.jooq.impl.SQLDataType.BOOLEAN, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField RELHASSUBCLASS = createField("relhassubclass", org.jooq.impl.SQLDataType.BOOLEAN, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField RELFROZENXID = createField("relfrozenxid", org.jooq.impl.SQLDataType.BIGINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField RELACL = createField("relacl", org.jooq.impl.SQLDataType.VARCHAR.getArrayDataType(), this); + + /** + * An uncommented item + */ + public final org.jooq.TableField RELOPTIONS = createField("reloptions", org.jooq.impl.SQLDataType.CLOB.getArrayDataType(), this); + + /** + * No further instances allowed + */ + private PgClass() { + super("pg_class", org.jooq.util.postgres.pg_catalog.PgCatalog.PG_CATALOG); + } + + /** + * No further instances allowed + */ + private PgClass(java.lang.String alias) { + super(alias, org.jooq.util.postgres.pg_catalog.PgCatalog.PG_CATALOG, org.jooq.util.postgres.pg_catalog.tables.PgClass.PG_CLASS); + } + + @Override + public org.jooq.util.postgres.pg_catalog.tables.PgClass as(java.lang.String alias) { + return new org.jooq.util.postgres.pg_catalog.tables.PgClass(alias); + } +} diff --git a/jOOQ-meta/src/main/java/org/jooq/util/postgres/pg_catalog/tables/PgEnum.java b/jOOQ-meta/src/main/java/org/jooq/util/postgres/pg_catalog/tables/PgEnum.java new file mode 100644 index 00000000000..4481799e0b7 --- /dev/null +++ b/jOOQ-meta/src/main/java/org/jooq/util/postgres/pg_catalog/tables/PgEnum.java @@ -0,0 +1,61 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.util.postgres.pg_catalog.tables; + +/** + * This class is generated by jOOQ. + */ +@javax.annotation.Generated(value = {"http://www.jooq.org", "2.0.6"}, + comments = "This class is generated by jOOQ") +public class PgEnum extends org.jooq.impl.TableImpl { + + private static final long serialVersionUID = 1198881091; + + /** + * The singleton instance of pg_catalog.pg_enum + */ + public static final org.jooq.util.postgres.pg_catalog.tables.PgEnum PG_ENUM = new org.jooq.util.postgres.pg_catalog.tables.PgEnum(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.Record.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + */ + public final org.jooq.TableField ENUMTYPID = createField("enumtypid", org.jooq.impl.SQLDataType.BIGINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField ENUMLABEL = createField("enumlabel", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * No further instances allowed + */ + private PgEnum() { + super("pg_enum", org.jooq.util.postgres.pg_catalog.PgCatalog.PG_CATALOG); + } + + /** + * No further instances allowed + */ + private PgEnum(java.lang.String alias) { + super(alias, org.jooq.util.postgres.pg_catalog.PgCatalog.PG_CATALOG, org.jooq.util.postgres.pg_catalog.tables.PgEnum.PG_ENUM); + } + + @Override + public org.jooq.util.postgres.pg_catalog.tables.PgEnum as(java.lang.String alias) { + return new org.jooq.util.postgres.pg_catalog.tables.PgEnum(alias); + } +} diff --git a/jOOQ-meta/src/main/java/org/jooq/util/postgres/pg_catalog/tables/PgNamespace.java b/jOOQ-meta/src/main/java/org/jooq/util/postgres/pg_catalog/tables/PgNamespace.java new file mode 100644 index 00000000000..62ea7dea18c --- /dev/null +++ b/jOOQ-meta/src/main/java/org/jooq/util/postgres/pg_catalog/tables/PgNamespace.java @@ -0,0 +1,66 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.util.postgres.pg_catalog.tables; + +/** + * This class is generated by jOOQ. + */ +@javax.annotation.Generated(value = {"http://www.jooq.org", "2.0.6"}, + comments = "This class is generated by jOOQ") +public class PgNamespace extends org.jooq.impl.TableImpl { + + private static final long serialVersionUID = -1774545004; + + /** + * The singleton instance of pg_catalog.pg_namespace + */ + public static final org.jooq.util.postgres.pg_catalog.tables.PgNamespace PG_NAMESPACE = new org.jooq.util.postgres.pg_catalog.tables.PgNamespace(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.Record.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + */ + public final org.jooq.TableField NSPNAME = createField("nspname", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField NSPOWNER = createField("nspowner", org.jooq.impl.SQLDataType.BIGINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField NSPACL = createField("nspacl", org.jooq.impl.SQLDataType.VARCHAR.getArrayDataType(), this); + + /** + * No further instances allowed + */ + private PgNamespace() { + super("pg_namespace", org.jooq.util.postgres.pg_catalog.PgCatalog.PG_CATALOG); + } + + /** + * No further instances allowed + */ + private PgNamespace(java.lang.String alias) { + super(alias, org.jooq.util.postgres.pg_catalog.PgCatalog.PG_CATALOG, org.jooq.util.postgres.pg_catalog.tables.PgNamespace.PG_NAMESPACE); + } + + @Override + public org.jooq.util.postgres.pg_catalog.tables.PgNamespace as(java.lang.String alias) { + return new org.jooq.util.postgres.pg_catalog.tables.PgNamespace(alias); + } +} diff --git a/jOOQ-meta/src/main/java/org/jooq/util/postgres/pg_catalog/tables/PgProc.java b/jOOQ-meta/src/main/java/org/jooq/util/postgres/pg_catalog/tables/PgProc.java new file mode 100644 index 00000000000..b84a6728e56 --- /dev/null +++ b/jOOQ-meta/src/main/java/org/jooq/util/postgres/pg_catalog/tables/PgProc.java @@ -0,0 +1,176 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.util.postgres.pg_catalog.tables; + +/** + * This class is generated by jOOQ. + */ +@javax.annotation.Generated(value = {"http://www.jooq.org", "2.0.6"}, + comments = "This class is generated by jOOQ") +public class PgProc extends org.jooq.impl.TableImpl { + + private static final long serialVersionUID = 1574331687; + + /** + * The singleton instance of pg_catalog.pg_proc + */ + public static final org.jooq.util.postgres.pg_catalog.tables.PgProc PG_PROC = new org.jooq.util.postgres.pg_catalog.tables.PgProc(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.Record.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + */ + public final org.jooq.TableField PRONAME = createField("proname", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField PRONAMESPACE = createField("pronamespace", org.jooq.impl.SQLDataType.BIGINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField PROOWNER = createField("proowner", org.jooq.impl.SQLDataType.BIGINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField PROLANG = createField("prolang", org.jooq.impl.SQLDataType.BIGINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField PROCOST = createField("procost", org.jooq.impl.SQLDataType.REAL, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField PROROWS = createField("prorows", org.jooq.impl.SQLDataType.REAL, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField PROVARIADIC = createField("provariadic", org.jooq.impl.SQLDataType.BIGINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField PROISAGG = createField("proisagg", org.jooq.impl.SQLDataType.BOOLEAN, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField PROISWINDOW = createField("proiswindow", org.jooq.impl.SQLDataType.BOOLEAN, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField PROSECDEF = createField("prosecdef", org.jooq.impl.SQLDataType.BOOLEAN, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField PROISSTRICT = createField("proisstrict", org.jooq.impl.SQLDataType.BOOLEAN, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField PRORETSET = createField("proretset", org.jooq.impl.SQLDataType.BOOLEAN, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField PROVOLATILE = createField("provolatile", org.jooq.impl.SQLDataType.CHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField PRONARGS = createField("pronargs", org.jooq.impl.SQLDataType.SMALLINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField PRONARGDEFAULTS = createField("pronargdefaults", org.jooq.impl.SQLDataType.SMALLINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField PRORETTYPE = createField("prorettype", org.jooq.impl.SQLDataType.BIGINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField PROARGTYPES = createField("proargtypes", org.jooq.impl.SQLDataType.BIGINT.getArrayDataType(), this); + + /** + * An uncommented item + */ + public final org.jooq.TableField PROALLARGTYPES = createField("proallargtypes", org.jooq.impl.SQLDataType.BIGINT.getArrayDataType(), this); + + /** + * An uncommented item + */ + public final org.jooq.TableField PROARGMODES = createField("proargmodes", org.jooq.impl.SQLDataType.CHAR.getArrayDataType(), this); + + /** + * An uncommented item + */ + public final org.jooq.TableField PROARGNAMES = createField("proargnames", org.jooq.impl.SQLDataType.CLOB.getArrayDataType(), this); + + /** + * An uncommented item + */ + public final org.jooq.TableField PROARGDEFAULTS = createField("proargdefaults", org.jooq.impl.SQLDataType.CLOB, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField PROSRC = createField("prosrc", org.jooq.impl.SQLDataType.CLOB, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField PROBIN = createField("probin", org.jooq.impl.SQLDataType.CLOB, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField PROCONFIG = createField("proconfig", org.jooq.impl.SQLDataType.CLOB.getArrayDataType(), this); + + /** + * An uncommented item + */ + public final org.jooq.TableField PROACL = createField("proacl", org.jooq.impl.SQLDataType.VARCHAR.getArrayDataType(), this); + + /** + * No further instances allowed + */ + private PgProc() { + super("pg_proc", org.jooq.util.postgres.pg_catalog.PgCatalog.PG_CATALOG); + } + + /** + * No further instances allowed + */ + private PgProc(java.lang.String alias) { + super(alias, org.jooq.util.postgres.pg_catalog.PgCatalog.PG_CATALOG, org.jooq.util.postgres.pg_catalog.tables.PgProc.PG_PROC); + } + + @Override + public org.jooq.util.postgres.pg_catalog.tables.PgProc as(java.lang.String alias) { + return new org.jooq.util.postgres.pg_catalog.tables.PgProc(alias); + } +} diff --git a/jOOQ-meta/src/main/java/org/jooq/util/postgres/pg_catalog/tables/PgType.java b/jOOQ-meta/src/main/java/org/jooq/util/postgres/pg_catalog/tables/PgType.java new file mode 100644 index 00000000000..e164cc2b67b --- /dev/null +++ b/jOOQ-meta/src/main/java/org/jooq/util/postgres/pg_catalog/tables/PgType.java @@ -0,0 +1,191 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.util.postgres.pg_catalog.tables; + +/** + * This class is generated by jOOQ. + */ +@javax.annotation.Generated(value = {"http://www.jooq.org", "2.0.6"}, + comments = "This class is generated by jOOQ") +public class PgType extends org.jooq.impl.TableImpl { + + private static final long serialVersionUID = 867629277; + + /** + * The singleton instance of pg_catalog.pg_type + */ + public static final org.jooq.util.postgres.pg_catalog.tables.PgType PG_TYPE = new org.jooq.util.postgres.pg_catalog.tables.PgType(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.Record.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + */ + public final org.jooq.TableField TYPNAME = createField("typname", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField TYPNAMESPACE = createField("typnamespace", org.jooq.impl.SQLDataType.BIGINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField TYPOWNER = createField("typowner", org.jooq.impl.SQLDataType.BIGINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField TYPLEN = createField("typlen", org.jooq.impl.SQLDataType.SMALLINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField TYPBYVAL = createField("typbyval", org.jooq.impl.SQLDataType.BOOLEAN, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField TYPTYPE = createField("typtype", org.jooq.impl.SQLDataType.CHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField TYPCATEGORY = createField("typcategory", org.jooq.impl.SQLDataType.CHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField TYPISPREFERRED = createField("typispreferred", org.jooq.impl.SQLDataType.BOOLEAN, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField TYPISDEFINED = createField("typisdefined", org.jooq.impl.SQLDataType.BOOLEAN, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField TYPDELIM = createField("typdelim", org.jooq.impl.SQLDataType.CHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField TYPRELID = createField("typrelid", org.jooq.impl.SQLDataType.BIGINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField TYPELEM = createField("typelem", org.jooq.impl.SQLDataType.BIGINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField TYPARRAY = createField("typarray", org.jooq.impl.SQLDataType.BIGINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField TYPINPUT = createField("typinput", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField TYPOUTPUT = createField("typoutput", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField TYPRECEIVE = createField("typreceive", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField TYPSEND = createField("typsend", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField TYPMODIN = createField("typmodin", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField TYPMODOUT = createField("typmodout", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField TYPANALYZE = createField("typanalyze", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField TYPALIGN = createField("typalign", org.jooq.impl.SQLDataType.CHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField TYPSTORAGE = createField("typstorage", org.jooq.impl.SQLDataType.CHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField TYPNOTNULL = createField("typnotnull", org.jooq.impl.SQLDataType.BOOLEAN, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField TYPBASETYPE = createField("typbasetype", org.jooq.impl.SQLDataType.BIGINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField TYPTYPMOD = createField("typtypmod", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField TYPNDIMS = createField("typndims", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField TYPDEFAULTBIN = createField("typdefaultbin", org.jooq.impl.SQLDataType.CLOB, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField TYPDEFAULT = createField("typdefault", org.jooq.impl.SQLDataType.CLOB, this); + + /** + * No further instances allowed + */ + private PgType() { + super("pg_type", org.jooq.util.postgres.pg_catalog.PgCatalog.PG_CATALOG); + } + + /** + * No further instances allowed + */ + private PgType(java.lang.String alias) { + super(alias, org.jooq.util.postgres.pg_catalog.PgCatalog.PG_CATALOG, org.jooq.util.postgres.pg_catalog.tables.PgType.PG_TYPE); + } + + @Override + public org.jooq.util.postgres.pg_catalog.tables.PgType as(java.lang.String alias) { + return new org.jooq.util.postgres.pg_catalog.tables.PgType(alias); + } +} diff --git a/jOOQ-meta/src/main/java/org/jooq/util/sqlite/SQLiteDatabase.java b/jOOQ-meta/src/main/java/org/jooq/util/sqlite/SQLiteDatabase.java new file mode 100644 index 00000000000..dbfaecb92f5 --- /dev/null +++ b/jOOQ-meta/src/main/java/org/jooq/util/sqlite/SQLiteDatabase.java @@ -0,0 +1,219 @@ +/** + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com + * All rights reserved. + * + * This software is licensed to you under the Apache License, Version 2.0 + * (the "License"); You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * 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 "jOOQ" 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 COPYRIGHT OWNER 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. + */ +package org.jooq.util.sqlite; + +import static org.jooq.util.sqlite.sqlite_master.SQLiteMaster.SQLITE_MASTER; + +import java.sql.SQLException; +import java.util.ArrayList; +import java.util.HashMap; +import java.util.List; +import java.util.Map; + +import org.jooq.Record; +import org.jooq.impl.Factory; +import org.jooq.util.AbstractDatabase; +import org.jooq.util.ArrayDefinition; +import org.jooq.util.ColumnDefinition; +import org.jooq.util.DefaultRelations; +import org.jooq.util.EnumDefinition; +import org.jooq.util.PackageDefinition; +import org.jooq.util.RoutineDefinition; +import org.jooq.util.SequenceDefinition; +import org.jooq.util.TableDefinition; +import org.jooq.util.UDTDefinition; +import org.jooq.util.jaxb.Schema; +import org.jooq.util.sqlite.sqlite_master.SQLiteMaster; + +/** + * SQLite implementation of {@link AbstractDatabase} + * + * @author Lukas Eder + */ +public class SQLiteDatabase extends AbstractDatabase { + + public SQLiteDatabase() { + + // SQLite doesn't know schemata + Schema schema = new Schema(); + schema.setInputSchema(""); + schema.setOutputSchema(""); + + List schemata = new ArrayList(); + schemata.add(schema); + + setConfiguredSchemata(schemata); + } + + @Override + public Factory create() { + return new SQLiteFactory(getConnection()); + } + + @Override + protected void loadPrimaryKeys(DefaultRelations relations) throws SQLException { + for (String tableName : create() + .select(SQLiteMaster.NAME) + .from(SQLITE_MASTER) + .where(SQLiteMaster.TYPE.in("table")) + .orderBy(SQLiteMaster.NAME) + .fetch(SQLiteMaster.NAME)) { + + for (Record record : create().fetch("pragma table_info('" + tableName + "')")) { + if (record.getValueAsBoolean("pk", false)) { + String columnName = record.getValueAsString("name"); + + // Generate a primary key name + String key = "pk_" + tableName + "_" + columnName; + TableDefinition table = getTable(getSchemata().get(0), tableName); + + if (table != null) { + ColumnDefinition column = table.getColumn(columnName); + relations.addPrimaryKey(key, column); + } + } + } + } + } + + @Override + protected void loadUniqueKeys(DefaultRelations r) throws SQLException { + + } + + @Override + protected void loadForeignKeys(DefaultRelations relations) throws SQLException { + for (TableDefinition table : getTables(getSchemata().get(0))) { + Map map = new HashMap(); + + for (Record record : create().fetch("pragma foreign_key_list(" + table.getName() + ")")) { + String foreignKeyPrefix = + "fk_" + table.getName() + + "_" + record.getValue("table"); + + Integer sequence = map.get(foreignKeyPrefix); + if (sequence == null) { + sequence = 0; + } + + if (0 == record.getValue("seq", Integer.class)) { + sequence = sequence + 1; + } + + map.put(foreignKeyPrefix, sequence); + + String foreignKey = + "fk_" + table.getName() + + "_" + record.getValue("table") + + "_" + sequence; + + String foreignKeyTable = table.getName(); + String foreignKeyColumn = record.getValueAsString("from"); + + // SQLite mixes up cases from the actual declaration and the + // reference definition! It's possible that a table is declared + // in lower case, and the foreign key in upper case. Hence, + // correct the foreign key + TableDefinition referencingTable = getTable(getSchemata().get(0), foreignKeyTable); + TableDefinition referencedTable = getTable(getSchemata().get(0), record.getValueAsString("table"), true); + + if (referencedTable != null) { + String uniqueKey = + "pk_" + referencedTable.getName() + + "_" + referencedTable.getColumn(record.getValueAsString("to"), true).getName(); + + if (referencingTable != null) { + ColumnDefinition referencingColumn = referencingTable.getColumn(foreignKeyColumn); + relations.addForeignKey(foreignKey, uniqueKey, referencingColumn, getSchemata().get(0)); + } + } + } + } + } + + @Override + protected List getSequences0() throws SQLException { + List result = new ArrayList(); + return result; + } + + @Override + protected List getTables0() throws SQLException { + List result = new ArrayList(); + + for (String name : create().select(SQLiteMaster.NAME) + .from(SQLITE_MASTER) + .where(SQLiteMaster.TYPE.in("table", "view")) + .orderBy(SQLiteMaster.NAME) + .fetch(SQLiteMaster.NAME)) { + + SQLiteTableDefinition table = new SQLiteTableDefinition(getSchemata().get(0), name, ""); + result.add(table); + } + + return result; + } + + @Override + protected List getRoutines0() throws SQLException { + List result = new ArrayList(); + return result; + } + + @Override + protected List getPackages0() throws SQLException { + List result = new ArrayList(); + return result; + } + + @Override + protected List getEnums0() throws SQLException { + List result = new ArrayList(); + return result; + } + + @Override + protected List getUDTs0() throws SQLException { + List result = new ArrayList(); + return result; + } + + @Override + protected List getArrays0() throws SQLException { + List result = new ArrayList(); + return result; + } +} diff --git a/jOOQ-meta/src/main/java/org/jooq/util/sqlite/SQLiteTableDefinition.java b/jOOQ-meta/src/main/java/org/jooq/util/sqlite/SQLiteTableDefinition.java new file mode 100644 index 00000000000..2898905a026 --- /dev/null +++ b/jOOQ-meta/src/main/java/org/jooq/util/sqlite/SQLiteTableDefinition.java @@ -0,0 +1,103 @@ +/** + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com + * All rights reserved. + * + * This software is licensed to you under the Apache License, Version 2.0 + * (the "License"); You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * 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 "jOOQ" 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 COPYRIGHT OWNER 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. + */ +package org.jooq.util.sqlite; + +import java.sql.SQLException; +import java.util.ArrayList; +import java.util.List; + +import org.jooq.Record; +import org.jooq.util.AbstractTableDefinition; +import org.jooq.util.ColumnDefinition; +import org.jooq.util.DefaultColumnDefinition; +import org.jooq.util.DefaultDataTypeDefinition; +import org.jooq.util.SchemaDefinition; + +/** + * SQLite table definition + * + * @author Lukas Eder + */ +public class SQLiteTableDefinition extends AbstractTableDefinition { + + public SQLiteTableDefinition(SchemaDefinition schema, String name, String comment) { + super(schema, name, comment); + } + + @Override + public List getElements0() throws SQLException { + List result = new ArrayList(); + + int position = 0; + for (Record record : create().fetch("pragma table_info('" + getName() + "')")) { + position++; + + String name = record.getValueAsString("name"); + String dataType = record.getValueAsString("type") + .replaceAll("\\(\\d+\\)", ""); + Number precision = parsePrecision(record.getValueAsString("type")); + Number scale = parseScale(record.getValueAsString("type")); + + // SQLite identities are primary keys whose tables are mentioned in + // sqlite_sequence + boolean pk = record.getValueAsBoolean("pk"); + boolean identity = pk && create() + .fetchOne("select count(*) from sqlite_sequence where name = ?", getName()) + .getValue(0, Boolean.class); + + DefaultDataTypeDefinition type = new DefaultDataTypeDefinition( + getDatabase(), + getSchema(), + dataType, + precision, + precision, + scale); + + ColumnDefinition column = new DefaultColumnDefinition( + getDatabase().getTable(getSchema(), getName()), + name, + position, + type, + !record.getValue("notnull", boolean.class), + identity, + null); + + result.add(column); + } + + return result; + } +} diff --git a/jOOQ-meta/src/main/java/org/jooq/util/sqlite/sqlite_master/SQLiteMaster.java b/jOOQ-meta/src/main/java/org/jooq/util/sqlite/sqlite_master/SQLiteMaster.java new file mode 100644 index 00000000000..66d7c9153e7 --- /dev/null +++ b/jOOQ-meta/src/main/java/org/jooq/util/sqlite/sqlite_master/SQLiteMaster.java @@ -0,0 +1,72 @@ +/** + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com + * All rights reserved. + * + * This software is licensed to you under the Apache License, Version 2.0 + * (the "License"); You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * 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 "jOOQ" 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 COPYRIGHT OWNER 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. + */ +package org.jooq.util.sqlite.sqlite_master; + + +import org.jooq.Record; +import org.jooq.TableField; +import org.jooq.impl.TableImpl; +import org.jooq.util.sqlite.SQLiteDataType; + + +/** + * This class is NOT generated, as SQLite does not support meta-querying the + * meta-model. + * + * @author Lukas Eder + */ +public class SQLiteMaster extends TableImpl { + + private static final long serialVersionUID = -823335201; + + /** + * The singleton instance of tables + */ + public static final SQLiteMaster SQLITE_MASTER = new SQLiteMaster(); + + public static final TableField TYPE = createField("type", SQLiteDataType.VARCHAR, SQLITE_MASTER); + public static final TableField NAME = createField("name", SQLiteDataType.VARCHAR, SQLITE_MASTER); + public static final TableField TBL_NAME = createField("tbl_name", SQLiteDataType.VARCHAR, SQLITE_MASTER); + public static final TableField ROOTPAGE = createField("rootpage", SQLiteDataType.INTEGER, SQLITE_MASTER); + public static final TableField SQL = createField("sql", SQLiteDataType.VARCHAR, SQLITE_MASTER); + + /** + * No further instances allowed + */ + private SQLiteMaster() { + super("sqlite_master"); + } +} diff --git a/jOOQ-meta/src/main/java/org/jooq/util/sqlserver/SQLServerDatabase.java b/jOOQ-meta/src/main/java/org/jooq/util/sqlserver/SQLServerDatabase.java new file mode 100644 index 00000000000..dd1b6f30623 --- /dev/null +++ b/jOOQ-meta/src/main/java/org/jooq/util/sqlserver/SQLServerDatabase.java @@ -0,0 +1,285 @@ +/** + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com + * All rights reserved. + * + * This software is licensed to you under the Apache License, Version 2.0 + * (the "License"); You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * 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 "jOOQ" 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 COPYRIGHT OWNER 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. + */ + +package org.jooq.util.sqlserver; + +import static org.jooq.util.sqlserver.information_schema.Tables.KEY_COLUMN_USAGE; +import static org.jooq.util.sqlserver.information_schema.Tables.REFERENTIAL_CONSTRAINTS; +import static org.jooq.util.sqlserver.information_schema.Tables.ROUTINES; +import static org.jooq.util.sqlserver.information_schema.Tables.TABLES; +import static org.jooq.util.sqlserver.information_schema.Tables.TABLE_CONSTRAINTS; + +import java.sql.SQLException; +import java.util.ArrayList; +import java.util.Collections; +import java.util.List; + +import org.jooq.Record; +import org.jooq.Result; +import org.jooq.impl.Factory; +import org.jooq.util.AbstractDatabase; +import org.jooq.util.ArrayDefinition; +import org.jooq.util.ColumnDefinition; +import org.jooq.util.DefaultRelations; +import org.jooq.util.EnumDefinition; +import org.jooq.util.PackageDefinition; +import org.jooq.util.RoutineDefinition; +import org.jooq.util.SchemaDefinition; +import org.jooq.util.SequenceDefinition; +import org.jooq.util.TableDefinition; +import org.jooq.util.UDTDefinition; + +/** + * The SQL Server database. This database uses generated artefacts from HSQLDB, + * because HSQLDB's INFORMATION_SCHEMA is very similar to that of SQL Server, + * whereas SQL Server's INFORMATION_SCHEMA is not self-contained, i.e. it cannot + * be generated reading its own data. + * + * @author Lukas Eder + */ +public class SQLServerDatabase extends AbstractDatabase { + + @Override + public Factory create() { + return new SQLServerFactory(getConnection()); + } + + /** + * {@inheritDoc} + */ + @Override + protected void loadPrimaryKeys(DefaultRelations relations) throws SQLException { + for (Record record : fetchKeys("PRIMARY KEY")) { + SchemaDefinition schema = getSchema(record.getValue(KEY_COLUMN_USAGE.TABLE_SCHEMA)); + String key = record.getValue(KEY_COLUMN_USAGE.CONSTRAINT_NAME); + String tableName = record.getValue(KEY_COLUMN_USAGE.TABLE_NAME); + String columnName = record.getValue(KEY_COLUMN_USAGE.COLUMN_NAME); + + TableDefinition table = getTable(schema, tableName); + if (table != null) { + relations.addPrimaryKey(key, table.getColumn(columnName)); + } + } + } + + /** + * {@inheritDoc} + */ + @Override + protected void loadUniqueKeys(DefaultRelations relations) throws SQLException { + for (Record record : fetchKeys("UNIQUE")) { + SchemaDefinition schema = getSchema(record.getValue(KEY_COLUMN_USAGE.TABLE_SCHEMA)); + String key = record.getValue(KEY_COLUMN_USAGE.CONSTRAINT_NAME); + String tableName = record.getValue(KEY_COLUMN_USAGE.TABLE_NAME); + String columnName = record.getValue(KEY_COLUMN_USAGE.COLUMN_NAME); + + TableDefinition table = getTable(schema, tableName); + if (table != null) { + relations.addUniqueKey(key, table.getColumn(columnName)); + } + } + } + + private List fetchKeys(String constraintType) { + return create() + .select( + KEY_COLUMN_USAGE.TABLE_SCHEMA, + KEY_COLUMN_USAGE.CONSTRAINT_NAME, + KEY_COLUMN_USAGE.TABLE_NAME, + KEY_COLUMN_USAGE.COLUMN_NAME) + .from(TABLE_CONSTRAINTS) + .join(KEY_COLUMN_USAGE) + .on(TABLE_CONSTRAINTS.TABLE_SCHEMA.equal(KEY_COLUMN_USAGE.TABLE_SCHEMA)) + .and(TABLE_CONSTRAINTS.CONSTRAINT_NAME.equal(KEY_COLUMN_USAGE.CONSTRAINT_NAME)) + .where(TABLE_CONSTRAINTS.CONSTRAINT_TYPE.equal(constraintType)) + .and(TABLE_CONSTRAINTS.TABLE_SCHEMA.in(getInputSchemata())) + .orderBy( + KEY_COLUMN_USAGE.TABLE_SCHEMA.asc(), + KEY_COLUMN_USAGE.TABLE_NAME.asc(), + KEY_COLUMN_USAGE.CONSTRAINT_NAME.asc(), + KEY_COLUMN_USAGE.ORDINAL_POSITION.asc()) + .fetch(); + } + + /** + * {@inheritDoc} + */ + @Override + protected void loadForeignKeys(DefaultRelations relations) throws SQLException { + Result result = create() + .select( + REFERENTIAL_CONSTRAINTS.CONSTRAINT_NAME, + REFERENTIAL_CONSTRAINTS.UNIQUE_CONSTRAINT_NAME, + REFERENTIAL_CONSTRAINTS.UNIQUE_CONSTRAINT_SCHEMA, + KEY_COLUMN_USAGE.TABLE_SCHEMA, + KEY_COLUMN_USAGE.TABLE_NAME, + KEY_COLUMN_USAGE.COLUMN_NAME) + .from(REFERENTIAL_CONSTRAINTS) + .join(KEY_COLUMN_USAGE) + .on(REFERENTIAL_CONSTRAINTS.CONSTRAINT_SCHEMA.equal(KEY_COLUMN_USAGE.CONSTRAINT_SCHEMA)) + .and(REFERENTIAL_CONSTRAINTS.CONSTRAINT_NAME.equal(KEY_COLUMN_USAGE.CONSTRAINT_NAME)) + .where(REFERENTIAL_CONSTRAINTS.CONSTRAINT_SCHEMA.in(getInputSchemata())) + .orderBy( + KEY_COLUMN_USAGE.TABLE_SCHEMA.asc(), + KEY_COLUMN_USAGE.TABLE_NAME.asc(), + KEY_COLUMN_USAGE.CONSTRAINT_NAME.asc(), + KEY_COLUMN_USAGE.ORDINAL_POSITION.asc()) + .fetch(); + + for (Record record : result) { + SchemaDefinition foreignKeySchema = getSchema(record.getValue(KEY_COLUMN_USAGE.TABLE_SCHEMA)); + SchemaDefinition uniqueKeySchema = getSchema(record.getValue(REFERENTIAL_CONSTRAINTS.UNIQUE_CONSTRAINT_SCHEMA)); + + String foreignKey = record.getValue(REFERENTIAL_CONSTRAINTS.CONSTRAINT_NAME); + String foreignKeyTable = record.getValue(KEY_COLUMN_USAGE.TABLE_NAME); + String foreignKeyColumn = record.getValue(KEY_COLUMN_USAGE.COLUMN_NAME); + String uniqueKey = record.getValue(REFERENTIAL_CONSTRAINTS.UNIQUE_CONSTRAINT_NAME); + + TableDefinition referencingTable = getTable(foreignKeySchema, foreignKeyTable); + + if (referencingTable != null) { + ColumnDefinition referencingColumn = referencingTable.getColumn(foreignKeyColumn); + relations.addForeignKey(foreignKey, uniqueKey, referencingColumn, uniqueKeySchema); + } + } + } + + /** + * {@inheritDoc} + */ + @Override + protected List getSequences0() throws SQLException { + return Collections.emptyList(); + } + + /** + * {@inheritDoc} + */ + @Override + protected List getTables0() throws SQLException { + List result = new ArrayList(); + + for (Record record : create() + .select( + TABLES.TABLE_SCHEMA, + TABLES.TABLE_NAME) + .from(TABLES) + .where(TABLES.TABLE_SCHEMA.in(getInputSchemata())) + .orderBy( + TABLES.TABLE_SCHEMA, + TABLES.TABLE_NAME) + .fetch()) { + + SchemaDefinition schema = getSchema(record.getValue(TABLES.TABLE_SCHEMA)); + String name = record.getValue(TABLES.TABLE_NAME); + String comment = ""; + + result.add(new SQLServerTableDefinition(schema, name, comment)); + } + + return result; + } + + /** + * {@inheritDoc} + */ + @Override + protected List getEnums0() throws SQLException { + List result = new ArrayList(); + return result; + } + + /** + * {@inheritDoc} + */ + @Override + protected List getUDTs0() throws SQLException { + List result = new ArrayList(); + return result; + } + + /** + * {@inheritDoc} + */ + @Override + protected List getArrays0() throws SQLException { + List result = new ArrayList(); + return result; + } + + @Override + protected List getRoutines0() throws SQLException { + List result = new ArrayList(); + + for (Record record : create() + .selectDistinct( + ROUTINES.ROUTINE_SCHEMA, + ROUTINES.ROUTINE_NAME, + ROUTINES.SPECIFIC_NAME, + ROUTINES.DATA_TYPE, + ROUTINES.CHARACTER_MAXIMUM_LENGTH, + ROUTINES.NUMERIC_PRECISION, + ROUTINES.NUMERIC_SCALE) + .from(ROUTINES) + .where(ROUTINES.ROUTINE_SCHEMA.in(getInputSchemata())) + .orderBy( + ROUTINES.ROUTINE_SCHEMA, + ROUTINES.ROUTINE_NAME) + .fetch()) { + + SQLServerRoutineDefinition routine = new SQLServerRoutineDefinition( + getSchema(record.getValue(ROUTINES.ROUTINE_SCHEMA)), + record.getValue(ROUTINES.ROUTINE_NAME), + record.getValue(ROUTINES.SPECIFIC_NAME), + record.getValue(ROUTINES.DATA_TYPE), + record.getValue(ROUTINES.CHARACTER_MAXIMUM_LENGTH), + record.getValue(ROUTINES.NUMERIC_PRECISION), + record.getValue(ROUTINES.NUMERIC_SCALE)); + result.add(routine); + } + + return result; + } + + /** + * {@inheritDoc} + */ + @Override + protected List getPackages0() throws SQLException { + List result = new ArrayList(); + return result; + } +} diff --git a/jOOQ-meta/src/main/java/org/jooq/util/sqlserver/SQLServerRoutineDefinition.java b/jOOQ-meta/src/main/java/org/jooq/util/sqlserver/SQLServerRoutineDefinition.java new file mode 100644 index 00000000000..870670463da --- /dev/null +++ b/jOOQ-meta/src/main/java/org/jooq/util/sqlserver/SQLServerRoutineDefinition.java @@ -0,0 +1,115 @@ +/** + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com + * All rights reserved. + * + * This software is licensed to you under the Apache License, Version 2.0 + * (the "License"); You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * 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 "jOOQ" 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 COPYRIGHT OWNER 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. + */ +package org.jooq.util.sqlserver; + +import static org.jooq.util.sqlserver.information_schema.Tables.PARAMETERS; +import static org.jooq.util.sqlserver.information_schema.Tables.ROUTINES; + +import java.sql.SQLException; + +import org.jooq.Record; +import org.jooq.Result; +import org.jooq.tools.StringUtils; +import org.jooq.util.AbstractRoutineDefinition; +import org.jooq.util.DataTypeDefinition; +import org.jooq.util.DefaultDataTypeDefinition; +import org.jooq.util.DefaultParameterDefinition; +import org.jooq.util.InOutDefinition; +import org.jooq.util.ParameterDefinition; +import org.jooq.util.SchemaDefinition; + +/** + * @author Lukas Eder + */ +public class SQLServerRoutineDefinition extends AbstractRoutineDefinition { + + /** + * internal name for the function used by HSQLDB / SQL Server + */ + private final String specificName; + + public SQLServerRoutineDefinition(SchemaDefinition schema, String name, String specificName, String dataType, Number length, Number precision, Number scale) { + super(schema, null, name, null, null); + + if (!StringUtils.isBlank(dataType)) { + DataTypeDefinition type = new DefaultDataTypeDefinition(getDatabase(), schema, dataType, length, precision, scale); + this.returnValue = new DefaultParameterDefinition(this, "RETURN_VALUE", -1, type); + } + + this.specificName = specificName; + } + + @Override + protected void init0() throws SQLException { + Result result = create().selectDistinct( + PARAMETERS.PARAMETER_MODE, + PARAMETERS.PARAMETER_NAME, + PARAMETERS.DATA_TYPE, + PARAMETERS.CHARACTER_MAXIMUM_LENGTH, + PARAMETERS.NUMERIC_PRECISION, + PARAMETERS.NUMERIC_SCALE, + PARAMETERS.ORDINAL_POSITION, + PARAMETERS.IS_RESULT) + .from(PARAMETERS) + .join(ROUTINES) + .on(PARAMETERS.SPECIFIC_SCHEMA.equal(ROUTINES.SPECIFIC_SCHEMA)) + .and(PARAMETERS.SPECIFIC_NAME.equal(ROUTINES.SPECIFIC_NAME)) + .where(PARAMETERS.SPECIFIC_SCHEMA.equal(getSchema().getName())) + .and(PARAMETERS.SPECIFIC_NAME.equal(this.specificName)) + .and(PARAMETERS.IS_RESULT.isFalse()) + .orderBy(PARAMETERS.ORDINAL_POSITION.asc()).fetch(); + + for (Record record : result) { + String inOut = record.getValue(PARAMETERS.PARAMETER_MODE); + + DataTypeDefinition type = new DefaultDataTypeDefinition( + getDatabase(), + getSchema(), + record.getValue(PARAMETERS.DATA_TYPE), + record.getValue(PARAMETERS.CHARACTER_MAXIMUM_LENGTH), + record.getValue(PARAMETERS.NUMERIC_PRECISION), + record.getValue(PARAMETERS.NUMERIC_SCALE)); + + ParameterDefinition parameter = new DefaultParameterDefinition( + this, + record.getValue(PARAMETERS.PARAMETER_NAME).replaceAll("@", ""), + record.getValueAsInteger(PARAMETERS.ORDINAL_POSITION), + type); + + addParameter(InOutDefinition.getFromString(inOut), parameter); + } + } +} diff --git a/jOOQ-meta/src/main/java/org/jooq/util/sqlserver/SQLServerTableDefinition.java b/jOOQ-meta/src/main/java/org/jooq/util/sqlserver/SQLServerTableDefinition.java new file mode 100644 index 00000000000..f924bbb4466 --- /dev/null +++ b/jOOQ-meta/src/main/java/org/jooq/util/sqlserver/SQLServerTableDefinition.java @@ -0,0 +1,112 @@ +/** + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com + * All rights reserved. + * + * This software is licensed to you under the Apache License, Version 2.0 + * (the "License"); You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * 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 "jOOQ" 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 COPYRIGHT OWNER 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. + */ + +package org.jooq.util.sqlserver; + +import static org.jooq.impl.Factory.field; +import static org.jooq.util.sqlserver.information_schema.Tables.COLUMNS; + +import java.sql.SQLException; +import java.util.ArrayList; +import java.util.List; + +import org.jooq.Field; +import org.jooq.Record; +import org.jooq.util.AbstractTableDefinition; +import org.jooq.util.ColumnDefinition; +import org.jooq.util.DataTypeDefinition; +import org.jooq.util.DefaultColumnDefinition; +import org.jooq.util.DefaultDataTypeDefinition; +import org.jooq.util.SchemaDefinition; + +/** + * @author Lukas Eder + */ +public class SQLServerTableDefinition extends AbstractTableDefinition { + + public SQLServerTableDefinition(SchemaDefinition schema, String name, String comment) { + super(schema, name, comment); + } + + @Override + public List getElements0() throws SQLException { + List result = new ArrayList(); + Field identity = field("c.is_identity", Integer.class); + + for (Record record : create().select( + COLUMNS.COLUMN_NAME, + COLUMNS.ORDINAL_POSITION, + COLUMNS.DATA_TYPE, + COLUMNS.IS_NULLABLE, + COLUMNS.CHARACTER_MAXIMUM_LENGTH, + COLUMNS.NUMERIC_PRECISION, + COLUMNS.NUMERIC_SCALE, + identity) + .from(COLUMNS) + .join("sys.objects o") + .on("o.type in ('U', 'V')") + .and(COLUMNS.TABLE_NAME.equal(field("o.name", String.class))) + .join("sys.columns c") + .on("c.object_id = o.object_id") + .and(COLUMNS.COLUMN_NAME.equal(field("c.name", String.class))) + .where(COLUMNS.TABLE_SCHEMA.equal(getSchema().getName())) + .and(COLUMNS.TABLE_NAME.equal(getName())) + .orderBy(COLUMNS.ORDINAL_POSITION) + .fetch()) { + + DataTypeDefinition type = new DefaultDataTypeDefinition( + getDatabase(), + getSchema(), + record.getValue(COLUMNS.DATA_TYPE), + record.getValue(COLUMNS.CHARACTER_MAXIMUM_LENGTH), + record.getValue(COLUMNS.NUMERIC_PRECISION), + record.getValue(COLUMNS.NUMERIC_SCALE), + ""); + + ColumnDefinition column = new DefaultColumnDefinition( + getDatabase().getTable(getSchema(), getName()), + record.getValue(COLUMNS.COLUMN_NAME), + record.getValueAsInteger(COLUMNS.ORDINAL_POSITION), + type, + record.getValue(COLUMNS.IS_NULLABLE, boolean.class), + 1 == record.getValue(identity), + null); + result.add(column); + } + + return result; + } +} diff --git a/jOOQ-meta/src/main/java/org/jooq/util/sqlserver/information_schema/InformationSchema.java b/jOOQ-meta/src/main/java/org/jooq/util/sqlserver/information_schema/InformationSchema.java new file mode 100644 index 00000000000..04d10361aa8 --- /dev/null +++ b/jOOQ-meta/src/main/java/org/jooq/util/sqlserver/information_schema/InformationSchema.java @@ -0,0 +1,40 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.util.sqlserver.information_schema; + +/** + * This class is generated by jOOQ. + */ +@javax.annotation.Generated(value = {"http://www.jooq.org", "2.0.6"}, + comments = "This class is generated by jOOQ") +public class InformationSchema extends org.jooq.impl.SchemaImpl { + + private static final long serialVersionUID = 1945717581; + + /** + * The singleton instance of INFORMATION_SCHEMA + */ + public static final InformationSchema INFORMATION_SCHEMA = new InformationSchema(); + + /** + * No further instances allowed + */ + private InformationSchema() { + super("INFORMATION_SCHEMA"); + } + + @Override + public final java.util.List> getTables() { + return java.util.Arrays.>asList( + org.jooq.util.sqlserver.information_schema.tables.Columns.COLUMNS, + org.jooq.util.sqlserver.information_schema.tables.ConstraintColumnUsage.CONSTRAINT_COLUMN_USAGE, + org.jooq.util.sqlserver.information_schema.tables.KeyColumnUsage.KEY_COLUMN_USAGE, + org.jooq.util.sqlserver.information_schema.tables.Parameters.PARAMETERS, + org.jooq.util.sqlserver.information_schema.tables.ReferentialConstraints.REFERENTIAL_CONSTRAINTS, + org.jooq.util.sqlserver.information_schema.tables.Routines.ROUTINES, + org.jooq.util.sqlserver.information_schema.tables.Sequences.SEQUENCES, + org.jooq.util.sqlserver.information_schema.tables.Tables.TABLES, + org.jooq.util.sqlserver.information_schema.tables.TableConstraints.TABLE_CONSTRAINTS); + } +} diff --git a/jOOQ-meta/src/main/java/org/jooq/util/sqlserver/information_schema/InformationSchemaFactory.java b/jOOQ-meta/src/main/java/org/jooq/util/sqlserver/information_schema/InformationSchemaFactory.java new file mode 100644 index 00000000000..260abacd644 --- /dev/null +++ b/jOOQ-meta/src/main/java/org/jooq/util/sqlserver/information_schema/InformationSchemaFactory.java @@ -0,0 +1,33 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.util.sqlserver.information_schema; + +/** + * This class is generated by jOOQ. + */ +@javax.annotation.Generated(value = {"http://www.jooq.org", "2.0.6"}, + comments = "This class is generated by jOOQ") +public class InformationSchemaFactory extends org.jooq.util.hsqldb.HSQLDBFactory { + + private static final long serialVersionUID = -615142229; + + /** + * Create a factory with a connection + * + * @param connection The connection to use with objects created from this factory + */ + public InformationSchemaFactory(java.sql.Connection connection) { + super(connection); + } + + /** + * Create a factory with a connection and some settings + * + * @param connection The connection to use with objects created from this factory + * @param settings The settings to apply to objects created from this factory + */ + public InformationSchemaFactory(java.sql.Connection connection, org.jooq.conf.Settings settings) { + super(connection, settings); + } +} diff --git a/jOOQ-meta/src/main/java/org/jooq/util/sqlserver/information_schema/Tables.java b/jOOQ-meta/src/main/java/org/jooq/util/sqlserver/information_schema/Tables.java new file mode 100644 index 00000000000..ca4803fe02e --- /dev/null +++ b/jOOQ-meta/src/main/java/org/jooq/util/sqlserver/information_schema/Tables.java @@ -0,0 +1,64 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.util.sqlserver.information_schema; + +/** + * This class is generated by jOOQ. + * + * Convenience access to all tables in INFORMATION_SCHEMA + */ +@javax.annotation.Generated(value = {"http://www.jooq.org", "2.0.6"}, + comments = "This class is generated by jOOQ") +public final class Tables { + + /** + * The table INFORMATION_SCHEMA.COLUMNS + */ + public static org.jooq.util.sqlserver.information_schema.tables.Columns COLUMNS = org.jooq.util.sqlserver.information_schema.tables.Columns.COLUMNS; + + /** + * The table INFORMATION_SCHEMA.CONSTRAINT_COLUMN_USAGE + */ + public static org.jooq.util.sqlserver.information_schema.tables.ConstraintColumnUsage CONSTRAINT_COLUMN_USAGE = org.jooq.util.sqlserver.information_schema.tables.ConstraintColumnUsage.CONSTRAINT_COLUMN_USAGE; + + /** + * The table INFORMATION_SCHEMA.KEY_COLUMN_USAGE + */ + public static org.jooq.util.sqlserver.information_schema.tables.KeyColumnUsage KEY_COLUMN_USAGE = org.jooq.util.sqlserver.information_schema.tables.KeyColumnUsage.KEY_COLUMN_USAGE; + + /** + * The table INFORMATION_SCHEMA.PARAMETERS + */ + public static org.jooq.util.sqlserver.information_schema.tables.Parameters PARAMETERS = org.jooq.util.sqlserver.information_schema.tables.Parameters.PARAMETERS; + + /** + * The table INFORMATION_SCHEMA.REFERENTIAL_CONSTRAINTS + */ + public static org.jooq.util.sqlserver.information_schema.tables.ReferentialConstraints REFERENTIAL_CONSTRAINTS = org.jooq.util.sqlserver.information_schema.tables.ReferentialConstraints.REFERENTIAL_CONSTRAINTS; + + /** + * The table INFORMATION_SCHEMA.ROUTINES + */ + public static org.jooq.util.sqlserver.information_schema.tables.Routines ROUTINES = org.jooq.util.sqlserver.information_schema.tables.Routines.ROUTINES; + + /** + * The table INFORMATION_SCHEMA.SEQUENCES + */ + public static org.jooq.util.sqlserver.information_schema.tables.Sequences SEQUENCES = org.jooq.util.sqlserver.information_schema.tables.Sequences.SEQUENCES; + + /** + * The table INFORMATION_SCHEMA.TABLES + */ + public static org.jooq.util.sqlserver.information_schema.tables.Tables TABLES = org.jooq.util.sqlserver.information_schema.tables.Tables.TABLES; + + /** + * The table INFORMATION_SCHEMA.TABLE_CONSTRAINTS + */ + public static org.jooq.util.sqlserver.information_schema.tables.TableConstraints TABLE_CONSTRAINTS = org.jooq.util.sqlserver.information_schema.tables.TableConstraints.TABLE_CONSTRAINTS; + + /** + * No instances + */ + private Tables() {} +} diff --git a/jOOQ-meta/src/main/java/org/jooq/util/sqlserver/information_schema/tables/Columns.java b/jOOQ-meta/src/main/java/org/jooq/util/sqlserver/information_schema/tables/Columns.java new file mode 100644 index 00000000000..c36a3d2f0c9 --- /dev/null +++ b/jOOQ-meta/src/main/java/org/jooq/util/sqlserver/information_schema/tables/Columns.java @@ -0,0 +1,286 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.util.sqlserver.information_schema.tables; + +/** + * This class is generated by jOOQ. + */ +@javax.annotation.Generated(value = {"http://www.jooq.org", "2.0.6"}, + comments = "This class is generated by jOOQ") +public class Columns extends org.jooq.impl.TableImpl { + + private static final long serialVersionUID = 185365021; + + /** + * The singleton instance of INFORMATION_SCHEMA.COLUMNS + */ + public static final org.jooq.util.sqlserver.information_schema.tables.Columns COLUMNS = new org.jooq.util.sqlserver.information_schema.tables.Columns(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.Record.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + */ + public final org.jooq.TableField TABLE_CATALOG = createField("TABLE_CATALOG", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField TABLE_SCHEMA = createField("TABLE_SCHEMA", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField TABLE_NAME = createField("TABLE_NAME", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField COLUMN_NAME = createField("COLUMN_NAME", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField ORDINAL_POSITION = createField("ORDINAL_POSITION", org.jooq.impl.SQLDataType.BIGINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField COLUMN_DEFAULT = createField("COLUMN_DEFAULT", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField IS_NULLABLE = createField("IS_NULLABLE", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField DATA_TYPE = createField("DATA_TYPE", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField CHARACTER_MAXIMUM_LENGTH = createField("CHARACTER_MAXIMUM_LENGTH", org.jooq.impl.SQLDataType.BIGINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField CHARACTER_OCTET_LENGTH = createField("CHARACTER_OCTET_LENGTH", org.jooq.impl.SQLDataType.BIGINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField NUMERIC_PRECISION = createField("NUMERIC_PRECISION", org.jooq.impl.SQLDataType.BIGINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField NUMERIC_PRECISION_RADIX = createField("NUMERIC_PRECISION_RADIX", org.jooq.impl.SQLDataType.BIGINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField NUMERIC_SCALE = createField("NUMERIC_SCALE", org.jooq.impl.SQLDataType.BIGINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField DATETIME_PRECISION = createField("DATETIME_PRECISION", org.jooq.impl.SQLDataType.BIGINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField INTERVAL_TYPE = createField("INTERVAL_TYPE", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField INTERVAL_PRECISION = createField("INTERVAL_PRECISION", org.jooq.impl.SQLDataType.BIGINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField CHARACTER_SET_CATALOG = createField("CHARACTER_SET_CATALOG", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField CHARACTER_SET_SCHEMA = createField("CHARACTER_SET_SCHEMA", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField CHARACTER_SET_NAME = createField("CHARACTER_SET_NAME", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField COLLATION_CATALOG = createField("COLLATION_CATALOG", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField COLLATION_SCHEMA = createField("COLLATION_SCHEMA", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField COLLATION_NAME = createField("COLLATION_NAME", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField DOMAIN_CATALOG = createField("DOMAIN_CATALOG", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField DOMAIN_SCHEMA = createField("DOMAIN_SCHEMA", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField DOMAIN_NAME = createField("DOMAIN_NAME", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField UDT_CATALOG = createField("UDT_CATALOG", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField UDT_SCHEMA = createField("UDT_SCHEMA", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField UDT_NAME = createField("UDT_NAME", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField SCOPE_CATALOG = createField("SCOPE_CATALOG", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField SCOPE_SCHEMA = createField("SCOPE_SCHEMA", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField SCOPE_NAME = createField("SCOPE_NAME", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField MAXIMUM_CARDINALITY = createField("MAXIMUM_CARDINALITY", org.jooq.impl.SQLDataType.BIGINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField DTD_IDENTIFIER = createField("DTD_IDENTIFIER", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField IS_SELF_REFERENCING = createField("IS_SELF_REFERENCING", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField IS_IDENTITY = createField("IS_IDENTITY", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField IDENTITY_GENERATION = createField("IDENTITY_GENERATION", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField IDENTITY_START = createField("IDENTITY_START", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField IDENTITY_INCREMENT = createField("IDENTITY_INCREMENT", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField IDENTITY_MAXIMUM = createField("IDENTITY_MAXIMUM", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField IDENTITY_MINIMUM = createField("IDENTITY_MINIMUM", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField IDENTITY_CYCLE = createField("IDENTITY_CYCLE", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField IS_GENERATED = createField("IS_GENERATED", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField GENERATION_EXPRESSION = createField("GENERATION_EXPRESSION", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField IS_UPDATABLE = createField("IS_UPDATABLE", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField DECLARED_DATA_TYPE = createField("DECLARED_DATA_TYPE", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField DECLARED_NUMERIC_PRECISION = createField("DECLARED_NUMERIC_PRECISION", org.jooq.impl.SQLDataType.BIGINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField DECLARED_NUMERIC_SCALE = createField("DECLARED_NUMERIC_SCALE", org.jooq.impl.SQLDataType.BIGINT, this); + + /** + * No further instances allowed + */ + private Columns() { + super("COLUMNS", org.jooq.util.sqlserver.information_schema.InformationSchema.INFORMATION_SCHEMA); + } + + /** + * No further instances allowed + */ + private Columns(java.lang.String alias) { + super(alias, org.jooq.util.sqlserver.information_schema.InformationSchema.INFORMATION_SCHEMA, org.jooq.util.sqlserver.information_schema.tables.Columns.COLUMNS); + } + + @Override + public org.jooq.util.sqlserver.information_schema.tables.Columns as(java.lang.String alias) { + return new org.jooq.util.sqlserver.information_schema.tables.Columns(alias); + } +} diff --git a/jOOQ-meta/src/main/java/org/jooq/util/sqlserver/information_schema/tables/ConstraintColumnUsage.java b/jOOQ-meta/src/main/java/org/jooq/util/sqlserver/information_schema/tables/ConstraintColumnUsage.java new file mode 100644 index 00000000000..c5f66cbda11 --- /dev/null +++ b/jOOQ-meta/src/main/java/org/jooq/util/sqlserver/information_schema/tables/ConstraintColumnUsage.java @@ -0,0 +1,86 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.util.sqlserver.information_schema.tables; + +/** + * This class is generated by jOOQ. + */ +@javax.annotation.Generated(value = {"http://www.jooq.org", "2.0.6"}, + comments = "This class is generated by jOOQ") +public class ConstraintColumnUsage extends org.jooq.impl.TableImpl { + + private static final long serialVersionUID = 733263102; + + /** + * The singleton instance of INFORMATION_SCHEMA.CONSTRAINT_COLUMN_USAGE + */ + public static final org.jooq.util.sqlserver.information_schema.tables.ConstraintColumnUsage CONSTRAINT_COLUMN_USAGE = new org.jooq.util.sqlserver.information_schema.tables.ConstraintColumnUsage(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.Record.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + */ + public final org.jooq.TableField TABLE_CATALOG = createField("TABLE_CATALOG", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField TABLE_SCHEMA = createField("TABLE_SCHEMA", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField TABLE_NAME = createField("TABLE_NAME", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField COLUMN_NAME = createField("COLUMN_NAME", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField CONSTRAINT_CATALOG = createField("CONSTRAINT_CATALOG", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField CONSTRAINT_SCHEMA = createField("CONSTRAINT_SCHEMA", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField CONSTRAINT_NAME = createField("CONSTRAINT_NAME", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * No further instances allowed + */ + private ConstraintColumnUsage() { + super("CONSTRAINT_COLUMN_USAGE", org.jooq.util.sqlserver.information_schema.InformationSchema.INFORMATION_SCHEMA); + } + + /** + * No further instances allowed + */ + private ConstraintColumnUsage(java.lang.String alias) { + super(alias, org.jooq.util.sqlserver.information_schema.InformationSchema.INFORMATION_SCHEMA, org.jooq.util.sqlserver.information_schema.tables.ConstraintColumnUsage.CONSTRAINT_COLUMN_USAGE); + } + + @Override + public org.jooq.util.sqlserver.information_schema.tables.ConstraintColumnUsage as(java.lang.String alias) { + return new org.jooq.util.sqlserver.information_schema.tables.ConstraintColumnUsage(alias); + } +} diff --git a/jOOQ-meta/src/main/java/org/jooq/util/sqlserver/information_schema/tables/KeyColumnUsage.java b/jOOQ-meta/src/main/java/org/jooq/util/sqlserver/information_schema/tables/KeyColumnUsage.java new file mode 100644 index 00000000000..0f3b4967852 --- /dev/null +++ b/jOOQ-meta/src/main/java/org/jooq/util/sqlserver/information_schema/tables/KeyColumnUsage.java @@ -0,0 +1,96 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.util.sqlserver.information_schema.tables; + +/** + * This class is generated by jOOQ. + */ +@javax.annotation.Generated(value = {"http://www.jooq.org", "2.0.6"}, + comments = "This class is generated by jOOQ") +public class KeyColumnUsage extends org.jooq.impl.TableImpl { + + private static final long serialVersionUID = -1230130788; + + /** + * The singleton instance of INFORMATION_SCHEMA.KEY_COLUMN_USAGE + */ + public static final org.jooq.util.sqlserver.information_schema.tables.KeyColumnUsage KEY_COLUMN_USAGE = new org.jooq.util.sqlserver.information_schema.tables.KeyColumnUsage(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.Record.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + */ + public final org.jooq.TableField CONSTRAINT_CATALOG = createField("CONSTRAINT_CATALOG", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField CONSTRAINT_SCHEMA = createField("CONSTRAINT_SCHEMA", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField CONSTRAINT_NAME = createField("CONSTRAINT_NAME", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField TABLE_CATALOG = createField("TABLE_CATALOG", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField TABLE_SCHEMA = createField("TABLE_SCHEMA", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField TABLE_NAME = createField("TABLE_NAME", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField COLUMN_NAME = createField("COLUMN_NAME", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField ORDINAL_POSITION = createField("ORDINAL_POSITION", org.jooq.impl.SQLDataType.BIGINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField POSITION_IN_UNIQUE_CONSTRAINT = createField("POSITION_IN_UNIQUE_CONSTRAINT", org.jooq.impl.SQLDataType.BIGINT, this); + + /** + * No further instances allowed + */ + private KeyColumnUsage() { + super("KEY_COLUMN_USAGE", org.jooq.util.sqlserver.information_schema.InformationSchema.INFORMATION_SCHEMA); + } + + /** + * No further instances allowed + */ + private KeyColumnUsage(java.lang.String alias) { + super(alias, org.jooq.util.sqlserver.information_schema.InformationSchema.INFORMATION_SCHEMA, org.jooq.util.sqlserver.information_schema.tables.KeyColumnUsage.KEY_COLUMN_USAGE); + } + + @Override + public org.jooq.util.sqlserver.information_schema.tables.KeyColumnUsage as(java.lang.String alias) { + return new org.jooq.util.sqlserver.information_schema.tables.KeyColumnUsage(alias); + } +} diff --git a/jOOQ-meta/src/main/java/org/jooq/util/sqlserver/information_schema/tables/Parameters.java b/jOOQ-meta/src/main/java/org/jooq/util/sqlserver/information_schema/tables/Parameters.java new file mode 100644 index 00000000000..895fac2c4ed --- /dev/null +++ b/jOOQ-meta/src/main/java/org/jooq/util/sqlserver/information_schema/tables/Parameters.java @@ -0,0 +1,251 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.util.sqlserver.information_schema.tables; + +/** + * This class is generated by jOOQ. + */ +@javax.annotation.Generated(value = {"http://www.jooq.org", "2.0.6"}, + comments = "This class is generated by jOOQ") +public class Parameters extends org.jooq.impl.TableImpl { + + private static final long serialVersionUID = -1994625982; + + /** + * The singleton instance of INFORMATION_SCHEMA.PARAMETERS + */ + public static final org.jooq.util.sqlserver.information_schema.tables.Parameters PARAMETERS = new org.jooq.util.sqlserver.information_schema.tables.Parameters(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.Record.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + */ + public final org.jooq.TableField SPECIFIC_CATALOG = createField("SPECIFIC_CATALOG", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField SPECIFIC_SCHEMA = createField("SPECIFIC_SCHEMA", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField SPECIFIC_NAME = createField("SPECIFIC_NAME", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField ORDINAL_POSITION = createField("ORDINAL_POSITION", org.jooq.impl.SQLDataType.BIGINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField PARAMETER_MODE = createField("PARAMETER_MODE", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField IS_RESULT = createField("IS_RESULT", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField AS_LOCATOR = createField("AS_LOCATOR", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField PARAMETER_NAME = createField("PARAMETER_NAME", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField FROM_SQL_SPECIFIC_CATALOG = createField("FROM_SQL_SPECIFIC_CATALOG", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField FROM_SQL_SPECIFIC_SCHEMA = createField("FROM_SQL_SPECIFIC_SCHEMA", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField FROM_SQL_SPECIFIC_NAME = createField("FROM_SQL_SPECIFIC_NAME", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField TO_SQL_SPECIFIC_CATALOG = createField("TO_SQL_SPECIFIC_CATALOG", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField TO_SQL_SPECIFIC_SCHEMA = createField("TO_SQL_SPECIFIC_SCHEMA", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField TO_SQL_SPECIFIC_NAME = createField("TO_SQL_SPECIFIC_NAME", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField DATA_TYPE = createField("DATA_TYPE", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField CHARACTER_MAXIMUM_LENGTH = createField("CHARACTER_MAXIMUM_LENGTH", org.jooq.impl.SQLDataType.BIGINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField CHARACTER_OCTET_LENGTH = createField("CHARACTER_OCTET_LENGTH", org.jooq.impl.SQLDataType.BIGINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField CHARACTER_SET_CATALOG = createField("CHARACTER_SET_CATALOG", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField CHARACTER_SET_SCHEMA = createField("CHARACTER_SET_SCHEMA", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField CHARACTER_SET_NAME = createField("CHARACTER_SET_NAME", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField COLLATION_CATALOG = createField("COLLATION_CATALOG", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField COLLATION_SCHEMA = createField("COLLATION_SCHEMA", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField COLLATION_NAME = createField("COLLATION_NAME", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField NUMERIC_PRECISION = createField("NUMERIC_PRECISION", org.jooq.impl.SQLDataType.BIGINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField NUMERIC_PRECISION_RADIX = createField("NUMERIC_PRECISION_RADIX", org.jooq.impl.SQLDataType.BIGINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField NUMERIC_SCALE = createField("NUMERIC_SCALE", org.jooq.impl.SQLDataType.BIGINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField DATETIME_PRECISION = createField("DATETIME_PRECISION", org.jooq.impl.SQLDataType.BIGINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField INTERVAL_TYPE = createField("INTERVAL_TYPE", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField INTERVAL_PRECISION = createField("INTERVAL_PRECISION", org.jooq.impl.SQLDataType.BIGINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField UDT_CATALOG = createField("UDT_CATALOG", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField UDT_SCHEMA = createField("UDT_SCHEMA", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField UDT_NAME = createField("UDT_NAME", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField SCOPE_CATALOG = createField("SCOPE_CATALOG", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField SCOPE_SCHEMA = createField("SCOPE_SCHEMA", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField SCOPE_NAME = createField("SCOPE_NAME", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField MAXIMUM_CARDINALITY = createField("MAXIMUM_CARDINALITY", org.jooq.impl.SQLDataType.BIGINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField DTD_IDENTIFIER = createField("DTD_IDENTIFIER", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField DECLARED_DATA_TYPE = createField("DECLARED_DATA_TYPE", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField DECLARED_NUMERIC_PRECISION = createField("DECLARED_NUMERIC_PRECISION", org.jooq.impl.SQLDataType.BIGINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField DECLARED_NUMERIC_SCALE = createField("DECLARED_NUMERIC_SCALE", org.jooq.impl.SQLDataType.BIGINT, this); + + /** + * No further instances allowed + */ + private Parameters() { + super("PARAMETERS", org.jooq.util.sqlserver.information_schema.InformationSchema.INFORMATION_SCHEMA); + } + + /** + * No further instances allowed + */ + private Parameters(java.lang.String alias) { + super(alias, org.jooq.util.sqlserver.information_schema.InformationSchema.INFORMATION_SCHEMA, org.jooq.util.sqlserver.information_schema.tables.Parameters.PARAMETERS); + } + + @Override + public org.jooq.util.sqlserver.information_schema.tables.Parameters as(java.lang.String alias) { + return new org.jooq.util.sqlserver.information_schema.tables.Parameters(alias); + } +} diff --git a/jOOQ-meta/src/main/java/org/jooq/util/sqlserver/information_schema/tables/ReferentialConstraints.java b/jOOQ-meta/src/main/java/org/jooq/util/sqlserver/information_schema/tables/ReferentialConstraints.java new file mode 100644 index 00000000000..81f3c5cda49 --- /dev/null +++ b/jOOQ-meta/src/main/java/org/jooq/util/sqlserver/information_schema/tables/ReferentialConstraints.java @@ -0,0 +1,96 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.util.sqlserver.information_schema.tables; + +/** + * This class is generated by jOOQ. + */ +@javax.annotation.Generated(value = {"http://www.jooq.org", "2.0.6"}, + comments = "This class is generated by jOOQ") +public class ReferentialConstraints extends org.jooq.impl.TableImpl { + + private static final long serialVersionUID = -28313106; + + /** + * The singleton instance of INFORMATION_SCHEMA.REFERENTIAL_CONSTRAINTS + */ + public static final org.jooq.util.sqlserver.information_schema.tables.ReferentialConstraints REFERENTIAL_CONSTRAINTS = new org.jooq.util.sqlserver.information_schema.tables.ReferentialConstraints(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.Record.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + */ + public final org.jooq.TableField CONSTRAINT_CATALOG = createField("CONSTRAINT_CATALOG", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField CONSTRAINT_SCHEMA = createField("CONSTRAINT_SCHEMA", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField CONSTRAINT_NAME = createField("CONSTRAINT_NAME", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField UNIQUE_CONSTRAINT_CATALOG = createField("UNIQUE_CONSTRAINT_CATALOG", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField UNIQUE_CONSTRAINT_SCHEMA = createField("UNIQUE_CONSTRAINT_SCHEMA", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField UNIQUE_CONSTRAINT_NAME = createField("UNIQUE_CONSTRAINT_NAME", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField MATCH_OPTION = createField("MATCH_OPTION", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField UPDATE_RULE = createField("UPDATE_RULE", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField DELETE_RULE = createField("DELETE_RULE", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * No further instances allowed + */ + private ReferentialConstraints() { + super("REFERENTIAL_CONSTRAINTS", org.jooq.util.sqlserver.information_schema.InformationSchema.INFORMATION_SCHEMA); + } + + /** + * No further instances allowed + */ + private ReferentialConstraints(java.lang.String alias) { + super(alias, org.jooq.util.sqlserver.information_schema.InformationSchema.INFORMATION_SCHEMA, org.jooq.util.sqlserver.information_schema.tables.ReferentialConstraints.REFERENTIAL_CONSTRAINTS); + } + + @Override + public org.jooq.util.sqlserver.information_schema.tables.ReferentialConstraints as(java.lang.String alias) { + return new org.jooq.util.sqlserver.information_schema.tables.ReferentialConstraints(alias); + } +} diff --git a/jOOQ-meta/src/main/java/org/jooq/util/sqlserver/information_schema/tables/Routines.java b/jOOQ-meta/src/main/java/org/jooq/util/sqlserver/information_schema/tables/Routines.java new file mode 100644 index 00000000000..482f57e8b4b --- /dev/null +++ b/jOOQ-meta/src/main/java/org/jooq/util/sqlserver/information_schema/tables/Routines.java @@ -0,0 +1,491 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.util.sqlserver.information_schema.tables; + +/** + * This class is generated by jOOQ. + */ +@javax.annotation.Generated(value = {"http://www.jooq.org", "2.0.6"}, + comments = "This class is generated by jOOQ") +public class Routines extends org.jooq.impl.TableImpl { + + private static final long serialVersionUID = -876586578; + + /** + * The singleton instance of INFORMATION_SCHEMA.ROUTINES + */ + public static final org.jooq.util.sqlserver.information_schema.tables.Routines ROUTINES = new org.jooq.util.sqlserver.information_schema.tables.Routines(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.Record.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + */ + public final org.jooq.TableField SPECIFIC_CATALOG = createField("SPECIFIC_CATALOG", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField SPECIFIC_SCHEMA = createField("SPECIFIC_SCHEMA", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField SPECIFIC_NAME = createField("SPECIFIC_NAME", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField ROUTINE_CATALOG = createField("ROUTINE_CATALOG", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField ROUTINE_SCHEMA = createField("ROUTINE_SCHEMA", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField ROUTINE_NAME = createField("ROUTINE_NAME", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField ROUTINE_TYPE = createField("ROUTINE_TYPE", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField MODULE_CATALOG = createField("MODULE_CATALOG", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField MODULE_SCHEMA = createField("MODULE_SCHEMA", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField MODULE_NAME = createField("MODULE_NAME", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField UDT_CATALOG = createField("UDT_CATALOG", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField UDT_SCHEMA = createField("UDT_SCHEMA", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField UDT_NAME = createField("UDT_NAME", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField DATA_TYPE = createField("DATA_TYPE", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField CHARACTER_MAXIMUM_LENGTH = createField("CHARACTER_MAXIMUM_LENGTH", org.jooq.impl.SQLDataType.BIGINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField CHARACTER_OCTET_LENGTH = createField("CHARACTER_OCTET_LENGTH", org.jooq.impl.SQLDataType.BIGINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField CHARACTER_SET_CATALOG = createField("CHARACTER_SET_CATALOG", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField CHARACTER_SET_SCHEMA = createField("CHARACTER_SET_SCHEMA", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField CHARACTER_SET_NAME = createField("CHARACTER_SET_NAME", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField COLLATION_CATALOG = createField("COLLATION_CATALOG", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField COLLATION_SCHEMA = createField("COLLATION_SCHEMA", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField COLLATION_NAME = createField("COLLATION_NAME", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField NUMERIC_PRECISION = createField("NUMERIC_PRECISION", org.jooq.impl.SQLDataType.BIGINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField NUMERIC_PRECISION_RADIX = createField("NUMERIC_PRECISION_RADIX", org.jooq.impl.SQLDataType.BIGINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField NUMERIC_SCALE = createField("NUMERIC_SCALE", org.jooq.impl.SQLDataType.BIGINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField DATETIME_PRECISION = createField("DATETIME_PRECISION", org.jooq.impl.SQLDataType.BIGINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField INTERVAL_TYPE = createField("INTERVAL_TYPE", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField INTERVAL_PRECISION = createField("INTERVAL_PRECISION", org.jooq.impl.SQLDataType.BIGINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField TYPE_UDT_CATALOG = createField("TYPE_UDT_CATALOG", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField TYPE_UDT_SCHEMA = createField("TYPE_UDT_SCHEMA", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField TYPE_UDT_NAME = createField("TYPE_UDT_NAME", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField SCOPE_CATALOG = createField("SCOPE_CATALOG", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField SCOPE_SCHEMA = createField("SCOPE_SCHEMA", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField SCOPE_NAME = createField("SCOPE_NAME", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField MAXIMUM_CARDINALITY = createField("MAXIMUM_CARDINALITY", org.jooq.impl.SQLDataType.BIGINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField DTD_IDENTIFIER = createField("DTD_IDENTIFIER", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField ROUTINE_BODY = createField("ROUTINE_BODY", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField ROUTINE_DEFINITION = createField("ROUTINE_DEFINITION", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField EXTERNAL_NAME = createField("EXTERNAL_NAME", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField EXTERNAL_LANGUAGE = createField("EXTERNAL_LANGUAGE", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField PARAMETER_STYLE = createField("PARAMETER_STYLE", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField IS_DETERMINISTIC = createField("IS_DETERMINISTIC", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField SQL_DATA_ACCESS = createField("SQL_DATA_ACCESS", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField IS_NULL_CALL = createField("IS_NULL_CALL", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField SQL_PATH = createField("SQL_PATH", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField SCHEMA_LEVEL_ROUTINE = createField("SCHEMA_LEVEL_ROUTINE", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField MAX_DYNAMIC_RESULT_SETS = createField("MAX_DYNAMIC_RESULT_SETS", org.jooq.impl.SQLDataType.BIGINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField IS_USER_DEFINED_CAST = createField("IS_USER_DEFINED_CAST", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField IS_IMPLICITLY_INVOCABLE = createField("IS_IMPLICITLY_INVOCABLE", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField SECURITY_TYPE = createField("SECURITY_TYPE", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField TO_SQL_SPECIFIC_CATALOG = createField("TO_SQL_SPECIFIC_CATALOG", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField TO_SQL_SPECIFIC_SCHEMA = createField("TO_SQL_SPECIFIC_SCHEMA", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField TO_SQL_SPECIFIC_NAME = createField("TO_SQL_SPECIFIC_NAME", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField AS_LOCATOR = createField("AS_LOCATOR", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField CREATED = createField("CREATED", org.jooq.impl.SQLDataType.TIMESTAMP, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField LAST_ALTERED = createField("LAST_ALTERED", org.jooq.impl.SQLDataType.TIMESTAMP, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField NEW_SAVEPOINT_LEVEL = createField("NEW_SAVEPOINT_LEVEL", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField IS_UDT_DEPENDENT = createField("IS_UDT_DEPENDENT", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField RESULT_CAST_FROM_DATA_TYPE = createField("RESULT_CAST_FROM_DATA_TYPE", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField RESULT_CAST_AS_LOCATOR = createField("RESULT_CAST_AS_LOCATOR", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField RESULT_CAST_CHAR_MAX_LENGTH = createField("RESULT_CAST_CHAR_MAX_LENGTH", org.jooq.impl.SQLDataType.BIGINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField RESULT_CAST_CHAR_OCTET_LENGTH = createField("RESULT_CAST_CHAR_OCTET_LENGTH", org.jooq.impl.SQLDataType.BIGINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField RESULT_CAST_CHAR_SET_CATALOG = createField("RESULT_CAST_CHAR_SET_CATALOG", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField RESULT_CAST_CHAR_SET_SCHEMA = createField("RESULT_CAST_CHAR_SET_SCHEMA", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField RESULT_CAST_CHARACTER_SET_NAME = createField("RESULT_CAST_CHARACTER_SET_NAME", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField RESULT_CAST_COLLATION_CATALOG = createField("RESULT_CAST_COLLATION_CATALOG", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField RESULT_CAST_COLLATION_SCHEMA = createField("RESULT_CAST_COLLATION_SCHEMA", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField RESULT_CAST_COLLATION_NAME = createField("RESULT_CAST_COLLATION_NAME", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField RESULT_CAST_NUMERIC_PRECISION = createField("RESULT_CAST_NUMERIC_PRECISION", org.jooq.impl.SQLDataType.BIGINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField RESULT_CAST_NUMERIC_RADIX = createField("RESULT_CAST_NUMERIC_RADIX", org.jooq.impl.SQLDataType.BIGINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField RESULT_CAST_NUMERIC_SCALE = createField("RESULT_CAST_NUMERIC_SCALE", org.jooq.impl.SQLDataType.BIGINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField RESULT_CAST_DATETIME_PRECISION = createField("RESULT_CAST_DATETIME_PRECISION", org.jooq.impl.SQLDataType.BIGINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField RESULT_CAST_INTERVAL_TYPE = createField("RESULT_CAST_INTERVAL_TYPE", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField RESULT_CAST_INTERVAL_PRECISION = createField("RESULT_CAST_INTERVAL_PRECISION", org.jooq.impl.SQLDataType.BIGINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField RESULT_CAST_TYPE_UDT_CATALOG = createField("RESULT_CAST_TYPE_UDT_CATALOG", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField RESULT_CAST_TYPE_UDT_SCHEMA = createField("RESULT_CAST_TYPE_UDT_SCHEMA", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField RESULT_CAST_TYPE_UDT_NAME = createField("RESULT_CAST_TYPE_UDT_NAME", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField RESULT_CAST_SCOPE_CATALOG = createField("RESULT_CAST_SCOPE_CATALOG", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField RESULT_CAST_SCOPE_SCHEMA = createField("RESULT_CAST_SCOPE_SCHEMA", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField RESULT_CAST_SCOPE_NAME = createField("RESULT_CAST_SCOPE_NAME", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField RESULT_CAST_MAX_CARDINALITY = createField("RESULT_CAST_MAX_CARDINALITY", org.jooq.impl.SQLDataType.BIGINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField RESULT_CAST_DTD_IDENTIFIER = createField("RESULT_CAST_DTD_IDENTIFIER", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField DECLARED_DATA_TYPE = createField("DECLARED_DATA_TYPE", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField DECLARED_NUMERIC_PRECISION = createField("DECLARED_NUMERIC_PRECISION", org.jooq.impl.SQLDataType.BIGINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField DECLARED_NUMERIC_SCALE = createField("DECLARED_NUMERIC_SCALE", org.jooq.impl.SQLDataType.BIGINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField RESULT_CAST_FROM_DECLARED_DATA_TYPE = createField("RESULT_CAST_FROM_DECLARED_DATA_TYPE", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField RESULT_CAST_DECLARED_NUMERIC_PRECISION = createField("RESULT_CAST_DECLARED_NUMERIC_PRECISION", org.jooq.impl.SQLDataType.BIGINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField RESULT_CAST_DECLARED_NUMERIC_SCALE = createField("RESULT_CAST_DECLARED_NUMERIC_SCALE", org.jooq.impl.SQLDataType.BIGINT, this); + + /** + * No further instances allowed + */ + private Routines() { + super("ROUTINES", org.jooq.util.sqlserver.information_schema.InformationSchema.INFORMATION_SCHEMA); + } + + /** + * No further instances allowed + */ + private Routines(java.lang.String alias) { + super(alias, org.jooq.util.sqlserver.information_schema.InformationSchema.INFORMATION_SCHEMA, org.jooq.util.sqlserver.information_schema.tables.Routines.ROUTINES); + } + + @Override + public org.jooq.util.sqlserver.information_schema.tables.Routines as(java.lang.String alias) { + return new org.jooq.util.sqlserver.information_schema.tables.Routines(alias); + } +} diff --git a/jOOQ-meta/src/main/java/org/jooq/util/sqlserver/information_schema/tables/Sequences.java b/jOOQ-meta/src/main/java/org/jooq/util/sqlserver/information_schema/tables/Sequences.java new file mode 100644 index 00000000000..e2ae4a78343 --- /dev/null +++ b/jOOQ-meta/src/main/java/org/jooq/util/sqlserver/information_schema/tables/Sequences.java @@ -0,0 +1,131 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.util.sqlserver.information_schema.tables; + +/** + * This class is generated by jOOQ. + */ +@javax.annotation.Generated(value = {"http://www.jooq.org", "2.0.6"}, + comments = "This class is generated by jOOQ") +public class Sequences extends org.jooq.impl.TableImpl { + + private static final long serialVersionUID = 770627700; + + /** + * The singleton instance of INFORMATION_SCHEMA.SEQUENCES + */ + public static final org.jooq.util.sqlserver.information_schema.tables.Sequences SEQUENCES = new org.jooq.util.sqlserver.information_schema.tables.Sequences(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.Record.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + */ + public final org.jooq.TableField SEQUENCE_CATALOG = createField("SEQUENCE_CATALOG", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField SEQUENCE_SCHEMA = createField("SEQUENCE_SCHEMA", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField SEQUENCE_NAME = createField("SEQUENCE_NAME", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField DATA_TYPE = createField("DATA_TYPE", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField NUMERIC_PRECISION = createField("NUMERIC_PRECISION", org.jooq.impl.SQLDataType.BIGINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField NUMERIC_PRECISION_RADIX = createField("NUMERIC_PRECISION_RADIX", org.jooq.impl.SQLDataType.BIGINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField NUMERIC_SCALE = createField("NUMERIC_SCALE", org.jooq.impl.SQLDataType.BIGINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField MAXIMUM_VALUE = createField("MAXIMUM_VALUE", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField MINIMUM_VALUE = createField("MINIMUM_VALUE", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField INCREMENT = createField("INCREMENT", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField CYCLE_OPTION = createField("CYCLE_OPTION", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField DECLARED_DATA_TYPE = createField("DECLARED_DATA_TYPE", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField DECLARED_NUMERIC_PRECISION = createField("DECLARED_NUMERIC_PRECISION", org.jooq.impl.SQLDataType.BIGINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField DECLARED_NUMERIC_SCALE = createField("DECLARED_NUMERIC_SCALE", org.jooq.impl.SQLDataType.BIGINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField START_WITH = createField("START_WITH", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField NEXT_VALUE = createField("NEXT_VALUE", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * No further instances allowed + */ + private Sequences() { + super("SEQUENCES", org.jooq.util.sqlserver.information_schema.InformationSchema.INFORMATION_SCHEMA); + } + + /** + * No further instances allowed + */ + private Sequences(java.lang.String alias) { + super(alias, org.jooq.util.sqlserver.information_schema.InformationSchema.INFORMATION_SCHEMA, org.jooq.util.sqlserver.information_schema.tables.Sequences.SEQUENCES); + } + + @Override + public org.jooq.util.sqlserver.information_schema.tables.Sequences as(java.lang.String alias) { + return new org.jooq.util.sqlserver.information_schema.tables.Sequences(alias); + } +} diff --git a/jOOQ-meta/src/main/java/org/jooq/util/sqlserver/information_schema/tables/TableConstraints.java b/jOOQ-meta/src/main/java/org/jooq/util/sqlserver/information_schema/tables/TableConstraints.java new file mode 100644 index 00000000000..4de956537de --- /dev/null +++ b/jOOQ-meta/src/main/java/org/jooq/util/sqlserver/information_schema/tables/TableConstraints.java @@ -0,0 +1,96 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.util.sqlserver.information_schema.tables; + +/** + * This class is generated by jOOQ. + */ +@javax.annotation.Generated(value = {"http://www.jooq.org", "2.0.6"}, + comments = "This class is generated by jOOQ") +public class TableConstraints extends org.jooq.impl.TableImpl { + + private static final long serialVersionUID = -2008093826; + + /** + * The singleton instance of INFORMATION_SCHEMA.TABLE_CONSTRAINTS + */ + public static final org.jooq.util.sqlserver.information_schema.tables.TableConstraints TABLE_CONSTRAINTS = new org.jooq.util.sqlserver.information_schema.tables.TableConstraints(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.Record.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + */ + public final org.jooq.TableField CONSTRAINT_CATALOG = createField("CONSTRAINT_CATALOG", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField CONSTRAINT_SCHEMA = createField("CONSTRAINT_SCHEMA", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField CONSTRAINT_NAME = createField("CONSTRAINT_NAME", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField CONSTRAINT_TYPE = createField("CONSTRAINT_TYPE", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField TABLE_CATALOG = createField("TABLE_CATALOG", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField TABLE_SCHEMA = createField("TABLE_SCHEMA", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField TABLE_NAME = createField("TABLE_NAME", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField IS_DEFERRABLE = createField("IS_DEFERRABLE", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField INITIALLY_DEFERRED = createField("INITIALLY_DEFERRED", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * No further instances allowed + */ + private TableConstraints() { + super("TABLE_CONSTRAINTS", org.jooq.util.sqlserver.information_schema.InformationSchema.INFORMATION_SCHEMA); + } + + /** + * No further instances allowed + */ + private TableConstraints(java.lang.String alias) { + super(alias, org.jooq.util.sqlserver.information_schema.InformationSchema.INFORMATION_SCHEMA, org.jooq.util.sqlserver.information_schema.tables.TableConstraints.TABLE_CONSTRAINTS); + } + + @Override + public org.jooq.util.sqlserver.information_schema.tables.TableConstraints as(java.lang.String alias) { + return new org.jooq.util.sqlserver.information_schema.tables.TableConstraints(alias); + } +} diff --git a/jOOQ-meta/src/main/java/org/jooq/util/sqlserver/information_schema/tables/Tables.java b/jOOQ-meta/src/main/java/org/jooq/util/sqlserver/information_schema/tables/Tables.java new file mode 100644 index 00000000000..e40dc4bd717 --- /dev/null +++ b/jOOQ-meta/src/main/java/org/jooq/util/sqlserver/information_schema/tables/Tables.java @@ -0,0 +1,111 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.util.sqlserver.information_schema.tables; + +/** + * This class is generated by jOOQ. + */ +@javax.annotation.Generated(value = {"http://www.jooq.org", "2.0.6"}, + comments = "This class is generated by jOOQ") +public class Tables extends org.jooq.impl.TableImpl { + + private static final long serialVersionUID = 785864513; + + /** + * The singleton instance of INFORMATION_SCHEMA.TABLES + */ + public static final org.jooq.util.sqlserver.information_schema.tables.Tables TABLES = new org.jooq.util.sqlserver.information_schema.tables.Tables(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.Record.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + */ + public final org.jooq.TableField TABLE_CATALOG = createField("TABLE_CATALOG", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField TABLE_SCHEMA = createField("TABLE_SCHEMA", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField TABLE_NAME = createField("TABLE_NAME", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField TABLE_TYPE = createField("TABLE_TYPE", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField SELF_REFERENCING_COLUMN_NAME = createField("SELF_REFERENCING_COLUMN_NAME", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField REFERENCE_GENERATION = createField("REFERENCE_GENERATION", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField USER_DEFINED_TYPE_CATALOG = createField("USER_DEFINED_TYPE_CATALOG", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField USER_DEFINED_TYPE_SCHEMA = createField("USER_DEFINED_TYPE_SCHEMA", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField USER_DEFINED_TYPE_NAME = createField("USER_DEFINED_TYPE_NAME", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField IS_INSERTABLE_INTO = createField("IS_INSERTABLE_INTO", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField IS_TYPED = createField("IS_TYPED", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField COMMIT_ACTION = createField("COMMIT_ACTION", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * No further instances allowed + */ + private Tables() { + super("TABLES", org.jooq.util.sqlserver.information_schema.InformationSchema.INFORMATION_SCHEMA); + } + + /** + * No further instances allowed + */ + private Tables(java.lang.String alias) { + super(alias, org.jooq.util.sqlserver.information_schema.InformationSchema.INFORMATION_SCHEMA, org.jooq.util.sqlserver.information_schema.tables.Tables.TABLES); + } + + @Override + public org.jooq.util.sqlserver.information_schema.tables.Tables as(java.lang.String alias) { + return new org.jooq.util.sqlserver.information_schema.tables.Tables(alias); + } +} diff --git a/jOOQ-meta/src/main/java/org/jooq/util/sybase/SybaseDatabase.java b/jOOQ-meta/src/main/java/org/jooq/util/sybase/SybaseDatabase.java new file mode 100644 index 00000000000..f909467bda0 --- /dev/null +++ b/jOOQ-meta/src/main/java/org/jooq/util/sybase/SybaseDatabase.java @@ -0,0 +1,290 @@ +/** + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com + * 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 "jOOQ" 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 COPYRIGHT OWNER 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. + */ +package org.jooq.util.sybase; + +import static org.jooq.impl.Factory.concat; +import static org.jooq.impl.Factory.val; +import static org.jooq.util.sybase.sys.Tables.SYSFKEY; +import static org.jooq.util.sybase.sys.Tables.SYSIDX; +import static org.jooq.util.sybase.sys.Tables.SYSIDXCOL; +import static org.jooq.util.sybase.sys.Tables.SYSPROCEDURE; +import static org.jooq.util.sybase.sys.Tables.SYSSEQUENCE; +import static org.jooq.util.sybase.sys.Tables.SYSTABCOL; +import static org.jooq.util.sybase.sys.Tables.SYSTABLE; + +import java.sql.SQLException; +import java.util.ArrayList; +import java.util.List; + +import org.jooq.Record; +import org.jooq.SQLDialect; +import org.jooq.impl.Factory; +import org.jooq.tools.JooqLogger; +import org.jooq.util.AbstractDatabase; +import org.jooq.util.ArrayDefinition; +import org.jooq.util.ColumnDefinition; +import org.jooq.util.DataTypeDefinition; +import org.jooq.util.DefaultDataTypeDefinition; +import org.jooq.util.DefaultRelations; +import org.jooq.util.DefaultSequenceDefinition; +import org.jooq.util.EnumDefinition; +import org.jooq.util.PackageDefinition; +import org.jooq.util.RoutineDefinition; +import org.jooq.util.SchemaDefinition; +import org.jooq.util.SequenceDefinition; +import org.jooq.util.TableDefinition; +import org.jooq.util.UDTDefinition; +import org.jooq.util.sybase.sys.tables.Sysidx; +import org.jooq.util.sybase.sys.tables.Systable; + +/** + * Sybase implementation of {@link AbstractDatabase} This implementation is + * targeted at the Sybase SQLAnywhere 12 database engine. + * + * @see Sybase + * documentation + * @author Espen Stromsnes + */ +public class SybaseDatabase extends AbstractDatabase { + + private static final JooqLogger log = JooqLogger.getLogger(SybaseDatabase.class); + + @Override + public Factory create() { + return new Factory(getConnection(), SQLDialect.SYBASE); + } + + + private SchemaDefinition getSchema() { + List schemata = getSchemata(); + + if (schemata.size() > 1) { + log.error("NOT SUPPORTED", "jOOQ does not support multiple schemata in Sybase ASE."); + log.error("-----------------------------------------------------------------------"); + + // TODO [#1102] Support this also for Sybase SQL Anywhere + } + + return schemata.get(0); + } + + @Override + protected void loadPrimaryKeys(DefaultRelations relations) throws SQLException { + for (Record record : create().select( + concat(SYSTABLE.TABLE_NAME, val("__"), SYSIDX.INDEX_NAME).as("indexName"), + SYSTABLE.TABLE_NAME, + SYSTABCOL.COLUMN_NAME) + .from(SYSIDX) + .join(SYSIDXCOL) + .on(SYSIDX.TABLE_ID.equal(SYSIDXCOL.TABLE_ID)) + .and(SYSIDX.INDEX_ID.equal(SYSIDXCOL.INDEX_ID)) + .join(SYSTABLE) + .on(SYSIDXCOL.TABLE_ID.equal(SYSTABLE.TABLE_ID)) + .join(SYSTABCOL) + .on(SYSIDXCOL.TABLE_ID.equal(SYSTABCOL.TABLE_ID)) + .and(SYSIDXCOL.COLUMN_ID.equal(SYSTABCOL.COLUMN_ID)) + .where(SYSIDX.INDEX_CATEGORY.equal((byte) 1)) + .orderBy(SYSIDXCOL.SEQUENCE) + .fetch()) { + + String key = record.getValueAsString("indexName"); + String tableName = record.getValue(SYSTABLE.TABLE_NAME); + String columnName = record.getValue(SYSTABCOL.COLUMN_NAME); + + TableDefinition table = getTable(getSchema(), tableName); + if (table != null) { + relations.addPrimaryKey(key, table.getColumn(columnName)); + } + } + } + + + @Override + protected void loadUniqueKeys(DefaultRelations r) throws SQLException { + for (Record record : create().select( + concat(SYSTABLE.TABLE_NAME, val("__"), SYSIDX.INDEX_NAME).as("indexName"), + SYSTABLE.TABLE_NAME, + SYSTABCOL.COLUMN_NAME) + .from(SYSIDX) + .join(SYSIDXCOL) + .on(SYSIDX.TABLE_ID.equal(SYSIDXCOL.TABLE_ID)) + .and(SYSIDX.INDEX_ID.equal(SYSIDXCOL.INDEX_ID)) + .join(SYSTABLE) + .on(SYSIDXCOL.TABLE_ID.equal(SYSTABLE.TABLE_ID)) + .join(SYSTABCOL) + .on(SYSIDXCOL.TABLE_ID.equal(SYSTABCOL.TABLE_ID)) + .and(SYSIDXCOL.COLUMN_ID.equal(SYSTABCOL.COLUMN_ID)) + .where(SYSIDX.INDEX_CATEGORY.equal((byte) 3)) + .and(SYSIDX.UNIQUE.equal((byte) 2)) + .orderBy(SYSIDXCOL.SEQUENCE) + .fetch()) { + + String key = record.getValueAsString("indexName"); + String tableName = record.getValue(SYSTABLE.TABLE_NAME); + String columnName = record.getValue(SYSTABCOL.COLUMN_NAME); + + TableDefinition table = getTable(getSchema(), tableName); + if (table != null) { + r.addUniqueKey(key, table.getColumn(columnName)); + } + } + } + + @Override + protected void loadForeignKeys(DefaultRelations relations) throws SQLException { + Sysidx fkIndex = SYSIDX.as("fkIndex"); + Sysidx ukIndex = SYSIDX.as("ukIndex"); + + Systable fkTable = SYSTABLE.as("fkTable"); + Systable ukTable = SYSTABLE.as("ukTable"); + + for (Record record : create().select( + concat(fkTable.TABLE_NAME, val("__"), fkIndex.INDEX_NAME).as("fkIndexName"), + fkTable.TABLE_NAME, + SYSTABCOL.COLUMN_NAME, + concat(ukTable.TABLE_NAME, val("__"), ukIndex.INDEX_NAME).as("ukIndexName")) + .from(SYSFKEY) + .join(fkIndex) + .on(SYSFKEY.FOREIGN_INDEX_ID.equal(fkIndex.INDEX_ID)) + .and(SYSFKEY.FOREIGN_TABLE_ID.equal(fkIndex.TABLE_ID)) + .join(SYSIDXCOL) + .on(fkIndex.INDEX_ID.equal(SYSIDXCOL.INDEX_ID)) + .and(fkIndex.TABLE_ID.equal(SYSIDXCOL.TABLE_ID)) + .join(fkTable) + .on(SYSFKEY.FOREIGN_TABLE_ID.equal(fkTable.TABLE_ID)) + .join(SYSTABCOL) + .on(SYSIDXCOL.TABLE_ID.equal(SYSTABCOL.TABLE_ID)) + .and(SYSIDXCOL.COLUMN_ID.equal(SYSTABCOL.COLUMN_ID)) + .join(ukIndex) + .on(SYSFKEY.PRIMARY_INDEX_ID.equal(ukIndex.INDEX_ID)) + .and(SYSFKEY.PRIMARY_TABLE_ID.equal(ukIndex.TABLE_ID)) + .join(ukTable) + .on(SYSFKEY.PRIMARY_TABLE_ID.equal(ukTable.TABLE_ID)) + .orderBy( + fkTable.TABLE_NAME.asc(), + fkIndex.INDEX_NAME.asc(), + SYSIDXCOL.SEQUENCE.asc()) + .fetch()) { + + String foreignKey = record.getValueAsString("fkIndexName"); + String foreignKeyTableName = record.getValue(SYSTABLE.TABLE_NAME); + String foreignKeyColumn = record.getValue(SYSTABCOL.COLUMN_NAME); + String referencedKey = record.getValueAsString("ukIndexName"); + + TableDefinition foreignKeyTable = getTable(getSchema(), foreignKeyTableName); + + if (foreignKeyTable != null) { + ColumnDefinition referencingColumn = foreignKeyTable.getColumn(foreignKeyColumn); + relations.addForeignKey(foreignKey, referencedKey, referencingColumn, getSchema()); + } + } + } + + @Override + protected List getSequences0() throws SQLException { + List result = new ArrayList(); + + for (String name : create().select(SYSSEQUENCE.SEQUENCE_NAME) + .from(SYSSEQUENCE) + .orderBy(SYSSEQUENCE.SEQUENCE_NAME) + .fetch(SYSSEQUENCE.SEQUENCE_NAME)) { + + DataTypeDefinition type = new DefaultDataTypeDefinition( + this, getSchema(), + SybaseDataType.NUMERIC.getTypeName(), 0, 38, 0); + + result.add(new DefaultSequenceDefinition(getSchema(), name, type)); + } + + return result; + } + + @Override + protected List getTables0() throws SQLException { + List result = new ArrayList(); + + for (Record record : create().select( + SYSTABLE.TABLE_NAME, + SYSTABLE.REMARKS) + .from(SYSTABLE) + .fetch()) { + + String name = record.getValue(SYSTABLE.TABLE_NAME); + String comment = record.getValue(SYSTABLE.REMARKS); + + SybaseTableDefinition table = new SybaseTableDefinition(getSchema(), name, comment); + result.add(table); + } + + return result; + } + + @Override + protected List getEnums0() throws SQLException { + List result = new ArrayList(); + return result; + } + + @Override + protected List getUDTs0() throws SQLException { + List result = new ArrayList(); + return result; + } + + @Override + protected List getArrays0() throws SQLException { + List result = new ArrayList(); + return result; + } + + @Override + protected List getRoutines0() throws SQLException { + List result = new ArrayList(); + + for (Record record : create().select(SYSPROCEDURE.PROC_NAME) + .from(SYSPROCEDURE) + .orderBy(SYSPROCEDURE.PROC_NAME) + .fetch()) { + + String name = record.getValue(SYSPROCEDURE.PROC_NAME); + result.add(new SybaseRoutineDefinition(getSchema(), null, name)); + } + + return result; + } + + @Override + protected List getPackages0() throws SQLException { + List result = new ArrayList(); + return result; + } +} diff --git a/jOOQ-meta/src/main/java/org/jooq/util/sybase/SybaseRoutineDefinition.java b/jOOQ-meta/src/main/java/org/jooq/util/sybase/SybaseRoutineDefinition.java new file mode 100644 index 00000000000..7e7a7297442 --- /dev/null +++ b/jOOQ-meta/src/main/java/org/jooq/util/sybase/SybaseRoutineDefinition.java @@ -0,0 +1,118 @@ +/** + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com + * 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 "jOOQ" 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 COPYRIGHT OWNER 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. + */ +package org.jooq.util.sybase; + +import static org.jooq.util.sybase.sys.Tables.SYSDOMAIN; +import static org.jooq.util.sybase.sys.Tables.SYSPROCEDURE; +import static org.jooq.util.sybase.sys.Tables.SYSPROCPARM; + +import java.sql.SQLException; + +import org.jooq.Record; +import org.jooq.util.AbstractRoutineDefinition; +import org.jooq.util.DataTypeDefinition; +import org.jooq.util.DefaultDataTypeDefinition; +import org.jooq.util.DefaultParameterDefinition; +import org.jooq.util.InOutDefinition; +import org.jooq.util.PackageDefinition; +import org.jooq.util.ParameterDefinition; +import org.jooq.util.SchemaDefinition; + +/** + * Sybase implementation of {@link AbstractRoutineDefinition} + * + * @author Espen Stromsnes + * @author Lukas Eder + */ +public class SybaseRoutineDefinition extends AbstractRoutineDefinition { + + public SybaseRoutineDefinition(SchemaDefinition schema, PackageDefinition pkg, String name) { + super(schema, pkg, name, null, null); + } + + @Override + protected void init0() throws SQLException { + for (Record record : create().select( + SYSPROCPARM.PARM_NAME, + SYSDOMAIN.DOMAIN_NAME, + SYSPROCPARM.WIDTH, + SYSPROCPARM.SCALE, + SYSPROCPARM.PARM_ID, + SYSPROCPARM.PARM_TYPE, + SYSPROCPARM.PARM_MODE_IN, + SYSPROCPARM.PARM_MODE_OUT) + .from(SYSPROCPARM) + .join(SYSDOMAIN).on(SYSPROCPARM.DOMAIN_ID.equal(SYSDOMAIN.DOMAIN_ID)) + .join(SYSPROCEDURE).on(SYSPROCPARM.PROC_ID.equal(SYSPROCEDURE.PROC_ID)) + .where(SYSPROCEDURE.PROC_NAME.equal(getName())) + .orderBy(SYSPROCPARM.PARM_ID) + .fetch()) { + + String paramName = record.getValue(SYSPROCPARM.PARM_NAME); + Boolean paramModeIn = record.getValueAsBoolean(SYSPROCPARM.PARM_MODE_IN, false); + Boolean paramModeOut = record.getValueAsBoolean(SYSPROCPARM.PARM_MODE_OUT, false); + int parmType = record.getValue(SYSPROCPARM.PARM_TYPE); + + InOutDefinition inOutDefinition; + if (parmType == 4) { + inOutDefinition = InOutDefinition.RETURN; + paramName = "RETURN_VALUE"; + } + else if (paramModeIn && paramModeOut) { + inOutDefinition = InOutDefinition.INOUT; + } + else if (paramModeIn) { + inOutDefinition = InOutDefinition.IN; + } + else if (paramModeOut) { + inOutDefinition = InOutDefinition.OUT; + } + else { + throw new IllegalArgumentException("Stored procedure param is neither in or out mode!"); + } + + DataTypeDefinition type = new DefaultDataTypeDefinition( + getDatabase(), + getSchema(), + record.getValue(SYSDOMAIN.DOMAIN_NAME), + record.getValue(SYSPROCPARM.WIDTH), + record.getValue(SYSPROCPARM.WIDTH), + record.getValue(SYSPROCPARM.SCALE)); + + ParameterDefinition parameter = new DefaultParameterDefinition(this, + paramName, + record.getValue(SYSPROCPARM.PARM_ID), + type); + + addParameter(inOutDefinition, parameter); + } + } +} diff --git a/jOOQ-meta/src/main/java/org/jooq/util/sybase/SybaseTableDefinition.java b/jOOQ-meta/src/main/java/org/jooq/util/sybase/SybaseTableDefinition.java new file mode 100644 index 00000000000..5bd377ff2ed --- /dev/null +++ b/jOOQ-meta/src/main/java/org/jooq/util/sybase/SybaseTableDefinition.java @@ -0,0 +1,102 @@ +/** + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com + * 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 "jOOQ" 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 COPYRIGHT OWNER 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. + */ +package org.jooq.util.sybase; + +import static org.jooq.util.sybase.sys.Tables.SYSDOMAIN; +import static org.jooq.util.sybase.sys.Tables.SYSTAB; +import static org.jooq.util.sybase.sys.Tables.SYSTABCOL; + +import java.sql.SQLException; +import java.util.ArrayList; +import java.util.List; + +import org.jooq.Record; +import org.jooq.util.AbstractTableDefinition; +import org.jooq.util.ColumnDefinition; +import org.jooq.util.DataTypeDefinition; +import org.jooq.util.DefaultColumnDefinition; +import org.jooq.util.DefaultDataTypeDefinition; +import org.jooq.util.SchemaDefinition; +/** + * Sybase table definition + * + * @author Espen Stromsnes + */ +public class SybaseTableDefinition extends AbstractTableDefinition { + + public SybaseTableDefinition(SchemaDefinition schema, String name, String comment) { + super(schema, name, comment); + } + + @Override + public List getElements0() throws SQLException { + List result = new ArrayList(); + + for (Record record : create().select( + SYSTABCOL.COLUMN_NAME, + SYSTABCOL.COLUMN_ID, + SYSDOMAIN.DOMAIN_NAME, + SYSTABCOL.NULLS, + SYSTABCOL.WIDTH, + SYSTABCOL.SCALE, + SYSTABCOL.DEFAULT) + .from(SYSTABCOL) + .join(SYSTAB) + .on(SYSTABCOL.TABLE_ID.equal(SYSTAB.TABLE_ID)) + .join(SYSDOMAIN) + .on(SYSTABCOL.DOMAIN_ID.equal(SYSDOMAIN.DOMAIN_ID)) + .where(SYSTAB.TABLE_NAME.equal(getName())) + .orderBy(SYSTABCOL.COLUMN_ID) + .fetch()) { + + DataTypeDefinition type = new DefaultDataTypeDefinition( + getDatabase(), + getSchema(), + record.getValue(SYSDOMAIN.DOMAIN_NAME), + record.getValue(SYSTABCOL.WIDTH), + record.getValue(SYSTABCOL.WIDTH), + record.getValue(SYSTABCOL.SCALE)); + + ColumnDefinition column = new DefaultColumnDefinition( + getDatabase().getTable(getSchema(), getName()), + record.getValue(SYSTABCOL.COLUMN_NAME), + record.getValue(SYSTABCOL.COLUMN_ID), + type, + record.getValue(SYSTABCOL.NULLS, boolean.class), + "autoincrement".equalsIgnoreCase(record.getValue(SYSTABCOL.DEFAULT)), + null); + + result.add(column); + } + + return result; + } +} diff --git a/jOOQ-meta/src/main/java/org/jooq/util/sybase/sys/Sys.java b/jOOQ-meta/src/main/java/org/jooq/util/sybase/sys/Sys.java new file mode 100644 index 00000000000..f1f6f356072 --- /dev/null +++ b/jOOQ-meta/src/main/java/org/jooq/util/sybase/sys/Sys.java @@ -0,0 +1,42 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.util.sybase.sys; + +/** + * This class is generated by jOOQ. + */ +@javax.annotation.Generated(value = {"http://www.jooq.org", "2.0.6"}, + comments = "This class is generated by jOOQ") +public class Sys extends org.jooq.impl.SchemaImpl { + + private static final long serialVersionUID = 807182600; + + /** + * The singleton instance of sys + */ + public static final Sys SYS = new Sys(); + + /** + * No further instances allowed + */ + private Sys() { + super("sys"); + } + + @Override + public final java.util.List> getTables() { + return java.util.Arrays.>asList( + org.jooq.util.sybase.sys.tables.Sysidxcol.SYSIDXCOL, + org.jooq.util.sybase.sys.tables.Sysfkey.SYSFKEY, + org.jooq.util.sybase.sys.tables.Sysdomain.SYSDOMAIN, + org.jooq.util.sybase.sys.tables.Sysview.SYSVIEW, + org.jooq.util.sybase.sys.tables.Syssequence.SYSSEQUENCE, + org.jooq.util.sybase.sys.tables.Systab.SYSTAB, + org.jooq.util.sybase.sys.tables.Systabcol.SYSTABCOL, + org.jooq.util.sybase.sys.tables.Sysidx.SYSIDX, + org.jooq.util.sybase.sys.tables.Systable.SYSTABLE, + org.jooq.util.sybase.sys.tables.Sysprocedure.SYSPROCEDURE, + org.jooq.util.sybase.sys.tables.Sysprocparm.SYSPROCPARM); + } +} diff --git a/jOOQ-meta/src/main/java/org/jooq/util/sybase/sys/SysFactory.java b/jOOQ-meta/src/main/java/org/jooq/util/sybase/sys/SysFactory.java new file mode 100644 index 00000000000..b983199cef1 --- /dev/null +++ b/jOOQ-meta/src/main/java/org/jooq/util/sybase/sys/SysFactory.java @@ -0,0 +1,33 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.util.sybase.sys; + +/** + * This class is generated by jOOQ. + */ +@javax.annotation.Generated(value = {"http://www.jooq.org", "2.0.6"}, + comments = "This class is generated by jOOQ") +public class SysFactory extends org.jooq.util.sybase.SybaseFactory { + + private static final long serialVersionUID = -1738541104; + + /** + * Create a factory with a connection + * + * @param connection The connection to use with objects created from this factory + */ + public SysFactory(java.sql.Connection connection) { + super(connection); + } + + /** + * Create a factory with a connection and some settings + * + * @param connection The connection to use with objects created from this factory + * @param settings The settings to apply to objects created from this factory + */ + public SysFactory(java.sql.Connection connection, org.jooq.conf.Settings settings) { + super(connection, settings); + } +} diff --git a/jOOQ-meta/src/main/java/org/jooq/util/sybase/sys/Tables.java b/jOOQ-meta/src/main/java/org/jooq/util/sybase/sys/Tables.java new file mode 100644 index 00000000000..4bda64379a9 --- /dev/null +++ b/jOOQ-meta/src/main/java/org/jooq/util/sybase/sys/Tables.java @@ -0,0 +1,74 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.util.sybase.sys; + +/** + * This class is generated by jOOQ. + * + * Convenience access to all tables in sys + */ +@javax.annotation.Generated(value = {"http://www.jooq.org", "2.0.6"}, + comments = "This class is generated by jOOQ") +public final class Tables { + + /** + * The table sys.SYSIDXCOL + */ + public static org.jooq.util.sybase.sys.tables.Sysidxcol SYSIDXCOL = org.jooq.util.sybase.sys.tables.Sysidxcol.SYSIDXCOL; + + /** + * The table sys.SYSFKEY + */ + public static org.jooq.util.sybase.sys.tables.Sysfkey SYSFKEY = org.jooq.util.sybase.sys.tables.Sysfkey.SYSFKEY; + + /** + * The table sys.SYSDOMAIN + */ + public static org.jooq.util.sybase.sys.tables.Sysdomain SYSDOMAIN = org.jooq.util.sybase.sys.tables.Sysdomain.SYSDOMAIN; + + /** + * The table sys.SYSVIEW + */ + public static org.jooq.util.sybase.sys.tables.Sysview SYSVIEW = org.jooq.util.sybase.sys.tables.Sysview.SYSVIEW; + + /** + * The table sys.SYSSEQUENCE + */ + public static org.jooq.util.sybase.sys.tables.Syssequence SYSSEQUENCE = org.jooq.util.sybase.sys.tables.Syssequence.SYSSEQUENCE; + + /** + * The table sys.SYSTAB + */ + public static org.jooq.util.sybase.sys.tables.Systab SYSTAB = org.jooq.util.sybase.sys.tables.Systab.SYSTAB; + + /** + * The table sys.SYSTABCOL + */ + public static org.jooq.util.sybase.sys.tables.Systabcol SYSTABCOL = org.jooq.util.sybase.sys.tables.Systabcol.SYSTABCOL; + + /** + * The table sys.SYSIDX + */ + public static org.jooq.util.sybase.sys.tables.Sysidx SYSIDX = org.jooq.util.sybase.sys.tables.Sysidx.SYSIDX; + + /** + * The table sys.SYSTABLE + */ + public static org.jooq.util.sybase.sys.tables.Systable SYSTABLE = org.jooq.util.sybase.sys.tables.Systable.SYSTABLE; + + /** + * The table sys.SYSPROCEDURE + */ + public static org.jooq.util.sybase.sys.tables.Sysprocedure SYSPROCEDURE = org.jooq.util.sybase.sys.tables.Sysprocedure.SYSPROCEDURE; + + /** + * The table sys.SYSPROCPARM + */ + public static org.jooq.util.sybase.sys.tables.Sysprocparm SYSPROCPARM = org.jooq.util.sybase.sys.tables.Sysprocparm.SYSPROCPARM; + + /** + * No instances + */ + private Tables() {} +} diff --git a/jOOQ-meta/src/main/java/org/jooq/util/sybase/sys/tables/Sysdomain.java b/jOOQ-meta/src/main/java/org/jooq/util/sybase/sys/tables/Sysdomain.java new file mode 100644 index 00000000000..25883e5bec2 --- /dev/null +++ b/jOOQ-meta/src/main/java/org/jooq/util/sybase/sys/tables/Sysdomain.java @@ -0,0 +1,71 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.util.sybase.sys.tables; + +/** + * This class is generated by jOOQ. + */ +@javax.annotation.Generated(value = {"http://www.jooq.org", "2.0.6"}, + comments = "This class is generated by jOOQ") +public class Sysdomain extends org.jooq.impl.TableImpl { + + private static final long serialVersionUID = 924391205; + + /** + * The singleton instance of sys.SYSDOMAIN + */ + public static final org.jooq.util.sybase.sys.tables.Sysdomain SYSDOMAIN = new org.jooq.util.sybase.sys.tables.Sysdomain(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.Record.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + */ + public final org.jooq.TableField DOMAIN_ID = createField("domain_id", org.jooq.impl.SQLDataType.SMALLINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField DOMAIN_NAME = createField("domain_name", org.jooq.impl.SQLDataType.CHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField TYPE_ID = createField("type_id", org.jooq.impl.SQLDataType.SMALLINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField PRECISION = createField("precision", org.jooq.impl.SQLDataType.SMALLINT, this); + + /** + * No further instances allowed + */ + private Sysdomain() { + super("SYSDOMAIN", org.jooq.util.sybase.sys.Sys.SYS); + } + + /** + * No further instances allowed + */ + private Sysdomain(java.lang.String alias) { + super(alias, org.jooq.util.sybase.sys.Sys.SYS, org.jooq.util.sybase.sys.tables.Sysdomain.SYSDOMAIN); + } + + @Override + public org.jooq.util.sybase.sys.tables.Sysdomain as(java.lang.String alias) { + return new org.jooq.util.sybase.sys.tables.Sysdomain(alias); + } +} diff --git a/jOOQ-meta/src/main/java/org/jooq/util/sybase/sys/tables/Sysfkey.java b/jOOQ-meta/src/main/java/org/jooq/util/sybase/sys/tables/Sysfkey.java new file mode 100644 index 00000000000..f0a336e762c --- /dev/null +++ b/jOOQ-meta/src/main/java/org/jooq/util/sybase/sys/tables/Sysfkey.java @@ -0,0 +1,86 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.util.sybase.sys.tables; + +/** + * This class is generated by jOOQ. + */ +@javax.annotation.Generated(value = {"http://www.jooq.org", "2.0.6"}, + comments = "This class is generated by jOOQ") +public class Sysfkey extends org.jooq.impl.TableImpl { + + private static final long serialVersionUID = 2010955502; + + /** + * The singleton instance of sys.SYSFKEY + */ + public static final org.jooq.util.sybase.sys.tables.Sysfkey SYSFKEY = new org.jooq.util.sybase.sys.tables.Sysfkey(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.Record.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + */ + public final org.jooq.TableField FOREIGN_TABLE_ID = createField("foreign_table_id", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField FOREIGN_INDEX_ID = createField("foreign_index_id", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField PRIMARY_TABLE_ID = createField("primary_table_id", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField PRIMARY_INDEX_ID = createField("primary_index_id", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField MATCH_TYPE = createField("match_type", org.jooq.impl.SQLDataType.TINYINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField CHECK_ON_COMMIT = createField("check_on_commit", org.jooq.impl.SQLDataType.CHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField NULLS = createField("nulls", org.jooq.impl.SQLDataType.CHAR, this); + + /** + * No further instances allowed + */ + private Sysfkey() { + super("SYSFKEY", org.jooq.util.sybase.sys.Sys.SYS); + } + + /** + * No further instances allowed + */ + private Sysfkey(java.lang.String alias) { + super(alias, org.jooq.util.sybase.sys.Sys.SYS, org.jooq.util.sybase.sys.tables.Sysfkey.SYSFKEY); + } + + @Override + public org.jooq.util.sybase.sys.tables.Sysfkey as(java.lang.String alias) { + return new org.jooq.util.sybase.sys.tables.Sysfkey(alias); + } +} diff --git a/jOOQ-meta/src/main/java/org/jooq/util/sybase/sys/tables/Sysidx.java b/jOOQ-meta/src/main/java/org/jooq/util/sybase/sys/tables/Sysidx.java new file mode 100644 index 00000000000..83365aad4a8 --- /dev/null +++ b/jOOQ-meta/src/main/java/org/jooq/util/sybase/sys/tables/Sysidx.java @@ -0,0 +1,101 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.util.sybase.sys.tables; + +/** + * This class is generated by jOOQ. + */ +@javax.annotation.Generated(value = {"http://www.jooq.org", "2.0.6"}, + comments = "This class is generated by jOOQ") +public class Sysidx extends org.jooq.impl.TableImpl { + + private static final long serialVersionUID = -1888048987; + + /** + * The singleton instance of sys.SYSIDX + */ + public static final org.jooq.util.sybase.sys.tables.Sysidx SYSIDX = new org.jooq.util.sybase.sys.tables.Sysidx(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.Record.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + */ + public final org.jooq.TableField TABLE_ID = createField("table_id", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField INDEX_ID = createField("index_id", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField OBJECT_ID = createField("object_id", org.jooq.impl.SQLDataType.BIGINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField PHYS_INDEX_ID = createField("phys_index_id", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField DBSPACE_ID = createField("dbspace_id", org.jooq.impl.SQLDataType.SMALLINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField INDEX_CATEGORY = createField("index_category", org.jooq.impl.SQLDataType.TINYINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField UNIQUE = createField("unique", org.jooq.impl.SQLDataType.TINYINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField INDEX_NAME = createField("index_name", org.jooq.impl.SQLDataType.CHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField NOT_ENFORCED = createField("not_enforced", org.jooq.impl.SQLDataType.CHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField FILE_ID = createField("file_id", org.jooq.impl.SQLDataType.SMALLINT, this); + + /** + * No further instances allowed + */ + private Sysidx() { + super("SYSIDX", org.jooq.util.sybase.sys.Sys.SYS); + } + + /** + * No further instances allowed + */ + private Sysidx(java.lang.String alias) { + super(alias, org.jooq.util.sybase.sys.Sys.SYS, org.jooq.util.sybase.sys.tables.Sysidx.SYSIDX); + } + + @Override + public org.jooq.util.sybase.sys.tables.Sysidx as(java.lang.String alias) { + return new org.jooq.util.sybase.sys.tables.Sysidx(alias); + } +} diff --git a/jOOQ-meta/src/main/java/org/jooq/util/sybase/sys/tables/Sysidxcol.java b/jOOQ-meta/src/main/java/org/jooq/util/sybase/sys/tables/Sysidxcol.java new file mode 100644 index 00000000000..f1b8bced21e --- /dev/null +++ b/jOOQ-meta/src/main/java/org/jooq/util/sybase/sys/tables/Sysidxcol.java @@ -0,0 +1,81 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.util.sybase.sys.tables; + +/** + * This class is generated by jOOQ. + */ +@javax.annotation.Generated(value = {"http://www.jooq.org", "2.0.6"}, + comments = "This class is generated by jOOQ") +public class Sysidxcol extends org.jooq.impl.TableImpl { + + private static final long serialVersionUID = -2143357849; + + /** + * The singleton instance of sys.SYSIDXCOL + */ + public static final org.jooq.util.sybase.sys.tables.Sysidxcol SYSIDXCOL = new org.jooq.util.sybase.sys.tables.Sysidxcol(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.Record.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + */ + public final org.jooq.TableField TABLE_ID = createField("table_id", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField INDEX_ID = createField("index_id", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField SEQUENCE = createField("sequence", org.jooq.impl.SQLDataType.SMALLINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField COLUMN_ID = createField("column_id", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField ORDER = createField("order", org.jooq.impl.SQLDataType.CHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField PRIMARY_COLUMN_ID = createField("primary_column_id", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * No further instances allowed + */ + private Sysidxcol() { + super("SYSIDXCOL", org.jooq.util.sybase.sys.Sys.SYS); + } + + /** + * No further instances allowed + */ + private Sysidxcol(java.lang.String alias) { + super(alias, org.jooq.util.sybase.sys.Sys.SYS, org.jooq.util.sybase.sys.tables.Sysidxcol.SYSIDXCOL); + } + + @Override + public org.jooq.util.sybase.sys.tables.Sysidxcol as(java.lang.String alias) { + return new org.jooq.util.sybase.sys.tables.Sysidxcol(alias); + } +} diff --git a/jOOQ-meta/src/main/java/org/jooq/util/sybase/sys/tables/Sysprocedure.java b/jOOQ-meta/src/main/java/org/jooq/util/sybase/sys/tables/Sysprocedure.java new file mode 100644 index 00000000000..93e16668fed --- /dev/null +++ b/jOOQ-meta/src/main/java/org/jooq/util/sybase/sys/tables/Sysprocedure.java @@ -0,0 +1,111 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.util.sybase.sys.tables; + +/** + * This class is generated by jOOQ. + */ +@javax.annotation.Generated(value = {"http://www.jooq.org", "2.0.6"}, + comments = "This class is generated by jOOQ") +public class Sysprocedure extends org.jooq.impl.TableImpl { + + private static final long serialVersionUID = -986257447; + + /** + * The singleton instance of sys.SYSPROCEDURE + */ + public static final org.jooq.util.sybase.sys.tables.Sysprocedure SYSPROCEDURE = new org.jooq.util.sybase.sys.tables.Sysprocedure(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.Record.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + */ + public final org.jooq.TableField PROC_ID = createField("proc_id", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField CREATOR = createField("creator", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField OBJECT_ID = createField("object_id", org.jooq.impl.SQLDataType.BIGINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField PROC_NAME = createField("proc_name", org.jooq.impl.SQLDataType.CHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField PROC_DEFN = createField("proc_defn", org.jooq.impl.SQLDataType.LONGVARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField REMARKS = createField("remarks", org.jooq.impl.SQLDataType.LONGVARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField REPLICATE = createField("replicate", org.jooq.impl.SQLDataType.CHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField SRVID = createField("srvid", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField SOURCE = createField("source", org.jooq.impl.SQLDataType.LONGVARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField AVG_NUM_ROWS = createField("avg_num_rows", org.jooq.impl.SQLDataType.FLOAT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField AVG_COST = createField("avg_cost", org.jooq.impl.SQLDataType.FLOAT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField STATS = createField("stats", org.jooq.impl.SQLDataType.LONGVARBINARY, this); + + /** + * No further instances allowed + */ + private Sysprocedure() { + super("SYSPROCEDURE", org.jooq.util.sybase.sys.Sys.SYS); + } + + /** + * No further instances allowed + */ + private Sysprocedure(java.lang.String alias) { + super(alias, org.jooq.util.sybase.sys.Sys.SYS, org.jooq.util.sybase.sys.tables.Sysprocedure.SYSPROCEDURE); + } + + @Override + public org.jooq.util.sybase.sys.tables.Sysprocedure as(java.lang.String alias) { + return new org.jooq.util.sybase.sys.tables.Sysprocedure(alias); + } +} diff --git a/jOOQ-meta/src/main/java/org/jooq/util/sybase/sys/tables/Sysprocparm.java b/jOOQ-meta/src/main/java/org/jooq/util/sybase/sys/tables/Sysprocparm.java new file mode 100644 index 00000000000..9df65d2eafa --- /dev/null +++ b/jOOQ-meta/src/main/java/org/jooq/util/sybase/sys/tables/Sysprocparm.java @@ -0,0 +1,116 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.util.sybase.sys.tables; + +/** + * This class is generated by jOOQ. + */ +@javax.annotation.Generated(value = {"http://www.jooq.org", "2.0.6"}, + comments = "This class is generated by jOOQ") +public class Sysprocparm extends org.jooq.impl.TableImpl { + + private static final long serialVersionUID = -1915636413; + + /** + * The singleton instance of sys.SYSPROCPARM + */ + public static final org.jooq.util.sybase.sys.tables.Sysprocparm SYSPROCPARM = new org.jooq.util.sybase.sys.tables.Sysprocparm(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.Record.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + */ + public final org.jooq.TableField PROC_ID = createField("proc_id", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField PARM_ID = createField("parm_id", org.jooq.impl.SQLDataType.SMALLINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField PARM_TYPE = createField("parm_type", org.jooq.impl.SQLDataType.SMALLINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField PARM_MODE_IN = createField("parm_mode_in", org.jooq.impl.SQLDataType.CHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField PARM_MODE_OUT = createField("parm_mode_out", org.jooq.impl.SQLDataType.CHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField DOMAIN_ID = createField("domain_id", org.jooq.impl.SQLDataType.SMALLINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField WIDTH = createField("width", org.jooq.impl.SQLDataType.BIGINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField SCALE = createField("scale", org.jooq.impl.SQLDataType.SMALLINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField USER_TYPE = createField("user_type", org.jooq.impl.SQLDataType.SMALLINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField PARM_NAME = createField("parm_name", org.jooq.impl.SQLDataType.CHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField DEFAULT = createField("default", org.jooq.impl.SQLDataType.LONGVARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField REMARKS = createField("remarks", org.jooq.impl.SQLDataType.LONGVARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField BASE_TYPE_STR = createField("base_type_str", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * No further instances allowed + */ + private Sysprocparm() { + super("SYSPROCPARM", org.jooq.util.sybase.sys.Sys.SYS); + } + + /** + * No further instances allowed + */ + private Sysprocparm(java.lang.String alias) { + super(alias, org.jooq.util.sybase.sys.Sys.SYS, org.jooq.util.sybase.sys.tables.Sysprocparm.SYSPROCPARM); + } + + @Override + public org.jooq.util.sybase.sys.tables.Sysprocparm as(java.lang.String alias) { + return new org.jooq.util.sybase.sys.tables.Sysprocparm(alias); + } +} diff --git a/jOOQ-meta/src/main/java/org/jooq/util/sybase/sys/tables/Syssequence.java b/jOOQ-meta/src/main/java/org/jooq/util/sybase/sys/tables/Syssequence.java new file mode 100644 index 00000000000..2ad4f2826a4 --- /dev/null +++ b/jOOQ-meta/src/main/java/org/jooq/util/sybase/sys/tables/Syssequence.java @@ -0,0 +1,101 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.util.sybase.sys.tables; + +/** + * This class is generated by jOOQ. + */ +@javax.annotation.Generated(value = {"http://www.jooq.org", "2.0.6"}, + comments = "This class is generated by jOOQ") +public class Syssequence extends org.jooq.impl.TableImpl { + + private static final long serialVersionUID = -1976477654; + + /** + * The singleton instance of sys.SYSSEQUENCE + */ + public static final org.jooq.util.sybase.sys.tables.Syssequence SYSSEQUENCE = new org.jooq.util.sybase.sys.tables.Syssequence(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.Record.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + */ + public final org.jooq.TableField OBJECT_ID = createField("object_id", org.jooq.impl.SQLDataType.BIGINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField OWNER = createField("owner", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField MIN_VALUE = createField("min_value", org.jooq.impl.SQLDataType.BIGINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField MAX_VALUE = createField("max_value", org.jooq.impl.SQLDataType.BIGINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField INCREMENT_BY = createField("increment_by", org.jooq.impl.SQLDataType.BIGINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField START_WITH = createField("start_with", org.jooq.impl.SQLDataType.BIGINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField CACHE = createField("cache", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField CYCLE = createField("cycle", org.jooq.impl.SQLDataType.TINYINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField RESUME_AT = createField("resume_at", org.jooq.impl.SQLDataType.BIGINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField SEQUENCE_NAME = createField("sequence_name", org.jooq.impl.SQLDataType.CHAR, this); + + /** + * No further instances allowed + */ + private Syssequence() { + super("SYSSEQUENCE", org.jooq.util.sybase.sys.Sys.SYS); + } + + /** + * No further instances allowed + */ + private Syssequence(java.lang.String alias) { + super(alias, org.jooq.util.sybase.sys.Sys.SYS, org.jooq.util.sybase.sys.tables.Syssequence.SYSSEQUENCE); + } + + @Override + public org.jooq.util.sybase.sys.tables.Syssequence as(java.lang.String alias) { + return new org.jooq.util.sybase.sys.tables.Syssequence(alias); + } +} diff --git a/jOOQ-meta/src/main/java/org/jooq/util/sybase/sys/tables/Systab.java b/jOOQ-meta/src/main/java/org/jooq/util/sybase/sys/tables/Systab.java new file mode 100644 index 00000000000..41668676eff --- /dev/null +++ b/jOOQ-meta/src/main/java/org/jooq/util/sybase/sys/tables/Systab.java @@ -0,0 +1,161 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.util.sybase.sys.tables; + +/** + * This class is generated by jOOQ. + */ +@javax.annotation.Generated(value = {"http://www.jooq.org", "2.0.6"}, + comments = "This class is generated by jOOQ") +public class Systab extends org.jooq.impl.TableImpl { + + private static final long serialVersionUID = 1581887505; + + /** + * The singleton instance of sys.SYSTAB + */ + public static final org.jooq.util.sybase.sys.tables.Systab SYSTAB = new org.jooq.util.sybase.sys.tables.Systab(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.Record.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + */ + public final org.jooq.TableField TABLE_ID = createField("table_id", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField DBSPACE_ID = createField("dbspace_id", org.jooq.impl.SQLDataType.SMALLINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField COUNT = createField("count", org.jooq.impl.SQLDataType.BIGINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField CREATOR = createField("creator", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField TABLE_PAGE_COUNT = createField("table_page_count", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField EXT_PAGE_COUNT = createField("ext_page_count", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField COMMIT_ACTION = createField("commit_action", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField SHARE_TYPE = createField("share_type", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField OBJECT_ID = createField("object_id", org.jooq.impl.SQLDataType.BIGINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField LAST_MODIFIED_AT = createField("last_modified_at", org.jooq.impl.SQLDataType.TIMESTAMP, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField TABLE_NAME = createField("table_name", org.jooq.impl.SQLDataType.CHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField TABLE_TYPE = createField("table_type", org.jooq.impl.SQLDataType.TINYINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField REPLICATE = createField("replicate", org.jooq.impl.SQLDataType.CHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField SERVER_TYPE = createField("server_type", org.jooq.impl.SQLDataType.TINYINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField TAB_PAGE_LIST = createField("tab_page_list", org.jooq.impl.SQLDataType.LONGVARBINARY, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField EXT_PAGE_LIST = createField("ext_page_list", org.jooq.impl.SQLDataType.LONGVARBINARY, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField PCT_FREE = createField("pct_free", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField CLUSTERED_INDEX_ID = createField("clustered_index_id", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField ENCRYPTED = createField("encrypted", org.jooq.impl.SQLDataType.CHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField LAST_MODIFIED_TSN = createField("last_modified_tsn", org.jooq.impl.SQLDataType.BIGINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField FILE_ID = createField("file_id", org.jooq.impl.SQLDataType.SMALLINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField TABLE_TYPE_STR = createField("table_type_str", org.jooq.impl.SQLDataType.CHAR, this); + + /** + * No further instances allowed + */ + private Systab() { + super("SYSTAB", org.jooq.util.sybase.sys.Sys.SYS); + } + + /** + * No further instances allowed + */ + private Systab(java.lang.String alias) { + super(alias, org.jooq.util.sybase.sys.Sys.SYS, org.jooq.util.sybase.sys.tables.Systab.SYSTAB); + } + + @Override + public org.jooq.util.sybase.sys.tables.Systab as(java.lang.String alias) { + return new org.jooq.util.sybase.sys.tables.Systab(alias); + } +} diff --git a/jOOQ-meta/src/main/java/org/jooq/util/sybase/sys/tables/Systabcol.java b/jOOQ-meta/src/main/java/org/jooq/util/sybase/sys/tables/Systabcol.java new file mode 100644 index 00000000000..be02ccc9515 --- /dev/null +++ b/jOOQ-meta/src/main/java/org/jooq/util/sybase/sys/tables/Systabcol.java @@ -0,0 +1,141 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.util.sybase.sys.tables; + +/** + * This class is generated by jOOQ. + */ +@javax.annotation.Generated(value = {"http://www.jooq.org", "2.0.6"}, + comments = "This class is generated by jOOQ") +public class Systabcol extends org.jooq.impl.TableImpl { + + private static final long serialVersionUID = -481237229; + + /** + * The singleton instance of sys.SYSTABCOL + */ + public static final org.jooq.util.sybase.sys.tables.Systabcol SYSTABCOL = new org.jooq.util.sybase.sys.tables.Systabcol(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.Record.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + */ + public final org.jooq.TableField TABLE_ID = createField("table_id", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField COLUMN_ID = createField("column_id", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField DOMAIN_ID = createField("domain_id", org.jooq.impl.SQLDataType.SMALLINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField NULLS = createField("nulls", org.jooq.impl.SQLDataType.CHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField WIDTH = createField("width", org.jooq.impl.SQLDataType.BIGINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField SCALE = createField("scale", org.jooq.impl.SQLDataType.SMALLINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField OBJECT_ID = createField("object_id", org.jooq.impl.SQLDataType.BIGINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField MAX_IDENTITY = createField("max_identity", org.jooq.impl.SQLDataType.BIGINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField COLUMN_NAME = createField("column_name", org.jooq.impl.SQLDataType.CHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField DEFAULT = createField("default", org.jooq.impl.SQLDataType.LONGVARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField USER_TYPE = createField("user_type", org.jooq.impl.SQLDataType.SMALLINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField COLUMN_TYPE = createField("column_type", org.jooq.impl.SQLDataType.CHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField COMPRESSED = createField("compressed", org.jooq.impl.SQLDataType.TINYINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField COLLECT_STATS = createField("collect_stats", org.jooq.impl.SQLDataType.TINYINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField INLINE_MAX = createField("inline_max", org.jooq.impl.SQLDataType.SMALLINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField INLINE_LONG = createField("inline_long", org.jooq.impl.SQLDataType.SMALLINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField LOB_INDEX = createField("lob_index", org.jooq.impl.SQLDataType.TINYINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField BASE_TYPE_STR = createField("base_type_str", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * No further instances allowed + */ + private Systabcol() { + super("SYSTABCOL", org.jooq.util.sybase.sys.Sys.SYS); + } + + /** + * No further instances allowed + */ + private Systabcol(java.lang.String alias) { + super(alias, org.jooq.util.sybase.sys.Sys.SYS, org.jooq.util.sybase.sys.tables.Systabcol.SYSTABCOL); + } + + @Override + public org.jooq.util.sybase.sys.tables.Systabcol as(java.lang.String alias) { + return new org.jooq.util.sybase.sys.tables.Systabcol(alias); + } +} diff --git a/jOOQ-meta/src/main/java/org/jooq/util/sybase/sys/tables/Systable.java b/jOOQ-meta/src/main/java/org/jooq/util/sybase/sys/tables/Systable.java new file mode 100644 index 00000000000..d03f3a9c11b --- /dev/null +++ b/jOOQ-meta/src/main/java/org/jooq/util/sybase/sys/tables/Systable.java @@ -0,0 +1,181 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.util.sybase.sys.tables; + +/** + * This class is generated by jOOQ. + */ +@javax.annotation.Generated(value = {"http://www.jooq.org", "2.0.6"}, + comments = "This class is generated by jOOQ") +public class Systable extends org.jooq.impl.TableImpl { + + private static final long serialVersionUID = -724081457; + + /** + * The singleton instance of sys.SYSTABLE + */ + public static final org.jooq.util.sybase.sys.tables.Systable SYSTABLE = new org.jooq.util.sybase.sys.tables.Systable(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.Record.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + */ + public final org.jooq.TableField TABLE_ID = createField("table_id", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField FILE_ID = createField("file_id", org.jooq.impl.SQLDataType.SMALLINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField COUNT = createField("count", org.jooq.impl.SQLDataType.BIGINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField FIRST_PAGE = createField("first_page", org.jooq.impl.SQLDataType.SMALLINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField LAST_PAGE = createField("last_page", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField PRIMARY_ROOT = createField("primary_root", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField CREATOR = createField("creator", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField FIRST_EXT_PAGE = createField("first_ext_page", org.jooq.impl.SQLDataType.SMALLINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField LAST_EXT_PAGE = createField("last_ext_page", org.jooq.impl.SQLDataType.SMALLINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField TABLE_PAGE_COUNT = createField("table_page_count", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField EXT_PAGE_COUNT = createField("ext_page_count", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField OBJECT_ID = createField("object_id", org.jooq.impl.SQLDataType.BIGINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField TABLE_NAME = createField("table_name", org.jooq.impl.SQLDataType.CHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField TABLE_TYPE = createField("table_type", org.jooq.impl.SQLDataType.CHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField VIEW_DEF = createField("view_def", org.jooq.impl.SQLDataType.LONGVARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField REMARKS = createField("remarks", org.jooq.impl.SQLDataType.LONGVARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField REPLICATE = createField("replicate", org.jooq.impl.SQLDataType.CHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField EXISTING_OBJ = createField("existing_obj", org.jooq.impl.SQLDataType.CHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField REMOTE_LOCATION = createField("remote_location", org.jooq.impl.SQLDataType.LONGVARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField REMOTE_OBJTYPE = createField("remote_objtype", org.jooq.impl.SQLDataType.CHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField SRVID = createField("srvid", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField SERVER_TYPE = createField("server_type", org.jooq.impl.SQLDataType.CHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField PRIMARY_HASH_LIMIT = createField("primary_hash_limit", org.jooq.impl.SQLDataType.SMALLINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField PAGE_MAP_START = createField("page_map_start", org.jooq.impl.SQLDataType.SMALLINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField SOURCE = createField("source", org.jooq.impl.SQLDataType.LONGVARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField ENCRYPTED = createField("encrypted", org.jooq.impl.SQLDataType.CHAR, this); + + /** + * No further instances allowed + */ + private Systable() { + super("SYSTABLE", org.jooq.util.sybase.sys.Sys.SYS); + } + + /** + * No further instances allowed + */ + private Systable(java.lang.String alias) { + super(alias, org.jooq.util.sybase.sys.Sys.SYS, org.jooq.util.sybase.sys.tables.Systable.SYSTABLE); + } + + @Override + public org.jooq.util.sybase.sys.tables.Systable as(java.lang.String alias) { + return new org.jooq.util.sybase.sys.tables.Systable(alias); + } +} diff --git a/jOOQ-meta/src/main/java/org/jooq/util/sybase/sys/tables/Sysview.java b/jOOQ-meta/src/main/java/org/jooq/util/sybase/sys/tables/Sysview.java new file mode 100644 index 00000000000..9caeb57abbb --- /dev/null +++ b/jOOQ-meta/src/main/java/org/jooq/util/sybase/sys/tables/Sysview.java @@ -0,0 +1,91 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.util.sybase.sys.tables; + +/** + * This class is generated by jOOQ. + */ +@javax.annotation.Generated(value = {"http://www.jooq.org", "2.0.6"}, + comments = "This class is generated by jOOQ") +public class Sysview extends org.jooq.impl.TableImpl { + + private static final long serialVersionUID = -967800213; + + /** + * The singleton instance of sys.SYSVIEW + */ + public static final org.jooq.util.sybase.sys.tables.Sysview SYSVIEW = new org.jooq.util.sybase.sys.tables.Sysview(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.Record.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + */ + public final org.jooq.TableField VIEW_OBJECT_ID = createField("view_object_id", org.jooq.impl.SQLDataType.BIGINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField VIEW_DEF = createField("view_def", org.jooq.impl.SQLDataType.LONGVARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField MV_BUILD_TYPE = createField("mv_build_type", org.jooq.impl.SQLDataType.TINYINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField MV_REFRESH_TYPE = createField("mv_refresh_type", org.jooq.impl.SQLDataType.TINYINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField MV_USE_IN_OPTIMIZATION = createField("mv_use_in_optimization", org.jooq.impl.SQLDataType.TINYINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField MV_LAST_REFRESHED_AT = createField("mv_last_refreshed_at", org.jooq.impl.SQLDataType.TIMESTAMP, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField MV_KNOWN_STALE_AT = createField("mv_known_stale_at", org.jooq.impl.SQLDataType.TIMESTAMP, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField MV_LAST_REFRESHED_TSN = createField("mv_last_refreshed_tsn", org.jooq.impl.SQLDataType.BIGINT, this); + + /** + * No further instances allowed + */ + private Sysview() { + super("SYSVIEW", org.jooq.util.sybase.sys.Sys.SYS); + } + + /** + * No further instances allowed + */ + private Sysview(java.lang.String alias) { + super(alias, org.jooq.util.sybase.sys.Sys.SYS, org.jooq.util.sybase.sys.tables.Sysview.SYSVIEW); + } + + @Override + public org.jooq.util.sybase.sys.tables.Sysview as(java.lang.String alias) { + return new org.jooq.util.sybase.sys.tables.Sysview(alias); + } +} diff --git a/jOOQ-meta/src/main/resources/META-INF/LICENSE.txt b/jOOQ-meta/src/main/resources/META-INF/LICENSE.txt new file mode 100644 index 00000000000..fd12d44afa0 --- /dev/null +++ b/jOOQ-meta/src/main/resources/META-INF/LICENSE.txt @@ -0,0 +1,33 @@ + Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com + All rights reserved. + + This software is licensed to you under the Apache License, Version 2.0 + (the "License"); You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + 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 "jOOQ" 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 COPYRIGHT OWNER 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. \ No newline at end of file diff --git a/jOOQ-meta/src/main/resources/META-INF/README.txt b/jOOQ-meta/src/main/resources/META-INF/README.txt new file mode 100644 index 00000000000..3e6e227e05b --- /dev/null +++ b/jOOQ-meta/src/main/resources/META-INF/README.txt @@ -0,0 +1,2 @@ +Thanks for downloading jOOQ. +Please visit http://www.jooq.org for more information. \ No newline at end of file diff --git a/jOOQ-meta/src/main/resources/xsd/jooq-codegen-2.0.4.xsd b/jOOQ-meta/src/main/resources/xsd/jooq-codegen-2.0.4.xsd new file mode 100644 index 00000000000..ba97a53670b --- /dev/null +++ b/jOOQ-meta/src/main/resources/xsd/jooq-codegen-2.0.4.xsd @@ -0,0 +1,313 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/jOOQ-meta/src/main/resources/xsd/jooq-codegen-2.1.0.xsd b/jOOQ-meta/src/main/resources/xsd/jooq-codegen-2.1.0.xsd new file mode 100644 index 00000000000..4363c8708b7 --- /dev/null +++ b/jOOQ-meta/src/main/resources/xsd/jooq-codegen-2.1.0.xsd @@ -0,0 +1,362 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/jOOQ-release/.project b/jOOQ-release/.project new file mode 100644 index 00000000000..6cb73d57e30 --- /dev/null +++ b/jOOQ-release/.project @@ -0,0 +1,11 @@ + + + jOOQ-release + + + + + + + + diff --git a/jOOQ-release/authors.txt b/jOOQ-release/authors.txt new file mode 100644 index 00000000000..be74b5780d2 --- /dev/null +++ b/jOOQ-release/authors.txt @@ -0,0 +1,2 @@ +lukaseder = Lukas Eder +chrriis = Chrriis \ No newline at end of file diff --git a/jOOQ-release/build.xml b/jOOQ-release/build.xml new file mode 100644 index 00000000000..23982601eff --- /dev/null +++ b/jOOQ-release/build.xml @@ -0,0 +1,79 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/jOOQ-release/release/template/LICENSE.txt b/jOOQ-release/release/template/LICENSE.txt new file mode 100644 index 00000000000..14ab85a6b7d --- /dev/null +++ b/jOOQ-release/release/template/LICENSE.txt @@ -0,0 +1,33 @@ +Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com +All rights reserved. + +This software is licensed to you under the Apache License, Version 2.0 +(the "License"); You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +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 "jOOQ" 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 COPYRIGHT OWNER 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. \ No newline at end of file diff --git a/jOOQ-release/release/template/README.txt b/jOOQ-release/release/template/README.txt new file mode 100644 index 00000000000..3e6e227e05b --- /dev/null +++ b/jOOQ-release/release/template/README.txt @@ -0,0 +1,2 @@ +Thanks for downloading jOOQ. +Please visit http://www.jooq.org for more information. \ No newline at end of file diff --git a/jOOQ-release/release/template/RELEASENOTES.txt b/jOOQ-release/release/template/RELEASENOTES.txt new file mode 100644 index 00000000000..25114da7b4d --- /dev/null +++ b/jOOQ-release/release/template/RELEASENOTES.txt @@ -0,0 +1,2451 @@ +jOOQ Release notes +================== +For an interactive overview, see also +https://sourceforge.net/apps/trac/jooq/report/6 + +For a formatted text version, see +http://www.jooq.org/notes.php + +For a text version, see +http://www.jooq.org/inc/RELEASENOTES.txt + +Version 2.2.0 - April 09, 2012 +================================================================= + +Finally, jOOQ has added support for another database, and a very +promising one, that is. http://www.cubrid.org is a surprisingly +original mixture of a relational and object-oriented database +where tables and classes are synonyms, so are records and +instances. The CUBRID database has a high level of compatibility +with MySQL and is aimed at MySQL users wanting more performance +for their web applications. For details, see the slides here: + +http://www.slideshare.net/cubrid/growing-in-the-wild-the-story-by-cubrid-database-developers + +jOOQ is proud to have become a CUBRID partner, looking forward +to further cooperation with CUBRID in the near future. + +Apart from that, jOOQ now fully supports SQL standard INTERVAL +data types. With JDBC and JPA lacking official support for this, +jOOQ aims for becoming the tool of choice for vendor-specific +date time arithmetic. True INTERVAL data type support is given in +HSQLDB, Ingres, Oracle, Postgres databases. Besides that, CUBRID +and MySQL support INTERVAL data type arguments in functions. In +other dialects, jOOQ simulates DATEADD(), TIMESTAMPADD(), +DATEDIFF(), TIMESTAMPDIFF(). + +For jOOQ's OLAP friends, there is now also support for the Oracle +LISTAGG function (LIST() in Sybase, XMLAGG() in DB2, STRING_AGG() +in Postgres, GROUP_CONCAT() in CUBRID, H2, HSQLDB, MySQL). +LISTAGG is an "ordered aggregate function", meaning that the +aggregation is done using a specific ordering. Keep an eye out +for more such function support in future versions. + +Features and improvements +------------------------- +#566 - Add support for INTERVAL data types +#585 - Add support for DATE, TIME and INTERVAL arithmetic +#1183 - Add support for DEFAULT values in Oracle stored procedure + parameters +#1243 - Let generated POJOs (and Records) extend base classes + and implement interfaces +#1252 - Avoid JDBC escape syntax for Oracle stored procedure + calls. Generate PL/SQL syntax, instead +#1255 - Let generated Tables contain a public default constructor + to be able to extend those classes - Github issue #12 +#1257 - Add CUBRID support +#1268 - Add Factory.field(String, QueryPart...) to generate + custom clauses +#1269 - Add YEAR(), MONTH(), DAY(), HOUR(), MINUTE(), SECOND() + function support as shortcuts for EXTRACT() +#1273 - Simulate GROUP_CONCAT() aggregate function using Oracle's + LISTAGG() function, where available +#1274 - Add support for the Oracle LISTAGG(...) WITHIN GROUP + (ORDER BY ..) [ OVER (..) ] aggregate / analytic function +#1275 - Simulate Sybase LIST() aggregate function using Oracle's + LISTAGG() function +#1276 - Simulate Oracle's LISTAGG() in DB2 using XMLAGG(), + SUBSTR() and CONCAT() +#1278 - DEBUG log both executed SQL and SQL with inlined bind + values + +API changes (backwards-compatible) +---------------------------------- +#1262 - Pull up OracleFactory.prior() and other CONNECT BY + related methods to Factory + +Bug fixes +--------- +#1241 - Wrong variable binding when comparing CHAR columns in + Derby and DB2 without explicit casting to VARCHAR +#1244 - Cannot override class name in GeneratorStrategy in + Mode.POJO +#1248 - Setting both false and + true leads to compilation errors +#1256 - Fixed code generation issue with H2 user defined + functions returning VARCHAR +#1263 - Pass fetchsizes <= 0 to the JDBC driver (for vendor- + specific MySQL compatibility) +#1270 - Most databases allow for multiple identical foreign keys. + This leads to compilation errors in generated source code + +Version 2.1.0 - March 18, 2012 +================================================================= + +With this version, jOOQ attempts to follow versioning rules +imposed by semantic versioning: http://semver.org/ +There will be 1 minor release per month, and a couple of patch +releases per year, depending on popular demand + +The main improvements for this release include + +- The possibility of providing jOOQ with a custom type mapping. + You can now define your own Converter types that are used by + jOOQ to map a database's SQLDataTypes to your custom types. + This is particularly useful for Java's enums. Read more about + custom converters in the manual: + http://www.jooq.org/manual/ADVANCED/CustomTypes/ + +- There are a lot of new runtime configuration options to control + the SQL style of SQL rendered by jOOQ. You can now specify + whether table/column names should be quoted / capitalised / + lower-cased, whether SQL keywords should be capitalised or not, + etc... + +- The handling of NULL has been improved in favour of using jOOQ + as a SQL builder library (e.g. along with Spring for execution) + NULL is no longer inlined, but bound as a variable. + +- jOOQ now supports simulation of the relational division + operation using an intuitive syntax. Read more about the + relational division here: + http://en.wikipedia.org/wiki/Relational_algebra#Division + +Features and improvements +------------------------- +#161 - Add runtime configuration to pretty print rendered SQL +#349 - Add SQLite relations support +#491 - Add runtime configuration for SQL keyword style (upper + case, lower case) +#521 - Add runtime configuration for SQL reference style (upper + case, lower case, as-is, quoted) +#1150 - Add code generation option to disable generation of + records +#1181 - Add support for SQL Server data types timestamp and + rowversion +#1188 - Load default Settings from the classpath at + /jooq-settings.xml, or from -Dorg.jooq.settings +#1193 - Specify main-class in jOOQ Console's manifest.mf and + include dependency in jar file +#1194 - Add ColumnDefinition.isNullable() +#1202 - Add support for the relational division operation: + A.divideBy(B).on(A.ID.equal(B.A_ID)).returning(A.X, ...) +#1207 - Add Factory.batch(Collection) for + convenience +#1208 - Render @javax.persistence.Column(nullable = false) + property, if available +#1209 - Render @javax.persistence.Column(length, precision, + scale) properties, if available +#1215 - Add org.jooq.Converter for custom type mapping +#1216 - Overload Record, Result.getValue() and .setValue() + methods to accept a Converter +#1217 - Add EnumConverter as a base type for custom enum + converters +#1218 - Add code generation options to generate + referencing a Java type and a Converter +#1224 - Add DataTypeDefinition.getLength() to jooq-meta's type + system +#1233 - Support custom JDBC properties for jooq-codegen +#1234 - Add Database.getTable(SchemaDefinition, String, boolean) + to fetch tables case-insensitively +#1239 - Add Factory.fetchLazy(String, Object...) + +API changes (backwards-compatible) +---------------------------------- +#1191 - Deprecate ConfigurationRegistry and replace by equivalent + ExecuteListener feature +#1219 - API Bug: Cannot use LIMIT .. OFFSET along with FOR UPDATE + +Bug fixes +--------- +#625 - Remove dependency from generated Routines to the + generator's SQLDialect +#1128 - NULL is inlined in INSERT statement instead of binding it + as a variable. This can cause issues when using jOOQ with + Spring +#1137 - Exclude MySQL column-level enum types when that column is + overridden by a +#1158 - Derby cannot handle inlined NULL literals in some + contexts +#1180 - Execute BatchMultiple (multi-query batch query), when + executing BatchSimple (single-query, multi-bind-value + query) with StatementType == STATIC_STATEMENT +#1189 - TableMapping regression for SQLite database +#1190 - Cannot store SQLite records when using + StatementType.STATIC_STATEMENT +#1199 - Table.getFields() returns an internal representation of a + table's field list. Make generated tables immutable! +#1200 - Internal API leak exposed through covariance in + AbstractType.getFields() +#1211 - Enforce method name disambiguation also when using custom + strategies in jooq-codegen +#1212 - Enforce identifier disambiguation also when using custom + strategies in jooq-codegen +#1221 - Incorrect ExecuteListener invocation for INSERT .. + RETURNING. executeStart() and executeEnd() are omitted +#1223 - Cache ExecuteListener classes for performance +#1225 - Bind NULL byte[] as java.sql.Types.BINARY instead of + BLOB in Postgres, to avoid errors +#1226 - Bind NULL UDTs with their associated type name in Oracle +#1232 - SQLException when Factory.fetch() does not return a + ResultSet +#1237 - Don't generate enum classes for columns in MySQL tables + that are excluded from code generation + +Version 2.0.5 - February 26, 2012 +================================================================= + +This release finally introduced basic runtime configuration +features for the jOOQ Factory. This configuration now includes: + +- Execute listener and SQL tracing support. jOOQ allows you to + hook your own listeners into jOOQ's query execution engine to + be notified of all sorts of events +- The existing SchemaMapping features. They are now part of the + runtime configuration +- StatementType settings. Specify whether a Factory should + execute java.sql.PreparedStatements (with bind variables) or + static java.sql.Statements with inlined variables. + +The runtime configuration is documented here: + +http://www.jooq.org/manual/JOOQ/Factory/ + +The listener and tracing support has been requested by +Christopher Deckers, a new jOOQ user who has had the courtesy to +contribute the new jOOQ Console, which is documented here: + +http://www.jooq.org/manual/ADVANCED/ExecuteListener/ + +Apart from that, another long-requested feature is now fully +implemented: The GeneratorStrategy, allowing for custom naming +strategies in generated source code. This will allow for +generating custom table / record class name prefixes / suffixes, +as well as overriding the default behaviour for rendering UPPER, +lower and CamelCase artefacts. See the manual for details: + +http://www.jooq.org/manual/META/Configuration/ + +Features and improvements +------------------------- +#93 - Add Field.equalIgnoreCase(), Field.notEqualIgnoreCase() +#408 - Add class prefixes, suffixes and other options to the + code generator +#492 - Add runtime configuration +#1107 - Let Field.contains() support the Postgres ARRAY @> ARRAY + operator +#1140 - Add ResultQuery.fetchResultSet() to return the underlying + JDBC result set +#1143 - Add Result.isNotEmpty() for convenience +#1145 - Add runtime configuration to specify whether jOOQ should + execute java.sql.PreparedStatement (with bind variables) + or a java.sql.Statement (with inlined parameters) +#1146 - Add Query.getSQL(boolean) to indicate that bind values + should be inlined (as a convenience for + Factory.renderInlined(QueryPart)) +#1148 - Add Cursor.resultSet() to expose the underlying ResultSet +#1149 - Allow for optional + "http://www.jooq.org/xsd/jooq-codegen-2.0.4.xsd" + namespace in jooq-codegen configuration +#1152 - Add & org.jooq.EnumType> + E MySQLFactory.enumType(Class, int) for enum reverse + lookups of MySQL-specific enums +#1159 - Support matching numbers with LIKE, e.g. ID LIKE '%33%' +#1160 - Implement Field.contains(), .startsWith(), .endsWith() + for numeric values, too +#1161 - Use reflection to remove compile-time dependency on + ojdbc for creating ARRAYs +#1162 - Integrate jOOR into jOOQ for simpler reflection +#1164 - Distinguish between Definition.getInputName(), + .getOutputName() +#1165 - Add constraint name to generated javadoc +#1167 - Trivial issue with org.jooq.Factory.exists Javadoc - + GitHub issue #10 +#1169 - Add Configuration.setData(), getData() to convey custom + data in a configuration's lifecycle +#1172 - Add runtime configuration to deactivate JooqLogger +#1177 - Add jOOQ-Console module to jOOQ +#1184 - Add DataType.isArray() + +API changes (backwards-compatible) +---------------------------------- +#1142 - Rename Result.exportXML() to Result.intoXML() to stay + more consistent +#1151 - Deprecate SchemaMapping in favour of new runtime + configuration + +Bug fixes +--------- +#978 - Schema.getTables() and similar methods return empty lists + when Schema is mapped with SchemaMapping +#1153 - Bad inlining of booleans in Sybase ASE / DB2 / Oracle + SQL Server / SQLite +#1154 - Bad inlining of byte[] in most dialects +#1155 - byte[] are erroneously converted to String when using + Record.intoArray() +#1156 - Bad inlining of DATE / TIME / TIMESTAMP data types in + Ingres (and other dialects, when the setting differs from + the default) +#1166 - Some generated Javadoc uses naming strategy or plain + output name, instead of qualified output name +#1168 - Oracle packages are generated as static, instead of + static final +#1175 - Factory.use() seems to render SQL with the Schema name + still present +#1179 - Oracle-generated ArrayRecords need a reference to + org.jooq.Schema to read TABLE of OBJECT from stored + procedures + +Test cases +---------- +#1147 - Add integration tests for executing SQL generated using + Factory.renderInlined() + +Version 2.0.4 - February 12, 2012 +================================================================= + +This release introduced many improvements to source code +generation. These improvements include: + +- Maven and standalone code generation now use the same XML + configuration, which is read by jOOQ-codegen using JAXB. This + allows for more complex configuration elements in the future +- jOOQ-codegen can now handle multi-schema databases and generate + code for tables referencing tables from other schemata. This + is integration tested against the SQL Server AdventureWorks + database +- jOOQ now allows to generate simple POJOs in addition to Records + and to annotate both POJOs and Records with JPA annotations + such as @Entity, @Table, @Id, @Column, @UniqueConstraint, etc. + +You can migrate your existing .properties configuration by running +> org.jooq.util.GenerationTool /your.properties migrate + +Besides that, there is a lot of ongoing work to improve the +integration of Oracle's TABLE and VARRAY types. + +Features and improvements +------------------------- +#8 - Add JPA annotations to generated POJOs / Records +#282 - Add support for multi-schema databases +#287 - Add support for Oracle TABLE types +#395 - Use XML configuration file instead of properties file +#1089 - Add Field.contains(), .startsWith(), .endsWith() as a + convenience for Field.like() (including escaping) +#1092 - Move master data table configuration from + generator.generate to generator.database namespace +#1093 - Add support for generator.strategy in Maven source code + generation +#1094 - Add support for generator.database.date-as-timestamp in + Maven source code generation +#1095 - Move generator.generate.unsigned-types to + generator.database namespace +#1096 - Add support for generator.generate.unsigned-types in + Maven source code generation +#1103 - Add support for SQL Server data type uniqueidentifier +#1106 - Add Factory.escape(Field, char) for use with LIKE +#1108 - Add support for multi-schema databases using Maven code + generation +#1115 - Add support for Oracle VARRAY/TABLE of OBJECT types +#1127 - Add support for POJO classes generation +#1129 - Allow for using Param in LIMIT .. OFFSET clauses +#1132 - Add RenderContext.castMode() to allow for avoiding casts + where this is not really needed +#1136 - Add generation option to enable/disable generating + navigation methods + +Bug fixes +--------- +#1099 - Derby generated artefacts are not sorted alphabetically +#1101 - Internal API leak exposed through covariance in + AbstractTable.joinXXX() methods +#1110 - VARRAY element type information is lost when unnesting + VARRAY's in Oracle +#1111 - VARRAY element type information is lost when unnesting + VARRAY's returned from functions in Oracle +#1114 - Syntax error when unnesting TABLE of OBJECT in Oracle. + The unnested table contains several columns but jOOQ only + unnests "COLUMN_VALUE" +#1117 - NullPointerException when passing an ArrayRecord + containing a null array to a stored function in Oracle +#1125 - Postgres needs casting for date time data types in + queries like SELECT ? FROM DUAL +#1131 - DB2: [Noauthorized routine named "LIKE" of type + "FUNCTION" having compatible arguments was found] when + using Field.like(concat(x, y)) +#1133 - Compilation errors in generated source code if the same + constraint name exists in several schemata +#1134 - NullPointerException in code generation when a foreign + key constraint references a table from another schema + that is not being generated +#1135 - Generated Javadoc references inputSchema instead of + outputSchema + +Test cases +---------- +#1009 - Add more integration tests for proper handling of + java.sql.Date, Time, Timestamp +#1090 - Run jOOQ tests against AdventureWorks SQL Server sample + database +#1105 - Add integration tests for multi-schema source code + generation and querying +#1122 - The 10k lines of integration test code are too heavy for + the compiler. Create test modules with fewer lines of + code, each. + +Version 2.0.3 - January 29, 2012 +================================================================= + +This release focuses on increased compatibility between various +SQL dialect integrations as far as ARRAY and JOIN support is +concerned: + +- ARRAY types are only available in H2, HSQLDB, Oracle, Postgres. + Nevertheless, they can be somewhat simulated in other dialects + using nested selects with UNION ALL. Increased compatibility + leads to a nicer API, where ARRAYs are used along with ALL/ANY + quantifiers, for instance. + +- JOIN syntaxes can be quite powerful in SQL. Apart from + simulating NATURAL JOIN, JOIN USING clauses, as well as a + synthetic "KEY JOIN" syntax, jOOQ now also supports nesting + JOIN expressions to create more complex table sources. See a + recent blog post on the subject here: + +http://lukaseder.wordpress.com/2012/01/15/lets-revise-the-sql-from-clause/ + +Features and improvements +------------------------- +#578 - Add KEY JOIN syntax to simulate joining using generated + foreign keys +#577 - Simulate NATURAL JOIN syntax, where this is unavailable +#582 - Simulate JOIN USING syntax, where this is unavailable +#671 - Allow for nesting JOIN clauses +#676 - Add Table.join() methods to create more flexible table + sources +#993 - Add Field.equalAny(T[]), .equalAny(Field) methods +#1048 - Simulate (array) syntax for dialects + that do not support arrays +#1051 - Add Factory.execute(String, Object...) as a convenience + method for Factory.query(...).execute() +#1055 - Simulate Factory.table(Object[]) and table(List) using + UNION ALL in dialects that do not support arrays +#1060 - Improve debug logging of H2 arrays. The syntax is not + ARRAY[1, 2], but (1, 2) +#1065 - Add OracleFactory.sysContext(String, String) to support + Oracle's SYS_CONTEXT function +#1069 - Add support for INSERT INTO table(field1, field2, ...) + SELECT syntax - as opposed to the existing INSERT INTO + table SELECT +#1072 - Add support for LIKE .. ESCAPE .. syntax +#1074 - Add Field.notBetween(T, T) for convenience +#1080 - Add support for JDBC's Statement.setFetchSize() in + ResultQuery.fetchLazy() +#1082 - Add some more DEBUG logging in AbstractResultQuery + +API changes (backwards-compatible) +---------------------------------- +#1059 - Change SelectFromStep.from(Collection>) to + from(Collection>) + +API changes (backwards-incompatible) +------------------------------------ +#1087 - Change the NTILE function to return Field + instead of Field + +Bug fixes +--------- +#1071 - Make Sequence Serializable +#1081 - Derby error in NULL handling when simulating unnested + arrays that contain NULL values +#1084 - Bind index mismatch in val(null).equal(null) and in + val(null).notEqual(null) +#1091 - Add missing @Support annotations on Table.crossJoin() + methods + +Test cases +---------- +#1026 - Add integration tests for NTILE window function and + document compatibility +#1073 - Add integration tests for NOT IN queries holding NULL + arguments + +Version 2.0.2 - January 8, 2012 +================================================================= + +This is a maintenance release for jOOQ 2.0. The main improvements +include + +- The whole jOOQ API is now annotated with a new org.jooq.Support + annotation to help you assess whether a certain SQL clause is + available in your database or not. This is particularly useful + when your application should support several databases at once + (e.g. MySQL, Postgres, Oracle) +- The Oracle PIVOT clause is now formally supported for advanced + statistical queries in Oracle. This clause will be simulated in + other dialects in the future. +- The DATE data type can be mapped to TIMESTAMP. This important + when you query a legacy Oracle database, where DATE columns + can also contain time information +- Several convenience methods have been added for more fluent + syntax, when using plain SQL result queries, subqueries as + tables, or when unnesting arrays in ANY() and ALL() quantifiers + +Further type mapping support is still experimental. An official +cooperation with MinuteProject for source code generation is +being analysed. With MinuteProject, many source code generation +issues could be addressed centrally, as MinuteProject specialises +in source code generation: + +http://minuteproject.wikispaces.com/ + +Features and improvements +------------------------- +#595 - Add support for Oracle's PIVOT clause +#869 - Add support for using ANY, ALL with arrays, not just with + subselects +#1007 - Formally document the API methods to indicate whether + something is supported by any given SQL dialect +#1011 - Add code generation configuration parameter to avoid + generating @Generated annotation +#1019 - Render LIMIT x OFFSET y also for MySQL, instead of + LIMIT y, x +#1022 - Add missing Sybase ASE implementation for Factory.use() +#1024 - Add Factory.resultQuery(String, Object...) to allow for + arbitrary execution modes of plain SQL queries (lazy, + later, into, array, etc) +#1025 - Add missing SQLite implementation for Factory.deg() and + Factory.rad() +#1033 - Generate table comments into generated Tables.java as + Javadoc +#1040 - Add Object[][] Result.intoArray() and + Object[] Record.intoArray() for convenience. Let + E Record.into(Class) also support array types. +#1041 - Add Table Factory.table(Select) convenience + method for more fluency +#1042 - Add support for DISTINCT keyword in SUM, AVG, MIN, MAX + aggregate functions +#1046 - Generate Ingres table and column comments in generated + source code (only Ingres 10) + +API changes (backwards-compatible) +---------------------------------- +#1050 - Deprecate usage of SOME quantifier in predicates, such as + equalSome() + +API changes (backwards-incompatible) +------------------------------------ +#1036 - Fixed API typo in + WindowsRowsStep.rowsBetweenUnboundedFollwing() +#1037 - The fluent API allows for JOIN clauses without FROM + clause + +Bug fixes +--------- +#1010 - The MERGE INTO .. WHEN NOT MATCHED THEN INSERT .. syntax + may cause type-safety issues in some databases. VALUES + should be converted before binding +#1014 - FindBugs: Latent risk of infinite recursion due to typo + in QueryPartList.retainAll(); +#1015 - FindBugs: 7 occurrences of "Bad attempt to compute + absolute value of signed 32-bit hashcode". In extreme + cases, this could lead to SQL syntax errors +#1016 - The Oracle CONNECT BY cond1 AND cond2 syntax erroneously + creates a WHERE cond2 CONNECT BY cond1 statement +#1028 - Syntax errors when using untyped param() in HSQLDB (and + other strongly typed dialects) +#1029 - Postgres can't bind NULL values in cases, where bind type + is Object.class and bind value was created with + Factory.param() +#1030 - UnsupportedOperationException when calling + Query.bind(int, Object) on a query containing plain SQL + fields +#1031 - Incorrect debug logging when plain SQL QueryParts like + field("?") bind null values +#1032 - Incorrect debug logging when plain SQL QueryParts contain + String literals, such as 'Hello? Anyobody out there?' +#1047 - Field.notEqualAny() erroneously renders <> ALL() + +Test cases +---------- +#1021 - Add explicit integration tests for + LEFT|RIGHT|FULL OUTER JOIN + +Version 2.0.1 - December 23, 2011 +================================================================= + +This is a maintenance release for jOOQ 2.0. The main improvements +include + +- Better integration for using jOOQ with Spring Data. This + includes support for named parameters, as well as allowing to + change bind values on previously constructed Query objects +- The MERGE statement has been enhanced for better integration + with Oracle. +- jOOQ is now ready to use with Scala / Groovy + +For more information about using jOOQ with Scala, see this blog +post: +http://lukaseder.wordpress.com/2011/12/11/the-ultimate-sql-dsl-jooq-in-scala/ + +There is now also experimental support for a custom type mapping. +This mapping allows to rewrite data types at code generation time +as well as to specify custom enum data types (e.g. boolean Y/N). +Not all integration tests run smoothly for custom data types, +hence, this feature is not yet fully supported. + +Features and improvements +------------------------- +#691 - Add support for Oracle CURSOR REF IN / INOUT parameters +#677 - Add type-mapping configuration, enforcing types for + columns +#947 - Add custom type mapping support (experimental) +#968 - Allow for custom enum types, configured in the code + generator (experimental) +#974 - Add Schema.getTable(String), getSequence(String), + getUDT(String) for better runtime Schema meta-navigation +#975 - Add Sequence.getName(), getSchema(), getDataType() +#980 - Add support for named parameters, to better interact with + Spring +#991 - Add Query.bind(String, Object) and bind(int, Object) to + easily modify existing bind values +#992 - Document thrown DataTypeException in Convert methods +#998 - Enhance MERGE statement for Oracle extensions: + WHEN MATCHED THEN UPDATE .. WHERE .. DELETE WHERE .. + WHEN NOT MATCHED THEN INSERT .. WHERE .. +#1000 - Add support for MySQL's INSERT INTO .. SET .. syntax in + MERGE statement's WHEN NOT MATCHED THEN INSERT clause + +API changes (backwards-compatible) +---------------------------------- +#981 - Cannot insertInto(table("my_table")), as plain SQL tables + return Table, not Table. Relax + bound on R +#988 - Change Factory.field(String) to return Field + instead of Field +#999 - Make MERGE's WHEN MATCHED .. and WHEN NOT MATCHED .. + clauses optional +#1001 - Identity.getField() should return TableField + instead of Field +#1006 - Add Factory.value(...) as a synonym for Factory.val(...) + for increased Scala / Groovy compatibility + +Bug fixes +--------- +#973 - EnumType renders name() instead of getLiteral() in + formatXXX() methods +#977 - EnumType renders name() instead of getLiteral() in + Convert.convert() method +#979 - Record.from() sets all changed flags to true. That's not + necessarily correct in the event of storing the record + back to the DB +#985 - AbstractRecord.equals() does not correctly compare + arrays. Compare them using Arrays.asList() +#986 - Postgres / DB2 / Sybase ASE foreign-key namespace is + unique-per-table. jOOQ forces all foreign keys from all + tables into the same namespace +#990 - Problems when encoding arbitrary byte[] as String(byte[]) + in inlined SQL. This can cause issues when DEBUG-level + logging is activated +#995 - Routines don't respect SchemaMapping - Github issue #8 +#1002 - TableRecord.storeUsing() doesn't update IDENTITY column + values, if the column is not part of the main unique key +#1003 - Sybase / SQL Server / MySQL / Ingres / H2 / Derby's + INSERT .. RETURNING simulation returns null if a table + has an IDENTITY column, but no primary/unique key +#1005 - The INSERT INTO .. VALUES .. syntax may cause type-safety + issues in some databases. VALUES should be converted + before binding + +Test cases +---------- +#984 - Detach IDENTITY column tests from UNIQUE KEY tests, + create a dedicated test suite instead + +Version 2.0.0 - November 25, 2011 +================================================================= +This release is a fresh start in many areas of jOOQ, adressing +issues that have been requested by users for a long time. These +release notes docment the most important changes, a detailed +upgrade guide, as well as the detailed list of improvements. + +Most important changes +---------------------- +- The API became more static. This applies to many Factory + methods, such as val(), literal(), as well as to many Field + methods that have been moved over to the Factory. For example, + when before, you wrote this using "postfix function notation": + +
NAME.replace(" ", "_").trim()
+ + you will now write (just as in SQL): + +
trim(replace(NAME, " ", "_"))
+ + Using static imports of Factory.*, jOOQ makes SQL look even + more like SQL. The current "postfix notation" is maintained for + backwards compatibility. +- By default, jooq-codegen will now generate a "dynamic" meta + model as opposed to the existing static one. Generated tables + covariantly override the as(String) aliasing method, leading + to a much more convenient aliasing style. When before, you + wrote: + +
+Table parent = T.as("parent");
+Table child  = T.as("child");
+Condition join =
+  parent.getField("ID").equal(child.getField("PARENT_ID"))
+
+ + You can now write: + +
+T parent = T.as("parent");
+T child  = T.as("child");
+Condition join = parent.ID.equal(child.PARENT_ID)
+
+ + Of course, the existing notation still works + +- Exceptions are no longer checked. When previously, the DB's + SQLException was propagated to client code, there is now an + unchecked DataAccessException hierarchy, similar to that of + Spring. This will eventually give way to a standardised error + handling abstraction, in future developments. +- Window functions are now constructed from their underlying + aggregate functions just like in SQL. For example: + +
+sum(AMOUNT)
+sum(AMOUNT).over().partitionBy(ACCOUNT)
+
+ + This makes for a more concise API, especially when considering + future extensions, such as Oracle's KEEP (DENSE_RANK FIRST...) + syntax. +- More type safety has been introduced regarding various places + where generic and types are involved. + This is especially true for INSERT / UPDATE / DELETE statements +- Sequences now also have a type +- Unsigned number types are now supported in those databases that + use them. Unsigned numbers are implemented in jOOU, a spin-off + open source project. For convenience, this library is + "internalised" into jOOQ, to avoid adding a dependency + +http://code.google.com/p/joou/ + +Upgrade instructions: +--------------------- +Various of the above changes are incompatible with jOOQ 1.x. In +order to upgrade, please be aware of the following pitfalls: + +- The schema needs to be re-generated. +- Much of the post-fix function notation is replaced by static + methods in the Factory. Today's org.jooq.Field API is + maintained in jOOQ 2.0, for backwards compatibility. It will + be removed, eventually, though. Expect some incompatible + changes, where window functions are involved +- Some Factory instance methods (such as val(), literal()) are + now static. They are compatible, but may cause compiler + warnings. +- The meta model is now an instance model by default. If you + prefer the static meta model, you can configure this in your + jooq-codegen configuration. +- The additional typesafety involving and types may cause + compiler warnings and errors. +- SQLException is no longer part of the API. This can cause + compiler issues, in particular when extending jOOQ +- Some utility classes have moved to org.jooq.tools + +Should these incompatibilities be too significant for your +project, you can still stay on the 1.x branch, which will be +maintained for a while. Be aware that upgrading might be more +difficult, later, though. + +Features and improvements +------------------------- +#55 - Implement improved exception handling +#117 - Improve DSL support for field and table aliasing (decrease + verbosity) +#519 - Add support for MySQL UNSIGNED numeric types +#626 - Create static function access +#661 - Add support for bitwise operators +#718 - Sequences should be mapped to appropriate type (e.g. + SMALLINT, INT, BIGINT, etc) +#734 - Add support for Oracle / SQL Server CUBE() and ROLLUP() + grouping functions +#751 - Add support for Oracle / SQL Server GROUPING SETS() + function +#799 - Add support for Oracle PL/SQL's object-oriented MEMBER + PROCEDURES and MEMBER FUNCTIONS +#804 - Add to Insert, Update, Delete +#835 - Review API typesafety for InsertSetMoreStep + set(Field, T) and similar methods +#890 - Add Factory.selectCount() convenience method +#891 - Let min() max(), etc functions return a new type + AggregateFunction. This type can then be used as an entry- + point for window functions +#892 - Add support for Oracle / SQL Server GROUPING() and + GROUPING_ID() functions to be used along with CUBE() and + ROLLUP() +#893 - Simulate ROLLUP() function for MySQL, using the WITH + ROLLUP grouping modifier +#894 - Move functions from Field to org.jooq.impl.Factory + and make them static +#895 - Add power(..., Field) +#897 - Add (experimental) Spring integration project +#898 - Replace usage of checked SQLException by an unchecked + DataAccessException, similar to that of Spring +#899 - Build jOOQ .jar files as bundles to be deployed into OSGI + environments +#900 - Purge deprecated API - Prior to 2.0 +#901 - Introduce InvalidResultException as a subtype of + DataAccessException for integrity checks in methods like + ResultQuery#fetchOne(), ResultQuery#fetchMap(), etc. +#902 - Make AggregateFunction the base type for constructing + window functions +#904 - Move SQLDialectNotSupportedException into + org.jooq.exception package +#905 - Introduce MappingException as a subtype of + DataAccessException for integrity checks in methods like + ResultQuery#fetchInto(), etc. +#907 - Add missing Field.like(Field), notLike(Field) + methods to overload the existing Field.like(T), notLike(T) +#908 - Change rpad / lpad functions to accept String instead of + char +#912 - Add R newRecord(Table, Object) as + the inverse of various into(Class) methods +#916 - Add > {Record.into(Table) | + Result.into(Table) | ResultQuery.fetchInto(Table) | + Cursor.fetchInto(Table)} +#917 - Add various Cursor.fetchOneInto() convenience methods +#918 - Add CustomTable, CustomRecord as base classes for more + convenience when used with various into(Table) methods +#919 - Allow for accessing non-public constructors of Record + subtypes +#923 - Move some utilities to org.jooq.tools +#924 - Generate a reference to every table in a new Tables.java + class for improved static access +#928 - Add DataTypeException extending DataAccessException in + case something went wrong when converting data types +#930 - Support converting date time types to java.util.Calendar. + This applies to various into(Class) methods, as well as + Result.getValue(xx, Class) +#931 - Allow for conversion between Long and date/time types, and + vice versa +#932 - Let the bound of R in TableRecord extend TableRecord, + in UpdatableRecord to extend UpdatableRecord +#933 - Add support for type Character in Record.into(Class) + methods and similar +#936 - Accept primitive types, such as int.class for type + conversion +#938 - CODEGEN: Add static/instance table field configuration +#939 - Include license.txt and readme.txt in .jar files' META-INF + directory +#953 - Make DefaultGeneratorStrategy methods non-final to allow + for overriding +#954 - Add examples for source code generation of multiple + schemata with Maven +#955 - Generate a reference to every type in a new UDTs.java + class +#957 - Add R Factory.newRecord(UDT) for constructing + attached UDTRecords +#958 - CODEGEN: Add generation-time schema mapping, allowing for + re-writing schemata in jooq-codegen +#960 - CODEGEN: Add code generation configuration parameter to + avoid using the new UByte, UShort, UInteger, ULong wrappers + for UNSIGNED number types +#961 - Use Oracle's SYS.ALL_SEQUENCES.MAX_VALUE to determine the + type of a sequence. +#969 - Add List ResultQuery.fetch(Field, + Class) convenience method + +Bug fixes +--------- +#686 - Reduce the internal API leak by preventing access to + TableFieldImpl, UDTFieldImpl, ParameterImpl +#903 - lag(Field, int, T) erroneously delegates to lead() +#906 - Add more NullPointerException safety to API +#913 - NoClassDefFoundError in JooqUtil.isJPAAvailable() +#920 - Generic type is lost in Cursor.fetchInto(RecordHandler) +#925 - SelectConditionStep should extend SelectConnectByStep, not + SelectGroupByStep +#926 - AbstractRecord.into() fails to convert java.sql.Date into + java.util.Date +#934 - Don't consider static members in reflection utilities when + used with Record.into(Class) and similar methods +#935 - Don't consider final member fields in reflection utilities + when used with Record.into(Class) and similar methods +#937 - In the event of name clash (same name for table and field) + generated code has errors +#945 - Calling UpdatableRecord.setValue() twice with the same + argument causes the changed flag to be reset to false +#948 - Always set the changed flag to true in Record.setValue() +#959 - Compilation errors in generated source code if MySQL enum + values match Java reserved words, such as 'true', 'false', + 'new', etc... +#962 - Postgres ordering of generated enum literals is unstable +#967 - Better document type conversion + +Version 1.7.0 - November 25, 2011 +================================================================= +This is a maintenance release for the 1.x branch. Some important +bug fixes are merged from version 2.0. These include: + +Bug fixes +--------- +#925 - SelectConditionStep should extend SelectConnectByStep, not + SelectGroupByStep +#926 - AbstractRecord.into() fails to convert java.sql.Date into + java.util.Date +#937 - In the event of name clash (same name for table and field) + generated code has errors +#945 - Calling UpdatableRecord.setValue() twice with the same + argument causes the changed flag to be reset to false +#948 - Always set the changed flag to true in Record.setValue() +#951 - Empty Password for jooq-codegen-maven causes NPE + +Version 1.6.9 - November 7, 2011 +================================================================= +This is a maintenance release for the 1.x branch. Developments +on this branch will stop after version 1.6.9. Only important bug +fixes are merged to this branch. Developments for release 2.0 +have started. + +The most important functionality in release 1.6.9 is the newly +added support for JDBC batch operations. You can now batch +execute several queries. + +See the official blog for more information: +http://lukaseder.wordpress.com/2011/10/25/jdbc-batch-operations-with-jooq/ + +Features and improvements +------------------------- +#621 - Add support for JDBC batch operations +#794 - Add support for ORDER BY [int value] in order to reference + a column index for sorting +#882 - Optimise Field.isTrue() and isFalse(). Take Field's data + type into consideration. +#885 - Add support for INSERT INTO .. VALUES (..) syntax, + omitting explicit field declarations +#887 - Add List Cursor.fetchInto(Class) + +Bug fixes +--------- +#748 - H2 regression in 1.3.158 regarding stored functions, which + return a ResultSet (this was fixed in H2) +#859 - Derby casting of numeric types to BOOLEAN doesn't work +#886 - Regression in date extract function when used in a + subselect +#888 - Derby casting of VARCHAR to FLOAT (and similar) doesn't + work + +Version 1.6.8 - October 22, 2011 +================================================================= +The main improvement of this release is the re-design of the +stored procedure / function API. With 12 supported RDBMS, which +all have their own idea about what is a stored procedure and what +is a stored function, it has proven to be a better design, to +unite them in one single type: org.jooq.Routine. A routine can +have a return value as well as OUT parameters. It can be embedded +in SQL and used as a field or a table. + +This means, you will need to re-generate your database schema, +when upgrading to jOOQ 1.6.8. After re-generation, you'll need to +fix your client code. These are the package changes: + +- [generated.package].procedures > [generated.package].routines +- [generated.package].functions > [generated.package].routines +- [generated.package].Procedures > [generated.package].Routines +- [generated.package].Functions > [generated.package].Routines + +Oracle generated packages are not re-located. With these +improvements, using stored procedures and functions becomes even +more reliable, especially when cursor types are involved. Read +more about the rationale behind this change: + +http://lukaseder.wordpress.com/2011/10/17/what-are-procedures-and-functions-after-all/ + +Apart from that, important improvements have been made in the +area of plain SQL tables. Also, consider a demo integration of +jOOQ with Google Cloud SQL: + +http://lukaseder.wordpress.com/2011/10/22/jooq-and-google-cloud-sql-example/ + +Features and improvements +------------------------- +#271 - Don't pre-fetch table meta data when selecting from plain + SQL tables +#489 - Add support for SELECT * (i.e. render SELECT * where + applicable) +#596 - Add support for VARIANCE() and STDDEV() OVER() window + functions +#608 - Add jOOQ version number in generated source code +#670 - Add more Javadoc to Field.xxx() functions +#692 - Add support for ResultSet type returned from HSQLDB + stored functions +#850 - Use http://www.jooq.org as URL for the @Generated + annotation +#854 - Add convenience methods Fields.isTrue(), isFalse() for + conversion of "Y", "YES", "1", "true", "on", etc into a + boolean condition +#870 - Add support for MEDIAN aggregate function +#872 - Add support for STDDEV_POP(), STDDEV_SAMP(), VAR_POP(), + VAR_SAMP() aggregate functions +#874 - Reduce the number of internal classes for dialect-specific + function aliases +#878 - Implement DataType.equals() and hashCode() + +API changes (backwards-compatible) +---------------------------------- +#851 - Change Field.{sortAsc|sortDesc}(List sortList) into + Field.{sortAsc|sortDesc}(Collection sortList) + +API changes (backwards-incompatible) +------------------------------------ +#848 - Purge deprecated API - Prior to 1.6.1 +#849 - Replace Cursor.fetchResult() by Cursor.fetch() +#852 - Review stored procedures / functions concept. Merge them + all into a single "Routine" type + +Bug fixes +--------- +#756 - Error when aliasing HSQLDB and Postgres unnested tables +#761 - Exception when TRACE logging execution with plain SQL + tables involved +#773 - Execute standalone stored functions as CallableStatement + to prevent issues with transactions +#847 - Query.getSQL() doesn't render dialect-specific SQL when + Query is constructed using the fluent API +#853 - DB2 generated convenience methods for stored functions + have unstable ordering +#857 - Derby casting of numeric types to String / VARCHAR does + not work +#858 - SQLDataType.getSQLDataType() should return itself, instead + of null +#860 - SQLite CEIL function is incorrectly simulated. CEIL(2.0) + returns 3.0 instead of 2.0 +#861 - Field.replace(String) generates bad SQL for various RDBMS. + Field.replace(String, String) works, though +#863 - Ingres integration generates illegal SQL when selecting + things like SELECT 1 WHERE 1 = 1 +#866 - Sybase ASE Field.replace(String) function incorrectly + removes the argument string +#873 - Error when selecting two times the same aggregate field +#877 - Compilation error in generated source code when a table + without a primary key has an identity column +#879 - Add Google Cloud SQL Example +#880 - Query.getSQL() does not consider SchemaMapping + +Test cases +---------- +#811 - Loader integration tests fail for SQLite +#812 - CSV Loader test leaves Postgres JDBC connection in an + inconsistent transactional state on error +#856 - Add integration tests for Field.abs() +#865 - Add integration tests for Field.ascii() +#867 - Add integration tests for Field.sum(), avg(), max(), min() +#881 - Re-design H2 stored functions to be pre-compiled, in order + to speed up integration tests + +Version 1.6.7 - September 25, 2011 +================================================================= + +This release coincides with the launch of the new website at +http://www.jooq.org. Hence, it ships with little additions to the +deliverable itself. + +Apart from new convenience methods, the main addition is a Maven +plugin for jooq-codegen contributed by Sander Plas. + +Features and improvements +------------------------- +#797 - Create Maven plugin for source code generation +#825 - Add List> Factory.fetchMany(String) to + allow for fetching several result sets from stored + procedures, such as Sybase ASE's "sp_help" +#838 - Implement MetaDataFieldProvider.toString() +#841 - Add List Result.getValues(Field, Class) +#842 - Add Query.getBindValues() method to allow for extracting + bind values in the correct order +#843 - Add Factory.fetch(ResultSet) to transform a JDBC ResultSet + into a jOOQ Result + +API changes (backwards-compatible) +---------------------------------- +#837 - Avoid final keyword on Object methods, such as .equals(), + .hashCode(), etc + +Bug fixes +--------- +#836 - Bad syntax when selecting from aliased plain SQL tables +#839 - Boolean conversion in getValueAsBoolean() should trim + String values first +#840 - Numeric conversions in getValueAsXXX() should trim String + values first +#844 - NullPointerException when selecting a column from a Result, + that does not exist + +Version 1.6.6 - September 11, 2011 +================================================================= + +Finally, support for another RDBMS has been added. Sybase's other +important product Sybase Adaptive Server Enterprise (or simply +Sybase ASE) is now officially supported by jOOQ + +Apart from this, there had been important improvements with the +recently added INSERT .. RETURNING clause, as well as some fixes +related to DECIMAL / NUMERIC data types + +Features and improvements +------------------------- +#796 - Complete missing public org.jooq.impl Javadoc +#800 - Add support for Sybase Adaptive Server Enterprise +#808 - Add support for INSERT .. RETURNING for Ingres +#809 - Add support for INSERT .. RETURNING for Sybase SQL + Anywhere using SELECT @@identity +#810 - Add support for INSERT .. RETURNING for SQLite using + last_inserted_rowid() +#813 - Add DSL support for INSERT .. RETURNING +#814 - Change TableRecord to reload its trigger-initialised main + key in Oracle and other RDBMS that don't support IDENTITY + columns +#818 - Add SQLiteFactory.rowid() +#819 - Support SQLite AUTOINCREMENT columns as IDENTITY +#820 - Add Factory.fetchOne(String) for executing plain SQL + queries that return single records +#826 - Allow for returning several records in the INSERT .. + RETURNING clause. This now works for DB2, HSQLDB, MySQL, + and Postgres +#827 - Support Sybase SQL Anywhere's TOP n START AT m clause + instead of simulating it with nested SELECT's + +API changes (previous API now deprecated) +----------------------------------------- +#817 - Deprecate Factory.lastID(Identity) + +Bug fixes +--------- +#815 - SQL Server fetching of IDENTITY value is broken +#821 - Optimise ResultQuery.fetchAny() executing fetchLazy() + internally, and only fetching one record from the cursor +#822 - Let Constant cast to more precise NUMERIC/DECIMAL types + in those RDBMS where casting is necessary +#823 - Cannot bind SQLite BigDecimal, BigInteger types - bind + them as String instead +#824 - BigInteger values cannot be bound in DB2, Derby +#828 - Document inefficient implementation for GREATEST and LEAST + in some RDBMS + +Version 1.6.5 - August 28, 2011 +================================================================= + +This release finally adds a loader for CSV data to jOOQ. You can +now load CSV data using a simple fluent API, configuring error +handling, duplicate behaviour and transaction handling, as well +as various CSV parameters. + +This release also changes the way generated keys are retrieved +after INSERT's. Instead of (potentially inconsistently) running +SELECT MAX(pk) immediately after the INSERT, Postgres' INSERT.. +RETURNING clause is used (or simulated), in a single statement. + +Features and improvements +------------------------- +#784 - Add Result.exportXML() to retrieve a DOM document similar + to that of .formatXML() +#792 - Add support for loading of CSV data into tables +#795 - Add List fetch(int, Class) and + fetch(String, Class) convenience methods +#803 - Add support for INSERT .. RETURNING or simulate it where + not available +#805 - Add T[] fetchArray(int, Class) and + fetchArray(String, Class) convenience methods +#806 - Add T fetchOne(int, Class) and + fetchOne(String, Class) convenience methods + +Bug fixes +--------- +#798 - Oracle IN (...) clause with more than 1000 arguments does + not work +#802 - Use "INSERT .. RETURNING" instead of "SELECT MAX(pk)" + to retrieve the primary key of a new record + +Version 1.6.4 - August 07, 2011 +================================================================= + +This release ships with a couple of useful concepts inspired by +other frameworks. These are: + +- selecting into custom POJO's. Results can be mapped to POJO's + by convention or using JPA @Column annotations +- selecting into custom callbacks. This is already a wide-spread + practice in Spring JdbcTemplates. +- selecting long-running queries asynchronously. This idea has + been inspired by the Avaje Ebean framework + +Apart from these changes and some bugfixes, the internal API has +been completely re-designed. The idea here is that query +rendering and variable binding are even faster (less String +objects), more extensible and more accurate. This is a pre- +requisite for many future developments with even more complex SQL +statements, such as for instance CTE's (Common Table Expressions) + +Features and improvements +------------------------- +#137 - Add support for asynchronous query execution using + FutureResult ResultQuery.fetchLater() similar to + Avaje Ebean +#198 - Add SELECT INTO functionality into POJO's using + T ResultQuery.fetchInto(Class) similar to JPA + CriteriaQuery +#728 - Add .fetchInto(RecordHandler) to ResultQuery, Result, + and Cursor to allow for callbacks similar to Spring's + JdbcTemplate/Ollin Framework +#774 - Add more TRACE logging to .fetchLazy() +#777 - CURSOR: Add function alias: UNNEST for TABLE +#781 - Add E function (Euler number) +#782 - Add T Record.getValue(..., Class) methods + for convenient type conversion +#785 - Allow for storing TableRecord with a provided Field[] + indicating the primary key +#786 - Document thread-safety facts in Factory Javadoc +#788 - Add Key.getFieldsArray() convenience method +#793 - Add support for Oracle's SYS_CONNECT_BY_PATH function + +API changes (backwards-incompatible) +------------------------------------ +#758 - Change internal QueryPart rendering and binding API to use + Configuration and Context as callback parameters. If you + use CustomField or CustomCondition, please correct your + implementations accordingly. Other parts of the API should + not be affected +#778 - Purge deprecated API, deprecation prior to jOOQ 1.5.7 +#790 - Purge deprecated generated code, deprecation prior to + jOOQ 1.5.7 + +API changes (previous API now deprecated) +----------------------------------------- +#776 - Deprecate QueryPart.getSQL(), add Query.getSQL() +#789 - Deprecate Record constructors with Configuration + parameter + +Test cases +---------- +#636 - Add integration tests for more advanced CONNECT BY + example +#772 - Add integration tests for selecting cartesian products + (several tables in FROM clause) + +Bug fixes +--------- +#730 - Sybase cannot bind null values in plain SQL +#759 - Omit the TOP 100 PERCENT clause in SQL Server ordered + top-level queries +#767 - An empty Java package is generated for PL/SQL packages + containing underscores +#771 - Some exotic literals are not properly escaped with quotes + yet, e.g. UDT identifiers, VARRAY types, etc. +#775 - Automatic re-attaching after deserialisation does not work + when used with .fetchLazy() +#787 - The UpdatableRecord's internal changed flags are not + updated after INSERTs / UPDATEs + +Version 1.6.3 - July 31, 2011 +================================================================= + +This is mainly a maintenance release with lots of bugfixes, +mostly around code generation, plain SQL tables, and data types. +Please note that generated source code may contain incompatible +changes due to #639 (see below for details)! + +Apart from that, project CURSOR is advancing and it is now +possible to unnest arrays into tables. See this article for +details about where jOOQ is heading with project CURSOR: + +http://lukaseder.wordpress.com/2011/07/24/the-power-of-ref-cursor-types/ + +Features and improvements +------------------------- +#679 - Improve H2 NVL2 support as of H2 1.3.156 +#680 - Improve H2 ROUND support as of H2 1.3.156 +#735 - Add README documentation to GitHub +#736 - Add more info regarding number of generated artefacts in + jooq-codegen logging +#750 - Add DataType.isNumeric(), .isString(), .isTemporal(), + .isBinary() +#754 - Log query as executed by JDBC PreparedStatement when + TRACE logging (without inlining variables) +#752 - CURSOR: Add support for selecting from ARRAY types +#762 - Use H2's native support of NVL, instead of COALESCE +#764 - CURSOR: Add support for selecting from ARRAY types + returned from stored functions + +API changes (backwards-incompatible) +------------------------------------ +#639 - Map DECIMAL(n, 0) and NUMBER/NUMERIC(n, 0) data types + to Byte/Short/Integer/Long/BigInteger instead of + BigDecimal in generated source code. Re-generated code + will not be compatible! + +API changes (previous API now deprecated) +----------------------------------------- +#731 - Inconsistent API with Field.lessOrEqualToXXX(). Removed + "To" from method name +#757 - Deprecate Factory.constant() methods + +Test cases +---------- +#731 - Add missing integration tests for equalAll(), equalSome() + and similar methods +#747 - Upgrade H2 to 1.3.158 + +Bug fixes +--------- +#632 - Sybase error : column @p0 not found in nested SELECT +#700 - Restore HSQLDB ARRAY support with INFORMATION_SCHEMA + change in HSQLDB 2.2.3, and some fixes in 2.2.5 +#725 - Cannot insert byte[] data with plain SQL +#733 - H2 changed JDBC type for ResultSet/CURSOR from 0 to -10, + like Oracle +#737 - Compilation errors in generated source code if table + fields contain spaces +#738 - Compilation errors in generated source code if MySQL + procedure parameter type contains two comma-separated + arguments (like DECIMAL(10,2)) +#739 - Postgres navigator methods and keys are not re-generated + in the same order +#740 - Formatting is broken on Result.format() with some special + newline characters +#743 - Make SQL Server INFORMATION_SCHEMA independent from + HSQLDB again, to prevent incompatibility issues +#744 - Ingres REAL and FLOAT4 types are generated as FLOAT/FLOAT8 + which maps to java.lang.Double, instead of java.lang.Float +#753 - Postgres error when binding array that contains null + values +#755 - NullPointerException when converting an array containing + a null value +#766 - Bad decoding of JDBC Types BIGINT (to BigInteger instead + of Long) and REAL (to BigDecimal instead of Float) when + plain SQL tables are involved + +Version 1.6.2 - July 10, 2011 +================================================================= + +This release mainly introduces three new projects. + +Project CURSOR where jOOQ finally supports various RDBMS's TABLE, +CURSOR, and REF CURSOR data types. This is especially useful when +those types are returned from stored procedures and functions. +Cursors are simply mapped to jOOQ Result types and can +thus be used like regular table results + +Project EXPORT aims at exporting data from the database in +various serialisable formats, such as XML, CSV, HTML, Text, JSON. +This project will be continued in the future, to also +deserialise from (some of) these data streams. This will allow +for easy transport of jOOQ Result types over the net. + +Project CODEGEN has finally been started. Many improvements +suggested by jOOQ users will be implemented in the next releases. +In this release, important fixes have been made to prevent +compilation errors in generated artefacts. + +Features and improvements +------------------------- +#61 - EXPORT: Add Result.formatXML() +#166 - CURSOR: Add support for ResultSet type returned from + Oracle stored procedures / functions +#411 - Allow for fetching Map (instead of Record) + and List> (instead of Result) +#549 - Add Factory.function() for plain SQL functions +#611 - Simulate RPAD and LPAD in SQL Server, Sybase +#627 - Add support for Postgres FOR UPDATE OF [table-name] clause +#628 - Add support for REPEAT (SQL Server: REPLICATE) function +#637 - Nicely format time in StopWatch logging output +#640 - Simulate Postgres FOR UPDATE OF [table-name] clause in + other dialects +#649 - CURSOR: Add Cursor.fetch(int) .fetchOne() + .fetchResult(int) .fetchResult() +#653 - Add support for MySQL encryption and compression functions +#660 - Clarify Javadoc of UpdatableRecord to explain its + behaviour when changing the main unique key +#669 - EXPORT: Add Result.formatHTML() +#672 - Add convenience method UpdatableRecord.copy() in order to + reset primary key values for a subsequent INSERT +#675 - EXPORT: Add Result.formatCSV() +#683 - Implement ResultImpl.equals() and .hashCode() +#684 - Implement AbstractStore.equals() and .hashCode() +#685 - Add Store.size() to indicate the maximum index of the + Store +#687 - EXPORT: Add result.formatJSON() +#689 - Create separate builds: jooq-core.zip and + jooq-with-dependencies.zip +#690 - CURSOR: Add support for ResultSet type returned from H2 + stored functions +#695 - CURSOR: Add support for ResultSet type returned from + Postgres stored functions +#697 - Add Factory.fetch(String) for executing plain SQL queries + that return results +#701 - Add ResultQuery.fetchArray() and .fetchOneArray to return + Object[][] and Object[] +#704 - Always add top and bottom line in Result.format() +#705 - Right-align numeric values in Result.format() +#716 - Add SUBSTRING function Field.substring(Field, Field) + taking fields as arguments +#719 - Document risk of SQL injection in plain SQL and literal + factory methods +#726 - Add LENGTH function as a synonym for CHAR_LENGTH + +API changes (backwards-compatible) +---------------------------------- +#698 - Inconsistent API with Factory.fetch(Table [,Condition]) + Let method return Result instead of List +#699 - Let Result extend List + +API changes (previous API now deprecated) +----------------------------------------- +#656 - Decrease verbosity of plain SQL methods. They will just be + called Factory.field() .condition() .table() .query() + +Test cases +---------- +#643 - Add integration test for code generation of invalid and + incomplete types in Oracle +#654 - Add integration tests for master data tables with PK types + other than NUMBER/INT +#655 - Add missing integration tests for TRIM function + +Bug fixes +--------- +#450 - Improve plain SQL integrity checks for bind variables +#610 - CODEGEN: Compilation error in generated source code for + databases with table named 'system' +#646 - An empty Java package is generated for an empty PL/SQL + package. This is unnecessary +#651 - CODEGEN: Avoid importing datatypes in generated source + code to prevent collisions +#657 - NullPointerException when creating a Factory with a null + SchemaMapping +#658 - Master data table code generation is broken for tables + with more or less than 3 columns +#662 - Add support for the missing Postgres data type "bpchar" +#663 - Add support for the missing Sybase data type "int" +#664 - Ingres INTEGER data types are not correctly generated +#665 - HSQLDB Datatype CLOB and BLOB are not supported, when + selecting from plain SQL tables +#666 - The evil bug: Ingres TRIM function only executes RTRIM +#673 - UpdatableRecord.store() doesn't work if called after + .delete() +#702 - Add support for the missing SQLite data type "NULL" +#706 - CURSOR: Ensure that Query.execute() runs in a single + transaction when Postgres refcursor is involved in the + query (this fixes a Postgres JDBC driver flaw) +#724 - NullPointerException when passing a single literal null + bind value to plain SQL methods without casting to Object +#729 - DB2, Derby, Ingres, Oracle cannot bind null values in + plain SQL + +Version 1.6.1 - June 19, 2011 +================================================================= + +In this release, the PORTABILITY project has been implemented. +Finally, the SQLDialect has been removed from most generated +artefacts (Schema, Table, Field, Sequence, etc). Also, the +constructing Factory is not referenced by its created QueryParts +anymore, unless this is really necessary (Query objects, UDT's, +ARRAY types). This leads to higher compatibility between schemata +of different databases, e.g. if users want to use an HSQLDB +development and Oracle productive database. + +Unfortunately, this means that the way stored procedures are +called had to be changed. This is an API break that could not be +avoided. The pre-1.6.1 StoredObject.execute(Connection) method +is deprecated and will be removed in the future. It has been +replaced by StoredObject.execute(Configuration) + +In addition to this project, many more window functions are now +supported, as well as the Oracle-specific CONNECT BY clause for +recursive queries. + +Features +-------- +#351 - Add support for Oracle ROWID data type +#452 - PORTABILITY: Create a super-set of RDBMS data types +#453 - PORTABILITY: Don't create dialect-specific QueryParts +#455 - Add support for the Oracle CONNECT BY clause +#587 - Add optional OFFSET clause to form LIMIT .. OFFSET + constructs +#589 - Add extended FOR UDPATE [OF ...] [{WAIT n | NOWAIT | SKIP + LOCKED }] support +#591 - Add support for LEAD() OVER() and LAG() OVER() window + functions +#592 - Add support for the CUME_DIST() OVER() window function +#601 - Add Factory.literal() convenience methods +#602 - Add Factory.val() methods to decrease .constant() + verbosity +#604 - Add support for RESPECT NULLS clause in some window + functions +#605 - Add Factory.use(String) for non-generated schemata +#613 - Add PI function +#616 - Add Factory.two() literal convenience method +#630 - Add support for Oracle CONNECT BY pseudo-columns LEVEL, + CONNECT_BY_ISCYCLE, CONNECT_BY_ISLEAF + +API changes +----------- +#299 - PORTABILITY: Create a dialect-independent meta-model +#588 - Add OVER() keyword to FIRST_VALUE() and LAST_VALUE() API + +Test cases +---------- +#368 - Add integration test for use with schema mapping +#586 - Upgrade H2 to 1.3.155 +#607 - Add integration tests for CRUD / SP's / UDT's / ARRAY's + with SchemaMapping +#612 - Add integration tests for LPAD and RPAD functions +#624 - Add integration test for code generation of invalid/ + incomplete views in Oracle +#631 - PORTABILITY: Add integration tests for using Oracle- + generated schema against an HSQLDB database +#638 - Add missing integration test for DECIMAL data type + +Bugfixes +-------- +#176 - Stored procedures / functions in EQUIVALENT schemata + cannot be called +#493 - Bind variable mismatch when constructing bad SQL +#594 - Confusing Javadoc in SELECT DSL API +#603 - Fix DB2 'IGNORE NULLS' clause +#619 - SUBSTRING() function is broken in DB2, Ingres, SQL Server +#623 - SQL syntax error for some MERGE queries in SQL Server and + Sybase +#633 - SchemaMapping is not applied to sequences +#634 - Sequences are not escaped in generated SQL + +Version 1.6.0 - June 05, 2011 +================================================================= + +Apart from supporting various additional standard and non- +standard JOIN constructs, there is now also full support for the +SQL standard MERGE statement and MySQL's ON DUPLICATE KEY variant +thereof. A great number of API enhancements have been added, +which improve the usability of jOOQ. The Ingres database is now +also supported. + +Features +-------- +#301 - Add support for Oracle execution hints +#409 - Add support for NATURAL JOIN syntax, where RDBMS allows it +#415 - Make fluent API's underlying SelectQuery objects publicly + available +#429 - Add Ingres support +#475 - Document class-level generic types and in Javadoc +#486 - Add support for SQL MERGE clause +#494 - Allow for omitting schema name in generated SQL +#496 - Automatically update IDENTITY values in UpdatableRecord, + after storing them +#520 - Add support for JOIN ... USING syntax +#524 - Upgrade HSQLDB to 2.2 +#533 - Add ORDER BY [Map] or BY [List] functionality +#534 - Add Result.isEmpty() +#535 - Call upon ConfigurationRegistry.provideFor() before + throwing a DetachedException +#536 - Simulate CASE [value] WHEN [value] THEN [result] END + syntax in Derby +#538 - Add some logging to ConfigurationProvider +#539 - Add possibility to negate numeric values with Field.neg() +#541 - Add support for MySQL ON DUPLICATE KEY clause +#542 - Allow for Collection arguments in INSERT's DSL API +#543 - Allow for creating FUNCTION() OVER() without PARTITION BY + or ORDER BY clause +#546 - Add Factory.use(Schema) +#548 - Add new internal type FieldMap +#550 - Simulate ON DUPLICATE KEY INSERT clause in dialects other + than MySQL +#551 - Add TableMapping, similar to SchemaMapping for mapping + tables +#553 - Add Factory.plainSQLQuery +#554 - Add Factory.plainSQLField with a DataType parameter +#555 - Add UpdateXXX.set(Map) convenience methods to DSL API +#557 - Enhance INSERT DSL API to allow for adding VALUES clause + with InsertXXX.set() syntax +#570 - Add support for the RAND() function +#567 - Add support for Ingres Sequences +#572 - Add support for the ATAN2() function +#573 - Add possibility for additional select() clauses for + convenience +#575 - Add support for the FULL OUTER JOIN syntax, where RDBMS + supports it +#576 - Add support for the CROSS JOIN syntax, where RDBMS + supports it +#581 - Enhance API and allow Collection> + instead of Collection> + +API changes +----------- +#397 - Purge deprecated API + +Bugfixes +-------- +#481 - Handle case where an empty record is stored +#522 - Misleading Javadoc in generated stored procedures and + function constructors +#532 - Restore Postgres INFORMATION_SCHEMA +#537 - Prevent null from being added to QueryPartList +#540 - Error when TRACE logging Limit +#544 - Aliased elements are not bound correctly when rendered + with toSQLReference() +#559 - Loosen type safety on overloaded methods to prevent + compilation errors with javac/Netbeans +#560 - HSQLDB DataType REAL is configured incorrectly +#565 - Add integration tests for current_user() function +#569 - ORA-01427 when generating foreign key relations +#571 - Field.trim() not correctly implemented for SQL Server +#583 - Accelerate integration tests: Reset schema only if + necessary + +Version 1.5.9 - May 15, 2011 +================================================================= + +This version ships with lots of new functionality. Finally, the +DSL-style API has been extended to CRUD operations (INSERT, +UPDATE, DELETE)! Also, support for the TRUNCATE TABLE statement +has been added. + +The most important new features include the support for SQL:2003 +standard window functions, which are available in most major +RDBMS. Additionally, basic function support has been widely +extended. + +Features +-------- +#148 - Added support for window functions +#204 - Add support for multi-record INSERT's +#416 - Added support for retrieval of IDENTITY values +#433 - Use bind variables for LIMIT and OFFSET +#441 - Added foreign key relationship meta information to the + generated source code +#446 - Beautify ResultImpl.toString() method +#461 - Automatically cast CONCAT parameters to Field if + necessary +#463 - Added support for trigonometric functions +#471 - Added support for the sign function +#472 - Added support for GREATEST/LEAST functions +#474 - Added support for "hyperbolic" functions SINH, COSH, TANH, + and COTH +#482 - Added DSL API for INSERT statements +#483 - Added DSL API for UPDATE statements +#484 - Added DSL API for DELETE statements +#485 - Added "Registry" for client code to provide Configurations + to jOOQ Attachables +#490 - Added support for the TRUNCATE TABLE statement +#495 - Generate source code for IDENTITY columns +#501 - Added support for boolean conversion to Result, Record, + and Store +#503 - Allow for schema navigation via generated artefacts +#518 - Let stored procedures reference owner package + if applicable +#525 - Added NULLS {FIRST | LAST} clause to ORDER BY constructs +#528 - Added Factory.getDataType() convenience method +#530 - Added Factory.zero() and Factory.one() convenience methods + +API changes (jooq) +------------------ +#527 - Weakened type-safety on Field.nvl2() +#529 - Deprecated Factory.select(Object...), added .selectOne() + and .selectZero() instead + +API changes (jooq-meta) +----------------------- +#30 - Add ParameterDefinition for stored procedures, instead of + reusing ColumnDefinition +#499 - Add reference to TableDefinition in ColumnDefinition +#500 - Add AttributeDefinition for UDTDefinition, instead of + reusing ColumnDefinition + +Bug fixes +--------- +#369 - Adapt H2 relations generation to H2's correction of + information_schema.cross_references +#435 - Added integration tests for NESTED SELECTs holding LIMIT + clauses +#460 - Syntax error when using a field with a reserved name +#462 - Fixed Javadoc broken links +#473 - Don't cast when cast is unnecessary +#479 - INSERT statement should not set all fields for a table +#497 - Derby referential code generation is broken, for named + foreign keys +#498 - Oracle package content is generated in arbitrary order +#502 - Syntax error when creating an empty IN condition +#526 - Corrected Javadoc in Field.coalesce() + +Version 1.5.8 - April 29, 2011 +================================================================= + +Finally, jOOQ now supports two important new RDBMS: +SQL Server and Sybase! + +Apart from this great enhancement, there is now also full support +for the non-SQL standard LIMIT clause, even in dialects where the +LIMIT clause is not supported natively (especially Oracle, but +also DB2, SQL Server and Sybase, which have limitations). jOOQ +simulates LIMITs by rendering nested selects filtering on ROWNUM +(Oracle) or on ROW_NUMBER() (DB2, SQL Server and Sybase). + +Other interesting additions are an increasing support for native +mathematical functions. More function support will be added in +future versions. + +Features +-------- +#16 - Added support for SQL Server +#21 - Uniform implementation of the LIMIT clause. Implemented + LIMIT clause simulation through analytic functions, where + LIMIT is not supported natively +#97 - Added support for Sybase +#418 - Measure time of various steps in source code generation +#420 - Added support for proprietary SQL extensions "FOR UPDATE" + and "FOR SHARE" +#431 - Added additional statistics to generation log files +#432 - Unified the various "standard" ANSI INFORMATION_SCHEMA + implementations in the jooq-meta artefact +#436 - Added support for the modulo function +#438 - Added floor and ceil functions +#439 - Added support for mathematical functions (logarithms, + exponentials, sqrt) +#447 - Enhanced Field.add() and Field.subtract() to work for date + time fields, also + + +API changes +----------- +#428 - Created new Maven artefact jooq-meta to cleanly separate + database meta-data navigation from code generation +#458 - Decreased DSL verbosity for arithmetic operations and for + ordering + +Bug fixes +--------- +#417 - Restored warning when unknown column type is encountered + in source code generation +#419 - Corrected misleading Select.fetchOne(...) Javadoc +#421 - Optimised AbstractRecord's memory consumption +#448 - Corrected some Javadoc @see links +#449 - Changed Field.concatenate() to accept Field parameters + to avoid generic varargs warnings + +Version 1.5.7 - April 17, 2011 +================================================================= + +This is the first release built with support of Maven thanks to +the help of some jOOQ users! + +The main new features in this release are the improved support +for serialisation/deserialisation of jOOQ objects through use of +the newly introduced "Attachable" interface. + +If using log4j or the newly supported slf4j logging framework +in debug/trace mode, there is the possibility to log query +building/execution time statistics. + +Apart from these new features, fixes were mainly done in the +fields of type casting, HSQLDB 2.1 upgrade support, stored +procedures with OUT, IN/OUT parameters. Please upgrade, if you +are using any of those features. + +If you extend jOOQ as a base implementation for source code +generation, be aware of the fact, that the jOOQ-codegen is +currently undergoing major changes. Expect the code generation +API to stabilise again in one of the next releases. + +Features +-------- +#104 - Added maven dependency +#248 - Integrate UDT types with ARRAYs +#295 - Allow for attaching/detaching UpdatableRecords to/from + Configurations +#359 - Added statistics measurement to Query execution for debug + log level +#362 - Added deprecation configuration flag +#364 - Document unknown type in generated source code +#373 - Improve exception handling in code generation +#378 - Added support for Oracle stored functions with OUT + parameters +#382 - Added Factory.attach() methods to re-attach deserialised + Attachables +#394 - Add logging support for SLF4J +#398 - Allow to provide a DataType in Factory.constant() +#399 - Provide access to TypeUtils.convert() methods via DataType +#404 - Added trace logging for measuring the speed of various + query execution steps + +API changes +----------- +#358 - Enhanced DSL API to allow for HAVING clauses without + GROUP BY clauses +#367 - Make Store, Result, QueryPart "Attachable" +#374 - Introduce strategy pattern to code generation for future + support for advanced naming schemes +#375 - Decouple Database from Generator +#381 - Made DataType Serializable +#384 - Deprecated singleton QueryParts +#388 - Unify "internal" API using an Adapter pattern + +Bug fixes +--------- +#187 - Protect generated Record navigation methods against name + clashes +#266 - Added more thorough integration tests for dialect-specific + casting (including some fixes related to varchar types) +#360 - Added more integration tests for the DISTINCT clause +#361 - Add more checks in testInsertUpdateDelete() +#366 - Warn only once per ColumnDefinition, if a data type is + unknown +#377 - NullPointerException when generating invalid stored + function +#380 - Added integration tests to check for proper + serialisability +#386 - Fixed incompatibilities with HSQLDB 2.1.0 +#387 - Fixed unnecessary imports in some Oracle generated + Records +#389 - Fixed javac compiler warning in AbstractStoredObject +#391 - Cannot properly call stored procedures when IN/OUT + parameter is bound to NULL +#392 - Procedures with several OUT parameters may not register + OUT parameters correctly +#410 - Passing null VARRAY values to Oracle stored procedures + causes issues +#412 - limit(int) sets default offset incorrectly in some + dialects + +Version 1.5.6 - March 31, 2011 +================================================================= + +This release consists mainly of code generation bug fixes and +minor API improvements and enhancements. + +The most important improvement is ticket #90, by which lazy +fetching and iteration over data is now supported. jOOQ lets you +keep a reference to a Cursor that has an open JDBC ResultSet, to +fetch data from on-the-fly. + +A few major code generation bugs were reported where the +generated code may cause ambiguity due to an inconsistent API. +This means that you will have to re-generate your schema after +upgrading to version 1.5.6. Some of your code may not compile +anymore, after this upgrade. + +Features +-------- +#90 - Added possibility for lazy fetching of data +#208 - Added convenience methods for direct invocation of + sequences' currval() and nextval() attributes +#212 - Created one factory per dialect for better separation of + dialect-specific support +#213 - Generate a factory for each schema +#251 - Opened up base implementations for Field and Condition + to allow for custom implementations by client code +#274 - Integrate H2 ARRAY types with stored procedures +#292 - Documented usage of log4j and java.util.logging +#306 - Added support for the NULLIF function +#319 - Added Field.between(Field, Field) method +#320 - Added trace logging for variable binding and SQL + generation methods +#323 - Added Field.in(Field...) method +#325 - Include release version number in delivered .jar files +#328 - Improved configuration setup documentation page +#333 - Let Result implement Serializable +#334 - Added fetchMap() convenience methods +#335 - Added more functions and aggregate functions examples to + documentation +#338 - Visually improve code generation logging +#339 - Removed skipping of unreferenced UDT's, ENUM's and ARRAY's +#342 - Improved generated referential code by using fetch() and + fetchOne() API +#356 - Let UpdatableRecord.store() and delete() return an int + to indicate whether the record was actually modified + +API changes +----------- +#233 - Allow for joining TableLike instead of Table +#337 - Added generic type > to + InsertSelectQuery +#341 - Fixed API flaw where SelectOnConditionStep.and() methods + and similar ones returned SelectConditionStep, instead of + SelectOnConditionStep + +Bugfixes +-------- +#69 - Corrected referential code generation for foreign keys + that reference non-primary unique keys +#85 - Corrected referential code generation for multi-field + foreign keys +#121 - Covered more Factory.executeXXX() methods with integration + tests +#318 - Fixed NullPointerException when executing SELECT * from + aliased tables +#321 - BetweenCondition does not bind left hand side Field + correctly +#322 - InCondition does not bind left hand side Field correctly +#326 - Avoid method overloading where binding to Object + may lead to compile-time ambiguities (with javac) +#343 - Add more foreign key navigation method integration tests +#347 - Add explicit integration tests for schema artefacts + excluded from code generation +#350 - Disambiguate navigation methods if several foreign keys + reference the same entity +#352 - Disambiguate navigation methods if a table ending on S + references itself +#353 - Added integration test for compilation of generated + artefacts with javac (as opposed to the Eclipse compiler) +#355 - Error when storing an UpdatableRecord that has no changed + values + +Version 1.5.5.2 - March 15, 2011 +================================================================= + +A critical bug was reported from the 1.5 release stream where +stored functions did not render their parameters in correct order + +Features +-------- +#302 - Map Oracle's NUMBER data type to java.lang.Number in + stored procedures, stored functions + +Bugfixes +-------- +#317 - StoredFunctionImpl.asField() renders parameters in wrong + order + +Version 1.5.5.1 - March 13, 2011 +================================================================= + +In version 1.5.5, there was a fatal bug breaking Derby source +code generation. Only the Derby dialect is affected. Please +update immediately, if you are using jOOQ's Derby integration + +Bugfixes +-------- +#315 - Generated master data records are not sorted by PK +#316 - Derby code generation fatally broken + +Version 1.5.5 - March 12, 2011 +================================================================= + +This version is released early as there are some important +bugfixes. Additional improvemetns include: + +- Improved DSL related to conditions in HAVING and JOIN clauses +- Support for Oracle-style functions, such as NVL, NVL2, COALESCE + DECODE, etc + +Features +-------- +#304 - Add support for Oracle NVL function +#305 - Add support for COALESCE function +#308 - Add support for Oracle NVL2 function +#311 - Add support for Oracle DECODE function + +API changes +----------- +#223 - Enhance DSL to accept and(), or() and similar methods in + JOIN steps +#224 - Enhance DSL to accept and(), or() and similar methods in + HAVING steps + +Bugfixes +-------- +#297 - Fixed Factory.concatenate() function +#298 - Added integration tests for nested selects in HAVING + clause +#300 - Added integration tests for nested selects in JOIN clause +#303 - Javadoc correction +#307 - Accelerated integration tests +#309 - Fixed JDBC variable binding issue related to Conditions + where the lhs is a function (e.g. stored function) and the + rhs is a constant +#310 - Fixed issue where fetchOne() methods throw + NullPointerException if no result record is available +#312 - Fixed issue where Field.equal(...) methods rendered + unexpected SQL when rhs null is cast to a type +#313 - Fixed Derby cast type for VARCHAR +#304 - Let the DerbyDataType default for java.lang.String be + VARCHAR, not LONG VARCHAR + +Version 1.5.4 - March 04, 2011 +================================================================= + +Feature #243 required a minor API change in the base classes of +generated source code. This means you have to re-generate all +your jOOQ artifacts in order to migrate to 1.5.4. The artifacts +themselves should be regenerated in a compatible way, such that +your client code should not be affected. If this is not the case, +please report a ticket here: + + https://sourceforge.net/apps/trac/jooq/newticket + +Apart from the Derby RDMBS and some new data type support, there +have been many new convenience methods added all over the API. +For instance, if type-safety is not really a requirement, there +are lots of possibilities to use plain SQL directly in the DSL. +In that case, data can be accessed from Record, Results, not only +through Field, but also through field names or indexes. + +Check out the updated documentation (soon) here: + + https://sourceforge.net/apps/trac/jooq/wiki/Examples + +- Support for the Derby RDBMS +- Support for casting. This allows for even greater flexibility + in cases where jOOQ cannot 100% ensure type-safety +- Support for ARRAY types. Oracle, Postgres, HSQLDB and H2 ARRAY + types are now supported natively as regular bindings in + jOOQ's Field +- Support for dialect-specific data types. CHAR, VARCHAR, CLOB + are no longer treated equally as java.lang.String. Their + type heritage is also generated +- More sequence support +- Lots and lots of bug fixes + +Features +-------- +#95 - Support for the Derby RDMBS +#163 - Add support for JDBC type ARRAY (with Postgres) +#209 - Add support for DB2 sequences +#210 - Add support for H2 sequences +#211 - Add support for HSQLDB sequences +#215 - Support for SQL casting using as cast type +#246 - Support for SQL casting using dialect-specific data types +#254 - Add HSQLDB support for ARRAY types +#256 - Add Oracle support for VARRAY types +#257 - Integrate ARRAY types with stored procedures +#261 - Add a global type mapping to the generated Schema object +#267 - Add DataTypeDefinition for further abstraction of data + types in code generation +#269 - Add H2 support for ARRAY types +#290 - If log4j is not on the classpath, use java.util.logging + instead, as fallback + +API Changes +----------- +#156 - Allow for results to be accessed by index, not by field +#218 - Corrected bad method signature: + Record.getValueAsLong(Field, Integer) +#219 - Extended Result and Select API's to be more similar to + that of Record +#232 - Add more convenience plain SQL support to the API +#235 - Add convenience methods to Record, Result and Select for + access of data via field name +#243 - Refactor DataType implementations in order to allow for + the use of generics +#259 - Add field type to database meta data (ColumnDefinition) +#260 - Add field type to database meta data (Field) +#262 - Add default behaviour for Record.getValue(Field) +#276 - Add Javadoc as a ZIP file to the jOOQ distribution + +Bugfixes +-------- +#125 - Add more plain SQL integration tests +#191 - Add more integration tests for nested unions +#205 - Implemented workaround for handling Postgres stored + functions with UDT OUT parameters +#214 - Fixed NPE when generating a stored function with an + unknown parameter type +#216 - Fixed some cases where binding of BigInteger is not done + correctly +#220 - Syntax error when using select statement in a CASE clause +#221 - Corrected integration tests for combined update and + select statements +#222 - Added integration test for INSERT statements having + nested SELECT statements for their fields +#225 - Correctly cast array types in Postgres +#230 - Potential misuse of Blob and Clob in H2's JDBC types +#239 - Factory.fetchAny() is not implemented for SQLite +#244 - Fixed peculiar MySQL casting support where cast types do + not match any data types +#245 - Fixed NPE when reading null dates in SQLite +#249 - Added ARRAY type integration tests +#255 - Stored procedure bind variables get mixed up when any + argument is null +#263 - Correctly handle Postgres function overloading +#264 - Ambiguous funciton calls when calling overloaded functions + with null parameter +#281 - Handle compilation errors when generating stored + procedures with > 254 parameters +#283 - Fixed compilation errors in generated source code for + Oracle's UDT table type +#284 - Fixed compilation errors in generated source code for + Oracle procedures in packages, when they have no + parameters +#285 - Fixed compilation errors in generated source code for + Oracle tables with the same name in different schemata +#286 - Fixed name collisions in generated objects with the + java.lang.* package +#288 - Prevent the creation of UNION queries with bad syntax + in MySQL +#289 - Correctly alias fields within UNION queries for some + dialects, which then only require the "AS" keyword +#291 - Cannot create an aliased field called "year" in Postgres + +Version 1.5.3 - January 13, 2011 +================================================================= + +- Lots of stored procedure support was implemented +- Support for sequences was added +- The final decision to postpone support for DB2 UDT's was made +- Some code generation bugfixes + +Features +-------- +#36 - Added stored procedure / stored function support for HSQLDB +#140 - Added support for Oracle sequences +#147 - Added support for H2 stored functions +#162 - Correctly integrate UDTs with stored procedures +#170 - Added support for Postgres stored functions +#186 - Added support for more Oracle PL/SQL simple data types +#193 - Simulate support for H2 "stored procedures" +#195 - Simulate support for Postgres "stored procedures" +#206 - Added support for Postgres sequences + +API changes +----------- +#180 - Improved DSL for constant values +#181 - Allow for referencing Field in function argument list +#189 - Renamed convenience methods in org.jooq.Record +#207 - Add fetchOne(Field) method to org.jooq.Select API + +Bugfixes +-------- +#182 - Protected generated Record classes against clashes with inherited methods +#183 - Fixed NullPointerException, when generating master data tables with + NULL fields +#184 - Fixed IllegalArgumentException, when a data type is present in the + schema, but unavailable in code generation logic +#185 - Code generation should not fail when single elements cannot be generated +#188 - Improved integration tests for stored procedures / functions / packages +#196 - Increase RDMBS version compatibility by avoiding "SELECT *" in code + generation logic +#199 - Added integration tests for stored procedures in RDBMS that do not + support OUT parameters +#201 - Fixed issue in DB2 where stored procedures without parameters were not + generated. +#202 - Added integration tests for stored procedures / functions without + parameters + +Version 1.5.2 - December 27, 2010 +================================================================= + +- Improved support for stored procedures, also in packages +- A minor API change was inevitable to implement #173. The API change only + concerns the INTERNAL API. Deprecation marks are added and deprecated items + will be removed in 1.6.0 +- Experimental SQLite database support +- Some important bug fixes + +Features +-------- +#25 - Added support for Oracle packages +#114 - Added support for Oracle UDTs +#145 - Added support for the SQLite database +#150 - Generate static convenience methods for stored procedures / functions +#151 - Generate static convenience methods for stored function fields +#152 - Generate meaningful serialVersionUID in generated classes +#173 - Added support for EQUIVALENT schemata + +API changes +----------- +#159 - Added convenience method List getValues(Field) to Result +#165 - Added convenience methods for creating EXISTS clauses +#169 - Improved DSL for WHERE clauses + +Bugfixes +-------- +#68 - Prevent issues originating from overloaded stored procedure names, + generating identical Java class names +#153 - Fixed issue with generated code for DB2 stored functions +#154 - Fixed issue with generated code for DB2 stored functions +#155 - Fixed issues with database NULL not being mapped correctly to Java NULL + when selecting values that have a primitive type (int, long, etc) +#158 - Potential ClassCastException when using Field +#171 - Corrected issue related to selection of default schema in DB2 +#177 - Fixed issue related to generated code for tables or UDTs without columns + + +Version 1.5.1 - December 13, 2010 +================================================================= + +- H2 database support thanks to Espen Stromsnes +- Improved stored procedure support + +Features +-------- +#96 - Added H2 database support +#101 - Added stored procedure / stored function support for Oracle +#138 - Added stored procedure support for DB2 +#146 - Added support for DB2 functions + +API changes +----------- +#143 - Added convenience methods to Record + +Bugfixes +-------- +#84 - Implemented referential code generation for foreign keys that do not + match their primary keys' types +#141 - Encoding problem in generated master data classes + +Version 1.5.0 - November 22, 2010 +================================================================= + +- A big one. Major API changes / improvements +- Added lots of convenience methods +- UDT support +- Enum support +- DB2 support thanks to Espen Stromsnes +- "Light" dependency to log4j added. jOOQ will still run without it + +Features +-------- +#1 - Create support for UDTs (so far only for PostgreSQL) +#15 - Added DB2 support +#60 - Added support for nested selects in INSERT and UPDATE + statements +#83 - Added log4j logging to code generation and runtime +#87 - Add support for arithmetic expressions +#105 - Added support for ENUM data types, where applicable + (MySQL and PostgreSQL so far) +#110 - Added execute and fetch convenience methods +#111 - Added missing "select distinct" support +#122 - Annotate generated classes with javax.annotation.Generated +#123 - Generate user enum fields from data values (master data) +#124 - Added PlainSQLTable +#127 - Added not() operator to Condition +#135 - Added convenience methods andNot() and orNot() in + Condition + +API changes +----------- +#89 - Removed support for DataSource. jOOQ is not a transaction + manager +#92 - Added SortField type to be used for sorting +#99 - Provide better access to functions (No more FunctionFactory) +#116 - Merge Manager functionality into Factory +#118 - Improve API of org.jooq.Field +#119 - Improve subquery condition API +#132 - Reduced much of the select query API +#134 - Better separation of SelectQuery and SimpleSelectQuery + +Bugfixes +-------- +#109 - Error when executing select * if generated schema does not + match actual schema +#115 - Fix various "null" pseudo field issues +#126 - Error when selecting a single field from a union nested + select +#129 - Fixed performance issue in Oracle code generation for + very large databases + + +Version 1.4.4 - November 22, 2010 +================================================================= + +Unreleased version, fixes included in 1.5.0 + +Bugfixes +-------- + +#133 - JoinCondition does not take comparison operator + +Version 1.4.3 - October 25, 2010 +================================================================= + +Some more bugfixes + +Bugfixes +-------- + +#71 - Generated code does not compile, when foreign key and + primary key have a data type mismatch +#73 - In Oracle generated code, multi-field foreign keys may + generated bad relations code +#82 - Conversion of literals to camelcase fails if numbers are + involved + +Version 1.4.2 - October 22, 2010 +================================================================= + +Various bugfixes and minor improvements + +Features +-------- +#66 - Add support for CASE or DECODE expression + +API changes +----------- +#77 - Functions should not extend FieldImpl, but a new + AbstractField +#78 - QueryPart pollutes declared method space of its + implementations. Hide it by indirection + +Bugfixes +-------- +#64 - Code generation fails when foreign key references a unique + key that is not the primary key. Code generation for these + cases is omitted +#67 - When loading properties files, a leading / seems to be + mandatory. This is preventing users from correctly setting + up jOOQ the first time +#70 - Add support for Oracle datatype TIMESTAMP(6) +#72 - Name clashes in generated Tables +#75 - Constant does not bind its values. +#76 - Constant should not render strings all the time +#79 - Constants are not properly escaped +#80 - Position function does not bind any variables +#81 - Add cast function to Constants in HSQL + +Version 1.4.1 - October 18, 2010 +================================================================= + +Oracle patch release + +Features +-------- +#63 - Generate referential functionality for Oracle + +Version 1.4.0 - October 17, 2010 +================================================================= + +Support for PostGreSQL was added. +Added lots of OR-mapping functionality. +There is a general API change due to various new features. + +Features +-------- +#14 - Add PostGreSQL support +#40 - Resolve foreign keys. Allow for navigation between objects. +#42 - Add PlainSQLField +#45 - Add "dirty" flag to Record's values. This allows for + updating only relevant data. +#47 - Complete implementation for UPDATE, INSERT, DELETE + statements. Added some missing functionality. +#48 - Add more support for Date, Time, Timestamp fields. +#51 - Add a org.jooq.impl.Manager class that provides common + utility methods for CRUD operations + +API changes +----------- +#10 - Add second generic type . This is a + prerequisite for many OR-mapping features +#18 - Use org.jooq.Record in InsertQuery and UpdateQuery +#46 - Create UpdatableRecords as a prerequisite for JPA and true + OR-mapping. These records support store() and delete() + methods +#52 - Add default constructor in generated Records. +#53 - Add refresh functionality to UpdatableRecords. See also #46 +#54 - Add a state to the factory class +#56 - Reduce API, remove unnecessary Condition subinterfaces +#57 - Reduce API, remove unnecessary QueryPart interfaces + +Bugfixes +-------- +#49 - NullPointerException when generating relations on schema + subset +#58 - Count function renders bad SQL in various dialects +#59 - Exception when selecting unaliased functions in queries + +Version 1.3.0 - August 24, 2010 +================================================================= + +Support for HSQLDB was added. +There is a major API change due to #44. + +Features +-------- +#29 - Generate primary keys and foreign keys in Oracle code + generation +#34 - Add support for HSQLDB +#39 - Generate primary keys and foreign keys in HSQLDB code + generation +#41 - Add documentation to QueryFactory and Functions + +API changes +----------- +#23 - Add support for more advanced joins +#32 - Merge SelectQuery and ResultProviderQuery interfaces +#44 - Let Query methods return "this" + +Bugfixes +-------- +#35 - Add unit tests for HSQLDB support +#37 - Syntax error in combined select queries! + The usage of combined queries in MySQL may still be a bit + awkward. Keep an eye out for further fixes +#43 - Join with aliased tables doesn't work + +Version 1.2.0 - August 21, 2010 +================================================================= + +The added Oracle support is now unit tested and more stable. +The Oracle NUMBER data type is mapped more precisely to Java +types. + +Features +-------- +#12 - Model primary keys and foreign keys in generated code +#22 - Improve mapping of Oracle NUMBER data type +#26 - Add Plain SQL QueryParts +#27 - Add support for HAVING clause + +Bugfixes +-------- +#24 - Add Unit tests for oracle database (and fixed bugs) +#31 - Pull up addOrderBy() methods from SelectQuery to + ResultProviderQuery + +Version 1.1.0 - August 17, 2010 +================================================================= + +The main new feature is the Oracle support. Wait for +Version 1.1.1 for that support to be stabilised, as there are no +Oracle unit tests running against an Oracle database yet. + +Features +-------- + +#2 - Add support for inner / nested selects +#3 - Add more function support +#4 - Implement filtering functionality for code generation +#6 - Add Oracle Support +#9 - Create true POJO's (implementing org.jooq.Record) with + getters and setters +#17 - Make org.jooq.impl.Parameter independent of Field + +Bugfixes +-------- + +#11 - Code generation does not remove files + +Version 1.0.1 - August 14, 2010 +================================================================= + +Features +-------- + +#5 - Prevent code regeneration, if no changes were made +#7 - Implement ant task for code generation + +Version 1.0.0 - August 14, 2010 +================================================================================ +Initial Release \ No newline at end of file diff --git a/jOOQ-spring/.classpath b/jOOQ-spring/.classpath new file mode 100644 index 00000000000..ba7d68bcd64 --- /dev/null +++ b/jOOQ-spring/.classpath @@ -0,0 +1,8 @@ + + + + + + + + diff --git a/jOOQ-spring/.gitignore b/jOOQ-spring/.gitignore new file mode 100644 index 00000000000..ea8c4bf7f35 --- /dev/null +++ b/jOOQ-spring/.gitignore @@ -0,0 +1 @@ +/target diff --git a/jOOQ-spring/.project b/jOOQ-spring/.project new file mode 100644 index 00000000000..014b235734c --- /dev/null +++ b/jOOQ-spring/.project @@ -0,0 +1,23 @@ + + + jOOQ-spring + + + + + + org.eclipse.jdt.core.javabuilder + + + + + org.maven.ide.eclipse.maven2Builder + + + + + + org.maven.ide.eclipse.maven2Nature + org.eclipse.jdt.core.javanature + + diff --git a/jOOQ-spring/.settings/org.eclipse.jdt.core.prefs b/jOOQ-spring/.settings/org.eclipse.jdt.core.prefs new file mode 100644 index 00000000000..eea4bca85e9 --- /dev/null +++ b/jOOQ-spring/.settings/org.eclipse.jdt.core.prefs @@ -0,0 +1,350 @@ +#Sat Nov 05 12:53:40 CET 2011 +eclipse.preferences.version=1 +org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled +org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.6 +org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve +org.eclipse.jdt.core.compiler.compliance=1.6 +org.eclipse.jdt.core.compiler.debug.lineNumber=generate +org.eclipse.jdt.core.compiler.debug.localVariable=generate +org.eclipse.jdt.core.compiler.debug.sourceFile=generate +org.eclipse.jdt.core.compiler.problem.annotationSuperInterface=warning +org.eclipse.jdt.core.compiler.problem.assertIdentifier=error +org.eclipse.jdt.core.compiler.problem.autoboxing=ignore +org.eclipse.jdt.core.compiler.problem.comparingIdentical=warning +org.eclipse.jdt.core.compiler.problem.deadCode=warning +org.eclipse.jdt.core.compiler.problem.deprecation=warning +org.eclipse.jdt.core.compiler.problem.deprecationInDeprecatedCode=disabled +org.eclipse.jdt.core.compiler.problem.deprecationWhenOverridingDeprecatedMethod=disabled +org.eclipse.jdt.core.compiler.problem.discouragedReference=warning +org.eclipse.jdt.core.compiler.problem.emptyStatement=ignore +org.eclipse.jdt.core.compiler.problem.enumIdentifier=error +org.eclipse.jdt.core.compiler.problem.fallthroughCase=ignore +org.eclipse.jdt.core.compiler.problem.fatalOptionalError=disabled +org.eclipse.jdt.core.compiler.problem.fieldHiding=warning +org.eclipse.jdt.core.compiler.problem.finalParameterBound=warning +org.eclipse.jdt.core.compiler.problem.finallyBlockNotCompletingNormally=warning +org.eclipse.jdt.core.compiler.problem.forbiddenReference=warning +org.eclipse.jdt.core.compiler.problem.hiddenCatchBlock=warning +org.eclipse.jdt.core.compiler.problem.incompatibleNonInheritedInterfaceMethod=warning +org.eclipse.jdt.core.compiler.problem.incompleteEnumSwitch=ignore +org.eclipse.jdt.core.compiler.problem.indirectStaticAccess=ignore +org.eclipse.jdt.core.compiler.problem.localVariableHiding=warning +org.eclipse.jdt.core.compiler.problem.methodWithConstructorName=warning +org.eclipse.jdt.core.compiler.problem.missingDeprecatedAnnotation=warning +org.eclipse.jdt.core.compiler.problem.missingHashCodeMethod=ignore +org.eclipse.jdt.core.compiler.problem.missingOverrideAnnotation=warning +org.eclipse.jdt.core.compiler.problem.missingOverrideAnnotationForInterfaceMethodImplementation=enabled +org.eclipse.jdt.core.compiler.problem.missingSerialVersion=warning +org.eclipse.jdt.core.compiler.problem.missingSynchronizedOnInheritedMethod=warning +org.eclipse.jdt.core.compiler.problem.noEffectAssignment=warning +org.eclipse.jdt.core.compiler.problem.noImplicitStringConversion=warning +org.eclipse.jdt.core.compiler.problem.nonExternalizedStringLiteral=ignore +org.eclipse.jdt.core.compiler.problem.nullReference=error +org.eclipse.jdt.core.compiler.problem.overridingPackageDefaultMethod=warning +org.eclipse.jdt.core.compiler.problem.parameterAssignment=ignore +org.eclipse.jdt.core.compiler.problem.possibleAccidentalBooleanAssignment=warning +org.eclipse.jdt.core.compiler.problem.potentialNullReference=warning +org.eclipse.jdt.core.compiler.problem.rawTypeReference=warning +org.eclipse.jdt.core.compiler.problem.redundantNullCheck=warning +org.eclipse.jdt.core.compiler.problem.redundantSuperinterface=warning +org.eclipse.jdt.core.compiler.problem.specialParameterHidingField=disabled +org.eclipse.jdt.core.compiler.problem.staticAccessReceiver=warning +org.eclipse.jdt.core.compiler.problem.suppressOptionalErrors=disabled +org.eclipse.jdt.core.compiler.problem.suppressWarnings=enabled +org.eclipse.jdt.core.compiler.problem.syntheticAccessEmulation=ignore +org.eclipse.jdt.core.compiler.problem.typeParameterHiding=warning +org.eclipse.jdt.core.compiler.problem.uncheckedTypeOperation=warning +org.eclipse.jdt.core.compiler.problem.undocumentedEmptyBlock=ignore +org.eclipse.jdt.core.compiler.problem.unhandledWarningToken=warning +org.eclipse.jdt.core.compiler.problem.unnecessaryElse=ignore +org.eclipse.jdt.core.compiler.problem.unnecessaryTypeCheck=warning +org.eclipse.jdt.core.compiler.problem.unqualifiedFieldAccess=ignore +org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownException=warning +org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionExemptExceptionAndThrowable=enabled +org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionIncludeDocCommentReference=enabled +org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionWhenOverriding=disabled +org.eclipse.jdt.core.compiler.problem.unusedImport=warning +org.eclipse.jdt.core.compiler.problem.unusedLabel=warning +org.eclipse.jdt.core.compiler.problem.unusedLocal=warning +org.eclipse.jdt.core.compiler.problem.unusedObjectAllocation=ignore +org.eclipse.jdt.core.compiler.problem.unusedParameter=warning +org.eclipse.jdt.core.compiler.problem.unusedParameterIncludeDocCommentReference=enabled +org.eclipse.jdt.core.compiler.problem.unusedParameterWhenImplementingAbstract=disabled +org.eclipse.jdt.core.compiler.problem.unusedParameterWhenOverridingConcrete=disabled +org.eclipse.jdt.core.compiler.problem.unusedPrivateMember=warning +org.eclipse.jdt.core.compiler.problem.unusedWarningToken=warning +org.eclipse.jdt.core.compiler.problem.varargsArgumentNeedCast=warning +org.eclipse.jdt.core.compiler.source=1.6 +org.eclipse.jdt.core.formatter.align_type_members_on_columns=true +org.eclipse.jdt.core.formatter.alignment_for_arguments_in_allocation_expression=16 +org.eclipse.jdt.core.formatter.alignment_for_arguments_in_annotation=0 +org.eclipse.jdt.core.formatter.alignment_for_arguments_in_enum_constant=16 +org.eclipse.jdt.core.formatter.alignment_for_arguments_in_explicit_constructor_call=16 +org.eclipse.jdt.core.formatter.alignment_for_arguments_in_method_invocation=16 +org.eclipse.jdt.core.formatter.alignment_for_arguments_in_qualified_allocation_expression=16 +org.eclipse.jdt.core.formatter.alignment_for_assignment=0 +org.eclipse.jdt.core.formatter.alignment_for_binary_expression=16 +org.eclipse.jdt.core.formatter.alignment_for_compact_if=16 +org.eclipse.jdt.core.formatter.alignment_for_conditional_expression=80 +org.eclipse.jdt.core.formatter.alignment_for_enum_constants=49 +org.eclipse.jdt.core.formatter.alignment_for_expressions_in_array_initializer=16 +org.eclipse.jdt.core.formatter.alignment_for_method_declaration=0 +org.eclipse.jdt.core.formatter.alignment_for_multiple_fields=16 +org.eclipse.jdt.core.formatter.alignment_for_parameters_in_constructor_declaration=16 +org.eclipse.jdt.core.formatter.alignment_for_parameters_in_method_declaration=16 +org.eclipse.jdt.core.formatter.alignment_for_selector_in_method_invocation=16 +org.eclipse.jdt.core.formatter.alignment_for_superclass_in_type_declaration=16 +org.eclipse.jdt.core.formatter.alignment_for_superinterfaces_in_enum_declaration=16 +org.eclipse.jdt.core.formatter.alignment_for_superinterfaces_in_type_declaration=16 +org.eclipse.jdt.core.formatter.alignment_for_throws_clause_in_constructor_declaration=16 +org.eclipse.jdt.core.formatter.alignment_for_throws_clause_in_method_declaration=16 +org.eclipse.jdt.core.formatter.blank_lines_after_imports=1 +org.eclipse.jdt.core.formatter.blank_lines_after_package=1 +org.eclipse.jdt.core.formatter.blank_lines_before_field=0 +org.eclipse.jdt.core.formatter.blank_lines_before_first_class_body_declaration=0 +org.eclipse.jdt.core.formatter.blank_lines_before_imports=1 +org.eclipse.jdt.core.formatter.blank_lines_before_member_type=1 +org.eclipse.jdt.core.formatter.blank_lines_before_method=1 +org.eclipse.jdt.core.formatter.blank_lines_before_new_chunk=1 +org.eclipse.jdt.core.formatter.blank_lines_before_package=0 +org.eclipse.jdt.core.formatter.blank_lines_between_import_groups=1 +org.eclipse.jdt.core.formatter.blank_lines_between_type_declarations=1 +org.eclipse.jdt.core.formatter.brace_position_for_annotation_type_declaration=end_of_line +org.eclipse.jdt.core.formatter.brace_position_for_anonymous_type_declaration=end_of_line +org.eclipse.jdt.core.formatter.brace_position_for_array_initializer=end_of_line +org.eclipse.jdt.core.formatter.brace_position_for_block=end_of_line +org.eclipse.jdt.core.formatter.brace_position_for_block_in_case=end_of_line +org.eclipse.jdt.core.formatter.brace_position_for_constructor_declaration=end_of_line +org.eclipse.jdt.core.formatter.brace_position_for_enum_constant=end_of_line +org.eclipse.jdt.core.formatter.brace_position_for_enum_declaration=end_of_line +org.eclipse.jdt.core.formatter.brace_position_for_method_declaration=end_of_line +org.eclipse.jdt.core.formatter.brace_position_for_switch=end_of_line +org.eclipse.jdt.core.formatter.brace_position_for_type_declaration=end_of_line +org.eclipse.jdt.core.formatter.comment.clear_blank_lines_in_block_comment=true +org.eclipse.jdt.core.formatter.comment.clear_blank_lines_in_javadoc_comment=true +org.eclipse.jdt.core.formatter.comment.format_block_comments=true +org.eclipse.jdt.core.formatter.comment.format_header=false +org.eclipse.jdt.core.formatter.comment.format_html=true +org.eclipse.jdt.core.formatter.comment.format_javadoc_comments=true +org.eclipse.jdt.core.formatter.comment.format_line_comments=true +org.eclipse.jdt.core.formatter.comment.format_source_code=true +org.eclipse.jdt.core.formatter.comment.indent_parameter_description=true +org.eclipse.jdt.core.formatter.comment.indent_root_tags=true +org.eclipse.jdt.core.formatter.comment.insert_new_line_before_root_tags=insert +org.eclipse.jdt.core.formatter.comment.insert_new_line_for_parameter=do not insert +org.eclipse.jdt.core.formatter.comment.line_length=80 +org.eclipse.jdt.core.formatter.comment.new_lines_at_block_boundaries=true +org.eclipse.jdt.core.formatter.comment.new_lines_at_javadoc_boundaries=true +org.eclipse.jdt.core.formatter.comment.preserve_white_space_between_code_and_line_comments=false +org.eclipse.jdt.core.formatter.compact_else_if=true +org.eclipse.jdt.core.formatter.continuation_indentation=1 +org.eclipse.jdt.core.formatter.continuation_indentation_for_array_initializer=1 +org.eclipse.jdt.core.formatter.disabling_tag=@formatter\:off +org.eclipse.jdt.core.formatter.enabling_tag=@formatter\:on +org.eclipse.jdt.core.formatter.format_guardian_clause_on_one_line=false +org.eclipse.jdt.core.formatter.format_line_comment_starting_on_first_column=true +org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_annotation_declaration_header=true +org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_enum_constant_header=true +org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_enum_declaration_header=true +org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_type_header=true +org.eclipse.jdt.core.formatter.indent_breaks_compare_to_cases=true +org.eclipse.jdt.core.formatter.indent_empty_lines=false +org.eclipse.jdt.core.formatter.indent_statements_compare_to_block=true +org.eclipse.jdt.core.formatter.indent_statements_compare_to_body=true +org.eclipse.jdt.core.formatter.indent_switchstatements_compare_to_cases=true +org.eclipse.jdt.core.formatter.indent_switchstatements_compare_to_switch=true +org.eclipse.jdt.core.formatter.indentation.size=4 +org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_field=insert +org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_local_variable=insert +org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_member=insert +org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_method=insert +org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_package=insert +org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_parameter=do not insert +org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_type=insert +org.eclipse.jdt.core.formatter.insert_new_line_after_label=do not insert +org.eclipse.jdt.core.formatter.insert_new_line_after_opening_brace_in_array_initializer=do not insert +org.eclipse.jdt.core.formatter.insert_new_line_at_end_of_file_if_missing=insert +org.eclipse.jdt.core.formatter.insert_new_line_before_catch_in_try_statement=insert +org.eclipse.jdt.core.formatter.insert_new_line_before_closing_brace_in_array_initializer=do not insert +org.eclipse.jdt.core.formatter.insert_new_line_before_else_in_if_statement=insert +org.eclipse.jdt.core.formatter.insert_new_line_before_finally_in_try_statement=insert +org.eclipse.jdt.core.formatter.insert_new_line_before_while_in_do_statement=insert +org.eclipse.jdt.core.formatter.insert_new_line_in_empty_annotation_declaration=do not insert +org.eclipse.jdt.core.formatter.insert_new_line_in_empty_anonymous_type_declaration=do not insert +org.eclipse.jdt.core.formatter.insert_new_line_in_empty_block=do not insert +org.eclipse.jdt.core.formatter.insert_new_line_in_empty_enum_constant=do not insert +org.eclipse.jdt.core.formatter.insert_new_line_in_empty_enum_declaration=do not insert +org.eclipse.jdt.core.formatter.insert_new_line_in_empty_method_body=do not insert +org.eclipse.jdt.core.formatter.insert_new_line_in_empty_type_declaration=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_and_in_type_parameter=insert +org.eclipse.jdt.core.formatter.insert_space_after_assignment_operator=insert +org.eclipse.jdt.core.formatter.insert_space_after_at_in_annotation=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_at_in_annotation_type_declaration=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_binary_operator=insert +org.eclipse.jdt.core.formatter.insert_space_after_closing_angle_bracket_in_type_arguments=insert +org.eclipse.jdt.core.formatter.insert_space_after_closing_angle_bracket_in_type_parameters=insert +org.eclipse.jdt.core.formatter.insert_space_after_closing_brace_in_block=insert +org.eclipse.jdt.core.formatter.insert_space_after_closing_paren_in_cast=insert +org.eclipse.jdt.core.formatter.insert_space_after_colon_in_assert=insert +org.eclipse.jdt.core.formatter.insert_space_after_colon_in_case=insert +org.eclipse.jdt.core.formatter.insert_space_after_colon_in_conditional=insert +org.eclipse.jdt.core.formatter.insert_space_after_colon_in_for=insert +org.eclipse.jdt.core.formatter.insert_space_after_colon_in_labeled_statement=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_allocation_expression=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_annotation=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_array_initializer=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_constructor_declaration_parameters=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_constructor_declaration_throws=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_enum_constant_arguments=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_enum_declarations=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_explicitconstructorcall_arguments=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_for_increments=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_for_inits=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_method_declaration_parameters=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_method_declaration_throws=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_method_invocation_arguments=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_multiple_field_declarations=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_multiple_local_declarations=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_parameterized_type_reference=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_superinterfaces=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_type_arguments=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_type_parameters=insert +org.eclipse.jdt.core.formatter.insert_space_after_ellipsis=insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_parameterized_type_reference=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_type_arguments=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_type_parameters=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_brace_in_array_initializer=insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_bracket_in_array_allocation_expression=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_bracket_in_array_reference=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_annotation=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_cast=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_catch=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_constructor_declaration=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_enum_constant=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_for=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_if=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_method_declaration=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_method_invocation=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_parenthesized_expression=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_switch=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_synchronized=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_while=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_postfix_operator=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_prefix_operator=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_question_in_conditional=insert +org.eclipse.jdt.core.formatter.insert_space_after_question_in_wildcard=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_semicolon_in_for=insert +org.eclipse.jdt.core.formatter.insert_space_after_unary_operator=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_and_in_type_parameter=insert +org.eclipse.jdt.core.formatter.insert_space_before_assignment_operator=insert +org.eclipse.jdt.core.formatter.insert_space_before_at_in_annotation_type_declaration=insert +org.eclipse.jdt.core.formatter.insert_space_before_binary_operator=insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_angle_bracket_in_parameterized_type_reference=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_angle_bracket_in_type_arguments=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_angle_bracket_in_type_parameters=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_brace_in_array_initializer=insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_bracket_in_array_allocation_expression=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_bracket_in_array_reference=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_annotation=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_cast=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_catch=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_constructor_declaration=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_enum_constant=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_for=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_if=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_method_declaration=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_method_invocation=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_parenthesized_expression=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_switch=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_synchronized=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_while=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_colon_in_assert=insert +org.eclipse.jdt.core.formatter.insert_space_before_colon_in_case=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_colon_in_conditional=insert +org.eclipse.jdt.core.formatter.insert_space_before_colon_in_default=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_colon_in_for=insert +org.eclipse.jdt.core.formatter.insert_space_before_colon_in_labeled_statement=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_allocation_expression=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_annotation=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_array_initializer=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_constructor_declaration_parameters=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_constructor_declaration_throws=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_enum_constant_arguments=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_enum_declarations=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_explicitconstructorcall_arguments=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_for_increments=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_for_inits=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_method_declaration_parameters=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_method_declaration_throws=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_method_invocation_arguments=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_multiple_field_declarations=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_multiple_local_declarations=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_parameterized_type_reference=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_superinterfaces=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_type_arguments=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_type_parameters=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_ellipsis=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_parameterized_type_reference=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_type_arguments=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_type_parameters=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_annotation_type_declaration=insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_anonymous_type_declaration=insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_array_initializer=insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_block=insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_constructor_declaration=insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_enum_constant=insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_enum_declaration=insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_method_declaration=insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_switch=insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_type_declaration=insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_bracket_in_array_allocation_expression=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_bracket_in_array_reference=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_bracket_in_array_type_reference=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_annotation=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_annotation_type_member_declaration=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_catch=insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_constructor_declaration=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_enum_constant=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_for=insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_if=insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_method_declaration=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_method_invocation=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_parenthesized_expression=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_switch=insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_synchronized=insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_while=insert +org.eclipse.jdt.core.formatter.insert_space_before_parenthesized_expression_in_return=insert +org.eclipse.jdt.core.formatter.insert_space_before_parenthesized_expression_in_throw=insert +org.eclipse.jdt.core.formatter.insert_space_before_postfix_operator=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_prefix_operator=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_question_in_conditional=insert +org.eclipse.jdt.core.formatter.insert_space_before_question_in_wildcard=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_semicolon=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_semicolon_in_for=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_unary_operator=do not insert +org.eclipse.jdt.core.formatter.insert_space_between_brackets_in_array_type_reference=do not insert +org.eclipse.jdt.core.formatter.insert_space_between_empty_braces_in_array_initializer=do not insert +org.eclipse.jdt.core.formatter.insert_space_between_empty_brackets_in_array_allocation_expression=do not insert +org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_annotation_type_member_declaration=do not insert +org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_constructor_declaration=do not insert +org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_enum_constant=do not insert +org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_method_declaration=do not insert +org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_method_invocation=do not insert +org.eclipse.jdt.core.formatter.join_lines_in_comments=true +org.eclipse.jdt.core.formatter.join_wrapped_lines=true +org.eclipse.jdt.core.formatter.keep_else_statement_on_same_line=false +org.eclipse.jdt.core.formatter.keep_empty_array_initializer_on_one_line=false +org.eclipse.jdt.core.formatter.keep_imple_if_on_one_line=false +org.eclipse.jdt.core.formatter.keep_then_statement_on_same_line=false +org.eclipse.jdt.core.formatter.lineSplit=120 +org.eclipse.jdt.core.formatter.never_indent_block_comments_on_first_column=false +org.eclipse.jdt.core.formatter.never_indent_line_comments_on_first_column=false +org.eclipse.jdt.core.formatter.number_of_blank_lines_at_beginning_of_method_body=0 +org.eclipse.jdt.core.formatter.number_of_empty_lines_to_preserve=1 +org.eclipse.jdt.core.formatter.put_empty_statement_on_new_line=true +org.eclipse.jdt.core.formatter.tabulation.char=space +org.eclipse.jdt.core.formatter.tabulation.size=4 +org.eclipse.jdt.core.formatter.use_on_off_tags=false +org.eclipse.jdt.core.formatter.use_tabs_only_for_leading_indentations=false +org.eclipse.jdt.core.formatter.wrap_before_binary_operator=true +org.eclipse.jdt.core.formatter.wrap_outer_expressions_when_nested=true diff --git a/jOOQ-spring/.settings/org.eclipse.jdt.ui.prefs b/jOOQ-spring/.settings/org.eclipse.jdt.ui.prefs new file mode 100644 index 00000000000..b07f39ee3e9 --- /dev/null +++ b/jOOQ-spring/.settings/org.eclipse.jdt.ui.prefs @@ -0,0 +1,116 @@ +#Sat Nov 05 13:02:50 CET 2011 +cleanup.add_default_serial_version_id=false +cleanup.add_generated_serial_version_id=true +cleanup.add_missing_annotations=true +cleanup.add_missing_deprecated_annotations=true +cleanup.add_missing_methods=false +cleanup.add_missing_nls_tags=false +cleanup.add_missing_override_annotations=true +cleanup.add_missing_override_annotations_interface_methods=true +cleanup.add_serial_version_id=true +cleanup.always_use_blocks=true +cleanup.always_use_parentheses_in_expressions=false +cleanup.always_use_this_for_non_static_field_access=true +cleanup.always_use_this_for_non_static_method_access=false +cleanup.convert_to_enhanced_for_loop=false +cleanup.correct_indentation=true +cleanup.format_source_code=false +cleanup.format_source_code_changes_only=false +cleanup.make_local_variable_final=true +cleanup.make_parameters_final=false +cleanup.make_private_fields_final=true +cleanup.make_type_abstract_if_missing_method=false +cleanup.make_variable_declarations_final=false +cleanup.never_use_blocks=false +cleanup.never_use_parentheses_in_expressions=true +cleanup.organize_imports=true +cleanup.qualify_static_field_accesses_with_declaring_class=false +cleanup.qualify_static_member_accesses_through_instances_with_declaring_class=true +cleanup.qualify_static_member_accesses_through_subtypes_with_declaring_class=true +cleanup.qualify_static_member_accesses_with_declaring_class=true +cleanup.qualify_static_method_accesses_with_declaring_class=false +cleanup.remove_private_constructors=true +cleanup.remove_trailing_whitespaces=true +cleanup.remove_trailing_whitespaces_all=true +cleanup.remove_trailing_whitespaces_ignore_empty=false +cleanup.remove_unnecessary_casts=true +cleanup.remove_unnecessary_nls_tags=true +cleanup.remove_unused_imports=true +cleanup.remove_unused_local_variables=false +cleanup.remove_unused_private_fields=true +cleanup.remove_unused_private_members=false +cleanup.remove_unused_private_methods=true +cleanup.remove_unused_private_types=true +cleanup.sort_members=false +cleanup.sort_members_all=false +cleanup.use_blocks=true +cleanup.use_blocks_only_for_return_and_throw=false +cleanup.use_parentheses_in_expressions=false +cleanup.use_this_for_non_static_field_access=false +cleanup.use_this_for_non_static_field_access_only_if_necessary=false +cleanup.use_this_for_non_static_method_access=false +cleanup.use_this_for_non_static_method_access_only_if_necessary=true +cleanup_profile=_jOOQ +cleanup_settings_version=2 +eclipse.preferences.version=1 +editor_save_participant_org.eclipse.jdt.ui.postsavelistener.cleanup=true +formatter_profile=_jOOQ +formatter_settings_version=12 +org.eclipse.jdt.ui.ignorelowercasenames=true +org.eclipse.jdt.ui.importorder=java;javax;org.jooq;org;com; +org.eclipse.jdt.ui.javadoc=false +org.eclipse.jdt.ui.ondemandthreshold=99 +org.eclipse.jdt.ui.staticondemandthreshold=99 +org.eclipse.jdt.ui.text.custom_code_templates= +sp_cleanup.add_default_serial_version_id=true +sp_cleanup.add_generated_serial_version_id=false +sp_cleanup.add_missing_annotations=true +sp_cleanup.add_missing_deprecated_annotations=true +sp_cleanup.add_missing_methods=false +sp_cleanup.add_missing_nls_tags=false +sp_cleanup.add_missing_override_annotations=true +sp_cleanup.add_missing_override_annotations_interface_methods=true +sp_cleanup.add_serial_version_id=false +sp_cleanup.always_use_blocks=true +sp_cleanup.always_use_parentheses_in_expressions=false +sp_cleanup.always_use_this_for_non_static_field_access=false +sp_cleanup.always_use_this_for_non_static_method_access=false +sp_cleanup.convert_to_enhanced_for_loop=false +sp_cleanup.correct_indentation=false +sp_cleanup.format_source_code=false +sp_cleanup.format_source_code_changes_only=false +sp_cleanup.make_local_variable_final=false +sp_cleanup.make_parameters_final=false +sp_cleanup.make_private_fields_final=true +sp_cleanup.make_type_abstract_if_missing_method=false +sp_cleanup.make_variable_declarations_final=false +sp_cleanup.never_use_blocks=false +sp_cleanup.never_use_parentheses_in_expressions=true +sp_cleanup.on_save_use_additional_actions=true +sp_cleanup.organize_imports=true +sp_cleanup.qualify_static_field_accesses_with_declaring_class=false +sp_cleanup.qualify_static_member_accesses_through_instances_with_declaring_class=true +sp_cleanup.qualify_static_member_accesses_through_subtypes_with_declaring_class=true +sp_cleanup.qualify_static_member_accesses_with_declaring_class=false +sp_cleanup.qualify_static_method_accesses_with_declaring_class=false +sp_cleanup.remove_private_constructors=true +sp_cleanup.remove_trailing_whitespaces=true +sp_cleanup.remove_trailing_whitespaces_all=true +sp_cleanup.remove_trailing_whitespaces_ignore_empty=false +sp_cleanup.remove_unnecessary_casts=true +sp_cleanup.remove_unnecessary_nls_tags=false +sp_cleanup.remove_unused_imports=true +sp_cleanup.remove_unused_local_variables=false +sp_cleanup.remove_unused_private_fields=true +sp_cleanup.remove_unused_private_members=false +sp_cleanup.remove_unused_private_methods=true +sp_cleanup.remove_unused_private_types=true +sp_cleanup.sort_members=false +sp_cleanup.sort_members_all=false +sp_cleanup.use_blocks=false +sp_cleanup.use_blocks_only_for_return_and_throw=false +sp_cleanup.use_parentheses_in_expressions=false +sp_cleanup.use_this_for_non_static_field_access=false +sp_cleanup.use_this_for_non_static_field_access_only_if_necessary=true +sp_cleanup.use_this_for_non_static_method_access=false +sp_cleanup.use_this_for_non_static_method_access_only_if_necessary=true diff --git a/jOOQ-spring/.settings/org.maven.ide.eclipse.prefs b/jOOQ-spring/.settings/org.maven.ide.eclipse.prefs new file mode 100644 index 00000000000..c5172a20ac8 --- /dev/null +++ b/jOOQ-spring/.settings/org.maven.ide.eclipse.prefs @@ -0,0 +1,8 @@ +#Sun Apr 10 10:03:42 CEST 2011 +activeProfiles= +eclipse.preferences.version=1 +fullBuildGoals=process-test-resources +resolveWorkspaceProjects=true +resourceFilterGoals=process-resources resources\:testResources +skipCompilerPlugin=true +version=1 diff --git a/jOOQ-spring/LICENSE.txt b/jOOQ-spring/LICENSE.txt new file mode 100644 index 00000000000..fd12d44afa0 --- /dev/null +++ b/jOOQ-spring/LICENSE.txt @@ -0,0 +1,33 @@ + Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com + All rights reserved. + + This software is licensed to you under the Apache License, Version 2.0 + (the "License"); You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + 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 "jOOQ" 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 COPYRIGHT OWNER 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. \ No newline at end of file diff --git a/jOOQ-spring/pom.xml b/jOOQ-spring/pom.xml new file mode 100644 index 00000000000..35afafdbff7 --- /dev/null +++ b/jOOQ-spring/pom.xml @@ -0,0 +1,203 @@ + + + + oss-parent + org.sonatype.oss + 7 + + 4.0.0 + + org.jooq + jooq-spring + 2.2.0 + jar + + jOOQ Spring + jOOQ effectively combines complex SQL, typesafety, source code generation, active records, stored procedures, advanced data types, and Java in a fluent, intuitive DSL. + http://www.jooq.org + + + + + Apache License, Version 2.0 + http://www.jooq.org/inc/LICENSE.txt + repo + + + + + scm:svn:https://jooq.svn.sourceforge.net/svnroot/jooq + https://jooq.svn.sourceforge.net/svnroot/jooq + scm:svn:https://jooq.svn.sourceforge.net/svnroot/jooq + + + + deploy + ${project.artifactId}-${project.version} + + + + org.apache.maven.plugins + maven-gpg-plugin + 1.1 + + + sign-artifacts + verify + + sign + + + + + + + org.apache.maven.plugins + maven-compiler-plugin + 2.3.2 + + true + 512m + 256m + UTF-8 + 1.6 + 1.6 + true + lines,vars,source + + + + + true + org.apache.maven.plugins + maven-source-plugin + 2.1.2 + + + attach-sources + + jar + + + + + + true + true + + + + + true + org.apache.maven.plugins + maven-javadoc-plugin + 2.7 + + + bundle-sources + package + + jar + + + + + 512 + UTF-8 + protected + true + + + + + org.apache.maven.plugins + maven-resources-plugin + 2.5 + + UTF-8 + + + + + org.apache.maven.plugins + maven-eclipse-plugin + 2.8 + + true + + + + + org.apache.felix + maven-bundle-plugin + 2.1.0 + true + + + bundle-manifest + process-classes + + manifest + + + + + + jar + + + ${project.artifactId} + * + * + <_versionpolicy>[$(version;==;$(@)),$(version;+;$(@))) + + + + + org.apache.maven.plugins + maven-jar-plugin + 2.3.2 + + + + ${project.build.outputDirectory}/META-INF/MANIFEST.MF + + + + + + + + Trac + https://sourceforge.net/apps/trac/jooq/report/6 + + + + + Lukas Eder + lukas.eder@gmail.com + + + Sergey Epik + sergey.epik@gmail.com + + + + + + org.jooq + jooq + 2.2.0 + jar + compile + + + org.springframework + spring-jdbc + 3.0.6.RELEASE + jar + provided + + + \ No newline at end of file diff --git a/jOOQ-spring/src/main/java/org/jooq/util/spring/FactoryProxy.java b/jOOQ-spring/src/main/java/org/jooq/util/spring/FactoryProxy.java new file mode 100644 index 00000000000..b7830daee50 --- /dev/null +++ b/jOOQ-spring/src/main/java/org/jooq/util/spring/FactoryProxy.java @@ -0,0 +1,608 @@ +/** + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com + * All rights reserved. + * + * This software is licensed to you under the Apache License, Version 2.0 + * (the "License"); You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * 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 "jOOQ" 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 COPYRIGHT OWNER 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. + */ +package org.jooq.util.spring; + +import java.lang.reflect.Constructor; +import java.math.BigInteger; +import java.sql.Connection; +import java.sql.ResultSet; +import java.sql.SQLException; +import java.util.Collection; +import java.util.List; +import java.util.Map; + +import javax.sql.DataSource; + +import org.jooq.Attachable; +import org.jooq.Batch; +import org.jooq.BatchBindStep; +import org.jooq.Condition; +import org.jooq.Cursor; +import org.jooq.DeleteQuery; +import org.jooq.DeleteWhereStep; +import org.jooq.FactoryOperations; +import org.jooq.Field; +import org.jooq.Insert; +import org.jooq.InsertQuery; +import org.jooq.InsertSetStep; +import org.jooq.InsertValuesStep; +import org.jooq.LoaderOptionsStep; +import org.jooq.MergeUsingStep; +import org.jooq.Query; +import org.jooq.QueryPart; +import org.jooq.Record; +import org.jooq.Result; +import org.jooq.ResultQuery; +import org.jooq.SQLDialect; +import org.jooq.Schema; +import org.jooq.SchemaMapping; +import org.jooq.Select; +import org.jooq.SelectQuery; +import org.jooq.SelectSelectStep; +import org.jooq.Sequence; +import org.jooq.SimpleSelectQuery; +import org.jooq.SimpleSelectWhereStep; +import org.jooq.Table; +import org.jooq.TableLike; +import org.jooq.TableRecord; +import org.jooq.Truncate; +import org.jooq.UDT; +import org.jooq.UDTRecord; +import org.jooq.UpdateQuery; +import org.jooq.UpdateSetStep; +import org.jooq.conf.Settings; +import org.jooq.exception.DataAccessException; +import org.jooq.impl.Factory; +import org.jooq.tools.JooqLogger; + +import org.aopalliance.intercept.MethodInterceptor; +import org.aopalliance.intercept.MethodInvocation; +import org.springframework.beans.factory.annotation.Required; +import org.springframework.jdbc.datasource.DataSourceUtils; +import org.springframework.jdbc.support.nativejdbc.NativeJdbcExtractor; + +/** + * A spring-enabled proxy for the jOOQ {@link Factory} + * + * @author Sergey Epik + * @author Lukas Eder + */ +@SuppressWarnings("deprecation") +public class FactoryProxy implements FactoryOperations, MethodInterceptor { + + /** + * Generated UID + */ + private static final long serialVersionUID = -8475057043526340066L; + private static JooqLogger log = JooqLogger.getLogger(FactoryProxy.class); + private static ThreadLocal currentFactory = new ThreadLocal(); + private static ThreadLocal currentConnection = new ThreadLocal(); + + private transient DataSource dataSource; + private SQLDialect dialect; + private SchemaMapping schemaMapping; + private Settings settings; + private NativeJdbcExtractor nativeJdbcExtractor; + + // ------------------------------------------------------------------------- + // XXX Spring injection API + // ------------------------------------------------------------------------- + + @Required + public final void setDialect(SQLDialect dialect) { + this.dialect = dialect; + } + + public final void setSchemaMapping(SchemaMapping schemaMapping) { + this.schemaMapping = schemaMapping; + + log.warn("DEPRECATION", "org.jooq.SchemaMapping is deprecated as of jOOQ 2.0.5. Consider using jOOQ's runtime configuration org.jooq.conf.Settings instead"); + } + + public final void setSettings(Settings settings) { + this.settings = settings; + } + + @Required + public final void setDataSource(DataSource dataSource) { + this.dataSource = dataSource; + } + + public final DataSource getDataSource() { + return this.dataSource; + } + + /** + * Set a NativeJdbcExtractor to extract native JDBC objects from wrapped + * handles. Useful if native Statement and/or ResultSet handles are expected + * for casting to database-specific implementation classes, but a connection + * pool that wraps JDBC objects is used (note: any pool will return + * wrapped Connections). + */ + public final void setNativeJdbcExtractor(NativeJdbcExtractor extractor) { + this.nativeJdbcExtractor = extractor; + } + + /** + * Return the current NativeJdbcExtractor implementation. + */ + public final NativeJdbcExtractor getNativeJdbcExtractor() { + return this.nativeJdbcExtractor; + } + + // ------------------------------------------------------------------------- + // XXX Configuration API + // ------------------------------------------------------------------------- + + @Override + public final SQLDialect getDialect() { + return dialect; + } + + @Override + @Deprecated + public final SchemaMapping getSchemaMapping() { + return schemaMapping; + } + + @Override + public final Settings getSettings() { + return settings; + } + + @Override + public final Connection getConnection() { + return getDelegate().getConnection(); + } + + @Override + public final void setConnection(Connection connection) { + getDelegate().setConnection(connection); + } + + @Override + public final Map getData() { + return getDelegate().getData(); + } + + @Override + public final Object getData(String key) { + return getDelegate().getData(key); + } + + @Override + public final Object setData(String key, Object value) { + return getDelegate().setData(key, value); + } + + // ------------------------------------------------------------------------- + // XXX FactoryOperations API + // ------------------------------------------------------------------------- + + @Override + public final > LoaderOptionsStep loadInto(Table table) { + return getDelegate().loadInto(table); + } + + @Override + public final String render(QueryPart part) { + return getDelegate().render(part); + } + + @Override + public final String renderNamedParams(QueryPart part) { + return getDelegate().renderNamedParams(part); + } + + @Override + public final String renderInlined(QueryPart part) { + return getDelegate().renderInlined(part); + } + + @Override + public final void attach(Attachable... attachables) { + getDelegate().attach(attachables); + } + + @Override + public final void attach(Collection attachables) { + getDelegate().attach(attachables); + } + + @Override + public final Query query(String sql) { + return getDelegate().query(sql); + } + + @Override + public final Query query(String sql, Object... bindings) { + return getDelegate().query(sql, bindings); + } + + @Override + public final SimpleSelectWhereStep selectFrom(Table table) { + return getDelegate().selectFrom(table); + } + + @Override + public final SelectSelectStep select(Field... fields) { + return getDelegate().select(fields); + } + + @Override + public final SelectSelectStep selectZero() { + return getDelegate().selectZero(); + } + + @Override + public final SelectSelectStep selectOne() { + return getDelegate().selectOne(); + } + + @Override + public final SelectSelectStep selectCount() { + return getDelegate().selectCount(); + } + + @Override + public final SelectSelectStep selectDistinct(Field... fields) { + return getDelegate().selectDistinct(fields); + } + + @Override + public final SelectSelectStep select(Collection> fields) { + return getDelegate().select(fields); + } + + @Override + public final SelectSelectStep selectDistinct(Collection> fields) { + return getDelegate().selectDistinct(fields); + } + + @Override + public final SelectQuery selectQuery() { + return getDelegate().selectQuery(); + } + + @Override + public final SimpleSelectQuery selectQuery(TableLike table) { + return getDelegate().selectQuery(table); + } + + @Override + public final InsertQuery insertQuery(Table into) { + return getDelegate().insertQuery(into); + } + + @Override + public final InsertSetStep insertInto(Table into) { + return getDelegate().insertInto(into); + } + + @Override + public final InsertValuesStep insertInto(Table into, Field... fields) { + return getDelegate().insertInto(into, fields); + } + + @Override + public final InsertValuesStep insertInto(Table into, Collection> fields) { + return getDelegate().insertInto(into, fields); + } + + @Override + @Deprecated + public final Insert insertInto(Table into, Select select) { + return getDelegate().insertInto(into, select); + } + + @Override + public final UpdateQuery updateQuery(Table table) { + return getDelegate().updateQuery(table); + } + + @Override + public final UpdateSetStep update(Table table) { + return getDelegate().update(table); + } + + @Override + public final MergeUsingStep mergeInto(Table table) { + return getDelegate().mergeInto(table); + } + + @Override + public final DeleteQuery deleteQuery(Table table) { + return getDelegate().deleteQuery(table); + } + + @Override + public final DeleteWhereStep delete(Table table) { + return getDelegate().delete(table); + } + + @Override + public final Batch batch(Query... queries) { + return getDelegate().batch(queries); + } + + @Override + public final Batch batch(Collection queries) { + return getDelegate().batch(queries); + } + + @Override + public final BatchBindStep batch(Query query) { + return getDelegate().batch(query); + } + + @Override + public final > Truncate truncate(Table table) { + return getDelegate().truncate(table); + } + + @Override + public final > R newRecord(UDT type) { + return getDelegate().newRecord(type); + } + + @Override + public final > R newRecord(Table table) { + return getDelegate().newRecord(table); + } + + @Override + public final > R newRecord(Table table, Object source) { + return getDelegate().newRecord(table, source); + } + + @Override + public final Result fetch(ResultSet rs) { + return getDelegate().fetch(rs); + } + + @Override + public final Result fetch(String sql) { + return getDelegate().fetch(sql); + } + + @Override + public final Result fetch(String sql, Object... bindings) { + return getDelegate().fetch(sql, bindings); + } + + @Override + public final Cursor fetchLazy(String sql) throws DataAccessException { + return getDelegate().fetchLazy(sql); + } + + @Override + public final Cursor fetchLazy(String sql, Object... bindings) throws DataAccessException { + return getDelegate().fetchLazy(sql, bindings); + } + + @Override + public final List> fetchMany(String sql) { + return getDelegate().fetchMany(sql); + } + + @Override + public final List> fetchMany(String sql, Object... bindings) { + return getDelegate().fetchMany(sql, bindings); + } + + @Override + public final Record fetchOne(String sql) { + return getDelegate().fetchOne(sql); + } + + @Override + public final Record fetchOne(String sql, Object... bindings) { + return getDelegate().fetchOne(sql, bindings); + } + + @Override + public final int execute(String sql) throws DataAccessException { + return getDelegate().execute(sql); + } + + @Override + public final int execute(String sql, Object... bindings) throws DataAccessException { + return getDelegate().execute(sql, bindings); + } + + @Override + public final ResultQuery resultQuery(String sql) throws DataAccessException { + return getDelegate().resultQuery(sql); + } + + @Override + public final ResultQuery resultQuery(String sql, Object... bindings) throws DataAccessException { + return getDelegate().resultQuery(sql, bindings); + } + + @Override + public final BigInteger lastID() { + return getDelegate().lastID(); + } + + @Override + public final T nextval(Sequence sequence) { + return getDelegate().nextval(sequence); + } + + @Override + public final T currval(Sequence sequence) { + return getDelegate().currval(sequence); + } + + @Override + public final int use(Schema schema) { + return getDelegate().use(schema); + } + + @Override + public final int use(String schema) { + return getDelegate().use(schema); + } + + @Override + public final Result fetch(Table table) { + return getDelegate().fetch(table); + } + + @Override + public final Result fetch(Table table, Condition condition) { + return getDelegate().fetch(table, condition); + } + + @Override + public final R fetchOne(Table table) { + return getDelegate().fetchOne(table); + } + + @Override + public final R fetchOne(Table table, Condition condition) { + return getDelegate().fetchOne(table, condition); + } + + @Override + public final R fetchAny(Table table) { + return getDelegate().fetchAny(table); + } + + @Override + public final > int executeInsert(Table table, R record) { + return getDelegate().executeInsert(table, record); + } + + @Override + public final > int executeUpdate(Table table, R record) { + return getDelegate().executeUpdate(table, record); + } + + @Override + public final , T> int executeUpdate(Table table, R record, Condition condition) { + return getDelegate().executeUpdate(table, record, condition); + } + + @Override + public final > int executeUpdateOne(Table table, R record) { + return getDelegate().executeUpdateOne(table, record); + } + + @Override + public final , T> int executeUpdateOne(Table table, R record, Condition condition) { + return getDelegate().executeUpdateOne(table, record, condition); + } + + @Override + public final > int executeDelete(Table table) { + return getDelegate().executeDelete(table); + } + + @Override + public final , T> int executeDelete(Table table, Condition condition) { + return getDelegate().executeDelete(table, condition); + } + + @Override + public final > int executeDeleteOne(Table table) { + return getDelegate().executeDeleteOne(table); + } + + @Override + public final , T> int executeDeleteOne(Table table, Condition condition) { + return getDelegate().executeDeleteOne(table, condition); + } + + @Override + public Object invoke(MethodInvocation invocation) throws Throwable { + try { + return invocation.proceed(); + } + finally { + cleanLocalFactory(); + } + } + + private final Factory getDelegate() { + Factory factory = currentFactory.get(); + + if (factory == null) { + factory = createFactory(); + } + + return factory; + } + + private final Factory createFactory() { + try { + Class clazz = getDialect().getFactory(); + Constructor constructor = clazz.getConstructor(Connection.class, Settings.class); + Connection con = DataSourceUtils.getConnection(getDataSource()); + Connection conToUse = con; + + if (nativeJdbcExtractor != null) { + conToUse = nativeJdbcExtractor.getNativeConnection(con); + } + + Factory factory = constructor.newInstance(conToUse, getSettings()); + currentFactory.set(factory); + currentConnection.set(con); + + return factory; + } + catch (Exception exc) { + throw new DataAccessException("Failed to create jOOQ Factory", exc); + } + } + + private final void cleanLocalFactory() { + Connection conn = currentConnection.get(); + + if (conn != null) { + try { + conn.close(); + } + catch (SQLException ignore) { + log.warn("Could not close JDBC Connection", ignore); + } + } + + currentFactory.remove(); + currentConnection.remove(); + } +} diff --git a/jOOQ-spring/src/main/resources/META-INF/LICENSE.txt b/jOOQ-spring/src/main/resources/META-INF/LICENSE.txt new file mode 100644 index 00000000000..fd12d44afa0 --- /dev/null +++ b/jOOQ-spring/src/main/resources/META-INF/LICENSE.txt @@ -0,0 +1,33 @@ + Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com + All rights reserved. + + This software is licensed to you under the Apache License, Version 2.0 + (the "License"); You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + 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 "jOOQ" 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 COPYRIGHT OWNER 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. \ No newline at end of file diff --git a/jOOQ-spring/src/main/resources/META-INF/README.txt b/jOOQ-spring/src/main/resources/META-INF/README.txt new file mode 100644 index 00000000000..3e6e227e05b --- /dev/null +++ b/jOOQ-spring/src/main/resources/META-INF/README.txt @@ -0,0 +1,2 @@ +Thanks for downloading jOOQ. +Please visit http://www.jooq.org for more information. \ No newline at end of file diff --git a/jOOQ-test/.classpath b/jOOQ-test/.classpath new file mode 100644 index 00000000000..b69656f145c --- /dev/null +++ b/jOOQ-test/.classpath @@ -0,0 +1,32 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/jOOQ-test/.gitignore b/jOOQ-test/.gitignore new file mode 100644 index 00000000000..e53598c21e4 --- /dev/null +++ b/jOOQ-test/.gitignore @@ -0,0 +1,2 @@ +/hsqldb +/sqlite diff --git a/jOOQ-test/.project b/jOOQ-test/.project new file mode 100644 index 00000000000..825b63870a9 --- /dev/null +++ b/jOOQ-test/.project @@ -0,0 +1,18 @@ + + + jOOQ-test + + + + + + org.eclipse.jdt.core.javabuilder + + + + + + com.quest.toadext.ToadextNature + org.eclipse.jdt.core.javanature + + diff --git a/jOOQ-test/.settings/org.eclipse.jdt.core.prefs b/jOOQ-test/.settings/org.eclipse.jdt.core.prefs new file mode 100644 index 00000000000..eea4bca85e9 --- /dev/null +++ b/jOOQ-test/.settings/org.eclipse.jdt.core.prefs @@ -0,0 +1,350 @@ +#Sat Nov 05 12:53:40 CET 2011 +eclipse.preferences.version=1 +org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled +org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.6 +org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve +org.eclipse.jdt.core.compiler.compliance=1.6 +org.eclipse.jdt.core.compiler.debug.lineNumber=generate +org.eclipse.jdt.core.compiler.debug.localVariable=generate +org.eclipse.jdt.core.compiler.debug.sourceFile=generate +org.eclipse.jdt.core.compiler.problem.annotationSuperInterface=warning +org.eclipse.jdt.core.compiler.problem.assertIdentifier=error +org.eclipse.jdt.core.compiler.problem.autoboxing=ignore +org.eclipse.jdt.core.compiler.problem.comparingIdentical=warning +org.eclipse.jdt.core.compiler.problem.deadCode=warning +org.eclipse.jdt.core.compiler.problem.deprecation=warning +org.eclipse.jdt.core.compiler.problem.deprecationInDeprecatedCode=disabled +org.eclipse.jdt.core.compiler.problem.deprecationWhenOverridingDeprecatedMethod=disabled +org.eclipse.jdt.core.compiler.problem.discouragedReference=warning +org.eclipse.jdt.core.compiler.problem.emptyStatement=ignore +org.eclipse.jdt.core.compiler.problem.enumIdentifier=error +org.eclipse.jdt.core.compiler.problem.fallthroughCase=ignore +org.eclipse.jdt.core.compiler.problem.fatalOptionalError=disabled +org.eclipse.jdt.core.compiler.problem.fieldHiding=warning +org.eclipse.jdt.core.compiler.problem.finalParameterBound=warning +org.eclipse.jdt.core.compiler.problem.finallyBlockNotCompletingNormally=warning +org.eclipse.jdt.core.compiler.problem.forbiddenReference=warning +org.eclipse.jdt.core.compiler.problem.hiddenCatchBlock=warning +org.eclipse.jdt.core.compiler.problem.incompatibleNonInheritedInterfaceMethod=warning +org.eclipse.jdt.core.compiler.problem.incompleteEnumSwitch=ignore +org.eclipse.jdt.core.compiler.problem.indirectStaticAccess=ignore +org.eclipse.jdt.core.compiler.problem.localVariableHiding=warning +org.eclipse.jdt.core.compiler.problem.methodWithConstructorName=warning +org.eclipse.jdt.core.compiler.problem.missingDeprecatedAnnotation=warning +org.eclipse.jdt.core.compiler.problem.missingHashCodeMethod=ignore +org.eclipse.jdt.core.compiler.problem.missingOverrideAnnotation=warning +org.eclipse.jdt.core.compiler.problem.missingOverrideAnnotationForInterfaceMethodImplementation=enabled +org.eclipse.jdt.core.compiler.problem.missingSerialVersion=warning +org.eclipse.jdt.core.compiler.problem.missingSynchronizedOnInheritedMethod=warning +org.eclipse.jdt.core.compiler.problem.noEffectAssignment=warning +org.eclipse.jdt.core.compiler.problem.noImplicitStringConversion=warning +org.eclipse.jdt.core.compiler.problem.nonExternalizedStringLiteral=ignore +org.eclipse.jdt.core.compiler.problem.nullReference=error +org.eclipse.jdt.core.compiler.problem.overridingPackageDefaultMethod=warning +org.eclipse.jdt.core.compiler.problem.parameterAssignment=ignore +org.eclipse.jdt.core.compiler.problem.possibleAccidentalBooleanAssignment=warning +org.eclipse.jdt.core.compiler.problem.potentialNullReference=warning +org.eclipse.jdt.core.compiler.problem.rawTypeReference=warning +org.eclipse.jdt.core.compiler.problem.redundantNullCheck=warning +org.eclipse.jdt.core.compiler.problem.redundantSuperinterface=warning +org.eclipse.jdt.core.compiler.problem.specialParameterHidingField=disabled +org.eclipse.jdt.core.compiler.problem.staticAccessReceiver=warning +org.eclipse.jdt.core.compiler.problem.suppressOptionalErrors=disabled +org.eclipse.jdt.core.compiler.problem.suppressWarnings=enabled +org.eclipse.jdt.core.compiler.problem.syntheticAccessEmulation=ignore +org.eclipse.jdt.core.compiler.problem.typeParameterHiding=warning +org.eclipse.jdt.core.compiler.problem.uncheckedTypeOperation=warning +org.eclipse.jdt.core.compiler.problem.undocumentedEmptyBlock=ignore +org.eclipse.jdt.core.compiler.problem.unhandledWarningToken=warning +org.eclipse.jdt.core.compiler.problem.unnecessaryElse=ignore +org.eclipse.jdt.core.compiler.problem.unnecessaryTypeCheck=warning +org.eclipse.jdt.core.compiler.problem.unqualifiedFieldAccess=ignore +org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownException=warning +org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionExemptExceptionAndThrowable=enabled +org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionIncludeDocCommentReference=enabled +org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionWhenOverriding=disabled +org.eclipse.jdt.core.compiler.problem.unusedImport=warning +org.eclipse.jdt.core.compiler.problem.unusedLabel=warning +org.eclipse.jdt.core.compiler.problem.unusedLocal=warning +org.eclipse.jdt.core.compiler.problem.unusedObjectAllocation=ignore +org.eclipse.jdt.core.compiler.problem.unusedParameter=warning +org.eclipse.jdt.core.compiler.problem.unusedParameterIncludeDocCommentReference=enabled +org.eclipse.jdt.core.compiler.problem.unusedParameterWhenImplementingAbstract=disabled +org.eclipse.jdt.core.compiler.problem.unusedParameterWhenOverridingConcrete=disabled +org.eclipse.jdt.core.compiler.problem.unusedPrivateMember=warning +org.eclipse.jdt.core.compiler.problem.unusedWarningToken=warning +org.eclipse.jdt.core.compiler.problem.varargsArgumentNeedCast=warning +org.eclipse.jdt.core.compiler.source=1.6 +org.eclipse.jdt.core.formatter.align_type_members_on_columns=true +org.eclipse.jdt.core.formatter.alignment_for_arguments_in_allocation_expression=16 +org.eclipse.jdt.core.formatter.alignment_for_arguments_in_annotation=0 +org.eclipse.jdt.core.formatter.alignment_for_arguments_in_enum_constant=16 +org.eclipse.jdt.core.formatter.alignment_for_arguments_in_explicit_constructor_call=16 +org.eclipse.jdt.core.formatter.alignment_for_arguments_in_method_invocation=16 +org.eclipse.jdt.core.formatter.alignment_for_arguments_in_qualified_allocation_expression=16 +org.eclipse.jdt.core.formatter.alignment_for_assignment=0 +org.eclipse.jdt.core.formatter.alignment_for_binary_expression=16 +org.eclipse.jdt.core.formatter.alignment_for_compact_if=16 +org.eclipse.jdt.core.formatter.alignment_for_conditional_expression=80 +org.eclipse.jdt.core.formatter.alignment_for_enum_constants=49 +org.eclipse.jdt.core.formatter.alignment_for_expressions_in_array_initializer=16 +org.eclipse.jdt.core.formatter.alignment_for_method_declaration=0 +org.eclipse.jdt.core.formatter.alignment_for_multiple_fields=16 +org.eclipse.jdt.core.formatter.alignment_for_parameters_in_constructor_declaration=16 +org.eclipse.jdt.core.formatter.alignment_for_parameters_in_method_declaration=16 +org.eclipse.jdt.core.formatter.alignment_for_selector_in_method_invocation=16 +org.eclipse.jdt.core.formatter.alignment_for_superclass_in_type_declaration=16 +org.eclipse.jdt.core.formatter.alignment_for_superinterfaces_in_enum_declaration=16 +org.eclipse.jdt.core.formatter.alignment_for_superinterfaces_in_type_declaration=16 +org.eclipse.jdt.core.formatter.alignment_for_throws_clause_in_constructor_declaration=16 +org.eclipse.jdt.core.formatter.alignment_for_throws_clause_in_method_declaration=16 +org.eclipse.jdt.core.formatter.blank_lines_after_imports=1 +org.eclipse.jdt.core.formatter.blank_lines_after_package=1 +org.eclipse.jdt.core.formatter.blank_lines_before_field=0 +org.eclipse.jdt.core.formatter.blank_lines_before_first_class_body_declaration=0 +org.eclipse.jdt.core.formatter.blank_lines_before_imports=1 +org.eclipse.jdt.core.formatter.blank_lines_before_member_type=1 +org.eclipse.jdt.core.formatter.blank_lines_before_method=1 +org.eclipse.jdt.core.formatter.blank_lines_before_new_chunk=1 +org.eclipse.jdt.core.formatter.blank_lines_before_package=0 +org.eclipse.jdt.core.formatter.blank_lines_between_import_groups=1 +org.eclipse.jdt.core.formatter.blank_lines_between_type_declarations=1 +org.eclipse.jdt.core.formatter.brace_position_for_annotation_type_declaration=end_of_line +org.eclipse.jdt.core.formatter.brace_position_for_anonymous_type_declaration=end_of_line +org.eclipse.jdt.core.formatter.brace_position_for_array_initializer=end_of_line +org.eclipse.jdt.core.formatter.brace_position_for_block=end_of_line +org.eclipse.jdt.core.formatter.brace_position_for_block_in_case=end_of_line +org.eclipse.jdt.core.formatter.brace_position_for_constructor_declaration=end_of_line +org.eclipse.jdt.core.formatter.brace_position_for_enum_constant=end_of_line +org.eclipse.jdt.core.formatter.brace_position_for_enum_declaration=end_of_line +org.eclipse.jdt.core.formatter.brace_position_for_method_declaration=end_of_line +org.eclipse.jdt.core.formatter.brace_position_for_switch=end_of_line +org.eclipse.jdt.core.formatter.brace_position_for_type_declaration=end_of_line +org.eclipse.jdt.core.formatter.comment.clear_blank_lines_in_block_comment=true +org.eclipse.jdt.core.formatter.comment.clear_blank_lines_in_javadoc_comment=true +org.eclipse.jdt.core.formatter.comment.format_block_comments=true +org.eclipse.jdt.core.formatter.comment.format_header=false +org.eclipse.jdt.core.formatter.comment.format_html=true +org.eclipse.jdt.core.formatter.comment.format_javadoc_comments=true +org.eclipse.jdt.core.formatter.comment.format_line_comments=true +org.eclipse.jdt.core.formatter.comment.format_source_code=true +org.eclipse.jdt.core.formatter.comment.indent_parameter_description=true +org.eclipse.jdt.core.formatter.comment.indent_root_tags=true +org.eclipse.jdt.core.formatter.comment.insert_new_line_before_root_tags=insert +org.eclipse.jdt.core.formatter.comment.insert_new_line_for_parameter=do not insert +org.eclipse.jdt.core.formatter.comment.line_length=80 +org.eclipse.jdt.core.formatter.comment.new_lines_at_block_boundaries=true +org.eclipse.jdt.core.formatter.comment.new_lines_at_javadoc_boundaries=true +org.eclipse.jdt.core.formatter.comment.preserve_white_space_between_code_and_line_comments=false +org.eclipse.jdt.core.formatter.compact_else_if=true +org.eclipse.jdt.core.formatter.continuation_indentation=1 +org.eclipse.jdt.core.formatter.continuation_indentation_for_array_initializer=1 +org.eclipse.jdt.core.formatter.disabling_tag=@formatter\:off +org.eclipse.jdt.core.formatter.enabling_tag=@formatter\:on +org.eclipse.jdt.core.formatter.format_guardian_clause_on_one_line=false +org.eclipse.jdt.core.formatter.format_line_comment_starting_on_first_column=true +org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_annotation_declaration_header=true +org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_enum_constant_header=true +org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_enum_declaration_header=true +org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_type_header=true +org.eclipse.jdt.core.formatter.indent_breaks_compare_to_cases=true +org.eclipse.jdt.core.formatter.indent_empty_lines=false +org.eclipse.jdt.core.formatter.indent_statements_compare_to_block=true +org.eclipse.jdt.core.formatter.indent_statements_compare_to_body=true +org.eclipse.jdt.core.formatter.indent_switchstatements_compare_to_cases=true +org.eclipse.jdt.core.formatter.indent_switchstatements_compare_to_switch=true +org.eclipse.jdt.core.formatter.indentation.size=4 +org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_field=insert +org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_local_variable=insert +org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_member=insert +org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_method=insert +org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_package=insert +org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_parameter=do not insert +org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_type=insert +org.eclipse.jdt.core.formatter.insert_new_line_after_label=do not insert +org.eclipse.jdt.core.formatter.insert_new_line_after_opening_brace_in_array_initializer=do not insert +org.eclipse.jdt.core.formatter.insert_new_line_at_end_of_file_if_missing=insert +org.eclipse.jdt.core.formatter.insert_new_line_before_catch_in_try_statement=insert +org.eclipse.jdt.core.formatter.insert_new_line_before_closing_brace_in_array_initializer=do not insert +org.eclipse.jdt.core.formatter.insert_new_line_before_else_in_if_statement=insert +org.eclipse.jdt.core.formatter.insert_new_line_before_finally_in_try_statement=insert +org.eclipse.jdt.core.formatter.insert_new_line_before_while_in_do_statement=insert +org.eclipse.jdt.core.formatter.insert_new_line_in_empty_annotation_declaration=do not insert +org.eclipse.jdt.core.formatter.insert_new_line_in_empty_anonymous_type_declaration=do not insert +org.eclipse.jdt.core.formatter.insert_new_line_in_empty_block=do not insert +org.eclipse.jdt.core.formatter.insert_new_line_in_empty_enum_constant=do not insert +org.eclipse.jdt.core.formatter.insert_new_line_in_empty_enum_declaration=do not insert +org.eclipse.jdt.core.formatter.insert_new_line_in_empty_method_body=do not insert +org.eclipse.jdt.core.formatter.insert_new_line_in_empty_type_declaration=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_and_in_type_parameter=insert +org.eclipse.jdt.core.formatter.insert_space_after_assignment_operator=insert +org.eclipse.jdt.core.formatter.insert_space_after_at_in_annotation=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_at_in_annotation_type_declaration=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_binary_operator=insert +org.eclipse.jdt.core.formatter.insert_space_after_closing_angle_bracket_in_type_arguments=insert +org.eclipse.jdt.core.formatter.insert_space_after_closing_angle_bracket_in_type_parameters=insert +org.eclipse.jdt.core.formatter.insert_space_after_closing_brace_in_block=insert +org.eclipse.jdt.core.formatter.insert_space_after_closing_paren_in_cast=insert +org.eclipse.jdt.core.formatter.insert_space_after_colon_in_assert=insert +org.eclipse.jdt.core.formatter.insert_space_after_colon_in_case=insert +org.eclipse.jdt.core.formatter.insert_space_after_colon_in_conditional=insert +org.eclipse.jdt.core.formatter.insert_space_after_colon_in_for=insert +org.eclipse.jdt.core.formatter.insert_space_after_colon_in_labeled_statement=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_allocation_expression=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_annotation=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_array_initializer=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_constructor_declaration_parameters=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_constructor_declaration_throws=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_enum_constant_arguments=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_enum_declarations=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_explicitconstructorcall_arguments=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_for_increments=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_for_inits=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_method_declaration_parameters=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_method_declaration_throws=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_method_invocation_arguments=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_multiple_field_declarations=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_multiple_local_declarations=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_parameterized_type_reference=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_superinterfaces=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_type_arguments=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_type_parameters=insert +org.eclipse.jdt.core.formatter.insert_space_after_ellipsis=insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_parameterized_type_reference=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_type_arguments=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_type_parameters=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_brace_in_array_initializer=insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_bracket_in_array_allocation_expression=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_bracket_in_array_reference=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_annotation=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_cast=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_catch=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_constructor_declaration=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_enum_constant=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_for=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_if=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_method_declaration=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_method_invocation=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_parenthesized_expression=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_switch=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_synchronized=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_while=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_postfix_operator=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_prefix_operator=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_question_in_conditional=insert +org.eclipse.jdt.core.formatter.insert_space_after_question_in_wildcard=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_semicolon_in_for=insert +org.eclipse.jdt.core.formatter.insert_space_after_unary_operator=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_and_in_type_parameter=insert +org.eclipse.jdt.core.formatter.insert_space_before_assignment_operator=insert +org.eclipse.jdt.core.formatter.insert_space_before_at_in_annotation_type_declaration=insert +org.eclipse.jdt.core.formatter.insert_space_before_binary_operator=insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_angle_bracket_in_parameterized_type_reference=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_angle_bracket_in_type_arguments=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_angle_bracket_in_type_parameters=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_brace_in_array_initializer=insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_bracket_in_array_allocation_expression=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_bracket_in_array_reference=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_annotation=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_cast=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_catch=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_constructor_declaration=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_enum_constant=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_for=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_if=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_method_declaration=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_method_invocation=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_parenthesized_expression=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_switch=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_synchronized=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_while=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_colon_in_assert=insert +org.eclipse.jdt.core.formatter.insert_space_before_colon_in_case=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_colon_in_conditional=insert +org.eclipse.jdt.core.formatter.insert_space_before_colon_in_default=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_colon_in_for=insert +org.eclipse.jdt.core.formatter.insert_space_before_colon_in_labeled_statement=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_allocation_expression=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_annotation=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_array_initializer=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_constructor_declaration_parameters=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_constructor_declaration_throws=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_enum_constant_arguments=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_enum_declarations=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_explicitconstructorcall_arguments=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_for_increments=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_for_inits=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_method_declaration_parameters=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_method_declaration_throws=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_method_invocation_arguments=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_multiple_field_declarations=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_multiple_local_declarations=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_parameterized_type_reference=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_superinterfaces=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_type_arguments=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_type_parameters=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_ellipsis=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_parameterized_type_reference=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_type_arguments=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_type_parameters=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_annotation_type_declaration=insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_anonymous_type_declaration=insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_array_initializer=insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_block=insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_constructor_declaration=insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_enum_constant=insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_enum_declaration=insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_method_declaration=insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_switch=insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_type_declaration=insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_bracket_in_array_allocation_expression=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_bracket_in_array_reference=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_bracket_in_array_type_reference=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_annotation=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_annotation_type_member_declaration=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_catch=insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_constructor_declaration=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_enum_constant=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_for=insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_if=insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_method_declaration=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_method_invocation=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_parenthesized_expression=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_switch=insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_synchronized=insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_while=insert +org.eclipse.jdt.core.formatter.insert_space_before_parenthesized_expression_in_return=insert +org.eclipse.jdt.core.formatter.insert_space_before_parenthesized_expression_in_throw=insert +org.eclipse.jdt.core.formatter.insert_space_before_postfix_operator=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_prefix_operator=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_question_in_conditional=insert +org.eclipse.jdt.core.formatter.insert_space_before_question_in_wildcard=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_semicolon=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_semicolon_in_for=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_unary_operator=do not insert +org.eclipse.jdt.core.formatter.insert_space_between_brackets_in_array_type_reference=do not insert +org.eclipse.jdt.core.formatter.insert_space_between_empty_braces_in_array_initializer=do not insert +org.eclipse.jdt.core.formatter.insert_space_between_empty_brackets_in_array_allocation_expression=do not insert +org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_annotation_type_member_declaration=do not insert +org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_constructor_declaration=do not insert +org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_enum_constant=do not insert +org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_method_declaration=do not insert +org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_method_invocation=do not insert +org.eclipse.jdt.core.formatter.join_lines_in_comments=true +org.eclipse.jdt.core.formatter.join_wrapped_lines=true +org.eclipse.jdt.core.formatter.keep_else_statement_on_same_line=false +org.eclipse.jdt.core.formatter.keep_empty_array_initializer_on_one_line=false +org.eclipse.jdt.core.formatter.keep_imple_if_on_one_line=false +org.eclipse.jdt.core.formatter.keep_then_statement_on_same_line=false +org.eclipse.jdt.core.formatter.lineSplit=120 +org.eclipse.jdt.core.formatter.never_indent_block_comments_on_first_column=false +org.eclipse.jdt.core.formatter.never_indent_line_comments_on_first_column=false +org.eclipse.jdt.core.formatter.number_of_blank_lines_at_beginning_of_method_body=0 +org.eclipse.jdt.core.formatter.number_of_empty_lines_to_preserve=1 +org.eclipse.jdt.core.formatter.put_empty_statement_on_new_line=true +org.eclipse.jdt.core.formatter.tabulation.char=space +org.eclipse.jdt.core.formatter.tabulation.size=4 +org.eclipse.jdt.core.formatter.use_on_off_tags=false +org.eclipse.jdt.core.formatter.use_tabs_only_for_leading_indentations=false +org.eclipse.jdt.core.formatter.wrap_before_binary_operator=true +org.eclipse.jdt.core.formatter.wrap_outer_expressions_when_nested=true diff --git a/jOOQ-test/.settings/org.eclipse.jdt.ui.prefs b/jOOQ-test/.settings/org.eclipse.jdt.ui.prefs new file mode 100644 index 00000000000..b07f39ee3e9 --- /dev/null +++ b/jOOQ-test/.settings/org.eclipse.jdt.ui.prefs @@ -0,0 +1,116 @@ +#Sat Nov 05 13:02:50 CET 2011 +cleanup.add_default_serial_version_id=false +cleanup.add_generated_serial_version_id=true +cleanup.add_missing_annotations=true +cleanup.add_missing_deprecated_annotations=true +cleanup.add_missing_methods=false +cleanup.add_missing_nls_tags=false +cleanup.add_missing_override_annotations=true +cleanup.add_missing_override_annotations_interface_methods=true +cleanup.add_serial_version_id=true +cleanup.always_use_blocks=true +cleanup.always_use_parentheses_in_expressions=false +cleanup.always_use_this_for_non_static_field_access=true +cleanup.always_use_this_for_non_static_method_access=false +cleanup.convert_to_enhanced_for_loop=false +cleanup.correct_indentation=true +cleanup.format_source_code=false +cleanup.format_source_code_changes_only=false +cleanup.make_local_variable_final=true +cleanup.make_parameters_final=false +cleanup.make_private_fields_final=true +cleanup.make_type_abstract_if_missing_method=false +cleanup.make_variable_declarations_final=false +cleanup.never_use_blocks=false +cleanup.never_use_parentheses_in_expressions=true +cleanup.organize_imports=true +cleanup.qualify_static_field_accesses_with_declaring_class=false +cleanup.qualify_static_member_accesses_through_instances_with_declaring_class=true +cleanup.qualify_static_member_accesses_through_subtypes_with_declaring_class=true +cleanup.qualify_static_member_accesses_with_declaring_class=true +cleanup.qualify_static_method_accesses_with_declaring_class=false +cleanup.remove_private_constructors=true +cleanup.remove_trailing_whitespaces=true +cleanup.remove_trailing_whitespaces_all=true +cleanup.remove_trailing_whitespaces_ignore_empty=false +cleanup.remove_unnecessary_casts=true +cleanup.remove_unnecessary_nls_tags=true +cleanup.remove_unused_imports=true +cleanup.remove_unused_local_variables=false +cleanup.remove_unused_private_fields=true +cleanup.remove_unused_private_members=false +cleanup.remove_unused_private_methods=true +cleanup.remove_unused_private_types=true +cleanup.sort_members=false +cleanup.sort_members_all=false +cleanup.use_blocks=true +cleanup.use_blocks_only_for_return_and_throw=false +cleanup.use_parentheses_in_expressions=false +cleanup.use_this_for_non_static_field_access=false +cleanup.use_this_for_non_static_field_access_only_if_necessary=false +cleanup.use_this_for_non_static_method_access=false +cleanup.use_this_for_non_static_method_access_only_if_necessary=true +cleanup_profile=_jOOQ +cleanup_settings_version=2 +eclipse.preferences.version=1 +editor_save_participant_org.eclipse.jdt.ui.postsavelistener.cleanup=true +formatter_profile=_jOOQ +formatter_settings_version=12 +org.eclipse.jdt.ui.ignorelowercasenames=true +org.eclipse.jdt.ui.importorder=java;javax;org.jooq;org;com; +org.eclipse.jdt.ui.javadoc=false +org.eclipse.jdt.ui.ondemandthreshold=99 +org.eclipse.jdt.ui.staticondemandthreshold=99 +org.eclipse.jdt.ui.text.custom_code_templates= +sp_cleanup.add_default_serial_version_id=true +sp_cleanup.add_generated_serial_version_id=false +sp_cleanup.add_missing_annotations=true +sp_cleanup.add_missing_deprecated_annotations=true +sp_cleanup.add_missing_methods=false +sp_cleanup.add_missing_nls_tags=false +sp_cleanup.add_missing_override_annotations=true +sp_cleanup.add_missing_override_annotations_interface_methods=true +sp_cleanup.add_serial_version_id=false +sp_cleanup.always_use_blocks=true +sp_cleanup.always_use_parentheses_in_expressions=false +sp_cleanup.always_use_this_for_non_static_field_access=false +sp_cleanup.always_use_this_for_non_static_method_access=false +sp_cleanup.convert_to_enhanced_for_loop=false +sp_cleanup.correct_indentation=false +sp_cleanup.format_source_code=false +sp_cleanup.format_source_code_changes_only=false +sp_cleanup.make_local_variable_final=false +sp_cleanup.make_parameters_final=false +sp_cleanup.make_private_fields_final=true +sp_cleanup.make_type_abstract_if_missing_method=false +sp_cleanup.make_variable_declarations_final=false +sp_cleanup.never_use_blocks=false +sp_cleanup.never_use_parentheses_in_expressions=true +sp_cleanup.on_save_use_additional_actions=true +sp_cleanup.organize_imports=true +sp_cleanup.qualify_static_field_accesses_with_declaring_class=false +sp_cleanup.qualify_static_member_accesses_through_instances_with_declaring_class=true +sp_cleanup.qualify_static_member_accesses_through_subtypes_with_declaring_class=true +sp_cleanup.qualify_static_member_accesses_with_declaring_class=false +sp_cleanup.qualify_static_method_accesses_with_declaring_class=false +sp_cleanup.remove_private_constructors=true +sp_cleanup.remove_trailing_whitespaces=true +sp_cleanup.remove_trailing_whitespaces_all=true +sp_cleanup.remove_trailing_whitespaces_ignore_empty=false +sp_cleanup.remove_unnecessary_casts=true +sp_cleanup.remove_unnecessary_nls_tags=false +sp_cleanup.remove_unused_imports=true +sp_cleanup.remove_unused_local_variables=false +sp_cleanup.remove_unused_private_fields=true +sp_cleanup.remove_unused_private_members=false +sp_cleanup.remove_unused_private_methods=true +sp_cleanup.remove_unused_private_types=true +sp_cleanup.sort_members=false +sp_cleanup.sort_members_all=false +sp_cleanup.use_blocks=false +sp_cleanup.use_blocks_only_for_return_and_throw=false +sp_cleanup.use_parentheses_in_expressions=false +sp_cleanup.use_this_for_non_static_field_access=false +sp_cleanup.use_this_for_non_static_field_access_only_if_necessary=true +sp_cleanup.use_this_for_non_static_method_access=false +sp_cleanup.use_this_for_non_static_method_access_only_if_necessary=true diff --git a/jOOQ-test/.teeproject b/jOOQ-test/.teeproject new file mode 100644 index 00000000000..c730d775d98 --- /dev/null +++ b/jOOQ-test/.teeproject @@ -0,0 +1,11 @@ + + + +Default Connection +xe +TEST@localhost/xe +1521 +localhost +TEST +oracle + diff --git a/jOOQ-test/LICENSE.txt b/jOOQ-test/LICENSE.txt new file mode 100644 index 00000000000..fd12d44afa0 --- /dev/null +++ b/jOOQ-test/LICENSE.txt @@ -0,0 +1,33 @@ + Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com + All rights reserved. + + This software is licensed to you under the Apache License, Version 2.0 + (the "License"); You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + 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 "jOOQ" 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 COPYRIGHT OWNER 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. \ No newline at end of file diff --git a/jOOQ-test/build.xml b/jOOQ-test/build.xml new file mode 100644 index 00000000000..945230c2e1d --- /dev/null +++ b/jOOQ-test/build.xml @@ -0,0 +1,45 @@ + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/jOOQ-test/configuration/org/jooq/configuration/espen/db2/library.properties b/jOOQ-test/configuration/org/jooq/configuration/espen/db2/library.properties new file mode 100644 index 00000000000..202993642be --- /dev/null +++ b/jOOQ-test/configuration/org/jooq/configuration/espen/db2/library.properties @@ -0,0 +1,48 @@ +#example properties file +jdbc.Driver=com.ibm.db2.jcc.DB2Driver +jdbc.URL=jdbc:db2://localhost:50001/cntest:retrieveMessagesFromServerOnGetMessage=true; +jdbc.Schema=LUKAS +jdbc.User=mcdba +jdbc.Password=con007 + +generator=org.jooq.util.DefaultGenerator +generator.database=org.jooq.util.db2.DB2Database +generator.database.includes=T_.*,X_.*,V_.*,P_.*,F_.*,(F|P)[0-9]+,S_.* +generator.database.excludes=T_BOOK_DETAILS + +#Database enum type mappings +generator.database.enum-type.BOOLEAN_10=1,0 +generator.database.enum-type.BOOLEAN_YN_UC="Y",N +generator.database.enum-type.BOOLEAN_YN_LC=y,"n" +generator.database.enum-type.BOOLEAN_YES_NO_UC="YES","NO" +generator.database.enum-type.BOOLEAN_YES_NO_LC=yes,no +generator.database.enum-type.BOOLEAN_TRUE_FALSE_UC=TRUE,FALSE +generator.database.enum-type.BOOLEAN_TRUE_FALSE_LC=true,false + +generator.database.forced-type.BOOLEAN_10=(?i:(.*?\.)?T_BOOLEANS\.ONE_ZERO) +generator.database.forced-type.BOOLEAN_YN_UC=(?i:(.*?\.)?T_BOOLEANS\.Y_N_UC) +generator.database.forced-type.BOOLEAN_YN_LC=(?i:(.*?\.)?T_BOOLEANS\.Y_N_LC) +generator.database.forced-type.BOOLEAN_YES_NO_UC=(?i:(.*?\.)?T_BOOLEANS\.YES_NO_UC) +generator.database.forced-type.BOOLEAN_YES_NO_LC=(?i:(.*?\.)?T_BOOLEANS\.YES_NO_LC) +generator.database.forced-type.BOOLEAN_TRUE_FALSE_UC=(?i:(.*?\.)?T_BOOLEANS\.TRUE_FALSE_UC) +generator.database.forced-type.BOOLEAN_TRUE_FALSE_LC=(?i:(.*?\.)?T_BOOLEANS\.TRUE_FALSE_LC) + +#[#677] Forced types +generator.database.forced-type.BOOLEAN=(?i:(.*?\.)?T_BOOLEANS\.(VC|C|N)_BOOLEAN) + +#Generator configuration +generator.generate.records=true +generator.generate.relations=true +generator.generate.instance-fields=false +generator.generate.generated-annotation=false + +#Generate a master data table enum from T_LANGUAGE +generator.generate.master-data-tables=T_LANGUAGE,T_658_11,T_658_21,T_658_31,T_658_12,T_658_22,T_658_32 +generator.generate.master-data-table-literal.T_LANGUAGE=CD +generator.generate.master-data-table-description.T_LANGUAGE=DESCRIPTION +generator.generate.master-data-table-literal.T_658_12=CD +generator.generate.master-data-table-literal.T_658_22=CD +generator.generate.master-data-table-literal.T_658_32=CD + +generator.target.package=org.jooq.test.db2.generatedclasses +generator.target.directory=./src \ No newline at end of file diff --git a/jOOQ-test/configuration/org/jooq/configuration/espen/db2/library.xml b/jOOQ-test/configuration/org/jooq/configuration/espen/db2/library.xml new file mode 100644 index 00000000000..49637224380 --- /dev/null +++ b/jOOQ-test/configuration/org/jooq/configuration/espen/db2/library.xml @@ -0,0 +1,129 @@ + + + + com.ibm.db2.jcc.DB2Driver + jdbc:db2://localhost:50001/cntest:retrieveMessagesFromServerOnGetMessage=true; + LUKAS + mcdba + con007 + + + org.jooq.util.DefaultGenerator + + org.jooq.util.db2.DB2Database + T_.*,X_.*,V_.*,P_.*,F_.*,(F|P)[0-9]+,S_.* + T_BOOK_DETAILS + false + true + + + T_LANGUAGE + CD + DESCRIPTION + + + T_658_11 + + + T_658_21 + + + T_658_31 + + + T_658_12 + CD + + + T_658_22 + CD + + + T_658_32 + CD + + + + + + org.jooq.test._.converters.Boolean_10 + org.jooq.test._.converters.Boolean_10_Converter + + + org.jooq.test._.converters.Boolean_TF_LC + org.jooq.test._.converters.Boolean_TF_LC_Converter + + + org.jooq.test._.converters.Boolean_TF_UC + org.jooq.test._.converters.Boolean_TF_UC_Converter + + + org.jooq.test._.converters.Boolean_YN_LC + org.jooq.test._.converters.Boolean_YN_LC_Converter + + + org.jooq.test._.converters.Boolean_YN_UC + org.jooq.test._.converters.Boolean_YN_UC_Converter + + + org.jooq.test._.converters.Boolean_YES_NO_LC + org.jooq.test._.converters.Boolean_YES_NO_LC_Converter + + + org.jooq.test._.converters.Boolean_YES_NO_UC + org.jooq.test._.converters.Boolean_YES_NO_UC_Converter + + + + + + BOOLEAN + (?i:(.*?.)?T_BOOLEANS.(VC|C|N)_BOOLEAN) + + + + org.jooq.test._.converters.Boolean_YES_NO_LC + (?i:(.*?.)?T_BOOLEANS.YES_NO_LC) + + + org.jooq.test._.converters.Boolean_YES_NO_UC + (?i:(.*?.)?T_BOOLEANS.YES_NO_UC) + + + org.jooq.test._.converters.Boolean_YN_LC + (?i:(.*?.)?T_BOOLEANS.Y_N_LC) + + + org.jooq.test._.converters.Boolean_YN_UC + (?i:(.*?.)?T_BOOLEANS.Y_N_UC) + + + org.jooq.test._.converters.Boolean_TF_LC + (?i:(.*?.)?T_BOOLEANS.TRUE_FALSE_LC) + + + org.jooq.test._.converters.Boolean_TF_UC + (?i:(.*?.)?T_BOOLEANS.TRUE_FALSE_UC) + + + org.jooq.test._.converters.Boolean_10 + (?i:(.*?.)?T_BOOLEANS.ONE_ZERO) + + + + + true + true + true + false + false + true + false + false + + + org.jooq.test.db2.generatedclasses + ./src + + + \ No newline at end of file diff --git a/jOOQ-test/configuration/org/jooq/configuration/espen/db2/syscat.properties b/jOOQ-test/configuration/org/jooq/configuration/espen/db2/syscat.properties new file mode 100644 index 00000000000..344672400cd --- /dev/null +++ b/jOOQ-test/configuration/org/jooq/configuration/espen/db2/syscat.properties @@ -0,0 +1,18 @@ +#example properties file +jdbc.Driver=com.ibm.db2.jcc.DB2Driver +jdbc.URL=jdbc:db2://localhost:50001/cntest:retrieveMessagesFromServerOnGetMessage=true; +jdbc.Schema=SYSCAT +jdbc.User=mcdba +jdbc.Password=con007 + +generator=org.jooq.util.DefaultGenerator +generator.database=org.jooq.util.db2.DB2Database +generator.database.includes=TABLES,COLUMNS,TABCONST,KEYCOLUSE,REFERENCES,PROCEDURES,PROCPARMS,FUNCTIONS,FUNCPARMS,DATATYPES,ATTRIBUTES,SEQUENCES +generator.database.excludes= +generator.generate.records=false +generator.generate.deprecated=false +generator.generate.instance-fields=false +generator.generate.records=false + +generator.target.package=org.jooq.util.db2.syscat +generator.target.directory=./src/main/java \ No newline at end of file diff --git a/jOOQ-test/configuration/org/jooq/configuration/espen/h2/information_schema.properties b/jOOQ-test/configuration/org/jooq/configuration/espen/h2/information_schema.properties new file mode 100644 index 00000000000..b964284a21b --- /dev/null +++ b/jOOQ-test/configuration/org/jooq/configuration/espen/h2/information_schema.properties @@ -0,0 +1,17 @@ +#example properties file +jdbc.Driver=org.h2.Driver +jdbc.URL=jdbc:h2:~/test +jdbc.Schema=INFORMATION_SCHEMA +jdbc.User=sa +jdbc.Password= + +generator=org.jooq.util.DefaultGenerator +generator.database=org.jooq.util.h2.H2Database +generator.database.includes=TABLES,COLUMNS,CONSTRAINTS,CROSS_REFERENCES,TYPE_INFO,FUNCTION_ALIASES,FUNCTION_COLUMNS,SEQUENCES +generator.database.excludes= +generator.generate.deprecated=false +generator.generate.instance-fields=false +generator.generate.records=false + +generator.target.package=org.jooq.util.h2.information_schema +generator.target.directory=./src/main/java \ No newline at end of file diff --git a/jOOQ-test/configuration/org/jooq/configuration/espen/h2/library.properties b/jOOQ-test/configuration/org/jooq/configuration/espen/h2/library.properties new file mode 100644 index 00000000000..0198680cbbf --- /dev/null +++ b/jOOQ-test/configuration/org/jooq/configuration/espen/h2/library.properties @@ -0,0 +1,47 @@ +#example properties file +jdbc.Driver=org.h2.Driver +jdbc.URL=jdbc:h2:~/test +jdbc.Schema=PUBLIC +jdbc.User=sa +jdbc.Password= + +generator=org.jooq.util.DefaultGenerator +generator.database=org.jooq.util.h2.H2Database +generator.database.includes=.* +generator.database.excludes=T_BOOK_DETAILS + +#Database enum type mappings +generator.database.enum-type.BOOLEAN_10=1,0 +generator.database.enum-type.BOOLEAN_YN_UC="Y",N +generator.database.enum-type.BOOLEAN_YN_LC=y,"n" +generator.database.enum-type.BOOLEAN_YES_NO_UC="YES","NO" +generator.database.enum-type.BOOLEAN_YES_NO_LC=yes,no +generator.database.enum-type.BOOLEAN_TRUE_FALSE_UC=TRUE,FALSE +generator.database.enum-type.BOOLEAN_TRUE_FALSE_LC=true,false + +generator.database.forced-type.BOOLEAN_10=(?i:(.*?\.)?T_BOOLEANS\.ONE_ZERO) +generator.database.forced-type.BOOLEAN_YN_UC=(?i:(.*?\.)?T_BOOLEANS\.Y_N_UC) +generator.database.forced-type.BOOLEAN_YN_LC=(?i:(.*?\.)?T_BOOLEANS\.Y_N_LC) +generator.database.forced-type.BOOLEAN_YES_NO_UC=(?i:(.*?\.)?T_BOOLEANS\.YES_NO_UC) +generator.database.forced-type.BOOLEAN_YES_NO_LC=(?i:(.*?\.)?T_BOOLEANS\.YES_NO_LC) +generator.database.forced-type.BOOLEAN_TRUE_FALSE_UC=(?i:(.*?\.)?T_BOOLEANS\.TRUE_FALSE_UC) +generator.database.forced-type.BOOLEAN_TRUE_FALSE_LC=(?i:(.*?\.)?T_BOOLEANS\.TRUE_FALSE_LC) + +#[#677] Forced types +generator.database.forced-type.BOOLEAN=(?i:(.*?\.)?T_BOOLEANS\.(VC|C|N)_BOOLEAN) + +#Generator configuration +generator.generate.relations=true +generator.generate.instance-fields=false +generator.generate.generated-annotation=false + +#Generate a master data table enum from T_LANGUAGE +generator.generate.master-data-tables=T_LANGUAGE,T_658_11,T_658_21,T_658_31,T_658_12,T_658_22,T_658_32 +generator.generate.master-data-table-literal.T_LANGUAGE=CD +generator.generate.master-data-table-description.T_LANGUAGE=DESCRIPTION +generator.generate.master-data-table-literal.T_658_12=CD +generator.generate.master-data-table-literal.T_658_22=CD +generator.generate.master-data-table-literal.T_658_32=CD + +generator.target.package=org.jooq.test.h2.generatedclasses +generator.target.directory=./src \ No newline at end of file diff --git a/jOOQ-test/configuration/org/jooq/configuration/espen/h2/library.xml b/jOOQ-test/configuration/org/jooq/configuration/espen/h2/library.xml new file mode 100644 index 00000000000..a90aa1d948d --- /dev/null +++ b/jOOQ-test/configuration/org/jooq/configuration/espen/h2/library.xml @@ -0,0 +1,129 @@ + + + + org.h2.Driver + jdbc:h2:~/test + PUBLIC + sa + + + + org.jooq.util.DefaultGenerator + + org.jooq.util.h2.H2Database + .* + T_BOOK_DETAILS,SYSTEM_SEQUENCE.* + false + true + + + T_LANGUAGE + CD + DESCRIPTION + + + T_658_11 + + + T_658_21 + + + T_658_31 + + + T_658_12 + CD + + + T_658_22 + CD + + + T_658_32 + CD + + + + + + org.jooq.test._.converters.Boolean_10 + org.jooq.test._.converters.Boolean_10_Converter + + + org.jooq.test._.converters.Boolean_TF_LC + org.jooq.test._.converters.Boolean_TF_LC_Converter + + + org.jooq.test._.converters.Boolean_TF_UC + org.jooq.test._.converters.Boolean_TF_UC_Converter + + + org.jooq.test._.converters.Boolean_YN_LC + org.jooq.test._.converters.Boolean_YN_LC_Converter + + + org.jooq.test._.converters.Boolean_YN_UC + org.jooq.test._.converters.Boolean_YN_UC_Converter + + + org.jooq.test._.converters.Boolean_YES_NO_LC + org.jooq.test._.converters.Boolean_YES_NO_LC_Converter + + + org.jooq.test._.converters.Boolean_YES_NO_UC + org.jooq.test._.converters.Boolean_YES_NO_UC_Converter + + + + + + BOOLEAN + (?i:(.*?.)?T_BOOLEANS.(VC|C|N)_BOOLEAN) + + + + org.jooq.test._.converters.Boolean_YES_NO_LC + (?i:(.*?.)?T_BOOLEANS.YES_NO_LC) + + + org.jooq.test._.converters.Boolean_YES_NO_UC + (?i:(.*?.)?T_BOOLEANS.YES_NO_UC) + + + org.jooq.test._.converters.Boolean_YN_LC + (?i:(.*?.)?T_BOOLEANS.Y_N_LC) + + + org.jooq.test._.converters.Boolean_YN_UC + (?i:(.*?.)?T_BOOLEANS.Y_N_UC) + + + org.jooq.test._.converters.Boolean_TF_LC + (?i:(.*?.)?T_BOOLEANS.TRUE_FALSE_LC) + + + org.jooq.test._.converters.Boolean_TF_UC + (?i:(.*?.)?T_BOOLEANS.TRUE_FALSE_UC) + + + org.jooq.test._.converters.Boolean_10 + (?i:(.*?.)?T_BOOLEANS.ONE_ZERO) + + + + + true + true + true + false + false + true + false + false + + + org.jooq.test.h2.generatedclasses + ./src + + + \ No newline at end of file diff --git a/jOOQ-test/configuration/org/jooq/configuration/espen/hsqldb/information_schema.properties b/jOOQ-test/configuration/org/jooq/configuration/espen/hsqldb/information_schema.properties new file mode 100644 index 00000000000..a581c180828 --- /dev/null +++ b/jOOQ-test/configuration/org/jooq/configuration/espen/hsqldb/information_schema.properties @@ -0,0 +1,17 @@ +#example properties file +jdbc.Driver=org.hsqldb.jdbcDriver +jdbc.URL=jdbc:hsqldb:hsql://localhost +jdbc.Schema=INFORMATION_SCHEMA +jdbc.User=sa +jdbc.Password= + +generator=org.jooq.util.DefaultGenerator +generator.database=org.jooq.util.hsqldb.HSQLDBDatabase +generator.database.includes=TABLES,COLUMNS,REFERENTIAL_CONSTRAINTS,TABLE_CONSTRAINTS,CONSTRAINT_COLUMN_USAGE,KEY_COLUMN_USAGE,ROUTINES,PARAMETERS,SEQUENCES,ELEMENT_TYPES +generator.database.excludes= +generator.generate.deprecated=false +generator.generate.instance-fields=true +generator.generate.records=false + +generator.target.package=org.jooq.util.hsqldb.information_schema +generator.target.directory=./src/main/java \ No newline at end of file diff --git a/jOOQ-test/configuration/org/jooq/configuration/espen/hsqldb/library.properties b/jOOQ-test/configuration/org/jooq/configuration/espen/hsqldb/library.properties new file mode 100644 index 00000000000..a08874d3198 --- /dev/null +++ b/jOOQ-test/configuration/org/jooq/configuration/espen/hsqldb/library.properties @@ -0,0 +1,46 @@ +#example properties file +jdbc.Driver=org.hsqldb.jdbcDriver +jdbc.URL=jdbc:hsqldb:hsql://localhost +jdbc.Schema=PUBLIC +jdbc.User=sa +jdbc.Password= + +generator=org.jooq.util.DefaultGenerator +generator.database=org.jooq.util.hsqldb.HSQLDBDatabase +generator.database.includes=.* +generator.database.excludes=T_BOOK_DETAILS + +#Database enum type mappings +generator.database.enum-type.BOOLEAN_10=1,0 +generator.database.enum-type.BOOLEAN_YN_UC="Y",N +generator.database.enum-type.BOOLEAN_YN_LC=y,"n" +generator.database.enum-type.BOOLEAN_YES_NO_UC="YES","NO" +generator.database.enum-type.BOOLEAN_YES_NO_LC=yes,no +generator.database.enum-type.BOOLEAN_TRUE_FALSE_UC=TRUE,FALSE +generator.database.enum-type.BOOLEAN_TRUE_FALSE_LC=true,false + +generator.database.forced-type.BOOLEAN_10=(?i:(.*?\.)?T_BOOLEANS\.ONE_ZERO) +generator.database.forced-type.BOOLEAN_YN_UC=(?i:(.*?\.)?T_BOOLEANS\.Y_N_UC) +generator.database.forced-type.BOOLEAN_YN_LC=(?i:(.*?\.)?T_BOOLEANS\.Y_N_LC) +generator.database.forced-type.BOOLEAN_YES_NO_UC=(?i:(.*?\.)?T_BOOLEANS\.YES_NO_UC) +generator.database.forced-type.BOOLEAN_YES_NO_LC=(?i:(.*?\.)?T_BOOLEANS\.YES_NO_LC) +generator.database.forced-type.BOOLEAN_TRUE_FALSE_UC=(?i:(.*?\.)?T_BOOLEANS\.TRUE_FALSE_UC) +generator.database.forced-type.BOOLEAN_TRUE_FALSE_LC=(?i:(.*?\.)?T_BOOLEANS\.TRUE_FALSE_LC) + +#[#677] Forced types +generator.database.forced-type.BOOLEAN=(?i:(.*?\.)?T_BOOLEANS\.(VC|C|N)_BOOLEAN) + +#Generator configuration +generator.generate.relations=true +generator.generate.instance-fields=true + +#Generate a master data table enum from T_LANGUAGE +generator.generate.master-data-tables=T_LANGUAGE,T_658_11,T_658_21,T_658_31,T_658_12,T_658_22,T_658_32 +generator.generate.master-data-table-literal.T_LANGUAGE=CD +generator.generate.master-data-table-description.T_LANGUAGE=DESCRIPTION +generator.generate.master-data-table-literal.T_658_12=CD +generator.generate.master-data-table-literal.T_658_22=CD +generator.generate.master-data-table-literal.T_658_32=CD + +generator.target.package=org.jooq.test.hsqldb.generatedclasses +generator.target.directory=./src \ No newline at end of file diff --git a/jOOQ-test/configuration/org/jooq/configuration/espen/hsqldb/library.xml b/jOOQ-test/configuration/org/jooq/configuration/espen/hsqldb/library.xml new file mode 100644 index 00000000000..fa38f36dd1c --- /dev/null +++ b/jOOQ-test/configuration/org/jooq/configuration/espen/hsqldb/library.xml @@ -0,0 +1,179 @@ + + + + org.hsqldb.jdbcDriver + jdbc:hsqldb:hsql://localhost + PUBLIC + sa + + + + org.jooq.util.DefaultGenerator + + org.jooq.util.hsqldb.HSQLDBDatabase + .* + T_BOOK_DETAILS,S_TRIGGERS_SEQUENCE + false + true + + + T_LANGUAGE + CD + DESCRIPTION + + + T_658_11 + + + T_658_21 + + + T_658_31 + + + T_658_12 + CD + + + T_658_22 + CD + + + T_658_32 + CD + + + + + org.jooq.test._.converters.StringEnum + org.jooq.test._.converters.StringEnumConverter + + + org.jooq.test._.converters.StringEnum1 + org.jooq.test._.converters.StringEnum1Converter + + + org.jooq.test._.converters.OrdinalEnum + org.jooq.test._.converters.OrdinalEnumConverter + + + org.jooq.test._.converters.OrdinalEnum1 + org.jooq.test._.converters.OrdinalEnum1Converter + + + + java.util.Date + org.jooq.test._.converters.DateConverter + + + java.util.GregorianCalendar + org.jooq.test._.converters.CalendarConverter + + + + org.jooq.test._.converters.Boolean_10 + org.jooq.test._.converters.Boolean_10_Converter + + + org.jooq.test._.converters.Boolean_TF_LC + org.jooq.test._.converters.Boolean_TF_LC_Converter + + + org.jooq.test._.converters.Boolean_TF_UC + org.jooq.test._.converters.Boolean_TF_UC_Converter + + + org.jooq.test._.converters.Boolean_YN_LC + org.jooq.test._.converters.Boolean_YN_LC_Converter + + + org.jooq.test._.converters.Boolean_YN_UC + org.jooq.test._.converters.Boolean_YN_UC_Converter + + + org.jooq.test._.converters.Boolean_YES_NO_LC + org.jooq.test._.converters.Boolean_YES_NO_LC_Converter + + + org.jooq.test._.converters.Boolean_YES_NO_UC + org.jooq.test._.converters.Boolean_YES_NO_UC_Converter + + + + + + org.jooq.test._.converters.StringEnum + (?i:(.*?\.)?T_MAPPED_TYPES.DEFAULT_ENUM_NAME) + + + org.jooq.test._.converters.StringEnum1 + (?i:(.*?\.)?T_MAPPED_TYPES.CUSTOM_ENUM_TEXT) + + + org.jooq.test._.converters.OrdinalEnum + (?i:(.*?\.)?T_MAPPED_TYPES.DEFAULT_ENUM_ORDINAL) + + + org.jooq.test._.converters.OrdinalEnum1 + (?i:(.*?\.)?T_MAPPED_TYPES.CUSTOM_ENUM_NUMERIC) + + + java.util.Date + (?i:(.*?\.)?T_MAPPED_TYPES.JAVA_UTIL_DATE) + + + java.util.GregorianCalendar + (?i:(.*?\.)?T_MAPPED_TYPES.JAVA_UTIL_CALENDAR) + + + + BOOLEAN + (?i:(.*?.)?T_BOOLEANS.(VC|C|N)_BOOLEAN) + + + + org.jooq.test._.converters.Boolean_YES_NO_LC + (?i:(.*?.)?T_BOOLEANS.YES_NO_LC) + + + org.jooq.test._.converters.Boolean_YES_NO_UC + (?i:(.*?.)?T_BOOLEANS.YES_NO_UC) + + + org.jooq.test._.converters.Boolean_YN_LC + (?i:(.*?.)?T_BOOLEANS.Y_N_LC) + + + org.jooq.test._.converters.Boolean_YN_UC + (?i:(.*?.)?T_BOOLEANS.Y_N_UC) + + + org.jooq.test._.converters.Boolean_TF_LC + (?i:(.*?.)?T_BOOLEANS.TRUE_FALSE_LC) + + + org.jooq.test._.converters.Boolean_TF_UC + (?i:(.*?.)?T_BOOLEANS.TRUE_FALSE_UC) + + + org.jooq.test._.converters.Boolean_10 + (?i:(.*?.)?T_BOOLEANS.ONE_ZERO) + + + + + true + true + true + true + true + true + false + false + + + org.jooq.test.hsqldb.generatedclasses + ./src + + + \ No newline at end of file diff --git a/jOOQ-test/configuration/org/jooq/configuration/espen/sybase/library.properties b/jOOQ-test/configuration/org/jooq/configuration/espen/sybase/library.properties new file mode 100644 index 00000000000..de8a289c119 --- /dev/null +++ b/jOOQ-test/configuration/org/jooq/configuration/espen/sybase/library.properties @@ -0,0 +1,48 @@ +#Sybase system table properties file +jdbc.Driver=com.sybase.jdbc3.jdbc.SybDriver +jdbc.URL=jdbc:sybase:Tds:localhost:2638 +jdbc.Schema=dba +jdbc.User=dba +jdbc.Password=sql + +generator=org.jooq.util.DefaultGenerator +generator.database=org.jooq.util.sybase.SybaseDatabase +generator.database.includes=t_.*,x_.*,v_.*,V_.*,p_.*,f_.*,(f|p)[0-9]+,s_.* +generator.database.excludes=t_book_details + +#Database enum type mappings +generator.database.enum-type.BOOLEAN_10=1,0 +generator.database.enum-type.BOOLEAN_YN_UC="Y",N +generator.database.enum-type.BOOLEAN_YN_LC=y,"n" +generator.database.enum-type.BOOLEAN_YES_NO_UC="YES","NO" +generator.database.enum-type.BOOLEAN_YES_NO_LC=yes,no +generator.database.enum-type.BOOLEAN_TRUE_FALSE_UC=TRUE,FALSE +generator.database.enum-type.BOOLEAN_TRUE_FALSE_LC=true,false + +generator.database.forced-type.BOOLEAN_10=(?i:(.*?\.)?T_BOOLEANS\.ONE_ZERO) +generator.database.forced-type.BOOLEAN_YN_UC=(?i:(.*?\.)?T_BOOLEANS\.Y_N_UC) +generator.database.forced-type.BOOLEAN_YN_LC=(?i:(.*?\.)?T_BOOLEANS\.Y_N_LC) +generator.database.forced-type.BOOLEAN_YES_NO_UC=(?i:(.*?\.)?T_BOOLEANS\.YES_NO_UC) +generator.database.forced-type.BOOLEAN_YES_NO_LC=(?i:(.*?\.)?T_BOOLEANS\.YES_NO_LC) +generator.database.forced-type.BOOLEAN_TRUE_FALSE_UC=(?i:(.*?\.)?T_BOOLEANS\.TRUE_FALSE_UC) +generator.database.forced-type.BOOLEAN_TRUE_FALSE_LC=(?i:(.*?\.)?T_BOOLEANS\.TRUE_FALSE_LC) + +#[#677] Forced types +generator.database.forced-type.BIT=(?i:(.*?\.)?T_BOOLEANS\.(VC|C|N)_BOOLEAN) + +#Generator configuration +generator.generate.relations=true +generator.generate.records=true +generator.generate.instance-fields=true +generator.generate.generated-annotation=false + +#Generate a master data table enum from T_LANGUAGE +generator.generate.master-data-tables=t_language,t_658_11,t_658_21,t_658_31,t_658_12,t_658_22,t_658_32 +generator.generate.master-data-table-literal.t_language=cd +generator.generate.master-data-table-description.t_language=description +generator.generate.master-data-table-literal.t_658_12=cd +generator.generate.master-data-table-literal.t_658_22=cd +generator.generate.master-data-table-literal.t_658_32=cd + +generator.target.package=org.jooq.test.sybase.generatedclasses +generator.target.directory=./src diff --git a/jOOQ-test/configuration/org/jooq/configuration/espen/sybase/library.xml b/jOOQ-test/configuration/org/jooq/configuration/espen/sybase/library.xml new file mode 100644 index 00000000000..12f101a7764 --- /dev/null +++ b/jOOQ-test/configuration/org/jooq/configuration/espen/sybase/library.xml @@ -0,0 +1,125 @@ + + + + com.sybase.jdbc3.jdbc.SybDriver + jdbc:sybase:Tds:localhost:2638 + dba + dba + sql + + + org.jooq.util.DefaultGenerator + + + org.jooq.util.sybase.SybaseDatabase + t_.*,x_.*,v_.*,V_.*,p_.*,f_.*,(f|p)[0-9]+,s_.* + t_book_details + false + + + t_language + cd + description + + + t_658_11 + + + t_658_21 + + + t_658_31 + + + t_658_12 + cd + + + t_658_22 + cd + + + t_658_32 + cd + + + + + org.jooq.test._.converters.Boolean_10 + org.jooq.test._.converters.Boolean_10_Converter + + + org.jooq.test._.converters.Boolean_TF_LC + org.jooq.test._.converters.Boolean_TF_LC_Converter + + + org.jooq.test._.converters.Boolean_TF_UC + org.jooq.test._.converters.Boolean_TF_UC_Converter + + + org.jooq.test._.converters.Boolean_YN_LC + org.jooq.test._.converters.Boolean_YN_LC_Converter + + + org.jooq.test._.converters.Boolean_YN_UC + org.jooq.test._.converters.Boolean_YN_UC_Converter + + + org.jooq.test._.converters.Boolean_YES_NO_LC + org.jooq.test._.converters.Boolean_YES_NO_LC_Converter + + + org.jooq.test._.converters.Boolean_YES_NO_UC + org.jooq.test._.converters.Boolean_YES_NO_UC_Converter + + + + + + BIT + (?i:(.*?.)?T_BOOLEANS.(VC|C|N)_BOOLEAN) + + + + org.jooq.test._.converters.Boolean_YES_NO_LC + (?i:(.*?.)?T_BOOLEANS.YES_NO_LC) + + + org.jooq.test._.converters.Boolean_YES_NO_UC + (?i:(.*?.)?T_BOOLEANS.YES_NO_UC) + + + org.jooq.test._.converters.Boolean_YN_LC + (?i:(.*?.)?T_BOOLEANS.Y_N_LC) + + + org.jooq.test._.converters.Boolean_YN_UC + (?i:(.*?.)?T_BOOLEANS.Y_N_UC) + + + org.jooq.test._.converters.Boolean_TF_LC + (?i:(.*?.)?T_BOOLEANS.TRUE_FALSE_LC) + + + org.jooq.test._.converters.Boolean_TF_UC + (?i:(.*?.)?T_BOOLEANS.TRUE_FALSE_UC) + + + org.jooq.test._.converters.Boolean_10 + (?i:(.*?.)?T_BOOLEANS.ONE_ZERO) + + + + + true + true + true + true + false + + + org.jooq.test.sybase.generatedclasses + ./src + + + diff --git a/jOOQ-test/configuration/org/jooq/configuration/espen/sybase/sys.properties b/jOOQ-test/configuration/org/jooq/configuration/espen/sybase/sys.properties new file mode 100644 index 00000000000..19575c5b4dd --- /dev/null +++ b/jOOQ-test/configuration/org/jooq/configuration/espen/sybase/sys.properties @@ -0,0 +1,18 @@ +#Sybase system table properties file +jdbc.Driver=com.sybase.jdbc3.jdbc.SybDriver +jdbc.URL=jdbc:sybase:Tds:localhost:2638 +jdbc.Schema=sys +jdbc.User=dba +jdbc.Password=sql + +generator=org.jooq.util.DefaultGenerator +generator.database=org.jooq.util.sybase.SybaseDatabase +generator.database.includes=SYSTAB,SYSTABLE,SYSTABCOL,SYSDOMAIN,SYSIDX,SYSIDXCOL,SYSPROCEDURE,SYSPROCPARM,SYSVIEW,SYSSEQUENCE,SYSFKEY +generator.database.excludes= +generator.generate.records=false +generator.generate.deprecated=false +generator.generate.instance-fields=true +generator.generate.records=false + +generator.target.package=org.jooq.util.sybase.sys +generator.target.directory=./src/main/java \ No newline at end of file diff --git a/jOOQ-test/configuration/org/jooq/configuration/lukas/ase/library.properties b/jOOQ-test/configuration/org/jooq/configuration/lukas/ase/library.properties new file mode 100644 index 00000000000..998efc0eba0 --- /dev/null +++ b/jOOQ-test/configuration/org/jooq/configuration/lukas/ase/library.properties @@ -0,0 +1,48 @@ +#Sybase system table properties file +jdbc.Driver=net.sourceforge.jtds.jdbc.Driver +jdbc.URL=jdbc:jtds:sybase://lukas-hp:5000/TEST +jdbc.Schema=dbo +jdbc.User=sa +jdbc.Password= + +generator=org.jooq.util.DefaultGenerator +generator.database=org.jooq.util.ase.ASEDatabase +generator.database.includes=t_.*,x_.*,v_.*,V_.*,p_.*,f_.*,(f|p)[0-9]+,s_.* +generator.database.excludes=t_book_details + +#Database enum type mappings +generator.database.enum-type.BOOLEAN_10=1,0 +generator.database.enum-type.BOOLEAN_YN_UC="Y",N +generator.database.enum-type.BOOLEAN_YN_LC=y,"n" +generator.database.enum-type.BOOLEAN_YES_NO_UC="YES","NO" +generator.database.enum-type.BOOLEAN_YES_NO_LC=yes,no +generator.database.enum-type.BOOLEAN_TRUE_FALSE_UC=TRUE,FALSE +generator.database.enum-type.BOOLEAN_TRUE_FALSE_LC=true,false + +generator.database.forced-type.BOOLEAN_10=(?i:(.*?\.)?T_BOOLEANS\.ONE_ZERO) +generator.database.forced-type.BOOLEAN_YN_UC=(?i:(.*?\.)?T_BOOLEANS\.Y_N_UC) +generator.database.forced-type.BOOLEAN_YN_LC=(?i:(.*?\.)?T_BOOLEANS\.Y_N_LC) +generator.database.forced-type.BOOLEAN_YES_NO_UC=(?i:(.*?\.)?T_BOOLEANS\.YES_NO_UC) +generator.database.forced-type.BOOLEAN_YES_NO_LC=(?i:(.*?\.)?T_BOOLEANS\.YES_NO_LC) +generator.database.forced-type.BOOLEAN_TRUE_FALSE_UC=(?i:(.*?\.)?T_BOOLEANS\.TRUE_FALSE_UC) +generator.database.forced-type.BOOLEAN_TRUE_FALSE_LC=(?i:(.*?\.)?T_BOOLEANS\.TRUE_FALSE_LC) + +#[#677] Forced types +generator.database.forced-type.BIT=(?i:(.*?\.)?T_BOOLEANS\.(VC|C|N)_BOOLEAN) + +#Generator configuration +generator.generate.relations=true +generator.generate.records=true +generator.generate.instance-fields=false +generator.generate.generated-annotation=false + +#Generate a master data table enum from T_LANGUAGE +generator.generate.master-data-tables=t_language,t_658_11,t_658_21,t_658_31,t_658_12,t_658_22,t_658_32 +generator.generate.master-data-table-literal.t_language=cd +generator.generate.master-data-table-description.t_language=description +generator.generate.master-data-table-literal.t_658_12=cd +generator.generate.master-data-table-literal.t_658_22=cd +generator.generate.master-data-table-literal.t_658_32=cd + +generator.target.package=org.jooq.test.ase.generatedclasses +generator.target.directory=./src diff --git a/jOOQ-test/configuration/org/jooq/configuration/lukas/ase/library.xml b/jOOQ-test/configuration/org/jooq/configuration/lukas/ase/library.xml new file mode 100644 index 00000000000..763fc55533d --- /dev/null +++ b/jOOQ-test/configuration/org/jooq/configuration/lukas/ase/library.xml @@ -0,0 +1,129 @@ + + + + net.sourceforge.jtds.jdbc.Driver + jdbc:jtds:sybase://lukas-hp:5000/TEST + dbo + sa + + + + org.jooq.util.DefaultGenerator + + org.jooq.util.ase.ASEDatabase + t_.*,x_.*,v_.*,V_.*,p_.*,f_.*,(f|p)[0-9]+,s_.* + t_book_details + false + true + + + t_language + cd + description + + + t_658_11 + + + t_658_21 + + + t_658_31 + + + t_658_12 + cd + + + t_658_22 + cd + + + t_658_32 + cd + + + + + + org.jooq.test._.converters.Boolean_10 + org.jooq.test._.converters.Boolean_10_Converter + + + org.jooq.test._.converters.Boolean_TF_LC + org.jooq.test._.converters.Boolean_TF_LC_Converter + + + org.jooq.test._.converters.Boolean_TF_UC + org.jooq.test._.converters.Boolean_TF_UC_Converter + + + org.jooq.test._.converters.Boolean_YN_LC + org.jooq.test._.converters.Boolean_YN_LC_Converter + + + org.jooq.test._.converters.Boolean_YN_UC + org.jooq.test._.converters.Boolean_YN_UC_Converter + + + org.jooq.test._.converters.Boolean_YES_NO_LC + org.jooq.test._.converters.Boolean_YES_NO_LC_Converter + + + org.jooq.test._.converters.Boolean_YES_NO_UC + org.jooq.test._.converters.Boolean_YES_NO_UC_Converter + + + + + + BIT + (?i:(.*?.)?T_BOOLEANS.(VC|C|N)_BOOLEAN) + + + + org.jooq.test._.converters.Boolean_YES_NO_LC + (?i:(.*?.)?T_BOOLEANS.YES_NO_LC) + + + org.jooq.test._.converters.Boolean_YES_NO_UC + (?i:(.*?.)?T_BOOLEANS.YES_NO_UC) + + + org.jooq.test._.converters.Boolean_YN_LC + (?i:(.*?.)?T_BOOLEANS.Y_N_LC) + + + org.jooq.test._.converters.Boolean_YN_UC + (?i:(.*?.)?T_BOOLEANS.Y_N_UC) + + + org.jooq.test._.converters.Boolean_TF_LC + (?i:(.*?.)?T_BOOLEANS.TRUE_FALSE_LC) + + + org.jooq.test._.converters.Boolean_TF_UC + (?i:(.*?.)?T_BOOLEANS.TRUE_FALSE_UC) + + + org.jooq.test._.converters.Boolean_10 + (?i:(.*?.)?T_BOOLEANS.ONE_ZERO) + + + + + true + true + true + false + false + true + false + false + + + org.jooq.test.ase.generatedclasses + ./src + + + \ No newline at end of file diff --git a/jOOQ-test/configuration/org/jooq/configuration/lukas/ase/sys.properties b/jOOQ-test/configuration/org/jooq/configuration/lukas/ase/sys.properties new file mode 100644 index 00000000000..1638d861916 --- /dev/null +++ b/jOOQ-test/configuration/org/jooq/configuration/lukas/ase/sys.properties @@ -0,0 +1,18 @@ +#Sybase system table properties file +jdbc.Driver=net.sourceforge.jtds.jdbc.Driver +jdbc.URL=jdbc:jtds:sybase://lukas-hp:5000/TEST +jdbc.Schema=dbo +jdbc.User=sa +jdbc.Password= + +generator=org.jooq.util.DefaultGenerator +generator.database=org.jooq.util.ase.ASEDatabase +generator.database.includes=sysindexes,sysobjects,sysreferences +generator.database.excludes= +generator.generate.records=false +generator.generate.deprecated=false +generator.generate.instance-fields=false +generator.generate.records=false + +generator.target.package=org.jooq.util.ase.sys +generator.target.directory=./src/main/java \ No newline at end of file diff --git a/jOOQ-test/configuration/org/jooq/configuration/lukas/cubrid/dba.xml b/jOOQ-test/configuration/org/jooq/configuration/lukas/cubrid/dba.xml new file mode 100644 index 00000000000..74f1c1513de --- /dev/null +++ b/jOOQ-test/configuration/org/jooq/configuration/lukas/cubrid/dba.xml @@ -0,0 +1,28 @@ + + + + cubrid.jdbc.driver.CUBRIDDriver + jdbc:cubrid:localhost:33000:demodb::: + dba + + + + org.jooq.util.DefaultGenerator + + org.jooq.util.cubrid.CUBRIDDatabase + db_class,db_attribute,db_index,db_index_key,db_serial + + DBA + + + false + true + true + false + + + org.jooq.util.cubrid.dba + ./src/main/java + + + \ No newline at end of file diff --git a/jOOQ-test/configuration/org/jooq/configuration/lukas/cubrid/demodb.xml b/jOOQ-test/configuration/org/jooq/configuration/lukas/cubrid/demodb.xml new file mode 100644 index 00000000000..3950bc75bcf --- /dev/null +++ b/jOOQ-test/configuration/org/jooq/configuration/lukas/cubrid/demodb.xml @@ -0,0 +1,34 @@ + + + + cubrid.jdbc.driver.CUBRIDDriver + jdbc:cubrid:localhost:33000:demodb::: + PUBLIC + dba + + + + org.jooq.util.DefaultGenerator + + org.jooq.util.cubrid.CUBRIDDatabase + .* + + false + true + + + true + true + false + true + false + true + true + true + + + org.jooq.examples.cubrid.demodb + ./examples + + + \ No newline at end of file diff --git a/jOOQ-test/configuration/org/jooq/configuration/lukas/cubrid/library.properties b/jOOQ-test/configuration/org/jooq/configuration/lukas/cubrid/library.properties new file mode 100644 index 00000000000..8eeef057f66 --- /dev/null +++ b/jOOQ-test/configuration/org/jooq/configuration/lukas/cubrid/library.properties @@ -0,0 +1,6 @@ +#Sybase system table properties file +jdbc.Driver=cubrid.jdbc.driver.CUBRIDDriver +jdbc.URL=jdbc:cubrid:localhost:33000:test::: +jdbc.Schema=PUBLIC +jdbc.User=dba +jdbc.Password=test diff --git a/jOOQ-test/configuration/org/jooq/configuration/lukas/cubrid/library.xml b/jOOQ-test/configuration/org/jooq/configuration/lukas/cubrid/library.xml new file mode 100644 index 00000000000..d7e912ee632 --- /dev/null +++ b/jOOQ-test/configuration/org/jooq/configuration/lukas/cubrid/library.xml @@ -0,0 +1,129 @@ + + + + cubrid.jdbc.driver.CUBRIDDriver + jdbc:cubrid:localhost:33000:test::: + DBA + dba + test + + + org.jooq.util.DefaultGenerator + + org.jooq.util.cubrid.CUBRIDDatabase + t_.*,x_.*,v_.*,V_.*,p_.*,f_.*,(f|p)[0-9]+,s_.* + t_book_details + false + true + + + t_language + cd + description + + + t_658_11 + + + t_658_21 + + + t_658_31 + + + t_658_12 + cd + + + t_658_22 + cd + + + t_658_32 + cd + + + + + + org.jooq.test._.converters.Boolean_10 + org.jooq.test._.converters.Boolean_10_Converter + + + org.jooq.test._.converters.Boolean_TF_LC + org.jooq.test._.converters.Boolean_TF_LC_Converter + + + org.jooq.test._.converters.Boolean_TF_UC + org.jooq.test._.converters.Boolean_TF_UC_Converter + + + org.jooq.test._.converters.Boolean_YN_LC + org.jooq.test._.converters.Boolean_YN_LC_Converter + + + org.jooq.test._.converters.Boolean_YN_UC + org.jooq.test._.converters.Boolean_YN_UC_Converter + + + org.jooq.test._.converters.Boolean_YES_NO_LC + org.jooq.test._.converters.Boolean_YES_NO_LC_Converter + + + org.jooq.test._.converters.Boolean_YES_NO_UC + org.jooq.test._.converters.Boolean_YES_NO_UC_Converter + + + + + + BOOLEAN + (?i:(.*?.)?T_BOOLEANS.(VC|C|N)_BOOLEAN) + + + + org.jooq.test._.converters.Boolean_YES_NO_LC + (?i:(.*?.)?T_BOOLEANS.YES_NO_LC) + + + org.jooq.test._.converters.Boolean_YES_NO_UC + (?i:(.*?.)?T_BOOLEANS.YES_NO_UC) + + + org.jooq.test._.converters.Boolean_YN_LC + (?i:(.*?.)?T_BOOLEANS.Y_N_LC) + + + org.jooq.test._.converters.Boolean_YN_UC + (?i:(.*?.)?T_BOOLEANS.Y_N_UC) + + + org.jooq.test._.converters.Boolean_TF_LC + (?i:(.*?.)?T_BOOLEANS.TRUE_FALSE_LC) + + + org.jooq.test._.converters.Boolean_TF_UC + (?i:(.*?.)?T_BOOLEANS.TRUE_FALSE_UC) + + + org.jooq.test._.converters.Boolean_10 + (?i:(.*?.)?T_BOOLEANS.ONE_ZERO) + + + + + true + true + true + false + false + true + false + false + + + org.jooq.test.cubrid.generatedclasses + ./src + + + \ No newline at end of file diff --git a/jOOQ-test/configuration/org/jooq/configuration/lukas/db2/library.properties b/jOOQ-test/configuration/org/jooq/configuration/lukas/db2/library.properties new file mode 100644 index 00000000000..63726eaa6b9 --- /dev/null +++ b/jOOQ-test/configuration/org/jooq/configuration/lukas/db2/library.properties @@ -0,0 +1,48 @@ +#example properties file +jdbc.Driver=com.ibm.db2.jcc.DB2Driver +jdbc.URL=jdbc:db2://localhost:50000/SAMPLE:retrieveMessagesFromServerOnGetMessage=true; +jdbc.Schema=LUKAS +jdbc.User=db2admin +jdbc.Password=password + +generator=org.jooq.util.DefaultGenerator +generator.database=org.jooq.util.db2.DB2Database +generator.database.includes=T_.*,X_.*,V_.*,P_.*,F_.*,(F|P)[0-9]+,S_.* +generator.database.excludes=T_BOOK_DETAILS + +#Database enum type mappings +generator.database.enum-type.BOOLEAN_10=1,0 +generator.database.enum-type.BOOLEAN_YN_UC="Y",N +generator.database.enum-type.BOOLEAN_YN_LC=y,"n" +generator.database.enum-type.BOOLEAN_YES_NO_UC="YES","NO" +generator.database.enum-type.BOOLEAN_YES_NO_LC=yes,no +generator.database.enum-type.BOOLEAN_TRUE_FALSE_UC=TRUE,FALSE +generator.database.enum-type.BOOLEAN_TRUE_FALSE_LC=true,false + +generator.database.forced-type.BOOLEAN_10=(?i:(.*?\.)?T_BOOLEANS\.ONE_ZERO) +generator.database.forced-type.BOOLEAN_YN_UC=(?i:(.*?\.)?T_BOOLEANS\.Y_N_UC) +generator.database.forced-type.BOOLEAN_YN_LC=(?i:(.*?\.)?T_BOOLEANS\.Y_N_LC) +generator.database.forced-type.BOOLEAN_YES_NO_UC=(?i:(.*?\.)?T_BOOLEANS\.YES_NO_UC) +generator.database.forced-type.BOOLEAN_YES_NO_LC=(?i:(.*?\.)?T_BOOLEANS\.YES_NO_LC) +generator.database.forced-type.BOOLEAN_TRUE_FALSE_UC=(?i:(.*?\.)?T_BOOLEANS\.TRUE_FALSE_UC) +generator.database.forced-type.BOOLEAN_TRUE_FALSE_LC=(?i:(.*?\.)?T_BOOLEANS\.TRUE_FALSE_LC) + +#[#677] Forced types +generator.database.forced-type.BOOLEAN=(?i:(.*?\.)?T_BOOLEANS\.(VC|C|N)_BOOLEAN) + +#Generator configuration +generator.generate.records=true +generator.generate.relations=true +generator.generate.instance-fields=false +generator.generate.generated-annotation=false + +#Generate a master data table enum from T_LANGUAGE +generator.generate.master-data-tables=T_LANGUAGE,T_658_11,T_658_21,T_658_31,T_658_12,T_658_22,T_658_32 +generator.generate.master-data-table-literal.T_LANGUAGE=CD +generator.generate.master-data-table-description.T_LANGUAGE=DESCRIPTION +generator.generate.master-data-table-literal.T_658_12=CD +generator.generate.master-data-table-literal.T_658_22=CD +generator.generate.master-data-table-literal.T_658_32=CD + +generator.target.package=org.jooq.test.db2.generatedclasses +generator.target.directory=./src \ No newline at end of file diff --git a/jOOQ-test/configuration/org/jooq/configuration/lukas/db2/library.xml b/jOOQ-test/configuration/org/jooq/configuration/lukas/db2/library.xml new file mode 100644 index 00000000000..e7e917b7790 --- /dev/null +++ b/jOOQ-test/configuration/org/jooq/configuration/lukas/db2/library.xml @@ -0,0 +1,129 @@ + + + + com.ibm.db2.jcc.DB2Driver + jdbc:db2://localhost:50000/SAMPLE:retrieveMessagesFromServerOnGetMessage=true; + LUKAS + db2admin + password + + + org.jooq.util.DefaultGenerator + + org.jooq.util.db2.DB2Database + T_.*,X_.*,V_.*,P_.*,F_.*,(F|P)[0-9]+,S_.* + T_BOOK_DETAILS + false + true + + + T_LANGUAGE + CD + DESCRIPTION + + + T_658_11 + + + T_658_21 + + + T_658_31 + + + T_658_12 + CD + + + T_658_22 + CD + + + T_658_32 + CD + + + + + + org.jooq.test._.converters.Boolean_10 + org.jooq.test._.converters.Boolean_10_Converter + + + org.jooq.test._.converters.Boolean_TF_LC + org.jooq.test._.converters.Boolean_TF_LC_Converter + + + org.jooq.test._.converters.Boolean_TF_UC + org.jooq.test._.converters.Boolean_TF_UC_Converter + + + org.jooq.test._.converters.Boolean_YN_LC + org.jooq.test._.converters.Boolean_YN_LC_Converter + + + org.jooq.test._.converters.Boolean_YN_UC + org.jooq.test._.converters.Boolean_YN_UC_Converter + + + org.jooq.test._.converters.Boolean_YES_NO_LC + org.jooq.test._.converters.Boolean_YES_NO_LC_Converter + + + org.jooq.test._.converters.Boolean_YES_NO_UC + org.jooq.test._.converters.Boolean_YES_NO_UC_Converter + + + + + + BOOLEAN + (?i:(.*?.)?T_BOOLEANS.(VC|C|N)_BOOLEAN) + + + + org.jooq.test._.converters.Boolean_YES_NO_LC + (?i:(.*?.)?T_BOOLEANS.YES_NO_LC) + + + org.jooq.test._.converters.Boolean_YES_NO_UC + (?i:(.*?.)?T_BOOLEANS.YES_NO_UC) + + + org.jooq.test._.converters.Boolean_YN_LC + (?i:(.*?.)?T_BOOLEANS.Y_N_LC) + + + org.jooq.test._.converters.Boolean_YN_UC + (?i:(.*?.)?T_BOOLEANS.Y_N_UC) + + + org.jooq.test._.converters.Boolean_TF_LC + (?i:(.*?.)?T_BOOLEANS.TRUE_FALSE_LC) + + + org.jooq.test._.converters.Boolean_TF_UC + (?i:(.*?.)?T_BOOLEANS.TRUE_FALSE_UC) + + + org.jooq.test._.converters.Boolean_10 + (?i:(.*?.)?T_BOOLEANS.ONE_ZERO) + + + + + true + true + true + false + false + true + false + false + + + org.jooq.test.db2.generatedclasses + ./src + + + \ No newline at end of file diff --git a/jOOQ-test/configuration/org/jooq/configuration/lukas/db2/syscat.properties b/jOOQ-test/configuration/org/jooq/configuration/lukas/db2/syscat.properties new file mode 100644 index 00000000000..cd80037cb53 --- /dev/null +++ b/jOOQ-test/configuration/org/jooq/configuration/lukas/db2/syscat.properties @@ -0,0 +1,18 @@ +#example properties file +jdbc.Driver=com.ibm.db2.jcc.DB2Driver +jdbc.URL=jdbc:db2://localhost:50000/SAMPLE:retrieveMessagesFromServerOnGetMessage=true; +jdbc.Schema=SYSCAT +jdbc.User=db2admin +jdbc.Password=password + +generator=org.jooq.util.DefaultGenerator +generator.database=org.jooq.util.db2.DB2Database +generator.database.includes=TABLES,COLUMNS,TABCONST,KEYCOLUSE,REFERENCES,PROCEDURES,PROCPARMS,FUNCTIONS,FUNCPARMS,DATATYPES,ATTRIBUTES,SEQUENCES +generator.database.excludes= +generator.generate.records=false +generator.generate.deprecated=false +generator.generate.instance-fields=false +generator.generate.records=false + +generator.target.package=org.jooq.util.db2.syscat +generator.target.directory=./src/main/java \ No newline at end of file diff --git a/jOOQ-test/configuration/org/jooq/configuration/lukas/derby/library.properties b/jOOQ-test/configuration/org/jooq/configuration/lukas/derby/library.properties new file mode 100644 index 00000000000..6effb796542 --- /dev/null +++ b/jOOQ-test/configuration/org/jooq/configuration/lukas/derby/library.properties @@ -0,0 +1,47 @@ +#example properties file +jdbc.Driver=org.apache.derby.jdbc.ClientDriver +jdbc.URL=jdbc:derby://localhost:1527/test;create=true +jdbc.Schema=TEST +jdbc.User=TEST +jdbc.Password=TEST + +generator=org.jooq.util.DefaultGenerator +generator.database=org.jooq.util.derby.DerbyDatabase +generator.database.includes=.* +generator.database.excludes=T_BOOK_DETAILS + +#Database enum type mappings +generator.database.enum-type.BOOLEAN_10=1,0 +generator.database.enum-type.BOOLEAN_YN_UC="Y",N +generator.database.enum-type.BOOLEAN_YN_LC=y,"n" +generator.database.enum-type.BOOLEAN_YES_NO_UC="YES","NO" +generator.database.enum-type.BOOLEAN_YES_NO_LC=yes,no +generator.database.enum-type.BOOLEAN_TRUE_FALSE_UC=TRUE,FALSE +generator.database.enum-type.BOOLEAN_TRUE_FALSE_LC=true,false + +generator.database.forced-type.BOOLEAN_10=(?i:(.*?\.)?T_BOOLEANS\.ONE_ZERO) +generator.database.forced-type.BOOLEAN_YN_UC=(?i:(.*?\.)?T_BOOLEANS\.Y_N_UC) +generator.database.forced-type.BOOLEAN_YN_LC=(?i:(.*?\.)?T_BOOLEANS\.Y_N_LC) +generator.database.forced-type.BOOLEAN_YES_NO_UC=(?i:(.*?\.)?T_BOOLEANS\.YES_NO_UC) +generator.database.forced-type.BOOLEAN_YES_NO_LC=(?i:(.*?\.)?T_BOOLEANS\.YES_NO_LC) +generator.database.forced-type.BOOLEAN_TRUE_FALSE_UC=(?i:(.*?\.)?T_BOOLEANS\.TRUE_FALSE_UC) +generator.database.forced-type.BOOLEAN_TRUE_FALSE_LC=(?i:(.*?\.)?T_BOOLEANS\.TRUE_FALSE_LC) + +#[#677] Forced types +generator.database.forced-type.BOOLEAN=(?i:(.*?\.)?T_BOOLEANS\.(VC|C|N)_BOOLEAN) + +#Generator configuration +generator.generate.relations=true +generator.generate.instance-fields=false +generator.generate.generated-annotation=false + +#Generate a master data table enum from T_LANGUAGE +generator.generate.master-data-tables=T_LANGUAGE,T_658_11,T_658_21,T_658_31,T_658_12,T_658_22,T_658_32 +generator.generate.master-data-table-literal.T_LANGUAGE=CD +generator.generate.master-data-table-description.T_LANGUAGE=DESCRIPTION +generator.generate.master-data-table-literal.T_658_12=CD +generator.generate.master-data-table-literal.T_658_22=CD +generator.generate.master-data-table-literal.T_658_32=CD + +generator.target.package=org.jooq.test.derby.generatedclasses +generator.target.directory=./src \ No newline at end of file diff --git a/jOOQ-test/configuration/org/jooq/configuration/lukas/derby/library.xml b/jOOQ-test/configuration/org/jooq/configuration/lukas/derby/library.xml new file mode 100644 index 00000000000..e1f3d57fc7a --- /dev/null +++ b/jOOQ-test/configuration/org/jooq/configuration/lukas/derby/library.xml @@ -0,0 +1,129 @@ + + + + org.apache.derby.jdbc.ClientDriver + jdbc:derby://localhost:1527/test;create=true + TEST + TEST + TEST + + + org.jooq.util.DefaultGenerator + + org.jooq.util.derby.DerbyDatabase + .* + T_BOOK_DETAILS + false + true + + + T_LANGUAGE + CD + DESCRIPTION + + + T_658_11 + + + T_658_21 + + + T_658_31 + + + T_658_12 + CD + + + T_658_22 + CD + + + T_658_32 + CD + + + + + + org.jooq.test._.converters.Boolean_10 + org.jooq.test._.converters.Boolean_10_Converter + + + org.jooq.test._.converters.Boolean_TF_LC + org.jooq.test._.converters.Boolean_TF_LC_Converter + + + org.jooq.test._.converters.Boolean_TF_UC + org.jooq.test._.converters.Boolean_TF_UC_Converter + + + org.jooq.test._.converters.Boolean_YN_LC + org.jooq.test._.converters.Boolean_YN_LC_Converter + + + org.jooq.test._.converters.Boolean_YN_UC + org.jooq.test._.converters.Boolean_YN_UC_Converter + + + org.jooq.test._.converters.Boolean_YES_NO_LC + org.jooq.test._.converters.Boolean_YES_NO_LC_Converter + + + org.jooq.test._.converters.Boolean_YES_NO_UC + org.jooq.test._.converters.Boolean_YES_NO_UC_Converter + + + + + + BOOLEAN + (?i:(.*?.)?T_BOOLEANS.(VC|C|N)_BOOLEAN) + + + + org.jooq.test._.converters.Boolean_YES_NO_LC + (?i:(.*?.)?T_BOOLEANS.YES_NO_LC) + + + org.jooq.test._.converters.Boolean_YES_NO_UC + (?i:(.*?.)?T_BOOLEANS.YES_NO_UC) + + + org.jooq.test._.converters.Boolean_YN_LC + (?i:(.*?.)?T_BOOLEANS.Y_N_LC) + + + org.jooq.test._.converters.Boolean_YN_UC + (?i:(.*?.)?T_BOOLEANS.Y_N_UC) + + + org.jooq.test._.converters.Boolean_TF_LC + (?i:(.*?.)?T_BOOLEANS.TRUE_FALSE_LC) + + + org.jooq.test._.converters.Boolean_TF_UC + (?i:(.*?.)?T_BOOLEANS.TRUE_FALSE_UC) + + + org.jooq.test._.converters.Boolean_10 + (?i:(.*?.)?T_BOOLEANS.ONE_ZERO) + + + + + true + true + true + false + false + true + false + false + + + org.jooq.test.derby.generatedclasses + ./src + + + \ No newline at end of file diff --git a/jOOQ-test/configuration/org/jooq/configuration/lukas/derby/sys.properties b/jOOQ-test/configuration/org/jooq/configuration/lukas/derby/sys.properties new file mode 100644 index 00000000000..9c2d3387208 --- /dev/null +++ b/jOOQ-test/configuration/org/jooq/configuration/lukas/derby/sys.properties @@ -0,0 +1,18 @@ +#example properties file +jdbc.Driver=org.apache.derby.jdbc.ClientDriver +jdbc.URL=jdbc:derby://localhost:1527/test;create=true +jdbc.Schema=SYS +jdbc.User=TEST +jdbc.Password=TEST + +generator=org.jooq.util.DefaultGenerator +generator.database=org.jooq.util.derby.DerbyDatabase +generator.database.includes=SYSSCHEMAS,SYSTABLES,SYSCOLUMNS,SYSCONSTRAINTS,SYSCONGLOMERATES,SYSKEYS,SYSSEQUENCES +generator.database.excludes= +generator.generate.records=false +generator.generate.deprecated=false +generator.generate.instance-fields=false +generator.generate.records=false + +generator.target.package=org.jooq.util.derby.sys +generator.target.directory=./src/main/java \ No newline at end of file diff --git a/jOOQ-test/configuration/org/jooq/configuration/lukas/h2/information_schema.properties b/jOOQ-test/configuration/org/jooq/configuration/lukas/h2/information_schema.properties new file mode 100644 index 00000000000..b964284a21b --- /dev/null +++ b/jOOQ-test/configuration/org/jooq/configuration/lukas/h2/information_schema.properties @@ -0,0 +1,17 @@ +#example properties file +jdbc.Driver=org.h2.Driver +jdbc.URL=jdbc:h2:~/test +jdbc.Schema=INFORMATION_SCHEMA +jdbc.User=sa +jdbc.Password= + +generator=org.jooq.util.DefaultGenerator +generator.database=org.jooq.util.h2.H2Database +generator.database.includes=TABLES,COLUMNS,CONSTRAINTS,CROSS_REFERENCES,TYPE_INFO,FUNCTION_ALIASES,FUNCTION_COLUMNS,SEQUENCES +generator.database.excludes= +generator.generate.deprecated=false +generator.generate.instance-fields=false +generator.generate.records=false + +generator.target.package=org.jooq.util.h2.information_schema +generator.target.directory=./src/main/java \ No newline at end of file diff --git a/jOOQ-test/configuration/org/jooq/configuration/lukas/h2/library.properties b/jOOQ-test/configuration/org/jooq/configuration/lukas/h2/library.properties new file mode 100644 index 00000000000..3de66d6bdfa --- /dev/null +++ b/jOOQ-test/configuration/org/jooq/configuration/lukas/h2/library.properties @@ -0,0 +1,48 @@ +#example properties file +jdbc.Driver=org.h2.Driver +#jdbc.URL=jdbc:h2:tcp://localhost/~/test +jdbc.URL=jdbc:h2:~/test +jdbc.Schema=PUBLIC +jdbc.User=sa +jdbc.Password= + +generator=org.jooq.util.DefaultGenerator +generator.database=org.jooq.util.h2.H2Database +generator.database.includes=.* +generator.database.excludes=T_BOOK_DETAILS,SYSTEM_SEQUENCE.* + +#Database enum type mappings +generator.database.enum-type.BOOLEAN_10=1,0 +generator.database.enum-type.BOOLEAN_YN_UC="Y",N +generator.database.enum-type.BOOLEAN_YN_LC=y,"n" +generator.database.enum-type.BOOLEAN_YES_NO_UC="YES","NO" +generator.database.enum-type.BOOLEAN_YES_NO_LC=yes,no +generator.database.enum-type.BOOLEAN_TRUE_FALSE_UC=TRUE,FALSE +generator.database.enum-type.BOOLEAN_TRUE_FALSE_LC=true,false + +generator.database.forced-type.BOOLEAN_10=(?i:(.*?\.)?T_BOOLEANS\.ONE_ZERO) +generator.database.forced-type.BOOLEAN_YN_UC=(?i:(.*?\.)?T_BOOLEANS\.Y_N_UC) +generator.database.forced-type.BOOLEAN_YN_LC=(?i:(.*?\.)?T_BOOLEANS\.Y_N_LC) +generator.database.forced-type.BOOLEAN_YES_NO_UC=(?i:(.*?\.)?T_BOOLEANS\.YES_NO_UC) +generator.database.forced-type.BOOLEAN_YES_NO_LC=(?i:(.*?\.)?T_BOOLEANS\.YES_NO_LC) +generator.database.forced-type.BOOLEAN_TRUE_FALSE_UC=(?i:(.*?\.)?T_BOOLEANS\.TRUE_FALSE_UC) +generator.database.forced-type.BOOLEAN_TRUE_FALSE_LC=(?i:(.*?\.)?T_BOOLEANS\.TRUE_FALSE_LC) + +#[#677] Forced types +generator.database.forced-type.BOOLEAN=(?i:(.*?\.)?T_BOOLEANS\.(VC|C|N)_BOOLEAN) + +#Generator configuration +generator.generate.relations=true +generator.generate.instance-fields=false +generator.generate.generated-annotation=false + +#Generate a master data table enum from T_LANGUAGE +generator.generate.master-data-tables=T_LANGUAGE,T_658_11,T_658_21,T_658_31,T_658_12,T_658_22,T_658_32 +generator.generate.master-data-table-literal.T_LANGUAGE=CD +generator.generate.master-data-table-description.T_LANGUAGE=DESCRIPTION +generator.generate.master-data-table-literal.T_658_12=CD +generator.generate.master-data-table-literal.T_658_22=CD +generator.generate.master-data-table-literal.T_658_32=CD + +generator.target.package=org.jooq.test.h2.generatedclasses +generator.target.directory=./src \ No newline at end of file diff --git a/jOOQ-test/configuration/org/jooq/configuration/lukas/h2/library.xml b/jOOQ-test/configuration/org/jooq/configuration/lukas/h2/library.xml new file mode 100644 index 00000000000..a90aa1d948d --- /dev/null +++ b/jOOQ-test/configuration/org/jooq/configuration/lukas/h2/library.xml @@ -0,0 +1,129 @@ + + + + org.h2.Driver + jdbc:h2:~/test + PUBLIC + sa + + + + org.jooq.util.DefaultGenerator + + org.jooq.util.h2.H2Database + .* + T_BOOK_DETAILS,SYSTEM_SEQUENCE.* + false + true + + + T_LANGUAGE + CD + DESCRIPTION + + + T_658_11 + + + T_658_21 + + + T_658_31 + + + T_658_12 + CD + + + T_658_22 + CD + + + T_658_32 + CD + + + + + + org.jooq.test._.converters.Boolean_10 + org.jooq.test._.converters.Boolean_10_Converter + + + org.jooq.test._.converters.Boolean_TF_LC + org.jooq.test._.converters.Boolean_TF_LC_Converter + + + org.jooq.test._.converters.Boolean_TF_UC + org.jooq.test._.converters.Boolean_TF_UC_Converter + + + org.jooq.test._.converters.Boolean_YN_LC + org.jooq.test._.converters.Boolean_YN_LC_Converter + + + org.jooq.test._.converters.Boolean_YN_UC + org.jooq.test._.converters.Boolean_YN_UC_Converter + + + org.jooq.test._.converters.Boolean_YES_NO_LC + org.jooq.test._.converters.Boolean_YES_NO_LC_Converter + + + org.jooq.test._.converters.Boolean_YES_NO_UC + org.jooq.test._.converters.Boolean_YES_NO_UC_Converter + + + + + + BOOLEAN + (?i:(.*?.)?T_BOOLEANS.(VC|C|N)_BOOLEAN) + + + + org.jooq.test._.converters.Boolean_YES_NO_LC + (?i:(.*?.)?T_BOOLEANS.YES_NO_LC) + + + org.jooq.test._.converters.Boolean_YES_NO_UC + (?i:(.*?.)?T_BOOLEANS.YES_NO_UC) + + + org.jooq.test._.converters.Boolean_YN_LC + (?i:(.*?.)?T_BOOLEANS.Y_N_LC) + + + org.jooq.test._.converters.Boolean_YN_UC + (?i:(.*?.)?T_BOOLEANS.Y_N_UC) + + + org.jooq.test._.converters.Boolean_TF_LC + (?i:(.*?.)?T_BOOLEANS.TRUE_FALSE_LC) + + + org.jooq.test._.converters.Boolean_TF_UC + (?i:(.*?.)?T_BOOLEANS.TRUE_FALSE_UC) + + + org.jooq.test._.converters.Boolean_10 + (?i:(.*?.)?T_BOOLEANS.ONE_ZERO) + + + + + true + true + true + false + false + true + false + false + + + org.jooq.test.h2.generatedclasses + ./src + + + \ No newline at end of file diff --git a/jOOQ-test/configuration/org/jooq/configuration/lukas/hsqldb/information_schema.properties b/jOOQ-test/configuration/org/jooq/configuration/lukas/hsqldb/information_schema.properties new file mode 100644 index 00000000000..f9d2f37baea --- /dev/null +++ b/jOOQ-test/configuration/org/jooq/configuration/lukas/hsqldb/information_schema.properties @@ -0,0 +1,17 @@ +#example properties file +jdbc.Driver=org.hsqldb.jdbcDriver +jdbc.URL=jdbc:hsqldb:hsql://localhost +jdbc.Schema=INFORMATION_SCHEMA +jdbc.User=sa +jdbc.Password= + +generator=org.jooq.util.DefaultGenerator +generator.database=org.jooq.util.hsqldb.HSQLDBDatabase +generator.database.includes=TABLES,COLUMNS,REFERENTIAL_CONSTRAINTS,TABLE_CONSTRAINTS,CONSTRAINT_COLUMN_USAGE,KEY_COLUMN_USAGE,ROUTINES,PARAMETERS,SEQUENCES,ELEMENT_TYPES +generator.database.excludes= +generator.generate.deprecated=false +generator.generate.fields=both +generator.generate.records=false + +generator.target.package=org.jooq.util.hsqldb.information_schema +generator.target.directory=./src/main/java \ No newline at end of file diff --git a/jOOQ-test/configuration/org/jooq/configuration/lukas/hsqldb/library.properties b/jOOQ-test/configuration/org/jooq/configuration/lukas/hsqldb/library.properties new file mode 100644 index 00000000000..f5e0d120746 --- /dev/null +++ b/jOOQ-test/configuration/org/jooq/configuration/lukas/hsqldb/library.properties @@ -0,0 +1,46 @@ +#example properties file +jdbc.Driver=org.hsqldb.jdbcDriver +jdbc.URL=jdbc:hsqldb:hsql://localhost +jdbc.Schema=PUBLIC +jdbc.User=sa +jdbc.Password= + +generator=org.jooq.util.DefaultGenerator +generator.database=org.jooq.util.hsqldb.HSQLDBDatabase +generator.database.includes=.* +generator.database.excludes=T_BOOK_DETAILS,S_TRIGGERS_SEQUENCE + +#Database enum type mappings +generator.database.enum-type.BOOLEAN_10=1,0 +generator.database.enum-type.BOOLEAN_YN_UC="Y",N +generator.database.enum-type.BOOLEAN_YN_LC=y,"n" +generator.database.enum-type.BOOLEAN_YES_NO_UC="YES","NO" +generator.database.enum-type.BOOLEAN_YES_NO_LC=yes,no +generator.database.enum-type.BOOLEAN_TRUE_FALSE_UC=TRUE,FALSE +generator.database.enum-type.BOOLEAN_TRUE_FALSE_LC=true,false + +generator.database.forced-type.BOOLEAN_10=(?i:(.*?\.)?T_BOOLEANS\.ONE_ZERO) +generator.database.forced-type.BOOLEAN_YN_UC=(?i:(.*?\.)?T_BOOLEANS\.Y_N_UC) +generator.database.forced-type.BOOLEAN_YN_LC=(?i:(.*?\.)?T_BOOLEANS\.Y_N_LC) +generator.database.forced-type.BOOLEAN_YES_NO_UC=(?i:(.*?\.)?T_BOOLEANS\.YES_NO_UC) +generator.database.forced-type.BOOLEAN_YES_NO_LC=(?i:(.*?\.)?T_BOOLEANS\.YES_NO_LC) +generator.database.forced-type.BOOLEAN_TRUE_FALSE_UC=(?i:(.*?\.)?T_BOOLEANS\.TRUE_FALSE_UC) +generator.database.forced-type.BOOLEAN_TRUE_FALSE_LC=(?i:(.*?\.)?T_BOOLEANS\.TRUE_FALSE_LC) + +#[#677] Forced types +generator.database.forced-type.BOOLEAN=(?i:(.*?\.)?T_BOOLEANS\.(VC|C|N)_BOOLEAN) + +#Generator configuration +generator.generate.relations=true +generator.generate.instance-fields= + +#Generate a master data table enum from T_LANGUAGE +generator.generate.master-data-tables=T_LANGUAGE,T_658_11,T_658_21,T_658_31,T_658_12,T_658_22,T_658_32 +generator.generate.master-data-table-literal.T_LANGUAGE=CD +generator.generate.master-data-table-description.T_LANGUAGE=DESCRIPTION +generator.generate.master-data-table-literal.T_658_12=CD +generator.generate.master-data-table-literal.T_658_22=CD +generator.generate.master-data-table-literal.T_658_32=CD + +generator.target.package=org.jooq.test.hsqldb.generatedclasses +generator.target.directory=./src \ No newline at end of file diff --git a/jOOQ-test/configuration/org/jooq/configuration/lukas/hsqldb/library.xml b/jOOQ-test/configuration/org/jooq/configuration/lukas/hsqldb/library.xml new file mode 100644 index 00000000000..185d6bc1db2 --- /dev/null +++ b/jOOQ-test/configuration/org/jooq/configuration/lukas/hsqldb/library.xml @@ -0,0 +1,187 @@ + + + + org.hsqldb.jdbcDriver + jdbc:hsqldb:hsql://localhost + PUBLIC + + + user + sa + + + password + + + + + + org.jooq.util.DefaultGenerator + + org.jooq.util.hsqldb.HSQLDBDatabase + .* + T_BOOK_DETAILS,S_TRIGGERS_SEQUENCE + false + true + + + T_LANGUAGE + CD + DESCRIPTION + + + T_658_11 + + + T_658_21 + + + T_658_31 + + + T_658_12 + CD + + + T_658_22 + CD + + + T_658_32 + CD + + + + + org.jooq.test._.converters.StringEnum + org.jooq.test._.converters.StringEnumConverter + + + org.jooq.test._.converters.StringEnum1 + org.jooq.test._.converters.StringEnum1Converter + + + org.jooq.test._.converters.OrdinalEnum + org.jooq.test._.converters.OrdinalEnumConverter + + + org.jooq.test._.converters.OrdinalEnum1 + org.jooq.test._.converters.OrdinalEnum1Converter + + + + java.util.Date + org.jooq.test._.converters.DateConverter + + + java.util.GregorianCalendar + org.jooq.test._.converters.CalendarConverter + + + + org.jooq.test._.converters.Boolean_10 + org.jooq.test._.converters.Boolean_10_Converter + + + org.jooq.test._.converters.Boolean_TF_LC + org.jooq.test._.converters.Boolean_TF_LC_Converter + + + org.jooq.test._.converters.Boolean_TF_UC + org.jooq.test._.converters.Boolean_TF_UC_Converter + + + org.jooq.test._.converters.Boolean_YN_LC + org.jooq.test._.converters.Boolean_YN_LC_Converter + + + org.jooq.test._.converters.Boolean_YN_UC + org.jooq.test._.converters.Boolean_YN_UC_Converter + + + org.jooq.test._.converters.Boolean_YES_NO_LC + org.jooq.test._.converters.Boolean_YES_NO_LC_Converter + + + org.jooq.test._.converters.Boolean_YES_NO_UC + org.jooq.test._.converters.Boolean_YES_NO_UC_Converter + + + + + + org.jooq.test._.converters.StringEnum + (?i:(.*?\.)?T_MAPPED_TYPES.DEFAULT_ENUM_NAME) + + + org.jooq.test._.converters.StringEnum1 + (?i:(.*?\.)?T_MAPPED_TYPES.CUSTOM_ENUM_TEXT) + + + org.jooq.test._.converters.OrdinalEnum + (?i:(.*?\.)?T_MAPPED_TYPES.DEFAULT_ENUM_ORDINAL) + + + org.jooq.test._.converters.OrdinalEnum1 + (?i:(.*?\.)?T_MAPPED_TYPES.CUSTOM_ENUM_NUMERIC) + + + java.util.Date + (?i:(.*?\.)?T_MAPPED_TYPES.JAVA_UTIL_DATE) + + + java.util.GregorianCalendar + (?i:(.*?\.)?T_MAPPED_TYPES.JAVA_UTIL_CALENDAR) + + + + BOOLEAN + (?i:(.*?.)?T_BOOLEANS.(VC|C|N)_BOOLEAN) + + + + org.jooq.test._.converters.Boolean_YES_NO_LC + (?i:(.*?.)?T_BOOLEANS.YES_NO_LC) + + + org.jooq.test._.converters.Boolean_YES_NO_UC + (?i:(.*?.)?T_BOOLEANS.YES_NO_UC) + + + org.jooq.test._.converters.Boolean_YN_LC + (?i:(.*?.)?T_BOOLEANS.Y_N_LC) + + + org.jooq.test._.converters.Boolean_YN_UC + (?i:(.*?.)?T_BOOLEANS.Y_N_UC) + + + org.jooq.test._.converters.Boolean_TF_LC + (?i:(.*?.)?T_BOOLEANS.TRUE_FALSE_LC) + + + org.jooq.test._.converters.Boolean_TF_UC + (?i:(.*?.)?T_BOOLEANS.TRUE_FALSE_UC) + + + org.jooq.test._.converters.Boolean_10 + (?i:(.*?.)?T_BOOLEANS.ONE_ZERO) + + + + + true + true + true + true + false + true + false + false + + + org.jooq.test.hsqldb.generatedclasses + ./src + + + \ No newline at end of file diff --git a/jOOQ-test/configuration/org/jooq/configuration/lukas/ingres/$ingres.properties b/jOOQ-test/configuration/org/jooq/configuration/lukas/ingres/$ingres.properties new file mode 100644 index 00000000000..249db8cd98f --- /dev/null +++ b/jOOQ-test/configuration/org/jooq/configuration/lukas/ingres/$ingres.properties @@ -0,0 +1,18 @@ +#example properties file +jdbc.Driver=com.ingres.jdbc.IngresDriver +jdbc.URL=jdbc:ingres://localhost:II7/test;dbms_user=test;dbms_password=test +jdbc.Schema=$ingres +jdbc.User= +jdbc.Password= + +generator=org.jooq.util.DefaultGenerator +generator.database=org.jooq.util.ingres.IngresDatabase +generator.database.includes=iitables,iicolumns,iiconstraints,iiconstraint_indexes,iiindexes,iiindex_columns,iiref_constraints,iisequences,iidb_comments,iidb_subcomments +generator.database.excludes= +generator.generate.records=false +generator.generate.deprecated=false +generator.generate.instance-fields=false +generator.generate.records=false + +generator.target.package=org.jooq.util.ingres.ingres +generator.target.directory=./src/main/java \ No newline at end of file diff --git a/jOOQ-test/configuration/org/jooq/configuration/lukas/ingres/library.properties b/jOOQ-test/configuration/org/jooq/configuration/lukas/ingres/library.properties new file mode 100644 index 00000000000..447db11101e --- /dev/null +++ b/jOOQ-test/configuration/org/jooq/configuration/lukas/ingres/library.properties @@ -0,0 +1,47 @@ +#example properties file +jdbc.Driver=com.ingres.jdbc.IngresDriver +jdbc.URL=jdbc:ingres://localhost:II7/test;dbms_user=test;dbms_password=test +jdbc.Schema=test +jdbc.User= +jdbc.Password= + +generator=org.jooq.util.DefaultGenerator +generator.database=org.jooq.util.ingres.IngresDatabase +generator.database.includes=t_.*,x_.*,v_.*,p_.*,f_.*,(f|p)[0-9]+,s_.* +generator.database.excludes=t_book_details + +#Database enum type mappings +generator.database.enum-type.BOOLEAN_10=1,0 +generator.database.enum-type.BOOLEAN_YN_UC="Y",N +generator.database.enum-type.BOOLEAN_YN_LC=y,"n" +generator.database.enum-type.BOOLEAN_YES_NO_UC="YES","NO" +generator.database.enum-type.BOOLEAN_YES_NO_LC=yes,no +generator.database.enum-type.BOOLEAN_TRUE_FALSE_UC=TRUE,FALSE +generator.database.enum-type.BOOLEAN_TRUE_FALSE_LC=true,false + +generator.database.forced-type.BOOLEAN_10=(?i:(.*?\.)?T_BOOLEANS\.ONE_ZERO) +generator.database.forced-type.BOOLEAN_YN_UC=(?i:(.*?\.)?T_BOOLEANS\.Y_N_UC) +generator.database.forced-type.BOOLEAN_YN_LC=(?i:(.*?\.)?T_BOOLEANS\.Y_N_LC) +generator.database.forced-type.BOOLEAN_YES_NO_UC=(?i:(.*?\.)?T_BOOLEANS\.YES_NO_UC) +generator.database.forced-type.BOOLEAN_YES_NO_LC=(?i:(.*?\.)?T_BOOLEANS\.YES_NO_LC) +generator.database.forced-type.BOOLEAN_TRUE_FALSE_UC=(?i:(.*?\.)?T_BOOLEANS\.TRUE_FALSE_UC) +generator.database.forced-type.BOOLEAN_TRUE_FALSE_LC=(?i:(.*?\.)?T_BOOLEANS\.TRUE_FALSE_LC) + +#[#677] Forced types +generator.database.forced-type.BOOLEAN=(?i:(.*?\.)?T_BOOLEANS\.(VC|C|N)_BOOLEAN) + +#Generator configuration +generator.generate.relations=true +generator.generate.instance-fields=false +generator.generate.generated-annotation=false + +#Generate a master data table enum from T_LANGUAGE +generator.generate.master-data-tables=t_language,t_658_11,t_658_21,t_658_31,t_658_12,t_658_22,t_658_32 +generator.generate.master-data-table-literal.t_language=cd +generator.generate.master-data-table-description.t_language=description +generator.generate.master-data-table-literal.t_658_12=cd +generator.generate.master-data-table-literal.t_658_22=cd +generator.generate.master-data-table-literal.t_658_32=cd + +generator.target.package=org.jooq.test.ingres.generatedclasses +generator.target.directory=./src \ No newline at end of file diff --git a/jOOQ-test/configuration/org/jooq/configuration/lukas/ingres/library.xml b/jOOQ-test/configuration/org/jooq/configuration/lukas/ingres/library.xml new file mode 100644 index 00000000000..7c0c3b071b0 --- /dev/null +++ b/jOOQ-test/configuration/org/jooq/configuration/lukas/ingres/library.xml @@ -0,0 +1,127 @@ + + + + com.ingres.jdbc.IngresDriver + jdbc:ingres://localhost:II7/test;dbms_user=test;dbms_password=test + test + + + org.jooq.util.DefaultGenerator + + org.jooq.util.ingres.IngresDatabase + t_.*,x_.*,v_.*,p_.*,f_.*,(f|p)[0-9]+,s_.* + t_book_details + false + true + + + t_language + cd + description + + + t_658_11 + + + t_658_21 + + + t_658_31 + + + t_658_12 + cd + + + t_658_22 + cd + + + t_658_32 + cd + + + + + + org.jooq.test._.converters.Boolean_10 + org.jooq.test._.converters.Boolean_10_Converter + + + org.jooq.test._.converters.Boolean_TF_LC + org.jooq.test._.converters.Boolean_TF_LC_Converter + + + org.jooq.test._.converters.Boolean_TF_UC + org.jooq.test._.converters.Boolean_TF_UC_Converter + + + org.jooq.test._.converters.Boolean_YN_LC + org.jooq.test._.converters.Boolean_YN_LC_Converter + + + org.jooq.test._.converters.Boolean_YN_UC + org.jooq.test._.converters.Boolean_YN_UC_Converter + + + org.jooq.test._.converters.Boolean_YES_NO_LC + org.jooq.test._.converters.Boolean_YES_NO_LC_Converter + + + org.jooq.test._.converters.Boolean_YES_NO_UC + org.jooq.test._.converters.Boolean_YES_NO_UC_Converter + + + + + + BOOLEAN + (?i:(.*?.)?T_BOOLEANS.(VC|C|N)_BOOLEAN) + + + + org.jooq.test._.converters.Boolean_YES_NO_LC + (?i:(.*?.)?T_BOOLEANS.YES_NO_LC) + + + org.jooq.test._.converters.Boolean_YES_NO_UC + (?i:(.*?.)?T_BOOLEANS.YES_NO_UC) + + + org.jooq.test._.converters.Boolean_YN_LC + (?i:(.*?.)?T_BOOLEANS.Y_N_LC) + + + org.jooq.test._.converters.Boolean_YN_UC + (?i:(.*?.)?T_BOOLEANS.Y_N_UC) + + + org.jooq.test._.converters.Boolean_TF_LC + (?i:(.*?.)?T_BOOLEANS.TRUE_FALSE_LC) + + + org.jooq.test._.converters.Boolean_TF_UC + (?i:(.*?.)?T_BOOLEANS.TRUE_FALSE_UC) + + + org.jooq.test._.converters.Boolean_10 + (?i:(.*?.)?T_BOOLEANS.ONE_ZERO) + + + + + true + true + true + false + false + true + false + false + + + org.jooq.test.ingres.generatedclasses + ./src + + + \ No newline at end of file diff --git a/jOOQ-test/configuration/org/jooq/configuration/lukas/mysql/information_schema.properties b/jOOQ-test/configuration/org/jooq/configuration/lukas/mysql/information_schema.properties new file mode 100644 index 00000000000..f3ca1a0fcf1 --- /dev/null +++ b/jOOQ-test/configuration/org/jooq/configuration/lukas/mysql/information_schema.properties @@ -0,0 +1,17 @@ +#example properties file +jdbc.Driver=com.mysql.jdbc.Driver +jdbc.URL=jdbc:mysql://localhost/test +jdbc.Schema=information_schema +jdbc.User=root +jdbc.Password= + +generator=org.jooq.util.DefaultGenerator +generator.database=org.jooq.util.mysql.MySQLDatabase +generator.database.includes=TABLES,COLUMNS,KEY_COLUMN_USAGE,REFERENTIAL_CONSTRAINTS,TABLE_CONSTRAINTS +generator.database.excludes= +generator.generate.deprecated=false +generator.generate.instance-fields=false +generator.generate.records=false + +generator.target.package=org.jooq.util.mysql.information_schema +generator.target.directory=./src/main/java \ No newline at end of file diff --git a/jOOQ-test/configuration/org/jooq/configuration/lukas/mysql/library-schema-rewrite.properties b/jOOQ-test/configuration/org/jooq/configuration/lukas/mysql/library-schema-rewrite.properties new file mode 100644 index 00000000000..a6be1ecde91 --- /dev/null +++ b/jOOQ-test/configuration/org/jooq/configuration/lukas/mysql/library-schema-rewrite.properties @@ -0,0 +1,54 @@ +#example properties file +jdbc.Driver=com.mysql.jdbc.Driver +jdbc.URL=jdbc:mysql://localhost/test + +#This is left for backwards-compatibility. It is overridden by +#generator.database.input-schema +jdbc.Schema=test +jdbc.User=root +jdbc.Password= + +generator=org.jooq.util.DefaultGenerator +generator.database=org.jooq.util.mysql.MySQLDatabase +generator.database.includes=.* +generator.database.excludes=t_book_details +generator.database.input-schema=test +generator.database.output-schema=test2 + +#Database enum type mappings +generator.database.enum-type.BOOLEAN_10=1,0 +generator.database.enum-type.BOOLEAN_YN_UC="Y",N +generator.database.enum-type.BOOLEAN_YN_LC=y,"n" +generator.database.enum-type.BOOLEAN_YES_NO_UC="YES","NO" +generator.database.enum-type.BOOLEAN_YES_NO_LC=yes,no +generator.database.enum-type.BOOLEAN_TRUE_FALSE_UC=TRUE,FALSE +generator.database.enum-type.BOOLEAN_TRUE_FALSE_LC=true,false + +generator.database.forced-type.BOOLEAN_10=(?i:(.*?\.)?T_BOOLEANS\.ONE_ZERO) +generator.database.forced-type.BOOLEAN_YN_UC=(?i:(.*?\.)?T_BOOLEANS\.Y_N_UC) +generator.database.forced-type.BOOLEAN_YN_LC=(?i:(.*?\.)?T_BOOLEANS\.Y_N_LC) +generator.database.forced-type.BOOLEAN_YES_NO_UC=(?i:(.*?\.)?T_BOOLEANS\.YES_NO_UC) +generator.database.forced-type.BOOLEAN_YES_NO_LC=(?i:(.*?\.)?T_BOOLEANS\.YES_NO_LC) +generator.database.forced-type.BOOLEAN_TRUE_FALSE_UC=(?i:(.*?\.)?T_BOOLEANS\.TRUE_FALSE_UC) +generator.database.forced-type.BOOLEAN_TRUE_FALSE_LC=(?i:(.*?\.)?T_BOOLEANS\.TRUE_FALSE_LC) + +#[#677] Forced types +generator.database.forced-type.BOOLEAN=(?i:(.*?\.)?T_BOOLEANS\.(VC|C|N)_BOOLEAN) + +#Generator configuration +generator.generate.relations=true +generator.generate.instance-fields=true +generator.generate.generated-annotation=false +generator.generate.pojos=true +generator.generate.jpa-annotations=true + +#Generate a master data table enum from t_language +generator.generate.master-data-tables=t_language,t_658_11,t_658_21,t_658_31,t_658_12,t_658_22,t_658_32 +generator.generate.master-data-table-literal.t_language=CD +generator.generate.master-data-table-description.t_language=DESCRIPTION +generator.generate.master-data-table-literal.t_658_12=cd +generator.generate.master-data-table-literal.t_658_22=cd +generator.generate.master-data-table-literal.t_658_32=cd + +generator.target.package=org.jooq.test.mysql2.generatedclasses +generator.target.directory=./src \ No newline at end of file diff --git a/jOOQ-test/configuration/org/jooq/configuration/lukas/mysql/library-schema-rewrite.xml b/jOOQ-test/configuration/org/jooq/configuration/lukas/mysql/library-schema-rewrite.xml new file mode 100644 index 00000000000..68124ad14f2 --- /dev/null +++ b/jOOQ-test/configuration/org/jooq/configuration/lukas/mysql/library-schema-rewrite.xml @@ -0,0 +1,131 @@ + + + + com.mysql.jdbc.Driver + jdbc:mysql://localhost/test + test + root + + + + org.jooq.util.DefaultGenerator + + org.jooq.util.mysql.MySQLDatabase + .* + t_book_details + false + true + test + test2 + + + t_language + CD + DESCRIPTION + + + t_658_11 + + + t_658_21 + + + t_658_31 + + + t_658_12 + cd + + + t_658_22 + cd + + + t_658_32 + cd + + + + + + org.jooq.test._.converters.Boolean_10 + org.jooq.test._.converters.Boolean_10_Converter + + + org.jooq.test._.converters.Boolean_TF_LC + org.jooq.test._.converters.Boolean_TF_LC_Converter + + + org.jooq.test._.converters.Boolean_TF_UC + org.jooq.test._.converters.Boolean_TF_UC_Converter + + + org.jooq.test._.converters.Boolean_YN_LC + org.jooq.test._.converters.Boolean_YN_LC_Converter + + + org.jooq.test._.converters.Boolean_YN_UC + org.jooq.test._.converters.Boolean_YN_UC_Converter + + + org.jooq.test._.converters.Boolean_YES_NO_LC + org.jooq.test._.converters.Boolean_YES_NO_LC_Converter + + + org.jooq.test._.converters.Boolean_YES_NO_UC + org.jooq.test._.converters.Boolean_YES_NO_UC_Converter + + + + + + BOOLEAN + (?i:(.*?.)?T_BOOLEANS.(VC|C|N)_BOOLEAN) + + + + org.jooq.test._.converters.Boolean_YES_NO_LC + (?i:(.*?.)?T_BOOLEANS.YES_NO_LC) + + + org.jooq.test._.converters.Boolean_YES_NO_UC + (?i:(.*?.)?T_BOOLEANS.YES_NO_UC) + + + org.jooq.test._.converters.Boolean_YN_LC + (?i:(.*?.)?T_BOOLEANS.Y_N_LC) + + + org.jooq.test._.converters.Boolean_YN_UC + (?i:(.*?.)?T_BOOLEANS.Y_N_UC) + + + org.jooq.test._.converters.Boolean_TF_LC + (?i:(.*?.)?T_BOOLEANS.TRUE_FALSE_LC) + + + org.jooq.test._.converters.Boolean_TF_UC + (?i:(.*?.)?T_BOOLEANS.TRUE_FALSE_UC) + + + org.jooq.test._.converters.Boolean_10 + (?i:(.*?.)?T_BOOLEANS.ONE_ZERO) + + + + + true + true + true + true + false + true + true + true + + + org.jooq.test.mysql2.generatedclasses + ./src + + + \ No newline at end of file diff --git a/jOOQ-test/configuration/org/jooq/configuration/lukas/mysql/library.properties b/jOOQ-test/configuration/org/jooq/configuration/lukas/mysql/library.properties new file mode 100644 index 00000000000..311943e6fcf --- /dev/null +++ b/jOOQ-test/configuration/org/jooq/configuration/lukas/mysql/library.properties @@ -0,0 +1,48 @@ +#example properties file +jdbc.Driver=com.mysql.jdbc.Driver +jdbc.URL=jdbc:mysql://localhost/test +jdbc.Schema=test +jdbc.User=root +jdbc.Password= + +generator=org.jooq.util.DefaultGenerator +generator.database=org.jooq.util.mysql.MySQLDatabase +generator.database.includes=.* +generator.database.excludes=t_book_details + +#Database enum type mappings +generator.database.enum-type.BOOLEAN_10=1,0 +generator.database.enum-type.BOOLEAN_YN_UC="Y",N +generator.database.enum-type.BOOLEAN_YN_LC=y,"n" +generator.database.enum-type.BOOLEAN_YES_NO_UC="YES","NO" +generator.database.enum-type.BOOLEAN_YES_NO_LC=yes,no +generator.database.enum-type.BOOLEAN_TRUE_FALSE_UC=TRUE,FALSE +generator.database.enum-type.BOOLEAN_TRUE_FALSE_LC=true,false + +generator.database.forced-type.BOOLEAN_10=(?i:(.*?\.)?T_BOOLEANS\.ONE_ZERO) +generator.database.forced-type.BOOLEAN_YN_UC=(?i:(.*?\.)?T_BOOLEANS\.Y_N_UC) +generator.database.forced-type.BOOLEAN_YN_LC=(?i:(.*?\.)?T_BOOLEANS\.Y_N_LC) +generator.database.forced-type.BOOLEAN_YES_NO_UC=(?i:(.*?\.)?T_BOOLEANS\.YES_NO_UC) +generator.database.forced-type.BOOLEAN_YES_NO_LC=(?i:(.*?\.)?T_BOOLEANS\.YES_NO_LC) +generator.database.forced-type.BOOLEAN_TRUE_FALSE_UC=(?i:(.*?\.)?T_BOOLEANS\.TRUE_FALSE_UC) +generator.database.forced-type.BOOLEAN_TRUE_FALSE_LC=(?i:(.*?\.)?T_BOOLEANS\.TRUE_FALSE_LC) + +#[#677] Forced types +generator.database.forced-type.BOOLEAN=(?i:(.*?\.)?T_BOOLEANS\.(VC|C|N)_BOOLEAN) + +#Generator configuration +generator.generate.relations=true +generator.generate.instance-fields=false +generator.generate.generated-annotation=false +generator.generate.pojos=true + +#Generate a master data table enum from t_language +generator.generate.master-data-tables=t_language,t_658_11,t_658_21,t_658_31,t_658_12,t_658_22,t_658_32 +generator.generate.master-data-table-literal.t_language=CD +generator.generate.master-data-table-description.t_language=DESCRIPTION +generator.generate.master-data-table-literal.t_658_12=cd +generator.generate.master-data-table-literal.t_658_22=cd +generator.generate.master-data-table-literal.t_658_32=cd + +generator.target.package=org.jooq.test.mysql.generatedclasses +generator.target.directory=./src \ No newline at end of file diff --git a/jOOQ-test/configuration/org/jooq/configuration/lukas/mysql/library.xml b/jOOQ-test/configuration/org/jooq/configuration/lukas/mysql/library.xml new file mode 100644 index 00000000000..376d7d4c788 --- /dev/null +++ b/jOOQ-test/configuration/org/jooq/configuration/lukas/mysql/library.xml @@ -0,0 +1,129 @@ + + + + com.mysql.jdbc.Driver + jdbc:mysql://localhost/test + test + root + + + + org.jooq.util.DefaultGenerator + + org.jooq.util.mysql.MySQLDatabase + .* + t_book_details + false + true + + + t_language + CD + DESCRIPTION + + + t_658_11 + + + t_658_21 + + + t_658_31 + + + t_658_12 + cd + + + t_658_22 + cd + + + t_658_32 + cd + + + + + + org.jooq.test._.converters.Boolean_10 + org.jooq.test._.converters.Boolean_10_Converter + + + org.jooq.test._.converters.Boolean_TF_LC + org.jooq.test._.converters.Boolean_TF_LC_Converter + + + org.jooq.test._.converters.Boolean_TF_UC + org.jooq.test._.converters.Boolean_TF_UC_Converter + + + org.jooq.test._.converters.Boolean_YN_LC + org.jooq.test._.converters.Boolean_YN_LC_Converter + + + org.jooq.test._.converters.Boolean_YN_UC + org.jooq.test._.converters.Boolean_YN_UC_Converter + + + org.jooq.test._.converters.Boolean_YES_NO_LC + org.jooq.test._.converters.Boolean_YES_NO_LC_Converter + + + org.jooq.test._.converters.Boolean_YES_NO_UC + org.jooq.test._.converters.Boolean_YES_NO_UC_Converter + + + + + + BOOLEAN + (?i:(.*?.)?T_BOOLEANS.(VC|C|N)_BOOLEAN) + + + + org.jooq.test._.converters.Boolean_YES_NO_LC + (?i:(.*?.)?T_BOOLEANS.YES_NO_LC) + + + org.jooq.test._.converters.Boolean_YES_NO_UC + (?i:(.*?.)?T_BOOLEANS.YES_NO_UC) + + + org.jooq.test._.converters.Boolean_YN_LC + (?i:(.*?.)?T_BOOLEANS.Y_N_LC) + + + org.jooq.test._.converters.Boolean_YN_UC + (?i:(.*?.)?T_BOOLEANS.Y_N_UC) + + + org.jooq.test._.converters.Boolean_TF_LC + (?i:(.*?.)?T_BOOLEANS.TRUE_FALSE_LC) + + + org.jooq.test._.converters.Boolean_TF_UC + (?i:(.*?.)?T_BOOLEANS.TRUE_FALSE_UC) + + + org.jooq.test._.converters.Boolean_10 + (?i:(.*?.)?T_BOOLEANS.ONE_ZERO) + + + + + true + true + true + false + false + true + true + false + + + org.jooq.test.mysql.generatedclasses + ./src + + + \ No newline at end of file diff --git a/jOOQ-test/configuration/org/jooq/configuration/lukas/mysql/mysql.properties b/jOOQ-test/configuration/org/jooq/configuration/lukas/mysql/mysql.properties new file mode 100644 index 00000000000..919475c119c --- /dev/null +++ b/jOOQ-test/configuration/org/jooq/configuration/lukas/mysql/mysql.properties @@ -0,0 +1,18 @@ +#example properties file +jdbc.Driver=com.mysql.jdbc.Driver +jdbc.URL=jdbc:mysql://localhost/test +jdbc.Schema=mysql +jdbc.User=root +jdbc.Password= + +generator=org.jooq.util.DefaultGenerator +generator.database=org.jooq.util.mysql.MySQLDatabase +generator.database.includes=proc.* +generator.database.excludes= +generator.generate.relations=false +generator.generate.deprecated=false +generator.generate.instance-fields=false +generator.generate.records=false + +generator.target.package=org.jooq.util.mysql.mysql +generator.target.directory=./src/main/java \ No newline at end of file diff --git a/jOOQ-test/configuration/org/jooq/configuration/lukas/mysql/sakila.properties b/jOOQ-test/configuration/org/jooq/configuration/lukas/mysql/sakila.properties new file mode 100644 index 00000000000..2ec96aa2da0 --- /dev/null +++ b/jOOQ-test/configuration/org/jooq/configuration/lukas/mysql/sakila.properties @@ -0,0 +1,26 @@ +#example properties file +jdbc.Driver=com.mysql.jdbc.Driver +jdbc.URL=jdbc:mysql://localhost/sakila +jdbc.Schema=sakila +jdbc.User=root +jdbc.Password= + +generator=org.jooq.util.DefaultGenerator +generator.database=org.jooq.util.mysql.MySQLDatabase +generator.database.includes=.* +generator.database.excludes= +generator.generate.relations=true +generator.generate.instance-fields=true +generator.generate.unsigned-types=false +generator.generate.generated-annotation=false + +generator.strategy.meta-class-prefix=sakila_t_ +generator.strategy.meta-class-suffix=_meta +generator.strategy.record-class-prefix=sakila_r_ +generator.strategy.record-class-suffix=_record +generator.strategy.member-scheme=case-sensitive + +#Generate a master data table enum from t_language + +generator.target.package=org.jooq.examples.mysql.sakila +generator.target.directory=./examples \ No newline at end of file diff --git a/jOOQ-test/configuration/org/jooq/configuration/lukas/oracle/976.properties b/jOOQ-test/configuration/org/jooq/configuration/lukas/oracle/976.properties new file mode 100644 index 00000000000..5fd6d55d2a7 --- /dev/null +++ b/jOOQ-test/configuration/org/jooq/configuration/lukas/oracle/976.properties @@ -0,0 +1,21 @@ +#example properties file +jdbc.Driver=oracle.jdbc.OracleDriver +jdbc.URL=jdbc:oracle:thin:@localhost:1521:xe +jdbc.Schema=TEST +jdbc.User=TEST +jdbc.Password=TEST + +generator=org.jooq.util.DefaultGenerator +generator.database=org.jooq.util.oracle.OracleDatabase +generator.database.includes=.*976.* +generator.database.excludes= + +#[#976] Type rewrites +generator.database.date-as-timestamp=true + +#Generator configuration +generator.generate.relations=true +generator.generate.generated-annotation=false + +generator.target.package=org.jooq.test.oracle2.generatedclasses +generator.target.directory=./src \ No newline at end of file diff --git a/jOOQ-test/configuration/org/jooq/configuration/lukas/oracle/976.xml b/jOOQ-test/configuration/org/jooq/configuration/lukas/oracle/976.xml new file mode 100644 index 00000000000..4acaa6ec015 --- /dev/null +++ b/jOOQ-test/configuration/org/jooq/configuration/lukas/oracle/976.xml @@ -0,0 +1,35 @@ + + + + oracle.jdbc.OracleDriver + jdbc:oracle:thin:@localhost:1521:xe + TEST + TEST + TEST + + + org.jooq.util.DefaultGenerator + + org.jooq.configuration.lukas.oracle.Oracle2Strategy + + + org.jooq.util.oracle.OracleDatabase + .*976.* + + true + true + + + true + true + true + false + false + false + + + org.jooq.test.oracle2.generatedclasses + ./src + + + \ No newline at end of file diff --git a/jOOQ-test/configuration/org/jooq/configuration/lukas/oracle/Oracle2Strategy.java b/jOOQ-test/configuration/org/jooq/configuration/lukas/oracle/Oracle2Strategy.java new file mode 100644 index 00000000000..b65c2d8cae4 --- /dev/null +++ b/jOOQ-test/configuration/org/jooq/configuration/lukas/oracle/Oracle2Strategy.java @@ -0,0 +1,62 @@ +/** + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com + * All rights reserved. + * + * This software is licensed to you under the Apache License, Version 2.0 + * (the "License"); You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * 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 "jOOQ" 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 COPYRIGHT OWNER 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. + */ +package org.jooq.configuration.lukas.oracle; + +import org.jooq.util.DefaultGeneratorStrategy; +import org.jooq.util.Definition; + +/** + * A sample custom strategy + * + * @author Lukas Eder + */ +public class Oracle2Strategy extends DefaultGeneratorStrategy { + + @Override + public String getJavaIdentifier(Definition definition) { + return "DATE_AS_TIMESTAMP_" + super.getJavaIdentifier(definition); + } + + @Override + public String getJavaClassName(Definition definition, Mode mode) { + return "DateAsTimestamp" + super.getJavaClassName(definition, mode); + } + + @Override + public String getJavaMemberName(Definition definition, Mode mode) { + return "dateAsTimestamp" + super.getJavaMemberName(definition, mode); + } +} diff --git a/jOOQ-test/configuration/org/jooq/configuration/lukas/oracle/Oracle3Strategy.java b/jOOQ-test/configuration/org/jooq/configuration/lukas/oracle/Oracle3Strategy.java new file mode 100644 index 00000000000..7aa75af1ce3 --- /dev/null +++ b/jOOQ-test/configuration/org/jooq/configuration/lukas/oracle/Oracle3Strategy.java @@ -0,0 +1,122 @@ +/** + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com + * All rights reserved. + * + * This software is licensed to you under the Apache License, Version 2.0 + * (the "License"); You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * 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 "jOOQ" 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 COPYRIGHT OWNER 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. + */ +package org.jooq.configuration.lukas.oracle; + +import java.io.Serializable; +import java.util.Arrays; +import java.util.List; + +import org.jooq.util.DefaultGeneratorStrategy; +import org.jooq.util.Definition; + +/** + * A sample custom strategy + * + * @author Lukas Eder + */ +public class Oracle3Strategy extends DefaultGeneratorStrategy { + + @Override + public String getJavaIdentifier(Definition definition) { + return definition.getOutputName(); + } + + @Override + public String getJavaSetterName(Definition definition, Mode mode) { + return "set" + definition.getOutputName(); + } + + @Override + public String getJavaGetterName(Definition definition, Mode mode) { + return "get" + definition.getOutputName(); + } + + @Override + public String getJavaMethodName(Definition definition, Mode mode) { + return "call_" + definition.getOutputName(); + } + + @Override + public String getJavaClassExtends(Definition definition, Mode mode) { + // A little useless fun + + if (definition.getName().toLowerCase().contains("book")) { + return Object.class.getName(); + } + else { + return ThreadDeath.class.getName(); + } + } + + @Override + public List getJavaClassImplements(Definition definition, Mode mode) { + if (mode == Mode.POJO) { + if (definition.getName().toLowerCase().contains("book")) { + return Arrays.asList(Serializable.class.getName()); + } + else { + return Arrays.asList(Cloneable.class.getName()); + } + } + else { + if (definition.getName().toLowerCase().contains("library")) { + return Arrays.asList(Serializable.class.getName(), Cloneable.class.getName()); + } + else { + return Arrays.asList(Cloneable.class.getName(), Cloneable.class.getName()); + } + } + } + + @Override + public String getJavaClassName(Definition definition, Mode mode) { + if (mode == Mode.POJO) { + return definition.getOutputName() + "_POJO"; + } + + return definition.getOutputName(); + } + + @Override + public String getJavaPackageName(Definition definition, Mode mode) { + return super.getJavaPackageName(definition, mode); + } + + @Override + public String getJavaMemberName(Definition definition, Mode mode) { + return definition.getOutputName(); + } +} diff --git a/jOOQ-test/configuration/org/jooq/configuration/lukas/oracle/library-custom-strategy.xml b/jOOQ-test/configuration/org/jooq/configuration/lukas/oracle/library-custom-strategy.xml new file mode 100644 index 00000000000..3b2a4345c22 --- /dev/null +++ b/jOOQ-test/configuration/org/jooq/configuration/lukas/oracle/library-custom-strategy.xml @@ -0,0 +1,72 @@ + + + + oracle.jdbc.OracleDriver + jdbc:oracle:thin:@localhost:1521:xe + TEST + TEST + + + + org.jooq.util.DefaultGenerator + + + + org.jooq.configuration.lukas.oracle.Oracle3Strategy + + + + org.jooq.util.oracle.OracleDatabase + .* + T_BOOK_DETAILS,S_TRIGGERS_SEQUENCE,.*976.* + false + true + + + TEST + + + + + T_LANGUAGE + CD + DESCRIPTION + + + T_658_11 + + + T_658_21 + + + T_658_31 + + + T_658_12 + CD + + + T_658_22 + CD + + + T_658_32 + CD + + + + + true + true + true + false + false + true + true + + + org.jooq.test.oracle3.generatedclasses + ./src + + + diff --git a/jOOQ-test/configuration/org/jooq/configuration/lukas/oracle/library.properties b/jOOQ-test/configuration/org/jooq/configuration/lukas/oracle/library.properties new file mode 100644 index 00000000000..43268c5c097 --- /dev/null +++ b/jOOQ-test/configuration/org/jooq/configuration/lukas/oracle/library.properties @@ -0,0 +1,48 @@ +#example properties file +jdbc.Driver=oracle.jdbc.OracleDriver +jdbc.URL=jdbc:oracle:thin:@localhost:1521:xe +jdbc.Schema=TEST +jdbc.User=TEST +jdbc.Password=TEST + +generator=org.jooq.util.DefaultGenerator +generator.database=org.jooq.util.oracle.OracleDatabase +generator.database.includes=.* +generator.database.excludes=T_BOOK_DETAILS,S_TRIGGERS_SEQUENCE,.*976.* + +#Database enum type mappings +generator.database.enum-type.BOOLEAN_10=1,0 +generator.database.enum-type.BOOLEAN_YN_UC="Y",N +generator.database.enum-type.BOOLEAN_YN_LC=y,"n" +generator.database.enum-type.BOOLEAN_YES_NO_UC="YES","NO" +generator.database.enum-type.BOOLEAN_YES_NO_LC=yes,no +generator.database.enum-type.BOOLEAN_TRUE_FALSE_UC=TRUE,FALSE +generator.database.enum-type.BOOLEAN_TRUE_FALSE_LC=true,false + +generator.database.forced-type.BOOLEAN_10=(?i:(.*?\.)?T_BOOLEANS\.ONE_ZERO) +generator.database.forced-type.BOOLEAN_YN_UC=(?i:(.*?\.)?T_BOOLEANS\.Y_N_UC) +generator.database.forced-type.BOOLEAN_YN_LC=(?i:(.*?\.)?T_BOOLEANS\.Y_N_LC) +generator.database.forced-type.BOOLEAN_YES_NO_UC=(?i:(.*?\.)?T_BOOLEANS\.YES_NO_UC) +generator.database.forced-type.BOOLEAN_YES_NO_LC=(?i:(.*?\.)?T_BOOLEANS\.YES_NO_LC) +generator.database.forced-type.BOOLEAN_TRUE_FALSE_UC=(?i:(.*?\.)?T_BOOLEANS\.TRUE_FALSE_UC) +generator.database.forced-type.BOOLEAN_TRUE_FALSE_LC=(?i:(.*?\.)?T_BOOLEANS\.TRUE_FALSE_LC) + +#[#677] Forced types +generator.database.forced-type.BOOLEAN=(?i:(.*?\.)?T_BOOLEANS\.(VC|C|N)_BOOLEAN) + +#Generator configuration +generator.generate.relations=true +generator.generate.instance-fields= +generator.generate.generated-annotation=false +generator.generate.pojos=true + +#Generate a master data table enum from T_LANGUAGE +generator.generate.master-data-tables=T_LANGUAGE,T_658_11,T_658_21,T_658_31,T_658_12,T_658_22,T_658_32 +generator.generate.master-data-table-literal.T_LANGUAGE=CD +generator.generate.master-data-table-description.T_LANGUAGE=DESCRIPTION +generator.generate.master-data-table-literal.T_658_12=CD +generator.generate.master-data-table-literal.T_658_22=CD +generator.generate.master-data-table-literal.T_658_32=CD + +generator.target.package=org.jooq.test.oracle.generatedclasses +generator.target.directory=./src \ No newline at end of file diff --git a/jOOQ-test/configuration/org/jooq/configuration/lukas/oracle/library.xml b/jOOQ-test/configuration/org/jooq/configuration/lukas/oracle/library.xml new file mode 100644 index 00000000000..cba23d74147 --- /dev/null +++ b/jOOQ-test/configuration/org/jooq/configuration/lukas/oracle/library.xml @@ -0,0 +1,134 @@ + + + + oracle.jdbc.OracleDriver + jdbc:oracle:thin:@localhost:1521:xe + TEST + TEST + + + org.jooq.util.DefaultGenerator + + org.jooq.util.oracle.OracleDatabase + .* + T_BOOK_DETAILS,S_TRIGGERS_SEQUENCE,.*976.* + false + true + + + TEST + + + MULTI_SCHEMA + + + + + T_LANGUAGE + CD + DESCRIPTION + + + T_658_11 + + + T_658_21 + + + T_658_31 + + + T_658_12 + CD + + + T_658_22 + CD + + + T_658_32 + CD + + + + + + org.jooq.test._.converters.Boolean_10 + org.jooq.test._.converters.Boolean_10_Converter + + + org.jooq.test._.converters.Boolean_TF_LC + org.jooq.test._.converters.Boolean_TF_LC_Converter + + + org.jooq.test._.converters.Boolean_TF_UC + org.jooq.test._.converters.Boolean_TF_UC_Converter + + + org.jooq.test._.converters.Boolean_YN_LC + org.jooq.test._.converters.Boolean_YN_LC_Converter + + + org.jooq.test._.converters.Boolean_YN_UC + org.jooq.test._.converters.Boolean_YN_UC_Converter + + + org.jooq.test._.converters.Boolean_YES_NO_LC + org.jooq.test._.converters.Boolean_YES_NO_LC_Converter + + + org.jooq.test._.converters.Boolean_YES_NO_UC + org.jooq.test._.converters.Boolean_YES_NO_UC_Converter + + + + + + BOOLEAN + (?i:(.*?.)?T_BOOLEANS.(VC|C|N)_BOOLEAN) + + + + org.jooq.test._.converters.Boolean_YES_NO_LC + (?i:(.*?.)?T_BOOLEANS.YES_NO_LC) + + + org.jooq.test._.converters.Boolean_YES_NO_UC + (?i:(.*?.)?T_BOOLEANS.YES_NO_UC) + + + org.jooq.test._.converters.Boolean_YN_LC + (?i:(.*?.)?T_BOOLEANS.Y_N_LC) + + + org.jooq.test._.converters.Boolean_YN_UC + (?i:(.*?.)?T_BOOLEANS.Y_N_UC) + + + org.jooq.test._.converters.Boolean_TF_LC + (?i:(.*?.)?T_BOOLEANS.TRUE_FALSE_LC) + + + org.jooq.test._.converters.Boolean_TF_UC + (?i:(.*?.)?T_BOOLEANS.TRUE_FALSE_UC) + + + org.jooq.test._.converters.Boolean_10 + (?i:(.*?.)?T_BOOLEANS.ONE_ZERO) + + + + + true + true + true + false + true + true + + + org.jooq.test.oracle.generatedclasses + ./src + + + diff --git a/jOOQ-test/configuration/org/jooq/configuration/lukas/oracle/sys-test.properties b/jOOQ-test/configuration/org/jooq/configuration/lukas/oracle/sys-test.properties new file mode 100644 index 00000000000..43327294879 --- /dev/null +++ b/jOOQ-test/configuration/org/jooq/configuration/lukas/oracle/sys-test.properties @@ -0,0 +1,17 @@ +#example properties file +jdbc.Driver=oracle.jdbc.OracleDriver +jdbc.URL=jdbc:oracle:thin:@localhost:1521:xe +jdbc.Schema=SYS +jdbc.User=TEST +jdbc.Password=TEST + +generator=org.jooq.util.DefaultGenerator +generator.database=org.jooq.util.oracle.OracleDatabase +generator.database.includes=DBMS_XPLAN,DBMS_XPLAN_TYPE_TABLE,DBMS_XPLAN_TYPE +generator.database.excludes= +generator.generate.deprecated=false +generator.generate.instance-fields= +generator.generate.generated-annotation=false + +generator.target.package=org.jooq.examples.oracle.sys +generator.target.directory=./examples \ No newline at end of file diff --git a/jOOQ-test/configuration/org/jooq/configuration/lukas/oracle/sys.properties b/jOOQ-test/configuration/org/jooq/configuration/lukas/oracle/sys.properties new file mode 100644 index 00000000000..de2c08806a0 --- /dev/null +++ b/jOOQ-test/configuration/org/jooq/configuration/lukas/oracle/sys.properties @@ -0,0 +1,18 @@ +#example properties file +jdbc.Driver=oracle.jdbc.OracleDriver +jdbc.URL=jdbc:oracle:thin:@localhost:1521:xe +jdbc.Schema=SYS +jdbc.User=TEST +jdbc.Password=TEST + +generator=org.jooq.util.DefaultGenerator +generator.database=org.jooq.util.oracle.OracleDatabase +generator.database.includes=ALL_TAB_COMMENTS,ALL_TAB_COLS,ALL_COL_COMMENTS,ALL_CONSTRAINTS,ALL_CONS_COLUMNS,ALL_PROCEDURES,ALL_ARGUMENTS,ALL_OBJECTS,ALL_TYPES,ALL_TYPE_ATTRS,ALL_SEQUENCES,ALL_COLL_TYPES,ORA_MINING_NUMBER_NT,ORA_MINING_VARCHAR2_NT +generator.database.excludes= +generator.generate.records=false +generator.generate.deprecated=false +generator.generate.instance-fields= +generator.generate.records=false + +generator.target.package=org.jooq.util.oracle.sys +generator.target.directory=./src/main/java \ No newline at end of file diff --git a/jOOQ-test/configuration/org/jooq/configuration/lukas/postgres/information_schema.properties b/jOOQ-test/configuration/org/jooq/configuration/lukas/postgres/information_schema.properties new file mode 100644 index 00000000000..29fb31ae4e5 --- /dev/null +++ b/jOOQ-test/configuration/org/jooq/configuration/lukas/postgres/information_schema.properties @@ -0,0 +1,17 @@ +#example properties file +jdbc.Driver=org.postgresql.Driver +jdbc.URL=jdbc:postgresql:postgres +jdbc.Schema=information_schema +jdbc.User=postgres +jdbc.Password=test + +generator=org.jooq.util.DefaultGenerator +generator.database=org.jooq.util.postgres.PostgresDatabase +generator.database.includes=tables,columns,referential_constraints,table_constraints,key_column_usage,constraint_column_usage,attributes,routines,parameters,sequences +generator.database.excludes= +generator.generate.deprecated=false +generator.generate.instance-fields=true +generator.generate.records=false + +generator.target.package=org.jooq.util.postgres.information_schema +generator.target.directory=./src/main/java \ No newline at end of file diff --git a/jOOQ-test/configuration/org/jooq/configuration/lukas/postgres/library.properties b/jOOQ-test/configuration/org/jooq/configuration/lukas/postgres/library.properties new file mode 100644 index 00000000000..d1a4e02b29e --- /dev/null +++ b/jOOQ-test/configuration/org/jooq/configuration/lukas/postgres/library.properties @@ -0,0 +1,50 @@ +#example properties file +jdbc.Driver=org.postgresql.Driver +jdbc.URL=jdbc:postgresql:postgres +jdbc.Schema=public +jdbc.User=postgres +jdbc.Password=test + +generator=org.jooq.util.DefaultGenerator +generator.database=org.jooq.util.postgres.PostgresDatabase +generator.database.includes=.* +generator.database.excludes=t_book_details,.*?_seq + +#Database enum type mappings +generator.database.enum-type.BOOLEAN_10=1,0 +generator.database.enum-type.BOOLEAN_YN_UC="Y",N +generator.database.enum-type.BOOLEAN_YN_LC=y,"n" +generator.database.enum-type.BOOLEAN_YES_NO_UC="YES","NO" +generator.database.enum-type.BOOLEAN_YES_NO_LC=yes,no +generator.database.enum-type.BOOLEAN_TRUE_FALSE_UC=TRUE,FALSE +generator.database.enum-type.BOOLEAN_TRUE_FALSE_LC=true,false + +generator.database.forced-type.BOOLEAN_10=(?i:(.*?\.)?T_BOOLEANS\.ONE_ZERO) +generator.database.forced-type.BOOLEAN_YN_UC=(?i:(.*?\.)?T_BOOLEANS\.Y_N_UC) +generator.database.forced-type.BOOLEAN_YN_LC=(?i:(.*?\.)?T_BOOLEANS\.Y_N_LC) +generator.database.forced-type.BOOLEAN_YES_NO_UC=(?i:(.*?\.)?T_BOOLEANS\.YES_NO_UC) +generator.database.forced-type.BOOLEAN_YES_NO_LC=(?i:(.*?\.)?T_BOOLEANS\.YES_NO_LC) +generator.database.forced-type.BOOLEAN_TRUE_FALSE_UC=(?i:(.*?\.)?T_BOOLEANS\.TRUE_FALSE_UC) +generator.database.forced-type.BOOLEAN_TRUE_FALSE_LC=(?i:(.*?\.)?T_BOOLEANS\.TRUE_FALSE_LC) + +#[#677] Forced types +generator.database.forced-type.BOOLEAN=(?i:(.*?\.)?T_BOOLEANS\.(VC|C|N)_BOOLEAN) + +#Generator configuration +generator.generate.relations=true +generator.generate.deprecated=false +generator.generate.instance-fields=true +generator.generate.generated-annotation=false +generator.generate.pojos=true +generator.generate.jpa-annotations=true + +#Generate a master data table enum from t_language +generator.generate.master-data-tables=t_language,t_658_11,t_658_21,t_658_31,t_658_12,t_658_22,t_658_32 +generator.generate.master-data-table-literal.t_language=cd +generator.generate.master-data-table-description.t_language=description +generator.generate.master-data-table-literal.t_658_12=cd +generator.generate.master-data-table-literal.t_658_22=cd +generator.generate.master-data-table-literal.t_658_32=cd + +generator.target.package=org.jooq.test.postgres.generatedclasses +generator.target.directory=./src \ No newline at end of file diff --git a/jOOQ-test/configuration/org/jooq/configuration/lukas/postgres/library.xml b/jOOQ-test/configuration/org/jooq/configuration/lukas/postgres/library.xml new file mode 100644 index 00000000000..e08b7ce4e7f --- /dev/null +++ b/jOOQ-test/configuration/org/jooq/configuration/lukas/postgres/library.xml @@ -0,0 +1,129 @@ + + + + org.postgresql.Driver + jdbc:postgresql:postgres + public + postgres + test + + + org.jooq.util.DefaultGenerator + + org.jooq.util.postgres.PostgresDatabase + .* + t_book_details,.*?_seq + false + true + + + t_language + cd + description + + + t_658_11 + + + t_658_21 + + + t_658_31 + + + t_658_12 + cd + + + t_658_22 + cd + + + t_658_32 + cd + + + + + + org.jooq.test._.converters.Boolean_10 + org.jooq.test._.converters.Boolean_10_Converter + + + org.jooq.test._.converters.Boolean_TF_LC + org.jooq.test._.converters.Boolean_TF_LC_Converter + + + org.jooq.test._.converters.Boolean_TF_UC + org.jooq.test._.converters.Boolean_TF_UC_Converter + + + org.jooq.test._.converters.Boolean_YN_LC + org.jooq.test._.converters.Boolean_YN_LC_Converter + + + org.jooq.test._.converters.Boolean_YN_UC + org.jooq.test._.converters.Boolean_YN_UC_Converter + + + org.jooq.test._.converters.Boolean_YES_NO_LC + org.jooq.test._.converters.Boolean_YES_NO_LC_Converter + + + org.jooq.test._.converters.Boolean_YES_NO_UC + org.jooq.test._.converters.Boolean_YES_NO_UC_Converter + + + + + + BOOLEAN + (?i:(.*?.)?T_BOOLEANS.(VC|C|N)_BOOLEAN) + + + + org.jooq.test._.converters.Boolean_YES_NO_LC + (?i:(.*?.)?T_BOOLEANS.YES_NO_LC) + + + org.jooq.test._.converters.Boolean_YES_NO_UC + (?i:(.*?.)?T_BOOLEANS.YES_NO_UC) + + + org.jooq.test._.converters.Boolean_YN_LC + (?i:(.*?.)?T_BOOLEANS.Y_N_LC) + + + org.jooq.test._.converters.Boolean_YN_UC + (?i:(.*?.)?T_BOOLEANS.Y_N_UC) + + + org.jooq.test._.converters.Boolean_TF_LC + (?i:(.*?.)?T_BOOLEANS.TRUE_FALSE_LC) + + + org.jooq.test._.converters.Boolean_TF_UC + (?i:(.*?.)?T_BOOLEANS.TRUE_FALSE_UC) + + + org.jooq.test._.converters.Boolean_10 + (?i:(.*?.)?T_BOOLEANS.ONE_ZERO) + + + + + true + true + false + true + false + true + true + true + + + org.jooq.test.postgres.generatedclasses + ./src + + + \ No newline at end of file diff --git a/jOOQ-test/configuration/org/jooq/configuration/lukas/postgres/pg_catalog.properties b/jOOQ-test/configuration/org/jooq/configuration/lukas/postgres/pg_catalog.properties new file mode 100644 index 00000000000..fc2412ba053 --- /dev/null +++ b/jOOQ-test/configuration/org/jooq/configuration/lukas/postgres/pg_catalog.properties @@ -0,0 +1,17 @@ +#example properties file +jdbc.Driver=org.postgresql.Driver +jdbc.URL=jdbc:postgresql:postgres +jdbc.Schema=pg_catalog +jdbc.User=postgres +jdbc.Password=test + +generator=org.jooq.util.DefaultGenerator +generator.database=org.jooq.util.postgres.PostgresDatabase +generator.database.includes=pg_namespace,pg_enum,pg_type,pg_class,pg_attribute,pg_proc,format_type +generator.database.excludes= +generator.generate.deprecated=false +generator.generate.instance-fields=true +generator.generate.records=false + +generator.target.package=org.jooq.util.postgres.pg_catalog +generator.target.directory=./src/main/java \ No newline at end of file diff --git a/jOOQ-test/configuration/org/jooq/configuration/lukas/sqlite/library.properties b/jOOQ-test/configuration/org/jooq/configuration/lukas/sqlite/library.properties new file mode 100644 index 00000000000..1a8eaf85c0b --- /dev/null +++ b/jOOQ-test/configuration/org/jooq/configuration/lukas/sqlite/library.properties @@ -0,0 +1,47 @@ +#example properties file +jdbc.Driver=org.sqlite.JDBC +jdbc.URL=jdbc:sqlite:sqlite/test.db +jdbc.Schema= +jdbc.User=sa +jdbc.Password= + +generator=org.jooq.util.DefaultGenerator +generator.database=org.jooq.util.sqlite.SQLiteDatabase +generator.database.includes=.* +generator.database.excludes=t_book_details,sqlite_sequence + +#Database enum type mappings +generator.database.enum-type.BOOLEAN_10=1,0 +generator.database.enum-type.BOOLEAN_YN_UC="Y",N +generator.database.enum-type.BOOLEAN_YN_LC=y,"n" +generator.database.enum-type.BOOLEAN_YES_NO_UC="YES","NO" +generator.database.enum-type.BOOLEAN_YES_NO_LC=yes,no +generator.database.enum-type.BOOLEAN_TRUE_FALSE_UC=TRUE,FALSE +generator.database.enum-type.BOOLEAN_TRUE_FALSE_LC=true,false + +generator.database.forced-type.BOOLEAN_10=(?i:(.*?\.)?T_BOOLEANS\.ONE_ZERO) +generator.database.forced-type.BOOLEAN_YN_UC=(?i:(.*?\.)?T_BOOLEANS\.Y_N_UC) +generator.database.forced-type.BOOLEAN_YN_LC=(?i:(.*?\.)?T_BOOLEANS\.Y_N_LC) +generator.database.forced-type.BOOLEAN_YES_NO_UC=(?i:(.*?\.)?T_BOOLEANS\.YES_NO_UC) +generator.database.forced-type.BOOLEAN_YES_NO_LC=(?i:(.*?\.)?T_BOOLEANS\.YES_NO_LC) +generator.database.forced-type.BOOLEAN_TRUE_FALSE_UC=(?i:(.*?\.)?T_BOOLEANS\.TRUE_FALSE_UC) +generator.database.forced-type.BOOLEAN_TRUE_FALSE_LC=(?i:(.*?\.)?T_BOOLEANS\.TRUE_FALSE_LC) + +#[#677] Forced types +generator.database.forced-type.BOOLEAN=(?i:(.*?\.)?T_BOOLEANS\.(VC|C|N)_BOOLEAN) + +#Generator configuration +generator.generate.relations=true +generator.generate.instance-fields=false +generator.generate.generated-annotation=false + +#Generate a master data table enum from T_LANGUAGE +generator.generate.master-data-tables=t_language,t_658_11,t_658_21,t_658_31,t_658_12,t_658_22,t_658_32 +generator.generate.master-data-table-literal.t_language=cd +generator.generate.master-data-table-description.t_language=description +generator.generate.master-data-table-literal.t_658_12=cd +generator.generate.master-data-table-literal.t_658_22=cd +generator.generate.master-data-table-literal.t_658_32=cd + +generator.target.package=org.jooq.test.sqlite.generatedclasses +generator.target.directory=./src \ No newline at end of file diff --git a/jOOQ-test/configuration/org/jooq/configuration/lukas/sqlite/library.xml b/jOOQ-test/configuration/org/jooq/configuration/lukas/sqlite/library.xml new file mode 100644 index 00000000000..04c427f30ae --- /dev/null +++ b/jOOQ-test/configuration/org/jooq/configuration/lukas/sqlite/library.xml @@ -0,0 +1,129 @@ + + + + org.sqlite.JDBC + jdbc:sqlite:sqlite/test.db + + sa + + + + org.jooq.util.DefaultGenerator + + org.jooq.util.sqlite.SQLiteDatabase + .* + t_book_details,sqlite_sequence + false + true + + + t_language + cd + description + + + t_658_11 + + + t_658_21 + + + t_658_31 + + + t_658_12 + cd + + + t_658_22 + cd + + + t_658_32 + cd + + + + + + org.jooq.test._.converters.Boolean_10 + org.jooq.test._.converters.Boolean_10_Converter + + + org.jooq.test._.converters.Boolean_TF_LC + org.jooq.test._.converters.Boolean_TF_LC_Converter + + + org.jooq.test._.converters.Boolean_TF_UC + org.jooq.test._.converters.Boolean_TF_UC_Converter + + + org.jooq.test._.converters.Boolean_YN_LC + org.jooq.test._.converters.Boolean_YN_LC_Converter + + + org.jooq.test._.converters.Boolean_YN_UC + org.jooq.test._.converters.Boolean_YN_UC_Converter + + + org.jooq.test._.converters.Boolean_YES_NO_LC + org.jooq.test._.converters.Boolean_YES_NO_LC_Converter + + + org.jooq.test._.converters.Boolean_YES_NO_UC + org.jooq.test._.converters.Boolean_YES_NO_UC_Converter + + + + + + BOOLEAN + (?i:(.*?.)?T_BOOLEANS.(VC|C|N)_BOOLEAN) + + + + org.jooq.test._.converters.Boolean_YES_NO_LC + (?i:(.*?.)?T_BOOLEANS.YES_NO_LC) + + + org.jooq.test._.converters.Boolean_YES_NO_UC + (?i:(.*?.)?T_BOOLEANS.YES_NO_UC) + + + org.jooq.test._.converters.Boolean_YN_LC + (?i:(.*?.)?T_BOOLEANS.Y_N_LC) + + + org.jooq.test._.converters.Boolean_YN_UC + (?i:(.*?.)?T_BOOLEANS.Y_N_UC) + + + org.jooq.test._.converters.Boolean_TF_LC + (?i:(.*?.)?T_BOOLEANS.TRUE_FALSE_LC) + + + org.jooq.test._.converters.Boolean_TF_UC + (?i:(.*?.)?T_BOOLEANS.TRUE_FALSE_UC) + + + org.jooq.test._.converters.Boolean_10 + (?i:(.*?.)?T_BOOLEANS.ONE_ZERO) + + + + + true + true + true + false + false + true + false + false + + + org.jooq.test.sqlite.generatedclasses + ./src + + + \ No newline at end of file diff --git a/jOOQ-test/configuration/org/jooq/configuration/lukas/sqlserver/AdventureWorksStrategy.java b/jOOQ-test/configuration/org/jooq/configuration/lukas/sqlserver/AdventureWorksStrategy.java new file mode 100644 index 00000000000..ebf0623ab2c --- /dev/null +++ b/jOOQ-test/configuration/org/jooq/configuration/lukas/sqlserver/AdventureWorksStrategy.java @@ -0,0 +1,82 @@ +/** + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com + * All rights reserved. + * + * This software is licensed to you under the Apache License, Version 2.0 + * (the "License"); You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * 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 "jOOQ" 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 COPYRIGHT OWNER 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. + */ +package org.jooq.configuration.lukas.sqlserver; + +import org.jooq.util.DefaultGeneratorStrategy; +import org.jooq.util.Definition; + +/** + * A sample custom strategy + * + * @author Lukas Eder + */ +public class AdventureWorksStrategy extends DefaultGeneratorStrategy { + + @Override + public String getJavaIdentifier(Definition definition) { + return definition.getOutputName(); + } + + @Override + public String getJavaSetterName(Definition definition, Mode mode) { + return "set" + definition.getOutputName(); + } + + @Override + public String getJavaGetterName(Definition definition, Mode mode) { + return "get" + definition.getOutputName(); + } + + @Override + public String getJavaMethodName(Definition definition, Mode mode) { + return definition.getOutputName(); + } + + @Override + public String getJavaClassName(Definition definition, Mode mode) { + return definition.getOutputName(); + } + + @Override + public String getJavaPackageName(Definition definition, Mode mode) { + return super.getJavaPackageName(definition, mode); + } + + @Override + public String getJavaMemberName(Definition definition, Mode mode) { + return definition.getOutputName(); + } +} diff --git a/jOOQ-test/configuration/org/jooq/configuration/lukas/sqlserver/adventureworks.properties b/jOOQ-test/configuration/org/jooq/configuration/lukas/sqlserver/adventureworks.properties new file mode 100644 index 00000000000..9ccd476151f --- /dev/null +++ b/jOOQ-test/configuration/org/jooq/configuration/lukas/sqlserver/adventureworks.properties @@ -0,0 +1,19 @@ +#example properties file +jdbc.Driver=com.microsoft.sqlserver.jdbc.SQLServerDriver +jdbc.URL=jdbc:sqlserver://localhost:1433;databaseName=AdventureWorks;integratedSecurity=true +jdbc.User= +jdbc.Password= + +generator=org.jooq.util.DefaultGenerator +generator.database=org.jooq.util.sqlserver.SQLServerDatabase +generator.database.includes=.* +generator.database.excludes= +generator.database.input-schema=dbo + +#Generator configuration +generator.generate.relations=true +generator.generate.instance-fields=true +generator.generate.generated-annotation=false + +generator.target.package=org.jooq.examples.sqlserver.adventureworks.dbo +generator.target.directory=./examples \ No newline at end of file diff --git a/jOOQ-test/configuration/org/jooq/configuration/lukas/sqlserver/adventureworks.xml b/jOOQ-test/configuration/org/jooq/configuration/lukas/sqlserver/adventureworks.xml new file mode 100644 index 00000000000..3f04b776bb1 --- /dev/null +++ b/jOOQ-test/configuration/org/jooq/configuration/lukas/sqlserver/adventureworks.xml @@ -0,0 +1,55 @@ + + + + com.microsoft.sqlserver.jdbc.SQLServerDriver + jdbc:sqlserver://localhost:1433;databaseName=AdventureWorks;integratedSecurity=true + + + + + org.jooq.util.DefaultGenerator + + org.jooq.configuration.lukas.sqlserver.AdventureWorksStrategy + + + org.jooq.util.sqlserver.SQLServerDatabase + .* + + false + + + dbo + + + HumanResources + + + Person + + + Production + + + Purchasing + + + Sales + + + + + true + false + true + true + true + false + true + true + + + org.jooq.examples.sqlserver.adventureworks + ./examples + + + \ No newline at end of file diff --git a/jOOQ-test/configuration/org/jooq/configuration/lukas/sqlserver/information_schema.properties b/jOOQ-test/configuration/org/jooq/configuration/lukas/sqlserver/information_schema.properties new file mode 100644 index 00000000000..f65e4394473 --- /dev/null +++ b/jOOQ-test/configuration/org/jooq/configuration/lukas/sqlserver/information_schema.properties @@ -0,0 +1,20 @@ +#example properties file +#SQL Server has no means to query the non-selfcontained INFORMATION_SCHEMA. +#We'll use that of HSQLDB instead, which is very similar + +jdbc.Driver=org.hsqldb.jdbcDriver +jdbc.URL=jdbc:hsqldb:hsql://localhost +jdbc.Schema=INFORMATION_SCHEMA +jdbc.User=sa +jdbc.Password= + +generator=org.jooq.util.DefaultGenerator +generator.database=org.jooq.util.hsqldb.HSQLDBDatabase +generator.database.includes=TABLES,COLUMNS,REFERENTIAL_CONSTRAINTS,TABLE_CONSTRAINTS,CONSTRAINT_COLUMN_USAGE,KEY_COLUMN_USAGE,ROUTINES,PARAMETERS,SEQUENCES +generator.database.excludes= +generator.generate.deprecated=false +generator.generate.instance-fields=true +generator.generate.records=false + +generator.target.package=org.jooq.util.sqlserver.information_schema +generator.target.directory=./src/main/java \ No newline at end of file diff --git a/jOOQ-test/configuration/org/jooq/configuration/lukas/sqlserver/library.properties b/jOOQ-test/configuration/org/jooq/configuration/lukas/sqlserver/library.properties new file mode 100644 index 00000000000..b00cd57947e --- /dev/null +++ b/jOOQ-test/configuration/org/jooq/configuration/lukas/sqlserver/library.properties @@ -0,0 +1,48 @@ +#example properties file +jdbc.Driver=com.microsoft.sqlserver.jdbc.SQLServerDriver +jdbc.URL=jdbc:sqlserver://localhost:1433;databaseName=test;integratedSecurity=true +jdbc.Schema=dbo +jdbc.User= +jdbc.Password= + +generator=org.jooq.util.DefaultGenerator +generator.database=org.jooq.util.sqlserver.SQLServerDatabase +generator.database.includes=t_.*,x_.*,v_.*,p_.*,f_.*,(f|p)[0-9]+,s_.* +generator.database.excludes=t_book_details + +#Database enum type mappings +generator.database.enum-type.BOOLEAN_10=1,0 +generator.database.enum-type.BOOLEAN_YN_UC="Y",N +generator.database.enum-type.BOOLEAN_YN_LC=y,"n" +generator.database.enum-type.BOOLEAN_YES_NO_UC="YES","NO" +generator.database.enum-type.BOOLEAN_YES_NO_LC=yes,no +generator.database.enum-type.BOOLEAN_TRUE_FALSE_UC=TRUE,FALSE +generator.database.enum-type.BOOLEAN_TRUE_FALSE_LC=true,false + +generator.database.forced-type.BOOLEAN_10=(?i:(.*?\.)?T_BOOLEANS\.ONE_ZERO) +generator.database.forced-type.BOOLEAN_YN_UC=(?i:(.*?\.)?T_BOOLEANS\.Y_N_UC) +generator.database.forced-type.BOOLEAN_YN_LC=(?i:(.*?\.)?T_BOOLEANS\.Y_N_LC) +generator.database.forced-type.BOOLEAN_YES_NO_UC=(?i:(.*?\.)?T_BOOLEANS\.YES_NO_UC) +generator.database.forced-type.BOOLEAN_YES_NO_LC=(?i:(.*?\.)?T_BOOLEANS\.YES_NO_LC) +generator.database.forced-type.BOOLEAN_TRUE_FALSE_UC=(?i:(.*?\.)?T_BOOLEANS\.TRUE_FALSE_UC) +generator.database.forced-type.BOOLEAN_TRUE_FALSE_LC=(?i:(.*?\.)?T_BOOLEANS\.TRUE_FALSE_LC) + +#[#677] Forced types +generator.database.forced-type.BIT=(?i:(.*?\.)?T_BOOLEANS\.(VC|C|N)_BOOLEAN) + +#Generator configuration +generator.generate.relations=true +generator.generate.instance-fields=true +generator.generate.generated-annotation=false +generator.generate.pojos=true + +#Generate a master data table enum from t_language +generator.generate.master-data-tables=t_language,t_658_11,t_658_21,t_658_31,t_658_12,t_658_22,t_658_32 +generator.generate.master-data-table-literal.t_language=cd +generator.generate.master-data-table-description.t_language=description +generator.generate.master-data-table-literal.t_658_12=cd +generator.generate.master-data-table-literal.t_658_22=cd +generator.generate.master-data-table-literal.t_658_32=cd + +generator.target.package=org.jooq.test.sqlserver.generatedclasses +generator.target.directory=./src \ No newline at end of file diff --git a/jOOQ-test/configuration/org/jooq/configuration/lukas/sqlserver/library.xml b/jOOQ-test/configuration/org/jooq/configuration/lukas/sqlserver/library.xml new file mode 100644 index 00000000000..3bdf6b86bf0 --- /dev/null +++ b/jOOQ-test/configuration/org/jooq/configuration/lukas/sqlserver/library.xml @@ -0,0 +1,124 @@ + + + + com.microsoft.sqlserver.jdbc.SQLServerDriver + jdbc:sqlserver://localhost:1433;databaseName=test;integratedSecurity=true + dbo + + + + + org.jooq.util.DefaultGenerator + + + org.jooq.util.sqlserver.SQLServerDatabase + t_.*,x_.*,v_.*,p_.*,f_.*,(f|p)[0-9]+,s_.* + t_book_details + false + + + t_language + cd + description + + + t_658_11 + + + t_658_21 + + + t_658_31 + + + t_658_12 + cd + + + t_658_22 + cd + + + t_658_32 + cd + + + + + org.jooq.test._.converters.Boolean_10 + org.jooq.test._.converters.Boolean_10_Converter + + + org.jooq.test._.converters.Boolean_TF_LC + org.jooq.test._.converters.Boolean_TF_LC_Converter + + + org.jooq.test._.converters.Boolean_TF_UC + org.jooq.test._.converters.Boolean_TF_UC_Converter + + + org.jooq.test._.converters.Boolean_YN_LC + org.jooq.test._.converters.Boolean_YN_LC_Converter + + + org.jooq.test._.converters.Boolean_YN_UC + org.jooq.test._.converters.Boolean_YN_UC_Converter + + + org.jooq.test._.converters.Boolean_YES_NO_LC + org.jooq.test._.converters.Boolean_YES_NO_LC_Converter + + + org.jooq.test._.converters.Boolean_YES_NO_UC + org.jooq.test._.converters.Boolean_YES_NO_UC_Converter + + + + + + BIT + (?i:(.*?.)?T_BOOLEANS.(VC|C|N)_BOOLEAN) + + + org.jooq.test._.converters.Boolean_YES_NO_LC + (?i:(.*?.)?T_BOOLEANS.YES_NO_LC) + + + org.jooq.test._.converters.Boolean_YES_NO_UC + (?i:(.*?.)?T_BOOLEANS.YES_NO_UC) + + + org.jooq.test._.converters.Boolean_YN_LC + (?i:(.*?.)?T_BOOLEANS.Y_N_LC) + + + org.jooq.test._.converters.Boolean_YN_UC + (?i:(.*?.)?T_BOOLEANS.Y_N_UC) + + + org.jooq.test._.converters.Boolean_TF_LC + (?i:(.*?.)?T_BOOLEANS.TRUE_FALSE_LC) + + + org.jooq.test._.converters.Boolean_TF_UC + (?i:(.*?.)?T_BOOLEANS.TRUE_FALSE_UC) + + + org.jooq.test._.converters.Boolean_10 + (?i:(.*?.)?T_BOOLEANS.ONE_ZERO) + + + + + true + true + true + true + false + + + org.jooq.test.sqlserver.generatedclasses + ./src + + + diff --git a/jOOQ-test/configuration/org/jooq/configuration/lukas/sybase/library.properties b/jOOQ-test/configuration/org/jooq/configuration/lukas/sybase/library.properties new file mode 100644 index 00000000000..de8a289c119 --- /dev/null +++ b/jOOQ-test/configuration/org/jooq/configuration/lukas/sybase/library.properties @@ -0,0 +1,48 @@ +#Sybase system table properties file +jdbc.Driver=com.sybase.jdbc3.jdbc.SybDriver +jdbc.URL=jdbc:sybase:Tds:localhost:2638 +jdbc.Schema=dba +jdbc.User=dba +jdbc.Password=sql + +generator=org.jooq.util.DefaultGenerator +generator.database=org.jooq.util.sybase.SybaseDatabase +generator.database.includes=t_.*,x_.*,v_.*,V_.*,p_.*,f_.*,(f|p)[0-9]+,s_.* +generator.database.excludes=t_book_details + +#Database enum type mappings +generator.database.enum-type.BOOLEAN_10=1,0 +generator.database.enum-type.BOOLEAN_YN_UC="Y",N +generator.database.enum-type.BOOLEAN_YN_LC=y,"n" +generator.database.enum-type.BOOLEAN_YES_NO_UC="YES","NO" +generator.database.enum-type.BOOLEAN_YES_NO_LC=yes,no +generator.database.enum-type.BOOLEAN_TRUE_FALSE_UC=TRUE,FALSE +generator.database.enum-type.BOOLEAN_TRUE_FALSE_LC=true,false + +generator.database.forced-type.BOOLEAN_10=(?i:(.*?\.)?T_BOOLEANS\.ONE_ZERO) +generator.database.forced-type.BOOLEAN_YN_UC=(?i:(.*?\.)?T_BOOLEANS\.Y_N_UC) +generator.database.forced-type.BOOLEAN_YN_LC=(?i:(.*?\.)?T_BOOLEANS\.Y_N_LC) +generator.database.forced-type.BOOLEAN_YES_NO_UC=(?i:(.*?\.)?T_BOOLEANS\.YES_NO_UC) +generator.database.forced-type.BOOLEAN_YES_NO_LC=(?i:(.*?\.)?T_BOOLEANS\.YES_NO_LC) +generator.database.forced-type.BOOLEAN_TRUE_FALSE_UC=(?i:(.*?\.)?T_BOOLEANS\.TRUE_FALSE_UC) +generator.database.forced-type.BOOLEAN_TRUE_FALSE_LC=(?i:(.*?\.)?T_BOOLEANS\.TRUE_FALSE_LC) + +#[#677] Forced types +generator.database.forced-type.BIT=(?i:(.*?\.)?T_BOOLEANS\.(VC|C|N)_BOOLEAN) + +#Generator configuration +generator.generate.relations=true +generator.generate.records=true +generator.generate.instance-fields=true +generator.generate.generated-annotation=false + +#Generate a master data table enum from T_LANGUAGE +generator.generate.master-data-tables=t_language,t_658_11,t_658_21,t_658_31,t_658_12,t_658_22,t_658_32 +generator.generate.master-data-table-literal.t_language=cd +generator.generate.master-data-table-description.t_language=description +generator.generate.master-data-table-literal.t_658_12=cd +generator.generate.master-data-table-literal.t_658_22=cd +generator.generate.master-data-table-literal.t_658_32=cd + +generator.target.package=org.jooq.test.sybase.generatedclasses +generator.target.directory=./src diff --git a/jOOQ-test/configuration/org/jooq/configuration/lukas/sybase/library.xml b/jOOQ-test/configuration/org/jooq/configuration/lukas/sybase/library.xml new file mode 100644 index 00000000000..1c772e7f83f --- /dev/null +++ b/jOOQ-test/configuration/org/jooq/configuration/lukas/sybase/library.xml @@ -0,0 +1,126 @@ + + + + com.sybase.jdbc3.jdbc.SybDriver + jdbc:sybase:Tds:localhost:2638 + dba + dba + sql + + + org.jooq.util.DefaultGenerator + + + org.jooq.util.sybase.SybaseDatabase + t_.*,x_.*,v_.*,V_.*,p_.*,f_.*,(f|p)[0-9]+,s_.* + t_book_details + false + + + t_language + cd + description + + + t_658_11 + + + t_658_21 + + + t_658_31 + + + t_658_12 + cd + + + t_658_22 + cd + + + t_658_32 + cd + + + + + + org.jooq.test._.converters.Boolean_10 + org.jooq.test._.converters.Boolean_10_Converter + + + org.jooq.test._.converters.Boolean_TF_LC + org.jooq.test._.converters.Boolean_TF_LC_Converter + + + org.jooq.test._.converters.Boolean_TF_UC + org.jooq.test._.converters.Boolean_TF_UC_Converter + + + org.jooq.test._.converters.Boolean_YN_LC + org.jooq.test._.converters.Boolean_YN_LC_Converter + + + org.jooq.test._.converters.Boolean_YN_UC + org.jooq.test._.converters.Boolean_YN_UC_Converter + + + org.jooq.test._.converters.Boolean_YES_NO_LC + org.jooq.test._.converters.Boolean_YES_NO_LC_Converter + + + org.jooq.test._.converters.Boolean_YES_NO_UC + org.jooq.test._.converters.Boolean_YES_NO_UC_Converter + + + + + + BIT + (?i:(.*?.)?T_BOOLEANS.(VC|C|N)_BOOLEAN) + + + + org.jooq.test._.converters.Boolean_YES_NO_LC + (?i:(.*?.)?T_BOOLEANS.YES_NO_LC) + + + org.jooq.test._.converters.Boolean_YES_NO_UC + (?i:(.*?.)?T_BOOLEANS.YES_NO_UC) + + + org.jooq.test._.converters.Boolean_YN_LC + (?i:(.*?.)?T_BOOLEANS.Y_N_LC) + + + org.jooq.test._.converters.Boolean_YN_UC + (?i:(.*?.)?T_BOOLEANS.Y_N_UC) + + + org.jooq.test._.converters.Boolean_TF_LC + (?i:(.*?.)?T_BOOLEANS.TRUE_FALSE_LC) + + + org.jooq.test._.converters.Boolean_TF_UC + (?i:(.*?.)?T_BOOLEANS.TRUE_FALSE_UC) + + + org.jooq.test._.converters.Boolean_10 + (?i:(.*?.)?T_BOOLEANS.ONE_ZERO) + + + + + true + true + true + true + false + + + org.jooq.test.sybase.generatedclasses + ./src + + + diff --git a/jOOQ-test/configuration/org/jooq/configuration/lukas/sybase/sys.properties b/jOOQ-test/configuration/org/jooq/configuration/lukas/sybase/sys.properties new file mode 100644 index 00000000000..19575c5b4dd --- /dev/null +++ b/jOOQ-test/configuration/org/jooq/configuration/lukas/sybase/sys.properties @@ -0,0 +1,18 @@ +#Sybase system table properties file +jdbc.Driver=com.sybase.jdbc3.jdbc.SybDriver +jdbc.URL=jdbc:sybase:Tds:localhost:2638 +jdbc.Schema=sys +jdbc.User=dba +jdbc.Password=sql + +generator=org.jooq.util.DefaultGenerator +generator.database=org.jooq.util.sybase.SybaseDatabase +generator.database.includes=SYSTAB,SYSTABLE,SYSTABCOL,SYSDOMAIN,SYSIDX,SYSIDXCOL,SYSPROCEDURE,SYSPROCPARM,SYSVIEW,SYSSEQUENCE,SYSFKEY +generator.database.excludes= +generator.generate.records=false +generator.generate.deprecated=false +generator.generate.instance-fields=true +generator.generate.records=false + +generator.target.package=org.jooq.util.sybase.sys +generator.target.directory=./src/main/java \ No newline at end of file diff --git a/jOOQ-test/examples/org/jooq/examples/AdventureWorks.java b/jOOQ-test/examples/org/jooq/examples/AdventureWorks.java new file mode 100644 index 00000000000..b62f5526f96 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/AdventureWorks.java @@ -0,0 +1,73 @@ +/** + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com + * All rights reserved. + * + * This software is licensed to you under the Apache License, Version 2.0 + * (the "License"); You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * 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 "jOOQ" 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 COPYRIGHT OWNER 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. + */ +package org.jooq.examples; + + +import static org.jooq.examples.sqlserver.adventureworks.humanresources.Tables.Department; +import static org.jooq.examples.sqlserver.adventureworks.humanresources.Tables.Employee; +import static org.jooq.examples.sqlserver.adventureworks.humanresources.Tables.EmployeeAddress; +import static org.jooq.examples.sqlserver.adventureworks.humanresources.Tables.EmployeeDepartmentHistory; +import static org.jooq.examples.sqlserver.adventureworks.person.Tables.Contact; +import static org.jooq.impl.Factory.val; + +import java.sql.Connection; +import java.sql.DriverManager; + +import org.jooq.impl.Factory; +import org.jooq.util.sqlserver.SQLServerFactory; + +public class AdventureWorks { + + public static void main(String[] args) throws Exception { + Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver"); + Connection connection = DriverManager.getConnection("jdbc:sqlserver://localhost:1433;databaseName=AdventureWorks;integratedSecurity=true"); + + Factory create = new SQLServerFactory(connection); + + System.out.println(create + .select(Employee.getFields()) + .select(val("###")) + .select(Department.getFields()) + .select(val("###")) + .select(Contact.getFields()) + .from(Employee) + .join(EmployeeAddress).using(Employee.EmployeeID) + .join(EmployeeDepartmentHistory).using(Employee.EmployeeID) + .join(Department).using(Department.DepartmentID) + .join(Contact).using(Contact.ContactID) + .fetch()); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/DBMS_XPLAN.java b/jOOQ-test/examples/org/jooq/examples/DBMS_XPLAN.java new file mode 100644 index 00000000000..3a875816cbb --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/DBMS_XPLAN.java @@ -0,0 +1,76 @@ +/** + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com + * All rights reserved. + * + * This software is licensed to you under the Apache License, Version 2.0 + * (the "License"); You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * 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 "jOOQ" 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 COPYRIGHT OWNER 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. + */ +package org.jooq.examples; + +import static org.jooq.impl.Factory.table; + +import java.sql.Connection; +import java.sql.DriverManager; + +import org.jooq.examples.oracle.sys.packages.DbmsXplan; +import org.jooq.util.oracle.OracleFactory; + +public class DBMS_XPLAN { + + /** + * @param args + */ + public static void main(String[] args) throws Exception { + Class.forName("oracle.jdbc.OracleDriver"); + Connection connection = DriverManager.getConnection("jdbc:oracle:thin:@localhost:1521:xe", "TEST", "TEST"); + + OracleFactory ora = new OracleFactory(connection); + ora.fetch("select * from t_book b join t_author a on b.author_id = a.id"); + + // TODO [#1113] This doesn't work yet +// System.out.println("Standalone call:"); +// System.out.println("----------------"); +// for (DbmsXplanTypeRecord record : DbmsXplan.displayCursor(ora, null, null, "ALLSTATS LAST").get()) { +// System.out.println(record.getPlanTableOutput()); +// } + + // [#1114] Unnesting TABLE of OBJECT + System.out.println("Unnested table:"); + System.out.println("---------------"); + for (String row : ora.select() + .from(table(DbmsXplan.displayCursor(null, null, "ALLSTATS LAST"))) + .fetch(0, String.class)) { + + System.out.println(row); + } + } + +} diff --git a/jOOQ-test/examples/org/jooq/examples/Library.java b/jOOQ-test/examples/org/jooq/examples/Library.java new file mode 100644 index 00000000000..aec194309d0 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/Library.java @@ -0,0 +1,200 @@ +/** + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com + * All rights reserved. + * + * This software is licensed to you under the Apache License, Version 2.0 + * (the "License"); You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * 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 "jOOQ" 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 COPYRIGHT OWNER 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. + */ +package org.jooq.examples; + +import static org.jooq.test.mysql.generatedclasses.tables.TAuthor.T_AUTHOR; +import static org.jooq.test.mysql.generatedclasses.tables.TBook.T_BOOK; + +import java.sql.Connection; +import java.sql.DriverManager; + +import org.jooq.Record; +import org.jooq.Result; +import org.jooq.SQLDialect; +import org.jooq.Select; +import org.jooq.SelectQuery; +import org.jooq.impl.Factory; +import org.jooq.test.mysql.generatedclasses.enums.TBookStatus; +import org.jooq.test.mysql.generatedclasses.enums.TLanguage; +import org.jooq.test.mysql.generatedclasses.tables.TAuthor; +import org.jooq.test.mysql.generatedclasses.tables.TBook; +import org.jooq.test.mysql.generatedclasses.tables.records.TAuthorRecord; +import org.jooq.test.mysql.generatedclasses.tables.records.TBookRecord; + +public class Library { + + private static Factory create() throws Exception { + return new Factory(getConnection(), SQLDialect.MYSQL); + } + + public static void main(String[] args) throws Exception { + System.out.println("First run..."); + firstRun(); + + System.out.println(); + System.out.println("Second run..."); + secondRun(); + + System.out.println(); + System.out.println("Third run..."); + thirdRun(); + + System.out.println(); + System.out.println("Fourth run..."); + fourthRun(); + } + + protected static Connection getConnection() throws Exception { + Class.forName("com.mysql.jdbc.Driver"); + return DriverManager.getConnection ("jdbc:mysql://localhost/test", "root", ""); + } + + /** + * Run this code providing your own database connection. + */ + public static void firstRun() throws Exception { + // Create the query + SelectQuery q = create().selectQuery(); + q.addFrom(T_AUTHOR); + q.addJoin(T_BOOK, TAuthor.ID.equal(TBook.AUTHOR_ID)); + q.addConditions(TAuthor.YEAR_OF_BIRTH.greaterThan(1920)); + q.addConditions(TAuthor.FIRST_NAME.equal("Paulo")); + q.addOrderBy(TBook.TITLE); + + // Execute the query and fetch the results + q.execute(); + Result result = q.getResult(); + + // Loop over the resulting records + for (Record record : result) { + + // Type safety assured with generics + String firstName = record.getValue(TAuthor.FIRST_NAME); + String lastName = record.getValue(TAuthor.LAST_NAME); + String title = record.getValue(TBook.TITLE); + Integer publishedIn = record.getValue(TBook.PUBLISHED_IN); + + System.out.println(title + " (published in " + publishedIn + ") by " + firstName + " " + lastName); + } + } + + /** + * Run this code providing your own database connection. + */ + public static void secondRun() throws Exception { + // Execute the query and fetch the results + Result result = create().select() + .from(T_AUTHOR) + .join(T_BOOK).on(TAuthor.ID.equal(TBook.AUTHOR_ID)) + .where(TAuthor.YEAR_OF_BIRTH.greaterThan(1920) + .and(TAuthor.FIRST_NAME.equal("Paulo"))) + .orderBy(TBook.TITLE).fetch(); + + // Loop over the resulting records + for (Record record : result) { + + // Type safety assured with generics + String firstName = record.getValue(TAuthor.FIRST_NAME); + String lastName = record.getValue(TAuthor.LAST_NAME); + String title = record.getValue(TBook.TITLE); + Integer publishedIn = record.getValue(TBook.PUBLISHED_IN); + + System.out.println(title + " (published in " + publishedIn + ") by " + firstName + " " + lastName); + } + } + + /** + * Run this code providing your own database connection. + */ + public static void thirdRun() throws Exception { + // Execute the query and fetch the results + Result result = create().selectFrom(T_AUTHOR) + .where(TAuthor.YEAR_OF_BIRTH.greaterThan(1920) + .and(TAuthor.FIRST_NAME.equal("Paulo"))) + .orderBy(TAuthor.LAST_NAME).fetch(); + + // Loop over the resulting records + for (TAuthorRecord record : result) { + + // Type safety assured with generics + String firstName = record.getFirstName(); + String lastName = record.getLastName(); + + System.out.println("Author : " + firstName + " " + lastName + " wrote : "); + + for (TBookRecord book : record.fetchTBookListByAuthorId()) { + System.out.println(" Book : " + book.getTitle()); + } + } + } + + public static void fourthRun() throws Exception { + // Select authors with books that are sold out + // SELECT * + // FROM T_AUTHOR + // WHERE T_AUTHOR.ID IN (SELECT DISTINCT T_BOOK.AUTHOR_ID + // FROM T_BOOK + // WHERE T_BOOK.STATUS = 'SOLD OUT'); + + for (TAuthorRecord record : create().selectFrom(T_AUTHOR) + .where(TAuthor.ID.in(create().selectDistinct(TBook.AUTHOR_ID) + .from(T_BOOK).where(TBook.STATUS.equal(TBookStatus.SOLD_OUT)))).fetch()) { + + System.out.println("Author : " + record.getFirstName() + " " + record.getLastName() + " has sold out books"); + } + + for (TAuthorRecord record : create().selectFrom(T_AUTHOR) + .where(TAuthor.ID.in(create().selectDistinct(TBook.AUTHOR_ID) + .from(T_BOOK).where(TBook.LANGUAGE_ID.in(TLanguage.en, TLanguage.pt)))).fetch()) { + + System.out.println("Author : " + record.getFirstName() + " " + record.getLastName() + " have english or portuguese books"); + } + + Select union = + create().select(TBook.TITLE, TBook.AUTHOR_ID).from(T_BOOK).where(TBook.PUBLISHED_IN.greaterThan(1990)).union( + create().select(TBook.TITLE, TBook.AUTHOR_ID).from(T_BOOK).where(TBook.AUTHOR_ID.equal(1))); + + System.out.println( + create().select(union.getField(TBook.TITLE)) + .from(union) + .orderBy(union.getField(TBook.AUTHOR_ID).desc())); + System.out.println( + create().select(union.getField(TBook.TITLE),union.getField(TBook.AUTHOR_ID)) + .from(union) + .orderBy(union.getField(TBook.AUTHOR_ID).desc()).fetch()); + + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/Sakila.java b/jOOQ-test/examples/org/jooq/examples/Sakila.java new file mode 100644 index 00000000000..1999e17c42a --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/Sakila.java @@ -0,0 +1,69 @@ +/** + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com + * All rights reserved. + * + * This software is licensed to you under the Apache License, Version 2.0 + * (the "License"); You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * 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 "jOOQ" 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 COPYRIGHT OWNER 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. + */ +package org.jooq.examples; + +import static org.jooq.examples.mysql.sakila.Tables.ADDRESS; +import static org.jooq.examples.mysql.sakila.Tables.CITY; +import static org.jooq.examples.mysql.sakila.Tables.COUNTRY; +import static org.jooq.examples.mysql.sakila.Tables.CUSTOMER; + +import java.sql.Connection; +import java.sql.DriverManager; + +import org.jooq.examples.mysql.sakila.SakilaFactory; +import org.jooq.impl.Factory; + +public class Sakila { + + public static void main(String[] args) throws Exception { + Class.forName("com.mysql.jdbc.Driver"); + Connection connection = DriverManager.getConnection("jdbc:mysql://localhost/sakila", "root", ""); + + Factory create = new SakilaFactory(connection); + + System.out.println(create + .select() + .from(CUSTOMER) + .join(ADDRESS) + .using(ADDRESS.ADDRESS_ID) + .join(CITY) + .using(CITY.CITY_ID) + .join(COUNTRY) + .using(COUNTRY.COUNTRY_ID) + .fetch() + .formatCSV()); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/cubrid/demodb/Keys.java b/jOOQ-test/examples/org/jooq/examples/cubrid/demodb/Keys.java new file mode 100644 index 00000000000..59fc8c0adf1 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/cubrid/demodb/Keys.java @@ -0,0 +1,38 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.cubrid.demodb; + +/** + * This class is generated by jOOQ. + * + * A class modelling foreign key relationships between tables of the PUBLIC schema + */ +@SuppressWarnings({"unchecked"}) +public class Keys extends org.jooq.impl.AbstractKeys { + + // IDENTITY definitions + public static final org.jooq.Identity IDENTITY_ATHLETE = createIdentity(org.jooq.examples.cubrid.demodb.tables.Athlete.ATHLETE, org.jooq.examples.cubrid.demodb.tables.Athlete.ATHLETE.CODE); + + // UNIQUE and PRIMARY KEY definitions + public static final org.jooq.UniqueKey ATHLETE__PK_ATHLETE_CODE = createUniqueKey(org.jooq.examples.cubrid.demodb.tables.Athlete.ATHLETE, org.jooq.examples.cubrid.demodb.tables.Athlete.ATHLETE.CODE); + public static final org.jooq.UniqueKey EVENT__PK_EVENT_CODE = createUniqueKey(org.jooq.examples.cubrid.demodb.tables.Event.EVENT, org.jooq.examples.cubrid.demodb.tables.Event.EVENT.CODE); + public static final org.jooq.UniqueKey GAME__PK_GAME_HOST_YEAR_EVENT_CODE_ATHLETE_CODE = createUniqueKey(org.jooq.examples.cubrid.demodb.tables.Game.GAME, org.jooq.examples.cubrid.demodb.tables.Game.GAME.HOST_YEAR, org.jooq.examples.cubrid.demodb.tables.Game.GAME.EVENT_CODE, org.jooq.examples.cubrid.demodb.tables.Game.GAME.ATHLETE_CODE); + public static final org.jooq.UniqueKey HISTORY__PK_HISTORY_EVENT_CODE_ATHLETE = createUniqueKey(org.jooq.examples.cubrid.demodb.tables.History.HISTORY, org.jooq.examples.cubrid.demodb.tables.History.HISTORY.EVENT_CODE, org.jooq.examples.cubrid.demodb.tables.History.HISTORY.ATHLETE); + public static final org.jooq.UniqueKey NATION__PK_NATION_CODE = createUniqueKey(org.jooq.examples.cubrid.demodb.tables.Nation.NATION, org.jooq.examples.cubrid.demodb.tables.Nation.NATION.CODE); + public static final org.jooq.UniqueKey OLYMPIC__PK_OLYMPIC_HOST_YEAR = createUniqueKey(org.jooq.examples.cubrid.demodb.tables.Olympic.OLYMPIC, org.jooq.examples.cubrid.demodb.tables.Olympic.OLYMPIC.HOST_YEAR); + public static final org.jooq.UniqueKey PARTICIPANT__PK_PARTICIPANT_HOST_YEAR_NATION_CODE = createUniqueKey(org.jooq.examples.cubrid.demodb.tables.Participant.PARTICIPANT, org.jooq.examples.cubrid.demodb.tables.Participant.PARTICIPANT.HOST_YEAR, org.jooq.examples.cubrid.demodb.tables.Participant.PARTICIPANT.NATION_CODE); + public static final org.jooq.UniqueKey RECORD__PK_RECORD_HOST_YEAR_EVENT_CODE_ATHLETE_CODE_MEDAL = createUniqueKey(org.jooq.examples.cubrid.demodb.tables.Record.RECORD, org.jooq.examples.cubrid.demodb.tables.Record.RECORD.HOST_YEAR, org.jooq.examples.cubrid.demodb.tables.Record.RECORD.EVENT_CODE, org.jooq.examples.cubrid.demodb.tables.Record.RECORD.ATHLETE_CODE, org.jooq.examples.cubrid.demodb.tables.Record.RECORD.MEDAL); + public static final org.jooq.UniqueKey STADIUM__PK_STADIUM_CODE = createUniqueKey(org.jooq.examples.cubrid.demodb.tables.Stadium.STADIUM, org.jooq.examples.cubrid.demodb.tables.Stadium.STADIUM.CODE); + + // FOREIGN KEY definitions + public static final org.jooq.ForeignKey GAME__FK_GAME_EVENT_CODE = createForeignKey(EVENT__PK_EVENT_CODE, org.jooq.examples.cubrid.demodb.tables.Game.GAME, org.jooq.examples.cubrid.demodb.tables.Game.GAME.EVENT_CODE); + public static final org.jooq.ForeignKey GAME__FK_GAME_ATHLETE_CODE = createForeignKey(ATHLETE__PK_ATHLETE_CODE, org.jooq.examples.cubrid.demodb.tables.Game.GAME, org.jooq.examples.cubrid.demodb.tables.Game.GAME.ATHLETE_CODE); + public static final org.jooq.ForeignKey PARTICIPANT__FK_PARTICIPANT_HOST_YEAR = createForeignKey(OLYMPIC__PK_OLYMPIC_HOST_YEAR, org.jooq.examples.cubrid.demodb.tables.Participant.PARTICIPANT, org.jooq.examples.cubrid.demodb.tables.Participant.PARTICIPANT.HOST_YEAR); + public static final org.jooq.ForeignKey PARTICIPANT__FK_PARTICIPANT_NATION_CODE = createForeignKey(NATION__PK_NATION_CODE, org.jooq.examples.cubrid.demodb.tables.Participant.PARTICIPANT, org.jooq.examples.cubrid.demodb.tables.Participant.PARTICIPANT.NATION_CODE); + + /** + * No instances + */ + private Keys() {} +} diff --git a/jOOQ-test/examples/org/jooq/examples/cubrid/demodb/Public.java b/jOOQ-test/examples/org/jooq/examples/cubrid/demodb/Public.java new file mode 100644 index 00000000000..e249a75fadf --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/cubrid/demodb/Public.java @@ -0,0 +1,46 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.cubrid.demodb; + +/** + * This class is generated by jOOQ. + */ +public class Public extends org.jooq.impl.SchemaImpl { + + private static final long serialVersionUID = -1557228553; + + /** + * The singleton instance of PUBLIC + */ + public static final Public PUBLIC = new Public(); + + /** + * No further instances allowed + */ + private Public() { + super("PUBLIC"); + } + + @Override + public final java.util.List> getSequences() { + return java.util.Arrays.>asList( + org.jooq.examples.cubrid.demodb.Sequences.EVENT_NO, + org.jooq.examples.cubrid.demodb.Sequences.STADIUM_NO); + } + + @Override + public final java.util.List> getTables() { + return java.util.Arrays.>asList( + org.jooq.examples.cubrid.demodb.tables.Athlete.ATHLETE, + org.jooq.examples.cubrid.demodb.tables.Code.CODE, + org.jooq.examples.cubrid.demodb.tables.Event.EVENT, + org.jooq.examples.cubrid.demodb.tables.Game.GAME, + org.jooq.examples.cubrid.demodb.tables.History.HISTORY, + org.jooq.examples.cubrid.demodb.tables.Nation.NATION, + org.jooq.examples.cubrid.demodb.tables.Olympic.OLYMPIC, + org.jooq.examples.cubrid.demodb.tables.Participant.PARTICIPANT, + org.jooq.examples.cubrid.demodb.tables.Record.RECORD, + org.jooq.examples.cubrid.demodb.tables.Stadium.STADIUM); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/cubrid/demodb/PublicFactory.java b/jOOQ-test/examples/org/jooq/examples/cubrid/demodb/PublicFactory.java new file mode 100644 index 00000000000..aaf9502c71e --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/cubrid/demodb/PublicFactory.java @@ -0,0 +1,31 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.cubrid.demodb; + +/** + * This class is generated by jOOQ. + */ +public class PublicFactory extends org.jooq.util.cubrid.CUBRIDFactory { + + private static final long serialVersionUID = 660928880; + + /** + * Create a factory with a connection + * + * @param connection The connection to use with objects created from this factory + */ + public PublicFactory(java.sql.Connection connection) { + super(connection); + } + + /** + * Create a factory with a connection and some settings + * + * @param connection The connection to use with objects created from this factory + * @param settings The settings to apply to objects created from this factory + */ + public PublicFactory(java.sql.Connection connection, org.jooq.conf.Settings settings) { + super(connection, settings); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/cubrid/demodb/Sequences.java b/jOOQ-test/examples/org/jooq/examples/cubrid/demodb/Sequences.java new file mode 100644 index 00000000000..9b1234d7f39 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/cubrid/demodb/Sequences.java @@ -0,0 +1,27 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.cubrid.demodb; + +/** + * This class is generated by jOOQ. + * + * Convenience access to all sequences in PUBLIC + */ +public final class Sequences { + + /** + * The sequence PUBLIC.event_no + */ + public static final org.jooq.Sequence EVENT_NO = new org.jooq.impl.SequenceImpl("event_no", org.jooq.examples.cubrid.demodb.Public.PUBLIC, org.jooq.impl.SQLDataType.DECIMAL_INTEGER); + + /** + * The sequence PUBLIC.stadium_no + */ + public static final org.jooq.Sequence STADIUM_NO = new org.jooq.impl.SequenceImpl("stadium_no", org.jooq.examples.cubrid.demodb.Public.PUBLIC, org.jooq.impl.SQLDataType.DECIMAL_INTEGER); + + /** + * No instances + */ + private Sequences() {} +} diff --git a/jOOQ-test/examples/org/jooq/examples/cubrid/demodb/Tables.java b/jOOQ-test/examples/org/jooq/examples/cubrid/demodb/Tables.java new file mode 100644 index 00000000000..630a4ae455a --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/cubrid/demodb/Tables.java @@ -0,0 +1,67 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.cubrid.demodb; + +/** + * This class is generated by jOOQ. + * + * Convenience access to all tables in PUBLIC + */ +public final class Tables { + + /** + * The table PUBLIC.athlete + */ + public static org.jooq.examples.cubrid.demodb.tables.Athlete ATHLETE = org.jooq.examples.cubrid.demodb.tables.Athlete.ATHLETE; + + /** + * The table PUBLIC.code + */ + public static org.jooq.examples.cubrid.demodb.tables.Code CODE = org.jooq.examples.cubrid.demodb.tables.Code.CODE; + + /** + * The table PUBLIC.event + */ + public static org.jooq.examples.cubrid.demodb.tables.Event EVENT = org.jooq.examples.cubrid.demodb.tables.Event.EVENT; + + /** + * The table PUBLIC.game + */ + public static org.jooq.examples.cubrid.demodb.tables.Game GAME = org.jooq.examples.cubrid.demodb.tables.Game.GAME; + + /** + * The table PUBLIC.history + */ + public static org.jooq.examples.cubrid.demodb.tables.History HISTORY = org.jooq.examples.cubrid.demodb.tables.History.HISTORY; + + /** + * The table PUBLIC.nation + */ + public static org.jooq.examples.cubrid.demodb.tables.Nation NATION = org.jooq.examples.cubrid.demodb.tables.Nation.NATION; + + /** + * The table PUBLIC.olympic + */ + public static org.jooq.examples.cubrid.demodb.tables.Olympic OLYMPIC = org.jooq.examples.cubrid.demodb.tables.Olympic.OLYMPIC; + + /** + * The table PUBLIC.participant + */ + public static org.jooq.examples.cubrid.demodb.tables.Participant PARTICIPANT = org.jooq.examples.cubrid.demodb.tables.Participant.PARTICIPANT; + + /** + * The table PUBLIC.record + */ + public static org.jooq.examples.cubrid.demodb.tables.Record RECORD = org.jooq.examples.cubrid.demodb.tables.Record.RECORD; + + /** + * The table PUBLIC.stadium + */ + public static org.jooq.examples.cubrid.demodb.tables.Stadium STADIUM = org.jooq.examples.cubrid.demodb.tables.Stadium.STADIUM; + + /** + * No instances + */ + private Tables() {} +} diff --git a/jOOQ-test/examples/org/jooq/examples/cubrid/demodb/tables/Athlete.java b/jOOQ-test/examples/org/jooq/examples/cubrid/demodb/tables/Athlete.java new file mode 100644 index 00000000000..541a6b6d895 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/cubrid/demodb/tables/Athlete.java @@ -0,0 +1,86 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.cubrid.demodb.tables; + +/** + * This class is generated by jOOQ. + */ +public class Athlete extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = -557524191; + + /** + * The singleton instance of PUBLIC.athlete + */ + public static final org.jooq.examples.cubrid.demodb.tables.Athlete ATHLETE = new org.jooq.examples.cubrid.demodb.tables.Athlete(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.examples.cubrid.demodb.tables.records.AthleteRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final org.jooq.TableField CODE = createField("code", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField NAME = createField("name", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField GENDER = createField("gender", org.jooq.impl.SQLDataType.CHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField NATION_CODE = createField("nation_code", org.jooq.impl.SQLDataType.CHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField EVENT = createField("event", org.jooq.impl.SQLDataType.VARCHAR, this); + + public Athlete() { + super("athlete", org.jooq.examples.cubrid.demodb.Public.PUBLIC); + } + + public Athlete(java.lang.String alias) { + super(alias, org.jooq.examples.cubrid.demodb.Public.PUBLIC, org.jooq.examples.cubrid.demodb.tables.Athlete.ATHLETE); + } + + @Override + public org.jooq.Identity getIdentity() { + return org.jooq.examples.cubrid.demodb.Keys.IDENTITY_ATHLETE; + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.examples.cubrid.demodb.Keys.ATHLETE__PK_ATHLETE_CODE; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.examples.cubrid.demodb.Keys.ATHLETE__PK_ATHLETE_CODE); + } + + @Override + public org.jooq.examples.cubrid.demodb.tables.Athlete as(java.lang.String alias) { + return new org.jooq.examples.cubrid.demodb.tables.Athlete(alias); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/cubrid/demodb/tables/Code.java b/jOOQ-test/examples/org/jooq/examples/cubrid/demodb/tables/Code.java new file mode 100644 index 00000000000..bd41b7b69d1 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/cubrid/demodb/tables/Code.java @@ -0,0 +1,53 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.cubrid.demodb.tables; + +/** + * This class is generated by jOOQ. + */ +public class Code extends org.jooq.impl.TableImpl { + + private static final long serialVersionUID = 662791648; + + /** + * The singleton instance of PUBLIC.code + */ + public static final org.jooq.examples.cubrid.demodb.tables.Code CODE = new org.jooq.examples.cubrid.demodb.tables.Code(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.examples.cubrid.demodb.tables.records.CodeRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + */ + public final org.jooq.TableField S_NAME = createField("s_name", org.jooq.impl.SQLDataType.CHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField F_NAME = createField("f_name", org.jooq.impl.SQLDataType.VARCHAR, this); + + public Code() { + super("code", org.jooq.examples.cubrid.demodb.Public.PUBLIC); + } + + public Code(java.lang.String alias) { + super(alias, org.jooq.examples.cubrid.demodb.Public.PUBLIC, org.jooq.examples.cubrid.demodb.tables.Code.CODE); + } + + @Override + public org.jooq.examples.cubrid.demodb.tables.Code as(java.lang.String alias) { + return new org.jooq.examples.cubrid.demodb.tables.Code(alias); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/cubrid/demodb/tables/Event.java b/jOOQ-test/examples/org/jooq/examples/cubrid/demodb/tables/Event.java new file mode 100644 index 00000000000..f56f5a5ed3b --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/cubrid/demodb/tables/Event.java @@ -0,0 +1,81 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.cubrid.demodb.tables; + +/** + * This class is generated by jOOQ. + */ +public class Event extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = -1196424002; + + /** + * The singleton instance of PUBLIC.event + */ + public static final org.jooq.examples.cubrid.demodb.tables.Event EVENT = new org.jooq.examples.cubrid.demodb.tables.Event(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.examples.cubrid.demodb.tables.records.EventRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final org.jooq.TableField CODE = createField("code", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField SPORTS = createField("sports", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField NAME = createField("name", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField GENDER = createField("gender", org.jooq.impl.SQLDataType.CHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField PLAYERS = createField("players", org.jooq.impl.SQLDataType.INTEGER, this); + + public Event() { + super("event", org.jooq.examples.cubrid.demodb.Public.PUBLIC); + } + + public Event(java.lang.String alias) { + super(alias, org.jooq.examples.cubrid.demodb.Public.PUBLIC, org.jooq.examples.cubrid.demodb.tables.Event.EVENT); + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.examples.cubrid.demodb.Keys.EVENT__PK_EVENT_CODE; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.examples.cubrid.demodb.Keys.EVENT__PK_EVENT_CODE); + } + + @Override + public org.jooq.examples.cubrid.demodb.tables.Event as(java.lang.String alias) { + return new org.jooq.examples.cubrid.demodb.tables.Event(alias); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/cubrid/demodb/tables/Game.java b/jOOQ-test/examples/org/jooq/examples/cubrid/demodb/tables/Game.java new file mode 100644 index 00000000000..31173773540 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/cubrid/demodb/tables/Game.java @@ -0,0 +1,113 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.cubrid.demodb.tables; + +/** + * This class is generated by jOOQ. + */ +public class Game extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = -1291232244; + + /** + * The singleton instance of PUBLIC.game + */ + public static final org.jooq.examples.cubrid.demodb.tables.Game GAME = new org.jooq.examples.cubrid.demodb.tables.Game(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.examples.cubrid.demodb.tables.records.GameRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final org.jooq.TableField HOST_YEAR = createField("host_year", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT game__fk_game_event_code
+	 * FOREIGN KEY (event_code)
+	 * REFERENCES PUBLIC.event (code)
+	 * 
+ */ + public final org.jooq.TableField EVENT_CODE = createField("event_code", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT game__fk_game_athlete_code
+	 * FOREIGN KEY (athlete_code)
+	 * REFERENCES PUBLIC.athlete (code)
+	 * 
+ */ + public final org.jooq.TableField ATHLETE_CODE = createField("athlete_code", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField STADIUM_CODE = createField("stadium_code", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField NATION_CODE = createField("nation_code", org.jooq.impl.SQLDataType.CHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField MEDAL = createField("medal", org.jooq.impl.SQLDataType.CHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField GAME_DATE = createField("game_date", org.jooq.impl.SQLDataType.DATE, this); + + public Game() { + super("game", org.jooq.examples.cubrid.demodb.Public.PUBLIC); + } + + public Game(java.lang.String alias) { + super(alias, org.jooq.examples.cubrid.demodb.Public.PUBLIC, org.jooq.examples.cubrid.demodb.tables.Game.GAME); + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.examples.cubrid.demodb.Keys.GAME__PK_GAME_HOST_YEAR_EVENT_CODE_ATHLETE_CODE; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.examples.cubrid.demodb.Keys.GAME__PK_GAME_HOST_YEAR_EVENT_CODE_ATHLETE_CODE); + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getReferences() { + return java.util.Arrays.>asList(org.jooq.examples.cubrid.demodb.Keys.GAME__FK_GAME_EVENT_CODE, org.jooq.examples.cubrid.demodb.Keys.GAME__FK_GAME_ATHLETE_CODE); + } + + @Override + public org.jooq.examples.cubrid.demodb.tables.Game as(java.lang.String alias) { + return new org.jooq.examples.cubrid.demodb.tables.Game(alias); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/cubrid/demodb/tables/History.java b/jOOQ-test/examples/org/jooq/examples/cubrid/demodb/tables/History.java new file mode 100644 index 00000000000..f928f3673ab --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/cubrid/demodb/tables/History.java @@ -0,0 +1,83 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.cubrid.demodb.tables; + +/** + * This class is generated by jOOQ. + */ +public class History extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = 1458708172; + + /** + * The singleton instance of PUBLIC.history + */ + public static final org.jooq.examples.cubrid.demodb.tables.History HISTORY = new org.jooq.examples.cubrid.demodb.tables.History(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.examples.cubrid.demodb.tables.records.HistoryRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final org.jooq.TableField EVENT_CODE = createField("event_code", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final org.jooq.TableField ATHLETE = createField("athlete", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField HOST_YEAR = createField("host_year", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField SCORE = createField("score", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField UNIT = createField("unit", org.jooq.impl.SQLDataType.VARCHAR, this); + + public History() { + super("history", org.jooq.examples.cubrid.demodb.Public.PUBLIC); + } + + public History(java.lang.String alias) { + super(alias, org.jooq.examples.cubrid.demodb.Public.PUBLIC, org.jooq.examples.cubrid.demodb.tables.History.HISTORY); + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.examples.cubrid.demodb.Keys.HISTORY__PK_HISTORY_EVENT_CODE_ATHLETE; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.examples.cubrid.demodb.Keys.HISTORY__PK_HISTORY_EVENT_CODE_ATHLETE); + } + + @Override + public org.jooq.examples.cubrid.demodb.tables.History as(java.lang.String alias) { + return new org.jooq.examples.cubrid.demodb.tables.History(alias); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/cubrid/demodb/tables/Nation.java b/jOOQ-test/examples/org/jooq/examples/cubrid/demodb/tables/Nation.java new file mode 100644 index 00000000000..8aba264736f --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/cubrid/demodb/tables/Nation.java @@ -0,0 +1,76 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.cubrid.demodb.tables; + +/** + * This class is generated by jOOQ. + */ +public class Nation extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = 610414200; + + /** + * The singleton instance of PUBLIC.nation + */ + public static final org.jooq.examples.cubrid.demodb.tables.Nation NATION = new org.jooq.examples.cubrid.demodb.tables.Nation(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.examples.cubrid.demodb.tables.records.NationRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final org.jooq.TableField CODE = createField("code", org.jooq.impl.SQLDataType.CHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField NAME = createField("name", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField CONTINENT = createField("continent", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField CAPITAL = createField("capital", org.jooq.impl.SQLDataType.VARCHAR, this); + + public Nation() { + super("nation", org.jooq.examples.cubrid.demodb.Public.PUBLIC); + } + + public Nation(java.lang.String alias) { + super(alias, org.jooq.examples.cubrid.demodb.Public.PUBLIC, org.jooq.examples.cubrid.demodb.tables.Nation.NATION); + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.examples.cubrid.demodb.Keys.NATION__PK_NATION_CODE; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.examples.cubrid.demodb.Keys.NATION__PK_NATION_CODE); + } + + @Override + public org.jooq.examples.cubrid.demodb.tables.Nation as(java.lang.String alias) { + return new org.jooq.examples.cubrid.demodb.tables.Nation(alias); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/cubrid/demodb/tables/Olympic.java b/jOOQ-test/examples/org/jooq/examples/cubrid/demodb/tables/Olympic.java new file mode 100644 index 00000000000..d70608a249f --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/cubrid/demodb/tables/Olympic.java @@ -0,0 +1,96 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.cubrid.demodb.tables; + +/** + * This class is generated by jOOQ. + */ +public class Olympic extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = -1531688113; + + /** + * The singleton instance of PUBLIC.olympic + */ + public static final org.jooq.examples.cubrid.demodb.tables.Olympic OLYMPIC = new org.jooq.examples.cubrid.demodb.tables.Olympic(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.examples.cubrid.demodb.tables.records.OlympicRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final org.jooq.TableField HOST_YEAR = createField("host_year", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField HOST_NATION = createField("host_nation", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField HOST_CITY = createField("host_city", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField OPENING_DATE = createField("opening_date", org.jooq.impl.SQLDataType.DATE, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField CLOSING_DATE = createField("closing_date", org.jooq.impl.SQLDataType.DATE, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField MASCOT = createField("mascot", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField SLOGAN = createField("slogan", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField INTRODUCTION = createField("introduction", org.jooq.impl.SQLDataType.VARCHAR, this); + + public Olympic() { + super("olympic", org.jooq.examples.cubrid.demodb.Public.PUBLIC); + } + + public Olympic(java.lang.String alias) { + super(alias, org.jooq.examples.cubrid.demodb.Public.PUBLIC, org.jooq.examples.cubrid.demodb.tables.Olympic.OLYMPIC); + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.examples.cubrid.demodb.Keys.OLYMPIC__PK_OLYMPIC_HOST_YEAR; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.examples.cubrid.demodb.Keys.OLYMPIC__PK_OLYMPIC_HOST_YEAR); + } + + @Override + public org.jooq.examples.cubrid.demodb.tables.Olympic as(java.lang.String alias) { + return new org.jooq.examples.cubrid.demodb.tables.Olympic(alias); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/cubrid/demodb/tables/Participant.java b/jOOQ-test/examples/org/jooq/examples/cubrid/demodb/tables/Participant.java new file mode 100644 index 00000000000..e02c6ba1cd8 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/cubrid/demodb/tables/Participant.java @@ -0,0 +1,101 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.cubrid.demodb.tables; + +/** + * This class is generated by jOOQ. + */ +public class Participant extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = 1019445046; + + /** + * The singleton instance of PUBLIC.participant + */ + public static final org.jooq.examples.cubrid.demodb.tables.Participant PARTICIPANT = new org.jooq.examples.cubrid.demodb.tables.Participant(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.examples.cubrid.demodb.tables.records.ParticipantRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT participant__fk_participant_host_year
+	 * FOREIGN KEY (host_year)
+	 * REFERENCES PUBLIC.olympic (host_year)
+	 * 
+ */ + public final org.jooq.TableField HOST_YEAR = createField("host_year", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT participant__fk_participant_nation_code
+	 * FOREIGN KEY (nation_code)
+	 * REFERENCES PUBLIC.nation (code)
+	 * 
+ */ + public final org.jooq.TableField NATION_CODE = createField("nation_code", org.jooq.impl.SQLDataType.CHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField GOLD = createField("gold", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField SILVER = createField("silver", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField BRONZE = createField("bronze", org.jooq.impl.SQLDataType.INTEGER, this); + + public Participant() { + super("participant", org.jooq.examples.cubrid.demodb.Public.PUBLIC); + } + + public Participant(java.lang.String alias) { + super(alias, org.jooq.examples.cubrid.demodb.Public.PUBLIC, org.jooq.examples.cubrid.demodb.tables.Participant.PARTICIPANT); + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.examples.cubrid.demodb.Keys.PARTICIPANT__PK_PARTICIPANT_HOST_YEAR_NATION_CODE; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.examples.cubrid.demodb.Keys.PARTICIPANT__PK_PARTICIPANT_HOST_YEAR_NATION_CODE); + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getReferences() { + return java.util.Arrays.>asList(org.jooq.examples.cubrid.demodb.Keys.PARTICIPANT__FK_PARTICIPANT_HOST_YEAR, org.jooq.examples.cubrid.demodb.Keys.PARTICIPANT__FK_PARTICIPANT_NATION_CODE); + } + + @Override + public org.jooq.examples.cubrid.demodb.tables.Participant as(java.lang.String alias) { + return new org.jooq.examples.cubrid.demodb.tables.Participant(alias); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/cubrid/demodb/tables/Record.java b/jOOQ-test/examples/org/jooq/examples/cubrid/demodb/tables/Record.java new file mode 100644 index 00000000000..355c48d6fb5 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/cubrid/demodb/tables/Record.java @@ -0,0 +1,92 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.cubrid.demodb.tables; + +/** + * This class is generated by jOOQ. + */ +public class Record extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = 1689962507; + + /** + * The singleton instance of PUBLIC.record + */ + public static final org.jooq.examples.cubrid.demodb.tables.Record RECORD = new org.jooq.examples.cubrid.demodb.tables.Record(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.examples.cubrid.demodb.tables.records.RecordRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final org.jooq.TableField HOST_YEAR = createField("host_year", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final org.jooq.TableField EVENT_CODE = createField("event_code", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final org.jooq.TableField ATHLETE_CODE = createField("athlete_code", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final org.jooq.TableField MEDAL = createField("medal", org.jooq.impl.SQLDataType.CHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField SCORE = createField("score", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField UNIT = createField("unit", org.jooq.impl.SQLDataType.VARCHAR, this); + + public Record() { + super("record", org.jooq.examples.cubrid.demodb.Public.PUBLIC); + } + + public Record(java.lang.String alias) { + super(alias, org.jooq.examples.cubrid.demodb.Public.PUBLIC, org.jooq.examples.cubrid.demodb.tables.Record.RECORD); + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.examples.cubrid.demodb.Keys.RECORD__PK_RECORD_HOST_YEAR_EVENT_CODE_ATHLETE_CODE_MEDAL; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.examples.cubrid.demodb.Keys.RECORD__PK_RECORD_HOST_YEAR_EVENT_CODE_ATHLETE_CODE_MEDAL); + } + + @Override + public org.jooq.examples.cubrid.demodb.tables.Record as(java.lang.String alias) { + return new org.jooq.examples.cubrid.demodb.tables.Record(alias); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/cubrid/demodb/tables/Stadium.java b/jOOQ-test/examples/org/jooq/examples/cubrid/demodb/tables/Stadium.java new file mode 100644 index 00000000000..e0d052294f5 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/cubrid/demodb/tables/Stadium.java @@ -0,0 +1,86 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.cubrid.demodb.tables; + +/** + * This class is generated by jOOQ. + */ +public class Stadium extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = 997514954; + + /** + * The singleton instance of PUBLIC.stadium + */ + public static final org.jooq.examples.cubrid.demodb.tables.Stadium STADIUM = new org.jooq.examples.cubrid.demodb.tables.Stadium(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.examples.cubrid.demodb.tables.records.StadiumRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final org.jooq.TableField CODE = createField("code", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField NATION_CODE = createField("nation_code", org.jooq.impl.SQLDataType.CHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField NAME = createField("name", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField AREA = createField("area", org.jooq.impl.SQLDataType.DECIMAL, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField SEATS = createField("seats", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField ADDRESS = createField("address", org.jooq.impl.SQLDataType.VARCHAR, this); + + public Stadium() { + super("stadium", org.jooq.examples.cubrid.demodb.Public.PUBLIC); + } + + public Stadium(java.lang.String alias) { + super(alias, org.jooq.examples.cubrid.demodb.Public.PUBLIC, org.jooq.examples.cubrid.demodb.tables.Stadium.STADIUM); + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.examples.cubrid.demodb.Keys.STADIUM__PK_STADIUM_CODE; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.examples.cubrid.demodb.Keys.STADIUM__PK_STADIUM_CODE); + } + + @Override + public org.jooq.examples.cubrid.demodb.tables.Stadium as(java.lang.String alias) { + return new org.jooq.examples.cubrid.demodb.tables.Stadium(alias); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/cubrid/demodb/tables/pojos/Athlete.java b/jOOQ-test/examples/org/jooq/examples/cubrid/demodb/tables/pojos/Athlete.java new file mode 100644 index 00000000000..aa878891656 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/cubrid/demodb/tables/pojos/Athlete.java @@ -0,0 +1,66 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.cubrid.demodb.tables.pojos; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "athlete", schema = "PUBLIC") +public class Athlete implements java.io.Serializable { + + private static final long serialVersionUID = -1286219248; + + private java.lang.Integer code; + private java.lang.String name; + private java.lang.String gender; + private java.lang.String nationCode; + private java.lang.String event; + + @javax.persistence.Id + @javax.persistence.Column(name = "code", unique = true, nullable = false) + public java.lang.Integer getCode() { + return this.code; + } + + public void setCode(java.lang.Integer code) { + this.code = code; + } + + @javax.persistence.Column(name = "name", nullable = false, precision = 40) + public java.lang.String getName() { + return this.name; + } + + public void setName(java.lang.String name) { + this.name = name; + } + + @javax.persistence.Column(name = "gender", length = 1) + public java.lang.String getGender() { + return this.gender; + } + + public void setGender(java.lang.String gender) { + this.gender = gender; + } + + @javax.persistence.Column(name = "nation_code", length = 3) + public java.lang.String getNationCode() { + return this.nationCode; + } + + public void setNationCode(java.lang.String nationCode) { + this.nationCode = nationCode; + } + + @javax.persistence.Column(name = "event", precision = 30) + public java.lang.String getEvent() { + return this.event; + } + + public void setEvent(java.lang.String event) { + this.event = event; + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/cubrid/demodb/tables/pojos/Code.java b/jOOQ-test/examples/org/jooq/examples/cubrid/demodb/tables/pojos/Code.java new file mode 100644 index 00000000000..0df860ceba1 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/cubrid/demodb/tables/pojos/Code.java @@ -0,0 +1,35 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.cubrid.demodb.tables.pojos; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "code", schema = "PUBLIC") +public class Code implements java.io.Serializable { + + private static final long serialVersionUID = -717243519; + + private java.lang.String sName; + private java.lang.String fName; + + @javax.persistence.Column(name = "s_name", length = 1) + public java.lang.String getSName() { + return this.sName; + } + + public void setSName(java.lang.String sName) { + this.sName = sName; + } + + @javax.persistence.Column(name = "f_name", precision = 6) + public java.lang.String getFName() { + return this.fName; + } + + public void setFName(java.lang.String fName) { + this.fName = fName; + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/cubrid/demodb/tables/pojos/Event.java b/jOOQ-test/examples/org/jooq/examples/cubrid/demodb/tables/pojos/Event.java new file mode 100644 index 00000000000..d29b6940c77 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/cubrid/demodb/tables/pojos/Event.java @@ -0,0 +1,66 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.cubrid.demodb.tables.pojos; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "event", schema = "PUBLIC") +public class Event implements java.io.Serializable { + + private static final long serialVersionUID = -1266442252; + + private java.lang.Integer code; + private java.lang.String sports; + private java.lang.String name; + private java.lang.String gender; + private java.lang.Integer players; + + @javax.persistence.Id + @javax.persistence.Column(name = "code", unique = true, nullable = false) + public java.lang.Integer getCode() { + return this.code; + } + + public void setCode(java.lang.Integer code) { + this.code = code; + } + + @javax.persistence.Column(name = "sports", precision = 50) + public java.lang.String getSports() { + return this.sports; + } + + public void setSports(java.lang.String sports) { + this.sports = sports; + } + + @javax.persistence.Column(name = "name", precision = 50) + public java.lang.String getName() { + return this.name; + } + + public void setName(java.lang.String name) { + this.name = name; + } + + @javax.persistence.Column(name = "gender", length = 1) + public java.lang.String getGender() { + return this.gender; + } + + public void setGender(java.lang.String gender) { + this.gender = gender; + } + + @javax.persistence.Column(name = "players") + public java.lang.Integer getPlayers() { + return this.players; + } + + public void setPlayers(java.lang.Integer players) { + this.players = players; + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/cubrid/demodb/tables/pojos/Game.java b/jOOQ-test/examples/org/jooq/examples/cubrid/demodb/tables/pojos/Game.java new file mode 100644 index 00000000000..fe4f123d892 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/cubrid/demodb/tables/pojos/Game.java @@ -0,0 +1,87 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.cubrid.demodb.tables.pojos; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "game", schema = "PUBLIC", uniqueConstraints = { + @javax.persistence.UniqueConstraint(columnNames = {"host_year", "event_code", "athlete_code"}) +}) +public class Game implements java.io.Serializable { + + private static final long serialVersionUID = 709922232; + + private java.lang.Integer hostYear; + private java.lang.Integer eventCode; + private java.lang.Integer athleteCode; + private java.lang.Integer stadiumCode; + private java.lang.String nationCode; + private java.lang.String medal; + private java.sql.Date gameDate; + + @javax.persistence.Column(name = "host_year", nullable = false) + public java.lang.Integer getHostYear() { + return this.hostYear; + } + + public void setHostYear(java.lang.Integer hostYear) { + this.hostYear = hostYear; + } + + @javax.persistence.Column(name = "event_code", nullable = false) + public java.lang.Integer getEventCode() { + return this.eventCode; + } + + public void setEventCode(java.lang.Integer eventCode) { + this.eventCode = eventCode; + } + + @javax.persistence.Column(name = "athlete_code", nullable = false) + public java.lang.Integer getAthleteCode() { + return this.athleteCode; + } + + public void setAthleteCode(java.lang.Integer athleteCode) { + this.athleteCode = athleteCode; + } + + @javax.persistence.Column(name = "stadium_code", nullable = false) + public java.lang.Integer getStadiumCode() { + return this.stadiumCode; + } + + public void setStadiumCode(java.lang.Integer stadiumCode) { + this.stadiumCode = stadiumCode; + } + + @javax.persistence.Column(name = "nation_code", length = 3) + public java.lang.String getNationCode() { + return this.nationCode; + } + + public void setNationCode(java.lang.String nationCode) { + this.nationCode = nationCode; + } + + @javax.persistence.Column(name = "medal", length = 1) + public java.lang.String getMedal() { + return this.medal; + } + + public void setMedal(java.lang.String medal) { + this.medal = medal; + } + + @javax.persistence.Column(name = "game_date") + public java.sql.Date getGameDate() { + return this.gameDate; + } + + public void setGameDate(java.sql.Date gameDate) { + this.gameDate = gameDate; + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/cubrid/demodb/tables/pojos/History.java b/jOOQ-test/examples/org/jooq/examples/cubrid/demodb/tables/pojos/History.java new file mode 100644 index 00000000000..c4686c2d275 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/cubrid/demodb/tables/pojos/History.java @@ -0,0 +1,67 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.cubrid.demodb.tables.pojos; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "history", schema = "PUBLIC", uniqueConstraints = { + @javax.persistence.UniqueConstraint(columnNames = {"event_code", "athlete"}) +}) +public class History implements java.io.Serializable { + + private static final long serialVersionUID = 1518631114; + + private java.lang.Integer eventCode; + private java.lang.String athlete; + private java.lang.Integer hostYear; + private java.lang.String score; + private java.lang.String unit; + + @javax.persistence.Column(name = "event_code", nullable = false) + public java.lang.Integer getEventCode() { + return this.eventCode; + } + + public void setEventCode(java.lang.Integer eventCode) { + this.eventCode = eventCode; + } + + @javax.persistence.Column(name = "athlete", nullable = false, precision = 40) + public java.lang.String getAthlete() { + return this.athlete; + } + + public void setAthlete(java.lang.String athlete) { + this.athlete = athlete; + } + + @javax.persistence.Column(name = "host_year") + public java.lang.Integer getHostYear() { + return this.hostYear; + } + + public void setHostYear(java.lang.Integer hostYear) { + this.hostYear = hostYear; + } + + @javax.persistence.Column(name = "score", precision = 10) + public java.lang.String getScore() { + return this.score; + } + + public void setScore(java.lang.String score) { + this.score = score; + } + + @javax.persistence.Column(name = "unit", precision = 5) + public java.lang.String getUnit() { + return this.unit; + } + + public void setUnit(java.lang.String unit) { + this.unit = unit; + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/cubrid/demodb/tables/pojos/Nation.java b/jOOQ-test/examples/org/jooq/examples/cubrid/demodb/tables/pojos/Nation.java new file mode 100644 index 00000000000..422b1ed812e --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/cubrid/demodb/tables/pojos/Nation.java @@ -0,0 +1,56 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.cubrid.demodb.tables.pojos; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "nation", schema = "PUBLIC") +public class Nation implements java.io.Serializable { + + private static final long serialVersionUID = 1194497602; + + private java.lang.String code; + private java.lang.String name; + private java.lang.String continent; + private java.lang.String capital; + + @javax.persistence.Id + @javax.persistence.Column(name = "code", unique = true, nullable = false, length = 3) + public java.lang.String getCode() { + return this.code; + } + + public void setCode(java.lang.String code) { + this.code = code; + } + + @javax.persistence.Column(name = "name", nullable = false, precision = 40) + public java.lang.String getName() { + return this.name; + } + + public void setName(java.lang.String name) { + this.name = name; + } + + @javax.persistence.Column(name = "continent", precision = 10) + public java.lang.String getContinent() { + return this.continent; + } + + public void setContinent(java.lang.String continent) { + this.continent = continent; + } + + @javax.persistence.Column(name = "capital", precision = 30) + public java.lang.String getCapital() { + return this.capital; + } + + public void setCapital(java.lang.String capital) { + this.capital = capital; + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/cubrid/demodb/tables/pojos/Olympic.java b/jOOQ-test/examples/org/jooq/examples/cubrid/demodb/tables/pojos/Olympic.java new file mode 100644 index 00000000000..299e1b2fa47 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/cubrid/demodb/tables/pojos/Olympic.java @@ -0,0 +1,96 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.cubrid.demodb.tables.pojos; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "olympic", schema = "PUBLIC") +public class Olympic implements java.io.Serializable { + + private static final long serialVersionUID = -833188373; + + private java.lang.Integer hostYear; + private java.lang.String hostNation; + private java.lang.String hostCity; + private java.sql.Date openingDate; + private java.sql.Date closingDate; + private java.lang.String mascot; + private java.lang.String slogan; + private java.lang.String introduction; + + @javax.persistence.Id + @javax.persistence.Column(name = "host_year", unique = true, nullable = false) + public java.lang.Integer getHostYear() { + return this.hostYear; + } + + public void setHostYear(java.lang.Integer hostYear) { + this.hostYear = hostYear; + } + + @javax.persistence.Column(name = "host_nation", nullable = false, precision = 40) + public java.lang.String getHostNation() { + return this.hostNation; + } + + public void setHostNation(java.lang.String hostNation) { + this.hostNation = hostNation; + } + + @javax.persistence.Column(name = "host_city", nullable = false, precision = 20) + public java.lang.String getHostCity() { + return this.hostCity; + } + + public void setHostCity(java.lang.String hostCity) { + this.hostCity = hostCity; + } + + @javax.persistence.Column(name = "opening_date", nullable = false) + public java.sql.Date getOpeningDate() { + return this.openingDate; + } + + public void setOpeningDate(java.sql.Date openingDate) { + this.openingDate = openingDate; + } + + @javax.persistence.Column(name = "closing_date", nullable = false) + public java.sql.Date getClosingDate() { + return this.closingDate; + } + + public void setClosingDate(java.sql.Date closingDate) { + this.closingDate = closingDate; + } + + @javax.persistence.Column(name = "mascot", precision = 20) + public java.lang.String getMascot() { + return this.mascot; + } + + public void setMascot(java.lang.String mascot) { + this.mascot = mascot; + } + + @javax.persistence.Column(name = "slogan", precision = 40) + public java.lang.String getSlogan() { + return this.slogan; + } + + public void setSlogan(java.lang.String slogan) { + this.slogan = slogan; + } + + @javax.persistence.Column(name = "introduction", precision = 1500) + public java.lang.String getIntroduction() { + return this.introduction; + } + + public void setIntroduction(java.lang.String introduction) { + this.introduction = introduction; + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/cubrid/demodb/tables/pojos/Participant.java b/jOOQ-test/examples/org/jooq/examples/cubrid/demodb/tables/pojos/Participant.java new file mode 100644 index 00000000000..bee384c672d --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/cubrid/demodb/tables/pojos/Participant.java @@ -0,0 +1,67 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.cubrid.demodb.tables.pojos; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "participant", schema = "PUBLIC", uniqueConstraints = { + @javax.persistence.UniqueConstraint(columnNames = {"host_year", "nation_code"}) +}) +public class Participant implements java.io.Serializable { + + private static final long serialVersionUID = 80587499; + + private java.lang.Integer hostYear; + private java.lang.String nationCode; + private java.lang.Integer gold; + private java.lang.Integer silver; + private java.lang.Integer bronze; + + @javax.persistence.Column(name = "host_year", nullable = false) + public java.lang.Integer getHostYear() { + return this.hostYear; + } + + public void setHostYear(java.lang.Integer hostYear) { + this.hostYear = hostYear; + } + + @javax.persistence.Column(name = "nation_code", nullable = false, length = 3) + public java.lang.String getNationCode() { + return this.nationCode; + } + + public void setNationCode(java.lang.String nationCode) { + this.nationCode = nationCode; + } + + @javax.persistence.Column(name = "gold") + public java.lang.Integer getGold() { + return this.gold; + } + + public void setGold(java.lang.Integer gold) { + this.gold = gold; + } + + @javax.persistence.Column(name = "silver") + public java.lang.Integer getSilver() { + return this.silver; + } + + public void setSilver(java.lang.Integer silver) { + this.silver = silver; + } + + @javax.persistence.Column(name = "bronze") + public java.lang.Integer getBronze() { + return this.bronze; + } + + public void setBronze(java.lang.Integer bronze) { + this.bronze = bronze; + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/cubrid/demodb/tables/pojos/Record.java b/jOOQ-test/examples/org/jooq/examples/cubrid/demodb/tables/pojos/Record.java new file mode 100644 index 00000000000..820ce8ded52 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/cubrid/demodb/tables/pojos/Record.java @@ -0,0 +1,77 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.cubrid.demodb.tables.pojos; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "record", schema = "PUBLIC", uniqueConstraints = { + @javax.persistence.UniqueConstraint(columnNames = {"host_year", "event_code", "athlete_code", "medal"}) +}) +public class Record implements java.io.Serializable { + + private static final long serialVersionUID = 182628481; + + private java.lang.Integer hostYear; + private java.lang.Integer eventCode; + private java.lang.Integer athleteCode; + private java.lang.String medal; + private java.lang.String score; + private java.lang.String unit; + + @javax.persistence.Column(name = "host_year", nullable = false) + public java.lang.Integer getHostYear() { + return this.hostYear; + } + + public void setHostYear(java.lang.Integer hostYear) { + this.hostYear = hostYear; + } + + @javax.persistence.Column(name = "event_code", nullable = false) + public java.lang.Integer getEventCode() { + return this.eventCode; + } + + public void setEventCode(java.lang.Integer eventCode) { + this.eventCode = eventCode; + } + + @javax.persistence.Column(name = "athlete_code", nullable = false) + public java.lang.Integer getAthleteCode() { + return this.athleteCode; + } + + public void setAthleteCode(java.lang.Integer athleteCode) { + this.athleteCode = athleteCode; + } + + @javax.persistence.Column(name = "medal", nullable = false, length = 1) + public java.lang.String getMedal() { + return this.medal; + } + + public void setMedal(java.lang.String medal) { + this.medal = medal; + } + + @javax.persistence.Column(name = "score", precision = 20) + public java.lang.String getScore() { + return this.score; + } + + public void setScore(java.lang.String score) { + this.score = score; + } + + @javax.persistence.Column(name = "unit", precision = 5) + public java.lang.String getUnit() { + return this.unit; + } + + public void setUnit(java.lang.String unit) { + this.unit = unit; + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/cubrid/demodb/tables/pojos/Stadium.java b/jOOQ-test/examples/org/jooq/examples/cubrid/demodb/tables/pojos/Stadium.java new file mode 100644 index 00000000000..75c3e08ecf7 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/cubrid/demodb/tables/pojos/Stadium.java @@ -0,0 +1,76 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.cubrid.demodb.tables.pojos; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "stadium", schema = "PUBLIC") +public class Stadium implements java.io.Serializable { + + private static final long serialVersionUID = -624213762; + + private java.lang.Integer code; + private java.lang.String nationCode; + private java.lang.String name; + private java.math.BigDecimal area; + private java.lang.Integer seats; + private java.lang.String address; + + @javax.persistence.Id + @javax.persistence.Column(name = "code", unique = true, nullable = false) + public java.lang.Integer getCode() { + return this.code; + } + + public void setCode(java.lang.Integer code) { + this.code = code; + } + + @javax.persistence.Column(name = "nation_code", nullable = false, length = 3) + public java.lang.String getNationCode() { + return this.nationCode; + } + + public void setNationCode(java.lang.String nationCode) { + this.nationCode = nationCode; + } + + @javax.persistence.Column(name = "name", nullable = false, precision = 50) + public java.lang.String getName() { + return this.name; + } + + public void setName(java.lang.String name) { + this.name = name; + } + + @javax.persistence.Column(name = "area", precision = 10, scale = 2) + public java.math.BigDecimal getArea() { + return this.area; + } + + public void setArea(java.math.BigDecimal area) { + this.area = area; + } + + @javax.persistence.Column(name = "seats") + public java.lang.Integer getSeats() { + return this.seats; + } + + public void setSeats(java.lang.Integer seats) { + this.seats = seats; + } + + @javax.persistence.Column(name = "address", precision = 100) + public java.lang.String getAddress() { + return this.address; + } + + public void setAddress(java.lang.String address) { + this.address = address; + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/cubrid/demodb/tables/records/AthleteRecord.java b/jOOQ-test/examples/org/jooq/examples/cubrid/demodb/tables/records/AthleteRecord.java new file mode 100644 index 00000000000..9621ea529df --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/cubrid/demodb/tables/records/AthleteRecord.java @@ -0,0 +1,113 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.cubrid.demodb.tables.records; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "athlete", schema = "PUBLIC") +public class AthleteRecord extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = -882075162; + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setCode(java.lang.Integer value) { + setValue(org.jooq.examples.cubrid.demodb.tables.Athlete.ATHLETE.CODE, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + @javax.persistence.Id + @javax.persistence.Column(name = "code", unique = true, nullable = false) + public java.lang.Integer getCode() { + return getValue(org.jooq.examples.cubrid.demodb.tables.Athlete.ATHLETE.CODE); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.util.List fetchGameList() { + return create() + .selectFrom(org.jooq.examples.cubrid.demodb.tables.Game.GAME) + .where(org.jooq.examples.cubrid.demodb.tables.Game.GAME.ATHLETE_CODE.equal(getValue(org.jooq.examples.cubrid.demodb.tables.Athlete.ATHLETE.CODE))) + .fetch(); + } + + /** + * An uncommented item + */ + public void setName(java.lang.String value) { + setValue(org.jooq.examples.cubrid.demodb.tables.Athlete.ATHLETE.NAME, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "name", nullable = false, precision = 40) + public java.lang.String getName() { + return getValue(org.jooq.examples.cubrid.demodb.tables.Athlete.ATHLETE.NAME); + } + + /** + * An uncommented item + */ + public void setGender(java.lang.String value) { + setValue(org.jooq.examples.cubrid.demodb.tables.Athlete.ATHLETE.GENDER, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "gender", length = 1) + public java.lang.String getGender() { + return getValue(org.jooq.examples.cubrid.demodb.tables.Athlete.ATHLETE.GENDER); + } + + /** + * An uncommented item + */ + public void setNationCode(java.lang.String value) { + setValue(org.jooq.examples.cubrid.demodb.tables.Athlete.ATHLETE.NATION_CODE, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "nation_code", length = 3) + public java.lang.String getNationCode() { + return getValue(org.jooq.examples.cubrid.demodb.tables.Athlete.ATHLETE.NATION_CODE); + } + + /** + * An uncommented item + */ + public void setEvent(java.lang.String value) { + setValue(org.jooq.examples.cubrid.demodb.tables.Athlete.ATHLETE.EVENT, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "event", precision = 30) + public java.lang.String getEvent() { + return getValue(org.jooq.examples.cubrid.demodb.tables.Athlete.ATHLETE.EVENT); + } + + /** + * Create a detached AthleteRecord + */ + public AthleteRecord() { + super(org.jooq.examples.cubrid.demodb.tables.Athlete.ATHLETE); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/cubrid/demodb/tables/records/CodeRecord.java b/jOOQ-test/examples/org/jooq/examples/cubrid/demodb/tables/records/CodeRecord.java new file mode 100644 index 00000000000..448d4a2d710 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/cubrid/demodb/tables/records/CodeRecord.java @@ -0,0 +1,51 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.cubrid.demodb.tables.records; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "code", schema = "PUBLIC") +public class CodeRecord extends org.jooq.impl.TableRecordImpl { + + private static final long serialVersionUID = 1136850229; + + /** + * An uncommented item + */ + public void setSName(java.lang.String value) { + setValue(org.jooq.examples.cubrid.demodb.tables.Code.CODE.S_NAME, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "s_name", length = 1) + public java.lang.String getSName() { + return getValue(org.jooq.examples.cubrid.demodb.tables.Code.CODE.S_NAME); + } + + /** + * An uncommented item + */ + public void setFName(java.lang.String value) { + setValue(org.jooq.examples.cubrid.demodb.tables.Code.CODE.F_NAME, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "f_name", precision = 6) + public java.lang.String getFName() { + return getValue(org.jooq.examples.cubrid.demodb.tables.Code.CODE.F_NAME); + } + + /** + * Create a detached CodeRecord + */ + public CodeRecord() { + super(org.jooq.examples.cubrid.demodb.tables.Code.CODE); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/cubrid/demodb/tables/records/EventRecord.java b/jOOQ-test/examples/org/jooq/examples/cubrid/demodb/tables/records/EventRecord.java new file mode 100644 index 00000000000..2a6f1fe4ff1 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/cubrid/demodb/tables/records/EventRecord.java @@ -0,0 +1,113 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.cubrid.demodb.tables.records; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "event", schema = "PUBLIC") +public class EventRecord extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = 166047376; + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setCode(java.lang.Integer value) { + setValue(org.jooq.examples.cubrid.demodb.tables.Event.EVENT.CODE, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + @javax.persistence.Id + @javax.persistence.Column(name = "code", unique = true, nullable = false) + public java.lang.Integer getCode() { + return getValue(org.jooq.examples.cubrid.demodb.tables.Event.EVENT.CODE); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.util.List fetchGameList() { + return create() + .selectFrom(org.jooq.examples.cubrid.demodb.tables.Game.GAME) + .where(org.jooq.examples.cubrid.demodb.tables.Game.GAME.EVENT_CODE.equal(getValue(org.jooq.examples.cubrid.demodb.tables.Event.EVENT.CODE))) + .fetch(); + } + + /** + * An uncommented item + */ + public void setSports(java.lang.String value) { + setValue(org.jooq.examples.cubrid.demodb.tables.Event.EVENT.SPORTS, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "sports", precision = 50) + public java.lang.String getSports() { + return getValue(org.jooq.examples.cubrid.demodb.tables.Event.EVENT.SPORTS); + } + + /** + * An uncommented item + */ + public void setName(java.lang.String value) { + setValue(org.jooq.examples.cubrid.demodb.tables.Event.EVENT.NAME, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "name", precision = 50) + public java.lang.String getName() { + return getValue(org.jooq.examples.cubrid.demodb.tables.Event.EVENT.NAME); + } + + /** + * An uncommented item + */ + public void setGender(java.lang.String value) { + setValue(org.jooq.examples.cubrid.demodb.tables.Event.EVENT.GENDER, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "gender", length = 1) + public java.lang.String getGender() { + return getValue(org.jooq.examples.cubrid.demodb.tables.Event.EVENT.GENDER); + } + + /** + * An uncommented item + */ + public void setPlayers(java.lang.Integer value) { + setValue(org.jooq.examples.cubrid.demodb.tables.Event.EVENT.PLAYERS, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "players") + public java.lang.Integer getPlayers() { + return getValue(org.jooq.examples.cubrid.demodb.tables.Event.EVENT.PLAYERS); + } + + /** + * Create a detached EventRecord + */ + public EventRecord() { + super(org.jooq.examples.cubrid.demodb.tables.Event.EVENT); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/cubrid/demodb/tables/records/GameRecord.java b/jOOQ-test/examples/org/jooq/examples/cubrid/demodb/tables/records/GameRecord.java new file mode 100644 index 00000000000..dc5331a819e --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/cubrid/demodb/tables/records/GameRecord.java @@ -0,0 +1,200 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.cubrid.demodb.tables.records; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "game", schema = "PUBLIC", uniqueConstraints = { + @javax.persistence.UniqueConstraint(columnNames = {"host_year", "event_code", "athlete_code"}) +}) +public class GameRecord extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = 1953882323; + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setHostYear(java.lang.Integer value) { + setValue(org.jooq.examples.cubrid.demodb.tables.Game.GAME.HOST_YEAR, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + @javax.persistence.Column(name = "host_year", nullable = false) + public java.lang.Integer getHostYear() { + return getValue(org.jooq.examples.cubrid.demodb.tables.Game.GAME.HOST_YEAR); + } + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT game__fk_game_event_code
+	 * FOREIGN KEY (event_code)
+	 * REFERENCES PUBLIC.event (code)
+	 * 
+ */ + public void setEventCode(java.lang.Integer value) { + setValue(org.jooq.examples.cubrid.demodb.tables.Game.GAME.EVENT_CODE, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT game__fk_game_event_code
+	 * FOREIGN KEY (event_code)
+	 * REFERENCES PUBLIC.event (code)
+	 * 
+ */ + @javax.persistence.Column(name = "event_code", nullable = false) + public java.lang.Integer getEventCode() { + return getValue(org.jooq.examples.cubrid.demodb.tables.Game.GAME.EVENT_CODE); + } + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT game__fk_game_event_code
+	 * FOREIGN KEY (event_code)
+	 * REFERENCES PUBLIC.event (code)
+	 * 
+ */ + public org.jooq.examples.cubrid.demodb.tables.records.EventRecord fetchEvent() { + return create() + .selectFrom(org.jooq.examples.cubrid.demodb.tables.Event.EVENT) + .where(org.jooq.examples.cubrid.demodb.tables.Event.EVENT.CODE.equal(getValue(org.jooq.examples.cubrid.demodb.tables.Game.GAME.EVENT_CODE))) + .fetchOne(); + } + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT game__fk_game_athlete_code
+	 * FOREIGN KEY (athlete_code)
+	 * REFERENCES PUBLIC.athlete (code)
+	 * 
+ */ + public void setAthleteCode(java.lang.Integer value) { + setValue(org.jooq.examples.cubrid.demodb.tables.Game.GAME.ATHLETE_CODE, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT game__fk_game_athlete_code
+	 * FOREIGN KEY (athlete_code)
+	 * REFERENCES PUBLIC.athlete (code)
+	 * 
+ */ + @javax.persistence.Column(name = "athlete_code", nullable = false) + public java.lang.Integer getAthleteCode() { + return getValue(org.jooq.examples.cubrid.demodb.tables.Game.GAME.ATHLETE_CODE); + } + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT game__fk_game_athlete_code
+	 * FOREIGN KEY (athlete_code)
+	 * REFERENCES PUBLIC.athlete (code)
+	 * 
+ */ + public org.jooq.examples.cubrid.demodb.tables.records.AthleteRecord fetchAthlete() { + return create() + .selectFrom(org.jooq.examples.cubrid.demodb.tables.Athlete.ATHLETE) + .where(org.jooq.examples.cubrid.demodb.tables.Athlete.ATHLETE.CODE.equal(getValue(org.jooq.examples.cubrid.demodb.tables.Game.GAME.ATHLETE_CODE))) + .fetchOne(); + } + + /** + * An uncommented item + */ + public void setStadiumCode(java.lang.Integer value) { + setValue(org.jooq.examples.cubrid.demodb.tables.Game.GAME.STADIUM_CODE, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "stadium_code", nullable = false) + public java.lang.Integer getStadiumCode() { + return getValue(org.jooq.examples.cubrid.demodb.tables.Game.GAME.STADIUM_CODE); + } + + /** + * An uncommented item + */ + public void setNationCode(java.lang.String value) { + setValue(org.jooq.examples.cubrid.demodb.tables.Game.GAME.NATION_CODE, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "nation_code", length = 3) + public java.lang.String getNationCode() { + return getValue(org.jooq.examples.cubrid.demodb.tables.Game.GAME.NATION_CODE); + } + + /** + * An uncommented item + */ + public void setMedal(java.lang.String value) { + setValue(org.jooq.examples.cubrid.demodb.tables.Game.GAME.MEDAL, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "medal", length = 1) + public java.lang.String getMedal() { + return getValue(org.jooq.examples.cubrid.demodb.tables.Game.GAME.MEDAL); + } + + /** + * An uncommented item + */ + public void setGameDate(java.sql.Date value) { + setValue(org.jooq.examples.cubrid.demodb.tables.Game.GAME.GAME_DATE, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "game_date") + public java.sql.Date getGameDate() { + return getValue(org.jooq.examples.cubrid.demodb.tables.Game.GAME.GAME_DATE); + } + + /** + * Create a detached GameRecord + */ + public GameRecord() { + super(org.jooq.examples.cubrid.demodb.tables.Game.GAME); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/cubrid/demodb/tables/records/HistoryRecord.java b/jOOQ-test/examples/org/jooq/examples/cubrid/demodb/tables/records/HistoryRecord.java new file mode 100644 index 00000000000..2168fd0cc50 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/cubrid/demodb/tables/records/HistoryRecord.java @@ -0,0 +1,106 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.cubrid.demodb.tables.records; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "history", schema = "PUBLIC", uniqueConstraints = { + @javax.persistence.UniqueConstraint(columnNames = {"event_code", "athlete"}) +}) +public class HistoryRecord extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = 986266930; + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setEventCode(java.lang.Integer value) { + setValue(org.jooq.examples.cubrid.demodb.tables.History.HISTORY.EVENT_CODE, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + @javax.persistence.Column(name = "event_code", nullable = false) + public java.lang.Integer getEventCode() { + return getValue(org.jooq.examples.cubrid.demodb.tables.History.HISTORY.EVENT_CODE); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setAthlete(java.lang.String value) { + setValue(org.jooq.examples.cubrid.demodb.tables.History.HISTORY.ATHLETE, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + @javax.persistence.Column(name = "athlete", nullable = false, precision = 40) + public java.lang.String getAthlete() { + return getValue(org.jooq.examples.cubrid.demodb.tables.History.HISTORY.ATHLETE); + } + + /** + * An uncommented item + */ + public void setHostYear(java.lang.Integer value) { + setValue(org.jooq.examples.cubrid.demodb.tables.History.HISTORY.HOST_YEAR, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "host_year") + public java.lang.Integer getHostYear() { + return getValue(org.jooq.examples.cubrid.demodb.tables.History.HISTORY.HOST_YEAR); + } + + /** + * An uncommented item + */ + public void setScore(java.lang.String value) { + setValue(org.jooq.examples.cubrid.demodb.tables.History.HISTORY.SCORE, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "score", precision = 10) + public java.lang.String getScore() { + return getValue(org.jooq.examples.cubrid.demodb.tables.History.HISTORY.SCORE); + } + + /** + * An uncommented item + */ + public void setUnit(java.lang.String value) { + setValue(org.jooq.examples.cubrid.demodb.tables.History.HISTORY.UNIT, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "unit", precision = 5) + public java.lang.String getUnit() { + return getValue(org.jooq.examples.cubrid.demodb.tables.History.HISTORY.UNIT); + } + + /** + * Create a detached HistoryRecord + */ + public HistoryRecord() { + super(org.jooq.examples.cubrid.demodb.tables.History.HISTORY); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/cubrid/demodb/tables/records/NationRecord.java b/jOOQ-test/examples/org/jooq/examples/cubrid/demodb/tables/records/NationRecord.java new file mode 100644 index 00000000000..c9b4c3a1f01 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/cubrid/demodb/tables/records/NationRecord.java @@ -0,0 +1,98 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.cubrid.demodb.tables.records; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "nation", schema = "PUBLIC") +public class NationRecord extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = 1114832197; + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setCode(java.lang.String value) { + setValue(org.jooq.examples.cubrid.demodb.tables.Nation.NATION.CODE, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + @javax.persistence.Id + @javax.persistence.Column(name = "code", unique = true, nullable = false, length = 3) + public java.lang.String getCode() { + return getValue(org.jooq.examples.cubrid.demodb.tables.Nation.NATION.CODE); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.util.List fetchParticipantList() { + return create() + .selectFrom(org.jooq.examples.cubrid.demodb.tables.Participant.PARTICIPANT) + .where(org.jooq.examples.cubrid.demodb.tables.Participant.PARTICIPANT.NATION_CODE.equal(getValue(org.jooq.examples.cubrid.demodb.tables.Nation.NATION.CODE))) + .fetch(); + } + + /** + * An uncommented item + */ + public void setName(java.lang.String value) { + setValue(org.jooq.examples.cubrid.demodb.tables.Nation.NATION.NAME, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "name", nullable = false, precision = 40) + public java.lang.String getName() { + return getValue(org.jooq.examples.cubrid.demodb.tables.Nation.NATION.NAME); + } + + /** + * An uncommented item + */ + public void setContinent(java.lang.String value) { + setValue(org.jooq.examples.cubrid.demodb.tables.Nation.NATION.CONTINENT, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "continent", precision = 10) + public java.lang.String getContinent() { + return getValue(org.jooq.examples.cubrid.demodb.tables.Nation.NATION.CONTINENT); + } + + /** + * An uncommented item + */ + public void setCapital(java.lang.String value) { + setValue(org.jooq.examples.cubrid.demodb.tables.Nation.NATION.CAPITAL, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "capital", precision = 30) + public java.lang.String getCapital() { + return getValue(org.jooq.examples.cubrid.demodb.tables.Nation.NATION.CAPITAL); + } + + /** + * Create a detached NationRecord + */ + public NationRecord() { + super(org.jooq.examples.cubrid.demodb.tables.Nation.NATION); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/cubrid/demodb/tables/records/OlympicRecord.java b/jOOQ-test/examples/org/jooq/examples/cubrid/demodb/tables/records/OlympicRecord.java new file mode 100644 index 00000000000..83b9cb13c16 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/cubrid/demodb/tables/records/OlympicRecord.java @@ -0,0 +1,158 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.cubrid.demodb.tables.records; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "olympic", schema = "PUBLIC") +public class OlympicRecord extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = 1910004220; + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setHostYear(java.lang.Integer value) { + setValue(org.jooq.examples.cubrid.demodb.tables.Olympic.OLYMPIC.HOST_YEAR, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + @javax.persistence.Id + @javax.persistence.Column(name = "host_year", unique = true, nullable = false) + public java.lang.Integer getHostYear() { + return getValue(org.jooq.examples.cubrid.demodb.tables.Olympic.OLYMPIC.HOST_YEAR); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.util.List fetchParticipantList() { + return create() + .selectFrom(org.jooq.examples.cubrid.demodb.tables.Participant.PARTICIPANT) + .where(org.jooq.examples.cubrid.demodb.tables.Participant.PARTICIPANT.HOST_YEAR.equal(getValue(org.jooq.examples.cubrid.demodb.tables.Olympic.OLYMPIC.HOST_YEAR))) + .fetch(); + } + + /** + * An uncommented item + */ + public void setHostNation(java.lang.String value) { + setValue(org.jooq.examples.cubrid.demodb.tables.Olympic.OLYMPIC.HOST_NATION, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "host_nation", nullable = false, precision = 40) + public java.lang.String getHostNation() { + return getValue(org.jooq.examples.cubrid.demodb.tables.Olympic.OLYMPIC.HOST_NATION); + } + + /** + * An uncommented item + */ + public void setHostCity(java.lang.String value) { + setValue(org.jooq.examples.cubrid.demodb.tables.Olympic.OLYMPIC.HOST_CITY, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "host_city", nullable = false, precision = 20) + public java.lang.String getHostCity() { + return getValue(org.jooq.examples.cubrid.demodb.tables.Olympic.OLYMPIC.HOST_CITY); + } + + /** + * An uncommented item + */ + public void setOpeningDate(java.sql.Date value) { + setValue(org.jooq.examples.cubrid.demodb.tables.Olympic.OLYMPIC.OPENING_DATE, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "opening_date", nullable = false) + public java.sql.Date getOpeningDate() { + return getValue(org.jooq.examples.cubrid.demodb.tables.Olympic.OLYMPIC.OPENING_DATE); + } + + /** + * An uncommented item + */ + public void setClosingDate(java.sql.Date value) { + setValue(org.jooq.examples.cubrid.demodb.tables.Olympic.OLYMPIC.CLOSING_DATE, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "closing_date", nullable = false) + public java.sql.Date getClosingDate() { + return getValue(org.jooq.examples.cubrid.demodb.tables.Olympic.OLYMPIC.CLOSING_DATE); + } + + /** + * An uncommented item + */ + public void setMascot(java.lang.String value) { + setValue(org.jooq.examples.cubrid.demodb.tables.Olympic.OLYMPIC.MASCOT, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "mascot", precision = 20) + public java.lang.String getMascot() { + return getValue(org.jooq.examples.cubrid.demodb.tables.Olympic.OLYMPIC.MASCOT); + } + + /** + * An uncommented item + */ + public void setSlogan(java.lang.String value) { + setValue(org.jooq.examples.cubrid.demodb.tables.Olympic.OLYMPIC.SLOGAN, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "slogan", precision = 40) + public java.lang.String getSlogan() { + return getValue(org.jooq.examples.cubrid.demodb.tables.Olympic.OLYMPIC.SLOGAN); + } + + /** + * An uncommented item + */ + public void setIntroduction(java.lang.String value) { + setValue(org.jooq.examples.cubrid.demodb.tables.Olympic.OLYMPIC.INTRODUCTION, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "introduction", precision = 1500) + public java.lang.String getIntroduction() { + return getValue(org.jooq.examples.cubrid.demodb.tables.Olympic.OLYMPIC.INTRODUCTION); + } + + /** + * Create a detached OlympicRecord + */ + public OlympicRecord() { + super(org.jooq.examples.cubrid.demodb.tables.Olympic.OLYMPIC); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/cubrid/demodb/tables/records/ParticipantRecord.java b/jOOQ-test/examples/org/jooq/examples/cubrid/demodb/tables/records/ParticipantRecord.java new file mode 100644 index 00000000000..857bd9a6933 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/cubrid/demodb/tables/records/ParticipantRecord.java @@ -0,0 +1,166 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.cubrid.demodb.tables.records; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "participant", schema = "PUBLIC", uniqueConstraints = { + @javax.persistence.UniqueConstraint(columnNames = {"host_year", "nation_code"}) +}) +public class ParticipantRecord extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = 1240796352; + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT participant__fk_participant_host_year
+	 * FOREIGN KEY (host_year)
+	 * REFERENCES PUBLIC.olympic (host_year)
+	 * 
+ */ + public void setHostYear(java.lang.Integer value) { + setValue(org.jooq.examples.cubrid.demodb.tables.Participant.PARTICIPANT.HOST_YEAR, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT participant__fk_participant_host_year
+	 * FOREIGN KEY (host_year)
+	 * REFERENCES PUBLIC.olympic (host_year)
+	 * 
+ */ + @javax.persistence.Column(name = "host_year", nullable = false) + public java.lang.Integer getHostYear() { + return getValue(org.jooq.examples.cubrid.demodb.tables.Participant.PARTICIPANT.HOST_YEAR); + } + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT participant__fk_participant_host_year
+	 * FOREIGN KEY (host_year)
+	 * REFERENCES PUBLIC.olympic (host_year)
+	 * 
+ */ + public org.jooq.examples.cubrid.demodb.tables.records.OlympicRecord fetchOlympic() { + return create() + .selectFrom(org.jooq.examples.cubrid.demodb.tables.Olympic.OLYMPIC) + .where(org.jooq.examples.cubrid.demodb.tables.Olympic.OLYMPIC.HOST_YEAR.equal(getValue(org.jooq.examples.cubrid.demodb.tables.Participant.PARTICIPANT.HOST_YEAR))) + .fetchOne(); + } + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT participant__fk_participant_nation_code
+	 * FOREIGN KEY (nation_code)
+	 * REFERENCES PUBLIC.nation (code)
+	 * 
+ */ + public void setNationCode(java.lang.String value) { + setValue(org.jooq.examples.cubrid.demodb.tables.Participant.PARTICIPANT.NATION_CODE, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT participant__fk_participant_nation_code
+	 * FOREIGN KEY (nation_code)
+	 * REFERENCES PUBLIC.nation (code)
+	 * 
+ */ + @javax.persistence.Column(name = "nation_code", nullable = false, length = 3) + public java.lang.String getNationCode() { + return getValue(org.jooq.examples.cubrid.demodb.tables.Participant.PARTICIPANT.NATION_CODE); + } + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT participant__fk_participant_nation_code
+	 * FOREIGN KEY (nation_code)
+	 * REFERENCES PUBLIC.nation (code)
+	 * 
+ */ + public org.jooq.examples.cubrid.demodb.tables.records.NationRecord fetchNation() { + return create() + .selectFrom(org.jooq.examples.cubrid.demodb.tables.Nation.NATION) + .where(org.jooq.examples.cubrid.demodb.tables.Nation.NATION.CODE.equal(getValue(org.jooq.examples.cubrid.demodb.tables.Participant.PARTICIPANT.NATION_CODE))) + .fetchOne(); + } + + /** + * An uncommented item + */ + public void setGold(java.lang.Integer value) { + setValue(org.jooq.examples.cubrid.demodb.tables.Participant.PARTICIPANT.GOLD, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "gold") + public java.lang.Integer getGold() { + return getValue(org.jooq.examples.cubrid.demodb.tables.Participant.PARTICIPANT.GOLD); + } + + /** + * An uncommented item + */ + public void setSilver(java.lang.Integer value) { + setValue(org.jooq.examples.cubrid.demodb.tables.Participant.PARTICIPANT.SILVER, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "silver") + public java.lang.Integer getSilver() { + return getValue(org.jooq.examples.cubrid.demodb.tables.Participant.PARTICIPANT.SILVER); + } + + /** + * An uncommented item + */ + public void setBronze(java.lang.Integer value) { + setValue(org.jooq.examples.cubrid.demodb.tables.Participant.PARTICIPANT.BRONZE, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "bronze") + public java.lang.Integer getBronze() { + return getValue(org.jooq.examples.cubrid.demodb.tables.Participant.PARTICIPANT.BRONZE); + } + + /** + * Create a detached ParticipantRecord + */ + public ParticipantRecord() { + super(org.jooq.examples.cubrid.demodb.tables.Participant.PARTICIPANT); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/cubrid/demodb/tables/records/RecordRecord.java b/jOOQ-test/examples/org/jooq/examples/cubrid/demodb/tables/records/RecordRecord.java new file mode 100644 index 00000000000..d5250b29797 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/cubrid/demodb/tables/records/RecordRecord.java @@ -0,0 +1,129 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.cubrid.demodb.tables.records; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "record", schema = "PUBLIC", uniqueConstraints = { + @javax.persistence.UniqueConstraint(columnNames = {"host_year", "event_code", "athlete_code", "medal"}) +}) +public class RecordRecord extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = 373569526; + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setHostYear(java.lang.Integer value) { + setValue(org.jooq.examples.cubrid.demodb.tables.Record.RECORD.HOST_YEAR, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + @javax.persistence.Column(name = "host_year", nullable = false) + public java.lang.Integer getHostYear() { + return getValue(org.jooq.examples.cubrid.demodb.tables.Record.RECORD.HOST_YEAR); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setEventCode(java.lang.Integer value) { + setValue(org.jooq.examples.cubrid.demodb.tables.Record.RECORD.EVENT_CODE, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + @javax.persistence.Column(name = "event_code", nullable = false) + public java.lang.Integer getEventCode() { + return getValue(org.jooq.examples.cubrid.demodb.tables.Record.RECORD.EVENT_CODE); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setAthleteCode(java.lang.Integer value) { + setValue(org.jooq.examples.cubrid.demodb.tables.Record.RECORD.ATHLETE_CODE, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + @javax.persistence.Column(name = "athlete_code", nullable = false) + public java.lang.Integer getAthleteCode() { + return getValue(org.jooq.examples.cubrid.demodb.tables.Record.RECORD.ATHLETE_CODE); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setMedal(java.lang.String value) { + setValue(org.jooq.examples.cubrid.demodb.tables.Record.RECORD.MEDAL, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + @javax.persistence.Column(name = "medal", nullable = false, length = 1) + public java.lang.String getMedal() { + return getValue(org.jooq.examples.cubrid.demodb.tables.Record.RECORD.MEDAL); + } + + /** + * An uncommented item + */ + public void setScore(java.lang.String value) { + setValue(org.jooq.examples.cubrid.demodb.tables.Record.RECORD.SCORE, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "score", precision = 20) + public java.lang.String getScore() { + return getValue(org.jooq.examples.cubrid.demodb.tables.Record.RECORD.SCORE); + } + + /** + * An uncommented item + */ + public void setUnit(java.lang.String value) { + setValue(org.jooq.examples.cubrid.demodb.tables.Record.RECORD.UNIT, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "unit", precision = 5) + public java.lang.String getUnit() { + return getValue(org.jooq.examples.cubrid.demodb.tables.Record.RECORD.UNIT); + } + + /** + * Create a detached RecordRecord + */ + public RecordRecord() { + super(org.jooq.examples.cubrid.demodb.tables.Record.RECORD); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/cubrid/demodb/tables/records/StadiumRecord.java b/jOOQ-test/examples/org/jooq/examples/cubrid/demodb/tables/records/StadiumRecord.java new file mode 100644 index 00000000000..230ef6508f8 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/cubrid/demodb/tables/records/StadiumRecord.java @@ -0,0 +1,116 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.cubrid.demodb.tables.records; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "stadium", schema = "PUBLIC") +public class StadiumRecord extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = 1748878530; + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setCode(java.lang.Integer value) { + setValue(org.jooq.examples.cubrid.demodb.tables.Stadium.STADIUM.CODE, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + @javax.persistence.Id + @javax.persistence.Column(name = "code", unique = true, nullable = false) + public java.lang.Integer getCode() { + return getValue(org.jooq.examples.cubrid.demodb.tables.Stadium.STADIUM.CODE); + } + + /** + * An uncommented item + */ + public void setNationCode(java.lang.String value) { + setValue(org.jooq.examples.cubrid.demodb.tables.Stadium.STADIUM.NATION_CODE, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "nation_code", nullable = false, length = 3) + public java.lang.String getNationCode() { + return getValue(org.jooq.examples.cubrid.demodb.tables.Stadium.STADIUM.NATION_CODE); + } + + /** + * An uncommented item + */ + public void setName(java.lang.String value) { + setValue(org.jooq.examples.cubrid.demodb.tables.Stadium.STADIUM.NAME, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "name", nullable = false, precision = 50) + public java.lang.String getName() { + return getValue(org.jooq.examples.cubrid.demodb.tables.Stadium.STADIUM.NAME); + } + + /** + * An uncommented item + */ + public void setArea(java.math.BigDecimal value) { + setValue(org.jooq.examples.cubrid.demodb.tables.Stadium.STADIUM.AREA, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "area", precision = 10, scale = 2) + public java.math.BigDecimal getArea() { + return getValue(org.jooq.examples.cubrid.demodb.tables.Stadium.STADIUM.AREA); + } + + /** + * An uncommented item + */ + public void setSeats(java.lang.Integer value) { + setValue(org.jooq.examples.cubrid.demodb.tables.Stadium.STADIUM.SEATS, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "seats") + public java.lang.Integer getSeats() { + return getValue(org.jooq.examples.cubrid.demodb.tables.Stadium.STADIUM.SEATS); + } + + /** + * An uncommented item + */ + public void setAddress(java.lang.String value) { + setValue(org.jooq.examples.cubrid.demodb.tables.Stadium.STADIUM.ADDRESS, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "address", precision = 100) + public java.lang.String getAddress() { + return getValue(org.jooq.examples.cubrid.demodb.tables.Stadium.STADIUM.ADDRESS); + } + + /** + * Create a detached StadiumRecord + */ + public StadiumRecord() { + super(org.jooq.examples.cubrid.demodb.tables.Stadium.STADIUM); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/mysql/sakila/Keys.java b/jOOQ-test/examples/org/jooq/examples/mysql/sakila/Keys.java new file mode 100644 index 00000000000..76601bef257 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/mysql/sakila/Keys.java @@ -0,0 +1,77 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.mysql.sakila; + +/** + * This class is generated by jOOQ. + * + * A class modelling foreign key relationships between tables of the sakila schema + */ +@SuppressWarnings({"unchecked"}) +public class Keys extends org.jooq.impl.AbstractKeys { + + // IDENTITY definitions + public static final org.jooq.Identity IDENTITY_ACTOR = createIdentity(org.jooq.examples.mysql.sakila.tables.Actor.ACTOR, org.jooq.examples.mysql.sakila.tables.Actor.ACTOR.ACTOR_ID); + public static final org.jooq.Identity IDENTITY_ADDRESS = createIdentity(org.jooq.examples.mysql.sakila.tables.Address.ADDRESS, org.jooq.examples.mysql.sakila.tables.Address.ADDRESS.ADDRESS_ID); + public static final org.jooq.Identity IDENTITY_CATEGORY = createIdentity(org.jooq.examples.mysql.sakila.tables.Category.CATEGORY, org.jooq.examples.mysql.sakila.tables.Category.CATEGORY.CATEGORY_ID); + public static final org.jooq.Identity IDENTITY_CITY = createIdentity(org.jooq.examples.mysql.sakila.tables.City.CITY, org.jooq.examples.mysql.sakila.tables.City.CITY.CITY_ID); + public static final org.jooq.Identity IDENTITY_COUNTRY = createIdentity(org.jooq.examples.mysql.sakila.tables.Country.COUNTRY, org.jooq.examples.mysql.sakila.tables.Country.COUNTRY.COUNTRY_ID); + public static final org.jooq.Identity IDENTITY_CUSTOMER = createIdentity(org.jooq.examples.mysql.sakila.tables.Customer.CUSTOMER, org.jooq.examples.mysql.sakila.tables.Customer.CUSTOMER.CUSTOMER_ID); + public static final org.jooq.Identity IDENTITY_FILM = createIdentity(org.jooq.examples.mysql.sakila.tables.Film.FILM, org.jooq.examples.mysql.sakila.tables.Film.FILM.FILM_ID); + public static final org.jooq.Identity IDENTITY_INVENTORY = createIdentity(org.jooq.examples.mysql.sakila.tables.Inventory.INVENTORY, org.jooq.examples.mysql.sakila.tables.Inventory.INVENTORY.INVENTORY_ID); + public static final org.jooq.Identity IDENTITY_LANGUAGE = createIdentity(org.jooq.examples.mysql.sakila.tables.Language.LANGUAGE, org.jooq.examples.mysql.sakila.tables.Language.LANGUAGE.LANGUAGE_ID); + public static final org.jooq.Identity IDENTITY_PAYMENT = createIdentity(org.jooq.examples.mysql.sakila.tables.Payment.PAYMENT, org.jooq.examples.mysql.sakila.tables.Payment.PAYMENT.PAYMENT_ID); + public static final org.jooq.Identity IDENTITY_RENTAL = createIdentity(org.jooq.examples.mysql.sakila.tables.Rental.RENTAL, org.jooq.examples.mysql.sakila.tables.Rental.RENTAL.RENTAL_ID); + public static final org.jooq.Identity IDENTITY_STAFF = createIdentity(org.jooq.examples.mysql.sakila.tables.Staff.STAFF, org.jooq.examples.mysql.sakila.tables.Staff.STAFF.STAFF_ID); + public static final org.jooq.Identity IDENTITY_STORE = createIdentity(org.jooq.examples.mysql.sakila.tables.Store.STORE, org.jooq.examples.mysql.sakila.tables.Store.STORE.STORE_ID); + + // UNIQUE and PRIMARY KEY definitions + public static final org.jooq.UniqueKey KEY_ACTOR_PRIMARY = createUniqueKey(org.jooq.examples.mysql.sakila.tables.Actor.ACTOR, org.jooq.examples.mysql.sakila.tables.Actor.ACTOR.ACTOR_ID); + public static final org.jooq.UniqueKey KEY_ADDRESS_PRIMARY = createUniqueKey(org.jooq.examples.mysql.sakila.tables.Address.ADDRESS, org.jooq.examples.mysql.sakila.tables.Address.ADDRESS.ADDRESS_ID); + public static final org.jooq.UniqueKey KEY_CATEGORY_PRIMARY = createUniqueKey(org.jooq.examples.mysql.sakila.tables.Category.CATEGORY, org.jooq.examples.mysql.sakila.tables.Category.CATEGORY.CATEGORY_ID); + public static final org.jooq.UniqueKey KEY_CITY_PRIMARY = createUniqueKey(org.jooq.examples.mysql.sakila.tables.City.CITY, org.jooq.examples.mysql.sakila.tables.City.CITY.CITY_ID); + public static final org.jooq.UniqueKey KEY_COUNTRY_PRIMARY = createUniqueKey(org.jooq.examples.mysql.sakila.tables.Country.COUNTRY, org.jooq.examples.mysql.sakila.tables.Country.COUNTRY.COUNTRY_ID); + public static final org.jooq.UniqueKey KEY_CUSTOMER_PRIMARY = createUniqueKey(org.jooq.examples.mysql.sakila.tables.Customer.CUSTOMER, org.jooq.examples.mysql.sakila.tables.Customer.CUSTOMER.CUSTOMER_ID); + public static final org.jooq.UniqueKey KEY_FILM_PRIMARY = createUniqueKey(org.jooq.examples.mysql.sakila.tables.Film.FILM, org.jooq.examples.mysql.sakila.tables.Film.FILM.FILM_ID); + public static final org.jooq.UniqueKey KEY_FILM_ACTOR_PRIMARY = createUniqueKey(org.jooq.examples.mysql.sakila.tables.FilmActor.FILM_ACTOR, org.jooq.examples.mysql.sakila.tables.FilmActor.FILM_ACTOR.ACTOR_ID, org.jooq.examples.mysql.sakila.tables.FilmActor.FILM_ACTOR.FILM_ID); + public static final org.jooq.UniqueKey KEY_FILM_CATEGORY_PRIMARY = createUniqueKey(org.jooq.examples.mysql.sakila.tables.FilmCategory.FILM_CATEGORY, org.jooq.examples.mysql.sakila.tables.FilmCategory.FILM_CATEGORY.FILM_ID, org.jooq.examples.mysql.sakila.tables.FilmCategory.FILM_CATEGORY.CATEGORY_ID); + public static final org.jooq.UniqueKey KEY_FILM_TEXT_PRIMARY = createUniqueKey(org.jooq.examples.mysql.sakila.tables.FilmText.FILM_TEXT, org.jooq.examples.mysql.sakila.tables.FilmText.FILM_TEXT.FILM_ID); + public static final org.jooq.UniqueKey KEY_INVENTORY_PRIMARY = createUniqueKey(org.jooq.examples.mysql.sakila.tables.Inventory.INVENTORY, org.jooq.examples.mysql.sakila.tables.Inventory.INVENTORY.INVENTORY_ID); + public static final org.jooq.UniqueKey KEY_LANGUAGE_PRIMARY = createUniqueKey(org.jooq.examples.mysql.sakila.tables.Language.LANGUAGE, org.jooq.examples.mysql.sakila.tables.Language.LANGUAGE.LANGUAGE_ID); + public static final org.jooq.UniqueKey KEY_PAYMENT_PRIMARY = createUniqueKey(org.jooq.examples.mysql.sakila.tables.Payment.PAYMENT, org.jooq.examples.mysql.sakila.tables.Payment.PAYMENT.PAYMENT_ID); + public static final org.jooq.UniqueKey KEY_RENTAL_PRIMARY = createUniqueKey(org.jooq.examples.mysql.sakila.tables.Rental.RENTAL, org.jooq.examples.mysql.sakila.tables.Rental.RENTAL.RENTAL_ID); + public static final org.jooq.UniqueKey KEY_RENTAL_RENTAL_DATE = createUniqueKey(org.jooq.examples.mysql.sakila.tables.Rental.RENTAL, org.jooq.examples.mysql.sakila.tables.Rental.RENTAL.RENTAL_DATE, org.jooq.examples.mysql.sakila.tables.Rental.RENTAL.INVENTORY_ID, org.jooq.examples.mysql.sakila.tables.Rental.RENTAL.CUSTOMER_ID); + public static final org.jooq.UniqueKey KEY_STAFF_PRIMARY = createUniqueKey(org.jooq.examples.mysql.sakila.tables.Staff.STAFF, org.jooq.examples.mysql.sakila.tables.Staff.STAFF.STAFF_ID); + public static final org.jooq.UniqueKey KEY_STORE_PRIMARY = createUniqueKey(org.jooq.examples.mysql.sakila.tables.Store.STORE, org.jooq.examples.mysql.sakila.tables.Store.STORE.STORE_ID); + public static final org.jooq.UniqueKey KEY_STORE_IDX_UNIQUE_MANAGER = createUniqueKey(org.jooq.examples.mysql.sakila.tables.Store.STORE, org.jooq.examples.mysql.sakila.tables.Store.STORE.MANAGER_STAFF_ID); + + // FOREIGN KEY definitions + public static final org.jooq.ForeignKey FK_ADDRESS_CITY = createForeignKey(KEY_CITY_PRIMARY, org.jooq.examples.mysql.sakila.tables.Address.ADDRESS, org.jooq.examples.mysql.sakila.tables.Address.ADDRESS.CITY_ID); + public static final org.jooq.ForeignKey FK_CITY_COUNTRY = createForeignKey(KEY_COUNTRY_PRIMARY, org.jooq.examples.mysql.sakila.tables.City.CITY, org.jooq.examples.mysql.sakila.tables.City.CITY.COUNTRY_ID); + public static final org.jooq.ForeignKey FK_CUSTOMER_STORE = createForeignKey(KEY_STORE_PRIMARY, org.jooq.examples.mysql.sakila.tables.Customer.CUSTOMER, org.jooq.examples.mysql.sakila.tables.Customer.CUSTOMER.STORE_ID); + public static final org.jooq.ForeignKey FK_CUSTOMER_ADDRESS = createForeignKey(KEY_ADDRESS_PRIMARY, org.jooq.examples.mysql.sakila.tables.Customer.CUSTOMER, org.jooq.examples.mysql.sakila.tables.Customer.CUSTOMER.ADDRESS_ID); + public static final org.jooq.ForeignKey FK_FILM_LANGUAGE = createForeignKey(KEY_LANGUAGE_PRIMARY, org.jooq.examples.mysql.sakila.tables.Film.FILM, org.jooq.examples.mysql.sakila.tables.Film.FILM.LANGUAGE_ID); + public static final org.jooq.ForeignKey FK_FILM_LANGUAGE_ORIGINAL = createForeignKey(KEY_LANGUAGE_PRIMARY, org.jooq.examples.mysql.sakila.tables.Film.FILM, org.jooq.examples.mysql.sakila.tables.Film.FILM.ORIGINAL_LANGUAGE_ID); + public static final org.jooq.ForeignKey FK_FILM_ACTOR_ACTOR = createForeignKey(KEY_ACTOR_PRIMARY, org.jooq.examples.mysql.sakila.tables.FilmActor.FILM_ACTOR, org.jooq.examples.mysql.sakila.tables.FilmActor.FILM_ACTOR.ACTOR_ID); + public static final org.jooq.ForeignKey FK_FILM_ACTOR_FILM = createForeignKey(KEY_FILM_PRIMARY, org.jooq.examples.mysql.sakila.tables.FilmActor.FILM_ACTOR, org.jooq.examples.mysql.sakila.tables.FilmActor.FILM_ACTOR.FILM_ID); + public static final org.jooq.ForeignKey FK_FILM_CATEGORY_FILM = createForeignKey(KEY_FILM_PRIMARY, org.jooq.examples.mysql.sakila.tables.FilmCategory.FILM_CATEGORY, org.jooq.examples.mysql.sakila.tables.FilmCategory.FILM_CATEGORY.FILM_ID); + public static final org.jooq.ForeignKey FK_FILM_CATEGORY_CATEGORY = createForeignKey(KEY_CATEGORY_PRIMARY, org.jooq.examples.mysql.sakila.tables.FilmCategory.FILM_CATEGORY, org.jooq.examples.mysql.sakila.tables.FilmCategory.FILM_CATEGORY.CATEGORY_ID); + public static final org.jooq.ForeignKey FK_INVENTORY_FILM = createForeignKey(KEY_FILM_PRIMARY, org.jooq.examples.mysql.sakila.tables.Inventory.INVENTORY, org.jooq.examples.mysql.sakila.tables.Inventory.INVENTORY.FILM_ID); + public static final org.jooq.ForeignKey FK_INVENTORY_STORE = createForeignKey(KEY_STORE_PRIMARY, org.jooq.examples.mysql.sakila.tables.Inventory.INVENTORY, org.jooq.examples.mysql.sakila.tables.Inventory.INVENTORY.STORE_ID); + public static final org.jooq.ForeignKey FK_PAYMENT_CUSTOMER = createForeignKey(KEY_CUSTOMER_PRIMARY, org.jooq.examples.mysql.sakila.tables.Payment.PAYMENT, org.jooq.examples.mysql.sakila.tables.Payment.PAYMENT.CUSTOMER_ID); + public static final org.jooq.ForeignKey FK_PAYMENT_STAFF = createForeignKey(KEY_STAFF_PRIMARY, org.jooq.examples.mysql.sakila.tables.Payment.PAYMENT, org.jooq.examples.mysql.sakila.tables.Payment.PAYMENT.STAFF_ID); + public static final org.jooq.ForeignKey FK_PAYMENT_RENTAL = createForeignKey(KEY_RENTAL_PRIMARY, org.jooq.examples.mysql.sakila.tables.Payment.PAYMENT, org.jooq.examples.mysql.sakila.tables.Payment.PAYMENT.RENTAL_ID); + public static final org.jooq.ForeignKey FK_RENTAL_INVENTORY = createForeignKey(KEY_INVENTORY_PRIMARY, org.jooq.examples.mysql.sakila.tables.Rental.RENTAL, org.jooq.examples.mysql.sakila.tables.Rental.RENTAL.INVENTORY_ID); + public static final org.jooq.ForeignKey FK_RENTAL_CUSTOMER = createForeignKey(KEY_CUSTOMER_PRIMARY, org.jooq.examples.mysql.sakila.tables.Rental.RENTAL, org.jooq.examples.mysql.sakila.tables.Rental.RENTAL.CUSTOMER_ID); + public static final org.jooq.ForeignKey FK_RENTAL_STAFF = createForeignKey(KEY_STAFF_PRIMARY, org.jooq.examples.mysql.sakila.tables.Rental.RENTAL, org.jooq.examples.mysql.sakila.tables.Rental.RENTAL.STAFF_ID); + public static final org.jooq.ForeignKey FK_STAFF_ADDRESS = createForeignKey(KEY_ADDRESS_PRIMARY, org.jooq.examples.mysql.sakila.tables.Staff.STAFF, org.jooq.examples.mysql.sakila.tables.Staff.STAFF.ADDRESS_ID); + public static final org.jooq.ForeignKey FK_STAFF_STORE = createForeignKey(KEY_STORE_PRIMARY, org.jooq.examples.mysql.sakila.tables.Staff.STAFF, org.jooq.examples.mysql.sakila.tables.Staff.STAFF.STORE_ID); + public static final org.jooq.ForeignKey FK_STORE_STAFF = createForeignKey(KEY_STAFF_PRIMARY, org.jooq.examples.mysql.sakila.tables.Store.STORE, org.jooq.examples.mysql.sakila.tables.Store.STORE.MANAGER_STAFF_ID); + public static final org.jooq.ForeignKey FK_STORE_ADDRESS = createForeignKey(KEY_ADDRESS_PRIMARY, org.jooq.examples.mysql.sakila.tables.Store.STORE, org.jooq.examples.mysql.sakila.tables.Store.STORE.ADDRESS_ID); + + /** + * No instances + */ + private Keys() {} +} diff --git a/jOOQ-test/examples/org/jooq/examples/mysql/sakila/Routines.java b/jOOQ-test/examples/org/jooq/examples/mysql/sakila/Routines.java new file mode 100644 index 00000000000..b5357e864ec --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/mysql/sakila/Routines.java @@ -0,0 +1,188 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.mysql.sakila; + +/** + * This class is generated by jOOQ. + * + * Convenience access to all stored procedures and functions in sakila + */ +public final class Routines { + + /** + * Call sakila.film_in_stock + * + * @param pFilmId IN parameter + * @param pStoreId IN parameter + * @param pFilmCount OUT parameter + * @throws org.jooq.exception.DataAccessException if something went wrong executing the query + */ + public static java.lang.Integer filmInStock(org.jooq.Configuration configuration, java.lang.Integer pFilmId, java.lang.Integer pStoreId) { + org.jooq.examples.mysql.sakila.routines.FilmInStock p = new org.jooq.examples.mysql.sakila.routines.FilmInStock(); + p.setPFilmId(pFilmId); + p.setPStoreId(pStoreId); + + p.execute(configuration); + return p.getPFilmCount(); + } + + /** + * Call sakila.film_not_in_stock + * + * @param pFilmId IN parameter + * @param pStoreId IN parameter + * @param pFilmCount OUT parameter + * @throws org.jooq.exception.DataAccessException if something went wrong executing the query + */ + public static java.lang.Integer filmNotInStock(org.jooq.Configuration configuration, java.lang.Integer pFilmId, java.lang.Integer pStoreId) { + org.jooq.examples.mysql.sakila.routines.FilmNotInStock p = new org.jooq.examples.mysql.sakila.routines.FilmNotInStock(); + p.setPFilmId(pFilmId); + p.setPStoreId(pStoreId); + + p.execute(configuration); + return p.getPFilmCount(); + } + + /** + * Call sakila.get_customer_balance + * + * @param pCustomerId + * @param pEffectiveDate + * @throws org.jooq.exception.DataAccessException if something went wrong executing the query + */ + public static java.math.BigDecimal getCustomerBalance(org.jooq.Configuration configuration, java.lang.Integer pCustomerId, java.sql.Timestamp pEffectiveDate) { + org.jooq.examples.mysql.sakila.routines.GetCustomerBalance f = new org.jooq.examples.mysql.sakila.routines.GetCustomerBalance(); + f.setPCustomerId(pCustomerId); + f.setPEffectiveDate(pEffectiveDate); + + f.execute(configuration); + return f.getReturnValue(); + } + + /** + * Get sakila.get_customer_balance as a field + * + * @param pCustomerId + * @param pEffectiveDate + */ + public static org.jooq.Field getCustomerBalance(java.lang.Integer pCustomerId, java.sql.Timestamp pEffectiveDate) { + org.jooq.examples.mysql.sakila.routines.GetCustomerBalance f = new org.jooq.examples.mysql.sakila.routines.GetCustomerBalance(); + f.setPCustomerId(pCustomerId); + f.setPEffectiveDate(pEffectiveDate); + + return f.asField(); + } + + /** + * Get sakila.get_customer_balance as a field + * + * @param pCustomerId + * @param pEffectiveDate + */ + public static org.jooq.Field getCustomerBalance(org.jooq.Field pCustomerId, org.jooq.Field pEffectiveDate) { + org.jooq.examples.mysql.sakila.routines.GetCustomerBalance f = new org.jooq.examples.mysql.sakila.routines.GetCustomerBalance(); + f.setPCustomerId(pCustomerId); + f.setPEffectiveDate(pEffectiveDate); + + return f.asField(); + } + + /** + * Call sakila.inventory_held_by_customer + * + * @param pInventoryId + * @throws org.jooq.exception.DataAccessException if something went wrong executing the query + */ + public static java.lang.Integer inventoryHeldByCustomer(org.jooq.Configuration configuration, java.lang.Integer pInventoryId) { + org.jooq.examples.mysql.sakila.routines.InventoryHeldByCustomer f = new org.jooq.examples.mysql.sakila.routines.InventoryHeldByCustomer(); + f.setPInventoryId(pInventoryId); + + f.execute(configuration); + return f.getReturnValue(); + } + + /** + * Get sakila.inventory_held_by_customer as a field + * + * @param pInventoryId + */ + public static org.jooq.Field inventoryHeldByCustomer(java.lang.Integer pInventoryId) { + org.jooq.examples.mysql.sakila.routines.InventoryHeldByCustomer f = new org.jooq.examples.mysql.sakila.routines.InventoryHeldByCustomer(); + f.setPInventoryId(pInventoryId); + + return f.asField(); + } + + /** + * Get sakila.inventory_held_by_customer as a field + * + * @param pInventoryId + */ + public static org.jooq.Field inventoryHeldByCustomer(org.jooq.Field pInventoryId) { + org.jooq.examples.mysql.sakila.routines.InventoryHeldByCustomer f = new org.jooq.examples.mysql.sakila.routines.InventoryHeldByCustomer(); + f.setPInventoryId(pInventoryId); + + return f.asField(); + } + + /** + * Call sakila.inventory_in_stock + * + * @param pInventoryId + * @throws org.jooq.exception.DataAccessException if something went wrong executing the query + */ + public static java.lang.Byte inventoryInStock(org.jooq.Configuration configuration, java.lang.Integer pInventoryId) { + org.jooq.examples.mysql.sakila.routines.InventoryInStock f = new org.jooq.examples.mysql.sakila.routines.InventoryInStock(); + f.setPInventoryId(pInventoryId); + + f.execute(configuration); + return f.getReturnValue(); + } + + /** + * Get sakila.inventory_in_stock as a field + * + * @param pInventoryId + */ + public static org.jooq.Field inventoryInStock(java.lang.Integer pInventoryId) { + org.jooq.examples.mysql.sakila.routines.InventoryInStock f = new org.jooq.examples.mysql.sakila.routines.InventoryInStock(); + f.setPInventoryId(pInventoryId); + + return f.asField(); + } + + /** + * Get sakila.inventory_in_stock as a field + * + * @param pInventoryId + */ + public static org.jooq.Field inventoryInStock(org.jooq.Field pInventoryId) { + org.jooq.examples.mysql.sakila.routines.InventoryInStock f = new org.jooq.examples.mysql.sakila.routines.InventoryInStock(); + f.setPInventoryId(pInventoryId); + + return f.asField(); + } + + /** + * Call sakila.rewards_report + * + * @param minMonthlyPurchases IN parameter + * @param minDollarAmountPurchased IN parameter + * @param countRewardees OUT parameter + * @throws org.jooq.exception.DataAccessException if something went wrong executing the query + */ + public static java.lang.Integer rewardsReport(org.jooq.Configuration configuration, java.lang.Byte minMonthlyPurchases, java.math.BigDecimal minDollarAmountPurchased) { + org.jooq.examples.mysql.sakila.routines.RewardsReport p = new org.jooq.examples.mysql.sakila.routines.RewardsReport(); + p.setMinMonthlyPurchases(minMonthlyPurchases); + p.setMinDollarAmountPurchased(minDollarAmountPurchased); + + p.execute(configuration); + return p.getCountRewardees(); + } + + /** + * No instances + */ + private Routines() {} +} diff --git a/jOOQ-test/examples/org/jooq/examples/mysql/sakila/Sakila.java b/jOOQ-test/examples/org/jooq/examples/mysql/sakila/Sakila.java new file mode 100644 index 00000000000..38d8dce4f26 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/mysql/sakila/Sakila.java @@ -0,0 +1,52 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.mysql.sakila; + +/** + * This class is generated by jOOQ. + */ +public class Sakila extends org.jooq.impl.SchemaImpl { + + private static final long serialVersionUID = 621153679; + + /** + * The singleton instance of sakila + */ + public static final Sakila SAKILA = new Sakila(); + + /** + * No further instances allowed + */ + private Sakila() { + super("sakila"); + } + + @Override + public final java.util.List> getTables() { + return java.util.Arrays.>asList( + org.jooq.examples.mysql.sakila.tables.Actor.ACTOR, + org.jooq.examples.mysql.sakila.tables.ActorInfo.ACTOR_INFO, + org.jooq.examples.mysql.sakila.tables.Address.ADDRESS, + org.jooq.examples.mysql.sakila.tables.Category.CATEGORY, + org.jooq.examples.mysql.sakila.tables.City.CITY, + org.jooq.examples.mysql.sakila.tables.Country.COUNTRY, + org.jooq.examples.mysql.sakila.tables.Customer.CUSTOMER, + org.jooq.examples.mysql.sakila.tables.CustomerList.CUSTOMER_LIST, + org.jooq.examples.mysql.sakila.tables.Film.FILM, + org.jooq.examples.mysql.sakila.tables.FilmActor.FILM_ACTOR, + org.jooq.examples.mysql.sakila.tables.FilmCategory.FILM_CATEGORY, + org.jooq.examples.mysql.sakila.tables.FilmList.FILM_LIST, + org.jooq.examples.mysql.sakila.tables.FilmText.FILM_TEXT, + org.jooq.examples.mysql.sakila.tables.Inventory.INVENTORY, + org.jooq.examples.mysql.sakila.tables.Language.LANGUAGE, + org.jooq.examples.mysql.sakila.tables.NicerButSlowerFilmList.NICER_BUT_SLOWER_FILM_LIST, + org.jooq.examples.mysql.sakila.tables.Payment.PAYMENT, + org.jooq.examples.mysql.sakila.tables.Rental.RENTAL, + org.jooq.examples.mysql.sakila.tables.SalesByFilmCategory.SALES_BY_FILM_CATEGORY, + org.jooq.examples.mysql.sakila.tables.SalesByStore.SALES_BY_STORE, + org.jooq.examples.mysql.sakila.tables.Staff.STAFF, + org.jooq.examples.mysql.sakila.tables.StaffList.STAFF_LIST, + org.jooq.examples.mysql.sakila.tables.Store.STORE); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/mysql/sakila/SakilaFactory.java b/jOOQ-test/examples/org/jooq/examples/mysql/sakila/SakilaFactory.java new file mode 100644 index 00000000000..9d3195a7080 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/mysql/sakila/SakilaFactory.java @@ -0,0 +1,41 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.mysql.sakila; + +/** + * This class is generated by jOOQ. + */ +public class SakilaFactory extends org.jooq.util.mysql.MySQLFactory { + + private static final long serialVersionUID = -1204007483; + + /** + * Create a factory with a connection + * + * @param connection The connection to use with objects created from this factory + */ + public SakilaFactory(java.sql.Connection connection) { + super(connection); + } + + /** + * Create a factory with a connection and a schema mapping + * + * @deprecated - 2.0.5 - Use {@link #SakilaFactory(java.sql.Connection, org.jooq.conf.Settings)} instead + */ + @Deprecated + public SakilaFactory(java.sql.Connection connection, org.jooq.SchemaMapping mapping) { + super(connection, mapping); + } + + /** + * Create a factory with a connection and some settings + * + * @param connection The connection to use with objects created from this factory + * @param settings The settings to apply to objects created from this factory + */ + public SakilaFactory(java.sql.Connection connection, org.jooq.conf.Settings settings) { + super(connection, settings); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/mysql/sakila/Tables.java b/jOOQ-test/examples/org/jooq/examples/mysql/sakila/Tables.java new file mode 100644 index 00000000000..bfcbabdd8d8 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/mysql/sakila/Tables.java @@ -0,0 +1,132 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.mysql.sakila; + +/** + * This class is generated by jOOQ. + * + * Convenience access to all tables in sakila + */ +public final class Tables { + + /** + * The table sakila.actor + */ + public static org.jooq.examples.mysql.sakila.tables.Actor ACTOR = org.jooq.examples.mysql.sakila.tables.Actor.ACTOR; + + /** + * VIEW + */ + public static org.jooq.examples.mysql.sakila.tables.ActorInfo ACTOR_INFO = org.jooq.examples.mysql.sakila.tables.ActorInfo.ACTOR_INFO; + + /** + * The table sakila.address + */ + public static org.jooq.examples.mysql.sakila.tables.Address ADDRESS = org.jooq.examples.mysql.sakila.tables.Address.ADDRESS; + + /** + * The table sakila.category + */ + public static org.jooq.examples.mysql.sakila.tables.Category CATEGORY = org.jooq.examples.mysql.sakila.tables.Category.CATEGORY; + + /** + * The table sakila.city + */ + public static org.jooq.examples.mysql.sakila.tables.City CITY = org.jooq.examples.mysql.sakila.tables.City.CITY; + + /** + * The table sakila.country + */ + public static org.jooq.examples.mysql.sakila.tables.Country COUNTRY = org.jooq.examples.mysql.sakila.tables.Country.COUNTRY; + + /** + * The table sakila.customer + */ + public static org.jooq.examples.mysql.sakila.tables.Customer CUSTOMER = org.jooq.examples.mysql.sakila.tables.Customer.CUSTOMER; + + /** + * VIEW + */ + public static org.jooq.examples.mysql.sakila.tables.CustomerList CUSTOMER_LIST = org.jooq.examples.mysql.sakila.tables.CustomerList.CUSTOMER_LIST; + + /** + * The table sakila.film + */ + public static org.jooq.examples.mysql.sakila.tables.Film FILM = org.jooq.examples.mysql.sakila.tables.Film.FILM; + + /** + * The table sakila.film_actor + */ + public static org.jooq.examples.mysql.sakila.tables.FilmActor FILM_ACTOR = org.jooq.examples.mysql.sakila.tables.FilmActor.FILM_ACTOR; + + /** + * The table sakila.film_category + */ + public static org.jooq.examples.mysql.sakila.tables.FilmCategory FILM_CATEGORY = org.jooq.examples.mysql.sakila.tables.FilmCategory.FILM_CATEGORY; + + /** + * VIEW + */ + public static org.jooq.examples.mysql.sakila.tables.FilmList FILM_LIST = org.jooq.examples.mysql.sakila.tables.FilmList.FILM_LIST; + + /** + * The table sakila.film_text + */ + public static org.jooq.examples.mysql.sakila.tables.FilmText FILM_TEXT = org.jooq.examples.mysql.sakila.tables.FilmText.FILM_TEXT; + + /** + * The table sakila.inventory + */ + public static org.jooq.examples.mysql.sakila.tables.Inventory INVENTORY = org.jooq.examples.mysql.sakila.tables.Inventory.INVENTORY; + + /** + * The table sakila.language + */ + public static org.jooq.examples.mysql.sakila.tables.Language LANGUAGE = org.jooq.examples.mysql.sakila.tables.Language.LANGUAGE; + + /** + * VIEW + */ + public static org.jooq.examples.mysql.sakila.tables.NicerButSlowerFilmList NICER_BUT_SLOWER_FILM_LIST = org.jooq.examples.mysql.sakila.tables.NicerButSlowerFilmList.NICER_BUT_SLOWER_FILM_LIST; + + /** + * The table sakila.payment + */ + public static org.jooq.examples.mysql.sakila.tables.Payment PAYMENT = org.jooq.examples.mysql.sakila.tables.Payment.PAYMENT; + + /** + * The table sakila.rental + */ + public static org.jooq.examples.mysql.sakila.tables.Rental RENTAL = org.jooq.examples.mysql.sakila.tables.Rental.RENTAL; + + /** + * VIEW + */ + public static org.jooq.examples.mysql.sakila.tables.SalesByFilmCategory SALES_BY_FILM_CATEGORY = org.jooq.examples.mysql.sakila.tables.SalesByFilmCategory.SALES_BY_FILM_CATEGORY; + + /** + * VIEW + */ + public static org.jooq.examples.mysql.sakila.tables.SalesByStore SALES_BY_STORE = org.jooq.examples.mysql.sakila.tables.SalesByStore.SALES_BY_STORE; + + /** + * The table sakila.staff + */ + public static org.jooq.examples.mysql.sakila.tables.Staff STAFF = org.jooq.examples.mysql.sakila.tables.Staff.STAFF; + + /** + * VIEW + */ + public static org.jooq.examples.mysql.sakila.tables.StaffList STAFF_LIST = org.jooq.examples.mysql.sakila.tables.StaffList.STAFF_LIST; + + /** + * The table sakila.store + */ + public static org.jooq.examples.mysql.sakila.tables.Store STORE = org.jooq.examples.mysql.sakila.tables.Store.STORE; + + /** + * No instances + */ + private Tables() {} +} diff --git a/jOOQ-test/examples/org/jooq/examples/mysql/sakila/enums/FilmListRating.java b/jOOQ-test/examples/org/jooq/examples/mysql/sakila/enums/FilmListRating.java new file mode 100644 index 00000000000..6431d5e98dc --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/mysql/sakila/enums/FilmListRating.java @@ -0,0 +1,37 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.mysql.sakila.enums; + +/** + * This class is generated by jOOQ. + */ +public enum FilmListRating implements org.jooq.EnumType { + G("G"), + + PG("PG"), + + PG_13("PG-13"), + + R("R"), + + NC_17("NC-17"), + + ; + + private final java.lang.String literal; + + private FilmListRating(java.lang.String literal) { + this.literal = literal; + } + + @Override + public java.lang.String getName() { + return "film_list_rating"; + } + + @Override + public java.lang.String getLiteral() { + return literal; + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/mysql/sakila/enums/FilmRating.java b/jOOQ-test/examples/org/jooq/examples/mysql/sakila/enums/FilmRating.java new file mode 100644 index 00000000000..90947f4f176 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/mysql/sakila/enums/FilmRating.java @@ -0,0 +1,37 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.mysql.sakila.enums; + +/** + * This class is generated by jOOQ. + */ +public enum FilmRating implements org.jooq.EnumType { + G("G"), + + PG("PG"), + + PG_13("PG-13"), + + R("R"), + + NC_17("NC-17"), + + ; + + private final java.lang.String literal; + + private FilmRating(java.lang.String literal) { + this.literal = literal; + } + + @Override + public java.lang.String getName() { + return "film_rating"; + } + + @Override + public java.lang.String getLiteral() { + return literal; + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/mysql/sakila/enums/NicerButSlowerFilmListRating.java b/jOOQ-test/examples/org/jooq/examples/mysql/sakila/enums/NicerButSlowerFilmListRating.java new file mode 100644 index 00000000000..763edbfea0c --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/mysql/sakila/enums/NicerButSlowerFilmListRating.java @@ -0,0 +1,37 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.mysql.sakila.enums; + +/** + * This class is generated by jOOQ. + */ +public enum NicerButSlowerFilmListRating implements org.jooq.EnumType { + G("G"), + + PG("PG"), + + PG_13("PG-13"), + + R("R"), + + NC_17("NC-17"), + + ; + + private final java.lang.String literal; + + private NicerButSlowerFilmListRating(java.lang.String literal) { + this.literal = literal; + } + + @Override + public java.lang.String getName() { + return "nicer_but_slower_film_list_rating"; + } + + @Override + public java.lang.String getLiteral() { + return literal; + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/mysql/sakila/routines/FilmInStock.java b/jOOQ-test/examples/org/jooq/examples/mysql/sakila/routines/FilmInStock.java new file mode 100644 index 00000000000..344e4992341 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/mysql/sakila/routines/FilmInStock.java @@ -0,0 +1,57 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.mysql.sakila.routines; + +/** + * This class is generated by jOOQ. + */ +public class FilmInStock extends org.jooq.impl.AbstractRoutine { + + private static final long serialVersionUID = -1398821343; + + + /** + * An uncommented item + */ + public static final org.jooq.Parameter P_FILM_ID = createParameter("p_film_id", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter P_STORE_ID = createParameter("p_store_id", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter P_FILM_COUNT = createParameter("p_film_count", org.jooq.impl.SQLDataType.INTEGER); + + /** + * Create a new routine call instance + */ + public FilmInStock() { + super("film_in_stock", org.jooq.examples.mysql.sakila.Sakila.SAKILA); + + addInParameter(P_FILM_ID); + addInParameter(P_STORE_ID); + addOutParameter(P_FILM_COUNT); + } + + /** + * Set the p_film_id parameter to the routine + */ + public void setPFilmId(java.lang.Integer value) { + setValue(P_FILM_ID, value); + } + + /** + * Set the p_store_id parameter to the routine + */ + public void setPStoreId(java.lang.Integer value) { + setValue(P_STORE_ID, value); + } + + public java.lang.Integer getPFilmCount() { + return getValue(P_FILM_COUNT); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/mysql/sakila/routines/FilmNotInStock.java b/jOOQ-test/examples/org/jooq/examples/mysql/sakila/routines/FilmNotInStock.java new file mode 100644 index 00000000000..5f37121045a --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/mysql/sakila/routines/FilmNotInStock.java @@ -0,0 +1,57 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.mysql.sakila.routines; + +/** + * This class is generated by jOOQ. + */ +public class FilmNotInStock extends org.jooq.impl.AbstractRoutine { + + private static final long serialVersionUID = 136011591; + + + /** + * An uncommented item + */ + public static final org.jooq.Parameter P_FILM_ID = createParameter("p_film_id", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter P_STORE_ID = createParameter("p_store_id", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter P_FILM_COUNT = createParameter("p_film_count", org.jooq.impl.SQLDataType.INTEGER); + + /** + * Create a new routine call instance + */ + public FilmNotInStock() { + super("film_not_in_stock", org.jooq.examples.mysql.sakila.Sakila.SAKILA); + + addInParameter(P_FILM_ID); + addInParameter(P_STORE_ID); + addOutParameter(P_FILM_COUNT); + } + + /** + * Set the p_film_id parameter to the routine + */ + public void setPFilmId(java.lang.Integer value) { + setValue(P_FILM_ID, value); + } + + /** + * Set the p_store_id parameter to the routine + */ + public void setPStoreId(java.lang.Integer value) { + setValue(P_STORE_ID, value); + } + + public java.lang.Integer getPFilmCount() { + return getValue(P_FILM_COUNT); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/mysql/sakila/routines/GetCustomerBalance.java b/jOOQ-test/examples/org/jooq/examples/mysql/sakila/routines/GetCustomerBalance.java new file mode 100644 index 00000000000..03d36c2e048 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/mysql/sakila/routines/GetCustomerBalance.java @@ -0,0 +1,71 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.mysql.sakila.routines; + +/** + * This class is generated by jOOQ. + */ +public class GetCustomerBalance extends org.jooq.impl.AbstractRoutine { + + private static final long serialVersionUID = 1079769348; + + + /** + * An uncommented item + */ + public static final org.jooq.Parameter RETURN_VALUE = createParameter("RETURN_VALUE", org.jooq.impl.SQLDataType.DECIMAL); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter P_CUSTOMER_ID = createParameter("p_customer_id", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter P_EFFECTIVE_DATE = createParameter("p_effective_date", org.jooq.impl.SQLDataType.TIMESTAMP); + + /** + * Create a new routine call instance + */ + public GetCustomerBalance() { + super("get_customer_balance", org.jooq.examples.mysql.sakila.Sakila.SAKILA, org.jooq.impl.SQLDataType.DECIMAL); + + setReturnParameter(RETURN_VALUE); + addInParameter(P_CUSTOMER_ID); + addInParameter(P_EFFECTIVE_DATE); + } + + /** + * Set the p_customer_id parameter to the routine + */ + public void setPCustomerId(java.lang.Integer value) { + setValue(P_CUSTOMER_ID, value); + } + + /** + * Set the p_customer_id parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setPCustomerId(org.jooq.Field field) { + setField(P_CUSTOMER_ID, field); + } + + /** + * Set the p_effective_date parameter to the routine + */ + public void setPEffectiveDate(java.sql.Timestamp value) { + setValue(P_EFFECTIVE_DATE, value); + } + + /** + * Set the p_effective_date parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setPEffectiveDate(org.jooq.Field field) { + setField(P_EFFECTIVE_DATE, field); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/mysql/sakila/routines/InventoryHeldByCustomer.java b/jOOQ-test/examples/org/jooq/examples/mysql/sakila/routines/InventoryHeldByCustomer.java new file mode 100644 index 00000000000..7248b1c968e --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/mysql/sakila/routines/InventoryHeldByCustomer.java @@ -0,0 +1,49 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.mysql.sakila.routines; + +/** + * This class is generated by jOOQ. + */ +public class InventoryHeldByCustomer extends org.jooq.impl.AbstractRoutine { + + private static final long serialVersionUID = -1873033922; + + + /** + * An uncommented item + */ + public static final org.jooq.Parameter RETURN_VALUE = createParameter("RETURN_VALUE", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter P_INVENTORY_ID = createParameter("p_inventory_id", org.jooq.impl.SQLDataType.INTEGER); + + /** + * Create a new routine call instance + */ + public InventoryHeldByCustomer() { + super("inventory_held_by_customer", org.jooq.examples.mysql.sakila.Sakila.SAKILA, org.jooq.impl.SQLDataType.INTEGER); + + setReturnParameter(RETURN_VALUE); + addInParameter(P_INVENTORY_ID); + } + + /** + * Set the p_inventory_id parameter to the routine + */ + public void setPInventoryId(java.lang.Integer value) { + setValue(P_INVENTORY_ID, value); + } + + /** + * Set the p_inventory_id parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setPInventoryId(org.jooq.Field field) { + setField(P_INVENTORY_ID, field); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/mysql/sakila/routines/InventoryInStock.java b/jOOQ-test/examples/org/jooq/examples/mysql/sakila/routines/InventoryInStock.java new file mode 100644 index 00000000000..16751a7fb32 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/mysql/sakila/routines/InventoryInStock.java @@ -0,0 +1,49 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.mysql.sakila.routines; + +/** + * This class is generated by jOOQ. + */ +public class InventoryInStock extends org.jooq.impl.AbstractRoutine { + + private static final long serialVersionUID = -924685636; + + + /** + * An uncommented item + */ + public static final org.jooq.Parameter RETURN_VALUE = createParameter("RETURN_VALUE", org.jooq.impl.SQLDataType.TINYINT); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter P_INVENTORY_ID = createParameter("p_inventory_id", org.jooq.impl.SQLDataType.INTEGER); + + /** + * Create a new routine call instance + */ + public InventoryInStock() { + super("inventory_in_stock", org.jooq.examples.mysql.sakila.Sakila.SAKILA, org.jooq.impl.SQLDataType.TINYINT); + + setReturnParameter(RETURN_VALUE); + addInParameter(P_INVENTORY_ID); + } + + /** + * Set the p_inventory_id parameter to the routine + */ + public void setPInventoryId(java.lang.Integer value) { + setValue(P_INVENTORY_ID, value); + } + + /** + * Set the p_inventory_id parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setPInventoryId(org.jooq.Field field) { + setField(P_INVENTORY_ID, field); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/mysql/sakila/routines/RewardsReport.java b/jOOQ-test/examples/org/jooq/examples/mysql/sakila/routines/RewardsReport.java new file mode 100644 index 00000000000..e8cb9e9fc6c --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/mysql/sakila/routines/RewardsReport.java @@ -0,0 +1,59 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.mysql.sakila.routines; + +/** + * This class is generated by jOOQ. + * + * Provides a customizable report on best customers + */ +public class RewardsReport extends org.jooq.impl.AbstractRoutine { + + private static final long serialVersionUID = 1300386401; + + + /** + * An uncommented item + */ + public static final org.jooq.Parameter MIN_MONTHLY_PURCHASES = createParameter("min_monthly_purchases", org.jooq.impl.SQLDataType.TINYINT); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter MIN_DOLLAR_AMOUNT_PURCHASED = createParameter("min_dollar_amount_purchased", org.jooq.impl.SQLDataType.DECIMAL); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter COUNT_REWARDEES = createParameter("count_rewardees", org.jooq.impl.SQLDataType.INTEGER); + + /** + * Create a new routine call instance + */ + public RewardsReport() { + super("rewards_report", org.jooq.examples.mysql.sakila.Sakila.SAKILA); + + addInParameter(MIN_MONTHLY_PURCHASES); + addInParameter(MIN_DOLLAR_AMOUNT_PURCHASED); + addOutParameter(COUNT_REWARDEES); + } + + /** + * Set the min_monthly_purchases parameter to the routine + */ + public void setMinMonthlyPurchases(java.lang.Byte value) { + setValue(MIN_MONTHLY_PURCHASES, value); + } + + /** + * Set the min_dollar_amount_purchased parameter to the routine + */ + public void setMinDollarAmountPurchased(java.math.BigDecimal value) { + setValue(MIN_DOLLAR_AMOUNT_PURCHASED, value); + } + + public java.lang.Integer getCountRewardees() { + return getValue(COUNT_REWARDEES); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/mysql/sakila/tables/Actor.java b/jOOQ-test/examples/org/jooq/examples/mysql/sakila/tables/Actor.java new file mode 100644 index 00000000000..871a9f2f70c --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/mysql/sakila/tables/Actor.java @@ -0,0 +1,81 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.mysql.sakila.tables; + +/** + * This class is generated by jOOQ. + */ +public class Actor extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = 1814781814; + + /** + * The singleton instance of sakila.actor + */ + public static final org.jooq.examples.mysql.sakila.tables.Actor ACTOR = new org.jooq.examples.mysql.sakila.tables.Actor(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.examples.mysql.sakila.tables.records.ActorRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final org.jooq.TableField ACTOR_ID = createField("actor_id", org.jooq.impl.SQLDataType.SMALLINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField FIRST_NAME = createField("first_name", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField LAST_NAME = createField("last_name", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField LAST_UPDATE = createField("last_update", org.jooq.impl.SQLDataType.TIMESTAMP, this); + + public Actor() { + super("actor", org.jooq.examples.mysql.sakila.Sakila.SAKILA); + } + + public Actor(java.lang.String alias) { + super(alias, org.jooq.examples.mysql.sakila.Sakila.SAKILA, org.jooq.examples.mysql.sakila.tables.Actor.ACTOR); + } + + @Override + public org.jooq.Identity getIdentity() { + return org.jooq.examples.mysql.sakila.Keys.IDENTITY_ACTOR; + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.examples.mysql.sakila.Keys.KEY_ACTOR_PRIMARY; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.examples.mysql.sakila.Keys.KEY_ACTOR_PRIMARY); + } + + @Override + public org.jooq.examples.mysql.sakila.tables.Actor as(java.lang.String alias) { + return new org.jooq.examples.mysql.sakila.tables.Actor(alias); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/mysql/sakila/tables/ActorInfo.java b/jOOQ-test/examples/org/jooq/examples/mysql/sakila/tables/ActorInfo.java new file mode 100644 index 00000000000..de97dc30b31 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/mysql/sakila/tables/ActorInfo.java @@ -0,0 +1,65 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.mysql.sakila.tables; + +/** + * This class is generated by jOOQ. + * + * VIEW + */ +public class ActorInfo extends org.jooq.impl.TableImpl { + + private static final long serialVersionUID = 1873053134; + + /** + * The singleton instance of sakila.actor_info + */ + public static final org.jooq.examples.mysql.sakila.tables.ActorInfo ACTOR_INFO = new org.jooq.examples.mysql.sakila.tables.ActorInfo(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.examples.mysql.sakila.tables.records.ActorInfoRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + */ + public final org.jooq.TableField ACTOR_ID = createField("actor_id", org.jooq.impl.SQLDataType.SMALLINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField FIRST_NAME = createField("first_name", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField LAST_NAME = createField("last_name", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField FILM_INFO = createField("film_info", org.jooq.impl.SQLDataType.VARCHAR, this); + + public ActorInfo() { + super("actor_info", org.jooq.examples.mysql.sakila.Sakila.SAKILA); + } + + public ActorInfo(java.lang.String alias) { + super(alias, org.jooq.examples.mysql.sakila.Sakila.SAKILA, org.jooq.examples.mysql.sakila.tables.ActorInfo.ACTOR_INFO); + } + + @Override + public org.jooq.examples.mysql.sakila.tables.ActorInfo as(java.lang.String alias) { + return new org.jooq.examples.mysql.sakila.tables.ActorInfo(alias); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/mysql/sakila/tables/Address.java b/jOOQ-test/examples/org/jooq/examples/mysql/sakila/tables/Address.java new file mode 100644 index 00000000000..0d666f5cdfb --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/mysql/sakila/tables/Address.java @@ -0,0 +1,113 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.mysql.sakila.tables; + +/** + * This class is generated by jOOQ. + */ +public class Address extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = -1972629676; + + /** + * The singleton instance of sakila.address + */ + public static final org.jooq.examples.mysql.sakila.tables.Address ADDRESS = new org.jooq.examples.mysql.sakila.tables.Address(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.examples.mysql.sakila.tables.records.AddressRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final org.jooq.TableField ADDRESS_ID = createField("address_id", org.jooq.impl.SQLDataType.SMALLINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField ADDRESS_ = createField("address", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField ADDRESS2 = createField("address2", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField DISTRICT = createField("district", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_address_city
+	 * FOREIGN KEY (city_id)
+	 * REFERENCES sakila.city (city_id)
+	 * 
+ */ + public final org.jooq.TableField CITY_ID = createField("city_id", org.jooq.impl.SQLDataType.SMALLINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField POSTAL_CODE = createField("postal_code", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField PHONE = createField("phone", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField LAST_UPDATE = createField("last_update", org.jooq.impl.SQLDataType.TIMESTAMP, this); + + public Address() { + super("address", org.jooq.examples.mysql.sakila.Sakila.SAKILA); + } + + public Address(java.lang.String alias) { + super(alias, org.jooq.examples.mysql.sakila.Sakila.SAKILA, org.jooq.examples.mysql.sakila.tables.Address.ADDRESS); + } + + @Override + public org.jooq.Identity getIdentity() { + return org.jooq.examples.mysql.sakila.Keys.IDENTITY_ADDRESS; + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.examples.mysql.sakila.Keys.KEY_ADDRESS_PRIMARY; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.examples.mysql.sakila.Keys.KEY_ADDRESS_PRIMARY); + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getReferences() { + return java.util.Arrays.>asList(org.jooq.examples.mysql.sakila.Keys.FK_ADDRESS_CITY); + } + + @Override + public org.jooq.examples.mysql.sakila.tables.Address as(java.lang.String alias) { + return new org.jooq.examples.mysql.sakila.tables.Address(alias); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/mysql/sakila/tables/Category.java b/jOOQ-test/examples/org/jooq/examples/mysql/sakila/tables/Category.java new file mode 100644 index 00000000000..912615b78be --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/mysql/sakila/tables/Category.java @@ -0,0 +1,76 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.mysql.sakila.tables; + +/** + * This class is generated by jOOQ. + */ +public class Category extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = -1434237078; + + /** + * The singleton instance of sakila.category + */ + public static final org.jooq.examples.mysql.sakila.tables.Category CATEGORY = new org.jooq.examples.mysql.sakila.tables.Category(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.examples.mysql.sakila.tables.records.CategoryRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final org.jooq.TableField CATEGORY_ID = createField("category_id", org.jooq.impl.SQLDataType.TINYINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField NAME = createField("name", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField LAST_UPDATE = createField("last_update", org.jooq.impl.SQLDataType.TIMESTAMP, this); + + public Category() { + super("category", org.jooq.examples.mysql.sakila.Sakila.SAKILA); + } + + public Category(java.lang.String alias) { + super(alias, org.jooq.examples.mysql.sakila.Sakila.SAKILA, org.jooq.examples.mysql.sakila.tables.Category.CATEGORY); + } + + @Override + public org.jooq.Identity getIdentity() { + return org.jooq.examples.mysql.sakila.Keys.IDENTITY_CATEGORY; + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.examples.mysql.sakila.Keys.KEY_CATEGORY_PRIMARY; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.examples.mysql.sakila.Keys.KEY_CATEGORY_PRIMARY); + } + + @Override + public org.jooq.examples.mysql.sakila.tables.Category as(java.lang.String alias) { + return new org.jooq.examples.mysql.sakila.tables.Category(alias); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/mysql/sakila/tables/City.java b/jOOQ-test/examples/org/jooq/examples/mysql/sakila/tables/City.java new file mode 100644 index 00000000000..7be095ebbc6 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/mysql/sakila/tables/City.java @@ -0,0 +1,93 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.mysql.sakila.tables; + +/** + * This class is generated by jOOQ. + */ +public class City extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = -729325672; + + /** + * The singleton instance of sakila.city + */ + public static final org.jooq.examples.mysql.sakila.tables.City CITY = new org.jooq.examples.mysql.sakila.tables.City(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.examples.mysql.sakila.tables.records.CityRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final org.jooq.TableField CITY_ID = createField("city_id", org.jooq.impl.SQLDataType.SMALLINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField CITY_ = createField("city", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_city_country
+	 * FOREIGN KEY (country_id)
+	 * REFERENCES sakila.country (country_id)
+	 * 
+ */ + public final org.jooq.TableField COUNTRY_ID = createField("country_id", org.jooq.impl.SQLDataType.SMALLINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField LAST_UPDATE = createField("last_update", org.jooq.impl.SQLDataType.TIMESTAMP, this); + + public City() { + super("city", org.jooq.examples.mysql.sakila.Sakila.SAKILA); + } + + public City(java.lang.String alias) { + super(alias, org.jooq.examples.mysql.sakila.Sakila.SAKILA, org.jooq.examples.mysql.sakila.tables.City.CITY); + } + + @Override + public org.jooq.Identity getIdentity() { + return org.jooq.examples.mysql.sakila.Keys.IDENTITY_CITY; + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.examples.mysql.sakila.Keys.KEY_CITY_PRIMARY; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.examples.mysql.sakila.Keys.KEY_CITY_PRIMARY); + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getReferences() { + return java.util.Arrays.>asList(org.jooq.examples.mysql.sakila.Keys.FK_CITY_COUNTRY); + } + + @Override + public org.jooq.examples.mysql.sakila.tables.City as(java.lang.String alias) { + return new org.jooq.examples.mysql.sakila.tables.City(alias); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/mysql/sakila/tables/Country.java b/jOOQ-test/examples/org/jooq/examples/mysql/sakila/tables/Country.java new file mode 100644 index 00000000000..af69c4311af --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/mysql/sakila/tables/Country.java @@ -0,0 +1,76 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.mysql.sakila.tables; + +/** + * This class is generated by jOOQ. + */ +public class Country extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = 1809855872; + + /** + * The singleton instance of sakila.country + */ + public static final org.jooq.examples.mysql.sakila.tables.Country COUNTRY = new org.jooq.examples.mysql.sakila.tables.Country(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.examples.mysql.sakila.tables.records.CountryRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final org.jooq.TableField COUNTRY_ID = createField("country_id", org.jooq.impl.SQLDataType.SMALLINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField COUNTRY_ = createField("country", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField LAST_UPDATE = createField("last_update", org.jooq.impl.SQLDataType.TIMESTAMP, this); + + public Country() { + super("country", org.jooq.examples.mysql.sakila.Sakila.SAKILA); + } + + public Country(java.lang.String alias) { + super(alias, org.jooq.examples.mysql.sakila.Sakila.SAKILA, org.jooq.examples.mysql.sakila.tables.Country.COUNTRY); + } + + @Override + public org.jooq.Identity getIdentity() { + return org.jooq.examples.mysql.sakila.Keys.IDENTITY_COUNTRY; + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.examples.mysql.sakila.Keys.KEY_COUNTRY_PRIMARY; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.examples.mysql.sakila.Keys.KEY_COUNTRY_PRIMARY); + } + + @Override + public org.jooq.examples.mysql.sakila.tables.Country as(java.lang.String alias) { + return new org.jooq.examples.mysql.sakila.tables.Country(alias); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/mysql/sakila/tables/Customer.java b/jOOQ-test/examples/org/jooq/examples/mysql/sakila/tables/Customer.java new file mode 100644 index 00000000000..b38fc472df8 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/mysql/sakila/tables/Customer.java @@ -0,0 +1,124 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.mysql.sakila.tables; + +/** + * This class is generated by jOOQ. + */ +public class Customer extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = -1543191101; + + /** + * The singleton instance of sakila.customer + */ + public static final org.jooq.examples.mysql.sakila.tables.Customer CUSTOMER = new org.jooq.examples.mysql.sakila.tables.Customer(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.examples.mysql.sakila.tables.records.CustomerRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final org.jooq.TableField CUSTOMER_ID = createField("customer_id", org.jooq.impl.SQLDataType.SMALLINT, this); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_customer_store
+	 * FOREIGN KEY (store_id)
+	 * REFERENCES sakila.store (store_id)
+	 * 
+ */ + public final org.jooq.TableField STORE_ID = createField("store_id", org.jooq.impl.SQLDataType.TINYINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField FIRST_NAME = createField("first_name", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField LAST_NAME = createField("last_name", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField EMAIL = createField("email", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_customer_address
+	 * FOREIGN KEY (address_id)
+	 * REFERENCES sakila.address (address_id)
+	 * 
+ */ + public final org.jooq.TableField ADDRESS_ID = createField("address_id", org.jooq.impl.SQLDataType.SMALLINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField ACTIVE = createField("active", org.jooq.impl.SQLDataType.TINYINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField CREATE_DATE = createField("create_date", org.jooq.impl.SQLDataType.TIMESTAMP, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField LAST_UPDATE = createField("last_update", org.jooq.impl.SQLDataType.TIMESTAMP, this); + + public Customer() { + super("customer", org.jooq.examples.mysql.sakila.Sakila.SAKILA); + } + + public Customer(java.lang.String alias) { + super(alias, org.jooq.examples.mysql.sakila.Sakila.SAKILA, org.jooq.examples.mysql.sakila.tables.Customer.CUSTOMER); + } + + @Override + public org.jooq.Identity getIdentity() { + return org.jooq.examples.mysql.sakila.Keys.IDENTITY_CUSTOMER; + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.examples.mysql.sakila.Keys.KEY_CUSTOMER_PRIMARY; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.examples.mysql.sakila.Keys.KEY_CUSTOMER_PRIMARY); + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getReferences() { + return java.util.Arrays.>asList(org.jooq.examples.mysql.sakila.Keys.FK_CUSTOMER_STORE, org.jooq.examples.mysql.sakila.Keys.FK_CUSTOMER_ADDRESS); + } + + @Override + public org.jooq.examples.mysql.sakila.tables.Customer as(java.lang.String alias) { + return new org.jooq.examples.mysql.sakila.tables.Customer(alias); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/mysql/sakila/tables/CustomerList.java b/jOOQ-test/examples/org/jooq/examples/mysql/sakila/tables/CustomerList.java new file mode 100644 index 00000000000..2ad0394ec2d --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/mysql/sakila/tables/CustomerList.java @@ -0,0 +1,90 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.mysql.sakila.tables; + +/** + * This class is generated by jOOQ. + * + * VIEW + */ +public class CustomerList extends org.jooq.impl.TableImpl { + + private static final long serialVersionUID = 444395832; + + /** + * The singleton instance of sakila.customer_list + */ + public static final org.jooq.examples.mysql.sakila.tables.CustomerList CUSTOMER_LIST = new org.jooq.examples.mysql.sakila.tables.CustomerList(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.examples.mysql.sakila.tables.records.CustomerListRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + */ + public final org.jooq.TableField ID = createField("ID", org.jooq.impl.SQLDataType.SMALLINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField NAME = createField("name", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField ADDRESS = createField("address", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField ZIP_CODE = createField("zip code", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField PHONE = createField("phone", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField CITY = createField("city", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField COUNTRY = createField("country", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField NOTES = createField("notes", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField SID = createField("SID", org.jooq.impl.SQLDataType.TINYINT, this); + + public CustomerList() { + super("customer_list", org.jooq.examples.mysql.sakila.Sakila.SAKILA); + } + + public CustomerList(java.lang.String alias) { + super(alias, org.jooq.examples.mysql.sakila.Sakila.SAKILA, org.jooq.examples.mysql.sakila.tables.CustomerList.CUSTOMER_LIST); + } + + @Override + public org.jooq.examples.mysql.sakila.tables.CustomerList as(java.lang.String alias) { + return new org.jooq.examples.mysql.sakila.tables.CustomerList(alias); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/mysql/sakila/tables/Film.java b/jOOQ-test/examples/org/jooq/examples/mysql/sakila/tables/Film.java new file mode 100644 index 00000000000..0be080990ca --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/mysql/sakila/tables/Film.java @@ -0,0 +1,144 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.mysql.sakila.tables; + +/** + * This class is generated by jOOQ. + */ +public class Film extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = 230130937; + + /** + * The singleton instance of sakila.film + */ + public static final org.jooq.examples.mysql.sakila.tables.Film FILM = new org.jooq.examples.mysql.sakila.tables.Film(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.examples.mysql.sakila.tables.records.FilmRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final org.jooq.TableField FILM_ID = createField("film_id", org.jooq.impl.SQLDataType.SMALLINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField TITLE = createField("title", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField DESCRIPTION = createField("description", org.jooq.impl.SQLDataType.CLOB, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField RELEASE_YEAR = createField("release_year", org.jooq.impl.SQLDataType.DATE, this); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_film_language
+	 * FOREIGN KEY (language_id)
+	 * REFERENCES sakila.language (language_id)
+	 * 
+ */ + public final org.jooq.TableField LANGUAGE_ID = createField("language_id", org.jooq.impl.SQLDataType.TINYINT, this); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_film_language_original
+	 * FOREIGN KEY (original_language_id)
+	 * REFERENCES sakila.language (language_id)
+	 * 
+ */ + public final org.jooq.TableField ORIGINAL_LANGUAGE_ID = createField("original_language_id", org.jooq.impl.SQLDataType.TINYINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField RENTAL_DURATION = createField("rental_duration", org.jooq.impl.SQLDataType.TINYINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField RENTAL_RATE = createField("rental_rate", org.jooq.impl.SQLDataType.DECIMAL, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField LENGTH = createField("length", org.jooq.impl.SQLDataType.SMALLINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField REPLACEMENT_COST = createField("replacement_cost", org.jooq.impl.SQLDataType.DECIMAL, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField RATING = createField("rating", org.jooq.util.mysql.MySQLDataType.VARCHAR.asEnumDataType(org.jooq.examples.mysql.sakila.enums.FilmRating.class), this); + + /** + * An uncommented item + */ + public final org.jooq.TableField SPECIAL_FEATURES = createField("special_features", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField LAST_UPDATE = createField("last_update", org.jooq.impl.SQLDataType.TIMESTAMP, this); + + public Film() { + super("film", org.jooq.examples.mysql.sakila.Sakila.SAKILA); + } + + public Film(java.lang.String alias) { + super(alias, org.jooq.examples.mysql.sakila.Sakila.SAKILA, org.jooq.examples.mysql.sakila.tables.Film.FILM); + } + + @Override + public org.jooq.Identity getIdentity() { + return org.jooq.examples.mysql.sakila.Keys.IDENTITY_FILM; + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.examples.mysql.sakila.Keys.KEY_FILM_PRIMARY; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.examples.mysql.sakila.Keys.KEY_FILM_PRIMARY); + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getReferences() { + return java.util.Arrays.>asList(org.jooq.examples.mysql.sakila.Keys.FK_FILM_LANGUAGE, org.jooq.examples.mysql.sakila.Keys.FK_FILM_LANGUAGE_ORIGINAL); + } + + @Override + public org.jooq.examples.mysql.sakila.tables.Film as(java.lang.String alias) { + return new org.jooq.examples.mysql.sakila.tables.Film(alias); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/mysql/sakila/tables/FilmActor.java b/jOOQ-test/examples/org/jooq/examples/mysql/sakila/tables/FilmActor.java new file mode 100644 index 00000000000..45c536fde49 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/mysql/sakila/tables/FilmActor.java @@ -0,0 +1,91 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.mysql.sakila.tables; + +/** + * This class is generated by jOOQ. + */ +public class FilmActor extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = -147561384; + + /** + * The singleton instance of sakila.film_actor + */ + public static final org.jooq.examples.mysql.sakila.tables.FilmActor FILM_ACTOR = new org.jooq.examples.mysql.sakila.tables.FilmActor(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.examples.mysql.sakila.tables.records.FilmActorRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT fk_film_actor_actor
+	 * FOREIGN KEY (actor_id)
+	 * REFERENCES sakila.actor (actor_id)
+	 * 
+ */ + public final org.jooq.TableField ACTOR_ID = createField("actor_id", org.jooq.impl.SQLDataType.SMALLINT, this); + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT fk_film_actor_film
+	 * FOREIGN KEY (film_id)
+	 * REFERENCES sakila.film (film_id)
+	 * 
+ */ + public final org.jooq.TableField FILM_ID = createField("film_id", org.jooq.impl.SQLDataType.SMALLINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField LAST_UPDATE = createField("last_update", org.jooq.impl.SQLDataType.TIMESTAMP, this); + + public FilmActor() { + super("film_actor", org.jooq.examples.mysql.sakila.Sakila.SAKILA); + } + + public FilmActor(java.lang.String alias) { + super(alias, org.jooq.examples.mysql.sakila.Sakila.SAKILA, org.jooq.examples.mysql.sakila.tables.FilmActor.FILM_ACTOR); + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.examples.mysql.sakila.Keys.KEY_FILM_ACTOR_PRIMARY; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.examples.mysql.sakila.Keys.KEY_FILM_ACTOR_PRIMARY); + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getReferences() { + return java.util.Arrays.>asList(org.jooq.examples.mysql.sakila.Keys.FK_FILM_ACTOR_ACTOR, org.jooq.examples.mysql.sakila.Keys.FK_FILM_ACTOR_FILM); + } + + @Override + public org.jooq.examples.mysql.sakila.tables.FilmActor as(java.lang.String alias) { + return new org.jooq.examples.mysql.sakila.tables.FilmActor(alias); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/mysql/sakila/tables/FilmCategory.java b/jOOQ-test/examples/org/jooq/examples/mysql/sakila/tables/FilmCategory.java new file mode 100644 index 00000000000..e7854680952 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/mysql/sakila/tables/FilmCategory.java @@ -0,0 +1,91 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.mysql.sakila.tables; + +/** + * This class is generated by jOOQ. + */ +public class FilmCategory extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = -488560820; + + /** + * The singleton instance of sakila.film_category + */ + public static final org.jooq.examples.mysql.sakila.tables.FilmCategory FILM_CATEGORY = new org.jooq.examples.mysql.sakila.tables.FilmCategory(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.examples.mysql.sakila.tables.records.FilmCategoryRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT fk_film_category_film
+	 * FOREIGN KEY (film_id)
+	 * REFERENCES sakila.film (film_id)
+	 * 
+ */ + public final org.jooq.TableField FILM_ID = createField("film_id", org.jooq.impl.SQLDataType.SMALLINT, this); + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT fk_film_category_category
+	 * FOREIGN KEY (category_id)
+	 * REFERENCES sakila.category (category_id)
+	 * 
+ */ + public final org.jooq.TableField CATEGORY_ID = createField("category_id", org.jooq.impl.SQLDataType.TINYINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField LAST_UPDATE = createField("last_update", org.jooq.impl.SQLDataType.TIMESTAMP, this); + + public FilmCategory() { + super("film_category", org.jooq.examples.mysql.sakila.Sakila.SAKILA); + } + + public FilmCategory(java.lang.String alias) { + super(alias, org.jooq.examples.mysql.sakila.Sakila.SAKILA, org.jooq.examples.mysql.sakila.tables.FilmCategory.FILM_CATEGORY); + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.examples.mysql.sakila.Keys.KEY_FILM_CATEGORY_PRIMARY; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.examples.mysql.sakila.Keys.KEY_FILM_CATEGORY_PRIMARY); + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getReferences() { + return java.util.Arrays.>asList(org.jooq.examples.mysql.sakila.Keys.FK_FILM_CATEGORY_FILM, org.jooq.examples.mysql.sakila.Keys.FK_FILM_CATEGORY_CATEGORY); + } + + @Override + public org.jooq.examples.mysql.sakila.tables.FilmCategory as(java.lang.String alias) { + return new org.jooq.examples.mysql.sakila.tables.FilmCategory(alias); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/mysql/sakila/tables/FilmList.java b/jOOQ-test/examples/org/jooq/examples/mysql/sakila/tables/FilmList.java new file mode 100644 index 00000000000..8da84365fbf --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/mysql/sakila/tables/FilmList.java @@ -0,0 +1,85 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.mysql.sakila.tables; + +/** + * This class is generated by jOOQ. + * + * VIEW + */ +public class FilmList extends org.jooq.impl.TableImpl { + + private static final long serialVersionUID = -179046730; + + /** + * The singleton instance of sakila.film_list + */ + public static final org.jooq.examples.mysql.sakila.tables.FilmList FILM_LIST = new org.jooq.examples.mysql.sakila.tables.FilmList(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.examples.mysql.sakila.tables.records.FilmListRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + */ + public final org.jooq.TableField FID = createField("FID", org.jooq.impl.SQLDataType.SMALLINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField TITLE = createField("title", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField DESCRIPTION = createField("description", org.jooq.impl.SQLDataType.CLOB, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField CATEGORY = createField("category", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField PRICE = createField("price", org.jooq.impl.SQLDataType.DECIMAL, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField LENGTH = createField("length", org.jooq.impl.SQLDataType.SMALLINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField RATING = createField("rating", org.jooq.util.mysql.MySQLDataType.VARCHAR.asEnumDataType(org.jooq.examples.mysql.sakila.enums.FilmListRating.class), this); + + /** + * An uncommented item + */ + public final org.jooq.TableField ACTORS = createField("actors", org.jooq.impl.SQLDataType.VARCHAR, this); + + public FilmList() { + super("film_list", org.jooq.examples.mysql.sakila.Sakila.SAKILA); + } + + public FilmList(java.lang.String alias) { + super(alias, org.jooq.examples.mysql.sakila.Sakila.SAKILA, org.jooq.examples.mysql.sakila.tables.FilmList.FILM_LIST); + } + + @Override + public org.jooq.examples.mysql.sakila.tables.FilmList as(java.lang.String alias) { + return new org.jooq.examples.mysql.sakila.tables.FilmList(alias); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/mysql/sakila/tables/FilmText.java b/jOOQ-test/examples/org/jooq/examples/mysql/sakila/tables/FilmText.java new file mode 100644 index 00000000000..202d0b66266 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/mysql/sakila/tables/FilmText.java @@ -0,0 +1,71 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.mysql.sakila.tables; + +/** + * This class is generated by jOOQ. + */ +public class FilmText extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = 2068183970; + + /** + * The singleton instance of sakila.film_text + */ + public static final org.jooq.examples.mysql.sakila.tables.FilmText FILM_TEXT = new org.jooq.examples.mysql.sakila.tables.FilmText(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.examples.mysql.sakila.tables.records.FilmTextRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final org.jooq.TableField FILM_ID = createField("film_id", org.jooq.impl.SQLDataType.SMALLINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField TITLE = createField("title", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField DESCRIPTION = createField("description", org.jooq.impl.SQLDataType.CLOB, this); + + public FilmText() { + super("film_text", org.jooq.examples.mysql.sakila.Sakila.SAKILA); + } + + public FilmText(java.lang.String alias) { + super(alias, org.jooq.examples.mysql.sakila.Sakila.SAKILA, org.jooq.examples.mysql.sakila.tables.FilmText.FILM_TEXT); + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.examples.mysql.sakila.Keys.KEY_FILM_TEXT_PRIMARY; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.examples.mysql.sakila.Keys.KEY_FILM_TEXT_PRIMARY); + } + + @Override + public org.jooq.examples.mysql.sakila.tables.FilmText as(java.lang.String alias) { + return new org.jooq.examples.mysql.sakila.tables.FilmText(alias); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/mysql/sakila/tables/Inventory.java b/jOOQ-test/examples/org/jooq/examples/mysql/sakila/tables/Inventory.java new file mode 100644 index 00000000000..5b3f2e857c5 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/mysql/sakila/tables/Inventory.java @@ -0,0 +1,99 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.mysql.sakila.tables; + +/** + * This class is generated by jOOQ. + */ +public class Inventory extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = 868929398; + + /** + * The singleton instance of sakila.inventory + */ + public static final org.jooq.examples.mysql.sakila.tables.Inventory INVENTORY = new org.jooq.examples.mysql.sakila.tables.Inventory(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.examples.mysql.sakila.tables.records.InventoryRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final org.jooq.TableField INVENTORY_ID = createField("inventory_id", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_inventory_film
+	 * FOREIGN KEY (film_id)
+	 * REFERENCES sakila.film (film_id)
+	 * 
+ */ + public final org.jooq.TableField FILM_ID = createField("film_id", org.jooq.impl.SQLDataType.SMALLINT, this); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_inventory_store
+	 * FOREIGN KEY (store_id)
+	 * REFERENCES sakila.store (store_id)
+	 * 
+ */ + public final org.jooq.TableField STORE_ID = createField("store_id", org.jooq.impl.SQLDataType.TINYINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField LAST_UPDATE = createField("last_update", org.jooq.impl.SQLDataType.TIMESTAMP, this); + + public Inventory() { + super("inventory", org.jooq.examples.mysql.sakila.Sakila.SAKILA); + } + + public Inventory(java.lang.String alias) { + super(alias, org.jooq.examples.mysql.sakila.Sakila.SAKILA, org.jooq.examples.mysql.sakila.tables.Inventory.INVENTORY); + } + + @Override + public org.jooq.Identity getIdentity() { + return org.jooq.examples.mysql.sakila.Keys.IDENTITY_INVENTORY; + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.examples.mysql.sakila.Keys.KEY_INVENTORY_PRIMARY; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.examples.mysql.sakila.Keys.KEY_INVENTORY_PRIMARY); + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getReferences() { + return java.util.Arrays.>asList(org.jooq.examples.mysql.sakila.Keys.FK_INVENTORY_FILM, org.jooq.examples.mysql.sakila.Keys.FK_INVENTORY_STORE); + } + + @Override + public org.jooq.examples.mysql.sakila.tables.Inventory as(java.lang.String alias) { + return new org.jooq.examples.mysql.sakila.tables.Inventory(alias); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/mysql/sakila/tables/Language.java b/jOOQ-test/examples/org/jooq/examples/mysql/sakila/tables/Language.java new file mode 100644 index 00000000000..20198f9b5e3 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/mysql/sakila/tables/Language.java @@ -0,0 +1,76 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.mysql.sakila.tables; + +/** + * This class is generated by jOOQ. + */ +public class Language extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = -442884227; + + /** + * The singleton instance of sakila.language + */ + public static final org.jooq.examples.mysql.sakila.tables.Language LANGUAGE = new org.jooq.examples.mysql.sakila.tables.Language(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.examples.mysql.sakila.tables.records.LanguageRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final org.jooq.TableField LANGUAGE_ID = createField("language_id", org.jooq.impl.SQLDataType.TINYINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField NAME = createField("name", org.jooq.impl.SQLDataType.CHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField LAST_UPDATE = createField("last_update", org.jooq.impl.SQLDataType.TIMESTAMP, this); + + public Language() { + super("language", org.jooq.examples.mysql.sakila.Sakila.SAKILA); + } + + public Language(java.lang.String alias) { + super(alias, org.jooq.examples.mysql.sakila.Sakila.SAKILA, org.jooq.examples.mysql.sakila.tables.Language.LANGUAGE); + } + + @Override + public org.jooq.Identity getIdentity() { + return org.jooq.examples.mysql.sakila.Keys.IDENTITY_LANGUAGE; + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.examples.mysql.sakila.Keys.KEY_LANGUAGE_PRIMARY; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.examples.mysql.sakila.Keys.KEY_LANGUAGE_PRIMARY); + } + + @Override + public org.jooq.examples.mysql.sakila.tables.Language as(java.lang.String alias) { + return new org.jooq.examples.mysql.sakila.tables.Language(alias); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/mysql/sakila/tables/NicerButSlowerFilmList.java b/jOOQ-test/examples/org/jooq/examples/mysql/sakila/tables/NicerButSlowerFilmList.java new file mode 100644 index 00000000000..dd2f236bb17 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/mysql/sakila/tables/NicerButSlowerFilmList.java @@ -0,0 +1,85 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.mysql.sakila.tables; + +/** + * This class is generated by jOOQ. + * + * VIEW + */ +public class NicerButSlowerFilmList extends org.jooq.impl.TableImpl { + + private static final long serialVersionUID = 1580479804; + + /** + * The singleton instance of sakila.nicer_but_slower_film_list + */ + public static final org.jooq.examples.mysql.sakila.tables.NicerButSlowerFilmList NICER_BUT_SLOWER_FILM_LIST = new org.jooq.examples.mysql.sakila.tables.NicerButSlowerFilmList(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.examples.mysql.sakila.tables.records.NicerButSlowerFilmListRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + */ + public final org.jooq.TableField FID = createField("FID", org.jooq.impl.SQLDataType.SMALLINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField TITLE = createField("title", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField DESCRIPTION = createField("description", org.jooq.impl.SQLDataType.CLOB, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField CATEGORY = createField("category", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField PRICE = createField("price", org.jooq.impl.SQLDataType.DECIMAL, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField LENGTH = createField("length", org.jooq.impl.SQLDataType.SMALLINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField RATING = createField("rating", org.jooq.util.mysql.MySQLDataType.VARCHAR.asEnumDataType(org.jooq.examples.mysql.sakila.enums.NicerButSlowerFilmListRating.class), this); + + /** + * An uncommented item + */ + public final org.jooq.TableField ACTORS = createField("actors", org.jooq.impl.SQLDataType.VARCHAR, this); + + public NicerButSlowerFilmList() { + super("nicer_but_slower_film_list", org.jooq.examples.mysql.sakila.Sakila.SAKILA); + } + + public NicerButSlowerFilmList(java.lang.String alias) { + super(alias, org.jooq.examples.mysql.sakila.Sakila.SAKILA, org.jooq.examples.mysql.sakila.tables.NicerButSlowerFilmList.NICER_BUT_SLOWER_FILM_LIST); + } + + @Override + public org.jooq.examples.mysql.sakila.tables.NicerButSlowerFilmList as(java.lang.String alias) { + return new org.jooq.examples.mysql.sakila.tables.NicerButSlowerFilmList(alias); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/mysql/sakila/tables/Payment.java b/jOOQ-test/examples/org/jooq/examples/mysql/sakila/tables/Payment.java new file mode 100644 index 00000000000..ed4f668c660 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/mysql/sakila/tables/Payment.java @@ -0,0 +1,120 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.mysql.sakila.tables; + +/** + * This class is generated by jOOQ. + */ +public class Payment extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = 1934089629; + + /** + * The singleton instance of sakila.payment + */ + public static final org.jooq.examples.mysql.sakila.tables.Payment PAYMENT = new org.jooq.examples.mysql.sakila.tables.Payment(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.examples.mysql.sakila.tables.records.PaymentRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final org.jooq.TableField PAYMENT_ID = createField("payment_id", org.jooq.impl.SQLDataType.SMALLINT, this); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_payment_customer
+	 * FOREIGN KEY (customer_id)
+	 * REFERENCES sakila.customer (customer_id)
+	 * 
+ */ + public final org.jooq.TableField CUSTOMER_ID = createField("customer_id", org.jooq.impl.SQLDataType.SMALLINT, this); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_payment_staff
+	 * FOREIGN KEY (staff_id)
+	 * REFERENCES sakila.staff (staff_id)
+	 * 
+ */ + public final org.jooq.TableField STAFF_ID = createField("staff_id", org.jooq.impl.SQLDataType.TINYINT, this); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_payment_rental
+	 * FOREIGN KEY (rental_id)
+	 * REFERENCES sakila.rental (rental_id)
+	 * 
+ */ + public final org.jooq.TableField RENTAL_ID = createField("rental_id", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField AMOUNT = createField("amount", org.jooq.impl.SQLDataType.DECIMAL, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField PAYMENT_DATE = createField("payment_date", org.jooq.impl.SQLDataType.TIMESTAMP, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField LAST_UPDATE = createField("last_update", org.jooq.impl.SQLDataType.TIMESTAMP, this); + + public Payment() { + super("payment", org.jooq.examples.mysql.sakila.Sakila.SAKILA); + } + + public Payment(java.lang.String alias) { + super(alias, org.jooq.examples.mysql.sakila.Sakila.SAKILA, org.jooq.examples.mysql.sakila.tables.Payment.PAYMENT); + } + + @Override + public org.jooq.Identity getIdentity() { + return org.jooq.examples.mysql.sakila.Keys.IDENTITY_PAYMENT; + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.examples.mysql.sakila.Keys.KEY_PAYMENT_PRIMARY; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.examples.mysql.sakila.Keys.KEY_PAYMENT_PRIMARY); + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getReferences() { + return java.util.Arrays.>asList(org.jooq.examples.mysql.sakila.Keys.FK_PAYMENT_CUSTOMER, org.jooq.examples.mysql.sakila.Keys.FK_PAYMENT_STAFF, org.jooq.examples.mysql.sakila.Keys.FK_PAYMENT_RENTAL); + } + + @Override + public org.jooq.examples.mysql.sakila.tables.Payment as(java.lang.String alias) { + return new org.jooq.examples.mysql.sakila.tables.Payment(alias); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/mysql/sakila/tables/Rental.java b/jOOQ-test/examples/org/jooq/examples/mysql/sakila/tables/Rental.java new file mode 100644 index 00000000000..f312ed15644 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/mysql/sakila/tables/Rental.java @@ -0,0 +1,120 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.mysql.sakila.tables; + +/** + * This class is generated by jOOQ. + */ +public class Rental extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = -458988826; + + /** + * The singleton instance of sakila.rental + */ + public static final org.jooq.examples.mysql.sakila.tables.Rental RENTAL = new org.jooq.examples.mysql.sakila.tables.Rental(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.examples.mysql.sakila.tables.records.RentalRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final org.jooq.TableField RENTAL_ID = createField("rental_id", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField RENTAL_DATE = createField("rental_date", org.jooq.impl.SQLDataType.TIMESTAMP, this); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_rental_inventory
+	 * FOREIGN KEY (inventory_id)
+	 * REFERENCES sakila.inventory (inventory_id)
+	 * 
+ */ + public final org.jooq.TableField INVENTORY_ID = createField("inventory_id", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_rental_customer
+	 * FOREIGN KEY (customer_id)
+	 * REFERENCES sakila.customer (customer_id)
+	 * 
+ */ + public final org.jooq.TableField CUSTOMER_ID = createField("customer_id", org.jooq.impl.SQLDataType.SMALLINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField RETURN_DATE = createField("return_date", org.jooq.impl.SQLDataType.TIMESTAMP, this); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_rental_staff
+	 * FOREIGN KEY (staff_id)
+	 * REFERENCES sakila.staff (staff_id)
+	 * 
+ */ + public final org.jooq.TableField STAFF_ID = createField("staff_id", org.jooq.impl.SQLDataType.TINYINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField LAST_UPDATE = createField("last_update", org.jooq.impl.SQLDataType.TIMESTAMP, this); + + public Rental() { + super("rental", org.jooq.examples.mysql.sakila.Sakila.SAKILA); + } + + public Rental(java.lang.String alias) { + super(alias, org.jooq.examples.mysql.sakila.Sakila.SAKILA, org.jooq.examples.mysql.sakila.tables.Rental.RENTAL); + } + + @Override + public org.jooq.Identity getIdentity() { + return org.jooq.examples.mysql.sakila.Keys.IDENTITY_RENTAL; + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.examples.mysql.sakila.Keys.KEY_RENTAL_PRIMARY; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.examples.mysql.sakila.Keys.KEY_RENTAL_PRIMARY, org.jooq.examples.mysql.sakila.Keys.KEY_RENTAL_RENTAL_DATE); + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getReferences() { + return java.util.Arrays.>asList(org.jooq.examples.mysql.sakila.Keys.FK_RENTAL_INVENTORY, org.jooq.examples.mysql.sakila.Keys.FK_RENTAL_CUSTOMER, org.jooq.examples.mysql.sakila.Keys.FK_RENTAL_STAFF); + } + + @Override + public org.jooq.examples.mysql.sakila.tables.Rental as(java.lang.String alias) { + return new org.jooq.examples.mysql.sakila.tables.Rental(alias); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/mysql/sakila/tables/SalesByFilmCategory.java b/jOOQ-test/examples/org/jooq/examples/mysql/sakila/tables/SalesByFilmCategory.java new file mode 100644 index 00000000000..82d6671fbed --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/mysql/sakila/tables/SalesByFilmCategory.java @@ -0,0 +1,55 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.mysql.sakila.tables; + +/** + * This class is generated by jOOQ. + * + * VIEW + */ +public class SalesByFilmCategory extends org.jooq.impl.TableImpl { + + private static final long serialVersionUID = 1034750250; + + /** + * The singleton instance of sakila.sales_by_film_category + */ + public static final org.jooq.examples.mysql.sakila.tables.SalesByFilmCategory SALES_BY_FILM_CATEGORY = new org.jooq.examples.mysql.sakila.tables.SalesByFilmCategory(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.examples.mysql.sakila.tables.records.SalesByFilmCategoryRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + */ + public final org.jooq.TableField CATEGORY = createField("category", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField TOTAL_SALES = createField("total_sales", org.jooq.impl.SQLDataType.DECIMAL, this); + + public SalesByFilmCategory() { + super("sales_by_film_category", org.jooq.examples.mysql.sakila.Sakila.SAKILA); + } + + public SalesByFilmCategory(java.lang.String alias) { + super(alias, org.jooq.examples.mysql.sakila.Sakila.SAKILA, org.jooq.examples.mysql.sakila.tables.SalesByFilmCategory.SALES_BY_FILM_CATEGORY); + } + + @Override + public org.jooq.examples.mysql.sakila.tables.SalesByFilmCategory as(java.lang.String alias) { + return new org.jooq.examples.mysql.sakila.tables.SalesByFilmCategory(alias); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/mysql/sakila/tables/SalesByStore.java b/jOOQ-test/examples/org/jooq/examples/mysql/sakila/tables/SalesByStore.java new file mode 100644 index 00000000000..628e51db938 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/mysql/sakila/tables/SalesByStore.java @@ -0,0 +1,60 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.mysql.sakila.tables; + +/** + * This class is generated by jOOQ. + * + * VIEW + */ +public class SalesByStore extends org.jooq.impl.TableImpl { + + private static final long serialVersionUID = 2040027130; + + /** + * The singleton instance of sakila.sales_by_store + */ + public static final org.jooq.examples.mysql.sakila.tables.SalesByStore SALES_BY_STORE = new org.jooq.examples.mysql.sakila.tables.SalesByStore(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.examples.mysql.sakila.tables.records.SalesByStoreRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + */ + public final org.jooq.TableField STORE = createField("store", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField MANAGER = createField("manager", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField TOTAL_SALES = createField("total_sales", org.jooq.impl.SQLDataType.DECIMAL, this); + + public SalesByStore() { + super("sales_by_store", org.jooq.examples.mysql.sakila.Sakila.SAKILA); + } + + public SalesByStore(java.lang.String alias) { + super(alias, org.jooq.examples.mysql.sakila.Sakila.SAKILA, org.jooq.examples.mysql.sakila.tables.SalesByStore.SALES_BY_STORE); + } + + @Override + public org.jooq.examples.mysql.sakila.tables.SalesByStore as(java.lang.String alias) { + return new org.jooq.examples.mysql.sakila.tables.SalesByStore(alias); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/mysql/sakila/tables/Staff.java b/jOOQ-test/examples/org/jooq/examples/mysql/sakila/tables/Staff.java new file mode 100644 index 00000000000..f89aa92f80a --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/mysql/sakila/tables/Staff.java @@ -0,0 +1,134 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.mysql.sakila.tables; + +/** + * This class is generated by jOOQ. + */ +public class Staff extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = -1904086115; + + /** + * The singleton instance of sakila.staff + */ + public static final org.jooq.examples.mysql.sakila.tables.Staff STAFF = new org.jooq.examples.mysql.sakila.tables.Staff(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.examples.mysql.sakila.tables.records.StaffRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final org.jooq.TableField STAFF_ID = createField("staff_id", org.jooq.impl.SQLDataType.TINYINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField FIRST_NAME = createField("first_name", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField LAST_NAME = createField("last_name", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_staff_address
+	 * FOREIGN KEY (address_id)
+	 * REFERENCES sakila.address (address_id)
+	 * 
+ */ + public final org.jooq.TableField ADDRESS_ID = createField("address_id", org.jooq.impl.SQLDataType.SMALLINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField PICTURE = createField("picture", org.jooq.impl.SQLDataType.BLOB, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField EMAIL = createField("email", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_staff_store
+	 * FOREIGN KEY (store_id)
+	 * REFERENCES sakila.store (store_id)
+	 * 
+ */ + public final org.jooq.TableField STORE_ID = createField("store_id", org.jooq.impl.SQLDataType.TINYINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField ACTIVE = createField("active", org.jooq.impl.SQLDataType.TINYINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField USERNAME = createField("username", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField PASSWORD = createField("password", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField LAST_UPDATE = createField("last_update", org.jooq.impl.SQLDataType.TIMESTAMP, this); + + public Staff() { + super("staff", org.jooq.examples.mysql.sakila.Sakila.SAKILA); + } + + public Staff(java.lang.String alias) { + super(alias, org.jooq.examples.mysql.sakila.Sakila.SAKILA, org.jooq.examples.mysql.sakila.tables.Staff.STAFF); + } + + @Override + public org.jooq.Identity getIdentity() { + return org.jooq.examples.mysql.sakila.Keys.IDENTITY_STAFF; + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.examples.mysql.sakila.Keys.KEY_STAFF_PRIMARY; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.examples.mysql.sakila.Keys.KEY_STAFF_PRIMARY); + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getReferences() { + return java.util.Arrays.>asList(org.jooq.examples.mysql.sakila.Keys.FK_STAFF_ADDRESS, org.jooq.examples.mysql.sakila.Keys.FK_STAFF_STORE); + } + + @Override + public org.jooq.examples.mysql.sakila.tables.Staff as(java.lang.String alias) { + return new org.jooq.examples.mysql.sakila.tables.Staff(alias); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/mysql/sakila/tables/StaffList.java b/jOOQ-test/examples/org/jooq/examples/mysql/sakila/tables/StaffList.java new file mode 100644 index 00000000000..860e9dbdca4 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/mysql/sakila/tables/StaffList.java @@ -0,0 +1,85 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.mysql.sakila.tables; + +/** + * This class is generated by jOOQ. + * + * VIEW + */ +public class StaffList extends org.jooq.impl.TableImpl { + + private static final long serialVersionUID = -137774463; + + /** + * The singleton instance of sakila.staff_list + */ + public static final org.jooq.examples.mysql.sakila.tables.StaffList STAFF_LIST = new org.jooq.examples.mysql.sakila.tables.StaffList(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.examples.mysql.sakila.tables.records.StaffListRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + */ + public final org.jooq.TableField ID = createField("ID", org.jooq.impl.SQLDataType.TINYINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField NAME = createField("name", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField ADDRESS = createField("address", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField ZIP_CODE = createField("zip code", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField PHONE = createField("phone", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField CITY = createField("city", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField COUNTRY = createField("country", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField SID = createField("SID", org.jooq.impl.SQLDataType.TINYINT, this); + + public StaffList() { + super("staff_list", org.jooq.examples.mysql.sakila.Sakila.SAKILA); + } + + public StaffList(java.lang.String alias) { + super(alias, org.jooq.examples.mysql.sakila.Sakila.SAKILA, org.jooq.examples.mysql.sakila.tables.StaffList.STAFF_LIST); + } + + @Override + public org.jooq.examples.mysql.sakila.tables.StaffList as(java.lang.String alias) { + return new org.jooq.examples.mysql.sakila.tables.StaffList(alias); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/mysql/sakila/tables/Store.java b/jOOQ-test/examples/org/jooq/examples/mysql/sakila/tables/Store.java new file mode 100644 index 00000000000..168831199a6 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/mysql/sakila/tables/Store.java @@ -0,0 +1,99 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.mysql.sakila.tables; + +/** + * This class is generated by jOOQ. + */ +public class Store extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = -496503569; + + /** + * The singleton instance of sakila.store + */ + public static final org.jooq.examples.mysql.sakila.tables.Store STORE = new org.jooq.examples.mysql.sakila.tables.Store(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.examples.mysql.sakila.tables.records.StoreRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final org.jooq.TableField STORE_ID = createField("store_id", org.jooq.impl.SQLDataType.TINYINT, this); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_store_staff
+	 * FOREIGN KEY (manager_staff_id)
+	 * REFERENCES sakila.staff (staff_id)
+	 * 
+ */ + public final org.jooq.TableField MANAGER_STAFF_ID = createField("manager_staff_id", org.jooq.impl.SQLDataType.TINYINT, this); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_store_address
+	 * FOREIGN KEY (address_id)
+	 * REFERENCES sakila.address (address_id)
+	 * 
+ */ + public final org.jooq.TableField ADDRESS_ID = createField("address_id", org.jooq.impl.SQLDataType.SMALLINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField LAST_UPDATE = createField("last_update", org.jooq.impl.SQLDataType.TIMESTAMP, this); + + public Store() { + super("store", org.jooq.examples.mysql.sakila.Sakila.SAKILA); + } + + public Store(java.lang.String alias) { + super(alias, org.jooq.examples.mysql.sakila.Sakila.SAKILA, org.jooq.examples.mysql.sakila.tables.Store.STORE); + } + + @Override + public org.jooq.Identity getIdentity() { + return org.jooq.examples.mysql.sakila.Keys.IDENTITY_STORE; + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.examples.mysql.sakila.Keys.KEY_STORE_PRIMARY; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.examples.mysql.sakila.Keys.KEY_STORE_PRIMARY, org.jooq.examples.mysql.sakila.Keys.KEY_STORE_IDX_UNIQUE_MANAGER); + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getReferences() { + return java.util.Arrays.>asList(org.jooq.examples.mysql.sakila.Keys.FK_STORE_STAFF, org.jooq.examples.mysql.sakila.Keys.FK_STORE_ADDRESS); + } + + @Override + public org.jooq.examples.mysql.sakila.tables.Store as(java.lang.String alias) { + return new org.jooq.examples.mysql.sakila.tables.Store(alias); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/mysql/sakila/tables/records/ActorInfoRecord.java b/jOOQ-test/examples/org/jooq/examples/mysql/sakila/tables/records/ActorInfoRecord.java new file mode 100644 index 00000000000..396ff1915c4 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/mysql/sakila/tables/records/ActorInfoRecord.java @@ -0,0 +1,77 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.mysql.sakila.tables.records; + +/** + * This class is generated by jOOQ. + * + * VIEW + */ +public class ActorInfoRecord extends org.jooq.impl.TableRecordImpl { + + private static final long serialVersionUID = -424778646; + + /** + * An uncommented item + */ + public void setActorId(java.lang.Short value) { + setValue(org.jooq.examples.mysql.sakila.tables.ActorInfo.ACTOR_INFO.ACTOR_ID, value); + } + + /** + * An uncommented item + */ + public java.lang.Short getActorId() { + return getValue(org.jooq.examples.mysql.sakila.tables.ActorInfo.ACTOR_INFO.ACTOR_ID); + } + + /** + * An uncommented item + */ + public void setFirstName(java.lang.String value) { + setValue(org.jooq.examples.mysql.sakila.tables.ActorInfo.ACTOR_INFO.FIRST_NAME, value); + } + + /** + * An uncommented item + */ + public java.lang.String getFirstName() { + return getValue(org.jooq.examples.mysql.sakila.tables.ActorInfo.ACTOR_INFO.FIRST_NAME); + } + + /** + * An uncommented item + */ + public void setLastName(java.lang.String value) { + setValue(org.jooq.examples.mysql.sakila.tables.ActorInfo.ACTOR_INFO.LAST_NAME, value); + } + + /** + * An uncommented item + */ + public java.lang.String getLastName() { + return getValue(org.jooq.examples.mysql.sakila.tables.ActorInfo.ACTOR_INFO.LAST_NAME); + } + + /** + * An uncommented item + */ + public void setFilmInfo(java.lang.String value) { + setValue(org.jooq.examples.mysql.sakila.tables.ActorInfo.ACTOR_INFO.FILM_INFO, value); + } + + /** + * An uncommented item + */ + public java.lang.String getFilmInfo() { + return getValue(org.jooq.examples.mysql.sakila.tables.ActorInfo.ACTOR_INFO.FILM_INFO); + } + + /** + * Create a detached ActorInfoRecord + */ + public ActorInfoRecord() { + super(org.jooq.examples.mysql.sakila.tables.ActorInfo.ACTOR_INFO); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/mysql/sakila/tables/records/ActorRecord.java b/jOOQ-test/examples/org/jooq/examples/mysql/sakila/tables/records/ActorRecord.java new file mode 100644 index 00000000000..e0474486370 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/mysql/sakila/tables/records/ActorRecord.java @@ -0,0 +1,91 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.mysql.sakila.tables.records; + +/** + * This class is generated by jOOQ. + */ +public class ActorRecord extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = 170144386; + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setActorId(java.lang.Short value) { + setValue(org.jooq.examples.mysql.sakila.tables.Actor.ACTOR.ACTOR_ID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.lang.Short getActorId() { + return getValue(org.jooq.examples.mysql.sakila.tables.Actor.ACTOR.ACTOR_ID); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.util.List fetchFilmActorList() { + return create() + .selectFrom(org.jooq.examples.mysql.sakila.tables.FilmActor.FILM_ACTOR) + .where(org.jooq.examples.mysql.sakila.tables.FilmActor.FILM_ACTOR.ACTOR_ID.equal(getValue(org.jooq.examples.mysql.sakila.tables.Actor.ACTOR.ACTOR_ID))) + .fetch(); + } + + /** + * An uncommented item + */ + public void setFirstName(java.lang.String value) { + setValue(org.jooq.examples.mysql.sakila.tables.Actor.ACTOR.FIRST_NAME, value); + } + + /** + * An uncommented item + */ + public java.lang.String getFirstName() { + return getValue(org.jooq.examples.mysql.sakila.tables.Actor.ACTOR.FIRST_NAME); + } + + /** + * An uncommented item + */ + public void setLastName(java.lang.String value) { + setValue(org.jooq.examples.mysql.sakila.tables.Actor.ACTOR.LAST_NAME, value); + } + + /** + * An uncommented item + */ + public java.lang.String getLastName() { + return getValue(org.jooq.examples.mysql.sakila.tables.Actor.ACTOR.LAST_NAME); + } + + /** + * An uncommented item + */ + public void setLastUpdate(java.sql.Timestamp value) { + setValue(org.jooq.examples.mysql.sakila.tables.Actor.ACTOR.LAST_UPDATE, value); + } + + /** + * An uncommented item + */ + public java.sql.Timestamp getLastUpdate() { + return getValue(org.jooq.examples.mysql.sakila.tables.Actor.ACTOR.LAST_UPDATE); + } + + /** + * Create a detached ActorRecord + */ + public ActorRecord() { + super(org.jooq.examples.mysql.sakila.tables.Actor.ACTOR); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/mysql/sakila/tables/records/AddressRecord.java b/jOOQ-test/examples/org/jooq/examples/mysql/sakila/tables/records/AddressRecord.java new file mode 100644 index 00000000000..16f138ce2c9 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/mysql/sakila/tables/records/AddressRecord.java @@ -0,0 +1,199 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.mysql.sakila.tables.records; + +/** + * This class is generated by jOOQ. + */ +public class AddressRecord extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = 1459879401; + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setAddressId(java.lang.Short value) { + setValue(org.jooq.examples.mysql.sakila.tables.Address.ADDRESS.ADDRESS_ID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.lang.Short getAddressId() { + return getValue(org.jooq.examples.mysql.sakila.tables.Address.ADDRESS.ADDRESS_ID); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.util.List fetchCustomerList() { + return create() + .selectFrom(org.jooq.examples.mysql.sakila.tables.Customer.CUSTOMER) + .where(org.jooq.examples.mysql.sakila.tables.Customer.CUSTOMER.ADDRESS_ID.equal(getValue(org.jooq.examples.mysql.sakila.tables.Address.ADDRESS.ADDRESS_ID))) + .fetch(); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.util.List fetchStaffList() { + return create() + .selectFrom(org.jooq.examples.mysql.sakila.tables.Staff.STAFF) + .where(org.jooq.examples.mysql.sakila.tables.Staff.STAFF.ADDRESS_ID.equal(getValue(org.jooq.examples.mysql.sakila.tables.Address.ADDRESS.ADDRESS_ID))) + .fetch(); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.util.List fetchStoreList() { + return create() + .selectFrom(org.jooq.examples.mysql.sakila.tables.Store.STORE) + .where(org.jooq.examples.mysql.sakila.tables.Store.STORE.ADDRESS_ID.equal(getValue(org.jooq.examples.mysql.sakila.tables.Address.ADDRESS.ADDRESS_ID))) + .fetch(); + } + + /** + * An uncommented item + */ + public void setAddress(java.lang.String value) { + setValue(org.jooq.examples.mysql.sakila.tables.Address.ADDRESS.ADDRESS_, value); + } + + /** + * An uncommented item + */ + public java.lang.String getAddress() { + return getValue(org.jooq.examples.mysql.sakila.tables.Address.ADDRESS.ADDRESS_); + } + + /** + * An uncommented item + */ + public void setAddress2(java.lang.String value) { + setValue(org.jooq.examples.mysql.sakila.tables.Address.ADDRESS.ADDRESS2, value); + } + + /** + * An uncommented item + */ + public java.lang.String getAddress2() { + return getValue(org.jooq.examples.mysql.sakila.tables.Address.ADDRESS.ADDRESS2); + } + + /** + * An uncommented item + */ + public void setDistrict(java.lang.String value) { + setValue(org.jooq.examples.mysql.sakila.tables.Address.ADDRESS.DISTRICT, value); + } + + /** + * An uncommented item + */ + public java.lang.String getDistrict() { + return getValue(org.jooq.examples.mysql.sakila.tables.Address.ADDRESS.DISTRICT); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_address_city
+	 * FOREIGN KEY (city_id)
+	 * REFERENCES sakila.city (city_id)
+	 * 
+ */ + public void setCityId(java.lang.Short value) { + setValue(org.jooq.examples.mysql.sakila.tables.Address.ADDRESS.CITY_ID, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_address_city
+	 * FOREIGN KEY (city_id)
+	 * REFERENCES sakila.city (city_id)
+	 * 
+ */ + public java.lang.Short getCityId() { + return getValue(org.jooq.examples.mysql.sakila.tables.Address.ADDRESS.CITY_ID); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_address_city
+	 * FOREIGN KEY (city_id)
+	 * REFERENCES sakila.city (city_id)
+	 * 
+ */ + public org.jooq.examples.mysql.sakila.tables.records.CityRecord fetchCity() { + return create() + .selectFrom(org.jooq.examples.mysql.sakila.tables.City.CITY) + .where(org.jooq.examples.mysql.sakila.tables.City.CITY.CITY_ID.equal(getValue(org.jooq.examples.mysql.sakila.tables.Address.ADDRESS.CITY_ID))) + .fetchOne(); + } + + /** + * An uncommented item + */ + public void setPostalCode(java.lang.String value) { + setValue(org.jooq.examples.mysql.sakila.tables.Address.ADDRESS.POSTAL_CODE, value); + } + + /** + * An uncommented item + */ + public java.lang.String getPostalCode() { + return getValue(org.jooq.examples.mysql.sakila.tables.Address.ADDRESS.POSTAL_CODE); + } + + /** + * An uncommented item + */ + public void setPhone(java.lang.String value) { + setValue(org.jooq.examples.mysql.sakila.tables.Address.ADDRESS.PHONE, value); + } + + /** + * An uncommented item + */ + public java.lang.String getPhone() { + return getValue(org.jooq.examples.mysql.sakila.tables.Address.ADDRESS.PHONE); + } + + /** + * An uncommented item + */ + public void setLastUpdate(java.sql.Timestamp value) { + setValue(org.jooq.examples.mysql.sakila.tables.Address.ADDRESS.LAST_UPDATE, value); + } + + /** + * An uncommented item + */ + public java.sql.Timestamp getLastUpdate() { + return getValue(org.jooq.examples.mysql.sakila.tables.Address.ADDRESS.LAST_UPDATE); + } + + /** + * Create a detached AddressRecord + */ + public AddressRecord() { + super(org.jooq.examples.mysql.sakila.tables.Address.ADDRESS); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/mysql/sakila/tables/records/CategoryRecord.java b/jOOQ-test/examples/org/jooq/examples/mysql/sakila/tables/records/CategoryRecord.java new file mode 100644 index 00000000000..2355ed93ad4 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/mysql/sakila/tables/records/CategoryRecord.java @@ -0,0 +1,77 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.mysql.sakila.tables.records; + +/** + * This class is generated by jOOQ. + */ +public class CategoryRecord extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = -1221034988; + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setCategoryId(java.lang.Byte value) { + setValue(org.jooq.examples.mysql.sakila.tables.Category.CATEGORY.CATEGORY_ID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.lang.Byte getCategoryId() { + return getValue(org.jooq.examples.mysql.sakila.tables.Category.CATEGORY.CATEGORY_ID); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.util.List fetchFilmCategoryList() { + return create() + .selectFrom(org.jooq.examples.mysql.sakila.tables.FilmCategory.FILM_CATEGORY) + .where(org.jooq.examples.mysql.sakila.tables.FilmCategory.FILM_CATEGORY.CATEGORY_ID.equal(getValue(org.jooq.examples.mysql.sakila.tables.Category.CATEGORY.CATEGORY_ID))) + .fetch(); + } + + /** + * An uncommented item + */ + public void setName(java.lang.String value) { + setValue(org.jooq.examples.mysql.sakila.tables.Category.CATEGORY.NAME, value); + } + + /** + * An uncommented item + */ + public java.lang.String getName() { + return getValue(org.jooq.examples.mysql.sakila.tables.Category.CATEGORY.NAME); + } + + /** + * An uncommented item + */ + public void setLastUpdate(java.sql.Timestamp value) { + setValue(org.jooq.examples.mysql.sakila.tables.Category.CATEGORY.LAST_UPDATE, value); + } + + /** + * An uncommented item + */ + public java.sql.Timestamp getLastUpdate() { + return getValue(org.jooq.examples.mysql.sakila.tables.Category.CATEGORY.LAST_UPDATE); + } + + /** + * Create a detached CategoryRecord + */ + public CategoryRecord() { + super(org.jooq.examples.mysql.sakila.tables.Category.CATEGORY); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/mysql/sakila/tables/records/CityRecord.java b/jOOQ-test/examples/org/jooq/examples/mysql/sakila/tables/records/CityRecord.java new file mode 100644 index 00000000000..b24af79ee45 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/mysql/sakila/tables/records/CityRecord.java @@ -0,0 +1,119 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.mysql.sakila.tables.records; + +/** + * This class is generated by jOOQ. + */ +public class CityRecord extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = 969805918; + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setCityId(java.lang.Short value) { + setValue(org.jooq.examples.mysql.sakila.tables.City.CITY.CITY_ID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.lang.Short getCityId() { + return getValue(org.jooq.examples.mysql.sakila.tables.City.CITY.CITY_ID); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.util.List fetchAddressList() { + return create() + .selectFrom(org.jooq.examples.mysql.sakila.tables.Address.ADDRESS) + .where(org.jooq.examples.mysql.sakila.tables.Address.ADDRESS.CITY_ID.equal(getValue(org.jooq.examples.mysql.sakila.tables.City.CITY.CITY_ID))) + .fetch(); + } + + /** + * An uncommented item + */ + public void setCity(java.lang.String value) { + setValue(org.jooq.examples.mysql.sakila.tables.City.CITY.CITY_, value); + } + + /** + * An uncommented item + */ + public java.lang.String getCity() { + return getValue(org.jooq.examples.mysql.sakila.tables.City.CITY.CITY_); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_city_country
+	 * FOREIGN KEY (country_id)
+	 * REFERENCES sakila.country (country_id)
+	 * 
+ */ + public void setCountryId(java.lang.Short value) { + setValue(org.jooq.examples.mysql.sakila.tables.City.CITY.COUNTRY_ID, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_city_country
+	 * FOREIGN KEY (country_id)
+	 * REFERENCES sakila.country (country_id)
+	 * 
+ */ + public java.lang.Short getCountryId() { + return getValue(org.jooq.examples.mysql.sakila.tables.City.CITY.COUNTRY_ID); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_city_country
+	 * FOREIGN KEY (country_id)
+	 * REFERENCES sakila.country (country_id)
+	 * 
+ */ + public org.jooq.examples.mysql.sakila.tables.records.CountryRecord fetchCountry() { + return create() + .selectFrom(org.jooq.examples.mysql.sakila.tables.Country.COUNTRY) + .where(org.jooq.examples.mysql.sakila.tables.Country.COUNTRY.COUNTRY_ID.equal(getValue(org.jooq.examples.mysql.sakila.tables.City.CITY.COUNTRY_ID))) + .fetchOne(); + } + + /** + * An uncommented item + */ + public void setLastUpdate(java.sql.Timestamp value) { + setValue(org.jooq.examples.mysql.sakila.tables.City.CITY.LAST_UPDATE, value); + } + + /** + * An uncommented item + */ + public java.sql.Timestamp getLastUpdate() { + return getValue(org.jooq.examples.mysql.sakila.tables.City.CITY.LAST_UPDATE); + } + + /** + * Create a detached CityRecord + */ + public CityRecord() { + super(org.jooq.examples.mysql.sakila.tables.City.CITY); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/mysql/sakila/tables/records/CountryRecord.java b/jOOQ-test/examples/org/jooq/examples/mysql/sakila/tables/records/CountryRecord.java new file mode 100644 index 00000000000..23a84f2e34c --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/mysql/sakila/tables/records/CountryRecord.java @@ -0,0 +1,77 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.mysql.sakila.tables.records; + +/** + * This class is generated by jOOQ. + */ +public class CountryRecord extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = 1509860044; + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setCountryId(java.lang.Short value) { + setValue(org.jooq.examples.mysql.sakila.tables.Country.COUNTRY.COUNTRY_ID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.lang.Short getCountryId() { + return getValue(org.jooq.examples.mysql.sakila.tables.Country.COUNTRY.COUNTRY_ID); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.util.List fetchCityList() { + return create() + .selectFrom(org.jooq.examples.mysql.sakila.tables.City.CITY) + .where(org.jooq.examples.mysql.sakila.tables.City.CITY.COUNTRY_ID.equal(getValue(org.jooq.examples.mysql.sakila.tables.Country.COUNTRY.COUNTRY_ID))) + .fetch(); + } + + /** + * An uncommented item + */ + public void setCountry(java.lang.String value) { + setValue(org.jooq.examples.mysql.sakila.tables.Country.COUNTRY.COUNTRY_, value); + } + + /** + * An uncommented item + */ + public java.lang.String getCountry() { + return getValue(org.jooq.examples.mysql.sakila.tables.Country.COUNTRY.COUNTRY_); + } + + /** + * An uncommented item + */ + public void setLastUpdate(java.sql.Timestamp value) { + setValue(org.jooq.examples.mysql.sakila.tables.Country.COUNTRY.LAST_UPDATE, value); + } + + /** + * An uncommented item + */ + public java.sql.Timestamp getLastUpdate() { + return getValue(org.jooq.examples.mysql.sakila.tables.Country.COUNTRY.LAST_UPDATE); + } + + /** + * Create a detached CountryRecord + */ + public CountryRecord() { + super(org.jooq.examples.mysql.sakila.tables.Country.COUNTRY); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/mysql/sakila/tables/records/CustomerListRecord.java b/jOOQ-test/examples/org/jooq/examples/mysql/sakila/tables/records/CustomerListRecord.java new file mode 100644 index 00000000000..33457b31c7f --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/mysql/sakila/tables/records/CustomerListRecord.java @@ -0,0 +1,147 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.mysql.sakila.tables.records; + +/** + * This class is generated by jOOQ. + * + * VIEW + */ +public class CustomerListRecord extends org.jooq.impl.TableRecordImpl { + + private static final long serialVersionUID = -1100718874; + + /** + * An uncommented item + */ + public void setId(java.lang.Short value) { + setValue(org.jooq.examples.mysql.sakila.tables.CustomerList.CUSTOMER_LIST.ID, value); + } + + /** + * An uncommented item + */ + public java.lang.Short getId() { + return getValue(org.jooq.examples.mysql.sakila.tables.CustomerList.CUSTOMER_LIST.ID); + } + + /** + * An uncommented item + */ + public void setName(java.lang.String value) { + setValue(org.jooq.examples.mysql.sakila.tables.CustomerList.CUSTOMER_LIST.NAME, value); + } + + /** + * An uncommented item + */ + public java.lang.String getName() { + return getValue(org.jooq.examples.mysql.sakila.tables.CustomerList.CUSTOMER_LIST.NAME); + } + + /** + * An uncommented item + */ + public void setAddress(java.lang.String value) { + setValue(org.jooq.examples.mysql.sakila.tables.CustomerList.CUSTOMER_LIST.ADDRESS, value); + } + + /** + * An uncommented item + */ + public java.lang.String getAddress() { + return getValue(org.jooq.examples.mysql.sakila.tables.CustomerList.CUSTOMER_LIST.ADDRESS); + } + + /** + * An uncommented item + */ + public void setZipCode(java.lang.String value) { + setValue(org.jooq.examples.mysql.sakila.tables.CustomerList.CUSTOMER_LIST.ZIP_CODE, value); + } + + /** + * An uncommented item + */ + public java.lang.String getZipCode() { + return getValue(org.jooq.examples.mysql.sakila.tables.CustomerList.CUSTOMER_LIST.ZIP_CODE); + } + + /** + * An uncommented item + */ + public void setPhone(java.lang.String value) { + setValue(org.jooq.examples.mysql.sakila.tables.CustomerList.CUSTOMER_LIST.PHONE, value); + } + + /** + * An uncommented item + */ + public java.lang.String getPhone() { + return getValue(org.jooq.examples.mysql.sakila.tables.CustomerList.CUSTOMER_LIST.PHONE); + } + + /** + * An uncommented item + */ + public void setCity(java.lang.String value) { + setValue(org.jooq.examples.mysql.sakila.tables.CustomerList.CUSTOMER_LIST.CITY, value); + } + + /** + * An uncommented item + */ + public java.lang.String getCity() { + return getValue(org.jooq.examples.mysql.sakila.tables.CustomerList.CUSTOMER_LIST.CITY); + } + + /** + * An uncommented item + */ + public void setCountry(java.lang.String value) { + setValue(org.jooq.examples.mysql.sakila.tables.CustomerList.CUSTOMER_LIST.COUNTRY, value); + } + + /** + * An uncommented item + */ + public java.lang.String getCountry() { + return getValue(org.jooq.examples.mysql.sakila.tables.CustomerList.CUSTOMER_LIST.COUNTRY); + } + + /** + * An uncommented item + */ + public void setNotes(java.lang.String value) { + setValue(org.jooq.examples.mysql.sakila.tables.CustomerList.CUSTOMER_LIST.NOTES, value); + } + + /** + * An uncommented item + */ + public java.lang.String getNotes() { + return getValue(org.jooq.examples.mysql.sakila.tables.CustomerList.CUSTOMER_LIST.NOTES); + } + + /** + * An uncommented item + */ + public void setSid(java.lang.Byte value) { + setValue(org.jooq.examples.mysql.sakila.tables.CustomerList.CUSTOMER_LIST.SID, value); + } + + /** + * An uncommented item + */ + public java.lang.Byte getSid() { + return getValue(org.jooq.examples.mysql.sakila.tables.CustomerList.CUSTOMER_LIST.SID); + } + + /** + * Create a detached CustomerListRecord + */ + public CustomerListRecord() { + super(org.jooq.examples.mysql.sakila.tables.CustomerList.CUSTOMER_LIST); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/mysql/sakila/tables/records/CustomerRecord.java b/jOOQ-test/examples/org/jooq/examples/mysql/sakila/tables/records/CustomerRecord.java new file mode 100644 index 00000000000..c6bb59af9ee --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/mysql/sakila/tables/records/CustomerRecord.java @@ -0,0 +1,229 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.mysql.sakila.tables.records; + +/** + * This class is generated by jOOQ. + */ +public class CustomerRecord extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = -1506444876; + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setCustomerId(java.lang.Short value) { + setValue(org.jooq.examples.mysql.sakila.tables.Customer.CUSTOMER.CUSTOMER_ID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.lang.Short getCustomerId() { + return getValue(org.jooq.examples.mysql.sakila.tables.Customer.CUSTOMER.CUSTOMER_ID); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.util.List fetchPaymentList() { + return create() + .selectFrom(org.jooq.examples.mysql.sakila.tables.Payment.PAYMENT) + .where(org.jooq.examples.mysql.sakila.tables.Payment.PAYMENT.CUSTOMER_ID.equal(getValue(org.jooq.examples.mysql.sakila.tables.Customer.CUSTOMER.CUSTOMER_ID))) + .fetch(); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.util.List fetchRentalList() { + return create() + .selectFrom(org.jooq.examples.mysql.sakila.tables.Rental.RENTAL) + .where(org.jooq.examples.mysql.sakila.tables.Rental.RENTAL.CUSTOMER_ID.equal(getValue(org.jooq.examples.mysql.sakila.tables.Customer.CUSTOMER.CUSTOMER_ID))) + .fetch(); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_customer_store
+	 * FOREIGN KEY (store_id)
+	 * REFERENCES sakila.store (store_id)
+	 * 
+ */ + public void setStoreId(java.lang.Byte value) { + setValue(org.jooq.examples.mysql.sakila.tables.Customer.CUSTOMER.STORE_ID, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_customer_store
+	 * FOREIGN KEY (store_id)
+	 * REFERENCES sakila.store (store_id)
+	 * 
+ */ + public java.lang.Byte getStoreId() { + return getValue(org.jooq.examples.mysql.sakila.tables.Customer.CUSTOMER.STORE_ID); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_customer_store
+	 * FOREIGN KEY (store_id)
+	 * REFERENCES sakila.store (store_id)
+	 * 
+ */ + public org.jooq.examples.mysql.sakila.tables.records.StoreRecord fetchStore() { + return create() + .selectFrom(org.jooq.examples.mysql.sakila.tables.Store.STORE) + .where(org.jooq.examples.mysql.sakila.tables.Store.STORE.STORE_ID.equal(getValue(org.jooq.examples.mysql.sakila.tables.Customer.CUSTOMER.STORE_ID))) + .fetchOne(); + } + + /** + * An uncommented item + */ + public void setFirstName(java.lang.String value) { + setValue(org.jooq.examples.mysql.sakila.tables.Customer.CUSTOMER.FIRST_NAME, value); + } + + /** + * An uncommented item + */ + public java.lang.String getFirstName() { + return getValue(org.jooq.examples.mysql.sakila.tables.Customer.CUSTOMER.FIRST_NAME); + } + + /** + * An uncommented item + */ + public void setLastName(java.lang.String value) { + setValue(org.jooq.examples.mysql.sakila.tables.Customer.CUSTOMER.LAST_NAME, value); + } + + /** + * An uncommented item + */ + public java.lang.String getLastName() { + return getValue(org.jooq.examples.mysql.sakila.tables.Customer.CUSTOMER.LAST_NAME); + } + + /** + * An uncommented item + */ + public void setEmail(java.lang.String value) { + setValue(org.jooq.examples.mysql.sakila.tables.Customer.CUSTOMER.EMAIL, value); + } + + /** + * An uncommented item + */ + public java.lang.String getEmail() { + return getValue(org.jooq.examples.mysql.sakila.tables.Customer.CUSTOMER.EMAIL); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_customer_address
+	 * FOREIGN KEY (address_id)
+	 * REFERENCES sakila.address (address_id)
+	 * 
+ */ + public void setAddressId(java.lang.Short value) { + setValue(org.jooq.examples.mysql.sakila.tables.Customer.CUSTOMER.ADDRESS_ID, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_customer_address
+	 * FOREIGN KEY (address_id)
+	 * REFERENCES sakila.address (address_id)
+	 * 
+ */ + public java.lang.Short getAddressId() { + return getValue(org.jooq.examples.mysql.sakila.tables.Customer.CUSTOMER.ADDRESS_ID); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_customer_address
+	 * FOREIGN KEY (address_id)
+	 * REFERENCES sakila.address (address_id)
+	 * 
+ */ + public org.jooq.examples.mysql.sakila.tables.records.AddressRecord fetchAddress() { + return create() + .selectFrom(org.jooq.examples.mysql.sakila.tables.Address.ADDRESS) + .where(org.jooq.examples.mysql.sakila.tables.Address.ADDRESS.ADDRESS_ID.equal(getValue(org.jooq.examples.mysql.sakila.tables.Customer.CUSTOMER.ADDRESS_ID))) + .fetchOne(); + } + + /** + * An uncommented item + */ + public void setActive(java.lang.Byte value) { + setValue(org.jooq.examples.mysql.sakila.tables.Customer.CUSTOMER.ACTIVE, value); + } + + /** + * An uncommented item + */ + public java.lang.Byte getActive() { + return getValue(org.jooq.examples.mysql.sakila.tables.Customer.CUSTOMER.ACTIVE); + } + + /** + * An uncommented item + */ + public void setCreateDate(java.sql.Timestamp value) { + setValue(org.jooq.examples.mysql.sakila.tables.Customer.CUSTOMER.CREATE_DATE, value); + } + + /** + * An uncommented item + */ + public java.sql.Timestamp getCreateDate() { + return getValue(org.jooq.examples.mysql.sakila.tables.Customer.CUSTOMER.CREATE_DATE); + } + + /** + * An uncommented item + */ + public void setLastUpdate(java.sql.Timestamp value) { + setValue(org.jooq.examples.mysql.sakila.tables.Customer.CUSTOMER.LAST_UPDATE, value); + } + + /** + * An uncommented item + */ + public java.sql.Timestamp getLastUpdate() { + return getValue(org.jooq.examples.mysql.sakila.tables.Customer.CUSTOMER.LAST_UPDATE); + } + + /** + * Create a detached CustomerRecord + */ + public CustomerRecord() { + super(org.jooq.examples.mysql.sakila.tables.Customer.CUSTOMER); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/mysql/sakila/tables/records/FilmActorRecord.java b/jOOQ-test/examples/org/jooq/examples/mysql/sakila/tables/records/FilmActorRecord.java new file mode 100644 index 00000000000..05706c0c4db --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/mysql/sakila/tables/records/FilmActorRecord.java @@ -0,0 +1,129 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.mysql.sakila.tables.records; + +/** + * This class is generated by jOOQ. + */ +public class FilmActorRecord extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = 1548276093; + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT fk_film_actor_actor
+	 * FOREIGN KEY (actor_id)
+	 * REFERENCES sakila.actor (actor_id)
+	 * 
+ */ + public void setActorId(java.lang.Short value) { + setValue(org.jooq.examples.mysql.sakila.tables.FilmActor.FILM_ACTOR.ACTOR_ID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT fk_film_actor_actor
+	 * FOREIGN KEY (actor_id)
+	 * REFERENCES sakila.actor (actor_id)
+	 * 
+ */ + public java.lang.Short getActorId() { + return getValue(org.jooq.examples.mysql.sakila.tables.FilmActor.FILM_ACTOR.ACTOR_ID); + } + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT fk_film_actor_actor
+	 * FOREIGN KEY (actor_id)
+	 * REFERENCES sakila.actor (actor_id)
+	 * 
+ */ + public org.jooq.examples.mysql.sakila.tables.records.ActorRecord fetchActor() { + return create() + .selectFrom(org.jooq.examples.mysql.sakila.tables.Actor.ACTOR) + .where(org.jooq.examples.mysql.sakila.tables.Actor.ACTOR.ACTOR_ID.equal(getValue(org.jooq.examples.mysql.sakila.tables.FilmActor.FILM_ACTOR.ACTOR_ID))) + .fetchOne(); + } + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT fk_film_actor_film
+	 * FOREIGN KEY (film_id)
+	 * REFERENCES sakila.film (film_id)
+	 * 
+ */ + public void setFilmId(java.lang.Short value) { + setValue(org.jooq.examples.mysql.sakila.tables.FilmActor.FILM_ACTOR.FILM_ID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT fk_film_actor_film
+	 * FOREIGN KEY (film_id)
+	 * REFERENCES sakila.film (film_id)
+	 * 
+ */ + public java.lang.Short getFilmId() { + return getValue(org.jooq.examples.mysql.sakila.tables.FilmActor.FILM_ACTOR.FILM_ID); + } + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT fk_film_actor_film
+	 * FOREIGN KEY (film_id)
+	 * REFERENCES sakila.film (film_id)
+	 * 
+ */ + public org.jooq.examples.mysql.sakila.tables.records.FilmRecord fetchFilm() { + return create() + .selectFrom(org.jooq.examples.mysql.sakila.tables.Film.FILM) + .where(org.jooq.examples.mysql.sakila.tables.Film.FILM.FILM_ID.equal(getValue(org.jooq.examples.mysql.sakila.tables.FilmActor.FILM_ACTOR.FILM_ID))) + .fetchOne(); + } + + /** + * An uncommented item + */ + public void setLastUpdate(java.sql.Timestamp value) { + setValue(org.jooq.examples.mysql.sakila.tables.FilmActor.FILM_ACTOR.LAST_UPDATE, value); + } + + /** + * An uncommented item + */ + public java.sql.Timestamp getLastUpdate() { + return getValue(org.jooq.examples.mysql.sakila.tables.FilmActor.FILM_ACTOR.LAST_UPDATE); + } + + /** + * Create a detached FilmActorRecord + */ + public FilmActorRecord() { + super(org.jooq.examples.mysql.sakila.tables.FilmActor.FILM_ACTOR); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/mysql/sakila/tables/records/FilmCategoryRecord.java b/jOOQ-test/examples/org/jooq/examples/mysql/sakila/tables/records/FilmCategoryRecord.java new file mode 100644 index 00000000000..d9cde89cc1b --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/mysql/sakila/tables/records/FilmCategoryRecord.java @@ -0,0 +1,129 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.mysql.sakila.tables.records; + +/** + * This class is generated by jOOQ. + */ +public class FilmCategoryRecord extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = 484678669; + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT fk_film_category_film
+	 * FOREIGN KEY (film_id)
+	 * REFERENCES sakila.film (film_id)
+	 * 
+ */ + public void setFilmId(java.lang.Short value) { + setValue(org.jooq.examples.mysql.sakila.tables.FilmCategory.FILM_CATEGORY.FILM_ID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT fk_film_category_film
+	 * FOREIGN KEY (film_id)
+	 * REFERENCES sakila.film (film_id)
+	 * 
+ */ + public java.lang.Short getFilmId() { + return getValue(org.jooq.examples.mysql.sakila.tables.FilmCategory.FILM_CATEGORY.FILM_ID); + } + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT fk_film_category_film
+	 * FOREIGN KEY (film_id)
+	 * REFERENCES sakila.film (film_id)
+	 * 
+ */ + public org.jooq.examples.mysql.sakila.tables.records.FilmRecord fetchFilm() { + return create() + .selectFrom(org.jooq.examples.mysql.sakila.tables.Film.FILM) + .where(org.jooq.examples.mysql.sakila.tables.Film.FILM.FILM_ID.equal(getValue(org.jooq.examples.mysql.sakila.tables.FilmCategory.FILM_CATEGORY.FILM_ID))) + .fetchOne(); + } + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT fk_film_category_category
+	 * FOREIGN KEY (category_id)
+	 * REFERENCES sakila.category (category_id)
+	 * 
+ */ + public void setCategoryId(java.lang.Byte value) { + setValue(org.jooq.examples.mysql.sakila.tables.FilmCategory.FILM_CATEGORY.CATEGORY_ID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT fk_film_category_category
+	 * FOREIGN KEY (category_id)
+	 * REFERENCES sakila.category (category_id)
+	 * 
+ */ + public java.lang.Byte getCategoryId() { + return getValue(org.jooq.examples.mysql.sakila.tables.FilmCategory.FILM_CATEGORY.CATEGORY_ID); + } + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT fk_film_category_category
+	 * FOREIGN KEY (category_id)
+	 * REFERENCES sakila.category (category_id)
+	 * 
+ */ + public org.jooq.examples.mysql.sakila.tables.records.CategoryRecord fetchCategory() { + return create() + .selectFrom(org.jooq.examples.mysql.sakila.tables.Category.CATEGORY) + .where(org.jooq.examples.mysql.sakila.tables.Category.CATEGORY.CATEGORY_ID.equal(getValue(org.jooq.examples.mysql.sakila.tables.FilmCategory.FILM_CATEGORY.CATEGORY_ID))) + .fetchOne(); + } + + /** + * An uncommented item + */ + public void setLastUpdate(java.sql.Timestamp value) { + setValue(org.jooq.examples.mysql.sakila.tables.FilmCategory.FILM_CATEGORY.LAST_UPDATE, value); + } + + /** + * An uncommented item + */ + public java.sql.Timestamp getLastUpdate() { + return getValue(org.jooq.examples.mysql.sakila.tables.FilmCategory.FILM_CATEGORY.LAST_UPDATE); + } + + /** + * Create a detached FilmCategoryRecord + */ + public FilmCategoryRecord() { + super(org.jooq.examples.mysql.sakila.tables.FilmCategory.FILM_CATEGORY); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/mysql/sakila/tables/records/FilmListRecord.java b/jOOQ-test/examples/org/jooq/examples/mysql/sakila/tables/records/FilmListRecord.java new file mode 100644 index 00000000000..eefca53d4c3 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/mysql/sakila/tables/records/FilmListRecord.java @@ -0,0 +1,133 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.mysql.sakila.tables.records; + +/** + * This class is generated by jOOQ. + * + * VIEW + */ +public class FilmListRecord extends org.jooq.impl.TableRecordImpl { + + private static final long serialVersionUID = -431703598; + + /** + * An uncommented item + */ + public void setFid(java.lang.Short value) { + setValue(org.jooq.examples.mysql.sakila.tables.FilmList.FILM_LIST.FID, value); + } + + /** + * An uncommented item + */ + public java.lang.Short getFid() { + return getValue(org.jooq.examples.mysql.sakila.tables.FilmList.FILM_LIST.FID); + } + + /** + * An uncommented item + */ + public void setTitle(java.lang.String value) { + setValue(org.jooq.examples.mysql.sakila.tables.FilmList.FILM_LIST.TITLE, value); + } + + /** + * An uncommented item + */ + public java.lang.String getTitle() { + return getValue(org.jooq.examples.mysql.sakila.tables.FilmList.FILM_LIST.TITLE); + } + + /** + * An uncommented item + */ + public void setDescription(java.lang.String value) { + setValue(org.jooq.examples.mysql.sakila.tables.FilmList.FILM_LIST.DESCRIPTION, value); + } + + /** + * An uncommented item + */ + public java.lang.String getDescription() { + return getValue(org.jooq.examples.mysql.sakila.tables.FilmList.FILM_LIST.DESCRIPTION); + } + + /** + * An uncommented item + */ + public void setCategory(java.lang.String value) { + setValue(org.jooq.examples.mysql.sakila.tables.FilmList.FILM_LIST.CATEGORY, value); + } + + /** + * An uncommented item + */ + public java.lang.String getCategory() { + return getValue(org.jooq.examples.mysql.sakila.tables.FilmList.FILM_LIST.CATEGORY); + } + + /** + * An uncommented item + */ + public void setPrice(java.math.BigDecimal value) { + setValue(org.jooq.examples.mysql.sakila.tables.FilmList.FILM_LIST.PRICE, value); + } + + /** + * An uncommented item + */ + public java.math.BigDecimal getPrice() { + return getValue(org.jooq.examples.mysql.sakila.tables.FilmList.FILM_LIST.PRICE); + } + + /** + * An uncommented item + */ + public void setLength(java.lang.Short value) { + setValue(org.jooq.examples.mysql.sakila.tables.FilmList.FILM_LIST.LENGTH, value); + } + + /** + * An uncommented item + */ + public java.lang.Short getLength() { + return getValue(org.jooq.examples.mysql.sakila.tables.FilmList.FILM_LIST.LENGTH); + } + + /** + * An uncommented item + */ + public void setRating(org.jooq.examples.mysql.sakila.enums.FilmListRating value) { + setValue(org.jooq.examples.mysql.sakila.tables.FilmList.FILM_LIST.RATING, value); + } + + /** + * An uncommented item + */ + public org.jooq.examples.mysql.sakila.enums.FilmListRating getRating() { + return getValue(org.jooq.examples.mysql.sakila.tables.FilmList.FILM_LIST.RATING); + } + + /** + * An uncommented item + */ + public void setActors(java.lang.String value) { + setValue(org.jooq.examples.mysql.sakila.tables.FilmList.FILM_LIST.ACTORS, value); + } + + /** + * An uncommented item + */ + public java.lang.String getActors() { + return getValue(org.jooq.examples.mysql.sakila.tables.FilmList.FILM_LIST.ACTORS); + } + + /** + * Create a detached FilmListRecord + */ + public FilmListRecord() { + super(org.jooq.examples.mysql.sakila.tables.FilmList.FILM_LIST); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/mysql/sakila/tables/records/FilmRecord.java b/jOOQ-test/examples/org/jooq/examples/mysql/sakila/tables/records/FilmRecord.java new file mode 100644 index 00000000000..89e0ed4eb4e --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/mysql/sakila/tables/records/FilmRecord.java @@ -0,0 +1,297 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.mysql.sakila.tables.records; + +/** + * This class is generated by jOOQ. + */ +public class FilmRecord extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = 572677983; + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setFilmId(java.lang.Short value) { + setValue(org.jooq.examples.mysql.sakila.tables.Film.FILM.FILM_ID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.lang.Short getFilmId() { + return getValue(org.jooq.examples.mysql.sakila.tables.Film.FILM.FILM_ID); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.util.List fetchFilmActorList() { + return create() + .selectFrom(org.jooq.examples.mysql.sakila.tables.FilmActor.FILM_ACTOR) + .where(org.jooq.examples.mysql.sakila.tables.FilmActor.FILM_ACTOR.FILM_ID.equal(getValue(org.jooq.examples.mysql.sakila.tables.Film.FILM.FILM_ID))) + .fetch(); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.util.List fetchFilmCategoryList() { + return create() + .selectFrom(org.jooq.examples.mysql.sakila.tables.FilmCategory.FILM_CATEGORY) + .where(org.jooq.examples.mysql.sakila.tables.FilmCategory.FILM_CATEGORY.FILM_ID.equal(getValue(org.jooq.examples.mysql.sakila.tables.Film.FILM.FILM_ID))) + .fetch(); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.util.List fetchInventoryList() { + return create() + .selectFrom(org.jooq.examples.mysql.sakila.tables.Inventory.INVENTORY) + .where(org.jooq.examples.mysql.sakila.tables.Inventory.INVENTORY.FILM_ID.equal(getValue(org.jooq.examples.mysql.sakila.tables.Film.FILM.FILM_ID))) + .fetch(); + } + + /** + * An uncommented item + */ + public void setTitle(java.lang.String value) { + setValue(org.jooq.examples.mysql.sakila.tables.Film.FILM.TITLE, value); + } + + /** + * An uncommented item + */ + public java.lang.String getTitle() { + return getValue(org.jooq.examples.mysql.sakila.tables.Film.FILM.TITLE); + } + + /** + * An uncommented item + */ + public void setDescription(java.lang.String value) { + setValue(org.jooq.examples.mysql.sakila.tables.Film.FILM.DESCRIPTION, value); + } + + /** + * An uncommented item + */ + public java.lang.String getDescription() { + return getValue(org.jooq.examples.mysql.sakila.tables.Film.FILM.DESCRIPTION); + } + + /** + * An uncommented item + */ + public void setReleaseYear(java.sql.Date value) { + setValue(org.jooq.examples.mysql.sakila.tables.Film.FILM.RELEASE_YEAR, value); + } + + /** + * An uncommented item + */ + public java.sql.Date getReleaseYear() { + return getValue(org.jooq.examples.mysql.sakila.tables.Film.FILM.RELEASE_YEAR); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_film_language
+	 * FOREIGN KEY (language_id)
+	 * REFERENCES sakila.language (language_id)
+	 * 
+ */ + public void setLanguageId(java.lang.Byte value) { + setValue(org.jooq.examples.mysql.sakila.tables.Film.FILM.LANGUAGE_ID, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_film_language
+	 * FOREIGN KEY (language_id)
+	 * REFERENCES sakila.language (language_id)
+	 * 
+ */ + public java.lang.Byte getLanguageId() { + return getValue(org.jooq.examples.mysql.sakila.tables.Film.FILM.LANGUAGE_ID); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_film_language
+	 * FOREIGN KEY (language_id)
+	 * REFERENCES sakila.language (language_id)
+	 * 
+ */ + public org.jooq.examples.mysql.sakila.tables.records.LanguageRecord fetchLanguageByLanguageId() { + return create() + .selectFrom(org.jooq.examples.mysql.sakila.tables.Language.LANGUAGE) + .where(org.jooq.examples.mysql.sakila.tables.Language.LANGUAGE.LANGUAGE_ID.equal(getValue(org.jooq.examples.mysql.sakila.tables.Film.FILM.LANGUAGE_ID))) + .fetchOne(); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_film_language_original
+	 * FOREIGN KEY (original_language_id)
+	 * REFERENCES sakila.language (language_id)
+	 * 
+ */ + public void setOriginalLanguageId(java.lang.Byte value) { + setValue(org.jooq.examples.mysql.sakila.tables.Film.FILM.ORIGINAL_LANGUAGE_ID, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_film_language_original
+	 * FOREIGN KEY (original_language_id)
+	 * REFERENCES sakila.language (language_id)
+	 * 
+ */ + public java.lang.Byte getOriginalLanguageId() { + return getValue(org.jooq.examples.mysql.sakila.tables.Film.FILM.ORIGINAL_LANGUAGE_ID); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_film_language_original
+	 * FOREIGN KEY (original_language_id)
+	 * REFERENCES sakila.language (language_id)
+	 * 
+ */ + public org.jooq.examples.mysql.sakila.tables.records.LanguageRecord fetchLanguageByOriginalLanguageId() { + return create() + .selectFrom(org.jooq.examples.mysql.sakila.tables.Language.LANGUAGE) + .where(org.jooq.examples.mysql.sakila.tables.Language.LANGUAGE.LANGUAGE_ID.equal(getValue(org.jooq.examples.mysql.sakila.tables.Film.FILM.ORIGINAL_LANGUAGE_ID))) + .fetchOne(); + } + + /** + * An uncommented item + */ + public void setRentalDuration(java.lang.Byte value) { + setValue(org.jooq.examples.mysql.sakila.tables.Film.FILM.RENTAL_DURATION, value); + } + + /** + * An uncommented item + */ + public java.lang.Byte getRentalDuration() { + return getValue(org.jooq.examples.mysql.sakila.tables.Film.FILM.RENTAL_DURATION); + } + + /** + * An uncommented item + */ + public void setRentalRate(java.math.BigDecimal value) { + setValue(org.jooq.examples.mysql.sakila.tables.Film.FILM.RENTAL_RATE, value); + } + + /** + * An uncommented item + */ + public java.math.BigDecimal getRentalRate() { + return getValue(org.jooq.examples.mysql.sakila.tables.Film.FILM.RENTAL_RATE); + } + + /** + * An uncommented item + */ + public void setLength(java.lang.Short value) { + setValue(org.jooq.examples.mysql.sakila.tables.Film.FILM.LENGTH, value); + } + + /** + * An uncommented item + */ + public java.lang.Short getLength() { + return getValue(org.jooq.examples.mysql.sakila.tables.Film.FILM.LENGTH); + } + + /** + * An uncommented item + */ + public void setReplacementCost(java.math.BigDecimal value) { + setValue(org.jooq.examples.mysql.sakila.tables.Film.FILM.REPLACEMENT_COST, value); + } + + /** + * An uncommented item + */ + public java.math.BigDecimal getReplacementCost() { + return getValue(org.jooq.examples.mysql.sakila.tables.Film.FILM.REPLACEMENT_COST); + } + + /** + * An uncommented item + */ + public void setRating(org.jooq.examples.mysql.sakila.enums.FilmRating value) { + setValue(org.jooq.examples.mysql.sakila.tables.Film.FILM.RATING, value); + } + + /** + * An uncommented item + */ + public org.jooq.examples.mysql.sakila.enums.FilmRating getRating() { + return getValue(org.jooq.examples.mysql.sakila.tables.Film.FILM.RATING); + } + + /** + * An uncommented item + */ + public void setSpecialFeatures(java.lang.String value) { + setValue(org.jooq.examples.mysql.sakila.tables.Film.FILM.SPECIAL_FEATURES, value); + } + + /** + * An uncommented item + */ + public java.lang.String getSpecialFeatures() { + return getValue(org.jooq.examples.mysql.sakila.tables.Film.FILM.SPECIAL_FEATURES); + } + + /** + * An uncommented item + */ + public void setLastUpdate(java.sql.Timestamp value) { + setValue(org.jooq.examples.mysql.sakila.tables.Film.FILM.LAST_UPDATE, value); + } + + /** + * An uncommented item + */ + public java.sql.Timestamp getLastUpdate() { + return getValue(org.jooq.examples.mysql.sakila.tables.Film.FILM.LAST_UPDATE); + } + + /** + * Create a detached FilmRecord + */ + public FilmRecord() { + super(org.jooq.examples.mysql.sakila.tables.Film.FILM); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/mysql/sakila/tables/records/FilmTextRecord.java b/jOOQ-test/examples/org/jooq/examples/mysql/sakila/tables/records/FilmTextRecord.java new file mode 100644 index 00000000000..72b4264a786 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/mysql/sakila/tables/records/FilmTextRecord.java @@ -0,0 +1,65 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.mysql.sakila.tables.records; + +/** + * This class is generated by jOOQ. + */ +public class FilmTextRecord extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = 2128418409; + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setFilmId(java.lang.Short value) { + setValue(org.jooq.examples.mysql.sakila.tables.FilmText.FILM_TEXT.FILM_ID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.lang.Short getFilmId() { + return getValue(org.jooq.examples.mysql.sakila.tables.FilmText.FILM_TEXT.FILM_ID); + } + + /** + * An uncommented item + */ + public void setTitle(java.lang.String value) { + setValue(org.jooq.examples.mysql.sakila.tables.FilmText.FILM_TEXT.TITLE, value); + } + + /** + * An uncommented item + */ + public java.lang.String getTitle() { + return getValue(org.jooq.examples.mysql.sakila.tables.FilmText.FILM_TEXT.TITLE); + } + + /** + * An uncommented item + */ + public void setDescription(java.lang.String value) { + setValue(org.jooq.examples.mysql.sakila.tables.FilmText.FILM_TEXT.DESCRIPTION, value); + } + + /** + * An uncommented item + */ + public java.lang.String getDescription() { + return getValue(org.jooq.examples.mysql.sakila.tables.FilmText.FILM_TEXT.DESCRIPTION); + } + + /** + * Create a detached FilmTextRecord + */ + public FilmTextRecord() { + super(org.jooq.examples.mysql.sakila.tables.FilmText.FILM_TEXT); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/mysql/sakila/tables/records/InventoryRecord.java b/jOOQ-test/examples/org/jooq/examples/mysql/sakila/tables/records/InventoryRecord.java new file mode 100644 index 00000000000..e3f876b01c5 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/mysql/sakila/tables/records/InventoryRecord.java @@ -0,0 +1,147 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.mysql.sakila.tables.records; + +/** + * This class is generated by jOOQ. + */ +public class InventoryRecord extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = 2040732694; + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setInventoryId(java.lang.Integer value) { + setValue(org.jooq.examples.mysql.sakila.tables.Inventory.INVENTORY.INVENTORY_ID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.lang.Integer getInventoryId() { + return getValue(org.jooq.examples.mysql.sakila.tables.Inventory.INVENTORY.INVENTORY_ID); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.util.List fetchRentalList() { + return create() + .selectFrom(org.jooq.examples.mysql.sakila.tables.Rental.RENTAL) + .where(org.jooq.examples.mysql.sakila.tables.Rental.RENTAL.INVENTORY_ID.equal(getValue(org.jooq.examples.mysql.sakila.tables.Inventory.INVENTORY.INVENTORY_ID))) + .fetch(); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_inventory_film
+	 * FOREIGN KEY (film_id)
+	 * REFERENCES sakila.film (film_id)
+	 * 
+ */ + public void setFilmId(java.lang.Short value) { + setValue(org.jooq.examples.mysql.sakila.tables.Inventory.INVENTORY.FILM_ID, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_inventory_film
+	 * FOREIGN KEY (film_id)
+	 * REFERENCES sakila.film (film_id)
+	 * 
+ */ + public java.lang.Short getFilmId() { + return getValue(org.jooq.examples.mysql.sakila.tables.Inventory.INVENTORY.FILM_ID); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_inventory_film
+	 * FOREIGN KEY (film_id)
+	 * REFERENCES sakila.film (film_id)
+	 * 
+ */ + public org.jooq.examples.mysql.sakila.tables.records.FilmRecord fetchFilm() { + return create() + .selectFrom(org.jooq.examples.mysql.sakila.tables.Film.FILM) + .where(org.jooq.examples.mysql.sakila.tables.Film.FILM.FILM_ID.equal(getValue(org.jooq.examples.mysql.sakila.tables.Inventory.INVENTORY.FILM_ID))) + .fetchOne(); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_inventory_store
+	 * FOREIGN KEY (store_id)
+	 * REFERENCES sakila.store (store_id)
+	 * 
+ */ + public void setStoreId(java.lang.Byte value) { + setValue(org.jooq.examples.mysql.sakila.tables.Inventory.INVENTORY.STORE_ID, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_inventory_store
+	 * FOREIGN KEY (store_id)
+	 * REFERENCES sakila.store (store_id)
+	 * 
+ */ + public java.lang.Byte getStoreId() { + return getValue(org.jooq.examples.mysql.sakila.tables.Inventory.INVENTORY.STORE_ID); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_inventory_store
+	 * FOREIGN KEY (store_id)
+	 * REFERENCES sakila.store (store_id)
+	 * 
+ */ + public org.jooq.examples.mysql.sakila.tables.records.StoreRecord fetchStore() { + return create() + .selectFrom(org.jooq.examples.mysql.sakila.tables.Store.STORE) + .where(org.jooq.examples.mysql.sakila.tables.Store.STORE.STORE_ID.equal(getValue(org.jooq.examples.mysql.sakila.tables.Inventory.INVENTORY.STORE_ID))) + .fetchOne(); + } + + /** + * An uncommented item + */ + public void setLastUpdate(java.sql.Timestamp value) { + setValue(org.jooq.examples.mysql.sakila.tables.Inventory.INVENTORY.LAST_UPDATE, value); + } + + /** + * An uncommented item + */ + public java.sql.Timestamp getLastUpdate() { + return getValue(org.jooq.examples.mysql.sakila.tables.Inventory.INVENTORY.LAST_UPDATE); + } + + /** + * Create a detached InventoryRecord + */ + public InventoryRecord() { + super(org.jooq.examples.mysql.sakila.tables.Inventory.INVENTORY); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/mysql/sakila/tables/records/LanguageRecord.java b/jOOQ-test/examples/org/jooq/examples/mysql/sakila/tables/records/LanguageRecord.java new file mode 100644 index 00000000000..863cdc3d0fc --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/mysql/sakila/tables/records/LanguageRecord.java @@ -0,0 +1,89 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.mysql.sakila.tables.records; + +/** + * This class is generated by jOOQ. + */ +public class LanguageRecord extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = 89181779; + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setLanguageId(java.lang.Byte value) { + setValue(org.jooq.examples.mysql.sakila.tables.Language.LANGUAGE.LANGUAGE_ID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.lang.Byte getLanguageId() { + return getValue(org.jooq.examples.mysql.sakila.tables.Language.LANGUAGE.LANGUAGE_ID); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.util.List fetchFilmListByLanguageId() { + return create() + .selectFrom(org.jooq.examples.mysql.sakila.tables.Film.FILM) + .where(org.jooq.examples.mysql.sakila.tables.Film.FILM.LANGUAGE_ID.equal(getValue(org.jooq.examples.mysql.sakila.tables.Language.LANGUAGE.LANGUAGE_ID))) + .fetch(); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.util.List fetchFilmListByOriginalLanguageId() { + return create() + .selectFrom(org.jooq.examples.mysql.sakila.tables.Film.FILM) + .where(org.jooq.examples.mysql.sakila.tables.Film.FILM.ORIGINAL_LANGUAGE_ID.equal(getValue(org.jooq.examples.mysql.sakila.tables.Language.LANGUAGE.LANGUAGE_ID))) + .fetch(); + } + + /** + * An uncommented item + */ + public void setName(java.lang.String value) { + setValue(org.jooq.examples.mysql.sakila.tables.Language.LANGUAGE.NAME, value); + } + + /** + * An uncommented item + */ + public java.lang.String getName() { + return getValue(org.jooq.examples.mysql.sakila.tables.Language.LANGUAGE.NAME); + } + + /** + * An uncommented item + */ + public void setLastUpdate(java.sql.Timestamp value) { + setValue(org.jooq.examples.mysql.sakila.tables.Language.LANGUAGE.LAST_UPDATE, value); + } + + /** + * An uncommented item + */ + public java.sql.Timestamp getLastUpdate() { + return getValue(org.jooq.examples.mysql.sakila.tables.Language.LANGUAGE.LAST_UPDATE); + } + + /** + * Create a detached LanguageRecord + */ + public LanguageRecord() { + super(org.jooq.examples.mysql.sakila.tables.Language.LANGUAGE); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/mysql/sakila/tables/records/NicerButSlowerFilmListRecord.java b/jOOQ-test/examples/org/jooq/examples/mysql/sakila/tables/records/NicerButSlowerFilmListRecord.java new file mode 100644 index 00000000000..c4f0901a077 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/mysql/sakila/tables/records/NicerButSlowerFilmListRecord.java @@ -0,0 +1,133 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.mysql.sakila.tables.records; + +/** + * This class is generated by jOOQ. + * + * VIEW + */ +public class NicerButSlowerFilmListRecord extends org.jooq.impl.TableRecordImpl { + + private static final long serialVersionUID = 1319278967; + + /** + * An uncommented item + */ + public void setFid(java.lang.Short value) { + setValue(org.jooq.examples.mysql.sakila.tables.NicerButSlowerFilmList.NICER_BUT_SLOWER_FILM_LIST.FID, value); + } + + /** + * An uncommented item + */ + public java.lang.Short getFid() { + return getValue(org.jooq.examples.mysql.sakila.tables.NicerButSlowerFilmList.NICER_BUT_SLOWER_FILM_LIST.FID); + } + + /** + * An uncommented item + */ + public void setTitle(java.lang.String value) { + setValue(org.jooq.examples.mysql.sakila.tables.NicerButSlowerFilmList.NICER_BUT_SLOWER_FILM_LIST.TITLE, value); + } + + /** + * An uncommented item + */ + public java.lang.String getTitle() { + return getValue(org.jooq.examples.mysql.sakila.tables.NicerButSlowerFilmList.NICER_BUT_SLOWER_FILM_LIST.TITLE); + } + + /** + * An uncommented item + */ + public void setDescription(java.lang.String value) { + setValue(org.jooq.examples.mysql.sakila.tables.NicerButSlowerFilmList.NICER_BUT_SLOWER_FILM_LIST.DESCRIPTION, value); + } + + /** + * An uncommented item + */ + public java.lang.String getDescription() { + return getValue(org.jooq.examples.mysql.sakila.tables.NicerButSlowerFilmList.NICER_BUT_SLOWER_FILM_LIST.DESCRIPTION); + } + + /** + * An uncommented item + */ + public void setCategory(java.lang.String value) { + setValue(org.jooq.examples.mysql.sakila.tables.NicerButSlowerFilmList.NICER_BUT_SLOWER_FILM_LIST.CATEGORY, value); + } + + /** + * An uncommented item + */ + public java.lang.String getCategory() { + return getValue(org.jooq.examples.mysql.sakila.tables.NicerButSlowerFilmList.NICER_BUT_SLOWER_FILM_LIST.CATEGORY); + } + + /** + * An uncommented item + */ + public void setPrice(java.math.BigDecimal value) { + setValue(org.jooq.examples.mysql.sakila.tables.NicerButSlowerFilmList.NICER_BUT_SLOWER_FILM_LIST.PRICE, value); + } + + /** + * An uncommented item + */ + public java.math.BigDecimal getPrice() { + return getValue(org.jooq.examples.mysql.sakila.tables.NicerButSlowerFilmList.NICER_BUT_SLOWER_FILM_LIST.PRICE); + } + + /** + * An uncommented item + */ + public void setLength(java.lang.Short value) { + setValue(org.jooq.examples.mysql.sakila.tables.NicerButSlowerFilmList.NICER_BUT_SLOWER_FILM_LIST.LENGTH, value); + } + + /** + * An uncommented item + */ + public java.lang.Short getLength() { + return getValue(org.jooq.examples.mysql.sakila.tables.NicerButSlowerFilmList.NICER_BUT_SLOWER_FILM_LIST.LENGTH); + } + + /** + * An uncommented item + */ + public void setRating(org.jooq.examples.mysql.sakila.enums.NicerButSlowerFilmListRating value) { + setValue(org.jooq.examples.mysql.sakila.tables.NicerButSlowerFilmList.NICER_BUT_SLOWER_FILM_LIST.RATING, value); + } + + /** + * An uncommented item + */ + public org.jooq.examples.mysql.sakila.enums.NicerButSlowerFilmListRating getRating() { + return getValue(org.jooq.examples.mysql.sakila.tables.NicerButSlowerFilmList.NICER_BUT_SLOWER_FILM_LIST.RATING); + } + + /** + * An uncommented item + */ + public void setActors(java.lang.String value) { + setValue(org.jooq.examples.mysql.sakila.tables.NicerButSlowerFilmList.NICER_BUT_SLOWER_FILM_LIST.ACTORS, value); + } + + /** + * An uncommented item + */ + public java.lang.String getActors() { + return getValue(org.jooq.examples.mysql.sakila.tables.NicerButSlowerFilmList.NICER_BUT_SLOWER_FILM_LIST.ACTORS); + } + + /** + * Create a detached NicerButSlowerFilmListRecord + */ + public NicerButSlowerFilmListRecord() { + super(org.jooq.examples.mysql.sakila.tables.NicerButSlowerFilmList.NICER_BUT_SLOWER_FILM_LIST); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/mysql/sakila/tables/records/PaymentRecord.java b/jOOQ-test/examples/org/jooq/examples/mysql/sakila/tables/records/PaymentRecord.java new file mode 100644 index 00000000000..e111b104827 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/mysql/sakila/tables/records/PaymentRecord.java @@ -0,0 +1,205 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.mysql.sakila.tables.records; + +/** + * This class is generated by jOOQ. + */ +public class PaymentRecord extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = 813941489; + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setPaymentId(java.lang.Short value) { + setValue(org.jooq.examples.mysql.sakila.tables.Payment.PAYMENT.PAYMENT_ID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.lang.Short getPaymentId() { + return getValue(org.jooq.examples.mysql.sakila.tables.Payment.PAYMENT.PAYMENT_ID); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_payment_customer
+	 * FOREIGN KEY (customer_id)
+	 * REFERENCES sakila.customer (customer_id)
+	 * 
+ */ + public void setCustomerId(java.lang.Short value) { + setValue(org.jooq.examples.mysql.sakila.tables.Payment.PAYMENT.CUSTOMER_ID, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_payment_customer
+	 * FOREIGN KEY (customer_id)
+	 * REFERENCES sakila.customer (customer_id)
+	 * 
+ */ + public java.lang.Short getCustomerId() { + return getValue(org.jooq.examples.mysql.sakila.tables.Payment.PAYMENT.CUSTOMER_ID); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_payment_customer
+	 * FOREIGN KEY (customer_id)
+	 * REFERENCES sakila.customer (customer_id)
+	 * 
+ */ + public org.jooq.examples.mysql.sakila.tables.records.CustomerRecord fetchCustomer() { + return create() + .selectFrom(org.jooq.examples.mysql.sakila.tables.Customer.CUSTOMER) + .where(org.jooq.examples.mysql.sakila.tables.Customer.CUSTOMER.CUSTOMER_ID.equal(getValue(org.jooq.examples.mysql.sakila.tables.Payment.PAYMENT.CUSTOMER_ID))) + .fetchOne(); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_payment_staff
+	 * FOREIGN KEY (staff_id)
+	 * REFERENCES sakila.staff (staff_id)
+	 * 
+ */ + public void setStaffId(java.lang.Byte value) { + setValue(org.jooq.examples.mysql.sakila.tables.Payment.PAYMENT.STAFF_ID, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_payment_staff
+	 * FOREIGN KEY (staff_id)
+	 * REFERENCES sakila.staff (staff_id)
+	 * 
+ */ + public java.lang.Byte getStaffId() { + return getValue(org.jooq.examples.mysql.sakila.tables.Payment.PAYMENT.STAFF_ID); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_payment_staff
+	 * FOREIGN KEY (staff_id)
+	 * REFERENCES sakila.staff (staff_id)
+	 * 
+ */ + public org.jooq.examples.mysql.sakila.tables.records.StaffRecord fetchStaff() { + return create() + .selectFrom(org.jooq.examples.mysql.sakila.tables.Staff.STAFF) + .where(org.jooq.examples.mysql.sakila.tables.Staff.STAFF.STAFF_ID.equal(getValue(org.jooq.examples.mysql.sakila.tables.Payment.PAYMENT.STAFF_ID))) + .fetchOne(); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_payment_rental
+	 * FOREIGN KEY (rental_id)
+	 * REFERENCES sakila.rental (rental_id)
+	 * 
+ */ + public void setRentalId(java.lang.Integer value) { + setValue(org.jooq.examples.mysql.sakila.tables.Payment.PAYMENT.RENTAL_ID, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_payment_rental
+	 * FOREIGN KEY (rental_id)
+	 * REFERENCES sakila.rental (rental_id)
+	 * 
+ */ + public java.lang.Integer getRentalId() { + return getValue(org.jooq.examples.mysql.sakila.tables.Payment.PAYMENT.RENTAL_ID); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_payment_rental
+	 * FOREIGN KEY (rental_id)
+	 * REFERENCES sakila.rental (rental_id)
+	 * 
+ */ + public org.jooq.examples.mysql.sakila.tables.records.RentalRecord fetchRental() { + return create() + .selectFrom(org.jooq.examples.mysql.sakila.tables.Rental.RENTAL) + .where(org.jooq.examples.mysql.sakila.tables.Rental.RENTAL.RENTAL_ID.equal(getValue(org.jooq.examples.mysql.sakila.tables.Payment.PAYMENT.RENTAL_ID))) + .fetchOne(); + } + + /** + * An uncommented item + */ + public void setAmount(java.math.BigDecimal value) { + setValue(org.jooq.examples.mysql.sakila.tables.Payment.PAYMENT.AMOUNT, value); + } + + /** + * An uncommented item + */ + public java.math.BigDecimal getAmount() { + return getValue(org.jooq.examples.mysql.sakila.tables.Payment.PAYMENT.AMOUNT); + } + + /** + * An uncommented item + */ + public void setPaymentDate(java.sql.Timestamp value) { + setValue(org.jooq.examples.mysql.sakila.tables.Payment.PAYMENT.PAYMENT_DATE, value); + } + + /** + * An uncommented item + */ + public java.sql.Timestamp getPaymentDate() { + return getValue(org.jooq.examples.mysql.sakila.tables.Payment.PAYMENT.PAYMENT_DATE); + } + + /** + * An uncommented item + */ + public void setLastUpdate(java.sql.Timestamp value) { + setValue(org.jooq.examples.mysql.sakila.tables.Payment.PAYMENT.LAST_UPDATE, value); + } + + /** + * An uncommented item + */ + public java.sql.Timestamp getLastUpdate() { + return getValue(org.jooq.examples.mysql.sakila.tables.Payment.PAYMENT.LAST_UPDATE); + } + + /** + * Create a detached PaymentRecord + */ + public PaymentRecord() { + super(org.jooq.examples.mysql.sakila.tables.Payment.PAYMENT); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/mysql/sakila/tables/records/RentalRecord.java b/jOOQ-test/examples/org/jooq/examples/mysql/sakila/tables/records/RentalRecord.java new file mode 100644 index 00000000000..7010484136f --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/mysql/sakila/tables/records/RentalRecord.java @@ -0,0 +1,217 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.mysql.sakila.tables.records; + +/** + * This class is generated by jOOQ. + */ +public class RentalRecord extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = -1861584637; + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setRentalId(java.lang.Integer value) { + setValue(org.jooq.examples.mysql.sakila.tables.Rental.RENTAL.RENTAL_ID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.lang.Integer getRentalId() { + return getValue(org.jooq.examples.mysql.sakila.tables.Rental.RENTAL.RENTAL_ID); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.util.List fetchPaymentList() { + return create() + .selectFrom(org.jooq.examples.mysql.sakila.tables.Payment.PAYMENT) + .where(org.jooq.examples.mysql.sakila.tables.Payment.PAYMENT.RENTAL_ID.equal(getValue(org.jooq.examples.mysql.sakila.tables.Rental.RENTAL.RENTAL_ID))) + .fetch(); + } + + /** + * An uncommented item + */ + public void setRentalDate(java.sql.Timestamp value) { + setValue(org.jooq.examples.mysql.sakila.tables.Rental.RENTAL.RENTAL_DATE, value); + } + + /** + * An uncommented item + */ + public java.sql.Timestamp getRentalDate() { + return getValue(org.jooq.examples.mysql.sakila.tables.Rental.RENTAL.RENTAL_DATE); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_rental_inventory
+	 * FOREIGN KEY (inventory_id)
+	 * REFERENCES sakila.inventory (inventory_id)
+	 * 
+ */ + public void setInventoryId(java.lang.Integer value) { + setValue(org.jooq.examples.mysql.sakila.tables.Rental.RENTAL.INVENTORY_ID, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_rental_inventory
+	 * FOREIGN KEY (inventory_id)
+	 * REFERENCES sakila.inventory (inventory_id)
+	 * 
+ */ + public java.lang.Integer getInventoryId() { + return getValue(org.jooq.examples.mysql.sakila.tables.Rental.RENTAL.INVENTORY_ID); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_rental_inventory
+	 * FOREIGN KEY (inventory_id)
+	 * REFERENCES sakila.inventory (inventory_id)
+	 * 
+ */ + public org.jooq.examples.mysql.sakila.tables.records.InventoryRecord fetchInventory() { + return create() + .selectFrom(org.jooq.examples.mysql.sakila.tables.Inventory.INVENTORY) + .where(org.jooq.examples.mysql.sakila.tables.Inventory.INVENTORY.INVENTORY_ID.equal(getValue(org.jooq.examples.mysql.sakila.tables.Rental.RENTAL.INVENTORY_ID))) + .fetchOne(); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_rental_customer
+	 * FOREIGN KEY (customer_id)
+	 * REFERENCES sakila.customer (customer_id)
+	 * 
+ */ + public void setCustomerId(java.lang.Short value) { + setValue(org.jooq.examples.mysql.sakila.tables.Rental.RENTAL.CUSTOMER_ID, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_rental_customer
+	 * FOREIGN KEY (customer_id)
+	 * REFERENCES sakila.customer (customer_id)
+	 * 
+ */ + public java.lang.Short getCustomerId() { + return getValue(org.jooq.examples.mysql.sakila.tables.Rental.RENTAL.CUSTOMER_ID); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_rental_customer
+	 * FOREIGN KEY (customer_id)
+	 * REFERENCES sakila.customer (customer_id)
+	 * 
+ */ + public org.jooq.examples.mysql.sakila.tables.records.CustomerRecord fetchCustomer() { + return create() + .selectFrom(org.jooq.examples.mysql.sakila.tables.Customer.CUSTOMER) + .where(org.jooq.examples.mysql.sakila.tables.Customer.CUSTOMER.CUSTOMER_ID.equal(getValue(org.jooq.examples.mysql.sakila.tables.Rental.RENTAL.CUSTOMER_ID))) + .fetchOne(); + } + + /** + * An uncommented item + */ + public void setReturnDate(java.sql.Timestamp value) { + setValue(org.jooq.examples.mysql.sakila.tables.Rental.RENTAL.RETURN_DATE, value); + } + + /** + * An uncommented item + */ + public java.sql.Timestamp getReturnDate() { + return getValue(org.jooq.examples.mysql.sakila.tables.Rental.RENTAL.RETURN_DATE); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_rental_staff
+	 * FOREIGN KEY (staff_id)
+	 * REFERENCES sakila.staff (staff_id)
+	 * 
+ */ + public void setStaffId(java.lang.Byte value) { + setValue(org.jooq.examples.mysql.sakila.tables.Rental.RENTAL.STAFF_ID, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_rental_staff
+	 * FOREIGN KEY (staff_id)
+	 * REFERENCES sakila.staff (staff_id)
+	 * 
+ */ + public java.lang.Byte getStaffId() { + return getValue(org.jooq.examples.mysql.sakila.tables.Rental.RENTAL.STAFF_ID); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_rental_staff
+	 * FOREIGN KEY (staff_id)
+	 * REFERENCES sakila.staff (staff_id)
+	 * 
+ */ + public org.jooq.examples.mysql.sakila.tables.records.StaffRecord fetchStaff() { + return create() + .selectFrom(org.jooq.examples.mysql.sakila.tables.Staff.STAFF) + .where(org.jooq.examples.mysql.sakila.tables.Staff.STAFF.STAFF_ID.equal(getValue(org.jooq.examples.mysql.sakila.tables.Rental.RENTAL.STAFF_ID))) + .fetchOne(); + } + + /** + * An uncommented item + */ + public void setLastUpdate(java.sql.Timestamp value) { + setValue(org.jooq.examples.mysql.sakila.tables.Rental.RENTAL.LAST_UPDATE, value); + } + + /** + * An uncommented item + */ + public java.sql.Timestamp getLastUpdate() { + return getValue(org.jooq.examples.mysql.sakila.tables.Rental.RENTAL.LAST_UPDATE); + } + + /** + * Create a detached RentalRecord + */ + public RentalRecord() { + super(org.jooq.examples.mysql.sakila.tables.Rental.RENTAL); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/mysql/sakila/tables/records/SalesByFilmCategoryRecord.java b/jOOQ-test/examples/org/jooq/examples/mysql/sakila/tables/records/SalesByFilmCategoryRecord.java new file mode 100644 index 00000000000..e4c9e62c0ef --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/mysql/sakila/tables/records/SalesByFilmCategoryRecord.java @@ -0,0 +1,49 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.mysql.sakila.tables.records; + +/** + * This class is generated by jOOQ. + * + * VIEW + */ +public class SalesByFilmCategoryRecord extends org.jooq.impl.TableRecordImpl { + + private static final long serialVersionUID = -1561919436; + + /** + * An uncommented item + */ + public void setCategory(java.lang.String value) { + setValue(org.jooq.examples.mysql.sakila.tables.SalesByFilmCategory.SALES_BY_FILM_CATEGORY.CATEGORY, value); + } + + /** + * An uncommented item + */ + public java.lang.String getCategory() { + return getValue(org.jooq.examples.mysql.sakila.tables.SalesByFilmCategory.SALES_BY_FILM_CATEGORY.CATEGORY); + } + + /** + * An uncommented item + */ + public void setTotalSales(java.math.BigDecimal value) { + setValue(org.jooq.examples.mysql.sakila.tables.SalesByFilmCategory.SALES_BY_FILM_CATEGORY.TOTAL_SALES, value); + } + + /** + * An uncommented item + */ + public java.math.BigDecimal getTotalSales() { + return getValue(org.jooq.examples.mysql.sakila.tables.SalesByFilmCategory.SALES_BY_FILM_CATEGORY.TOTAL_SALES); + } + + /** + * Create a detached SalesByFilmCategoryRecord + */ + public SalesByFilmCategoryRecord() { + super(org.jooq.examples.mysql.sakila.tables.SalesByFilmCategory.SALES_BY_FILM_CATEGORY); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/mysql/sakila/tables/records/SalesByStoreRecord.java b/jOOQ-test/examples/org/jooq/examples/mysql/sakila/tables/records/SalesByStoreRecord.java new file mode 100644 index 00000000000..047365eeea1 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/mysql/sakila/tables/records/SalesByStoreRecord.java @@ -0,0 +1,63 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.mysql.sakila.tables.records; + +/** + * This class is generated by jOOQ. + * + * VIEW + */ +public class SalesByStoreRecord extends org.jooq.impl.TableRecordImpl { + + private static final long serialVersionUID = 280065501; + + /** + * An uncommented item + */ + public void setStore(java.lang.String value) { + setValue(org.jooq.examples.mysql.sakila.tables.SalesByStore.SALES_BY_STORE.STORE, value); + } + + /** + * An uncommented item + */ + public java.lang.String getStore() { + return getValue(org.jooq.examples.mysql.sakila.tables.SalesByStore.SALES_BY_STORE.STORE); + } + + /** + * An uncommented item + */ + public void setManager(java.lang.String value) { + setValue(org.jooq.examples.mysql.sakila.tables.SalesByStore.SALES_BY_STORE.MANAGER, value); + } + + /** + * An uncommented item + */ + public java.lang.String getManager() { + return getValue(org.jooq.examples.mysql.sakila.tables.SalesByStore.SALES_BY_STORE.MANAGER); + } + + /** + * An uncommented item + */ + public void setTotalSales(java.math.BigDecimal value) { + setValue(org.jooq.examples.mysql.sakila.tables.SalesByStore.SALES_BY_STORE.TOTAL_SALES, value); + } + + /** + * An uncommented item + */ + public java.math.BigDecimal getTotalSales() { + return getValue(org.jooq.examples.mysql.sakila.tables.SalesByStore.SALES_BY_STORE.TOTAL_SALES); + } + + /** + * Create a detached SalesByStoreRecord + */ + public SalesByStoreRecord() { + super(org.jooq.examples.mysql.sakila.tables.SalesByStore.SALES_BY_STORE); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/mysql/sakila/tables/records/StaffListRecord.java b/jOOQ-test/examples/org/jooq/examples/mysql/sakila/tables/records/StaffListRecord.java new file mode 100644 index 00000000000..5e90b2de650 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/mysql/sakila/tables/records/StaffListRecord.java @@ -0,0 +1,133 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.mysql.sakila.tables.records; + +/** + * This class is generated by jOOQ. + * + * VIEW + */ +public class StaffListRecord extends org.jooq.impl.TableRecordImpl { + + private static final long serialVersionUID = -175503462; + + /** + * An uncommented item + */ + public void setId(java.lang.Byte value) { + setValue(org.jooq.examples.mysql.sakila.tables.StaffList.STAFF_LIST.ID, value); + } + + /** + * An uncommented item + */ + public java.lang.Byte getId() { + return getValue(org.jooq.examples.mysql.sakila.tables.StaffList.STAFF_LIST.ID); + } + + /** + * An uncommented item + */ + public void setName(java.lang.String value) { + setValue(org.jooq.examples.mysql.sakila.tables.StaffList.STAFF_LIST.NAME, value); + } + + /** + * An uncommented item + */ + public java.lang.String getName() { + return getValue(org.jooq.examples.mysql.sakila.tables.StaffList.STAFF_LIST.NAME); + } + + /** + * An uncommented item + */ + public void setAddress(java.lang.String value) { + setValue(org.jooq.examples.mysql.sakila.tables.StaffList.STAFF_LIST.ADDRESS, value); + } + + /** + * An uncommented item + */ + public java.lang.String getAddress() { + return getValue(org.jooq.examples.mysql.sakila.tables.StaffList.STAFF_LIST.ADDRESS); + } + + /** + * An uncommented item + */ + public void setZipCode(java.lang.String value) { + setValue(org.jooq.examples.mysql.sakila.tables.StaffList.STAFF_LIST.ZIP_CODE, value); + } + + /** + * An uncommented item + */ + public java.lang.String getZipCode() { + return getValue(org.jooq.examples.mysql.sakila.tables.StaffList.STAFF_LIST.ZIP_CODE); + } + + /** + * An uncommented item + */ + public void setPhone(java.lang.String value) { + setValue(org.jooq.examples.mysql.sakila.tables.StaffList.STAFF_LIST.PHONE, value); + } + + /** + * An uncommented item + */ + public java.lang.String getPhone() { + return getValue(org.jooq.examples.mysql.sakila.tables.StaffList.STAFF_LIST.PHONE); + } + + /** + * An uncommented item + */ + public void setCity(java.lang.String value) { + setValue(org.jooq.examples.mysql.sakila.tables.StaffList.STAFF_LIST.CITY, value); + } + + /** + * An uncommented item + */ + public java.lang.String getCity() { + return getValue(org.jooq.examples.mysql.sakila.tables.StaffList.STAFF_LIST.CITY); + } + + /** + * An uncommented item + */ + public void setCountry(java.lang.String value) { + setValue(org.jooq.examples.mysql.sakila.tables.StaffList.STAFF_LIST.COUNTRY, value); + } + + /** + * An uncommented item + */ + public java.lang.String getCountry() { + return getValue(org.jooq.examples.mysql.sakila.tables.StaffList.STAFF_LIST.COUNTRY); + } + + /** + * An uncommented item + */ + public void setSid(java.lang.Byte value) { + setValue(org.jooq.examples.mysql.sakila.tables.StaffList.STAFF_LIST.SID, value); + } + + /** + * An uncommented item + */ + public java.lang.Byte getSid() { + return getValue(org.jooq.examples.mysql.sakila.tables.StaffList.STAFF_LIST.SID); + } + + /** + * Create a detached StaffListRecord + */ + public StaffListRecord() { + super(org.jooq.examples.mysql.sakila.tables.StaffList.STAFF_LIST); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/mysql/sakila/tables/records/StaffRecord.java b/jOOQ-test/examples/org/jooq/examples/mysql/sakila/tables/records/StaffRecord.java new file mode 100644 index 00000000000..628cd20751a --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/mysql/sakila/tables/records/StaffRecord.java @@ -0,0 +1,269 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.mysql.sakila.tables.records; + +/** + * This class is generated by jOOQ. + */ +public class StaffRecord extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = -947198494; + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setStaffId(java.lang.Byte value) { + setValue(org.jooq.examples.mysql.sakila.tables.Staff.STAFF.STAFF_ID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.lang.Byte getStaffId() { + return getValue(org.jooq.examples.mysql.sakila.tables.Staff.STAFF.STAFF_ID); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.util.List fetchPaymentList() { + return create() + .selectFrom(org.jooq.examples.mysql.sakila.tables.Payment.PAYMENT) + .where(org.jooq.examples.mysql.sakila.tables.Payment.PAYMENT.STAFF_ID.equal(getValue(org.jooq.examples.mysql.sakila.tables.Staff.STAFF.STAFF_ID))) + .fetch(); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.util.List fetchRentalList() { + return create() + .selectFrom(org.jooq.examples.mysql.sakila.tables.Rental.RENTAL) + .where(org.jooq.examples.mysql.sakila.tables.Rental.RENTAL.STAFF_ID.equal(getValue(org.jooq.examples.mysql.sakila.tables.Staff.STAFF.STAFF_ID))) + .fetch(); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.util.List fetchStoreList() { + return create() + .selectFrom(org.jooq.examples.mysql.sakila.tables.Store.STORE) + .where(org.jooq.examples.mysql.sakila.tables.Store.STORE.MANAGER_STAFF_ID.equal(getValue(org.jooq.examples.mysql.sakila.tables.Staff.STAFF.STAFF_ID))) + .fetch(); + } + + /** + * An uncommented item + */ + public void setFirstName(java.lang.String value) { + setValue(org.jooq.examples.mysql.sakila.tables.Staff.STAFF.FIRST_NAME, value); + } + + /** + * An uncommented item + */ + public java.lang.String getFirstName() { + return getValue(org.jooq.examples.mysql.sakila.tables.Staff.STAFF.FIRST_NAME); + } + + /** + * An uncommented item + */ + public void setLastName(java.lang.String value) { + setValue(org.jooq.examples.mysql.sakila.tables.Staff.STAFF.LAST_NAME, value); + } + + /** + * An uncommented item + */ + public java.lang.String getLastName() { + return getValue(org.jooq.examples.mysql.sakila.tables.Staff.STAFF.LAST_NAME); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_staff_address
+	 * FOREIGN KEY (address_id)
+	 * REFERENCES sakila.address (address_id)
+	 * 
+ */ + public void setAddressId(java.lang.Short value) { + setValue(org.jooq.examples.mysql.sakila.tables.Staff.STAFF.ADDRESS_ID, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_staff_address
+	 * FOREIGN KEY (address_id)
+	 * REFERENCES sakila.address (address_id)
+	 * 
+ */ + public java.lang.Short getAddressId() { + return getValue(org.jooq.examples.mysql.sakila.tables.Staff.STAFF.ADDRESS_ID); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_staff_address
+	 * FOREIGN KEY (address_id)
+	 * REFERENCES sakila.address (address_id)
+	 * 
+ */ + public org.jooq.examples.mysql.sakila.tables.records.AddressRecord fetchAddress() { + return create() + .selectFrom(org.jooq.examples.mysql.sakila.tables.Address.ADDRESS) + .where(org.jooq.examples.mysql.sakila.tables.Address.ADDRESS.ADDRESS_ID.equal(getValue(org.jooq.examples.mysql.sakila.tables.Staff.STAFF.ADDRESS_ID))) + .fetchOne(); + } + + /** + * An uncommented item + */ + public void setPicture(byte[] value) { + setValue(org.jooq.examples.mysql.sakila.tables.Staff.STAFF.PICTURE, value); + } + + /** + * An uncommented item + */ + public byte[] getPicture() { + return getValue(org.jooq.examples.mysql.sakila.tables.Staff.STAFF.PICTURE); + } + + /** + * An uncommented item + */ + public void setEmail(java.lang.String value) { + setValue(org.jooq.examples.mysql.sakila.tables.Staff.STAFF.EMAIL, value); + } + + /** + * An uncommented item + */ + public java.lang.String getEmail() { + return getValue(org.jooq.examples.mysql.sakila.tables.Staff.STAFF.EMAIL); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_staff_store
+	 * FOREIGN KEY (store_id)
+	 * REFERENCES sakila.store (store_id)
+	 * 
+ */ + public void setStoreId(java.lang.Byte value) { + setValue(org.jooq.examples.mysql.sakila.tables.Staff.STAFF.STORE_ID, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_staff_store
+	 * FOREIGN KEY (store_id)
+	 * REFERENCES sakila.store (store_id)
+	 * 
+ */ + public java.lang.Byte getStoreId() { + return getValue(org.jooq.examples.mysql.sakila.tables.Staff.STAFF.STORE_ID); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_staff_store
+	 * FOREIGN KEY (store_id)
+	 * REFERENCES sakila.store (store_id)
+	 * 
+ */ + public org.jooq.examples.mysql.sakila.tables.records.StoreRecord fetchStore() { + return create() + .selectFrom(org.jooq.examples.mysql.sakila.tables.Store.STORE) + .where(org.jooq.examples.mysql.sakila.tables.Store.STORE.STORE_ID.equal(getValue(org.jooq.examples.mysql.sakila.tables.Staff.STAFF.STORE_ID))) + .fetchOne(); + } + + /** + * An uncommented item + */ + public void setActive(java.lang.Byte value) { + setValue(org.jooq.examples.mysql.sakila.tables.Staff.STAFF.ACTIVE, value); + } + + /** + * An uncommented item + */ + public java.lang.Byte getActive() { + return getValue(org.jooq.examples.mysql.sakila.tables.Staff.STAFF.ACTIVE); + } + + /** + * An uncommented item + */ + public void setUsername(java.lang.String value) { + setValue(org.jooq.examples.mysql.sakila.tables.Staff.STAFF.USERNAME, value); + } + + /** + * An uncommented item + */ + public java.lang.String getUsername() { + return getValue(org.jooq.examples.mysql.sakila.tables.Staff.STAFF.USERNAME); + } + + /** + * An uncommented item + */ + public void setPassword(java.lang.String value) { + setValue(org.jooq.examples.mysql.sakila.tables.Staff.STAFF.PASSWORD, value); + } + + /** + * An uncommented item + */ + public java.lang.String getPassword() { + return getValue(org.jooq.examples.mysql.sakila.tables.Staff.STAFF.PASSWORD); + } + + /** + * An uncommented item + */ + public void setLastUpdate(java.sql.Timestamp value) { + setValue(org.jooq.examples.mysql.sakila.tables.Staff.STAFF.LAST_UPDATE, value); + } + + /** + * An uncommented item + */ + public java.sql.Timestamp getLastUpdate() { + return getValue(org.jooq.examples.mysql.sakila.tables.Staff.STAFF.LAST_UPDATE); + } + + /** + * Create a detached StaffRecord + */ + public StaffRecord() { + super(org.jooq.examples.mysql.sakila.tables.Staff.STAFF); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/mysql/sakila/tables/records/StoreRecord.java b/jOOQ-test/examples/org/jooq/examples/mysql/sakila/tables/records/StoreRecord.java new file mode 100644 index 00000000000..06e6c663d93 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/mysql/sakila/tables/records/StoreRecord.java @@ -0,0 +1,171 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.mysql.sakila.tables.records; + +/** + * This class is generated by jOOQ. + */ +public class StoreRecord extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = -1695055916; + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setStoreId(java.lang.Byte value) { + setValue(org.jooq.examples.mysql.sakila.tables.Store.STORE.STORE_ID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.lang.Byte getStoreId() { + return getValue(org.jooq.examples.mysql.sakila.tables.Store.STORE.STORE_ID); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.util.List fetchCustomerList() { + return create() + .selectFrom(org.jooq.examples.mysql.sakila.tables.Customer.CUSTOMER) + .where(org.jooq.examples.mysql.sakila.tables.Customer.CUSTOMER.STORE_ID.equal(getValue(org.jooq.examples.mysql.sakila.tables.Store.STORE.STORE_ID))) + .fetch(); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.util.List fetchInventoryList() { + return create() + .selectFrom(org.jooq.examples.mysql.sakila.tables.Inventory.INVENTORY) + .where(org.jooq.examples.mysql.sakila.tables.Inventory.INVENTORY.STORE_ID.equal(getValue(org.jooq.examples.mysql.sakila.tables.Store.STORE.STORE_ID))) + .fetch(); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.util.List fetchStaffList() { + return create() + .selectFrom(org.jooq.examples.mysql.sakila.tables.Staff.STAFF) + .where(org.jooq.examples.mysql.sakila.tables.Staff.STAFF.STORE_ID.equal(getValue(org.jooq.examples.mysql.sakila.tables.Store.STORE.STORE_ID))) + .fetch(); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_store_staff
+	 * FOREIGN KEY (manager_staff_id)
+	 * REFERENCES sakila.staff (staff_id)
+	 * 
+ */ + public void setManagerStaffId(java.lang.Byte value) { + setValue(org.jooq.examples.mysql.sakila.tables.Store.STORE.MANAGER_STAFF_ID, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_store_staff
+	 * FOREIGN KEY (manager_staff_id)
+	 * REFERENCES sakila.staff (staff_id)
+	 * 
+ */ + public java.lang.Byte getManagerStaffId() { + return getValue(org.jooq.examples.mysql.sakila.tables.Store.STORE.MANAGER_STAFF_ID); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_store_staff
+	 * FOREIGN KEY (manager_staff_id)
+	 * REFERENCES sakila.staff (staff_id)
+	 * 
+ */ + public org.jooq.examples.mysql.sakila.tables.records.StaffRecord fetchStaff() { + return create() + .selectFrom(org.jooq.examples.mysql.sakila.tables.Staff.STAFF) + .where(org.jooq.examples.mysql.sakila.tables.Staff.STAFF.STAFF_ID.equal(getValue(org.jooq.examples.mysql.sakila.tables.Store.STORE.MANAGER_STAFF_ID))) + .fetchOne(); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_store_address
+	 * FOREIGN KEY (address_id)
+	 * REFERENCES sakila.address (address_id)
+	 * 
+ */ + public void setAddressId(java.lang.Short value) { + setValue(org.jooq.examples.mysql.sakila.tables.Store.STORE.ADDRESS_ID, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_store_address
+	 * FOREIGN KEY (address_id)
+	 * REFERENCES sakila.address (address_id)
+	 * 
+ */ + public java.lang.Short getAddressId() { + return getValue(org.jooq.examples.mysql.sakila.tables.Store.STORE.ADDRESS_ID); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_store_address
+	 * FOREIGN KEY (address_id)
+	 * REFERENCES sakila.address (address_id)
+	 * 
+ */ + public org.jooq.examples.mysql.sakila.tables.records.AddressRecord fetchAddress() { + return create() + .selectFrom(org.jooq.examples.mysql.sakila.tables.Address.ADDRESS) + .where(org.jooq.examples.mysql.sakila.tables.Address.ADDRESS.ADDRESS_ID.equal(getValue(org.jooq.examples.mysql.sakila.tables.Store.STORE.ADDRESS_ID))) + .fetchOne(); + } + + /** + * An uncommented item + */ + public void setLastUpdate(java.sql.Timestamp value) { + setValue(org.jooq.examples.mysql.sakila.tables.Store.STORE.LAST_UPDATE, value); + } + + /** + * An uncommented item + */ + public java.sql.Timestamp getLastUpdate() { + return getValue(org.jooq.examples.mysql.sakila.tables.Store.STORE.LAST_UPDATE); + } + + /** + * Create a detached StoreRecord + */ + public StoreRecord() { + super(org.jooq.examples.mysql.sakila.tables.Store.STORE); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/oracle/sys/Sys.java b/jOOQ-test/examples/org/jooq/examples/oracle/sys/Sys.java new file mode 100644 index 00000000000..9615f7dcaa3 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/oracle/sys/Sys.java @@ -0,0 +1,36 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.oracle.sys; + +/** + * This class is generated by jOOQ. + */ +public class Sys extends org.jooq.impl.SchemaImpl { + + private static final long serialVersionUID = 2134291205; + + /** + * The singleton instance of SYS + */ + public static final Sys SYS = new Sys(); + + /** + * No further instances allowed + */ + private Sys() { + super("SYS"); + } + + /* + * instance initialiser + */ + { + addMapping("SYS.DBMS_XPLAN_TYPE", org.jooq.examples.oracle.sys.udt.records.DbmsXplanTypeRecord.class); + } + + @Override + public final java.util.List> getUDTs() { + return java.util.Arrays.>asList(org.jooq.examples.oracle.sys.udt.DbmsXplanType.DBMS_XPLAN_TYPE); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/oracle/sys/SysFactory.java b/jOOQ-test/examples/org/jooq/examples/oracle/sys/SysFactory.java new file mode 100644 index 00000000000..18e4e165145 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/oracle/sys/SysFactory.java @@ -0,0 +1,31 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.oracle.sys; + +/** + * This class is generated by jOOQ. + */ +public class SysFactory extends org.jooq.util.oracle.OracleFactory { + + private static final long serialVersionUID = 891220555; + + /** + * Create a factory with a connection + * + * @param connection The connection to use with objects created from this factory + */ + public SysFactory(java.sql.Connection connection) { + super(connection); + } + + /** + * Create a factory with a connection and some settings + * + * @param connection The connection to use with objects created from this factory + * @param settings The settings to apply to objects created from this factory + */ + public SysFactory(java.sql.Connection connection, org.jooq.conf.Settings settings) { + super(connection, settings); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/oracle/sys/UDTs.java b/jOOQ-test/examples/org/jooq/examples/oracle/sys/UDTs.java new file mode 100644 index 00000000000..87258f5d7c5 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/oracle/sys/UDTs.java @@ -0,0 +1,22 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.oracle.sys; + +/** + * This class is generated by jOOQ. + * + * Convenience access to all UDTs in SYS + */ +public final class UDTs { + + /** + * The type SYS.DBMS_XPLAN_TYPE + */ + public static org.jooq.examples.oracle.sys.udt.DbmsXplanType DBMS_XPLAN_TYPE = org.jooq.examples.oracle.sys.udt.DbmsXplanType.DBMS_XPLAN_TYPE; + + /** + * No instances + */ + private UDTs() {} +} diff --git a/jOOQ-test/examples/org/jooq/examples/oracle/sys/packages/DbmsXplan.java b/jOOQ-test/examples/org/jooq/examples/oracle/sys/packages/DbmsXplan.java new file mode 100644 index 00000000000..b87c8a8e667 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/oracle/sys/packages/DbmsXplan.java @@ -0,0 +1,1025 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.oracle.sys.packages; + +/** + * This class is generated by jOOQ. + * + * Convenience access to all stored procedures and functions in DBMS_XPLAN + */ +public final class DbmsXplan extends org.jooq.impl.PackageImpl { + + private static final long serialVersionUID = -1584769552; + + /** + * The singleton instance of SYS.DBMS_XPLAN + */ + public static final org.jooq.examples.oracle.sys.packages.DbmsXplan DBMS_XPLAN = new org.jooq.examples.oracle.sys.packages.DbmsXplan(); + + /** + * Call SYS.DBMS_XPLAN.BUILD_PLAN_XML + * + * @param tableName + * @param statementId + * @param planId + * @param format + * @param filterPreds + * @param planTag + * @param reportRef + * @throws org.jooq.exception.DataAccessException if something went wrong executing the query + */ + public static java.lang.Object buildPlanXml(org.jooq.Configuration configuration, java.lang.String tableName, java.lang.String statementId, java.lang.Number planId, java.lang.String format, java.lang.String filterPreds, java.lang.String planTag, java.lang.String reportRef) { + org.jooq.examples.oracle.sys.packages.dbms_xplan.BuildPlanXml f = new org.jooq.examples.oracle.sys.packages.dbms_xplan.BuildPlanXml(); + f.setTableName(tableName); + f.setStatementId(statementId); + f.setPlanId(planId); + f.setFormat(format); + f.setFilterPreds(filterPreds); + f.setPlanTag(planTag); + f.setReportRef(reportRef); + + f.execute(configuration); + return f.getReturnValue(); + } + + /** + * Get SYS.DBMS_XPLAN.BUILD_PLAN_XML as a field + * + * @param tableName + * @param statementId + * @param planId + * @param format + * @param filterPreds + * @param planTag + * @param reportRef + */ + public static org.jooq.Field buildPlanXml(java.lang.String tableName, java.lang.String statementId, java.lang.Number planId, java.lang.String format, java.lang.String filterPreds, java.lang.String planTag, java.lang.String reportRef) { + org.jooq.examples.oracle.sys.packages.dbms_xplan.BuildPlanXml f = new org.jooq.examples.oracle.sys.packages.dbms_xplan.BuildPlanXml(); + f.setTableName(tableName); + f.setStatementId(statementId); + f.setPlanId(planId); + f.setFormat(format); + f.setFilterPreds(filterPreds); + f.setPlanTag(planTag); + f.setReportRef(reportRef); + + return f.asField(); + } + + /** + * Get SYS.DBMS_XPLAN.BUILD_PLAN_XML as a field + * + * @param tableName + * @param statementId + * @param planId + * @param format + * @param filterPreds + * @param planTag + * @param reportRef + */ + public static org.jooq.Field buildPlanXml(org.jooq.Field tableName, org.jooq.Field statementId, org.jooq.Field planId, org.jooq.Field format, org.jooq.Field filterPreds, org.jooq.Field planTag, org.jooq.Field reportRef) { + org.jooq.examples.oracle.sys.packages.dbms_xplan.BuildPlanXml f = new org.jooq.examples.oracle.sys.packages.dbms_xplan.BuildPlanXml(); + f.setTableName(tableName); + f.setStatementId(statementId); + f.setPlanId(planId); + f.setFormat(format); + f.setFilterPreds(filterPreds); + f.setPlanTag(planTag); + f.setReportRef(reportRef); + + return f.asField(); + } + + /** + * Call SYS.DBMS_XPLAN.DIFF_PLAN + * + * @param sqlText + * @param outline + * @param userName + * @throws org.jooq.exception.DataAccessException if something went wrong executing the query + */ + public static java.lang.String diffPlan(org.jooq.Configuration configuration, java.lang.String sqlText, java.lang.String outline, java.lang.String userName) { + org.jooq.examples.oracle.sys.packages.dbms_xplan.DiffPlan f = new org.jooq.examples.oracle.sys.packages.dbms_xplan.DiffPlan(); + f.setSqlText(sqlText); + f.setOutline(outline); + f.setUserName(userName); + + f.execute(configuration); + return f.getReturnValue(); + } + + /** + * Get SYS.DBMS_XPLAN.DIFF_PLAN as a field + * + * @param sqlText + * @param outline + * @param userName + */ + public static org.jooq.Field diffPlan(java.lang.String sqlText, java.lang.String outline, java.lang.String userName) { + org.jooq.examples.oracle.sys.packages.dbms_xplan.DiffPlan f = new org.jooq.examples.oracle.sys.packages.dbms_xplan.DiffPlan(); + f.setSqlText(sqlText); + f.setOutline(outline); + f.setUserName(userName); + + return f.asField(); + } + + /** + * Get SYS.DBMS_XPLAN.DIFF_PLAN as a field + * + * @param sqlText + * @param outline + * @param userName + */ + public static org.jooq.Field diffPlan(org.jooq.Field sqlText, org.jooq.Field outline, org.jooq.Field userName) { + org.jooq.examples.oracle.sys.packages.dbms_xplan.DiffPlan f = new org.jooq.examples.oracle.sys.packages.dbms_xplan.DiffPlan(); + f.setSqlText(sqlText); + f.setOutline(outline); + f.setUserName(userName); + + return f.asField(); + } + + /** + * Call SYS.DBMS_XPLAN.DIFF_PLAN_AWR + * + * @param sqlId + * @param planHashValue1 + * @param planHashValue2 + * @throws org.jooq.exception.DataAccessException if something went wrong executing the query + */ + public static java.lang.String diffPlanAwr(org.jooq.Configuration configuration, java.lang.String sqlId, java.lang.Number planHashValue1, java.lang.Number planHashValue2) { + org.jooq.examples.oracle.sys.packages.dbms_xplan.DiffPlanAwr f = new org.jooq.examples.oracle.sys.packages.dbms_xplan.DiffPlanAwr(); + f.setSqlId(sqlId); + f.setPlanHashValue1(planHashValue1); + f.setPlanHashValue2(planHashValue2); + + f.execute(configuration); + return f.getReturnValue(); + } + + /** + * Get SYS.DBMS_XPLAN.DIFF_PLAN_AWR as a field + * + * @param sqlId + * @param planHashValue1 + * @param planHashValue2 + */ + public static org.jooq.Field diffPlanAwr(java.lang.String sqlId, java.lang.Number planHashValue1, java.lang.Number planHashValue2) { + org.jooq.examples.oracle.sys.packages.dbms_xplan.DiffPlanAwr f = new org.jooq.examples.oracle.sys.packages.dbms_xplan.DiffPlanAwr(); + f.setSqlId(sqlId); + f.setPlanHashValue1(planHashValue1); + f.setPlanHashValue2(planHashValue2); + + return f.asField(); + } + + /** + * Get SYS.DBMS_XPLAN.DIFF_PLAN_AWR as a field + * + * @param sqlId + * @param planHashValue1 + * @param planHashValue2 + */ + public static org.jooq.Field diffPlanAwr(org.jooq.Field sqlId, org.jooq.Field planHashValue1, org.jooq.Field planHashValue2) { + org.jooq.examples.oracle.sys.packages.dbms_xplan.DiffPlanAwr f = new org.jooq.examples.oracle.sys.packages.dbms_xplan.DiffPlanAwr(); + f.setSqlId(sqlId); + f.setPlanHashValue1(planHashValue1); + f.setPlanHashValue2(planHashValue2); + + return f.asField(); + } + + /** + * Call SYS.DBMS_XPLAN.DIFF_PLAN_CURSOR + * + * @param sqlId + * @param cursorChildNum1 + * @param cursorChildNum2 + * @throws org.jooq.exception.DataAccessException if something went wrong executing the query + */ + public static java.lang.String diffPlanCursor(org.jooq.Configuration configuration, java.lang.String sqlId, java.lang.Number cursorChildNum1, java.lang.Number cursorChildNum2) { + org.jooq.examples.oracle.sys.packages.dbms_xplan.DiffPlanCursor f = new org.jooq.examples.oracle.sys.packages.dbms_xplan.DiffPlanCursor(); + f.setSqlId(sqlId); + f.setCursorChildNum1(cursorChildNum1); + f.setCursorChildNum2(cursorChildNum2); + + f.execute(configuration); + return f.getReturnValue(); + } + + /** + * Get SYS.DBMS_XPLAN.DIFF_PLAN_CURSOR as a field + * + * @param sqlId + * @param cursorChildNum1 + * @param cursorChildNum2 + */ + public static org.jooq.Field diffPlanCursor(java.lang.String sqlId, java.lang.Number cursorChildNum1, java.lang.Number cursorChildNum2) { + org.jooq.examples.oracle.sys.packages.dbms_xplan.DiffPlanCursor f = new org.jooq.examples.oracle.sys.packages.dbms_xplan.DiffPlanCursor(); + f.setSqlId(sqlId); + f.setCursorChildNum1(cursorChildNum1); + f.setCursorChildNum2(cursorChildNum2); + + return f.asField(); + } + + /** + * Get SYS.DBMS_XPLAN.DIFF_PLAN_CURSOR as a field + * + * @param sqlId + * @param cursorChildNum1 + * @param cursorChildNum2 + */ + public static org.jooq.Field diffPlanCursor(org.jooq.Field sqlId, org.jooq.Field cursorChildNum1, org.jooq.Field cursorChildNum2) { + org.jooq.examples.oracle.sys.packages.dbms_xplan.DiffPlanCursor f = new org.jooq.examples.oracle.sys.packages.dbms_xplan.DiffPlanCursor(); + f.setSqlId(sqlId); + f.setCursorChildNum1(cursorChildNum1); + f.setCursorChildNum2(cursorChildNum2); + + return f.asField(); + } + + /** + * Call SYS.DBMS_XPLAN.DIFF_PLAN_OUTLINE + * + * @param sqlText + * @param outline1 + * @param outline2 + * @param userName + * @throws org.jooq.exception.DataAccessException if something went wrong executing the query + */ + public static java.lang.String diffPlanOutline(org.jooq.Configuration configuration, java.lang.String sqlText, java.lang.String outline1, java.lang.String outline2, java.lang.String userName) { + org.jooq.examples.oracle.sys.packages.dbms_xplan.DiffPlanOutline f = new org.jooq.examples.oracle.sys.packages.dbms_xplan.DiffPlanOutline(); + f.setSqlText(sqlText); + f.setOutline1(outline1); + f.setOutline2(outline2); + f.setUserName(userName); + + f.execute(configuration); + return f.getReturnValue(); + } + + /** + * Get SYS.DBMS_XPLAN.DIFF_PLAN_OUTLINE as a field + * + * @param sqlText + * @param outline1 + * @param outline2 + * @param userName + */ + public static org.jooq.Field diffPlanOutline(java.lang.String sqlText, java.lang.String outline1, java.lang.String outline2, java.lang.String userName) { + org.jooq.examples.oracle.sys.packages.dbms_xplan.DiffPlanOutline f = new org.jooq.examples.oracle.sys.packages.dbms_xplan.DiffPlanOutline(); + f.setSqlText(sqlText); + f.setOutline1(outline1); + f.setOutline2(outline2); + f.setUserName(userName); + + return f.asField(); + } + + /** + * Get SYS.DBMS_XPLAN.DIFF_PLAN_OUTLINE as a field + * + * @param sqlText + * @param outline1 + * @param outline2 + * @param userName + */ + public static org.jooq.Field diffPlanOutline(org.jooq.Field sqlText, org.jooq.Field outline1, org.jooq.Field outline2, org.jooq.Field userName) { + org.jooq.examples.oracle.sys.packages.dbms_xplan.DiffPlanOutline f = new org.jooq.examples.oracle.sys.packages.dbms_xplan.DiffPlanOutline(); + f.setSqlText(sqlText); + f.setOutline1(outline1); + f.setOutline2(outline2); + f.setUserName(userName); + + return f.asField(); + } + + /** + * Call SYS.DBMS_XPLAN.DIFF_PLAN_SQL_BASELINE + * + * @param baselinePlanName1 + * @param baselinePlanName2 + * @throws org.jooq.exception.DataAccessException if something went wrong executing the query + */ + public static java.lang.String diffPlanSqlBaseline(org.jooq.Configuration configuration, java.lang.String baselinePlanName1, java.lang.String baselinePlanName2) { + org.jooq.examples.oracle.sys.packages.dbms_xplan.DiffPlanSqlBaseline f = new org.jooq.examples.oracle.sys.packages.dbms_xplan.DiffPlanSqlBaseline(); + f.setBaselinePlanName1(baselinePlanName1); + f.setBaselinePlanName2(baselinePlanName2); + + f.execute(configuration); + return f.getReturnValue(); + } + + /** + * Get SYS.DBMS_XPLAN.DIFF_PLAN_SQL_BASELINE as a field + * + * @param baselinePlanName1 + * @param baselinePlanName2 + */ + public static org.jooq.Field diffPlanSqlBaseline(java.lang.String baselinePlanName1, java.lang.String baselinePlanName2) { + org.jooq.examples.oracle.sys.packages.dbms_xplan.DiffPlanSqlBaseline f = new org.jooq.examples.oracle.sys.packages.dbms_xplan.DiffPlanSqlBaseline(); + f.setBaselinePlanName1(baselinePlanName1); + f.setBaselinePlanName2(baselinePlanName2); + + return f.asField(); + } + + /** + * Get SYS.DBMS_XPLAN.DIFF_PLAN_SQL_BASELINE as a field + * + * @param baselinePlanName1 + * @param baselinePlanName2 + */ + public static org.jooq.Field diffPlanSqlBaseline(org.jooq.Field baselinePlanName1, org.jooq.Field baselinePlanName2) { + org.jooq.examples.oracle.sys.packages.dbms_xplan.DiffPlanSqlBaseline f = new org.jooq.examples.oracle.sys.packages.dbms_xplan.DiffPlanSqlBaseline(); + f.setBaselinePlanName1(baselinePlanName1); + f.setBaselinePlanName2(baselinePlanName2); + + return f.asField(); + } + + /** + * Call SYS.DBMS_XPLAN.DISPLAY + * + * @param tableName + * @param statementId + * @param format + * @param filterPreds + * @throws org.jooq.exception.DataAccessException if something went wrong executing the query + */ + public static org.jooq.examples.oracle.sys.udt.records.DbmsXplanTypeTableRecord display(org.jooq.Configuration configuration, java.lang.String tableName, java.lang.String statementId, java.lang.String format, java.lang.String filterPreds) { + org.jooq.examples.oracle.sys.packages.dbms_xplan.Display f = new org.jooq.examples.oracle.sys.packages.dbms_xplan.Display(); + f.setTableName(tableName); + f.setStatementId(statementId); + f.setFormat(format); + f.setFilterPreds(filterPreds); + + f.execute(configuration); + return f.getReturnValue(); + } + + /** + * Get SYS.DBMS_XPLAN.DISPLAY as a field + * + * @param tableName + * @param statementId + * @param format + * @param filterPreds + */ + public static org.jooq.Field display(java.lang.String tableName, java.lang.String statementId, java.lang.String format, java.lang.String filterPreds) { + org.jooq.examples.oracle.sys.packages.dbms_xplan.Display f = new org.jooq.examples.oracle.sys.packages.dbms_xplan.Display(); + f.setTableName(tableName); + f.setStatementId(statementId); + f.setFormat(format); + f.setFilterPreds(filterPreds); + + return f.asField(); + } + + /** + * Get SYS.DBMS_XPLAN.DISPLAY as a field + * + * @param tableName + * @param statementId + * @param format + * @param filterPreds + */ + public static org.jooq.Field display(org.jooq.Field tableName, org.jooq.Field statementId, org.jooq.Field format, org.jooq.Field filterPreds) { + org.jooq.examples.oracle.sys.packages.dbms_xplan.Display f = new org.jooq.examples.oracle.sys.packages.dbms_xplan.Display(); + f.setTableName(tableName); + f.setStatementId(statementId); + f.setFormat(format); + f.setFilterPreds(filterPreds); + + return f.asField(); + } + + /** + * Call SYS.DBMS_XPLAN.DISPLAY_AWR + * + * @param sqlId + * @param planHashValue + * @param dbId + * @param format + * @throws org.jooq.exception.DataAccessException if something went wrong executing the query + */ + public static org.jooq.examples.oracle.sys.udt.records.DbmsXplanTypeTableRecord displayAwr(org.jooq.Configuration configuration, java.lang.String sqlId, java.math.BigInteger planHashValue, java.math.BigInteger dbId, java.lang.String format) { + org.jooq.examples.oracle.sys.packages.dbms_xplan.DisplayAwr f = new org.jooq.examples.oracle.sys.packages.dbms_xplan.DisplayAwr(); + f.setSqlId(sqlId); + f.setPlanHashValue(planHashValue); + f.setDbId(dbId); + f.setFormat(format); + + f.execute(configuration); + return f.getReturnValue(); + } + + /** + * Get SYS.DBMS_XPLAN.DISPLAY_AWR as a field + * + * @param sqlId + * @param planHashValue + * @param dbId + * @param format + */ + public static org.jooq.Field displayAwr(java.lang.String sqlId, java.math.BigInteger planHashValue, java.math.BigInteger dbId, java.lang.String format) { + org.jooq.examples.oracle.sys.packages.dbms_xplan.DisplayAwr f = new org.jooq.examples.oracle.sys.packages.dbms_xplan.DisplayAwr(); + f.setSqlId(sqlId); + f.setPlanHashValue(planHashValue); + f.setDbId(dbId); + f.setFormat(format); + + return f.asField(); + } + + /** + * Get SYS.DBMS_XPLAN.DISPLAY_AWR as a field + * + * @param sqlId + * @param planHashValue + * @param dbId + * @param format + */ + public static org.jooq.Field displayAwr(org.jooq.Field sqlId, org.jooq.Field planHashValue, org.jooq.Field dbId, org.jooq.Field format) { + org.jooq.examples.oracle.sys.packages.dbms_xplan.DisplayAwr f = new org.jooq.examples.oracle.sys.packages.dbms_xplan.DisplayAwr(); + f.setSqlId(sqlId); + f.setPlanHashValue(planHashValue); + f.setDbId(dbId); + f.setFormat(format); + + return f.asField(); + } + + /** + * Call SYS.DBMS_XPLAN.DISPLAY_CURSOR + * + * @param sqlId + * @param cursorChildNo + * @param format + * @throws org.jooq.exception.DataAccessException if something went wrong executing the query + */ + public static org.jooq.examples.oracle.sys.udt.records.DbmsXplanTypeTableRecord displayCursor(org.jooq.Configuration configuration, java.lang.String sqlId, java.math.BigInteger cursorChildNo, java.lang.String format) { + org.jooq.examples.oracle.sys.packages.dbms_xplan.DisplayCursor f = new org.jooq.examples.oracle.sys.packages.dbms_xplan.DisplayCursor(); + f.setSqlId(sqlId); + f.setCursorChildNo(cursorChildNo); + f.setFormat(format); + + f.execute(configuration); + return f.getReturnValue(); + } + + /** + * Get SYS.DBMS_XPLAN.DISPLAY_CURSOR as a field + * + * @param sqlId + * @param cursorChildNo + * @param format + */ + public static org.jooq.Field displayCursor(java.lang.String sqlId, java.math.BigInteger cursorChildNo, java.lang.String format) { + org.jooq.examples.oracle.sys.packages.dbms_xplan.DisplayCursor f = new org.jooq.examples.oracle.sys.packages.dbms_xplan.DisplayCursor(); + f.setSqlId(sqlId); + f.setCursorChildNo(cursorChildNo); + f.setFormat(format); + + return f.asField(); + } + + /** + * Get SYS.DBMS_XPLAN.DISPLAY_CURSOR as a field + * + * @param sqlId + * @param cursorChildNo + * @param format + */ + public static org.jooq.Field displayCursor(org.jooq.Field sqlId, org.jooq.Field cursorChildNo, org.jooq.Field format) { + org.jooq.examples.oracle.sys.packages.dbms_xplan.DisplayCursor f = new org.jooq.examples.oracle.sys.packages.dbms_xplan.DisplayCursor(); + f.setSqlId(sqlId); + f.setCursorChildNo(cursorChildNo); + f.setFormat(format); + + return f.asField(); + } + + /** + * Call SYS.DBMS_XPLAN.DISPLAY_PLAN + * + * @param tableName + * @param statementId + * @param format + * @param filterPreds + * @param type + * @throws org.jooq.exception.DataAccessException if something went wrong executing the query + */ + public static java.lang.String displayPlan(org.jooq.Configuration configuration, java.lang.String tableName, java.lang.String statementId, java.lang.String format, java.lang.String filterPreds, java.lang.String type) { + org.jooq.examples.oracle.sys.packages.dbms_xplan.DisplayPlan f = new org.jooq.examples.oracle.sys.packages.dbms_xplan.DisplayPlan(); + f.setTableName(tableName); + f.setStatementId(statementId); + f.setFormat(format); + f.setFilterPreds(filterPreds); + f.setType(type); + + f.execute(configuration); + return f.getReturnValue(); + } + + /** + * Get SYS.DBMS_XPLAN.DISPLAY_PLAN as a field + * + * @param tableName + * @param statementId + * @param format + * @param filterPreds + * @param type + */ + public static org.jooq.Field displayPlan(java.lang.String tableName, java.lang.String statementId, java.lang.String format, java.lang.String filterPreds, java.lang.String type) { + org.jooq.examples.oracle.sys.packages.dbms_xplan.DisplayPlan f = new org.jooq.examples.oracle.sys.packages.dbms_xplan.DisplayPlan(); + f.setTableName(tableName); + f.setStatementId(statementId); + f.setFormat(format); + f.setFilterPreds(filterPreds); + f.setType(type); + + return f.asField(); + } + + /** + * Get SYS.DBMS_XPLAN.DISPLAY_PLAN as a field + * + * @param tableName + * @param statementId + * @param format + * @param filterPreds + * @param type + */ + public static org.jooq.Field displayPlan(org.jooq.Field tableName, org.jooq.Field statementId, org.jooq.Field format, org.jooq.Field filterPreds, org.jooq.Field type) { + org.jooq.examples.oracle.sys.packages.dbms_xplan.DisplayPlan f = new org.jooq.examples.oracle.sys.packages.dbms_xplan.DisplayPlan(); + f.setTableName(tableName); + f.setStatementId(statementId); + f.setFormat(format); + f.setFilterPreds(filterPreds); + f.setType(type); + + return f.asField(); + } + + /** + * Call SYS.DBMS_XPLAN.DISPLAY_SQL_PLAN_BASELINE + * + * @param sqlHandle + * @param planName + * @param format + * @throws org.jooq.exception.DataAccessException if something went wrong executing the query + */ + public static org.jooq.examples.oracle.sys.udt.records.DbmsXplanTypeTableRecord displaySqlPlanBaseline(org.jooq.Configuration configuration, java.lang.String sqlHandle, java.lang.String planName, java.lang.String format) { + org.jooq.examples.oracle.sys.packages.dbms_xplan.DisplaySqlPlanBaseline f = new org.jooq.examples.oracle.sys.packages.dbms_xplan.DisplaySqlPlanBaseline(); + f.setSqlHandle(sqlHandle); + f.setPlanName(planName); + f.setFormat(format); + + f.execute(configuration); + return f.getReturnValue(); + } + + /** + * Get SYS.DBMS_XPLAN.DISPLAY_SQL_PLAN_BASELINE as a field + * + * @param sqlHandle + * @param planName + * @param format + */ + public static org.jooq.Field displaySqlPlanBaseline(java.lang.String sqlHandle, java.lang.String planName, java.lang.String format) { + org.jooq.examples.oracle.sys.packages.dbms_xplan.DisplaySqlPlanBaseline f = new org.jooq.examples.oracle.sys.packages.dbms_xplan.DisplaySqlPlanBaseline(); + f.setSqlHandle(sqlHandle); + f.setPlanName(planName); + f.setFormat(format); + + return f.asField(); + } + + /** + * Get SYS.DBMS_XPLAN.DISPLAY_SQL_PLAN_BASELINE as a field + * + * @param sqlHandle + * @param planName + * @param format + */ + public static org.jooq.Field displaySqlPlanBaseline(org.jooq.Field sqlHandle, org.jooq.Field planName, org.jooq.Field format) { + org.jooq.examples.oracle.sys.packages.dbms_xplan.DisplaySqlPlanBaseline f = new org.jooq.examples.oracle.sys.packages.dbms_xplan.DisplaySqlPlanBaseline(); + f.setSqlHandle(sqlHandle); + f.setPlanName(planName); + f.setFormat(format); + + return f.asField(); + } + + /** + * Call SYS.DBMS_XPLAN.DISPLAY_SQLSET + * + * @param sqlsetName + * @param sqlId + * @param planHashValue + * @param format + * @param sqlsetOwner + * @throws org.jooq.exception.DataAccessException if something went wrong executing the query + */ + public static org.jooq.examples.oracle.sys.udt.records.DbmsXplanTypeTableRecord displaySqlset(org.jooq.Configuration configuration, java.lang.String sqlsetName, java.lang.String sqlId, java.math.BigInteger planHashValue, java.lang.String format, java.lang.String sqlsetOwner) { + org.jooq.examples.oracle.sys.packages.dbms_xplan.DisplaySqlset f = new org.jooq.examples.oracle.sys.packages.dbms_xplan.DisplaySqlset(); + f.setSqlsetName(sqlsetName); + f.setSqlId(sqlId); + f.setPlanHashValue(planHashValue); + f.setFormat(format); + f.setSqlsetOwner(sqlsetOwner); + + f.execute(configuration); + return f.getReturnValue(); + } + + /** + * Get SYS.DBMS_XPLAN.DISPLAY_SQLSET as a field + * + * @param sqlsetName + * @param sqlId + * @param planHashValue + * @param format + * @param sqlsetOwner + */ + public static org.jooq.Field displaySqlset(java.lang.String sqlsetName, java.lang.String sqlId, java.math.BigInteger planHashValue, java.lang.String format, java.lang.String sqlsetOwner) { + org.jooq.examples.oracle.sys.packages.dbms_xplan.DisplaySqlset f = new org.jooq.examples.oracle.sys.packages.dbms_xplan.DisplaySqlset(); + f.setSqlsetName(sqlsetName); + f.setSqlId(sqlId); + f.setPlanHashValue(planHashValue); + f.setFormat(format); + f.setSqlsetOwner(sqlsetOwner); + + return f.asField(); + } + + /** + * Get SYS.DBMS_XPLAN.DISPLAY_SQLSET as a field + * + * @param sqlsetName + * @param sqlId + * @param planHashValue + * @param format + * @param sqlsetOwner + */ + public static org.jooq.Field displaySqlset(org.jooq.Field sqlsetName, org.jooq.Field sqlId, org.jooq.Field planHashValue, org.jooq.Field format, org.jooq.Field sqlsetOwner) { + org.jooq.examples.oracle.sys.packages.dbms_xplan.DisplaySqlset f = new org.jooq.examples.oracle.sys.packages.dbms_xplan.DisplaySqlset(); + f.setSqlsetName(sqlsetName); + f.setSqlId(sqlId); + f.setPlanHashValue(planHashValue); + f.setFormat(format); + f.setSqlsetOwner(sqlsetOwner); + + return f.asField(); + } + + /** + * Call SYS.DBMS_XPLAN.FORMAT_NUMBER + * + * @param num + * @throws org.jooq.exception.DataAccessException if something went wrong executing the query + */ + public static java.lang.String formatNumber(org.jooq.Configuration configuration, java.lang.Number num) { + org.jooq.examples.oracle.sys.packages.dbms_xplan.FormatNumber f = new org.jooq.examples.oracle.sys.packages.dbms_xplan.FormatNumber(); + f.setNum(num); + + f.execute(configuration); + return f.getReturnValue(); + } + + /** + * Get SYS.DBMS_XPLAN.FORMAT_NUMBER as a field + * + * @param num + */ + public static org.jooq.Field formatNumber(java.lang.Number num) { + org.jooq.examples.oracle.sys.packages.dbms_xplan.FormatNumber f = new org.jooq.examples.oracle.sys.packages.dbms_xplan.FormatNumber(); + f.setNum(num); + + return f.asField(); + } + + /** + * Get SYS.DBMS_XPLAN.FORMAT_NUMBER as a field + * + * @param num + */ + public static org.jooq.Field formatNumber(org.jooq.Field num) { + org.jooq.examples.oracle.sys.packages.dbms_xplan.FormatNumber f = new org.jooq.examples.oracle.sys.packages.dbms_xplan.FormatNumber(); + f.setNum(num); + + return f.asField(); + } + + /** + * Call SYS.DBMS_XPLAN.FORMAT_NUMBER2 + * + * @param num + * @throws org.jooq.exception.DataAccessException if something went wrong executing the query + */ + public static java.lang.String formatNumber2(org.jooq.Configuration configuration, java.lang.Number num) { + org.jooq.examples.oracle.sys.packages.dbms_xplan.FormatNumber2 f = new org.jooq.examples.oracle.sys.packages.dbms_xplan.FormatNumber2(); + f.setNum(num); + + f.execute(configuration); + return f.getReturnValue(); + } + + /** + * Get SYS.DBMS_XPLAN.FORMAT_NUMBER2 as a field + * + * @param num + */ + public static org.jooq.Field formatNumber2(java.lang.Number num) { + org.jooq.examples.oracle.sys.packages.dbms_xplan.FormatNumber2 f = new org.jooq.examples.oracle.sys.packages.dbms_xplan.FormatNumber2(); + f.setNum(num); + + return f.asField(); + } + + /** + * Get SYS.DBMS_XPLAN.FORMAT_NUMBER2 as a field + * + * @param num + */ + public static org.jooq.Field formatNumber2(org.jooq.Field num) { + org.jooq.examples.oracle.sys.packages.dbms_xplan.FormatNumber2 f = new org.jooq.examples.oracle.sys.packages.dbms_xplan.FormatNumber2(); + f.setNum(num); + + return f.asField(); + } + + /** + * Call SYS.DBMS_XPLAN.FORMAT_SIZE + * + * @param num + * @throws org.jooq.exception.DataAccessException if something went wrong executing the query + */ + public static java.lang.String formatSize(org.jooq.Configuration configuration, java.lang.Number num) { + org.jooq.examples.oracle.sys.packages.dbms_xplan.FormatSize f = new org.jooq.examples.oracle.sys.packages.dbms_xplan.FormatSize(); + f.setNum(num); + + f.execute(configuration); + return f.getReturnValue(); + } + + /** + * Get SYS.DBMS_XPLAN.FORMAT_SIZE as a field + * + * @param num + */ + public static org.jooq.Field formatSize(java.lang.Number num) { + org.jooq.examples.oracle.sys.packages.dbms_xplan.FormatSize f = new org.jooq.examples.oracle.sys.packages.dbms_xplan.FormatSize(); + f.setNum(num); + + return f.asField(); + } + + /** + * Get SYS.DBMS_XPLAN.FORMAT_SIZE as a field + * + * @param num + */ + public static org.jooq.Field formatSize(org.jooq.Field num) { + org.jooq.examples.oracle.sys.packages.dbms_xplan.FormatSize f = new org.jooq.examples.oracle.sys.packages.dbms_xplan.FormatSize(); + f.setNum(num); + + return f.asField(); + } + + /** + * Call SYS.DBMS_XPLAN.FORMAT_SIZE2 + * + * @param num + * @throws org.jooq.exception.DataAccessException if something went wrong executing the query + */ + public static java.lang.String formatSize2(org.jooq.Configuration configuration, java.lang.Number num) { + org.jooq.examples.oracle.sys.packages.dbms_xplan.FormatSize2 f = new org.jooq.examples.oracle.sys.packages.dbms_xplan.FormatSize2(); + f.setNum(num); + + f.execute(configuration); + return f.getReturnValue(); + } + + /** + * Get SYS.DBMS_XPLAN.FORMAT_SIZE2 as a field + * + * @param num + */ + public static org.jooq.Field formatSize2(java.lang.Number num) { + org.jooq.examples.oracle.sys.packages.dbms_xplan.FormatSize2 f = new org.jooq.examples.oracle.sys.packages.dbms_xplan.FormatSize2(); + f.setNum(num); + + return f.asField(); + } + + /** + * Get SYS.DBMS_XPLAN.FORMAT_SIZE2 as a field + * + * @param num + */ + public static org.jooq.Field formatSize2(org.jooq.Field num) { + org.jooq.examples.oracle.sys.packages.dbms_xplan.FormatSize2 f = new org.jooq.examples.oracle.sys.packages.dbms_xplan.FormatSize2(); + f.setNum(num); + + return f.asField(); + } + + /** + * Call SYS.DBMS_XPLAN.FORMAT_TIME_S + * + * @param num + * @throws org.jooq.exception.DataAccessException if something went wrong executing the query + */ + public static java.lang.String formatTimeS(org.jooq.Configuration configuration, java.lang.Number num) { + org.jooq.examples.oracle.sys.packages.dbms_xplan.FormatTimeS f = new org.jooq.examples.oracle.sys.packages.dbms_xplan.FormatTimeS(); + f.setNum(num); + + f.execute(configuration); + return f.getReturnValue(); + } + + /** + * Get SYS.DBMS_XPLAN.FORMAT_TIME_S as a field + * + * @param num + */ + public static org.jooq.Field formatTimeS(java.lang.Number num) { + org.jooq.examples.oracle.sys.packages.dbms_xplan.FormatTimeS f = new org.jooq.examples.oracle.sys.packages.dbms_xplan.FormatTimeS(); + f.setNum(num); + + return f.asField(); + } + + /** + * Get SYS.DBMS_XPLAN.FORMAT_TIME_S as a field + * + * @param num + */ + public static org.jooq.Field formatTimeS(org.jooq.Field num) { + org.jooq.examples.oracle.sys.packages.dbms_xplan.FormatTimeS f = new org.jooq.examples.oracle.sys.packages.dbms_xplan.FormatTimeS(); + f.setNum(num); + + return f.asField(); + } + + /** + * Call SYS.DBMS_XPLAN.GET_PLANDIFF_REPORT_XML + * + * @param reportRef + * @param tid + * @param method + * @throws org.jooq.exception.DataAccessException if something went wrong executing the query + */ + public static java.lang.Object getPlandiffReportXml(org.jooq.Configuration configuration, java.lang.String reportRef, java.lang.Number tid, java.lang.String method) { + org.jooq.examples.oracle.sys.packages.dbms_xplan.GetPlandiffReportXml f = new org.jooq.examples.oracle.sys.packages.dbms_xplan.GetPlandiffReportXml(); + f.setReportRef(reportRef); + f.setTid(tid); + f.setMethod(method); + + f.execute(configuration); + return f.getReturnValue(); + } + + /** + * Get SYS.DBMS_XPLAN.GET_PLANDIFF_REPORT_XML as a field + * + * @param reportRef + * @param tid + * @param method + */ + public static org.jooq.Field getPlandiffReportXml(java.lang.String reportRef, java.lang.Number tid, java.lang.String method) { + org.jooq.examples.oracle.sys.packages.dbms_xplan.GetPlandiffReportXml f = new org.jooq.examples.oracle.sys.packages.dbms_xplan.GetPlandiffReportXml(); + f.setReportRef(reportRef); + f.setTid(tid); + f.setMethod(method); + + return f.asField(); + } + + /** + * Get SYS.DBMS_XPLAN.GET_PLANDIFF_REPORT_XML as a field + * + * @param reportRef + * @param tid + * @param method + */ + public static org.jooq.Field getPlandiffReportXml(org.jooq.Field reportRef, org.jooq.Field tid, org.jooq.Field method) { + org.jooq.examples.oracle.sys.packages.dbms_xplan.GetPlandiffReportXml f = new org.jooq.examples.oracle.sys.packages.dbms_xplan.GetPlandiffReportXml(); + f.setReportRef(reportRef); + f.setTid(tid); + f.setMethod(method); + + return f.asField(); + } + + /** + * Call SYS.DBMS_XPLAN.PREPARE_PLAN_XML_QUERY + * + * @param planQuery + * @throws org.jooq.exception.DataAccessException if something went wrong executing the query + */ + public static java.lang.String preparePlanXmlQuery(org.jooq.Configuration configuration, java.lang.String planQuery) { + org.jooq.examples.oracle.sys.packages.dbms_xplan.PreparePlanXmlQuery f = new org.jooq.examples.oracle.sys.packages.dbms_xplan.PreparePlanXmlQuery(); + f.setPlanQuery(planQuery); + + f.execute(configuration); + return f.getReturnValue(); + } + + /** + * Get SYS.DBMS_XPLAN.PREPARE_PLAN_XML_QUERY as a field + * + * @param planQuery + */ + public static org.jooq.Field preparePlanXmlQuery(java.lang.String planQuery) { + org.jooq.examples.oracle.sys.packages.dbms_xplan.PreparePlanXmlQuery f = new org.jooq.examples.oracle.sys.packages.dbms_xplan.PreparePlanXmlQuery(); + f.setPlanQuery(planQuery); + + return f.asField(); + } + + /** + * Get SYS.DBMS_XPLAN.PREPARE_PLAN_XML_QUERY as a field + * + * @param planQuery + */ + public static org.jooq.Field preparePlanXmlQuery(org.jooq.Field planQuery) { + org.jooq.examples.oracle.sys.packages.dbms_xplan.PreparePlanXmlQuery f = new org.jooq.examples.oracle.sys.packages.dbms_xplan.PreparePlanXmlQuery(); + f.setPlanQuery(planQuery); + + return f.asField(); + } + + /** + * Call SYS.DBMS_XPLAN.PREPARE_RECORDS + * + * @param planCur + * @param iFormatFlags + * @throws org.jooq.exception.DataAccessException if something went wrong executing the query + */ + public static org.jooq.examples.oracle.sys.udt.records.DbmsXplanTypeTableRecord prepareRecords(org.jooq.Configuration configuration, org.jooq.Result planCur, java.lang.Integer iFormatFlags) { + org.jooq.examples.oracle.sys.packages.dbms_xplan.PrepareRecords f = new org.jooq.examples.oracle.sys.packages.dbms_xplan.PrepareRecords(); + f.setPlanCur(planCur); + f.setIFormatFlags(iFormatFlags); + + f.execute(configuration); + return f.getReturnValue(); + } + + /** + * Get SYS.DBMS_XPLAN.PREPARE_RECORDS as a field + * + * @param planCur + * @param iFormatFlags + */ + public static org.jooq.Field prepareRecords(org.jooq.Result planCur, java.lang.Integer iFormatFlags) { + org.jooq.examples.oracle.sys.packages.dbms_xplan.PrepareRecords f = new org.jooq.examples.oracle.sys.packages.dbms_xplan.PrepareRecords(); + f.setPlanCur(planCur); + f.setIFormatFlags(iFormatFlags); + + return f.asField(); + } + + /** + * Get SYS.DBMS_XPLAN.PREPARE_RECORDS as a field + * + * @param planCur + * @param iFormatFlags + */ + public static org.jooq.Field prepareRecords(org.jooq.Field> planCur, org.jooq.Field iFormatFlags) { + org.jooq.examples.oracle.sys.packages.dbms_xplan.PrepareRecords f = new org.jooq.examples.oracle.sys.packages.dbms_xplan.PrepareRecords(); + f.setPlanCur(planCur); + f.setIFormatFlags(iFormatFlags); + + return f.asField(); + } + + /** + * Call SYS.DBMS_XPLAN.VALIDATE_FORMAT + * + * @param returnValue OUT parameter + * @param hasplanstats IN parameter + * @param format IN parameter + * @param formatFlags OUT parameter + * @throws org.jooq.exception.DataAccessException if something went wrong executing the query + */ + public static java.lang.Integer validateFormat(org.jooq.Configuration configuration, java.lang.Object hasplanstats, java.lang.String format) { + org.jooq.examples.oracle.sys.packages.dbms_xplan.ValidateFormat p = new org.jooq.examples.oracle.sys.packages.dbms_xplan.ValidateFormat(); + p.setHasplanstats(hasplanstats); + p.setFormat(format); + + p.execute(configuration); + return p.getFormatFlags(); + } + /** + * No further instances allowed + */ + private DbmsXplan() { + super("DBMS_XPLAN", org.jooq.examples.oracle.sys.Sys.SYS); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/oracle/sys/packages/dbms_xplan/BuildPlanXml.java b/jOOQ-test/examples/org/jooq/examples/oracle/sys/packages/dbms_xplan/BuildPlanXml.java new file mode 100644 index 00000000000..c38d61ec22b --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/oracle/sys/packages/dbms_xplan/BuildPlanXml.java @@ -0,0 +1,184 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.oracle.sys.packages.dbms_xplan; + +/** + * This class is generated by jOOQ. + */ +public class BuildPlanXml extends org.jooq.impl.AbstractRoutine { + + private static final long serialVersionUID = -497121026; + + + /** + * An uncommented item + * + * The SQL type of this item (UNDEFINED, XMLTYPE) could not be mapped.
+ * Deserialising this field might not work! + */ + public static final org.jooq.Parameter RETURN_VALUE = createParameter("RETURN_VALUE", org.jooq.util.oracle.OracleDataType.getDefaultDataType("UNDEFINED")); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter TABLE_NAME = createParameter("TABLE_NAME", org.jooq.impl.SQLDataType.VARCHAR, true); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter STATEMENT_ID = createParameter("STATEMENT_ID", org.jooq.impl.SQLDataType.VARCHAR, true); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter PLAN_ID = createParameter("PLAN_ID", org.jooq.impl.SQLDataType.NUMERIC, true); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter FORMAT = createParameter("FORMAT", org.jooq.impl.SQLDataType.VARCHAR, true); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter FILTER_PREDS = createParameter("FILTER_PREDS", org.jooq.impl.SQLDataType.VARCHAR, true); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter PLAN_TAG = createParameter("PLAN_TAG", org.jooq.impl.SQLDataType.VARCHAR, true); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter REPORT_REF = createParameter("REPORT_REF", org.jooq.impl.SQLDataType.VARCHAR, true); + + /** + * Create a new routine call instance + */ + public BuildPlanXml() { + super("BUILD_PLAN_XML", org.jooq.examples.oracle.sys.Sys.SYS, org.jooq.examples.oracle.sys.packages.DbmsXplan.DBMS_XPLAN, org.jooq.util.oracle.OracleDataType.getDefaultDataType("UNDEFINED")); + + setReturnParameter(RETURN_VALUE); + addInParameter(TABLE_NAME); + addInParameter(STATEMENT_ID); + addInParameter(PLAN_ID); + addInParameter(FORMAT); + addInParameter(FILTER_PREDS); + addInParameter(PLAN_TAG); + addInParameter(REPORT_REF); + } + + /** + * Set the TABLE_NAME parameter to the routine + */ + public void setTableName(java.lang.String value) { + setValue(TABLE_NAME, value); + } + + /** + * Set the TABLE_NAME parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setTableName(org.jooq.Field field) { + setField(TABLE_NAME, field); + } + + /** + * Set the STATEMENT_ID parameter to the routine + */ + public void setStatementId(java.lang.String value) { + setValue(STATEMENT_ID, value); + } + + /** + * Set the STATEMENT_ID parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setStatementId(org.jooq.Field field) { + setField(STATEMENT_ID, field); + } + + /** + * Set the PLAN_ID parameter to the routine + */ + public void setPlanId(java.lang.Number value) { + setNumber(PLAN_ID, value); + } + + /** + * Set the PLAN_ID parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setPlanId(org.jooq.Field field) { + setNumber(PLAN_ID, field); + } + + /** + * Set the FORMAT parameter to the routine + */ + public void setFormat(java.lang.String value) { + setValue(FORMAT, value); + } + + /** + * Set the FORMAT parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setFormat(org.jooq.Field field) { + setField(FORMAT, field); + } + + /** + * Set the FILTER_PREDS parameter to the routine + */ + public void setFilterPreds(java.lang.String value) { + setValue(FILTER_PREDS, value); + } + + /** + * Set the FILTER_PREDS parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setFilterPreds(org.jooq.Field field) { + setField(FILTER_PREDS, field); + } + + /** + * Set the PLAN_TAG parameter to the routine + */ + public void setPlanTag(java.lang.String value) { + setValue(PLAN_TAG, value); + } + + /** + * Set the PLAN_TAG parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setPlanTag(org.jooq.Field field) { + setField(PLAN_TAG, field); + } + + /** + * Set the REPORT_REF parameter to the routine + */ + public void setReportRef(java.lang.String value) { + setValue(REPORT_REF, value); + } + + /** + * Set the REPORT_REF parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setReportRef(org.jooq.Field field) { + setField(REPORT_REF, field); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/oracle/sys/packages/dbms_xplan/DiffPlan.java b/jOOQ-test/examples/org/jooq/examples/oracle/sys/packages/dbms_xplan/DiffPlan.java new file mode 100644 index 00000000000..8a6c31a8a97 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/oracle/sys/packages/dbms_xplan/DiffPlan.java @@ -0,0 +1,93 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.oracle.sys.packages.dbms_xplan; + +/** + * This class is generated by jOOQ. + */ +public class DiffPlan extends org.jooq.impl.AbstractRoutine { + + private static final long serialVersionUID = -704709381; + + + /** + * An uncommented item + */ + public static final org.jooq.Parameter RETURN_VALUE = createParameter("RETURN_VALUE", org.jooq.impl.SQLDataType.VARCHAR); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter SQL_TEXT = createParameter("SQL_TEXT", org.jooq.impl.SQLDataType.CLOB); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter OUTLINE = createParameter("OUTLINE", org.jooq.impl.SQLDataType.CLOB); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter USER_NAME = createParameter("USER_NAME", org.jooq.impl.SQLDataType.VARCHAR, true); + + /** + * Create a new routine call instance + */ + public DiffPlan() { + super("DIFF_PLAN", org.jooq.examples.oracle.sys.Sys.SYS, org.jooq.examples.oracle.sys.packages.DbmsXplan.DBMS_XPLAN, org.jooq.impl.SQLDataType.VARCHAR); + + setReturnParameter(RETURN_VALUE); + addInParameter(SQL_TEXT); + addInParameter(OUTLINE); + addInParameter(USER_NAME); + } + + /** + * Set the SQL_TEXT parameter to the routine + */ + public void setSqlText(java.lang.String value) { + setValue(SQL_TEXT, value); + } + + /** + * Set the SQL_TEXT parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setSqlText(org.jooq.Field field) { + setField(SQL_TEXT, field); + } + + /** + * Set the OUTLINE parameter to the routine + */ + public void setOutline(java.lang.String value) { + setValue(OUTLINE, value); + } + + /** + * Set the OUTLINE parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setOutline(org.jooq.Field field) { + setField(OUTLINE, field); + } + + /** + * Set the USER_NAME parameter to the routine + */ + public void setUserName(java.lang.String value) { + setValue(USER_NAME, value); + } + + /** + * Set the USER_NAME parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setUserName(org.jooq.Field field) { + setField(USER_NAME, field); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/oracle/sys/packages/dbms_xplan/DiffPlanAwr.java b/jOOQ-test/examples/org/jooq/examples/oracle/sys/packages/dbms_xplan/DiffPlanAwr.java new file mode 100644 index 00000000000..649cc8492c4 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/oracle/sys/packages/dbms_xplan/DiffPlanAwr.java @@ -0,0 +1,93 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.oracle.sys.packages.dbms_xplan; + +/** + * This class is generated by jOOQ. + */ +public class DiffPlanAwr extends org.jooq.impl.AbstractRoutine { + + private static final long serialVersionUID = -990539502; + + + /** + * An uncommented item + */ + public static final org.jooq.Parameter RETURN_VALUE = createParameter("RETURN_VALUE", org.jooq.impl.SQLDataType.VARCHAR); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter SQL_ID = createParameter("SQL_ID", org.jooq.impl.SQLDataType.VARCHAR); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter PLAN_HASH_VALUE1 = createParameter("PLAN_HASH_VALUE1", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter PLAN_HASH_VALUE2 = createParameter("PLAN_HASH_VALUE2", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * Create a new routine call instance + */ + public DiffPlanAwr() { + super("DIFF_PLAN_AWR", org.jooq.examples.oracle.sys.Sys.SYS, org.jooq.examples.oracle.sys.packages.DbmsXplan.DBMS_XPLAN, org.jooq.impl.SQLDataType.VARCHAR); + + setReturnParameter(RETURN_VALUE); + addInParameter(SQL_ID); + addInParameter(PLAN_HASH_VALUE1); + addInParameter(PLAN_HASH_VALUE2); + } + + /** + * Set the SQL_ID parameter to the routine + */ + public void setSqlId(java.lang.String value) { + setValue(SQL_ID, value); + } + + /** + * Set the SQL_ID parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setSqlId(org.jooq.Field field) { + setField(SQL_ID, field); + } + + /** + * Set the PLAN_HASH_VALUE1 parameter to the routine + */ + public void setPlanHashValue1(java.lang.Number value) { + setNumber(PLAN_HASH_VALUE1, value); + } + + /** + * Set the PLAN_HASH_VALUE1 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setPlanHashValue1(org.jooq.Field field) { + setNumber(PLAN_HASH_VALUE1, field); + } + + /** + * Set the PLAN_HASH_VALUE2 parameter to the routine + */ + public void setPlanHashValue2(java.lang.Number value) { + setNumber(PLAN_HASH_VALUE2, value); + } + + /** + * Set the PLAN_HASH_VALUE2 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setPlanHashValue2(org.jooq.Field field) { + setNumber(PLAN_HASH_VALUE2, field); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/oracle/sys/packages/dbms_xplan/DiffPlanCursor.java b/jOOQ-test/examples/org/jooq/examples/oracle/sys/packages/dbms_xplan/DiffPlanCursor.java new file mode 100644 index 00000000000..ffef38f9c60 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/oracle/sys/packages/dbms_xplan/DiffPlanCursor.java @@ -0,0 +1,93 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.oracle.sys.packages.dbms_xplan; + +/** + * This class is generated by jOOQ. + */ +public class DiffPlanCursor extends org.jooq.impl.AbstractRoutine { + + private static final long serialVersionUID = 1728883494; + + + /** + * An uncommented item + */ + public static final org.jooq.Parameter RETURN_VALUE = createParameter("RETURN_VALUE", org.jooq.impl.SQLDataType.VARCHAR); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter SQL_ID = createParameter("SQL_ID", org.jooq.impl.SQLDataType.VARCHAR); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter CURSOR_CHILD_NUM1 = createParameter("CURSOR_CHILD_NUM1", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter CURSOR_CHILD_NUM2 = createParameter("CURSOR_CHILD_NUM2", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * Create a new routine call instance + */ + public DiffPlanCursor() { + super("DIFF_PLAN_CURSOR", org.jooq.examples.oracle.sys.Sys.SYS, org.jooq.examples.oracle.sys.packages.DbmsXplan.DBMS_XPLAN, org.jooq.impl.SQLDataType.VARCHAR); + + setReturnParameter(RETURN_VALUE); + addInParameter(SQL_ID); + addInParameter(CURSOR_CHILD_NUM1); + addInParameter(CURSOR_CHILD_NUM2); + } + + /** + * Set the SQL_ID parameter to the routine + */ + public void setSqlId(java.lang.String value) { + setValue(SQL_ID, value); + } + + /** + * Set the SQL_ID parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setSqlId(org.jooq.Field field) { + setField(SQL_ID, field); + } + + /** + * Set the CURSOR_CHILD_NUM1 parameter to the routine + */ + public void setCursorChildNum1(java.lang.Number value) { + setNumber(CURSOR_CHILD_NUM1, value); + } + + /** + * Set the CURSOR_CHILD_NUM1 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setCursorChildNum1(org.jooq.Field field) { + setNumber(CURSOR_CHILD_NUM1, field); + } + + /** + * Set the CURSOR_CHILD_NUM2 parameter to the routine + */ + public void setCursorChildNum2(java.lang.Number value) { + setNumber(CURSOR_CHILD_NUM2, value); + } + + /** + * Set the CURSOR_CHILD_NUM2 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setCursorChildNum2(org.jooq.Field field) { + setNumber(CURSOR_CHILD_NUM2, field); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/oracle/sys/packages/dbms_xplan/DiffPlanOutline.java b/jOOQ-test/examples/org/jooq/examples/oracle/sys/packages/dbms_xplan/DiffPlanOutline.java new file mode 100644 index 00000000000..5d560cd8a04 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/oracle/sys/packages/dbms_xplan/DiffPlanOutline.java @@ -0,0 +1,115 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.oracle.sys.packages.dbms_xplan; + +/** + * This class is generated by jOOQ. + */ +public class DiffPlanOutline extends org.jooq.impl.AbstractRoutine { + + private static final long serialVersionUID = -923062558; + + + /** + * An uncommented item + */ + public static final org.jooq.Parameter RETURN_VALUE = createParameter("RETURN_VALUE", org.jooq.impl.SQLDataType.VARCHAR); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter SQL_TEXT = createParameter("SQL_TEXT", org.jooq.impl.SQLDataType.CLOB); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter OUTLINE1 = createParameter("OUTLINE1", org.jooq.impl.SQLDataType.CLOB); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter OUTLINE2 = createParameter("OUTLINE2", org.jooq.impl.SQLDataType.CLOB); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter USER_NAME = createParameter("USER_NAME", org.jooq.impl.SQLDataType.VARCHAR, true); + + /** + * Create a new routine call instance + */ + public DiffPlanOutline() { + super("DIFF_PLAN_OUTLINE", org.jooq.examples.oracle.sys.Sys.SYS, org.jooq.examples.oracle.sys.packages.DbmsXplan.DBMS_XPLAN, org.jooq.impl.SQLDataType.VARCHAR); + + setReturnParameter(RETURN_VALUE); + addInParameter(SQL_TEXT); + addInParameter(OUTLINE1); + addInParameter(OUTLINE2); + addInParameter(USER_NAME); + } + + /** + * Set the SQL_TEXT parameter to the routine + */ + public void setSqlText(java.lang.String value) { + setValue(SQL_TEXT, value); + } + + /** + * Set the SQL_TEXT parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setSqlText(org.jooq.Field field) { + setField(SQL_TEXT, field); + } + + /** + * Set the OUTLINE1 parameter to the routine + */ + public void setOutline1(java.lang.String value) { + setValue(OUTLINE1, value); + } + + /** + * Set the OUTLINE1 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setOutline1(org.jooq.Field field) { + setField(OUTLINE1, field); + } + + /** + * Set the OUTLINE2 parameter to the routine + */ + public void setOutline2(java.lang.String value) { + setValue(OUTLINE2, value); + } + + /** + * Set the OUTLINE2 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setOutline2(org.jooq.Field field) { + setField(OUTLINE2, field); + } + + /** + * Set the USER_NAME parameter to the routine + */ + public void setUserName(java.lang.String value) { + setValue(USER_NAME, value); + } + + /** + * Set the USER_NAME parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setUserName(org.jooq.Field field) { + setField(USER_NAME, field); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/oracle/sys/packages/dbms_xplan/DiffPlanSqlBaseline.java b/jOOQ-test/examples/org/jooq/examples/oracle/sys/packages/dbms_xplan/DiffPlanSqlBaseline.java new file mode 100644 index 00000000000..edce8aa2bb0 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/oracle/sys/packages/dbms_xplan/DiffPlanSqlBaseline.java @@ -0,0 +1,71 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.oracle.sys.packages.dbms_xplan; + +/** + * This class is generated by jOOQ. + */ +public class DiffPlanSqlBaseline extends org.jooq.impl.AbstractRoutine { + + private static final long serialVersionUID = -454362456; + + + /** + * An uncommented item + */ + public static final org.jooq.Parameter RETURN_VALUE = createParameter("RETURN_VALUE", org.jooq.impl.SQLDataType.VARCHAR); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter BASELINE_PLAN_NAME1 = createParameter("BASELINE_PLAN_NAME1", org.jooq.impl.SQLDataType.VARCHAR); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter BASELINE_PLAN_NAME2 = createParameter("BASELINE_PLAN_NAME2", org.jooq.impl.SQLDataType.VARCHAR); + + /** + * Create a new routine call instance + */ + public DiffPlanSqlBaseline() { + super("DIFF_PLAN_SQL_BASELINE", org.jooq.examples.oracle.sys.Sys.SYS, org.jooq.examples.oracle.sys.packages.DbmsXplan.DBMS_XPLAN, org.jooq.impl.SQLDataType.VARCHAR); + + setReturnParameter(RETURN_VALUE); + addInParameter(BASELINE_PLAN_NAME1); + addInParameter(BASELINE_PLAN_NAME2); + } + + /** + * Set the BASELINE_PLAN_NAME1 parameter to the routine + */ + public void setBaselinePlanName1(java.lang.String value) { + setValue(BASELINE_PLAN_NAME1, value); + } + + /** + * Set the BASELINE_PLAN_NAME1 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setBaselinePlanName1(org.jooq.Field field) { + setField(BASELINE_PLAN_NAME1, field); + } + + /** + * Set the BASELINE_PLAN_NAME2 parameter to the routine + */ + public void setBaselinePlanName2(java.lang.String value) { + setValue(BASELINE_PLAN_NAME2, value); + } + + /** + * Set the BASELINE_PLAN_NAME2 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setBaselinePlanName2(org.jooq.Field field) { + setField(BASELINE_PLAN_NAME2, field); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/oracle/sys/packages/dbms_xplan/Display.java b/jOOQ-test/examples/org/jooq/examples/oracle/sys/packages/dbms_xplan/Display.java new file mode 100644 index 00000000000..9652265d6dd --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/oracle/sys/packages/dbms_xplan/Display.java @@ -0,0 +1,115 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.oracle.sys.packages.dbms_xplan; + +/** + * This class is generated by jOOQ. + */ +public class Display extends org.jooq.impl.AbstractRoutine { + + private static final long serialVersionUID = -1053260196; + + + /** + * An uncommented item + */ + public static final org.jooq.Parameter RETURN_VALUE = createParameter("RETURN_VALUE", org.jooq.examples.oracle.sys.udt.DbmsXplanType.DBMS_XPLAN_TYPE.getDataType().asArrayDataType(org.jooq.examples.oracle.sys.udt.records.DbmsXplanTypeTableRecord.class)); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter TABLE_NAME = createParameter("TABLE_NAME", org.jooq.impl.SQLDataType.VARCHAR, true); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter STATEMENT_ID = createParameter("STATEMENT_ID", org.jooq.impl.SQLDataType.VARCHAR, true); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter FORMAT = createParameter("FORMAT", org.jooq.impl.SQLDataType.VARCHAR, true); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter FILTER_PREDS = createParameter("FILTER_PREDS", org.jooq.impl.SQLDataType.VARCHAR, true); + + /** + * Create a new routine call instance + */ + public Display() { + super("DISPLAY", org.jooq.examples.oracle.sys.Sys.SYS, org.jooq.examples.oracle.sys.packages.DbmsXplan.DBMS_XPLAN, org.jooq.examples.oracle.sys.udt.DbmsXplanType.DBMS_XPLAN_TYPE.getDataType().asArrayDataType(org.jooq.examples.oracle.sys.udt.records.DbmsXplanTypeTableRecord.class)); + + setReturnParameter(RETURN_VALUE); + addInParameter(TABLE_NAME); + addInParameter(STATEMENT_ID); + addInParameter(FORMAT); + addInParameter(FILTER_PREDS); + } + + /** + * Set the TABLE_NAME parameter to the routine + */ + public void setTableName(java.lang.String value) { + setValue(TABLE_NAME, value); + } + + /** + * Set the TABLE_NAME parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setTableName(org.jooq.Field field) { + setField(TABLE_NAME, field); + } + + /** + * Set the STATEMENT_ID parameter to the routine + */ + public void setStatementId(java.lang.String value) { + setValue(STATEMENT_ID, value); + } + + /** + * Set the STATEMENT_ID parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setStatementId(org.jooq.Field field) { + setField(STATEMENT_ID, field); + } + + /** + * Set the FORMAT parameter to the routine + */ + public void setFormat(java.lang.String value) { + setValue(FORMAT, value); + } + + /** + * Set the FORMAT parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setFormat(org.jooq.Field field) { + setField(FORMAT, field); + } + + /** + * Set the FILTER_PREDS parameter to the routine + */ + public void setFilterPreds(java.lang.String value) { + setValue(FILTER_PREDS, value); + } + + /** + * Set the FILTER_PREDS parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setFilterPreds(org.jooq.Field field) { + setField(FILTER_PREDS, field); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/oracle/sys/packages/dbms_xplan/DisplayAwr.java b/jOOQ-test/examples/org/jooq/examples/oracle/sys/packages/dbms_xplan/DisplayAwr.java new file mode 100644 index 00000000000..7f8878c5598 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/oracle/sys/packages/dbms_xplan/DisplayAwr.java @@ -0,0 +1,115 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.oracle.sys.packages.dbms_xplan; + +/** + * This class is generated by jOOQ. + */ +public class DisplayAwr extends org.jooq.impl.AbstractRoutine { + + private static final long serialVersionUID = 1424665241; + + + /** + * An uncommented item + */ + public static final org.jooq.Parameter RETURN_VALUE = createParameter("RETURN_VALUE", org.jooq.examples.oracle.sys.udt.DbmsXplanType.DBMS_XPLAN_TYPE.getDataType().asArrayDataType(org.jooq.examples.oracle.sys.udt.records.DbmsXplanTypeTableRecord.class)); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter SQL_ID = createParameter("SQL_ID", org.jooq.impl.SQLDataType.VARCHAR); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter PLAN_HASH_VALUE = createParameter("PLAN_HASH_VALUE", org.jooq.impl.SQLDataType.DECIMAL_INTEGER, true); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter DB_ID = createParameter("DB_ID", org.jooq.impl.SQLDataType.DECIMAL_INTEGER, true); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter FORMAT = createParameter("FORMAT", org.jooq.impl.SQLDataType.VARCHAR, true); + + /** + * Create a new routine call instance + */ + public DisplayAwr() { + super("DISPLAY_AWR", org.jooq.examples.oracle.sys.Sys.SYS, org.jooq.examples.oracle.sys.packages.DbmsXplan.DBMS_XPLAN, org.jooq.examples.oracle.sys.udt.DbmsXplanType.DBMS_XPLAN_TYPE.getDataType().asArrayDataType(org.jooq.examples.oracle.sys.udt.records.DbmsXplanTypeTableRecord.class)); + + setReturnParameter(RETURN_VALUE); + addInParameter(SQL_ID); + addInParameter(PLAN_HASH_VALUE); + addInParameter(DB_ID); + addInParameter(FORMAT); + } + + /** + * Set the SQL_ID parameter to the routine + */ + public void setSqlId(java.lang.String value) { + setValue(SQL_ID, value); + } + + /** + * Set the SQL_ID parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setSqlId(org.jooq.Field field) { + setField(SQL_ID, field); + } + + /** + * Set the PLAN_HASH_VALUE parameter to the routine + */ + public void setPlanHashValue(java.math.BigInteger value) { + setValue(PLAN_HASH_VALUE, value); + } + + /** + * Set the PLAN_HASH_VALUE parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setPlanHashValue(org.jooq.Field field) { + setField(PLAN_HASH_VALUE, field); + } + + /** + * Set the DB_ID parameter to the routine + */ + public void setDbId(java.math.BigInteger value) { + setValue(DB_ID, value); + } + + /** + * Set the DB_ID parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setDbId(org.jooq.Field field) { + setField(DB_ID, field); + } + + /** + * Set the FORMAT parameter to the routine + */ + public void setFormat(java.lang.String value) { + setValue(FORMAT, value); + } + + /** + * Set the FORMAT parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setFormat(org.jooq.Field field) { + setField(FORMAT, field); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/oracle/sys/packages/dbms_xplan/DisplayCursor.java b/jOOQ-test/examples/org/jooq/examples/oracle/sys/packages/dbms_xplan/DisplayCursor.java new file mode 100644 index 00000000000..87a0fc6d292 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/oracle/sys/packages/dbms_xplan/DisplayCursor.java @@ -0,0 +1,93 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.oracle.sys.packages.dbms_xplan; + +/** + * This class is generated by jOOQ. + */ +public class DisplayCursor extends org.jooq.impl.AbstractRoutine { + + private static final long serialVersionUID = 1877999924; + + + /** + * An uncommented item + */ + public static final org.jooq.Parameter RETURN_VALUE = createParameter("RETURN_VALUE", org.jooq.examples.oracle.sys.udt.DbmsXplanType.DBMS_XPLAN_TYPE.getDataType().asArrayDataType(org.jooq.examples.oracle.sys.udt.records.DbmsXplanTypeTableRecord.class)); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter SQL_ID = createParameter("SQL_ID", org.jooq.impl.SQLDataType.VARCHAR, true); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter CURSOR_CHILD_NO = createParameter("CURSOR_CHILD_NO", org.jooq.impl.SQLDataType.DECIMAL_INTEGER, true); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter FORMAT = createParameter("FORMAT", org.jooq.impl.SQLDataType.VARCHAR, true); + + /** + * Create a new routine call instance + */ + public DisplayCursor() { + super("DISPLAY_CURSOR", org.jooq.examples.oracle.sys.Sys.SYS, org.jooq.examples.oracle.sys.packages.DbmsXplan.DBMS_XPLAN, org.jooq.examples.oracle.sys.udt.DbmsXplanType.DBMS_XPLAN_TYPE.getDataType().asArrayDataType(org.jooq.examples.oracle.sys.udt.records.DbmsXplanTypeTableRecord.class)); + + setReturnParameter(RETURN_VALUE); + addInParameter(SQL_ID); + addInParameter(CURSOR_CHILD_NO); + addInParameter(FORMAT); + } + + /** + * Set the SQL_ID parameter to the routine + */ + public void setSqlId(java.lang.String value) { + setValue(SQL_ID, value); + } + + /** + * Set the SQL_ID parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setSqlId(org.jooq.Field field) { + setField(SQL_ID, field); + } + + /** + * Set the CURSOR_CHILD_NO parameter to the routine + */ + public void setCursorChildNo(java.math.BigInteger value) { + setValue(CURSOR_CHILD_NO, value); + } + + /** + * Set the CURSOR_CHILD_NO parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setCursorChildNo(org.jooq.Field field) { + setField(CURSOR_CHILD_NO, field); + } + + /** + * Set the FORMAT parameter to the routine + */ + public void setFormat(java.lang.String value) { + setValue(FORMAT, value); + } + + /** + * Set the FORMAT parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setFormat(org.jooq.Field field) { + setField(FORMAT, field); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/oracle/sys/packages/dbms_xplan/DisplayPlan.java b/jOOQ-test/examples/org/jooq/examples/oracle/sys/packages/dbms_xplan/DisplayPlan.java new file mode 100644 index 00000000000..cd499b40923 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/oracle/sys/packages/dbms_xplan/DisplayPlan.java @@ -0,0 +1,137 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.oracle.sys.packages.dbms_xplan; + +/** + * This class is generated by jOOQ. + */ +public class DisplayPlan extends org.jooq.impl.AbstractRoutine { + + private static final long serialVersionUID = -1539036962; + + + /** + * An uncommented item + */ + public static final org.jooq.Parameter RETURN_VALUE = createParameter("RETURN_VALUE", org.jooq.impl.SQLDataType.CLOB); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter TABLE_NAME = createParameter("TABLE_NAME", org.jooq.impl.SQLDataType.VARCHAR, true); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter STATEMENT_ID = createParameter("STATEMENT_ID", org.jooq.impl.SQLDataType.VARCHAR, true); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter FORMAT = createParameter("FORMAT", org.jooq.impl.SQLDataType.VARCHAR, true); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter FILTER_PREDS = createParameter("FILTER_PREDS", org.jooq.impl.SQLDataType.VARCHAR, true); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter TYPE = createParameter("TYPE", org.jooq.impl.SQLDataType.VARCHAR, true); + + /** + * Create a new routine call instance + */ + public DisplayPlan() { + super("DISPLAY_PLAN", org.jooq.examples.oracle.sys.Sys.SYS, org.jooq.examples.oracle.sys.packages.DbmsXplan.DBMS_XPLAN, org.jooq.impl.SQLDataType.CLOB); + + setReturnParameter(RETURN_VALUE); + addInParameter(TABLE_NAME); + addInParameter(STATEMENT_ID); + addInParameter(FORMAT); + addInParameter(FILTER_PREDS); + addInParameter(TYPE); + } + + /** + * Set the TABLE_NAME parameter to the routine + */ + public void setTableName(java.lang.String value) { + setValue(TABLE_NAME, value); + } + + /** + * Set the TABLE_NAME parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setTableName(org.jooq.Field field) { + setField(TABLE_NAME, field); + } + + /** + * Set the STATEMENT_ID parameter to the routine + */ + public void setStatementId(java.lang.String value) { + setValue(STATEMENT_ID, value); + } + + /** + * Set the STATEMENT_ID parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setStatementId(org.jooq.Field field) { + setField(STATEMENT_ID, field); + } + + /** + * Set the FORMAT parameter to the routine + */ + public void setFormat(java.lang.String value) { + setValue(FORMAT, value); + } + + /** + * Set the FORMAT parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setFormat(org.jooq.Field field) { + setField(FORMAT, field); + } + + /** + * Set the FILTER_PREDS parameter to the routine + */ + public void setFilterPreds(java.lang.String value) { + setValue(FILTER_PREDS, value); + } + + /** + * Set the FILTER_PREDS parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setFilterPreds(org.jooq.Field field) { + setField(FILTER_PREDS, field); + } + + /** + * Set the TYPE parameter to the routine + */ + public void setType(java.lang.String value) { + setValue(TYPE, value); + } + + /** + * Set the TYPE parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setType(org.jooq.Field field) { + setField(TYPE, field); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/oracle/sys/packages/dbms_xplan/DisplaySqlPlanBaseline.java b/jOOQ-test/examples/org/jooq/examples/oracle/sys/packages/dbms_xplan/DisplaySqlPlanBaseline.java new file mode 100644 index 00000000000..6ace6a6b673 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/oracle/sys/packages/dbms_xplan/DisplaySqlPlanBaseline.java @@ -0,0 +1,93 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.oracle.sys.packages.dbms_xplan; + +/** + * This class is generated by jOOQ. + */ +public class DisplaySqlPlanBaseline extends org.jooq.impl.AbstractRoutine { + + private static final long serialVersionUID = 534301557; + + + /** + * An uncommented item + */ + public static final org.jooq.Parameter RETURN_VALUE = createParameter("RETURN_VALUE", org.jooq.examples.oracle.sys.udt.DbmsXplanType.DBMS_XPLAN_TYPE.getDataType().asArrayDataType(org.jooq.examples.oracle.sys.udt.records.DbmsXplanTypeTableRecord.class)); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter SQL_HANDLE = createParameter("SQL_HANDLE", org.jooq.impl.SQLDataType.VARCHAR, true); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter PLAN_NAME = createParameter("PLAN_NAME", org.jooq.impl.SQLDataType.VARCHAR, true); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter FORMAT = createParameter("FORMAT", org.jooq.impl.SQLDataType.VARCHAR, true); + + /** + * Create a new routine call instance + */ + public DisplaySqlPlanBaseline() { + super("DISPLAY_SQL_PLAN_BASELINE", org.jooq.examples.oracle.sys.Sys.SYS, org.jooq.examples.oracle.sys.packages.DbmsXplan.DBMS_XPLAN, org.jooq.examples.oracle.sys.udt.DbmsXplanType.DBMS_XPLAN_TYPE.getDataType().asArrayDataType(org.jooq.examples.oracle.sys.udt.records.DbmsXplanTypeTableRecord.class)); + + setReturnParameter(RETURN_VALUE); + addInParameter(SQL_HANDLE); + addInParameter(PLAN_NAME); + addInParameter(FORMAT); + } + + /** + * Set the SQL_HANDLE parameter to the routine + */ + public void setSqlHandle(java.lang.String value) { + setValue(SQL_HANDLE, value); + } + + /** + * Set the SQL_HANDLE parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setSqlHandle(org.jooq.Field field) { + setField(SQL_HANDLE, field); + } + + /** + * Set the PLAN_NAME parameter to the routine + */ + public void setPlanName(java.lang.String value) { + setValue(PLAN_NAME, value); + } + + /** + * Set the PLAN_NAME parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setPlanName(org.jooq.Field field) { + setField(PLAN_NAME, field); + } + + /** + * Set the FORMAT parameter to the routine + */ + public void setFormat(java.lang.String value) { + setValue(FORMAT, value); + } + + /** + * Set the FORMAT parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setFormat(org.jooq.Field field) { + setField(FORMAT, field); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/oracle/sys/packages/dbms_xplan/DisplaySqlset.java b/jOOQ-test/examples/org/jooq/examples/oracle/sys/packages/dbms_xplan/DisplaySqlset.java new file mode 100644 index 00000000000..6858947170a --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/oracle/sys/packages/dbms_xplan/DisplaySqlset.java @@ -0,0 +1,137 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.oracle.sys.packages.dbms_xplan; + +/** + * This class is generated by jOOQ. + */ +public class DisplaySqlset extends org.jooq.impl.AbstractRoutine { + + private static final long serialVersionUID = -1281873839; + + + /** + * An uncommented item + */ + public static final org.jooq.Parameter RETURN_VALUE = createParameter("RETURN_VALUE", org.jooq.examples.oracle.sys.udt.DbmsXplanType.DBMS_XPLAN_TYPE.getDataType().asArrayDataType(org.jooq.examples.oracle.sys.udt.records.DbmsXplanTypeTableRecord.class)); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter SQLSET_NAME = createParameter("SQLSET_NAME", org.jooq.impl.SQLDataType.VARCHAR); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter SQL_ID = createParameter("SQL_ID", org.jooq.impl.SQLDataType.VARCHAR); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter PLAN_HASH_VALUE = createParameter("PLAN_HASH_VALUE", org.jooq.impl.SQLDataType.DECIMAL_INTEGER, true); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter FORMAT = createParameter("FORMAT", org.jooq.impl.SQLDataType.VARCHAR, true); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter SQLSET_OWNER = createParameter("SQLSET_OWNER", org.jooq.impl.SQLDataType.VARCHAR, true); + + /** + * Create a new routine call instance + */ + public DisplaySqlset() { + super("DISPLAY_SQLSET", org.jooq.examples.oracle.sys.Sys.SYS, org.jooq.examples.oracle.sys.packages.DbmsXplan.DBMS_XPLAN, org.jooq.examples.oracle.sys.udt.DbmsXplanType.DBMS_XPLAN_TYPE.getDataType().asArrayDataType(org.jooq.examples.oracle.sys.udt.records.DbmsXplanTypeTableRecord.class)); + + setReturnParameter(RETURN_VALUE); + addInParameter(SQLSET_NAME); + addInParameter(SQL_ID); + addInParameter(PLAN_HASH_VALUE); + addInParameter(FORMAT); + addInParameter(SQLSET_OWNER); + } + + /** + * Set the SQLSET_NAME parameter to the routine + */ + public void setSqlsetName(java.lang.String value) { + setValue(SQLSET_NAME, value); + } + + /** + * Set the SQLSET_NAME parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setSqlsetName(org.jooq.Field field) { + setField(SQLSET_NAME, field); + } + + /** + * Set the SQL_ID parameter to the routine + */ + public void setSqlId(java.lang.String value) { + setValue(SQL_ID, value); + } + + /** + * Set the SQL_ID parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setSqlId(org.jooq.Field field) { + setField(SQL_ID, field); + } + + /** + * Set the PLAN_HASH_VALUE parameter to the routine + */ + public void setPlanHashValue(java.math.BigInteger value) { + setValue(PLAN_HASH_VALUE, value); + } + + /** + * Set the PLAN_HASH_VALUE parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setPlanHashValue(org.jooq.Field field) { + setField(PLAN_HASH_VALUE, field); + } + + /** + * Set the FORMAT parameter to the routine + */ + public void setFormat(java.lang.String value) { + setValue(FORMAT, value); + } + + /** + * Set the FORMAT parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setFormat(org.jooq.Field field) { + setField(FORMAT, field); + } + + /** + * Set the SQLSET_OWNER parameter to the routine + */ + public void setSqlsetOwner(java.lang.String value) { + setValue(SQLSET_OWNER, value); + } + + /** + * Set the SQLSET_OWNER parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setSqlsetOwner(org.jooq.Field field) { + setField(SQLSET_OWNER, field); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/oracle/sys/packages/dbms_xplan/FormatNumber.java b/jOOQ-test/examples/org/jooq/examples/oracle/sys/packages/dbms_xplan/FormatNumber.java new file mode 100644 index 00000000000..585ea147ae1 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/oracle/sys/packages/dbms_xplan/FormatNumber.java @@ -0,0 +1,49 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.oracle.sys.packages.dbms_xplan; + +/** + * This class is generated by jOOQ. + */ +public class FormatNumber extends org.jooq.impl.AbstractRoutine { + + private static final long serialVersionUID = -1315978139; + + + /** + * An uncommented item + */ + public static final org.jooq.Parameter RETURN_VALUE = createParameter("RETURN_VALUE", org.jooq.impl.SQLDataType.VARCHAR); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter NUM = createParameter("NUM", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * Create a new routine call instance + */ + public FormatNumber() { + super("FORMAT_NUMBER", org.jooq.examples.oracle.sys.Sys.SYS, org.jooq.examples.oracle.sys.packages.DbmsXplan.DBMS_XPLAN, org.jooq.impl.SQLDataType.VARCHAR); + + setReturnParameter(RETURN_VALUE); + addInParameter(NUM); + } + + /** + * Set the NUM parameter to the routine + */ + public void setNum(java.lang.Number value) { + setNumber(NUM, value); + } + + /** + * Set the NUM parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setNum(org.jooq.Field field) { + setNumber(NUM, field); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/oracle/sys/packages/dbms_xplan/FormatNumber2.java b/jOOQ-test/examples/org/jooq/examples/oracle/sys/packages/dbms_xplan/FormatNumber2.java new file mode 100644 index 00000000000..343e617687e --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/oracle/sys/packages/dbms_xplan/FormatNumber2.java @@ -0,0 +1,49 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.oracle.sys.packages.dbms_xplan; + +/** + * This class is generated by jOOQ. + */ +public class FormatNumber2 extends org.jooq.impl.AbstractRoutine { + + private static final long serialVersionUID = 860763735; + + + /** + * An uncommented item + */ + public static final org.jooq.Parameter RETURN_VALUE = createParameter("RETURN_VALUE", org.jooq.impl.SQLDataType.VARCHAR); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter NUM = createParameter("NUM", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * Create a new routine call instance + */ + public FormatNumber2() { + super("FORMAT_NUMBER2", org.jooq.examples.oracle.sys.Sys.SYS, org.jooq.examples.oracle.sys.packages.DbmsXplan.DBMS_XPLAN, org.jooq.impl.SQLDataType.VARCHAR); + + setReturnParameter(RETURN_VALUE); + addInParameter(NUM); + } + + /** + * Set the NUM parameter to the routine + */ + public void setNum(java.lang.Number value) { + setNumber(NUM, value); + } + + /** + * Set the NUM parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setNum(org.jooq.Field field) { + setNumber(NUM, field); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/oracle/sys/packages/dbms_xplan/FormatSize.java b/jOOQ-test/examples/org/jooq/examples/oracle/sys/packages/dbms_xplan/FormatSize.java new file mode 100644 index 00000000000..2df30677363 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/oracle/sys/packages/dbms_xplan/FormatSize.java @@ -0,0 +1,49 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.oracle.sys.packages.dbms_xplan; + +/** + * This class is generated by jOOQ. + */ +public class FormatSize extends org.jooq.impl.AbstractRoutine { + + private static final long serialVersionUID = 354110061; + + + /** + * An uncommented item + */ + public static final org.jooq.Parameter RETURN_VALUE = createParameter("RETURN_VALUE", org.jooq.impl.SQLDataType.VARCHAR); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter NUM = createParameter("NUM", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * Create a new routine call instance + */ + public FormatSize() { + super("FORMAT_SIZE", org.jooq.examples.oracle.sys.Sys.SYS, org.jooq.examples.oracle.sys.packages.DbmsXplan.DBMS_XPLAN, org.jooq.impl.SQLDataType.VARCHAR); + + setReturnParameter(RETURN_VALUE); + addInParameter(NUM); + } + + /** + * Set the NUM parameter to the routine + */ + public void setNum(java.lang.Number value) { + setNumber(NUM, value); + } + + /** + * Set the NUM parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setNum(org.jooq.Field field) { + setNumber(NUM, field); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/oracle/sys/packages/dbms_xplan/FormatSize2.java b/jOOQ-test/examples/org/jooq/examples/oracle/sys/packages/dbms_xplan/FormatSize2.java new file mode 100644 index 00000000000..bb55af79a71 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/oracle/sys/packages/dbms_xplan/FormatSize2.java @@ -0,0 +1,49 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.oracle.sys.packages.dbms_xplan; + +/** + * This class is generated by jOOQ. + */ +public class FormatSize2 extends org.jooq.impl.AbstractRoutine { + + private static final long serialVersionUID = -977301825; + + + /** + * An uncommented item + */ + public static final org.jooq.Parameter RETURN_VALUE = createParameter("RETURN_VALUE", org.jooq.impl.SQLDataType.VARCHAR); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter NUM = createParameter("NUM", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * Create a new routine call instance + */ + public FormatSize2() { + super("FORMAT_SIZE2", org.jooq.examples.oracle.sys.Sys.SYS, org.jooq.examples.oracle.sys.packages.DbmsXplan.DBMS_XPLAN, org.jooq.impl.SQLDataType.VARCHAR); + + setReturnParameter(RETURN_VALUE); + addInParameter(NUM); + } + + /** + * Set the NUM parameter to the routine + */ + public void setNum(java.lang.Number value) { + setNumber(NUM, value); + } + + /** + * Set the NUM parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setNum(org.jooq.Field field) { + setNumber(NUM, field); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/oracle/sys/packages/dbms_xplan/FormatTimeS.java b/jOOQ-test/examples/org/jooq/examples/oracle/sys/packages/dbms_xplan/FormatTimeS.java new file mode 100644 index 00000000000..4138c6d1577 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/oracle/sys/packages/dbms_xplan/FormatTimeS.java @@ -0,0 +1,49 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.oracle.sys.packages.dbms_xplan; + +/** + * This class is generated by jOOQ. + */ +public class FormatTimeS extends org.jooq.impl.AbstractRoutine { + + private static final long serialVersionUID = 2039736297; + + + /** + * An uncommented item + */ + public static final org.jooq.Parameter RETURN_VALUE = createParameter("RETURN_VALUE", org.jooq.impl.SQLDataType.VARCHAR); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter NUM = createParameter("NUM", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * Create a new routine call instance + */ + public FormatTimeS() { + super("FORMAT_TIME_S", org.jooq.examples.oracle.sys.Sys.SYS, org.jooq.examples.oracle.sys.packages.DbmsXplan.DBMS_XPLAN, org.jooq.impl.SQLDataType.VARCHAR); + + setReturnParameter(RETURN_VALUE); + addInParameter(NUM); + } + + /** + * Set the NUM parameter to the routine + */ + public void setNum(java.lang.Number value) { + setNumber(NUM, value); + } + + /** + * Set the NUM parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setNum(org.jooq.Field field) { + setNumber(NUM, field); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/oracle/sys/packages/dbms_xplan/GetPlandiffReportXml.java b/jOOQ-test/examples/org/jooq/examples/oracle/sys/packages/dbms_xplan/GetPlandiffReportXml.java new file mode 100644 index 00000000000..cde2251b244 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/oracle/sys/packages/dbms_xplan/GetPlandiffReportXml.java @@ -0,0 +1,96 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.oracle.sys.packages.dbms_xplan; + +/** + * This class is generated by jOOQ. + */ +public class GetPlandiffReportXml extends org.jooq.impl.AbstractRoutine { + + private static final long serialVersionUID = 1712537906; + + + /** + * An uncommented item + * + * The SQL type of this item (UNDEFINED, XMLTYPE) could not be mapped.
+ * Deserialising this field might not work! + */ + public static final org.jooq.Parameter RETURN_VALUE = createParameter("RETURN_VALUE", org.jooq.util.oracle.OracleDataType.getDefaultDataType("UNDEFINED")); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter REPORT_REF = createParameter("REPORT_REF", org.jooq.impl.SQLDataType.VARCHAR, true); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter TID = createParameter("TID", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter METHOD = createParameter("METHOD", org.jooq.impl.SQLDataType.VARCHAR); + + /** + * Create a new routine call instance + */ + public GetPlandiffReportXml() { + super("GET_PLANDIFF_REPORT_XML", org.jooq.examples.oracle.sys.Sys.SYS, org.jooq.examples.oracle.sys.packages.DbmsXplan.DBMS_XPLAN, org.jooq.util.oracle.OracleDataType.getDefaultDataType("UNDEFINED")); + + setReturnParameter(RETURN_VALUE); + addInParameter(REPORT_REF); + addInParameter(TID); + addInParameter(METHOD); + } + + /** + * Set the REPORT_REF parameter to the routine + */ + public void setReportRef(java.lang.String value) { + setValue(REPORT_REF, value); + } + + /** + * Set the REPORT_REF parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setReportRef(org.jooq.Field field) { + setField(REPORT_REF, field); + } + + /** + * Set the TID parameter to the routine + */ + public void setTid(java.lang.Number value) { + setNumber(TID, value); + } + + /** + * Set the TID parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setTid(org.jooq.Field field) { + setNumber(TID, field); + } + + /** + * Set the METHOD parameter to the routine + */ + public void setMethod(java.lang.String value) { + setValue(METHOD, value); + } + + /** + * Set the METHOD parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setMethod(org.jooq.Field field) { + setField(METHOD, field); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/oracle/sys/packages/dbms_xplan/PreparePlanXmlQuery.java b/jOOQ-test/examples/org/jooq/examples/oracle/sys/packages/dbms_xplan/PreparePlanXmlQuery.java new file mode 100644 index 00000000000..de82bea997b --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/oracle/sys/packages/dbms_xplan/PreparePlanXmlQuery.java @@ -0,0 +1,49 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.oracle.sys.packages.dbms_xplan; + +/** + * This class is generated by jOOQ. + */ +public class PreparePlanXmlQuery extends org.jooq.impl.AbstractRoutine { + + private static final long serialVersionUID = -1208991009; + + + /** + * An uncommented item + */ + public static final org.jooq.Parameter RETURN_VALUE = createParameter("RETURN_VALUE", org.jooq.impl.SQLDataType.VARCHAR); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter PLAN_QUERY = createParameter("PLAN_QUERY", org.jooq.impl.SQLDataType.VARCHAR); + + /** + * Create a new routine call instance + */ + public PreparePlanXmlQuery() { + super("PREPARE_PLAN_XML_QUERY", org.jooq.examples.oracle.sys.Sys.SYS, org.jooq.examples.oracle.sys.packages.DbmsXplan.DBMS_XPLAN, org.jooq.impl.SQLDataType.VARCHAR); + + setReturnParameter(RETURN_VALUE); + addInParameter(PLAN_QUERY); + } + + /** + * Set the PLAN_QUERY parameter to the routine + */ + public void setPlanQuery(java.lang.String value) { + setValue(PLAN_QUERY, value); + } + + /** + * Set the PLAN_QUERY parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setPlanQuery(org.jooq.Field field) { + setField(PLAN_QUERY, field); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/oracle/sys/packages/dbms_xplan/PrepareRecords.java b/jOOQ-test/examples/org/jooq/examples/oracle/sys/packages/dbms_xplan/PrepareRecords.java new file mode 100644 index 00000000000..332695438cf --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/oracle/sys/packages/dbms_xplan/PrepareRecords.java @@ -0,0 +1,71 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.oracle.sys.packages.dbms_xplan; + +/** + * This class is generated by jOOQ. + */ +public class PrepareRecords extends org.jooq.impl.AbstractRoutine { + + private static final long serialVersionUID = 1327322139; + + + /** + * An uncommented item + */ + public static final org.jooq.Parameter RETURN_VALUE = createParameter("RETURN_VALUE", org.jooq.examples.oracle.sys.udt.DbmsXplanType.DBMS_XPLAN_TYPE.getDataType().asArrayDataType(org.jooq.examples.oracle.sys.udt.records.DbmsXplanTypeTableRecord.class)); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter> PLAN_CUR = createParameter("PLAN_CUR", org.jooq.impl.SQLDataType.RESULT); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter I_FORMAT_FLAGS = createParameter("I_FORMAT_FLAGS", org.jooq.impl.SQLDataType.INTEGER); + + /** + * Create a new routine call instance + */ + public PrepareRecords() { + super("PREPARE_RECORDS", org.jooq.examples.oracle.sys.Sys.SYS, org.jooq.examples.oracle.sys.packages.DbmsXplan.DBMS_XPLAN, org.jooq.examples.oracle.sys.udt.DbmsXplanType.DBMS_XPLAN_TYPE.getDataType().asArrayDataType(org.jooq.examples.oracle.sys.udt.records.DbmsXplanTypeTableRecord.class)); + + setReturnParameter(RETURN_VALUE); + addInParameter(PLAN_CUR); + addInParameter(I_FORMAT_FLAGS); + } + + /** + * Set the PLAN_CUR parameter to the routine + */ + public void setPlanCur(org.jooq.Result value) { + setValue(PLAN_CUR, value); + } + + /** + * Set the PLAN_CUR parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setPlanCur(org.jooq.Field> field) { + setField(PLAN_CUR, field); + } + + /** + * Set the I_FORMAT_FLAGS parameter to the routine + */ + public void setIFormatFlags(java.lang.Integer value) { + setValue(I_FORMAT_FLAGS, value); + } + + /** + * Set the I_FORMAT_FLAGS parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setIFormatFlags(org.jooq.Field field) { + setField(I_FORMAT_FLAGS, field); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/oracle/sys/packages/dbms_xplan/ValidateFormat.java b/jOOQ-test/examples/org/jooq/examples/oracle/sys/packages/dbms_xplan/ValidateFormat.java new file mode 100644 index 00000000000..4028b0a3cef --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/oracle/sys/packages/dbms_xplan/ValidateFormat.java @@ -0,0 +1,69 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.oracle.sys.packages.dbms_xplan; + +/** + * This class is generated by jOOQ. + */ +public class ValidateFormat extends org.jooq.impl.AbstractRoutine { + + private static final long serialVersionUID = 1376721367; + + + /** + * An uncommented item + * + * The SQL type of this item (PL/SQL BOOLEAN, null) could not be mapped.
+ * Deserialising this field might not work! + */ + public static final org.jooq.Parameter RETURN_VALUE = createParameter("RETURN_VALUE", org.jooq.util.oracle.OracleDataType.getDefaultDataType("PL/SQL BOOLEAN")); + + /** + * An uncommented item + * + * The SQL type of this item (PL/SQL BOOLEAN, null) could not be mapped.
+ * Deserialising this field might not work! + */ + public static final org.jooq.Parameter HASPLANSTATS = createParameter("HASPLANSTATS", org.jooq.util.oracle.OracleDataType.getDefaultDataType("PL/SQL BOOLEAN")); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter FORMAT = createParameter("FORMAT", org.jooq.impl.SQLDataType.VARCHAR); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter FORMAT_FLAGS = createParameter("FORMAT_FLAGS", org.jooq.impl.SQLDataType.INTEGER); + + /** + * Create a new routine call instance + */ + public ValidateFormat() { + super("VALIDATE_FORMAT", org.jooq.examples.oracle.sys.Sys.SYS, org.jooq.examples.oracle.sys.packages.DbmsXplan.DBMS_XPLAN, org.jooq.util.oracle.OracleDataType.getDefaultDataType("PL/SQL BOOLEAN")); + + setReturnParameter(RETURN_VALUE); + addInParameter(HASPLANSTATS); + addInParameter(FORMAT); + addOutParameter(FORMAT_FLAGS); + } + + /** + * Set the HASPLANSTATS parameter to the routine + */ + public void setHasplanstats(java.lang.Object value) { + setValue(HASPLANSTATS, value); + } + + /** + * Set the FORMAT parameter to the routine + */ + public void setFormat(java.lang.String value) { + setValue(FORMAT, value); + } + + public java.lang.Integer getFormatFlags() { + return getValue(FORMAT_FLAGS); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/oracle/sys/udt/DbmsXplanType.java b/jOOQ-test/examples/org/jooq/examples/oracle/sys/udt/DbmsXplanType.java new file mode 100644 index 00000000000..73525695f60 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/oracle/sys/udt/DbmsXplanType.java @@ -0,0 +1,42 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.oracle.sys.udt; + +/** + * This class is generated by jOOQ. + */ +public class DbmsXplanType extends org.jooq.impl.UDTImpl { + + private static final long serialVersionUID = -1155864431; + + /** + * The singleton instance of SYS.DBMS_XPLAN_TYPE + */ + public static final org.jooq.examples.oracle.sys.udt.DbmsXplanType DBMS_XPLAN_TYPE = new org.jooq.examples.oracle.sys.udt.DbmsXplanType(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.examples.oracle.sys.udt.records.DbmsXplanTypeRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + */ + public static final org.jooq.UDTField PLAN_TABLE_OUTPUT = createField("PLAN_TABLE_OUTPUT", org.jooq.impl.SQLDataType.VARCHAR, DBMS_XPLAN_TYPE); + + /** + * No further instances allowed + */ + private DbmsXplanType() { + super("DBMS_XPLAN_TYPE", org.jooq.examples.oracle.sys.Sys.SYS); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/oracle/sys/udt/records/DbmsXplanTypeRecord.java b/jOOQ-test/examples/org/jooq/examples/oracle/sys/udt/records/DbmsXplanTypeRecord.java new file mode 100644 index 00000000000..6ed31509266 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/oracle/sys/udt/records/DbmsXplanTypeRecord.java @@ -0,0 +1,31 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.oracle.sys.udt.records; + +/** + * This class is generated by jOOQ. + */ +public class DbmsXplanTypeRecord extends org.jooq.impl.UDTRecordImpl { + + private static final long serialVersionUID = -323908679; + + + /** + * An uncommented item + */ + public void setPlanTableOutput(java.lang.String value) { + setValue(org.jooq.examples.oracle.sys.udt.DbmsXplanType.PLAN_TABLE_OUTPUT, value); + } + + /** + * An uncommented item + */ + public java.lang.String getPlanTableOutput() { + return getValue(org.jooq.examples.oracle.sys.udt.DbmsXplanType.PLAN_TABLE_OUTPUT); + } + + public DbmsXplanTypeRecord() { + super(org.jooq.examples.oracle.sys.udt.DbmsXplanType.DBMS_XPLAN_TYPE); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/oracle/sys/udt/records/DbmsXplanTypeTableRecord.java b/jOOQ-test/examples/org/jooq/examples/oracle/sys/udt/records/DbmsXplanTypeTableRecord.java new file mode 100644 index 00000000000..6057732a1ab --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/oracle/sys/udt/records/DbmsXplanTypeTableRecord.java @@ -0,0 +1,26 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.oracle.sys.udt.records; + +/** + * This class is generated by jOOQ. + */ +public class DbmsXplanTypeTableRecord extends org.jooq.impl.ArrayRecordImpl { + + private static final long serialVersionUID = 712588998; + + public DbmsXplanTypeTableRecord(org.jooq.Configuration configuration) { + super(org.jooq.examples.oracle.sys.Sys.SYS, "DBMS_XPLAN_TYPE_TABLE", org.jooq.examples.oracle.sys.udt.DbmsXplanType.DBMS_XPLAN_TYPE.getDataType(), configuration); + } + + public DbmsXplanTypeTableRecord(org.jooq.Configuration configuration, org.jooq.examples.oracle.sys.udt.records.DbmsXplanTypeRecord... array) { + this(configuration); + set(array); + } + + public DbmsXplanTypeTableRecord(org.jooq.Configuration configuration, java.util.List list) { + this(configuration); + setList(list); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/dbo/Keys.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/dbo/Keys.java new file mode 100644 index 00000000000..5d18abca42c --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/dbo/Keys.java @@ -0,0 +1,30 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.dbo; + +/** + * This class is generated by jOOQ. + * + * A class modelling foreign key relationships between tables of the dbo schema + */ +@SuppressWarnings({"unchecked"}) +public class Keys extends org.jooq.impl.AbstractKeys { + + // IDENTITY definitions + public static final org.jooq.Identity IDENTITY_AWBuildVersion = createIdentity(org.jooq.examples.sqlserver.adventureworks.dbo.tables.AWBuildVersion.AWBuildVersion, org.jooq.examples.sqlserver.adventureworks.dbo.tables.AWBuildVersion.AWBuildVersion.SystemInformationID); + public static final org.jooq.Identity IDENTITY_DatabaseLog = createIdentity(org.jooq.examples.sqlserver.adventureworks.dbo.tables.DatabaseLog.DatabaseLog, org.jooq.examples.sqlserver.adventureworks.dbo.tables.DatabaseLog.DatabaseLog.DatabaseLogID); + public static final org.jooq.Identity IDENTITY_ErrorLog = createIdentity(org.jooq.examples.sqlserver.adventureworks.dbo.tables.ErrorLog.ErrorLog, org.jooq.examples.sqlserver.adventureworks.dbo.tables.ErrorLog.ErrorLog.ErrorLogID); + + // UNIQUE and PRIMARY KEY definitions + public static final org.jooq.UniqueKey PK_AWBuildVersion_SystemInformationID = createUniqueKey(org.jooq.examples.sqlserver.adventureworks.dbo.tables.AWBuildVersion.AWBuildVersion, org.jooq.examples.sqlserver.adventureworks.dbo.tables.AWBuildVersion.AWBuildVersion.SystemInformationID); + public static final org.jooq.UniqueKey PK_DatabaseLog_DatabaseLogID = createUniqueKey(org.jooq.examples.sqlserver.adventureworks.dbo.tables.DatabaseLog.DatabaseLog, org.jooq.examples.sqlserver.adventureworks.dbo.tables.DatabaseLog.DatabaseLog.DatabaseLogID); + public static final org.jooq.UniqueKey PK_ErrorLog_ErrorLogID = createUniqueKey(org.jooq.examples.sqlserver.adventureworks.dbo.tables.ErrorLog.ErrorLog, org.jooq.examples.sqlserver.adventureworks.dbo.tables.ErrorLog.ErrorLog.ErrorLogID); + + // FOREIGN KEY definitions + + /** + * No instances + */ + private Keys() {} +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/dbo/Routines.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/dbo/Routines.java new file mode 100644 index 00000000000..767be66ae2a --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/dbo/Routines.java @@ -0,0 +1,502 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.dbo; + +/** + * This class is generated by jOOQ. + * + * Convenience access to all stored procedures and functions in dbo + */ +public final class Routines { + + /** + * Call dbo.ufnGetAccountingEndDate + * + * @throws org.jooq.exception.DataAccessException if something went wrong executing the query + */ + public static java.sql.Timestamp ufnGetAccountingEndDate(org.jooq.Configuration configuration) { + org.jooq.examples.sqlserver.adventureworks.dbo.routines.ufnGetAccountingEndDate f = new org.jooq.examples.sqlserver.adventureworks.dbo.routines.ufnGetAccountingEndDate(); + + f.execute(configuration); + return f.getReturnValue(); + } + + /** + * Get dbo.ufnGetAccountingEndDate as a field + * + */ + public static org.jooq.Field ufnGetAccountingEndDate() { + org.jooq.examples.sqlserver.adventureworks.dbo.routines.ufnGetAccountingEndDate f = new org.jooq.examples.sqlserver.adventureworks.dbo.routines.ufnGetAccountingEndDate(); + + return f.asField(); + } + + /** + * Call dbo.ufnGetAccountingStartDate + * + * @throws org.jooq.exception.DataAccessException if something went wrong executing the query + */ + public static java.sql.Timestamp ufnGetAccountingStartDate(org.jooq.Configuration configuration) { + org.jooq.examples.sqlserver.adventureworks.dbo.routines.ufnGetAccountingStartDate f = new org.jooq.examples.sqlserver.adventureworks.dbo.routines.ufnGetAccountingStartDate(); + + f.execute(configuration); + return f.getReturnValue(); + } + + /** + * Get dbo.ufnGetAccountingStartDate as a field + * + */ + public static org.jooq.Field ufnGetAccountingStartDate() { + org.jooq.examples.sqlserver.adventureworks.dbo.routines.ufnGetAccountingStartDate f = new org.jooq.examples.sqlserver.adventureworks.dbo.routines.ufnGetAccountingStartDate(); + + return f.asField(); + } + + /** + * Call dbo.ufnGetContactInformation + * + * @param ContactID + * @throws org.jooq.exception.DataAccessException if something went wrong executing the query + */ + public static java.lang.Object ufnGetContactInformation(org.jooq.Configuration configuration, java.lang.Integer ContactID) { + org.jooq.examples.sqlserver.adventureworks.dbo.routines.ufnGetContactInformation f = new org.jooq.examples.sqlserver.adventureworks.dbo.routines.ufnGetContactInformation(); + f.setContactID(ContactID); + + f.execute(configuration); + return f.getReturnValue(); + } + + /** + * Get dbo.ufnGetContactInformation as a field + * + * @param ContactID + */ + public static org.jooq.Field ufnGetContactInformation(java.lang.Integer ContactID) { + org.jooq.examples.sqlserver.adventureworks.dbo.routines.ufnGetContactInformation f = new org.jooq.examples.sqlserver.adventureworks.dbo.routines.ufnGetContactInformation(); + f.setContactID(ContactID); + + return f.asField(); + } + + /** + * Get dbo.ufnGetContactInformation as a field + * + * @param ContactID + */ + public static org.jooq.Field ufnGetContactInformation(org.jooq.Field ContactID) { + org.jooq.examples.sqlserver.adventureworks.dbo.routines.ufnGetContactInformation f = new org.jooq.examples.sqlserver.adventureworks.dbo.routines.ufnGetContactInformation(); + f.setContactID(ContactID); + + return f.asField(); + } + + /** + * Call dbo.ufnGetDocumentStatusText + * + * @param Status + * @throws org.jooq.exception.DataAccessException if something went wrong executing the query + */ + public static java.lang.String ufnGetDocumentStatusText(org.jooq.Configuration configuration, java.lang.Byte Status) { + org.jooq.examples.sqlserver.adventureworks.dbo.routines.ufnGetDocumentStatusText f = new org.jooq.examples.sqlserver.adventureworks.dbo.routines.ufnGetDocumentStatusText(); + f.setStatus(Status); + + f.execute(configuration); + return f.getReturnValue(); + } + + /** + * Get dbo.ufnGetDocumentStatusText as a field + * + * @param Status + */ + public static org.jooq.Field ufnGetDocumentStatusText(java.lang.Byte Status) { + org.jooq.examples.sqlserver.adventureworks.dbo.routines.ufnGetDocumentStatusText f = new org.jooq.examples.sqlserver.adventureworks.dbo.routines.ufnGetDocumentStatusText(); + f.setStatus(Status); + + return f.asField(); + } + + /** + * Get dbo.ufnGetDocumentStatusText as a field + * + * @param Status + */ + public static org.jooq.Field ufnGetDocumentStatusText(org.jooq.Field Status) { + org.jooq.examples.sqlserver.adventureworks.dbo.routines.ufnGetDocumentStatusText f = new org.jooq.examples.sqlserver.adventureworks.dbo.routines.ufnGetDocumentStatusText(); + f.setStatus(Status); + + return f.asField(); + } + + /** + * Call dbo.ufnGetProductDealerPrice + * + * @param ProductID + * @param OrderDate + * @throws org.jooq.exception.DataAccessException if something went wrong executing the query + */ + public static java.math.BigDecimal ufnGetProductDealerPrice(org.jooq.Configuration configuration, java.lang.Integer ProductID, java.sql.Timestamp OrderDate) { + org.jooq.examples.sqlserver.adventureworks.dbo.routines.ufnGetProductDealerPrice f = new org.jooq.examples.sqlserver.adventureworks.dbo.routines.ufnGetProductDealerPrice(); + f.setProductID(ProductID); + f.setOrderDate(OrderDate); + + f.execute(configuration); + return f.getReturnValue(); + } + + /** + * Get dbo.ufnGetProductDealerPrice as a field + * + * @param ProductID + * @param OrderDate + */ + public static org.jooq.Field ufnGetProductDealerPrice(java.lang.Integer ProductID, java.sql.Timestamp OrderDate) { + org.jooq.examples.sqlserver.adventureworks.dbo.routines.ufnGetProductDealerPrice f = new org.jooq.examples.sqlserver.adventureworks.dbo.routines.ufnGetProductDealerPrice(); + f.setProductID(ProductID); + f.setOrderDate(OrderDate); + + return f.asField(); + } + + /** + * Get dbo.ufnGetProductDealerPrice as a field + * + * @param ProductID + * @param OrderDate + */ + public static org.jooq.Field ufnGetProductDealerPrice(org.jooq.Field ProductID, org.jooq.Field OrderDate) { + org.jooq.examples.sqlserver.adventureworks.dbo.routines.ufnGetProductDealerPrice f = new org.jooq.examples.sqlserver.adventureworks.dbo.routines.ufnGetProductDealerPrice(); + f.setProductID(ProductID); + f.setOrderDate(OrderDate); + + return f.asField(); + } + + /** + * Call dbo.ufnGetProductListPrice + * + * @param ProductID + * @param OrderDate + * @throws org.jooq.exception.DataAccessException if something went wrong executing the query + */ + public static java.math.BigDecimal ufnGetProductListPrice(org.jooq.Configuration configuration, java.lang.Integer ProductID, java.sql.Timestamp OrderDate) { + org.jooq.examples.sqlserver.adventureworks.dbo.routines.ufnGetProductListPrice f = new org.jooq.examples.sqlserver.adventureworks.dbo.routines.ufnGetProductListPrice(); + f.setProductID(ProductID); + f.setOrderDate(OrderDate); + + f.execute(configuration); + return f.getReturnValue(); + } + + /** + * Get dbo.ufnGetProductListPrice as a field + * + * @param ProductID + * @param OrderDate + */ + public static org.jooq.Field ufnGetProductListPrice(java.lang.Integer ProductID, java.sql.Timestamp OrderDate) { + org.jooq.examples.sqlserver.adventureworks.dbo.routines.ufnGetProductListPrice f = new org.jooq.examples.sqlserver.adventureworks.dbo.routines.ufnGetProductListPrice(); + f.setProductID(ProductID); + f.setOrderDate(OrderDate); + + return f.asField(); + } + + /** + * Get dbo.ufnGetProductListPrice as a field + * + * @param ProductID + * @param OrderDate + */ + public static org.jooq.Field ufnGetProductListPrice(org.jooq.Field ProductID, org.jooq.Field OrderDate) { + org.jooq.examples.sqlserver.adventureworks.dbo.routines.ufnGetProductListPrice f = new org.jooq.examples.sqlserver.adventureworks.dbo.routines.ufnGetProductListPrice(); + f.setProductID(ProductID); + f.setOrderDate(OrderDate); + + return f.asField(); + } + + /** + * Call dbo.ufnGetProductStandardCost + * + * @param ProductID + * @param OrderDate + * @throws org.jooq.exception.DataAccessException if something went wrong executing the query + */ + public static java.math.BigDecimal ufnGetProductStandardCost(org.jooq.Configuration configuration, java.lang.Integer ProductID, java.sql.Timestamp OrderDate) { + org.jooq.examples.sqlserver.adventureworks.dbo.routines.ufnGetProductStandardCost f = new org.jooq.examples.sqlserver.adventureworks.dbo.routines.ufnGetProductStandardCost(); + f.setProductID(ProductID); + f.setOrderDate(OrderDate); + + f.execute(configuration); + return f.getReturnValue(); + } + + /** + * Get dbo.ufnGetProductStandardCost as a field + * + * @param ProductID + * @param OrderDate + */ + public static org.jooq.Field ufnGetProductStandardCost(java.lang.Integer ProductID, java.sql.Timestamp OrderDate) { + org.jooq.examples.sqlserver.adventureworks.dbo.routines.ufnGetProductStandardCost f = new org.jooq.examples.sqlserver.adventureworks.dbo.routines.ufnGetProductStandardCost(); + f.setProductID(ProductID); + f.setOrderDate(OrderDate); + + return f.asField(); + } + + /** + * Get dbo.ufnGetProductStandardCost as a field + * + * @param ProductID + * @param OrderDate + */ + public static org.jooq.Field ufnGetProductStandardCost(org.jooq.Field ProductID, org.jooq.Field OrderDate) { + org.jooq.examples.sqlserver.adventureworks.dbo.routines.ufnGetProductStandardCost f = new org.jooq.examples.sqlserver.adventureworks.dbo.routines.ufnGetProductStandardCost(); + f.setProductID(ProductID); + f.setOrderDate(OrderDate); + + return f.asField(); + } + + /** + * Call dbo.ufnGetPurchaseOrderStatusText + * + * @param Status + * @throws org.jooq.exception.DataAccessException if something went wrong executing the query + */ + public static java.lang.String ufnGetPurchaseOrderStatusText(org.jooq.Configuration configuration, java.lang.Byte Status) { + org.jooq.examples.sqlserver.adventureworks.dbo.routines.ufnGetPurchaseOrderStatusText f = new org.jooq.examples.sqlserver.adventureworks.dbo.routines.ufnGetPurchaseOrderStatusText(); + f.setStatus(Status); + + f.execute(configuration); + return f.getReturnValue(); + } + + /** + * Get dbo.ufnGetPurchaseOrderStatusText as a field + * + * @param Status + */ + public static org.jooq.Field ufnGetPurchaseOrderStatusText(java.lang.Byte Status) { + org.jooq.examples.sqlserver.adventureworks.dbo.routines.ufnGetPurchaseOrderStatusText f = new org.jooq.examples.sqlserver.adventureworks.dbo.routines.ufnGetPurchaseOrderStatusText(); + f.setStatus(Status); + + return f.asField(); + } + + /** + * Get dbo.ufnGetPurchaseOrderStatusText as a field + * + * @param Status + */ + public static org.jooq.Field ufnGetPurchaseOrderStatusText(org.jooq.Field Status) { + org.jooq.examples.sqlserver.adventureworks.dbo.routines.ufnGetPurchaseOrderStatusText f = new org.jooq.examples.sqlserver.adventureworks.dbo.routines.ufnGetPurchaseOrderStatusText(); + f.setStatus(Status); + + return f.asField(); + } + + /** + * Call dbo.ufnGetSalesOrderStatusText + * + * @param Status + * @throws org.jooq.exception.DataAccessException if something went wrong executing the query + */ + public static java.lang.String ufnGetSalesOrderStatusText(org.jooq.Configuration configuration, java.lang.Byte Status) { + org.jooq.examples.sqlserver.adventureworks.dbo.routines.ufnGetSalesOrderStatusText f = new org.jooq.examples.sqlserver.adventureworks.dbo.routines.ufnGetSalesOrderStatusText(); + f.setStatus(Status); + + f.execute(configuration); + return f.getReturnValue(); + } + + /** + * Get dbo.ufnGetSalesOrderStatusText as a field + * + * @param Status + */ + public static org.jooq.Field ufnGetSalesOrderStatusText(java.lang.Byte Status) { + org.jooq.examples.sqlserver.adventureworks.dbo.routines.ufnGetSalesOrderStatusText f = new org.jooq.examples.sqlserver.adventureworks.dbo.routines.ufnGetSalesOrderStatusText(); + f.setStatus(Status); + + return f.asField(); + } + + /** + * Get dbo.ufnGetSalesOrderStatusText as a field + * + * @param Status + */ + public static org.jooq.Field ufnGetSalesOrderStatusText(org.jooq.Field Status) { + org.jooq.examples.sqlserver.adventureworks.dbo.routines.ufnGetSalesOrderStatusText f = new org.jooq.examples.sqlserver.adventureworks.dbo.routines.ufnGetSalesOrderStatusText(); + f.setStatus(Status); + + return f.asField(); + } + + /** + * Call dbo.ufnGetStock + * + * @param ProductID + * @throws org.jooq.exception.DataAccessException if something went wrong executing the query + */ + public static java.lang.Integer ufnGetStock(org.jooq.Configuration configuration, java.lang.Integer ProductID) { + org.jooq.examples.sqlserver.adventureworks.dbo.routines.ufnGetStock f = new org.jooq.examples.sqlserver.adventureworks.dbo.routines.ufnGetStock(); + f.setProductID(ProductID); + + f.execute(configuration); + return f.getReturnValue(); + } + + /** + * Get dbo.ufnGetStock as a field + * + * @param ProductID + */ + public static org.jooq.Field ufnGetStock(java.lang.Integer ProductID) { + org.jooq.examples.sqlserver.adventureworks.dbo.routines.ufnGetStock f = new org.jooq.examples.sqlserver.adventureworks.dbo.routines.ufnGetStock(); + f.setProductID(ProductID); + + return f.asField(); + } + + /** + * Get dbo.ufnGetStock as a field + * + * @param ProductID + */ + public static org.jooq.Field ufnGetStock(org.jooq.Field ProductID) { + org.jooq.examples.sqlserver.adventureworks.dbo.routines.ufnGetStock f = new org.jooq.examples.sqlserver.adventureworks.dbo.routines.ufnGetStock(); + f.setProductID(ProductID); + + return f.asField(); + } + + /** + * Call dbo.ufnLeadingZeros + * + * @param Value + * @throws org.jooq.exception.DataAccessException if something went wrong executing the query + */ + public static java.lang.String ufnLeadingZeros(org.jooq.Configuration configuration, java.lang.Integer Value) { + org.jooq.examples.sqlserver.adventureworks.dbo.routines.ufnLeadingZeros f = new org.jooq.examples.sqlserver.adventureworks.dbo.routines.ufnLeadingZeros(); + f.setValue(Value); + + f.execute(configuration); + return f.getReturnValue(); + } + + /** + * Get dbo.ufnLeadingZeros as a field + * + * @param Value + */ + public static org.jooq.Field ufnLeadingZeros(java.lang.Integer Value) { + org.jooq.examples.sqlserver.adventureworks.dbo.routines.ufnLeadingZeros f = new org.jooq.examples.sqlserver.adventureworks.dbo.routines.ufnLeadingZeros(); + f.setValue(Value); + + return f.asField(); + } + + /** + * Get dbo.ufnLeadingZeros as a field + * + * @param Value + */ + public static org.jooq.Field ufnLeadingZeros(org.jooq.Field Value) { + org.jooq.examples.sqlserver.adventureworks.dbo.routines.ufnLeadingZeros f = new org.jooq.examples.sqlserver.adventureworks.dbo.routines.ufnLeadingZeros(); + f.setValue(Value); + + return f.asField(); + } + + /** + * Call dbo.uspGetBillOfMaterials + * + * @param StartProductID IN parameter + * @param CheckDate IN parameter + * @throws org.jooq.exception.DataAccessException if something went wrong executing the query + */ + public static void uspGetBillOfMaterials(org.jooq.Configuration configuration, java.lang.Integer StartProductID, java.sql.Timestamp CheckDate) { + org.jooq.examples.sqlserver.adventureworks.dbo.routines.uspGetBillOfMaterials p = new org.jooq.examples.sqlserver.adventureworks.dbo.routines.uspGetBillOfMaterials(); + p.setStartProductID(StartProductID); + p.setCheckDate(CheckDate); + + p.execute(configuration); + } + + /** + * Call dbo.uspGetEmployeeManagers + * + * @param EmployeeID IN parameter + * @throws org.jooq.exception.DataAccessException if something went wrong executing the query + */ + public static void uspGetEmployeeManagers(org.jooq.Configuration configuration, java.lang.Integer EmployeeID) { + org.jooq.examples.sqlserver.adventureworks.dbo.routines.uspGetEmployeeManagers p = new org.jooq.examples.sqlserver.adventureworks.dbo.routines.uspGetEmployeeManagers(); + p.setEmployeeID(EmployeeID); + + p.execute(configuration); + } + + /** + * Call dbo.uspGetManagerEmployees + * + * @param ManagerID IN parameter + * @throws org.jooq.exception.DataAccessException if something went wrong executing the query + */ + public static void uspGetManagerEmployees(org.jooq.Configuration configuration, java.lang.Integer ManagerID) { + org.jooq.examples.sqlserver.adventureworks.dbo.routines.uspGetManagerEmployees p = new org.jooq.examples.sqlserver.adventureworks.dbo.routines.uspGetManagerEmployees(); + p.setManagerID(ManagerID); + + p.execute(configuration); + } + + /** + * Call dbo.uspGetWhereUsedProductID + * + * @param StartProductID IN parameter + * @param CheckDate IN parameter + * @throws org.jooq.exception.DataAccessException if something went wrong executing the query + */ + public static void uspGetWhereUsedProductID(org.jooq.Configuration configuration, java.lang.Integer StartProductID, java.sql.Timestamp CheckDate) { + org.jooq.examples.sqlserver.adventureworks.dbo.routines.uspGetWhereUsedProductID p = new org.jooq.examples.sqlserver.adventureworks.dbo.routines.uspGetWhereUsedProductID(); + p.setStartProductID(StartProductID); + p.setCheckDate(CheckDate); + + p.execute(configuration); + } + + /** + * Call dbo.uspLogError + * + * @param ErrorLogID IN OUT parameter + * @throws org.jooq.exception.DataAccessException if something went wrong executing the query + */ + public static java.lang.Integer uspLogError(org.jooq.Configuration configuration, java.lang.Integer ErrorLogID) { + org.jooq.examples.sqlserver.adventureworks.dbo.routines.uspLogError p = new org.jooq.examples.sqlserver.adventureworks.dbo.routines.uspLogError(); + p.setErrorLogID(ErrorLogID); + + p.execute(configuration); + return p.getErrorLogID(); + } + + /** + * Call dbo.uspPrintError + * + * @throws org.jooq.exception.DataAccessException if something went wrong executing the query + */ + public static void uspPrintError(org.jooq.Configuration configuration) { + org.jooq.examples.sqlserver.adventureworks.dbo.routines.uspPrintError p = new org.jooq.examples.sqlserver.adventureworks.dbo.routines.uspPrintError(); + + p.execute(configuration); + } + + /** + * No instances + */ + private Routines() {} +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/dbo/Tables.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/dbo/Tables.java new file mode 100644 index 00000000000..862ff8efabb --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/dbo/Tables.java @@ -0,0 +1,32 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.dbo; + +/** + * This class is generated by jOOQ. + * + * Convenience access to all tables in dbo + */ +public final class Tables { + + /** + * The table dbo.AWBuildVersion + */ + public static org.jooq.examples.sqlserver.adventureworks.dbo.tables.AWBuildVersion AWBuildVersion = org.jooq.examples.sqlserver.adventureworks.dbo.tables.AWBuildVersion.AWBuildVersion; + + /** + * The table dbo.DatabaseLog + */ + public static org.jooq.examples.sqlserver.adventureworks.dbo.tables.DatabaseLog DatabaseLog = org.jooq.examples.sqlserver.adventureworks.dbo.tables.DatabaseLog.DatabaseLog; + + /** + * The table dbo.ErrorLog + */ + public static org.jooq.examples.sqlserver.adventureworks.dbo.tables.ErrorLog ErrorLog = org.jooq.examples.sqlserver.adventureworks.dbo.tables.ErrorLog.ErrorLog; + + /** + * No instances + */ + private Tables() {} +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/dbo/dbo.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/dbo/dbo.java new file mode 100644 index 00000000000..2f24b3708be --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/dbo/dbo.java @@ -0,0 +1,32 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.dbo; + +/** + * This class is generated by jOOQ. + */ +public class dbo extends org.jooq.impl.SchemaImpl { + + private static final long serialVersionUID = -1994375115; + + /** + * The singleton instance of dbo + */ + public static final dbo dbo = new dbo(); + + /** + * No further instances allowed + */ + private dbo() { + super("dbo"); + } + + @Override + public final java.util.List> getTables() { + return java.util.Arrays.>asList( + org.jooq.examples.sqlserver.adventureworks.dbo.tables.AWBuildVersion.AWBuildVersion, + org.jooq.examples.sqlserver.adventureworks.dbo.tables.DatabaseLog.DatabaseLog, + org.jooq.examples.sqlserver.adventureworks.dbo.tables.ErrorLog.ErrorLog); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/dbo/dboFactory.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/dbo/dboFactory.java new file mode 100644 index 00000000000..e6f780bfe83 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/dbo/dboFactory.java @@ -0,0 +1,41 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.dbo; + +/** + * This class is generated by jOOQ. + */ +public class dboFactory extends org.jooq.util.sqlserver.SQLServerFactory { + + private static final long serialVersionUID = 2095140086; + + /** + * Create a factory with a connection + * + * @param connection The connection to use with objects created from this factory + */ + public dboFactory(java.sql.Connection connection) { + super(connection); + } + + /** + * Create a factory with a connection and a schema mapping + * + * @deprecated - 2.0.5 - Use {@link #dboFactory(java.sql.Connection, org.jooq.conf.Settings)} instead + */ + @Deprecated + public dboFactory(java.sql.Connection connection, org.jooq.SchemaMapping mapping) { + super(connection, mapping); + } + + /** + * Create a factory with a connection and some settings + * + * @param connection The connection to use with objects created from this factory + * @param settings The settings to apply to objects created from this factory + */ + public dboFactory(java.sql.Connection connection, org.jooq.conf.Settings settings) { + super(connection, settings); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/dbo/routines/ufnGetAccountingEndDate.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/dbo/routines/ufnGetAccountingEndDate.java new file mode 100644 index 00000000000..78459c59173 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/dbo/routines/ufnGetAccountingEndDate.java @@ -0,0 +1,27 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.dbo.routines; + +/** + * This class is generated by jOOQ. + */ +public class ufnGetAccountingEndDate extends org.jooq.impl.AbstractRoutine { + + private static final long serialVersionUID = 131486399; + + + /** + * An uncommented item + */ + public static final org.jooq.Parameter RETURN_VALUE = createParameter("RETURN_VALUE", org.jooq.impl.SQLDataType.TIMESTAMP); + + /** + * Create a new routine call instance + */ + public ufnGetAccountingEndDate() { + super("ufnGetAccountingEndDate", org.jooq.examples.sqlserver.adventureworks.dbo.dbo.dbo, org.jooq.impl.SQLDataType.TIMESTAMP); + + setReturnParameter(RETURN_VALUE); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/dbo/routines/ufnGetAccountingStartDate.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/dbo/routines/ufnGetAccountingStartDate.java new file mode 100644 index 00000000000..aee72dda683 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/dbo/routines/ufnGetAccountingStartDate.java @@ -0,0 +1,27 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.dbo.routines; + +/** + * This class is generated by jOOQ. + */ +public class ufnGetAccountingStartDate extends org.jooq.impl.AbstractRoutine { + + private static final long serialVersionUID = -640932634; + + + /** + * An uncommented item + */ + public static final org.jooq.Parameter RETURN_VALUE = createParameter("RETURN_VALUE", org.jooq.impl.SQLDataType.TIMESTAMP); + + /** + * Create a new routine call instance + */ + public ufnGetAccountingStartDate() { + super("ufnGetAccountingStartDate", org.jooq.examples.sqlserver.adventureworks.dbo.dbo.dbo, org.jooq.impl.SQLDataType.TIMESTAMP); + + setReturnParameter(RETURN_VALUE); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/dbo/routines/ufnGetContactInformation.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/dbo/routines/ufnGetContactInformation.java new file mode 100644 index 00000000000..6648c870c0d --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/dbo/routines/ufnGetContactInformation.java @@ -0,0 +1,52 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.dbo.routines; + +/** + * This class is generated by jOOQ. + */ +public class ufnGetContactInformation extends org.jooq.impl.AbstractRoutine { + + private static final long serialVersionUID = 183074089; + + + /** + * An uncommented item + * + * The SQL type of this item (TABLE) could not be mapped.
+ * Deserialising this field might not work! + */ + public static final org.jooq.Parameter RETURN_VALUE = createParameter("RETURN_VALUE", org.jooq.util.sqlserver.SQLServerDataType.getDefaultDataType("TABLE")); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter ContactID = createParameter("ContactID", org.jooq.impl.SQLDataType.INTEGER); + + /** + * Create a new routine call instance + */ + public ufnGetContactInformation() { + super("ufnGetContactInformation", org.jooq.examples.sqlserver.adventureworks.dbo.dbo.dbo, org.jooq.util.sqlserver.SQLServerDataType.getDefaultDataType("TABLE")); + + setReturnParameter(RETURN_VALUE); + addInParameter(ContactID); + } + + /** + * Set the ContactID parameter to the routine + */ + public void setContactID(java.lang.Integer value) { + setValue(ContactID, value); + } + + /** + * Set the ContactID parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setContactID(org.jooq.Field field) { + setField(ContactID, field); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/dbo/routines/ufnGetDocumentStatusText.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/dbo/routines/ufnGetDocumentStatusText.java new file mode 100644 index 00000000000..b9bbbcc4d93 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/dbo/routines/ufnGetDocumentStatusText.java @@ -0,0 +1,49 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.dbo.routines; + +/** + * This class is generated by jOOQ. + */ +public class ufnGetDocumentStatusText extends org.jooq.impl.AbstractRoutine { + + private static final long serialVersionUID = 1541722634; + + + /** + * An uncommented item + */ + public static final org.jooq.Parameter RETURN_VALUE = createParameter("RETURN_VALUE", org.jooq.impl.SQLDataType.NVARCHAR); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter Status = createParameter("Status", org.jooq.impl.SQLDataType.TINYINT); + + /** + * Create a new routine call instance + */ + public ufnGetDocumentStatusText() { + super("ufnGetDocumentStatusText", org.jooq.examples.sqlserver.adventureworks.dbo.dbo.dbo, org.jooq.impl.SQLDataType.NVARCHAR); + + setReturnParameter(RETURN_VALUE); + addInParameter(Status); + } + + /** + * Set the Status parameter to the routine + */ + public void setStatus(java.lang.Byte value) { + setValue(Status, value); + } + + /** + * Set the Status parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setStatus(org.jooq.Field field) { + setField(Status, field); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/dbo/routines/ufnGetProductDealerPrice.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/dbo/routines/ufnGetProductDealerPrice.java new file mode 100644 index 00000000000..783e40b153d --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/dbo/routines/ufnGetProductDealerPrice.java @@ -0,0 +1,71 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.dbo.routines; + +/** + * This class is generated by jOOQ. + */ +public class ufnGetProductDealerPrice extends org.jooq.impl.AbstractRoutine { + + private static final long serialVersionUID = -687962638; + + + /** + * An uncommented item + */ + public static final org.jooq.Parameter RETURN_VALUE = createParameter("RETURN_VALUE", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter ProductID = createParameter("ProductID", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter OrderDate = createParameter("OrderDate", org.jooq.impl.SQLDataType.TIMESTAMP); + + /** + * Create a new routine call instance + */ + public ufnGetProductDealerPrice() { + super("ufnGetProductDealerPrice", org.jooq.examples.sqlserver.adventureworks.dbo.dbo.dbo, org.jooq.impl.SQLDataType.NUMERIC); + + setReturnParameter(RETURN_VALUE); + addInParameter(ProductID); + addInParameter(OrderDate); + } + + /** + * Set the ProductID parameter to the routine + */ + public void setProductID(java.lang.Integer value) { + setValue(ProductID, value); + } + + /** + * Set the ProductID parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setProductID(org.jooq.Field field) { + setField(ProductID, field); + } + + /** + * Set the OrderDate parameter to the routine + */ + public void setOrderDate(java.sql.Timestamp value) { + setValue(OrderDate, value); + } + + /** + * Set the OrderDate parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setOrderDate(org.jooq.Field field) { + setField(OrderDate, field); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/dbo/routines/ufnGetProductListPrice.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/dbo/routines/ufnGetProductListPrice.java new file mode 100644 index 00000000000..624b1fadac6 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/dbo/routines/ufnGetProductListPrice.java @@ -0,0 +1,71 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.dbo.routines; + +/** + * This class is generated by jOOQ. + */ +public class ufnGetProductListPrice extends org.jooq.impl.AbstractRoutine { + + private static final long serialVersionUID = -1190140735; + + + /** + * An uncommented item + */ + public static final org.jooq.Parameter RETURN_VALUE = createParameter("RETURN_VALUE", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter ProductID = createParameter("ProductID", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter OrderDate = createParameter("OrderDate", org.jooq.impl.SQLDataType.TIMESTAMP); + + /** + * Create a new routine call instance + */ + public ufnGetProductListPrice() { + super("ufnGetProductListPrice", org.jooq.examples.sqlserver.adventureworks.dbo.dbo.dbo, org.jooq.impl.SQLDataType.NUMERIC); + + setReturnParameter(RETURN_VALUE); + addInParameter(ProductID); + addInParameter(OrderDate); + } + + /** + * Set the ProductID parameter to the routine + */ + public void setProductID(java.lang.Integer value) { + setValue(ProductID, value); + } + + /** + * Set the ProductID parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setProductID(org.jooq.Field field) { + setField(ProductID, field); + } + + /** + * Set the OrderDate parameter to the routine + */ + public void setOrderDate(java.sql.Timestamp value) { + setValue(OrderDate, value); + } + + /** + * Set the OrderDate parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setOrderDate(org.jooq.Field field) { + setField(OrderDate, field); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/dbo/routines/ufnGetProductStandardCost.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/dbo/routines/ufnGetProductStandardCost.java new file mode 100644 index 00000000000..c6a02b83e39 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/dbo/routines/ufnGetProductStandardCost.java @@ -0,0 +1,71 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.dbo.routines; + +/** + * This class is generated by jOOQ. + */ +public class ufnGetProductStandardCost extends org.jooq.impl.AbstractRoutine { + + private static final long serialVersionUID = 816686856; + + + /** + * An uncommented item + */ + public static final org.jooq.Parameter RETURN_VALUE = createParameter("RETURN_VALUE", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter ProductID = createParameter("ProductID", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter OrderDate = createParameter("OrderDate", org.jooq.impl.SQLDataType.TIMESTAMP); + + /** + * Create a new routine call instance + */ + public ufnGetProductStandardCost() { + super("ufnGetProductStandardCost", org.jooq.examples.sqlserver.adventureworks.dbo.dbo.dbo, org.jooq.impl.SQLDataType.NUMERIC); + + setReturnParameter(RETURN_VALUE); + addInParameter(ProductID); + addInParameter(OrderDate); + } + + /** + * Set the ProductID parameter to the routine + */ + public void setProductID(java.lang.Integer value) { + setValue(ProductID, value); + } + + /** + * Set the ProductID parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setProductID(org.jooq.Field field) { + setField(ProductID, field); + } + + /** + * Set the OrderDate parameter to the routine + */ + public void setOrderDate(java.sql.Timestamp value) { + setValue(OrderDate, value); + } + + /** + * Set the OrderDate parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setOrderDate(org.jooq.Field field) { + setField(OrderDate, field); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/dbo/routines/ufnGetPurchaseOrderStatusText.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/dbo/routines/ufnGetPurchaseOrderStatusText.java new file mode 100644 index 00000000000..c23cc1283c3 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/dbo/routines/ufnGetPurchaseOrderStatusText.java @@ -0,0 +1,49 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.dbo.routines; + +/** + * This class is generated by jOOQ. + */ +public class ufnGetPurchaseOrderStatusText extends org.jooq.impl.AbstractRoutine { + + private static final long serialVersionUID = 52488376; + + + /** + * An uncommented item + */ + public static final org.jooq.Parameter RETURN_VALUE = createParameter("RETURN_VALUE", org.jooq.impl.SQLDataType.NVARCHAR); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter Status = createParameter("Status", org.jooq.impl.SQLDataType.TINYINT); + + /** + * Create a new routine call instance + */ + public ufnGetPurchaseOrderStatusText() { + super("ufnGetPurchaseOrderStatusText", org.jooq.examples.sqlserver.adventureworks.dbo.dbo.dbo, org.jooq.impl.SQLDataType.NVARCHAR); + + setReturnParameter(RETURN_VALUE); + addInParameter(Status); + } + + /** + * Set the Status parameter to the routine + */ + public void setStatus(java.lang.Byte value) { + setValue(Status, value); + } + + /** + * Set the Status parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setStatus(org.jooq.Field field) { + setField(Status, field); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/dbo/routines/ufnGetSalesOrderStatusText.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/dbo/routines/ufnGetSalesOrderStatusText.java new file mode 100644 index 00000000000..36bbab94c2e --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/dbo/routines/ufnGetSalesOrderStatusText.java @@ -0,0 +1,49 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.dbo.routines; + +/** + * This class is generated by jOOQ. + */ +public class ufnGetSalesOrderStatusText extends org.jooq.impl.AbstractRoutine { + + private static final long serialVersionUID = -1070125931; + + + /** + * An uncommented item + */ + public static final org.jooq.Parameter RETURN_VALUE = createParameter("RETURN_VALUE", org.jooq.impl.SQLDataType.NVARCHAR); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter Status = createParameter("Status", org.jooq.impl.SQLDataType.TINYINT); + + /** + * Create a new routine call instance + */ + public ufnGetSalesOrderStatusText() { + super("ufnGetSalesOrderStatusText", org.jooq.examples.sqlserver.adventureworks.dbo.dbo.dbo, org.jooq.impl.SQLDataType.NVARCHAR); + + setReturnParameter(RETURN_VALUE); + addInParameter(Status); + } + + /** + * Set the Status parameter to the routine + */ + public void setStatus(java.lang.Byte value) { + setValue(Status, value); + } + + /** + * Set the Status parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setStatus(org.jooq.Field field) { + setField(Status, field); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/dbo/routines/ufnGetStock.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/dbo/routines/ufnGetStock.java new file mode 100644 index 00000000000..d5dd767f5e1 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/dbo/routines/ufnGetStock.java @@ -0,0 +1,49 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.dbo.routines; + +/** + * This class is generated by jOOQ. + */ +public class ufnGetStock extends org.jooq.impl.AbstractRoutine { + + private static final long serialVersionUID = -139422745; + + + /** + * An uncommented item + */ + public static final org.jooq.Parameter RETURN_VALUE = createParameter("RETURN_VALUE", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter ProductID = createParameter("ProductID", org.jooq.impl.SQLDataType.INTEGER); + + /** + * Create a new routine call instance + */ + public ufnGetStock() { + super("ufnGetStock", org.jooq.examples.sqlserver.adventureworks.dbo.dbo.dbo, org.jooq.impl.SQLDataType.INTEGER); + + setReturnParameter(RETURN_VALUE); + addInParameter(ProductID); + } + + /** + * Set the ProductID parameter to the routine + */ + public void setProductID(java.lang.Integer value) { + setValue(ProductID, value); + } + + /** + * Set the ProductID parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setProductID(org.jooq.Field field) { + setField(ProductID, field); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/dbo/routines/ufnLeadingZeros.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/dbo/routines/ufnLeadingZeros.java new file mode 100644 index 00000000000..1145b817b2e --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/dbo/routines/ufnLeadingZeros.java @@ -0,0 +1,49 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.dbo.routines; + +/** + * This class is generated by jOOQ. + */ +public class ufnLeadingZeros extends org.jooq.impl.AbstractRoutine { + + private static final long serialVersionUID = 499090239; + + + /** + * An uncommented item + */ + public static final org.jooq.Parameter RETURN_VALUE = createParameter("RETURN_VALUE", org.jooq.impl.SQLDataType.VARCHAR); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter Value = createParameter("Value", org.jooq.impl.SQLDataType.INTEGER); + + /** + * Create a new routine call instance + */ + public ufnLeadingZeros() { + super("ufnLeadingZeros", org.jooq.examples.sqlserver.adventureworks.dbo.dbo.dbo, org.jooq.impl.SQLDataType.VARCHAR); + + setReturnParameter(RETURN_VALUE); + addInParameter(Value); + } + + /** + * Set the Value parameter to the routine + */ + public void setValue(java.lang.Integer value) { + setValue(Value, value); + } + + /** + * Set the Value parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setValue(org.jooq.Field field) { + setField(Value, field); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/dbo/routines/uspGetBillOfMaterials.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/dbo/routines/uspGetBillOfMaterials.java new file mode 100644 index 00000000000..da9eda73001 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/dbo/routines/uspGetBillOfMaterials.java @@ -0,0 +1,47 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.dbo.routines; + +/** + * This class is generated by jOOQ. + */ +public class uspGetBillOfMaterials extends org.jooq.impl.AbstractRoutine { + + private static final long serialVersionUID = 2139682679; + + + /** + * An uncommented item + */ + public static final org.jooq.Parameter StartProductID = createParameter("StartProductID", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter CheckDate = createParameter("CheckDate", org.jooq.impl.SQLDataType.TIMESTAMP); + + /** + * Create a new routine call instance + */ + public uspGetBillOfMaterials() { + super("uspGetBillOfMaterials", org.jooq.examples.sqlserver.adventureworks.dbo.dbo.dbo); + + addInParameter(StartProductID); + addInParameter(CheckDate); + } + + /** + * Set the StartProductID parameter to the routine + */ + public void setStartProductID(java.lang.Integer value) { + setValue(StartProductID, value); + } + + /** + * Set the CheckDate parameter to the routine + */ + public void setCheckDate(java.sql.Timestamp value) { + setValue(CheckDate, value); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/dbo/routines/uspGetEmployeeManagers.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/dbo/routines/uspGetEmployeeManagers.java new file mode 100644 index 00000000000..ff058763d01 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/dbo/routines/uspGetEmployeeManagers.java @@ -0,0 +1,34 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.dbo.routines; + +/** + * This class is generated by jOOQ. + */ +public class uspGetEmployeeManagers extends org.jooq.impl.AbstractRoutine { + + private static final long serialVersionUID = -735141192; + + + /** + * An uncommented item + */ + public static final org.jooq.Parameter EmployeeID = createParameter("EmployeeID", org.jooq.impl.SQLDataType.INTEGER); + + /** + * Create a new routine call instance + */ + public uspGetEmployeeManagers() { + super("uspGetEmployeeManagers", org.jooq.examples.sqlserver.adventureworks.dbo.dbo.dbo); + + addInParameter(EmployeeID); + } + + /** + * Set the EmployeeID parameter to the routine + */ + public void setEmployeeID(java.lang.Integer value) { + setValue(EmployeeID, value); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/dbo/routines/uspGetManagerEmployees.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/dbo/routines/uspGetManagerEmployees.java new file mode 100644 index 00000000000..ae33837fbc5 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/dbo/routines/uspGetManagerEmployees.java @@ -0,0 +1,34 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.dbo.routines; + +/** + * This class is generated by jOOQ. + */ +public class uspGetManagerEmployees extends org.jooq.impl.AbstractRoutine { + + private static final long serialVersionUID = 1109212494; + + + /** + * An uncommented item + */ + public static final org.jooq.Parameter ManagerID = createParameter("ManagerID", org.jooq.impl.SQLDataType.INTEGER); + + /** + * Create a new routine call instance + */ + public uspGetManagerEmployees() { + super("uspGetManagerEmployees", org.jooq.examples.sqlserver.adventureworks.dbo.dbo.dbo); + + addInParameter(ManagerID); + } + + /** + * Set the ManagerID parameter to the routine + */ + public void setManagerID(java.lang.Integer value) { + setValue(ManagerID, value); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/dbo/routines/uspGetWhereUsedProductID.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/dbo/routines/uspGetWhereUsedProductID.java new file mode 100644 index 00000000000..e7dcdddc408 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/dbo/routines/uspGetWhereUsedProductID.java @@ -0,0 +1,47 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.dbo.routines; + +/** + * This class is generated by jOOQ. + */ +public class uspGetWhereUsedProductID extends org.jooq.impl.AbstractRoutine { + + private static final long serialVersionUID = -223017989; + + + /** + * An uncommented item + */ + public static final org.jooq.Parameter StartProductID = createParameter("StartProductID", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter CheckDate = createParameter("CheckDate", org.jooq.impl.SQLDataType.TIMESTAMP); + + /** + * Create a new routine call instance + */ + public uspGetWhereUsedProductID() { + super("uspGetWhereUsedProductID", org.jooq.examples.sqlserver.adventureworks.dbo.dbo.dbo); + + addInParameter(StartProductID); + addInParameter(CheckDate); + } + + /** + * Set the StartProductID parameter to the routine + */ + public void setStartProductID(java.lang.Integer value) { + setValue(StartProductID, value); + } + + /** + * Set the CheckDate parameter to the routine + */ + public void setCheckDate(java.sql.Timestamp value) { + setValue(CheckDate, value); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/dbo/routines/uspLogError.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/dbo/routines/uspLogError.java new file mode 100644 index 00000000000..abc15b65580 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/dbo/routines/uspLogError.java @@ -0,0 +1,38 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.dbo.routines; + +/** + * This class is generated by jOOQ. + */ +public class uspLogError extends org.jooq.impl.AbstractRoutine { + + private static final long serialVersionUID = 1625709489; + + + /** + * An uncommented item + */ + public static final org.jooq.Parameter ErrorLogID = createParameter("ErrorLogID", org.jooq.impl.SQLDataType.INTEGER); + + /** + * Create a new routine call instance + */ + public uspLogError() { + super("uspLogError", org.jooq.examples.sqlserver.adventureworks.dbo.dbo.dbo); + + addInOutParameter(ErrorLogID); + } + + /** + * Set the ErrorLogID parameter to the routine + */ + public void setErrorLogID(java.lang.Integer value) { + setValue(ErrorLogID, value); + } + + public java.lang.Integer getErrorLogID() { + return getValue(ErrorLogID); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/dbo/routines/uspPrintError.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/dbo/routines/uspPrintError.java new file mode 100644 index 00000000000..b75927da79e --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/dbo/routines/uspPrintError.java @@ -0,0 +1,20 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.dbo.routines; + +/** + * This class is generated by jOOQ. + */ +public class uspPrintError extends org.jooq.impl.AbstractRoutine { + + private static final long serialVersionUID = -1092155720; + + + /** + * Create a new routine call instance + */ + public uspPrintError() { + super("uspPrintError", org.jooq.examples.sqlserver.adventureworks.dbo.dbo.dbo); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/dbo/tables/AWBuildVersion.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/dbo/tables/AWBuildVersion.java new file mode 100644 index 00000000000..9a6d8a57d83 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/dbo/tables/AWBuildVersion.java @@ -0,0 +1,81 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.dbo.tables; + +/** + * This class is generated by jOOQ. + */ +public class AWBuildVersion extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = -549390538; + + /** + * The singleton instance of dbo.AWBuildVersion + */ + public static final org.jooq.examples.sqlserver.adventureworks.dbo.tables.AWBuildVersion AWBuildVersion = new org.jooq.examples.sqlserver.adventureworks.dbo.tables.AWBuildVersion(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.examples.sqlserver.adventureworks.dbo.tables.records.AWBuildVersion.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final org.jooq.TableField SystemInformationID = createField("SystemInformationID", org.jooq.impl.SQLDataType.TINYINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField Database_Version = createField("Database Version", org.jooq.impl.SQLDataType.NVARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField VersionDate = createField("VersionDate", org.jooq.impl.SQLDataType.TIMESTAMP, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField ModifiedDate = createField("ModifiedDate", org.jooq.impl.SQLDataType.TIMESTAMP, this); + + public AWBuildVersion() { + super("AWBuildVersion", org.jooq.examples.sqlserver.adventureworks.dbo.dbo.dbo); + } + + public AWBuildVersion(java.lang.String alias) { + super(alias, org.jooq.examples.sqlserver.adventureworks.dbo.dbo.dbo, org.jooq.examples.sqlserver.adventureworks.dbo.tables.AWBuildVersion.AWBuildVersion); + } + + @Override + public org.jooq.Identity getIdentity() { + return org.jooq.examples.sqlserver.adventureworks.dbo.Keys.IDENTITY_AWBuildVersion; + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.examples.sqlserver.adventureworks.dbo.Keys.PK_AWBuildVersion_SystemInformationID; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.examples.sqlserver.adventureworks.dbo.Keys.PK_AWBuildVersion_SystemInformationID); + } + + @Override + public org.jooq.examples.sqlserver.adventureworks.dbo.tables.AWBuildVersion as(java.lang.String alias) { + return new org.jooq.examples.sqlserver.adventureworks.dbo.tables.AWBuildVersion(alias); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/dbo/tables/DatabaseLog.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/dbo/tables/DatabaseLog.java new file mode 100644 index 00000000000..a7c136c8f9f --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/dbo/tables/DatabaseLog.java @@ -0,0 +1,104 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.dbo.tables; + +/** + * This class is generated by jOOQ. + */ +public class DatabaseLog extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = -851968801; + + /** + * The singleton instance of dbo.DatabaseLog + */ + public static final org.jooq.examples.sqlserver.adventureworks.dbo.tables.DatabaseLog DatabaseLog = new org.jooq.examples.sqlserver.adventureworks.dbo.tables.DatabaseLog(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.examples.sqlserver.adventureworks.dbo.tables.records.DatabaseLog.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final org.jooq.TableField DatabaseLogID = createField("DatabaseLogID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField PostTime = createField("PostTime", org.jooq.impl.SQLDataType.TIMESTAMP, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField DatabaseUser = createField("DatabaseUser", org.jooq.impl.SQLDataType.NVARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField Event = createField("Event", org.jooq.impl.SQLDataType.NVARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField Schema = createField("Schema", org.jooq.impl.SQLDataType.NVARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField Object = createField("Object", org.jooq.impl.SQLDataType.NVARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField TSQL = createField("TSQL", org.jooq.impl.SQLDataType.NVARCHAR, this); + + /** + * An uncommented item + * + * The SQL type of this item (xml, ) could not be mapped.
+ * Deserialising this field might not work! + */ + public final org.jooq.TableField XmlEvent = createField("XmlEvent", org.jooq.util.sqlserver.SQLServerDataType.getDefaultDataType("xml"), this); + + public DatabaseLog() { + super("DatabaseLog", org.jooq.examples.sqlserver.adventureworks.dbo.dbo.dbo); + } + + public DatabaseLog(java.lang.String alias) { + super(alias, org.jooq.examples.sqlserver.adventureworks.dbo.dbo.dbo, org.jooq.examples.sqlserver.adventureworks.dbo.tables.DatabaseLog.DatabaseLog); + } + + @Override + public org.jooq.Identity getIdentity() { + return org.jooq.examples.sqlserver.adventureworks.dbo.Keys.IDENTITY_DatabaseLog; + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.examples.sqlserver.adventureworks.dbo.Keys.PK_DatabaseLog_DatabaseLogID; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.examples.sqlserver.adventureworks.dbo.Keys.PK_DatabaseLog_DatabaseLogID); + } + + @Override + public org.jooq.examples.sqlserver.adventureworks.dbo.tables.DatabaseLog as(java.lang.String alias) { + return new org.jooq.examples.sqlserver.adventureworks.dbo.tables.DatabaseLog(alias); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/dbo/tables/ErrorLog.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/dbo/tables/ErrorLog.java new file mode 100644 index 00000000000..7f6a0e0ad82 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/dbo/tables/ErrorLog.java @@ -0,0 +1,106 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.dbo.tables; + +/** + * This class is generated by jOOQ. + */ +public class ErrorLog extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = -26315492; + + /** + * The singleton instance of dbo.ErrorLog + */ + public static final org.jooq.examples.sqlserver.adventureworks.dbo.tables.ErrorLog ErrorLog = new org.jooq.examples.sqlserver.adventureworks.dbo.tables.ErrorLog(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.examples.sqlserver.adventureworks.dbo.tables.records.ErrorLog.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final org.jooq.TableField ErrorLogID = createField("ErrorLogID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField ErrorTime = createField("ErrorTime", org.jooq.impl.SQLDataType.TIMESTAMP, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField UserName = createField("UserName", org.jooq.impl.SQLDataType.NVARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField ErrorNumber = createField("ErrorNumber", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField ErrorSeverity = createField("ErrorSeverity", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField ErrorState = createField("ErrorState", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField ErrorProcedure = createField("ErrorProcedure", org.jooq.impl.SQLDataType.NVARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField ErrorLine = createField("ErrorLine", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField ErrorMessage = createField("ErrorMessage", org.jooq.impl.SQLDataType.NVARCHAR, this); + + public ErrorLog() { + super("ErrorLog", org.jooq.examples.sqlserver.adventureworks.dbo.dbo.dbo); + } + + public ErrorLog(java.lang.String alias) { + super(alias, org.jooq.examples.sqlserver.adventureworks.dbo.dbo.dbo, org.jooq.examples.sqlserver.adventureworks.dbo.tables.ErrorLog.ErrorLog); + } + + @Override + public org.jooq.Identity getIdentity() { + return org.jooq.examples.sqlserver.adventureworks.dbo.Keys.IDENTITY_ErrorLog; + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.examples.sqlserver.adventureworks.dbo.Keys.PK_ErrorLog_ErrorLogID; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.examples.sqlserver.adventureworks.dbo.Keys.PK_ErrorLog_ErrorLogID); + } + + @Override + public org.jooq.examples.sqlserver.adventureworks.dbo.tables.ErrorLog as(java.lang.String alias) { + return new org.jooq.examples.sqlserver.adventureworks.dbo.tables.ErrorLog(alias); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/dbo/tables/pojos/AWBuildVersion.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/dbo/tables/pojos/AWBuildVersion.java new file mode 100644 index 00000000000..c09a5dc4ce7 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/dbo/tables/pojos/AWBuildVersion.java @@ -0,0 +1,56 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.dbo.tables.pojos; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "AWBuildVersion", schema = "dbo") +public class AWBuildVersion implements java.io.Serializable { + + private static final long serialVersionUID = -1171551211; + + private java.lang.Byte SystemInformationID; + private java.lang.String Database_Version; + private java.sql.Timestamp VersionDate; + private java.sql.Timestamp ModifiedDate; + + @javax.persistence.Id + @javax.persistence.Column(name = "SystemInformationID", unique = true, nullable = false, precision = 3) + public java.lang.Byte getSystemInformationID() { + return this.SystemInformationID; + } + + public void setSystemInformationID(java.lang.Byte SystemInformationID) { + this.SystemInformationID = SystemInformationID; + } + + @javax.persistence.Column(name = "Database Version", nullable = false, length = 25) + public java.lang.String getDatabase_Version() { + return this.Database_Version; + } + + public void setDatabase_Version(java.lang.String Database_Version) { + this.Database_Version = Database_Version; + } + + @javax.persistence.Column(name = "VersionDate", nullable = false) + public java.sql.Timestamp getVersionDate() { + return this.VersionDate; + } + + public void setVersionDate(java.sql.Timestamp VersionDate) { + this.VersionDate = VersionDate; + } + + @javax.persistence.Column(name = "ModifiedDate", nullable = false) + public java.sql.Timestamp getModifiedDate() { + return this.ModifiedDate; + } + + public void setModifiedDate(java.sql.Timestamp ModifiedDate) { + this.ModifiedDate = ModifiedDate; + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/dbo/tables/pojos/DatabaseLog.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/dbo/tables/pojos/DatabaseLog.java new file mode 100644 index 00000000000..6beb03bf9c7 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/dbo/tables/pojos/DatabaseLog.java @@ -0,0 +1,96 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.dbo.tables.pojos; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "DatabaseLog", schema = "dbo") +public class DatabaseLog implements java.io.Serializable { + + private static final long serialVersionUID = 1010482335; + + private java.lang.Integer DatabaseLogID; + private java.sql.Timestamp PostTime; + private java.lang.String DatabaseUser; + private java.lang.String Event; + private java.lang.String Schema; + private java.lang.String Object; + private java.lang.String TSQL; + private java.lang.Object XmlEvent; + + @javax.persistence.Id + @javax.persistence.Column(name = "DatabaseLogID", unique = true, nullable = false, precision = 10) + public java.lang.Integer getDatabaseLogID() { + return this.DatabaseLogID; + } + + public void setDatabaseLogID(java.lang.Integer DatabaseLogID) { + this.DatabaseLogID = DatabaseLogID; + } + + @javax.persistence.Column(name = "PostTime", nullable = false) + public java.sql.Timestamp getPostTime() { + return this.PostTime; + } + + public void setPostTime(java.sql.Timestamp PostTime) { + this.PostTime = PostTime; + } + + @javax.persistence.Column(name = "DatabaseUser", nullable = false, length = 128) + public java.lang.String getDatabaseUser() { + return this.DatabaseUser; + } + + public void setDatabaseUser(java.lang.String DatabaseUser) { + this.DatabaseUser = DatabaseUser; + } + + @javax.persistence.Column(name = "Event", nullable = false, length = 128) + public java.lang.String getEvent() { + return this.Event; + } + + public void setEvent(java.lang.String Event) { + this.Event = Event; + } + + @javax.persistence.Column(name = "Schema", length = 128) + public java.lang.String getSchema() { + return this.Schema; + } + + public void setSchema(java.lang.String Schema) { + this.Schema = Schema; + } + + @javax.persistence.Column(name = "Object", length = 128) + public java.lang.String getObject() { + return this.Object; + } + + public void setObject(java.lang.String Object) { + this.Object = Object; + } + + @javax.persistence.Column(name = "TSQL", nullable = false) + public java.lang.String getTSQL() { + return this.TSQL; + } + + public void setTSQL(java.lang.String TSQL) { + this.TSQL = TSQL; + } + + @javax.persistence.Column(name = "XmlEvent", nullable = false) + public java.lang.Object getXmlEvent() { + return this.XmlEvent; + } + + public void setXmlEvent(java.lang.Object XmlEvent) { + this.XmlEvent = XmlEvent; + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/dbo/tables/pojos/ErrorLog.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/dbo/tables/pojos/ErrorLog.java new file mode 100644 index 00000000000..071183eedfb --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/dbo/tables/pojos/ErrorLog.java @@ -0,0 +1,106 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.dbo.tables.pojos; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "ErrorLog", schema = "dbo") +public class ErrorLog implements java.io.Serializable { + + private static final long serialVersionUID = 968553243; + + private java.lang.Integer ErrorLogID; + private java.sql.Timestamp ErrorTime; + private java.lang.String UserName; + private java.lang.Integer ErrorNumber; + private java.lang.Integer ErrorSeverity; + private java.lang.Integer ErrorState; + private java.lang.String ErrorProcedure; + private java.lang.Integer ErrorLine; + private java.lang.String ErrorMessage; + + @javax.persistence.Id + @javax.persistence.Column(name = "ErrorLogID", unique = true, nullable = false, precision = 10) + public java.lang.Integer getErrorLogID() { + return this.ErrorLogID; + } + + public void setErrorLogID(java.lang.Integer ErrorLogID) { + this.ErrorLogID = ErrorLogID; + } + + @javax.persistence.Column(name = "ErrorTime", nullable = false) + public java.sql.Timestamp getErrorTime() { + return this.ErrorTime; + } + + public void setErrorTime(java.sql.Timestamp ErrorTime) { + this.ErrorTime = ErrorTime; + } + + @javax.persistence.Column(name = "UserName", nullable = false, length = 128) + public java.lang.String getUserName() { + return this.UserName; + } + + public void setUserName(java.lang.String UserName) { + this.UserName = UserName; + } + + @javax.persistence.Column(name = "ErrorNumber", nullable = false, precision = 10) + public java.lang.Integer getErrorNumber() { + return this.ErrorNumber; + } + + public void setErrorNumber(java.lang.Integer ErrorNumber) { + this.ErrorNumber = ErrorNumber; + } + + @javax.persistence.Column(name = "ErrorSeverity", precision = 10) + public java.lang.Integer getErrorSeverity() { + return this.ErrorSeverity; + } + + public void setErrorSeverity(java.lang.Integer ErrorSeverity) { + this.ErrorSeverity = ErrorSeverity; + } + + @javax.persistence.Column(name = "ErrorState", precision = 10) + public java.lang.Integer getErrorState() { + return this.ErrorState; + } + + public void setErrorState(java.lang.Integer ErrorState) { + this.ErrorState = ErrorState; + } + + @javax.persistence.Column(name = "ErrorProcedure", length = 126) + public java.lang.String getErrorProcedure() { + return this.ErrorProcedure; + } + + public void setErrorProcedure(java.lang.String ErrorProcedure) { + this.ErrorProcedure = ErrorProcedure; + } + + @javax.persistence.Column(name = "ErrorLine", precision = 10) + public java.lang.Integer getErrorLine() { + return this.ErrorLine; + } + + public void setErrorLine(java.lang.Integer ErrorLine) { + this.ErrorLine = ErrorLine; + } + + @javax.persistence.Column(name = "ErrorMessage", nullable = false, length = 4000) + public java.lang.String getErrorMessage() { + return this.ErrorMessage; + } + + public void setErrorMessage(java.lang.String ErrorMessage) { + this.ErrorMessage = ErrorMessage; + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/dbo/tables/records/AWBuildVersion.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/dbo/tables/records/AWBuildVersion.java new file mode 100644 index 00000000000..e255f58be9a --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/dbo/tables/records/AWBuildVersion.java @@ -0,0 +1,86 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.dbo.tables.records; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "AWBuildVersion", schema = "dbo") +public class AWBuildVersion extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = -1626804339; + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setSystemInformationID(java.lang.Byte value) { + setValue(org.jooq.examples.sqlserver.adventureworks.dbo.tables.AWBuildVersion.AWBuildVersion.SystemInformationID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + @javax.persistence.Id + @javax.persistence.Column(name = "SystemInformationID", unique = true, nullable = false, precision = 3) + public java.lang.Byte getSystemInformationID() { + return getValue(org.jooq.examples.sqlserver.adventureworks.dbo.tables.AWBuildVersion.AWBuildVersion.SystemInformationID); + } + + /** + * An uncommented item + */ + public void setDatabase_Version(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.dbo.tables.AWBuildVersion.AWBuildVersion.Database_Version, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "Database Version", nullable = false, length = 25) + public java.lang.String getDatabase_Version() { + return getValue(org.jooq.examples.sqlserver.adventureworks.dbo.tables.AWBuildVersion.AWBuildVersion.Database_Version); + } + + /** + * An uncommented item + */ + public void setVersionDate(java.sql.Timestamp value) { + setValue(org.jooq.examples.sqlserver.adventureworks.dbo.tables.AWBuildVersion.AWBuildVersion.VersionDate, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "VersionDate", nullable = false) + public java.sql.Timestamp getVersionDate() { + return getValue(org.jooq.examples.sqlserver.adventureworks.dbo.tables.AWBuildVersion.AWBuildVersion.VersionDate); + } + + /** + * An uncommented item + */ + public void setModifiedDate(java.sql.Timestamp value) { + setValue(org.jooq.examples.sqlserver.adventureworks.dbo.tables.AWBuildVersion.AWBuildVersion.ModifiedDate, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "ModifiedDate", nullable = false) + public java.sql.Timestamp getModifiedDate() { + return getValue(org.jooq.examples.sqlserver.adventureworks.dbo.tables.AWBuildVersion.AWBuildVersion.ModifiedDate); + } + + /** + * Create a detached AWBuildVersion + */ + public AWBuildVersion() { + super(org.jooq.examples.sqlserver.adventureworks.dbo.tables.AWBuildVersion.AWBuildVersion); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/dbo/tables/records/DatabaseLog.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/dbo/tables/records/DatabaseLog.java new file mode 100644 index 00000000000..b305d5c4269 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/dbo/tables/records/DatabaseLog.java @@ -0,0 +1,152 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.dbo.tables.records; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "DatabaseLog", schema = "dbo") +public class DatabaseLog extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = -944503580; + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setDatabaseLogID(java.lang.Integer value) { + setValue(org.jooq.examples.sqlserver.adventureworks.dbo.tables.DatabaseLog.DatabaseLog.DatabaseLogID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + @javax.persistence.Id + @javax.persistence.Column(name = "DatabaseLogID", unique = true, nullable = false, precision = 10) + public java.lang.Integer getDatabaseLogID() { + return getValue(org.jooq.examples.sqlserver.adventureworks.dbo.tables.DatabaseLog.DatabaseLog.DatabaseLogID); + } + + /** + * An uncommented item + */ + public void setPostTime(java.sql.Timestamp value) { + setValue(org.jooq.examples.sqlserver.adventureworks.dbo.tables.DatabaseLog.DatabaseLog.PostTime, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "PostTime", nullable = false) + public java.sql.Timestamp getPostTime() { + return getValue(org.jooq.examples.sqlserver.adventureworks.dbo.tables.DatabaseLog.DatabaseLog.PostTime); + } + + /** + * An uncommented item + */ + public void setDatabaseUser(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.dbo.tables.DatabaseLog.DatabaseLog.DatabaseUser, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "DatabaseUser", nullable = false, length = 128) + public java.lang.String getDatabaseUser() { + return getValue(org.jooq.examples.sqlserver.adventureworks.dbo.tables.DatabaseLog.DatabaseLog.DatabaseUser); + } + + /** + * An uncommented item + */ + public void setEvent(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.dbo.tables.DatabaseLog.DatabaseLog.Event, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "Event", nullable = false, length = 128) + public java.lang.String getEvent() { + return getValue(org.jooq.examples.sqlserver.adventureworks.dbo.tables.DatabaseLog.DatabaseLog.Event); + } + + /** + * An uncommented item + */ + public void setSchema(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.dbo.tables.DatabaseLog.DatabaseLog.Schema, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "Schema", length = 128) + public java.lang.String getSchema() { + return getValue(org.jooq.examples.sqlserver.adventureworks.dbo.tables.DatabaseLog.DatabaseLog.Schema); + } + + /** + * An uncommented item + */ + public void setObject(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.dbo.tables.DatabaseLog.DatabaseLog.Object, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "Object", length = 128) + public java.lang.String getObject() { + return getValue(org.jooq.examples.sqlserver.adventureworks.dbo.tables.DatabaseLog.DatabaseLog.Object); + } + + /** + * An uncommented item + */ + public void setTSQL(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.dbo.tables.DatabaseLog.DatabaseLog.TSQL, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "TSQL", nullable = false) + public java.lang.String getTSQL() { + return getValue(org.jooq.examples.sqlserver.adventureworks.dbo.tables.DatabaseLog.DatabaseLog.TSQL); + } + + /** + * An uncommented item + * + * The SQL type of this item (xml, ) could not be mapped.
+ * Deserialising this field might not work! + */ + public void setXmlEvent(java.lang.Object value) { + setValue(org.jooq.examples.sqlserver.adventureworks.dbo.tables.DatabaseLog.DatabaseLog.XmlEvent, value); + } + + /** + * An uncommented item + * + * The SQL type of this item (xml, ) could not be mapped.
+ * Deserialising this field might not work! + */ + @javax.persistence.Column(name = "XmlEvent", nullable = false) + public java.lang.Object getXmlEvent() { + return getValue(org.jooq.examples.sqlserver.adventureworks.dbo.tables.DatabaseLog.DatabaseLog.XmlEvent); + } + + /** + * Create a detached DatabaseLog + */ + public DatabaseLog() { + super(org.jooq.examples.sqlserver.adventureworks.dbo.tables.DatabaseLog.DatabaseLog); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/dbo/tables/records/ErrorLog.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/dbo/tables/records/ErrorLog.java new file mode 100644 index 00000000000..079ffc9ffdf --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/dbo/tables/records/ErrorLog.java @@ -0,0 +1,161 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.dbo.tables.records; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "ErrorLog", schema = "dbo") +public class ErrorLog extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = -638213887; + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setErrorLogID(java.lang.Integer value) { + setValue(org.jooq.examples.sqlserver.adventureworks.dbo.tables.ErrorLog.ErrorLog.ErrorLogID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + @javax.persistence.Id + @javax.persistence.Column(name = "ErrorLogID", unique = true, nullable = false, precision = 10) + public java.lang.Integer getErrorLogID() { + return getValue(org.jooq.examples.sqlserver.adventureworks.dbo.tables.ErrorLog.ErrorLog.ErrorLogID); + } + + /** + * An uncommented item + */ + public void setErrorTime(java.sql.Timestamp value) { + setValue(org.jooq.examples.sqlserver.adventureworks.dbo.tables.ErrorLog.ErrorLog.ErrorTime, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "ErrorTime", nullable = false) + public java.sql.Timestamp getErrorTime() { + return getValue(org.jooq.examples.sqlserver.adventureworks.dbo.tables.ErrorLog.ErrorLog.ErrorTime); + } + + /** + * An uncommented item + */ + public void setUserName(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.dbo.tables.ErrorLog.ErrorLog.UserName, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "UserName", nullable = false, length = 128) + public java.lang.String getUserName() { + return getValue(org.jooq.examples.sqlserver.adventureworks.dbo.tables.ErrorLog.ErrorLog.UserName); + } + + /** + * An uncommented item + */ + public void setErrorNumber(java.lang.Integer value) { + setValue(org.jooq.examples.sqlserver.adventureworks.dbo.tables.ErrorLog.ErrorLog.ErrorNumber, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "ErrorNumber", nullable = false, precision = 10) + public java.lang.Integer getErrorNumber() { + return getValue(org.jooq.examples.sqlserver.adventureworks.dbo.tables.ErrorLog.ErrorLog.ErrorNumber); + } + + /** + * An uncommented item + */ + public void setErrorSeverity(java.lang.Integer value) { + setValue(org.jooq.examples.sqlserver.adventureworks.dbo.tables.ErrorLog.ErrorLog.ErrorSeverity, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "ErrorSeverity", precision = 10) + public java.lang.Integer getErrorSeverity() { + return getValue(org.jooq.examples.sqlserver.adventureworks.dbo.tables.ErrorLog.ErrorLog.ErrorSeverity); + } + + /** + * An uncommented item + */ + public void setErrorState(java.lang.Integer value) { + setValue(org.jooq.examples.sqlserver.adventureworks.dbo.tables.ErrorLog.ErrorLog.ErrorState, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "ErrorState", precision = 10) + public java.lang.Integer getErrorState() { + return getValue(org.jooq.examples.sqlserver.adventureworks.dbo.tables.ErrorLog.ErrorLog.ErrorState); + } + + /** + * An uncommented item + */ + public void setErrorProcedure(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.dbo.tables.ErrorLog.ErrorLog.ErrorProcedure, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "ErrorProcedure", length = 126) + public java.lang.String getErrorProcedure() { + return getValue(org.jooq.examples.sqlserver.adventureworks.dbo.tables.ErrorLog.ErrorLog.ErrorProcedure); + } + + /** + * An uncommented item + */ + public void setErrorLine(java.lang.Integer value) { + setValue(org.jooq.examples.sqlserver.adventureworks.dbo.tables.ErrorLog.ErrorLog.ErrorLine, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "ErrorLine", precision = 10) + public java.lang.Integer getErrorLine() { + return getValue(org.jooq.examples.sqlserver.adventureworks.dbo.tables.ErrorLog.ErrorLog.ErrorLine); + } + + /** + * An uncommented item + */ + public void setErrorMessage(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.dbo.tables.ErrorLog.ErrorLog.ErrorMessage, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "ErrorMessage", nullable = false, length = 4000) + public java.lang.String getErrorMessage() { + return getValue(org.jooq.examples.sqlserver.adventureworks.dbo.tables.ErrorLog.ErrorLog.ErrorMessage); + } + + /** + * Create a detached ErrorLog + */ + public ErrorLog() { + super(org.jooq.examples.sqlserver.adventureworks.dbo.tables.ErrorLog.ErrorLog); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/humanresources/HumanResources.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/humanresources/HumanResources.java new file mode 100644 index 00000000000..7227a6bc60a --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/humanresources/HumanResources.java @@ -0,0 +1,42 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.humanresources; + +/** + * This class is generated by jOOQ. + */ +public class HumanResources extends org.jooq.impl.SchemaImpl { + + private static final long serialVersionUID = -2081613650; + + /** + * The singleton instance of HumanResources + */ + public static final HumanResources HumanResources = new HumanResources(); + + /** + * No further instances allowed + */ + private HumanResources() { + super("HumanResources"); + } + + @Override + public final java.util.List> getTables() { + return java.util.Arrays.>asList( + org.jooq.examples.sqlserver.adventureworks.humanresources.tables.Department.Department, + org.jooq.examples.sqlserver.adventureworks.humanresources.tables.Employee.Employee, + org.jooq.examples.sqlserver.adventureworks.humanresources.tables.EmployeeAddress.EmployeeAddress, + org.jooq.examples.sqlserver.adventureworks.humanresources.tables.EmployeeDepartmentHistory.EmployeeDepartmentHistory, + org.jooq.examples.sqlserver.adventureworks.humanresources.tables.EmployeePayHistory.EmployeePayHistory, + org.jooq.examples.sqlserver.adventureworks.humanresources.tables.JobCandidate.JobCandidate, + org.jooq.examples.sqlserver.adventureworks.humanresources.tables.Shift.Shift, + org.jooq.examples.sqlserver.adventureworks.humanresources.tables.vEmployee.vEmployee, + org.jooq.examples.sqlserver.adventureworks.humanresources.tables.vEmployeeDepartment.vEmployeeDepartment, + org.jooq.examples.sqlserver.adventureworks.humanresources.tables.vEmployeeDepartmentHistory.vEmployeeDepartmentHistory, + org.jooq.examples.sqlserver.adventureworks.humanresources.tables.vJobCandidate.vJobCandidate, + org.jooq.examples.sqlserver.adventureworks.humanresources.tables.vJobCandidateEducation.vJobCandidateEducation, + org.jooq.examples.sqlserver.adventureworks.humanresources.tables.vJobCandidateEmployment.vJobCandidateEmployment); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/humanresources/HumanResourcesFactory.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/humanresources/HumanResourcesFactory.java new file mode 100644 index 00000000000..f965cec0da2 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/humanresources/HumanResourcesFactory.java @@ -0,0 +1,41 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.humanresources; + +/** + * This class is generated by jOOQ. + */ +public class HumanResourcesFactory extends org.jooq.util.sqlserver.SQLServerFactory { + + private static final long serialVersionUID = -503553162; + + /** + * Create a factory with a connection + * + * @param connection The connection to use with objects created from this factory + */ + public HumanResourcesFactory(java.sql.Connection connection) { + super(connection); + } + + /** + * Create a factory with a connection and a schema mapping + * + * @deprecated - 2.0.5 - Use {@link #HumanResourcesFactory(java.sql.Connection, org.jooq.conf.Settings)} instead + */ + @Deprecated + public HumanResourcesFactory(java.sql.Connection connection, org.jooq.SchemaMapping mapping) { + super(connection, mapping); + } + + /** + * Create a factory with a connection and some settings + * + * @param connection The connection to use with objects created from this factory + * @param settings The settings to apply to objects created from this factory + */ + public HumanResourcesFactory(java.sql.Connection connection, org.jooq.conf.Settings settings) { + super(connection, settings); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/humanresources/Keys.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/humanresources/Keys.java new file mode 100644 index 00000000000..c5861c1f9bd --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/humanresources/Keys.java @@ -0,0 +1,47 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.humanresources; + +/** + * This class is generated by jOOQ. + * + * A class modelling foreign key relationships between tables of the HumanResources schema + */ +@SuppressWarnings({"unchecked"}) +public class Keys extends org.jooq.impl.AbstractKeys { + + // IDENTITY definitions + public static final org.jooq.Identity IDENTITY_Department = createIdentity(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.Department.Department, org.jooq.examples.sqlserver.adventureworks.humanresources.tables.Department.Department.DepartmentID); + public static final org.jooq.Identity IDENTITY_Employee = createIdentity(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.Employee.Employee, org.jooq.examples.sqlserver.adventureworks.humanresources.tables.Employee.Employee.EmployeeID); + public static final org.jooq.Identity IDENTITY_JobCandidate = createIdentity(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.JobCandidate.JobCandidate, org.jooq.examples.sqlserver.adventureworks.humanresources.tables.JobCandidate.JobCandidate.JobCandidateID); + public static final org.jooq.Identity IDENTITY_Shift = createIdentity(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.Shift.Shift, org.jooq.examples.sqlserver.adventureworks.humanresources.tables.Shift.Shift.ShiftID); + public static final org.jooq.Identity IDENTITY_vJobCandidate = createIdentity(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.vJobCandidate.vJobCandidate, org.jooq.examples.sqlserver.adventureworks.humanresources.tables.vJobCandidate.vJobCandidate.JobCandidateID); + public static final org.jooq.Identity IDENTITY_vJobCandidateEducation = createIdentity(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.vJobCandidateEducation.vJobCandidateEducation, org.jooq.examples.sqlserver.adventureworks.humanresources.tables.vJobCandidateEducation.vJobCandidateEducation.JobCandidateID); + public static final org.jooq.Identity IDENTITY_vJobCandidateEmployment = createIdentity(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.vJobCandidateEmployment.vJobCandidateEmployment, org.jooq.examples.sqlserver.adventureworks.humanresources.tables.vJobCandidateEmployment.vJobCandidateEmployment.JobCandidateID); + + // UNIQUE and PRIMARY KEY definitions + public static final org.jooq.UniqueKey PK_Department_DepartmentID = createUniqueKey(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.Department.Department, org.jooq.examples.sqlserver.adventureworks.humanresources.tables.Department.Department.DepartmentID); + public static final org.jooq.UniqueKey PK_Employee_EmployeeID = createUniqueKey(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.Employee.Employee, org.jooq.examples.sqlserver.adventureworks.humanresources.tables.Employee.Employee.EmployeeID); + public static final org.jooq.UniqueKey PK_EmployeeAddress_EmployeeID_AddressID = createUniqueKey(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.EmployeeAddress.EmployeeAddress, org.jooq.examples.sqlserver.adventureworks.humanresources.tables.EmployeeAddress.EmployeeAddress.EmployeeID, org.jooq.examples.sqlserver.adventureworks.humanresources.tables.EmployeeAddress.EmployeeAddress.AddressID); + public static final org.jooq.UniqueKey PK_EmployeeDepartmentHistory_EmployeeID_StartDate_DepartmentID = createUniqueKey(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.EmployeeDepartmentHistory.EmployeeDepartmentHistory, org.jooq.examples.sqlserver.adventureworks.humanresources.tables.EmployeeDepartmentHistory.EmployeeDepartmentHistory.EmployeeID, org.jooq.examples.sqlserver.adventureworks.humanresources.tables.EmployeeDepartmentHistory.EmployeeDepartmentHistory.StartDate, org.jooq.examples.sqlserver.adventureworks.humanresources.tables.EmployeeDepartmentHistory.EmployeeDepartmentHistory.DepartmentID, org.jooq.examples.sqlserver.adventureworks.humanresources.tables.EmployeeDepartmentHistory.EmployeeDepartmentHistory.ShiftID); + public static final org.jooq.UniqueKey PK_EmployeePayHistory_EmployeeID_RateChangeDate = createUniqueKey(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.EmployeePayHistory.EmployeePayHistory, org.jooq.examples.sqlserver.adventureworks.humanresources.tables.EmployeePayHistory.EmployeePayHistory.EmployeeID, org.jooq.examples.sqlserver.adventureworks.humanresources.tables.EmployeePayHistory.EmployeePayHistory.RateChangeDate); + public static final org.jooq.UniqueKey PK_JobCandidate_JobCandidateID = createUniqueKey(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.JobCandidate.JobCandidate, org.jooq.examples.sqlserver.adventureworks.humanresources.tables.JobCandidate.JobCandidate.JobCandidateID); + public static final org.jooq.UniqueKey PK_Shift_ShiftID = createUniqueKey(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.Shift.Shift, org.jooq.examples.sqlserver.adventureworks.humanresources.tables.Shift.Shift.ShiftID); + + // FOREIGN KEY definitions + public static final org.jooq.ForeignKey FK_Employee_Contact_ContactID = createForeignKey(org.jooq.examples.sqlserver.adventureworks.person.Keys.PK_Contact_ContactID, org.jooq.examples.sqlserver.adventureworks.humanresources.tables.Employee.Employee, org.jooq.examples.sqlserver.adventureworks.humanresources.tables.Employee.Employee.ContactID); + public static final org.jooq.ForeignKey FK_Employee_Employee_ManagerID = createForeignKey(PK_Employee_EmployeeID, org.jooq.examples.sqlserver.adventureworks.humanresources.tables.Employee.Employee, org.jooq.examples.sqlserver.adventureworks.humanresources.tables.Employee.Employee.ManagerID); + public static final org.jooq.ForeignKey FK_EmployeeAddress_Employee_EmployeeID = createForeignKey(PK_Employee_EmployeeID, org.jooq.examples.sqlserver.adventureworks.humanresources.tables.EmployeeAddress.EmployeeAddress, org.jooq.examples.sqlserver.adventureworks.humanresources.tables.EmployeeAddress.EmployeeAddress.EmployeeID); + public static final org.jooq.ForeignKey FK_EmployeeAddress_Address_AddressID = createForeignKey(org.jooq.examples.sqlserver.adventureworks.person.Keys.PK_Address_AddressID, org.jooq.examples.sqlserver.adventureworks.humanresources.tables.EmployeeAddress.EmployeeAddress, org.jooq.examples.sqlserver.adventureworks.humanresources.tables.EmployeeAddress.EmployeeAddress.AddressID); + public static final org.jooq.ForeignKey FK_EmployeeDepartmentHistory_Employee_EmployeeID = createForeignKey(PK_Employee_EmployeeID, org.jooq.examples.sqlserver.adventureworks.humanresources.tables.EmployeeDepartmentHistory.EmployeeDepartmentHistory, org.jooq.examples.sqlserver.adventureworks.humanresources.tables.EmployeeDepartmentHistory.EmployeeDepartmentHistory.EmployeeID); + public static final org.jooq.ForeignKey FK_EmployeeDepartmentHistory_Department_DepartmentID = createForeignKey(PK_Department_DepartmentID, org.jooq.examples.sqlserver.adventureworks.humanresources.tables.EmployeeDepartmentHistory.EmployeeDepartmentHistory, org.jooq.examples.sqlserver.adventureworks.humanresources.tables.EmployeeDepartmentHistory.EmployeeDepartmentHistory.DepartmentID); + public static final org.jooq.ForeignKey FK_EmployeeDepartmentHistory_Shift_ShiftID = createForeignKey(PK_Shift_ShiftID, org.jooq.examples.sqlserver.adventureworks.humanresources.tables.EmployeeDepartmentHistory.EmployeeDepartmentHistory, org.jooq.examples.sqlserver.adventureworks.humanresources.tables.EmployeeDepartmentHistory.EmployeeDepartmentHistory.ShiftID); + public static final org.jooq.ForeignKey FK_EmployeePayHistory_Employee_EmployeeID = createForeignKey(PK_Employee_EmployeeID, org.jooq.examples.sqlserver.adventureworks.humanresources.tables.EmployeePayHistory.EmployeePayHistory, org.jooq.examples.sqlserver.adventureworks.humanresources.tables.EmployeePayHistory.EmployeePayHistory.EmployeeID); + public static final org.jooq.ForeignKey FK_JobCandidate_Employee_EmployeeID = createForeignKey(PK_Employee_EmployeeID, org.jooq.examples.sqlserver.adventureworks.humanresources.tables.JobCandidate.JobCandidate, org.jooq.examples.sqlserver.adventureworks.humanresources.tables.JobCandidate.JobCandidate.EmployeeID); + + /** + * No instances + */ + private Keys() {} +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/humanresources/Routines.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/humanresources/Routines.java new file mode 100644 index 00000000000..20a8edcfdc6 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/humanresources/Routines.java @@ -0,0 +1,86 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.humanresources; + +/** + * This class is generated by jOOQ. + * + * Convenience access to all stored procedures and functions in HumanResources + */ +public final class Routines { + + /** + * Call HumanResources.uspUpdateEmployeeHireInfo + * + * @param EmployeeID IN parameter + * @param Title IN parameter + * @param HireDate IN parameter + * @param RateChangeDate IN parameter + * @param Rate IN parameter + * @param PayFrequency IN parameter + * @param CurrentFlag IN parameter + * @throws org.jooq.exception.DataAccessException if something went wrong executing the query + */ + public static void uspUpdateEmployeeHireInfo(org.jooq.Configuration configuration, java.lang.Integer EmployeeID, java.lang.String Title, java.sql.Timestamp HireDate, java.sql.Timestamp RateChangeDate, java.math.BigDecimal Rate, java.lang.Byte PayFrequency, java.lang.Boolean CurrentFlag) { + org.jooq.examples.sqlserver.adventureworks.humanresources.routines.uspUpdateEmployeeHireInfo p = new org.jooq.examples.sqlserver.adventureworks.humanresources.routines.uspUpdateEmployeeHireInfo(); + p.setEmployeeID(EmployeeID); + p.setTitle(Title); + p.setHireDate(HireDate); + p.setRateChangeDate(RateChangeDate); + p.setRate(Rate); + p.setPayFrequency(PayFrequency); + p.setCurrentFlag(CurrentFlag); + + p.execute(configuration); + } + + /** + * Call HumanResources.uspUpdateEmployeeLogin + * + * @param EmployeeID IN parameter + * @param ManagerID IN parameter + * @param LoginID IN parameter + * @param Title IN parameter + * @param HireDate IN parameter + * @param CurrentFlag IN parameter + * @throws org.jooq.exception.DataAccessException if something went wrong executing the query + */ + public static void uspUpdateEmployeeLogin(org.jooq.Configuration configuration, java.lang.Integer EmployeeID, java.lang.Integer ManagerID, java.lang.String LoginID, java.lang.String Title, java.sql.Timestamp HireDate, java.lang.Boolean CurrentFlag) { + org.jooq.examples.sqlserver.adventureworks.humanresources.routines.uspUpdateEmployeeLogin p = new org.jooq.examples.sqlserver.adventureworks.humanresources.routines.uspUpdateEmployeeLogin(); + p.setEmployeeID(EmployeeID); + p.setManagerID(ManagerID); + p.setLoginID(LoginID); + p.setTitle(Title); + p.setHireDate(HireDate); + p.setCurrentFlag(CurrentFlag); + + p.execute(configuration); + } + + /** + * Call HumanResources.uspUpdateEmployeePersonalInfo + * + * @param EmployeeID IN parameter + * @param NationalIDNumber IN parameter + * @param BirthDate IN parameter + * @param MaritalStatus IN parameter + * @param Gender IN parameter + * @throws org.jooq.exception.DataAccessException if something went wrong executing the query + */ + public static void uspUpdateEmployeePersonalInfo(org.jooq.Configuration configuration, java.lang.Integer EmployeeID, java.lang.String NationalIDNumber, java.sql.Timestamp BirthDate, java.lang.String MaritalStatus, java.lang.String Gender) { + org.jooq.examples.sqlserver.adventureworks.humanresources.routines.uspUpdateEmployeePersonalInfo p = new org.jooq.examples.sqlserver.adventureworks.humanresources.routines.uspUpdateEmployeePersonalInfo(); + p.setEmployeeID(EmployeeID); + p.setNationalIDNumber(NationalIDNumber); + p.setBirthDate(BirthDate); + p.setMaritalStatus(MaritalStatus); + p.setGender(Gender); + + p.execute(configuration); + } + + /** + * No instances + */ + private Routines() {} +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/humanresources/Tables.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/humanresources/Tables.java new file mode 100644 index 00000000000..26056868d5f --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/humanresources/Tables.java @@ -0,0 +1,82 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.humanresources; + +/** + * This class is generated by jOOQ. + * + * Convenience access to all tables in HumanResources + */ +public final class Tables { + + /** + * The table HumanResources.Department + */ + public static org.jooq.examples.sqlserver.adventureworks.humanresources.tables.Department Department = org.jooq.examples.sqlserver.adventureworks.humanresources.tables.Department.Department; + + /** + * The table HumanResources.Employee + */ + public static org.jooq.examples.sqlserver.adventureworks.humanresources.tables.Employee Employee = org.jooq.examples.sqlserver.adventureworks.humanresources.tables.Employee.Employee; + + /** + * The table HumanResources.EmployeeAddress + */ + public static org.jooq.examples.sqlserver.adventureworks.humanresources.tables.EmployeeAddress EmployeeAddress = org.jooq.examples.sqlserver.adventureworks.humanresources.tables.EmployeeAddress.EmployeeAddress; + + /** + * The table HumanResources.EmployeeDepartmentHistory + */ + public static org.jooq.examples.sqlserver.adventureworks.humanresources.tables.EmployeeDepartmentHistory EmployeeDepartmentHistory = org.jooq.examples.sqlserver.adventureworks.humanresources.tables.EmployeeDepartmentHistory.EmployeeDepartmentHistory; + + /** + * The table HumanResources.EmployeePayHistory + */ + public static org.jooq.examples.sqlserver.adventureworks.humanresources.tables.EmployeePayHistory EmployeePayHistory = org.jooq.examples.sqlserver.adventureworks.humanresources.tables.EmployeePayHistory.EmployeePayHistory; + + /** + * The table HumanResources.JobCandidate + */ + public static org.jooq.examples.sqlserver.adventureworks.humanresources.tables.JobCandidate JobCandidate = org.jooq.examples.sqlserver.adventureworks.humanresources.tables.JobCandidate.JobCandidate; + + /** + * The table HumanResources.Shift + */ + public static org.jooq.examples.sqlserver.adventureworks.humanresources.tables.Shift Shift = org.jooq.examples.sqlserver.adventureworks.humanresources.tables.Shift.Shift; + + /** + * The table HumanResources.vEmployee + */ + public static org.jooq.examples.sqlserver.adventureworks.humanresources.tables.vEmployee vEmployee = org.jooq.examples.sqlserver.adventureworks.humanresources.tables.vEmployee.vEmployee; + + /** + * The table HumanResources.vEmployeeDepartment + */ + public static org.jooq.examples.sqlserver.adventureworks.humanresources.tables.vEmployeeDepartment vEmployeeDepartment = org.jooq.examples.sqlserver.adventureworks.humanresources.tables.vEmployeeDepartment.vEmployeeDepartment; + + /** + * The table HumanResources.vEmployeeDepartmentHistory + */ + public static org.jooq.examples.sqlserver.adventureworks.humanresources.tables.vEmployeeDepartmentHistory vEmployeeDepartmentHistory = org.jooq.examples.sqlserver.adventureworks.humanresources.tables.vEmployeeDepartmentHistory.vEmployeeDepartmentHistory; + + /** + * The table HumanResources.vJobCandidate + */ + public static org.jooq.examples.sqlserver.adventureworks.humanresources.tables.vJobCandidate vJobCandidate = org.jooq.examples.sqlserver.adventureworks.humanresources.tables.vJobCandidate.vJobCandidate; + + /** + * The table HumanResources.vJobCandidateEducation + */ + public static org.jooq.examples.sqlserver.adventureworks.humanresources.tables.vJobCandidateEducation vJobCandidateEducation = org.jooq.examples.sqlserver.adventureworks.humanresources.tables.vJobCandidateEducation.vJobCandidateEducation; + + /** + * The table HumanResources.vJobCandidateEmployment + */ + public static org.jooq.examples.sqlserver.adventureworks.humanresources.tables.vJobCandidateEmployment vJobCandidateEmployment = org.jooq.examples.sqlserver.adventureworks.humanresources.tables.vJobCandidateEmployment.vJobCandidateEmployment; + + /** + * No instances + */ + private Tables() {} +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/humanresources/routines/uspUpdateEmployeeHireInfo.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/humanresources/routines/uspUpdateEmployeeHireInfo.java new file mode 100644 index 00000000000..69966b13170 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/humanresources/routines/uspUpdateEmployeeHireInfo.java @@ -0,0 +1,112 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.humanresources.routines; + +/** + * This class is generated by jOOQ. + */ +public class uspUpdateEmployeeHireInfo extends org.jooq.impl.AbstractRoutine { + + private static final long serialVersionUID = -956049043; + + + /** + * An uncommented item + */ + public static final org.jooq.Parameter EmployeeID = createParameter("EmployeeID", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter Title = createParameter("Title", org.jooq.impl.SQLDataType.NVARCHAR); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter HireDate = createParameter("HireDate", org.jooq.impl.SQLDataType.TIMESTAMP); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter RateChangeDate = createParameter("RateChangeDate", org.jooq.impl.SQLDataType.TIMESTAMP); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter Rate = createParameter("Rate", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter PayFrequency = createParameter("PayFrequency", org.jooq.impl.SQLDataType.TINYINT); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter CurrentFlag = createParameter("CurrentFlag", org.jooq.impl.SQLDataType.BIT); + + /** + * Create a new routine call instance + */ + public uspUpdateEmployeeHireInfo() { + super("uspUpdateEmployeeHireInfo", org.jooq.examples.sqlserver.adventureworks.humanresources.HumanResources.HumanResources); + + addInParameter(EmployeeID); + addInParameter(Title); + addInParameter(HireDate); + addInParameter(RateChangeDate); + addInParameter(Rate); + addInParameter(PayFrequency); + addInParameter(CurrentFlag); + } + + /** + * Set the EmployeeID parameter to the routine + */ + public void setEmployeeID(java.lang.Integer value) { + setValue(EmployeeID, value); + } + + /** + * Set the Title parameter to the routine + */ + public void setTitle(java.lang.String value) { + setValue(Title, value); + } + + /** + * Set the HireDate parameter to the routine + */ + public void setHireDate(java.sql.Timestamp value) { + setValue(HireDate, value); + } + + /** + * Set the RateChangeDate parameter to the routine + */ + public void setRateChangeDate(java.sql.Timestamp value) { + setValue(RateChangeDate, value); + } + + /** + * Set the Rate parameter to the routine + */ + public void setRate(java.math.BigDecimal value) { + setValue(Rate, value); + } + + /** + * Set the PayFrequency parameter to the routine + */ + public void setPayFrequency(java.lang.Byte value) { + setValue(PayFrequency, value); + } + + /** + * Set the CurrentFlag parameter to the routine + */ + public void setCurrentFlag(java.lang.Boolean value) { + setValue(CurrentFlag, value); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/humanresources/routines/uspUpdateEmployeeLogin.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/humanresources/routines/uspUpdateEmployeeLogin.java new file mode 100644 index 00000000000..c66a5d62dc4 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/humanresources/routines/uspUpdateEmployeeLogin.java @@ -0,0 +1,99 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.humanresources.routines; + +/** + * This class is generated by jOOQ. + */ +public class uspUpdateEmployeeLogin extends org.jooq.impl.AbstractRoutine { + + private static final long serialVersionUID = 940022256; + + + /** + * An uncommented item + */ + public static final org.jooq.Parameter EmployeeID = createParameter("EmployeeID", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter ManagerID = createParameter("ManagerID", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter LoginID = createParameter("LoginID", org.jooq.impl.SQLDataType.NVARCHAR); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter Title = createParameter("Title", org.jooq.impl.SQLDataType.NVARCHAR); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter HireDate = createParameter("HireDate", org.jooq.impl.SQLDataType.TIMESTAMP); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter CurrentFlag = createParameter("CurrentFlag", org.jooq.impl.SQLDataType.BIT); + + /** + * Create a new routine call instance + */ + public uspUpdateEmployeeLogin() { + super("uspUpdateEmployeeLogin", org.jooq.examples.sqlserver.adventureworks.humanresources.HumanResources.HumanResources); + + addInParameter(EmployeeID); + addInParameter(ManagerID); + addInParameter(LoginID); + addInParameter(Title); + addInParameter(HireDate); + addInParameter(CurrentFlag); + } + + /** + * Set the EmployeeID parameter to the routine + */ + public void setEmployeeID(java.lang.Integer value) { + setValue(EmployeeID, value); + } + + /** + * Set the ManagerID parameter to the routine + */ + public void setManagerID(java.lang.Integer value) { + setValue(ManagerID, value); + } + + /** + * Set the LoginID parameter to the routine + */ + public void setLoginID(java.lang.String value) { + setValue(LoginID, value); + } + + /** + * Set the Title parameter to the routine + */ + public void setTitle(java.lang.String value) { + setValue(Title, value); + } + + /** + * Set the HireDate parameter to the routine + */ + public void setHireDate(java.sql.Timestamp value) { + setValue(HireDate, value); + } + + /** + * Set the CurrentFlag parameter to the routine + */ + public void setCurrentFlag(java.lang.Boolean value) { + setValue(CurrentFlag, value); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/humanresources/routines/uspUpdateEmployeePersonalInfo.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/humanresources/routines/uspUpdateEmployeePersonalInfo.java new file mode 100644 index 00000000000..e9aee0c162b --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/humanresources/routines/uspUpdateEmployeePersonalInfo.java @@ -0,0 +1,86 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.humanresources.routines; + +/** + * This class is generated by jOOQ. + */ +public class uspUpdateEmployeePersonalInfo extends org.jooq.impl.AbstractRoutine { + + private static final long serialVersionUID = -1260130444; + + + /** + * An uncommented item + */ + public static final org.jooq.Parameter EmployeeID = createParameter("EmployeeID", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter NationalIDNumber = createParameter("NationalIDNumber", org.jooq.impl.SQLDataType.NVARCHAR); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter BirthDate = createParameter("BirthDate", org.jooq.impl.SQLDataType.TIMESTAMP); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter MaritalStatus = createParameter("MaritalStatus", org.jooq.impl.SQLDataType.NCHAR); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter Gender = createParameter("Gender", org.jooq.impl.SQLDataType.NCHAR); + + /** + * Create a new routine call instance + */ + public uspUpdateEmployeePersonalInfo() { + super("uspUpdateEmployeePersonalInfo", org.jooq.examples.sqlserver.adventureworks.humanresources.HumanResources.HumanResources); + + addInParameter(EmployeeID); + addInParameter(NationalIDNumber); + addInParameter(BirthDate); + addInParameter(MaritalStatus); + addInParameter(Gender); + } + + /** + * Set the EmployeeID parameter to the routine + */ + public void setEmployeeID(java.lang.Integer value) { + setValue(EmployeeID, value); + } + + /** + * Set the NationalIDNumber parameter to the routine + */ + public void setNationalIDNumber(java.lang.String value) { + setValue(NationalIDNumber, value); + } + + /** + * Set the BirthDate parameter to the routine + */ + public void setBirthDate(java.sql.Timestamp value) { + setValue(BirthDate, value); + } + + /** + * Set the MaritalStatus parameter to the routine + */ + public void setMaritalStatus(java.lang.String value) { + setValue(MaritalStatus, value); + } + + /** + * Set the Gender parameter to the routine + */ + public void setGender(java.lang.String value) { + setValue(Gender, value); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/humanresources/tables/Department.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/humanresources/tables/Department.java new file mode 100644 index 00000000000..a0c46652dc2 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/humanresources/tables/Department.java @@ -0,0 +1,81 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.humanresources.tables; + +/** + * This class is generated by jOOQ. + */ +public class Department extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = -1319196246; + + /** + * The singleton instance of HumanResources.Department + */ + public static final org.jooq.examples.sqlserver.adventureworks.humanresources.tables.Department Department = new org.jooq.examples.sqlserver.adventureworks.humanresources.tables.Department(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.examples.sqlserver.adventureworks.humanresources.tables.records.Department.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final org.jooq.TableField DepartmentID = createField("DepartmentID", org.jooq.impl.SQLDataType.SMALLINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField Name = createField("Name", org.jooq.impl.SQLDataType.NVARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField GroupName = createField("GroupName", org.jooq.impl.SQLDataType.NVARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField ModifiedDate = createField("ModifiedDate", org.jooq.impl.SQLDataType.TIMESTAMP, this); + + public Department() { + super("Department", org.jooq.examples.sqlserver.adventureworks.humanresources.HumanResources.HumanResources); + } + + public Department(java.lang.String alias) { + super(alias, org.jooq.examples.sqlserver.adventureworks.humanresources.HumanResources.HumanResources, org.jooq.examples.sqlserver.adventureworks.humanresources.tables.Department.Department); + } + + @Override + public org.jooq.Identity getIdentity() { + return org.jooq.examples.sqlserver.adventureworks.humanresources.Keys.IDENTITY_Department; + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.examples.sqlserver.adventureworks.humanresources.Keys.PK_Department_DepartmentID; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.examples.sqlserver.adventureworks.humanresources.Keys.PK_Department_DepartmentID); + } + + @Override + public org.jooq.examples.sqlserver.adventureworks.humanresources.tables.Department as(java.lang.String alias) { + return new org.jooq.examples.sqlserver.adventureworks.humanresources.tables.Department(alias); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/humanresources/tables/Employee.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/humanresources/tables/Employee.java new file mode 100644 index 00000000000..1b64f131e32 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/humanresources/tables/Employee.java @@ -0,0 +1,159 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.humanresources.tables; + +/** + * This class is generated by jOOQ. + */ +public class Employee extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = -101776693; + + /** + * The singleton instance of HumanResources.Employee + */ + public static final org.jooq.examples.sqlserver.adventureworks.humanresources.tables.Employee Employee = new org.jooq.examples.sqlserver.adventureworks.humanresources.tables.Employee(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.examples.sqlserver.adventureworks.humanresources.tables.records.Employee.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final org.jooq.TableField EmployeeID = createField("EmployeeID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField NationalIDNumber = createField("NationalIDNumber", org.jooq.impl.SQLDataType.NVARCHAR, this); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_Employee_Contact_ContactID
+	 * FOREIGN KEY (ContactID)
+	 * REFERENCES Person.Contact (ContactID)
+	 * 
+ */ + public final org.jooq.TableField ContactID = createField("ContactID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField LoginID = createField("LoginID", org.jooq.impl.SQLDataType.NVARCHAR, this); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_Employee_Employee_ManagerID
+	 * FOREIGN KEY (ManagerID)
+	 * REFERENCES HumanResources.Employee (EmployeeID)
+	 * 
+ */ + public final org.jooq.TableField ManagerID = createField("ManagerID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField Title = createField("Title", org.jooq.impl.SQLDataType.NVARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField BirthDate = createField("BirthDate", org.jooq.impl.SQLDataType.TIMESTAMP, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField MaritalStatus = createField("MaritalStatus", org.jooq.impl.SQLDataType.NCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField Gender = createField("Gender", org.jooq.impl.SQLDataType.NCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField HireDate = createField("HireDate", org.jooq.impl.SQLDataType.TIMESTAMP, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField SalariedFlag = createField("SalariedFlag", org.jooq.impl.SQLDataType.BIT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField VacationHours = createField("VacationHours", org.jooq.impl.SQLDataType.SMALLINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField SickLeaveHours = createField("SickLeaveHours", org.jooq.impl.SQLDataType.SMALLINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField CurrentFlag = createField("CurrentFlag", org.jooq.impl.SQLDataType.BIT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField rowguid = createField("rowguid", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField ModifiedDate = createField("ModifiedDate", org.jooq.impl.SQLDataType.TIMESTAMP, this); + + public Employee() { + super("Employee", org.jooq.examples.sqlserver.adventureworks.humanresources.HumanResources.HumanResources); + } + + public Employee(java.lang.String alias) { + super(alias, org.jooq.examples.sqlserver.adventureworks.humanresources.HumanResources.HumanResources, org.jooq.examples.sqlserver.adventureworks.humanresources.tables.Employee.Employee); + } + + @Override + public org.jooq.Identity getIdentity() { + return org.jooq.examples.sqlserver.adventureworks.humanresources.Keys.IDENTITY_Employee; + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.examples.sqlserver.adventureworks.humanresources.Keys.PK_Employee_EmployeeID; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.examples.sqlserver.adventureworks.humanresources.Keys.PK_Employee_EmployeeID); + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getReferences() { + return java.util.Arrays.>asList(org.jooq.examples.sqlserver.adventureworks.humanresources.Keys.FK_Employee_Contact_ContactID, org.jooq.examples.sqlserver.adventureworks.humanresources.Keys.FK_Employee_Employee_ManagerID); + } + + @Override + public org.jooq.examples.sqlserver.adventureworks.humanresources.tables.Employee as(java.lang.String alias) { + return new org.jooq.examples.sqlserver.adventureworks.humanresources.tables.Employee(alias); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/humanresources/tables/EmployeeAddress.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/humanresources/tables/EmployeeAddress.java new file mode 100644 index 00000000000..33a9bf1fcf1 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/humanresources/tables/EmployeeAddress.java @@ -0,0 +1,96 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.humanresources.tables; + +/** + * This class is generated by jOOQ. + */ +public class EmployeeAddress extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = -160139124; + + /** + * The singleton instance of HumanResources.EmployeeAddress + */ + public static final org.jooq.examples.sqlserver.adventureworks.humanresources.tables.EmployeeAddress EmployeeAddress = new org.jooq.examples.sqlserver.adventureworks.humanresources.tables.EmployeeAddress(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.examples.sqlserver.adventureworks.humanresources.tables.records.EmployeeAddress.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT FK_EmployeeAddress_Employee_EmployeeID
+	 * FOREIGN KEY (EmployeeID)
+	 * REFERENCES HumanResources.Employee (EmployeeID)
+	 * 
+ */ + public final org.jooq.TableField EmployeeID = createField("EmployeeID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT FK_EmployeeAddress_Address_AddressID
+	 * FOREIGN KEY (AddressID)
+	 * REFERENCES Person.Address (AddressID)
+	 * 
+ */ + public final org.jooq.TableField AddressID = createField("AddressID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField rowguid = createField("rowguid", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField ModifiedDate = createField("ModifiedDate", org.jooq.impl.SQLDataType.TIMESTAMP, this); + + public EmployeeAddress() { + super("EmployeeAddress", org.jooq.examples.sqlserver.adventureworks.humanresources.HumanResources.HumanResources); + } + + public EmployeeAddress(java.lang.String alias) { + super(alias, org.jooq.examples.sqlserver.adventureworks.humanresources.HumanResources.HumanResources, org.jooq.examples.sqlserver.adventureworks.humanresources.tables.EmployeeAddress.EmployeeAddress); + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.examples.sqlserver.adventureworks.humanresources.Keys.PK_EmployeeAddress_EmployeeID_AddressID; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.examples.sqlserver.adventureworks.humanresources.Keys.PK_EmployeeAddress_EmployeeID_AddressID); + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getReferences() { + return java.util.Arrays.>asList(org.jooq.examples.sqlserver.adventureworks.humanresources.Keys.FK_EmployeeAddress_Employee_EmployeeID, org.jooq.examples.sqlserver.adventureworks.humanresources.Keys.FK_EmployeeAddress_Address_AddressID); + } + + @Override + public org.jooq.examples.sqlserver.adventureworks.humanresources.tables.EmployeeAddress as(java.lang.String alias) { + return new org.jooq.examples.sqlserver.adventureworks.humanresources.tables.EmployeeAddress(alias); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/humanresources/tables/EmployeeDepartmentHistory.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/humanresources/tables/EmployeeDepartmentHistory.java new file mode 100644 index 00000000000..d171fb44a9c --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/humanresources/tables/EmployeeDepartmentHistory.java @@ -0,0 +1,116 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.humanresources.tables; + +/** + * This class is generated by jOOQ. + */ +public class EmployeeDepartmentHistory extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = 563649045; + + /** + * The singleton instance of HumanResources.EmployeeDepartmentHistory + */ + public static final org.jooq.examples.sqlserver.adventureworks.humanresources.tables.EmployeeDepartmentHistory EmployeeDepartmentHistory = new org.jooq.examples.sqlserver.adventureworks.humanresources.tables.EmployeeDepartmentHistory(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.examples.sqlserver.adventureworks.humanresources.tables.records.EmployeeDepartmentHistory.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT FK_EmployeeDepartmentHistory_Employee_EmployeeID
+	 * FOREIGN KEY (EmployeeID)
+	 * REFERENCES HumanResources.Employee (EmployeeID)
+	 * 
+ */ + public final org.jooq.TableField EmployeeID = createField("EmployeeID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT FK_EmployeeDepartmentHistory_Department_DepartmentID
+	 * FOREIGN KEY (DepartmentID)
+	 * REFERENCES HumanResources.Department (DepartmentID)
+	 * 
+ */ + public final org.jooq.TableField DepartmentID = createField("DepartmentID", org.jooq.impl.SQLDataType.SMALLINT, this); + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT FK_EmployeeDepartmentHistory_Shift_ShiftID
+	 * FOREIGN KEY (ShiftID)
+	 * REFERENCES HumanResources.Shift (ShiftID)
+	 * 
+ */ + public final org.jooq.TableField ShiftID = createField("ShiftID", org.jooq.impl.SQLDataType.TINYINT, this); + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final org.jooq.TableField StartDate = createField("StartDate", org.jooq.impl.SQLDataType.TIMESTAMP, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField EndDate = createField("EndDate", org.jooq.impl.SQLDataType.TIMESTAMP, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField ModifiedDate = createField("ModifiedDate", org.jooq.impl.SQLDataType.TIMESTAMP, this); + + public EmployeeDepartmentHistory() { + super("EmployeeDepartmentHistory", org.jooq.examples.sqlserver.adventureworks.humanresources.HumanResources.HumanResources); + } + + public EmployeeDepartmentHistory(java.lang.String alias) { + super(alias, org.jooq.examples.sqlserver.adventureworks.humanresources.HumanResources.HumanResources, org.jooq.examples.sqlserver.adventureworks.humanresources.tables.EmployeeDepartmentHistory.EmployeeDepartmentHistory); + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.examples.sqlserver.adventureworks.humanresources.Keys.PK_EmployeeDepartmentHistory_EmployeeID_StartDate_DepartmentID; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.examples.sqlserver.adventureworks.humanresources.Keys.PK_EmployeeDepartmentHistory_EmployeeID_StartDate_DepartmentID); + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getReferences() { + return java.util.Arrays.>asList(org.jooq.examples.sqlserver.adventureworks.humanresources.Keys.FK_EmployeeDepartmentHistory_Employee_EmployeeID, org.jooq.examples.sqlserver.adventureworks.humanresources.Keys.FK_EmployeeDepartmentHistory_Department_DepartmentID, org.jooq.examples.sqlserver.adventureworks.humanresources.Keys.FK_EmployeeDepartmentHistory_Shift_ShiftID); + } + + @Override + public org.jooq.examples.sqlserver.adventureworks.humanresources.tables.EmployeeDepartmentHistory as(java.lang.String alias) { + return new org.jooq.examples.sqlserver.adventureworks.humanresources.tables.EmployeeDepartmentHistory(alias); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/humanresources/tables/EmployeePayHistory.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/humanresources/tables/EmployeePayHistory.java new file mode 100644 index 00000000000..98e4c8aac0f --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/humanresources/tables/EmployeePayHistory.java @@ -0,0 +1,95 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.humanresources.tables; + +/** + * This class is generated by jOOQ. + */ +public class EmployeePayHistory extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = 191845392; + + /** + * The singleton instance of HumanResources.EmployeePayHistory + */ + public static final org.jooq.examples.sqlserver.adventureworks.humanresources.tables.EmployeePayHistory EmployeePayHistory = new org.jooq.examples.sqlserver.adventureworks.humanresources.tables.EmployeePayHistory(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.examples.sqlserver.adventureworks.humanresources.tables.records.EmployeePayHistory.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT FK_EmployeePayHistory_Employee_EmployeeID
+	 * FOREIGN KEY (EmployeeID)
+	 * REFERENCES HumanResources.Employee (EmployeeID)
+	 * 
+ */ + public final org.jooq.TableField EmployeeID = createField("EmployeeID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final org.jooq.TableField RateChangeDate = createField("RateChangeDate", org.jooq.impl.SQLDataType.TIMESTAMP, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField Rate = createField("Rate", org.jooq.impl.SQLDataType.NUMERIC, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField PayFrequency = createField("PayFrequency", org.jooq.impl.SQLDataType.TINYINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField ModifiedDate = createField("ModifiedDate", org.jooq.impl.SQLDataType.TIMESTAMP, this); + + public EmployeePayHistory() { + super("EmployeePayHistory", org.jooq.examples.sqlserver.adventureworks.humanresources.HumanResources.HumanResources); + } + + public EmployeePayHistory(java.lang.String alias) { + super(alias, org.jooq.examples.sqlserver.adventureworks.humanresources.HumanResources.HumanResources, org.jooq.examples.sqlserver.adventureworks.humanresources.tables.EmployeePayHistory.EmployeePayHistory); + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.examples.sqlserver.adventureworks.humanresources.Keys.PK_EmployeePayHistory_EmployeeID_RateChangeDate; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.examples.sqlserver.adventureworks.humanresources.Keys.PK_EmployeePayHistory_EmployeeID_RateChangeDate); + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getReferences() { + return java.util.Arrays.>asList(org.jooq.examples.sqlserver.adventureworks.humanresources.Keys.FK_EmployeePayHistory_Employee_EmployeeID); + } + + @Override + public org.jooq.examples.sqlserver.adventureworks.humanresources.tables.EmployeePayHistory as(java.lang.String alias) { + return new org.jooq.examples.sqlserver.adventureworks.humanresources.tables.EmployeePayHistory(alias); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/humanresources/tables/JobCandidate.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/humanresources/tables/JobCandidate.java new file mode 100644 index 00000000000..b29cfc9ad24 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/humanresources/tables/JobCandidate.java @@ -0,0 +1,96 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.humanresources.tables; + +/** + * This class is generated by jOOQ. + */ +public class JobCandidate extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = -1931283364; + + /** + * The singleton instance of HumanResources.JobCandidate + */ + public static final org.jooq.examples.sqlserver.adventureworks.humanresources.tables.JobCandidate JobCandidate = new org.jooq.examples.sqlserver.adventureworks.humanresources.tables.JobCandidate(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.examples.sqlserver.adventureworks.humanresources.tables.records.JobCandidate.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final org.jooq.TableField JobCandidateID = createField("JobCandidateID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_JobCandidate_Employee_EmployeeID
+	 * FOREIGN KEY (EmployeeID)
+	 * REFERENCES HumanResources.Employee (EmployeeID)
+	 * 
+ */ + public final org.jooq.TableField EmployeeID = createField("EmployeeID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + * + * The SQL type of this item (xml, ) could not be mapped.
+ * Deserialising this field might not work! + */ + public final org.jooq.TableField Resume = createField("Resume", org.jooq.util.sqlserver.SQLServerDataType.getDefaultDataType("xml"), this); + + /** + * An uncommented item + */ + public final org.jooq.TableField ModifiedDate = createField("ModifiedDate", org.jooq.impl.SQLDataType.TIMESTAMP, this); + + public JobCandidate() { + super("JobCandidate", org.jooq.examples.sqlserver.adventureworks.humanresources.HumanResources.HumanResources); + } + + public JobCandidate(java.lang.String alias) { + super(alias, org.jooq.examples.sqlserver.adventureworks.humanresources.HumanResources.HumanResources, org.jooq.examples.sqlserver.adventureworks.humanresources.tables.JobCandidate.JobCandidate); + } + + @Override + public org.jooq.Identity getIdentity() { + return org.jooq.examples.sqlserver.adventureworks.humanresources.Keys.IDENTITY_JobCandidate; + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.examples.sqlserver.adventureworks.humanresources.Keys.PK_JobCandidate_JobCandidateID; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.examples.sqlserver.adventureworks.humanresources.Keys.PK_JobCandidate_JobCandidateID); + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getReferences() { + return java.util.Arrays.>asList(org.jooq.examples.sqlserver.adventureworks.humanresources.Keys.FK_JobCandidate_Employee_EmployeeID); + } + + @Override + public org.jooq.examples.sqlserver.adventureworks.humanresources.tables.JobCandidate as(java.lang.String alias) { + return new org.jooq.examples.sqlserver.adventureworks.humanresources.tables.JobCandidate(alias); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/humanresources/tables/Shift.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/humanresources/tables/Shift.java new file mode 100644 index 00000000000..4a547b85d5f --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/humanresources/tables/Shift.java @@ -0,0 +1,86 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.humanresources.tables; + +/** + * This class is generated by jOOQ. + */ +public class Shift extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = 14909332; + + /** + * The singleton instance of HumanResources.Shift + */ + public static final org.jooq.examples.sqlserver.adventureworks.humanresources.tables.Shift Shift = new org.jooq.examples.sqlserver.adventureworks.humanresources.tables.Shift(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.examples.sqlserver.adventureworks.humanresources.tables.records.Shift.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final org.jooq.TableField ShiftID = createField("ShiftID", org.jooq.impl.SQLDataType.TINYINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField Name = createField("Name", org.jooq.impl.SQLDataType.NVARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField StartTime = createField("StartTime", org.jooq.impl.SQLDataType.TIMESTAMP, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField EndTime = createField("EndTime", org.jooq.impl.SQLDataType.TIMESTAMP, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField ModifiedDate = createField("ModifiedDate", org.jooq.impl.SQLDataType.TIMESTAMP, this); + + public Shift() { + super("Shift", org.jooq.examples.sqlserver.adventureworks.humanresources.HumanResources.HumanResources); + } + + public Shift(java.lang.String alias) { + super(alias, org.jooq.examples.sqlserver.adventureworks.humanresources.HumanResources.HumanResources, org.jooq.examples.sqlserver.adventureworks.humanresources.tables.Shift.Shift); + } + + @Override + public org.jooq.Identity getIdentity() { + return org.jooq.examples.sqlserver.adventureworks.humanresources.Keys.IDENTITY_Shift; + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.examples.sqlserver.adventureworks.humanresources.Keys.PK_Shift_ShiftID; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.examples.sqlserver.adventureworks.humanresources.Keys.PK_Shift_ShiftID); + } + + @Override + public org.jooq.examples.sqlserver.adventureworks.humanresources.tables.Shift as(java.lang.String alias) { + return new org.jooq.examples.sqlserver.adventureworks.humanresources.tables.Shift(alias); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/humanresources/tables/pojos/Department.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/humanresources/tables/pojos/Department.java new file mode 100644 index 00000000000..42960a8cbb2 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/humanresources/tables/pojos/Department.java @@ -0,0 +1,56 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.humanresources.tables.pojos; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "Department", schema = "HumanResources") +public class Department implements java.io.Serializable { + + private static final long serialVersionUID = 874413959; + + private java.lang.Short DepartmentID; + private java.lang.String Name; + private java.lang.String GroupName; + private java.sql.Timestamp ModifiedDate; + + @javax.persistence.Id + @javax.persistence.Column(name = "DepartmentID", unique = true, nullable = false, precision = 5) + public java.lang.Short getDepartmentID() { + return this.DepartmentID; + } + + public void setDepartmentID(java.lang.Short DepartmentID) { + this.DepartmentID = DepartmentID; + } + + @javax.persistence.Column(name = "Name", nullable = false, length = 50) + public java.lang.String getName() { + return this.Name; + } + + public void setName(java.lang.String Name) { + this.Name = Name; + } + + @javax.persistence.Column(name = "GroupName", nullable = false, length = 50) + public java.lang.String getGroupName() { + return this.GroupName; + } + + public void setGroupName(java.lang.String GroupName) { + this.GroupName = GroupName; + } + + @javax.persistence.Column(name = "ModifiedDate", nullable = false) + public java.sql.Timestamp getModifiedDate() { + return this.ModifiedDate; + } + + public void setModifiedDate(java.sql.Timestamp ModifiedDate) { + this.ModifiedDate = ModifiedDate; + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/humanresources/tables/pojos/Employee.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/humanresources/tables/pojos/Employee.java new file mode 100644 index 00000000000..1b4aee530fd --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/humanresources/tables/pojos/Employee.java @@ -0,0 +1,176 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.humanresources.tables.pojos; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "Employee", schema = "HumanResources") +public class Employee implements java.io.Serializable { + + private static final long serialVersionUID = -1424024593; + + private java.lang.Integer EmployeeID; + private java.lang.String NationalIDNumber; + private java.lang.Integer ContactID; + private java.lang.String LoginID; + private java.lang.Integer ManagerID; + private java.lang.String Title; + private java.sql.Timestamp BirthDate; + private java.lang.String MaritalStatus; + private java.lang.String Gender; + private java.sql.Timestamp HireDate; + private java.lang.Boolean SalariedFlag; + private java.lang.Short VacationHours; + private java.lang.Short SickLeaveHours; + private java.lang.Boolean CurrentFlag; + private java.lang.String rowguid; + private java.sql.Timestamp ModifiedDate; + + @javax.persistence.Id + @javax.persistence.Column(name = "EmployeeID", unique = true, nullable = false, precision = 10) + public java.lang.Integer getEmployeeID() { + return this.EmployeeID; + } + + public void setEmployeeID(java.lang.Integer EmployeeID) { + this.EmployeeID = EmployeeID; + } + + @javax.persistence.Column(name = "NationalIDNumber", nullable = false, length = 15) + public java.lang.String getNationalIDNumber() { + return this.NationalIDNumber; + } + + public void setNationalIDNumber(java.lang.String NationalIDNumber) { + this.NationalIDNumber = NationalIDNumber; + } + + @javax.persistence.Column(name = "ContactID", nullable = false, precision = 10) + public java.lang.Integer getContactID() { + return this.ContactID; + } + + public void setContactID(java.lang.Integer ContactID) { + this.ContactID = ContactID; + } + + @javax.persistence.Column(name = "LoginID", nullable = false, length = 256) + public java.lang.String getLoginID() { + return this.LoginID; + } + + public void setLoginID(java.lang.String LoginID) { + this.LoginID = LoginID; + } + + @javax.persistence.Column(name = "ManagerID", precision = 10) + public java.lang.Integer getManagerID() { + return this.ManagerID; + } + + public void setManagerID(java.lang.Integer ManagerID) { + this.ManagerID = ManagerID; + } + + @javax.persistence.Column(name = "Title", nullable = false, length = 50) + public java.lang.String getTitle() { + return this.Title; + } + + public void setTitle(java.lang.String Title) { + this.Title = Title; + } + + @javax.persistence.Column(name = "BirthDate", nullable = false) + public java.sql.Timestamp getBirthDate() { + return this.BirthDate; + } + + public void setBirthDate(java.sql.Timestamp BirthDate) { + this.BirthDate = BirthDate; + } + + @javax.persistence.Column(name = "MaritalStatus", nullable = false, length = 1) + public java.lang.String getMaritalStatus() { + return this.MaritalStatus; + } + + public void setMaritalStatus(java.lang.String MaritalStatus) { + this.MaritalStatus = MaritalStatus; + } + + @javax.persistence.Column(name = "Gender", nullable = false, length = 1) + public java.lang.String getGender() { + return this.Gender; + } + + public void setGender(java.lang.String Gender) { + this.Gender = Gender; + } + + @javax.persistence.Column(name = "HireDate", nullable = false) + public java.sql.Timestamp getHireDate() { + return this.HireDate; + } + + public void setHireDate(java.sql.Timestamp HireDate) { + this.HireDate = HireDate; + } + + @javax.persistence.Column(name = "SalariedFlag", nullable = false) + public java.lang.Boolean getSalariedFlag() { + return this.SalariedFlag; + } + + public void setSalariedFlag(java.lang.Boolean SalariedFlag) { + this.SalariedFlag = SalariedFlag; + } + + @javax.persistence.Column(name = "VacationHours", nullable = false, precision = 5) + public java.lang.Short getVacationHours() { + return this.VacationHours; + } + + public void setVacationHours(java.lang.Short VacationHours) { + this.VacationHours = VacationHours; + } + + @javax.persistence.Column(name = "SickLeaveHours", nullable = false, precision = 5) + public java.lang.Short getSickLeaveHours() { + return this.SickLeaveHours; + } + + public void setSickLeaveHours(java.lang.Short SickLeaveHours) { + this.SickLeaveHours = SickLeaveHours; + } + + @javax.persistence.Column(name = "CurrentFlag", nullable = false) + public java.lang.Boolean getCurrentFlag() { + return this.CurrentFlag; + } + + public void setCurrentFlag(java.lang.Boolean CurrentFlag) { + this.CurrentFlag = CurrentFlag; + } + + @javax.persistence.Column(name = "rowguid", nullable = false) + public java.lang.String getrowguid() { + return this.rowguid; + } + + public void setrowguid(java.lang.String rowguid) { + this.rowguid = rowguid; + } + + @javax.persistence.Column(name = "ModifiedDate", nullable = false) + public java.sql.Timestamp getModifiedDate() { + return this.ModifiedDate; + } + + public void setModifiedDate(java.sql.Timestamp ModifiedDate) { + this.ModifiedDate = ModifiedDate; + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/humanresources/tables/pojos/EmployeeAddress.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/humanresources/tables/pojos/EmployeeAddress.java new file mode 100644 index 00000000000..d2e8759fbdd --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/humanresources/tables/pojos/EmployeeAddress.java @@ -0,0 +1,57 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.humanresources.tables.pojos; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "EmployeeAddress", schema = "HumanResources", uniqueConstraints = { + @javax.persistence.UniqueConstraint(columnNames = {"EmployeeID", "AddressID"}) +}) +public class EmployeeAddress implements java.io.Serializable { + + private static final long serialVersionUID = 172531843; + + private java.lang.Integer EmployeeID; + private java.lang.Integer AddressID; + private java.lang.String rowguid; + private java.sql.Timestamp ModifiedDate; + + @javax.persistence.Column(name = "EmployeeID", nullable = false, precision = 10) + public java.lang.Integer getEmployeeID() { + return this.EmployeeID; + } + + public void setEmployeeID(java.lang.Integer EmployeeID) { + this.EmployeeID = EmployeeID; + } + + @javax.persistence.Column(name = "AddressID", nullable = false, precision = 10) + public java.lang.Integer getAddressID() { + return this.AddressID; + } + + public void setAddressID(java.lang.Integer AddressID) { + this.AddressID = AddressID; + } + + @javax.persistence.Column(name = "rowguid", nullable = false) + public java.lang.String getrowguid() { + return this.rowguid; + } + + public void setrowguid(java.lang.String rowguid) { + this.rowguid = rowguid; + } + + @javax.persistence.Column(name = "ModifiedDate", nullable = false) + public java.sql.Timestamp getModifiedDate() { + return this.ModifiedDate; + } + + public void setModifiedDate(java.sql.Timestamp ModifiedDate) { + this.ModifiedDate = ModifiedDate; + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/humanresources/tables/pojos/EmployeeDepartmentHistory.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/humanresources/tables/pojos/EmployeeDepartmentHistory.java new file mode 100644 index 00000000000..a58425b0fdb --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/humanresources/tables/pojos/EmployeeDepartmentHistory.java @@ -0,0 +1,77 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.humanresources.tables.pojos; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "EmployeeDepartmentHistory", schema = "HumanResources", uniqueConstraints = { + @javax.persistence.UniqueConstraint(columnNames = {"EmployeeID", "StartDate", "DepartmentID", "ShiftID"}) +}) +public class EmployeeDepartmentHistory implements java.io.Serializable { + + private static final long serialVersionUID = -577466492; + + private java.lang.Integer EmployeeID; + private java.lang.Short DepartmentID; + private java.lang.Byte ShiftID; + private java.sql.Timestamp StartDate; + private java.sql.Timestamp EndDate; + private java.sql.Timestamp ModifiedDate; + + @javax.persistence.Column(name = "EmployeeID", nullable = false, precision = 10) + public java.lang.Integer getEmployeeID() { + return this.EmployeeID; + } + + public void setEmployeeID(java.lang.Integer EmployeeID) { + this.EmployeeID = EmployeeID; + } + + @javax.persistence.Column(name = "DepartmentID", nullable = false, precision = 5) + public java.lang.Short getDepartmentID() { + return this.DepartmentID; + } + + public void setDepartmentID(java.lang.Short DepartmentID) { + this.DepartmentID = DepartmentID; + } + + @javax.persistence.Column(name = "ShiftID", nullable = false, precision = 3) + public java.lang.Byte getShiftID() { + return this.ShiftID; + } + + public void setShiftID(java.lang.Byte ShiftID) { + this.ShiftID = ShiftID; + } + + @javax.persistence.Column(name = "StartDate", nullable = false) + public java.sql.Timestamp getStartDate() { + return this.StartDate; + } + + public void setStartDate(java.sql.Timestamp StartDate) { + this.StartDate = StartDate; + } + + @javax.persistence.Column(name = "EndDate") + public java.sql.Timestamp getEndDate() { + return this.EndDate; + } + + public void setEndDate(java.sql.Timestamp EndDate) { + this.EndDate = EndDate; + } + + @javax.persistence.Column(name = "ModifiedDate", nullable = false) + public java.sql.Timestamp getModifiedDate() { + return this.ModifiedDate; + } + + public void setModifiedDate(java.sql.Timestamp ModifiedDate) { + this.ModifiedDate = ModifiedDate; + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/humanresources/tables/pojos/EmployeePayHistory.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/humanresources/tables/pojos/EmployeePayHistory.java new file mode 100644 index 00000000000..4127d22f1e6 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/humanresources/tables/pojos/EmployeePayHistory.java @@ -0,0 +1,67 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.humanresources.tables.pojos; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "EmployeePayHistory", schema = "HumanResources", uniqueConstraints = { + @javax.persistence.UniqueConstraint(columnNames = {"EmployeeID", "RateChangeDate"}) +}) +public class EmployeePayHistory implements java.io.Serializable { + + private static final long serialVersionUID = -385008108; + + private java.lang.Integer EmployeeID; + private java.sql.Timestamp RateChangeDate; + private java.math.BigDecimal Rate; + private java.lang.Byte PayFrequency; + private java.sql.Timestamp ModifiedDate; + + @javax.persistence.Column(name = "EmployeeID", nullable = false, precision = 10) + public java.lang.Integer getEmployeeID() { + return this.EmployeeID; + } + + public void setEmployeeID(java.lang.Integer EmployeeID) { + this.EmployeeID = EmployeeID; + } + + @javax.persistence.Column(name = "RateChangeDate", nullable = false) + public java.sql.Timestamp getRateChangeDate() { + return this.RateChangeDate; + } + + public void setRateChangeDate(java.sql.Timestamp RateChangeDate) { + this.RateChangeDate = RateChangeDate; + } + + @javax.persistence.Column(name = "Rate", nullable = false, precision = 19, scale = 4) + public java.math.BigDecimal getRate() { + return this.Rate; + } + + public void setRate(java.math.BigDecimal Rate) { + this.Rate = Rate; + } + + @javax.persistence.Column(name = "PayFrequency", nullable = false, precision = 3) + public java.lang.Byte getPayFrequency() { + return this.PayFrequency; + } + + public void setPayFrequency(java.lang.Byte PayFrequency) { + this.PayFrequency = PayFrequency; + } + + @javax.persistence.Column(name = "ModifiedDate", nullable = false) + public java.sql.Timestamp getModifiedDate() { + return this.ModifiedDate; + } + + public void setModifiedDate(java.sql.Timestamp ModifiedDate) { + this.ModifiedDate = ModifiedDate; + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/humanresources/tables/pojos/JobCandidate.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/humanresources/tables/pojos/JobCandidate.java new file mode 100644 index 00000000000..e48b28405c9 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/humanresources/tables/pojos/JobCandidate.java @@ -0,0 +1,56 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.humanresources.tables.pojos; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "JobCandidate", schema = "HumanResources") +public class JobCandidate implements java.io.Serializable { + + private static final long serialVersionUID = 273639540; + + private java.lang.Integer JobCandidateID; + private java.lang.Integer EmployeeID; + private java.lang.Object Resume; + private java.sql.Timestamp ModifiedDate; + + @javax.persistence.Id + @javax.persistence.Column(name = "JobCandidateID", unique = true, nullable = false, precision = 10) + public java.lang.Integer getJobCandidateID() { + return this.JobCandidateID; + } + + public void setJobCandidateID(java.lang.Integer JobCandidateID) { + this.JobCandidateID = JobCandidateID; + } + + @javax.persistence.Column(name = "EmployeeID", precision = 10) + public java.lang.Integer getEmployeeID() { + return this.EmployeeID; + } + + public void setEmployeeID(java.lang.Integer EmployeeID) { + this.EmployeeID = EmployeeID; + } + + @javax.persistence.Column(name = "Resume") + public java.lang.Object getResume() { + return this.Resume; + } + + public void setResume(java.lang.Object Resume) { + this.Resume = Resume; + } + + @javax.persistence.Column(name = "ModifiedDate", nullable = false) + public java.sql.Timestamp getModifiedDate() { + return this.ModifiedDate; + } + + public void setModifiedDate(java.sql.Timestamp ModifiedDate) { + this.ModifiedDate = ModifiedDate; + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/humanresources/tables/pojos/Shift.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/humanresources/tables/pojos/Shift.java new file mode 100644 index 00000000000..eb033dae777 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/humanresources/tables/pojos/Shift.java @@ -0,0 +1,66 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.humanresources.tables.pojos; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "Shift", schema = "HumanResources") +public class Shift implements java.io.Serializable { + + private static final long serialVersionUID = 579370660; + + private java.lang.Byte ShiftID; + private java.lang.String Name; + private java.sql.Timestamp StartTime; + private java.sql.Timestamp EndTime; + private java.sql.Timestamp ModifiedDate; + + @javax.persistence.Id + @javax.persistence.Column(name = "ShiftID", unique = true, nullable = false, precision = 3) + public java.lang.Byte getShiftID() { + return this.ShiftID; + } + + public void setShiftID(java.lang.Byte ShiftID) { + this.ShiftID = ShiftID; + } + + @javax.persistence.Column(name = "Name", nullable = false, length = 50) + public java.lang.String getName() { + return this.Name; + } + + public void setName(java.lang.String Name) { + this.Name = Name; + } + + @javax.persistence.Column(name = "StartTime", nullable = false) + public java.sql.Timestamp getStartTime() { + return this.StartTime; + } + + public void setStartTime(java.sql.Timestamp StartTime) { + this.StartTime = StartTime; + } + + @javax.persistence.Column(name = "EndTime", nullable = false) + public java.sql.Timestamp getEndTime() { + return this.EndTime; + } + + public void setEndTime(java.sql.Timestamp EndTime) { + this.EndTime = EndTime; + } + + @javax.persistence.Column(name = "ModifiedDate", nullable = false) + public java.sql.Timestamp getModifiedDate() { + return this.ModifiedDate; + } + + public void setModifiedDate(java.sql.Timestamp ModifiedDate) { + this.ModifiedDate = ModifiedDate; + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/humanresources/tables/pojos/vEmployee.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/humanresources/tables/pojos/vEmployee.java new file mode 100644 index 00000000000..da538888fcd --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/humanresources/tables/pojos/vEmployee.java @@ -0,0 +1,185 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.humanresources.tables.pojos; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "vEmployee", schema = "HumanResources") +public class vEmployee implements java.io.Serializable { + + private static final long serialVersionUID = -1048994626; + + private java.lang.Integer EmployeeID; + private java.lang.String Title; + private java.lang.String FirstName; + private java.lang.String MiddleName; + private java.lang.String LastName; + private java.lang.String Suffix; + private java.lang.String JobTitle; + private java.lang.String Phone; + private java.lang.String EmailAddress; + private java.lang.Integer EmailPromotion; + private java.lang.String AddressLine1; + private java.lang.String AddressLine2; + private java.lang.String City; + private java.lang.String StateProvinceName; + private java.lang.String PostalCode; + private java.lang.String CountryRegionName; + private java.lang.Object AdditionalContactInfo; + + @javax.persistence.Column(name = "EmployeeID", nullable = false, precision = 10) + public java.lang.Integer getEmployeeID() { + return this.EmployeeID; + } + + public void setEmployeeID(java.lang.Integer EmployeeID) { + this.EmployeeID = EmployeeID; + } + + @javax.persistence.Column(name = "Title", length = 8) + public java.lang.String getTitle() { + return this.Title; + } + + public void setTitle(java.lang.String Title) { + this.Title = Title; + } + + @javax.persistence.Column(name = "FirstName", nullable = false, length = 50) + public java.lang.String getFirstName() { + return this.FirstName; + } + + public void setFirstName(java.lang.String FirstName) { + this.FirstName = FirstName; + } + + @javax.persistence.Column(name = "MiddleName", length = 50) + public java.lang.String getMiddleName() { + return this.MiddleName; + } + + public void setMiddleName(java.lang.String MiddleName) { + this.MiddleName = MiddleName; + } + + @javax.persistence.Column(name = "LastName", nullable = false, length = 50) + public java.lang.String getLastName() { + return this.LastName; + } + + public void setLastName(java.lang.String LastName) { + this.LastName = LastName; + } + + @javax.persistence.Column(name = "Suffix", length = 10) + public java.lang.String getSuffix() { + return this.Suffix; + } + + public void setSuffix(java.lang.String Suffix) { + this.Suffix = Suffix; + } + + @javax.persistence.Column(name = "JobTitle", nullable = false, length = 50) + public java.lang.String getJobTitle() { + return this.JobTitle; + } + + public void setJobTitle(java.lang.String JobTitle) { + this.JobTitle = JobTitle; + } + + @javax.persistence.Column(name = "Phone", length = 25) + public java.lang.String getPhone() { + return this.Phone; + } + + public void setPhone(java.lang.String Phone) { + this.Phone = Phone; + } + + @javax.persistence.Column(name = "EmailAddress", length = 50) + public java.lang.String getEmailAddress() { + return this.EmailAddress; + } + + public void setEmailAddress(java.lang.String EmailAddress) { + this.EmailAddress = EmailAddress; + } + + @javax.persistence.Column(name = "EmailPromotion", nullable = false, precision = 10) + public java.lang.Integer getEmailPromotion() { + return this.EmailPromotion; + } + + public void setEmailPromotion(java.lang.Integer EmailPromotion) { + this.EmailPromotion = EmailPromotion; + } + + @javax.persistence.Column(name = "AddressLine1", nullable = false, length = 60) + public java.lang.String getAddressLine1() { + return this.AddressLine1; + } + + public void setAddressLine1(java.lang.String AddressLine1) { + this.AddressLine1 = AddressLine1; + } + + @javax.persistence.Column(name = "AddressLine2", length = 60) + public java.lang.String getAddressLine2() { + return this.AddressLine2; + } + + public void setAddressLine2(java.lang.String AddressLine2) { + this.AddressLine2 = AddressLine2; + } + + @javax.persistence.Column(name = "City", nullable = false, length = 30) + public java.lang.String getCity() { + return this.City; + } + + public void setCity(java.lang.String City) { + this.City = City; + } + + @javax.persistence.Column(name = "StateProvinceName", nullable = false, length = 50) + public java.lang.String getStateProvinceName() { + return this.StateProvinceName; + } + + public void setStateProvinceName(java.lang.String StateProvinceName) { + this.StateProvinceName = StateProvinceName; + } + + @javax.persistence.Column(name = "PostalCode", nullable = false, length = 15) + public java.lang.String getPostalCode() { + return this.PostalCode; + } + + public void setPostalCode(java.lang.String PostalCode) { + this.PostalCode = PostalCode; + } + + @javax.persistence.Column(name = "CountryRegionName", nullable = false, length = 50) + public java.lang.String getCountryRegionName() { + return this.CountryRegionName; + } + + public void setCountryRegionName(java.lang.String CountryRegionName) { + this.CountryRegionName = CountryRegionName; + } + + @javax.persistence.Column(name = "AdditionalContactInfo") + public java.lang.Object getAdditionalContactInfo() { + return this.AdditionalContactInfo; + } + + public void setAdditionalContactInfo(java.lang.Object AdditionalContactInfo) { + this.AdditionalContactInfo = AdditionalContactInfo; + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/humanresources/tables/pojos/vEmployeeDepartment.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/humanresources/tables/pojos/vEmployeeDepartment.java new file mode 100644 index 00000000000..d2af7c1a2aa --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/humanresources/tables/pojos/vEmployeeDepartment.java @@ -0,0 +1,115 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.humanresources.tables.pojos; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "vEmployeeDepartment", schema = "HumanResources") +public class vEmployeeDepartment implements java.io.Serializable { + + private static final long serialVersionUID = 659488298; + + private java.lang.Integer EmployeeID; + private java.lang.String Title; + private java.lang.String FirstName; + private java.lang.String MiddleName; + private java.lang.String LastName; + private java.lang.String Suffix; + private java.lang.String JobTitle; + private java.lang.String Department; + private java.lang.String GroupName; + private java.sql.Timestamp StartDate; + + @javax.persistence.Column(name = "EmployeeID", nullable = false, precision = 10) + public java.lang.Integer getEmployeeID() { + return this.EmployeeID; + } + + public void setEmployeeID(java.lang.Integer EmployeeID) { + this.EmployeeID = EmployeeID; + } + + @javax.persistence.Column(name = "Title", length = 8) + public java.lang.String getTitle() { + return this.Title; + } + + public void setTitle(java.lang.String Title) { + this.Title = Title; + } + + @javax.persistence.Column(name = "FirstName", nullable = false, length = 50) + public java.lang.String getFirstName() { + return this.FirstName; + } + + public void setFirstName(java.lang.String FirstName) { + this.FirstName = FirstName; + } + + @javax.persistence.Column(name = "MiddleName", length = 50) + public java.lang.String getMiddleName() { + return this.MiddleName; + } + + public void setMiddleName(java.lang.String MiddleName) { + this.MiddleName = MiddleName; + } + + @javax.persistence.Column(name = "LastName", nullable = false, length = 50) + public java.lang.String getLastName() { + return this.LastName; + } + + public void setLastName(java.lang.String LastName) { + this.LastName = LastName; + } + + @javax.persistence.Column(name = "Suffix", length = 10) + public java.lang.String getSuffix() { + return this.Suffix; + } + + public void setSuffix(java.lang.String Suffix) { + this.Suffix = Suffix; + } + + @javax.persistence.Column(name = "JobTitle", nullable = false, length = 50) + public java.lang.String getJobTitle() { + return this.JobTitle; + } + + public void setJobTitle(java.lang.String JobTitle) { + this.JobTitle = JobTitle; + } + + @javax.persistence.Column(name = "Department", nullable = false, length = 50) + public java.lang.String getDepartment() { + return this.Department; + } + + public void setDepartment(java.lang.String Department) { + this.Department = Department; + } + + @javax.persistence.Column(name = "GroupName", nullable = false, length = 50) + public java.lang.String getGroupName() { + return this.GroupName; + } + + public void setGroupName(java.lang.String GroupName) { + this.GroupName = GroupName; + } + + @javax.persistence.Column(name = "StartDate", nullable = false) + public java.sql.Timestamp getStartDate() { + return this.StartDate; + } + + public void setStartDate(java.sql.Timestamp StartDate) { + this.StartDate = StartDate; + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/humanresources/tables/pojos/vEmployeeDepartmentHistory.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/humanresources/tables/pojos/vEmployeeDepartmentHistory.java new file mode 100644 index 00000000000..0ec6afed3d1 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/humanresources/tables/pojos/vEmployeeDepartmentHistory.java @@ -0,0 +1,125 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.humanresources.tables.pojos; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "vEmployeeDepartmentHistory", schema = "HumanResources") +public class vEmployeeDepartmentHistory implements java.io.Serializable { + + private static final long serialVersionUID = -486436159; + + private java.lang.Integer EmployeeID; + private java.lang.String Title; + private java.lang.String FirstName; + private java.lang.String MiddleName; + private java.lang.String LastName; + private java.lang.String Suffix; + private java.lang.String Shift; + private java.lang.String Department; + private java.lang.String GroupName; + private java.sql.Timestamp StartDate; + private java.sql.Timestamp EndDate; + + @javax.persistence.Column(name = "EmployeeID", nullable = false, precision = 10) + public java.lang.Integer getEmployeeID() { + return this.EmployeeID; + } + + public void setEmployeeID(java.lang.Integer EmployeeID) { + this.EmployeeID = EmployeeID; + } + + @javax.persistence.Column(name = "Title", length = 8) + public java.lang.String getTitle() { + return this.Title; + } + + public void setTitle(java.lang.String Title) { + this.Title = Title; + } + + @javax.persistence.Column(name = "FirstName", nullable = false, length = 50) + public java.lang.String getFirstName() { + return this.FirstName; + } + + public void setFirstName(java.lang.String FirstName) { + this.FirstName = FirstName; + } + + @javax.persistence.Column(name = "MiddleName", length = 50) + public java.lang.String getMiddleName() { + return this.MiddleName; + } + + public void setMiddleName(java.lang.String MiddleName) { + this.MiddleName = MiddleName; + } + + @javax.persistence.Column(name = "LastName", nullable = false, length = 50) + public java.lang.String getLastName() { + return this.LastName; + } + + public void setLastName(java.lang.String LastName) { + this.LastName = LastName; + } + + @javax.persistence.Column(name = "Suffix", length = 10) + public java.lang.String getSuffix() { + return this.Suffix; + } + + public void setSuffix(java.lang.String Suffix) { + this.Suffix = Suffix; + } + + @javax.persistence.Column(name = "Shift", nullable = false, length = 50) + public java.lang.String getShift() { + return this.Shift; + } + + public void setShift(java.lang.String Shift) { + this.Shift = Shift; + } + + @javax.persistence.Column(name = "Department", nullable = false, length = 50) + public java.lang.String getDepartment() { + return this.Department; + } + + public void setDepartment(java.lang.String Department) { + this.Department = Department; + } + + @javax.persistence.Column(name = "GroupName", nullable = false, length = 50) + public java.lang.String getGroupName() { + return this.GroupName; + } + + public void setGroupName(java.lang.String GroupName) { + this.GroupName = GroupName; + } + + @javax.persistence.Column(name = "StartDate", nullable = false) + public java.sql.Timestamp getStartDate() { + return this.StartDate; + } + + public void setStartDate(java.sql.Timestamp StartDate) { + this.StartDate = StartDate; + } + + @javax.persistence.Column(name = "EndDate") + public java.sql.Timestamp getEndDate() { + return this.EndDate; + } + + public void setEndDate(java.sql.Timestamp EndDate) { + this.EndDate = EndDate; + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/humanresources/tables/pojos/vJobCandidate.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/humanresources/tables/pojos/vJobCandidate.java new file mode 100644 index 00000000000..309616d88dd --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/humanresources/tables/pojos/vJobCandidate.java @@ -0,0 +1,175 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.humanresources.tables.pojos; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "vJobCandidate", schema = "HumanResources") +public class vJobCandidate implements java.io.Serializable { + + private static final long serialVersionUID = 1307250023; + + private java.lang.Integer JobCandidateID; + private java.lang.Integer EmployeeID; + private java.lang.String Name_Prefix; + private java.lang.String Name_First; + private java.lang.String Name_Middle; + private java.lang.String Name_Last; + private java.lang.String Name_Suffix; + private java.lang.String Skills; + private java.lang.String Addr_Type; + private java.lang.String Addr_Loc_CountryRegion; + private java.lang.String Addr_Loc_State; + private java.lang.String Addr_Loc_City; + private java.lang.String Addr_PostalCode; + private java.lang.String EMail; + private java.lang.String WebSite; + private java.sql.Timestamp ModifiedDate; + + @javax.persistence.Column(name = "JobCandidateID", nullable = false, precision = 10) + public java.lang.Integer getJobCandidateID() { + return this.JobCandidateID; + } + + public void setJobCandidateID(java.lang.Integer JobCandidateID) { + this.JobCandidateID = JobCandidateID; + } + + @javax.persistence.Column(name = "EmployeeID", precision = 10) + public java.lang.Integer getEmployeeID() { + return this.EmployeeID; + } + + public void setEmployeeID(java.lang.Integer EmployeeID) { + this.EmployeeID = EmployeeID; + } + + @javax.persistence.Column(name = "Name.Prefix", length = 30) + public java.lang.String getName_Prefix() { + return this.Name_Prefix; + } + + public void setName_Prefix(java.lang.String Name_Prefix) { + this.Name_Prefix = Name_Prefix; + } + + @javax.persistence.Column(name = "Name.First", length = 30) + public java.lang.String getName_First() { + return this.Name_First; + } + + public void setName_First(java.lang.String Name_First) { + this.Name_First = Name_First; + } + + @javax.persistence.Column(name = "Name.Middle", length = 30) + public java.lang.String getName_Middle() { + return this.Name_Middle; + } + + public void setName_Middle(java.lang.String Name_Middle) { + this.Name_Middle = Name_Middle; + } + + @javax.persistence.Column(name = "Name.Last", length = 30) + public java.lang.String getName_Last() { + return this.Name_Last; + } + + public void setName_Last(java.lang.String Name_Last) { + this.Name_Last = Name_Last; + } + + @javax.persistence.Column(name = "Name.Suffix", length = 30) + public java.lang.String getName_Suffix() { + return this.Name_Suffix; + } + + public void setName_Suffix(java.lang.String Name_Suffix) { + this.Name_Suffix = Name_Suffix; + } + + @javax.persistence.Column(name = "Skills") + public java.lang.String getSkills() { + return this.Skills; + } + + public void setSkills(java.lang.String Skills) { + this.Skills = Skills; + } + + @javax.persistence.Column(name = "Addr.Type", length = 30) + public java.lang.String getAddr_Type() { + return this.Addr_Type; + } + + public void setAddr_Type(java.lang.String Addr_Type) { + this.Addr_Type = Addr_Type; + } + + @javax.persistence.Column(name = "Addr.Loc.CountryRegion", length = 100) + public java.lang.String getAddr_Loc_CountryRegion() { + return this.Addr_Loc_CountryRegion; + } + + public void setAddr_Loc_CountryRegion(java.lang.String Addr_Loc_CountryRegion) { + this.Addr_Loc_CountryRegion = Addr_Loc_CountryRegion; + } + + @javax.persistence.Column(name = "Addr.Loc.State", length = 100) + public java.lang.String getAddr_Loc_State() { + return this.Addr_Loc_State; + } + + public void setAddr_Loc_State(java.lang.String Addr_Loc_State) { + this.Addr_Loc_State = Addr_Loc_State; + } + + @javax.persistence.Column(name = "Addr.Loc.City", length = 100) + public java.lang.String getAddr_Loc_City() { + return this.Addr_Loc_City; + } + + public void setAddr_Loc_City(java.lang.String Addr_Loc_City) { + this.Addr_Loc_City = Addr_Loc_City; + } + + @javax.persistence.Column(name = "Addr.PostalCode", length = 20) + public java.lang.String getAddr_PostalCode() { + return this.Addr_PostalCode; + } + + public void setAddr_PostalCode(java.lang.String Addr_PostalCode) { + this.Addr_PostalCode = Addr_PostalCode; + } + + @javax.persistence.Column(name = "EMail") + public java.lang.String getEMail() { + return this.EMail; + } + + public void setEMail(java.lang.String EMail) { + this.EMail = EMail; + } + + @javax.persistence.Column(name = "WebSite") + public java.lang.String getWebSite() { + return this.WebSite; + } + + public void setWebSite(java.lang.String WebSite) { + this.WebSite = WebSite; + } + + @javax.persistence.Column(name = "ModifiedDate", nullable = false) + public java.sql.Timestamp getModifiedDate() { + return this.ModifiedDate; + } + + public void setModifiedDate(java.sql.Timestamp ModifiedDate) { + this.ModifiedDate = ModifiedDate; + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/humanresources/tables/pojos/vJobCandidateEducation.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/humanresources/tables/pojos/vJobCandidateEducation.java new file mode 100644 index 00000000000..b6dcb051925 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/humanresources/tables/pojos/vJobCandidateEducation.java @@ -0,0 +1,145 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.humanresources.tables.pojos; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "vJobCandidateEducation", schema = "HumanResources") +public class vJobCandidateEducation implements java.io.Serializable { + + private static final long serialVersionUID = 54483795; + + private java.lang.Integer JobCandidateID; + private java.lang.String Edu_Level; + private java.sql.Timestamp Edu_StartDate; + private java.sql.Timestamp Edu_EndDate; + private java.lang.String Edu_Degree; + private java.lang.String Edu_Major; + private java.lang.String Edu_Minor; + private java.lang.String Edu_GPA; + private java.lang.String Edu_GPAScale; + private java.lang.String Edu_School; + private java.lang.String Edu_Loc_CountryRegion; + private java.lang.String Edu_Loc_State; + private java.lang.String Edu_Loc_City; + + @javax.persistence.Column(name = "JobCandidateID", nullable = false, precision = 10) + public java.lang.Integer getJobCandidateID() { + return this.JobCandidateID; + } + + public void setJobCandidateID(java.lang.Integer JobCandidateID) { + this.JobCandidateID = JobCandidateID; + } + + @javax.persistence.Column(name = "Edu.Level") + public java.lang.String getEdu_Level() { + return this.Edu_Level; + } + + public void setEdu_Level(java.lang.String Edu_Level) { + this.Edu_Level = Edu_Level; + } + + @javax.persistence.Column(name = "Edu.StartDate") + public java.sql.Timestamp getEdu_StartDate() { + return this.Edu_StartDate; + } + + public void setEdu_StartDate(java.sql.Timestamp Edu_StartDate) { + this.Edu_StartDate = Edu_StartDate; + } + + @javax.persistence.Column(name = "Edu.EndDate") + public java.sql.Timestamp getEdu_EndDate() { + return this.Edu_EndDate; + } + + public void setEdu_EndDate(java.sql.Timestamp Edu_EndDate) { + this.Edu_EndDate = Edu_EndDate; + } + + @javax.persistence.Column(name = "Edu.Degree", length = 50) + public java.lang.String getEdu_Degree() { + return this.Edu_Degree; + } + + public void setEdu_Degree(java.lang.String Edu_Degree) { + this.Edu_Degree = Edu_Degree; + } + + @javax.persistence.Column(name = "Edu.Major", length = 50) + public java.lang.String getEdu_Major() { + return this.Edu_Major; + } + + public void setEdu_Major(java.lang.String Edu_Major) { + this.Edu_Major = Edu_Major; + } + + @javax.persistence.Column(name = "Edu.Minor", length = 50) + public java.lang.String getEdu_Minor() { + return this.Edu_Minor; + } + + public void setEdu_Minor(java.lang.String Edu_Minor) { + this.Edu_Minor = Edu_Minor; + } + + @javax.persistence.Column(name = "Edu.GPA", length = 5) + public java.lang.String getEdu_GPA() { + return this.Edu_GPA; + } + + public void setEdu_GPA(java.lang.String Edu_GPA) { + this.Edu_GPA = Edu_GPA; + } + + @javax.persistence.Column(name = "Edu.GPAScale", length = 5) + public java.lang.String getEdu_GPAScale() { + return this.Edu_GPAScale; + } + + public void setEdu_GPAScale(java.lang.String Edu_GPAScale) { + this.Edu_GPAScale = Edu_GPAScale; + } + + @javax.persistence.Column(name = "Edu.School", length = 100) + public java.lang.String getEdu_School() { + return this.Edu_School; + } + + public void setEdu_School(java.lang.String Edu_School) { + this.Edu_School = Edu_School; + } + + @javax.persistence.Column(name = "Edu.Loc.CountryRegion", length = 100) + public java.lang.String getEdu_Loc_CountryRegion() { + return this.Edu_Loc_CountryRegion; + } + + public void setEdu_Loc_CountryRegion(java.lang.String Edu_Loc_CountryRegion) { + this.Edu_Loc_CountryRegion = Edu_Loc_CountryRegion; + } + + @javax.persistence.Column(name = "Edu.Loc.State", length = 100) + public java.lang.String getEdu_Loc_State() { + return this.Edu_Loc_State; + } + + public void setEdu_Loc_State(java.lang.String Edu_Loc_State) { + this.Edu_Loc_State = Edu_Loc_State; + } + + @javax.persistence.Column(name = "Edu.Loc.City", length = 100) + public java.lang.String getEdu_Loc_City() { + return this.Edu_Loc_City; + } + + public void setEdu_Loc_City(java.lang.String Edu_Loc_City) { + this.Edu_Loc_City = Edu_Loc_City; + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/humanresources/tables/pojos/vJobCandidateEmployment.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/humanresources/tables/pojos/vJobCandidateEmployment.java new file mode 100644 index 00000000000..6a68734ca93 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/humanresources/tables/pojos/vJobCandidateEmployment.java @@ -0,0 +1,125 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.humanresources.tables.pojos; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "vJobCandidateEmployment", schema = "HumanResources") +public class vJobCandidateEmployment implements java.io.Serializable { + + private static final long serialVersionUID = 1612702651; + + private java.lang.Integer JobCandidateID; + private java.sql.Timestamp Emp_StartDate; + private java.sql.Timestamp Emp_EndDate; + private java.lang.String Emp_OrgName; + private java.lang.String Emp_JobTitle; + private java.lang.String Emp_Responsibility; + private java.lang.String Emp_FunctionCategory; + private java.lang.String Emp_IndustryCategory; + private java.lang.String Emp_Loc_CountryRegion; + private java.lang.String Emp_Loc_State; + private java.lang.String Emp_Loc_City; + + @javax.persistence.Column(name = "JobCandidateID", nullable = false, precision = 10) + public java.lang.Integer getJobCandidateID() { + return this.JobCandidateID; + } + + public void setJobCandidateID(java.lang.Integer JobCandidateID) { + this.JobCandidateID = JobCandidateID; + } + + @javax.persistence.Column(name = "Emp.StartDate") + public java.sql.Timestamp getEmp_StartDate() { + return this.Emp_StartDate; + } + + public void setEmp_StartDate(java.sql.Timestamp Emp_StartDate) { + this.Emp_StartDate = Emp_StartDate; + } + + @javax.persistence.Column(name = "Emp.EndDate") + public java.sql.Timestamp getEmp_EndDate() { + return this.Emp_EndDate; + } + + public void setEmp_EndDate(java.sql.Timestamp Emp_EndDate) { + this.Emp_EndDate = Emp_EndDate; + } + + @javax.persistence.Column(name = "Emp.OrgName", length = 100) + public java.lang.String getEmp_OrgName() { + return this.Emp_OrgName; + } + + public void setEmp_OrgName(java.lang.String Emp_OrgName) { + this.Emp_OrgName = Emp_OrgName; + } + + @javax.persistence.Column(name = "Emp.JobTitle", length = 100) + public java.lang.String getEmp_JobTitle() { + return this.Emp_JobTitle; + } + + public void setEmp_JobTitle(java.lang.String Emp_JobTitle) { + this.Emp_JobTitle = Emp_JobTitle; + } + + @javax.persistence.Column(name = "Emp.Responsibility") + public java.lang.String getEmp_Responsibility() { + return this.Emp_Responsibility; + } + + public void setEmp_Responsibility(java.lang.String Emp_Responsibility) { + this.Emp_Responsibility = Emp_Responsibility; + } + + @javax.persistence.Column(name = "Emp.FunctionCategory") + public java.lang.String getEmp_FunctionCategory() { + return this.Emp_FunctionCategory; + } + + public void setEmp_FunctionCategory(java.lang.String Emp_FunctionCategory) { + this.Emp_FunctionCategory = Emp_FunctionCategory; + } + + @javax.persistence.Column(name = "Emp.IndustryCategory") + public java.lang.String getEmp_IndustryCategory() { + return this.Emp_IndustryCategory; + } + + public void setEmp_IndustryCategory(java.lang.String Emp_IndustryCategory) { + this.Emp_IndustryCategory = Emp_IndustryCategory; + } + + @javax.persistence.Column(name = "Emp.Loc.CountryRegion") + public java.lang.String getEmp_Loc_CountryRegion() { + return this.Emp_Loc_CountryRegion; + } + + public void setEmp_Loc_CountryRegion(java.lang.String Emp_Loc_CountryRegion) { + this.Emp_Loc_CountryRegion = Emp_Loc_CountryRegion; + } + + @javax.persistence.Column(name = "Emp.Loc.State") + public java.lang.String getEmp_Loc_State() { + return this.Emp_Loc_State; + } + + public void setEmp_Loc_State(java.lang.String Emp_Loc_State) { + this.Emp_Loc_State = Emp_Loc_State; + } + + @javax.persistence.Column(name = "Emp.Loc.City") + public java.lang.String getEmp_Loc_City() { + return this.Emp_Loc_City; + } + + public void setEmp_Loc_City(java.lang.String Emp_Loc_City) { + this.Emp_Loc_City = Emp_Loc_City; + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/humanresources/tables/records/Department.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/humanresources/tables/records/Department.java new file mode 100644 index 00000000000..a8c960d2891 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/humanresources/tables/records/Department.java @@ -0,0 +1,86 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.humanresources.tables.records; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "Department", schema = "HumanResources") +public class Department extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = 1653650932; + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setDepartmentID(java.lang.Short value) { + setValue(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.Department.Department.DepartmentID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + @javax.persistence.Id + @javax.persistence.Column(name = "DepartmentID", unique = true, nullable = false, precision = 5) + public java.lang.Short getDepartmentID() { + return getValue(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.Department.Department.DepartmentID); + } + + /** + * An uncommented item + */ + public void setName(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.Department.Department.Name, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "Name", nullable = false, length = 50) + public java.lang.String getName() { + return getValue(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.Department.Department.Name); + } + + /** + * An uncommented item + */ + public void setGroupName(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.Department.Department.GroupName, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "GroupName", nullable = false, length = 50) + public java.lang.String getGroupName() { + return getValue(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.Department.Department.GroupName); + } + + /** + * An uncommented item + */ + public void setModifiedDate(java.sql.Timestamp value) { + setValue(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.Department.Department.ModifiedDate, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "ModifiedDate", nullable = false) + public java.sql.Timestamp getModifiedDate() { + return getValue(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.Department.Department.ModifiedDate); + } + + /** + * Create a detached Department + */ + public Department() { + super(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.Department.Department); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/humanresources/tables/records/Employee.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/humanresources/tables/records/Employee.java new file mode 100644 index 00000000000..b942375e84f --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/humanresources/tables/records/Employee.java @@ -0,0 +1,290 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.humanresources.tables.records; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "Employee", schema = "HumanResources") +public class Employee extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = 1919166517; + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setEmployeeID(java.lang.Integer value) { + setValue(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.Employee.Employee.EmployeeID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + @javax.persistence.Id + @javax.persistence.Column(name = "EmployeeID", unique = true, nullable = false, precision = 10) + public java.lang.Integer getEmployeeID() { + return getValue(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.Employee.Employee.EmployeeID); + } + + /** + * An uncommented item + */ + public void setNationalIDNumber(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.Employee.Employee.NationalIDNumber, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "NationalIDNumber", nullable = false, length = 15) + public java.lang.String getNationalIDNumber() { + return getValue(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.Employee.Employee.NationalIDNumber); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_Employee_Contact_ContactID
+	 * FOREIGN KEY (ContactID)
+	 * REFERENCES Person.Contact (ContactID)
+	 * 
+ */ + public void setContactID(java.lang.Integer value) { + setValue(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.Employee.Employee.ContactID, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_Employee_Contact_ContactID
+	 * FOREIGN KEY (ContactID)
+	 * REFERENCES Person.Contact (ContactID)
+	 * 
+ */ + @javax.persistence.Column(name = "ContactID", nullable = false, precision = 10) + public java.lang.Integer getContactID() { + return getValue(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.Employee.Employee.ContactID); + } + + /** + * An uncommented item + */ + public void setLoginID(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.Employee.Employee.LoginID, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "LoginID", nullable = false, length = 256) + public java.lang.String getLoginID() { + return getValue(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.Employee.Employee.LoginID); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_Employee_Employee_ManagerID
+	 * FOREIGN KEY (ManagerID)
+	 * REFERENCES HumanResources.Employee (EmployeeID)
+	 * 
+ */ + public void setManagerID(java.lang.Integer value) { + setValue(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.Employee.Employee.ManagerID, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_Employee_Employee_ManagerID
+	 * FOREIGN KEY (ManagerID)
+	 * REFERENCES HumanResources.Employee (EmployeeID)
+	 * 
+ */ + @javax.persistence.Column(name = "ManagerID", precision = 10) + public java.lang.Integer getManagerID() { + return getValue(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.Employee.Employee.ManagerID); + } + + /** + * An uncommented item + */ + public void setTitle(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.Employee.Employee.Title, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "Title", nullable = false, length = 50) + public java.lang.String getTitle() { + return getValue(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.Employee.Employee.Title); + } + + /** + * An uncommented item + */ + public void setBirthDate(java.sql.Timestamp value) { + setValue(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.Employee.Employee.BirthDate, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "BirthDate", nullable = false) + public java.sql.Timestamp getBirthDate() { + return getValue(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.Employee.Employee.BirthDate); + } + + /** + * An uncommented item + */ + public void setMaritalStatus(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.Employee.Employee.MaritalStatus, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "MaritalStatus", nullable = false, length = 1) + public java.lang.String getMaritalStatus() { + return getValue(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.Employee.Employee.MaritalStatus); + } + + /** + * An uncommented item + */ + public void setGender(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.Employee.Employee.Gender, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "Gender", nullable = false, length = 1) + public java.lang.String getGender() { + return getValue(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.Employee.Employee.Gender); + } + + /** + * An uncommented item + */ + public void setHireDate(java.sql.Timestamp value) { + setValue(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.Employee.Employee.HireDate, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "HireDate", nullable = false) + public java.sql.Timestamp getHireDate() { + return getValue(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.Employee.Employee.HireDate); + } + + /** + * An uncommented item + */ + public void setSalariedFlag(java.lang.Boolean value) { + setValue(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.Employee.Employee.SalariedFlag, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "SalariedFlag", nullable = false) + public java.lang.Boolean getSalariedFlag() { + return getValue(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.Employee.Employee.SalariedFlag); + } + + /** + * An uncommented item + */ + public void setVacationHours(java.lang.Short value) { + setValue(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.Employee.Employee.VacationHours, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "VacationHours", nullable = false, precision = 5) + public java.lang.Short getVacationHours() { + return getValue(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.Employee.Employee.VacationHours); + } + + /** + * An uncommented item + */ + public void setSickLeaveHours(java.lang.Short value) { + setValue(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.Employee.Employee.SickLeaveHours, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "SickLeaveHours", nullable = false, precision = 5) + public java.lang.Short getSickLeaveHours() { + return getValue(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.Employee.Employee.SickLeaveHours); + } + + /** + * An uncommented item + */ + public void setCurrentFlag(java.lang.Boolean value) { + setValue(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.Employee.Employee.CurrentFlag, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "CurrentFlag", nullable = false) + public java.lang.Boolean getCurrentFlag() { + return getValue(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.Employee.Employee.CurrentFlag); + } + + /** + * An uncommented item + */ + public void setrowguid(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.Employee.Employee.rowguid, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "rowguid", nullable = false) + public java.lang.String getrowguid() { + return getValue(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.Employee.Employee.rowguid); + } + + /** + * An uncommented item + */ + public void setModifiedDate(java.sql.Timestamp value) { + setValue(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.Employee.Employee.ModifiedDate, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "ModifiedDate", nullable = false) + public java.sql.Timestamp getModifiedDate() { + return getValue(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.Employee.Employee.ModifiedDate); + } + + /** + * Create a detached Employee + */ + public Employee() { + super(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.Employee.Employee); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/humanresources/tables/records/EmployeeAddress.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/humanresources/tables/records/EmployeeAddress.java new file mode 100644 index 00000000000..559a0109a46 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/humanresources/tables/records/EmployeeAddress.java @@ -0,0 +1,115 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.humanresources.tables.records; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "EmployeeAddress", schema = "HumanResources", uniqueConstraints = { + @javax.persistence.UniqueConstraint(columnNames = {"EmployeeID", "AddressID"}) +}) +public class EmployeeAddress extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = 548416934; + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT FK_EmployeeAddress_Employee_EmployeeID
+	 * FOREIGN KEY (EmployeeID)
+	 * REFERENCES HumanResources.Employee (EmployeeID)
+	 * 
+ */ + public void setEmployeeID(java.lang.Integer value) { + setValue(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.EmployeeAddress.EmployeeAddress.EmployeeID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT FK_EmployeeAddress_Employee_EmployeeID
+	 * FOREIGN KEY (EmployeeID)
+	 * REFERENCES HumanResources.Employee (EmployeeID)
+	 * 
+ */ + @javax.persistence.Column(name = "EmployeeID", nullable = false, precision = 10) + public java.lang.Integer getEmployeeID() { + return getValue(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.EmployeeAddress.EmployeeAddress.EmployeeID); + } + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT FK_EmployeeAddress_Address_AddressID
+	 * FOREIGN KEY (AddressID)
+	 * REFERENCES Person.Address (AddressID)
+	 * 
+ */ + public void setAddressID(java.lang.Integer value) { + setValue(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.EmployeeAddress.EmployeeAddress.AddressID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT FK_EmployeeAddress_Address_AddressID
+	 * FOREIGN KEY (AddressID)
+	 * REFERENCES Person.Address (AddressID)
+	 * 
+ */ + @javax.persistence.Column(name = "AddressID", nullable = false, precision = 10) + public java.lang.Integer getAddressID() { + return getValue(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.EmployeeAddress.EmployeeAddress.AddressID); + } + + /** + * An uncommented item + */ + public void setrowguid(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.EmployeeAddress.EmployeeAddress.rowguid, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "rowguid", nullable = false) + public java.lang.String getrowguid() { + return getValue(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.EmployeeAddress.EmployeeAddress.rowguid); + } + + /** + * An uncommented item + */ + public void setModifiedDate(java.sql.Timestamp value) { + setValue(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.EmployeeAddress.EmployeeAddress.ModifiedDate, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "ModifiedDate", nullable = false) + public java.sql.Timestamp getModifiedDate() { + return getValue(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.EmployeeAddress.EmployeeAddress.ModifiedDate); + } + + /** + * Create a detached EmployeeAddress + */ + public EmployeeAddress() { + super(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.EmployeeAddress.EmployeeAddress); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/humanresources/tables/records/EmployeeDepartmentHistory.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/humanresources/tables/records/EmployeeDepartmentHistory.java new file mode 100644 index 00000000000..fb8abf53a62 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/humanresources/tables/records/EmployeeDepartmentHistory.java @@ -0,0 +1,165 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.humanresources.tables.records; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "EmployeeDepartmentHistory", schema = "HumanResources", uniqueConstraints = { + @javax.persistence.UniqueConstraint(columnNames = {"EmployeeID", "StartDate", "DepartmentID", "ShiftID"}) +}) +public class EmployeeDepartmentHistory extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = -620207493; + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT FK_EmployeeDepartmentHistory_Employee_EmployeeID
+	 * FOREIGN KEY (EmployeeID)
+	 * REFERENCES HumanResources.Employee (EmployeeID)
+	 * 
+ */ + public void setEmployeeID(java.lang.Integer value) { + setValue(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.EmployeeDepartmentHistory.EmployeeDepartmentHistory.EmployeeID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT FK_EmployeeDepartmentHistory_Employee_EmployeeID
+	 * FOREIGN KEY (EmployeeID)
+	 * REFERENCES HumanResources.Employee (EmployeeID)
+	 * 
+ */ + @javax.persistence.Column(name = "EmployeeID", nullable = false, precision = 10) + public java.lang.Integer getEmployeeID() { + return getValue(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.EmployeeDepartmentHistory.EmployeeDepartmentHistory.EmployeeID); + } + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT FK_EmployeeDepartmentHistory_Department_DepartmentID
+	 * FOREIGN KEY (DepartmentID)
+	 * REFERENCES HumanResources.Department (DepartmentID)
+	 * 
+ */ + public void setDepartmentID(java.lang.Short value) { + setValue(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.EmployeeDepartmentHistory.EmployeeDepartmentHistory.DepartmentID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT FK_EmployeeDepartmentHistory_Department_DepartmentID
+	 * FOREIGN KEY (DepartmentID)
+	 * REFERENCES HumanResources.Department (DepartmentID)
+	 * 
+ */ + @javax.persistence.Column(name = "DepartmentID", nullable = false, precision = 5) + public java.lang.Short getDepartmentID() { + return getValue(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.EmployeeDepartmentHistory.EmployeeDepartmentHistory.DepartmentID); + } + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT FK_EmployeeDepartmentHistory_Shift_ShiftID
+	 * FOREIGN KEY (ShiftID)
+	 * REFERENCES HumanResources.Shift (ShiftID)
+	 * 
+ */ + public void setShiftID(java.lang.Byte value) { + setValue(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.EmployeeDepartmentHistory.EmployeeDepartmentHistory.ShiftID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT FK_EmployeeDepartmentHistory_Shift_ShiftID
+	 * FOREIGN KEY (ShiftID)
+	 * REFERENCES HumanResources.Shift (ShiftID)
+	 * 
+ */ + @javax.persistence.Column(name = "ShiftID", nullable = false, precision = 3) + public java.lang.Byte getShiftID() { + return getValue(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.EmployeeDepartmentHistory.EmployeeDepartmentHistory.ShiftID); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setStartDate(java.sql.Timestamp value) { + setValue(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.EmployeeDepartmentHistory.EmployeeDepartmentHistory.StartDate, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + @javax.persistence.Column(name = "StartDate", nullable = false) + public java.sql.Timestamp getStartDate() { + return getValue(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.EmployeeDepartmentHistory.EmployeeDepartmentHistory.StartDate); + } + + /** + * An uncommented item + */ + public void setEndDate(java.sql.Timestamp value) { + setValue(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.EmployeeDepartmentHistory.EmployeeDepartmentHistory.EndDate, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "EndDate") + public java.sql.Timestamp getEndDate() { + return getValue(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.EmployeeDepartmentHistory.EmployeeDepartmentHistory.EndDate); + } + + /** + * An uncommented item + */ + public void setModifiedDate(java.sql.Timestamp value) { + setValue(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.EmployeeDepartmentHistory.EmployeeDepartmentHistory.ModifiedDate, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "ModifiedDate", nullable = false) + public java.sql.Timestamp getModifiedDate() { + return getValue(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.EmployeeDepartmentHistory.EmployeeDepartmentHistory.ModifiedDate); + } + + /** + * Create a detached EmployeeDepartmentHistory + */ + public EmployeeDepartmentHistory() { + super(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.EmployeeDepartmentHistory.EmployeeDepartmentHistory); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/humanresources/tables/records/EmployeePayHistory.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/humanresources/tables/records/EmployeePayHistory.java new file mode 100644 index 00000000000..9f6c4229375 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/humanresources/tables/records/EmployeePayHistory.java @@ -0,0 +1,118 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.humanresources.tables.records; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "EmployeePayHistory", schema = "HumanResources", uniqueConstraints = { + @javax.persistence.UniqueConstraint(columnNames = {"EmployeeID", "RateChangeDate"}) +}) +public class EmployeePayHistory extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = 1550485133; + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT FK_EmployeePayHistory_Employee_EmployeeID
+	 * FOREIGN KEY (EmployeeID)
+	 * REFERENCES HumanResources.Employee (EmployeeID)
+	 * 
+ */ + public void setEmployeeID(java.lang.Integer value) { + setValue(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.EmployeePayHistory.EmployeePayHistory.EmployeeID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT FK_EmployeePayHistory_Employee_EmployeeID
+	 * FOREIGN KEY (EmployeeID)
+	 * REFERENCES HumanResources.Employee (EmployeeID)
+	 * 
+ */ + @javax.persistence.Column(name = "EmployeeID", nullable = false, precision = 10) + public java.lang.Integer getEmployeeID() { + return getValue(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.EmployeePayHistory.EmployeePayHistory.EmployeeID); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setRateChangeDate(java.sql.Timestamp value) { + setValue(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.EmployeePayHistory.EmployeePayHistory.RateChangeDate, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + @javax.persistence.Column(name = "RateChangeDate", nullable = false) + public java.sql.Timestamp getRateChangeDate() { + return getValue(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.EmployeePayHistory.EmployeePayHistory.RateChangeDate); + } + + /** + * An uncommented item + */ + public void setRate(java.math.BigDecimal value) { + setValue(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.EmployeePayHistory.EmployeePayHistory.Rate, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "Rate", nullable = false, precision = 19, scale = 4) + public java.math.BigDecimal getRate() { + return getValue(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.EmployeePayHistory.EmployeePayHistory.Rate); + } + + /** + * An uncommented item + */ + public void setPayFrequency(java.lang.Byte value) { + setValue(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.EmployeePayHistory.EmployeePayHistory.PayFrequency, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "PayFrequency", nullable = false, precision = 3) + public java.lang.Byte getPayFrequency() { + return getValue(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.EmployeePayHistory.EmployeePayHistory.PayFrequency); + } + + /** + * An uncommented item + */ + public void setModifiedDate(java.sql.Timestamp value) { + setValue(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.EmployeePayHistory.EmployeePayHistory.ModifiedDate, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "ModifiedDate", nullable = false) + public java.sql.Timestamp getModifiedDate() { + return getValue(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.EmployeePayHistory.EmployeePayHistory.ModifiedDate); + } + + /** + * Create a detached EmployeePayHistory + */ + public EmployeePayHistory() { + super(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.EmployeePayHistory.EmployeePayHistory); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/humanresources/tables/records/JobCandidate.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/humanresources/tables/records/JobCandidate.java new file mode 100644 index 00000000000..924201deb64 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/humanresources/tables/records/JobCandidate.java @@ -0,0 +1,104 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.humanresources.tables.records; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "JobCandidate", schema = "HumanResources") +public class JobCandidate extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = 1279573507; + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setJobCandidateID(java.lang.Integer value) { + setValue(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.JobCandidate.JobCandidate.JobCandidateID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + @javax.persistence.Id + @javax.persistence.Column(name = "JobCandidateID", unique = true, nullable = false, precision = 10) + public java.lang.Integer getJobCandidateID() { + return getValue(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.JobCandidate.JobCandidate.JobCandidateID); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_JobCandidate_Employee_EmployeeID
+	 * FOREIGN KEY (EmployeeID)
+	 * REFERENCES HumanResources.Employee (EmployeeID)
+	 * 
+ */ + public void setEmployeeID(java.lang.Integer value) { + setValue(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.JobCandidate.JobCandidate.EmployeeID, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_JobCandidate_Employee_EmployeeID
+	 * FOREIGN KEY (EmployeeID)
+	 * REFERENCES HumanResources.Employee (EmployeeID)
+	 * 
+ */ + @javax.persistence.Column(name = "EmployeeID", precision = 10) + public java.lang.Integer getEmployeeID() { + return getValue(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.JobCandidate.JobCandidate.EmployeeID); + } + + /** + * An uncommented item + * + * The SQL type of this item (xml, ) could not be mapped.
+ * Deserialising this field might not work! + */ + public void setResume(java.lang.Object value) { + setValue(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.JobCandidate.JobCandidate.Resume, value); + } + + /** + * An uncommented item + * + * The SQL type of this item (xml, ) could not be mapped.
+ * Deserialising this field might not work! + */ + @javax.persistence.Column(name = "Resume") + public java.lang.Object getResume() { + return getValue(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.JobCandidate.JobCandidate.Resume); + } + + /** + * An uncommented item + */ + public void setModifiedDate(java.sql.Timestamp value) { + setValue(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.JobCandidate.JobCandidate.ModifiedDate, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "ModifiedDate", nullable = false) + public java.sql.Timestamp getModifiedDate() { + return getValue(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.JobCandidate.JobCandidate.ModifiedDate); + } + + /** + * Create a detached JobCandidate + */ + public JobCandidate() { + super(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.JobCandidate.JobCandidate); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/humanresources/tables/records/Shift.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/humanresources/tables/records/Shift.java new file mode 100644 index 00000000000..fdca01175aa --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/humanresources/tables/records/Shift.java @@ -0,0 +1,101 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.humanresources.tables.records; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "Shift", schema = "HumanResources") +public class Shift extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = -603737055; + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setShiftID(java.lang.Byte value) { + setValue(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.Shift.Shift.ShiftID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + @javax.persistence.Id + @javax.persistence.Column(name = "ShiftID", unique = true, nullable = false, precision = 3) + public java.lang.Byte getShiftID() { + return getValue(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.Shift.Shift.ShiftID); + } + + /** + * An uncommented item + */ + public void setName(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.Shift.Shift.Name, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "Name", nullable = false, length = 50) + public java.lang.String getName() { + return getValue(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.Shift.Shift.Name); + } + + /** + * An uncommented item + */ + public void setStartTime(java.sql.Timestamp value) { + setValue(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.Shift.Shift.StartTime, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "StartTime", nullable = false) + public java.sql.Timestamp getStartTime() { + return getValue(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.Shift.Shift.StartTime); + } + + /** + * An uncommented item + */ + public void setEndTime(java.sql.Timestamp value) { + setValue(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.Shift.Shift.EndTime, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "EndTime", nullable = false) + public java.sql.Timestamp getEndTime() { + return getValue(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.Shift.Shift.EndTime); + } + + /** + * An uncommented item + */ + public void setModifiedDate(java.sql.Timestamp value) { + setValue(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.Shift.Shift.ModifiedDate, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "ModifiedDate", nullable = false) + public java.sql.Timestamp getModifiedDate() { + return getValue(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.Shift.Shift.ModifiedDate); + } + + /** + * Create a detached Shift + */ + public Shift() { + super(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.Shift.Shift); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/humanresources/tables/records/vEmployee.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/humanresources/tables/records/vEmployee.java new file mode 100644 index 00000000000..847c145702d --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/humanresources/tables/records/vEmployee.java @@ -0,0 +1,282 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.humanresources.tables.records; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "vEmployee", schema = "HumanResources") +public class vEmployee extends org.jooq.impl.TableRecordImpl { + + private static final long serialVersionUID = -776920927; + + /** + * An uncommented item + */ + public void setEmployeeID(java.lang.Integer value) { + setValue(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.vEmployee.vEmployee.EmployeeID, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "EmployeeID", nullable = false, precision = 10) + public java.lang.Integer getEmployeeID() { + return getValue(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.vEmployee.vEmployee.EmployeeID); + } + + /** + * An uncommented item + */ + public void setTitle(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.vEmployee.vEmployee.Title, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "Title", length = 8) + public java.lang.String getTitle() { + return getValue(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.vEmployee.vEmployee.Title); + } + + /** + * An uncommented item + */ + public void setFirstName(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.vEmployee.vEmployee.FirstName, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "FirstName", nullable = false, length = 50) + public java.lang.String getFirstName() { + return getValue(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.vEmployee.vEmployee.FirstName); + } + + /** + * An uncommented item + */ + public void setMiddleName(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.vEmployee.vEmployee.MiddleName, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "MiddleName", length = 50) + public java.lang.String getMiddleName() { + return getValue(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.vEmployee.vEmployee.MiddleName); + } + + /** + * An uncommented item + */ + public void setLastName(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.vEmployee.vEmployee.LastName, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "LastName", nullable = false, length = 50) + public java.lang.String getLastName() { + return getValue(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.vEmployee.vEmployee.LastName); + } + + /** + * An uncommented item + */ + public void setSuffix(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.vEmployee.vEmployee.Suffix, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "Suffix", length = 10) + public java.lang.String getSuffix() { + return getValue(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.vEmployee.vEmployee.Suffix); + } + + /** + * An uncommented item + */ + public void setJobTitle(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.vEmployee.vEmployee.JobTitle, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "JobTitle", nullable = false, length = 50) + public java.lang.String getJobTitle() { + return getValue(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.vEmployee.vEmployee.JobTitle); + } + + /** + * An uncommented item + */ + public void setPhone(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.vEmployee.vEmployee.Phone, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "Phone", length = 25) + public java.lang.String getPhone() { + return getValue(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.vEmployee.vEmployee.Phone); + } + + /** + * An uncommented item + */ + public void setEmailAddress(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.vEmployee.vEmployee.EmailAddress, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "EmailAddress", length = 50) + public java.lang.String getEmailAddress() { + return getValue(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.vEmployee.vEmployee.EmailAddress); + } + + /** + * An uncommented item + */ + public void setEmailPromotion(java.lang.Integer value) { + setValue(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.vEmployee.vEmployee.EmailPromotion, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "EmailPromotion", nullable = false, precision = 10) + public java.lang.Integer getEmailPromotion() { + return getValue(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.vEmployee.vEmployee.EmailPromotion); + } + + /** + * An uncommented item + */ + public void setAddressLine1(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.vEmployee.vEmployee.AddressLine1, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "AddressLine1", nullable = false, length = 60) + public java.lang.String getAddressLine1() { + return getValue(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.vEmployee.vEmployee.AddressLine1); + } + + /** + * An uncommented item + */ + public void setAddressLine2(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.vEmployee.vEmployee.AddressLine2, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "AddressLine2", length = 60) + public java.lang.String getAddressLine2() { + return getValue(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.vEmployee.vEmployee.AddressLine2); + } + + /** + * An uncommented item + */ + public void setCity(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.vEmployee.vEmployee.City, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "City", nullable = false, length = 30) + public java.lang.String getCity() { + return getValue(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.vEmployee.vEmployee.City); + } + + /** + * An uncommented item + */ + public void setStateProvinceName(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.vEmployee.vEmployee.StateProvinceName, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "StateProvinceName", nullable = false, length = 50) + public java.lang.String getStateProvinceName() { + return getValue(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.vEmployee.vEmployee.StateProvinceName); + } + + /** + * An uncommented item + */ + public void setPostalCode(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.vEmployee.vEmployee.PostalCode, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "PostalCode", nullable = false, length = 15) + public java.lang.String getPostalCode() { + return getValue(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.vEmployee.vEmployee.PostalCode); + } + + /** + * An uncommented item + */ + public void setCountryRegionName(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.vEmployee.vEmployee.CountryRegionName, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "CountryRegionName", nullable = false, length = 50) + public java.lang.String getCountryRegionName() { + return getValue(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.vEmployee.vEmployee.CountryRegionName); + } + + /** + * An uncommented item + * + * The SQL type of this item (xml, ) could not be mapped.
+ * Deserialising this field might not work! + */ + public void setAdditionalContactInfo(java.lang.Object value) { + setValue(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.vEmployee.vEmployee.AdditionalContactInfo, value); + } + + /** + * An uncommented item + * + * The SQL type of this item (xml, ) could not be mapped.
+ * Deserialising this field might not work! + */ + @javax.persistence.Column(name = "AdditionalContactInfo") + public java.lang.Object getAdditionalContactInfo() { + return getValue(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.vEmployee.vEmployee.AdditionalContactInfo); + } + + /** + * Create a detached vEmployee + */ + public vEmployee() { + super(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.vEmployee.vEmployee); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/humanresources/tables/records/vEmployeeDepartment.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/humanresources/tables/records/vEmployeeDepartment.java new file mode 100644 index 00000000000..159cf70e4a6 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/humanresources/tables/records/vEmployeeDepartment.java @@ -0,0 +1,171 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.humanresources.tables.records; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "vEmployeeDepartment", schema = "HumanResources") +public class vEmployeeDepartment extends org.jooq.impl.TableRecordImpl { + + private static final long serialVersionUID = 1157185743; + + /** + * An uncommented item + */ + public void setEmployeeID(java.lang.Integer value) { + setValue(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.vEmployeeDepartment.vEmployeeDepartment.EmployeeID, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "EmployeeID", nullable = false, precision = 10) + public java.lang.Integer getEmployeeID() { + return getValue(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.vEmployeeDepartment.vEmployeeDepartment.EmployeeID); + } + + /** + * An uncommented item + */ + public void setTitle(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.vEmployeeDepartment.vEmployeeDepartment.Title, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "Title", length = 8) + public java.lang.String getTitle() { + return getValue(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.vEmployeeDepartment.vEmployeeDepartment.Title); + } + + /** + * An uncommented item + */ + public void setFirstName(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.vEmployeeDepartment.vEmployeeDepartment.FirstName, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "FirstName", nullable = false, length = 50) + public java.lang.String getFirstName() { + return getValue(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.vEmployeeDepartment.vEmployeeDepartment.FirstName); + } + + /** + * An uncommented item + */ + public void setMiddleName(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.vEmployeeDepartment.vEmployeeDepartment.MiddleName, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "MiddleName", length = 50) + public java.lang.String getMiddleName() { + return getValue(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.vEmployeeDepartment.vEmployeeDepartment.MiddleName); + } + + /** + * An uncommented item + */ + public void setLastName(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.vEmployeeDepartment.vEmployeeDepartment.LastName, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "LastName", nullable = false, length = 50) + public java.lang.String getLastName() { + return getValue(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.vEmployeeDepartment.vEmployeeDepartment.LastName); + } + + /** + * An uncommented item + */ + public void setSuffix(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.vEmployeeDepartment.vEmployeeDepartment.Suffix, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "Suffix", length = 10) + public java.lang.String getSuffix() { + return getValue(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.vEmployeeDepartment.vEmployeeDepartment.Suffix); + } + + /** + * An uncommented item + */ + public void setJobTitle(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.vEmployeeDepartment.vEmployeeDepartment.JobTitle, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "JobTitle", nullable = false, length = 50) + public java.lang.String getJobTitle() { + return getValue(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.vEmployeeDepartment.vEmployeeDepartment.JobTitle); + } + + /** + * An uncommented item + */ + public void setDepartment(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.vEmployeeDepartment.vEmployeeDepartment.Department, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "Department", nullable = false, length = 50) + public java.lang.String getDepartment() { + return getValue(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.vEmployeeDepartment.vEmployeeDepartment.Department); + } + + /** + * An uncommented item + */ + public void setGroupName(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.vEmployeeDepartment.vEmployeeDepartment.GroupName, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "GroupName", nullable = false, length = 50) + public java.lang.String getGroupName() { + return getValue(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.vEmployeeDepartment.vEmployeeDepartment.GroupName); + } + + /** + * An uncommented item + */ + public void setStartDate(java.sql.Timestamp value) { + setValue(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.vEmployeeDepartment.vEmployeeDepartment.StartDate, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "StartDate", nullable = false) + public java.sql.Timestamp getStartDate() { + return getValue(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.vEmployeeDepartment.vEmployeeDepartment.StartDate); + } + + /** + * Create a detached vEmployeeDepartment + */ + public vEmployeeDepartment() { + super(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.vEmployeeDepartment.vEmployeeDepartment); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/humanresources/tables/records/vEmployeeDepartmentHistory.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/humanresources/tables/records/vEmployeeDepartmentHistory.java new file mode 100644 index 00000000000..ffbeea810a0 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/humanresources/tables/records/vEmployeeDepartmentHistory.java @@ -0,0 +1,186 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.humanresources.tables.records; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "vEmployeeDepartmentHistory", schema = "HumanResources") +public class vEmployeeDepartmentHistory extends org.jooq.impl.TableRecordImpl { + + private static final long serialVersionUID = -795625660; + + /** + * An uncommented item + */ + public void setEmployeeID(java.lang.Integer value) { + setValue(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.vEmployeeDepartmentHistory.vEmployeeDepartmentHistory.EmployeeID, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "EmployeeID", nullable = false, precision = 10) + public java.lang.Integer getEmployeeID() { + return getValue(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.vEmployeeDepartmentHistory.vEmployeeDepartmentHistory.EmployeeID); + } + + /** + * An uncommented item + */ + public void setTitle(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.vEmployeeDepartmentHistory.vEmployeeDepartmentHistory.Title, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "Title", length = 8) + public java.lang.String getTitle() { + return getValue(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.vEmployeeDepartmentHistory.vEmployeeDepartmentHistory.Title); + } + + /** + * An uncommented item + */ + public void setFirstName(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.vEmployeeDepartmentHistory.vEmployeeDepartmentHistory.FirstName, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "FirstName", nullable = false, length = 50) + public java.lang.String getFirstName() { + return getValue(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.vEmployeeDepartmentHistory.vEmployeeDepartmentHistory.FirstName); + } + + /** + * An uncommented item + */ + public void setMiddleName(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.vEmployeeDepartmentHistory.vEmployeeDepartmentHistory.MiddleName, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "MiddleName", length = 50) + public java.lang.String getMiddleName() { + return getValue(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.vEmployeeDepartmentHistory.vEmployeeDepartmentHistory.MiddleName); + } + + /** + * An uncommented item + */ + public void setLastName(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.vEmployeeDepartmentHistory.vEmployeeDepartmentHistory.LastName, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "LastName", nullable = false, length = 50) + public java.lang.String getLastName() { + return getValue(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.vEmployeeDepartmentHistory.vEmployeeDepartmentHistory.LastName); + } + + /** + * An uncommented item + */ + public void setSuffix(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.vEmployeeDepartmentHistory.vEmployeeDepartmentHistory.Suffix, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "Suffix", length = 10) + public java.lang.String getSuffix() { + return getValue(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.vEmployeeDepartmentHistory.vEmployeeDepartmentHistory.Suffix); + } + + /** + * An uncommented item + */ + public void setShift(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.vEmployeeDepartmentHistory.vEmployeeDepartmentHistory.Shift, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "Shift", nullable = false, length = 50) + public java.lang.String getShift() { + return getValue(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.vEmployeeDepartmentHistory.vEmployeeDepartmentHistory.Shift); + } + + /** + * An uncommented item + */ + public void setDepartment(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.vEmployeeDepartmentHistory.vEmployeeDepartmentHistory.Department, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "Department", nullable = false, length = 50) + public java.lang.String getDepartment() { + return getValue(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.vEmployeeDepartmentHistory.vEmployeeDepartmentHistory.Department); + } + + /** + * An uncommented item + */ + public void setGroupName(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.vEmployeeDepartmentHistory.vEmployeeDepartmentHistory.GroupName, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "GroupName", nullable = false, length = 50) + public java.lang.String getGroupName() { + return getValue(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.vEmployeeDepartmentHistory.vEmployeeDepartmentHistory.GroupName); + } + + /** + * An uncommented item + */ + public void setStartDate(java.sql.Timestamp value) { + setValue(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.vEmployeeDepartmentHistory.vEmployeeDepartmentHistory.StartDate, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "StartDate", nullable = false) + public java.sql.Timestamp getStartDate() { + return getValue(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.vEmployeeDepartmentHistory.vEmployeeDepartmentHistory.StartDate); + } + + /** + * An uncommented item + */ + public void setEndDate(java.sql.Timestamp value) { + setValue(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.vEmployeeDepartmentHistory.vEmployeeDepartmentHistory.EndDate, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "EndDate") + public java.sql.Timestamp getEndDate() { + return getValue(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.vEmployeeDepartmentHistory.vEmployeeDepartmentHistory.EndDate); + } + + /** + * Create a detached vEmployeeDepartmentHistory + */ + public vEmployeeDepartmentHistory() { + super(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.vEmployeeDepartmentHistory.vEmployeeDepartmentHistory); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/humanresources/tables/records/vJobCandidate.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/humanresources/tables/records/vJobCandidate.java new file mode 100644 index 00000000000..60469b55b9a --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/humanresources/tables/records/vJobCandidate.java @@ -0,0 +1,261 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.humanresources.tables.records; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "vJobCandidate", schema = "HumanResources") +public class vJobCandidate extends org.jooq.impl.TableRecordImpl { + + private static final long serialVersionUID = 1475514243; + + /** + * An uncommented item + */ + public void setJobCandidateID(java.lang.Integer value) { + setValue(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.vJobCandidate.vJobCandidate.JobCandidateID, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "JobCandidateID", nullable = false, precision = 10) + public java.lang.Integer getJobCandidateID() { + return getValue(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.vJobCandidate.vJobCandidate.JobCandidateID); + } + + /** + * An uncommented item + */ + public void setEmployeeID(java.lang.Integer value) { + setValue(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.vJobCandidate.vJobCandidate.EmployeeID, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "EmployeeID", precision = 10) + public java.lang.Integer getEmployeeID() { + return getValue(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.vJobCandidate.vJobCandidate.EmployeeID); + } + + /** + * An uncommented item + */ + public void setName_Prefix(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.vJobCandidate.vJobCandidate.Name_Prefix, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "Name.Prefix", length = 30) + public java.lang.String getName_Prefix() { + return getValue(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.vJobCandidate.vJobCandidate.Name_Prefix); + } + + /** + * An uncommented item + */ + public void setName_First(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.vJobCandidate.vJobCandidate.Name_First, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "Name.First", length = 30) + public java.lang.String getName_First() { + return getValue(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.vJobCandidate.vJobCandidate.Name_First); + } + + /** + * An uncommented item + */ + public void setName_Middle(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.vJobCandidate.vJobCandidate.Name_Middle, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "Name.Middle", length = 30) + public java.lang.String getName_Middle() { + return getValue(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.vJobCandidate.vJobCandidate.Name_Middle); + } + + /** + * An uncommented item + */ + public void setName_Last(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.vJobCandidate.vJobCandidate.Name_Last, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "Name.Last", length = 30) + public java.lang.String getName_Last() { + return getValue(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.vJobCandidate.vJobCandidate.Name_Last); + } + + /** + * An uncommented item + */ + public void setName_Suffix(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.vJobCandidate.vJobCandidate.Name_Suffix, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "Name.Suffix", length = 30) + public java.lang.String getName_Suffix() { + return getValue(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.vJobCandidate.vJobCandidate.Name_Suffix); + } + + /** + * An uncommented item + */ + public void setSkills(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.vJobCandidate.vJobCandidate.Skills, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "Skills") + public java.lang.String getSkills() { + return getValue(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.vJobCandidate.vJobCandidate.Skills); + } + + /** + * An uncommented item + */ + public void setAddr_Type(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.vJobCandidate.vJobCandidate.Addr_Type, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "Addr.Type", length = 30) + public java.lang.String getAddr_Type() { + return getValue(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.vJobCandidate.vJobCandidate.Addr_Type); + } + + /** + * An uncommented item + */ + public void setAddr_Loc_CountryRegion(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.vJobCandidate.vJobCandidate.Addr_Loc_CountryRegion, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "Addr.Loc.CountryRegion", length = 100) + public java.lang.String getAddr_Loc_CountryRegion() { + return getValue(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.vJobCandidate.vJobCandidate.Addr_Loc_CountryRegion); + } + + /** + * An uncommented item + */ + public void setAddr_Loc_State(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.vJobCandidate.vJobCandidate.Addr_Loc_State, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "Addr.Loc.State", length = 100) + public java.lang.String getAddr_Loc_State() { + return getValue(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.vJobCandidate.vJobCandidate.Addr_Loc_State); + } + + /** + * An uncommented item + */ + public void setAddr_Loc_City(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.vJobCandidate.vJobCandidate.Addr_Loc_City, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "Addr.Loc.City", length = 100) + public java.lang.String getAddr_Loc_City() { + return getValue(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.vJobCandidate.vJobCandidate.Addr_Loc_City); + } + + /** + * An uncommented item + */ + public void setAddr_PostalCode(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.vJobCandidate.vJobCandidate.Addr_PostalCode, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "Addr.PostalCode", length = 20) + public java.lang.String getAddr_PostalCode() { + return getValue(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.vJobCandidate.vJobCandidate.Addr_PostalCode); + } + + /** + * An uncommented item + */ + public void setEMail(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.vJobCandidate.vJobCandidate.EMail, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "EMail") + public java.lang.String getEMail() { + return getValue(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.vJobCandidate.vJobCandidate.EMail); + } + + /** + * An uncommented item + */ + public void setWebSite(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.vJobCandidate.vJobCandidate.WebSite, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "WebSite") + public java.lang.String getWebSite() { + return getValue(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.vJobCandidate.vJobCandidate.WebSite); + } + + /** + * An uncommented item + */ + public void setModifiedDate(java.sql.Timestamp value) { + setValue(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.vJobCandidate.vJobCandidate.ModifiedDate, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "ModifiedDate", nullable = false) + public java.sql.Timestamp getModifiedDate() { + return getValue(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.vJobCandidate.vJobCandidate.ModifiedDate); + } + + /** + * Create a detached vJobCandidate + */ + public vJobCandidate() { + super(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.vJobCandidate.vJobCandidate); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/humanresources/tables/records/vJobCandidateEducation.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/humanresources/tables/records/vJobCandidateEducation.java new file mode 100644 index 00000000000..fa98ea3a833 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/humanresources/tables/records/vJobCandidateEducation.java @@ -0,0 +1,216 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.humanresources.tables.records; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "vJobCandidateEducation", schema = "HumanResources") +public class vJobCandidateEducation extends org.jooq.impl.TableRecordImpl { + + private static final long serialVersionUID = -2068917810; + + /** + * An uncommented item + */ + public void setJobCandidateID(java.lang.Integer value) { + setValue(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.vJobCandidateEducation.vJobCandidateEducation.JobCandidateID, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "JobCandidateID", nullable = false, precision = 10) + public java.lang.Integer getJobCandidateID() { + return getValue(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.vJobCandidateEducation.vJobCandidateEducation.JobCandidateID); + } + + /** + * An uncommented item + */ + public void setEdu_Level(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.vJobCandidateEducation.vJobCandidateEducation.Edu_Level, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "Edu.Level") + public java.lang.String getEdu_Level() { + return getValue(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.vJobCandidateEducation.vJobCandidateEducation.Edu_Level); + } + + /** + * An uncommented item + */ + public void setEdu_StartDate(java.sql.Timestamp value) { + setValue(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.vJobCandidateEducation.vJobCandidateEducation.Edu_StartDate, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "Edu.StartDate") + public java.sql.Timestamp getEdu_StartDate() { + return getValue(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.vJobCandidateEducation.vJobCandidateEducation.Edu_StartDate); + } + + /** + * An uncommented item + */ + public void setEdu_EndDate(java.sql.Timestamp value) { + setValue(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.vJobCandidateEducation.vJobCandidateEducation.Edu_EndDate, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "Edu.EndDate") + public java.sql.Timestamp getEdu_EndDate() { + return getValue(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.vJobCandidateEducation.vJobCandidateEducation.Edu_EndDate); + } + + /** + * An uncommented item + */ + public void setEdu_Degree(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.vJobCandidateEducation.vJobCandidateEducation.Edu_Degree, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "Edu.Degree", length = 50) + public java.lang.String getEdu_Degree() { + return getValue(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.vJobCandidateEducation.vJobCandidateEducation.Edu_Degree); + } + + /** + * An uncommented item + */ + public void setEdu_Major(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.vJobCandidateEducation.vJobCandidateEducation.Edu_Major, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "Edu.Major", length = 50) + public java.lang.String getEdu_Major() { + return getValue(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.vJobCandidateEducation.vJobCandidateEducation.Edu_Major); + } + + /** + * An uncommented item + */ + public void setEdu_Minor(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.vJobCandidateEducation.vJobCandidateEducation.Edu_Minor, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "Edu.Minor", length = 50) + public java.lang.String getEdu_Minor() { + return getValue(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.vJobCandidateEducation.vJobCandidateEducation.Edu_Minor); + } + + /** + * An uncommented item + */ + public void setEdu_GPA(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.vJobCandidateEducation.vJobCandidateEducation.Edu_GPA, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "Edu.GPA", length = 5) + public java.lang.String getEdu_GPA() { + return getValue(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.vJobCandidateEducation.vJobCandidateEducation.Edu_GPA); + } + + /** + * An uncommented item + */ + public void setEdu_GPAScale(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.vJobCandidateEducation.vJobCandidateEducation.Edu_GPAScale, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "Edu.GPAScale", length = 5) + public java.lang.String getEdu_GPAScale() { + return getValue(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.vJobCandidateEducation.vJobCandidateEducation.Edu_GPAScale); + } + + /** + * An uncommented item + */ + public void setEdu_School(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.vJobCandidateEducation.vJobCandidateEducation.Edu_School, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "Edu.School", length = 100) + public java.lang.String getEdu_School() { + return getValue(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.vJobCandidateEducation.vJobCandidateEducation.Edu_School); + } + + /** + * An uncommented item + */ + public void setEdu_Loc_CountryRegion(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.vJobCandidateEducation.vJobCandidateEducation.Edu_Loc_CountryRegion, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "Edu.Loc.CountryRegion", length = 100) + public java.lang.String getEdu_Loc_CountryRegion() { + return getValue(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.vJobCandidateEducation.vJobCandidateEducation.Edu_Loc_CountryRegion); + } + + /** + * An uncommented item + */ + public void setEdu_Loc_State(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.vJobCandidateEducation.vJobCandidateEducation.Edu_Loc_State, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "Edu.Loc.State", length = 100) + public java.lang.String getEdu_Loc_State() { + return getValue(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.vJobCandidateEducation.vJobCandidateEducation.Edu_Loc_State); + } + + /** + * An uncommented item + */ + public void setEdu_Loc_City(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.vJobCandidateEducation.vJobCandidateEducation.Edu_Loc_City, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "Edu.Loc.City", length = 100) + public java.lang.String getEdu_Loc_City() { + return getValue(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.vJobCandidateEducation.vJobCandidateEducation.Edu_Loc_City); + } + + /** + * Create a detached vJobCandidateEducation + */ + public vJobCandidateEducation() { + super(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.vJobCandidateEducation.vJobCandidateEducation); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/humanresources/tables/records/vJobCandidateEmployment.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/humanresources/tables/records/vJobCandidateEmployment.java new file mode 100644 index 00000000000..d175ffa0b99 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/humanresources/tables/records/vJobCandidateEmployment.java @@ -0,0 +1,186 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.humanresources.tables.records; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "vJobCandidateEmployment", schema = "HumanResources") +public class vJobCandidateEmployment extends org.jooq.impl.TableRecordImpl { + + private static final long serialVersionUID = 455124956; + + /** + * An uncommented item + */ + public void setJobCandidateID(java.lang.Integer value) { + setValue(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.vJobCandidateEmployment.vJobCandidateEmployment.JobCandidateID, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "JobCandidateID", nullable = false, precision = 10) + public java.lang.Integer getJobCandidateID() { + return getValue(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.vJobCandidateEmployment.vJobCandidateEmployment.JobCandidateID); + } + + /** + * An uncommented item + */ + public void setEmp_StartDate(java.sql.Timestamp value) { + setValue(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.vJobCandidateEmployment.vJobCandidateEmployment.Emp_StartDate, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "Emp.StartDate") + public java.sql.Timestamp getEmp_StartDate() { + return getValue(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.vJobCandidateEmployment.vJobCandidateEmployment.Emp_StartDate); + } + + /** + * An uncommented item + */ + public void setEmp_EndDate(java.sql.Timestamp value) { + setValue(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.vJobCandidateEmployment.vJobCandidateEmployment.Emp_EndDate, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "Emp.EndDate") + public java.sql.Timestamp getEmp_EndDate() { + return getValue(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.vJobCandidateEmployment.vJobCandidateEmployment.Emp_EndDate); + } + + /** + * An uncommented item + */ + public void setEmp_OrgName(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.vJobCandidateEmployment.vJobCandidateEmployment.Emp_OrgName, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "Emp.OrgName", length = 100) + public java.lang.String getEmp_OrgName() { + return getValue(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.vJobCandidateEmployment.vJobCandidateEmployment.Emp_OrgName); + } + + /** + * An uncommented item + */ + public void setEmp_JobTitle(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.vJobCandidateEmployment.vJobCandidateEmployment.Emp_JobTitle, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "Emp.JobTitle", length = 100) + public java.lang.String getEmp_JobTitle() { + return getValue(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.vJobCandidateEmployment.vJobCandidateEmployment.Emp_JobTitle); + } + + /** + * An uncommented item + */ + public void setEmp_Responsibility(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.vJobCandidateEmployment.vJobCandidateEmployment.Emp_Responsibility, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "Emp.Responsibility") + public java.lang.String getEmp_Responsibility() { + return getValue(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.vJobCandidateEmployment.vJobCandidateEmployment.Emp_Responsibility); + } + + /** + * An uncommented item + */ + public void setEmp_FunctionCategory(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.vJobCandidateEmployment.vJobCandidateEmployment.Emp_FunctionCategory, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "Emp.FunctionCategory") + public java.lang.String getEmp_FunctionCategory() { + return getValue(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.vJobCandidateEmployment.vJobCandidateEmployment.Emp_FunctionCategory); + } + + /** + * An uncommented item + */ + public void setEmp_IndustryCategory(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.vJobCandidateEmployment.vJobCandidateEmployment.Emp_IndustryCategory, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "Emp.IndustryCategory") + public java.lang.String getEmp_IndustryCategory() { + return getValue(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.vJobCandidateEmployment.vJobCandidateEmployment.Emp_IndustryCategory); + } + + /** + * An uncommented item + */ + public void setEmp_Loc_CountryRegion(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.vJobCandidateEmployment.vJobCandidateEmployment.Emp_Loc_CountryRegion, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "Emp.Loc.CountryRegion") + public java.lang.String getEmp_Loc_CountryRegion() { + return getValue(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.vJobCandidateEmployment.vJobCandidateEmployment.Emp_Loc_CountryRegion); + } + + /** + * An uncommented item + */ + public void setEmp_Loc_State(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.vJobCandidateEmployment.vJobCandidateEmployment.Emp_Loc_State, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "Emp.Loc.State") + public java.lang.String getEmp_Loc_State() { + return getValue(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.vJobCandidateEmployment.vJobCandidateEmployment.Emp_Loc_State); + } + + /** + * An uncommented item + */ + public void setEmp_Loc_City(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.vJobCandidateEmployment.vJobCandidateEmployment.Emp_Loc_City, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "Emp.Loc.City") + public java.lang.String getEmp_Loc_City() { + return getValue(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.vJobCandidateEmployment.vJobCandidateEmployment.Emp_Loc_City); + } + + /** + * Create a detached vJobCandidateEmployment + */ + public vJobCandidateEmployment() { + super(org.jooq.examples.sqlserver.adventureworks.humanresources.tables.vJobCandidateEmployment.vJobCandidateEmployment); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/humanresources/tables/vEmployee.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/humanresources/tables/vEmployee.java new file mode 100644 index 00000000000..14c131836a6 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/humanresources/tables/vEmployee.java @@ -0,0 +1,131 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.humanresources.tables; + +/** + * This class is generated by jOOQ. + */ +public class vEmployee extends org.jooq.impl.TableImpl { + + private static final long serialVersionUID = -971976167; + + /** + * The singleton instance of HumanResources.vEmployee + */ + public static final org.jooq.examples.sqlserver.adventureworks.humanresources.tables.vEmployee vEmployee = new org.jooq.examples.sqlserver.adventureworks.humanresources.tables.vEmployee(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.examples.sqlserver.adventureworks.humanresources.tables.records.vEmployee.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + */ + public final org.jooq.TableField EmployeeID = createField("EmployeeID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField Title = createField("Title", org.jooq.impl.SQLDataType.NVARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField FirstName = createField("FirstName", org.jooq.impl.SQLDataType.NVARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField MiddleName = createField("MiddleName", org.jooq.impl.SQLDataType.NVARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField LastName = createField("LastName", org.jooq.impl.SQLDataType.NVARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField Suffix = createField("Suffix", org.jooq.impl.SQLDataType.NVARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField JobTitle = createField("JobTitle", org.jooq.impl.SQLDataType.NVARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField Phone = createField("Phone", org.jooq.impl.SQLDataType.NVARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField EmailAddress = createField("EmailAddress", org.jooq.impl.SQLDataType.NVARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField EmailPromotion = createField("EmailPromotion", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField AddressLine1 = createField("AddressLine1", org.jooq.impl.SQLDataType.NVARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField AddressLine2 = createField("AddressLine2", org.jooq.impl.SQLDataType.NVARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField City = createField("City", org.jooq.impl.SQLDataType.NVARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField StateProvinceName = createField("StateProvinceName", org.jooq.impl.SQLDataType.NVARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField PostalCode = createField("PostalCode", org.jooq.impl.SQLDataType.NVARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField CountryRegionName = createField("CountryRegionName", org.jooq.impl.SQLDataType.NVARCHAR, this); + + /** + * An uncommented item + * + * The SQL type of this item (xml, ) could not be mapped.
+ * Deserialising this field might not work! + */ + public final org.jooq.TableField AdditionalContactInfo = createField("AdditionalContactInfo", org.jooq.util.sqlserver.SQLServerDataType.getDefaultDataType("xml"), this); + + public vEmployee() { + super("vEmployee", org.jooq.examples.sqlserver.adventureworks.humanresources.HumanResources.HumanResources); + } + + public vEmployee(java.lang.String alias) { + super(alias, org.jooq.examples.sqlserver.adventureworks.humanresources.HumanResources.HumanResources, org.jooq.examples.sqlserver.adventureworks.humanresources.tables.vEmployee.vEmployee); + } + + @Override + public org.jooq.examples.sqlserver.adventureworks.humanresources.tables.vEmployee as(java.lang.String alias) { + return new org.jooq.examples.sqlserver.adventureworks.humanresources.tables.vEmployee(alias); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/humanresources/tables/vEmployeeDepartment.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/humanresources/tables/vEmployeeDepartment.java new file mode 100644 index 00000000000..bb4ac7edf23 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/humanresources/tables/vEmployeeDepartment.java @@ -0,0 +1,93 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.humanresources.tables; + +/** + * This class is generated by jOOQ. + */ +public class vEmployeeDepartment extends org.jooq.impl.TableImpl { + + private static final long serialVersionUID = -2091213536; + + /** + * The singleton instance of HumanResources.vEmployeeDepartment + */ + public static final org.jooq.examples.sqlserver.adventureworks.humanresources.tables.vEmployeeDepartment vEmployeeDepartment = new org.jooq.examples.sqlserver.adventureworks.humanresources.tables.vEmployeeDepartment(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.examples.sqlserver.adventureworks.humanresources.tables.records.vEmployeeDepartment.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + */ + public final org.jooq.TableField EmployeeID = createField("EmployeeID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField Title = createField("Title", org.jooq.impl.SQLDataType.NVARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField FirstName = createField("FirstName", org.jooq.impl.SQLDataType.NVARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField MiddleName = createField("MiddleName", org.jooq.impl.SQLDataType.NVARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField LastName = createField("LastName", org.jooq.impl.SQLDataType.NVARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField Suffix = createField("Suffix", org.jooq.impl.SQLDataType.NVARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField JobTitle = createField("JobTitle", org.jooq.impl.SQLDataType.NVARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField Department = createField("Department", org.jooq.impl.SQLDataType.NVARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField GroupName = createField("GroupName", org.jooq.impl.SQLDataType.NVARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField StartDate = createField("StartDate", org.jooq.impl.SQLDataType.TIMESTAMP, this); + + public vEmployeeDepartment() { + super("vEmployeeDepartment", org.jooq.examples.sqlserver.adventureworks.humanresources.HumanResources.HumanResources); + } + + public vEmployeeDepartment(java.lang.String alias) { + super(alias, org.jooq.examples.sqlserver.adventureworks.humanresources.HumanResources.HumanResources, org.jooq.examples.sqlserver.adventureworks.humanresources.tables.vEmployeeDepartment.vEmployeeDepartment); + } + + @Override + public org.jooq.examples.sqlserver.adventureworks.humanresources.tables.vEmployeeDepartment as(java.lang.String alias) { + return new org.jooq.examples.sqlserver.adventureworks.humanresources.tables.vEmployeeDepartment(alias); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/humanresources/tables/vEmployeeDepartmentHistory.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/humanresources/tables/vEmployeeDepartmentHistory.java new file mode 100644 index 00000000000..15c5ec8af59 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/humanresources/tables/vEmployeeDepartmentHistory.java @@ -0,0 +1,98 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.humanresources.tables; + +/** + * This class is generated by jOOQ. + */ +public class vEmployeeDepartmentHistory extends org.jooq.impl.TableImpl { + + private static final long serialVersionUID = -260415317; + + /** + * The singleton instance of HumanResources.vEmployeeDepartmentHistory + */ + public static final org.jooq.examples.sqlserver.adventureworks.humanresources.tables.vEmployeeDepartmentHistory vEmployeeDepartmentHistory = new org.jooq.examples.sqlserver.adventureworks.humanresources.tables.vEmployeeDepartmentHistory(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.examples.sqlserver.adventureworks.humanresources.tables.records.vEmployeeDepartmentHistory.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + */ + public final org.jooq.TableField EmployeeID = createField("EmployeeID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField Title = createField("Title", org.jooq.impl.SQLDataType.NVARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField FirstName = createField("FirstName", org.jooq.impl.SQLDataType.NVARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField MiddleName = createField("MiddleName", org.jooq.impl.SQLDataType.NVARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField LastName = createField("LastName", org.jooq.impl.SQLDataType.NVARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField Suffix = createField("Suffix", org.jooq.impl.SQLDataType.NVARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField Shift = createField("Shift", org.jooq.impl.SQLDataType.NVARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField Department = createField("Department", org.jooq.impl.SQLDataType.NVARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField GroupName = createField("GroupName", org.jooq.impl.SQLDataType.NVARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField StartDate = createField("StartDate", org.jooq.impl.SQLDataType.TIMESTAMP, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField EndDate = createField("EndDate", org.jooq.impl.SQLDataType.TIMESTAMP, this); + + public vEmployeeDepartmentHistory() { + super("vEmployeeDepartmentHistory", org.jooq.examples.sqlserver.adventureworks.humanresources.HumanResources.HumanResources); + } + + public vEmployeeDepartmentHistory(java.lang.String alias) { + super(alias, org.jooq.examples.sqlserver.adventureworks.humanresources.HumanResources.HumanResources, org.jooq.examples.sqlserver.adventureworks.humanresources.tables.vEmployeeDepartmentHistory.vEmployeeDepartmentHistory); + } + + @Override + public org.jooq.examples.sqlserver.adventureworks.humanresources.tables.vEmployeeDepartmentHistory as(java.lang.String alias) { + return new org.jooq.examples.sqlserver.adventureworks.humanresources.tables.vEmployeeDepartmentHistory(alias); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/humanresources/tables/vJobCandidate.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/humanresources/tables/vJobCandidate.java new file mode 100644 index 00000000000..05307dd22b5 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/humanresources/tables/vJobCandidate.java @@ -0,0 +1,128 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.humanresources.tables; + +/** + * This class is generated by jOOQ. + */ +public class vJobCandidate extends org.jooq.impl.TableImpl { + + private static final long serialVersionUID = -2098680418; + + /** + * The singleton instance of HumanResources.vJobCandidate + */ + public static final org.jooq.examples.sqlserver.adventureworks.humanresources.tables.vJobCandidate vJobCandidate = new org.jooq.examples.sqlserver.adventureworks.humanresources.tables.vJobCandidate(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.examples.sqlserver.adventureworks.humanresources.tables.records.vJobCandidate.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + */ + public final org.jooq.TableField JobCandidateID = createField("JobCandidateID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField EmployeeID = createField("EmployeeID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField Name_Prefix = createField("Name.Prefix", org.jooq.impl.SQLDataType.NVARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField Name_First = createField("Name.First", org.jooq.impl.SQLDataType.NVARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField Name_Middle = createField("Name.Middle", org.jooq.impl.SQLDataType.NVARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField Name_Last = createField("Name.Last", org.jooq.impl.SQLDataType.NVARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField Name_Suffix = createField("Name.Suffix", org.jooq.impl.SQLDataType.NVARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField Skills = createField("Skills", org.jooq.impl.SQLDataType.NVARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField Addr_Type = createField("Addr.Type", org.jooq.impl.SQLDataType.NVARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField Addr_Loc_CountryRegion = createField("Addr.Loc.CountryRegion", org.jooq.impl.SQLDataType.NVARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField Addr_Loc_State = createField("Addr.Loc.State", org.jooq.impl.SQLDataType.NVARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField Addr_Loc_City = createField("Addr.Loc.City", org.jooq.impl.SQLDataType.NVARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField Addr_PostalCode = createField("Addr.PostalCode", org.jooq.impl.SQLDataType.NVARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField EMail = createField("EMail", org.jooq.impl.SQLDataType.NVARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField WebSite = createField("WebSite", org.jooq.impl.SQLDataType.NVARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField ModifiedDate = createField("ModifiedDate", org.jooq.impl.SQLDataType.TIMESTAMP, this); + + public vJobCandidate() { + super("vJobCandidate", org.jooq.examples.sqlserver.adventureworks.humanresources.HumanResources.HumanResources); + } + + public vJobCandidate(java.lang.String alias) { + super(alias, org.jooq.examples.sqlserver.adventureworks.humanresources.HumanResources.HumanResources, org.jooq.examples.sqlserver.adventureworks.humanresources.tables.vJobCandidate.vJobCandidate); + } + + @Override + public org.jooq.Identity getIdentity() { + return org.jooq.examples.sqlserver.adventureworks.humanresources.Keys.IDENTITY_vJobCandidate; + } + + @Override + public org.jooq.examples.sqlserver.adventureworks.humanresources.tables.vJobCandidate as(java.lang.String alias) { + return new org.jooq.examples.sqlserver.adventureworks.humanresources.tables.vJobCandidate(alias); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/humanresources/tables/vJobCandidateEducation.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/humanresources/tables/vJobCandidateEducation.java new file mode 100644 index 00000000000..7b7f15ff250 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/humanresources/tables/vJobCandidateEducation.java @@ -0,0 +1,113 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.humanresources.tables; + +/** + * This class is generated by jOOQ. + */ +public class vJobCandidateEducation extends org.jooq.impl.TableImpl { + + private static final long serialVersionUID = -384567003; + + /** + * The singleton instance of HumanResources.vJobCandidateEducation + */ + public static final org.jooq.examples.sqlserver.adventureworks.humanresources.tables.vJobCandidateEducation vJobCandidateEducation = new org.jooq.examples.sqlserver.adventureworks.humanresources.tables.vJobCandidateEducation(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.examples.sqlserver.adventureworks.humanresources.tables.records.vJobCandidateEducation.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + */ + public final org.jooq.TableField JobCandidateID = createField("JobCandidateID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField Edu_Level = createField("Edu.Level", org.jooq.impl.SQLDataType.NVARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField Edu_StartDate = createField("Edu.StartDate", org.jooq.impl.SQLDataType.TIMESTAMP, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField Edu_EndDate = createField("Edu.EndDate", org.jooq.impl.SQLDataType.TIMESTAMP, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField Edu_Degree = createField("Edu.Degree", org.jooq.impl.SQLDataType.NVARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField Edu_Major = createField("Edu.Major", org.jooq.impl.SQLDataType.NVARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField Edu_Minor = createField("Edu.Minor", org.jooq.impl.SQLDataType.NVARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField Edu_GPA = createField("Edu.GPA", org.jooq.impl.SQLDataType.NVARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField Edu_GPAScale = createField("Edu.GPAScale", org.jooq.impl.SQLDataType.NVARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField Edu_School = createField("Edu.School", org.jooq.impl.SQLDataType.NVARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField Edu_Loc_CountryRegion = createField("Edu.Loc.CountryRegion", org.jooq.impl.SQLDataType.NVARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField Edu_Loc_State = createField("Edu.Loc.State", org.jooq.impl.SQLDataType.NVARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField Edu_Loc_City = createField("Edu.Loc.City", org.jooq.impl.SQLDataType.NVARCHAR, this); + + public vJobCandidateEducation() { + super("vJobCandidateEducation", org.jooq.examples.sqlserver.adventureworks.humanresources.HumanResources.HumanResources); + } + + public vJobCandidateEducation(java.lang.String alias) { + super(alias, org.jooq.examples.sqlserver.adventureworks.humanresources.HumanResources.HumanResources, org.jooq.examples.sqlserver.adventureworks.humanresources.tables.vJobCandidateEducation.vJobCandidateEducation); + } + + @Override + public org.jooq.Identity getIdentity() { + return org.jooq.examples.sqlserver.adventureworks.humanresources.Keys.IDENTITY_vJobCandidateEducation; + } + + @Override + public org.jooq.examples.sqlserver.adventureworks.humanresources.tables.vJobCandidateEducation as(java.lang.String alias) { + return new org.jooq.examples.sqlserver.adventureworks.humanresources.tables.vJobCandidateEducation(alias); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/humanresources/tables/vJobCandidateEmployment.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/humanresources/tables/vJobCandidateEmployment.java new file mode 100644 index 00000000000..31db9117866 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/humanresources/tables/vJobCandidateEmployment.java @@ -0,0 +1,103 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.humanresources.tables; + +/** + * This class is generated by jOOQ. + */ +public class vJobCandidateEmployment extends org.jooq.impl.TableImpl { + + private static final long serialVersionUID = -2076411267; + + /** + * The singleton instance of HumanResources.vJobCandidateEmployment + */ + public static final org.jooq.examples.sqlserver.adventureworks.humanresources.tables.vJobCandidateEmployment vJobCandidateEmployment = new org.jooq.examples.sqlserver.adventureworks.humanresources.tables.vJobCandidateEmployment(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.examples.sqlserver.adventureworks.humanresources.tables.records.vJobCandidateEmployment.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + */ + public final org.jooq.TableField JobCandidateID = createField("JobCandidateID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField Emp_StartDate = createField("Emp.StartDate", org.jooq.impl.SQLDataType.TIMESTAMP, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField Emp_EndDate = createField("Emp.EndDate", org.jooq.impl.SQLDataType.TIMESTAMP, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField Emp_OrgName = createField("Emp.OrgName", org.jooq.impl.SQLDataType.NVARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField Emp_JobTitle = createField("Emp.JobTitle", org.jooq.impl.SQLDataType.NVARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField Emp_Responsibility = createField("Emp.Responsibility", org.jooq.impl.SQLDataType.NVARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField Emp_FunctionCategory = createField("Emp.FunctionCategory", org.jooq.impl.SQLDataType.NVARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField Emp_IndustryCategory = createField("Emp.IndustryCategory", org.jooq.impl.SQLDataType.NVARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField Emp_Loc_CountryRegion = createField("Emp.Loc.CountryRegion", org.jooq.impl.SQLDataType.NVARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField Emp_Loc_State = createField("Emp.Loc.State", org.jooq.impl.SQLDataType.NVARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField Emp_Loc_City = createField("Emp.Loc.City", org.jooq.impl.SQLDataType.NVARCHAR, this); + + public vJobCandidateEmployment() { + super("vJobCandidateEmployment", org.jooq.examples.sqlserver.adventureworks.humanresources.HumanResources.HumanResources); + } + + public vJobCandidateEmployment(java.lang.String alias) { + super(alias, org.jooq.examples.sqlserver.adventureworks.humanresources.HumanResources.HumanResources, org.jooq.examples.sqlserver.adventureworks.humanresources.tables.vJobCandidateEmployment.vJobCandidateEmployment); + } + + @Override + public org.jooq.Identity getIdentity() { + return org.jooq.examples.sqlserver.adventureworks.humanresources.Keys.IDENTITY_vJobCandidateEmployment; + } + + @Override + public org.jooq.examples.sqlserver.adventureworks.humanresources.tables.vJobCandidateEmployment as(java.lang.String alias) { + return new org.jooq.examples.sqlserver.adventureworks.humanresources.tables.vJobCandidateEmployment(alias); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/person/Keys.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/person/Keys.java new file mode 100644 index 00000000000..1dd5627646f --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/person/Keys.java @@ -0,0 +1,39 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.person; + +/** + * This class is generated by jOOQ. + * + * A class modelling foreign key relationships between tables of the Person schema + */ +@SuppressWarnings({"unchecked"}) +public class Keys extends org.jooq.impl.AbstractKeys { + + // IDENTITY definitions + public static final org.jooq.Identity IDENTITY_Address = createIdentity(org.jooq.examples.sqlserver.adventureworks.person.tables.Address.Address, org.jooq.examples.sqlserver.adventureworks.person.tables.Address.Address.AddressID); + public static final org.jooq.Identity IDENTITY_AddressType = createIdentity(org.jooq.examples.sqlserver.adventureworks.person.tables.AddressType.AddressType, org.jooq.examples.sqlserver.adventureworks.person.tables.AddressType.AddressType.AddressTypeID); + public static final org.jooq.Identity IDENTITY_Contact = createIdentity(org.jooq.examples.sqlserver.adventureworks.person.tables.Contact.Contact, org.jooq.examples.sqlserver.adventureworks.person.tables.Contact.Contact.ContactID); + public static final org.jooq.Identity IDENTITY_ContactType = createIdentity(org.jooq.examples.sqlserver.adventureworks.person.tables.ContactType.ContactType, org.jooq.examples.sqlserver.adventureworks.person.tables.ContactType.ContactType.ContactTypeID); + public static final org.jooq.Identity IDENTITY_StateProvince = createIdentity(org.jooq.examples.sqlserver.adventureworks.person.tables.StateProvince.StateProvince, org.jooq.examples.sqlserver.adventureworks.person.tables.StateProvince.StateProvince.StateProvinceID); + public static final org.jooq.Identity IDENTITY_vAdditionalContactInfo = createIdentity(org.jooq.examples.sqlserver.adventureworks.person.tables.vAdditionalContactInfo.vAdditionalContactInfo, org.jooq.examples.sqlserver.adventureworks.person.tables.vAdditionalContactInfo.vAdditionalContactInfo.ContactID); + + // UNIQUE and PRIMARY KEY definitions + public static final org.jooq.UniqueKey PK_Address_AddressID = createUniqueKey(org.jooq.examples.sqlserver.adventureworks.person.tables.Address.Address, org.jooq.examples.sqlserver.adventureworks.person.tables.Address.Address.AddressID); + public static final org.jooq.UniqueKey PK_AddressType_AddressTypeID = createUniqueKey(org.jooq.examples.sqlserver.adventureworks.person.tables.AddressType.AddressType, org.jooq.examples.sqlserver.adventureworks.person.tables.AddressType.AddressType.AddressTypeID); + public static final org.jooq.UniqueKey PK_Contact_ContactID = createUniqueKey(org.jooq.examples.sqlserver.adventureworks.person.tables.Contact.Contact, org.jooq.examples.sqlserver.adventureworks.person.tables.Contact.Contact.ContactID); + public static final org.jooq.UniqueKey PK_ContactType_ContactTypeID = createUniqueKey(org.jooq.examples.sqlserver.adventureworks.person.tables.ContactType.ContactType, org.jooq.examples.sqlserver.adventureworks.person.tables.ContactType.ContactType.ContactTypeID); + public static final org.jooq.UniqueKey PK_CountryRegion_CountryRegionCode = createUniqueKey(org.jooq.examples.sqlserver.adventureworks.person.tables.CountryRegion.CountryRegion, org.jooq.examples.sqlserver.adventureworks.person.tables.CountryRegion.CountryRegion.CountryRegionCode); + public static final org.jooq.UniqueKey PK_StateProvince_StateProvinceID = createUniqueKey(org.jooq.examples.sqlserver.adventureworks.person.tables.StateProvince.StateProvince, org.jooq.examples.sqlserver.adventureworks.person.tables.StateProvince.StateProvince.StateProvinceID); + + // FOREIGN KEY definitions + public static final org.jooq.ForeignKey FK_Address_StateProvince_StateProvinceID = createForeignKey(PK_StateProvince_StateProvinceID, org.jooq.examples.sqlserver.adventureworks.person.tables.Address.Address, org.jooq.examples.sqlserver.adventureworks.person.tables.Address.Address.StateProvinceID); + public static final org.jooq.ForeignKey FK_StateProvince_CountryRegion_CountryRegionCode = createForeignKey(PK_CountryRegion_CountryRegionCode, org.jooq.examples.sqlserver.adventureworks.person.tables.StateProvince.StateProvince, org.jooq.examples.sqlserver.adventureworks.person.tables.StateProvince.StateProvince.CountryRegionCode); + public static final org.jooq.ForeignKey FK_StateProvince_SalesTerritory_TerritoryID = createForeignKey(org.jooq.examples.sqlserver.adventureworks.sales.Keys.PK_SalesTerritory_TerritoryID, org.jooq.examples.sqlserver.adventureworks.person.tables.StateProvince.StateProvince, org.jooq.examples.sqlserver.adventureworks.person.tables.StateProvince.StateProvince.TerritoryID); + + /** + * No instances + */ + private Keys() {} +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/person/Person.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/person/Person.java new file mode 100644 index 00000000000..fdfe850d3e7 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/person/Person.java @@ -0,0 +1,37 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.person; + +/** + * This class is generated by jOOQ. + */ +public class Person extends org.jooq.impl.SchemaImpl { + + private static final long serialVersionUID = -198705809; + + /** + * The singleton instance of Person + */ + public static final Person Person = new Person(); + + /** + * No further instances allowed + */ + private Person() { + super("Person"); + } + + @Override + public final java.util.List> getTables() { + return java.util.Arrays.>asList( + org.jooq.examples.sqlserver.adventureworks.person.tables.Address.Address, + org.jooq.examples.sqlserver.adventureworks.person.tables.AddressType.AddressType, + org.jooq.examples.sqlserver.adventureworks.person.tables.Contact.Contact, + org.jooq.examples.sqlserver.adventureworks.person.tables.ContactType.ContactType, + org.jooq.examples.sqlserver.adventureworks.person.tables.CountryRegion.CountryRegion, + org.jooq.examples.sqlserver.adventureworks.person.tables.StateProvince.StateProvince, + org.jooq.examples.sqlserver.adventureworks.person.tables.vAdditionalContactInfo.vAdditionalContactInfo, + org.jooq.examples.sqlserver.adventureworks.person.tables.vStateProvinceCountryRegion.vStateProvinceCountryRegion); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/person/PersonFactory.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/person/PersonFactory.java new file mode 100644 index 00000000000..e7e8f17da2d --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/person/PersonFactory.java @@ -0,0 +1,41 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.person; + +/** + * This class is generated by jOOQ. + */ +public class PersonFactory extends org.jooq.util.sqlserver.SQLServerFactory { + + private static final long serialVersionUID = -716052976; + + /** + * Create a factory with a connection + * + * @param connection The connection to use with objects created from this factory + */ + public PersonFactory(java.sql.Connection connection) { + super(connection); + } + + /** + * Create a factory with a connection and a schema mapping + * + * @deprecated - 2.0.5 - Use {@link #PersonFactory(java.sql.Connection, org.jooq.conf.Settings)} instead + */ + @Deprecated + public PersonFactory(java.sql.Connection connection, org.jooq.SchemaMapping mapping) { + super(connection, mapping); + } + + /** + * Create a factory with a connection and some settings + * + * @param connection The connection to use with objects created from this factory + * @param settings The settings to apply to objects created from this factory + */ + public PersonFactory(java.sql.Connection connection, org.jooq.conf.Settings settings) { + super(connection, settings); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/person/Tables.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/person/Tables.java new file mode 100644 index 00000000000..61392ea916e --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/person/Tables.java @@ -0,0 +1,57 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.person; + +/** + * This class is generated by jOOQ. + * + * Convenience access to all tables in Person + */ +public final class Tables { + + /** + * The table Person.Address + */ + public static org.jooq.examples.sqlserver.adventureworks.person.tables.Address Address = org.jooq.examples.sqlserver.adventureworks.person.tables.Address.Address; + + /** + * The table Person.AddressType + */ + public static org.jooq.examples.sqlserver.adventureworks.person.tables.AddressType AddressType = org.jooq.examples.sqlserver.adventureworks.person.tables.AddressType.AddressType; + + /** + * The table Person.Contact + */ + public static org.jooq.examples.sqlserver.adventureworks.person.tables.Contact Contact = org.jooq.examples.sqlserver.adventureworks.person.tables.Contact.Contact; + + /** + * The table Person.ContactType + */ + public static org.jooq.examples.sqlserver.adventureworks.person.tables.ContactType ContactType = org.jooq.examples.sqlserver.adventureworks.person.tables.ContactType.ContactType; + + /** + * The table Person.CountryRegion + */ + public static org.jooq.examples.sqlserver.adventureworks.person.tables.CountryRegion CountryRegion = org.jooq.examples.sqlserver.adventureworks.person.tables.CountryRegion.CountryRegion; + + /** + * The table Person.StateProvince + */ + public static org.jooq.examples.sqlserver.adventureworks.person.tables.StateProvince StateProvince = org.jooq.examples.sqlserver.adventureworks.person.tables.StateProvince.StateProvince; + + /** + * The table Person.vAdditionalContactInfo + */ + public static org.jooq.examples.sqlserver.adventureworks.person.tables.vAdditionalContactInfo vAdditionalContactInfo = org.jooq.examples.sqlserver.adventureworks.person.tables.vAdditionalContactInfo.vAdditionalContactInfo; + + /** + * The table Person.vStateProvinceCountryRegion + */ + public static org.jooq.examples.sqlserver.adventureworks.person.tables.vStateProvinceCountryRegion vStateProvinceCountryRegion = org.jooq.examples.sqlserver.adventureworks.person.tables.vStateProvinceCountryRegion.vStateProvinceCountryRegion; + + /** + * No instances + */ + private Tables() {} +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/person/tables/Address.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/person/tables/Address.java new file mode 100644 index 00000000000..d2bac6d2a18 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/person/tables/Address.java @@ -0,0 +1,113 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.person.tables; + +/** + * This class is generated by jOOQ. + */ +public class Address extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = -486110837; + + /** + * The singleton instance of Person.Address + */ + public static final org.jooq.examples.sqlserver.adventureworks.person.tables.Address Address = new org.jooq.examples.sqlserver.adventureworks.person.tables.Address(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.examples.sqlserver.adventureworks.person.tables.records.Address.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final org.jooq.TableField AddressID = createField("AddressID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField AddressLine1 = createField("AddressLine1", org.jooq.impl.SQLDataType.NVARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField AddressLine2 = createField("AddressLine2", org.jooq.impl.SQLDataType.NVARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField City = createField("City", org.jooq.impl.SQLDataType.NVARCHAR, this); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_Address_StateProvince_StateProvinceID
+	 * FOREIGN KEY (StateProvinceID)
+	 * REFERENCES Person.StateProvince (StateProvinceID)
+	 * 
+ */ + public final org.jooq.TableField StateProvinceID = createField("StateProvinceID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField PostalCode = createField("PostalCode", org.jooq.impl.SQLDataType.NVARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField rowguid = createField("rowguid", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField ModifiedDate = createField("ModifiedDate", org.jooq.impl.SQLDataType.TIMESTAMP, this); + + public Address() { + super("Address", org.jooq.examples.sqlserver.adventureworks.person.Person.Person); + } + + public Address(java.lang.String alias) { + super(alias, org.jooq.examples.sqlserver.adventureworks.person.Person.Person, org.jooq.examples.sqlserver.adventureworks.person.tables.Address.Address); + } + + @Override + public org.jooq.Identity getIdentity() { + return org.jooq.examples.sqlserver.adventureworks.person.Keys.IDENTITY_Address; + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.examples.sqlserver.adventureworks.person.Keys.PK_Address_AddressID; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.examples.sqlserver.adventureworks.person.Keys.PK_Address_AddressID); + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getReferences() { + return java.util.Arrays.>asList(org.jooq.examples.sqlserver.adventureworks.person.Keys.FK_Address_StateProvince_StateProvinceID); + } + + @Override + public org.jooq.examples.sqlserver.adventureworks.person.tables.Address as(java.lang.String alias) { + return new org.jooq.examples.sqlserver.adventureworks.person.tables.Address(alias); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/person/tables/AddressType.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/person/tables/AddressType.java new file mode 100644 index 00000000000..8cb681aba77 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/person/tables/AddressType.java @@ -0,0 +1,81 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.person.tables; + +/** + * This class is generated by jOOQ. + */ +public class AddressType extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = 991886524; + + /** + * The singleton instance of Person.AddressType + */ + public static final org.jooq.examples.sqlserver.adventureworks.person.tables.AddressType AddressType = new org.jooq.examples.sqlserver.adventureworks.person.tables.AddressType(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.examples.sqlserver.adventureworks.person.tables.records.AddressType.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final org.jooq.TableField AddressTypeID = createField("AddressTypeID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField Name = createField("Name", org.jooq.impl.SQLDataType.NVARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField rowguid = createField("rowguid", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField ModifiedDate = createField("ModifiedDate", org.jooq.impl.SQLDataType.TIMESTAMP, this); + + public AddressType() { + super("AddressType", org.jooq.examples.sqlserver.adventureworks.person.Person.Person); + } + + public AddressType(java.lang.String alias) { + super(alias, org.jooq.examples.sqlserver.adventureworks.person.Person.Person, org.jooq.examples.sqlserver.adventureworks.person.tables.AddressType.AddressType); + } + + @Override + public org.jooq.Identity getIdentity() { + return org.jooq.examples.sqlserver.adventureworks.person.Keys.IDENTITY_AddressType; + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.examples.sqlserver.adventureworks.person.Keys.PK_AddressType_AddressTypeID; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.examples.sqlserver.adventureworks.person.Keys.PK_AddressType_AddressTypeID); + } + + @Override + public org.jooq.examples.sqlserver.adventureworks.person.tables.AddressType as(java.lang.String alias) { + return new org.jooq.examples.sqlserver.adventureworks.person.tables.AddressType(alias); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/person/tables/Contact.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/person/tables/Contact.java new file mode 100644 index 00000000000..d6cb974c487 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/person/tables/Contact.java @@ -0,0 +1,139 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.person.tables; + +/** + * This class is generated by jOOQ. + */ +public class Contact extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = 1023217011; + + /** + * The singleton instance of Person.Contact + */ + public static final org.jooq.examples.sqlserver.adventureworks.person.tables.Contact Contact = new org.jooq.examples.sqlserver.adventureworks.person.tables.Contact(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.examples.sqlserver.adventureworks.person.tables.records.Contact.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final org.jooq.TableField ContactID = createField("ContactID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField NameStyle = createField("NameStyle", org.jooq.impl.SQLDataType.BIT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField Title = createField("Title", org.jooq.impl.SQLDataType.NVARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField FirstName = createField("FirstName", org.jooq.impl.SQLDataType.NVARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField MiddleName = createField("MiddleName", org.jooq.impl.SQLDataType.NVARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField LastName = createField("LastName", org.jooq.impl.SQLDataType.NVARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField Suffix = createField("Suffix", org.jooq.impl.SQLDataType.NVARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField EmailAddress = createField("EmailAddress", org.jooq.impl.SQLDataType.NVARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField EmailPromotion = createField("EmailPromotion", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField Phone = createField("Phone", org.jooq.impl.SQLDataType.NVARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField PasswordHash = createField("PasswordHash", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField PasswordSalt = createField("PasswordSalt", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + * + * The SQL type of this item (xml, ) could not be mapped.
+ * Deserialising this field might not work! + */ + public final org.jooq.TableField AdditionalContactInfo = createField("AdditionalContactInfo", org.jooq.util.sqlserver.SQLServerDataType.getDefaultDataType("xml"), this); + + /** + * An uncommented item + */ + public final org.jooq.TableField rowguid = createField("rowguid", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField ModifiedDate = createField("ModifiedDate", org.jooq.impl.SQLDataType.TIMESTAMP, this); + + public Contact() { + super("Contact", org.jooq.examples.sqlserver.adventureworks.person.Person.Person); + } + + public Contact(java.lang.String alias) { + super(alias, org.jooq.examples.sqlserver.adventureworks.person.Person.Person, org.jooq.examples.sqlserver.adventureworks.person.tables.Contact.Contact); + } + + @Override + public org.jooq.Identity getIdentity() { + return org.jooq.examples.sqlserver.adventureworks.person.Keys.IDENTITY_Contact; + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.examples.sqlserver.adventureworks.person.Keys.PK_Contact_ContactID; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.examples.sqlserver.adventureworks.person.Keys.PK_Contact_ContactID); + } + + @Override + public org.jooq.examples.sqlserver.adventureworks.person.tables.Contact as(java.lang.String alias) { + return new org.jooq.examples.sqlserver.adventureworks.person.tables.Contact(alias); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/person/tables/ContactType.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/person/tables/ContactType.java new file mode 100644 index 00000000000..8e0a0d9931c --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/person/tables/ContactType.java @@ -0,0 +1,76 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.person.tables; + +/** + * This class is generated by jOOQ. + */ +public class ContactType extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = 746261022; + + /** + * The singleton instance of Person.ContactType + */ + public static final org.jooq.examples.sqlserver.adventureworks.person.tables.ContactType ContactType = new org.jooq.examples.sqlserver.adventureworks.person.tables.ContactType(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.examples.sqlserver.adventureworks.person.tables.records.ContactType.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final org.jooq.TableField ContactTypeID = createField("ContactTypeID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField Name = createField("Name", org.jooq.impl.SQLDataType.NVARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField ModifiedDate = createField("ModifiedDate", org.jooq.impl.SQLDataType.TIMESTAMP, this); + + public ContactType() { + super("ContactType", org.jooq.examples.sqlserver.adventureworks.person.Person.Person); + } + + public ContactType(java.lang.String alias) { + super(alias, org.jooq.examples.sqlserver.adventureworks.person.Person.Person, org.jooq.examples.sqlserver.adventureworks.person.tables.ContactType.ContactType); + } + + @Override + public org.jooq.Identity getIdentity() { + return org.jooq.examples.sqlserver.adventureworks.person.Keys.IDENTITY_ContactType; + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.examples.sqlserver.adventureworks.person.Keys.PK_ContactType_ContactTypeID; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.examples.sqlserver.adventureworks.person.Keys.PK_ContactType_ContactTypeID); + } + + @Override + public org.jooq.examples.sqlserver.adventureworks.person.tables.ContactType as(java.lang.String alias) { + return new org.jooq.examples.sqlserver.adventureworks.person.tables.ContactType(alias); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/person/tables/CountryRegion.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/person/tables/CountryRegion.java new file mode 100644 index 00000000000..c483112b160 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/person/tables/CountryRegion.java @@ -0,0 +1,71 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.person.tables; + +/** + * This class is generated by jOOQ. + */ +public class CountryRegion extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = -1922798317; + + /** + * The singleton instance of Person.CountryRegion + */ + public static final org.jooq.examples.sqlserver.adventureworks.person.tables.CountryRegion CountryRegion = new org.jooq.examples.sqlserver.adventureworks.person.tables.CountryRegion(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.examples.sqlserver.adventureworks.person.tables.records.CountryRegion.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final org.jooq.TableField CountryRegionCode = createField("CountryRegionCode", org.jooq.impl.SQLDataType.NVARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField Name = createField("Name", org.jooq.impl.SQLDataType.NVARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField ModifiedDate = createField("ModifiedDate", org.jooq.impl.SQLDataType.TIMESTAMP, this); + + public CountryRegion() { + super("CountryRegion", org.jooq.examples.sqlserver.adventureworks.person.Person.Person); + } + + public CountryRegion(java.lang.String alias) { + super(alias, org.jooq.examples.sqlserver.adventureworks.person.Person.Person, org.jooq.examples.sqlserver.adventureworks.person.tables.CountryRegion.CountryRegion); + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.examples.sqlserver.adventureworks.person.Keys.PK_CountryRegion_CountryRegionCode; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.examples.sqlserver.adventureworks.person.Keys.PK_CountryRegion_CountryRegionCode); + } + + @Override + public org.jooq.examples.sqlserver.adventureworks.person.tables.CountryRegion as(java.lang.String alias) { + return new org.jooq.examples.sqlserver.adventureworks.person.tables.CountryRegion(alias); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/person/tables/StateProvince.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/person/tables/StateProvince.java new file mode 100644 index 00000000000..b58d9394371 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/person/tables/StateProvince.java @@ -0,0 +1,119 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.person.tables; + +/** + * This class is generated by jOOQ. + */ +public class StateProvince extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = 646969579; + + /** + * The singleton instance of Person.StateProvince + */ + public static final org.jooq.examples.sqlserver.adventureworks.person.tables.StateProvince StateProvince = new org.jooq.examples.sqlserver.adventureworks.person.tables.StateProvince(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.examples.sqlserver.adventureworks.person.tables.records.StateProvince.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final org.jooq.TableField StateProvinceID = createField("StateProvinceID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField StateProvinceCode = createField("StateProvinceCode", org.jooq.impl.SQLDataType.NCHAR, this); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_StateProvince_CountryRegion_CountryRegionCode
+	 * FOREIGN KEY (CountryRegionCode)
+	 * REFERENCES Person.CountryRegion (CountryRegionCode)
+	 * 
+ */ + public final org.jooq.TableField CountryRegionCode = createField("CountryRegionCode", org.jooq.impl.SQLDataType.NVARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField IsOnlyStateProvinceFlag = createField("IsOnlyStateProvinceFlag", org.jooq.impl.SQLDataType.BIT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField Name = createField("Name", org.jooq.impl.SQLDataType.NVARCHAR, this); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_StateProvince_SalesTerritory_TerritoryID
+	 * FOREIGN KEY (TerritoryID)
+	 * REFERENCES Sales.SalesTerritory (TerritoryID)
+	 * 
+ */ + public final org.jooq.TableField TerritoryID = createField("TerritoryID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField rowguid = createField("rowguid", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField ModifiedDate = createField("ModifiedDate", org.jooq.impl.SQLDataType.TIMESTAMP, this); + + public StateProvince() { + super("StateProvince", org.jooq.examples.sqlserver.adventureworks.person.Person.Person); + } + + public StateProvince(java.lang.String alias) { + super(alias, org.jooq.examples.sqlserver.adventureworks.person.Person.Person, org.jooq.examples.sqlserver.adventureworks.person.tables.StateProvince.StateProvince); + } + + @Override + public org.jooq.Identity getIdentity() { + return org.jooq.examples.sqlserver.adventureworks.person.Keys.IDENTITY_StateProvince; + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.examples.sqlserver.adventureworks.person.Keys.PK_StateProvince_StateProvinceID; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.examples.sqlserver.adventureworks.person.Keys.PK_StateProvince_StateProvinceID); + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getReferences() { + return java.util.Arrays.>asList(org.jooq.examples.sqlserver.adventureworks.person.Keys.FK_StateProvince_CountryRegion_CountryRegionCode, org.jooq.examples.sqlserver.adventureworks.person.Keys.FK_StateProvince_SalesTerritory_TerritoryID); + } + + @Override + public org.jooq.examples.sqlserver.adventureworks.person.tables.StateProvince as(java.lang.String alias) { + return new org.jooq.examples.sqlserver.adventureworks.person.tables.StateProvince(alias); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/person/tables/pojos/Address.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/person/tables/pojos/Address.java new file mode 100644 index 00000000000..a43a66bf736 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/person/tables/pojos/Address.java @@ -0,0 +1,96 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.person.tables.pojos; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "Address", schema = "Person") +public class Address implements java.io.Serializable { + + private static final long serialVersionUID = -1004944940; + + private java.lang.Integer AddressID; + private java.lang.String AddressLine1; + private java.lang.String AddressLine2; + private java.lang.String City; + private java.lang.Integer StateProvinceID; + private java.lang.String PostalCode; + private java.lang.String rowguid; + private java.sql.Timestamp ModifiedDate; + + @javax.persistence.Id + @javax.persistence.Column(name = "AddressID", unique = true, nullable = false, precision = 10) + public java.lang.Integer getAddressID() { + return this.AddressID; + } + + public void setAddressID(java.lang.Integer AddressID) { + this.AddressID = AddressID; + } + + @javax.persistence.Column(name = "AddressLine1", nullable = false, length = 60) + public java.lang.String getAddressLine1() { + return this.AddressLine1; + } + + public void setAddressLine1(java.lang.String AddressLine1) { + this.AddressLine1 = AddressLine1; + } + + @javax.persistence.Column(name = "AddressLine2", length = 60) + public java.lang.String getAddressLine2() { + return this.AddressLine2; + } + + public void setAddressLine2(java.lang.String AddressLine2) { + this.AddressLine2 = AddressLine2; + } + + @javax.persistence.Column(name = "City", nullable = false, length = 30) + public java.lang.String getCity() { + return this.City; + } + + public void setCity(java.lang.String City) { + this.City = City; + } + + @javax.persistence.Column(name = "StateProvinceID", nullable = false, precision = 10) + public java.lang.Integer getStateProvinceID() { + return this.StateProvinceID; + } + + public void setStateProvinceID(java.lang.Integer StateProvinceID) { + this.StateProvinceID = StateProvinceID; + } + + @javax.persistence.Column(name = "PostalCode", nullable = false, length = 15) + public java.lang.String getPostalCode() { + return this.PostalCode; + } + + public void setPostalCode(java.lang.String PostalCode) { + this.PostalCode = PostalCode; + } + + @javax.persistence.Column(name = "rowguid", nullable = false) + public java.lang.String getrowguid() { + return this.rowguid; + } + + public void setrowguid(java.lang.String rowguid) { + this.rowguid = rowguid; + } + + @javax.persistence.Column(name = "ModifiedDate", nullable = false) + public java.sql.Timestamp getModifiedDate() { + return this.ModifiedDate; + } + + public void setModifiedDate(java.sql.Timestamp ModifiedDate) { + this.ModifiedDate = ModifiedDate; + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/person/tables/pojos/AddressType.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/person/tables/pojos/AddressType.java new file mode 100644 index 00000000000..0af64a345cd --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/person/tables/pojos/AddressType.java @@ -0,0 +1,56 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.person.tables.pojos; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "AddressType", schema = "Person") +public class AddressType implements java.io.Serializable { + + private static final long serialVersionUID = -1445238841; + + private java.lang.Integer AddressTypeID; + private java.lang.String Name; + private java.lang.String rowguid; + private java.sql.Timestamp ModifiedDate; + + @javax.persistence.Id + @javax.persistence.Column(name = "AddressTypeID", unique = true, nullable = false, precision = 10) + public java.lang.Integer getAddressTypeID() { + return this.AddressTypeID; + } + + public void setAddressTypeID(java.lang.Integer AddressTypeID) { + this.AddressTypeID = AddressTypeID; + } + + @javax.persistence.Column(name = "Name", nullable = false, length = 50) + public java.lang.String getName() { + return this.Name; + } + + public void setName(java.lang.String Name) { + this.Name = Name; + } + + @javax.persistence.Column(name = "rowguid", nullable = false) + public java.lang.String getrowguid() { + return this.rowguid; + } + + public void setrowguid(java.lang.String rowguid) { + this.rowguid = rowguid; + } + + @javax.persistence.Column(name = "ModifiedDate", nullable = false) + public java.sql.Timestamp getModifiedDate() { + return this.ModifiedDate; + } + + public void setModifiedDate(java.sql.Timestamp ModifiedDate) { + this.ModifiedDate = ModifiedDate; + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/person/tables/pojos/Contact.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/person/tables/pojos/Contact.java new file mode 100644 index 00000000000..20b045f65a9 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/person/tables/pojos/Contact.java @@ -0,0 +1,166 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.person.tables.pojos; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "Contact", schema = "Person") +public class Contact implements java.io.Serializable { + + private static final long serialVersionUID = -1592993605; + + private java.lang.Integer ContactID; + private java.lang.Boolean NameStyle; + private java.lang.String Title; + private java.lang.String FirstName; + private java.lang.String MiddleName; + private java.lang.String LastName; + private java.lang.String Suffix; + private java.lang.String EmailAddress; + private java.lang.Integer EmailPromotion; + private java.lang.String Phone; + private java.lang.String PasswordHash; + private java.lang.String PasswordSalt; + private java.lang.Object AdditionalContactInfo; + private java.lang.String rowguid; + private java.sql.Timestamp ModifiedDate; + + @javax.persistence.Id + @javax.persistence.Column(name = "ContactID", unique = true, nullable = false, precision = 10) + public java.lang.Integer getContactID() { + return this.ContactID; + } + + public void setContactID(java.lang.Integer ContactID) { + this.ContactID = ContactID; + } + + @javax.persistence.Column(name = "NameStyle", nullable = false) + public java.lang.Boolean getNameStyle() { + return this.NameStyle; + } + + public void setNameStyle(java.lang.Boolean NameStyle) { + this.NameStyle = NameStyle; + } + + @javax.persistence.Column(name = "Title", length = 8) + public java.lang.String getTitle() { + return this.Title; + } + + public void setTitle(java.lang.String Title) { + this.Title = Title; + } + + @javax.persistence.Column(name = "FirstName", nullable = false, length = 50) + public java.lang.String getFirstName() { + return this.FirstName; + } + + public void setFirstName(java.lang.String FirstName) { + this.FirstName = FirstName; + } + + @javax.persistence.Column(name = "MiddleName", length = 50) + public java.lang.String getMiddleName() { + return this.MiddleName; + } + + public void setMiddleName(java.lang.String MiddleName) { + this.MiddleName = MiddleName; + } + + @javax.persistence.Column(name = "LastName", nullable = false, length = 50) + public java.lang.String getLastName() { + return this.LastName; + } + + public void setLastName(java.lang.String LastName) { + this.LastName = LastName; + } + + @javax.persistence.Column(name = "Suffix", length = 10) + public java.lang.String getSuffix() { + return this.Suffix; + } + + public void setSuffix(java.lang.String Suffix) { + this.Suffix = Suffix; + } + + @javax.persistence.Column(name = "EmailAddress", length = 50) + public java.lang.String getEmailAddress() { + return this.EmailAddress; + } + + public void setEmailAddress(java.lang.String EmailAddress) { + this.EmailAddress = EmailAddress; + } + + @javax.persistence.Column(name = "EmailPromotion", nullable = false, precision = 10) + public java.lang.Integer getEmailPromotion() { + return this.EmailPromotion; + } + + public void setEmailPromotion(java.lang.Integer EmailPromotion) { + this.EmailPromotion = EmailPromotion; + } + + @javax.persistence.Column(name = "Phone", length = 25) + public java.lang.String getPhone() { + return this.Phone; + } + + public void setPhone(java.lang.String Phone) { + this.Phone = Phone; + } + + @javax.persistence.Column(name = "PasswordHash", nullable = false, length = 128) + public java.lang.String getPasswordHash() { + return this.PasswordHash; + } + + public void setPasswordHash(java.lang.String PasswordHash) { + this.PasswordHash = PasswordHash; + } + + @javax.persistence.Column(name = "PasswordSalt", nullable = false, length = 10) + public java.lang.String getPasswordSalt() { + return this.PasswordSalt; + } + + public void setPasswordSalt(java.lang.String PasswordSalt) { + this.PasswordSalt = PasswordSalt; + } + + @javax.persistence.Column(name = "AdditionalContactInfo") + public java.lang.Object getAdditionalContactInfo() { + return this.AdditionalContactInfo; + } + + public void setAdditionalContactInfo(java.lang.Object AdditionalContactInfo) { + this.AdditionalContactInfo = AdditionalContactInfo; + } + + @javax.persistence.Column(name = "rowguid", nullable = false) + public java.lang.String getrowguid() { + return this.rowguid; + } + + public void setrowguid(java.lang.String rowguid) { + this.rowguid = rowguid; + } + + @javax.persistence.Column(name = "ModifiedDate", nullable = false) + public java.sql.Timestamp getModifiedDate() { + return this.ModifiedDate; + } + + public void setModifiedDate(java.sql.Timestamp ModifiedDate) { + this.ModifiedDate = ModifiedDate; + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/person/tables/pojos/ContactType.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/person/tables/pojos/ContactType.java new file mode 100644 index 00000000000..23be68848d6 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/person/tables/pojos/ContactType.java @@ -0,0 +1,46 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.person.tables.pojos; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "ContactType", schema = "Person") +public class ContactType implements java.io.Serializable { + + private static final long serialVersionUID = 1778831552; + + private java.lang.Integer ContactTypeID; + private java.lang.String Name; + private java.sql.Timestamp ModifiedDate; + + @javax.persistence.Id + @javax.persistence.Column(name = "ContactTypeID", unique = true, nullable = false, precision = 10) + public java.lang.Integer getContactTypeID() { + return this.ContactTypeID; + } + + public void setContactTypeID(java.lang.Integer ContactTypeID) { + this.ContactTypeID = ContactTypeID; + } + + @javax.persistence.Column(name = "Name", nullable = false, length = 50) + public java.lang.String getName() { + return this.Name; + } + + public void setName(java.lang.String Name) { + this.Name = Name; + } + + @javax.persistence.Column(name = "ModifiedDate", nullable = false) + public java.sql.Timestamp getModifiedDate() { + return this.ModifiedDate; + } + + public void setModifiedDate(java.sql.Timestamp ModifiedDate) { + this.ModifiedDate = ModifiedDate; + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/person/tables/pojos/CountryRegion.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/person/tables/pojos/CountryRegion.java new file mode 100644 index 00000000000..a9b84f3c1e1 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/person/tables/pojos/CountryRegion.java @@ -0,0 +1,46 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.person.tables.pojos; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "CountryRegion", schema = "Person") +public class CountryRegion implements java.io.Serializable { + + private static final long serialVersionUID = -126439025; + + private java.lang.String CountryRegionCode; + private java.lang.String Name; + private java.sql.Timestamp ModifiedDate; + + @javax.persistence.Id + @javax.persistence.Column(name = "CountryRegionCode", unique = true, nullable = false, length = 3) + public java.lang.String getCountryRegionCode() { + return this.CountryRegionCode; + } + + public void setCountryRegionCode(java.lang.String CountryRegionCode) { + this.CountryRegionCode = CountryRegionCode; + } + + @javax.persistence.Column(name = "Name", nullable = false, length = 50) + public java.lang.String getName() { + return this.Name; + } + + public void setName(java.lang.String Name) { + this.Name = Name; + } + + @javax.persistence.Column(name = "ModifiedDate", nullable = false) + public java.sql.Timestamp getModifiedDate() { + return this.ModifiedDate; + } + + public void setModifiedDate(java.sql.Timestamp ModifiedDate) { + this.ModifiedDate = ModifiedDate; + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/person/tables/pojos/StateProvince.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/person/tables/pojos/StateProvince.java new file mode 100644 index 00000000000..f00b5e576ef --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/person/tables/pojos/StateProvince.java @@ -0,0 +1,96 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.person.tables.pojos; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "StateProvince", schema = "Person") +public class StateProvince implements java.io.Serializable { + + private static final long serialVersionUID = 1934281339; + + private java.lang.Integer StateProvinceID; + private java.lang.String StateProvinceCode; + private java.lang.String CountryRegionCode; + private java.lang.Boolean IsOnlyStateProvinceFlag; + private java.lang.String Name; + private java.lang.Integer TerritoryID; + private java.lang.String rowguid; + private java.sql.Timestamp ModifiedDate; + + @javax.persistence.Id + @javax.persistence.Column(name = "StateProvinceID", unique = true, nullable = false, precision = 10) + public java.lang.Integer getStateProvinceID() { + return this.StateProvinceID; + } + + public void setStateProvinceID(java.lang.Integer StateProvinceID) { + this.StateProvinceID = StateProvinceID; + } + + @javax.persistence.Column(name = "StateProvinceCode", nullable = false, length = 3) + public java.lang.String getStateProvinceCode() { + return this.StateProvinceCode; + } + + public void setStateProvinceCode(java.lang.String StateProvinceCode) { + this.StateProvinceCode = StateProvinceCode; + } + + @javax.persistence.Column(name = "CountryRegionCode", nullable = false, length = 3) + public java.lang.String getCountryRegionCode() { + return this.CountryRegionCode; + } + + public void setCountryRegionCode(java.lang.String CountryRegionCode) { + this.CountryRegionCode = CountryRegionCode; + } + + @javax.persistence.Column(name = "IsOnlyStateProvinceFlag", nullable = false) + public java.lang.Boolean getIsOnlyStateProvinceFlag() { + return this.IsOnlyStateProvinceFlag; + } + + public void setIsOnlyStateProvinceFlag(java.lang.Boolean IsOnlyStateProvinceFlag) { + this.IsOnlyStateProvinceFlag = IsOnlyStateProvinceFlag; + } + + @javax.persistence.Column(name = "Name", nullable = false, length = 50) + public java.lang.String getName() { + return this.Name; + } + + public void setName(java.lang.String Name) { + this.Name = Name; + } + + @javax.persistence.Column(name = "TerritoryID", nullable = false, precision = 10) + public java.lang.Integer getTerritoryID() { + return this.TerritoryID; + } + + public void setTerritoryID(java.lang.Integer TerritoryID) { + this.TerritoryID = TerritoryID; + } + + @javax.persistence.Column(name = "rowguid", nullable = false) + public java.lang.String getrowguid() { + return this.rowguid; + } + + public void setrowguid(java.lang.String rowguid) { + this.rowguid = rowguid; + } + + @javax.persistence.Column(name = "ModifiedDate", nullable = false) + public java.sql.Timestamp getModifiedDate() { + return this.ModifiedDate; + } + + public void setModifiedDate(java.sql.Timestamp ModifiedDate) { + this.ModifiedDate = ModifiedDate; + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/person/tables/pojos/vAdditionalContactInfo.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/person/tables/pojos/vAdditionalContactInfo.java new file mode 100644 index 00000000000..ecb3e57d370 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/person/tables/pojos/vAdditionalContactInfo.java @@ -0,0 +1,185 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.person.tables.pojos; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "vAdditionalContactInfo", schema = "Person") +public class vAdditionalContactInfo implements java.io.Serializable { + + private static final long serialVersionUID = -501133403; + + private java.lang.Integer ContactID; + private java.lang.String FirstName; + private java.lang.String MiddleName; + private java.lang.String LastName; + private java.lang.String TelephoneNumber; + private java.lang.String TelephoneSpecialInstructions; + private java.lang.String Street; + private java.lang.String City; + private java.lang.String StateProvince; + private java.lang.String PostalCode; + private java.lang.String CountryRegion; + private java.lang.String HomeAddressSpecialInstructions; + private java.lang.String EMailAddress; + private java.lang.String EMailSpecialInstructions; + private java.lang.String EMailTelephoneNumber; + private java.lang.String rowguid; + private java.sql.Timestamp ModifiedDate; + + @javax.persistence.Column(name = "ContactID", nullable = false, precision = 10) + public java.lang.Integer getContactID() { + return this.ContactID; + } + + public void setContactID(java.lang.Integer ContactID) { + this.ContactID = ContactID; + } + + @javax.persistence.Column(name = "FirstName", nullable = false, length = 50) + public java.lang.String getFirstName() { + return this.FirstName; + } + + public void setFirstName(java.lang.String FirstName) { + this.FirstName = FirstName; + } + + @javax.persistence.Column(name = "MiddleName", length = 50) + public java.lang.String getMiddleName() { + return this.MiddleName; + } + + public void setMiddleName(java.lang.String MiddleName) { + this.MiddleName = MiddleName; + } + + @javax.persistence.Column(name = "LastName", nullable = false, length = 50) + public java.lang.String getLastName() { + return this.LastName; + } + + public void setLastName(java.lang.String LastName) { + this.LastName = LastName; + } + + @javax.persistence.Column(name = "TelephoneNumber", length = 50) + public java.lang.String getTelephoneNumber() { + return this.TelephoneNumber; + } + + public void setTelephoneNumber(java.lang.String TelephoneNumber) { + this.TelephoneNumber = TelephoneNumber; + } + + @javax.persistence.Column(name = "TelephoneSpecialInstructions") + public java.lang.String getTelephoneSpecialInstructions() { + return this.TelephoneSpecialInstructions; + } + + public void setTelephoneSpecialInstructions(java.lang.String TelephoneSpecialInstructions) { + this.TelephoneSpecialInstructions = TelephoneSpecialInstructions; + } + + @javax.persistence.Column(name = "Street", length = 50) + public java.lang.String getStreet() { + return this.Street; + } + + public void setStreet(java.lang.String Street) { + this.Street = Street; + } + + @javax.persistence.Column(name = "City", length = 50) + public java.lang.String getCity() { + return this.City; + } + + public void setCity(java.lang.String City) { + this.City = City; + } + + @javax.persistence.Column(name = "StateProvince", length = 50) + public java.lang.String getStateProvince() { + return this.StateProvince; + } + + public void setStateProvince(java.lang.String StateProvince) { + this.StateProvince = StateProvince; + } + + @javax.persistence.Column(name = "PostalCode", length = 50) + public java.lang.String getPostalCode() { + return this.PostalCode; + } + + public void setPostalCode(java.lang.String PostalCode) { + this.PostalCode = PostalCode; + } + + @javax.persistence.Column(name = "CountryRegion", length = 50) + public java.lang.String getCountryRegion() { + return this.CountryRegion; + } + + public void setCountryRegion(java.lang.String CountryRegion) { + this.CountryRegion = CountryRegion; + } + + @javax.persistence.Column(name = "HomeAddressSpecialInstructions") + public java.lang.String getHomeAddressSpecialInstructions() { + return this.HomeAddressSpecialInstructions; + } + + public void setHomeAddressSpecialInstructions(java.lang.String HomeAddressSpecialInstructions) { + this.HomeAddressSpecialInstructions = HomeAddressSpecialInstructions; + } + + @javax.persistence.Column(name = "EMailAddress", length = 128) + public java.lang.String getEMailAddress() { + return this.EMailAddress; + } + + public void setEMailAddress(java.lang.String EMailAddress) { + this.EMailAddress = EMailAddress; + } + + @javax.persistence.Column(name = "EMailSpecialInstructions") + public java.lang.String getEMailSpecialInstructions() { + return this.EMailSpecialInstructions; + } + + public void setEMailSpecialInstructions(java.lang.String EMailSpecialInstructions) { + this.EMailSpecialInstructions = EMailSpecialInstructions; + } + + @javax.persistence.Column(name = "EMailTelephoneNumber", length = 50) + public java.lang.String getEMailTelephoneNumber() { + return this.EMailTelephoneNumber; + } + + public void setEMailTelephoneNumber(java.lang.String EMailTelephoneNumber) { + this.EMailTelephoneNumber = EMailTelephoneNumber; + } + + @javax.persistence.Column(name = "rowguid", nullable = false) + public java.lang.String getrowguid() { + return this.rowguid; + } + + public void setrowguid(java.lang.String rowguid) { + this.rowguid = rowguid; + } + + @javax.persistence.Column(name = "ModifiedDate", nullable = false) + public java.sql.Timestamp getModifiedDate() { + return this.ModifiedDate; + } + + public void setModifiedDate(java.sql.Timestamp ModifiedDate) { + this.ModifiedDate = ModifiedDate; + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/person/tables/pojos/vStateProvinceCountryRegion.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/person/tables/pojos/vStateProvinceCountryRegion.java new file mode 100644 index 00000000000..cc4d7b30d8c --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/person/tables/pojos/vStateProvinceCountryRegion.java @@ -0,0 +1,85 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.person.tables.pojos; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "vStateProvinceCountryRegion", schema = "Person") +public class vStateProvinceCountryRegion implements java.io.Serializable { + + private static final long serialVersionUID = 1320861080; + + private java.lang.Integer StateProvinceID; + private java.lang.String StateProvinceCode; + private java.lang.Boolean IsOnlyStateProvinceFlag; + private java.lang.String StateProvinceName; + private java.lang.Integer TerritoryID; + private java.lang.String CountryRegionCode; + private java.lang.String CountryRegionName; + + @javax.persistence.Column(name = "StateProvinceID", nullable = false, precision = 10) + public java.lang.Integer getStateProvinceID() { + return this.StateProvinceID; + } + + public void setStateProvinceID(java.lang.Integer StateProvinceID) { + this.StateProvinceID = StateProvinceID; + } + + @javax.persistence.Column(name = "StateProvinceCode", nullable = false, length = 3) + public java.lang.String getStateProvinceCode() { + return this.StateProvinceCode; + } + + public void setStateProvinceCode(java.lang.String StateProvinceCode) { + this.StateProvinceCode = StateProvinceCode; + } + + @javax.persistence.Column(name = "IsOnlyStateProvinceFlag", nullable = false) + public java.lang.Boolean getIsOnlyStateProvinceFlag() { + return this.IsOnlyStateProvinceFlag; + } + + public void setIsOnlyStateProvinceFlag(java.lang.Boolean IsOnlyStateProvinceFlag) { + this.IsOnlyStateProvinceFlag = IsOnlyStateProvinceFlag; + } + + @javax.persistence.Column(name = "StateProvinceName", nullable = false, length = 50) + public java.lang.String getStateProvinceName() { + return this.StateProvinceName; + } + + public void setStateProvinceName(java.lang.String StateProvinceName) { + this.StateProvinceName = StateProvinceName; + } + + @javax.persistence.Column(name = "TerritoryID", nullable = false, precision = 10) + public java.lang.Integer getTerritoryID() { + return this.TerritoryID; + } + + public void setTerritoryID(java.lang.Integer TerritoryID) { + this.TerritoryID = TerritoryID; + } + + @javax.persistence.Column(name = "CountryRegionCode", nullable = false, length = 3) + public java.lang.String getCountryRegionCode() { + return this.CountryRegionCode; + } + + public void setCountryRegionCode(java.lang.String CountryRegionCode) { + this.CountryRegionCode = CountryRegionCode; + } + + @javax.persistence.Column(name = "CountryRegionName", nullable = false, length = 50) + public java.lang.String getCountryRegionName() { + return this.CountryRegionName; + } + + public void setCountryRegionName(java.lang.String CountryRegionName) { + this.CountryRegionName = CountryRegionName; + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/person/tables/records/Address.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/person/tables/records/Address.java new file mode 100644 index 00000000000..feda84aea77 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/person/tables/records/Address.java @@ -0,0 +1,158 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.person.tables.records; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "Address", schema = "Person") +public class Address extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = -739542774; + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setAddressID(java.lang.Integer value) { + setValue(org.jooq.examples.sqlserver.adventureworks.person.tables.Address.Address.AddressID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + @javax.persistence.Id + @javax.persistence.Column(name = "AddressID", unique = true, nullable = false, precision = 10) + public java.lang.Integer getAddressID() { + return getValue(org.jooq.examples.sqlserver.adventureworks.person.tables.Address.Address.AddressID); + } + + /** + * An uncommented item + */ + public void setAddressLine1(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.person.tables.Address.Address.AddressLine1, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "AddressLine1", nullable = false, length = 60) + public java.lang.String getAddressLine1() { + return getValue(org.jooq.examples.sqlserver.adventureworks.person.tables.Address.Address.AddressLine1); + } + + /** + * An uncommented item + */ + public void setAddressLine2(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.person.tables.Address.Address.AddressLine2, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "AddressLine2", length = 60) + public java.lang.String getAddressLine2() { + return getValue(org.jooq.examples.sqlserver.adventureworks.person.tables.Address.Address.AddressLine2); + } + + /** + * An uncommented item + */ + public void setCity(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.person.tables.Address.Address.City, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "City", nullable = false, length = 30) + public java.lang.String getCity() { + return getValue(org.jooq.examples.sqlserver.adventureworks.person.tables.Address.Address.City); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_Address_StateProvince_StateProvinceID
+	 * FOREIGN KEY (StateProvinceID)
+	 * REFERENCES Person.StateProvince (StateProvinceID)
+	 * 
+ */ + public void setStateProvinceID(java.lang.Integer value) { + setValue(org.jooq.examples.sqlserver.adventureworks.person.tables.Address.Address.StateProvinceID, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_Address_StateProvince_StateProvinceID
+	 * FOREIGN KEY (StateProvinceID)
+	 * REFERENCES Person.StateProvince (StateProvinceID)
+	 * 
+ */ + @javax.persistence.Column(name = "StateProvinceID", nullable = false, precision = 10) + public java.lang.Integer getStateProvinceID() { + return getValue(org.jooq.examples.sqlserver.adventureworks.person.tables.Address.Address.StateProvinceID); + } + + /** + * An uncommented item + */ + public void setPostalCode(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.person.tables.Address.Address.PostalCode, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "PostalCode", nullable = false, length = 15) + public java.lang.String getPostalCode() { + return getValue(org.jooq.examples.sqlserver.adventureworks.person.tables.Address.Address.PostalCode); + } + + /** + * An uncommented item + */ + public void setrowguid(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.person.tables.Address.Address.rowguid, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "rowguid", nullable = false) + public java.lang.String getrowguid() { + return getValue(org.jooq.examples.sqlserver.adventureworks.person.tables.Address.Address.rowguid); + } + + /** + * An uncommented item + */ + public void setModifiedDate(java.sql.Timestamp value) { + setValue(org.jooq.examples.sqlserver.adventureworks.person.tables.Address.Address.ModifiedDate, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "ModifiedDate", nullable = false) + public java.sql.Timestamp getModifiedDate() { + return getValue(org.jooq.examples.sqlserver.adventureworks.person.tables.Address.Address.ModifiedDate); + } + + /** + * Create a detached Address + */ + public Address() { + super(org.jooq.examples.sqlserver.adventureworks.person.tables.Address.Address); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/person/tables/records/AddressType.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/person/tables/records/AddressType.java new file mode 100644 index 00000000000..e1c8c28bec3 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/person/tables/records/AddressType.java @@ -0,0 +1,86 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.person.tables.records; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "AddressType", schema = "Person") +public class AddressType extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = 1497064081; + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setAddressTypeID(java.lang.Integer value) { + setValue(org.jooq.examples.sqlserver.adventureworks.person.tables.AddressType.AddressType.AddressTypeID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + @javax.persistence.Id + @javax.persistence.Column(name = "AddressTypeID", unique = true, nullable = false, precision = 10) + public java.lang.Integer getAddressTypeID() { + return getValue(org.jooq.examples.sqlserver.adventureworks.person.tables.AddressType.AddressType.AddressTypeID); + } + + /** + * An uncommented item + */ + public void setName(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.person.tables.AddressType.AddressType.Name, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "Name", nullable = false, length = 50) + public java.lang.String getName() { + return getValue(org.jooq.examples.sqlserver.adventureworks.person.tables.AddressType.AddressType.Name); + } + + /** + * An uncommented item + */ + public void setrowguid(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.person.tables.AddressType.AddressType.rowguid, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "rowguid", nullable = false) + public java.lang.String getrowguid() { + return getValue(org.jooq.examples.sqlserver.adventureworks.person.tables.AddressType.AddressType.rowguid); + } + + /** + * An uncommented item + */ + public void setModifiedDate(java.sql.Timestamp value) { + setValue(org.jooq.examples.sqlserver.adventureworks.person.tables.AddressType.AddressType.ModifiedDate, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "ModifiedDate", nullable = false) + public java.sql.Timestamp getModifiedDate() { + return getValue(org.jooq.examples.sqlserver.adventureworks.person.tables.AddressType.AddressType.ModifiedDate); + } + + /** + * Create a detached AddressType + */ + public AddressType() { + super(org.jooq.examples.sqlserver.adventureworks.person.tables.AddressType.AddressType); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/person/tables/records/Contact.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/person/tables/records/Contact.java new file mode 100644 index 00000000000..b63e959cff7 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/person/tables/records/Contact.java @@ -0,0 +1,257 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.person.tables.records; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "Contact", schema = "Person") +public class Contact extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = -366491532; + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setContactID(java.lang.Integer value) { + setValue(org.jooq.examples.sqlserver.adventureworks.person.tables.Contact.Contact.ContactID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + @javax.persistence.Id + @javax.persistence.Column(name = "ContactID", unique = true, nullable = false, precision = 10) + public java.lang.Integer getContactID() { + return getValue(org.jooq.examples.sqlserver.adventureworks.person.tables.Contact.Contact.ContactID); + } + + /** + * An uncommented item + */ + public void setNameStyle(java.lang.Boolean value) { + setValue(org.jooq.examples.sqlserver.adventureworks.person.tables.Contact.Contact.NameStyle, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "NameStyle", nullable = false) + public java.lang.Boolean getNameStyle() { + return getValue(org.jooq.examples.sqlserver.adventureworks.person.tables.Contact.Contact.NameStyle); + } + + /** + * An uncommented item + */ + public void setTitle(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.person.tables.Contact.Contact.Title, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "Title", length = 8) + public java.lang.String getTitle() { + return getValue(org.jooq.examples.sqlserver.adventureworks.person.tables.Contact.Contact.Title); + } + + /** + * An uncommented item + */ + public void setFirstName(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.person.tables.Contact.Contact.FirstName, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "FirstName", nullable = false, length = 50) + public java.lang.String getFirstName() { + return getValue(org.jooq.examples.sqlserver.adventureworks.person.tables.Contact.Contact.FirstName); + } + + /** + * An uncommented item + */ + public void setMiddleName(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.person.tables.Contact.Contact.MiddleName, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "MiddleName", length = 50) + public java.lang.String getMiddleName() { + return getValue(org.jooq.examples.sqlserver.adventureworks.person.tables.Contact.Contact.MiddleName); + } + + /** + * An uncommented item + */ + public void setLastName(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.person.tables.Contact.Contact.LastName, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "LastName", nullable = false, length = 50) + public java.lang.String getLastName() { + return getValue(org.jooq.examples.sqlserver.adventureworks.person.tables.Contact.Contact.LastName); + } + + /** + * An uncommented item + */ + public void setSuffix(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.person.tables.Contact.Contact.Suffix, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "Suffix", length = 10) + public java.lang.String getSuffix() { + return getValue(org.jooq.examples.sqlserver.adventureworks.person.tables.Contact.Contact.Suffix); + } + + /** + * An uncommented item + */ + public void setEmailAddress(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.person.tables.Contact.Contact.EmailAddress, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "EmailAddress", length = 50) + public java.lang.String getEmailAddress() { + return getValue(org.jooq.examples.sqlserver.adventureworks.person.tables.Contact.Contact.EmailAddress); + } + + /** + * An uncommented item + */ + public void setEmailPromotion(java.lang.Integer value) { + setValue(org.jooq.examples.sqlserver.adventureworks.person.tables.Contact.Contact.EmailPromotion, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "EmailPromotion", nullable = false, precision = 10) + public java.lang.Integer getEmailPromotion() { + return getValue(org.jooq.examples.sqlserver.adventureworks.person.tables.Contact.Contact.EmailPromotion); + } + + /** + * An uncommented item + */ + public void setPhone(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.person.tables.Contact.Contact.Phone, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "Phone", length = 25) + public java.lang.String getPhone() { + return getValue(org.jooq.examples.sqlserver.adventureworks.person.tables.Contact.Contact.Phone); + } + + /** + * An uncommented item + */ + public void setPasswordHash(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.person.tables.Contact.Contact.PasswordHash, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "PasswordHash", nullable = false, length = 128) + public java.lang.String getPasswordHash() { + return getValue(org.jooq.examples.sqlserver.adventureworks.person.tables.Contact.Contact.PasswordHash); + } + + /** + * An uncommented item + */ + public void setPasswordSalt(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.person.tables.Contact.Contact.PasswordSalt, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "PasswordSalt", nullable = false, length = 10) + public java.lang.String getPasswordSalt() { + return getValue(org.jooq.examples.sqlserver.adventureworks.person.tables.Contact.Contact.PasswordSalt); + } + + /** + * An uncommented item + * + * The SQL type of this item (xml, ) could not be mapped.
+ * Deserialising this field might not work! + */ + public void setAdditionalContactInfo(java.lang.Object value) { + setValue(org.jooq.examples.sqlserver.adventureworks.person.tables.Contact.Contact.AdditionalContactInfo, value); + } + + /** + * An uncommented item + * + * The SQL type of this item (xml, ) could not be mapped.
+ * Deserialising this field might not work! + */ + @javax.persistence.Column(name = "AdditionalContactInfo") + public java.lang.Object getAdditionalContactInfo() { + return getValue(org.jooq.examples.sqlserver.adventureworks.person.tables.Contact.Contact.AdditionalContactInfo); + } + + /** + * An uncommented item + */ + public void setrowguid(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.person.tables.Contact.Contact.rowguid, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "rowguid", nullable = false) + public java.lang.String getrowguid() { + return getValue(org.jooq.examples.sqlserver.adventureworks.person.tables.Contact.Contact.rowguid); + } + + /** + * An uncommented item + */ + public void setModifiedDate(java.sql.Timestamp value) { + setValue(org.jooq.examples.sqlserver.adventureworks.person.tables.Contact.Contact.ModifiedDate, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "ModifiedDate", nullable = false) + public java.sql.Timestamp getModifiedDate() { + return getValue(org.jooq.examples.sqlserver.adventureworks.person.tables.Contact.Contact.ModifiedDate); + } + + /** + * Create a detached Contact + */ + public Contact() { + super(org.jooq.examples.sqlserver.adventureworks.person.tables.Contact.Contact); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/person/tables/records/ContactType.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/person/tables/records/ContactType.java new file mode 100644 index 00000000000..ef9d5c2c8ff --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/person/tables/records/ContactType.java @@ -0,0 +1,71 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.person.tables.records; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "ContactType", schema = "Person") +public class ContactType extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = -111002194; + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setContactTypeID(java.lang.Integer value) { + setValue(org.jooq.examples.sqlserver.adventureworks.person.tables.ContactType.ContactType.ContactTypeID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + @javax.persistence.Id + @javax.persistence.Column(name = "ContactTypeID", unique = true, nullable = false, precision = 10) + public java.lang.Integer getContactTypeID() { + return getValue(org.jooq.examples.sqlserver.adventureworks.person.tables.ContactType.ContactType.ContactTypeID); + } + + /** + * An uncommented item + */ + public void setName(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.person.tables.ContactType.ContactType.Name, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "Name", nullable = false, length = 50) + public java.lang.String getName() { + return getValue(org.jooq.examples.sqlserver.adventureworks.person.tables.ContactType.ContactType.Name); + } + + /** + * An uncommented item + */ + public void setModifiedDate(java.sql.Timestamp value) { + setValue(org.jooq.examples.sqlserver.adventureworks.person.tables.ContactType.ContactType.ModifiedDate, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "ModifiedDate", nullable = false) + public java.sql.Timestamp getModifiedDate() { + return getValue(org.jooq.examples.sqlserver.adventureworks.person.tables.ContactType.ContactType.ModifiedDate); + } + + /** + * Create a detached ContactType + */ + public ContactType() { + super(org.jooq.examples.sqlserver.adventureworks.person.tables.ContactType.ContactType); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/person/tables/records/CountryRegion.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/person/tables/records/CountryRegion.java new file mode 100644 index 00000000000..9eed7faca21 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/person/tables/records/CountryRegion.java @@ -0,0 +1,71 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.person.tables.records; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "CountryRegion", schema = "Person") +public class CountryRegion extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = 1811459010; + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setCountryRegionCode(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.person.tables.CountryRegion.CountryRegion.CountryRegionCode, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + @javax.persistence.Id + @javax.persistence.Column(name = "CountryRegionCode", unique = true, nullable = false, length = 3) + public java.lang.String getCountryRegionCode() { + return getValue(org.jooq.examples.sqlserver.adventureworks.person.tables.CountryRegion.CountryRegion.CountryRegionCode); + } + + /** + * An uncommented item + */ + public void setName(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.person.tables.CountryRegion.CountryRegion.Name, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "Name", nullable = false, length = 50) + public java.lang.String getName() { + return getValue(org.jooq.examples.sqlserver.adventureworks.person.tables.CountryRegion.CountryRegion.Name); + } + + /** + * An uncommented item + */ + public void setModifiedDate(java.sql.Timestamp value) { + setValue(org.jooq.examples.sqlserver.adventureworks.person.tables.CountryRegion.CountryRegion.ModifiedDate, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "ModifiedDate", nullable = false) + public java.sql.Timestamp getModifiedDate() { + return getValue(org.jooq.examples.sqlserver.adventureworks.person.tables.CountryRegion.CountryRegion.ModifiedDate); + } + + /** + * Create a detached CountryRegion + */ + public CountryRegion() { + super(org.jooq.examples.sqlserver.adventureworks.person.tables.CountryRegion.CountryRegion); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/person/tables/records/StateProvince.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/person/tables/records/StateProvince.java new file mode 100644 index 00000000000..f10bf0122a8 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/person/tables/records/StateProvince.java @@ -0,0 +1,170 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.person.tables.records; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "StateProvince", schema = "Person") +public class StateProvince extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = 927409794; + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setStateProvinceID(java.lang.Integer value) { + setValue(org.jooq.examples.sqlserver.adventureworks.person.tables.StateProvince.StateProvince.StateProvinceID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + @javax.persistence.Id + @javax.persistence.Column(name = "StateProvinceID", unique = true, nullable = false, precision = 10) + public java.lang.Integer getStateProvinceID() { + return getValue(org.jooq.examples.sqlserver.adventureworks.person.tables.StateProvince.StateProvince.StateProvinceID); + } + + /** + * An uncommented item + */ + public void setStateProvinceCode(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.person.tables.StateProvince.StateProvince.StateProvinceCode, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "StateProvinceCode", nullable = false, length = 3) + public java.lang.String getStateProvinceCode() { + return getValue(org.jooq.examples.sqlserver.adventureworks.person.tables.StateProvince.StateProvince.StateProvinceCode); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_StateProvince_CountryRegion_CountryRegionCode
+	 * FOREIGN KEY (CountryRegionCode)
+	 * REFERENCES Person.CountryRegion (CountryRegionCode)
+	 * 
+ */ + public void setCountryRegionCode(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.person.tables.StateProvince.StateProvince.CountryRegionCode, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_StateProvince_CountryRegion_CountryRegionCode
+	 * FOREIGN KEY (CountryRegionCode)
+	 * REFERENCES Person.CountryRegion (CountryRegionCode)
+	 * 
+ */ + @javax.persistence.Column(name = "CountryRegionCode", nullable = false, length = 3) + public java.lang.String getCountryRegionCode() { + return getValue(org.jooq.examples.sqlserver.adventureworks.person.tables.StateProvince.StateProvince.CountryRegionCode); + } + + /** + * An uncommented item + */ + public void setIsOnlyStateProvinceFlag(java.lang.Boolean value) { + setValue(org.jooq.examples.sqlserver.adventureworks.person.tables.StateProvince.StateProvince.IsOnlyStateProvinceFlag, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "IsOnlyStateProvinceFlag", nullable = false) + public java.lang.Boolean getIsOnlyStateProvinceFlag() { + return getValue(org.jooq.examples.sqlserver.adventureworks.person.tables.StateProvince.StateProvince.IsOnlyStateProvinceFlag); + } + + /** + * An uncommented item + */ + public void setName(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.person.tables.StateProvince.StateProvince.Name, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "Name", nullable = false, length = 50) + public java.lang.String getName() { + return getValue(org.jooq.examples.sqlserver.adventureworks.person.tables.StateProvince.StateProvince.Name); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_StateProvince_SalesTerritory_TerritoryID
+	 * FOREIGN KEY (TerritoryID)
+	 * REFERENCES Sales.SalesTerritory (TerritoryID)
+	 * 
+ */ + public void setTerritoryID(java.lang.Integer value) { + setValue(org.jooq.examples.sqlserver.adventureworks.person.tables.StateProvince.StateProvince.TerritoryID, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_StateProvince_SalesTerritory_TerritoryID
+	 * FOREIGN KEY (TerritoryID)
+	 * REFERENCES Sales.SalesTerritory (TerritoryID)
+	 * 
+ */ + @javax.persistence.Column(name = "TerritoryID", nullable = false, precision = 10) + public java.lang.Integer getTerritoryID() { + return getValue(org.jooq.examples.sqlserver.adventureworks.person.tables.StateProvince.StateProvince.TerritoryID); + } + + /** + * An uncommented item + */ + public void setrowguid(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.person.tables.StateProvince.StateProvince.rowguid, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "rowguid", nullable = false) + public java.lang.String getrowguid() { + return getValue(org.jooq.examples.sqlserver.adventureworks.person.tables.StateProvince.StateProvince.rowguid); + } + + /** + * An uncommented item + */ + public void setModifiedDate(java.sql.Timestamp value) { + setValue(org.jooq.examples.sqlserver.adventureworks.person.tables.StateProvince.StateProvince.ModifiedDate, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "ModifiedDate", nullable = false) + public java.sql.Timestamp getModifiedDate() { + return getValue(org.jooq.examples.sqlserver.adventureworks.person.tables.StateProvince.StateProvince.ModifiedDate); + } + + /** + * Create a detached StateProvince + */ + public StateProvince() { + super(org.jooq.examples.sqlserver.adventureworks.person.tables.StateProvince.StateProvince); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/person/tables/records/vAdditionalContactInfo.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/person/tables/records/vAdditionalContactInfo.java new file mode 100644 index 00000000000..7b89e2f1647 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/person/tables/records/vAdditionalContactInfo.java @@ -0,0 +1,276 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.person.tables.records; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "vAdditionalContactInfo", schema = "Person") +public class vAdditionalContactInfo extends org.jooq.impl.TableRecordImpl { + + private static final long serialVersionUID = -1853043052; + + /** + * An uncommented item + */ + public void setContactID(java.lang.Integer value) { + setValue(org.jooq.examples.sqlserver.adventureworks.person.tables.vAdditionalContactInfo.vAdditionalContactInfo.ContactID, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "ContactID", nullable = false, precision = 10) + public java.lang.Integer getContactID() { + return getValue(org.jooq.examples.sqlserver.adventureworks.person.tables.vAdditionalContactInfo.vAdditionalContactInfo.ContactID); + } + + /** + * An uncommented item + */ + public void setFirstName(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.person.tables.vAdditionalContactInfo.vAdditionalContactInfo.FirstName, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "FirstName", nullable = false, length = 50) + public java.lang.String getFirstName() { + return getValue(org.jooq.examples.sqlserver.adventureworks.person.tables.vAdditionalContactInfo.vAdditionalContactInfo.FirstName); + } + + /** + * An uncommented item + */ + public void setMiddleName(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.person.tables.vAdditionalContactInfo.vAdditionalContactInfo.MiddleName, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "MiddleName", length = 50) + public java.lang.String getMiddleName() { + return getValue(org.jooq.examples.sqlserver.adventureworks.person.tables.vAdditionalContactInfo.vAdditionalContactInfo.MiddleName); + } + + /** + * An uncommented item + */ + public void setLastName(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.person.tables.vAdditionalContactInfo.vAdditionalContactInfo.LastName, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "LastName", nullable = false, length = 50) + public java.lang.String getLastName() { + return getValue(org.jooq.examples.sqlserver.adventureworks.person.tables.vAdditionalContactInfo.vAdditionalContactInfo.LastName); + } + + /** + * An uncommented item + */ + public void setTelephoneNumber(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.person.tables.vAdditionalContactInfo.vAdditionalContactInfo.TelephoneNumber, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "TelephoneNumber", length = 50) + public java.lang.String getTelephoneNumber() { + return getValue(org.jooq.examples.sqlserver.adventureworks.person.tables.vAdditionalContactInfo.vAdditionalContactInfo.TelephoneNumber); + } + + /** + * An uncommented item + */ + public void setTelephoneSpecialInstructions(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.person.tables.vAdditionalContactInfo.vAdditionalContactInfo.TelephoneSpecialInstructions, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "TelephoneSpecialInstructions") + public java.lang.String getTelephoneSpecialInstructions() { + return getValue(org.jooq.examples.sqlserver.adventureworks.person.tables.vAdditionalContactInfo.vAdditionalContactInfo.TelephoneSpecialInstructions); + } + + /** + * An uncommented item + */ + public void setStreet(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.person.tables.vAdditionalContactInfo.vAdditionalContactInfo.Street, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "Street", length = 50) + public java.lang.String getStreet() { + return getValue(org.jooq.examples.sqlserver.adventureworks.person.tables.vAdditionalContactInfo.vAdditionalContactInfo.Street); + } + + /** + * An uncommented item + */ + public void setCity(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.person.tables.vAdditionalContactInfo.vAdditionalContactInfo.City, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "City", length = 50) + public java.lang.String getCity() { + return getValue(org.jooq.examples.sqlserver.adventureworks.person.tables.vAdditionalContactInfo.vAdditionalContactInfo.City); + } + + /** + * An uncommented item + */ + public void setStateProvince(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.person.tables.vAdditionalContactInfo.vAdditionalContactInfo.StateProvince, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "StateProvince", length = 50) + public java.lang.String getStateProvince() { + return getValue(org.jooq.examples.sqlserver.adventureworks.person.tables.vAdditionalContactInfo.vAdditionalContactInfo.StateProvince); + } + + /** + * An uncommented item + */ + public void setPostalCode(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.person.tables.vAdditionalContactInfo.vAdditionalContactInfo.PostalCode, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "PostalCode", length = 50) + public java.lang.String getPostalCode() { + return getValue(org.jooq.examples.sqlserver.adventureworks.person.tables.vAdditionalContactInfo.vAdditionalContactInfo.PostalCode); + } + + /** + * An uncommented item + */ + public void setCountryRegion(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.person.tables.vAdditionalContactInfo.vAdditionalContactInfo.CountryRegion, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "CountryRegion", length = 50) + public java.lang.String getCountryRegion() { + return getValue(org.jooq.examples.sqlserver.adventureworks.person.tables.vAdditionalContactInfo.vAdditionalContactInfo.CountryRegion); + } + + /** + * An uncommented item + */ + public void setHomeAddressSpecialInstructions(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.person.tables.vAdditionalContactInfo.vAdditionalContactInfo.HomeAddressSpecialInstructions, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "HomeAddressSpecialInstructions") + public java.lang.String getHomeAddressSpecialInstructions() { + return getValue(org.jooq.examples.sqlserver.adventureworks.person.tables.vAdditionalContactInfo.vAdditionalContactInfo.HomeAddressSpecialInstructions); + } + + /** + * An uncommented item + */ + public void setEMailAddress(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.person.tables.vAdditionalContactInfo.vAdditionalContactInfo.EMailAddress, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "EMailAddress", length = 128) + public java.lang.String getEMailAddress() { + return getValue(org.jooq.examples.sqlserver.adventureworks.person.tables.vAdditionalContactInfo.vAdditionalContactInfo.EMailAddress); + } + + /** + * An uncommented item + */ + public void setEMailSpecialInstructions(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.person.tables.vAdditionalContactInfo.vAdditionalContactInfo.EMailSpecialInstructions, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "EMailSpecialInstructions") + public java.lang.String getEMailSpecialInstructions() { + return getValue(org.jooq.examples.sqlserver.adventureworks.person.tables.vAdditionalContactInfo.vAdditionalContactInfo.EMailSpecialInstructions); + } + + /** + * An uncommented item + */ + public void setEMailTelephoneNumber(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.person.tables.vAdditionalContactInfo.vAdditionalContactInfo.EMailTelephoneNumber, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "EMailTelephoneNumber", length = 50) + public java.lang.String getEMailTelephoneNumber() { + return getValue(org.jooq.examples.sqlserver.adventureworks.person.tables.vAdditionalContactInfo.vAdditionalContactInfo.EMailTelephoneNumber); + } + + /** + * An uncommented item + */ + public void setrowguid(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.person.tables.vAdditionalContactInfo.vAdditionalContactInfo.rowguid, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "rowguid", nullable = false) + public java.lang.String getrowguid() { + return getValue(org.jooq.examples.sqlserver.adventureworks.person.tables.vAdditionalContactInfo.vAdditionalContactInfo.rowguid); + } + + /** + * An uncommented item + */ + public void setModifiedDate(java.sql.Timestamp value) { + setValue(org.jooq.examples.sqlserver.adventureworks.person.tables.vAdditionalContactInfo.vAdditionalContactInfo.ModifiedDate, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "ModifiedDate", nullable = false) + public java.sql.Timestamp getModifiedDate() { + return getValue(org.jooq.examples.sqlserver.adventureworks.person.tables.vAdditionalContactInfo.vAdditionalContactInfo.ModifiedDate); + } + + /** + * Create a detached vAdditionalContactInfo + */ + public vAdditionalContactInfo() { + super(org.jooq.examples.sqlserver.adventureworks.person.tables.vAdditionalContactInfo.vAdditionalContactInfo); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/person/tables/records/vStateProvinceCountryRegion.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/person/tables/records/vStateProvinceCountryRegion.java new file mode 100644 index 00000000000..c7cee3e0365 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/person/tables/records/vStateProvinceCountryRegion.java @@ -0,0 +1,126 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.person.tables.records; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "vStateProvinceCountryRegion", schema = "Person") +public class vStateProvinceCountryRegion extends org.jooq.impl.TableRecordImpl { + + private static final long serialVersionUID = -565144267; + + /** + * An uncommented item + */ + public void setStateProvinceID(java.lang.Integer value) { + setValue(org.jooq.examples.sqlserver.adventureworks.person.tables.vStateProvinceCountryRegion.vStateProvinceCountryRegion.StateProvinceID, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "StateProvinceID", nullable = false, precision = 10) + public java.lang.Integer getStateProvinceID() { + return getValue(org.jooq.examples.sqlserver.adventureworks.person.tables.vStateProvinceCountryRegion.vStateProvinceCountryRegion.StateProvinceID); + } + + /** + * An uncommented item + */ + public void setStateProvinceCode(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.person.tables.vStateProvinceCountryRegion.vStateProvinceCountryRegion.StateProvinceCode, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "StateProvinceCode", nullable = false, length = 3) + public java.lang.String getStateProvinceCode() { + return getValue(org.jooq.examples.sqlserver.adventureworks.person.tables.vStateProvinceCountryRegion.vStateProvinceCountryRegion.StateProvinceCode); + } + + /** + * An uncommented item + */ + public void setIsOnlyStateProvinceFlag(java.lang.Boolean value) { + setValue(org.jooq.examples.sqlserver.adventureworks.person.tables.vStateProvinceCountryRegion.vStateProvinceCountryRegion.IsOnlyStateProvinceFlag, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "IsOnlyStateProvinceFlag", nullable = false) + public java.lang.Boolean getIsOnlyStateProvinceFlag() { + return getValue(org.jooq.examples.sqlserver.adventureworks.person.tables.vStateProvinceCountryRegion.vStateProvinceCountryRegion.IsOnlyStateProvinceFlag); + } + + /** + * An uncommented item + */ + public void setStateProvinceName(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.person.tables.vStateProvinceCountryRegion.vStateProvinceCountryRegion.StateProvinceName, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "StateProvinceName", nullable = false, length = 50) + public java.lang.String getStateProvinceName() { + return getValue(org.jooq.examples.sqlserver.adventureworks.person.tables.vStateProvinceCountryRegion.vStateProvinceCountryRegion.StateProvinceName); + } + + /** + * An uncommented item + */ + public void setTerritoryID(java.lang.Integer value) { + setValue(org.jooq.examples.sqlserver.adventureworks.person.tables.vStateProvinceCountryRegion.vStateProvinceCountryRegion.TerritoryID, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "TerritoryID", nullable = false, precision = 10) + public java.lang.Integer getTerritoryID() { + return getValue(org.jooq.examples.sqlserver.adventureworks.person.tables.vStateProvinceCountryRegion.vStateProvinceCountryRegion.TerritoryID); + } + + /** + * An uncommented item + */ + public void setCountryRegionCode(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.person.tables.vStateProvinceCountryRegion.vStateProvinceCountryRegion.CountryRegionCode, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "CountryRegionCode", nullable = false, length = 3) + public java.lang.String getCountryRegionCode() { + return getValue(org.jooq.examples.sqlserver.adventureworks.person.tables.vStateProvinceCountryRegion.vStateProvinceCountryRegion.CountryRegionCode); + } + + /** + * An uncommented item + */ + public void setCountryRegionName(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.person.tables.vStateProvinceCountryRegion.vStateProvinceCountryRegion.CountryRegionName, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "CountryRegionName", nullable = false, length = 50) + public java.lang.String getCountryRegionName() { + return getValue(org.jooq.examples.sqlserver.adventureworks.person.tables.vStateProvinceCountryRegion.vStateProvinceCountryRegion.CountryRegionName); + } + + /** + * Create a detached vStateProvinceCountryRegion + */ + public vStateProvinceCountryRegion() { + super(org.jooq.examples.sqlserver.adventureworks.person.tables.vStateProvinceCountryRegion.vStateProvinceCountryRegion); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/person/tables/vAdditionalContactInfo.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/person/tables/vAdditionalContactInfo.java new file mode 100644 index 00000000000..8746bd644a8 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/person/tables/vAdditionalContactInfo.java @@ -0,0 +1,133 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.person.tables; + +/** + * This class is generated by jOOQ. + */ +public class vAdditionalContactInfo extends org.jooq.impl.TableImpl { + + private static final long serialVersionUID = -772764529; + + /** + * The singleton instance of Person.vAdditionalContactInfo + */ + public static final org.jooq.examples.sqlserver.adventureworks.person.tables.vAdditionalContactInfo vAdditionalContactInfo = new org.jooq.examples.sqlserver.adventureworks.person.tables.vAdditionalContactInfo(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.examples.sqlserver.adventureworks.person.tables.records.vAdditionalContactInfo.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + */ + public final org.jooq.TableField ContactID = createField("ContactID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField FirstName = createField("FirstName", org.jooq.impl.SQLDataType.NVARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField MiddleName = createField("MiddleName", org.jooq.impl.SQLDataType.NVARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField LastName = createField("LastName", org.jooq.impl.SQLDataType.NVARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField TelephoneNumber = createField("TelephoneNumber", org.jooq.impl.SQLDataType.NVARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField TelephoneSpecialInstructions = createField("TelephoneSpecialInstructions", org.jooq.impl.SQLDataType.NVARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField Street = createField("Street", org.jooq.impl.SQLDataType.NVARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField City = createField("City", org.jooq.impl.SQLDataType.NVARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField StateProvince = createField("StateProvince", org.jooq.impl.SQLDataType.NVARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField PostalCode = createField("PostalCode", org.jooq.impl.SQLDataType.NVARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField CountryRegion = createField("CountryRegion", org.jooq.impl.SQLDataType.NVARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField HomeAddressSpecialInstructions = createField("HomeAddressSpecialInstructions", org.jooq.impl.SQLDataType.NVARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField EMailAddress = createField("EMailAddress", org.jooq.impl.SQLDataType.NVARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField EMailSpecialInstructions = createField("EMailSpecialInstructions", org.jooq.impl.SQLDataType.NVARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField EMailTelephoneNumber = createField("EMailTelephoneNumber", org.jooq.impl.SQLDataType.NVARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField rowguid = createField("rowguid", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField ModifiedDate = createField("ModifiedDate", org.jooq.impl.SQLDataType.TIMESTAMP, this); + + public vAdditionalContactInfo() { + super("vAdditionalContactInfo", org.jooq.examples.sqlserver.adventureworks.person.Person.Person); + } + + public vAdditionalContactInfo(java.lang.String alias) { + super(alias, org.jooq.examples.sqlserver.adventureworks.person.Person.Person, org.jooq.examples.sqlserver.adventureworks.person.tables.vAdditionalContactInfo.vAdditionalContactInfo); + } + + @Override + public org.jooq.Identity getIdentity() { + return org.jooq.examples.sqlserver.adventureworks.person.Keys.IDENTITY_vAdditionalContactInfo; + } + + @Override + public org.jooq.examples.sqlserver.adventureworks.person.tables.vAdditionalContactInfo as(java.lang.String alias) { + return new org.jooq.examples.sqlserver.adventureworks.person.tables.vAdditionalContactInfo(alias); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/person/tables/vStateProvinceCountryRegion.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/person/tables/vStateProvinceCountryRegion.java new file mode 100644 index 00000000000..ab7cc1ce0a4 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/person/tables/vStateProvinceCountryRegion.java @@ -0,0 +1,78 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.person.tables; + +/** + * This class is generated by jOOQ. + */ +public class vStateProvinceCountryRegion extends org.jooq.impl.TableImpl { + + private static final long serialVersionUID = 772993938; + + /** + * The singleton instance of Person.vStateProvinceCountryRegion + */ + public static final org.jooq.examples.sqlserver.adventureworks.person.tables.vStateProvinceCountryRegion vStateProvinceCountryRegion = new org.jooq.examples.sqlserver.adventureworks.person.tables.vStateProvinceCountryRegion(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.examples.sqlserver.adventureworks.person.tables.records.vStateProvinceCountryRegion.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + */ + public final org.jooq.TableField StateProvinceID = createField("StateProvinceID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField StateProvinceCode = createField("StateProvinceCode", org.jooq.impl.SQLDataType.NCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField IsOnlyStateProvinceFlag = createField("IsOnlyStateProvinceFlag", org.jooq.impl.SQLDataType.BIT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField StateProvinceName = createField("StateProvinceName", org.jooq.impl.SQLDataType.NVARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField TerritoryID = createField("TerritoryID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField CountryRegionCode = createField("CountryRegionCode", org.jooq.impl.SQLDataType.NVARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField CountryRegionName = createField("CountryRegionName", org.jooq.impl.SQLDataType.NVARCHAR, this); + + public vStateProvinceCountryRegion() { + super("vStateProvinceCountryRegion", org.jooq.examples.sqlserver.adventureworks.person.Person.Person); + } + + public vStateProvinceCountryRegion(java.lang.String alias) { + super(alias, org.jooq.examples.sqlserver.adventureworks.person.Person.Person, org.jooq.examples.sqlserver.adventureworks.person.tables.vStateProvinceCountryRegion.vStateProvinceCountryRegion); + } + + @Override + public org.jooq.examples.sqlserver.adventureworks.person.tables.vStateProvinceCountryRegion as(java.lang.String alias) { + return new org.jooq.examples.sqlserver.adventureworks.person.tables.vStateProvinceCountryRegion(alias); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/Keys.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/Keys.java new file mode 100644 index 00000000000..3c2c6e6f3cc --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/Keys.java @@ -0,0 +1,92 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.production; + +/** + * This class is generated by jOOQ. + * + * A class modelling foreign key relationships between tables of the Production schema + */ +@SuppressWarnings({"unchecked"}) +public class Keys extends org.jooq.impl.AbstractKeys { + + // IDENTITY definitions + public static final org.jooq.Identity IDENTITY_BillOfMaterials = createIdentity(org.jooq.examples.sqlserver.adventureworks.production.tables.BillOfMaterials.BillOfMaterials, org.jooq.examples.sqlserver.adventureworks.production.tables.BillOfMaterials.BillOfMaterials.BillOfMaterialsID); + public static final org.jooq.Identity IDENTITY_Document = createIdentity(org.jooq.examples.sqlserver.adventureworks.production.tables.Document.Document, org.jooq.examples.sqlserver.adventureworks.production.tables.Document.Document.DocumentID); + public static final org.jooq.Identity IDENTITY_Illustration = createIdentity(org.jooq.examples.sqlserver.adventureworks.production.tables.Illustration.Illustration, org.jooq.examples.sqlserver.adventureworks.production.tables.Illustration.Illustration.IllustrationID); + public static final org.jooq.Identity IDENTITY_Location = createIdentity(org.jooq.examples.sqlserver.adventureworks.production.tables.Location.Location, org.jooq.examples.sqlserver.adventureworks.production.tables.Location.Location.LocationID); + public static final org.jooq.Identity IDENTITY_Product = createIdentity(org.jooq.examples.sqlserver.adventureworks.production.tables.Product.Product, org.jooq.examples.sqlserver.adventureworks.production.tables.Product.Product.ProductID); + public static final org.jooq.Identity IDENTITY_ProductCategory = createIdentity(org.jooq.examples.sqlserver.adventureworks.production.tables.ProductCategory.ProductCategory, org.jooq.examples.sqlserver.adventureworks.production.tables.ProductCategory.ProductCategory.ProductCategoryID); + public static final org.jooq.Identity IDENTITY_ProductDescription = createIdentity(org.jooq.examples.sqlserver.adventureworks.production.tables.ProductDescription.ProductDescription, org.jooq.examples.sqlserver.adventureworks.production.tables.ProductDescription.ProductDescription.ProductDescriptionID); + public static final org.jooq.Identity IDENTITY_ProductModel = createIdentity(org.jooq.examples.sqlserver.adventureworks.production.tables.ProductModel.ProductModel, org.jooq.examples.sqlserver.adventureworks.production.tables.ProductModel.ProductModel.ProductModelID); + public static final org.jooq.Identity IDENTITY_ProductPhoto = createIdentity(org.jooq.examples.sqlserver.adventureworks.production.tables.ProductPhoto.ProductPhoto, org.jooq.examples.sqlserver.adventureworks.production.tables.ProductPhoto.ProductPhoto.ProductPhotoID); + public static final org.jooq.Identity IDENTITY_ProductReview = createIdentity(org.jooq.examples.sqlserver.adventureworks.production.tables.ProductReview.ProductReview, org.jooq.examples.sqlserver.adventureworks.production.tables.ProductReview.ProductReview.ProductReviewID); + public static final org.jooq.Identity IDENTITY_ProductSubcategory = createIdentity(org.jooq.examples.sqlserver.adventureworks.production.tables.ProductSubcategory.ProductSubcategory, org.jooq.examples.sqlserver.adventureworks.production.tables.ProductSubcategory.ProductSubcategory.ProductSubcategoryID); + public static final org.jooq.Identity IDENTITY_ScrapReason = createIdentity(org.jooq.examples.sqlserver.adventureworks.production.tables.ScrapReason.ScrapReason, org.jooq.examples.sqlserver.adventureworks.production.tables.ScrapReason.ScrapReason.ScrapReasonID); + public static final org.jooq.Identity IDENTITY_TransactionHistory = createIdentity(org.jooq.examples.sqlserver.adventureworks.production.tables.TransactionHistory.TransactionHistory, org.jooq.examples.sqlserver.adventureworks.production.tables.TransactionHistory.TransactionHistory.TransactionID); + public static final org.jooq.Identity IDENTITY_vProductModelCatalogDescription = createIdentity(org.jooq.examples.sqlserver.adventureworks.production.tables.vProductModelCatalogDescription.vProductModelCatalogDescription, org.jooq.examples.sqlserver.adventureworks.production.tables.vProductModelCatalogDescription.vProductModelCatalogDescription.ProductModelID); + public static final org.jooq.Identity IDENTITY_vProductModelInstructions = createIdentity(org.jooq.examples.sqlserver.adventureworks.production.tables.vProductModelInstructions.vProductModelInstructions, org.jooq.examples.sqlserver.adventureworks.production.tables.vProductModelInstructions.vProductModelInstructions.ProductModelID); + public static final org.jooq.Identity IDENTITY_WorkOrder = createIdentity(org.jooq.examples.sqlserver.adventureworks.production.tables.WorkOrder.WorkOrder, org.jooq.examples.sqlserver.adventureworks.production.tables.WorkOrder.WorkOrder.WorkOrderID); + + // UNIQUE and PRIMARY KEY definitions + public static final org.jooq.UniqueKey PK_BillOfMaterials_BillOfMaterialsID = createUniqueKey(org.jooq.examples.sqlserver.adventureworks.production.tables.BillOfMaterials.BillOfMaterials, org.jooq.examples.sqlserver.adventureworks.production.tables.BillOfMaterials.BillOfMaterials.BillOfMaterialsID); + public static final org.jooq.UniqueKey PK_Culture_CultureID = createUniqueKey(org.jooq.examples.sqlserver.adventureworks.production.tables.Culture.Culture, org.jooq.examples.sqlserver.adventureworks.production.tables.Culture.Culture.CultureID); + public static final org.jooq.UniqueKey PK_Document_DocumentID = createUniqueKey(org.jooq.examples.sqlserver.adventureworks.production.tables.Document.Document, org.jooq.examples.sqlserver.adventureworks.production.tables.Document.Document.DocumentID); + public static final org.jooq.UniqueKey PK_Illustration_IllustrationID = createUniqueKey(org.jooq.examples.sqlserver.adventureworks.production.tables.Illustration.Illustration, org.jooq.examples.sqlserver.adventureworks.production.tables.Illustration.Illustration.IllustrationID); + public static final org.jooq.UniqueKey PK_Location_LocationID = createUniqueKey(org.jooq.examples.sqlserver.adventureworks.production.tables.Location.Location, org.jooq.examples.sqlserver.adventureworks.production.tables.Location.Location.LocationID); + public static final org.jooq.UniqueKey PK_Product_ProductID = createUniqueKey(org.jooq.examples.sqlserver.adventureworks.production.tables.Product.Product, org.jooq.examples.sqlserver.adventureworks.production.tables.Product.Product.ProductID); + public static final org.jooq.UniqueKey PK_ProductCategory_ProductCategoryID = createUniqueKey(org.jooq.examples.sqlserver.adventureworks.production.tables.ProductCategory.ProductCategory, org.jooq.examples.sqlserver.adventureworks.production.tables.ProductCategory.ProductCategory.ProductCategoryID); + public static final org.jooq.UniqueKey PK_ProductCostHistory_ProductID_StartDate = createUniqueKey(org.jooq.examples.sqlserver.adventureworks.production.tables.ProductCostHistory.ProductCostHistory, org.jooq.examples.sqlserver.adventureworks.production.tables.ProductCostHistory.ProductCostHistory.ProductID, org.jooq.examples.sqlserver.adventureworks.production.tables.ProductCostHistory.ProductCostHistory.StartDate); + public static final org.jooq.UniqueKey PK_ProductDescription_ProductDescriptionID = createUniqueKey(org.jooq.examples.sqlserver.adventureworks.production.tables.ProductDescription.ProductDescription, org.jooq.examples.sqlserver.adventureworks.production.tables.ProductDescription.ProductDescription.ProductDescriptionID); + public static final org.jooq.UniqueKey PK_ProductDocument_ProductID_DocumentID = createUniqueKey(org.jooq.examples.sqlserver.adventureworks.production.tables.ProductDocument.ProductDocument, org.jooq.examples.sqlserver.adventureworks.production.tables.ProductDocument.ProductDocument.ProductID, org.jooq.examples.sqlserver.adventureworks.production.tables.ProductDocument.ProductDocument.DocumentID); + public static final org.jooq.UniqueKey PK_ProductInventory_ProductID_LocationID = createUniqueKey(org.jooq.examples.sqlserver.adventureworks.production.tables.ProductInventory.ProductInventory, org.jooq.examples.sqlserver.adventureworks.production.tables.ProductInventory.ProductInventory.ProductID, org.jooq.examples.sqlserver.adventureworks.production.tables.ProductInventory.ProductInventory.LocationID); + public static final org.jooq.UniqueKey PK_ProductListPriceHistory_ProductID_StartDate = createUniqueKey(org.jooq.examples.sqlserver.adventureworks.production.tables.ProductListPriceHistory.ProductListPriceHistory, org.jooq.examples.sqlserver.adventureworks.production.tables.ProductListPriceHistory.ProductListPriceHistory.ProductID, org.jooq.examples.sqlserver.adventureworks.production.tables.ProductListPriceHistory.ProductListPriceHistory.StartDate); + public static final org.jooq.UniqueKey PK_ProductModel_ProductModelID = createUniqueKey(org.jooq.examples.sqlserver.adventureworks.production.tables.ProductModel.ProductModel, org.jooq.examples.sqlserver.adventureworks.production.tables.ProductModel.ProductModel.ProductModelID); + public static final org.jooq.UniqueKey PK_ProductModelIllustration_ProductModelID_IllustrationID = createUniqueKey(org.jooq.examples.sqlserver.adventureworks.production.tables.ProductModelIllustration.ProductModelIllustration, org.jooq.examples.sqlserver.adventureworks.production.tables.ProductModelIllustration.ProductModelIllustration.ProductModelID, org.jooq.examples.sqlserver.adventureworks.production.tables.ProductModelIllustration.ProductModelIllustration.IllustrationID); + public static final org.jooq.UniqueKey PK_ProductModelProductDescriptionCulture_ProductModelID_ProductDescriptionID_CultureID = createUniqueKey(org.jooq.examples.sqlserver.adventureworks.production.tables.ProductModelProductDescriptionCulture.ProductModelProductDescriptionCulture, org.jooq.examples.sqlserver.adventureworks.production.tables.ProductModelProductDescriptionCulture.ProductModelProductDescriptionCulture.ProductModelID, org.jooq.examples.sqlserver.adventureworks.production.tables.ProductModelProductDescriptionCulture.ProductModelProductDescriptionCulture.ProductDescriptionID, org.jooq.examples.sqlserver.adventureworks.production.tables.ProductModelProductDescriptionCulture.ProductModelProductDescriptionCulture.CultureID); + public static final org.jooq.UniqueKey PK_ProductPhoto_ProductPhotoID = createUniqueKey(org.jooq.examples.sqlserver.adventureworks.production.tables.ProductPhoto.ProductPhoto, org.jooq.examples.sqlserver.adventureworks.production.tables.ProductPhoto.ProductPhoto.ProductPhotoID); + public static final org.jooq.UniqueKey PK_ProductProductPhoto_ProductID_ProductPhotoID = createUniqueKey(org.jooq.examples.sqlserver.adventureworks.production.tables.ProductProductPhoto.ProductProductPhoto, org.jooq.examples.sqlserver.adventureworks.production.tables.ProductProductPhoto.ProductProductPhoto.ProductID, org.jooq.examples.sqlserver.adventureworks.production.tables.ProductProductPhoto.ProductProductPhoto.ProductPhotoID); + public static final org.jooq.UniqueKey PK_ProductReview_ProductReviewID = createUniqueKey(org.jooq.examples.sqlserver.adventureworks.production.tables.ProductReview.ProductReview, org.jooq.examples.sqlserver.adventureworks.production.tables.ProductReview.ProductReview.ProductReviewID); + public static final org.jooq.UniqueKey PK_ProductSubcategory_ProductSubcategoryID = createUniqueKey(org.jooq.examples.sqlserver.adventureworks.production.tables.ProductSubcategory.ProductSubcategory, org.jooq.examples.sqlserver.adventureworks.production.tables.ProductSubcategory.ProductSubcategory.ProductSubcategoryID); + public static final org.jooq.UniqueKey PK_ScrapReason_ScrapReasonID = createUniqueKey(org.jooq.examples.sqlserver.adventureworks.production.tables.ScrapReason.ScrapReason, org.jooq.examples.sqlserver.adventureworks.production.tables.ScrapReason.ScrapReason.ScrapReasonID); + public static final org.jooq.UniqueKey PK_TransactionHistory_TransactionID = createUniqueKey(org.jooq.examples.sqlserver.adventureworks.production.tables.TransactionHistory.TransactionHistory, org.jooq.examples.sqlserver.adventureworks.production.tables.TransactionHistory.TransactionHistory.TransactionID); + public static final org.jooq.UniqueKey PK_TransactionHistoryArchive_TransactionID = createUniqueKey(org.jooq.examples.sqlserver.adventureworks.production.tables.TransactionHistoryArchive.TransactionHistoryArchive, org.jooq.examples.sqlserver.adventureworks.production.tables.TransactionHistoryArchive.TransactionHistoryArchive.TransactionID); + public static final org.jooq.UniqueKey PK_UnitMeasure_UnitMeasureCode = createUniqueKey(org.jooq.examples.sqlserver.adventureworks.production.tables.UnitMeasure.UnitMeasure, org.jooq.examples.sqlserver.adventureworks.production.tables.UnitMeasure.UnitMeasure.UnitMeasureCode); + public static final org.jooq.UniqueKey PK_WorkOrder_WorkOrderID = createUniqueKey(org.jooq.examples.sqlserver.adventureworks.production.tables.WorkOrder.WorkOrder, org.jooq.examples.sqlserver.adventureworks.production.tables.WorkOrder.WorkOrder.WorkOrderID); + public static final org.jooq.UniqueKey PK_WorkOrderRouting_WorkOrderID_ProductID_OperationSequence = createUniqueKey(org.jooq.examples.sqlserver.adventureworks.production.tables.WorkOrderRouting.WorkOrderRouting, org.jooq.examples.sqlserver.adventureworks.production.tables.WorkOrderRouting.WorkOrderRouting.WorkOrderID, org.jooq.examples.sqlserver.adventureworks.production.tables.WorkOrderRouting.WorkOrderRouting.ProductID, org.jooq.examples.sqlserver.adventureworks.production.tables.WorkOrderRouting.WorkOrderRouting.OperationSequence); + + // FOREIGN KEY definitions + public static final org.jooq.ForeignKey FK_BillOfMaterials_Product_ProductAssemblyID = createForeignKey(PK_Product_ProductID, org.jooq.examples.sqlserver.adventureworks.production.tables.BillOfMaterials.BillOfMaterials, org.jooq.examples.sqlserver.adventureworks.production.tables.BillOfMaterials.BillOfMaterials.ProductAssemblyID); + public static final org.jooq.ForeignKey FK_BillOfMaterials_Product_ComponentID = createForeignKey(PK_Product_ProductID, org.jooq.examples.sqlserver.adventureworks.production.tables.BillOfMaterials.BillOfMaterials, org.jooq.examples.sqlserver.adventureworks.production.tables.BillOfMaterials.BillOfMaterials.ComponentID); + public static final org.jooq.ForeignKey FK_BillOfMaterials_UnitMeasure_UnitMeasureCode = createForeignKey(PK_UnitMeasure_UnitMeasureCode, org.jooq.examples.sqlserver.adventureworks.production.tables.BillOfMaterials.BillOfMaterials, org.jooq.examples.sqlserver.adventureworks.production.tables.BillOfMaterials.BillOfMaterials.UnitMeasureCode); + public static final org.jooq.ForeignKey FK_Product_UnitMeasure_SizeUnitMeasureCode = createForeignKey(PK_UnitMeasure_UnitMeasureCode, org.jooq.examples.sqlserver.adventureworks.production.tables.Product.Product, org.jooq.examples.sqlserver.adventureworks.production.tables.Product.Product.SizeUnitMeasureCode); + public static final org.jooq.ForeignKey FK_Product_UnitMeasure_WeightUnitMeasureCode = createForeignKey(PK_UnitMeasure_UnitMeasureCode, org.jooq.examples.sqlserver.adventureworks.production.tables.Product.Product, org.jooq.examples.sqlserver.adventureworks.production.tables.Product.Product.WeightUnitMeasureCode); + public static final org.jooq.ForeignKey FK_Product_ProductSubcategory_ProductSubcategoryID = createForeignKey(PK_ProductSubcategory_ProductSubcategoryID, org.jooq.examples.sqlserver.adventureworks.production.tables.Product.Product, org.jooq.examples.sqlserver.adventureworks.production.tables.Product.Product.ProductSubcategoryID); + public static final org.jooq.ForeignKey FK_Product_ProductModel_ProductModelID = createForeignKey(PK_ProductModel_ProductModelID, org.jooq.examples.sqlserver.adventureworks.production.tables.Product.Product, org.jooq.examples.sqlserver.adventureworks.production.tables.Product.Product.ProductModelID); + public static final org.jooq.ForeignKey FK_ProductCostHistory_Product_ProductID = createForeignKey(PK_Product_ProductID, org.jooq.examples.sqlserver.adventureworks.production.tables.ProductCostHistory.ProductCostHistory, org.jooq.examples.sqlserver.adventureworks.production.tables.ProductCostHistory.ProductCostHistory.ProductID); + public static final org.jooq.ForeignKey FK_ProductDocument_Product_ProductID = createForeignKey(PK_Product_ProductID, org.jooq.examples.sqlserver.adventureworks.production.tables.ProductDocument.ProductDocument, org.jooq.examples.sqlserver.adventureworks.production.tables.ProductDocument.ProductDocument.ProductID); + public static final org.jooq.ForeignKey FK_ProductDocument_Document_DocumentID = createForeignKey(PK_Document_DocumentID, org.jooq.examples.sqlserver.adventureworks.production.tables.ProductDocument.ProductDocument, org.jooq.examples.sqlserver.adventureworks.production.tables.ProductDocument.ProductDocument.DocumentID); + public static final org.jooq.ForeignKey FK_ProductInventory_Product_ProductID = createForeignKey(PK_Product_ProductID, org.jooq.examples.sqlserver.adventureworks.production.tables.ProductInventory.ProductInventory, org.jooq.examples.sqlserver.adventureworks.production.tables.ProductInventory.ProductInventory.ProductID); + public static final org.jooq.ForeignKey FK_ProductInventory_Location_LocationID = createForeignKey(PK_Location_LocationID, org.jooq.examples.sqlserver.adventureworks.production.tables.ProductInventory.ProductInventory, org.jooq.examples.sqlserver.adventureworks.production.tables.ProductInventory.ProductInventory.LocationID); + public static final org.jooq.ForeignKey FK_ProductListPriceHistory_Product_ProductID = createForeignKey(PK_Product_ProductID, org.jooq.examples.sqlserver.adventureworks.production.tables.ProductListPriceHistory.ProductListPriceHistory, org.jooq.examples.sqlserver.adventureworks.production.tables.ProductListPriceHistory.ProductListPriceHistory.ProductID); + public static final org.jooq.ForeignKey FK_ProductModelIllustration_ProductModel_ProductModelID = createForeignKey(PK_ProductModel_ProductModelID, org.jooq.examples.sqlserver.adventureworks.production.tables.ProductModelIllustration.ProductModelIllustration, org.jooq.examples.sqlserver.adventureworks.production.tables.ProductModelIllustration.ProductModelIllustration.ProductModelID); + public static final org.jooq.ForeignKey FK_ProductModelIllustration_Illustration_IllustrationID = createForeignKey(PK_Illustration_IllustrationID, org.jooq.examples.sqlserver.adventureworks.production.tables.ProductModelIllustration.ProductModelIllustration, org.jooq.examples.sqlserver.adventureworks.production.tables.ProductModelIllustration.ProductModelIllustration.IllustrationID); + public static final org.jooq.ForeignKey FK_ProductModelProductDescriptionCulture_ProductModel_ProductModelID = createForeignKey(PK_ProductModel_ProductModelID, org.jooq.examples.sqlserver.adventureworks.production.tables.ProductModelProductDescriptionCulture.ProductModelProductDescriptionCulture, org.jooq.examples.sqlserver.adventureworks.production.tables.ProductModelProductDescriptionCulture.ProductModelProductDescriptionCulture.ProductModelID); + public static final org.jooq.ForeignKey FK_ProductModelProductDescriptionCulture_ProductDescription_ProductDescriptionID = createForeignKey(PK_ProductDescription_ProductDescriptionID, org.jooq.examples.sqlserver.adventureworks.production.tables.ProductModelProductDescriptionCulture.ProductModelProductDescriptionCulture, org.jooq.examples.sqlserver.adventureworks.production.tables.ProductModelProductDescriptionCulture.ProductModelProductDescriptionCulture.ProductDescriptionID); + public static final org.jooq.ForeignKey FK_ProductModelProductDescriptionCulture_Culture_CultureID = createForeignKey(PK_Culture_CultureID, org.jooq.examples.sqlserver.adventureworks.production.tables.ProductModelProductDescriptionCulture.ProductModelProductDescriptionCulture, org.jooq.examples.sqlserver.adventureworks.production.tables.ProductModelProductDescriptionCulture.ProductModelProductDescriptionCulture.CultureID); + public static final org.jooq.ForeignKey FK_ProductProductPhoto_Product_ProductID = createForeignKey(PK_Product_ProductID, org.jooq.examples.sqlserver.adventureworks.production.tables.ProductProductPhoto.ProductProductPhoto, org.jooq.examples.sqlserver.adventureworks.production.tables.ProductProductPhoto.ProductProductPhoto.ProductID); + public static final org.jooq.ForeignKey FK_ProductProductPhoto_ProductPhoto_ProductPhotoID = createForeignKey(PK_ProductPhoto_ProductPhotoID, org.jooq.examples.sqlserver.adventureworks.production.tables.ProductProductPhoto.ProductProductPhoto, org.jooq.examples.sqlserver.adventureworks.production.tables.ProductProductPhoto.ProductProductPhoto.ProductPhotoID); + public static final org.jooq.ForeignKey FK_ProductReview_Product_ProductID = createForeignKey(PK_Product_ProductID, org.jooq.examples.sqlserver.adventureworks.production.tables.ProductReview.ProductReview, org.jooq.examples.sqlserver.adventureworks.production.tables.ProductReview.ProductReview.ProductID); + public static final org.jooq.ForeignKey FK_ProductSubcategory_ProductCategory_ProductCategoryID = createForeignKey(PK_ProductCategory_ProductCategoryID, org.jooq.examples.sqlserver.adventureworks.production.tables.ProductSubcategory.ProductSubcategory, org.jooq.examples.sqlserver.adventureworks.production.tables.ProductSubcategory.ProductSubcategory.ProductCategoryID); + public static final org.jooq.ForeignKey FK_TransactionHistory_Product_ProductID = createForeignKey(PK_Product_ProductID, org.jooq.examples.sqlserver.adventureworks.production.tables.TransactionHistory.TransactionHistory, org.jooq.examples.sqlserver.adventureworks.production.tables.TransactionHistory.TransactionHistory.ProductID); + public static final org.jooq.ForeignKey FK_WorkOrder_Product_ProductID = createForeignKey(PK_Product_ProductID, org.jooq.examples.sqlserver.adventureworks.production.tables.WorkOrder.WorkOrder, org.jooq.examples.sqlserver.adventureworks.production.tables.WorkOrder.WorkOrder.ProductID); + public static final org.jooq.ForeignKey FK_WorkOrder_ScrapReason_ScrapReasonID = createForeignKey(PK_ScrapReason_ScrapReasonID, org.jooq.examples.sqlserver.adventureworks.production.tables.WorkOrder.WorkOrder, org.jooq.examples.sqlserver.adventureworks.production.tables.WorkOrder.WorkOrder.ScrapReasonID); + public static final org.jooq.ForeignKey FK_WorkOrderRouting_WorkOrder_WorkOrderID = createForeignKey(PK_WorkOrder_WorkOrderID, org.jooq.examples.sqlserver.adventureworks.production.tables.WorkOrderRouting.WorkOrderRouting, org.jooq.examples.sqlserver.adventureworks.production.tables.WorkOrderRouting.WorkOrderRouting.WorkOrderID); + public static final org.jooq.ForeignKey FK_WorkOrderRouting_Location_LocationID = createForeignKey(PK_Location_LocationID, org.jooq.examples.sqlserver.adventureworks.production.tables.WorkOrderRouting.WorkOrderRouting, org.jooq.examples.sqlserver.adventureworks.production.tables.WorkOrderRouting.WorkOrderRouting.LocationID); + + /** + * No instances + */ + private Keys() {} +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/Production.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/Production.java new file mode 100644 index 00000000000..26d2eec410d --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/Production.java @@ -0,0 +1,57 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.production; + +/** + * This class is generated by jOOQ. + */ +public class Production extends org.jooq.impl.SchemaImpl { + + private static final long serialVersionUID = -1041569065; + + /** + * The singleton instance of Production + */ + public static final Production Production = new Production(); + + /** + * No further instances allowed + */ + private Production() { + super("Production"); + } + + @Override + public final java.util.List> getTables() { + return java.util.Arrays.>asList( + org.jooq.examples.sqlserver.adventureworks.production.tables.BillOfMaterials.BillOfMaterials, + org.jooq.examples.sqlserver.adventureworks.production.tables.Culture.Culture, + org.jooq.examples.sqlserver.adventureworks.production.tables.Document.Document, + org.jooq.examples.sqlserver.adventureworks.production.tables.Illustration.Illustration, + org.jooq.examples.sqlserver.adventureworks.production.tables.Location.Location, + org.jooq.examples.sqlserver.adventureworks.production.tables.Product.Product, + org.jooq.examples.sqlserver.adventureworks.production.tables.ProductCategory.ProductCategory, + org.jooq.examples.sqlserver.adventureworks.production.tables.ProductCostHistory.ProductCostHistory, + org.jooq.examples.sqlserver.adventureworks.production.tables.ProductDescription.ProductDescription, + org.jooq.examples.sqlserver.adventureworks.production.tables.ProductDocument.ProductDocument, + org.jooq.examples.sqlserver.adventureworks.production.tables.ProductInventory.ProductInventory, + org.jooq.examples.sqlserver.adventureworks.production.tables.ProductListPriceHistory.ProductListPriceHistory, + org.jooq.examples.sqlserver.adventureworks.production.tables.ProductModel.ProductModel, + org.jooq.examples.sqlserver.adventureworks.production.tables.ProductModelIllustration.ProductModelIllustration, + org.jooq.examples.sqlserver.adventureworks.production.tables.ProductModelProductDescriptionCulture.ProductModelProductDescriptionCulture, + org.jooq.examples.sqlserver.adventureworks.production.tables.ProductPhoto.ProductPhoto, + org.jooq.examples.sqlserver.adventureworks.production.tables.ProductProductPhoto.ProductProductPhoto, + org.jooq.examples.sqlserver.adventureworks.production.tables.ProductReview.ProductReview, + org.jooq.examples.sqlserver.adventureworks.production.tables.ProductSubcategory.ProductSubcategory, + org.jooq.examples.sqlserver.adventureworks.production.tables.ScrapReason.ScrapReason, + org.jooq.examples.sqlserver.adventureworks.production.tables.TransactionHistory.TransactionHistory, + org.jooq.examples.sqlserver.adventureworks.production.tables.TransactionHistoryArchive.TransactionHistoryArchive, + org.jooq.examples.sqlserver.adventureworks.production.tables.UnitMeasure.UnitMeasure, + org.jooq.examples.sqlserver.adventureworks.production.tables.vProductAndDescription.vProductAndDescription, + org.jooq.examples.sqlserver.adventureworks.production.tables.vProductModelCatalogDescription.vProductModelCatalogDescription, + org.jooq.examples.sqlserver.adventureworks.production.tables.vProductModelInstructions.vProductModelInstructions, + org.jooq.examples.sqlserver.adventureworks.production.tables.WorkOrder.WorkOrder, + org.jooq.examples.sqlserver.adventureworks.production.tables.WorkOrderRouting.WorkOrderRouting); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/ProductionFactory.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/ProductionFactory.java new file mode 100644 index 00000000000..f61ac449b91 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/ProductionFactory.java @@ -0,0 +1,41 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.production; + +/** + * This class is generated by jOOQ. + */ +public class ProductionFactory extends org.jooq.util.sqlserver.SQLServerFactory { + + private static final long serialVersionUID = -1333018536; + + /** + * Create a factory with a connection + * + * @param connection The connection to use with objects created from this factory + */ + public ProductionFactory(java.sql.Connection connection) { + super(connection); + } + + /** + * Create a factory with a connection and a schema mapping + * + * @deprecated - 2.0.5 - Use {@link #ProductionFactory(java.sql.Connection, org.jooq.conf.Settings)} instead + */ + @Deprecated + public ProductionFactory(java.sql.Connection connection, org.jooq.SchemaMapping mapping) { + super(connection, mapping); + } + + /** + * Create a factory with a connection and some settings + * + * @param connection The connection to use with objects created from this factory + * @param settings The settings to apply to objects created from this factory + */ + public ProductionFactory(java.sql.Connection connection, org.jooq.conf.Settings settings) { + super(connection, settings); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/Tables.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/Tables.java new file mode 100644 index 00000000000..224f1f7d44b --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/Tables.java @@ -0,0 +1,157 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.production; + +/** + * This class is generated by jOOQ. + * + * Convenience access to all tables in Production + */ +public final class Tables { + + /** + * The table Production.BillOfMaterials + */ + public static org.jooq.examples.sqlserver.adventureworks.production.tables.BillOfMaterials BillOfMaterials = org.jooq.examples.sqlserver.adventureworks.production.tables.BillOfMaterials.BillOfMaterials; + + /** + * The table Production.Culture + */ + public static org.jooq.examples.sqlserver.adventureworks.production.tables.Culture Culture = org.jooq.examples.sqlserver.adventureworks.production.tables.Culture.Culture; + + /** + * The table Production.Document + */ + public static org.jooq.examples.sqlserver.adventureworks.production.tables.Document Document = org.jooq.examples.sqlserver.adventureworks.production.tables.Document.Document; + + /** + * The table Production.Illustration + */ + public static org.jooq.examples.sqlserver.adventureworks.production.tables.Illustration Illustration = org.jooq.examples.sqlserver.adventureworks.production.tables.Illustration.Illustration; + + /** + * The table Production.Location + */ + public static org.jooq.examples.sqlserver.adventureworks.production.tables.Location Location = org.jooq.examples.sqlserver.adventureworks.production.tables.Location.Location; + + /** + * The table Production.Product + */ + public static org.jooq.examples.sqlserver.adventureworks.production.tables.Product Product = org.jooq.examples.sqlserver.adventureworks.production.tables.Product.Product; + + /** + * The table Production.ProductCategory + */ + public static org.jooq.examples.sqlserver.adventureworks.production.tables.ProductCategory ProductCategory = org.jooq.examples.sqlserver.adventureworks.production.tables.ProductCategory.ProductCategory; + + /** + * The table Production.ProductCostHistory + */ + public static org.jooq.examples.sqlserver.adventureworks.production.tables.ProductCostHistory ProductCostHistory = org.jooq.examples.sqlserver.adventureworks.production.tables.ProductCostHistory.ProductCostHistory; + + /** + * The table Production.ProductDescription + */ + public static org.jooq.examples.sqlserver.adventureworks.production.tables.ProductDescription ProductDescription = org.jooq.examples.sqlserver.adventureworks.production.tables.ProductDescription.ProductDescription; + + /** + * The table Production.ProductDocument + */ + public static org.jooq.examples.sqlserver.adventureworks.production.tables.ProductDocument ProductDocument = org.jooq.examples.sqlserver.adventureworks.production.tables.ProductDocument.ProductDocument; + + /** + * The table Production.ProductInventory + */ + public static org.jooq.examples.sqlserver.adventureworks.production.tables.ProductInventory ProductInventory = org.jooq.examples.sqlserver.adventureworks.production.tables.ProductInventory.ProductInventory; + + /** + * The table Production.ProductListPriceHistory + */ + public static org.jooq.examples.sqlserver.adventureworks.production.tables.ProductListPriceHistory ProductListPriceHistory = org.jooq.examples.sqlserver.adventureworks.production.tables.ProductListPriceHistory.ProductListPriceHistory; + + /** + * The table Production.ProductModel + */ + public static org.jooq.examples.sqlserver.adventureworks.production.tables.ProductModel ProductModel = org.jooq.examples.sqlserver.adventureworks.production.tables.ProductModel.ProductModel; + + /** + * The table Production.ProductModelIllustration + */ + public static org.jooq.examples.sqlserver.adventureworks.production.tables.ProductModelIllustration ProductModelIllustration = org.jooq.examples.sqlserver.adventureworks.production.tables.ProductModelIllustration.ProductModelIllustration; + + /** + * The table Production.ProductModelProductDescriptionCulture + */ + public static org.jooq.examples.sqlserver.adventureworks.production.tables.ProductModelProductDescriptionCulture ProductModelProductDescriptionCulture = org.jooq.examples.sqlserver.adventureworks.production.tables.ProductModelProductDescriptionCulture.ProductModelProductDescriptionCulture; + + /** + * The table Production.ProductPhoto + */ + public static org.jooq.examples.sqlserver.adventureworks.production.tables.ProductPhoto ProductPhoto = org.jooq.examples.sqlserver.adventureworks.production.tables.ProductPhoto.ProductPhoto; + + /** + * The table Production.ProductProductPhoto + */ + public static org.jooq.examples.sqlserver.adventureworks.production.tables.ProductProductPhoto ProductProductPhoto = org.jooq.examples.sqlserver.adventureworks.production.tables.ProductProductPhoto.ProductProductPhoto; + + /** + * The table Production.ProductReview + */ + public static org.jooq.examples.sqlserver.adventureworks.production.tables.ProductReview ProductReview = org.jooq.examples.sqlserver.adventureworks.production.tables.ProductReview.ProductReview; + + /** + * The table Production.ProductSubcategory + */ + public static org.jooq.examples.sqlserver.adventureworks.production.tables.ProductSubcategory ProductSubcategory = org.jooq.examples.sqlserver.adventureworks.production.tables.ProductSubcategory.ProductSubcategory; + + /** + * The table Production.ScrapReason + */ + public static org.jooq.examples.sqlserver.adventureworks.production.tables.ScrapReason ScrapReason = org.jooq.examples.sqlserver.adventureworks.production.tables.ScrapReason.ScrapReason; + + /** + * The table Production.TransactionHistory + */ + public static org.jooq.examples.sqlserver.adventureworks.production.tables.TransactionHistory TransactionHistory = org.jooq.examples.sqlserver.adventureworks.production.tables.TransactionHistory.TransactionHistory; + + /** + * The table Production.TransactionHistoryArchive + */ + public static org.jooq.examples.sqlserver.adventureworks.production.tables.TransactionHistoryArchive TransactionHistoryArchive = org.jooq.examples.sqlserver.adventureworks.production.tables.TransactionHistoryArchive.TransactionHistoryArchive; + + /** + * The table Production.UnitMeasure + */ + public static org.jooq.examples.sqlserver.adventureworks.production.tables.UnitMeasure UnitMeasure = org.jooq.examples.sqlserver.adventureworks.production.tables.UnitMeasure.UnitMeasure; + + /** + * The table Production.vProductAndDescription + */ + public static org.jooq.examples.sqlserver.adventureworks.production.tables.vProductAndDescription vProductAndDescription = org.jooq.examples.sqlserver.adventureworks.production.tables.vProductAndDescription.vProductAndDescription; + + /** + * The table Production.vProductModelCatalogDescription + */ + public static org.jooq.examples.sqlserver.adventureworks.production.tables.vProductModelCatalogDescription vProductModelCatalogDescription = org.jooq.examples.sqlserver.adventureworks.production.tables.vProductModelCatalogDescription.vProductModelCatalogDescription; + + /** + * The table Production.vProductModelInstructions + */ + public static org.jooq.examples.sqlserver.adventureworks.production.tables.vProductModelInstructions vProductModelInstructions = org.jooq.examples.sqlserver.adventureworks.production.tables.vProductModelInstructions.vProductModelInstructions; + + /** + * The table Production.WorkOrder + */ + public static org.jooq.examples.sqlserver.adventureworks.production.tables.WorkOrder WorkOrder = org.jooq.examples.sqlserver.adventureworks.production.tables.WorkOrder.WorkOrder; + + /** + * The table Production.WorkOrderRouting + */ + public static org.jooq.examples.sqlserver.adventureworks.production.tables.WorkOrderRouting WorkOrderRouting = org.jooq.examples.sqlserver.adventureworks.production.tables.WorkOrderRouting.WorkOrderRouting; + + /** + * No instances + */ + private Tables() {} +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/tables/BillOfMaterials.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/tables/BillOfMaterials.java new file mode 100644 index 00000000000..1b5f99d12c8 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/tables/BillOfMaterials.java @@ -0,0 +1,130 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.production.tables; + +/** + * This class is generated by jOOQ. + */ +public class BillOfMaterials extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = -898672085; + + /** + * The singleton instance of Production.BillOfMaterials + */ + public static final org.jooq.examples.sqlserver.adventureworks.production.tables.BillOfMaterials BillOfMaterials = new org.jooq.examples.sqlserver.adventureworks.production.tables.BillOfMaterials(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.examples.sqlserver.adventureworks.production.tables.records.BillOfMaterials.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final org.jooq.TableField BillOfMaterialsID = createField("BillOfMaterialsID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_BillOfMaterials_Product_ProductAssemblyID
+	 * FOREIGN KEY (ProductAssemblyID)
+	 * REFERENCES Production.Product (ProductID)
+	 * 
+ */ + public final org.jooq.TableField ProductAssemblyID = createField("ProductAssemblyID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_BillOfMaterials_Product_ComponentID
+	 * FOREIGN KEY (ComponentID)
+	 * REFERENCES Production.Product (ProductID)
+	 * 
+ */ + public final org.jooq.TableField ComponentID = createField("ComponentID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField StartDate = createField("StartDate", org.jooq.impl.SQLDataType.TIMESTAMP, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField EndDate = createField("EndDate", org.jooq.impl.SQLDataType.TIMESTAMP, this); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_BillOfMaterials_UnitMeasure_UnitMeasureCode
+	 * FOREIGN KEY (UnitMeasureCode)
+	 * REFERENCES Production.UnitMeasure (UnitMeasureCode)
+	 * 
+ */ + public final org.jooq.TableField UnitMeasureCode = createField("UnitMeasureCode", org.jooq.impl.SQLDataType.NCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField BOMLevel = createField("BOMLevel", org.jooq.impl.SQLDataType.SMALLINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField PerAssemblyQty = createField("PerAssemblyQty", org.jooq.impl.SQLDataType.NUMERIC, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField ModifiedDate = createField("ModifiedDate", org.jooq.impl.SQLDataType.TIMESTAMP, this); + + public BillOfMaterials() { + super("BillOfMaterials", org.jooq.examples.sqlserver.adventureworks.production.Production.Production); + } + + public BillOfMaterials(java.lang.String alias) { + super(alias, org.jooq.examples.sqlserver.adventureworks.production.Production.Production, org.jooq.examples.sqlserver.adventureworks.production.tables.BillOfMaterials.BillOfMaterials); + } + + @Override + public org.jooq.Identity getIdentity() { + return org.jooq.examples.sqlserver.adventureworks.production.Keys.IDENTITY_BillOfMaterials; + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.examples.sqlserver.adventureworks.production.Keys.PK_BillOfMaterials_BillOfMaterialsID; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.examples.sqlserver.adventureworks.production.Keys.PK_BillOfMaterials_BillOfMaterialsID); + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getReferences() { + return java.util.Arrays.>asList(org.jooq.examples.sqlserver.adventureworks.production.Keys.FK_BillOfMaterials_Product_ProductAssemblyID, org.jooq.examples.sqlserver.adventureworks.production.Keys.FK_BillOfMaterials_Product_ComponentID, org.jooq.examples.sqlserver.adventureworks.production.Keys.FK_BillOfMaterials_UnitMeasure_UnitMeasureCode); + } + + @Override + public org.jooq.examples.sqlserver.adventureworks.production.tables.BillOfMaterials as(java.lang.String alias) { + return new org.jooq.examples.sqlserver.adventureworks.production.tables.BillOfMaterials(alias); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/tables/Culture.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/tables/Culture.java new file mode 100644 index 00000000000..2eefb7bb42b --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/tables/Culture.java @@ -0,0 +1,71 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.production.tables; + +/** + * This class is generated by jOOQ. + */ +public class Culture extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = 95623250; + + /** + * The singleton instance of Production.Culture + */ + public static final org.jooq.examples.sqlserver.adventureworks.production.tables.Culture Culture = new org.jooq.examples.sqlserver.adventureworks.production.tables.Culture(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.examples.sqlserver.adventureworks.production.tables.records.Culture.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final org.jooq.TableField CultureID = createField("CultureID", org.jooq.impl.SQLDataType.NCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField Name = createField("Name", org.jooq.impl.SQLDataType.NVARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField ModifiedDate = createField("ModifiedDate", org.jooq.impl.SQLDataType.TIMESTAMP, this); + + public Culture() { + super("Culture", org.jooq.examples.sqlserver.adventureworks.production.Production.Production); + } + + public Culture(java.lang.String alias) { + super(alias, org.jooq.examples.sqlserver.adventureworks.production.Production.Production, org.jooq.examples.sqlserver.adventureworks.production.tables.Culture.Culture); + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.examples.sqlserver.adventureworks.production.Keys.PK_Culture_CultureID; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.examples.sqlserver.adventureworks.production.Keys.PK_Culture_CultureID); + } + + @Override + public org.jooq.examples.sqlserver.adventureworks.production.tables.Culture as(java.lang.String alias) { + return new org.jooq.examples.sqlserver.adventureworks.production.tables.Culture(alias); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/tables/Document.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/tables/Document.java new file mode 100644 index 00000000000..32c63c378fb --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/tables/Document.java @@ -0,0 +1,111 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.production.tables; + +/** + * This class is generated by jOOQ. + */ +public class Document extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = 273545870; + + /** + * The singleton instance of Production.Document + */ + public static final org.jooq.examples.sqlserver.adventureworks.production.tables.Document Document = new org.jooq.examples.sqlserver.adventureworks.production.tables.Document(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.examples.sqlserver.adventureworks.production.tables.records.Document.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final org.jooq.TableField DocumentID = createField("DocumentID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField Title = createField("Title", org.jooq.impl.SQLDataType.NVARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField FileName = createField("FileName", org.jooq.impl.SQLDataType.NVARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField FileExtension = createField("FileExtension", org.jooq.impl.SQLDataType.NVARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField Revision = createField("Revision", org.jooq.impl.SQLDataType.NCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField ChangeNumber = createField("ChangeNumber", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField Status = createField("Status", org.jooq.impl.SQLDataType.TINYINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField DocumentSummary = createField("DocumentSummary", org.jooq.impl.SQLDataType.NVARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField Document_ = createField("Document", org.jooq.impl.SQLDataType.VARBINARY, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField ModifiedDate = createField("ModifiedDate", org.jooq.impl.SQLDataType.TIMESTAMP, this); + + public Document() { + super("Document", org.jooq.examples.sqlserver.adventureworks.production.Production.Production); + } + + public Document(java.lang.String alias) { + super(alias, org.jooq.examples.sqlserver.adventureworks.production.Production.Production, org.jooq.examples.sqlserver.adventureworks.production.tables.Document.Document); + } + + @Override + public org.jooq.Identity getIdentity() { + return org.jooq.examples.sqlserver.adventureworks.production.Keys.IDENTITY_Document; + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.examples.sqlserver.adventureworks.production.Keys.PK_Document_DocumentID; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.examples.sqlserver.adventureworks.production.Keys.PK_Document_DocumentID); + } + + @Override + public org.jooq.examples.sqlserver.adventureworks.production.tables.Document as(java.lang.String alias) { + return new org.jooq.examples.sqlserver.adventureworks.production.tables.Document(alias); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/tables/Illustration.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/tables/Illustration.java new file mode 100644 index 00000000000..67952c353b1 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/tables/Illustration.java @@ -0,0 +1,79 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.production.tables; + +/** + * This class is generated by jOOQ. + */ +public class Illustration extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = 610975948; + + /** + * The singleton instance of Production.Illustration + */ + public static final org.jooq.examples.sqlserver.adventureworks.production.tables.Illustration Illustration = new org.jooq.examples.sqlserver.adventureworks.production.tables.Illustration(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.examples.sqlserver.adventureworks.production.tables.records.Illustration.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final org.jooq.TableField IllustrationID = createField("IllustrationID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + * + * The SQL type of this item (xml, ) could not be mapped.
+ * Deserialising this field might not work! + */ + public final org.jooq.TableField Diagram = createField("Diagram", org.jooq.util.sqlserver.SQLServerDataType.getDefaultDataType("xml"), this); + + /** + * An uncommented item + */ + public final org.jooq.TableField ModifiedDate = createField("ModifiedDate", org.jooq.impl.SQLDataType.TIMESTAMP, this); + + public Illustration() { + super("Illustration", org.jooq.examples.sqlserver.adventureworks.production.Production.Production); + } + + public Illustration(java.lang.String alias) { + super(alias, org.jooq.examples.sqlserver.adventureworks.production.Production.Production, org.jooq.examples.sqlserver.adventureworks.production.tables.Illustration.Illustration); + } + + @Override + public org.jooq.Identity getIdentity() { + return org.jooq.examples.sqlserver.adventureworks.production.Keys.IDENTITY_Illustration; + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.examples.sqlserver.adventureworks.production.Keys.PK_Illustration_IllustrationID; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.examples.sqlserver.adventureworks.production.Keys.PK_Illustration_IllustrationID); + } + + @Override + public org.jooq.examples.sqlserver.adventureworks.production.tables.Illustration as(java.lang.String alias) { + return new org.jooq.examples.sqlserver.adventureworks.production.tables.Illustration(alias); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/tables/Location.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/tables/Location.java new file mode 100644 index 00000000000..86cd074e1dd --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/tables/Location.java @@ -0,0 +1,86 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.production.tables; + +/** + * This class is generated by jOOQ. + */ +public class Location extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = 2135751964; + + /** + * The singleton instance of Production.Location + */ + public static final org.jooq.examples.sqlserver.adventureworks.production.tables.Location Location = new org.jooq.examples.sqlserver.adventureworks.production.tables.Location(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.examples.sqlserver.adventureworks.production.tables.records.Location.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final org.jooq.TableField LocationID = createField("LocationID", org.jooq.impl.SQLDataType.SMALLINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField Name = createField("Name", org.jooq.impl.SQLDataType.NVARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField CostRate = createField("CostRate", org.jooq.impl.SQLDataType.NUMERIC, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField Availability = createField("Availability", org.jooq.impl.SQLDataType.NUMERIC, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField ModifiedDate = createField("ModifiedDate", org.jooq.impl.SQLDataType.TIMESTAMP, this); + + public Location() { + super("Location", org.jooq.examples.sqlserver.adventureworks.production.Production.Production); + } + + public Location(java.lang.String alias) { + super(alias, org.jooq.examples.sqlserver.adventureworks.production.Production.Production, org.jooq.examples.sqlserver.adventureworks.production.tables.Location.Location); + } + + @Override + public org.jooq.Identity getIdentity() { + return org.jooq.examples.sqlserver.adventureworks.production.Keys.IDENTITY_Location; + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.examples.sqlserver.adventureworks.production.Keys.PK_Location_LocationID; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.examples.sqlserver.adventureworks.production.Keys.PK_Location_LocationID); + } + + @Override + public org.jooq.examples.sqlserver.adventureworks.production.tables.Location as(java.lang.String alias) { + return new org.jooq.examples.sqlserver.adventureworks.production.tables.Location(alias); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/tables/Product.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/tables/Product.java new file mode 100644 index 00000000000..110c868c537 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/tables/Product.java @@ -0,0 +1,216 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.production.tables; + +/** + * This class is generated by jOOQ. + */ +public class Product extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = 1759622308; + + /** + * The singleton instance of Production.Product + */ + public static final org.jooq.examples.sqlserver.adventureworks.production.tables.Product Product = new org.jooq.examples.sqlserver.adventureworks.production.tables.Product(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.examples.sqlserver.adventureworks.production.tables.records.Product.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final org.jooq.TableField ProductID = createField("ProductID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField Name = createField("Name", org.jooq.impl.SQLDataType.NVARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField ProductNumber = createField("ProductNumber", org.jooq.impl.SQLDataType.NVARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField MakeFlag = createField("MakeFlag", org.jooq.impl.SQLDataType.BIT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField FinishedGoodsFlag = createField("FinishedGoodsFlag", org.jooq.impl.SQLDataType.BIT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField Color = createField("Color", org.jooq.impl.SQLDataType.NVARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField SafetyStockLevel = createField("SafetyStockLevel", org.jooq.impl.SQLDataType.SMALLINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField ReorderPoint = createField("ReorderPoint", org.jooq.impl.SQLDataType.SMALLINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField StandardCost = createField("StandardCost", org.jooq.impl.SQLDataType.NUMERIC, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField ListPrice = createField("ListPrice", org.jooq.impl.SQLDataType.NUMERIC, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField Size = createField("Size", org.jooq.impl.SQLDataType.NVARCHAR, this); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_Product_UnitMeasure_SizeUnitMeasureCode
+	 * FOREIGN KEY (SizeUnitMeasureCode)
+	 * REFERENCES Production.UnitMeasure (UnitMeasureCode)
+	 * 
+ */ + public final org.jooq.TableField SizeUnitMeasureCode = createField("SizeUnitMeasureCode", org.jooq.impl.SQLDataType.NCHAR, this); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_Product_UnitMeasure_WeightUnitMeasureCode
+	 * FOREIGN KEY (WeightUnitMeasureCode)
+	 * REFERENCES Production.UnitMeasure (UnitMeasureCode)
+	 * 
+ */ + public final org.jooq.TableField WeightUnitMeasureCode = createField("WeightUnitMeasureCode", org.jooq.impl.SQLDataType.NCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField Weight = createField("Weight", org.jooq.impl.SQLDataType.NUMERIC, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField DaysToManufacture = createField("DaysToManufacture", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField ProductLine = createField("ProductLine", org.jooq.impl.SQLDataType.NCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField Class = createField("Class", org.jooq.impl.SQLDataType.NCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField Style = createField("Style", org.jooq.impl.SQLDataType.NCHAR, this); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_Product_ProductSubcategory_ProductSubcategoryID
+	 * FOREIGN KEY (ProductSubcategoryID)
+	 * REFERENCES Production.ProductSubcategory (ProductSubcategoryID)
+	 * 
+ */ + public final org.jooq.TableField ProductSubcategoryID = createField("ProductSubcategoryID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_Product_ProductModel_ProductModelID
+	 * FOREIGN KEY (ProductModelID)
+	 * REFERENCES Production.ProductModel (ProductModelID)
+	 * 
+ */ + public final org.jooq.TableField ProductModelID = createField("ProductModelID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField SellStartDate = createField("SellStartDate", org.jooq.impl.SQLDataType.TIMESTAMP, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField SellEndDate = createField("SellEndDate", org.jooq.impl.SQLDataType.TIMESTAMP, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField DiscontinuedDate = createField("DiscontinuedDate", org.jooq.impl.SQLDataType.TIMESTAMP, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField rowguid = createField("rowguid", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField ModifiedDate = createField("ModifiedDate", org.jooq.impl.SQLDataType.TIMESTAMP, this); + + public Product() { + super("Product", org.jooq.examples.sqlserver.adventureworks.production.Production.Production); + } + + public Product(java.lang.String alias) { + super(alias, org.jooq.examples.sqlserver.adventureworks.production.Production.Production, org.jooq.examples.sqlserver.adventureworks.production.tables.Product.Product); + } + + @Override + public org.jooq.Identity getIdentity() { + return org.jooq.examples.sqlserver.adventureworks.production.Keys.IDENTITY_Product; + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.examples.sqlserver.adventureworks.production.Keys.PK_Product_ProductID; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.examples.sqlserver.adventureworks.production.Keys.PK_Product_ProductID); + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getReferences() { + return java.util.Arrays.>asList(org.jooq.examples.sqlserver.adventureworks.production.Keys.FK_Product_UnitMeasure_SizeUnitMeasureCode, org.jooq.examples.sqlserver.adventureworks.production.Keys.FK_Product_UnitMeasure_WeightUnitMeasureCode, org.jooq.examples.sqlserver.adventureworks.production.Keys.FK_Product_ProductSubcategory_ProductSubcategoryID, org.jooq.examples.sqlserver.adventureworks.production.Keys.FK_Product_ProductModel_ProductModelID); + } + + @Override + public org.jooq.examples.sqlserver.adventureworks.production.tables.Product as(java.lang.String alias) { + return new org.jooq.examples.sqlserver.adventureworks.production.tables.Product(alias); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/tables/ProductCategory.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/tables/ProductCategory.java new file mode 100644 index 00000000000..98792005b60 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/tables/ProductCategory.java @@ -0,0 +1,81 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.production.tables; + +/** + * This class is generated by jOOQ. + */ +public class ProductCategory extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = 520287083; + + /** + * The singleton instance of Production.ProductCategory + */ + public static final org.jooq.examples.sqlserver.adventureworks.production.tables.ProductCategory ProductCategory = new org.jooq.examples.sqlserver.adventureworks.production.tables.ProductCategory(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.examples.sqlserver.adventureworks.production.tables.records.ProductCategory.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final org.jooq.TableField ProductCategoryID = createField("ProductCategoryID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField Name = createField("Name", org.jooq.impl.SQLDataType.NVARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField rowguid = createField("rowguid", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField ModifiedDate = createField("ModifiedDate", org.jooq.impl.SQLDataType.TIMESTAMP, this); + + public ProductCategory() { + super("ProductCategory", org.jooq.examples.sqlserver.adventureworks.production.Production.Production); + } + + public ProductCategory(java.lang.String alias) { + super(alias, org.jooq.examples.sqlserver.adventureworks.production.Production.Production, org.jooq.examples.sqlserver.adventureworks.production.tables.ProductCategory.ProductCategory); + } + + @Override + public org.jooq.Identity getIdentity() { + return org.jooq.examples.sqlserver.adventureworks.production.Keys.IDENTITY_ProductCategory; + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.examples.sqlserver.adventureworks.production.Keys.PK_ProductCategory_ProductCategoryID; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.examples.sqlserver.adventureworks.production.Keys.PK_ProductCategory_ProductCategoryID); + } + + @Override + public org.jooq.examples.sqlserver.adventureworks.production.tables.ProductCategory as(java.lang.String alias) { + return new org.jooq.examples.sqlserver.adventureworks.production.tables.ProductCategory(alias); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/tables/ProductCostHistory.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/tables/ProductCostHistory.java new file mode 100644 index 00000000000..0639c46e612 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/tables/ProductCostHistory.java @@ -0,0 +1,95 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.production.tables; + +/** + * This class is generated by jOOQ. + */ +public class ProductCostHistory extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = -939296979; + + /** + * The singleton instance of Production.ProductCostHistory + */ + public static final org.jooq.examples.sqlserver.adventureworks.production.tables.ProductCostHistory ProductCostHistory = new org.jooq.examples.sqlserver.adventureworks.production.tables.ProductCostHistory(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.examples.sqlserver.adventureworks.production.tables.records.ProductCostHistory.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT FK_ProductCostHistory_Product_ProductID
+	 * FOREIGN KEY (ProductID)
+	 * REFERENCES Production.Product (ProductID)
+	 * 
+ */ + public final org.jooq.TableField ProductID = createField("ProductID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final org.jooq.TableField StartDate = createField("StartDate", org.jooq.impl.SQLDataType.TIMESTAMP, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField EndDate = createField("EndDate", org.jooq.impl.SQLDataType.TIMESTAMP, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField StandardCost = createField("StandardCost", org.jooq.impl.SQLDataType.NUMERIC, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField ModifiedDate = createField("ModifiedDate", org.jooq.impl.SQLDataType.TIMESTAMP, this); + + public ProductCostHistory() { + super("ProductCostHistory", org.jooq.examples.sqlserver.adventureworks.production.Production.Production); + } + + public ProductCostHistory(java.lang.String alias) { + super(alias, org.jooq.examples.sqlserver.adventureworks.production.Production.Production, org.jooq.examples.sqlserver.adventureworks.production.tables.ProductCostHistory.ProductCostHistory); + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.examples.sqlserver.adventureworks.production.Keys.PK_ProductCostHistory_ProductID_StartDate; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.examples.sqlserver.adventureworks.production.Keys.PK_ProductCostHistory_ProductID_StartDate); + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getReferences() { + return java.util.Arrays.>asList(org.jooq.examples.sqlserver.adventureworks.production.Keys.FK_ProductCostHistory_Product_ProductID); + } + + @Override + public org.jooq.examples.sqlserver.adventureworks.production.tables.ProductCostHistory as(java.lang.String alias) { + return new org.jooq.examples.sqlserver.adventureworks.production.tables.ProductCostHistory(alias); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/tables/ProductDescription.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/tables/ProductDescription.java new file mode 100644 index 00000000000..4407fa9bab2 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/tables/ProductDescription.java @@ -0,0 +1,81 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.production.tables; + +/** + * This class is generated by jOOQ. + */ +public class ProductDescription extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = 1360680103; + + /** + * The singleton instance of Production.ProductDescription + */ + public static final org.jooq.examples.sqlserver.adventureworks.production.tables.ProductDescription ProductDescription = new org.jooq.examples.sqlserver.adventureworks.production.tables.ProductDescription(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.examples.sqlserver.adventureworks.production.tables.records.ProductDescription.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final org.jooq.TableField ProductDescriptionID = createField("ProductDescriptionID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField Description = createField("Description", org.jooq.impl.SQLDataType.NVARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField rowguid = createField("rowguid", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField ModifiedDate = createField("ModifiedDate", org.jooq.impl.SQLDataType.TIMESTAMP, this); + + public ProductDescription() { + super("ProductDescription", org.jooq.examples.sqlserver.adventureworks.production.Production.Production); + } + + public ProductDescription(java.lang.String alias) { + super(alias, org.jooq.examples.sqlserver.adventureworks.production.Production.Production, org.jooq.examples.sqlserver.adventureworks.production.tables.ProductDescription.ProductDescription); + } + + @Override + public org.jooq.Identity getIdentity() { + return org.jooq.examples.sqlserver.adventureworks.production.Keys.IDENTITY_ProductDescription; + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.examples.sqlserver.adventureworks.production.Keys.PK_ProductDescription_ProductDescriptionID; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.examples.sqlserver.adventureworks.production.Keys.PK_ProductDescription_ProductDescriptionID); + } + + @Override + public org.jooq.examples.sqlserver.adventureworks.production.tables.ProductDescription as(java.lang.String alias) { + return new org.jooq.examples.sqlserver.adventureworks.production.tables.ProductDescription(alias); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/tables/ProductDocument.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/tables/ProductDocument.java new file mode 100644 index 00000000000..7578df0fb63 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/tables/ProductDocument.java @@ -0,0 +1,91 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.production.tables; + +/** + * This class is generated by jOOQ. + */ +public class ProductDocument extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = -906440071; + + /** + * The singleton instance of Production.ProductDocument + */ + public static final org.jooq.examples.sqlserver.adventureworks.production.tables.ProductDocument ProductDocument = new org.jooq.examples.sqlserver.adventureworks.production.tables.ProductDocument(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.examples.sqlserver.adventureworks.production.tables.records.ProductDocument.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT FK_ProductDocument_Product_ProductID
+	 * FOREIGN KEY (ProductID)
+	 * REFERENCES Production.Product (ProductID)
+	 * 
+ */ + public final org.jooq.TableField ProductID = createField("ProductID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT FK_ProductDocument_Document_DocumentID
+	 * FOREIGN KEY (DocumentID)
+	 * REFERENCES Production.Document (DocumentID)
+	 * 
+ */ + public final org.jooq.TableField DocumentID = createField("DocumentID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField ModifiedDate = createField("ModifiedDate", org.jooq.impl.SQLDataType.TIMESTAMP, this); + + public ProductDocument() { + super("ProductDocument", org.jooq.examples.sqlserver.adventureworks.production.Production.Production); + } + + public ProductDocument(java.lang.String alias) { + super(alias, org.jooq.examples.sqlserver.adventureworks.production.Production.Production, org.jooq.examples.sqlserver.adventureworks.production.tables.ProductDocument.ProductDocument); + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.examples.sqlserver.adventureworks.production.Keys.PK_ProductDocument_ProductID_DocumentID; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.examples.sqlserver.adventureworks.production.Keys.PK_ProductDocument_ProductID_DocumentID); + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getReferences() { + return java.util.Arrays.>asList(org.jooq.examples.sqlserver.adventureworks.production.Keys.FK_ProductDocument_Product_ProductID, org.jooq.examples.sqlserver.adventureworks.production.Keys.FK_ProductDocument_Document_DocumentID); + } + + @Override + public org.jooq.examples.sqlserver.adventureworks.production.tables.ProductDocument as(java.lang.String alias) { + return new org.jooq.examples.sqlserver.adventureworks.production.tables.ProductDocument(alias); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/tables/ProductInventory.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/tables/ProductInventory.java new file mode 100644 index 00000000000..ce046642d87 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/tables/ProductInventory.java @@ -0,0 +1,111 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.production.tables; + +/** + * This class is generated by jOOQ. + */ +public class ProductInventory extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = 441037202; + + /** + * The singleton instance of Production.ProductInventory + */ + public static final org.jooq.examples.sqlserver.adventureworks.production.tables.ProductInventory ProductInventory = new org.jooq.examples.sqlserver.adventureworks.production.tables.ProductInventory(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.examples.sqlserver.adventureworks.production.tables.records.ProductInventory.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT FK_ProductInventory_Product_ProductID
+	 * FOREIGN KEY (ProductID)
+	 * REFERENCES Production.Product (ProductID)
+	 * 
+ */ + public final org.jooq.TableField ProductID = createField("ProductID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT FK_ProductInventory_Location_LocationID
+	 * FOREIGN KEY (LocationID)
+	 * REFERENCES Production.Location (LocationID)
+	 * 
+ */ + public final org.jooq.TableField LocationID = createField("LocationID", org.jooq.impl.SQLDataType.SMALLINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField Shelf = createField("Shelf", org.jooq.impl.SQLDataType.NVARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField Bin = createField("Bin", org.jooq.impl.SQLDataType.TINYINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField Quantity = createField("Quantity", org.jooq.impl.SQLDataType.SMALLINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField rowguid = createField("rowguid", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField ModifiedDate = createField("ModifiedDate", org.jooq.impl.SQLDataType.TIMESTAMP, this); + + public ProductInventory() { + super("ProductInventory", org.jooq.examples.sqlserver.adventureworks.production.Production.Production); + } + + public ProductInventory(java.lang.String alias) { + super(alias, org.jooq.examples.sqlserver.adventureworks.production.Production.Production, org.jooq.examples.sqlserver.adventureworks.production.tables.ProductInventory.ProductInventory); + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.examples.sqlserver.adventureworks.production.Keys.PK_ProductInventory_ProductID_LocationID; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.examples.sqlserver.adventureworks.production.Keys.PK_ProductInventory_ProductID_LocationID); + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getReferences() { + return java.util.Arrays.>asList(org.jooq.examples.sqlserver.adventureworks.production.Keys.FK_ProductInventory_Product_ProductID, org.jooq.examples.sqlserver.adventureworks.production.Keys.FK_ProductInventory_Location_LocationID); + } + + @Override + public org.jooq.examples.sqlserver.adventureworks.production.tables.ProductInventory as(java.lang.String alias) { + return new org.jooq.examples.sqlserver.adventureworks.production.tables.ProductInventory(alias); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/tables/ProductListPriceHistory.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/tables/ProductListPriceHistory.java new file mode 100644 index 00000000000..f53eaf94360 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/tables/ProductListPriceHistory.java @@ -0,0 +1,95 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.production.tables; + +/** + * This class is generated by jOOQ. + */ +public class ProductListPriceHistory extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = 1630228129; + + /** + * The singleton instance of Production.ProductListPriceHistory + */ + public static final org.jooq.examples.sqlserver.adventureworks.production.tables.ProductListPriceHistory ProductListPriceHistory = new org.jooq.examples.sqlserver.adventureworks.production.tables.ProductListPriceHistory(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.examples.sqlserver.adventureworks.production.tables.records.ProductListPriceHistory.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT FK_ProductListPriceHistory_Product_ProductID
+	 * FOREIGN KEY (ProductID)
+	 * REFERENCES Production.Product (ProductID)
+	 * 
+ */ + public final org.jooq.TableField ProductID = createField("ProductID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final org.jooq.TableField StartDate = createField("StartDate", org.jooq.impl.SQLDataType.TIMESTAMP, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField EndDate = createField("EndDate", org.jooq.impl.SQLDataType.TIMESTAMP, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField ListPrice = createField("ListPrice", org.jooq.impl.SQLDataType.NUMERIC, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField ModifiedDate = createField("ModifiedDate", org.jooq.impl.SQLDataType.TIMESTAMP, this); + + public ProductListPriceHistory() { + super("ProductListPriceHistory", org.jooq.examples.sqlserver.adventureworks.production.Production.Production); + } + + public ProductListPriceHistory(java.lang.String alias) { + super(alias, org.jooq.examples.sqlserver.adventureworks.production.Production.Production, org.jooq.examples.sqlserver.adventureworks.production.tables.ProductListPriceHistory.ProductListPriceHistory); + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.examples.sqlserver.adventureworks.production.Keys.PK_ProductListPriceHistory_ProductID_StartDate; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.examples.sqlserver.adventureworks.production.Keys.PK_ProductListPriceHistory_ProductID_StartDate); + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getReferences() { + return java.util.Arrays.>asList(org.jooq.examples.sqlserver.adventureworks.production.Keys.FK_ProductListPriceHistory_Product_ProductID); + } + + @Override + public org.jooq.examples.sqlserver.adventureworks.production.tables.ProductListPriceHistory as(java.lang.String alias) { + return new org.jooq.examples.sqlserver.adventureworks.production.tables.ProductListPriceHistory(alias); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/tables/ProductModel.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/tables/ProductModel.java new file mode 100644 index 00000000000..a0ce872ea70 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/tables/ProductModel.java @@ -0,0 +1,97 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.production.tables; + +/** + * This class is generated by jOOQ. + */ +public class ProductModel extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = 555517150; + + /** + * The singleton instance of Production.ProductModel + */ + public static final org.jooq.examples.sqlserver.adventureworks.production.tables.ProductModel ProductModel = new org.jooq.examples.sqlserver.adventureworks.production.tables.ProductModel(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.examples.sqlserver.adventureworks.production.tables.records.ProductModel.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final org.jooq.TableField ProductModelID = createField("ProductModelID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField Name = createField("Name", org.jooq.impl.SQLDataType.NVARCHAR, this); + + /** + * An uncommented item + * + * The SQL type of this item (xml, ) could not be mapped.
+ * Deserialising this field might not work! + */ + public final org.jooq.TableField CatalogDescription = createField("CatalogDescription", org.jooq.util.sqlserver.SQLServerDataType.getDefaultDataType("xml"), this); + + /** + * An uncommented item + * + * The SQL type of this item (xml, ) could not be mapped.
+ * Deserialising this field might not work! + */ + public final org.jooq.TableField Instructions = createField("Instructions", org.jooq.util.sqlserver.SQLServerDataType.getDefaultDataType("xml"), this); + + /** + * An uncommented item + */ + public final org.jooq.TableField rowguid = createField("rowguid", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField ModifiedDate = createField("ModifiedDate", org.jooq.impl.SQLDataType.TIMESTAMP, this); + + public ProductModel() { + super("ProductModel", org.jooq.examples.sqlserver.adventureworks.production.Production.Production); + } + + public ProductModel(java.lang.String alias) { + super(alias, org.jooq.examples.sqlserver.adventureworks.production.Production.Production, org.jooq.examples.sqlserver.adventureworks.production.tables.ProductModel.ProductModel); + } + + @Override + public org.jooq.Identity getIdentity() { + return org.jooq.examples.sqlserver.adventureworks.production.Keys.IDENTITY_ProductModel; + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.examples.sqlserver.adventureworks.production.Keys.PK_ProductModel_ProductModelID; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.examples.sqlserver.adventureworks.production.Keys.PK_ProductModel_ProductModelID); + } + + @Override + public org.jooq.examples.sqlserver.adventureworks.production.tables.ProductModel as(java.lang.String alias) { + return new org.jooq.examples.sqlserver.adventureworks.production.tables.ProductModel(alias); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/tables/ProductModelIllustration.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/tables/ProductModelIllustration.java new file mode 100644 index 00000000000..62ba3723be5 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/tables/ProductModelIllustration.java @@ -0,0 +1,91 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.production.tables; + +/** + * This class is generated by jOOQ. + */ +public class ProductModelIllustration extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = -944841413; + + /** + * The singleton instance of Production.ProductModelIllustration + */ + public static final org.jooq.examples.sqlserver.adventureworks.production.tables.ProductModelIllustration ProductModelIllustration = new org.jooq.examples.sqlserver.adventureworks.production.tables.ProductModelIllustration(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.examples.sqlserver.adventureworks.production.tables.records.ProductModelIllustration.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT FK_ProductModelIllustration_ProductModel_ProductModelID
+	 * FOREIGN KEY (ProductModelID)
+	 * REFERENCES Production.ProductModel (ProductModelID)
+	 * 
+ */ + public final org.jooq.TableField ProductModelID = createField("ProductModelID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT FK_ProductModelIllustration_Illustration_IllustrationID
+	 * FOREIGN KEY (IllustrationID)
+	 * REFERENCES Production.Illustration (IllustrationID)
+	 * 
+ */ + public final org.jooq.TableField IllustrationID = createField("IllustrationID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField ModifiedDate = createField("ModifiedDate", org.jooq.impl.SQLDataType.TIMESTAMP, this); + + public ProductModelIllustration() { + super("ProductModelIllustration", org.jooq.examples.sqlserver.adventureworks.production.Production.Production); + } + + public ProductModelIllustration(java.lang.String alias) { + super(alias, org.jooq.examples.sqlserver.adventureworks.production.Production.Production, org.jooq.examples.sqlserver.adventureworks.production.tables.ProductModelIllustration.ProductModelIllustration); + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.examples.sqlserver.adventureworks.production.Keys.PK_ProductModelIllustration_ProductModelID_IllustrationID; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.examples.sqlserver.adventureworks.production.Keys.PK_ProductModelIllustration_ProductModelID_IllustrationID); + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getReferences() { + return java.util.Arrays.>asList(org.jooq.examples.sqlserver.adventureworks.production.Keys.FK_ProductModelIllustration_ProductModel_ProductModelID, org.jooq.examples.sqlserver.adventureworks.production.Keys.FK_ProductModelIllustration_Illustration_IllustrationID); + } + + @Override + public org.jooq.examples.sqlserver.adventureworks.production.tables.ProductModelIllustration as(java.lang.String alias) { + return new org.jooq.examples.sqlserver.adventureworks.production.tables.ProductModelIllustration(alias); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/tables/ProductModelProductDescriptionCulture.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/tables/ProductModelProductDescriptionCulture.java new file mode 100644 index 00000000000..4e0f36b00b7 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/tables/ProductModelProductDescriptionCulture.java @@ -0,0 +1,104 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.production.tables; + +/** + * This class is generated by jOOQ. + */ +public class ProductModelProductDescriptionCulture extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = 1690598436; + + /** + * The singleton instance of Production.ProductModelProductDescriptionCulture + */ + public static final org.jooq.examples.sqlserver.adventureworks.production.tables.ProductModelProductDescriptionCulture ProductModelProductDescriptionCulture = new org.jooq.examples.sqlserver.adventureworks.production.tables.ProductModelProductDescriptionCulture(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.examples.sqlserver.adventureworks.production.tables.records.ProductModelProductDescriptionCulture.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT FK_ProductModelProductDescriptionCulture_ProductModel_ProductModelID
+	 * FOREIGN KEY (ProductModelID)
+	 * REFERENCES Production.ProductModel (ProductModelID)
+	 * 
+ */ + public final org.jooq.TableField ProductModelID = createField("ProductModelID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT FK_ProductModelProductDescriptionCulture_ProductDescription_ProductDescriptionID
+	 * FOREIGN KEY (ProductDescriptionID)
+	 * REFERENCES Production.ProductDescription (ProductDescriptionID)
+	 * 
+ */ + public final org.jooq.TableField ProductDescriptionID = createField("ProductDescriptionID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT FK_ProductModelProductDescriptionCulture_Culture_CultureID
+	 * FOREIGN KEY (CultureID)
+	 * REFERENCES Production.Culture (CultureID)
+	 * 
+ */ + public final org.jooq.TableField CultureID = createField("CultureID", org.jooq.impl.SQLDataType.NCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField ModifiedDate = createField("ModifiedDate", org.jooq.impl.SQLDataType.TIMESTAMP, this); + + public ProductModelProductDescriptionCulture() { + super("ProductModelProductDescriptionCulture", org.jooq.examples.sqlserver.adventureworks.production.Production.Production); + } + + public ProductModelProductDescriptionCulture(java.lang.String alias) { + super(alias, org.jooq.examples.sqlserver.adventureworks.production.Production.Production, org.jooq.examples.sqlserver.adventureworks.production.tables.ProductModelProductDescriptionCulture.ProductModelProductDescriptionCulture); + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.examples.sqlserver.adventureworks.production.Keys.PK_ProductModelProductDescriptionCulture_ProductModelID_ProductDescriptionID_CultureID; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.examples.sqlserver.adventureworks.production.Keys.PK_ProductModelProductDescriptionCulture_ProductModelID_ProductDescriptionID_CultureID); + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getReferences() { + return java.util.Arrays.>asList(org.jooq.examples.sqlserver.adventureworks.production.Keys.FK_ProductModelProductDescriptionCulture_ProductModel_ProductModelID, org.jooq.examples.sqlserver.adventureworks.production.Keys.FK_ProductModelProductDescriptionCulture_ProductDescription_ProductDescriptionID, org.jooq.examples.sqlserver.adventureworks.production.Keys.FK_ProductModelProductDescriptionCulture_Culture_CultureID); + } + + @Override + public org.jooq.examples.sqlserver.adventureworks.production.tables.ProductModelProductDescriptionCulture as(java.lang.String alias) { + return new org.jooq.examples.sqlserver.adventureworks.production.tables.ProductModelProductDescriptionCulture(alias); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/tables/ProductPhoto.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/tables/ProductPhoto.java new file mode 100644 index 00000000000..b88d02f0e3a --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/tables/ProductPhoto.java @@ -0,0 +1,91 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.production.tables; + +/** + * This class is generated by jOOQ. + */ +public class ProductPhoto extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = 23245761; + + /** + * The singleton instance of Production.ProductPhoto + */ + public static final org.jooq.examples.sqlserver.adventureworks.production.tables.ProductPhoto ProductPhoto = new org.jooq.examples.sqlserver.adventureworks.production.tables.ProductPhoto(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.examples.sqlserver.adventureworks.production.tables.records.ProductPhoto.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final org.jooq.TableField ProductPhotoID = createField("ProductPhotoID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField ThumbNailPhoto = createField("ThumbNailPhoto", org.jooq.impl.SQLDataType.VARBINARY, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField ThumbnailPhotoFileName = createField("ThumbnailPhotoFileName", org.jooq.impl.SQLDataType.NVARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField LargePhoto = createField("LargePhoto", org.jooq.impl.SQLDataType.VARBINARY, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField LargePhotoFileName = createField("LargePhotoFileName", org.jooq.impl.SQLDataType.NVARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField ModifiedDate = createField("ModifiedDate", org.jooq.impl.SQLDataType.TIMESTAMP, this); + + public ProductPhoto() { + super("ProductPhoto", org.jooq.examples.sqlserver.adventureworks.production.Production.Production); + } + + public ProductPhoto(java.lang.String alias) { + super(alias, org.jooq.examples.sqlserver.adventureworks.production.Production.Production, org.jooq.examples.sqlserver.adventureworks.production.tables.ProductPhoto.ProductPhoto); + } + + @Override + public org.jooq.Identity getIdentity() { + return org.jooq.examples.sqlserver.adventureworks.production.Keys.IDENTITY_ProductPhoto; + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.examples.sqlserver.adventureworks.production.Keys.PK_ProductPhoto_ProductPhotoID; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.examples.sqlserver.adventureworks.production.Keys.PK_ProductPhoto_ProductPhotoID); + } + + @Override + public org.jooq.examples.sqlserver.adventureworks.production.tables.ProductPhoto as(java.lang.String alias) { + return new org.jooq.examples.sqlserver.adventureworks.production.tables.ProductPhoto(alias); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/tables/ProductProductPhoto.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/tables/ProductProductPhoto.java new file mode 100644 index 00000000000..02a18512c05 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/tables/ProductProductPhoto.java @@ -0,0 +1,96 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.production.tables; + +/** + * This class is generated by jOOQ. + */ +public class ProductProductPhoto extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = 680709842; + + /** + * The singleton instance of Production.ProductProductPhoto + */ + public static final org.jooq.examples.sqlserver.adventureworks.production.tables.ProductProductPhoto ProductProductPhoto = new org.jooq.examples.sqlserver.adventureworks.production.tables.ProductProductPhoto(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.examples.sqlserver.adventureworks.production.tables.records.ProductProductPhoto.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT FK_ProductProductPhoto_Product_ProductID
+	 * FOREIGN KEY (ProductID)
+	 * REFERENCES Production.Product (ProductID)
+	 * 
+ */ + public final org.jooq.TableField ProductID = createField("ProductID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT FK_ProductProductPhoto_ProductPhoto_ProductPhotoID
+	 * FOREIGN KEY (ProductPhotoID)
+	 * REFERENCES Production.ProductPhoto (ProductPhotoID)
+	 * 
+ */ + public final org.jooq.TableField ProductPhotoID = createField("ProductPhotoID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField Primary = createField("Primary", org.jooq.impl.SQLDataType.BIT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField ModifiedDate = createField("ModifiedDate", org.jooq.impl.SQLDataType.TIMESTAMP, this); + + public ProductProductPhoto() { + super("ProductProductPhoto", org.jooq.examples.sqlserver.adventureworks.production.Production.Production); + } + + public ProductProductPhoto(java.lang.String alias) { + super(alias, org.jooq.examples.sqlserver.adventureworks.production.Production.Production, org.jooq.examples.sqlserver.adventureworks.production.tables.ProductProductPhoto.ProductProductPhoto); + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.examples.sqlserver.adventureworks.production.Keys.PK_ProductProductPhoto_ProductID_ProductPhotoID; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.examples.sqlserver.adventureworks.production.Keys.PK_ProductProductPhoto_ProductID_ProductPhotoID); + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getReferences() { + return java.util.Arrays.>asList(org.jooq.examples.sqlserver.adventureworks.production.Keys.FK_ProductProductPhoto_Product_ProductID, org.jooq.examples.sqlserver.adventureworks.production.Keys.FK_ProductProductPhoto_ProductPhoto_ProductPhotoID); + } + + @Override + public org.jooq.examples.sqlserver.adventureworks.production.tables.ProductProductPhoto as(java.lang.String alias) { + return new org.jooq.examples.sqlserver.adventureworks.production.tables.ProductProductPhoto(alias); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/tables/ProductReview.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/tables/ProductReview.java new file mode 100644 index 00000000000..667ae7bbb5d --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/tables/ProductReview.java @@ -0,0 +1,113 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.production.tables; + +/** + * This class is generated by jOOQ. + */ +public class ProductReview extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = -430972954; + + /** + * The singleton instance of Production.ProductReview + */ + public static final org.jooq.examples.sqlserver.adventureworks.production.tables.ProductReview ProductReview = new org.jooq.examples.sqlserver.adventureworks.production.tables.ProductReview(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.examples.sqlserver.adventureworks.production.tables.records.ProductReview.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final org.jooq.TableField ProductReviewID = createField("ProductReviewID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_ProductReview_Product_ProductID
+	 * FOREIGN KEY (ProductID)
+	 * REFERENCES Production.Product (ProductID)
+	 * 
+ */ + public final org.jooq.TableField ProductID = createField("ProductID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField ReviewerName = createField("ReviewerName", org.jooq.impl.SQLDataType.NVARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField ReviewDate = createField("ReviewDate", org.jooq.impl.SQLDataType.TIMESTAMP, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField EmailAddress = createField("EmailAddress", org.jooq.impl.SQLDataType.NVARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField Rating = createField("Rating", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField Comments = createField("Comments", org.jooq.impl.SQLDataType.NVARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField ModifiedDate = createField("ModifiedDate", org.jooq.impl.SQLDataType.TIMESTAMP, this); + + public ProductReview() { + super("ProductReview", org.jooq.examples.sqlserver.adventureworks.production.Production.Production); + } + + public ProductReview(java.lang.String alias) { + super(alias, org.jooq.examples.sqlserver.adventureworks.production.Production.Production, org.jooq.examples.sqlserver.adventureworks.production.tables.ProductReview.ProductReview); + } + + @Override + public org.jooq.Identity getIdentity() { + return org.jooq.examples.sqlserver.adventureworks.production.Keys.IDENTITY_ProductReview; + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.examples.sqlserver.adventureworks.production.Keys.PK_ProductReview_ProductReviewID; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.examples.sqlserver.adventureworks.production.Keys.PK_ProductReview_ProductReviewID); + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getReferences() { + return java.util.Arrays.>asList(org.jooq.examples.sqlserver.adventureworks.production.Keys.FK_ProductReview_Product_ProductID); + } + + @Override + public org.jooq.examples.sqlserver.adventureworks.production.tables.ProductReview as(java.lang.String alias) { + return new org.jooq.examples.sqlserver.adventureworks.production.tables.ProductReview(alias); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/tables/ProductSubcategory.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/tables/ProductSubcategory.java new file mode 100644 index 00000000000..d5c3c164d34 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/tables/ProductSubcategory.java @@ -0,0 +1,98 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.production.tables; + +/** + * This class is generated by jOOQ. + */ +public class ProductSubcategory extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = -535936515; + + /** + * The singleton instance of Production.ProductSubcategory + */ + public static final org.jooq.examples.sqlserver.adventureworks.production.tables.ProductSubcategory ProductSubcategory = new org.jooq.examples.sqlserver.adventureworks.production.tables.ProductSubcategory(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.examples.sqlserver.adventureworks.production.tables.records.ProductSubcategory.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final org.jooq.TableField ProductSubcategoryID = createField("ProductSubcategoryID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_ProductSubcategory_ProductCategory_ProductCategoryID
+	 * FOREIGN KEY (ProductCategoryID)
+	 * REFERENCES Production.ProductCategory (ProductCategoryID)
+	 * 
+ */ + public final org.jooq.TableField ProductCategoryID = createField("ProductCategoryID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField Name = createField("Name", org.jooq.impl.SQLDataType.NVARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField rowguid = createField("rowguid", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField ModifiedDate = createField("ModifiedDate", org.jooq.impl.SQLDataType.TIMESTAMP, this); + + public ProductSubcategory() { + super("ProductSubcategory", org.jooq.examples.sqlserver.adventureworks.production.Production.Production); + } + + public ProductSubcategory(java.lang.String alias) { + super(alias, org.jooq.examples.sqlserver.adventureworks.production.Production.Production, org.jooq.examples.sqlserver.adventureworks.production.tables.ProductSubcategory.ProductSubcategory); + } + + @Override + public org.jooq.Identity getIdentity() { + return org.jooq.examples.sqlserver.adventureworks.production.Keys.IDENTITY_ProductSubcategory; + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.examples.sqlserver.adventureworks.production.Keys.PK_ProductSubcategory_ProductSubcategoryID; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.examples.sqlserver.adventureworks.production.Keys.PK_ProductSubcategory_ProductSubcategoryID); + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getReferences() { + return java.util.Arrays.>asList(org.jooq.examples.sqlserver.adventureworks.production.Keys.FK_ProductSubcategory_ProductCategory_ProductCategoryID); + } + + @Override + public org.jooq.examples.sqlserver.adventureworks.production.tables.ProductSubcategory as(java.lang.String alias) { + return new org.jooq.examples.sqlserver.adventureworks.production.tables.ProductSubcategory(alias); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/tables/ScrapReason.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/tables/ScrapReason.java new file mode 100644 index 00000000000..3471ec354f8 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/tables/ScrapReason.java @@ -0,0 +1,76 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.production.tables; + +/** + * This class is generated by jOOQ. + */ +public class ScrapReason extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = 1965974990; + + /** + * The singleton instance of Production.ScrapReason + */ + public static final org.jooq.examples.sqlserver.adventureworks.production.tables.ScrapReason ScrapReason = new org.jooq.examples.sqlserver.adventureworks.production.tables.ScrapReason(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.examples.sqlserver.adventureworks.production.tables.records.ScrapReason.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final org.jooq.TableField ScrapReasonID = createField("ScrapReasonID", org.jooq.impl.SQLDataType.SMALLINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField Name = createField("Name", org.jooq.impl.SQLDataType.NVARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField ModifiedDate = createField("ModifiedDate", org.jooq.impl.SQLDataType.TIMESTAMP, this); + + public ScrapReason() { + super("ScrapReason", org.jooq.examples.sqlserver.adventureworks.production.Production.Production); + } + + public ScrapReason(java.lang.String alias) { + super(alias, org.jooq.examples.sqlserver.adventureworks.production.Production.Production, org.jooq.examples.sqlserver.adventureworks.production.tables.ScrapReason.ScrapReason); + } + + @Override + public org.jooq.Identity getIdentity() { + return org.jooq.examples.sqlserver.adventureworks.production.Keys.IDENTITY_ScrapReason; + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.examples.sqlserver.adventureworks.production.Keys.PK_ScrapReason_ScrapReasonID; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.examples.sqlserver.adventureworks.production.Keys.PK_ScrapReason_ScrapReasonID); + } + + @Override + public org.jooq.examples.sqlserver.adventureworks.production.tables.ScrapReason as(java.lang.String alias) { + return new org.jooq.examples.sqlserver.adventureworks.production.tables.ScrapReason(alias); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/tables/TransactionHistory.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/tables/TransactionHistory.java new file mode 100644 index 00000000000..8f615ea262f --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/tables/TransactionHistory.java @@ -0,0 +1,118 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.production.tables; + +/** + * This class is generated by jOOQ. + */ +public class TransactionHistory extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = -1951887004; + + /** + * The singleton instance of Production.TransactionHistory + */ + public static final org.jooq.examples.sqlserver.adventureworks.production.tables.TransactionHistory TransactionHistory = new org.jooq.examples.sqlserver.adventureworks.production.tables.TransactionHistory(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.examples.sqlserver.adventureworks.production.tables.records.TransactionHistory.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final org.jooq.TableField TransactionID = createField("TransactionID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_TransactionHistory_Product_ProductID
+	 * FOREIGN KEY (ProductID)
+	 * REFERENCES Production.Product (ProductID)
+	 * 
+ */ + public final org.jooq.TableField ProductID = createField("ProductID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField ReferenceOrderID = createField("ReferenceOrderID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField ReferenceOrderLineID = createField("ReferenceOrderLineID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField TransactionDate = createField("TransactionDate", org.jooq.impl.SQLDataType.TIMESTAMP, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField TransactionType = createField("TransactionType", org.jooq.impl.SQLDataType.NCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField Quantity = createField("Quantity", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField ActualCost = createField("ActualCost", org.jooq.impl.SQLDataType.NUMERIC, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField ModifiedDate = createField("ModifiedDate", org.jooq.impl.SQLDataType.TIMESTAMP, this); + + public TransactionHistory() { + super("TransactionHistory", org.jooq.examples.sqlserver.adventureworks.production.Production.Production); + } + + public TransactionHistory(java.lang.String alias) { + super(alias, org.jooq.examples.sqlserver.adventureworks.production.Production.Production, org.jooq.examples.sqlserver.adventureworks.production.tables.TransactionHistory.TransactionHistory); + } + + @Override + public org.jooq.Identity getIdentity() { + return org.jooq.examples.sqlserver.adventureworks.production.Keys.IDENTITY_TransactionHistory; + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.examples.sqlserver.adventureworks.production.Keys.PK_TransactionHistory_TransactionID; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.examples.sqlserver.adventureworks.production.Keys.PK_TransactionHistory_TransactionID); + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getReferences() { + return java.util.Arrays.>asList(org.jooq.examples.sqlserver.adventureworks.production.Keys.FK_TransactionHistory_Product_ProductID); + } + + @Override + public org.jooq.examples.sqlserver.adventureworks.production.tables.TransactionHistory as(java.lang.String alias) { + return new org.jooq.examples.sqlserver.adventureworks.production.tables.TransactionHistory(alias); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/tables/TransactionHistoryArchive.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/tables/TransactionHistoryArchive.java new file mode 100644 index 00000000000..c0f28509709 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/tables/TransactionHistoryArchive.java @@ -0,0 +1,101 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.production.tables; + +/** + * This class is generated by jOOQ. + */ +public class TransactionHistoryArchive extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = 1129770480; + + /** + * The singleton instance of Production.TransactionHistoryArchive + */ + public static final org.jooq.examples.sqlserver.adventureworks.production.tables.TransactionHistoryArchive TransactionHistoryArchive = new org.jooq.examples.sqlserver.adventureworks.production.tables.TransactionHistoryArchive(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.examples.sqlserver.adventureworks.production.tables.records.TransactionHistoryArchive.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final org.jooq.TableField TransactionID = createField("TransactionID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField ProductID = createField("ProductID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField ReferenceOrderID = createField("ReferenceOrderID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField ReferenceOrderLineID = createField("ReferenceOrderLineID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField TransactionDate = createField("TransactionDate", org.jooq.impl.SQLDataType.TIMESTAMP, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField TransactionType = createField("TransactionType", org.jooq.impl.SQLDataType.NCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField Quantity = createField("Quantity", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField ActualCost = createField("ActualCost", org.jooq.impl.SQLDataType.NUMERIC, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField ModifiedDate = createField("ModifiedDate", org.jooq.impl.SQLDataType.TIMESTAMP, this); + + public TransactionHistoryArchive() { + super("TransactionHistoryArchive", org.jooq.examples.sqlserver.adventureworks.production.Production.Production); + } + + public TransactionHistoryArchive(java.lang.String alias) { + super(alias, org.jooq.examples.sqlserver.adventureworks.production.Production.Production, org.jooq.examples.sqlserver.adventureworks.production.tables.TransactionHistoryArchive.TransactionHistoryArchive); + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.examples.sqlserver.adventureworks.production.Keys.PK_TransactionHistoryArchive_TransactionID; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.examples.sqlserver.adventureworks.production.Keys.PK_TransactionHistoryArchive_TransactionID); + } + + @Override + public org.jooq.examples.sqlserver.adventureworks.production.tables.TransactionHistoryArchive as(java.lang.String alias) { + return new org.jooq.examples.sqlserver.adventureworks.production.tables.TransactionHistoryArchive(alias); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/tables/UnitMeasure.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/tables/UnitMeasure.java new file mode 100644 index 00000000000..1eb2b95023c --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/tables/UnitMeasure.java @@ -0,0 +1,71 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.production.tables; + +/** + * This class is generated by jOOQ. + */ +public class UnitMeasure extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = 1205735086; + + /** + * The singleton instance of Production.UnitMeasure + */ + public static final org.jooq.examples.sqlserver.adventureworks.production.tables.UnitMeasure UnitMeasure = new org.jooq.examples.sqlserver.adventureworks.production.tables.UnitMeasure(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.examples.sqlserver.adventureworks.production.tables.records.UnitMeasure.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final org.jooq.TableField UnitMeasureCode = createField("UnitMeasureCode", org.jooq.impl.SQLDataType.NCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField Name = createField("Name", org.jooq.impl.SQLDataType.NVARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField ModifiedDate = createField("ModifiedDate", org.jooq.impl.SQLDataType.TIMESTAMP, this); + + public UnitMeasure() { + super("UnitMeasure", org.jooq.examples.sqlserver.adventureworks.production.Production.Production); + } + + public UnitMeasure(java.lang.String alias) { + super(alias, org.jooq.examples.sqlserver.adventureworks.production.Production.Production, org.jooq.examples.sqlserver.adventureworks.production.tables.UnitMeasure.UnitMeasure); + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.examples.sqlserver.adventureworks.production.Keys.PK_UnitMeasure_UnitMeasureCode; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.examples.sqlserver.adventureworks.production.Keys.PK_UnitMeasure_UnitMeasureCode); + } + + @Override + public org.jooq.examples.sqlserver.adventureworks.production.tables.UnitMeasure as(java.lang.String alias) { + return new org.jooq.examples.sqlserver.adventureworks.production.tables.UnitMeasure(alias); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/tables/WorkOrder.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/tables/WorkOrder.java new file mode 100644 index 00000000000..c7233219541 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/tables/WorkOrder.java @@ -0,0 +1,129 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.production.tables; + +/** + * This class is generated by jOOQ. + */ +public class WorkOrder extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = -77447262; + + /** + * The singleton instance of Production.WorkOrder + */ + public static final org.jooq.examples.sqlserver.adventureworks.production.tables.WorkOrder WorkOrder = new org.jooq.examples.sqlserver.adventureworks.production.tables.WorkOrder(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.examples.sqlserver.adventureworks.production.tables.records.WorkOrder.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final org.jooq.TableField WorkOrderID = createField("WorkOrderID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_WorkOrder_Product_ProductID
+	 * FOREIGN KEY (ProductID)
+	 * REFERENCES Production.Product (ProductID)
+	 * 
+ */ + public final org.jooq.TableField ProductID = createField("ProductID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField OrderQty = createField("OrderQty", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField StockedQty = createField("StockedQty", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField ScrappedQty = createField("ScrappedQty", org.jooq.impl.SQLDataType.SMALLINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField StartDate = createField("StartDate", org.jooq.impl.SQLDataType.TIMESTAMP, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField EndDate = createField("EndDate", org.jooq.impl.SQLDataType.TIMESTAMP, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField DueDate = createField("DueDate", org.jooq.impl.SQLDataType.TIMESTAMP, this); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_WorkOrder_ScrapReason_ScrapReasonID
+	 * FOREIGN KEY (ScrapReasonID)
+	 * REFERENCES Production.ScrapReason (ScrapReasonID)
+	 * 
+ */ + public final org.jooq.TableField ScrapReasonID = createField("ScrapReasonID", org.jooq.impl.SQLDataType.SMALLINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField ModifiedDate = createField("ModifiedDate", org.jooq.impl.SQLDataType.TIMESTAMP, this); + + public WorkOrder() { + super("WorkOrder", org.jooq.examples.sqlserver.adventureworks.production.Production.Production); + } + + public WorkOrder(java.lang.String alias) { + super(alias, org.jooq.examples.sqlserver.adventureworks.production.Production.Production, org.jooq.examples.sqlserver.adventureworks.production.tables.WorkOrder.WorkOrder); + } + + @Override + public org.jooq.Identity getIdentity() { + return org.jooq.examples.sqlserver.adventureworks.production.Keys.IDENTITY_WorkOrder; + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.examples.sqlserver.adventureworks.production.Keys.PK_WorkOrder_WorkOrderID; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.examples.sqlserver.adventureworks.production.Keys.PK_WorkOrder_WorkOrderID); + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getReferences() { + return java.util.Arrays.>asList(org.jooq.examples.sqlserver.adventureworks.production.Keys.FK_WorkOrder_Product_ProductID, org.jooq.examples.sqlserver.adventureworks.production.Keys.FK_WorkOrder_ScrapReason_ScrapReasonID); + } + + @Override + public org.jooq.examples.sqlserver.adventureworks.production.tables.WorkOrder as(java.lang.String alias) { + return new org.jooq.examples.sqlserver.adventureworks.production.tables.WorkOrder(alias); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/tables/WorkOrderRouting.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/tables/WorkOrderRouting.java new file mode 100644 index 00000000000..83a2517ec2f --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/tables/WorkOrderRouting.java @@ -0,0 +1,138 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.production.tables; + +/** + * This class is generated by jOOQ. + */ +public class WorkOrderRouting extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = -1027055777; + + /** + * The singleton instance of Production.WorkOrderRouting + */ + public static final org.jooq.examples.sqlserver.adventureworks.production.tables.WorkOrderRouting WorkOrderRouting = new org.jooq.examples.sqlserver.adventureworks.production.tables.WorkOrderRouting(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.examples.sqlserver.adventureworks.production.tables.records.WorkOrderRouting.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT FK_WorkOrderRouting_WorkOrder_WorkOrderID
+	 * FOREIGN KEY (WorkOrderID)
+	 * REFERENCES Production.WorkOrder (WorkOrderID)
+	 * 
+ */ + public final org.jooq.TableField WorkOrderID = createField("WorkOrderID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final org.jooq.TableField ProductID = createField("ProductID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final org.jooq.TableField OperationSequence = createField("OperationSequence", org.jooq.impl.SQLDataType.SMALLINT, this); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_WorkOrderRouting_Location_LocationID
+	 * FOREIGN KEY (LocationID)
+	 * REFERENCES Production.Location (LocationID)
+	 * 
+ */ + public final org.jooq.TableField LocationID = createField("LocationID", org.jooq.impl.SQLDataType.SMALLINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField ScheduledStartDate = createField("ScheduledStartDate", org.jooq.impl.SQLDataType.TIMESTAMP, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField ScheduledEndDate = createField("ScheduledEndDate", org.jooq.impl.SQLDataType.TIMESTAMP, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField ActualStartDate = createField("ActualStartDate", org.jooq.impl.SQLDataType.TIMESTAMP, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField ActualEndDate = createField("ActualEndDate", org.jooq.impl.SQLDataType.TIMESTAMP, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField ActualResourceHrs = createField("ActualResourceHrs", org.jooq.impl.SQLDataType.NUMERIC, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField PlannedCost = createField("PlannedCost", org.jooq.impl.SQLDataType.NUMERIC, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField ActualCost = createField("ActualCost", org.jooq.impl.SQLDataType.NUMERIC, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField ModifiedDate = createField("ModifiedDate", org.jooq.impl.SQLDataType.TIMESTAMP, this); + + public WorkOrderRouting() { + super("WorkOrderRouting", org.jooq.examples.sqlserver.adventureworks.production.Production.Production); + } + + public WorkOrderRouting(java.lang.String alias) { + super(alias, org.jooq.examples.sqlserver.adventureworks.production.Production.Production, org.jooq.examples.sqlserver.adventureworks.production.tables.WorkOrderRouting.WorkOrderRouting); + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.examples.sqlserver.adventureworks.production.Keys.PK_WorkOrderRouting_WorkOrderID_ProductID_OperationSequence; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.examples.sqlserver.adventureworks.production.Keys.PK_WorkOrderRouting_WorkOrderID_ProductID_OperationSequence); + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getReferences() { + return java.util.Arrays.>asList(org.jooq.examples.sqlserver.adventureworks.production.Keys.FK_WorkOrderRouting_WorkOrder_WorkOrderID, org.jooq.examples.sqlserver.adventureworks.production.Keys.FK_WorkOrderRouting_Location_LocationID); + } + + @Override + public org.jooq.examples.sqlserver.adventureworks.production.tables.WorkOrderRouting as(java.lang.String alias) { + return new org.jooq.examples.sqlserver.adventureworks.production.tables.WorkOrderRouting(alias); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/tables/pojos/BillOfMaterials.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/tables/pojos/BillOfMaterials.java new file mode 100644 index 00000000000..b6822b9e11a --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/tables/pojos/BillOfMaterials.java @@ -0,0 +1,106 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.production.tables.pojos; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "BillOfMaterials", schema = "Production") +public class BillOfMaterials implements java.io.Serializable { + + private static final long serialVersionUID = -473207663; + + private java.lang.Integer BillOfMaterialsID; + private java.lang.Integer ProductAssemblyID; + private java.lang.Integer ComponentID; + private java.sql.Timestamp StartDate; + private java.sql.Timestamp EndDate; + private java.lang.String UnitMeasureCode; + private java.lang.Short BOMLevel; + private java.math.BigDecimal PerAssemblyQty; + private java.sql.Timestamp ModifiedDate; + + @javax.persistence.Id + @javax.persistence.Column(name = "BillOfMaterialsID", unique = true, nullable = false, precision = 10) + public java.lang.Integer getBillOfMaterialsID() { + return this.BillOfMaterialsID; + } + + public void setBillOfMaterialsID(java.lang.Integer BillOfMaterialsID) { + this.BillOfMaterialsID = BillOfMaterialsID; + } + + @javax.persistence.Column(name = "ProductAssemblyID", precision = 10) + public java.lang.Integer getProductAssemblyID() { + return this.ProductAssemblyID; + } + + public void setProductAssemblyID(java.lang.Integer ProductAssemblyID) { + this.ProductAssemblyID = ProductAssemblyID; + } + + @javax.persistence.Column(name = "ComponentID", nullable = false, precision = 10) + public java.lang.Integer getComponentID() { + return this.ComponentID; + } + + public void setComponentID(java.lang.Integer ComponentID) { + this.ComponentID = ComponentID; + } + + @javax.persistence.Column(name = "StartDate", nullable = false) + public java.sql.Timestamp getStartDate() { + return this.StartDate; + } + + public void setStartDate(java.sql.Timestamp StartDate) { + this.StartDate = StartDate; + } + + @javax.persistence.Column(name = "EndDate") + public java.sql.Timestamp getEndDate() { + return this.EndDate; + } + + public void setEndDate(java.sql.Timestamp EndDate) { + this.EndDate = EndDate; + } + + @javax.persistence.Column(name = "UnitMeasureCode", nullable = false, length = 3) + public java.lang.String getUnitMeasureCode() { + return this.UnitMeasureCode; + } + + public void setUnitMeasureCode(java.lang.String UnitMeasureCode) { + this.UnitMeasureCode = UnitMeasureCode; + } + + @javax.persistence.Column(name = "BOMLevel", nullable = false, precision = 5) + public java.lang.Short getBOMLevel() { + return this.BOMLevel; + } + + public void setBOMLevel(java.lang.Short BOMLevel) { + this.BOMLevel = BOMLevel; + } + + @javax.persistence.Column(name = "PerAssemblyQty", nullable = false, precision = 8, scale = 2) + public java.math.BigDecimal getPerAssemblyQty() { + return this.PerAssemblyQty; + } + + public void setPerAssemblyQty(java.math.BigDecimal PerAssemblyQty) { + this.PerAssemblyQty = PerAssemblyQty; + } + + @javax.persistence.Column(name = "ModifiedDate", nullable = false) + public java.sql.Timestamp getModifiedDate() { + return this.ModifiedDate; + } + + public void setModifiedDate(java.sql.Timestamp ModifiedDate) { + this.ModifiedDate = ModifiedDate; + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/tables/pojos/Culture.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/tables/pojos/Culture.java new file mode 100644 index 00000000000..13046536e85 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/tables/pojos/Culture.java @@ -0,0 +1,46 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.production.tables.pojos; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "Culture", schema = "Production") +public class Culture implements java.io.Serializable { + + private static final long serialVersionUID = -265854520; + + private java.lang.String CultureID; + private java.lang.String Name; + private java.sql.Timestamp ModifiedDate; + + @javax.persistence.Id + @javax.persistence.Column(name = "CultureID", unique = true, nullable = false, length = 6) + public java.lang.String getCultureID() { + return this.CultureID; + } + + public void setCultureID(java.lang.String CultureID) { + this.CultureID = CultureID; + } + + @javax.persistence.Column(name = "Name", nullable = false, length = 50) + public java.lang.String getName() { + return this.Name; + } + + public void setName(java.lang.String Name) { + this.Name = Name; + } + + @javax.persistence.Column(name = "ModifiedDate", nullable = false) + public java.sql.Timestamp getModifiedDate() { + return this.ModifiedDate; + } + + public void setModifiedDate(java.sql.Timestamp ModifiedDate) { + this.ModifiedDate = ModifiedDate; + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/tables/pojos/Document.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/tables/pojos/Document.java new file mode 100644 index 00000000000..d68141e4de6 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/tables/pojos/Document.java @@ -0,0 +1,116 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.production.tables.pojos; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "Document", schema = "Production") +public class Document implements java.io.Serializable { + + private static final long serialVersionUID = 24435218; + + private java.lang.Integer DocumentID; + private java.lang.String Title; + private java.lang.String FileName; + private java.lang.String FileExtension; + private java.lang.String Revision; + private java.lang.Integer ChangeNumber; + private java.lang.Byte Status; + private java.lang.String DocumentSummary; + private byte[] Document; + private java.sql.Timestamp ModifiedDate; + + @javax.persistence.Id + @javax.persistence.Column(name = "DocumentID", unique = true, nullable = false, precision = 10) + public java.lang.Integer getDocumentID() { + return this.DocumentID; + } + + public void setDocumentID(java.lang.Integer DocumentID) { + this.DocumentID = DocumentID; + } + + @javax.persistence.Column(name = "Title", nullable = false, length = 50) + public java.lang.String getTitle() { + return this.Title; + } + + public void setTitle(java.lang.String Title) { + this.Title = Title; + } + + @javax.persistence.Column(name = "FileName", nullable = false, length = 400) + public java.lang.String getFileName() { + return this.FileName; + } + + public void setFileName(java.lang.String FileName) { + this.FileName = FileName; + } + + @javax.persistence.Column(name = "FileExtension", nullable = false, length = 8) + public java.lang.String getFileExtension() { + return this.FileExtension; + } + + public void setFileExtension(java.lang.String FileExtension) { + this.FileExtension = FileExtension; + } + + @javax.persistence.Column(name = "Revision", nullable = false, length = 5) + public java.lang.String getRevision() { + return this.Revision; + } + + public void setRevision(java.lang.String Revision) { + this.Revision = Revision; + } + + @javax.persistence.Column(name = "ChangeNumber", nullable = false, precision = 10) + public java.lang.Integer getChangeNumber() { + return this.ChangeNumber; + } + + public void setChangeNumber(java.lang.Integer ChangeNumber) { + this.ChangeNumber = ChangeNumber; + } + + @javax.persistence.Column(name = "Status", nullable = false, precision = 3) + public java.lang.Byte getStatus() { + return this.Status; + } + + public void setStatus(java.lang.Byte Status) { + this.Status = Status; + } + + @javax.persistence.Column(name = "DocumentSummary") + public java.lang.String getDocumentSummary() { + return this.DocumentSummary; + } + + public void setDocumentSummary(java.lang.String DocumentSummary) { + this.DocumentSummary = DocumentSummary; + } + + @javax.persistence.Column(name = "Document") + public byte[] getDocument() { + return this.Document; + } + + public void setDocument(byte[] Document) { + this.Document = Document; + } + + @javax.persistence.Column(name = "ModifiedDate", nullable = false) + public java.sql.Timestamp getModifiedDate() { + return this.ModifiedDate; + } + + public void setModifiedDate(java.sql.Timestamp ModifiedDate) { + this.ModifiedDate = ModifiedDate; + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/tables/pojos/Illustration.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/tables/pojos/Illustration.java new file mode 100644 index 00000000000..5ca7b20b45a --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/tables/pojos/Illustration.java @@ -0,0 +1,46 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.production.tables.pojos; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "Illustration", schema = "Production") +public class Illustration implements java.io.Serializable { + + private static final long serialVersionUID = -1841215469; + + private java.lang.Integer IllustrationID; + private java.lang.Object Diagram; + private java.sql.Timestamp ModifiedDate; + + @javax.persistence.Id + @javax.persistence.Column(name = "IllustrationID", unique = true, nullable = false, precision = 10) + public java.lang.Integer getIllustrationID() { + return this.IllustrationID; + } + + public void setIllustrationID(java.lang.Integer IllustrationID) { + this.IllustrationID = IllustrationID; + } + + @javax.persistence.Column(name = "Diagram") + public java.lang.Object getDiagram() { + return this.Diagram; + } + + public void setDiagram(java.lang.Object Diagram) { + this.Diagram = Diagram; + } + + @javax.persistence.Column(name = "ModifiedDate", nullable = false) + public java.sql.Timestamp getModifiedDate() { + return this.ModifiedDate; + } + + public void setModifiedDate(java.sql.Timestamp ModifiedDate) { + this.ModifiedDate = ModifiedDate; + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/tables/pojos/Location.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/tables/pojos/Location.java new file mode 100644 index 00000000000..7bf427a709a --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/tables/pojos/Location.java @@ -0,0 +1,66 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.production.tables.pojos; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "Location", schema = "Production") +public class Location implements java.io.Serializable { + + private static final long serialVersionUID = 1439113007; + + private java.lang.Short LocationID; + private java.lang.String Name; + private java.math.BigDecimal CostRate; + private java.math.BigDecimal Availability; + private java.sql.Timestamp ModifiedDate; + + @javax.persistence.Id + @javax.persistence.Column(name = "LocationID", unique = true, nullable = false, precision = 5) + public java.lang.Short getLocationID() { + return this.LocationID; + } + + public void setLocationID(java.lang.Short LocationID) { + this.LocationID = LocationID; + } + + @javax.persistence.Column(name = "Name", nullable = false, length = 50) + public java.lang.String getName() { + return this.Name; + } + + public void setName(java.lang.String Name) { + this.Name = Name; + } + + @javax.persistence.Column(name = "CostRate", nullable = false, precision = 10, scale = 4) + public java.math.BigDecimal getCostRate() { + return this.CostRate; + } + + public void setCostRate(java.math.BigDecimal CostRate) { + this.CostRate = CostRate; + } + + @javax.persistence.Column(name = "Availability", nullable = false, precision = 8, scale = 2) + public java.math.BigDecimal getAvailability() { + return this.Availability; + } + + public void setAvailability(java.math.BigDecimal Availability) { + this.Availability = Availability; + } + + @javax.persistence.Column(name = "ModifiedDate", nullable = false) + public java.sql.Timestamp getModifiedDate() { + return this.ModifiedDate; + } + + public void setModifiedDate(java.sql.Timestamp ModifiedDate) { + this.ModifiedDate = ModifiedDate; + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/tables/pojos/Product.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/tables/pojos/Product.java new file mode 100644 index 00000000000..2b682fe13ad --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/tables/pojos/Product.java @@ -0,0 +1,266 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.production.tables.pojos; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "Product", schema = "Production") +public class Product implements java.io.Serializable { + + private static final long serialVersionUID = -313725846; + + private java.lang.Integer ProductID; + private java.lang.String Name; + private java.lang.String ProductNumber; + private java.lang.Boolean MakeFlag; + private java.lang.Boolean FinishedGoodsFlag; + private java.lang.String Color; + private java.lang.Short SafetyStockLevel; + private java.lang.Short ReorderPoint; + private java.math.BigDecimal StandardCost; + private java.math.BigDecimal ListPrice; + private java.lang.String Size; + private java.lang.String SizeUnitMeasureCode; + private java.lang.String WeightUnitMeasureCode; + private java.math.BigDecimal Weight; + private java.lang.Integer DaysToManufacture; + private java.lang.String ProductLine; + private java.lang.String Class; + private java.lang.String Style; + private java.lang.Integer ProductSubcategoryID; + private java.lang.Integer ProductModelID; + private java.sql.Timestamp SellStartDate; + private java.sql.Timestamp SellEndDate; + private java.sql.Timestamp DiscontinuedDate; + private java.lang.String rowguid; + private java.sql.Timestamp ModifiedDate; + + @javax.persistence.Id + @javax.persistence.Column(name = "ProductID", unique = true, nullable = false, precision = 10) + public java.lang.Integer getProductID() { + return this.ProductID; + } + + public void setProductID(java.lang.Integer ProductID) { + this.ProductID = ProductID; + } + + @javax.persistence.Column(name = "Name", nullable = false, length = 50) + public java.lang.String getName() { + return this.Name; + } + + public void setName(java.lang.String Name) { + this.Name = Name; + } + + @javax.persistence.Column(name = "ProductNumber", nullable = false, length = 25) + public java.lang.String getProductNumber() { + return this.ProductNumber; + } + + public void setProductNumber(java.lang.String ProductNumber) { + this.ProductNumber = ProductNumber; + } + + @javax.persistence.Column(name = "MakeFlag", nullable = false) + public java.lang.Boolean getMakeFlag() { + return this.MakeFlag; + } + + public void setMakeFlag(java.lang.Boolean MakeFlag) { + this.MakeFlag = MakeFlag; + } + + @javax.persistence.Column(name = "FinishedGoodsFlag", nullable = false) + public java.lang.Boolean getFinishedGoodsFlag() { + return this.FinishedGoodsFlag; + } + + public void setFinishedGoodsFlag(java.lang.Boolean FinishedGoodsFlag) { + this.FinishedGoodsFlag = FinishedGoodsFlag; + } + + @javax.persistence.Column(name = "Color", length = 15) + public java.lang.String getColor() { + return this.Color; + } + + public void setColor(java.lang.String Color) { + this.Color = Color; + } + + @javax.persistence.Column(name = "SafetyStockLevel", nullable = false, precision = 5) + public java.lang.Short getSafetyStockLevel() { + return this.SafetyStockLevel; + } + + public void setSafetyStockLevel(java.lang.Short SafetyStockLevel) { + this.SafetyStockLevel = SafetyStockLevel; + } + + @javax.persistence.Column(name = "ReorderPoint", nullable = false, precision = 5) + public java.lang.Short getReorderPoint() { + return this.ReorderPoint; + } + + public void setReorderPoint(java.lang.Short ReorderPoint) { + this.ReorderPoint = ReorderPoint; + } + + @javax.persistence.Column(name = "StandardCost", nullable = false, precision = 19, scale = 4) + public java.math.BigDecimal getStandardCost() { + return this.StandardCost; + } + + public void setStandardCost(java.math.BigDecimal StandardCost) { + this.StandardCost = StandardCost; + } + + @javax.persistence.Column(name = "ListPrice", nullable = false, precision = 19, scale = 4) + public java.math.BigDecimal getListPrice() { + return this.ListPrice; + } + + public void setListPrice(java.math.BigDecimal ListPrice) { + this.ListPrice = ListPrice; + } + + @javax.persistence.Column(name = "Size", length = 5) + public java.lang.String getSize() { + return this.Size; + } + + public void setSize(java.lang.String Size) { + this.Size = Size; + } + + @javax.persistence.Column(name = "SizeUnitMeasureCode", length = 3) + public java.lang.String getSizeUnitMeasureCode() { + return this.SizeUnitMeasureCode; + } + + public void setSizeUnitMeasureCode(java.lang.String SizeUnitMeasureCode) { + this.SizeUnitMeasureCode = SizeUnitMeasureCode; + } + + @javax.persistence.Column(name = "WeightUnitMeasureCode", length = 3) + public java.lang.String getWeightUnitMeasureCode() { + return this.WeightUnitMeasureCode; + } + + public void setWeightUnitMeasureCode(java.lang.String WeightUnitMeasureCode) { + this.WeightUnitMeasureCode = WeightUnitMeasureCode; + } + + @javax.persistence.Column(name = "Weight", precision = 8, scale = 2) + public java.math.BigDecimal getWeight() { + return this.Weight; + } + + public void setWeight(java.math.BigDecimal Weight) { + this.Weight = Weight; + } + + @javax.persistence.Column(name = "DaysToManufacture", nullable = false, precision = 10) + public java.lang.Integer getDaysToManufacture() { + return this.DaysToManufacture; + } + + public void setDaysToManufacture(java.lang.Integer DaysToManufacture) { + this.DaysToManufacture = DaysToManufacture; + } + + @javax.persistence.Column(name = "ProductLine", length = 2) + public java.lang.String getProductLine() { + return this.ProductLine; + } + + public void setProductLine(java.lang.String ProductLine) { + this.ProductLine = ProductLine; + } + + @javax.persistence.Column(name = "Class", length = 2) + public java.lang.String getClass_() { + return this.Class; + } + + public void setClass_(java.lang.String Class) { + this.Class = Class; + } + + @javax.persistence.Column(name = "Style", length = 2) + public java.lang.String getStyle() { + return this.Style; + } + + public void setStyle(java.lang.String Style) { + this.Style = Style; + } + + @javax.persistence.Column(name = "ProductSubcategoryID", precision = 10) + public java.lang.Integer getProductSubcategoryID() { + return this.ProductSubcategoryID; + } + + public void setProductSubcategoryID(java.lang.Integer ProductSubcategoryID) { + this.ProductSubcategoryID = ProductSubcategoryID; + } + + @javax.persistence.Column(name = "ProductModelID", precision = 10) + public java.lang.Integer getProductModelID() { + return this.ProductModelID; + } + + public void setProductModelID(java.lang.Integer ProductModelID) { + this.ProductModelID = ProductModelID; + } + + @javax.persistence.Column(name = "SellStartDate", nullable = false) + public java.sql.Timestamp getSellStartDate() { + return this.SellStartDate; + } + + public void setSellStartDate(java.sql.Timestamp SellStartDate) { + this.SellStartDate = SellStartDate; + } + + @javax.persistence.Column(name = "SellEndDate") + public java.sql.Timestamp getSellEndDate() { + return this.SellEndDate; + } + + public void setSellEndDate(java.sql.Timestamp SellEndDate) { + this.SellEndDate = SellEndDate; + } + + @javax.persistence.Column(name = "DiscontinuedDate") + public java.sql.Timestamp getDiscontinuedDate() { + return this.DiscontinuedDate; + } + + public void setDiscontinuedDate(java.sql.Timestamp DiscontinuedDate) { + this.DiscontinuedDate = DiscontinuedDate; + } + + @javax.persistence.Column(name = "rowguid", nullable = false) + public java.lang.String getrowguid() { + return this.rowguid; + } + + public void setrowguid(java.lang.String rowguid) { + this.rowguid = rowguid; + } + + @javax.persistence.Column(name = "ModifiedDate", nullable = false) + public java.sql.Timestamp getModifiedDate() { + return this.ModifiedDate; + } + + public void setModifiedDate(java.sql.Timestamp ModifiedDate) { + this.ModifiedDate = ModifiedDate; + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/tables/pojos/ProductCategory.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/tables/pojos/ProductCategory.java new file mode 100644 index 00000000000..747bde1c913 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/tables/pojos/ProductCategory.java @@ -0,0 +1,56 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.production.tables.pojos; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "ProductCategory", schema = "Production") +public class ProductCategory implements java.io.Serializable { + + private static final long serialVersionUID = 81325731; + + private java.lang.Integer ProductCategoryID; + private java.lang.String Name; + private java.lang.String rowguid; + private java.sql.Timestamp ModifiedDate; + + @javax.persistence.Id + @javax.persistence.Column(name = "ProductCategoryID", unique = true, nullable = false, precision = 10) + public java.lang.Integer getProductCategoryID() { + return this.ProductCategoryID; + } + + public void setProductCategoryID(java.lang.Integer ProductCategoryID) { + this.ProductCategoryID = ProductCategoryID; + } + + @javax.persistence.Column(name = "Name", nullable = false, length = 50) + public java.lang.String getName() { + return this.Name; + } + + public void setName(java.lang.String Name) { + this.Name = Name; + } + + @javax.persistence.Column(name = "rowguid", nullable = false) + public java.lang.String getrowguid() { + return this.rowguid; + } + + public void setrowguid(java.lang.String rowguid) { + this.rowguid = rowguid; + } + + @javax.persistence.Column(name = "ModifiedDate", nullable = false) + public java.sql.Timestamp getModifiedDate() { + return this.ModifiedDate; + } + + public void setModifiedDate(java.sql.Timestamp ModifiedDate) { + this.ModifiedDate = ModifiedDate; + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/tables/pojos/ProductCostHistory.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/tables/pojos/ProductCostHistory.java new file mode 100644 index 00000000000..6451bbfcfa3 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/tables/pojos/ProductCostHistory.java @@ -0,0 +1,67 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.production.tables.pojos; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "ProductCostHistory", schema = "Production", uniqueConstraints = { + @javax.persistence.UniqueConstraint(columnNames = {"ProductID", "StartDate"}) +}) +public class ProductCostHistory implements java.io.Serializable { + + private static final long serialVersionUID = -907559410; + + private java.lang.Integer ProductID; + private java.sql.Timestamp StartDate; + private java.sql.Timestamp EndDate; + private java.math.BigDecimal StandardCost; + private java.sql.Timestamp ModifiedDate; + + @javax.persistence.Column(name = "ProductID", nullable = false, precision = 10) + public java.lang.Integer getProductID() { + return this.ProductID; + } + + public void setProductID(java.lang.Integer ProductID) { + this.ProductID = ProductID; + } + + @javax.persistence.Column(name = "StartDate", nullable = false) + public java.sql.Timestamp getStartDate() { + return this.StartDate; + } + + public void setStartDate(java.sql.Timestamp StartDate) { + this.StartDate = StartDate; + } + + @javax.persistence.Column(name = "EndDate") + public java.sql.Timestamp getEndDate() { + return this.EndDate; + } + + public void setEndDate(java.sql.Timestamp EndDate) { + this.EndDate = EndDate; + } + + @javax.persistence.Column(name = "StandardCost", nullable = false, precision = 19, scale = 4) + public java.math.BigDecimal getStandardCost() { + return this.StandardCost; + } + + public void setStandardCost(java.math.BigDecimal StandardCost) { + this.StandardCost = StandardCost; + } + + @javax.persistence.Column(name = "ModifiedDate", nullable = false) + public java.sql.Timestamp getModifiedDate() { + return this.ModifiedDate; + } + + public void setModifiedDate(java.sql.Timestamp ModifiedDate) { + this.ModifiedDate = ModifiedDate; + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/tables/pojos/ProductDescription.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/tables/pojos/ProductDescription.java new file mode 100644 index 00000000000..1da5b878b12 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/tables/pojos/ProductDescription.java @@ -0,0 +1,56 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.production.tables.pojos; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "ProductDescription", schema = "Production") +public class ProductDescription implements java.io.Serializable { + + private static final long serialVersionUID = -496678554; + + private java.lang.Integer ProductDescriptionID; + private java.lang.String Description; + private java.lang.String rowguid; + private java.sql.Timestamp ModifiedDate; + + @javax.persistence.Id + @javax.persistence.Column(name = "ProductDescriptionID", unique = true, nullable = false, precision = 10) + public java.lang.Integer getProductDescriptionID() { + return this.ProductDescriptionID; + } + + public void setProductDescriptionID(java.lang.Integer ProductDescriptionID) { + this.ProductDescriptionID = ProductDescriptionID; + } + + @javax.persistence.Column(name = "Description", nullable = false, length = 400) + public java.lang.String getDescription() { + return this.Description; + } + + public void setDescription(java.lang.String Description) { + this.Description = Description; + } + + @javax.persistence.Column(name = "rowguid", nullable = false) + public java.lang.String getrowguid() { + return this.rowguid; + } + + public void setrowguid(java.lang.String rowguid) { + this.rowguid = rowguid; + } + + @javax.persistence.Column(name = "ModifiedDate", nullable = false) + public java.sql.Timestamp getModifiedDate() { + return this.ModifiedDate; + } + + public void setModifiedDate(java.sql.Timestamp ModifiedDate) { + this.ModifiedDate = ModifiedDate; + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/tables/pojos/ProductDocument.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/tables/pojos/ProductDocument.java new file mode 100644 index 00000000000..17a8328ee61 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/tables/pojos/ProductDocument.java @@ -0,0 +1,47 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.production.tables.pojos; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "ProductDocument", schema = "Production", uniqueConstraints = { + @javax.persistence.UniqueConstraint(columnNames = {"ProductID", "DocumentID"}) +}) +public class ProductDocument implements java.io.Serializable { + + private static final long serialVersionUID = -920710150; + + private java.lang.Integer ProductID; + private java.lang.Integer DocumentID; + private java.sql.Timestamp ModifiedDate; + + @javax.persistence.Column(name = "ProductID", nullable = false, precision = 10) + public java.lang.Integer getProductID() { + return this.ProductID; + } + + public void setProductID(java.lang.Integer ProductID) { + this.ProductID = ProductID; + } + + @javax.persistence.Column(name = "DocumentID", nullable = false, precision = 10) + public java.lang.Integer getDocumentID() { + return this.DocumentID; + } + + public void setDocumentID(java.lang.Integer DocumentID) { + this.DocumentID = DocumentID; + } + + @javax.persistence.Column(name = "ModifiedDate", nullable = false) + public java.sql.Timestamp getModifiedDate() { + return this.ModifiedDate; + } + + public void setModifiedDate(java.sql.Timestamp ModifiedDate) { + this.ModifiedDate = ModifiedDate; + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/tables/pojos/ProductInventory.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/tables/pojos/ProductInventory.java new file mode 100644 index 00000000000..039134d104c --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/tables/pojos/ProductInventory.java @@ -0,0 +1,87 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.production.tables.pojos; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "ProductInventory", schema = "Production", uniqueConstraints = { + @javax.persistence.UniqueConstraint(columnNames = {"ProductID", "LocationID"}) +}) +public class ProductInventory implements java.io.Serializable { + + private static final long serialVersionUID = 1132131414; + + private java.lang.Integer ProductID; + private java.lang.Short LocationID; + private java.lang.String Shelf; + private java.lang.Byte Bin; + private java.lang.Short Quantity; + private java.lang.String rowguid; + private java.sql.Timestamp ModifiedDate; + + @javax.persistence.Column(name = "ProductID", nullable = false, precision = 10) + public java.lang.Integer getProductID() { + return this.ProductID; + } + + public void setProductID(java.lang.Integer ProductID) { + this.ProductID = ProductID; + } + + @javax.persistence.Column(name = "LocationID", nullable = false, precision = 5) + public java.lang.Short getLocationID() { + return this.LocationID; + } + + public void setLocationID(java.lang.Short LocationID) { + this.LocationID = LocationID; + } + + @javax.persistence.Column(name = "Shelf", nullable = false, length = 10) + public java.lang.String getShelf() { + return this.Shelf; + } + + public void setShelf(java.lang.String Shelf) { + this.Shelf = Shelf; + } + + @javax.persistence.Column(name = "Bin", nullable = false, precision = 3) + public java.lang.Byte getBin() { + return this.Bin; + } + + public void setBin(java.lang.Byte Bin) { + this.Bin = Bin; + } + + @javax.persistence.Column(name = "Quantity", nullable = false, precision = 5) + public java.lang.Short getQuantity() { + return this.Quantity; + } + + public void setQuantity(java.lang.Short Quantity) { + this.Quantity = Quantity; + } + + @javax.persistence.Column(name = "rowguid", nullable = false) + public java.lang.String getrowguid() { + return this.rowguid; + } + + public void setrowguid(java.lang.String rowguid) { + this.rowguid = rowguid; + } + + @javax.persistence.Column(name = "ModifiedDate", nullable = false) + public java.sql.Timestamp getModifiedDate() { + return this.ModifiedDate; + } + + public void setModifiedDate(java.sql.Timestamp ModifiedDate) { + this.ModifiedDate = ModifiedDate; + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/tables/pojos/ProductListPriceHistory.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/tables/pojos/ProductListPriceHistory.java new file mode 100644 index 00000000000..b570d2ec0d9 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/tables/pojos/ProductListPriceHistory.java @@ -0,0 +1,67 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.production.tables.pojos; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "ProductListPriceHistory", schema = "Production", uniqueConstraints = { + @javax.persistence.UniqueConstraint(columnNames = {"ProductID", "StartDate"}) +}) +public class ProductListPriceHistory implements java.io.Serializable { + + private static final long serialVersionUID = -1785389324; + + private java.lang.Integer ProductID; + private java.sql.Timestamp StartDate; + private java.sql.Timestamp EndDate; + private java.math.BigDecimal ListPrice; + private java.sql.Timestamp ModifiedDate; + + @javax.persistence.Column(name = "ProductID", nullable = false, precision = 10) + public java.lang.Integer getProductID() { + return this.ProductID; + } + + public void setProductID(java.lang.Integer ProductID) { + this.ProductID = ProductID; + } + + @javax.persistence.Column(name = "StartDate", nullable = false) + public java.sql.Timestamp getStartDate() { + return this.StartDate; + } + + public void setStartDate(java.sql.Timestamp StartDate) { + this.StartDate = StartDate; + } + + @javax.persistence.Column(name = "EndDate") + public java.sql.Timestamp getEndDate() { + return this.EndDate; + } + + public void setEndDate(java.sql.Timestamp EndDate) { + this.EndDate = EndDate; + } + + @javax.persistence.Column(name = "ListPrice", nullable = false, precision = 19, scale = 4) + public java.math.BigDecimal getListPrice() { + return this.ListPrice; + } + + public void setListPrice(java.math.BigDecimal ListPrice) { + this.ListPrice = ListPrice; + } + + @javax.persistence.Column(name = "ModifiedDate", nullable = false) + public java.sql.Timestamp getModifiedDate() { + return this.ModifiedDate; + } + + public void setModifiedDate(java.sql.Timestamp ModifiedDate) { + this.ModifiedDate = ModifiedDate; + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/tables/pojos/ProductModel.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/tables/pojos/ProductModel.java new file mode 100644 index 00000000000..3f2b428462d --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/tables/pojos/ProductModel.java @@ -0,0 +1,76 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.production.tables.pojos; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "ProductModel", schema = "Production") +public class ProductModel implements java.io.Serializable { + + private static final long serialVersionUID = 1304203417; + + private java.lang.Integer ProductModelID; + private java.lang.String Name; + private java.lang.Object CatalogDescription; + private java.lang.Object Instructions; + private java.lang.String rowguid; + private java.sql.Timestamp ModifiedDate; + + @javax.persistence.Id + @javax.persistence.Column(name = "ProductModelID", unique = true, nullable = false, precision = 10) + public java.lang.Integer getProductModelID() { + return this.ProductModelID; + } + + public void setProductModelID(java.lang.Integer ProductModelID) { + this.ProductModelID = ProductModelID; + } + + @javax.persistence.Column(name = "Name", nullable = false, length = 50) + public java.lang.String getName() { + return this.Name; + } + + public void setName(java.lang.String Name) { + this.Name = Name; + } + + @javax.persistence.Column(name = "CatalogDescription") + public java.lang.Object getCatalogDescription() { + return this.CatalogDescription; + } + + public void setCatalogDescription(java.lang.Object CatalogDescription) { + this.CatalogDescription = CatalogDescription; + } + + @javax.persistence.Column(name = "Instructions") + public java.lang.Object getInstructions() { + return this.Instructions; + } + + public void setInstructions(java.lang.Object Instructions) { + this.Instructions = Instructions; + } + + @javax.persistence.Column(name = "rowguid", nullable = false) + public java.lang.String getrowguid() { + return this.rowguid; + } + + public void setrowguid(java.lang.String rowguid) { + this.rowguid = rowguid; + } + + @javax.persistence.Column(name = "ModifiedDate", nullable = false) + public java.sql.Timestamp getModifiedDate() { + return this.ModifiedDate; + } + + public void setModifiedDate(java.sql.Timestamp ModifiedDate) { + this.ModifiedDate = ModifiedDate; + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/tables/pojos/ProductModelIllustration.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/tables/pojos/ProductModelIllustration.java new file mode 100644 index 00000000000..d7bab973c5a --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/tables/pojos/ProductModelIllustration.java @@ -0,0 +1,47 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.production.tables.pojos; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "ProductModelIllustration", schema = "Production", uniqueConstraints = { + @javax.persistence.UniqueConstraint(columnNames = {"ProductModelID", "IllustrationID"}) +}) +public class ProductModelIllustration implements java.io.Serializable { + + private static final long serialVersionUID = -966554540; + + private java.lang.Integer ProductModelID; + private java.lang.Integer IllustrationID; + private java.sql.Timestamp ModifiedDate; + + @javax.persistence.Column(name = "ProductModelID", nullable = false, precision = 10) + public java.lang.Integer getProductModelID() { + return this.ProductModelID; + } + + public void setProductModelID(java.lang.Integer ProductModelID) { + this.ProductModelID = ProductModelID; + } + + @javax.persistence.Column(name = "IllustrationID", nullable = false, precision = 10) + public java.lang.Integer getIllustrationID() { + return this.IllustrationID; + } + + public void setIllustrationID(java.lang.Integer IllustrationID) { + this.IllustrationID = IllustrationID; + } + + @javax.persistence.Column(name = "ModifiedDate", nullable = false) + public java.sql.Timestamp getModifiedDate() { + return this.ModifiedDate; + } + + public void setModifiedDate(java.sql.Timestamp ModifiedDate) { + this.ModifiedDate = ModifiedDate; + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/tables/pojos/ProductModelProductDescriptionCulture.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/tables/pojos/ProductModelProductDescriptionCulture.java new file mode 100644 index 00000000000..33c623666ed --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/tables/pojos/ProductModelProductDescriptionCulture.java @@ -0,0 +1,57 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.production.tables.pojos; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "ProductModelProductDescriptionCulture", schema = "Production", uniqueConstraints = { + @javax.persistence.UniqueConstraint(columnNames = {"ProductModelID", "ProductDescriptionID", "CultureID"}) +}) +public class ProductModelProductDescriptionCulture implements java.io.Serializable { + + private static final long serialVersionUID = 847230316; + + private java.lang.Integer ProductModelID; + private java.lang.Integer ProductDescriptionID; + private java.lang.String CultureID; + private java.sql.Timestamp ModifiedDate; + + @javax.persistence.Column(name = "ProductModelID", nullable = false, precision = 10) + public java.lang.Integer getProductModelID() { + return this.ProductModelID; + } + + public void setProductModelID(java.lang.Integer ProductModelID) { + this.ProductModelID = ProductModelID; + } + + @javax.persistence.Column(name = "ProductDescriptionID", nullable = false, precision = 10) + public java.lang.Integer getProductDescriptionID() { + return this.ProductDescriptionID; + } + + public void setProductDescriptionID(java.lang.Integer ProductDescriptionID) { + this.ProductDescriptionID = ProductDescriptionID; + } + + @javax.persistence.Column(name = "CultureID", nullable = false, length = 6) + public java.lang.String getCultureID() { + return this.CultureID; + } + + public void setCultureID(java.lang.String CultureID) { + this.CultureID = CultureID; + } + + @javax.persistence.Column(name = "ModifiedDate", nullable = false) + public java.sql.Timestamp getModifiedDate() { + return this.ModifiedDate; + } + + public void setModifiedDate(java.sql.Timestamp ModifiedDate) { + this.ModifiedDate = ModifiedDate; + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/tables/pojos/ProductPhoto.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/tables/pojos/ProductPhoto.java new file mode 100644 index 00000000000..202709ab698 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/tables/pojos/ProductPhoto.java @@ -0,0 +1,76 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.production.tables.pojos; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "ProductPhoto", schema = "Production") +public class ProductPhoto implements java.io.Serializable { + + private static final long serialVersionUID = -1387322169; + + private java.lang.Integer ProductPhotoID; + private byte[] ThumbNailPhoto; + private java.lang.String ThumbnailPhotoFileName; + private byte[] LargePhoto; + private java.lang.String LargePhotoFileName; + private java.sql.Timestamp ModifiedDate; + + @javax.persistence.Id + @javax.persistence.Column(name = "ProductPhotoID", unique = true, nullable = false, precision = 10) + public java.lang.Integer getProductPhotoID() { + return this.ProductPhotoID; + } + + public void setProductPhotoID(java.lang.Integer ProductPhotoID) { + this.ProductPhotoID = ProductPhotoID; + } + + @javax.persistence.Column(name = "ThumbNailPhoto") + public byte[] getThumbNailPhoto() { + return this.ThumbNailPhoto; + } + + public void setThumbNailPhoto(byte[] ThumbNailPhoto) { + this.ThumbNailPhoto = ThumbNailPhoto; + } + + @javax.persistence.Column(name = "ThumbnailPhotoFileName", length = 50) + public java.lang.String getThumbnailPhotoFileName() { + return this.ThumbnailPhotoFileName; + } + + public void setThumbnailPhotoFileName(java.lang.String ThumbnailPhotoFileName) { + this.ThumbnailPhotoFileName = ThumbnailPhotoFileName; + } + + @javax.persistence.Column(name = "LargePhoto") + public byte[] getLargePhoto() { + return this.LargePhoto; + } + + public void setLargePhoto(byte[] LargePhoto) { + this.LargePhoto = LargePhoto; + } + + @javax.persistence.Column(name = "LargePhotoFileName", length = 50) + public java.lang.String getLargePhotoFileName() { + return this.LargePhotoFileName; + } + + public void setLargePhotoFileName(java.lang.String LargePhotoFileName) { + this.LargePhotoFileName = LargePhotoFileName; + } + + @javax.persistence.Column(name = "ModifiedDate", nullable = false) + public java.sql.Timestamp getModifiedDate() { + return this.ModifiedDate; + } + + public void setModifiedDate(java.sql.Timestamp ModifiedDate) { + this.ModifiedDate = ModifiedDate; + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/tables/pojos/ProductProductPhoto.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/tables/pojos/ProductProductPhoto.java new file mode 100644 index 00000000000..63d46880fc3 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/tables/pojos/ProductProductPhoto.java @@ -0,0 +1,57 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.production.tables.pojos; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "ProductProductPhoto", schema = "Production", uniqueConstraints = { + @javax.persistence.UniqueConstraint(columnNames = {"ProductID", "ProductPhotoID"}) +}) +public class ProductProductPhoto implements java.io.Serializable { + + private static final long serialVersionUID = -1334733080; + + private java.lang.Integer ProductID; + private java.lang.Integer ProductPhotoID; + private java.lang.Boolean Primary; + private java.sql.Timestamp ModifiedDate; + + @javax.persistence.Column(name = "ProductID", nullable = false, precision = 10) + public java.lang.Integer getProductID() { + return this.ProductID; + } + + public void setProductID(java.lang.Integer ProductID) { + this.ProductID = ProductID; + } + + @javax.persistence.Column(name = "ProductPhotoID", nullable = false, precision = 10) + public java.lang.Integer getProductPhotoID() { + return this.ProductPhotoID; + } + + public void setProductPhotoID(java.lang.Integer ProductPhotoID) { + this.ProductPhotoID = ProductPhotoID; + } + + @javax.persistence.Column(name = "Primary", nullable = false) + public java.lang.Boolean getPrimary() { + return this.Primary; + } + + public void setPrimary(java.lang.Boolean Primary) { + this.Primary = Primary; + } + + @javax.persistence.Column(name = "ModifiedDate", nullable = false) + public java.sql.Timestamp getModifiedDate() { + return this.ModifiedDate; + } + + public void setModifiedDate(java.sql.Timestamp ModifiedDate) { + this.ModifiedDate = ModifiedDate; + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/tables/pojos/ProductReview.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/tables/pojos/ProductReview.java new file mode 100644 index 00000000000..55a8ea6f81a --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/tables/pojos/ProductReview.java @@ -0,0 +1,96 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.production.tables.pojos; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "ProductReview", schema = "Production") +public class ProductReview implements java.io.Serializable { + + private static final long serialVersionUID = -623037092; + + private java.lang.Integer ProductReviewID; + private java.lang.Integer ProductID; + private java.lang.String ReviewerName; + private java.sql.Timestamp ReviewDate; + private java.lang.String EmailAddress; + private java.lang.Integer Rating; + private java.lang.String Comments; + private java.sql.Timestamp ModifiedDate; + + @javax.persistence.Id + @javax.persistence.Column(name = "ProductReviewID", unique = true, nullable = false, precision = 10) + public java.lang.Integer getProductReviewID() { + return this.ProductReviewID; + } + + public void setProductReviewID(java.lang.Integer ProductReviewID) { + this.ProductReviewID = ProductReviewID; + } + + @javax.persistence.Column(name = "ProductID", nullable = false, precision = 10) + public java.lang.Integer getProductID() { + return this.ProductID; + } + + public void setProductID(java.lang.Integer ProductID) { + this.ProductID = ProductID; + } + + @javax.persistence.Column(name = "ReviewerName", nullable = false, length = 50) + public java.lang.String getReviewerName() { + return this.ReviewerName; + } + + public void setReviewerName(java.lang.String ReviewerName) { + this.ReviewerName = ReviewerName; + } + + @javax.persistence.Column(name = "ReviewDate", nullable = false) + public java.sql.Timestamp getReviewDate() { + return this.ReviewDate; + } + + public void setReviewDate(java.sql.Timestamp ReviewDate) { + this.ReviewDate = ReviewDate; + } + + @javax.persistence.Column(name = "EmailAddress", nullable = false, length = 50) + public java.lang.String getEmailAddress() { + return this.EmailAddress; + } + + public void setEmailAddress(java.lang.String EmailAddress) { + this.EmailAddress = EmailAddress; + } + + @javax.persistence.Column(name = "Rating", nullable = false, precision = 10) + public java.lang.Integer getRating() { + return this.Rating; + } + + public void setRating(java.lang.Integer Rating) { + this.Rating = Rating; + } + + @javax.persistence.Column(name = "Comments", length = 3850) + public java.lang.String getComments() { + return this.Comments; + } + + public void setComments(java.lang.String Comments) { + this.Comments = Comments; + } + + @javax.persistence.Column(name = "ModifiedDate", nullable = false) + public java.sql.Timestamp getModifiedDate() { + return this.ModifiedDate; + } + + public void setModifiedDate(java.sql.Timestamp ModifiedDate) { + this.ModifiedDate = ModifiedDate; + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/tables/pojos/ProductSubcategory.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/tables/pojos/ProductSubcategory.java new file mode 100644 index 00000000000..7743c4a5d8b --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/tables/pojos/ProductSubcategory.java @@ -0,0 +1,66 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.production.tables.pojos; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "ProductSubcategory", schema = "Production") +public class ProductSubcategory implements java.io.Serializable { + + private static final long serialVersionUID = 160779153; + + private java.lang.Integer ProductSubcategoryID; + private java.lang.Integer ProductCategoryID; + private java.lang.String Name; + private java.lang.String rowguid; + private java.sql.Timestamp ModifiedDate; + + @javax.persistence.Id + @javax.persistence.Column(name = "ProductSubcategoryID", unique = true, nullable = false, precision = 10) + public java.lang.Integer getProductSubcategoryID() { + return this.ProductSubcategoryID; + } + + public void setProductSubcategoryID(java.lang.Integer ProductSubcategoryID) { + this.ProductSubcategoryID = ProductSubcategoryID; + } + + @javax.persistence.Column(name = "ProductCategoryID", nullable = false, precision = 10) + public java.lang.Integer getProductCategoryID() { + return this.ProductCategoryID; + } + + public void setProductCategoryID(java.lang.Integer ProductCategoryID) { + this.ProductCategoryID = ProductCategoryID; + } + + @javax.persistence.Column(name = "Name", nullable = false, length = 50) + public java.lang.String getName() { + return this.Name; + } + + public void setName(java.lang.String Name) { + this.Name = Name; + } + + @javax.persistence.Column(name = "rowguid", nullable = false) + public java.lang.String getrowguid() { + return this.rowguid; + } + + public void setrowguid(java.lang.String rowguid) { + this.rowguid = rowguid; + } + + @javax.persistence.Column(name = "ModifiedDate", nullable = false) + public java.sql.Timestamp getModifiedDate() { + return this.ModifiedDate; + } + + public void setModifiedDate(java.sql.Timestamp ModifiedDate) { + this.ModifiedDate = ModifiedDate; + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/tables/pojos/ScrapReason.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/tables/pojos/ScrapReason.java new file mode 100644 index 00000000000..8427ce242ff --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/tables/pojos/ScrapReason.java @@ -0,0 +1,46 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.production.tables.pojos; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "ScrapReason", schema = "Production") +public class ScrapReason implements java.io.Serializable { + + private static final long serialVersionUID = 1755825898; + + private java.lang.Short ScrapReasonID; + private java.lang.String Name; + private java.sql.Timestamp ModifiedDate; + + @javax.persistence.Id + @javax.persistence.Column(name = "ScrapReasonID", unique = true, nullable = false, precision = 5) + public java.lang.Short getScrapReasonID() { + return this.ScrapReasonID; + } + + public void setScrapReasonID(java.lang.Short ScrapReasonID) { + this.ScrapReasonID = ScrapReasonID; + } + + @javax.persistence.Column(name = "Name", nullable = false, length = 50) + public java.lang.String getName() { + return this.Name; + } + + public void setName(java.lang.String Name) { + this.Name = Name; + } + + @javax.persistence.Column(name = "ModifiedDate", nullable = false) + public java.sql.Timestamp getModifiedDate() { + return this.ModifiedDate; + } + + public void setModifiedDate(java.sql.Timestamp ModifiedDate) { + this.ModifiedDate = ModifiedDate; + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/tables/pojos/TransactionHistory.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/tables/pojos/TransactionHistory.java new file mode 100644 index 00000000000..a6922b11baa --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/tables/pojos/TransactionHistory.java @@ -0,0 +1,106 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.production.tables.pojos; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "TransactionHistory", schema = "Production") +public class TransactionHistory implements java.io.Serializable { + + private static final long serialVersionUID = 148292007; + + private java.lang.Integer TransactionID; + private java.lang.Integer ProductID; + private java.lang.Integer ReferenceOrderID; + private java.lang.Integer ReferenceOrderLineID; + private java.sql.Timestamp TransactionDate; + private java.lang.String TransactionType; + private java.lang.Integer Quantity; + private java.math.BigDecimal ActualCost; + private java.sql.Timestamp ModifiedDate; + + @javax.persistence.Id + @javax.persistence.Column(name = "TransactionID", unique = true, nullable = false, precision = 10) + public java.lang.Integer getTransactionID() { + return this.TransactionID; + } + + public void setTransactionID(java.lang.Integer TransactionID) { + this.TransactionID = TransactionID; + } + + @javax.persistence.Column(name = "ProductID", nullable = false, precision = 10) + public java.lang.Integer getProductID() { + return this.ProductID; + } + + public void setProductID(java.lang.Integer ProductID) { + this.ProductID = ProductID; + } + + @javax.persistence.Column(name = "ReferenceOrderID", nullable = false, precision = 10) + public java.lang.Integer getReferenceOrderID() { + return this.ReferenceOrderID; + } + + public void setReferenceOrderID(java.lang.Integer ReferenceOrderID) { + this.ReferenceOrderID = ReferenceOrderID; + } + + @javax.persistence.Column(name = "ReferenceOrderLineID", nullable = false, precision = 10) + public java.lang.Integer getReferenceOrderLineID() { + return this.ReferenceOrderLineID; + } + + public void setReferenceOrderLineID(java.lang.Integer ReferenceOrderLineID) { + this.ReferenceOrderLineID = ReferenceOrderLineID; + } + + @javax.persistence.Column(name = "TransactionDate", nullable = false) + public java.sql.Timestamp getTransactionDate() { + return this.TransactionDate; + } + + public void setTransactionDate(java.sql.Timestamp TransactionDate) { + this.TransactionDate = TransactionDate; + } + + @javax.persistence.Column(name = "TransactionType", nullable = false, length = 1) + public java.lang.String getTransactionType() { + return this.TransactionType; + } + + public void setTransactionType(java.lang.String TransactionType) { + this.TransactionType = TransactionType; + } + + @javax.persistence.Column(name = "Quantity", nullable = false, precision = 10) + public java.lang.Integer getQuantity() { + return this.Quantity; + } + + public void setQuantity(java.lang.Integer Quantity) { + this.Quantity = Quantity; + } + + @javax.persistence.Column(name = "ActualCost", nullable = false, precision = 19, scale = 4) + public java.math.BigDecimal getActualCost() { + return this.ActualCost; + } + + public void setActualCost(java.math.BigDecimal ActualCost) { + this.ActualCost = ActualCost; + } + + @javax.persistence.Column(name = "ModifiedDate", nullable = false) + public java.sql.Timestamp getModifiedDate() { + return this.ModifiedDate; + } + + public void setModifiedDate(java.sql.Timestamp ModifiedDate) { + this.ModifiedDate = ModifiedDate; + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/tables/pojos/TransactionHistoryArchive.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/tables/pojos/TransactionHistoryArchive.java new file mode 100644 index 00000000000..45850020855 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/tables/pojos/TransactionHistoryArchive.java @@ -0,0 +1,106 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.production.tables.pojos; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "TransactionHistoryArchive", schema = "Production") +public class TransactionHistoryArchive implements java.io.Serializable { + + private static final long serialVersionUID = 2072643205; + + private java.lang.Integer TransactionID; + private java.lang.Integer ProductID; + private java.lang.Integer ReferenceOrderID; + private java.lang.Integer ReferenceOrderLineID; + private java.sql.Timestamp TransactionDate; + private java.lang.String TransactionType; + private java.lang.Integer Quantity; + private java.math.BigDecimal ActualCost; + private java.sql.Timestamp ModifiedDate; + + @javax.persistence.Id + @javax.persistence.Column(name = "TransactionID", unique = true, nullable = false, precision = 10) + public java.lang.Integer getTransactionID() { + return this.TransactionID; + } + + public void setTransactionID(java.lang.Integer TransactionID) { + this.TransactionID = TransactionID; + } + + @javax.persistence.Column(name = "ProductID", nullable = false, precision = 10) + public java.lang.Integer getProductID() { + return this.ProductID; + } + + public void setProductID(java.lang.Integer ProductID) { + this.ProductID = ProductID; + } + + @javax.persistence.Column(name = "ReferenceOrderID", nullable = false, precision = 10) + public java.lang.Integer getReferenceOrderID() { + return this.ReferenceOrderID; + } + + public void setReferenceOrderID(java.lang.Integer ReferenceOrderID) { + this.ReferenceOrderID = ReferenceOrderID; + } + + @javax.persistence.Column(name = "ReferenceOrderLineID", nullable = false, precision = 10) + public java.lang.Integer getReferenceOrderLineID() { + return this.ReferenceOrderLineID; + } + + public void setReferenceOrderLineID(java.lang.Integer ReferenceOrderLineID) { + this.ReferenceOrderLineID = ReferenceOrderLineID; + } + + @javax.persistence.Column(name = "TransactionDate", nullable = false) + public java.sql.Timestamp getTransactionDate() { + return this.TransactionDate; + } + + public void setTransactionDate(java.sql.Timestamp TransactionDate) { + this.TransactionDate = TransactionDate; + } + + @javax.persistence.Column(name = "TransactionType", nullable = false, length = 1) + public java.lang.String getTransactionType() { + return this.TransactionType; + } + + public void setTransactionType(java.lang.String TransactionType) { + this.TransactionType = TransactionType; + } + + @javax.persistence.Column(name = "Quantity", nullable = false, precision = 10) + public java.lang.Integer getQuantity() { + return this.Quantity; + } + + public void setQuantity(java.lang.Integer Quantity) { + this.Quantity = Quantity; + } + + @javax.persistence.Column(name = "ActualCost", nullable = false, precision = 19, scale = 4) + public java.math.BigDecimal getActualCost() { + return this.ActualCost; + } + + public void setActualCost(java.math.BigDecimal ActualCost) { + this.ActualCost = ActualCost; + } + + @javax.persistence.Column(name = "ModifiedDate", nullable = false) + public java.sql.Timestamp getModifiedDate() { + return this.ModifiedDate; + } + + public void setModifiedDate(java.sql.Timestamp ModifiedDate) { + this.ModifiedDate = ModifiedDate; + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/tables/pojos/UnitMeasure.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/tables/pojos/UnitMeasure.java new file mode 100644 index 00000000000..1888bfd165c --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/tables/pojos/UnitMeasure.java @@ -0,0 +1,46 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.production.tables.pojos; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "UnitMeasure", schema = "Production") +public class UnitMeasure implements java.io.Serializable { + + private static final long serialVersionUID = 2039920527; + + private java.lang.String UnitMeasureCode; + private java.lang.String Name; + private java.sql.Timestamp ModifiedDate; + + @javax.persistence.Id + @javax.persistence.Column(name = "UnitMeasureCode", unique = true, nullable = false, length = 3) + public java.lang.String getUnitMeasureCode() { + return this.UnitMeasureCode; + } + + public void setUnitMeasureCode(java.lang.String UnitMeasureCode) { + this.UnitMeasureCode = UnitMeasureCode; + } + + @javax.persistence.Column(name = "Name", nullable = false, length = 50) + public java.lang.String getName() { + return this.Name; + } + + public void setName(java.lang.String Name) { + this.Name = Name; + } + + @javax.persistence.Column(name = "ModifiedDate", nullable = false) + public java.sql.Timestamp getModifiedDate() { + return this.ModifiedDate; + } + + public void setModifiedDate(java.sql.Timestamp ModifiedDate) { + this.ModifiedDate = ModifiedDate; + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/tables/pojos/WorkOrder.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/tables/pojos/WorkOrder.java new file mode 100644 index 00000000000..d8d4d76db69 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/tables/pojos/WorkOrder.java @@ -0,0 +1,116 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.production.tables.pojos; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "WorkOrder", schema = "Production") +public class WorkOrder implements java.io.Serializable { + + private static final long serialVersionUID = -881616029; + + private java.lang.Integer WorkOrderID; + private java.lang.Integer ProductID; + private java.lang.Integer OrderQty; + private java.lang.Integer StockedQty; + private java.lang.Short ScrappedQty; + private java.sql.Timestamp StartDate; + private java.sql.Timestamp EndDate; + private java.sql.Timestamp DueDate; + private java.lang.Short ScrapReasonID; + private java.sql.Timestamp ModifiedDate; + + @javax.persistence.Id + @javax.persistence.Column(name = "WorkOrderID", unique = true, nullable = false, precision = 10) + public java.lang.Integer getWorkOrderID() { + return this.WorkOrderID; + } + + public void setWorkOrderID(java.lang.Integer WorkOrderID) { + this.WorkOrderID = WorkOrderID; + } + + @javax.persistence.Column(name = "ProductID", nullable = false, precision = 10) + public java.lang.Integer getProductID() { + return this.ProductID; + } + + public void setProductID(java.lang.Integer ProductID) { + this.ProductID = ProductID; + } + + @javax.persistence.Column(name = "OrderQty", nullable = false, precision = 10) + public java.lang.Integer getOrderQty() { + return this.OrderQty; + } + + public void setOrderQty(java.lang.Integer OrderQty) { + this.OrderQty = OrderQty; + } + + @javax.persistence.Column(name = "StockedQty", nullable = false, precision = 10) + public java.lang.Integer getStockedQty() { + return this.StockedQty; + } + + public void setStockedQty(java.lang.Integer StockedQty) { + this.StockedQty = StockedQty; + } + + @javax.persistence.Column(name = "ScrappedQty", nullable = false, precision = 5) + public java.lang.Short getScrappedQty() { + return this.ScrappedQty; + } + + public void setScrappedQty(java.lang.Short ScrappedQty) { + this.ScrappedQty = ScrappedQty; + } + + @javax.persistence.Column(name = "StartDate", nullable = false) + public java.sql.Timestamp getStartDate() { + return this.StartDate; + } + + public void setStartDate(java.sql.Timestamp StartDate) { + this.StartDate = StartDate; + } + + @javax.persistence.Column(name = "EndDate") + public java.sql.Timestamp getEndDate() { + return this.EndDate; + } + + public void setEndDate(java.sql.Timestamp EndDate) { + this.EndDate = EndDate; + } + + @javax.persistence.Column(name = "DueDate", nullable = false) + public java.sql.Timestamp getDueDate() { + return this.DueDate; + } + + public void setDueDate(java.sql.Timestamp DueDate) { + this.DueDate = DueDate; + } + + @javax.persistence.Column(name = "ScrapReasonID", precision = 5) + public java.lang.Short getScrapReasonID() { + return this.ScrapReasonID; + } + + public void setScrapReasonID(java.lang.Short ScrapReasonID) { + this.ScrapReasonID = ScrapReasonID; + } + + @javax.persistence.Column(name = "ModifiedDate", nullable = false) + public java.sql.Timestamp getModifiedDate() { + return this.ModifiedDate; + } + + public void setModifiedDate(java.sql.Timestamp ModifiedDate) { + this.ModifiedDate = ModifiedDate; + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/tables/pojos/WorkOrderRouting.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/tables/pojos/WorkOrderRouting.java new file mode 100644 index 00000000000..d9253e83dbf --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/tables/pojos/WorkOrderRouting.java @@ -0,0 +1,137 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.production.tables.pojos; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "WorkOrderRouting", schema = "Production", uniqueConstraints = { + @javax.persistence.UniqueConstraint(columnNames = {"WorkOrderID", "ProductID", "OperationSequence"}) +}) +public class WorkOrderRouting implements java.io.Serializable { + + private static final long serialVersionUID = 374057530; + + private java.lang.Integer WorkOrderID; + private java.lang.Integer ProductID; + private java.lang.Short OperationSequence; + private java.lang.Short LocationID; + private java.sql.Timestamp ScheduledStartDate; + private java.sql.Timestamp ScheduledEndDate; + private java.sql.Timestamp ActualStartDate; + private java.sql.Timestamp ActualEndDate; + private java.math.BigDecimal ActualResourceHrs; + private java.math.BigDecimal PlannedCost; + private java.math.BigDecimal ActualCost; + private java.sql.Timestamp ModifiedDate; + + @javax.persistence.Column(name = "WorkOrderID", nullable = false, precision = 10) + public java.lang.Integer getWorkOrderID() { + return this.WorkOrderID; + } + + public void setWorkOrderID(java.lang.Integer WorkOrderID) { + this.WorkOrderID = WorkOrderID; + } + + @javax.persistence.Column(name = "ProductID", nullable = false, precision = 10) + public java.lang.Integer getProductID() { + return this.ProductID; + } + + public void setProductID(java.lang.Integer ProductID) { + this.ProductID = ProductID; + } + + @javax.persistence.Column(name = "OperationSequence", nullable = false, precision = 5) + public java.lang.Short getOperationSequence() { + return this.OperationSequence; + } + + public void setOperationSequence(java.lang.Short OperationSequence) { + this.OperationSequence = OperationSequence; + } + + @javax.persistence.Column(name = "LocationID", nullable = false, precision = 5) + public java.lang.Short getLocationID() { + return this.LocationID; + } + + public void setLocationID(java.lang.Short LocationID) { + this.LocationID = LocationID; + } + + @javax.persistence.Column(name = "ScheduledStartDate", nullable = false) + public java.sql.Timestamp getScheduledStartDate() { + return this.ScheduledStartDate; + } + + public void setScheduledStartDate(java.sql.Timestamp ScheduledStartDate) { + this.ScheduledStartDate = ScheduledStartDate; + } + + @javax.persistence.Column(name = "ScheduledEndDate", nullable = false) + public java.sql.Timestamp getScheduledEndDate() { + return this.ScheduledEndDate; + } + + public void setScheduledEndDate(java.sql.Timestamp ScheduledEndDate) { + this.ScheduledEndDate = ScheduledEndDate; + } + + @javax.persistence.Column(name = "ActualStartDate") + public java.sql.Timestamp getActualStartDate() { + return this.ActualStartDate; + } + + public void setActualStartDate(java.sql.Timestamp ActualStartDate) { + this.ActualStartDate = ActualStartDate; + } + + @javax.persistence.Column(name = "ActualEndDate") + public java.sql.Timestamp getActualEndDate() { + return this.ActualEndDate; + } + + public void setActualEndDate(java.sql.Timestamp ActualEndDate) { + this.ActualEndDate = ActualEndDate; + } + + @javax.persistence.Column(name = "ActualResourceHrs", precision = 9, scale = 4) + public java.math.BigDecimal getActualResourceHrs() { + return this.ActualResourceHrs; + } + + public void setActualResourceHrs(java.math.BigDecimal ActualResourceHrs) { + this.ActualResourceHrs = ActualResourceHrs; + } + + @javax.persistence.Column(name = "PlannedCost", nullable = false, precision = 19, scale = 4) + public java.math.BigDecimal getPlannedCost() { + return this.PlannedCost; + } + + public void setPlannedCost(java.math.BigDecimal PlannedCost) { + this.PlannedCost = PlannedCost; + } + + @javax.persistence.Column(name = "ActualCost", precision = 19, scale = 4) + public java.math.BigDecimal getActualCost() { + return this.ActualCost; + } + + public void setActualCost(java.math.BigDecimal ActualCost) { + this.ActualCost = ActualCost; + } + + @javax.persistence.Column(name = "ModifiedDate", nullable = false) + public java.sql.Timestamp getModifiedDate() { + return this.ModifiedDate; + } + + public void setModifiedDate(java.sql.Timestamp ModifiedDate) { + this.ModifiedDate = ModifiedDate; + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/tables/pojos/vProductAndDescription.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/tables/pojos/vProductAndDescription.java new file mode 100644 index 00000000000..7ea383c8349 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/tables/pojos/vProductAndDescription.java @@ -0,0 +1,65 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.production.tables.pojos; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "vProductAndDescription", schema = "Production") +public class vProductAndDescription implements java.io.Serializable { + + private static final long serialVersionUID = -1939233424; + + private java.lang.Integer ProductID; + private java.lang.String Name; + private java.lang.String ProductModel; + private java.lang.String CultureID; + private java.lang.String Description; + + @javax.persistence.Column(name = "ProductID", nullable = false, precision = 10) + public java.lang.Integer getProductID() { + return this.ProductID; + } + + public void setProductID(java.lang.Integer ProductID) { + this.ProductID = ProductID; + } + + @javax.persistence.Column(name = "Name", nullable = false, length = 50) + public java.lang.String getName() { + return this.Name; + } + + public void setName(java.lang.String Name) { + this.Name = Name; + } + + @javax.persistence.Column(name = "ProductModel", nullable = false, length = 50) + public java.lang.String getProductModel() { + return this.ProductModel; + } + + public void setProductModel(java.lang.String ProductModel) { + this.ProductModel = ProductModel; + } + + @javax.persistence.Column(name = "CultureID", nullable = false, length = 6) + public java.lang.String getCultureID() { + return this.CultureID; + } + + public void setCultureID(java.lang.String CultureID) { + this.CultureID = CultureID; + } + + @javax.persistence.Column(name = "Description", nullable = false, length = 400) + public java.lang.String getDescription() { + return this.Description; + } + + public void setDescription(java.lang.String Description) { + this.Description = Description; + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/tables/pojos/vProductModelCatalogDescription.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/tables/pojos/vProductModelCatalogDescription.java new file mode 100644 index 00000000000..5cbec7564ca --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/tables/pojos/vProductModelCatalogDescription.java @@ -0,0 +1,265 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.production.tables.pojos; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "vProductModelCatalogDescription", schema = "Production") +public class vProductModelCatalogDescription implements java.io.Serializable { + + private static final long serialVersionUID = -143861014; + + private java.lang.Integer ProductModelID; + private java.lang.String Name; + private java.lang.String Summary; + private java.lang.String Manufacturer; + private java.lang.String Copyright; + private java.lang.String ProductURL; + private java.lang.String WarrantyPeriod; + private java.lang.String WarrantyDescription; + private java.lang.String NoOfYears; + private java.lang.String MaintenanceDescription; + private java.lang.String Wheel; + private java.lang.String Saddle; + private java.lang.String Pedal; + private java.lang.String BikeFrame; + private java.lang.String Crankset; + private java.lang.String PictureAngle; + private java.lang.String PictureSize; + private java.lang.String ProductPhotoID; + private java.lang.String Material; + private java.lang.String Color; + private java.lang.String ProductLine; + private java.lang.String Style; + private java.lang.String RiderExperience; + private java.lang.String rowguid; + private java.sql.Timestamp ModifiedDate; + + @javax.persistence.Column(name = "ProductModelID", nullable = false, precision = 10) + public java.lang.Integer getProductModelID() { + return this.ProductModelID; + } + + public void setProductModelID(java.lang.Integer ProductModelID) { + this.ProductModelID = ProductModelID; + } + + @javax.persistence.Column(name = "Name", nullable = false, length = 50) + public java.lang.String getName() { + return this.Name; + } + + public void setName(java.lang.String Name) { + this.Name = Name; + } + + @javax.persistence.Column(name = "Summary") + public java.lang.String getSummary() { + return this.Summary; + } + + public void setSummary(java.lang.String Summary) { + this.Summary = Summary; + } + + @javax.persistence.Column(name = "Manufacturer") + public java.lang.String getManufacturer() { + return this.Manufacturer; + } + + public void setManufacturer(java.lang.String Manufacturer) { + this.Manufacturer = Manufacturer; + } + + @javax.persistence.Column(name = "Copyright", length = 30) + public java.lang.String getCopyright() { + return this.Copyright; + } + + public void setCopyright(java.lang.String Copyright) { + this.Copyright = Copyright; + } + + @javax.persistence.Column(name = "ProductURL", length = 256) + public java.lang.String getProductURL() { + return this.ProductURL; + } + + public void setProductURL(java.lang.String ProductURL) { + this.ProductURL = ProductURL; + } + + @javax.persistence.Column(name = "WarrantyPeriod", length = 256) + public java.lang.String getWarrantyPeriod() { + return this.WarrantyPeriod; + } + + public void setWarrantyPeriod(java.lang.String WarrantyPeriod) { + this.WarrantyPeriod = WarrantyPeriod; + } + + @javax.persistence.Column(name = "WarrantyDescription", length = 256) + public java.lang.String getWarrantyDescription() { + return this.WarrantyDescription; + } + + public void setWarrantyDescription(java.lang.String WarrantyDescription) { + this.WarrantyDescription = WarrantyDescription; + } + + @javax.persistence.Column(name = "NoOfYears", length = 256) + public java.lang.String getNoOfYears() { + return this.NoOfYears; + } + + public void setNoOfYears(java.lang.String NoOfYears) { + this.NoOfYears = NoOfYears; + } + + @javax.persistence.Column(name = "MaintenanceDescription", length = 256) + public java.lang.String getMaintenanceDescription() { + return this.MaintenanceDescription; + } + + public void setMaintenanceDescription(java.lang.String MaintenanceDescription) { + this.MaintenanceDescription = MaintenanceDescription; + } + + @javax.persistence.Column(name = "Wheel", length = 256) + public java.lang.String getWheel() { + return this.Wheel; + } + + public void setWheel(java.lang.String Wheel) { + this.Wheel = Wheel; + } + + @javax.persistence.Column(name = "Saddle", length = 256) + public java.lang.String getSaddle() { + return this.Saddle; + } + + public void setSaddle(java.lang.String Saddle) { + this.Saddle = Saddle; + } + + @javax.persistence.Column(name = "Pedal", length = 256) + public java.lang.String getPedal() { + return this.Pedal; + } + + public void setPedal(java.lang.String Pedal) { + this.Pedal = Pedal; + } + + @javax.persistence.Column(name = "BikeFrame") + public java.lang.String getBikeFrame() { + return this.BikeFrame; + } + + public void setBikeFrame(java.lang.String BikeFrame) { + this.BikeFrame = BikeFrame; + } + + @javax.persistence.Column(name = "Crankset", length = 256) + public java.lang.String getCrankset() { + return this.Crankset; + } + + public void setCrankset(java.lang.String Crankset) { + this.Crankset = Crankset; + } + + @javax.persistence.Column(name = "PictureAngle", length = 256) + public java.lang.String getPictureAngle() { + return this.PictureAngle; + } + + public void setPictureAngle(java.lang.String PictureAngle) { + this.PictureAngle = PictureAngle; + } + + @javax.persistence.Column(name = "PictureSize", length = 256) + public java.lang.String getPictureSize() { + return this.PictureSize; + } + + public void setPictureSize(java.lang.String PictureSize) { + this.PictureSize = PictureSize; + } + + @javax.persistence.Column(name = "ProductPhotoID", length = 256) + public java.lang.String getProductPhotoID() { + return this.ProductPhotoID; + } + + public void setProductPhotoID(java.lang.String ProductPhotoID) { + this.ProductPhotoID = ProductPhotoID; + } + + @javax.persistence.Column(name = "Material", length = 256) + public java.lang.String getMaterial() { + return this.Material; + } + + public void setMaterial(java.lang.String Material) { + this.Material = Material; + } + + @javax.persistence.Column(name = "Color", length = 256) + public java.lang.String getColor() { + return this.Color; + } + + public void setColor(java.lang.String Color) { + this.Color = Color; + } + + @javax.persistence.Column(name = "ProductLine", length = 256) + public java.lang.String getProductLine() { + return this.ProductLine; + } + + public void setProductLine(java.lang.String ProductLine) { + this.ProductLine = ProductLine; + } + + @javax.persistence.Column(name = "Style", length = 256) + public java.lang.String getStyle() { + return this.Style; + } + + public void setStyle(java.lang.String Style) { + this.Style = Style; + } + + @javax.persistence.Column(name = "RiderExperience", length = 1024) + public java.lang.String getRiderExperience() { + return this.RiderExperience; + } + + public void setRiderExperience(java.lang.String RiderExperience) { + this.RiderExperience = RiderExperience; + } + + @javax.persistence.Column(name = "rowguid", nullable = false) + public java.lang.String getrowguid() { + return this.rowguid; + } + + public void setrowguid(java.lang.String rowguid) { + this.rowguid = rowguid; + } + + @javax.persistence.Column(name = "ModifiedDate", nullable = false) + public java.sql.Timestamp getModifiedDate() { + return this.ModifiedDate; + } + + public void setModifiedDate(java.sql.Timestamp ModifiedDate) { + this.ModifiedDate = ModifiedDate; + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/tables/pojos/vProductModelInstructions.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/tables/pojos/vProductModelInstructions.java new file mode 100644 index 00000000000..305fbc3c417 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/tables/pojos/vProductModelInstructions.java @@ -0,0 +1,125 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.production.tables.pojos; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "vProductModelInstructions", schema = "Production") +public class vProductModelInstructions implements java.io.Serializable { + + private static final long serialVersionUID = 2019298195; + + private java.lang.Integer ProductModelID; + private java.lang.String Name; + private java.lang.String Instructions; + private java.lang.Integer LocationID; + private java.math.BigDecimal SetupHours; + private java.math.BigDecimal MachineHours; + private java.math.BigDecimal LaborHours; + private java.lang.Integer LotSize; + private java.lang.String Step; + private java.lang.String rowguid; + private java.sql.Timestamp ModifiedDate; + + @javax.persistence.Column(name = "ProductModelID", nullable = false, precision = 10) + public java.lang.Integer getProductModelID() { + return this.ProductModelID; + } + + public void setProductModelID(java.lang.Integer ProductModelID) { + this.ProductModelID = ProductModelID; + } + + @javax.persistence.Column(name = "Name", nullable = false, length = 50) + public java.lang.String getName() { + return this.Name; + } + + public void setName(java.lang.String Name) { + this.Name = Name; + } + + @javax.persistence.Column(name = "Instructions") + public java.lang.String getInstructions() { + return this.Instructions; + } + + public void setInstructions(java.lang.String Instructions) { + this.Instructions = Instructions; + } + + @javax.persistence.Column(name = "LocationID", precision = 10) + public java.lang.Integer getLocationID() { + return this.LocationID; + } + + public void setLocationID(java.lang.Integer LocationID) { + this.LocationID = LocationID; + } + + @javax.persistence.Column(name = "SetupHours", precision = 9, scale = 4) + public java.math.BigDecimal getSetupHours() { + return this.SetupHours; + } + + public void setSetupHours(java.math.BigDecimal SetupHours) { + this.SetupHours = SetupHours; + } + + @javax.persistence.Column(name = "MachineHours", precision = 9, scale = 4) + public java.math.BigDecimal getMachineHours() { + return this.MachineHours; + } + + public void setMachineHours(java.math.BigDecimal MachineHours) { + this.MachineHours = MachineHours; + } + + @javax.persistence.Column(name = "LaborHours", precision = 9, scale = 4) + public java.math.BigDecimal getLaborHours() { + return this.LaborHours; + } + + public void setLaborHours(java.math.BigDecimal LaborHours) { + this.LaborHours = LaborHours; + } + + @javax.persistence.Column(name = "LotSize", precision = 10) + public java.lang.Integer getLotSize() { + return this.LotSize; + } + + public void setLotSize(java.lang.Integer LotSize) { + this.LotSize = LotSize; + } + + @javax.persistence.Column(name = "Step", length = 1024) + public java.lang.String getStep() { + return this.Step; + } + + public void setStep(java.lang.String Step) { + this.Step = Step; + } + + @javax.persistence.Column(name = "rowguid", nullable = false) + public java.lang.String getrowguid() { + return this.rowguid; + } + + public void setrowguid(java.lang.String rowguid) { + this.rowguid = rowguid; + } + + @javax.persistence.Column(name = "ModifiedDate", nullable = false) + public java.sql.Timestamp getModifiedDate() { + return this.ModifiedDate; + } + + public void setModifiedDate(java.sql.Timestamp ModifiedDate) { + this.ModifiedDate = ModifiedDate; + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/tables/records/BillOfMaterials.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/tables/records/BillOfMaterials.java new file mode 100644 index 00000000000..b94a4180acf --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/tables/records/BillOfMaterials.java @@ -0,0 +1,197 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.production.tables.records; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "BillOfMaterials", schema = "Production") +public class BillOfMaterials extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = 88704232; + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setBillOfMaterialsID(java.lang.Integer value) { + setValue(org.jooq.examples.sqlserver.adventureworks.production.tables.BillOfMaterials.BillOfMaterials.BillOfMaterialsID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + @javax.persistence.Id + @javax.persistence.Column(name = "BillOfMaterialsID", unique = true, nullable = false, precision = 10) + public java.lang.Integer getBillOfMaterialsID() { + return getValue(org.jooq.examples.sqlserver.adventureworks.production.tables.BillOfMaterials.BillOfMaterials.BillOfMaterialsID); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_BillOfMaterials_Product_ProductAssemblyID
+	 * FOREIGN KEY (ProductAssemblyID)
+	 * REFERENCES Production.Product (ProductID)
+	 * 
+ */ + public void setProductAssemblyID(java.lang.Integer value) { + setValue(org.jooq.examples.sqlserver.adventureworks.production.tables.BillOfMaterials.BillOfMaterials.ProductAssemblyID, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_BillOfMaterials_Product_ProductAssemblyID
+	 * FOREIGN KEY (ProductAssemblyID)
+	 * REFERENCES Production.Product (ProductID)
+	 * 
+ */ + @javax.persistence.Column(name = "ProductAssemblyID", precision = 10) + public java.lang.Integer getProductAssemblyID() { + return getValue(org.jooq.examples.sqlserver.adventureworks.production.tables.BillOfMaterials.BillOfMaterials.ProductAssemblyID); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_BillOfMaterials_Product_ComponentID
+	 * FOREIGN KEY (ComponentID)
+	 * REFERENCES Production.Product (ProductID)
+	 * 
+ */ + public void setComponentID(java.lang.Integer value) { + setValue(org.jooq.examples.sqlserver.adventureworks.production.tables.BillOfMaterials.BillOfMaterials.ComponentID, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_BillOfMaterials_Product_ComponentID
+	 * FOREIGN KEY (ComponentID)
+	 * REFERENCES Production.Product (ProductID)
+	 * 
+ */ + @javax.persistence.Column(name = "ComponentID", nullable = false, precision = 10) + public java.lang.Integer getComponentID() { + return getValue(org.jooq.examples.sqlserver.adventureworks.production.tables.BillOfMaterials.BillOfMaterials.ComponentID); + } + + /** + * An uncommented item + */ + public void setStartDate(java.sql.Timestamp value) { + setValue(org.jooq.examples.sqlserver.adventureworks.production.tables.BillOfMaterials.BillOfMaterials.StartDate, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "StartDate", nullable = false) + public java.sql.Timestamp getStartDate() { + return getValue(org.jooq.examples.sqlserver.adventureworks.production.tables.BillOfMaterials.BillOfMaterials.StartDate); + } + + /** + * An uncommented item + */ + public void setEndDate(java.sql.Timestamp value) { + setValue(org.jooq.examples.sqlserver.adventureworks.production.tables.BillOfMaterials.BillOfMaterials.EndDate, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "EndDate") + public java.sql.Timestamp getEndDate() { + return getValue(org.jooq.examples.sqlserver.adventureworks.production.tables.BillOfMaterials.BillOfMaterials.EndDate); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_BillOfMaterials_UnitMeasure_UnitMeasureCode
+	 * FOREIGN KEY (UnitMeasureCode)
+	 * REFERENCES Production.UnitMeasure (UnitMeasureCode)
+	 * 
+ */ + public void setUnitMeasureCode(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.production.tables.BillOfMaterials.BillOfMaterials.UnitMeasureCode, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_BillOfMaterials_UnitMeasure_UnitMeasureCode
+	 * FOREIGN KEY (UnitMeasureCode)
+	 * REFERENCES Production.UnitMeasure (UnitMeasureCode)
+	 * 
+ */ + @javax.persistence.Column(name = "UnitMeasureCode", nullable = false, length = 3) + public java.lang.String getUnitMeasureCode() { + return getValue(org.jooq.examples.sqlserver.adventureworks.production.tables.BillOfMaterials.BillOfMaterials.UnitMeasureCode); + } + + /** + * An uncommented item + */ + public void setBOMLevel(java.lang.Short value) { + setValue(org.jooq.examples.sqlserver.adventureworks.production.tables.BillOfMaterials.BillOfMaterials.BOMLevel, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "BOMLevel", nullable = false, precision = 5) + public java.lang.Short getBOMLevel() { + return getValue(org.jooq.examples.sqlserver.adventureworks.production.tables.BillOfMaterials.BillOfMaterials.BOMLevel); + } + + /** + * An uncommented item + */ + public void setPerAssemblyQty(java.math.BigDecimal value) { + setValue(org.jooq.examples.sqlserver.adventureworks.production.tables.BillOfMaterials.BillOfMaterials.PerAssemblyQty, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "PerAssemblyQty", nullable = false, precision = 8, scale = 2) + public java.math.BigDecimal getPerAssemblyQty() { + return getValue(org.jooq.examples.sqlserver.adventureworks.production.tables.BillOfMaterials.BillOfMaterials.PerAssemblyQty); + } + + /** + * An uncommented item + */ + public void setModifiedDate(java.sql.Timestamp value) { + setValue(org.jooq.examples.sqlserver.adventureworks.production.tables.BillOfMaterials.BillOfMaterials.ModifiedDate, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "ModifiedDate", nullable = false) + public java.sql.Timestamp getModifiedDate() { + return getValue(org.jooq.examples.sqlserver.adventureworks.production.tables.BillOfMaterials.BillOfMaterials.ModifiedDate); + } + + /** + * Create a detached BillOfMaterials + */ + public BillOfMaterials() { + super(org.jooq.examples.sqlserver.adventureworks.production.tables.BillOfMaterials.BillOfMaterials); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/tables/records/Culture.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/tables/records/Culture.java new file mode 100644 index 00000000000..543029504f6 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/tables/records/Culture.java @@ -0,0 +1,71 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.production.tables.records; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "Culture", schema = "Production") +public class Culture extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = 1463175751; + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setCultureID(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.production.tables.Culture.Culture.CultureID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + @javax.persistence.Id + @javax.persistence.Column(name = "CultureID", unique = true, nullable = false, length = 6) + public java.lang.String getCultureID() { + return getValue(org.jooq.examples.sqlserver.adventureworks.production.tables.Culture.Culture.CultureID); + } + + /** + * An uncommented item + */ + public void setName(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.production.tables.Culture.Culture.Name, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "Name", nullable = false, length = 50) + public java.lang.String getName() { + return getValue(org.jooq.examples.sqlserver.adventureworks.production.tables.Culture.Culture.Name); + } + + /** + * An uncommented item + */ + public void setModifiedDate(java.sql.Timestamp value) { + setValue(org.jooq.examples.sqlserver.adventureworks.production.tables.Culture.Culture.ModifiedDate, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "ModifiedDate", nullable = false) + public java.sql.Timestamp getModifiedDate() { + return getValue(org.jooq.examples.sqlserver.adventureworks.production.tables.Culture.Culture.ModifiedDate); + } + + /** + * Create a detached Culture + */ + public Culture() { + super(org.jooq.examples.sqlserver.adventureworks.production.tables.Culture.Culture); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/tables/records/Document.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/tables/records/Document.java new file mode 100644 index 00000000000..580e1ca14af --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/tables/records/Document.java @@ -0,0 +1,176 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.production.tables.records; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "Document", schema = "Production") +public class Document extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = 423074071; + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setDocumentID(java.lang.Integer value) { + setValue(org.jooq.examples.sqlserver.adventureworks.production.tables.Document.Document.DocumentID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + @javax.persistence.Id + @javax.persistence.Column(name = "DocumentID", unique = true, nullable = false, precision = 10) + public java.lang.Integer getDocumentID() { + return getValue(org.jooq.examples.sqlserver.adventureworks.production.tables.Document.Document.DocumentID); + } + + /** + * An uncommented item + */ + public void setTitle(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.production.tables.Document.Document.Title, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "Title", nullable = false, length = 50) + public java.lang.String getTitle() { + return getValue(org.jooq.examples.sqlserver.adventureworks.production.tables.Document.Document.Title); + } + + /** + * An uncommented item + */ + public void setFileName(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.production.tables.Document.Document.FileName, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "FileName", nullable = false, length = 400) + public java.lang.String getFileName() { + return getValue(org.jooq.examples.sqlserver.adventureworks.production.tables.Document.Document.FileName); + } + + /** + * An uncommented item + */ + public void setFileExtension(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.production.tables.Document.Document.FileExtension, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "FileExtension", nullable = false, length = 8) + public java.lang.String getFileExtension() { + return getValue(org.jooq.examples.sqlserver.adventureworks.production.tables.Document.Document.FileExtension); + } + + /** + * An uncommented item + */ + public void setRevision(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.production.tables.Document.Document.Revision, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "Revision", nullable = false, length = 5) + public java.lang.String getRevision() { + return getValue(org.jooq.examples.sqlserver.adventureworks.production.tables.Document.Document.Revision); + } + + /** + * An uncommented item + */ + public void setChangeNumber(java.lang.Integer value) { + setValue(org.jooq.examples.sqlserver.adventureworks.production.tables.Document.Document.ChangeNumber, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "ChangeNumber", nullable = false, precision = 10) + public java.lang.Integer getChangeNumber() { + return getValue(org.jooq.examples.sqlserver.adventureworks.production.tables.Document.Document.ChangeNumber); + } + + /** + * An uncommented item + */ + public void setStatus(java.lang.Byte value) { + setValue(org.jooq.examples.sqlserver.adventureworks.production.tables.Document.Document.Status, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "Status", nullable = false, precision = 3) + public java.lang.Byte getStatus() { + return getValue(org.jooq.examples.sqlserver.adventureworks.production.tables.Document.Document.Status); + } + + /** + * An uncommented item + */ + public void setDocumentSummary(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.production.tables.Document.Document.DocumentSummary, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "DocumentSummary") + public java.lang.String getDocumentSummary() { + return getValue(org.jooq.examples.sqlserver.adventureworks.production.tables.Document.Document.DocumentSummary); + } + + /** + * An uncommented item + */ + public void setDocument(byte[] value) { + setValue(org.jooq.examples.sqlserver.adventureworks.production.tables.Document.Document.Document_, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "Document") + public byte[] getDocument() { + return getValue(org.jooq.examples.sqlserver.adventureworks.production.tables.Document.Document.Document_); + } + + /** + * An uncommented item + */ + public void setModifiedDate(java.sql.Timestamp value) { + setValue(org.jooq.examples.sqlserver.adventureworks.production.tables.Document.Document.ModifiedDate, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "ModifiedDate", nullable = false) + public java.sql.Timestamp getModifiedDate() { + return getValue(org.jooq.examples.sqlserver.adventureworks.production.tables.Document.Document.ModifiedDate); + } + + /** + * Create a detached Document + */ + public Document() { + super(org.jooq.examples.sqlserver.adventureworks.production.tables.Document.Document); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/tables/records/Illustration.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/tables/records/Illustration.java new file mode 100644 index 00000000000..5eb4ae1f9f1 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/tables/records/Illustration.java @@ -0,0 +1,77 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.production.tables.records; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "Illustration", schema = "Production") +public class Illustration extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = 200384251; + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setIllustrationID(java.lang.Integer value) { + setValue(org.jooq.examples.sqlserver.adventureworks.production.tables.Illustration.Illustration.IllustrationID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + @javax.persistence.Id + @javax.persistence.Column(name = "IllustrationID", unique = true, nullable = false, precision = 10) + public java.lang.Integer getIllustrationID() { + return getValue(org.jooq.examples.sqlserver.adventureworks.production.tables.Illustration.Illustration.IllustrationID); + } + + /** + * An uncommented item + * + * The SQL type of this item (xml, ) could not be mapped.
+ * Deserialising this field might not work! + */ + public void setDiagram(java.lang.Object value) { + setValue(org.jooq.examples.sqlserver.adventureworks.production.tables.Illustration.Illustration.Diagram, value); + } + + /** + * An uncommented item + * + * The SQL type of this item (xml, ) could not be mapped.
+ * Deserialising this field might not work! + */ + @javax.persistence.Column(name = "Diagram") + public java.lang.Object getDiagram() { + return getValue(org.jooq.examples.sqlserver.adventureworks.production.tables.Illustration.Illustration.Diagram); + } + + /** + * An uncommented item + */ + public void setModifiedDate(java.sql.Timestamp value) { + setValue(org.jooq.examples.sqlserver.adventureworks.production.tables.Illustration.Illustration.ModifiedDate, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "ModifiedDate", nullable = false) + public java.sql.Timestamp getModifiedDate() { + return getValue(org.jooq.examples.sqlserver.adventureworks.production.tables.Illustration.Illustration.ModifiedDate); + } + + /** + * Create a detached Illustration + */ + public Illustration() { + super(org.jooq.examples.sqlserver.adventureworks.production.tables.Illustration.Illustration); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/tables/records/Location.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/tables/records/Location.java new file mode 100644 index 00000000000..73b19cbb0b6 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/tables/records/Location.java @@ -0,0 +1,101 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.production.tables.records; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "Location", schema = "Production") +public class Location extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = 938148699; + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setLocationID(java.lang.Short value) { + setValue(org.jooq.examples.sqlserver.adventureworks.production.tables.Location.Location.LocationID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + @javax.persistence.Id + @javax.persistence.Column(name = "LocationID", unique = true, nullable = false, precision = 5) + public java.lang.Short getLocationID() { + return getValue(org.jooq.examples.sqlserver.adventureworks.production.tables.Location.Location.LocationID); + } + + /** + * An uncommented item + */ + public void setName(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.production.tables.Location.Location.Name, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "Name", nullable = false, length = 50) + public java.lang.String getName() { + return getValue(org.jooq.examples.sqlserver.adventureworks.production.tables.Location.Location.Name); + } + + /** + * An uncommented item + */ + public void setCostRate(java.math.BigDecimal value) { + setValue(org.jooq.examples.sqlserver.adventureworks.production.tables.Location.Location.CostRate, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "CostRate", nullable = false, precision = 10, scale = 4) + public java.math.BigDecimal getCostRate() { + return getValue(org.jooq.examples.sqlserver.adventureworks.production.tables.Location.Location.CostRate); + } + + /** + * An uncommented item + */ + public void setAvailability(java.math.BigDecimal value) { + setValue(org.jooq.examples.sqlserver.adventureworks.production.tables.Location.Location.Availability, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "Availability", nullable = false, precision = 8, scale = 2) + public java.math.BigDecimal getAvailability() { + return getValue(org.jooq.examples.sqlserver.adventureworks.production.tables.Location.Location.Availability); + } + + /** + * An uncommented item + */ + public void setModifiedDate(java.sql.Timestamp value) { + setValue(org.jooq.examples.sqlserver.adventureworks.production.tables.Location.Location.ModifiedDate, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "ModifiedDate", nullable = false) + public java.sql.Timestamp getModifiedDate() { + return getValue(org.jooq.examples.sqlserver.adventureworks.production.tables.Location.Location.ModifiedDate); + } + + /** + * Create a detached Location + */ + public Location() { + super(org.jooq.examples.sqlserver.adventureworks.production.tables.Location.Location); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/tables/records/Product.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/tables/records/Product.java new file mode 100644 index 00000000000..9088935297f --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/tables/records/Product.java @@ -0,0 +1,449 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.production.tables.records; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "Product", schema = "Production") +public class Product extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = 1246925908; + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setProductID(java.lang.Integer value) { + setValue(org.jooq.examples.sqlserver.adventureworks.production.tables.Product.Product.ProductID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + @javax.persistence.Id + @javax.persistence.Column(name = "ProductID", unique = true, nullable = false, precision = 10) + public java.lang.Integer getProductID() { + return getValue(org.jooq.examples.sqlserver.adventureworks.production.tables.Product.Product.ProductID); + } + + /** + * An uncommented item + */ + public void setName(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.production.tables.Product.Product.Name, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "Name", nullable = false, length = 50) + public java.lang.String getName() { + return getValue(org.jooq.examples.sqlserver.adventureworks.production.tables.Product.Product.Name); + } + + /** + * An uncommented item + */ + public void setProductNumber(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.production.tables.Product.Product.ProductNumber, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "ProductNumber", nullable = false, length = 25) + public java.lang.String getProductNumber() { + return getValue(org.jooq.examples.sqlserver.adventureworks.production.tables.Product.Product.ProductNumber); + } + + /** + * An uncommented item + */ + public void setMakeFlag(java.lang.Boolean value) { + setValue(org.jooq.examples.sqlserver.adventureworks.production.tables.Product.Product.MakeFlag, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "MakeFlag", nullable = false) + public java.lang.Boolean getMakeFlag() { + return getValue(org.jooq.examples.sqlserver.adventureworks.production.tables.Product.Product.MakeFlag); + } + + /** + * An uncommented item + */ + public void setFinishedGoodsFlag(java.lang.Boolean value) { + setValue(org.jooq.examples.sqlserver.adventureworks.production.tables.Product.Product.FinishedGoodsFlag, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "FinishedGoodsFlag", nullable = false) + public java.lang.Boolean getFinishedGoodsFlag() { + return getValue(org.jooq.examples.sqlserver.adventureworks.production.tables.Product.Product.FinishedGoodsFlag); + } + + /** + * An uncommented item + */ + public void setColor(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.production.tables.Product.Product.Color, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "Color", length = 15) + public java.lang.String getColor() { + return getValue(org.jooq.examples.sqlserver.adventureworks.production.tables.Product.Product.Color); + } + + /** + * An uncommented item + */ + public void setSafetyStockLevel(java.lang.Short value) { + setValue(org.jooq.examples.sqlserver.adventureworks.production.tables.Product.Product.SafetyStockLevel, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "SafetyStockLevel", nullable = false, precision = 5) + public java.lang.Short getSafetyStockLevel() { + return getValue(org.jooq.examples.sqlserver.adventureworks.production.tables.Product.Product.SafetyStockLevel); + } + + /** + * An uncommented item + */ + public void setReorderPoint(java.lang.Short value) { + setValue(org.jooq.examples.sqlserver.adventureworks.production.tables.Product.Product.ReorderPoint, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "ReorderPoint", nullable = false, precision = 5) + public java.lang.Short getReorderPoint() { + return getValue(org.jooq.examples.sqlserver.adventureworks.production.tables.Product.Product.ReorderPoint); + } + + /** + * An uncommented item + */ + public void setStandardCost(java.math.BigDecimal value) { + setValue(org.jooq.examples.sqlserver.adventureworks.production.tables.Product.Product.StandardCost, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "StandardCost", nullable = false, precision = 19, scale = 4) + public java.math.BigDecimal getStandardCost() { + return getValue(org.jooq.examples.sqlserver.adventureworks.production.tables.Product.Product.StandardCost); + } + + /** + * An uncommented item + */ + public void setListPrice(java.math.BigDecimal value) { + setValue(org.jooq.examples.sqlserver.adventureworks.production.tables.Product.Product.ListPrice, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "ListPrice", nullable = false, precision = 19, scale = 4) + public java.math.BigDecimal getListPrice() { + return getValue(org.jooq.examples.sqlserver.adventureworks.production.tables.Product.Product.ListPrice); + } + + /** + * An uncommented item + */ + public void setSize(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.production.tables.Product.Product.Size, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "Size", length = 5) + public java.lang.String getSize() { + return getValue(org.jooq.examples.sqlserver.adventureworks.production.tables.Product.Product.Size); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_Product_UnitMeasure_SizeUnitMeasureCode
+	 * FOREIGN KEY (SizeUnitMeasureCode)
+	 * REFERENCES Production.UnitMeasure (UnitMeasureCode)
+	 * 
+ */ + public void setSizeUnitMeasureCode(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.production.tables.Product.Product.SizeUnitMeasureCode, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_Product_UnitMeasure_SizeUnitMeasureCode
+	 * FOREIGN KEY (SizeUnitMeasureCode)
+	 * REFERENCES Production.UnitMeasure (UnitMeasureCode)
+	 * 
+ */ + @javax.persistence.Column(name = "SizeUnitMeasureCode", length = 3) + public java.lang.String getSizeUnitMeasureCode() { + return getValue(org.jooq.examples.sqlserver.adventureworks.production.tables.Product.Product.SizeUnitMeasureCode); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_Product_UnitMeasure_WeightUnitMeasureCode
+	 * FOREIGN KEY (WeightUnitMeasureCode)
+	 * REFERENCES Production.UnitMeasure (UnitMeasureCode)
+	 * 
+ */ + public void setWeightUnitMeasureCode(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.production.tables.Product.Product.WeightUnitMeasureCode, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_Product_UnitMeasure_WeightUnitMeasureCode
+	 * FOREIGN KEY (WeightUnitMeasureCode)
+	 * REFERENCES Production.UnitMeasure (UnitMeasureCode)
+	 * 
+ */ + @javax.persistence.Column(name = "WeightUnitMeasureCode", length = 3) + public java.lang.String getWeightUnitMeasureCode() { + return getValue(org.jooq.examples.sqlserver.adventureworks.production.tables.Product.Product.WeightUnitMeasureCode); + } + + /** + * An uncommented item + */ + public void setWeight(java.math.BigDecimal value) { + setValue(org.jooq.examples.sqlserver.adventureworks.production.tables.Product.Product.Weight, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "Weight", precision = 8, scale = 2) + public java.math.BigDecimal getWeight() { + return getValue(org.jooq.examples.sqlserver.adventureworks.production.tables.Product.Product.Weight); + } + + /** + * An uncommented item + */ + public void setDaysToManufacture(java.lang.Integer value) { + setValue(org.jooq.examples.sqlserver.adventureworks.production.tables.Product.Product.DaysToManufacture, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "DaysToManufacture", nullable = false, precision = 10) + public java.lang.Integer getDaysToManufacture() { + return getValue(org.jooq.examples.sqlserver.adventureworks.production.tables.Product.Product.DaysToManufacture); + } + + /** + * An uncommented item + */ + public void setProductLine(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.production.tables.Product.Product.ProductLine, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "ProductLine", length = 2) + public java.lang.String getProductLine() { + return getValue(org.jooq.examples.sqlserver.adventureworks.production.tables.Product.Product.ProductLine); + } + + /** + * An uncommented item + */ + public void setClass_(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.production.tables.Product.Product.Class, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "Class", length = 2) + public java.lang.String getClass_() { + return getValue(org.jooq.examples.sqlserver.adventureworks.production.tables.Product.Product.Class); + } + + /** + * An uncommented item + */ + public void setStyle(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.production.tables.Product.Product.Style, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "Style", length = 2) + public java.lang.String getStyle() { + return getValue(org.jooq.examples.sqlserver.adventureworks.production.tables.Product.Product.Style); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_Product_ProductSubcategory_ProductSubcategoryID
+	 * FOREIGN KEY (ProductSubcategoryID)
+	 * REFERENCES Production.ProductSubcategory (ProductSubcategoryID)
+	 * 
+ */ + public void setProductSubcategoryID(java.lang.Integer value) { + setValue(org.jooq.examples.sqlserver.adventureworks.production.tables.Product.Product.ProductSubcategoryID, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_Product_ProductSubcategory_ProductSubcategoryID
+	 * FOREIGN KEY (ProductSubcategoryID)
+	 * REFERENCES Production.ProductSubcategory (ProductSubcategoryID)
+	 * 
+ */ + @javax.persistence.Column(name = "ProductSubcategoryID", precision = 10) + public java.lang.Integer getProductSubcategoryID() { + return getValue(org.jooq.examples.sqlserver.adventureworks.production.tables.Product.Product.ProductSubcategoryID); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_Product_ProductModel_ProductModelID
+	 * FOREIGN KEY (ProductModelID)
+	 * REFERENCES Production.ProductModel (ProductModelID)
+	 * 
+ */ + public void setProductModelID(java.lang.Integer value) { + setValue(org.jooq.examples.sqlserver.adventureworks.production.tables.Product.Product.ProductModelID, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_Product_ProductModel_ProductModelID
+	 * FOREIGN KEY (ProductModelID)
+	 * REFERENCES Production.ProductModel (ProductModelID)
+	 * 
+ */ + @javax.persistence.Column(name = "ProductModelID", precision = 10) + public java.lang.Integer getProductModelID() { + return getValue(org.jooq.examples.sqlserver.adventureworks.production.tables.Product.Product.ProductModelID); + } + + /** + * An uncommented item + */ + public void setSellStartDate(java.sql.Timestamp value) { + setValue(org.jooq.examples.sqlserver.adventureworks.production.tables.Product.Product.SellStartDate, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "SellStartDate", nullable = false) + public java.sql.Timestamp getSellStartDate() { + return getValue(org.jooq.examples.sqlserver.adventureworks.production.tables.Product.Product.SellStartDate); + } + + /** + * An uncommented item + */ + public void setSellEndDate(java.sql.Timestamp value) { + setValue(org.jooq.examples.sqlserver.adventureworks.production.tables.Product.Product.SellEndDate, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "SellEndDate") + public java.sql.Timestamp getSellEndDate() { + return getValue(org.jooq.examples.sqlserver.adventureworks.production.tables.Product.Product.SellEndDate); + } + + /** + * An uncommented item + */ + public void setDiscontinuedDate(java.sql.Timestamp value) { + setValue(org.jooq.examples.sqlserver.adventureworks.production.tables.Product.Product.DiscontinuedDate, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "DiscontinuedDate") + public java.sql.Timestamp getDiscontinuedDate() { + return getValue(org.jooq.examples.sqlserver.adventureworks.production.tables.Product.Product.DiscontinuedDate); + } + + /** + * An uncommented item + */ + public void setrowguid(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.production.tables.Product.Product.rowguid, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "rowguid", nullable = false) + public java.lang.String getrowguid() { + return getValue(org.jooq.examples.sqlserver.adventureworks.production.tables.Product.Product.rowguid); + } + + /** + * An uncommented item + */ + public void setModifiedDate(java.sql.Timestamp value) { + setValue(org.jooq.examples.sqlserver.adventureworks.production.tables.Product.Product.ModifiedDate, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "ModifiedDate", nullable = false) + public java.sql.Timestamp getModifiedDate() { + return getValue(org.jooq.examples.sqlserver.adventureworks.production.tables.Product.Product.ModifiedDate); + } + + /** + * Create a detached Product + */ + public Product() { + super(org.jooq.examples.sqlserver.adventureworks.production.tables.Product.Product); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/tables/records/ProductCategory.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/tables/records/ProductCategory.java new file mode 100644 index 00000000000..375ddc2e9a1 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/tables/records/ProductCategory.java @@ -0,0 +1,86 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.production.tables.records; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "ProductCategory", schema = "Production") +public class ProductCategory extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = -2088796351; + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setProductCategoryID(java.lang.Integer value) { + setValue(org.jooq.examples.sqlserver.adventureworks.production.tables.ProductCategory.ProductCategory.ProductCategoryID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + @javax.persistence.Id + @javax.persistence.Column(name = "ProductCategoryID", unique = true, nullable = false, precision = 10) + public java.lang.Integer getProductCategoryID() { + return getValue(org.jooq.examples.sqlserver.adventureworks.production.tables.ProductCategory.ProductCategory.ProductCategoryID); + } + + /** + * An uncommented item + */ + public void setName(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.production.tables.ProductCategory.ProductCategory.Name, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "Name", nullable = false, length = 50) + public java.lang.String getName() { + return getValue(org.jooq.examples.sqlserver.adventureworks.production.tables.ProductCategory.ProductCategory.Name); + } + + /** + * An uncommented item + */ + public void setrowguid(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.production.tables.ProductCategory.ProductCategory.rowguid, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "rowguid", nullable = false) + public java.lang.String getrowguid() { + return getValue(org.jooq.examples.sqlserver.adventureworks.production.tables.ProductCategory.ProductCategory.rowguid); + } + + /** + * An uncommented item + */ + public void setModifiedDate(java.sql.Timestamp value) { + setValue(org.jooq.examples.sqlserver.adventureworks.production.tables.ProductCategory.ProductCategory.ModifiedDate, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "ModifiedDate", nullable = false) + public java.sql.Timestamp getModifiedDate() { + return getValue(org.jooq.examples.sqlserver.adventureworks.production.tables.ProductCategory.ProductCategory.ModifiedDate); + } + + /** + * Create a detached ProductCategory + */ + public ProductCategory() { + super(org.jooq.examples.sqlserver.adventureworks.production.tables.ProductCategory.ProductCategory); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/tables/records/ProductCostHistory.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/tables/records/ProductCostHistory.java new file mode 100644 index 00000000000..91e362b4613 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/tables/records/ProductCostHistory.java @@ -0,0 +1,118 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.production.tables.records; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "ProductCostHistory", schema = "Production", uniqueConstraints = { + @javax.persistence.UniqueConstraint(columnNames = {"ProductID", "StartDate"}) +}) +public class ProductCostHistory extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = -1293221739; + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT FK_ProductCostHistory_Product_ProductID
+	 * FOREIGN KEY (ProductID)
+	 * REFERENCES Production.Product (ProductID)
+	 * 
+ */ + public void setProductID(java.lang.Integer value) { + setValue(org.jooq.examples.sqlserver.adventureworks.production.tables.ProductCostHistory.ProductCostHistory.ProductID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT FK_ProductCostHistory_Product_ProductID
+	 * FOREIGN KEY (ProductID)
+	 * REFERENCES Production.Product (ProductID)
+	 * 
+ */ + @javax.persistence.Column(name = "ProductID", nullable = false, precision = 10) + public java.lang.Integer getProductID() { + return getValue(org.jooq.examples.sqlserver.adventureworks.production.tables.ProductCostHistory.ProductCostHistory.ProductID); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setStartDate(java.sql.Timestamp value) { + setValue(org.jooq.examples.sqlserver.adventureworks.production.tables.ProductCostHistory.ProductCostHistory.StartDate, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + @javax.persistence.Column(name = "StartDate", nullable = false) + public java.sql.Timestamp getStartDate() { + return getValue(org.jooq.examples.sqlserver.adventureworks.production.tables.ProductCostHistory.ProductCostHistory.StartDate); + } + + /** + * An uncommented item + */ + public void setEndDate(java.sql.Timestamp value) { + setValue(org.jooq.examples.sqlserver.adventureworks.production.tables.ProductCostHistory.ProductCostHistory.EndDate, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "EndDate") + public java.sql.Timestamp getEndDate() { + return getValue(org.jooq.examples.sqlserver.adventureworks.production.tables.ProductCostHistory.ProductCostHistory.EndDate); + } + + /** + * An uncommented item + */ + public void setStandardCost(java.math.BigDecimal value) { + setValue(org.jooq.examples.sqlserver.adventureworks.production.tables.ProductCostHistory.ProductCostHistory.StandardCost, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "StandardCost", nullable = false, precision = 19, scale = 4) + public java.math.BigDecimal getStandardCost() { + return getValue(org.jooq.examples.sqlserver.adventureworks.production.tables.ProductCostHistory.ProductCostHistory.StandardCost); + } + + /** + * An uncommented item + */ + public void setModifiedDate(java.sql.Timestamp value) { + setValue(org.jooq.examples.sqlserver.adventureworks.production.tables.ProductCostHistory.ProductCostHistory.ModifiedDate, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "ModifiedDate", nullable = false) + public java.sql.Timestamp getModifiedDate() { + return getValue(org.jooq.examples.sqlserver.adventureworks.production.tables.ProductCostHistory.ProductCostHistory.ModifiedDate); + } + + /** + * Create a detached ProductCostHistory + */ + public ProductCostHistory() { + super(org.jooq.examples.sqlserver.adventureworks.production.tables.ProductCostHistory.ProductCostHistory); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/tables/records/ProductDescription.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/tables/records/ProductDescription.java new file mode 100644 index 00000000000..9acbdebab8a --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/tables/records/ProductDescription.java @@ -0,0 +1,86 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.production.tables.records; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "ProductDescription", schema = "Production") +public class ProductDescription extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = 2052199881; + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setProductDescriptionID(java.lang.Integer value) { + setValue(org.jooq.examples.sqlserver.adventureworks.production.tables.ProductDescription.ProductDescription.ProductDescriptionID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + @javax.persistence.Id + @javax.persistence.Column(name = "ProductDescriptionID", unique = true, nullable = false, precision = 10) + public java.lang.Integer getProductDescriptionID() { + return getValue(org.jooq.examples.sqlserver.adventureworks.production.tables.ProductDescription.ProductDescription.ProductDescriptionID); + } + + /** + * An uncommented item + */ + public void setDescription(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.production.tables.ProductDescription.ProductDescription.Description, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "Description", nullable = false, length = 400) + public java.lang.String getDescription() { + return getValue(org.jooq.examples.sqlserver.adventureworks.production.tables.ProductDescription.ProductDescription.Description); + } + + /** + * An uncommented item + */ + public void setrowguid(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.production.tables.ProductDescription.ProductDescription.rowguid, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "rowguid", nullable = false) + public java.lang.String getrowguid() { + return getValue(org.jooq.examples.sqlserver.adventureworks.production.tables.ProductDescription.ProductDescription.rowguid); + } + + /** + * An uncommented item + */ + public void setModifiedDate(java.sql.Timestamp value) { + setValue(org.jooq.examples.sqlserver.adventureworks.production.tables.ProductDescription.ProductDescription.ModifiedDate, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "ModifiedDate", nullable = false) + public java.sql.Timestamp getModifiedDate() { + return getValue(org.jooq.examples.sqlserver.adventureworks.production.tables.ProductDescription.ProductDescription.ModifiedDate); + } + + /** + * Create a detached ProductDescription + */ + public ProductDescription() { + super(org.jooq.examples.sqlserver.adventureworks.production.tables.ProductDescription.ProductDescription); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/tables/records/ProductDocument.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/tables/records/ProductDocument.java new file mode 100644 index 00000000000..a612674bf3e --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/tables/records/ProductDocument.java @@ -0,0 +1,100 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.production.tables.records; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "ProductDocument", schema = "Production", uniqueConstraints = { + @javax.persistence.UniqueConstraint(columnNames = {"ProductID", "DocumentID"}) +}) +public class ProductDocument extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = -177692403; + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT FK_ProductDocument_Product_ProductID
+	 * FOREIGN KEY (ProductID)
+	 * REFERENCES Production.Product (ProductID)
+	 * 
+ */ + public void setProductID(java.lang.Integer value) { + setValue(org.jooq.examples.sqlserver.adventureworks.production.tables.ProductDocument.ProductDocument.ProductID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT FK_ProductDocument_Product_ProductID
+	 * FOREIGN KEY (ProductID)
+	 * REFERENCES Production.Product (ProductID)
+	 * 
+ */ + @javax.persistence.Column(name = "ProductID", nullable = false, precision = 10) + public java.lang.Integer getProductID() { + return getValue(org.jooq.examples.sqlserver.adventureworks.production.tables.ProductDocument.ProductDocument.ProductID); + } + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT FK_ProductDocument_Document_DocumentID
+	 * FOREIGN KEY (DocumentID)
+	 * REFERENCES Production.Document (DocumentID)
+	 * 
+ */ + public void setDocumentID(java.lang.Integer value) { + setValue(org.jooq.examples.sqlserver.adventureworks.production.tables.ProductDocument.ProductDocument.DocumentID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT FK_ProductDocument_Document_DocumentID
+	 * FOREIGN KEY (DocumentID)
+	 * REFERENCES Production.Document (DocumentID)
+	 * 
+ */ + @javax.persistence.Column(name = "DocumentID", nullable = false, precision = 10) + public java.lang.Integer getDocumentID() { + return getValue(org.jooq.examples.sqlserver.adventureworks.production.tables.ProductDocument.ProductDocument.DocumentID); + } + + /** + * An uncommented item + */ + public void setModifiedDate(java.sql.Timestamp value) { + setValue(org.jooq.examples.sqlserver.adventureworks.production.tables.ProductDocument.ProductDocument.ModifiedDate, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "ModifiedDate", nullable = false) + public java.sql.Timestamp getModifiedDate() { + return getValue(org.jooq.examples.sqlserver.adventureworks.production.tables.ProductDocument.ProductDocument.ModifiedDate); + } + + /** + * Create a detached ProductDocument + */ + public ProductDocument() { + super(org.jooq.examples.sqlserver.adventureworks.production.tables.ProductDocument.ProductDocument); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/tables/records/ProductInventory.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/tables/records/ProductInventory.java new file mode 100644 index 00000000000..22838b332a2 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/tables/records/ProductInventory.java @@ -0,0 +1,160 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.production.tables.records; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "ProductInventory", schema = "Production", uniqueConstraints = { + @javax.persistence.UniqueConstraint(columnNames = {"ProductID", "LocationID"}) +}) +public class ProductInventory extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = 1419459639; + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT FK_ProductInventory_Product_ProductID
+	 * FOREIGN KEY (ProductID)
+	 * REFERENCES Production.Product (ProductID)
+	 * 
+ */ + public void setProductID(java.lang.Integer value) { + setValue(org.jooq.examples.sqlserver.adventureworks.production.tables.ProductInventory.ProductInventory.ProductID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT FK_ProductInventory_Product_ProductID
+	 * FOREIGN KEY (ProductID)
+	 * REFERENCES Production.Product (ProductID)
+	 * 
+ */ + @javax.persistence.Column(name = "ProductID", nullable = false, precision = 10) + public java.lang.Integer getProductID() { + return getValue(org.jooq.examples.sqlserver.adventureworks.production.tables.ProductInventory.ProductInventory.ProductID); + } + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT FK_ProductInventory_Location_LocationID
+	 * FOREIGN KEY (LocationID)
+	 * REFERENCES Production.Location (LocationID)
+	 * 
+ */ + public void setLocationID(java.lang.Short value) { + setValue(org.jooq.examples.sqlserver.adventureworks.production.tables.ProductInventory.ProductInventory.LocationID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT FK_ProductInventory_Location_LocationID
+	 * FOREIGN KEY (LocationID)
+	 * REFERENCES Production.Location (LocationID)
+	 * 
+ */ + @javax.persistence.Column(name = "LocationID", nullable = false, precision = 5) + public java.lang.Short getLocationID() { + return getValue(org.jooq.examples.sqlserver.adventureworks.production.tables.ProductInventory.ProductInventory.LocationID); + } + + /** + * An uncommented item + */ + public void setShelf(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.production.tables.ProductInventory.ProductInventory.Shelf, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "Shelf", nullable = false, length = 10) + public java.lang.String getShelf() { + return getValue(org.jooq.examples.sqlserver.adventureworks.production.tables.ProductInventory.ProductInventory.Shelf); + } + + /** + * An uncommented item + */ + public void setBin(java.lang.Byte value) { + setValue(org.jooq.examples.sqlserver.adventureworks.production.tables.ProductInventory.ProductInventory.Bin, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "Bin", nullable = false, precision = 3) + public java.lang.Byte getBin() { + return getValue(org.jooq.examples.sqlserver.adventureworks.production.tables.ProductInventory.ProductInventory.Bin); + } + + /** + * An uncommented item + */ + public void setQuantity(java.lang.Short value) { + setValue(org.jooq.examples.sqlserver.adventureworks.production.tables.ProductInventory.ProductInventory.Quantity, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "Quantity", nullable = false, precision = 5) + public java.lang.Short getQuantity() { + return getValue(org.jooq.examples.sqlserver.adventureworks.production.tables.ProductInventory.ProductInventory.Quantity); + } + + /** + * An uncommented item + */ + public void setrowguid(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.production.tables.ProductInventory.ProductInventory.rowguid, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "rowguid", nullable = false) + public java.lang.String getrowguid() { + return getValue(org.jooq.examples.sqlserver.adventureworks.production.tables.ProductInventory.ProductInventory.rowguid); + } + + /** + * An uncommented item + */ + public void setModifiedDate(java.sql.Timestamp value) { + setValue(org.jooq.examples.sqlserver.adventureworks.production.tables.ProductInventory.ProductInventory.ModifiedDate, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "ModifiedDate", nullable = false) + public java.sql.Timestamp getModifiedDate() { + return getValue(org.jooq.examples.sqlserver.adventureworks.production.tables.ProductInventory.ProductInventory.ModifiedDate); + } + + /** + * Create a detached ProductInventory + */ + public ProductInventory() { + super(org.jooq.examples.sqlserver.adventureworks.production.tables.ProductInventory.ProductInventory); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/tables/records/ProductListPriceHistory.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/tables/records/ProductListPriceHistory.java new file mode 100644 index 00000000000..47fb9d3f20d --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/tables/records/ProductListPriceHistory.java @@ -0,0 +1,118 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.production.tables.records; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "ProductListPriceHistory", schema = "Production", uniqueConstraints = { + @javax.persistence.UniqueConstraint(columnNames = {"ProductID", "StartDate"}) +}) +public class ProductListPriceHistory extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = -1589644688; + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT FK_ProductListPriceHistory_Product_ProductID
+	 * FOREIGN KEY (ProductID)
+	 * REFERENCES Production.Product (ProductID)
+	 * 
+ */ + public void setProductID(java.lang.Integer value) { + setValue(org.jooq.examples.sqlserver.adventureworks.production.tables.ProductListPriceHistory.ProductListPriceHistory.ProductID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT FK_ProductListPriceHistory_Product_ProductID
+	 * FOREIGN KEY (ProductID)
+	 * REFERENCES Production.Product (ProductID)
+	 * 
+ */ + @javax.persistence.Column(name = "ProductID", nullable = false, precision = 10) + public java.lang.Integer getProductID() { + return getValue(org.jooq.examples.sqlserver.adventureworks.production.tables.ProductListPriceHistory.ProductListPriceHistory.ProductID); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setStartDate(java.sql.Timestamp value) { + setValue(org.jooq.examples.sqlserver.adventureworks.production.tables.ProductListPriceHistory.ProductListPriceHistory.StartDate, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + @javax.persistence.Column(name = "StartDate", nullable = false) + public java.sql.Timestamp getStartDate() { + return getValue(org.jooq.examples.sqlserver.adventureworks.production.tables.ProductListPriceHistory.ProductListPriceHistory.StartDate); + } + + /** + * An uncommented item + */ + public void setEndDate(java.sql.Timestamp value) { + setValue(org.jooq.examples.sqlserver.adventureworks.production.tables.ProductListPriceHistory.ProductListPriceHistory.EndDate, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "EndDate") + public java.sql.Timestamp getEndDate() { + return getValue(org.jooq.examples.sqlserver.adventureworks.production.tables.ProductListPriceHistory.ProductListPriceHistory.EndDate); + } + + /** + * An uncommented item + */ + public void setListPrice(java.math.BigDecimal value) { + setValue(org.jooq.examples.sqlserver.adventureworks.production.tables.ProductListPriceHistory.ProductListPriceHistory.ListPrice, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "ListPrice", nullable = false, precision = 19, scale = 4) + public java.math.BigDecimal getListPrice() { + return getValue(org.jooq.examples.sqlserver.adventureworks.production.tables.ProductListPriceHistory.ProductListPriceHistory.ListPrice); + } + + /** + * An uncommented item + */ + public void setModifiedDate(java.sql.Timestamp value) { + setValue(org.jooq.examples.sqlserver.adventureworks.production.tables.ProductListPriceHistory.ProductListPriceHistory.ModifiedDate, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "ModifiedDate", nullable = false) + public java.sql.Timestamp getModifiedDate() { + return getValue(org.jooq.examples.sqlserver.adventureworks.production.tables.ProductListPriceHistory.ProductListPriceHistory.ModifiedDate); + } + + /** + * Create a detached ProductListPriceHistory + */ + public ProductListPriceHistory() { + super(org.jooq.examples.sqlserver.adventureworks.production.tables.ProductListPriceHistory.ProductListPriceHistory); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/tables/records/ProductModel.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/tables/records/ProductModel.java new file mode 100644 index 00000000000..31088cd6aa0 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/tables/records/ProductModel.java @@ -0,0 +1,128 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.production.tables.records; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "ProductModel", schema = "Production") +public class ProductModel extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = -955608273; + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setProductModelID(java.lang.Integer value) { + setValue(org.jooq.examples.sqlserver.adventureworks.production.tables.ProductModel.ProductModel.ProductModelID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + @javax.persistence.Id + @javax.persistence.Column(name = "ProductModelID", unique = true, nullable = false, precision = 10) + public java.lang.Integer getProductModelID() { + return getValue(org.jooq.examples.sqlserver.adventureworks.production.tables.ProductModel.ProductModel.ProductModelID); + } + + /** + * An uncommented item + */ + public void setName(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.production.tables.ProductModel.ProductModel.Name, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "Name", nullable = false, length = 50) + public java.lang.String getName() { + return getValue(org.jooq.examples.sqlserver.adventureworks.production.tables.ProductModel.ProductModel.Name); + } + + /** + * An uncommented item + * + * The SQL type of this item (xml, ) could not be mapped.
+ * Deserialising this field might not work! + */ + public void setCatalogDescription(java.lang.Object value) { + setValue(org.jooq.examples.sqlserver.adventureworks.production.tables.ProductModel.ProductModel.CatalogDescription, value); + } + + /** + * An uncommented item + * + * The SQL type of this item (xml, ) could not be mapped.
+ * Deserialising this field might not work! + */ + @javax.persistence.Column(name = "CatalogDescription") + public java.lang.Object getCatalogDescription() { + return getValue(org.jooq.examples.sqlserver.adventureworks.production.tables.ProductModel.ProductModel.CatalogDescription); + } + + /** + * An uncommented item + * + * The SQL type of this item (xml, ) could not be mapped.
+ * Deserialising this field might not work! + */ + public void setInstructions(java.lang.Object value) { + setValue(org.jooq.examples.sqlserver.adventureworks.production.tables.ProductModel.ProductModel.Instructions, value); + } + + /** + * An uncommented item + * + * The SQL type of this item (xml, ) could not be mapped.
+ * Deserialising this field might not work! + */ + @javax.persistence.Column(name = "Instructions") + public java.lang.Object getInstructions() { + return getValue(org.jooq.examples.sqlserver.adventureworks.production.tables.ProductModel.ProductModel.Instructions); + } + + /** + * An uncommented item + */ + public void setrowguid(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.production.tables.ProductModel.ProductModel.rowguid, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "rowguid", nullable = false) + public java.lang.String getrowguid() { + return getValue(org.jooq.examples.sqlserver.adventureworks.production.tables.ProductModel.ProductModel.rowguid); + } + + /** + * An uncommented item + */ + public void setModifiedDate(java.sql.Timestamp value) { + setValue(org.jooq.examples.sqlserver.adventureworks.production.tables.ProductModel.ProductModel.ModifiedDate, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "ModifiedDate", nullable = false) + public java.sql.Timestamp getModifiedDate() { + return getValue(org.jooq.examples.sqlserver.adventureworks.production.tables.ProductModel.ProductModel.ModifiedDate); + } + + /** + * Create a detached ProductModel + */ + public ProductModel() { + super(org.jooq.examples.sqlserver.adventureworks.production.tables.ProductModel.ProductModel); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/tables/records/ProductModelIllustration.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/tables/records/ProductModelIllustration.java new file mode 100644 index 00000000000..ad6b73a2895 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/tables/records/ProductModelIllustration.java @@ -0,0 +1,100 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.production.tables.records; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "ProductModelIllustration", schema = "Production", uniqueConstraints = { + @javax.persistence.UniqueConstraint(columnNames = {"ProductModelID", "IllustrationID"}) +}) +public class ProductModelIllustration extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = 1222808413; + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT FK_ProductModelIllustration_ProductModel_ProductModelID
+	 * FOREIGN KEY (ProductModelID)
+	 * REFERENCES Production.ProductModel (ProductModelID)
+	 * 
+ */ + public void setProductModelID(java.lang.Integer value) { + setValue(org.jooq.examples.sqlserver.adventureworks.production.tables.ProductModelIllustration.ProductModelIllustration.ProductModelID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT FK_ProductModelIllustration_ProductModel_ProductModelID
+	 * FOREIGN KEY (ProductModelID)
+	 * REFERENCES Production.ProductModel (ProductModelID)
+	 * 
+ */ + @javax.persistence.Column(name = "ProductModelID", nullable = false, precision = 10) + public java.lang.Integer getProductModelID() { + return getValue(org.jooq.examples.sqlserver.adventureworks.production.tables.ProductModelIllustration.ProductModelIllustration.ProductModelID); + } + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT FK_ProductModelIllustration_Illustration_IllustrationID
+	 * FOREIGN KEY (IllustrationID)
+	 * REFERENCES Production.Illustration (IllustrationID)
+	 * 
+ */ + public void setIllustrationID(java.lang.Integer value) { + setValue(org.jooq.examples.sqlserver.adventureworks.production.tables.ProductModelIllustration.ProductModelIllustration.IllustrationID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT FK_ProductModelIllustration_Illustration_IllustrationID
+	 * FOREIGN KEY (IllustrationID)
+	 * REFERENCES Production.Illustration (IllustrationID)
+	 * 
+ */ + @javax.persistence.Column(name = "IllustrationID", nullable = false, precision = 10) + public java.lang.Integer getIllustrationID() { + return getValue(org.jooq.examples.sqlserver.adventureworks.production.tables.ProductModelIllustration.ProductModelIllustration.IllustrationID); + } + + /** + * An uncommented item + */ + public void setModifiedDate(java.sql.Timestamp value) { + setValue(org.jooq.examples.sqlserver.adventureworks.production.tables.ProductModelIllustration.ProductModelIllustration.ModifiedDate, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "ModifiedDate", nullable = false) + public java.sql.Timestamp getModifiedDate() { + return getValue(org.jooq.examples.sqlserver.adventureworks.production.tables.ProductModelIllustration.ProductModelIllustration.ModifiedDate); + } + + /** + * Create a detached ProductModelIllustration + */ + public ProductModelIllustration() { + super(org.jooq.examples.sqlserver.adventureworks.production.tables.ProductModelIllustration.ProductModelIllustration); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/tables/records/ProductModelProductDescriptionCulture.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/tables/records/ProductModelProductDescriptionCulture.java new file mode 100644 index 00000000000..f326779a460 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/tables/records/ProductModelProductDescriptionCulture.java @@ -0,0 +1,131 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.production.tables.records; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "ProductModelProductDescriptionCulture", schema = "Production", uniqueConstraints = { + @javax.persistence.UniqueConstraint(columnNames = {"ProductModelID", "ProductDescriptionID", "CultureID"}) +}) +public class ProductModelProductDescriptionCulture extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = -299325767; + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT FK_ProductModelProductDescriptionCulture_ProductModel_ProductModelID
+	 * FOREIGN KEY (ProductModelID)
+	 * REFERENCES Production.ProductModel (ProductModelID)
+	 * 
+ */ + public void setProductModelID(java.lang.Integer value) { + setValue(org.jooq.examples.sqlserver.adventureworks.production.tables.ProductModelProductDescriptionCulture.ProductModelProductDescriptionCulture.ProductModelID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT FK_ProductModelProductDescriptionCulture_ProductModel_ProductModelID
+	 * FOREIGN KEY (ProductModelID)
+	 * REFERENCES Production.ProductModel (ProductModelID)
+	 * 
+ */ + @javax.persistence.Column(name = "ProductModelID", nullable = false, precision = 10) + public java.lang.Integer getProductModelID() { + return getValue(org.jooq.examples.sqlserver.adventureworks.production.tables.ProductModelProductDescriptionCulture.ProductModelProductDescriptionCulture.ProductModelID); + } + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT FK_ProductModelProductDescriptionCulture_ProductDescription_ProductDescriptionID
+	 * FOREIGN KEY (ProductDescriptionID)
+	 * REFERENCES Production.ProductDescription (ProductDescriptionID)
+	 * 
+ */ + public void setProductDescriptionID(java.lang.Integer value) { + setValue(org.jooq.examples.sqlserver.adventureworks.production.tables.ProductModelProductDescriptionCulture.ProductModelProductDescriptionCulture.ProductDescriptionID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT FK_ProductModelProductDescriptionCulture_ProductDescription_ProductDescriptionID
+	 * FOREIGN KEY (ProductDescriptionID)
+	 * REFERENCES Production.ProductDescription (ProductDescriptionID)
+	 * 
+ */ + @javax.persistence.Column(name = "ProductDescriptionID", nullable = false, precision = 10) + public java.lang.Integer getProductDescriptionID() { + return getValue(org.jooq.examples.sqlserver.adventureworks.production.tables.ProductModelProductDescriptionCulture.ProductModelProductDescriptionCulture.ProductDescriptionID); + } + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT FK_ProductModelProductDescriptionCulture_Culture_CultureID
+	 * FOREIGN KEY (CultureID)
+	 * REFERENCES Production.Culture (CultureID)
+	 * 
+ */ + public void setCultureID(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.production.tables.ProductModelProductDescriptionCulture.ProductModelProductDescriptionCulture.CultureID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT FK_ProductModelProductDescriptionCulture_Culture_CultureID
+	 * FOREIGN KEY (CultureID)
+	 * REFERENCES Production.Culture (CultureID)
+	 * 
+ */ + @javax.persistence.Column(name = "CultureID", nullable = false, length = 6) + public java.lang.String getCultureID() { + return getValue(org.jooq.examples.sqlserver.adventureworks.production.tables.ProductModelProductDescriptionCulture.ProductModelProductDescriptionCulture.CultureID); + } + + /** + * An uncommented item + */ + public void setModifiedDate(java.sql.Timestamp value) { + setValue(org.jooq.examples.sqlserver.adventureworks.production.tables.ProductModelProductDescriptionCulture.ProductModelProductDescriptionCulture.ModifiedDate, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "ModifiedDate", nullable = false) + public java.sql.Timestamp getModifiedDate() { + return getValue(org.jooq.examples.sqlserver.adventureworks.production.tables.ProductModelProductDescriptionCulture.ProductModelProductDescriptionCulture.ModifiedDate); + } + + /** + * Create a detached ProductModelProductDescriptionCulture + */ + public ProductModelProductDescriptionCulture() { + super(org.jooq.examples.sqlserver.adventureworks.production.tables.ProductModelProductDescriptionCulture.ProductModelProductDescriptionCulture); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/tables/records/ProductPhoto.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/tables/records/ProductPhoto.java new file mode 100644 index 00000000000..901d650bee9 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/tables/records/ProductPhoto.java @@ -0,0 +1,116 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.production.tables.records; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "ProductPhoto", schema = "Production") +public class ProductPhoto extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = -1669748017; + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setProductPhotoID(java.lang.Integer value) { + setValue(org.jooq.examples.sqlserver.adventureworks.production.tables.ProductPhoto.ProductPhoto.ProductPhotoID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + @javax.persistence.Id + @javax.persistence.Column(name = "ProductPhotoID", unique = true, nullable = false, precision = 10) + public java.lang.Integer getProductPhotoID() { + return getValue(org.jooq.examples.sqlserver.adventureworks.production.tables.ProductPhoto.ProductPhoto.ProductPhotoID); + } + + /** + * An uncommented item + */ + public void setThumbNailPhoto(byte[] value) { + setValue(org.jooq.examples.sqlserver.adventureworks.production.tables.ProductPhoto.ProductPhoto.ThumbNailPhoto, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "ThumbNailPhoto") + public byte[] getThumbNailPhoto() { + return getValue(org.jooq.examples.sqlserver.adventureworks.production.tables.ProductPhoto.ProductPhoto.ThumbNailPhoto); + } + + /** + * An uncommented item + */ + public void setThumbnailPhotoFileName(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.production.tables.ProductPhoto.ProductPhoto.ThumbnailPhotoFileName, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "ThumbnailPhotoFileName", length = 50) + public java.lang.String getThumbnailPhotoFileName() { + return getValue(org.jooq.examples.sqlserver.adventureworks.production.tables.ProductPhoto.ProductPhoto.ThumbnailPhotoFileName); + } + + /** + * An uncommented item + */ + public void setLargePhoto(byte[] value) { + setValue(org.jooq.examples.sqlserver.adventureworks.production.tables.ProductPhoto.ProductPhoto.LargePhoto, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "LargePhoto") + public byte[] getLargePhoto() { + return getValue(org.jooq.examples.sqlserver.adventureworks.production.tables.ProductPhoto.ProductPhoto.LargePhoto); + } + + /** + * An uncommented item + */ + public void setLargePhotoFileName(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.production.tables.ProductPhoto.ProductPhoto.LargePhotoFileName, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "LargePhotoFileName", length = 50) + public java.lang.String getLargePhotoFileName() { + return getValue(org.jooq.examples.sqlserver.adventureworks.production.tables.ProductPhoto.ProductPhoto.LargePhotoFileName); + } + + /** + * An uncommented item + */ + public void setModifiedDate(java.sql.Timestamp value) { + setValue(org.jooq.examples.sqlserver.adventureworks.production.tables.ProductPhoto.ProductPhoto.ModifiedDate, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "ModifiedDate", nullable = false) + public java.sql.Timestamp getModifiedDate() { + return getValue(org.jooq.examples.sqlserver.adventureworks.production.tables.ProductPhoto.ProductPhoto.ModifiedDate); + } + + /** + * Create a detached ProductPhoto + */ + public ProductPhoto() { + super(org.jooq.examples.sqlserver.adventureworks.production.tables.ProductPhoto.ProductPhoto); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/tables/records/ProductProductPhoto.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/tables/records/ProductProductPhoto.java new file mode 100644 index 00000000000..773fa4fecdd --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/tables/records/ProductProductPhoto.java @@ -0,0 +1,115 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.production.tables.records; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "ProductProductPhoto", schema = "Production", uniqueConstraints = { + @javax.persistence.UniqueConstraint(columnNames = {"ProductID", "ProductPhotoID"}) +}) +public class ProductProductPhoto extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = -2093160155; + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT FK_ProductProductPhoto_Product_ProductID
+	 * FOREIGN KEY (ProductID)
+	 * REFERENCES Production.Product (ProductID)
+	 * 
+ */ + public void setProductID(java.lang.Integer value) { + setValue(org.jooq.examples.sqlserver.adventureworks.production.tables.ProductProductPhoto.ProductProductPhoto.ProductID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT FK_ProductProductPhoto_Product_ProductID
+	 * FOREIGN KEY (ProductID)
+	 * REFERENCES Production.Product (ProductID)
+	 * 
+ */ + @javax.persistence.Column(name = "ProductID", nullable = false, precision = 10) + public java.lang.Integer getProductID() { + return getValue(org.jooq.examples.sqlserver.adventureworks.production.tables.ProductProductPhoto.ProductProductPhoto.ProductID); + } + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT FK_ProductProductPhoto_ProductPhoto_ProductPhotoID
+	 * FOREIGN KEY (ProductPhotoID)
+	 * REFERENCES Production.ProductPhoto (ProductPhotoID)
+	 * 
+ */ + public void setProductPhotoID(java.lang.Integer value) { + setValue(org.jooq.examples.sqlserver.adventureworks.production.tables.ProductProductPhoto.ProductProductPhoto.ProductPhotoID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT FK_ProductProductPhoto_ProductPhoto_ProductPhotoID
+	 * FOREIGN KEY (ProductPhotoID)
+	 * REFERENCES Production.ProductPhoto (ProductPhotoID)
+	 * 
+ */ + @javax.persistence.Column(name = "ProductPhotoID", nullable = false, precision = 10) + public java.lang.Integer getProductPhotoID() { + return getValue(org.jooq.examples.sqlserver.adventureworks.production.tables.ProductProductPhoto.ProductProductPhoto.ProductPhotoID); + } + + /** + * An uncommented item + */ + public void setPrimary(java.lang.Boolean value) { + setValue(org.jooq.examples.sqlserver.adventureworks.production.tables.ProductProductPhoto.ProductProductPhoto.Primary, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "Primary", nullable = false) + public java.lang.Boolean getPrimary() { + return getValue(org.jooq.examples.sqlserver.adventureworks.production.tables.ProductProductPhoto.ProductProductPhoto.Primary); + } + + /** + * An uncommented item + */ + public void setModifiedDate(java.sql.Timestamp value) { + setValue(org.jooq.examples.sqlserver.adventureworks.production.tables.ProductProductPhoto.ProductProductPhoto.ModifiedDate, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "ModifiedDate", nullable = false) + public java.sql.Timestamp getModifiedDate() { + return getValue(org.jooq.examples.sqlserver.adventureworks.production.tables.ProductProductPhoto.ProductProductPhoto.ModifiedDate); + } + + /** + * Create a detached ProductProductPhoto + */ + public ProductProductPhoto() { + super(org.jooq.examples.sqlserver.adventureworks.production.tables.ProductProductPhoto.ProductProductPhoto); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/tables/records/ProductReview.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/tables/records/ProductReview.java new file mode 100644 index 00000000000..8ff2ffd9555 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/tables/records/ProductReview.java @@ -0,0 +1,158 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.production.tables.records; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "ProductReview", schema = "Production") +public class ProductReview extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = 1525480884; + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setProductReviewID(java.lang.Integer value) { + setValue(org.jooq.examples.sqlserver.adventureworks.production.tables.ProductReview.ProductReview.ProductReviewID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + @javax.persistence.Id + @javax.persistence.Column(name = "ProductReviewID", unique = true, nullable = false, precision = 10) + public java.lang.Integer getProductReviewID() { + return getValue(org.jooq.examples.sqlserver.adventureworks.production.tables.ProductReview.ProductReview.ProductReviewID); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_ProductReview_Product_ProductID
+	 * FOREIGN KEY (ProductID)
+	 * REFERENCES Production.Product (ProductID)
+	 * 
+ */ + public void setProductID(java.lang.Integer value) { + setValue(org.jooq.examples.sqlserver.adventureworks.production.tables.ProductReview.ProductReview.ProductID, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_ProductReview_Product_ProductID
+	 * FOREIGN KEY (ProductID)
+	 * REFERENCES Production.Product (ProductID)
+	 * 
+ */ + @javax.persistence.Column(name = "ProductID", nullable = false, precision = 10) + public java.lang.Integer getProductID() { + return getValue(org.jooq.examples.sqlserver.adventureworks.production.tables.ProductReview.ProductReview.ProductID); + } + + /** + * An uncommented item + */ + public void setReviewerName(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.production.tables.ProductReview.ProductReview.ReviewerName, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "ReviewerName", nullable = false, length = 50) + public java.lang.String getReviewerName() { + return getValue(org.jooq.examples.sqlserver.adventureworks.production.tables.ProductReview.ProductReview.ReviewerName); + } + + /** + * An uncommented item + */ + public void setReviewDate(java.sql.Timestamp value) { + setValue(org.jooq.examples.sqlserver.adventureworks.production.tables.ProductReview.ProductReview.ReviewDate, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "ReviewDate", nullable = false) + public java.sql.Timestamp getReviewDate() { + return getValue(org.jooq.examples.sqlserver.adventureworks.production.tables.ProductReview.ProductReview.ReviewDate); + } + + /** + * An uncommented item + */ + public void setEmailAddress(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.production.tables.ProductReview.ProductReview.EmailAddress, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "EmailAddress", nullable = false, length = 50) + public java.lang.String getEmailAddress() { + return getValue(org.jooq.examples.sqlserver.adventureworks.production.tables.ProductReview.ProductReview.EmailAddress); + } + + /** + * An uncommented item + */ + public void setRating(java.lang.Integer value) { + setValue(org.jooq.examples.sqlserver.adventureworks.production.tables.ProductReview.ProductReview.Rating, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "Rating", nullable = false, precision = 10) + public java.lang.Integer getRating() { + return getValue(org.jooq.examples.sqlserver.adventureworks.production.tables.ProductReview.ProductReview.Rating); + } + + /** + * An uncommented item + */ + public void setComments(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.production.tables.ProductReview.ProductReview.Comments, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "Comments", length = 3850) + public java.lang.String getComments() { + return getValue(org.jooq.examples.sqlserver.adventureworks.production.tables.ProductReview.ProductReview.Comments); + } + + /** + * An uncommented item + */ + public void setModifiedDate(java.sql.Timestamp value) { + setValue(org.jooq.examples.sqlserver.adventureworks.production.tables.ProductReview.ProductReview.ModifiedDate, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "ModifiedDate", nullable = false) + public java.sql.Timestamp getModifiedDate() { + return getValue(org.jooq.examples.sqlserver.adventureworks.production.tables.ProductReview.ProductReview.ModifiedDate); + } + + /** + * Create a detached ProductReview + */ + public ProductReview() { + super(org.jooq.examples.sqlserver.adventureworks.production.tables.ProductReview.ProductReview); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/tables/records/ProductSubcategory.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/tables/records/ProductSubcategory.java new file mode 100644 index 00000000000..73c7ebd66ec --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/tables/records/ProductSubcategory.java @@ -0,0 +1,113 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.production.tables.records; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "ProductSubcategory", schema = "Production") +public class ProductSubcategory extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = -1504349; + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setProductSubcategoryID(java.lang.Integer value) { + setValue(org.jooq.examples.sqlserver.adventureworks.production.tables.ProductSubcategory.ProductSubcategory.ProductSubcategoryID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + @javax.persistence.Id + @javax.persistence.Column(name = "ProductSubcategoryID", unique = true, nullable = false, precision = 10) + public java.lang.Integer getProductSubcategoryID() { + return getValue(org.jooq.examples.sqlserver.adventureworks.production.tables.ProductSubcategory.ProductSubcategory.ProductSubcategoryID); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_ProductSubcategory_ProductCategory_ProductCategoryID
+	 * FOREIGN KEY (ProductCategoryID)
+	 * REFERENCES Production.ProductCategory (ProductCategoryID)
+	 * 
+ */ + public void setProductCategoryID(java.lang.Integer value) { + setValue(org.jooq.examples.sqlserver.adventureworks.production.tables.ProductSubcategory.ProductSubcategory.ProductCategoryID, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_ProductSubcategory_ProductCategory_ProductCategoryID
+	 * FOREIGN KEY (ProductCategoryID)
+	 * REFERENCES Production.ProductCategory (ProductCategoryID)
+	 * 
+ */ + @javax.persistence.Column(name = "ProductCategoryID", nullable = false, precision = 10) + public java.lang.Integer getProductCategoryID() { + return getValue(org.jooq.examples.sqlserver.adventureworks.production.tables.ProductSubcategory.ProductSubcategory.ProductCategoryID); + } + + /** + * An uncommented item + */ + public void setName(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.production.tables.ProductSubcategory.ProductSubcategory.Name, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "Name", nullable = false, length = 50) + public java.lang.String getName() { + return getValue(org.jooq.examples.sqlserver.adventureworks.production.tables.ProductSubcategory.ProductSubcategory.Name); + } + + /** + * An uncommented item + */ + public void setrowguid(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.production.tables.ProductSubcategory.ProductSubcategory.rowguid, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "rowguid", nullable = false) + public java.lang.String getrowguid() { + return getValue(org.jooq.examples.sqlserver.adventureworks.production.tables.ProductSubcategory.ProductSubcategory.rowguid); + } + + /** + * An uncommented item + */ + public void setModifiedDate(java.sql.Timestamp value) { + setValue(org.jooq.examples.sqlserver.adventureworks.production.tables.ProductSubcategory.ProductSubcategory.ModifiedDate, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "ModifiedDate", nullable = false) + public java.sql.Timestamp getModifiedDate() { + return getValue(org.jooq.examples.sqlserver.adventureworks.production.tables.ProductSubcategory.ProductSubcategory.ModifiedDate); + } + + /** + * Create a detached ProductSubcategory + */ + public ProductSubcategory() { + super(org.jooq.examples.sqlserver.adventureworks.production.tables.ProductSubcategory.ProductSubcategory); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/tables/records/ScrapReason.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/tables/records/ScrapReason.java new file mode 100644 index 00000000000..0ad20534eb8 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/tables/records/ScrapReason.java @@ -0,0 +1,71 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.production.tables.records; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "ScrapReason", schema = "Production") +public class ScrapReason extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = 326815798; + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setScrapReasonID(java.lang.Short value) { + setValue(org.jooq.examples.sqlserver.adventureworks.production.tables.ScrapReason.ScrapReason.ScrapReasonID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + @javax.persistence.Id + @javax.persistence.Column(name = "ScrapReasonID", unique = true, nullable = false, precision = 5) + public java.lang.Short getScrapReasonID() { + return getValue(org.jooq.examples.sqlserver.adventureworks.production.tables.ScrapReason.ScrapReason.ScrapReasonID); + } + + /** + * An uncommented item + */ + public void setName(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.production.tables.ScrapReason.ScrapReason.Name, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "Name", nullable = false, length = 50) + public java.lang.String getName() { + return getValue(org.jooq.examples.sqlserver.adventureworks.production.tables.ScrapReason.ScrapReason.Name); + } + + /** + * An uncommented item + */ + public void setModifiedDate(java.sql.Timestamp value) { + setValue(org.jooq.examples.sqlserver.adventureworks.production.tables.ScrapReason.ScrapReason.ModifiedDate, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "ModifiedDate", nullable = false) + public java.sql.Timestamp getModifiedDate() { + return getValue(org.jooq.examples.sqlserver.adventureworks.production.tables.ScrapReason.ScrapReason.ModifiedDate); + } + + /** + * Create a detached ScrapReason + */ + public ScrapReason() { + super(org.jooq.examples.sqlserver.adventureworks.production.tables.ScrapReason.ScrapReason); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/tables/records/TransactionHistory.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/tables/records/TransactionHistory.java new file mode 100644 index 00000000000..7ed49d60376 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/tables/records/TransactionHistory.java @@ -0,0 +1,173 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.production.tables.records; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "TransactionHistory", schema = "Production") +public class TransactionHistory extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = -907638023; + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setTransactionID(java.lang.Integer value) { + setValue(org.jooq.examples.sqlserver.adventureworks.production.tables.TransactionHistory.TransactionHistory.TransactionID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + @javax.persistence.Id + @javax.persistence.Column(name = "TransactionID", unique = true, nullable = false, precision = 10) + public java.lang.Integer getTransactionID() { + return getValue(org.jooq.examples.sqlserver.adventureworks.production.tables.TransactionHistory.TransactionHistory.TransactionID); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_TransactionHistory_Product_ProductID
+	 * FOREIGN KEY (ProductID)
+	 * REFERENCES Production.Product (ProductID)
+	 * 
+ */ + public void setProductID(java.lang.Integer value) { + setValue(org.jooq.examples.sqlserver.adventureworks.production.tables.TransactionHistory.TransactionHistory.ProductID, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_TransactionHistory_Product_ProductID
+	 * FOREIGN KEY (ProductID)
+	 * REFERENCES Production.Product (ProductID)
+	 * 
+ */ + @javax.persistence.Column(name = "ProductID", nullable = false, precision = 10) + public java.lang.Integer getProductID() { + return getValue(org.jooq.examples.sqlserver.adventureworks.production.tables.TransactionHistory.TransactionHistory.ProductID); + } + + /** + * An uncommented item + */ + public void setReferenceOrderID(java.lang.Integer value) { + setValue(org.jooq.examples.sqlserver.adventureworks.production.tables.TransactionHistory.TransactionHistory.ReferenceOrderID, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "ReferenceOrderID", nullable = false, precision = 10) + public java.lang.Integer getReferenceOrderID() { + return getValue(org.jooq.examples.sqlserver.adventureworks.production.tables.TransactionHistory.TransactionHistory.ReferenceOrderID); + } + + /** + * An uncommented item + */ + public void setReferenceOrderLineID(java.lang.Integer value) { + setValue(org.jooq.examples.sqlserver.adventureworks.production.tables.TransactionHistory.TransactionHistory.ReferenceOrderLineID, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "ReferenceOrderLineID", nullable = false, precision = 10) + public java.lang.Integer getReferenceOrderLineID() { + return getValue(org.jooq.examples.sqlserver.adventureworks.production.tables.TransactionHistory.TransactionHistory.ReferenceOrderLineID); + } + + /** + * An uncommented item + */ + public void setTransactionDate(java.sql.Timestamp value) { + setValue(org.jooq.examples.sqlserver.adventureworks.production.tables.TransactionHistory.TransactionHistory.TransactionDate, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "TransactionDate", nullable = false) + public java.sql.Timestamp getTransactionDate() { + return getValue(org.jooq.examples.sqlserver.adventureworks.production.tables.TransactionHistory.TransactionHistory.TransactionDate); + } + + /** + * An uncommented item + */ + public void setTransactionType(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.production.tables.TransactionHistory.TransactionHistory.TransactionType, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "TransactionType", nullable = false, length = 1) + public java.lang.String getTransactionType() { + return getValue(org.jooq.examples.sqlserver.adventureworks.production.tables.TransactionHistory.TransactionHistory.TransactionType); + } + + /** + * An uncommented item + */ + public void setQuantity(java.lang.Integer value) { + setValue(org.jooq.examples.sqlserver.adventureworks.production.tables.TransactionHistory.TransactionHistory.Quantity, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "Quantity", nullable = false, precision = 10) + public java.lang.Integer getQuantity() { + return getValue(org.jooq.examples.sqlserver.adventureworks.production.tables.TransactionHistory.TransactionHistory.Quantity); + } + + /** + * An uncommented item + */ + public void setActualCost(java.math.BigDecimal value) { + setValue(org.jooq.examples.sqlserver.adventureworks.production.tables.TransactionHistory.TransactionHistory.ActualCost, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "ActualCost", nullable = false, precision = 19, scale = 4) + public java.math.BigDecimal getActualCost() { + return getValue(org.jooq.examples.sqlserver.adventureworks.production.tables.TransactionHistory.TransactionHistory.ActualCost); + } + + /** + * An uncommented item + */ + public void setModifiedDate(java.sql.Timestamp value) { + setValue(org.jooq.examples.sqlserver.adventureworks.production.tables.TransactionHistory.TransactionHistory.ModifiedDate, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "ModifiedDate", nullable = false) + public java.sql.Timestamp getModifiedDate() { + return getValue(org.jooq.examples.sqlserver.adventureworks.production.tables.TransactionHistory.TransactionHistory.ModifiedDate); + } + + /** + * Create a detached TransactionHistory + */ + public TransactionHistory() { + super(org.jooq.examples.sqlserver.adventureworks.production.tables.TransactionHistory.TransactionHistory); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/tables/records/TransactionHistoryArchive.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/tables/records/TransactionHistoryArchive.java new file mode 100644 index 00000000000..ed953f54ac1 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/tables/records/TransactionHistoryArchive.java @@ -0,0 +1,161 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.production.tables.records; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "TransactionHistoryArchive", schema = "Production") +public class TransactionHistoryArchive extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = 1353323237; + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setTransactionID(java.lang.Integer value) { + setValue(org.jooq.examples.sqlserver.adventureworks.production.tables.TransactionHistoryArchive.TransactionHistoryArchive.TransactionID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + @javax.persistence.Id + @javax.persistence.Column(name = "TransactionID", unique = true, nullable = false, precision = 10) + public java.lang.Integer getTransactionID() { + return getValue(org.jooq.examples.sqlserver.adventureworks.production.tables.TransactionHistoryArchive.TransactionHistoryArchive.TransactionID); + } + + /** + * An uncommented item + */ + public void setProductID(java.lang.Integer value) { + setValue(org.jooq.examples.sqlserver.adventureworks.production.tables.TransactionHistoryArchive.TransactionHistoryArchive.ProductID, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "ProductID", nullable = false, precision = 10) + public java.lang.Integer getProductID() { + return getValue(org.jooq.examples.sqlserver.adventureworks.production.tables.TransactionHistoryArchive.TransactionHistoryArchive.ProductID); + } + + /** + * An uncommented item + */ + public void setReferenceOrderID(java.lang.Integer value) { + setValue(org.jooq.examples.sqlserver.adventureworks.production.tables.TransactionHistoryArchive.TransactionHistoryArchive.ReferenceOrderID, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "ReferenceOrderID", nullable = false, precision = 10) + public java.lang.Integer getReferenceOrderID() { + return getValue(org.jooq.examples.sqlserver.adventureworks.production.tables.TransactionHistoryArchive.TransactionHistoryArchive.ReferenceOrderID); + } + + /** + * An uncommented item + */ + public void setReferenceOrderLineID(java.lang.Integer value) { + setValue(org.jooq.examples.sqlserver.adventureworks.production.tables.TransactionHistoryArchive.TransactionHistoryArchive.ReferenceOrderLineID, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "ReferenceOrderLineID", nullable = false, precision = 10) + public java.lang.Integer getReferenceOrderLineID() { + return getValue(org.jooq.examples.sqlserver.adventureworks.production.tables.TransactionHistoryArchive.TransactionHistoryArchive.ReferenceOrderLineID); + } + + /** + * An uncommented item + */ + public void setTransactionDate(java.sql.Timestamp value) { + setValue(org.jooq.examples.sqlserver.adventureworks.production.tables.TransactionHistoryArchive.TransactionHistoryArchive.TransactionDate, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "TransactionDate", nullable = false) + public java.sql.Timestamp getTransactionDate() { + return getValue(org.jooq.examples.sqlserver.adventureworks.production.tables.TransactionHistoryArchive.TransactionHistoryArchive.TransactionDate); + } + + /** + * An uncommented item + */ + public void setTransactionType(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.production.tables.TransactionHistoryArchive.TransactionHistoryArchive.TransactionType, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "TransactionType", nullable = false, length = 1) + public java.lang.String getTransactionType() { + return getValue(org.jooq.examples.sqlserver.adventureworks.production.tables.TransactionHistoryArchive.TransactionHistoryArchive.TransactionType); + } + + /** + * An uncommented item + */ + public void setQuantity(java.lang.Integer value) { + setValue(org.jooq.examples.sqlserver.adventureworks.production.tables.TransactionHistoryArchive.TransactionHistoryArchive.Quantity, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "Quantity", nullable = false, precision = 10) + public java.lang.Integer getQuantity() { + return getValue(org.jooq.examples.sqlserver.adventureworks.production.tables.TransactionHistoryArchive.TransactionHistoryArchive.Quantity); + } + + /** + * An uncommented item + */ + public void setActualCost(java.math.BigDecimal value) { + setValue(org.jooq.examples.sqlserver.adventureworks.production.tables.TransactionHistoryArchive.TransactionHistoryArchive.ActualCost, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "ActualCost", nullable = false, precision = 19, scale = 4) + public java.math.BigDecimal getActualCost() { + return getValue(org.jooq.examples.sqlserver.adventureworks.production.tables.TransactionHistoryArchive.TransactionHistoryArchive.ActualCost); + } + + /** + * An uncommented item + */ + public void setModifiedDate(java.sql.Timestamp value) { + setValue(org.jooq.examples.sqlserver.adventureworks.production.tables.TransactionHistoryArchive.TransactionHistoryArchive.ModifiedDate, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "ModifiedDate", nullable = false) + public java.sql.Timestamp getModifiedDate() { + return getValue(org.jooq.examples.sqlserver.adventureworks.production.tables.TransactionHistoryArchive.TransactionHistoryArchive.ModifiedDate); + } + + /** + * Create a detached TransactionHistoryArchive + */ + public TransactionHistoryArchive() { + super(org.jooq.examples.sqlserver.adventureworks.production.tables.TransactionHistoryArchive.TransactionHistoryArchive); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/tables/records/UnitMeasure.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/tables/records/UnitMeasure.java new file mode 100644 index 00000000000..4ba3e1ffb38 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/tables/records/UnitMeasure.java @@ -0,0 +1,71 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.production.tables.records; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "UnitMeasure", schema = "Production") +public class UnitMeasure extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = 397159338; + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setUnitMeasureCode(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.production.tables.UnitMeasure.UnitMeasure.UnitMeasureCode, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + @javax.persistence.Id + @javax.persistence.Column(name = "UnitMeasureCode", unique = true, nullable = false, length = 3) + public java.lang.String getUnitMeasureCode() { + return getValue(org.jooq.examples.sqlserver.adventureworks.production.tables.UnitMeasure.UnitMeasure.UnitMeasureCode); + } + + /** + * An uncommented item + */ + public void setName(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.production.tables.UnitMeasure.UnitMeasure.Name, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "Name", nullable = false, length = 50) + public java.lang.String getName() { + return getValue(org.jooq.examples.sqlserver.adventureworks.production.tables.UnitMeasure.UnitMeasure.Name); + } + + /** + * An uncommented item + */ + public void setModifiedDate(java.sql.Timestamp value) { + setValue(org.jooq.examples.sqlserver.adventureworks.production.tables.UnitMeasure.UnitMeasure.ModifiedDate, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "ModifiedDate", nullable = false) + public java.sql.Timestamp getModifiedDate() { + return getValue(org.jooq.examples.sqlserver.adventureworks.production.tables.UnitMeasure.UnitMeasure.ModifiedDate); + } + + /** + * Create a detached UnitMeasure + */ + public UnitMeasure() { + super(org.jooq.examples.sqlserver.adventureworks.production.tables.UnitMeasure.UnitMeasure); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/tables/records/WorkOrder.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/tables/records/WorkOrder.java new file mode 100644 index 00000000000..07cad564e36 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/tables/records/WorkOrder.java @@ -0,0 +1,200 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.production.tables.records; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "WorkOrder", schema = "Production") +public class WorkOrder extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = -695950417; + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setWorkOrderID(java.lang.Integer value) { + setValue(org.jooq.examples.sqlserver.adventureworks.production.tables.WorkOrder.WorkOrder.WorkOrderID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + @javax.persistence.Id + @javax.persistence.Column(name = "WorkOrderID", unique = true, nullable = false, precision = 10) + public java.lang.Integer getWorkOrderID() { + return getValue(org.jooq.examples.sqlserver.adventureworks.production.tables.WorkOrder.WorkOrder.WorkOrderID); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_WorkOrder_Product_ProductID
+	 * FOREIGN KEY (ProductID)
+	 * REFERENCES Production.Product (ProductID)
+	 * 
+ */ + public void setProductID(java.lang.Integer value) { + setValue(org.jooq.examples.sqlserver.adventureworks.production.tables.WorkOrder.WorkOrder.ProductID, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_WorkOrder_Product_ProductID
+	 * FOREIGN KEY (ProductID)
+	 * REFERENCES Production.Product (ProductID)
+	 * 
+ */ + @javax.persistence.Column(name = "ProductID", nullable = false, precision = 10) + public java.lang.Integer getProductID() { + return getValue(org.jooq.examples.sqlserver.adventureworks.production.tables.WorkOrder.WorkOrder.ProductID); + } + + /** + * An uncommented item + */ + public void setOrderQty(java.lang.Integer value) { + setValue(org.jooq.examples.sqlserver.adventureworks.production.tables.WorkOrder.WorkOrder.OrderQty, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "OrderQty", nullable = false, precision = 10) + public java.lang.Integer getOrderQty() { + return getValue(org.jooq.examples.sqlserver.adventureworks.production.tables.WorkOrder.WorkOrder.OrderQty); + } + + /** + * An uncommented item + */ + public void setStockedQty(java.lang.Integer value) { + setValue(org.jooq.examples.sqlserver.adventureworks.production.tables.WorkOrder.WorkOrder.StockedQty, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "StockedQty", nullable = false, precision = 10) + public java.lang.Integer getStockedQty() { + return getValue(org.jooq.examples.sqlserver.adventureworks.production.tables.WorkOrder.WorkOrder.StockedQty); + } + + /** + * An uncommented item + */ + public void setScrappedQty(java.lang.Short value) { + setValue(org.jooq.examples.sqlserver.adventureworks.production.tables.WorkOrder.WorkOrder.ScrappedQty, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "ScrappedQty", nullable = false, precision = 5) + public java.lang.Short getScrappedQty() { + return getValue(org.jooq.examples.sqlserver.adventureworks.production.tables.WorkOrder.WorkOrder.ScrappedQty); + } + + /** + * An uncommented item + */ + public void setStartDate(java.sql.Timestamp value) { + setValue(org.jooq.examples.sqlserver.adventureworks.production.tables.WorkOrder.WorkOrder.StartDate, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "StartDate", nullable = false) + public java.sql.Timestamp getStartDate() { + return getValue(org.jooq.examples.sqlserver.adventureworks.production.tables.WorkOrder.WorkOrder.StartDate); + } + + /** + * An uncommented item + */ + public void setEndDate(java.sql.Timestamp value) { + setValue(org.jooq.examples.sqlserver.adventureworks.production.tables.WorkOrder.WorkOrder.EndDate, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "EndDate") + public java.sql.Timestamp getEndDate() { + return getValue(org.jooq.examples.sqlserver.adventureworks.production.tables.WorkOrder.WorkOrder.EndDate); + } + + /** + * An uncommented item + */ + public void setDueDate(java.sql.Timestamp value) { + setValue(org.jooq.examples.sqlserver.adventureworks.production.tables.WorkOrder.WorkOrder.DueDate, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "DueDate", nullable = false) + public java.sql.Timestamp getDueDate() { + return getValue(org.jooq.examples.sqlserver.adventureworks.production.tables.WorkOrder.WorkOrder.DueDate); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_WorkOrder_ScrapReason_ScrapReasonID
+	 * FOREIGN KEY (ScrapReasonID)
+	 * REFERENCES Production.ScrapReason (ScrapReasonID)
+	 * 
+ */ + public void setScrapReasonID(java.lang.Short value) { + setValue(org.jooq.examples.sqlserver.adventureworks.production.tables.WorkOrder.WorkOrder.ScrapReasonID, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_WorkOrder_ScrapReason_ScrapReasonID
+	 * FOREIGN KEY (ScrapReasonID)
+	 * REFERENCES Production.ScrapReason (ScrapReasonID)
+	 * 
+ */ + @javax.persistence.Column(name = "ScrapReasonID", precision = 5) + public java.lang.Short getScrapReasonID() { + return getValue(org.jooq.examples.sqlserver.adventureworks.production.tables.WorkOrder.WorkOrder.ScrapReasonID); + } + + /** + * An uncommented item + */ + public void setModifiedDate(java.sql.Timestamp value) { + setValue(org.jooq.examples.sqlserver.adventureworks.production.tables.WorkOrder.WorkOrder.ModifiedDate, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "ModifiedDate", nullable = false) + public java.sql.Timestamp getModifiedDate() { + return getValue(org.jooq.examples.sqlserver.adventureworks.production.tables.WorkOrder.WorkOrder.ModifiedDate); + } + + /** + * Create a detached WorkOrder + */ + public WorkOrder() { + super(org.jooq.examples.sqlserver.adventureworks.production.tables.WorkOrder.WorkOrder); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/tables/records/WorkOrderRouting.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/tables/records/WorkOrderRouting.java new file mode 100644 index 00000000000..1b105f7f395 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/tables/records/WorkOrderRouting.java @@ -0,0 +1,239 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.production.tables.records; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "WorkOrderRouting", schema = "Production", uniqueConstraints = { + @javax.persistence.UniqueConstraint(columnNames = {"WorkOrderID", "ProductID", "OperationSequence"}) +}) +public class WorkOrderRouting extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = 896010410; + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT FK_WorkOrderRouting_WorkOrder_WorkOrderID
+	 * FOREIGN KEY (WorkOrderID)
+	 * REFERENCES Production.WorkOrder (WorkOrderID)
+	 * 
+ */ + public void setWorkOrderID(java.lang.Integer value) { + setValue(org.jooq.examples.sqlserver.adventureworks.production.tables.WorkOrderRouting.WorkOrderRouting.WorkOrderID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT FK_WorkOrderRouting_WorkOrder_WorkOrderID
+	 * FOREIGN KEY (WorkOrderID)
+	 * REFERENCES Production.WorkOrder (WorkOrderID)
+	 * 
+ */ + @javax.persistence.Column(name = "WorkOrderID", nullable = false, precision = 10) + public java.lang.Integer getWorkOrderID() { + return getValue(org.jooq.examples.sqlserver.adventureworks.production.tables.WorkOrderRouting.WorkOrderRouting.WorkOrderID); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setProductID(java.lang.Integer value) { + setValue(org.jooq.examples.sqlserver.adventureworks.production.tables.WorkOrderRouting.WorkOrderRouting.ProductID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + @javax.persistence.Column(name = "ProductID", nullable = false, precision = 10) + public java.lang.Integer getProductID() { + return getValue(org.jooq.examples.sqlserver.adventureworks.production.tables.WorkOrderRouting.WorkOrderRouting.ProductID); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setOperationSequence(java.lang.Short value) { + setValue(org.jooq.examples.sqlserver.adventureworks.production.tables.WorkOrderRouting.WorkOrderRouting.OperationSequence, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + @javax.persistence.Column(name = "OperationSequence", nullable = false, precision = 5) + public java.lang.Short getOperationSequence() { + return getValue(org.jooq.examples.sqlserver.adventureworks.production.tables.WorkOrderRouting.WorkOrderRouting.OperationSequence); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_WorkOrderRouting_Location_LocationID
+	 * FOREIGN KEY (LocationID)
+	 * REFERENCES Production.Location (LocationID)
+	 * 
+ */ + public void setLocationID(java.lang.Short value) { + setValue(org.jooq.examples.sqlserver.adventureworks.production.tables.WorkOrderRouting.WorkOrderRouting.LocationID, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_WorkOrderRouting_Location_LocationID
+	 * FOREIGN KEY (LocationID)
+	 * REFERENCES Production.Location (LocationID)
+	 * 
+ */ + @javax.persistence.Column(name = "LocationID", nullable = false, precision = 5) + public java.lang.Short getLocationID() { + return getValue(org.jooq.examples.sqlserver.adventureworks.production.tables.WorkOrderRouting.WorkOrderRouting.LocationID); + } + + /** + * An uncommented item + */ + public void setScheduledStartDate(java.sql.Timestamp value) { + setValue(org.jooq.examples.sqlserver.adventureworks.production.tables.WorkOrderRouting.WorkOrderRouting.ScheduledStartDate, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "ScheduledStartDate", nullable = false) + public java.sql.Timestamp getScheduledStartDate() { + return getValue(org.jooq.examples.sqlserver.adventureworks.production.tables.WorkOrderRouting.WorkOrderRouting.ScheduledStartDate); + } + + /** + * An uncommented item + */ + public void setScheduledEndDate(java.sql.Timestamp value) { + setValue(org.jooq.examples.sqlserver.adventureworks.production.tables.WorkOrderRouting.WorkOrderRouting.ScheduledEndDate, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "ScheduledEndDate", nullable = false) + public java.sql.Timestamp getScheduledEndDate() { + return getValue(org.jooq.examples.sqlserver.adventureworks.production.tables.WorkOrderRouting.WorkOrderRouting.ScheduledEndDate); + } + + /** + * An uncommented item + */ + public void setActualStartDate(java.sql.Timestamp value) { + setValue(org.jooq.examples.sqlserver.adventureworks.production.tables.WorkOrderRouting.WorkOrderRouting.ActualStartDate, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "ActualStartDate") + public java.sql.Timestamp getActualStartDate() { + return getValue(org.jooq.examples.sqlserver.adventureworks.production.tables.WorkOrderRouting.WorkOrderRouting.ActualStartDate); + } + + /** + * An uncommented item + */ + public void setActualEndDate(java.sql.Timestamp value) { + setValue(org.jooq.examples.sqlserver.adventureworks.production.tables.WorkOrderRouting.WorkOrderRouting.ActualEndDate, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "ActualEndDate") + public java.sql.Timestamp getActualEndDate() { + return getValue(org.jooq.examples.sqlserver.adventureworks.production.tables.WorkOrderRouting.WorkOrderRouting.ActualEndDate); + } + + /** + * An uncommented item + */ + public void setActualResourceHrs(java.math.BigDecimal value) { + setValue(org.jooq.examples.sqlserver.adventureworks.production.tables.WorkOrderRouting.WorkOrderRouting.ActualResourceHrs, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "ActualResourceHrs", precision = 9, scale = 4) + public java.math.BigDecimal getActualResourceHrs() { + return getValue(org.jooq.examples.sqlserver.adventureworks.production.tables.WorkOrderRouting.WorkOrderRouting.ActualResourceHrs); + } + + /** + * An uncommented item + */ + public void setPlannedCost(java.math.BigDecimal value) { + setValue(org.jooq.examples.sqlserver.adventureworks.production.tables.WorkOrderRouting.WorkOrderRouting.PlannedCost, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "PlannedCost", nullable = false, precision = 19, scale = 4) + public java.math.BigDecimal getPlannedCost() { + return getValue(org.jooq.examples.sqlserver.adventureworks.production.tables.WorkOrderRouting.WorkOrderRouting.PlannedCost); + } + + /** + * An uncommented item + */ + public void setActualCost(java.math.BigDecimal value) { + setValue(org.jooq.examples.sqlserver.adventureworks.production.tables.WorkOrderRouting.WorkOrderRouting.ActualCost, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "ActualCost", precision = 19, scale = 4) + public java.math.BigDecimal getActualCost() { + return getValue(org.jooq.examples.sqlserver.adventureworks.production.tables.WorkOrderRouting.WorkOrderRouting.ActualCost); + } + + /** + * An uncommented item + */ + public void setModifiedDate(java.sql.Timestamp value) { + setValue(org.jooq.examples.sqlserver.adventureworks.production.tables.WorkOrderRouting.WorkOrderRouting.ModifiedDate, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "ModifiedDate", nullable = false) + public java.sql.Timestamp getModifiedDate() { + return getValue(org.jooq.examples.sqlserver.adventureworks.production.tables.WorkOrderRouting.WorkOrderRouting.ModifiedDate); + } + + /** + * Create a detached WorkOrderRouting + */ + public WorkOrderRouting() { + super(org.jooq.examples.sqlserver.adventureworks.production.tables.WorkOrderRouting.WorkOrderRouting); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/tables/records/vProductAndDescription.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/tables/records/vProductAndDescription.java new file mode 100644 index 00000000000..4ff132c8122 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/tables/records/vProductAndDescription.java @@ -0,0 +1,96 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.production.tables.records; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "vProductAndDescription", schema = "Production") +public class vProductAndDescription extends org.jooq.impl.TableRecordImpl { + + private static final long serialVersionUID = -459579110; + + /** + * An uncommented item + */ + public void setProductID(java.lang.Integer value) { + setValue(org.jooq.examples.sqlserver.adventureworks.production.tables.vProductAndDescription.vProductAndDescription.ProductID, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "ProductID", nullable = false, precision = 10) + public java.lang.Integer getProductID() { + return getValue(org.jooq.examples.sqlserver.adventureworks.production.tables.vProductAndDescription.vProductAndDescription.ProductID); + } + + /** + * An uncommented item + */ + public void setName(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.production.tables.vProductAndDescription.vProductAndDescription.Name, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "Name", nullable = false, length = 50) + public java.lang.String getName() { + return getValue(org.jooq.examples.sqlserver.adventureworks.production.tables.vProductAndDescription.vProductAndDescription.Name); + } + + /** + * An uncommented item + */ + public void setProductModel(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.production.tables.vProductAndDescription.vProductAndDescription.ProductModel, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "ProductModel", nullable = false, length = 50) + public java.lang.String getProductModel() { + return getValue(org.jooq.examples.sqlserver.adventureworks.production.tables.vProductAndDescription.vProductAndDescription.ProductModel); + } + + /** + * An uncommented item + */ + public void setCultureID(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.production.tables.vProductAndDescription.vProductAndDescription.CultureID, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "CultureID", nullable = false, length = 6) + public java.lang.String getCultureID() { + return getValue(org.jooq.examples.sqlserver.adventureworks.production.tables.vProductAndDescription.vProductAndDescription.CultureID); + } + + /** + * An uncommented item + */ + public void setDescription(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.production.tables.vProductAndDescription.vProductAndDescription.Description, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "Description", nullable = false, length = 400) + public java.lang.String getDescription() { + return getValue(org.jooq.examples.sqlserver.adventureworks.production.tables.vProductAndDescription.vProductAndDescription.Description); + } + + /** + * Create a detached vProductAndDescription + */ + public vProductAndDescription() { + super(org.jooq.examples.sqlserver.adventureworks.production.tables.vProductAndDescription.vProductAndDescription); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/tables/records/vProductModelCatalogDescription.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/tables/records/vProductModelCatalogDescription.java new file mode 100644 index 00000000000..c932552b9db --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/tables/records/vProductModelCatalogDescription.java @@ -0,0 +1,396 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.production.tables.records; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "vProductModelCatalogDescription", schema = "Production") +public class vProductModelCatalogDescription extends org.jooq.impl.TableRecordImpl { + + private static final long serialVersionUID = -1891700005; + + /** + * An uncommented item + */ + public void setProductModelID(java.lang.Integer value) { + setValue(org.jooq.examples.sqlserver.adventureworks.production.tables.vProductModelCatalogDescription.vProductModelCatalogDescription.ProductModelID, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "ProductModelID", nullable = false, precision = 10) + public java.lang.Integer getProductModelID() { + return getValue(org.jooq.examples.sqlserver.adventureworks.production.tables.vProductModelCatalogDescription.vProductModelCatalogDescription.ProductModelID); + } + + /** + * An uncommented item + */ + public void setName(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.production.tables.vProductModelCatalogDescription.vProductModelCatalogDescription.Name, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "Name", nullable = false, length = 50) + public java.lang.String getName() { + return getValue(org.jooq.examples.sqlserver.adventureworks.production.tables.vProductModelCatalogDescription.vProductModelCatalogDescription.Name); + } + + /** + * An uncommented item + */ + public void setSummary(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.production.tables.vProductModelCatalogDescription.vProductModelCatalogDescription.Summary, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "Summary") + public java.lang.String getSummary() { + return getValue(org.jooq.examples.sqlserver.adventureworks.production.tables.vProductModelCatalogDescription.vProductModelCatalogDescription.Summary); + } + + /** + * An uncommented item + */ + public void setManufacturer(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.production.tables.vProductModelCatalogDescription.vProductModelCatalogDescription.Manufacturer, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "Manufacturer") + public java.lang.String getManufacturer() { + return getValue(org.jooq.examples.sqlserver.adventureworks.production.tables.vProductModelCatalogDescription.vProductModelCatalogDescription.Manufacturer); + } + + /** + * An uncommented item + */ + public void setCopyright(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.production.tables.vProductModelCatalogDescription.vProductModelCatalogDescription.Copyright, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "Copyright", length = 30) + public java.lang.String getCopyright() { + return getValue(org.jooq.examples.sqlserver.adventureworks.production.tables.vProductModelCatalogDescription.vProductModelCatalogDescription.Copyright); + } + + /** + * An uncommented item + */ + public void setProductURL(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.production.tables.vProductModelCatalogDescription.vProductModelCatalogDescription.ProductURL, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "ProductURL", length = 256) + public java.lang.String getProductURL() { + return getValue(org.jooq.examples.sqlserver.adventureworks.production.tables.vProductModelCatalogDescription.vProductModelCatalogDescription.ProductURL); + } + + /** + * An uncommented item + */ + public void setWarrantyPeriod(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.production.tables.vProductModelCatalogDescription.vProductModelCatalogDescription.WarrantyPeriod, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "WarrantyPeriod", length = 256) + public java.lang.String getWarrantyPeriod() { + return getValue(org.jooq.examples.sqlserver.adventureworks.production.tables.vProductModelCatalogDescription.vProductModelCatalogDescription.WarrantyPeriod); + } + + /** + * An uncommented item + */ + public void setWarrantyDescription(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.production.tables.vProductModelCatalogDescription.vProductModelCatalogDescription.WarrantyDescription, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "WarrantyDescription", length = 256) + public java.lang.String getWarrantyDescription() { + return getValue(org.jooq.examples.sqlserver.adventureworks.production.tables.vProductModelCatalogDescription.vProductModelCatalogDescription.WarrantyDescription); + } + + /** + * An uncommented item + */ + public void setNoOfYears(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.production.tables.vProductModelCatalogDescription.vProductModelCatalogDescription.NoOfYears, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "NoOfYears", length = 256) + public java.lang.String getNoOfYears() { + return getValue(org.jooq.examples.sqlserver.adventureworks.production.tables.vProductModelCatalogDescription.vProductModelCatalogDescription.NoOfYears); + } + + /** + * An uncommented item + */ + public void setMaintenanceDescription(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.production.tables.vProductModelCatalogDescription.vProductModelCatalogDescription.MaintenanceDescription, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "MaintenanceDescription", length = 256) + public java.lang.String getMaintenanceDescription() { + return getValue(org.jooq.examples.sqlserver.adventureworks.production.tables.vProductModelCatalogDescription.vProductModelCatalogDescription.MaintenanceDescription); + } + + /** + * An uncommented item + */ + public void setWheel(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.production.tables.vProductModelCatalogDescription.vProductModelCatalogDescription.Wheel, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "Wheel", length = 256) + public java.lang.String getWheel() { + return getValue(org.jooq.examples.sqlserver.adventureworks.production.tables.vProductModelCatalogDescription.vProductModelCatalogDescription.Wheel); + } + + /** + * An uncommented item + */ + public void setSaddle(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.production.tables.vProductModelCatalogDescription.vProductModelCatalogDescription.Saddle, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "Saddle", length = 256) + public java.lang.String getSaddle() { + return getValue(org.jooq.examples.sqlserver.adventureworks.production.tables.vProductModelCatalogDescription.vProductModelCatalogDescription.Saddle); + } + + /** + * An uncommented item + */ + public void setPedal(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.production.tables.vProductModelCatalogDescription.vProductModelCatalogDescription.Pedal, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "Pedal", length = 256) + public java.lang.String getPedal() { + return getValue(org.jooq.examples.sqlserver.adventureworks.production.tables.vProductModelCatalogDescription.vProductModelCatalogDescription.Pedal); + } + + /** + * An uncommented item + */ + public void setBikeFrame(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.production.tables.vProductModelCatalogDescription.vProductModelCatalogDescription.BikeFrame, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "BikeFrame") + public java.lang.String getBikeFrame() { + return getValue(org.jooq.examples.sqlserver.adventureworks.production.tables.vProductModelCatalogDescription.vProductModelCatalogDescription.BikeFrame); + } + + /** + * An uncommented item + */ + public void setCrankset(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.production.tables.vProductModelCatalogDescription.vProductModelCatalogDescription.Crankset, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "Crankset", length = 256) + public java.lang.String getCrankset() { + return getValue(org.jooq.examples.sqlserver.adventureworks.production.tables.vProductModelCatalogDescription.vProductModelCatalogDescription.Crankset); + } + + /** + * An uncommented item + */ + public void setPictureAngle(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.production.tables.vProductModelCatalogDescription.vProductModelCatalogDescription.PictureAngle, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "PictureAngle", length = 256) + public java.lang.String getPictureAngle() { + return getValue(org.jooq.examples.sqlserver.adventureworks.production.tables.vProductModelCatalogDescription.vProductModelCatalogDescription.PictureAngle); + } + + /** + * An uncommented item + */ + public void setPictureSize(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.production.tables.vProductModelCatalogDescription.vProductModelCatalogDescription.PictureSize, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "PictureSize", length = 256) + public java.lang.String getPictureSize() { + return getValue(org.jooq.examples.sqlserver.adventureworks.production.tables.vProductModelCatalogDescription.vProductModelCatalogDescription.PictureSize); + } + + /** + * An uncommented item + */ + public void setProductPhotoID(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.production.tables.vProductModelCatalogDescription.vProductModelCatalogDescription.ProductPhotoID, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "ProductPhotoID", length = 256) + public java.lang.String getProductPhotoID() { + return getValue(org.jooq.examples.sqlserver.adventureworks.production.tables.vProductModelCatalogDescription.vProductModelCatalogDescription.ProductPhotoID); + } + + /** + * An uncommented item + */ + public void setMaterial(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.production.tables.vProductModelCatalogDescription.vProductModelCatalogDescription.Material, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "Material", length = 256) + public java.lang.String getMaterial() { + return getValue(org.jooq.examples.sqlserver.adventureworks.production.tables.vProductModelCatalogDescription.vProductModelCatalogDescription.Material); + } + + /** + * An uncommented item + */ + public void setColor(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.production.tables.vProductModelCatalogDescription.vProductModelCatalogDescription.Color, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "Color", length = 256) + public java.lang.String getColor() { + return getValue(org.jooq.examples.sqlserver.adventureworks.production.tables.vProductModelCatalogDescription.vProductModelCatalogDescription.Color); + } + + /** + * An uncommented item + */ + public void setProductLine(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.production.tables.vProductModelCatalogDescription.vProductModelCatalogDescription.ProductLine, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "ProductLine", length = 256) + public java.lang.String getProductLine() { + return getValue(org.jooq.examples.sqlserver.adventureworks.production.tables.vProductModelCatalogDescription.vProductModelCatalogDescription.ProductLine); + } + + /** + * An uncommented item + */ + public void setStyle(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.production.tables.vProductModelCatalogDescription.vProductModelCatalogDescription.Style, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "Style", length = 256) + public java.lang.String getStyle() { + return getValue(org.jooq.examples.sqlserver.adventureworks.production.tables.vProductModelCatalogDescription.vProductModelCatalogDescription.Style); + } + + /** + * An uncommented item + */ + public void setRiderExperience(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.production.tables.vProductModelCatalogDescription.vProductModelCatalogDescription.RiderExperience, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "RiderExperience", length = 1024) + public java.lang.String getRiderExperience() { + return getValue(org.jooq.examples.sqlserver.adventureworks.production.tables.vProductModelCatalogDescription.vProductModelCatalogDescription.RiderExperience); + } + + /** + * An uncommented item + */ + public void setrowguid(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.production.tables.vProductModelCatalogDescription.vProductModelCatalogDescription.rowguid, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "rowguid", nullable = false) + public java.lang.String getrowguid() { + return getValue(org.jooq.examples.sqlserver.adventureworks.production.tables.vProductModelCatalogDescription.vProductModelCatalogDescription.rowguid); + } + + /** + * An uncommented item + */ + public void setModifiedDate(java.sql.Timestamp value) { + setValue(org.jooq.examples.sqlserver.adventureworks.production.tables.vProductModelCatalogDescription.vProductModelCatalogDescription.ModifiedDate, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "ModifiedDate", nullable = false) + public java.sql.Timestamp getModifiedDate() { + return getValue(org.jooq.examples.sqlserver.adventureworks.production.tables.vProductModelCatalogDescription.vProductModelCatalogDescription.ModifiedDate); + } + + /** + * Create a detached vProductModelCatalogDescription + */ + public vProductModelCatalogDescription() { + super(org.jooq.examples.sqlserver.adventureworks.production.tables.vProductModelCatalogDescription.vProductModelCatalogDescription); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/tables/records/vProductModelInstructions.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/tables/records/vProductModelInstructions.java new file mode 100644 index 00000000000..36d433d32fe --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/tables/records/vProductModelInstructions.java @@ -0,0 +1,186 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.production.tables.records; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "vProductModelInstructions", schema = "Production") +public class vProductModelInstructions extends org.jooq.impl.TableRecordImpl { + + private static final long serialVersionUID = 1812521227; + + /** + * An uncommented item + */ + public void setProductModelID(java.lang.Integer value) { + setValue(org.jooq.examples.sqlserver.adventureworks.production.tables.vProductModelInstructions.vProductModelInstructions.ProductModelID, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "ProductModelID", nullable = false, precision = 10) + public java.lang.Integer getProductModelID() { + return getValue(org.jooq.examples.sqlserver.adventureworks.production.tables.vProductModelInstructions.vProductModelInstructions.ProductModelID); + } + + /** + * An uncommented item + */ + public void setName(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.production.tables.vProductModelInstructions.vProductModelInstructions.Name, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "Name", nullable = false, length = 50) + public java.lang.String getName() { + return getValue(org.jooq.examples.sqlserver.adventureworks.production.tables.vProductModelInstructions.vProductModelInstructions.Name); + } + + /** + * An uncommented item + */ + public void setInstructions(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.production.tables.vProductModelInstructions.vProductModelInstructions.Instructions, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "Instructions") + public java.lang.String getInstructions() { + return getValue(org.jooq.examples.sqlserver.adventureworks.production.tables.vProductModelInstructions.vProductModelInstructions.Instructions); + } + + /** + * An uncommented item + */ + public void setLocationID(java.lang.Integer value) { + setValue(org.jooq.examples.sqlserver.adventureworks.production.tables.vProductModelInstructions.vProductModelInstructions.LocationID, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "LocationID", precision = 10) + public java.lang.Integer getLocationID() { + return getValue(org.jooq.examples.sqlserver.adventureworks.production.tables.vProductModelInstructions.vProductModelInstructions.LocationID); + } + + /** + * An uncommented item + */ + public void setSetupHours(java.math.BigDecimal value) { + setValue(org.jooq.examples.sqlserver.adventureworks.production.tables.vProductModelInstructions.vProductModelInstructions.SetupHours, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "SetupHours", precision = 9, scale = 4) + public java.math.BigDecimal getSetupHours() { + return getValue(org.jooq.examples.sqlserver.adventureworks.production.tables.vProductModelInstructions.vProductModelInstructions.SetupHours); + } + + /** + * An uncommented item + */ + public void setMachineHours(java.math.BigDecimal value) { + setValue(org.jooq.examples.sqlserver.adventureworks.production.tables.vProductModelInstructions.vProductModelInstructions.MachineHours, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "MachineHours", precision = 9, scale = 4) + public java.math.BigDecimal getMachineHours() { + return getValue(org.jooq.examples.sqlserver.adventureworks.production.tables.vProductModelInstructions.vProductModelInstructions.MachineHours); + } + + /** + * An uncommented item + */ + public void setLaborHours(java.math.BigDecimal value) { + setValue(org.jooq.examples.sqlserver.adventureworks.production.tables.vProductModelInstructions.vProductModelInstructions.LaborHours, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "LaborHours", precision = 9, scale = 4) + public java.math.BigDecimal getLaborHours() { + return getValue(org.jooq.examples.sqlserver.adventureworks.production.tables.vProductModelInstructions.vProductModelInstructions.LaborHours); + } + + /** + * An uncommented item + */ + public void setLotSize(java.lang.Integer value) { + setValue(org.jooq.examples.sqlserver.adventureworks.production.tables.vProductModelInstructions.vProductModelInstructions.LotSize, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "LotSize", precision = 10) + public java.lang.Integer getLotSize() { + return getValue(org.jooq.examples.sqlserver.adventureworks.production.tables.vProductModelInstructions.vProductModelInstructions.LotSize); + } + + /** + * An uncommented item + */ + public void setStep(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.production.tables.vProductModelInstructions.vProductModelInstructions.Step, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "Step", length = 1024) + public java.lang.String getStep() { + return getValue(org.jooq.examples.sqlserver.adventureworks.production.tables.vProductModelInstructions.vProductModelInstructions.Step); + } + + /** + * An uncommented item + */ + public void setrowguid(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.production.tables.vProductModelInstructions.vProductModelInstructions.rowguid, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "rowguid", nullable = false) + public java.lang.String getrowguid() { + return getValue(org.jooq.examples.sqlserver.adventureworks.production.tables.vProductModelInstructions.vProductModelInstructions.rowguid); + } + + /** + * An uncommented item + */ + public void setModifiedDate(java.sql.Timestamp value) { + setValue(org.jooq.examples.sqlserver.adventureworks.production.tables.vProductModelInstructions.vProductModelInstructions.ModifiedDate, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "ModifiedDate", nullable = false) + public java.sql.Timestamp getModifiedDate() { + return getValue(org.jooq.examples.sqlserver.adventureworks.production.tables.vProductModelInstructions.vProductModelInstructions.ModifiedDate); + } + + /** + * Create a detached vProductModelInstructions + */ + public vProductModelInstructions() { + super(org.jooq.examples.sqlserver.adventureworks.production.tables.vProductModelInstructions.vProductModelInstructions); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/tables/vProductAndDescription.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/tables/vProductAndDescription.java new file mode 100644 index 00000000000..84b0660ad9c --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/tables/vProductAndDescription.java @@ -0,0 +1,68 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.production.tables; + +/** + * This class is generated by jOOQ. + */ +public class vProductAndDescription extends org.jooq.impl.TableImpl { + + private static final long serialVersionUID = 645228666; + + /** + * The singleton instance of Production.vProductAndDescription + */ + public static final org.jooq.examples.sqlserver.adventureworks.production.tables.vProductAndDescription vProductAndDescription = new org.jooq.examples.sqlserver.adventureworks.production.tables.vProductAndDescription(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.examples.sqlserver.adventureworks.production.tables.records.vProductAndDescription.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + */ + public final org.jooq.TableField ProductID = createField("ProductID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField Name = createField("Name", org.jooq.impl.SQLDataType.NVARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField ProductModel = createField("ProductModel", org.jooq.impl.SQLDataType.NVARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField CultureID = createField("CultureID", org.jooq.impl.SQLDataType.NCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField Description = createField("Description", org.jooq.impl.SQLDataType.NVARCHAR, this); + + public vProductAndDescription() { + super("vProductAndDescription", org.jooq.examples.sqlserver.adventureworks.production.Production.Production); + } + + public vProductAndDescription(java.lang.String alias) { + super(alias, org.jooq.examples.sqlserver.adventureworks.production.Production.Production, org.jooq.examples.sqlserver.adventureworks.production.tables.vProductAndDescription.vProductAndDescription); + } + + @Override + public org.jooq.examples.sqlserver.adventureworks.production.tables.vProductAndDescription as(java.lang.String alias) { + return new org.jooq.examples.sqlserver.adventureworks.production.tables.vProductAndDescription(alias); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/tables/vProductModelCatalogDescription.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/tables/vProductModelCatalogDescription.java new file mode 100644 index 00000000000..d301b71660a --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/tables/vProductModelCatalogDescription.java @@ -0,0 +1,173 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.production.tables; + +/** + * This class is generated by jOOQ. + */ +public class vProductModelCatalogDescription extends org.jooq.impl.TableImpl { + + private static final long serialVersionUID = -1831161885; + + /** + * The singleton instance of Production.vProductModelCatalogDescription + */ + public static final org.jooq.examples.sqlserver.adventureworks.production.tables.vProductModelCatalogDescription vProductModelCatalogDescription = new org.jooq.examples.sqlserver.adventureworks.production.tables.vProductModelCatalogDescription(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.examples.sqlserver.adventureworks.production.tables.records.vProductModelCatalogDescription.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + */ + public final org.jooq.TableField ProductModelID = createField("ProductModelID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField Name = createField("Name", org.jooq.impl.SQLDataType.NVARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField Summary = createField("Summary", org.jooq.impl.SQLDataType.NVARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField Manufacturer = createField("Manufacturer", org.jooq.impl.SQLDataType.NVARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField Copyright = createField("Copyright", org.jooq.impl.SQLDataType.NVARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField ProductURL = createField("ProductURL", org.jooq.impl.SQLDataType.NVARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField WarrantyPeriod = createField("WarrantyPeriod", org.jooq.impl.SQLDataType.NVARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField WarrantyDescription = createField("WarrantyDescription", org.jooq.impl.SQLDataType.NVARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField NoOfYears = createField("NoOfYears", org.jooq.impl.SQLDataType.NVARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField MaintenanceDescription = createField("MaintenanceDescription", org.jooq.impl.SQLDataType.NVARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField Wheel = createField("Wheel", org.jooq.impl.SQLDataType.NVARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField Saddle = createField("Saddle", org.jooq.impl.SQLDataType.NVARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField Pedal = createField("Pedal", org.jooq.impl.SQLDataType.NVARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField BikeFrame = createField("BikeFrame", org.jooq.impl.SQLDataType.NVARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField Crankset = createField("Crankset", org.jooq.impl.SQLDataType.NVARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField PictureAngle = createField("PictureAngle", org.jooq.impl.SQLDataType.NVARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField PictureSize = createField("PictureSize", org.jooq.impl.SQLDataType.NVARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField ProductPhotoID = createField("ProductPhotoID", org.jooq.impl.SQLDataType.NVARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField Material = createField("Material", org.jooq.impl.SQLDataType.NVARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField Color = createField("Color", org.jooq.impl.SQLDataType.NVARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField ProductLine = createField("ProductLine", org.jooq.impl.SQLDataType.NVARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField Style = createField("Style", org.jooq.impl.SQLDataType.NVARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField RiderExperience = createField("RiderExperience", org.jooq.impl.SQLDataType.NVARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField rowguid = createField("rowguid", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField ModifiedDate = createField("ModifiedDate", org.jooq.impl.SQLDataType.TIMESTAMP, this); + + public vProductModelCatalogDescription() { + super("vProductModelCatalogDescription", org.jooq.examples.sqlserver.adventureworks.production.Production.Production); + } + + public vProductModelCatalogDescription(java.lang.String alias) { + super(alias, org.jooq.examples.sqlserver.adventureworks.production.Production.Production, org.jooq.examples.sqlserver.adventureworks.production.tables.vProductModelCatalogDescription.vProductModelCatalogDescription); + } + + @Override + public org.jooq.Identity getIdentity() { + return org.jooq.examples.sqlserver.adventureworks.production.Keys.IDENTITY_vProductModelCatalogDescription; + } + + @Override + public org.jooq.examples.sqlserver.adventureworks.production.tables.vProductModelCatalogDescription as(java.lang.String alias) { + return new org.jooq.examples.sqlserver.adventureworks.production.tables.vProductModelCatalogDescription(alias); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/tables/vProductModelInstructions.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/tables/vProductModelInstructions.java new file mode 100644 index 00000000000..5a3f26ca435 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/production/tables/vProductModelInstructions.java @@ -0,0 +1,103 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.production.tables; + +/** + * This class is generated by jOOQ. + */ +public class vProductModelInstructions extends org.jooq.impl.TableImpl { + + private static final long serialVersionUID = 1209672057; + + /** + * The singleton instance of Production.vProductModelInstructions + */ + public static final org.jooq.examples.sqlserver.adventureworks.production.tables.vProductModelInstructions vProductModelInstructions = new org.jooq.examples.sqlserver.adventureworks.production.tables.vProductModelInstructions(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.examples.sqlserver.adventureworks.production.tables.records.vProductModelInstructions.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + */ + public final org.jooq.TableField ProductModelID = createField("ProductModelID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField Name = createField("Name", org.jooq.impl.SQLDataType.NVARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField Instructions = createField("Instructions", org.jooq.impl.SQLDataType.NVARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField LocationID = createField("LocationID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField SetupHours = createField("SetupHours", org.jooq.impl.SQLDataType.NUMERIC, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField MachineHours = createField("MachineHours", org.jooq.impl.SQLDataType.NUMERIC, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField LaborHours = createField("LaborHours", org.jooq.impl.SQLDataType.NUMERIC, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField LotSize = createField("LotSize", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField Step = createField("Step", org.jooq.impl.SQLDataType.NVARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField rowguid = createField("rowguid", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField ModifiedDate = createField("ModifiedDate", org.jooq.impl.SQLDataType.TIMESTAMP, this); + + public vProductModelInstructions() { + super("vProductModelInstructions", org.jooq.examples.sqlserver.adventureworks.production.Production.Production); + } + + public vProductModelInstructions(java.lang.String alias) { + super(alias, org.jooq.examples.sqlserver.adventureworks.production.Production.Production, org.jooq.examples.sqlserver.adventureworks.production.tables.vProductModelInstructions.vProductModelInstructions); + } + + @Override + public org.jooq.Identity getIdentity() { + return org.jooq.examples.sqlserver.adventureworks.production.Keys.IDENTITY_vProductModelInstructions; + } + + @Override + public org.jooq.examples.sqlserver.adventureworks.production.tables.vProductModelInstructions as(java.lang.String alias) { + return new org.jooq.examples.sqlserver.adventureworks.production.tables.vProductModelInstructions(alias); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/purchasing/Keys.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/purchasing/Keys.java new file mode 100644 index 00000000000..5f0c6d65e1e --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/purchasing/Keys.java @@ -0,0 +1,49 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.purchasing; + +/** + * This class is generated by jOOQ. + * + * A class modelling foreign key relationships between tables of the Purchasing schema + */ +@SuppressWarnings({"unchecked"}) +public class Keys extends org.jooq.impl.AbstractKeys { + + // IDENTITY definitions + public static final org.jooq.Identity IDENTITY_PurchaseOrderDetail = createIdentity(org.jooq.examples.sqlserver.adventureworks.purchasing.tables.PurchaseOrderDetail.PurchaseOrderDetail, org.jooq.examples.sqlserver.adventureworks.purchasing.tables.PurchaseOrderDetail.PurchaseOrderDetail.PurchaseOrderDetailID); + public static final org.jooq.Identity IDENTITY_PurchaseOrderHeader = createIdentity(org.jooq.examples.sqlserver.adventureworks.purchasing.tables.PurchaseOrderHeader.PurchaseOrderHeader, org.jooq.examples.sqlserver.adventureworks.purchasing.tables.PurchaseOrderHeader.PurchaseOrderHeader.PurchaseOrderID); + public static final org.jooq.Identity IDENTITY_ShipMethod = createIdentity(org.jooq.examples.sqlserver.adventureworks.purchasing.tables.ShipMethod.ShipMethod, org.jooq.examples.sqlserver.adventureworks.purchasing.tables.ShipMethod.ShipMethod.ShipMethodID); + public static final org.jooq.Identity IDENTITY_Vendor = createIdentity(org.jooq.examples.sqlserver.adventureworks.purchasing.tables.Vendor.Vendor, org.jooq.examples.sqlserver.adventureworks.purchasing.tables.Vendor.Vendor.VendorID); + + // UNIQUE and PRIMARY KEY definitions + public static final org.jooq.UniqueKey PK_ProductVendor_ProductID_VendorID = createUniqueKey(org.jooq.examples.sqlserver.adventureworks.purchasing.tables.ProductVendor.ProductVendor, org.jooq.examples.sqlserver.adventureworks.purchasing.tables.ProductVendor.ProductVendor.ProductID, org.jooq.examples.sqlserver.adventureworks.purchasing.tables.ProductVendor.ProductVendor.VendorID); + public static final org.jooq.UniqueKey PK_PurchaseOrderDetail_PurchaseOrderID_PurchaseOrderDetailID = createUniqueKey(org.jooq.examples.sqlserver.adventureworks.purchasing.tables.PurchaseOrderDetail.PurchaseOrderDetail, org.jooq.examples.sqlserver.adventureworks.purchasing.tables.PurchaseOrderDetail.PurchaseOrderDetail.PurchaseOrderID, org.jooq.examples.sqlserver.adventureworks.purchasing.tables.PurchaseOrderDetail.PurchaseOrderDetail.PurchaseOrderDetailID); + public static final org.jooq.UniqueKey PK_PurchaseOrderHeader_PurchaseOrderID = createUniqueKey(org.jooq.examples.sqlserver.adventureworks.purchasing.tables.PurchaseOrderHeader.PurchaseOrderHeader, org.jooq.examples.sqlserver.adventureworks.purchasing.tables.PurchaseOrderHeader.PurchaseOrderHeader.PurchaseOrderID); + public static final org.jooq.UniqueKey PK_ShipMethod_ShipMethodID = createUniqueKey(org.jooq.examples.sqlserver.adventureworks.purchasing.tables.ShipMethod.ShipMethod, org.jooq.examples.sqlserver.adventureworks.purchasing.tables.ShipMethod.ShipMethod.ShipMethodID); + public static final org.jooq.UniqueKey PK_Vendor_VendorID = createUniqueKey(org.jooq.examples.sqlserver.adventureworks.purchasing.tables.Vendor.Vendor, org.jooq.examples.sqlserver.adventureworks.purchasing.tables.Vendor.Vendor.VendorID); + public static final org.jooq.UniqueKey PK_VendorAddress_VendorID_AddressID = createUniqueKey(org.jooq.examples.sqlserver.adventureworks.purchasing.tables.VendorAddress.VendorAddress, org.jooq.examples.sqlserver.adventureworks.purchasing.tables.VendorAddress.VendorAddress.VendorID, org.jooq.examples.sqlserver.adventureworks.purchasing.tables.VendorAddress.VendorAddress.AddressID); + public static final org.jooq.UniqueKey PK_VendorContact_VendorID_ContactID = createUniqueKey(org.jooq.examples.sqlserver.adventureworks.purchasing.tables.VendorContact.VendorContact, org.jooq.examples.sqlserver.adventureworks.purchasing.tables.VendorContact.VendorContact.VendorID, org.jooq.examples.sqlserver.adventureworks.purchasing.tables.VendorContact.VendorContact.ContactID); + + // FOREIGN KEY definitions + public static final org.jooq.ForeignKey FK_ProductVendor_Product_ProductID = createForeignKey(org.jooq.examples.sqlserver.adventureworks.production.Keys.PK_Product_ProductID, org.jooq.examples.sqlserver.adventureworks.purchasing.tables.ProductVendor.ProductVendor, org.jooq.examples.sqlserver.adventureworks.purchasing.tables.ProductVendor.ProductVendor.ProductID); + public static final org.jooq.ForeignKey FK_ProductVendor_Vendor_VendorID = createForeignKey(PK_Vendor_VendorID, org.jooq.examples.sqlserver.adventureworks.purchasing.tables.ProductVendor.ProductVendor, org.jooq.examples.sqlserver.adventureworks.purchasing.tables.ProductVendor.ProductVendor.VendorID); + public static final org.jooq.ForeignKey FK_ProductVendor_UnitMeasure_UnitMeasureCode = createForeignKey(org.jooq.examples.sqlserver.adventureworks.production.Keys.PK_UnitMeasure_UnitMeasureCode, org.jooq.examples.sqlserver.adventureworks.purchasing.tables.ProductVendor.ProductVendor, org.jooq.examples.sqlserver.adventureworks.purchasing.tables.ProductVendor.ProductVendor.UnitMeasureCode); + public static final org.jooq.ForeignKey FK_PurchaseOrderDetail_PurchaseOrderHeader_PurchaseOrderID = createForeignKey(PK_PurchaseOrderHeader_PurchaseOrderID, org.jooq.examples.sqlserver.adventureworks.purchasing.tables.PurchaseOrderDetail.PurchaseOrderDetail, org.jooq.examples.sqlserver.adventureworks.purchasing.tables.PurchaseOrderDetail.PurchaseOrderDetail.PurchaseOrderID); + public static final org.jooq.ForeignKey FK_PurchaseOrderDetail_Product_ProductID = createForeignKey(org.jooq.examples.sqlserver.adventureworks.production.Keys.PK_Product_ProductID, org.jooq.examples.sqlserver.adventureworks.purchasing.tables.PurchaseOrderDetail.PurchaseOrderDetail, org.jooq.examples.sqlserver.adventureworks.purchasing.tables.PurchaseOrderDetail.PurchaseOrderDetail.ProductID); + public static final org.jooq.ForeignKey FK_PurchaseOrderHeader_Employee_EmployeeID = createForeignKey(org.jooq.examples.sqlserver.adventureworks.humanresources.Keys.PK_Employee_EmployeeID, org.jooq.examples.sqlserver.adventureworks.purchasing.tables.PurchaseOrderHeader.PurchaseOrderHeader, org.jooq.examples.sqlserver.adventureworks.purchasing.tables.PurchaseOrderHeader.PurchaseOrderHeader.EmployeeID); + public static final org.jooq.ForeignKey FK_PurchaseOrderHeader_Vendor_VendorID = createForeignKey(PK_Vendor_VendorID, org.jooq.examples.sqlserver.adventureworks.purchasing.tables.PurchaseOrderHeader.PurchaseOrderHeader, org.jooq.examples.sqlserver.adventureworks.purchasing.tables.PurchaseOrderHeader.PurchaseOrderHeader.VendorID); + public static final org.jooq.ForeignKey FK_PurchaseOrderHeader_ShipMethod_ShipMethodID = createForeignKey(PK_ShipMethod_ShipMethodID, org.jooq.examples.sqlserver.adventureworks.purchasing.tables.PurchaseOrderHeader.PurchaseOrderHeader, org.jooq.examples.sqlserver.adventureworks.purchasing.tables.PurchaseOrderHeader.PurchaseOrderHeader.ShipMethodID); + public static final org.jooq.ForeignKey FK_VendorAddress_Vendor_VendorID = createForeignKey(PK_Vendor_VendorID, org.jooq.examples.sqlserver.adventureworks.purchasing.tables.VendorAddress.VendorAddress, org.jooq.examples.sqlserver.adventureworks.purchasing.tables.VendorAddress.VendorAddress.VendorID); + public static final org.jooq.ForeignKey FK_VendorAddress_Address_AddressID = createForeignKey(org.jooq.examples.sqlserver.adventureworks.person.Keys.PK_Address_AddressID, org.jooq.examples.sqlserver.adventureworks.purchasing.tables.VendorAddress.VendorAddress, org.jooq.examples.sqlserver.adventureworks.purchasing.tables.VendorAddress.VendorAddress.AddressID); + public static final org.jooq.ForeignKey FK_VendorAddress_AddressType_AddressTypeID = createForeignKey(org.jooq.examples.sqlserver.adventureworks.person.Keys.PK_AddressType_AddressTypeID, org.jooq.examples.sqlserver.adventureworks.purchasing.tables.VendorAddress.VendorAddress, org.jooq.examples.sqlserver.adventureworks.purchasing.tables.VendorAddress.VendorAddress.AddressTypeID); + public static final org.jooq.ForeignKey FK_VendorContact_Vendor_VendorID = createForeignKey(PK_Vendor_VendorID, org.jooq.examples.sqlserver.adventureworks.purchasing.tables.VendorContact.VendorContact, org.jooq.examples.sqlserver.adventureworks.purchasing.tables.VendorContact.VendorContact.VendorID); + public static final org.jooq.ForeignKey FK_VendorContact_Contact_ContactID = createForeignKey(org.jooq.examples.sqlserver.adventureworks.person.Keys.PK_Contact_ContactID, org.jooq.examples.sqlserver.adventureworks.purchasing.tables.VendorContact.VendorContact, org.jooq.examples.sqlserver.adventureworks.purchasing.tables.VendorContact.VendorContact.ContactID); + public static final org.jooq.ForeignKey FK_VendorContact_ContactType_ContactTypeID = createForeignKey(org.jooq.examples.sqlserver.adventureworks.person.Keys.PK_ContactType_ContactTypeID, org.jooq.examples.sqlserver.adventureworks.purchasing.tables.VendorContact.VendorContact, org.jooq.examples.sqlserver.adventureworks.purchasing.tables.VendorContact.VendorContact.ContactTypeID); + + /** + * No instances + */ + private Keys() {} +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/purchasing/Purchasing.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/purchasing/Purchasing.java new file mode 100644 index 00000000000..16011fa7752 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/purchasing/Purchasing.java @@ -0,0 +1,37 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.purchasing; + +/** + * This class is generated by jOOQ. + */ +public class Purchasing extends org.jooq.impl.SchemaImpl { + + private static final long serialVersionUID = 543231605; + + /** + * The singleton instance of Purchasing + */ + public static final Purchasing Purchasing = new Purchasing(); + + /** + * No further instances allowed + */ + private Purchasing() { + super("Purchasing"); + } + + @Override + public final java.util.List> getTables() { + return java.util.Arrays.>asList( + org.jooq.examples.sqlserver.adventureworks.purchasing.tables.ProductVendor.ProductVendor, + org.jooq.examples.sqlserver.adventureworks.purchasing.tables.PurchaseOrderDetail.PurchaseOrderDetail, + org.jooq.examples.sqlserver.adventureworks.purchasing.tables.PurchaseOrderHeader.PurchaseOrderHeader, + org.jooq.examples.sqlserver.adventureworks.purchasing.tables.ShipMethod.ShipMethod, + org.jooq.examples.sqlserver.adventureworks.purchasing.tables.Vendor.Vendor, + org.jooq.examples.sqlserver.adventureworks.purchasing.tables.VendorAddress.VendorAddress, + org.jooq.examples.sqlserver.adventureworks.purchasing.tables.VendorContact.VendorContact, + org.jooq.examples.sqlserver.adventureworks.purchasing.tables.vVendor.vVendor); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/purchasing/PurchasingFactory.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/purchasing/PurchasingFactory.java new file mode 100644 index 00000000000..27fe701e8ed --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/purchasing/PurchasingFactory.java @@ -0,0 +1,41 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.purchasing; + +/** + * This class is generated by jOOQ. + */ +public class PurchasingFactory extends org.jooq.util.sqlserver.SQLServerFactory { + + private static final long serialVersionUID = 536905314; + + /** + * Create a factory with a connection + * + * @param connection The connection to use with objects created from this factory + */ + public PurchasingFactory(java.sql.Connection connection) { + super(connection); + } + + /** + * Create a factory with a connection and a schema mapping + * + * @deprecated - 2.0.5 - Use {@link #PurchasingFactory(java.sql.Connection, org.jooq.conf.Settings)} instead + */ + @Deprecated + public PurchasingFactory(java.sql.Connection connection, org.jooq.SchemaMapping mapping) { + super(connection, mapping); + } + + /** + * Create a factory with a connection and some settings + * + * @param connection The connection to use with objects created from this factory + * @param settings The settings to apply to objects created from this factory + */ + public PurchasingFactory(java.sql.Connection connection, org.jooq.conf.Settings settings) { + super(connection, settings); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/purchasing/Tables.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/purchasing/Tables.java new file mode 100644 index 00000000000..64f5ce6fffe --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/purchasing/Tables.java @@ -0,0 +1,57 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.purchasing; + +/** + * This class is generated by jOOQ. + * + * Convenience access to all tables in Purchasing + */ +public final class Tables { + + /** + * The table Purchasing.ProductVendor + */ + public static org.jooq.examples.sqlserver.adventureworks.purchasing.tables.ProductVendor ProductVendor = org.jooq.examples.sqlserver.adventureworks.purchasing.tables.ProductVendor.ProductVendor; + + /** + * The table Purchasing.PurchaseOrderDetail + */ + public static org.jooq.examples.sqlserver.adventureworks.purchasing.tables.PurchaseOrderDetail PurchaseOrderDetail = org.jooq.examples.sqlserver.adventureworks.purchasing.tables.PurchaseOrderDetail.PurchaseOrderDetail; + + /** + * The table Purchasing.PurchaseOrderHeader + */ + public static org.jooq.examples.sqlserver.adventureworks.purchasing.tables.PurchaseOrderHeader PurchaseOrderHeader = org.jooq.examples.sqlserver.adventureworks.purchasing.tables.PurchaseOrderHeader.PurchaseOrderHeader; + + /** + * The table Purchasing.ShipMethod + */ + public static org.jooq.examples.sqlserver.adventureworks.purchasing.tables.ShipMethod ShipMethod = org.jooq.examples.sqlserver.adventureworks.purchasing.tables.ShipMethod.ShipMethod; + + /** + * The table Purchasing.Vendor + */ + public static org.jooq.examples.sqlserver.adventureworks.purchasing.tables.Vendor Vendor = org.jooq.examples.sqlserver.adventureworks.purchasing.tables.Vendor.Vendor; + + /** + * The table Purchasing.VendorAddress + */ + public static org.jooq.examples.sqlserver.adventureworks.purchasing.tables.VendorAddress VendorAddress = org.jooq.examples.sqlserver.adventureworks.purchasing.tables.VendorAddress.VendorAddress; + + /** + * The table Purchasing.VendorContact + */ + public static org.jooq.examples.sqlserver.adventureworks.purchasing.tables.VendorContact VendorContact = org.jooq.examples.sqlserver.adventureworks.purchasing.tables.VendorContact.VendorContact; + + /** + * The table Purchasing.vVendor + */ + public static org.jooq.examples.sqlserver.adventureworks.purchasing.tables.vVendor vVendor = org.jooq.examples.sqlserver.adventureworks.purchasing.tables.vVendor.vVendor; + + /** + * No instances + */ + private Tables() {} +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/purchasing/tables/ProductVendor.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/purchasing/tables/ProductVendor.java new file mode 100644 index 00000000000..4673694a234 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/purchasing/tables/ProductVendor.java @@ -0,0 +1,137 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.purchasing.tables; + +/** + * This class is generated by jOOQ. + */ +public class ProductVendor extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = 1085078185; + + /** + * The singleton instance of Purchasing.ProductVendor + */ + public static final org.jooq.examples.sqlserver.adventureworks.purchasing.tables.ProductVendor ProductVendor = new org.jooq.examples.sqlserver.adventureworks.purchasing.tables.ProductVendor(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.examples.sqlserver.adventureworks.purchasing.tables.records.ProductVendor.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT FK_ProductVendor_Product_ProductID
+	 * FOREIGN KEY (ProductID)
+	 * REFERENCES Production.Product (ProductID)
+	 * 
+ */ + public final org.jooq.TableField ProductID = createField("ProductID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT FK_ProductVendor_Vendor_VendorID
+	 * FOREIGN KEY (VendorID)
+	 * REFERENCES Purchasing.Vendor (VendorID)
+	 * 
+ */ + public final org.jooq.TableField VendorID = createField("VendorID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField AverageLeadTime = createField("AverageLeadTime", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField StandardPrice = createField("StandardPrice", org.jooq.impl.SQLDataType.NUMERIC, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField LastReceiptCost = createField("LastReceiptCost", org.jooq.impl.SQLDataType.NUMERIC, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField LastReceiptDate = createField("LastReceiptDate", org.jooq.impl.SQLDataType.TIMESTAMP, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField MinOrderQty = createField("MinOrderQty", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField MaxOrderQty = createField("MaxOrderQty", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField OnOrderQty = createField("OnOrderQty", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_ProductVendor_UnitMeasure_UnitMeasureCode
+	 * FOREIGN KEY (UnitMeasureCode)
+	 * REFERENCES Production.UnitMeasure (UnitMeasureCode)
+	 * 
+ */ + public final org.jooq.TableField UnitMeasureCode = createField("UnitMeasureCode", org.jooq.impl.SQLDataType.NCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField ModifiedDate = createField("ModifiedDate", org.jooq.impl.SQLDataType.TIMESTAMP, this); + + public ProductVendor() { + super("ProductVendor", org.jooq.examples.sqlserver.adventureworks.purchasing.Purchasing.Purchasing); + } + + public ProductVendor(java.lang.String alias) { + super(alias, org.jooq.examples.sqlserver.adventureworks.purchasing.Purchasing.Purchasing, org.jooq.examples.sqlserver.adventureworks.purchasing.tables.ProductVendor.ProductVendor); + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.examples.sqlserver.adventureworks.purchasing.Keys.PK_ProductVendor_ProductID_VendorID; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.examples.sqlserver.adventureworks.purchasing.Keys.PK_ProductVendor_ProductID_VendorID); + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getReferences() { + return java.util.Arrays.>asList(org.jooq.examples.sqlserver.adventureworks.purchasing.Keys.FK_ProductVendor_Product_ProductID, org.jooq.examples.sqlserver.adventureworks.purchasing.Keys.FK_ProductVendor_Vendor_VendorID, org.jooq.examples.sqlserver.adventureworks.purchasing.Keys.FK_ProductVendor_UnitMeasure_UnitMeasureCode); + } + + @Override + public org.jooq.examples.sqlserver.adventureworks.purchasing.tables.ProductVendor as(java.lang.String alias) { + return new org.jooq.examples.sqlserver.adventureworks.purchasing.tables.ProductVendor(alias); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/purchasing/tables/PurchaseOrderDetail.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/purchasing/tables/PurchaseOrderDetail.java new file mode 100644 index 00000000000..56942bc0baa --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/purchasing/tables/PurchaseOrderDetail.java @@ -0,0 +1,136 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.purchasing.tables; + +/** + * This class is generated by jOOQ. + */ +public class PurchaseOrderDetail extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = -1683692431; + + /** + * The singleton instance of Purchasing.PurchaseOrderDetail + */ + public static final org.jooq.examples.sqlserver.adventureworks.purchasing.tables.PurchaseOrderDetail PurchaseOrderDetail = new org.jooq.examples.sqlserver.adventureworks.purchasing.tables.PurchaseOrderDetail(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.examples.sqlserver.adventureworks.purchasing.tables.records.PurchaseOrderDetail.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT FK_PurchaseOrderDetail_PurchaseOrderHeader_PurchaseOrderID
+	 * FOREIGN KEY (PurchaseOrderID)
+	 * REFERENCES Purchasing.PurchaseOrderHeader (PurchaseOrderID)
+	 * 
+ */ + public final org.jooq.TableField PurchaseOrderID = createField("PurchaseOrderID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final org.jooq.TableField PurchaseOrderDetailID = createField("PurchaseOrderDetailID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField DueDate = createField("DueDate", org.jooq.impl.SQLDataType.TIMESTAMP, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField OrderQty = createField("OrderQty", org.jooq.impl.SQLDataType.SMALLINT, this); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_PurchaseOrderDetail_Product_ProductID
+	 * FOREIGN KEY (ProductID)
+	 * REFERENCES Production.Product (ProductID)
+	 * 
+ */ + public final org.jooq.TableField ProductID = createField("ProductID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField UnitPrice = createField("UnitPrice", org.jooq.impl.SQLDataType.NUMERIC, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField LineTotal = createField("LineTotal", org.jooq.impl.SQLDataType.NUMERIC, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField ReceivedQty = createField("ReceivedQty", org.jooq.impl.SQLDataType.NUMERIC, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField RejectedQty = createField("RejectedQty", org.jooq.impl.SQLDataType.NUMERIC, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField StockedQty = createField("StockedQty", org.jooq.impl.SQLDataType.NUMERIC, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField ModifiedDate = createField("ModifiedDate", org.jooq.impl.SQLDataType.TIMESTAMP, this); + + public PurchaseOrderDetail() { + super("PurchaseOrderDetail", org.jooq.examples.sqlserver.adventureworks.purchasing.Purchasing.Purchasing); + } + + public PurchaseOrderDetail(java.lang.String alias) { + super(alias, org.jooq.examples.sqlserver.adventureworks.purchasing.Purchasing.Purchasing, org.jooq.examples.sqlserver.adventureworks.purchasing.tables.PurchaseOrderDetail.PurchaseOrderDetail); + } + + @Override + public org.jooq.Identity getIdentity() { + return org.jooq.examples.sqlserver.adventureworks.purchasing.Keys.IDENTITY_PurchaseOrderDetail; + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.examples.sqlserver.adventureworks.purchasing.Keys.PK_PurchaseOrderDetail_PurchaseOrderID_PurchaseOrderDetailID; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.examples.sqlserver.adventureworks.purchasing.Keys.PK_PurchaseOrderDetail_PurchaseOrderID_PurchaseOrderDetailID); + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getReferences() { + return java.util.Arrays.>asList(org.jooq.examples.sqlserver.adventureworks.purchasing.Keys.FK_PurchaseOrderDetail_PurchaseOrderHeader_PurchaseOrderID, org.jooq.examples.sqlserver.adventureworks.purchasing.Keys.FK_PurchaseOrderDetail_Product_ProductID); + } + + @Override + public org.jooq.examples.sqlserver.adventureworks.purchasing.tables.PurchaseOrderDetail as(java.lang.String alias) { + return new org.jooq.examples.sqlserver.adventureworks.purchasing.tables.PurchaseOrderDetail(alias); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/purchasing/tables/PurchaseOrderHeader.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/purchasing/tables/PurchaseOrderHeader.java new file mode 100644 index 00000000000..7e3bf780d85 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/purchasing/tables/PurchaseOrderHeader.java @@ -0,0 +1,150 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.purchasing.tables; + +/** + * This class is generated by jOOQ. + */ +public class PurchaseOrderHeader extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = -1357316998; + + /** + * The singleton instance of Purchasing.PurchaseOrderHeader + */ + public static final org.jooq.examples.sqlserver.adventureworks.purchasing.tables.PurchaseOrderHeader PurchaseOrderHeader = new org.jooq.examples.sqlserver.adventureworks.purchasing.tables.PurchaseOrderHeader(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.examples.sqlserver.adventureworks.purchasing.tables.records.PurchaseOrderHeader.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final org.jooq.TableField PurchaseOrderID = createField("PurchaseOrderID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField RevisionNumber = createField("RevisionNumber", org.jooq.impl.SQLDataType.TINYINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField Status = createField("Status", org.jooq.impl.SQLDataType.TINYINT, this); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_PurchaseOrderHeader_Employee_EmployeeID
+	 * FOREIGN KEY (EmployeeID)
+	 * REFERENCES HumanResources.Employee (EmployeeID)
+	 * 
+ */ + public final org.jooq.TableField EmployeeID = createField("EmployeeID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_PurchaseOrderHeader_Vendor_VendorID
+	 * FOREIGN KEY (VendorID)
+	 * REFERENCES Purchasing.Vendor (VendorID)
+	 * 
+ */ + public final org.jooq.TableField VendorID = createField("VendorID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_PurchaseOrderHeader_ShipMethod_ShipMethodID
+	 * FOREIGN KEY (ShipMethodID)
+	 * REFERENCES Purchasing.ShipMethod (ShipMethodID)
+	 * 
+ */ + public final org.jooq.TableField ShipMethodID = createField("ShipMethodID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField OrderDate = createField("OrderDate", org.jooq.impl.SQLDataType.TIMESTAMP, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField ShipDate = createField("ShipDate", org.jooq.impl.SQLDataType.TIMESTAMP, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField SubTotal = createField("SubTotal", org.jooq.impl.SQLDataType.NUMERIC, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField TaxAmt = createField("TaxAmt", org.jooq.impl.SQLDataType.NUMERIC, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField Freight = createField("Freight", org.jooq.impl.SQLDataType.NUMERIC, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField TotalDue = createField("TotalDue", org.jooq.impl.SQLDataType.NUMERIC, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField ModifiedDate = createField("ModifiedDate", org.jooq.impl.SQLDataType.TIMESTAMP, this); + + public PurchaseOrderHeader() { + super("PurchaseOrderHeader", org.jooq.examples.sqlserver.adventureworks.purchasing.Purchasing.Purchasing); + } + + public PurchaseOrderHeader(java.lang.String alias) { + super(alias, org.jooq.examples.sqlserver.adventureworks.purchasing.Purchasing.Purchasing, org.jooq.examples.sqlserver.adventureworks.purchasing.tables.PurchaseOrderHeader.PurchaseOrderHeader); + } + + @Override + public org.jooq.Identity getIdentity() { + return org.jooq.examples.sqlserver.adventureworks.purchasing.Keys.IDENTITY_PurchaseOrderHeader; + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.examples.sqlserver.adventureworks.purchasing.Keys.PK_PurchaseOrderHeader_PurchaseOrderID; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.examples.sqlserver.adventureworks.purchasing.Keys.PK_PurchaseOrderHeader_PurchaseOrderID); + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getReferences() { + return java.util.Arrays.>asList(org.jooq.examples.sqlserver.adventureworks.purchasing.Keys.FK_PurchaseOrderHeader_Employee_EmployeeID, org.jooq.examples.sqlserver.adventureworks.purchasing.Keys.FK_PurchaseOrderHeader_Vendor_VendorID, org.jooq.examples.sqlserver.adventureworks.purchasing.Keys.FK_PurchaseOrderHeader_ShipMethod_ShipMethodID); + } + + @Override + public org.jooq.examples.sqlserver.adventureworks.purchasing.tables.PurchaseOrderHeader as(java.lang.String alias) { + return new org.jooq.examples.sqlserver.adventureworks.purchasing.tables.PurchaseOrderHeader(alias); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/purchasing/tables/ShipMethod.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/purchasing/tables/ShipMethod.java new file mode 100644 index 00000000000..a73bb06d611 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/purchasing/tables/ShipMethod.java @@ -0,0 +1,91 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.purchasing.tables; + +/** + * This class is generated by jOOQ. + */ +public class ShipMethod extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = 900283147; + + /** + * The singleton instance of Purchasing.ShipMethod + */ + public static final org.jooq.examples.sqlserver.adventureworks.purchasing.tables.ShipMethod ShipMethod = new org.jooq.examples.sqlserver.adventureworks.purchasing.tables.ShipMethod(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.examples.sqlserver.adventureworks.purchasing.tables.records.ShipMethod.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final org.jooq.TableField ShipMethodID = createField("ShipMethodID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField Name = createField("Name", org.jooq.impl.SQLDataType.NVARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField ShipBase = createField("ShipBase", org.jooq.impl.SQLDataType.NUMERIC, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField ShipRate = createField("ShipRate", org.jooq.impl.SQLDataType.NUMERIC, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField rowguid = createField("rowguid", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField ModifiedDate = createField("ModifiedDate", org.jooq.impl.SQLDataType.TIMESTAMP, this); + + public ShipMethod() { + super("ShipMethod", org.jooq.examples.sqlserver.adventureworks.purchasing.Purchasing.Purchasing); + } + + public ShipMethod(java.lang.String alias) { + super(alias, org.jooq.examples.sqlserver.adventureworks.purchasing.Purchasing.Purchasing, org.jooq.examples.sqlserver.adventureworks.purchasing.tables.ShipMethod.ShipMethod); + } + + @Override + public org.jooq.Identity getIdentity() { + return org.jooq.examples.sqlserver.adventureworks.purchasing.Keys.IDENTITY_ShipMethod; + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.examples.sqlserver.adventureworks.purchasing.Keys.PK_ShipMethod_ShipMethodID; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.examples.sqlserver.adventureworks.purchasing.Keys.PK_ShipMethod_ShipMethodID); + } + + @Override + public org.jooq.examples.sqlserver.adventureworks.purchasing.tables.ShipMethod as(java.lang.String alias) { + return new org.jooq.examples.sqlserver.adventureworks.purchasing.tables.ShipMethod(alias); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/purchasing/tables/Vendor.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/purchasing/tables/Vendor.java new file mode 100644 index 00000000000..ccce5a44c26 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/purchasing/tables/Vendor.java @@ -0,0 +1,101 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.purchasing.tables; + +/** + * This class is generated by jOOQ. + */ +public class Vendor extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = -418224279; + + /** + * The singleton instance of Purchasing.Vendor + */ + public static final org.jooq.examples.sqlserver.adventureworks.purchasing.tables.Vendor Vendor = new org.jooq.examples.sqlserver.adventureworks.purchasing.tables.Vendor(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.examples.sqlserver.adventureworks.purchasing.tables.records.Vendor.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final org.jooq.TableField VendorID = createField("VendorID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField AccountNumber = createField("AccountNumber", org.jooq.impl.SQLDataType.NVARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField Name = createField("Name", org.jooq.impl.SQLDataType.NVARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField CreditRating = createField("CreditRating", org.jooq.impl.SQLDataType.TINYINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField PreferredVendorStatus = createField("PreferredVendorStatus", org.jooq.impl.SQLDataType.BIT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField ActiveFlag = createField("ActiveFlag", org.jooq.impl.SQLDataType.BIT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField PurchasingWebServiceURL = createField("PurchasingWebServiceURL", org.jooq.impl.SQLDataType.NVARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField ModifiedDate = createField("ModifiedDate", org.jooq.impl.SQLDataType.TIMESTAMP, this); + + public Vendor() { + super("Vendor", org.jooq.examples.sqlserver.adventureworks.purchasing.Purchasing.Purchasing); + } + + public Vendor(java.lang.String alias) { + super(alias, org.jooq.examples.sqlserver.adventureworks.purchasing.Purchasing.Purchasing, org.jooq.examples.sqlserver.adventureworks.purchasing.tables.Vendor.Vendor); + } + + @Override + public org.jooq.Identity getIdentity() { + return org.jooq.examples.sqlserver.adventureworks.purchasing.Keys.IDENTITY_Vendor; + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.examples.sqlserver.adventureworks.purchasing.Keys.PK_Vendor_VendorID; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.examples.sqlserver.adventureworks.purchasing.Keys.PK_Vendor_VendorID); + } + + @Override + public org.jooq.examples.sqlserver.adventureworks.purchasing.tables.Vendor as(java.lang.String alias) { + return new org.jooq.examples.sqlserver.adventureworks.purchasing.tables.Vendor(alias); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/purchasing/tables/VendorAddress.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/purchasing/tables/VendorAddress.java new file mode 100644 index 00000000000..d362b80e09e --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/purchasing/tables/VendorAddress.java @@ -0,0 +1,102 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.purchasing.tables; + +/** + * This class is generated by jOOQ. + */ +public class VendorAddress extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = 1288905582; + + /** + * The singleton instance of Purchasing.VendorAddress + */ + public static final org.jooq.examples.sqlserver.adventureworks.purchasing.tables.VendorAddress VendorAddress = new org.jooq.examples.sqlserver.adventureworks.purchasing.tables.VendorAddress(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.examples.sqlserver.adventureworks.purchasing.tables.records.VendorAddress.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT FK_VendorAddress_Vendor_VendorID
+	 * FOREIGN KEY (VendorID)
+	 * REFERENCES Purchasing.Vendor (VendorID)
+	 * 
+ */ + public final org.jooq.TableField VendorID = createField("VendorID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT FK_VendorAddress_Address_AddressID
+	 * FOREIGN KEY (AddressID)
+	 * REFERENCES Person.Address (AddressID)
+	 * 
+ */ + public final org.jooq.TableField AddressID = createField("AddressID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_VendorAddress_AddressType_AddressTypeID
+	 * FOREIGN KEY (AddressTypeID)
+	 * REFERENCES Person.AddressType (AddressTypeID)
+	 * 
+ */ + public final org.jooq.TableField AddressTypeID = createField("AddressTypeID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField ModifiedDate = createField("ModifiedDate", org.jooq.impl.SQLDataType.TIMESTAMP, this); + + public VendorAddress() { + super("VendorAddress", org.jooq.examples.sqlserver.adventureworks.purchasing.Purchasing.Purchasing); + } + + public VendorAddress(java.lang.String alias) { + super(alias, org.jooq.examples.sqlserver.adventureworks.purchasing.Purchasing.Purchasing, org.jooq.examples.sqlserver.adventureworks.purchasing.tables.VendorAddress.VendorAddress); + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.examples.sqlserver.adventureworks.purchasing.Keys.PK_VendorAddress_VendorID_AddressID; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.examples.sqlserver.adventureworks.purchasing.Keys.PK_VendorAddress_VendorID_AddressID); + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getReferences() { + return java.util.Arrays.>asList(org.jooq.examples.sqlserver.adventureworks.purchasing.Keys.FK_VendorAddress_Vendor_VendorID, org.jooq.examples.sqlserver.adventureworks.purchasing.Keys.FK_VendorAddress_Address_AddressID, org.jooq.examples.sqlserver.adventureworks.purchasing.Keys.FK_VendorAddress_AddressType_AddressTypeID); + } + + @Override + public org.jooq.examples.sqlserver.adventureworks.purchasing.tables.VendorAddress as(java.lang.String alias) { + return new org.jooq.examples.sqlserver.adventureworks.purchasing.tables.VendorAddress(alias); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/purchasing/tables/VendorContact.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/purchasing/tables/VendorContact.java new file mode 100644 index 00000000000..c882e851954 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/purchasing/tables/VendorContact.java @@ -0,0 +1,102 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.purchasing.tables; + +/** + * This class is generated by jOOQ. + */ +public class VendorContact extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = 1398064698; + + /** + * The singleton instance of Purchasing.VendorContact + */ + public static final org.jooq.examples.sqlserver.adventureworks.purchasing.tables.VendorContact VendorContact = new org.jooq.examples.sqlserver.adventureworks.purchasing.tables.VendorContact(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.examples.sqlserver.adventureworks.purchasing.tables.records.VendorContact.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT FK_VendorContact_Vendor_VendorID
+	 * FOREIGN KEY (VendorID)
+	 * REFERENCES Purchasing.Vendor (VendorID)
+	 * 
+ */ + public final org.jooq.TableField VendorID = createField("VendorID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT FK_VendorContact_Contact_ContactID
+	 * FOREIGN KEY (ContactID)
+	 * REFERENCES Person.Contact (ContactID)
+	 * 
+ */ + public final org.jooq.TableField ContactID = createField("ContactID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_VendorContact_ContactType_ContactTypeID
+	 * FOREIGN KEY (ContactTypeID)
+	 * REFERENCES Person.ContactType (ContactTypeID)
+	 * 
+ */ + public final org.jooq.TableField ContactTypeID = createField("ContactTypeID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField ModifiedDate = createField("ModifiedDate", org.jooq.impl.SQLDataType.TIMESTAMP, this); + + public VendorContact() { + super("VendorContact", org.jooq.examples.sqlserver.adventureworks.purchasing.Purchasing.Purchasing); + } + + public VendorContact(java.lang.String alias) { + super(alias, org.jooq.examples.sqlserver.adventureworks.purchasing.Purchasing.Purchasing, org.jooq.examples.sqlserver.adventureworks.purchasing.tables.VendorContact.VendorContact); + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.examples.sqlserver.adventureworks.purchasing.Keys.PK_VendorContact_VendorID_ContactID; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.examples.sqlserver.adventureworks.purchasing.Keys.PK_VendorContact_VendorID_ContactID); + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getReferences() { + return java.util.Arrays.>asList(org.jooq.examples.sqlserver.adventureworks.purchasing.Keys.FK_VendorContact_Vendor_VendorID, org.jooq.examples.sqlserver.adventureworks.purchasing.Keys.FK_VendorContact_Contact_ContactID, org.jooq.examples.sqlserver.adventureworks.purchasing.Keys.FK_VendorContact_ContactType_ContactTypeID); + } + + @Override + public org.jooq.examples.sqlserver.adventureworks.purchasing.tables.VendorContact as(java.lang.String alias) { + return new org.jooq.examples.sqlserver.adventureworks.purchasing.tables.VendorContact(alias); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/purchasing/tables/pojos/ProductVendor.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/purchasing/tables/pojos/ProductVendor.java new file mode 100644 index 00000000000..8a24abb6a28 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/purchasing/tables/pojos/ProductVendor.java @@ -0,0 +1,127 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.purchasing.tables.pojos; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "ProductVendor", schema = "Purchasing", uniqueConstraints = { + @javax.persistence.UniqueConstraint(columnNames = {"ProductID", "VendorID"}) +}) +public class ProductVendor implements java.io.Serializable { + + private static final long serialVersionUID = 661921819; + + private java.lang.Integer ProductID; + private java.lang.Integer VendorID; + private java.lang.Integer AverageLeadTime; + private java.math.BigDecimal StandardPrice; + private java.math.BigDecimal LastReceiptCost; + private java.sql.Timestamp LastReceiptDate; + private java.lang.Integer MinOrderQty; + private java.lang.Integer MaxOrderQty; + private java.lang.Integer OnOrderQty; + private java.lang.String UnitMeasureCode; + private java.sql.Timestamp ModifiedDate; + + @javax.persistence.Column(name = "ProductID", nullable = false, precision = 10) + public java.lang.Integer getProductID() { + return this.ProductID; + } + + public void setProductID(java.lang.Integer ProductID) { + this.ProductID = ProductID; + } + + @javax.persistence.Column(name = "VendorID", nullable = false, precision = 10) + public java.lang.Integer getVendorID() { + return this.VendorID; + } + + public void setVendorID(java.lang.Integer VendorID) { + this.VendorID = VendorID; + } + + @javax.persistence.Column(name = "AverageLeadTime", nullable = false, precision = 10) + public java.lang.Integer getAverageLeadTime() { + return this.AverageLeadTime; + } + + public void setAverageLeadTime(java.lang.Integer AverageLeadTime) { + this.AverageLeadTime = AverageLeadTime; + } + + @javax.persistence.Column(name = "StandardPrice", nullable = false, precision = 19, scale = 4) + public java.math.BigDecimal getStandardPrice() { + return this.StandardPrice; + } + + public void setStandardPrice(java.math.BigDecimal StandardPrice) { + this.StandardPrice = StandardPrice; + } + + @javax.persistence.Column(name = "LastReceiptCost", precision = 19, scale = 4) + public java.math.BigDecimal getLastReceiptCost() { + return this.LastReceiptCost; + } + + public void setLastReceiptCost(java.math.BigDecimal LastReceiptCost) { + this.LastReceiptCost = LastReceiptCost; + } + + @javax.persistence.Column(name = "LastReceiptDate") + public java.sql.Timestamp getLastReceiptDate() { + return this.LastReceiptDate; + } + + public void setLastReceiptDate(java.sql.Timestamp LastReceiptDate) { + this.LastReceiptDate = LastReceiptDate; + } + + @javax.persistence.Column(name = "MinOrderQty", nullable = false, precision = 10) + public java.lang.Integer getMinOrderQty() { + return this.MinOrderQty; + } + + public void setMinOrderQty(java.lang.Integer MinOrderQty) { + this.MinOrderQty = MinOrderQty; + } + + @javax.persistence.Column(name = "MaxOrderQty", nullable = false, precision = 10) + public java.lang.Integer getMaxOrderQty() { + return this.MaxOrderQty; + } + + public void setMaxOrderQty(java.lang.Integer MaxOrderQty) { + this.MaxOrderQty = MaxOrderQty; + } + + @javax.persistence.Column(name = "OnOrderQty", precision = 10) + public java.lang.Integer getOnOrderQty() { + return this.OnOrderQty; + } + + public void setOnOrderQty(java.lang.Integer OnOrderQty) { + this.OnOrderQty = OnOrderQty; + } + + @javax.persistence.Column(name = "UnitMeasureCode", nullable = false, length = 3) + public java.lang.String getUnitMeasureCode() { + return this.UnitMeasureCode; + } + + public void setUnitMeasureCode(java.lang.String UnitMeasureCode) { + this.UnitMeasureCode = UnitMeasureCode; + } + + @javax.persistence.Column(name = "ModifiedDate", nullable = false) + public java.sql.Timestamp getModifiedDate() { + return this.ModifiedDate; + } + + public void setModifiedDate(java.sql.Timestamp ModifiedDate) { + this.ModifiedDate = ModifiedDate; + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/purchasing/tables/pojos/PurchaseOrderDetail.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/purchasing/tables/pojos/PurchaseOrderDetail.java new file mode 100644 index 00000000000..7ccc67440c6 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/purchasing/tables/pojos/PurchaseOrderDetail.java @@ -0,0 +1,127 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.purchasing.tables.pojos; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "PurchaseOrderDetail", schema = "Purchasing", uniqueConstraints = { + @javax.persistence.UniqueConstraint(columnNames = {"PurchaseOrderID", "PurchaseOrderDetailID"}) +}) +public class PurchaseOrderDetail implements java.io.Serializable { + + private static final long serialVersionUID = 1280380481; + + private java.lang.Integer PurchaseOrderID; + private java.lang.Integer PurchaseOrderDetailID; + private java.sql.Timestamp DueDate; + private java.lang.Short OrderQty; + private java.lang.Integer ProductID; + private java.math.BigDecimal UnitPrice; + private java.math.BigDecimal LineTotal; + private java.math.BigDecimal ReceivedQty; + private java.math.BigDecimal RejectedQty; + private java.math.BigDecimal StockedQty; + private java.sql.Timestamp ModifiedDate; + + @javax.persistence.Column(name = "PurchaseOrderID", nullable = false, precision = 10) + public java.lang.Integer getPurchaseOrderID() { + return this.PurchaseOrderID; + } + + public void setPurchaseOrderID(java.lang.Integer PurchaseOrderID) { + this.PurchaseOrderID = PurchaseOrderID; + } + + @javax.persistence.Column(name = "PurchaseOrderDetailID", nullable = false, precision = 10) + public java.lang.Integer getPurchaseOrderDetailID() { + return this.PurchaseOrderDetailID; + } + + public void setPurchaseOrderDetailID(java.lang.Integer PurchaseOrderDetailID) { + this.PurchaseOrderDetailID = PurchaseOrderDetailID; + } + + @javax.persistence.Column(name = "DueDate", nullable = false) + public java.sql.Timestamp getDueDate() { + return this.DueDate; + } + + public void setDueDate(java.sql.Timestamp DueDate) { + this.DueDate = DueDate; + } + + @javax.persistence.Column(name = "OrderQty", nullable = false, precision = 5) + public java.lang.Short getOrderQty() { + return this.OrderQty; + } + + public void setOrderQty(java.lang.Short OrderQty) { + this.OrderQty = OrderQty; + } + + @javax.persistence.Column(name = "ProductID", nullable = false, precision = 10) + public java.lang.Integer getProductID() { + return this.ProductID; + } + + public void setProductID(java.lang.Integer ProductID) { + this.ProductID = ProductID; + } + + @javax.persistence.Column(name = "UnitPrice", nullable = false, precision = 19, scale = 4) + public java.math.BigDecimal getUnitPrice() { + return this.UnitPrice; + } + + public void setUnitPrice(java.math.BigDecimal UnitPrice) { + this.UnitPrice = UnitPrice; + } + + @javax.persistence.Column(name = "LineTotal", nullable = false, precision = 19, scale = 4) + public java.math.BigDecimal getLineTotal() { + return this.LineTotal; + } + + public void setLineTotal(java.math.BigDecimal LineTotal) { + this.LineTotal = LineTotal; + } + + @javax.persistence.Column(name = "ReceivedQty", nullable = false, precision = 8, scale = 2) + public java.math.BigDecimal getReceivedQty() { + return this.ReceivedQty; + } + + public void setReceivedQty(java.math.BigDecimal ReceivedQty) { + this.ReceivedQty = ReceivedQty; + } + + @javax.persistence.Column(name = "RejectedQty", nullable = false, precision = 8, scale = 2) + public java.math.BigDecimal getRejectedQty() { + return this.RejectedQty; + } + + public void setRejectedQty(java.math.BigDecimal RejectedQty) { + this.RejectedQty = RejectedQty; + } + + @javax.persistence.Column(name = "StockedQty", nullable = false, precision = 9, scale = 2) + public java.math.BigDecimal getStockedQty() { + return this.StockedQty; + } + + public void setStockedQty(java.math.BigDecimal StockedQty) { + this.StockedQty = StockedQty; + } + + @javax.persistence.Column(name = "ModifiedDate", nullable = false) + public java.sql.Timestamp getModifiedDate() { + return this.ModifiedDate; + } + + public void setModifiedDate(java.sql.Timestamp ModifiedDate) { + this.ModifiedDate = ModifiedDate; + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/purchasing/tables/pojos/PurchaseOrderHeader.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/purchasing/tables/pojos/PurchaseOrderHeader.java new file mode 100644 index 00000000000..d1fb656a12c --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/purchasing/tables/pojos/PurchaseOrderHeader.java @@ -0,0 +1,146 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.purchasing.tables.pojos; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "PurchaseOrderHeader", schema = "Purchasing") +public class PurchaseOrderHeader implements java.io.Serializable { + + private static final long serialVersionUID = -2088262516; + + private java.lang.Integer PurchaseOrderID; + private java.lang.Byte RevisionNumber; + private java.lang.Byte Status; + private java.lang.Integer EmployeeID; + private java.lang.Integer VendorID; + private java.lang.Integer ShipMethodID; + private java.sql.Timestamp OrderDate; + private java.sql.Timestamp ShipDate; + private java.math.BigDecimal SubTotal; + private java.math.BigDecimal TaxAmt; + private java.math.BigDecimal Freight; + private java.math.BigDecimal TotalDue; + private java.sql.Timestamp ModifiedDate; + + @javax.persistence.Id + @javax.persistence.Column(name = "PurchaseOrderID", unique = true, nullable = false, precision = 10) + public java.lang.Integer getPurchaseOrderID() { + return this.PurchaseOrderID; + } + + public void setPurchaseOrderID(java.lang.Integer PurchaseOrderID) { + this.PurchaseOrderID = PurchaseOrderID; + } + + @javax.persistence.Column(name = "RevisionNumber", nullable = false, precision = 3) + public java.lang.Byte getRevisionNumber() { + return this.RevisionNumber; + } + + public void setRevisionNumber(java.lang.Byte RevisionNumber) { + this.RevisionNumber = RevisionNumber; + } + + @javax.persistence.Column(name = "Status", nullable = false, precision = 3) + public java.lang.Byte getStatus() { + return this.Status; + } + + public void setStatus(java.lang.Byte Status) { + this.Status = Status; + } + + @javax.persistence.Column(name = "EmployeeID", nullable = false, precision = 10) + public java.lang.Integer getEmployeeID() { + return this.EmployeeID; + } + + public void setEmployeeID(java.lang.Integer EmployeeID) { + this.EmployeeID = EmployeeID; + } + + @javax.persistence.Column(name = "VendorID", nullable = false, precision = 10) + public java.lang.Integer getVendorID() { + return this.VendorID; + } + + public void setVendorID(java.lang.Integer VendorID) { + this.VendorID = VendorID; + } + + @javax.persistence.Column(name = "ShipMethodID", nullable = false, precision = 10) + public java.lang.Integer getShipMethodID() { + return this.ShipMethodID; + } + + public void setShipMethodID(java.lang.Integer ShipMethodID) { + this.ShipMethodID = ShipMethodID; + } + + @javax.persistence.Column(name = "OrderDate", nullable = false) + public java.sql.Timestamp getOrderDate() { + return this.OrderDate; + } + + public void setOrderDate(java.sql.Timestamp OrderDate) { + this.OrderDate = OrderDate; + } + + @javax.persistence.Column(name = "ShipDate") + public java.sql.Timestamp getShipDate() { + return this.ShipDate; + } + + public void setShipDate(java.sql.Timestamp ShipDate) { + this.ShipDate = ShipDate; + } + + @javax.persistence.Column(name = "SubTotal", nullable = false, precision = 19, scale = 4) + public java.math.BigDecimal getSubTotal() { + return this.SubTotal; + } + + public void setSubTotal(java.math.BigDecimal SubTotal) { + this.SubTotal = SubTotal; + } + + @javax.persistence.Column(name = "TaxAmt", nullable = false, precision = 19, scale = 4) + public java.math.BigDecimal getTaxAmt() { + return this.TaxAmt; + } + + public void setTaxAmt(java.math.BigDecimal TaxAmt) { + this.TaxAmt = TaxAmt; + } + + @javax.persistence.Column(name = "Freight", nullable = false, precision = 19, scale = 4) + public java.math.BigDecimal getFreight() { + return this.Freight; + } + + public void setFreight(java.math.BigDecimal Freight) { + this.Freight = Freight; + } + + @javax.persistence.Column(name = "TotalDue", nullable = false, precision = 19, scale = 4) + public java.math.BigDecimal getTotalDue() { + return this.TotalDue; + } + + public void setTotalDue(java.math.BigDecimal TotalDue) { + this.TotalDue = TotalDue; + } + + @javax.persistence.Column(name = "ModifiedDate", nullable = false) + public java.sql.Timestamp getModifiedDate() { + return this.ModifiedDate; + } + + public void setModifiedDate(java.sql.Timestamp ModifiedDate) { + this.ModifiedDate = ModifiedDate; + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/purchasing/tables/pojos/ShipMethod.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/purchasing/tables/pojos/ShipMethod.java new file mode 100644 index 00000000000..d376d81b99f --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/purchasing/tables/pojos/ShipMethod.java @@ -0,0 +1,76 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.purchasing.tables.pojos; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "ShipMethod", schema = "Purchasing") +public class ShipMethod implements java.io.Serializable { + + private static final long serialVersionUID = -2114878671; + + private java.lang.Integer ShipMethodID; + private java.lang.String Name; + private java.math.BigDecimal ShipBase; + private java.math.BigDecimal ShipRate; + private java.lang.String rowguid; + private java.sql.Timestamp ModifiedDate; + + @javax.persistence.Id + @javax.persistence.Column(name = "ShipMethodID", unique = true, nullable = false, precision = 10) + public java.lang.Integer getShipMethodID() { + return this.ShipMethodID; + } + + public void setShipMethodID(java.lang.Integer ShipMethodID) { + this.ShipMethodID = ShipMethodID; + } + + @javax.persistence.Column(name = "Name", nullable = false, length = 50) + public java.lang.String getName() { + return this.Name; + } + + public void setName(java.lang.String Name) { + this.Name = Name; + } + + @javax.persistence.Column(name = "ShipBase", nullable = false, precision = 19, scale = 4) + public java.math.BigDecimal getShipBase() { + return this.ShipBase; + } + + public void setShipBase(java.math.BigDecimal ShipBase) { + this.ShipBase = ShipBase; + } + + @javax.persistence.Column(name = "ShipRate", nullable = false, precision = 19, scale = 4) + public java.math.BigDecimal getShipRate() { + return this.ShipRate; + } + + public void setShipRate(java.math.BigDecimal ShipRate) { + this.ShipRate = ShipRate; + } + + @javax.persistence.Column(name = "rowguid", nullable = false) + public java.lang.String getrowguid() { + return this.rowguid; + } + + public void setrowguid(java.lang.String rowguid) { + this.rowguid = rowguid; + } + + @javax.persistence.Column(name = "ModifiedDate", nullable = false) + public java.sql.Timestamp getModifiedDate() { + return this.ModifiedDate; + } + + public void setModifiedDate(java.sql.Timestamp ModifiedDate) { + this.ModifiedDate = ModifiedDate; + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/purchasing/tables/pojos/Vendor.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/purchasing/tables/pojos/Vendor.java new file mode 100644 index 00000000000..7fa2d4d8004 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/purchasing/tables/pojos/Vendor.java @@ -0,0 +1,96 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.purchasing.tables.pojos; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "Vendor", schema = "Purchasing") +public class Vendor implements java.io.Serializable { + + private static final long serialVersionUID = 2008437684; + + private java.lang.Integer VendorID; + private java.lang.String AccountNumber; + private java.lang.String Name; + private java.lang.Byte CreditRating; + private java.lang.Boolean PreferredVendorStatus; + private java.lang.Boolean ActiveFlag; + private java.lang.String PurchasingWebServiceURL; + private java.sql.Timestamp ModifiedDate; + + @javax.persistence.Id + @javax.persistence.Column(name = "VendorID", unique = true, nullable = false, precision = 10) + public java.lang.Integer getVendorID() { + return this.VendorID; + } + + public void setVendorID(java.lang.Integer VendorID) { + this.VendorID = VendorID; + } + + @javax.persistence.Column(name = "AccountNumber", nullable = false, length = 15) + public java.lang.String getAccountNumber() { + return this.AccountNumber; + } + + public void setAccountNumber(java.lang.String AccountNumber) { + this.AccountNumber = AccountNumber; + } + + @javax.persistence.Column(name = "Name", nullable = false, length = 50) + public java.lang.String getName() { + return this.Name; + } + + public void setName(java.lang.String Name) { + this.Name = Name; + } + + @javax.persistence.Column(name = "CreditRating", nullable = false, precision = 3) + public java.lang.Byte getCreditRating() { + return this.CreditRating; + } + + public void setCreditRating(java.lang.Byte CreditRating) { + this.CreditRating = CreditRating; + } + + @javax.persistence.Column(name = "PreferredVendorStatus", nullable = false) + public java.lang.Boolean getPreferredVendorStatus() { + return this.PreferredVendorStatus; + } + + public void setPreferredVendorStatus(java.lang.Boolean PreferredVendorStatus) { + this.PreferredVendorStatus = PreferredVendorStatus; + } + + @javax.persistence.Column(name = "ActiveFlag", nullable = false) + public java.lang.Boolean getActiveFlag() { + return this.ActiveFlag; + } + + public void setActiveFlag(java.lang.Boolean ActiveFlag) { + this.ActiveFlag = ActiveFlag; + } + + @javax.persistence.Column(name = "PurchasingWebServiceURL", length = 1024) + public java.lang.String getPurchasingWebServiceURL() { + return this.PurchasingWebServiceURL; + } + + public void setPurchasingWebServiceURL(java.lang.String PurchasingWebServiceURL) { + this.PurchasingWebServiceURL = PurchasingWebServiceURL; + } + + @javax.persistence.Column(name = "ModifiedDate", nullable = false) + public java.sql.Timestamp getModifiedDate() { + return this.ModifiedDate; + } + + public void setModifiedDate(java.sql.Timestamp ModifiedDate) { + this.ModifiedDate = ModifiedDate; + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/purchasing/tables/pojos/VendorAddress.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/purchasing/tables/pojos/VendorAddress.java new file mode 100644 index 00000000000..486ab549f04 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/purchasing/tables/pojos/VendorAddress.java @@ -0,0 +1,57 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.purchasing.tables.pojos; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "VendorAddress", schema = "Purchasing", uniqueConstraints = { + @javax.persistence.UniqueConstraint(columnNames = {"VendorID", "AddressID"}) +}) +public class VendorAddress implements java.io.Serializable { + + private static final long serialVersionUID = 1899358278; + + private java.lang.Integer VendorID; + private java.lang.Integer AddressID; + private java.lang.Integer AddressTypeID; + private java.sql.Timestamp ModifiedDate; + + @javax.persistence.Column(name = "VendorID", nullable = false, precision = 10) + public java.lang.Integer getVendorID() { + return this.VendorID; + } + + public void setVendorID(java.lang.Integer VendorID) { + this.VendorID = VendorID; + } + + @javax.persistence.Column(name = "AddressID", nullable = false, precision = 10) + public java.lang.Integer getAddressID() { + return this.AddressID; + } + + public void setAddressID(java.lang.Integer AddressID) { + this.AddressID = AddressID; + } + + @javax.persistence.Column(name = "AddressTypeID", nullable = false, precision = 10) + public java.lang.Integer getAddressTypeID() { + return this.AddressTypeID; + } + + public void setAddressTypeID(java.lang.Integer AddressTypeID) { + this.AddressTypeID = AddressTypeID; + } + + @javax.persistence.Column(name = "ModifiedDate", nullable = false) + public java.sql.Timestamp getModifiedDate() { + return this.ModifiedDate; + } + + public void setModifiedDate(java.sql.Timestamp ModifiedDate) { + this.ModifiedDate = ModifiedDate; + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/purchasing/tables/pojos/VendorContact.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/purchasing/tables/pojos/VendorContact.java new file mode 100644 index 00000000000..69c97710088 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/purchasing/tables/pojos/VendorContact.java @@ -0,0 +1,57 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.purchasing.tables.pojos; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "VendorContact", schema = "Purchasing", uniqueConstraints = { + @javax.persistence.UniqueConstraint(columnNames = {"VendorID", "ContactID"}) +}) +public class VendorContact implements java.io.Serializable { + + private static final long serialVersionUID = 581214586; + + private java.lang.Integer VendorID; + private java.lang.Integer ContactID; + private java.lang.Integer ContactTypeID; + private java.sql.Timestamp ModifiedDate; + + @javax.persistence.Column(name = "VendorID", nullable = false, precision = 10) + public java.lang.Integer getVendorID() { + return this.VendorID; + } + + public void setVendorID(java.lang.Integer VendorID) { + this.VendorID = VendorID; + } + + @javax.persistence.Column(name = "ContactID", nullable = false, precision = 10) + public java.lang.Integer getContactID() { + return this.ContactID; + } + + public void setContactID(java.lang.Integer ContactID) { + this.ContactID = ContactID; + } + + @javax.persistence.Column(name = "ContactTypeID", nullable = false, precision = 10) + public java.lang.Integer getContactTypeID() { + return this.ContactTypeID; + } + + public void setContactTypeID(java.lang.Integer ContactTypeID) { + this.ContactTypeID = ContactTypeID; + } + + @javax.persistence.Column(name = "ModifiedDate", nullable = false) + public java.sql.Timestamp getModifiedDate() { + return this.ModifiedDate; + } + + public void setModifiedDate(java.sql.Timestamp ModifiedDate) { + this.ModifiedDate = ModifiedDate; + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/purchasing/tables/pojos/vVendor.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/purchasing/tables/pojos/vVendor.java new file mode 100644 index 00000000000..8c7b6739c06 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/purchasing/tables/pojos/vVendor.java @@ -0,0 +1,185 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.purchasing.tables.pojos; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "vVendor", schema = "Purchasing") +public class vVendor implements java.io.Serializable { + + private static final long serialVersionUID = -583488567; + + private java.lang.Integer VendorID; + private java.lang.String Name; + private java.lang.String ContactType; + private java.lang.String Title; + private java.lang.String FirstName; + private java.lang.String MiddleName; + private java.lang.String LastName; + private java.lang.String Suffix; + private java.lang.String Phone; + private java.lang.String EmailAddress; + private java.lang.Integer EmailPromotion; + private java.lang.String AddressLine1; + private java.lang.String AddressLine2; + private java.lang.String City; + private java.lang.String StateProvinceName; + private java.lang.String PostalCode; + private java.lang.String CountryRegionName; + + @javax.persistence.Column(name = "VendorID", nullable = false, precision = 10) + public java.lang.Integer getVendorID() { + return this.VendorID; + } + + public void setVendorID(java.lang.Integer VendorID) { + this.VendorID = VendorID; + } + + @javax.persistence.Column(name = "Name", nullable = false, length = 50) + public java.lang.String getName() { + return this.Name; + } + + public void setName(java.lang.String Name) { + this.Name = Name; + } + + @javax.persistence.Column(name = "ContactType", nullable = false, length = 50) + public java.lang.String getContactType() { + return this.ContactType; + } + + public void setContactType(java.lang.String ContactType) { + this.ContactType = ContactType; + } + + @javax.persistence.Column(name = "Title", length = 8) + public java.lang.String getTitle() { + return this.Title; + } + + public void setTitle(java.lang.String Title) { + this.Title = Title; + } + + @javax.persistence.Column(name = "FirstName", nullable = false, length = 50) + public java.lang.String getFirstName() { + return this.FirstName; + } + + public void setFirstName(java.lang.String FirstName) { + this.FirstName = FirstName; + } + + @javax.persistence.Column(name = "MiddleName", length = 50) + public java.lang.String getMiddleName() { + return this.MiddleName; + } + + public void setMiddleName(java.lang.String MiddleName) { + this.MiddleName = MiddleName; + } + + @javax.persistence.Column(name = "LastName", nullable = false, length = 50) + public java.lang.String getLastName() { + return this.LastName; + } + + public void setLastName(java.lang.String LastName) { + this.LastName = LastName; + } + + @javax.persistence.Column(name = "Suffix", length = 10) + public java.lang.String getSuffix() { + return this.Suffix; + } + + public void setSuffix(java.lang.String Suffix) { + this.Suffix = Suffix; + } + + @javax.persistence.Column(name = "Phone", length = 25) + public java.lang.String getPhone() { + return this.Phone; + } + + public void setPhone(java.lang.String Phone) { + this.Phone = Phone; + } + + @javax.persistence.Column(name = "EmailAddress", length = 50) + public java.lang.String getEmailAddress() { + return this.EmailAddress; + } + + public void setEmailAddress(java.lang.String EmailAddress) { + this.EmailAddress = EmailAddress; + } + + @javax.persistence.Column(name = "EmailPromotion", nullable = false, precision = 10) + public java.lang.Integer getEmailPromotion() { + return this.EmailPromotion; + } + + public void setEmailPromotion(java.lang.Integer EmailPromotion) { + this.EmailPromotion = EmailPromotion; + } + + @javax.persistence.Column(name = "AddressLine1", nullable = false, length = 60) + public java.lang.String getAddressLine1() { + return this.AddressLine1; + } + + public void setAddressLine1(java.lang.String AddressLine1) { + this.AddressLine1 = AddressLine1; + } + + @javax.persistence.Column(name = "AddressLine2", length = 60) + public java.lang.String getAddressLine2() { + return this.AddressLine2; + } + + public void setAddressLine2(java.lang.String AddressLine2) { + this.AddressLine2 = AddressLine2; + } + + @javax.persistence.Column(name = "City", nullable = false, length = 30) + public java.lang.String getCity() { + return this.City; + } + + public void setCity(java.lang.String City) { + this.City = City; + } + + @javax.persistence.Column(name = "StateProvinceName", nullable = false, length = 50) + public java.lang.String getStateProvinceName() { + return this.StateProvinceName; + } + + public void setStateProvinceName(java.lang.String StateProvinceName) { + this.StateProvinceName = StateProvinceName; + } + + @javax.persistence.Column(name = "PostalCode", nullable = false, length = 15) + public java.lang.String getPostalCode() { + return this.PostalCode; + } + + public void setPostalCode(java.lang.String PostalCode) { + this.PostalCode = PostalCode; + } + + @javax.persistence.Column(name = "CountryRegionName", nullable = false, length = 50) + public java.lang.String getCountryRegionName() { + return this.CountryRegionName; + } + + public void setCountryRegionName(java.lang.String CountryRegionName) { + this.CountryRegionName = CountryRegionName; + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/purchasing/tables/records/ProductVendor.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/purchasing/tables/records/ProductVendor.java new file mode 100644 index 00000000000..b61c089a919 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/purchasing/tables/records/ProductVendor.java @@ -0,0 +1,232 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.purchasing.tables.records; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "ProductVendor", schema = "Purchasing", uniqueConstraints = { + @javax.persistence.UniqueConstraint(columnNames = {"ProductID", "VendorID"}) +}) +public class ProductVendor extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = -1055203280; + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT FK_ProductVendor_Product_ProductID
+	 * FOREIGN KEY (ProductID)
+	 * REFERENCES Production.Product (ProductID)
+	 * 
+ */ + public void setProductID(java.lang.Integer value) { + setValue(org.jooq.examples.sqlserver.adventureworks.purchasing.tables.ProductVendor.ProductVendor.ProductID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT FK_ProductVendor_Product_ProductID
+	 * FOREIGN KEY (ProductID)
+	 * REFERENCES Production.Product (ProductID)
+	 * 
+ */ + @javax.persistence.Column(name = "ProductID", nullable = false, precision = 10) + public java.lang.Integer getProductID() { + return getValue(org.jooq.examples.sqlserver.adventureworks.purchasing.tables.ProductVendor.ProductVendor.ProductID); + } + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT FK_ProductVendor_Vendor_VendorID
+	 * FOREIGN KEY (VendorID)
+	 * REFERENCES Purchasing.Vendor (VendorID)
+	 * 
+ */ + public void setVendorID(java.lang.Integer value) { + setValue(org.jooq.examples.sqlserver.adventureworks.purchasing.tables.ProductVendor.ProductVendor.VendorID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT FK_ProductVendor_Vendor_VendorID
+	 * FOREIGN KEY (VendorID)
+	 * REFERENCES Purchasing.Vendor (VendorID)
+	 * 
+ */ + @javax.persistence.Column(name = "VendorID", nullable = false, precision = 10) + public java.lang.Integer getVendorID() { + return getValue(org.jooq.examples.sqlserver.adventureworks.purchasing.tables.ProductVendor.ProductVendor.VendorID); + } + + /** + * An uncommented item + */ + public void setAverageLeadTime(java.lang.Integer value) { + setValue(org.jooq.examples.sqlserver.adventureworks.purchasing.tables.ProductVendor.ProductVendor.AverageLeadTime, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "AverageLeadTime", nullable = false, precision = 10) + public java.lang.Integer getAverageLeadTime() { + return getValue(org.jooq.examples.sqlserver.adventureworks.purchasing.tables.ProductVendor.ProductVendor.AverageLeadTime); + } + + /** + * An uncommented item + */ + public void setStandardPrice(java.math.BigDecimal value) { + setValue(org.jooq.examples.sqlserver.adventureworks.purchasing.tables.ProductVendor.ProductVendor.StandardPrice, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "StandardPrice", nullable = false, precision = 19, scale = 4) + public java.math.BigDecimal getStandardPrice() { + return getValue(org.jooq.examples.sqlserver.adventureworks.purchasing.tables.ProductVendor.ProductVendor.StandardPrice); + } + + /** + * An uncommented item + */ + public void setLastReceiptCost(java.math.BigDecimal value) { + setValue(org.jooq.examples.sqlserver.adventureworks.purchasing.tables.ProductVendor.ProductVendor.LastReceiptCost, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "LastReceiptCost", precision = 19, scale = 4) + public java.math.BigDecimal getLastReceiptCost() { + return getValue(org.jooq.examples.sqlserver.adventureworks.purchasing.tables.ProductVendor.ProductVendor.LastReceiptCost); + } + + /** + * An uncommented item + */ + public void setLastReceiptDate(java.sql.Timestamp value) { + setValue(org.jooq.examples.sqlserver.adventureworks.purchasing.tables.ProductVendor.ProductVendor.LastReceiptDate, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "LastReceiptDate") + public java.sql.Timestamp getLastReceiptDate() { + return getValue(org.jooq.examples.sqlserver.adventureworks.purchasing.tables.ProductVendor.ProductVendor.LastReceiptDate); + } + + /** + * An uncommented item + */ + public void setMinOrderQty(java.lang.Integer value) { + setValue(org.jooq.examples.sqlserver.adventureworks.purchasing.tables.ProductVendor.ProductVendor.MinOrderQty, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "MinOrderQty", nullable = false, precision = 10) + public java.lang.Integer getMinOrderQty() { + return getValue(org.jooq.examples.sqlserver.adventureworks.purchasing.tables.ProductVendor.ProductVendor.MinOrderQty); + } + + /** + * An uncommented item + */ + public void setMaxOrderQty(java.lang.Integer value) { + setValue(org.jooq.examples.sqlserver.adventureworks.purchasing.tables.ProductVendor.ProductVendor.MaxOrderQty, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "MaxOrderQty", nullable = false, precision = 10) + public java.lang.Integer getMaxOrderQty() { + return getValue(org.jooq.examples.sqlserver.adventureworks.purchasing.tables.ProductVendor.ProductVendor.MaxOrderQty); + } + + /** + * An uncommented item + */ + public void setOnOrderQty(java.lang.Integer value) { + setValue(org.jooq.examples.sqlserver.adventureworks.purchasing.tables.ProductVendor.ProductVendor.OnOrderQty, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "OnOrderQty", precision = 10) + public java.lang.Integer getOnOrderQty() { + return getValue(org.jooq.examples.sqlserver.adventureworks.purchasing.tables.ProductVendor.ProductVendor.OnOrderQty); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_ProductVendor_UnitMeasure_UnitMeasureCode
+	 * FOREIGN KEY (UnitMeasureCode)
+	 * REFERENCES Production.UnitMeasure (UnitMeasureCode)
+	 * 
+ */ + public void setUnitMeasureCode(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.purchasing.tables.ProductVendor.ProductVendor.UnitMeasureCode, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_ProductVendor_UnitMeasure_UnitMeasureCode
+	 * FOREIGN KEY (UnitMeasureCode)
+	 * REFERENCES Production.UnitMeasure (UnitMeasureCode)
+	 * 
+ */ + @javax.persistence.Column(name = "UnitMeasureCode", nullable = false, length = 3) + public java.lang.String getUnitMeasureCode() { + return getValue(org.jooq.examples.sqlserver.adventureworks.purchasing.tables.ProductVendor.ProductVendor.UnitMeasureCode); + } + + /** + * An uncommented item + */ + public void setModifiedDate(java.sql.Timestamp value) { + setValue(org.jooq.examples.sqlserver.adventureworks.purchasing.tables.ProductVendor.ProductVendor.ModifiedDate, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "ModifiedDate", nullable = false) + public java.sql.Timestamp getModifiedDate() { + return getValue(org.jooq.examples.sqlserver.adventureworks.purchasing.tables.ProductVendor.ProductVendor.ModifiedDate); + } + + /** + * Create a detached ProductVendor + */ + public ProductVendor() { + super(org.jooq.examples.sqlserver.adventureworks.purchasing.tables.ProductVendor.ProductVendor); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/purchasing/tables/records/PurchaseOrderDetail.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/purchasing/tables/records/PurchaseOrderDetail.java new file mode 100644 index 00000000000..f7d058d1b82 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/purchasing/tables/records/PurchaseOrderDetail.java @@ -0,0 +1,220 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.purchasing.tables.records; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "PurchaseOrderDetail", schema = "Purchasing", uniqueConstraints = { + @javax.persistence.UniqueConstraint(columnNames = {"PurchaseOrderID", "PurchaseOrderDetailID"}) +}) +public class PurchaseOrderDetail extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = 1939784655; + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT FK_PurchaseOrderDetail_PurchaseOrderHeader_PurchaseOrderID
+	 * FOREIGN KEY (PurchaseOrderID)
+	 * REFERENCES Purchasing.PurchaseOrderHeader (PurchaseOrderID)
+	 * 
+ */ + public void setPurchaseOrderID(java.lang.Integer value) { + setValue(org.jooq.examples.sqlserver.adventureworks.purchasing.tables.PurchaseOrderDetail.PurchaseOrderDetail.PurchaseOrderID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT FK_PurchaseOrderDetail_PurchaseOrderHeader_PurchaseOrderID
+	 * FOREIGN KEY (PurchaseOrderID)
+	 * REFERENCES Purchasing.PurchaseOrderHeader (PurchaseOrderID)
+	 * 
+ */ + @javax.persistence.Column(name = "PurchaseOrderID", nullable = false, precision = 10) + public java.lang.Integer getPurchaseOrderID() { + return getValue(org.jooq.examples.sqlserver.adventureworks.purchasing.tables.PurchaseOrderDetail.PurchaseOrderDetail.PurchaseOrderID); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setPurchaseOrderDetailID(java.lang.Integer value) { + setValue(org.jooq.examples.sqlserver.adventureworks.purchasing.tables.PurchaseOrderDetail.PurchaseOrderDetail.PurchaseOrderDetailID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + @javax.persistence.Column(name = "PurchaseOrderDetailID", nullable = false, precision = 10) + public java.lang.Integer getPurchaseOrderDetailID() { + return getValue(org.jooq.examples.sqlserver.adventureworks.purchasing.tables.PurchaseOrderDetail.PurchaseOrderDetail.PurchaseOrderDetailID); + } + + /** + * An uncommented item + */ + public void setDueDate(java.sql.Timestamp value) { + setValue(org.jooq.examples.sqlserver.adventureworks.purchasing.tables.PurchaseOrderDetail.PurchaseOrderDetail.DueDate, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "DueDate", nullable = false) + public java.sql.Timestamp getDueDate() { + return getValue(org.jooq.examples.sqlserver.adventureworks.purchasing.tables.PurchaseOrderDetail.PurchaseOrderDetail.DueDate); + } + + /** + * An uncommented item + */ + public void setOrderQty(java.lang.Short value) { + setValue(org.jooq.examples.sqlserver.adventureworks.purchasing.tables.PurchaseOrderDetail.PurchaseOrderDetail.OrderQty, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "OrderQty", nullable = false, precision = 5) + public java.lang.Short getOrderQty() { + return getValue(org.jooq.examples.sqlserver.adventureworks.purchasing.tables.PurchaseOrderDetail.PurchaseOrderDetail.OrderQty); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_PurchaseOrderDetail_Product_ProductID
+	 * FOREIGN KEY (ProductID)
+	 * REFERENCES Production.Product (ProductID)
+	 * 
+ */ + public void setProductID(java.lang.Integer value) { + setValue(org.jooq.examples.sqlserver.adventureworks.purchasing.tables.PurchaseOrderDetail.PurchaseOrderDetail.ProductID, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_PurchaseOrderDetail_Product_ProductID
+	 * FOREIGN KEY (ProductID)
+	 * REFERENCES Production.Product (ProductID)
+	 * 
+ */ + @javax.persistence.Column(name = "ProductID", nullable = false, precision = 10) + public java.lang.Integer getProductID() { + return getValue(org.jooq.examples.sqlserver.adventureworks.purchasing.tables.PurchaseOrderDetail.PurchaseOrderDetail.ProductID); + } + + /** + * An uncommented item + */ + public void setUnitPrice(java.math.BigDecimal value) { + setValue(org.jooq.examples.sqlserver.adventureworks.purchasing.tables.PurchaseOrderDetail.PurchaseOrderDetail.UnitPrice, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "UnitPrice", nullable = false, precision = 19, scale = 4) + public java.math.BigDecimal getUnitPrice() { + return getValue(org.jooq.examples.sqlserver.adventureworks.purchasing.tables.PurchaseOrderDetail.PurchaseOrderDetail.UnitPrice); + } + + /** + * An uncommented item + */ + public void setLineTotal(java.math.BigDecimal value) { + setValue(org.jooq.examples.sqlserver.adventureworks.purchasing.tables.PurchaseOrderDetail.PurchaseOrderDetail.LineTotal, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "LineTotal", nullable = false, precision = 19, scale = 4) + public java.math.BigDecimal getLineTotal() { + return getValue(org.jooq.examples.sqlserver.adventureworks.purchasing.tables.PurchaseOrderDetail.PurchaseOrderDetail.LineTotal); + } + + /** + * An uncommented item + */ + public void setReceivedQty(java.math.BigDecimal value) { + setValue(org.jooq.examples.sqlserver.adventureworks.purchasing.tables.PurchaseOrderDetail.PurchaseOrderDetail.ReceivedQty, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "ReceivedQty", nullable = false, precision = 8, scale = 2) + public java.math.BigDecimal getReceivedQty() { + return getValue(org.jooq.examples.sqlserver.adventureworks.purchasing.tables.PurchaseOrderDetail.PurchaseOrderDetail.ReceivedQty); + } + + /** + * An uncommented item + */ + public void setRejectedQty(java.math.BigDecimal value) { + setValue(org.jooq.examples.sqlserver.adventureworks.purchasing.tables.PurchaseOrderDetail.PurchaseOrderDetail.RejectedQty, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "RejectedQty", nullable = false, precision = 8, scale = 2) + public java.math.BigDecimal getRejectedQty() { + return getValue(org.jooq.examples.sqlserver.adventureworks.purchasing.tables.PurchaseOrderDetail.PurchaseOrderDetail.RejectedQty); + } + + /** + * An uncommented item + */ + public void setStockedQty(java.math.BigDecimal value) { + setValue(org.jooq.examples.sqlserver.adventureworks.purchasing.tables.PurchaseOrderDetail.PurchaseOrderDetail.StockedQty, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "StockedQty", nullable = false, precision = 9, scale = 2) + public java.math.BigDecimal getStockedQty() { + return getValue(org.jooq.examples.sqlserver.adventureworks.purchasing.tables.PurchaseOrderDetail.PurchaseOrderDetail.StockedQty); + } + + /** + * An uncommented item + */ + public void setModifiedDate(java.sql.Timestamp value) { + setValue(org.jooq.examples.sqlserver.adventureworks.purchasing.tables.PurchaseOrderDetail.PurchaseOrderDetail.ModifiedDate, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "ModifiedDate", nullable = false) + public java.sql.Timestamp getModifiedDate() { + return getValue(org.jooq.examples.sqlserver.adventureworks.purchasing.tables.PurchaseOrderDetail.PurchaseOrderDetail.ModifiedDate); + } + + /** + * Create a detached PurchaseOrderDetail + */ + public PurchaseOrderDetail() { + super(org.jooq.examples.sqlserver.adventureworks.purchasing.tables.PurchaseOrderDetail.PurchaseOrderDetail); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/purchasing/tables/records/PurchaseOrderHeader.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/purchasing/tables/records/PurchaseOrderHeader.java new file mode 100644 index 00000000000..8eed4c530ef --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/purchasing/tables/records/PurchaseOrderHeader.java @@ -0,0 +1,257 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.purchasing.tables.records; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "PurchaseOrderHeader", schema = "Purchasing") +public class PurchaseOrderHeader extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = -1529599739; + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setPurchaseOrderID(java.lang.Integer value) { + setValue(org.jooq.examples.sqlserver.adventureworks.purchasing.tables.PurchaseOrderHeader.PurchaseOrderHeader.PurchaseOrderID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + @javax.persistence.Id + @javax.persistence.Column(name = "PurchaseOrderID", unique = true, nullable = false, precision = 10) + public java.lang.Integer getPurchaseOrderID() { + return getValue(org.jooq.examples.sqlserver.adventureworks.purchasing.tables.PurchaseOrderHeader.PurchaseOrderHeader.PurchaseOrderID); + } + + /** + * An uncommented item + */ + public void setRevisionNumber(java.lang.Byte value) { + setValue(org.jooq.examples.sqlserver.adventureworks.purchasing.tables.PurchaseOrderHeader.PurchaseOrderHeader.RevisionNumber, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "RevisionNumber", nullable = false, precision = 3) + public java.lang.Byte getRevisionNumber() { + return getValue(org.jooq.examples.sqlserver.adventureworks.purchasing.tables.PurchaseOrderHeader.PurchaseOrderHeader.RevisionNumber); + } + + /** + * An uncommented item + */ + public void setStatus(java.lang.Byte value) { + setValue(org.jooq.examples.sqlserver.adventureworks.purchasing.tables.PurchaseOrderHeader.PurchaseOrderHeader.Status, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "Status", nullable = false, precision = 3) + public java.lang.Byte getStatus() { + return getValue(org.jooq.examples.sqlserver.adventureworks.purchasing.tables.PurchaseOrderHeader.PurchaseOrderHeader.Status); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_PurchaseOrderHeader_Employee_EmployeeID
+	 * FOREIGN KEY (EmployeeID)
+	 * REFERENCES HumanResources.Employee (EmployeeID)
+	 * 
+ */ + public void setEmployeeID(java.lang.Integer value) { + setValue(org.jooq.examples.sqlserver.adventureworks.purchasing.tables.PurchaseOrderHeader.PurchaseOrderHeader.EmployeeID, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_PurchaseOrderHeader_Employee_EmployeeID
+	 * FOREIGN KEY (EmployeeID)
+	 * REFERENCES HumanResources.Employee (EmployeeID)
+	 * 
+ */ + @javax.persistence.Column(name = "EmployeeID", nullable = false, precision = 10) + public java.lang.Integer getEmployeeID() { + return getValue(org.jooq.examples.sqlserver.adventureworks.purchasing.tables.PurchaseOrderHeader.PurchaseOrderHeader.EmployeeID); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_PurchaseOrderHeader_Vendor_VendorID
+	 * FOREIGN KEY (VendorID)
+	 * REFERENCES Purchasing.Vendor (VendorID)
+	 * 
+ */ + public void setVendorID(java.lang.Integer value) { + setValue(org.jooq.examples.sqlserver.adventureworks.purchasing.tables.PurchaseOrderHeader.PurchaseOrderHeader.VendorID, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_PurchaseOrderHeader_Vendor_VendorID
+	 * FOREIGN KEY (VendorID)
+	 * REFERENCES Purchasing.Vendor (VendorID)
+	 * 
+ */ + @javax.persistence.Column(name = "VendorID", nullable = false, precision = 10) + public java.lang.Integer getVendorID() { + return getValue(org.jooq.examples.sqlserver.adventureworks.purchasing.tables.PurchaseOrderHeader.PurchaseOrderHeader.VendorID); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_PurchaseOrderHeader_ShipMethod_ShipMethodID
+	 * FOREIGN KEY (ShipMethodID)
+	 * REFERENCES Purchasing.ShipMethod (ShipMethodID)
+	 * 
+ */ + public void setShipMethodID(java.lang.Integer value) { + setValue(org.jooq.examples.sqlserver.adventureworks.purchasing.tables.PurchaseOrderHeader.PurchaseOrderHeader.ShipMethodID, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_PurchaseOrderHeader_ShipMethod_ShipMethodID
+	 * FOREIGN KEY (ShipMethodID)
+	 * REFERENCES Purchasing.ShipMethod (ShipMethodID)
+	 * 
+ */ + @javax.persistence.Column(name = "ShipMethodID", nullable = false, precision = 10) + public java.lang.Integer getShipMethodID() { + return getValue(org.jooq.examples.sqlserver.adventureworks.purchasing.tables.PurchaseOrderHeader.PurchaseOrderHeader.ShipMethodID); + } + + /** + * An uncommented item + */ + public void setOrderDate(java.sql.Timestamp value) { + setValue(org.jooq.examples.sqlserver.adventureworks.purchasing.tables.PurchaseOrderHeader.PurchaseOrderHeader.OrderDate, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "OrderDate", nullable = false) + public java.sql.Timestamp getOrderDate() { + return getValue(org.jooq.examples.sqlserver.adventureworks.purchasing.tables.PurchaseOrderHeader.PurchaseOrderHeader.OrderDate); + } + + /** + * An uncommented item + */ + public void setShipDate(java.sql.Timestamp value) { + setValue(org.jooq.examples.sqlserver.adventureworks.purchasing.tables.PurchaseOrderHeader.PurchaseOrderHeader.ShipDate, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "ShipDate") + public java.sql.Timestamp getShipDate() { + return getValue(org.jooq.examples.sqlserver.adventureworks.purchasing.tables.PurchaseOrderHeader.PurchaseOrderHeader.ShipDate); + } + + /** + * An uncommented item + */ + public void setSubTotal(java.math.BigDecimal value) { + setValue(org.jooq.examples.sqlserver.adventureworks.purchasing.tables.PurchaseOrderHeader.PurchaseOrderHeader.SubTotal, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "SubTotal", nullable = false, precision = 19, scale = 4) + public java.math.BigDecimal getSubTotal() { + return getValue(org.jooq.examples.sqlserver.adventureworks.purchasing.tables.PurchaseOrderHeader.PurchaseOrderHeader.SubTotal); + } + + /** + * An uncommented item + */ + public void setTaxAmt(java.math.BigDecimal value) { + setValue(org.jooq.examples.sqlserver.adventureworks.purchasing.tables.PurchaseOrderHeader.PurchaseOrderHeader.TaxAmt, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "TaxAmt", nullable = false, precision = 19, scale = 4) + public java.math.BigDecimal getTaxAmt() { + return getValue(org.jooq.examples.sqlserver.adventureworks.purchasing.tables.PurchaseOrderHeader.PurchaseOrderHeader.TaxAmt); + } + + /** + * An uncommented item + */ + public void setFreight(java.math.BigDecimal value) { + setValue(org.jooq.examples.sqlserver.adventureworks.purchasing.tables.PurchaseOrderHeader.PurchaseOrderHeader.Freight, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "Freight", nullable = false, precision = 19, scale = 4) + public java.math.BigDecimal getFreight() { + return getValue(org.jooq.examples.sqlserver.adventureworks.purchasing.tables.PurchaseOrderHeader.PurchaseOrderHeader.Freight); + } + + /** + * An uncommented item + */ + public void setTotalDue(java.math.BigDecimal value) { + setValue(org.jooq.examples.sqlserver.adventureworks.purchasing.tables.PurchaseOrderHeader.PurchaseOrderHeader.TotalDue, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "TotalDue", nullable = false, precision = 19, scale = 4) + public java.math.BigDecimal getTotalDue() { + return getValue(org.jooq.examples.sqlserver.adventureworks.purchasing.tables.PurchaseOrderHeader.PurchaseOrderHeader.TotalDue); + } + + /** + * An uncommented item + */ + public void setModifiedDate(java.sql.Timestamp value) { + setValue(org.jooq.examples.sqlserver.adventureworks.purchasing.tables.PurchaseOrderHeader.PurchaseOrderHeader.ModifiedDate, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "ModifiedDate", nullable = false) + public java.sql.Timestamp getModifiedDate() { + return getValue(org.jooq.examples.sqlserver.adventureworks.purchasing.tables.PurchaseOrderHeader.PurchaseOrderHeader.ModifiedDate); + } + + /** + * Create a detached PurchaseOrderHeader + */ + public PurchaseOrderHeader() { + super(org.jooq.examples.sqlserver.adventureworks.purchasing.tables.PurchaseOrderHeader.PurchaseOrderHeader); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/purchasing/tables/records/ShipMethod.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/purchasing/tables/records/ShipMethod.java new file mode 100644 index 00000000000..95da1534c88 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/purchasing/tables/records/ShipMethod.java @@ -0,0 +1,116 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.purchasing.tables.records; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "ShipMethod", schema = "Purchasing") +public class ShipMethod extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = 1461186656; + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setShipMethodID(java.lang.Integer value) { + setValue(org.jooq.examples.sqlserver.adventureworks.purchasing.tables.ShipMethod.ShipMethod.ShipMethodID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + @javax.persistence.Id + @javax.persistence.Column(name = "ShipMethodID", unique = true, nullable = false, precision = 10) + public java.lang.Integer getShipMethodID() { + return getValue(org.jooq.examples.sqlserver.adventureworks.purchasing.tables.ShipMethod.ShipMethod.ShipMethodID); + } + + /** + * An uncommented item + */ + public void setName(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.purchasing.tables.ShipMethod.ShipMethod.Name, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "Name", nullable = false, length = 50) + public java.lang.String getName() { + return getValue(org.jooq.examples.sqlserver.adventureworks.purchasing.tables.ShipMethod.ShipMethod.Name); + } + + /** + * An uncommented item + */ + public void setShipBase(java.math.BigDecimal value) { + setValue(org.jooq.examples.sqlserver.adventureworks.purchasing.tables.ShipMethod.ShipMethod.ShipBase, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "ShipBase", nullable = false, precision = 19, scale = 4) + public java.math.BigDecimal getShipBase() { + return getValue(org.jooq.examples.sqlserver.adventureworks.purchasing.tables.ShipMethod.ShipMethod.ShipBase); + } + + /** + * An uncommented item + */ + public void setShipRate(java.math.BigDecimal value) { + setValue(org.jooq.examples.sqlserver.adventureworks.purchasing.tables.ShipMethod.ShipMethod.ShipRate, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "ShipRate", nullable = false, precision = 19, scale = 4) + public java.math.BigDecimal getShipRate() { + return getValue(org.jooq.examples.sqlserver.adventureworks.purchasing.tables.ShipMethod.ShipMethod.ShipRate); + } + + /** + * An uncommented item + */ + public void setrowguid(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.purchasing.tables.ShipMethod.ShipMethod.rowguid, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "rowguid", nullable = false) + public java.lang.String getrowguid() { + return getValue(org.jooq.examples.sqlserver.adventureworks.purchasing.tables.ShipMethod.ShipMethod.rowguid); + } + + /** + * An uncommented item + */ + public void setModifiedDate(java.sql.Timestamp value) { + setValue(org.jooq.examples.sqlserver.adventureworks.purchasing.tables.ShipMethod.ShipMethod.ModifiedDate, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "ModifiedDate", nullable = false) + public java.sql.Timestamp getModifiedDate() { + return getValue(org.jooq.examples.sqlserver.adventureworks.purchasing.tables.ShipMethod.ShipMethod.ModifiedDate); + } + + /** + * Create a detached ShipMethod + */ + public ShipMethod() { + super(org.jooq.examples.sqlserver.adventureworks.purchasing.tables.ShipMethod.ShipMethod); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/purchasing/tables/records/Vendor.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/purchasing/tables/records/Vendor.java new file mode 100644 index 00000000000..99251c28140 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/purchasing/tables/records/Vendor.java @@ -0,0 +1,146 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.purchasing.tables.records; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "Vendor", schema = "Purchasing") +public class Vendor extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = 132009665; + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setVendorID(java.lang.Integer value) { + setValue(org.jooq.examples.sqlserver.adventureworks.purchasing.tables.Vendor.Vendor.VendorID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + @javax.persistence.Id + @javax.persistence.Column(name = "VendorID", unique = true, nullable = false, precision = 10) + public java.lang.Integer getVendorID() { + return getValue(org.jooq.examples.sqlserver.adventureworks.purchasing.tables.Vendor.Vendor.VendorID); + } + + /** + * An uncommented item + */ + public void setAccountNumber(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.purchasing.tables.Vendor.Vendor.AccountNumber, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "AccountNumber", nullable = false, length = 15) + public java.lang.String getAccountNumber() { + return getValue(org.jooq.examples.sqlserver.adventureworks.purchasing.tables.Vendor.Vendor.AccountNumber); + } + + /** + * An uncommented item + */ + public void setName(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.purchasing.tables.Vendor.Vendor.Name, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "Name", nullable = false, length = 50) + public java.lang.String getName() { + return getValue(org.jooq.examples.sqlserver.adventureworks.purchasing.tables.Vendor.Vendor.Name); + } + + /** + * An uncommented item + */ + public void setCreditRating(java.lang.Byte value) { + setValue(org.jooq.examples.sqlserver.adventureworks.purchasing.tables.Vendor.Vendor.CreditRating, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "CreditRating", nullable = false, precision = 3) + public java.lang.Byte getCreditRating() { + return getValue(org.jooq.examples.sqlserver.adventureworks.purchasing.tables.Vendor.Vendor.CreditRating); + } + + /** + * An uncommented item + */ + public void setPreferredVendorStatus(java.lang.Boolean value) { + setValue(org.jooq.examples.sqlserver.adventureworks.purchasing.tables.Vendor.Vendor.PreferredVendorStatus, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "PreferredVendorStatus", nullable = false) + public java.lang.Boolean getPreferredVendorStatus() { + return getValue(org.jooq.examples.sqlserver.adventureworks.purchasing.tables.Vendor.Vendor.PreferredVendorStatus); + } + + /** + * An uncommented item + */ + public void setActiveFlag(java.lang.Boolean value) { + setValue(org.jooq.examples.sqlserver.adventureworks.purchasing.tables.Vendor.Vendor.ActiveFlag, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "ActiveFlag", nullable = false) + public java.lang.Boolean getActiveFlag() { + return getValue(org.jooq.examples.sqlserver.adventureworks.purchasing.tables.Vendor.Vendor.ActiveFlag); + } + + /** + * An uncommented item + */ + public void setPurchasingWebServiceURL(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.purchasing.tables.Vendor.Vendor.PurchasingWebServiceURL, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "PurchasingWebServiceURL", length = 1024) + public java.lang.String getPurchasingWebServiceURL() { + return getValue(org.jooq.examples.sqlserver.adventureworks.purchasing.tables.Vendor.Vendor.PurchasingWebServiceURL); + } + + /** + * An uncommented item + */ + public void setModifiedDate(java.sql.Timestamp value) { + setValue(org.jooq.examples.sqlserver.adventureworks.purchasing.tables.Vendor.Vendor.ModifiedDate, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "ModifiedDate", nullable = false) + public java.sql.Timestamp getModifiedDate() { + return getValue(org.jooq.examples.sqlserver.adventureworks.purchasing.tables.Vendor.Vendor.ModifiedDate); + } + + /** + * Create a detached Vendor + */ + public Vendor() { + super(org.jooq.examples.sqlserver.adventureworks.purchasing.tables.Vendor.Vendor); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/purchasing/tables/records/VendorAddress.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/purchasing/tables/records/VendorAddress.java new file mode 100644 index 00000000000..004813e3502 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/purchasing/tables/records/VendorAddress.java @@ -0,0 +1,127 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.purchasing.tables.records; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "VendorAddress", schema = "Purchasing", uniqueConstraints = { + @javax.persistence.UniqueConstraint(columnNames = {"VendorID", "AddressID"}) +}) +public class VendorAddress extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = -1562438434; + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT FK_VendorAddress_Vendor_VendorID
+	 * FOREIGN KEY (VendorID)
+	 * REFERENCES Purchasing.Vendor (VendorID)
+	 * 
+ */ + public void setVendorID(java.lang.Integer value) { + setValue(org.jooq.examples.sqlserver.adventureworks.purchasing.tables.VendorAddress.VendorAddress.VendorID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT FK_VendorAddress_Vendor_VendorID
+	 * FOREIGN KEY (VendorID)
+	 * REFERENCES Purchasing.Vendor (VendorID)
+	 * 
+ */ + @javax.persistence.Column(name = "VendorID", nullable = false, precision = 10) + public java.lang.Integer getVendorID() { + return getValue(org.jooq.examples.sqlserver.adventureworks.purchasing.tables.VendorAddress.VendorAddress.VendorID); + } + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT FK_VendorAddress_Address_AddressID
+	 * FOREIGN KEY (AddressID)
+	 * REFERENCES Person.Address (AddressID)
+	 * 
+ */ + public void setAddressID(java.lang.Integer value) { + setValue(org.jooq.examples.sqlserver.adventureworks.purchasing.tables.VendorAddress.VendorAddress.AddressID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT FK_VendorAddress_Address_AddressID
+	 * FOREIGN KEY (AddressID)
+	 * REFERENCES Person.Address (AddressID)
+	 * 
+ */ + @javax.persistence.Column(name = "AddressID", nullable = false, precision = 10) + public java.lang.Integer getAddressID() { + return getValue(org.jooq.examples.sqlserver.adventureworks.purchasing.tables.VendorAddress.VendorAddress.AddressID); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_VendorAddress_AddressType_AddressTypeID
+	 * FOREIGN KEY (AddressTypeID)
+	 * REFERENCES Person.AddressType (AddressTypeID)
+	 * 
+ */ + public void setAddressTypeID(java.lang.Integer value) { + setValue(org.jooq.examples.sqlserver.adventureworks.purchasing.tables.VendorAddress.VendorAddress.AddressTypeID, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_VendorAddress_AddressType_AddressTypeID
+	 * FOREIGN KEY (AddressTypeID)
+	 * REFERENCES Person.AddressType (AddressTypeID)
+	 * 
+ */ + @javax.persistence.Column(name = "AddressTypeID", nullable = false, precision = 10) + public java.lang.Integer getAddressTypeID() { + return getValue(org.jooq.examples.sqlserver.adventureworks.purchasing.tables.VendorAddress.VendorAddress.AddressTypeID); + } + + /** + * An uncommented item + */ + public void setModifiedDate(java.sql.Timestamp value) { + setValue(org.jooq.examples.sqlserver.adventureworks.purchasing.tables.VendorAddress.VendorAddress.ModifiedDate, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "ModifiedDate", nullable = false) + public java.sql.Timestamp getModifiedDate() { + return getValue(org.jooq.examples.sqlserver.adventureworks.purchasing.tables.VendorAddress.VendorAddress.ModifiedDate); + } + + /** + * Create a detached VendorAddress + */ + public VendorAddress() { + super(org.jooq.examples.sqlserver.adventureworks.purchasing.tables.VendorAddress.VendorAddress); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/purchasing/tables/records/VendorContact.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/purchasing/tables/records/VendorContact.java new file mode 100644 index 00000000000..cbe88345c08 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/purchasing/tables/records/VendorContact.java @@ -0,0 +1,127 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.purchasing.tables.records; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "VendorContact", schema = "Purchasing", uniqueConstraints = { + @javax.persistence.UniqueConstraint(columnNames = {"VendorID", "ContactID"}) +}) +public class VendorContact extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = -1986465786; + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT FK_VendorContact_Vendor_VendorID
+	 * FOREIGN KEY (VendorID)
+	 * REFERENCES Purchasing.Vendor (VendorID)
+	 * 
+ */ + public void setVendorID(java.lang.Integer value) { + setValue(org.jooq.examples.sqlserver.adventureworks.purchasing.tables.VendorContact.VendorContact.VendorID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT FK_VendorContact_Vendor_VendorID
+	 * FOREIGN KEY (VendorID)
+	 * REFERENCES Purchasing.Vendor (VendorID)
+	 * 
+ */ + @javax.persistence.Column(name = "VendorID", nullable = false, precision = 10) + public java.lang.Integer getVendorID() { + return getValue(org.jooq.examples.sqlserver.adventureworks.purchasing.tables.VendorContact.VendorContact.VendorID); + } + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT FK_VendorContact_Contact_ContactID
+	 * FOREIGN KEY (ContactID)
+	 * REFERENCES Person.Contact (ContactID)
+	 * 
+ */ + public void setContactID(java.lang.Integer value) { + setValue(org.jooq.examples.sqlserver.adventureworks.purchasing.tables.VendorContact.VendorContact.ContactID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT FK_VendorContact_Contact_ContactID
+	 * FOREIGN KEY (ContactID)
+	 * REFERENCES Person.Contact (ContactID)
+	 * 
+ */ + @javax.persistence.Column(name = "ContactID", nullable = false, precision = 10) + public java.lang.Integer getContactID() { + return getValue(org.jooq.examples.sqlserver.adventureworks.purchasing.tables.VendorContact.VendorContact.ContactID); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_VendorContact_ContactType_ContactTypeID
+	 * FOREIGN KEY (ContactTypeID)
+	 * REFERENCES Person.ContactType (ContactTypeID)
+	 * 
+ */ + public void setContactTypeID(java.lang.Integer value) { + setValue(org.jooq.examples.sqlserver.adventureworks.purchasing.tables.VendorContact.VendorContact.ContactTypeID, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_VendorContact_ContactType_ContactTypeID
+	 * FOREIGN KEY (ContactTypeID)
+	 * REFERENCES Person.ContactType (ContactTypeID)
+	 * 
+ */ + @javax.persistence.Column(name = "ContactTypeID", nullable = false, precision = 10) + public java.lang.Integer getContactTypeID() { + return getValue(org.jooq.examples.sqlserver.adventureworks.purchasing.tables.VendorContact.VendorContact.ContactTypeID); + } + + /** + * An uncommented item + */ + public void setModifiedDate(java.sql.Timestamp value) { + setValue(org.jooq.examples.sqlserver.adventureworks.purchasing.tables.VendorContact.VendorContact.ModifiedDate, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "ModifiedDate", nullable = false) + public java.sql.Timestamp getModifiedDate() { + return getValue(org.jooq.examples.sqlserver.adventureworks.purchasing.tables.VendorContact.VendorContact.ModifiedDate); + } + + /** + * Create a detached VendorContact + */ + public VendorContact() { + super(org.jooq.examples.sqlserver.adventureworks.purchasing.tables.VendorContact.VendorContact); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/purchasing/tables/records/vVendor.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/purchasing/tables/records/vVendor.java new file mode 100644 index 00000000000..69e5de23496 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/purchasing/tables/records/vVendor.java @@ -0,0 +1,276 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.purchasing.tables.records; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "vVendor", schema = "Purchasing") +public class vVendor extends org.jooq.impl.TableRecordImpl { + + private static final long serialVersionUID = -1395608125; + + /** + * An uncommented item + */ + public void setVendorID(java.lang.Integer value) { + setValue(org.jooq.examples.sqlserver.adventureworks.purchasing.tables.vVendor.vVendor.VendorID, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "VendorID", nullable = false, precision = 10) + public java.lang.Integer getVendorID() { + return getValue(org.jooq.examples.sqlserver.adventureworks.purchasing.tables.vVendor.vVendor.VendorID); + } + + /** + * An uncommented item + */ + public void setName(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.purchasing.tables.vVendor.vVendor.Name, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "Name", nullable = false, length = 50) + public java.lang.String getName() { + return getValue(org.jooq.examples.sqlserver.adventureworks.purchasing.tables.vVendor.vVendor.Name); + } + + /** + * An uncommented item + */ + public void setContactType(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.purchasing.tables.vVendor.vVendor.ContactType, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "ContactType", nullable = false, length = 50) + public java.lang.String getContactType() { + return getValue(org.jooq.examples.sqlserver.adventureworks.purchasing.tables.vVendor.vVendor.ContactType); + } + + /** + * An uncommented item + */ + public void setTitle(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.purchasing.tables.vVendor.vVendor.Title, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "Title", length = 8) + public java.lang.String getTitle() { + return getValue(org.jooq.examples.sqlserver.adventureworks.purchasing.tables.vVendor.vVendor.Title); + } + + /** + * An uncommented item + */ + public void setFirstName(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.purchasing.tables.vVendor.vVendor.FirstName, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "FirstName", nullable = false, length = 50) + public java.lang.String getFirstName() { + return getValue(org.jooq.examples.sqlserver.adventureworks.purchasing.tables.vVendor.vVendor.FirstName); + } + + /** + * An uncommented item + */ + public void setMiddleName(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.purchasing.tables.vVendor.vVendor.MiddleName, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "MiddleName", length = 50) + public java.lang.String getMiddleName() { + return getValue(org.jooq.examples.sqlserver.adventureworks.purchasing.tables.vVendor.vVendor.MiddleName); + } + + /** + * An uncommented item + */ + public void setLastName(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.purchasing.tables.vVendor.vVendor.LastName, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "LastName", nullable = false, length = 50) + public java.lang.String getLastName() { + return getValue(org.jooq.examples.sqlserver.adventureworks.purchasing.tables.vVendor.vVendor.LastName); + } + + /** + * An uncommented item + */ + public void setSuffix(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.purchasing.tables.vVendor.vVendor.Suffix, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "Suffix", length = 10) + public java.lang.String getSuffix() { + return getValue(org.jooq.examples.sqlserver.adventureworks.purchasing.tables.vVendor.vVendor.Suffix); + } + + /** + * An uncommented item + */ + public void setPhone(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.purchasing.tables.vVendor.vVendor.Phone, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "Phone", length = 25) + public java.lang.String getPhone() { + return getValue(org.jooq.examples.sqlserver.adventureworks.purchasing.tables.vVendor.vVendor.Phone); + } + + /** + * An uncommented item + */ + public void setEmailAddress(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.purchasing.tables.vVendor.vVendor.EmailAddress, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "EmailAddress", length = 50) + public java.lang.String getEmailAddress() { + return getValue(org.jooq.examples.sqlserver.adventureworks.purchasing.tables.vVendor.vVendor.EmailAddress); + } + + /** + * An uncommented item + */ + public void setEmailPromotion(java.lang.Integer value) { + setValue(org.jooq.examples.sqlserver.adventureworks.purchasing.tables.vVendor.vVendor.EmailPromotion, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "EmailPromotion", nullable = false, precision = 10) + public java.lang.Integer getEmailPromotion() { + return getValue(org.jooq.examples.sqlserver.adventureworks.purchasing.tables.vVendor.vVendor.EmailPromotion); + } + + /** + * An uncommented item + */ + public void setAddressLine1(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.purchasing.tables.vVendor.vVendor.AddressLine1, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "AddressLine1", nullable = false, length = 60) + public java.lang.String getAddressLine1() { + return getValue(org.jooq.examples.sqlserver.adventureworks.purchasing.tables.vVendor.vVendor.AddressLine1); + } + + /** + * An uncommented item + */ + public void setAddressLine2(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.purchasing.tables.vVendor.vVendor.AddressLine2, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "AddressLine2", length = 60) + public java.lang.String getAddressLine2() { + return getValue(org.jooq.examples.sqlserver.adventureworks.purchasing.tables.vVendor.vVendor.AddressLine2); + } + + /** + * An uncommented item + */ + public void setCity(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.purchasing.tables.vVendor.vVendor.City, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "City", nullable = false, length = 30) + public java.lang.String getCity() { + return getValue(org.jooq.examples.sqlserver.adventureworks.purchasing.tables.vVendor.vVendor.City); + } + + /** + * An uncommented item + */ + public void setStateProvinceName(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.purchasing.tables.vVendor.vVendor.StateProvinceName, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "StateProvinceName", nullable = false, length = 50) + public java.lang.String getStateProvinceName() { + return getValue(org.jooq.examples.sqlserver.adventureworks.purchasing.tables.vVendor.vVendor.StateProvinceName); + } + + /** + * An uncommented item + */ + public void setPostalCode(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.purchasing.tables.vVendor.vVendor.PostalCode, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "PostalCode", nullable = false, length = 15) + public java.lang.String getPostalCode() { + return getValue(org.jooq.examples.sqlserver.adventureworks.purchasing.tables.vVendor.vVendor.PostalCode); + } + + /** + * An uncommented item + */ + public void setCountryRegionName(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.purchasing.tables.vVendor.vVendor.CountryRegionName, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "CountryRegionName", nullable = false, length = 50) + public java.lang.String getCountryRegionName() { + return getValue(org.jooq.examples.sqlserver.adventureworks.purchasing.tables.vVendor.vVendor.CountryRegionName); + } + + /** + * Create a detached vVendor + */ + public vVendor() { + super(org.jooq.examples.sqlserver.adventureworks.purchasing.tables.vVendor.vVendor); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/purchasing/tables/vVendor.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/purchasing/tables/vVendor.java new file mode 100644 index 00000000000..484680212cf --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/purchasing/tables/vVendor.java @@ -0,0 +1,128 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.purchasing.tables; + +/** + * This class is generated by jOOQ. + */ +public class vVendor extends org.jooq.impl.TableImpl { + + private static final long serialVersionUID = 862626281; + + /** + * The singleton instance of Purchasing.vVendor + */ + public static final org.jooq.examples.sqlserver.adventureworks.purchasing.tables.vVendor vVendor = new org.jooq.examples.sqlserver.adventureworks.purchasing.tables.vVendor(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.examples.sqlserver.adventureworks.purchasing.tables.records.vVendor.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + */ + public final org.jooq.TableField VendorID = createField("VendorID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField Name = createField("Name", org.jooq.impl.SQLDataType.NVARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField ContactType = createField("ContactType", org.jooq.impl.SQLDataType.NVARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField Title = createField("Title", org.jooq.impl.SQLDataType.NVARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField FirstName = createField("FirstName", org.jooq.impl.SQLDataType.NVARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField MiddleName = createField("MiddleName", org.jooq.impl.SQLDataType.NVARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField LastName = createField("LastName", org.jooq.impl.SQLDataType.NVARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField Suffix = createField("Suffix", org.jooq.impl.SQLDataType.NVARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField Phone = createField("Phone", org.jooq.impl.SQLDataType.NVARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField EmailAddress = createField("EmailAddress", org.jooq.impl.SQLDataType.NVARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField EmailPromotion = createField("EmailPromotion", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField AddressLine1 = createField("AddressLine1", org.jooq.impl.SQLDataType.NVARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField AddressLine2 = createField("AddressLine2", org.jooq.impl.SQLDataType.NVARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField City = createField("City", org.jooq.impl.SQLDataType.NVARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField StateProvinceName = createField("StateProvinceName", org.jooq.impl.SQLDataType.NVARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField PostalCode = createField("PostalCode", org.jooq.impl.SQLDataType.NVARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField CountryRegionName = createField("CountryRegionName", org.jooq.impl.SQLDataType.NVARCHAR, this); + + public vVendor() { + super("vVendor", org.jooq.examples.sqlserver.adventureworks.purchasing.Purchasing.Purchasing); + } + + public vVendor(java.lang.String alias) { + super(alias, org.jooq.examples.sqlserver.adventureworks.purchasing.Purchasing.Purchasing, org.jooq.examples.sqlserver.adventureworks.purchasing.tables.vVendor.vVendor); + } + + @Override + public org.jooq.examples.sqlserver.adventureworks.purchasing.tables.vVendor as(java.lang.String alias) { + return new org.jooq.examples.sqlserver.adventureworks.purchasing.tables.vVendor(alias); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/sales/Keys.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/sales/Keys.java new file mode 100644 index 00000000000..18d9ba88e3b --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/sales/Keys.java @@ -0,0 +1,95 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.sales; + +/** + * This class is generated by jOOQ. + * + * A class modelling foreign key relationships between tables of the Sales schema + */ +@SuppressWarnings({"unchecked"}) +public class Keys extends org.jooq.impl.AbstractKeys { + + // IDENTITY definitions + public static final org.jooq.Identity IDENTITY_CreditCard = createIdentity(org.jooq.examples.sqlserver.adventureworks.sales.tables.CreditCard.CreditCard, org.jooq.examples.sqlserver.adventureworks.sales.tables.CreditCard.CreditCard.CreditCardID); + public static final org.jooq.Identity IDENTITY_CurrencyRate = createIdentity(org.jooq.examples.sqlserver.adventureworks.sales.tables.CurrencyRate.CurrencyRate, org.jooq.examples.sqlserver.adventureworks.sales.tables.CurrencyRate.CurrencyRate.CurrencyRateID); + public static final org.jooq.Identity IDENTITY_Customer = createIdentity(org.jooq.examples.sqlserver.adventureworks.sales.tables.Customer.Customer, org.jooq.examples.sqlserver.adventureworks.sales.tables.Customer.Customer.CustomerID); + public static final org.jooq.Identity IDENTITY_SalesOrderDetail = createIdentity(org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesOrderDetail.SalesOrderDetail, org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesOrderDetail.SalesOrderDetail.SalesOrderDetailID); + public static final org.jooq.Identity IDENTITY_SalesOrderHeader = createIdentity(org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesOrderHeader.SalesOrderHeader, org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesOrderHeader.SalesOrderHeader.SalesOrderID); + public static final org.jooq.Identity IDENTITY_SalesReason = createIdentity(org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesReason.SalesReason, org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesReason.SalesReason.SalesReasonID); + public static final org.jooq.Identity IDENTITY_SalesTaxRate = createIdentity(org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesTaxRate.SalesTaxRate, org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesTaxRate.SalesTaxRate.SalesTaxRateID); + public static final org.jooq.Identity IDENTITY_SalesTerritory = createIdentity(org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesTerritory.SalesTerritory, org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesTerritory.SalesTerritory.TerritoryID); + public static final org.jooq.Identity IDENTITY_ShoppingCartItem = createIdentity(org.jooq.examples.sqlserver.adventureworks.sales.tables.ShoppingCartItem.ShoppingCartItem, org.jooq.examples.sqlserver.adventureworks.sales.tables.ShoppingCartItem.ShoppingCartItem.ShoppingCartItemID); + public static final org.jooq.Identity IDENTITY_SpecialOffer = createIdentity(org.jooq.examples.sqlserver.adventureworks.sales.tables.SpecialOffer.SpecialOffer, org.jooq.examples.sqlserver.adventureworks.sales.tables.SpecialOffer.SpecialOffer.SpecialOfferID); + + // UNIQUE and PRIMARY KEY definitions + public static final org.jooq.UniqueKey PK_ContactCreditCard_ContactID_CreditCardID = createUniqueKey(org.jooq.examples.sqlserver.adventureworks.sales.tables.ContactCreditCard.ContactCreditCard, org.jooq.examples.sqlserver.adventureworks.sales.tables.ContactCreditCard.ContactCreditCard.ContactID, org.jooq.examples.sqlserver.adventureworks.sales.tables.ContactCreditCard.ContactCreditCard.CreditCardID); + public static final org.jooq.UniqueKey PK_CountryRegionCurrency_CountryRegionCode_CurrencyCode = createUniqueKey(org.jooq.examples.sqlserver.adventureworks.sales.tables.CountryRegionCurrency.CountryRegionCurrency, org.jooq.examples.sqlserver.adventureworks.sales.tables.CountryRegionCurrency.CountryRegionCurrency.CountryRegionCode, org.jooq.examples.sqlserver.adventureworks.sales.tables.CountryRegionCurrency.CountryRegionCurrency.CurrencyCode); + public static final org.jooq.UniqueKey PK_CreditCard_CreditCardID = createUniqueKey(org.jooq.examples.sqlserver.adventureworks.sales.tables.CreditCard.CreditCard, org.jooq.examples.sqlserver.adventureworks.sales.tables.CreditCard.CreditCard.CreditCardID); + public static final org.jooq.UniqueKey PK_Currency_CurrencyCode = createUniqueKey(org.jooq.examples.sqlserver.adventureworks.sales.tables.Currency.Currency, org.jooq.examples.sqlserver.adventureworks.sales.tables.Currency.Currency.CurrencyCode); + public static final org.jooq.UniqueKey PK_CurrencyRate_CurrencyRateID = createUniqueKey(org.jooq.examples.sqlserver.adventureworks.sales.tables.CurrencyRate.CurrencyRate, org.jooq.examples.sqlserver.adventureworks.sales.tables.CurrencyRate.CurrencyRate.CurrencyRateID); + public static final org.jooq.UniqueKey PK_Customer_CustomerID = createUniqueKey(org.jooq.examples.sqlserver.adventureworks.sales.tables.Customer.Customer, org.jooq.examples.sqlserver.adventureworks.sales.tables.Customer.Customer.CustomerID); + public static final org.jooq.UniqueKey PK_CustomerAddress_CustomerID_AddressID = createUniqueKey(org.jooq.examples.sqlserver.adventureworks.sales.tables.CustomerAddress.CustomerAddress, org.jooq.examples.sqlserver.adventureworks.sales.tables.CustomerAddress.CustomerAddress.CustomerID, org.jooq.examples.sqlserver.adventureworks.sales.tables.CustomerAddress.CustomerAddress.AddressID); + public static final org.jooq.UniqueKey PK_Individual_CustomerID = createUniqueKey(org.jooq.examples.sqlserver.adventureworks.sales.tables.Individual.Individual, org.jooq.examples.sqlserver.adventureworks.sales.tables.Individual.Individual.CustomerID); + public static final org.jooq.UniqueKey PK_SalesOrderDetail_SalesOrderID_SalesOrderDetailID = createUniqueKey(org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesOrderDetail.SalesOrderDetail, org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesOrderDetail.SalesOrderDetail.SalesOrderID, org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesOrderDetail.SalesOrderDetail.SalesOrderDetailID); + public static final org.jooq.UniqueKey PK_SalesOrderHeader_SalesOrderID = createUniqueKey(org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesOrderHeader.SalesOrderHeader, org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesOrderHeader.SalesOrderHeader.SalesOrderID); + public static final org.jooq.UniqueKey PK_SalesOrderHeaderSalesReason_SalesOrderID_SalesReasonID = createUniqueKey(org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesOrderHeaderSalesReason.SalesOrderHeaderSalesReason, org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesOrderHeaderSalesReason.SalesOrderHeaderSalesReason.SalesOrderID, org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesOrderHeaderSalesReason.SalesOrderHeaderSalesReason.SalesReasonID); + public static final org.jooq.UniqueKey PK_SalesPerson_SalesPersonID = createUniqueKey(org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesPerson.SalesPerson, org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesPerson.SalesPerson.SalesPersonID); + public static final org.jooq.UniqueKey PK_SalesPersonQuotaHistory_SalesPersonID_QuotaDate = createUniqueKey(org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesPersonQuotaHistory.SalesPersonQuotaHistory, org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesPersonQuotaHistory.SalesPersonQuotaHistory.SalesPersonID, org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesPersonQuotaHistory.SalesPersonQuotaHistory.QuotaDate); + public static final org.jooq.UniqueKey PK_SalesReason_SalesReasonID = createUniqueKey(org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesReason.SalesReason, org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesReason.SalesReason.SalesReasonID); + public static final org.jooq.UniqueKey PK_SalesTaxRate_SalesTaxRateID = createUniqueKey(org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesTaxRate.SalesTaxRate, org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesTaxRate.SalesTaxRate.SalesTaxRateID); + public static final org.jooq.UniqueKey PK_SalesTerritory_TerritoryID = createUniqueKey(org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesTerritory.SalesTerritory, org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesTerritory.SalesTerritory.TerritoryID); + public static final org.jooq.UniqueKey PK_SalesTerritoryHistory_SalesPersonID_StartDate_TerritoryID = createUniqueKey(org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesTerritoryHistory.SalesTerritoryHistory, org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesTerritoryHistory.SalesTerritoryHistory.SalesPersonID, org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesTerritoryHistory.SalesTerritoryHistory.StartDate, org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesTerritoryHistory.SalesTerritoryHistory.TerritoryID); + public static final org.jooq.UniqueKey PK_ShoppingCartItem_ShoppingCartItemID = createUniqueKey(org.jooq.examples.sqlserver.adventureworks.sales.tables.ShoppingCartItem.ShoppingCartItem, org.jooq.examples.sqlserver.adventureworks.sales.tables.ShoppingCartItem.ShoppingCartItem.ShoppingCartItemID); + public static final org.jooq.UniqueKey PK_SpecialOffer_SpecialOfferID = createUniqueKey(org.jooq.examples.sqlserver.adventureworks.sales.tables.SpecialOffer.SpecialOffer, org.jooq.examples.sqlserver.adventureworks.sales.tables.SpecialOffer.SpecialOffer.SpecialOfferID); + public static final org.jooq.UniqueKey PK_SpecialOfferProduct_SpecialOfferID_ProductID = createUniqueKey(org.jooq.examples.sqlserver.adventureworks.sales.tables.SpecialOfferProduct.SpecialOfferProduct, org.jooq.examples.sqlserver.adventureworks.sales.tables.SpecialOfferProduct.SpecialOfferProduct.SpecialOfferID, org.jooq.examples.sqlserver.adventureworks.sales.tables.SpecialOfferProduct.SpecialOfferProduct.ProductID); + public static final org.jooq.UniqueKey PK_Store_CustomerID = createUniqueKey(org.jooq.examples.sqlserver.adventureworks.sales.tables.Store.Store, org.jooq.examples.sqlserver.adventureworks.sales.tables.Store.Store.CustomerID); + public static final org.jooq.UniqueKey PK_StoreContact_CustomerID_ContactID = createUniqueKey(org.jooq.examples.sqlserver.adventureworks.sales.tables.StoreContact.StoreContact, org.jooq.examples.sqlserver.adventureworks.sales.tables.StoreContact.StoreContact.CustomerID, org.jooq.examples.sqlserver.adventureworks.sales.tables.StoreContact.StoreContact.ContactID); + + // FOREIGN KEY definitions + public static final org.jooq.ForeignKey FK_ContactCreditCard_Contact_ContactID = createForeignKey(org.jooq.examples.sqlserver.adventureworks.person.Keys.PK_Contact_ContactID, org.jooq.examples.sqlserver.adventureworks.sales.tables.ContactCreditCard.ContactCreditCard, org.jooq.examples.sqlserver.adventureworks.sales.tables.ContactCreditCard.ContactCreditCard.ContactID); + public static final org.jooq.ForeignKey FK_ContactCreditCard_CreditCard_CreditCardID = createForeignKey(PK_CreditCard_CreditCardID, org.jooq.examples.sqlserver.adventureworks.sales.tables.ContactCreditCard.ContactCreditCard, org.jooq.examples.sqlserver.adventureworks.sales.tables.ContactCreditCard.ContactCreditCard.CreditCardID); + public static final org.jooq.ForeignKey FK_CountryRegionCurrency_CountryRegion_CountryRegionCode = createForeignKey(org.jooq.examples.sqlserver.adventureworks.person.Keys.PK_CountryRegion_CountryRegionCode, org.jooq.examples.sqlserver.adventureworks.sales.tables.CountryRegionCurrency.CountryRegionCurrency, org.jooq.examples.sqlserver.adventureworks.sales.tables.CountryRegionCurrency.CountryRegionCurrency.CountryRegionCode); + public static final org.jooq.ForeignKey FK_CountryRegionCurrency_Currency_CurrencyCode = createForeignKey(PK_Currency_CurrencyCode, org.jooq.examples.sqlserver.adventureworks.sales.tables.CountryRegionCurrency.CountryRegionCurrency, org.jooq.examples.sqlserver.adventureworks.sales.tables.CountryRegionCurrency.CountryRegionCurrency.CurrencyCode); + public static final org.jooq.ForeignKey FK_CurrencyRate_Currency_FromCurrencyCode = createForeignKey(PK_Currency_CurrencyCode, org.jooq.examples.sqlserver.adventureworks.sales.tables.CurrencyRate.CurrencyRate, org.jooq.examples.sqlserver.adventureworks.sales.tables.CurrencyRate.CurrencyRate.FromCurrencyCode); + public static final org.jooq.ForeignKey FK_CurrencyRate_Currency_ToCurrencyCode = createForeignKey(PK_Currency_CurrencyCode, org.jooq.examples.sqlserver.adventureworks.sales.tables.CurrencyRate.CurrencyRate, org.jooq.examples.sqlserver.adventureworks.sales.tables.CurrencyRate.CurrencyRate.ToCurrencyCode); + public static final org.jooq.ForeignKey FK_Customer_SalesTerritory_TerritoryID = createForeignKey(PK_SalesTerritory_TerritoryID, org.jooq.examples.sqlserver.adventureworks.sales.tables.Customer.Customer, org.jooq.examples.sqlserver.adventureworks.sales.tables.Customer.Customer.TerritoryID); + public static final org.jooq.ForeignKey FK_CustomerAddress_Customer_CustomerID = createForeignKey(PK_Customer_CustomerID, org.jooq.examples.sqlserver.adventureworks.sales.tables.CustomerAddress.CustomerAddress, org.jooq.examples.sqlserver.adventureworks.sales.tables.CustomerAddress.CustomerAddress.CustomerID); + public static final org.jooq.ForeignKey FK_CustomerAddress_Address_AddressID = createForeignKey(org.jooq.examples.sqlserver.adventureworks.person.Keys.PK_Address_AddressID, org.jooq.examples.sqlserver.adventureworks.sales.tables.CustomerAddress.CustomerAddress, org.jooq.examples.sqlserver.adventureworks.sales.tables.CustomerAddress.CustomerAddress.AddressID); + public static final org.jooq.ForeignKey FK_CustomerAddress_AddressType_AddressTypeID = createForeignKey(org.jooq.examples.sqlserver.adventureworks.person.Keys.PK_AddressType_AddressTypeID, org.jooq.examples.sqlserver.adventureworks.sales.tables.CustomerAddress.CustomerAddress, org.jooq.examples.sqlserver.adventureworks.sales.tables.CustomerAddress.CustomerAddress.AddressTypeID); + public static final org.jooq.ForeignKey FK_Individual_Customer_CustomerID = createForeignKey(PK_Customer_CustomerID, org.jooq.examples.sqlserver.adventureworks.sales.tables.Individual.Individual, org.jooq.examples.sqlserver.adventureworks.sales.tables.Individual.Individual.CustomerID); + public static final org.jooq.ForeignKey FK_Individual_Contact_ContactID = createForeignKey(org.jooq.examples.sqlserver.adventureworks.person.Keys.PK_Contact_ContactID, org.jooq.examples.sqlserver.adventureworks.sales.tables.Individual.Individual, org.jooq.examples.sqlserver.adventureworks.sales.tables.Individual.Individual.ContactID); + public static final org.jooq.ForeignKey FK_SalesOrderDetail_SalesOrderHeader_SalesOrderID = createForeignKey(PK_SalesOrderHeader_SalesOrderID, org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesOrderDetail.SalesOrderDetail, org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesOrderDetail.SalesOrderDetail.SalesOrderID); + public static final org.jooq.ForeignKey FK_SalesOrderDetail_SpecialOfferProduct_SpecialOfferIDProductID = createForeignKey(PK_SpecialOfferProduct_SpecialOfferID_ProductID, org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesOrderDetail.SalesOrderDetail, org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesOrderDetail.SalesOrderDetail.SpecialOfferID, org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesOrderDetail.SalesOrderDetail.ProductID); + public static final org.jooq.ForeignKey FK_SalesOrderHeader_Customer_CustomerID = createForeignKey(PK_Customer_CustomerID, org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesOrderHeader.SalesOrderHeader, org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesOrderHeader.SalesOrderHeader.CustomerID); + public static final org.jooq.ForeignKey FK_SalesOrderHeader_Contact_ContactID = createForeignKey(org.jooq.examples.sqlserver.adventureworks.person.Keys.PK_Contact_ContactID, org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesOrderHeader.SalesOrderHeader, org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesOrderHeader.SalesOrderHeader.ContactID); + public static final org.jooq.ForeignKey FK_SalesOrderHeader_SalesPerson_SalesPersonID = createForeignKey(PK_SalesPerson_SalesPersonID, org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesOrderHeader.SalesOrderHeader, org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesOrderHeader.SalesOrderHeader.SalesPersonID); + public static final org.jooq.ForeignKey FK_SalesOrderHeader_SalesTerritory_TerritoryID = createForeignKey(PK_SalesTerritory_TerritoryID, org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesOrderHeader.SalesOrderHeader, org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesOrderHeader.SalesOrderHeader.TerritoryID); + public static final org.jooq.ForeignKey FK_SalesOrderHeader_Address_BillToAddressID = createForeignKey(org.jooq.examples.sqlserver.adventureworks.person.Keys.PK_Address_AddressID, org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesOrderHeader.SalesOrderHeader, org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesOrderHeader.SalesOrderHeader.BillToAddressID); + public static final org.jooq.ForeignKey FK_SalesOrderHeader_Address_ShipToAddressID = createForeignKey(org.jooq.examples.sqlserver.adventureworks.person.Keys.PK_Address_AddressID, org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesOrderHeader.SalesOrderHeader, org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesOrderHeader.SalesOrderHeader.ShipToAddressID); + public static final org.jooq.ForeignKey FK_SalesOrderHeader_ShipMethod_ShipMethodID = createForeignKey(org.jooq.examples.sqlserver.adventureworks.purchasing.Keys.PK_ShipMethod_ShipMethodID, org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesOrderHeader.SalesOrderHeader, org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesOrderHeader.SalesOrderHeader.ShipMethodID); + public static final org.jooq.ForeignKey FK_SalesOrderHeader_CreditCard_CreditCardID = createForeignKey(PK_CreditCard_CreditCardID, org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesOrderHeader.SalesOrderHeader, org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesOrderHeader.SalesOrderHeader.CreditCardID); + public static final org.jooq.ForeignKey FK_SalesOrderHeader_CurrencyRate_CurrencyRateID = createForeignKey(PK_CurrencyRate_CurrencyRateID, org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesOrderHeader.SalesOrderHeader, org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesOrderHeader.SalesOrderHeader.CurrencyRateID); + public static final org.jooq.ForeignKey FK_SalesOrderHeaderSalesReason_SalesOrderHeader_SalesOrderID = createForeignKey(PK_SalesOrderHeader_SalesOrderID, org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesOrderHeaderSalesReason.SalesOrderHeaderSalesReason, org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesOrderHeaderSalesReason.SalesOrderHeaderSalesReason.SalesOrderID); + public static final org.jooq.ForeignKey FK_SalesOrderHeaderSalesReason_SalesReason_SalesReasonID = createForeignKey(PK_SalesReason_SalesReasonID, org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesOrderHeaderSalesReason.SalesOrderHeaderSalesReason, org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesOrderHeaderSalesReason.SalesOrderHeaderSalesReason.SalesReasonID); + public static final org.jooq.ForeignKey FK_SalesPerson_Employee_SalesPersonID = createForeignKey(org.jooq.examples.sqlserver.adventureworks.humanresources.Keys.PK_Employee_EmployeeID, org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesPerson.SalesPerson, org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesPerson.SalesPerson.SalesPersonID); + public static final org.jooq.ForeignKey FK_SalesPerson_SalesTerritory_TerritoryID = createForeignKey(PK_SalesTerritory_TerritoryID, org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesPerson.SalesPerson, org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesPerson.SalesPerson.TerritoryID); + public static final org.jooq.ForeignKey FK_SalesPersonQuotaHistory_SalesPerson_SalesPersonID = createForeignKey(PK_SalesPerson_SalesPersonID, org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesPersonQuotaHistory.SalesPersonQuotaHistory, org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesPersonQuotaHistory.SalesPersonQuotaHistory.SalesPersonID); + public static final org.jooq.ForeignKey FK_SalesTaxRate_StateProvince_StateProvinceID = createForeignKey(org.jooq.examples.sqlserver.adventureworks.person.Keys.PK_StateProvince_StateProvinceID, org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesTaxRate.SalesTaxRate, org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesTaxRate.SalesTaxRate.StateProvinceID); + public static final org.jooq.ForeignKey FK_SalesTerritoryHistory_SalesPerson_SalesPersonID = createForeignKey(PK_SalesPerson_SalesPersonID, org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesTerritoryHistory.SalesTerritoryHistory, org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesTerritoryHistory.SalesTerritoryHistory.SalesPersonID); + public static final org.jooq.ForeignKey FK_SalesTerritoryHistory_SalesTerritory_TerritoryID = createForeignKey(PK_SalesTerritory_TerritoryID, org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesTerritoryHistory.SalesTerritoryHistory, org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesTerritoryHistory.SalesTerritoryHistory.TerritoryID); + public static final org.jooq.ForeignKey FK_ShoppingCartItem_Product_ProductID = createForeignKey(org.jooq.examples.sqlserver.adventureworks.production.Keys.PK_Product_ProductID, org.jooq.examples.sqlserver.adventureworks.sales.tables.ShoppingCartItem.ShoppingCartItem, org.jooq.examples.sqlserver.adventureworks.sales.tables.ShoppingCartItem.ShoppingCartItem.ProductID); + public static final org.jooq.ForeignKey FK_SpecialOfferProduct_SpecialOffer_SpecialOfferID = createForeignKey(PK_SpecialOffer_SpecialOfferID, org.jooq.examples.sqlserver.adventureworks.sales.tables.SpecialOfferProduct.SpecialOfferProduct, org.jooq.examples.sqlserver.adventureworks.sales.tables.SpecialOfferProduct.SpecialOfferProduct.SpecialOfferID); + public static final org.jooq.ForeignKey FK_SpecialOfferProduct_Product_ProductID = createForeignKey(org.jooq.examples.sqlserver.adventureworks.production.Keys.PK_Product_ProductID, org.jooq.examples.sqlserver.adventureworks.sales.tables.SpecialOfferProduct.SpecialOfferProduct, org.jooq.examples.sqlserver.adventureworks.sales.tables.SpecialOfferProduct.SpecialOfferProduct.ProductID); + public static final org.jooq.ForeignKey FK_Store_Customer_CustomerID = createForeignKey(PK_Customer_CustomerID, org.jooq.examples.sqlserver.adventureworks.sales.tables.Store.Store, org.jooq.examples.sqlserver.adventureworks.sales.tables.Store.Store.CustomerID); + public static final org.jooq.ForeignKey FK_Store_SalesPerson_SalesPersonID = createForeignKey(PK_SalesPerson_SalesPersonID, org.jooq.examples.sqlserver.adventureworks.sales.tables.Store.Store, org.jooq.examples.sqlserver.adventureworks.sales.tables.Store.Store.SalesPersonID); + public static final org.jooq.ForeignKey FK_StoreContact_Store_CustomerID = createForeignKey(PK_Store_CustomerID, org.jooq.examples.sqlserver.adventureworks.sales.tables.StoreContact.StoreContact, org.jooq.examples.sqlserver.adventureworks.sales.tables.StoreContact.StoreContact.CustomerID); + public static final org.jooq.ForeignKey FK_StoreContact_Contact_ContactID = createForeignKey(org.jooq.examples.sqlserver.adventureworks.person.Keys.PK_Contact_ContactID, org.jooq.examples.sqlserver.adventureworks.sales.tables.StoreContact.StoreContact, org.jooq.examples.sqlserver.adventureworks.sales.tables.StoreContact.StoreContact.ContactID); + public static final org.jooq.ForeignKey FK_StoreContact_ContactType_ContactTypeID = createForeignKey(org.jooq.examples.sqlserver.adventureworks.person.Keys.PK_ContactType_ContactTypeID, org.jooq.examples.sqlserver.adventureworks.sales.tables.StoreContact.StoreContact, org.jooq.examples.sqlserver.adventureworks.sales.tables.StoreContact.StoreContact.ContactTypeID); + + /** + * No instances + */ + private Keys() {} +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/sales/Sales.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/sales/Sales.java new file mode 100644 index 00000000000..cb51bf4e76c --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/sales/Sales.java @@ -0,0 +1,56 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.sales; + +/** + * This class is generated by jOOQ. + */ +public class Sales extends org.jooq.impl.SchemaImpl { + + private static final long serialVersionUID = 326297286; + + /** + * The singleton instance of Sales + */ + public static final Sales Sales = new Sales(); + + /** + * No further instances allowed + */ + private Sales() { + super("Sales"); + } + + @Override + public final java.util.List> getTables() { + return java.util.Arrays.>asList( + org.jooq.examples.sqlserver.adventureworks.sales.tables.ContactCreditCard.ContactCreditCard, + org.jooq.examples.sqlserver.adventureworks.sales.tables.CountryRegionCurrency.CountryRegionCurrency, + org.jooq.examples.sqlserver.adventureworks.sales.tables.CreditCard.CreditCard, + org.jooq.examples.sqlserver.adventureworks.sales.tables.Currency.Currency, + org.jooq.examples.sqlserver.adventureworks.sales.tables.CurrencyRate.CurrencyRate, + org.jooq.examples.sqlserver.adventureworks.sales.tables.Customer.Customer, + org.jooq.examples.sqlserver.adventureworks.sales.tables.CustomerAddress.CustomerAddress, + org.jooq.examples.sqlserver.adventureworks.sales.tables.Individual.Individual, + org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesOrderDetail.SalesOrderDetail, + org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesOrderHeader.SalesOrderHeader, + org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesOrderHeaderSalesReason.SalesOrderHeaderSalesReason, + org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesPerson.SalesPerson, + org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesPersonQuotaHistory.SalesPersonQuotaHistory, + org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesReason.SalesReason, + org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesTaxRate.SalesTaxRate, + org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesTerritory.SalesTerritory, + org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesTerritoryHistory.SalesTerritoryHistory, + org.jooq.examples.sqlserver.adventureworks.sales.tables.ShoppingCartItem.ShoppingCartItem, + org.jooq.examples.sqlserver.adventureworks.sales.tables.SpecialOffer.SpecialOffer, + org.jooq.examples.sqlserver.adventureworks.sales.tables.SpecialOfferProduct.SpecialOfferProduct, + org.jooq.examples.sqlserver.adventureworks.sales.tables.Store.Store, + org.jooq.examples.sqlserver.adventureworks.sales.tables.StoreContact.StoreContact, + org.jooq.examples.sqlserver.adventureworks.sales.tables.vIndividualCustomer.vIndividualCustomer, + org.jooq.examples.sqlserver.adventureworks.sales.tables.vIndividualDemographics.vIndividualDemographics, + org.jooq.examples.sqlserver.adventureworks.sales.tables.vSalesPerson.vSalesPerson, + org.jooq.examples.sqlserver.adventureworks.sales.tables.vSalesPersonSalesByFiscalYears.vSalesPersonSalesByFiscalYears, + org.jooq.examples.sqlserver.adventureworks.sales.tables.vStoreWithDemographics.vStoreWithDemographics); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/sales/SalesFactory.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/sales/SalesFactory.java new file mode 100644 index 00000000000..295c6524bf5 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/sales/SalesFactory.java @@ -0,0 +1,41 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.sales; + +/** + * This class is generated by jOOQ. + */ +public class SalesFactory extends org.jooq.util.sqlserver.SQLServerFactory { + + private static final long serialVersionUID = -126533258; + + /** + * Create a factory with a connection + * + * @param connection The connection to use with objects created from this factory + */ + public SalesFactory(java.sql.Connection connection) { + super(connection); + } + + /** + * Create a factory with a connection and a schema mapping + * + * @deprecated - 2.0.5 - Use {@link #SalesFactory(java.sql.Connection, org.jooq.conf.Settings)} instead + */ + @Deprecated + public SalesFactory(java.sql.Connection connection, org.jooq.SchemaMapping mapping) { + super(connection, mapping); + } + + /** + * Create a factory with a connection and some settings + * + * @param connection The connection to use with objects created from this factory + * @param settings The settings to apply to objects created from this factory + */ + public SalesFactory(java.sql.Connection connection, org.jooq.conf.Settings settings) { + super(connection, settings); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/sales/Tables.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/sales/Tables.java new file mode 100644 index 00000000000..01f0c14567c --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/sales/Tables.java @@ -0,0 +1,152 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.sales; + +/** + * This class is generated by jOOQ. + * + * Convenience access to all tables in Sales + */ +public final class Tables { + + /** + * The table Sales.ContactCreditCard + */ + public static org.jooq.examples.sqlserver.adventureworks.sales.tables.ContactCreditCard ContactCreditCard = org.jooq.examples.sqlserver.adventureworks.sales.tables.ContactCreditCard.ContactCreditCard; + + /** + * The table Sales.CountryRegionCurrency + */ + public static org.jooq.examples.sqlserver.adventureworks.sales.tables.CountryRegionCurrency CountryRegionCurrency = org.jooq.examples.sqlserver.adventureworks.sales.tables.CountryRegionCurrency.CountryRegionCurrency; + + /** + * The table Sales.CreditCard + */ + public static org.jooq.examples.sqlserver.adventureworks.sales.tables.CreditCard CreditCard = org.jooq.examples.sqlserver.adventureworks.sales.tables.CreditCard.CreditCard; + + /** + * The table Sales.Currency + */ + public static org.jooq.examples.sqlserver.adventureworks.sales.tables.Currency Currency = org.jooq.examples.sqlserver.adventureworks.sales.tables.Currency.Currency; + + /** + * The table Sales.CurrencyRate + */ + public static org.jooq.examples.sqlserver.adventureworks.sales.tables.CurrencyRate CurrencyRate = org.jooq.examples.sqlserver.adventureworks.sales.tables.CurrencyRate.CurrencyRate; + + /** + * The table Sales.Customer + */ + public static org.jooq.examples.sqlserver.adventureworks.sales.tables.Customer Customer = org.jooq.examples.sqlserver.adventureworks.sales.tables.Customer.Customer; + + /** + * The table Sales.CustomerAddress + */ + public static org.jooq.examples.sqlserver.adventureworks.sales.tables.CustomerAddress CustomerAddress = org.jooq.examples.sqlserver.adventureworks.sales.tables.CustomerAddress.CustomerAddress; + + /** + * The table Sales.Individual + */ + public static org.jooq.examples.sqlserver.adventureworks.sales.tables.Individual Individual = org.jooq.examples.sqlserver.adventureworks.sales.tables.Individual.Individual; + + /** + * The table Sales.SalesOrderDetail + */ + public static org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesOrderDetail SalesOrderDetail = org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesOrderDetail.SalesOrderDetail; + + /** + * The table Sales.SalesOrderHeader + */ + public static org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesOrderHeader SalesOrderHeader = org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesOrderHeader.SalesOrderHeader; + + /** + * The table Sales.SalesOrderHeaderSalesReason + */ + public static org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesOrderHeaderSalesReason SalesOrderHeaderSalesReason = org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesOrderHeaderSalesReason.SalesOrderHeaderSalesReason; + + /** + * The table Sales.SalesPerson + */ + public static org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesPerson SalesPerson = org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesPerson.SalesPerson; + + /** + * The table Sales.SalesPersonQuotaHistory + */ + public static org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesPersonQuotaHistory SalesPersonQuotaHistory = org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesPersonQuotaHistory.SalesPersonQuotaHistory; + + /** + * The table Sales.SalesReason + */ + public static org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesReason SalesReason = org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesReason.SalesReason; + + /** + * The table Sales.SalesTaxRate + */ + public static org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesTaxRate SalesTaxRate = org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesTaxRate.SalesTaxRate; + + /** + * The table Sales.SalesTerritory + */ + public static org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesTerritory SalesTerritory = org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesTerritory.SalesTerritory; + + /** + * The table Sales.SalesTerritoryHistory + */ + public static org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesTerritoryHistory SalesTerritoryHistory = org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesTerritoryHistory.SalesTerritoryHistory; + + /** + * The table Sales.ShoppingCartItem + */ + public static org.jooq.examples.sqlserver.adventureworks.sales.tables.ShoppingCartItem ShoppingCartItem = org.jooq.examples.sqlserver.adventureworks.sales.tables.ShoppingCartItem.ShoppingCartItem; + + /** + * The table Sales.SpecialOffer + */ + public static org.jooq.examples.sqlserver.adventureworks.sales.tables.SpecialOffer SpecialOffer = org.jooq.examples.sqlserver.adventureworks.sales.tables.SpecialOffer.SpecialOffer; + + /** + * The table Sales.SpecialOfferProduct + */ + public static org.jooq.examples.sqlserver.adventureworks.sales.tables.SpecialOfferProduct SpecialOfferProduct = org.jooq.examples.sqlserver.adventureworks.sales.tables.SpecialOfferProduct.SpecialOfferProduct; + + /** + * The table Sales.Store + */ + public static org.jooq.examples.sqlserver.adventureworks.sales.tables.Store Store = org.jooq.examples.sqlserver.adventureworks.sales.tables.Store.Store; + + /** + * The table Sales.StoreContact + */ + public static org.jooq.examples.sqlserver.adventureworks.sales.tables.StoreContact StoreContact = org.jooq.examples.sqlserver.adventureworks.sales.tables.StoreContact.StoreContact; + + /** + * The table Sales.vIndividualCustomer + */ + public static org.jooq.examples.sqlserver.adventureworks.sales.tables.vIndividualCustomer vIndividualCustomer = org.jooq.examples.sqlserver.adventureworks.sales.tables.vIndividualCustomer.vIndividualCustomer; + + /** + * The table Sales.vIndividualDemographics + */ + public static org.jooq.examples.sqlserver.adventureworks.sales.tables.vIndividualDemographics vIndividualDemographics = org.jooq.examples.sqlserver.adventureworks.sales.tables.vIndividualDemographics.vIndividualDemographics; + + /** + * The table Sales.vSalesPerson + */ + public static org.jooq.examples.sqlserver.adventureworks.sales.tables.vSalesPerson vSalesPerson = org.jooq.examples.sqlserver.adventureworks.sales.tables.vSalesPerson.vSalesPerson; + + /** + * The table Sales.vSalesPersonSalesByFiscalYears + */ + public static org.jooq.examples.sqlserver.adventureworks.sales.tables.vSalesPersonSalesByFiscalYears vSalesPersonSalesByFiscalYears = org.jooq.examples.sqlserver.adventureworks.sales.tables.vSalesPersonSalesByFiscalYears.vSalesPersonSalesByFiscalYears; + + /** + * The table Sales.vStoreWithDemographics + */ + public static org.jooq.examples.sqlserver.adventureworks.sales.tables.vStoreWithDemographics vStoreWithDemographics = org.jooq.examples.sqlserver.adventureworks.sales.tables.vStoreWithDemographics.vStoreWithDemographics; + + /** + * No instances + */ + private Tables() {} +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/sales/tables/ContactCreditCard.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/sales/tables/ContactCreditCard.java new file mode 100644 index 00000000000..7e405ee17f6 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/sales/tables/ContactCreditCard.java @@ -0,0 +1,91 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.sales.tables; + +/** + * This class is generated by jOOQ. + */ +public class ContactCreditCard extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = 1897074008; + + /** + * The singleton instance of Sales.ContactCreditCard + */ + public static final org.jooq.examples.sqlserver.adventureworks.sales.tables.ContactCreditCard ContactCreditCard = new org.jooq.examples.sqlserver.adventureworks.sales.tables.ContactCreditCard(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.examples.sqlserver.adventureworks.sales.tables.records.ContactCreditCard.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT FK_ContactCreditCard_Contact_ContactID
+	 * FOREIGN KEY (ContactID)
+	 * REFERENCES Person.Contact (ContactID)
+	 * 
+ */ + public final org.jooq.TableField ContactID = createField("ContactID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT FK_ContactCreditCard_CreditCard_CreditCardID
+	 * FOREIGN KEY (CreditCardID)
+	 * REFERENCES Sales.CreditCard (CreditCardID)
+	 * 
+ */ + public final org.jooq.TableField CreditCardID = createField("CreditCardID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField ModifiedDate = createField("ModifiedDate", org.jooq.impl.SQLDataType.TIMESTAMP, this); + + public ContactCreditCard() { + super("ContactCreditCard", org.jooq.examples.sqlserver.adventureworks.sales.Sales.Sales); + } + + public ContactCreditCard(java.lang.String alias) { + super(alias, org.jooq.examples.sqlserver.adventureworks.sales.Sales.Sales, org.jooq.examples.sqlserver.adventureworks.sales.tables.ContactCreditCard.ContactCreditCard); + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.examples.sqlserver.adventureworks.sales.Keys.PK_ContactCreditCard_ContactID_CreditCardID; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.examples.sqlserver.adventureworks.sales.Keys.PK_ContactCreditCard_ContactID_CreditCardID); + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getReferences() { + return java.util.Arrays.>asList(org.jooq.examples.sqlserver.adventureworks.sales.Keys.FK_ContactCreditCard_Contact_ContactID, org.jooq.examples.sqlserver.adventureworks.sales.Keys.FK_ContactCreditCard_CreditCard_CreditCardID); + } + + @Override + public org.jooq.examples.sqlserver.adventureworks.sales.tables.ContactCreditCard as(java.lang.String alias) { + return new org.jooq.examples.sqlserver.adventureworks.sales.tables.ContactCreditCard(alias); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/sales/tables/CountryRegionCurrency.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/sales/tables/CountryRegionCurrency.java new file mode 100644 index 00000000000..e4f7045c812 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/sales/tables/CountryRegionCurrency.java @@ -0,0 +1,91 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.sales.tables; + +/** + * This class is generated by jOOQ. + */ +public class CountryRegionCurrency extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = -1868381603; + + /** + * The singleton instance of Sales.CountryRegionCurrency + */ + public static final org.jooq.examples.sqlserver.adventureworks.sales.tables.CountryRegionCurrency CountryRegionCurrency = new org.jooq.examples.sqlserver.adventureworks.sales.tables.CountryRegionCurrency(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.examples.sqlserver.adventureworks.sales.tables.records.CountryRegionCurrency.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT FK_CountryRegionCurrency_CountryRegion_CountryRegionCode
+	 * FOREIGN KEY (CountryRegionCode)
+	 * REFERENCES Person.CountryRegion (CountryRegionCode)
+	 * 
+ */ + public final org.jooq.TableField CountryRegionCode = createField("CountryRegionCode", org.jooq.impl.SQLDataType.NVARCHAR, this); + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT FK_CountryRegionCurrency_Currency_CurrencyCode
+	 * FOREIGN KEY (CurrencyCode)
+	 * REFERENCES Sales.Currency (CurrencyCode)
+	 * 
+ */ + public final org.jooq.TableField CurrencyCode = createField("CurrencyCode", org.jooq.impl.SQLDataType.NCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField ModifiedDate = createField("ModifiedDate", org.jooq.impl.SQLDataType.TIMESTAMP, this); + + public CountryRegionCurrency() { + super("CountryRegionCurrency", org.jooq.examples.sqlserver.adventureworks.sales.Sales.Sales); + } + + public CountryRegionCurrency(java.lang.String alias) { + super(alias, org.jooq.examples.sqlserver.adventureworks.sales.Sales.Sales, org.jooq.examples.sqlserver.adventureworks.sales.tables.CountryRegionCurrency.CountryRegionCurrency); + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.examples.sqlserver.adventureworks.sales.Keys.PK_CountryRegionCurrency_CountryRegionCode_CurrencyCode; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.examples.sqlserver.adventureworks.sales.Keys.PK_CountryRegionCurrency_CountryRegionCode_CurrencyCode); + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getReferences() { + return java.util.Arrays.>asList(org.jooq.examples.sqlserver.adventureworks.sales.Keys.FK_CountryRegionCurrency_CountryRegion_CountryRegionCode, org.jooq.examples.sqlserver.adventureworks.sales.Keys.FK_CountryRegionCurrency_Currency_CurrencyCode); + } + + @Override + public org.jooq.examples.sqlserver.adventureworks.sales.tables.CountryRegionCurrency as(java.lang.String alias) { + return new org.jooq.examples.sqlserver.adventureworks.sales.tables.CountryRegionCurrency(alias); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/sales/tables/CreditCard.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/sales/tables/CreditCard.java new file mode 100644 index 00000000000..3bbe6a62465 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/sales/tables/CreditCard.java @@ -0,0 +1,91 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.sales.tables; + +/** + * This class is generated by jOOQ. + */ +public class CreditCard extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = -1408269856; + + /** + * The singleton instance of Sales.CreditCard + */ + public static final org.jooq.examples.sqlserver.adventureworks.sales.tables.CreditCard CreditCard = new org.jooq.examples.sqlserver.adventureworks.sales.tables.CreditCard(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.examples.sqlserver.adventureworks.sales.tables.records.CreditCard.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final org.jooq.TableField CreditCardID = createField("CreditCardID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField CardType = createField("CardType", org.jooq.impl.SQLDataType.NVARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField CardNumber = createField("CardNumber", org.jooq.impl.SQLDataType.NVARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField ExpMonth = createField("ExpMonth", org.jooq.impl.SQLDataType.TINYINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField ExpYear = createField("ExpYear", org.jooq.impl.SQLDataType.SMALLINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField ModifiedDate = createField("ModifiedDate", org.jooq.impl.SQLDataType.TIMESTAMP, this); + + public CreditCard() { + super("CreditCard", org.jooq.examples.sqlserver.adventureworks.sales.Sales.Sales); + } + + public CreditCard(java.lang.String alias) { + super(alias, org.jooq.examples.sqlserver.adventureworks.sales.Sales.Sales, org.jooq.examples.sqlserver.adventureworks.sales.tables.CreditCard.CreditCard); + } + + @Override + public org.jooq.Identity getIdentity() { + return org.jooq.examples.sqlserver.adventureworks.sales.Keys.IDENTITY_CreditCard; + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.examples.sqlserver.adventureworks.sales.Keys.PK_CreditCard_CreditCardID; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.examples.sqlserver.adventureworks.sales.Keys.PK_CreditCard_CreditCardID); + } + + @Override + public org.jooq.examples.sqlserver.adventureworks.sales.tables.CreditCard as(java.lang.String alias) { + return new org.jooq.examples.sqlserver.adventureworks.sales.tables.CreditCard(alias); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/sales/tables/Currency.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/sales/tables/Currency.java new file mode 100644 index 00000000000..2cf6698c9e4 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/sales/tables/Currency.java @@ -0,0 +1,71 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.sales.tables; + +/** + * This class is generated by jOOQ. + */ +public class Currency extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = -696662017; + + /** + * The singleton instance of Sales.Currency + */ + public static final org.jooq.examples.sqlserver.adventureworks.sales.tables.Currency Currency = new org.jooq.examples.sqlserver.adventureworks.sales.tables.Currency(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.examples.sqlserver.adventureworks.sales.tables.records.Currency.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final org.jooq.TableField CurrencyCode = createField("CurrencyCode", org.jooq.impl.SQLDataType.NCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField Name = createField("Name", org.jooq.impl.SQLDataType.NVARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField ModifiedDate = createField("ModifiedDate", org.jooq.impl.SQLDataType.TIMESTAMP, this); + + public Currency() { + super("Currency", org.jooq.examples.sqlserver.adventureworks.sales.Sales.Sales); + } + + public Currency(java.lang.String alias) { + super(alias, org.jooq.examples.sqlserver.adventureworks.sales.Sales.Sales, org.jooq.examples.sqlserver.adventureworks.sales.tables.Currency.Currency); + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.examples.sqlserver.adventureworks.sales.Keys.PK_Currency_CurrencyCode; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.examples.sqlserver.adventureworks.sales.Keys.PK_Currency_CurrencyCode); + } + + @Override + public org.jooq.examples.sqlserver.adventureworks.sales.tables.Currency as(java.lang.String alias) { + return new org.jooq.examples.sqlserver.adventureworks.sales.tables.Currency(alias); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/sales/tables/CurrencyRate.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/sales/tables/CurrencyRate.java new file mode 100644 index 00000000000..48800b35b6e --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/sales/tables/CurrencyRate.java @@ -0,0 +1,114 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.sales.tables; + +/** + * This class is generated by jOOQ. + */ +public class CurrencyRate extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = 1572375373; + + /** + * The singleton instance of Sales.CurrencyRate + */ + public static final org.jooq.examples.sqlserver.adventureworks.sales.tables.CurrencyRate CurrencyRate = new org.jooq.examples.sqlserver.adventureworks.sales.tables.CurrencyRate(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.examples.sqlserver.adventureworks.sales.tables.records.CurrencyRate.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final org.jooq.TableField CurrencyRateID = createField("CurrencyRateID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField CurrencyRateDate = createField("CurrencyRateDate", org.jooq.impl.SQLDataType.TIMESTAMP, this); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_CurrencyRate_Currency_FromCurrencyCode
+	 * FOREIGN KEY (FromCurrencyCode)
+	 * REFERENCES Sales.Currency (CurrencyCode)
+	 * 
+ */ + public final org.jooq.TableField FromCurrencyCode = createField("FromCurrencyCode", org.jooq.impl.SQLDataType.NCHAR, this); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_CurrencyRate_Currency_ToCurrencyCode
+	 * FOREIGN KEY (ToCurrencyCode)
+	 * REFERENCES Sales.Currency (CurrencyCode)
+	 * 
+ */ + public final org.jooq.TableField ToCurrencyCode = createField("ToCurrencyCode", org.jooq.impl.SQLDataType.NCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField AverageRate = createField("AverageRate", org.jooq.impl.SQLDataType.NUMERIC, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField EndOfDayRate = createField("EndOfDayRate", org.jooq.impl.SQLDataType.NUMERIC, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField ModifiedDate = createField("ModifiedDate", org.jooq.impl.SQLDataType.TIMESTAMP, this); + + public CurrencyRate() { + super("CurrencyRate", org.jooq.examples.sqlserver.adventureworks.sales.Sales.Sales); + } + + public CurrencyRate(java.lang.String alias) { + super(alias, org.jooq.examples.sqlserver.adventureworks.sales.Sales.Sales, org.jooq.examples.sqlserver.adventureworks.sales.tables.CurrencyRate.CurrencyRate); + } + + @Override + public org.jooq.Identity getIdentity() { + return org.jooq.examples.sqlserver.adventureworks.sales.Keys.IDENTITY_CurrencyRate; + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.examples.sqlserver.adventureworks.sales.Keys.PK_CurrencyRate_CurrencyRateID; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.examples.sqlserver.adventureworks.sales.Keys.PK_CurrencyRate_CurrencyRateID); + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getReferences() { + return java.util.Arrays.>asList(org.jooq.examples.sqlserver.adventureworks.sales.Keys.FK_CurrencyRate_Currency_FromCurrencyCode, org.jooq.examples.sqlserver.adventureworks.sales.Keys.FK_CurrencyRate_Currency_ToCurrencyCode); + } + + @Override + public org.jooq.examples.sqlserver.adventureworks.sales.tables.CurrencyRate as(java.lang.String alias) { + return new org.jooq.examples.sqlserver.adventureworks.sales.tables.CurrencyRate(alias); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/sales/tables/Customer.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/sales/tables/Customer.java new file mode 100644 index 00000000000..2916e306a5d --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/sales/tables/Customer.java @@ -0,0 +1,103 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.sales.tables; + +/** + * This class is generated by jOOQ. + */ +public class Customer extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = 2042351195; + + /** + * The singleton instance of Sales.Customer + */ + public static final org.jooq.examples.sqlserver.adventureworks.sales.tables.Customer Customer = new org.jooq.examples.sqlserver.adventureworks.sales.tables.Customer(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.examples.sqlserver.adventureworks.sales.tables.records.Customer.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final org.jooq.TableField CustomerID = createField("CustomerID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_Customer_SalesTerritory_TerritoryID
+	 * FOREIGN KEY (TerritoryID)
+	 * REFERENCES Sales.SalesTerritory (TerritoryID)
+	 * 
+ */ + public final org.jooq.TableField TerritoryID = createField("TerritoryID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField AccountNumber = createField("AccountNumber", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField CustomerType = createField("CustomerType", org.jooq.impl.SQLDataType.NCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField rowguid = createField("rowguid", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField ModifiedDate = createField("ModifiedDate", org.jooq.impl.SQLDataType.TIMESTAMP, this); + + public Customer() { + super("Customer", org.jooq.examples.sqlserver.adventureworks.sales.Sales.Sales); + } + + public Customer(java.lang.String alias) { + super(alias, org.jooq.examples.sqlserver.adventureworks.sales.Sales.Sales, org.jooq.examples.sqlserver.adventureworks.sales.tables.Customer.Customer); + } + + @Override + public org.jooq.Identity getIdentity() { + return org.jooq.examples.sqlserver.adventureworks.sales.Keys.IDENTITY_Customer; + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.examples.sqlserver.adventureworks.sales.Keys.PK_Customer_CustomerID; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.examples.sqlserver.adventureworks.sales.Keys.PK_Customer_CustomerID); + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getReferences() { + return java.util.Arrays.>asList(org.jooq.examples.sqlserver.adventureworks.sales.Keys.FK_Customer_SalesTerritory_TerritoryID); + } + + @Override + public org.jooq.examples.sqlserver.adventureworks.sales.tables.Customer as(java.lang.String alias) { + return new org.jooq.examples.sqlserver.adventureworks.sales.tables.Customer(alias); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/sales/tables/CustomerAddress.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/sales/tables/CustomerAddress.java new file mode 100644 index 00000000000..1c704a7e8a4 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/sales/tables/CustomerAddress.java @@ -0,0 +1,107 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.sales.tables; + +/** + * This class is generated by jOOQ. + */ +public class CustomerAddress extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = 1481883681; + + /** + * The singleton instance of Sales.CustomerAddress + */ + public static final org.jooq.examples.sqlserver.adventureworks.sales.tables.CustomerAddress CustomerAddress = new org.jooq.examples.sqlserver.adventureworks.sales.tables.CustomerAddress(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.examples.sqlserver.adventureworks.sales.tables.records.CustomerAddress.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT FK_CustomerAddress_Customer_CustomerID
+	 * FOREIGN KEY (CustomerID)
+	 * REFERENCES Sales.Customer (CustomerID)
+	 * 
+ */ + public final org.jooq.TableField CustomerID = createField("CustomerID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT FK_CustomerAddress_Address_AddressID
+	 * FOREIGN KEY (AddressID)
+	 * REFERENCES Person.Address (AddressID)
+	 * 
+ */ + public final org.jooq.TableField AddressID = createField("AddressID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_CustomerAddress_AddressType_AddressTypeID
+	 * FOREIGN KEY (AddressTypeID)
+	 * REFERENCES Person.AddressType (AddressTypeID)
+	 * 
+ */ + public final org.jooq.TableField AddressTypeID = createField("AddressTypeID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField rowguid = createField("rowguid", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField ModifiedDate = createField("ModifiedDate", org.jooq.impl.SQLDataType.TIMESTAMP, this); + + public CustomerAddress() { + super("CustomerAddress", org.jooq.examples.sqlserver.adventureworks.sales.Sales.Sales); + } + + public CustomerAddress(java.lang.String alias) { + super(alias, org.jooq.examples.sqlserver.adventureworks.sales.Sales.Sales, org.jooq.examples.sqlserver.adventureworks.sales.tables.CustomerAddress.CustomerAddress); + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.examples.sqlserver.adventureworks.sales.Keys.PK_CustomerAddress_CustomerID_AddressID; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.examples.sqlserver.adventureworks.sales.Keys.PK_CustomerAddress_CustomerID_AddressID); + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getReferences() { + return java.util.Arrays.>asList(org.jooq.examples.sqlserver.adventureworks.sales.Keys.FK_CustomerAddress_Customer_CustomerID, org.jooq.examples.sqlserver.adventureworks.sales.Keys.FK_CustomerAddress_Address_AddressID, org.jooq.examples.sqlserver.adventureworks.sales.Keys.FK_CustomerAddress_AddressType_AddressTypeID); + } + + @Override + public org.jooq.examples.sqlserver.adventureworks.sales.tables.CustomerAddress as(java.lang.String alias) { + return new org.jooq.examples.sqlserver.adventureworks.sales.tables.CustomerAddress(alias); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/sales/tables/Individual.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/sales/tables/Individual.java new file mode 100644 index 00000000000..2dedcf77297 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/sales/tables/Individual.java @@ -0,0 +1,97 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.sales.tables; + +/** + * This class is generated by jOOQ. + */ +public class Individual extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = -957091740; + + /** + * The singleton instance of Sales.Individual + */ + public static final org.jooq.examples.sqlserver.adventureworks.sales.tables.Individual Individual = new org.jooq.examples.sqlserver.adventureworks.sales.tables.Individual(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.examples.sqlserver.adventureworks.sales.tables.records.Individual.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT FK_Individual_Customer_CustomerID
+	 * FOREIGN KEY (CustomerID)
+	 * REFERENCES Sales.Customer (CustomerID)
+	 * 
+ */ + public final org.jooq.TableField CustomerID = createField("CustomerID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_Individual_Contact_ContactID
+	 * FOREIGN KEY (ContactID)
+	 * REFERENCES Person.Contact (ContactID)
+	 * 
+ */ + public final org.jooq.TableField ContactID = createField("ContactID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + * + * The SQL type of this item (xml, ) could not be mapped.
+ * Deserialising this field might not work! + */ + public final org.jooq.TableField Demographics = createField("Demographics", org.jooq.util.sqlserver.SQLServerDataType.getDefaultDataType("xml"), this); + + /** + * An uncommented item + */ + public final org.jooq.TableField ModifiedDate = createField("ModifiedDate", org.jooq.impl.SQLDataType.TIMESTAMP, this); + + public Individual() { + super("Individual", org.jooq.examples.sqlserver.adventureworks.sales.Sales.Sales); + } + + public Individual(java.lang.String alias) { + super(alias, org.jooq.examples.sqlserver.adventureworks.sales.Sales.Sales, org.jooq.examples.sqlserver.adventureworks.sales.tables.Individual.Individual); + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.examples.sqlserver.adventureworks.sales.Keys.PK_Individual_CustomerID; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.examples.sqlserver.adventureworks.sales.Keys.PK_Individual_CustomerID); + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getReferences() { + return java.util.Arrays.>asList(org.jooq.examples.sqlserver.adventureworks.sales.Keys.FK_Individual_Customer_CustomerID, org.jooq.examples.sqlserver.adventureworks.sales.Keys.FK_Individual_Contact_ContactID); + } + + @Override + public org.jooq.examples.sqlserver.adventureworks.sales.tables.Individual as(java.lang.String alias) { + return new org.jooq.examples.sqlserver.adventureworks.sales.tables.Individual(alias); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/sales/tables/SalesOrderDetail.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/sales/tables/SalesOrderDetail.java new file mode 100644 index 00000000000..fb95abe42be --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/sales/tables/SalesOrderDetail.java @@ -0,0 +1,142 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.sales.tables; + +/** + * This class is generated by jOOQ. + */ +public class SalesOrderDetail extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = 1434776431; + + /** + * The singleton instance of Sales.SalesOrderDetail + */ + public static final org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesOrderDetail SalesOrderDetail = new org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesOrderDetail(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.examples.sqlserver.adventureworks.sales.tables.records.SalesOrderDetail.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT FK_SalesOrderDetail_SalesOrderHeader_SalesOrderID
+	 * FOREIGN KEY (SalesOrderID)
+	 * REFERENCES Sales.SalesOrderHeader (SalesOrderID)
+	 * 
+ */ + public final org.jooq.TableField SalesOrderID = createField("SalesOrderID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final org.jooq.TableField SalesOrderDetailID = createField("SalesOrderDetailID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField CarrierTrackingNumber = createField("CarrierTrackingNumber", org.jooq.impl.SQLDataType.NVARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField OrderQty = createField("OrderQty", org.jooq.impl.SQLDataType.SMALLINT, this); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_SalesOrderDetail_SpecialOfferProduct_SpecialOfferIDProductID
+	 * FOREIGN KEY (SpecialOfferID, ProductID)
+	 * REFERENCES Sales.SpecialOfferProduct (SpecialOfferID, ProductID)
+	 * 
+ */ + public final org.jooq.TableField ProductID = createField("ProductID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_SalesOrderDetail_SpecialOfferProduct_SpecialOfferIDProductID
+	 * FOREIGN KEY (SpecialOfferID, ProductID)
+	 * REFERENCES Sales.SpecialOfferProduct (SpecialOfferID, ProductID)
+	 * 
+ */ + public final org.jooq.TableField SpecialOfferID = createField("SpecialOfferID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField UnitPrice = createField("UnitPrice", org.jooq.impl.SQLDataType.NUMERIC, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField UnitPriceDiscount = createField("UnitPriceDiscount", org.jooq.impl.SQLDataType.NUMERIC, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField LineTotal = createField("LineTotal", org.jooq.impl.SQLDataType.NUMERIC, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField rowguid = createField("rowguid", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField ModifiedDate = createField("ModifiedDate", org.jooq.impl.SQLDataType.TIMESTAMP, this); + + public SalesOrderDetail() { + super("SalesOrderDetail", org.jooq.examples.sqlserver.adventureworks.sales.Sales.Sales); + } + + public SalesOrderDetail(java.lang.String alias) { + super(alias, org.jooq.examples.sqlserver.adventureworks.sales.Sales.Sales, org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesOrderDetail.SalesOrderDetail); + } + + @Override + public org.jooq.Identity getIdentity() { + return org.jooq.examples.sqlserver.adventureworks.sales.Keys.IDENTITY_SalesOrderDetail; + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.examples.sqlserver.adventureworks.sales.Keys.PK_SalesOrderDetail_SalesOrderID_SalesOrderDetailID; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.examples.sqlserver.adventureworks.sales.Keys.PK_SalesOrderDetail_SalesOrderID_SalesOrderDetailID); + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getReferences() { + return java.util.Arrays.>asList(org.jooq.examples.sqlserver.adventureworks.sales.Keys.FK_SalesOrderDetail_SalesOrderHeader_SalesOrderID, org.jooq.examples.sqlserver.adventureworks.sales.Keys.FK_SalesOrderDetail_SpecialOfferProduct_SpecialOfferIDProductID); + } + + @Override + public org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesOrderDetail as(java.lang.String alias) { + return new org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesOrderDetail(alias); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/sales/tables/SalesOrderHeader.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/sales/tables/SalesOrderHeader.java new file mode 100644 index 00000000000..a3acda35404 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/sales/tables/SalesOrderHeader.java @@ -0,0 +1,256 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.sales.tables; + +/** + * This class is generated by jOOQ. + */ +public class SalesOrderHeader extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = 566434288; + + /** + * The singleton instance of Sales.SalesOrderHeader + */ + public static final org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesOrderHeader SalesOrderHeader = new org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesOrderHeader(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.examples.sqlserver.adventureworks.sales.tables.records.SalesOrderHeader.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final org.jooq.TableField SalesOrderID = createField("SalesOrderID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField RevisionNumber = createField("RevisionNumber", org.jooq.impl.SQLDataType.TINYINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField OrderDate = createField("OrderDate", org.jooq.impl.SQLDataType.TIMESTAMP, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField DueDate = createField("DueDate", org.jooq.impl.SQLDataType.TIMESTAMP, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField ShipDate = createField("ShipDate", org.jooq.impl.SQLDataType.TIMESTAMP, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField Status = createField("Status", org.jooq.impl.SQLDataType.TINYINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField OnlineOrderFlag = createField("OnlineOrderFlag", org.jooq.impl.SQLDataType.BIT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField SalesOrderNumber = createField("SalesOrderNumber", org.jooq.impl.SQLDataType.NVARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField PurchaseOrderNumber = createField("PurchaseOrderNumber", org.jooq.impl.SQLDataType.NVARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField AccountNumber = createField("AccountNumber", org.jooq.impl.SQLDataType.NVARCHAR, this); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_SalesOrderHeader_Customer_CustomerID
+	 * FOREIGN KEY (CustomerID)
+	 * REFERENCES Sales.Customer (CustomerID)
+	 * 
+ */ + public final org.jooq.TableField CustomerID = createField("CustomerID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_SalesOrderHeader_Contact_ContactID
+	 * FOREIGN KEY (ContactID)
+	 * REFERENCES Person.Contact (ContactID)
+	 * 
+ */ + public final org.jooq.TableField ContactID = createField("ContactID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_SalesOrderHeader_SalesPerson_SalesPersonID
+	 * FOREIGN KEY (SalesPersonID)
+	 * REFERENCES Sales.SalesPerson (SalesPersonID)
+	 * 
+ */ + public final org.jooq.TableField SalesPersonID = createField("SalesPersonID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_SalesOrderHeader_SalesTerritory_TerritoryID
+	 * FOREIGN KEY (TerritoryID)
+	 * REFERENCES Sales.SalesTerritory (TerritoryID)
+	 * 
+ */ + public final org.jooq.TableField TerritoryID = createField("TerritoryID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_SalesOrderHeader_Address_BillToAddressID
+	 * FOREIGN KEY (BillToAddressID)
+	 * REFERENCES Person.Address (AddressID)
+	 * 
+ */ + public final org.jooq.TableField BillToAddressID = createField("BillToAddressID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_SalesOrderHeader_Address_ShipToAddressID
+	 * FOREIGN KEY (ShipToAddressID)
+	 * REFERENCES Person.Address (AddressID)
+	 * 
+ */ + public final org.jooq.TableField ShipToAddressID = createField("ShipToAddressID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_SalesOrderHeader_ShipMethod_ShipMethodID
+	 * FOREIGN KEY (ShipMethodID)
+	 * REFERENCES Purchasing.ShipMethod (ShipMethodID)
+	 * 
+ */ + public final org.jooq.TableField ShipMethodID = createField("ShipMethodID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_SalesOrderHeader_CreditCard_CreditCardID
+	 * FOREIGN KEY (CreditCardID)
+	 * REFERENCES Sales.CreditCard (CreditCardID)
+	 * 
+ */ + public final org.jooq.TableField CreditCardID = createField("CreditCardID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField CreditCardApprovalCode = createField("CreditCardApprovalCode", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_SalesOrderHeader_CurrencyRate_CurrencyRateID
+	 * FOREIGN KEY (CurrencyRateID)
+	 * REFERENCES Sales.CurrencyRate (CurrencyRateID)
+	 * 
+ */ + public final org.jooq.TableField CurrencyRateID = createField("CurrencyRateID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField SubTotal = createField("SubTotal", org.jooq.impl.SQLDataType.NUMERIC, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField TaxAmt = createField("TaxAmt", org.jooq.impl.SQLDataType.NUMERIC, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField Freight = createField("Freight", org.jooq.impl.SQLDataType.NUMERIC, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField TotalDue = createField("TotalDue", org.jooq.impl.SQLDataType.NUMERIC, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField Comment = createField("Comment", org.jooq.impl.SQLDataType.NVARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField rowguid = createField("rowguid", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField ModifiedDate = createField("ModifiedDate", org.jooq.impl.SQLDataType.TIMESTAMP, this); + + public SalesOrderHeader() { + super("SalesOrderHeader", org.jooq.examples.sqlserver.adventureworks.sales.Sales.Sales); + } + + public SalesOrderHeader(java.lang.String alias) { + super(alias, org.jooq.examples.sqlserver.adventureworks.sales.Sales.Sales, org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesOrderHeader.SalesOrderHeader); + } + + @Override + public org.jooq.Identity getIdentity() { + return org.jooq.examples.sqlserver.adventureworks.sales.Keys.IDENTITY_SalesOrderHeader; + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.examples.sqlserver.adventureworks.sales.Keys.PK_SalesOrderHeader_SalesOrderID; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.examples.sqlserver.adventureworks.sales.Keys.PK_SalesOrderHeader_SalesOrderID); + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getReferences() { + return java.util.Arrays.>asList(org.jooq.examples.sqlserver.adventureworks.sales.Keys.FK_SalesOrderHeader_Customer_CustomerID, org.jooq.examples.sqlserver.adventureworks.sales.Keys.FK_SalesOrderHeader_Contact_ContactID, org.jooq.examples.sqlserver.adventureworks.sales.Keys.FK_SalesOrderHeader_SalesPerson_SalesPersonID, org.jooq.examples.sqlserver.adventureworks.sales.Keys.FK_SalesOrderHeader_SalesTerritory_TerritoryID, org.jooq.examples.sqlserver.adventureworks.sales.Keys.FK_SalesOrderHeader_Address_BillToAddressID, org.jooq.examples.sqlserver.adventureworks.sales.Keys.FK_SalesOrderHeader_Address_ShipToAddressID, org.jooq.examples.sqlserver.adventureworks.sales.Keys.FK_SalesOrderHeader_ShipMethod_ShipMethodID, org.jooq.examples.sqlserver.adventureworks.sales.Keys.FK_SalesOrderHeader_CreditCard_CreditCardID, org.jooq.examples.sqlserver.adventureworks.sales.Keys.FK_SalesOrderHeader_CurrencyRate_CurrencyRateID); + } + + @Override + public org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesOrderHeader as(java.lang.String alias) { + return new org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesOrderHeader(alias); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/sales/tables/SalesOrderHeaderSalesReason.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/sales/tables/SalesOrderHeaderSalesReason.java new file mode 100644 index 00000000000..d2a42cfaab4 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/sales/tables/SalesOrderHeaderSalesReason.java @@ -0,0 +1,91 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.sales.tables; + +/** + * This class is generated by jOOQ. + */ +public class SalesOrderHeaderSalesReason extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = -1963349961; + + /** + * The singleton instance of Sales.SalesOrderHeaderSalesReason + */ + public static final org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesOrderHeaderSalesReason SalesOrderHeaderSalesReason = new org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesOrderHeaderSalesReason(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.examples.sqlserver.adventureworks.sales.tables.records.SalesOrderHeaderSalesReason.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT FK_SalesOrderHeaderSalesReason_SalesOrderHeader_SalesOrderID
+	 * FOREIGN KEY (SalesOrderID)
+	 * REFERENCES Sales.SalesOrderHeader (SalesOrderID)
+	 * 
+ */ + public final org.jooq.TableField SalesOrderID = createField("SalesOrderID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT FK_SalesOrderHeaderSalesReason_SalesReason_SalesReasonID
+	 * FOREIGN KEY (SalesReasonID)
+	 * REFERENCES Sales.SalesReason (SalesReasonID)
+	 * 
+ */ + public final org.jooq.TableField SalesReasonID = createField("SalesReasonID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField ModifiedDate = createField("ModifiedDate", org.jooq.impl.SQLDataType.TIMESTAMP, this); + + public SalesOrderHeaderSalesReason() { + super("SalesOrderHeaderSalesReason", org.jooq.examples.sqlserver.adventureworks.sales.Sales.Sales); + } + + public SalesOrderHeaderSalesReason(java.lang.String alias) { + super(alias, org.jooq.examples.sqlserver.adventureworks.sales.Sales.Sales, org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesOrderHeaderSalesReason.SalesOrderHeaderSalesReason); + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.examples.sqlserver.adventureworks.sales.Keys.PK_SalesOrderHeaderSalesReason_SalesOrderID_SalesReasonID; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.examples.sqlserver.adventureworks.sales.Keys.PK_SalesOrderHeaderSalesReason_SalesOrderID_SalesReasonID); + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getReferences() { + return java.util.Arrays.>asList(org.jooq.examples.sqlserver.adventureworks.sales.Keys.FK_SalesOrderHeaderSalesReason_SalesOrderHeader_SalesOrderID, org.jooq.examples.sqlserver.adventureworks.sales.Keys.FK_SalesOrderHeaderSalesReason_SalesReason_SalesReasonID); + } + + @Override + public org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesOrderHeaderSalesReason as(java.lang.String alias) { + return new org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesOrderHeaderSalesReason(alias); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/sales/tables/SalesPerson.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/sales/tables/SalesPerson.java new file mode 100644 index 00000000000..613437c0bd2 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/sales/tables/SalesPerson.java @@ -0,0 +1,119 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.sales.tables; + +/** + * This class is generated by jOOQ. + */ +public class SalesPerson extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = 495214878; + + /** + * The singleton instance of Sales.SalesPerson + */ + public static final org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesPerson SalesPerson = new org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesPerson(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.examples.sqlserver.adventureworks.sales.tables.records.SalesPerson.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT FK_SalesPerson_Employee_SalesPersonID
+	 * FOREIGN KEY (SalesPersonID)
+	 * REFERENCES HumanResources.Employee (EmployeeID)
+	 * 
+ */ + public final org.jooq.TableField SalesPersonID = createField("SalesPersonID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_SalesPerson_SalesTerritory_TerritoryID
+	 * FOREIGN KEY (TerritoryID)
+	 * REFERENCES Sales.SalesTerritory (TerritoryID)
+	 * 
+ */ + public final org.jooq.TableField TerritoryID = createField("TerritoryID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField SalesQuota = createField("SalesQuota", org.jooq.impl.SQLDataType.NUMERIC, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField Bonus = createField("Bonus", org.jooq.impl.SQLDataType.NUMERIC, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField CommissionPct = createField("CommissionPct", org.jooq.impl.SQLDataType.NUMERIC, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField SalesYTD = createField("SalesYTD", org.jooq.impl.SQLDataType.NUMERIC, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField SalesLastYear = createField("SalesLastYear", org.jooq.impl.SQLDataType.NUMERIC, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField rowguid = createField("rowguid", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField ModifiedDate = createField("ModifiedDate", org.jooq.impl.SQLDataType.TIMESTAMP, this); + + public SalesPerson() { + super("SalesPerson", org.jooq.examples.sqlserver.adventureworks.sales.Sales.Sales); + } + + public SalesPerson(java.lang.String alias) { + super(alias, org.jooq.examples.sqlserver.adventureworks.sales.Sales.Sales, org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesPerson.SalesPerson); + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.examples.sqlserver.adventureworks.sales.Keys.PK_SalesPerson_SalesPersonID; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.examples.sqlserver.adventureworks.sales.Keys.PK_SalesPerson_SalesPersonID); + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getReferences() { + return java.util.Arrays.>asList(org.jooq.examples.sqlserver.adventureworks.sales.Keys.FK_SalesPerson_Employee_SalesPersonID, org.jooq.examples.sqlserver.adventureworks.sales.Keys.FK_SalesPerson_SalesTerritory_TerritoryID); + } + + @Override + public org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesPerson as(java.lang.String alias) { + return new org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesPerson(alias); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/sales/tables/SalesPersonQuotaHistory.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/sales/tables/SalesPersonQuotaHistory.java new file mode 100644 index 00000000000..930a00eec7d --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/sales/tables/SalesPersonQuotaHistory.java @@ -0,0 +1,95 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.sales.tables; + +/** + * This class is generated by jOOQ. + */ +public class SalesPersonQuotaHistory extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = -1702813362; + + /** + * The singleton instance of Sales.SalesPersonQuotaHistory + */ + public static final org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesPersonQuotaHistory SalesPersonQuotaHistory = new org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesPersonQuotaHistory(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.examples.sqlserver.adventureworks.sales.tables.records.SalesPersonQuotaHistory.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT FK_SalesPersonQuotaHistory_SalesPerson_SalesPersonID
+	 * FOREIGN KEY (SalesPersonID)
+	 * REFERENCES Sales.SalesPerson (SalesPersonID)
+	 * 
+ */ + public final org.jooq.TableField SalesPersonID = createField("SalesPersonID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final org.jooq.TableField QuotaDate = createField("QuotaDate", org.jooq.impl.SQLDataType.TIMESTAMP, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField SalesQuota = createField("SalesQuota", org.jooq.impl.SQLDataType.NUMERIC, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField rowguid = createField("rowguid", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField ModifiedDate = createField("ModifiedDate", org.jooq.impl.SQLDataType.TIMESTAMP, this); + + public SalesPersonQuotaHistory() { + super("SalesPersonQuotaHistory", org.jooq.examples.sqlserver.adventureworks.sales.Sales.Sales); + } + + public SalesPersonQuotaHistory(java.lang.String alias) { + super(alias, org.jooq.examples.sqlserver.adventureworks.sales.Sales.Sales, org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesPersonQuotaHistory.SalesPersonQuotaHistory); + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.examples.sqlserver.adventureworks.sales.Keys.PK_SalesPersonQuotaHistory_SalesPersonID_QuotaDate; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.examples.sqlserver.adventureworks.sales.Keys.PK_SalesPersonQuotaHistory_SalesPersonID_QuotaDate); + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getReferences() { + return java.util.Arrays.>asList(org.jooq.examples.sqlserver.adventureworks.sales.Keys.FK_SalesPersonQuotaHistory_SalesPerson_SalesPersonID); + } + + @Override + public org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesPersonQuotaHistory as(java.lang.String alias) { + return new org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesPersonQuotaHistory(alias); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/sales/tables/SalesReason.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/sales/tables/SalesReason.java new file mode 100644 index 00000000000..8de81bfd3d9 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/sales/tables/SalesReason.java @@ -0,0 +1,81 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.sales.tables; + +/** + * This class is generated by jOOQ. + */ +public class SalesReason extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = -1308600632; + + /** + * The singleton instance of Sales.SalesReason + */ + public static final org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesReason SalesReason = new org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesReason(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.examples.sqlserver.adventureworks.sales.tables.records.SalesReason.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final org.jooq.TableField SalesReasonID = createField("SalesReasonID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField Name = createField("Name", org.jooq.impl.SQLDataType.NVARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField ReasonType = createField("ReasonType", org.jooq.impl.SQLDataType.NVARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField ModifiedDate = createField("ModifiedDate", org.jooq.impl.SQLDataType.TIMESTAMP, this); + + public SalesReason() { + super("SalesReason", org.jooq.examples.sqlserver.adventureworks.sales.Sales.Sales); + } + + public SalesReason(java.lang.String alias) { + super(alias, org.jooq.examples.sqlserver.adventureworks.sales.Sales.Sales, org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesReason.SalesReason); + } + + @Override + public org.jooq.Identity getIdentity() { + return org.jooq.examples.sqlserver.adventureworks.sales.Keys.IDENTITY_SalesReason; + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.examples.sqlserver.adventureworks.sales.Keys.PK_SalesReason_SalesReasonID; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.examples.sqlserver.adventureworks.sales.Keys.PK_SalesReason_SalesReasonID); + } + + @Override + public org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesReason as(java.lang.String alias) { + return new org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesReason(alias); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/sales/tables/SalesTaxRate.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/sales/tables/SalesTaxRate.java new file mode 100644 index 00000000000..13ce7b40831 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/sales/tables/SalesTaxRate.java @@ -0,0 +1,108 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.sales.tables; + +/** + * This class is generated by jOOQ. + */ +public class SalesTaxRate extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = -1524887464; + + /** + * The singleton instance of Sales.SalesTaxRate + */ + public static final org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesTaxRate SalesTaxRate = new org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesTaxRate(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.examples.sqlserver.adventureworks.sales.tables.records.SalesTaxRate.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final org.jooq.TableField SalesTaxRateID = createField("SalesTaxRateID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_SalesTaxRate_StateProvince_StateProvinceID
+	 * FOREIGN KEY (StateProvinceID)
+	 * REFERENCES Person.StateProvince (StateProvinceID)
+	 * 
+ */ + public final org.jooq.TableField StateProvinceID = createField("StateProvinceID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField TaxType = createField("TaxType", org.jooq.impl.SQLDataType.TINYINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField TaxRate = createField("TaxRate", org.jooq.impl.SQLDataType.NUMERIC, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField Name = createField("Name", org.jooq.impl.SQLDataType.NVARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField rowguid = createField("rowguid", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField ModifiedDate = createField("ModifiedDate", org.jooq.impl.SQLDataType.TIMESTAMP, this); + + public SalesTaxRate() { + super("SalesTaxRate", org.jooq.examples.sqlserver.adventureworks.sales.Sales.Sales); + } + + public SalesTaxRate(java.lang.String alias) { + super(alias, org.jooq.examples.sqlserver.adventureworks.sales.Sales.Sales, org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesTaxRate.SalesTaxRate); + } + + @Override + public org.jooq.Identity getIdentity() { + return org.jooq.examples.sqlserver.adventureworks.sales.Keys.IDENTITY_SalesTaxRate; + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.examples.sqlserver.adventureworks.sales.Keys.PK_SalesTaxRate_SalesTaxRateID; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.examples.sqlserver.adventureworks.sales.Keys.PK_SalesTaxRate_SalesTaxRateID); + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getReferences() { + return java.util.Arrays.>asList(org.jooq.examples.sqlserver.adventureworks.sales.Keys.FK_SalesTaxRate_StateProvince_StateProvinceID); + } + + @Override + public org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesTaxRate as(java.lang.String alias) { + return new org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesTaxRate(alias); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/sales/tables/SalesTerritory.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/sales/tables/SalesTerritory.java new file mode 100644 index 00000000000..c65c4002f47 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/sales/tables/SalesTerritory.java @@ -0,0 +1,111 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.sales.tables; + +/** + * This class is generated by jOOQ. + */ +public class SalesTerritory extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = 1653232774; + + /** + * The singleton instance of Sales.SalesTerritory + */ + public static final org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesTerritory SalesTerritory = new org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesTerritory(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.examples.sqlserver.adventureworks.sales.tables.records.SalesTerritory.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final org.jooq.TableField TerritoryID = createField("TerritoryID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField Name = createField("Name", org.jooq.impl.SQLDataType.NVARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField CountryRegionCode = createField("CountryRegionCode", org.jooq.impl.SQLDataType.NVARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField Group = createField("Group", org.jooq.impl.SQLDataType.NVARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField SalesYTD = createField("SalesYTD", org.jooq.impl.SQLDataType.NUMERIC, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField SalesLastYear = createField("SalesLastYear", org.jooq.impl.SQLDataType.NUMERIC, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField CostYTD = createField("CostYTD", org.jooq.impl.SQLDataType.NUMERIC, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField CostLastYear = createField("CostLastYear", org.jooq.impl.SQLDataType.NUMERIC, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField rowguid = createField("rowguid", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField ModifiedDate = createField("ModifiedDate", org.jooq.impl.SQLDataType.TIMESTAMP, this); + + public SalesTerritory() { + super("SalesTerritory", org.jooq.examples.sqlserver.adventureworks.sales.Sales.Sales); + } + + public SalesTerritory(java.lang.String alias) { + super(alias, org.jooq.examples.sqlserver.adventureworks.sales.Sales.Sales, org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesTerritory.SalesTerritory); + } + + @Override + public org.jooq.Identity getIdentity() { + return org.jooq.examples.sqlserver.adventureworks.sales.Keys.IDENTITY_SalesTerritory; + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.examples.sqlserver.adventureworks.sales.Keys.PK_SalesTerritory_TerritoryID; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.examples.sqlserver.adventureworks.sales.Keys.PK_SalesTerritory_TerritoryID); + } + + @Override + public org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesTerritory as(java.lang.String alias) { + return new org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesTerritory(alias); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/sales/tables/SalesTerritoryHistory.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/sales/tables/SalesTerritoryHistory.java new file mode 100644 index 00000000000..a756298993e --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/sales/tables/SalesTerritoryHistory.java @@ -0,0 +1,108 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.sales.tables; + +/** + * This class is generated by jOOQ. + */ +public class SalesTerritoryHistory extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = 1988976985; + + /** + * The singleton instance of Sales.SalesTerritoryHistory + */ + public static final org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesTerritoryHistory SalesTerritoryHistory = new org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesTerritoryHistory(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.examples.sqlserver.adventureworks.sales.tables.records.SalesTerritoryHistory.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT FK_SalesTerritoryHistory_SalesPerson_SalesPersonID
+	 * FOREIGN KEY (SalesPersonID)
+	 * REFERENCES Sales.SalesPerson (SalesPersonID)
+	 * 
+ */ + public final org.jooq.TableField SalesPersonID = createField("SalesPersonID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT FK_SalesTerritoryHistory_SalesTerritory_TerritoryID
+	 * FOREIGN KEY (TerritoryID)
+	 * REFERENCES Sales.SalesTerritory (TerritoryID)
+	 * 
+ */ + public final org.jooq.TableField TerritoryID = createField("TerritoryID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final org.jooq.TableField StartDate = createField("StartDate", org.jooq.impl.SQLDataType.TIMESTAMP, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField EndDate = createField("EndDate", org.jooq.impl.SQLDataType.TIMESTAMP, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField rowguid = createField("rowguid", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField ModifiedDate = createField("ModifiedDate", org.jooq.impl.SQLDataType.TIMESTAMP, this); + + public SalesTerritoryHistory() { + super("SalesTerritoryHistory", org.jooq.examples.sqlserver.adventureworks.sales.Sales.Sales); + } + + public SalesTerritoryHistory(java.lang.String alias) { + super(alias, org.jooq.examples.sqlserver.adventureworks.sales.Sales.Sales, org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesTerritoryHistory.SalesTerritoryHistory); + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.examples.sqlserver.adventureworks.sales.Keys.PK_SalesTerritoryHistory_SalesPersonID_StartDate_TerritoryID; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.examples.sqlserver.adventureworks.sales.Keys.PK_SalesTerritoryHistory_SalesPersonID_StartDate_TerritoryID); + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getReferences() { + return java.util.Arrays.>asList(org.jooq.examples.sqlserver.adventureworks.sales.Keys.FK_SalesTerritoryHistory_SalesPerson_SalesPersonID, org.jooq.examples.sqlserver.adventureworks.sales.Keys.FK_SalesTerritoryHistory_SalesTerritory_TerritoryID); + } + + @Override + public org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesTerritoryHistory as(java.lang.String alias) { + return new org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesTerritoryHistory(alias); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/sales/tables/ShoppingCartItem.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/sales/tables/ShoppingCartItem.java new file mode 100644 index 00000000000..02cfae51e3c --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/sales/tables/ShoppingCartItem.java @@ -0,0 +1,103 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.sales.tables; + +/** + * This class is generated by jOOQ. + */ +public class ShoppingCartItem extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = -1055336843; + + /** + * The singleton instance of Sales.ShoppingCartItem + */ + public static final org.jooq.examples.sqlserver.adventureworks.sales.tables.ShoppingCartItem ShoppingCartItem = new org.jooq.examples.sqlserver.adventureworks.sales.tables.ShoppingCartItem(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.examples.sqlserver.adventureworks.sales.tables.records.ShoppingCartItem.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final org.jooq.TableField ShoppingCartItemID = createField("ShoppingCartItemID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField ShoppingCartID = createField("ShoppingCartID", org.jooq.impl.SQLDataType.NVARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField Quantity = createField("Quantity", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_ShoppingCartItem_Product_ProductID
+	 * FOREIGN KEY (ProductID)
+	 * REFERENCES Production.Product (ProductID)
+	 * 
+ */ + public final org.jooq.TableField ProductID = createField("ProductID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField DateCreated = createField("DateCreated", org.jooq.impl.SQLDataType.TIMESTAMP, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField ModifiedDate = createField("ModifiedDate", org.jooq.impl.SQLDataType.TIMESTAMP, this); + + public ShoppingCartItem() { + super("ShoppingCartItem", org.jooq.examples.sqlserver.adventureworks.sales.Sales.Sales); + } + + public ShoppingCartItem(java.lang.String alias) { + super(alias, org.jooq.examples.sqlserver.adventureworks.sales.Sales.Sales, org.jooq.examples.sqlserver.adventureworks.sales.tables.ShoppingCartItem.ShoppingCartItem); + } + + @Override + public org.jooq.Identity getIdentity() { + return org.jooq.examples.sqlserver.adventureworks.sales.Keys.IDENTITY_ShoppingCartItem; + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.examples.sqlserver.adventureworks.sales.Keys.PK_ShoppingCartItem_ShoppingCartItemID; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.examples.sqlserver.adventureworks.sales.Keys.PK_ShoppingCartItem_ShoppingCartItemID); + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getReferences() { + return java.util.Arrays.>asList(org.jooq.examples.sqlserver.adventureworks.sales.Keys.FK_ShoppingCartItem_Product_ProductID); + } + + @Override + public org.jooq.examples.sqlserver.adventureworks.sales.tables.ShoppingCartItem as(java.lang.String alias) { + return new org.jooq.examples.sqlserver.adventureworks.sales.tables.ShoppingCartItem(alias); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/sales/tables/SpecialOffer.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/sales/tables/SpecialOffer.java new file mode 100644 index 00000000000..6ff2c71ec19 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/sales/tables/SpecialOffer.java @@ -0,0 +1,116 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.sales.tables; + +/** + * This class is generated by jOOQ. + */ +public class SpecialOffer extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = 710396773; + + /** + * The singleton instance of Sales.SpecialOffer + */ + public static final org.jooq.examples.sqlserver.adventureworks.sales.tables.SpecialOffer SpecialOffer = new org.jooq.examples.sqlserver.adventureworks.sales.tables.SpecialOffer(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.examples.sqlserver.adventureworks.sales.tables.records.SpecialOffer.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final org.jooq.TableField SpecialOfferID = createField("SpecialOfferID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField Description = createField("Description", org.jooq.impl.SQLDataType.NVARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField DiscountPct = createField("DiscountPct", org.jooq.impl.SQLDataType.NUMERIC, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField Type = createField("Type", org.jooq.impl.SQLDataType.NVARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField Category = createField("Category", org.jooq.impl.SQLDataType.NVARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField StartDate = createField("StartDate", org.jooq.impl.SQLDataType.TIMESTAMP, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField EndDate = createField("EndDate", org.jooq.impl.SQLDataType.TIMESTAMP, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField MinQty = createField("MinQty", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField MaxQty = createField("MaxQty", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField rowguid = createField("rowguid", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField ModifiedDate = createField("ModifiedDate", org.jooq.impl.SQLDataType.TIMESTAMP, this); + + public SpecialOffer() { + super("SpecialOffer", org.jooq.examples.sqlserver.adventureworks.sales.Sales.Sales); + } + + public SpecialOffer(java.lang.String alias) { + super(alias, org.jooq.examples.sqlserver.adventureworks.sales.Sales.Sales, org.jooq.examples.sqlserver.adventureworks.sales.tables.SpecialOffer.SpecialOffer); + } + + @Override + public org.jooq.Identity getIdentity() { + return org.jooq.examples.sqlserver.adventureworks.sales.Keys.IDENTITY_SpecialOffer; + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.examples.sqlserver.adventureworks.sales.Keys.PK_SpecialOffer_SpecialOfferID; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.examples.sqlserver.adventureworks.sales.Keys.PK_SpecialOffer_SpecialOfferID); + } + + @Override + public org.jooq.examples.sqlserver.adventureworks.sales.tables.SpecialOffer as(java.lang.String alias) { + return new org.jooq.examples.sqlserver.adventureworks.sales.tables.SpecialOffer(alias); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/sales/tables/SpecialOfferProduct.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/sales/tables/SpecialOfferProduct.java new file mode 100644 index 00000000000..f1ec36cca1b --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/sales/tables/SpecialOfferProduct.java @@ -0,0 +1,96 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.sales.tables; + +/** + * This class is generated by jOOQ. + */ +public class SpecialOfferProduct extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = -468817284; + + /** + * The singleton instance of Sales.SpecialOfferProduct + */ + public static final org.jooq.examples.sqlserver.adventureworks.sales.tables.SpecialOfferProduct SpecialOfferProduct = new org.jooq.examples.sqlserver.adventureworks.sales.tables.SpecialOfferProduct(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.examples.sqlserver.adventureworks.sales.tables.records.SpecialOfferProduct.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT FK_SpecialOfferProduct_SpecialOffer_SpecialOfferID
+	 * FOREIGN KEY (SpecialOfferID)
+	 * REFERENCES Sales.SpecialOffer (SpecialOfferID)
+	 * 
+ */ + public final org.jooq.TableField SpecialOfferID = createField("SpecialOfferID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT FK_SpecialOfferProduct_Product_ProductID
+	 * FOREIGN KEY (ProductID)
+	 * REFERENCES Production.Product (ProductID)
+	 * 
+ */ + public final org.jooq.TableField ProductID = createField("ProductID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField rowguid = createField("rowguid", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField ModifiedDate = createField("ModifiedDate", org.jooq.impl.SQLDataType.TIMESTAMP, this); + + public SpecialOfferProduct() { + super("SpecialOfferProduct", org.jooq.examples.sqlserver.adventureworks.sales.Sales.Sales); + } + + public SpecialOfferProduct(java.lang.String alias) { + super(alias, org.jooq.examples.sqlserver.adventureworks.sales.Sales.Sales, org.jooq.examples.sqlserver.adventureworks.sales.tables.SpecialOfferProduct.SpecialOfferProduct); + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.examples.sqlserver.adventureworks.sales.Keys.PK_SpecialOfferProduct_SpecialOfferID_ProductID; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.examples.sqlserver.adventureworks.sales.Keys.PK_SpecialOfferProduct_SpecialOfferID_ProductID); + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getReferences() { + return java.util.Arrays.>asList(org.jooq.examples.sqlserver.adventureworks.sales.Keys.FK_SpecialOfferProduct_SpecialOffer_SpecialOfferID, org.jooq.examples.sqlserver.adventureworks.sales.Keys.FK_SpecialOfferProduct_Product_ProductID); + } + + @Override + public org.jooq.examples.sqlserver.adventureworks.sales.tables.SpecialOfferProduct as(java.lang.String alias) { + return new org.jooq.examples.sqlserver.adventureworks.sales.tables.SpecialOfferProduct(alias); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/sales/tables/Store.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/sales/tables/Store.java new file mode 100644 index 00000000000..57f65c4401c --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/sales/tables/Store.java @@ -0,0 +1,107 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.sales.tables; + +/** + * This class is generated by jOOQ. + */ +public class Store extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = 1727418198; + + /** + * The singleton instance of Sales.Store + */ + public static final org.jooq.examples.sqlserver.adventureworks.sales.tables.Store Store = new org.jooq.examples.sqlserver.adventureworks.sales.tables.Store(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.examples.sqlserver.adventureworks.sales.tables.records.Store.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT FK_Store_Customer_CustomerID
+	 * FOREIGN KEY (CustomerID)
+	 * REFERENCES Sales.Customer (CustomerID)
+	 * 
+ */ + public final org.jooq.TableField CustomerID = createField("CustomerID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField Name = createField("Name", org.jooq.impl.SQLDataType.NVARCHAR, this); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_Store_SalesPerson_SalesPersonID
+	 * FOREIGN KEY (SalesPersonID)
+	 * REFERENCES Sales.SalesPerson (SalesPersonID)
+	 * 
+ */ + public final org.jooq.TableField SalesPersonID = createField("SalesPersonID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + * + * The SQL type of this item (xml, ) could not be mapped.
+ * Deserialising this field might not work! + */ + public final org.jooq.TableField Demographics = createField("Demographics", org.jooq.util.sqlserver.SQLServerDataType.getDefaultDataType("xml"), this); + + /** + * An uncommented item + */ + public final org.jooq.TableField rowguid = createField("rowguid", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField ModifiedDate = createField("ModifiedDate", org.jooq.impl.SQLDataType.TIMESTAMP, this); + + public Store() { + super("Store", org.jooq.examples.sqlserver.adventureworks.sales.Sales.Sales); + } + + public Store(java.lang.String alias) { + super(alias, org.jooq.examples.sqlserver.adventureworks.sales.Sales.Sales, org.jooq.examples.sqlserver.adventureworks.sales.tables.Store.Store); + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.examples.sqlserver.adventureworks.sales.Keys.PK_Store_CustomerID; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.examples.sqlserver.adventureworks.sales.Keys.PK_Store_CustomerID); + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getReferences() { + return java.util.Arrays.>asList(org.jooq.examples.sqlserver.adventureworks.sales.Keys.FK_Store_Customer_CustomerID, org.jooq.examples.sqlserver.adventureworks.sales.Keys.FK_Store_SalesPerson_SalesPersonID); + } + + @Override + public org.jooq.examples.sqlserver.adventureworks.sales.tables.Store as(java.lang.String alias) { + return new org.jooq.examples.sqlserver.adventureworks.sales.tables.Store(alias); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/sales/tables/StoreContact.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/sales/tables/StoreContact.java new file mode 100644 index 00000000000..a6308e18d1b --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/sales/tables/StoreContact.java @@ -0,0 +1,107 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.sales.tables; + +/** + * This class is generated by jOOQ. + */ +public class StoreContact extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = -1467558388; + + /** + * The singleton instance of Sales.StoreContact + */ + public static final org.jooq.examples.sqlserver.adventureworks.sales.tables.StoreContact StoreContact = new org.jooq.examples.sqlserver.adventureworks.sales.tables.StoreContact(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.examples.sqlserver.adventureworks.sales.tables.records.StoreContact.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT FK_StoreContact_Store_CustomerID
+	 * FOREIGN KEY (CustomerID)
+	 * REFERENCES Sales.Store (CustomerID)
+	 * 
+ */ + public final org.jooq.TableField CustomerID = createField("CustomerID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT FK_StoreContact_Contact_ContactID
+	 * FOREIGN KEY (ContactID)
+	 * REFERENCES Person.Contact (ContactID)
+	 * 
+ */ + public final org.jooq.TableField ContactID = createField("ContactID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_StoreContact_ContactType_ContactTypeID
+	 * FOREIGN KEY (ContactTypeID)
+	 * REFERENCES Person.ContactType (ContactTypeID)
+	 * 
+ */ + public final org.jooq.TableField ContactTypeID = createField("ContactTypeID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField rowguid = createField("rowguid", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField ModifiedDate = createField("ModifiedDate", org.jooq.impl.SQLDataType.TIMESTAMP, this); + + public StoreContact() { + super("StoreContact", org.jooq.examples.sqlserver.adventureworks.sales.Sales.Sales); + } + + public StoreContact(java.lang.String alias) { + super(alias, org.jooq.examples.sqlserver.adventureworks.sales.Sales.Sales, org.jooq.examples.sqlserver.adventureworks.sales.tables.StoreContact.StoreContact); + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.examples.sqlserver.adventureworks.sales.Keys.PK_StoreContact_CustomerID_ContactID; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.examples.sqlserver.adventureworks.sales.Keys.PK_StoreContact_CustomerID_ContactID); + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getReferences() { + return java.util.Arrays.>asList(org.jooq.examples.sqlserver.adventureworks.sales.Keys.FK_StoreContact_Store_CustomerID, org.jooq.examples.sqlserver.adventureworks.sales.Keys.FK_StoreContact_Contact_ContactID, org.jooq.examples.sqlserver.adventureworks.sales.Keys.FK_StoreContact_ContactType_ContactTypeID); + } + + @Override + public org.jooq.examples.sqlserver.adventureworks.sales.tables.StoreContact as(java.lang.String alias) { + return new org.jooq.examples.sqlserver.adventureworks.sales.tables.StoreContact(alias); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/sales/tables/pojos/ContactCreditCard.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/sales/tables/pojos/ContactCreditCard.java new file mode 100644 index 00000000000..ff734e7d903 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/sales/tables/pojos/ContactCreditCard.java @@ -0,0 +1,47 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.sales.tables.pojos; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "ContactCreditCard", schema = "Sales", uniqueConstraints = { + @javax.persistence.UniqueConstraint(columnNames = {"ContactID", "CreditCardID"}) +}) +public class ContactCreditCard implements java.io.Serializable { + + private static final long serialVersionUID = 532311005; + + private java.lang.Integer ContactID; + private java.lang.Integer CreditCardID; + private java.sql.Timestamp ModifiedDate; + + @javax.persistence.Column(name = "ContactID", nullable = false, precision = 10) + public java.lang.Integer getContactID() { + return this.ContactID; + } + + public void setContactID(java.lang.Integer ContactID) { + this.ContactID = ContactID; + } + + @javax.persistence.Column(name = "CreditCardID", nullable = false, precision = 10) + public java.lang.Integer getCreditCardID() { + return this.CreditCardID; + } + + public void setCreditCardID(java.lang.Integer CreditCardID) { + this.CreditCardID = CreditCardID; + } + + @javax.persistence.Column(name = "ModifiedDate", nullable = false) + public java.sql.Timestamp getModifiedDate() { + return this.ModifiedDate; + } + + public void setModifiedDate(java.sql.Timestamp ModifiedDate) { + this.ModifiedDate = ModifiedDate; + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/sales/tables/pojos/CountryRegionCurrency.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/sales/tables/pojos/CountryRegionCurrency.java new file mode 100644 index 00000000000..3ad8d437b37 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/sales/tables/pojos/CountryRegionCurrency.java @@ -0,0 +1,47 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.sales.tables.pojos; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "CountryRegionCurrency", schema = "Sales", uniqueConstraints = { + @javax.persistence.UniqueConstraint(columnNames = {"CountryRegionCode", "CurrencyCode"}) +}) +public class CountryRegionCurrency implements java.io.Serializable { + + private static final long serialVersionUID = 1163629495; + + private java.lang.String CountryRegionCode; + private java.lang.String CurrencyCode; + private java.sql.Timestamp ModifiedDate; + + @javax.persistence.Column(name = "CountryRegionCode", nullable = false, length = 3) + public java.lang.String getCountryRegionCode() { + return this.CountryRegionCode; + } + + public void setCountryRegionCode(java.lang.String CountryRegionCode) { + this.CountryRegionCode = CountryRegionCode; + } + + @javax.persistence.Column(name = "CurrencyCode", nullable = false, length = 3) + public java.lang.String getCurrencyCode() { + return this.CurrencyCode; + } + + public void setCurrencyCode(java.lang.String CurrencyCode) { + this.CurrencyCode = CurrencyCode; + } + + @javax.persistence.Column(name = "ModifiedDate", nullable = false) + public java.sql.Timestamp getModifiedDate() { + return this.ModifiedDate; + } + + public void setModifiedDate(java.sql.Timestamp ModifiedDate) { + this.ModifiedDate = ModifiedDate; + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/sales/tables/pojos/CreditCard.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/sales/tables/pojos/CreditCard.java new file mode 100644 index 00000000000..905cd2724af --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/sales/tables/pojos/CreditCard.java @@ -0,0 +1,76 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.sales.tables.pojos; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "CreditCard", schema = "Sales") +public class CreditCard implements java.io.Serializable { + + private static final long serialVersionUID = 1337536643; + + private java.lang.Integer CreditCardID; + private java.lang.String CardType; + private java.lang.String CardNumber; + private java.lang.Byte ExpMonth; + private java.lang.Short ExpYear; + private java.sql.Timestamp ModifiedDate; + + @javax.persistence.Id + @javax.persistence.Column(name = "CreditCardID", unique = true, nullable = false, precision = 10) + public java.lang.Integer getCreditCardID() { + return this.CreditCardID; + } + + public void setCreditCardID(java.lang.Integer CreditCardID) { + this.CreditCardID = CreditCardID; + } + + @javax.persistence.Column(name = "CardType", nullable = false, length = 50) + public java.lang.String getCardType() { + return this.CardType; + } + + public void setCardType(java.lang.String CardType) { + this.CardType = CardType; + } + + @javax.persistence.Column(name = "CardNumber", nullable = false, length = 25) + public java.lang.String getCardNumber() { + return this.CardNumber; + } + + public void setCardNumber(java.lang.String CardNumber) { + this.CardNumber = CardNumber; + } + + @javax.persistence.Column(name = "ExpMonth", nullable = false, precision = 3) + public java.lang.Byte getExpMonth() { + return this.ExpMonth; + } + + public void setExpMonth(java.lang.Byte ExpMonth) { + this.ExpMonth = ExpMonth; + } + + @javax.persistence.Column(name = "ExpYear", nullable = false, precision = 5) + public java.lang.Short getExpYear() { + return this.ExpYear; + } + + public void setExpYear(java.lang.Short ExpYear) { + this.ExpYear = ExpYear; + } + + @javax.persistence.Column(name = "ModifiedDate", nullable = false) + public java.sql.Timestamp getModifiedDate() { + return this.ModifiedDate; + } + + public void setModifiedDate(java.sql.Timestamp ModifiedDate) { + this.ModifiedDate = ModifiedDate; + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/sales/tables/pojos/Currency.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/sales/tables/pojos/Currency.java new file mode 100644 index 00000000000..7e3fee0c7d3 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/sales/tables/pojos/Currency.java @@ -0,0 +1,46 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.sales.tables.pojos; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "Currency", schema = "Sales") +public class Currency implements java.io.Serializable { + + private static final long serialVersionUID = -1428602621; + + private java.lang.String CurrencyCode; + private java.lang.String Name; + private java.sql.Timestamp ModifiedDate; + + @javax.persistence.Id + @javax.persistence.Column(name = "CurrencyCode", unique = true, nullable = false, length = 3) + public java.lang.String getCurrencyCode() { + return this.CurrencyCode; + } + + public void setCurrencyCode(java.lang.String CurrencyCode) { + this.CurrencyCode = CurrencyCode; + } + + @javax.persistence.Column(name = "Name", nullable = false, length = 50) + public java.lang.String getName() { + return this.Name; + } + + public void setName(java.lang.String Name) { + this.Name = Name; + } + + @javax.persistence.Column(name = "ModifiedDate", nullable = false) + public java.sql.Timestamp getModifiedDate() { + return this.ModifiedDate; + } + + public void setModifiedDate(java.sql.Timestamp ModifiedDate) { + this.ModifiedDate = ModifiedDate; + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/sales/tables/pojos/CurrencyRate.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/sales/tables/pojos/CurrencyRate.java new file mode 100644 index 00000000000..92488c771a8 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/sales/tables/pojos/CurrencyRate.java @@ -0,0 +1,86 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.sales.tables.pojos; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "CurrencyRate", schema = "Sales") +public class CurrencyRate implements java.io.Serializable { + + private static final long serialVersionUID = 2043091641; + + private java.lang.Integer CurrencyRateID; + private java.sql.Timestamp CurrencyRateDate; + private java.lang.String FromCurrencyCode; + private java.lang.String ToCurrencyCode; + private java.math.BigDecimal AverageRate; + private java.math.BigDecimal EndOfDayRate; + private java.sql.Timestamp ModifiedDate; + + @javax.persistence.Id + @javax.persistence.Column(name = "CurrencyRateID", unique = true, nullable = false, precision = 10) + public java.lang.Integer getCurrencyRateID() { + return this.CurrencyRateID; + } + + public void setCurrencyRateID(java.lang.Integer CurrencyRateID) { + this.CurrencyRateID = CurrencyRateID; + } + + @javax.persistence.Column(name = "CurrencyRateDate", nullable = false) + public java.sql.Timestamp getCurrencyRateDate() { + return this.CurrencyRateDate; + } + + public void setCurrencyRateDate(java.sql.Timestamp CurrencyRateDate) { + this.CurrencyRateDate = CurrencyRateDate; + } + + @javax.persistence.Column(name = "FromCurrencyCode", nullable = false, length = 3) + public java.lang.String getFromCurrencyCode() { + return this.FromCurrencyCode; + } + + public void setFromCurrencyCode(java.lang.String FromCurrencyCode) { + this.FromCurrencyCode = FromCurrencyCode; + } + + @javax.persistence.Column(name = "ToCurrencyCode", nullable = false, length = 3) + public java.lang.String getToCurrencyCode() { + return this.ToCurrencyCode; + } + + public void setToCurrencyCode(java.lang.String ToCurrencyCode) { + this.ToCurrencyCode = ToCurrencyCode; + } + + @javax.persistence.Column(name = "AverageRate", nullable = false, precision = 19, scale = 4) + public java.math.BigDecimal getAverageRate() { + return this.AverageRate; + } + + public void setAverageRate(java.math.BigDecimal AverageRate) { + this.AverageRate = AverageRate; + } + + @javax.persistence.Column(name = "EndOfDayRate", nullable = false, precision = 19, scale = 4) + public java.math.BigDecimal getEndOfDayRate() { + return this.EndOfDayRate; + } + + public void setEndOfDayRate(java.math.BigDecimal EndOfDayRate) { + this.EndOfDayRate = EndOfDayRate; + } + + @javax.persistence.Column(name = "ModifiedDate", nullable = false) + public java.sql.Timestamp getModifiedDate() { + return this.ModifiedDate; + } + + public void setModifiedDate(java.sql.Timestamp ModifiedDate) { + this.ModifiedDate = ModifiedDate; + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/sales/tables/pojos/Customer.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/sales/tables/pojos/Customer.java new file mode 100644 index 00000000000..2525bc41293 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/sales/tables/pojos/Customer.java @@ -0,0 +1,76 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.sales.tables.pojos; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "Customer", schema = "Sales") +public class Customer implements java.io.Serializable { + + private static final long serialVersionUID = 372374611; + + private java.lang.Integer CustomerID; + private java.lang.Integer TerritoryID; + private java.lang.String AccountNumber; + private java.lang.String CustomerType; + private java.lang.String rowguid; + private java.sql.Timestamp ModifiedDate; + + @javax.persistence.Id + @javax.persistence.Column(name = "CustomerID", unique = true, nullable = false, precision = 10) + public java.lang.Integer getCustomerID() { + return this.CustomerID; + } + + public void setCustomerID(java.lang.Integer CustomerID) { + this.CustomerID = CustomerID; + } + + @javax.persistence.Column(name = "TerritoryID", precision = 10) + public java.lang.Integer getTerritoryID() { + return this.TerritoryID; + } + + public void setTerritoryID(java.lang.Integer TerritoryID) { + this.TerritoryID = TerritoryID; + } + + @javax.persistence.Column(name = "AccountNumber", nullable = false, length = 10) + public java.lang.String getAccountNumber() { + return this.AccountNumber; + } + + public void setAccountNumber(java.lang.String AccountNumber) { + this.AccountNumber = AccountNumber; + } + + @javax.persistence.Column(name = "CustomerType", nullable = false, length = 1) + public java.lang.String getCustomerType() { + return this.CustomerType; + } + + public void setCustomerType(java.lang.String CustomerType) { + this.CustomerType = CustomerType; + } + + @javax.persistence.Column(name = "rowguid", nullable = false) + public java.lang.String getrowguid() { + return this.rowguid; + } + + public void setrowguid(java.lang.String rowguid) { + this.rowguid = rowguid; + } + + @javax.persistence.Column(name = "ModifiedDate", nullable = false) + public java.sql.Timestamp getModifiedDate() { + return this.ModifiedDate; + } + + public void setModifiedDate(java.sql.Timestamp ModifiedDate) { + this.ModifiedDate = ModifiedDate; + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/sales/tables/pojos/CustomerAddress.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/sales/tables/pojos/CustomerAddress.java new file mode 100644 index 00000000000..2259c5cba50 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/sales/tables/pojos/CustomerAddress.java @@ -0,0 +1,67 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.sales.tables.pojos; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "CustomerAddress", schema = "Sales", uniqueConstraints = { + @javax.persistence.UniqueConstraint(columnNames = {"CustomerID", "AddressID"}) +}) +public class CustomerAddress implements java.io.Serializable { + + private static final long serialVersionUID = 792514133; + + private java.lang.Integer CustomerID; + private java.lang.Integer AddressID; + private java.lang.Integer AddressTypeID; + private java.lang.String rowguid; + private java.sql.Timestamp ModifiedDate; + + @javax.persistence.Column(name = "CustomerID", nullable = false, precision = 10) + public java.lang.Integer getCustomerID() { + return this.CustomerID; + } + + public void setCustomerID(java.lang.Integer CustomerID) { + this.CustomerID = CustomerID; + } + + @javax.persistence.Column(name = "AddressID", nullable = false, precision = 10) + public java.lang.Integer getAddressID() { + return this.AddressID; + } + + public void setAddressID(java.lang.Integer AddressID) { + this.AddressID = AddressID; + } + + @javax.persistence.Column(name = "AddressTypeID", nullable = false, precision = 10) + public java.lang.Integer getAddressTypeID() { + return this.AddressTypeID; + } + + public void setAddressTypeID(java.lang.Integer AddressTypeID) { + this.AddressTypeID = AddressTypeID; + } + + @javax.persistence.Column(name = "rowguid", nullable = false) + public java.lang.String getrowguid() { + return this.rowguid; + } + + public void setrowguid(java.lang.String rowguid) { + this.rowguid = rowguid; + } + + @javax.persistence.Column(name = "ModifiedDate", nullable = false) + public java.sql.Timestamp getModifiedDate() { + return this.ModifiedDate; + } + + public void setModifiedDate(java.sql.Timestamp ModifiedDate) { + this.ModifiedDate = ModifiedDate; + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/sales/tables/pojos/Individual.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/sales/tables/pojos/Individual.java new file mode 100644 index 00000000000..8c960b6c8d8 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/sales/tables/pojos/Individual.java @@ -0,0 +1,56 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.sales.tables.pojos; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "Individual", schema = "Sales") +public class Individual implements java.io.Serializable { + + private static final long serialVersionUID = -474462809; + + private java.lang.Integer CustomerID; + private java.lang.Integer ContactID; + private java.lang.Object Demographics; + private java.sql.Timestamp ModifiedDate; + + @javax.persistence.Id + @javax.persistence.Column(name = "CustomerID", unique = true, nullable = false, precision = 10) + public java.lang.Integer getCustomerID() { + return this.CustomerID; + } + + public void setCustomerID(java.lang.Integer CustomerID) { + this.CustomerID = CustomerID; + } + + @javax.persistence.Column(name = "ContactID", nullable = false, precision = 10) + public java.lang.Integer getContactID() { + return this.ContactID; + } + + public void setContactID(java.lang.Integer ContactID) { + this.ContactID = ContactID; + } + + @javax.persistence.Column(name = "Demographics") + public java.lang.Object getDemographics() { + return this.Demographics; + } + + public void setDemographics(java.lang.Object Demographics) { + this.Demographics = Demographics; + } + + @javax.persistence.Column(name = "ModifiedDate", nullable = false) + public java.sql.Timestamp getModifiedDate() { + return this.ModifiedDate; + } + + public void setModifiedDate(java.sql.Timestamp ModifiedDate) { + this.ModifiedDate = ModifiedDate; + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/sales/tables/pojos/SalesOrderDetail.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/sales/tables/pojos/SalesOrderDetail.java new file mode 100644 index 00000000000..dbc42b3cd13 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/sales/tables/pojos/SalesOrderDetail.java @@ -0,0 +1,127 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.sales.tables.pojos; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "SalesOrderDetail", schema = "Sales", uniqueConstraints = { + @javax.persistence.UniqueConstraint(columnNames = {"SalesOrderID", "SalesOrderDetailID"}) +}) +public class SalesOrderDetail implements java.io.Serializable { + + private static final long serialVersionUID = -1359151138; + + private java.lang.Integer SalesOrderID; + private java.lang.Integer SalesOrderDetailID; + private java.lang.String CarrierTrackingNumber; + private java.lang.Short OrderQty; + private java.lang.Integer ProductID; + private java.lang.Integer SpecialOfferID; + private java.math.BigDecimal UnitPrice; + private java.math.BigDecimal UnitPriceDiscount; + private java.math.BigDecimal LineTotal; + private java.lang.String rowguid; + private java.sql.Timestamp ModifiedDate; + + @javax.persistence.Column(name = "SalesOrderID", nullable = false, precision = 10) + public java.lang.Integer getSalesOrderID() { + return this.SalesOrderID; + } + + public void setSalesOrderID(java.lang.Integer SalesOrderID) { + this.SalesOrderID = SalesOrderID; + } + + @javax.persistence.Column(name = "SalesOrderDetailID", nullable = false, precision = 10) + public java.lang.Integer getSalesOrderDetailID() { + return this.SalesOrderDetailID; + } + + public void setSalesOrderDetailID(java.lang.Integer SalesOrderDetailID) { + this.SalesOrderDetailID = SalesOrderDetailID; + } + + @javax.persistence.Column(name = "CarrierTrackingNumber", length = 25) + public java.lang.String getCarrierTrackingNumber() { + return this.CarrierTrackingNumber; + } + + public void setCarrierTrackingNumber(java.lang.String CarrierTrackingNumber) { + this.CarrierTrackingNumber = CarrierTrackingNumber; + } + + @javax.persistence.Column(name = "OrderQty", nullable = false, precision = 5) + public java.lang.Short getOrderQty() { + return this.OrderQty; + } + + public void setOrderQty(java.lang.Short OrderQty) { + this.OrderQty = OrderQty; + } + + @javax.persistence.Column(name = "ProductID", nullable = false, precision = 10) + public java.lang.Integer getProductID() { + return this.ProductID; + } + + public void setProductID(java.lang.Integer ProductID) { + this.ProductID = ProductID; + } + + @javax.persistence.Column(name = "SpecialOfferID", nullable = false, precision = 10) + public java.lang.Integer getSpecialOfferID() { + return this.SpecialOfferID; + } + + public void setSpecialOfferID(java.lang.Integer SpecialOfferID) { + this.SpecialOfferID = SpecialOfferID; + } + + @javax.persistence.Column(name = "UnitPrice", nullable = false, precision = 19, scale = 4) + public java.math.BigDecimal getUnitPrice() { + return this.UnitPrice; + } + + public void setUnitPrice(java.math.BigDecimal UnitPrice) { + this.UnitPrice = UnitPrice; + } + + @javax.persistence.Column(name = "UnitPriceDiscount", nullable = false, precision = 19, scale = 4) + public java.math.BigDecimal getUnitPriceDiscount() { + return this.UnitPriceDiscount; + } + + public void setUnitPriceDiscount(java.math.BigDecimal UnitPriceDiscount) { + this.UnitPriceDiscount = UnitPriceDiscount; + } + + @javax.persistence.Column(name = "LineTotal", nullable = false, precision = 38, scale = 6) + public java.math.BigDecimal getLineTotal() { + return this.LineTotal; + } + + public void setLineTotal(java.math.BigDecimal LineTotal) { + this.LineTotal = LineTotal; + } + + @javax.persistence.Column(name = "rowguid", nullable = false) + public java.lang.String getrowguid() { + return this.rowguid; + } + + public void setrowguid(java.lang.String rowguid) { + this.rowguid = rowguid; + } + + @javax.persistence.Column(name = "ModifiedDate", nullable = false) + public java.sql.Timestamp getModifiedDate() { + return this.ModifiedDate; + } + + public void setModifiedDate(java.sql.Timestamp ModifiedDate) { + this.ModifiedDate = ModifiedDate; + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/sales/tables/pojos/SalesOrderHeader.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/sales/tables/pojos/SalesOrderHeader.java new file mode 100644 index 00000000000..4c640395d3d --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/sales/tables/pojos/SalesOrderHeader.java @@ -0,0 +1,286 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.sales.tables.pojos; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "SalesOrderHeader", schema = "Sales") +public class SalesOrderHeader implements java.io.Serializable { + + private static final long serialVersionUID = -78270942; + + private java.lang.Integer SalesOrderID; + private java.lang.Byte RevisionNumber; + private java.sql.Timestamp OrderDate; + private java.sql.Timestamp DueDate; + private java.sql.Timestamp ShipDate; + private java.lang.Byte Status; + private java.lang.Boolean OnlineOrderFlag; + private java.lang.String SalesOrderNumber; + private java.lang.String PurchaseOrderNumber; + private java.lang.String AccountNumber; + private java.lang.Integer CustomerID; + private java.lang.Integer ContactID; + private java.lang.Integer SalesPersonID; + private java.lang.Integer TerritoryID; + private java.lang.Integer BillToAddressID; + private java.lang.Integer ShipToAddressID; + private java.lang.Integer ShipMethodID; + private java.lang.Integer CreditCardID; + private java.lang.String CreditCardApprovalCode; + private java.lang.Integer CurrencyRateID; + private java.math.BigDecimal SubTotal; + private java.math.BigDecimal TaxAmt; + private java.math.BigDecimal Freight; + private java.math.BigDecimal TotalDue; + private java.lang.String Comment; + private java.lang.String rowguid; + private java.sql.Timestamp ModifiedDate; + + @javax.persistence.Id + @javax.persistence.Column(name = "SalesOrderID", unique = true, nullable = false, precision = 10) + public java.lang.Integer getSalesOrderID() { + return this.SalesOrderID; + } + + public void setSalesOrderID(java.lang.Integer SalesOrderID) { + this.SalesOrderID = SalesOrderID; + } + + @javax.persistence.Column(name = "RevisionNumber", nullable = false, precision = 3) + public java.lang.Byte getRevisionNumber() { + return this.RevisionNumber; + } + + public void setRevisionNumber(java.lang.Byte RevisionNumber) { + this.RevisionNumber = RevisionNumber; + } + + @javax.persistence.Column(name = "OrderDate", nullable = false) + public java.sql.Timestamp getOrderDate() { + return this.OrderDate; + } + + public void setOrderDate(java.sql.Timestamp OrderDate) { + this.OrderDate = OrderDate; + } + + @javax.persistence.Column(name = "DueDate", nullable = false) + public java.sql.Timestamp getDueDate() { + return this.DueDate; + } + + public void setDueDate(java.sql.Timestamp DueDate) { + this.DueDate = DueDate; + } + + @javax.persistence.Column(name = "ShipDate") + public java.sql.Timestamp getShipDate() { + return this.ShipDate; + } + + public void setShipDate(java.sql.Timestamp ShipDate) { + this.ShipDate = ShipDate; + } + + @javax.persistence.Column(name = "Status", nullable = false, precision = 3) + public java.lang.Byte getStatus() { + return this.Status; + } + + public void setStatus(java.lang.Byte Status) { + this.Status = Status; + } + + @javax.persistence.Column(name = "OnlineOrderFlag", nullable = false) + public java.lang.Boolean getOnlineOrderFlag() { + return this.OnlineOrderFlag; + } + + public void setOnlineOrderFlag(java.lang.Boolean OnlineOrderFlag) { + this.OnlineOrderFlag = OnlineOrderFlag; + } + + @javax.persistence.Column(name = "SalesOrderNumber", nullable = false, length = 25) + public java.lang.String getSalesOrderNumber() { + return this.SalesOrderNumber; + } + + public void setSalesOrderNumber(java.lang.String SalesOrderNumber) { + this.SalesOrderNumber = SalesOrderNumber; + } + + @javax.persistence.Column(name = "PurchaseOrderNumber", length = 25) + public java.lang.String getPurchaseOrderNumber() { + return this.PurchaseOrderNumber; + } + + public void setPurchaseOrderNumber(java.lang.String PurchaseOrderNumber) { + this.PurchaseOrderNumber = PurchaseOrderNumber; + } + + @javax.persistence.Column(name = "AccountNumber", length = 15) + public java.lang.String getAccountNumber() { + return this.AccountNumber; + } + + public void setAccountNumber(java.lang.String AccountNumber) { + this.AccountNumber = AccountNumber; + } + + @javax.persistence.Column(name = "CustomerID", nullable = false, precision = 10) + public java.lang.Integer getCustomerID() { + return this.CustomerID; + } + + public void setCustomerID(java.lang.Integer CustomerID) { + this.CustomerID = CustomerID; + } + + @javax.persistence.Column(name = "ContactID", nullable = false, precision = 10) + public java.lang.Integer getContactID() { + return this.ContactID; + } + + public void setContactID(java.lang.Integer ContactID) { + this.ContactID = ContactID; + } + + @javax.persistence.Column(name = "SalesPersonID", precision = 10) + public java.lang.Integer getSalesPersonID() { + return this.SalesPersonID; + } + + public void setSalesPersonID(java.lang.Integer SalesPersonID) { + this.SalesPersonID = SalesPersonID; + } + + @javax.persistence.Column(name = "TerritoryID", precision = 10) + public java.lang.Integer getTerritoryID() { + return this.TerritoryID; + } + + public void setTerritoryID(java.lang.Integer TerritoryID) { + this.TerritoryID = TerritoryID; + } + + @javax.persistence.Column(name = "BillToAddressID", nullable = false, precision = 10) + public java.lang.Integer getBillToAddressID() { + return this.BillToAddressID; + } + + public void setBillToAddressID(java.lang.Integer BillToAddressID) { + this.BillToAddressID = BillToAddressID; + } + + @javax.persistence.Column(name = "ShipToAddressID", nullable = false, precision = 10) + public java.lang.Integer getShipToAddressID() { + return this.ShipToAddressID; + } + + public void setShipToAddressID(java.lang.Integer ShipToAddressID) { + this.ShipToAddressID = ShipToAddressID; + } + + @javax.persistence.Column(name = "ShipMethodID", nullable = false, precision = 10) + public java.lang.Integer getShipMethodID() { + return this.ShipMethodID; + } + + public void setShipMethodID(java.lang.Integer ShipMethodID) { + this.ShipMethodID = ShipMethodID; + } + + @javax.persistence.Column(name = "CreditCardID", precision = 10) + public java.lang.Integer getCreditCardID() { + return this.CreditCardID; + } + + public void setCreditCardID(java.lang.Integer CreditCardID) { + this.CreditCardID = CreditCardID; + } + + @javax.persistence.Column(name = "CreditCardApprovalCode", length = 15) + public java.lang.String getCreditCardApprovalCode() { + return this.CreditCardApprovalCode; + } + + public void setCreditCardApprovalCode(java.lang.String CreditCardApprovalCode) { + this.CreditCardApprovalCode = CreditCardApprovalCode; + } + + @javax.persistence.Column(name = "CurrencyRateID", precision = 10) + public java.lang.Integer getCurrencyRateID() { + return this.CurrencyRateID; + } + + public void setCurrencyRateID(java.lang.Integer CurrencyRateID) { + this.CurrencyRateID = CurrencyRateID; + } + + @javax.persistence.Column(name = "SubTotal", nullable = false, precision = 19, scale = 4) + public java.math.BigDecimal getSubTotal() { + return this.SubTotal; + } + + public void setSubTotal(java.math.BigDecimal SubTotal) { + this.SubTotal = SubTotal; + } + + @javax.persistence.Column(name = "TaxAmt", nullable = false, precision = 19, scale = 4) + public java.math.BigDecimal getTaxAmt() { + return this.TaxAmt; + } + + public void setTaxAmt(java.math.BigDecimal TaxAmt) { + this.TaxAmt = TaxAmt; + } + + @javax.persistence.Column(name = "Freight", nullable = false, precision = 19, scale = 4) + public java.math.BigDecimal getFreight() { + return this.Freight; + } + + public void setFreight(java.math.BigDecimal Freight) { + this.Freight = Freight; + } + + @javax.persistence.Column(name = "TotalDue", nullable = false, precision = 19, scale = 4) + public java.math.BigDecimal getTotalDue() { + return this.TotalDue; + } + + public void setTotalDue(java.math.BigDecimal TotalDue) { + this.TotalDue = TotalDue; + } + + @javax.persistence.Column(name = "Comment", length = 128) + public java.lang.String getComment() { + return this.Comment; + } + + public void setComment(java.lang.String Comment) { + this.Comment = Comment; + } + + @javax.persistence.Column(name = "rowguid", nullable = false) + public java.lang.String getrowguid() { + return this.rowguid; + } + + public void setrowguid(java.lang.String rowguid) { + this.rowguid = rowguid; + } + + @javax.persistence.Column(name = "ModifiedDate", nullable = false) + public java.sql.Timestamp getModifiedDate() { + return this.ModifiedDate; + } + + public void setModifiedDate(java.sql.Timestamp ModifiedDate) { + this.ModifiedDate = ModifiedDate; + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/sales/tables/pojos/SalesOrderHeaderSalesReason.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/sales/tables/pojos/SalesOrderHeaderSalesReason.java new file mode 100644 index 00000000000..d6564a6f603 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/sales/tables/pojos/SalesOrderHeaderSalesReason.java @@ -0,0 +1,47 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.sales.tables.pojos; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "SalesOrderHeaderSalesReason", schema = "Sales", uniqueConstraints = { + @javax.persistence.UniqueConstraint(columnNames = {"SalesOrderID", "SalesReasonID"}) +}) +public class SalesOrderHeaderSalesReason implements java.io.Serializable { + + private static final long serialVersionUID = 335162224; + + private java.lang.Integer SalesOrderID; + private java.lang.Integer SalesReasonID; + private java.sql.Timestamp ModifiedDate; + + @javax.persistence.Column(name = "SalesOrderID", nullable = false, precision = 10) + public java.lang.Integer getSalesOrderID() { + return this.SalesOrderID; + } + + public void setSalesOrderID(java.lang.Integer SalesOrderID) { + this.SalesOrderID = SalesOrderID; + } + + @javax.persistence.Column(name = "SalesReasonID", nullable = false, precision = 10) + public java.lang.Integer getSalesReasonID() { + return this.SalesReasonID; + } + + public void setSalesReasonID(java.lang.Integer SalesReasonID) { + this.SalesReasonID = SalesReasonID; + } + + @javax.persistence.Column(name = "ModifiedDate", nullable = false) + public java.sql.Timestamp getModifiedDate() { + return this.ModifiedDate; + } + + public void setModifiedDate(java.sql.Timestamp ModifiedDate) { + this.ModifiedDate = ModifiedDate; + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/sales/tables/pojos/SalesPerson.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/sales/tables/pojos/SalesPerson.java new file mode 100644 index 00000000000..92d33d4b293 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/sales/tables/pojos/SalesPerson.java @@ -0,0 +1,106 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.sales.tables.pojos; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "SalesPerson", schema = "Sales") +public class SalesPerson implements java.io.Serializable { + + private static final long serialVersionUID = 147609774; + + private java.lang.Integer SalesPersonID; + private java.lang.Integer TerritoryID; + private java.math.BigDecimal SalesQuota; + private java.math.BigDecimal Bonus; + private java.math.BigDecimal CommissionPct; + private java.math.BigDecimal SalesYTD; + private java.math.BigDecimal SalesLastYear; + private java.lang.String rowguid; + private java.sql.Timestamp ModifiedDate; + + @javax.persistence.Id + @javax.persistence.Column(name = "SalesPersonID", unique = true, nullable = false, precision = 10) + public java.lang.Integer getSalesPersonID() { + return this.SalesPersonID; + } + + public void setSalesPersonID(java.lang.Integer SalesPersonID) { + this.SalesPersonID = SalesPersonID; + } + + @javax.persistence.Column(name = "TerritoryID", precision = 10) + public java.lang.Integer getTerritoryID() { + return this.TerritoryID; + } + + public void setTerritoryID(java.lang.Integer TerritoryID) { + this.TerritoryID = TerritoryID; + } + + @javax.persistence.Column(name = "SalesQuota", precision = 19, scale = 4) + public java.math.BigDecimal getSalesQuota() { + return this.SalesQuota; + } + + public void setSalesQuota(java.math.BigDecimal SalesQuota) { + this.SalesQuota = SalesQuota; + } + + @javax.persistence.Column(name = "Bonus", nullable = false, precision = 19, scale = 4) + public java.math.BigDecimal getBonus() { + return this.Bonus; + } + + public void setBonus(java.math.BigDecimal Bonus) { + this.Bonus = Bonus; + } + + @javax.persistence.Column(name = "CommissionPct", nullable = false, precision = 10, scale = 4) + public java.math.BigDecimal getCommissionPct() { + return this.CommissionPct; + } + + public void setCommissionPct(java.math.BigDecimal CommissionPct) { + this.CommissionPct = CommissionPct; + } + + @javax.persistence.Column(name = "SalesYTD", nullable = false, precision = 19, scale = 4) + public java.math.BigDecimal getSalesYTD() { + return this.SalesYTD; + } + + public void setSalesYTD(java.math.BigDecimal SalesYTD) { + this.SalesYTD = SalesYTD; + } + + @javax.persistence.Column(name = "SalesLastYear", nullable = false, precision = 19, scale = 4) + public java.math.BigDecimal getSalesLastYear() { + return this.SalesLastYear; + } + + public void setSalesLastYear(java.math.BigDecimal SalesLastYear) { + this.SalesLastYear = SalesLastYear; + } + + @javax.persistence.Column(name = "rowguid", nullable = false) + public java.lang.String getrowguid() { + return this.rowguid; + } + + public void setrowguid(java.lang.String rowguid) { + this.rowguid = rowguid; + } + + @javax.persistence.Column(name = "ModifiedDate", nullable = false) + public java.sql.Timestamp getModifiedDate() { + return this.ModifiedDate; + } + + public void setModifiedDate(java.sql.Timestamp ModifiedDate) { + this.ModifiedDate = ModifiedDate; + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/sales/tables/pojos/SalesPersonQuotaHistory.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/sales/tables/pojos/SalesPersonQuotaHistory.java new file mode 100644 index 00000000000..a4099427c6a --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/sales/tables/pojos/SalesPersonQuotaHistory.java @@ -0,0 +1,67 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.sales.tables.pojos; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "SalesPersonQuotaHistory", schema = "Sales", uniqueConstraints = { + @javax.persistence.UniqueConstraint(columnNames = {"SalesPersonID", "QuotaDate"}) +}) +public class SalesPersonQuotaHistory implements java.io.Serializable { + + private static final long serialVersionUID = 1504379402; + + private java.lang.Integer SalesPersonID; + private java.sql.Timestamp QuotaDate; + private java.math.BigDecimal SalesQuota; + private java.lang.String rowguid; + private java.sql.Timestamp ModifiedDate; + + @javax.persistence.Column(name = "SalesPersonID", nullable = false, precision = 10) + public java.lang.Integer getSalesPersonID() { + return this.SalesPersonID; + } + + public void setSalesPersonID(java.lang.Integer SalesPersonID) { + this.SalesPersonID = SalesPersonID; + } + + @javax.persistence.Column(name = "QuotaDate", nullable = false) + public java.sql.Timestamp getQuotaDate() { + return this.QuotaDate; + } + + public void setQuotaDate(java.sql.Timestamp QuotaDate) { + this.QuotaDate = QuotaDate; + } + + @javax.persistence.Column(name = "SalesQuota", nullable = false, precision = 19, scale = 4) + public java.math.BigDecimal getSalesQuota() { + return this.SalesQuota; + } + + public void setSalesQuota(java.math.BigDecimal SalesQuota) { + this.SalesQuota = SalesQuota; + } + + @javax.persistence.Column(name = "rowguid", nullable = false) + public java.lang.String getrowguid() { + return this.rowguid; + } + + public void setrowguid(java.lang.String rowguid) { + this.rowguid = rowguid; + } + + @javax.persistence.Column(name = "ModifiedDate", nullable = false) + public java.sql.Timestamp getModifiedDate() { + return this.ModifiedDate; + } + + public void setModifiedDate(java.sql.Timestamp ModifiedDate) { + this.ModifiedDate = ModifiedDate; + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/sales/tables/pojos/SalesReason.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/sales/tables/pojos/SalesReason.java new file mode 100644 index 00000000000..51c940ca0fa --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/sales/tables/pojos/SalesReason.java @@ -0,0 +1,56 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.sales.tables.pojos; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "SalesReason", schema = "Sales") +public class SalesReason implements java.io.Serializable { + + private static final long serialVersionUID = -378272363; + + private java.lang.Integer SalesReasonID; + private java.lang.String Name; + private java.lang.String ReasonType; + private java.sql.Timestamp ModifiedDate; + + @javax.persistence.Id + @javax.persistence.Column(name = "SalesReasonID", unique = true, nullable = false, precision = 10) + public java.lang.Integer getSalesReasonID() { + return this.SalesReasonID; + } + + public void setSalesReasonID(java.lang.Integer SalesReasonID) { + this.SalesReasonID = SalesReasonID; + } + + @javax.persistence.Column(name = "Name", nullable = false, length = 50) + public java.lang.String getName() { + return this.Name; + } + + public void setName(java.lang.String Name) { + this.Name = Name; + } + + @javax.persistence.Column(name = "ReasonType", nullable = false, length = 50) + public java.lang.String getReasonType() { + return this.ReasonType; + } + + public void setReasonType(java.lang.String ReasonType) { + this.ReasonType = ReasonType; + } + + @javax.persistence.Column(name = "ModifiedDate", nullable = false) + public java.sql.Timestamp getModifiedDate() { + return this.ModifiedDate; + } + + public void setModifiedDate(java.sql.Timestamp ModifiedDate) { + this.ModifiedDate = ModifiedDate; + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/sales/tables/pojos/SalesTaxRate.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/sales/tables/pojos/SalesTaxRate.java new file mode 100644 index 00000000000..293f2471e0c --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/sales/tables/pojos/SalesTaxRate.java @@ -0,0 +1,86 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.sales.tables.pojos; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "SalesTaxRate", schema = "Sales") +public class SalesTaxRate implements java.io.Serializable { + + private static final long serialVersionUID = 14238155; + + private java.lang.Integer SalesTaxRateID; + private java.lang.Integer StateProvinceID; + private java.lang.Byte TaxType; + private java.math.BigDecimal TaxRate; + private java.lang.String Name; + private java.lang.String rowguid; + private java.sql.Timestamp ModifiedDate; + + @javax.persistence.Id + @javax.persistence.Column(name = "SalesTaxRateID", unique = true, nullable = false, precision = 10) + public java.lang.Integer getSalesTaxRateID() { + return this.SalesTaxRateID; + } + + public void setSalesTaxRateID(java.lang.Integer SalesTaxRateID) { + this.SalesTaxRateID = SalesTaxRateID; + } + + @javax.persistence.Column(name = "StateProvinceID", nullable = false, precision = 10) + public java.lang.Integer getStateProvinceID() { + return this.StateProvinceID; + } + + public void setStateProvinceID(java.lang.Integer StateProvinceID) { + this.StateProvinceID = StateProvinceID; + } + + @javax.persistence.Column(name = "TaxType", nullable = false, precision = 3) + public java.lang.Byte getTaxType() { + return this.TaxType; + } + + public void setTaxType(java.lang.Byte TaxType) { + this.TaxType = TaxType; + } + + @javax.persistence.Column(name = "TaxRate", nullable = false, precision = 10, scale = 4) + public java.math.BigDecimal getTaxRate() { + return this.TaxRate; + } + + public void setTaxRate(java.math.BigDecimal TaxRate) { + this.TaxRate = TaxRate; + } + + @javax.persistence.Column(name = "Name", nullable = false, length = 50) + public java.lang.String getName() { + return this.Name; + } + + public void setName(java.lang.String Name) { + this.Name = Name; + } + + @javax.persistence.Column(name = "rowguid", nullable = false) + public java.lang.String getrowguid() { + return this.rowguid; + } + + public void setrowguid(java.lang.String rowguid) { + this.rowguid = rowguid; + } + + @javax.persistence.Column(name = "ModifiedDate", nullable = false) + public java.sql.Timestamp getModifiedDate() { + return this.ModifiedDate; + } + + public void setModifiedDate(java.sql.Timestamp ModifiedDate) { + this.ModifiedDate = ModifiedDate; + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/sales/tables/pojos/SalesTerritory.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/sales/tables/pojos/SalesTerritory.java new file mode 100644 index 00000000000..6f34e537223 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/sales/tables/pojos/SalesTerritory.java @@ -0,0 +1,116 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.sales.tables.pojos; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "SalesTerritory", schema = "Sales") +public class SalesTerritory implements java.io.Serializable { + + private static final long serialVersionUID = -1629221517; + + private java.lang.Integer TerritoryID; + private java.lang.String Name; + private java.lang.String CountryRegionCode; + private java.lang.String Group; + private java.math.BigDecimal SalesYTD; + private java.math.BigDecimal SalesLastYear; + private java.math.BigDecimal CostYTD; + private java.math.BigDecimal CostLastYear; + private java.lang.String rowguid; + private java.sql.Timestamp ModifiedDate; + + @javax.persistence.Id + @javax.persistence.Column(name = "TerritoryID", unique = true, nullable = false, precision = 10) + public java.lang.Integer getTerritoryID() { + return this.TerritoryID; + } + + public void setTerritoryID(java.lang.Integer TerritoryID) { + this.TerritoryID = TerritoryID; + } + + @javax.persistence.Column(name = "Name", nullable = false, length = 50) + public java.lang.String getName() { + return this.Name; + } + + public void setName(java.lang.String Name) { + this.Name = Name; + } + + @javax.persistence.Column(name = "CountryRegionCode", nullable = false, length = 3) + public java.lang.String getCountryRegionCode() { + return this.CountryRegionCode; + } + + public void setCountryRegionCode(java.lang.String CountryRegionCode) { + this.CountryRegionCode = CountryRegionCode; + } + + @javax.persistence.Column(name = "Group", nullable = false, length = 50) + public java.lang.String getGroup() { + return this.Group; + } + + public void setGroup(java.lang.String Group) { + this.Group = Group; + } + + @javax.persistence.Column(name = "SalesYTD", nullable = false, precision = 19, scale = 4) + public java.math.BigDecimal getSalesYTD() { + return this.SalesYTD; + } + + public void setSalesYTD(java.math.BigDecimal SalesYTD) { + this.SalesYTD = SalesYTD; + } + + @javax.persistence.Column(name = "SalesLastYear", nullable = false, precision = 19, scale = 4) + public java.math.BigDecimal getSalesLastYear() { + return this.SalesLastYear; + } + + public void setSalesLastYear(java.math.BigDecimal SalesLastYear) { + this.SalesLastYear = SalesLastYear; + } + + @javax.persistence.Column(name = "CostYTD", nullable = false, precision = 19, scale = 4) + public java.math.BigDecimal getCostYTD() { + return this.CostYTD; + } + + public void setCostYTD(java.math.BigDecimal CostYTD) { + this.CostYTD = CostYTD; + } + + @javax.persistence.Column(name = "CostLastYear", nullable = false, precision = 19, scale = 4) + public java.math.BigDecimal getCostLastYear() { + return this.CostLastYear; + } + + public void setCostLastYear(java.math.BigDecimal CostLastYear) { + this.CostLastYear = CostLastYear; + } + + @javax.persistence.Column(name = "rowguid", nullable = false) + public java.lang.String getrowguid() { + return this.rowguid; + } + + public void setrowguid(java.lang.String rowguid) { + this.rowguid = rowguid; + } + + @javax.persistence.Column(name = "ModifiedDate", nullable = false) + public java.sql.Timestamp getModifiedDate() { + return this.ModifiedDate; + } + + public void setModifiedDate(java.sql.Timestamp ModifiedDate) { + this.ModifiedDate = ModifiedDate; + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/sales/tables/pojos/SalesTerritoryHistory.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/sales/tables/pojos/SalesTerritoryHistory.java new file mode 100644 index 00000000000..56d1f4e0945 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/sales/tables/pojos/SalesTerritoryHistory.java @@ -0,0 +1,77 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.sales.tables.pojos; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "SalesTerritoryHistory", schema = "Sales", uniqueConstraints = { + @javax.persistence.UniqueConstraint(columnNames = {"SalesPersonID", "StartDate", "TerritoryID"}) +}) +public class SalesTerritoryHistory implements java.io.Serializable { + + private static final long serialVersionUID = -932464019; + + private java.lang.Integer SalesPersonID; + private java.lang.Integer TerritoryID; + private java.sql.Timestamp StartDate; + private java.sql.Timestamp EndDate; + private java.lang.String rowguid; + private java.sql.Timestamp ModifiedDate; + + @javax.persistence.Column(name = "SalesPersonID", nullable = false, precision = 10) + public java.lang.Integer getSalesPersonID() { + return this.SalesPersonID; + } + + public void setSalesPersonID(java.lang.Integer SalesPersonID) { + this.SalesPersonID = SalesPersonID; + } + + @javax.persistence.Column(name = "TerritoryID", nullable = false, precision = 10) + public java.lang.Integer getTerritoryID() { + return this.TerritoryID; + } + + public void setTerritoryID(java.lang.Integer TerritoryID) { + this.TerritoryID = TerritoryID; + } + + @javax.persistence.Column(name = "StartDate", nullable = false) + public java.sql.Timestamp getStartDate() { + return this.StartDate; + } + + public void setStartDate(java.sql.Timestamp StartDate) { + this.StartDate = StartDate; + } + + @javax.persistence.Column(name = "EndDate") + public java.sql.Timestamp getEndDate() { + return this.EndDate; + } + + public void setEndDate(java.sql.Timestamp EndDate) { + this.EndDate = EndDate; + } + + @javax.persistence.Column(name = "rowguid", nullable = false) + public java.lang.String getrowguid() { + return this.rowguid; + } + + public void setrowguid(java.lang.String rowguid) { + this.rowguid = rowguid; + } + + @javax.persistence.Column(name = "ModifiedDate", nullable = false) + public java.sql.Timestamp getModifiedDate() { + return this.ModifiedDate; + } + + public void setModifiedDate(java.sql.Timestamp ModifiedDate) { + this.ModifiedDate = ModifiedDate; + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/sales/tables/pojos/ShoppingCartItem.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/sales/tables/pojos/ShoppingCartItem.java new file mode 100644 index 00000000000..e4ab6ef9716 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/sales/tables/pojos/ShoppingCartItem.java @@ -0,0 +1,76 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.sales.tables.pojos; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "ShoppingCartItem", schema = "Sales") +public class ShoppingCartItem implements java.io.Serializable { + + private static final long serialVersionUID = 966402692; + + private java.lang.Integer ShoppingCartItemID; + private java.lang.String ShoppingCartID; + private java.lang.Integer Quantity; + private java.lang.Integer ProductID; + private java.sql.Timestamp DateCreated; + private java.sql.Timestamp ModifiedDate; + + @javax.persistence.Id + @javax.persistence.Column(name = "ShoppingCartItemID", unique = true, nullable = false, precision = 10) + public java.lang.Integer getShoppingCartItemID() { + return this.ShoppingCartItemID; + } + + public void setShoppingCartItemID(java.lang.Integer ShoppingCartItemID) { + this.ShoppingCartItemID = ShoppingCartItemID; + } + + @javax.persistence.Column(name = "ShoppingCartID", nullable = false, length = 50) + public java.lang.String getShoppingCartID() { + return this.ShoppingCartID; + } + + public void setShoppingCartID(java.lang.String ShoppingCartID) { + this.ShoppingCartID = ShoppingCartID; + } + + @javax.persistence.Column(name = "Quantity", nullable = false, precision = 10) + public java.lang.Integer getQuantity() { + return this.Quantity; + } + + public void setQuantity(java.lang.Integer Quantity) { + this.Quantity = Quantity; + } + + @javax.persistence.Column(name = "ProductID", nullable = false, precision = 10) + public java.lang.Integer getProductID() { + return this.ProductID; + } + + public void setProductID(java.lang.Integer ProductID) { + this.ProductID = ProductID; + } + + @javax.persistence.Column(name = "DateCreated", nullable = false) + public java.sql.Timestamp getDateCreated() { + return this.DateCreated; + } + + public void setDateCreated(java.sql.Timestamp DateCreated) { + this.DateCreated = DateCreated; + } + + @javax.persistence.Column(name = "ModifiedDate", nullable = false) + public java.sql.Timestamp getModifiedDate() { + return this.ModifiedDate; + } + + public void setModifiedDate(java.sql.Timestamp ModifiedDate) { + this.ModifiedDate = ModifiedDate; + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/sales/tables/pojos/SpecialOffer.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/sales/tables/pojos/SpecialOffer.java new file mode 100644 index 00000000000..e25790cba30 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/sales/tables/pojos/SpecialOffer.java @@ -0,0 +1,126 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.sales.tables.pojos; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "SpecialOffer", schema = "Sales") +public class SpecialOffer implements java.io.Serializable { + + private static final long serialVersionUID = 542108653; + + private java.lang.Integer SpecialOfferID; + private java.lang.String Description; + private java.math.BigDecimal DiscountPct; + private java.lang.String Type; + private java.lang.String Category; + private java.sql.Timestamp StartDate; + private java.sql.Timestamp EndDate; + private java.lang.Integer MinQty; + private java.lang.Integer MaxQty; + private java.lang.String rowguid; + private java.sql.Timestamp ModifiedDate; + + @javax.persistence.Id + @javax.persistence.Column(name = "SpecialOfferID", unique = true, nullable = false, precision = 10) + public java.lang.Integer getSpecialOfferID() { + return this.SpecialOfferID; + } + + public void setSpecialOfferID(java.lang.Integer SpecialOfferID) { + this.SpecialOfferID = SpecialOfferID; + } + + @javax.persistence.Column(name = "Description", nullable = false, length = 255) + public java.lang.String getDescription() { + return this.Description; + } + + public void setDescription(java.lang.String Description) { + this.Description = Description; + } + + @javax.persistence.Column(name = "DiscountPct", nullable = false, precision = 10, scale = 4) + public java.math.BigDecimal getDiscountPct() { + return this.DiscountPct; + } + + public void setDiscountPct(java.math.BigDecimal DiscountPct) { + this.DiscountPct = DiscountPct; + } + + @javax.persistence.Column(name = "Type", nullable = false, length = 50) + public java.lang.String getType() { + return this.Type; + } + + public void setType(java.lang.String Type) { + this.Type = Type; + } + + @javax.persistence.Column(name = "Category", nullable = false, length = 50) + public java.lang.String getCategory() { + return this.Category; + } + + public void setCategory(java.lang.String Category) { + this.Category = Category; + } + + @javax.persistence.Column(name = "StartDate", nullable = false) + public java.sql.Timestamp getStartDate() { + return this.StartDate; + } + + public void setStartDate(java.sql.Timestamp StartDate) { + this.StartDate = StartDate; + } + + @javax.persistence.Column(name = "EndDate", nullable = false) + public java.sql.Timestamp getEndDate() { + return this.EndDate; + } + + public void setEndDate(java.sql.Timestamp EndDate) { + this.EndDate = EndDate; + } + + @javax.persistence.Column(name = "MinQty", nullable = false, precision = 10) + public java.lang.Integer getMinQty() { + return this.MinQty; + } + + public void setMinQty(java.lang.Integer MinQty) { + this.MinQty = MinQty; + } + + @javax.persistence.Column(name = "MaxQty", precision = 10) + public java.lang.Integer getMaxQty() { + return this.MaxQty; + } + + public void setMaxQty(java.lang.Integer MaxQty) { + this.MaxQty = MaxQty; + } + + @javax.persistence.Column(name = "rowguid", nullable = false) + public java.lang.String getrowguid() { + return this.rowguid; + } + + public void setrowguid(java.lang.String rowguid) { + this.rowguid = rowguid; + } + + @javax.persistence.Column(name = "ModifiedDate", nullable = false) + public java.sql.Timestamp getModifiedDate() { + return this.ModifiedDate; + } + + public void setModifiedDate(java.sql.Timestamp ModifiedDate) { + this.ModifiedDate = ModifiedDate; + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/sales/tables/pojos/SpecialOfferProduct.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/sales/tables/pojos/SpecialOfferProduct.java new file mode 100644 index 00000000000..a713cf8aac6 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/sales/tables/pojos/SpecialOfferProduct.java @@ -0,0 +1,57 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.sales.tables.pojos; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "SpecialOfferProduct", schema = "Sales", uniqueConstraints = { + @javax.persistence.UniqueConstraint(columnNames = {"SpecialOfferID", "ProductID"}) +}) +public class SpecialOfferProduct implements java.io.Serializable { + + private static final long serialVersionUID = -1838956005; + + private java.lang.Integer SpecialOfferID; + private java.lang.Integer ProductID; + private java.lang.String rowguid; + private java.sql.Timestamp ModifiedDate; + + @javax.persistence.Column(name = "SpecialOfferID", nullable = false, precision = 10) + public java.lang.Integer getSpecialOfferID() { + return this.SpecialOfferID; + } + + public void setSpecialOfferID(java.lang.Integer SpecialOfferID) { + this.SpecialOfferID = SpecialOfferID; + } + + @javax.persistence.Column(name = "ProductID", nullable = false, precision = 10) + public java.lang.Integer getProductID() { + return this.ProductID; + } + + public void setProductID(java.lang.Integer ProductID) { + this.ProductID = ProductID; + } + + @javax.persistence.Column(name = "rowguid", nullable = false) + public java.lang.String getrowguid() { + return this.rowguid; + } + + public void setrowguid(java.lang.String rowguid) { + this.rowguid = rowguid; + } + + @javax.persistence.Column(name = "ModifiedDate", nullable = false) + public java.sql.Timestamp getModifiedDate() { + return this.ModifiedDate; + } + + public void setModifiedDate(java.sql.Timestamp ModifiedDate) { + this.ModifiedDate = ModifiedDate; + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/sales/tables/pojos/Store.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/sales/tables/pojos/Store.java new file mode 100644 index 00000000000..dc424df6008 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/sales/tables/pojos/Store.java @@ -0,0 +1,76 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.sales.tables.pojos; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "Store", schema = "Sales") +public class Store implements java.io.Serializable { + + private static final long serialVersionUID = -530462146; + + private java.lang.Integer CustomerID; + private java.lang.String Name; + private java.lang.Integer SalesPersonID; + private java.lang.Object Demographics; + private java.lang.String rowguid; + private java.sql.Timestamp ModifiedDate; + + @javax.persistence.Id + @javax.persistence.Column(name = "CustomerID", unique = true, nullable = false, precision = 10) + public java.lang.Integer getCustomerID() { + return this.CustomerID; + } + + public void setCustomerID(java.lang.Integer CustomerID) { + this.CustomerID = CustomerID; + } + + @javax.persistence.Column(name = "Name", nullable = false, length = 50) + public java.lang.String getName() { + return this.Name; + } + + public void setName(java.lang.String Name) { + this.Name = Name; + } + + @javax.persistence.Column(name = "SalesPersonID", precision = 10) + public java.lang.Integer getSalesPersonID() { + return this.SalesPersonID; + } + + public void setSalesPersonID(java.lang.Integer SalesPersonID) { + this.SalesPersonID = SalesPersonID; + } + + @javax.persistence.Column(name = "Demographics") + public java.lang.Object getDemographics() { + return this.Demographics; + } + + public void setDemographics(java.lang.Object Demographics) { + this.Demographics = Demographics; + } + + @javax.persistence.Column(name = "rowguid", nullable = false) + public java.lang.String getrowguid() { + return this.rowguid; + } + + public void setrowguid(java.lang.String rowguid) { + this.rowguid = rowguid; + } + + @javax.persistence.Column(name = "ModifiedDate", nullable = false) + public java.sql.Timestamp getModifiedDate() { + return this.ModifiedDate; + } + + public void setModifiedDate(java.sql.Timestamp ModifiedDate) { + this.ModifiedDate = ModifiedDate; + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/sales/tables/pojos/StoreContact.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/sales/tables/pojos/StoreContact.java new file mode 100644 index 00000000000..cef22ce1745 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/sales/tables/pojos/StoreContact.java @@ -0,0 +1,67 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.sales.tables.pojos; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "StoreContact", schema = "Sales", uniqueConstraints = { + @javax.persistence.UniqueConstraint(columnNames = {"CustomerID", "ContactID"}) +}) +public class StoreContact implements java.io.Serializable { + + private static final long serialVersionUID = 922184445; + + private java.lang.Integer CustomerID; + private java.lang.Integer ContactID; + private java.lang.Integer ContactTypeID; + private java.lang.String rowguid; + private java.sql.Timestamp ModifiedDate; + + @javax.persistence.Column(name = "CustomerID", nullable = false, precision = 10) + public java.lang.Integer getCustomerID() { + return this.CustomerID; + } + + public void setCustomerID(java.lang.Integer CustomerID) { + this.CustomerID = CustomerID; + } + + @javax.persistence.Column(name = "ContactID", nullable = false, precision = 10) + public java.lang.Integer getContactID() { + return this.ContactID; + } + + public void setContactID(java.lang.Integer ContactID) { + this.ContactID = ContactID; + } + + @javax.persistence.Column(name = "ContactTypeID", nullable = false, precision = 10) + public java.lang.Integer getContactTypeID() { + return this.ContactTypeID; + } + + public void setContactTypeID(java.lang.Integer ContactTypeID) { + this.ContactTypeID = ContactTypeID; + } + + @javax.persistence.Column(name = "rowguid", nullable = false) + public java.lang.String getrowguid() { + return this.rowguid; + } + + public void setrowguid(java.lang.String rowguid) { + this.rowguid = rowguid; + } + + @javax.persistence.Column(name = "ModifiedDate", nullable = false) + public java.sql.Timestamp getModifiedDate() { + return this.ModifiedDate; + } + + public void setModifiedDate(java.sql.Timestamp ModifiedDate) { + this.ModifiedDate = ModifiedDate; + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/sales/tables/pojos/vIndividualCustomer.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/sales/tables/pojos/vIndividualCustomer.java new file mode 100644 index 00000000000..56a350edafa --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/sales/tables/pojos/vIndividualCustomer.java @@ -0,0 +1,185 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.sales.tables.pojos; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "vIndividualCustomer", schema = "Sales") +public class vIndividualCustomer implements java.io.Serializable { + + private static final long serialVersionUID = 1389191150; + + private java.lang.Integer CustomerID; + private java.lang.String Title; + private java.lang.String FirstName; + private java.lang.String MiddleName; + private java.lang.String LastName; + private java.lang.String Suffix; + private java.lang.String Phone; + private java.lang.String EmailAddress; + private java.lang.Integer EmailPromotion; + private java.lang.String AddressType; + private java.lang.String AddressLine1; + private java.lang.String AddressLine2; + private java.lang.String City; + private java.lang.String StateProvinceName; + private java.lang.String PostalCode; + private java.lang.String CountryRegionName; + private java.lang.Object Demographics; + + @javax.persistence.Column(name = "CustomerID", nullable = false, precision = 10) + public java.lang.Integer getCustomerID() { + return this.CustomerID; + } + + public void setCustomerID(java.lang.Integer CustomerID) { + this.CustomerID = CustomerID; + } + + @javax.persistence.Column(name = "Title", length = 8) + public java.lang.String getTitle() { + return this.Title; + } + + public void setTitle(java.lang.String Title) { + this.Title = Title; + } + + @javax.persistence.Column(name = "FirstName", nullable = false, length = 50) + public java.lang.String getFirstName() { + return this.FirstName; + } + + public void setFirstName(java.lang.String FirstName) { + this.FirstName = FirstName; + } + + @javax.persistence.Column(name = "MiddleName", length = 50) + public java.lang.String getMiddleName() { + return this.MiddleName; + } + + public void setMiddleName(java.lang.String MiddleName) { + this.MiddleName = MiddleName; + } + + @javax.persistence.Column(name = "LastName", nullable = false, length = 50) + public java.lang.String getLastName() { + return this.LastName; + } + + public void setLastName(java.lang.String LastName) { + this.LastName = LastName; + } + + @javax.persistence.Column(name = "Suffix", length = 10) + public java.lang.String getSuffix() { + return this.Suffix; + } + + public void setSuffix(java.lang.String Suffix) { + this.Suffix = Suffix; + } + + @javax.persistence.Column(name = "Phone", length = 25) + public java.lang.String getPhone() { + return this.Phone; + } + + public void setPhone(java.lang.String Phone) { + this.Phone = Phone; + } + + @javax.persistence.Column(name = "EmailAddress", length = 50) + public java.lang.String getEmailAddress() { + return this.EmailAddress; + } + + public void setEmailAddress(java.lang.String EmailAddress) { + this.EmailAddress = EmailAddress; + } + + @javax.persistence.Column(name = "EmailPromotion", nullable = false, precision = 10) + public java.lang.Integer getEmailPromotion() { + return this.EmailPromotion; + } + + public void setEmailPromotion(java.lang.Integer EmailPromotion) { + this.EmailPromotion = EmailPromotion; + } + + @javax.persistence.Column(name = "AddressType", nullable = false, length = 50) + public java.lang.String getAddressType() { + return this.AddressType; + } + + public void setAddressType(java.lang.String AddressType) { + this.AddressType = AddressType; + } + + @javax.persistence.Column(name = "AddressLine1", nullable = false, length = 60) + public java.lang.String getAddressLine1() { + return this.AddressLine1; + } + + public void setAddressLine1(java.lang.String AddressLine1) { + this.AddressLine1 = AddressLine1; + } + + @javax.persistence.Column(name = "AddressLine2", length = 60) + public java.lang.String getAddressLine2() { + return this.AddressLine2; + } + + public void setAddressLine2(java.lang.String AddressLine2) { + this.AddressLine2 = AddressLine2; + } + + @javax.persistence.Column(name = "City", nullable = false, length = 30) + public java.lang.String getCity() { + return this.City; + } + + public void setCity(java.lang.String City) { + this.City = City; + } + + @javax.persistence.Column(name = "StateProvinceName", nullable = false, length = 50) + public java.lang.String getStateProvinceName() { + return this.StateProvinceName; + } + + public void setStateProvinceName(java.lang.String StateProvinceName) { + this.StateProvinceName = StateProvinceName; + } + + @javax.persistence.Column(name = "PostalCode", nullable = false, length = 15) + public java.lang.String getPostalCode() { + return this.PostalCode; + } + + public void setPostalCode(java.lang.String PostalCode) { + this.PostalCode = PostalCode; + } + + @javax.persistence.Column(name = "CountryRegionName", nullable = false, length = 50) + public java.lang.String getCountryRegionName() { + return this.CountryRegionName; + } + + public void setCountryRegionName(java.lang.String CountryRegionName) { + this.CountryRegionName = CountryRegionName; + } + + @javax.persistence.Column(name = "Demographics") + public java.lang.Object getDemographics() { + return this.Demographics; + } + + public void setDemographics(java.lang.Object Demographics) { + this.Demographics = Demographics; + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/sales/tables/pojos/vIndividualDemographics.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/sales/tables/pojos/vIndividualDemographics.java new file mode 100644 index 00000000000..cde9e69848f --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/sales/tables/pojos/vIndividualDemographics.java @@ -0,0 +1,145 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.sales.tables.pojos; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "vIndividualDemographics", schema = "Sales") +public class vIndividualDemographics implements java.io.Serializable { + + private static final long serialVersionUID = 1487037718; + + private java.lang.Integer CustomerID; + private java.math.BigDecimal TotalPurchaseYTD; + private java.sql.Timestamp DateFirstPurchase; + private java.sql.Timestamp BirthDate; + private java.lang.String MaritalStatus; + private java.lang.String YearlyIncome; + private java.lang.String Gender; + private java.lang.Integer TotalChildren; + private java.lang.Integer NumberChildrenAtHome; + private java.lang.String Education; + private java.lang.String Occupation; + private java.lang.Boolean HomeOwnerFlag; + private java.lang.Integer NumberCarsOwned; + + @javax.persistence.Column(name = "CustomerID", nullable = false, precision = 10) + public java.lang.Integer getCustomerID() { + return this.CustomerID; + } + + public void setCustomerID(java.lang.Integer CustomerID) { + this.CustomerID = CustomerID; + } + + @javax.persistence.Column(name = "TotalPurchaseYTD", precision = 19, scale = 4) + public java.math.BigDecimal getTotalPurchaseYTD() { + return this.TotalPurchaseYTD; + } + + public void setTotalPurchaseYTD(java.math.BigDecimal TotalPurchaseYTD) { + this.TotalPurchaseYTD = TotalPurchaseYTD; + } + + @javax.persistence.Column(name = "DateFirstPurchase") + public java.sql.Timestamp getDateFirstPurchase() { + return this.DateFirstPurchase; + } + + public void setDateFirstPurchase(java.sql.Timestamp DateFirstPurchase) { + this.DateFirstPurchase = DateFirstPurchase; + } + + @javax.persistence.Column(name = "BirthDate") + public java.sql.Timestamp getBirthDate() { + return this.BirthDate; + } + + public void setBirthDate(java.sql.Timestamp BirthDate) { + this.BirthDate = BirthDate; + } + + @javax.persistence.Column(name = "MaritalStatus", length = 1) + public java.lang.String getMaritalStatus() { + return this.MaritalStatus; + } + + public void setMaritalStatus(java.lang.String MaritalStatus) { + this.MaritalStatus = MaritalStatus; + } + + @javax.persistence.Column(name = "YearlyIncome", length = 30) + public java.lang.String getYearlyIncome() { + return this.YearlyIncome; + } + + public void setYearlyIncome(java.lang.String YearlyIncome) { + this.YearlyIncome = YearlyIncome; + } + + @javax.persistence.Column(name = "Gender", length = 1) + public java.lang.String getGender() { + return this.Gender; + } + + public void setGender(java.lang.String Gender) { + this.Gender = Gender; + } + + @javax.persistence.Column(name = "TotalChildren", precision = 10) + public java.lang.Integer getTotalChildren() { + return this.TotalChildren; + } + + public void setTotalChildren(java.lang.Integer TotalChildren) { + this.TotalChildren = TotalChildren; + } + + @javax.persistence.Column(name = "NumberChildrenAtHome", precision = 10) + public java.lang.Integer getNumberChildrenAtHome() { + return this.NumberChildrenAtHome; + } + + public void setNumberChildrenAtHome(java.lang.Integer NumberChildrenAtHome) { + this.NumberChildrenAtHome = NumberChildrenAtHome; + } + + @javax.persistence.Column(name = "Education", length = 30) + public java.lang.String getEducation() { + return this.Education; + } + + public void setEducation(java.lang.String Education) { + this.Education = Education; + } + + @javax.persistence.Column(name = "Occupation", length = 30) + public java.lang.String getOccupation() { + return this.Occupation; + } + + public void setOccupation(java.lang.String Occupation) { + this.Occupation = Occupation; + } + + @javax.persistence.Column(name = "HomeOwnerFlag") + public java.lang.Boolean getHomeOwnerFlag() { + return this.HomeOwnerFlag; + } + + public void setHomeOwnerFlag(java.lang.Boolean HomeOwnerFlag) { + this.HomeOwnerFlag = HomeOwnerFlag; + } + + @javax.persistence.Column(name = "NumberCarsOwned", precision = 10) + public java.lang.Integer getNumberCarsOwned() { + return this.NumberCarsOwned; + } + + public void setNumberCarsOwned(java.lang.Integer NumberCarsOwned) { + this.NumberCarsOwned = NumberCarsOwned; + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/sales/tables/pojos/vSalesPerson.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/sales/tables/pojos/vSalesPerson.java new file mode 100644 index 00000000000..5e98c767d96 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/sales/tables/pojos/vSalesPerson.java @@ -0,0 +1,225 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.sales.tables.pojos; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "vSalesPerson", schema = "Sales") +public class vSalesPerson implements java.io.Serializable { + + private static final long serialVersionUID = -614769792; + + private java.lang.Integer SalesPersonID; + private java.lang.String Title; + private java.lang.String FirstName; + private java.lang.String MiddleName; + private java.lang.String LastName; + private java.lang.String Suffix; + private java.lang.String JobTitle; + private java.lang.String Phone; + private java.lang.String EmailAddress; + private java.lang.Integer EmailPromotion; + private java.lang.String AddressLine1; + private java.lang.String AddressLine2; + private java.lang.String City; + private java.lang.String StateProvinceName; + private java.lang.String PostalCode; + private java.lang.String CountryRegionName; + private java.lang.String TerritoryName; + private java.lang.String TerritoryGroup; + private java.math.BigDecimal SalesQuota; + private java.math.BigDecimal SalesYTD; + private java.math.BigDecimal SalesLastYear; + + @javax.persistence.Column(name = "SalesPersonID", nullable = false, precision = 10) + public java.lang.Integer getSalesPersonID() { + return this.SalesPersonID; + } + + public void setSalesPersonID(java.lang.Integer SalesPersonID) { + this.SalesPersonID = SalesPersonID; + } + + @javax.persistence.Column(name = "Title", length = 8) + public java.lang.String getTitle() { + return this.Title; + } + + public void setTitle(java.lang.String Title) { + this.Title = Title; + } + + @javax.persistence.Column(name = "FirstName", nullable = false, length = 50) + public java.lang.String getFirstName() { + return this.FirstName; + } + + public void setFirstName(java.lang.String FirstName) { + this.FirstName = FirstName; + } + + @javax.persistence.Column(name = "MiddleName", length = 50) + public java.lang.String getMiddleName() { + return this.MiddleName; + } + + public void setMiddleName(java.lang.String MiddleName) { + this.MiddleName = MiddleName; + } + + @javax.persistence.Column(name = "LastName", nullable = false, length = 50) + public java.lang.String getLastName() { + return this.LastName; + } + + public void setLastName(java.lang.String LastName) { + this.LastName = LastName; + } + + @javax.persistence.Column(name = "Suffix", length = 10) + public java.lang.String getSuffix() { + return this.Suffix; + } + + public void setSuffix(java.lang.String Suffix) { + this.Suffix = Suffix; + } + + @javax.persistence.Column(name = "JobTitle", nullable = false, length = 50) + public java.lang.String getJobTitle() { + return this.JobTitle; + } + + public void setJobTitle(java.lang.String JobTitle) { + this.JobTitle = JobTitle; + } + + @javax.persistence.Column(name = "Phone", length = 25) + public java.lang.String getPhone() { + return this.Phone; + } + + public void setPhone(java.lang.String Phone) { + this.Phone = Phone; + } + + @javax.persistence.Column(name = "EmailAddress", length = 50) + public java.lang.String getEmailAddress() { + return this.EmailAddress; + } + + public void setEmailAddress(java.lang.String EmailAddress) { + this.EmailAddress = EmailAddress; + } + + @javax.persistence.Column(name = "EmailPromotion", nullable = false, precision = 10) + public java.lang.Integer getEmailPromotion() { + return this.EmailPromotion; + } + + public void setEmailPromotion(java.lang.Integer EmailPromotion) { + this.EmailPromotion = EmailPromotion; + } + + @javax.persistence.Column(name = "AddressLine1", nullable = false, length = 60) + public java.lang.String getAddressLine1() { + return this.AddressLine1; + } + + public void setAddressLine1(java.lang.String AddressLine1) { + this.AddressLine1 = AddressLine1; + } + + @javax.persistence.Column(name = "AddressLine2", length = 60) + public java.lang.String getAddressLine2() { + return this.AddressLine2; + } + + public void setAddressLine2(java.lang.String AddressLine2) { + this.AddressLine2 = AddressLine2; + } + + @javax.persistence.Column(name = "City", nullable = false, length = 30) + public java.lang.String getCity() { + return this.City; + } + + public void setCity(java.lang.String City) { + this.City = City; + } + + @javax.persistence.Column(name = "StateProvinceName", nullable = false, length = 50) + public java.lang.String getStateProvinceName() { + return this.StateProvinceName; + } + + public void setStateProvinceName(java.lang.String StateProvinceName) { + this.StateProvinceName = StateProvinceName; + } + + @javax.persistence.Column(name = "PostalCode", nullable = false, length = 15) + public java.lang.String getPostalCode() { + return this.PostalCode; + } + + public void setPostalCode(java.lang.String PostalCode) { + this.PostalCode = PostalCode; + } + + @javax.persistence.Column(name = "CountryRegionName", nullable = false, length = 50) + public java.lang.String getCountryRegionName() { + return this.CountryRegionName; + } + + public void setCountryRegionName(java.lang.String CountryRegionName) { + this.CountryRegionName = CountryRegionName; + } + + @javax.persistence.Column(name = "TerritoryName", length = 50) + public java.lang.String getTerritoryName() { + return this.TerritoryName; + } + + public void setTerritoryName(java.lang.String TerritoryName) { + this.TerritoryName = TerritoryName; + } + + @javax.persistence.Column(name = "TerritoryGroup", length = 50) + public java.lang.String getTerritoryGroup() { + return this.TerritoryGroup; + } + + public void setTerritoryGroup(java.lang.String TerritoryGroup) { + this.TerritoryGroup = TerritoryGroup; + } + + @javax.persistence.Column(name = "SalesQuota", precision = 19, scale = 4) + public java.math.BigDecimal getSalesQuota() { + return this.SalesQuota; + } + + public void setSalesQuota(java.math.BigDecimal SalesQuota) { + this.SalesQuota = SalesQuota; + } + + @javax.persistence.Column(name = "SalesYTD", nullable = false, precision = 19, scale = 4) + public java.math.BigDecimal getSalesYTD() { + return this.SalesYTD; + } + + public void setSalesYTD(java.math.BigDecimal SalesYTD) { + this.SalesYTD = SalesYTD; + } + + @javax.persistence.Column(name = "SalesLastYear", nullable = false, precision = 19, scale = 4) + public java.math.BigDecimal getSalesLastYear() { + return this.SalesLastYear; + } + + public void setSalesLastYear(java.math.BigDecimal SalesLastYear) { + this.SalesLastYear = SalesLastYear; + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/sales/tables/pojos/vSalesPersonSalesByFiscalYears.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/sales/tables/pojos/vSalesPersonSalesByFiscalYears.java new file mode 100644 index 00000000000..330acfd873c --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/sales/tables/pojos/vSalesPersonSalesByFiscalYears.java @@ -0,0 +1,85 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.sales.tables.pojos; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "vSalesPersonSalesByFiscalYears", schema = "Sales") +public class vSalesPersonSalesByFiscalYears implements java.io.Serializable { + + private static final long serialVersionUID = -664734633; + + private java.lang.Integer SalesPersonID; + private java.lang.String FullName; + private java.lang.String Title; + private java.lang.String SalesTerritory; + private java.math.BigDecimal _2002; + private java.math.BigDecimal _2003; + private java.math.BigDecimal _2004; + + @javax.persistence.Column(name = "SalesPersonID", precision = 10) + public java.lang.Integer getSalesPersonID() { + return this.SalesPersonID; + } + + public void setSalesPersonID(java.lang.Integer SalesPersonID) { + this.SalesPersonID = SalesPersonID; + } + + @javax.persistence.Column(name = "FullName", length = 152) + public java.lang.String getFullName() { + return this.FullName; + } + + public void setFullName(java.lang.String FullName) { + this.FullName = FullName; + } + + @javax.persistence.Column(name = "Title", nullable = false, length = 50) + public java.lang.String getTitle() { + return this.Title; + } + + public void setTitle(java.lang.String Title) { + this.Title = Title; + } + + @javax.persistence.Column(name = "SalesTerritory", nullable = false, length = 50) + public java.lang.String getSalesTerritory() { + return this.SalesTerritory; + } + + public void setSalesTerritory(java.lang.String SalesTerritory) { + this.SalesTerritory = SalesTerritory; + } + + @javax.persistence.Column(name = "2002", precision = 19, scale = 4) + public java.math.BigDecimal get2002() { + return this._2002; + } + + public void set2002(java.math.BigDecimal _2002) { + this._2002 = _2002; + } + + @javax.persistence.Column(name = "2003", precision = 19, scale = 4) + public java.math.BigDecimal get2003() { + return this._2003; + } + + public void set2003(java.math.BigDecimal _2003) { + this._2003 = _2003; + } + + @javax.persistence.Column(name = "2004", precision = 19, scale = 4) + public java.math.BigDecimal get2004() { + return this._2004; + } + + public void set2004(java.math.BigDecimal _2004) { + this._2004 = _2004; + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/sales/tables/pojos/vStoreWithDemographics.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/sales/tables/pojos/vStoreWithDemographics.java new file mode 100644 index 00000000000..84c13ad736e --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/sales/tables/pojos/vStoreWithDemographics.java @@ -0,0 +1,295 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.sales.tables.pojos; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "vStoreWithDemographics", schema = "Sales") +public class vStoreWithDemographics implements java.io.Serializable { + + private static final long serialVersionUID = 249264575; + + private java.lang.Integer CustomerID; + private java.lang.String Name; + private java.lang.String ContactType; + private java.lang.String Title; + private java.lang.String FirstName; + private java.lang.String MiddleName; + private java.lang.String LastName; + private java.lang.String Suffix; + private java.lang.String Phone; + private java.lang.String EmailAddress; + private java.lang.Integer EmailPromotion; + private java.lang.String AddressType; + private java.lang.String AddressLine1; + private java.lang.String AddressLine2; + private java.lang.String City; + private java.lang.String StateProvinceName; + private java.lang.String PostalCode; + private java.lang.String CountryRegionName; + private java.math.BigDecimal AnnualSales; + private java.math.BigDecimal AnnualRevenue; + private java.lang.String BankName; + private java.lang.String BusinessType; + private java.lang.Integer YearOpened; + private java.lang.String Specialty; + private java.lang.Integer SquareFeet; + private java.lang.String Brands; + private java.lang.String Internet; + private java.lang.Integer NumberEmployees; + + @javax.persistence.Column(name = "CustomerID", nullable = false, precision = 10) + public java.lang.Integer getCustomerID() { + return this.CustomerID; + } + + public void setCustomerID(java.lang.Integer CustomerID) { + this.CustomerID = CustomerID; + } + + @javax.persistence.Column(name = "Name", nullable = false, length = 50) + public java.lang.String getName() { + return this.Name; + } + + public void setName(java.lang.String Name) { + this.Name = Name; + } + + @javax.persistence.Column(name = "ContactType", nullable = false, length = 50) + public java.lang.String getContactType() { + return this.ContactType; + } + + public void setContactType(java.lang.String ContactType) { + this.ContactType = ContactType; + } + + @javax.persistence.Column(name = "Title", length = 8) + public java.lang.String getTitle() { + return this.Title; + } + + public void setTitle(java.lang.String Title) { + this.Title = Title; + } + + @javax.persistence.Column(name = "FirstName", nullable = false, length = 50) + public java.lang.String getFirstName() { + return this.FirstName; + } + + public void setFirstName(java.lang.String FirstName) { + this.FirstName = FirstName; + } + + @javax.persistence.Column(name = "MiddleName", length = 50) + public java.lang.String getMiddleName() { + return this.MiddleName; + } + + public void setMiddleName(java.lang.String MiddleName) { + this.MiddleName = MiddleName; + } + + @javax.persistence.Column(name = "LastName", nullable = false, length = 50) + public java.lang.String getLastName() { + return this.LastName; + } + + public void setLastName(java.lang.String LastName) { + this.LastName = LastName; + } + + @javax.persistence.Column(name = "Suffix", length = 10) + public java.lang.String getSuffix() { + return this.Suffix; + } + + public void setSuffix(java.lang.String Suffix) { + this.Suffix = Suffix; + } + + @javax.persistence.Column(name = "Phone", length = 25) + public java.lang.String getPhone() { + return this.Phone; + } + + public void setPhone(java.lang.String Phone) { + this.Phone = Phone; + } + + @javax.persistence.Column(name = "EmailAddress", length = 50) + public java.lang.String getEmailAddress() { + return this.EmailAddress; + } + + public void setEmailAddress(java.lang.String EmailAddress) { + this.EmailAddress = EmailAddress; + } + + @javax.persistence.Column(name = "EmailPromotion", nullable = false, precision = 10) + public java.lang.Integer getEmailPromotion() { + return this.EmailPromotion; + } + + public void setEmailPromotion(java.lang.Integer EmailPromotion) { + this.EmailPromotion = EmailPromotion; + } + + @javax.persistence.Column(name = "AddressType", nullable = false, length = 50) + public java.lang.String getAddressType() { + return this.AddressType; + } + + public void setAddressType(java.lang.String AddressType) { + this.AddressType = AddressType; + } + + @javax.persistence.Column(name = "AddressLine1", nullable = false, length = 60) + public java.lang.String getAddressLine1() { + return this.AddressLine1; + } + + public void setAddressLine1(java.lang.String AddressLine1) { + this.AddressLine1 = AddressLine1; + } + + @javax.persistence.Column(name = "AddressLine2", length = 60) + public java.lang.String getAddressLine2() { + return this.AddressLine2; + } + + public void setAddressLine2(java.lang.String AddressLine2) { + this.AddressLine2 = AddressLine2; + } + + @javax.persistence.Column(name = "City", nullable = false, length = 30) + public java.lang.String getCity() { + return this.City; + } + + public void setCity(java.lang.String City) { + this.City = City; + } + + @javax.persistence.Column(name = "StateProvinceName", nullable = false, length = 50) + public java.lang.String getStateProvinceName() { + return this.StateProvinceName; + } + + public void setStateProvinceName(java.lang.String StateProvinceName) { + this.StateProvinceName = StateProvinceName; + } + + @javax.persistence.Column(name = "PostalCode", nullable = false, length = 15) + public java.lang.String getPostalCode() { + return this.PostalCode; + } + + public void setPostalCode(java.lang.String PostalCode) { + this.PostalCode = PostalCode; + } + + @javax.persistence.Column(name = "CountryRegionName", nullable = false, length = 50) + public java.lang.String getCountryRegionName() { + return this.CountryRegionName; + } + + public void setCountryRegionName(java.lang.String CountryRegionName) { + this.CountryRegionName = CountryRegionName; + } + + @javax.persistence.Column(name = "AnnualSales", precision = 19, scale = 4) + public java.math.BigDecimal getAnnualSales() { + return this.AnnualSales; + } + + public void setAnnualSales(java.math.BigDecimal AnnualSales) { + this.AnnualSales = AnnualSales; + } + + @javax.persistence.Column(name = "AnnualRevenue", precision = 19, scale = 4) + public java.math.BigDecimal getAnnualRevenue() { + return this.AnnualRevenue; + } + + public void setAnnualRevenue(java.math.BigDecimal AnnualRevenue) { + this.AnnualRevenue = AnnualRevenue; + } + + @javax.persistence.Column(name = "BankName", length = 50) + public java.lang.String getBankName() { + return this.BankName; + } + + public void setBankName(java.lang.String BankName) { + this.BankName = BankName; + } + + @javax.persistence.Column(name = "BusinessType", length = 5) + public java.lang.String getBusinessType() { + return this.BusinessType; + } + + public void setBusinessType(java.lang.String BusinessType) { + this.BusinessType = BusinessType; + } + + @javax.persistence.Column(name = "YearOpened", precision = 10) + public java.lang.Integer getYearOpened() { + return this.YearOpened; + } + + public void setYearOpened(java.lang.Integer YearOpened) { + this.YearOpened = YearOpened; + } + + @javax.persistence.Column(name = "Specialty", length = 50) + public java.lang.String getSpecialty() { + return this.Specialty; + } + + public void setSpecialty(java.lang.String Specialty) { + this.Specialty = Specialty; + } + + @javax.persistence.Column(name = "SquareFeet", precision = 10) + public java.lang.Integer getSquareFeet() { + return this.SquareFeet; + } + + public void setSquareFeet(java.lang.Integer SquareFeet) { + this.SquareFeet = SquareFeet; + } + + @javax.persistence.Column(name = "Brands", length = 30) + public java.lang.String getBrands() { + return this.Brands; + } + + public void setBrands(java.lang.String Brands) { + this.Brands = Brands; + } + + @javax.persistence.Column(name = "Internet", length = 30) + public java.lang.String getInternet() { + return this.Internet; + } + + public void setInternet(java.lang.String Internet) { + this.Internet = Internet; + } + + @javax.persistence.Column(name = "NumberEmployees", precision = 10) + public java.lang.Integer getNumberEmployees() { + return this.NumberEmployees; + } + + public void setNumberEmployees(java.lang.Integer NumberEmployees) { + this.NumberEmployees = NumberEmployees; + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/sales/tables/records/ContactCreditCard.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/sales/tables/records/ContactCreditCard.java new file mode 100644 index 00000000000..40169e7fa99 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/sales/tables/records/ContactCreditCard.java @@ -0,0 +1,100 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.sales.tables.records; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "ContactCreditCard", schema = "Sales", uniqueConstraints = { + @javax.persistence.UniqueConstraint(columnNames = {"ContactID", "CreditCardID"}) +}) +public class ContactCreditCard extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = 69117642; + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT FK_ContactCreditCard_Contact_ContactID
+	 * FOREIGN KEY (ContactID)
+	 * REFERENCES Person.Contact (ContactID)
+	 * 
+ */ + public void setContactID(java.lang.Integer value) { + setValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.ContactCreditCard.ContactCreditCard.ContactID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT FK_ContactCreditCard_Contact_ContactID
+	 * FOREIGN KEY (ContactID)
+	 * REFERENCES Person.Contact (ContactID)
+	 * 
+ */ + @javax.persistence.Column(name = "ContactID", nullable = false, precision = 10) + public java.lang.Integer getContactID() { + return getValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.ContactCreditCard.ContactCreditCard.ContactID); + } + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT FK_ContactCreditCard_CreditCard_CreditCardID
+	 * FOREIGN KEY (CreditCardID)
+	 * REFERENCES Sales.CreditCard (CreditCardID)
+	 * 
+ */ + public void setCreditCardID(java.lang.Integer value) { + setValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.ContactCreditCard.ContactCreditCard.CreditCardID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT FK_ContactCreditCard_CreditCard_CreditCardID
+	 * FOREIGN KEY (CreditCardID)
+	 * REFERENCES Sales.CreditCard (CreditCardID)
+	 * 
+ */ + @javax.persistence.Column(name = "CreditCardID", nullable = false, precision = 10) + public java.lang.Integer getCreditCardID() { + return getValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.ContactCreditCard.ContactCreditCard.CreditCardID); + } + + /** + * An uncommented item + */ + public void setModifiedDate(java.sql.Timestamp value) { + setValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.ContactCreditCard.ContactCreditCard.ModifiedDate, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "ModifiedDate", nullable = false) + public java.sql.Timestamp getModifiedDate() { + return getValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.ContactCreditCard.ContactCreditCard.ModifiedDate); + } + + /** + * Create a detached ContactCreditCard + */ + public ContactCreditCard() { + super(org.jooq.examples.sqlserver.adventureworks.sales.tables.ContactCreditCard.ContactCreditCard); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/sales/tables/records/CountryRegionCurrency.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/sales/tables/records/CountryRegionCurrency.java new file mode 100644 index 00000000000..0ebdb6bb9cc --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/sales/tables/records/CountryRegionCurrency.java @@ -0,0 +1,100 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.sales.tables.records; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "CountryRegionCurrency", schema = "Sales", uniqueConstraints = { + @javax.persistence.UniqueConstraint(columnNames = {"CountryRegionCode", "CurrencyCode"}) +}) +public class CountryRegionCurrency extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = 1179363900; + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT FK_CountryRegionCurrency_CountryRegion_CountryRegionCode
+	 * FOREIGN KEY (CountryRegionCode)
+	 * REFERENCES Person.CountryRegion (CountryRegionCode)
+	 * 
+ */ + public void setCountryRegionCode(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.CountryRegionCurrency.CountryRegionCurrency.CountryRegionCode, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT FK_CountryRegionCurrency_CountryRegion_CountryRegionCode
+	 * FOREIGN KEY (CountryRegionCode)
+	 * REFERENCES Person.CountryRegion (CountryRegionCode)
+	 * 
+ */ + @javax.persistence.Column(name = "CountryRegionCode", nullable = false, length = 3) + public java.lang.String getCountryRegionCode() { + return getValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.CountryRegionCurrency.CountryRegionCurrency.CountryRegionCode); + } + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT FK_CountryRegionCurrency_Currency_CurrencyCode
+	 * FOREIGN KEY (CurrencyCode)
+	 * REFERENCES Sales.Currency (CurrencyCode)
+	 * 
+ */ + public void setCurrencyCode(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.CountryRegionCurrency.CountryRegionCurrency.CurrencyCode, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT FK_CountryRegionCurrency_Currency_CurrencyCode
+	 * FOREIGN KEY (CurrencyCode)
+	 * REFERENCES Sales.Currency (CurrencyCode)
+	 * 
+ */ + @javax.persistence.Column(name = "CurrencyCode", nullable = false, length = 3) + public java.lang.String getCurrencyCode() { + return getValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.CountryRegionCurrency.CountryRegionCurrency.CurrencyCode); + } + + /** + * An uncommented item + */ + public void setModifiedDate(java.sql.Timestamp value) { + setValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.CountryRegionCurrency.CountryRegionCurrency.ModifiedDate, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "ModifiedDate", nullable = false) + public java.sql.Timestamp getModifiedDate() { + return getValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.CountryRegionCurrency.CountryRegionCurrency.ModifiedDate); + } + + /** + * Create a detached CountryRegionCurrency + */ + public CountryRegionCurrency() { + super(org.jooq.examples.sqlserver.adventureworks.sales.tables.CountryRegionCurrency.CountryRegionCurrency); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/sales/tables/records/CreditCard.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/sales/tables/records/CreditCard.java new file mode 100644 index 00000000000..aef89e57324 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/sales/tables/records/CreditCard.java @@ -0,0 +1,116 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.sales.tables.records; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "CreditCard", schema = "Sales") +public class CreditCard extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = -1021260457; + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setCreditCardID(java.lang.Integer value) { + setValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.CreditCard.CreditCard.CreditCardID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + @javax.persistence.Id + @javax.persistence.Column(name = "CreditCardID", unique = true, nullable = false, precision = 10) + public java.lang.Integer getCreditCardID() { + return getValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.CreditCard.CreditCard.CreditCardID); + } + + /** + * An uncommented item + */ + public void setCardType(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.CreditCard.CreditCard.CardType, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "CardType", nullable = false, length = 50) + public java.lang.String getCardType() { + return getValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.CreditCard.CreditCard.CardType); + } + + /** + * An uncommented item + */ + public void setCardNumber(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.CreditCard.CreditCard.CardNumber, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "CardNumber", nullable = false, length = 25) + public java.lang.String getCardNumber() { + return getValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.CreditCard.CreditCard.CardNumber); + } + + /** + * An uncommented item + */ + public void setExpMonth(java.lang.Byte value) { + setValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.CreditCard.CreditCard.ExpMonth, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "ExpMonth", nullable = false, precision = 3) + public java.lang.Byte getExpMonth() { + return getValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.CreditCard.CreditCard.ExpMonth); + } + + /** + * An uncommented item + */ + public void setExpYear(java.lang.Short value) { + setValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.CreditCard.CreditCard.ExpYear, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "ExpYear", nullable = false, precision = 5) + public java.lang.Short getExpYear() { + return getValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.CreditCard.CreditCard.ExpYear); + } + + /** + * An uncommented item + */ + public void setModifiedDate(java.sql.Timestamp value) { + setValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.CreditCard.CreditCard.ModifiedDate, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "ModifiedDate", nullable = false) + public java.sql.Timestamp getModifiedDate() { + return getValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.CreditCard.CreditCard.ModifiedDate); + } + + /** + * Create a detached CreditCard + */ + public CreditCard() { + super(org.jooq.examples.sqlserver.adventureworks.sales.tables.CreditCard.CreditCard); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/sales/tables/records/Currency.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/sales/tables/records/Currency.java new file mode 100644 index 00000000000..836575732bb --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/sales/tables/records/Currency.java @@ -0,0 +1,71 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.sales.tables.records; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "Currency", schema = "Sales") +public class Currency extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = -1836908586; + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setCurrencyCode(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.Currency.Currency.CurrencyCode, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + @javax.persistence.Id + @javax.persistence.Column(name = "CurrencyCode", unique = true, nullable = false, length = 3) + public java.lang.String getCurrencyCode() { + return getValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.Currency.Currency.CurrencyCode); + } + + /** + * An uncommented item + */ + public void setName(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.Currency.Currency.Name, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "Name", nullable = false, length = 50) + public java.lang.String getName() { + return getValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.Currency.Currency.Name); + } + + /** + * An uncommented item + */ + public void setModifiedDate(java.sql.Timestamp value) { + setValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.Currency.Currency.ModifiedDate, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "ModifiedDate", nullable = false) + public java.sql.Timestamp getModifiedDate() { + return getValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.Currency.Currency.ModifiedDate); + } + + /** + * Create a detached Currency + */ + public Currency() { + super(org.jooq.examples.sqlserver.adventureworks.sales.tables.Currency.Currency); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/sales/tables/records/CurrencyRate.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/sales/tables/records/CurrencyRate.java new file mode 100644 index 00000000000..0977f4a930f --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/sales/tables/records/CurrencyRate.java @@ -0,0 +1,155 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.sales.tables.records; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "CurrencyRate", schema = "Sales") +public class CurrencyRate extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = 757914674; + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setCurrencyRateID(java.lang.Integer value) { + setValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.CurrencyRate.CurrencyRate.CurrencyRateID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + @javax.persistence.Id + @javax.persistence.Column(name = "CurrencyRateID", unique = true, nullable = false, precision = 10) + public java.lang.Integer getCurrencyRateID() { + return getValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.CurrencyRate.CurrencyRate.CurrencyRateID); + } + + /** + * An uncommented item + */ + public void setCurrencyRateDate(java.sql.Timestamp value) { + setValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.CurrencyRate.CurrencyRate.CurrencyRateDate, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "CurrencyRateDate", nullable = false) + public java.sql.Timestamp getCurrencyRateDate() { + return getValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.CurrencyRate.CurrencyRate.CurrencyRateDate); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_CurrencyRate_Currency_FromCurrencyCode
+	 * FOREIGN KEY (FromCurrencyCode)
+	 * REFERENCES Sales.Currency (CurrencyCode)
+	 * 
+ */ + public void setFromCurrencyCode(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.CurrencyRate.CurrencyRate.FromCurrencyCode, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_CurrencyRate_Currency_FromCurrencyCode
+	 * FOREIGN KEY (FromCurrencyCode)
+	 * REFERENCES Sales.Currency (CurrencyCode)
+	 * 
+ */ + @javax.persistence.Column(name = "FromCurrencyCode", nullable = false, length = 3) + public java.lang.String getFromCurrencyCode() { + return getValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.CurrencyRate.CurrencyRate.FromCurrencyCode); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_CurrencyRate_Currency_ToCurrencyCode
+	 * FOREIGN KEY (ToCurrencyCode)
+	 * REFERENCES Sales.Currency (CurrencyCode)
+	 * 
+ */ + public void setToCurrencyCode(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.CurrencyRate.CurrencyRate.ToCurrencyCode, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_CurrencyRate_Currency_ToCurrencyCode
+	 * FOREIGN KEY (ToCurrencyCode)
+	 * REFERENCES Sales.Currency (CurrencyCode)
+	 * 
+ */ + @javax.persistence.Column(name = "ToCurrencyCode", nullable = false, length = 3) + public java.lang.String getToCurrencyCode() { + return getValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.CurrencyRate.CurrencyRate.ToCurrencyCode); + } + + /** + * An uncommented item + */ + public void setAverageRate(java.math.BigDecimal value) { + setValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.CurrencyRate.CurrencyRate.AverageRate, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "AverageRate", nullable = false, precision = 19, scale = 4) + public java.math.BigDecimal getAverageRate() { + return getValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.CurrencyRate.CurrencyRate.AverageRate); + } + + /** + * An uncommented item + */ + public void setEndOfDayRate(java.math.BigDecimal value) { + setValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.CurrencyRate.CurrencyRate.EndOfDayRate, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "EndOfDayRate", nullable = false, precision = 19, scale = 4) + public java.math.BigDecimal getEndOfDayRate() { + return getValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.CurrencyRate.CurrencyRate.EndOfDayRate); + } + + /** + * An uncommented item + */ + public void setModifiedDate(java.sql.Timestamp value) { + setValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.CurrencyRate.CurrencyRate.ModifiedDate, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "ModifiedDate", nullable = false) + public java.sql.Timestamp getModifiedDate() { + return getValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.CurrencyRate.CurrencyRate.ModifiedDate); + } + + /** + * Create a detached CurrencyRate + */ + public CurrencyRate() { + super(org.jooq.examples.sqlserver.adventureworks.sales.tables.CurrencyRate.CurrencyRate); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/sales/tables/records/Customer.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/sales/tables/records/Customer.java new file mode 100644 index 00000000000..2d926c55444 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/sales/tables/records/Customer.java @@ -0,0 +1,128 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.sales.tables.records; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "Customer", schema = "Sales") +public class Customer extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = 1582925698; + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setCustomerID(java.lang.Integer value) { + setValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.Customer.Customer.CustomerID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + @javax.persistence.Id + @javax.persistence.Column(name = "CustomerID", unique = true, nullable = false, precision = 10) + public java.lang.Integer getCustomerID() { + return getValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.Customer.Customer.CustomerID); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_Customer_SalesTerritory_TerritoryID
+	 * FOREIGN KEY (TerritoryID)
+	 * REFERENCES Sales.SalesTerritory (TerritoryID)
+	 * 
+ */ + public void setTerritoryID(java.lang.Integer value) { + setValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.Customer.Customer.TerritoryID, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_Customer_SalesTerritory_TerritoryID
+	 * FOREIGN KEY (TerritoryID)
+	 * REFERENCES Sales.SalesTerritory (TerritoryID)
+	 * 
+ */ + @javax.persistence.Column(name = "TerritoryID", precision = 10) + public java.lang.Integer getTerritoryID() { + return getValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.Customer.Customer.TerritoryID); + } + + /** + * An uncommented item + */ + public void setAccountNumber(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.Customer.Customer.AccountNumber, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "AccountNumber", nullable = false, length = 10) + public java.lang.String getAccountNumber() { + return getValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.Customer.Customer.AccountNumber); + } + + /** + * An uncommented item + */ + public void setCustomerType(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.Customer.Customer.CustomerType, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "CustomerType", nullable = false, length = 1) + public java.lang.String getCustomerType() { + return getValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.Customer.Customer.CustomerType); + } + + /** + * An uncommented item + */ + public void setrowguid(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.Customer.Customer.rowguid, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "rowguid", nullable = false) + public java.lang.String getrowguid() { + return getValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.Customer.Customer.rowguid); + } + + /** + * An uncommented item + */ + public void setModifiedDate(java.sql.Timestamp value) { + setValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.Customer.Customer.ModifiedDate, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "ModifiedDate", nullable = false) + public java.sql.Timestamp getModifiedDate() { + return getValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.Customer.Customer.ModifiedDate); + } + + /** + * Create a detached Customer + */ + public Customer() { + super(org.jooq.examples.sqlserver.adventureworks.sales.tables.Customer.Customer); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/sales/tables/records/CustomerAddress.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/sales/tables/records/CustomerAddress.java new file mode 100644 index 00000000000..d255b7366ff --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/sales/tables/records/CustomerAddress.java @@ -0,0 +1,142 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.sales.tables.records; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "CustomerAddress", schema = "Sales", uniqueConstraints = { + @javax.persistence.UniqueConstraint(columnNames = {"CustomerID", "AddressID"}) +}) +public class CustomerAddress extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = 1815203743; + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT FK_CustomerAddress_Customer_CustomerID
+	 * FOREIGN KEY (CustomerID)
+	 * REFERENCES Sales.Customer (CustomerID)
+	 * 
+ */ + public void setCustomerID(java.lang.Integer value) { + setValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.CustomerAddress.CustomerAddress.CustomerID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT FK_CustomerAddress_Customer_CustomerID
+	 * FOREIGN KEY (CustomerID)
+	 * REFERENCES Sales.Customer (CustomerID)
+	 * 
+ */ + @javax.persistence.Column(name = "CustomerID", nullable = false, precision = 10) + public java.lang.Integer getCustomerID() { + return getValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.CustomerAddress.CustomerAddress.CustomerID); + } + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT FK_CustomerAddress_Address_AddressID
+	 * FOREIGN KEY (AddressID)
+	 * REFERENCES Person.Address (AddressID)
+	 * 
+ */ + public void setAddressID(java.lang.Integer value) { + setValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.CustomerAddress.CustomerAddress.AddressID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT FK_CustomerAddress_Address_AddressID
+	 * FOREIGN KEY (AddressID)
+	 * REFERENCES Person.Address (AddressID)
+	 * 
+ */ + @javax.persistence.Column(name = "AddressID", nullable = false, precision = 10) + public java.lang.Integer getAddressID() { + return getValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.CustomerAddress.CustomerAddress.AddressID); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_CustomerAddress_AddressType_AddressTypeID
+	 * FOREIGN KEY (AddressTypeID)
+	 * REFERENCES Person.AddressType (AddressTypeID)
+	 * 
+ */ + public void setAddressTypeID(java.lang.Integer value) { + setValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.CustomerAddress.CustomerAddress.AddressTypeID, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_CustomerAddress_AddressType_AddressTypeID
+	 * FOREIGN KEY (AddressTypeID)
+	 * REFERENCES Person.AddressType (AddressTypeID)
+	 * 
+ */ + @javax.persistence.Column(name = "AddressTypeID", nullable = false, precision = 10) + public java.lang.Integer getAddressTypeID() { + return getValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.CustomerAddress.CustomerAddress.AddressTypeID); + } + + /** + * An uncommented item + */ + public void setrowguid(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.CustomerAddress.CustomerAddress.rowguid, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "rowguid", nullable = false) + public java.lang.String getrowguid() { + return getValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.CustomerAddress.CustomerAddress.rowguid); + } + + /** + * An uncommented item + */ + public void setModifiedDate(java.sql.Timestamp value) { + setValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.CustomerAddress.CustomerAddress.ModifiedDate, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "ModifiedDate", nullable = false) + public java.sql.Timestamp getModifiedDate() { + return getValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.CustomerAddress.CustomerAddress.ModifiedDate); + } + + /** + * Create a detached CustomerAddress + */ + public CustomerAddress() { + super(org.jooq.examples.sqlserver.adventureworks.sales.tables.CustomerAddress.CustomerAddress); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/sales/tables/records/Individual.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/sales/tables/records/Individual.java new file mode 100644 index 00000000000..c9570c6afee --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/sales/tables/records/Individual.java @@ -0,0 +1,116 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.sales.tables.records; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "Individual", schema = "Sales") +public class Individual extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = 2146286714; + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT FK_Individual_Customer_CustomerID
+	 * FOREIGN KEY (CustomerID)
+	 * REFERENCES Sales.Customer (CustomerID)
+	 * 
+ */ + public void setCustomerID(java.lang.Integer value) { + setValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.Individual.Individual.CustomerID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT FK_Individual_Customer_CustomerID
+	 * FOREIGN KEY (CustomerID)
+	 * REFERENCES Sales.Customer (CustomerID)
+	 * 
+ */ + @javax.persistence.Id + @javax.persistence.Column(name = "CustomerID", unique = true, nullable = false, precision = 10) + public java.lang.Integer getCustomerID() { + return getValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.Individual.Individual.CustomerID); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_Individual_Contact_ContactID
+	 * FOREIGN KEY (ContactID)
+	 * REFERENCES Person.Contact (ContactID)
+	 * 
+ */ + public void setContactID(java.lang.Integer value) { + setValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.Individual.Individual.ContactID, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_Individual_Contact_ContactID
+	 * FOREIGN KEY (ContactID)
+	 * REFERENCES Person.Contact (ContactID)
+	 * 
+ */ + @javax.persistence.Column(name = "ContactID", nullable = false, precision = 10) + public java.lang.Integer getContactID() { + return getValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.Individual.Individual.ContactID); + } + + /** + * An uncommented item + * + * The SQL type of this item (xml, ) could not be mapped.
+ * Deserialising this field might not work! + */ + public void setDemographics(java.lang.Object value) { + setValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.Individual.Individual.Demographics, value); + } + + /** + * An uncommented item + * + * The SQL type of this item (xml, ) could not be mapped.
+ * Deserialising this field might not work! + */ + @javax.persistence.Column(name = "Demographics") + public java.lang.Object getDemographics() { + return getValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.Individual.Individual.Demographics); + } + + /** + * An uncommented item + */ + public void setModifiedDate(java.sql.Timestamp value) { + setValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.Individual.Individual.ModifiedDate, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "ModifiedDate", nullable = false) + public java.sql.Timestamp getModifiedDate() { + return getValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.Individual.Individual.ModifiedDate); + } + + /** + * Create a detached Individual + */ + public Individual() { + super(org.jooq.examples.sqlserver.adventureworks.sales.tables.Individual.Individual); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/sales/tables/records/SalesOrderDetail.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/sales/tables/records/SalesOrderDetail.java new file mode 100644 index 00000000000..3c11ba35fab --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/sales/tables/records/SalesOrderDetail.java @@ -0,0 +1,232 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.sales.tables.records; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "SalesOrderDetail", schema = "Sales", uniqueConstraints = { + @javax.persistence.UniqueConstraint(columnNames = {"SalesOrderID", "SalesOrderDetailID"}) +}) +public class SalesOrderDetail extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = 1034858190; + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT FK_SalesOrderDetail_SalesOrderHeader_SalesOrderID
+	 * FOREIGN KEY (SalesOrderID)
+	 * REFERENCES Sales.SalesOrderHeader (SalesOrderID)
+	 * 
+ */ + public void setSalesOrderID(java.lang.Integer value) { + setValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesOrderDetail.SalesOrderDetail.SalesOrderID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT FK_SalesOrderDetail_SalesOrderHeader_SalesOrderID
+	 * FOREIGN KEY (SalesOrderID)
+	 * REFERENCES Sales.SalesOrderHeader (SalesOrderID)
+	 * 
+ */ + @javax.persistence.Column(name = "SalesOrderID", nullable = false, precision = 10) + public java.lang.Integer getSalesOrderID() { + return getValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesOrderDetail.SalesOrderDetail.SalesOrderID); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setSalesOrderDetailID(java.lang.Integer value) { + setValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesOrderDetail.SalesOrderDetail.SalesOrderDetailID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + @javax.persistence.Column(name = "SalesOrderDetailID", nullable = false, precision = 10) + public java.lang.Integer getSalesOrderDetailID() { + return getValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesOrderDetail.SalesOrderDetail.SalesOrderDetailID); + } + + /** + * An uncommented item + */ + public void setCarrierTrackingNumber(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesOrderDetail.SalesOrderDetail.CarrierTrackingNumber, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "CarrierTrackingNumber", length = 25) + public java.lang.String getCarrierTrackingNumber() { + return getValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesOrderDetail.SalesOrderDetail.CarrierTrackingNumber); + } + + /** + * An uncommented item + */ + public void setOrderQty(java.lang.Short value) { + setValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesOrderDetail.SalesOrderDetail.OrderQty, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "OrderQty", nullable = false, precision = 5) + public java.lang.Short getOrderQty() { + return getValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesOrderDetail.SalesOrderDetail.OrderQty); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_SalesOrderDetail_SpecialOfferProduct_SpecialOfferIDProductID
+	 * FOREIGN KEY (SpecialOfferID, ProductID)
+	 * REFERENCES Sales.SpecialOfferProduct (SpecialOfferID, ProductID)
+	 * 
+ */ + public void setProductID(java.lang.Integer value) { + setValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesOrderDetail.SalesOrderDetail.ProductID, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_SalesOrderDetail_SpecialOfferProduct_SpecialOfferIDProductID
+	 * FOREIGN KEY (SpecialOfferID, ProductID)
+	 * REFERENCES Sales.SpecialOfferProduct (SpecialOfferID, ProductID)
+	 * 
+ */ + @javax.persistence.Column(name = "ProductID", nullable = false, precision = 10) + public java.lang.Integer getProductID() { + return getValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesOrderDetail.SalesOrderDetail.ProductID); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_SalesOrderDetail_SpecialOfferProduct_SpecialOfferIDProductID
+	 * FOREIGN KEY (SpecialOfferID, ProductID)
+	 * REFERENCES Sales.SpecialOfferProduct (SpecialOfferID, ProductID)
+	 * 
+ */ + public void setSpecialOfferID(java.lang.Integer value) { + setValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesOrderDetail.SalesOrderDetail.SpecialOfferID, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_SalesOrderDetail_SpecialOfferProduct_SpecialOfferIDProductID
+	 * FOREIGN KEY (SpecialOfferID, ProductID)
+	 * REFERENCES Sales.SpecialOfferProduct (SpecialOfferID, ProductID)
+	 * 
+ */ + @javax.persistence.Column(name = "SpecialOfferID", nullable = false, precision = 10) + public java.lang.Integer getSpecialOfferID() { + return getValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesOrderDetail.SalesOrderDetail.SpecialOfferID); + } + + /** + * An uncommented item + */ + public void setUnitPrice(java.math.BigDecimal value) { + setValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesOrderDetail.SalesOrderDetail.UnitPrice, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "UnitPrice", nullable = false, precision = 19, scale = 4) + public java.math.BigDecimal getUnitPrice() { + return getValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesOrderDetail.SalesOrderDetail.UnitPrice); + } + + /** + * An uncommented item + */ + public void setUnitPriceDiscount(java.math.BigDecimal value) { + setValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesOrderDetail.SalesOrderDetail.UnitPriceDiscount, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "UnitPriceDiscount", nullable = false, precision = 19, scale = 4) + public java.math.BigDecimal getUnitPriceDiscount() { + return getValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesOrderDetail.SalesOrderDetail.UnitPriceDiscount); + } + + /** + * An uncommented item + */ + public void setLineTotal(java.math.BigDecimal value) { + setValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesOrderDetail.SalesOrderDetail.LineTotal, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "LineTotal", nullable = false, precision = 38, scale = 6) + public java.math.BigDecimal getLineTotal() { + return getValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesOrderDetail.SalesOrderDetail.LineTotal); + } + + /** + * An uncommented item + */ + public void setrowguid(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesOrderDetail.SalesOrderDetail.rowguid, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "rowguid", nullable = false) + public java.lang.String getrowguid() { + return getValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesOrderDetail.SalesOrderDetail.rowguid); + } + + /** + * An uncommented item + */ + public void setModifiedDate(java.sql.Timestamp value) { + setValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesOrderDetail.SalesOrderDetail.ModifiedDate, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "ModifiedDate", nullable = false) + public java.sql.Timestamp getModifiedDate() { + return getValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesOrderDetail.SalesOrderDetail.ModifiedDate); + } + + /** + * Create a detached SalesOrderDetail + */ + public SalesOrderDetail() { + super(org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesOrderDetail.SalesOrderDetail); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/sales/tables/records/SalesOrderHeader.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/sales/tables/records/SalesOrderHeader.java new file mode 100644 index 00000000000..14c6c84d1ba --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/sales/tables/records/SalesOrderHeader.java @@ -0,0 +1,539 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.sales.tables.records; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "SalesOrderHeader", schema = "Sales") +public class SalesOrderHeader extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = -1644021636; + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setSalesOrderID(java.lang.Integer value) { + setValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesOrderHeader.SalesOrderHeader.SalesOrderID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + @javax.persistence.Id + @javax.persistence.Column(name = "SalesOrderID", unique = true, nullable = false, precision = 10) + public java.lang.Integer getSalesOrderID() { + return getValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesOrderHeader.SalesOrderHeader.SalesOrderID); + } + + /** + * An uncommented item + */ + public void setRevisionNumber(java.lang.Byte value) { + setValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesOrderHeader.SalesOrderHeader.RevisionNumber, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "RevisionNumber", nullable = false, precision = 3) + public java.lang.Byte getRevisionNumber() { + return getValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesOrderHeader.SalesOrderHeader.RevisionNumber); + } + + /** + * An uncommented item + */ + public void setOrderDate(java.sql.Timestamp value) { + setValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesOrderHeader.SalesOrderHeader.OrderDate, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "OrderDate", nullable = false) + public java.sql.Timestamp getOrderDate() { + return getValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesOrderHeader.SalesOrderHeader.OrderDate); + } + + /** + * An uncommented item + */ + public void setDueDate(java.sql.Timestamp value) { + setValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesOrderHeader.SalesOrderHeader.DueDate, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "DueDate", nullable = false) + public java.sql.Timestamp getDueDate() { + return getValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesOrderHeader.SalesOrderHeader.DueDate); + } + + /** + * An uncommented item + */ + public void setShipDate(java.sql.Timestamp value) { + setValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesOrderHeader.SalesOrderHeader.ShipDate, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "ShipDate") + public java.sql.Timestamp getShipDate() { + return getValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesOrderHeader.SalesOrderHeader.ShipDate); + } + + /** + * An uncommented item + */ + public void setStatus(java.lang.Byte value) { + setValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesOrderHeader.SalesOrderHeader.Status, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "Status", nullable = false, precision = 3) + public java.lang.Byte getStatus() { + return getValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesOrderHeader.SalesOrderHeader.Status); + } + + /** + * An uncommented item + */ + public void setOnlineOrderFlag(java.lang.Boolean value) { + setValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesOrderHeader.SalesOrderHeader.OnlineOrderFlag, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "OnlineOrderFlag", nullable = false) + public java.lang.Boolean getOnlineOrderFlag() { + return getValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesOrderHeader.SalesOrderHeader.OnlineOrderFlag); + } + + /** + * An uncommented item + */ + public void setSalesOrderNumber(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesOrderHeader.SalesOrderHeader.SalesOrderNumber, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "SalesOrderNumber", nullable = false, length = 25) + public java.lang.String getSalesOrderNumber() { + return getValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesOrderHeader.SalesOrderHeader.SalesOrderNumber); + } + + /** + * An uncommented item + */ + public void setPurchaseOrderNumber(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesOrderHeader.SalesOrderHeader.PurchaseOrderNumber, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "PurchaseOrderNumber", length = 25) + public java.lang.String getPurchaseOrderNumber() { + return getValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesOrderHeader.SalesOrderHeader.PurchaseOrderNumber); + } + + /** + * An uncommented item + */ + public void setAccountNumber(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesOrderHeader.SalesOrderHeader.AccountNumber, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "AccountNumber", length = 15) + public java.lang.String getAccountNumber() { + return getValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesOrderHeader.SalesOrderHeader.AccountNumber); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_SalesOrderHeader_Customer_CustomerID
+	 * FOREIGN KEY (CustomerID)
+	 * REFERENCES Sales.Customer (CustomerID)
+	 * 
+ */ + public void setCustomerID(java.lang.Integer value) { + setValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesOrderHeader.SalesOrderHeader.CustomerID, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_SalesOrderHeader_Customer_CustomerID
+	 * FOREIGN KEY (CustomerID)
+	 * REFERENCES Sales.Customer (CustomerID)
+	 * 
+ */ + @javax.persistence.Column(name = "CustomerID", nullable = false, precision = 10) + public java.lang.Integer getCustomerID() { + return getValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesOrderHeader.SalesOrderHeader.CustomerID); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_SalesOrderHeader_Contact_ContactID
+	 * FOREIGN KEY (ContactID)
+	 * REFERENCES Person.Contact (ContactID)
+	 * 
+ */ + public void setContactID(java.lang.Integer value) { + setValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesOrderHeader.SalesOrderHeader.ContactID, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_SalesOrderHeader_Contact_ContactID
+	 * FOREIGN KEY (ContactID)
+	 * REFERENCES Person.Contact (ContactID)
+	 * 
+ */ + @javax.persistence.Column(name = "ContactID", nullable = false, precision = 10) + public java.lang.Integer getContactID() { + return getValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesOrderHeader.SalesOrderHeader.ContactID); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_SalesOrderHeader_SalesPerson_SalesPersonID
+	 * FOREIGN KEY (SalesPersonID)
+	 * REFERENCES Sales.SalesPerson (SalesPersonID)
+	 * 
+ */ + public void setSalesPersonID(java.lang.Integer value) { + setValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesOrderHeader.SalesOrderHeader.SalesPersonID, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_SalesOrderHeader_SalesPerson_SalesPersonID
+	 * FOREIGN KEY (SalesPersonID)
+	 * REFERENCES Sales.SalesPerson (SalesPersonID)
+	 * 
+ */ + @javax.persistence.Column(name = "SalesPersonID", precision = 10) + public java.lang.Integer getSalesPersonID() { + return getValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesOrderHeader.SalesOrderHeader.SalesPersonID); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_SalesOrderHeader_SalesTerritory_TerritoryID
+	 * FOREIGN KEY (TerritoryID)
+	 * REFERENCES Sales.SalesTerritory (TerritoryID)
+	 * 
+ */ + public void setTerritoryID(java.lang.Integer value) { + setValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesOrderHeader.SalesOrderHeader.TerritoryID, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_SalesOrderHeader_SalesTerritory_TerritoryID
+	 * FOREIGN KEY (TerritoryID)
+	 * REFERENCES Sales.SalesTerritory (TerritoryID)
+	 * 
+ */ + @javax.persistence.Column(name = "TerritoryID", precision = 10) + public java.lang.Integer getTerritoryID() { + return getValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesOrderHeader.SalesOrderHeader.TerritoryID); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_SalesOrderHeader_Address_BillToAddressID
+	 * FOREIGN KEY (BillToAddressID)
+	 * REFERENCES Person.Address (AddressID)
+	 * 
+ */ + public void setBillToAddressID(java.lang.Integer value) { + setValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesOrderHeader.SalesOrderHeader.BillToAddressID, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_SalesOrderHeader_Address_BillToAddressID
+	 * FOREIGN KEY (BillToAddressID)
+	 * REFERENCES Person.Address (AddressID)
+	 * 
+ */ + @javax.persistence.Column(name = "BillToAddressID", nullable = false, precision = 10) + public java.lang.Integer getBillToAddressID() { + return getValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesOrderHeader.SalesOrderHeader.BillToAddressID); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_SalesOrderHeader_Address_ShipToAddressID
+	 * FOREIGN KEY (ShipToAddressID)
+	 * REFERENCES Person.Address (AddressID)
+	 * 
+ */ + public void setShipToAddressID(java.lang.Integer value) { + setValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesOrderHeader.SalesOrderHeader.ShipToAddressID, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_SalesOrderHeader_Address_ShipToAddressID
+	 * FOREIGN KEY (ShipToAddressID)
+	 * REFERENCES Person.Address (AddressID)
+	 * 
+ */ + @javax.persistence.Column(name = "ShipToAddressID", nullable = false, precision = 10) + public java.lang.Integer getShipToAddressID() { + return getValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesOrderHeader.SalesOrderHeader.ShipToAddressID); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_SalesOrderHeader_ShipMethod_ShipMethodID
+	 * FOREIGN KEY (ShipMethodID)
+	 * REFERENCES Purchasing.ShipMethod (ShipMethodID)
+	 * 
+ */ + public void setShipMethodID(java.lang.Integer value) { + setValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesOrderHeader.SalesOrderHeader.ShipMethodID, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_SalesOrderHeader_ShipMethod_ShipMethodID
+	 * FOREIGN KEY (ShipMethodID)
+	 * REFERENCES Purchasing.ShipMethod (ShipMethodID)
+	 * 
+ */ + @javax.persistence.Column(name = "ShipMethodID", nullable = false, precision = 10) + public java.lang.Integer getShipMethodID() { + return getValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesOrderHeader.SalesOrderHeader.ShipMethodID); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_SalesOrderHeader_CreditCard_CreditCardID
+	 * FOREIGN KEY (CreditCardID)
+	 * REFERENCES Sales.CreditCard (CreditCardID)
+	 * 
+ */ + public void setCreditCardID(java.lang.Integer value) { + setValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesOrderHeader.SalesOrderHeader.CreditCardID, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_SalesOrderHeader_CreditCard_CreditCardID
+	 * FOREIGN KEY (CreditCardID)
+	 * REFERENCES Sales.CreditCard (CreditCardID)
+	 * 
+ */ + @javax.persistence.Column(name = "CreditCardID", precision = 10) + public java.lang.Integer getCreditCardID() { + return getValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesOrderHeader.SalesOrderHeader.CreditCardID); + } + + /** + * An uncommented item + */ + public void setCreditCardApprovalCode(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesOrderHeader.SalesOrderHeader.CreditCardApprovalCode, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "CreditCardApprovalCode", length = 15) + public java.lang.String getCreditCardApprovalCode() { + return getValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesOrderHeader.SalesOrderHeader.CreditCardApprovalCode); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_SalesOrderHeader_CurrencyRate_CurrencyRateID
+	 * FOREIGN KEY (CurrencyRateID)
+	 * REFERENCES Sales.CurrencyRate (CurrencyRateID)
+	 * 
+ */ + public void setCurrencyRateID(java.lang.Integer value) { + setValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesOrderHeader.SalesOrderHeader.CurrencyRateID, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_SalesOrderHeader_CurrencyRate_CurrencyRateID
+	 * FOREIGN KEY (CurrencyRateID)
+	 * REFERENCES Sales.CurrencyRate (CurrencyRateID)
+	 * 
+ */ + @javax.persistence.Column(name = "CurrencyRateID", precision = 10) + public java.lang.Integer getCurrencyRateID() { + return getValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesOrderHeader.SalesOrderHeader.CurrencyRateID); + } + + /** + * An uncommented item + */ + public void setSubTotal(java.math.BigDecimal value) { + setValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesOrderHeader.SalesOrderHeader.SubTotal, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "SubTotal", nullable = false, precision = 19, scale = 4) + public java.math.BigDecimal getSubTotal() { + return getValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesOrderHeader.SalesOrderHeader.SubTotal); + } + + /** + * An uncommented item + */ + public void setTaxAmt(java.math.BigDecimal value) { + setValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesOrderHeader.SalesOrderHeader.TaxAmt, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "TaxAmt", nullable = false, precision = 19, scale = 4) + public java.math.BigDecimal getTaxAmt() { + return getValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesOrderHeader.SalesOrderHeader.TaxAmt); + } + + /** + * An uncommented item + */ + public void setFreight(java.math.BigDecimal value) { + setValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesOrderHeader.SalesOrderHeader.Freight, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "Freight", nullable = false, precision = 19, scale = 4) + public java.math.BigDecimal getFreight() { + return getValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesOrderHeader.SalesOrderHeader.Freight); + } + + /** + * An uncommented item + */ + public void setTotalDue(java.math.BigDecimal value) { + setValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesOrderHeader.SalesOrderHeader.TotalDue, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "TotalDue", nullable = false, precision = 19, scale = 4) + public java.math.BigDecimal getTotalDue() { + return getValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesOrderHeader.SalesOrderHeader.TotalDue); + } + + /** + * An uncommented item + */ + public void setComment(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesOrderHeader.SalesOrderHeader.Comment, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "Comment", length = 128) + public java.lang.String getComment() { + return getValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesOrderHeader.SalesOrderHeader.Comment); + } + + /** + * An uncommented item + */ + public void setrowguid(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesOrderHeader.SalesOrderHeader.rowguid, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "rowguid", nullable = false) + public java.lang.String getrowguid() { + return getValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesOrderHeader.SalesOrderHeader.rowguid); + } + + /** + * An uncommented item + */ + public void setModifiedDate(java.sql.Timestamp value) { + setValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesOrderHeader.SalesOrderHeader.ModifiedDate, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "ModifiedDate", nullable = false) + public java.sql.Timestamp getModifiedDate() { + return getValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesOrderHeader.SalesOrderHeader.ModifiedDate); + } + + /** + * Create a detached SalesOrderHeader + */ + public SalesOrderHeader() { + super(org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesOrderHeader.SalesOrderHeader); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/sales/tables/records/SalesOrderHeaderSalesReason.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/sales/tables/records/SalesOrderHeaderSalesReason.java new file mode 100644 index 00000000000..773bd341cbe --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/sales/tables/records/SalesOrderHeaderSalesReason.java @@ -0,0 +1,100 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.sales.tables.records; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "SalesOrderHeaderSalesReason", schema = "Sales", uniqueConstraints = { + @javax.persistence.UniqueConstraint(columnNames = {"SalesOrderID", "SalesReasonID"}) +}) +public class SalesOrderHeaderSalesReason extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = -1223554308; + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT FK_SalesOrderHeaderSalesReason_SalesOrderHeader_SalesOrderID
+	 * FOREIGN KEY (SalesOrderID)
+	 * REFERENCES Sales.SalesOrderHeader (SalesOrderID)
+	 * 
+ */ + public void setSalesOrderID(java.lang.Integer value) { + setValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesOrderHeaderSalesReason.SalesOrderHeaderSalesReason.SalesOrderID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT FK_SalesOrderHeaderSalesReason_SalesOrderHeader_SalesOrderID
+	 * FOREIGN KEY (SalesOrderID)
+	 * REFERENCES Sales.SalesOrderHeader (SalesOrderID)
+	 * 
+ */ + @javax.persistence.Column(name = "SalesOrderID", nullable = false, precision = 10) + public java.lang.Integer getSalesOrderID() { + return getValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesOrderHeaderSalesReason.SalesOrderHeaderSalesReason.SalesOrderID); + } + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT FK_SalesOrderHeaderSalesReason_SalesReason_SalesReasonID
+	 * FOREIGN KEY (SalesReasonID)
+	 * REFERENCES Sales.SalesReason (SalesReasonID)
+	 * 
+ */ + public void setSalesReasonID(java.lang.Integer value) { + setValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesOrderHeaderSalesReason.SalesOrderHeaderSalesReason.SalesReasonID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT FK_SalesOrderHeaderSalesReason_SalesReason_SalesReasonID
+	 * FOREIGN KEY (SalesReasonID)
+	 * REFERENCES Sales.SalesReason (SalesReasonID)
+	 * 
+ */ + @javax.persistence.Column(name = "SalesReasonID", nullable = false, precision = 10) + public java.lang.Integer getSalesReasonID() { + return getValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesOrderHeaderSalesReason.SalesOrderHeaderSalesReason.SalesReasonID); + } + + /** + * An uncommented item + */ + public void setModifiedDate(java.sql.Timestamp value) { + setValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesOrderHeaderSalesReason.SalesOrderHeaderSalesReason.ModifiedDate, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "ModifiedDate", nullable = false) + public java.sql.Timestamp getModifiedDate() { + return getValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesOrderHeaderSalesReason.SalesOrderHeaderSalesReason.ModifiedDate); + } + + /** + * Create a detached SalesOrderHeaderSalesReason + */ + public SalesOrderHeaderSalesReason() { + super(org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesOrderHeaderSalesReason.SalesOrderHeaderSalesReason); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/sales/tables/records/SalesPerson.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/sales/tables/records/SalesPerson.java new file mode 100644 index 00000000000..70fd97e12f2 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/sales/tables/records/SalesPerson.java @@ -0,0 +1,185 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.sales.tables.records; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "SalesPerson", schema = "Sales") +public class SalesPerson extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = 105088995; + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT FK_SalesPerson_Employee_SalesPersonID
+	 * FOREIGN KEY (SalesPersonID)
+	 * REFERENCES HumanResources.Employee (EmployeeID)
+	 * 
+ */ + public void setSalesPersonID(java.lang.Integer value) { + setValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesPerson.SalesPerson.SalesPersonID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT FK_SalesPerson_Employee_SalesPersonID
+	 * FOREIGN KEY (SalesPersonID)
+	 * REFERENCES HumanResources.Employee (EmployeeID)
+	 * 
+ */ + @javax.persistence.Id + @javax.persistence.Column(name = "SalesPersonID", unique = true, nullable = false, precision = 10) + public java.lang.Integer getSalesPersonID() { + return getValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesPerson.SalesPerson.SalesPersonID); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_SalesPerson_SalesTerritory_TerritoryID
+	 * FOREIGN KEY (TerritoryID)
+	 * REFERENCES Sales.SalesTerritory (TerritoryID)
+	 * 
+ */ + public void setTerritoryID(java.lang.Integer value) { + setValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesPerson.SalesPerson.TerritoryID, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_SalesPerson_SalesTerritory_TerritoryID
+	 * FOREIGN KEY (TerritoryID)
+	 * REFERENCES Sales.SalesTerritory (TerritoryID)
+	 * 
+ */ + @javax.persistence.Column(name = "TerritoryID", precision = 10) + public java.lang.Integer getTerritoryID() { + return getValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesPerson.SalesPerson.TerritoryID); + } + + /** + * An uncommented item + */ + public void setSalesQuota(java.math.BigDecimal value) { + setValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesPerson.SalesPerson.SalesQuota, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "SalesQuota", precision = 19, scale = 4) + public java.math.BigDecimal getSalesQuota() { + return getValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesPerson.SalesPerson.SalesQuota); + } + + /** + * An uncommented item + */ + public void setBonus(java.math.BigDecimal value) { + setValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesPerson.SalesPerson.Bonus, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "Bonus", nullable = false, precision = 19, scale = 4) + public java.math.BigDecimal getBonus() { + return getValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesPerson.SalesPerson.Bonus); + } + + /** + * An uncommented item + */ + public void setCommissionPct(java.math.BigDecimal value) { + setValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesPerson.SalesPerson.CommissionPct, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "CommissionPct", nullable = false, precision = 10, scale = 4) + public java.math.BigDecimal getCommissionPct() { + return getValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesPerson.SalesPerson.CommissionPct); + } + + /** + * An uncommented item + */ + public void setSalesYTD(java.math.BigDecimal value) { + setValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesPerson.SalesPerson.SalesYTD, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "SalesYTD", nullable = false, precision = 19, scale = 4) + public java.math.BigDecimal getSalesYTD() { + return getValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesPerson.SalesPerson.SalesYTD); + } + + /** + * An uncommented item + */ + public void setSalesLastYear(java.math.BigDecimal value) { + setValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesPerson.SalesPerson.SalesLastYear, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "SalesLastYear", nullable = false, precision = 19, scale = 4) + public java.math.BigDecimal getSalesLastYear() { + return getValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesPerson.SalesPerson.SalesLastYear); + } + + /** + * An uncommented item + */ + public void setrowguid(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesPerson.SalesPerson.rowguid, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "rowguid", nullable = false) + public java.lang.String getrowguid() { + return getValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesPerson.SalesPerson.rowguid); + } + + /** + * An uncommented item + */ + public void setModifiedDate(java.sql.Timestamp value) { + setValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesPerson.SalesPerson.ModifiedDate, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "ModifiedDate", nullable = false) + public java.sql.Timestamp getModifiedDate() { + return getValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesPerson.SalesPerson.ModifiedDate); + } + + /** + * Create a detached SalesPerson + */ + public SalesPerson() { + super(org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesPerson.SalesPerson); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/sales/tables/records/SalesPersonQuotaHistory.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/sales/tables/records/SalesPersonQuotaHistory.java new file mode 100644 index 00000000000..9ad1175b322 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/sales/tables/records/SalesPersonQuotaHistory.java @@ -0,0 +1,118 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.sales.tables.records; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "SalesPersonQuotaHistory", schema = "Sales", uniqueConstraints = { + @javax.persistence.UniqueConstraint(columnNames = {"SalesPersonID", "QuotaDate"}) +}) +public class SalesPersonQuotaHistory extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = -1127631717; + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT FK_SalesPersonQuotaHistory_SalesPerson_SalesPersonID
+	 * FOREIGN KEY (SalesPersonID)
+	 * REFERENCES Sales.SalesPerson (SalesPersonID)
+	 * 
+ */ + public void setSalesPersonID(java.lang.Integer value) { + setValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesPersonQuotaHistory.SalesPersonQuotaHistory.SalesPersonID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT FK_SalesPersonQuotaHistory_SalesPerson_SalesPersonID
+	 * FOREIGN KEY (SalesPersonID)
+	 * REFERENCES Sales.SalesPerson (SalesPersonID)
+	 * 
+ */ + @javax.persistence.Column(name = "SalesPersonID", nullable = false, precision = 10) + public java.lang.Integer getSalesPersonID() { + return getValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesPersonQuotaHistory.SalesPersonQuotaHistory.SalesPersonID); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setQuotaDate(java.sql.Timestamp value) { + setValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesPersonQuotaHistory.SalesPersonQuotaHistory.QuotaDate, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + @javax.persistence.Column(name = "QuotaDate", nullable = false) + public java.sql.Timestamp getQuotaDate() { + return getValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesPersonQuotaHistory.SalesPersonQuotaHistory.QuotaDate); + } + + /** + * An uncommented item + */ + public void setSalesQuota(java.math.BigDecimal value) { + setValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesPersonQuotaHistory.SalesPersonQuotaHistory.SalesQuota, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "SalesQuota", nullable = false, precision = 19, scale = 4) + public java.math.BigDecimal getSalesQuota() { + return getValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesPersonQuotaHistory.SalesPersonQuotaHistory.SalesQuota); + } + + /** + * An uncommented item + */ + public void setrowguid(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesPersonQuotaHistory.SalesPersonQuotaHistory.rowguid, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "rowguid", nullable = false) + public java.lang.String getrowguid() { + return getValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesPersonQuotaHistory.SalesPersonQuotaHistory.rowguid); + } + + /** + * An uncommented item + */ + public void setModifiedDate(java.sql.Timestamp value) { + setValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesPersonQuotaHistory.SalesPersonQuotaHistory.ModifiedDate, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "ModifiedDate", nullable = false) + public java.sql.Timestamp getModifiedDate() { + return getValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesPersonQuotaHistory.SalesPersonQuotaHistory.ModifiedDate); + } + + /** + * Create a detached SalesPersonQuotaHistory + */ + public SalesPersonQuotaHistory() { + super(org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesPersonQuotaHistory.SalesPersonQuotaHistory); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/sales/tables/records/SalesReason.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/sales/tables/records/SalesReason.java new file mode 100644 index 00000000000..53faa471542 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/sales/tables/records/SalesReason.java @@ -0,0 +1,86 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.sales.tables.records; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "SalesReason", schema = "Sales") +public class SalesReason extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = -920405880; + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setSalesReasonID(java.lang.Integer value) { + setValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesReason.SalesReason.SalesReasonID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + @javax.persistence.Id + @javax.persistence.Column(name = "SalesReasonID", unique = true, nullable = false, precision = 10) + public java.lang.Integer getSalesReasonID() { + return getValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesReason.SalesReason.SalesReasonID); + } + + /** + * An uncommented item + */ + public void setName(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesReason.SalesReason.Name, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "Name", nullable = false, length = 50) + public java.lang.String getName() { + return getValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesReason.SalesReason.Name); + } + + /** + * An uncommented item + */ + public void setReasonType(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesReason.SalesReason.ReasonType, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "ReasonType", nullable = false, length = 50) + public java.lang.String getReasonType() { + return getValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesReason.SalesReason.ReasonType); + } + + /** + * An uncommented item + */ + public void setModifiedDate(java.sql.Timestamp value) { + setValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesReason.SalesReason.ModifiedDate, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "ModifiedDate", nullable = false) + public java.sql.Timestamp getModifiedDate() { + return getValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesReason.SalesReason.ModifiedDate); + } + + /** + * Create a detached SalesReason + */ + public SalesReason() { + super(org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesReason.SalesReason); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/sales/tables/records/SalesTaxRate.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/sales/tables/records/SalesTaxRate.java new file mode 100644 index 00000000000..9737cd3da32 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/sales/tables/records/SalesTaxRate.java @@ -0,0 +1,143 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.sales.tables.records; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "SalesTaxRate", schema = "Sales") +public class SalesTaxRate extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = -1811363962; + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setSalesTaxRateID(java.lang.Integer value) { + setValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesTaxRate.SalesTaxRate.SalesTaxRateID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + @javax.persistence.Id + @javax.persistence.Column(name = "SalesTaxRateID", unique = true, nullable = false, precision = 10) + public java.lang.Integer getSalesTaxRateID() { + return getValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesTaxRate.SalesTaxRate.SalesTaxRateID); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_SalesTaxRate_StateProvince_StateProvinceID
+	 * FOREIGN KEY (StateProvinceID)
+	 * REFERENCES Person.StateProvince (StateProvinceID)
+	 * 
+ */ + public void setStateProvinceID(java.lang.Integer value) { + setValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesTaxRate.SalesTaxRate.StateProvinceID, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_SalesTaxRate_StateProvince_StateProvinceID
+	 * FOREIGN KEY (StateProvinceID)
+	 * REFERENCES Person.StateProvince (StateProvinceID)
+	 * 
+ */ + @javax.persistence.Column(name = "StateProvinceID", nullable = false, precision = 10) + public java.lang.Integer getStateProvinceID() { + return getValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesTaxRate.SalesTaxRate.StateProvinceID); + } + + /** + * An uncommented item + */ + public void setTaxType(java.lang.Byte value) { + setValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesTaxRate.SalesTaxRate.TaxType, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "TaxType", nullable = false, precision = 3) + public java.lang.Byte getTaxType() { + return getValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesTaxRate.SalesTaxRate.TaxType); + } + + /** + * An uncommented item + */ + public void setTaxRate(java.math.BigDecimal value) { + setValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesTaxRate.SalesTaxRate.TaxRate, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "TaxRate", nullable = false, precision = 10, scale = 4) + public java.math.BigDecimal getTaxRate() { + return getValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesTaxRate.SalesTaxRate.TaxRate); + } + + /** + * An uncommented item + */ + public void setName(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesTaxRate.SalesTaxRate.Name, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "Name", nullable = false, length = 50) + public java.lang.String getName() { + return getValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesTaxRate.SalesTaxRate.Name); + } + + /** + * An uncommented item + */ + public void setrowguid(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesTaxRate.SalesTaxRate.rowguid, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "rowguid", nullable = false) + public java.lang.String getrowguid() { + return getValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesTaxRate.SalesTaxRate.rowguid); + } + + /** + * An uncommented item + */ + public void setModifiedDate(java.sql.Timestamp value) { + setValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesTaxRate.SalesTaxRate.ModifiedDate, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "ModifiedDate", nullable = false) + public java.sql.Timestamp getModifiedDate() { + return getValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesTaxRate.SalesTaxRate.ModifiedDate); + } + + /** + * Create a detached SalesTaxRate + */ + public SalesTaxRate() { + super(org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesTaxRate.SalesTaxRate); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/sales/tables/records/SalesTerritory.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/sales/tables/records/SalesTerritory.java new file mode 100644 index 00000000000..a37c6d494e4 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/sales/tables/records/SalesTerritory.java @@ -0,0 +1,176 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.sales.tables.records; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "SalesTerritory", schema = "Sales") +public class SalesTerritory extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = 333568597; + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setTerritoryID(java.lang.Integer value) { + setValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesTerritory.SalesTerritory.TerritoryID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + @javax.persistence.Id + @javax.persistence.Column(name = "TerritoryID", unique = true, nullable = false, precision = 10) + public java.lang.Integer getTerritoryID() { + return getValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesTerritory.SalesTerritory.TerritoryID); + } + + /** + * An uncommented item + */ + public void setName(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesTerritory.SalesTerritory.Name, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "Name", nullable = false, length = 50) + public java.lang.String getName() { + return getValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesTerritory.SalesTerritory.Name); + } + + /** + * An uncommented item + */ + public void setCountryRegionCode(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesTerritory.SalesTerritory.CountryRegionCode, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "CountryRegionCode", nullable = false, length = 3) + public java.lang.String getCountryRegionCode() { + return getValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesTerritory.SalesTerritory.CountryRegionCode); + } + + /** + * An uncommented item + */ + public void setGroup(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesTerritory.SalesTerritory.Group, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "Group", nullable = false, length = 50) + public java.lang.String getGroup() { + return getValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesTerritory.SalesTerritory.Group); + } + + /** + * An uncommented item + */ + public void setSalesYTD(java.math.BigDecimal value) { + setValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesTerritory.SalesTerritory.SalesYTD, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "SalesYTD", nullable = false, precision = 19, scale = 4) + public java.math.BigDecimal getSalesYTD() { + return getValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesTerritory.SalesTerritory.SalesYTD); + } + + /** + * An uncommented item + */ + public void setSalesLastYear(java.math.BigDecimal value) { + setValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesTerritory.SalesTerritory.SalesLastYear, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "SalesLastYear", nullable = false, precision = 19, scale = 4) + public java.math.BigDecimal getSalesLastYear() { + return getValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesTerritory.SalesTerritory.SalesLastYear); + } + + /** + * An uncommented item + */ + public void setCostYTD(java.math.BigDecimal value) { + setValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesTerritory.SalesTerritory.CostYTD, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "CostYTD", nullable = false, precision = 19, scale = 4) + public java.math.BigDecimal getCostYTD() { + return getValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesTerritory.SalesTerritory.CostYTD); + } + + /** + * An uncommented item + */ + public void setCostLastYear(java.math.BigDecimal value) { + setValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesTerritory.SalesTerritory.CostLastYear, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "CostLastYear", nullable = false, precision = 19, scale = 4) + public java.math.BigDecimal getCostLastYear() { + return getValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesTerritory.SalesTerritory.CostLastYear); + } + + /** + * An uncommented item + */ + public void setrowguid(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesTerritory.SalesTerritory.rowguid, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "rowguid", nullable = false) + public java.lang.String getrowguid() { + return getValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesTerritory.SalesTerritory.rowguid); + } + + /** + * An uncommented item + */ + public void setModifiedDate(java.sql.Timestamp value) { + setValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesTerritory.SalesTerritory.ModifiedDate, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "ModifiedDate", nullable = false) + public java.sql.Timestamp getModifiedDate() { + return getValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesTerritory.SalesTerritory.ModifiedDate); + } + + /** + * Create a detached SalesTerritory + */ + public SalesTerritory() { + super(org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesTerritory.SalesTerritory); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/sales/tables/records/SalesTerritoryHistory.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/sales/tables/records/SalesTerritoryHistory.java new file mode 100644 index 00000000000..382f8b0ee99 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/sales/tables/records/SalesTerritoryHistory.java @@ -0,0 +1,149 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.sales.tables.records; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "SalesTerritoryHistory", schema = "Sales", uniqueConstraints = { + @javax.persistence.UniqueConstraint(columnNames = {"SalesPersonID", "StartDate", "TerritoryID"}) +}) +public class SalesTerritoryHistory extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = 349152336; + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT FK_SalesTerritoryHistory_SalesPerson_SalesPersonID
+	 * FOREIGN KEY (SalesPersonID)
+	 * REFERENCES Sales.SalesPerson (SalesPersonID)
+	 * 
+ */ + public void setSalesPersonID(java.lang.Integer value) { + setValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesTerritoryHistory.SalesTerritoryHistory.SalesPersonID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT FK_SalesTerritoryHistory_SalesPerson_SalesPersonID
+	 * FOREIGN KEY (SalesPersonID)
+	 * REFERENCES Sales.SalesPerson (SalesPersonID)
+	 * 
+ */ + @javax.persistence.Column(name = "SalesPersonID", nullable = false, precision = 10) + public java.lang.Integer getSalesPersonID() { + return getValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesTerritoryHistory.SalesTerritoryHistory.SalesPersonID); + } + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT FK_SalesTerritoryHistory_SalesTerritory_TerritoryID
+	 * FOREIGN KEY (TerritoryID)
+	 * REFERENCES Sales.SalesTerritory (TerritoryID)
+	 * 
+ */ + public void setTerritoryID(java.lang.Integer value) { + setValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesTerritoryHistory.SalesTerritoryHistory.TerritoryID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT FK_SalesTerritoryHistory_SalesTerritory_TerritoryID
+	 * FOREIGN KEY (TerritoryID)
+	 * REFERENCES Sales.SalesTerritory (TerritoryID)
+	 * 
+ */ + @javax.persistence.Column(name = "TerritoryID", nullable = false, precision = 10) + public java.lang.Integer getTerritoryID() { + return getValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesTerritoryHistory.SalesTerritoryHistory.TerritoryID); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setStartDate(java.sql.Timestamp value) { + setValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesTerritoryHistory.SalesTerritoryHistory.StartDate, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + @javax.persistence.Column(name = "StartDate", nullable = false) + public java.sql.Timestamp getStartDate() { + return getValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesTerritoryHistory.SalesTerritoryHistory.StartDate); + } + + /** + * An uncommented item + */ + public void setEndDate(java.sql.Timestamp value) { + setValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesTerritoryHistory.SalesTerritoryHistory.EndDate, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "EndDate") + public java.sql.Timestamp getEndDate() { + return getValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesTerritoryHistory.SalesTerritoryHistory.EndDate); + } + + /** + * An uncommented item + */ + public void setrowguid(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesTerritoryHistory.SalesTerritoryHistory.rowguid, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "rowguid", nullable = false) + public java.lang.String getrowguid() { + return getValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesTerritoryHistory.SalesTerritoryHistory.rowguid); + } + + /** + * An uncommented item + */ + public void setModifiedDate(java.sql.Timestamp value) { + setValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesTerritoryHistory.SalesTerritoryHistory.ModifiedDate, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "ModifiedDate", nullable = false) + public java.sql.Timestamp getModifiedDate() { + return getValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesTerritoryHistory.SalesTerritoryHistory.ModifiedDate); + } + + /** + * Create a detached SalesTerritoryHistory + */ + public SalesTerritoryHistory() { + super(org.jooq.examples.sqlserver.adventureworks.sales.tables.SalesTerritoryHistory.SalesTerritoryHistory); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/sales/tables/records/ShoppingCartItem.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/sales/tables/records/ShoppingCartItem.java new file mode 100644 index 00000000000..e7cb2cb7cce --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/sales/tables/records/ShoppingCartItem.java @@ -0,0 +1,128 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.sales.tables.records; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "ShoppingCartItem", schema = "Sales") +public class ShoppingCartItem extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = -1908312939; + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setShoppingCartItemID(java.lang.Integer value) { + setValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.ShoppingCartItem.ShoppingCartItem.ShoppingCartItemID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + @javax.persistence.Id + @javax.persistence.Column(name = "ShoppingCartItemID", unique = true, nullable = false, precision = 10) + public java.lang.Integer getShoppingCartItemID() { + return getValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.ShoppingCartItem.ShoppingCartItem.ShoppingCartItemID); + } + + /** + * An uncommented item + */ + public void setShoppingCartID(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.ShoppingCartItem.ShoppingCartItem.ShoppingCartID, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "ShoppingCartID", nullable = false, length = 50) + public java.lang.String getShoppingCartID() { + return getValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.ShoppingCartItem.ShoppingCartItem.ShoppingCartID); + } + + /** + * An uncommented item + */ + public void setQuantity(java.lang.Integer value) { + setValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.ShoppingCartItem.ShoppingCartItem.Quantity, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "Quantity", nullable = false, precision = 10) + public java.lang.Integer getQuantity() { + return getValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.ShoppingCartItem.ShoppingCartItem.Quantity); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_ShoppingCartItem_Product_ProductID
+	 * FOREIGN KEY (ProductID)
+	 * REFERENCES Production.Product (ProductID)
+	 * 
+ */ + public void setProductID(java.lang.Integer value) { + setValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.ShoppingCartItem.ShoppingCartItem.ProductID, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_ShoppingCartItem_Product_ProductID
+	 * FOREIGN KEY (ProductID)
+	 * REFERENCES Production.Product (ProductID)
+	 * 
+ */ + @javax.persistence.Column(name = "ProductID", nullable = false, precision = 10) + public java.lang.Integer getProductID() { + return getValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.ShoppingCartItem.ShoppingCartItem.ProductID); + } + + /** + * An uncommented item + */ + public void setDateCreated(java.sql.Timestamp value) { + setValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.ShoppingCartItem.ShoppingCartItem.DateCreated, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "DateCreated", nullable = false) + public java.sql.Timestamp getDateCreated() { + return getValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.ShoppingCartItem.ShoppingCartItem.DateCreated); + } + + /** + * An uncommented item + */ + public void setModifiedDate(java.sql.Timestamp value) { + setValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.ShoppingCartItem.ShoppingCartItem.ModifiedDate, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "ModifiedDate", nullable = false) + public java.sql.Timestamp getModifiedDate() { + return getValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.ShoppingCartItem.ShoppingCartItem.ModifiedDate); + } + + /** + * Create a detached ShoppingCartItem + */ + public ShoppingCartItem() { + super(org.jooq.examples.sqlserver.adventureworks.sales.tables.ShoppingCartItem.ShoppingCartItem); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/sales/tables/records/SpecialOffer.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/sales/tables/records/SpecialOffer.java new file mode 100644 index 00000000000..e190e6e1337 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/sales/tables/records/SpecialOffer.java @@ -0,0 +1,191 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.sales.tables.records; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "SpecialOffer", schema = "Sales") +public class SpecialOffer extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = -459292248; + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setSpecialOfferID(java.lang.Integer value) { + setValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.SpecialOffer.SpecialOffer.SpecialOfferID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + @javax.persistence.Id + @javax.persistence.Column(name = "SpecialOfferID", unique = true, nullable = false, precision = 10) + public java.lang.Integer getSpecialOfferID() { + return getValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.SpecialOffer.SpecialOffer.SpecialOfferID); + } + + /** + * An uncommented item + */ + public void setDescription(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.SpecialOffer.SpecialOffer.Description, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "Description", nullable = false, length = 255) + public java.lang.String getDescription() { + return getValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.SpecialOffer.SpecialOffer.Description); + } + + /** + * An uncommented item + */ + public void setDiscountPct(java.math.BigDecimal value) { + setValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.SpecialOffer.SpecialOffer.DiscountPct, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "DiscountPct", nullable = false, precision = 10, scale = 4) + public java.math.BigDecimal getDiscountPct() { + return getValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.SpecialOffer.SpecialOffer.DiscountPct); + } + + /** + * An uncommented item + */ + public void setType(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.SpecialOffer.SpecialOffer.Type, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "Type", nullable = false, length = 50) + public java.lang.String getType() { + return getValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.SpecialOffer.SpecialOffer.Type); + } + + /** + * An uncommented item + */ + public void setCategory(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.SpecialOffer.SpecialOffer.Category, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "Category", nullable = false, length = 50) + public java.lang.String getCategory() { + return getValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.SpecialOffer.SpecialOffer.Category); + } + + /** + * An uncommented item + */ + public void setStartDate(java.sql.Timestamp value) { + setValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.SpecialOffer.SpecialOffer.StartDate, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "StartDate", nullable = false) + public java.sql.Timestamp getStartDate() { + return getValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.SpecialOffer.SpecialOffer.StartDate); + } + + /** + * An uncommented item + */ + public void setEndDate(java.sql.Timestamp value) { + setValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.SpecialOffer.SpecialOffer.EndDate, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "EndDate", nullable = false) + public java.sql.Timestamp getEndDate() { + return getValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.SpecialOffer.SpecialOffer.EndDate); + } + + /** + * An uncommented item + */ + public void setMinQty(java.lang.Integer value) { + setValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.SpecialOffer.SpecialOffer.MinQty, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "MinQty", nullable = false, precision = 10) + public java.lang.Integer getMinQty() { + return getValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.SpecialOffer.SpecialOffer.MinQty); + } + + /** + * An uncommented item + */ + public void setMaxQty(java.lang.Integer value) { + setValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.SpecialOffer.SpecialOffer.MaxQty, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "MaxQty", precision = 10) + public java.lang.Integer getMaxQty() { + return getValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.SpecialOffer.SpecialOffer.MaxQty); + } + + /** + * An uncommented item + */ + public void setrowguid(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.SpecialOffer.SpecialOffer.rowguid, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "rowguid", nullable = false) + public java.lang.String getrowguid() { + return getValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.SpecialOffer.SpecialOffer.rowguid); + } + + /** + * An uncommented item + */ + public void setModifiedDate(java.sql.Timestamp value) { + setValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.SpecialOffer.SpecialOffer.ModifiedDate, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "ModifiedDate", nullable = false) + public java.sql.Timestamp getModifiedDate() { + return getValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.SpecialOffer.SpecialOffer.ModifiedDate); + } + + /** + * Create a detached SpecialOffer + */ + public SpecialOffer() { + super(org.jooq.examples.sqlserver.adventureworks.sales.tables.SpecialOffer.SpecialOffer); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/sales/tables/records/SpecialOfferProduct.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/sales/tables/records/SpecialOfferProduct.java new file mode 100644 index 00000000000..a2e59b8fc35 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/sales/tables/records/SpecialOfferProduct.java @@ -0,0 +1,115 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.sales.tables.records; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "SpecialOfferProduct", schema = "Sales", uniqueConstraints = { + @javax.persistence.UniqueConstraint(columnNames = {"SpecialOfferID", "ProductID"}) +}) +public class SpecialOfferProduct extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = -229514670; + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT FK_SpecialOfferProduct_SpecialOffer_SpecialOfferID
+	 * FOREIGN KEY (SpecialOfferID)
+	 * REFERENCES Sales.SpecialOffer (SpecialOfferID)
+	 * 
+ */ + public void setSpecialOfferID(java.lang.Integer value) { + setValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.SpecialOfferProduct.SpecialOfferProduct.SpecialOfferID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT FK_SpecialOfferProduct_SpecialOffer_SpecialOfferID
+	 * FOREIGN KEY (SpecialOfferID)
+	 * REFERENCES Sales.SpecialOffer (SpecialOfferID)
+	 * 
+ */ + @javax.persistence.Column(name = "SpecialOfferID", nullable = false, precision = 10) + public java.lang.Integer getSpecialOfferID() { + return getValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.SpecialOfferProduct.SpecialOfferProduct.SpecialOfferID); + } + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT FK_SpecialOfferProduct_Product_ProductID
+	 * FOREIGN KEY (ProductID)
+	 * REFERENCES Production.Product (ProductID)
+	 * 
+ */ + public void setProductID(java.lang.Integer value) { + setValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.SpecialOfferProduct.SpecialOfferProduct.ProductID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT FK_SpecialOfferProduct_Product_ProductID
+	 * FOREIGN KEY (ProductID)
+	 * REFERENCES Production.Product (ProductID)
+	 * 
+ */ + @javax.persistence.Column(name = "ProductID", nullable = false, precision = 10) + public java.lang.Integer getProductID() { + return getValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.SpecialOfferProduct.SpecialOfferProduct.ProductID); + } + + /** + * An uncommented item + */ + public void setrowguid(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.SpecialOfferProduct.SpecialOfferProduct.rowguid, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "rowguid", nullable = false) + public java.lang.String getrowguid() { + return getValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.SpecialOfferProduct.SpecialOfferProduct.rowguid); + } + + /** + * An uncommented item + */ + public void setModifiedDate(java.sql.Timestamp value) { + setValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.SpecialOfferProduct.SpecialOfferProduct.ModifiedDate, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "ModifiedDate", nullable = false) + public java.sql.Timestamp getModifiedDate() { + return getValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.SpecialOfferProduct.SpecialOfferProduct.ModifiedDate); + } + + /** + * Create a detached SpecialOfferProduct + */ + public SpecialOfferProduct() { + super(org.jooq.examples.sqlserver.adventureworks.sales.tables.SpecialOfferProduct.SpecialOfferProduct); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/sales/tables/records/Store.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/sales/tables/records/Store.java new file mode 100644 index 00000000000..7cf9ef15a28 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/sales/tables/records/Store.java @@ -0,0 +1,146 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.sales.tables.records; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "Store", schema = "Sales") +public class Store extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = 127367462; + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT FK_Store_Customer_CustomerID
+	 * FOREIGN KEY (CustomerID)
+	 * REFERENCES Sales.Customer (CustomerID)
+	 * 
+ */ + public void setCustomerID(java.lang.Integer value) { + setValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.Store.Store.CustomerID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT FK_Store_Customer_CustomerID
+	 * FOREIGN KEY (CustomerID)
+	 * REFERENCES Sales.Customer (CustomerID)
+	 * 
+ */ + @javax.persistence.Id + @javax.persistence.Column(name = "CustomerID", unique = true, nullable = false, precision = 10) + public java.lang.Integer getCustomerID() { + return getValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.Store.Store.CustomerID); + } + + /** + * An uncommented item + */ + public void setName(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.Store.Store.Name, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "Name", nullable = false, length = 50) + public java.lang.String getName() { + return getValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.Store.Store.Name); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_Store_SalesPerson_SalesPersonID
+	 * FOREIGN KEY (SalesPersonID)
+	 * REFERENCES Sales.SalesPerson (SalesPersonID)
+	 * 
+ */ + public void setSalesPersonID(java.lang.Integer value) { + setValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.Store.Store.SalesPersonID, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_Store_SalesPerson_SalesPersonID
+	 * FOREIGN KEY (SalesPersonID)
+	 * REFERENCES Sales.SalesPerson (SalesPersonID)
+	 * 
+ */ + @javax.persistence.Column(name = "SalesPersonID", precision = 10) + public java.lang.Integer getSalesPersonID() { + return getValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.Store.Store.SalesPersonID); + } + + /** + * An uncommented item + * + * The SQL type of this item (xml, ) could not be mapped.
+ * Deserialising this field might not work! + */ + public void setDemographics(java.lang.Object value) { + setValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.Store.Store.Demographics, value); + } + + /** + * An uncommented item + * + * The SQL type of this item (xml, ) could not be mapped.
+ * Deserialising this field might not work! + */ + @javax.persistence.Column(name = "Demographics") + public java.lang.Object getDemographics() { + return getValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.Store.Store.Demographics); + } + + /** + * An uncommented item + */ + public void setrowguid(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.Store.Store.rowguid, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "rowguid", nullable = false) + public java.lang.String getrowguid() { + return getValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.Store.Store.rowguid); + } + + /** + * An uncommented item + */ + public void setModifiedDate(java.sql.Timestamp value) { + setValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.Store.Store.ModifiedDate, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "ModifiedDate", nullable = false) + public java.sql.Timestamp getModifiedDate() { + return getValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.Store.Store.ModifiedDate); + } + + /** + * Create a detached Store + */ + public Store() { + super(org.jooq.examples.sqlserver.adventureworks.sales.tables.Store.Store); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/sales/tables/records/StoreContact.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/sales/tables/records/StoreContact.java new file mode 100644 index 00000000000..5d9ac34ca61 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/sales/tables/records/StoreContact.java @@ -0,0 +1,142 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.sales.tables.records; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "StoreContact", schema = "Sales", uniqueConstraints = { + @javax.persistence.UniqueConstraint(columnNames = {"CustomerID", "ContactID"}) +}) +public class StoreContact extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = 1173590102; + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT FK_StoreContact_Store_CustomerID
+	 * FOREIGN KEY (CustomerID)
+	 * REFERENCES Sales.Store (CustomerID)
+	 * 
+ */ + public void setCustomerID(java.lang.Integer value) { + setValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.StoreContact.StoreContact.CustomerID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT FK_StoreContact_Store_CustomerID
+	 * FOREIGN KEY (CustomerID)
+	 * REFERENCES Sales.Store (CustomerID)
+	 * 
+ */ + @javax.persistence.Column(name = "CustomerID", nullable = false, precision = 10) + public java.lang.Integer getCustomerID() { + return getValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.StoreContact.StoreContact.CustomerID); + } + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT FK_StoreContact_Contact_ContactID
+	 * FOREIGN KEY (ContactID)
+	 * REFERENCES Person.Contact (ContactID)
+	 * 
+ */ + public void setContactID(java.lang.Integer value) { + setValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.StoreContact.StoreContact.ContactID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT FK_StoreContact_Contact_ContactID
+	 * FOREIGN KEY (ContactID)
+	 * REFERENCES Person.Contact (ContactID)
+	 * 
+ */ + @javax.persistence.Column(name = "ContactID", nullable = false, precision = 10) + public java.lang.Integer getContactID() { + return getValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.StoreContact.StoreContact.ContactID); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_StoreContact_ContactType_ContactTypeID
+	 * FOREIGN KEY (ContactTypeID)
+	 * REFERENCES Person.ContactType (ContactTypeID)
+	 * 
+ */ + public void setContactTypeID(java.lang.Integer value) { + setValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.StoreContact.StoreContact.ContactTypeID, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_StoreContact_ContactType_ContactTypeID
+	 * FOREIGN KEY (ContactTypeID)
+	 * REFERENCES Person.ContactType (ContactTypeID)
+	 * 
+ */ + @javax.persistence.Column(name = "ContactTypeID", nullable = false, precision = 10) + public java.lang.Integer getContactTypeID() { + return getValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.StoreContact.StoreContact.ContactTypeID); + } + + /** + * An uncommented item + */ + public void setrowguid(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.StoreContact.StoreContact.rowguid, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "rowguid", nullable = false) + public java.lang.String getrowguid() { + return getValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.StoreContact.StoreContact.rowguid); + } + + /** + * An uncommented item + */ + public void setModifiedDate(java.sql.Timestamp value) { + setValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.StoreContact.StoreContact.ModifiedDate, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "ModifiedDate", nullable = false) + public java.sql.Timestamp getModifiedDate() { + return getValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.StoreContact.StoreContact.ModifiedDate); + } + + /** + * Create a detached StoreContact + */ + public StoreContact() { + super(org.jooq.examples.sqlserver.adventureworks.sales.tables.StoreContact.StoreContact); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/sales/tables/records/vIndividualCustomer.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/sales/tables/records/vIndividualCustomer.java new file mode 100644 index 00000000000..08384d0f6ee --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/sales/tables/records/vIndividualCustomer.java @@ -0,0 +1,282 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.sales.tables.records; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "vIndividualCustomer", schema = "Sales") +public class vIndividualCustomer extends org.jooq.impl.TableRecordImpl { + + private static final long serialVersionUID = 454837070; + + /** + * An uncommented item + */ + public void setCustomerID(java.lang.Integer value) { + setValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.vIndividualCustomer.vIndividualCustomer.CustomerID, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "CustomerID", nullable = false, precision = 10) + public java.lang.Integer getCustomerID() { + return getValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.vIndividualCustomer.vIndividualCustomer.CustomerID); + } + + /** + * An uncommented item + */ + public void setTitle(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.vIndividualCustomer.vIndividualCustomer.Title, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "Title", length = 8) + public java.lang.String getTitle() { + return getValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.vIndividualCustomer.vIndividualCustomer.Title); + } + + /** + * An uncommented item + */ + public void setFirstName(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.vIndividualCustomer.vIndividualCustomer.FirstName, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "FirstName", nullable = false, length = 50) + public java.lang.String getFirstName() { + return getValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.vIndividualCustomer.vIndividualCustomer.FirstName); + } + + /** + * An uncommented item + */ + public void setMiddleName(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.vIndividualCustomer.vIndividualCustomer.MiddleName, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "MiddleName", length = 50) + public java.lang.String getMiddleName() { + return getValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.vIndividualCustomer.vIndividualCustomer.MiddleName); + } + + /** + * An uncommented item + */ + public void setLastName(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.vIndividualCustomer.vIndividualCustomer.LastName, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "LastName", nullable = false, length = 50) + public java.lang.String getLastName() { + return getValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.vIndividualCustomer.vIndividualCustomer.LastName); + } + + /** + * An uncommented item + */ + public void setSuffix(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.vIndividualCustomer.vIndividualCustomer.Suffix, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "Suffix", length = 10) + public java.lang.String getSuffix() { + return getValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.vIndividualCustomer.vIndividualCustomer.Suffix); + } + + /** + * An uncommented item + */ + public void setPhone(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.vIndividualCustomer.vIndividualCustomer.Phone, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "Phone", length = 25) + public java.lang.String getPhone() { + return getValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.vIndividualCustomer.vIndividualCustomer.Phone); + } + + /** + * An uncommented item + */ + public void setEmailAddress(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.vIndividualCustomer.vIndividualCustomer.EmailAddress, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "EmailAddress", length = 50) + public java.lang.String getEmailAddress() { + return getValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.vIndividualCustomer.vIndividualCustomer.EmailAddress); + } + + /** + * An uncommented item + */ + public void setEmailPromotion(java.lang.Integer value) { + setValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.vIndividualCustomer.vIndividualCustomer.EmailPromotion, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "EmailPromotion", nullable = false, precision = 10) + public java.lang.Integer getEmailPromotion() { + return getValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.vIndividualCustomer.vIndividualCustomer.EmailPromotion); + } + + /** + * An uncommented item + */ + public void setAddressType(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.vIndividualCustomer.vIndividualCustomer.AddressType, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "AddressType", nullable = false, length = 50) + public java.lang.String getAddressType() { + return getValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.vIndividualCustomer.vIndividualCustomer.AddressType); + } + + /** + * An uncommented item + */ + public void setAddressLine1(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.vIndividualCustomer.vIndividualCustomer.AddressLine1, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "AddressLine1", nullable = false, length = 60) + public java.lang.String getAddressLine1() { + return getValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.vIndividualCustomer.vIndividualCustomer.AddressLine1); + } + + /** + * An uncommented item + */ + public void setAddressLine2(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.vIndividualCustomer.vIndividualCustomer.AddressLine2, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "AddressLine2", length = 60) + public java.lang.String getAddressLine2() { + return getValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.vIndividualCustomer.vIndividualCustomer.AddressLine2); + } + + /** + * An uncommented item + */ + public void setCity(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.vIndividualCustomer.vIndividualCustomer.City, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "City", nullable = false, length = 30) + public java.lang.String getCity() { + return getValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.vIndividualCustomer.vIndividualCustomer.City); + } + + /** + * An uncommented item + */ + public void setStateProvinceName(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.vIndividualCustomer.vIndividualCustomer.StateProvinceName, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "StateProvinceName", nullable = false, length = 50) + public java.lang.String getStateProvinceName() { + return getValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.vIndividualCustomer.vIndividualCustomer.StateProvinceName); + } + + /** + * An uncommented item + */ + public void setPostalCode(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.vIndividualCustomer.vIndividualCustomer.PostalCode, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "PostalCode", nullable = false, length = 15) + public java.lang.String getPostalCode() { + return getValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.vIndividualCustomer.vIndividualCustomer.PostalCode); + } + + /** + * An uncommented item + */ + public void setCountryRegionName(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.vIndividualCustomer.vIndividualCustomer.CountryRegionName, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "CountryRegionName", nullable = false, length = 50) + public java.lang.String getCountryRegionName() { + return getValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.vIndividualCustomer.vIndividualCustomer.CountryRegionName); + } + + /** + * An uncommented item + * + * The SQL type of this item (xml, ) could not be mapped.
+ * Deserialising this field might not work! + */ + public void setDemographics(java.lang.Object value) { + setValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.vIndividualCustomer.vIndividualCustomer.Demographics, value); + } + + /** + * An uncommented item + * + * The SQL type of this item (xml, ) could not be mapped.
+ * Deserialising this field might not work! + */ + @javax.persistence.Column(name = "Demographics") + public java.lang.Object getDemographics() { + return getValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.vIndividualCustomer.vIndividualCustomer.Demographics); + } + + /** + * Create a detached vIndividualCustomer + */ + public vIndividualCustomer() { + super(org.jooq.examples.sqlserver.adventureworks.sales.tables.vIndividualCustomer.vIndividualCustomer); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/sales/tables/records/vIndividualDemographics.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/sales/tables/records/vIndividualDemographics.java new file mode 100644 index 00000000000..627a397dcc5 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/sales/tables/records/vIndividualDemographics.java @@ -0,0 +1,216 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.sales.tables.records; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "vIndividualDemographics", schema = "Sales") +public class vIndividualDemographics extends org.jooq.impl.TableRecordImpl { + + private static final long serialVersionUID = 796113073; + + /** + * An uncommented item + */ + public void setCustomerID(java.lang.Integer value) { + setValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.vIndividualDemographics.vIndividualDemographics.CustomerID, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "CustomerID", nullable = false, precision = 10) + public java.lang.Integer getCustomerID() { + return getValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.vIndividualDemographics.vIndividualDemographics.CustomerID); + } + + /** + * An uncommented item + */ + public void setTotalPurchaseYTD(java.math.BigDecimal value) { + setValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.vIndividualDemographics.vIndividualDemographics.TotalPurchaseYTD, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "TotalPurchaseYTD", precision = 19, scale = 4) + public java.math.BigDecimal getTotalPurchaseYTD() { + return getValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.vIndividualDemographics.vIndividualDemographics.TotalPurchaseYTD); + } + + /** + * An uncommented item + */ + public void setDateFirstPurchase(java.sql.Timestamp value) { + setValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.vIndividualDemographics.vIndividualDemographics.DateFirstPurchase, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "DateFirstPurchase") + public java.sql.Timestamp getDateFirstPurchase() { + return getValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.vIndividualDemographics.vIndividualDemographics.DateFirstPurchase); + } + + /** + * An uncommented item + */ + public void setBirthDate(java.sql.Timestamp value) { + setValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.vIndividualDemographics.vIndividualDemographics.BirthDate, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "BirthDate") + public java.sql.Timestamp getBirthDate() { + return getValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.vIndividualDemographics.vIndividualDemographics.BirthDate); + } + + /** + * An uncommented item + */ + public void setMaritalStatus(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.vIndividualDemographics.vIndividualDemographics.MaritalStatus, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "MaritalStatus", length = 1) + public java.lang.String getMaritalStatus() { + return getValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.vIndividualDemographics.vIndividualDemographics.MaritalStatus); + } + + /** + * An uncommented item + */ + public void setYearlyIncome(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.vIndividualDemographics.vIndividualDemographics.YearlyIncome, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "YearlyIncome", length = 30) + public java.lang.String getYearlyIncome() { + return getValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.vIndividualDemographics.vIndividualDemographics.YearlyIncome); + } + + /** + * An uncommented item + */ + public void setGender(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.vIndividualDemographics.vIndividualDemographics.Gender, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "Gender", length = 1) + public java.lang.String getGender() { + return getValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.vIndividualDemographics.vIndividualDemographics.Gender); + } + + /** + * An uncommented item + */ + public void setTotalChildren(java.lang.Integer value) { + setValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.vIndividualDemographics.vIndividualDemographics.TotalChildren, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "TotalChildren", precision = 10) + public java.lang.Integer getTotalChildren() { + return getValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.vIndividualDemographics.vIndividualDemographics.TotalChildren); + } + + /** + * An uncommented item + */ + public void setNumberChildrenAtHome(java.lang.Integer value) { + setValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.vIndividualDemographics.vIndividualDemographics.NumberChildrenAtHome, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "NumberChildrenAtHome", precision = 10) + public java.lang.Integer getNumberChildrenAtHome() { + return getValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.vIndividualDemographics.vIndividualDemographics.NumberChildrenAtHome); + } + + /** + * An uncommented item + */ + public void setEducation(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.vIndividualDemographics.vIndividualDemographics.Education, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "Education", length = 30) + public java.lang.String getEducation() { + return getValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.vIndividualDemographics.vIndividualDemographics.Education); + } + + /** + * An uncommented item + */ + public void setOccupation(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.vIndividualDemographics.vIndividualDemographics.Occupation, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "Occupation", length = 30) + public java.lang.String getOccupation() { + return getValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.vIndividualDemographics.vIndividualDemographics.Occupation); + } + + /** + * An uncommented item + */ + public void setHomeOwnerFlag(java.lang.Boolean value) { + setValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.vIndividualDemographics.vIndividualDemographics.HomeOwnerFlag, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "HomeOwnerFlag") + public java.lang.Boolean getHomeOwnerFlag() { + return getValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.vIndividualDemographics.vIndividualDemographics.HomeOwnerFlag); + } + + /** + * An uncommented item + */ + public void setNumberCarsOwned(java.lang.Integer value) { + setValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.vIndividualDemographics.vIndividualDemographics.NumberCarsOwned, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "NumberCarsOwned", precision = 10) + public java.lang.Integer getNumberCarsOwned() { + return getValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.vIndividualDemographics.vIndividualDemographics.NumberCarsOwned); + } + + /** + * Create a detached vIndividualDemographics + */ + public vIndividualDemographics() { + super(org.jooq.examples.sqlserver.adventureworks.sales.tables.vIndividualDemographics.vIndividualDemographics); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/sales/tables/records/vSalesPerson.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/sales/tables/records/vSalesPerson.java new file mode 100644 index 00000000000..4d47126db02 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/sales/tables/records/vSalesPerson.java @@ -0,0 +1,336 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.sales.tables.records; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "vSalesPerson", schema = "Sales") +public class vSalesPerson extends org.jooq.impl.TableRecordImpl { + + private static final long serialVersionUID = 1723992560; + + /** + * An uncommented item + */ + public void setSalesPersonID(java.lang.Integer value) { + setValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.vSalesPerson.vSalesPerson.SalesPersonID, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "SalesPersonID", nullable = false, precision = 10) + public java.lang.Integer getSalesPersonID() { + return getValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.vSalesPerson.vSalesPerson.SalesPersonID); + } + + /** + * An uncommented item + */ + public void setTitle(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.vSalesPerson.vSalesPerson.Title, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "Title", length = 8) + public java.lang.String getTitle() { + return getValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.vSalesPerson.vSalesPerson.Title); + } + + /** + * An uncommented item + */ + public void setFirstName(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.vSalesPerson.vSalesPerson.FirstName, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "FirstName", nullable = false, length = 50) + public java.lang.String getFirstName() { + return getValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.vSalesPerson.vSalesPerson.FirstName); + } + + /** + * An uncommented item + */ + public void setMiddleName(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.vSalesPerson.vSalesPerson.MiddleName, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "MiddleName", length = 50) + public java.lang.String getMiddleName() { + return getValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.vSalesPerson.vSalesPerson.MiddleName); + } + + /** + * An uncommented item + */ + public void setLastName(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.vSalesPerson.vSalesPerson.LastName, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "LastName", nullable = false, length = 50) + public java.lang.String getLastName() { + return getValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.vSalesPerson.vSalesPerson.LastName); + } + + /** + * An uncommented item + */ + public void setSuffix(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.vSalesPerson.vSalesPerson.Suffix, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "Suffix", length = 10) + public java.lang.String getSuffix() { + return getValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.vSalesPerson.vSalesPerson.Suffix); + } + + /** + * An uncommented item + */ + public void setJobTitle(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.vSalesPerson.vSalesPerson.JobTitle, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "JobTitle", nullable = false, length = 50) + public java.lang.String getJobTitle() { + return getValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.vSalesPerson.vSalesPerson.JobTitle); + } + + /** + * An uncommented item + */ + public void setPhone(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.vSalesPerson.vSalesPerson.Phone, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "Phone", length = 25) + public java.lang.String getPhone() { + return getValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.vSalesPerson.vSalesPerson.Phone); + } + + /** + * An uncommented item + */ + public void setEmailAddress(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.vSalesPerson.vSalesPerson.EmailAddress, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "EmailAddress", length = 50) + public java.lang.String getEmailAddress() { + return getValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.vSalesPerson.vSalesPerson.EmailAddress); + } + + /** + * An uncommented item + */ + public void setEmailPromotion(java.lang.Integer value) { + setValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.vSalesPerson.vSalesPerson.EmailPromotion, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "EmailPromotion", nullable = false, precision = 10) + public java.lang.Integer getEmailPromotion() { + return getValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.vSalesPerson.vSalesPerson.EmailPromotion); + } + + /** + * An uncommented item + */ + public void setAddressLine1(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.vSalesPerson.vSalesPerson.AddressLine1, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "AddressLine1", nullable = false, length = 60) + public java.lang.String getAddressLine1() { + return getValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.vSalesPerson.vSalesPerson.AddressLine1); + } + + /** + * An uncommented item + */ + public void setAddressLine2(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.vSalesPerson.vSalesPerson.AddressLine2, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "AddressLine2", length = 60) + public java.lang.String getAddressLine2() { + return getValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.vSalesPerson.vSalesPerson.AddressLine2); + } + + /** + * An uncommented item + */ + public void setCity(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.vSalesPerson.vSalesPerson.City, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "City", nullable = false, length = 30) + public java.lang.String getCity() { + return getValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.vSalesPerson.vSalesPerson.City); + } + + /** + * An uncommented item + */ + public void setStateProvinceName(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.vSalesPerson.vSalesPerson.StateProvinceName, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "StateProvinceName", nullable = false, length = 50) + public java.lang.String getStateProvinceName() { + return getValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.vSalesPerson.vSalesPerson.StateProvinceName); + } + + /** + * An uncommented item + */ + public void setPostalCode(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.vSalesPerson.vSalesPerson.PostalCode, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "PostalCode", nullable = false, length = 15) + public java.lang.String getPostalCode() { + return getValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.vSalesPerson.vSalesPerson.PostalCode); + } + + /** + * An uncommented item + */ + public void setCountryRegionName(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.vSalesPerson.vSalesPerson.CountryRegionName, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "CountryRegionName", nullable = false, length = 50) + public java.lang.String getCountryRegionName() { + return getValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.vSalesPerson.vSalesPerson.CountryRegionName); + } + + /** + * An uncommented item + */ + public void setTerritoryName(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.vSalesPerson.vSalesPerson.TerritoryName, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "TerritoryName", length = 50) + public java.lang.String getTerritoryName() { + return getValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.vSalesPerson.vSalesPerson.TerritoryName); + } + + /** + * An uncommented item + */ + public void setTerritoryGroup(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.vSalesPerson.vSalesPerson.TerritoryGroup, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "TerritoryGroup", length = 50) + public java.lang.String getTerritoryGroup() { + return getValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.vSalesPerson.vSalesPerson.TerritoryGroup); + } + + /** + * An uncommented item + */ + public void setSalesQuota(java.math.BigDecimal value) { + setValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.vSalesPerson.vSalesPerson.SalesQuota, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "SalesQuota", precision = 19, scale = 4) + public java.math.BigDecimal getSalesQuota() { + return getValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.vSalesPerson.vSalesPerson.SalesQuota); + } + + /** + * An uncommented item + */ + public void setSalesYTD(java.math.BigDecimal value) { + setValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.vSalesPerson.vSalesPerson.SalesYTD, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "SalesYTD", nullable = false, precision = 19, scale = 4) + public java.math.BigDecimal getSalesYTD() { + return getValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.vSalesPerson.vSalesPerson.SalesYTD); + } + + /** + * An uncommented item + */ + public void setSalesLastYear(java.math.BigDecimal value) { + setValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.vSalesPerson.vSalesPerson.SalesLastYear, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "SalesLastYear", nullable = false, precision = 19, scale = 4) + public java.math.BigDecimal getSalesLastYear() { + return getValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.vSalesPerson.vSalesPerson.SalesLastYear); + } + + /** + * Create a detached vSalesPerson + */ + public vSalesPerson() { + super(org.jooq.examples.sqlserver.adventureworks.sales.tables.vSalesPerson.vSalesPerson); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/sales/tables/records/vSalesPersonSalesByFiscalYears.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/sales/tables/records/vSalesPersonSalesByFiscalYears.java new file mode 100644 index 00000000000..7b7d714f585 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/sales/tables/records/vSalesPersonSalesByFiscalYears.java @@ -0,0 +1,126 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.sales.tables.records; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "vSalesPersonSalesByFiscalYears", schema = "Sales") +public class vSalesPersonSalesByFiscalYears extends org.jooq.impl.TableRecordImpl { + + private static final long serialVersionUID = -748334049; + + /** + * An uncommented item + */ + public void setSalesPersonID(java.lang.Integer value) { + setValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.vSalesPersonSalesByFiscalYears.vSalesPersonSalesByFiscalYears.SalesPersonID, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "SalesPersonID", precision = 10) + public java.lang.Integer getSalesPersonID() { + return getValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.vSalesPersonSalesByFiscalYears.vSalesPersonSalesByFiscalYears.SalesPersonID); + } + + /** + * An uncommented item + */ + public void setFullName(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.vSalesPersonSalesByFiscalYears.vSalesPersonSalesByFiscalYears.FullName, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "FullName", length = 152) + public java.lang.String getFullName() { + return getValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.vSalesPersonSalesByFiscalYears.vSalesPersonSalesByFiscalYears.FullName); + } + + /** + * An uncommented item + */ + public void setTitle(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.vSalesPersonSalesByFiscalYears.vSalesPersonSalesByFiscalYears.Title, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "Title", nullable = false, length = 50) + public java.lang.String getTitle() { + return getValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.vSalesPersonSalesByFiscalYears.vSalesPersonSalesByFiscalYears.Title); + } + + /** + * An uncommented item + */ + public void setSalesTerritory(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.vSalesPersonSalesByFiscalYears.vSalesPersonSalesByFiscalYears.SalesTerritory, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "SalesTerritory", nullable = false, length = 50) + public java.lang.String getSalesTerritory() { + return getValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.vSalesPersonSalesByFiscalYears.vSalesPersonSalesByFiscalYears.SalesTerritory); + } + + /** + * An uncommented item + */ + public void set2002(java.math.BigDecimal value) { + setValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.vSalesPersonSalesByFiscalYears.vSalesPersonSalesByFiscalYears._2002, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "2002", precision = 19, scale = 4) + public java.math.BigDecimal get2002() { + return getValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.vSalesPersonSalesByFiscalYears.vSalesPersonSalesByFiscalYears._2002); + } + + /** + * An uncommented item + */ + public void set2003(java.math.BigDecimal value) { + setValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.vSalesPersonSalesByFiscalYears.vSalesPersonSalesByFiscalYears._2003, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "2003", precision = 19, scale = 4) + public java.math.BigDecimal get2003() { + return getValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.vSalesPersonSalesByFiscalYears.vSalesPersonSalesByFiscalYears._2003); + } + + /** + * An uncommented item + */ + public void set2004(java.math.BigDecimal value) { + setValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.vSalesPersonSalesByFiscalYears.vSalesPersonSalesByFiscalYears._2004, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "2004", precision = 19, scale = 4) + public java.math.BigDecimal get2004() { + return getValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.vSalesPersonSalesByFiscalYears.vSalesPersonSalesByFiscalYears._2004); + } + + /** + * Create a detached vSalesPersonSalesByFiscalYears + */ + public vSalesPersonSalesByFiscalYears() { + super(org.jooq.examples.sqlserver.adventureworks.sales.tables.vSalesPersonSalesByFiscalYears.vSalesPersonSalesByFiscalYears); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/sales/tables/records/vStoreWithDemographics.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/sales/tables/records/vStoreWithDemographics.java new file mode 100644 index 00000000000..1e5a130bf5a --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/sales/tables/records/vStoreWithDemographics.java @@ -0,0 +1,441 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.sales.tables.records; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "vStoreWithDemographics", schema = "Sales") +public class vStoreWithDemographics extends org.jooq.impl.TableRecordImpl { + + private static final long serialVersionUID = -186400835; + + /** + * An uncommented item + */ + public void setCustomerID(java.lang.Integer value) { + setValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.vStoreWithDemographics.vStoreWithDemographics.CustomerID, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "CustomerID", nullable = false, precision = 10) + public java.lang.Integer getCustomerID() { + return getValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.vStoreWithDemographics.vStoreWithDemographics.CustomerID); + } + + /** + * An uncommented item + */ + public void setName(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.vStoreWithDemographics.vStoreWithDemographics.Name, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "Name", nullable = false, length = 50) + public java.lang.String getName() { + return getValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.vStoreWithDemographics.vStoreWithDemographics.Name); + } + + /** + * An uncommented item + */ + public void setContactType(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.vStoreWithDemographics.vStoreWithDemographics.ContactType, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "ContactType", nullable = false, length = 50) + public java.lang.String getContactType() { + return getValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.vStoreWithDemographics.vStoreWithDemographics.ContactType); + } + + /** + * An uncommented item + */ + public void setTitle(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.vStoreWithDemographics.vStoreWithDemographics.Title, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "Title", length = 8) + public java.lang.String getTitle() { + return getValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.vStoreWithDemographics.vStoreWithDemographics.Title); + } + + /** + * An uncommented item + */ + public void setFirstName(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.vStoreWithDemographics.vStoreWithDemographics.FirstName, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "FirstName", nullable = false, length = 50) + public java.lang.String getFirstName() { + return getValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.vStoreWithDemographics.vStoreWithDemographics.FirstName); + } + + /** + * An uncommented item + */ + public void setMiddleName(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.vStoreWithDemographics.vStoreWithDemographics.MiddleName, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "MiddleName", length = 50) + public java.lang.String getMiddleName() { + return getValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.vStoreWithDemographics.vStoreWithDemographics.MiddleName); + } + + /** + * An uncommented item + */ + public void setLastName(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.vStoreWithDemographics.vStoreWithDemographics.LastName, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "LastName", nullable = false, length = 50) + public java.lang.String getLastName() { + return getValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.vStoreWithDemographics.vStoreWithDemographics.LastName); + } + + /** + * An uncommented item + */ + public void setSuffix(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.vStoreWithDemographics.vStoreWithDemographics.Suffix, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "Suffix", length = 10) + public java.lang.String getSuffix() { + return getValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.vStoreWithDemographics.vStoreWithDemographics.Suffix); + } + + /** + * An uncommented item + */ + public void setPhone(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.vStoreWithDemographics.vStoreWithDemographics.Phone, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "Phone", length = 25) + public java.lang.String getPhone() { + return getValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.vStoreWithDemographics.vStoreWithDemographics.Phone); + } + + /** + * An uncommented item + */ + public void setEmailAddress(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.vStoreWithDemographics.vStoreWithDemographics.EmailAddress, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "EmailAddress", length = 50) + public java.lang.String getEmailAddress() { + return getValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.vStoreWithDemographics.vStoreWithDemographics.EmailAddress); + } + + /** + * An uncommented item + */ + public void setEmailPromotion(java.lang.Integer value) { + setValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.vStoreWithDemographics.vStoreWithDemographics.EmailPromotion, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "EmailPromotion", nullable = false, precision = 10) + public java.lang.Integer getEmailPromotion() { + return getValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.vStoreWithDemographics.vStoreWithDemographics.EmailPromotion); + } + + /** + * An uncommented item + */ + public void setAddressType(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.vStoreWithDemographics.vStoreWithDemographics.AddressType, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "AddressType", nullable = false, length = 50) + public java.lang.String getAddressType() { + return getValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.vStoreWithDemographics.vStoreWithDemographics.AddressType); + } + + /** + * An uncommented item + */ + public void setAddressLine1(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.vStoreWithDemographics.vStoreWithDemographics.AddressLine1, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "AddressLine1", nullable = false, length = 60) + public java.lang.String getAddressLine1() { + return getValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.vStoreWithDemographics.vStoreWithDemographics.AddressLine1); + } + + /** + * An uncommented item + */ + public void setAddressLine2(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.vStoreWithDemographics.vStoreWithDemographics.AddressLine2, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "AddressLine2", length = 60) + public java.lang.String getAddressLine2() { + return getValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.vStoreWithDemographics.vStoreWithDemographics.AddressLine2); + } + + /** + * An uncommented item + */ + public void setCity(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.vStoreWithDemographics.vStoreWithDemographics.City, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "City", nullable = false, length = 30) + public java.lang.String getCity() { + return getValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.vStoreWithDemographics.vStoreWithDemographics.City); + } + + /** + * An uncommented item + */ + public void setStateProvinceName(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.vStoreWithDemographics.vStoreWithDemographics.StateProvinceName, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "StateProvinceName", nullable = false, length = 50) + public java.lang.String getStateProvinceName() { + return getValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.vStoreWithDemographics.vStoreWithDemographics.StateProvinceName); + } + + /** + * An uncommented item + */ + public void setPostalCode(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.vStoreWithDemographics.vStoreWithDemographics.PostalCode, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "PostalCode", nullable = false, length = 15) + public java.lang.String getPostalCode() { + return getValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.vStoreWithDemographics.vStoreWithDemographics.PostalCode); + } + + /** + * An uncommented item + */ + public void setCountryRegionName(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.vStoreWithDemographics.vStoreWithDemographics.CountryRegionName, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "CountryRegionName", nullable = false, length = 50) + public java.lang.String getCountryRegionName() { + return getValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.vStoreWithDemographics.vStoreWithDemographics.CountryRegionName); + } + + /** + * An uncommented item + */ + public void setAnnualSales(java.math.BigDecimal value) { + setValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.vStoreWithDemographics.vStoreWithDemographics.AnnualSales, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "AnnualSales", precision = 19, scale = 4) + public java.math.BigDecimal getAnnualSales() { + return getValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.vStoreWithDemographics.vStoreWithDemographics.AnnualSales); + } + + /** + * An uncommented item + */ + public void setAnnualRevenue(java.math.BigDecimal value) { + setValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.vStoreWithDemographics.vStoreWithDemographics.AnnualRevenue, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "AnnualRevenue", precision = 19, scale = 4) + public java.math.BigDecimal getAnnualRevenue() { + return getValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.vStoreWithDemographics.vStoreWithDemographics.AnnualRevenue); + } + + /** + * An uncommented item + */ + public void setBankName(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.vStoreWithDemographics.vStoreWithDemographics.BankName, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "BankName", length = 50) + public java.lang.String getBankName() { + return getValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.vStoreWithDemographics.vStoreWithDemographics.BankName); + } + + /** + * An uncommented item + */ + public void setBusinessType(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.vStoreWithDemographics.vStoreWithDemographics.BusinessType, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "BusinessType", length = 5) + public java.lang.String getBusinessType() { + return getValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.vStoreWithDemographics.vStoreWithDemographics.BusinessType); + } + + /** + * An uncommented item + */ + public void setYearOpened(java.lang.Integer value) { + setValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.vStoreWithDemographics.vStoreWithDemographics.YearOpened, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "YearOpened", precision = 10) + public java.lang.Integer getYearOpened() { + return getValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.vStoreWithDemographics.vStoreWithDemographics.YearOpened); + } + + /** + * An uncommented item + */ + public void setSpecialty(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.vStoreWithDemographics.vStoreWithDemographics.Specialty, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "Specialty", length = 50) + public java.lang.String getSpecialty() { + return getValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.vStoreWithDemographics.vStoreWithDemographics.Specialty); + } + + /** + * An uncommented item + */ + public void setSquareFeet(java.lang.Integer value) { + setValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.vStoreWithDemographics.vStoreWithDemographics.SquareFeet, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "SquareFeet", precision = 10) + public java.lang.Integer getSquareFeet() { + return getValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.vStoreWithDemographics.vStoreWithDemographics.SquareFeet); + } + + /** + * An uncommented item + */ + public void setBrands(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.vStoreWithDemographics.vStoreWithDemographics.Brands, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "Brands", length = 30) + public java.lang.String getBrands() { + return getValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.vStoreWithDemographics.vStoreWithDemographics.Brands); + } + + /** + * An uncommented item + */ + public void setInternet(java.lang.String value) { + setValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.vStoreWithDemographics.vStoreWithDemographics.Internet, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "Internet", length = 30) + public java.lang.String getInternet() { + return getValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.vStoreWithDemographics.vStoreWithDemographics.Internet); + } + + /** + * An uncommented item + */ + public void setNumberEmployees(java.lang.Integer value) { + setValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.vStoreWithDemographics.vStoreWithDemographics.NumberEmployees, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "NumberEmployees", precision = 10) + public java.lang.Integer getNumberEmployees() { + return getValue(org.jooq.examples.sqlserver.adventureworks.sales.tables.vStoreWithDemographics.vStoreWithDemographics.NumberEmployees); + } + + /** + * Create a detached vStoreWithDemographics + */ + public vStoreWithDemographics() { + super(org.jooq.examples.sqlserver.adventureworks.sales.tables.vStoreWithDemographics.vStoreWithDemographics); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/sales/tables/vIndividualCustomer.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/sales/tables/vIndividualCustomer.java new file mode 100644 index 00000000000..cdf3683c449 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/sales/tables/vIndividualCustomer.java @@ -0,0 +1,131 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.sales.tables; + +/** + * This class is generated by jOOQ. + */ +public class vIndividualCustomer extends org.jooq.impl.TableImpl { + + private static final long serialVersionUID = -251077268; + + /** + * The singleton instance of Sales.vIndividualCustomer + */ + public static final org.jooq.examples.sqlserver.adventureworks.sales.tables.vIndividualCustomer vIndividualCustomer = new org.jooq.examples.sqlserver.adventureworks.sales.tables.vIndividualCustomer(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.examples.sqlserver.adventureworks.sales.tables.records.vIndividualCustomer.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + */ + public final org.jooq.TableField CustomerID = createField("CustomerID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField Title = createField("Title", org.jooq.impl.SQLDataType.NVARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField FirstName = createField("FirstName", org.jooq.impl.SQLDataType.NVARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField MiddleName = createField("MiddleName", org.jooq.impl.SQLDataType.NVARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField LastName = createField("LastName", org.jooq.impl.SQLDataType.NVARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField Suffix = createField("Suffix", org.jooq.impl.SQLDataType.NVARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField Phone = createField("Phone", org.jooq.impl.SQLDataType.NVARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField EmailAddress = createField("EmailAddress", org.jooq.impl.SQLDataType.NVARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField EmailPromotion = createField("EmailPromotion", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField AddressType = createField("AddressType", org.jooq.impl.SQLDataType.NVARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField AddressLine1 = createField("AddressLine1", org.jooq.impl.SQLDataType.NVARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField AddressLine2 = createField("AddressLine2", org.jooq.impl.SQLDataType.NVARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField City = createField("City", org.jooq.impl.SQLDataType.NVARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField StateProvinceName = createField("StateProvinceName", org.jooq.impl.SQLDataType.NVARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField PostalCode = createField("PostalCode", org.jooq.impl.SQLDataType.NVARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField CountryRegionName = createField("CountryRegionName", org.jooq.impl.SQLDataType.NVARCHAR, this); + + /** + * An uncommented item + * + * The SQL type of this item (xml, ) could not be mapped.
+ * Deserialising this field might not work! + */ + public final org.jooq.TableField Demographics = createField("Demographics", org.jooq.util.sqlserver.SQLServerDataType.getDefaultDataType("xml"), this); + + public vIndividualCustomer() { + super("vIndividualCustomer", org.jooq.examples.sqlserver.adventureworks.sales.Sales.Sales); + } + + public vIndividualCustomer(java.lang.String alias) { + super(alias, org.jooq.examples.sqlserver.adventureworks.sales.Sales.Sales, org.jooq.examples.sqlserver.adventureworks.sales.tables.vIndividualCustomer.vIndividualCustomer); + } + + @Override + public org.jooq.examples.sqlserver.adventureworks.sales.tables.vIndividualCustomer as(java.lang.String alias) { + return new org.jooq.examples.sqlserver.adventureworks.sales.tables.vIndividualCustomer(alias); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/sales/tables/vIndividualDemographics.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/sales/tables/vIndividualDemographics.java new file mode 100644 index 00000000000..da4c77cdd94 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/sales/tables/vIndividualDemographics.java @@ -0,0 +1,108 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.sales.tables; + +/** + * This class is generated by jOOQ. + */ +public class vIndividualDemographics extends org.jooq.impl.TableImpl { + + private static final long serialVersionUID = 726989341; + + /** + * The singleton instance of Sales.vIndividualDemographics + */ + public static final org.jooq.examples.sqlserver.adventureworks.sales.tables.vIndividualDemographics vIndividualDemographics = new org.jooq.examples.sqlserver.adventureworks.sales.tables.vIndividualDemographics(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.examples.sqlserver.adventureworks.sales.tables.records.vIndividualDemographics.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + */ + public final org.jooq.TableField CustomerID = createField("CustomerID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField TotalPurchaseYTD = createField("TotalPurchaseYTD", org.jooq.impl.SQLDataType.NUMERIC, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField DateFirstPurchase = createField("DateFirstPurchase", org.jooq.impl.SQLDataType.TIMESTAMP, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField BirthDate = createField("BirthDate", org.jooq.impl.SQLDataType.TIMESTAMP, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField MaritalStatus = createField("MaritalStatus", org.jooq.impl.SQLDataType.NVARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField YearlyIncome = createField("YearlyIncome", org.jooq.impl.SQLDataType.NVARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField Gender = createField("Gender", org.jooq.impl.SQLDataType.NVARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField TotalChildren = createField("TotalChildren", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField NumberChildrenAtHome = createField("NumberChildrenAtHome", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField Education = createField("Education", org.jooq.impl.SQLDataType.NVARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField Occupation = createField("Occupation", org.jooq.impl.SQLDataType.NVARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField HomeOwnerFlag = createField("HomeOwnerFlag", org.jooq.impl.SQLDataType.BIT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField NumberCarsOwned = createField("NumberCarsOwned", org.jooq.impl.SQLDataType.INTEGER, this); + + public vIndividualDemographics() { + super("vIndividualDemographics", org.jooq.examples.sqlserver.adventureworks.sales.Sales.Sales); + } + + public vIndividualDemographics(java.lang.String alias) { + super(alias, org.jooq.examples.sqlserver.adventureworks.sales.Sales.Sales, org.jooq.examples.sqlserver.adventureworks.sales.tables.vIndividualDemographics.vIndividualDemographics); + } + + @Override + public org.jooq.examples.sqlserver.adventureworks.sales.tables.vIndividualDemographics as(java.lang.String alias) { + return new org.jooq.examples.sqlserver.adventureworks.sales.tables.vIndividualDemographics(alias); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/sales/tables/vSalesPerson.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/sales/tables/vSalesPerson.java new file mode 100644 index 00000000000..3b368dca64b --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/sales/tables/vSalesPerson.java @@ -0,0 +1,148 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.sales.tables; + +/** + * This class is generated by jOOQ. + */ +public class vSalesPerson extends org.jooq.impl.TableImpl { + + private static final long serialVersionUID = -169904248; + + /** + * The singleton instance of Sales.vSalesPerson + */ + public static final org.jooq.examples.sqlserver.adventureworks.sales.tables.vSalesPerson vSalesPerson = new org.jooq.examples.sqlserver.adventureworks.sales.tables.vSalesPerson(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.examples.sqlserver.adventureworks.sales.tables.records.vSalesPerson.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + */ + public final org.jooq.TableField SalesPersonID = createField("SalesPersonID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField Title = createField("Title", org.jooq.impl.SQLDataType.NVARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField FirstName = createField("FirstName", org.jooq.impl.SQLDataType.NVARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField MiddleName = createField("MiddleName", org.jooq.impl.SQLDataType.NVARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField LastName = createField("LastName", org.jooq.impl.SQLDataType.NVARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField Suffix = createField("Suffix", org.jooq.impl.SQLDataType.NVARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField JobTitle = createField("JobTitle", org.jooq.impl.SQLDataType.NVARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField Phone = createField("Phone", org.jooq.impl.SQLDataType.NVARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField EmailAddress = createField("EmailAddress", org.jooq.impl.SQLDataType.NVARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField EmailPromotion = createField("EmailPromotion", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField AddressLine1 = createField("AddressLine1", org.jooq.impl.SQLDataType.NVARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField AddressLine2 = createField("AddressLine2", org.jooq.impl.SQLDataType.NVARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField City = createField("City", org.jooq.impl.SQLDataType.NVARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField StateProvinceName = createField("StateProvinceName", org.jooq.impl.SQLDataType.NVARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField PostalCode = createField("PostalCode", org.jooq.impl.SQLDataType.NVARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField CountryRegionName = createField("CountryRegionName", org.jooq.impl.SQLDataType.NVARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField TerritoryName = createField("TerritoryName", org.jooq.impl.SQLDataType.NVARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField TerritoryGroup = createField("TerritoryGroup", org.jooq.impl.SQLDataType.NVARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField SalesQuota = createField("SalesQuota", org.jooq.impl.SQLDataType.NUMERIC, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField SalesYTD = createField("SalesYTD", org.jooq.impl.SQLDataType.NUMERIC, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField SalesLastYear = createField("SalesLastYear", org.jooq.impl.SQLDataType.NUMERIC, this); + + public vSalesPerson() { + super("vSalesPerson", org.jooq.examples.sqlserver.adventureworks.sales.Sales.Sales); + } + + public vSalesPerson(java.lang.String alias) { + super(alias, org.jooq.examples.sqlserver.adventureworks.sales.Sales.Sales, org.jooq.examples.sqlserver.adventureworks.sales.tables.vSalesPerson.vSalesPerson); + } + + @Override + public org.jooq.examples.sqlserver.adventureworks.sales.tables.vSalesPerson as(java.lang.String alias) { + return new org.jooq.examples.sqlserver.adventureworks.sales.tables.vSalesPerson(alias); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/sales/tables/vSalesPersonSalesByFiscalYears.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/sales/tables/vSalesPersonSalesByFiscalYears.java new file mode 100644 index 00000000000..2cfd04e19c7 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/sales/tables/vSalesPersonSalesByFiscalYears.java @@ -0,0 +1,78 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.sales.tables; + +/** + * This class is generated by jOOQ. + */ +public class vSalesPersonSalesByFiscalYears extends org.jooq.impl.TableImpl { + + private static final long serialVersionUID = 1477749314; + + /** + * The singleton instance of Sales.vSalesPersonSalesByFiscalYears + */ + public static final org.jooq.examples.sqlserver.adventureworks.sales.tables.vSalesPersonSalesByFiscalYears vSalesPersonSalesByFiscalYears = new org.jooq.examples.sqlserver.adventureworks.sales.tables.vSalesPersonSalesByFiscalYears(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.examples.sqlserver.adventureworks.sales.tables.records.vSalesPersonSalesByFiscalYears.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + */ + public final org.jooq.TableField SalesPersonID = createField("SalesPersonID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField FullName = createField("FullName", org.jooq.impl.SQLDataType.NVARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField Title = createField("Title", org.jooq.impl.SQLDataType.NVARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField SalesTerritory = createField("SalesTerritory", org.jooq.impl.SQLDataType.NVARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField _2002 = createField("2002", org.jooq.impl.SQLDataType.NUMERIC, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField _2003 = createField("2003", org.jooq.impl.SQLDataType.NUMERIC, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField _2004 = createField("2004", org.jooq.impl.SQLDataType.NUMERIC, this); + + public vSalesPersonSalesByFiscalYears() { + super("vSalesPersonSalesByFiscalYears", org.jooq.examples.sqlserver.adventureworks.sales.Sales.Sales); + } + + public vSalesPersonSalesByFiscalYears(java.lang.String alias) { + super(alias, org.jooq.examples.sqlserver.adventureworks.sales.Sales.Sales, org.jooq.examples.sqlserver.adventureworks.sales.tables.vSalesPersonSalesByFiscalYears.vSalesPersonSalesByFiscalYears); + } + + @Override + public org.jooq.examples.sqlserver.adventureworks.sales.tables.vSalesPersonSalesByFiscalYears as(java.lang.String alias) { + return new org.jooq.examples.sqlserver.adventureworks.sales.tables.vSalesPersonSalesByFiscalYears(alias); + } +} diff --git a/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/sales/tables/vStoreWithDemographics.java b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/sales/tables/vStoreWithDemographics.java new file mode 100644 index 00000000000..80cf46b4b87 --- /dev/null +++ b/jOOQ-test/examples/org/jooq/examples/sqlserver/adventureworks/sales/tables/vStoreWithDemographics.java @@ -0,0 +1,183 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.examples.sqlserver.adventureworks.sales.tables; + +/** + * This class is generated by jOOQ. + */ +public class vStoreWithDemographics extends org.jooq.impl.TableImpl { + + private static final long serialVersionUID = 1964180686; + + /** + * The singleton instance of Sales.vStoreWithDemographics + */ + public static final org.jooq.examples.sqlserver.adventureworks.sales.tables.vStoreWithDemographics vStoreWithDemographics = new org.jooq.examples.sqlserver.adventureworks.sales.tables.vStoreWithDemographics(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.examples.sqlserver.adventureworks.sales.tables.records.vStoreWithDemographics.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + */ + public final org.jooq.TableField CustomerID = createField("CustomerID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField Name = createField("Name", org.jooq.impl.SQLDataType.NVARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField ContactType = createField("ContactType", org.jooq.impl.SQLDataType.NVARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField Title = createField("Title", org.jooq.impl.SQLDataType.NVARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField FirstName = createField("FirstName", org.jooq.impl.SQLDataType.NVARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField MiddleName = createField("MiddleName", org.jooq.impl.SQLDataType.NVARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField LastName = createField("LastName", org.jooq.impl.SQLDataType.NVARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField Suffix = createField("Suffix", org.jooq.impl.SQLDataType.NVARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField Phone = createField("Phone", org.jooq.impl.SQLDataType.NVARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField EmailAddress = createField("EmailAddress", org.jooq.impl.SQLDataType.NVARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField EmailPromotion = createField("EmailPromotion", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField AddressType = createField("AddressType", org.jooq.impl.SQLDataType.NVARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField AddressLine1 = createField("AddressLine1", org.jooq.impl.SQLDataType.NVARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField AddressLine2 = createField("AddressLine2", org.jooq.impl.SQLDataType.NVARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField City = createField("City", org.jooq.impl.SQLDataType.NVARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField StateProvinceName = createField("StateProvinceName", org.jooq.impl.SQLDataType.NVARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField PostalCode = createField("PostalCode", org.jooq.impl.SQLDataType.NVARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField CountryRegionName = createField("CountryRegionName", org.jooq.impl.SQLDataType.NVARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField AnnualSales = createField("AnnualSales", org.jooq.impl.SQLDataType.NUMERIC, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField AnnualRevenue = createField("AnnualRevenue", org.jooq.impl.SQLDataType.NUMERIC, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField BankName = createField("BankName", org.jooq.impl.SQLDataType.NVARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField BusinessType = createField("BusinessType", org.jooq.impl.SQLDataType.NVARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField YearOpened = createField("YearOpened", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField Specialty = createField("Specialty", org.jooq.impl.SQLDataType.NVARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField SquareFeet = createField("SquareFeet", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField Brands = createField("Brands", org.jooq.impl.SQLDataType.NVARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField Internet = createField("Internet", org.jooq.impl.SQLDataType.NVARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField NumberEmployees = createField("NumberEmployees", org.jooq.impl.SQLDataType.INTEGER, this); + + public vStoreWithDemographics() { + super("vStoreWithDemographics", org.jooq.examples.sqlserver.adventureworks.sales.Sales.Sales); + } + + public vStoreWithDemographics(java.lang.String alias) { + super(alias, org.jooq.examples.sqlserver.adventureworks.sales.Sales.Sales, org.jooq.examples.sqlserver.adventureworks.sales.tables.vStoreWithDemographics.vStoreWithDemographics); + } + + @Override + public org.jooq.examples.sqlserver.adventureworks.sales.tables.vStoreWithDemographics as(java.lang.String alias) { + return new org.jooq.examples.sqlserver.adventureworks.sales.tables.vStoreWithDemographics(alias); + } +} diff --git a/jOOQ-test/launch/Console.launch b/jOOQ-test/launch/Console.launch new file mode 100644 index 00000000000..e7a6fdb9890 --- /dev/null +++ b/jOOQ-test/launch/Console.launch @@ -0,0 +1,18 @@ + + + + + + + + + + + + + + + + + + diff --git a/jOOQ-test/launch/GenerationTool CUBRID demodb.launch b/jOOQ-test/launch/GenerationTool CUBRID demodb.launch new file mode 100644 index 00000000000..88305cd9905 --- /dev/null +++ b/jOOQ-test/launch/GenerationTool CUBRID demodb.launch @@ -0,0 +1,33 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/jOOQ-test/launch/GenerationTool CUBRID test.launch b/jOOQ-test/launch/GenerationTool CUBRID test.launch new file mode 100644 index 00000000000..06071a6fcef --- /dev/null +++ b/jOOQ-test/launch/GenerationTool CUBRID test.launch @@ -0,0 +1,33 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/jOOQ-test/launch/GenerationTool DB2 test.launch b/jOOQ-test/launch/GenerationTool DB2 test.launch new file mode 100644 index 00000000000..66d22387a0a --- /dev/null +++ b/jOOQ-test/launch/GenerationTool DB2 test.launch @@ -0,0 +1,35 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/jOOQ-test/launch/GenerationTool Derby test.launch b/jOOQ-test/launch/GenerationTool Derby test.launch new file mode 100644 index 00000000000..68bb9883d10 --- /dev/null +++ b/jOOQ-test/launch/GenerationTool Derby test.launch @@ -0,0 +1,42 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/jOOQ-test/launch/GenerationTool H2 test.launch b/jOOQ-test/launch/GenerationTool H2 test.launch new file mode 100644 index 00000000000..ef74685440b --- /dev/null +++ b/jOOQ-test/launch/GenerationTool H2 test.launch @@ -0,0 +1,51 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/jOOQ-test/launch/GenerationTool HSQLDB test.launch b/jOOQ-test/launch/GenerationTool HSQLDB test.launch new file mode 100644 index 00000000000..be6c247009c --- /dev/null +++ b/jOOQ-test/launch/GenerationTool HSQLDB test.launch @@ -0,0 +1,35 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/jOOQ-test/launch/GenerationTool Ingres test.launch b/jOOQ-test/launch/GenerationTool Ingres test.launch new file mode 100644 index 00000000000..feb56de7413 --- /dev/null +++ b/jOOQ-test/launch/GenerationTool Ingres test.launch @@ -0,0 +1,46 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/jOOQ-test/launch/GenerationTool MySQL sakila.launch b/jOOQ-test/launch/GenerationTool MySQL sakila.launch new file mode 100644 index 00000000000..3e35e3d2f86 --- /dev/null +++ b/jOOQ-test/launch/GenerationTool MySQL sakila.launch @@ -0,0 +1,35 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/jOOQ-test/launch/GenerationTool MySQL test.launch b/jOOQ-test/launch/GenerationTool MySQL test.launch new file mode 100644 index 00000000000..987dce037ae --- /dev/null +++ b/jOOQ-test/launch/GenerationTool MySQL test.launch @@ -0,0 +1,35 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/jOOQ-test/launch/GenerationTool MySQL test2 (schema-rewrite).launch b/jOOQ-test/launch/GenerationTool MySQL test2 (schema-rewrite).launch new file mode 100644 index 00000000000..a0a5e6af88f --- /dev/null +++ b/jOOQ-test/launch/GenerationTool MySQL test2 (schema-rewrite).launch @@ -0,0 +1,35 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/jOOQ-test/launch/GenerationTool Oracle sys-test.launch b/jOOQ-test/launch/GenerationTool Oracle sys-test.launch new file mode 100644 index 00000000000..3b0e7bbe8c0 --- /dev/null +++ b/jOOQ-test/launch/GenerationTool Oracle sys-test.launch @@ -0,0 +1,30 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/jOOQ-test/launch/GenerationTool Oracle test (custom strategy).launch b/jOOQ-test/launch/GenerationTool Oracle test (custom strategy).launch new file mode 100644 index 00000000000..7f870b7f14e --- /dev/null +++ b/jOOQ-test/launch/GenerationTool Oracle test (custom strategy).launch @@ -0,0 +1,31 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/jOOQ-test/launch/GenerationTool Oracle test (map date to timestamp).launch b/jOOQ-test/launch/GenerationTool Oracle test (map date to timestamp).launch new file mode 100644 index 00000000000..c1b92e98de5 --- /dev/null +++ b/jOOQ-test/launch/GenerationTool Oracle test (map date to timestamp).launch @@ -0,0 +1,32 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/jOOQ-test/launch/GenerationTool Oracle test.launch b/jOOQ-test/launch/GenerationTool Oracle test.launch new file mode 100644 index 00000000000..639c027c5af --- /dev/null +++ b/jOOQ-test/launch/GenerationTool Oracle test.launch @@ -0,0 +1,31 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/jOOQ-test/launch/GenerationTool Postgres test.launch b/jOOQ-test/launch/GenerationTool Postgres test.launch new file mode 100644 index 00000000000..e86bfedfd14 --- /dev/null +++ b/jOOQ-test/launch/GenerationTool Postgres test.launch @@ -0,0 +1,41 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/jOOQ-test/launch/GenerationTool SQLServer AdventureWorks.launch b/jOOQ-test/launch/GenerationTool SQLServer AdventureWorks.launch new file mode 100644 index 00000000000..35a3a77a599 --- /dev/null +++ b/jOOQ-test/launch/GenerationTool SQLServer AdventureWorks.launch @@ -0,0 +1,43 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/jOOQ-test/launch/GenerationTool SQLServer test.launch b/jOOQ-test/launch/GenerationTool SQLServer test.launch new file mode 100644 index 00000000000..8eac000eb58 --- /dev/null +++ b/jOOQ-test/launch/GenerationTool SQLServer test.launch @@ -0,0 +1,43 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/jOOQ-test/launch/GenerationTool SQLite test.launch b/jOOQ-test/launch/GenerationTool SQLite test.launch new file mode 100644 index 00000000000..7c6d75701b2 --- /dev/null +++ b/jOOQ-test/launch/GenerationTool SQLite test.launch @@ -0,0 +1,41 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/jOOQ-test/launch/GenerationTool Sybase ASE test.launch b/jOOQ-test/launch/GenerationTool Sybase ASE test.launch new file mode 100644 index 00000000000..aa45c5dad28 --- /dev/null +++ b/jOOQ-test/launch/GenerationTool Sybase ASE test.launch @@ -0,0 +1,33 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/jOOQ-test/launch/GenerationTool Sybase test.launch b/jOOQ-test/launch/GenerationTool Sybase test.launch new file mode 100644 index 00000000000..ad8af09d89e --- /dev/null +++ b/jOOQ-test/launch/GenerationTool Sybase test.launch @@ -0,0 +1,34 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/jOOQ-test/launch/Meta-Generate CUBRID dba.launch b/jOOQ-test/launch/Meta-Generate CUBRID dba.launch new file mode 100644 index 00000000000..c4db76a207f --- /dev/null +++ b/jOOQ-test/launch/Meta-Generate CUBRID dba.launch @@ -0,0 +1,31 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/jOOQ-test/launch/Meta-Generate DB2 syscat.launch b/jOOQ-test/launch/Meta-Generate DB2 syscat.launch new file mode 100644 index 00000000000..176a944d2dd --- /dev/null +++ b/jOOQ-test/launch/Meta-Generate DB2 syscat.launch @@ -0,0 +1,30 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/jOOQ-test/launch/Meta-Generate Derby sys.launch b/jOOQ-test/launch/Meta-Generate Derby sys.launch new file mode 100644 index 00000000000..4178717297e --- /dev/null +++ b/jOOQ-test/launch/Meta-Generate Derby sys.launch @@ -0,0 +1,39 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/jOOQ-test/launch/Meta-Generate H2 information_schema.launch b/jOOQ-test/launch/Meta-Generate H2 information_schema.launch new file mode 100644 index 00000000000..98b404cbfe8 --- /dev/null +++ b/jOOQ-test/launch/Meta-Generate H2 information_schema.launch @@ -0,0 +1,42 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/jOOQ-test/launch/Meta-Generate HSQLDB information_schema.launch b/jOOQ-test/launch/Meta-Generate HSQLDB information_schema.launch new file mode 100644 index 00000000000..a280a3d464f --- /dev/null +++ b/jOOQ-test/launch/Meta-Generate HSQLDB information_schema.launch @@ -0,0 +1,32 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/jOOQ-test/launch/Meta-Generate Ingres $ingres.launch b/jOOQ-test/launch/Meta-Generate Ingres $ingres.launch new file mode 100644 index 00000000000..1abebb1a00c --- /dev/null +++ b/jOOQ-test/launch/Meta-Generate Ingres $ingres.launch @@ -0,0 +1,46 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/jOOQ-test/launch/Meta-Generate MySQL information_schema.launch b/jOOQ-test/launch/Meta-Generate MySQL information_schema.launch new file mode 100644 index 00000000000..194eab72f38 --- /dev/null +++ b/jOOQ-test/launch/Meta-Generate MySQL information_schema.launch @@ -0,0 +1,32 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/jOOQ-test/launch/Meta-Generate MySQL mysql.launch b/jOOQ-test/launch/Meta-Generate MySQL mysql.launch new file mode 100644 index 00000000000..c8479c63a76 --- /dev/null +++ b/jOOQ-test/launch/Meta-Generate MySQL mysql.launch @@ -0,0 +1,32 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/jOOQ-test/launch/Meta-Generate Oracle sys.launch b/jOOQ-test/launch/Meta-Generate Oracle sys.launch new file mode 100644 index 00000000000..9f7dabce852 --- /dev/null +++ b/jOOQ-test/launch/Meta-Generate Oracle sys.launch @@ -0,0 +1,30 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/jOOQ-test/launch/Meta-Generate Postgres information_schema.launch b/jOOQ-test/launch/Meta-Generate Postgres information_schema.launch new file mode 100644 index 00000000000..69b4f794b0e --- /dev/null +++ b/jOOQ-test/launch/Meta-Generate Postgres information_schema.launch @@ -0,0 +1,33 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/jOOQ-test/launch/Meta-Generate Postgres pg_catalog.launch b/jOOQ-test/launch/Meta-Generate Postgres pg_catalog.launch new file mode 100644 index 00000000000..cd450923c0d --- /dev/null +++ b/jOOQ-test/launch/Meta-Generate Postgres pg_catalog.launch @@ -0,0 +1,30 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/jOOQ-test/launch/Meta-Generate SQLServer information_schema.launch b/jOOQ-test/launch/Meta-Generate SQLServer information_schema.launch new file mode 100644 index 00000000000..b0806b36c89 --- /dev/null +++ b/jOOQ-test/launch/Meta-Generate SQLServer information_schema.launch @@ -0,0 +1,31 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/jOOQ-test/launch/Meta-Generate Sybase ASE sys.launch b/jOOQ-test/launch/Meta-Generate Sybase ASE sys.launch new file mode 100644 index 00000000000..7a0711c7a6a --- /dev/null +++ b/jOOQ-test/launch/Meta-Generate Sybase ASE sys.launch @@ -0,0 +1,31 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/jOOQ-test/launch/Meta-Generate Sybase sys.launch b/jOOQ-test/launch/Meta-Generate Sybase sys.launch new file mode 100644 index 00000000000..f60f7f3a5a4 --- /dev/null +++ b/jOOQ-test/launch/Meta-Generate Sybase sys.launch @@ -0,0 +1,30 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/jOOQ-test/launch/Server Client H2.launch b/jOOQ-test/launch/Server Client H2.launch new file mode 100644 index 00000000000..bed39cac77c --- /dev/null +++ b/jOOQ-test/launch/Server Client H2.launch @@ -0,0 +1,16 @@ + + + + + + + + + + + + + + + + diff --git a/jOOQ-test/launch/Server Client HSQLDB.launch b/jOOQ-test/launch/Server Client HSQLDB.launch new file mode 100644 index 00000000000..eced6165460 --- /dev/null +++ b/jOOQ-test/launch/Server Client HSQLDB.launch @@ -0,0 +1,16 @@ + + + + + + + + + + + + + + + + diff --git a/jOOQ-test/launch/Server Start Derby.launch b/jOOQ-test/launch/Server Start Derby.launch new file mode 100644 index 00000000000..b3e14a3f10c --- /dev/null +++ b/jOOQ-test/launch/Server Start Derby.launch @@ -0,0 +1,17 @@ + + + + + + + + + + + + + + + + + diff --git a/jOOQ-test/launch/Server Start HSQLDB.launch b/jOOQ-test/launch/Server Start HSQLDB.launch new file mode 100644 index 00000000000..ce5db9f320c --- /dev/null +++ b/jOOQ-test/launch/Server Start HSQLDB.launch @@ -0,0 +1,16 @@ + + + + + + + + + + + + + + + + diff --git a/jOOQ-test/launch/jOOQASETest.launch b/jOOQ-test/launch/jOOQASETest.launch new file mode 100644 index 00000000000..e2d154b8de6 --- /dev/null +++ b/jOOQ-test/launch/jOOQASETest.launch @@ -0,0 +1,20 @@ + + + + + + + + + + + + + + + + + + + + diff --git a/jOOQ-test/launch/jOOQCUBRIDTest.launch b/jOOQ-test/launch/jOOQCUBRIDTest.launch new file mode 100644 index 00000000000..88ab096efb5 --- /dev/null +++ b/jOOQ-test/launch/jOOQCUBRIDTest.launch @@ -0,0 +1,26 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/jOOQ-test/launch/jOOQDB2Test.launch b/jOOQ-test/launch/jOOQDB2Test.launch new file mode 100644 index 00000000000..0fb0acbe148 --- /dev/null +++ b/jOOQ-test/launch/jOOQDB2Test.launch @@ -0,0 +1,20 @@ + + + + + + + + + + + + + + + + + + + + diff --git a/jOOQ-test/launch/jOOQDerbyTest.launch b/jOOQ-test/launch/jOOQDerbyTest.launch new file mode 100644 index 00000000000..8a926a68ed5 --- /dev/null +++ b/jOOQ-test/launch/jOOQDerbyTest.launch @@ -0,0 +1,20 @@ + + + + + + + + + + + + + + + + + + + + diff --git a/jOOQ-test/launch/jOOQH2Test.launch b/jOOQ-test/launch/jOOQH2Test.launch new file mode 100644 index 00000000000..e41fcc42c71 --- /dev/null +++ b/jOOQ-test/launch/jOOQH2Test.launch @@ -0,0 +1,20 @@ + + + + + + + + + + + + + + + + + + + + diff --git a/jOOQ-test/launch/jOOQHSQLDBTest (Oracle schema).launch b/jOOQ-test/launch/jOOQHSQLDBTest (Oracle schema).launch new file mode 100644 index 00000000000..e8d2c69284e --- /dev/null +++ b/jOOQ-test/launch/jOOQHSQLDBTest (Oracle schema).launch @@ -0,0 +1,20 @@ + + + + + + + + + + + + + + + + + + + + diff --git a/jOOQ-test/launch/jOOQHSQLDBTest.launch b/jOOQ-test/launch/jOOQHSQLDBTest.launch new file mode 100644 index 00000000000..64ae2e22a43 --- /dev/null +++ b/jOOQ-test/launch/jOOQHSQLDBTest.launch @@ -0,0 +1,21 @@ + + + + + + + + + + + + + + + + + + + + + diff --git a/jOOQ-test/launch/jOOQIngresTest.launch b/jOOQ-test/launch/jOOQIngresTest.launch new file mode 100644 index 00000000000..0c2f9902961 --- /dev/null +++ b/jOOQ-test/launch/jOOQIngresTest.launch @@ -0,0 +1,33 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/jOOQ-test/launch/jOOQMySQLTest (schema mapping).launch b/jOOQ-test/launch/jOOQMySQLTest (schema mapping).launch new file mode 100644 index 00000000000..35bfde51c22 --- /dev/null +++ b/jOOQ-test/launch/jOOQMySQLTest (schema mapping).launch @@ -0,0 +1,21 @@ + + + + + + + + + + + + + + + + + + + + + diff --git a/jOOQ-test/launch/jOOQMySQLTest (schema rewrite).launch b/jOOQ-test/launch/jOOQMySQLTest (schema rewrite).launch new file mode 100644 index 00000000000..7ba33e5552b --- /dev/null +++ b/jOOQ-test/launch/jOOQMySQLTest (schema rewrite).launch @@ -0,0 +1,21 @@ + + + + + + + + + + + + + + + + + + + + + diff --git a/jOOQ-test/launch/jOOQMySQLTest.launch b/jOOQ-test/launch/jOOQMySQLTest.launch new file mode 100644 index 00000000000..2379c9f2c6b --- /dev/null +++ b/jOOQ-test/launch/jOOQMySQLTest.launch @@ -0,0 +1,20 @@ + + + + + + + + + + + + + + + + + + + + diff --git a/jOOQ-test/launch/jOOQOracleTest (No bind variables).launch b/jOOQ-test/launch/jOOQOracleTest (No bind variables).launch new file mode 100644 index 00000000000..c863635ea5b --- /dev/null +++ b/jOOQ-test/launch/jOOQOracleTest (No bind variables).launch @@ -0,0 +1,20 @@ + + + + + + + + + + + + + + + + + + + + diff --git a/jOOQ-test/launch/jOOQOracleTest.launch b/jOOQ-test/launch/jOOQOracleTest.launch new file mode 100644 index 00000000000..195f202099c --- /dev/null +++ b/jOOQ-test/launch/jOOQOracleTest.launch @@ -0,0 +1,20 @@ + + + + + + + + + + + + + + + + + + + + diff --git a/jOOQ-test/launch/jOOQPostgresTest.launch b/jOOQ-test/launch/jOOQPostgresTest.launch new file mode 100644 index 00000000000..fe957b7a787 --- /dev/null +++ b/jOOQ-test/launch/jOOQPostgresTest.launch @@ -0,0 +1,20 @@ + + + + + + + + + + + + + + + + + + + + diff --git a/jOOQ-test/launch/jOOQSQLServerTest (No bind variables).launch b/jOOQ-test/launch/jOOQSQLServerTest (No bind variables).launch new file mode 100644 index 00000000000..57b3ff934cf --- /dev/null +++ b/jOOQ-test/launch/jOOQSQLServerTest (No bind variables).launch @@ -0,0 +1,20 @@ + + + + + + + + + + + + + + + + + + + + diff --git a/jOOQ-test/launch/jOOQSQLServerTest.launch b/jOOQ-test/launch/jOOQSQLServerTest.launch new file mode 100644 index 00000000000..b133de0bb9d --- /dev/null +++ b/jOOQ-test/launch/jOOQSQLServerTest.launch @@ -0,0 +1,20 @@ + + + + + + + + + + + + + + + + + + + + diff --git a/jOOQ-test/launch/jOOQSQLiteTest.launch b/jOOQ-test/launch/jOOQSQLiteTest.launch new file mode 100644 index 00000000000..f14e925f083 --- /dev/null +++ b/jOOQ-test/launch/jOOQSQLiteTest.launch @@ -0,0 +1,20 @@ + + + + + + + + + + + + + + + + + + + + diff --git a/jOOQ-test/launch/jOOQSybaseTest.launch b/jOOQ-test/launch/jOOQSybaseTest.launch new file mode 100644 index 00000000000..4f9e44222ff --- /dev/null +++ b/jOOQ-test/launch/jOOQSybaseTest.launch @@ -0,0 +1,20 @@ + + + + + + + + + + + + + + + + + + + + diff --git a/jOOQ-test/launch/jOOQTest.launch b/jOOQ-test/launch/jOOQTest.launch new file mode 100644 index 00000000000..5fd7b9face0 --- /dev/null +++ b/jOOQ-test/launch/jOOQTest.launch @@ -0,0 +1,37 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/jOOQ-test/lib/JDBC-8.4.1.1018-cubrid.jar b/jOOQ-test/lib/JDBC-8.4.1.1018-cubrid.jar new file mode 100644 index 00000000000..7828f1d66ed Binary files /dev/null and b/jOOQ-test/lib/JDBC-8.4.1.1018-cubrid.jar differ diff --git a/jOOQ-test/lib/commons-io-1.4.jar b/jOOQ-test/lib/commons-io-1.4.jar new file mode 100644 index 00000000000..133dc6cb35f Binary files /dev/null and b/jOOQ-test/lib/commons-io-1.4.jar differ diff --git a/jOOQ-test/lib/db2jcc4.jar b/jOOQ-test/lib/db2jcc4.jar new file mode 100644 index 00000000000..19122a632dc Binary files /dev/null and b/jOOQ-test/lib/db2jcc4.jar differ diff --git a/jOOQ-test/lib/derby.jar b/jOOQ-test/lib/derby.jar new file mode 100644 index 00000000000..4ee3505e3fd Binary files /dev/null and b/jOOQ-test/lib/derby.jar differ diff --git a/jOOQ-test/lib/derbyclient.jar b/jOOQ-test/lib/derbyclient.jar new file mode 100644 index 00000000000..5a26b84bcfb Binary files /dev/null and b/jOOQ-test/lib/derbyclient.jar differ diff --git a/jOOQ-test/lib/derbynet.jar b/jOOQ-test/lib/derbynet.jar new file mode 100644 index 00000000000..52ba99e248c Binary files /dev/null and b/jOOQ-test/lib/derbynet.jar differ diff --git a/jOOQ-test/lib/derbyrun.jar b/jOOQ-test/lib/derbyrun.jar new file mode 100644 index 00000000000..30ae13e3267 Binary files /dev/null and b/jOOQ-test/lib/derbyrun.jar differ diff --git a/jOOQ-test/lib/derbytools.jar b/jOOQ-test/lib/derbytools.jar new file mode 100644 index 00000000000..5dd16574810 Binary files /dev/null and b/jOOQ-test/lib/derbytools.jar differ diff --git a/jOOQ-test/lib/h2-1.3.165.jar b/jOOQ-test/lib/h2-1.3.165.jar new file mode 100644 index 00000000000..eba9235b494 Binary files /dev/null and b/jOOQ-test/lib/h2-1.3.165.jar differ diff --git a/jOOQ-test/lib/hsqldb.jar b/jOOQ-test/lib/hsqldb.jar new file mode 100644 index 00000000000..f741c0ca5d9 Binary files /dev/null and b/jOOQ-test/lib/hsqldb.jar differ diff --git a/jOOQ-test/lib/iijdbc.jar b/jOOQ-test/lib/iijdbc.jar new file mode 100644 index 00000000000..4368ab83cc1 Binary files /dev/null and b/jOOQ-test/lib/iijdbc.jar differ diff --git a/jOOQ-test/lib/jconn3.jar b/jOOQ-test/lib/jconn3.jar new file mode 100755 index 00000000000..078b25da928 Binary files /dev/null and b/jOOQ-test/lib/jconn3.jar differ diff --git a/jOOQ-test/lib/jtds-1.2.5.jar b/jOOQ-test/lib/jtds-1.2.5.jar new file mode 100644 index 00000000000..79ba560b61d Binary files /dev/null and b/jOOQ-test/lib/jtds-1.2.5.jar differ diff --git a/jOOQ-test/lib/junit.jar b/jOOQ-test/lib/junit.jar new file mode 100644 index 00000000000..2235529661f Binary files /dev/null and b/jOOQ-test/lib/junit.jar differ diff --git a/jOOQ-test/lib/log4j-1.2.16.jar b/jOOQ-test/lib/log4j-1.2.16.jar new file mode 100644 index 00000000000..5429a903e11 Binary files /dev/null and b/jOOQ-test/lib/log4j-1.2.16.jar differ diff --git a/jOOQ-test/lib/mysql-connector-java-5.1.15-bin.jar b/jOOQ-test/lib/mysql-connector-java-5.1.15-bin.jar new file mode 100644 index 00000000000..560c5f051f3 Binary files /dev/null and b/jOOQ-test/lib/mysql-connector-java-5.1.15-bin.jar differ diff --git a/jOOQ-test/lib/ojdbc6.jar b/jOOQ-test/lib/ojdbc6.jar new file mode 100644 index 00000000000..fb50fb93972 Binary files /dev/null and b/jOOQ-test/lib/ojdbc6.jar differ diff --git a/jOOQ-test/lib/postgresql-9.0-801.jdbc4.jar b/jOOQ-test/lib/postgresql-9.0-801.jdbc4.jar new file mode 100644 index 00000000000..63e54165ecf Binary files /dev/null and b/jOOQ-test/lib/postgresql-9.0-801.jdbc4.jar differ diff --git a/jOOQ-test/lib/rsyntaxtextarea-1.5.0.jar b/jOOQ-test/lib/rsyntaxtextarea-1.5.0.jar new file mode 100644 index 00000000000..bca0dd510f8 Binary files /dev/null and b/jOOQ-test/lib/rsyntaxtextarea-1.5.0.jar differ diff --git a/jOOQ-test/lib/sqlitejdbc-v056.jar b/jOOQ-test/lib/sqlitejdbc-v056.jar new file mode 100644 index 00000000000..f95d90eb070 Binary files /dev/null and b/jOOQ-test/lib/sqlitejdbc-v056.jar differ diff --git a/jOOQ-test/lib/sqljdbc4.jar b/jOOQ-test/lib/sqljdbc4.jar new file mode 100644 index 00000000000..b73ace0a022 Binary files /dev/null and b/jOOQ-test/lib/sqljdbc4.jar differ diff --git a/jOOQ-test/src/log4j.xml b/jOOQ-test/src/log4j.xml new file mode 100644 index 00000000000..94aac210fb3 --- /dev/null +++ b/jOOQ-test/src/log4j.xml @@ -0,0 +1,15 @@ + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/jOOQ-test/src/org/jooq/test/BaseTest.java b/jOOQ-test/src/org/jooq/test/BaseTest.java new file mode 100644 index 00000000000..88ac0700a1d --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/BaseTest.java @@ -0,0 +1,763 @@ +/** + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com + * All rights reserved. + * + * This software is licensed to you under the Apache License, Version 2.0 + * (the "License"); You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * 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 "jOOQ" 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 COPYRIGHT OWNER 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. + */ +package org.jooq.test; + +import java.lang.reflect.Method; +import java.math.BigDecimal; +import java.math.BigInteger; +import java.sql.Connection; +import java.sql.Date; +import java.sql.Time; +import java.sql.Timestamp; +import java.util.ArrayList; +import java.util.Arrays; +import java.util.List; + +import org.jooq.ArrayRecord; +import org.jooq.DataType; +import org.jooq.Field; +import org.jooq.QueryPart; +import org.jooq.QueryPartInternal; +import org.jooq.Record; +import org.jooq.Result; +import org.jooq.SQLDialect; +import org.jooq.Schema; +import org.jooq.Sequence; +import org.jooq.Table; +import org.jooq.TableField; +import org.jooq.TableRecord; +import org.jooq.UDTRecord; +import org.jooq.UpdatableRecord; +import org.jooq.UpdatableTable; +import org.jooq.conf.Settings; +import org.jooq.debug.DebugListener; +import org.jooq.impl.Factory; +import org.jooq.test._.TestStatisticsListener; +import org.jooq.test._.converters.Boolean_10; +import org.jooq.test._.converters.Boolean_TF_LC; +import org.jooq.test._.converters.Boolean_TF_UC; +import org.jooq.test._.converters.Boolean_YES_NO_LC; +import org.jooq.test._.converters.Boolean_YES_NO_UC; +import org.jooq.test._.converters.Boolean_YN_LC; +import org.jooq.test._.converters.Boolean_YN_UC; +import org.jooq.tools.JooqLogger; +import org.jooq.tools.unsigned.UByte; +import org.jooq.tools.unsigned.UInteger; +import org.jooq.tools.unsigned.ULong; +import org.jooq.tools.unsigned.UShort; + +public abstract class BaseTest< + + // T_AUTHOR table + A extends UpdatableRecord, + + // T_BOOK table + B extends UpdatableRecord, + + // T_BOOK_STORE table + S extends UpdatableRecord, + + // T_BOOK_TO_BOOK_STORE table + B2S extends UpdatableRecord, + + // MULTI_SCHEMA.T_BOOK_SALE table + BS extends UpdatableRecord, + + // V_LIBRARY view + L extends TableRecord, + + // T_ARRAYS table + X extends TableRecord, + + // T_DATES table + DATE extends UpdatableRecord, + + // T_BOOLEANS table + BOOL extends UpdatableRecord, + + // T_DIRECTORY table + D extends UpdatableRecord, + + // T_TRIGGERS table + T extends UpdatableRecord, + + // T_UNSIGNED table + U extends TableRecord, + + // T_IDENTITY table + I extends TableRecord, + + // T_IDENTITY_PK table + IPK extends UpdatableRecord, + + // Various tables related to trac ticket numbers + T658 extends TableRecord, + T725 extends UpdatableRecord, + T639 extends UpdatableRecord, + T785 extends TableRecord> { + + protected static final List BOOK_IDS_SHORT = Arrays.asList((short) 1, (short) 2, (short) 3, (short) 4); + protected static final List BOOK_IDS = Arrays.asList(1, 2, 3, 4); + protected static final List BOOK_AUTHOR_IDS = Arrays.asList(1, 1, 2, 2); + protected static final List BOOK_TITLES = Arrays.asList("1984", "Animal Farm", "O Alquimista", "Brida"); + protected static final List BOOK_FIRST_NAMES = Arrays.asList("George", "George", "Paulo", "Paulo"); + protected static final List BOOK_LAST_NAMES = Arrays.asList("Orwell", "Orwell", "Coelho", "Coelho"); + protected static final List AUTHOR_IDS = Arrays.asList(1, 2); + protected static final List AUTHOR_FIRST_NAMES = Arrays.asList("George", "Paulo"); + protected static final List AUTHOR_LAST_NAMES = Arrays.asList("Orwell", "Coelho"); + + protected static final JooqLogger log = JooqLogger.getLogger(jOOQAbstractTest.class); + + protected final jOOQAbstractTest delegate; + + protected BaseTest(jOOQAbstractTest delegate) { + this.delegate = delegate; + } + + protected Table T658() { + return delegate.T658(); + } + + protected Table T725() { + return delegate.T725(); + } + + protected TableField T725_ID() { + return delegate.T725_ID(); + } + + protected TableField T725_LOB() { + return delegate.T725_LOB(); + } + + protected Table T639() { + return delegate.T639(); + } + + protected TableField T639_ID() { + return delegate.T639_ID(); + } + + protected TableField T639_BIG_DECIMAL() { + return delegate.T639_BIG_DECIMAL(); + } + + protected TableField T639_BIG_INTEGER() { + return delegate.T639_BIG_INTEGER(); + } + + protected TableField T639_BYTE() { + return delegate.T639_BYTE(); + } + + protected TableField T639_BYTE_DECIMAL() { + return delegate.T639_BYTE_DECIMAL(); + } + + protected TableField T639_SHORT() { + return delegate.T639_SHORT(); + } + + protected TableField T639_SHORT_DECIMAL() { + return delegate.T639_SHORT_DECIMAL(); + } + + protected TableField T639_INTEGER() { + return delegate.T639_INTEGER(); + } + + protected TableField T639_INTEGER_DECIMAL() { + return delegate.T639_INTEGER_DECIMAL(); + } + + protected TableField T639_LONG() { + return delegate.T639_LONG(); + } + + protected TableField T639_LONG_DECIMAL() { + return delegate.T639_LONG_DECIMAL(); + } + + protected TableField T639_DOUBLE() { + return delegate.T639_DOUBLE(); + } + + protected TableField T639_FLOAT() { + return delegate.T639_FLOAT(); + } + + protected Table T785() { + return delegate.T785(); + } + + protected TableField T785_ID() { + return delegate.T785_ID(); + } + + protected TableField T785_NAME() { + return delegate.T785_NAME(); + } + + protected TableField T785_VALUE() { + return delegate.T785_VALUE(); + } + + protected Table TUnsigned() { + return delegate.TUnsigned(); + } + + protected TableField TUnsigned_U_BYTE() { + return delegate.TUnsigned_U_BYTE(); + } + + protected TableField TUnsigned_U_SHORT() { + return delegate.TUnsigned_U_SHORT(); + } + + protected TableField TUnsigned_U_INT() { + return delegate.TUnsigned_U_INT(); + } + + protected TableField TUnsigned_U_LONG() { + return delegate.TUnsigned_U_LONG(); + } + + public Table TDates() { + return delegate.TDates(); + } + + @SuppressWarnings("unchecked") + protected final TableField TDates_ID() { + return (TableField) getField(TDates(), "ID"); + } + + @SuppressWarnings("unchecked") + protected final TableField TDates_D() { + return (TableField) getField(TDates(), "D"); + } + + @SuppressWarnings("unchecked") + protected final TableField TDates_T() { + return (TableField) getField(TDates(), "T"); + } + + @SuppressWarnings("unchecked") + protected final TableField TDates_TS() { + return (TableField) getField(TDates(), "TS"); + } + + public UpdatableTable TBooleans() { + return delegate.TBooleans(); + } + + public TableField TBooleans_ID() { + return delegate.TBooleans_ID(); + } + + public TableField TBooleans_BOOLEAN_10() { + return delegate.TBooleans_BOOLEAN_10(); + } + + public TableField TBooleans_Boolean_TF_LC() { + return delegate.TBooleans_Boolean_TF_LC(); + } + + public TableField TBooleans_Boolean_TF_UC() { + return delegate.TBooleans_Boolean_TF_UC(); + } + + public TableField TBooleans_Boolean_YN_LC() { + return delegate.TBooleans_Boolean_YN_LC(); + } + + public TableField TBooleans_Boolean_YN_UC() { + return delegate.TBooleans_Boolean_YN_UC(); + } + + public TableField TBooleans_Boolean_YES_NO_LC() { + return delegate.TBooleans_Boolean_YES_NO_LC(); + } + + public TableField TBooleans_Boolean_YES_NO_UC() { + return delegate.TBooleans_Boolean_YES_NO_UC(); + } + + public TableField TBooleans_VC() { + return delegate.TBooleans_VC(); + } + + public TableField TBooleans_C() { + return delegate.TBooleans_C(); + } + + public TableField TBooleans_N() { + return delegate.TBooleans_N(); + } + + protected Table TArrays() { + return delegate.TArrays(); + } + + protected TableField TArrays_ID() { + return delegate.TArrays_ID(); + } + + protected TableField TArrays_STRING() { + return delegate.TArrays_STRING(); + } + + protected TableField TArrays_NUMBER() { + return delegate.TArrays_NUMBER(); + } + + protected TableField TArrays_DATE() { + return delegate.TArrays_DATE(); + } + + protected TableField[]> TArrays_UDT() { + return delegate.TArrays_UDT(); + } + + protected TableField> TArrays_STRING_R() { + return delegate.TArrays_STRING_R(); + } + + protected TableField> TArrays_NUMBER_R() { + return delegate.TArrays_NUMBER_R(); + } + + protected TableField> TArrays_NUMBER_LONG_R() { + return delegate.TArrays_NUMBER_LONG_R(); + } + + protected TableField> TArrays_DATE_R() { + return delegate.TArrays_DATE_R(); + } + + protected UpdatableTable TAuthor() { + return delegate.TAuthor(); + } + + protected TableField TAuthor_LAST_NAME() { + return delegate.TAuthor_LAST_NAME(); + } + + protected TableField TAuthor_FIRST_NAME() { + return delegate.TAuthor_FIRST_NAME(); + } + + protected TableField TAuthor_DATE_OF_BIRTH() { + return delegate.TAuthor_DATE_OF_BIRTH(); + } + + protected TableField TAuthor_YEAR_OF_BIRTH() { + return delegate.TAuthor_YEAR_OF_BIRTH(); + } + + protected TableField TAuthor_ID() { + return delegate.TAuthor_ID(); + } + + protected TableField> TAuthor_ADDRESS() { + return delegate.TAuthor_ADDRESS(); + } + + protected Class> cUAddressType() { + return delegate.cUAddressType(); + } + + protected Class> cUStreetType() { + return delegate.cUStreetType(); + } + + protected UpdatableTable TBook() { + return delegate.TBook(); + } + + protected TableField TBook_ID() { + return delegate.TBook_ID(); + } + + protected TableField TBook_AUTHOR_ID() { + return delegate.TBook_AUTHOR_ID(); + } + + protected TableField TBook_TITLE() { + return delegate.TBook_TITLE(); + } + + protected TableField TBook_LANGUAGE_ID() { + return delegate.TBook_LANGUAGE_ID(); + } + + protected TableField TBook_PUBLISHED_IN() { + return delegate.TBook_PUBLISHED_IN(); + } + + protected TableField TBook_CONTENT_TEXT() { + return delegate.TBook_CONTENT_TEXT(); + } + + protected TableField TBook_CONTENT_PDF() { + return delegate.TBook_CONTENT_PDF(); + } + + protected TableField> TBook_STATUS() { + return delegate.TBook_STATUS(); + } + + protected UpdatableTable TBookStore() { + return delegate.TBookStore(); + } + + protected TableField TBookStore_NAME() { + return delegate.TBookStore_NAME(); + } + + protected Table VLibrary() { + return delegate.VLibrary(); + } + + protected Table VAuthor() { + return delegate.VAuthor(); + } + + protected Table VBook() { + return delegate.VBook(); + } + + protected TableField VLibrary_TITLE() { + return delegate.VLibrary_TITLE(); + } + + protected TableField VLibrary_AUTHOR() { + return delegate.VLibrary_AUTHOR(); + } + + protected UpdatableTable TBookToBookStore() { + return delegate.TBookToBookStore(); + } + + protected TableField TBookToBookStore_BOOK_ID() { + return delegate.TBookToBookStore_BOOK_ID(); + } + + protected TableField TBookToBookStore_BOOK_STORE_NAME() { + return delegate.TBookToBookStore_BOOK_STORE_NAME(); + } + + protected TableField TBookToBookStore_STOCK() { + return delegate.TBookToBookStore_STOCK(); + } + + protected UpdatableTable TBookSale() { + return delegate.TBookSale(); + } + + protected TableField TBookSale_ID() { + return delegate.TBookSale_ID(); + } + + protected TableField TBookSale_BOOK_ID() { + return delegate.TBookSale_BOOK_ID(); + } + + protected TableField TBookSale_BOOK_STORE_NAME() { + return delegate.TBookSale_BOOK_STORE_NAME(); + } + + protected TableField TBookSale_SOLD_AT() { + return delegate.TBookSale_SOLD_AT(); + } + + protected TableField TBookSale_SOLD_FOR() { + return delegate.TBookSale_SOLD_FOR(); + } + + protected UpdatableTable TDirectory() { + return delegate.TDirectory(); + } + + protected TableField TDirectory_ID() { + return delegate.TDirectory_ID(); + } + + protected TableField TDirectory_PARENT_ID() { + return delegate.TDirectory_PARENT_ID(); + } + + protected TableField TDirectory_IS_DIRECTORY() { + return delegate.TDirectory_IS_DIRECTORY(); + } + + protected TableField TDirectory_NAME() { + return delegate.TDirectory_NAME(); + } + + protected UpdatableTable TTriggers() { + return delegate.TTriggers(); + } + + protected TableField TTriggers_ID_GENERATED() { + return delegate.TTriggers_ID_GENERATED(); + } + + protected TableField TTriggers_ID() { + return delegate.TTriggers_ID(); + } + + protected TableField TTriggers_COUNTER() { + return delegate.TTriggers_COUNTER(); + } + + protected Table TIdentity() { + return delegate.TIdentity(); + } + + protected TableField TIdentity_ID() { + return delegate.TIdentity_ID(); + } + + protected TableField TIdentity_VAL() { + return delegate.TIdentity_VAL(); + } + + protected UpdatableTable TIdentityPK() { + return delegate.TIdentityPK(); + } + + protected TableField TIdentityPK_ID() { + return delegate.TIdentityPK_ID(); + } + + protected TableField TIdentityPK_VAL() { + return delegate.TIdentityPK_VAL(); + } + + protected Field FAuthorExistsField(String authorName) { + return delegate.FAuthorExistsField(authorName); + } + + protected Field FOneField() { + return delegate.FOneField(); + } + + protected Field FNumberField(Number n) { + return delegate.FNumberField(n); + } + + protected Field FNumberField(Field n) { + return delegate.FNumberField(n); + } + + protected Field F317Field(Number n1, Number n2, Number n3, Number n4) { + return delegate.F317Field(n1, n2, n3, n4); + } + + protected Field F317Field(Field n1, Field n2, + Field n3, Field n4) { + return delegate.F317Field(n1, n2, n3, n4); + } + + protected Field> FGetOneCursorField(Integer[] array) { + return delegate.FGetOneCursorField(array); + } + + protected Field FArrays1Field(Field array) { + return delegate.FArrays1Field(array); + } + + protected Field FArrays2Field(Field array) { + return delegate.FArrays2Field(array); + } + + protected Field FArrays3Field(Field array) { + return delegate.FArrays3Field(array); + } + + protected > Field FArrays1Field_R(Field array) { + return delegate.FArrays1Field_R(array); + } + + protected > Field FArrays2Field_R(Field array) { + return delegate.FArrays2Field_R(array); + } + + protected > Field FArrays3Field_R(Field array) { + return delegate.FArrays3Field_R(array); + } + + protected boolean supportsOUTParameters() { + return delegate.supportsOUTParameters(); + } + + protected boolean supportsReferences() { + return delegate.supportsReferences(); + } + + protected boolean supportsRecursiveQueries() { + return delegate.supportsRecursiveQueries(); + } + + protected Class cRoutines() { + return delegate.cRoutines(); + } + + protected Class cLibrary() { + return delegate.cLibrary(); + } + + protected Class cSequences() { + return delegate.cSequences(); + } + + protected DataType[] getCastableDataTypes() { + return delegate.getCastableDataTypes(); + } + + protected Factory create(Settings settings) { + Factory create = delegate.create(settings); + create.getSettings().getExecuteListeners().add(TestStatisticsListener.class.getName()); + create.getSettings().getExecuteListeners().add(DebugListener.class.getName()); + return create; + } + + protected final Connection getConnection() { + return delegate.getConnection(); + } + + protected final Factory create() { + return delegate.create(); + } + + protected final SQLDialect getDialect() throws Exception { + return delegate.getDialect(); + } + + protected final QueryPartInternal internal(QueryPart q) { + return delegate.internal(q); + } + + @SuppressWarnings("unchecked") + protected Sequence SAuthorID() throws IllegalAccessException, NoSuchFieldException { + return (Sequence) cSequences().getField("S_AUTHOR_ID").get(cSequences()); + } + + @SuppressWarnings("deprecation") + protected final Schema schema() { + return create().getSchemaMapping().map(TAuthor().getSchema()); + } + + protected final Field getField(Table table, String name) { + Field result = table.getField(name); + + if (result == null) { + result = table.getField(name.toUpperCase()); + } + + if (result == null) { + result = table.getField(name.toLowerCase()); + } + + return result; + } + + protected final Table getTable(String name) throws Exception { + Schema schema = TAuthor().getSchema(); + + if (schema == null) { + Class tables = Class.forName("org.jooq.test." + getDialect().getName().toLowerCase() + ".generatedclasses.Tables"); + return (Table) tables.getField(name).get(tables); + } + else { + Table result = schema.getTable(name); + + if (result == null) { + result = schema.getTable(name.toUpperCase()); + } + + if (result == null) { + result = schema.getTable(name.toLowerCase()); + } + + return result; + } + } + + /** + * Reflection helper + */ + @SuppressWarnings("unchecked") + protected R invoke(Class clazz, String methodName, Object... parameters) throws Exception { + return (R) invoke0(clazz, clazz, methodName, parameters); + } + + /** + * Reflection helper + */ + @SuppressWarnings("unchecked") + protected R invoke(Object object, String methodName, Object... parameters) throws Exception { + return (R) invoke0(object.getClass(), object, methodName, parameters); + } + + /** + * Reflection helper + */ + private Object invoke0(Class clazz, Object object, String methodName, Object... parameters) throws Exception { + for (Method method : clazz.getMethods()) { + if (method.getName().equals(methodName)) { + try { + return method.invoke(object, parameters); + } + catch (IllegalArgumentException ignore) { + } + } + } + + // If there was no matching method and we have DUMMY parameters + // Try removing them first. DUMMY parameters are used in SQL Server + if (Arrays.asList(parameters).contains(DUMMY_OUT_INT)) { + List alternative = new ArrayList(Arrays.asList(parameters)); + while (alternative.remove(DUMMY_OUT_INT)); + return invoke0(clazz, object, methodName, alternative.toArray()); + } + + throw new NoSuchMethodException(); + } + + // Dummy parameters for SQL Server + protected static Integer DUMMY_OUT_INT = new Integer(0); +} diff --git a/jOOQ-test/src/org/jooq/test/_/AuthorWithoutAnnotations.java b/jOOQ-test/src/org/jooq/test/_/AuthorWithoutAnnotations.java new file mode 100644 index 00000000000..0ce690389e1 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/_/AuthorWithoutAnnotations.java @@ -0,0 +1,50 @@ +/** + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com + * All rights reserved. + * + * This software is licensed to you under the Apache License, Version 2.0 + * (the "License"); You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * 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 "jOOQ" 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 COPYRIGHT OWNER 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. + */ +package org.jooq.test._; + +import java.util.Date; + +/** + * @author Lukas Eder + */ +public class AuthorWithoutAnnotations { + + public int ID; + public String firstName; + public String lastName; + public Date dateOfBirth; + public Short yearOfBirth; +} diff --git a/jOOQ-test/src/org/jooq/test/_/BookRecord.java b/jOOQ-test/src/org/jooq/test/_/BookRecord.java new file mode 100644 index 00000000000..6db070bf2b4 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/_/BookRecord.java @@ -0,0 +1,53 @@ +/** + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com + * All rights reserved. + * + * This software is licensed to you under the Apache License, Version 2.0 + * (the "License"); You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * 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 "jOOQ" 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 COPYRIGHT OWNER 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. + */ +package org.jooq.test._; + +import org.jooq.impl.CustomRecord; + +/** + * @author Lukas Eder + */ +public class BookRecord extends CustomRecord { + + /** + * Generated UID + */ + private static final long serialVersionUID = 4216070231338313441L; + + protected BookRecord() { + super(BookTable.BOOK); + } +} diff --git a/jOOQ-test/src/org/jooq/test/_/BookTable.java b/jOOQ-test/src/org/jooq/test/_/BookTable.java new file mode 100644 index 00000000000..1b965384cce --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/_/BookTable.java @@ -0,0 +1,68 @@ +/** + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com + * All rights reserved. + * + * This software is licensed to you under the Apache License, Version 2.0 + * (the "License"); You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * 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 "jOOQ" 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 COPYRIGHT OWNER 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. + */ +package org.jooq.test._; + +import org.jooq.TableField; +import org.jooq.impl.CustomTable; +import org.jooq.impl.SQLDataType; + +/** + * @author Lukas Eder + */ +public class BookTable extends CustomTable { + + /** + * Generated UID + */ + private static final long serialVersionUID = -1124714471434439420L; + + public static final BookTable BOOK = new BookTable(); + + public static final TableField FIRST_NAME = createField("FIRST_NAME", SQLDataType.VARCHAR, BOOK); + public static final TableField UNMATCHED = createField("UNMATCHED", SQLDataType.VARCHAR, BOOK); + public static final TableField LAST_NAME = createField("LAST_NAME", SQLDataType.VARCHAR, BOOK); + public static final TableField ID = createField("ID", SQLDataType.SMALLINT, BOOK); + public static final TableField TITLE = createField("TITLE", SQLDataType.VARCHAR, BOOK); + + protected BookTable() { + super(null); + } + + @Override + public Class getRecordType() { + return BookRecord.class; + } +} diff --git a/jOOQ-test/src/org/jooq/test/_/BookWithAnnotations.java b/jOOQ-test/src/org/jooq/test/_/BookWithAnnotations.java new file mode 100644 index 00000000000..3c8e1c4735e --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/_/BookWithAnnotations.java @@ -0,0 +1,119 @@ +/** + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com + * All rights reserved. + * + * This software is licensed to you under the Apache License, Version 2.0 + * (the "License"); You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * 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 "jOOQ" 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 COPYRIGHT OWNER 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. + */ +package org.jooq.test._; + +import javax.persistence.Column; + +/** + * @author Lukas Eder + */ +public class BookWithAnnotations { + + // JPA-annotated members + // --------------------- + @Column(name = "ID") + public Integer id; + + @Column(name = "ID") + public Long id4; + + @Column(name = "ID") + public int id2; + + @Column(name = "TITLE") + public String title; + + @Column(name = "FIRST_NAME") + public String firstName; + + @Column(name = "DATE_OF_BIRTH") + public java.util.Date dateOfBirth; + + // Members without annotations + // --------------------------- + public int id3; + public long id5; + public String firstName2; + public String lastName; + public String lastName2; + + // Methods with annotations + // ------------------------ + @Column(name = "ID") + public void setId(long id) { + id3 = (int) id; + } + + @Column(name = "ID") + public void setId(Long id) { + id5 = (int) (long) id; + } + + @Column(name = "FIRST_NAME") + public void setFirstName(String f) { + firstName2 = f; + } + + @Column(name = "LAST_NAME") + public void setLastName(String l) { + lastName = l; + } + + public void setLAST_NAME(String l) { + lastName2 = l; + } + + @Column(name = "LAST_NAME") + public String getLAST_NAME() { + return lastName2; + } + + @Column(name = "LAST_NAME") + @SuppressWarnings("unused") + public void tooManyParameters(String l, String tooMany) { + throw new AssertionError(); + } + + @Column(name = "LAST_NAME") + public void notEnoughParameters() { + throw new AssertionError(); + } + + @Override + public String toString() { + return "JPABook [id=" + id + ", title=" + title + ", firstName=" + firstName + ", lastName=" + lastName + "]"; + } +} diff --git a/jOOQ-test/src/org/jooq/test/_/BookWithoutAnnotations.java b/jOOQ-test/src/org/jooq/test/_/BookWithoutAnnotations.java new file mode 100644 index 00000000000..86f7f86cc63 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/_/BookWithoutAnnotations.java @@ -0,0 +1,85 @@ +/** + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com + * All rights reserved. + * + * This software is licensed to you under the Apache License, Version 2.0 + * (the "License"); You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * 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 "jOOQ" 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 COPYRIGHT OWNER 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. + */ +package org.jooq.test._; + + +/** + * @author Lukas Eder + */ +public class BookWithoutAnnotations { + + public Integer id; + public int id2; + public int ID; + public String title; + public String firstName; + public String firstName2; + public String lastName; + public String lastName2; + public String LAST_NAME; + public java.util.Date DATE_OF_BIRTH; + public java.sql.Date dateOfBirth; + + public void setId(long id) { + id2 = (int) id; + } + + public void setFirstName(String f) { + firstName2 = f; + } + + public void setLAST_NAME(String l) { + lastName = l; + } + + public void LAST_NAME(String l) { + lastName2 = l; + } + + @SuppressWarnings("unused") + public void setLAST_NAME(String l, String tooManyParameters) { + throw new AssertionError(); + } + + public void setLAST_NAME() { + throw new AssertionError(); + } + + @Override + public String toString() { + return "JPABook [id=" + id + ", title=" + title + ", firstName=" + firstName + ", lastName=" + lastName + "]"; + } +} diff --git a/jOOQ-test/src/org/jooq/test/_/CharWithAnnotations.java b/jOOQ-test/src/org/jooq/test/_/CharWithAnnotations.java new file mode 100644 index 00000000000..4d9ce7ae68c --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/_/CharWithAnnotations.java @@ -0,0 +1,57 @@ +/** + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com + * All rights reserved. + * + * This software is licensed to you under the Apache License, Version 2.0 + * (the "License"); You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * 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 "jOOQ" 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 COPYRIGHT OWNER 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. + */ +package org.jooq.test._; + +import javax.persistence.Column; + +/** + * @author Lukas Eder + */ +public class CharWithAnnotations { + + @Column(name = "LAST_NAME") + public char last1; + + @Column(name = "LAST_NAME") + public Character last2; + + @Column(name = "ID") + public Character id2; + + @Column(name = "ID") + public char id1; + +} diff --git a/jOOQ-test/src/org/jooq/test/_/DatesWithAnnotations.java b/jOOQ-test/src/org/jooq/test/_/DatesWithAnnotations.java new file mode 100644 index 00000000000..cc86b01b975 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/_/DatesWithAnnotations.java @@ -0,0 +1,141 @@ +/** + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com + * All rights reserved. + * + * This software is licensed to you under the Apache License, Version 2.0 + * (the "License"); You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * 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 "jOOQ" 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 COPYRIGHT OWNER 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. + */ +package org.jooq.test._; + +import java.util.Calendar; +import java.util.Date; + +import javax.persistence.Column; +import javax.persistence.Entity; + +/** + * @author Lukas Eder + */ +@Entity +public class DatesWithAnnotations { + + // ------------------------------------------------------------------------- + // Mapping to java.util.Calendar + // ------------------------------------------------------------------------- + + @Column(name = "DATE_OF_BIRTH") + public Calendar cal1; + public Calendar cal2; + public Calendar cal3; + + @Column(name = "DATE_OF_BIRTH") + public void setCal(Calendar calendar) { + cal2 = calendar; + } + + public void setC(Calendar calendar) { + cal3 = calendar; + } + + @Column(name = "DATE_OF_BIRTH") + public Calendar getC() { + return cal3; + } + + // ------------------------------------------------------------------------- + // Mapping to java.util.Date + // ------------------------------------------------------------------------- + + @Column(name = "DATE_OF_BIRTH") + public Date date1; + public Date date2; + public Date date3; + + @Column(name = "DATE_OF_BIRTH") + public void setDate(Date date) { + date2 = date; + } + + public void setD(Date date) { + date3 = date; + } + + @Column(name = "DATE_OF_BIRTH") + public Date getD() { + return date3; + } + + // ------------------------------------------------------------------------- + // Mapping to java.lang.Long + // ------------------------------------------------------------------------- + + @Column(name = "DATE_OF_BIRTH") + public Long long1; + public Long long2; + public Long long3; + + @Column(name = "DATE_OF_BIRTH") + public void setLong(Long l) { + long2 = l; + } + + public void setL(Long l) { + long3 = l; + } + + @Column(name = "DATE_OF_BIRTH") + public Long getL() { + return long3; + } + + // ------------------------------------------------------------------------- + // Mapping to long + // ------------------------------------------------------------------------- + + @Column(name = "DATE_OF_BIRTH") + public long primitiveLong1; + public long primitiveLong2; + public long primitiveLong3; + + @Column(name = "DATE_OF_BIRTH") + public void setPrimitiveLong(long l) { + primitiveLong2 = l; + } + + public void setPL(long l) { + primitiveLong3 = l; + } + + @Column(name = "DATE_OF_BIRTH") + public long getPL() { + return primitiveLong3; + } +} diff --git a/jOOQ-test/src/org/jooq/test/_/FinalWithAnnotations.java b/jOOQ-test/src/org/jooq/test/_/FinalWithAnnotations.java new file mode 100644 index 00000000000..0cc5e81dd5b --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/_/FinalWithAnnotations.java @@ -0,0 +1,48 @@ +/** + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com + * All rights reserved. + * + * This software is licensed to you under the Apache License, Version 2.0 + * (the "License"); You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * 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 "jOOQ" 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 COPYRIGHT OWNER 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. + */ +package org.jooq.test._; + +import javax.persistence.Column; + +/** + * @author Lukas Eder + */ +public class FinalWithAnnotations { + + @Column(name = "ID") + public final int ID = 13; + +} diff --git a/jOOQ-test/src/org/jooq/test/_/FinalWithoutAnnotations.java b/jOOQ-test/src/org/jooq/test/_/FinalWithoutAnnotations.java new file mode 100644 index 00000000000..9c129025cef --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/_/FinalWithoutAnnotations.java @@ -0,0 +1,46 @@ +/** + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com + * All rights reserved. + * + * This software is licensed to you under the Apache License, Version 2.0 + * (the "License"); You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * 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 "jOOQ" 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 COPYRIGHT OWNER 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. + */ +package org.jooq.test._; + + +/** + * @author Lukas Eder + */ +public class FinalWithoutAnnotations { + + public final int ID = 13; + +} diff --git a/jOOQ-test/src/org/jooq/test/_/StaticWithAnnotations.java b/jOOQ-test/src/org/jooq/test/_/StaticWithAnnotations.java new file mode 100644 index 00000000000..c57aae964ed --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/_/StaticWithAnnotations.java @@ -0,0 +1,57 @@ +/** + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com + * All rights reserved. + * + * This software is licensed to you under the Apache License, Version 2.0 + * (the "License"); You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * 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 "jOOQ" 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 COPYRIGHT OWNER 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. + */ +package org.jooq.test._; + +import javax.persistence.Column; + +/** + * @author Lukas Eder + */ +public class StaticWithAnnotations { + + @Column(name = "ID") + public static int ID = 13; + + @Column(name = "ID") + public static int getID() { + return ID; + } + + @Column(name = "ID") + public static void setID(int id) { + ID = id; + } +} diff --git a/jOOQ-test/src/org/jooq/test/_/StaticWithoutAnnotations.java b/jOOQ-test/src/org/jooq/test/_/StaticWithoutAnnotations.java new file mode 100644 index 00000000000..a4f9b403882 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/_/StaticWithoutAnnotations.java @@ -0,0 +1,52 @@ +/** + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com + * All rights reserved. + * + * This software is licensed to you under the Apache License, Version 2.0 + * (the "License"); You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * 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 "jOOQ" 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 COPYRIGHT OWNER 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. + */ +package org.jooq.test._; + +/** + * @author Lukas Eder + */ +public class StaticWithoutAnnotations { + + public static int ID = 13; + + public static int getID() { + return ID; + } + + public static void setID(int id) { + ID = id; + } +} diff --git a/jOOQ-test/src/org/jooq/test/_/TestStatisticsListener.java b/jOOQ-test/src/org/jooq/test/_/TestStatisticsListener.java new file mode 100644 index 00000000000..37d5b873449 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/_/TestStatisticsListener.java @@ -0,0 +1,60 @@ +/** + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com + * All rights reserved. + * + * This software is licensed to you under the Apache License, Version 2.0 + * (the "License"); You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * 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 "jOOQ" 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 COPYRIGHT OWNER 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. + */ +package org.jooq.test._; + +import java.util.HashMap; +import java.util.Map; + +import org.jooq.ExecuteContext; +import org.jooq.ExecuteType; +import org.jooq.impl.DefaultExecuteListener; + +public class TestStatisticsListener extends DefaultExecuteListener { + + public static Map STATISTICS = new HashMap(); + + @Override + public void start(ExecuteContext ctx) { + Integer count = STATISTICS.get(ctx.type()); + + if (count == null) { + count = 0; + } + + STATISTICS.put(ctx.type(), count + 1); + } + +} diff --git a/jOOQ-test/src/org/jooq/test/_/converters/Boolean_10.java b/jOOQ-test/src/org/jooq/test/_/converters/Boolean_10.java new file mode 100644 index 00000000000..4cdd05c6cc8 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/_/converters/Boolean_10.java @@ -0,0 +1,41 @@ +/** + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com + * All rights reserved. + * + * This software is licensed to you under the Apache License, Version 2.0 + * (the "License"); You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * 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 "jOOQ" 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 COPYRIGHT OWNER 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. + */ +package org.jooq.test._.converters; + +public enum Boolean_10 { + ZERO, + ONE +} diff --git a/jOOQ-test/src/org/jooq/test/_/converters/Boolean_10_Converter.java b/jOOQ-test/src/org/jooq/test/_/converters/Boolean_10_Converter.java new file mode 100644 index 00000000000..1266dab9d14 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/_/converters/Boolean_10_Converter.java @@ -0,0 +1,50 @@ +/** + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com + * All rights reserved. + * + * This software is licensed to you under the Apache License, Version 2.0 + * (the "License"); You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * 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 "jOOQ" 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 COPYRIGHT OWNER 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. + */ +package org.jooq.test._.converters; + +import org.jooq.impl.EnumConverter; + +public class Boolean_10_Converter extends EnumConverter{ + + /** + * Generated UID + */ + private static final long serialVersionUID = 4877220039498982300L; + + public Boolean_10_Converter() { + super(Integer.class, Boolean_10.class); + } +} diff --git a/jOOQ-test/src/org/jooq/test/_/converters/Boolean_TF_LC.java b/jOOQ-test/src/org/jooq/test/_/converters/Boolean_TF_LC.java new file mode 100644 index 00000000000..5e968a88531 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/_/converters/Boolean_TF_LC.java @@ -0,0 +1,51 @@ +/** + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com + * All rights reserved. + * + * This software is licensed to you under the Apache License, Version 2.0 + * (the "License"); You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * 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 "jOOQ" 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 COPYRIGHT OWNER 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. + */ +package org.jooq.test._.converters; + +public enum Boolean_TF_LC { + TRUE("true"), + FALSE("false"); + + private final String value; + + private Boolean_TF_LC(String value) { + this.value = value; + } + + public String getValue() { + return value; + } +} diff --git a/jOOQ-test/src/org/jooq/test/_/converters/Boolean_TF_LC_Converter.java b/jOOQ-test/src/org/jooq/test/_/converters/Boolean_TF_LC_Converter.java new file mode 100644 index 00000000000..f19c33c4a82 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/_/converters/Boolean_TF_LC_Converter.java @@ -0,0 +1,55 @@ +/** + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com + * All rights reserved. + * + * This software is licensed to you under the Apache License, Version 2.0 + * (the "License"); You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * 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 "jOOQ" 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 COPYRIGHT OWNER 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. + */ +package org.jooq.test._.converters; + +import org.jooq.impl.EnumConverter; + +public class Boolean_TF_LC_Converter extends EnumConverter{ + + /** + * Generated UID + */ + private static final long serialVersionUID = 4877220039498982300L; + + public Boolean_TF_LC_Converter() { + super(String.class, Boolean_TF_LC.class); + } + + @Override + public String to(Boolean_TF_LC userObject) { + return userObject.getValue(); + } +} diff --git a/jOOQ-test/src/org/jooq/test/_/converters/Boolean_TF_UC.java b/jOOQ-test/src/org/jooq/test/_/converters/Boolean_TF_UC.java new file mode 100644 index 00000000000..fe3365aed78 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/_/converters/Boolean_TF_UC.java @@ -0,0 +1,41 @@ +/** + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com + * All rights reserved. + * + * This software is licensed to you under the Apache License, Version 2.0 + * (the "License"); You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * 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 "jOOQ" 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 COPYRIGHT OWNER 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. + */ +package org.jooq.test._.converters; + +public enum Boolean_TF_UC { + TRUE, + FALSE; +} diff --git a/jOOQ-test/src/org/jooq/test/_/converters/Boolean_TF_UC_Converter.java b/jOOQ-test/src/org/jooq/test/_/converters/Boolean_TF_UC_Converter.java new file mode 100644 index 00000000000..599c07de6fa --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/_/converters/Boolean_TF_UC_Converter.java @@ -0,0 +1,50 @@ +/** + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com + * All rights reserved. + * + * This software is licensed to you under the Apache License, Version 2.0 + * (the "License"); You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * 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 "jOOQ" 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 COPYRIGHT OWNER 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. + */ +package org.jooq.test._.converters; + +import org.jooq.impl.EnumConverter; + +public class Boolean_TF_UC_Converter extends EnumConverter{ + + /** + * Generated UID + */ + private static final long serialVersionUID = 4877220039498982300L; + + public Boolean_TF_UC_Converter() { + super(String.class, Boolean_TF_UC.class); + } +} diff --git a/jOOQ-test/src/org/jooq/test/_/converters/Boolean_YES_NO_LC.java b/jOOQ-test/src/org/jooq/test/_/converters/Boolean_YES_NO_LC.java new file mode 100644 index 00000000000..28ed25b6872 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/_/converters/Boolean_YES_NO_LC.java @@ -0,0 +1,41 @@ +/** + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com + * All rights reserved. + * + * This software is licensed to you under the Apache License, Version 2.0 + * (the "License"); You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * 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 "jOOQ" 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 COPYRIGHT OWNER 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. + */ +package org.jooq.test._.converters; + +public enum Boolean_YES_NO_LC { + yes, + no +} diff --git a/jOOQ-test/src/org/jooq/test/_/converters/Boolean_YES_NO_LC_Converter.java b/jOOQ-test/src/org/jooq/test/_/converters/Boolean_YES_NO_LC_Converter.java new file mode 100644 index 00000000000..c6fb56c0c94 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/_/converters/Boolean_YES_NO_LC_Converter.java @@ -0,0 +1,50 @@ +/** + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com + * All rights reserved. + * + * This software is licensed to you under the Apache License, Version 2.0 + * (the "License"); You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * 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 "jOOQ" 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 COPYRIGHT OWNER 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. + */ +package org.jooq.test._.converters; + +import org.jooq.impl.EnumConverter; + +public class Boolean_YES_NO_LC_Converter extends EnumConverter{ + + /** + * Generated UID + */ + private static final long serialVersionUID = 4877220039498982300L; + + public Boolean_YES_NO_LC_Converter() { + super(String.class, Boolean_YES_NO_LC.class); + } +} diff --git a/jOOQ-test/src/org/jooq/test/_/converters/Boolean_YES_NO_UC.java b/jOOQ-test/src/org/jooq/test/_/converters/Boolean_YES_NO_UC.java new file mode 100644 index 00000000000..af33bf79790 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/_/converters/Boolean_YES_NO_UC.java @@ -0,0 +1,41 @@ +/** + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com + * All rights reserved. + * + * This software is licensed to you under the Apache License, Version 2.0 + * (the "License"); You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * 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 "jOOQ" 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 COPYRIGHT OWNER 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. + */ +package org.jooq.test._.converters; + +public enum Boolean_YES_NO_UC { + YES, + NO +} diff --git a/jOOQ-test/src/org/jooq/test/_/converters/Boolean_YES_NO_UC_Converter.java b/jOOQ-test/src/org/jooq/test/_/converters/Boolean_YES_NO_UC_Converter.java new file mode 100644 index 00000000000..a423236847e --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/_/converters/Boolean_YES_NO_UC_Converter.java @@ -0,0 +1,50 @@ +/** + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com + * All rights reserved. + * + * This software is licensed to you under the Apache License, Version 2.0 + * (the "License"); You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * 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 "jOOQ" 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 COPYRIGHT OWNER 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. + */ +package org.jooq.test._.converters; + +import org.jooq.impl.EnumConverter; + +public class Boolean_YES_NO_UC_Converter extends EnumConverter{ + + /** + * Generated UID + */ + private static final long serialVersionUID = 4877220039498982300L; + + public Boolean_YES_NO_UC_Converter() { + super(String.class, Boolean_YES_NO_UC.class); + } +} diff --git a/jOOQ-test/src/org/jooq/test/_/converters/Boolean_YN_LC.java b/jOOQ-test/src/org/jooq/test/_/converters/Boolean_YN_LC.java new file mode 100644 index 00000000000..e0cf768dda6 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/_/converters/Boolean_YN_LC.java @@ -0,0 +1,41 @@ +/** + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com + * All rights reserved. + * + * This software is licensed to you under the Apache License, Version 2.0 + * (the "License"); You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * 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 "jOOQ" 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 COPYRIGHT OWNER 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. + */ +package org.jooq.test._.converters; + +public enum Boolean_YN_LC { + y, + n +} diff --git a/jOOQ-test/src/org/jooq/test/_/converters/Boolean_YN_LC_Converter.java b/jOOQ-test/src/org/jooq/test/_/converters/Boolean_YN_LC_Converter.java new file mode 100644 index 00000000000..0d5ea165b5a --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/_/converters/Boolean_YN_LC_Converter.java @@ -0,0 +1,50 @@ +/** + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com + * All rights reserved. + * + * This software is licensed to you under the Apache License, Version 2.0 + * (the "License"); You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * 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 "jOOQ" 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 COPYRIGHT OWNER 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. + */ +package org.jooq.test._.converters; + +import org.jooq.impl.EnumConverter; + +public class Boolean_YN_LC_Converter extends EnumConverter{ + + /** + * Generated UID + */ + private static final long serialVersionUID = 4877220039498982300L; + + public Boolean_YN_LC_Converter() { + super(String.class, Boolean_YN_LC.class); + } +} diff --git a/jOOQ-test/src/org/jooq/test/_/converters/Boolean_YN_UC.java b/jOOQ-test/src/org/jooq/test/_/converters/Boolean_YN_UC.java new file mode 100644 index 00000000000..84e4646a12a --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/_/converters/Boolean_YN_UC.java @@ -0,0 +1,41 @@ +/** + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com + * All rights reserved. + * + * This software is licensed to you under the Apache License, Version 2.0 + * (the "License"); You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * 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 "jOOQ" 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 COPYRIGHT OWNER 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. + */ +package org.jooq.test._.converters; + +public enum Boolean_YN_UC { + Y, + N +} diff --git a/jOOQ-test/src/org/jooq/test/_/converters/Boolean_YN_UC_Converter.java b/jOOQ-test/src/org/jooq/test/_/converters/Boolean_YN_UC_Converter.java new file mode 100644 index 00000000000..311671637f5 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/_/converters/Boolean_YN_UC_Converter.java @@ -0,0 +1,50 @@ +/** + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com + * All rights reserved. + * + * This software is licensed to you under the Apache License, Version 2.0 + * (the "License"); You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * 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 "jOOQ" 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 COPYRIGHT OWNER 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. + */ +package org.jooq.test._.converters; + +import org.jooq.impl.EnumConverter; + +public class Boolean_YN_UC_Converter extends EnumConverter{ + + /** + * Generated UID + */ + private static final long serialVersionUID = 4877220039498982300L; + + public Boolean_YN_UC_Converter() { + super(String.class, Boolean_YN_UC.class); + } +} diff --git a/jOOQ-test/src/org/jooq/test/_/converters/CalendarConverter.java b/jOOQ-test/src/org/jooq/test/_/converters/CalendarConverter.java new file mode 100644 index 00000000000..6545e87662f --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/_/converters/CalendarConverter.java @@ -0,0 +1,72 @@ +/** + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com + * All rights reserved. + * + * This software is licensed to you under the Apache License, Version 2.0 + * (the "License"); You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * 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 "jOOQ" 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 COPYRIGHT OWNER 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. + */ +package org.jooq.test._.converters; + +import java.sql.Timestamp; +import java.util.Calendar; +import java.util.GregorianCalendar; + +import org.jooq.Converter; + +public class CalendarConverter implements Converter { + + /** + * Generated UID + */ + private static final long serialVersionUID = -5060861060926377086L; + + @Override + public GregorianCalendar from(Timestamp databaseObject) { + GregorianCalendar calendar = (GregorianCalendar) Calendar.getInstance(); + calendar.setTimeInMillis(databaseObject.getTime()); + return calendar; + } + + @Override + public Timestamp to(GregorianCalendar userObject) { + return new Timestamp(userObject.getTime().getTime()); + } + + @Override + public Class fromType() { + return Timestamp.class; + } + + @Override + public Class toType() { + return GregorianCalendar.class; + } +} diff --git a/jOOQ-test/src/org/jooq/test/_/converters/DateConverter.java b/jOOQ-test/src/org/jooq/test/_/converters/DateConverter.java new file mode 100644 index 00000000000..997e30ca99e --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/_/converters/DateConverter.java @@ -0,0 +1,69 @@ +/** + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com + * All rights reserved. + * + * This software is licensed to you under the Apache License, Version 2.0 + * (the "License"); You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * 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 "jOOQ" 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 COPYRIGHT OWNER 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. + */ +package org.jooq.test._.converters; + +import java.sql.Timestamp; +import java.util.Date; + +import org.jooq.Converter; + +public class DateConverter implements Converter { + + /** + * Generated UID + */ + private static final long serialVersionUID = -5060861060926377086L; + + @Override + public Date from(Timestamp databaseObject) { + return new Date(databaseObject.getTime()); + } + + @Override + public Timestamp to(Date userObject) { + return new Timestamp(userObject.getTime()); + } + + @Override + public Class fromType() { + return Timestamp.class; + } + + @Override + public Class toType() { + return Date.class; + } +} diff --git a/jOOQ-test/src/org/jooq/test/_/converters/OrdinalEnum.java b/jOOQ-test/src/org/jooq/test/_/converters/OrdinalEnum.java new file mode 100644 index 00000000000..01f1ad7c41c --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/_/converters/OrdinalEnum.java @@ -0,0 +1,40 @@ +/** + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com + * All rights reserved. + * + * This software is licensed to you under the Apache License, Version 2.0 + * (the "License"); You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * 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 "jOOQ" 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 COPYRIGHT OWNER 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. + */ +package org.jooq.test._.converters; + +public enum OrdinalEnum { + A, B, C +} diff --git a/jOOQ-test/src/org/jooq/test/_/converters/OrdinalEnum1.java b/jOOQ-test/src/org/jooq/test/_/converters/OrdinalEnum1.java new file mode 100644 index 00000000000..39f20361386 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/_/converters/OrdinalEnum1.java @@ -0,0 +1,52 @@ +/** + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com + * All rights reserved. + * + * This software is licensed to you under the Apache License, Version 2.0 + * (the "License"); You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * 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 "jOOQ" 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 COPYRIGHT OWNER 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. + */ +package org.jooq.test._.converters; + +public enum OrdinalEnum1 { + A(2), + B(4), + C(6); + + private final Integer value; + + private OrdinalEnum1(Integer value) { + this.value = value; + } + + public Integer getValue() { + return value; + } +} diff --git a/jOOQ-test/src/org/jooq/test/_/converters/OrdinalEnum1Converter.java b/jOOQ-test/src/org/jooq/test/_/converters/OrdinalEnum1Converter.java new file mode 100644 index 00000000000..f034648b055 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/_/converters/OrdinalEnum1Converter.java @@ -0,0 +1,55 @@ +/** + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com + * All rights reserved. + * + * This software is licensed to you under the Apache License, Version 2.0 + * (the "License"); You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * 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 "jOOQ" 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 COPYRIGHT OWNER 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. + */ +package org.jooq.test._.converters; + +import org.jooq.impl.EnumConverter; + +public class OrdinalEnum1Converter extends EnumConverter { + + /** + * Generated UID + */ + private static final long serialVersionUID = -4252074829213730476L; + + public OrdinalEnum1Converter() { + super(Integer.class, OrdinalEnum1.class); + } + + @Override + public Integer to(OrdinalEnum1 userObject) { + return userObject.getValue(); + } +} diff --git a/jOOQ-test/src/org/jooq/test/_/converters/OrdinalEnumConverter.java b/jOOQ-test/src/org/jooq/test/_/converters/OrdinalEnumConverter.java new file mode 100644 index 00000000000..f3f4648d1af --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/_/converters/OrdinalEnumConverter.java @@ -0,0 +1,50 @@ +/** + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com + * All rights reserved. + * + * This software is licensed to you under the Apache License, Version 2.0 + * (the "License"); You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * 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 "jOOQ" 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 COPYRIGHT OWNER 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. + */ +package org.jooq.test._.converters; + +import org.jooq.impl.EnumConverter; + +public class OrdinalEnumConverter extends EnumConverter { + + /** + * Generated UID + */ + private static final long serialVersionUID = -4252074829213730476L; + + public OrdinalEnumConverter() { + super(Integer.class, OrdinalEnum.class); + } +} diff --git a/jOOQ-test/src/org/jooq/test/_/converters/StringEnum.java b/jOOQ-test/src/org/jooq/test/_/converters/StringEnum.java new file mode 100644 index 00000000000..1daa1fe835e --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/_/converters/StringEnum.java @@ -0,0 +1,40 @@ +/** + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com + * All rights reserved. + * + * This software is licensed to you under the Apache License, Version 2.0 + * (the "License"); You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * 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 "jOOQ" 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 COPYRIGHT OWNER 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. + */ +package org.jooq.test._.converters; + +public enum StringEnum { + A, B, C +} diff --git a/jOOQ-test/src/org/jooq/test/_/converters/StringEnum1.java b/jOOQ-test/src/org/jooq/test/_/converters/StringEnum1.java new file mode 100644 index 00000000000..f7a14ae34b3 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/_/converters/StringEnum1.java @@ -0,0 +1,52 @@ +/** + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com + * All rights reserved. + * + * This software is licensed to you under the Apache License, Version 2.0 + * (the "License"); You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * 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 "jOOQ" 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 COPYRIGHT OWNER 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. + */ +package org.jooq.test._.converters; + +public enum StringEnum1 { + A("X"), + B("Y"), + C("Z"); + + private final String value; + + private StringEnum1(String value) { + this.value = value; + } + + public String getValue() { + return value; + } +} diff --git a/jOOQ-test/src/org/jooq/test/_/converters/StringEnum1Converter.java b/jOOQ-test/src/org/jooq/test/_/converters/StringEnum1Converter.java new file mode 100644 index 00000000000..c4cdf223577 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/_/converters/StringEnum1Converter.java @@ -0,0 +1,55 @@ +/** + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com + * All rights reserved. + * + * This software is licensed to you under the Apache License, Version 2.0 + * (the "License"); You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * 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 "jOOQ" 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 COPYRIGHT OWNER 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. + */ +package org.jooq.test._.converters; + +import org.jooq.impl.EnumConverter; + +public class StringEnum1Converter extends EnumConverter { + + /** + * Generated UID + */ + private static final long serialVersionUID = -4252074829213730476L; + + public StringEnum1Converter() { + super(String.class, StringEnum1.class); + } + + @Override + public String to(StringEnum1 userObject) { + return userObject.getValue(); + } +} diff --git a/jOOQ-test/src/org/jooq/test/_/converters/StringEnumConverter.java b/jOOQ-test/src/org/jooq/test/_/converters/StringEnumConverter.java new file mode 100644 index 00000000000..ce8e9da776d --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/_/converters/StringEnumConverter.java @@ -0,0 +1,50 @@ +/** + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com + * All rights reserved. + * + * This software is licensed to you under the Apache License, Version 2.0 + * (the "License"); You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * 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 "jOOQ" 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 COPYRIGHT OWNER 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. + */ +package org.jooq.test._.converters; + +import org.jooq.impl.EnumConverter; + +public class StringEnumConverter extends EnumConverter { + + /** + * Generated UID + */ + private static final long serialVersionUID = -4252074829213730476L; + + public StringEnumConverter() { + super(String.class, StringEnum.class); + } +} diff --git a/jOOQ-test/src/org/jooq/test/_/testcases/AggregateWindowFunctionTests.java b/jOOQ-test/src/org/jooq/test/_/testcases/AggregateWindowFunctionTests.java new file mode 100644 index 00000000000..4808b5ceaaf --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/_/testcases/AggregateWindowFunctionTests.java @@ -0,0 +1,803 @@ +/** + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com + * All rights reserved. + * + * This software is licensed to you under the Apache License, Version 2.0 + * (the "License"); You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * 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 "jOOQ" 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 COPYRIGHT OWNER 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. + */ +package org.jooq.test._.testcases; + +import static java.util.Arrays.asList; +import static java.util.Collections.nCopies; +import static junit.framework.Assert.assertEquals; +import static junit.framework.Assert.assertTrue; +import static org.jooq.SQLDialect.DB2; +import static org.jooq.SQLDialect.SYBASE; +import static org.jooq.impl.Factory.avg; +import static org.jooq.impl.Factory.avgDistinct; +import static org.jooq.impl.Factory.count; +import static org.jooq.impl.Factory.countDistinct; +import static org.jooq.impl.Factory.cumeDist; +import static org.jooq.impl.Factory.denseRank; +import static org.jooq.impl.Factory.firstValue; +import static org.jooq.impl.Factory.groupConcat; +import static org.jooq.impl.Factory.lag; +import static org.jooq.impl.Factory.lead; +import static org.jooq.impl.Factory.listAgg; +import static org.jooq.impl.Factory.max; +import static org.jooq.impl.Factory.maxDistinct; +import static org.jooq.impl.Factory.median; +import static org.jooq.impl.Factory.min; +import static org.jooq.impl.Factory.minDistinct; +import static org.jooq.impl.Factory.ntile; +import static org.jooq.impl.Factory.percentRank; +import static org.jooq.impl.Factory.rank; +import static org.jooq.impl.Factory.rowNumber; +import static org.jooq.impl.Factory.stddevPop; +import static org.jooq.impl.Factory.stddevSamp; +import static org.jooq.impl.Factory.sum; +import static org.jooq.impl.Factory.sumDistinct; +import static org.jooq.impl.Factory.val; +import static org.jooq.impl.Factory.varPop; +import static org.jooq.impl.Factory.varSamp; + +import java.math.BigDecimal; + +import org.jooq.Field; +import org.jooq.Record; +import org.jooq.Result; +import org.jooq.SQLDialect; +import org.jooq.TableRecord; +import org.jooq.UpdatableRecord; +import org.jooq.test.BaseTest; +import org.jooq.test.jOOQAbstractTest; + +import org.junit.Test; + +public class AggregateWindowFunctionTests< + A extends UpdatableRecord, + B extends UpdatableRecord, + S extends UpdatableRecord, + B2S extends UpdatableRecord, + BS extends UpdatableRecord, + L extends TableRecord, + X extends TableRecord, + DATE extends UpdatableRecord, + BOOL extends UpdatableRecord, + D extends UpdatableRecord, + T extends UpdatableRecord, + U extends TableRecord, + I extends TableRecord, + IPK extends UpdatableRecord, + T658 extends TableRecord, + T725 extends UpdatableRecord, + T639 extends UpdatableRecord, + T785 extends TableRecord> +extends BaseTest { + + public AggregateWindowFunctionTests(jOOQAbstractTest delegate) { + super(delegate); + } + + @Test + public void testSelectCountQuery() throws Exception { + assertEquals(4, create().selectCount().from(TBook()).fetchOne(0)); + assertEquals(2, create().selectCount().from(TAuthor()).fetchOne(0)); + } + + @Test + public void testAggregateFunctions() throws Exception { + + // Standard aggregate functions, available in all dialects: + // -------------------------------------------------------- + Field median = median(TBook_ID()); + + // Some dialects don't support a median function or a simulation thereof + // Use AVG instead, as in this example the values of MEDIAN and AVG + // are the same + switch (getDialect()) { + case ASE: + case CUBRID: + case DERBY: + case H2: + case INGRES: + case MYSQL: + case SQLITE: + + // TODO [#871] This could be simulated + case SQLSERVER: + case POSTGRES: + case DB2: + median = avg(TBook_ID()); + break; + } + + Result result = create() + .select( + TBook_AUTHOR_ID(), + count(), + count(TBook_ID()), + countDistinct(TBook_AUTHOR_ID()), + sum(TBook_ID()), + avg(TBook_ID()), + min(TBook_ID()), + max(TBook_ID()), + median) + .from(TBook()) + .groupBy(TBook_AUTHOR_ID()) + .orderBy(TBook_AUTHOR_ID()) + .fetch(); + + assertEquals(2, (int) result.getValueAsInteger(0, 1)); + assertEquals(2, (int) result.getValueAsInteger(0, 2)); + assertEquals(1, (int) result.getValueAsInteger(0, 3)); + assertEquals(3d, result.getValueAsDouble(0, 4)); + assertEquals(1, (int) result.getValueAsInteger(0, 6)); + assertEquals(2, (int) result.getValueAsInteger(0, 7)); + + assertEquals(2, (int) result.getValueAsInteger(1, 1)); + assertEquals(2, (int) result.getValueAsInteger(1, 2)); + assertEquals(1, (int) result.getValueAsInteger(1, 3)); + assertEquals(7d, result.getValueAsDouble(1, 4)); + assertEquals(3, (int) result.getValueAsInteger(1, 6)); + assertEquals(4, (int) result.getValueAsInteger(1, 7)); + + // TODO [#868] Derby, HSQLDB, and SQL Server perform rounding/truncation + // This may need to be corrected by jOOQ + assertTrue(asList(1.0, 1.5, 2.0).contains(result.getValueAsDouble(0, 5))); + assertTrue(asList(1.0, 1.5, 2.0).contains(result.getValueAsDouble(0, 8))); + assertTrue(asList(3.0, 3.5, 4.0).contains(result.getValueAsDouble(1, 5))); + assertTrue(asList(3.0, 3.5, 4.0).contains(result.getValueAsDouble(1, 8))); + + // [#1042] DISTINCT keyword + // ------------------------ + + // DB2 doesn't support multiple DISTINCT keywords in the same query... + int distinct1 = create().select(countDistinct(TBook_AUTHOR_ID())).from(TBook()).fetchOne(0, Integer.class); + int distinct2 = create().select(minDistinct(TBook_AUTHOR_ID())).from(TBook()).fetchOne(0, Integer.class); + int distinct3 = create().select(maxDistinct(TBook_AUTHOR_ID())).from(TBook()).fetchOne(0, Integer.class); + int distinct4 = create().select(sumDistinct(TBook_AUTHOR_ID())).from(TBook()).fetchOne(0, Integer.class); + double distinct5 = create().select(avgDistinct(TBook_AUTHOR_ID())).from(TBook()).fetchOne(0, Double.class); + + assertEquals(2, distinct1); + assertEquals(1, distinct2); + assertEquals(2, distinct3); + assertEquals(3, distinct4); + // TODO [#868] Derby, HSQLDB, and SQL Server perform rounding/truncation + // This may need to be corrected by jOOQ + assertTrue(asList(1.0, 1.5, 2.0).contains(distinct5)); + + // Statistical aggregate functions, available in some dialects: + // ------------------------------------------------------------ + switch (getDialect()) { + case DERBY: + case SQLITE: + log.info("SKIPPING", "Statistical aggregate functions"); + break; + + default: { + result = create() + .select( + TBook_AUTHOR_ID(), + stddevPop(TBook_ID()), + stddevSamp(TBook_ID()), + varPop(TBook_ID()), + varSamp(TBook_ID())) + .from(TBook()) + .groupBy(TBook_AUTHOR_ID()) + .orderBy(TBook_AUTHOR_ID()) + .fetch(); + + assertEquals(0.5, result.getValueAsDouble(0, 1)); + assertEquals(0.25, result.getValueAsDouble(0, 3)); + assertEquals(0.5, result.getValueAsDouble(1, 1)); + assertEquals(0.25, result.getValueAsDouble(1, 3)); + + // DB2 only knows STDDEV_POP / VAR_POP + if (getDialect() != SQLDialect.DB2) { + assertEquals("0.707", result.getValueAsString(0, 2).substring(0, 5)); + assertEquals(0.5, result.getValueAsDouble(0, 4)); + assertEquals("0.707", result.getValueAsString(1, 2).substring(0, 5)); + assertEquals(0.5, result.getValueAsDouble(1, 4)); + } + } + } + + // [#873] Duplicate functions + // -------------------------- + result = + create().select( + TBook_AUTHOR_ID(), + max(TBook_ID()), + max(TBook_ID())) + .from(TBook()) + .groupBy(TBook_AUTHOR_ID()) + .orderBy(TBook_AUTHOR_ID()) + .fetch(); + + assertEquals(2, (int) result.getValueAsInteger(0, 1)); + assertEquals(2, (int) result.getValueAsInteger(0, 2)); + assertEquals(4, (int) result.getValueAsInteger(1, 1)); + assertEquals(4, (int) result.getValueAsInteger(1, 2)); + } + + @Test + public void testWindowFunctions() throws Exception { + switch (getDialect()) { + case ASE: + case CUBRID: + case DERBY: + case H2: + case HSQLDB: + case INGRES: + case MYSQL: + case SQLITE: + log.info("SKIPPING", "Window function tests"); + return; + } + + int column = 0; + + // ROW_NUMBER() + Result result = + create().select(TBook_ID(), + rowNumber().over() + .partitionByOne() + .orderBy(TBook_ID().desc()), + rowNumber().over() + .partitionBy(TBook_AUTHOR_ID()) + .orderBy(TBook_ID().desc())) + .from(TBook()) + .orderBy(TBook_ID().asc()) + .fetch(); + + // Ordered ROW_NUMBER() + column++; + assertEquals(Integer.valueOf(4), result.getValue(0, column)); + assertEquals(Integer.valueOf(3), result.getValue(1, column)); + assertEquals(Integer.valueOf(2), result.getValue(2, column)); + assertEquals(Integer.valueOf(1), result.getValue(3, column)); + + // Partitioned and ordered ROW_NUMBER() + column++; + assertEquals(Integer.valueOf(2), result.getValue(0, column)); + assertEquals(Integer.valueOf(1), result.getValue(1, column)); + assertEquals(Integer.valueOf(2), result.getValue(2, column)); + assertEquals(Integer.valueOf(1), result.getValue(3, column)); + + column = 0; + + // COUNT() + result = + create().select(TBook_ID(), + count().over(), + count().over().partitionBy(TBook_AUTHOR_ID())) + .from(TBook()) + .orderBy(TBook_ID().asc()) + .fetch(); + + // Partitioned and ordered COUNT() + column++; + assertEquals(Integer.valueOf(4), result.getValue(0, column)); + assertEquals(Integer.valueOf(4), result.getValue(1, column)); + assertEquals(Integer.valueOf(4), result.getValue(2, column)); + assertEquals(Integer.valueOf(4), result.getValue(3, column)); + + column++; + assertEquals(Integer.valueOf(2), result.getValue(0, column)); + assertEquals(Integer.valueOf(2), result.getValue(1, column)); + assertEquals(Integer.valueOf(2), result.getValue(2, column)); + assertEquals(Integer.valueOf(2), result.getValue(3, column)); + + column = 0; + + // RANK(), DENSE_RANK() + result = + create().select(TBook_ID(), + rank().over().orderBy(TBook_ID().desc()), + rank().over().partitionBy(TBook_AUTHOR_ID()) + .orderBy(TBook_ID().desc()), + denseRank().over().orderBy(TBook_ID().desc()), + denseRank().over().partitionBy(TBook_AUTHOR_ID()) + .orderBy(TBook_ID().desc())) + .from(TBook()) + .orderBy(TBook_ID().asc()) + .fetch(); + + // Ordered RANK() + column++; + assertEquals(Integer.valueOf(4), result.getValue(0, column)); + assertEquals(Integer.valueOf(3), result.getValue(1, column)); + assertEquals(Integer.valueOf(2), result.getValue(2, column)); + assertEquals(Integer.valueOf(1), result.getValue(3, column)); + + // Partitioned and ordered RANK() + column++; + assertEquals(Integer.valueOf(2), result.getValue(0, column)); + assertEquals(Integer.valueOf(1), result.getValue(1, column)); + assertEquals(Integer.valueOf(2), result.getValue(2, column)); + assertEquals(Integer.valueOf(1), result.getValue(3, column)); + + // Ordered DENSE_RANK() + column++; + assertEquals(Integer.valueOf(4), result.getValue(0, column)); + assertEquals(Integer.valueOf(3), result.getValue(1, column)); + assertEquals(Integer.valueOf(2), result.getValue(2, column)); + assertEquals(Integer.valueOf(1), result.getValue(3, column)); + + // Partitioned and ordered DENSE_RANK() + column++; + assertEquals(Integer.valueOf(2), result.getValue(0, column)); + assertEquals(Integer.valueOf(1), result.getValue(1, column)); + assertEquals(Integer.valueOf(2), result.getValue(2, column)); + assertEquals(Integer.valueOf(1), result.getValue(3, column)); + + switch (getDialect()) { + case DB2: + case SQLSERVER: + log.info("SKIPPING", "PERCENT_RANK() and CUME_DIST() window function tests"); + break; + + default: { + column = 0; + + // PERCENT_RANK() and CUME_DIST() + result = + create().select(TBook_ID(), + percentRank().over().orderBy(TBook_ID().desc()), + percentRank().over().partitionBy(TBook_AUTHOR_ID()) + .orderBy(TBook_ID().desc()), + cumeDist().over().orderBy(TBook_ID().desc()), + cumeDist().over().partitionBy(TBook_AUTHOR_ID()) + .orderBy(TBook_ID().desc())) + .from(TBook()) + .orderBy(TBook_ID().asc()) + .fetch(); + + // Ordered PERCENT_RANK() + column++; + assertEquals("1", result.getValueAsString(0, column)); + assertEquals("0.6", result.getValueAsString(1, column).substring(0, 3)); + assertEquals("0.3", result.getValueAsString(2, column).substring(0, 3)); + assertEquals("0", result.getValueAsString(3, column)); + + // Partitioned and ordered PERCENT_RANK() + column++; + assertEquals("1", result.getValueAsString(0, column)); + assertEquals("0", result.getValueAsString(1, column)); + assertEquals("1", result.getValueAsString(2, column)); + assertEquals("0", result.getValueAsString(3, column)); + + // Ordered CUME_DIST() + column++; + assertEquals("1", result.getValueAsString(0, column)); + assertEquals("0.75", result.getValueAsString(1, column)); + assertEquals("0.5", result.getValueAsString(2, column)); + assertEquals("0.25", result.getValueAsString(3, column)); + + // Partitioned and ordered CUME_DIST() + column++; + assertEquals("1", result.getValueAsString(0, column)); + assertEquals("0.5", result.getValueAsString(1, column)); + assertEquals("1", result.getValueAsString(2, column)); + assertEquals("0.5", result.getValueAsString(3, column)); + + break; + } + } + + column = 0; + + // MAX() + result = + create().select(TBook_ID(), + max(TBook_ID()).over() + .partitionByOne(), + max(TBook_ID()).over() + .partitionBy(TBook_AUTHOR_ID())) + .from(TBook()) + .orderBy(TBook_ID().asc()) + .fetch(); + + // Overall MAX() + column++; + assertEquals(Integer.valueOf(4), result.getValue(0, column)); + assertEquals(Integer.valueOf(4), result.getValue(1, column)); + assertEquals(Integer.valueOf(4), result.getValue(2, column)); + assertEquals(Integer.valueOf(4), result.getValue(3, column)); + + // Partitioned MAX() + column++; + assertEquals(Integer.valueOf(2), result.getValue(0, column)); + assertEquals(Integer.valueOf(2), result.getValue(1, column)); + assertEquals(Integer.valueOf(4), result.getValue(2, column)); + assertEquals(Integer.valueOf(4), result.getValue(3, column)); + + column = 0; + + // STDDEV_POP(), STDDEV_SAMP(), VAR_POP(), VAR_SAMP() + result = + create().select(TBook_ID(), + stddevPop(TBook_ID()).over().partitionByOne(), + stddevSamp(TBook_ID()).over().partitionByOne(), + varPop(TBook_ID()).over().partitionByOne(), + varSamp(TBook_ID()).over().partitionByOne(), + + stddevPop(TBook_ID()).over().partitionBy(TBook_AUTHOR_ID()), + stddevSamp(TBook_ID()).over().partitionBy(TBook_AUTHOR_ID()), + varPop(TBook_ID()).over().partitionBy(TBook_AUTHOR_ID()), + varSamp(TBook_ID()).over().partitionBy(TBook_AUTHOR_ID())) + .from(TBook()) + .orderBy(TBook_ID().asc()) + .fetch(); + + // Overall STDDEV_POP(), STDDEV_SAMP(), VAR_POP(), VAR_SAMP() + assertEquals("1.118", result.getValueAsString(0, 1).substring(0, 5)); + assertEquals(1.25, result.getValueAsDouble(0, 3)); + + // Partitioned STDDEV_POP(), STDDEV_SAMP(), VAR_POP(), VAR_SAMP() + assertEquals(0.5, result.getValueAsDouble(0, 5)); + assertEquals(0.25, result.getValueAsDouble(0, 7)); + + // DB2 only knows STDDEV_POP / VAR_POP + if (getDialect() != SQLDialect.DB2) { + assertEquals("1.290", result.getValueAsString(0, 2).substring(0, 5)); + assertEquals("1.666", result.getValueAsString(0, 4).substring(0, 5)); + assertEquals("0.707", result.getValueAsString(0, 6).substring(0, 5)); + assertEquals(0.5, result.getValueAsDouble(0, 8)); + } + + // NTILE() + if (asList(SYBASE, DB2).contains(getDialect())) { + log.info("SKIPPING", "NTILE tests"); + } + else { + result = + create().select(TBook_ID(), + ntile(1).over().orderBy(TBook_ID()), + ntile(1).over().partitionBy(TBook_AUTHOR_ID()).orderBy(TBook_ID()), + ntile(2).over().orderBy(TBook_ID()), + ntile(2).over().partitionBy(TBook_AUTHOR_ID()).orderBy(TBook_ID())) + .from(TBook()) + .orderBy(TBook_ID().asc()) + .fetch(); + + assertEquals(BOOK_IDS, result.getValues(0)); + assertEquals(nCopies(4, 1), result.getValues(1)); + assertEquals(nCopies(4, 1), result.getValues(2)); + assertEquals(asList(1, 1, 2, 2), result.getValues(3)); + assertEquals(asList(1, 2, 1, 2), result.getValues(4)); + } + + column = 0; + if (getDialect() == SQLDialect.SQLSERVER) { + log.info("SKIPPING", "ROWS UNBOUNDED PRECEDING and similar tests"); + return; + } + + // SUM() + result = + create().select(TBook_ID(), + sum(TBook_ID()).over().partitionByOne(), + sum(TBook_ID()).over().partitionBy(TBook_AUTHOR_ID()), + sum(TBook_ID()).over().orderBy(TBook_ID().asc()) + .rowsBetweenUnboundedPreceding() + .andPreceding(1)) + .from(TBook()) + .orderBy(TBook_ID().asc()) + .fetch(); + + // Overall SUM() + column++; + assertEquals(new BigDecimal("10"), result.getValue(0, column)); + assertEquals(new BigDecimal("10"), result.getValue(1, column)); + assertEquals(new BigDecimal("10"), result.getValue(2, column)); + assertEquals(new BigDecimal("10"), result.getValue(3, column)); + + // Partitioned SUM() + column++; + assertEquals(new BigDecimal("3"), result.getValue(0, column)); + assertEquals(new BigDecimal("3"), result.getValue(1, column)); + assertEquals(new BigDecimal("7"), result.getValue(2, column)); + assertEquals(new BigDecimal("7"), result.getValue(3, column)); + + // Ordered SUM() with ROWS + column++; + assertEquals(null, result.getValue(0, column)); + assertEquals(new BigDecimal("1"), result.getValue(1, column)); + assertEquals(new BigDecimal("3"), result.getValue(2, column)); + assertEquals(new BigDecimal("6"), result.getValue(3, column)); + + column = 0; + + // FIRST_VALUE() + result = + create().select(TBook_ID(), + firstValue(TBook_ID()).over() + .partitionBy(TBook_AUTHOR_ID()) + .orderBy(TBook_PUBLISHED_IN().asc()) + .rowsBetweenUnboundedPreceding() + .andUnboundedFollowing()) + .from(TBook()) + .orderBy(TBook_ID().asc()) + .fetch(); + + // Partitioned and ordered FIRST_VALUE() with ROWS + column++; + assertEquals(Integer.valueOf(2), result.getValue(0, column)); + assertEquals(Integer.valueOf(2), result.getValue(1, column)); + assertEquals(Integer.valueOf(3), result.getValue(2, column)); + assertEquals(Integer.valueOf(3), result.getValue(3, column)); + + switch (getDialect()) { + case POSTGRES: + log.info("SKIPPING", "FIRST_VALUE(... IGNORE NULLS) window function test"); + break; + + default: { + column = 0; + + // FIRST_VALUE(... IGNORE NULLS) + result = create().select(TBook_ID(), + firstValue(TBook_ID()).ignoreNulls() + .over() + .partitionBy(TBook_AUTHOR_ID()) + .orderBy(TBook_PUBLISHED_IN().asc()) + .rowsBetweenUnboundedPreceding() + .andUnboundedFollowing()) + .from(TBook()) + .orderBy(TBook_ID().asc()) + .fetch(); + + // Partitioned and ordered FIRST_VALUE(... IGNORE NULLS) with ROWS + column++; + assertEquals(Integer.valueOf(2), result.getValue(0, column)); + assertEquals(Integer.valueOf(2), result.getValue(1, column)); + assertEquals(Integer.valueOf(3), result.getValue(2, column)); + assertEquals(Integer.valueOf(3), result.getValue(3, column)); + + break; + } + } + + switch (getDialect()) { + case SYBASE: + log.info("SKIPPING", "LEAD/LAG tests"); + break; + + default: { + column = 0; + + // LEAD() and LAG() + result = + create().select(TBook_ID(), + lead(TBook_ID()).over() + .partitionByOne() + .orderBy(TBook_ID().asc()), + lead(TBook_ID()).over() + .partitionBy(TBook_AUTHOR_ID()) + .orderBy(TBook_ID().asc()), + lead(TBook_ID(), 2).over() + .partitionByOne() + .orderBy(TBook_ID().asc()), + lead(TBook_ID(), 2).over() + .partitionBy(TBook_AUTHOR_ID()) + .orderBy(TBook_ID().asc()), + lead(TBook_ID(), 2, 55).over() + .partitionByOne() + .orderBy(TBook_ID().asc()), + lead(TBook_ID(), 2, 55).over() + .partitionBy(TBook_AUTHOR_ID()) + .orderBy(TBook_ID().asc()), + + lag(TBook_ID()).over() + .partitionByOne() + .orderBy(TBook_ID().asc()), + lag(TBook_ID()).over() + .partitionBy(TBook_AUTHOR_ID()) + .orderBy(TBook_ID().asc()), + lag(TBook_ID(), 2).over() + .partitionByOne() + .orderBy(TBook_ID().asc()), + lag(TBook_ID(), 2).over() + .partitionBy(TBook_AUTHOR_ID()) + .orderBy(TBook_ID().asc()), + lag(TBook_ID(), 2, val(55)).over() + .partitionByOne() + .orderBy(TBook_ID().asc()), + lag(TBook_ID(), 2, val(55)).over() + .partitionBy(TBook_AUTHOR_ID()) + .orderBy(TBook_ID().asc())) + .from(TBook()) + .orderBy(TBook_ID().asc()) + .fetch(); + + // Overall LEAD() + column++; + assertEquals(2, result.getValue(0, column)); + assertEquals(3, result.getValue(1, column)); + assertEquals(4, result.getValue(2, column)); + assertEquals(null, result.getValue(3, column)); + + // Partitioned LEAD() + column++; + assertEquals(2, result.getValue(0, column)); + assertEquals(null, result.getValue(1, column)); + assertEquals(4, result.getValue(2, column)); + assertEquals(null, result.getValue(3, column)); + + // Overall LEAD(2) + column++; + assertEquals(3, result.getValue(0, column)); + assertEquals(4, result.getValue(1, column)); + assertEquals(null, result.getValue(2, column)); + assertEquals(null, result.getValue(3, column)); + + // Partitioned LEAD(2) + column++; + assertEquals(null, result.getValue(0, column)); + assertEquals(null, result.getValue(1, column)); + assertEquals(null, result.getValue(2, column)); + assertEquals(null, result.getValue(3, column)); + + // Overall LEAD(2, 55) + column++; + assertEquals(3, result.getValue(0, column)); + assertEquals(4, result.getValue(1, column)); + assertEquals(55, result.getValue(2, column)); + assertEquals(55, result.getValue(3, column)); + + // Partitioned LEAD(2, 55) + column++; + assertEquals(55, result.getValue(0, column)); + assertEquals(55, result.getValue(1, column)); + assertEquals(55, result.getValue(2, column)); + assertEquals(55, result.getValue(3, column)); + + + // Overall LAG() + column++; + assertEquals(null, result.getValue(0, column)); + assertEquals(1, result.getValue(1, column)); + assertEquals(2, result.getValue(2, column)); + assertEquals(3, result.getValue(3, column)); + + // Partitioned LAG() + column++; + assertEquals(null, result.getValue(0, column)); + assertEquals(1, result.getValue(1, column)); + assertEquals(null, result.getValue(2, column)); + assertEquals(3, result.getValue(3, column)); + + // Overall LAG(2) + column++; + assertEquals(null, result.getValue(0, column)); + assertEquals(null, result.getValue(1, column)); + assertEquals(1, result.getValue(2, column)); + assertEquals(2, result.getValue(3, column)); + + // Partitioned LAG(2) + column++; + assertEquals(null, result.getValue(0, column)); + assertEquals(null, result.getValue(1, column)); + assertEquals(null, result.getValue(2, column)); + assertEquals(null, result.getValue(3, column)); + + // Overall LAG(2, 55) + column++; + assertEquals(55, result.getValue(0, column)); + assertEquals(55, result.getValue(1, column)); + assertEquals(1, result.getValue(2, column)); + assertEquals(2, result.getValue(3, column)); + + // Partitioned LAG(2, 55) + column++; + assertEquals(55, result.getValue(0, column)); + assertEquals(55, result.getValue(1, column)); + assertEquals(55, result.getValue(2, column)); + assertEquals(55, result.getValue(3, column)); + + break; + } + } + } + + @Test + public void testListAgg() throws Exception { + switch (getDialect()) { + case ASE: + case DERBY: + case INGRES: + case SQLITE: + case SQLSERVER: + log.info("SKIPPING", "LISTAGG tests"); + return; + } + + Result result1 = create().select( + TAuthor_FIRST_NAME(), + TAuthor_LAST_NAME(), + listAgg(TBook_ID(), ", ") + .withinGroupOrderBy(TBook_ID().desc()) + .as("books1"), + groupConcat(TBook_ID()) + .orderBy(TBook_ID().desc()) + .separator(", ") + .as("books2")) + .from(TAuthor()) + .join(TBook()).on(TAuthor_ID().equal(TBook_AUTHOR_ID())) + .groupBy( + TAuthor_ID(), + TAuthor_FIRST_NAME(), + TAuthor_LAST_NAME()) + .orderBy(TAuthor_ID()) + .fetch(); + + assertEquals(2, result1.size()); + assertEquals(AUTHOR_FIRST_NAMES, result1.getValues(TAuthor_FIRST_NAME())); + assertEquals(AUTHOR_LAST_NAMES, result1.getValues(TAuthor_LAST_NAME())); + assertEquals("2, 1", result1.getValue(0, "books1")); + assertEquals("2, 1", result1.getValue(0, "books2")); + assertEquals("4, 3", result1.getValue(1, "books1")); + assertEquals("4, 3", result1.getValue(1, "books2")); + + switch (getDialect()) { + case CUBRID: + case DB2: + case H2: + case HSQLDB: + case MYSQL: + case POSTGRES: + case SYBASE: + log.info("SKIPPING", "LISTAGG window function tests"); + return; + } + + Result result2 = create().select( + TAuthor_FIRST_NAME(), + TAuthor_LAST_NAME(), + listAgg(TBook_TITLE()) + .withinGroupOrderBy(TBook_ID().asc()) + .over().partitionBy(TAuthor_ID())) + .from(TAuthor()) + .join(TBook()).on(TAuthor_ID().equal(TBook_AUTHOR_ID())) + .orderBy(TBook_ID()) + .fetch(); + + assertEquals(4, result2.size()); + assertEquals(BOOK_FIRST_NAMES, result2.getValues(TAuthor_FIRST_NAME())); + assertEquals(BOOK_LAST_NAMES, result2.getValues(TAuthor_LAST_NAME())); + assertEquals("1984Animal Farm", result2.getValue(0, 2)); + assertEquals("1984Animal Farm", result2.getValue(1, 2)); + assertEquals("O AlquimistaBrida", result2.getValue(2, 2)); + assertEquals("O AlquimistaBrida", result2.getValue(3, 2)); + } +} diff --git a/jOOQ-test/src/org/jooq/test/_/testcases/CRUDTests.java b/jOOQ-test/src/org/jooq/test/_/testcases/CRUDTests.java new file mode 100644 index 00000000000..d2863f3fa54 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/_/testcases/CRUDTests.java @@ -0,0 +1,576 @@ +/** + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com + * All rights reserved. + * + * This software is licensed to you under the Apache License, Version 2.0 + * (the "License"); You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * 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 "jOOQ" 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 COPYRIGHT OWNER 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. + */ +package org.jooq.test._.testcases; + +import static junit.framework.Assert.assertEquals; +import static junit.framework.Assert.assertNull; +import static junit.framework.Assert.fail; +import static org.jooq.SQLDialect.SQLITE; +import static org.jooq.impl.Factory.count; +import static org.jooq.impl.Factory.table; + +import java.sql.Date; +import java.util.ArrayList; +import java.util.Arrays; +import java.util.HashMap; +import java.util.List; +import java.util.Map; +import java.util.Set; +import java.util.TreeSet; + +import org.jooq.Field; +import org.jooq.InsertQuery; +import org.jooq.Record; +import org.jooq.SQLDialect; +import org.jooq.StoreQuery; +import org.jooq.Table; +import org.jooq.TableRecord; +import org.jooq.UDTRecord; +import org.jooq.UpdatableRecord; +import org.jooq.exception.DataAccessException; +import org.jooq.exception.InvalidResultException; +import org.jooq.test.BaseTest; +import org.jooq.test.jOOQAbstractTest; + +import org.junit.Test; + +public class CRUDTests< + A extends UpdatableRecord, + B extends UpdatableRecord, + S extends UpdatableRecord, + B2S extends UpdatableRecord, + BS extends UpdatableRecord, + L extends TableRecord, + X extends TableRecord, + DATE extends UpdatableRecord, + BOOL extends UpdatableRecord, + D extends UpdatableRecord, + T extends UpdatableRecord, + U extends TableRecord, + I extends TableRecord, + IPK extends UpdatableRecord, + T658 extends TableRecord, + T725 extends UpdatableRecord, + T639 extends UpdatableRecord, + T785 extends TableRecord> +extends BaseTest { + + public CRUDTests(jOOQAbstractTest delegate) { + super(delegate); + } + + @Test + public void testInsertUpdateDelete() throws Exception { + jOOQAbstractTest.reset = false; + + long timeIn = 0; + long timeOut = -3600000; + + InsertQuery i = create().insertQuery(TAuthor()); + i.addValue(TAuthor_ID(), 100); + i.addValue(TAuthor_FIRST_NAME(), "Hermann"); + i.addValue(TAuthor_LAST_NAME(), "Hesse"); + i.addValue(TAuthor_DATE_OF_BIRTH(), new Date(timeIn)); + i.addValue(TAuthor_YEAR_OF_BIRTH(), 2010); + + // Check insertion of UDTs and Enums if applicable + if (TAuthor_ADDRESS() != null) { + addAddressValue(i, TAuthor_ADDRESS()); + } + + assertEquals(1, i.execute()); + + A author = create().fetchOne(TAuthor(), TAuthor_FIRST_NAME().equal("Hermann")); + assertEquals("Hermann", author.getValue(TAuthor_FIRST_NAME())); + assertEquals("Hesse", author.getValue(TAuthor_LAST_NAME())); + + // [#1009] Somewhere on the way to the database and back, the CET time + // zone is added, that's why there is a one-hour shift (except for SQLite) + if (getDialect() != SQLITE) + assertEquals(new Date(timeOut), author.getValue(TAuthor_DATE_OF_BIRTH())); + + Map, String> map = new HashMap, String>(); + map.put(TAuthor_FIRST_NAME(), "Hermie"); + + assertEquals(1, create() + .update(TAuthor()) + .set(map) + .where(TAuthor_ID().equal(100)) + .execute()); + + author = create().fetchOne(TAuthor(), TAuthor_FIRST_NAME().equal("Hermie")); + assertEquals("Hermie", author.getValue(TAuthor_FIRST_NAME())); + assertEquals("Hesse", author.getValue(TAuthor_LAST_NAME())); + + if (TAuthor_ADDRESS() != null) { + UDTRecord address = author.getValue(TAuthor_ADDRESS()); + Object street1 = invoke(address, "getStreet"); + Object street2 = invoke(street1, "getStreet"); + assertEquals("Bahnhofstrasse", street2); + } + + create().delete(TAuthor()).where(TAuthor_ID().equal(100)).execute(); + assertEquals(null, create().fetchOne(TAuthor(), TAuthor_FIRST_NAME().equal("Hermie"))); + } + + // Generic type safety... + private final > void addAddressValue(StoreQuery q, Field field) throws Exception { + Class addressType = field.getType(); + Class countryType = addressType.getMethod("getCountry").getReturnType(); + Class streetType = addressType.getMethod("getStreet").getReturnType(); + + Object country = null; + try { + countryType.getMethod("valueOf", String.class).invoke(countryType, "Germany"); + } + catch (NoSuchMethodException e) { + country = "Germany"; + } + + Object street = streetType.newInstance(); + Z address = addressType.newInstance(); + + streetType.getMethod("setStreet", String.class).invoke(street, "Bahnhofstrasse"); + streetType.getMethod("setNo", String.class).invoke(street, "1"); + + addressType.getMethod("setCountry", countryType).invoke(address, country); + addressType.getMethod("setCity", String.class).invoke(address, "Calw"); + addressType.getMethod("setStreet", streetType).invoke(address, street); + + q.addValue(field, address); + } + + @Test + public void testManager() throws Exception { + jOOQAbstractTest.reset = false; + + List select = create().fetch(TAuthor()); + assertEquals(2, select.size()); + + select = create().fetch(TAuthor(), TAuthor_FIRST_NAME().equal("Paulo")); + assertEquals(1, select.size()); + assertEquals("Paulo", select.get(0).getValue(TAuthor_FIRST_NAME())); + + try { + create().fetchOne(TAuthor()); + fail(); + } + catch (InvalidResultException expected) {} + + A selectOne = create().fetchOne(TAuthor(), TAuthor_FIRST_NAME().equal("Paulo")); + assertEquals("Paulo", selectOne.getValue(TAuthor_FIRST_NAME())); + + // Some CRUD operations + A author = create().newRecord(TAuthor()); + author.setValue(TAuthor_ID(), 15); + author.setValue(TAuthor_LAST_NAME(), "Kästner"); + + assertEquals(1, create().executeInsert(TAuthor(), author)); + author.refresh(); + assertEquals(Integer.valueOf(15), author.getValue(TAuthor_ID())); + assertEquals("Kästner", author.getValue(TAuthor_LAST_NAME())); + + assertEquals(0, create().executeUpdate(TAuthor(), author, TAuthor_ID().equal(15))); + author.setValue(TAuthor_FIRST_NAME(), "Erich"); + assertEquals(1, create().executeUpdate(TAuthor(), author, TAuthor_ID().equal(15))); + author = create().fetchOne(TAuthor(), TAuthor_FIRST_NAME().equal("Erich")); + assertEquals(Integer.valueOf(15), author.getValue(TAuthor_ID())); + assertEquals("Erich", author.getValue(TAuthor_FIRST_NAME())); + assertEquals("Kästner", author.getValue(TAuthor_LAST_NAME())); + + create().executeDelete(TAuthor(), TAuthor_LAST_NAME().equal("Kästner")); + assertEquals(null, create().fetchOne(TAuthor(), TAuthor_FIRST_NAME().equal("Erich"))); + } + + @Test + public void testRelations() throws Exception { + if (getDialect() == SQLDialect.SQLITE) { + log.info("SKIPPING", "referentials test"); + return; + } + + jOOQAbstractTest.reset = false; + + // Get the book 1984 + B book1984 = create().fetchOne(TBook(), TBook_TITLE().equal("1984")); + + // Navigate to the book's author + Record authorOrwell = (Record) invoke(book1984, "fetchTAuthorByAuthorId"); + assertEquals("Orwell", authorOrwell.getValue(TAuthor_LAST_NAME())); + + // Navigate back to the author's books + List books1 = (List) invoke(authorOrwell, "fetchTBookListByAuthorId"); + assertEquals(2, books1.size()); + + // Navigate through m:n relationships of books + List booksToBookStores = new ArrayList(); + for (Object b : books1) { + booksToBookStores.addAll((List) invoke(b, "fetchTBookToBookStoreList")); + } + assertEquals(3, booksToBookStores.size()); + + // Navigate to book stores + Set bookStoreNames = new TreeSet(); + List bookStores = new ArrayList(); + for (Object b : booksToBookStores) { + Object store = invoke(b, "fetchTBookStore"); + bookStores.add(store); + bookStoreNames.add((String) invoke(store, "getName")); + } + assertEquals(Arrays.asList("Ex Libris", "Orell Füssli"), new ArrayList(bookStoreNames)); + + // Navigate through m:n relationships of book stores + booksToBookStores = new ArrayList(); + for (Object b : bookStores) { + booksToBookStores.addAll((List) invoke(b, "fetchTBookToBookStoreList")); + } + + // Navigate back to books + Set book2Names = new TreeSet(); + List books2 = new ArrayList(); + for (Object b : booksToBookStores) { + Object book = invoke(b, "fetchTBook"); + books2.add(book); + book2Names.add((String) invoke(book, "getTitle")); + } + assertEquals(Arrays.asList("1984", "Animal Farm", "O Alquimista"), new ArrayList(book2Names)); + + // Navigate back to authors + Set authorNames = new TreeSet(); + for (Object b : books2) { + Object author = invoke(b, "fetchTAuthorByAuthorId"); + authorNames.add((String) invoke(author, "getLastName")); + } + assertEquals(Arrays.asList("Coelho", "Orwell"), new ArrayList(authorNames)); + } + + @SuppressWarnings({ "unchecked", "rawtypes" }) + @Test + public void testUpdatablesPK() throws Exception { + jOOQAbstractTest.reset = false; + + B book = create().newRecord(TBook()); + try { + book.refresh(); + } + catch (InvalidResultException expected) {} + + // Fetch the original record + B book1 = create().fetchOne(TBook(), TBook_TITLE().equal("1984")); + + // Another copy of the original record + B book2 = create().fetchOne(TBook(), TBook_TITLE().equal("1984")); + + // Immediately store the original record. That shouldn't have any effect + assertEquals(0, book1.store()); + + // Modify and store the original record + Integer id = book1.getValue(TBook_ID()); + book1.setValue(TBook_TITLE(), "1985"); + assertEquals(1, book1.store()); + + // Fetch the modified record + book1 = create().fetchOne(TBook(), TBook_ID().equal(id)); + + // Modify the record + book1.setValue(TBook_TITLE(), "1999"); + assertEquals("1999", book1.getValue(TBook_TITLE())); + + // And refresh it again + book1.refresh(); + assertEquals("1985", book1.getValue(TBook_TITLE())); + assertEquals(0, book1.store()); + + // Refresh the other copy of the original record + assertEquals(id, book2.getValue(TBook_ID())); + assertEquals("1984", book2.getValue(TBook_TITLE())); + book2.refresh(); + + assertEquals(id, book1.getValue(TBook_ID())); + assertEquals(id, book2.getValue(TBook_ID())); + assertEquals("1985", book1.getValue(TBook_TITLE())); + assertEquals("1985", book2.getValue(TBook_TITLE())); + + // No ON DELETE CASCADE constraints for Sybase ASE + if (getDialect() == SQLDialect.ASE) { + create().truncate((Table) table("t_book_to_book_store")).execute(); + } + + // Delete the modified record + assertEquals(1, book1.delete()); + assertEquals(0, book1.delete()); + assertEquals(0, book2.delete()); + + // Fetch the remaining records + assertEquals(null, create().fetchOne(TBook(), TBook_ID().equal(id))); + + // Store the record again from memory + assertEquals(1, book1.store()); + book1.refresh(); + book2.refresh(); + + assertEquals(id, book1.getValue(TBook_ID())); + assertEquals(id, book2.getValue(TBook_ID())); + assertEquals("1985", book1.getValue(TBook_TITLE())); + assertEquals("1985", book2.getValue(TBook_TITLE())); + + // Copy the records and store them again as another one + book1 = book1.copy(); + book2 = book2.copy(); + assertNull(book1.getValue(TBook_ID())); + assertNull(book2.getValue(TBook_ID())); + assertEquals("1985", book1.getValue(TBook_TITLE())); + assertEquals("1985", book2.getValue(TBook_TITLE())); + + // Can't store the copies yet, as the primary key is null + try { + book1.store(); + } catch (DataAccessException expected) {} + try { + book2.store(); + } catch (DataAccessException expected) {} + + book1.setValue(TBook_ID(), 11); + book2.setValue(TBook_ID(), 12); + assertEquals(1, book1.store()); + assertEquals(1, book2.store()); + + // Refresh the books + book1 = create().newRecord(TBook()); + book2 = create().newRecord(TBook()); + + book1.setValue(TBook_ID(), 11); + book2.setValue(TBook_ID(), 12); + + book1.refresh(); + book2.refresh(); + + assertEquals(Integer.valueOf(11), book1.getValue(TBook_ID())); + assertEquals(Integer.valueOf(12), book2.getValue(TBook_ID())); + assertEquals("1985", book1.getValue(TBook_TITLE())); + assertEquals("1985", book2.getValue(TBook_TITLE())); + + // Store a partial record + A author = create().newRecord(TAuthor()); + author.setValue(TAuthor_ID(), 77); + author.setValue(TAuthor_LAST_NAME(), "Döblin"); + assertEquals(1, author.store()); + assertEquals(Integer.valueOf(77), + create().fetchOne(TAuthor(), TAuthor_LAST_NAME().equal("Döblin")).getValue(TAuthor_ID())); + + // Store an empty record + S store = create().newRecord(TBookStore()); + assertEquals(0, store.store()); + + // [#787] Store the same record twice. + author = create().newRecord(TAuthor()); + author.setValue(TAuthor_ID(), 78); + author.setValue(TAuthor_LAST_NAME(), "Cohen"); + assertEquals(1, author.store()); + assertEquals(0, author.store()); // No INSERT/UPDATE should be made + + author.setValue(TAuthor_FIRST_NAME(), "Arthur"); + assertEquals(1, author.store()); // This should produce an UPDATE + assertEquals(1, create() + .select(count()) + .from(TAuthor()) + .where(TAuthor_FIRST_NAME().equal("Arthur")) + .and(TAuthor_LAST_NAME().equal("Cohen")) + .fetchOne(0)); + + // [#945] Set the same value twice + author = create().selectFrom(TAuthor()) + .where(TAuthor_FIRST_NAME().equal("Arthur")) + .fetchOne(); + + author.setValue(TAuthor_FIRST_NAME(), "Leonard"); + author.setValue(TAuthor_FIRST_NAME(), "Leonard"); + assertEquals(1, author.store()); + assertEquals(1, create() + .select(count()) + .from(TAuthor()) + .where(TAuthor_FIRST_NAME().equal("Leonard")) + .and(TAuthor_LAST_NAME().equal("Cohen")) + .fetchOne(0)); + } + + @Test + public void testUpdatablesPKChangePK() throws Exception { + jOOQAbstractTest.reset = false; + + // [#979] some additional tests related to modifying an updatable's + // primary key. Setting it to the same value shouldn't result in an + // INSERT statement... + + // This will result in no query + B book1 = create().fetchOne(TBook(), TBook_ID().equal(1)); + book1.setValue(TBook_ID(), 1); + assertEquals(0, book1.store()); + + // This will result in an UPDATE + book1.setValue(TBook_ID(), 1); + book1.setValue(TBook_TITLE(), "new title"); + assertEquals(1, book1.store()); + assertEquals(4, create().selectCount().from(TBook()).fetchOne(0)); + + B book2 = create().fetchOne(TBook(), TBook_ID().equal(1)); + assertEquals(1, (int) book2.getValue(TBook_ID())); + assertEquals("new title", book2.getValue(TBook_TITLE())); + + // This should now result in an INSERT + book2.setValue(TBook_ID(), 5); + assertEquals(1, book2.store()); + + B book3 = create().fetchOne(TBook(), TBook_ID().equal(5)); + assertEquals(5, (int) book3.getValue(TBook_ID())); + assertEquals("new title", book3.getValue(TBook_TITLE())); + } + + @Test + public void testUpdatablesUK() throws Exception { + jOOQAbstractTest.reset = false; + + S store = create().newRecord(TBookStore()); + try { + store.refresh(); + } + catch (InvalidResultException expected) {} + + store.setValue(TBookStore_NAME(), "Rösslitor"); + assertEquals(1, store.store()); + + store = create().fetchOne(TBookStore(), TBookStore_NAME().equal("Rösslitor")); + assertEquals("Rösslitor", store.getValue(TBookStore_NAME())); + + // Updating the main unique key should result in a new record + store.setValue(TBookStore_NAME(), "Amazon"); + assertEquals(1, store.store()); + + store = create().fetchOne(TBookStore(), TBookStore_NAME().equal("Amazon")); + assertEquals("Amazon", store.getValue(TBookStore_NAME())); + + // Delete and re-create the store + store.delete(); + assertEquals("Amazon", store.getValue(TBookStore_NAME())); + assertEquals(null, create().fetchOne(TBookStore(), TBookStore_NAME().equal("Amazon"))); + + switch (getDialect()) { + // Sybase ASE and SQL server do not allow for explicitly setting + // values on IDENTITY columns + case ASE: + case SQLSERVER: + log.info("SKIPPING", "Storing previously deleted UpdatableRecords"); + break; + + default: + store.store(); + assertEquals("Amazon", store.getValue(TBookStore_NAME())); + + store.refresh(); + assertEquals("Amazon", store.getValue(TBookStore_NAME())); + } + + store = create().fetchOne(TBookStore(), TBookStore_NAME().equal("Rösslitor")); + assertEquals("Rösslitor", store.getValue(TBookStore_NAME())); + } + + @SuppressWarnings("unchecked") + @Test + public void testNonUpdatables() throws Exception { + jOOQAbstractTest.reset = false; + + // Insert three records first + T785 record = create().newRecord(T785()); + record.setValue(T785_ID(), 1); + assertEquals(1, record.storeUsing(T785_ID())); + assertEquals(0, record.storeUsing(T785_ID())); + + record.setValue(T785_ID(), 2); + assertEquals(1, record.storeUsing(T785_ID())); + record.setValue(T785_NAME(), "N"); + record.setValue(T785_VALUE(), "V"); + assertEquals(1, record.storeUsing(T785_ID())); + + record = create().newRecord(T785()); + record.setValue(T785_ID(), 3); + record.setValue(T785_NAME(), "N"); + assertEquals(1, record.storeUsing(T785_ID())); + assertEquals(0, record.storeUsing(T785_ID())); + + // Load data again + record = create().newRecord(T785()); + record.setValue(T785_ID(), 2); + record.refreshUsing(T785_ID()); + assertEquals("N", record.getValue(T785_NAME())); + assertEquals("V", record.getValue(T785_VALUE())); + + // When NAME is used as the key, multiple updates may occur + record.setValue(T785_VALUE(), "Some value"); + assertEquals(2, record.storeUsing(T785_NAME())); + assertEquals(2, create().fetch(T785(), T785_VALUE().equal("Some value")).size()); + + // Don't allow refreshing on multiple results + try { + record = create().newRecord(T785()); + record.setValue(T785_VALUE(), "Some value"); + record.refreshUsing(T785_VALUE()); + fail(); + } + catch (InvalidResultException expected) {} + + + // Don't allow refreshing on inexistent results + try { + record = create().newRecord(T785()); + record.setValue(T785_ID(), 4); + record.refreshUsing(T785_ID()); + fail(); + } + catch (InvalidResultException expected) {} + + // Delete records again + record = create().newRecord(T785()); + record.setValue(T785_ID(), 1); + assertEquals(1, record.deleteUsing(T785_ID())); + assertEquals(2, create().fetch(T785()).size()); + assertEquals(0, create().fetch(T785(), T785_ID().equal(1)).size()); + + record = create().newRecord(T785()); + record.setValue(T785_NAME(), "N"); + assertEquals(2, record.deleteUsing(T785_NAME())); + assertEquals(0, create().fetch(T785()).size()); + } +} diff --git a/jOOQ-test/src/org/jooq/test/_/testcases/DataTypeTests.java b/jOOQ-test/src/org/jooq/test/_/testcases/DataTypeTests.java new file mode 100644 index 00000000000..b5562629faa --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/_/testcases/DataTypeTests.java @@ -0,0 +1,1412 @@ +/** + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com + * All rights reserved. + * + * This software is licensed to you under the Apache License, Version 2.0 + * (the "License"); You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * 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 "jOOQ" 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 COPYRIGHT OWNER 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. + */ +package org.jooq.test._.testcases; + +import static java.util.Arrays.asList; +import static junit.framework.Assert.assertEquals; +import static junit.framework.Assert.assertNotNull; +import static junit.framework.Assert.assertNull; +import static junit.framework.Assert.assertTrue; +import static junit.framework.Assert.fail; +import static org.jooq.SQLDialect.ASE; +import static org.jooq.SQLDialect.CUBRID; +import static org.jooq.SQLDialect.DB2; +import static org.jooq.SQLDialect.DERBY; +import static org.jooq.SQLDialect.H2; +import static org.jooq.SQLDialect.MYSQL; +import static org.jooq.SQLDialect.SQLITE; +import static org.jooq.SQLDialect.SQLSERVER; +import static org.jooq.SQLDialect.SYBASE; +import static org.jooq.impl.Factory.cast; +import static org.jooq.impl.Factory.castNull; +import static org.jooq.impl.Factory.dateDiff; +import static org.jooq.impl.Factory.literal; +import static org.jooq.impl.Factory.timestampDiff; +import static org.jooq.impl.Factory.val; +import static org.jooq.tools.unsigned.Unsigned.ubyte; +import static org.jooq.tools.unsigned.Unsigned.uint; +import static org.jooq.tools.unsigned.Unsigned.ulong; +import static org.jooq.tools.unsigned.Unsigned.ushort; + +import java.math.BigDecimal; +import java.math.BigInteger; +import java.sql.Date; +import java.sql.Time; +import java.sql.Timestamp; +import java.util.ArrayList; +import java.util.Arrays; +import java.util.Calendar; +import java.util.List; + +import org.jooq.Converter; +import org.jooq.DataType; +import org.jooq.InsertSetMoreStep; +import org.jooq.Record; +import org.jooq.Result; +import org.jooq.SQLDialect; +import org.jooq.TableRecord; +import org.jooq.UpdatableRecord; +import org.jooq.exception.DataTypeException; +import org.jooq.impl.SQLDataType; +import org.jooq.test.BaseTest; +import org.jooq.test.jOOQAbstractTest; +import org.jooq.tools.unsigned.UByte; +import org.jooq.tools.unsigned.UInteger; +import org.jooq.tools.unsigned.ULong; +import org.jooq.tools.unsigned.UShort; +import org.jooq.tools.unsigned.Unsigned; +import org.jooq.types.DayToSecond; +import org.jooq.types.YearToMonth; + +import org.junit.Test; + +public class DataTypeTests< + A extends UpdatableRecord, + B extends UpdatableRecord, + S extends UpdatableRecord, + B2S extends UpdatableRecord, + BS extends UpdatableRecord, + L extends TableRecord, + X extends TableRecord, + DATE extends UpdatableRecord, + BOOL extends UpdatableRecord, + D extends UpdatableRecord, + T extends UpdatableRecord, + U extends TableRecord, + I extends TableRecord, + IPK extends UpdatableRecord, + T658 extends TableRecord, + T725 extends UpdatableRecord, + T639 extends UpdatableRecord, + T785 extends TableRecord> +extends BaseTest { + + public DataTypeTests(jOOQAbstractTest delegate) { + super(delegate); + } + + @Test + public void testBlobAndClob() throws Exception { + jOOQAbstractTest.reset = false; + + // Superficial tests in T_BOOK table + // --------------------------------- + B book = create().fetchOne(TBook(), TBook_TITLE().equal("1984")); + + assertTrue(book.getValue(TBook_CONTENT_TEXT()).contains("doublethink")); + assertEquals(null, book.getValue(TBook_CONTENT_PDF())); + + book.setValue(TBook_CONTENT_TEXT(), "Blah blah"); + book.setValue(TBook_CONTENT_PDF(), "Blah blah".getBytes()); + book.store(); + + book = create().fetchOne(TBook(), TBook_TITLE().equal("1984")); + + assertEquals("Blah blah", book.getValue(TBook_CONTENT_TEXT())); + assertEquals("Blah blah", new String(book.getValue(TBook_CONTENT_PDF()))); + + // More in-depth tests in T_725_LOB_TEST table + // ------------------------------------------- + T725 record = create().newRecord(T725()); + + // Store and fetch NULL value + record.setValue(T725_ID(), 1); + assertEquals(1, record.store()); + record.refresh(); + assertNull(record.getValue(T725_LOB())); + + // Store and fetch empty byte[]. In some RDBMS, this is the same as null + record.setValue(T725_LOB(), new byte[0]); + assertEquals(1, record.store()); + record.refresh(); + + switch (getDialect()) { + + // In ASE, there don't seem to be any empty byte[] + case ASE: + assertEquals(1, record.getValue(T725_LOB()).length); + assertEquals(0, record.getValue(T725_LOB())[0]); + break; + + // These don't make a difference between an empty byte[] and null + case ORACLE: + case SQLITE: + assertNull(record.getValue(T725_LOB())); + break; + + default: + assertEquals(0, record.getValue(T725_LOB()).length); + break; + } + + // Store and fetch a filled byte[] + record.setValue(T725_LOB(), "Blah".getBytes()); + assertEquals(1, record.store()); + record.refresh(); + assertEquals("Blah", new String(record.getValue(T725_LOB()))); + + assertEquals(1, create().query("insert into " + T725().getName() + " values (?, ?)", 2, (Object) null).execute()); + assertEquals(1, create().query("insert into " + T725().getName() + " values (?, ?)", 3, new byte[0]).execute()); + assertEquals(1, create().query("insert into " + T725().getName() + " values (?, ?)", 4, "abc".getBytes()).execute()); + + record.setValue(T725_ID(), 2); + record.refresh(); + assertNull(record.getValue(T725_LOB())); + + record.setValue(T725_ID(), 3); + record.refresh(); + + switch (getDialect()) { + case ASE: + assertEquals(1, record.getValue(T725_LOB()).length); + assertEquals(0, record.getValue(T725_LOB())[0]); + break; + + case ORACLE: + case SQLITE: + assertNull(record.getValue(T725_LOB())); + break; + + default: + assertEquals(0, record.getValue(T725_LOB()).length); + break; + } + + record.setValue(T725_ID(), 4); + record.refresh(); + assertEquals("abc", new String(record.getValue(T725_LOB()))); + + Result result = create().fetch( + "select " + T725_ID().getName() + ", " + T725_LOB().getName() + + " from " + T725().getName() + + " order by " + T725_ID().getName()); + assertEquals(4, result.size()); + assertEquals(BOOK_IDS, result.getValues(0)); + assertNull(result.getValue(1, 1)); + + switch (getDialect()) { + case ASE: + assertEquals(1, result.getValue(2, T725_LOB()).length); + assertEquals(0, result.getValue(2, T725_LOB())[0]); + break; + + case ORACLE: + case SQLITE: + assertNull(result.getValue(2, T725_LOB())); + break; + + default: + assertEquals(0, result.getValue(2, T725_LOB()).length); + break; + } + + assertEquals("abc", new String((byte[]) result.getValue(3, T725_LOB().getName()))); + } + + @Test + public void testTypeConversions() throws Exception { + Record record = create().fetchOne(TAuthor(), TAuthor_LAST_NAME().equal("Orwell")); + + assertEquals("George", record.getValue(TAuthor_FIRST_NAME())); + assertEquals("George", record.getValueAsString(TAuthor_FIRST_NAME())); + assertEquals("George", record.getValueAsString(TAuthor_FIRST_NAME(), "gnarf")); + assertEquals("George", record.getValueAsString(1)); + assertEquals("George", record.getValueAsString(1, "gnarf")); + + assertEquals(Integer.valueOf("1903"), record.getValue(TAuthor_YEAR_OF_BIRTH())); + assertEquals(Integer.valueOf("1903"), record.getValue(TAuthor_YEAR_OF_BIRTH(), 123)); + assertEquals(Integer.valueOf("1903"), record.getValue(4)); + assertEquals(Integer.valueOf("1903"), record.getValue(4, 123)); + + assertEquals(Short.valueOf("1903"), record.getValueAsShort(TAuthor_YEAR_OF_BIRTH())); + assertEquals(Short.valueOf("1903"), record.getValueAsShort(TAuthor_YEAR_OF_BIRTH(), (short) 123)); + assertEquals(Short.valueOf("1903"), record.getValueAsShort(4)); + assertEquals(Short.valueOf("1903"), record.getValueAsShort(4, (short) 123)); + + assertEquals(Long.valueOf("1903"), record.getValueAsLong(TAuthor_YEAR_OF_BIRTH())); + assertEquals(Long.valueOf("1903"), record.getValueAsLong(TAuthor_YEAR_OF_BIRTH(), 123L)); + assertEquals(Long.valueOf("1903"), record.getValueAsLong(4)); + assertEquals(Long.valueOf("1903"), record.getValueAsLong(4, 123L)); + + assertEquals(new BigInteger("1903"), record.getValueAsBigInteger(TAuthor_YEAR_OF_BIRTH())); + assertEquals(new BigInteger("1903"), record.getValueAsBigInteger(TAuthor_YEAR_OF_BIRTH(), new BigInteger("123"))); + assertEquals(new BigInteger("1903"), record.getValueAsBigInteger(4)); + assertEquals(new BigInteger("1903"), record.getValueAsBigInteger(4, new BigInteger("123"))); + + assertEquals(Float.valueOf("1903"), record.getValueAsFloat(TAuthor_YEAR_OF_BIRTH())); + assertEquals(Float.valueOf("1903"), record.getValueAsFloat(TAuthor_YEAR_OF_BIRTH(), 123f)); + assertEquals(Float.valueOf("1903"), record.getValueAsFloat(4)); + assertEquals(Float.valueOf("1903"), record.getValueAsFloat(4, 123f)); + + assertEquals(Double.valueOf("1903"), record.getValueAsDouble(TAuthor_YEAR_OF_BIRTH())); + assertEquals(Double.valueOf("1903"), record.getValueAsDouble(TAuthor_YEAR_OF_BIRTH(), 123d)); + assertEquals(Double.valueOf("1903"), record.getValueAsDouble(4)); + assertEquals(Double.valueOf("1903"), record.getValueAsDouble(4, 123d)); + + assertEquals(new BigDecimal("1903"), record.getValueAsBigDecimal(TAuthor_YEAR_OF_BIRTH())); + assertEquals(new BigDecimal("1903"), record.getValueAsBigDecimal(TAuthor_YEAR_OF_BIRTH(), new BigDecimal("123"))); + assertEquals(new BigDecimal("1903"), record.getValueAsBigDecimal(4)); + assertEquals(new BigDecimal("1903"), record.getValueAsBigDecimal(4, new BigDecimal("123"))); + + + long dateOfBirth = record.getValue(TAuthor_DATE_OF_BIRTH()).getTime(); + assertEquals(dateOfBirth, record.getValueAsDate(TAuthor_DATE_OF_BIRTH()).getTime()); + assertEquals(dateOfBirth, record.getValueAsTimestamp(TAuthor_DATE_OF_BIRTH()).getTime()); + assertEquals(dateOfBirth, record.getValueAsTime(TAuthor_DATE_OF_BIRTH()).getTime()); + } + + @SuppressWarnings("serial") + @Test + public void testCustomConversion() { + Converter converter = new Converter() { + @Override + public StringBuilder from(String databaseObject) { + return new StringBuilder("prefix_" + databaseObject); + } + @Override + public String to(StringBuilder userObject) { + return userObject.toString().replace("prefix_", ""); + } + @Override + public Class fromType() { + return String.class; + } + @Override + public Class toType() { + return StringBuilder.class; + } + }; + + List prefixed = asList( + new StringBuilder("prefix_1984"), + new StringBuilder("prefix_Animal Farm"), + new StringBuilder("prefix_O Alquimista"), + new StringBuilder("prefix_Brida")); + + // Check various Result, Record methods + Result result = + create().select(TBook_TITLE()) + .from(TBook()) + .orderBy(TBook_ID()) + .fetch(); + + assertEquals(strings(prefixed), strings(result.getValues(TBook_TITLE(), converter))); + assertEquals(strings(prefixed), strings(result.getValues(TBook_TITLE().getName(), converter))); + assertEquals(strings(prefixed), strings(result.getValues(0, converter))); + + for (int i = 0; i < 4; i++) { + assertEquals(strings(prefixed.subList(i, i + 1)), strings(asList(result.get(i).getValue(TBook_TITLE(), converter)))); + assertEquals(strings(prefixed.subList(i, i + 1)), strings(asList(result.get(i).getValue(TBook_TITLE().getName(), converter)))); + assertEquals(strings(prefixed.subList(i, i + 1)), strings(asList(result.get(i).getValue(0, converter)))); + } + + // Check various fetch methods + assertEquals(strings(prefixed), + strings(create().select(TBook_TITLE()) + .from(TBook()) + .orderBy(TBook_ID()) + .fetch(TBook_TITLE(), converter))); + + assertEquals(strings(prefixed), + strings(create().select(TBook_TITLE()) + .from(TBook()) + .orderBy(TBook_ID()) + .fetch(TBook_TITLE().getName(), converter))); + + assertEquals(strings(prefixed), + strings(create().select(TBook_TITLE()) + .from(TBook()) + .orderBy(TBook_ID()) + .fetch(0, converter))); + + // Check various fetchOne methods + for (int i = 0; i < 4; i++) { + assertEquals(strings(prefixed.subList(i, i + 1)), + strings(asList(create().select(TBook_TITLE()) + .from(TBook()) + .where(TBook_ID().equal(i + 1)) + .fetchOne(TBook_TITLE(), converter)))); + } + + // Check various fetchArray methods + StringBuilder[] array = + create().select(TBook_TITLE()) + .from(TBook()) + .orderBy(TBook_ID()) + .fetchArray(TBook_TITLE(), converter); + + assertEquals(strings(prefixed), strings(asList(array))); + } + + private List strings(List prefixed) { + List result = new ArrayList(); + + for (StringBuilder sb : prefixed) { + result.add(sb.toString()); + } + + return result; + } + + @Test + public void testCastingToDialectDataType() throws Exception { + for (DataType type : getCastableDataTypes()) { + if (getDialect() == SQLDialect.ASE || + getDialect() == SQLDialect.DB2 || + getDialect() == SQLDialect.SYBASE) { + if (type.getType() == Boolean.class) { + log.info("SKIPPING", "Casting to bit type in Sybase ASE / SQL Anywhere"); + continue; + } + } + + assertEquals(null, create().select(val(null, type).cast(type)).fetchOne(0)); + } + } + + @Test + public void testCastingToSQLDataType() throws Exception { + for (DataType type : Arrays.> asList( + SQLDataType.BIGINT, + SQLDataType.BINARY, + SQLDataType.BIT, + SQLDataType.BLOB, + SQLDataType.BOOLEAN, + SQLDataType.CHAR, + SQLDataType.CLOB, + SQLDataType.DATE, + SQLDataType.DECIMAL, + SQLDataType.DECIMAL_INTEGER, + SQLDataType.DOUBLE, + SQLDataType.FLOAT, + SQLDataType.INTEGER, + SQLDataType.LONGNVARCHAR, + SQLDataType.LONGVARBINARY, + SQLDataType.LONGVARCHAR, + SQLDataType.NCHAR, + SQLDataType.NCLOB, + SQLDataType.NUMERIC, + SQLDataType.NVARCHAR, + +// TODO: is there any meaningful cast for OTHER? +// SQLDataType.OTHER, + + SQLDataType.REAL, + SQLDataType.SMALLINT, + SQLDataType.TIME, + SQLDataType.TIMESTAMP, + SQLDataType.TINYINT, + SQLDataType.VARBINARY, + SQLDataType.VARCHAR)) { + + if (getDialect() == SQLDialect.ORACLE) { + if (type.getType() == byte[].class || + type == SQLDataType.CLOB || + type == SQLDataType.NCLOB) { + + log.info("SKIPPING", "Casting to lob type in Oracle"); + continue; + } + } + + if (getDialect() == SQLDialect.ASE || + getDialect() == SQLDialect.DB2 || + getDialect() == SQLDialect.ORACLE || + getDialect() == SQLDialect.SYBASE) { + if (type.getType() == Boolean.class) { + log.info("SKIPPING", "Casting to bit type in Sybase ASE / SQL Anywhere"); + continue; + } + } + + assertEquals(null, create().select(val(null, type).cast(type)).fetchOne(0)); + } + } + + @Test + public void testCastingToJavaClass() throws Exception { + if (getDialect() != SQLDialect.HSQLDB) { + assertEquals(true, create().select(cast(1, Boolean.class)).fetchOne(0)); + + if (getDialect() != SQLDialect.INGRES) { + assertEquals(true, create().select(cast("1", Boolean.class)).fetchOne(0)); + } + } + + assertEquals(BigInteger.ONE, create().select(cast("1", BigInteger.class)).fetchOne(0)); + assertEquals(BigInteger.ONE, create().select(cast(1, BigInteger.class)).fetchOne(0)); + + // Sybase applies the wrong scale when casting. Force scale before comparing (Sybase returns 1.0000 when we expect 1) + if (getDialect() == SQLDialect.SYBASE) { + BigDecimal result = (BigDecimal)create().select(cast("1", BigDecimal.class)).fetchOne(0); + result = result.setScale(0); + assertEquals(BigDecimal.ONE, result); + + result = (BigDecimal)create().select(cast(1, BigDecimal.class)).fetchOne(0); + result = result.setScale(0); + assertEquals(BigDecimal.ONE, result); + } else { + assertEquals(0, BigDecimal.ONE.compareTo((BigDecimal) create().select(cast("1", BigDecimal.class)).fetchOne(0))); + assertEquals(0, BigDecimal.ONE.compareTo((BigDecimal) create().select(cast(1, BigDecimal.class)).fetchOne(0))); + } + + assertEquals((byte) 1, create().select(cast("1", Byte.class)).fetchOne(0)); + assertEquals((short) 1, create().select(cast("1", Short.class)).fetchOne(0)); + assertEquals(1, create().select(cast("1", Integer.class)).fetchOne(0)); + assertEquals(1L, create().select(cast("1", Long.class)).fetchOne(0)); + + assertEquals(1.0f, create().select(cast("1", Float.class)).fetchOne(0)); + assertEquals(1.0, create().select(cast("1", Double.class)).fetchOne(0)); + assertEquals("1", create().select(cast("1", String.class)).fetchOne(0)); + + assertEquals((byte) 1, create().select(cast(1, Byte.class)).fetchOne(0)); + assertEquals((short) 1, create().select(cast(1, Short.class)).fetchOne(0)); + assertEquals(1, create().select(cast(1, Integer.class)).fetchOne(0)); + assertEquals(1L, create().select(cast(1, Long.class)).fetchOne(0)); + assertEquals(1.0f, create().select(cast(1, Float.class)).fetchOne(0)); + assertEquals(1.0, create().select(cast(1, Double.class)).fetchOne(0)); + assertEquals("1", create().select(cast(1, String.class)).fetchOne(0)); + + // Sybase ASE does not know null bits + if (getDialect() != SQLDialect.ASE) { + assertEquals(null, create().select(castNull(Boolean.class)).fetchOne(0)); + } + + assertEquals(null, create().select(castNull(Byte.class)).fetchOne(0)); + assertEquals(null, create().select(castNull(Short.class)).fetchOne(0)); + assertEquals(null, create().select(castNull(Integer.class)).fetchOne(0)); + assertEquals(null, create().select(castNull(Long.class)).fetchOne(0)); + + // Not implemented by the driver + if (getDialect() != SQLDialect.SQLITE) { + assertEquals(null, create().select(castNull(BigInteger.class)).fetchOne(0)); + assertEquals(null, create().select(castNull(BigDecimal.class)).fetchOne(0)); + } + + assertEquals(null, create().select(castNull(Float.class)).fetchOne(0)); + assertEquals(null, create().select(castNull(Double.class)).fetchOne(0)); + assertEquals(null, create().select(castNull(String.class)).fetchOne(0)); + assertEquals(null, create().select(castNull(Date.class)).fetchOne(0)); + assertEquals(null, create().select(castNull(Time.class)).fetchOne(0)); + assertEquals(null, create().select(castNull(Timestamp.class)).fetchOne(0)); + + assertEquals(1984, create() + .select(TBook_TITLE().cast(Integer.class)) + .from(TBook()) + .where(TBook_ID().equal(1)) + .fetch().getValue(0, 0)); + + assertEquals(1984L, create() + .select(TBook_TITLE().cast(Long.class)) + .from(TBook()) + .where(TBook_ID().equal(1)) + .fetch().getValue(0, 0)); + } + + @Test + public void testNestedCasting() throws Exception { + // TODO: These tests fail on some dialects. Investigate in some post-2.2.0 release + if (true) return; + + assertEquals(1, + create().select(val(1).cast(Long.class).cast(Integer.class)).fetchOne(0)); + assertEquals(3, + create().select(val(1).cast(Long.class).add(val(2).cast(String.class).cast(Integer.class)).cast(Integer.class)).fetchOne(0)); + assertEquals("3", + create().select(val(1).add(val("2")).cast(String.class)).fetchOne(0)); + } + + @Test + public void testConversionResult() throws Exception { + // .fetch(..., Class) + // ------------------ + assertEquals( + Arrays.asList((byte) 1, (byte) 2), + create().selectFrom(TAuthor()).orderBy(TAuthor_ID()).fetch(0, Byte.class)); + assertEquals( + Arrays.asList((short) 1, (short) 2), + create().selectFrom(TAuthor()).orderBy(TAuthor_ID()).fetch(0, Short.class)); + assertEquals( + Arrays.asList(1, 2), + create().selectFrom(TAuthor()).orderBy(TAuthor_ID()).fetch(0, Integer.class)); + assertEquals( + Arrays.asList(1L, 2L), + create().selectFrom(TAuthor()).orderBy(TAuthor_ID()).fetch(0, Long.class)); + assertEquals( + Arrays.asList(ubyte((byte) 1), ubyte((byte) 2)), + create().selectFrom(TAuthor()).orderBy(TAuthor_ID()).fetch(0, UByte.class)); + assertEquals( + Arrays.asList(ushort((short) 1), ushort((short) 2)), + create().selectFrom(TAuthor()).orderBy(TAuthor_ID()).fetch(0, UShort.class)); + assertEquals( + Arrays.asList(uint(1), uint(2)), + create().selectFrom(TAuthor()).orderBy(TAuthor_ID()).fetch(0, UInteger.class)); + assertEquals( + Arrays.asList(ulong(1L), ulong(2L)), + create().selectFrom(TAuthor()).orderBy(TAuthor_ID()).fetch(0, ULong.class)); + assertEquals( + Arrays.asList(1.0f, 2.0f), + create().selectFrom(TAuthor()).orderBy(TAuthor_ID()).fetch(0, Float.class)); + assertEquals( + Arrays.asList(1.0, 2.0), + create().selectFrom(TAuthor()).orderBy(TAuthor_ID()).fetch(0, Double.class)); + assertEquals( + Arrays.asList(new BigInteger("1"), new BigInteger("2")), + create().selectFrom(TAuthor()).orderBy(TAuthor_ID()).fetch(0, BigInteger.class)); + assertEquals( + Arrays.asList(new BigDecimal("1"), new BigDecimal("2")), + create().selectFrom(TAuthor()).orderBy(TAuthor_ID()).fetch(0, BigDecimal.class)); + + + assertEquals( + Arrays.asList((byte) 1, (byte) 2), + create().selectFrom(TAuthor()).orderBy(TAuthor_ID()).fetch(TAuthor_ID().getName(), Byte.class)); + assertEquals( + Arrays.asList((short) 1, (short) 2), + create().selectFrom(TAuthor()).orderBy(TAuthor_ID()).fetch(TAuthor_ID().getName(), Short.class)); + assertEquals( + Arrays.asList(1, 2), + create().selectFrom(TAuthor()).orderBy(TAuthor_ID()).fetch(TAuthor_ID().getName(), Integer.class)); + assertEquals( + Arrays.asList(1L, 2L), + create().selectFrom(TAuthor()).orderBy(TAuthor_ID()).fetch(TAuthor_ID().getName(), Long.class)); + assertEquals( + Arrays.asList(ubyte((byte) 1), ubyte((byte) 2)), + create().selectFrom(TAuthor()).orderBy(TAuthor_ID()).fetch(TAuthor_ID().getName(), UByte.class)); + assertEquals( + Arrays.asList(ushort((short) 1), ushort((short) 2)), + create().selectFrom(TAuthor()).orderBy(TAuthor_ID()).fetch(TAuthor_ID().getName(), UShort.class)); + assertEquals( + Arrays.asList(uint(1), uint(2)), + create().selectFrom(TAuthor()).orderBy(TAuthor_ID()).fetch(TAuthor_ID().getName(), UInteger.class)); + assertEquals( + Arrays.asList(ulong(1L), ulong(2L)), + create().selectFrom(TAuthor()).orderBy(TAuthor_ID()).fetch(TAuthor_ID().getName(), ULong.class)); + assertEquals( + Arrays.asList(1.0f, 2.0f), + create().selectFrom(TAuthor()).orderBy(TAuthor_ID()).fetch(TAuthor_ID().getName(), Float.class)); + assertEquals( + Arrays.asList(1.0, 2.0), + create().selectFrom(TAuthor()).orderBy(TAuthor_ID()).fetch(TAuthor_ID().getName(), Double.class)); + assertEquals( + Arrays.asList(new BigInteger("1"), new BigInteger("2")), + create().selectFrom(TAuthor()).orderBy(TAuthor_ID()).fetch(TAuthor_ID().getName(), BigInteger.class)); + assertEquals( + Arrays.asList(new BigDecimal("1"), new BigDecimal("2")), + create().selectFrom(TAuthor()).orderBy(TAuthor_ID()).fetch(TAuthor_ID().getName(), BigDecimal.class)); + + + // .fetchArray(..., Class) + // ------------------ + assertEquals( + Arrays.asList((byte) 1, (byte) 2), + Arrays.asList(create().selectFrom(TAuthor()).orderBy(TAuthor_ID()).fetchArray(0, Byte.class))); + assertEquals( + Arrays.asList((short) 1, (short) 2), + Arrays.asList(create().selectFrom(TAuthor()).orderBy(TAuthor_ID()).fetchArray(0, Short.class))); + assertEquals( + Arrays.asList(1, 2), + Arrays.asList(create().selectFrom(TAuthor()).orderBy(TAuthor_ID()).fetchArray(0, Integer.class))); + assertEquals( + Arrays.asList(1L, 2L), + Arrays.asList(create().selectFrom(TAuthor()).orderBy(TAuthor_ID()).fetchArray(0, Long.class))); + assertEquals( + Arrays.asList(ubyte((byte) 1), ubyte((byte) 2)), + Arrays.asList(create().selectFrom(TAuthor()).orderBy(TAuthor_ID()).fetchArray(0, UByte.class))); + assertEquals( + Arrays.asList(ushort((short) 1), ushort((short) 2)), + Arrays.asList(create().selectFrom(TAuthor()).orderBy(TAuthor_ID()).fetchArray(0, UShort.class))); + assertEquals( + Arrays.asList(uint(1), uint(2)), + Arrays.asList(create().selectFrom(TAuthor()).orderBy(TAuthor_ID()).fetchArray(0, UInteger.class))); + assertEquals( + Arrays.asList(ulong(1L), ulong(2L)), + Arrays.asList(create().selectFrom(TAuthor()).orderBy(TAuthor_ID()).fetchArray(0, ULong.class))); + assertEquals( + Arrays.asList(1.0f, 2.0f), + Arrays.asList(create().selectFrom(TAuthor()).orderBy(TAuthor_ID()).fetchArray(0, Float.class))); + assertEquals( + Arrays.asList(1.0, 2.0), + Arrays.asList(create().selectFrom(TAuthor()).orderBy(TAuthor_ID()).fetchArray(0, Double.class))); + assertEquals( + Arrays.asList(new BigInteger("1"), new BigInteger("2")), + Arrays.asList(create().selectFrom(TAuthor()).orderBy(TAuthor_ID()).fetchArray(0, BigInteger.class))); + assertEquals( + Arrays.asList(new BigDecimal("1"), new BigDecimal("2")), + Arrays.asList(create().selectFrom(TAuthor()).orderBy(TAuthor_ID()).fetchArray(0, BigDecimal.class))); + + + assertEquals( + Arrays.asList((byte) 1, (byte) 2), + Arrays.asList(create().selectFrom(TAuthor()).orderBy(TAuthor_ID()).fetchArray(TAuthor_ID().getName(), Byte.class))); + assertEquals( + Arrays.asList((short) 1, (short) 2), + Arrays.asList(create().selectFrom(TAuthor()).orderBy(TAuthor_ID()).fetchArray(TAuthor_ID().getName(), Short.class))); + assertEquals( + Arrays.asList(1, 2), + Arrays.asList(create().selectFrom(TAuthor()).orderBy(TAuthor_ID()).fetchArray(TAuthor_ID().getName(), Integer.class))); + assertEquals( + Arrays.asList(1L, 2L), + Arrays.asList(create().selectFrom(TAuthor()).orderBy(TAuthor_ID()).fetchArray(TAuthor_ID().getName(), Long.class))); + assertEquals( + Arrays.asList(ubyte((byte) 1), ubyte((byte) 2)), + Arrays.asList(create().selectFrom(TAuthor()).orderBy(TAuthor_ID()).fetchArray(TAuthor_ID().getName(), UByte.class))); + assertEquals( + Arrays.asList(ushort((short) 1), ushort((short) 2)), + Arrays.asList(create().selectFrom(TAuthor()).orderBy(TAuthor_ID()).fetchArray(TAuthor_ID().getName(), UShort.class))); + assertEquals( + Arrays.asList(uint(1), uint(2)), + Arrays.asList(create().selectFrom(TAuthor()).orderBy(TAuthor_ID()).fetchArray(TAuthor_ID().getName(), UInteger.class))); + assertEquals( + Arrays.asList(ulong(1L), ulong(2L)), + Arrays.asList(create().selectFrom(TAuthor()).orderBy(TAuthor_ID()).fetchArray(TAuthor_ID().getName(), ULong.class))); + assertEquals( + Arrays.asList(1.0f, 2.0f), + Arrays.asList(create().selectFrom(TAuthor()).orderBy(TAuthor_ID()).fetchArray(TAuthor_ID().getName(), Float.class))); + assertEquals( + Arrays.asList(1.0, 2.0), + Arrays.asList(create().selectFrom(TAuthor()).orderBy(TAuthor_ID()).fetchArray(TAuthor_ID().getName(), Double.class))); + assertEquals( + Arrays.asList(new BigInteger("1"), new BigInteger("2")), + Arrays.asList(create().selectFrom(TAuthor()).orderBy(TAuthor_ID()).fetchArray(TAuthor_ID().getName(), BigInteger.class))); + assertEquals( + Arrays.asList(new BigDecimal("1"), new BigDecimal("2")), + Arrays.asList(create().selectFrom(TAuthor()).orderBy(TAuthor_ID()).fetchArray(TAuthor_ID().getName(), BigDecimal.class))); + + + // .fetchOne(..., Class) + // --------------------- + assertEquals( + (byte) 1, + (byte) create().selectFrom(TAuthor()).orderBy(TAuthor_ID()).limit(1).fetchOne(0, Byte.class)); + assertEquals( + (short) 1, + (short) create().selectFrom(TAuthor()).orderBy(TAuthor_ID()).limit(1).fetchOne(0, Short.class)); + assertEquals( + 1, + (int) create().selectFrom(TAuthor()).orderBy(TAuthor_ID()).limit(1).fetchOne(0, Integer.class)); + assertEquals( + 1L, + (long) create().selectFrom(TAuthor()).orderBy(TAuthor_ID()).limit(1).fetchOne(0, Long.class)); + assertEquals( + ubyte((byte) 1), + create().selectFrom(TAuthor()).orderBy(TAuthor_ID()).limit(1).fetchOne(0, UByte.class)); + assertEquals( + ushort((short) 1), + create().selectFrom(TAuthor()).orderBy(TAuthor_ID()).limit(1).fetchOne(0, UShort.class)); + assertEquals( + uint(1), + create().selectFrom(TAuthor()).orderBy(TAuthor_ID()).limit(1).fetchOne(0, UInteger.class)); + assertEquals( + ulong(1L), + create().selectFrom(TAuthor()).orderBy(TAuthor_ID()).limit(1).fetchOne(0, ULong.class)); + assertEquals( + 1.0f, + create().selectFrom(TAuthor()).orderBy(TAuthor_ID()).limit(1).fetchOne(0, Float.class)); + assertEquals( + 1.0, + create().selectFrom(TAuthor()).orderBy(TAuthor_ID()).limit(1).fetchOne(0, Double.class)); + assertEquals( + new BigInteger("1"), + create().selectFrom(TAuthor()).orderBy(TAuthor_ID()).limit(1).fetchOne(0, BigInteger.class)); + assertEquals( + new BigDecimal("1"), + create().selectFrom(TAuthor()).orderBy(TAuthor_ID()).limit(1).fetchOne(0, BigDecimal.class)); + + + assertEquals( + (byte) 1, + (byte) create().selectFrom(TAuthor()).orderBy(TAuthor_ID()).limit(1).fetchOne(TAuthor_ID().getName(), Byte.class)); + assertEquals( + (short) 1, + (short) create().selectFrom(TAuthor()).orderBy(TAuthor_ID()).limit(1).fetchOne(TAuthor_ID().getName(), Short.class)); + assertEquals( + 1, + (int) create().selectFrom(TAuthor()).orderBy(TAuthor_ID()).limit(1).fetchOne(TAuthor_ID().getName(), Integer.class)); + assertEquals( + 1L, + (long) create().selectFrom(TAuthor()).orderBy(TAuthor_ID()).limit(1).fetchOne(TAuthor_ID().getName(), Long.class)); + assertEquals( + ubyte((byte) 1), + create().selectFrom(TAuthor()).orderBy(TAuthor_ID()).limit(1).fetchOne(TAuthor_ID().getName(), UByte.class)); + assertEquals( + ushort((short) 1), + create().selectFrom(TAuthor()).orderBy(TAuthor_ID()).limit(1).fetchOne(TAuthor_ID().getName(), UShort.class)); + assertEquals( + uint(1), + create().selectFrom(TAuthor()).orderBy(TAuthor_ID()).limit(1).fetchOne(TAuthor_ID().getName(), UInteger.class)); + assertEquals( + ulong(1L), + create().selectFrom(TAuthor()).orderBy(TAuthor_ID()).limit(1).fetchOne(TAuthor_ID().getName(), ULong.class)); + assertEquals( + 1.0f, + create().selectFrom(TAuthor()).orderBy(TAuthor_ID()).limit(1).fetchOne(TAuthor_ID().getName(), Float.class)); + assertEquals( + 1.0, + create().selectFrom(TAuthor()).orderBy(TAuthor_ID()).limit(1).fetchOne(TAuthor_ID().getName(), Double.class)); + assertEquals( + new BigInteger("1"), + create().selectFrom(TAuthor()).orderBy(TAuthor_ID()).limit(1).fetchOne(TAuthor_ID().getName(), BigInteger.class)); + assertEquals( + new BigDecimal("1"), + create().selectFrom(TAuthor()).orderBy(TAuthor_ID()).limit(1).fetchOne(TAuthor_ID().getName(), BigDecimal.class)); + + } + + @Test + public void testConversion() throws Exception { + assertEquals(null, SQLDataType.TINYINT.convert(null)); + assertEquals(null, SQLDataType.TINYINTUNSIGNED.convert(null)); + assertEquals(null, SQLDataType.SMALLINT.convert(null)); + assertEquals(null, SQLDataType.SMALLINTUNSIGNED.convert(null)); + assertEquals(null, SQLDataType.INTEGER.convert(null)); + assertEquals(null, SQLDataType.INTEGERUNSIGNED.convert(null)); + assertEquals(null, SQLDataType.BIGINT.convert(null)); + assertEquals(null, SQLDataType.BIGINTUNSIGNED.convert(null)); + assertEquals(null, SQLDataType.REAL.convert(null)); + assertEquals(null, SQLDataType.DOUBLE.convert(null)); + assertEquals(null, SQLDataType.DECIMAL_INTEGER.convert(null)); + assertEquals(null, SQLDataType.NUMERIC.convert(null)); + assertEquals(null, SQLDataType.BOOLEAN.convert(null)); + assertEquals(null, SQLDataType.VARCHAR.convert(null)); + assertEquals(null, SQLDataType.DATE.convert(null)); + assertEquals(null, SQLDataType.TIME.convert(null)); + assertEquals(null, SQLDataType.TIMESTAMP.convert(null)); + + assertEquals(Byte.valueOf("1"), SQLDataType.TINYINT.convert('1')); + assertEquals(UByte.valueOf("1"), SQLDataType.TINYINTUNSIGNED.convert('1')); + assertEquals(Short.valueOf("1"), SQLDataType.SMALLINT.convert('1')); + assertEquals(UShort.valueOf("1"), SQLDataType.SMALLINTUNSIGNED.convert('1')); + assertEquals(Integer.valueOf("1"), SQLDataType.INTEGER.convert('1')); + assertEquals(UInteger.valueOf("1"), SQLDataType.INTEGERUNSIGNED.convert('1')); + assertEquals(Long.valueOf("1"), SQLDataType.BIGINT.convert('1')); + assertEquals(ULong.valueOf("1"), SQLDataType.BIGINTUNSIGNED.convert('1')); + assertEquals(Float.valueOf("1"), SQLDataType.REAL.convert('1')); + assertEquals(Double.valueOf("1"), SQLDataType.DOUBLE.convert('1')); + assertEquals(new BigInteger("1"), SQLDataType.DECIMAL_INTEGER.convert('1')); + assertEquals(new BigDecimal("1"), SQLDataType.NUMERIC.convert('1')); + assertEquals(Boolean.TRUE, SQLDataType.BOOLEAN.convert('1')); + assertEquals("1", SQLDataType.VARCHAR.convert('1')); + + assertEquals(Byte.valueOf("1"), SQLDataType.TINYINT.convert("1")); + assertEquals(UByte.valueOf("1"), SQLDataType.TINYINTUNSIGNED.convert("1")); + assertEquals(Short.valueOf("1"), SQLDataType.SMALLINT.convert("1")); + assertEquals(UShort.valueOf("1"), SQLDataType.SMALLINTUNSIGNED.convert("1")); + assertEquals(Integer.valueOf("1"), SQLDataType.INTEGER.convert("1")); + assertEquals(UInteger.valueOf("1"), SQLDataType.INTEGERUNSIGNED.convert("1")); + assertEquals(Long.valueOf("1"), SQLDataType.BIGINT.convert("1")); + assertEquals(ULong.valueOf("1"), SQLDataType.BIGINTUNSIGNED.convert("1")); + assertEquals(Float.valueOf("1"), SQLDataType.REAL.convert("1")); + assertEquals(Double.valueOf("1"), SQLDataType.DOUBLE.convert("1")); + assertEquals(new BigInteger("1"), SQLDataType.DECIMAL_INTEGER.convert("1")); + assertEquals(new BigDecimal("1"), SQLDataType.NUMERIC.convert("1")); + assertEquals(Boolean.TRUE, SQLDataType.BOOLEAN.convert("1")); + assertEquals("1", SQLDataType.VARCHAR.convert("1")); + + assertEquals(Byte.valueOf("1"), SQLDataType.TINYINT.convert(" 1")); + assertEquals(UByte.valueOf("1"), SQLDataType.TINYINTUNSIGNED.convert(" 1")); + assertEquals(Short.valueOf("1"), SQLDataType.SMALLINT.convert(" 1")); + assertEquals(UShort.valueOf("1"), SQLDataType.SMALLINTUNSIGNED.convert(" 1")); + assertEquals(Integer.valueOf("1"), SQLDataType.INTEGER.convert(" 1")); + assertEquals(UInteger.valueOf("1"), SQLDataType.INTEGERUNSIGNED.convert(" 1")); + assertEquals(Long.valueOf("1"), SQLDataType.BIGINT.convert(" 1")); + assertEquals(ULong.valueOf("1"), SQLDataType.BIGINTUNSIGNED.convert(" 1")); + assertEquals(Float.valueOf("1"), SQLDataType.REAL.convert(" 1")); + assertEquals(Double.valueOf("1"), SQLDataType.DOUBLE.convert(" 1")); + assertEquals(new BigInteger("1"), SQLDataType.DECIMAL_INTEGER.convert(" 1")); + assertEquals(new BigDecimal("1"), SQLDataType.NUMERIC.convert(" 1")); + assertEquals(Boolean.TRUE, SQLDataType.BOOLEAN.convert(" 1")); + assertEquals(" 1", SQLDataType.VARCHAR.convert(" 1")); + + assertEquals(Byte.valueOf("1"), SQLDataType.TINYINT.convert((byte) 1)); + assertEquals(UByte.valueOf("1"), SQLDataType.TINYINTUNSIGNED.convert((byte) 1)); + assertEquals(Short.valueOf("1"), SQLDataType.SMALLINT.convert((byte) 1)); + assertEquals(UShort.valueOf("1"), SQLDataType.SMALLINTUNSIGNED.convert((byte) 1)); + assertEquals(Integer.valueOf("1"), SQLDataType.INTEGER.convert((byte) 1)); + assertEquals(UInteger.valueOf("1"), SQLDataType.INTEGERUNSIGNED.convert((byte) 1)); + assertEquals(Long.valueOf("1"), SQLDataType.BIGINT.convert((byte) 1)); + assertEquals(ULong.valueOf("1"), SQLDataType.BIGINTUNSIGNED.convert((byte) 1)); + assertEquals(Float.valueOf("1"), SQLDataType.REAL.convert((byte) 1)); + assertEquals(Double.valueOf("1"), SQLDataType.DOUBLE.convert((byte) 1)); + assertEquals(new BigInteger("1"), SQLDataType.DECIMAL_INTEGER.convert((byte) 1)); + assertEquals(new BigDecimal("1"), SQLDataType.NUMERIC.convert((byte) 1)); + assertEquals(Boolean.TRUE, SQLDataType.BOOLEAN.convert((byte) 1)); + assertEquals("1", SQLDataType.VARCHAR.convert((byte) 1)); + + assertEquals(Byte.valueOf("1"), SQLDataType.TINYINT.convert((short) 1)); + assertEquals(UByte.valueOf("1"), SQLDataType.TINYINTUNSIGNED.convert((short) 1)); + assertEquals(Short.valueOf("1"), SQLDataType.SMALLINT.convert((short) 1)); + assertEquals(UShort.valueOf("1"), SQLDataType.SMALLINTUNSIGNED.convert((short) 1)); + assertEquals(Integer.valueOf("1"), SQLDataType.INTEGER.convert((short) 1)); + assertEquals(UInteger.valueOf("1"), SQLDataType.INTEGERUNSIGNED.convert((short) 1)); + assertEquals(Long.valueOf("1"), SQLDataType.BIGINT.convert((short) 1)); + assertEquals(ULong.valueOf("1"), SQLDataType.BIGINTUNSIGNED.convert((short) 1)); + assertEquals(Float.valueOf("1"), SQLDataType.REAL.convert((short) 1)); + assertEquals(Double.valueOf("1"), SQLDataType.DOUBLE.convert((short) 1)); + assertEquals(new BigInteger("1"), SQLDataType.DECIMAL_INTEGER.convert((short) 1)); + assertEquals(new BigDecimal("1"), SQLDataType.NUMERIC.convert((short) 1)); + assertEquals(Boolean.TRUE, SQLDataType.BOOLEAN.convert((short) 1)); + assertEquals("1", SQLDataType.VARCHAR.convert((short) 1)); + + assertEquals(Byte.valueOf("1"), SQLDataType.TINYINT.convert(1)); + assertEquals(UByte.valueOf("1"), SQLDataType.TINYINTUNSIGNED.convert(1)); + assertEquals(Short.valueOf("1"), SQLDataType.SMALLINT.convert(1)); + assertEquals(UShort.valueOf("1"), SQLDataType.SMALLINTUNSIGNED.convert(1)); + assertEquals(Integer.valueOf("1"), SQLDataType.INTEGER.convert(1)); + assertEquals(UInteger.valueOf("1"), SQLDataType.INTEGERUNSIGNED.convert(1)); + assertEquals(Long.valueOf("1"), SQLDataType.BIGINT.convert(1)); + assertEquals(ULong.valueOf("1"), SQLDataType.BIGINTUNSIGNED.convert(1)); + assertEquals(Float.valueOf("1"), SQLDataType.REAL.convert(1)); + assertEquals(Double.valueOf("1"), SQLDataType.DOUBLE.convert(1)); + assertEquals(new BigInteger("1"), SQLDataType.DECIMAL_INTEGER.convert(1)); + assertEquals(new BigDecimal("1"), SQLDataType.NUMERIC.convert(1)); + assertEquals(Boolean.TRUE, SQLDataType.BOOLEAN.convert(1)); + assertEquals("1", SQLDataType.VARCHAR.convert(1)); + + assertEquals(Byte.valueOf("1"), SQLDataType.TINYINT.convert((long) 1)); + assertEquals(UByte.valueOf("1"), SQLDataType.TINYINTUNSIGNED.convert((long) 1)); + assertEquals(Short.valueOf("1"), SQLDataType.SMALLINT.convert((long) 1)); + assertEquals(UShort.valueOf("1"), SQLDataType.SMALLINTUNSIGNED.convert((long) 1)); + assertEquals(Integer.valueOf("1"), SQLDataType.INTEGER.convert((long) 1)); + assertEquals(UInteger.valueOf("1"), SQLDataType.INTEGERUNSIGNED.convert((long) 1)); + assertEquals(Long.valueOf("1"), SQLDataType.BIGINT.convert((long) 1)); + assertEquals(ULong.valueOf("1"), SQLDataType.BIGINTUNSIGNED.convert((long) 1)); + assertEquals(Float.valueOf("1"), SQLDataType.REAL.convert((long) 1)); + assertEquals(Double.valueOf("1"), SQLDataType.DOUBLE.convert((long) 1)); + assertEquals(new BigInteger("1"), SQLDataType.DECIMAL_INTEGER.convert((long) 1)); + assertEquals(new BigDecimal("1"), SQLDataType.NUMERIC.convert((long) 1)); + assertEquals(Boolean.TRUE, SQLDataType.BOOLEAN.convert((long) 1)); + assertEquals("1", SQLDataType.VARCHAR.convert((long) 1)); + + assertEquals(Byte.valueOf("1"), SQLDataType.TINYINT.convert(1.1f)); + assertEquals(UByte.valueOf("1"), SQLDataType.TINYINTUNSIGNED.convert(1.1f)); + assertEquals(Short.valueOf("1"), SQLDataType.SMALLINT.convert(1.1f)); + assertEquals(UShort.valueOf("1"), SQLDataType.SMALLINTUNSIGNED.convert(1.1f)); + assertEquals(Integer.valueOf("1"), SQLDataType.INTEGER.convert(1.1f)); + assertEquals(UInteger.valueOf("1"), SQLDataType.INTEGERUNSIGNED.convert(1.1f)); + assertEquals(Long.valueOf("1"), SQLDataType.BIGINT.convert(1.1f)); + assertEquals(ULong.valueOf("1"), SQLDataType.BIGINTUNSIGNED.convert(1.1f)); + assertEquals(Float.valueOf("1.1"), SQLDataType.REAL.convert(1.1f)); + assertEquals(Double.valueOf("1.1"), SQLDataType.DOUBLE.convert(1.1f)); + assertEquals(new BigInteger("1"), SQLDataType.DECIMAL_INTEGER.convert(1.1f)); + assertEquals(new BigDecimal("1.1"), SQLDataType.NUMERIC.convert(1.1f)); + assertEquals(null, SQLDataType.BOOLEAN.convert(1.1f)); + assertEquals("1.1", SQLDataType.VARCHAR.convert(1.1f)); + + assertEquals(Byte.valueOf("1"), SQLDataType.TINYINT.convert(1.1)); + assertEquals(UByte.valueOf("1"), SQLDataType.TINYINTUNSIGNED.convert(1.1)); + assertEquals(Short.valueOf("1"), SQLDataType.SMALLINT.convert(1.1)); + assertEquals(UShort.valueOf("1"), SQLDataType.SMALLINTUNSIGNED.convert(1.1)); + assertEquals(Integer.valueOf("1"), SQLDataType.INTEGER.convert(1.1)); + assertEquals(UInteger.valueOf("1"), SQLDataType.INTEGERUNSIGNED.convert(1.1)); + assertEquals(Long.valueOf("1"), SQLDataType.BIGINT.convert(1.1)); + assertEquals(ULong.valueOf("1"), SQLDataType.BIGINTUNSIGNED.convert(1.1)); + assertEquals(Float.valueOf("1.1"), SQLDataType.REAL.convert(1.1)); + assertEquals(Double.valueOf("1.1"), SQLDataType.DOUBLE.convert(1.1)); + assertEquals(new BigInteger("1"), SQLDataType.DECIMAL_INTEGER.convert(1.1)); + assertEquals(new BigDecimal("1.1"), SQLDataType.NUMERIC.convert(1.1)); + assertEquals(null, SQLDataType.BOOLEAN.convert(1.1)); + assertEquals("1.1", SQLDataType.VARCHAR.convert(1.1)); + + assertEquals(Byte.valueOf("1"), SQLDataType.TINYINT.convert(new BigInteger("1"))); + assertEquals(UByte.valueOf("1"), SQLDataType.TINYINTUNSIGNED.convert(new BigInteger("1"))); + assertEquals(Short.valueOf("1"), SQLDataType.SMALLINT.convert(new BigInteger("1"))); + assertEquals(UShort.valueOf("1"), SQLDataType.SMALLINTUNSIGNED.convert(new BigInteger("1"))); + assertEquals(Integer.valueOf("1"), SQLDataType.INTEGER.convert(new BigInteger("1"))); + assertEquals(UInteger.valueOf("1"), SQLDataType.INTEGERUNSIGNED.convert(new BigInteger("1"))); + assertEquals(Long.valueOf("1"), SQLDataType.BIGINT.convert(new BigInteger("1"))); + assertEquals(ULong.valueOf("1"), SQLDataType.BIGINTUNSIGNED.convert(new BigInteger("1"))); + assertEquals(Float.valueOf("1"), SQLDataType.REAL.convert(new BigInteger("1"))); + assertEquals(Double.valueOf("1"), SQLDataType.DOUBLE.convert(new BigInteger("1"))); + assertEquals(new BigInteger("1"), SQLDataType.DECIMAL_INTEGER.convert(new BigInteger("1"))); + assertEquals(new BigDecimal("1"), SQLDataType.NUMERIC.convert(new BigInteger("1"))); + assertEquals(Boolean.TRUE, SQLDataType.BOOLEAN.convert(new BigInteger("1"))); + assertEquals("1", SQLDataType.VARCHAR.convert(new BigInteger("1"))); + + assertEquals(Byte.valueOf("1"), SQLDataType.TINYINT.convert(new BigDecimal("1.1"))); + assertEquals(UByte.valueOf("1"), SQLDataType.TINYINTUNSIGNED.convert(new BigDecimal("1.1"))); + assertEquals(Short.valueOf("1"), SQLDataType.SMALLINT.convert(new BigDecimal("1.1"))); + assertEquals(UShort.valueOf("1"), SQLDataType.SMALLINTUNSIGNED.convert(new BigDecimal("1.1"))); + assertEquals(Integer.valueOf("1"), SQLDataType.INTEGER.convert(new BigDecimal("1.1"))); + assertEquals(UInteger.valueOf("1"), SQLDataType.INTEGERUNSIGNED.convert(new BigDecimal("1.1"))); + assertEquals(Long.valueOf("1"), SQLDataType.BIGINT.convert(new BigDecimal("1.1"))); + assertEquals(ULong.valueOf("1"), SQLDataType.BIGINTUNSIGNED.convert(new BigDecimal("1.1"))); + assertEquals(Float.valueOf("1.1"), SQLDataType.REAL.convert(new BigDecimal("1.1"))); + assertEquals(Double.valueOf("1.1"), SQLDataType.DOUBLE.convert(new BigDecimal("1.1"))); + assertEquals(new BigInteger("1"), SQLDataType.DECIMAL_INTEGER.convert(new BigDecimal("1.1"))); + assertEquals(new BigDecimal("1.1"), SQLDataType.NUMERIC.convert(new BigDecimal("1.1"))); + assertEquals(null, SQLDataType.BOOLEAN.convert(new BigDecimal("1.1"))); + assertEquals("1.1", SQLDataType.VARCHAR.convert(new BigDecimal("1.1"))); + + assertEquals(new Date(1), SQLDataType.DATE.convert(new Date(1))); + assertEquals(new Time(1), SQLDataType.TIME.convert(new Date(1))); + assertEquals(new Timestamp(1), SQLDataType.TIMESTAMP.convert(new Date(1))); + + assertEquals(new Date(1), SQLDataType.DATE.convert(new Time(1))); + assertEquals(new Time(1), SQLDataType.TIME.convert(new Time(1))); + assertEquals(new Timestamp(1), SQLDataType.TIMESTAMP.convert(new Time(1))); + + assertEquals(new Date(1), SQLDataType.DATE.convert(new Timestamp(1))); + assertEquals(new Time(1), SQLDataType.TIME.convert(new Timestamp(1))); + assertEquals(new Timestamp(1), SQLDataType.TIMESTAMP.convert(new Timestamp(1))); + + assertEquals(new Date(1), SQLDataType.DATE.convert(1L)); + assertEquals(new Time(1), SQLDataType.TIME.convert(1L)); + assertEquals(new Timestamp(1), SQLDataType.TIMESTAMP.convert(1L)); + + // [#936] Primitive type conversion + A author1 = create().newRecord(TAuthor()); + assertEquals(Byte.valueOf("0"), author1.getValue(TAuthor_ID(), byte.class)); + assertEquals(Short.valueOf("0"), author1.getValue(TAuthor_ID(), short.class)); + assertEquals(Integer.valueOf("0"), author1.getValue(TAuthor_ID(), int.class)); + assertEquals(Long.valueOf("0"), author1.getValue(TAuthor_ID(), long.class)); + assertEquals(Float.valueOf("0"), author1.getValue(TAuthor_ID(), float.class)); + assertEquals(Double.valueOf("0"), author1.getValue(TAuthor_ID(), double.class)); + assertEquals(Boolean.FALSE, author1.getValue(TAuthor_ID(), boolean.class)); + assertEquals(Character.valueOf((char) 0), author1.getValue(TAuthor_ID(), char.class)); + + author1.setValue(TAuthor_ID(), 1); + assertEquals(Byte.valueOf("1"), author1.getValue(TAuthor_ID(), byte.class)); + assertEquals(Short.valueOf("1"), author1.getValue(TAuthor_ID(), short.class)); + assertEquals(Integer.valueOf("1"), author1.getValue(TAuthor_ID(), int.class)); + assertEquals(Long.valueOf("1"), author1.getValue(TAuthor_ID(), long.class)); + assertEquals(Float.valueOf("1"), author1.getValue(TAuthor_ID(), float.class)); + assertEquals(Double.valueOf("1"), author1.getValue(TAuthor_ID(), double.class)); + assertEquals(Boolean.TRUE, author1.getValue(TAuthor_ID(), boolean.class)); + assertEquals(Character.valueOf('1'), author1.getValue(TAuthor_ID(), char.class)); + + // [#926] Some additional date conversion checks + // --------------------------------------------- + A author2 = create().newRecord(TAuthor()); + author2.setValue(TAuthor_DATE_OF_BIRTH(), new Date(1)); + + Calendar calendar = Calendar.getInstance(); + calendar.setTimeInMillis(1); + + assertEquals(new Date(1), author2.getValue(TAuthor_DATE_OF_BIRTH(), Date.class)); + assertEquals(new Time(1), author2.getValue(TAuthor_DATE_OF_BIRTH(), Time.class)); + assertEquals(new Timestamp(1), author2.getValue(TAuthor_DATE_OF_BIRTH(), Timestamp.class)); + assertEquals(new java.util.Date(1), author2.getValue(TAuthor_DATE_OF_BIRTH(), java.util.Date.class)); + assertEquals(calendar, author2.getValue(TAuthor_DATE_OF_BIRTH(), Calendar.class)); + assertEquals(Long.valueOf(1), author2.getValue(TAuthor_DATE_OF_BIRTH(), Long.class)); + assertEquals(Long.valueOf(1), author2.getValue(TAuthor_DATE_OF_BIRTH(), long.class)); + assertEquals(ULong.valueOf(1), author2.getValue(TAuthor_DATE_OF_BIRTH(), ULong.class)); + + // [#933] Character conversion checks + // ---------------------------------- + author2.setValue(TAuthor_ID(), 1); + author2.setValue(TAuthor_LAST_NAME(), "a"); + assertEquals(Character.valueOf('1'), author2.getValue(TAuthor_ID(), Character.class)); + assertEquals(Character.valueOf('1'), author2.getValue(TAuthor_ID(), char.class)); + assertEquals(Character.valueOf('a'), author2.getValue(TAuthor_LAST_NAME(), Character.class)); + assertEquals(Character.valueOf('a'), author2.getValue(TAuthor_LAST_NAME(), char.class)); + assertEquals(null, author2.getValue(TAuthor_FIRST_NAME(), Character.class)); + assertEquals(Character.valueOf((char) 0), author2.getValue(TAuthor_FIRST_NAME(), char.class)); + + author2.setValue(TAuthor_ID(), 12); + author2.setValue(TAuthor_LAST_NAME(), "ab"); + try { + author2.getValue(TAuthor_ID(), Character.class); + fail(); + } + catch (DataTypeException expected) {} + try { + author2.getValue(TAuthor_ID(), char.class); + fail(); + } + catch (DataTypeException expected) {} + try { + author2.getValue(TAuthor_LAST_NAME(), Character.class); + fail(); + } + catch (DataTypeException expected) {} + try { + author2.getValue(TAuthor_LAST_NAME(), char.class); + fail(); + } + catch (DataTypeException expected) {} + } + + @Test + public void testUnsignedDataTypes() throws Exception { + if (TUnsigned() == null) { + log.info("SKIPPING", "Unsigned tests"); + return; + } + + jOOQAbstractTest.reset = false; + + // unsigned null values + // -------------------- + assertEquals(1, + create().insertInto(TUnsigned(), + TUnsigned_U_BYTE(), + TUnsigned_U_SHORT(), + TUnsigned_U_INT(), + TUnsigned_U_LONG()) + .values(null, null, null, null) + .execute()); + + assertEquals(1, create().selectCount().from(TUnsigned()).fetchOne(0)); + U u = create().selectFrom(TUnsigned()).fetchOne(); + assertNotNull(u); + assertNull(u.getValue(TUnsigned_U_BYTE())); + assertNull(u.getValue(TUnsigned_U_SHORT())); + assertNull(u.getValue(TUnsigned_U_INT())); + assertNull(u.getValue(TUnsigned_U_LONG())); + + // unsigned 1 + // ---------- + assertEquals(1, + create().insertInto(TUnsigned()) + .set(TUnsigned_U_BYTE(), Unsigned.ubyte((byte) 1)) + .set(TUnsigned_U_SHORT(), Unsigned.ushort((short) 1)) + .set(TUnsigned_U_INT(), Unsigned.uint(1)) + .set(TUnsigned_U_LONG(), Unsigned.ulong(1L)) + .execute()); + + assertEquals(2, create().selectCount().from(TUnsigned()).fetchOne(0)); + u = create().selectFrom(TUnsigned()).where(TUnsigned_U_INT().equal(Unsigned.uint(1))).fetchOne(); + assertNotNull(u); + assertEquals(Unsigned.ubyte("1"), u.getValue(TUnsigned_U_BYTE())); + assertEquals(Unsigned.ushort("1"), u.getValue(TUnsigned_U_SHORT())); + assertEquals(Unsigned.uint("1"), u.getValue(TUnsigned_U_INT())); + assertEquals(Unsigned.ulong("1"), u.getValue(TUnsigned_U_LONG())); + + assertEquals("1", u.getValue(TUnsigned_U_BYTE(), String.class)); + assertEquals("1", u.getValue(TUnsigned_U_SHORT(), String.class)); + assertEquals("1", u.getValue(TUnsigned_U_INT(), String.class)); + assertEquals("1", u.getValue(TUnsigned_U_LONG(), String.class)); + + assertEquals(Unsigned.ubyte("1"), u.getValue(TUnsigned_U_BYTE())); + assertEquals(Unsigned.ushort("1"), u.getValue(TUnsigned_U_SHORT())); + assertEquals(Unsigned.uint("1"), u.getValue(TUnsigned_U_INT())); + assertEquals(Unsigned.ulong("1"), u.getValue(TUnsigned_U_LONG())); + + // unsigned max-values + // ------------------- + assertEquals(1, + create().insertInto(TUnsigned()) + .set(TUnsigned_U_BYTE(), Unsigned.ubyte((byte) -1)) + .set(TUnsigned_U_SHORT(), Unsigned.ushort((short) -1)) + .set(TUnsigned_U_INT(), Unsigned.uint(-1)) + .set(TUnsigned_U_LONG(), Unsigned.ulong(-1L)) + .execute()); + + assertEquals(3, create().selectCount().from(TUnsigned()).fetchOne(0)); + u = create().selectFrom(TUnsigned()).where(TUnsigned_U_INT().equal(Unsigned.uint(-1))).fetchOne(); + assertNotNull(u); + assertEquals(Unsigned.ubyte(UByte.MAX_VALUE), u.getValue(TUnsigned_U_BYTE())); + assertEquals(Unsigned.ushort(UShort.MAX_VALUE), u.getValue(TUnsigned_U_SHORT())); + assertEquals(Unsigned.uint(UInteger.MAX_VALUE), u.getValue(TUnsigned_U_INT())); + assertEquals(Unsigned.ulong(ULong.MAX_VALUE), u.getValue(TUnsigned_U_LONG())); + + assertEquals((byte) -1, u.getValue(TUnsigned_U_BYTE()).byteValue()); + assertEquals((short) -1, u.getValue(TUnsigned_U_SHORT()).shortValue()); + assertEquals(-1, u.getValue(TUnsigned_U_INT()).intValue()); + assertEquals(-1L, u.getValue(TUnsigned_U_LONG()).longValue()); + } + + @Test + public void testNumbers() throws Exception { + jOOQAbstractTest.reset = false; + + // Insert some numbers + // ------------------- + InsertSetMoreStep set = + create().insertInto(T639()) + .set(T639_ID(), 1) + .set(T639_BIG_DECIMAL(), new BigDecimal("1234.5670")) + .set(T639_BIG_INTEGER(), new BigInteger("1234567890")) + .set(T639_BYTE_DECIMAL(), (byte) 2) + .set(T639_INTEGER(), 3) + .set(T639_INTEGER_DECIMAL(), 4) + .set(T639_LONG(), 5L) + .set(T639_LONG_DECIMAL(), 6L) + .set(T639_SHORT(), (short) 7) + .set(T639_SHORT_DECIMAL(), (short) 8); + + if (T639_BYTE() != null) set.set(T639_BYTE(), (byte) 9); + if (T639_DOUBLE() != null) set.set(T639_DOUBLE(), 10.125); + if (T639_FLOAT() != null) set.set(T639_FLOAT(), 11.375f); + + assertEquals(1, set.execute()); + + T639 record = create().fetchOne(T639()); + assertEquals(1, (int) record.getValue(T639_ID())); + assertTrue(new BigDecimal("1234.567").compareTo(record.getValue(T639_BIG_DECIMAL())) == 0); + assertEquals(new BigInteger("1234567890"), record.getValue(T639_BIG_INTEGER())); + assertEquals(2, (byte) record.getValue(T639_BYTE_DECIMAL())); + assertEquals(3, (int) record.getValue(T639_INTEGER())); + assertEquals(4, (int) record.getValue(T639_INTEGER_DECIMAL())); + assertEquals(5L, (long) record.getValue(T639_LONG())); + assertEquals(6L, (long) record.getValue(T639_LONG_DECIMAL())); + assertEquals(7, (short) record.getValue(T639_SHORT())); + assertEquals(8, (short) record.getValue(T639_SHORT_DECIMAL())); + + if (T639_BYTE() != null) assertEquals(9, (byte) record.getValue(T639_BYTE())); + if (T639_DOUBLE() != null) assertEquals(10.125, (double) record.getValue(T639_DOUBLE())); + if (T639_FLOAT() != null) assertEquals(11.375f, (float) record.getValue(T639_FLOAT())); + + // Various BigDecimal tests + // ------------------------ + if (getDialect() == SQLDialect.SQLITE) { + log.info("SKIPPING", "Advanced BigDecimal tests"); + } + else { + create().insertInto(T639(), T639_ID(), T639_BIG_DECIMAL()) + .values(2, new BigDecimal("123456789012345.67899")) + .values(3, new BigDecimal("999999999999999.99999")) + .values(4, new BigDecimal("1.00001")) + .values(5, new BigDecimal("0.00001")) + .values(6, new BigDecimal("0.00001")) + .execute(); + + Result result = + create().select(T639_ID(), T639_BIG_DECIMAL()) + .from(T639()) + .where(T639_ID().between(2, 6)) + .orderBy(T639_ID()) + .fetch(); + + assertEquals(Arrays.asList(2, 3, 4, 5, 6), result.getValues(0)); + assertEquals(new BigDecimal("123456789012345.67899"), result.getValue(0, 1)); + assertEquals(new BigDecimal("999999999999999.99999"), result.getValue(1, 1)); + assertEquals(new BigDecimal("1.00001"), result.getValue(2, 1)); + assertEquals(new BigDecimal("0.00001"), result.getValue(3, 1)); + assertEquals(new BigDecimal("0.00001"), result.getValue(4, 1)); + } + } + + @Test + public void testDateTime() throws Exception { + + // [#1009] SQL DATE doesn't have a time zone. SQL TIMESTAMP does + long tsShift = -3600000; + + Record record = + create().select( + val(new Date(0)).as("d"), + val(new Time(0)).as("t"), + val(new Timestamp(0)).as("ts") + ).fetchOne(); + + // ... (except for SQLite) + if (getDialect() != SQLITE) + assertEquals(new Date(tsShift), record.getValue("d")); + + assertEquals(new Time(0), record.getValue("t")); + assertEquals(new Timestamp(0), record.getValue("ts")); + + // Interval tests + // -------------- + if (getDialect() == ASE || + getDialect() == DB2 || + getDialect() == DERBY || + getDialect() == CUBRID || + getDialect() == H2 || + getDialect() == MYSQL || + getDialect() == SQLSERVER || + getDialect() == SQLITE || + getDialect() == SYBASE) { + + log.info("SKIPPING", "Interval tests"); + } + + // Other dialects support actual interval data types + else { + record = + create().select( + val(new YearToMonth(1, 1)).as("iyplus"), + val(new YearToMonth(0)).as("iy"), + val(new YearToMonth(1, 1).neg()).as("iyminus"), + + val(new DayToSecond(1, 1, 1, 1)).as("idplus"), + val(new DayToSecond(0)).as("id"), + val(new DayToSecond(1, 1, 1, 1).neg()).as("idminus") + ).fetchOne(); + + assertEquals(new YearToMonth(1, 1), record.getValue("iyplus")); + assertEquals(new YearToMonth(0), record.getValue("iy")); + assertEquals(new YearToMonth(1, 1).neg(), record.getValue("iyminus")); + + assertEquals(new DayToSecond(1, 1, 1, 1), record.getValue("idplus")); + assertEquals(new DayToSecond(0), record.getValue("id")); + assertEquals(new DayToSecond(1, 1, 1, 1).neg(), record.getValue("idminus")); + // TODO: Add tests for reading date / time / interval types into pojos + + // [#566] INTERVAL arithmetic: multiplication + // ------------------------------------------ + record = + create().select( + val(new YearToMonth(1)).div(2).as("y1"), + val(new YearToMonth(1)).mul(2).as("y2"), + val(new YearToMonth(1)).div(2).mul(2).as("y3"), + + val(new DayToSecond(1)).div(2).as("d1"), + val(new DayToSecond(1)).mul(2).as("d2"), + val(new DayToSecond(1)).div(2).mul(2).as("d3") + ).fetchOne(); + + assertEquals(new YearToMonth(0, 6), record.getValue("y1")); + assertEquals(new YearToMonth(2), record.getValue("y2")); + assertEquals(new YearToMonth(1), record.getValue("y3")); + + assertEquals(new DayToSecond(0, 12), record.getValue("d1")); + assertEquals(new DayToSecond(2), record.getValue("d2")); + assertEquals(new DayToSecond(1), record.getValue("d3")); + } + } + + @Test + public void testDateTimeArithmetic() throws Exception { + + // [#1009] SQL DATE doesn't have a time zone. SQL TIMESTAMP does + long tsShift = -3600000; + + // [#566] INTERVAL arithmetic: addition + // ------------------------------------ + Record record = + create().select( + + // Extra care needs to be taken with Postgres negative DAY TO SECOND + // intervals. Postgres allows for having several signs in intervals + val(new Date(0)).add(1).as("d1"), + val(new Date(0)).add(-1).as("d2a"), + val(new Date(0)).sub(1).as("d2b"), + val(new Date(0)).add(new YearToMonth(1, 6)).as("d3"), + val(new Date(0)).add(new YearToMonth(1, 6).neg()).as("d4a"), + val(new Date(0)).sub(new YearToMonth(1, 6)).as("d4b"), + val(new Date(0)).add(new DayToSecond(2)).as("d5"), + val(new Date(0)).add(new DayToSecond(2).neg()).as("d6a"), + val(new Date(0)).sub(new DayToSecond(2)).as("d6b"), + + val(new Timestamp(0)).add(1).as("ts1"), + val(new Timestamp(0)).add(-1).as("ts2a"), + val(new Timestamp(0)).sub(1).as("ts2b"), + val(new Timestamp(0)).add(new YearToMonth(1, 6)).as("ts3"), + val(new Timestamp(0)).add(new YearToMonth(1, 6).neg()).as("ts4a"), + val(new Timestamp(0)).sub(new YearToMonth(1, 6)).as("ts4b"), + val(new Timestamp(0)).add(new DayToSecond(2)).as("ts5"), + val(new Timestamp(0)).add(new DayToSecond(2).neg()).as("ts6a"), + val(new Timestamp(0)).sub(new DayToSecond(2)).as("ts6b"), + val(new Timestamp(0)).add(new DayToSecond(2, 6)).as("ts7"), + val(new Timestamp(0)).add(new DayToSecond(2, 6).neg()).as("ts8a"), + val(new Timestamp(0)).sub(new DayToSecond(2, 6)).as("ts8b"), + + // Dummy field for simpler testing + literal("'dummy'") + ).fetchOne(); + + Calendar cal; + + cal = cal(); + cal.add(Calendar.DATE, 1); + assertEquals(new Date(cal.getTimeInMillis()), record.getValue("d1")); + assertEquals(new Timestamp(cal.getTimeInMillis() - tsShift), record.getValue("ts1")); + + cal = cal(); + cal.add(Calendar.DATE, -1); + assertEquals(new Date(cal.getTimeInMillis()), record.getValue("d2a")); + assertEquals(new Date(cal.getTimeInMillis()), record.getValue("d2b")); + assertEquals(new Timestamp(cal.getTimeInMillis() - tsShift), record.getValue("ts2a")); + assertEquals(new Timestamp(cal.getTimeInMillis() - tsShift), record.getValue("ts2b")); + + cal = cal(); + cal.add(Calendar.MONTH, 18); + assertEquals(new Date(cal.getTimeInMillis()), record.getValue("d3")); + assertEquals(new Timestamp(cal.getTimeInMillis() - tsShift), record.getValue("ts3")); + + cal = cal(); + cal.add(Calendar.MONTH, -18); + assertEquals(new Date(cal.getTimeInMillis()), record.getValue("d4a")); + assertEquals(new Date(cal.getTimeInMillis()), record.getValue("d4b")); + assertEquals(new Timestamp(cal.getTimeInMillis() - tsShift), record.getValue("ts4a")); + assertEquals(new Timestamp(cal.getTimeInMillis() - tsShift), record.getValue("ts4b")); + + cal = cal(); + cal.add(Calendar.DATE, 2); + assertEquals(new Date(cal.getTimeInMillis()), record.getValue("d5")); + assertEquals(new Timestamp(cal.getTimeInMillis() - tsShift), record.getValue("ts5")); + + cal = cal(); + cal.add(Calendar.DATE, -2); + assertEquals(new Date(cal.getTimeInMillis()), record.getValue("d6a")); + assertEquals(new Date(cal.getTimeInMillis()), record.getValue("d6b")); + assertEquals(new Timestamp(cal.getTimeInMillis() - tsShift), record.getValue("ts6a")); + assertEquals(new Timestamp(cal.getTimeInMillis() - tsShift), record.getValue("ts6b")); + + cal = cal(); + cal.add(Calendar.DATE, 2); + cal.add(Calendar.HOUR, 6); + assertEquals(new Timestamp(cal.getTimeInMillis() - tsShift), record.getValue("ts7")); + + cal = cal(); + cal.add(Calendar.DATE, -2); + cal.add(Calendar.HOUR, -6); + assertEquals(new Timestamp(cal.getTimeInMillis() - tsShift), record.getValue("ts8a")); + assertEquals(new Timestamp(cal.getTimeInMillis() - tsShift), record.getValue("ts8b")); + + // [#566] INTERVAL arithmetic: difference + // -------------------------------------- + record = + create().select( + dateDiff(new Date(0), new Date(30 * 60 * 60 * 1000L)).as("d1"), + dateDiff(new Date(30 * 60 * 60 * 1000L), new Date(0)).as("d2"), + //TODO [#566] Make this work! + //timeDiff(new Time(0), new Time(60 * 60 * 1000L)).as("t1"), + //timeDiff(new Time(60 * 60 * 1000L), new Time(0)).as("t2"), + timestampDiff(new Timestamp(0), new Timestamp(30 * 60 * 60 * 1000L)).as("ts1"), + timestampDiff(new Timestamp(30 * 60 * 60 * 1000L), new Timestamp(0)).as("ts2"), + + // Dummy field for simpler testing + literal("'dummy'") + ).fetchOne(); + + assertEquals(-1, record.getValue("d1")); + assertEquals(1, record.getValue("d2")); + //assertEquals(new DayToSecond(0, 1).neg(), record.getValue("t1")); + //assertEquals(new DayToSecond(0, 1), record.getValue("t2")); + assertEquals(new DayToSecond(1, 6).neg(), record.getValue("ts1")); + assertEquals(new DayToSecond(1, 6), record.getValue("ts2")); + } + + private Calendar cal() { + Calendar cal = Calendar.getInstance(); + cal.setTimeInMillis(-3600000); + return cal; + } + } diff --git a/jOOQ-test/src/org/jooq/test/_/testcases/EnumTests.java b/jOOQ-test/src/org/jooq/test/_/testcases/EnumTests.java new file mode 100644 index 00000000000..ea0fffd84f2 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/_/testcases/EnumTests.java @@ -0,0 +1,295 @@ +/** + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com + * All rights reserved. + * + * This software is licensed to you under the Apache License, Version 2.0 + * (the "License"); You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * 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 "jOOQ" 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 COPYRIGHT OWNER 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. + */ +package org.jooq.test._.testcases; + +import static junit.framework.Assert.assertEquals; +import static junit.framework.Assert.assertNotNull; +import static org.jooq.tools.reflect.Reflect.on; + +import java.util.List; + +import org.jooq.EnumType; +import org.jooq.Field; +import org.jooq.MasterDataType; +import org.jooq.Result; +import org.jooq.TableRecord; +import org.jooq.UpdatableRecord; +import org.jooq.test.BaseTest; +import org.jooq.test.jOOQAbstractTest; +import org.jooq.test._.converters.Boolean_10; +import org.jooq.test._.converters.Boolean_TF_LC; +import org.jooq.test._.converters.Boolean_TF_UC; +import org.jooq.test._.converters.Boolean_YES_NO_LC; +import org.jooq.test._.converters.Boolean_YES_NO_UC; +import org.jooq.test._.converters.Boolean_YN_LC; +import org.jooq.test._.converters.Boolean_YN_UC; +import org.jooq.tools.reflect.Reflect; +import org.jooq.tools.reflect.ReflectException; + +import org.junit.Test; + +public class EnumTests< + A extends UpdatableRecord, + B extends UpdatableRecord, + S extends UpdatableRecord, + B2S extends UpdatableRecord, + BS extends UpdatableRecord, + L extends TableRecord, + X extends TableRecord, + DATE extends UpdatableRecord, + BOOL extends UpdatableRecord, + D extends UpdatableRecord, + T extends UpdatableRecord, + U extends TableRecord, + I extends TableRecord, + IPK extends UpdatableRecord, + T658 extends TableRecord, + T725 extends UpdatableRecord, + T639 extends UpdatableRecord, + T785 extends TableRecord> +extends BaseTest { + + public EnumTests(jOOQAbstractTest delegate) { + super(delegate); + } + + @SuppressWarnings({ "unchecked", "rawtypes" }) + @Test + public void testEnums() throws Exception { + if (TBook_STATUS() == null) { + log.info("SKIPPING", "enums test"); + return; + } + + jOOQAbstractTest.reset = false; + + B book = create() + .selectFrom(TBook()) + .where(TBook_PUBLISHED_IN().equal(1990)) + .fetchOne(); + Enum value = book.getValue(TBook_STATUS()); + assertEquals("SOLD_OUT", value.name()); + assertEquals("SOLD OUT", ((EnumType) value).getLiteral()); + + // Another copy of the original record + book = create().fetchOne(TBook(), TBook_TITLE().equal("1984")); + book.setValue((Field) TBook_STATUS(), Enum.valueOf(value.getClass(), "ON_STOCK")); + book.store(); + + book = create().fetchOne(TBook(), TBook_TITLE().equal("1984")); + value = book.getValue(TBook_STATUS()); + assertEquals("ON_STOCK", value.name()); + assertEquals("ON STOCK", ((EnumType) value).getLiteral()); + } + + @Test + public > void testCustomEnums() throws Exception { + jOOQAbstractTest.reset = false; + + // This does not yet work correctly for Sybase ASE, Postgres + // Sybase: Is casting enums to unknown enum types + // ASE: Cannot implicitly cast '1' to 1 + + // TODO [#677] [#1013] This doesn't work correctly yet for + // Ingres, HSQLDB, H2, Derby, Sybase ASE + // Double-check again for Postgres + + // Insertion + // -------------------------------------------------------------------- + assertEquals(1, + create().insertInto(TBooleans()) + .set(TBooleans_ID(), 1) + .set(TBooleans_BOOLEAN_10(), Boolean_10.ZERO) + .set(TBooleans_Boolean_TF_LC(), Boolean_TF_LC.FALSE) + .set(TBooleans_Boolean_TF_UC(), Boolean_TF_UC.FALSE) + .set(TBooleans_Boolean_YES_NO_LC(), Boolean_YES_NO_LC.no) + .set(TBooleans_Boolean_YES_NO_UC(), Boolean_YES_NO_UC.NO) + .set(TBooleans_Boolean_YN_LC(), Boolean_YN_LC.n) + .set(TBooleans_Boolean_YN_UC(), Boolean_YN_UC.N) +// .set(TBooleans_C(), false) +// .set(TBooleans_VC(), false) +// .set(TBooleans_N(), false) + .execute()); + + assertEquals(1, + create().insertInto(TBooleans()) + .set(TBooleans_ID(), 2) + .set(TBooleans_BOOLEAN_10(), Boolean_10.ONE) + .set(TBooleans_Boolean_TF_LC(), Boolean_TF_LC.TRUE) + .set(TBooleans_Boolean_TF_UC(), Boolean_TF_UC.TRUE) + .set(TBooleans_Boolean_YES_NO_LC(), Boolean_YES_NO_LC.yes) + .set(TBooleans_Boolean_YES_NO_UC(), Boolean_YES_NO_UC.YES) + .set(TBooleans_Boolean_YN_LC(), Boolean_YN_LC.y) + .set(TBooleans_Boolean_YN_UC(), Boolean_YN_UC.Y) +// .set(TBooleans_C(), true) +// .set(TBooleans_VC(), true) +// .set(TBooleans_N(), true) + .execute()); + + // Selection + // -------------------------------------------------------------------- + Result result = + create().selectFrom(TBooleans()) + .where(TBooleans_ID().in(1, 2)) + .and(TBooleans_BOOLEAN_10().in(Boolean_10.ONE, Boolean_10.ZERO)) + .and(TBooleans_Boolean_TF_LC().in(Boolean_TF_LC.TRUE, Boolean_TF_LC.FALSE)) + .and(TBooleans_Boolean_TF_UC().in(Boolean_TF_UC.TRUE, Boolean_TF_UC.FALSE)) + .and(TBooleans_Boolean_YES_NO_LC().in(Boolean_YES_NO_LC.yes, Boolean_YES_NO_LC.no)) + .and(TBooleans_Boolean_YES_NO_UC().in(Boolean_YES_NO_UC.YES, Boolean_YES_NO_UC.NO)) + .and(TBooleans_Boolean_YN_LC().in(Boolean_YN_LC.y, Boolean_YN_LC.n)) + .and(TBooleans_Boolean_YN_UC().in(Boolean_YN_UC.Y, Boolean_YN_UC.N)) + .orderBy(TBooleans_ID().asc()) + .fetch(); + + assertEquals(1, (int) result.getValue(0, TBooleans_ID())); + assertEquals(2, (int) result.getValue(1, TBooleans_ID())); + + assertEquals(Boolean_10.ZERO, result.getValue(0, TBooleans_BOOLEAN_10())); + assertEquals(Boolean_10.ONE, result.getValue(1, TBooleans_BOOLEAN_10())); + + assertEquals(Boolean_TF_LC.FALSE, result.getValue(0, TBooleans_Boolean_TF_LC())); + assertEquals(Boolean_TF_LC.TRUE, result.getValue(1, TBooleans_Boolean_TF_LC())); + + assertEquals(Boolean_TF_UC.FALSE, result.getValue(0, TBooleans_Boolean_TF_UC())); + assertEquals(Boolean_TF_UC.TRUE, result.getValue(1, TBooleans_Boolean_TF_UC())); + + assertEquals(Boolean_YES_NO_LC.no, result.getValue(0, TBooleans_Boolean_YES_NO_LC())); + assertEquals(Boolean_YES_NO_LC.yes, result.getValue(1, TBooleans_Boolean_YES_NO_LC())); + + assertEquals(Boolean_YES_NO_UC.NO, result.getValue(0, TBooleans_Boolean_YES_NO_UC())); + assertEquals(Boolean_YES_NO_UC.YES, result.getValue(1, TBooleans_Boolean_YES_NO_UC())); + + assertEquals(Boolean_YN_LC.n, result.getValue(0, TBooleans_Boolean_YN_LC())); + assertEquals(Boolean_YN_LC.y, result.getValue(1, TBooleans_Boolean_YN_LC())); + + assertEquals(Boolean_YN_UC.N, result.getValue(0, TBooleans_Boolean_YN_UC())); + assertEquals(Boolean_YN_UC.Y, result.getValue(1, TBooleans_Boolean_YN_UC())); + +// assertFalse(result.getValue(0, TBooleans_C())); +// assertTrue(result.getValue(1, TBooleans_C())); +// +// assertFalse(result.getValue(0, TBooleans_VC())); +// assertTrue(result.getValue(1, TBooleans_VC())); +// +// assertFalse(result.getValue(0, TBooleans_N())); +// assertTrue(result.getValue(1, TBooleans_N())); + + // Conversion to custom POJOs + // -------------------------------------------------------------------- + try { + Reflect booleans = on(TBooleans().getClass().getPackage().getName() + ".pojos." + TBooleans().getClass().getSimpleName()); + + List b = + create().selectFrom(TBooleans()) + .orderBy(TBooleans_ID().asc()) + .fetchInto((Class) booleans.get()); + + assertEquals(2, b.size()); + assertEquals(1, on(b.get(0)).call("getId").get()); + assertEquals(2, on(b.get(1)).call("getId").get()); + + assertEquals(Boolean_10.ZERO, on(b.get(0)).call("getOneZero").get()); + assertEquals(Boolean_10.ONE, on(b.get(1)).call("getOneZero").get()); + + assertEquals(Boolean_TF_LC.FALSE, on(b.get(0)).call("getTrueFalseLc").get()); + assertEquals(Boolean_TF_LC.TRUE, on(b.get(1)).call("getTrueFalseLc").get()); + + assertEquals(Boolean_TF_UC.FALSE, on(b.get(0)).call("getTrueFalseUc").get()); + assertEquals(Boolean_TF_UC.TRUE, on(b.get(1)).call("getTrueFalseUc").get()); + + assertEquals(Boolean_YES_NO_LC.no, on(b.get(0)).call("getYesNoLc").get()); + assertEquals(Boolean_YES_NO_LC.yes, on(b.get(1)).call("getYesNoLc").get()); + + assertEquals(Boolean_YES_NO_UC.NO, on(b.get(0)).call("getYesNoUc").get()); + assertEquals(Boolean_YES_NO_UC.YES, on(b.get(1)).call("getYesNoUc").get()); + + assertEquals(Boolean_YN_LC.n, on(b.get(0)).call("getYNLc").get()); + assertEquals(Boolean_YN_LC.y, on(b.get(1)).call("getYNLc").get()); + + assertEquals(Boolean_YN_UC.N, on(b.get(0)).call("getYNUc").get()); + assertEquals(Boolean_YN_UC.Y, on(b.get(1)).call("getYNUc").get()); + } + catch (ReflectException e) { + log.info("SKIPPING", "Generated POJO tests"); + } + + } + + @SuppressWarnings({ "unchecked", "rawtypes" }) + @Test + public void testMasterData() throws Exception { + if (!supportsReferences()) { + log.info("SKIPPING", "master data test"); + return; + } + + jOOQAbstractTest.reset = false; + + B book = create().fetchOne(TBook(), TBook_TITLE().equal("1984")); + + Enum value = (Enum) book.getValue(TBook_LANGUAGE_ID()); + assertEquals(Integer.valueOf(1), ((MasterDataType) value).getPrimaryKey()); + assertEquals("en", value.name()); + + book.setValue((Field) TBook_LANGUAGE_ID(), Enum.valueOf(value.getClass(), "de")); + book.store(); + + book = create().fetchOne(TBook(), TBook_TITLE().equal("1984")); + value = (Enum) book.getValue(TBook_LANGUAGE_ID()); + assertEquals(Integer.valueOf(2), ((MasterDataType) value).getPrimaryKey()); + assertEquals("de", value.name()); + + // [#658] - General master data test + T658 master = create().fetchOne(T658()); + assertNotNull(master); + assertEquals("A", invoke(master.getValue(0), "getPrimaryKey").toString().trim()); + assertEquals("A", invoke(master.getValue(0), "getId").toString().trim()); + assertEquals(1, invoke(master.getValue(1), "getPrimaryKey")); + assertEquals(1, invoke(master.getValue(1), "getId")); + assertEquals(1L, invoke(master.getValue(2), "getPrimaryKey")); + assertEquals(1L, invoke(master.getValue(2), "getId")); + + assertEquals("B", invoke(master.getValue(3), "getPrimaryKey").toString().trim()); + assertEquals("B", invoke(master.getValue(3), "getId").toString().trim()); + assertEquals("B", invoke(master.getValue(3), "getCd").toString().trim()); + assertEquals(2, invoke(master.getValue(4), "getPrimaryKey")); + assertEquals(2, invoke(master.getValue(4), "getId")); + assertEquals(2, invoke(master.getValue(4), "getCd")); + assertEquals(2L, invoke(master.getValue(5), "getPrimaryKey")); + assertEquals(2L, invoke(master.getValue(5), "getId")); + assertEquals(2L, invoke(master.getValue(5), "getCd")); + } +} diff --git a/jOOQ-test/src/org/jooq/test/_/testcases/ExecuteListenerTests.java b/jOOQ-test/src/org/jooq/test/_/testcases/ExecuteListenerTests.java new file mode 100644 index 00000000000..beeee09b06e --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/_/testcases/ExecuteListenerTests.java @@ -0,0 +1,851 @@ +/** + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com + * All rights reserved. + * + * This software is licensed to you under the Apache License, Version 2.0 + * (the "License"); You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * 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 "jOOQ" 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 COPYRIGHT OWNER 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. + */ +package org.jooq.test._.testcases; + +import static java.util.Arrays.asList; +import static junit.framework.Assert.assertEquals; +import static junit.framework.Assert.assertNotNull; +import static junit.framework.Assert.assertNull; +import static junit.framework.Assert.assertTrue; +import static junit.framework.Assert.fail; +import static org.jooq.conf.SettingsTools.executePreparedStatements; +import static org.jooq.impl.Factory.param; +import static org.jooq.impl.Factory.val; +import static org.jooq.tools.reflect.Reflect.on; + +import java.util.ArrayList; +import java.util.HashMap; +import java.util.LinkedList; +import java.util.List; +import java.util.Queue; + +import org.jooq.ExecuteContext; +import org.jooq.ExecuteListener; +import org.jooq.ExecuteType; +import org.jooq.Field; +import org.jooq.Result; +import org.jooq.TableRecord; +import org.jooq.UpdatableRecord; +import org.jooq.conf.Settings; +import org.jooq.conf.SettingsTools; +import org.jooq.impl.Factory; +import org.jooq.test.BaseTest; +import org.jooq.test.jOOQAbstractTest; + +import org.junit.Test; + +public class ExecuteListenerTests< + A extends UpdatableRecord, + B extends UpdatableRecord, + S extends UpdatableRecord, + B2S extends UpdatableRecord, + BS extends UpdatableRecord, + L extends TableRecord, + X extends TableRecord, + DATE extends UpdatableRecord, + BOOL extends UpdatableRecord, + D extends UpdatableRecord, + T extends UpdatableRecord, + U extends TableRecord, + I extends TableRecord, + IPK extends UpdatableRecord, + T658 extends TableRecord, + T725 extends UpdatableRecord, + T639 extends UpdatableRecord, + T785 extends TableRecord> +extends BaseTest { + + public ExecuteListenerTests(jOOQAbstractTest delegate) { + super(delegate); + } + + @Test + public void testExecuteListenerOnResultQuery() throws Exception { + Factory create = create(new Settings() + .withExecuteListeners(ResultQueryListener.class.getName())); + + create.setData("Foo", "Bar"); + create.setData("Bar", "Baz"); + + Result result = + create.select(TBook_ID(), val("Hello")) + .from(TBook()) + .where(TBook_ID().in(1, 2)) + .fetch(); + + // [#1145] When inlining variables, no bind events are triggered + int plus = (SettingsTools.executePreparedStatements(create.getSettings()) ? 2 : 0); + + // Check correct order of listener method invocation + assertEquals(1, ResultQueryListener.start); + assertEquals(2, ResultQueryListener.renderStart); + assertEquals(3, ResultQueryListener.renderEnd); + assertEquals(4, ResultQueryListener.prepareStart); + assertEquals(5, ResultQueryListener.prepareEnd); + assertEquals(plus > 0 ? 6 : 0, ResultQueryListener.bindStart); + assertEquals(plus > 0 ? 7 : 0, ResultQueryListener.bindEnd); + assertEquals(6 + plus, ResultQueryListener.executeStart); + assertEquals(7 + plus, ResultQueryListener.executeEnd); + assertEquals(8 + plus, ResultQueryListener.fetchStart); + assertEquals(9 + plus, ResultQueryListener.resultStart); + assertEquals(asList(10 + plus, 12 + plus), ResultQueryListener.recordStart); + assertEquals(asList(11 + plus, 13 + plus), ResultQueryListener.recordEnd); + assertEquals(14 + plus, ResultQueryListener.resultEnd); + assertEquals(15 + plus, ResultQueryListener.fetchEnd); + assertEquals(16 + plus, ResultQueryListener.end); + assertEquals(2, result.size()); + } + + public static class ResultQueryListener implements ExecuteListener { + + // A counter that is incremented in callback methods + private static int callbackCount = 0; + + // Fields that are used to check whether callback methods were called + // in the expected order + public static int start; + public static int renderStart; + public static int renderEnd; + public static int prepareStart; + public static int prepareEnd; + public static int bindStart; + public static int bindEnd; + public static int executeStart; + public static int executeEnd; + public static int fetchStart; + public static int resultStart; + public static List recordStart = new ArrayList(); + public static List recordEnd = new ArrayList(); + public static int resultEnd; + public static int fetchEnd; + public static int end; + + public static Queue ids = new LinkedList(asList(1, 2)); + + @SuppressWarnings("serial") + private void checkBase(ExecuteContext ctx) { + assertNotNull(ctx.query()); + assertNotNull(ctx.batchQueries()); + assertTrue(ctx.query().toString().toLowerCase().contains("select")); + assertTrue(ctx.batchQueries()[0].toString().toLowerCase().contains("select")); + assertEquals(ctx.query(), ctx.batchQueries()[0]); + assertEquals(1, ctx.batchSQL().length); + + assertEquals("Bar", ctx.getData("Foo")); + assertEquals("Baz", ctx.getData("Bar")); + assertEquals(new HashMap() {{ + put("Foo", "Bar"); + put("Bar", "Baz"); + }}, ctx.getData()); + + assertNull(ctx.routine()); + assertEquals(ExecuteType.READ, ctx.type()); + } + + private void checkSQL(ExecuteContext ctx, boolean patched) { + assertTrue(ctx.batchSQL()[0].toLowerCase().contains("select")); + assertTrue(ctx.sql().toLowerCase().contains("select")); + assertEquals(ctx.sql(), ctx.batchSQL()[0]); + + if (patched) { + assertTrue(ctx.sql().toLowerCase().contains("as my_field")); + } + } + + @SuppressWarnings("unused") + private void checkStatement(ExecuteContext ctx, boolean patched) { + assertNotNull(ctx.statement()); + } + + @SuppressWarnings("unused") + private void checkResultSet(ExecuteContext ctx, boolean patched) { + assertNotNull(ctx.resultSet()); + } + + @Override + public void start(ExecuteContext ctx) { + start = ++callbackCount; + checkBase(ctx); + + assertNull(ctx.batchSQL()[0]); + assertNull(ctx.sql()); + assertNull(ctx.statement()); + assertNull(ctx.resultSet()); + assertNull(ctx.record()); + assertNull(ctx.result()); + } + + @Override + public void renderStart(ExecuteContext ctx) { + renderStart = ++callbackCount; + checkBase(ctx); + + assertNull(ctx.batchSQL()[0]); + assertNull(ctx.sql()); + assertNull(ctx.statement()); + assertNull(ctx.resultSet()); + assertNull(ctx.record()); + assertNull(ctx.result()); + } + + @Override + public void renderEnd(ExecuteContext ctx) { + renderEnd = ++callbackCount; + checkBase(ctx); + checkSQL(ctx, false); + + assertNull(ctx.statement()); + assertNull(ctx.resultSet()); + assertNull(ctx.record()); + assertNull(ctx.result()); + + ctx.sql(ctx.sql().replaceFirst("(?i:from)", "as my_field from")); + checkSQL(ctx, true); + } + + @Override + public void prepareStart(ExecuteContext ctx) { + prepareStart = ++callbackCount; + checkBase(ctx); + checkSQL(ctx, true); + + assertNull(ctx.statement()); + assertNull(ctx.resultSet()); + assertNull(ctx.record()); + assertNull(ctx.result()); + } + + @Override + public void prepareEnd(ExecuteContext ctx) { + prepareEnd = ++callbackCount; + checkBase(ctx); + checkSQL(ctx, true); + + checkStatement(ctx, false); + // TODO Patch statement + checkStatement(ctx, true); + + assertNull(ctx.resultSet()); + assertNull(ctx.record()); + assertNull(ctx.result()); + } + + @Override + public void bindStart(ExecuteContext ctx) { + bindStart = ++callbackCount; + checkBase(ctx); + checkSQL(ctx, true); + checkStatement(ctx, true); + + assertNull(ctx.resultSet()); + assertNull(ctx.record()); + assertNull(ctx.result()); + } + + @Override + public void bindEnd(ExecuteContext ctx) { + bindEnd = ++callbackCount; + checkBase(ctx); + checkSQL(ctx, true); + checkStatement(ctx, true); + + assertNull(ctx.resultSet()); + assertNull(ctx.record()); + assertNull(ctx.result()); + } + + @Override + public void executeStart(ExecuteContext ctx) { + executeStart = ++callbackCount; + checkBase(ctx); + checkSQL(ctx, true); + checkStatement(ctx, true); + + assertNull(ctx.resultSet()); + assertNull(ctx.record()); + assertNull(ctx.result()); + } + + @Override + public void executeEnd(ExecuteContext ctx) { + executeEnd = ++callbackCount; + checkBase(ctx); + checkSQL(ctx, true); + checkStatement(ctx, true); + + checkResultSet(ctx, false); + // TODO patch result set + checkResultSet(ctx, true); + + assertNull(ctx.record()); + assertNull(ctx.result()); + } + + @Override + public void fetchStart(ExecuteContext ctx) { + fetchStart = ++callbackCount; + checkBase(ctx); + checkSQL(ctx, true); + checkStatement(ctx, true); + checkResultSet(ctx, true); + + assertNull(ctx.record()); + assertNull(ctx.result()); + } + + @Override + public void resultStart(ExecuteContext ctx) { + resultStart = ++callbackCount; + checkBase(ctx); + checkSQL(ctx, true); + checkStatement(ctx, true); + checkResultSet(ctx, true); + + assertNull(ctx.record()); + assertNotNull(ctx.result()); + assertTrue(ctx.result().isEmpty()); + } + + @Override + public void recordStart(ExecuteContext ctx) { + recordStart.add(++callbackCount); + checkBase(ctx); + checkSQL(ctx, true); + checkStatement(ctx, true); + checkResultSet(ctx, true); + + assertNotNull(ctx.record()); + assertEquals(2, ctx.record().getFields().size()); + + assertNull(ctx.record().getValue(0)); + assertNull(ctx.record().getValue(1)); + } + + @Override + public void recordEnd(ExecuteContext ctx) { + recordEnd.add(++callbackCount); + checkBase(ctx); + checkSQL(ctx, true); + checkStatement(ctx, true); + checkResultSet(ctx, true); + + assertNotNull(ctx.record()); + assertEquals(2, ctx.record().getFields().size()); + + assertEquals(ids.remove(), ctx.record().getValue(0)); + assertEquals("Hello", ctx.record().getValue(1)); + } + + @Override + public void resultEnd(ExecuteContext ctx) { + resultEnd = ++callbackCount; + checkBase(ctx); + checkSQL(ctx, true); + checkStatement(ctx, true); + checkResultSet(ctx, true); + assertNotNull(ctx.record()); + assertEquals(2, ctx.record().getFields().size()); + + assertNotNull(ctx.result()); + assertEquals(2, ctx.result().size()); + } + + @Override + public void fetchEnd(ExecuteContext ctx) { + fetchEnd = ++callbackCount; + checkBase(ctx); + checkSQL(ctx, true); + checkStatement(ctx, true); + checkResultSet(ctx, true); + assertNotNull(ctx.record()); + assertEquals(2, ctx.record().getFields().size()); + + assertNotNull(ctx.result()); + assertEquals(2, ctx.result().size()); + } + + @Override + public void end(ExecuteContext ctx) { + end = ++callbackCount; + checkBase(ctx); + checkSQL(ctx, true); + checkStatement(ctx, true); + checkResultSet(ctx, true); + assertNotNull(ctx.record()); + assertEquals(2, ctx.record().getFields().size()); + + assertNotNull(ctx.result()); + assertEquals(2, ctx.result().size()); + } + } + + @Test + public void testExecuteListenerOnBatchSingle() { + if (!executePreparedStatements(create().getSettings())) { + log.info("SKIPPINT", "Single batch tests with statement type = STATEMENT"); + return; + } + + jOOQAbstractTest.reset = false; + + Factory create = create(new Settings() + .withExecuteListeners(BatchSingleListener.class.getName())); + + create.setData("Foo", "Bar"); + create.setData("Bar", "Baz"); + + int[] result = create.batch(create().insertInto(TAuthor()) + .set(TAuthor_ID(), param("id", Integer.class)) + .set(TAuthor_LAST_NAME(), param("name", String.class))) + .bind(8, "Gamma") + .bind(9, "Helm") + .bind(10, "Johnson") + .execute(); + + assertEquals(3, result.length); + + // Check correct order of listener method invocation + assertEquals(1, BatchSingleListener.start); + assertEquals(2, BatchSingleListener.renderStart); + assertEquals(3, BatchSingleListener.renderEnd); + assertEquals(4, BatchSingleListener.prepareStart); + assertEquals(5, BatchSingleListener.prepareEnd); + assertEquals(asList(6, 8, 10), BatchSingleListener.bindStart); + assertEquals(asList(7, 9, 11), BatchSingleListener.bindEnd); + assertEquals(12, BatchSingleListener.executeStart); + assertEquals(13, BatchSingleListener.executeEnd); + assertEquals(14, BatchSingleListener.end); + } + + public static class BatchSingleListener implements ExecuteListener { + + // A counter that is incremented in callback methods + private static int callbackCount = 0; + + // Fields that are used to check whether callback methods were called + // in the expected order + public static int start; + public static int renderStart; + public static int renderEnd; + public static int prepareStart; + public static int prepareEnd; + public static List bindStart = new ArrayList(); + public static List bindEnd = new ArrayList(); + public static int executeStart; + public static int executeEnd; + public static int end; + + @SuppressWarnings("serial") + private void checkBase(ExecuteContext ctx) { + assertNull(ctx.query()); + assertNotNull(ctx.batchQueries()); + assertTrue(ctx.batchQueries()[0].toString().toLowerCase().contains("insert")); + assertEquals(1, ctx.batchSQL().length); + + assertEquals("Bar", ctx.getData("Foo")); + assertEquals("Baz", ctx.getData("Bar")); + assertEquals(new HashMap() {{ + put("Foo", "Bar"); + put("Bar", "Baz"); + }}, ctx.getData()); + + assertNull(ctx.routine()); + assertNull(ctx.resultSet()); + assertNull(ctx.record()); + assertNull(ctx.result()); + + assertEquals(ExecuteType.BATCH, ctx.type()); + } + + private void checkSQL(ExecuteContext ctx, boolean patched) { + assertTrue(ctx.batchSQL()[0].toLowerCase().contains("insert")); + + if (patched) { + assertTrue(ctx.batchSQL()[0].toLowerCase().contains("values (")); + } + } + + @SuppressWarnings("unused") + private void checkStatement(ExecuteContext ctx, boolean patched) { + assertNotNull(ctx.statement()); + } + + @Override + public void start(ExecuteContext ctx) { + start = ++callbackCount; + checkBase(ctx); + + assertNull(ctx.batchSQL()[0]); + assertNull(ctx.sql()); + assertNull(ctx.statement()); + } + + @Override + public void renderStart(ExecuteContext ctx) { + renderStart = ++callbackCount; + checkBase(ctx); + + assertNull(ctx.batchSQL()[0]); + assertNull(ctx.sql()); + assertNull(ctx.statement()); + } + + @Override + public void renderEnd(ExecuteContext ctx) { + renderEnd = ++callbackCount; + checkBase(ctx); + checkSQL(ctx, false); + + assertNull(ctx.statement()); + + ctx.sql(ctx.sql().replaceFirst("(?i:values\\s+)", "values ")); + checkSQL(ctx, true); + } + + @Override + public void prepareStart(ExecuteContext ctx) { + prepareStart = ++callbackCount; + checkBase(ctx); + checkSQL(ctx, true); + + assertNull(ctx.statement()); + } + + @Override + public void prepareEnd(ExecuteContext ctx) { + prepareEnd = ++callbackCount; + checkBase(ctx); + checkSQL(ctx, true); + + checkStatement(ctx, false); + // TODO Patch statement + checkStatement(ctx, true); + } + + @Override + public void bindStart(ExecuteContext ctx) { + bindStart.add(++callbackCount); + checkBase(ctx); + checkSQL(ctx, true); + checkStatement(ctx, true); + } + + @Override + public void bindEnd(ExecuteContext ctx) { + bindEnd.add(++callbackCount); + checkBase(ctx); + checkSQL(ctx, true); + checkStatement(ctx, true); + } + + @Override + public void executeStart(ExecuteContext ctx) { + executeStart = ++callbackCount; + checkBase(ctx); + checkSQL(ctx, true); + checkStatement(ctx, true); + } + + @Override + public void executeEnd(ExecuteContext ctx) { + executeEnd = ++callbackCount; + checkBase(ctx); + checkSQL(ctx, true); + checkStatement(ctx, true); + } + + @Override + public void fetchStart(ExecuteContext ctx) { + fail(); + } + + @Override + public void resultStart(ExecuteContext ctx) { + fail(); + } + + @Override + public void recordStart(ExecuteContext ctx) { + fail(); + } + + @Override + public void recordEnd(ExecuteContext ctx) { + fail(); + } + + @Override + public void resultEnd(ExecuteContext ctx) { + fail(); + } + + @Override + public void fetchEnd(ExecuteContext ctx) { + fail(); + } + + @Override + public void end(ExecuteContext ctx) { + end = ++callbackCount; + checkBase(ctx); + checkSQL(ctx, true); + checkStatement(ctx, true); + } + } + + @Test + public void testExecuteListenerOnBatchMultiple() { + jOOQAbstractTest.reset = false; + + Factory create = create(new Settings() + .withExecuteListeners(BatchMultipleListener.class.getName())); + + create.setData("Foo", "Bar"); + create.setData("Bar", "Baz"); + + int[] result = create.batch( + create().insertInto(TAuthor()) + .set(TAuthor_ID(), 8) + .set(TAuthor_LAST_NAME(), "Gamma"), + + create().insertInto(TAuthor()) + .set(TAuthor_ID(), 9) + .set(TAuthor_LAST_NAME(), "Helm"), + + create().insertInto(TBook()) + .set(TBook_ID(), 6) + .set(TBook_AUTHOR_ID(), 8) + .set(TBook_PUBLISHED_IN(), 1994) + .set((Field)TBook_LANGUAGE_ID(), on(TBook_LANGUAGE_ID().getDataType().getType()).get("en")) + .set(TBook_CONTENT_TEXT(), "Design Patterns are awesome") + .set(TBook_TITLE(), "Design Patterns"), + + create().insertInto(TAuthor()) + .set(TAuthor_ID(), 10) + .set(TAuthor_LAST_NAME(), "Johnson")).execute(); + + assertEquals(4, result.length); + assertEquals(5, create().fetch(TBook()).size()); + assertEquals(1, create().fetch(TBook(), TBook_AUTHOR_ID().equal(8)).size()); + + // Check correct order of listener method invocation + assertEquals(1, BatchMultipleListener.start); + assertEquals(asList(2, 4, 6, 8), BatchMultipleListener.renderStart); + assertEquals(asList(3, 5, 7, 9), BatchMultipleListener.renderEnd); + assertEquals(asList(10, 12, 14, 16), BatchMultipleListener.prepareStart); + assertEquals(asList(11, 13, 15, 17), BatchMultipleListener.prepareEnd); + assertEquals(18, BatchMultipleListener.executeStart); + assertEquals(19, BatchMultipleListener.executeEnd); + assertEquals(20, BatchMultipleListener.end); + } + + public static class BatchMultipleListener implements ExecuteListener { + + // A counter that is incremented in callback methods + private static int callbackCount = 0; + private static int rendered = 0; + private static int prepared = 0; + + // Fields that are used to check whether callback methods were called + // in the expected order + public static int start; + public static List renderStart = new ArrayList(); + public static List renderEnd = new ArrayList(); + public static List prepareStart = new ArrayList(); + public static List prepareEnd = new ArrayList(); + public static int executeStart; + public static int executeEnd; + public static int end; + + public static Queue ids = new LinkedList(asList(1, 2)); + + @SuppressWarnings("serial") + private void checkBase(ExecuteContext ctx) { + assertNull(ctx.query()); + assertNotNull(ctx.batchQueries()); + assertTrue(ctx.batchQueries()[0].toString().toLowerCase().contains("insert")); + assertTrue(ctx.batchQueries()[1].toString().toLowerCase().contains("insert")); + assertTrue(ctx.batchQueries()[2].toString().toLowerCase().contains("insert")); + assertTrue(ctx.batchQueries()[3].toString().toLowerCase().contains("insert")); + assertEquals(4, ctx.batchSQL().length); + + assertEquals("Bar", ctx.getData("Foo")); + assertEquals("Baz", ctx.getData("Bar")); + assertEquals(new HashMap() {{ + put("Foo", "Bar"); + put("Bar", "Baz"); + }}, ctx.getData()); + + assertNull(ctx.routine()); + assertNull(ctx.resultSet()); + assertNull(ctx.record()); + assertNull(ctx.result()); + + assertEquals(ExecuteType.BATCH, ctx.type()); + } + + private void checkSQL(ExecuteContext ctx, boolean patched) { + for (int i = 0; i < rendered; i++) { + assertTrue(ctx.batchQueries()[i].toString().toLowerCase().contains("insert")); + + if (patched) { + assertTrue(ctx.batchSQL()[i].toLowerCase().contains("values (")); + } + } + } + + @SuppressWarnings("unused") + private void checkStatement(ExecuteContext ctx, boolean patched) { + assertNotNull(ctx.statement()); + } + + @Override + public void start(ExecuteContext ctx) { + start = ++callbackCount; + checkBase(ctx); + + assertNull(ctx.batchSQL()[0]); + assertNull(ctx.batchSQL()[1]); + assertNull(ctx.batchSQL()[2]); + assertNull(ctx.batchSQL()[3]); + assertNull(ctx.sql()); + assertNull(ctx.statement()); + } + + @Override + public void renderStart(ExecuteContext ctx) { + renderStart.add(++callbackCount); + checkBase(ctx); + checkStatement(ctx, false); + checkSQL(ctx, false); + + assertNull(ctx.sql()); + } + + @Override + public void renderEnd(ExecuteContext ctx) { + renderEnd.add(++callbackCount); + rendered++; + checkBase(ctx); + checkStatement(ctx, false); + checkSQL(ctx, false); + + ctx.batchSQL()[rendered - 1] = ctx.batchSQL()[rendered - 1].replaceFirst("(?i:values\\s+)", "values "); + checkSQL(ctx, true); + } + + @Override + public void prepareStart(ExecuteContext ctx) { + prepareStart.add(++callbackCount); + checkBase(ctx); + checkStatement(ctx, false); + checkSQL(ctx, true); + } + + @Override + public void prepareEnd(ExecuteContext ctx) { + prepareEnd.add(++callbackCount); + prepared++; + checkBase(ctx); + checkStatement(ctx, false); + checkSQL(ctx, true); + } + + @Override + public void bindStart(ExecuteContext ctx) { + fail(); + } + + @Override + public void bindEnd(ExecuteContext ctx) { + fail(); + } + + @Override + public void executeStart(ExecuteContext ctx) { + executeStart = ++callbackCount; + checkBase(ctx); + checkSQL(ctx, true); + checkStatement(ctx, true); + } + + @Override + public void executeEnd(ExecuteContext ctx) { + executeEnd = ++callbackCount; + checkBase(ctx); + checkSQL(ctx, true); + checkStatement(ctx, true); + } + + @Override + public void fetchStart(ExecuteContext ctx) { + fail(); + } + + @Override + public void resultStart(ExecuteContext ctx) { + fail(); + } + + @Override + public void recordStart(ExecuteContext ctx) { + fail(); + } + + @Override + public void recordEnd(ExecuteContext ctx) { + fail(); + } + + @Override + public void resultEnd(ExecuteContext ctx) { + fail(); + } + + @Override + public void fetchEnd(ExecuteContext ctx) { + fail(); + } + + @Override + public void end(ExecuteContext ctx) { + end = ++callbackCount; + checkBase(ctx); + checkSQL(ctx, true); + checkStatement(ctx, true); + } + } +} diff --git a/jOOQ-test/src/org/jooq/test/_/testcases/ExoticTests.java b/jOOQ-test/src/org/jooq/test/_/testcases/ExoticTests.java new file mode 100644 index 00000000000..090428ad7cd --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/_/testcases/ExoticTests.java @@ -0,0 +1,378 @@ +/** + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com + * All rights reserved. + * + * This software is licensed to you under the Apache License, Version 2.0 + * (the "License"); You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * 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 "jOOQ" 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 COPYRIGHT OWNER 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. + */ +package org.jooq.test._.testcases; + +import static java.util.Arrays.asList; +import static junit.framework.Assert.assertEquals; +import static junit.framework.Assert.assertTrue; +import static org.jooq.impl.Factory.avg; +import static org.jooq.impl.Factory.count; +import static org.jooq.impl.Factory.field; +import static org.jooq.impl.Factory.literal; +import static org.jooq.impl.Factory.lower; +import static org.jooq.impl.Factory.max; +import static org.jooq.impl.Factory.substring; +import static org.jooq.impl.Factory.sum; +import static org.jooq.impl.Factory.table; +import static org.jooq.impl.Factory.trueCondition; +import static org.jooq.impl.Factory.val; +import static org.jooq.util.oracle.OracleFactory.connectByIsCycle; +import static org.jooq.util.oracle.OracleFactory.connectByIsLeaf; +import static org.jooq.util.oracle.OracleFactory.level; +import static org.jooq.util.oracle.OracleFactory.prior; +import static org.jooq.util.oracle.OracleFactory.rownum; +import static org.jooq.util.oracle.OracleFactory.sysConnectByPath; + +import java.util.Arrays; +import java.util.List; + +import org.jooq.Field; +import org.jooq.Record; +import org.jooq.Result; +import org.jooq.Table; +import org.jooq.TableRecord; +import org.jooq.UpdatableRecord; +import org.jooq.test.BaseTest; +import org.jooq.test.jOOQAbstractTest; + +import org.junit.Test; + +public class ExoticTests< + A extends UpdatableRecord, + B extends UpdatableRecord, + S extends UpdatableRecord, + B2S extends UpdatableRecord, + BS extends UpdatableRecord, + L extends TableRecord, + X extends TableRecord, + DATE extends UpdatableRecord, + BOOL extends UpdatableRecord, + D extends UpdatableRecord, + T extends UpdatableRecord, + U extends TableRecord, + I extends TableRecord, + IPK extends UpdatableRecord, + T658 extends TableRecord, + T725 extends UpdatableRecord, + T639 extends UpdatableRecord, + T785 extends TableRecord> +extends BaseTest { + + public ExoticTests(jOOQAbstractTest delegate) { + super(delegate); + } + + @Test + public void testPivotClause() throws Exception { + switch (getDialect()) { + case ASE: + case CUBRID: + case DB2: + case DERBY: + case H2: + case HSQLDB: + case INGRES: + case MYSQL: + case POSTGRES: + case SQLITE: + case SQLSERVER: + case SYBASE: + log.info("SKIPPING", "PIVOT clause tests"); + return; + } + + // Simple pivoting, no aliasing + // ---------------------------- + + Result result1 = + create().select() + .from(TBookToBookStore() + .pivot(count()) + .on(TBookToBookStore_BOOK_STORE_NAME()) + .in("Orell Füssli", + "Ex Libris", + "Buchhandlung im Volkshaus")) + .orderBy( + literal(1).asc(), + literal(2).asc()) + .fetch(); + + assertEquals(6, result1.size()); + assertEquals(TBookToBookStore_BOOK_ID().getName(), result1.getField(0).getName()); + assertEquals(TBookToBookStore_STOCK().getName(), result1.getField(1).getName()); + assertTrue(result1.getField(2).getName().contains("Orell Füssli")); + assertTrue(result1.getField(3).getName().contains("Ex Libris")); + assertTrue(result1.getField(4).getName().contains("Buchhandlung im Volkshaus")); + assertEquals( + asList(1, 1, 0, 1, 0), + asList(result1.get(0).into(Integer[].class))); + assertEquals( + asList(1, 10, 1, 0, 0), + asList(result1.get(1).into(Integer[].class))); + assertEquals( + asList(2, 10, 1, 0, 0), + asList(result1.get(2).into(Integer[].class))); + assertEquals( + asList(3, 1, 0, 0, 1), + asList(result1.get(3).into(Integer[].class))); + assertEquals( + asList(3, 2, 0, 1, 0), + asList(result1.get(4).into(Integer[].class))); + assertEquals( + asList(3, 10, 1, 0, 0), + asList(result1.get(5).into(Integer[].class))); + + // Pivoting with plenty of aliasing and several aggregate functions + // ---------------------------------------------------------------- + + Result result2 = + create().select() + .from(TBookToBookStore() + .pivot(avg(TBookToBookStore_STOCK()).as("AVG"), + max(TBookToBookStore_STOCK()).as("MAX"), + sum(TBookToBookStore_STOCK()).as("SUM"), + count(TBookToBookStore_STOCK()).as("CNT")) + .on(TBookToBookStore_BOOK_STORE_NAME()) + .in(val("Orell Füssli").as("BS1"), + val("Ex Libris").as("BS2"), + val("Buchhandlung im Volkshaus").as("BS3"))) + .orderBy(val(1).asc()) + .fetch(); + + assertEquals(3, result2.size()); + assertEquals(TBookToBookStore_BOOK_ID().getName(), result2.getField(0).getName()); + assertEquals("BS1_AVG", result2.getField(1).getName()); + assertEquals("BS1_MAX", result2.getField(2).getName()); + assertEquals("BS1_SUM", result2.getField(3).getName()); + assertEquals("BS1_CNT", result2.getField(4).getName()); + assertEquals("BS2_AVG", result2.getField(5).getName()); + assertEquals("BS2_MAX", result2.getField(6).getName()); + assertEquals("BS2_SUM", result2.getField(7).getName()); + assertEquals("BS2_CNT", result2.getField(8).getName()); + assertEquals("BS3_AVG", result2.getField(9).getName()); + assertEquals("BS3_MAX", result2.getField(10).getName()); + assertEquals("BS3_SUM", result2.getField(11).getName()); + assertEquals("BS3_CNT", result2.getField(12).getName()); + assertEquals( + asList(1, + 10, 10, 10, 1, + 1, 1, 1, 1, + null, null, null, 0), + asList(result2.get(0).into(Integer[].class))); + assertEquals( + asList(2, + 10, 10, 10, 1, + null, null, null, 0, + null, null, null, 0), + asList(result2.get(1).into(Integer[].class))); + assertEquals( + asList(3, + 10, 10, 10, 1, + 2, 2, 2, 1, + 1, 1, 1, 1), + asList(result2.get(2).into(Integer[].class))); + + + // Check aliasing of fields in source table + Field lang = TBook_LANGUAGE_ID().cast(Integer.class).as("lang"); + Result result3 = + create().select() + .from(table(create().select(TBook_AUTHOR_ID(), lang) + .from(TBook())) + .pivot(count()) + .on(lang) + .in(1, 2, 3, 4)) + .fetch(); + + assertEquals(2, result3.size()); + assertEquals(5, result3.getFields().size()); + assertEquals(AUTHOR_IDS, result3.getValues(0)); + assertEquals( + asList(1, 2, 0, 0, 0), + asList(result3.get(0).into(Integer[].class))); + } + + @Test + public void testRelationalDivision() throws Exception { + + // Books and bookstores. There's only one book that is contained in + // every bookstore: + // ---------------------------------------------------------------- + int id = + create().select() + .from(TBookToBookStore() + .divideBy(TBookStore()) + .on(TBookToBookStore_BOOK_STORE_NAME().equal(TBookStore_NAME())) + .returning(TBookToBookStore_BOOK_ID())) + .fetchOne(0, Integer.class); + + assertEquals(3, id); + + // Test removing some bookstores in nested selects + Table notAllBookStores = + create().select() + .from(TBookStore()) + .where(TBookStore_NAME().notEqual("Buchhandlung im Volkshaus")) + .asTable("not_all_bookstores"); + + Result result = + create().select() + .from(TBookToBookStore() + .divideBy(notAllBookStores) + .on(TBookToBookStore_BOOK_STORE_NAME().equal(notAllBookStores.getField(TBookStore_NAME()))) + .returning(TBookToBookStore_BOOK_ID(), field("'abc'").as("abc"))) + .orderBy(1) + .fetch(); + + assertEquals(asList((Object) 1, "abc"), asList(result.get(0).intoArray())); + assertEquals(asList((Object) 3, "abc"), asList(result.get(1).intoArray())); + } + + @Test + public void testConnectBySimple() throws Exception { + switch (getDialect()) { + case ASE: + case DB2: + case DERBY: + case H2: + case HSQLDB: + case INGRES: + case MYSQL: + case POSTGRES: + case SQLITE: + case SQLSERVER: + case SYBASE: + log.info("SKIPPING", "Connect by tests"); + return; + } + + assertEquals(Arrays.asList(1, 2, 3, 4, 5, 6, 7, 8, 9), + create().select(rownum()) + .connectBy(level().lessThan(10)) + .fetch(rownum())); + assertEquals(Arrays.asList(1, 2, 3, 4, 5, 6, 7, 8, 9), + create().select(rownum()) + .connectByNoCycle(level().lessThan(10)) + .fetch(rownum())); + + assertEquals(Arrays.asList(1, 2, 3, 4, 5, 6, 7, 8, 9), + create().select(rownum()) + .connectBy(level().lessThan(10)) + .and("1 = ?", 1) + .startWith("? = ?", 1, 1) + .fetch(rownum())); + assertEquals(Arrays.asList(1, 2, 3, 4, 5, 6, 7, 8, 9), + create().select(rownum()) + .connectByNoCycle(level().lessThan(10)) + .and("1 = ?", 1) + .startWith("? = ?", 1, 1) + .fetch(rownum())); + + Result result = + create().select(rownum(), connectByIsCycle(), connectByIsLeaf()) + .connectByNoCycle(level().lessThan(4)) + .fetch(); + + assertEquals(Integer.valueOf(1), result.getValue(0, rownum())); + assertEquals(Integer.valueOf(2), result.getValue(1, rownum())); + assertEquals(Integer.valueOf(3), result.getValue(2, rownum())); + + assertEquals(Boolean.FALSE, result.getValue(0, connectByIsLeaf())); + assertEquals(Boolean.FALSE, result.getValue(1, connectByIsLeaf())); + assertEquals(Boolean.TRUE, result.getValue(2, connectByIsLeaf())); + + assertEquals(Boolean.FALSE, result.getValue(0, connectByIsCycle())); + assertEquals(Boolean.FALSE, result.getValue(1, connectByIsCycle())); + assertEquals(Boolean.FALSE, result.getValue(2, connectByIsCycle())); + } + + @Test + public void testConnectByDirectory() throws Exception { + switch (getDialect()) { + case ASE: + case DB2: + case DERBY: + case H2: + case HSQLDB: + case INGRES: + case MYSQL: + case POSTGRES: + case SQLITE: + case SQLSERVER: + case SYBASE: + log.info("SKIPPING", "Connect by tests"); + return; + } + + List paths = + create().select(substring(sysConnectByPath(lower(TDirectory_NAME()), "/"), 2).as("dir")) + .from(TDirectory()) + .where(trueCondition()) + .and(trueCondition()) + .connectBy(prior(TDirectory_ID()).equal(TDirectory_PARENT_ID())) + .startWith(TDirectory_PARENT_ID().isNull()) + .orderBy(1) + .fetch(0); + + assertEquals(25, paths.size()); + assertEquals(Arrays.asList( + "c:", + "c:/eclipse", + "c:/eclipse/configuration", + "c:/eclipse/dropins", + "c:/eclipse/eclipse.exe", + "c:/eclipse/eclipse.ini", + "c:/eclipse/features", + "c:/eclipse/plugins", + "c:/eclipse/readme", + "c:/eclipse/readme/readme_eclipse.html", + "c:/eclipse/src", + "c:/program files", + "c:/program files/internet explorer", + "c:/program files/internet explorer/de-de", + "c:/program files/internet explorer/ielowutil.exe", + "c:/program files/internet explorer/iexplore.exe", + "c:/program files/java", + "c:/program files/java/jre6", + "c:/program files/java/jre6/bin", + "c:/program files/java/jre6/bin/java.exe", + "c:/program files/java/jre6/bin/javaw.exe", + "c:/program files/java/jre6/bin/javaws.exe", + "c:/program files/java/jre6/lib", + "c:/program files/java/jre6/lib/javaws.jar", + "c:/program files/java/jre6/lib/rt.jar"), paths); + } +} diff --git a/jOOQ-test/src/org/jooq/test/_/testcases/FetchTests.java b/jOOQ-test/src/org/jooq/test/_/testcases/FetchTests.java new file mode 100644 index 00000000000..3b48ceea264 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/_/testcases/FetchTests.java @@ -0,0 +1,1017 @@ +/** + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com + * All rights reserved. + * + * This software is licensed to you under the Apache License, Version 2.0 + * (the "License"); You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * 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 "jOOQ" 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 COPYRIGHT OWNER 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. + */ +package org.jooq.test._.testcases; + +import static java.util.Arrays.asList; +import static junit.framework.Assert.assertEquals; +import static junit.framework.Assert.assertFalse; +import static junit.framework.Assert.assertNotNull; +import static junit.framework.Assert.assertNull; +import static junit.framework.Assert.assertTrue; +import static junit.framework.Assert.fail; +import static org.jooq.impl.Factory.count; +import static org.jooq.impl.Factory.val; +import static org.jooq.tools.reflect.Reflect.on; + +import java.sql.Date; +import java.sql.ResultSet; +import java.util.AbstractList; +import java.util.ArrayList; +import java.util.Arrays; +import java.util.Collections; +import java.util.Iterator; +import java.util.LinkedList; +import java.util.List; +import java.util.Map; +import java.util.Map.Entry; +import java.util.Queue; +import java.util.concurrent.Future; +import java.util.concurrent.TimeUnit; + +import org.jooq.Cursor; +import org.jooq.Field; +import org.jooq.Record; +import org.jooq.RecordHandler; +import org.jooq.Result; +import org.jooq.SelectQuery; +import org.jooq.TableRecord; +import org.jooq.UpdatableRecord; +import org.jooq.exception.InvalidResultException; +import org.jooq.exception.MappingException; +import org.jooq.test.BaseTest; +import org.jooq.test.jOOQAbstractTest; +import org.jooq.test._.AuthorWithoutAnnotations; +import org.jooq.test._.BookRecord; +import org.jooq.test._.BookTable; +import org.jooq.test._.BookWithAnnotations; +import org.jooq.test._.BookWithoutAnnotations; +import org.jooq.test._.CharWithAnnotations; +import org.jooq.test._.DatesWithAnnotations; +import org.jooq.test._.FinalWithAnnotations; +import org.jooq.test._.FinalWithoutAnnotations; +import org.jooq.test._.StaticWithAnnotations; +import org.jooq.test._.StaticWithoutAnnotations; +import org.jooq.tools.reflect.Reflect; +import org.jooq.tools.reflect.ReflectException; + +import org.junit.Test; + +public class FetchTests< + A extends UpdatableRecord, + B extends UpdatableRecord, + S extends UpdatableRecord, + B2S extends UpdatableRecord, + BS extends UpdatableRecord, + L extends TableRecord, + X extends TableRecord, + DATE extends UpdatableRecord, + BOOL extends UpdatableRecord, + D extends UpdatableRecord, + T extends UpdatableRecord, + U extends TableRecord, + I extends TableRecord, + IPK extends UpdatableRecord, + T658 extends TableRecord, + T725 extends UpdatableRecord, + T639 extends UpdatableRecord, + T785 extends TableRecord> +extends BaseTest { + + public FetchTests(jOOQAbstractTest delegate) { + super(delegate); + } + + @Test + public void testFetchMap() throws Exception { + try { + create().selectFrom(TBook()).orderBy(TBook_ID()).fetchMap(TBook_AUTHOR_ID()); + fail(); + } catch (InvalidResultException expected) {} + + // Key -> Record Map + // ----------------- + Map map1 = create().selectFrom(TBook()).orderBy(TBook_ID()).fetchMap(TBook_ID()); + for (Entry entry : map1.entrySet()) { + assertEquals(entry.getKey(), entry.getValue().getValue(TBook_ID())); + } + assertEquals(BOOK_IDS, new ArrayList(map1.keySet())); + + // Key -> Value Map + // ---------------- + Map map2 = create().selectFrom(TBook()).orderBy(TBook_ID()).fetchMap(TBook_ID(), TBook_TITLE()); + assertEquals(BOOK_IDS, new ArrayList(map2.keySet())); + assertEquals(BOOK_TITLES, new ArrayList(map2.values())); + + // List of Map + // ----------- + Result books = create().selectFrom(TBook()).orderBy(TBook_ID()).fetch(); + List> list = + create().selectFrom(TBook()).orderBy(TBook_ID()).fetchMaps(); + assertEquals(4, list.size()); + + for (int i = 0; i < books.size(); i++) { + for (Field field : books.getFields()) { + assertEquals(books.getValue(i, field), list.get(i).get(field.getName())); + } + } + + // Single Map + // ---------- + B book = create().selectFrom(TBook()).where(TBook_ID().equal(1)).fetchOne(); + Map map3 = create().selectFrom(TBook()).where(TBook_ID().equal(1)).fetchOneMap(); + + for (Field field : books.getFields()) { + assertEquals(book.getValue(field), map3.get(field.getName())); + } + + // Maps with two times the same field + // ---------------------------------- + try { + create().select(val("a"), val("a")).fetchMaps(); + fail(); + } + catch (InvalidResultException expected) {} + + try { + create().select(val("a"), val("a")).fetchOneMap(); + fail(); + } + catch (InvalidResultException expected) {} + } + + @Test + public void testFetchArray() throws Exception { + + // fetchOne + // -------- + B book = create().selectFrom(TBook()).where(TBook_ID().equal(1)).fetchOne(); + Object[] bookArray = create().selectFrom(TBook()).where(TBook_ID().equal(1)).fetchOneArray(); + for (int i = 0; i < TBook().getFields().size(); i++) { + assertEquals(book.getValue(i), bookArray[i]); + } + + // fetch + // ----- + Result books = create().selectFrom(TBook()).orderBy(TBook_ID()).fetch(); + Object[][] booksArray = create().selectFrom(TBook()).orderBy(TBook_ID()).fetchArrays(); + + for (int j = 0; j < books.size(); j++) { + for (int i = 0; i < TBook().getFields().size(); i++) { + assertEquals(books.getValue(j, i), booksArray[j][i]); + assertEquals(books.getValue(j, i), books.intoArray()[j][i]); + assertEquals(books.get(j).getValue(i), books.get(j).intoArray()[i]); + } + } + + // fetch single field + // ------------------ + assertEquals(create().selectFrom(TBook()).orderBy(TBook_ID()).fetch(TBook_TITLE()), + Arrays.asList(create().selectFrom(TBook()).orderBy(TBook_ID()).fetchArray(TBook_TITLE()))); + + assertEquals(create().selectFrom(TBook()).orderBy(TBook_ID()).fetch(1), + Arrays.asList(create().selectFrom(TBook()).orderBy(TBook_ID()).fetchArray(1))); + + assertEquals(create().selectFrom(TBook()).orderBy(TBook_ID()).fetch(TBook_ID().getName()), + Arrays.asList(create().selectFrom(TBook()).orderBy(TBook_ID()).fetchArray(TBook_ID().getName()))); + + } + + @Test + public void testFetch() throws Exception { + SelectQuery q = create().selectQuery(); + q.addFrom(TAuthor()); + q.addSelect(TAuthor().getFields()); + q.addOrderBy(TAuthor_LAST_NAME()); + + Result result = q.fetch(); + + assertEquals(2, result.size()); + assertEquals("Coelho", result.get(0).getValue(TAuthor_LAST_NAME())); + assertEquals("Orwell", result.get(1).getValue(TAuthor_LAST_NAME())); + + try { + q.fetchOne(); + fail(); + } + catch (InvalidResultException expected) {} + + Record record = q.fetchAny(); + assertEquals("Coelho", record.getValue(TAuthor_LAST_NAME())); + } + + @Test + public void testFetchMany() throws Exception { + switch (getDialect()) { + case ORACLE: + case SQLITE: + case SYBASE: + log.info("SKIPPING", "Fetch Many tests"); + return; + } + + List> results = create().fetchMany( + "select * from t_book order by " + TBook_ID().getName()); + + assertEquals(1, results.size()); + assertEquals(4, results.get(0).size()); + assertEquals(BOOK_IDS, results.get(0).getValues(TBook_ID(), Integer.class)); + assertEquals(BOOK_TITLES, results.get(0).getValues(TBook_TITLE())); + } + + @Test + public void testFetchWithoutResults() throws Exception { + switch (getDialect()) { + case ASE: + log.info("SKIPPING", "Fetch without results tests"); + return; + } + + Result result = + create().fetch( + create().update(TAuthor()) + .set(TAuthor_FIRST_NAME(), "Hugo") + .where(TAuthor_ID().equal(100)) + .getSQL(true)); + + assertNotNull(result); + assertEquals(0, result.size()); + + List> results = + create().fetchMany( + create().update(TAuthor()) + .set(TAuthor_FIRST_NAME(), "Hugo") + .where(TAuthor_ID().equal(100)) + .getSQL(true)); + + assertNotNull(result); + assertEquals(0, results.size()); + + } + + @Test + public void testFetchIntoWithAnnotations() throws Exception { + // TODO [#791] Fix test data and have all upper case columns everywhere + switch (getDialect()) { + case ASE: + case CUBRID: + case INGRES: + case POSTGRES: + log.info("SKIPPING", "fetchInto() tests"); + return; + } + + List result = + create().select( + TBook_ID(), + TBook_TITLE(), + TAuthor_FIRST_NAME(), + TAuthor_LAST_NAME(), + TAuthor_DATE_OF_BIRTH()) + .from(TBook()) + .join(TAuthor()).on(TBook_AUTHOR_ID().equal(TAuthor_ID())) + .orderBy(TBook_ID()) + .fetchInto(BookWithAnnotations.class); + + assertEquals(4, result.size()); + + assertEquals(1, (int) result.get(0).id); + assertEquals(2, (int) result.get(1).id); + assertEquals(3, (int) result.get(2).id); + assertEquals(4, (int) result.get(3).id); + + assertEquals(1, result.get(0).id2); + assertEquals(2, result.get(1).id2); + assertEquals(3, result.get(2).id2); + assertEquals(4, result.get(3).id2); + + assertEquals(1, result.get(0).id3); + assertEquals(2, result.get(1).id3); + assertEquals(3, result.get(2).id3); + assertEquals(4, result.get(3).id3); + + assertEquals(Long.valueOf(1), result.get(0).id4); + assertEquals(Long.valueOf(2), result.get(1).id4); + assertEquals(Long.valueOf(3), result.get(2).id4); + assertEquals(Long.valueOf(4), result.get(3).id4); + + assertEquals(1L, result.get(0).id5); + assertEquals(2L, result.get(1).id5); + assertEquals(3L, result.get(2).id5); + assertEquals(4L, result.get(3).id5); + + assertEquals("1984", result.get(0).title); + assertEquals("Animal Farm", result.get(1).title); + assertEquals("O Alquimista", result.get(2).title); + assertEquals("Brida", result.get(3).title); + + assertEquals("George", result.get(0).firstName); + assertEquals("George", result.get(1).firstName); + assertEquals("Paulo", result.get(2).firstName); + assertEquals("Paulo", result.get(3).firstName); + + assertEquals("George", result.get(0).firstName2); + assertEquals("George", result.get(1).firstName2); + assertEquals("Paulo", result.get(2).firstName2); + assertEquals("Paulo", result.get(3).firstName2); + + assertEquals("Orwell", result.get(0).lastName); + assertEquals("Orwell", result.get(1).lastName); + assertEquals("Coelho", result.get(2).lastName); + assertEquals("Coelho", result.get(3).lastName); + + assertEquals("Orwell", result.get(0).lastName2); + assertEquals("Orwell", result.get(1).lastName2); + assertEquals("Coelho", result.get(2).lastName2); + assertEquals("Coelho", result.get(3).lastName2); + + try { + // Cannot instanciate an abstract class + create().selectFrom(TAuthor()) + .fetchInto(AbstractList.class); + fail(); + } + catch (MappingException expected) {} + + try { + // Cannot a class without default constructor + create().selectFrom(TAuthor()) + .fetchInto(Math.class); + fail(); + } + catch (MappingException expected) {} + + // [#930] Calendar/Date conversion checks + // -------------------------------------- + List calendars = + create().select(TAuthor_DATE_OF_BIRTH()) + .from(TAuthor()) + .orderBy(TAuthor_ID()) + .fetchInto(DatesWithAnnotations.class); + + assertEquals(2, calendars.size()); + + for (int index : asList(0, 1)) { + assertEquals(calendars.get(index).cal1, calendars.get(index).cal2); + assertEquals(calendars.get(index).cal1, calendars.get(index).cal3); + + assertEquals(calendars.get(index).date1, calendars.get(index).date2); + assertEquals(calendars.get(index).date1, calendars.get(index).date3); + + assertEquals(calendars.get(index).long1, calendars.get(index).long2); + assertEquals(calendars.get(index).long1, calendars.get(index).long3); + + assertEquals(calendars.get(index).primitiveLong1, calendars.get(index).primitiveLong2); + assertEquals(calendars.get(index).primitiveLong1, calendars.get(index).primitiveLong3); + + assertEquals(calendars.get(index).cal1.getTime(), calendars.get(index).date1); + assertEquals(calendars.get(index).cal1.getTime().getTime(), calendars.get(index).date1.getTime()); + assertEquals(calendars.get(index).cal1.getTime().getTime(), calendars.get(index).long1.longValue()); + assertEquals(calendars.get(index).cal1.getTime().getTime(), calendars.get(index).primitiveLong1); + } + + A author = create().newRecord(TAuthor()); + DatesWithAnnotations dates = author.into(DatesWithAnnotations.class); + + assertNull(dates.cal1); + assertNull(dates.cal2); + assertNull(dates.cal3); + assertNull(dates.date1); + assertNull(dates.date2); + assertNull(dates.date3); + assertNull(dates.long1); + assertNull(dates.long2); + assertNull(dates.long3); + assertEquals(0L, dates.primitiveLong1); + assertEquals(0L, dates.primitiveLong2); + assertEquals(0L, dates.primitiveLong3); + + author = create().newRecord(TAuthor()); + author.setValue(TAuthor_DATE_OF_BIRTH(), new Date(1L)); + dates = author.into(DatesWithAnnotations.class); + + assertEquals(1L, dates.cal1.getTime().getTime()); + assertEquals(1L, dates.cal2.getTime().getTime()); + assertEquals(1L, dates.cal3.getTime().getTime()); + assertEquals(1L, dates.date1.getTime()); + assertEquals(1L, dates.date2.getTime()); + assertEquals(1L, dates.date3.getTime()); + assertEquals(1L, (long) dates.long1); + assertEquals(1L, (long) dates.long2); + assertEquals(1L, (long) dates.long3); + assertEquals(1L, dates.primitiveLong1); + assertEquals(1L, dates.primitiveLong2); + assertEquals(1L, dates.primitiveLong3); + } + + @Test + public void testFetchIntoWithoutAnnotations() throws Exception { + // TODO [#791] Fix test data and have all upper case columns everywhere + switch (getDialect()) { + case ASE: + case CUBRID: + case INGRES: + case POSTGRES: + log.info("SKIPPING", "fetchInto() tests"); + return; + } + + List result = + create().select( + TBook_ID(), + TBook_TITLE(), + TAuthor_FIRST_NAME(), + TAuthor_LAST_NAME(), + TAuthor_DATE_OF_BIRTH()) + .from(TBook()) + .join(TAuthor()).on(TBook_AUTHOR_ID().equal(TAuthor_ID())) + .orderBy(TBook_ID()) + .fetchInto(BookWithoutAnnotations.class); + + assertEquals(4, result.size()); + + assertEquals(1, (int) result.get(0).id); + assertEquals(2, (int) result.get(1).id); + assertEquals(3, (int) result.get(2).id); + assertEquals(4, (int) result.get(3).id); + + assertEquals(1, result.get(0).id2); + assertEquals(2, result.get(1).id2); + assertEquals(3, result.get(2).id2); + assertEquals(4, result.get(3).id2); + + assertEquals(1, result.get(0).ID); + assertEquals(2, result.get(1).ID); + assertEquals(3, result.get(2).ID); + assertEquals(4, result.get(3).ID); + + assertEquals("1984", result.get(0).title); + assertEquals("Animal Farm", result.get(1).title); + assertEquals("O Alquimista", result.get(2).title); + assertEquals("Brida", result.get(3).title); + + assertEquals("George", result.get(0).firstName); + assertEquals("George", result.get(1).firstName); + assertEquals("Paulo", result.get(2).firstName); + assertEquals("Paulo", result.get(3).firstName); + + assertEquals("George", result.get(0).firstName2); + assertEquals("George", result.get(1).firstName2); + assertEquals("Paulo", result.get(2).firstName2); + assertEquals("Paulo", result.get(3).firstName2); + + assertEquals("Orwell", result.get(0).lastName); + assertEquals("Orwell", result.get(1).lastName); + assertEquals("Coelho", result.get(2).lastName); + assertEquals("Coelho", result.get(3).lastName); + + assertEquals("Orwell", result.get(0).lastName2); + assertEquals("Orwell", result.get(1).lastName2); + assertEquals("Coelho", result.get(2).lastName2); + assertEquals("Coelho", result.get(3).lastName2); + + assertEquals("Orwell", result.get(0).LAST_NAME); + assertEquals("Orwell", result.get(1).LAST_NAME); + assertEquals("Coelho", result.get(2).LAST_NAME); + assertEquals("Coelho", result.get(3).LAST_NAME); + } + + @Test + public void testRecordFromWithAnnotations() throws Exception { + + // TODO [#791] Fix test data and have all upper case columns everywhere + switch (getDialect()) { + case ASE: + case CUBRID: + case INGRES: + case POSTGRES: + log.info("SKIPPING", "fetchInto() tests"); + return; + } + + BookWithAnnotations b = new BookWithAnnotations(); + b.firstName = "Edgar Allen"; + b.lastName2 = "Poe"; + b.dateOfBirth = new Date(1); + b.id = 17; + b.title = "The Raven"; + + // This data shouldn't be considered + b.id2 = 18; + b.lastName = "Poet"; + + B book = create().newRecord(TBook(), b); + A author = create().newRecord(TAuthor(), b); + + assertEquals(b.id, author.getValue(TAuthor_ID())); + assertEquals(b.firstName, author.getValue(TAuthor_FIRST_NAME())); + assertEquals(b.lastName2, author.getValue(TAuthor_LAST_NAME())); + assertEquals(b.dateOfBirth, author.getValue(TAuthor_DATE_OF_BIRTH())); + assertNull(author.getValue(TAuthor_YEAR_OF_BIRTH())); + + assertEquals(b.id, book.getValue(TBook_ID())); + assertEquals(b.title, book.getValue(TBook_TITLE())); + assertNull(book.getValue(TBook_AUTHOR_ID())); + assertNull(book.getValue(TBook_CONTENT_PDF())); + assertNull(book.getValue(TBook_CONTENT_TEXT())); + assertNull(book.getValue(TBook_LANGUAGE_ID())); + assertNull(book.getValue(TBook_PUBLISHED_IN())); + } + + @Test + public void testRecordFromWithoutAnnotations() throws Exception { + + // TODO [#791] Fix test data and have all upper case columns everywhere + switch (getDialect()) { + case ASE: + case CUBRID: + case INGRES: + case POSTGRES: + log.info("SKIPPING", "fetchInto() tests"); + return; + } + + BookWithoutAnnotations b = new BookWithoutAnnotations(); + b.firstName = "Edgar Allen"; + b.lastName = "Poe"; + b.DATE_OF_BIRTH = new Date(1); + b.id = 17; + b.title = "The Raven"; + + // This data shouldn't be considered + b.id2 = 18; + b.ID = 19; + b.LAST_NAME = "Poet"; + b.dateOfBirth = new Date(2); + + B book = create().newRecord(TBook(), b); + A author = create().newRecord(TAuthor(), b); + + assertEquals(b.id, author.getValue(TAuthor_ID())); + assertEquals(b.firstName, author.getValue(TAuthor_FIRST_NAME())); + assertEquals(b.lastName, author.getValue(TAuthor_LAST_NAME())); + assertEquals(b.DATE_OF_BIRTH, author.getValue(TAuthor_DATE_OF_BIRTH())); + assertNull(author.getValue(TAuthor_YEAR_OF_BIRTH())); + + assertEquals(b.id, book.getValue(TBook_ID())); + assertEquals(b.title, book.getValue(TBook_TITLE())); + assertNull(book.getValue(TBook_AUTHOR_ID())); + assertNull(book.getValue(TBook_CONTENT_PDF())); + assertNull(book.getValue(TBook_CONTENT_TEXT())); + assertNull(book.getValue(TBook_LANGUAGE_ID())); + assertNull(book.getValue(TBook_PUBLISHED_IN())); + } + + @Test + public void testRecordFromUpdatePK() throws Exception { + + // TODO [#791] Fix test data and have all upper case columns everywhere + switch (getDialect()) { + case ASE: + case CUBRID: + case INGRES: + case POSTGRES: + log.info("SKIPPING", "testRecordFromUpdatePK() tests"); + return; + } + + jOOQAbstractTest.reset = false; + + // [#979] When using Record.from(), and the PK remains unchanged, there + // must not result an INSERT on a subsequent call to .store() + A author1 = create().selectFrom(TAuthor()).where(TAuthor_ID().equal(1)).fetchOne(); + AuthorWithoutAnnotations into1 = author1.into(AuthorWithoutAnnotations.class); + into1.yearOfBirth = null; + author1.from(into1); + assertEquals(1, author1.store()); + + A author2 = create().selectFrom(TAuthor()).where(TAuthor_ID().equal(1)).fetchOne(); + assertEquals(author1, author2); + assertEquals(author1.getValue(TAuthor_ID()), author2.getValue(TAuthor_ID())); + assertEquals(author1.getValue(TAuthor_FIRST_NAME()), author2.getValue(TAuthor_FIRST_NAME())); + assertEquals(author1.getValue(TAuthor_LAST_NAME()), author2.getValue(TAuthor_LAST_NAME())); + assertEquals(author1.getValue(TAuthor_DATE_OF_BIRTH()), author2.getValue(TAuthor_DATE_OF_BIRTH())); + assertEquals(author1.getValue(TAuthor_YEAR_OF_BIRTH()), author2.getValue(TAuthor_YEAR_OF_BIRTH())); + assertNull(author2.getValue(TAuthor_YEAR_OF_BIRTH())); + + // But when the PK is modified, be sure an INSERT is executed + A author3 = create().selectFrom(TAuthor()).where(TAuthor_ID().equal(1)).fetchOne(); + AuthorWithoutAnnotations into2 = author3.into(AuthorWithoutAnnotations.class); + into2.ID = 3; + author3.from(into2); + assertEquals(1, author3.store()); + + A author4 = create().selectFrom(TAuthor()).where(TAuthor_ID().equal(3)).fetchOne(); + assertEquals(author3, author4); + } + + @Test + public void testReflectionWithAnnotations() throws Exception { + + // TODO [#791] Fix test data and have all upper case columns everywhere + switch (getDialect()) { + case ASE: + case CUBRID: + case INGRES: + case POSTGRES: + log.info("SKIPPING", "fetchInto() tests"); + return; + } + + // [#933] Map values to char / Character + A author1 = create().newRecord(TAuthor()); + CharWithAnnotations c1 = author1.into(CharWithAnnotations.class); + assertEquals((char) 0, c1.id1); + assertEquals(null, c1.id2); + assertEquals((char) 0, c1.last1); + assertEquals(null, c1.last2); + + author1.setValue(TAuthor_ID(), 1); + author1.setValue(TAuthor_LAST_NAME(), "a"); + CharWithAnnotations c2 = author1.into(CharWithAnnotations.class); + assertEquals('1', c2.id1); + assertEquals('1', c2.id2.charValue()); + assertEquals('a', c2.last1); + assertEquals('a', c2.last2.charValue()); + + A author2 = create().newRecord(TAuthor(), c2); + assertEquals('1', author2.getValue(TAuthor_ID(), char.class).charValue()); + assertEquals('1', author2.getValue(TAuthor_ID(), Character.class).charValue()); + assertEquals('a', author2.getValue(TAuthor_LAST_NAME(), char.class).charValue()); + assertEquals('a', author2.getValue(TAuthor_LAST_NAME(), Character.class).charValue()); + + // [#934] Static members are not to be considered + assertEquals(create().newRecord(TBook()), create().newRecord(TBook(), new StaticWithAnnotations())); + create().newRecord(TBook()).into(StaticWithAnnotations.class); + assertEquals(13, StaticWithAnnotations.ID); + + // [#935] Final member fields are considered when reading + B book = create().newRecord(TBook()); + book.setValue(TBook_ID(), new FinalWithAnnotations().ID); + assertEquals(book, create().newRecord(TBook(), new FinalWithAnnotations())); + + // [#935] ... but not when writing + FinalWithAnnotations f = create().newRecord(TBook()).into(FinalWithAnnotations.class); + assertEquals(f.ID, new FinalWithAnnotations().ID); + } + + @Test + public void testReflectionWithoutAnnotations() throws Exception { + + // TODO [#791] Fix test data and have all upper case columns everywhere + switch (getDialect()) { + case ASE: + case CUBRID: + case INGRES: + case POSTGRES: + log.info("SKIPPING", "fetchInto() tests"); + return; + } + + // Arbitrary sources should have no effect + assertEquals(create().newRecord(TBook()), create().newRecord(TBook(), (Object) null)); + assertEquals(create().newRecord(TBook()), create().newRecord(TBook(), new Object())); + + // [#934] Static members are not to be considered + assertEquals(create().newRecord(TBook()), create().newRecord(TBook(), new StaticWithoutAnnotations())); + create().newRecord(TBook()).into(StaticWithoutAnnotations.class); + assertEquals(13, StaticWithoutAnnotations.ID); + + // [#935] Final member fields are considered when reading + B book = create().newRecord(TBook()); + book.setValue(TBook_ID(), new FinalWithoutAnnotations().ID); + assertEquals(book, create().newRecord(TBook(), new FinalWithoutAnnotations())); + + // [#935] ... but not when writing + FinalWithoutAnnotations f = create().newRecord(TBook()).into(FinalWithoutAnnotations.class); + assertEquals(f.ID, new FinalWithoutAnnotations().ID); + } + + @Test + public void testFetchIntoCustomTable() throws Exception { + + // TODO [#791] Fix test data and have all upper case columns everywhere + switch (getDialect()) { + case ASE: + case CUBRID: + case INGRES: + case POSTGRES: + log.info("SKIPPING", "fetchInto() tests"); + return; + } + + Result result = + create().select( + TBook_ID(), + TBook_TITLE(), + TAuthor_FIRST_NAME(), + TAuthor_LAST_NAME(), + TAuthor_DATE_OF_BIRTH()) + .from(TBook()) + .join(TAuthor()).on(TBook_AUTHOR_ID().equal(TAuthor_ID())) + .orderBy(TBook_ID()) + .fetchInto(BookTable.BOOK); + + assertEquals(4, result.size()); + + assertEquals(BOOK_IDS_SHORT, result.getValues(3)); + assertEquals(BOOK_IDS_SHORT, result.getValues(TBook_ID())); + assertEquals(BOOK_IDS_SHORT, result.getValues(BookTable.ID)); + assertEquals(Short.valueOf((short) 1), result.getValue(0, BookTable.ID)); + assertEquals(Short.valueOf((short) 2), result.getValue(1, BookTable.ID)); + assertEquals(Short.valueOf((short) 3), result.getValue(2, BookTable.ID)); + assertEquals(Short.valueOf((short) 4), result.getValue(3, BookTable.ID)); + + assertEquals(BOOK_TITLES, result.getValues(4)); + assertEquals(BOOK_TITLES, result.getValues(TBook_TITLE())); + assertEquals(BOOK_TITLES, result.getValues(BookTable.TITLE)); + + assertEquals(BOOK_FIRST_NAMES, result.getValues(0)); + assertEquals(BOOK_FIRST_NAMES, result.getValues(TAuthor_FIRST_NAME())); + assertEquals(BOOK_FIRST_NAMES, result.getValues(BookTable.FIRST_NAME)); + + assertEquals(BOOK_LAST_NAMES, result.getValues(2)); + assertEquals(BOOK_LAST_NAMES, result.getValues(TAuthor_LAST_NAME())); + assertEquals(BOOK_LAST_NAMES, result.getValues(BookTable.LAST_NAME)); + + assertEquals(Collections.nCopies(4, null), result.getValues(1)); + assertEquals(Collections.nCopies(4, null), result.getValues(BookTable.UNMATCHED)); + } + + @Test + public void testFetchIntoRecordHandler() throws Exception { + + // Test a simple query with typed records + // -------------------------------------- + final Queue ids = new LinkedList(); + final Queue titles = new LinkedList(); + + ids.addAll(BOOK_IDS); + titles.addAll(BOOK_TITLES); + + create().selectFrom(TBook()) + .orderBy(TBook_ID()) + .fetchInto(new RecordHandler() { + @Override + public void next(B record) { + assertEquals(ids.poll(), record.getValue(TBook_ID())); + assertEquals(titles.poll(), record.getValue(TBook_TITLE())); + } + }); + + assertTrue(ids.isEmpty()); + assertTrue(titles.isEmpty()); + + // Test lazy fetching + // -------------------------------------- + ids.addAll(BOOK_IDS); + titles.addAll(BOOK_TITLES); + + create().selectFrom(TBook()) + .orderBy(TBook_ID()) + .fetchLazy() + .fetchInto(new RecordHandler() { + @Override + public void next(B record) { + assertEquals(ids.poll(), record.getValue(TBook_ID())); + assertEquals(titles.poll(), record.getValue(TBook_TITLE())); + } + }); + + assertTrue(ids.isEmpty()); + assertTrue(titles.isEmpty()); + + // Test a generic query with any records + // ------------------------------------- + final Queue authorIDs = new LinkedList(); + final Queue count = new LinkedList(); + + authorIDs.addAll(Arrays.asList(1, 2)); + count.addAll(Arrays.asList(2, 2)); + + create().select(TBook_AUTHOR_ID(), count()) + .from(TBook()) + .groupBy(TBook_AUTHOR_ID()) + .orderBy(TBook_AUTHOR_ID()) + .fetchInto(new RecordHandler() { + @Override + public void next(Record record) { + assertEquals(authorIDs.poll(), record.getValue(TBook_AUTHOR_ID())); + assertEquals(count.poll(), record.getValue(count())); + } + }); + } + + @Test + public void testFetchLater() throws Exception { + Future> later; + Result result; + + int activeCount = Thread.activeCount(); + + later = create().selectFrom(TBook()).orderBy(TBook_ID()).fetchLater(); + + // That's too fast for the query to be done, mostly + assertFalse(later.isDone()); + assertFalse(later.isCancelled()); + assertEquals(activeCount + 1, Thread.activeCount()); + + // Get should make sure the internal thread is terminated + result = later.get(); + Thread.sleep(500); + assertEquals(activeCount, Thread.activeCount()); + + // Subsequent gets are ok + result = later.get(); + result = later.get(1000, TimeUnit.MILLISECONDS); + + // Check the data + assertEquals(4, result.size()); + assertEquals(BOOK_IDS, result.getValues(TBook_ID())); + + // Start new threads + later = create().selectFrom(TBook()).orderBy(TBook_ID()).fetchLater(); + later = create().selectFrom(TBook()).orderBy(TBook_ID()).fetchLater(); + later = create().selectFrom(TBook()).orderBy(TBook_ID()).fetchLater(); + assertEquals(activeCount + 3, Thread.activeCount()); + + // This should be enough to ensure that GC will collect finished threads + later = null; + System.gc(); + System.gc(); + Thread.sleep(500); + assertEquals(activeCount, Thread.activeCount()); + } + + @Test + public void testFetchResultSet() throws Exception { + assertEquals( + create().fetch("select * from t_author order by id"), + create().fetch(create().resultQuery("select * from t_author order by id").fetchResultSet())); + + ResultSet rs = create().resultQuery("select * from t_author order by id").fetchResultSet(); + assertTrue(rs.next()); + assertEquals(1, rs.getInt(1)); + assertEquals(1, rs.getInt(1)); + assertFalse(rs.wasNull()); + assertEquals(1, rs.getInt(TAuthor_ID().getName())); + assertEquals((short) 1, rs.getShort(TAuthor_ID().getName())); + assertEquals(1L, rs.getLong(TAuthor_ID().getName())); + assertEquals(AUTHOR_FIRST_NAMES.get(0), rs.getString(2)); + assertEquals(AUTHOR_FIRST_NAMES.get(0), rs.getString(TAuthor_FIRST_NAME().getName())); + assertEquals(AUTHOR_LAST_NAMES.get(0), rs.getString(3)); + assertEquals(AUTHOR_LAST_NAMES.get(0), rs.getString(TAuthor_LAST_NAME().getName())); + + assertTrue(rs.next()); + assertEquals(2, rs.getInt(1)); + assertEquals(2, rs.getInt(1)); + assertFalse(rs.wasNull()); + assertEquals(2, rs.getInt(TAuthor_ID().getName())); + + assertFalse(rs.next()); + rs.close(); + } + + @Test + public void testFetchLazy() throws Exception { + for (int fetchSize : Arrays.asList(0, 1)) { + + // --------------------------------------------------------------------- + // A regular pass through the cursor + // --------------------------------------------------------------------- + Cursor cursor = create().selectFrom(TBook()).orderBy(TBook_ID()).fetchLazy(fetchSize); + + assertTrue(cursor.hasNext()); + assertTrue(cursor.hasNext()); + assertEquals(Integer.valueOf(1), cursor.fetchOne().getValue(TBook_ID())); + assertEquals(Integer.valueOf(2), cursor.fetchOne().getValue(TBook_ID())); + + assertTrue(cursor.hasNext()); + assertTrue(cursor.hasNext()); + assertFalse(cursor.isClosed()); + + Iterator it = cursor.iterator(); + assertTrue(it.hasNext()); + assertTrue(cursor.hasNext()); + assertTrue(it.hasNext()); + assertTrue(cursor.hasNext()); + assertTrue(it.hasNext()); + assertTrue(cursor.hasNext()); + assertEquals(Integer.valueOf(3), it.next().getValue(TBook_ID())); + assertEquals(Integer.valueOf(4), it.next().getValue(TBook_ID())); + assertFalse(cursor.isClosed()); + + assertFalse(it.hasNext()); + assertFalse(cursor.hasNext()); + assertFalse(it.hasNext()); + assertFalse(cursor.hasNext()); + assertFalse(it.hasNext()); + assertFalse(cursor.hasNext()); + assertTrue(cursor.isClosed()); + + assertEquals(null, it.next()); + assertEquals(null, it.next()); + assertEquals(null, cursor.fetchOne()); + assertEquals(null, cursor.fetchOne()); + + cursor.close(); + cursor.close(); + assertTrue(cursor.isClosed()); + + // --------------------------------------------------------------------- + // Prematurely closing the cursor + // --------------------------------------------------------------------- + cursor = create().selectFrom(TBook()).orderBy(TBook_ID()).fetchLazy(fetchSize); + + assertTrue(cursor.hasNext()); + assertTrue(cursor.hasNext()); + assertEquals(Integer.valueOf(1), cursor.fetchOne().getValue(TBook_ID())); + assertEquals(Integer.valueOf(2), cursor.fetchOne().getValue(TBook_ID())); + assertFalse(cursor.isClosed()); + + cursor.close(); + assertTrue(cursor.isClosed()); + assertFalse(cursor.hasNext()); + assertNull(cursor.fetchOne()); + + // --------------------------------------------------------------------- + // Fetching several records at once + // --------------------------------------------------------------------- + cursor = create().selectFrom(TBook()).orderBy(TBook_ID()).fetchLazy(fetchSize); + Result fetch0 = cursor.fetch(0); + + assertTrue(fetch0.isEmpty()); + assertFalse(fetch0.isNotEmpty()); + assertTrue(fetch0.isEmpty()); + assertFalse(fetch0.isNotEmpty()); + + Result fetch1 = cursor.fetch(1); + assertEquals(1, fetch1.size()); + assertEquals(Integer.valueOf(1), fetch1.get(0).getValue(TBook_ID())); + + fetch1 = cursor.fetch(2); + assertEquals(2, fetch1.size()); + assertEquals(Integer.valueOf(2), fetch1.get(0).getValue(TBook_ID())); + assertEquals(Integer.valueOf(3), fetch1.get(1).getValue(TBook_ID())); + + fetch1 = cursor.fetch(2); + assertTrue(cursor.isClosed()); + assertEquals(1, fetch1.size()); + assertEquals(Integer.valueOf(4), fetch1.get(0).getValue(TBook_ID())); + } + } + + @Test + public void testFetchIntoGeneratedPojos() throws Exception { + try { + Reflect book = on(TBook().getClass().getPackage().getName() + ".pojos." + TBook().getClass().getSimpleName()); + + List books = + create().selectFrom(TBook()) + .orderBy(TBook_ID()) + .fetchInto((Class) book.get()); + + assertEquals(4, books.size()); + for (int i = 0; i < 4; i++) { + assertEquals(BOOK_IDS.get(i), on(books.get(i)).call("getId").get()); + assertEquals(BOOK_AUTHOR_IDS.get(i), on(books.get(i)).call("getAuthorId").get()); + assertEquals(BOOK_TITLES.get(i), on(books.get(i)).call("getTitle").get()); + } + } + catch (ReflectException e) { + log.info("SKIPPING", "Generated POJO tests"); + } + } +} diff --git a/jOOQ-test/src/org/jooq/test/_/testcases/FormatTests.java b/jOOQ-test/src/org/jooq/test/_/testcases/FormatTests.java new file mode 100644 index 00000000000..28ba33a6820 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/_/testcases/FormatTests.java @@ -0,0 +1,282 @@ +/** + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com + * All rights reserved. + * + * This software is licensed to you under the Apache License, Version 2.0 + * (the "License"); You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * 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 "jOOQ" 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 COPYRIGHT OWNER 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. + */ +package org.jooq.test._.testcases; + +import static junit.framework.Assert.assertEquals; +import static junit.framework.Assert.assertTrue; + +import java.io.ByteArrayInputStream; +import java.io.InputStream; +import java.util.List; + +import javax.xml.parsers.DocumentBuilder; +import javax.xml.parsers.DocumentBuilderFactory; +import javax.xml.xpath.XPath; +import javax.xml.xpath.XPathExpressionException; +import javax.xml.xpath.XPathFactory; + +import org.jooq.Field; +import org.jooq.Record; +import org.jooq.Result; +import org.jooq.TableRecord; +import org.jooq.UpdatableRecord; +import org.jooq.test.BaseTest; +import org.jooq.test.jOOQAbstractTest; + +import org.junit.Test; +import org.w3c.dom.Document; + +public class FormatTests< + A extends UpdatableRecord, + B extends UpdatableRecord, + S extends UpdatableRecord, + B2S extends UpdatableRecord, + BS extends UpdatableRecord, + L extends TableRecord, + X extends TableRecord, + DATE extends UpdatableRecord, + BOOL extends UpdatableRecord, + D extends UpdatableRecord, + T extends UpdatableRecord, + U extends TableRecord, + I extends TableRecord, + IPK extends UpdatableRecord, + T658 extends TableRecord, + T725 extends UpdatableRecord, + T639 extends UpdatableRecord, + T785 extends TableRecord> +extends BaseTest { + + public FormatTests(jOOQAbstractTest delegate) { + super(delegate); + } + + @Test + public void testFormatHTML() throws Exception { + List> fields = TBook().getFields(); + Result books = create().selectFrom(TBook()).fetch(); + String html = books.formatHTML(); + InputStream is = new ByteArrayInputStream(html.getBytes()); + + DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance(); + DocumentBuilder db = dbf.newDocumentBuilder(); + Document doc = db.parse(is); + + XPathFactory xpfactory = XPathFactory.newInstance(); + XPath xp = xpfactory.newXPath(); + + assertEquals("1", xp.evaluate("count(/table)", doc)); + assertEquals("1", xp.evaluate("count(/table/thead)", doc)); + assertEquals("1", xp.evaluate("count(/table/thead/tr)", doc)); + assertEquals("0", xp.evaluate("count(/table/thead/tr/td)", doc)); + assertEquals("" + fields.size(), + xp.evaluate("count(/table/thead/tr/th)", doc)); + + for (int i = 0; i < fields.size(); i++) { + assertEquals(fields.get(i).getName(), + xp.evaluate("/table/thead/tr/th[" + (i + 1) + "]/text()", doc)); + } + + assertEquals("1", xp.evaluate("count(/table/tbody)", doc)); + assertEquals("4", xp.evaluate("count(/table/tbody/tr)", doc)); + assertEquals("" + 4 * fields.size(), + xp.evaluate("count(/table/tbody/tr/td)", doc)); + + for (int j = 0; j < books.size(); j++) { + for (int i = 0; i < fields.size(); i++) { + assertEquals(books.getValueAsString(j, i, "{null}"), + xp.evaluate("/table/tbody/tr[" + (j + 1) + "]/td[" + (i + 1) + "]/text()", doc)); + } + } + } + + @Test + public void testFormatCSV() throws Exception { + List> fields = TBook().getFields(); + Result books = create().selectFrom(TBook()).fetch(); + String csv = books.formatCSV(); + + String[] lines = csv.split("\n"); + String[] fieldNames = lines[0].split(","); + + assertEquals(5, lines.length); + assertEquals(fields.size(), fieldNames.length); + + for (int i = 0; i < fields.size(); i++) { + assertEquals(fields.get(i).getName(), fieldNames[i]); + } + + for (int j = 1; j < lines.length; j++) { + for (int i = 0; i < fields.size(); i++) { + String value = books.getValueAsString(j - 1, i); + + if (value == null || "".equals(value)) { + value = "\"\""; + } + + String regex1 = ""; + String regex2 = ""; + + for (int x = 0; x < fields.size(); x++) { + if (x > 0) { + regex1 += ","; + regex2 += ","; + } + + if (x == i) { + regex1 += value; + regex2 += "\"" + value.replaceAll("\"", "\"\"") + "\""; + } + else { + regex1 += "((?!\")[^,]+|\"[^\"]*\")"; + regex2 += "((?!\")[^,]+|\"[^\"]*\")"; + } + } + + assertTrue(lines[j].matches(regex1) || lines[j].matches(regex2)); + } + } + } + + @Test + public void testFormatJSON() throws Exception { + List> fields = TBook().getFields(); + Result books = create().selectFrom(TBook()).fetch(); + String json = books.formatJSON(); + + // Fields header + String token1 = "{\"fields\":["; + assertTrue(json.startsWith(token1)); + json = json.replace(token1, ""); + + // Field names + String token2 = ""; + String separator = ""; + for (Field field : fields) { + token2 += separator + "\"" + field.getName() + "\""; + separator = ","; + } + assertTrue(json.startsWith(token2)); + json = json.replace(token2, ""); + + // Records header + String token3 = "],\"records\":["; + assertTrue(json.startsWith(token3)); + json = json.replace(token3, ""); + + // Record values + int i = 0; + for (Record record : books) { + i++; + String token4 = "["; + + if (i > 1) { + token4 = ",["; + } + + separator = ""; + for (Field field : fields) { + Object value = record.getValue(field); + + if (value == null) { + token4 += separator + null; + } + else if (value instanceof Number) { + token4 += separator + value; + } + else { + token4 += separator + "\"" + value.toString().replaceAll("\"", "\"\"") + "\""; + } + + separator = ","; + } + token4 += "]"; + assertTrue(json.startsWith(token4)); + json = json.replace(token4, ""); + } + + assertEquals("]}", json); + } + + @Test + public void testFormatXML() throws Exception { + Result books = create().selectFrom(TBook()).fetch(); + String xml = books.formatXML(); + InputStream is = new ByteArrayInputStream(xml.getBytes()); + + DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance(); + DocumentBuilder db = dbf.newDocumentBuilder(); + Document doc = db.parse(is); + + testXML(doc, books); + } + + @Test + public void testIntoXML() throws Exception { + Result books = create().selectFrom(TBook()).fetch(); + testXML(books.intoXML(), books); + } + + private void testXML(Document doc, Result books) throws XPathExpressionException { + XPathFactory xpfactory = XPathFactory.newInstance(); + XPath xp = xpfactory.newXPath(); + + List> fields = TBook().getFields(); + assertEquals("1", xp.evaluate("count(/result)", doc)); + assertEquals("1", xp.evaluate("count(/result/fields)", doc)); + assertEquals("" + fields.size(), + xp.evaluate("count(/result/fields/field)", doc)); + + for (int i = 0; i < fields.size(); i++) { + assertEquals(fields.get(i).getName(), + xp.evaluate("/result/fields/field[" + (i + 1) + "]/@name", doc)); + } + + assertEquals("1", xp.evaluate("count(/result/records)", doc)); + assertEquals("4", xp.evaluate("count(/result/records/record)", doc)); + assertEquals("" + 4 * fields.size(), + xp.evaluate("count(/result/records/record/value)", doc)); + + for (int j = 0; j < books.size(); j++) { + for (int i = 0; i < fields.size(); i++) { + assertEquals(fields.get(i).getName(), + xp.evaluate("/result/records/record[" + (j + 1) + "]/value[" + (i + 1) + "]/@field", doc)); + assertEquals(books.getValueAsString(j, i, ""), + xp.evaluate("/result/records/record[" + (j + 1) + "]/value[" + (i + 1) + "]/text()", doc)); + } + } + } +} diff --git a/jOOQ-test/src/org/jooq/test/_/testcases/FunctionTests.java b/jOOQ-test/src/org/jooq/test/_/testcases/FunctionTests.java new file mode 100644 index 00000000000..f6c8fa617cf --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/_/testcases/FunctionTests.java @@ -0,0 +1,961 @@ +/** + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com + * All rights reserved. + * + * This software is licensed to you under the Apache License, Version 2.0 + * (the "License"); You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * 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 "jOOQ" 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 COPYRIGHT OWNER 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. + */ +package org.jooq.test._.testcases; + +import static java.util.Arrays.asList; +import static junit.framework.Assert.assertEquals; +import static junit.framework.Assert.assertNotNull; +import static junit.framework.Assert.assertTrue; +import static org.jooq.SQLDialect.ASE; +import static org.jooq.SQLDialect.DB2; +import static org.jooq.SQLDialect.SQLSERVER; +import static org.jooq.impl.Factory.abs; +import static org.jooq.impl.Factory.acos; +import static org.jooq.impl.Factory.ascii; +import static org.jooq.impl.Factory.asin; +import static org.jooq.impl.Factory.atan; +import static org.jooq.impl.Factory.atan2; +import static org.jooq.impl.Factory.bitAnd; +import static org.jooq.impl.Factory.bitCount; +import static org.jooq.impl.Factory.bitLength; +import static org.jooq.impl.Factory.bitNand; +import static org.jooq.impl.Factory.bitNor; +import static org.jooq.impl.Factory.bitNot; +import static org.jooq.impl.Factory.bitOr; +import static org.jooq.impl.Factory.bitXNor; +import static org.jooq.impl.Factory.bitXor; +import static org.jooq.impl.Factory.castNull; +import static org.jooq.impl.Factory.ceil; +import static org.jooq.impl.Factory.charLength; +import static org.jooq.impl.Factory.coalesce; +import static org.jooq.impl.Factory.concat; +import static org.jooq.impl.Factory.cos; +import static org.jooq.impl.Factory.cosh; +import static org.jooq.impl.Factory.cot; +import static org.jooq.impl.Factory.coth; +import static org.jooq.impl.Factory.currentDate; +import static org.jooq.impl.Factory.currentTime; +import static org.jooq.impl.Factory.currentTimestamp; +import static org.jooq.impl.Factory.currentUser; +import static org.jooq.impl.Factory.day; +import static org.jooq.impl.Factory.decode; +import static org.jooq.impl.Factory.deg; +import static org.jooq.impl.Factory.exp; +import static org.jooq.impl.Factory.extract; +import static org.jooq.impl.Factory.field; +import static org.jooq.impl.Factory.floor; +import static org.jooq.impl.Factory.greatest; +import static org.jooq.impl.Factory.hour; +import static org.jooq.impl.Factory.least; +import static org.jooq.impl.Factory.length; +import static org.jooq.impl.Factory.ln; +import static org.jooq.impl.Factory.log; +import static org.jooq.impl.Factory.lower; +import static org.jooq.impl.Factory.lpad; +import static org.jooq.impl.Factory.ltrim; +import static org.jooq.impl.Factory.minute; +import static org.jooq.impl.Factory.month; +import static org.jooq.impl.Factory.nullif; +import static org.jooq.impl.Factory.nvl; +import static org.jooq.impl.Factory.nvl2; +import static org.jooq.impl.Factory.octetLength; +import static org.jooq.impl.Factory.position; +import static org.jooq.impl.Factory.power; +import static org.jooq.impl.Factory.rad; +import static org.jooq.impl.Factory.rand; +import static org.jooq.impl.Factory.repeat; +import static org.jooq.impl.Factory.replace; +import static org.jooq.impl.Factory.round; +import static org.jooq.impl.Factory.rpad; +import static org.jooq.impl.Factory.rtrim; +import static org.jooq.impl.Factory.second; +import static org.jooq.impl.Factory.shl; +import static org.jooq.impl.Factory.shr; +import static org.jooq.impl.Factory.sign; +import static org.jooq.impl.Factory.sin; +import static org.jooq.impl.Factory.sinh; +import static org.jooq.impl.Factory.sqrt; +import static org.jooq.impl.Factory.substring; +import static org.jooq.impl.Factory.tan; +import static org.jooq.impl.Factory.tanh; +import static org.jooq.impl.Factory.trim; +import static org.jooq.impl.Factory.upper; +import static org.jooq.impl.Factory.val; +import static org.jooq.impl.Factory.year; + +import java.math.BigDecimal; +import java.sql.Date; +import java.sql.Time; +import java.sql.Timestamp; +import java.util.Arrays; +import java.util.Calendar; + +import org.jooq.DatePart; +import org.jooq.Field; +import org.jooq.Record; +import org.jooq.Result; +import org.jooq.SQLDialect; +import org.jooq.Select; +import org.jooq.SelectQuery; +import org.jooq.Table; +import org.jooq.TableRecord; +import org.jooq.UpdatableRecord; +import org.jooq.impl.SQLDataType; +import org.jooq.test.BaseTest; +import org.jooq.test.jOOQAbstractTest; + +import org.junit.Test; + +public class FunctionTests< + A extends UpdatableRecord, + B extends UpdatableRecord, + S extends UpdatableRecord, + B2S extends UpdatableRecord, + BS extends UpdatableRecord, + L extends TableRecord, + X extends TableRecord, + DATE extends UpdatableRecord, + BOOL extends UpdatableRecord, + D extends UpdatableRecord, + T extends UpdatableRecord, + U extends TableRecord, + I extends TableRecord, + IPK extends UpdatableRecord, + T658 extends TableRecord, + T725 extends UpdatableRecord, + T639 extends UpdatableRecord, + T785 extends TableRecord> +extends BaseTest { + + public FunctionTests(jOOQAbstractTest delegate) { + super(delegate); + } + + @Test + public void testFunctionPosition() throws Exception { + // SQLite does not have anything like the position function + if (getDialect() == SQLDialect.SQLITE) { + log.info("SKIPPING", "position function test"); + return; + } + + SelectQuery q = create().selectQuery(); + q.addFrom(VLibrary()); + + Field position = position(VLibrary_AUTHOR(), "o").as("p"); + q.addSelect(VLibrary_AUTHOR()); + q.addSelect(position); + + // https://issues.apache.org/jira/browse/DERBY-5005 + q.addOrderBy(field(VLibrary_AUTHOR().getName())); + + q.execute(); + Record r1 = q.getResult().get(1); // George Orwell + Record r2 = q.getResult().get(2); // Paulo Coelho + + assertEquals(Integer.valueOf(3), r1.getValue(position)); + assertEquals(Integer.valueOf(5), r2.getValue(position)); + + // Implicit check on the rownum function in oracle dialect + L library = create().fetchAny(VLibrary()); + assertTrue(library != null); + } + + @Test + public void testFunctionsLikeDecode() throws Exception { + Field sNull = castNull(String.class); + Field iNull = castNull(Integer.class); + + // --------------------------------------------------------------------- + // NULLIF + // --------------------------------------------------------------------- + assertEquals("1", create().select(nullif("1", "2")).fetchOne(0)); + assertEquals(null, create().select(nullif("1", "1")).fetchOne(0)); + assertEquals("1", "" + create().select(nullif(1, 2)).fetchOne(0)); + assertEquals(null, create().select(nullif(1, 1)).fetchOne(0)); + + // --------------------------------------------------------------------- + // NVL + // --------------------------------------------------------------------- + assertEquals(null, create().select(nvl(sNull, sNull)).fetchOne(0)); + assertEquals(Integer.valueOf(1), create().select(nvl(iNull, 1)).fetchOne(0)); + assertEquals("1", create().select(nvl(sNull, "1")).fetchOne(0)); + assertEquals(Integer.valueOf(2), create().select(nvl(2, 1)).fetchOne(0)); + assertEquals("2", create().select(nvl("2", "1")).fetchOne(0)); + + // TODO [#831] Fix this for Sybase ASE + if (getDialect() != SQLDialect.ASE) { + assertTrue(("" + create() + .select(nvl(TBook_CONTENT_TEXT(), "abc")) + .from(TBook()) + .where(TBook_ID().equal(1)).fetchOne(0)).startsWith("To know and")); + assertEquals("abc", create() + .select(nvl(TBook_CONTENT_TEXT(), "abc")) + .from(TBook()) + .where(TBook_ID().equal(2)).fetchOne(0)); + } + + // --------------------------------------------------------------------- + // NVL2 + // --------------------------------------------------------------------- + assertEquals(null, create().select(nvl2(sNull, sNull, sNull)).fetchOne(0)); + assertEquals(Integer.valueOf(1), create().select(nvl2(iNull, 2, 1)).fetchOne(0)); + assertEquals("1", create().select(nvl2(sNull, "2", "1")).fetchOne(0)); + assertEquals(Integer.valueOf(2), create().select(nvl2(val(2), 2, 1)).fetchOne(0)); + assertEquals("2", create().select(nvl2(val("2"), "2", "1")).fetchOne(0)); + + // TODO [#831] Fix this for Sybase ASE + if (getDialect() != SQLDialect.ASE) { + assertEquals("abc", create() + .select(nvl2(TBook_CONTENT_TEXT(), "abc", "xyz")) + .from(TBook()) + .where(TBook_ID().equal(1)).fetchOne(0)); + assertEquals("xyz", create() + .select(nvl2(TBook_CONTENT_TEXT(), "abc", "xyz")) + .from(TBook()) + .where(TBook_ID().equal(2)).fetchOne(0)); + } + + // --------------------------------------------------------------------- + // COALESCE + // --------------------------------------------------------------------- + assertEquals(null, create().select(coalesce(sNull, sNull)).fetchOne(0)); + assertEquals(Integer.valueOf(1), create().select(coalesce(iNull, val(1))).fetchOne(0)); + assertEquals(Integer.valueOf(1), create().select(coalesce(iNull, iNull, val(1))).fetchOne(0)); + assertEquals(Integer.valueOf(1), create().select(coalesce(iNull, iNull, iNull, val(1))).fetchOne(0)); + + assertEquals("1", create().select(coalesce(sNull, val("1"))).fetchOne(0)); + assertEquals("1", create().select(coalesce(sNull, sNull, val("1"))).fetchOne(0)); + assertEquals("1", create().select(coalesce(sNull, sNull, sNull, val("1"))).fetchOne(0)); + + assertEquals(Integer.valueOf(2), create().select(coalesce(2, 1)).fetchOne(0)); + assertEquals(Integer.valueOf(2), create().select(coalesce(2, 1, 1)).fetchOne(0)); + assertEquals(Integer.valueOf(2), create().select(coalesce(2, 1, 1, 1)).fetchOne(0)); + + assertEquals("2", create().select(coalesce("2", "1")).fetchOne(0)); + assertEquals("2", create().select(coalesce("2", "1", "1")).fetchOne(0)); + assertEquals("2", create().select(coalesce("2", "1", "1", "1")).fetchOne(0)); + + assertTrue(("" + create() + .select(coalesce(TBook_CONTENT_TEXT().cast(String.class), sNull, val("abc"))) + .from(TBook()) + .where(TBook_ID().equal(1)).fetchOne(0)).startsWith("To know and")); + assertEquals("abc", create() + .select(coalesce(TBook_CONTENT_TEXT().cast(String.class), sNull, val("abc"))) + .from(TBook()) + .where(TBook_ID().equal(2)).fetchOne(0)); + + // --------------------------------------------------------------------- + // DECODE + // --------------------------------------------------------------------- + assertEquals(null, create().select(decode(sNull, sNull, sNull)).fetchOne(0)); + assertEquals(null, create().select(decode(iNull, val(2), val(1))).fetchOne(0)); + assertEquals(Integer.valueOf(1), create().select(decode(iNull, val(2), val(1), val(1))).fetchOne(0)); + assertEquals(Integer.valueOf(1), create().select(decode(iNull, iNull, val(1))).fetchOne(0)); + assertEquals(Integer.valueOf(1), create().select(decode(iNull, iNull, val(1), val(2))).fetchOne(0)); + assertEquals(Integer.valueOf(1), create().select(decode(iNull, val(2), val(2), iNull, val(1))).fetchOne(0)); + assertEquals(Integer.valueOf(1), create().select(decode(iNull, val(2), val(2), iNull, val(1), val(3))).fetchOne(0)); + + assertEquals(null, create().select(decode(sNull, "2", "1")).fetchOne(0)); + assertEquals("1", create().select(decode(sNull, "2", "1", "1")).fetchOne(0)); + assertEquals("1", create().select(decode(sNull, sNull, val("1"))).fetchOne(0)); + assertEquals("1", create().select(decode(sNull, sNull, val("1"), val("2"))).fetchOne(0)); + assertEquals("1", create().select(decode(sNull, val("2"), val("2"), sNull, val("1"))).fetchOne(0)); + assertEquals("1", create().select(decode(sNull, val("2"), val("2"), sNull, val("1"), val("3"))).fetchOne(0)); + + Field lang = TBook_LANGUAGE_ID().cast(Integer.class); + Result result = create().select( + decode(lang, 1, "EN"), + decode(lang, 1, "EN", "Other"), + decode(lang, 1, "EN", 2, "DE"), + decode(lang, 1, "EN", 2, "DE", "Other")) + .from(TBook()) + .orderBy(TBook_ID()).fetch(); + + assertEquals("EN", result.getValue(0, 0)); + assertEquals("EN", result.getValue(1, 0)); + assertEquals(null, result.getValue(2, 0)); + assertEquals(null, result.getValue(3, 0)); + + assertEquals("EN", result.getValue(0, 1)); + assertEquals("EN", result.getValue(1, 1)); + assertEquals("Other", result.getValue(2, 1)); + assertEquals("Other", result.getValue(3, 1)); + + assertEquals("EN", result.getValue(0, 2)); + assertEquals("EN", result.getValue(1, 2)); + assertEquals(null, result.getValue(2, 2)); + assertEquals("DE", result.getValue(3, 2)); + + assertEquals("EN", result.getValue(0, 3)); + assertEquals("EN", result.getValue(1, 3)); + assertEquals("Other", result.getValue(2, 3)); + assertEquals("DE", result.getValue(3, 3)); + } + + @Test + public void testCaseStatement() throws Exception { + Field case1 = decode() + .value(TBook_PUBLISHED_IN()) + .when(0, "ancient book") + .as("case1"); + + // Ingres does not allow sub selects in CASE expressions + Field case2 = getDialect() == SQLDialect.INGRES + ? decode() + .value(TBook_AUTHOR_ID()) + .when(1, "Orwell") + .otherwise("unknown") + : decode() + .value(TBook_AUTHOR_ID()) + .when(1, create().select(TAuthor_LAST_NAME()) + .from(TAuthor()) + .where(TAuthor_ID().equal(TBook_AUTHOR_ID())).asField()) + .otherwise("unknown"); + + Field case3 = decode() + .value(1) + .when(1, "A") + .when(2, "B") + .otherwise("C"); + + SelectQuery query = create().selectQuery(); + query.addSelect(case1, case2, case3); + query.addFrom(TBook()); + query.addOrderBy(TBook_PUBLISHED_IN()); + query.execute(); + + Result result = query.getResult(); + assertEquals(null, result.getValue(0, case1)); + assertEquals(null, result.getValue(1, case1)); + assertEquals(null, result.getValue(2, case1)); + assertEquals(null, result.getValue(3, case1)); + + assertEquals("Orwell", result.getValue(0, case2)); + assertEquals("Orwell", result.getValue(1, case2)); + assertEquals("unknown", result.getValue(2, case2)); + assertEquals("unknown", result.getValue(3, case2)); + + assertEquals("A", result.getValue(0, case3)); + assertEquals("A", result.getValue(1, case3)); + assertEquals("A", result.getValue(2, case3)); + assertEquals("A", result.getValue(3, case3)); + + Field case4 = decode() + .when(TBook_PUBLISHED_IN().equal(1948), "probably orwell") + .when(TBook_PUBLISHED_IN().equal(1988), "probably coelho") + .otherwise("don't know").as("case3"); + + query = create().selectQuery(); + query.addSelect(case4); + query.addFrom(TBook()); + query.addOrderBy(TBook_PUBLISHED_IN()); + query.execute(); + + result = query.getResult(); + + // Note: trims are necessary, as certain databases use + // CHAR datatype here, not VARCHAR + assertEquals("don't know", result.getValue(0, case4).trim()); + assertEquals("probably orwell", result.getValue(1, case4).trim()); + assertEquals("probably coelho", result.getValue(2, case4).trim()); + assertEquals("don't know", result.getValue(3, case4).trim()); + } + + @Test + public void testFunctionsOnStrings() throws Exception { + + // [#1241] Casting to CHAR. Some dialects don't like that. They should + // be casting to VARCHAR instead + assertEquals("abc", + create().select(field("cast('abc' as char(3))", SQLDataType.CHAR)) + .where(field("cast('abc' as char(3))", SQLDataType.CHAR).equal("abc")) + .fetchOne(0, String.class)); + + // Trimming + assertEquals("abc", create().select(trim("abc")).fetchOne(0)); + assertEquals("abc", create().select(trim("abc ")).fetchOne(0)); + assertEquals("abc", create().select(trim(" abc")).fetchOne(0)); + assertEquals("abc", create().select(trim(" abc ")).fetchOne(0)); + assertEquals(" abc", create().select(rtrim(" abc ")).fetchOne(0)); + assertEquals("abc ", create().select(ltrim(" abc ")).fetchOne(0)); + + // Lower / Upper + assertEquals("abc", create().select(lower("ABC")).fetchOne(0)); + assertEquals("ABC", create().select(upper("abc")).fetchOne(0)); + + // String concatenation + assertEquals("abc", create().select(concat("a", "b", "c")).fetchOne(0)); + assertEquals("George Orwell", create() + .select(concat(TAuthor_FIRST_NAME(), val(" "), TAuthor_LAST_NAME())) + .from(TAuthor()) + .where(TAuthor_FIRST_NAME().equal("George")).fetchOne(0)); + + assertEquals("1ab45", create().select(concat(val(1), val("ab"), val(45))).fetchOne(0)); + + // Standard String functions + SelectQuery q = create().selectQuery(); + Field constant = val("abc"); + + switch (getDialect()) { + + // DERBY does not have a replace function + case DERBY: + log.info("SKIPPING", "replace function test"); + break; + + // These two tests will validate #154 + default: { + Field x = replace(constant, "b", "x"); + Field y = replace(constant, "b", "y"); + Field z = replace(constant, "b"); + Record record = create().select(x, y, z).fetchOne(); + + assertEquals("axc", record.getValue(x)); + assertEquals("ayc", record.getValue(y)); + assertEquals("ac", record.getValue(z)); + } + } + + Field length = length(constant); + Field charLength = charLength(constant); + Field bitLength = bitLength(constant); + Field octetLength = octetLength(constant); + q.addSelect(length, charLength, bitLength, octetLength); + q.execute(); + + Record record = q.getResult().get(0); + + assertEquals(Integer.valueOf(3), record.getValue(length)); + assertEquals(Integer.valueOf(3), record.getValue(charLength)); + + switch (getDialect()) { + case HSQLDB: + case H2: + // HSQLDB and H2 uses Java-style characters (16 bit) + assertEquals(Integer.valueOf(48), record.getValue(bitLength)); + assertEquals(Integer.valueOf(6), record.getValue(octetLength)); + break; + + default: + assertEquals(Integer.valueOf(24), record.getValue(bitLength)); + assertEquals(Integer.valueOf(3), record.getValue(octetLength)); + break; + } + + // RPAD, LPAD + switch (getDialect()) { + case DERBY: + case SQLITE: + log.info("SKIPPING", "RPAD and LPAD functions"); + break; + + default: { + Record result = create().select( + rpad(val("aa"), 4), + rpad(val("aa"), 4, "-"), + lpad(val("aa"), 4), + lpad(val("aa"), 4, "-")).fetchOne(); + + assertEquals("aa ", result.getValue(0)); + assertEquals("aa--", result.getValue(1)); + assertEquals(" aa", result.getValue(2)); + assertEquals("--aa", result.getValue(3)); + + break; + } + } + + // SUBSTRING + Record result = create().select( + substring(val("abcde"), 1), + substring(val("abcde"), 1, 2), + substring(val("abcde"), 3), + substring(val("abcde"), 3, 2)).fetchOne(); + + assertEquals("abcde", result.getValue(0)); + assertEquals("ab", result.getValue(1)); + assertEquals("cde", result.getValue(2)); + assertEquals("cd", result.getValue(3)); + + result = + create().select( + substring(TAuthor_FIRST_NAME(), 2), + substring(TAuthor_FIRST_NAME(), 2, 2)) + .from(TAuthor()) + .where(TAuthor_ID().equal(1)) + .fetchOne(); + + assertEquals("eorge", result.getValue(substring(TAuthor_FIRST_NAME(), 2))); + assertEquals("eo", result.getValue(substring(TAuthor_FIRST_NAME(), 2, 2))); + + // REPEAT + switch (getDialect()) { + case DERBY: + case SQLITE: + log.info("SKIPPING", "REPEAT function"); + break; + + default: { + result = create().select( + repeat("a", 1), + repeat("ab", 2), + repeat("abc", 3)).fetchOne(); + assertEquals("a", result.getValue(0)); + assertEquals("abab", result.getValue(1)); + assertEquals("abcabcabc", result.getValue(2)); + break; + } + } + + // ASCII + switch (getDialect()) { + case DERBY: + case INGRES: // TODO [#864] + case SQLITE: // TODO [#862] + log.info("SKIPPING", "ASCII function test"); + break; + + default: + record = + create().select( + ascii("A"), + ascii("a"), + ascii("-"), + ascii(" ")).fetchOne(); + assertEquals((int) 'A', (int) record.getValueAsInteger(0)); + assertEquals((int) 'a', (int) record.getValueAsInteger(1)); + assertEquals((int) '-', (int) record.getValueAsInteger(2)); + assertEquals((int) ' ', (int) record.getValueAsInteger(3)); + + break; + } + } + + @Test + public void testFunctionsOnNumbers() throws Exception { + + // The random function + BigDecimal rand = create().select(rand()).fetchOne(rand()); + assertNotNull(rand); + + // Some rounding functions + Field f1a = round(1.111f); + Field f2a = round(1.111f, 2); + Field f3a = floor(1.111f); + Field f4a = ceil(1.111f); + Field f1b = round(-1.111); + Field f2b = round(-1.111, 2); + Field f3b = floor(-1.111); + Field f4b = ceil(-1.111); + + Field f1c = round(2.0f); + Field f2c = round(2.0f, 2); + Field f3c = floor(2.0f); + Field f4c = ceil(2.0f); + Field f1d = round(-2.0); + Field f2d = round(-2.0, 2); + Field f3d = floor(-2.0); + Field f4d = ceil(-2.0); + + // Some arbitrary checks on having multiple select clauses + Record record = + create().select(f1a) + .select(f2a, f3a) + .select(f4a) + .select(f1b, f2b, f3b, f4b) + .select(f1c, f2c, f3c, f4c) + .select(f1d, f2d, f3d, f4d).fetchOne(); + + assertNotNull(record); + assertEquals("1.0", record.getValueAsString(f1a)); + assertEquals("1.11", record.getValueAsString(f2a)); + assertEquals("1.0", record.getValueAsString(f3a)); + assertEquals("2.0", record.getValueAsString(f4a)); + + assertEquals("-1.0", record.getValueAsString(f1b)); + assertEquals("-1.11", record.getValueAsString(f2b)); + assertEquals("-2.0", record.getValueAsString(f3b)); + assertEquals("-1.0", record.getValueAsString(f4b)); + + assertEquals("2.0", record.getValueAsString(f1c)); + assertEquals("2.0", record.getValueAsString(f2c)); + assertEquals("2.0", record.getValueAsString(f3c)); + assertEquals("2.0", record.getValueAsString(f4c)); + + assertEquals("-2.0", record.getValueAsString(f1d)); + assertEquals("-2.0", record.getValueAsString(f2d)); + assertEquals("-2.0", record.getValueAsString(f3d)); + assertEquals("-2.0", record.getValueAsString(f4d)); + + // Greatest and least + record = create().select( + greatest(1, 2, 3, 4), + least(1, 2, 3), + greatest("1", "2", "3", "4"), + least("1", "2", "3")).fetchOne(); + + assertEquals(Integer.valueOf(4), record.getValue(0)); + assertEquals(Integer.valueOf(1), record.getValue(1)); + assertEquals("4", record.getValue(2)); + assertEquals("1", record.getValue(3)); + + // Greatest and least with tables. If they're simulated using subqueries + // there is a risk of breaking this functionality due to limited support + // for subqueries and derived tables... + Result result = create() + .select(TBook_ID(), + greatest(TBook_ID(), + TBook_AUTHOR_ID(), + TBook_LANGUAGE_ID()), + least(TBook_ID(), + TBook_AUTHOR_ID(), + TBook_LANGUAGE_ID())) + .from(TBook()) + .orderBy(TBook_ID()) + .fetch(); + + assertEquals(4, result.size()); + assertEquals(BOOK_IDS, result.getValues(TBook_ID())); + assertEquals(asList(1, 2, 4, 4), result.getValues(1)); + assertEquals(asList(1, 1, 2, 2), result.getValues(2)); + + // Mathematical functions + switch (getDialect()) { + case SQLITE: + log.info("SKIPPING", "Tests for mathematical functions"); + break; + + default: { + // Exponentials, logarithms and roots + // ---------------------------------- + Field m1 = sqrt(2); + Field m2 = round(sqrt(4)); + Field m3 = exp(2); + Field m4 = round(exp(0)); + Field m5 = exp(-2); + Field m6 = ln(2); + Field m7 = round(log(16, 4)); + Field m8 = round(power(2, 4)); + Field m9 = round(power(sqrt(power(sqrt(2), 2)), 2)); + + record = create().select(m1, m2, m3, m4, m5, m6, m7, m8, m9).fetchOne(); + + // Rounding issues are circumvented by using substring() + assertNotNull(record); + assertEquals("1.414", record.getValueAsString(m1).substring(0, 5)); + assertEquals("2", record.getValueAsString(m2).substring(0, 1)); + assertEquals("7.389", record.getValueAsString(m3).substring(0, 5)); + assertEquals("1", record.getValueAsString(m4).substring(0, 1)); + assertEquals("0.135", record.getValueAsString(m5).substring(0, 5)); + assertEquals("0.693", record.getValueAsString(m6).substring(0, 5)); + assertEquals("2", record.getValueAsString(m7).substring(0, 1)); + assertEquals("16", record.getValueAsString(m8).substring(0, 2)); + assertEquals("2", record.getValueAsString(m9).substring(0, 1)); + + // Trigonometry + // ------------ + Field t1 = sin(Math.PI / 6 + 0.00001); + Field t2 = cos(Math.PI / 6); + Field t3 = tan(Math.PI / 6); + Field t4 = cot(Math.PI / 6); + Field t6 = rad(deg(1.1)); + Field t7 = asin(Math.PI / 6); + Field t8 = acos(Math.PI / 6); + Field t9 = atan(Math.PI / 6); + Field ta = round(deg(atan2(1, 1))); + + // Hyperbolic functions + // -------------------- + Field tb = sinh(1.0) + .div(cosh(1.0)) + .mul(tanh(1.0)) + .mul(power(coth(1.0), 2).add(0.1)); + + record = create().select(t1, t2, t3, t4, t6, t7, t8, t9, ta, tb).fetchOne(); + + // Rounding issues are circumvented by using substring() + assertNotNull(record); + assertEquals("0.5", record.getValueAsString(t1).substring(0, 3)); + assertEquals("0.866", record.getValueAsString(t2).substring(0, 5)); + assertEquals("0.577", record.getValueAsString(t3).substring(0, 5)); + assertEquals("1.732", record.getValueAsString(t4).substring(0, 5)); + assertEquals("1", record.getValueAsString(t6).substring(0, 1)); + assertEquals("0.551", record.getValueAsString(t7).substring(0, 5)); + assertEquals("1.019", record.getValueAsString(t8).substring(0, 5)); + assertEquals("0.482", record.getValueAsString(t9).substring(0, 5)); + assertEquals("45", record.getValueAsString(ta).substring(0, 2)); + assertEquals("1", record.getValueAsString(tb).substring(0, 1)); + + break; + } + } + + // The sign function + record = create().select( + sign(2), + sign(1), + sign(0), + sign(-1), + sign(-2)).fetchOne(); + + assertNotNull(record); + assertEquals(Integer.valueOf(1), record.getValue(0)); + assertEquals(Integer.valueOf(1), record.getValue(1)); + assertEquals(Integer.valueOf(0), record.getValue(2)); + assertEquals(Integer.valueOf(-1), record.getValue(3)); + assertEquals(Integer.valueOf(-1), record.getValue(4)); + + // The abs function + record = create().select( + abs(2), + abs(1), + abs(0), + abs(-1), + abs(-2)).fetchOne(); + + assertNotNull(record); + assertEquals(Integer.valueOf(2), record.getValue(0)); + assertEquals(Integer.valueOf(1), record.getValue(1)); + assertEquals(Integer.valueOf(0), record.getValue(2)); + assertEquals(Integer.valueOf(1), record.getValue(3)); + assertEquals(Integer.valueOf(2), record.getValue(4)); + } + + @Test + public void testFunctionsOnDates() throws Exception { + + // Some checks on current_timestamp functions + // ------------------------------------------ + SelectQuery q1 = create().selectQuery(); + Field now = currentTimestamp(); + Field ts = now.as("ts"); + Field date = currentDate().as("d"); + Field, + B extends UpdatableRecord, + S extends UpdatableRecord, + B2S extends UpdatableRecord, + BS extends UpdatableRecord, + L extends TableRecord, + X extends TableRecord, + DATE extends UpdatableRecord, + BOOL extends UpdatableRecord, + D extends UpdatableRecord, + T extends UpdatableRecord, + U extends TableRecord, + I extends TableRecord, + IPK extends UpdatableRecord, + T658 extends TableRecord, + T725 extends UpdatableRecord, + T639 extends UpdatableRecord, + T785 extends TableRecord> +extends BaseTest { + + public GeneralTests(jOOQAbstractTest delegate) { + super(delegate); + } + + @Test + public void testLiterals() throws Exception { + Record record = create().select(zero(), one(), two(), pi(), e(), rad(deg(pi()))).fetchOne(); + + assertEquals(0, record.getValue(0)); + assertEquals(1, record.getValue(1)); + assertEquals(2, record.getValue(2)); + assertEquals("3.141", record.getValueAsString(3).substring(0, 5)); + assertEquals("2.718", record.getValueAsString(4).substring(0, 5)); + assertEquals("3.141", record.getValueAsString(5).substring(0, 5)); + } + + @Test + public void testSequences() throws Exception { + if (cSequences() == null) { + log.info("SKIPPING", "sequences test"); + return; + } + + jOOQAbstractTest.reset = false; + + Sequence sequence = SAuthorID(); + Field nextval = sequence.nextval(); + Field currval = null; + + assertEquals("3", "" + create().select(nextval).fetchOne(nextval)); + assertEquals("4", "" + create().select(nextval).fetchOne(nextval)); + assertEquals("5", "" + create().select(nextval).fetchOne(nextval)); + + switch (getDialect()) { + // HSQLDB and DERBY don't support currval, so don't test it + case HSQLDB: + case DERBY: + + // Ingres has smoe weird issue, claiming that NEXT VALUE was not + // requested before CURRENT VALUE + case INGRES: + log.info("SKIPPING", "Sequence CURRVAL tests"); + break; + + default: + currval = sequence.currval(); + assertEquals("5", "" + create().select(currval).fetchOne(currval)); + assertEquals("5", "" + create().select(currval).fetchOne(currval)); + + assertEquals(5, create().currval(sequence).intValue()); + assertEquals(5, create().currval(sequence).intValue()); + } + + assertEquals("6", "" + create().select(nextval).fetchOne(nextval)); + + // Test convenience syntax + assertEquals(7, create().nextval(sequence).intValue()); + assertEquals(8, create().nextval(sequence).intValue()); + } + + @Test + public void testAccessInternalRepresentation() throws Exception { + SelectQuery query = + create().select(TBook_ID()) + .from(TBook()) + .where(TBook_ID().in(1, 2, 3)) + .getQuery(); + + query.addGroupBy(TBook_ID()); + query.addHaving(count().greaterOrEqual(1)); + query.addOrderBy(TBook_ID()); + query.execute(); + + Result result = query.getResult(); + + assertEquals(3, result.size()); + assertEquals(Arrays.asList(1, 2, 3), result.getValues(TBook_ID())); + } + + @Test + public void testSerialisation() throws Exception { + jOOQAbstractTest.reset = false; + + Select q = create().selectFrom(TAuthor()).orderBy(TAuthor_LAST_NAME()); + + // Serialising the unexecuted query + // --------------------------------------------------------------------- + q = runSerialisation(q); + + try { + q.execute(); + fail(); + } catch (DetachedException expected) {} + + // Serialising the executed query + // --------------------------------------------------------------------- + create().attach(q); + assertEquals(2, q.execute()); + assertEquals("Coelho", q.getResult().getValue(0, TAuthor_LAST_NAME())); + assertEquals("Orwell", q.getResult().getValue(1, TAuthor_LAST_NAME())); + + q = runSerialisation(q); + assertEquals("Coelho", q.getResult().getValue(0, TAuthor_LAST_NAME())); + assertEquals("Orwell", q.getResult().getValue(1, TAuthor_LAST_NAME())); + + Result result = q.getResult(); + result = runSerialisation(result); + assertEquals("Coelho", result.getValue(0, TAuthor_LAST_NAME())); + assertEquals("Orwell", result.getValue(1, TAuthor_LAST_NAME())); + + try { + result.get(1).setValue(TAuthor_FIRST_NAME(), "Georgie"); + result.get(1).store(); + fail(); + } catch (DetachedException expected) {} + + create().attach(result); + assertEquals(1, result.get(1).store()); + assertEquals("Georgie", create() + .fetchOne(TAuthor(), TAuthor_LAST_NAME().equal("Orwell")) + .getValue(TAuthor_FIRST_NAME())); + + // Redoing the test with a ConfigurationRegistry + // --------------------------------------------------------------------- + register(create()); + try { + q = create().selectFrom(TAuthor()).orderBy(TAuthor_LAST_NAME()); + q = runSerialisation(q); + q.execute(); + + result = q.getResult(); + result = runSerialisation(result); + assertEquals("Coelho", result.getValue(0, TAuthor_LAST_NAME())); + assertEquals("Orwell", result.getValue(1, TAuthor_LAST_NAME())); + + result.get(1).setValue(TAuthor_FIRST_NAME(), "Georgie"); + result.get(1).store(); + } + finally { + register(null); + } + + + // Redoing the test with a ConfigurationRegistry, registering after + // deserialisation + // --------------------------------------------------------------------- + try { + q = create().selectFrom(TAuthor()).orderBy(TAuthor_LAST_NAME()); + q = runSerialisation(q); + + register(create()); + q.execute(); + register(null); + + result = q.getResult(); + result = runSerialisation(result); + assertEquals("Coelho", result.getValue(0, TAuthor_LAST_NAME())); + assertEquals("Orwell", result.getValue(1, TAuthor_LAST_NAME())); + + result.get(1).setValue(TAuthor_FIRST_NAME(), "G"); + + register(create()); + result.get(1).store(); + } + finally { + register(null); + } + + // [#775] Test for proper lazy execution after deserialisation + try { + q = create().selectFrom(TAuthor()).orderBy(TAuthor_LAST_NAME()); + q = runSerialisation(q); + + register(create()); + Cursor cursor = q.fetchLazy(); + register(null); + + assertEquals("Coelho", cursor.fetchOne().getValue(TAuthor_LAST_NAME())); + assertEquals("Orwell", cursor.fetchOne().getValue(TAuthor_LAST_NAME())); + } + finally { + register(null); + } + + // [#1191] Check execution capabilities with new features in ExecuteListener + ConnectionProviderListener.c = create().getConnection(); + try { + q = create(new Settings().withExecuteListeners(ConnectionProviderListener.class.getName())) + .selectFrom(TAuthor()) + .orderBy(TAuthor_LAST_NAME()); + q = runSerialisation(q); + q.execute(); + + result = q.getResult(); + result = runSerialisation(result); + assertEquals("Coelho", result.getValue(0, TAuthor_LAST_NAME())); + assertEquals("Orwell", result.getValue(1, TAuthor_LAST_NAME())); + + result.get(1).setValue(TAuthor_FIRST_NAME(), "Gee-Gee"); + result.get(1).store(); + } + finally { + ConnectionProviderListener.c = null; + } + + // [#1071] Check sequences + if (cSequences() == null) { + log.info("SKIPPING", "sequences test"); + } + else { + Select s; + + s = create().select(SAuthorID().nextval(), SAuthorID().currval()); + s = runSerialisation(s); + } + } + + public static class ConnectionProviderListener extends DefaultExecuteListener { + + static Connection c; + + @Override + public void start(ExecuteContext ctx) { + ctx.setConnection(c); + } + } + + @SuppressWarnings("deprecation") + protected final void register(final Configuration configuration) { + ConfigurationRegistry.setProvider(new ConfigurationProvider() { + + @Override + public Configuration provideFor(Configuration c) { + return configuration; + } + + @Override + public String toString() { + return "Test Provider"; + } + }); + } + + @SuppressWarnings("unchecked") + private Z runSerialisation(Z value) throws Exception { + ByteArrayOutputStream out = new ByteArrayOutputStream(); + ObjectOutputStream o = new ObjectOutputStream(out); + o.writeObject(value); + o.flush(); + + ByteArrayInputStream in = new ByteArrayInputStream(out.toByteArray()); + ObjectInputStream i = new ObjectInputStream(in); + return (Z) i.readObject(); + } + + @Test + public void testAttachable() throws Exception { + jOOQAbstractTest.reset = false; + + Factory create = create(); + + S store = create.newRecord(TBookStore()); + assertNotNull(store); + + store.setValue(TBookStore_NAME(), "Barnes and Noble"); + assertEquals(1, store.store()); + + store = create.newRecord(TBookStore()); + store.setValue(TBookStore_NAME(), "Barnes and Noble"); + store.attach(null); + + try { + store.store(); + fail(); + } + catch (DetachedException expected) {} + + try { + store.refresh(); + fail(); + } + catch (DetachedException expected) {} + + try { + store.delete(); + fail(); + } + catch (DetachedException expected) {} + + store.attach(create); + store.refresh(); + assertEquals(1, store.delete()); + assertNull(create.fetchOne(TBookStore(), TBookStore_NAME().equal("Barnes and Noble"))); + } + + @Test + public void testDual() throws Exception { + assertEquals(1, (int) create().selectOne().fetchOne(0, Integer.class)); + assertEquals(1, (int) create().selectOne().where(one().equal(1)).fetchOne(0, Integer.class)); + } + + @SuppressWarnings("unchecked") + @Test + public void testNULL() throws Exception { + jOOQAbstractTest.reset = false; + + // [#1083] There is a subtle difference in inlining NULL or binding it + Field n1 = castNull(Integer.class); + Field n2 = val(null, Integer.class); + Field c = val(1); + + for (Field n : asList(n1, n2)) { + assertEquals(null, create().select(n).fetchOne(n)); + assertEquals(Integer.valueOf(1), create().select(c).from(TAuthor()).where(TAuthor_ID().equal(1)).and(n.isNull()).fetchOne(c)); + assertEquals(Integer.valueOf(1), create().select(c).from(TAuthor()).where(TAuthor_ID().equal(1)).and(n.equal(n)).fetchOne(c)); + assertEquals(null, create().selectOne().from(TAuthor()).where(n.isNotNull()).fetchAny()); + assertEquals(null, create().selectOne().from(TAuthor()).where(n.notEqual(n)).fetchAny()); + } + + UpdateQuery u = create().updateQuery(TAuthor()); + u.addValue(TAuthor_YEAR_OF_BIRTH(), (Integer) null); + u.execute(); + + Result records = create() + .selectFrom(TAuthor()) + .where(TAuthor_YEAR_OF_BIRTH().isNull()) + .fetch(); + assertEquals(2, records.size()); + assertEquals(null, records.getValue(0, TAuthor_YEAR_OF_BIRTH())); + } + + @Test + public void testEquals() throws Exception { + + // Record.equals() + // --------------- + assertEquals(create().selectFrom(TBook()).fetchAny(), + create().selectFrom(TBook()).fetchAny()); + assertEquals(create().selectFrom (TBook()).fetchAny(), + create().select().from(TBook()).fetchAny()); + + assertEquals(create().select(TBook_ID(), TBook_TITLE()).from(TBook()).fetchAny(), + create().select(TBook_ID(), TBook_TITLE()).from(TBook()).fetchAny()); + assertEquals(create().select(TBook_ID(), TBook_TITLE()).from(TBook()).fetchAny(), + create().select(TBook_ID(), trim(TBook_TITLE())).from(TBook()).fetchAny()); + + assertFalse(create().select(TBook_ID(), TBook_TITLE()).from(TBook()).fetchAny().equals( + create().select(TBook_TITLE(), TBook_ID()).from(TBook()).fetchAny())); + + // Result.equals() + // --------------- + assertEquals(create().selectFrom(TBook()).fetch(), + create().selectFrom(TBook()).fetch()); + assertEquals(create().selectFrom (TBook()).fetch(), + create().select().from(TBook()).fetch()); + assertEquals(create().selectFrom (TBook()).limit(1).fetch(), + create().select().from(TBook()).limit(1).fetch()); + + assertEquals(create().select(TBook_ID(), TBook_TITLE()).from(TBook()).fetch(), + create().select(TBook_ID(), TBook_TITLE()).from(TBook()).fetch()); + assertEquals(create().select(TBook_ID(), TBook_TITLE()).from(TBook()).fetch(), + create().select(TBook_ID(), trim(TBook_TITLE())).from(TBook()).fetch()); + + assertFalse(create().selectFrom(TBook()).orderBy(TBook_ID().asc()).fetch().equals( + create().selectFrom(TBook()).orderBy(TBook_ID().desc()).fetch())); + + assertFalse(create().select(TBook_ID(), TBook_TITLE()).from(TBook()).fetch().equals( + create().select(TBook_TITLE(), TBook_ID()).from(TBook()).fetch())); + } + + @Test + public void testMetaModel() throws Exception { + + // Test correct source code generation for the meta model + Schema schema = TAuthor().getSchema(); + if (schema != null) { + int sequences = 0; + + if (cSequences() != null) { + sequences++; + + // DB2 has an additional sequence for the T_TRIGGERS table + if (getDialect() == DB2 || + getDialect() == H2) { + + sequences++; + } + + // CUBRID generates sequences for AUTO_INCREMENT columns + else if (getDialect() == CUBRID) { + sequences += 3; + } + + // Oracle has additional sequences for [#961] + else if (getDialect() == ORACLE) { + sequences += 5; + } + } + + assertEquals(sequences, schema.getSequences().size()); + for (Table table : schema.getTables()) { + assertEquals(table, schema.getTable(table.getName())); + } + for (UDT udt : schema.getUDTs()) { + assertEquals(udt, schema.getUDT(udt.getName())); + } + for (Sequence sequence : schema.getSequences()) { + assertEquals(sequence, schema.getSequence(sequence.getName())); + } + + int tables = 17; + + // The additional T_DIRECTORY table for recursive queries + if (supportsRecursiveQueries()) { + tables++; + } + + // The additional T_TRIGGERS table for INSERT .. RETURNING + if (TTriggers() != null) { + tables++; + } + + // The additional T_UNSIGNED table + if (TUnsigned() != null) { + tables++; + } + + // The additional T_IDENTITY table + if (TIdentity() != null) { + tables++; + } + + // The additional T_IDENTITY_PK table + if (TIdentityPK() != null) { + tables++; + } + + // [#959] The T_959 table for enum collisions with Java keywords + if (getDialect() == MYSQL || + getDialect() == POSTGRES) { + tables++; + } + + // [#986] Some foreign key name collision checks + if (getDialect() == ASE || + getDialect() == CUBRID || + getDialect() == DB2 || + getDialect() == POSTGRES || + getDialect() == SQLITE || + getDialect() == SYBASE) { + + tables += 2; + } + + if (TArrays() == null) { + assertEquals(tables, schema.getTables().size()); + } + + // [#624] The V_INCOMPLETE view is only available in Oracle + // [#877] The T_877 table is only available in H2 + else if (getDialect() == ORACLE || + getDialect() == H2) { + assertEquals(tables + 2, schema.getTables().size()); + } + + // [#610] Collision-prone entities are only available in HSQLDB + else if (getDialect() == HSQLDB) { + assertEquals(tables + 11, schema.getTables().size()); + } + + else { + assertEquals(tables + 1, schema.getTables().size()); + } + + if (cUAddressType() == null) { + assertEquals(0, schema.getUDTs().size()); + } + // [#643] The U_INVALID types are only available in Oracle + // [#799] The member procedure UDT's too + else if (getDialect() == ORACLE) { + assertEquals(7, schema.getUDTs().size()); + } + else { + assertEquals(2, schema.getUDTs().size()); + } + } + + // Test correct source code generation for identity columns + assertNull(TAuthor().getIdentity()); + assertNull(TBook().getIdentity()); + + if (TIdentity() != null || TIdentityPK() != null) { + if (TIdentity() != null) { + assertEquals(TIdentity(), TIdentity().getIdentity().getTable()); + assertEquals(TIdentity_ID(), TIdentity().getIdentity().getField()); + } + + if (TIdentityPK() != null) { + assertEquals(TIdentityPK(), TIdentityPK().getIdentity().getTable()); + assertEquals(TIdentityPK_ID(), TIdentityPK().getIdentity().getField()); + } + } + else { + log.info("SKIPPING", "Identity tests"); + } + + // Test correct source code generation for relations + assertNotNull(TAuthor().getMainKey()); + assertNotNull(TAuthor().getKeys()); + assertTrue(TAuthor().getKeys().contains(TAuthor().getMainKey())); + assertEquals(1, TAuthor().getKeys().size()); + assertEquals(1, TAuthor().getMainKey().getFields().size()); + assertEquals(TAuthor_ID(), TAuthor().getMainKey().getFields().get(0)); + + if (supportsReferences()) { + assertEquals(0, TAuthor().getReferences().size()); + assertEquals(2, TAuthor().getMainKey().getReferences().size()); + assertEquals(TBook(), TAuthor().getMainKey().getReferences().get(0).getTable()); + assertEquals(TBook(), TAuthor().getMainKey().getReferences().get(1).getTable()); + assertEquals(Arrays.asList(), TAuthor().getReferencesTo(TBook())); + assertTrue(TBook().getReferences().containsAll(TAuthor().getReferencesFrom(TBook()))); + assertTrue(TBook().getReferences().containsAll(TBook().getReferencesFrom(TAuthor()))); + assertEquals(TBook().getReferencesTo(TAuthor()), TAuthor().getReferencesFrom(TBook())); + } + else { + log.info("SKIPPING", "References tests"); + } + + for (Field field : T639().getFields()) { + if ("BYTE".equalsIgnoreCase(field.getName())) { + assertEquals(Byte.class, field.getType()); + assertEquals(SQLDataType.TINYINT, field.getDataType()); + } + else if ("SHORT".equalsIgnoreCase(field.getName())) { + assertEquals(Short.class, field.getType()); + assertEquals(SQLDataType.SMALLINT, field.getDataType()); + } + else if ("INTEGER".equalsIgnoreCase(field.getName())) { + assertEquals(Integer.class, field.getType()); + assertEquals(SQLDataType.INTEGER, field.getDataType()); + } + else if ("LONG".equalsIgnoreCase(field.getName())) { + assertEquals(Long.class, field.getType()); + assertEquals(SQLDataType.BIGINT, field.getDataType()); + } + else if ("BYTE_DECIMAL".equalsIgnoreCase(field.getName())) { + assertEquals(Byte.class, field.getType()); + assertEquals(SQLDataType.TINYINT, field.getDataType()); + } + else if ("SHORT_DECIMAL".equalsIgnoreCase(field.getName())) { + assertEquals(Short.class, field.getType()); + assertEquals(SQLDataType.SMALLINT, field.getDataType()); + } + else if ("INTEGER_DECIMAL".equalsIgnoreCase(field.getName())) { + assertEquals(Integer.class, field.getType()); + assertEquals(SQLDataType.INTEGER, field.getDataType()); + } + else if ("LONG_DECIMAL".equalsIgnoreCase(field.getName())) { + assertEquals(Long.class, field.getType()); + assertEquals(SQLDataType.BIGINT, field.getDataType()); + } + else if ("BIG_INTEGER".equalsIgnoreCase(field.getName())) { + assertEquals(BigInteger.class, field.getType()); + assertEquals(SQLDataType.DECIMAL_INTEGER, field.getDataType()); + } + + // [#745] TODO: Unify distinction between NUMERIC and DECIMAL + else if ("BIG_DECIMAL".equalsIgnoreCase(field.getName()) + && getDialect() != SQLDialect.ORACLE + && getDialect() != SQLDialect.POSTGRES + && getDialect() != SQLDialect.SQLITE + && getDialect() != SQLDialect.SQLSERVER) { + + assertEquals(BigDecimal.class, field.getType()); + assertEquals(SQLDataType.DECIMAL, field.getDataType()); + } + else if ("BIG_DECIMAL".equalsIgnoreCase(field.getName())) { + assertEquals(BigDecimal.class, field.getType()); + assertEquals(SQLDataType.NUMERIC, field.getDataType()); + } + + // [#746] TODO: Interestingly, HSQLDB and MySQL match REAL with DOUBLE. + // There is no matching type for java.lang.Float... + else if ("FLOAT".equalsIgnoreCase(field.getName()) + && getDialect() != SQLDialect.HSQLDB + && getDialect() != SQLDialect.MYSQL + && getDialect() != SQLDialect.SYBASE) { + + assertEquals(Float.class, field.getType()); + assertEquals(SQLDataType.REAL, field.getDataType()); + } + else if ("FLOAT".equalsIgnoreCase(field.getName()) + && getDialect() != SQLDialect.MYSQL + && getDialect() != SQLDialect.SYBASE) { + + assertEquals(Double.class, field.getType()); + assertEquals(SQLDataType.DOUBLE, field.getDataType()); + } + else if ("FLOAT".equalsIgnoreCase(field.getName())) { + assertEquals(Double.class, field.getType()); + assertEquals(SQLDataType.FLOAT, field.getDataType()); + } + + // [#746] TODO: Fix this, too + else if ("DOUBLE".equalsIgnoreCase(field.getName()) + && getDialect() != SQLDialect.SQLSERVER + && getDialect() != SQLDialect.ASE) { + + assertEquals(Double.class, field.getType()); + assertEquals(SQLDataType.DOUBLE, field.getDataType()); + } + else if ("DOUBLE".equalsIgnoreCase(field.getName())) { + assertEquals(Double.class, field.getType()); + assertEquals(SQLDataType.FLOAT, field.getDataType()); + } + } + } + + @Test + public void testBatchSingle() throws Exception { + jOOQAbstractTest.reset = false; + + int[] result = create().batch(create().insertInto(TAuthor()) + .set(TAuthor_ID(), 8) + .set(TAuthor_LAST_NAME(), "Gamma")) + .bind(8, "Gamma") + .bind(9, "Helm") + .bind(10, "Johnson") + .execute(); + + assertEquals(3, result.length); + testBatchAuthors(); + } + + @Test + public void testBatchMultiple() throws Exception { + jOOQAbstractTest.reset = false; + + int[] result = create().batch( + create().insertInto(TAuthor()) + .set(TAuthor_ID(), 8) + .set(TAuthor_LAST_NAME(), "Gamma"), + + create().insertInto(TAuthor()) + .set(TAuthor_ID(), 9) + .set(TAuthor_LAST_NAME(), "Helm"), + + create().insertInto(TBook()) + .set(TBook_ID(), 6) + .set(TBook_AUTHOR_ID(), 8) + .set(TBook_PUBLISHED_IN(), 1994) + .set((Field)TBook_LANGUAGE_ID(), on(TBook_LANGUAGE_ID().getDataType().getType()).get("en")) + .set(TBook_CONTENT_TEXT(), "Design Patterns are awesome") + .set(TBook_TITLE(), "Design Patterns"), + + create().insertInto(TAuthor()) + .set(TAuthor_ID(), 10) + .set(TAuthor_LAST_NAME(), "Johnson")).execute(); + + assertEquals(4, result.length); + assertEquals(5, create().fetch(TBook()).size()); + assertEquals(1, create().fetch(TBook(), TBook_AUTHOR_ID().equal(8)).size()); + testBatchAuthors(); + } + + private void testBatchAuthors() throws Exception { + assertEquals(5, create().fetch(TAuthor()).size()); + + assertEquals(Arrays.asList(8, 9, 10), + create().select(TAuthor_ID()) + .from(TAuthor()) + .where(TAuthor_ID().in(8, 9, 10)) + .orderBy(TAuthor_ID()) + .fetch(TAuthor_ID())); + + assertEquals(Arrays.asList("Gamma", "Helm", "Johnson"), + create().select(TAuthor_LAST_NAME()) + .from(TAuthor()) + .where(TAuthor_ID().in(8, 9, 10)) + .orderBy(TAuthor_ID()) + .fetch(TAuthor_LAST_NAME())); + } +} diff --git a/jOOQ-test/src/org/jooq/test/_/testcases/GroupByTests.java b/jOOQ-test/src/org/jooq/test/_/testcases/GroupByTests.java new file mode 100644 index 00000000000..c5124763101 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/_/testcases/GroupByTests.java @@ -0,0 +1,302 @@ +/** + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com + * All rights reserved. + * + * This software is licensed to you under the Apache License, Version 2.0 + * (the "License"); You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * 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 "jOOQ" 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 COPYRIGHT OWNER 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. + */ +package org.jooq.test._.testcases; + +import static java.util.Arrays.asList; +import static junit.framework.Assert.assertEquals; +import static org.jooq.SQLDialect.DB2; +import static org.jooq.SQLDialect.MYSQL; +import static org.jooq.SQLDialect.SYBASE; +import static org.jooq.impl.Factory.count; +import static org.jooq.impl.Factory.cube; +import static org.jooq.impl.Factory.grouping; +import static org.jooq.impl.Factory.groupingId; +import static org.jooq.impl.Factory.groupingSets; +import static org.jooq.impl.Factory.one; +import static org.jooq.impl.Factory.rollup; + +import java.util.Arrays; + +import org.jooq.Field; +import org.jooq.Record; +import org.jooq.Result; +import org.jooq.TableRecord; +import org.jooq.UpdatableRecord; +import org.jooq.exception.DataAccessException; +import org.jooq.test.BaseTest; +import org.jooq.test.jOOQAbstractTest; + +import org.junit.Test; + +public class GroupByTests< + A extends UpdatableRecord, + B extends UpdatableRecord, + S extends UpdatableRecord, + B2S extends UpdatableRecord, + BS extends UpdatableRecord, + L extends TableRecord, + X extends TableRecord, + DATE extends UpdatableRecord, + BOOL extends UpdatableRecord, + D extends UpdatableRecord, + T extends UpdatableRecord, + U extends TableRecord, + I extends TableRecord, + IPK extends UpdatableRecord, + T658 extends TableRecord, + T725 extends UpdatableRecord, + T639 extends UpdatableRecord, + T785 extends TableRecord> +extends BaseTest { + + public GroupByTests(jOOQAbstractTest delegate) { + super(delegate); + } + + @Test + public void testGrouping() throws Exception { + + // Test a simple group by query + Field count = count().as("c"); + Result result = create() + .select(TBook_AUTHOR_ID(), count) + .from(TBook()) + .groupBy(TBook_AUTHOR_ID()).fetch(); + + assertEquals(2, result.size()); + assertEquals(2, (int) result.get(0).getValue(count)); + assertEquals(2, (int) result.get(1).getValue(count)); + + // Test a group by query with a single HAVING clause + result = create() + .select(TAuthor_LAST_NAME(), count) + .from(TBook()) + .join(TAuthor()).on(TBook_AUTHOR_ID().equal(TAuthor_ID())) + .where(TBook_TITLE().notEqual("1984")) + .groupBy(TAuthor_LAST_NAME()) + .having(count().equal(2)) + .fetch(); + + assertEquals(1, result.size()); + assertEquals(2, (int) result.getValue(0, count)); + assertEquals("Coelho", result.getValue(0, TAuthor_LAST_NAME())); + + // Test a group by query with a combined HAVING clause + result = create() + .select(TAuthor_LAST_NAME(), count) + .from(TBook()) + .join(TAuthor()).on(TBook_AUTHOR_ID().equal(TAuthor_ID())) + .where(TBook_TITLE().notEqual("1984")) + .groupBy(TAuthor_LAST_NAME()) + .having(count().equal(2)) + .or(count().greaterOrEqual(2)) + .andExists(create().selectOne()) + .fetch(); + + assertEquals(1, result.size()); + assertEquals(2, (int) result.getValue(0, count)); + assertEquals("Coelho", result.getValue(0, TAuthor_LAST_NAME())); + + // Test a group by query with a plain SQL having clause + result = create() + .select(VLibrary_AUTHOR(), count) + .from(VLibrary()) + .where(VLibrary_TITLE().notEqual("1984")) + .groupBy(VLibrary_AUTHOR()) + + // MySQL seems to have a bug with fully qualified view names in the + // having clause. TODO: Fully analyse this issue + // https://sourceforge.net/apps/trac/jooq/ticket/277 + .having("v_library.author like ?", "Paulo%") + .fetch(); + + assertEquals(1, result.size()); + assertEquals(2, (int) result.getValue(0, count)); + + // SQLite loses type information when views select functions. + // In this case: concatenation. So as a workaround, SQLlite only selects + // FIRST_NAME in the view + assertEquals("Paulo", result.getValue(0, VLibrary_AUTHOR()).substring(0, 5)); + } + + @Test + public void testGroupByCubeRollup() throws Exception { + switch (getDialect()) { + case ASE: + case DERBY: + case H2: + case HSQLDB: + case INGRES: + case POSTGRES: + case SQLITE: + log.info("SKIPPING", "Group by CUBE / ROLLUP tests"); + return; + } + + Result result; + + // Simple ROLLUP clause + // -------------------- + result = create().select( + TBook_ID(), + TBook_AUTHOR_ID()) + .from(TBook()) + .groupBy(rollup( + TBook_ID(), + TBook_AUTHOR_ID())) + .fetch(); + + if (getDialect() == DB2) { + assertEquals(Arrays.asList(null, 1, 2, 3, 4, 1, 2, 3, 4), result.getValues(0)); + assertEquals(Arrays.asList(null, null, null, null, null, 1, 1, 2, 2), result.getValues(1)); + } + else { + assertEquals(Arrays.asList(1, 1, 2, 2, 3, 3, 4, 4, null), result.getValues(0)); + assertEquals(Arrays.asList(1, null, 1, null, 2, null, 2, null, null), result.getValues(1)); + } + + if (getDialect() == MYSQL) { + log.info("SKIPPING", "CUBE and GROUPING SETS tests"); + return; + } + + // ROLLUP clause + // ------------- + Field groupingId = groupingId(TBook_ID(), TBook_AUTHOR_ID()); + if (asList(DB2, SYBASE).contains(getDialect())) + groupingId = one(); + + result = create().select( + TBook_ID(), + TBook_AUTHOR_ID(), + grouping(TBook_ID()), + groupingId) + .from(TBook()) + .groupBy(rollup( + TBook_ID(), + TBook_AUTHOR_ID())) + .orderBy( + TBook_ID().asc().nullsFirst(), + TBook_AUTHOR_ID().asc().nullsFirst()).fetch(); + + assertEquals(9, result.size()); + assertEquals(Arrays.asList(null, 1, 1, 2, 2, 3, 3, 4, 4), result.getValues(0)); + assertEquals(Arrays.asList(null, null, 1, null, 1, null, 2, null, 2), result.getValues(1)); + assertEquals(Arrays.asList(1, 0, 0, 0, 0, 0, 0, 0, 0), result.getValues(2)); + + if (!asList(DB2, SYBASE).contains(getDialect())) + assertEquals(Arrays.asList(3, 1, 0, 1, 0, 1, 0, 1, 0), result.getValues(3)); + + // CUBE clause + // ----------- + result = create().select( + TBook_ID(), + TBook_AUTHOR_ID(), + grouping(TBook_ID()), + groupingId) + .from(TBook()) + .groupBy(cube( + TBook_ID(), + TBook_AUTHOR_ID())) + .orderBy( + TBook_ID().asc().nullsFirst(), + TBook_AUTHOR_ID().asc().nullsFirst()).fetch(); + + assertEquals(11, result.size()); + assertEquals(Arrays.asList(null, null, null, 1, 1, 2, 2, 3, 3, 4, 4), result.getValues(0)); + assertEquals(Arrays.asList(null, 1, 2, null, 1, null, 1, null, 2, null, 2), result.getValues(1)); + assertEquals(Arrays.asList(1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0), result.getValues(2)); + + if (!asList(DB2, SYBASE).contains(getDialect())) + assertEquals(Arrays.asList(3, 2, 2, 1, 0, 1, 0, 1, 0, 1, 0), result.getValues(3)); + + // GROUPING SETS clause + // -------------------- + result = create().select( + TBook_ID(), + TBook_AUTHOR_ID(), + grouping(TBook_ID()), + groupingId) + .from(TBook()) + .groupBy(groupingSets( + new Field[] { TBook_AUTHOR_ID(), TBook_ID() }, + new Field[] { TBook_AUTHOR_ID(), TBook_LANGUAGE_ID() }, + new Field[0], + new Field[0])) + .orderBy( + TBook_ID().asc().nullsFirst(), + TBook_AUTHOR_ID().asc().nullsFirst()).fetch(); + + assertEquals(9, result.size()); + assertEquals(Arrays.asList(null, null, null, null, null, 1, 2, 3, 4), result.getValues(0)); + assertEquals(Arrays.asList(null, null, 1, 2, 2, 1, 1, 2, 2), result.getValues(1)); + assertEquals(Arrays.asList(1, 1, 1, 1, 1, 0, 0, 0, 0), result.getValues(2)); + + if (!asList(DB2, SYBASE).contains(getDialect())) + assertEquals(Arrays.asList(3, 3, 2, 2, 2, 0, 0, 0, 0), result.getValues(3)); + } + + @Test + public void testHavingWithoutGrouping() throws Exception { + try { + assertEquals(Integer.valueOf(1), create() + .selectOne() + .from(TBook()) + .where(TBook_AUTHOR_ID().equal(1)) + .having(count().greaterOrEqual(2)) + .fetchOne(0)); + assertEquals(null, create() + .selectOne() + .from(TBook()) + .where(TBook_AUTHOR_ID().equal(1)) + .having(count().greaterOrEqual(3)) + .fetchOne(0)); + } + catch (DataAccessException e) { + + // HAVING without GROUP BY is not supported by some dialects, + // So this exception is OK + switch (getDialect()) { + case SQLITE: + log.info("SKIPPING", "HAVING without GROUP BY is not supported: " + e.getMessage()); + break; + + default: + throw e; + } + } + } +} diff --git a/jOOQ-test/src/org/jooq/test/_/testcases/InsertUpdateTests.java b/jOOQ-test/src/org/jooq/test/_/testcases/InsertUpdateTests.java new file mode 100644 index 00000000000..236a86b433f --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/_/testcases/InsertUpdateTests.java @@ -0,0 +1,789 @@ +/** + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com + * All rights reserved. + * + * This software is licensed to you under the Apache License, Version 2.0 + * (the "License"); You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * 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 "jOOQ" 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 COPYRIGHT OWNER 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. + */ +package org.jooq.test._.testcases; + +import static junit.framework.Assert.assertEquals; +import static junit.framework.Assert.assertNotNull; +import static junit.framework.Assert.assertNull; +import static junit.framework.Assert.fail; +import static org.jooq.SQLDialect.ASE; +import static org.jooq.SQLDialect.CUBRID; +import static org.jooq.SQLDialect.DB2; +import static org.jooq.SQLDialect.DERBY; +import static org.jooq.SQLDialect.H2; +import static org.jooq.SQLDialect.INGRES; +import static org.jooq.SQLDialect.POSTGRES; +import static org.jooq.SQLDialect.SQLITE; +import static org.jooq.SQLDialect.SQLSERVER; +import static org.jooq.SQLDialect.SYBASE; +import static org.jooq.impl.Factory.cast; +import static org.jooq.impl.Factory.castNull; +import static org.jooq.impl.Factory.count; +import static org.jooq.impl.Factory.max; +import static org.jooq.impl.Factory.val; +import static org.jooq.impl.Factory.vals; + +import java.math.BigDecimal; +import java.math.BigInteger; +import java.sql.Date; +import java.util.Arrays; + +import org.jooq.Field; +import org.jooq.Insert; +import org.jooq.InsertQuery; +import org.jooq.MergeFinalStep; +import org.jooq.Result; +import org.jooq.Table; +import org.jooq.TableField; +import org.jooq.TableRecord; +import org.jooq.UpdatableRecord; +import org.jooq.UpdateQuery; +import org.jooq.test.BaseTest; +import org.jooq.test.jOOQAbstractTest; + +import org.junit.Test; + +public class InsertUpdateTests< + A extends UpdatableRecord, + B extends UpdatableRecord, + S extends UpdatableRecord, + B2S extends UpdatableRecord, + BS extends UpdatableRecord, + L extends TableRecord, + X extends TableRecord, + DATE extends UpdatableRecord, + BOOL extends UpdatableRecord, + D extends UpdatableRecord, + T extends UpdatableRecord, + U extends TableRecord, + I extends TableRecord, + IPK extends UpdatableRecord, + T658 extends TableRecord, + T725 extends UpdatableRecord, + T639 extends UpdatableRecord, + T785 extends TableRecord> +extends BaseTest { + + public InsertUpdateTests(jOOQAbstractTest delegate) { + super(delegate); + } + + @Test + public void testInsertIdentity() throws Exception { + + // Oracle and SQLite don't support identity columns + if (TIdentity() == null && TIdentityPK() == null) { + log.info("SKIPPING", "IDENTITY tests"); + return; + } + + jOOQAbstractTest.reset = false; + + // Identity tables with primary key + if (TIdentityPK() != null) { + testInsertIdentity0(TIdentityPK(), TIdentityPK_ID(), TIdentityPK_VAL()); + } + + // Identity tables without primary key + if (TIdentity() != null) { + testInsertIdentity0(TIdentity(), TIdentity_ID(), TIdentity_VAL()); + } + } + + /** + * Extracted method for very similar tests with T_IDENTITY, T_IDENTITY_PK + */ + @SuppressWarnings("unchecked") + private > void testInsertIdentity0(Table table, TableField id, TableField val) throws Exception { + + // Plain insert + // ------------ + assertEquals(1, + create().insertInto(table, val) + .values(10) + .execute()); + + if (getDialect() != POSTGRES && + getDialect() != DB2) { + + assertEquals(new BigInteger("1"), create().lastID()); + } + + R r1 = create().selectFrom(table).fetchOne(); + + assertEquals(1, (int) r1.getValue(id)); + assertEquals(10, (int) r1.getValue(val)); + + // INSERT .. RETURNING + // ------------------- + R r2 = + create().insertInto(table, val) + .values(11) + .returning() + .fetchOne(); + + if (getDialect() != POSTGRES && + getDialect() != DB2) { + + assertEquals(new BigInteger("2"), create().lastID()); + assertEquals(new BigInteger("2"), create().lastID()); + } + + assertEquals(2, (int) r2.getValue(id)); + assertEquals(11, (int) r2.getValue(val)); + + // INSERT MULTIPLE .. RETURNING + // ---------------------------- + // TODO [#1260] This probably works for CUBRID + // TODO [#832] Make this work for Sybase also + // TODO [#1004] Make this work for SQL Server also + // TODO ... and then, think about Ingres, H2 and Derby as well + if (getDialect() == CUBRID || + getDialect() == SYBASE || + getDialect() == SQLSERVER || + getDialect() == INGRES || + getDialect() == H2 || + getDialect() == DERBY || + getDialect() == ASE) { + + log.info("SKIPPING", "Multi-record INSERT .. RETURNING statement"); + } + else { + Result r3 = + create().insertInto(table, val) + .values(12) + .values(13) + .returning(id) + .fetch(); + + assertEquals(2, r3.size()); + assertNull(r3.getValue(0, val)); + assertNull(r3.getValue(1, val)); + assertEquals(3, (int) r3.getValue(0, id)); + assertEquals(4, (int) r3.getValue(1, id)); + + // Record.storeUsing() + R r4 = create().newRecord(table); + r4.setValue(val, 20); + assertEquals(1, r4.storeUsing(table.getIdentity().getField())); + + if (getDialect() != POSTGRES && + getDialect() != DB2) { + + assertEquals(new BigInteger("5"), create().lastID()); + assertEquals(new BigInteger("5"), create().lastID()); + } + + // TODO [#1002] Fix this + R r5 = create().fetchOne(table, id.equal(5)); + assertEquals(r5, r4); + } + } + + @Test + public void testInsertImplicit() throws Exception { + jOOQAbstractTest.reset = false; + + assertEquals(1, + create().insertInto(TAuthor()) + .values( + 37, + "Erich", + "Kästner", + null, + null, + null) + .execute()); + + A author = create().selectFrom(TAuthor()).where(TAuthor_ID().equal(37)).fetchOne(); + assertNotNull(author); + assertEquals(37, (int) author.getValue(TAuthor_ID())); + assertEquals("Erich", author.getValue(TAuthor_FIRST_NAME())); + assertEquals("Kästner", author.getValue(TAuthor_LAST_NAME())); + } + + @Test + public void testInsertMultiple() throws Exception { + jOOQAbstractTest.reset = false; + + create().insertInto(TAuthor(), TAuthor_ID(), TAuthor_LAST_NAME()) + + // API check. Object... + .values(val(37), "Dürrenmatt") + + // Collection + .values(Arrays. asList(88, "Schmitt")) + + // Field... + .values(val(93), val("Kästner")) + .execute(); + + Result authors = + create().selectFrom(TAuthor()) + .where(TAuthor_ID().greaterThan(30)) + .orderBy(TAuthor_ID()) + .fetch(); + + assertEquals(3, authors.size()); + assertEquals(Integer.valueOf(37), authors.getValue(0, TAuthor_ID())); + assertEquals(Integer.valueOf(88), authors.getValue(1, TAuthor_ID())); + assertEquals(Integer.valueOf(93), authors.getValue(2, TAuthor_ID())); + assertEquals("Dürrenmatt", authors.getValue(0, TAuthor_LAST_NAME())); + assertEquals("Schmitt", authors.getValue(1, TAuthor_LAST_NAME())); + assertEquals("Kästner", authors.getValue(2, TAuthor_LAST_NAME())); + + // Another test for the SET API + create().insertInto(TAuthor()) + .set(TAuthor_ID(), val(137)) + .set(TAuthor_LAST_NAME(), "Dürrenmatt 2") + .newRecord() + .set(TAuthor_ID(), 188) + .set(TAuthor_LAST_NAME(), "Schmitt 2") + .newRecord() + .set(TAuthor_ID(), val(193)) + .set(TAuthor_LAST_NAME(), "Kästner 2") + .execute(); + + authors = + create().selectFrom(TAuthor()) + .where(TAuthor_ID().greaterThan(130)) + .orderBy(TAuthor_ID()) + .fetch(); + + assertEquals(3, authors.size()); + assertEquals(Integer.valueOf(137), authors.getValue(0, TAuthor_ID())); + assertEquals(Integer.valueOf(188), authors.getValue(1, TAuthor_ID())); + assertEquals(Integer.valueOf(193), authors.getValue(2, TAuthor_ID())); + assertEquals("Dürrenmatt 2", authors.getValue(0, TAuthor_LAST_NAME())); + assertEquals("Schmitt 2", authors.getValue(1, TAuthor_LAST_NAME())); + assertEquals("Kästner 2", authors.getValue(2, TAuthor_LAST_NAME())); + } + + @Test + public void testInsertConvert() throws Exception { + jOOQAbstractTest.reset = false; + + // [#1005] With the INSERT .. VALUES syntax, typesafety cannot be + // enforced. But the inserted values should at least be converted to the + // right types + + long timeIn = 0; + long timeOut = -3600000; + + // Explicit field list + assertEquals(1, + create().insertInto(TAuthor(), + TAuthor_ID(), + TAuthor_LAST_NAME(), + TAuthor_DATE_OF_BIRTH(), + TAuthor_YEAR_OF_BIRTH()) + .values( + "5", + "Smith", + timeIn, + new BigDecimal("1980")) + .execute()); + + A author1 = create().selectFrom(TAuthor()).where(TAuthor_ID().equal(5)).fetchOne(); + assertNotNull(author1); + assertEquals(5, (int) author1.getValue(TAuthor_ID())); + assertEquals("Smith", author1.getValue(TAuthor_LAST_NAME())); + + // [#1009] Somewhere on the way to the database and back, the CET time + // zone is added, that's why there is a one-hour shift (except for SQLite) + if (getDialect() != SQLITE) + assertEquals(new Date(timeOut), author1.getValue(TAuthor_DATE_OF_BIRTH())); + assertEquals(1980, (int) author1.getValue(TAuthor_YEAR_OF_BIRTH())); + + // Implicit field list + assertEquals(1, + create().insertInto(TAuthor()) + .values( + "37", + "Erich", + "Kästner", + null, + null, + null) + .execute()); + + A author2 = create().selectFrom(TAuthor()).where(TAuthor_ID().equal(37)).fetchOne(); + assertNotNull(author2); + assertEquals(37, (int) author2.getValue(TAuthor_ID())); + assertEquals("Erich", author2.getValue(TAuthor_FIRST_NAME())); + assertEquals("Kästner", author2.getValue(TAuthor_LAST_NAME())); + } + + @Test + public void testInsertSelect() throws Exception { + jOOQAbstractTest.reset = false; + + Field nullField = null; + switch (getDialect()) { + case ORACLE: + case POSTGRES: + // TODO: cast this to the UDT type + nullField = cast(null, TAuthor_ADDRESS()); + break; + default: + nullField = castNull(String.class); + break; + } + + Insert i = + create().insertInto(TAuthor()) + .select(create().select(vals( + 1000, + val("Lukas"))) + .select(vals( + "Eder", + val(new Date(363589200000L)), + castNull(Integer.class), + nullField))); + + assertEquals(1, i.execute()); + + A author1 = create().fetchOne(TAuthor(), TAuthor_FIRST_NAME().equal("Lukas")); + assertEquals(1000, (int) author1.getValue(TAuthor_ID())); + assertEquals("Lukas", author1.getValue(TAuthor_FIRST_NAME())); + assertEquals("Eder", author1.getValue(TAuthor_LAST_NAME())); + assertEquals(null, author1.getValue(TAuthor_YEAR_OF_BIRTH())); + + // [#1069] Run checks for INSERT INTO t(a, b) SELECT x, y syntax + i = create().insertInto(TAuthor(), TAuthor_ID(), TAuthor_LAST_NAME()) + .select(create().select(vals(1001, "Hesse"))); + + assertEquals(1, i.execute()); + A author2 = create().fetchOne(TAuthor(), TAuthor_LAST_NAME().equal("Hesse")); + assertEquals(1001, (int) author2.getValue(TAuthor_ID())); + assertEquals(null, author2.getValue(TAuthor_FIRST_NAME())); + assertEquals("Hesse", author2.getValue(TAuthor_LAST_NAME())); + assertEquals(null, author2.getValue(TAuthor_YEAR_OF_BIRTH())); + } + + @Test + public void testInsertWithSelectAsField() throws Exception { + jOOQAbstractTest.reset = false; + + Field ID3; + Field ID4; + + switch (getDialect()) { + // Sybase ASE doesn't allow for selecting data inside VALUES() + case ASE: + + // MySQL doesn't allow for selecting from the INSERT INTO table + case MYSQL: + ID3 = create().select(val(3)).asField(); + ID4 = create().select(val(4)).asField(); + break; + default: + ID3 = create() + .select(max(TAuthor_ID()).add(1)) + .from(TAuthor()).asField(); + ID4 = create() + .select(max(TAuthor_ID()).add(1)) + .from(TAuthor()).asField(); + break; + } + + create().insertInto(TAuthor(), + TAuthor_ID(), + TAuthor_LAST_NAME()) + .values( + ID3, + create().select(val("Hornby")).asField()) + .execute(); + + A author = create().fetchOne(TAuthor(), TAuthor_LAST_NAME().equal("Hornby")); + assertEquals(Integer.valueOf(3), author.getValue(TAuthor_ID())); + assertEquals("Hornby", author.getValue(TAuthor_LAST_NAME())); + + create().update(TAuthor()) + .set(TAuthor_ID(), ID4) + .set(TAuthor_LAST_NAME(), create().select(val("Hitchcock")). asField()) + .where(TAuthor_ID().equal(3)) + .execute(); + + author = create().fetchOne(TAuthor(), TAuthor_LAST_NAME().equal("Hitchcock")); + assertEquals(Integer.valueOf(4), author.getValue(TAuthor_ID())); + assertEquals("Hitchcock", author.getValue(TAuthor_LAST_NAME())); + } + + @SuppressWarnings("unchecked") + @Test + public void testInsertReturning() throws Exception { + if (TTriggers() == null) { + log.info("SKIPPING", "INSERT RETURNING tests"); + return; + } + + jOOQAbstractTest.reset = false; + + // Non-DSL querying + // ---------------- + + InsertQuery query; + + int ID = 0; + + // Without RETURNING clause + query = create().insertQuery(TTriggers()); + query.addValue(TTriggers_ID(), null); + query.addValue(TTriggers_COUNTER(), 0); + assertEquals(1, query.execute()); + assertNull(query.getReturnedRecord()); + + // Check if the trigger works correctly + assertEquals(1, create().selectFrom(TTriggers()).fetch().size()); + assertEquals(++ID, (int) create().selectFrom(TTriggers()).fetchOne(TTriggers_ID_GENERATED())); + assertEquals( ID, (int) create().selectFrom(TTriggers()).fetchOne(TTriggers_ID())); + assertEquals(2*ID, (int) create().selectFrom(TTriggers()).fetchOne(TTriggers_COUNTER())); + + // Returning all fields + query = create().insertQuery(TTriggers()); + query.addValue(TTriggers_COUNTER(), null); + query.addValue(TTriggers_COUNTER(), 0); + query.setReturning(); + assertEquals(1, query.execute()); + assertNotNull(query.getReturnedRecord()); + assertEquals(++ID, (int) query.getReturnedRecord().getValue(TTriggers_ID_GENERATED())); + assertEquals( ID, (int) query.getReturnedRecord().getValue(TTriggers_ID())); + assertEquals(2*ID, (int) query.getReturnedRecord().getValue(TTriggers_COUNTER())); + + // Returning only the ID field + query = create().insertQuery(TTriggers()); + query.addValue(TTriggers_COUNTER(), 0); + query.setReturning(TTriggers_ID_GENERATED()); + assertEquals(1, query.execute()); + assertNotNull(query.getReturnedRecord()); + assertEquals(++ID, (int) query.getReturnedRecord().getValue(TTriggers_ID_GENERATED())); + assertNull(query.getReturnedRecord().getValue(TTriggers_ID())); + assertNull(query.getReturnedRecord().getValue(TTriggers_COUNTER())); + + query.getReturnedRecord().refresh(); + assertEquals( ID, (int) query.getReturnedRecord().getValue(TTriggers_ID_GENERATED())); + assertEquals( ID, (int) query.getReturnedRecord().getValue(TTriggers_ID())); + assertEquals(2*ID, (int) query.getReturnedRecord().getValue(TTriggers_COUNTER())); + + // DSL querying + // ------------ + TableRecord returned = create().insertInto(TTriggers(), TTriggers_COUNTER()) + .values(0) + .returning() + .fetchOne(); + assertNotNull(returned); + assertEquals(++ID, (int) returned.getValue(TTriggers_ID_GENERATED())); + assertEquals( ID, (int) returned.getValue(TTriggers_ID())); + assertEquals(2*ID, (int) returned.getValue(TTriggers_COUNTER())); + + // Alternative syntax + // ------------------ + returned = create().insertInto(TTriggers()) + .set(TTriggers_COUNTER(), 0) + .returning(TTriggers_ID_GENERATED()) + .fetchOne(); + assertNotNull(returned); + assertEquals(++ID, (int) returned.getValue(TTriggers_ID_GENERATED())); + assertNull(returned.getValue(TTriggers_ID())); + assertNull(returned.getValue(TTriggers_COUNTER())); + + switch (getDialect()) { + case ASE: + // TODO [#1260] This should work eventually, when CUBRID fixes this + // JDBC bug + case CUBRID: + case DERBY: + case H2: + case INGRES: + case ORACLE: + // TODO [#832] Fix this. This might be a driver issue for Sybase + case SQLITE: + case SQLSERVER: + case SYBASE: + log.info("SKIPPING", "Multiple INSERT RETURNING"); + break; + + default: + Result many = + create().insertInto(TTriggers(), TTriggers_COUNTER()) + .values(-1) + .values(-2) + .values(-3) + .returning() + .fetch(); + assertNotNull(many); + assertEquals(3, many.size()); + assertEquals(++ID, (int) many.getValue(0, TTriggers_ID_GENERATED())); + assertEquals( ID, (int) many.getValue(0, TTriggers_ID())); + assertEquals(2*ID, (int) many.getValue(0, TTriggers_COUNTER())); + assertEquals(++ID, (int) many.getValue(1, TTriggers_ID_GENERATED())); + assertEquals( ID, (int) many.getValue(1, TTriggers_ID())); + assertEquals(2*ID, (int) many.getValue(1, TTriggers_COUNTER())); + assertEquals(++ID, (int) many.getValue(2, TTriggers_ID_GENERATED())); + assertEquals( ID, (int) many.getValue(2, TTriggers_ID())); + assertEquals(2*ID, (int) many.getValue(2, TTriggers_COUNTER())); + break; + } + + + returned = create().insertInto(TTriggers(), TTriggers_COUNTER()) + .values(0) + .returning(TTriggers_ID()) + .fetchOne(); + assertNotNull(returned); + assertEquals(++ID, (int) returned.getValue(TTriggers_ID())); + assertNull(returned.getValue(TTriggers_ID_GENERATED())); + assertNull(returned.getValue(TTriggers_COUNTER())); + + returned.refreshUsing(TTriggers_ID()); + assertEquals( ID, (int) returned.getValue(TTriggers_ID_GENERATED())); + assertEquals(2*ID, (int) returned.getValue(TTriggers_COUNTER())); + + // store() and similar methods + T triggered = create().newRecord(TTriggers()); + triggered.setValue(TTriggers_COUNTER(), 0); + assertEquals(1, triggered.store()); + assertEquals(++ID, (int) triggered.getValue(TTriggers_ID_GENERATED())); + assertEquals(null, triggered.getValue(TTriggers_ID())); + assertEquals(0, (int) triggered.getValue(TTriggers_COUNTER())); + triggered.refresh(); + assertEquals( ID, (int) triggered.getValue(TTriggers_ID())); + assertEquals(2*ID, (int) triggered.getValue(TTriggers_COUNTER())); + } + + @Test + public void testInsertOnDuplicateKey() throws Exception { + switch (getDialect()) { + case ASE: + case DERBY: + case H2: + case INGRES: + case POSTGRES: + case SQLITE: + log.info("SKIPPING", "ON DUPLICATE KEY UPDATE test"); + return; + } + + jOOQAbstractTest.reset = false; + + create().insertInto(TAuthor(), TAuthor_ID(), TAuthor_LAST_NAME()) + .values(3, "Koontz") + .onDuplicateKeyUpdate() + .set(TAuthor_LAST_NAME(), "Koontz") + .execute(); + A author = + create().fetchOne(TAuthor(), TAuthor_ID().equal(3)); + assertEquals(Integer.valueOf(3), author.getValue(TAuthor_ID())); + assertEquals("Koontz", author.getValue(TAuthor_LAST_NAME())); + assertEquals(Integer.valueOf(3), create().select(count()).from(TAuthor()).fetchOne(0)); + + create().insertInto(TAuthor(), TAuthor_ID(), TAuthor_LAST_NAME()) + .values(3, "Rose") + .onDuplicateKeyUpdate() + .set(TAuthor_LAST_NAME(), "Christie") + .execute(); + author = + create().fetchOne(TAuthor(), TAuthor_ID().equal(3)); + assertEquals(Integer.valueOf(3), author.getValue(TAuthor_ID())); + assertEquals("Christie", author.getValue(TAuthor_LAST_NAME())); + assertEquals(Integer.valueOf(3), create().select(count()).from(TAuthor()).fetchOne(0)); + } + + @Test + public void testMerge() throws Exception { + switch (getDialect()) { + case ASE: + case CUBRID: + case DERBY: + case H2: + case INGRES: + case MYSQL: + case POSTGRES: + case SQLITE: + log.info("SKIPPING", "Merge tests"); + return; + } + + jOOQAbstractTest.reset = false; + + // Always do an update of everything + // -------------------------------- + create().mergeInto(TAuthor()) + .using(create().selectOne()) + .on("1 = 1") + .whenMatchedThenUpdate() + .set(TAuthor_FIRST_NAME(), "Alfred") + .whenNotMatchedThenInsert(TAuthor_ID(), TAuthor_LAST_NAME()) + .values(3, "Hitchcock") + .execute(); + + assertEquals(Arrays.asList("Alfred", "Alfred"), + create().selectFrom(TAuthor()) + .orderBy(TAuthor_ID()) + .fetch(TAuthor_FIRST_NAME())); + + // Always do an update of the first author + // -------------------------------- + create().mergeInto(TAuthor()) + .using(create().selectOne()) + .on(TAuthor_ID().equal(1)) + .whenMatchedThenUpdate() + .set(TAuthor_FIRST_NAME(), "John") + .whenNotMatchedThenInsert(TAuthor_ID(), TAuthor_LAST_NAME()) + .values(3, "Hitchcock") + .execute(); + + assertEquals(Arrays.asList("John", "Alfred"), + create().selectFrom(TAuthor()) + .orderBy(TAuthor_ID()) + .fetch(TAuthor_FIRST_NAME())); + + Field f = val("Dan").as("f"); + Field l = val("Brown").as("l"); + + // [#1000] Add a check for the alternative INSERT .. SET .. syntax + // -------------------------------- + MergeFinalStep q = + create().mergeInto(TAuthor()) + .using(create().select(f, l)) + .on(TAuthor_LAST_NAME().equal(l)) + .whenMatchedThenUpdate() + .set(TAuthor_FIRST_NAME(), "James") + .whenNotMatchedThenInsert() + .set(TAuthor_ID(), 3) + .set(TAuthor_FIRST_NAME(), f) + .set(TAuthor_LAST_NAME(), l); + + // Execute an insert + q.execute(); + assertEquals(Arrays.asList("John", "Alfred", "Dan"), + create().selectFrom(TAuthor()) + .orderBy(TAuthor_ID()) + .fetch(TAuthor_FIRST_NAME())); + + // Execute an update + q.execute(); + assertEquals(Arrays.asList("John", "Alfred", "James"), + create().selectFrom(TAuthor()) + .orderBy(TAuthor_ID()) + .fetch(TAuthor_FIRST_NAME())); + + f = val("Herman").as("f"); + l = val("Hesse").as("l"); + + // Check if INSERT-only MERGE works + // -------------------------------- + q = + create().mergeInto(TAuthor()) + .using(create().select(f, l)) + .on(TAuthor_LAST_NAME().equal(l)) + .whenNotMatchedThenInsert( + TAuthor_ID(), + TAuthor_FIRST_NAME(), + TAuthor_LAST_NAME(), + TAuthor_DATE_OF_BIRTH()) + + // [#1010] Be sure that this type-unsafe clause can deal with + // any convertable type + .values("4", f, l, 0L); + + // Execute an insert + q.execute(); + assertEquals(Arrays.asList("John", "Alfred", "James", "Herman"), + create().selectFrom(TAuthor()) + .orderBy(TAuthor_ID()) + .fetch(TAuthor_FIRST_NAME())); + + // Execute nothing + q.execute(); + assertEquals(Arrays.asList("John", "Alfred", "James", "Herman"), + create().selectFrom(TAuthor()) + .orderBy(TAuthor_ID()) + .fetch(TAuthor_FIRST_NAME())); + + // TODO: Add more sophisticated MERGE statement tests + // Especially for SQL Server and Sybase, some bugs could be expected + } + + @Test + public void testUpdateSelect() throws Exception { + switch (getDialect()) { + case SQLITE: + case MYSQL: + log.info("SKIPPING", "UPDATE .. SET .. = (SELECT ..) integration test. This syntax is poorly supported by " + getDialect()); + return; + } + + jOOQAbstractTest.reset = false; + + Table a1 = TAuthor(); + Table a2 = TAuthor().as("a2"); + Field f1 = a1.getField(TAuthor_FIRST_NAME()); + Field f2 = a2.getField(TAuthor_FIRST_NAME()); + Field f3 = a2.getField(TAuthor_LAST_NAME()); + + UpdateQuery u = create().updateQuery(a1); + u.addValue(f1, create().select(max(f3)).from(a2).where(f1.equal(f2)). asField()); + u.execute(); + + Field c = count(); + assertEquals(Integer.valueOf(2), create().select(c) + .from(TAuthor()) + .where(TAuthor_FIRST_NAME().equal(TAuthor_LAST_NAME())) + .fetchOne(c)); + } + + @Test + public void testTruncate() throws Exception { + jOOQAbstractTest.reset = false; + + try { + create().truncate(TAuthor()).execute(); + + // The above should fail if foreign keys are supported + if (!Arrays.asList(CUBRID, INGRES, SQLITE).contains(getDialect())) { + fail(); + } + } catch (Exception expected) { + } + + // This is being tested with an unreferenced table as some RDBMS don't + // Allow this + create().truncate(TDates()).execute(); + assertEquals(0, create().fetch(TDates()).size()); + } +} diff --git a/jOOQ-test/src/org/jooq/test/_/testcases/JoinTests.java b/jOOQ-test/src/org/jooq/test/_/testcases/JoinTests.java new file mode 100644 index 00000000000..d0d1de08276 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/_/testcases/JoinTests.java @@ -0,0 +1,584 @@ +/** + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com + * All rights reserved. + * + * This software is licensed to you under the Apache License, Version 2.0 + * (the "License"); You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * 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 "jOOQ" 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 COPYRIGHT OWNER 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. + */ +package org.jooq.test._.testcases; + +import static java.util.Arrays.asList; +import static junit.framework.Assert.assertEquals; +import static junit.framework.Assert.assertNull; +import static junit.framework.Assert.assertTrue; +import static junit.framework.Assert.fail; +import static org.jooq.SQLDialect.CUBRID; +import static org.jooq.SQLDialect.DB2; +import static org.jooq.SQLDialect.INGRES; +import static org.jooq.SQLDialect.SQLITE; +import static org.jooq.impl.Factory.count; +import static org.jooq.impl.Factory.falseCondition; +import static org.jooq.impl.Factory.field; +import static org.jooq.impl.Factory.lower; +import static org.jooq.impl.Factory.one; +import static org.jooq.impl.Factory.val; +import static org.jooq.impl.Factory.zero; + +import java.util.List; + +import org.jooq.Field; +import org.jooq.Record; +import org.jooq.Result; +import org.jooq.SQLDialect; +import org.jooq.Select; +import org.jooq.SelectQuery; +import org.jooq.SimpleSelectQuery; +import org.jooq.Table; +import org.jooq.TableRecord; +import org.jooq.UpdatableRecord; +import org.jooq.exception.DataAccessException; +import org.jooq.test.BaseTest; +import org.jooq.test.jOOQAbstractTest; + +import org.junit.Test; + +public class JoinTests< + A extends UpdatableRecord, + B extends UpdatableRecord, + S extends UpdatableRecord, + B2S extends UpdatableRecord, + BS extends UpdatableRecord, + L extends TableRecord, + X extends TableRecord, + DATE extends UpdatableRecord, + BOOL extends UpdatableRecord, + D extends UpdatableRecord, + T extends UpdatableRecord, + U extends TableRecord, + I extends TableRecord, + IPK extends UpdatableRecord, + T658 extends TableRecord, + T725 extends UpdatableRecord, + T639 extends UpdatableRecord, + T785 extends TableRecord> +extends BaseTest { + + public JoinTests(jOOQAbstractTest delegate) { + super(delegate); + } + + @Test + public void testJoinQuery() throws Exception { + SimpleSelectQuery q1 = create().selectQuery(VLibrary()); + + // TODO: Fix this when funny issue is fixed in Derby: + // https://sourceforge.net/apps/trac/jooq/ticket/238 + q1.addOrderBy(VLibrary_TITLE()); + + // Oracle ordering behaviour is a bit different, so exclude "1984" + q1.addConditions(VLibrary_TITLE().notEqual("1984")); + + Table a = TAuthor().as("a"); + Table b = TBook().as("b"); + + Field a_authorID = a.getField(TAuthor_ID()); + Field b_authorID = b.getField(TBook_AUTHOR_ID()); + Field b_title = b.getField(TBook_TITLE()); + + SelectQuery q2 = create().selectQuery(); + q2.addFrom(a); + q2.addJoin(b, b_authorID.equal(a_authorID)); + q2.addConditions(b_title.notEqual("1984")); + q2.addOrderBy(lower(b_title)); + + int rows1 = q1.execute(); + int rows2 = q2.execute(); + + assertEquals(3, rows1); + assertEquals(3, rows2); + + Result result1 = q1.getResult(); + Result result2 = q2.getResult(); + + assertEquals("Animal Farm", result1.get(0).getValue(VLibrary_TITLE())); + assertEquals("Animal Farm", result2.get(0).getValue(b_title)); + + assertEquals("Brida", result1.get(1).getValue(VLibrary_TITLE())); + assertEquals("Brida", result2.get(1).getValue(b_title)); + + assertEquals("O Alquimista", result1.get(2).getValue(VLibrary_TITLE())); + assertEquals("O Alquimista", result2.get(2).getValue(b_title)); + + // DB2 does not allow subselects in join conditions: + // http://publib.boulder.ibm.com/infocenter/dzichelp/v2r2/index.jsp?topic=/com.ibm.db29.doc.sqlref/db2z_sql_joincondition.htm + + // This query causes a failure in Ingres. Potentially a bug. See E_OP039F_BOOLFACT on + // http://docs.ingres.com/ingres/9.2/ingres-92-message-guide/1283-errors-from-opf#E_OP039F_BOOLFACT + if (!asList(CUBRID, DB2, INGRES).contains(getDialect())) { + + // Advanced JOIN usages with single JOIN condition + Result result = create().select() + .from(TAuthor()) + .join(TBook()) + .on(TAuthor_ID().equal(TBook_AUTHOR_ID()) + .and(TBook_LANGUAGE_ID().in(create().select(field("id")) + .from("t_language") + .where("upper(cd) in (?, ?)", "DE", "EN"))) + .orExists(create().selectOne().from(TAuthor()).where(falseCondition()))) + .orderBy(TBook_ID()).fetch(); + + assertEquals(3, result.size()); + assertEquals("1984", result.getValue(0, TBook_TITLE())); + assertEquals("Animal Farm", result.getValue(1, TBook_TITLE())); + assertEquals("Brida", result.getValue(2, TBook_TITLE())); + + // Advanced JOIN usages with several JOIN condition + // ------------------------------------------------ + Select author = create().selectFrom(TAuthor()); + result = create().select() + .from(author) + .join(TBook()) + .on(author.getField(TAuthor_ID()).equal(TBook_AUTHOR_ID())) + .and(TBook_LANGUAGE_ID().in(create().select(field("id")) + .from("t_language") + .where("upper(cd) in (?, ?)", "DE", "EN"))) + .orExists(create().selectOne().where(falseCondition())) + .orderBy(TBook_ID()).fetch(); + + assertEquals(3, result.size()); + assertEquals("1984", result.getValue(0, TBook_TITLE())); + assertEquals("Animal Farm", result.getValue(1, TBook_TITLE())); + assertEquals("Brida", result.getValue(2, TBook_TITLE())); + + Select book = create().selectFrom(TBook()); + result = create().select() + .from(TAuthor()) + .join(book) + .on(TAuthor_ID().equal(book.getField(TBook_AUTHOR_ID()))) + .and(book.getField(TBook_LANGUAGE_ID()).in(create().select(field("id")) + .from("t_language") + .where("upper(cd) in (?, ?)", "DE", "EN"))) + .orExists(create().selectOne().where(falseCondition())) + .orderBy(book.getField(TBook_ID())).fetch(); + + assertEquals(3, result.size()); + assertEquals("1984", result.getValue(0, TBook_TITLE())); + assertEquals("Animal Farm", result.getValue(1, TBook_TITLE())); + assertEquals("Brida", result.getValue(2, TBook_TITLE())); + + } + } + + @Test + public void testCrossJoin() throws Exception { + Result result; + + // Using the CROSS JOIN clause + assertEquals(Integer.valueOf(8), + create().select(count()) + .from(TAuthor()) + .crossJoin(TBook()) + .fetchOne(0)); + + result = + create().select() + .from(create().select(val(1).cast(Integer.class).as("a"))) + .crossJoin(TAuthor()) + .orderBy(TAuthor_ID()) + .fetch(); + + assertEquals(Integer.valueOf(1), result.getValue(0, 0)); + assertEquals(Integer.valueOf(1), result.getValue(0, 1)); + assertEquals(Integer.valueOf(1), result.getValue(1, 0)); + assertEquals(Integer.valueOf(2), result.getValue(1, 1)); + + + // [#772] Using the FROM clause for regular cartesian products + assertEquals(Integer.valueOf(8), + create().select(count()) + .from(TAuthor(), TBook()) + .fetchOne(0)); + + result = + create().select() + .from(create().select(val(1).cast(Integer.class).as("a")), TAuthor()) + .orderBy(TAuthor_ID()) + .fetch(); + + assertEquals(Integer.valueOf(1), result.getValue(0, 0)); + assertEquals(Integer.valueOf(1), result.getValue(0, 1)); + assertEquals(Integer.valueOf(1), result.getValue(1, 0)); + assertEquals(Integer.valueOf(2), result.getValue(1, 1)); + } + + @Test + public void testNaturalJoin() throws Exception { + Result result = + create().select(TAuthor_LAST_NAME(), TBook_TITLE()) + .from(TBook()) + .naturalJoin(TAuthor()) + .orderBy(getDialect() == SQLDialect.ORACLE + ? field("id") + : TBook_ID()) + .fetch(); + + assertEquals(2, result.size()); + assertEquals("1984", result.getValue(0, TBook_TITLE())); + assertEquals("Orwell", result.getValue(0, TAuthor_LAST_NAME())); + assertEquals("Animal Farm", result.getValue(1, TBook_TITLE())); + assertEquals("Coelho", result.getValue(1, TAuthor_LAST_NAME())); + + // TODO [#574] allow for selecting all columns, including + // the ones making up the join condition! + result = + // create().select() + create().select(TAuthor_LAST_NAME(), TBook_TITLE()) + .from(TBook()) + .naturalLeftOuterJoin(TAuthor()) + .orderBy(getDialect() == SQLDialect.ORACLE + ? field("id") + : TBook_ID()) + .fetch(); + + assertEquals(4, result.size()); + assertEquals("1984", result.getValue(0, TBook_TITLE())); + assertEquals("Orwell", result.getValue(0, TAuthor_LAST_NAME())); + assertEquals("Animal Farm", result.getValue(1, TBook_TITLE())); + assertEquals("Coelho", result.getValue(1, TAuthor_LAST_NAME())); + + assertEquals("O Alquimista", result.getValue(2, TBook_TITLE())); + assertNull(result.getValue(2, TAuthor_LAST_NAME())); + assertEquals("Brida", result.getValue(3, TBook_TITLE())); + assertNull(result.getValue(3, TAuthor_LAST_NAME())); + } + + @Test + public void testJoinUsing() throws Exception { + Result result = + create().select(TAuthor_LAST_NAME(), TBook_TITLE()) + .from(TAuthor()) + .join(TBook()) + .using(TAuthor_ID()) + .orderBy(getDialect() == SQLDialect.ORACLE + ? field("id") + : TBook_ID()) + .fetch(); + + assertEquals(2, result.size()); + assertEquals("1984", result.getValue(0, TBook_TITLE())); + assertEquals("Orwell", result.getValue(0, TAuthor_LAST_NAME())); + assertEquals("Animal Farm", result.getValue(1, TBook_TITLE())); + assertEquals("Coelho", result.getValue(1, TAuthor_LAST_NAME())); + + // TODO [#574] allow for selecting all columns, including + // the ones making up the join condition! + result = + // create().select() + create().select(TAuthor_LAST_NAME(), TBook_TITLE()) + .from(TBook()) + .leftOuterJoin(TAuthor()) + .using(TAuthor_ID()) + .orderBy(getDialect() == SQLDialect.ORACLE + ? field("id") + : TBook_ID()) + .fetch(); + + assertEquals(4, result.size()); + assertEquals("1984", result.getValue(0, TBook_TITLE())); + assertEquals("Orwell", result.getValue(0, TAuthor_LAST_NAME())); + assertEquals("Animal Farm", result.getValue(1, TBook_TITLE())); + assertEquals("Coelho", result.getValue(1, TAuthor_LAST_NAME())); + + assertEquals("O Alquimista", result.getValue(2, TBook_TITLE())); + assertNull(result.getValue(2, TAuthor_LAST_NAME())); + assertEquals("Brida", result.getValue(3, TBook_TITLE())); + assertNull(result.getValue(3, TAuthor_LAST_NAME())); + } + + @Test + public void testJoinOnKey() throws Exception { + if (!supportsReferences()) { + log.info("SKIPPING", "JOIN ON KEY tests"); + return; + } + + try { + create().select(TAuthor_ID(), TBook_TITLE()) + .from(TAuthor().join(TBook()).onKey()); + fail(); + } + catch (DataAccessException expected) {} + + try { + create().select(TAuthor_ID(), TBook_TITLE()) + .from(TAuthor().join(TBook()).onKey(TBook_TITLE())); + fail(); + } + catch (DataAccessException expected) {} + + try { + create().select(TAuthor_ID(), TBook_TITLE()) + .from(TAuthor().join(TBook()).onKey(TBook_AUTHOR_ID(), TBook_ID())); + fail(); + } + catch (DataAccessException expected) {} + + // Test the Table API + // ------------------ + Result result1 = + create().select(TAuthor_ID(), TBook_TITLE()) + .from(TAuthor().join(TBook()).onKey(TBook_AUTHOR_ID())) + .orderBy(TBook_ID()) + .fetch(); + + assertEquals(4, result1.size()); + assertEquals(BOOK_AUTHOR_IDS, result1.getValues(0)); + assertEquals(BOOK_TITLES, result1.getValues(1)); + + Result result2 = + create().select(TAuthor_ID(), TBook_TITLE()) + .from(TAuthor() + .join(TBook()) + .onKey(TBook_AUTHOR_ID()) + .and(TBook_ID().in(1, 2))) + .orderBy(TBook_ID()) + .fetch(); + + assertEquals(2, result2.size()); + assertEquals(BOOK_AUTHOR_IDS.subList(0, 2), result2.getValues(0)); + assertEquals(BOOK_TITLES.subList(0, 2), result2.getValues(1)); + + // Test the Select API + // ------------------- + Result result3 = + create().select(TAuthor_ID(), TBook_TITLE()) + .from(TAuthor()) + .join(TBook()).onKey(TBook_AUTHOR_ID()) + .orderBy(TBook_ID()) + .fetch(); + + assertEquals(4, result3.size()); + assertEquals(BOOK_AUTHOR_IDS, result3.getValues(0)); + assertEquals(BOOK_TITLES, result3.getValues(1)); + + // Test using unambiguous keys + // --------------------------- + Result result4 = + create().select(TBook_ID(), TBookStore_NAME()) + .from(TBook()) + .join(TBookToBookStore()).onKey() + .join(TBookStore()).onKey() + .orderBy(TBook_ID(), TBookStore_NAME()) + .fetch(); + + assertEquals(6, result4.size()); + assertEquals(asList(1, 1, 2, 3, 3, 3), result4.getValues(0)); + assertEquals(asList( + "Ex Libris", "Orell Füssli", "Orell Füssli", + "Buchhandlung im Volkshaus", "Ex Libris", "Orell Füssli"), result4.getValues(1)); + + // [#671] Test inverse join relationship + // ------------------------------------- + Result result5 = + create().select(TBook_ID(), TBookStore_NAME()) + .from(TBook()) + .join(TBookToBookStore() + .join(TBookStore()).onKey()) + .onKey() + .orderBy(TBook_ID(), TBookStore_NAME()) + .fetch(); + + assertEquals(result4, result5); + } + + @Test + public void testInverseAndNestedJoin() throws Exception { + + // [#1086] TODO: Fix this for SQLite + // In CUBRID, it is not suupported + if (getDialect() == SQLITE || getDialect() == CUBRID) { + log.info("SKIPPING", "Nested JOINs"); + return; + } + + // Testing joining of nested joins + // ------------------------------- + Result result1 = create() + .select( + TAuthor_ID(), + TBook_ID(), + TBookStore_NAME()) + .from(TAuthor() + .join(TBook()) + .on(TAuthor_ID().equal(TBook_AUTHOR_ID()))) + .join(TBookToBookStore() + .join(TBookStore()) + .on(TBookToBookStore_BOOK_STORE_NAME().equal(TBookStore_NAME()))) + .on(TBook_ID().equal(TBookToBookStore_BOOK_ID())) + .orderBy(TBook_ID(), TBookStore_NAME()) + .fetch(); + + assertEquals(6, result1.size()); + assertEquals(asList(1, 1, 1, 2, 2, 2), result1.getValues(0)); + assertEquals(asList(1, 1, 2, 3, 3, 3), result1.getValues(1)); + assertEquals(asList( + "Ex Libris", "Orell Füssli", "Orell Füssli", + "Buchhandlung im Volkshaus", "Ex Libris", "Orell Füssli"), result1.getValues(2)); + + // Testing joining of cross products + Result result2 = create() + .select( + TAuthor_ID(), + TBook_ID(), + TBookStore_NAME()) + .from(TAuthor() + .join(TBook()) + .on(TAuthor_ID().equal(TBook_AUTHOR_ID())), + TBookToBookStore() + .join(TBookStore()) + .on(TBookToBookStore_BOOK_STORE_NAME().equal(TBookStore_NAME()))) + .where(TBook_ID().equal(TBookToBookStore_BOOK_ID())) + .orderBy(TBook_ID(), TBookStore_NAME()) + .fetch(); + + assertEquals(6, result2.size()); + assertEquals(asList(1, 1, 1, 2, 2, 2), result2.getValues(0)); + assertEquals(asList(1, 1, 2, 3, 3, 3), result2.getValues(1)); + assertEquals(asList( + "Ex Libris", "Orell Füssli", "Orell Füssli", + "Buchhandlung im Volkshaus", "Ex Libris", "Orell Füssli"), result2.getValues(2)); + + assertEquals(result1, result2); + } + + @Test + public void testOuterJoin() throws Exception { + // Test LEFT OUTER JOIN + // -------------------- + Result result1 = + create().select( + TAuthor_ID(), + TBook_ID(), + TBookToBookStore_BOOK_STORE_NAME()) + .from(TAuthor()) + .leftOuterJoin(TBook()).on(TAuthor_ID().equal(TBook_AUTHOR_ID())) + .leftOuterJoin(TBookToBookStore()).on(TBook_ID().equal(TBookToBookStore_BOOK_ID())) + .orderBy( + TAuthor_ID().asc(), + TBook_ID().asc(), + TBookToBookStore_BOOK_STORE_NAME().asc().nullsLast()) + .fetch(); + + assertEquals( + asList(1, 1, 1, 2, 2, 2, 2), + result1.getValues(0, Integer.class)); + assertEquals( + asList(1, 1, 2, 3, 3, 3, 4), + result1.getValues(1, Integer.class)); + assertEquals( + asList("Ex Libris", "Orell Füssli", "Orell Füssli", "Buchhandlung im Volkshaus", "Ex Libris", "Orell Füssli", null), + result1.getValues(2)); + + // Test RIGHT OUTER JOIN + // --------------------- + + switch (getDialect()) { + case SQLITE: + log.info("SKIPPING", "RIGHT OUTER JOIN tests"); + break; + + default: { + Result result2 = + create().select( + TAuthor_ID(), + TBook_ID(), + TBookToBookStore_BOOK_STORE_NAME()) + .from(TBookToBookStore()) + .rightOuterJoin(TBook()).on(TBook_ID().equal(TBookToBookStore_BOOK_ID())) + .rightOuterJoin(TAuthor()).on(TAuthor_ID().equal(TBook_AUTHOR_ID())) + .orderBy( + TAuthor_ID().asc(), + TBook_ID().asc(), + TBookToBookStore_BOOK_STORE_NAME().asc().nullsLast()) + .fetch(); + + assertEquals(result1, result2); + assertEquals( + asList(1, 1, 1, 2, 2, 2, 2), + result2.getValues(0, Integer.class)); + assertEquals( + asList(1, 1, 2, 3, 3, 3, 4), + result2.getValues(1, Integer.class)); + assertEquals( + asList("Ex Libris", "Orell Füssli", "Orell Füssli", "Buchhandlung im Volkshaus", "Ex Libris", "Orell Füssli", null), + result2.getValues(2)); + + break; + } + } + + // Test FULL OUTER JOIN + // -------------------- + + switch (getDialect()) { + case ASE: + case CUBRID: + case DERBY: + case H2: + case MYSQL: + case SQLITE: + log.info("SKIPPING", "FULL OUTER JOIN tests"); + break; + + default: { + Select z = create().select(zero().as("z")); + Select o = create().select(one().as("o")); + + Result result3 = + create().select() + .from(z) + .fullOuterJoin(o).on(z.getField("z").cast(Integer.class).equal(o.getField("o").cast(Integer.class))) + .fetch(); + + assertEquals("z", result3.getField(0).getName()); + assertEquals("o", result3.getField(1).getName()); + + // Interestingly, ordering doesn't work with Oracle, in this + // example... Seems to be an Oracle bug?? + @SuppressWarnings("unchecked") + List> list = asList(asList(0, null), asList(null, 1)); + assertTrue(list.contains(asList(result3.get(0).into(Integer[].class)))); + assertTrue(list.contains(asList(result3.get(1).into(Integer[].class)))); + break; + } + } + } +} diff --git a/jOOQ-test/src/org/jooq/test/_/testcases/LoaderTests.java b/jOOQ-test/src/org/jooq/test/_/testcases/LoaderTests.java new file mode 100644 index 00000000000..d8095c86a47 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/_/testcases/LoaderTests.java @@ -0,0 +1,377 @@ +/** + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com + * All rights reserved. + * + * This software is licensed to you under the Apache License, Version 2.0 + * (the "License"); You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * 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 "jOOQ" 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 COPYRIGHT OWNER 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. + */ +package org.jooq.test._.testcases; + +import static junit.framework.Assert.assertEquals; +import static junit.framework.Assert.assertNotNull; +import static junit.framework.Assert.assertNull; +import static org.jooq.impl.Factory.count; + +import java.sql.SQLException; +import java.util.Arrays; + +import org.jooq.Field; +import org.jooq.Loader; +import org.jooq.Result; +import org.jooq.TableRecord; +import org.jooq.UpdatableRecord; +import org.jooq.test.BaseTest; +import org.jooq.test.jOOQAbstractTest; + +import org.junit.Test; + +public class LoaderTests< + A extends UpdatableRecord, + B extends UpdatableRecord, + S extends UpdatableRecord, + B2S extends UpdatableRecord, + BS extends UpdatableRecord, + L extends TableRecord, + X extends TableRecord, + DATE extends UpdatableRecord, + BOOL extends UpdatableRecord, + D extends UpdatableRecord, + T extends UpdatableRecord, + U extends TableRecord, + I extends TableRecord, + IPK extends UpdatableRecord, + T658 extends TableRecord, + T725 extends UpdatableRecord, + T639 extends UpdatableRecord, + T785 extends TableRecord> +extends BaseTest { + + public LoaderTests(jOOQAbstractTest delegate) { + super(delegate); + } + + @Test + public void testLoader() throws Exception { + jOOQAbstractTest.reset = false; + jOOQAbstractTest.connection.setAutoCommit(false); + + Field count = count(); + + // Empty CSV file + // -------------- + Loader loader = + create().loadInto(TAuthor()) + .loadCSV("") + .fields(TAuthor_ID()) + .execute(); + + assertEquals(0, loader.processed()); + assertEquals(0, loader.errors().size()); + assertEquals(0, loader.stored()); + assertEquals(0, loader.ignored()); + assertEquals(2, (int) create().select(count).from(TAuthor()).fetchOne(count)); + + // Constraint violations (LAST_NAME is NOT NULL) + // Loading is aborted + // --------------------------------------------- + loader = + create().loadInto(TAuthor()) + .loadCSV( + "3\n" + + "4") + .fields(TAuthor_ID()) + .ignoreRows(0) + .execute(); + + // [#812] Reset stale connection. Seems to be necessary in Postgres + resetLoaderConnection(); + + assertEquals(1, loader.processed()); + assertEquals(1, loader.errors().size()); + assertNotNull(loader.errors().get(0)); + assertEquals(0, loader.stored()); + assertEquals(1, loader.ignored()); + assertEquals(2, (int) create().select(count).from(TAuthor()).fetchOne(count)); + + // Constraint violations (LAST_NAME is NOT NULL) + // Errors are ignored + // --------------------------------------------- + loader = + create().loadInto(TAuthor()) + .onErrorIgnore() + .loadCSV( + "3\n" + + "4") + .fields(TAuthor_ID()) + .ignoreRows(0) + .execute(); + + // [#812] Reset stale connection. Seems to be necessary in Postgres + resetLoaderConnection(); + + assertEquals(2, loader.processed()); + assertEquals(2, loader.errors().size()); + assertNotNull(loader.errors().get(0)); + assertNotNull(loader.errors().get(1)); + assertEquals(0, loader.stored()); + assertEquals(2, loader.ignored()); + assertEquals(2, (int) create().select(count).from(TAuthor()).fetchOne(count)); + + // Constraint violations (Duplicate records) + // Loading is aborted + // ----------------------------------------- + loader = + create().loadInto(TAuthor()) + .onDuplicateKeyError() + .onErrorAbort() + .loadCSV( + "1;'Kafka'\n" + + "2;Frisch") + .fields(TAuthor_ID(), TAuthor_LAST_NAME()) + .quote('\'') + .separator(';') + .ignoreRows(0) + .execute(); + + // [#812] Reset stale connection. Seems to be necessary in Postgres + resetLoaderConnection(); + + assertEquals(1, loader.processed()); + assertEquals(1, loader.errors().size()); + assertNotNull(loader.errors().get(0)); + assertEquals(0, loader.stored()); + assertEquals(1, loader.ignored()); + assertEquals(2, (int) create().select(count).from(TAuthor()).fetchOne(count)); + + // Constraint violations (Duplicate records) + // Errors are ignored + // ----------------------------------------- + loader = + create().loadInto(TAuthor()) + .onDuplicateKeyIgnore() + .onErrorAbort() + .loadCSV( + "1,\"Kafka\"\n" + + "2,Frisch") + .fields(TAuthor_ID(), TAuthor_LAST_NAME()) + .ignoreRows(0) + .execute(); + + assertEquals(2, loader.processed()); + assertEquals(0, loader.errors().size()); + assertEquals(2, loader.ignored()); + assertEquals(2, (int) create().select(count).from(TAuthor()).fetchOne(count)); + + // Two records + // ----------- + loader = + create().loadInto(TAuthor()) + .loadCSV( + "####Some Data####\n" + + "\"ID\",\"Last Qualifier\"\r" + + "3,Hesse\n" + + "4,Frisch") + .fields(TAuthor_ID(), TAuthor_LAST_NAME()) + .quote('"') + .separator(',') + .ignoreRows(2) + .execute(); + + assertEquals(2, loader.processed()); + assertEquals(2, loader.stored()); + assertEquals(0, loader.ignored()); + assertEquals(0, loader.errors().size()); + assertEquals(2, (int) create().select(count) + .from(TAuthor()) + .where(TAuthor_ID().in(3, 4)) + .and(TAuthor_LAST_NAME().in("Hesse", "Frisch")) + .fetchOne(count)); + + assertEquals(2, create().delete(TAuthor()).where(TAuthor_ID().in(3, 4)).execute()); + + // Two records but don't load one column + // ------------------------------------- + loader = + create().loadInto(TAuthor()) + .loadCSV( + "\"ID\",\"First Qualifier\",\"Last Qualifier\"\r" + + "5,Hermann,Hesse\n" + + "6,\"Max\",Frisch") + .fields(TAuthor_ID(), null, TAuthor_LAST_NAME()) + .execute(); + + assertEquals(2, loader.processed()); + assertEquals(2, loader.stored()); + assertEquals(0, loader.ignored()); + assertEquals(0, loader.errors().size()); + + Result result = + create().selectFrom(TAuthor()) + .where(TAuthor_ID().in(5, 6)) + .and(TAuthor_LAST_NAME().in("Hesse", "Frisch")) + .orderBy(TAuthor_ID()) + .fetch(); + + assertEquals(2, result.size()); + assertEquals(5, (int) result.getValue(0, TAuthor_ID())); + assertEquals(6, (int) result.getValue(1, TAuthor_ID())); + assertEquals("Hesse", result.getValue(0, TAuthor_LAST_NAME())); + assertEquals("Frisch", result.getValue(1, TAuthor_LAST_NAME())); + assertEquals(null, result.getValue(0, TAuthor_FIRST_NAME())); + assertEquals(null, result.getValue(1, TAuthor_FIRST_NAME())); + + assertEquals(2, create().delete(TAuthor()).where(TAuthor_ID().in(5, 6)).execute()); + + // Update duplicate records + // ------------------------ + switch (getDialect()) { + case ASE: + case DERBY: + case H2: + case INGRES: + case POSTGRES: + case SQLITE: + // TODO [#558] Simulate this + log.info("SKIPPING", "Duplicate record insertion"); + break; + + default: { + loader = + create().loadInto(TAuthor()) + .onDuplicateKeyUpdate() + .loadCSV( + "\"ID\",\"First Qualifier\",\"Last Qualifier\"\r" + + "1,Hermann,Hesse\n" + + "7,\"Max\",Frisch") + .fields(TAuthor_ID(), null, TAuthor_LAST_NAME()) + .execute(); + + assertEquals(2, loader.processed()); + assertEquals(2, loader.stored()); + assertEquals(0, loader.ignored()); + assertEquals(0, loader.errors().size()); + + result = + create().selectFrom(TAuthor()) + .where(TAuthor_LAST_NAME().in("Hesse", "Frisch")) + .orderBy(TAuthor_ID()) + .fetch(); + + assertEquals(2, result.size()); + assertEquals(1, (int) result.getValue(0, TAuthor_ID())); + assertEquals(7, (int) result.getValue(1, TAuthor_ID())); + assertEquals("Hesse", result.getValue(0, TAuthor_LAST_NAME())); + assertEquals("Frisch", result.getValue(1, TAuthor_LAST_NAME())); + assertEquals("George", result.getValue(0, TAuthor_FIRST_NAME())); + assertEquals(null, result.getValue(1, TAuthor_FIRST_NAME())); + + assertEquals(1, create().delete(TAuthor()).where(TAuthor_ID().in(7)).execute()); + } + } + + // [#812] Reset stale connection. Seems to be necessary in Postgres + resetLoaderConnection(); + + // Rollback on duplicate keys + // -------------------------- + loader = + create().loadInto(TAuthor()) + .commitAll() + .onDuplicateKeyError() + .onErrorAbort() + .loadCSV( + "\"ID\",\"First Qualifier\",\"Last Qualifier\"\r" + + "8,Hermann,Hesse\n" + + "1,\"Max\",Frisch\n" + + "2,Friedrich,Dürrenmatt") + .fields(TAuthor_ID(), null, TAuthor_LAST_NAME()) + .execute(); + + assertEquals(2, loader.processed()); + assertEquals(0, loader.stored()); + assertEquals(1, loader.ignored()); + assertEquals(1, loader.errors().size()); + assertEquals(1, loader.errors().get(0).rowIndex()); + assertEquals( + Arrays.asList("1", "Max", "Frisch"), + Arrays.asList(loader.errors().get(0).row())); + + result = + create().selectFrom(TAuthor()) + .where(TAuthor_ID().in(8)) + .orderBy(TAuthor_ID()) + .fetch(); + + assertEquals(0, result.size()); + + // Commit and ignore duplicates + // ---------------------------- + loader = + create().loadInto(TAuthor()) + .commitAll() + .onDuplicateKeyIgnore() + .onErrorAbort() + .loadCSV( + "\"ID\",\"First Qualifier\",\"Last Qualifier\"\r" + + "8,Hermann,Hesse\n" + + "1,\"Max\",Frisch\n" + + "2,Friedrich,Dürrenmatt") + .fields(TAuthor_ID(), null, TAuthor_LAST_NAME()) + .execute(); + + assertEquals(3, loader.processed()); + assertEquals(1, loader.stored()); + assertEquals(2, loader.ignored()); + assertEquals(0, loader.errors().size()); + + result = + create().selectFrom(TAuthor()) + .where(TAuthor_ID().in(1, 2, 8)) + .orderBy(TAuthor_ID()) + .fetch(); + + assertEquals(3, result.size()); + assertEquals(8, (int) result.getValue(2, TAuthor_ID())); + assertNull(result.getValue(2, TAuthor_FIRST_NAME())); + assertEquals("Hesse", result.getValue(2, TAuthor_LAST_NAME())); + assertEquals("Coelho", result.getValue(1, TAuthor_LAST_NAME())); + } + + + private void resetLoaderConnection() throws SQLException { + jOOQAbstractTest.connection.rollback(); + jOOQAbstractTest.connection.close(); + jOOQAbstractTest.connection = null; + jOOQAbstractTest.connectionInitialised = false; + jOOQAbstractTest.connection = delegate.getConnection(); + jOOQAbstractTest.connection.setAutoCommit(false); + } +} diff --git a/jOOQ-test/src/org/jooq/test/_/testcases/OrderByTests.java b/jOOQ-test/src/org/jooq/test/_/testcases/OrderByTests.java new file mode 100644 index 00000000000..d0080c302c6 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/_/testcases/OrderByTests.java @@ -0,0 +1,365 @@ +/** + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com + * All rights reserved. + * + * This software is licensed to you under the Apache License, Version 2.0 + * (the "License"); You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * 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 "jOOQ" 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 COPYRIGHT OWNER 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. + */ +package org.jooq.test._.testcases; + +import static java.util.Arrays.asList; +import static junit.framework.Assert.assertEquals; +import static junit.framework.Assert.assertNull; +import static org.jooq.SQLDialect.ASE; +import static org.jooq.SQLDialect.DB2; +import static org.jooq.SQLDialect.DERBY; +import static org.jooq.SQLDialect.HSQLDB; +import static org.jooq.SQLDialect.INGRES; +import static org.jooq.SQLDialect.SYBASE; +import static org.jooq.impl.Factory.count; +import static org.jooq.impl.Factory.param; +import static org.jooq.impl.Factory.table; + +import java.util.Arrays; +import java.util.HashMap; +import java.util.List; +import java.util.Map; + +import org.jooq.Field; +import org.jooq.Record; +import org.jooq.Result; +import org.jooq.SQLDialect; +import org.jooq.Select; +import org.jooq.Table; +import org.jooq.TableRecord; +import org.jooq.UpdatableRecord; +import org.jooq.test.BaseTest; +import org.jooq.test.jOOQAbstractTest; + +import org.junit.Test; + +public class OrderByTests< + A extends UpdatableRecord, + B extends UpdatableRecord, + S extends UpdatableRecord, + B2S extends UpdatableRecord, + BS extends UpdatableRecord, + L extends TableRecord, + X extends TableRecord, + DATE extends UpdatableRecord, + BOOL extends UpdatableRecord, + D extends UpdatableRecord, + T extends UpdatableRecord, + U extends TableRecord, + I extends TableRecord, + IPK extends UpdatableRecord, + T658 extends TableRecord, + T725 extends UpdatableRecord, + T639 extends UpdatableRecord, + T785 extends TableRecord> +extends BaseTest { + + public OrderByTests(jOOQAbstractTest delegate) { + super(delegate); + } + + @Test + public void testOrderByInSubquery() throws Exception { + // TODO: [#780] Fix this for Ingres and Sybase ASE + switch (getDialect()) { + case ASE: + case INGRES: + log.info("SKIPPING", "Ordered subqueries"); + return; + } + + // Some RDBMS don't accept ORDER BY clauses in subqueries without + // TOP clause (e.g. SQL Server). jOOQ will synthetically add a + // TOP 100 PERCENT clause, if necessary + + Select nested = + create().select(TBook_ID()) + .from(TBook()) + .orderBy(TBook_ID().asc()); + + List result = + create().select(nested.getField(TBook_ID())) + .from(nested) + .orderBy(nested.getField(TBook_ID()).desc()) + .fetch(nested.getField(TBook_ID())); + + assertEquals(Arrays.asList(4, 3, 2, 1), result); + } + + @Test + public void testOrderByNulls() throws Exception { + jOOQAbstractTest.reset = false; + + // Make data a bit more meaningful, first + create().insertInto(TAuthor(), TAuthor_ID(), TAuthor_LAST_NAME()) + .values(3, "Döblin") + .execute(); + + Result authors = + create().selectFrom(TAuthor()) + .orderBy( + TAuthor_FIRST_NAME().asc().nullsFirst()) + .fetch(); + + assertNull(authors.getValue(0, TAuthor_FIRST_NAME())); + assertEquals("George", authors.getValue(1, TAuthor_FIRST_NAME())); + assertEquals("Paulo", authors.getValue(2, TAuthor_FIRST_NAME())); + + authors = + create().selectFrom(TAuthor()) + .orderBy( + TAuthor_FIRST_NAME().asc().nullsLast()) + .fetch(); + + assertEquals("George", authors.getValue(0, TAuthor_FIRST_NAME())); + assertEquals("Paulo", authors.getValue(1, TAuthor_FIRST_NAME())); + assertNull(authors.getValue(2, TAuthor_FIRST_NAME())); + } + + @Test + public void testOrderByIndexes() throws Exception { + assertEquals(Arrays.asList(1, 2, 3, 4), + create().selectFrom(TBook()) + .orderBy(1) + .fetch(TBook_ID())); + + assertEquals(Arrays.asList(1, 2, 3, 4), + create().select(TBook_ID(), TBook_TITLE()) + .from(TBook()) + .orderBy(1) + .fetch(TBook_ID())); + + assertEquals(Arrays.asList(1, 2, 3, 4), + create().select(TBook_TITLE(), TBook_ID()) + .from(TBook()) + .orderBy(2) + .fetch(TBook_ID())); + + assertEquals(Arrays.asList(1, 1, 2, 2), + create().select(TBook_AUTHOR_ID(), TBook_ID()) + .from(TBook()) + .orderBy(2, 1) + .fetch(TBook_AUTHOR_ID())); + } + + @Test + public void testOrderByIndirection() throws Exception { + assertEquals(BOOK_IDS, + create().selectFrom(TBook()) + .orderBy(TBook_ID().sortAsc(), TBook_ID().asc()) + .fetch(TBook_ID())); + + assertEquals(Arrays.asList(3, 2, 4, 1), + create().selectFrom(TBook()) + .orderBy(TBook_ID().sortAsc(3, 2, 4, 1)) + .fetch(TBook_ID())); + + assertEquals(Arrays.asList(1, 4, 2, 3), + create().selectFrom(TBook()) + .orderBy(TBook_ID().sortDesc(3, 2, 4, 1)) + .fetch(TBook_ID())); + +// assertEquals(Arrays.asList(3, 2, 1, 4), +// create().selectFrom(TBook()) +// .orderBy(TBook_ID().sortAsc(3, 2).nullsLast(), TBook_ID().asc()) +// .fetch(TBook_ID())); +// +// assertEquals(Arrays.asList(1, 4, 3, 2), +// create().selectFrom(TBook()) +// .orderBy(TBook_ID().sortAsc(3, 2).nullsFirst(), TBook_ID().asc()) +// .fetch(TBook_ID())); + + Map map = new HashMap(); + map.put(1, 3); + map.put(2, 4); + map.put(3, 1); + map.put(4, 2); + assertEquals(Arrays.asList(3, 4, 1, 2), + create().selectFrom(TBook()) + .orderBy(TBook_ID().sort(map)) + .fetch(TBook_ID())); + } + + @Test + public void testLimit() throws Exception { + + // Some dialects don't support LIMIT 0 / TOP 0 + int lower = asList(DB2, DERBY, HSQLDB, INGRES, SYBASE).contains(getDialect()) ? 1 : 0; + + for (int i = lower; i < 6; i++) { + assertEquals(Math.min(i, 4), + create().selectFrom(TBook()).limit(i).fetch().size()); + assertEquals(Math.min(i, 4), + create().select().from(TBook()).limit(i).fetch().size()); + } + + if (getDialect() == SQLDialect.ASE) { + log.info("SKIPPING", "LIMIT .. OFFSET tests"); + return; + } + + for (int i = lower; i < 6; i++) { + assertEquals(Math.min(i, 3), + create().selectFrom(TBook()).limit(1, i).fetch().size()); + assertEquals(Math.min(i, 3), + create().selectFrom(TBook()).limit(i).offset(1).fetch().size()); + assertEquals(Math.min(i, 3), + create().select().from(TBook()).limit(1, i).fetch().size()); + assertEquals(Math.min(i, 3), + create().select().from(TBook()).limit(i).offset(1).fetch().size()); + } + + Result result = create() + .selectFrom(TBook()) + .orderBy(TBook_ID(), TBook_AUTHOR_ID()) + .limit(1, 2) + .fetch(); + + assertEquals(Integer.valueOf(2), result.getValue(0, TBook_ID())); + assertEquals(Integer.valueOf(3), result.getValue(1, TBook_ID())); + } + + @Test + public void testLimitNamedParams() throws Exception { + if (asList(ASE, INGRES).contains(getDialect())) { + log.info("SKIPPING", "Parameterised LIMIT .. OFFSET tests"); + return; + } + + // Some dialects don't support LIMIT 0 / TOP 0 + int lower = asList(DB2, DERBY, HSQLDB, SYBASE).contains(getDialect()) ? 1 : 0; + + for (int i = lower; i < 6; i++) { + Select s1 = create().selectFrom(TBook()).limit(param("limit", i)); + Select s2 = create().select().from(TBook()).limit(param("limit", i)); + + assertEquals(Math.min(i, 4), s1.fetch().size()); + assertEquals(Math.min(i, 4), s2.fetch().size()); + assertEquals(Math.min(i + 1, 4), s1.bind("limit", i + 1).fetch().size()); + assertEquals(Math.min(i + 1, 4), s2.bind("limit", i + 1).fetch().size()); + } + + for (int i = lower; i < 6; i++) { + Select s1a = create().selectFrom(TBook()).limit(param("offset", 1), i); + Select s1b = create().selectFrom(TBook()).limit(1, param("limit", i)); + Select s1c = create().selectFrom(TBook()).limit(param("offset", 1), param("limit", i)); + + Select s2a = create().selectFrom(TBook()).limit(i).offset(param("offset", 1)); + Select s2b = create().selectFrom(TBook()).limit(param("limit", i)).offset(1); + Select s2c = create().selectFrom(TBook()).limit(param("limit", i)).offset(param("offset", 1)); + + Select s3a = create().select().from(TBook()).limit(param("offset", 1), i); + Select s3b = create().select().from(TBook()).limit(1, param("limit", i)); + Select s3c = create().select().from(TBook()).limit(param("offset", 1), param("limit", i)); + + Select s4a = create().select().from(TBook()).limit(i).offset(param("offset", 1)); + Select s4b = create().select().from(TBook()).limit(param("limit", i)).offset(1); + Select s4c = create().select().from(TBook()).limit(param("limit", i)).offset(param("offset", 1)); + + assertEquals(Math.min(i, 3), s1a.fetch().size()); + assertEquals(Math.min(i, 3), s1b.fetch().size()); + assertEquals(Math.min(i, 3), s1c.fetch().size()); + assertEquals(Math.min(i + 1, 2), s1c.bind("limit", i + 1).bind("offset", 2).fetch().size()); + + assertEquals(Math.min(i, 3), s2a.fetch().size()); + assertEquals(Math.min(i, 3), s2b.fetch().size()); + assertEquals(Math.min(i, 3), s2c.fetch().size()); + assertEquals(Math.min(i + 1, 2), s2c.bind("limit", i + 1).bind("offset", 2).fetch().size()); + + assertEquals(Math.min(i, 3), s3a.fetch().size()); + assertEquals(Math.min(i, 3), s3b.fetch().size()); + assertEquals(Math.min(i, 3), s3c.fetch().size()); + assertEquals(Math.min(i + 1, 2), s3c.bind("limit", i + 1).bind("offset", 2).fetch().size()); + + assertEquals(Math.min(i, 3), s4a.fetch().size()); + assertEquals(Math.min(i, 3), s4b.fetch().size()); + assertEquals(Math.min(i, 3), s4c.fetch().size()); + assertEquals(Math.min(i + 1, 2), s4c.bind("limit", i + 1).bind("offset", 2).fetch().size()); + } + + Result result = create() + .selectFrom(TBook()) + .orderBy(TBook_ID(), TBook_AUTHOR_ID()) + .limit( + param("offset", 1), + param("limit", 2)) + .fetch(); + + assertEquals(Integer.valueOf(2), result.getValue(0, TBook_ID())); + assertEquals(Integer.valueOf(3), result.getValue(1, TBook_ID())); + } + + @Test + public void testLimitNested() throws Exception { + // TODO [#780] This is not supported in Ingres + if (getDialect() == SQLDialect.INGRES || + getDialect() == SQLDialect.ASE) { + + log.info("SKIPPING", "LIMIT clauses in nested SELECTs"); + return; + } + + Table nested = table(create() + .selectFrom(TBook()) + .orderBy(TBook_ID().desc()) + .limit(2)) + .as("nested"); + + Field nestedID = nested.getField(TBook_AUTHOR_ID()); + Record record = create().select(nestedID, count()) + .from(nested) + .groupBy(nestedID) + .orderBy(nestedID) + .fetchOne(); + + assertEquals(Integer.valueOf(2), record.getValue(nestedID)); + assertEquals(Integer.valueOf(2), record.getValue(1)); + + Result result = create().select(nestedID, count()) + .from(create().selectFrom(TBook()) + .orderBy(TBook_ID().desc()) + .limit(1, 2).asTable("nested")) + .groupBy(nestedID) + .orderBy(nestedID) + .fetch(); + + assertEquals(2, result.size()); + assertEquals(Integer.valueOf(1), result.getValue(0, nestedID)); + assertEquals(Integer.valueOf(1), result.getValue(0, 1)); + assertEquals(Integer.valueOf(2), result.getValue(1, nestedID)); + assertEquals(Integer.valueOf(1), result.getValue(1, 1)); + } +} diff --git a/jOOQ-test/src/org/jooq/test/_/testcases/PlainSQLTests.java b/jOOQ-test/src/org/jooq/test/_/testcases/PlainSQLTests.java new file mode 100644 index 00000000000..6611a362822 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/_/testcases/PlainSQLTests.java @@ -0,0 +1,460 @@ +/** + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com + * All rights reserved. + * + * This software is licensed to you under the Apache License, Version 2.0 + * (the "License"); You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * 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 "jOOQ" 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 COPYRIGHT OWNER 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. + */ +package org.jooq.test._.testcases; + +import static junit.framework.Assert.assertEquals; +import static junit.framework.Assert.assertFalse; +import static junit.framework.Assert.assertNotNull; +import static junit.framework.Assert.assertTrue; +import static org.jooq.impl.Factory.field; +import static org.jooq.impl.Factory.function; +import static org.jooq.impl.Factory.param; +import static org.jooq.impl.Factory.table; +import static org.jooq.impl.Factory.val; + +import java.sql.SQLException; +import java.util.Arrays; +import java.util.List; + +import org.jooq.BindContext; +import org.jooq.Condition; +import org.jooq.Cursor; +import org.jooq.Field; +import org.jooq.FutureResult; +import org.jooq.Record; +import org.jooq.RecordHandler; +import org.jooq.RenderContext; +import org.jooq.Result; +import org.jooq.ResultQuery; +import org.jooq.Table; +import org.jooq.TableRecord; +import org.jooq.UpdatableRecord; +import org.jooq.impl.CustomCondition; +import org.jooq.impl.CustomField; +import org.jooq.impl.Factory; +import org.jooq.impl.SQLDataType; +import org.jooq.test.BaseTest; +import org.jooq.test.jOOQAbstractTest; + +import org.junit.Test; + +public class PlainSQLTests< + A extends UpdatableRecord, + B extends UpdatableRecord, + S extends UpdatableRecord, + B2S extends UpdatableRecord, + BS extends UpdatableRecord, + L extends TableRecord, + X extends TableRecord, + DATE extends UpdatableRecord, + BOOL extends UpdatableRecord, + D extends UpdatableRecord, + T extends UpdatableRecord, + U extends TableRecord, + I extends TableRecord, + IPK extends UpdatableRecord, + T658 extends TableRecord, + T725 extends UpdatableRecord, + T639 extends UpdatableRecord, + T785 extends TableRecord> +extends BaseTest { + + public PlainSQLTests(jOOQAbstractTest delegate) { + super(delegate); + } + + @Test + public void testPlainSQL() throws Exception { + jOOQAbstractTest.reset = false; + + // Field and Table + // --------------- + Field ID = field(TBook_ID().getName(), Integer.class); + Result result = create().select().from("t_book").orderBy(ID).fetch(); + + assertEquals(4, result.size()); + assertEquals(BOOK_IDS, result.getValues(ID)); + assertEquals(BOOK_TITLES, result.getValues(TBook_TITLE())); + + // [#271] Aliased plain SQL table + result = create().select(ID).from("(select * from t_book) b").orderBy(ID).fetch(); + assertEquals(4, result.size()); + assertEquals(BOOK_IDS, result.getValues(ID)); + + // [#271] Aliased plain SQL table + result = create().select().from("(select * from t_book) b").orderBy(ID).fetch(); + assertEquals(4, result.size()); + assertEquals( + Arrays.asList(1, 2, 3, 4), + result.getValues(ID)); + + // [#836] Aliased plain SQL table + result = create().select().from(table("t_book").as("b")).orderBy(ID).fetch(); + assertEquals(4, result.size()); + assertEquals(BOOK_IDS, result.getValues(ID)); + + // [#271] Check for aliased nested selects. The DescribeQuery does not seem to work + // [#836] Aliased plain SQL nested select + result = create().select().from(table("(select * from t_book)").as("b")).orderBy(ID).fetch(); + assertEquals(4, result.size()); + assertEquals( + Arrays.asList(1, 2, 3, 4), + result.getValues(ID)); + + + // Field, Table and Condition + // -------------------------- + Field LAST_NAME = field(TAuthor_LAST_NAME().getName()); + Field COUNT1 = field("count(*) x"); + Field COUNT2 = field("count(*) y", Integer.class); + + result = create() + .select(LAST_NAME, COUNT1, COUNT2) + .from("t_author a") + .join("t_book b").on("a.id = b.author_id") + .where("b.title != 'Brida'") + .groupBy(LAST_NAME) + .orderBy(LAST_NAME).fetch(); + + assertEquals(2, result.size()); + assertEquals("Coelho", result.getValue(0, LAST_NAME)); + assertEquals("Orwell", result.getValue(1, LAST_NAME)); + assertEquals("1", result.getValueAsString(0, COUNT1)); + assertEquals("2", result.getValueAsString(1, COUNT1)); + assertEquals(Integer.valueOf(1), result.getValue(0, COUNT2)); + assertEquals(Integer.valueOf(2), result.getValue(1, COUNT2)); + + // Field, Table and Condition + // -------------------------- + result = create().select(LAST_NAME, COUNT1, COUNT2) + .from("t_author a") + .join("t_book b").on("a.id = b.author_id") + .where("b.title != 'Brida'") + .groupBy(LAST_NAME) + .having("count(*) = ?", 1).fetch(); + + assertEquals(1, result.size()); + assertEquals("Coelho", result.getValue(0, LAST_NAME)); + assertEquals("1", result.getValueAsString(0, COUNT1)); + assertEquals(Integer.valueOf(1), result.getValue(0, COUNT2)); + + // Query + // ----- + assertEquals(1, create() + .query("insert into t_author (id, first_name, last_name) values (?, ?, ?)", 3, "Michèle", "Roten") + .execute()); + A author = create().fetchOne(TAuthor(), TAuthor_ID().equal(3)); + assertEquals(Integer.valueOf(3), author.getValue(TAuthor_ID())); + assertEquals("Michèle", author.getValue(TAuthor_FIRST_NAME())); + assertEquals("Roten", author.getValue(TAuthor_LAST_NAME())); + + // [#724] Check for correct binding when passing + // --------------------------------------------- + // - (Object[]) null: API misuse + // - (Object) null: Single null bind value + assertEquals(1, create() + .query("update t_author set first_name = ? where id = 3", (Object[]) null) + .execute()); + author.refresh(); + assertEquals(Integer.valueOf(3), author.getValue(TAuthor_ID())); + assertEquals(null, author.getValue(TAuthor_FIRST_NAME())); + assertEquals("Roten", author.getValue(TAuthor_LAST_NAME())); + + // Reset name + assertEquals(1, create() + .query("update t_author set first_name = ? where id = 3", "Michèle") + .execute()); + author.refresh(); + assertEquals(Integer.valueOf(3), author.getValue(TAuthor_ID())); + assertEquals("Michèle", author.getValue(TAuthor_FIRST_NAME())); + assertEquals("Roten", author.getValue(TAuthor_LAST_NAME())); + + // [#724] Check for correct binding when passing (Object) null + assertEquals(1, create() + .query("update t_author set first_name = ? where id = 3", (Object) null) + .execute()); + author.refresh(); + assertEquals(Integer.valueOf(3), author.getValue(TAuthor_ID())); + assertEquals(null, author.getValue(TAuthor_FIRST_NAME())); + assertEquals("Roten", author.getValue(TAuthor_LAST_NAME())); + + // Function + // -------- + assertEquals("ABC", create().select(function("upper", String.class, val("aBc"))).fetchOne(0)); + assertEquals("abc", create().select(function("lower", SQLDataType.VARCHAR, val("aBc"))).fetchOne(0)); + + // Fetch + // ----- + Result books = create().fetch("select * from t_book where id in (?, ?) order by id", 1, 2); + assertNotNull(books); + assertEquals(2, books.size()); + assertEquals(Integer.valueOf(1), books.getValue(0, TBook_ID())); + assertEquals(Integer.valueOf(2), books.getValue(1, TBook_ID())); + assertEquals(Integer.valueOf(1), books.getValue(0, TBook_AUTHOR_ID())); + assertEquals(Integer.valueOf(1), books.getValue(1, TBook_AUTHOR_ID())); + } + + @Test + public void testPlainSQLCRUD() throws Exception { + jOOQAbstractTest.reset = false; + + // CRUD with plain SQL + Table table = table(TAuthor().getName()); + Field id = field(TAuthor_ID().getName(), Integer.class); + Field firstName = field(TAuthor_FIRST_NAME().getName(), String.class); + Field lastName = field(TAuthor_LAST_NAME().getName(), String.class); + + assertEquals(2, + create().insertInto(table, id, firstName, lastName) + .values(10, "Herbert", "Meier") + .values(11, "Friedrich", "Glauser") + .execute()); + + Result authors1 = create() + .select(id, firstName, lastName) + .from(table) + .where(id.in(10, 11)) + .orderBy(id) + .fetch(); + + assertEquals(2, authors1.size()); + assertEquals(10, (int) authors1.getValue(0, id)); + assertEquals(11, (int) authors1.getValue(1, id)); + assertEquals("Herbert", authors1.getValue(0, firstName)); + assertEquals("Friedrich", authors1.getValue(1, firstName)); + assertEquals("Meier", authors1.getValue(0, lastName)); + assertEquals("Glauser", authors1.getValue(1, lastName)); + + assertEquals(2, + create().update(table) + .set(firstName, "Friedrich") + .set(lastName, "Schiller") + .where(id.in(10, 11)) + .execute()); + + Result authors2 = + create().select(id, firstName, lastName) + .from(table) + .where(id.in(10, 11)) + .orderBy(id) + .fetch(); + + assertEquals(2, authors2.size()); + assertEquals(10, (int) authors2.getValue(0, id)); + assertEquals(11, (int) authors2.getValue(1, id)); + assertEquals("Friedrich", authors2.getValue(0, firstName)); + assertEquals("Friedrich", authors2.getValue(1, firstName)); + assertEquals("Schiller", authors2.getValue(0, lastName)); + assertEquals("Schiller", authors2.getValue(1, lastName)); + + assertEquals(2, + create().delete(table) + .where(id.in(10, 11)) + .execute()); + + assertEquals(0, + create().selectCount() + .from(table) + .where(id.in(10, 11)) + .fetchOne(0)); + } + + @Test + public void testPlainSQLResultQuery() throws Exception { + String sql = create().select(param("p", String.class).as("p")).getSQL(false); + ResultQuery q = create().resultQuery(sql, "10"); + + Result fetch1 = q.fetch(); + assertEquals(1, fetch1.size()); + assertEquals(1, fetch1.getFields().size()); + assertEquals("p", fetch1.getField(0).getName()); + assertEquals("p", fetch1.getField("p").getName()); + assertEquals("10", fetch1.getValue(0, 0)); + assertEquals("10", fetch1.getValue(0, "p")); + assertEquals("10", fetch1.getValue(0, fetch1.getField("p"))); + + List fetch2 = q.fetch("p"); + assertEquals(1, fetch2.size()); + assertEquals("10", fetch2.get(0)); + + List fetch3 = q.fetch(0, Long.class); + assertEquals(1, fetch3.size()); + assertEquals(10L, (long) fetch3.get(0)); + + Record fetch4 = q.fetchAny(); + assertEquals(1, fetch4.getFields().size()); + assertEquals("p", fetch4.getField(0).getName()); + assertEquals("p", fetch4.getField("p").getName()); + assertEquals("10", fetch4.getValue(0)); + assertEquals("10", fetch4.getValue("p")); + assertEquals("10", fetch4.getValue(fetch4.getField("p"))); + + Object[] fetch5 = q.fetchArray("p"); + assertEquals(1, fetch5.length); + assertEquals("10", fetch5[0]); + + Object[] fetch6 = q.fetchArray(0); + assertEquals(1, fetch6.length); + assertEquals("10", fetch6[0]); + + Long[] fetch7 = q.fetchArray(0, Long.class); + assertEquals(1, fetch7.length); + assertEquals(10L, (long) fetch7[0]); + + List fetch8 = q.fetchInto(TestPlainSQLResultQuery.class); + assertEquals(1, fetch8.size()); + assertEquals(10, fetch8.get(0).p); + + final Integer[] count = new Integer[] { 0 }; + q.fetchInto(new RecordHandler() { + @Override + public void next(Record record) { + assertEquals(1, record.getFields().size()); + assertEquals("10", record.getValue(0)); + count[0] += 1; + } + }); + + assertEquals(1, (int) count[0]); + + FutureResult fetch9 = q.fetchLater(); + Thread.sleep(50); + assertTrue(fetch9.isDone()); + assertEquals(1, fetch9.get().size()); + assertEquals("10", fetch9.get().getValue(0, 0)); + + Cursor fetch10 = q.fetchLazy(); + assertFalse(fetch10.isClosed()); + assertTrue(fetch10.hasNext()); + assertEquals(1, fetch10.getFields().size()); + assertEquals("p", fetch10.getField(0).getName()); + assertEquals("10", fetch10.fetchOne().getValue(0)); + assertFalse(fetch10.isClosed()); + assertFalse(fetch10.hasNext()); + assertTrue(fetch10.isClosed()); + + assertEquals(fetch1.get(0), q.fetchOne()); + } + + public static class TestPlainSQLResultQuery { + public int p; + } + + @Test + public void testCustomSQL() throws Exception { + final Field IDx2 = new CustomField(TBook_ID().getName(), TBook_ID().getDataType()) { + private static final long serialVersionUID = 1L; + + @Override + public void toSQL(RenderContext context) { + context.setData("Foo-Field", "Baz"); + + if (context.inline()) { + context.sql(TBook_ID().getName() + " * 2"); + } + else { + context.sql(TBook_ID().getName() + " * ?"); + } + } + + @Override + public void bind(BindContext context) { + try { + context.statement().setInt(context.nextIndex(), 2); + } + catch (SQLException e) { + throw translate("CustomCondition.bind", getSQL(), e); + } + } + }; + + Condition c = new CustomCondition() { + private static final long serialVersionUID = -629253722638033620L; + + @Override + public void toSQL(RenderContext context) { + context.setData("Foo-Condition", "Baz"); + + context.sql(IDx2); + context.sql(" > "); + + if (context.inline()) { + context.sql("3"); + } + else { + context.sql("?"); + } + } + + @Override + public void bind(BindContext context) { + try { + context.bind(IDx2); + context.statement().setInt(context.nextIndex(), 3); + } + catch (SQLException e) { + throw translate("CustomCondition.bind", getSQL(), e); + } + } + }; + + // [#1169] Some additional checks to see if custom data is correctly + // passed on to custom QueryParts + Factory create = create(); + create.setData("Foo-Field", "Bar"); + create.setData("Foo-Condition", "Bar"); + + Result result = create + .select(TBook_ID(), IDx2) + .from(TBook()) + .where(c) + .orderBy(IDx2) + .fetch(); + + assertEquals(3, result.size()); + assertEquals(Integer.valueOf(2), result.getValue(0, TBook_ID())); + assertEquals(Integer.valueOf(3), result.getValue(1, TBook_ID())); + assertEquals(Integer.valueOf(4), result.getValue(2, TBook_ID())); + + assertEquals(Integer.valueOf(4), result.getValue(0, IDx2)); + assertEquals(Integer.valueOf(6), result.getValue(1, IDx2)); + assertEquals(Integer.valueOf(8), result.getValue(2, IDx2)); + + // [#1169] Check again + assertEquals("Baz", create.getData("Foo-Field")); + assertEquals("Baz", create.getData("Foo-Condition")); + } +} diff --git a/jOOQ-test/src/org/jooq/test/_/testcases/PredicateTests.java b/jOOQ-test/src/org/jooq/test/_/testcases/PredicateTests.java new file mode 100644 index 00000000000..8aad42761a4 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/_/testcases/PredicateTests.java @@ -0,0 +1,506 @@ +/** + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com + * All rights reserved. + * + * This software is licensed to you under the Apache License, Version 2.0 + * (the "License"); You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * 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 "jOOQ" 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 COPYRIGHT OWNER 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. + */ +package org.jooq.test._.testcases; + +import static java.util.Arrays.asList; +import static junit.framework.Assert.assertEquals; +import static org.jooq.SQLDialect.ASE; +import static org.jooq.SQLDialect.DB2; +import static org.jooq.SQLDialect.DERBY; +import static org.jooq.SQLDialect.MYSQL; +import static org.jooq.impl.Factory.castNull; +import static org.jooq.impl.Factory.concat; +import static org.jooq.impl.Factory.count; +import static org.jooq.impl.Factory.escape; +import static org.jooq.impl.Factory.lower; +import static org.jooq.impl.Factory.trueCondition; +import static org.jooq.impl.Factory.upper; +import static org.jooq.impl.Factory.val; +import static org.jooq.tools.reflect.Reflect.on; + +import java.util.Arrays; +import java.util.Collections; + +import org.jooq.Condition; +import org.jooq.Field; +import org.jooq.Result; +import org.jooq.SQLDialect; +import org.jooq.TableRecord; +import org.jooq.UpdatableRecord; +import org.jooq.test.BaseTest; +import org.jooq.test.jOOQAbstractTest; + +import org.junit.Test; + +public class PredicateTests< + A extends UpdatableRecord, + B extends UpdatableRecord, + S extends UpdatableRecord, + B2S extends UpdatableRecord, + BS extends UpdatableRecord, + L extends TableRecord, + X extends TableRecord, + DATE extends UpdatableRecord, + BOOL extends UpdatableRecord, + D extends UpdatableRecord, + T extends UpdatableRecord, + U extends TableRecord, + I extends TableRecord, + IPK extends UpdatableRecord, + T658 extends TableRecord, + T725 extends UpdatableRecord, + T639 extends UpdatableRecord, + T785 extends TableRecord> +extends BaseTest { + + public PredicateTests(jOOQAbstractTest delegate) { + super(delegate); + } + + @Test + public void testIsTrue() throws Exception { + assertEquals(0, create().select().where(val(null).isTrue()).fetch().size()); + assertEquals(0, create().select().where(val("asdf").isTrue()).fetch().size()); + + assertEquals(0, create().select().where(val(0).isTrue()).fetch().size()); + assertEquals(0, create().select().where(val("false").isTrue()).fetch().size()); + assertEquals(0, create().select().where(val("n").isTrue()).fetch().size()); + assertEquals(0, create().select().where(val("no").isTrue()).fetch().size()); + assertEquals(0, create().select().where(val("0").isTrue()).fetch().size()); + assertEquals(0, create().select().where(val("disabled").isTrue()).fetch().size()); + assertEquals(0, create().select().where(val("off").isTrue()).fetch().size()); + + assertEquals(1, create().select().where(val(1).isTrue()).fetch().size()); + assertEquals(1, create().select().where(val("true").isTrue()).fetch().size()); + assertEquals(1, create().select().where(val("y").isTrue()).fetch().size()); + assertEquals(1, create().select().where(val("yes").isTrue()).fetch().size()); + assertEquals(1, create().select().where(val("1").isTrue()).fetch().size()); + assertEquals(1, create().select().where(val("enabled").isTrue()).fetch().size()); + assertEquals(1, create().select().where(val("on").isTrue()).fetch().size()); + + assertEquals(0, create().select().where(val("asdf").isFalse()).fetch().size()); + assertEquals(0, create().select().where(val(null).isFalse()).fetch().size()); + + assertEquals(1, create().select().where(val(0).isFalse()).fetch().size()); + assertEquals(1, create().select().where(val("false").isFalse()).fetch().size()); + assertEquals(1, create().select().where(val("n").isFalse()).fetch().size()); + assertEquals(1, create().select().where(val("no").isFalse()).fetch().size()); + assertEquals(1, create().select().where(val("0").isFalse()).fetch().size()); + + assertEquals(1, create().select().where(val("disabled").isFalse()).fetch().size()); + assertEquals(1, create().select().where(val("off").isFalse()).fetch().size()); + + assertEquals(0, create().select().where(val(1).isFalse()).fetch().size()); + assertEquals(0, create().select().where(val("true").isFalse()).fetch().size()); + assertEquals(0, create().select().where(val("y").isFalse()).fetch().size()); + assertEquals(0, create().select().where(val("yes").isFalse()).fetch().size()); + assertEquals(0, create().select().where(val("1").isFalse()).fetch().size()); + assertEquals(0, create().select().where(val("enabled").isFalse()).fetch().size()); + assertEquals(0, create().select().where(val("on").isFalse()).fetch().size()); + + // The below code throws an exception on Ingres when run once. When run + // twice, the DB crashes... This seems to be a driver / database bug + if (getDialect() != SQLDialect.INGRES) { + assertEquals(0, create().select().where(val(false).isTrue()).fetch().size()); + assertEquals(1, create().select().where(val(false).isFalse()).fetch().size()); + assertEquals(1, create().select().where(val(true).isTrue()).fetch().size()); + assertEquals(0, create().select().where(val(true).isFalse()).fetch().size()); + } + } + + @Test + public void testLike() throws Exception { + jOOQAbstractTest.reset = false; + + Field notLike = TBook_PUBLISHED_IN().cast(String.class); + + // DB2 doesn't support this syntax + if (getDialect() == DB2) { + notLike = val("bbb"); + } + + Result books = + create().selectFrom(TBook()) + .where(TBook_TITLE().like("%a%")) + .and(TBook_TITLE().notLike(notLike)) + .fetch(); + + assertEquals(3, books.size()); + + assertEquals(1, + create().insertInto(TBook()) + .set(TBook_ID(), 5) + .set(TBook_AUTHOR_ID(), 2) + .set(TBook_PUBLISHED_IN(), 2012) + .set((Field) TBook_LANGUAGE_ID(), on(TBook_LANGUAGE_ID().getDataType().getType()).get("en")) + .set(TBook_TITLE(), "About percentages (%) and underscores (_), a critical review") + .execute()); + + // [#1072] Add checks for ESCAPE syntax + // ------------------------------------ + books = + create().selectFrom(TBook()) + .where(TBook_TITLE().like("%(!%)%", '!')) + .and(TBook_TITLE().like("%(#_)%", '#')) + .and(TBook_TITLE().notLike("%(!%)%", '#')) + .and(TBook_TITLE().notLike("%(#_)%", '!')) + .fetch(); + + assertEquals(1, books.size()); + assertEquals(5, (int) books.get(0).getValue(TBook_ID())); + + // DERBY doesn't know any REPLACE function, hence only test those + // conditions that do not use REPLACE internally + boolean derby = getDialect() == DERBY; + + // [#1131] DB2 doesn't like concat in LIKE expressions very much + // ------------------------------------------------------------- + books = + create().selectFrom(TBook()) + .where(TBook_TITLE().like(concat("19", "84"))) + .and(TBook_TITLE().like(upper(concat("198", "4")))) + .and(TBook_TITLE().like(lower(concat("1", "984")))) + .fetch(); + + assertEquals(1, books.size()); + assertEquals(1, (int) books.get(0).getValue(TBook_ID())); + + // [#1106] Add checks for Factory.escape() function + // ------------------------------------------------ + books = + create().selectFrom(TBook()) + .where(TBook_TITLE().like(concat("%", escape("(%)", '!'), "%"), '!')) + .and(derby ? trueCondition() : + TBook_TITLE().like(concat(val("%"), escape(val("(_)"), '#'), val("%")), '#')) + .and(TBook_TITLE().notLike(concat("%", escape("(!%)", '#'), "%"), '#')) + .and(derby ? trueCondition() : + TBook_TITLE().notLike(concat(val("%"), escape(val("(#_)"), '!'), val("%")), '!')) + .fetch(); + + assertEquals(1, books.size()); + assertEquals(5, (int) books.get(0).getValue(TBook_ID())); + + // [#1089] Add checks for convenience methods + // ------------------------------------------ + books = + create().selectFrom(TBook()) + .where(TBook_TITLE().contains("%")) + .and(derby ? trueCondition() : + TBook_TITLE().contains(val("(_"))) + .and(TBook_TITLE().startsWith("About")) + .and(derby ? trueCondition() : + TBook_TITLE().startsWith(val("Abo"))) + .and(TBook_TITLE().endsWith("review")) + .and(derby ? trueCondition() : + TBook_TITLE().endsWith(val("review"))) + .fetch(); + + assertEquals(1, books.size()); + assertEquals(5, (int) books.get(0).getValue(TBook_ID())); + + // [#1159] Add checks for matching numbers with LIKE + // ------------------------------------------------- + books = + create().selectFrom(TBook()) + .where(TBook_PUBLISHED_IN().like("194%")) + .orderBy(TBook_ID()) + .fetch(); + + assertEquals(2, books.size()); + assertEquals(asList(1, 2), books.getValues(TBook_ID())); + + books = + create().selectFrom(TBook()) + .where(TBook_PUBLISHED_IN().like("%9%")) + .and(TBook_PUBLISHED_IN().notLike("%8%")) + .orderBy(TBook_ID()) + .fetch(); + + assertEquals(2, books.size()); + assertEquals(asList(2, 4), books.getValues(TBook_ID())); + + // [#1160] Add checks for convenience methods using numbers + // -------------------------------------------------------- + books = + create().selectFrom(TBook()) + .where(TBook_PUBLISHED_IN().contains(9)) + .and(TBook_PUBLISHED_IN().endsWith(88)) + .and(TBook_PUBLISHED_IN().startsWith(1)) + .orderBy(TBook_ID()) + .fetch(); + + assertEquals(1, books.size()); + assertEquals(asList(3), books.getValues(TBook_ID())); + } + + @Test + public void testLargeINCondition() throws Exception { + Field count = count(); + assertEquals(1, (int) create().select(count) + .from(TBook()) + .where(TBook_ID().in(Collections.nCopies(999, 1))) + .fetchOne(count)); + + switch (getDialect()) { + case SQLITE: + log.info("SKIPPING", "SQLite can't handle more than 999 variables"); + break; + + default: + // Oracle needs splitting of IN(..) expressions when there are + // more than 1000 elements + assertEquals(1, (int) create().select(count) + .from(TBook()) + .where(TBook_ID().in(Collections.nCopies(1000, 1))) + .fetchOne(count)); + + assertEquals(1, (int) create().select(count) + .from(TBook()) + .where(TBook_ID().in(Collections.nCopies(1001, 1))) + .fetchOne(count)); + + // SQL Server's is at 2100... + // Sybase ASE's is at 2000... + assertEquals(1, (int) create().select(count) + .from(TBook()) + .where(TBook_ID().in(Collections.nCopies(1950, 1))) + .fetchOne(count)); + + assertEquals(3, (int) create().select(count) + .from(TBook()) + .where(TBook_ID().notIn(Collections.nCopies(1950, 1))) + .fetchOne(count)); + + break; + } + } + + @Test + public void testConditionalSelect() throws Exception { + Condition c = trueCondition(); + + assertEquals(4, create().selectFrom(TBook()).where(c).execute()); + + c = c.and(TBook_PUBLISHED_IN().greaterThan(1945)); + assertEquals(3, create().selectFrom(TBook()).where(c).execute()); + + c = c.not(); + assertEquals(1, create().selectFrom(TBook()).where(c).execute()); + + c = c.or(TBook_AUTHOR_ID().equal( + create().select(TAuthor_ID()).from(TAuthor()).where(TAuthor_FIRST_NAME().equal("Paulo")))); + assertEquals(3, create().selectFrom(TBook()).where(c).execute()); + } + + @Test + public void testConditions() throws Exception { + // The BETWEEN clause + assertEquals(Arrays.asList(2, 3), create().select() + .from(TBook()) + .where(TBook_ID().between(2, 3)) + .orderBy(TBook_ID()).fetch(TBook_ID())); + + assertEquals(Arrays.asList(3, 4), create().select() + .from(TBook()) + .where(val(3).between(TBook_AUTHOR_ID(), TBook_ID())) + .orderBy(TBook_ID()).fetch(TBook_ID())); + + // [#1074] The NOT BETWEEN clause + assertEquals(Arrays.asList(1, 4), create().select() + .from(TBook()) + .where(TBook_ID().notBetween(2, 3)) + .orderBy(TBook_ID()).fetch(TBook_ID())); + + assertEquals(Arrays.asList(1, 2), create().select() + .from(TBook()) + .where(val(3).notBetween(TBook_AUTHOR_ID(), TBook_ID())) + .orderBy(TBook_ID()).fetch(TBook_ID())); + + // The IN clause + // [#502] empty set checks + assertEquals(Arrays.asList(), create().select() + .from(TBook()) + .where(TBook_ID().in(new Integer[0])) + .fetch(TBook_ID())); + assertEquals(BOOK_IDS, create().select() + .from(TBook()) + .where(TBook_ID().notIn(new Integer[0])) + .orderBy(TBook_ID()) + .fetch(TBook_ID())); + + // The IN clause + // [#1073] NULL checks + assertEquals( + asList(1), + create().select(TBook_ID()) + .from(TBook()) + .where(TBook_ID().in(val(1), castNull(Integer.class))) + .fetch(TBook_ID())); + + // [#1073] Some dialects incorrectly handle NULL in NOT IN predicates + if (asList(ASE, MYSQL).contains(getDialect())) { + assertEquals( + asList(2, 3, 4), + create().select(TBook_ID()) + .from(TBook()) + .where(TBook_ID().notIn(val(1), castNull(Integer.class))) + .orderBy(TBook_ID()) + .fetch(TBook_ID())); + } + else { + assertEquals( + asList(), + create().select(TBook_ID()) + .from(TBook()) + .where(TBook_ID().notIn(val(1), castNull(Integer.class))) + .fetch(TBook_ID())); + } + + assertEquals(Arrays.asList(1, 2), create().select() + .from(TBook()) + .where(TBook_ID().in(1, 2)) + .orderBy(TBook_ID()).fetch(TBook_ID())); + + assertEquals(Arrays.asList(2, 3, 4), create().select() + .from(TBook()) + .where(val(2).in(TBook_ID(), TBook_AUTHOR_ID())) + .orderBy(TBook_ID()).fetch(TBook_ID())); + + // = { ALL | ANY | SOME } + switch (getDialect()) { + case SQLITE: + log.info("SKIPPING", "= { ALL | ANY | SOME } tests"); + break; + + default: { + + // Testing = ALL(subquery) + assertEquals(Arrays.asList(1), create().select() + .from(TBook()) + .where(TBook_ID().equalAll(create().selectOne())) + .orderBy(TBook_ID()).fetch(TBook_ID())); + assertEquals(Arrays.asList(), create().select() + .from(TBook()) + .where(TBook_ID().equalAll(create().select(TBook_ID()).from(TBook()).where(TBook_ID().in(1, 2)))) + .orderBy(TBook_ID()).fetch(TBook_ID())); + + // Testing = ANY(subquery) + assertEquals(Arrays.asList(1), create().select() + .from(TBook()) + .where(TBook_ID().equalAny(create().selectOne())) + .orderBy(TBook_ID()).fetch(TBook_ID())); + assertEquals(Arrays.asList(1, 2), create().select() + .from(TBook()) + .where(TBook_ID().equalAny(create().select(TBook_ID()).from(TBook()).where(TBook_ID().in(1, 2)))) + .orderBy(TBook_ID()).fetch(TBook_ID())); + + // Testing = ALL(array) + assertEquals(Arrays.asList(1), create().select(TBook_ID()) + .from(TBook()) + .where(TBook_ID().equalAll(1)) + .orderBy(TBook_ID()).fetch(TBook_ID())); + assertEquals(Arrays.asList(), create().select(TBook_ID()) + .from(TBook()) + .where(TBook_ID().equalAll(1, 2)) + .orderBy(TBook_ID()).fetch(TBook_ID())); + + // Testing = ANY(array) + assertEquals(Arrays.asList(1), create().select(TBook_ID()) + .from(TBook()) + .where(TBook_ID().equalAny(1)) + .orderBy(TBook_ID()).fetch(TBook_ID())); + assertEquals(Arrays.asList(1, 2), create().select(TBook_ID()) + .from(TBook()) + .where(TBook_ID().equalAny(1, 2)) + .orderBy(TBook_ID()).fetch(TBook_ID())); + + // Inducing the above to work the same way as all other operators + // Check all operators in a single query + assertEquals(Arrays.asList(3), create() + .select() + .from(TBook()) + .where(TBook_ID().equal(create().select(val(3)))) + .and(TBook_ID().equalAll(create().select(val(3)))) + .and(TBook_ID().equalAll(3, 3)) + .and(TBook_ID().equalAny(create().select(TBook_ID()).from(TBook()).where(TBook_ID().in(3, 4)))) + .and(TBook_ID().equalAny(3, 4)) + .and(TBook_ID().notEqual(create().select(val(1)))) + .and(TBook_ID().notEqualAll(create().select(TBook_ID()).from(TBook()).where(TBook_ID().in(1, 4)))) + .and(TBook_ID().notEqualAll(1, 4, 4)) + .and(TBook_ID().notEqualAny(create().select(TBook_ID()).from(TBook()).where(TBook_ID().in(1, 4)))) + .and(TBook_ID().notEqualAny(1, 4, 4)) + .and(TBook_ID().greaterOrEqual(create().select(val(1)))) + .and(TBook_ID().greaterOrEqualAll(create().select(TBook_ID()).from(TBook()).where(TBook_ID().in(1, 2)))) + .and(TBook_ID().greaterOrEqualAll(1, 2)) + .and(TBook_ID().greaterOrEqualAny(create().select(TBook_ID()).from(TBook()).where(TBook_ID().in(1, 4)))) + .and(TBook_ID().greaterOrEqualAny(1, 4)) + .and(TBook_ID().greaterThan(create().select(val(1)))) + .and(TBook_ID().greaterThanAll(create().select(TBook_ID()).from(TBook()).where(TBook_ID().in(1, 2)))) + .and(TBook_ID().greaterThanAll(1, 2)) + .and(TBook_ID().greaterThanAny(create().select(TBook_ID()).from(TBook()).where(TBook_ID().in(1, 4)))) + .and(TBook_ID().greaterThanAny(1, 4)) + .and(TBook_ID().lessOrEqual(create().select(val(3)))) + .and(TBook_ID().lessOrEqualAll(create().select(TBook_ID()).from(TBook()).where(TBook_ID().in(3, 4)))) + .and(TBook_ID().lessOrEqualAll(3, 4)) + .and(TBook_ID().lessOrEqualAny(create().select(TBook_ID()).from(TBook()).where(TBook_ID().in(1, 4)))) + .and(TBook_ID().lessOrEqualAny(1, 4)) + .and(TBook_ID().lessThan(create().select(val(4)))) + .and(TBook_ID().lessThanAll(create().select(val(4)))) + .and(TBook_ID().lessThanAll(4, 5)) + .and(TBook_ID().lessThanAny(create().select(TBook_ID()).from(TBook()).where(TBook_ID().in(1, 4)))) + .and(TBook_ID().lessThanAny(1, 4)) + .fetch(TBook_ID())); + + break; + } + } + } + + @Test + public void testIgnoreCase() { + A author = + create().selectFrom(TAuthor()) + .where(TAuthor_FIRST_NAME().equalIgnoreCase(TAuthor_FIRST_NAME())) + .and(upper(TAuthor_FIRST_NAME()).equalIgnoreCase(lower(TAuthor_FIRST_NAME()))) + .and(TAuthor_FIRST_NAME().equalIgnoreCase("george")) + .and(TAuthor_FIRST_NAME().equalIgnoreCase("geORge")) + .and(TAuthor_FIRST_NAME().equalIgnoreCase("GEORGE")) + .and(TAuthor_FIRST_NAME().notEqualIgnoreCase("paulo")) + .fetchOne(); + + assertEquals("George", author.getValue(TAuthor_FIRST_NAME())); + } +} diff --git a/jOOQ-test/src/org/jooq/test/_/testcases/RenderAndBindTests.java b/jOOQ-test/src/org/jooq/test/_/testcases/RenderAndBindTests.java new file mode 100644 index 00000000000..052ab302bf1 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/_/testcases/RenderAndBindTests.java @@ -0,0 +1,433 @@ +/** + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com + * All rights reserved. + * + * This software is licensed to you under the Apache License, Version 2.0 + * (the "License"); You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * 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 "jOOQ" 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 COPYRIGHT OWNER 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. + */ +package org.jooq.test._.testcases; + +import static java.util.Arrays.asList; +import static junit.framework.Assert.assertEquals; +import static junit.framework.Assert.assertFalse; +import static junit.framework.Assert.assertNull; +import static junit.framework.Assert.assertTrue; +import static junit.framework.Assert.fail; +import static org.jooq.SQLDialect.DERBY; +import static org.jooq.conf.SettingsTools.executePreparedStatements; +import static org.jooq.impl.Factory.field; +import static org.jooq.impl.Factory.param; +import static org.jooq.impl.Factory.vals; + +import java.math.BigDecimal; +import java.math.BigInteger; +import java.sql.Date; +import java.sql.PreparedStatement; +import java.sql.ResultSet; +import java.sql.Time; +import java.sql.Timestamp; + +import org.jooq.Insert; +import org.jooq.Record; +import org.jooq.Result; +import org.jooq.Select; +import org.jooq.TableRecord; +import org.jooq.UpdatableRecord; +import org.jooq.conf.RenderKeywordStyle; +import org.jooq.conf.RenderNameStyle; +import org.jooq.conf.Settings; +import org.jooq.conf.StatementType; +import org.jooq.impl.Factory; +import org.jooq.test.BaseTest; +import org.jooq.test.jOOQAbstractTest; + +import org.junit.Test; + +public class RenderAndBindTests< + A extends UpdatableRecord, + B extends UpdatableRecord, + S extends UpdatableRecord, + B2S extends UpdatableRecord, + BS extends UpdatableRecord, + L extends TableRecord, + X extends TableRecord, + DATE extends UpdatableRecord, + BOOL extends UpdatableRecord, + D extends UpdatableRecord, + T extends UpdatableRecord, + U extends TableRecord, + I extends TableRecord, + IPK extends UpdatableRecord, + T658 extends TableRecord, + T725 extends UpdatableRecord, + T639 extends UpdatableRecord, + T785 extends TableRecord> +extends BaseTest { + + public RenderAndBindTests(jOOQAbstractTest delegate) { + super(delegate); + } + + @Test + public void testSelectGetSQLAndGetBindValues() throws Exception { + Select select = + create().select(TBook_ID(), TBook_ID().mul(6).div(2).div(3)) + .from(TBook()) + .orderBy(TBook_ID(), TBook_ID().mod(2)); + + assertEquals( + asList(6, 2, 3, 2), + select.getBindValues()); + + log.info("Executing", select.getSQL()); + PreparedStatement stmt = jOOQAbstractTest.connection.prepareStatement(select.getSQL()); + + // [#1145] Don't set bind values if not needed + if (executePreparedStatements(create().getSettings())) { + int i = 0; + for (Object value : select.getBindValues()) { + stmt.setObject(++i, value); + } + } + + ResultSet rs = stmt.executeQuery(); + Result result = create().fetch(rs); + assertEquals(BOOK_IDS, result.getValues(TBook_ID(), Integer.class)); + assertEquals(BOOK_IDS, result.getValues(1, Integer.class)); + + try { + assertEquals(BOOK_IDS, result.getValues(2, Integer.class)); + fail(); + } catch (IllegalArgumentException expected) {} + + stmt.close(); + } + + @Test + public void testInsertUpdateGetSQLAndGetBindValues() throws Exception { + jOOQAbstractTest.reset = false; + + // [#1128] Be sure that NULL values are created as bind variables too. + // They used to be always inlined for historic reasons. + + // INSERT INTO .. SET syntax + // ---------------------------- + Insert insert1 = + create().insertInto(TAuthor()) + .set(TAuthor_ID(), 1) + .set(TAuthor_FIRST_NAME(), null) + .set(TAuthor_LAST_NAME(), "Koontz"); + + assertEquals( + asList((Object) 1, null, "Koontz"), + insert1.getBindValues()); + + // INSERT INTO .. VALUES syntax + // ---------------------------- + Insert insert2 = + create().insertInto(TAuthor(), TAuthor_ID(), TAuthor_FIRST_NAME(), TAuthor_LAST_NAME()) + .values(1, null, "Hesse"); + + assertEquals( + asList((Object) 1, null, "Hesse"), + insert2.getBindValues()); + } + + @Test + public void testNamedParams() throws Exception { + Select select = + create().select( + TAuthor_ID(), + param("p1", String.class)) + .from(TAuthor()) + .where(TAuthor_ID().in( + param("p2", Integer.class), + param("p3", Integer.class))) + .orderBy(TAuthor_ID().asc()); + + // Should execute fine, but no results due to IN (null, null) filter + assertEquals(0, select.fetch().size()); + + // Set both parameters to the same value + select.getParam("p2").setConverted(1L); + select.getParam("p3").setConverted("1"); + Result result1 = select.fetch(); + assertEquals(1, result1.size()); + assertEquals(1, result1.getValue(0, 0)); + assertNull(result1.getValue(0, 1)); + + // Set more parameters + select.getParam("p1").setConverted("asdf"); + select.getParam("p3").setConverted("2"); + Result result2 = select.fetch(); + assertEquals(2, result2.size()); + assertEquals(1, result2.getValue(0, 0)); + assertEquals(2, result2.getValue(1, 0)); + assertEquals("asdf", result2.getValue(0, 1)); + assertEquals("asdf", result2.getValue(1, 1)); + } + + @Test + public void testUnknownBindTypes() throws Exception { + + // [#1028] [#1029] Named params without any associated type information + Select select = create().select( + param("p1"), + param("p2")); + + select.bind(1, "10"); + select.bind(2, null); + Result result3 = select.fetch(); + + assertEquals(1, result3.size()); + assertEquals("10", result3.getValue(0, 0)); + assertEquals(null, result3.getValue(0, 1)); + } + + @Test + public void testSelectBindValues() throws Exception { + Select select = + create().select( + TAuthor_ID(), + param("p1", String.class)) + .from(TAuthor()) + .where(TAuthor_ID().in( + param("p2", Integer.class), + param("p3", Integer.class))) + .orderBy(TAuthor_ID().asc()); + + // Should execute fine, but no results due to IN (null, null) filter + assertEquals(0, select.fetch().size()); + + // Set both condition parameters to the same value + Result result1 = + select.bind("p2", 1L) + .bind(3, "1") + .fetch(); + assertEquals(1, result1.size()); + assertEquals(1, result1.getValue(0, 0)); + assertNull(result1.getValue(0, 1)); + + // Set selection parameter, too + Result result2 = + select.bind(1, "asdf") + .bind("p3", "2") + .fetch(); + assertEquals(2, result2.size()); + assertEquals(1, result2.getValue(0, 0)); + assertEquals(2, result2.getValue(1, 0)); + assertEquals("asdf", result2.getValue(0, 1)); + assertEquals("asdf", result2.getValue(1, 1)); + } + + @Test + public void testSelectBindValuesWithPlainSQL() throws Exception { + Select select = + create().select(TAuthor_ID()) + .from(TAuthor()) + .where(TAuthor_ID().in( + + // [#724] Check for API misuse + field("?", Integer.class, (Object[]) null), + field("?", Integer.class, (Object[]) null))) + .and(TAuthor_ID().getName() + " != ? or 'abc' = '???'", 37) + .orderBy(TAuthor_ID().asc()); + + // Should execute fine, but no results due to IN (null, null) filter + assertEquals(0, select.fetch().size()); + + // Set both parameters to the same value + Result result1 = + select.bind(1, 1L) + .bind(2, 1) + .fetch(); + assertEquals(1, result1.size()); + assertEquals(1, result1.getValue(0, 0)); + + // Set selection parameter, too + Result result2 = + select.bind(2, 2) + .fetch(); + assertEquals(2, result2.size()); + assertEquals(1, result2.getValue(0, 0)); + assertEquals(2, result2.getValue(1, 0)); + } + + @Test + public void testInlinedBindValues() throws Exception { + // [#1158] TODO get this working for derby as well + boolean derby = (getDialect() == DERBY); + + // [#1147] Some data types need special care when inlined + + // Selection from DUAL + // ------------------- + String s1 = "test"; + String s2 = "no SQL 'injection here; <<`'"; + String s3 = "''"; + String s4 = (derby ? s1 : null); + + Byte b1 = Byte.valueOf("1"); + Byte b2 = (derby ? b1 : null); + Short sh1 = Short.valueOf("2"); + Short sh2 = (derby ? sh1 : null); + Integer i1 = 3; + Integer i2 = (derby ? i1 : null); + Long l1 = 4L; + Long l2 = (derby ? l1 : null); + BigInteger bi1 = new BigInteger("5"); + BigInteger bi2 = (derby ? bi1 : null); + BigDecimal bd1 = new BigDecimal("6.01"); + BigDecimal bd2 = (derby ? bd1 : null); + Double db1 = 7.25; + Double db2 = (derby ? db1 : null); + Float f1 = 8.5f; + Float f2 = (derby ? f1 : null); + + Date d1 = Date.valueOf("1981-07-10"); + Date d2 = (derby ? d1 : null); + Time t1 = Time.valueOf("12:01:15"); + Time t2 = (derby ? t1 : null); + Timestamp ts1 = Timestamp.valueOf("1981-07-10 12:01:15"); + Timestamp ts2 = (derby ? ts1 : null); + + byte[] by1 = "some bytes".getBytes(); + byte[] by2 = (derby ? by1 : null); + Boolean bool1 = true; + Boolean bool2 = false; + Boolean bool3 = (derby ? bool1 : null); + + Factory create = create(new Settings() + .withStatementType(StatementType.STATIC_STATEMENT)); + + Object[] array1 = create.select(vals(s1, s2, s3, s4)).fetchOneArray(); + Object[] array2 = create.select(vals(b1, b2, sh1, sh2, i1, i2, l1, l2, bi1, bi2, bd1, bd2, db1, db2, f1, f2)).fetchOneArray(); + Object[] array3 = create.select(vals(d1, d2, t1, t2, ts1, ts2)).fetchOneArray(); + Object[] array4 = create.select(vals(by1, by2, bool1, bool2, bool3)).fetchOneArray(); + + assertEquals(4, array1.length); + assertEquals(16, array2.length); + assertEquals(6, array3.length); + assertEquals(5, array4.length); + + assertEquals(asList(s1, s2, s3, s4), asList(array1)); + assertEquals(asList((Number) b1, b2, sh1, sh2, i1, i2, l1, l2, bi1, bi2, bd1, bd2, db1, db2, f1, f2), asList(array2)); + assertEquals(asList(d1, d2, t1, t2, ts1, ts2), asList(array3)); + + array4[0] = new String((byte[]) array4[0]); + array4[1] = (derby ? new String((byte[]) array4[1]) : array4[1]); + + assertEquals(asList(new String(by1), (derby ? new String(by2) : by2), bool1, bool2, bool3), asList(array4)); + } + + @Test + public void testInlinedBindValuesForDatetime() throws Exception { + jOOQAbstractTest.reset = false; + + Date d1 = Date.valueOf("1981-07-10"); + // Time t1 = Time.valueOf("12:01:15"); // [#1013] TODO: Fix this for Oracle + Timestamp ts1 = Timestamp.valueOf("1981-07-10 12:01:15"); + + Factory create = create(new Settings() + .withStatementType(StatementType.STATIC_STATEMENT)); + + DATE date = create.newRecord(TDates()); + date.setValue(TDates_ID(), 1); + assertEquals(1, date.store()); + + date.setValue(TDates_ID(), 2); + date.setValue(TDates_D(), d1); + // date.setValue(TDates_T(), t1); + date.setValue(TDates_TS(), ts1); + assertEquals(1, date.store()); + + Result dates = + create.select(TDates_ID(), TDates_D(), TDates_T(), TDates_TS()) + .from(TDates()) + .orderBy(TDates_ID()) + .fetch(); + + assertEquals(2, dates.size()); + assertEquals(asList(1, 2), dates.getValues(TDates_ID())); + assertEquals(asList(1, null, null, null), asList(dates.get(0).intoArray())); + assertEquals(asList((Object) 2, d1, null, ts1), asList(dates.get(1).intoArray())); + } + + @Test + public void testRenderNameStyle() throws Exception { + Select s = + create(new Settings().withRenderNameStyle(RenderNameStyle.AS_IS)) + .select(TBook_ID(), TBook_TITLE(), TAuthor_FIRST_NAME(), TAuthor_LAST_NAME()) + .from(TBook()) + .join(TAuthor()).on(TBook_AUTHOR_ID().equal(TAuthor_ID())) + .orderBy(TBook_ID()); + + Result result = s.fetch(); + assertEquals(BOOK_IDS, result.getValues(TBook_ID())); + assertEquals(BOOK_TITLES, result.getValues(TBook_TITLE())); + assertEquals(BOOK_FIRST_NAMES, result.getValues(TAuthor_FIRST_NAME())); + assertEquals(BOOK_LAST_NAMES, result.getValues(TAuthor_LAST_NAME())); + + // [#521] Ensure that no quote characters are rendered + assertFalse(s.getSQL().contains("\"")); + assertFalse(s.getSQL().contains("[")); + assertFalse(s.getSQL().contains("]")); + assertFalse(s.getSQL().contains("`")); + + assertTrue(s.getSQL().toUpperCase().contains("T_BOOK.ID")); + assertTrue(s.getSQL().toUpperCase().contains("T_BOOK.TITLE")); + assertTrue(s.getSQL().toUpperCase().contains("T_AUTHOR.FIRST_NAME")); + assertTrue(s.getSQL().toUpperCase().contains("T_AUTHOR.LAST_NAME")); + } + + @Test + public void testRenderKeywordStyle() throws Exception { + Select s = + create(new Settings().withRenderKeywordStyle(RenderKeywordStyle.UPPER)) + .select(TBook_ID(), TBook_TITLE(), TAuthor_FIRST_NAME(), TAuthor_LAST_NAME()) + .from(TBook()) + .join(TAuthor()).on(TBook_AUTHOR_ID().equal(TAuthor_ID())) + .orderBy(TBook_ID()); + + Result result = s.fetch(); + assertEquals(BOOK_IDS, result.getValues(TBook_ID())); + assertEquals(BOOK_TITLES, result.getValues(TBook_TITLE())); + assertEquals(BOOK_FIRST_NAMES, result.getValues(TAuthor_FIRST_NAME())); + assertEquals(BOOK_LAST_NAMES, result.getValues(TAuthor_LAST_NAME())); + + // [#521] Ensure that no quote characters are rendered + assertTrue(s.getSQL().contains("SELECT")); + assertTrue(s.getSQL().contains("FROM")); + assertTrue(s.getSQL().contains("JOIN")); + assertTrue(s.getSQL().contains("ON")); + assertTrue(s.getSQL().contains("ORDER BY")); + } +} diff --git a/jOOQ-test/src/org/jooq/test/_/testcases/RoutineAndUDTTests.java b/jOOQ-test/src/org/jooq/test/_/testcases/RoutineAndUDTTests.java new file mode 100644 index 00000000000..fc4668acdea --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/_/testcases/RoutineAndUDTTests.java @@ -0,0 +1,1388 @@ +/** + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com + * All rights reserved. + * + * This software is licensed to you under the Apache License, Version 2.0 + * (the "License"); You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * 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 "jOOQ" 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 COPYRIGHT OWNER 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. + */ +package org.jooq.test._.testcases; + +import static java.util.Arrays.asList; +import static junit.framework.Assert.assertEquals; +import static junit.framework.Assert.assertFalse; +import static junit.framework.Assert.assertNotNull; +import static junit.framework.Assert.assertNull; +import static junit.framework.Assert.assertTrue; +import static org.jooq.impl.Factory.table; +import static org.jooq.impl.Factory.val; + +import java.sql.Date; +import java.util.Arrays; + +import org.jooq.ArrayRecord; +import org.jooq.Configuration; +import org.jooq.Field; +import org.jooq.InsertQuery; +import org.jooq.Record; +import org.jooq.Result; +import org.jooq.SQLDialect; +import org.jooq.SelectQuery; +import org.jooq.Table; +import org.jooq.TableRecord; +import org.jooq.UDTRecord; +import org.jooq.UpdatableRecord; +import org.jooq.UpdateQuery; +import org.jooq.test.BaseTest; +import org.jooq.test.jOOQAbstractTest; +import org.jooq.tools.reflect.Reflect; +import org.jooq.tools.reflect.ReflectException; + +import org.junit.Test; + +public class RoutineAndUDTTests< + A extends UpdatableRecord, + B extends UpdatableRecord, + S extends UpdatableRecord, + B2S extends UpdatableRecord, + BS extends UpdatableRecord, + L extends TableRecord, + X extends TableRecord, + DATE extends UpdatableRecord, + BOOL extends UpdatableRecord, + D extends UpdatableRecord, + T extends UpdatableRecord, + U extends TableRecord, + I extends TableRecord, + IPK extends UpdatableRecord, + T658 extends TableRecord, + T725 extends UpdatableRecord, + T639 extends UpdatableRecord, + T785 extends TableRecord> +extends BaseTest { + + public RoutineAndUDTTests(jOOQAbstractTest delegate) { + super(delegate); + } + @Test + public void testPackage() throws Exception { + if (cLibrary() == null) { + log.info("SKIPPING", "packages test"); + return; + } + + jOOQAbstractTest.reset = false; + + assertEquals("1", "" + invoke(cLibrary(), "pkgPAuthorExists1", create(), "Paulo")); + assertEquals("0", "" + invoke(cLibrary(), "pkgPAuthorExists1", create(), "Shakespeare")); + assertEquals("1", "" + invoke(cLibrary(), "pkgFAuthorExists1", create(), "Paulo")); + assertEquals("0", "" + invoke(cLibrary(), "pkgFAuthorExists1", create(), "Shakespeare")); + } + + @Test + public void testStoredProcedure() throws Exception { + if (cRoutines() == null) { + log.info("SKIPPING", "procedure test"); + return; + } + + jOOQAbstractTest.reset = false; + + // P_AUTHOR_EXISTS + // --------------------------------------------------------------------- + if (supportsOUTParameters()) { + assertEquals("0", "" + invoke(cRoutines(), "pAuthorExists", create(), null, DUMMY_OUT_INT)); + assertEquals("1", "" + invoke(cRoutines(), "pAuthorExists", create(), "Paulo", DUMMY_OUT_INT)); + assertEquals("0", "" + invoke(cRoutines(), "pAuthorExists", create(), "Shakespeare", DUMMY_OUT_INT)); + } else { + log.info("SKIPPING", "procedure test for OUT parameters"); + } + + // P_CREATE_AUTHOR_* + // --------------------------------------------------------------------- + assertEquals(null, create().fetchOne( + TAuthor(), + TAuthor_FIRST_NAME().equal("William"))); + invoke(cRoutines(), "pCreateAuthor", create()); + assertEquals("Shakespeare", create().fetchOne( + TAuthor(), + TAuthor_FIRST_NAME().equal("William")).getValue(TAuthor_LAST_NAME())); + + assertEquals(null, create().fetchOne( + TAuthor(), + TAuthor_FIRST_NAME().equal("Hermann"))); + invoke(cRoutines(), "pCreateAuthorByName", create(), "Hermann", "Hesse"); + assertEquals("Hesse", create().fetchOne( + TAuthor(), + TAuthor_FIRST_NAME().equal("Hermann")).getValue(TAuthor_LAST_NAME())); + + assertEquals(null, create().fetchOne( + TAuthor(), + TAuthor_LAST_NAME().equal("Kaestner"))); + invoke(cRoutines(), "pCreateAuthorByName", create(), null, "Kaestner"); + assertEquals("Kaestner", create().fetchOne( + TAuthor(), + TAuthor_LAST_NAME().equal("Kaestner")).getValue(TAuthor_LAST_NAME())); + + // P391, a test for properly binding and treating various IN, OUT, INOUT + // parameters + // --------------------------------------------------------------------- + if (supportsOUTParameters()) { + + // TODO: [#396] MySQL seems to have a bug when passing null to IN/OUT + // parameters. Check back on this, when this is fixed. + if (getDialect() != SQLDialect.MYSQL) { + Object p391a = invoke(cRoutines(), "p391", create(), null, null, DUMMY_OUT_INT, DUMMY_OUT_INT, null, null); + assertEquals(null, invoke(p391a, "getIo1")); + assertEquals(null, invoke(p391a, "getO1")); + assertEquals(null, invoke(p391a, "getIo2")); + assertEquals(null, invoke(p391a, "getO2")); + } + + // TODO: [#459] Sybase messes up IN/OUT parameter orders. + // Check back on this, when this is fixed. + if (getDialect() != SQLDialect.SYBASE) { + Object p391b = invoke(cRoutines(), "p391", create(), null, 2, DUMMY_OUT_INT, DUMMY_OUT_INT, 3, null); + assertEquals(null, invoke(p391b, "getIo1")); + assertEquals("2", "" + invoke(p391b, "getO1")); + assertEquals(null, invoke(p391b, "getIo2")); + assertEquals("3", "" + invoke(p391b, "getO2")); + + Object p391c = invoke(cRoutines(), "p391", create(), 1, 2, DUMMY_OUT_INT, DUMMY_OUT_INT, 3, 4); + assertEquals("1", "" + invoke(p391c, "getIo1")); + assertEquals("2", "" + invoke(p391c, "getO1")); + assertEquals("4", "" + invoke(p391c, "getIo2")); + assertEquals("3", "" + invoke(p391c, "getO2")); + } + } + + // F378, which is a stored function with OUT parameters + // --------------------------------------------------------------------- + switch (getDialect()) { + + // Currently, this is only supported for oracle + case ORACLE: + Object result1a = invoke(cRoutines(), "f378", create(), null, null); + assertEquals(null, invoke(result1a, "getIo")); + assertEquals(null, invoke(result1a, "getO")); + assertEquals(null, invoke(result1a, "getReturnValue")); + + Object result2a = invoke(cRoutines(), "f378", create(), null, 2); + assertEquals(null, invoke(result2a, "getIo")); + assertEquals("2", "" + invoke(result2a, "getO")); + assertEquals(null, invoke(result2a, "getReturnValue")); + + Object result3a = invoke(cRoutines(), "f378", create(), 1, 2); + assertEquals("1", "" + invoke(result3a, "getIo")); + assertEquals("2", "" + invoke(result3a, "getO")); + assertEquals("3", "" + invoke(result3a, "getReturnValue")); + + Object result1b = invoke(cLibrary(), "pkgF378", create(), null, null); + assertEquals(null, invoke(result1b, "getIo")); + assertEquals(null, invoke(result1b, "getO")); + assertEquals(null, invoke(result1b, "getReturnValue")); + + Object result2b = invoke(cLibrary(), "pkgF378", create(), null, 2); + assertEquals(null, invoke(result2b, "getIo")); + assertEquals("2", "" + invoke(result2b, "getO")); + assertEquals(null, invoke(result2b, "getReturnValue")); + + Object result3b = invoke(cLibrary(), "pkgF378", create(), 1, 2); + assertEquals("1", "" + invoke(result3b, "getIo")); + assertEquals("2", "" + invoke(result3b, "getO")); + assertEquals("3", "" + invoke(result3b, "getReturnValue")); + break; + } + } + + @Test + public void testStoredProcedureWithDefaultParameters() { + if (cRoutines() == null) { + log.info("SKIPPING", "procedure tests with default parameters"); + return; + } + + Reflect pdefault; + try { + pdefault = Reflect.on(cRoutines().getPackage().getName() + ".routines.PDefault"); + + if (!pdefault.field("P_IN_NUMBER").call("isDefaulted").get()) { + log.info("SKIPPING", "procedure tests with default parameters"); + return; + } + } + catch (ReflectException e) { + log.info("SKIPPING", "procedure tests with default parameters"); + return; + } + + Reflect executedWithDefaults = pdefault.create(); + executedWithDefaults.call("execute", create()); + assertEquals(0, executedWithDefaults.call("getPOutNumber").get().intValue()); + assertEquals("0", executedWithDefaults.call("getPOutVarchar").get()); + assertEquals(Date.valueOf("1981-07-10"), executedWithDefaults.call("getPOutDate").get()); + + Reflect executedWithoutDefault = pdefault.create(); + executedWithoutDefault.call("setPInNumber", 123); + executedWithoutDefault.call("setPInVarchar", "abc"); + executedWithoutDefault.call("setPInDate", Date.valueOf("2012-01-01")); + executedWithoutDefault.call("execute", create()); + assertEquals(123, executedWithoutDefault.call("getPOutNumber").get().intValue()); + assertEquals("abc", executedWithoutDefault.call("getPOutVarchar").get()); + assertEquals(Date.valueOf("2012-01-01"), executedWithoutDefault.call("getPOutDate").get()); + } + + @Test + public void testStoredFunctions() throws Exception { + if (cRoutines() == null) { + log.info("SKIPPING", "functions test"); + return; + } + + jOOQAbstractTest.reset = false; + + // --------------------------------------------------------------------- + // Standalone calls + // --------------------------------------------------------------------- + assertEquals("0", "" + invoke(cRoutines(), "fAuthorExists", create(), null)); + assertEquals("1", "" + invoke(cRoutines(), "fAuthorExists", create(), "Paulo")); + assertEquals("0", "" + invoke(cRoutines(), "fAuthorExists", create(), "Shakespeare")); + assertEquals("1", "" + invoke(cRoutines(), "fOne", create())); + assertEquals("1", "" + invoke(cRoutines(), "fNumber", create(), 1)); + assertEquals(null, invoke(cRoutines(), "fNumber", create(), null)); + assertEquals("1204", "" + invoke(cRoutines(), "f317", create(), 1, 2, 3, 4)); + assertEquals("1204", "" + invoke(cRoutines(), "f317", create(), 1, 2, null, 4)); + assertEquals("4301", "" + invoke(cRoutines(), "f317", create(), 4, 3, 2, 1)); + assertEquals("4301", "" + invoke(cRoutines(), "f317", create(), 4, 3, null, 1)); + assertEquals("1101", "" + invoke(cRoutines(), "f317", create(), 1, 1, 1, 1)); + assertEquals("1101", "" + invoke(cRoutines(), "f317", create(), 1, 1, null, 1)); + + // --------------------------------------------------------------------- + // Embedded calls + // --------------------------------------------------------------------- + Field f1a = FAuthorExistsField("Paulo").cast(Integer.class); + Field f2a = FAuthorExistsField("Shakespeare").cast(Integer.class); + Field f3a = FOneField().cast(Integer.class); + Field f4a = FNumberField(42).cast(Integer.class); + Field f5a = FNumberField(FNumberField(FOneField())).cast(Integer.class); + Field f6a = F317Field(1, 2, null, 4).cast(Integer.class); + Field f7a = F317Field(4, 3, null, 1).cast(Integer.class); + Field f8a = F317Field(1, 1, null, 1).cast(Integer.class); + Field f9a = F317Field(FNumberField(1), FNumberField(2), FNumberField((Number) null), FNumberField(4)).cast(Integer.class); + + // Repeat fields to check correct fetching from resultset + Field f1b = FAuthorExistsField("Paulo").cast(Integer.class); + Field f2b = FAuthorExistsField("Shakespeare").cast(Integer.class); + Field f3b = FOneField().cast(Integer.class); + Field f4b = FNumberField(42).cast(Integer.class); + Field f5b = FNumberField(FNumberField(FOneField())).cast(Integer.class); + Field f6b = F317Field(1, 2, 3, 4).cast(Integer.class); + Field f7b = F317Field(4, 3, 2, 1).cast(Integer.class); + Field f8b = F317Field(1, 1, 1, 1).cast(Integer.class); + Field f9b = F317Field(FNumberField(1), FNumberField(2), FNumberField(3), FNumberField(4)).cast(Integer.class); + + // Null argument checks + Field f10 = FAuthorExistsField(null).cast(Integer.class); + + SelectQuery q = create().selectQuery(); + q.addSelect( + f1a, f2a, f3a, f4a, f5a, f6a, f7a, f8a, f9a, + f1b, f2b, f3b, f4b, f5b, f6b, f7b, f8b, f9b, f10); + q.execute(); + Result result = q.getResult(); + + assertEquals(1, result.size()); + assertEquals("1", result.get(0).getValueAsString(f1a)); + assertEquals("0", result.get(0).getValueAsString(f2a)); + assertEquals("1", result.get(0).getValueAsString(f3a)); + assertEquals("42", result.get(0).getValueAsString(f4a)); + assertEquals("1", result.get(0).getValueAsString(f5a)); + assertEquals("1204", result.get(0).getValueAsString(f6a)); + assertEquals("4301", result.get(0).getValueAsString(f7a)); + assertEquals("1101", result.get(0).getValueAsString(f8a)); + assertEquals("1204", result.get(0).getValueAsString(f9a)); + + assertEquals("1", result.get(0).getValueAsString(f1b)); + assertEquals("0", result.get(0).getValueAsString(f2b)); + assertEquals("1", result.get(0).getValueAsString(f3b)); + assertEquals("42", result.get(0).getValueAsString(f4b)); + assertEquals("1", result.get(0).getValueAsString(f5b)); + assertEquals("1204", result.get(0).getValueAsString(f6b)); + assertEquals("4301", result.get(0).getValueAsString(f7b)); + assertEquals("1101", result.get(0).getValueAsString(f8b)); + assertEquals("1204", result.get(0).getValueAsString(f9b)); + + assertEquals("0", result.get(0).getValueAsString(f10)); + + // --------------------------------------------------------------------- + // Functions in conditions + // --------------------------------------------------------------------- + assertEquals(Integer.valueOf(1), + create().selectOne().where(f4b.equal(1)).or(f1b.equal(1)).fetchOne(0)); + assertEquals(null, + create().selectOne().where(f4b.equal(1)).and(f1b.equal(1)).fetchOne(0)); + assertEquals(null, + create().selectOne().where(f4b.equal(1)).and(f1b.equal(1)).fetchOne()); + + // --------------------------------------------------------------------- + // Functions in SQL + // --------------------------------------------------------------------- + result = create().select( + FNumberField(1).cast(Integer.class), + FNumberField(TAuthor_ID()).cast(Integer.class), + FNumberField(FNumberField(TAuthor_ID())).cast(Integer.class)) + .from(TAuthor()) + .orderBy(TAuthor_ID()) + .fetch(); + + assertEquals(Integer.valueOf(1), result.getValue(0, 0)); + assertEquals(Integer.valueOf(1), result.getValue(0, 1)); + assertEquals(Integer.valueOf(1), result.getValue(0, 2)); + assertEquals(Integer.valueOf(1), result.getValue(1, 0)); + assertEquals(Integer.valueOf(2), result.getValue(1, 1)); + assertEquals(Integer.valueOf(2), result.getValue(1, 2)); + } + + + @Test + public void testARRAYType() throws Exception { + if (TArrays() == null) { + log.info("SKIPPING", "ARRAY type test"); + return; + } + + jOOQAbstractTest.reset = false; + + if (TArrays_STRING_R() != null) { + Result arrays = create().select( + TArrays_STRING_R(), + TArrays_NUMBER_R(), + TArrays_DATE_R()) + .from(TArrays()) + .orderBy(TArrays_ID()) + .fetch(); + + assertEquals(null, arrays.getValue(0, TArrays_STRING_R())); + assertEquals(null, arrays.getValue(0, TArrays_NUMBER_R())); + assertEquals(null, arrays.getValue(0, TArrays_DATE_R())); + + assertEquals(Arrays.asList(), Arrays.asList(arrays.getValueAsArray(1, TArrays_STRING_R()))); + assertEquals(Arrays.asList(), Arrays.asList(arrays.getValueAsArray(1, TArrays_NUMBER_R()))); + assertEquals(Arrays.asList(), Arrays.asList(arrays.getValueAsArray(1, TArrays_DATE_R()))); + + assertEquals(Arrays.asList("a"), Arrays.asList(arrays.getValueAsArray(2, TArrays_STRING_R()))); + assertEquals(Arrays.asList(1), Arrays.asList(arrays.getValueAsArray(2, TArrays_NUMBER_R()))); + assertEquals("[1981-07-10]", Arrays.asList(arrays.getValueAsArray(2, TArrays_DATE_R())).toString()); + + assertEquals(Arrays.asList("a", "b"), Arrays.asList(arrays.getValueAsArray(3, TArrays_STRING_R()))); + assertEquals(Arrays.asList(1, 2), Arrays.asList(arrays.getValueAsArray(3, TArrays_NUMBER_R()))); + assertEquals("[1981-07-10, 2000-01-01]", Arrays.asList(arrays.getValueAsArray(3, TArrays_DATE_R())).toString()); + + + + InsertQuery insert = create().insertQuery(TArrays()); + insert.addValue(TArrays_ID(), 5); + insert.addValueAsArray(TArrays_NUMBER_R(), 1, 2, 3); + insert.addValueAsArray(TArrays_STRING_R(), "a", "b", "c"); + insert.addValueAsArray(TArrays_DATE_R(), new Date(0), new Date(84600 * 1000), new Date(84600 * 2000)); + insert.execute(); + + Record array = create().select( + TArrays_STRING_R(), + TArrays_NUMBER_R(), + TArrays_DATE_R()) + .from(TArrays()) + .where(TArrays_ID().equal(5)) + .fetchOne(); + + assertEquals(Arrays.asList("a", "b", "c"), Arrays.asList(array.getValueAsArray(TArrays_STRING_R()))); + assertEquals(Arrays.asList(1, 2, 3), Arrays.asList(array.getValueAsArray(TArrays_NUMBER_R()))); + assertEquals("[1970-01-01, 1970-01-02, 1970-01-03]", Arrays.asList(array.getValueAsArray(TArrays_DATE_R())).toString()); + + + + UpdateQuery update = create().updateQuery(TArrays()); + update.addValueAsArray(TArrays_NUMBER_R(), 3, 2, 1); + update.addValueAsArray(TArrays_STRING_R(), "c", "b", "a"); + update.addValueAsArray(TArrays_DATE_R(), new Date(84600 * 2000), new Date(84600 * 1000), new Date(0)); + update.addConditions(TArrays_ID().equal(5)); + update.execute(); + + array = create().select( + TArrays_STRING_R(), + TArrays_NUMBER_R(), + TArrays_DATE_R()) + .from(TArrays()) + .where(TArrays_ID().equal(5)) + .fetchOne(); + + assertEquals(Arrays.asList("c", "b", "a"), Arrays.asList(array.getValueAsArray(TArrays_STRING_R()))); + assertEquals(Arrays.asList(3, 2, 1), Arrays.asList(array.getValueAsArray(TArrays_NUMBER_R()))); + assertEquals("[1970-01-03, 1970-01-02, 1970-01-01]", Arrays.asList(array.getValueAsArray(TArrays_DATE_R())).toString()); + } + + if (TArrays_STRING() != null) { + Result arrays = create().select( + TArrays_STRING(), + TArrays_NUMBER(), + TArrays_DATE(), + TArrays_UDT() == null ? val(0) : TArrays_UDT()) + .from(TArrays()) + .orderBy(TArrays_ID()) + .fetch(); + + // First record: null + // ----------------------------------------------------------------- + assertEquals(null, arrays.getValue(0, TArrays_STRING())); + assertEquals(null, arrays.getValue(0, TArrays_NUMBER())); + assertEquals(null, arrays.getValue(0, TArrays_DATE())); + + if (TArrays_UDT() != null) { + assertEquals(null, arrays.getValue(0, TArrays_UDT())); + } + + + // Second record: empty + // ----------------------------------------------------------------- + // These expressions are a bit verbose. Unfortunately, H2 does not + // support typed arrays, hence the tests are kept general + // http://groups.google.com/group/h2-database/browse_thread/thread/42e38afa682d4fc2 + Object[] s = (Object[]) arrays.getValue(1, 0); + Object[] n = (Object[]) arrays.getValue(1, 1); + Object[] d = (Object[]) arrays.getValue(1, 2); + assertEquals(0, s.length); + assertEquals(0, n.length); + assertEquals(0, d.length); + assertEquals(TArrays_STRING().getType(), s.getClass()); + assertEquals(TArrays_NUMBER().getType(), n.getClass()); + assertEquals(TArrays_DATE().getType(), d.getClass()); + + if (TArrays_UDT() != null) { + UDTRecord[] u = (UDTRecord[]) arrays.getValue(1, 3); + assertEquals(0, u.length); + assertEquals(TArrays_UDT().getType(), u.getClass()); + } + + // Third record: one element + // ----------------------------------------------------------------- + s = (Object[]) arrays.getValue(2, 0); + n = (Object[]) arrays.getValue(2, 1); + d = (Object[]) arrays.getValue(2, 2); + assertEquals(1, s.length); + assertEquals(1, n.length); + assertEquals(1, d.length); + assertEquals(TArrays_STRING().getType(), s.getClass()); + assertEquals(TArrays_NUMBER().getType(), n.getClass()); + assertEquals(TArrays_DATE().getType(), d.getClass()); + assertEquals("a", s[0].toString()); + assertEquals("1", n[0].toString()); + assertEquals("1981-07-10", d[0].toString()); + + if (TArrays_UDT() != null) { + UDTRecord[] u = (UDTRecord[]) arrays.getValue(2, 3); + assertEquals(1, u.length); + assertEquals(TArrays_UDT().getType(), u.getClass()); + assertEquals("Downing Street", u[0].getValue(0)); + assertEquals("10", u[0].getValue(1)); + assertNull(u[0].getValue(2)); + } + + // Fourth record: two elements + // ----------------------------------------------------------------- + s = (Object[]) arrays.getValue(3, 0); + n = (Object[]) arrays.getValue(3, 1); + d = (Object[]) arrays.getValue(3, 2); + assertEquals(2, s.length); + assertEquals(2, n.length); + assertEquals(2, d.length); + assertEquals(TArrays_STRING().getType(), s.getClass()); + assertEquals(TArrays_NUMBER().getType(), n.getClass()); + assertEquals(TArrays_DATE().getType(), d.getClass()); + assertEquals("a", s[0].toString()); + assertEquals("b", s[1].toString()); + assertEquals("1", n[0].toString()); + assertEquals("2", n[1].toString()); + assertEquals("1981-07-10", d[0].toString()); + assertEquals("2000-01-01", d[1].toString()); + + if (TArrays_UDT() != null) { + UDTRecord[] u = (UDTRecord[]) arrays.getValue(3, 3); + assertEquals(2, u.length); + assertEquals(TArrays_UDT().getType(), u.getClass()); + + assertEquals("Downing Street", u[0].getValue(0)); + assertEquals("10", u[0].getValue(1)); + Integer[] floors = (Integer[]) u[0].getValue(2); + assertEquals(0, floors.length); + + assertEquals("Bahnhofstrasse", u[1].getValue(0)); + assertEquals("12", u[1].getValue(1)); + floors = (Integer[]) u[1].getValue(2); + assertEquals(2, floors.length); + assertEquals(1, (int) floors[0]); + assertEquals(2, (int) floors[1]); + } + + + // Insert again + // ----------------------------------------------------------------- + InsertQuery insert = create().insertQuery(TArrays()); + insert.addValue(TArrays_ID(), 5); + insert.addValue(TArrays_NUMBER(), new Integer[] { 1, 2, 3 }); + insert.addValue(TArrays_STRING(), new String[] { "a", "b", "c" }); + insert.addValue(TArrays_DATE(), new Date[] { new Date(0), new Date(84600 * 1000), new Date(84600 * 2000)}); + + insert.execute(); + + Record array = create().select( + TArrays_STRING(), + TArrays_NUMBER(), + TArrays_DATE()) + .from(TArrays()) + .where(TArrays_ID().equal(5)) + .fetchOne(); + + s = (Object[]) array.getValue(0); + n = (Object[]) array.getValue(1); + d = (Object[]) array.getValue(2); + assertEquals(3, s.length); + assertEquals(3, n.length); + assertEquals(3, d.length); + assertEquals(TArrays_STRING().getType(), s.getClass()); + assertEquals(TArrays_NUMBER().getType(), n.getClass()); + assertEquals(TArrays_DATE().getType(), d.getClass()); + assertEquals("a", s[0].toString()); + assertEquals("b", s[1].toString()); + assertEquals("c", s[2].toString()); + assertEquals("1", n[0].toString()); + assertEquals("2", n[1].toString()); + assertEquals("3", n[2].toString()); + assertEquals("1970-01-01", d[0].toString()); + assertEquals("1970-01-02", d[1].toString()); + assertEquals("1970-01-03", d[2].toString()); + + + + UpdateQuery update = create().updateQuery(TArrays()); + update.addValue(TArrays_NUMBER(), new Integer[] { 3, 2, 1}); + update.addValue(TArrays_STRING(), new String[] { "c", "b", "a" }); + update.addValue(TArrays_DATE(), new Date[] { new Date(84600 * 2000), new Date(84600 * 1000), new Date(0) }); + update.addConditions(TArrays_ID().equal(5)); + update.execute(); + + array = create().select( + TArrays_STRING(), + TArrays_NUMBER(), + TArrays_DATE()) + .from(TArrays()) + .where(TArrays_ID().equal(5)) + .fetchOne(); + + s = (Object[]) array.getValue(0); + n = (Object[]) array.getValue(1); + d = (Object[]) array.getValue(2); + assertEquals(3, s.length); + assertEquals(3, n.length); + assertEquals(3, d.length); + assertEquals(TArrays_STRING().getType(), s.getClass()); + assertEquals(TArrays_NUMBER().getType(), n.getClass()); + assertEquals(TArrays_DATE().getType(), d.getClass()); + assertEquals("c", s[0].toString()); + assertEquals("b", s[1].toString()); + assertEquals("a", s[2].toString()); + assertEquals("3", n[0].toString()); + assertEquals("2", n[1].toString()); + assertEquals("1", n[2].toString()); + assertEquals("1970-01-03", d[0].toString()); + assertEquals("1970-01-02", d[1].toString()); + assertEquals("1970-01-01", d[2].toString()); + } + } + + @Test + public void testARRAYProcedure() throws Exception { + if (cRoutines() == null) { + log.info("SKIPPING", "ARRAY procedure test (no procedure support)"); + return; + } + + if (TArrays() == null) { + log.info("SKIPPING", "ARRAY procedure test (no array support)"); + return; + } + + jOOQAbstractTest.reset = false; + + if (TArrays_STRING_R() != null) { + ArrayRecord i; + ArrayRecord l; + ArrayRecord s; + + assertEquals(null, invoke(cRoutines(), "pArrays1", create(), null)); + assertEquals(null, invoke(cRoutines(), "pArrays2", create(), null)); + assertEquals(null, invoke(cRoutines(), "pArrays3", create(), null)); + assertEquals(null, invoke(cRoutines(), "fArrays1", create(), null)); + assertEquals(null, invoke(cRoutines(), "fArrays2", create(), null)); + assertEquals(null, invoke(cRoutines(), "fArrays3", create(), null)); + + i = newNUMBER_R(); + l = newNUMBER_LONG_R(); + s = newSTRING_R(); + + assertEquals( + Arrays.asList(new Integer[0]), + Arrays.asList(((ArrayRecord) invoke(cRoutines(), "pArrays1", create(), i)).get())); + assertEquals( + Arrays.asList(new Long[0]), + Arrays.asList(((ArrayRecord) invoke(cRoutines(), "pArrays2", create(), l)).get())); + assertEquals( + Arrays.asList(new String[0]), + Arrays.asList(((ArrayRecord) invoke(cRoutines(), "pArrays3", create(), s)).get())); + assertEquals( + Arrays.asList(new Integer[0]), + Arrays.asList(((ArrayRecord) invoke(cRoutines(), "fArrays1", create(), i)).get())); + assertEquals( + Arrays.asList(new Long[0]), + Arrays.asList(((ArrayRecord) invoke(cRoutines(), "fArrays2", create(), l)).get())); + assertEquals( + Arrays.asList(new String[0]), + Arrays.asList(((ArrayRecord) invoke(cRoutines(), "fArrays3", create(), s)).get())); + + i = newNUMBER_R(); + l = newNUMBER_LONG_R(); + s = newSTRING_R(); + + i.set((Integer) null); + l.set((Long) null); + s.set((String) null); + + assertEquals( + Arrays.asList((Integer) null), + Arrays.asList(((ArrayRecord) invoke(cRoutines(), "pArrays1", create(), i)).get())); + assertEquals( + Arrays.asList((Long) null), + Arrays.asList(((ArrayRecord) invoke(cRoutines(), "pArrays2", create(), l)).get())); + assertEquals( + Arrays.asList((String) null), + Arrays.asList(((ArrayRecord) invoke(cRoutines(), "pArrays3", create(), s)).get())); + assertEquals( + Arrays.asList((Integer) null), + Arrays.asList(((ArrayRecord) invoke(cRoutines(), "fArrays1", create(), i)).get())); + assertEquals( + Arrays.asList((Long) null), + Arrays.asList(((ArrayRecord) invoke(cRoutines(), "fArrays2", create(), l)).get())); + assertEquals( + Arrays.asList((String) null), + Arrays.asList(((ArrayRecord) invoke(cRoutines(), "fArrays3", create(), s)).get())); + + i = newNUMBER_R(); + l = newNUMBER_LONG_R(); + s = newSTRING_R(); + + i.set(1, 2); + l.set(1L, 2L); + s.set("1", "2"); + + assertEquals( + Arrays.asList(1, 2), + Arrays.asList(((ArrayRecord) invoke(cRoutines(), "pArrays1", create(), i)).get())); + assertEquals( + Arrays.asList(1L, 2L), + Arrays.asList(((ArrayRecord) invoke(cRoutines(), "pArrays2", create(), l)).get())); + assertEquals( + Arrays.asList("1", "2"), + Arrays.asList(((ArrayRecord) invoke(cRoutines(), "pArrays3", create(), s)).get())); + assertEquals( + Arrays.asList(1, 2), + Arrays.asList(((ArrayRecord) invoke(cRoutines(), "fArrays1", create(), i)).get())); + assertEquals( + Arrays.asList(1L, 2L), + Arrays.asList(((ArrayRecord) invoke(cRoutines(), "fArrays2", create(), l)).get())); + assertEquals( + Arrays.asList("1", "2"), + Arrays.asList(((ArrayRecord) invoke(cRoutines(), "fArrays3", create(), s)).get())); + } + + if (TArrays_STRING() != null) { + if (supportsOUTParameters()) { + assertEquals(null, invoke(cRoutines(), "pArrays1", create(), null)); + assertEquals(null, invoke(cRoutines(), "pArrays2", create(), null)); + assertEquals(null, invoke(cRoutines(), "pArrays3", create(), null)); + } + + assertEquals(null, invoke(cRoutines(), "fArrays1", create(), null)); + assertEquals(null, invoke(cRoutines(), "fArrays2", create(), null)); + assertEquals(null, invoke(cRoutines(), "fArrays3", create(), null)); + + if (supportsOUTParameters()) { + assertEquals( + Arrays.asList(new Integer[0]), + Arrays.asList((Integer[]) invoke(cRoutines(), "pArrays1", create(), new Integer[0]))); + assertEquals( + Arrays.asList(new Long[0]), + Arrays.asList((Long[]) invoke(cRoutines(), "pArrays2", create(), new Long[0]))); + assertEquals( + Arrays.asList(new String[0]), + Arrays.asList((String[]) invoke(cRoutines(), "pArrays3", create(), new String[0]))); + } + + assertEquals( + Arrays.asList(new Integer[0]), + Arrays.asList((Object[]) invoke(cRoutines(), "fArrays1", create(), new Integer[0]))); + assertEquals( + Arrays.asList(new Long[0]), + Arrays.asList((Object[]) invoke(cRoutines(), "fArrays2", create(), new Long[0]))); + assertEquals( + Arrays.asList(new String[0]), + Arrays.asList((Object[]) invoke(cRoutines(), "fArrays3", create(), new String[0]))); + + if (supportsOUTParameters()) { + assertEquals( + Arrays.asList((Integer) null), + Arrays.asList((Integer[]) invoke(cRoutines(), "pArrays1", create(), new Integer[] { null }))); + assertEquals( + Arrays.asList((Long) null), + Arrays.asList((Long[]) invoke(cRoutines(), "pArrays2", create(), new Long[] { null }))); + assertEquals( + Arrays.asList((String) null), + Arrays.asList((String[]) invoke(cRoutines(), "pArrays3", create(), new String[] { null }))); + } + + assertEquals( + Arrays.asList((Integer) null), + Arrays.asList((Object[]) invoke(cRoutines(), "fArrays1", create(), new Integer[] { null }))); + assertEquals( + Arrays.asList((Long) null), + Arrays.asList((Object[]) invoke(cRoutines(), "fArrays2", create(), new Long[] { null }))); + assertEquals( + Arrays.asList((String) null), + Arrays.asList((Object[]) invoke(cRoutines(), "fArrays3", create(), new String[] { null }))); + + if (supportsOUTParameters()) { + assertEquals( + Arrays.asList(1, 2), + Arrays.asList((Integer[]) invoke(cRoutines(), "pArrays1", create(), new Integer[] {1, 2}))); + assertEquals( + Arrays.asList(1L, 2L), + Arrays.asList((Long[]) invoke(cRoutines(), "pArrays2", create(), new Long[] {1L, 2L}))); + assertEquals( + Arrays.asList("1", "2"), + Arrays.asList((String[]) invoke(cRoutines(), "pArrays3", create(), new String[] {"1", "2"}))); + } + + assertEquals( + Arrays.asList(1, 2), + Arrays.asList((Object[]) invoke(cRoutines(), "fArrays1", create(), new Integer[] {1, 2}))); + assertEquals( + Arrays.asList(1L, 2L), + Arrays.asList((Object[]) invoke(cRoutines(), "fArrays2", create(), new Long[] {1L, 2L}))); + assertEquals( + Arrays.asList("1", "2"), + Arrays.asList((Object[]) invoke(cRoutines(), "fArrays3", create(), new String[] {"1", "2"}))); + } + } + + private ArrayRecord newNUMBER_R() throws Exception { + ArrayRecord result = TArrays_NUMBER_R().getType().getConstructor(Configuration.class).newInstance(create()); + return result; + } + + private ArrayRecord newNUMBER_LONG_R() throws Exception { + ArrayRecord result = TArrays_NUMBER_LONG_R().getType().getConstructor(Configuration.class).newInstance(create()); + return result; + } + + private ArrayRecord newSTRING_R() throws Exception { + ArrayRecord result = TArrays_STRING_R().getType().getConstructor(Configuration.class).newInstance(create()); + return result; + } + + @Test + public void testUDTs() throws Exception { + if (TAuthor_ADDRESS() == null) { + log.info("SKIPPING", "UDT test"); + return; + } + + jOOQAbstractTest.reset = false; + + Result authors = create().selectFrom(TAuthor()).fetch(); + UDTRecord a1 = authors.get(0).getValue(TAuthor_ADDRESS()); + UDTRecord a2 = authors.get(1).getValue(TAuthor_ADDRESS()); + + Object street1 = a1.getClass().getMethod("getStreet").invoke(a1); + assertEquals("77", street1.getClass().getMethod("getNo").invoke(street1)); + assertEquals("Parliament Hill", street1.getClass().getMethod("getStreet").invoke(street1)); + assertEquals("NW31A9", a1.getClass().getMethod("getZip").invoke(a1)); + assertEquals("Hampstead", a1.getClass().getMethod("getCity").invoke(a1)); + assertEquals("England", "" + a1.getClass().getMethod("getCountry").invoke(a1)); + assertEquals(null, a1.getClass().getMethod("getCode").invoke(a1)); + + if (TArrays_NUMBER_R() != null) { + assertEquals(Arrays.asList(1, 2, 3), invoke(invoke(street1, "getFloors"), "getList")); + } + if (TArrays_NUMBER() != null) { + assertEquals(Arrays.asList(1, 2, 3), Arrays.asList((Object[]) invoke(street1, "getFloors"))); + } + + Object street2 = a2.getClass().getMethod("getStreet").invoke(a2); + assertEquals("43.003", street1.getClass().getMethod("getNo").invoke(street2)); + assertEquals("Caixa Postal", street1.getClass().getMethod("getStreet").invoke(street2)); + assertEquals(null, a2.getClass().getMethod("getZip").invoke(a2)); + assertEquals("Rio de Janeiro", a2.getClass().getMethod("getCity").invoke(a2)); + assertEquals("Brazil", "" + a1.getClass().getMethod("getCountry").invoke(a2)); + assertEquals(2, a1.getClass().getMethod("getCode").invoke(a2)); + + if (TArrays_NUMBER_R() != null) { + assertEquals(null, invoke(street2, "getFloors")); + } + if (TArrays_NUMBER() != null) { + assertEquals(null, invoke(street2, "getFloors")); + } + } + + @Test + public void testUDTProcedure() throws Exception { + if (cUAddressType() == null) { + log.info("SKIPPING", "UDT procedure test (no UDT support)"); + return; + } + + if (cRoutines() == null) { + log.info("SKIPPING", "UDT procedure test (no procedure support)"); + return; + } + + if (getDialect() == SQLDialect.POSTGRES) { + log.info("SKIPPING", "UDT procedure test (Postgres JDBC driver flaw)"); + return; + } + + jOOQAbstractTest.reset = false; + + UDTRecord address = cUAddressType().newInstance(); + UDTRecord street = cUStreetType().newInstance(); + invoke(street, "setNo", "35"); + invoke(address, "setStreet", street); + + // First procedure + Object result = invoke(cRoutines(), "pEnhanceAddress1", create(), address); + assertEquals("35", result); + + // Second procedure + address = invoke(cRoutines(), "pEnhanceAddress2", create()); + street = invoke(address, "getStreet"); + assertEquals("Parliament Hill", invoke(street, "getStreet")); + assertEquals("77", invoke(street, "getNo")); + + if (TArrays_NUMBER_R() != null) { + assertEquals(Arrays.asList(1, 2, 3), invoke(invoke(street, "getFloors"), "getList")); + } + if (TArrays_NUMBER() != null) { + assertEquals(Arrays.asList(1, 2, 3), Arrays.asList((Object[]) invoke(street, "getFloors"))); + } + + // Third procedure + address = (UDTRecord) invoke(cRoutines(), "pEnhanceAddress3", create(), address); + street = (UDTRecord) invoke(address, "getStreet"); + assertEquals("Zwinglistrasse", invoke(street, "getStreet")); + assertEquals("17", invoke(street, "getNo")); + } + + @Test + public void testArrayTables() throws Exception { + if (TArrays_NUMBER_R() != null) { + Result result; + + // [#1184] Test data type + assertTrue(TArrays_NUMBER_R().getDataType().isArray()); + assertFalse(TBook_ID().getDataType().isArray()); + + // An empty array + // -------------- + ArrayRecord array = newNUMBER_R(); + result = create().select().from(table(array)).fetch(); + + assertEquals(0, result.size()); + assertEquals(1, result.getFields().size()); + // [#523] TODO use ArrayRecord meta data instead +// assertEquals(array.getDataType(), result.getField(0).getDataType()); + + // An array containing null + // ------------------------ + array.set((Integer) null); + result = create().select().from(table(array)).fetch(); + + assertEquals(1, result.size()); + assertEquals(1, result.getFields().size()); +// assertEquals(array.getDataType(), result.getField(0).getDataType()); + assertEquals(null, result.getValue(0, 0)); + + // An array containing two values + // ------------------------------ + array.set((Integer) null, 1); + result = create().select().from(table(array)).fetch(); + + assertEquals(2, result.size()); + assertEquals(1, result.getFields().size()); +// assertEquals(array.getDataType(), result.getField(0).getDataType()); + assertEquals(null, result.getValue(0, 0)); + assertEquals("1", "" + result.getValue(1, 0)); + + // An array containing three values + // -------------------------------- + array.set((Integer) null, 1, 2); + result = create().select().from(table(array)).fetch(); + + assertEquals(3, result.size()); + assertEquals(1, result.getFields().size()); +// assertEquals(array.getDataType(), result.getField(0).getDataType()); + assertEquals(null, result.getValue(0, 0)); + assertEquals("1", "" + result.getValue(1, 0)); + assertEquals("2", "" + result.getValue(2, 0)); + + // Joining an unnested array table + // ------------------------------- + array.set(2, 3); + Table table = table(array); + result = create() + .select(TBook_ID(), TBook_TITLE()) + .from(TBook()) + .join(table) + .on(table.getField(0).cast(Integer.class).equal(TBook_ID())) + .orderBy(TBook_ID()) + .fetch(); + + assertEquals(2, result.size()); + assertEquals(Integer.valueOf(2), result.getValue(0, TBook_ID())); + assertEquals(Integer.valueOf(3), result.getValue(1, TBook_ID())); + assertEquals("Animal Farm", result.getValue(0, TBook_TITLE())); + assertEquals("O Alquimista", result.getValue(1, TBook_TITLE())); + + // Joining an aliased unnested array table + // --------------------------------------- + result = create() + .select(TBook_ID(), TBook_TITLE()) + .from(TBook()) + .join(table.as("t")) + .on(table.as("t").getField(0).cast(Integer.class).equal(TBook_ID())) + .orderBy(TBook_ID()) + .fetch(); + + assertEquals(2, result.size()); + assertEquals(Integer.valueOf(2), result.getValue(0, TBook_ID())); + assertEquals(Integer.valueOf(3), result.getValue(1, TBook_ID())); + assertEquals("Animal Farm", result.getValue(0, TBook_TITLE())); + assertEquals("O Alquimista", result.getValue(1, TBook_TITLE())); + + // Functions returning arrays + // -------------------------- + result = create().select().from(table(FArrays1Field_R(null))).fetch(); + assertEquals(0, result.size()); + assertEquals(1, result.getFields().size()); + + array = newNUMBER_R(); + result = create().select().from(table(FArrays1Field_R(val(array)))).fetch(); + assertEquals(0, result.size()); + assertEquals(1, result.getFields().size()); + + array.set(null, 1); + result = create().select().from(table(FArrays1Field_R(val(array)))).fetch(); + assertEquals(2, result.size()); + assertEquals(1, result.getFields().size()); + assertEquals(null, result.getValue(0, 0)); + assertEquals("1", "" + result.getValue(1, 0)); + + array.set(null, 1, null, 2); + result = create().select().from(table(FArrays1Field_R(val(array)))).fetch(); + assertEquals(4, result.size()); + assertEquals(1, result.getFields().size()); + assertEquals(null, result.getValue(0, 0)); + assertEquals("1", "" + result.getValue(1, 0)); + assertEquals(null, result.getValue(2, 0)); + assertEquals("2", "" + result.getValue(3, 0)); + } + else if (TArrays_NUMBER() != null) { + Result result; + Table table; + Integer[] array; + + // [#1184] Test data type + assertTrue(TArrays_NUMBER().getDataType().isArray()); + assertFalse(TBook_ID().getDataType().isArray()); + + // Cross join the array table with the unnested string array value + // --------------------------------------------------------------- + + switch (getDialect()) { + case POSTGRES: + case H2: + case HSQLDB: + // [#1085] TODO: Is this kind of thing supported in any database?? + log.info("SKIPPING", "Cross join of table with unnested array is not supported"); + break; + + default: + table = table(TArrays_STRING()).as("t"); + result = create() + .select(TArrays_ID(), table.getField(0)) + .from(TArrays(), table) + .orderBy(TArrays_ID()) + .fetch(); + + assertEquals(3, result.size()); + assertEquals(Integer.valueOf(3), result.getValue(0, TArrays_ID())); + assertEquals(Integer.valueOf(4), result.getValue(1, TArrays_ID())); + assertEquals(Integer.valueOf(4), result.getValue(2, TArrays_ID())); + + assertEquals("a", result.getValue(0, 1)); + assertEquals("a", result.getValue(1, 1)); + assertEquals("b", result.getValue(2, 1)); + } + + + // Functions returning arrays + // -------------------------- + result = create().select().from(table(FArrays1Field(null))).fetch(); + assertEquals(0, result.size()); + assertEquals(1, result.getFields().size()); + + array = new Integer[0]; + result = create().select().from(table(FArrays1Field(val(array)))).fetch(); + assertEquals(0, result.size()); + assertEquals(1, result.getFields().size()); + + array = new Integer[] { null, 1 }; + result = create().select().from(table(FArrays1Field(val(array)))).fetch(); + assertEquals(2, result.size()); + assertEquals(1, result.getFields().size()); + assertEquals(null, result.getValue(0, 0)); + assertEquals("1", "" + result.getValue(1, 0)); + + array = new Integer[] { null, 1, null, 2 }; + result = create().select().from(table(FArrays1Field(val(array)))).fetch(); + assertEquals(4, result.size()); + assertEquals(1, result.getFields().size()); + assertEquals(null, result.getValue(0, 0)); + assertEquals("1", "" + result.getValue(1, 0)); + assertEquals(null, result.getValue(2, 0)); + assertEquals("2", "" + result.getValue(3, 0)); + } + else { + log.info("SKIPPING", "ARRAY TABLE tests"); + } + } + + @Test + public void testArrayTableSimulation() throws Exception { + Result result; + + // An empty array + // -------------- + Integer[] array = new Integer[0]; + result = create().select().from(table(new Integer[0])).fetch(); + + assertEquals(0, result.size()); + assertEquals(1, result.getFields().size()); + + // An array containing null + // ------------------------ + array = new Integer[] { null }; + result = create().select().from(table(array)).fetch(); + + assertEquals(1, result.size()); + assertEquals(1, result.getFields().size()); + assertEquals(null, result.getValue(0, 0)); + + // An array containing two values (some DB's can't guarantee ordering) + // ------------------------------------------------------------------- + array = new Integer[] { null, 1 }; + result = create().select().from(table(array)).fetch(); + + assertEquals(2, result.size()); + assertEquals(1, result.getFields().size()); + assertTrue(asList(array).containsAll(result.getValues(0))); + + // An array containing three values (some DB's can't guarantee ordering) + // --------------------------------------------------------------------- + array = new Integer[] { null, 1, 2 }; + result = create().select().from(table(array)).fetch(); + + assertEquals(3, result.size()); + assertEquals(1, result.getFields().size()); + assertTrue(asList(array).containsAll(result.getValues(0))); + + // Joining an unnested array table + // ------------------------------- + array = new Integer[] { 2, 3 }; + Table table = table(array); + result = create() + .select(TBook_ID(), TBook_TITLE()) + .from(TBook()) + .join(table) + .on(table.getField(0).cast(Integer.class).equal(TBook_ID())) + .orderBy(TBook_ID().asc()) + .fetch(); + + assertEquals(2, result.size()); + assertEquals(Integer.valueOf(2), result.getValue(0, TBook_ID())); + assertEquals(Integer.valueOf(3), result.getValue(1, TBook_ID())); + assertEquals("Animal Farm", result.getValue(0, TBook_TITLE())); + assertEquals("O Alquimista", result.getValue(1, TBook_TITLE())); + + // Joining an aliased unnested array table + // --------------------------------------- + result = create() + .select(TBook_ID(), TBook_TITLE()) + .from(TBook()) + .join(table.as("t")) + .on(table.as("t").getField(0).cast(Integer.class).equal(TBook_ID())) + .orderBy(TBook_ID().asc()) + .fetch(); + + assertEquals(2, result.size()); + assertEquals(Integer.valueOf(2), result.getValue(0, TBook_ID())); + assertEquals(Integer.valueOf(3), result.getValue(1, TBook_ID())); + assertEquals("Animal Farm", result.getValue(0, TBook_TITLE())); + assertEquals("O Alquimista", result.getValue(1, TBook_TITLE())); + } + + @Test + public void testStoredProceduresWithCursorParameters() throws Exception { + switch (getDialect()) { + case H2: + case HSQLDB: + case ORACLE: + case POSTGRES: + break; + + default: + log.info("SKIPPING", "Stored procedures tests with CURSOR type parameters"); + return; + } + + // --------------------------------------------------------------------- + // The one cursor function + // --------------------------------------------------------------------- + { + Object integerArray = null; + + // Get an empty cursor + // ------------------- + Result bFromCursor = invoke(cRoutines(), "fGetOneCursor", create(), integerArray); + + assertNotNull(bFromCursor); + assertTrue(bFromCursor.isEmpty()); + assertEquals(0, bFromCursor.size()); + + // Get a filled cursor + // ------------------- + if (TArrays_STRING_R() != null) { + ArrayRecord i = newNUMBER_R(); + i.set(1, 2, 4, 6); + integerArray = i; + } + else if (TArrays_STRING() != null) { + integerArray = new Integer[] { 1, 2, 4, 6 }; + } + + bFromCursor = invoke(cRoutines(), "fGetOneCursor", create(), integerArray); + + Result bFromTable = create() + .selectFrom(TBook()) + .where(TBook_ID().in(1, 2, 4)) + .orderBy(TBook_ID()).fetch(); + + assertNotNull(bFromCursor); + assertFalse(bFromCursor.isEmpty()); + assertEquals(3, bFromCursor.size()); + + compareBookResults(bFromCursor, bFromTable); + } + + // --------------------------------------------------------------------- + // The one cursor function used in SQL + // --------------------------------------------------------------------- + { + + // Get an empty cursor + // ------------------- + Field> field = FGetOneCursorField(null); + Result bFromCursor; + + switch (getDialect()) { + case HSQLDB: + bFromCursor = create().select().from(table(field)).fetch(); + break; + + default: + bFromCursor = create().select(field).fetchOne(field); + break; + } + + assertNotNull(bFromCursor); + assertTrue(bFromCursor.isEmpty()); + assertEquals(0, bFromCursor.size()); + + // Get a filled cursor + // ------------------- + field = FGetOneCursorField(new Integer[] { 1, 2, 4, 6 }); + + switch (getDialect()) { + case HSQLDB: + bFromCursor = create().select().from(table(field)).fetch(); + break; + + default: + bFromCursor = create().select(field).fetchOne(field); + break; + } + + Result bFromTable = create() + .selectFrom(TBook()) + .where(TBook_ID().in(1, 2, 4)) + .orderBy(TBook_ID()).fetch(); + + assertNotNull(bFromCursor); + assertFalse(bFromCursor.isEmpty()); + assertEquals(3, bFromCursor.size()); + + compareBookResults(bFromCursor, bFromTable); + } + + if (getDialect() == SQLDialect.HSQLDB) { + log.info("SKIPPING", "Cursor OUT parameter tests"); + return; + } + + // --------------------------------------------------------------------- + // The one cursor procedure + // --------------------------------------------------------------------- + if (supportsOUTParameters()) { + Object integerArray = null; + + // Get an empty cursor + // ------------------- + Object result = invoke(cRoutines(), "pGetOneCursor", create(), integerArray); + + assertNotNull(result); + assertEquals("0", "" + invoke(result, "getTotal")); + + Result bFromCursor = invoke(result, "getBooks"); + assertTrue(bFromCursor.isEmpty()); + assertEquals(0, bFromCursor.size()); + + // Get a filled cursor + // ------------------- + if (TArrays_STRING_R() != null) { + ArrayRecord i = newNUMBER_R(); + i.set(1, 2, 4, 6); + integerArray = i; + } + else if (TArrays_STRING() != null) { + integerArray = new Integer[] { 1, 2, 4, 6 }; + } + + result = invoke(cRoutines(), "pGetOneCursor", create(), integerArray); + + assertEquals("3", "" + invoke(result, "getTotal")); + bFromCursor = invoke(result, "getBooks"); + + Result bFromTable = create() + .selectFrom(TBook()) + .where(TBook_ID().in(1, 2, 4)) + .orderBy(TBook_ID()).fetch(); + + assertNotNull(bFromCursor); + assertFalse(bFromCursor.isEmpty()); + assertEquals(3, bFromCursor.size()); + + compareBookResults(bFromCursor, bFromTable); + } + else { + log.info("SKIPPING", "One cursor OUT parameter test"); + } + + // --------------------------------------------------------------------- + // The two cursor procedure + // --------------------------------------------------------------------- + if (getDialect() == SQLDialect.POSTGRES) { + + // TODO [#707] This fails for Postgres, as UDT's are not correctly + // deserialised + log.info("SKIPPING", "UDT/Enum types returned in refcursor (see [#707])"); + } + else if (supportsOUTParameters()) { + Object result = invoke(cRoutines(), "pGetTwoCursors", create()); + assertNotNull(result); + + Result aFromTable = create().selectFrom(TAuthor()).orderBy(TAuthor_ID()).fetch(); + Result bFromTable = create().selectFrom(TBook()).orderBy(TBook_ID()).fetch(); + + Result aFromCursor = invoke(result, "getAuthors"); + Result bFromCursor = invoke(result, "getBooks"); + assertNotNull(aFromCursor); + assertNotNull(bFromCursor); + assertEquals(2, aFromCursor.size()); + assertEquals(4, bFromCursor.size()); + assertFalse(aFromCursor.isEmpty()); + assertFalse(bFromCursor.isEmpty()); + + compareAuthorResults(aFromCursor, aFromTable); + compareBookResults(bFromCursor, bFromTable); + } + else { + log.info("SKIPPING", "Two cursor OUT parameter test"); + } + } + + private void compareAuthorResults(Result aFromCursor, Result aFromTable) { + assertEquals(aFromTable.getValues(TAuthor_ID()), aFromCursor.getValues(TAuthor_ID())); + assertEquals(aFromTable.getValues(TAuthor_ID().getName()), aFromCursor.getValues(TAuthor_ID().getName())); + assertEquals(aFromTable.getValues(0), aFromCursor.getValues(0)); + + assertEquals(aFromTable.getValues(TAuthor_FIRST_NAME()), aFromCursor.getValues(TAuthor_FIRST_NAME())); + assertEquals(aFromTable.getValues(TAuthor_LAST_NAME()), aFromCursor.getValues(TAuthor_LAST_NAME())); + assertEquals(aFromTable.getValues(TAuthor_YEAR_OF_BIRTH()), aFromCursor.getValues(TAuthor_YEAR_OF_BIRTH())); + assertEquals(aFromTable.getValues(TAuthor_DATE_OF_BIRTH()), aFromCursor.getValues(TAuthor_DATE_OF_BIRTH())); + assertEquals(aFromTable.getValues(TAuthor_ADDRESS()), aFromCursor.getValues(TAuthor_ADDRESS())); + } + + private void compareBookResults(Result bFromCursor, Result bFromTable) { + assertEquals(bFromTable.getValues(TBook_ID()), bFromCursor.getValues(TBook_ID())); + assertEquals(bFromTable.getValues(TBook_ID().getName()), bFromCursor.getValues(TBook_ID().getName())); + assertEquals(bFromTable.getValues(0), bFromCursor.getValues(0)); + + assertEquals(bFromTable.getValues(TBook_AUTHOR_ID()), bFromCursor.getValues(TBook_AUTHOR_ID())); + assertEquals(bFromTable.getValues(TBook_CONTENT_PDF()), bFromCursor.getValues(TBook_CONTENT_PDF())); + assertEquals(bFromTable.getValues(TBook_CONTENT_TEXT()), bFromCursor.getValues(TBook_CONTENT_TEXT())); + assertEquals(bFromTable.getValues(TBook_TITLE()), bFromCursor.getValues(TBook_TITLE())); + } +} diff --git a/jOOQ-test/src/org/jooq/test/_/testcases/SchemaAndMappingTests.java b/jOOQ-test/src/org/jooq/test/_/testcases/SchemaAndMappingTests.java new file mode 100644 index 00000000000..afe073f6b74 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/_/testcases/SchemaAndMappingTests.java @@ -0,0 +1,382 @@ +/** + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com + * All rights reserved. + * + * This software is licensed to you under the Apache License, Version 2.0 + * (the "License"); You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * 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 "jOOQ" 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 COPYRIGHT OWNER 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. + */ +package org.jooq.test._.testcases; + +import static java.util.Arrays.asList; +import static java.util.Collections.nCopies; +import static junit.framework.Assert.assertEquals; +import static junit.framework.Assert.assertFalse; +import static junit.framework.Assert.assertTrue; +import static org.jooq.impl.Factory.count; +import static org.jooq.impl.Factory.sum; + +import java.math.BigDecimal; +import java.sql.Date; +import java.util.Arrays; + +import org.jooq.Field; +import org.jooq.Record; +import org.jooq.Result; +import org.jooq.Select; +import org.jooq.TableRecord; +import org.jooq.UpdatableRecord; +import org.jooq.conf.MappedSchema; +import org.jooq.conf.MappedTable; +import org.jooq.conf.RenderMapping; +import org.jooq.conf.Settings; +import org.jooq.impl.Factory; +import org.jooq.test.BaseTest; +import org.jooq.test.jOOQAbstractTest; +import org.jooq.test.jOOQMySQLTestSchemaRewrite; + +import org.junit.Test; + +public class SchemaAndMappingTests< + A extends UpdatableRecord, + B extends UpdatableRecord, + S extends UpdatableRecord, + B2S extends UpdatableRecord, + BS extends UpdatableRecord, + L extends TableRecord, + X extends TableRecord, + DATE extends UpdatableRecord, + BOOL extends UpdatableRecord, + D extends UpdatableRecord, + T extends UpdatableRecord, + U extends TableRecord, + I extends TableRecord, + IPK extends UpdatableRecord, + T658 extends TableRecord, + T725 extends UpdatableRecord, + T639 extends UpdatableRecord, + T785 extends TableRecord> +extends BaseTest { + + public SchemaAndMappingTests(jOOQAbstractTest delegate) { + super(delegate); + } + + @Test + public void testUse() throws Exception { + switch (getDialect()) { + case ASE: + case SQLITE: + case SQLSERVER: + log.info("SKIPPING", "USE test"); + return; + } + + Factory factory = create(); + factory.use(schema().getName()); + + Result result = + factory.select(TBook_AUTHOR_ID(), count()) + .from(TBook()) + .join(TAuthor()) + .on(TBook_AUTHOR_ID().equal(TAuthor_ID())) + .where(TAuthor_YEAR_OF_BIRTH().greaterOrEqual(TAuthor_ID())) + .groupBy(TBook_AUTHOR_ID()) + .having(count().greaterOrEqual(1)) + .orderBy(TBook_AUTHOR_ID().desc()) + .fetch(); + + assertEquals(Arrays.asList(2, 1), result.getValues(TBook_AUTHOR_ID())); + assertEquals(Arrays.asList(2, 2), result.getValues(count())); + + String sql = factory.select(TBook_AUTHOR_ID()).from(TAuthor()).getSQL(); + assertFalse(sql.toLowerCase().contains(TAuthor().getSchema().getName().toLowerCase())); + } + + @Test + public void testTableMapping() throws Exception { + Settings settings = new Settings() + .withRenderMapping(new RenderMapping() + .withSchemata(new MappedSchema() + .withInput(TAuthor().getSchema() == null ? "" : TAuthor().getSchema().getName()) + .withTables( + new MappedTable().withInput(TAuthor().getName()).withOutput(VAuthor().getName()), + new MappedTable().withInput(TBook().getName()).withOutput(VBook().getName())))); + + Select q = + create(settings).select(TBook_TITLE()) + .from(TAuthor()) + .join(TBook()) + .on(TAuthor_ID().equal(TBook_AUTHOR_ID())) + .orderBy(TBook_ID().asc()); + + // Assure T_* is replaced by V_* + assertTrue(create(settings).render(q).contains(VAuthor().getName())); + assertTrue(create(settings).render(q).contains(VBook().getName())); + assertFalse(create(settings).render(q).contains(TAuthor().getName())); + assertFalse(create(settings).render(q).contains(TBook().getName())); + + // Assure that results are correct + Result result = q.fetch(); + assertEquals("1984", result.getValue(0, TBook_TITLE())); + assertEquals("Animal Farm", result.getValue(1, TBook_TITLE())); + assertEquals("O Alquimista", result.getValue(2, TBook_TITLE())); + assertEquals("Brida", result.getValue(3, TBook_TITLE())); + } + + @Test + public void testSchemaMapping() throws Exception { + switch (getDialect()) { + case SQLITE: + log.info("SKIPPING", "SchemaMapping tests"); + return; + } + + // Map to self. This will work even for single-schema RDBMS + // --------------------------------------------------------------------- + Settings settings = new Settings() + .withRenderMapping(new RenderMapping() + .withSchemata(new MappedSchema() + .withInput(TAuthor().getSchema().getName()) + .withOutput(TAuthor().getSchema().getName()) + .withTables( + new MappedTable().withInput(TAuthor().getName()).withOutput(TAuthor().getName()), + new MappedTable().withInput(TBook().getName()).withOutput(TBook().getName())))); + + Select query = + create(settings).select(TBook_TITLE()) + .from(TAuthor()) + .join(TBook()) + .on(TAuthor_ID().equal(TBook_AUTHOR_ID())) + .orderBy(TBook_ID().asc()); + + Result result = query.fetch(); + + assertEquals("1984", result.getValue(0, TBook_TITLE())); + assertEquals("Animal Farm", result.getValue(1, TBook_TITLE())); + assertEquals("O Alquimista", result.getValue(2, TBook_TITLE())); + assertEquals("Brida", result.getValue(3, TBook_TITLE())); + + // Check for consistency when executing SQL manually + String sql = query.getSQL(); + log.info("Executing", sql); + assertEquals(result, create().fetch(sql, query.getBindValues().toArray())); + + // Schema mapping is supported in many RDBMS. But maintaining several + // databases is non-trivial in some of them. + switch (getDialect()) { + case ASE: + case CUBRID: + case DB2: + case DERBY: + case H2: + case HSQLDB: + case INGRES: + case ORACLE: + case POSTGRES: + case SQLITE: + case SQLSERVER: + case SYBASE: + log.info("SKIPPING", "Schema mapping test"); + return; + + // Currently, only MySQL is tested with SchemaMapping + case MYSQL: + + // But not when the schema is already re-written + if (delegate.getClass() == jOOQMySQLTestSchemaRewrite.class) { + log.info("SKIPPING", "Schema mapping test"); + return; + } + } + + // Map to a second schema + // --------------------------------------------------------------------- + settings = new Settings() + .withRenderMapping(new RenderMapping() + .withSchemata(new MappedSchema() + .withInput(TAuthor().getSchema().getName()) + .withOutput(TAuthor().getSchema().getName() + "2"))); + + Select q = + create(settings).select(TBook_TITLE()) + .from(TAuthor()) + .join(TBook()) + .on(TAuthor_ID().equal(TBook_AUTHOR_ID())) + .orderBy(TBook_ID().asc()); + + // Assure that schema is replaced + assertTrue(create(settings).render(q).contains(TAuthor().getSchema().getName() + "2")); + assertTrue(q.getSQL().contains(TAuthor().getSchema().getName() + "2")); + assertEquals(create(settings).render(q), q.getSQL()); + + // Assure that results are correct + result = q.fetch(); + assertEquals("1984", result.getValue(0, TBook_TITLE())); + assertEquals("Animal Farm", result.getValue(1, TBook_TITLE())); + assertEquals("O Alquimista", result.getValue(2, TBook_TITLE())); + assertEquals("Brida", result.getValue(3, TBook_TITLE())); + + // [#995] Schema mapping in stored functions + // ----------------------------------------- + Field f1 = FOneField().cast(Integer.class); + Field f2 = FNumberField(42).cast(Integer.class); + + q = + create(settings).select(f1, f2); + + // Assure that schema is replaced + assertTrue(create(settings).render(q).contains(TAuthor().getSchema().getName() + "2")); + assertTrue(q.getSQL().contains(TAuthor().getSchema().getName() + "2")); + assertEquals(create(settings).render(q), q.getSQL()); + + // Assure that results are correct + Record record = q.fetchOne(); + assertEquals(1, (int) record.getValue(f1)); + assertEquals(42, (int) record.getValue(f2)); + + // Map both schema AND tables + // -------------------------- + settings = new Settings() + .withRenderMapping(new RenderMapping() + .withSchemata(new MappedSchema() + .withInput(TAuthor().getSchema().getName()) + .withOutput(TAuthor().getSchema().getName() + "2") + .withTables( + new MappedTable().withInput(TAuthor().getName()).withOutput(VAuthor().getName()), + new MappedTable().withInput(TBook().getName()).withOutput(VBook().getName())))); + + q = + create(settings).select(TBook_TITLE()) + .from(TAuthor()) + .join(TBook()) + .on(TAuthor_ID().equal(TBook_AUTHOR_ID())) + .orderBy(TBook_ID().asc()); + + // Assure T_* is replaced by V_* + assertTrue(create(settings).render(q).contains(VAuthor().getName())); + assertTrue(create(settings).render(q).contains(VBook().getName())); + assertTrue(create(settings).render(q).contains("test2")); + assertFalse(create(settings).render(q).contains(TAuthor().getName())); + assertFalse(create(settings).render(q).contains(TBook().getName())); + + // Assure that results are correct + result = q.fetch(); + assertEquals("1984", result.getValue(0, TBook_TITLE())); + assertEquals("Animal Farm", result.getValue(1, TBook_TITLE())); + assertEquals("O Alquimista", result.getValue(2, TBook_TITLE())); + assertEquals("Brida", result.getValue(3, TBook_TITLE())); + } + + @Test + public void testMultiSchemaQueries() { + if (TBookSale() == null) { + log.info("SKIPPING", "Multi-schema query tests"); + return; + } + + jOOQAbstractTest.reset = false; + + // Intial test, table is empty + // --------------------------- + assertEquals(0, create().selectCount().from(TBookSale()).fetchOne(0)); + + // Testing adding records to another schema's table + // ------------------------------------------------ + BS sale = create().newRecord(TBookSale()); + sale.setValue(TBookSale_ID(), 1); + sale.setValue(TBookSale_BOOK_ID(), 1); + sale.setValue(TBookSale_BOOK_STORE_NAME(), "Orell Füssli"); + sale.setValue(TBookSale_SOLD_AT(), new Date(0)); + sale.setValue(TBookSale_SOLD_FOR(), new BigDecimal("3.50")); + assertEquals(1, sale.store()); + assertEquals(1, create().selectCount().from(TBookSale()).fetchOne(0)); + + sale = sale.copy(); + sale.setValue(TBookSale_ID(), 2); + sale.setValue(TBookSale_SOLD_FOR(), new BigDecimal("7.50")); + assertEquals(1, sale.store()); + assertEquals(2, create().selectCount().from(TBookSale()).fetchOne(0)); + + sale = sale.copy(); + sale.setValue(TBookSale_ID(), 3); + sale.setValue(TBookSale_BOOK_STORE_NAME(), "Ex Libris"); + sale.setValue(TBookSale_SOLD_FOR(), new BigDecimal("8.50")); + assertEquals(1, sale.store()); + assertEquals(3, create().selectCount().from(TBookSale()).fetchOne(0)); + + // Test joining tables across schemas + // ---------------------------------- + Result result1 = + create().select( + TBook_TITLE(), + TBookSale_BOOK_STORE_NAME(), + sum(TBookSale_SOLD_FOR())) + .from(TBook() + .join(TBookSale()) + .on(TBook_ID().equal(TBookSale_BOOK_ID()))) + .groupBy( + TBook_ID(), + TBook_TITLE(), + TBookSale_BOOK_STORE_NAME()) + .orderBy( + TBook_ID().asc(), + sum(TBookSale_SOLD_FOR()).desc()) + .fetch(); + + assertEquals(2, result1.size()); + assertEquals(nCopies(2, "1984"), result1.getValues(TBook_TITLE())); + assertEquals(asList("Orell Füssli", "Ex Libris"), result1.getValues(TBookSale_BOOK_STORE_NAME())); + assertEquals(asList(new BigDecimal("11"), new BigDecimal("8.5")), result1.getValues(sum(TBookSale_SOLD_FOR()))); + + // Test joining "onKey" + // -------------------- + Result result2 = + create().select( + TBook_TITLE(), + TBookSale_BOOK_STORE_NAME(), + sum(TBookSale_SOLD_FOR())) + .from(TBook() + .join(TBookToBookStore() + .join(TBookSale()) + .onKey()) + .onKey()) + .groupBy( + TBook_ID(), + TBook_TITLE(), + TBookSale_BOOK_STORE_NAME()) + .orderBy( + TBook_ID().asc(), + sum(TBookSale_SOLD_FOR()).desc()) + .fetch(); + + assertEquals(result1, result2); + } +} diff --git a/jOOQ-test/src/org/jooq/test/_/testcases/SelectTests.java b/jOOQ-test/src/org/jooq/test/_/testcases/SelectTests.java new file mode 100644 index 00000000000..40c2ff6108d --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/_/testcases/SelectTests.java @@ -0,0 +1,511 @@ +/** + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com + * All rights reserved. + * + * This software is licensed to you under the Apache License, Version 2.0 + * (the "License"); You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * 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 "jOOQ" 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 COPYRIGHT OWNER 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. + */ +package org.jooq.test._.testcases; + +import static junit.framework.Assert.assertEquals; +import static junit.framework.Assert.assertTrue; +import static org.jooq.impl.Factory.count; +import static org.jooq.impl.Factory.countDistinct; +import static org.jooq.impl.Factory.trim; +import static org.jooq.impl.Factory.val; + +import org.jooq.Field; +import org.jooq.Record; +import org.jooq.Result; +import org.jooq.Select; +import org.jooq.SelectQuery; +import org.jooq.Table; +import org.jooq.TableRecord; +import org.jooq.UpdatableRecord; +import org.jooq.test.BaseTest; +import org.jooq.test.jOOQAbstractTest; + +import org.junit.Test; + +public class SelectTests< + A extends UpdatableRecord, + B extends UpdatableRecord, + S extends UpdatableRecord, + B2S extends UpdatableRecord, + BS extends UpdatableRecord, + L extends TableRecord, + X extends TableRecord, + DATE extends UpdatableRecord, + BOOL extends UpdatableRecord, + D extends UpdatableRecord, + T extends UpdatableRecord, + U extends TableRecord, + I extends TableRecord, + IPK extends UpdatableRecord, + T658 extends TableRecord, + T725 extends UpdatableRecord, + T639 extends UpdatableRecord, + T785 extends TableRecord> +extends BaseTest { + + public SelectTests(jOOQAbstractTest delegate) { + super(delegate); + } + + @Test + public void testSelectSimpleQuery() throws Exception { + SelectQuery q = create().selectQuery(); + Field f1 = val(1).as("f1"); + Field f2 = val(2d).as("f2"); + Field f3 = val("test").as("f3"); + + q.addSelect(f1); + q.addSelect(f2); + q.addSelect(f3); + + int i = q.execute(); + Result result = q.getResult(); + + assertEquals(1, i); + assertEquals(1, result.size()); + assertEquals(3, result.getFields().size()); + assertTrue(result.getFields().contains(f1)); + assertTrue(result.getFields().contains(f2)); + assertTrue(result.getFields().contains(f3)); + + assertEquals(3, result.get(0).getFields().size()); + assertTrue(result.get(0).getFields().contains(f1)); + assertTrue(result.get(0).getFields().contains(f2)); + assertTrue(result.get(0).getFields().contains(f3)); + + assertEquals(Integer.valueOf(1), result.get(0).getValue(f1)); + assertEquals(2d, result.get(0).getValue(f2)); + assertEquals("test", result.get(0).getValue(f3)); + } + + @Test + public void testSelectQuery() throws Exception { + SelectQuery q = create().selectQuery(); + q.addFrom(TAuthor()); + q.addSelect(TAuthor().getFields()); + q.addOrderBy(TAuthor_LAST_NAME()); + + int rows = q.execute(); + Result result = q.getResult(); + + assertEquals(2, rows); + assertEquals(2, result.size()); + assertEquals("Coelho", result.get(0).getValue(TAuthor_LAST_NAME())); + assertEquals("Orwell", result.get(1).getValue(TAuthor_LAST_NAME())); + } + + @Test + public void testDistinctQuery() throws Exception { + Result result = create() + .selectDistinct(TBook_AUTHOR_ID()) + .from(TBook()) + .orderBy(TBook_AUTHOR_ID()) + .fetch(); + + assertEquals(2, result.size()); + assertEquals(Integer.valueOf(1), result.get(0).getValue(TBook_AUTHOR_ID())); + assertEquals(Integer.valueOf(2), result.get(1).getValue(TBook_AUTHOR_ID())); + + assertEquals(2, create() + .select(countDistinct(TBook_AUTHOR_ID())) + .from(TBook()) + .fetchOne(0)); + assertEquals(2, create() + .selectDistinct(TBook_AUTHOR_ID()) + .from(TBook()) + .fetch() + .size()); + } + + @Test + public void testSubSelect() throws Exception { + // --------------------------------------------------------------------- + // Testing the IN condition + // --------------------------------------------------------------------- + assertEquals(3, + create().selectFrom(TBook()) + .where(TBook_TITLE().notIn(create() + .select(TBook_TITLE()) + .from(TBook()) + .where(TBook_TITLE().in("1984")))) + .execute()); + + // --------------------------------------------------------------------- + // Testing the EXISTS condition + // --------------------------------------------------------------------- + assertEquals(3, + create() + .selectFrom(TBook()) + .whereNotExists(create() + .selectOne() + .from(TAuthor()) + .where(TAuthor_YEAR_OF_BIRTH().greaterOrEqual(TBook_PUBLISHED_IN()))) + + // Add additional useless queries to check query correctness + .orNotExists(create().select()) + .andExists(create().select()).execute()); + + // --------------------------------------------------------------------- + // Testing selecting from a select + // --------------------------------------------------------------------- + Table nested = create().select(TBook_AUTHOR_ID(), count().as("books")) + .from(TBook()) + .groupBy(TBook_AUTHOR_ID()).asTable("nested"); + + Result records = create().select(nested.getFields()) + .from(nested) + .orderBy(nested.getField("books"), nested.getField(TBook_AUTHOR_ID())).fetch(); + + assertEquals(2, records.size()); + assertEquals(Integer.valueOf(1), records.getValue(0, nested.getField(TBook_AUTHOR_ID()))); + assertEquals(Integer.valueOf(2), records.getValue(0, nested.getField("books"))); + assertEquals(Integer.valueOf(2), records.getValue(1, nested.getField(TBook_AUTHOR_ID()))); + assertEquals(Integer.valueOf(2), records.getValue(1, nested.getField("books"))); + + Field books = create().select(count()) + .from(TBook()) + .where(TBook_AUTHOR_ID().equal(TAuthor_ID())).asField("books"); + + records = create().select(TAuthor_ID(), books) + .from(TAuthor()) + .orderBy(books, TAuthor_ID()).fetch(); + + assertEquals(2, records.size()); + assertEquals(Integer.valueOf(1), records.getValue(0, TAuthor_ID())); + assertEquals(Integer.valueOf(2), records.getValue(0, books)); + assertEquals(Integer.valueOf(2), records.getValue(1, TAuthor_ID())); + assertEquals(Integer.valueOf(2), records.getValue(1, books)); + + // --------------------------------------------------------------------- + // [#493, #632] Testing filtering by a select's outcome + // --------------------------------------------------------------------- + + // TODO [#632] Handle this for Sybase + assertEquals("Coelho", + create().select(TAuthor_LAST_NAME()) + .from(TAuthor()) + .where(val(0).equal(create() + .select(count(TBook_ID())) + .from(TBook()) + .where(TBook_AUTHOR_ID().equal(TAuthor_ID())) + .and(TBook_TITLE().equal("1984")))) + + // SQLite doesn't support {=|<>|<|>|<=|>=} {ANY|ALL|SOME}, which + // is checked in PredicateTests. But do check simpler subqueries + + .and(val(100).notEqual(create().selectOne())) + .and(val(0).lessThan(create().selectOne())) + .and(val(1).lessOrEqual(create().selectOne())) + .and(val(1).greaterThan(create().selectZero())) + .and(val(0).greaterOrEqual(create().selectZero())) + .limit(1) + .fetchOne(TAuthor_LAST_NAME())); + } + + @Test + public void testUnaliasedSubqueryProjections() throws Exception { + // Test whether unaliased literals in subquery projections are correctly + // handled + Result result = + create().select() + .from( + create().selectOne(), + create().select(val(2)), + create().select(val(2)), + create().select(val(2)), + create().select(val(3).add(4)), + create().select(val(3).add(4)), + create().select(trim(" test ")), + create().select(trim(" test "))) + .fetch(); + + assertEquals(1, result.size()); + assertEquals(Integer.valueOf(1), result.getValue(0, 0)); + assertEquals(Integer.valueOf(2), result.getValue(0, 1)); + assertEquals(Integer.valueOf(2), result.getValue(0, val(2))); + assertEquals(Integer.valueOf(2), result.getValue(0, 3)); + assertEquals(Integer.valueOf(7), result.getValue(0, val(3).add(4))); + assertEquals(Integer.valueOf(7), result.getValue(0, 5)); + assertEquals("test", result.getValue(0, trim(" test "))); + assertEquals("test", result.getValue(0, 7)); + + result = + create().select( + create().selectOne().asField(), + create().select(val(2)).asField(), + create().select(val(2)).asField(), + create().select(val(2)).asField(), + create().select(val(3).add(4)).asField(), + create().select(val(3).add(4)).asField(), + create().select(trim(" test ")).asField(), + create().select(trim(" test ")).asField()) + .fetch(); + + assertEquals(1, result.size()); + assertEquals(1, result.getValue(0, 0)); + assertEquals(2, result.getValue(0, 1)); + assertEquals(2, result.getValue(0, 2)); + assertEquals(2, result.getValue(0, 3)); + assertEquals(7, result.getValue(0, 4)); + assertEquals(7, result.getValue(0, 5)); + assertEquals("test", result.getValue(0, 6)); + assertEquals("test", result.getValue(0, 7)); + } + + @Test + public void testCombinedSelectQuery() throws Exception { + SelectQuery q1 = create().selectQuery(); + SelectQuery q2 = create().selectQuery(); + + q1.addFrom(TBook()); + q2.addFrom(TBook()); + + q1.addConditions(TBook_AUTHOR_ID().equal(1)); + q2.addConditions(TBook_TITLE().equal("Brida")); + + // Use union all because of clob's + Select union = q1.unionAll(q2); + int rows = union.execute(); + assertEquals(3, rows); + + // Use union all because of clob's + rows = create().selectDistinct(union.getField(TBook_AUTHOR_ID()), TAuthor_FIRST_NAME()) + .from(union) + .join(TAuthor()) + .on(union.getField(TBook_AUTHOR_ID()).equal(TAuthor_ID())) + .orderBy(TAuthor_FIRST_NAME()) + .execute(); + + assertEquals(2, rows); + } + + @Test + public void testComplexUnions() throws Exception { + Select s1 = create().select(TBook_TITLE()).from(TBook()).where(TBook_ID().equal(1)); + Select s2 = create().select(TBook_TITLE()).from(TBook()).where(TBook_ID().equal(2)); + Select s3 = create().select(TBook_TITLE()).from(TBook()).where(TBook_ID().equal(3)); + Select s4 = create().select(TBook_TITLE()).from(TBook()).where(TBook_ID().equal(4)); + + Result result = create().select().from(s1.union(s2).union(s3).union(s4)).fetch(); + assertEquals(4, result.size()); + + result = create().select().from(s1.union(s2).union(s3.union(s4))).fetch(); + assertEquals(4, result.size()); + + assertEquals(4, create().select().from(s1.union( + create().select().from(s2.unionAll( + create().select().from(s3.union(s4)))))) + .fetch().size()); + + // [#289] Handle bad syntax scenario provided by user Gunther + Select q = create().select(val(2008).as("y")); + for (int year = 2009; year <= 2011; year++) { + q = q.union(create().select(val(year).as("y"))); + } + + assertEquals(4, q.execute()); + } + + @Test + public void testForUpdateClauses() throws Exception { + switch (getDialect()) { + case CUBRID: + case SQLITE: + case SQLSERVER: + log.info("SKIPPING", "FOR UPDATE tests"); + return; + } + + // Just checking for syntax correctness. Locking should be OK + Result result = create().select(TAuthor_ID()) + .from(TAuthor()) + .forUpdate() + .fetch(); + assertEquals(2, result.size()); + Result result2 = create().selectFrom(TAuthor()) + .forUpdate() + .fetch(); + assertEquals(2, result2.size()); + + // Check again with limit / offset clauses + switch (getDialect()) { + case INGRES: + case ORACLE: + log.info("SKIPPING", "LIMIT .. OFFSET .. FOR UPDATE"); + break; + + default: { + Result result3 = create().select(TAuthor_ID()) + .from(TAuthor()) + .limit(5) + .offset(0) + .forUpdate() + .fetch(); + assertEquals(2, result3.size()); + Result result4 = create().selectFrom(TAuthor()) + .limit(5) + .offset(0) + .forUpdate() + .fetch(); + assertEquals(2, result4.size()); + } + } + + switch (getDialect()) { + case ASE: + case DB2: + case DERBY: + case HSQLDB: + case H2: + case INGRES: + case MYSQL: + case POSTGRES: + case SYBASE: + log.info("SKIPPING", "FOR UPDATE .. WAIT/NOWAIT tests"); + break; + + default: { + result = create().select(TAuthor_ID()) + .from(TAuthor()) + .forUpdate() + .wait(2) + .fetch(); + assertEquals(2, result.size()); + result = create().select(TAuthor_ID()) + .from(TAuthor()) + .forUpdate() + .noWait() + .fetch(); + assertEquals(2, result.size()); + result = create().select(TAuthor_ID()) + .from(TAuthor()) + .forUpdate() + .skipLocked() + .fetch(); + assertEquals(2, result.size()); + + + result2 = create().selectFrom(TAuthor()) + .forUpdate() + .of(TAuthor_LAST_NAME(), TAuthor_FIRST_NAME()) + .wait(2) + .fetch(); + assertEquals(2, result2.size()); + result2 = create().selectFrom(TAuthor()) + .forUpdate() + .of(TAuthor_LAST_NAME(), TAuthor_FIRST_NAME()) + .noWait() + .fetch(); + assertEquals(2, result2.size()); + result2 = create().selectFrom(TAuthor()) + .forUpdate() + .of(TAuthor_LAST_NAME(), TAuthor_FIRST_NAME()) + .skipLocked() + .fetch(); + assertEquals(2, result2.size()); + } + } + + switch (getDialect()) { + case MYSQL: + log.info("SKIPPING", "FOR UPDATE OF tests"); + break; + + // Most dialects support the OF clause + case DB2: + case DERBY: + case H2: + case HSQLDB: + case INGRES: + case ORACLE: + case SYBASE: { + result = create().select(TAuthor_ID()) + .from(TAuthor()) + .forUpdate() + .of(TAuthor_LAST_NAME(), TAuthor_FIRST_NAME()) + .fetch(); + assertEquals(2, result.size()); + + result2 = create().selectFrom(TAuthor()) + .forUpdate() + .of(TAuthor_LAST_NAME(), TAuthor_FIRST_NAME()) + .fetch(); + assertEquals(2, result2.size()); + + // NO BREAK: Fall through to POSTGRES + } + + // Postgres only supports the OF clause with tables as parameters + case POSTGRES: { + result = create().select(TAuthor_ID()) + .from(TAuthor()) + .forUpdate() + .of(TAuthor()) + .fetch(); + assertEquals(2, result.size()); + + result2 = create().selectFrom(TAuthor()) + .forUpdate() + .of(TAuthor()) + .fetch(); + assertEquals(2, result2.size()); + + break; + } + } + + // Only few dialects support the FOR SHARE clause: + switch (getDialect()) { + case MYSQL: + case POSTGRES: { + result = create().select(TAuthor_ID()) + .from(TAuthor()) + .forShare() + .fetch(); + assertEquals(2, result.size()); + + result2 = create().selectFrom(TAuthor()) + .forShare() + .fetch(); + assertEquals(2, result2.size()); + break; + } + + default: + log.info("SKIPPING", "FOR SHARE clause tests"); + } + } +} diff --git a/jOOQ-test/src/org/jooq/test/_/testcases/Template.java b/jOOQ-test/src/org/jooq/test/_/testcases/Template.java new file mode 100644 index 00000000000..8e3d2eb5d48 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/_/testcases/Template.java @@ -0,0 +1,67 @@ +/** + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com + * All rights reserved. + * + * This software is licensed to you under the Apache License, Version 2.0 + * (the "License"); You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * 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 "jOOQ" 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 COPYRIGHT OWNER 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. + */ +package org.jooq.test._.testcases; + +import org.jooq.TableRecord; +import org.jooq.UpdatableRecord; +import org.jooq.test.BaseTest; +import org.jooq.test.jOOQAbstractTest; + +public class Template< + A extends UpdatableRecord, + B extends UpdatableRecord, + S extends UpdatableRecord, + B2S extends UpdatableRecord, + BS extends UpdatableRecord, + L extends TableRecord, + X extends TableRecord, + DATE extends UpdatableRecord, + BOOL extends UpdatableRecord, + D extends UpdatableRecord, + T extends UpdatableRecord, + U extends TableRecord, + I extends TableRecord, + IPK extends UpdatableRecord, + T658 extends TableRecord, + T725 extends UpdatableRecord, + T639 extends UpdatableRecord, + T785 extends TableRecord> +extends BaseTest { + + public Template(jOOQAbstractTest delegate) { + super(delegate); + } +} diff --git a/jOOQ-test/src/org/jooq/test/ase/create.sql b/jOOQ-test/src/org/jooq/test/ase/create.sql new file mode 100644 index 00000000000..aec986df028 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/ase/create.sql @@ -0,0 +1,343 @@ +DROP VIEW v_library/ +DROP VIEW v_author/ +DROP VIEW v_book/ + +DROP PROCEDURE p_unused/ +DROP PROCEDURE p_author_exists/ +DROP PROCEDURE p_create_author/ +DROP PROCEDURE p_create_author_by_name/ +DROP PROCEDURE p391/ +DROP FUNCTION f_author_exists/ +DROP FUNCTION f_one/ +DROP FUNCTION f_number/ +DROP FUNCTION f317/ + +DROP TRIGGER t_triggers_trigger/ + +DROP TABLE t_dates/ +DROP TABLE t_triggers/ +DROP TABLE t_book_to_book_store/ +DROP TABLE t_book_store/ +DROP TABLE t_book/ +DROP TABLE t_book_details/ +DROP TABLE t_author/ +DROP TABLE t_language/ +DROP TABLE x_test_case_85/ +DROP TABLE x_test_case_71/ +DROP TABLE x_test_case_64_69/ +DROP TABLE t_986_1/ +DROP TABLE t_986_2/ +DROP TABLE x_unused/ +DROP TABLE t_639_numbers_table/ +DROP TABLE t_658_ref/ +DROP TABLE t_658_11/ +DROP TABLE t_658_21/ +DROP TABLE t_658_31/ +DROP TABLE t_658_12/ +DROP TABLE t_658_22/ +DROP TABLE t_658_32/ +DROP TABLE t_725_lob_test/ +DROP TABLE t_785/ +DROP TABLE t_booleans/ +DROP TABLE t_identity/ +DROP TABLE t_identity_pk/ + +CREATE TABLE t_identity_pk ( + id INTEGER IDENTITY NOT NULL, + val int, + + CONSTRAINT pk_t_identity_pk PRIMARY KEY (id) +) +/ + +CREATE TABLE t_identity ( + id INTEGER IDENTITY NOT NULL, + val int +) +/ + +CREATE TABLE t_dates ( + id int, + d date null, + t time null, + ts datetime null, + d_int int null, + ts_bigint bigint null, + + CONSTRAINT pk_t_dates PRIMARY KEY (id) +) +/ + +CREATE TABLE t_booleans ( + id int, + one_zero int null, + true_false_lc varchar(5) null, + true_false_uc varchar(5) null, + yes_no_lc varchar(3) null, + yes_no_uc varchar(3) null, + y_n_lc char(1) null, + y_n_uc char(1) null, + vc_boolean varchar(1) null, + c_boolean char(1) null, + n_boolean int null, + + CONSTRAINT pk_t_booleans PRIMARY KEY (id) +) +/ + +CREATE TABLE t_triggers ( + id_generated int IDENTITY not null, + id int null, + counter int null, + + CONSTRAINT pk_t_triggers PRIMARY KEY (id_generated) +) +/ + +CREATE TRIGGER t_triggers_trigger +ON t_triggers +FOR INSERT +AS UPDATE t_triggers SET id = id_generated, counter = id_generated * 2 +/ + +CREATE TABLE t_language ( + cd CHAR(2) NOT NULL, + description VARCHAR(50) NULL, + description_english VARCHAR(50) NULL, + id INTEGER NOT NULL, + + CONSTRAINT pk_t_language PRIMARY KEY (id) +) +/ + +CREATE TABLE t_658_11 ( + id CHAR(3) NOT NULL, + + CONSTRAINT pk_t_658_11 PRIMARY KEY (id) +) +/ + +CREATE TABLE t_658_21 ( + id INT NOT NULL, + + CONSTRAINT pk_t_658_21 PRIMARY KEY (id) +) +/ + +CREATE TABLE t_658_31 ( + id BIGINT NOT NULL, + + CONSTRAINT pk_t_658_31 PRIMARY KEY (id) +) +/ + +CREATE TABLE t_658_12 ( + id CHAR(3) NOT NULL, + cd CHAR(3) NOT NULL, + + CONSTRAINT pk_t_658_12 PRIMARY KEY (id) +) +/ + +CREATE TABLE t_658_22 ( + id INT NOT NULL, + cd INT NOT NULL, + + CONSTRAINT pk_t_658_22 PRIMARY KEY (id) +) +/ + +CREATE TABLE t_658_32 ( + id BIGINT NOT NULL, + cd BIGINT NOT NULL, + + CONSTRAINT pk_t_658_32 PRIMARY KEY (id) +) +/ + +CREATE TABLE t_658_ref ( + ref_11 char(3), + ref_21 int, + ref_31 bigint, + ref_12 char(3), + ref_22 int, + ref_32 bigint, + + CONSTRAINT fk_t_658_11 FOREIGN KEY (ref_11) REFERENCES t_658_11(id), + CONSTRAINT fk_t_658_21 FOREIGN KEY (ref_21) REFERENCES t_658_21(id), + CONSTRAINT fk_t_658_31 FOREIGN KEY (ref_31) REFERENCES t_658_31(id), + CONSTRAINT fk_t_658_12 FOREIGN KEY (ref_12) REFERENCES t_658_12(id), + CONSTRAINT fk_t_658_22 FOREIGN KEY (ref_22) REFERENCES t_658_22(id), + CONSTRAINT fk_t_658_32 FOREIGN KEY (ref_32) REFERENCES t_658_32(id) +) +/ + +CREATE TABLE t_725_lob_test ( + id int NOT NULL, + lob VARBINARY(500) NULL, + + CONSTRAINT pk_t_725_lob_test PRIMARY KEY (id) +) +/ + +CREATE TABLE t_785 ( + ID int NULL, + NAME varchar(50) NULL, + VALUE varchar(50) NULL +) +/ + +CREATE TABLE t_author ( + id INT NOT NULL, + first_name VARCHAR(50) NULL, + last_name VARCHAR(50) NOT NULL, + date_of_birth DATE NULL, + year_of_birth INT NULL, + address VARCHAR(200) NULL, + + CONSTRAINT pk_t_author PRIMARY KEY (id) +) +/ + +CREATE TABLE t_book_details ( + id INT NOT NULL, + + CONSTRAINT pk_t_book_details PRIMARY KEY (id) +) +/ + +CREATE TABLE t_book ( + id INT NOT NULL, + author_id INT NOT NULL, + co_author_id INT NULL, + details_id INT NULL, + title VARCHAR(400) NOT NULL, + published_in INT NOT NULL, + language_id INT NOT NULL, + content_text text NULL, + content_pdf BINARY(400) NULL, + + CONSTRAINT pk_t_book PRIMARY KEY (id), + CONSTRAINT fk_t_book_author_id FOREIGN KEY (author_id) REFERENCES t_author(id), + CONSTRAINT fk_t_book_co_author_id FOREIGN KEY (co_author_id) REFERENCES t_author(id), + CONSTRAINT fk_t_book_details_id FOREIGN KEY (details_id) REFERENCES t_book_details(id), + CONSTRAINT fk_t_book_language_id FOREIGN KEY (language_id) REFERENCES t_language(id) +) +/ + +CREATE TABLE t_book_store ( + name VARCHAR(400) NOT NULL, + + CONSTRAINT uk_t_book_store_name UNIQUE(name) +) +/ + +CREATE TABLE t_book_to_book_store ( + book_store_name VARCHAR(400) NOT NULL, + book_id INTEGER NOT NULL, + stock INTEGER, + + CONSTRAINT pk_b2bs PRIMARY KEY(book_store_name, book_id), + CONSTRAINT fk_b2bs_bs_name FOREIGN KEY (book_store_name) + REFERENCES t_book_store (name), + CONSTRAINT fk_b2bs_b_id FOREIGN KEY (book_id) + REFERENCES t_book (id) +) +/ + +CREATE TABLE x_unused ( + ID INT NOT NULL, + NAME VARCHAR(10) NOT NULL, + BIG_INTEGER DECIMAL(25), + ID_REF INT, + NAME_REF VARCHAR(10), + CLASS INT, + FIELDS INT, + CONFIGURATION INT, + U_D_T INT, + META_DATA INT, + TYPE0 INT, + PRIMARY_KEY INT, + PRIMARYKEY INT, + [FIELD 737] DECIMAL(25, 2), + + CONSTRAINT pk_x_unused PRIMARY KEY(ID, NAME), + CONSTRAINT uk_x_unused_id UNIQUE(ID), + CONSTRAINT fk_x_unused_self FOREIGN KEY(ID_REF, NAME_REF) REFERENCES x_unused(ID, NAME) +) +/ + +CREATE TABLE t_986_1 ( + REF INT, + + CONSTRAINT pk_986 PRIMARY KEY(REF) +) +/ + +CREATE TABLE t_986_2 ( + REF INT, + + CONSTRAINT pk_986 PRIMARY KEY(REF) +) +/ + +CREATE TABLE t_639_numbers_table ( + ID INT NOT NULL, + BYTE TINYINT NULL, + SHORT SMALLINT NULL, + [INTEGER] INT NULL, + [LONG] BIGINT NULL, + BYTE_DECIMAL DECIMAL(2, 0) NULL, + SHORT_DECIMAL DECIMAL(4, 0) NULL, + INTEGER_DECIMAL DECIMAL(9, 0) NULL, + LONG_DECIMAL DECIMAL(18, 0) NULL, + BIG_INTEGER DECIMAL(22, 0) NULL, + BIG_DECIMAL DECIMAL(22, 5) NULL, + [FLOAT] REAL NULL, + [DOUBLE] DOUBLE PRECISION NULL, + + CONSTRAINT pk_t_639_numbers_table PRIMARY KEY(ID) +) +/ + +CREATE TABLE x_test_case_64_69 ( + ID INT NOT NULL, + UNUSED_ID INT, + + CONSTRAINT pk_x_test_case_64_69 PRIMARY KEY(ID), + CONSTRAINT fk_x_test_case_64_69a FOREIGN KEY(UNUSED_ID) REFERENCES x_unused(ID), + CONSTRAINT fk_x_test_case_64_69b FOREIGN KEY(UNUSED_ID) REFERENCES x_unused(ID) +) +/ + +CREATE TABLE x_test_case_71 ( + ID INT NOT NULL, + TEST_CASE_64_69_ID INT, + + CONSTRAINT pk_x_test_case_71 PRIMARY KEY(ID), + CONSTRAINT fk_x_test_case_71 FOREIGN KEY(TEST_CASE_64_69_ID) REFERENCES x_test_case_64_69(ID) +) +/ + +CREATE TABLE x_test_case_85 ( + id int NOT NULL, + x_unused_id int, + x_unused_name VARCHAR(10), + + CONSTRAINT pk_x_test_case_85 PRIMARY KEY(id), + CONSTRAINT fk_x_test_case_85 FOREIGN KEY(x_unused_id, x_unused_name) REFERENCES x_unused(ID, NAME) +) +/ + +CREATE VIEW v_library (author, title) AS +SELECT a.first_name || ' ' || a.last_name, b.title +FROM t_author a JOIN t_book b ON b.author_id = a.id +/ + +CREATE VIEW v_author AS +SELECT * FROM t_author +/ + +CREATE VIEW v_book AS +SELECT * FROM t_book +/ \ No newline at end of file diff --git a/jOOQ-test/src/org/jooq/test/ase/generatedclasses/Dbo.java b/jOOQ-test/src/org/jooq/test/ase/generatedclasses/Dbo.java new file mode 100644 index 00000000000..dde5428f05a --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/ase/generatedclasses/Dbo.java @@ -0,0 +1,51 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.ase.generatedclasses; + +/** + * This class is generated by jOOQ. + */ +public class Dbo extends org.jooq.impl.SchemaImpl { + + private static final long serialVersionUID = 1794404583; + + /** + * The singleton instance of dbo + */ + public static final Dbo DBO = new Dbo(); + + /** + * No further instances allowed + */ + private Dbo() { + super("dbo"); + } + + @Override + public final java.util.List> getTables() { + return java.util.Arrays.>asList( + org.jooq.test.ase.generatedclasses.tables.VAuthor.V_AUTHOR, + org.jooq.test.ase.generatedclasses.tables.VBook.V_BOOK, + org.jooq.test.ase.generatedclasses.tables.VLibrary.V_LIBRARY, + org.jooq.test.ase.generatedclasses.tables.T_639NumbersTable.T_639_NUMBERS_TABLE, + org.jooq.test.ase.generatedclasses.tables.T_658Ref.T_658_REF, + org.jooq.test.ase.generatedclasses.tables.T_725LobTest.T_725_LOB_TEST, + org.jooq.test.ase.generatedclasses.tables.T_785.T_785, + org.jooq.test.ase.generatedclasses.tables.T_986_1.T_986_1, + org.jooq.test.ase.generatedclasses.tables.T_986_2.T_986_2, + org.jooq.test.ase.generatedclasses.tables.TAuthor.T_AUTHOR, + org.jooq.test.ase.generatedclasses.tables.TBook.T_BOOK, + org.jooq.test.ase.generatedclasses.tables.TBookStore.T_BOOK_STORE, + org.jooq.test.ase.generatedclasses.tables.TBookToBookStore.T_BOOK_TO_BOOK_STORE, + org.jooq.test.ase.generatedclasses.tables.TBooleans.T_BOOLEANS, + org.jooq.test.ase.generatedclasses.tables.TDates.T_DATES, + org.jooq.test.ase.generatedclasses.tables.TIdentity.T_IDENTITY, + org.jooq.test.ase.generatedclasses.tables.TIdentityPk.T_IDENTITY_PK, + org.jooq.test.ase.generatedclasses.tables.TTriggers.T_TRIGGERS, + org.jooq.test.ase.generatedclasses.tables.XTestCase_64_69.X_TEST_CASE_64_69, + org.jooq.test.ase.generatedclasses.tables.XTestCase_71.X_TEST_CASE_71, + org.jooq.test.ase.generatedclasses.tables.XTestCase_85.X_TEST_CASE_85, + org.jooq.test.ase.generatedclasses.tables.XUnused.X_UNUSED); + } +} diff --git a/jOOQ-test/src/org/jooq/test/ase/generatedclasses/DboFactory.java b/jOOQ-test/src/org/jooq/test/ase/generatedclasses/DboFactory.java new file mode 100644 index 00000000000..a46a372677b --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/ase/generatedclasses/DboFactory.java @@ -0,0 +1,41 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.ase.generatedclasses; + +/** + * This class is generated by jOOQ. + */ +public class DboFactory extends org.jooq.util.ase.ASEFactory { + + private static final long serialVersionUID = -237948133; + + /** + * Create a factory with a connection + * + * @param connection The connection to use with objects created from this factory + */ + public DboFactory(java.sql.Connection connection) { + super(connection); + } + + /** + * Create a factory with a connection and a schema mapping + * + * @deprecated - 2.0.5 - Use {@link #DboFactory(java.sql.Connection, org.jooq.conf.Settings)} instead + */ + @Deprecated + public DboFactory(java.sql.Connection connection, org.jooq.SchemaMapping mapping) { + super(connection, mapping); + } + + /** + * Create a factory with a connection and some settings + * + * @param connection The connection to use with objects created from this factory + * @param settings The settings to apply to objects created from this factory + */ + public DboFactory(java.sql.Connection connection, org.jooq.conf.Settings settings) { + super(connection, settings); + } +} diff --git a/jOOQ-test/src/org/jooq/test/ase/generatedclasses/Keys.java b/jOOQ-test/src/org/jooq/test/ase/generatedclasses/Keys.java new file mode 100644 index 00000000000..158a50f00a3 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/ase/generatedclasses/Keys.java @@ -0,0 +1,52 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.ase.generatedclasses; + +/** + * This class is generated by jOOQ. + * + * A class modelling foreign key relationships between tables of the dbo schema + */ +@SuppressWarnings({"unchecked"}) +public class Keys extends org.jooq.impl.AbstractKeys { + + // IDENTITY definitions + public static final org.jooq.Identity IDENTITY_T_IDENTITY = createIdentity(org.jooq.test.ase.generatedclasses.tables.TIdentity.T_IDENTITY, org.jooq.test.ase.generatedclasses.tables.TIdentity.ID); + public static final org.jooq.Identity IDENTITY_T_IDENTITY_PK = createIdentity(org.jooq.test.ase.generatedclasses.tables.TIdentityPk.T_IDENTITY_PK, org.jooq.test.ase.generatedclasses.tables.TIdentityPk.ID); + public static final org.jooq.Identity IDENTITY_T_TRIGGERS = createIdentity(org.jooq.test.ase.generatedclasses.tables.TTriggers.T_TRIGGERS, org.jooq.test.ase.generatedclasses.tables.TTriggers.ID_GENERATED); + + // UNIQUE and PRIMARY KEY definitions + public static final org.jooq.UniqueKey T_639_NUMBERS_TABLE__PK_T_639_NUMBERS_TABLE = createUniqueKey(org.jooq.test.ase.generatedclasses.tables.T_639NumbersTable.T_639_NUMBERS_TABLE, org.jooq.test.ase.generatedclasses.tables.T_639NumbersTable.ID); + public static final org.jooq.UniqueKey T_725_LOB_TEST__PK_T_725_LOB_TEST = createUniqueKey(org.jooq.test.ase.generatedclasses.tables.T_725LobTest.T_725_LOB_TEST, org.jooq.test.ase.generatedclasses.tables.T_725LobTest.ID); + public static final org.jooq.UniqueKey T_986_1__PK_986 = createUniqueKey(org.jooq.test.ase.generatedclasses.tables.T_986_1.T_986_1, org.jooq.test.ase.generatedclasses.tables.T_986_1.REF); + public static final org.jooq.UniqueKey T_986_2__PK_986 = createUniqueKey(org.jooq.test.ase.generatedclasses.tables.T_986_2.T_986_2, org.jooq.test.ase.generatedclasses.tables.T_986_2.REF); + public static final org.jooq.UniqueKey T_AUTHOR__PK_T_AUTHOR = createUniqueKey(org.jooq.test.ase.generatedclasses.tables.TAuthor.T_AUTHOR, org.jooq.test.ase.generatedclasses.tables.TAuthor.ID); + public static final org.jooq.UniqueKey T_BOOK__PK_T_BOOK = createUniqueKey(org.jooq.test.ase.generatedclasses.tables.TBook.T_BOOK, org.jooq.test.ase.generatedclasses.tables.TBook.ID); + public static final org.jooq.UniqueKey T_BOOK_STORE__UK_T_BOOK_STORE_NAME = createUniqueKey(org.jooq.test.ase.generatedclasses.tables.TBookStore.T_BOOK_STORE, org.jooq.test.ase.generatedclasses.tables.TBookStore.NAME); + public static final org.jooq.UniqueKey T_BOOK_TO_BOOK_STORE__PK_B2BS = createUniqueKey(org.jooq.test.ase.generatedclasses.tables.TBookToBookStore.T_BOOK_TO_BOOK_STORE, org.jooq.test.ase.generatedclasses.tables.TBookToBookStore.BOOK_STORE_NAME, org.jooq.test.ase.generatedclasses.tables.TBookToBookStore.BOOK_ID); + public static final org.jooq.UniqueKey T_BOOLEANS__PK_T_BOOLEANS = createUniqueKey(org.jooq.test.ase.generatedclasses.tables.TBooleans.T_BOOLEANS, org.jooq.test.ase.generatedclasses.tables.TBooleans.ID); + public static final org.jooq.UniqueKey T_DATES__PK_T_DATES = createUniqueKey(org.jooq.test.ase.generatedclasses.tables.TDates.T_DATES, org.jooq.test.ase.generatedclasses.tables.TDates.ID); + public static final org.jooq.UniqueKey T_IDENTITY_PK__PK_T_IDENTITY_PK = createUniqueKey(org.jooq.test.ase.generatedclasses.tables.TIdentityPk.T_IDENTITY_PK, org.jooq.test.ase.generatedclasses.tables.TIdentityPk.ID); + public static final org.jooq.UniqueKey T_TRIGGERS__PK_T_TRIGGERS = createUniqueKey(org.jooq.test.ase.generatedclasses.tables.TTriggers.T_TRIGGERS, org.jooq.test.ase.generatedclasses.tables.TTriggers.ID_GENERATED); + public static final org.jooq.UniqueKey X_TEST_CASE_64_69__PK_X_TEST_CASE_64_69 = createUniqueKey(org.jooq.test.ase.generatedclasses.tables.XTestCase_64_69.X_TEST_CASE_64_69, org.jooq.test.ase.generatedclasses.tables.XTestCase_64_69.ID); + public static final org.jooq.UniqueKey X_TEST_CASE_71__PK_X_TEST_CASE_71 = createUniqueKey(org.jooq.test.ase.generatedclasses.tables.XTestCase_71.X_TEST_CASE_71, org.jooq.test.ase.generatedclasses.tables.XTestCase_71.ID); + public static final org.jooq.UniqueKey X_TEST_CASE_85__PK_X_TEST_CASE_85 = createUniqueKey(org.jooq.test.ase.generatedclasses.tables.XTestCase_85.X_TEST_CASE_85, org.jooq.test.ase.generatedclasses.tables.XTestCase_85.ID); + public static final org.jooq.UniqueKey X_UNUSED__PK_X_UNUSED = createUniqueKey(org.jooq.test.ase.generatedclasses.tables.XUnused.X_UNUSED, org.jooq.test.ase.generatedclasses.tables.XUnused.ID, org.jooq.test.ase.generatedclasses.tables.XUnused.NAME); + public static final org.jooq.UniqueKey X_UNUSED__UK_X_UNUSED_ID = createUniqueKey(org.jooq.test.ase.generatedclasses.tables.XUnused.X_UNUSED, org.jooq.test.ase.generatedclasses.tables.XUnused.ID); + + // FOREIGN KEY definitions + public static final org.jooq.ForeignKey T_BOOK__FK_T_BOOK_AUTHOR_ID = createForeignKey(T_AUTHOR__PK_T_AUTHOR, org.jooq.test.ase.generatedclasses.tables.TBook.T_BOOK, org.jooq.test.ase.generatedclasses.tables.TBook.AUTHOR_ID); + public static final org.jooq.ForeignKey T_BOOK__FK_T_BOOK_CO_AUTHOR_ID = createForeignKey(T_AUTHOR__PK_T_AUTHOR, org.jooq.test.ase.generatedclasses.tables.TBook.T_BOOK, org.jooq.test.ase.generatedclasses.tables.TBook.CO_AUTHOR_ID); + public static final org.jooq.ForeignKey T_BOOK_TO_BOOK_STORE__FK_B2BS_BS_NAME = createForeignKey(T_BOOK_STORE__UK_T_BOOK_STORE_NAME, org.jooq.test.ase.generatedclasses.tables.TBookToBookStore.T_BOOK_TO_BOOK_STORE, org.jooq.test.ase.generatedclasses.tables.TBookToBookStore.BOOK_STORE_NAME); + public static final org.jooq.ForeignKey T_BOOK_TO_BOOK_STORE__FK_B2BS_B_ID = createForeignKey(T_BOOK__PK_T_BOOK, org.jooq.test.ase.generatedclasses.tables.TBookToBookStore.T_BOOK_TO_BOOK_STORE, org.jooq.test.ase.generatedclasses.tables.TBookToBookStore.BOOK_ID); + public static final org.jooq.ForeignKey X_TEST_CASE_64_69__FK_X_TEST_CASE_64_69A = createForeignKey(X_UNUSED__UK_X_UNUSED_ID, org.jooq.test.ase.generatedclasses.tables.XTestCase_64_69.X_TEST_CASE_64_69, org.jooq.test.ase.generatedclasses.tables.XTestCase_64_69.UNUSED_ID); + public static final org.jooq.ForeignKey X_TEST_CASE_71__FK_X_TEST_CASE_71 = createForeignKey(X_TEST_CASE_64_69__PK_X_TEST_CASE_64_69, org.jooq.test.ase.generatedclasses.tables.XTestCase_71.X_TEST_CASE_71, org.jooq.test.ase.generatedclasses.tables.XTestCase_71.TEST_CASE_64_69_ID); + public static final org.jooq.ForeignKey X_TEST_CASE_85__FK_X_TEST_CASE_85 = createForeignKey(X_UNUSED__PK_X_UNUSED, org.jooq.test.ase.generatedclasses.tables.XTestCase_85.X_TEST_CASE_85, org.jooq.test.ase.generatedclasses.tables.XTestCase_85.X_UNUSED_ID, org.jooq.test.ase.generatedclasses.tables.XTestCase_85.X_UNUSED_NAME); + public static final org.jooq.ForeignKey X_UNUSED__FK_X_UNUSED_SELF = createForeignKey(X_UNUSED__PK_X_UNUSED, org.jooq.test.ase.generatedclasses.tables.XUnused.X_UNUSED, org.jooq.test.ase.generatedclasses.tables.XUnused.ID_REF, org.jooq.test.ase.generatedclasses.tables.XUnused.NAME_REF); + + /** + * No instances + */ + private Keys() {} +} diff --git a/jOOQ-test/src/org/jooq/test/ase/generatedclasses/Tables.java b/jOOQ-test/src/org/jooq/test/ase/generatedclasses/Tables.java new file mode 100644 index 00000000000..19cd96e15bb --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/ase/generatedclasses/Tables.java @@ -0,0 +1,127 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.ase.generatedclasses; + +/** + * This class is generated by jOOQ. + * + * Convenience access to all tables in dbo + */ +public final class Tables { + + /** + * The table dbo.v_author + */ + public static org.jooq.test.ase.generatedclasses.tables.VAuthor V_AUTHOR = org.jooq.test.ase.generatedclasses.tables.VAuthor.V_AUTHOR; + + /** + * The table dbo.v_book + */ + public static org.jooq.test.ase.generatedclasses.tables.VBook V_BOOK = org.jooq.test.ase.generatedclasses.tables.VBook.V_BOOK; + + /** + * The table dbo.v_library + */ + public static org.jooq.test.ase.generatedclasses.tables.VLibrary V_LIBRARY = org.jooq.test.ase.generatedclasses.tables.VLibrary.V_LIBRARY; + + /** + * The table dbo.t_639_numbers_table + */ + public static org.jooq.test.ase.generatedclasses.tables.T_639NumbersTable T_639_NUMBERS_TABLE = org.jooq.test.ase.generatedclasses.tables.T_639NumbersTable.T_639_NUMBERS_TABLE; + + /** + * The table dbo.t_658_ref + */ + public static org.jooq.test.ase.generatedclasses.tables.T_658Ref T_658_REF = org.jooq.test.ase.generatedclasses.tables.T_658Ref.T_658_REF; + + /** + * The table dbo.t_725_lob_test + */ + public static org.jooq.test.ase.generatedclasses.tables.T_725LobTest T_725_LOB_TEST = org.jooq.test.ase.generatedclasses.tables.T_725LobTest.T_725_LOB_TEST; + + /** + * The table dbo.t_785 + */ + public static org.jooq.test.ase.generatedclasses.tables.T_785 T_785 = org.jooq.test.ase.generatedclasses.tables.T_785.T_785; + + /** + * The table dbo.t_986_1 + */ + public static org.jooq.test.ase.generatedclasses.tables.T_986_1 T_986_1 = org.jooq.test.ase.generatedclasses.tables.T_986_1.T_986_1; + + /** + * The table dbo.t_986_2 + */ + public static org.jooq.test.ase.generatedclasses.tables.T_986_2 T_986_2 = org.jooq.test.ase.generatedclasses.tables.T_986_2.T_986_2; + + /** + * The table dbo.t_author + */ + public static org.jooq.test.ase.generatedclasses.tables.TAuthor T_AUTHOR = org.jooq.test.ase.generatedclasses.tables.TAuthor.T_AUTHOR; + + /** + * The table dbo.t_book + */ + public static org.jooq.test.ase.generatedclasses.tables.TBook T_BOOK = org.jooq.test.ase.generatedclasses.tables.TBook.T_BOOK; + + /** + * The table dbo.t_book_store + */ + public static org.jooq.test.ase.generatedclasses.tables.TBookStore T_BOOK_STORE = org.jooq.test.ase.generatedclasses.tables.TBookStore.T_BOOK_STORE; + + /** + * The table dbo.t_book_to_book_store + */ + public static org.jooq.test.ase.generatedclasses.tables.TBookToBookStore T_BOOK_TO_BOOK_STORE = org.jooq.test.ase.generatedclasses.tables.TBookToBookStore.T_BOOK_TO_BOOK_STORE; + + /** + * The table dbo.t_booleans + */ + public static org.jooq.test.ase.generatedclasses.tables.TBooleans T_BOOLEANS = org.jooq.test.ase.generatedclasses.tables.TBooleans.T_BOOLEANS; + + /** + * The table dbo.t_dates + */ + public static org.jooq.test.ase.generatedclasses.tables.TDates T_DATES = org.jooq.test.ase.generatedclasses.tables.TDates.T_DATES; + + /** + * The table dbo.t_identity + */ + public static org.jooq.test.ase.generatedclasses.tables.TIdentity T_IDENTITY = org.jooq.test.ase.generatedclasses.tables.TIdentity.T_IDENTITY; + + /** + * The table dbo.t_identity_pk + */ + public static org.jooq.test.ase.generatedclasses.tables.TIdentityPk T_IDENTITY_PK = org.jooq.test.ase.generatedclasses.tables.TIdentityPk.T_IDENTITY_PK; + + /** + * The table dbo.t_triggers + */ + public static org.jooq.test.ase.generatedclasses.tables.TTriggers T_TRIGGERS = org.jooq.test.ase.generatedclasses.tables.TTriggers.T_TRIGGERS; + + /** + * The table dbo.x_test_case_64_69 + */ + public static org.jooq.test.ase.generatedclasses.tables.XTestCase_64_69 X_TEST_CASE_64_69 = org.jooq.test.ase.generatedclasses.tables.XTestCase_64_69.X_TEST_CASE_64_69; + + /** + * The table dbo.x_test_case_71 + */ + public static org.jooq.test.ase.generatedclasses.tables.XTestCase_71 X_TEST_CASE_71 = org.jooq.test.ase.generatedclasses.tables.XTestCase_71.X_TEST_CASE_71; + + /** + * The table dbo.x_test_case_85 + */ + public static org.jooq.test.ase.generatedclasses.tables.XTestCase_85 X_TEST_CASE_85 = org.jooq.test.ase.generatedclasses.tables.XTestCase_85.X_TEST_CASE_85; + + /** + * The table dbo.x_unused + */ + public static org.jooq.test.ase.generatedclasses.tables.XUnused X_UNUSED = org.jooq.test.ase.generatedclasses.tables.XUnused.X_UNUSED; + + /** + * No instances + */ + private Tables() {} +} diff --git a/jOOQ-test/src/org/jooq/test/ase/generatedclasses/enums/TLanguage.java b/jOOQ-test/src/org/jooq/test/ase/generatedclasses/enums/TLanguage.java new file mode 100644 index 00000000000..c78c915f3a2 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/ase/generatedclasses/enums/TLanguage.java @@ -0,0 +1,65 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.ase.generatedclasses.enums; + +/** + * This class is generated by jOOQ. + */ +public enum TLanguage implements org.jooq.MasterDataType { + + /** + * English + */ + en(1, "en", "English"), + + /** + * Deutsch + */ + de(2, "de", "Deutsch"), + + /** + * Français + */ + fr(3, "fr", "Français"), + pt(4, "pt", null), + ; + + private final java.lang.Integer id; + private final java.lang.String cd; + private final java.lang.String description; + + private TLanguage(java.lang.Integer id, java.lang.String cd, java.lang.String description) { + this.id = id; + this.cd = cd; + this.description = description; + } + + @Override + public java.lang.Integer getPrimaryKey() { + return id; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final java.lang.Integer getId() { + return id; + } + + /** + * An uncommented item + */ + public final java.lang.String getCd() { + return cd; + } + + /** + * An uncommented item + */ + public final java.lang.String getDescription() { + return description; + } +} diff --git a/jOOQ-test/src/org/jooq/test/ase/generatedclasses/enums/T_658_11.java b/jOOQ-test/src/org/jooq/test/ase/generatedclasses/enums/T_658_11.java new file mode 100644 index 00000000000..308f73dbf19 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/ase/generatedclasses/enums/T_658_11.java @@ -0,0 +1,46 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.ase.generatedclasses.enums; + +/** + * This class is generated by jOOQ. + */ +public enum T_658_11 implements org.jooq.MasterDataType { + + /** + * A + */ + A__("A "), + + /** + * B + */ + B__("B "), + + /** + * C + */ + C__("C "), + ; + + private final java.lang.String id; + + private T_658_11(java.lang.String id) { + this.id = id; + } + + @Override + public java.lang.String getPrimaryKey() { + return id; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final java.lang.String getId() { + return id; + } +} diff --git a/jOOQ-test/src/org/jooq/test/ase/generatedclasses/enums/T_658_12.java b/jOOQ-test/src/org/jooq/test/ase/generatedclasses/enums/T_658_12.java new file mode 100644 index 00000000000..ef68f32f744 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/ase/generatedclasses/enums/T_658_12.java @@ -0,0 +1,55 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.ase.generatedclasses.enums; + +/** + * This class is generated by jOOQ. + */ +public enum T_658_12 implements org.jooq.MasterDataType { + + /** + * A + */ + A__("A ", "A "), + + /** + * B + */ + B__("B ", "B "), + + /** + * C + */ + C__("C ", "C "), + ; + + private final java.lang.String id; + private final java.lang.String cd; + + private T_658_12(java.lang.String id, java.lang.String cd) { + this.id = id; + this.cd = cd; + } + + @Override + public java.lang.String getPrimaryKey() { + return id; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final java.lang.String getId() { + return id; + } + + /** + * An uncommented item + */ + public final java.lang.String getCd() { + return cd; + } +} diff --git a/jOOQ-test/src/org/jooq/test/ase/generatedclasses/enums/T_658_21.java b/jOOQ-test/src/org/jooq/test/ase/generatedclasses/enums/T_658_21.java new file mode 100644 index 00000000000..208afb38681 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/ase/generatedclasses/enums/T_658_21.java @@ -0,0 +1,46 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.ase.generatedclasses.enums; + +/** + * This class is generated by jOOQ. + */ +public enum T_658_21 implements org.jooq.MasterDataType { + + /** + * 1 + */ + _1(1), + + /** + * 2 + */ + _2(2), + + /** + * 3 + */ + _3(3), + ; + + private final java.lang.Integer id; + + private T_658_21(java.lang.Integer id) { + this.id = id; + } + + @Override + public java.lang.Integer getPrimaryKey() { + return id; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final java.lang.Integer getId() { + return id; + } +} diff --git a/jOOQ-test/src/org/jooq/test/ase/generatedclasses/enums/T_658_22.java b/jOOQ-test/src/org/jooq/test/ase/generatedclasses/enums/T_658_22.java new file mode 100644 index 00000000000..216f6f8a624 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/ase/generatedclasses/enums/T_658_22.java @@ -0,0 +1,55 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.ase.generatedclasses.enums; + +/** + * This class is generated by jOOQ. + */ +public enum T_658_22 implements org.jooq.MasterDataType { + + /** + * 1 + */ + _1(1, 1), + + /** + * 2 + */ + _2(2, 2), + + /** + * 3 + */ + _3(3, 3), + ; + + private final java.lang.Integer id; + private final java.lang.Integer cd; + + private T_658_22(java.lang.Integer id, java.lang.Integer cd) { + this.id = id; + this.cd = cd; + } + + @Override + public java.lang.Integer getPrimaryKey() { + return id; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final java.lang.Integer getId() { + return id; + } + + /** + * An uncommented item + */ + public final java.lang.Integer getCd() { + return cd; + } +} diff --git a/jOOQ-test/src/org/jooq/test/ase/generatedclasses/enums/T_658_31.java b/jOOQ-test/src/org/jooq/test/ase/generatedclasses/enums/T_658_31.java new file mode 100644 index 00000000000..14ccc9f11b2 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/ase/generatedclasses/enums/T_658_31.java @@ -0,0 +1,46 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.ase.generatedclasses.enums; + +/** + * This class is generated by jOOQ. + */ +public enum T_658_31 implements org.jooq.MasterDataType { + + /** + * 1 + */ + _1(1L), + + /** + * 2 + */ + _2(2L), + + /** + * 3 + */ + _3(3L), + ; + + private final java.lang.Long id; + + private T_658_31(java.lang.Long id) { + this.id = id; + } + + @Override + public java.lang.Long getPrimaryKey() { + return id; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final java.lang.Long getId() { + return id; + } +} diff --git a/jOOQ-test/src/org/jooq/test/ase/generatedclasses/enums/T_658_32.java b/jOOQ-test/src/org/jooq/test/ase/generatedclasses/enums/T_658_32.java new file mode 100644 index 00000000000..d90fc1935ec --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/ase/generatedclasses/enums/T_658_32.java @@ -0,0 +1,55 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.ase.generatedclasses.enums; + +/** + * This class is generated by jOOQ. + */ +public enum T_658_32 implements org.jooq.MasterDataType { + + /** + * 1 + */ + _1(1L, 1L), + + /** + * 2 + */ + _2(2L, 2L), + + /** + * 3 + */ + _3(3L, 3L), + ; + + private final java.lang.Long id; + private final java.lang.Long cd; + + private T_658_32(java.lang.Long id, java.lang.Long cd) { + this.id = id; + this.cd = cd; + } + + @Override + public java.lang.Long getPrimaryKey() { + return id; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final java.lang.Long getId() { + return id; + } + + /** + * An uncommented item + */ + public final java.lang.Long getCd() { + return cd; + } +} diff --git a/jOOQ-test/src/org/jooq/test/ase/generatedclasses/tables/TAuthor.java b/jOOQ-test/src/org/jooq/test/ase/generatedclasses/tables/TAuthor.java new file mode 100644 index 00000000000..1356ac90b4d --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/ase/generatedclasses/tables/TAuthor.java @@ -0,0 +1,80 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.ase.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class TAuthor extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = -211136543; + + /** + * The singleton instance of dbo.t_author + */ + public static final org.jooq.test.ase.generatedclasses.tables.TAuthor T_AUTHOR = new org.jooq.test.ase.generatedclasses.tables.TAuthor(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.ase.generatedclasses.tables.records.TAuthorRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public static final org.jooq.TableField ID = createField("id", org.jooq.impl.SQLDataType.INTEGER, T_AUTHOR); + + /** + * An uncommented item + */ + public static final org.jooq.TableField FIRST_NAME = createField("first_name", org.jooq.impl.SQLDataType.VARCHAR, T_AUTHOR); + + /** + * An uncommented item + */ + public static final org.jooq.TableField LAST_NAME = createField("last_name", org.jooq.impl.SQLDataType.VARCHAR, T_AUTHOR); + + /** + * An uncommented item + */ + public static final org.jooq.TableField DATE_OF_BIRTH = createField("date_of_birth", org.jooq.impl.SQLDataType.DATE, T_AUTHOR); + + /** + * An uncommented item + */ + public static final org.jooq.TableField YEAR_OF_BIRTH = createField("year_of_birth", org.jooq.impl.SQLDataType.INTEGER, T_AUTHOR); + + /** + * An uncommented item + */ + public static final org.jooq.TableField ADDRESS = createField("address", org.jooq.impl.SQLDataType.VARCHAR, T_AUTHOR); + + /** + * No further instances allowed + */ + private TAuthor() { + super("t_author", org.jooq.test.ase.generatedclasses.Dbo.DBO); + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.test.ase.generatedclasses.Keys.T_AUTHOR__PK_T_AUTHOR; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.test.ase.generatedclasses.Keys.T_AUTHOR__PK_T_AUTHOR); + } +} diff --git a/jOOQ-test/src/org/jooq/test/ase/generatedclasses/tables/TBook.java b/jOOQ-test/src/org/jooq/test/ase/generatedclasses/tables/TBook.java new file mode 100644 index 00000000000..fb1c414223e --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/ase/generatedclasses/tables/TBook.java @@ -0,0 +1,119 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.ase.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class TBook extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = -1352009034; + + /** + * The singleton instance of dbo.t_book + */ + public static final org.jooq.test.ase.generatedclasses.tables.TBook T_BOOK = new org.jooq.test.ase.generatedclasses.tables.TBook(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.ase.generatedclasses.tables.records.TBookRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public static final org.jooq.TableField ID = createField("id", org.jooq.impl.SQLDataType.INTEGER, T_BOOK); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT t_book__fk_t_book_author_id
+	 * FOREIGN KEY (author_id)
+	 * REFERENCES dbo.t_author (id)
+	 * 
+ */ + public static final org.jooq.TableField AUTHOR_ID = createField("author_id", org.jooq.impl.SQLDataType.INTEGER, T_BOOK); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT t_book__fk_t_book_co_author_id
+	 * FOREIGN KEY (co_author_id)
+	 * REFERENCES dbo.t_author (id)
+	 * 
+ */ + public static final org.jooq.TableField CO_AUTHOR_ID = createField("co_author_id", org.jooq.impl.SQLDataType.INTEGER, T_BOOK); + + /** + * An uncommented item + */ + public static final org.jooq.TableField DETAILS_ID = createField("details_id", org.jooq.impl.SQLDataType.INTEGER, T_BOOK); + + /** + * An uncommented item + */ + public static final org.jooq.TableField TITLE = createField("title", org.jooq.impl.SQLDataType.VARCHAR, T_BOOK); + + /** + * An uncommented item + */ + public static final org.jooq.TableField PUBLISHED_IN = createField("published_in", org.jooq.impl.SQLDataType.INTEGER, T_BOOK); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT t_book__fk_t_book_language_id
+	 * FOREIGN KEY (language_id)
+	 * REFERENCES dbo.t_language (id)
+	 * 
+ */ + public static final org.jooq.TableField LANGUAGE_ID = createField("language_id", org.jooq.impl.SQLDataType.INTEGER.asMasterDataType(org.jooq.test.ase.generatedclasses.enums.TLanguage.class), T_BOOK); + + /** + * An uncommented item + */ + public static final org.jooq.TableField CONTENT_TEXT = createField("content_text", org.jooq.impl.SQLDataType.LONGVARCHAR, T_BOOK); + + /** + * An uncommented item + */ + public static final org.jooq.TableField CONTENT_PDF = createField("content_pdf", org.jooq.impl.SQLDataType.BINARY, T_BOOK); + + /** + * No further instances allowed + */ + private TBook() { + super("t_book", org.jooq.test.ase.generatedclasses.Dbo.DBO); + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.test.ase.generatedclasses.Keys.T_BOOK__PK_T_BOOK; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.test.ase.generatedclasses.Keys.T_BOOK__PK_T_BOOK); + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getReferences() { + return java.util.Arrays.>asList(org.jooq.test.ase.generatedclasses.Keys.T_BOOK__FK_T_BOOK_AUTHOR_ID, org.jooq.test.ase.generatedclasses.Keys.T_BOOK__FK_T_BOOK_CO_AUTHOR_ID); + } +} diff --git a/jOOQ-test/src/org/jooq/test/ase/generatedclasses/tables/TBookStore.java b/jOOQ-test/src/org/jooq/test/ase/generatedclasses/tables/TBookStore.java new file mode 100644 index 00000000000..f56c8aa64d7 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/ase/generatedclasses/tables/TBookStore.java @@ -0,0 +1,53 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.ase.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class TBookStore extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = -520687107; + + /** + * The singleton instance of dbo.t_book_store + */ + public static final org.jooq.test.ase.generatedclasses.tables.TBookStore T_BOOK_STORE = new org.jooq.test.ase.generatedclasses.tables.TBookStore(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.ase.generatedclasses.tables.records.TBookStoreRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + */ + public static final org.jooq.TableField NAME = createField("name", org.jooq.impl.SQLDataType.VARCHAR, T_BOOK_STORE); + + /** + * No further instances allowed + */ + private TBookStore() { + super("t_book_store", org.jooq.test.ase.generatedclasses.Dbo.DBO); + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.test.ase.generatedclasses.Keys.T_BOOK_STORE__UK_T_BOOK_STORE_NAME; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.test.ase.generatedclasses.Keys.T_BOOK_STORE__UK_T_BOOK_STORE_NAME); + } +} diff --git a/jOOQ-test/src/org/jooq/test/ase/generatedclasses/tables/TBookToBookStore.java b/jOOQ-test/src/org/jooq/test/ase/generatedclasses/tables/TBookToBookStore.java new file mode 100644 index 00000000000..d4cfc20eaa5 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/ase/generatedclasses/tables/TBookToBookStore.java @@ -0,0 +1,85 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.ase.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class TBookToBookStore extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = 686979126; + + /** + * The singleton instance of dbo.t_book_to_book_store + */ + public static final org.jooq.test.ase.generatedclasses.tables.TBookToBookStore T_BOOK_TO_BOOK_STORE = new org.jooq.test.ase.generatedclasses.tables.TBookToBookStore(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.ase.generatedclasses.tables.records.TBookToBookStoreRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT t_book_to_book_store__fk_b2bs_bs_name
+	 * FOREIGN KEY (book_store_name)
+	 * REFERENCES dbo.t_book_store (name)
+	 * 
+ */ + public static final org.jooq.TableField BOOK_STORE_NAME = createField("book_store_name", org.jooq.impl.SQLDataType.VARCHAR, T_BOOK_TO_BOOK_STORE); + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT t_book_to_book_store__fk_b2bs_b_id
+	 * FOREIGN KEY (book_id)
+	 * REFERENCES dbo.t_book (id)
+	 * 
+ */ + public static final org.jooq.TableField BOOK_ID = createField("book_id", org.jooq.impl.SQLDataType.INTEGER, T_BOOK_TO_BOOK_STORE); + + /** + * An uncommented item + */ + public static final org.jooq.TableField STOCK = createField("stock", org.jooq.impl.SQLDataType.INTEGER, T_BOOK_TO_BOOK_STORE); + + /** + * No further instances allowed + */ + private TBookToBookStore() { + super("t_book_to_book_store", org.jooq.test.ase.generatedclasses.Dbo.DBO); + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.test.ase.generatedclasses.Keys.T_BOOK_TO_BOOK_STORE__PK_B2BS; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.test.ase.generatedclasses.Keys.T_BOOK_TO_BOOK_STORE__PK_B2BS); + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getReferences() { + return java.util.Arrays.>asList(org.jooq.test.ase.generatedclasses.Keys.T_BOOK_TO_BOOK_STORE__FK_B2BS_BS_NAME, org.jooq.test.ase.generatedclasses.Keys.T_BOOK_TO_BOOK_STORE__FK_B2BS_B_ID); + } +} diff --git a/jOOQ-test/src/org/jooq/test/ase/generatedclasses/tables/TBooleans.java b/jOOQ-test/src/org/jooq/test/ase/generatedclasses/tables/TBooleans.java new file mode 100644 index 00000000000..c983127cdff --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/ase/generatedclasses/tables/TBooleans.java @@ -0,0 +1,105 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.ase.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class TBooleans extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = -241244478; + + /** + * The singleton instance of dbo.t_booleans + */ + public static final org.jooq.test.ase.generatedclasses.tables.TBooleans T_BOOLEANS = new org.jooq.test.ase.generatedclasses.tables.TBooleans(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.ase.generatedclasses.tables.records.TBooleansRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public static final org.jooq.TableField ID = createField("id", org.jooq.impl.SQLDataType.INTEGER, T_BOOLEANS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField ONE_ZERO = createField("one_zero", org.jooq.impl.SQLDataType.INTEGER.asConvertedDataType(new org.jooq.test._.converters.Boolean_10_Converter()), T_BOOLEANS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField TRUE_FALSE_LC = createField("true_false_lc", org.jooq.impl.SQLDataType.VARCHAR.asConvertedDataType(new org.jooq.test._.converters.Boolean_TF_LC_Converter()), T_BOOLEANS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField TRUE_FALSE_UC = createField("true_false_uc", org.jooq.impl.SQLDataType.VARCHAR.asConvertedDataType(new org.jooq.test._.converters.Boolean_TF_UC_Converter()), T_BOOLEANS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField YES_NO_LC = createField("yes_no_lc", org.jooq.impl.SQLDataType.VARCHAR.asConvertedDataType(new org.jooq.test._.converters.Boolean_YES_NO_LC_Converter()), T_BOOLEANS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField YES_NO_UC = createField("yes_no_uc", org.jooq.impl.SQLDataType.VARCHAR.asConvertedDataType(new org.jooq.test._.converters.Boolean_YES_NO_UC_Converter()), T_BOOLEANS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField Y_N_LC = createField("y_n_lc", org.jooq.impl.SQLDataType.CHAR.asConvertedDataType(new org.jooq.test._.converters.Boolean_YN_LC_Converter()), T_BOOLEANS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField Y_N_UC = createField("y_n_uc", org.jooq.impl.SQLDataType.CHAR.asConvertedDataType(new org.jooq.test._.converters.Boolean_YN_UC_Converter()), T_BOOLEANS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField VC_BOOLEAN = createField("vc_boolean", org.jooq.impl.SQLDataType.BIT, T_BOOLEANS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField C_BOOLEAN = createField("c_boolean", org.jooq.impl.SQLDataType.BIT, T_BOOLEANS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField N_BOOLEAN = createField("n_boolean", org.jooq.impl.SQLDataType.BIT, T_BOOLEANS); + + /** + * No further instances allowed + */ + private TBooleans() { + super("t_booleans", org.jooq.test.ase.generatedclasses.Dbo.DBO); + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.test.ase.generatedclasses.Keys.T_BOOLEANS__PK_T_BOOLEANS; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.test.ase.generatedclasses.Keys.T_BOOLEANS__PK_T_BOOLEANS); + } +} diff --git a/jOOQ-test/src/org/jooq/test/ase/generatedclasses/tables/TDates.java b/jOOQ-test/src/org/jooq/test/ase/generatedclasses/tables/TDates.java new file mode 100644 index 00000000000..b7c1ee8e863 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/ase/generatedclasses/tables/TDates.java @@ -0,0 +1,80 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.ase.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class TDates extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = 1596232694; + + /** + * The singleton instance of dbo.t_dates + */ + public static final org.jooq.test.ase.generatedclasses.tables.TDates T_DATES = new org.jooq.test.ase.generatedclasses.tables.TDates(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.ase.generatedclasses.tables.records.TDatesRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public static final org.jooq.TableField ID = createField("id", org.jooq.impl.SQLDataType.INTEGER, T_DATES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField D = createField("d", org.jooq.impl.SQLDataType.DATE, T_DATES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField T = createField("t", org.jooq.impl.SQLDataType.TIME, T_DATES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField TS = createField("ts", org.jooq.impl.SQLDataType.TIMESTAMP, T_DATES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField D_INT = createField("d_int", org.jooq.impl.SQLDataType.INTEGER, T_DATES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField TS_BIGINT = createField("ts_bigint", org.jooq.impl.SQLDataType.BIGINT, T_DATES); + + /** + * No further instances allowed + */ + private TDates() { + super("t_dates", org.jooq.test.ase.generatedclasses.Dbo.DBO); + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.test.ase.generatedclasses.Keys.T_DATES__PK_T_DATES; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.test.ase.generatedclasses.Keys.T_DATES__PK_T_DATES); + } +} diff --git a/jOOQ-test/src/org/jooq/test/ase/generatedclasses/tables/TIdentity.java b/jOOQ-test/src/org/jooq/test/ase/generatedclasses/tables/TIdentity.java new file mode 100644 index 00000000000..3d7b3244994 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/ase/generatedclasses/tables/TIdentity.java @@ -0,0 +1,52 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.ase.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class TIdentity extends org.jooq.impl.TableImpl { + + private static final long serialVersionUID = 1543853536; + + /** + * The singleton instance of dbo.t_identity + */ + public static final org.jooq.test.ase.generatedclasses.tables.TIdentity T_IDENTITY = new org.jooq.test.ase.generatedclasses.tables.TIdentity(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.ase.generatedclasses.tables.records.TIdentityRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + */ + public static final org.jooq.TableField ID = createField("id", org.jooq.impl.SQLDataType.INTEGER, T_IDENTITY); + + /** + * An uncommented item + */ + public static final org.jooq.TableField VAL = createField("val", org.jooq.impl.SQLDataType.INTEGER, T_IDENTITY); + + /** + * No further instances allowed + */ + private TIdentity() { + super("t_identity", org.jooq.test.ase.generatedclasses.Dbo.DBO); + } + + @Override + public org.jooq.Identity getIdentity() { + return org.jooq.test.ase.generatedclasses.Keys.IDENTITY_T_IDENTITY; + } +} diff --git a/jOOQ-test/src/org/jooq/test/ase/generatedclasses/tables/TIdentityPk.java b/jOOQ-test/src/org/jooq/test/ase/generatedclasses/tables/TIdentityPk.java new file mode 100644 index 00000000000..775596018a2 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/ase/generatedclasses/tables/TIdentityPk.java @@ -0,0 +1,65 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.ase.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class TIdentityPk extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = -1935567556; + + /** + * The singleton instance of dbo.t_identity_pk + */ + public static final org.jooq.test.ase.generatedclasses.tables.TIdentityPk T_IDENTITY_PK = new org.jooq.test.ase.generatedclasses.tables.TIdentityPk(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.ase.generatedclasses.tables.records.TIdentityPkRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public static final org.jooq.TableField ID = createField("id", org.jooq.impl.SQLDataType.INTEGER, T_IDENTITY_PK); + + /** + * An uncommented item + */ + public static final org.jooq.TableField VAL = createField("val", org.jooq.impl.SQLDataType.INTEGER, T_IDENTITY_PK); + + /** + * No further instances allowed + */ + private TIdentityPk() { + super("t_identity_pk", org.jooq.test.ase.generatedclasses.Dbo.DBO); + } + + @Override + public org.jooq.Identity getIdentity() { + return org.jooq.test.ase.generatedclasses.Keys.IDENTITY_T_IDENTITY_PK; + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.test.ase.generatedclasses.Keys.T_IDENTITY_PK__PK_T_IDENTITY_PK; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.test.ase.generatedclasses.Keys.T_IDENTITY_PK__PK_T_IDENTITY_PK); + } +} diff --git a/jOOQ-test/src/org/jooq/test/ase/generatedclasses/tables/TTriggers.java b/jOOQ-test/src/org/jooq/test/ase/generatedclasses/tables/TTriggers.java new file mode 100644 index 00000000000..66b7ee59fd3 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/ase/generatedclasses/tables/TTriggers.java @@ -0,0 +1,70 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.ase.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class TTriggers extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = -1525406343; + + /** + * The singleton instance of dbo.t_triggers + */ + public static final org.jooq.test.ase.generatedclasses.tables.TTriggers T_TRIGGERS = new org.jooq.test.ase.generatedclasses.tables.TTriggers(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.ase.generatedclasses.tables.records.TTriggersRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public static final org.jooq.TableField ID_GENERATED = createField("id_generated", org.jooq.impl.SQLDataType.INTEGER, T_TRIGGERS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField ID = createField("id", org.jooq.impl.SQLDataType.INTEGER, T_TRIGGERS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField COUNTER = createField("counter", org.jooq.impl.SQLDataType.INTEGER, T_TRIGGERS); + + /** + * No further instances allowed + */ + private TTriggers() { + super("t_triggers", org.jooq.test.ase.generatedclasses.Dbo.DBO); + } + + @Override + public org.jooq.Identity getIdentity() { + return org.jooq.test.ase.generatedclasses.Keys.IDENTITY_T_TRIGGERS; + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.test.ase.generatedclasses.Keys.T_TRIGGERS__PK_T_TRIGGERS; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.test.ase.generatedclasses.Keys.T_TRIGGERS__PK_T_TRIGGERS); + } +} diff --git a/jOOQ-test/src/org/jooq/test/ase/generatedclasses/tables/T_639NumbersTable.java b/jOOQ-test/src/org/jooq/test/ase/generatedclasses/tables/T_639NumbersTable.java new file mode 100644 index 00000000000..2790c1c644c --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/ase/generatedclasses/tables/T_639NumbersTable.java @@ -0,0 +1,115 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.ase.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class T_639NumbersTable extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = 1922892213; + + /** + * The singleton instance of dbo.t_639_numbers_table + */ + public static final org.jooq.test.ase.generatedclasses.tables.T_639NumbersTable T_639_NUMBERS_TABLE = new org.jooq.test.ase.generatedclasses.tables.T_639NumbersTable(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.ase.generatedclasses.tables.records.T_639NumbersTableRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public static final org.jooq.TableField ID = createField("ID", org.jooq.impl.SQLDataType.INTEGER, T_639_NUMBERS_TABLE); + + /** + * An uncommented item + */ + public static final org.jooq.TableField BYTE = createField("BYTE", org.jooq.impl.SQLDataType.TINYINT, T_639_NUMBERS_TABLE); + + /** + * An uncommented item + */ + public static final org.jooq.TableField SHORT = createField("SHORT", org.jooq.impl.SQLDataType.SMALLINT, T_639_NUMBERS_TABLE); + + /** + * An uncommented item + */ + public static final org.jooq.TableField INTEGER = createField("INTEGER", org.jooq.impl.SQLDataType.INTEGER, T_639_NUMBERS_TABLE); + + /** + * An uncommented item + */ + public static final org.jooq.TableField LONG = createField("LONG", org.jooq.impl.SQLDataType.BIGINT, T_639_NUMBERS_TABLE); + + /** + * An uncommented item + */ + public static final org.jooq.TableField BYTE_DECIMAL = createField("BYTE_DECIMAL", org.jooq.impl.SQLDataType.TINYINT, T_639_NUMBERS_TABLE); + + /** + * An uncommented item + */ + public static final org.jooq.TableField SHORT_DECIMAL = createField("SHORT_DECIMAL", org.jooq.impl.SQLDataType.SMALLINT, T_639_NUMBERS_TABLE); + + /** + * An uncommented item + */ + public static final org.jooq.TableField INTEGER_DECIMAL = createField("INTEGER_DECIMAL", org.jooq.impl.SQLDataType.INTEGER, T_639_NUMBERS_TABLE); + + /** + * An uncommented item + */ + public static final org.jooq.TableField LONG_DECIMAL = createField("LONG_DECIMAL", org.jooq.impl.SQLDataType.BIGINT, T_639_NUMBERS_TABLE); + + /** + * An uncommented item + */ + public static final org.jooq.TableField BIG_INTEGER = createField("BIG_INTEGER", org.jooq.impl.SQLDataType.DECIMAL_INTEGER, T_639_NUMBERS_TABLE); + + /** + * An uncommented item + */ + public static final org.jooq.TableField BIG_DECIMAL = createField("BIG_DECIMAL", org.jooq.impl.SQLDataType.DECIMAL, T_639_NUMBERS_TABLE); + + /** + * An uncommented item + */ + public static final org.jooq.TableField FLOAT = createField("FLOAT", org.jooq.impl.SQLDataType.REAL, T_639_NUMBERS_TABLE); + + /** + * An uncommented item + */ + public static final org.jooq.TableField DOUBLE = createField("DOUBLE", org.jooq.impl.SQLDataType.FLOAT, T_639_NUMBERS_TABLE); + + /** + * No further instances allowed + */ + private T_639NumbersTable() { + super("t_639_numbers_table", org.jooq.test.ase.generatedclasses.Dbo.DBO); + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.test.ase.generatedclasses.Keys.T_639_NUMBERS_TABLE__PK_T_639_NUMBERS_TABLE; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.test.ase.generatedclasses.Keys.T_639_NUMBERS_TABLE__PK_T_639_NUMBERS_TABLE); + } +} diff --git a/jOOQ-test/src/org/jooq/test/ase/generatedclasses/tables/T_658Ref.java b/jOOQ-test/src/org/jooq/test/ase/generatedclasses/tables/T_658Ref.java new file mode 100644 index 00000000000..e1a231ff6a9 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/ase/generatedclasses/tables/T_658Ref.java @@ -0,0 +1,109 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.ase.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class T_658Ref extends org.jooq.impl.TableImpl { + + private static final long serialVersionUID = 895940102; + + /** + * The singleton instance of dbo.t_658_ref + */ + public static final org.jooq.test.ase.generatedclasses.tables.T_658Ref T_658_REF = new org.jooq.test.ase.generatedclasses.tables.T_658Ref(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.ase.generatedclasses.tables.records.T_658RefRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT t_658_ref__fk_t_658_11
+	 * FOREIGN KEY (ref_11)
+	 * REFERENCES dbo.t_658_11 (id)
+	 * 
+ */ + public static final org.jooq.TableField REF_11 = createField("ref_11", org.jooq.impl.SQLDataType.CHAR.asMasterDataType(org.jooq.test.ase.generatedclasses.enums.T_658_11.class), T_658_REF); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT t_658_ref__fk_t_658_21
+	 * FOREIGN KEY (ref_21)
+	 * REFERENCES dbo.t_658_21 (id)
+	 * 
+ */ + public static final org.jooq.TableField REF_21 = createField("ref_21", org.jooq.impl.SQLDataType.INTEGER.asMasterDataType(org.jooq.test.ase.generatedclasses.enums.T_658_21.class), T_658_REF); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT t_658_ref__fk_t_658_31
+	 * FOREIGN KEY (ref_31)
+	 * REFERENCES dbo.t_658_31 (id)
+	 * 
+ */ + public static final org.jooq.TableField REF_31 = createField("ref_31", org.jooq.impl.SQLDataType.BIGINT.asMasterDataType(org.jooq.test.ase.generatedclasses.enums.T_658_31.class), T_658_REF); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT t_658_ref__fk_t_658_12
+	 * FOREIGN KEY (ref_12)
+	 * REFERENCES dbo.t_658_12 (id)
+	 * 
+ */ + public static final org.jooq.TableField REF_12 = createField("ref_12", org.jooq.impl.SQLDataType.CHAR.asMasterDataType(org.jooq.test.ase.generatedclasses.enums.T_658_12.class), T_658_REF); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT t_658_ref__fk_t_658_22
+	 * FOREIGN KEY (ref_22)
+	 * REFERENCES dbo.t_658_22 (id)
+	 * 
+ */ + public static final org.jooq.TableField REF_22 = createField("ref_22", org.jooq.impl.SQLDataType.INTEGER.asMasterDataType(org.jooq.test.ase.generatedclasses.enums.T_658_22.class), T_658_REF); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT t_658_ref__fk_t_658_32
+	 * FOREIGN KEY (ref_32)
+	 * REFERENCES dbo.t_658_32 (id)
+	 * 
+ */ + public static final org.jooq.TableField REF_32 = createField("ref_32", org.jooq.impl.SQLDataType.BIGINT.asMasterDataType(org.jooq.test.ase.generatedclasses.enums.T_658_32.class), T_658_REF); + + /** + * No further instances allowed + */ + private T_658Ref() { + super("t_658_ref", org.jooq.test.ase.generatedclasses.Dbo.DBO); + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getReferences() { + return java.util.Arrays.>asList(); + } +} diff --git a/jOOQ-test/src/org/jooq/test/ase/generatedclasses/tables/T_725LobTest.java b/jOOQ-test/src/org/jooq/test/ase/generatedclasses/tables/T_725LobTest.java new file mode 100644 index 00000000000..4109b0b64ad --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/ase/generatedclasses/tables/T_725LobTest.java @@ -0,0 +1,60 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.ase.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class T_725LobTest extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = -263861228; + + /** + * The singleton instance of dbo.t_725_lob_test + */ + public static final org.jooq.test.ase.generatedclasses.tables.T_725LobTest T_725_LOB_TEST = new org.jooq.test.ase.generatedclasses.tables.T_725LobTest(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.ase.generatedclasses.tables.records.T_725LobTestRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public static final org.jooq.TableField ID = createField("id", org.jooq.impl.SQLDataType.INTEGER, T_725_LOB_TEST); + + /** + * An uncommented item + */ + public static final org.jooq.TableField LOB = createField("lob", org.jooq.impl.SQLDataType.VARBINARY, T_725_LOB_TEST); + + /** + * No further instances allowed + */ + private T_725LobTest() { + super("t_725_lob_test", org.jooq.test.ase.generatedclasses.Dbo.DBO); + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.test.ase.generatedclasses.Keys.T_725_LOB_TEST__PK_T_725_LOB_TEST; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.test.ase.generatedclasses.Keys.T_725_LOB_TEST__PK_T_725_LOB_TEST); + } +} diff --git a/jOOQ-test/src/org/jooq/test/ase/generatedclasses/tables/T_785.java b/jOOQ-test/src/org/jooq/test/ase/generatedclasses/tables/T_785.java new file mode 100644 index 00000000000..ba424f397fd --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/ase/generatedclasses/tables/T_785.java @@ -0,0 +1,52 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.ase.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class T_785 extends org.jooq.impl.TableImpl { + + private static final long serialVersionUID = 732476649; + + /** + * The singleton instance of dbo.t_785 + */ + public static final org.jooq.test.ase.generatedclasses.tables.T_785 T_785 = new org.jooq.test.ase.generatedclasses.tables.T_785(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.ase.generatedclasses.tables.records.T_785Record.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + */ + public static final org.jooq.TableField ID = createField("ID", org.jooq.impl.SQLDataType.INTEGER, T_785); + + /** + * An uncommented item + */ + public static final org.jooq.TableField NAME = createField("NAME", org.jooq.impl.SQLDataType.VARCHAR, T_785); + + /** + * An uncommented item + */ + public static final org.jooq.TableField VALUE = createField("VALUE", org.jooq.impl.SQLDataType.VARCHAR, T_785); + + /** + * No further instances allowed + */ + private T_785() { + super("t_785", org.jooq.test.ase.generatedclasses.Dbo.DBO); + } +} diff --git a/jOOQ-test/src/org/jooq/test/ase/generatedclasses/tables/T_986_1.java b/jOOQ-test/src/org/jooq/test/ase/generatedclasses/tables/T_986_1.java new file mode 100644 index 00000000000..2bfbed0985a --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/ase/generatedclasses/tables/T_986_1.java @@ -0,0 +1,55 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.ase.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class T_986_1 extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = 1068883896; + + /** + * The singleton instance of dbo.t_986_1 + */ + public static final org.jooq.test.ase.generatedclasses.tables.T_986_1 T_986_1 = new org.jooq.test.ase.generatedclasses.tables.T_986_1(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.ase.generatedclasses.tables.records.T_986_1Record.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public static final org.jooq.TableField REF = createField("REF", org.jooq.impl.SQLDataType.INTEGER, T_986_1); + + /** + * No further instances allowed + */ + private T_986_1() { + super("t_986_1", org.jooq.test.ase.generatedclasses.Dbo.DBO); + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.test.ase.generatedclasses.Keys.T_986_1__PK_986; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.test.ase.generatedclasses.Keys.T_986_1__PK_986); + } +} diff --git a/jOOQ-test/src/org/jooq/test/ase/generatedclasses/tables/T_986_2.java b/jOOQ-test/src/org/jooq/test/ase/generatedclasses/tables/T_986_2.java new file mode 100644 index 00000000000..33f50c323dc --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/ase/generatedclasses/tables/T_986_2.java @@ -0,0 +1,55 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.ase.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class T_986_2 extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = -1677099432; + + /** + * The singleton instance of dbo.t_986_2 + */ + public static final org.jooq.test.ase.generatedclasses.tables.T_986_2 T_986_2 = new org.jooq.test.ase.generatedclasses.tables.T_986_2(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.ase.generatedclasses.tables.records.T_986_2Record.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public static final org.jooq.TableField REF = createField("REF", org.jooq.impl.SQLDataType.INTEGER, T_986_2); + + /** + * No further instances allowed + */ + private T_986_2() { + super("t_986_2", org.jooq.test.ase.generatedclasses.Dbo.DBO); + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.test.ase.generatedclasses.Keys.T_986_2__PK_986; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.test.ase.generatedclasses.Keys.T_986_2__PK_986); + } +} diff --git a/jOOQ-test/src/org/jooq/test/ase/generatedclasses/tables/VAuthor.java b/jOOQ-test/src/org/jooq/test/ase/generatedclasses/tables/VAuthor.java new file mode 100644 index 00000000000..a9ad8cc6910 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/ase/generatedclasses/tables/VAuthor.java @@ -0,0 +1,67 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.ase.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class VAuthor extends org.jooq.impl.TableImpl { + + private static final long serialVersionUID = -611112902; + + /** + * The singleton instance of dbo.v_author + */ + public static final org.jooq.test.ase.generatedclasses.tables.VAuthor V_AUTHOR = new org.jooq.test.ase.generatedclasses.tables.VAuthor(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.ase.generatedclasses.tables.records.VAuthorRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + */ + public static final org.jooq.TableField ID = createField("id", org.jooq.impl.SQLDataType.INTEGER, V_AUTHOR); + + /** + * An uncommented item + */ + public static final org.jooq.TableField FIRST_NAME = createField("first_name", org.jooq.impl.SQLDataType.VARCHAR, V_AUTHOR); + + /** + * An uncommented item + */ + public static final org.jooq.TableField LAST_NAME = createField("last_name", org.jooq.impl.SQLDataType.VARCHAR, V_AUTHOR); + + /** + * An uncommented item + */ + public static final org.jooq.TableField DATE_OF_BIRTH = createField("date_of_birth", org.jooq.impl.SQLDataType.DATE, V_AUTHOR); + + /** + * An uncommented item + */ + public static final org.jooq.TableField YEAR_OF_BIRTH = createField("year_of_birth", org.jooq.impl.SQLDataType.INTEGER, V_AUTHOR); + + /** + * An uncommented item + */ + public static final org.jooq.TableField ADDRESS = createField("address", org.jooq.impl.SQLDataType.VARCHAR, V_AUTHOR); + + /** + * No further instances allowed + */ + private VAuthor() { + super("v_author", org.jooq.test.ase.generatedclasses.Dbo.DBO); + } +} diff --git a/jOOQ-test/src/org/jooq/test/ase/generatedclasses/tables/VBook.java b/jOOQ-test/src/org/jooq/test/ase/generatedclasses/tables/VBook.java new file mode 100644 index 00000000000..a8148ad579c --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/ase/generatedclasses/tables/VBook.java @@ -0,0 +1,82 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.ase.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class VBook extends org.jooq.impl.TableImpl { + + private static final long serialVersionUID = -2134968844; + + /** + * The singleton instance of dbo.v_book + */ + public static final org.jooq.test.ase.generatedclasses.tables.VBook V_BOOK = new org.jooq.test.ase.generatedclasses.tables.VBook(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.ase.generatedclasses.tables.records.VBookRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + */ + public static final org.jooq.TableField ID = createField("id", org.jooq.impl.SQLDataType.INTEGER, V_BOOK); + + /** + * An uncommented item + */ + public static final org.jooq.TableField AUTHOR_ID = createField("author_id", org.jooq.impl.SQLDataType.INTEGER, V_BOOK); + + /** + * An uncommented item + */ + public static final org.jooq.TableField CO_AUTHOR_ID = createField("co_author_id", org.jooq.impl.SQLDataType.INTEGER, V_BOOK); + + /** + * An uncommented item + */ + public static final org.jooq.TableField DETAILS_ID = createField("details_id", org.jooq.impl.SQLDataType.INTEGER, V_BOOK); + + /** + * An uncommented item + */ + public static final org.jooq.TableField TITLE = createField("title", org.jooq.impl.SQLDataType.VARCHAR, V_BOOK); + + /** + * An uncommented item + */ + public static final org.jooq.TableField PUBLISHED_IN = createField("published_in", org.jooq.impl.SQLDataType.INTEGER, V_BOOK); + + /** + * An uncommented item + */ + public static final org.jooq.TableField LANGUAGE_ID = createField("language_id", org.jooq.impl.SQLDataType.INTEGER, V_BOOK); + + /** + * An uncommented item + */ + public static final org.jooq.TableField CONTENT_TEXT = createField("content_text", org.jooq.impl.SQLDataType.LONGVARCHAR, V_BOOK); + + /** + * An uncommented item + */ + public static final org.jooq.TableField CONTENT_PDF = createField("content_pdf", org.jooq.impl.SQLDataType.BINARY, V_BOOK); + + /** + * No further instances allowed + */ + private VBook() { + super("v_book", org.jooq.test.ase.generatedclasses.Dbo.DBO); + } +} diff --git a/jOOQ-test/src/org/jooq/test/ase/generatedclasses/tables/VLibrary.java b/jOOQ-test/src/org/jooq/test/ase/generatedclasses/tables/VLibrary.java new file mode 100644 index 00000000000..ec319f19d60 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/ase/generatedclasses/tables/VLibrary.java @@ -0,0 +1,47 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.ase.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class VLibrary extends org.jooq.impl.TableImpl { + + private static final long serialVersionUID = -1138187802; + + /** + * The singleton instance of dbo.v_library + */ + public static final org.jooq.test.ase.generatedclasses.tables.VLibrary V_LIBRARY = new org.jooq.test.ase.generatedclasses.tables.VLibrary(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.ase.generatedclasses.tables.records.VLibraryRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + */ + public static final org.jooq.TableField AUTHOR = createField("author", org.jooq.impl.SQLDataType.VARCHAR, V_LIBRARY); + + /** + * An uncommented item + */ + public static final org.jooq.TableField TITLE = createField("title", org.jooq.impl.SQLDataType.VARCHAR, V_LIBRARY); + + /** + * No further instances allowed + */ + private VLibrary() { + super("v_library", org.jooq.test.ase.generatedclasses.Dbo.DBO); + } +} diff --git a/jOOQ-test/src/org/jooq/test/ase/generatedclasses/tables/XTestCase_64_69.java b/jOOQ-test/src/org/jooq/test/ase/generatedclasses/tables/XTestCase_64_69.java new file mode 100644 index 00000000000..57a2dcbbd7f --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/ase/generatedclasses/tables/XTestCase_64_69.java @@ -0,0 +1,72 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.ase.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class XTestCase_64_69 extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = 1009416653; + + /** + * The singleton instance of dbo.x_test_case_64_69 + */ + public static final org.jooq.test.ase.generatedclasses.tables.XTestCase_64_69 X_TEST_CASE_64_69 = new org.jooq.test.ase.generatedclasses.tables.XTestCase_64_69(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.ase.generatedclasses.tables.records.XTestCase_64_69Record.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public static final org.jooq.TableField ID = createField("ID", org.jooq.impl.SQLDataType.INTEGER, X_TEST_CASE_64_69); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT x_test_case_64_69__fk_x_test_case_64_69a
+	 * FOREIGN KEY (UNUSED_ID)
+	 * REFERENCES dbo.x_unused (ID)
+	 * 
+ */ + public static final org.jooq.TableField UNUSED_ID = createField("UNUSED_ID", org.jooq.impl.SQLDataType.INTEGER, X_TEST_CASE_64_69); + + /** + * No further instances allowed + */ + private XTestCase_64_69() { + super("x_test_case_64_69", org.jooq.test.ase.generatedclasses.Dbo.DBO); + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.test.ase.generatedclasses.Keys.X_TEST_CASE_64_69__PK_X_TEST_CASE_64_69; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.test.ase.generatedclasses.Keys.X_TEST_CASE_64_69__PK_X_TEST_CASE_64_69); + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getReferences() { + return java.util.Arrays.>asList(org.jooq.test.ase.generatedclasses.Keys.X_TEST_CASE_64_69__FK_X_TEST_CASE_64_69A); + } +} diff --git a/jOOQ-test/src/org/jooq/test/ase/generatedclasses/tables/XTestCase_71.java b/jOOQ-test/src/org/jooq/test/ase/generatedclasses/tables/XTestCase_71.java new file mode 100644 index 00000000000..f7270ee2aaa --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/ase/generatedclasses/tables/XTestCase_71.java @@ -0,0 +1,72 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.ase.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class XTestCase_71 extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = -470525317; + + /** + * The singleton instance of dbo.x_test_case_71 + */ + public static final org.jooq.test.ase.generatedclasses.tables.XTestCase_71 X_TEST_CASE_71 = new org.jooq.test.ase.generatedclasses.tables.XTestCase_71(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.ase.generatedclasses.tables.records.XTestCase_71Record.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public static final org.jooq.TableField ID = createField("ID", org.jooq.impl.SQLDataType.INTEGER, X_TEST_CASE_71); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT x_test_case_71__fk_x_test_case_71
+	 * FOREIGN KEY (TEST_CASE_64_69_ID)
+	 * REFERENCES dbo.x_test_case_64_69 (ID)
+	 * 
+ */ + public static final org.jooq.TableField TEST_CASE_64_69_ID = createField("TEST_CASE_64_69_ID", org.jooq.impl.SQLDataType.INTEGER, X_TEST_CASE_71); + + /** + * No further instances allowed + */ + private XTestCase_71() { + super("x_test_case_71", org.jooq.test.ase.generatedclasses.Dbo.DBO); + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.test.ase.generatedclasses.Keys.X_TEST_CASE_71__PK_X_TEST_CASE_71; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.test.ase.generatedclasses.Keys.X_TEST_CASE_71__PK_X_TEST_CASE_71); + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getReferences() { + return java.util.Arrays.>asList(org.jooq.test.ase.generatedclasses.Keys.X_TEST_CASE_71__FK_X_TEST_CASE_71); + } +} diff --git a/jOOQ-test/src/org/jooq/test/ase/generatedclasses/tables/XTestCase_85.java b/jOOQ-test/src/org/jooq/test/ase/generatedclasses/tables/XTestCase_85.java new file mode 100644 index 00000000000..ae28b81bd51 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/ase/generatedclasses/tables/XTestCase_85.java @@ -0,0 +1,83 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.ase.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class XTestCase_85 extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = 1128929296; + + /** + * The singleton instance of dbo.x_test_case_85 + */ + public static final org.jooq.test.ase.generatedclasses.tables.XTestCase_85 X_TEST_CASE_85 = new org.jooq.test.ase.generatedclasses.tables.XTestCase_85(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.ase.generatedclasses.tables.records.XTestCase_85Record.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public static final org.jooq.TableField ID = createField("id", org.jooq.impl.SQLDataType.INTEGER, X_TEST_CASE_85); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT x_test_case_85__fk_x_test_case_85
+	 * FOREIGN KEY (x_unused_id, x_unused_name)
+	 * REFERENCES dbo.x_unused (ID, NAME)
+	 * 
+ */ + public static final org.jooq.TableField X_UNUSED_ID = createField("x_unused_id", org.jooq.impl.SQLDataType.INTEGER, X_TEST_CASE_85); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT x_test_case_85__fk_x_test_case_85
+	 * FOREIGN KEY (x_unused_id, x_unused_name)
+	 * REFERENCES dbo.x_unused (ID, NAME)
+	 * 
+ */ + public static final org.jooq.TableField X_UNUSED_NAME = createField("x_unused_name", org.jooq.impl.SQLDataType.VARCHAR, X_TEST_CASE_85); + + /** + * No further instances allowed + */ + private XTestCase_85() { + super("x_test_case_85", org.jooq.test.ase.generatedclasses.Dbo.DBO); + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.test.ase.generatedclasses.Keys.X_TEST_CASE_85__PK_X_TEST_CASE_85; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.test.ase.generatedclasses.Keys.X_TEST_CASE_85__PK_X_TEST_CASE_85); + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getReferences() { + return java.util.Arrays.>asList(org.jooq.test.ase.generatedclasses.Keys.X_TEST_CASE_85__FK_X_TEST_CASE_85); + } +} diff --git a/jOOQ-test/src/org/jooq/test/ase/generatedclasses/tables/XUnused.java b/jOOQ-test/src/org/jooq/test/ase/generatedclasses/tables/XUnused.java new file mode 100644 index 00000000000..1e3ed4e16f4 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/ase/generatedclasses/tables/XUnused.java @@ -0,0 +1,140 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.ase.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class XUnused extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = 695652876; + + /** + * The singleton instance of dbo.x_unused + */ + public static final org.jooq.test.ase.generatedclasses.tables.XUnused X_UNUSED = new org.jooq.test.ase.generatedclasses.tables.XUnused(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.ase.generatedclasses.tables.records.XUnusedRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public static final org.jooq.TableField ID = createField("ID", org.jooq.impl.SQLDataType.INTEGER, X_UNUSED); + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public static final org.jooq.TableField NAME = createField("NAME", org.jooq.impl.SQLDataType.VARCHAR, X_UNUSED); + + /** + * An uncommented item + */ + public static final org.jooq.TableField BIG_INTEGER = createField("BIG_INTEGER", org.jooq.impl.SQLDataType.DECIMAL_INTEGER, X_UNUSED); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT x_unused__fk_x_unused_self
+	 * FOREIGN KEY (ID_REF, NAME_REF)
+	 * REFERENCES dbo.x_unused (ID, NAME)
+	 * 
+ */ + public static final org.jooq.TableField ID_REF = createField("ID_REF", org.jooq.impl.SQLDataType.INTEGER, X_UNUSED); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT x_unused__fk_x_unused_self
+	 * FOREIGN KEY (ID_REF, NAME_REF)
+	 * REFERENCES dbo.x_unused (ID, NAME)
+	 * 
+ */ + public static final org.jooq.TableField NAME_REF = createField("NAME_REF", org.jooq.impl.SQLDataType.VARCHAR, X_UNUSED); + + /** + * An uncommented item + */ + public static final org.jooq.TableField CLASS = createField("CLASS", org.jooq.impl.SQLDataType.INTEGER, X_UNUSED); + + /** + * An uncommented item + */ + public static final org.jooq.TableField FIELDS = createField("FIELDS", org.jooq.impl.SQLDataType.INTEGER, X_UNUSED); + + /** + * An uncommented item + */ + public static final org.jooq.TableField CONFIGURATION = createField("CONFIGURATION", org.jooq.impl.SQLDataType.INTEGER, X_UNUSED); + + /** + * An uncommented item + */ + public static final org.jooq.TableField U_D_T = createField("U_D_T", org.jooq.impl.SQLDataType.INTEGER, X_UNUSED); + + /** + * An uncommented item + */ + public static final org.jooq.TableField META_DATA = createField("META_DATA", org.jooq.impl.SQLDataType.INTEGER, X_UNUSED); + + /** + * An uncommented item + */ + public static final org.jooq.TableField TYPE0 = createField("TYPE0", org.jooq.impl.SQLDataType.INTEGER, X_UNUSED); + + /** + * An uncommented item + */ + public static final org.jooq.TableField PRIMARY_KEY = createField("PRIMARY_KEY", org.jooq.impl.SQLDataType.INTEGER, X_UNUSED); + + /** + * An uncommented item + */ + public static final org.jooq.TableField PRIMARYKEY = createField("PRIMARYKEY", org.jooq.impl.SQLDataType.INTEGER, X_UNUSED); + + /** + * An uncommented item + */ + public static final org.jooq.TableField FIELD_737 = createField("FIELD 737", org.jooq.impl.SQLDataType.DECIMAL, X_UNUSED); + + /** + * No further instances allowed + */ + private XUnused() { + super("x_unused", org.jooq.test.ase.generatedclasses.Dbo.DBO); + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.test.ase.generatedclasses.Keys.X_UNUSED__PK_X_UNUSED; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.test.ase.generatedclasses.Keys.X_UNUSED__PK_X_UNUSED, org.jooq.test.ase.generatedclasses.Keys.X_UNUSED__UK_X_UNUSED_ID); + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getReferences() { + return java.util.Arrays.>asList(org.jooq.test.ase.generatedclasses.Keys.X_UNUSED__FK_X_UNUSED_SELF); + } +} diff --git a/jOOQ-test/src/org/jooq/test/ase/generatedclasses/tables/records/TAuthorRecord.java b/jOOQ-test/src/org/jooq/test/ase/generatedclasses/tables/records/TAuthorRecord.java new file mode 100644 index 00000000000..49209e44066 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/ase/generatedclasses/tables/records/TAuthorRecord.java @@ -0,0 +1,131 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.ase.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + */ +public class TAuthorRecord extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = -179599810; + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setId(java.lang.Integer value) { + setValue(org.jooq.test.ase.generatedclasses.tables.TAuthor.ID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.lang.Integer getId() { + return getValue(org.jooq.test.ase.generatedclasses.tables.TAuthor.ID); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.util.List fetchTBookListByAuthorId() { + return create() + .selectFrom(org.jooq.test.ase.generatedclasses.tables.TBook.T_BOOK) + .where(org.jooq.test.ase.generatedclasses.tables.TBook.AUTHOR_ID.equal(getValue(org.jooq.test.ase.generatedclasses.tables.TAuthor.ID))) + .fetch(); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.util.List fetchTBookListByCoAuthorId() { + return create() + .selectFrom(org.jooq.test.ase.generatedclasses.tables.TBook.T_BOOK) + .where(org.jooq.test.ase.generatedclasses.tables.TBook.CO_AUTHOR_ID.equal(getValue(org.jooq.test.ase.generatedclasses.tables.TAuthor.ID))) + .fetch(); + } + + /** + * An uncommented item + */ + public void setFirstName(java.lang.String value) { + setValue(org.jooq.test.ase.generatedclasses.tables.TAuthor.FIRST_NAME, value); + } + + /** + * An uncommented item + */ + public java.lang.String getFirstName() { + return getValue(org.jooq.test.ase.generatedclasses.tables.TAuthor.FIRST_NAME); + } + + /** + * An uncommented item + */ + public void setLastName(java.lang.String value) { + setValue(org.jooq.test.ase.generatedclasses.tables.TAuthor.LAST_NAME, value); + } + + /** + * An uncommented item + */ + public java.lang.String getLastName() { + return getValue(org.jooq.test.ase.generatedclasses.tables.TAuthor.LAST_NAME); + } + + /** + * An uncommented item + */ + public void setDateOfBirth(java.sql.Date value) { + setValue(org.jooq.test.ase.generatedclasses.tables.TAuthor.DATE_OF_BIRTH, value); + } + + /** + * An uncommented item + */ + public java.sql.Date getDateOfBirth() { + return getValue(org.jooq.test.ase.generatedclasses.tables.TAuthor.DATE_OF_BIRTH); + } + + /** + * An uncommented item + */ + public void setYearOfBirth(java.lang.Integer value) { + setValue(org.jooq.test.ase.generatedclasses.tables.TAuthor.YEAR_OF_BIRTH, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getYearOfBirth() { + return getValue(org.jooq.test.ase.generatedclasses.tables.TAuthor.YEAR_OF_BIRTH); + } + + /** + * An uncommented item + */ + public void setAddress(java.lang.String value) { + setValue(org.jooq.test.ase.generatedclasses.tables.TAuthor.ADDRESS, value); + } + + /** + * An uncommented item + */ + public java.lang.String getAddress() { + return getValue(org.jooq.test.ase.generatedclasses.tables.TAuthor.ADDRESS); + } + + /** + * Create a detached TAuthorRecord + */ + public TAuthorRecord() { + super(org.jooq.test.ase.generatedclasses.tables.TAuthor.T_AUTHOR); + } +} diff --git a/jOOQ-test/src/org/jooq/test/ase/generatedclasses/tables/records/TBookRecord.java b/jOOQ-test/src/org/jooq/test/ase/generatedclasses/tables/records/TBookRecord.java new file mode 100644 index 00000000000..28047a35c9a --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/ase/generatedclasses/tables/records/TBookRecord.java @@ -0,0 +1,229 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.ase.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + */ +public class TBookRecord extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = -1525056889; + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setId(java.lang.Integer value) { + setValue(org.jooq.test.ase.generatedclasses.tables.TBook.ID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.lang.Integer getId() { + return getValue(org.jooq.test.ase.generatedclasses.tables.TBook.ID); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.util.List fetchTBookToBookStoreList() { + return create() + .selectFrom(org.jooq.test.ase.generatedclasses.tables.TBookToBookStore.T_BOOK_TO_BOOK_STORE) + .where(org.jooq.test.ase.generatedclasses.tables.TBookToBookStore.BOOK_ID.equal(getValue(org.jooq.test.ase.generatedclasses.tables.TBook.ID))) + .fetch(); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT t_book__fk_t_book_author_id
+	 * FOREIGN KEY (author_id)
+	 * REFERENCES dbo.t_author (id)
+	 * 
+ */ + public void setAuthorId(java.lang.Integer value) { + setValue(org.jooq.test.ase.generatedclasses.tables.TBook.AUTHOR_ID, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT t_book__fk_t_book_author_id
+	 * FOREIGN KEY (author_id)
+	 * REFERENCES dbo.t_author (id)
+	 * 
+ */ + public java.lang.Integer getAuthorId() { + return getValue(org.jooq.test.ase.generatedclasses.tables.TBook.AUTHOR_ID); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT t_book__fk_t_book_author_id
+	 * FOREIGN KEY (author_id)
+	 * REFERENCES dbo.t_author (id)
+	 * 
+ */ + public org.jooq.test.ase.generatedclasses.tables.records.TAuthorRecord fetchTAuthorByAuthorId() { + return create() + .selectFrom(org.jooq.test.ase.generatedclasses.tables.TAuthor.T_AUTHOR) + .where(org.jooq.test.ase.generatedclasses.tables.TAuthor.ID.equal(getValue(org.jooq.test.ase.generatedclasses.tables.TBook.AUTHOR_ID))) + .fetchOne(); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT t_book__fk_t_book_co_author_id
+	 * FOREIGN KEY (co_author_id)
+	 * REFERENCES dbo.t_author (id)
+	 * 
+ */ + public void setCoAuthorId(java.lang.Integer value) { + setValue(org.jooq.test.ase.generatedclasses.tables.TBook.CO_AUTHOR_ID, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT t_book__fk_t_book_co_author_id
+	 * FOREIGN KEY (co_author_id)
+	 * REFERENCES dbo.t_author (id)
+	 * 
+ */ + public java.lang.Integer getCoAuthorId() { + return getValue(org.jooq.test.ase.generatedclasses.tables.TBook.CO_AUTHOR_ID); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT t_book__fk_t_book_co_author_id
+	 * FOREIGN KEY (co_author_id)
+	 * REFERENCES dbo.t_author (id)
+	 * 
+ */ + public org.jooq.test.ase.generatedclasses.tables.records.TAuthorRecord fetchTAuthorByCoAuthorId() { + return create() + .selectFrom(org.jooq.test.ase.generatedclasses.tables.TAuthor.T_AUTHOR) + .where(org.jooq.test.ase.generatedclasses.tables.TAuthor.ID.equal(getValue(org.jooq.test.ase.generatedclasses.tables.TBook.CO_AUTHOR_ID))) + .fetchOne(); + } + + /** + * An uncommented item + */ + public void setDetailsId(java.lang.Integer value) { + setValue(org.jooq.test.ase.generatedclasses.tables.TBook.DETAILS_ID, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getDetailsId() { + return getValue(org.jooq.test.ase.generatedclasses.tables.TBook.DETAILS_ID); + } + + /** + * An uncommented item + */ + public void setTitle(java.lang.String value) { + setValue(org.jooq.test.ase.generatedclasses.tables.TBook.TITLE, value); + } + + /** + * An uncommented item + */ + public java.lang.String getTitle() { + return getValue(org.jooq.test.ase.generatedclasses.tables.TBook.TITLE); + } + + /** + * An uncommented item + */ + public void setPublishedIn(java.lang.Integer value) { + setValue(org.jooq.test.ase.generatedclasses.tables.TBook.PUBLISHED_IN, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getPublishedIn() { + return getValue(org.jooq.test.ase.generatedclasses.tables.TBook.PUBLISHED_IN); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT t_book__fk_t_book_language_id
+	 * FOREIGN KEY (language_id)
+	 * REFERENCES dbo.t_language (id)
+	 * 
+ */ + public void setLanguageId(org.jooq.test.ase.generatedclasses.enums.TLanguage value) { + setValue(org.jooq.test.ase.generatedclasses.tables.TBook.LANGUAGE_ID, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT t_book__fk_t_book_language_id
+	 * FOREIGN KEY (language_id)
+	 * REFERENCES dbo.t_language (id)
+	 * 
+ */ + public org.jooq.test.ase.generatedclasses.enums.TLanguage getLanguageId() { + return getValue(org.jooq.test.ase.generatedclasses.tables.TBook.LANGUAGE_ID); + } + + /** + * An uncommented item + */ + public void setContentText(java.lang.String value) { + setValue(org.jooq.test.ase.generatedclasses.tables.TBook.CONTENT_TEXT, value); + } + + /** + * An uncommented item + */ + public java.lang.String getContentText() { + return getValue(org.jooq.test.ase.generatedclasses.tables.TBook.CONTENT_TEXT); + } + + /** + * An uncommented item + */ + public void setContentPdf(byte[] value) { + setValue(org.jooq.test.ase.generatedclasses.tables.TBook.CONTENT_PDF, value); + } + + /** + * An uncommented item + */ + public byte[] getContentPdf() { + return getValue(org.jooq.test.ase.generatedclasses.tables.TBook.CONTENT_PDF); + } + + /** + * Create a detached TBookRecord + */ + public TBookRecord() { + super(org.jooq.test.ase.generatedclasses.tables.TBook.T_BOOK); + } +} diff --git a/jOOQ-test/src/org/jooq/test/ase/generatedclasses/tables/records/TBookStoreRecord.java b/jOOQ-test/src/org/jooq/test/ase/generatedclasses/tables/records/TBookStoreRecord.java new file mode 100644 index 00000000000..610db085ac1 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/ase/generatedclasses/tables/records/TBookStoreRecord.java @@ -0,0 +1,43 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.ase.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + */ +public class TBookStoreRecord extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = -905138325; + + /** + * An uncommented item + */ + public void setName(java.lang.String value) { + setValue(org.jooq.test.ase.generatedclasses.tables.TBookStore.NAME, value); + } + + /** + * An uncommented item + */ + public java.lang.String getName() { + return getValue(org.jooq.test.ase.generatedclasses.tables.TBookStore.NAME); + } + + /** + * An uncommented item + */ + public java.util.List fetchTBookToBookStoreList() { + return create() + .selectFrom(org.jooq.test.ase.generatedclasses.tables.TBookToBookStore.T_BOOK_TO_BOOK_STORE) + .where(org.jooq.test.ase.generatedclasses.tables.TBookToBookStore.BOOK_STORE_NAME.equal(getValue(org.jooq.test.ase.generatedclasses.tables.TBookStore.NAME))) + .fetch(); + } + + /** + * Create a detached TBookStoreRecord + */ + public TBookStoreRecord() { + super(org.jooq.test.ase.generatedclasses.tables.TBookStore.T_BOOK_STORE); + } +} diff --git a/jOOQ-test/src/org/jooq/test/ase/generatedclasses/tables/records/TBookToBookStoreRecord.java b/jOOQ-test/src/org/jooq/test/ase/generatedclasses/tables/records/TBookToBookStoreRecord.java new file mode 100644 index 00000000000..7016c66ae86 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/ase/generatedclasses/tables/records/TBookToBookStoreRecord.java @@ -0,0 +1,129 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.ase.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + */ +public class TBookToBookStoreRecord extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = -1514118909; + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT t_book_to_book_store__fk_b2bs_bs_name
+	 * FOREIGN KEY (book_store_name)
+	 * REFERENCES dbo.t_book_store (name)
+	 * 
+ */ + public void setBookStoreName(java.lang.String value) { + setValue(org.jooq.test.ase.generatedclasses.tables.TBookToBookStore.BOOK_STORE_NAME, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT t_book_to_book_store__fk_b2bs_bs_name
+	 * FOREIGN KEY (book_store_name)
+	 * REFERENCES dbo.t_book_store (name)
+	 * 
+ */ + public java.lang.String getBookStoreName() { + return getValue(org.jooq.test.ase.generatedclasses.tables.TBookToBookStore.BOOK_STORE_NAME); + } + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT t_book_to_book_store__fk_b2bs_bs_name
+	 * FOREIGN KEY (book_store_name)
+	 * REFERENCES dbo.t_book_store (name)
+	 * 
+ */ + public org.jooq.test.ase.generatedclasses.tables.records.TBookStoreRecord fetchTBookStore() { + return create() + .selectFrom(org.jooq.test.ase.generatedclasses.tables.TBookStore.T_BOOK_STORE) + .where(org.jooq.test.ase.generatedclasses.tables.TBookStore.NAME.equal(getValue(org.jooq.test.ase.generatedclasses.tables.TBookToBookStore.BOOK_STORE_NAME))) + .fetchOne(); + } + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT t_book_to_book_store__fk_b2bs_b_id
+	 * FOREIGN KEY (book_id)
+	 * REFERENCES dbo.t_book (id)
+	 * 
+ */ + public void setBookId(java.lang.Integer value) { + setValue(org.jooq.test.ase.generatedclasses.tables.TBookToBookStore.BOOK_ID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT t_book_to_book_store__fk_b2bs_b_id
+	 * FOREIGN KEY (book_id)
+	 * REFERENCES dbo.t_book (id)
+	 * 
+ */ + public java.lang.Integer getBookId() { + return getValue(org.jooq.test.ase.generatedclasses.tables.TBookToBookStore.BOOK_ID); + } + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT t_book_to_book_store__fk_b2bs_b_id
+	 * FOREIGN KEY (book_id)
+	 * REFERENCES dbo.t_book (id)
+	 * 
+ */ + public org.jooq.test.ase.generatedclasses.tables.records.TBookRecord fetchTBook() { + return create() + .selectFrom(org.jooq.test.ase.generatedclasses.tables.TBook.T_BOOK) + .where(org.jooq.test.ase.generatedclasses.tables.TBook.ID.equal(getValue(org.jooq.test.ase.generatedclasses.tables.TBookToBookStore.BOOK_ID))) + .fetchOne(); + } + + /** + * An uncommented item + */ + public void setStock(java.lang.Integer value) { + setValue(org.jooq.test.ase.generatedclasses.tables.TBookToBookStore.STOCK, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getStock() { + return getValue(org.jooq.test.ase.generatedclasses.tables.TBookToBookStore.STOCK); + } + + /** + * Create a detached TBookToBookStoreRecord + */ + public TBookToBookStoreRecord() { + super(org.jooq.test.ase.generatedclasses.tables.TBookToBookStore.T_BOOK_TO_BOOK_STORE); + } +} diff --git a/jOOQ-test/src/org/jooq/test/ase/generatedclasses/tables/records/TBooleansRecord.java b/jOOQ-test/src/org/jooq/test/ase/generatedclasses/tables/records/TBooleansRecord.java new file mode 100644 index 00000000000..e872cbf2451 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/ase/generatedclasses/tables/records/TBooleansRecord.java @@ -0,0 +1,177 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.ase.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + */ +public class TBooleansRecord extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = 188549929; + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setId(java.lang.Integer value) { + setValue(org.jooq.test.ase.generatedclasses.tables.TBooleans.ID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.lang.Integer getId() { + return getValue(org.jooq.test.ase.generatedclasses.tables.TBooleans.ID); + } + + /** + * An uncommented item + */ + public void setOneZero(org.jooq.test._.converters.Boolean_10 value) { + setValue(org.jooq.test.ase.generatedclasses.tables.TBooleans.ONE_ZERO, value); + } + + /** + * An uncommented item + */ + public org.jooq.test._.converters.Boolean_10 getOneZero() { + return getValue(org.jooq.test.ase.generatedclasses.tables.TBooleans.ONE_ZERO); + } + + /** + * An uncommented item + */ + public void setTrueFalseLc(org.jooq.test._.converters.Boolean_TF_LC value) { + setValue(org.jooq.test.ase.generatedclasses.tables.TBooleans.TRUE_FALSE_LC, value); + } + + /** + * An uncommented item + */ + public org.jooq.test._.converters.Boolean_TF_LC getTrueFalseLc() { + return getValue(org.jooq.test.ase.generatedclasses.tables.TBooleans.TRUE_FALSE_LC); + } + + /** + * An uncommented item + */ + public void setTrueFalseUc(org.jooq.test._.converters.Boolean_TF_UC value) { + setValue(org.jooq.test.ase.generatedclasses.tables.TBooleans.TRUE_FALSE_UC, value); + } + + /** + * An uncommented item + */ + public org.jooq.test._.converters.Boolean_TF_UC getTrueFalseUc() { + return getValue(org.jooq.test.ase.generatedclasses.tables.TBooleans.TRUE_FALSE_UC); + } + + /** + * An uncommented item + */ + public void setYesNoLc(org.jooq.test._.converters.Boolean_YES_NO_LC value) { + setValue(org.jooq.test.ase.generatedclasses.tables.TBooleans.YES_NO_LC, value); + } + + /** + * An uncommented item + */ + public org.jooq.test._.converters.Boolean_YES_NO_LC getYesNoLc() { + return getValue(org.jooq.test.ase.generatedclasses.tables.TBooleans.YES_NO_LC); + } + + /** + * An uncommented item + */ + public void setYesNoUc(org.jooq.test._.converters.Boolean_YES_NO_UC value) { + setValue(org.jooq.test.ase.generatedclasses.tables.TBooleans.YES_NO_UC, value); + } + + /** + * An uncommented item + */ + public org.jooq.test._.converters.Boolean_YES_NO_UC getYesNoUc() { + return getValue(org.jooq.test.ase.generatedclasses.tables.TBooleans.YES_NO_UC); + } + + /** + * An uncommented item + */ + public void setYNLc(org.jooq.test._.converters.Boolean_YN_LC value) { + setValue(org.jooq.test.ase.generatedclasses.tables.TBooleans.Y_N_LC, value); + } + + /** + * An uncommented item + */ + public org.jooq.test._.converters.Boolean_YN_LC getYNLc() { + return getValue(org.jooq.test.ase.generatedclasses.tables.TBooleans.Y_N_LC); + } + + /** + * An uncommented item + */ + public void setYNUc(org.jooq.test._.converters.Boolean_YN_UC value) { + setValue(org.jooq.test.ase.generatedclasses.tables.TBooleans.Y_N_UC, value); + } + + /** + * An uncommented item + */ + public org.jooq.test._.converters.Boolean_YN_UC getYNUc() { + return getValue(org.jooq.test.ase.generatedclasses.tables.TBooleans.Y_N_UC); + } + + /** + * An uncommented item + */ + public void setVcBoolean(java.lang.Boolean value) { + setValue(org.jooq.test.ase.generatedclasses.tables.TBooleans.VC_BOOLEAN, value); + } + + /** + * An uncommented item + */ + public java.lang.Boolean getVcBoolean() { + return getValue(org.jooq.test.ase.generatedclasses.tables.TBooleans.VC_BOOLEAN); + } + + /** + * An uncommented item + */ + public void setCBoolean(java.lang.Boolean value) { + setValue(org.jooq.test.ase.generatedclasses.tables.TBooleans.C_BOOLEAN, value); + } + + /** + * An uncommented item + */ + public java.lang.Boolean getCBoolean() { + return getValue(org.jooq.test.ase.generatedclasses.tables.TBooleans.C_BOOLEAN); + } + + /** + * An uncommented item + */ + public void setNBoolean(java.lang.Boolean value) { + setValue(org.jooq.test.ase.generatedclasses.tables.TBooleans.N_BOOLEAN, value); + } + + /** + * An uncommented item + */ + public java.lang.Boolean getNBoolean() { + return getValue(org.jooq.test.ase.generatedclasses.tables.TBooleans.N_BOOLEAN); + } + + /** + * Create a detached TBooleansRecord + */ + public TBooleansRecord() { + super(org.jooq.test.ase.generatedclasses.tables.TBooleans.T_BOOLEANS); + } +} diff --git a/jOOQ-test/src/org/jooq/test/ase/generatedclasses/tables/records/TDatesRecord.java b/jOOQ-test/src/org/jooq/test/ase/generatedclasses/tables/records/TDatesRecord.java new file mode 100644 index 00000000000..c1d76ca22e1 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/ase/generatedclasses/tables/records/TDatesRecord.java @@ -0,0 +1,107 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.ase.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + */ +public class TDatesRecord extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = 690713213; + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setId(java.lang.Integer value) { + setValue(org.jooq.test.ase.generatedclasses.tables.TDates.ID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.lang.Integer getId() { + return getValue(org.jooq.test.ase.generatedclasses.tables.TDates.ID); + } + + /** + * An uncommented item + */ + public void setD(java.sql.Date value) { + setValue(org.jooq.test.ase.generatedclasses.tables.TDates.D, value); + } + + /** + * An uncommented item + */ + public java.sql.Date getD() { + return getValue(org.jooq.test.ase.generatedclasses.tables.TDates.D); + } + + /** + * An uncommented item + */ + public void setT(java.sql.Time value) { + setValue(org.jooq.test.ase.generatedclasses.tables.TDates.T, value); + } + + /** + * An uncommented item + */ + public java.sql.Time getT() { + return getValue(org.jooq.test.ase.generatedclasses.tables.TDates.T); + } + + /** + * An uncommented item + */ + public void setTs(java.sql.Timestamp value) { + setValue(org.jooq.test.ase.generatedclasses.tables.TDates.TS, value); + } + + /** + * An uncommented item + */ + public java.sql.Timestamp getTs() { + return getValue(org.jooq.test.ase.generatedclasses.tables.TDates.TS); + } + + /** + * An uncommented item + */ + public void setDInt(java.lang.Integer value) { + setValue(org.jooq.test.ase.generatedclasses.tables.TDates.D_INT, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getDInt() { + return getValue(org.jooq.test.ase.generatedclasses.tables.TDates.D_INT); + } + + /** + * An uncommented item + */ + public void setTsBigint(java.lang.Long value) { + setValue(org.jooq.test.ase.generatedclasses.tables.TDates.TS_BIGINT, value); + } + + /** + * An uncommented item + */ + public java.lang.Long getTsBigint() { + return getValue(org.jooq.test.ase.generatedclasses.tables.TDates.TS_BIGINT); + } + + /** + * Create a detached TDatesRecord + */ + public TDatesRecord() { + super(org.jooq.test.ase.generatedclasses.tables.TDates.T_DATES); + } +} diff --git a/jOOQ-test/src/org/jooq/test/ase/generatedclasses/tables/records/TIdentityPkRecord.java b/jOOQ-test/src/org/jooq/test/ase/generatedclasses/tables/records/TIdentityPkRecord.java new file mode 100644 index 00000000000..c80dcb22be5 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/ase/generatedclasses/tables/records/TIdentityPkRecord.java @@ -0,0 +1,51 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.ase.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + */ +public class TIdentityPkRecord extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = -1826718918; + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setId(java.lang.Integer value) { + setValue(org.jooq.test.ase.generatedclasses.tables.TIdentityPk.ID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.lang.Integer getId() { + return getValue(org.jooq.test.ase.generatedclasses.tables.TIdentityPk.ID); + } + + /** + * An uncommented item + */ + public void setVal(java.lang.Integer value) { + setValue(org.jooq.test.ase.generatedclasses.tables.TIdentityPk.VAL, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getVal() { + return getValue(org.jooq.test.ase.generatedclasses.tables.TIdentityPk.VAL); + } + + /** + * Create a detached TIdentityPkRecord + */ + public TIdentityPkRecord() { + super(org.jooq.test.ase.generatedclasses.tables.TIdentityPk.T_IDENTITY_PK); + } +} diff --git a/jOOQ-test/src/org/jooq/test/ase/generatedclasses/tables/records/TIdentityRecord.java b/jOOQ-test/src/org/jooq/test/ase/generatedclasses/tables/records/TIdentityRecord.java new file mode 100644 index 00000000000..93f2f13d1e9 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/ase/generatedclasses/tables/records/TIdentityRecord.java @@ -0,0 +1,47 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.ase.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + */ +public class TIdentityRecord extends org.jooq.impl.TableRecordImpl { + + private static final long serialVersionUID = 1531905293; + + /** + * An uncommented item + */ + public void setId(java.lang.Integer value) { + setValue(org.jooq.test.ase.generatedclasses.tables.TIdentity.ID, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getId() { + return getValue(org.jooq.test.ase.generatedclasses.tables.TIdentity.ID); + } + + /** + * An uncommented item + */ + public void setVal(java.lang.Integer value) { + setValue(org.jooq.test.ase.generatedclasses.tables.TIdentity.VAL, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getVal() { + return getValue(org.jooq.test.ase.generatedclasses.tables.TIdentity.VAL); + } + + /** + * Create a detached TIdentityRecord + */ + public TIdentityRecord() { + super(org.jooq.test.ase.generatedclasses.tables.TIdentity.T_IDENTITY); + } +} diff --git a/jOOQ-test/src/org/jooq/test/ase/generatedclasses/tables/records/TTriggersRecord.java b/jOOQ-test/src/org/jooq/test/ase/generatedclasses/tables/records/TTriggersRecord.java new file mode 100644 index 00000000000..63e14a29d3e --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/ase/generatedclasses/tables/records/TTriggersRecord.java @@ -0,0 +1,65 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.ase.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + */ +public class TTriggersRecord extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = -1618282789; + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setIdGenerated(java.lang.Integer value) { + setValue(org.jooq.test.ase.generatedclasses.tables.TTriggers.ID_GENERATED, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.lang.Integer getIdGenerated() { + return getValue(org.jooq.test.ase.generatedclasses.tables.TTriggers.ID_GENERATED); + } + + /** + * An uncommented item + */ + public void setId(java.lang.Integer value) { + setValue(org.jooq.test.ase.generatedclasses.tables.TTriggers.ID, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getId() { + return getValue(org.jooq.test.ase.generatedclasses.tables.TTriggers.ID); + } + + /** + * An uncommented item + */ + public void setCounter(java.lang.Integer value) { + setValue(org.jooq.test.ase.generatedclasses.tables.TTriggers.COUNTER, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getCounter() { + return getValue(org.jooq.test.ase.generatedclasses.tables.TTriggers.COUNTER); + } + + /** + * Create a detached TTriggersRecord + */ + public TTriggersRecord() { + super(org.jooq.test.ase.generatedclasses.tables.TTriggers.T_TRIGGERS); + } +} diff --git a/jOOQ-test/src/org/jooq/test/ase/generatedclasses/tables/records/T_639NumbersTableRecord.java b/jOOQ-test/src/org/jooq/test/ase/generatedclasses/tables/records/T_639NumbersTableRecord.java new file mode 100644 index 00000000000..02ff1b350c7 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/ase/generatedclasses/tables/records/T_639NumbersTableRecord.java @@ -0,0 +1,205 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.ase.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + */ +public class T_639NumbersTableRecord extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = -2027471412; + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setId(java.lang.Integer value) { + setValue(org.jooq.test.ase.generatedclasses.tables.T_639NumbersTable.ID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.lang.Integer getId() { + return getValue(org.jooq.test.ase.generatedclasses.tables.T_639NumbersTable.ID); + } + + /** + * An uncommented item + */ + public void setByte(java.lang.Byte value) { + setValue(org.jooq.test.ase.generatedclasses.tables.T_639NumbersTable.BYTE, value); + } + + /** + * An uncommented item + */ + public java.lang.Byte getByte() { + return getValue(org.jooq.test.ase.generatedclasses.tables.T_639NumbersTable.BYTE); + } + + /** + * An uncommented item + */ + public void setShort(java.lang.Short value) { + setValue(org.jooq.test.ase.generatedclasses.tables.T_639NumbersTable.SHORT, value); + } + + /** + * An uncommented item + */ + public java.lang.Short getShort() { + return getValue(org.jooq.test.ase.generatedclasses.tables.T_639NumbersTable.SHORT); + } + + /** + * An uncommented item + */ + public void setInteger(java.lang.Integer value) { + setValue(org.jooq.test.ase.generatedclasses.tables.T_639NumbersTable.INTEGER, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getInteger() { + return getValue(org.jooq.test.ase.generatedclasses.tables.T_639NumbersTable.INTEGER); + } + + /** + * An uncommented item + */ + public void setLong(java.lang.Long value) { + setValue(org.jooq.test.ase.generatedclasses.tables.T_639NumbersTable.LONG, value); + } + + /** + * An uncommented item + */ + public java.lang.Long getLong() { + return getValue(org.jooq.test.ase.generatedclasses.tables.T_639NumbersTable.LONG); + } + + /** + * An uncommented item + */ + public void setByteDecimal(java.lang.Byte value) { + setValue(org.jooq.test.ase.generatedclasses.tables.T_639NumbersTable.BYTE_DECIMAL, value); + } + + /** + * An uncommented item + */ + public java.lang.Byte getByteDecimal() { + return getValue(org.jooq.test.ase.generatedclasses.tables.T_639NumbersTable.BYTE_DECIMAL); + } + + /** + * An uncommented item + */ + public void setShortDecimal(java.lang.Short value) { + setValue(org.jooq.test.ase.generatedclasses.tables.T_639NumbersTable.SHORT_DECIMAL, value); + } + + /** + * An uncommented item + */ + public java.lang.Short getShortDecimal() { + return getValue(org.jooq.test.ase.generatedclasses.tables.T_639NumbersTable.SHORT_DECIMAL); + } + + /** + * An uncommented item + */ + public void setIntegerDecimal(java.lang.Integer value) { + setValue(org.jooq.test.ase.generatedclasses.tables.T_639NumbersTable.INTEGER_DECIMAL, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getIntegerDecimal() { + return getValue(org.jooq.test.ase.generatedclasses.tables.T_639NumbersTable.INTEGER_DECIMAL); + } + + /** + * An uncommented item + */ + public void setLongDecimal(java.lang.Long value) { + setValue(org.jooq.test.ase.generatedclasses.tables.T_639NumbersTable.LONG_DECIMAL, value); + } + + /** + * An uncommented item + */ + public java.lang.Long getLongDecimal() { + return getValue(org.jooq.test.ase.generatedclasses.tables.T_639NumbersTable.LONG_DECIMAL); + } + + /** + * An uncommented item + */ + public void setBigInteger(java.math.BigInteger value) { + setValue(org.jooq.test.ase.generatedclasses.tables.T_639NumbersTable.BIG_INTEGER, value); + } + + /** + * An uncommented item + */ + public java.math.BigInteger getBigInteger() { + return getValue(org.jooq.test.ase.generatedclasses.tables.T_639NumbersTable.BIG_INTEGER); + } + + /** + * An uncommented item + */ + public void setBigDecimal(java.math.BigDecimal value) { + setValue(org.jooq.test.ase.generatedclasses.tables.T_639NumbersTable.BIG_DECIMAL, value); + } + + /** + * An uncommented item + */ + public java.math.BigDecimal getBigDecimal() { + return getValue(org.jooq.test.ase.generatedclasses.tables.T_639NumbersTable.BIG_DECIMAL); + } + + /** + * An uncommented item + */ + public void setFloat(java.lang.Float value) { + setValue(org.jooq.test.ase.generatedclasses.tables.T_639NumbersTable.FLOAT, value); + } + + /** + * An uncommented item + */ + public java.lang.Float getFloat() { + return getValue(org.jooq.test.ase.generatedclasses.tables.T_639NumbersTable.FLOAT); + } + + /** + * An uncommented item + */ + public void setDouble(java.lang.Double value) { + setValue(org.jooq.test.ase.generatedclasses.tables.T_639NumbersTable.DOUBLE, value); + } + + /** + * An uncommented item + */ + public java.lang.Double getDouble() { + return getValue(org.jooq.test.ase.generatedclasses.tables.T_639NumbersTable.DOUBLE); + } + + /** + * Create a detached T_639NumbersTableRecord + */ + public T_639NumbersTableRecord() { + super(org.jooq.test.ase.generatedclasses.tables.T_639NumbersTable.T_639_NUMBERS_TABLE); + } +} diff --git a/jOOQ-test/src/org/jooq/test/ase/generatedclasses/tables/records/T_658RefRecord.java b/jOOQ-test/src/org/jooq/test/ase/generatedclasses/tables/records/T_658RefRecord.java new file mode 100644 index 00000000000..2616a5254de --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/ase/generatedclasses/tables/records/T_658RefRecord.java @@ -0,0 +1,175 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.ase.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + */ +public class T_658RefRecord extends org.jooq.impl.TableRecordImpl { + + private static final long serialVersionUID = -111217515; + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT t_658_ref__fk_t_658_11
+	 * FOREIGN KEY (ref_11)
+	 * REFERENCES dbo.t_658_11 (id)
+	 * 
+ */ + public void setRef_11(org.jooq.test.ase.generatedclasses.enums.T_658_11 value) { + setValue(org.jooq.test.ase.generatedclasses.tables.T_658Ref.REF_11, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT t_658_ref__fk_t_658_11
+	 * FOREIGN KEY (ref_11)
+	 * REFERENCES dbo.t_658_11 (id)
+	 * 
+ */ + public org.jooq.test.ase.generatedclasses.enums.T_658_11 getRef_11() { + return getValue(org.jooq.test.ase.generatedclasses.tables.T_658Ref.REF_11); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT t_658_ref__fk_t_658_21
+	 * FOREIGN KEY (ref_21)
+	 * REFERENCES dbo.t_658_21 (id)
+	 * 
+ */ + public void setRef_21(org.jooq.test.ase.generatedclasses.enums.T_658_21 value) { + setValue(org.jooq.test.ase.generatedclasses.tables.T_658Ref.REF_21, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT t_658_ref__fk_t_658_21
+	 * FOREIGN KEY (ref_21)
+	 * REFERENCES dbo.t_658_21 (id)
+	 * 
+ */ + public org.jooq.test.ase.generatedclasses.enums.T_658_21 getRef_21() { + return getValue(org.jooq.test.ase.generatedclasses.tables.T_658Ref.REF_21); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT t_658_ref__fk_t_658_31
+	 * FOREIGN KEY (ref_31)
+	 * REFERENCES dbo.t_658_31 (id)
+	 * 
+ */ + public void setRef_31(org.jooq.test.ase.generatedclasses.enums.T_658_31 value) { + setValue(org.jooq.test.ase.generatedclasses.tables.T_658Ref.REF_31, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT t_658_ref__fk_t_658_31
+	 * FOREIGN KEY (ref_31)
+	 * REFERENCES dbo.t_658_31 (id)
+	 * 
+ */ + public org.jooq.test.ase.generatedclasses.enums.T_658_31 getRef_31() { + return getValue(org.jooq.test.ase.generatedclasses.tables.T_658Ref.REF_31); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT t_658_ref__fk_t_658_12
+	 * FOREIGN KEY (ref_12)
+	 * REFERENCES dbo.t_658_12 (id)
+	 * 
+ */ + public void setRef_12(org.jooq.test.ase.generatedclasses.enums.T_658_12 value) { + setValue(org.jooq.test.ase.generatedclasses.tables.T_658Ref.REF_12, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT t_658_ref__fk_t_658_12
+	 * FOREIGN KEY (ref_12)
+	 * REFERENCES dbo.t_658_12 (id)
+	 * 
+ */ + public org.jooq.test.ase.generatedclasses.enums.T_658_12 getRef_12() { + return getValue(org.jooq.test.ase.generatedclasses.tables.T_658Ref.REF_12); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT t_658_ref__fk_t_658_22
+	 * FOREIGN KEY (ref_22)
+	 * REFERENCES dbo.t_658_22 (id)
+	 * 
+ */ + public void setRef_22(org.jooq.test.ase.generatedclasses.enums.T_658_22 value) { + setValue(org.jooq.test.ase.generatedclasses.tables.T_658Ref.REF_22, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT t_658_ref__fk_t_658_22
+	 * FOREIGN KEY (ref_22)
+	 * REFERENCES dbo.t_658_22 (id)
+	 * 
+ */ + public org.jooq.test.ase.generatedclasses.enums.T_658_22 getRef_22() { + return getValue(org.jooq.test.ase.generatedclasses.tables.T_658Ref.REF_22); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT t_658_ref__fk_t_658_32
+	 * FOREIGN KEY (ref_32)
+	 * REFERENCES dbo.t_658_32 (id)
+	 * 
+ */ + public void setRef_32(org.jooq.test.ase.generatedclasses.enums.T_658_32 value) { + setValue(org.jooq.test.ase.generatedclasses.tables.T_658Ref.REF_32, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT t_658_ref__fk_t_658_32
+	 * FOREIGN KEY (ref_32)
+	 * REFERENCES dbo.t_658_32 (id)
+	 * 
+ */ + public org.jooq.test.ase.generatedclasses.enums.T_658_32 getRef_32() { + return getValue(org.jooq.test.ase.generatedclasses.tables.T_658Ref.REF_32); + } + + /** + * Create a detached T_658RefRecord + */ + public T_658RefRecord() { + super(org.jooq.test.ase.generatedclasses.tables.T_658Ref.T_658_REF); + } +} diff --git a/jOOQ-test/src/org/jooq/test/ase/generatedclasses/tables/records/T_725LobTestRecord.java b/jOOQ-test/src/org/jooq/test/ase/generatedclasses/tables/records/T_725LobTestRecord.java new file mode 100644 index 00000000000..975a4c22685 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/ase/generatedclasses/tables/records/T_725LobTestRecord.java @@ -0,0 +1,51 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.ase.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + */ +public class T_725LobTestRecord extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = 1612296540; + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setId(java.lang.Integer value) { + setValue(org.jooq.test.ase.generatedclasses.tables.T_725LobTest.ID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.lang.Integer getId() { + return getValue(org.jooq.test.ase.generatedclasses.tables.T_725LobTest.ID); + } + + /** + * An uncommented item + */ + public void setLob(byte[] value) { + setValue(org.jooq.test.ase.generatedclasses.tables.T_725LobTest.LOB, value); + } + + /** + * An uncommented item + */ + public byte[] getLob() { + return getValue(org.jooq.test.ase.generatedclasses.tables.T_725LobTest.LOB); + } + + /** + * Create a detached T_725LobTestRecord + */ + public T_725LobTestRecord() { + super(org.jooq.test.ase.generatedclasses.tables.T_725LobTest.T_725_LOB_TEST); + } +} diff --git a/jOOQ-test/src/org/jooq/test/ase/generatedclasses/tables/records/T_785Record.java b/jOOQ-test/src/org/jooq/test/ase/generatedclasses/tables/records/T_785Record.java new file mode 100644 index 00000000000..03979b2d33f --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/ase/generatedclasses/tables/records/T_785Record.java @@ -0,0 +1,61 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.ase.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + */ +public class T_785Record extends org.jooq.impl.TableRecordImpl { + + private static final long serialVersionUID = -1415460692; + + /** + * An uncommented item + */ + public void setId(java.lang.Integer value) { + setValue(org.jooq.test.ase.generatedclasses.tables.T_785.ID, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getId() { + return getValue(org.jooq.test.ase.generatedclasses.tables.T_785.ID); + } + + /** + * An uncommented item + */ + public void setName(java.lang.String value) { + setValue(org.jooq.test.ase.generatedclasses.tables.T_785.NAME, value); + } + + /** + * An uncommented item + */ + public java.lang.String getName() { + return getValue(org.jooq.test.ase.generatedclasses.tables.T_785.NAME); + } + + /** + * An uncommented item + */ + public void setValue(java.lang.String value) { + setValue(org.jooq.test.ase.generatedclasses.tables.T_785.VALUE, value); + } + + /** + * An uncommented item + */ + public java.lang.String getValue() { + return getValue(org.jooq.test.ase.generatedclasses.tables.T_785.VALUE); + } + + /** + * Create a detached T_785Record + */ + public T_785Record() { + super(org.jooq.test.ase.generatedclasses.tables.T_785.T_785); + } +} diff --git a/jOOQ-test/src/org/jooq/test/ase/generatedclasses/tables/records/T_986_1Record.java b/jOOQ-test/src/org/jooq/test/ase/generatedclasses/tables/records/T_986_1Record.java new file mode 100644 index 00000000000..24ec2a87fe3 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/ase/generatedclasses/tables/records/T_986_1Record.java @@ -0,0 +1,37 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.ase.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + */ +public class T_986_1Record extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = -1122338092; + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setRef(java.lang.Integer value) { + setValue(org.jooq.test.ase.generatedclasses.tables.T_986_1.REF, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.lang.Integer getRef() { + return getValue(org.jooq.test.ase.generatedclasses.tables.T_986_1.REF); + } + + /** + * Create a detached T_986_1Record + */ + public T_986_1Record() { + super(org.jooq.test.ase.generatedclasses.tables.T_986_1.T_986_1); + } +} diff --git a/jOOQ-test/src/org/jooq/test/ase/generatedclasses/tables/records/T_986_2Record.java b/jOOQ-test/src/org/jooq/test/ase/generatedclasses/tables/records/T_986_2Record.java new file mode 100644 index 00000000000..eef8e3d3cf5 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/ase/generatedclasses/tables/records/T_986_2Record.java @@ -0,0 +1,37 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.ase.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + */ +public class T_986_2Record extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = -692752812; + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setRef(java.lang.Integer value) { + setValue(org.jooq.test.ase.generatedclasses.tables.T_986_2.REF, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.lang.Integer getRef() { + return getValue(org.jooq.test.ase.generatedclasses.tables.T_986_2.REF); + } + + /** + * Create a detached T_986_2Record + */ + public T_986_2Record() { + super(org.jooq.test.ase.generatedclasses.tables.T_986_2.T_986_2); + } +} diff --git a/jOOQ-test/src/org/jooq/test/ase/generatedclasses/tables/records/VAuthorRecord.java b/jOOQ-test/src/org/jooq/test/ase/generatedclasses/tables/records/VAuthorRecord.java new file mode 100644 index 00000000000..060897e9d3b --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/ase/generatedclasses/tables/records/VAuthorRecord.java @@ -0,0 +1,103 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.ase.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + */ +public class VAuthorRecord extends org.jooq.impl.TableRecordImpl { + + private static final long serialVersionUID = -250286367; + + /** + * An uncommented item + */ + public void setId(java.lang.Integer value) { + setValue(org.jooq.test.ase.generatedclasses.tables.VAuthor.ID, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getId() { + return getValue(org.jooq.test.ase.generatedclasses.tables.VAuthor.ID); + } + + /** + * An uncommented item + */ + public void setFirstName(java.lang.String value) { + setValue(org.jooq.test.ase.generatedclasses.tables.VAuthor.FIRST_NAME, value); + } + + /** + * An uncommented item + */ + public java.lang.String getFirstName() { + return getValue(org.jooq.test.ase.generatedclasses.tables.VAuthor.FIRST_NAME); + } + + /** + * An uncommented item + */ + public void setLastName(java.lang.String value) { + setValue(org.jooq.test.ase.generatedclasses.tables.VAuthor.LAST_NAME, value); + } + + /** + * An uncommented item + */ + public java.lang.String getLastName() { + return getValue(org.jooq.test.ase.generatedclasses.tables.VAuthor.LAST_NAME); + } + + /** + * An uncommented item + */ + public void setDateOfBirth(java.sql.Date value) { + setValue(org.jooq.test.ase.generatedclasses.tables.VAuthor.DATE_OF_BIRTH, value); + } + + /** + * An uncommented item + */ + public java.sql.Date getDateOfBirth() { + return getValue(org.jooq.test.ase.generatedclasses.tables.VAuthor.DATE_OF_BIRTH); + } + + /** + * An uncommented item + */ + public void setYearOfBirth(java.lang.Integer value) { + setValue(org.jooq.test.ase.generatedclasses.tables.VAuthor.YEAR_OF_BIRTH, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getYearOfBirth() { + return getValue(org.jooq.test.ase.generatedclasses.tables.VAuthor.YEAR_OF_BIRTH); + } + + /** + * An uncommented item + */ + public void setAddress(java.lang.String value) { + setValue(org.jooq.test.ase.generatedclasses.tables.VAuthor.ADDRESS, value); + } + + /** + * An uncommented item + */ + public java.lang.String getAddress() { + return getValue(org.jooq.test.ase.generatedclasses.tables.VAuthor.ADDRESS); + } + + /** + * Create a detached VAuthorRecord + */ + public VAuthorRecord() { + super(org.jooq.test.ase.generatedclasses.tables.VAuthor.V_AUTHOR); + } +} diff --git a/jOOQ-test/src/org/jooq/test/ase/generatedclasses/tables/records/VBookRecord.java b/jOOQ-test/src/org/jooq/test/ase/generatedclasses/tables/records/VBookRecord.java new file mode 100644 index 00000000000..c8b5f26ad40 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/ase/generatedclasses/tables/records/VBookRecord.java @@ -0,0 +1,145 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.ase.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + */ +public class VBookRecord extends org.jooq.impl.TableRecordImpl { + + private static final long serialVersionUID = 1502365219; + + /** + * An uncommented item + */ + public void setId(java.lang.Integer value) { + setValue(org.jooq.test.ase.generatedclasses.tables.VBook.ID, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getId() { + return getValue(org.jooq.test.ase.generatedclasses.tables.VBook.ID); + } + + /** + * An uncommented item + */ + public void setAuthorId(java.lang.Integer value) { + setValue(org.jooq.test.ase.generatedclasses.tables.VBook.AUTHOR_ID, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getAuthorId() { + return getValue(org.jooq.test.ase.generatedclasses.tables.VBook.AUTHOR_ID); + } + + /** + * An uncommented item + */ + public void setCoAuthorId(java.lang.Integer value) { + setValue(org.jooq.test.ase.generatedclasses.tables.VBook.CO_AUTHOR_ID, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getCoAuthorId() { + return getValue(org.jooq.test.ase.generatedclasses.tables.VBook.CO_AUTHOR_ID); + } + + /** + * An uncommented item + */ + public void setDetailsId(java.lang.Integer value) { + setValue(org.jooq.test.ase.generatedclasses.tables.VBook.DETAILS_ID, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getDetailsId() { + return getValue(org.jooq.test.ase.generatedclasses.tables.VBook.DETAILS_ID); + } + + /** + * An uncommented item + */ + public void setTitle(java.lang.String value) { + setValue(org.jooq.test.ase.generatedclasses.tables.VBook.TITLE, value); + } + + /** + * An uncommented item + */ + public java.lang.String getTitle() { + return getValue(org.jooq.test.ase.generatedclasses.tables.VBook.TITLE); + } + + /** + * An uncommented item + */ + public void setPublishedIn(java.lang.Integer value) { + setValue(org.jooq.test.ase.generatedclasses.tables.VBook.PUBLISHED_IN, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getPublishedIn() { + return getValue(org.jooq.test.ase.generatedclasses.tables.VBook.PUBLISHED_IN); + } + + /** + * An uncommented item + */ + public void setLanguageId(java.lang.Integer value) { + setValue(org.jooq.test.ase.generatedclasses.tables.VBook.LANGUAGE_ID, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getLanguageId() { + return getValue(org.jooq.test.ase.generatedclasses.tables.VBook.LANGUAGE_ID); + } + + /** + * An uncommented item + */ + public void setContentText(java.lang.String value) { + setValue(org.jooq.test.ase.generatedclasses.tables.VBook.CONTENT_TEXT, value); + } + + /** + * An uncommented item + */ + public java.lang.String getContentText() { + return getValue(org.jooq.test.ase.generatedclasses.tables.VBook.CONTENT_TEXT); + } + + /** + * An uncommented item + */ + public void setContentPdf(byte[] value) { + setValue(org.jooq.test.ase.generatedclasses.tables.VBook.CONTENT_PDF, value); + } + + /** + * An uncommented item + */ + public byte[] getContentPdf() { + return getValue(org.jooq.test.ase.generatedclasses.tables.VBook.CONTENT_PDF); + } + + /** + * Create a detached VBookRecord + */ + public VBookRecord() { + super(org.jooq.test.ase.generatedclasses.tables.VBook.V_BOOK); + } +} diff --git a/jOOQ-test/src/org/jooq/test/ase/generatedclasses/tables/records/VLibraryRecord.java b/jOOQ-test/src/org/jooq/test/ase/generatedclasses/tables/records/VLibraryRecord.java new file mode 100644 index 00000000000..b002d899b29 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/ase/generatedclasses/tables/records/VLibraryRecord.java @@ -0,0 +1,47 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.ase.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + */ +public class VLibraryRecord extends org.jooq.impl.TableRecordImpl { + + private static final long serialVersionUID = 1562909085; + + /** + * An uncommented item + */ + public void setAuthor(java.lang.String value) { + setValue(org.jooq.test.ase.generatedclasses.tables.VLibrary.AUTHOR, value); + } + + /** + * An uncommented item + */ + public java.lang.String getAuthor() { + return getValue(org.jooq.test.ase.generatedclasses.tables.VLibrary.AUTHOR); + } + + /** + * An uncommented item + */ + public void setTitle(java.lang.String value) { + setValue(org.jooq.test.ase.generatedclasses.tables.VLibrary.TITLE, value); + } + + /** + * An uncommented item + */ + public java.lang.String getTitle() { + return getValue(org.jooq.test.ase.generatedclasses.tables.VLibrary.TITLE); + } + + /** + * Create a detached VLibraryRecord + */ + public VLibraryRecord() { + super(org.jooq.test.ase.generatedclasses.tables.VLibrary.V_LIBRARY); + } +} diff --git a/jOOQ-test/src/org/jooq/test/ase/generatedclasses/tables/records/XTestCase_64_69Record.java b/jOOQ-test/src/org/jooq/test/ase/generatedclasses/tables/records/XTestCase_64_69Record.java new file mode 100644 index 00000000000..96a3b9dd294 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/ase/generatedclasses/tables/records/XTestCase_64_69Record.java @@ -0,0 +1,91 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.ase.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + */ +public class XTestCase_64_69Record extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = 523292979; + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setId(java.lang.Integer value) { + setValue(org.jooq.test.ase.generatedclasses.tables.XTestCase_64_69.ID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.lang.Integer getId() { + return getValue(org.jooq.test.ase.generatedclasses.tables.XTestCase_64_69.ID); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.util.List fetchXTestCase_71List() { + return create() + .selectFrom(org.jooq.test.ase.generatedclasses.tables.XTestCase_71.X_TEST_CASE_71) + .where(org.jooq.test.ase.generatedclasses.tables.XTestCase_71.TEST_CASE_64_69_ID.equal(getValue(org.jooq.test.ase.generatedclasses.tables.XTestCase_64_69.ID))) + .fetch(); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT x_test_case_64_69__fk_x_test_case_64_69a
+	 * FOREIGN KEY (UNUSED_ID)
+	 * REFERENCES dbo.x_unused (ID)
+	 * 
+ */ + public void setUnusedId(java.lang.Integer value) { + setValue(org.jooq.test.ase.generatedclasses.tables.XTestCase_64_69.UNUSED_ID, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT x_test_case_64_69__fk_x_test_case_64_69a
+	 * FOREIGN KEY (UNUSED_ID)
+	 * REFERENCES dbo.x_unused (ID)
+	 * 
+ */ + public java.lang.Integer getUnusedId() { + return getValue(org.jooq.test.ase.generatedclasses.tables.XTestCase_64_69.UNUSED_ID); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT x_test_case_64_69__fk_x_test_case_64_69a
+	 * FOREIGN KEY (UNUSED_ID)
+	 * REFERENCES dbo.x_unused (ID)
+	 * 
+ */ + public org.jooq.test.ase.generatedclasses.tables.records.XUnusedRecord fetchXUnused() { + return create() + .selectFrom(org.jooq.test.ase.generatedclasses.tables.XUnused.X_UNUSED) + .where(org.jooq.test.ase.generatedclasses.tables.XUnused.ID.equal(getValue(org.jooq.test.ase.generatedclasses.tables.XTestCase_64_69.UNUSED_ID))) + .fetchOne(); + } + + /** + * Create a detached XTestCase_64_69Record + */ + public XTestCase_64_69Record() { + super(org.jooq.test.ase.generatedclasses.tables.XTestCase_64_69.X_TEST_CASE_64_69); + } +} diff --git a/jOOQ-test/src/org/jooq/test/ase/generatedclasses/tables/records/XTestCase_71Record.java b/jOOQ-test/src/org/jooq/test/ase/generatedclasses/tables/records/XTestCase_71Record.java new file mode 100644 index 00000000000..4f4f9faa175 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/ase/generatedclasses/tables/records/XTestCase_71Record.java @@ -0,0 +1,79 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.ase.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + */ +public class XTestCase_71Record extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = 556275635; + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setId(java.lang.Integer value) { + setValue(org.jooq.test.ase.generatedclasses.tables.XTestCase_71.ID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.lang.Integer getId() { + return getValue(org.jooq.test.ase.generatedclasses.tables.XTestCase_71.ID); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT x_test_case_71__fk_x_test_case_71
+	 * FOREIGN KEY (TEST_CASE_64_69_ID)
+	 * REFERENCES dbo.x_test_case_64_69 (ID)
+	 * 
+ */ + public void setTestCase_64_69Id(java.lang.Integer value) { + setValue(org.jooq.test.ase.generatedclasses.tables.XTestCase_71.TEST_CASE_64_69_ID, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT x_test_case_71__fk_x_test_case_71
+	 * FOREIGN KEY (TEST_CASE_64_69_ID)
+	 * REFERENCES dbo.x_test_case_64_69 (ID)
+	 * 
+ */ + public java.lang.Integer getTestCase_64_69Id() { + return getValue(org.jooq.test.ase.generatedclasses.tables.XTestCase_71.TEST_CASE_64_69_ID); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT x_test_case_71__fk_x_test_case_71
+	 * FOREIGN KEY (TEST_CASE_64_69_ID)
+	 * REFERENCES dbo.x_test_case_64_69 (ID)
+	 * 
+ */ + public org.jooq.test.ase.generatedclasses.tables.records.XTestCase_64_69Record fetchXTestCase_64_69() { + return create() + .selectFrom(org.jooq.test.ase.generatedclasses.tables.XTestCase_64_69.X_TEST_CASE_64_69) + .where(org.jooq.test.ase.generatedclasses.tables.XTestCase_64_69.ID.equal(getValue(org.jooq.test.ase.generatedclasses.tables.XTestCase_71.TEST_CASE_64_69_ID))) + .fetchOne(); + } + + /** + * Create a detached XTestCase_71Record + */ + public XTestCase_71Record() { + super(org.jooq.test.ase.generatedclasses.tables.XTestCase_71.X_TEST_CASE_71); + } +} diff --git a/jOOQ-test/src/org/jooq/test/ase/generatedclasses/tables/records/XTestCase_85Record.java b/jOOQ-test/src/org/jooq/test/ase/generatedclasses/tables/records/XTestCase_85Record.java new file mode 100644 index 00000000000..b8a091c4b78 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/ase/generatedclasses/tables/records/XTestCase_85Record.java @@ -0,0 +1,106 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.ase.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + */ +public class XTestCase_85Record extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = 2073144988; + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setId(java.lang.Integer value) { + setValue(org.jooq.test.ase.generatedclasses.tables.XTestCase_85.ID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.lang.Integer getId() { + return getValue(org.jooq.test.ase.generatedclasses.tables.XTestCase_85.ID); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT x_test_case_85__fk_x_test_case_85
+	 * FOREIGN KEY (x_unused_id, x_unused_name)
+	 * REFERENCES dbo.x_unused (ID, NAME)
+	 * 
+ */ + public void setXUnusedId(java.lang.Integer value) { + setValue(org.jooq.test.ase.generatedclasses.tables.XTestCase_85.X_UNUSED_ID, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT x_test_case_85__fk_x_test_case_85
+	 * FOREIGN KEY (x_unused_id, x_unused_name)
+	 * REFERENCES dbo.x_unused (ID, NAME)
+	 * 
+ */ + public java.lang.Integer getXUnusedId() { + return getValue(org.jooq.test.ase.generatedclasses.tables.XTestCase_85.X_UNUSED_ID); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT x_test_case_85__fk_x_test_case_85
+	 * FOREIGN KEY (x_unused_id, x_unused_name)
+	 * REFERENCES dbo.x_unused (ID, NAME)
+	 * 
+ */ + public org.jooq.test.ase.generatedclasses.tables.records.XUnusedRecord fetchXUnused() { + return create() + .selectFrom(org.jooq.test.ase.generatedclasses.tables.XUnused.X_UNUSED) + .where(org.jooq.test.ase.generatedclasses.tables.XUnused.ID.equal(getValue(org.jooq.test.ase.generatedclasses.tables.XTestCase_85.X_UNUSED_ID))) + .and(org.jooq.test.ase.generatedclasses.tables.XUnused.NAME.equal(getValue(org.jooq.test.ase.generatedclasses.tables.XTestCase_85.X_UNUSED_NAME))) + .fetchOne(); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT x_test_case_85__fk_x_test_case_85
+	 * FOREIGN KEY (x_unused_id, x_unused_name)
+	 * REFERENCES dbo.x_unused (ID, NAME)
+	 * 
+ */ + public void setXUnusedName(java.lang.String value) { + setValue(org.jooq.test.ase.generatedclasses.tables.XTestCase_85.X_UNUSED_NAME, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT x_test_case_85__fk_x_test_case_85
+	 * FOREIGN KEY (x_unused_id, x_unused_name)
+	 * REFERENCES dbo.x_unused (ID, NAME)
+	 * 
+ */ + public java.lang.String getXUnusedName() { + return getValue(org.jooq.test.ase.generatedclasses.tables.XTestCase_85.X_UNUSED_NAME); + } + + /** + * Create a detached XTestCase_85Record + */ + public XTestCase_85Record() { + super(org.jooq.test.ase.generatedclasses.tables.XTestCase_85.X_TEST_CASE_85); + } +} diff --git a/jOOQ-test/src/org/jooq/test/ase/generatedclasses/tables/records/XUnusedRecord.java b/jOOQ-test/src/org/jooq/test/ase/generatedclasses/tables/records/XUnusedRecord.java new file mode 100644 index 00000000000..9059d73096b --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/ase/generatedclasses/tables/records/XUnusedRecord.java @@ -0,0 +1,302 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.ase.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + */ +public class XUnusedRecord extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = 1981777871; + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setId(java.lang.Integer value) { + setValue(org.jooq.test.ase.generatedclasses.tables.XUnused.ID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.lang.Integer getId() { + return getValue(org.jooq.test.ase.generatedclasses.tables.XUnused.ID); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.util.List fetchXUnusedList() { + return create() + .selectFrom(org.jooq.test.ase.generatedclasses.tables.XUnused.X_UNUSED) + .where(org.jooq.test.ase.generatedclasses.tables.XUnused.ID_REF.equal(getValue(org.jooq.test.ase.generatedclasses.tables.XUnused.ID))) + .and(org.jooq.test.ase.generatedclasses.tables.XUnused.NAME_REF.equal(getValue(org.jooq.test.ase.generatedclasses.tables.XUnused.NAME))) + .fetch(); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.util.List fetchXTestCase_85List() { + return create() + .selectFrom(org.jooq.test.ase.generatedclasses.tables.XTestCase_85.X_TEST_CASE_85) + .where(org.jooq.test.ase.generatedclasses.tables.XTestCase_85.X_UNUSED_ID.equal(getValue(org.jooq.test.ase.generatedclasses.tables.XUnused.ID))) + .and(org.jooq.test.ase.generatedclasses.tables.XTestCase_85.X_UNUSED_NAME.equal(getValue(org.jooq.test.ase.generatedclasses.tables.XUnused.NAME))) + .fetch(); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.util.List fetchXTestCase_64_69List() { + return create() + .selectFrom(org.jooq.test.ase.generatedclasses.tables.XTestCase_64_69.X_TEST_CASE_64_69) + .where(org.jooq.test.ase.generatedclasses.tables.XTestCase_64_69.UNUSED_ID.equal(getValue(org.jooq.test.ase.generatedclasses.tables.XUnused.ID))) + .fetch(); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setName(java.lang.String value) { + setValue(org.jooq.test.ase.generatedclasses.tables.XUnused.NAME, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.lang.String getName() { + return getValue(org.jooq.test.ase.generatedclasses.tables.XUnused.NAME); + } + + /** + * An uncommented item + */ + public void setBigInteger(java.math.BigInteger value) { + setValue(org.jooq.test.ase.generatedclasses.tables.XUnused.BIG_INTEGER, value); + } + + /** + * An uncommented item + */ + public java.math.BigInteger getBigInteger() { + return getValue(org.jooq.test.ase.generatedclasses.tables.XUnused.BIG_INTEGER); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT x_unused__fk_x_unused_self
+	 * FOREIGN KEY (ID_REF, NAME_REF)
+	 * REFERENCES dbo.x_unused (ID, NAME)
+	 * 
+ */ + public void setIdRef(java.lang.Integer value) { + setValue(org.jooq.test.ase.generatedclasses.tables.XUnused.ID_REF, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT x_unused__fk_x_unused_self
+	 * FOREIGN KEY (ID_REF, NAME_REF)
+	 * REFERENCES dbo.x_unused (ID, NAME)
+	 * 
+ */ + public java.lang.Integer getIdRef() { + return getValue(org.jooq.test.ase.generatedclasses.tables.XUnused.ID_REF); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT x_unused__fk_x_unused_self
+	 * FOREIGN KEY (ID_REF, NAME_REF)
+	 * REFERENCES dbo.x_unused (ID, NAME)
+	 * 
+ */ + public org.jooq.test.ase.generatedclasses.tables.records.XUnusedRecord fetchXUnused() { + return create() + .selectFrom(org.jooq.test.ase.generatedclasses.tables.XUnused.X_UNUSED) + .where(org.jooq.test.ase.generatedclasses.tables.XUnused.ID.equal(getValue(org.jooq.test.ase.generatedclasses.tables.XUnused.ID_REF))) + .and(org.jooq.test.ase.generatedclasses.tables.XUnused.NAME.equal(getValue(org.jooq.test.ase.generatedclasses.tables.XUnused.NAME_REF))) + .fetchOne(); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT x_unused__fk_x_unused_self
+	 * FOREIGN KEY (ID_REF, NAME_REF)
+	 * REFERENCES dbo.x_unused (ID, NAME)
+	 * 
+ */ + public void setNameRef(java.lang.String value) { + setValue(org.jooq.test.ase.generatedclasses.tables.XUnused.NAME_REF, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT x_unused__fk_x_unused_self
+	 * FOREIGN KEY (ID_REF, NAME_REF)
+	 * REFERENCES dbo.x_unused (ID, NAME)
+	 * 
+ */ + public java.lang.String getNameRef() { + return getValue(org.jooq.test.ase.generatedclasses.tables.XUnused.NAME_REF); + } + + /** + * An uncommented item + */ + public void setClass_(java.lang.Integer value) { + setValue(org.jooq.test.ase.generatedclasses.tables.XUnused.CLASS, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getClass_() { + return getValue(org.jooq.test.ase.generatedclasses.tables.XUnused.CLASS); + } + + /** + * An uncommented item + */ + public void setFields_(java.lang.Integer value) { + setValue(org.jooq.test.ase.generatedclasses.tables.XUnused.FIELDS, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getFields_() { + return getValue(org.jooq.test.ase.generatedclasses.tables.XUnused.FIELDS); + } + + /** + * An uncommented item + */ + public void setConfiguration_(java.lang.Integer value) { + setValue(org.jooq.test.ase.generatedclasses.tables.XUnused.CONFIGURATION, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getConfiguration_() { + return getValue(org.jooq.test.ase.generatedclasses.tables.XUnused.CONFIGURATION); + } + + /** + * An uncommented item + */ + public void setUDT(java.lang.Integer value) { + setValue(org.jooq.test.ase.generatedclasses.tables.XUnused.U_D_T, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getUDT() { + return getValue(org.jooq.test.ase.generatedclasses.tables.XUnused.U_D_T); + } + + /** + * An uncommented item + */ + public void setMetaData_(java.lang.Integer value) { + setValue(org.jooq.test.ase.generatedclasses.tables.XUnused.META_DATA, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getMetaData_() { + return getValue(org.jooq.test.ase.generatedclasses.tables.XUnused.META_DATA); + } + + /** + * An uncommented item + */ + public void setType0_(java.lang.Integer value) { + setValue(org.jooq.test.ase.generatedclasses.tables.XUnused.TYPE0, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getType0_() { + return getValue(org.jooq.test.ase.generatedclasses.tables.XUnused.TYPE0); + } + + /** + * An uncommented item + */ + public void setPrimaryKey(java.lang.Integer value) { + setValue(org.jooq.test.ase.generatedclasses.tables.XUnused.PRIMARY_KEY, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getPrimaryKey() { + return getValue(org.jooq.test.ase.generatedclasses.tables.XUnused.PRIMARY_KEY); + } + + /** + * An uncommented item + */ + public void setPrimarykey(java.lang.Integer value) { + setValue(org.jooq.test.ase.generatedclasses.tables.XUnused.PRIMARYKEY, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getPrimarykey() { + return getValue(org.jooq.test.ase.generatedclasses.tables.XUnused.PRIMARYKEY); + } + + /** + * An uncommented item + */ + public void setField_737(java.math.BigDecimal value) { + setValue(org.jooq.test.ase.generatedclasses.tables.XUnused.FIELD_737, value); + } + + /** + * An uncommented item + */ + public java.math.BigDecimal getField_737() { + return getValue(org.jooq.test.ase.generatedclasses.tables.XUnused.FIELD_737); + } + + /** + * Create a detached XUnusedRecord + */ + public XUnusedRecord() { + super(org.jooq.test.ase.generatedclasses.tables.XUnused.X_UNUSED); + } +} diff --git a/jOOQ-test/src/org/jooq/test/ase/reset.sql b/jOOQ-test/src/org/jooq/test/ase/reset.sql new file mode 100644 index 00000000000..63652324363 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/ase/reset.sql @@ -0,0 +1,60 @@ +DELETE FROM t_658_ref/ +DELETE FROM t_658_11/ +DELETE FROM t_658_21/ +DELETE FROM t_658_31/ +DELETE FROM t_658_12/ +DELETE FROM t_658_22/ +DELETE FROM t_658_32/ +DELETE FROM t_book_to_book_store/ +DELETE FROM t_book_store/ +DELETE FROM t_book/ +DELETE FROM t_author/ +DELETE FROM t_language/ +DELETE FROM t_booleans/ +DELETE FROM t_dates/ +DELETE FROM t_identity/ +DELETE FROM t_identity_pk/ + +INSERT INTO t_language (id, cd, description, description_english) VALUES (1, 'en', 'English', 'English')/ +INSERT INTO t_language (id, cd, description, description_english) VALUES (2, 'de', 'Deutsch', 'German')/ +INSERT INTO t_language (id, cd, description, description_english) VALUES (3, 'fr', 'Français', 'French')/ +INSERT INTO t_language (id, cd, description, description_english) VALUES (4, 'pt', null, null)/ +/ + +INSERT INTO t_658_11 VALUES ('A')/ +INSERT INTO t_658_11 VALUES ('B')/ +INSERT INTO t_658_11 VALUES ('C')/ +INSERT INTO t_658_21 VALUES (1)/ +INSERT INTO t_658_21 VALUES (2)/ +INSERT INTO t_658_21 VALUES (3)/ +INSERT INTO t_658_31 VALUES (1)/ +INSERT INTO t_658_31 VALUES (2)/ +INSERT INTO t_658_31 VALUES (3)/ +INSERT INTO t_658_12 VALUES ('A', 'A')/ +INSERT INTO t_658_12 VALUES ('B', 'B')/ +INSERT INTO t_658_12 VALUES ('C', 'C')/ +INSERT INTO t_658_22 VALUES (1, 1)/ +INSERT INTO t_658_22 VALUES (2, 2)/ +INSERT INTO t_658_22 VALUES (3, 3)/ +INSERT INTO t_658_32 VALUES (1, 1)/ +INSERT INTO t_658_32 VALUES (2, 2)/ +INSERT INTO t_658_32 VALUES (3, 3)/ +INSERT INTO t_658_ref VALUES ('A', 1, 1, 'B', 2, 2)/ + +INSERT INTO t_author VALUES (1, 'George', 'Orwell', '1903-06-25', 1903, null)/ +INSERT INTO t_author VALUES (2, 'Paulo', 'Coelho', '1947-08-24', 1947, null)/ +INSERT INTO t_book VALUES (1, 1, null, null, '1984', 1948, 1, 'To know and not to know, to be conscious of complete truthfulness while telling carefully constructed lies, to hold simultaneously two opinions which cancelled out, knowing them to be contradictory and believing in both of them, to use logic against logic, to repudiate morality while laying claim to it, to believe that democracy was impossible and that the Party was the guardian of democracy, to forget, whatever it was necessary to forget, then to draw it back into memory again at the moment when it was needed, and then promptly to forget it again, and above all, to apply the same process to the process itself -- that was the ultimate subtlety; consciously to induce unconsciousness, and then, once again, to become unconscious of the act of hypnosis you had just performed. Even to understand the word ''doublethink'' involved the use of doublethink..', null)/ +INSERT INTO t_book VALUES (2, 1, null, null, 'Animal Farm', 1945, 1, null, null)/ +INSERT INTO t_book VALUES (3, 2, null, null, 'O Alquimista', 1988, 4, null, null)/ +INSERT INTO t_book VALUES (4, 2, null, null, 'Brida', 1990, 2, null, null)/ + +INSERT INTO t_book_store VALUES ('Orell Füssli')/ +INSERT INTO t_book_store VALUES ('Ex Libris')/ +INSERT INTO t_book_store VALUES ('Buchhandlung im Volkshaus')/ + +INSERT INTO t_book_to_book_store VALUES ('Orell Füssli', 1, 10)/ +INSERT INTO t_book_to_book_store VALUES ('Orell Füssli', 2, 10)/ +INSERT INTO t_book_to_book_store VALUES ('Orell Füssli', 3, 10)/ +INSERT INTO t_book_to_book_store VALUES ('Ex Libris', 1, 1)/ +INSERT INTO t_book_to_book_store VALUES ('Ex Libris', 3, 2)/ +INSERT INTO t_book_to_book_store VALUES ('Buchhandlung im Volkshaus', 3, 1)/ \ No newline at end of file diff --git a/jOOQ-test/src/org/jooq/test/cubrid/create.sql b/jOOQ-test/src/org/jooq/test/cubrid/create.sql new file mode 100644 index 00000000000..f5e4a7c749c --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/cubrid/create.sql @@ -0,0 +1,347 @@ +DROP VIEW v_library/ +DROP VIEW v_author/ +DROP VIEW v_book/ + +DROP TRIGGER t_triggers_trigger/ + +DROP TABLE t_dates/ +DROP TABLE t_triggers/ +DROP TABLE t_book_to_book_store/ +DROP TABLE t_book_store/ +DROP TABLE t_book/ +DROP TABLE t_book_details/ +DROP TABLE t_author/ +DROP TABLE t_language/ +DROP TABLE t_directory/ +DROP TABLE x_test_case_85/ +DROP TABLE x_test_case_71/ +DROP TABLE x_test_case_64_69/ +DROP TABLE t_986_1/ +DROP TABLE t_986_2/ +DROP TABLE x_unused/ +DROP TABLE t_639_numbers_table/ +DROP TABLE t_658_ref/ +DROP TABLE t_658_11/ +DROP TABLE t_658_21/ +DROP TABLE t_658_31/ +DROP TABLE t_658_12/ +DROP TABLE t_658_22/ +DROP TABLE t_658_32/ +DROP TABLE t_725_lob_test/ +DROP TABLE t_785/ +DROP TABLE t_booleans/ +DROP TABLE t_identity/ +DROP TABLE t_identity_pk/ + +CREATE TABLE t_identity_pk ( + id INTEGER AUTO_INCREMENT NOT NULL, + val int, + + CONSTRAINT pk_t_identity_pk PRIMARY KEY (id) +) +/ + +CREATE TABLE t_identity ( + id INTEGER AUTO_INCREMENT NOT NULL, + val int +) +/ + +CREATE TABLE t_dates ( + id int, + d date null, + t time null, + ts datetime null, + d_int int null, + ts_bigint bigint null, + + CONSTRAINT pk_t_dates PRIMARY KEY (id) +) +/ + +CREATE TABLE t_booleans ( + id int, + one_zero int null, + true_false_lc varchar(5) null, + true_false_uc varchar(5) null, + yes_no_lc varchar(3) null, + yes_no_uc varchar(3) null, + y_n_lc char(1) null, + y_n_uc char(1) null, + vc_boolean varchar(1) null, + c_boolean char(1) null, + n_boolean int null, + + CONSTRAINT pk_t_booleans PRIMARY KEY (id) +) +/ + +CREATE TABLE t_triggers ( + id_generated int AUTO_INCREMENT not null, + id int null, + counter int null, + + CONSTRAINT pk_t_triggers PRIMARY KEY (id_generated) +) +/ + +CREATE TRIGGER t_triggers_trigger +AFTER INSERT +ON t_triggers +EXECUTE AFTER +UPDATE t_triggers SET id = id_generated, counter = id_generated * 2 +/ + +CREATE TABLE t_directory ( + id int NOT NULL, + parent_id int, + is_directory int, + "name" varchar(50), + + CONSTRAINT pk_t_directory PRIMARY KEY (ID), + CONSTRAINT pk_t_directory_self FOREIGN KEY (PARENT_ID) REFERENCES t_directory(ID) ON DELETE CASCADE +) +/ + +CREATE TABLE t_language ( + cd CHAR(2) NOT NULL, + description VARCHAR(50) NULL, + description_english VARCHAR(50) NULL, + id INTEGER NOT NULL, + + CONSTRAINT pk_t_language PRIMARY KEY (id) +) +/ + +CREATE TABLE t_658_11 ( + id CHAR(3) NOT NULL, + + CONSTRAINT pk_t_658_11 PRIMARY KEY (id) +) +/ + +CREATE TABLE t_658_21 ( + id INT NOT NULL, + + CONSTRAINT pk_t_658_21 PRIMARY KEY (id) +) +/ + +CREATE TABLE t_658_31 ( + id BIGINT NOT NULL, + + CONSTRAINT pk_t_658_31 PRIMARY KEY (id) +) +/ + +CREATE TABLE t_658_12 ( + id CHAR(3) NOT NULL, + cd CHAR(3) NOT NULL, + + CONSTRAINT pk_t_658_12 PRIMARY KEY (id) +) +/ + +CREATE TABLE t_658_22 ( + id INT NOT NULL, + cd INT NOT NULL, + + CONSTRAINT pk_t_658_22 PRIMARY KEY (id) +) +/ + +CREATE TABLE t_658_32 ( + id BIGINT NOT NULL, + cd BIGINT NOT NULL, + + CONSTRAINT pk_t_658_32 PRIMARY KEY (id) +) +/ + +CREATE TABLE t_658_ref ( + ref_11 char(3), + ref_21 int, + ref_31 bigint, + ref_12 char(3), + ref_22 int, + ref_32 bigint, + + CONSTRAINT fk_t_658_11 FOREIGN KEY (ref_11) REFERENCES t_658_11(id), + CONSTRAINT fk_t_658_21 FOREIGN KEY (ref_21) REFERENCES t_658_21(id), + CONSTRAINT fk_t_658_31 FOREIGN KEY (ref_31) REFERENCES t_658_31(id), + CONSTRAINT fk_t_658_12 FOREIGN KEY (ref_12) REFERENCES t_658_12(id), + CONSTRAINT fk_t_658_22 FOREIGN KEY (ref_22) REFERENCES t_658_22(id), + CONSTRAINT fk_t_658_32 FOREIGN KEY (ref_32) REFERENCES t_658_32(id) +) +/ + +CREATE TABLE t_725_lob_test ( + id int NOT NULL, + lob BLOB NULL, + + CONSTRAINT pk_t_725_lob_test PRIMARY KEY (id) +) +/ + +CREATE TABLE t_785 ( + "ID" int NULL, + "NAME" varchar(50) NULL, + "VALUE" varchar(50) NULL +) +/ + +CREATE TABLE t_author ( + id INT NOT NULL, + first_name VARCHAR(50) NULL, + last_name VARCHAR(50) NOT NULL, + date_of_birth DATE NULL, + year_of_birth INT NULL, + address VARCHAR(200) NULL, + + CONSTRAINT pk_t_author PRIMARY KEY (id) +) +/ + +CREATE TABLE t_book_details ( + id INT NOT NULL, + + CONSTRAINT pk_t_book_details PRIMARY KEY (id) +) +/ + +CREATE TABLE t_book ( + ID INT NOT NULL, + AUTHOR_ID INT NOT NULL, + CO_AUTHOR_ID INT NULL, + DETAILS_ID INT NULL, + TITLE VARCHAR(400) NOT NULL, + PUBLISHED_IN INT NOT NULL, + LANGUAGE_ID INT NOT NULL, + CONTENT_TEXT CLOB NULL, + CONTENT_PDF BLOB NULL, + + CONSTRAINT pk_t_book PRIMARY KEY (ID), + CONSTRAINT fk_t_book_author_id FOREIGN KEY (AUTHOR_ID) REFERENCES t_author(id) ON DELETE CASCADE, + CONSTRAINT fk_t_book_co_author_id FOREIGN KEY (CO_AUTHOR_ID) REFERENCES t_author(id) ON DELETE CASCADE, + CONSTRAINT fk_t_book_details_id FOREIGN KEY (DETAILS_ID) REFERENCES t_book_details(id) ON DELETE CASCADE, + CONSTRAINT fk_t_book_language_id FOREIGN KEY (LANGUAGE_ID) REFERENCES t_language(id) ON DELETE CASCADE +) +/ + +CREATE TABLE t_book_store ( + name VARCHAR(400) NOT NULL, + + CONSTRAINT uk_t_book_store_name PRIMARY KEY(name) +) +/ + +CREATE TABLE t_book_to_book_store ( + book_store_name VARCHAR(400) NOT NULL, + book_id INTEGER NOT NULL, + stock INTEGER, + + CONSTRAINT pk_b2bs PRIMARY KEY(book_store_name, book_id), + CONSTRAINT fk_b2bs_bs_name FOREIGN KEY (book_store_name) + REFERENCES t_book_store (name) + ON DELETE CASCADE, + CONSTRAINT fk_b2bs_b_id FOREIGN KEY (book_id) + REFERENCES t_book (id) + ON DELETE CASCADE +) +/ + +CREATE TABLE x_unused ( + ID INT NOT NULL, + NAME VARCHAR(10) NOT NULL, + BIG_INTEGER DECIMAL(25), + ID_REF INT, + NAME_REF VARCHAR(10), + "CLASS" INT, + FIELDS INT, + CONFIGURATION INT, + U_D_T INT, + META_DATA INT, + TYPE0 INT, + PRIMARY_KEY INT, + PRIMARYKEY INT, + "FIELD 737" DECIMAL(25, 2), + + CONSTRAINT pk_x_unused PRIMARY KEY(ID, NAME), + CONSTRAINT uk_x_unused_id UNIQUE(ID), + CONSTRAINT fk_x_unused_self FOREIGN KEY(ID_REF, NAME_REF) REFERENCES x_unused(ID, NAME) +) +/ + +CREATE TABLE t_986_1 ( + "REF" INT, + + CONSTRAINT pk_986 PRIMARY KEY("REF") +) +/ + +CREATE TABLE t_986_2 ( + "REF" INT, + + CONSTRAINT pk_986 PRIMARY KEY("REF") +) +/ + +CREATE TABLE t_639_numbers_table ( + ID INT NOT NULL, + "SHORT" SMALLINT NULL, + "INTEGER" INT NULL, + "LONG" BIGINT NULL, + BYTE_DECIMAL DECIMAL(2, 0) NULL, + SHORT_DECIMAL DECIMAL(4, 0) NULL, + INTEGER_DECIMAL DECIMAL(9, 0) NULL, + LONG_DECIMAL DECIMAL(18, 0) NULL, + BIG_INTEGER DECIMAL(22, 0) NULL, + BIG_DECIMAL DECIMAL(22, 5) NULL, + "FLOAT" REAL NULL, + "DOUBLE" DOUBLE PRECISION NULL, + + CONSTRAINT pk_t_639_numbers_table PRIMARY KEY(ID) +) +/ + +CREATE TABLE x_test_case_64_69 ( + ID INT NOT NULL, + UNUSED_ID INT, + + CONSTRAINT pk_x_test_case_64_69 PRIMARY KEY(ID) --, + --[cannot reference UK] CONSTRAINT fk_x_test_case_64_69 FOREIGN KEY(UNUSED_ID) REFERENCES x_unused(ID) +) +/ + +CREATE TABLE x_test_case_71 ( + ID INT NOT NULL, + TEST_CASE_64_69_ID INT, + + CONSTRAINT pk_x_test_case_71 PRIMARY KEY(ID), + CONSTRAINT fk_x_test_case_71a FOREIGN KEY(TEST_CASE_64_69_ID) REFERENCES x_test_case_64_69(ID), + CONSTRAINT fk_x_test_case_71b FOREIGN KEY(TEST_CASE_64_69_ID) REFERENCES x_test_case_64_69(ID) +) +/ + +CREATE TABLE x_test_case_85 ( + id int NOT NULL, + x_unused_id int, + x_unused_name VARCHAR(10), + + CONSTRAINT pk_x_test_case_85 PRIMARY KEY(id), + CONSTRAINT fk_x_test_case_85 FOREIGN KEY(x_unused_id, x_unused_name) REFERENCES x_unused(ID, NAME) +) +/ + +CREATE VIEW v_library (author, title) AS +SELECT a.first_name || ' ' || a.last_name, b.title +FROM t_author a JOIN t_book b ON b.author_id = a.id +/ + +CREATE VIEW v_author AS +SELECT * FROM t_author +/ + +CREATE VIEW v_book AS +SELECT * FROM t_book +/ \ No newline at end of file diff --git a/jOOQ-test/src/org/jooq/test/cubrid/generatedclasses/Dba.java b/jOOQ-test/src/org/jooq/test/cubrid/generatedclasses/Dba.java new file mode 100644 index 00000000000..f317c69a7f8 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/cubrid/generatedclasses/Dba.java @@ -0,0 +1,61 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.cubrid.generatedclasses; + +/** + * This class is generated by jOOQ. + */ +public class Dba extends org.jooq.impl.SchemaImpl { + + private static final long serialVersionUID = -1747808426; + + /** + * The singleton instance of DBA + */ + public static final Dba DBA = new Dba(); + + /** + * No further instances allowed + */ + private Dba() { + super("DBA"); + } + + @Override + public final java.util.List> getSequences() { + return java.util.Arrays.>asList( + org.jooq.test.cubrid.generatedclasses.Sequences.T_IDENTITY_PK_AI_ID, + org.jooq.test.cubrid.generatedclasses.Sequences.T_IDENTITY_AI_ID, + org.jooq.test.cubrid.generatedclasses.Sequences.T_TRIGGERS_AI_ID_GENERATED, + org.jooq.test.cubrid.generatedclasses.Sequences.S_AUTHOR_ID); + } + + @Override + public final java.util.List> getTables() { + return java.util.Arrays.>asList( + org.jooq.test.cubrid.generatedclasses.tables.T_639NumbersTable.T_639_NUMBERS_TABLE, + org.jooq.test.cubrid.generatedclasses.tables.T_658Ref.T_658_REF, + org.jooq.test.cubrid.generatedclasses.tables.T_725LobTest.T_725_LOB_TEST, + org.jooq.test.cubrid.generatedclasses.tables.T_785.T_785, + org.jooq.test.cubrid.generatedclasses.tables.T_986_1.T_986_1, + org.jooq.test.cubrid.generatedclasses.tables.T_986_2.T_986_2, + org.jooq.test.cubrid.generatedclasses.tables.TAuthor.T_AUTHOR, + org.jooq.test.cubrid.generatedclasses.tables.TBook.T_BOOK, + org.jooq.test.cubrid.generatedclasses.tables.TBookStore.T_BOOK_STORE, + org.jooq.test.cubrid.generatedclasses.tables.TBookToBookStore.T_BOOK_TO_BOOK_STORE, + org.jooq.test.cubrid.generatedclasses.tables.TBooleans.T_BOOLEANS, + org.jooq.test.cubrid.generatedclasses.tables.TDates.T_DATES, + org.jooq.test.cubrid.generatedclasses.tables.TDirectory.T_DIRECTORY, + org.jooq.test.cubrid.generatedclasses.tables.TIdentity.T_IDENTITY, + org.jooq.test.cubrid.generatedclasses.tables.TIdentityPk.T_IDENTITY_PK, + org.jooq.test.cubrid.generatedclasses.tables.TTriggers.T_TRIGGERS, + org.jooq.test.cubrid.generatedclasses.tables.VAuthor.V_AUTHOR, + org.jooq.test.cubrid.generatedclasses.tables.VBook.V_BOOK, + org.jooq.test.cubrid.generatedclasses.tables.VLibrary.V_LIBRARY, + org.jooq.test.cubrid.generatedclasses.tables.XTestCase_64_69.X_TEST_CASE_64_69, + org.jooq.test.cubrid.generatedclasses.tables.XTestCase_71.X_TEST_CASE_71, + org.jooq.test.cubrid.generatedclasses.tables.XTestCase_85.X_TEST_CASE_85, + org.jooq.test.cubrid.generatedclasses.tables.XUnused.X_UNUSED); + } +} diff --git a/jOOQ-test/src/org/jooq/test/cubrid/generatedclasses/DbaFactory.java b/jOOQ-test/src/org/jooq/test/cubrid/generatedclasses/DbaFactory.java new file mode 100644 index 00000000000..8798835f1e2 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/cubrid/generatedclasses/DbaFactory.java @@ -0,0 +1,41 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.cubrid.generatedclasses; + +/** + * This class is generated by jOOQ. + */ +public class DbaFactory extends org.jooq.util.cubrid.CUBRIDFactory { + + private static final long serialVersionUID = 1993289441; + + /** + * Create a factory with a connection + * + * @param connection The connection to use with objects created from this factory + */ + public DbaFactory(java.sql.Connection connection) { + super(connection); + } + + /** + * Create a factory with a connection and a schema mapping + * + * @deprecated - 2.0.5 - Use {@link #DbaFactory(java.sql.Connection, org.jooq.conf.Settings)} instead + */ + @Deprecated + public DbaFactory(java.sql.Connection connection, org.jooq.SchemaMapping mapping) { + super(connection, mapping); + } + + /** + * Create a factory with a connection and some settings + * + * @param connection The connection to use with objects created from this factory + * @param settings The settings to apply to objects created from this factory + */ + public DbaFactory(java.sql.Connection connection, org.jooq.conf.Settings settings) { + super(connection, settings); + } +} diff --git a/jOOQ-test/src/org/jooq/test/cubrid/generatedclasses/Keys.java b/jOOQ-test/src/org/jooq/test/cubrid/generatedclasses/Keys.java new file mode 100644 index 00000000000..47ac6f58f11 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/cubrid/generatedclasses/Keys.java @@ -0,0 +1,53 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.cubrid.generatedclasses; + +/** + * This class is generated by jOOQ. + * + * A class modelling foreign key relationships between tables of the DBA schema + */ +@SuppressWarnings({"unchecked"}) +public class Keys extends org.jooq.impl.AbstractKeys { + + // IDENTITY definitions + public static final org.jooq.Identity IDENTITY_T_IDENTITY = createIdentity(org.jooq.test.cubrid.generatedclasses.tables.TIdentity.T_IDENTITY, org.jooq.test.cubrid.generatedclasses.tables.TIdentity.ID); + public static final org.jooq.Identity IDENTITY_T_IDENTITY_PK = createIdentity(org.jooq.test.cubrid.generatedclasses.tables.TIdentityPk.T_IDENTITY_PK, org.jooq.test.cubrid.generatedclasses.tables.TIdentityPk.ID); + public static final org.jooq.Identity IDENTITY_T_TRIGGERS = createIdentity(org.jooq.test.cubrid.generatedclasses.tables.TTriggers.T_TRIGGERS, org.jooq.test.cubrid.generatedclasses.tables.TTriggers.ID_GENERATED); + + // UNIQUE and PRIMARY KEY definitions + public static final org.jooq.UniqueKey T_639_NUMBERS_TABLE__PK_T_639_NUMBERS_TABLE = createUniqueKey(org.jooq.test.cubrid.generatedclasses.tables.T_639NumbersTable.T_639_NUMBERS_TABLE, org.jooq.test.cubrid.generatedclasses.tables.T_639NumbersTable.ID); + public static final org.jooq.UniqueKey T_725_LOB_TEST__PK_T_725_LOB_TEST = createUniqueKey(org.jooq.test.cubrid.generatedclasses.tables.T_725LobTest.T_725_LOB_TEST, org.jooq.test.cubrid.generatedclasses.tables.T_725LobTest.ID); + public static final org.jooq.UniqueKey T_986_1__PK_986 = createUniqueKey(org.jooq.test.cubrid.generatedclasses.tables.T_986_1.T_986_1, org.jooq.test.cubrid.generatedclasses.tables.T_986_1.REF); + public static final org.jooq.UniqueKey T_986_2__PK_986 = createUniqueKey(org.jooq.test.cubrid.generatedclasses.tables.T_986_2.T_986_2, org.jooq.test.cubrid.generatedclasses.tables.T_986_2.REF); + public static final org.jooq.UniqueKey T_AUTHOR__PK_T_AUTHOR = createUniqueKey(org.jooq.test.cubrid.generatedclasses.tables.TAuthor.T_AUTHOR, org.jooq.test.cubrid.generatedclasses.tables.TAuthor.ID); + public static final org.jooq.UniqueKey T_BOOK__PK_T_BOOK = createUniqueKey(org.jooq.test.cubrid.generatedclasses.tables.TBook.T_BOOK, org.jooq.test.cubrid.generatedclasses.tables.TBook.ID); + public static final org.jooq.UniqueKey T_BOOK_STORE__UK_T_BOOK_STORE_NAME = createUniqueKey(org.jooq.test.cubrid.generatedclasses.tables.TBookStore.T_BOOK_STORE, org.jooq.test.cubrid.generatedclasses.tables.TBookStore.NAME); + public static final org.jooq.UniqueKey T_BOOK_TO_BOOK_STORE__PK_B2BS = createUniqueKey(org.jooq.test.cubrid.generatedclasses.tables.TBookToBookStore.T_BOOK_TO_BOOK_STORE, org.jooq.test.cubrid.generatedclasses.tables.TBookToBookStore.BOOK_STORE_NAME, org.jooq.test.cubrid.generatedclasses.tables.TBookToBookStore.BOOK_ID); + public static final org.jooq.UniqueKey T_BOOLEANS__PK_T_BOOLEANS = createUniqueKey(org.jooq.test.cubrid.generatedclasses.tables.TBooleans.T_BOOLEANS, org.jooq.test.cubrid.generatedclasses.tables.TBooleans.ID); + public static final org.jooq.UniqueKey T_DATES__PK_T_DATES = createUniqueKey(org.jooq.test.cubrid.generatedclasses.tables.TDates.T_DATES, org.jooq.test.cubrid.generatedclasses.tables.TDates.ID); + public static final org.jooq.UniqueKey T_DIRECTORY__PK_T_DIRECTORY = createUniqueKey(org.jooq.test.cubrid.generatedclasses.tables.TDirectory.T_DIRECTORY, org.jooq.test.cubrid.generatedclasses.tables.TDirectory.ID); + public static final org.jooq.UniqueKey T_IDENTITY_PK__PK_T_IDENTITY_PK = createUniqueKey(org.jooq.test.cubrid.generatedclasses.tables.TIdentityPk.T_IDENTITY_PK, org.jooq.test.cubrid.generatedclasses.tables.TIdentityPk.ID); + public static final org.jooq.UniqueKey T_TRIGGERS__PK_T_TRIGGERS = createUniqueKey(org.jooq.test.cubrid.generatedclasses.tables.TTriggers.T_TRIGGERS, org.jooq.test.cubrid.generatedclasses.tables.TTriggers.ID_GENERATED); + public static final org.jooq.UniqueKey X_TEST_CASE_64_69__PK_X_TEST_CASE_64_69 = createUniqueKey(org.jooq.test.cubrid.generatedclasses.tables.XTestCase_64_69.X_TEST_CASE_64_69, org.jooq.test.cubrid.generatedclasses.tables.XTestCase_64_69.ID); + public static final org.jooq.UniqueKey X_TEST_CASE_71__PK_X_TEST_CASE_71 = createUniqueKey(org.jooq.test.cubrid.generatedclasses.tables.XTestCase_71.X_TEST_CASE_71, org.jooq.test.cubrid.generatedclasses.tables.XTestCase_71.ID); + public static final org.jooq.UniqueKey X_TEST_CASE_85__PK_X_TEST_CASE_85 = createUniqueKey(org.jooq.test.cubrid.generatedclasses.tables.XTestCase_85.X_TEST_CASE_85, org.jooq.test.cubrid.generatedclasses.tables.XTestCase_85.ID); + public static final org.jooq.UniqueKey X_UNUSED__UK_X_UNUSED_ID = createUniqueKey(org.jooq.test.cubrid.generatedclasses.tables.XUnused.X_UNUSED, org.jooq.test.cubrid.generatedclasses.tables.XUnused.ID); + public static final org.jooq.UniqueKey X_UNUSED__PK_X_UNUSED = createUniqueKey(org.jooq.test.cubrid.generatedclasses.tables.XUnused.X_UNUSED, org.jooq.test.cubrid.generatedclasses.tables.XUnused.ID, org.jooq.test.cubrid.generatedclasses.tables.XUnused.NAME); + + // FOREIGN KEY definitions + public static final org.jooq.ForeignKey T_BOOK__FK_T_BOOK_AUTHOR_ID = createForeignKey(T_AUTHOR__PK_T_AUTHOR, org.jooq.test.cubrid.generatedclasses.tables.TBook.T_BOOK, org.jooq.test.cubrid.generatedclasses.tables.TBook.AUTHOR_ID); + public static final org.jooq.ForeignKey T_BOOK__FK_T_BOOK_CO_AUTHOR_ID = createForeignKey(T_AUTHOR__PK_T_AUTHOR, org.jooq.test.cubrid.generatedclasses.tables.TBook.T_BOOK, org.jooq.test.cubrid.generatedclasses.tables.TBook.CO_AUTHOR_ID); + public static final org.jooq.ForeignKey T_BOOK_TO_BOOK_STORE__FK_B2BS_BS_NAME = createForeignKey(T_BOOK_STORE__UK_T_BOOK_STORE_NAME, org.jooq.test.cubrid.generatedclasses.tables.TBookToBookStore.T_BOOK_TO_BOOK_STORE, org.jooq.test.cubrid.generatedclasses.tables.TBookToBookStore.BOOK_STORE_NAME); + public static final org.jooq.ForeignKey T_BOOK_TO_BOOK_STORE__FK_B2BS_B_ID = createForeignKey(T_BOOK__PK_T_BOOK, org.jooq.test.cubrid.generatedclasses.tables.TBookToBookStore.T_BOOK_TO_BOOK_STORE, org.jooq.test.cubrid.generatedclasses.tables.TBookToBookStore.BOOK_ID); + public static final org.jooq.ForeignKey T_DIRECTORY__PK_T_DIRECTORY_SELF = createForeignKey(T_DIRECTORY__PK_T_DIRECTORY, org.jooq.test.cubrid.generatedclasses.tables.TDirectory.T_DIRECTORY, org.jooq.test.cubrid.generatedclasses.tables.TDirectory.PARENT_ID); + public static final org.jooq.ForeignKey X_TEST_CASE_71__FK_X_TEST_CASE_71A = createForeignKey(X_TEST_CASE_64_69__PK_X_TEST_CASE_64_69, org.jooq.test.cubrid.generatedclasses.tables.XTestCase_71.X_TEST_CASE_71, org.jooq.test.cubrid.generatedclasses.tables.XTestCase_71.TEST_CASE_64_69_ID); + public static final org.jooq.ForeignKey X_TEST_CASE_85__FK_X_TEST_CASE_85 = createForeignKey(X_UNUSED__PK_X_UNUSED, org.jooq.test.cubrid.generatedclasses.tables.XTestCase_85.X_TEST_CASE_85, org.jooq.test.cubrid.generatedclasses.tables.XTestCase_85.X_UNUSED_ID, org.jooq.test.cubrid.generatedclasses.tables.XTestCase_85.X_UNUSED_NAME); + public static final org.jooq.ForeignKey X_UNUSED__FK_X_UNUSED_SELF = createForeignKey(X_UNUSED__PK_X_UNUSED, org.jooq.test.cubrid.generatedclasses.tables.XUnused.X_UNUSED, org.jooq.test.cubrid.generatedclasses.tables.XUnused.NAME_REF, org.jooq.test.cubrid.generatedclasses.tables.XUnused.ID_REF); + + /** + * No instances + */ + private Keys() {} +} diff --git a/jOOQ-test/src/org/jooq/test/cubrid/generatedclasses/Sequences.java b/jOOQ-test/src/org/jooq/test/cubrid/generatedclasses/Sequences.java new file mode 100644 index 00000000000..731b491c7f0 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/cubrid/generatedclasses/Sequences.java @@ -0,0 +1,37 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.cubrid.generatedclasses; + +/** + * This class is generated by jOOQ. + * + * Convenience access to all sequences in DBA + */ +public final class Sequences { + + /** + * The sequence DBA.t_identity_pk_ai_id + */ + public static final org.jooq.Sequence T_IDENTITY_PK_AI_ID = new org.jooq.impl.SequenceImpl("t_identity_pk_ai_id", org.jooq.test.cubrid.generatedclasses.Dba.DBA, org.jooq.impl.SQLDataType.INTEGER); + + /** + * The sequence DBA.t_identity_ai_id + */ + public static final org.jooq.Sequence T_IDENTITY_AI_ID = new org.jooq.impl.SequenceImpl("t_identity_ai_id", org.jooq.test.cubrid.generatedclasses.Dba.DBA, org.jooq.impl.SQLDataType.INTEGER); + + /** + * The sequence DBA.t_triggers_ai_id_generated + */ + public static final org.jooq.Sequence T_TRIGGERS_AI_ID_GENERATED = new org.jooq.impl.SequenceImpl("t_triggers_ai_id_generated", org.jooq.test.cubrid.generatedclasses.Dba.DBA, org.jooq.impl.SQLDataType.INTEGER); + + /** + * The sequence DBA.s_author_id + */ + public static final org.jooq.Sequence S_AUTHOR_ID = new org.jooq.impl.SequenceImpl("s_author_id", org.jooq.test.cubrid.generatedclasses.Dba.DBA, org.jooq.impl.SQLDataType.INTEGER); + + /** + * No instances + */ + private Sequences() {} +} diff --git a/jOOQ-test/src/org/jooq/test/cubrid/generatedclasses/Tables.java b/jOOQ-test/src/org/jooq/test/cubrid/generatedclasses/Tables.java new file mode 100644 index 00000000000..5dfb1aa20b7 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/cubrid/generatedclasses/Tables.java @@ -0,0 +1,132 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.cubrid.generatedclasses; + +/** + * This class is generated by jOOQ. + * + * Convenience access to all tables in DBA + */ +public final class Tables { + + /** + * The table DBA.t_639_numbers_table + */ + public static org.jooq.test.cubrid.generatedclasses.tables.T_639NumbersTable T_639_NUMBERS_TABLE = org.jooq.test.cubrid.generatedclasses.tables.T_639NumbersTable.T_639_NUMBERS_TABLE; + + /** + * The table DBA.t_658_ref + */ + public static org.jooq.test.cubrid.generatedclasses.tables.T_658Ref T_658_REF = org.jooq.test.cubrid.generatedclasses.tables.T_658Ref.T_658_REF; + + /** + * The table DBA.t_725_lob_test + */ + public static org.jooq.test.cubrid.generatedclasses.tables.T_725LobTest T_725_LOB_TEST = org.jooq.test.cubrid.generatedclasses.tables.T_725LobTest.T_725_LOB_TEST; + + /** + * The table DBA.t_785 + */ + public static org.jooq.test.cubrid.generatedclasses.tables.T_785 T_785 = org.jooq.test.cubrid.generatedclasses.tables.T_785.T_785; + + /** + * The table DBA.t_986_1 + */ + public static org.jooq.test.cubrid.generatedclasses.tables.T_986_1 T_986_1 = org.jooq.test.cubrid.generatedclasses.tables.T_986_1.T_986_1; + + /** + * The table DBA.t_986_2 + */ + public static org.jooq.test.cubrid.generatedclasses.tables.T_986_2 T_986_2 = org.jooq.test.cubrid.generatedclasses.tables.T_986_2.T_986_2; + + /** + * The table DBA.t_author + */ + public static org.jooq.test.cubrid.generatedclasses.tables.TAuthor T_AUTHOR = org.jooq.test.cubrid.generatedclasses.tables.TAuthor.T_AUTHOR; + + /** + * The table DBA.t_book + */ + public static org.jooq.test.cubrid.generatedclasses.tables.TBook T_BOOK = org.jooq.test.cubrid.generatedclasses.tables.TBook.T_BOOK; + + /** + * The table DBA.t_book_store + */ + public static org.jooq.test.cubrid.generatedclasses.tables.TBookStore T_BOOK_STORE = org.jooq.test.cubrid.generatedclasses.tables.TBookStore.T_BOOK_STORE; + + /** + * The table DBA.t_book_to_book_store + */ + public static org.jooq.test.cubrid.generatedclasses.tables.TBookToBookStore T_BOOK_TO_BOOK_STORE = org.jooq.test.cubrid.generatedclasses.tables.TBookToBookStore.T_BOOK_TO_BOOK_STORE; + + /** + * The table DBA.t_booleans + */ + public static org.jooq.test.cubrid.generatedclasses.tables.TBooleans T_BOOLEANS = org.jooq.test.cubrid.generatedclasses.tables.TBooleans.T_BOOLEANS; + + /** + * The table DBA.t_dates + */ + public static org.jooq.test.cubrid.generatedclasses.tables.TDates T_DATES = org.jooq.test.cubrid.generatedclasses.tables.TDates.T_DATES; + + /** + * The table DBA.t_directory + */ + public static org.jooq.test.cubrid.generatedclasses.tables.TDirectory T_DIRECTORY = org.jooq.test.cubrid.generatedclasses.tables.TDirectory.T_DIRECTORY; + + /** + * The table DBA.t_identity + */ + public static org.jooq.test.cubrid.generatedclasses.tables.TIdentity T_IDENTITY = org.jooq.test.cubrid.generatedclasses.tables.TIdentity.T_IDENTITY; + + /** + * The table DBA.t_identity_pk + */ + public static org.jooq.test.cubrid.generatedclasses.tables.TIdentityPk T_IDENTITY_PK = org.jooq.test.cubrid.generatedclasses.tables.TIdentityPk.T_IDENTITY_PK; + + /** + * The table DBA.t_triggers + */ + public static org.jooq.test.cubrid.generatedclasses.tables.TTriggers T_TRIGGERS = org.jooq.test.cubrid.generatedclasses.tables.TTriggers.T_TRIGGERS; + + /** + * The table DBA.v_author + */ + public static org.jooq.test.cubrid.generatedclasses.tables.VAuthor V_AUTHOR = org.jooq.test.cubrid.generatedclasses.tables.VAuthor.V_AUTHOR; + + /** + * The table DBA.v_book + */ + public static org.jooq.test.cubrid.generatedclasses.tables.VBook V_BOOK = org.jooq.test.cubrid.generatedclasses.tables.VBook.V_BOOK; + + /** + * The table DBA.v_library + */ + public static org.jooq.test.cubrid.generatedclasses.tables.VLibrary V_LIBRARY = org.jooq.test.cubrid.generatedclasses.tables.VLibrary.V_LIBRARY; + + /** + * The table DBA.x_test_case_64_69 + */ + public static org.jooq.test.cubrid.generatedclasses.tables.XTestCase_64_69 X_TEST_CASE_64_69 = org.jooq.test.cubrid.generatedclasses.tables.XTestCase_64_69.X_TEST_CASE_64_69; + + /** + * The table DBA.x_test_case_71 + */ + public static org.jooq.test.cubrid.generatedclasses.tables.XTestCase_71 X_TEST_CASE_71 = org.jooq.test.cubrid.generatedclasses.tables.XTestCase_71.X_TEST_CASE_71; + + /** + * The table DBA.x_test_case_85 + */ + public static org.jooq.test.cubrid.generatedclasses.tables.XTestCase_85 X_TEST_CASE_85 = org.jooq.test.cubrid.generatedclasses.tables.XTestCase_85.X_TEST_CASE_85; + + /** + * The table DBA.x_unused + */ + public static org.jooq.test.cubrid.generatedclasses.tables.XUnused X_UNUSED = org.jooq.test.cubrid.generatedclasses.tables.XUnused.X_UNUSED; + + /** + * No instances + */ + private Tables() {} +} diff --git a/jOOQ-test/src/org/jooq/test/cubrid/generatedclasses/enums/TLanguage.java b/jOOQ-test/src/org/jooq/test/cubrid/generatedclasses/enums/TLanguage.java new file mode 100644 index 00000000000..fa3f601faca --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/cubrid/generatedclasses/enums/TLanguage.java @@ -0,0 +1,65 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.cubrid.generatedclasses.enums; + +/** + * This class is generated by jOOQ. + */ +public enum TLanguage implements org.jooq.MasterDataType { + + /** + * English + */ + en(1, "en", "English"), + + /** + * Deutsch + */ + de(2, "de", "Deutsch"), + + /** + * Français + */ + fr(3, "fr", "Français"), + pt(4, "pt", null), + ; + + private final java.lang.Integer id; + private final java.lang.String cd; + private final java.lang.String description; + + private TLanguage(java.lang.Integer id, java.lang.String cd, java.lang.String description) { + this.id = id; + this.cd = cd; + this.description = description; + } + + @Override + public java.lang.Integer getPrimaryKey() { + return id; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final java.lang.Integer getId() { + return id; + } + + /** + * An uncommented item + */ + public final java.lang.String getCd() { + return cd; + } + + /** + * An uncommented item + */ + public final java.lang.String getDescription() { + return description; + } +} diff --git a/jOOQ-test/src/org/jooq/test/cubrid/generatedclasses/enums/T_658_11.java b/jOOQ-test/src/org/jooq/test/cubrid/generatedclasses/enums/T_658_11.java new file mode 100644 index 00000000000..b1db6545d77 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/cubrid/generatedclasses/enums/T_658_11.java @@ -0,0 +1,46 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.cubrid.generatedclasses.enums; + +/** + * This class is generated by jOOQ. + */ +public enum T_658_11 implements org.jooq.MasterDataType { + + /** + * A + */ + A__("A "), + + /** + * B + */ + B__("B "), + + /** + * C + */ + C__("C "), + ; + + private final java.lang.String id; + + private T_658_11(java.lang.String id) { + this.id = id; + } + + @Override + public java.lang.String getPrimaryKey() { + return id; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final java.lang.String getId() { + return id; + } +} diff --git a/jOOQ-test/src/org/jooq/test/cubrid/generatedclasses/enums/T_658_12.java b/jOOQ-test/src/org/jooq/test/cubrid/generatedclasses/enums/T_658_12.java new file mode 100644 index 00000000000..a92f4e2373c --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/cubrid/generatedclasses/enums/T_658_12.java @@ -0,0 +1,55 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.cubrid.generatedclasses.enums; + +/** + * This class is generated by jOOQ. + */ +public enum T_658_12 implements org.jooq.MasterDataType { + + /** + * A + */ + A__("A ", "A "), + + /** + * B + */ + B__("B ", "B "), + + /** + * C + */ + C__("C ", "C "), + ; + + private final java.lang.String id; + private final java.lang.String cd; + + private T_658_12(java.lang.String id, java.lang.String cd) { + this.id = id; + this.cd = cd; + } + + @Override + public java.lang.String getPrimaryKey() { + return id; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final java.lang.String getId() { + return id; + } + + /** + * An uncommented item + */ + public final java.lang.String getCd() { + return cd; + } +} diff --git a/jOOQ-test/src/org/jooq/test/cubrid/generatedclasses/enums/T_658_21.java b/jOOQ-test/src/org/jooq/test/cubrid/generatedclasses/enums/T_658_21.java new file mode 100644 index 00000000000..7f3deda5172 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/cubrid/generatedclasses/enums/T_658_21.java @@ -0,0 +1,46 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.cubrid.generatedclasses.enums; + +/** + * This class is generated by jOOQ. + */ +public enum T_658_21 implements org.jooq.MasterDataType { + + /** + * 1 + */ + _1(1), + + /** + * 2 + */ + _2(2), + + /** + * 3 + */ + _3(3), + ; + + private final java.lang.Integer id; + + private T_658_21(java.lang.Integer id) { + this.id = id; + } + + @Override + public java.lang.Integer getPrimaryKey() { + return id; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final java.lang.Integer getId() { + return id; + } +} diff --git a/jOOQ-test/src/org/jooq/test/cubrid/generatedclasses/enums/T_658_22.java b/jOOQ-test/src/org/jooq/test/cubrid/generatedclasses/enums/T_658_22.java new file mode 100644 index 00000000000..4cd80885b5b --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/cubrid/generatedclasses/enums/T_658_22.java @@ -0,0 +1,55 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.cubrid.generatedclasses.enums; + +/** + * This class is generated by jOOQ. + */ +public enum T_658_22 implements org.jooq.MasterDataType { + + /** + * 1 + */ + _1(1, 1), + + /** + * 2 + */ + _2(2, 2), + + /** + * 3 + */ + _3(3, 3), + ; + + private final java.lang.Integer id; + private final java.lang.Integer cd; + + private T_658_22(java.lang.Integer id, java.lang.Integer cd) { + this.id = id; + this.cd = cd; + } + + @Override + public java.lang.Integer getPrimaryKey() { + return id; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final java.lang.Integer getId() { + return id; + } + + /** + * An uncommented item + */ + public final java.lang.Integer getCd() { + return cd; + } +} diff --git a/jOOQ-test/src/org/jooq/test/cubrid/generatedclasses/enums/T_658_31.java b/jOOQ-test/src/org/jooq/test/cubrid/generatedclasses/enums/T_658_31.java new file mode 100644 index 00000000000..3e99d14873d --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/cubrid/generatedclasses/enums/T_658_31.java @@ -0,0 +1,46 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.cubrid.generatedclasses.enums; + +/** + * This class is generated by jOOQ. + */ +public enum T_658_31 implements org.jooq.MasterDataType { + + /** + * 1 + */ + _1(1L), + + /** + * 2 + */ + _2(2L), + + /** + * 3 + */ + _3(3L), + ; + + private final java.lang.Long id; + + private T_658_31(java.lang.Long id) { + this.id = id; + } + + @Override + public java.lang.Long getPrimaryKey() { + return id; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final java.lang.Long getId() { + return id; + } +} diff --git a/jOOQ-test/src/org/jooq/test/cubrid/generatedclasses/enums/T_658_32.java b/jOOQ-test/src/org/jooq/test/cubrid/generatedclasses/enums/T_658_32.java new file mode 100644 index 00000000000..818c1314b4b --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/cubrid/generatedclasses/enums/T_658_32.java @@ -0,0 +1,55 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.cubrid.generatedclasses.enums; + +/** + * This class is generated by jOOQ. + */ +public enum T_658_32 implements org.jooq.MasterDataType { + + /** + * 1 + */ + _1(1L, 1L), + + /** + * 2 + */ + _2(2L, 2L), + + /** + * 3 + */ + _3(3L, 3L), + ; + + private final java.lang.Long id; + private final java.lang.Long cd; + + private T_658_32(java.lang.Long id, java.lang.Long cd) { + this.id = id; + this.cd = cd; + } + + @Override + public java.lang.Long getPrimaryKey() { + return id; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final java.lang.Long getId() { + return id; + } + + /** + * An uncommented item + */ + public final java.lang.Long getCd() { + return cd; + } +} diff --git a/jOOQ-test/src/org/jooq/test/cubrid/generatedclasses/tables/TAuthor.java b/jOOQ-test/src/org/jooq/test/cubrid/generatedclasses/tables/TAuthor.java new file mode 100644 index 00000000000..c3c157007f3 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/cubrid/generatedclasses/tables/TAuthor.java @@ -0,0 +1,80 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.cubrid.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class TAuthor extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = -34246579; + + /** + * The singleton instance of DBA.t_author + */ + public static final org.jooq.test.cubrid.generatedclasses.tables.TAuthor T_AUTHOR = new org.jooq.test.cubrid.generatedclasses.tables.TAuthor(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.cubrid.generatedclasses.tables.records.TAuthorRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public static final org.jooq.TableField ID = createField("id", org.jooq.impl.SQLDataType.INTEGER, T_AUTHOR); + + /** + * An uncommented item + */ + public static final org.jooq.TableField FIRST_NAME = createField("first_name", org.jooq.impl.SQLDataType.VARCHAR, T_AUTHOR); + + /** + * An uncommented item + */ + public static final org.jooq.TableField LAST_NAME = createField("last_name", org.jooq.impl.SQLDataType.VARCHAR, T_AUTHOR); + + /** + * An uncommented item + */ + public static final org.jooq.TableField DATE_OF_BIRTH = createField("date_of_birth", org.jooq.impl.SQLDataType.DATE, T_AUTHOR); + + /** + * An uncommented item + */ + public static final org.jooq.TableField YEAR_OF_BIRTH = createField("year_of_birth", org.jooq.impl.SQLDataType.INTEGER, T_AUTHOR); + + /** + * An uncommented item + */ + public static final org.jooq.TableField ADDRESS = createField("address", org.jooq.impl.SQLDataType.VARCHAR, T_AUTHOR); + + /** + * No further instances allowed + */ + private TAuthor() { + super("t_author", org.jooq.test.cubrid.generatedclasses.Dba.DBA); + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.test.cubrid.generatedclasses.Keys.T_AUTHOR__PK_T_AUTHOR; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.test.cubrid.generatedclasses.Keys.T_AUTHOR__PK_T_AUTHOR); + } +} diff --git a/jOOQ-test/src/org/jooq/test/cubrid/generatedclasses/tables/TBook.java b/jOOQ-test/src/org/jooq/test/cubrid/generatedclasses/tables/TBook.java new file mode 100644 index 00000000000..1b3b60fabe9 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/cubrid/generatedclasses/tables/TBook.java @@ -0,0 +1,119 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.cubrid.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class TBook extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = -1669427377; + + /** + * The singleton instance of DBA.t_book + */ + public static final org.jooq.test.cubrid.generatedclasses.tables.TBook T_BOOK = new org.jooq.test.cubrid.generatedclasses.tables.TBook(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.cubrid.generatedclasses.tables.records.TBookRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public static final org.jooq.TableField ID = createField("id", org.jooq.impl.SQLDataType.INTEGER, T_BOOK); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT t_book__fk_t_book_author_id
+	 * FOREIGN KEY (author_id)
+	 * REFERENCES DBA.t_author (id)
+	 * 
+ */ + public static final org.jooq.TableField AUTHOR_ID = createField("author_id", org.jooq.impl.SQLDataType.INTEGER, T_BOOK); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT t_book__fk_t_book_co_author_id
+	 * FOREIGN KEY (co_author_id)
+	 * REFERENCES DBA.t_author (id)
+	 * 
+ */ + public static final org.jooq.TableField CO_AUTHOR_ID = createField("co_author_id", org.jooq.impl.SQLDataType.INTEGER, T_BOOK); + + /** + * An uncommented item + */ + public static final org.jooq.TableField DETAILS_ID = createField("details_id", org.jooq.impl.SQLDataType.INTEGER, T_BOOK); + + /** + * An uncommented item + */ + public static final org.jooq.TableField TITLE = createField("title", org.jooq.impl.SQLDataType.VARCHAR, T_BOOK); + + /** + * An uncommented item + */ + public static final org.jooq.TableField PUBLISHED_IN = createField("published_in", org.jooq.impl.SQLDataType.INTEGER, T_BOOK); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT t_book__fk_t_book_language_id
+	 * FOREIGN KEY (language_id)
+	 * REFERENCES DBA.t_language (id)
+	 * 
+ */ + public static final org.jooq.TableField LANGUAGE_ID = createField("language_id", org.jooq.impl.SQLDataType.INTEGER.asMasterDataType(org.jooq.test.cubrid.generatedclasses.enums.TLanguage.class), T_BOOK); + + /** + * An uncommented item + */ + public static final org.jooq.TableField CONTENT_TEXT = createField("content_text", org.jooq.impl.SQLDataType.CLOB, T_BOOK); + + /** + * An uncommented item + */ + public static final org.jooq.TableField CONTENT_PDF = createField("content_pdf", org.jooq.impl.SQLDataType.BLOB, T_BOOK); + + /** + * No further instances allowed + */ + private TBook() { + super("t_book", org.jooq.test.cubrid.generatedclasses.Dba.DBA); + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.test.cubrid.generatedclasses.Keys.T_BOOK__PK_T_BOOK; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.test.cubrid.generatedclasses.Keys.T_BOOK__PK_T_BOOK); + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getReferences() { + return java.util.Arrays.>asList(org.jooq.test.cubrid.generatedclasses.Keys.T_BOOK__FK_T_BOOK_AUTHOR_ID, org.jooq.test.cubrid.generatedclasses.Keys.T_BOOK__FK_T_BOOK_CO_AUTHOR_ID); + } +} diff --git a/jOOQ-test/src/org/jooq/test/cubrid/generatedclasses/tables/TBookStore.java b/jOOQ-test/src/org/jooq/test/cubrid/generatedclasses/tables/TBookStore.java new file mode 100644 index 00000000000..4cbc8ce9dce --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/cubrid/generatedclasses/tables/TBookStore.java @@ -0,0 +1,55 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.cubrid.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class TBookStore extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = -1509963386; + + /** + * The singleton instance of DBA.t_book_store + */ + public static final org.jooq.test.cubrid.generatedclasses.tables.TBookStore T_BOOK_STORE = new org.jooq.test.cubrid.generatedclasses.tables.TBookStore(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.cubrid.generatedclasses.tables.records.TBookStoreRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public static final org.jooq.TableField NAME = createField("name", org.jooq.impl.SQLDataType.VARCHAR, T_BOOK_STORE); + + /** + * No further instances allowed + */ + private TBookStore() { + super("t_book_store", org.jooq.test.cubrid.generatedclasses.Dba.DBA); + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.test.cubrid.generatedclasses.Keys.T_BOOK_STORE__UK_T_BOOK_STORE_NAME; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.test.cubrid.generatedclasses.Keys.T_BOOK_STORE__UK_T_BOOK_STORE_NAME); + } +} diff --git a/jOOQ-test/src/org/jooq/test/cubrid/generatedclasses/tables/TBookToBookStore.java b/jOOQ-test/src/org/jooq/test/cubrid/generatedclasses/tables/TBookToBookStore.java new file mode 100644 index 00000000000..4ef7831b100 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/cubrid/generatedclasses/tables/TBookToBookStore.java @@ -0,0 +1,85 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.cubrid.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class TBookToBookStore extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = -371040864; + + /** + * The singleton instance of DBA.t_book_to_book_store + */ + public static final org.jooq.test.cubrid.generatedclasses.tables.TBookToBookStore T_BOOK_TO_BOOK_STORE = new org.jooq.test.cubrid.generatedclasses.tables.TBookToBookStore(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.cubrid.generatedclasses.tables.records.TBookToBookStoreRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT t_book_to_book_store__fk_b2bs_bs_name
+	 * FOREIGN KEY (book_store_name)
+	 * REFERENCES DBA.t_book_store (name)
+	 * 
+ */ + public static final org.jooq.TableField BOOK_STORE_NAME = createField("book_store_name", org.jooq.impl.SQLDataType.VARCHAR, T_BOOK_TO_BOOK_STORE); + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT t_book_to_book_store__fk_b2bs_b_id
+	 * FOREIGN KEY (book_id)
+	 * REFERENCES DBA.t_book (id)
+	 * 
+ */ + public static final org.jooq.TableField BOOK_ID = createField("book_id", org.jooq.impl.SQLDataType.INTEGER, T_BOOK_TO_BOOK_STORE); + + /** + * An uncommented item + */ + public static final org.jooq.TableField STOCK = createField("stock", org.jooq.impl.SQLDataType.INTEGER, T_BOOK_TO_BOOK_STORE); + + /** + * No further instances allowed + */ + private TBookToBookStore() { + super("t_book_to_book_store", org.jooq.test.cubrid.generatedclasses.Dba.DBA); + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.test.cubrid.generatedclasses.Keys.T_BOOK_TO_BOOK_STORE__PK_B2BS; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.test.cubrid.generatedclasses.Keys.T_BOOK_TO_BOOK_STORE__PK_B2BS); + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getReferences() { + return java.util.Arrays.>asList(org.jooq.test.cubrid.generatedclasses.Keys.T_BOOK_TO_BOOK_STORE__FK_B2BS_BS_NAME, org.jooq.test.cubrid.generatedclasses.Keys.T_BOOK_TO_BOOK_STORE__FK_B2BS_B_ID); + } +} diff --git a/jOOQ-test/src/org/jooq/test/cubrid/generatedclasses/tables/TBooleans.java b/jOOQ-test/src/org/jooq/test/cubrid/generatedclasses/tables/TBooleans.java new file mode 100644 index 00000000000..485b961fd76 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/cubrid/generatedclasses/tables/TBooleans.java @@ -0,0 +1,105 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.cubrid.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class TBooleans extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = -1061516338; + + /** + * The singleton instance of DBA.t_booleans + */ + public static final org.jooq.test.cubrid.generatedclasses.tables.TBooleans T_BOOLEANS = new org.jooq.test.cubrid.generatedclasses.tables.TBooleans(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.cubrid.generatedclasses.tables.records.TBooleansRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public static final org.jooq.TableField ID = createField("id", org.jooq.impl.SQLDataType.INTEGER, T_BOOLEANS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField ONE_ZERO = createField("one_zero", org.jooq.impl.SQLDataType.INTEGER.asConvertedDataType(new org.jooq.test._.converters.Boolean_10_Converter()), T_BOOLEANS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField TRUE_FALSE_LC = createField("true_false_lc", org.jooq.impl.SQLDataType.VARCHAR.asConvertedDataType(new org.jooq.test._.converters.Boolean_TF_LC_Converter()), T_BOOLEANS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField TRUE_FALSE_UC = createField("true_false_uc", org.jooq.impl.SQLDataType.VARCHAR.asConvertedDataType(new org.jooq.test._.converters.Boolean_TF_UC_Converter()), T_BOOLEANS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField YES_NO_LC = createField("yes_no_lc", org.jooq.impl.SQLDataType.VARCHAR.asConvertedDataType(new org.jooq.test._.converters.Boolean_YES_NO_LC_Converter()), T_BOOLEANS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField YES_NO_UC = createField("yes_no_uc", org.jooq.impl.SQLDataType.VARCHAR.asConvertedDataType(new org.jooq.test._.converters.Boolean_YES_NO_UC_Converter()), T_BOOLEANS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField Y_N_LC = createField("y_n_lc", org.jooq.impl.SQLDataType.CHAR.asConvertedDataType(new org.jooq.test._.converters.Boolean_YN_LC_Converter()), T_BOOLEANS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField Y_N_UC = createField("y_n_uc", org.jooq.impl.SQLDataType.CHAR.asConvertedDataType(new org.jooq.test._.converters.Boolean_YN_UC_Converter()), T_BOOLEANS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField VC_BOOLEAN = createField("vc_boolean", org.jooq.impl.SQLDataType.BOOLEAN, T_BOOLEANS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField C_BOOLEAN = createField("c_boolean", org.jooq.impl.SQLDataType.BOOLEAN, T_BOOLEANS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField N_BOOLEAN = createField("n_boolean", org.jooq.impl.SQLDataType.BOOLEAN, T_BOOLEANS); + + /** + * No further instances allowed + */ + private TBooleans() { + super("t_booleans", org.jooq.test.cubrid.generatedclasses.Dba.DBA); + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.test.cubrid.generatedclasses.Keys.T_BOOLEANS__PK_T_BOOLEANS; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.test.cubrid.generatedclasses.Keys.T_BOOLEANS__PK_T_BOOLEANS); + } +} diff --git a/jOOQ-test/src/org/jooq/test/cubrid/generatedclasses/tables/TDates.java b/jOOQ-test/src/org/jooq/test/cubrid/generatedclasses/tables/TDates.java new file mode 100644 index 00000000000..b4b1c4f461c --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/cubrid/generatedclasses/tables/TDates.java @@ -0,0 +1,80 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.cubrid.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class TDates extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = -1425777378; + + /** + * The singleton instance of DBA.t_dates + */ + public static final org.jooq.test.cubrid.generatedclasses.tables.TDates T_DATES = new org.jooq.test.cubrid.generatedclasses.tables.TDates(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.cubrid.generatedclasses.tables.records.TDatesRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public static final org.jooq.TableField ID = createField("id", org.jooq.impl.SQLDataType.INTEGER, T_DATES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField D = createField("d", org.jooq.impl.SQLDataType.DATE, T_DATES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField T = createField("t", org.jooq.impl.SQLDataType.TIME, T_DATES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField TS = createField("ts", org.jooq.impl.SQLDataType.TIMESTAMP, T_DATES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField D_INT = createField("d_int", org.jooq.impl.SQLDataType.INTEGER, T_DATES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField TS_BIGINT = createField("ts_bigint", org.jooq.impl.SQLDataType.BIGINT, T_DATES); + + /** + * No further instances allowed + */ + private TDates() { + super("t_dates", org.jooq.test.cubrid.generatedclasses.Dba.DBA); + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.test.cubrid.generatedclasses.Keys.T_DATES__PK_T_DATES; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.test.cubrid.generatedclasses.Keys.T_DATES__PK_T_DATES); + } +} diff --git a/jOOQ-test/src/org/jooq/test/cubrid/generatedclasses/tables/TDirectory.java b/jOOQ-test/src/org/jooq/test/cubrid/generatedclasses/tables/TDirectory.java new file mode 100644 index 00000000000..67235e4914d --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/cubrid/generatedclasses/tables/TDirectory.java @@ -0,0 +1,82 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.cubrid.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class TDirectory extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = 1907354153; + + /** + * The singleton instance of DBA.t_directory + */ + public static final org.jooq.test.cubrid.generatedclasses.tables.TDirectory T_DIRECTORY = new org.jooq.test.cubrid.generatedclasses.tables.TDirectory(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.cubrid.generatedclasses.tables.records.TDirectoryRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public static final org.jooq.TableField ID = createField("id", org.jooq.impl.SQLDataType.INTEGER, T_DIRECTORY); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT t_directory__pk_t_directory_self
+	 * FOREIGN KEY (parent_id)
+	 * REFERENCES DBA.t_directory (id)
+	 * 
+ */ + public static final org.jooq.TableField PARENT_ID = createField("parent_id", org.jooq.impl.SQLDataType.INTEGER, T_DIRECTORY); + + /** + * An uncommented item + */ + public static final org.jooq.TableField IS_DIRECTORY = createField("is_directory", org.jooq.impl.SQLDataType.INTEGER, T_DIRECTORY); + + /** + * An uncommented item + */ + public static final org.jooq.TableField NAME = createField("name", org.jooq.impl.SQLDataType.VARCHAR, T_DIRECTORY); + + /** + * No further instances allowed + */ + private TDirectory() { + super("t_directory", org.jooq.test.cubrid.generatedclasses.Dba.DBA); + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.test.cubrid.generatedclasses.Keys.T_DIRECTORY__PK_T_DIRECTORY; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.test.cubrid.generatedclasses.Keys.T_DIRECTORY__PK_T_DIRECTORY); + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getReferences() { + return java.util.Arrays.>asList(org.jooq.test.cubrid.generatedclasses.Keys.T_DIRECTORY__PK_T_DIRECTORY_SELF); + } +} diff --git a/jOOQ-test/src/org/jooq/test/cubrid/generatedclasses/tables/TIdentity.java b/jOOQ-test/src/org/jooq/test/cubrid/generatedclasses/tables/TIdentity.java new file mode 100644 index 00000000000..99f60671888 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/cubrid/generatedclasses/tables/TIdentity.java @@ -0,0 +1,52 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.cubrid.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class TIdentity extends org.jooq.impl.TableImpl { + + private static final long serialVersionUID = -1763717746; + + /** + * The singleton instance of DBA.t_identity + */ + public static final org.jooq.test.cubrid.generatedclasses.tables.TIdentity T_IDENTITY = new org.jooq.test.cubrid.generatedclasses.tables.TIdentity(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.cubrid.generatedclasses.tables.records.TIdentityRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + */ + public static final org.jooq.TableField ID = createField("id", org.jooq.impl.SQLDataType.INTEGER, T_IDENTITY); + + /** + * An uncommented item + */ + public static final org.jooq.TableField VAL = createField("val", org.jooq.impl.SQLDataType.INTEGER, T_IDENTITY); + + /** + * No further instances allowed + */ + private TIdentity() { + super("t_identity", org.jooq.test.cubrid.generatedclasses.Dba.DBA); + } + + @Override + public org.jooq.Identity getIdentity() { + return org.jooq.test.cubrid.generatedclasses.Keys.IDENTITY_T_IDENTITY; + } +} diff --git a/jOOQ-test/src/org/jooq/test/cubrid/generatedclasses/tables/TIdentityPk.java b/jOOQ-test/src/org/jooq/test/cubrid/generatedclasses/tables/TIdentityPk.java new file mode 100644 index 00000000000..492b6ecf2bc --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/cubrid/generatedclasses/tables/TIdentityPk.java @@ -0,0 +1,65 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.cubrid.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class TIdentityPk extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = -1845996016; + + /** + * The singleton instance of DBA.t_identity_pk + */ + public static final org.jooq.test.cubrid.generatedclasses.tables.TIdentityPk T_IDENTITY_PK = new org.jooq.test.cubrid.generatedclasses.tables.TIdentityPk(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.cubrid.generatedclasses.tables.records.TIdentityPkRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public static final org.jooq.TableField ID = createField("id", org.jooq.impl.SQLDataType.INTEGER, T_IDENTITY_PK); + + /** + * An uncommented item + */ + public static final org.jooq.TableField VAL = createField("val", org.jooq.impl.SQLDataType.INTEGER, T_IDENTITY_PK); + + /** + * No further instances allowed + */ + private TIdentityPk() { + super("t_identity_pk", org.jooq.test.cubrid.generatedclasses.Dba.DBA); + } + + @Override + public org.jooq.Identity getIdentity() { + return org.jooq.test.cubrid.generatedclasses.Keys.IDENTITY_T_IDENTITY_PK; + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.test.cubrid.generatedclasses.Keys.T_IDENTITY_PK__PK_T_IDENTITY_PK; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.test.cubrid.generatedclasses.Keys.T_IDENTITY_PK__PK_T_IDENTITY_PK); + } +} diff --git a/jOOQ-test/src/org/jooq/test/cubrid/generatedclasses/tables/TTriggers.java b/jOOQ-test/src/org/jooq/test/cubrid/generatedclasses/tables/TTriggers.java new file mode 100644 index 00000000000..eb8b60c95ce --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/cubrid/generatedclasses/tables/TTriggers.java @@ -0,0 +1,70 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.cubrid.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class TTriggers extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = 105199587; + + /** + * The singleton instance of DBA.t_triggers + */ + public static final org.jooq.test.cubrid.generatedclasses.tables.TTriggers T_TRIGGERS = new org.jooq.test.cubrid.generatedclasses.tables.TTriggers(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.cubrid.generatedclasses.tables.records.TTriggersRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public static final org.jooq.TableField ID_GENERATED = createField("id_generated", org.jooq.impl.SQLDataType.INTEGER, T_TRIGGERS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField ID = createField("id", org.jooq.impl.SQLDataType.INTEGER, T_TRIGGERS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField COUNTER = createField("counter", org.jooq.impl.SQLDataType.INTEGER, T_TRIGGERS); + + /** + * No further instances allowed + */ + private TTriggers() { + super("t_triggers", org.jooq.test.cubrid.generatedclasses.Dba.DBA); + } + + @Override + public org.jooq.Identity getIdentity() { + return org.jooq.test.cubrid.generatedclasses.Keys.IDENTITY_T_TRIGGERS; + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.test.cubrid.generatedclasses.Keys.T_TRIGGERS__PK_T_TRIGGERS; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.test.cubrid.generatedclasses.Keys.T_TRIGGERS__PK_T_TRIGGERS); + } +} diff --git a/jOOQ-test/src/org/jooq/test/cubrid/generatedclasses/tables/T_639NumbersTable.java b/jOOQ-test/src/org/jooq/test/cubrid/generatedclasses/tables/T_639NumbersTable.java new file mode 100644 index 00000000000..e90926ece3e --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/cubrid/generatedclasses/tables/T_639NumbersTable.java @@ -0,0 +1,110 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.cubrid.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class T_639NumbersTable extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = 450704777; + + /** + * The singleton instance of DBA.t_639_numbers_table + */ + public static final org.jooq.test.cubrid.generatedclasses.tables.T_639NumbersTable T_639_NUMBERS_TABLE = new org.jooq.test.cubrid.generatedclasses.tables.T_639NumbersTable(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.cubrid.generatedclasses.tables.records.T_639NumbersTableRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public static final org.jooq.TableField ID = createField("id", org.jooq.impl.SQLDataType.INTEGER, T_639_NUMBERS_TABLE); + + /** + * An uncommented item + */ + public static final org.jooq.TableField SHORT = createField("short", org.jooq.impl.SQLDataType.SMALLINT, T_639_NUMBERS_TABLE); + + /** + * An uncommented item + */ + public static final org.jooq.TableField INTEGER = createField("integer", org.jooq.impl.SQLDataType.INTEGER, T_639_NUMBERS_TABLE); + + /** + * An uncommented item + */ + public static final org.jooq.TableField LONG = createField("long", org.jooq.impl.SQLDataType.BIGINT, T_639_NUMBERS_TABLE); + + /** + * An uncommented item + */ + public static final org.jooq.TableField BYTE_DECIMAL = createField("byte_decimal", org.jooq.impl.SQLDataType.TINYINT, T_639_NUMBERS_TABLE); + + /** + * An uncommented item + */ + public static final org.jooq.TableField SHORT_DECIMAL = createField("short_decimal", org.jooq.impl.SQLDataType.SMALLINT, T_639_NUMBERS_TABLE); + + /** + * An uncommented item + */ + public static final org.jooq.TableField INTEGER_DECIMAL = createField("integer_decimal", org.jooq.impl.SQLDataType.INTEGER, T_639_NUMBERS_TABLE); + + /** + * An uncommented item + */ + public static final org.jooq.TableField LONG_DECIMAL = createField("long_decimal", org.jooq.impl.SQLDataType.BIGINT, T_639_NUMBERS_TABLE); + + /** + * An uncommented item + */ + public static final org.jooq.TableField BIG_INTEGER = createField("big_integer", org.jooq.impl.SQLDataType.DECIMAL_INTEGER, T_639_NUMBERS_TABLE); + + /** + * An uncommented item + */ + public static final org.jooq.TableField BIG_DECIMAL = createField("big_decimal", org.jooq.impl.SQLDataType.DECIMAL, T_639_NUMBERS_TABLE); + + /** + * An uncommented item + */ + public static final org.jooq.TableField FLOAT = createField("float", org.jooq.impl.SQLDataType.REAL, T_639_NUMBERS_TABLE); + + /** + * An uncommented item + */ + public static final org.jooq.TableField DOUBLE = createField("double", org.jooq.impl.SQLDataType.DOUBLE, T_639_NUMBERS_TABLE); + + /** + * No further instances allowed + */ + private T_639NumbersTable() { + super("t_639_numbers_table", org.jooq.test.cubrid.generatedclasses.Dba.DBA); + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.test.cubrid.generatedclasses.Keys.T_639_NUMBERS_TABLE__PK_T_639_NUMBERS_TABLE; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.test.cubrid.generatedclasses.Keys.T_639_NUMBERS_TABLE__PK_T_639_NUMBERS_TABLE); + } +} diff --git a/jOOQ-test/src/org/jooq/test/cubrid/generatedclasses/tables/T_658Ref.java b/jOOQ-test/src/org/jooq/test/cubrid/generatedclasses/tables/T_658Ref.java new file mode 100644 index 00000000000..19a117c9ba4 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/cubrid/generatedclasses/tables/T_658Ref.java @@ -0,0 +1,109 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.cubrid.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class T_658Ref extends org.jooq.impl.TableImpl { + + private static final long serialVersionUID = -901917680; + + /** + * The singleton instance of DBA.t_658_ref + */ + public static final org.jooq.test.cubrid.generatedclasses.tables.T_658Ref T_658_REF = new org.jooq.test.cubrid.generatedclasses.tables.T_658Ref(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.cubrid.generatedclasses.tables.records.T_658RefRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT t_658_ref__fk_t_658_11
+	 * FOREIGN KEY (ref_11)
+	 * REFERENCES DBA.t_658_11 (id)
+	 * 
+ */ + public static final org.jooq.TableField REF_11 = createField("ref_11", org.jooq.impl.SQLDataType.CHAR.asMasterDataType(org.jooq.test.cubrid.generatedclasses.enums.T_658_11.class), T_658_REF); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT t_658_ref__fk_t_658_21
+	 * FOREIGN KEY (ref_21)
+	 * REFERENCES DBA.t_658_21 (id)
+	 * 
+ */ + public static final org.jooq.TableField REF_21 = createField("ref_21", org.jooq.impl.SQLDataType.INTEGER.asMasterDataType(org.jooq.test.cubrid.generatedclasses.enums.T_658_21.class), T_658_REF); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT t_658_ref__fk_t_658_31
+	 * FOREIGN KEY (ref_31)
+	 * REFERENCES DBA.t_658_31 (id)
+	 * 
+ */ + public static final org.jooq.TableField REF_31 = createField("ref_31", org.jooq.impl.SQLDataType.BIGINT.asMasterDataType(org.jooq.test.cubrid.generatedclasses.enums.T_658_31.class), T_658_REF); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT t_658_ref__fk_t_658_12
+	 * FOREIGN KEY (ref_12)
+	 * REFERENCES DBA.t_658_12 (id)
+	 * 
+ */ + public static final org.jooq.TableField REF_12 = createField("ref_12", org.jooq.impl.SQLDataType.CHAR.asMasterDataType(org.jooq.test.cubrid.generatedclasses.enums.T_658_12.class), T_658_REF); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT t_658_ref__fk_t_658_22
+	 * FOREIGN KEY (ref_22)
+	 * REFERENCES DBA.t_658_22 (id)
+	 * 
+ */ + public static final org.jooq.TableField REF_22 = createField("ref_22", org.jooq.impl.SQLDataType.INTEGER.asMasterDataType(org.jooq.test.cubrid.generatedclasses.enums.T_658_22.class), T_658_REF); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT t_658_ref__fk_t_658_32
+	 * FOREIGN KEY (ref_32)
+	 * REFERENCES DBA.t_658_32 (id)
+	 * 
+ */ + public static final org.jooq.TableField REF_32 = createField("ref_32", org.jooq.impl.SQLDataType.BIGINT.asMasterDataType(org.jooq.test.cubrid.generatedclasses.enums.T_658_32.class), T_658_REF); + + /** + * No further instances allowed + */ + private T_658Ref() { + super("t_658_ref", org.jooq.test.cubrid.generatedclasses.Dba.DBA); + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getReferences() { + return java.util.Arrays.>asList(); + } +} diff --git a/jOOQ-test/src/org/jooq/test/cubrid/generatedclasses/tables/T_725LobTest.java b/jOOQ-test/src/org/jooq/test/cubrid/generatedclasses/tables/T_725LobTest.java new file mode 100644 index 00000000000..fba4f7c6493 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/cubrid/generatedclasses/tables/T_725LobTest.java @@ -0,0 +1,60 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.cubrid.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class T_725LobTest extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = 1339637629; + + /** + * The singleton instance of DBA.t_725_lob_test + */ + public static final org.jooq.test.cubrid.generatedclasses.tables.T_725LobTest T_725_LOB_TEST = new org.jooq.test.cubrid.generatedclasses.tables.T_725LobTest(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.cubrid.generatedclasses.tables.records.T_725LobTestRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public static final org.jooq.TableField ID = createField("id", org.jooq.impl.SQLDataType.INTEGER, T_725_LOB_TEST); + + /** + * An uncommented item + */ + public static final org.jooq.TableField LOB = createField("lob", org.jooq.impl.SQLDataType.BLOB, T_725_LOB_TEST); + + /** + * No further instances allowed + */ + private T_725LobTest() { + super("t_725_lob_test", org.jooq.test.cubrid.generatedclasses.Dba.DBA); + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.test.cubrid.generatedclasses.Keys.T_725_LOB_TEST__PK_T_725_LOB_TEST; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.test.cubrid.generatedclasses.Keys.T_725_LOB_TEST__PK_T_725_LOB_TEST); + } +} diff --git a/jOOQ-test/src/org/jooq/test/cubrid/generatedclasses/tables/T_785.java b/jOOQ-test/src/org/jooq/test/cubrid/generatedclasses/tables/T_785.java new file mode 100644 index 00000000000..af3655ea570 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/cubrid/generatedclasses/tables/T_785.java @@ -0,0 +1,52 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.cubrid.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class T_785 extends org.jooq.impl.TableImpl { + + private static final long serialVersionUID = 1378432667; + + /** + * The singleton instance of DBA.t_785 + */ + public static final org.jooq.test.cubrid.generatedclasses.tables.T_785 T_785 = new org.jooq.test.cubrid.generatedclasses.tables.T_785(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.cubrid.generatedclasses.tables.records.T_785Record.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + */ + public static final org.jooq.TableField ID = createField("id", org.jooq.impl.SQLDataType.INTEGER, T_785); + + /** + * An uncommented item + */ + public static final org.jooq.TableField NAME = createField("name", org.jooq.impl.SQLDataType.VARCHAR, T_785); + + /** + * An uncommented item + */ + public static final org.jooq.TableField VALUE = createField("value", org.jooq.impl.SQLDataType.VARCHAR, T_785); + + /** + * No further instances allowed + */ + private T_785() { + super("t_785", org.jooq.test.cubrid.generatedclasses.Dba.DBA); + } +} diff --git a/jOOQ-test/src/org/jooq/test/cubrid/generatedclasses/tables/T_986_1.java b/jOOQ-test/src/org/jooq/test/cubrid/generatedclasses/tables/T_986_1.java new file mode 100644 index 00000000000..cee8ab0a252 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/cubrid/generatedclasses/tables/T_986_1.java @@ -0,0 +1,55 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.cubrid.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class T_986_1 extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = -744523710; + + /** + * The singleton instance of DBA.t_986_1 + */ + public static final org.jooq.test.cubrid.generatedclasses.tables.T_986_1 T_986_1 = new org.jooq.test.cubrid.generatedclasses.tables.T_986_1(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.cubrid.generatedclasses.tables.records.T_986_1Record.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public static final org.jooq.TableField REF = createField("ref", org.jooq.impl.SQLDataType.INTEGER, T_986_1); + + /** + * No further instances allowed + */ + private T_986_1() { + super("t_986_1", org.jooq.test.cubrid.generatedclasses.Dba.DBA); + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.test.cubrid.generatedclasses.Keys.T_986_1__PK_986; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.test.cubrid.generatedclasses.Keys.T_986_1__PK_986); + } +} diff --git a/jOOQ-test/src/org/jooq/test/cubrid/generatedclasses/tables/T_986_2.java b/jOOQ-test/src/org/jooq/test/cubrid/generatedclasses/tables/T_986_2.java new file mode 100644 index 00000000000..b9dbae4d7f1 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/cubrid/generatedclasses/tables/T_986_2.java @@ -0,0 +1,55 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.cubrid.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class T_986_2 extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = -752663292; + + /** + * The singleton instance of DBA.t_986_2 + */ + public static final org.jooq.test.cubrid.generatedclasses.tables.T_986_2 T_986_2 = new org.jooq.test.cubrid.generatedclasses.tables.T_986_2(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.cubrid.generatedclasses.tables.records.T_986_2Record.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public static final org.jooq.TableField REF = createField("ref", org.jooq.impl.SQLDataType.INTEGER, T_986_2); + + /** + * No further instances allowed + */ + private T_986_2() { + super("t_986_2", org.jooq.test.cubrid.generatedclasses.Dba.DBA); + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.test.cubrid.generatedclasses.Keys.T_986_2__PK_986; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.test.cubrid.generatedclasses.Keys.T_986_2__PK_986); + } +} diff --git a/jOOQ-test/src/org/jooq/test/cubrid/generatedclasses/tables/VAuthor.java b/jOOQ-test/src/org/jooq/test/cubrid/generatedclasses/tables/VAuthor.java new file mode 100644 index 00000000000..ba9daf09202 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/cubrid/generatedclasses/tables/VAuthor.java @@ -0,0 +1,67 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.cubrid.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class VAuthor extends org.jooq.impl.TableImpl { + + private static final long serialVersionUID = 1862404908; + + /** + * The singleton instance of DBA.v_author + */ + public static final org.jooq.test.cubrid.generatedclasses.tables.VAuthor V_AUTHOR = new org.jooq.test.cubrid.generatedclasses.tables.VAuthor(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.cubrid.generatedclasses.tables.records.VAuthorRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + */ + public static final org.jooq.TableField ID = createField("id", org.jooq.impl.SQLDataType.INTEGER, V_AUTHOR); + + /** + * An uncommented item + */ + public static final org.jooq.TableField FIRST_NAME = createField("first_name", org.jooq.impl.SQLDataType.VARCHAR, V_AUTHOR); + + /** + * An uncommented item + */ + public static final org.jooq.TableField LAST_NAME = createField("last_name", org.jooq.impl.SQLDataType.VARCHAR, V_AUTHOR); + + /** + * An uncommented item + */ + public static final org.jooq.TableField DATE_OF_BIRTH = createField("date_of_birth", org.jooq.impl.SQLDataType.DATE, V_AUTHOR); + + /** + * An uncommented item + */ + public static final org.jooq.TableField YEAR_OF_BIRTH = createField("year_of_birth", org.jooq.impl.SQLDataType.INTEGER, V_AUTHOR); + + /** + * An uncommented item + */ + public static final org.jooq.TableField ADDRESS = createField("address", org.jooq.impl.SQLDataType.VARCHAR, V_AUTHOR); + + /** + * No further instances allowed + */ + private VAuthor() { + super("v_author", org.jooq.test.cubrid.generatedclasses.Dba.DBA); + } +} diff --git a/jOOQ-test/src/org/jooq/test/cubrid/generatedclasses/tables/VBook.java b/jOOQ-test/src/org/jooq/test/cubrid/generatedclasses/tables/VBook.java new file mode 100644 index 00000000000..af7ce8ab1e4 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/cubrid/generatedclasses/tables/VBook.java @@ -0,0 +1,82 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.cubrid.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class VBook extends org.jooq.impl.TableImpl { + + private static final long serialVersionUID = 1453274785; + + /** + * The singleton instance of DBA.v_book + */ + public static final org.jooq.test.cubrid.generatedclasses.tables.VBook V_BOOK = new org.jooq.test.cubrid.generatedclasses.tables.VBook(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.cubrid.generatedclasses.tables.records.VBookRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + */ + public static final org.jooq.TableField ID = createField("id", org.jooq.impl.SQLDataType.INTEGER, V_BOOK); + + /** + * An uncommented item + */ + public static final org.jooq.TableField AUTHOR_ID = createField("author_id", org.jooq.impl.SQLDataType.INTEGER, V_BOOK); + + /** + * An uncommented item + */ + public static final org.jooq.TableField CO_AUTHOR_ID = createField("co_author_id", org.jooq.impl.SQLDataType.INTEGER, V_BOOK); + + /** + * An uncommented item + */ + public static final org.jooq.TableField DETAILS_ID = createField("details_id", org.jooq.impl.SQLDataType.INTEGER, V_BOOK); + + /** + * An uncommented item + */ + public static final org.jooq.TableField TITLE = createField("title", org.jooq.impl.SQLDataType.VARCHAR, V_BOOK); + + /** + * An uncommented item + */ + public static final org.jooq.TableField PUBLISHED_IN = createField("published_in", org.jooq.impl.SQLDataType.INTEGER, V_BOOK); + + /** + * An uncommented item + */ + public static final org.jooq.TableField LANGUAGE_ID = createField("language_id", org.jooq.impl.SQLDataType.INTEGER, V_BOOK); + + /** + * An uncommented item + */ + public static final org.jooq.TableField CONTENT_TEXT = createField("content_text", org.jooq.impl.SQLDataType.CLOB, V_BOOK); + + /** + * An uncommented item + */ + public static final org.jooq.TableField CONTENT_PDF = createField("content_pdf", org.jooq.impl.SQLDataType.BLOB, V_BOOK); + + /** + * No further instances allowed + */ + private VBook() { + super("v_book", org.jooq.test.cubrid.generatedclasses.Dba.DBA); + } +} diff --git a/jOOQ-test/src/org/jooq/test/cubrid/generatedclasses/tables/VLibrary.java b/jOOQ-test/src/org/jooq/test/cubrid/generatedclasses/tables/VLibrary.java new file mode 100644 index 00000000000..174270b2c96 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/cubrid/generatedclasses/tables/VLibrary.java @@ -0,0 +1,47 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.cubrid.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class VLibrary extends org.jooq.impl.TableImpl { + + private static final long serialVersionUID = -441053036; + + /** + * The singleton instance of DBA.v_library + */ + public static final org.jooq.test.cubrid.generatedclasses.tables.VLibrary V_LIBRARY = new org.jooq.test.cubrid.generatedclasses.tables.VLibrary(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.cubrid.generatedclasses.tables.records.VLibraryRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + */ + public static final org.jooq.TableField AUTHOR = createField("author", org.jooq.impl.SQLDataType.VARCHAR, V_LIBRARY); + + /** + * An uncommented item + */ + public static final org.jooq.TableField TITLE = createField("title", org.jooq.impl.SQLDataType.VARCHAR, V_LIBRARY); + + /** + * No further instances allowed + */ + private VLibrary() { + super("v_library", org.jooq.test.cubrid.generatedclasses.Dba.DBA); + } +} diff --git a/jOOQ-test/src/org/jooq/test/cubrid/generatedclasses/tables/XTestCase_64_69.java b/jOOQ-test/src/org/jooq/test/cubrid/generatedclasses/tables/XTestCase_64_69.java new file mode 100644 index 00000000000..809390a2180 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/cubrid/generatedclasses/tables/XTestCase_64_69.java @@ -0,0 +1,60 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.cubrid.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class XTestCase_64_69 extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = 1273408426; + + /** + * The singleton instance of DBA.x_test_case_64_69 + */ + public static final org.jooq.test.cubrid.generatedclasses.tables.XTestCase_64_69 X_TEST_CASE_64_69 = new org.jooq.test.cubrid.generatedclasses.tables.XTestCase_64_69(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.cubrid.generatedclasses.tables.records.XTestCase_64_69Record.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public static final org.jooq.TableField ID = createField("id", org.jooq.impl.SQLDataType.INTEGER, X_TEST_CASE_64_69); + + /** + * An uncommented item + */ + public static final org.jooq.TableField UNUSED_ID = createField("unused_id", org.jooq.impl.SQLDataType.INTEGER, X_TEST_CASE_64_69); + + /** + * No further instances allowed + */ + private XTestCase_64_69() { + super("x_test_case_64_69", org.jooq.test.cubrid.generatedclasses.Dba.DBA); + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.test.cubrid.generatedclasses.Keys.X_TEST_CASE_64_69__PK_X_TEST_CASE_64_69; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.test.cubrid.generatedclasses.Keys.X_TEST_CASE_64_69__PK_X_TEST_CASE_64_69); + } +} diff --git a/jOOQ-test/src/org/jooq/test/cubrid/generatedclasses/tables/XTestCase_71.java b/jOOQ-test/src/org/jooq/test/cubrid/generatedclasses/tables/XTestCase_71.java new file mode 100644 index 00000000000..e939f4275f0 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/cubrid/generatedclasses/tables/XTestCase_71.java @@ -0,0 +1,72 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.cubrid.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class XTestCase_71 extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = 82438267; + + /** + * The singleton instance of DBA.x_test_case_71 + */ + public static final org.jooq.test.cubrid.generatedclasses.tables.XTestCase_71 X_TEST_CASE_71 = new org.jooq.test.cubrid.generatedclasses.tables.XTestCase_71(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.cubrid.generatedclasses.tables.records.XTestCase_71Record.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public static final org.jooq.TableField ID = createField("id", org.jooq.impl.SQLDataType.INTEGER, X_TEST_CASE_71); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT x_test_case_71__fk_x_test_case_71a
+	 * FOREIGN KEY (test_case_64_69_id)
+	 * REFERENCES DBA.x_test_case_64_69 (id)
+	 * 
+ */ + public static final org.jooq.TableField TEST_CASE_64_69_ID = createField("test_case_64_69_id", org.jooq.impl.SQLDataType.INTEGER, X_TEST_CASE_71); + + /** + * No further instances allowed + */ + private XTestCase_71() { + super("x_test_case_71", org.jooq.test.cubrid.generatedclasses.Dba.DBA); + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.test.cubrid.generatedclasses.Keys.X_TEST_CASE_71__PK_X_TEST_CASE_71; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.test.cubrid.generatedclasses.Keys.X_TEST_CASE_71__PK_X_TEST_CASE_71); + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getReferences() { + return java.util.Arrays.>asList(org.jooq.test.cubrid.generatedclasses.Keys.X_TEST_CASE_71__FK_X_TEST_CASE_71A); + } +} diff --git a/jOOQ-test/src/org/jooq/test/cubrid/generatedclasses/tables/XTestCase_85.java b/jOOQ-test/src/org/jooq/test/cubrid/generatedclasses/tables/XTestCase_85.java new file mode 100644 index 00000000000..557d40b2740 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/cubrid/generatedclasses/tables/XTestCase_85.java @@ -0,0 +1,83 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.cubrid.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class XTestCase_85 extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = 1521739796; + + /** + * The singleton instance of DBA.x_test_case_85 + */ + public static final org.jooq.test.cubrid.generatedclasses.tables.XTestCase_85 X_TEST_CASE_85 = new org.jooq.test.cubrid.generatedclasses.tables.XTestCase_85(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.cubrid.generatedclasses.tables.records.XTestCase_85Record.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public static final org.jooq.TableField ID = createField("id", org.jooq.impl.SQLDataType.INTEGER, X_TEST_CASE_85); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT x_test_case_85__fk_x_test_case_85
+	 * FOREIGN KEY (x_unused_id, x_unused_name)
+	 * REFERENCES DBA.x_unused (id, name)
+	 * 
+ */ + public static final org.jooq.TableField X_UNUSED_ID = createField("x_unused_id", org.jooq.impl.SQLDataType.INTEGER, X_TEST_CASE_85); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT x_test_case_85__fk_x_test_case_85
+	 * FOREIGN KEY (x_unused_id, x_unused_name)
+	 * REFERENCES DBA.x_unused (id, name)
+	 * 
+ */ + public static final org.jooq.TableField X_UNUSED_NAME = createField("x_unused_name", org.jooq.impl.SQLDataType.VARCHAR, X_TEST_CASE_85); + + /** + * No further instances allowed + */ + private XTestCase_85() { + super("x_test_case_85", org.jooq.test.cubrid.generatedclasses.Dba.DBA); + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.test.cubrid.generatedclasses.Keys.X_TEST_CASE_85__PK_X_TEST_CASE_85; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.test.cubrid.generatedclasses.Keys.X_TEST_CASE_85__PK_X_TEST_CASE_85); + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getReferences() { + return java.util.Arrays.>asList(org.jooq.test.cubrid.generatedclasses.Keys.X_TEST_CASE_85__FK_X_TEST_CASE_85); + } +} diff --git a/jOOQ-test/src/org/jooq/test/cubrid/generatedclasses/tables/XUnused.java b/jOOQ-test/src/org/jooq/test/cubrid/generatedclasses/tables/XUnused.java new file mode 100644 index 00000000000..0b5f4552876 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/cubrid/generatedclasses/tables/XUnused.java @@ -0,0 +1,140 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.cubrid.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class XUnused extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = -1210755002; + + /** + * The singleton instance of DBA.x_unused + */ + public static final org.jooq.test.cubrid.generatedclasses.tables.XUnused X_UNUSED = new org.jooq.test.cubrid.generatedclasses.tables.XUnused(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.cubrid.generatedclasses.tables.records.XUnusedRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public static final org.jooq.TableField ID = createField("id", org.jooq.impl.SQLDataType.INTEGER, X_UNUSED); + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public static final org.jooq.TableField NAME = createField("name", org.jooq.impl.SQLDataType.VARCHAR, X_UNUSED); + + /** + * An uncommented item + */ + public static final org.jooq.TableField BIG_INTEGER = createField("big_integer", org.jooq.impl.SQLDataType.DECIMAL_INTEGER, X_UNUSED); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT x_unused__fk_x_unused_self
+	 * FOREIGN KEY (name_ref, id_ref)
+	 * REFERENCES DBA.x_unused (id, name)
+	 * 
+ */ + public static final org.jooq.TableField ID_REF = createField("id_ref", org.jooq.impl.SQLDataType.INTEGER, X_UNUSED); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT x_unused__fk_x_unused_self
+	 * FOREIGN KEY (name_ref, id_ref)
+	 * REFERENCES DBA.x_unused (id, name)
+	 * 
+ */ + public static final org.jooq.TableField NAME_REF = createField("name_ref", org.jooq.impl.SQLDataType.VARCHAR, X_UNUSED); + + /** + * An uncommented item + */ + public static final org.jooq.TableField CLASS = createField("class", org.jooq.impl.SQLDataType.INTEGER, X_UNUSED); + + /** + * An uncommented item + */ + public static final org.jooq.TableField FIELDS = createField("fields", org.jooq.impl.SQLDataType.INTEGER, X_UNUSED); + + /** + * An uncommented item + */ + public static final org.jooq.TableField CONFIGURATION = createField("configuration", org.jooq.impl.SQLDataType.INTEGER, X_UNUSED); + + /** + * An uncommented item + */ + public static final org.jooq.TableField U_D_T = createField("u_d_t", org.jooq.impl.SQLDataType.INTEGER, X_UNUSED); + + /** + * An uncommented item + */ + public static final org.jooq.TableField META_DATA = createField("meta_data", org.jooq.impl.SQLDataType.INTEGER, X_UNUSED); + + /** + * An uncommented item + */ + public static final org.jooq.TableField TYPE0 = createField("type0", org.jooq.impl.SQLDataType.INTEGER, X_UNUSED); + + /** + * An uncommented item + */ + public static final org.jooq.TableField PRIMARY_KEY = createField("primary_key", org.jooq.impl.SQLDataType.INTEGER, X_UNUSED); + + /** + * An uncommented item + */ + public static final org.jooq.TableField PRIMARYKEY = createField("primarykey", org.jooq.impl.SQLDataType.INTEGER, X_UNUSED); + + /** + * An uncommented item + */ + public static final org.jooq.TableField FIELD_737 = createField("field 737", org.jooq.impl.SQLDataType.DECIMAL, X_UNUSED); + + /** + * No further instances allowed + */ + private XUnused() { + super("x_unused", org.jooq.test.cubrid.generatedclasses.Dba.DBA); + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.test.cubrid.generatedclasses.Keys.X_UNUSED__PK_X_UNUSED; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.test.cubrid.generatedclasses.Keys.X_UNUSED__UK_X_UNUSED_ID, org.jooq.test.cubrid.generatedclasses.Keys.X_UNUSED__PK_X_UNUSED); + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getReferences() { + return java.util.Arrays.>asList(org.jooq.test.cubrid.generatedclasses.Keys.X_UNUSED__FK_X_UNUSED_SELF); + } +} diff --git a/jOOQ-test/src/org/jooq/test/cubrid/generatedclasses/tables/records/TAuthorRecord.java b/jOOQ-test/src/org/jooq/test/cubrid/generatedclasses/tables/records/TAuthorRecord.java new file mode 100644 index 00000000000..6b7ac5940d2 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/cubrid/generatedclasses/tables/records/TAuthorRecord.java @@ -0,0 +1,131 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.cubrid.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + */ +public class TAuthorRecord extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = -787232008; + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setId(java.lang.Integer value) { + setValue(org.jooq.test.cubrid.generatedclasses.tables.TAuthor.ID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.lang.Integer getId() { + return getValue(org.jooq.test.cubrid.generatedclasses.tables.TAuthor.ID); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.util.List fetchTBookListByAuthorId() { + return create() + .selectFrom(org.jooq.test.cubrid.generatedclasses.tables.TBook.T_BOOK) + .where(org.jooq.test.cubrid.generatedclasses.tables.TBook.AUTHOR_ID.equal(getValue(org.jooq.test.cubrid.generatedclasses.tables.TAuthor.ID))) + .fetch(); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.util.List fetchTBookListByCoAuthorId() { + return create() + .selectFrom(org.jooq.test.cubrid.generatedclasses.tables.TBook.T_BOOK) + .where(org.jooq.test.cubrid.generatedclasses.tables.TBook.CO_AUTHOR_ID.equal(getValue(org.jooq.test.cubrid.generatedclasses.tables.TAuthor.ID))) + .fetch(); + } + + /** + * An uncommented item + */ + public void setFirstName(java.lang.String value) { + setValue(org.jooq.test.cubrid.generatedclasses.tables.TAuthor.FIRST_NAME, value); + } + + /** + * An uncommented item + */ + public java.lang.String getFirstName() { + return getValue(org.jooq.test.cubrid.generatedclasses.tables.TAuthor.FIRST_NAME); + } + + /** + * An uncommented item + */ + public void setLastName(java.lang.String value) { + setValue(org.jooq.test.cubrid.generatedclasses.tables.TAuthor.LAST_NAME, value); + } + + /** + * An uncommented item + */ + public java.lang.String getLastName() { + return getValue(org.jooq.test.cubrid.generatedclasses.tables.TAuthor.LAST_NAME); + } + + /** + * An uncommented item + */ + public void setDateOfBirth(java.sql.Date value) { + setValue(org.jooq.test.cubrid.generatedclasses.tables.TAuthor.DATE_OF_BIRTH, value); + } + + /** + * An uncommented item + */ + public java.sql.Date getDateOfBirth() { + return getValue(org.jooq.test.cubrid.generatedclasses.tables.TAuthor.DATE_OF_BIRTH); + } + + /** + * An uncommented item + */ + public void setYearOfBirth(java.lang.Integer value) { + setValue(org.jooq.test.cubrid.generatedclasses.tables.TAuthor.YEAR_OF_BIRTH, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getYearOfBirth() { + return getValue(org.jooq.test.cubrid.generatedclasses.tables.TAuthor.YEAR_OF_BIRTH); + } + + /** + * An uncommented item + */ + public void setAddress(java.lang.String value) { + setValue(org.jooq.test.cubrid.generatedclasses.tables.TAuthor.ADDRESS, value); + } + + /** + * An uncommented item + */ + public java.lang.String getAddress() { + return getValue(org.jooq.test.cubrid.generatedclasses.tables.TAuthor.ADDRESS); + } + + /** + * Create a detached TAuthorRecord + */ + public TAuthorRecord() { + super(org.jooq.test.cubrid.generatedclasses.tables.TAuthor.T_AUTHOR); + } +} diff --git a/jOOQ-test/src/org/jooq/test/cubrid/generatedclasses/tables/records/TBookRecord.java b/jOOQ-test/src/org/jooq/test/cubrid/generatedclasses/tables/records/TBookRecord.java new file mode 100644 index 00000000000..b53a811d99d --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/cubrid/generatedclasses/tables/records/TBookRecord.java @@ -0,0 +1,229 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.cubrid.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + */ +public class TBookRecord extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = -1296099813; + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setId(java.lang.Integer value) { + setValue(org.jooq.test.cubrid.generatedclasses.tables.TBook.ID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.lang.Integer getId() { + return getValue(org.jooq.test.cubrid.generatedclasses.tables.TBook.ID); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.util.List fetchTBookToBookStoreList() { + return create() + .selectFrom(org.jooq.test.cubrid.generatedclasses.tables.TBookToBookStore.T_BOOK_TO_BOOK_STORE) + .where(org.jooq.test.cubrid.generatedclasses.tables.TBookToBookStore.BOOK_ID.equal(getValue(org.jooq.test.cubrid.generatedclasses.tables.TBook.ID))) + .fetch(); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT t_book__fk_t_book_author_id
+	 * FOREIGN KEY (author_id)
+	 * REFERENCES DBA.t_author (id)
+	 * 
+ */ + public void setAuthorId(java.lang.Integer value) { + setValue(org.jooq.test.cubrid.generatedclasses.tables.TBook.AUTHOR_ID, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT t_book__fk_t_book_author_id
+	 * FOREIGN KEY (author_id)
+	 * REFERENCES DBA.t_author (id)
+	 * 
+ */ + public java.lang.Integer getAuthorId() { + return getValue(org.jooq.test.cubrid.generatedclasses.tables.TBook.AUTHOR_ID); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT t_book__fk_t_book_author_id
+	 * FOREIGN KEY (author_id)
+	 * REFERENCES DBA.t_author (id)
+	 * 
+ */ + public org.jooq.test.cubrid.generatedclasses.tables.records.TAuthorRecord fetchTAuthorByAuthorId() { + return create() + .selectFrom(org.jooq.test.cubrid.generatedclasses.tables.TAuthor.T_AUTHOR) + .where(org.jooq.test.cubrid.generatedclasses.tables.TAuthor.ID.equal(getValue(org.jooq.test.cubrid.generatedclasses.tables.TBook.AUTHOR_ID))) + .fetchOne(); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT t_book__fk_t_book_co_author_id
+	 * FOREIGN KEY (co_author_id)
+	 * REFERENCES DBA.t_author (id)
+	 * 
+ */ + public void setCoAuthorId(java.lang.Integer value) { + setValue(org.jooq.test.cubrid.generatedclasses.tables.TBook.CO_AUTHOR_ID, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT t_book__fk_t_book_co_author_id
+	 * FOREIGN KEY (co_author_id)
+	 * REFERENCES DBA.t_author (id)
+	 * 
+ */ + public java.lang.Integer getCoAuthorId() { + return getValue(org.jooq.test.cubrid.generatedclasses.tables.TBook.CO_AUTHOR_ID); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT t_book__fk_t_book_co_author_id
+	 * FOREIGN KEY (co_author_id)
+	 * REFERENCES DBA.t_author (id)
+	 * 
+ */ + public org.jooq.test.cubrid.generatedclasses.tables.records.TAuthorRecord fetchTAuthorByCoAuthorId() { + return create() + .selectFrom(org.jooq.test.cubrid.generatedclasses.tables.TAuthor.T_AUTHOR) + .where(org.jooq.test.cubrid.generatedclasses.tables.TAuthor.ID.equal(getValue(org.jooq.test.cubrid.generatedclasses.tables.TBook.CO_AUTHOR_ID))) + .fetchOne(); + } + + /** + * An uncommented item + */ + public void setDetailsId(java.lang.Integer value) { + setValue(org.jooq.test.cubrid.generatedclasses.tables.TBook.DETAILS_ID, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getDetailsId() { + return getValue(org.jooq.test.cubrid.generatedclasses.tables.TBook.DETAILS_ID); + } + + /** + * An uncommented item + */ + public void setTitle(java.lang.String value) { + setValue(org.jooq.test.cubrid.generatedclasses.tables.TBook.TITLE, value); + } + + /** + * An uncommented item + */ + public java.lang.String getTitle() { + return getValue(org.jooq.test.cubrid.generatedclasses.tables.TBook.TITLE); + } + + /** + * An uncommented item + */ + public void setPublishedIn(java.lang.Integer value) { + setValue(org.jooq.test.cubrid.generatedclasses.tables.TBook.PUBLISHED_IN, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getPublishedIn() { + return getValue(org.jooq.test.cubrid.generatedclasses.tables.TBook.PUBLISHED_IN); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT t_book__fk_t_book_language_id
+	 * FOREIGN KEY (language_id)
+	 * REFERENCES DBA.t_language (id)
+	 * 
+ */ + public void setLanguageId(org.jooq.test.cubrid.generatedclasses.enums.TLanguage value) { + setValue(org.jooq.test.cubrid.generatedclasses.tables.TBook.LANGUAGE_ID, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT t_book__fk_t_book_language_id
+	 * FOREIGN KEY (language_id)
+	 * REFERENCES DBA.t_language (id)
+	 * 
+ */ + public org.jooq.test.cubrid.generatedclasses.enums.TLanguage getLanguageId() { + return getValue(org.jooq.test.cubrid.generatedclasses.tables.TBook.LANGUAGE_ID); + } + + /** + * An uncommented item + */ + public void setContentText(java.lang.String value) { + setValue(org.jooq.test.cubrid.generatedclasses.tables.TBook.CONTENT_TEXT, value); + } + + /** + * An uncommented item + */ + public java.lang.String getContentText() { + return getValue(org.jooq.test.cubrid.generatedclasses.tables.TBook.CONTENT_TEXT); + } + + /** + * An uncommented item + */ + public void setContentPdf(byte[] value) { + setValue(org.jooq.test.cubrid.generatedclasses.tables.TBook.CONTENT_PDF, value); + } + + /** + * An uncommented item + */ + public byte[] getContentPdf() { + return getValue(org.jooq.test.cubrid.generatedclasses.tables.TBook.CONTENT_PDF); + } + + /** + * Create a detached TBookRecord + */ + public TBookRecord() { + super(org.jooq.test.cubrid.generatedclasses.tables.TBook.T_BOOK); + } +} diff --git a/jOOQ-test/src/org/jooq/test/cubrid/generatedclasses/tables/records/TBookStoreRecord.java b/jOOQ-test/src/org/jooq/test/cubrid/generatedclasses/tables/records/TBookStoreRecord.java new file mode 100644 index 00000000000..4233523bc24 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/cubrid/generatedclasses/tables/records/TBookStoreRecord.java @@ -0,0 +1,49 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.cubrid.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + */ +public class TBookStoreRecord extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = -1568069532; + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setName(java.lang.String value) { + setValue(org.jooq.test.cubrid.generatedclasses.tables.TBookStore.NAME, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.lang.String getName() { + return getValue(org.jooq.test.cubrid.generatedclasses.tables.TBookStore.NAME); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.util.List fetchTBookToBookStoreList() { + return create() + .selectFrom(org.jooq.test.cubrid.generatedclasses.tables.TBookToBookStore.T_BOOK_TO_BOOK_STORE) + .where(org.jooq.test.cubrid.generatedclasses.tables.TBookToBookStore.BOOK_STORE_NAME.equal(getValue(org.jooq.test.cubrid.generatedclasses.tables.TBookStore.NAME))) + .fetch(); + } + + /** + * Create a detached TBookStoreRecord + */ + public TBookStoreRecord() { + super(org.jooq.test.cubrid.generatedclasses.tables.TBookStore.T_BOOK_STORE); + } +} diff --git a/jOOQ-test/src/org/jooq/test/cubrid/generatedclasses/tables/records/TBookToBookStoreRecord.java b/jOOQ-test/src/org/jooq/test/cubrid/generatedclasses/tables/records/TBookToBookStoreRecord.java new file mode 100644 index 00000000000..e8da75eceea --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/cubrid/generatedclasses/tables/records/TBookToBookStoreRecord.java @@ -0,0 +1,129 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.cubrid.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + */ +public class TBookToBookStoreRecord extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = -1140647159; + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT t_book_to_book_store__fk_b2bs_bs_name
+	 * FOREIGN KEY (book_store_name)
+	 * REFERENCES DBA.t_book_store (name)
+	 * 
+ */ + public void setBookStoreName(java.lang.String value) { + setValue(org.jooq.test.cubrid.generatedclasses.tables.TBookToBookStore.BOOK_STORE_NAME, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT t_book_to_book_store__fk_b2bs_bs_name
+	 * FOREIGN KEY (book_store_name)
+	 * REFERENCES DBA.t_book_store (name)
+	 * 
+ */ + public java.lang.String getBookStoreName() { + return getValue(org.jooq.test.cubrid.generatedclasses.tables.TBookToBookStore.BOOK_STORE_NAME); + } + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT t_book_to_book_store__fk_b2bs_bs_name
+	 * FOREIGN KEY (book_store_name)
+	 * REFERENCES DBA.t_book_store (name)
+	 * 
+ */ + public org.jooq.test.cubrid.generatedclasses.tables.records.TBookStoreRecord fetchTBookStore() { + return create() + .selectFrom(org.jooq.test.cubrid.generatedclasses.tables.TBookStore.T_BOOK_STORE) + .where(org.jooq.test.cubrid.generatedclasses.tables.TBookStore.NAME.equal(getValue(org.jooq.test.cubrid.generatedclasses.tables.TBookToBookStore.BOOK_STORE_NAME))) + .fetchOne(); + } + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT t_book_to_book_store__fk_b2bs_b_id
+	 * FOREIGN KEY (book_id)
+	 * REFERENCES DBA.t_book (id)
+	 * 
+ */ + public void setBookId(java.lang.Integer value) { + setValue(org.jooq.test.cubrid.generatedclasses.tables.TBookToBookStore.BOOK_ID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT t_book_to_book_store__fk_b2bs_b_id
+	 * FOREIGN KEY (book_id)
+	 * REFERENCES DBA.t_book (id)
+	 * 
+ */ + public java.lang.Integer getBookId() { + return getValue(org.jooq.test.cubrid.generatedclasses.tables.TBookToBookStore.BOOK_ID); + } + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT t_book_to_book_store__fk_b2bs_b_id
+	 * FOREIGN KEY (book_id)
+	 * REFERENCES DBA.t_book (id)
+	 * 
+ */ + public org.jooq.test.cubrid.generatedclasses.tables.records.TBookRecord fetchTBook() { + return create() + .selectFrom(org.jooq.test.cubrid.generatedclasses.tables.TBook.T_BOOK) + .where(org.jooq.test.cubrid.generatedclasses.tables.TBook.ID.equal(getValue(org.jooq.test.cubrid.generatedclasses.tables.TBookToBookStore.BOOK_ID))) + .fetchOne(); + } + + /** + * An uncommented item + */ + public void setStock(java.lang.Integer value) { + setValue(org.jooq.test.cubrid.generatedclasses.tables.TBookToBookStore.STOCK, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getStock() { + return getValue(org.jooq.test.cubrid.generatedclasses.tables.TBookToBookStore.STOCK); + } + + /** + * Create a detached TBookToBookStoreRecord + */ + public TBookToBookStoreRecord() { + super(org.jooq.test.cubrid.generatedclasses.tables.TBookToBookStore.T_BOOK_TO_BOOK_STORE); + } +} diff --git a/jOOQ-test/src/org/jooq/test/cubrid/generatedclasses/tables/records/TBooleansRecord.java b/jOOQ-test/src/org/jooq/test/cubrid/generatedclasses/tables/records/TBooleansRecord.java new file mode 100644 index 00000000000..36be8067907 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/cubrid/generatedclasses/tables/records/TBooleansRecord.java @@ -0,0 +1,177 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.cubrid.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + */ +public class TBooleansRecord extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = 1787028237; + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setId(java.lang.Integer value) { + setValue(org.jooq.test.cubrid.generatedclasses.tables.TBooleans.ID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.lang.Integer getId() { + return getValue(org.jooq.test.cubrid.generatedclasses.tables.TBooleans.ID); + } + + /** + * An uncommented item + */ + public void setOneZero(org.jooq.test._.converters.Boolean_10 value) { + setValue(org.jooq.test.cubrid.generatedclasses.tables.TBooleans.ONE_ZERO, value); + } + + /** + * An uncommented item + */ + public org.jooq.test._.converters.Boolean_10 getOneZero() { + return getValue(org.jooq.test.cubrid.generatedclasses.tables.TBooleans.ONE_ZERO); + } + + /** + * An uncommented item + */ + public void setTrueFalseLc(org.jooq.test._.converters.Boolean_TF_LC value) { + setValue(org.jooq.test.cubrid.generatedclasses.tables.TBooleans.TRUE_FALSE_LC, value); + } + + /** + * An uncommented item + */ + public org.jooq.test._.converters.Boolean_TF_LC getTrueFalseLc() { + return getValue(org.jooq.test.cubrid.generatedclasses.tables.TBooleans.TRUE_FALSE_LC); + } + + /** + * An uncommented item + */ + public void setTrueFalseUc(org.jooq.test._.converters.Boolean_TF_UC value) { + setValue(org.jooq.test.cubrid.generatedclasses.tables.TBooleans.TRUE_FALSE_UC, value); + } + + /** + * An uncommented item + */ + public org.jooq.test._.converters.Boolean_TF_UC getTrueFalseUc() { + return getValue(org.jooq.test.cubrid.generatedclasses.tables.TBooleans.TRUE_FALSE_UC); + } + + /** + * An uncommented item + */ + public void setYesNoLc(org.jooq.test._.converters.Boolean_YES_NO_LC value) { + setValue(org.jooq.test.cubrid.generatedclasses.tables.TBooleans.YES_NO_LC, value); + } + + /** + * An uncommented item + */ + public org.jooq.test._.converters.Boolean_YES_NO_LC getYesNoLc() { + return getValue(org.jooq.test.cubrid.generatedclasses.tables.TBooleans.YES_NO_LC); + } + + /** + * An uncommented item + */ + public void setYesNoUc(org.jooq.test._.converters.Boolean_YES_NO_UC value) { + setValue(org.jooq.test.cubrid.generatedclasses.tables.TBooleans.YES_NO_UC, value); + } + + /** + * An uncommented item + */ + public org.jooq.test._.converters.Boolean_YES_NO_UC getYesNoUc() { + return getValue(org.jooq.test.cubrid.generatedclasses.tables.TBooleans.YES_NO_UC); + } + + /** + * An uncommented item + */ + public void setYNLc(org.jooq.test._.converters.Boolean_YN_LC value) { + setValue(org.jooq.test.cubrid.generatedclasses.tables.TBooleans.Y_N_LC, value); + } + + /** + * An uncommented item + */ + public org.jooq.test._.converters.Boolean_YN_LC getYNLc() { + return getValue(org.jooq.test.cubrid.generatedclasses.tables.TBooleans.Y_N_LC); + } + + /** + * An uncommented item + */ + public void setYNUc(org.jooq.test._.converters.Boolean_YN_UC value) { + setValue(org.jooq.test.cubrid.generatedclasses.tables.TBooleans.Y_N_UC, value); + } + + /** + * An uncommented item + */ + public org.jooq.test._.converters.Boolean_YN_UC getYNUc() { + return getValue(org.jooq.test.cubrid.generatedclasses.tables.TBooleans.Y_N_UC); + } + + /** + * An uncommented item + */ + public void setVcBoolean(java.lang.Boolean value) { + setValue(org.jooq.test.cubrid.generatedclasses.tables.TBooleans.VC_BOOLEAN, value); + } + + /** + * An uncommented item + */ + public java.lang.Boolean getVcBoolean() { + return getValue(org.jooq.test.cubrid.generatedclasses.tables.TBooleans.VC_BOOLEAN); + } + + /** + * An uncommented item + */ + public void setCBoolean(java.lang.Boolean value) { + setValue(org.jooq.test.cubrid.generatedclasses.tables.TBooleans.C_BOOLEAN, value); + } + + /** + * An uncommented item + */ + public java.lang.Boolean getCBoolean() { + return getValue(org.jooq.test.cubrid.generatedclasses.tables.TBooleans.C_BOOLEAN); + } + + /** + * An uncommented item + */ + public void setNBoolean(java.lang.Boolean value) { + setValue(org.jooq.test.cubrid.generatedclasses.tables.TBooleans.N_BOOLEAN, value); + } + + /** + * An uncommented item + */ + public java.lang.Boolean getNBoolean() { + return getValue(org.jooq.test.cubrid.generatedclasses.tables.TBooleans.N_BOOLEAN); + } + + /** + * Create a detached TBooleansRecord + */ + public TBooleansRecord() { + super(org.jooq.test.cubrid.generatedclasses.tables.TBooleans.T_BOOLEANS); + } +} diff --git a/jOOQ-test/src/org/jooq/test/cubrid/generatedclasses/tables/records/TDatesRecord.java b/jOOQ-test/src/org/jooq/test/cubrid/generatedclasses/tables/records/TDatesRecord.java new file mode 100644 index 00000000000..4fc3efc7b60 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/cubrid/generatedclasses/tables/records/TDatesRecord.java @@ -0,0 +1,107 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.cubrid.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + */ +public class TDatesRecord extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = -173000149; + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setId(java.lang.Integer value) { + setValue(org.jooq.test.cubrid.generatedclasses.tables.TDates.ID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.lang.Integer getId() { + return getValue(org.jooq.test.cubrid.generatedclasses.tables.TDates.ID); + } + + /** + * An uncommented item + */ + public void setD(java.sql.Date value) { + setValue(org.jooq.test.cubrid.generatedclasses.tables.TDates.D, value); + } + + /** + * An uncommented item + */ + public java.sql.Date getD() { + return getValue(org.jooq.test.cubrid.generatedclasses.tables.TDates.D); + } + + /** + * An uncommented item + */ + public void setT(java.sql.Time value) { + setValue(org.jooq.test.cubrid.generatedclasses.tables.TDates.T, value); + } + + /** + * An uncommented item + */ + public java.sql.Time getT() { + return getValue(org.jooq.test.cubrid.generatedclasses.tables.TDates.T); + } + + /** + * An uncommented item + */ + public void setTs(java.sql.Timestamp value) { + setValue(org.jooq.test.cubrid.generatedclasses.tables.TDates.TS, value); + } + + /** + * An uncommented item + */ + public java.sql.Timestamp getTs() { + return getValue(org.jooq.test.cubrid.generatedclasses.tables.TDates.TS); + } + + /** + * An uncommented item + */ + public void setDInt(java.lang.Integer value) { + setValue(org.jooq.test.cubrid.generatedclasses.tables.TDates.D_INT, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getDInt() { + return getValue(org.jooq.test.cubrid.generatedclasses.tables.TDates.D_INT); + } + + /** + * An uncommented item + */ + public void setTsBigint(java.lang.Long value) { + setValue(org.jooq.test.cubrid.generatedclasses.tables.TDates.TS_BIGINT, value); + } + + /** + * An uncommented item + */ + public java.lang.Long getTsBigint() { + return getValue(org.jooq.test.cubrid.generatedclasses.tables.TDates.TS_BIGINT); + } + + /** + * Create a detached TDatesRecord + */ + public TDatesRecord() { + super(org.jooq.test.cubrid.generatedclasses.tables.TDates.T_DATES); + } +} diff --git a/jOOQ-test/src/org/jooq/test/cubrid/generatedclasses/tables/records/TDirectoryRecord.java b/jOOQ-test/src/org/jooq/test/cubrid/generatedclasses/tables/records/TDirectoryRecord.java new file mode 100644 index 00000000000..ad1b153c9b8 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/cubrid/generatedclasses/tables/records/TDirectoryRecord.java @@ -0,0 +1,119 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.cubrid.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + */ +public class TDirectoryRecord extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = -179681099; + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setId(java.lang.Integer value) { + setValue(org.jooq.test.cubrid.generatedclasses.tables.TDirectory.ID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.lang.Integer getId() { + return getValue(org.jooq.test.cubrid.generatedclasses.tables.TDirectory.ID); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.util.List fetchTDirectoryList() { + return create() + .selectFrom(org.jooq.test.cubrid.generatedclasses.tables.TDirectory.T_DIRECTORY) + .where(org.jooq.test.cubrid.generatedclasses.tables.TDirectory.PARENT_ID.equal(getValue(org.jooq.test.cubrid.generatedclasses.tables.TDirectory.ID))) + .fetch(); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT t_directory__pk_t_directory_self
+	 * FOREIGN KEY (parent_id)
+	 * REFERENCES DBA.t_directory (id)
+	 * 
+ */ + public void setParentId(java.lang.Integer value) { + setValue(org.jooq.test.cubrid.generatedclasses.tables.TDirectory.PARENT_ID, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT t_directory__pk_t_directory_self
+	 * FOREIGN KEY (parent_id)
+	 * REFERENCES DBA.t_directory (id)
+	 * 
+ */ + public java.lang.Integer getParentId() { + return getValue(org.jooq.test.cubrid.generatedclasses.tables.TDirectory.PARENT_ID); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT t_directory__pk_t_directory_self
+	 * FOREIGN KEY (parent_id)
+	 * REFERENCES DBA.t_directory (id)
+	 * 
+ */ + public org.jooq.test.cubrid.generatedclasses.tables.records.TDirectoryRecord fetchTDirectory() { + return create() + .selectFrom(org.jooq.test.cubrid.generatedclasses.tables.TDirectory.T_DIRECTORY) + .where(org.jooq.test.cubrid.generatedclasses.tables.TDirectory.ID.equal(getValue(org.jooq.test.cubrid.generatedclasses.tables.TDirectory.PARENT_ID))) + .fetchOne(); + } + + /** + * An uncommented item + */ + public void setIsDirectory(java.lang.Integer value) { + setValue(org.jooq.test.cubrid.generatedclasses.tables.TDirectory.IS_DIRECTORY, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getIsDirectory() { + return getValue(org.jooq.test.cubrid.generatedclasses.tables.TDirectory.IS_DIRECTORY); + } + + /** + * An uncommented item + */ + public void setName(java.lang.String value) { + setValue(org.jooq.test.cubrid.generatedclasses.tables.TDirectory.NAME, value); + } + + /** + * An uncommented item + */ + public java.lang.String getName() { + return getValue(org.jooq.test.cubrid.generatedclasses.tables.TDirectory.NAME); + } + + /** + * Create a detached TDirectoryRecord + */ + public TDirectoryRecord() { + super(org.jooq.test.cubrid.generatedclasses.tables.TDirectory.T_DIRECTORY); + } +} diff --git a/jOOQ-test/src/org/jooq/test/cubrid/generatedclasses/tables/records/TIdentityPkRecord.java b/jOOQ-test/src/org/jooq/test/cubrid/generatedclasses/tables/records/TIdentityPkRecord.java new file mode 100644 index 00000000000..77736becde5 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/cubrid/generatedclasses/tables/records/TIdentityPkRecord.java @@ -0,0 +1,51 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.cubrid.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + */ +public class TIdentityPkRecord extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = 308295706; + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setId(java.lang.Integer value) { + setValue(org.jooq.test.cubrid.generatedclasses.tables.TIdentityPk.ID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.lang.Integer getId() { + return getValue(org.jooq.test.cubrid.generatedclasses.tables.TIdentityPk.ID); + } + + /** + * An uncommented item + */ + public void setVal(java.lang.Integer value) { + setValue(org.jooq.test.cubrid.generatedclasses.tables.TIdentityPk.VAL, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getVal() { + return getValue(org.jooq.test.cubrid.generatedclasses.tables.TIdentityPk.VAL); + } + + /** + * Create a detached TIdentityPkRecord + */ + public TIdentityPkRecord() { + super(org.jooq.test.cubrid.generatedclasses.tables.TIdentityPk.T_IDENTITY_PK); + } +} diff --git a/jOOQ-test/src/org/jooq/test/cubrid/generatedclasses/tables/records/TIdentityRecord.java b/jOOQ-test/src/org/jooq/test/cubrid/generatedclasses/tables/records/TIdentityRecord.java new file mode 100644 index 00000000000..e0b18f4a60b --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/cubrid/generatedclasses/tables/records/TIdentityRecord.java @@ -0,0 +1,47 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.cubrid.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + */ +public class TIdentityRecord extends org.jooq.impl.TableRecordImpl { + + private static final long serialVersionUID = 2069322597; + + /** + * An uncommented item + */ + public void setId(java.lang.Integer value) { + setValue(org.jooq.test.cubrid.generatedclasses.tables.TIdentity.ID, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getId() { + return getValue(org.jooq.test.cubrid.generatedclasses.tables.TIdentity.ID); + } + + /** + * An uncommented item + */ + public void setVal(java.lang.Integer value) { + setValue(org.jooq.test.cubrid.generatedclasses.tables.TIdentity.VAL, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getVal() { + return getValue(org.jooq.test.cubrid.generatedclasses.tables.TIdentity.VAL); + } + + /** + * Create a detached TIdentityRecord + */ + public TIdentityRecord() { + super(org.jooq.test.cubrid.generatedclasses.tables.TIdentity.T_IDENTITY); + } +} diff --git a/jOOQ-test/src/org/jooq/test/cubrid/generatedclasses/tables/records/TTriggersRecord.java b/jOOQ-test/src/org/jooq/test/cubrid/generatedclasses/tables/records/TTriggersRecord.java new file mode 100644 index 00000000000..03fc85f4e5f --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/cubrid/generatedclasses/tables/records/TTriggersRecord.java @@ -0,0 +1,65 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.cubrid.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + */ +public class TTriggersRecord extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = 629886467; + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setIdGenerated(java.lang.Integer value) { + setValue(org.jooq.test.cubrid.generatedclasses.tables.TTriggers.ID_GENERATED, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.lang.Integer getIdGenerated() { + return getValue(org.jooq.test.cubrid.generatedclasses.tables.TTriggers.ID_GENERATED); + } + + /** + * An uncommented item + */ + public void setId(java.lang.Integer value) { + setValue(org.jooq.test.cubrid.generatedclasses.tables.TTriggers.ID, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getId() { + return getValue(org.jooq.test.cubrid.generatedclasses.tables.TTriggers.ID); + } + + /** + * An uncommented item + */ + public void setCounter(java.lang.Integer value) { + setValue(org.jooq.test.cubrid.generatedclasses.tables.TTriggers.COUNTER, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getCounter() { + return getValue(org.jooq.test.cubrid.generatedclasses.tables.TTriggers.COUNTER); + } + + /** + * Create a detached TTriggersRecord + */ + public TTriggersRecord() { + super(org.jooq.test.cubrid.generatedclasses.tables.TTriggers.T_TRIGGERS); + } +} diff --git a/jOOQ-test/src/org/jooq/test/cubrid/generatedclasses/tables/records/T_639NumbersTableRecord.java b/jOOQ-test/src/org/jooq/test/cubrid/generatedclasses/tables/records/T_639NumbersTableRecord.java new file mode 100644 index 00000000000..3c3d54a4e08 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/cubrid/generatedclasses/tables/records/T_639NumbersTableRecord.java @@ -0,0 +1,191 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.cubrid.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + */ +public class T_639NumbersTableRecord extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = -252235026; + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setId(java.lang.Integer value) { + setValue(org.jooq.test.cubrid.generatedclasses.tables.T_639NumbersTable.ID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.lang.Integer getId() { + return getValue(org.jooq.test.cubrid.generatedclasses.tables.T_639NumbersTable.ID); + } + + /** + * An uncommented item + */ + public void setShort(java.lang.Short value) { + setValue(org.jooq.test.cubrid.generatedclasses.tables.T_639NumbersTable.SHORT, value); + } + + /** + * An uncommented item + */ + public java.lang.Short getShort() { + return getValue(org.jooq.test.cubrid.generatedclasses.tables.T_639NumbersTable.SHORT); + } + + /** + * An uncommented item + */ + public void setInteger(java.lang.Integer value) { + setValue(org.jooq.test.cubrid.generatedclasses.tables.T_639NumbersTable.INTEGER, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getInteger() { + return getValue(org.jooq.test.cubrid.generatedclasses.tables.T_639NumbersTable.INTEGER); + } + + /** + * An uncommented item + */ + public void setLong(java.lang.Long value) { + setValue(org.jooq.test.cubrid.generatedclasses.tables.T_639NumbersTable.LONG, value); + } + + /** + * An uncommented item + */ + public java.lang.Long getLong() { + return getValue(org.jooq.test.cubrid.generatedclasses.tables.T_639NumbersTable.LONG); + } + + /** + * An uncommented item + */ + public void setByteDecimal(java.lang.Byte value) { + setValue(org.jooq.test.cubrid.generatedclasses.tables.T_639NumbersTable.BYTE_DECIMAL, value); + } + + /** + * An uncommented item + */ + public java.lang.Byte getByteDecimal() { + return getValue(org.jooq.test.cubrid.generatedclasses.tables.T_639NumbersTable.BYTE_DECIMAL); + } + + /** + * An uncommented item + */ + public void setShortDecimal(java.lang.Short value) { + setValue(org.jooq.test.cubrid.generatedclasses.tables.T_639NumbersTable.SHORT_DECIMAL, value); + } + + /** + * An uncommented item + */ + public java.lang.Short getShortDecimal() { + return getValue(org.jooq.test.cubrid.generatedclasses.tables.T_639NumbersTable.SHORT_DECIMAL); + } + + /** + * An uncommented item + */ + public void setIntegerDecimal(java.lang.Integer value) { + setValue(org.jooq.test.cubrid.generatedclasses.tables.T_639NumbersTable.INTEGER_DECIMAL, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getIntegerDecimal() { + return getValue(org.jooq.test.cubrid.generatedclasses.tables.T_639NumbersTable.INTEGER_DECIMAL); + } + + /** + * An uncommented item + */ + public void setLongDecimal(java.lang.Long value) { + setValue(org.jooq.test.cubrid.generatedclasses.tables.T_639NumbersTable.LONG_DECIMAL, value); + } + + /** + * An uncommented item + */ + public java.lang.Long getLongDecimal() { + return getValue(org.jooq.test.cubrid.generatedclasses.tables.T_639NumbersTable.LONG_DECIMAL); + } + + /** + * An uncommented item + */ + public void setBigInteger(java.math.BigInteger value) { + setValue(org.jooq.test.cubrid.generatedclasses.tables.T_639NumbersTable.BIG_INTEGER, value); + } + + /** + * An uncommented item + */ + public java.math.BigInteger getBigInteger() { + return getValue(org.jooq.test.cubrid.generatedclasses.tables.T_639NumbersTable.BIG_INTEGER); + } + + /** + * An uncommented item + */ + public void setBigDecimal(java.math.BigDecimal value) { + setValue(org.jooq.test.cubrid.generatedclasses.tables.T_639NumbersTable.BIG_DECIMAL, value); + } + + /** + * An uncommented item + */ + public java.math.BigDecimal getBigDecimal() { + return getValue(org.jooq.test.cubrid.generatedclasses.tables.T_639NumbersTable.BIG_DECIMAL); + } + + /** + * An uncommented item + */ + public void setFloat(java.lang.Float value) { + setValue(org.jooq.test.cubrid.generatedclasses.tables.T_639NumbersTable.FLOAT, value); + } + + /** + * An uncommented item + */ + public java.lang.Float getFloat() { + return getValue(org.jooq.test.cubrid.generatedclasses.tables.T_639NumbersTable.FLOAT); + } + + /** + * An uncommented item + */ + public void setDouble(java.lang.Double value) { + setValue(org.jooq.test.cubrid.generatedclasses.tables.T_639NumbersTable.DOUBLE, value); + } + + /** + * An uncommented item + */ + public java.lang.Double getDouble() { + return getValue(org.jooq.test.cubrid.generatedclasses.tables.T_639NumbersTable.DOUBLE); + } + + /** + * Create a detached T_639NumbersTableRecord + */ + public T_639NumbersTableRecord() { + super(org.jooq.test.cubrid.generatedclasses.tables.T_639NumbersTable.T_639_NUMBERS_TABLE); + } +} diff --git a/jOOQ-test/src/org/jooq/test/cubrid/generatedclasses/tables/records/T_658RefRecord.java b/jOOQ-test/src/org/jooq/test/cubrid/generatedclasses/tables/records/T_658RefRecord.java new file mode 100644 index 00000000000..2caf981e49d --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/cubrid/generatedclasses/tables/records/T_658RefRecord.java @@ -0,0 +1,175 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.cubrid.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + */ +public class T_658RefRecord extends org.jooq.impl.TableRecordImpl { + + private static final long serialVersionUID = 1839489217; + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT t_658_ref__fk_t_658_11
+	 * FOREIGN KEY (ref_11)
+	 * REFERENCES DBA.t_658_11 (id)
+	 * 
+ */ + public void setRef_11(org.jooq.test.cubrid.generatedclasses.enums.T_658_11 value) { + setValue(org.jooq.test.cubrid.generatedclasses.tables.T_658Ref.REF_11, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT t_658_ref__fk_t_658_11
+	 * FOREIGN KEY (ref_11)
+	 * REFERENCES DBA.t_658_11 (id)
+	 * 
+ */ + public org.jooq.test.cubrid.generatedclasses.enums.T_658_11 getRef_11() { + return getValue(org.jooq.test.cubrid.generatedclasses.tables.T_658Ref.REF_11); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT t_658_ref__fk_t_658_21
+	 * FOREIGN KEY (ref_21)
+	 * REFERENCES DBA.t_658_21 (id)
+	 * 
+ */ + public void setRef_21(org.jooq.test.cubrid.generatedclasses.enums.T_658_21 value) { + setValue(org.jooq.test.cubrid.generatedclasses.tables.T_658Ref.REF_21, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT t_658_ref__fk_t_658_21
+	 * FOREIGN KEY (ref_21)
+	 * REFERENCES DBA.t_658_21 (id)
+	 * 
+ */ + public org.jooq.test.cubrid.generatedclasses.enums.T_658_21 getRef_21() { + return getValue(org.jooq.test.cubrid.generatedclasses.tables.T_658Ref.REF_21); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT t_658_ref__fk_t_658_31
+	 * FOREIGN KEY (ref_31)
+	 * REFERENCES DBA.t_658_31 (id)
+	 * 
+ */ + public void setRef_31(org.jooq.test.cubrid.generatedclasses.enums.T_658_31 value) { + setValue(org.jooq.test.cubrid.generatedclasses.tables.T_658Ref.REF_31, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT t_658_ref__fk_t_658_31
+	 * FOREIGN KEY (ref_31)
+	 * REFERENCES DBA.t_658_31 (id)
+	 * 
+ */ + public org.jooq.test.cubrid.generatedclasses.enums.T_658_31 getRef_31() { + return getValue(org.jooq.test.cubrid.generatedclasses.tables.T_658Ref.REF_31); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT t_658_ref__fk_t_658_12
+	 * FOREIGN KEY (ref_12)
+	 * REFERENCES DBA.t_658_12 (id)
+	 * 
+ */ + public void setRef_12(org.jooq.test.cubrid.generatedclasses.enums.T_658_12 value) { + setValue(org.jooq.test.cubrid.generatedclasses.tables.T_658Ref.REF_12, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT t_658_ref__fk_t_658_12
+	 * FOREIGN KEY (ref_12)
+	 * REFERENCES DBA.t_658_12 (id)
+	 * 
+ */ + public org.jooq.test.cubrid.generatedclasses.enums.T_658_12 getRef_12() { + return getValue(org.jooq.test.cubrid.generatedclasses.tables.T_658Ref.REF_12); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT t_658_ref__fk_t_658_22
+	 * FOREIGN KEY (ref_22)
+	 * REFERENCES DBA.t_658_22 (id)
+	 * 
+ */ + public void setRef_22(org.jooq.test.cubrid.generatedclasses.enums.T_658_22 value) { + setValue(org.jooq.test.cubrid.generatedclasses.tables.T_658Ref.REF_22, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT t_658_ref__fk_t_658_22
+	 * FOREIGN KEY (ref_22)
+	 * REFERENCES DBA.t_658_22 (id)
+	 * 
+ */ + public org.jooq.test.cubrid.generatedclasses.enums.T_658_22 getRef_22() { + return getValue(org.jooq.test.cubrid.generatedclasses.tables.T_658Ref.REF_22); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT t_658_ref__fk_t_658_32
+	 * FOREIGN KEY (ref_32)
+	 * REFERENCES DBA.t_658_32 (id)
+	 * 
+ */ + public void setRef_32(org.jooq.test.cubrid.generatedclasses.enums.T_658_32 value) { + setValue(org.jooq.test.cubrid.generatedclasses.tables.T_658Ref.REF_32, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT t_658_ref__fk_t_658_32
+	 * FOREIGN KEY (ref_32)
+	 * REFERENCES DBA.t_658_32 (id)
+	 * 
+ */ + public org.jooq.test.cubrid.generatedclasses.enums.T_658_32 getRef_32() { + return getValue(org.jooq.test.cubrid.generatedclasses.tables.T_658Ref.REF_32); + } + + /** + * Create a detached T_658RefRecord + */ + public T_658RefRecord() { + super(org.jooq.test.cubrid.generatedclasses.tables.T_658Ref.T_658_REF); + } +} diff --git a/jOOQ-test/src/org/jooq/test/cubrid/generatedclasses/tables/records/T_725LobTestRecord.java b/jOOQ-test/src/org/jooq/test/cubrid/generatedclasses/tables/records/T_725LobTestRecord.java new file mode 100644 index 00000000000..fd7007fc4b2 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/cubrid/generatedclasses/tables/records/T_725LobTestRecord.java @@ -0,0 +1,51 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.cubrid.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + */ +public class T_725LobTestRecord extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = -1612841638; + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setId(java.lang.Integer value) { + setValue(org.jooq.test.cubrid.generatedclasses.tables.T_725LobTest.ID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.lang.Integer getId() { + return getValue(org.jooq.test.cubrid.generatedclasses.tables.T_725LobTest.ID); + } + + /** + * An uncommented item + */ + public void setLob(byte[] value) { + setValue(org.jooq.test.cubrid.generatedclasses.tables.T_725LobTest.LOB, value); + } + + /** + * An uncommented item + */ + public byte[] getLob() { + return getValue(org.jooq.test.cubrid.generatedclasses.tables.T_725LobTest.LOB); + } + + /** + * Create a detached T_725LobTestRecord + */ + public T_725LobTestRecord() { + super(org.jooq.test.cubrid.generatedclasses.tables.T_725LobTest.T_725_LOB_TEST); + } +} diff --git a/jOOQ-test/src/org/jooq/test/cubrid/generatedclasses/tables/records/T_785Record.java b/jOOQ-test/src/org/jooq/test/cubrid/generatedclasses/tables/records/T_785Record.java new file mode 100644 index 00000000000..651d6096540 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/cubrid/generatedclasses/tables/records/T_785Record.java @@ -0,0 +1,61 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.cubrid.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + */ +public class T_785Record extends org.jooq.impl.TableRecordImpl { + + private static final long serialVersionUID = 1801383208; + + /** + * An uncommented item + */ + public void setId(java.lang.Integer value) { + setValue(org.jooq.test.cubrid.generatedclasses.tables.T_785.ID, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getId() { + return getValue(org.jooq.test.cubrid.generatedclasses.tables.T_785.ID); + } + + /** + * An uncommented item + */ + public void setName(java.lang.String value) { + setValue(org.jooq.test.cubrid.generatedclasses.tables.T_785.NAME, value); + } + + /** + * An uncommented item + */ + public java.lang.String getName() { + return getValue(org.jooq.test.cubrid.generatedclasses.tables.T_785.NAME); + } + + /** + * An uncommented item + */ + public void setValue(java.lang.String value) { + setValue(org.jooq.test.cubrid.generatedclasses.tables.T_785.VALUE, value); + } + + /** + * An uncommented item + */ + public java.lang.String getValue() { + return getValue(org.jooq.test.cubrid.generatedclasses.tables.T_785.VALUE); + } + + /** + * Create a detached T_785Record + */ + public T_785Record() { + super(org.jooq.test.cubrid.generatedclasses.tables.T_785.T_785); + } +} diff --git a/jOOQ-test/src/org/jooq/test/cubrid/generatedclasses/tables/records/T_986_1Record.java b/jOOQ-test/src/org/jooq/test/cubrid/generatedclasses/tables/records/T_986_1Record.java new file mode 100644 index 00000000000..2c7564b8dc3 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/cubrid/generatedclasses/tables/records/T_986_1Record.java @@ -0,0 +1,37 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.cubrid.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + */ +public class T_986_1Record extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = -201612362; + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setRef(java.lang.Integer value) { + setValue(org.jooq.test.cubrid.generatedclasses.tables.T_986_1.REF, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.lang.Integer getRef() { + return getValue(org.jooq.test.cubrid.generatedclasses.tables.T_986_1.REF); + } + + /** + * Create a detached T_986_1Record + */ + public T_986_1Record() { + super(org.jooq.test.cubrid.generatedclasses.tables.T_986_1.T_986_1); + } +} diff --git a/jOOQ-test/src/org/jooq/test/cubrid/generatedclasses/tables/records/T_986_2Record.java b/jOOQ-test/src/org/jooq/test/cubrid/generatedclasses/tables/records/T_986_2Record.java new file mode 100644 index 00000000000..082f4bc248e --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/cubrid/generatedclasses/tables/records/T_986_2Record.java @@ -0,0 +1,37 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.cubrid.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + */ +public class T_986_2Record extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = 255910198; + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setRef(java.lang.Integer value) { + setValue(org.jooq.test.cubrid.generatedclasses.tables.T_986_2.REF, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.lang.Integer getRef() { + return getValue(org.jooq.test.cubrid.generatedclasses.tables.T_986_2.REF); + } + + /** + * Create a detached T_986_2Record + */ + public T_986_2Record() { + super(org.jooq.test.cubrid.generatedclasses.tables.T_986_2.T_986_2); + } +} diff --git a/jOOQ-test/src/org/jooq/test/cubrid/generatedclasses/tables/records/VAuthorRecord.java b/jOOQ-test/src/org/jooq/test/cubrid/generatedclasses/tables/records/VAuthorRecord.java new file mode 100644 index 00000000000..1c84c399f21 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/cubrid/generatedclasses/tables/records/VAuthorRecord.java @@ -0,0 +1,103 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.cubrid.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + */ +public class VAuthorRecord extends org.jooq.impl.TableRecordImpl { + + private static final long serialVersionUID = -1152789671; + + /** + * An uncommented item + */ + public void setId(java.lang.Integer value) { + setValue(org.jooq.test.cubrid.generatedclasses.tables.VAuthor.ID, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getId() { + return getValue(org.jooq.test.cubrid.generatedclasses.tables.VAuthor.ID); + } + + /** + * An uncommented item + */ + public void setFirstName(java.lang.String value) { + setValue(org.jooq.test.cubrid.generatedclasses.tables.VAuthor.FIRST_NAME, value); + } + + /** + * An uncommented item + */ + public java.lang.String getFirstName() { + return getValue(org.jooq.test.cubrid.generatedclasses.tables.VAuthor.FIRST_NAME); + } + + /** + * An uncommented item + */ + public void setLastName(java.lang.String value) { + setValue(org.jooq.test.cubrid.generatedclasses.tables.VAuthor.LAST_NAME, value); + } + + /** + * An uncommented item + */ + public java.lang.String getLastName() { + return getValue(org.jooq.test.cubrid.generatedclasses.tables.VAuthor.LAST_NAME); + } + + /** + * An uncommented item + */ + public void setDateOfBirth(java.sql.Date value) { + setValue(org.jooq.test.cubrid.generatedclasses.tables.VAuthor.DATE_OF_BIRTH, value); + } + + /** + * An uncommented item + */ + public java.sql.Date getDateOfBirth() { + return getValue(org.jooq.test.cubrid.generatedclasses.tables.VAuthor.DATE_OF_BIRTH); + } + + /** + * An uncommented item + */ + public void setYearOfBirth(java.lang.Integer value) { + setValue(org.jooq.test.cubrid.generatedclasses.tables.VAuthor.YEAR_OF_BIRTH, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getYearOfBirth() { + return getValue(org.jooq.test.cubrid.generatedclasses.tables.VAuthor.YEAR_OF_BIRTH); + } + + /** + * An uncommented item + */ + public void setAddress(java.lang.String value) { + setValue(org.jooq.test.cubrid.generatedclasses.tables.VAuthor.ADDRESS, value); + } + + /** + * An uncommented item + */ + public java.lang.String getAddress() { + return getValue(org.jooq.test.cubrid.generatedclasses.tables.VAuthor.ADDRESS); + } + + /** + * Create a detached VAuthorRecord + */ + public VAuthorRecord() { + super(org.jooq.test.cubrid.generatedclasses.tables.VAuthor.V_AUTHOR); + } +} diff --git a/jOOQ-test/src/org/jooq/test/cubrid/generatedclasses/tables/records/VBookRecord.java b/jOOQ-test/src/org/jooq/test/cubrid/generatedclasses/tables/records/VBookRecord.java new file mode 100644 index 00000000000..a7a7ecced9e --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/cubrid/generatedclasses/tables/records/VBookRecord.java @@ -0,0 +1,145 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.cubrid.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + */ +public class VBookRecord extends org.jooq.impl.TableRecordImpl { + + private static final long serialVersionUID = -312855913; + + /** + * An uncommented item + */ + public void setId(java.lang.Integer value) { + setValue(org.jooq.test.cubrid.generatedclasses.tables.VBook.ID, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getId() { + return getValue(org.jooq.test.cubrid.generatedclasses.tables.VBook.ID); + } + + /** + * An uncommented item + */ + public void setAuthorId(java.lang.Integer value) { + setValue(org.jooq.test.cubrid.generatedclasses.tables.VBook.AUTHOR_ID, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getAuthorId() { + return getValue(org.jooq.test.cubrid.generatedclasses.tables.VBook.AUTHOR_ID); + } + + /** + * An uncommented item + */ + public void setCoAuthorId(java.lang.Integer value) { + setValue(org.jooq.test.cubrid.generatedclasses.tables.VBook.CO_AUTHOR_ID, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getCoAuthorId() { + return getValue(org.jooq.test.cubrid.generatedclasses.tables.VBook.CO_AUTHOR_ID); + } + + /** + * An uncommented item + */ + public void setDetailsId(java.lang.Integer value) { + setValue(org.jooq.test.cubrid.generatedclasses.tables.VBook.DETAILS_ID, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getDetailsId() { + return getValue(org.jooq.test.cubrid.generatedclasses.tables.VBook.DETAILS_ID); + } + + /** + * An uncommented item + */ + public void setTitle(java.lang.String value) { + setValue(org.jooq.test.cubrid.generatedclasses.tables.VBook.TITLE, value); + } + + /** + * An uncommented item + */ + public java.lang.String getTitle() { + return getValue(org.jooq.test.cubrid.generatedclasses.tables.VBook.TITLE); + } + + /** + * An uncommented item + */ + public void setPublishedIn(java.lang.Integer value) { + setValue(org.jooq.test.cubrid.generatedclasses.tables.VBook.PUBLISHED_IN, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getPublishedIn() { + return getValue(org.jooq.test.cubrid.generatedclasses.tables.VBook.PUBLISHED_IN); + } + + /** + * An uncommented item + */ + public void setLanguageId(java.lang.Integer value) { + setValue(org.jooq.test.cubrid.generatedclasses.tables.VBook.LANGUAGE_ID, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getLanguageId() { + return getValue(org.jooq.test.cubrid.generatedclasses.tables.VBook.LANGUAGE_ID); + } + + /** + * An uncommented item + */ + public void setContentText(java.lang.String value) { + setValue(org.jooq.test.cubrid.generatedclasses.tables.VBook.CONTENT_TEXT, value); + } + + /** + * An uncommented item + */ + public java.lang.String getContentText() { + return getValue(org.jooq.test.cubrid.generatedclasses.tables.VBook.CONTENT_TEXT); + } + + /** + * An uncommented item + */ + public void setContentPdf(byte[] value) { + setValue(org.jooq.test.cubrid.generatedclasses.tables.VBook.CONTENT_PDF, value); + } + + /** + * An uncommented item + */ + public byte[] getContentPdf() { + return getValue(org.jooq.test.cubrid.generatedclasses.tables.VBook.CONTENT_PDF); + } + + /** + * Create a detached VBookRecord + */ + public VBookRecord() { + super(org.jooq.test.cubrid.generatedclasses.tables.VBook.V_BOOK); + } +} diff --git a/jOOQ-test/src/org/jooq/test/cubrid/generatedclasses/tables/records/VLibraryRecord.java b/jOOQ-test/src/org/jooq/test/cubrid/generatedclasses/tables/records/VLibraryRecord.java new file mode 100644 index 00000000000..8bb73095197 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/cubrid/generatedclasses/tables/records/VLibraryRecord.java @@ -0,0 +1,47 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.cubrid.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + */ +public class VLibraryRecord extends org.jooq.impl.TableRecordImpl { + + private static final long serialVersionUID = 66888091; + + /** + * An uncommented item + */ + public void setAuthor(java.lang.String value) { + setValue(org.jooq.test.cubrid.generatedclasses.tables.VLibrary.AUTHOR, value); + } + + /** + * An uncommented item + */ + public java.lang.String getAuthor() { + return getValue(org.jooq.test.cubrid.generatedclasses.tables.VLibrary.AUTHOR); + } + + /** + * An uncommented item + */ + public void setTitle(java.lang.String value) { + setValue(org.jooq.test.cubrid.generatedclasses.tables.VLibrary.TITLE, value); + } + + /** + * An uncommented item + */ + public java.lang.String getTitle() { + return getValue(org.jooq.test.cubrid.generatedclasses.tables.VLibrary.TITLE); + } + + /** + * Create a detached VLibraryRecord + */ + public VLibraryRecord() { + super(org.jooq.test.cubrid.generatedclasses.tables.VLibrary.V_LIBRARY); + } +} diff --git a/jOOQ-test/src/org/jooq/test/cubrid/generatedclasses/tables/records/XTestCase_64_69Record.java b/jOOQ-test/src/org/jooq/test/cubrid/generatedclasses/tables/records/XTestCase_64_69Record.java new file mode 100644 index 00000000000..a617fddea48 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/cubrid/generatedclasses/tables/records/XTestCase_64_69Record.java @@ -0,0 +1,63 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.cubrid.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + */ +public class XTestCase_64_69Record extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = 579309671; + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setId(java.lang.Integer value) { + setValue(org.jooq.test.cubrid.generatedclasses.tables.XTestCase_64_69.ID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.lang.Integer getId() { + return getValue(org.jooq.test.cubrid.generatedclasses.tables.XTestCase_64_69.ID); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.util.List fetchXTestCase_71List() { + return create() + .selectFrom(org.jooq.test.cubrid.generatedclasses.tables.XTestCase_71.X_TEST_CASE_71) + .where(org.jooq.test.cubrid.generatedclasses.tables.XTestCase_71.TEST_CASE_64_69_ID.equal(getValue(org.jooq.test.cubrid.generatedclasses.tables.XTestCase_64_69.ID))) + .fetch(); + } + + /** + * An uncommented item + */ + public void setUnusedId(java.lang.Integer value) { + setValue(org.jooq.test.cubrid.generatedclasses.tables.XTestCase_64_69.UNUSED_ID, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getUnusedId() { + return getValue(org.jooq.test.cubrid.generatedclasses.tables.XTestCase_64_69.UNUSED_ID); + } + + /** + * Create a detached XTestCase_64_69Record + */ + public XTestCase_64_69Record() { + super(org.jooq.test.cubrid.generatedclasses.tables.XTestCase_64_69.X_TEST_CASE_64_69); + } +} diff --git a/jOOQ-test/src/org/jooq/test/cubrid/generatedclasses/tables/records/XTestCase_71Record.java b/jOOQ-test/src/org/jooq/test/cubrid/generatedclasses/tables/records/XTestCase_71Record.java new file mode 100644 index 00000000000..392463203de --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/cubrid/generatedclasses/tables/records/XTestCase_71Record.java @@ -0,0 +1,79 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.cubrid.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + */ +public class XTestCase_71Record extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = -1625495140; + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setId(java.lang.Integer value) { + setValue(org.jooq.test.cubrid.generatedclasses.tables.XTestCase_71.ID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.lang.Integer getId() { + return getValue(org.jooq.test.cubrid.generatedclasses.tables.XTestCase_71.ID); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT x_test_case_71__fk_x_test_case_71a
+	 * FOREIGN KEY (test_case_64_69_id)
+	 * REFERENCES DBA.x_test_case_64_69 (id)
+	 * 
+ */ + public void setTestCase_64_69Id(java.lang.Integer value) { + setValue(org.jooq.test.cubrid.generatedclasses.tables.XTestCase_71.TEST_CASE_64_69_ID, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT x_test_case_71__fk_x_test_case_71a
+	 * FOREIGN KEY (test_case_64_69_id)
+	 * REFERENCES DBA.x_test_case_64_69 (id)
+	 * 
+ */ + public java.lang.Integer getTestCase_64_69Id() { + return getValue(org.jooq.test.cubrid.generatedclasses.tables.XTestCase_71.TEST_CASE_64_69_ID); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT x_test_case_71__fk_x_test_case_71a
+	 * FOREIGN KEY (test_case_64_69_id)
+	 * REFERENCES DBA.x_test_case_64_69 (id)
+	 * 
+ */ + public org.jooq.test.cubrid.generatedclasses.tables.records.XTestCase_64_69Record fetchXTestCase_64_69() { + return create() + .selectFrom(org.jooq.test.cubrid.generatedclasses.tables.XTestCase_64_69.X_TEST_CASE_64_69) + .where(org.jooq.test.cubrid.generatedclasses.tables.XTestCase_64_69.ID.equal(getValue(org.jooq.test.cubrid.generatedclasses.tables.XTestCase_71.TEST_CASE_64_69_ID))) + .fetchOne(); + } + + /** + * Create a detached XTestCase_71Record + */ + public XTestCase_71Record() { + super(org.jooq.test.cubrid.generatedclasses.tables.XTestCase_71.X_TEST_CASE_71); + } +} diff --git a/jOOQ-test/src/org/jooq/test/cubrid/generatedclasses/tables/records/XTestCase_85Record.java b/jOOQ-test/src/org/jooq/test/cubrid/generatedclasses/tables/records/XTestCase_85Record.java new file mode 100644 index 00000000000..7787c7f653c --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/cubrid/generatedclasses/tables/records/XTestCase_85Record.java @@ -0,0 +1,106 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.cubrid.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + */ +public class XTestCase_85Record extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = 1453622160; + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setId(java.lang.Integer value) { + setValue(org.jooq.test.cubrid.generatedclasses.tables.XTestCase_85.ID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.lang.Integer getId() { + return getValue(org.jooq.test.cubrid.generatedclasses.tables.XTestCase_85.ID); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT x_test_case_85__fk_x_test_case_85
+	 * FOREIGN KEY (x_unused_id, x_unused_name)
+	 * REFERENCES DBA.x_unused (id, name)
+	 * 
+ */ + public void setXUnusedId(java.lang.Integer value) { + setValue(org.jooq.test.cubrid.generatedclasses.tables.XTestCase_85.X_UNUSED_ID, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT x_test_case_85__fk_x_test_case_85
+	 * FOREIGN KEY (x_unused_id, x_unused_name)
+	 * REFERENCES DBA.x_unused (id, name)
+	 * 
+ */ + public java.lang.Integer getXUnusedId() { + return getValue(org.jooq.test.cubrid.generatedclasses.tables.XTestCase_85.X_UNUSED_ID); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT x_test_case_85__fk_x_test_case_85
+	 * FOREIGN KEY (x_unused_id, x_unused_name)
+	 * REFERENCES DBA.x_unused (id, name)
+	 * 
+ */ + public org.jooq.test.cubrid.generatedclasses.tables.records.XUnusedRecord fetchXUnused() { + return create() + .selectFrom(org.jooq.test.cubrid.generatedclasses.tables.XUnused.X_UNUSED) + .where(org.jooq.test.cubrid.generatedclasses.tables.XUnused.ID.equal(getValue(org.jooq.test.cubrid.generatedclasses.tables.XTestCase_85.X_UNUSED_ID))) + .and(org.jooq.test.cubrid.generatedclasses.tables.XUnused.NAME.equal(getValue(org.jooq.test.cubrid.generatedclasses.tables.XTestCase_85.X_UNUSED_NAME))) + .fetchOne(); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT x_test_case_85__fk_x_test_case_85
+	 * FOREIGN KEY (x_unused_id, x_unused_name)
+	 * REFERENCES DBA.x_unused (id, name)
+	 * 
+ */ + public void setXUnusedName(java.lang.String value) { + setValue(org.jooq.test.cubrid.generatedclasses.tables.XTestCase_85.X_UNUSED_NAME, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT x_test_case_85__fk_x_test_case_85
+	 * FOREIGN KEY (x_unused_id, x_unused_name)
+	 * REFERENCES DBA.x_unused (id, name)
+	 * 
+ */ + public java.lang.String getXUnusedName() { + return getValue(org.jooq.test.cubrid.generatedclasses.tables.XTestCase_85.X_UNUSED_NAME); + } + + /** + * Create a detached XTestCase_85Record + */ + public XTestCase_85Record() { + super(org.jooq.test.cubrid.generatedclasses.tables.XTestCase_85.X_TEST_CASE_85); + } +} diff --git a/jOOQ-test/src/org/jooq/test/cubrid/generatedclasses/tables/records/XUnusedRecord.java b/jOOQ-test/src/org/jooq/test/cubrid/generatedclasses/tables/records/XUnusedRecord.java new file mode 100644 index 00000000000..8c6e935eb4f --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/cubrid/generatedclasses/tables/records/XUnusedRecord.java @@ -0,0 +1,290 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.cubrid.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + */ +public class XUnusedRecord extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = -150906391; + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setId(java.lang.Integer value) { + setValue(org.jooq.test.cubrid.generatedclasses.tables.XUnused.ID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.lang.Integer getId() { + return getValue(org.jooq.test.cubrid.generatedclasses.tables.XUnused.ID); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.util.List fetchXTestCase_85List() { + return create() + .selectFrom(org.jooq.test.cubrid.generatedclasses.tables.XTestCase_85.X_TEST_CASE_85) + .where(org.jooq.test.cubrid.generatedclasses.tables.XTestCase_85.X_UNUSED_ID.equal(getValue(org.jooq.test.cubrid.generatedclasses.tables.XUnused.ID))) + .and(org.jooq.test.cubrid.generatedclasses.tables.XTestCase_85.X_UNUSED_NAME.equal(getValue(org.jooq.test.cubrid.generatedclasses.tables.XUnused.NAME))) + .fetch(); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.util.List fetchXUnusedList() { + return create() + .selectFrom(org.jooq.test.cubrid.generatedclasses.tables.XUnused.X_UNUSED) + .where(org.jooq.test.cubrid.generatedclasses.tables.XUnused.NAME_REF.equal(getValueAsString(org.jooq.test.cubrid.generatedclasses.tables.XUnused.ID))) + .and(org.jooq.test.cubrid.generatedclasses.tables.XUnused.ID_REF.equal(getValueAsInteger(org.jooq.test.cubrid.generatedclasses.tables.XUnused.NAME))) + .fetch(); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setName(java.lang.String value) { + setValue(org.jooq.test.cubrid.generatedclasses.tables.XUnused.NAME, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.lang.String getName() { + return getValue(org.jooq.test.cubrid.generatedclasses.tables.XUnused.NAME); + } + + /** + * An uncommented item + */ + public void setBigInteger(java.math.BigInteger value) { + setValue(org.jooq.test.cubrid.generatedclasses.tables.XUnused.BIG_INTEGER, value); + } + + /** + * An uncommented item + */ + public java.math.BigInteger getBigInteger() { + return getValue(org.jooq.test.cubrid.generatedclasses.tables.XUnused.BIG_INTEGER); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT x_unused__fk_x_unused_self
+	 * FOREIGN KEY (name_ref, id_ref)
+	 * REFERENCES DBA.x_unused (id, name)
+	 * 
+ */ + public void setIdRef(java.lang.Integer value) { + setValue(org.jooq.test.cubrid.generatedclasses.tables.XUnused.ID_REF, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT x_unused__fk_x_unused_self
+	 * FOREIGN KEY (name_ref, id_ref)
+	 * REFERENCES DBA.x_unused (id, name)
+	 * 
+ */ + public java.lang.Integer getIdRef() { + return getValue(org.jooq.test.cubrid.generatedclasses.tables.XUnused.ID_REF); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT x_unused__fk_x_unused_self
+	 * FOREIGN KEY (name_ref, id_ref)
+	 * REFERENCES DBA.x_unused (id, name)
+	 * 
+ */ + public org.jooq.test.cubrid.generatedclasses.tables.records.XUnusedRecord fetchXUnused() { + return create() + .selectFrom(org.jooq.test.cubrid.generatedclasses.tables.XUnused.X_UNUSED) + .where(org.jooq.test.cubrid.generatedclasses.tables.XUnused.ID.equal(getValueAsInteger(org.jooq.test.cubrid.generatedclasses.tables.XUnused.NAME_REF))) + .and(org.jooq.test.cubrid.generatedclasses.tables.XUnused.NAME.equal(getValueAsString(org.jooq.test.cubrid.generatedclasses.tables.XUnused.ID_REF))) + .fetchOne(); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT x_unused__fk_x_unused_self
+	 * FOREIGN KEY (name_ref, id_ref)
+	 * REFERENCES DBA.x_unused (id, name)
+	 * 
+ */ + public void setNameRef(java.lang.String value) { + setValue(org.jooq.test.cubrid.generatedclasses.tables.XUnused.NAME_REF, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT x_unused__fk_x_unused_self
+	 * FOREIGN KEY (name_ref, id_ref)
+	 * REFERENCES DBA.x_unused (id, name)
+	 * 
+ */ + public java.lang.String getNameRef() { + return getValue(org.jooq.test.cubrid.generatedclasses.tables.XUnused.NAME_REF); + } + + /** + * An uncommented item + */ + public void setClass_(java.lang.Integer value) { + setValue(org.jooq.test.cubrid.generatedclasses.tables.XUnused.CLASS, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getClass_() { + return getValue(org.jooq.test.cubrid.generatedclasses.tables.XUnused.CLASS); + } + + /** + * An uncommented item + */ + public void setFields_(java.lang.Integer value) { + setValue(org.jooq.test.cubrid.generatedclasses.tables.XUnused.FIELDS, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getFields_() { + return getValue(org.jooq.test.cubrid.generatedclasses.tables.XUnused.FIELDS); + } + + /** + * An uncommented item + */ + public void setConfiguration_(java.lang.Integer value) { + setValue(org.jooq.test.cubrid.generatedclasses.tables.XUnused.CONFIGURATION, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getConfiguration_() { + return getValue(org.jooq.test.cubrid.generatedclasses.tables.XUnused.CONFIGURATION); + } + + /** + * An uncommented item + */ + public void setUDT(java.lang.Integer value) { + setValue(org.jooq.test.cubrid.generatedclasses.tables.XUnused.U_D_T, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getUDT() { + return getValue(org.jooq.test.cubrid.generatedclasses.tables.XUnused.U_D_T); + } + + /** + * An uncommented item + */ + public void setMetaData_(java.lang.Integer value) { + setValue(org.jooq.test.cubrid.generatedclasses.tables.XUnused.META_DATA, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getMetaData_() { + return getValue(org.jooq.test.cubrid.generatedclasses.tables.XUnused.META_DATA); + } + + /** + * An uncommented item + */ + public void setType0_(java.lang.Integer value) { + setValue(org.jooq.test.cubrid.generatedclasses.tables.XUnused.TYPE0, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getType0_() { + return getValue(org.jooq.test.cubrid.generatedclasses.tables.XUnused.TYPE0); + } + + /** + * An uncommented item + */ + public void setPrimaryKey(java.lang.Integer value) { + setValue(org.jooq.test.cubrid.generatedclasses.tables.XUnused.PRIMARY_KEY, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getPrimaryKey() { + return getValue(org.jooq.test.cubrid.generatedclasses.tables.XUnused.PRIMARY_KEY); + } + + /** + * An uncommented item + */ + public void setPrimarykey(java.lang.Integer value) { + setValue(org.jooq.test.cubrid.generatedclasses.tables.XUnused.PRIMARYKEY, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getPrimarykey() { + return getValue(org.jooq.test.cubrid.generatedclasses.tables.XUnused.PRIMARYKEY); + } + + /** + * An uncommented item + */ + public void setField_737(java.math.BigDecimal value) { + setValue(org.jooq.test.cubrid.generatedclasses.tables.XUnused.FIELD_737, value); + } + + /** + * An uncommented item + */ + public java.math.BigDecimal getField_737() { + return getValue(org.jooq.test.cubrid.generatedclasses.tables.XUnused.FIELD_737); + } + + /** + * Create a detached XUnusedRecord + */ + public XUnusedRecord() { + super(org.jooq.test.cubrid.generatedclasses.tables.XUnused.X_UNUSED); + } +} diff --git a/jOOQ-test/src/org/jooq/test/cubrid/reset.sql b/jOOQ-test/src/org/jooq/test/cubrid/reset.sql new file mode 100644 index 00000000000..c0a7a22e958 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/cubrid/reset.sql @@ -0,0 +1,90 @@ +DELETE FROM t_658_ref/ +DELETE FROM t_658_11/ +DELETE FROM t_658_21/ +DELETE FROM t_658_31/ +DELETE FROM t_658_12/ +DELETE FROM t_658_22/ +DELETE FROM t_658_32/ +DELETE FROM t_book_to_book_store/ +DELETE FROM t_book_store/ +DELETE FROM t_book/ +DELETE FROM t_author/ +DELETE FROM t_language/ +DELETE FROM t_directory/ +DELETE FROM t_booleans/ +DELETE FROM t_dates/ +DELETE FROM t_identity/ +DELETE FROM t_identity_pk/ + +DROP SERIAL s_author_id/ +CREATE SERIAL s_author_id MAXVALUE 2000000000/ + +INSERT INTO t_language (id, cd, description, description_english) VALUES (1, 'en', 'English', 'English')/ +INSERT INTO t_language (id, cd, description, description_english) VALUES (2, 'de', 'Deutsch', 'German')/ +INSERT INTO t_language (id, cd, description, description_english) VALUES (3, 'fr', 'Français', 'French')/ +INSERT INTO t_language (id, cd, description, description_english) VALUES (4, 'pt', null, null)/ +/ + +INSERT INTO t_658_11 VALUES ('A')/ +INSERT INTO t_658_11 VALUES ('B')/ +INSERT INTO t_658_11 VALUES ('C')/ +INSERT INTO t_658_21 VALUES (1)/ +INSERT INTO t_658_21 VALUES (2)/ +INSERT INTO t_658_21 VALUES (3)/ +INSERT INTO t_658_31 VALUES (1)/ +INSERT INTO t_658_31 VALUES (2)/ +INSERT INTO t_658_31 VALUES (3)/ +INSERT INTO t_658_12 VALUES ('A', 'A')/ +INSERT INTO t_658_12 VALUES ('B', 'B')/ +INSERT INTO t_658_12 VALUES ('C', 'C')/ +INSERT INTO t_658_22 VALUES (1, 1)/ +INSERT INTO t_658_22 VALUES (2, 2)/ +INSERT INTO t_658_22 VALUES (3, 3)/ +INSERT INTO t_658_32 VALUES (1, 1)/ +INSERT INTO t_658_32 VALUES (2, 2)/ +INSERT INTO t_658_32 VALUES (3, 3)/ +INSERT INTO t_658_ref VALUES ('A', 1, 1, 'B', 2, 2)/ + +INSERT INTO t_author VALUES (s_author_id.NEXT_VALUE, 'George', 'Orwell', '1903-06-25', 1903, null)/ +INSERT INTO t_author VALUES (s_author_id.NEXT_VALUE, 'Paulo', 'Coelho', '1947-08-24', 1947, null)/ +INSERT INTO t_book VALUES (1, 1, null, null, '1984', 1948, 1, 'To know and not to know, to be conscious of complete truthfulness while telling carefully constructed lies, to hold simultaneously two opinions which cancelled out, knowing them to be contradictory and believing in both of them, to use logic against logic, to repudiate morality while laying claim to it, to believe that democracy was impossible and that the Party was the guardian of democracy, to forget, whatever it was necessary to forget, then to draw it back into memory again at the moment when it was needed, and then promptly to forget it again, and above all, to apply the same process to the process itself -- that was the ultimate subtlety; consciously to induce unconsciousness, and then, once again, to become unconscious of the act of hypnosis you had just performed. Even to understand the word ''doublethink'' involved the use of doublethink..', null)/ +INSERT INTO t_book VALUES (2, 1, null, null, 'Animal Farm', 1945, 1, null, null)/ +INSERT INTO t_book VALUES (3, 2, null, null, 'O Alquimista', 1988, 4, null, null)/ +INSERT INTO t_book VALUES (4, 2, null, null, 'Brida', 1990, 2, null, null)/ + +INSERT INTO t_book_store VALUES ('Orell Füssli')/ +INSERT INTO t_book_store VALUES ('Ex Libris')/ +INSERT INTO t_book_store VALUES ('Buchhandlung im Volkshaus')/ + +INSERT INTO t_book_to_book_store VALUES ('Orell Füssli', 1, 10)/ +INSERT INTO t_book_to_book_store VALUES ('Orell Füssli', 2, 10)/ +INSERT INTO t_book_to_book_store VALUES ('Orell Füssli', 3, 10)/ +INSERT INTO t_book_to_book_store VALUES ('Ex Libris', 1, 1)/ +INSERT INTO t_book_to_book_store VALUES ('Ex Libris', 3, 2)/ +INSERT INTO t_book_to_book_store VALUES ('Buchhandlung im Volkshaus', 3, 1)/ + +INSERT INTO t_directory VALUES ( 1, null, 1, 'C:')/ + INSERT INTO t_directory VALUES ( 2, 1, 1, 'eclipse')/ + INSERT INTO t_directory VALUES ( 3, 2, 1, 'configuration')/ + INSERT INTO t_directory VALUES ( 4, 2, 1, 'dropins')/ + INSERT INTO t_directory VALUES ( 5, 2, 1, 'features')/ + INSERT INTO t_directory VALUES ( 7, 2, 1, 'plugins')/ + INSERT INTO t_directory VALUES ( 8, 2, 1, 'readme')/ + INSERT INTO t_directory VALUES ( 9, 8, 0, 'readme_eclipse.html')/ + INSERT INTO t_directory VALUES (10, 2, 1, 'src')/ + INSERT INTO t_directory VALUES (11, 2, 0, 'eclipse.exe')/ + INSERT INTO t_directory VALUES (12, 2, 0, 'eclipse.ini')/ + INSERT INTO t_directory VALUES (13, 1, 1, 'Program Files')/ + INSERT INTO t_directory VALUES (14, 13, 1, 'Internet Explorer')/ + INSERT INTO t_directory VALUES (15, 14, 1, 'de-DE')/ + INSERT INTO t_directory VALUES (16, 14, 0, 'ielowutil.exe')/ + INSERT INTO t_directory VALUES (17, 14, 0, 'iexplore.exe')/ + INSERT INTO t_directory VALUES (18, 13, 1, 'Java')/ + INSERT INTO t_directory VALUES (19, 18, 1, 'jre6')/ + INSERT INTO t_directory VALUES (20, 19, 1, 'bin')/ + INSERT INTO t_directory VALUES (21, 20, 0, 'java.exe')/ + INSERT INTO t_directory VALUES (22, 20, 0, 'javaw.exe')/ + INSERT INTO t_directory VALUES (23, 20, 0, 'javaws.exe')/ + INSERT INTO t_directory VALUES (24, 19, 1, 'lib')/ + INSERT INTO t_directory VALUES (25, 24, 0, 'javaws.jar')/ + INSERT INTO t_directory VALUES (26, 24, 0, 'rt.jar')/ \ No newline at end of file diff --git a/jOOQ-test/src/org/jooq/test/db2/create.sql b/jOOQ-test/src/org/jooq/test/db2/create.sql new file mode 100644 index 00000000000..ad1f5216cca --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/db2/create.sql @@ -0,0 +1,454 @@ +DROP PROCEDURE p_unused/ +DROP PROCEDURE p_author_exists/ +DROP PROCEDURE p_create_author/ +DROP PROCEDURE p_create_author_by_name/ +DROP PROCEDURE p391/ +DROP PROCEDURE p_default/ + +DROP FUNCTION f_author_exists/ +DROP FUNCTION f_one/ +DROP FUNCTION f_number/ +DROP FUNCTION f317/ + +DROP VIEW v_library/ +DROP VIEW v_author/ +DROP VIEW v_book/ + +DROP TRIGGER t_triggers_trigger/ + +DROP TABLE t_dates/ +DROP TABLE t_triggers/ +DROP TABLE t_book_to_book_store/ +DROP TABLE t_book_store/ +DROP TABLE t_book/ +DROP TABLE t_book_details/ +DROP TABLE t_author/ +DROP TABLE t_language/ +DROP TABLE x_test_case_71/ +DROP TABLE x_test_case_64_69/ +DROP TABLE x_test_case_85/ +DROP TABLE t_986_1/ +DROP TABLE t_986_2/ +DROP TABLE x_unused/ +DROP TABLE t_639_numbers_table/ +DROP TABLE t_658_ref/ +DROP TABLE t_658_11/ +DROP TABLE t_658_21/ +DROP TABLE t_658_31/ +DROP TABLE t_658_12/ +DROP TABLE t_658_22/ +DROP TABLE t_658_32/ +DROP TABLE t_725_lob_test/ +DROP TABLE t_785/ +DROP TABLE t_booleans/ +DROP TABLE t_identity/ +DROP TABLE t_identity_pk/ + +CREATE TABLE t_identity_pk ( + id INTEGER GENERATED BY DEFAULT AS IDENTITY, + val int, + + CONSTRAINT pk_t_identity_pk PRIMARY KEY (id) +) +/ + +CREATE TABLE t_identity ( + id INTEGER GENERATED BY DEFAULT AS IDENTITY, + val int +) +/ + +CREATE TABLE t_dates ( + id int not null, + d date, + t time, + ts timestamp, + d_int int, + ts_bigint bigint, + + CONSTRAINT pk_t_dates PRIMARY KEY (id) +) +/ + +CREATE TABLE t_booleans ( + id int not null, + one_zero int, + true_false_lc varchar(5), + true_false_uc varchar(5), + yes_no_lc varchar(3), + yes_no_uc varchar(3), + y_n_lc char(1), + y_n_uc char(1), + vc_boolean varchar(1), + c_boolean char(1), + n_boolean int, + + CONSTRAINT pk_t_booleans PRIMARY KEY (id) +) +/ + +DROP SEQUENCE s_trigger_id/ +CREATE SEQUENCE s_trigger_id/ + +CREATE TABLE t_triggers ( + id_generated int not null, + id int, + counter int, + + CONSTRAINT pk_t_triggers PRIMARY KEY (id_generated) +) +/ + +CREATE TRIGGER t_triggers_trigger +BEFORE INSERT +ON t_triggers +REFERENCING NEW AS new +FOR EACH ROW +BEGIN + select s_trigger_id.nextval into new.id_generated from sysibm.dual; + + set new.id = new.id_generated; + set new.counter = new.id_generated * 2; +END +/ + +CREATE TABLE t_language ( + cd CHAR(2) NOT NULL, + description VARCHAR(50), + description_english VARCHAR(50), + id INTEGER NOT NULL, + + CONSTRAINT pk_t_language PRIMARY KEY (ID) +) +/ + +CREATE TABLE t_658_11 ( + id CHAR(3) NOT NULL, + + CONSTRAINT pk_t_658_11 PRIMARY KEY (id) +) +/ + +CREATE TABLE t_658_21 ( + id INT NOT NULL, + + CONSTRAINT pk_t_658_21 PRIMARY KEY (id) +) +/ + +CREATE TABLE t_658_31 ( + id BIGINT NOT NULL, + + CONSTRAINT pk_t_658_31 PRIMARY KEY (id) +) +/ + +CREATE TABLE t_658_12 ( + id CHAR(3) NOT NULL, + cd CHAR(3) NOT NULL, + + CONSTRAINT pk_t_658_12 PRIMARY KEY (id) +) +/ + +CREATE TABLE t_658_22 ( + id INT NOT NULL, + cd INT NOT NULL, + + CONSTRAINT pk_t_658_22 PRIMARY KEY (id) +) +/ + +CREATE TABLE t_658_32 ( + id BIGINT NOT NULL, + cd BIGINT NOT NULL, + + CONSTRAINT pk_t_658_32 PRIMARY KEY (id) +) +/ + +CREATE TABLE t_658_ref ( + ref_11 char(3), + ref_21 int, + ref_31 bigint, + ref_12 char(3), + ref_22 int, + ref_32 bigint, + + CONSTRAINT fk_t_658_11 FOREIGN KEY (ref_11) REFERENCES t_658_11(id), + CONSTRAINT fk_t_658_21 FOREIGN KEY (ref_21) REFERENCES t_658_21(id), + CONSTRAINT fk_t_658_31 FOREIGN KEY (ref_31) REFERENCES t_658_31(id), + CONSTRAINT fk_t_658_12 FOREIGN KEY (ref_12) REFERENCES t_658_12(id), + CONSTRAINT fk_t_658_22 FOREIGN KEY (ref_22) REFERENCES t_658_22(id), + CONSTRAINT fk_t_658_32 FOREIGN KEY (ref_32) REFERENCES t_658_32(id) +) +/ + +CREATE TABLE t_725_lob_test ( + ID int NOT NULL, + LOB BLOB NULL, + + CONSTRAINT pk_t_725_lob_test PRIMARY KEY (id) +) +/ + +CREATE TABLE t_785 ( + ID int, + NAME varchar(50), + VALUE varchar(50) +) +/ + +CREATE TABLE t_author ( + ID INT NOT NULL, + FIRST_NAME VARCHAR(50), + LAST_NAME VARCHAR(50) NOT NULL, + DATE_OF_BIRTH DATE, + YEAR_OF_BIRTH INT, + ADDRESS VARCHAR(200), + + CONSTRAINT pk_t_author PRIMARY KEY (ID) +) +/ + +CREATE TABLE t_book_details ( + ID INT NOT NULL, + + CONSTRAINT pk_t_book_details PRIMARY KEY (ID) +) +/ + +CREATE TABLE t_book ( + ID INT NOT NULL, + AUTHOR_ID INT NOT NULL, + co_author_id int, + DETAILS_ID INT, + TITLE VARCHAR(400) NOT NULL, + PUBLISHED_IN INT NOT NULL, + LANGUAGE_ID INT NOT NULL, + CONTENT_TEXT LONG VARCHAR, + CONTENT_PDF BLOB, + + CONSTRAINT pk_t_book PRIMARY KEY (ID), + CONSTRAINT fk_t_book_author_id FOREIGN KEY (AUTHOR_ID) REFERENCES T_AUTHOR(ID), + CONSTRAINT fk_t_book_co_author_id FOREIGN KEY (CO_AUTHOR_ID) REFERENCES T_AUTHOR(ID), + CONSTRAINT fk_t_book_details_id FOREIGN KEY (DETAILS_ID) REFERENCES T_BOOK_DETAILS(ID), + CONSTRAINT fk_t_book_language_id FOREIGN KEY (LANGUAGE_ID) REFERENCES T_LANGUAGE(ID) +) +/ + + +CREATE TABLE t_book_store ( + name VARCHAR(400) NOT NULL, + + CONSTRAINT uk_t_book_store_name UNIQUE(name) +) +/ + +CREATE TABLE t_book_to_book_store ( + book_store_name VARCHAR(400) NOT NULL, + book_id INTEGER NOT NULL, + stock INTEGER, + + CONSTRAINT pk_b2bs PRIMARY KEY(book_store_name, book_id), + CONSTRAINT fk_b2bs_bs_name FOREIGN KEY (book_store_name) + REFERENCES t_book_store (name) + ON DELETE CASCADE, + CONSTRAINT fk_b2bs_b_id FOREIGN KEY (book_id) + REFERENCES t_book (id) + ON DELETE CASCADE +) +/ + + +CREATE TABLE x_unused ( + ID INT NOT NULL, + NAME VARCHAR(10) NOT NULL, + BIG_INTEGER DECIMAL(25), + ID_REF INT, + CLASS INT, + FIELDS INT, + TABLE INT, + CONFIGURATION INT, + U_D_T INT, + META_DATA INT, + VALUES INT, + TYPE0 INT, + PRIMARY_KEY INT, + PRIMARYKEY INT, + NAME_REF VARCHAR(10), + "FIELD 737" DECIMAL(25, 2), + + CONSTRAINT pk_x_unused PRIMARY KEY(ID, NAME), + CONSTRAINT uk_x_unused_id UNIQUE(ID), + CONSTRAINT fk_x_unused_self FOREIGN KEY(ID_REF, NAME_REF) REFERENCES X_UNUSED(ID, NAME) +) +/ + +CREATE TABLE t_986_1 ( + REF INT NOT NULL, + + CONSTRAINT pk_986 PRIMARY KEY(REF), + CONSTRAINT uk_986 UNIQUE(REF), + CONSTRAINT fk_986 FOREIGN KEY(REF) REFERENCES X_UNUSED(ID) +) +/ + +CREATE TABLE t_986_2 ( + REF INT NOT NULL, + + CONSTRAINT pk_986 PRIMARY KEY(REF), + CONSTRAINT uk_986 UNIQUE(REF), + CONSTRAINT fk_986 FOREIGN KEY(REF) REFERENCES X_UNUSED(ID) +) +/ + +CREATE TABLE t_639_numbers_table ( + ID INT NOT NULL, + SHORT SMALLINT, + "INTEGER" INT, + "LONG" BIGINT, + BYTE_DECIMAL DECIMAL(2, 0), + SHORT_DECIMAL DECIMAL(4, 0), + INTEGER_DECIMAL DECIMAL(9, 0), + LONG_DECIMAL DECIMAL(18, 0), + BIG_INTEGER DECIMAL(22, 0), + BIG_DECIMAL DECIMAL(22, 5), + "FLOAT" REAL, + "DOUBLE" DOUBLE, + + CONSTRAINT pk_t_639_numbers_table PRIMARY KEY(ID) +) +/ + +CREATE TABLE x_test_case_64_69 ( + ID INT NOT NULL, + UNUSED_ID INT, + + CONSTRAINT pk_x_test_case_64_69 PRIMARY KEY(ID), + CONSTRAINT fk_x_test_case_64_69a FOREIGN KEY(UNUSED_ID) REFERENCES X_UNUSED(ID), + CONSTRAINT fk_x_test_case_64_69b FOREIGN KEY(UNUSED_ID) REFERENCES X_UNUSED(ID) +) +/ + +CREATE TABLE x_test_case_71 ( + ID INT NOT NULL, + TEST_CASE_64_69_ID SMALLINT, + + CONSTRAINT pk_x_test_case_71 PRIMARY KEY(ID), + CONSTRAINT fk_x_test_case_71 FOREIGN KEY(TEST_CASE_64_69_ID) REFERENCES X_TEST_CASE_64_69(ID) +) +/ + +CREATE TABLE x_test_case_85 ( + id int NOT NULL, + x_unused_id int, + x_unused_name VARCHAR(10), + + CONSTRAINT pk_x_test_case_85 PRIMARY KEY(ID), + CONSTRAINT fk_x_test_case_85 FOREIGN KEY(x_unused_id, x_unused_name) REFERENCES X_UNUSED(id, name) +) +/ + +CREATE VIEW V_LIBRARY (AUTHOR, TITLE) AS +SELECT T_AUTHOR.FIRST_NAME || ' ' || T_AUTHOR.LAST_NAME, T_BOOK.TITLE +FROM T_AUTHOR JOIN T_BOOK ON T_BOOK.AUTHOR_ID = T_AUTHOR.ID +/ + +CREATE VIEW v_author AS +SELECT * FROM t_author +/ + +CREATE VIEW v_book AS +SELECT * FROM t_book +/ + +CREATE PROCEDURE p_unused (IN in1 VARCHAR(50), OUT out1 INT, INOUT out2 INT) LANGUAGE SQL +BEGIN + SET out1 = 0; + SET out2 = 0; +END +/ + +CREATE PROCEDURE p_author_exists (IN author_name VARCHAR(50), OUT result INT) LANGUAGE SQL +BEGIN + SELECT COUNT(*) INTO result + FROM t_author + WHERE first_name LIKE author_name + OR last_name LIKE author_name; +END +/ + +CREATE PROCEDURE p_create_author_by_name (IN first_name VARCHAR(50), IN last_name VARCHAR(50)) LANGUAGE SQL +BEGIN + INSERT INTO T_AUTHOR (ID, FIRST_NAME, LAST_NAME) + VALUES ((SELECT MAX(ID)+1 FROM T_AUTHOR), first_name, last_name); +END +/ + +CREATE PROCEDURE p_create_author() LANGUAGE SQL +BEGIN + call {jdbc.Schema}.p_create_author_by_name('William', 'Shakespeare'); +END +/ + +CREATE PROCEDURE p391 ( + IN i1 INTEGER, INOUT io1 INTEGER, OUT o1 INTEGER, + OUT o2 INTEGER, INOUT io2 INTEGER, IN i2 INTEGER) LANGUAGE SQL +BEGIN + SET o1 = io1; + SET io1 = i1; + + SET o2 = io2; + SET io2 = i2; +END +/ + +CREATE PROCEDURE p_default ( + IN p_in_number INTEGER DEFAULT(0), + OUT p_out_number INTEGER, + IN p_in_varchar VARCHAR(10) DEFAULT('0'), + OUT p_out_varchar VARCHAR(10), + IN p_in_date DATE DEFAULT('1981-07-10'), + OUT p_out_date DATE +) LANGUAGE SQL +BEGIN + SET p_out_number = p_in_number; + SET p_out_varchar = p_in_varchar; + SET p_out_date = p_in_date; +END +/ + +CREATE FUNCTION f_author_exists (author_name varchar(50)) + RETURNS INTEGER + LANGUAGE SQL + READS SQL DATA + NO EXTERNAL ACTION + DETERMINISTIC + RETURN + SELECT COUNT(*) + FROM t_author + WHERE first_name = author_name + OR last_name = author_name +/ + +CREATE FUNCTION f_one () + RETURNS INTEGER + LANGUAGE SQL + DETERMINISTIC + RETURN 1 +/ + +CREATE FUNCTION f_number (n integer) + RETURNS INTEGER + LANGUAGE SQL + DETERMINISTIC + RETURN n +/ + +CREATE FUNCTION f317 (p1 INTEGER, p2 INTEGER, p3 INTEGER, p4 INTEGER) + RETURNS INTEGER + LANGUAGE SQL + DETERMINISTIC + RETURN 1000 * p1 + 100 * p2 + p4 +/ diff --git a/jOOQ-test/src/org/jooq/test/db2/generatedclasses/Keys.java b/jOOQ-test/src/org/jooq/test/db2/generatedclasses/Keys.java new file mode 100644 index 00000000000..38fe1f0e438 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/db2/generatedclasses/Keys.java @@ -0,0 +1,53 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.db2.generatedclasses; + +/** + * This class is generated by jOOQ. + * + * A class modelling foreign key relationships between tables of the LUKAS schema + */ +@SuppressWarnings({"unchecked"}) +public class Keys extends org.jooq.impl.AbstractKeys { + + // IDENTITY definitions + public static final org.jooq.Identity IDENTITY_T_IDENTITY = createIdentity(org.jooq.test.db2.generatedclasses.tables.TIdentity.T_IDENTITY, org.jooq.test.db2.generatedclasses.tables.TIdentity.ID); + public static final org.jooq.Identity IDENTITY_T_IDENTITY_PK = createIdentity(org.jooq.test.db2.generatedclasses.tables.TIdentityPk.T_IDENTITY_PK, org.jooq.test.db2.generatedclasses.tables.TIdentityPk.ID); + + // UNIQUE and PRIMARY KEY definitions + public static final org.jooq.UniqueKey T_639_NUMBERS_TABLE__PK_T_639_NUMBERS_TABLE = createUniqueKey(org.jooq.test.db2.generatedclasses.tables.T_639NumbersTable.T_639_NUMBERS_TABLE, org.jooq.test.db2.generatedclasses.tables.T_639NumbersTable.ID); + public static final org.jooq.UniqueKey T_725_LOB_TEST__PK_T_725_LOB_TEST = createUniqueKey(org.jooq.test.db2.generatedclasses.tables.T_725LobTest.T_725_LOB_TEST, org.jooq.test.db2.generatedclasses.tables.T_725LobTest.ID); + public static final org.jooq.UniqueKey T_986_1__PK_986 = createUniqueKey(org.jooq.test.db2.generatedclasses.tables.T_986_1.T_986_1, org.jooq.test.db2.generatedclasses.tables.T_986_1.REF, org.jooq.test.db2.generatedclasses.tables.T_986_1.REF); + public static final org.jooq.UniqueKey T_986_2__PK_986 = createUniqueKey(org.jooq.test.db2.generatedclasses.tables.T_986_2.T_986_2, org.jooq.test.db2.generatedclasses.tables.T_986_2.REF, org.jooq.test.db2.generatedclasses.tables.T_986_2.REF); + public static final org.jooq.UniqueKey T_AUTHOR__PK_T_AUTHOR = createUniqueKey(org.jooq.test.db2.generatedclasses.tables.TAuthor.T_AUTHOR, org.jooq.test.db2.generatedclasses.tables.TAuthor.ID); + public static final org.jooq.UniqueKey T_BOOK__PK_T_BOOK = createUniqueKey(org.jooq.test.db2.generatedclasses.tables.TBook.T_BOOK, org.jooq.test.db2.generatedclasses.tables.TBook.ID); + public static final org.jooq.UniqueKey T_BOOK_STORE__UK_T_BOOK_STORE_NAME = createUniqueKey(org.jooq.test.db2.generatedclasses.tables.TBookStore.T_BOOK_STORE, org.jooq.test.db2.generatedclasses.tables.TBookStore.NAME); + public static final org.jooq.UniqueKey T_BOOK_TO_BOOK_STORE__PK_B2BS = createUniqueKey(org.jooq.test.db2.generatedclasses.tables.TBookToBookStore.T_BOOK_TO_BOOK_STORE, org.jooq.test.db2.generatedclasses.tables.TBookToBookStore.BOOK_STORE_NAME, org.jooq.test.db2.generatedclasses.tables.TBookToBookStore.BOOK_ID); + public static final org.jooq.UniqueKey T_BOOLEANS__PK_T_BOOLEANS = createUniqueKey(org.jooq.test.db2.generatedclasses.tables.TBooleans.T_BOOLEANS, org.jooq.test.db2.generatedclasses.tables.TBooleans.ID); + public static final org.jooq.UniqueKey T_DATES__PK_T_DATES = createUniqueKey(org.jooq.test.db2.generatedclasses.tables.TDates.T_DATES, org.jooq.test.db2.generatedclasses.tables.TDates.ID); + public static final org.jooq.UniqueKey T_IDENTITY_PK__PK_T_IDENTITY_PK = createUniqueKey(org.jooq.test.db2.generatedclasses.tables.TIdentityPk.T_IDENTITY_PK, org.jooq.test.db2.generatedclasses.tables.TIdentityPk.ID); + public static final org.jooq.UniqueKey T_TRIGGERS__PK_T_TRIGGERS = createUniqueKey(org.jooq.test.db2.generatedclasses.tables.TTriggers.T_TRIGGERS, org.jooq.test.db2.generatedclasses.tables.TTriggers.ID_GENERATED); + public static final org.jooq.UniqueKey X_TEST_CASE_64_69__PK_X_TEST_CASE_64_69 = createUniqueKey(org.jooq.test.db2.generatedclasses.tables.XTestCase_64_69.X_TEST_CASE_64_69, org.jooq.test.db2.generatedclasses.tables.XTestCase_64_69.ID); + public static final org.jooq.UniqueKey X_TEST_CASE_71__PK_X_TEST_CASE_71 = createUniqueKey(org.jooq.test.db2.generatedclasses.tables.XTestCase_71.X_TEST_CASE_71, org.jooq.test.db2.generatedclasses.tables.XTestCase_71.ID); + public static final org.jooq.UniqueKey X_TEST_CASE_85__PK_X_TEST_CASE_85 = createUniqueKey(org.jooq.test.db2.generatedclasses.tables.XTestCase_85.X_TEST_CASE_85, org.jooq.test.db2.generatedclasses.tables.XTestCase_85.ID); + public static final org.jooq.UniqueKey X_UNUSED__PK_X_UNUSED = createUniqueKey(org.jooq.test.db2.generatedclasses.tables.XUnused.X_UNUSED, org.jooq.test.db2.generatedclasses.tables.XUnused.ID, org.jooq.test.db2.generatedclasses.tables.XUnused.NAME); + public static final org.jooq.UniqueKey X_UNUSED__UK_X_UNUSED_ID = createUniqueKey(org.jooq.test.db2.generatedclasses.tables.XUnused.X_UNUSED, org.jooq.test.db2.generatedclasses.tables.XUnused.ID); + + // FOREIGN KEY definitions + public static final org.jooq.ForeignKey T_986_1__FK_986 = createForeignKey(X_UNUSED__UK_X_UNUSED_ID, org.jooq.test.db2.generatedclasses.tables.T_986_1.T_986_1, org.jooq.test.db2.generatedclasses.tables.T_986_1.REF); + public static final org.jooq.ForeignKey T_986_2__FK_986 = createForeignKey(X_UNUSED__UK_X_UNUSED_ID, org.jooq.test.db2.generatedclasses.tables.T_986_2.T_986_2, org.jooq.test.db2.generatedclasses.tables.T_986_2.REF); + public static final org.jooq.ForeignKey T_BOOK__FK_T_BOOK_AUTHOR_ID = createForeignKey(T_AUTHOR__PK_T_AUTHOR, org.jooq.test.db2.generatedclasses.tables.TBook.T_BOOK, org.jooq.test.db2.generatedclasses.tables.TBook.AUTHOR_ID); + public static final org.jooq.ForeignKey T_BOOK__FK_T_BOOK_CO_AUTHOR_ID = createForeignKey(T_AUTHOR__PK_T_AUTHOR, org.jooq.test.db2.generatedclasses.tables.TBook.T_BOOK, org.jooq.test.db2.generatedclasses.tables.TBook.CO_AUTHOR_ID); + public static final org.jooq.ForeignKey T_BOOK_TO_BOOK_STORE__FK_B2BS_BS_NAME = createForeignKey(T_BOOK_STORE__UK_T_BOOK_STORE_NAME, org.jooq.test.db2.generatedclasses.tables.TBookToBookStore.T_BOOK_TO_BOOK_STORE, org.jooq.test.db2.generatedclasses.tables.TBookToBookStore.BOOK_STORE_NAME); + public static final org.jooq.ForeignKey T_BOOK_TO_BOOK_STORE__FK_B2BS_B_ID = createForeignKey(T_BOOK__PK_T_BOOK, org.jooq.test.db2.generatedclasses.tables.TBookToBookStore.T_BOOK_TO_BOOK_STORE, org.jooq.test.db2.generatedclasses.tables.TBookToBookStore.BOOK_ID); + public static final org.jooq.ForeignKey X_TEST_CASE_64_69__FK_X_TEST_CASE_64_69A = createForeignKey(X_UNUSED__UK_X_UNUSED_ID, org.jooq.test.db2.generatedclasses.tables.XTestCase_64_69.X_TEST_CASE_64_69, org.jooq.test.db2.generatedclasses.tables.XTestCase_64_69.UNUSED_ID); + public static final org.jooq.ForeignKey X_TEST_CASE_71__FK_X_TEST_CASE_71 = createForeignKey(X_TEST_CASE_64_69__PK_X_TEST_CASE_64_69, org.jooq.test.db2.generatedclasses.tables.XTestCase_71.X_TEST_CASE_71, org.jooq.test.db2.generatedclasses.tables.XTestCase_71.TEST_CASE_64_69_ID); + public static final org.jooq.ForeignKey X_TEST_CASE_85__FK_X_TEST_CASE_85 = createForeignKey(X_UNUSED__PK_X_UNUSED, org.jooq.test.db2.generatedclasses.tables.XTestCase_85.X_TEST_CASE_85, org.jooq.test.db2.generatedclasses.tables.XTestCase_85.X_UNUSED_ID, org.jooq.test.db2.generatedclasses.tables.XTestCase_85.X_UNUSED_NAME); + public static final org.jooq.ForeignKey X_UNUSED__FK_X_UNUSED_SELF = createForeignKey(X_UNUSED__PK_X_UNUSED, org.jooq.test.db2.generatedclasses.tables.XUnused.X_UNUSED, org.jooq.test.db2.generatedclasses.tables.XUnused.ID_REF, org.jooq.test.db2.generatedclasses.tables.XUnused.NAME_REF); + + /** + * No instances + */ + private Keys() {} +} diff --git a/jOOQ-test/src/org/jooq/test/db2/generatedclasses/Lukas.java b/jOOQ-test/src/org/jooq/test/db2/generatedclasses/Lukas.java new file mode 100644 index 00000000000..5bbb554d2ca --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/db2/generatedclasses/Lukas.java @@ -0,0 +1,58 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.db2.generatedclasses; + +/** + * This class is generated by jOOQ. + */ +public class Lukas extends org.jooq.impl.SchemaImpl { + + private static final long serialVersionUID = -1813709147; + + /** + * The singleton instance of LUKAS + */ + public static final Lukas LUKAS = new Lukas(); + + /** + * No further instances allowed + */ + private Lukas() { + super("LUKAS"); + } + + @Override + public final java.util.List> getSequences() { + return java.util.Arrays.>asList( + org.jooq.test.db2.generatedclasses.Sequences.S_AUTHOR_ID, + org.jooq.test.db2.generatedclasses.Sequences.S_TRIGGER_ID); + } + + @Override + public final java.util.List> getTables() { + return java.util.Arrays.>asList( + org.jooq.test.db2.generatedclasses.tables.T_639NumbersTable.T_639_NUMBERS_TABLE, + org.jooq.test.db2.generatedclasses.tables.T_658Ref.T_658_REF, + org.jooq.test.db2.generatedclasses.tables.T_725LobTest.T_725_LOB_TEST, + org.jooq.test.db2.generatedclasses.tables.T_785.T_785, + org.jooq.test.db2.generatedclasses.tables.T_986_1.T_986_1, + org.jooq.test.db2.generatedclasses.tables.T_986_2.T_986_2, + org.jooq.test.db2.generatedclasses.tables.TAuthor.T_AUTHOR, + org.jooq.test.db2.generatedclasses.tables.TBook.T_BOOK, + org.jooq.test.db2.generatedclasses.tables.TBookStore.T_BOOK_STORE, + org.jooq.test.db2.generatedclasses.tables.TBookToBookStore.T_BOOK_TO_BOOK_STORE, + org.jooq.test.db2.generatedclasses.tables.TBooleans.T_BOOLEANS, + org.jooq.test.db2.generatedclasses.tables.TDates.T_DATES, + org.jooq.test.db2.generatedclasses.tables.TIdentity.T_IDENTITY, + org.jooq.test.db2.generatedclasses.tables.TIdentityPk.T_IDENTITY_PK, + org.jooq.test.db2.generatedclasses.tables.TTriggers.T_TRIGGERS, + org.jooq.test.db2.generatedclasses.tables.VAuthor.V_AUTHOR, + org.jooq.test.db2.generatedclasses.tables.VBook.V_BOOK, + org.jooq.test.db2.generatedclasses.tables.VLibrary.V_LIBRARY, + org.jooq.test.db2.generatedclasses.tables.XTestCase_64_69.X_TEST_CASE_64_69, + org.jooq.test.db2.generatedclasses.tables.XTestCase_71.X_TEST_CASE_71, + org.jooq.test.db2.generatedclasses.tables.XTestCase_85.X_TEST_CASE_85, + org.jooq.test.db2.generatedclasses.tables.XUnused.X_UNUSED); + } +} diff --git a/jOOQ-test/src/org/jooq/test/db2/generatedclasses/LukasFactory.java b/jOOQ-test/src/org/jooq/test/db2/generatedclasses/LukasFactory.java new file mode 100644 index 00000000000..dfb0a88c3ca --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/db2/generatedclasses/LukasFactory.java @@ -0,0 +1,41 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.db2.generatedclasses; + +/** + * This class is generated by jOOQ. + */ +public class LukasFactory extends org.jooq.util.db2.DB2Factory { + + private static final long serialVersionUID = -2036387971; + + /** + * Create a factory with a connection + * + * @param connection The connection to use with objects created from this factory + */ + public LukasFactory(java.sql.Connection connection) { + super(connection); + } + + /** + * Create a factory with a connection and a schema mapping + * + * @deprecated - 2.0.5 - Use {@link #LukasFactory(java.sql.Connection, org.jooq.conf.Settings)} instead + */ + @Deprecated + public LukasFactory(java.sql.Connection connection, org.jooq.SchemaMapping mapping) { + super(connection, mapping); + } + + /** + * Create a factory with a connection and some settings + * + * @param connection The connection to use with objects created from this factory + * @param settings The settings to apply to objects created from this factory + */ + public LukasFactory(java.sql.Connection connection, org.jooq.conf.Settings settings) { + super(connection, settings); + } +} diff --git a/jOOQ-test/src/org/jooq/test/db2/generatedclasses/Routines.java b/jOOQ-test/src/org/jooq/test/db2/generatedclasses/Routines.java new file mode 100644 index 00000000000..9bd7086db7f --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/db2/generatedclasses/Routines.java @@ -0,0 +1,272 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.db2.generatedclasses; + +/** + * This class is generated by jOOQ. + * + * Convenience access to all stored procedures and functions in LUKAS + */ +public final class Routines { + + /** + * Call LUKAS.F317 + * + * @param p1 + * @param p2 + * @param p3 + * @param p4 + * @throws org.jooq.exception.DataAccessException if something went wrong executing the query + */ + public static java.lang.Integer f317(org.jooq.Configuration configuration, java.lang.Integer p1, java.lang.Integer p2, java.lang.Integer p3, java.lang.Integer p4) { + org.jooq.test.db2.generatedclasses.routines.F317 f = new org.jooq.test.db2.generatedclasses.routines.F317(); + f.setP1(p1); + f.setP2(p2); + f.setP3(p3); + f.setP4(p4); + + f.execute(configuration); + return f.getReturnValue(); + } + + /** + * Get LUKAS.F317 as a field + * + * @param p1 + * @param p2 + * @param p3 + * @param p4 + */ + public static org.jooq.Field f317(java.lang.Integer p1, java.lang.Integer p2, java.lang.Integer p3, java.lang.Integer p4) { + org.jooq.test.db2.generatedclasses.routines.F317 f = new org.jooq.test.db2.generatedclasses.routines.F317(); + f.setP1(p1); + f.setP2(p2); + f.setP3(p3); + f.setP4(p4); + + return f.asField(); + } + + /** + * Get LUKAS.F317 as a field + * + * @param p1 + * @param p2 + * @param p3 + * @param p4 + */ + public static org.jooq.Field f317(org.jooq.Field p1, org.jooq.Field p2, org.jooq.Field p3, org.jooq.Field p4) { + org.jooq.test.db2.generatedclasses.routines.F317 f = new org.jooq.test.db2.generatedclasses.routines.F317(); + f.setP1(p1); + f.setP2(p2); + f.setP3(p3); + f.setP4(p4); + + return f.asField(); + } + + /** + * Call LUKAS.F_AUTHOR_EXISTS + * + * @param authorName + * @throws org.jooq.exception.DataAccessException if something went wrong executing the query + */ + public static java.lang.Integer fAuthorExists(org.jooq.Configuration configuration, java.lang.String authorName) { + org.jooq.test.db2.generatedclasses.routines.FAuthorExists f = new org.jooq.test.db2.generatedclasses.routines.FAuthorExists(); + f.setAuthorName(authorName); + + f.execute(configuration); + return f.getReturnValue(); + } + + /** + * Get LUKAS.F_AUTHOR_EXISTS as a field + * + * @param authorName + */ + public static org.jooq.Field fAuthorExists(java.lang.String authorName) { + org.jooq.test.db2.generatedclasses.routines.FAuthorExists f = new org.jooq.test.db2.generatedclasses.routines.FAuthorExists(); + f.setAuthorName(authorName); + + return f.asField(); + } + + /** + * Get LUKAS.F_AUTHOR_EXISTS as a field + * + * @param authorName + */ + public static org.jooq.Field fAuthorExists(org.jooq.Field authorName) { + org.jooq.test.db2.generatedclasses.routines.FAuthorExists f = new org.jooq.test.db2.generatedclasses.routines.FAuthorExists(); + f.setAuthorName(authorName); + + return f.asField(); + } + + /** + * Call LUKAS.F_NUMBER + * + * @param n + * @throws org.jooq.exception.DataAccessException if something went wrong executing the query + */ + public static java.lang.Integer fNumber(org.jooq.Configuration configuration, java.lang.Integer n) { + org.jooq.test.db2.generatedclasses.routines.FNumber f = new org.jooq.test.db2.generatedclasses.routines.FNumber(); + f.setN(n); + + f.execute(configuration); + return f.getReturnValue(); + } + + /** + * Get LUKAS.F_NUMBER as a field + * + * @param n + */ + public static org.jooq.Field fNumber(java.lang.Integer n) { + org.jooq.test.db2.generatedclasses.routines.FNumber f = new org.jooq.test.db2.generatedclasses.routines.FNumber(); + f.setN(n); + + return f.asField(); + } + + /** + * Get LUKAS.F_NUMBER as a field + * + * @param n + */ + public static org.jooq.Field fNumber(org.jooq.Field n) { + org.jooq.test.db2.generatedclasses.routines.FNumber f = new org.jooq.test.db2.generatedclasses.routines.FNumber(); + f.setN(n); + + return f.asField(); + } + + /** + * Call LUKAS.F_ONE + * + * @throws org.jooq.exception.DataAccessException if something went wrong executing the query + */ + public static java.lang.Integer fOne(org.jooq.Configuration configuration) { + org.jooq.test.db2.generatedclasses.routines.FOne f = new org.jooq.test.db2.generatedclasses.routines.FOne(); + + f.execute(configuration); + return f.getReturnValue(); + } + + /** + * Get LUKAS.F_ONE as a field + * + */ + public static org.jooq.Field fOne() { + org.jooq.test.db2.generatedclasses.routines.FOne f = new org.jooq.test.db2.generatedclasses.routines.FOne(); + + return f.asField(); + } + + /** + * Call LUKAS.P391 + * + * @param i1 IN parameter + * @param io1 IN OUT parameter + * @param o1 OUT parameter + * @param o2 OUT parameter + * @param io2 IN OUT parameter + * @param i2 IN parameter + * @throws org.jooq.exception.DataAccessException if something went wrong executing the query + */ + public static org.jooq.test.db2.generatedclasses.routines.P391 p391(org.jooq.Configuration configuration, java.lang.Integer i1, java.lang.Integer io1, java.lang.Integer io2, java.lang.Integer i2) { + org.jooq.test.db2.generatedclasses.routines.P391 p = new org.jooq.test.db2.generatedclasses.routines.P391(); + p.setI1(i1); + p.setIo1(io1); + p.setIo2(io2); + p.setI2(i2); + + p.execute(configuration); + return p; + } + + /** + * Call LUKAS.P_AUTHOR_EXISTS + * + * @param authorName IN parameter + * @param result OUT parameter + * @throws org.jooq.exception.DataAccessException if something went wrong executing the query + */ + public static java.lang.Integer pAuthorExists(org.jooq.Configuration configuration, java.lang.String authorName) { + org.jooq.test.db2.generatedclasses.routines.PAuthorExists p = new org.jooq.test.db2.generatedclasses.routines.PAuthorExists(); + p.setAuthorName(authorName); + + p.execute(configuration); + return p.getResult(); + } + + /** + * Call LUKAS.P_CREATE_AUTHOR + * + * @throws org.jooq.exception.DataAccessException if something went wrong executing the query + */ + public static void pCreateAuthor(org.jooq.Configuration configuration) { + org.jooq.test.db2.generatedclasses.routines.PCreateAuthor p = new org.jooq.test.db2.generatedclasses.routines.PCreateAuthor(); + + p.execute(configuration); + } + + /** + * Call LUKAS.P_CREATE_AUTHOR_BY_NAME + * + * @param firstName IN parameter + * @param lastName IN parameter + * @throws org.jooq.exception.DataAccessException if something went wrong executing the query + */ + public static void pCreateAuthorByName(org.jooq.Configuration configuration, java.lang.String firstName, java.lang.String lastName) { + org.jooq.test.db2.generatedclasses.routines.PCreateAuthorByName p = new org.jooq.test.db2.generatedclasses.routines.PCreateAuthorByName(); + p.setFirstName(firstName); + p.setLastName(lastName); + + p.execute(configuration); + } + + /** + * Call LUKAS.P_DEFAULT + * + * @param pInNumber IN parameter + * @param pOutNumber OUT parameter + * @param pInVarchar IN parameter + * @param pOutVarchar OUT parameter + * @param pInDate IN parameter + * @param pOutDate OUT parameter + * @throws org.jooq.exception.DataAccessException if something went wrong executing the query + */ + public static org.jooq.test.db2.generatedclasses.routines.PDefault pDefault(org.jooq.Configuration configuration, java.lang.Integer pInNumber, java.lang.String pInVarchar, java.sql.Date pInDate) { + org.jooq.test.db2.generatedclasses.routines.PDefault p = new org.jooq.test.db2.generatedclasses.routines.PDefault(); + p.setPInNumber(pInNumber); + p.setPInVarchar(pInVarchar); + p.setPInDate(pInDate); + + p.execute(configuration); + return p; + } + + /** + * Call LUKAS.P_UNUSED + * + * @param in1 IN parameter + * @param out1 OUT parameter + * @param out2 IN OUT parameter + * @throws org.jooq.exception.DataAccessException if something went wrong executing the query + */ + public static org.jooq.test.db2.generatedclasses.routines.PUnused pUnused(org.jooq.Configuration configuration, java.lang.String in1, java.lang.Integer out2) { + org.jooq.test.db2.generatedclasses.routines.PUnused p = new org.jooq.test.db2.generatedclasses.routines.PUnused(); + p.setIn1(in1); + p.setOut2(out2); + + p.execute(configuration); + return p; + } + + /** + * No instances + */ + private Routines() {} +} diff --git a/jOOQ-test/src/org/jooq/test/db2/generatedclasses/Sequences.java b/jOOQ-test/src/org/jooq/test/db2/generatedclasses/Sequences.java new file mode 100644 index 00000000000..97c23eb7a17 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/db2/generatedclasses/Sequences.java @@ -0,0 +1,27 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.db2.generatedclasses; + +/** + * This class is generated by jOOQ. + * + * Convenience access to all sequences in LUKAS + */ +public final class Sequences { + + /** + * The sequence LUKAS.S_AUTHOR_ID + */ + public static final org.jooq.Sequence S_AUTHOR_ID = new org.jooq.impl.SequenceImpl("S_AUTHOR_ID", org.jooq.test.db2.generatedclasses.Lukas.LUKAS, org.jooq.impl.SQLDataType.INTEGER); + + /** + * The sequence LUKAS.S_TRIGGER_ID + */ + public static final org.jooq.Sequence S_TRIGGER_ID = new org.jooq.impl.SequenceImpl("S_TRIGGER_ID", org.jooq.test.db2.generatedclasses.Lukas.LUKAS, org.jooq.impl.SQLDataType.INTEGER); + + /** + * No instances + */ + private Sequences() {} +} diff --git a/jOOQ-test/src/org/jooq/test/db2/generatedclasses/Tables.java b/jOOQ-test/src/org/jooq/test/db2/generatedclasses/Tables.java new file mode 100644 index 00000000000..3f79faab545 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/db2/generatedclasses/Tables.java @@ -0,0 +1,127 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.db2.generatedclasses; + +/** + * This class is generated by jOOQ. + * + * Convenience access to all tables in LUKAS + */ +public final class Tables { + + /** + * The table LUKAS.T_639_NUMBERS_TABLE + */ + public static org.jooq.test.db2.generatedclasses.tables.T_639NumbersTable T_639_NUMBERS_TABLE = org.jooq.test.db2.generatedclasses.tables.T_639NumbersTable.T_639_NUMBERS_TABLE; + + /** + * The table LUKAS.T_658_REF + */ + public static org.jooq.test.db2.generatedclasses.tables.T_658Ref T_658_REF = org.jooq.test.db2.generatedclasses.tables.T_658Ref.T_658_REF; + + /** + * The table LUKAS.T_725_LOB_TEST + */ + public static org.jooq.test.db2.generatedclasses.tables.T_725LobTest T_725_LOB_TEST = org.jooq.test.db2.generatedclasses.tables.T_725LobTest.T_725_LOB_TEST; + + /** + * The table LUKAS.T_785 + */ + public static org.jooq.test.db2.generatedclasses.tables.T_785 T_785 = org.jooq.test.db2.generatedclasses.tables.T_785.T_785; + + /** + * The table LUKAS.T_986_1 + */ + public static org.jooq.test.db2.generatedclasses.tables.T_986_1 T_986_1 = org.jooq.test.db2.generatedclasses.tables.T_986_1.T_986_1; + + /** + * The table LUKAS.T_986_2 + */ + public static org.jooq.test.db2.generatedclasses.tables.T_986_2 T_986_2 = org.jooq.test.db2.generatedclasses.tables.T_986_2.T_986_2; + + /** + * The table LUKAS.T_AUTHOR + */ + public static org.jooq.test.db2.generatedclasses.tables.TAuthor T_AUTHOR = org.jooq.test.db2.generatedclasses.tables.TAuthor.T_AUTHOR; + + /** + * The table LUKAS.T_BOOK + */ + public static org.jooq.test.db2.generatedclasses.tables.TBook T_BOOK = org.jooq.test.db2.generatedclasses.tables.TBook.T_BOOK; + + /** + * The table LUKAS.T_BOOK_STORE + */ + public static org.jooq.test.db2.generatedclasses.tables.TBookStore T_BOOK_STORE = org.jooq.test.db2.generatedclasses.tables.TBookStore.T_BOOK_STORE; + + /** + * The table LUKAS.T_BOOK_TO_BOOK_STORE + */ + public static org.jooq.test.db2.generatedclasses.tables.TBookToBookStore T_BOOK_TO_BOOK_STORE = org.jooq.test.db2.generatedclasses.tables.TBookToBookStore.T_BOOK_TO_BOOK_STORE; + + /** + * The table LUKAS.T_BOOLEANS + */ + public static org.jooq.test.db2.generatedclasses.tables.TBooleans T_BOOLEANS = org.jooq.test.db2.generatedclasses.tables.TBooleans.T_BOOLEANS; + + /** + * The table LUKAS.T_DATES + */ + public static org.jooq.test.db2.generatedclasses.tables.TDates T_DATES = org.jooq.test.db2.generatedclasses.tables.TDates.T_DATES; + + /** + * The table LUKAS.T_IDENTITY + */ + public static org.jooq.test.db2.generatedclasses.tables.TIdentity T_IDENTITY = org.jooq.test.db2.generatedclasses.tables.TIdentity.T_IDENTITY; + + /** + * The table LUKAS.T_IDENTITY_PK + */ + public static org.jooq.test.db2.generatedclasses.tables.TIdentityPk T_IDENTITY_PK = org.jooq.test.db2.generatedclasses.tables.TIdentityPk.T_IDENTITY_PK; + + /** + * The table LUKAS.T_TRIGGERS + */ + public static org.jooq.test.db2.generatedclasses.tables.TTriggers T_TRIGGERS = org.jooq.test.db2.generatedclasses.tables.TTriggers.T_TRIGGERS; + + /** + * The table LUKAS.V_AUTHOR + */ + public static org.jooq.test.db2.generatedclasses.tables.VAuthor V_AUTHOR = org.jooq.test.db2.generatedclasses.tables.VAuthor.V_AUTHOR; + + /** + * The table LUKAS.V_BOOK + */ + public static org.jooq.test.db2.generatedclasses.tables.VBook V_BOOK = org.jooq.test.db2.generatedclasses.tables.VBook.V_BOOK; + + /** + * The table LUKAS.V_LIBRARY + */ + public static org.jooq.test.db2.generatedclasses.tables.VLibrary V_LIBRARY = org.jooq.test.db2.generatedclasses.tables.VLibrary.V_LIBRARY; + + /** + * The table LUKAS.X_TEST_CASE_64_69 + */ + public static org.jooq.test.db2.generatedclasses.tables.XTestCase_64_69 X_TEST_CASE_64_69 = org.jooq.test.db2.generatedclasses.tables.XTestCase_64_69.X_TEST_CASE_64_69; + + /** + * The table LUKAS.X_TEST_CASE_71 + */ + public static org.jooq.test.db2.generatedclasses.tables.XTestCase_71 X_TEST_CASE_71 = org.jooq.test.db2.generatedclasses.tables.XTestCase_71.X_TEST_CASE_71; + + /** + * The table LUKAS.X_TEST_CASE_85 + */ + public static org.jooq.test.db2.generatedclasses.tables.XTestCase_85 X_TEST_CASE_85 = org.jooq.test.db2.generatedclasses.tables.XTestCase_85.X_TEST_CASE_85; + + /** + * The table LUKAS.X_UNUSED + */ + public static org.jooq.test.db2.generatedclasses.tables.XUnused X_UNUSED = org.jooq.test.db2.generatedclasses.tables.XUnused.X_UNUSED; + + /** + * No instances + */ + private Tables() {} +} diff --git a/jOOQ-test/src/org/jooq/test/db2/generatedclasses/enums/TLanguage.java b/jOOQ-test/src/org/jooq/test/db2/generatedclasses/enums/TLanguage.java new file mode 100644 index 00000000000..fc47e7d161d --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/db2/generatedclasses/enums/TLanguage.java @@ -0,0 +1,65 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.db2.generatedclasses.enums; + +/** + * This class is generated by jOOQ. + */ +public enum TLanguage implements org.jooq.MasterDataType { + + /** + * English + */ + en(1, "en", "English"), + + /** + * Deutsch + */ + de(2, "de", "Deutsch"), + + /** + * Français + */ + fr(3, "fr", "Français"), + pt(4, "pt", null), + ; + + private final java.lang.Integer id; + private final java.lang.String cd; + private final java.lang.String description; + + private TLanguage(java.lang.Integer id, java.lang.String cd, java.lang.String description) { + this.id = id; + this.cd = cd; + this.description = description; + } + + @Override + public java.lang.Integer getPrimaryKey() { + return id; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final java.lang.Integer getId() { + return id; + } + + /** + * An uncommented item + */ + public final java.lang.String getCd() { + return cd; + } + + /** + * An uncommented item + */ + public final java.lang.String getDescription() { + return description; + } +} diff --git a/jOOQ-test/src/org/jooq/test/db2/generatedclasses/enums/T_658_11.java b/jOOQ-test/src/org/jooq/test/db2/generatedclasses/enums/T_658_11.java new file mode 100644 index 00000000000..1e67c577ed9 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/db2/generatedclasses/enums/T_658_11.java @@ -0,0 +1,46 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.db2.generatedclasses.enums; + +/** + * This class is generated by jOOQ. + */ +public enum T_658_11 implements org.jooq.MasterDataType { + + /** + * A + */ + A__("A "), + + /** + * B + */ + B__("B "), + + /** + * C + */ + C__("C "), + ; + + private final java.lang.String id; + + private T_658_11(java.lang.String id) { + this.id = id; + } + + @Override + public java.lang.String getPrimaryKey() { + return id; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final java.lang.String getId() { + return id; + } +} diff --git a/jOOQ-test/src/org/jooq/test/db2/generatedclasses/enums/T_658_12.java b/jOOQ-test/src/org/jooq/test/db2/generatedclasses/enums/T_658_12.java new file mode 100644 index 00000000000..2cb71c778ad --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/db2/generatedclasses/enums/T_658_12.java @@ -0,0 +1,55 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.db2.generatedclasses.enums; + +/** + * This class is generated by jOOQ. + */ +public enum T_658_12 implements org.jooq.MasterDataType { + + /** + * A + */ + A__("A ", "A "), + + /** + * B + */ + B__("B ", "B "), + + /** + * C + */ + C__("C ", "C "), + ; + + private final java.lang.String id; + private final java.lang.String cd; + + private T_658_12(java.lang.String id, java.lang.String cd) { + this.id = id; + this.cd = cd; + } + + @Override + public java.lang.String getPrimaryKey() { + return id; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final java.lang.String getId() { + return id; + } + + /** + * An uncommented item + */ + public final java.lang.String getCd() { + return cd; + } +} diff --git a/jOOQ-test/src/org/jooq/test/db2/generatedclasses/enums/T_658_21.java b/jOOQ-test/src/org/jooq/test/db2/generatedclasses/enums/T_658_21.java new file mode 100644 index 00000000000..56f10643051 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/db2/generatedclasses/enums/T_658_21.java @@ -0,0 +1,46 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.db2.generatedclasses.enums; + +/** + * This class is generated by jOOQ. + */ +public enum T_658_21 implements org.jooq.MasterDataType { + + /** + * 1 + */ + _1(1), + + /** + * 2 + */ + _2(2), + + /** + * 3 + */ + _3(3), + ; + + private final java.lang.Integer id; + + private T_658_21(java.lang.Integer id) { + this.id = id; + } + + @Override + public java.lang.Integer getPrimaryKey() { + return id; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final java.lang.Integer getId() { + return id; + } +} diff --git a/jOOQ-test/src/org/jooq/test/db2/generatedclasses/enums/T_658_22.java b/jOOQ-test/src/org/jooq/test/db2/generatedclasses/enums/T_658_22.java new file mode 100644 index 00000000000..38f75995374 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/db2/generatedclasses/enums/T_658_22.java @@ -0,0 +1,55 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.db2.generatedclasses.enums; + +/** + * This class is generated by jOOQ. + */ +public enum T_658_22 implements org.jooq.MasterDataType { + + /** + * 1 + */ + _1(1, 1), + + /** + * 2 + */ + _2(2, 2), + + /** + * 3 + */ + _3(3, 3), + ; + + private final java.lang.Integer id; + private final java.lang.Integer cd; + + private T_658_22(java.lang.Integer id, java.lang.Integer cd) { + this.id = id; + this.cd = cd; + } + + @Override + public java.lang.Integer getPrimaryKey() { + return id; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final java.lang.Integer getId() { + return id; + } + + /** + * An uncommented item + */ + public final java.lang.Integer getCd() { + return cd; + } +} diff --git a/jOOQ-test/src/org/jooq/test/db2/generatedclasses/enums/T_658_31.java b/jOOQ-test/src/org/jooq/test/db2/generatedclasses/enums/T_658_31.java new file mode 100644 index 00000000000..cceac3f2169 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/db2/generatedclasses/enums/T_658_31.java @@ -0,0 +1,46 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.db2.generatedclasses.enums; + +/** + * This class is generated by jOOQ. + */ +public enum T_658_31 implements org.jooq.MasterDataType { + + /** + * 1 + */ + _1(1L), + + /** + * 2 + */ + _2(2L), + + /** + * 3 + */ + _3(3L), + ; + + private final java.lang.Long id; + + private T_658_31(java.lang.Long id) { + this.id = id; + } + + @Override + public java.lang.Long getPrimaryKey() { + return id; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final java.lang.Long getId() { + return id; + } +} diff --git a/jOOQ-test/src/org/jooq/test/db2/generatedclasses/enums/T_658_32.java b/jOOQ-test/src/org/jooq/test/db2/generatedclasses/enums/T_658_32.java new file mode 100644 index 00000000000..841f4263028 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/db2/generatedclasses/enums/T_658_32.java @@ -0,0 +1,55 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.db2.generatedclasses.enums; + +/** + * This class is generated by jOOQ. + */ +public enum T_658_32 implements org.jooq.MasterDataType { + + /** + * 1 + */ + _1(1L, 1L), + + /** + * 2 + */ + _2(2L, 2L), + + /** + * 3 + */ + _3(3L, 3L), + ; + + private final java.lang.Long id; + private final java.lang.Long cd; + + private T_658_32(java.lang.Long id, java.lang.Long cd) { + this.id = id; + this.cd = cd; + } + + @Override + public java.lang.Long getPrimaryKey() { + return id; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final java.lang.Long getId() { + return id; + } + + /** + * An uncommented item + */ + public final java.lang.Long getCd() { + return cd; + } +} diff --git a/jOOQ-test/src/org/jooq/test/db2/generatedclasses/routines/F317.java b/jOOQ-test/src/org/jooq/test/db2/generatedclasses/routines/F317.java new file mode 100644 index 00000000000..e9d7986753a --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/db2/generatedclasses/routines/F317.java @@ -0,0 +1,115 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.db2.generatedclasses.routines; + +/** + * This class is generated by jOOQ. + */ +public class F317 extends org.jooq.impl.AbstractRoutine { + + private static final long serialVersionUID = -165538977; + + + /** + * An uncommented item + */ + public static final org.jooq.Parameter RETURN_VALUE = createParameter("RETURN_VALUE", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter P1 = createParameter("P1", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter P2 = createParameter("P2", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter P3 = createParameter("P3", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter P4 = createParameter("P4", org.jooq.impl.SQLDataType.INTEGER); + + /** + * Create a new routine call instance + */ + public F317() { + super("F317", org.jooq.test.db2.generatedclasses.Lukas.LUKAS, org.jooq.impl.SQLDataType.INTEGER); + + setReturnParameter(RETURN_VALUE); + addInParameter(P1); + addInParameter(P2); + addInParameter(P3); + addInParameter(P4); + } + + /** + * Set the P1 parameter to the routine + */ + public void setP1(java.lang.Integer value) { + setValue(P1, value); + } + + /** + * Set the P1 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setP1(org.jooq.Field field) { + setField(P1, field); + } + + /** + * Set the P2 parameter to the routine + */ + public void setP2(java.lang.Integer value) { + setValue(P2, value); + } + + /** + * Set the P2 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setP2(org.jooq.Field field) { + setField(P2, field); + } + + /** + * Set the P3 parameter to the routine + */ + public void setP3(java.lang.Integer value) { + setValue(P3, value); + } + + /** + * Set the P3 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setP3(org.jooq.Field field) { + setField(P3, field); + } + + /** + * Set the P4 parameter to the routine + */ + public void setP4(java.lang.Integer value) { + setValue(P4, value); + } + + /** + * Set the P4 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setP4(org.jooq.Field field) { + setField(P4, field); + } +} diff --git a/jOOQ-test/src/org/jooq/test/db2/generatedclasses/routines/FAuthorExists.java b/jOOQ-test/src/org/jooq/test/db2/generatedclasses/routines/FAuthorExists.java new file mode 100644 index 00000000000..dee7922a4ff --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/db2/generatedclasses/routines/FAuthorExists.java @@ -0,0 +1,49 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.db2.generatedclasses.routines; + +/** + * This class is generated by jOOQ. + */ +public class FAuthorExists extends org.jooq.impl.AbstractRoutine { + + private static final long serialVersionUID = 1228369056; + + + /** + * An uncommented item + */ + public static final org.jooq.Parameter RETURN_VALUE = createParameter("RETURN_VALUE", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter AUTHOR_NAME = createParameter("AUTHOR_NAME", org.jooq.impl.SQLDataType.VARCHAR); + + /** + * Create a new routine call instance + */ + public FAuthorExists() { + super("F_AUTHOR_EXISTS", org.jooq.test.db2.generatedclasses.Lukas.LUKAS, org.jooq.impl.SQLDataType.INTEGER); + + setReturnParameter(RETURN_VALUE); + addInParameter(AUTHOR_NAME); + } + + /** + * Set the AUTHOR_NAME parameter to the routine + */ + public void setAuthorName(java.lang.String value) { + setValue(AUTHOR_NAME, value); + } + + /** + * Set the AUTHOR_NAME parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setAuthorName(org.jooq.Field field) { + setField(AUTHOR_NAME, field); + } +} diff --git a/jOOQ-test/src/org/jooq/test/db2/generatedclasses/routines/FNumber.java b/jOOQ-test/src/org/jooq/test/db2/generatedclasses/routines/FNumber.java new file mode 100644 index 00000000000..0fb3fe47d9e --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/db2/generatedclasses/routines/FNumber.java @@ -0,0 +1,49 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.db2.generatedclasses.routines; + +/** + * This class is generated by jOOQ. + */ +public class FNumber extends org.jooq.impl.AbstractRoutine { + + private static final long serialVersionUID = -1611651156; + + + /** + * An uncommented item + */ + public static final org.jooq.Parameter RETURN_VALUE = createParameter("RETURN_VALUE", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter N = createParameter("N", org.jooq.impl.SQLDataType.INTEGER); + + /** + * Create a new routine call instance + */ + public FNumber() { + super("F_NUMBER", org.jooq.test.db2.generatedclasses.Lukas.LUKAS, org.jooq.impl.SQLDataType.INTEGER); + + setReturnParameter(RETURN_VALUE); + addInParameter(N); + } + + /** + * Set the N parameter to the routine + */ + public void setN(java.lang.Integer value) { + setValue(N, value); + } + + /** + * Set the N parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setN(org.jooq.Field field) { + setField(N, field); + } +} diff --git a/jOOQ-test/src/org/jooq/test/db2/generatedclasses/routines/FOne.java b/jOOQ-test/src/org/jooq/test/db2/generatedclasses/routines/FOne.java new file mode 100644 index 00000000000..4da56dbe9ab --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/db2/generatedclasses/routines/FOne.java @@ -0,0 +1,27 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.db2.generatedclasses.routines; + +/** + * This class is generated by jOOQ. + */ +public class FOne extends org.jooq.impl.AbstractRoutine { + + private static final long serialVersionUID = -1677169151; + + + /** + * An uncommented item + */ + public static final org.jooq.Parameter RETURN_VALUE = createParameter("RETURN_VALUE", org.jooq.impl.SQLDataType.INTEGER); + + /** + * Create a new routine call instance + */ + public FOne() { + super("F_ONE", org.jooq.test.db2.generatedclasses.Lukas.LUKAS, org.jooq.impl.SQLDataType.INTEGER); + + setReturnParameter(RETURN_VALUE); + } +} diff --git a/jOOQ-test/src/org/jooq/test/db2/generatedclasses/routines/P391.java b/jOOQ-test/src/org/jooq/test/db2/generatedclasses/routines/P391.java new file mode 100644 index 00000000000..6c6f6c08c25 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/db2/generatedclasses/routines/P391.java @@ -0,0 +1,101 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.db2.generatedclasses.routines; + +/** + * This class is generated by jOOQ. + */ +public class P391 extends org.jooq.impl.AbstractRoutine { + + private static final long serialVersionUID = -167633897; + + + /** + * An uncommented item + */ + public static final org.jooq.Parameter I1 = createParameter("I1", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter IO1 = createParameter("IO1", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter O1 = createParameter("O1", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter O2 = createParameter("O2", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter IO2 = createParameter("IO2", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter I2 = createParameter("I2", org.jooq.impl.SQLDataType.INTEGER); + + /** + * Create a new routine call instance + */ + public P391() { + super("P391", org.jooq.test.db2.generatedclasses.Lukas.LUKAS); + + addInParameter(I1); + addInOutParameter(IO1); + addOutParameter(O1); + addOutParameter(O2); + addInOutParameter(IO2); + addInParameter(I2); + } + + /** + * Set the I1 parameter to the routine + */ + public void setI1(java.lang.Integer value) { + setValue(I1, value); + } + + /** + * Set the IO1 parameter to the routine + */ + public void setIo1(java.lang.Integer value) { + setValue(IO1, value); + } + + /** + * Set the IO2 parameter to the routine + */ + public void setIo2(java.lang.Integer value) { + setValue(IO2, value); + } + + /** + * Set the I2 parameter to the routine + */ + public void setI2(java.lang.Integer value) { + setValue(I2, value); + } + + public java.lang.Integer getIo1() { + return getValue(IO1); + } + + public java.lang.Integer getO1() { + return getValue(O1); + } + + public java.lang.Integer getO2() { + return getValue(O2); + } + + public java.lang.Integer getIo2() { + return getValue(IO2); + } +} diff --git a/jOOQ-test/src/org/jooq/test/db2/generatedclasses/routines/PAuthorExists.java b/jOOQ-test/src/org/jooq/test/db2/generatedclasses/routines/PAuthorExists.java new file mode 100644 index 00000000000..e493c782708 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/db2/generatedclasses/routines/PAuthorExists.java @@ -0,0 +1,44 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.db2.generatedclasses.routines; + +/** + * This class is generated by jOOQ. + */ +public class PAuthorExists extends org.jooq.impl.AbstractRoutine { + + private static final long serialVersionUID = 1464707502; + + + /** + * An uncommented item + */ + public static final org.jooq.Parameter AUTHOR_NAME = createParameter("AUTHOR_NAME", org.jooq.impl.SQLDataType.VARCHAR); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter RESULT = createParameter("RESULT", org.jooq.impl.SQLDataType.INTEGER); + + /** + * Create a new routine call instance + */ + public PAuthorExists() { + super("P_AUTHOR_EXISTS", org.jooq.test.db2.generatedclasses.Lukas.LUKAS); + + addInParameter(AUTHOR_NAME); + addOutParameter(RESULT); + } + + /** + * Set the AUTHOR_NAME parameter to the routine + */ + public void setAuthorName(java.lang.String value) { + setValue(AUTHOR_NAME, value); + } + + public java.lang.Integer getResult() { + return getValue(RESULT); + } +} diff --git a/jOOQ-test/src/org/jooq/test/db2/generatedclasses/routines/PCreateAuthor.java b/jOOQ-test/src/org/jooq/test/db2/generatedclasses/routines/PCreateAuthor.java new file mode 100644 index 00000000000..743a5c9b4f1 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/db2/generatedclasses/routines/PCreateAuthor.java @@ -0,0 +1,20 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.db2.generatedclasses.routines; + +/** + * This class is generated by jOOQ. + */ +public class PCreateAuthor extends org.jooq.impl.AbstractRoutine { + + private static final long serialVersionUID = -546258804; + + + /** + * Create a new routine call instance + */ + public PCreateAuthor() { + super("P_CREATE_AUTHOR", org.jooq.test.db2.generatedclasses.Lukas.LUKAS); + } +} diff --git a/jOOQ-test/src/org/jooq/test/db2/generatedclasses/routines/PCreateAuthorByName.java b/jOOQ-test/src/org/jooq/test/db2/generatedclasses/routines/PCreateAuthorByName.java new file mode 100644 index 00000000000..deb66eaf56e --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/db2/generatedclasses/routines/PCreateAuthorByName.java @@ -0,0 +1,47 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.db2.generatedclasses.routines; + +/** + * This class is generated by jOOQ. + */ +public class PCreateAuthorByName extends org.jooq.impl.AbstractRoutine { + + private static final long serialVersionUID = -2081815214; + + + /** + * An uncommented item + */ + public static final org.jooq.Parameter FIRST_NAME = createParameter("FIRST_NAME", org.jooq.impl.SQLDataType.VARCHAR); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter LAST_NAME = createParameter("LAST_NAME", org.jooq.impl.SQLDataType.VARCHAR); + + /** + * Create a new routine call instance + */ + public PCreateAuthorByName() { + super("P_CREATE_AUTHOR_BY_NAME", org.jooq.test.db2.generatedclasses.Lukas.LUKAS); + + addInParameter(FIRST_NAME); + addInParameter(LAST_NAME); + } + + /** + * Set the FIRST_NAME parameter to the routine + */ + public void setFirstName(java.lang.String value) { + setValue(FIRST_NAME, value); + } + + /** + * Set the LAST_NAME parameter to the routine + */ + public void setLastName(java.lang.String value) { + setValue(LAST_NAME, value); + } +} diff --git a/jOOQ-test/src/org/jooq/test/db2/generatedclasses/routines/PDefault.java b/jOOQ-test/src/org/jooq/test/db2/generatedclasses/routines/PDefault.java new file mode 100644 index 00000000000..da4d2db0c08 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/db2/generatedclasses/routines/PDefault.java @@ -0,0 +1,90 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.db2.generatedclasses.routines; + +/** + * This class is generated by jOOQ. + */ +public class PDefault extends org.jooq.impl.AbstractRoutine { + + private static final long serialVersionUID = -140946464; + + + /** + * An uncommented item + */ + public static final org.jooq.Parameter P_IN_NUMBER = createParameter("P_IN_NUMBER", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter P_OUT_NUMBER = createParameter("P_OUT_NUMBER", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter P_IN_VARCHAR = createParameter("P_IN_VARCHAR", org.jooq.impl.SQLDataType.VARCHAR); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter P_OUT_VARCHAR = createParameter("P_OUT_VARCHAR", org.jooq.impl.SQLDataType.VARCHAR); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter P_IN_DATE = createParameter("P_IN_DATE", org.jooq.impl.SQLDataType.DATE); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter P_OUT_DATE = createParameter("P_OUT_DATE", org.jooq.impl.SQLDataType.DATE); + + /** + * Create a new routine call instance + */ + public PDefault() { + super("P_DEFAULT", org.jooq.test.db2.generatedclasses.Lukas.LUKAS); + + addInParameter(P_IN_NUMBER); + addOutParameter(P_OUT_NUMBER); + addInParameter(P_IN_VARCHAR); + addOutParameter(P_OUT_VARCHAR); + addInParameter(P_IN_DATE); + addOutParameter(P_OUT_DATE); + } + + /** + * Set the P_IN_NUMBER parameter to the routine + */ + public void setPInNumber(java.lang.Integer value) { + setValue(P_IN_NUMBER, value); + } + + /** + * Set the P_IN_VARCHAR parameter to the routine + */ + public void setPInVarchar(java.lang.String value) { + setValue(P_IN_VARCHAR, value); + } + + /** + * Set the P_IN_DATE parameter to the routine + */ + public void setPInDate(java.sql.Date value) { + setValue(P_IN_DATE, value); + } + + public java.lang.Integer getPOutNumber() { + return getValue(P_OUT_NUMBER); + } + + public java.lang.String getPOutVarchar() { + return getValue(P_OUT_VARCHAR); + } + + public java.sql.Date getPOutDate() { + return getValue(P_OUT_DATE); + } +} diff --git a/jOOQ-test/src/org/jooq/test/db2/generatedclasses/routines/PUnused.java b/jOOQ-test/src/org/jooq/test/db2/generatedclasses/routines/PUnused.java new file mode 100644 index 00000000000..dc649725f02 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/db2/generatedclasses/routines/PUnused.java @@ -0,0 +1,61 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.db2.generatedclasses.routines; + +/** + * This class is generated by jOOQ. + */ +public class PUnused extends org.jooq.impl.AbstractRoutine { + + private static final long serialVersionUID = 1193416239; + + + /** + * An uncommented item + */ + public static final org.jooq.Parameter IN1 = createParameter("IN1", org.jooq.impl.SQLDataType.VARCHAR); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter OUT1 = createParameter("OUT1", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter OUT2 = createParameter("OUT2", org.jooq.impl.SQLDataType.INTEGER); + + /** + * Create a new routine call instance + */ + public PUnused() { + super("P_UNUSED", org.jooq.test.db2.generatedclasses.Lukas.LUKAS); + + addInParameter(IN1); + addOutParameter(OUT1); + addInOutParameter(OUT2); + } + + /** + * Set the IN1 parameter to the routine + */ + public void setIn1(java.lang.String value) { + setValue(IN1, value); + } + + /** + * Set the OUT2 parameter to the routine + */ + public void setOut2(java.lang.Integer value) { + setValue(OUT2, value); + } + + public java.lang.Integer getOut1() { + return getValue(OUT1); + } + + public java.lang.Integer getOut2() { + return getValue(OUT2); + } +} diff --git a/jOOQ-test/src/org/jooq/test/db2/generatedclasses/tables/TAuthor.java b/jOOQ-test/src/org/jooq/test/db2/generatedclasses/tables/TAuthor.java new file mode 100644 index 00000000000..04837bd1b7d --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/db2/generatedclasses/tables/TAuthor.java @@ -0,0 +1,80 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.db2.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class TAuthor extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = 1840597479; + + /** + * The singleton instance of LUKAS.T_AUTHOR + */ + public static final org.jooq.test.db2.generatedclasses.tables.TAuthor T_AUTHOR = new org.jooq.test.db2.generatedclasses.tables.TAuthor(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.db2.generatedclasses.tables.records.TAuthorRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public static final org.jooq.TableField ID = createField("ID", org.jooq.impl.SQLDataType.INTEGER, T_AUTHOR); + + /** + * An uncommented item + */ + public static final org.jooq.TableField FIRST_NAME = createField("FIRST_NAME", org.jooq.impl.SQLDataType.VARCHAR, T_AUTHOR); + + /** + * An uncommented item + */ + public static final org.jooq.TableField LAST_NAME = createField("LAST_NAME", org.jooq.impl.SQLDataType.VARCHAR, T_AUTHOR); + + /** + * An uncommented item + */ + public static final org.jooq.TableField DATE_OF_BIRTH = createField("DATE_OF_BIRTH", org.jooq.impl.SQLDataType.DATE, T_AUTHOR); + + /** + * An uncommented item + */ + public static final org.jooq.TableField YEAR_OF_BIRTH = createField("YEAR_OF_BIRTH", org.jooq.impl.SQLDataType.INTEGER, T_AUTHOR); + + /** + * An uncommented item + */ + public static final org.jooq.TableField ADDRESS = createField("ADDRESS", org.jooq.impl.SQLDataType.VARCHAR, T_AUTHOR); + + /** + * No further instances allowed + */ + private TAuthor() { + super("T_AUTHOR", org.jooq.test.db2.generatedclasses.Lukas.LUKAS); + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.test.db2.generatedclasses.Keys.T_AUTHOR__PK_T_AUTHOR; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.test.db2.generatedclasses.Keys.T_AUTHOR__PK_T_AUTHOR); + } +} diff --git a/jOOQ-test/src/org/jooq/test/db2/generatedclasses/tables/TBook.java b/jOOQ-test/src/org/jooq/test/db2/generatedclasses/tables/TBook.java new file mode 100644 index 00000000000..a8c0d0d0d24 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/db2/generatedclasses/tables/TBook.java @@ -0,0 +1,119 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.db2.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class TBook extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = -2129548842; + + /** + * The singleton instance of LUKAS.T_BOOK + */ + public static final org.jooq.test.db2.generatedclasses.tables.TBook T_BOOK = new org.jooq.test.db2.generatedclasses.tables.TBook(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.db2.generatedclasses.tables.records.TBookRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public static final org.jooq.TableField ID = createField("ID", org.jooq.impl.SQLDataType.INTEGER, T_BOOK); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT T_BOOK__FK_T_BOOK_AUTHOR_ID
+	 * FOREIGN KEY (AUTHOR_ID)
+	 * REFERENCES LUKAS.T_AUTHOR (ID)
+	 * 
+ */ + public static final org.jooq.TableField AUTHOR_ID = createField("AUTHOR_ID", org.jooq.impl.SQLDataType.INTEGER, T_BOOK); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT T_BOOK__FK_T_BOOK_CO_AUTHOR_ID
+	 * FOREIGN KEY (CO_AUTHOR_ID)
+	 * REFERENCES LUKAS.T_AUTHOR (ID)
+	 * 
+ */ + public static final org.jooq.TableField CO_AUTHOR_ID = createField("CO_AUTHOR_ID", org.jooq.impl.SQLDataType.INTEGER, T_BOOK); + + /** + * An uncommented item + */ + public static final org.jooq.TableField DETAILS_ID = createField("DETAILS_ID", org.jooq.impl.SQLDataType.INTEGER, T_BOOK); + + /** + * An uncommented item + */ + public static final org.jooq.TableField TITLE = createField("TITLE", org.jooq.impl.SQLDataType.VARCHAR, T_BOOK); + + /** + * An uncommented item + */ + public static final org.jooq.TableField PUBLISHED_IN = createField("PUBLISHED_IN", org.jooq.impl.SQLDataType.INTEGER, T_BOOK); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT T_BOOK__FK_T_BOOK_LANGUAGE_ID
+	 * FOREIGN KEY (LANGUAGE_ID)
+	 * REFERENCES LUKAS.T_LANGUAGE (ID)
+	 * 
+ */ + public static final org.jooq.TableField LANGUAGE_ID = createField("LANGUAGE_ID", org.jooq.impl.SQLDataType.INTEGER.asMasterDataType(org.jooq.test.db2.generatedclasses.enums.TLanguage.class), T_BOOK); + + /** + * An uncommented item + */ + public static final org.jooq.TableField CONTENT_TEXT = createField("CONTENT_TEXT", org.jooq.impl.SQLDataType.LONGVARCHAR, T_BOOK); + + /** + * An uncommented item + */ + public static final org.jooq.TableField CONTENT_PDF = createField("CONTENT_PDF", org.jooq.impl.SQLDataType.BLOB, T_BOOK); + + /** + * No further instances allowed + */ + private TBook() { + super("T_BOOK", org.jooq.test.db2.generatedclasses.Lukas.LUKAS); + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.test.db2.generatedclasses.Keys.T_BOOK__PK_T_BOOK; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.test.db2.generatedclasses.Keys.T_BOOK__PK_T_BOOK); + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getReferences() { + return java.util.Arrays.>asList(org.jooq.test.db2.generatedclasses.Keys.T_BOOK__FK_T_BOOK_AUTHOR_ID, org.jooq.test.db2.generatedclasses.Keys.T_BOOK__FK_T_BOOK_CO_AUTHOR_ID); + } +} diff --git a/jOOQ-test/src/org/jooq/test/db2/generatedclasses/tables/TBookStore.java b/jOOQ-test/src/org/jooq/test/db2/generatedclasses/tables/TBookStore.java new file mode 100644 index 00000000000..6b608900fc0 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/db2/generatedclasses/tables/TBookStore.java @@ -0,0 +1,53 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.db2.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class TBookStore extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = 1490073760; + + /** + * The singleton instance of LUKAS.T_BOOK_STORE + */ + public static final org.jooq.test.db2.generatedclasses.tables.TBookStore T_BOOK_STORE = new org.jooq.test.db2.generatedclasses.tables.TBookStore(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.db2.generatedclasses.tables.records.TBookStoreRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + */ + public static final org.jooq.TableField NAME = createField("NAME", org.jooq.impl.SQLDataType.VARCHAR, T_BOOK_STORE); + + /** + * No further instances allowed + */ + private TBookStore() { + super("T_BOOK_STORE", org.jooq.test.db2.generatedclasses.Lukas.LUKAS); + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.test.db2.generatedclasses.Keys.T_BOOK_STORE__UK_T_BOOK_STORE_NAME; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.test.db2.generatedclasses.Keys.T_BOOK_STORE__UK_T_BOOK_STORE_NAME); + } +} diff --git a/jOOQ-test/src/org/jooq/test/db2/generatedclasses/tables/TBookToBookStore.java b/jOOQ-test/src/org/jooq/test/db2/generatedclasses/tables/TBookToBookStore.java new file mode 100644 index 00000000000..c49cc1d0e52 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/db2/generatedclasses/tables/TBookToBookStore.java @@ -0,0 +1,85 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.db2.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class TBookToBookStore extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = -26955765; + + /** + * The singleton instance of LUKAS.T_BOOK_TO_BOOK_STORE + */ + public static final org.jooq.test.db2.generatedclasses.tables.TBookToBookStore T_BOOK_TO_BOOK_STORE = new org.jooq.test.db2.generatedclasses.tables.TBookToBookStore(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.db2.generatedclasses.tables.records.TBookToBookStoreRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT T_BOOK_TO_BOOK_STORE__FK_B2BS_BS_NAME
+	 * FOREIGN KEY (BOOK_STORE_NAME)
+	 * REFERENCES LUKAS.T_BOOK_STORE (NAME)
+	 * 
+ */ + public static final org.jooq.TableField BOOK_STORE_NAME = createField("BOOK_STORE_NAME", org.jooq.impl.SQLDataType.VARCHAR, T_BOOK_TO_BOOK_STORE); + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT T_BOOK_TO_BOOK_STORE__FK_B2BS_B_ID
+	 * FOREIGN KEY (BOOK_ID)
+	 * REFERENCES LUKAS.T_BOOK (ID)
+	 * 
+ */ + public static final org.jooq.TableField BOOK_ID = createField("BOOK_ID", org.jooq.impl.SQLDataType.INTEGER, T_BOOK_TO_BOOK_STORE); + + /** + * An uncommented item + */ + public static final org.jooq.TableField STOCK = createField("STOCK", org.jooq.impl.SQLDataType.INTEGER, T_BOOK_TO_BOOK_STORE); + + /** + * No further instances allowed + */ + private TBookToBookStore() { + super("T_BOOK_TO_BOOK_STORE", org.jooq.test.db2.generatedclasses.Lukas.LUKAS); + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.test.db2.generatedclasses.Keys.T_BOOK_TO_BOOK_STORE__PK_B2BS; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.test.db2.generatedclasses.Keys.T_BOOK_TO_BOOK_STORE__PK_B2BS); + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getReferences() { + return java.util.Arrays.>asList(org.jooq.test.db2.generatedclasses.Keys.T_BOOK_TO_BOOK_STORE__FK_B2BS_BS_NAME, org.jooq.test.db2.generatedclasses.Keys.T_BOOK_TO_BOOK_STORE__FK_B2BS_B_ID); + } +} diff --git a/jOOQ-test/src/org/jooq/test/db2/generatedclasses/tables/TBooleans.java b/jOOQ-test/src/org/jooq/test/db2/generatedclasses/tables/TBooleans.java new file mode 100644 index 00000000000..18c2d2370d6 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/db2/generatedclasses/tables/TBooleans.java @@ -0,0 +1,105 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.db2.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class TBooleans extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = -210241573; + + /** + * The singleton instance of LUKAS.T_BOOLEANS + */ + public static final org.jooq.test.db2.generatedclasses.tables.TBooleans T_BOOLEANS = new org.jooq.test.db2.generatedclasses.tables.TBooleans(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.db2.generatedclasses.tables.records.TBooleansRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public static final org.jooq.TableField ID = createField("ID", org.jooq.impl.SQLDataType.INTEGER, T_BOOLEANS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField ONE_ZERO = createField("ONE_ZERO", org.jooq.impl.SQLDataType.INTEGER.asConvertedDataType(new org.jooq.test._.converters.Boolean_10_Converter()), T_BOOLEANS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField TRUE_FALSE_LC = createField("TRUE_FALSE_LC", org.jooq.impl.SQLDataType.VARCHAR.asConvertedDataType(new org.jooq.test._.converters.Boolean_TF_LC_Converter()), T_BOOLEANS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField TRUE_FALSE_UC = createField("TRUE_FALSE_UC", org.jooq.impl.SQLDataType.VARCHAR.asConvertedDataType(new org.jooq.test._.converters.Boolean_TF_UC_Converter()), T_BOOLEANS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField YES_NO_LC = createField("YES_NO_LC", org.jooq.impl.SQLDataType.VARCHAR.asConvertedDataType(new org.jooq.test._.converters.Boolean_YES_NO_LC_Converter()), T_BOOLEANS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField YES_NO_UC = createField("YES_NO_UC", org.jooq.impl.SQLDataType.VARCHAR.asConvertedDataType(new org.jooq.test._.converters.Boolean_YES_NO_UC_Converter()), T_BOOLEANS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField Y_N_LC = createField("Y_N_LC", org.jooq.impl.SQLDataType.CHAR.asConvertedDataType(new org.jooq.test._.converters.Boolean_YN_LC_Converter()), T_BOOLEANS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField Y_N_UC = createField("Y_N_UC", org.jooq.impl.SQLDataType.CHAR.asConvertedDataType(new org.jooq.test._.converters.Boolean_YN_UC_Converter()), T_BOOLEANS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField VC_BOOLEAN = createField("VC_BOOLEAN", org.jooq.impl.SQLDataType.BOOLEAN, T_BOOLEANS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField C_BOOLEAN = createField("C_BOOLEAN", org.jooq.impl.SQLDataType.BOOLEAN, T_BOOLEANS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField N_BOOLEAN = createField("N_BOOLEAN", org.jooq.impl.SQLDataType.BOOLEAN, T_BOOLEANS); + + /** + * No further instances allowed + */ + private TBooleans() { + super("T_BOOLEANS", org.jooq.test.db2.generatedclasses.Lukas.LUKAS); + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.test.db2.generatedclasses.Keys.T_BOOLEANS__PK_T_BOOLEANS; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.test.db2.generatedclasses.Keys.T_BOOLEANS__PK_T_BOOLEANS); + } +} diff --git a/jOOQ-test/src/org/jooq/test/db2/generatedclasses/tables/TDates.java b/jOOQ-test/src/org/jooq/test/db2/generatedclasses/tables/TDates.java new file mode 100644 index 00000000000..30e2f35f2ed --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/db2/generatedclasses/tables/TDates.java @@ -0,0 +1,80 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.db2.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class TDates extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = 215220762; + + /** + * The singleton instance of LUKAS.T_DATES + */ + public static final org.jooq.test.db2.generatedclasses.tables.TDates T_DATES = new org.jooq.test.db2.generatedclasses.tables.TDates(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.db2.generatedclasses.tables.records.TDatesRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public static final org.jooq.TableField ID = createField("ID", org.jooq.impl.SQLDataType.INTEGER, T_DATES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField D = createField("D", org.jooq.impl.SQLDataType.DATE, T_DATES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField T = createField("T", org.jooq.impl.SQLDataType.TIME, T_DATES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField TS = createField("TS", org.jooq.impl.SQLDataType.TIMESTAMP, T_DATES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField D_INT = createField("D_INT", org.jooq.impl.SQLDataType.INTEGER, T_DATES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField TS_BIGINT = createField("TS_BIGINT", org.jooq.impl.SQLDataType.BIGINT, T_DATES); + + /** + * No further instances allowed + */ + private TDates() { + super("T_DATES", org.jooq.test.db2.generatedclasses.Lukas.LUKAS); + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.test.db2.generatedclasses.Keys.T_DATES__PK_T_DATES; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.test.db2.generatedclasses.Keys.T_DATES__PK_T_DATES); + } +} diff --git a/jOOQ-test/src/org/jooq/test/db2/generatedclasses/tables/TIdentity.java b/jOOQ-test/src/org/jooq/test/db2/generatedclasses/tables/TIdentity.java new file mode 100644 index 00000000000..8ca988f9466 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/db2/generatedclasses/tables/TIdentity.java @@ -0,0 +1,52 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.db2.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class TIdentity extends org.jooq.impl.TableImpl { + + private static final long serialVersionUID = -935749385; + + /** + * The singleton instance of LUKAS.T_IDENTITY + */ + public static final org.jooq.test.db2.generatedclasses.tables.TIdentity T_IDENTITY = new org.jooq.test.db2.generatedclasses.tables.TIdentity(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.db2.generatedclasses.tables.records.TIdentityRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + */ + public static final org.jooq.TableField ID = createField("ID", org.jooq.impl.SQLDataType.INTEGER, T_IDENTITY); + + /** + * An uncommented item + */ + public static final org.jooq.TableField VAL = createField("VAL", org.jooq.impl.SQLDataType.INTEGER, T_IDENTITY); + + /** + * No further instances allowed + */ + private TIdentity() { + super("T_IDENTITY", org.jooq.test.db2.generatedclasses.Lukas.LUKAS); + } + + @Override + public org.jooq.Identity getIdentity() { + return org.jooq.test.db2.generatedclasses.Keys.IDENTITY_T_IDENTITY; + } +} diff --git a/jOOQ-test/src/org/jooq/test/db2/generatedclasses/tables/TIdentityPk.java b/jOOQ-test/src/org/jooq/test/db2/generatedclasses/tables/TIdentityPk.java new file mode 100644 index 00000000000..7f903ce29b9 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/db2/generatedclasses/tables/TIdentityPk.java @@ -0,0 +1,65 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.db2.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class TIdentityPk extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = -1258028076; + + /** + * The singleton instance of LUKAS.T_IDENTITY_PK + */ + public static final org.jooq.test.db2.generatedclasses.tables.TIdentityPk T_IDENTITY_PK = new org.jooq.test.db2.generatedclasses.tables.TIdentityPk(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.db2.generatedclasses.tables.records.TIdentityPkRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public static final org.jooq.TableField ID = createField("ID", org.jooq.impl.SQLDataType.INTEGER, T_IDENTITY_PK); + + /** + * An uncommented item + */ + public static final org.jooq.TableField VAL = createField("VAL", org.jooq.impl.SQLDataType.INTEGER, T_IDENTITY_PK); + + /** + * No further instances allowed + */ + private TIdentityPk() { + super("T_IDENTITY_PK", org.jooq.test.db2.generatedclasses.Lukas.LUKAS); + } + + @Override + public org.jooq.Identity getIdentity() { + return org.jooq.test.db2.generatedclasses.Keys.IDENTITY_T_IDENTITY_PK; + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.test.db2.generatedclasses.Keys.T_IDENTITY_PK__PK_T_IDENTITY_PK; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.test.db2.generatedclasses.Keys.T_IDENTITY_PK__PK_T_IDENTITY_PK); + } +} diff --git a/jOOQ-test/src/org/jooq/test/db2/generatedclasses/tables/TTriggers.java b/jOOQ-test/src/org/jooq/test/db2/generatedclasses/tables/TTriggers.java new file mode 100644 index 00000000000..ddc297f999b --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/db2/generatedclasses/tables/TTriggers.java @@ -0,0 +1,65 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.db2.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class TTriggers extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = -1681246557; + + /** + * The singleton instance of LUKAS.T_TRIGGERS + */ + public static final org.jooq.test.db2.generatedclasses.tables.TTriggers T_TRIGGERS = new org.jooq.test.db2.generatedclasses.tables.TTriggers(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.db2.generatedclasses.tables.records.TTriggersRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public static final org.jooq.TableField ID_GENERATED = createField("ID_GENERATED", org.jooq.impl.SQLDataType.INTEGER, T_TRIGGERS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField ID = createField("ID", org.jooq.impl.SQLDataType.INTEGER, T_TRIGGERS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField COUNTER = createField("COUNTER", org.jooq.impl.SQLDataType.INTEGER, T_TRIGGERS); + + /** + * No further instances allowed + */ + private TTriggers() { + super("T_TRIGGERS", org.jooq.test.db2.generatedclasses.Lukas.LUKAS); + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.test.db2.generatedclasses.Keys.T_TRIGGERS__PK_T_TRIGGERS; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.test.db2.generatedclasses.Keys.T_TRIGGERS__PK_T_TRIGGERS); + } +} diff --git a/jOOQ-test/src/org/jooq/test/db2/generatedclasses/tables/T_639NumbersTable.java b/jOOQ-test/src/org/jooq/test/db2/generatedclasses/tables/T_639NumbersTable.java new file mode 100644 index 00000000000..54f42d7ed06 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/db2/generatedclasses/tables/T_639NumbersTable.java @@ -0,0 +1,110 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.db2.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class T_639NumbersTable extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = 1535266519; + + /** + * The singleton instance of LUKAS.T_639_NUMBERS_TABLE + */ + public static final org.jooq.test.db2.generatedclasses.tables.T_639NumbersTable T_639_NUMBERS_TABLE = new org.jooq.test.db2.generatedclasses.tables.T_639NumbersTable(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.db2.generatedclasses.tables.records.T_639NumbersTableRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public static final org.jooq.TableField ID = createField("ID", org.jooq.impl.SQLDataType.INTEGER, T_639_NUMBERS_TABLE); + + /** + * An uncommented item + */ + public static final org.jooq.TableField SHORT = createField("SHORT", org.jooq.impl.SQLDataType.SMALLINT, T_639_NUMBERS_TABLE); + + /** + * An uncommented item + */ + public static final org.jooq.TableField INTEGER = createField("INTEGER", org.jooq.impl.SQLDataType.INTEGER, T_639_NUMBERS_TABLE); + + /** + * An uncommented item + */ + public static final org.jooq.TableField LONG = createField("LONG", org.jooq.impl.SQLDataType.BIGINT, T_639_NUMBERS_TABLE); + + /** + * An uncommented item + */ + public static final org.jooq.TableField BYTE_DECIMAL = createField("BYTE_DECIMAL", org.jooq.impl.SQLDataType.TINYINT, T_639_NUMBERS_TABLE); + + /** + * An uncommented item + */ + public static final org.jooq.TableField SHORT_DECIMAL = createField("SHORT_DECIMAL", org.jooq.impl.SQLDataType.SMALLINT, T_639_NUMBERS_TABLE); + + /** + * An uncommented item + */ + public static final org.jooq.TableField INTEGER_DECIMAL = createField("INTEGER_DECIMAL", org.jooq.impl.SQLDataType.INTEGER, T_639_NUMBERS_TABLE); + + /** + * An uncommented item + */ + public static final org.jooq.TableField LONG_DECIMAL = createField("LONG_DECIMAL", org.jooq.impl.SQLDataType.BIGINT, T_639_NUMBERS_TABLE); + + /** + * An uncommented item + */ + public static final org.jooq.TableField BIG_INTEGER = createField("BIG_INTEGER", org.jooq.impl.SQLDataType.DECIMAL_INTEGER, T_639_NUMBERS_TABLE); + + /** + * An uncommented item + */ + public static final org.jooq.TableField BIG_DECIMAL = createField("BIG_DECIMAL", org.jooq.impl.SQLDataType.DECIMAL, T_639_NUMBERS_TABLE); + + /** + * An uncommented item + */ + public static final org.jooq.TableField FLOAT = createField("FLOAT", org.jooq.impl.SQLDataType.REAL, T_639_NUMBERS_TABLE); + + /** + * An uncommented item + */ + public static final org.jooq.TableField DOUBLE = createField("DOUBLE", org.jooq.impl.SQLDataType.DOUBLE, T_639_NUMBERS_TABLE); + + /** + * No further instances allowed + */ + private T_639NumbersTable() { + super("T_639_NUMBERS_TABLE", org.jooq.test.db2.generatedclasses.Lukas.LUKAS); + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.test.db2.generatedclasses.Keys.T_639_NUMBERS_TABLE__PK_T_639_NUMBERS_TABLE; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.test.db2.generatedclasses.Keys.T_639_NUMBERS_TABLE__PK_T_639_NUMBERS_TABLE); + } +} diff --git a/jOOQ-test/src/org/jooq/test/db2/generatedclasses/tables/T_658Ref.java b/jOOQ-test/src/org/jooq/test/db2/generatedclasses/tables/T_658Ref.java new file mode 100644 index 00000000000..fa56422b169 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/db2/generatedclasses/tables/T_658Ref.java @@ -0,0 +1,109 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.db2.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class T_658Ref extends org.jooq.impl.TableImpl { + + private static final long serialVersionUID = 211734279; + + /** + * The singleton instance of LUKAS.T_658_REF + */ + public static final org.jooq.test.db2.generatedclasses.tables.T_658Ref T_658_REF = new org.jooq.test.db2.generatedclasses.tables.T_658Ref(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.db2.generatedclasses.tables.records.T_658RefRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT T_658_REF__FK_T_658_11
+	 * FOREIGN KEY (REF_11)
+	 * REFERENCES LUKAS.T_658_11 (ID)
+	 * 
+ */ + public static final org.jooq.TableField REF_11 = createField("REF_11", org.jooq.impl.SQLDataType.CHAR.asMasterDataType(org.jooq.test.db2.generatedclasses.enums.T_658_11.class), T_658_REF); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT T_658_REF__FK_T_658_21
+	 * FOREIGN KEY (REF_21)
+	 * REFERENCES LUKAS.T_658_21 (ID)
+	 * 
+ */ + public static final org.jooq.TableField REF_21 = createField("REF_21", org.jooq.impl.SQLDataType.INTEGER.asMasterDataType(org.jooq.test.db2.generatedclasses.enums.T_658_21.class), T_658_REF); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT T_658_REF__FK_T_658_31
+	 * FOREIGN KEY (REF_31)
+	 * REFERENCES LUKAS.T_658_31 (ID)
+	 * 
+ */ + public static final org.jooq.TableField REF_31 = createField("REF_31", org.jooq.impl.SQLDataType.BIGINT.asMasterDataType(org.jooq.test.db2.generatedclasses.enums.T_658_31.class), T_658_REF); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT T_658_REF__FK_T_658_12
+	 * FOREIGN KEY (REF_12)
+	 * REFERENCES LUKAS.T_658_12 (ID)
+	 * 
+ */ + public static final org.jooq.TableField REF_12 = createField("REF_12", org.jooq.impl.SQLDataType.CHAR.asMasterDataType(org.jooq.test.db2.generatedclasses.enums.T_658_12.class), T_658_REF); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT T_658_REF__FK_T_658_22
+	 * FOREIGN KEY (REF_22)
+	 * REFERENCES LUKAS.T_658_22 (ID)
+	 * 
+ */ + public static final org.jooq.TableField REF_22 = createField("REF_22", org.jooq.impl.SQLDataType.INTEGER.asMasterDataType(org.jooq.test.db2.generatedclasses.enums.T_658_22.class), T_658_REF); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT T_658_REF__FK_T_658_32
+	 * FOREIGN KEY (REF_32)
+	 * REFERENCES LUKAS.T_658_32 (ID)
+	 * 
+ */ + public static final org.jooq.TableField REF_32 = createField("REF_32", org.jooq.impl.SQLDataType.BIGINT.asMasterDataType(org.jooq.test.db2.generatedclasses.enums.T_658_32.class), T_658_REF); + + /** + * No further instances allowed + */ + private T_658Ref() { + super("T_658_REF", org.jooq.test.db2.generatedclasses.Lukas.LUKAS); + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getReferences() { + return java.util.Arrays.>asList(); + } +} diff --git a/jOOQ-test/src/org/jooq/test/db2/generatedclasses/tables/T_725LobTest.java b/jOOQ-test/src/org/jooq/test/db2/generatedclasses/tables/T_725LobTest.java new file mode 100644 index 00000000000..14020ffeaa7 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/db2/generatedclasses/tables/T_725LobTest.java @@ -0,0 +1,60 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.db2.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class T_725LobTest extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = 231704317; + + /** + * The singleton instance of LUKAS.T_725_LOB_TEST + */ + public static final org.jooq.test.db2.generatedclasses.tables.T_725LobTest T_725_LOB_TEST = new org.jooq.test.db2.generatedclasses.tables.T_725LobTest(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.db2.generatedclasses.tables.records.T_725LobTestRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public static final org.jooq.TableField ID = createField("ID", org.jooq.impl.SQLDataType.INTEGER, T_725_LOB_TEST); + + /** + * An uncommented item + */ + public static final org.jooq.TableField LOB = createField("LOB", org.jooq.impl.SQLDataType.BLOB, T_725_LOB_TEST); + + /** + * No further instances allowed + */ + private T_725LobTest() { + super("T_725_LOB_TEST", org.jooq.test.db2.generatedclasses.Lukas.LUKAS); + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.test.db2.generatedclasses.Keys.T_725_LOB_TEST__PK_T_725_LOB_TEST; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.test.db2.generatedclasses.Keys.T_725_LOB_TEST__PK_T_725_LOB_TEST); + } +} diff --git a/jOOQ-test/src/org/jooq/test/db2/generatedclasses/tables/T_785.java b/jOOQ-test/src/org/jooq/test/db2/generatedclasses/tables/T_785.java new file mode 100644 index 00000000000..f1b0f6b5a27 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/db2/generatedclasses/tables/T_785.java @@ -0,0 +1,52 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.db2.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class T_785 extends org.jooq.impl.TableImpl { + + private static final long serialVersionUID = 1061676775; + + /** + * The singleton instance of LUKAS.T_785 + */ + public static final org.jooq.test.db2.generatedclasses.tables.T_785 T_785 = new org.jooq.test.db2.generatedclasses.tables.T_785(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.db2.generatedclasses.tables.records.T_785Record.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + */ + public static final org.jooq.TableField ID = createField("ID", org.jooq.impl.SQLDataType.INTEGER, T_785); + + /** + * An uncommented item + */ + public static final org.jooq.TableField NAME = createField("NAME", org.jooq.impl.SQLDataType.VARCHAR, T_785); + + /** + * An uncommented item + */ + public static final org.jooq.TableField VALUE = createField("VALUE", org.jooq.impl.SQLDataType.VARCHAR, T_785); + + /** + * No further instances allowed + */ + private T_785() { + super("T_785", org.jooq.test.db2.generatedclasses.Lukas.LUKAS); + } +} diff --git a/jOOQ-test/src/org/jooq/test/db2/generatedclasses/tables/T_986_1.java b/jOOQ-test/src/org/jooq/test/db2/generatedclasses/tables/T_986_1.java new file mode 100644 index 00000000000..c1d4ca1fa6d --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/db2/generatedclasses/tables/T_986_1.java @@ -0,0 +1,67 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.db2.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class T_986_1 extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = -1576959797; + + /** + * The singleton instance of LUKAS.T_986_1 + */ + public static final org.jooq.test.db2.generatedclasses.tables.T_986_1 T_986_1 = new org.jooq.test.db2.generatedclasses.tables.T_986_1(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.db2.generatedclasses.tables.records.T_986_1Record.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT T_986_1__FK_986
+	 * FOREIGN KEY (REF)
+	 * REFERENCES LUKAS.X_UNUSED (ID)
+	 * 
+ */ + public static final org.jooq.TableField REF = createField("REF", org.jooq.impl.SQLDataType.INTEGER, T_986_1); + + /** + * No further instances allowed + */ + private T_986_1() { + super("T_986_1", org.jooq.test.db2.generatedclasses.Lukas.LUKAS); + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.test.db2.generatedclasses.Keys.T_986_1__PK_986; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.test.db2.generatedclasses.Keys.T_986_1__PK_986); + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getReferences() { + return java.util.Arrays.>asList(org.jooq.test.db2.generatedclasses.Keys.T_986_1__FK_986); + } +} diff --git a/jOOQ-test/src/org/jooq/test/db2/generatedclasses/tables/T_986_2.java b/jOOQ-test/src/org/jooq/test/db2/generatedclasses/tables/T_986_2.java new file mode 100644 index 00000000000..58946c64af3 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/db2/generatedclasses/tables/T_986_2.java @@ -0,0 +1,67 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.db2.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class T_986_2 extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = -1944961365; + + /** + * The singleton instance of LUKAS.T_986_2 + */ + public static final org.jooq.test.db2.generatedclasses.tables.T_986_2 T_986_2 = new org.jooq.test.db2.generatedclasses.tables.T_986_2(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.db2.generatedclasses.tables.records.T_986_2Record.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT T_986_2__FK_986
+	 * FOREIGN KEY (REF)
+	 * REFERENCES LUKAS.X_UNUSED (ID)
+	 * 
+ */ + public static final org.jooq.TableField REF = createField("REF", org.jooq.impl.SQLDataType.INTEGER, T_986_2); + + /** + * No further instances allowed + */ + private T_986_2() { + super("T_986_2", org.jooq.test.db2.generatedclasses.Lukas.LUKAS); + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.test.db2.generatedclasses.Keys.T_986_2__PK_986; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.test.db2.generatedclasses.Keys.T_986_2__PK_986); + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getReferences() { + return java.util.Arrays.>asList(org.jooq.test.db2.generatedclasses.Keys.T_986_2__FK_986); + } +} diff --git a/jOOQ-test/src/org/jooq/test/db2/generatedclasses/tables/VAuthor.java b/jOOQ-test/src/org/jooq/test/db2/generatedclasses/tables/VAuthor.java new file mode 100644 index 00000000000..c4c5e10a239 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/db2/generatedclasses/tables/VAuthor.java @@ -0,0 +1,67 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.db2.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class VAuthor extends org.jooq.impl.TableImpl { + + private static final long serialVersionUID = 2137938529; + + /** + * The singleton instance of LUKAS.V_AUTHOR + */ + public static final org.jooq.test.db2.generatedclasses.tables.VAuthor V_AUTHOR = new org.jooq.test.db2.generatedclasses.tables.VAuthor(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.db2.generatedclasses.tables.records.VAuthorRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + */ + public static final org.jooq.TableField ID = createField("ID", org.jooq.impl.SQLDataType.INTEGER, V_AUTHOR); + + /** + * An uncommented item + */ + public static final org.jooq.TableField FIRST_NAME = createField("FIRST_NAME", org.jooq.impl.SQLDataType.VARCHAR, V_AUTHOR); + + /** + * An uncommented item + */ + public static final org.jooq.TableField LAST_NAME = createField("LAST_NAME", org.jooq.impl.SQLDataType.VARCHAR, V_AUTHOR); + + /** + * An uncommented item + */ + public static final org.jooq.TableField DATE_OF_BIRTH = createField("DATE_OF_BIRTH", org.jooq.impl.SQLDataType.DATE, V_AUTHOR); + + /** + * An uncommented item + */ + public static final org.jooq.TableField YEAR_OF_BIRTH = createField("YEAR_OF_BIRTH", org.jooq.impl.SQLDataType.INTEGER, V_AUTHOR); + + /** + * An uncommented item + */ + public static final org.jooq.TableField ADDRESS = createField("ADDRESS", org.jooq.impl.SQLDataType.VARCHAR, V_AUTHOR); + + /** + * No further instances allowed + */ + private VAuthor() { + super("V_AUTHOR", org.jooq.test.db2.generatedclasses.Lukas.LUKAS); + } +} diff --git a/jOOQ-test/src/org/jooq/test/db2/generatedclasses/tables/VBook.java b/jOOQ-test/src/org/jooq/test/db2/generatedclasses/tables/VBook.java new file mode 100644 index 00000000000..fcff3eeea9d --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/db2/generatedclasses/tables/VBook.java @@ -0,0 +1,82 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.db2.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class VBook extends org.jooq.impl.TableImpl { + + private static final long serialVersionUID = -457858962; + + /** + * The singleton instance of LUKAS.V_BOOK + */ + public static final org.jooq.test.db2.generatedclasses.tables.VBook V_BOOK = new org.jooq.test.db2.generatedclasses.tables.VBook(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.db2.generatedclasses.tables.records.VBookRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + */ + public static final org.jooq.TableField ID = createField("ID", org.jooq.impl.SQLDataType.INTEGER, V_BOOK); + + /** + * An uncommented item + */ + public static final org.jooq.TableField AUTHOR_ID = createField("AUTHOR_ID", org.jooq.impl.SQLDataType.INTEGER, V_BOOK); + + /** + * An uncommented item + */ + public static final org.jooq.TableField CO_AUTHOR_ID = createField("CO_AUTHOR_ID", org.jooq.impl.SQLDataType.INTEGER, V_BOOK); + + /** + * An uncommented item + */ + public static final org.jooq.TableField DETAILS_ID = createField("DETAILS_ID", org.jooq.impl.SQLDataType.INTEGER, V_BOOK); + + /** + * An uncommented item + */ + public static final org.jooq.TableField TITLE = createField("TITLE", org.jooq.impl.SQLDataType.VARCHAR, V_BOOK); + + /** + * An uncommented item + */ + public static final org.jooq.TableField PUBLISHED_IN = createField("PUBLISHED_IN", org.jooq.impl.SQLDataType.INTEGER, V_BOOK); + + /** + * An uncommented item + */ + public static final org.jooq.TableField LANGUAGE_ID = createField("LANGUAGE_ID", org.jooq.impl.SQLDataType.INTEGER, V_BOOK); + + /** + * An uncommented item + */ + public static final org.jooq.TableField CONTENT_TEXT = createField("CONTENT_TEXT", org.jooq.impl.SQLDataType.LONGVARCHAR, V_BOOK); + + /** + * An uncommented item + */ + public static final org.jooq.TableField CONTENT_PDF = createField("CONTENT_PDF", org.jooq.impl.SQLDataType.BLOB, V_BOOK); + + /** + * No further instances allowed + */ + private VBook() { + super("V_BOOK", org.jooq.test.db2.generatedclasses.Lukas.LUKAS); + } +} diff --git a/jOOQ-test/src/org/jooq/test/db2/generatedclasses/tables/VLibrary.java b/jOOQ-test/src/org/jooq/test/db2/generatedclasses/tables/VLibrary.java new file mode 100644 index 00000000000..64cf6864e7e --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/db2/generatedclasses/tables/VLibrary.java @@ -0,0 +1,47 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.db2.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class VLibrary extends org.jooq.impl.TableImpl { + + private static final long serialVersionUID = -594907415; + + /** + * The singleton instance of LUKAS.V_LIBRARY + */ + public static final org.jooq.test.db2.generatedclasses.tables.VLibrary V_LIBRARY = new org.jooq.test.db2.generatedclasses.tables.VLibrary(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.db2.generatedclasses.tables.records.VLibraryRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + */ + public static final org.jooq.TableField AUTHOR = createField("AUTHOR", org.jooq.impl.SQLDataType.VARCHAR, V_LIBRARY); + + /** + * An uncommented item + */ + public static final org.jooq.TableField TITLE = createField("TITLE", org.jooq.impl.SQLDataType.VARCHAR, V_LIBRARY); + + /** + * No further instances allowed + */ + private VLibrary() { + super("V_LIBRARY", org.jooq.test.db2.generatedclasses.Lukas.LUKAS); + } +} diff --git a/jOOQ-test/src/org/jooq/test/db2/generatedclasses/tables/XTestCase_64_69.java b/jOOQ-test/src/org/jooq/test/db2/generatedclasses/tables/XTestCase_64_69.java new file mode 100644 index 00000000000..e658337c006 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/db2/generatedclasses/tables/XTestCase_64_69.java @@ -0,0 +1,72 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.db2.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class XTestCase_64_69 extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = 1113080151; + + /** + * The singleton instance of LUKAS.X_TEST_CASE_64_69 + */ + public static final org.jooq.test.db2.generatedclasses.tables.XTestCase_64_69 X_TEST_CASE_64_69 = new org.jooq.test.db2.generatedclasses.tables.XTestCase_64_69(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.db2.generatedclasses.tables.records.XTestCase_64_69Record.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public static final org.jooq.TableField ID = createField("ID", org.jooq.impl.SQLDataType.INTEGER, X_TEST_CASE_64_69); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT X_TEST_CASE_64_69__FK_X_TEST_CASE_64_69A
+	 * FOREIGN KEY (UNUSED_ID)
+	 * REFERENCES LUKAS.X_UNUSED (ID)
+	 * 
+ */ + public static final org.jooq.TableField UNUSED_ID = createField("UNUSED_ID", org.jooq.impl.SQLDataType.INTEGER, X_TEST_CASE_64_69); + + /** + * No further instances allowed + */ + private XTestCase_64_69() { + super("X_TEST_CASE_64_69", org.jooq.test.db2.generatedclasses.Lukas.LUKAS); + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.test.db2.generatedclasses.Keys.X_TEST_CASE_64_69__PK_X_TEST_CASE_64_69; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.test.db2.generatedclasses.Keys.X_TEST_CASE_64_69__PK_X_TEST_CASE_64_69); + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getReferences() { + return java.util.Arrays.>asList(org.jooq.test.db2.generatedclasses.Keys.X_TEST_CASE_64_69__FK_X_TEST_CASE_64_69A); + } +} diff --git a/jOOQ-test/src/org/jooq/test/db2/generatedclasses/tables/XTestCase_71.java b/jOOQ-test/src/org/jooq/test/db2/generatedclasses/tables/XTestCase_71.java new file mode 100644 index 00000000000..d652ccfc032 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/db2/generatedclasses/tables/XTestCase_71.java @@ -0,0 +1,72 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.db2.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class XTestCase_71 extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = -954187821; + + /** + * The singleton instance of LUKAS.X_TEST_CASE_71 + */ + public static final org.jooq.test.db2.generatedclasses.tables.XTestCase_71 X_TEST_CASE_71 = new org.jooq.test.db2.generatedclasses.tables.XTestCase_71(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.db2.generatedclasses.tables.records.XTestCase_71Record.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public static final org.jooq.TableField ID = createField("ID", org.jooq.impl.SQLDataType.INTEGER, X_TEST_CASE_71); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT X_TEST_CASE_71__FK_X_TEST_CASE_71
+	 * FOREIGN KEY (TEST_CASE_64_69_ID)
+	 * REFERENCES LUKAS.X_TEST_CASE_64_69 (ID)
+	 * 
+ */ + public static final org.jooq.TableField TEST_CASE_64_69_ID = createField("TEST_CASE_64_69_ID", org.jooq.impl.SQLDataType.SMALLINT, X_TEST_CASE_71); + + /** + * No further instances allowed + */ + private XTestCase_71() { + super("X_TEST_CASE_71", org.jooq.test.db2.generatedclasses.Lukas.LUKAS); + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.test.db2.generatedclasses.Keys.X_TEST_CASE_71__PK_X_TEST_CASE_71; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.test.db2.generatedclasses.Keys.X_TEST_CASE_71__PK_X_TEST_CASE_71); + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getReferences() { + return java.util.Arrays.>asList(org.jooq.test.db2.generatedclasses.Keys.X_TEST_CASE_71__FK_X_TEST_CASE_71); + } +} diff --git a/jOOQ-test/src/org/jooq/test/db2/generatedclasses/tables/XTestCase_85.java b/jOOQ-test/src/org/jooq/test/db2/generatedclasses/tables/XTestCase_85.java new file mode 100644 index 00000000000..2e882c8cea9 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/db2/generatedclasses/tables/XTestCase_85.java @@ -0,0 +1,83 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.db2.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class XTestCase_85 extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = -1381401980; + + /** + * The singleton instance of LUKAS.X_TEST_CASE_85 + */ + public static final org.jooq.test.db2.generatedclasses.tables.XTestCase_85 X_TEST_CASE_85 = new org.jooq.test.db2.generatedclasses.tables.XTestCase_85(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.db2.generatedclasses.tables.records.XTestCase_85Record.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public static final org.jooq.TableField ID = createField("ID", org.jooq.impl.SQLDataType.INTEGER, X_TEST_CASE_85); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT X_TEST_CASE_85__FK_X_TEST_CASE_85
+	 * FOREIGN KEY (X_UNUSED_ID, X_UNUSED_NAME)
+	 * REFERENCES LUKAS.X_UNUSED (ID, NAME)
+	 * 
+ */ + public static final org.jooq.TableField X_UNUSED_ID = createField("X_UNUSED_ID", org.jooq.impl.SQLDataType.INTEGER, X_TEST_CASE_85); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT X_TEST_CASE_85__FK_X_TEST_CASE_85
+	 * FOREIGN KEY (X_UNUSED_ID, X_UNUSED_NAME)
+	 * REFERENCES LUKAS.X_UNUSED (ID, NAME)
+	 * 
+ */ + public static final org.jooq.TableField X_UNUSED_NAME = createField("X_UNUSED_NAME", org.jooq.impl.SQLDataType.VARCHAR, X_TEST_CASE_85); + + /** + * No further instances allowed + */ + private XTestCase_85() { + super("X_TEST_CASE_85", org.jooq.test.db2.generatedclasses.Lukas.LUKAS); + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.test.db2.generatedclasses.Keys.X_TEST_CASE_85__PK_X_TEST_CASE_85; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.test.db2.generatedclasses.Keys.X_TEST_CASE_85__PK_X_TEST_CASE_85); + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getReferences() { + return java.util.Arrays.>asList(org.jooq.test.db2.generatedclasses.Keys.X_TEST_CASE_85__FK_X_TEST_CASE_85); + } +} diff --git a/jOOQ-test/src/org/jooq/test/db2/generatedclasses/tables/XUnused.java b/jOOQ-test/src/org/jooq/test/db2/generatedclasses/tables/XUnused.java new file mode 100644 index 00000000000..ea068254fc6 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/db2/generatedclasses/tables/XUnused.java @@ -0,0 +1,150 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.db2.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class XUnused extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = 318436852; + + /** + * The singleton instance of LUKAS.X_UNUSED + */ + public static final org.jooq.test.db2.generatedclasses.tables.XUnused X_UNUSED = new org.jooq.test.db2.generatedclasses.tables.XUnused(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.db2.generatedclasses.tables.records.XUnusedRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public static final org.jooq.TableField ID = createField("ID", org.jooq.impl.SQLDataType.INTEGER, X_UNUSED); + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public static final org.jooq.TableField NAME = createField("NAME", org.jooq.impl.SQLDataType.VARCHAR, X_UNUSED); + + /** + * An uncommented item + */ + public static final org.jooq.TableField BIG_INTEGER = createField("BIG_INTEGER", org.jooq.impl.SQLDataType.DECIMAL_INTEGER, X_UNUSED); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT X_UNUSED__FK_X_UNUSED_SELF
+	 * FOREIGN KEY (ID_REF, NAME_REF)
+	 * REFERENCES LUKAS.X_UNUSED (ID, NAME)
+	 * 
+ */ + public static final org.jooq.TableField ID_REF = createField("ID_REF", org.jooq.impl.SQLDataType.INTEGER, X_UNUSED); + + /** + * An uncommented item + */ + public static final org.jooq.TableField CLASS = createField("CLASS", org.jooq.impl.SQLDataType.INTEGER, X_UNUSED); + + /** + * An uncommented item + */ + public static final org.jooq.TableField FIELDS = createField("FIELDS", org.jooq.impl.SQLDataType.INTEGER, X_UNUSED); + + /** + * An uncommented item + */ + public static final org.jooq.TableField TABLE = createField("TABLE", org.jooq.impl.SQLDataType.INTEGER, X_UNUSED); + + /** + * An uncommented item + */ + public static final org.jooq.TableField CONFIGURATION = createField("CONFIGURATION", org.jooq.impl.SQLDataType.INTEGER, X_UNUSED); + + /** + * An uncommented item + */ + public static final org.jooq.TableField U_D_T = createField("U_D_T", org.jooq.impl.SQLDataType.INTEGER, X_UNUSED); + + /** + * An uncommented item + */ + public static final org.jooq.TableField META_DATA = createField("META_DATA", org.jooq.impl.SQLDataType.INTEGER, X_UNUSED); + + /** + * An uncommented item + */ + public static final org.jooq.TableField VALUES = createField("VALUES", org.jooq.impl.SQLDataType.INTEGER, X_UNUSED); + + /** + * An uncommented item + */ + public static final org.jooq.TableField TYPE0 = createField("TYPE0", org.jooq.impl.SQLDataType.INTEGER, X_UNUSED); + + /** + * An uncommented item + */ + public static final org.jooq.TableField PRIMARY_KEY = createField("PRIMARY_KEY", org.jooq.impl.SQLDataType.INTEGER, X_UNUSED); + + /** + * An uncommented item + */ + public static final org.jooq.TableField PRIMARYKEY = createField("PRIMARYKEY", org.jooq.impl.SQLDataType.INTEGER, X_UNUSED); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT X_UNUSED__FK_X_UNUSED_SELF
+	 * FOREIGN KEY (ID_REF, NAME_REF)
+	 * REFERENCES LUKAS.X_UNUSED (ID, NAME)
+	 * 
+ */ + public static final org.jooq.TableField NAME_REF = createField("NAME_REF", org.jooq.impl.SQLDataType.VARCHAR, X_UNUSED); + + /** + * An uncommented item + */ + public static final org.jooq.TableField FIELD_737 = createField("FIELD 737", org.jooq.impl.SQLDataType.DECIMAL, X_UNUSED); + + /** + * No further instances allowed + */ + private XUnused() { + super("X_UNUSED", org.jooq.test.db2.generatedclasses.Lukas.LUKAS); + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.test.db2.generatedclasses.Keys.X_UNUSED__PK_X_UNUSED; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.test.db2.generatedclasses.Keys.X_UNUSED__PK_X_UNUSED, org.jooq.test.db2.generatedclasses.Keys.X_UNUSED__UK_X_UNUSED_ID); + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getReferences() { + return java.util.Arrays.>asList(org.jooq.test.db2.generatedclasses.Keys.X_UNUSED__FK_X_UNUSED_SELF); + } +} diff --git a/jOOQ-test/src/org/jooq/test/db2/generatedclasses/tables/records/TAuthorRecord.java b/jOOQ-test/src/org/jooq/test/db2/generatedclasses/tables/records/TAuthorRecord.java new file mode 100644 index 00000000000..a04d6be4ddb --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/db2/generatedclasses/tables/records/TAuthorRecord.java @@ -0,0 +1,131 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.db2.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + */ +public class TAuthorRecord extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = -923219109; + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setId(java.lang.Integer value) { + setValue(org.jooq.test.db2.generatedclasses.tables.TAuthor.ID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.lang.Integer getId() { + return getValue(org.jooq.test.db2.generatedclasses.tables.TAuthor.ID); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.util.List fetchTBookListByAuthorId() { + return create() + .selectFrom(org.jooq.test.db2.generatedclasses.tables.TBook.T_BOOK) + .where(org.jooq.test.db2.generatedclasses.tables.TBook.AUTHOR_ID.equal(getValue(org.jooq.test.db2.generatedclasses.tables.TAuthor.ID))) + .fetch(); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.util.List fetchTBookListByCoAuthorId() { + return create() + .selectFrom(org.jooq.test.db2.generatedclasses.tables.TBook.T_BOOK) + .where(org.jooq.test.db2.generatedclasses.tables.TBook.CO_AUTHOR_ID.equal(getValue(org.jooq.test.db2.generatedclasses.tables.TAuthor.ID))) + .fetch(); + } + + /** + * An uncommented item + */ + public void setFirstName(java.lang.String value) { + setValue(org.jooq.test.db2.generatedclasses.tables.TAuthor.FIRST_NAME, value); + } + + /** + * An uncommented item + */ + public java.lang.String getFirstName() { + return getValue(org.jooq.test.db2.generatedclasses.tables.TAuthor.FIRST_NAME); + } + + /** + * An uncommented item + */ + public void setLastName(java.lang.String value) { + setValue(org.jooq.test.db2.generatedclasses.tables.TAuthor.LAST_NAME, value); + } + + /** + * An uncommented item + */ + public java.lang.String getLastName() { + return getValue(org.jooq.test.db2.generatedclasses.tables.TAuthor.LAST_NAME); + } + + /** + * An uncommented item + */ + public void setDateOfBirth(java.sql.Date value) { + setValue(org.jooq.test.db2.generatedclasses.tables.TAuthor.DATE_OF_BIRTH, value); + } + + /** + * An uncommented item + */ + public java.sql.Date getDateOfBirth() { + return getValue(org.jooq.test.db2.generatedclasses.tables.TAuthor.DATE_OF_BIRTH); + } + + /** + * An uncommented item + */ + public void setYearOfBirth(java.lang.Integer value) { + setValue(org.jooq.test.db2.generatedclasses.tables.TAuthor.YEAR_OF_BIRTH, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getYearOfBirth() { + return getValue(org.jooq.test.db2.generatedclasses.tables.TAuthor.YEAR_OF_BIRTH); + } + + /** + * An uncommented item + */ + public void setAddress(java.lang.String value) { + setValue(org.jooq.test.db2.generatedclasses.tables.TAuthor.ADDRESS, value); + } + + /** + * An uncommented item + */ + public java.lang.String getAddress() { + return getValue(org.jooq.test.db2.generatedclasses.tables.TAuthor.ADDRESS); + } + + /** + * Create a detached TAuthorRecord + */ + public TAuthorRecord() { + super(org.jooq.test.db2.generatedclasses.tables.TAuthor.T_AUTHOR); + } +} diff --git a/jOOQ-test/src/org/jooq/test/db2/generatedclasses/tables/records/TBookRecord.java b/jOOQ-test/src/org/jooq/test/db2/generatedclasses/tables/records/TBookRecord.java new file mode 100644 index 00000000000..46a0869e853 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/db2/generatedclasses/tables/records/TBookRecord.java @@ -0,0 +1,229 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.db2.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + */ +public class TBookRecord extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = -1996949344; + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setId(java.lang.Integer value) { + setValue(org.jooq.test.db2.generatedclasses.tables.TBook.ID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.lang.Integer getId() { + return getValue(org.jooq.test.db2.generatedclasses.tables.TBook.ID); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.util.List fetchTBookToBookStoreList() { + return create() + .selectFrom(org.jooq.test.db2.generatedclasses.tables.TBookToBookStore.T_BOOK_TO_BOOK_STORE) + .where(org.jooq.test.db2.generatedclasses.tables.TBookToBookStore.BOOK_ID.equal(getValue(org.jooq.test.db2.generatedclasses.tables.TBook.ID))) + .fetch(); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT T_BOOK__FK_T_BOOK_AUTHOR_ID
+	 * FOREIGN KEY (AUTHOR_ID)
+	 * REFERENCES LUKAS.T_AUTHOR (ID)
+	 * 
+ */ + public void setAuthorId(java.lang.Integer value) { + setValue(org.jooq.test.db2.generatedclasses.tables.TBook.AUTHOR_ID, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT T_BOOK__FK_T_BOOK_AUTHOR_ID
+	 * FOREIGN KEY (AUTHOR_ID)
+	 * REFERENCES LUKAS.T_AUTHOR (ID)
+	 * 
+ */ + public java.lang.Integer getAuthorId() { + return getValue(org.jooq.test.db2.generatedclasses.tables.TBook.AUTHOR_ID); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT T_BOOK__FK_T_BOOK_AUTHOR_ID
+	 * FOREIGN KEY (AUTHOR_ID)
+	 * REFERENCES LUKAS.T_AUTHOR (ID)
+	 * 
+ */ + public org.jooq.test.db2.generatedclasses.tables.records.TAuthorRecord fetchTAuthorByAuthorId() { + return create() + .selectFrom(org.jooq.test.db2.generatedclasses.tables.TAuthor.T_AUTHOR) + .where(org.jooq.test.db2.generatedclasses.tables.TAuthor.ID.equal(getValue(org.jooq.test.db2.generatedclasses.tables.TBook.AUTHOR_ID))) + .fetchOne(); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT T_BOOK__FK_T_BOOK_CO_AUTHOR_ID
+	 * FOREIGN KEY (CO_AUTHOR_ID)
+	 * REFERENCES LUKAS.T_AUTHOR (ID)
+	 * 
+ */ + public void setCoAuthorId(java.lang.Integer value) { + setValue(org.jooq.test.db2.generatedclasses.tables.TBook.CO_AUTHOR_ID, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT T_BOOK__FK_T_BOOK_CO_AUTHOR_ID
+	 * FOREIGN KEY (CO_AUTHOR_ID)
+	 * REFERENCES LUKAS.T_AUTHOR (ID)
+	 * 
+ */ + public java.lang.Integer getCoAuthorId() { + return getValue(org.jooq.test.db2.generatedclasses.tables.TBook.CO_AUTHOR_ID); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT T_BOOK__FK_T_BOOK_CO_AUTHOR_ID
+	 * FOREIGN KEY (CO_AUTHOR_ID)
+	 * REFERENCES LUKAS.T_AUTHOR (ID)
+	 * 
+ */ + public org.jooq.test.db2.generatedclasses.tables.records.TAuthorRecord fetchTAuthorByCoAuthorId() { + return create() + .selectFrom(org.jooq.test.db2.generatedclasses.tables.TAuthor.T_AUTHOR) + .where(org.jooq.test.db2.generatedclasses.tables.TAuthor.ID.equal(getValue(org.jooq.test.db2.generatedclasses.tables.TBook.CO_AUTHOR_ID))) + .fetchOne(); + } + + /** + * An uncommented item + */ + public void setDetailsId(java.lang.Integer value) { + setValue(org.jooq.test.db2.generatedclasses.tables.TBook.DETAILS_ID, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getDetailsId() { + return getValue(org.jooq.test.db2.generatedclasses.tables.TBook.DETAILS_ID); + } + + /** + * An uncommented item + */ + public void setTitle(java.lang.String value) { + setValue(org.jooq.test.db2.generatedclasses.tables.TBook.TITLE, value); + } + + /** + * An uncommented item + */ + public java.lang.String getTitle() { + return getValue(org.jooq.test.db2.generatedclasses.tables.TBook.TITLE); + } + + /** + * An uncommented item + */ + public void setPublishedIn(java.lang.Integer value) { + setValue(org.jooq.test.db2.generatedclasses.tables.TBook.PUBLISHED_IN, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getPublishedIn() { + return getValue(org.jooq.test.db2.generatedclasses.tables.TBook.PUBLISHED_IN); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT T_BOOK__FK_T_BOOK_LANGUAGE_ID
+	 * FOREIGN KEY (LANGUAGE_ID)
+	 * REFERENCES LUKAS.T_LANGUAGE (ID)
+	 * 
+ */ + public void setLanguageId(org.jooq.test.db2.generatedclasses.enums.TLanguage value) { + setValue(org.jooq.test.db2.generatedclasses.tables.TBook.LANGUAGE_ID, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT T_BOOK__FK_T_BOOK_LANGUAGE_ID
+	 * FOREIGN KEY (LANGUAGE_ID)
+	 * REFERENCES LUKAS.T_LANGUAGE (ID)
+	 * 
+ */ + public org.jooq.test.db2.generatedclasses.enums.TLanguage getLanguageId() { + return getValue(org.jooq.test.db2.generatedclasses.tables.TBook.LANGUAGE_ID); + } + + /** + * An uncommented item + */ + public void setContentText(java.lang.String value) { + setValue(org.jooq.test.db2.generatedclasses.tables.TBook.CONTENT_TEXT, value); + } + + /** + * An uncommented item + */ + public java.lang.String getContentText() { + return getValue(org.jooq.test.db2.generatedclasses.tables.TBook.CONTENT_TEXT); + } + + /** + * An uncommented item + */ + public void setContentPdf(byte[] value) { + setValue(org.jooq.test.db2.generatedclasses.tables.TBook.CONTENT_PDF, value); + } + + /** + * An uncommented item + */ + public byte[] getContentPdf() { + return getValue(org.jooq.test.db2.generatedclasses.tables.TBook.CONTENT_PDF); + } + + /** + * Create a detached TBookRecord + */ + public TBookRecord() { + super(org.jooq.test.db2.generatedclasses.tables.TBook.T_BOOK); + } +} diff --git a/jOOQ-test/src/org/jooq/test/db2/generatedclasses/tables/records/TBookStoreRecord.java b/jOOQ-test/src/org/jooq/test/db2/generatedclasses/tables/records/TBookStoreRecord.java new file mode 100644 index 00000000000..17c2f8fe0bf --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/db2/generatedclasses/tables/records/TBookStoreRecord.java @@ -0,0 +1,43 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.db2.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + */ +public class TBookStoreRecord extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = -358913910; + + /** + * An uncommented item + */ + public void setName(java.lang.String value) { + setValue(org.jooq.test.db2.generatedclasses.tables.TBookStore.NAME, value); + } + + /** + * An uncommented item + */ + public java.lang.String getName() { + return getValue(org.jooq.test.db2.generatedclasses.tables.TBookStore.NAME); + } + + /** + * An uncommented item + */ + public java.util.List fetchTBookToBookStoreList() { + return create() + .selectFrom(org.jooq.test.db2.generatedclasses.tables.TBookToBookStore.T_BOOK_TO_BOOK_STORE) + .where(org.jooq.test.db2.generatedclasses.tables.TBookToBookStore.BOOK_STORE_NAME.equal(getValue(org.jooq.test.db2.generatedclasses.tables.TBookStore.NAME))) + .fetch(); + } + + /** + * Create a detached TBookStoreRecord + */ + public TBookStoreRecord() { + super(org.jooq.test.db2.generatedclasses.tables.TBookStore.T_BOOK_STORE); + } +} diff --git a/jOOQ-test/src/org/jooq/test/db2/generatedclasses/tables/records/TBookToBookStoreRecord.java b/jOOQ-test/src/org/jooq/test/db2/generatedclasses/tables/records/TBookToBookStoreRecord.java new file mode 100644 index 00000000000..03de774253e --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/db2/generatedclasses/tables/records/TBookToBookStoreRecord.java @@ -0,0 +1,129 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.db2.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + */ +public class TBookToBookStoreRecord extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = -1064915686; + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT T_BOOK_TO_BOOK_STORE__FK_B2BS_BS_NAME
+	 * FOREIGN KEY (BOOK_STORE_NAME)
+	 * REFERENCES LUKAS.T_BOOK_STORE (NAME)
+	 * 
+ */ + public void setBookStoreName(java.lang.String value) { + setValue(org.jooq.test.db2.generatedclasses.tables.TBookToBookStore.BOOK_STORE_NAME, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT T_BOOK_TO_BOOK_STORE__FK_B2BS_BS_NAME
+	 * FOREIGN KEY (BOOK_STORE_NAME)
+	 * REFERENCES LUKAS.T_BOOK_STORE (NAME)
+	 * 
+ */ + public java.lang.String getBookStoreName() { + return getValue(org.jooq.test.db2.generatedclasses.tables.TBookToBookStore.BOOK_STORE_NAME); + } + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT T_BOOK_TO_BOOK_STORE__FK_B2BS_BS_NAME
+	 * FOREIGN KEY (BOOK_STORE_NAME)
+	 * REFERENCES LUKAS.T_BOOK_STORE (NAME)
+	 * 
+ */ + public org.jooq.test.db2.generatedclasses.tables.records.TBookStoreRecord fetchTBookStore() { + return create() + .selectFrom(org.jooq.test.db2.generatedclasses.tables.TBookStore.T_BOOK_STORE) + .where(org.jooq.test.db2.generatedclasses.tables.TBookStore.NAME.equal(getValue(org.jooq.test.db2.generatedclasses.tables.TBookToBookStore.BOOK_STORE_NAME))) + .fetchOne(); + } + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT T_BOOK_TO_BOOK_STORE__FK_B2BS_B_ID
+	 * FOREIGN KEY (BOOK_ID)
+	 * REFERENCES LUKAS.T_BOOK (ID)
+	 * 
+ */ + public void setBookId(java.lang.Integer value) { + setValue(org.jooq.test.db2.generatedclasses.tables.TBookToBookStore.BOOK_ID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT T_BOOK_TO_BOOK_STORE__FK_B2BS_B_ID
+	 * FOREIGN KEY (BOOK_ID)
+	 * REFERENCES LUKAS.T_BOOK (ID)
+	 * 
+ */ + public java.lang.Integer getBookId() { + return getValue(org.jooq.test.db2.generatedclasses.tables.TBookToBookStore.BOOK_ID); + } + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT T_BOOK_TO_BOOK_STORE__FK_B2BS_B_ID
+	 * FOREIGN KEY (BOOK_ID)
+	 * REFERENCES LUKAS.T_BOOK (ID)
+	 * 
+ */ + public org.jooq.test.db2.generatedclasses.tables.records.TBookRecord fetchTBook() { + return create() + .selectFrom(org.jooq.test.db2.generatedclasses.tables.TBook.T_BOOK) + .where(org.jooq.test.db2.generatedclasses.tables.TBook.ID.equal(getValue(org.jooq.test.db2.generatedclasses.tables.TBookToBookStore.BOOK_ID))) + .fetchOne(); + } + + /** + * An uncommented item + */ + public void setStock(java.lang.Integer value) { + setValue(org.jooq.test.db2.generatedclasses.tables.TBookToBookStore.STOCK, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getStock() { + return getValue(org.jooq.test.db2.generatedclasses.tables.TBookToBookStore.STOCK); + } + + /** + * Create a detached TBookToBookStoreRecord + */ + public TBookToBookStoreRecord() { + super(org.jooq.test.db2.generatedclasses.tables.TBookToBookStore.T_BOOK_TO_BOOK_STORE); + } +} diff --git a/jOOQ-test/src/org/jooq/test/db2/generatedclasses/tables/records/TBooleansRecord.java b/jOOQ-test/src/org/jooq/test/db2/generatedclasses/tables/records/TBooleansRecord.java new file mode 100644 index 00000000000..bc393a19512 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/db2/generatedclasses/tables/records/TBooleansRecord.java @@ -0,0 +1,177 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.db2.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + */ +public class TBooleansRecord extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = 950652542; + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setId(java.lang.Integer value) { + setValue(org.jooq.test.db2.generatedclasses.tables.TBooleans.ID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.lang.Integer getId() { + return getValue(org.jooq.test.db2.generatedclasses.tables.TBooleans.ID); + } + + /** + * An uncommented item + */ + public void setOneZero(org.jooq.test._.converters.Boolean_10 value) { + setValue(org.jooq.test.db2.generatedclasses.tables.TBooleans.ONE_ZERO, value); + } + + /** + * An uncommented item + */ + public org.jooq.test._.converters.Boolean_10 getOneZero() { + return getValue(org.jooq.test.db2.generatedclasses.tables.TBooleans.ONE_ZERO); + } + + /** + * An uncommented item + */ + public void setTrueFalseLc(org.jooq.test._.converters.Boolean_TF_LC value) { + setValue(org.jooq.test.db2.generatedclasses.tables.TBooleans.TRUE_FALSE_LC, value); + } + + /** + * An uncommented item + */ + public org.jooq.test._.converters.Boolean_TF_LC getTrueFalseLc() { + return getValue(org.jooq.test.db2.generatedclasses.tables.TBooleans.TRUE_FALSE_LC); + } + + /** + * An uncommented item + */ + public void setTrueFalseUc(org.jooq.test._.converters.Boolean_TF_UC value) { + setValue(org.jooq.test.db2.generatedclasses.tables.TBooleans.TRUE_FALSE_UC, value); + } + + /** + * An uncommented item + */ + public org.jooq.test._.converters.Boolean_TF_UC getTrueFalseUc() { + return getValue(org.jooq.test.db2.generatedclasses.tables.TBooleans.TRUE_FALSE_UC); + } + + /** + * An uncommented item + */ + public void setYesNoLc(org.jooq.test._.converters.Boolean_YES_NO_LC value) { + setValue(org.jooq.test.db2.generatedclasses.tables.TBooleans.YES_NO_LC, value); + } + + /** + * An uncommented item + */ + public org.jooq.test._.converters.Boolean_YES_NO_LC getYesNoLc() { + return getValue(org.jooq.test.db2.generatedclasses.tables.TBooleans.YES_NO_LC); + } + + /** + * An uncommented item + */ + public void setYesNoUc(org.jooq.test._.converters.Boolean_YES_NO_UC value) { + setValue(org.jooq.test.db2.generatedclasses.tables.TBooleans.YES_NO_UC, value); + } + + /** + * An uncommented item + */ + public org.jooq.test._.converters.Boolean_YES_NO_UC getYesNoUc() { + return getValue(org.jooq.test.db2.generatedclasses.tables.TBooleans.YES_NO_UC); + } + + /** + * An uncommented item + */ + public void setYNLc(org.jooq.test._.converters.Boolean_YN_LC value) { + setValue(org.jooq.test.db2.generatedclasses.tables.TBooleans.Y_N_LC, value); + } + + /** + * An uncommented item + */ + public org.jooq.test._.converters.Boolean_YN_LC getYNLc() { + return getValue(org.jooq.test.db2.generatedclasses.tables.TBooleans.Y_N_LC); + } + + /** + * An uncommented item + */ + public void setYNUc(org.jooq.test._.converters.Boolean_YN_UC value) { + setValue(org.jooq.test.db2.generatedclasses.tables.TBooleans.Y_N_UC, value); + } + + /** + * An uncommented item + */ + public org.jooq.test._.converters.Boolean_YN_UC getYNUc() { + return getValue(org.jooq.test.db2.generatedclasses.tables.TBooleans.Y_N_UC); + } + + /** + * An uncommented item + */ + public void setVcBoolean(java.lang.Boolean value) { + setValue(org.jooq.test.db2.generatedclasses.tables.TBooleans.VC_BOOLEAN, value); + } + + /** + * An uncommented item + */ + public java.lang.Boolean getVcBoolean() { + return getValue(org.jooq.test.db2.generatedclasses.tables.TBooleans.VC_BOOLEAN); + } + + /** + * An uncommented item + */ + public void setCBoolean(java.lang.Boolean value) { + setValue(org.jooq.test.db2.generatedclasses.tables.TBooleans.C_BOOLEAN, value); + } + + /** + * An uncommented item + */ + public java.lang.Boolean getCBoolean() { + return getValue(org.jooq.test.db2.generatedclasses.tables.TBooleans.C_BOOLEAN); + } + + /** + * An uncommented item + */ + public void setNBoolean(java.lang.Boolean value) { + setValue(org.jooq.test.db2.generatedclasses.tables.TBooleans.N_BOOLEAN, value); + } + + /** + * An uncommented item + */ + public java.lang.Boolean getNBoolean() { + return getValue(org.jooq.test.db2.generatedclasses.tables.TBooleans.N_BOOLEAN); + } + + /** + * Create a detached TBooleansRecord + */ + public TBooleansRecord() { + super(org.jooq.test.db2.generatedclasses.tables.TBooleans.T_BOOLEANS); + } +} diff --git a/jOOQ-test/src/org/jooq/test/db2/generatedclasses/tables/records/TDatesRecord.java b/jOOQ-test/src/org/jooq/test/db2/generatedclasses/tables/records/TDatesRecord.java new file mode 100644 index 00000000000..22f5cd3edbb --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/db2/generatedclasses/tables/records/TDatesRecord.java @@ -0,0 +1,107 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.db2.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + */ +public class TDatesRecord extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = 196500344; + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setId(java.lang.Integer value) { + setValue(org.jooq.test.db2.generatedclasses.tables.TDates.ID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.lang.Integer getId() { + return getValue(org.jooq.test.db2.generatedclasses.tables.TDates.ID); + } + + /** + * An uncommented item + */ + public void setD(java.sql.Date value) { + setValue(org.jooq.test.db2.generatedclasses.tables.TDates.D, value); + } + + /** + * An uncommented item + */ + public java.sql.Date getD() { + return getValue(org.jooq.test.db2.generatedclasses.tables.TDates.D); + } + + /** + * An uncommented item + */ + public void setT(java.sql.Time value) { + setValue(org.jooq.test.db2.generatedclasses.tables.TDates.T, value); + } + + /** + * An uncommented item + */ + public java.sql.Time getT() { + return getValue(org.jooq.test.db2.generatedclasses.tables.TDates.T); + } + + /** + * An uncommented item + */ + public void setTs(java.sql.Timestamp value) { + setValue(org.jooq.test.db2.generatedclasses.tables.TDates.TS, value); + } + + /** + * An uncommented item + */ + public java.sql.Timestamp getTs() { + return getValue(org.jooq.test.db2.generatedclasses.tables.TDates.TS); + } + + /** + * An uncommented item + */ + public void setDInt(java.lang.Integer value) { + setValue(org.jooq.test.db2.generatedclasses.tables.TDates.D_INT, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getDInt() { + return getValue(org.jooq.test.db2.generatedclasses.tables.TDates.D_INT); + } + + /** + * An uncommented item + */ + public void setTsBigint(java.lang.Long value) { + setValue(org.jooq.test.db2.generatedclasses.tables.TDates.TS_BIGINT, value); + } + + /** + * An uncommented item + */ + public java.lang.Long getTsBigint() { + return getValue(org.jooq.test.db2.generatedclasses.tables.TDates.TS_BIGINT); + } + + /** + * Create a detached TDatesRecord + */ + public TDatesRecord() { + super(org.jooq.test.db2.generatedclasses.tables.TDates.T_DATES); + } +} diff --git a/jOOQ-test/src/org/jooq/test/db2/generatedclasses/tables/records/TIdentityPkRecord.java b/jOOQ-test/src/org/jooq/test/db2/generatedclasses/tables/records/TIdentityPkRecord.java new file mode 100644 index 00000000000..ba6f3c45540 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/db2/generatedclasses/tables/records/TIdentityPkRecord.java @@ -0,0 +1,51 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.db2.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + */ +public class TIdentityPkRecord extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = -664116483; + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setId(java.lang.Integer value) { + setValue(org.jooq.test.db2.generatedclasses.tables.TIdentityPk.ID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.lang.Integer getId() { + return getValue(org.jooq.test.db2.generatedclasses.tables.TIdentityPk.ID); + } + + /** + * An uncommented item + */ + public void setVal(java.lang.Integer value) { + setValue(org.jooq.test.db2.generatedclasses.tables.TIdentityPk.VAL, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getVal() { + return getValue(org.jooq.test.db2.generatedclasses.tables.TIdentityPk.VAL); + } + + /** + * Create a detached TIdentityPkRecord + */ + public TIdentityPkRecord() { + super(org.jooq.test.db2.generatedclasses.tables.TIdentityPk.T_IDENTITY_PK); + } +} diff --git a/jOOQ-test/src/org/jooq/test/db2/generatedclasses/tables/records/TIdentityRecord.java b/jOOQ-test/src/org/jooq/test/db2/generatedclasses/tables/records/TIdentityRecord.java new file mode 100644 index 00000000000..fa40f187e6b --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/db2/generatedclasses/tables/records/TIdentityRecord.java @@ -0,0 +1,47 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.db2.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + */ +public class TIdentityRecord extends org.jooq.impl.TableRecordImpl { + + private static final long serialVersionUID = -256124532; + + /** + * An uncommented item + */ + public void setId(java.lang.Integer value) { + setValue(org.jooq.test.db2.generatedclasses.tables.TIdentity.ID, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getId() { + return getValue(org.jooq.test.db2.generatedclasses.tables.TIdentity.ID); + } + + /** + * An uncommented item + */ + public void setVal(java.lang.Integer value) { + setValue(org.jooq.test.db2.generatedclasses.tables.TIdentity.VAL, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getVal() { + return getValue(org.jooq.test.db2.generatedclasses.tables.TIdentity.VAL); + } + + /** + * Create a detached TIdentityRecord + */ + public TIdentityRecord() { + super(org.jooq.test.db2.generatedclasses.tables.TIdentity.T_IDENTITY); + } +} diff --git a/jOOQ-test/src/org/jooq/test/db2/generatedclasses/tables/records/TTriggersRecord.java b/jOOQ-test/src/org/jooq/test/db2/generatedclasses/tables/records/TTriggersRecord.java new file mode 100644 index 00000000000..c8f9869a2ef --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/db2/generatedclasses/tables/records/TTriggersRecord.java @@ -0,0 +1,65 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.db2.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + */ +public class TTriggersRecord extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = -1888411556; + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setIdGenerated(java.lang.Integer value) { + setValue(org.jooq.test.db2.generatedclasses.tables.TTriggers.ID_GENERATED, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.lang.Integer getIdGenerated() { + return getValue(org.jooq.test.db2.generatedclasses.tables.TTriggers.ID_GENERATED); + } + + /** + * An uncommented item + */ + public void setId(java.lang.Integer value) { + setValue(org.jooq.test.db2.generatedclasses.tables.TTriggers.ID, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getId() { + return getValue(org.jooq.test.db2.generatedclasses.tables.TTriggers.ID); + } + + /** + * An uncommented item + */ + public void setCounter(java.lang.Integer value) { + setValue(org.jooq.test.db2.generatedclasses.tables.TTriggers.COUNTER, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getCounter() { + return getValue(org.jooq.test.db2.generatedclasses.tables.TTriggers.COUNTER); + } + + /** + * Create a detached TTriggersRecord + */ + public TTriggersRecord() { + super(org.jooq.test.db2.generatedclasses.tables.TTriggers.T_TRIGGERS); + } +} diff --git a/jOOQ-test/src/org/jooq/test/db2/generatedclasses/tables/records/T_639NumbersTableRecord.java b/jOOQ-test/src/org/jooq/test/db2/generatedclasses/tables/records/T_639NumbersTableRecord.java new file mode 100644 index 00000000000..7a320aa2b4c --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/db2/generatedclasses/tables/records/T_639NumbersTableRecord.java @@ -0,0 +1,191 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.db2.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + */ +public class T_639NumbersTableRecord extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = -1307952163; + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setId(java.lang.Integer value) { + setValue(org.jooq.test.db2.generatedclasses.tables.T_639NumbersTable.ID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.lang.Integer getId() { + return getValue(org.jooq.test.db2.generatedclasses.tables.T_639NumbersTable.ID); + } + + /** + * An uncommented item + */ + public void setShort(java.lang.Short value) { + setValue(org.jooq.test.db2.generatedclasses.tables.T_639NumbersTable.SHORT, value); + } + + /** + * An uncommented item + */ + public java.lang.Short getShort() { + return getValue(org.jooq.test.db2.generatedclasses.tables.T_639NumbersTable.SHORT); + } + + /** + * An uncommented item + */ + public void setInteger(java.lang.Integer value) { + setValue(org.jooq.test.db2.generatedclasses.tables.T_639NumbersTable.INTEGER, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getInteger() { + return getValue(org.jooq.test.db2.generatedclasses.tables.T_639NumbersTable.INTEGER); + } + + /** + * An uncommented item + */ + public void setLong(java.lang.Long value) { + setValue(org.jooq.test.db2.generatedclasses.tables.T_639NumbersTable.LONG, value); + } + + /** + * An uncommented item + */ + public java.lang.Long getLong() { + return getValue(org.jooq.test.db2.generatedclasses.tables.T_639NumbersTable.LONG); + } + + /** + * An uncommented item + */ + public void setByteDecimal(java.lang.Byte value) { + setValue(org.jooq.test.db2.generatedclasses.tables.T_639NumbersTable.BYTE_DECIMAL, value); + } + + /** + * An uncommented item + */ + public java.lang.Byte getByteDecimal() { + return getValue(org.jooq.test.db2.generatedclasses.tables.T_639NumbersTable.BYTE_DECIMAL); + } + + /** + * An uncommented item + */ + public void setShortDecimal(java.lang.Short value) { + setValue(org.jooq.test.db2.generatedclasses.tables.T_639NumbersTable.SHORT_DECIMAL, value); + } + + /** + * An uncommented item + */ + public java.lang.Short getShortDecimal() { + return getValue(org.jooq.test.db2.generatedclasses.tables.T_639NumbersTable.SHORT_DECIMAL); + } + + /** + * An uncommented item + */ + public void setIntegerDecimal(java.lang.Integer value) { + setValue(org.jooq.test.db2.generatedclasses.tables.T_639NumbersTable.INTEGER_DECIMAL, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getIntegerDecimal() { + return getValue(org.jooq.test.db2.generatedclasses.tables.T_639NumbersTable.INTEGER_DECIMAL); + } + + /** + * An uncommented item + */ + public void setLongDecimal(java.lang.Long value) { + setValue(org.jooq.test.db2.generatedclasses.tables.T_639NumbersTable.LONG_DECIMAL, value); + } + + /** + * An uncommented item + */ + public java.lang.Long getLongDecimal() { + return getValue(org.jooq.test.db2.generatedclasses.tables.T_639NumbersTable.LONG_DECIMAL); + } + + /** + * An uncommented item + */ + public void setBigInteger(java.math.BigInteger value) { + setValue(org.jooq.test.db2.generatedclasses.tables.T_639NumbersTable.BIG_INTEGER, value); + } + + /** + * An uncommented item + */ + public java.math.BigInteger getBigInteger() { + return getValue(org.jooq.test.db2.generatedclasses.tables.T_639NumbersTable.BIG_INTEGER); + } + + /** + * An uncommented item + */ + public void setBigDecimal(java.math.BigDecimal value) { + setValue(org.jooq.test.db2.generatedclasses.tables.T_639NumbersTable.BIG_DECIMAL, value); + } + + /** + * An uncommented item + */ + public java.math.BigDecimal getBigDecimal() { + return getValue(org.jooq.test.db2.generatedclasses.tables.T_639NumbersTable.BIG_DECIMAL); + } + + /** + * An uncommented item + */ + public void setFloat(java.lang.Float value) { + setValue(org.jooq.test.db2.generatedclasses.tables.T_639NumbersTable.FLOAT, value); + } + + /** + * An uncommented item + */ + public java.lang.Float getFloat() { + return getValue(org.jooq.test.db2.generatedclasses.tables.T_639NumbersTable.FLOAT); + } + + /** + * An uncommented item + */ + public void setDouble(java.lang.Double value) { + setValue(org.jooq.test.db2.generatedclasses.tables.T_639NumbersTable.DOUBLE, value); + } + + /** + * An uncommented item + */ + public java.lang.Double getDouble() { + return getValue(org.jooq.test.db2.generatedclasses.tables.T_639NumbersTable.DOUBLE); + } + + /** + * Create a detached T_639NumbersTableRecord + */ + public T_639NumbersTableRecord() { + super(org.jooq.test.db2.generatedclasses.tables.T_639NumbersTable.T_639_NUMBERS_TABLE); + } +} diff --git a/jOOQ-test/src/org/jooq/test/db2/generatedclasses/tables/records/T_658RefRecord.java b/jOOQ-test/src/org/jooq/test/db2/generatedclasses/tables/records/T_658RefRecord.java new file mode 100644 index 00000000000..69b1e58c721 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/db2/generatedclasses/tables/records/T_658RefRecord.java @@ -0,0 +1,175 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.db2.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + */ +public class T_658RefRecord extends org.jooq.impl.TableRecordImpl { + + private static final long serialVersionUID = 1169500822; + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT T_658_REF__FK_T_658_11
+	 * FOREIGN KEY (REF_11)
+	 * REFERENCES LUKAS.T_658_11 (ID)
+	 * 
+ */ + public void setRef_11(org.jooq.test.db2.generatedclasses.enums.T_658_11 value) { + setValue(org.jooq.test.db2.generatedclasses.tables.T_658Ref.REF_11, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT T_658_REF__FK_T_658_11
+	 * FOREIGN KEY (REF_11)
+	 * REFERENCES LUKAS.T_658_11 (ID)
+	 * 
+ */ + public org.jooq.test.db2.generatedclasses.enums.T_658_11 getRef_11() { + return getValue(org.jooq.test.db2.generatedclasses.tables.T_658Ref.REF_11); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT T_658_REF__FK_T_658_21
+	 * FOREIGN KEY (REF_21)
+	 * REFERENCES LUKAS.T_658_21 (ID)
+	 * 
+ */ + public void setRef_21(org.jooq.test.db2.generatedclasses.enums.T_658_21 value) { + setValue(org.jooq.test.db2.generatedclasses.tables.T_658Ref.REF_21, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT T_658_REF__FK_T_658_21
+	 * FOREIGN KEY (REF_21)
+	 * REFERENCES LUKAS.T_658_21 (ID)
+	 * 
+ */ + public org.jooq.test.db2.generatedclasses.enums.T_658_21 getRef_21() { + return getValue(org.jooq.test.db2.generatedclasses.tables.T_658Ref.REF_21); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT T_658_REF__FK_T_658_31
+	 * FOREIGN KEY (REF_31)
+	 * REFERENCES LUKAS.T_658_31 (ID)
+	 * 
+ */ + public void setRef_31(org.jooq.test.db2.generatedclasses.enums.T_658_31 value) { + setValue(org.jooq.test.db2.generatedclasses.tables.T_658Ref.REF_31, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT T_658_REF__FK_T_658_31
+	 * FOREIGN KEY (REF_31)
+	 * REFERENCES LUKAS.T_658_31 (ID)
+	 * 
+ */ + public org.jooq.test.db2.generatedclasses.enums.T_658_31 getRef_31() { + return getValue(org.jooq.test.db2.generatedclasses.tables.T_658Ref.REF_31); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT T_658_REF__FK_T_658_12
+	 * FOREIGN KEY (REF_12)
+	 * REFERENCES LUKAS.T_658_12 (ID)
+	 * 
+ */ + public void setRef_12(org.jooq.test.db2.generatedclasses.enums.T_658_12 value) { + setValue(org.jooq.test.db2.generatedclasses.tables.T_658Ref.REF_12, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT T_658_REF__FK_T_658_12
+	 * FOREIGN KEY (REF_12)
+	 * REFERENCES LUKAS.T_658_12 (ID)
+	 * 
+ */ + public org.jooq.test.db2.generatedclasses.enums.T_658_12 getRef_12() { + return getValue(org.jooq.test.db2.generatedclasses.tables.T_658Ref.REF_12); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT T_658_REF__FK_T_658_22
+	 * FOREIGN KEY (REF_22)
+	 * REFERENCES LUKAS.T_658_22 (ID)
+	 * 
+ */ + public void setRef_22(org.jooq.test.db2.generatedclasses.enums.T_658_22 value) { + setValue(org.jooq.test.db2.generatedclasses.tables.T_658Ref.REF_22, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT T_658_REF__FK_T_658_22
+	 * FOREIGN KEY (REF_22)
+	 * REFERENCES LUKAS.T_658_22 (ID)
+	 * 
+ */ + public org.jooq.test.db2.generatedclasses.enums.T_658_22 getRef_22() { + return getValue(org.jooq.test.db2.generatedclasses.tables.T_658Ref.REF_22); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT T_658_REF__FK_T_658_32
+	 * FOREIGN KEY (REF_32)
+	 * REFERENCES LUKAS.T_658_32 (ID)
+	 * 
+ */ + public void setRef_32(org.jooq.test.db2.generatedclasses.enums.T_658_32 value) { + setValue(org.jooq.test.db2.generatedclasses.tables.T_658Ref.REF_32, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT T_658_REF__FK_T_658_32
+	 * FOREIGN KEY (REF_32)
+	 * REFERENCES LUKAS.T_658_32 (ID)
+	 * 
+ */ + public org.jooq.test.db2.generatedclasses.enums.T_658_32 getRef_32() { + return getValue(org.jooq.test.db2.generatedclasses.tables.T_658Ref.REF_32); + } + + /** + * Create a detached T_658RefRecord + */ + public T_658RefRecord() { + super(org.jooq.test.db2.generatedclasses.tables.T_658Ref.T_658_REF); + } +} diff --git a/jOOQ-test/src/org/jooq/test/db2/generatedclasses/tables/records/T_725LobTestRecord.java b/jOOQ-test/src/org/jooq/test/db2/generatedclasses/tables/records/T_725LobTestRecord.java new file mode 100644 index 00000000000..c7a3478b9be --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/db2/generatedclasses/tables/records/T_725LobTestRecord.java @@ -0,0 +1,51 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.db2.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + */ +public class T_725LobTestRecord extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = 1285183007; + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setId(java.lang.Integer value) { + setValue(org.jooq.test.db2.generatedclasses.tables.T_725LobTest.ID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.lang.Integer getId() { + return getValue(org.jooq.test.db2.generatedclasses.tables.T_725LobTest.ID); + } + + /** + * An uncommented item + */ + public void setLob(byte[] value) { + setValue(org.jooq.test.db2.generatedclasses.tables.T_725LobTest.LOB, value); + } + + /** + * An uncommented item + */ + public byte[] getLob() { + return getValue(org.jooq.test.db2.generatedclasses.tables.T_725LobTest.LOB); + } + + /** + * Create a detached T_725LobTestRecord + */ + public T_725LobTestRecord() { + super(org.jooq.test.db2.generatedclasses.tables.T_725LobTest.T_725_LOB_TEST); + } +} diff --git a/jOOQ-test/src/org/jooq/test/db2/generatedclasses/tables/records/T_785Record.java b/jOOQ-test/src/org/jooq/test/db2/generatedclasses/tables/records/T_785Record.java new file mode 100644 index 00000000000..33d2a1b69b3 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/db2/generatedclasses/tables/records/T_785Record.java @@ -0,0 +1,61 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.db2.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + */ +public class T_785Record extends org.jooq.impl.TableRecordImpl { + + private static final long serialVersionUID = 178532299; + + /** + * An uncommented item + */ + public void setId(java.lang.Integer value) { + setValue(org.jooq.test.db2.generatedclasses.tables.T_785.ID, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getId() { + return getValue(org.jooq.test.db2.generatedclasses.tables.T_785.ID); + } + + /** + * An uncommented item + */ + public void setName(java.lang.String value) { + setValue(org.jooq.test.db2.generatedclasses.tables.T_785.NAME, value); + } + + /** + * An uncommented item + */ + public java.lang.String getName() { + return getValue(org.jooq.test.db2.generatedclasses.tables.T_785.NAME); + } + + /** + * An uncommented item + */ + public void setValue(java.lang.String value) { + setValue(org.jooq.test.db2.generatedclasses.tables.T_785.VALUE, value); + } + + /** + * An uncommented item + */ + public java.lang.String getValue() { + return getValue(org.jooq.test.db2.generatedclasses.tables.T_785.VALUE); + } + + /** + * Create a detached T_785Record + */ + public T_785Record() { + super(org.jooq.test.db2.generatedclasses.tables.T_785.T_785); + } +} diff --git a/jOOQ-test/src/org/jooq/test/db2/generatedclasses/tables/records/T_986_1Record.java b/jOOQ-test/src/org/jooq/test/db2/generatedclasses/tables/records/T_986_1Record.java new file mode 100644 index 00000000000..10831b72f88 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/db2/generatedclasses/tables/records/T_986_1Record.java @@ -0,0 +1,67 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.db2.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + */ +public class T_986_1Record extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = 1739323452; + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT T_986_1__FK_986
+	 * FOREIGN KEY (REF)
+	 * REFERENCES LUKAS.X_UNUSED (ID)
+	 * 
+ */ + public void setRef(java.lang.Integer value) { + setValue(org.jooq.test.db2.generatedclasses.tables.T_986_1.REF, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT T_986_1__FK_986
+	 * FOREIGN KEY (REF)
+	 * REFERENCES LUKAS.X_UNUSED (ID)
+	 * 
+ */ + public java.lang.Integer getRef() { + return getValue(org.jooq.test.db2.generatedclasses.tables.T_986_1.REF); + } + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT T_986_1__FK_986
+	 * FOREIGN KEY (REF)
+	 * REFERENCES LUKAS.X_UNUSED (ID)
+	 * 
+ */ + public org.jooq.test.db2.generatedclasses.tables.records.XUnusedRecord fetchXUnused() { + return create() + .selectFrom(org.jooq.test.db2.generatedclasses.tables.XUnused.X_UNUSED) + .where(org.jooq.test.db2.generatedclasses.tables.XUnused.ID.equal(getValue(org.jooq.test.db2.generatedclasses.tables.T_986_1.REF))) + .fetchOne(); + } + + /** + * Create a detached T_986_1Record + */ + public T_986_1Record() { + super(org.jooq.test.db2.generatedclasses.tables.T_986_1.T_986_1); + } +} diff --git a/jOOQ-test/src/org/jooq/test/db2/generatedclasses/tables/records/T_986_2Record.java b/jOOQ-test/src/org/jooq/test/db2/generatedclasses/tables/records/T_986_2Record.java new file mode 100644 index 00000000000..47122f66a9a --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/db2/generatedclasses/tables/records/T_986_2Record.java @@ -0,0 +1,67 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.db2.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + */ +public class T_986_2Record extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = 1351188728; + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT T_986_2__FK_986
+	 * FOREIGN KEY (REF)
+	 * REFERENCES LUKAS.X_UNUSED (ID)
+	 * 
+ */ + public void setRef(java.lang.Integer value) { + setValue(org.jooq.test.db2.generatedclasses.tables.T_986_2.REF, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT T_986_2__FK_986
+	 * FOREIGN KEY (REF)
+	 * REFERENCES LUKAS.X_UNUSED (ID)
+	 * 
+ */ + public java.lang.Integer getRef() { + return getValue(org.jooq.test.db2.generatedclasses.tables.T_986_2.REF); + } + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT T_986_2__FK_986
+	 * FOREIGN KEY (REF)
+	 * REFERENCES LUKAS.X_UNUSED (ID)
+	 * 
+ */ + public org.jooq.test.db2.generatedclasses.tables.records.XUnusedRecord fetchXUnused() { + return create() + .selectFrom(org.jooq.test.db2.generatedclasses.tables.XUnused.X_UNUSED) + .where(org.jooq.test.db2.generatedclasses.tables.XUnused.ID.equal(getValue(org.jooq.test.db2.generatedclasses.tables.T_986_2.REF))) + .fetchOne(); + } + + /** + * Create a detached T_986_2Record + */ + public T_986_2Record() { + super(org.jooq.test.db2.generatedclasses.tables.T_986_2.T_986_2); + } +} diff --git a/jOOQ-test/src/org/jooq/test/db2/generatedclasses/tables/records/VAuthorRecord.java b/jOOQ-test/src/org/jooq/test/db2/generatedclasses/tables/records/VAuthorRecord.java new file mode 100644 index 00000000000..19d3084b286 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/db2/generatedclasses/tables/records/VAuthorRecord.java @@ -0,0 +1,103 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.db2.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + */ +public class VAuthorRecord extends org.jooq.impl.TableRecordImpl { + + private static final long serialVersionUID = -1126100226; + + /** + * An uncommented item + */ + public void setId(java.lang.Integer value) { + setValue(org.jooq.test.db2.generatedclasses.tables.VAuthor.ID, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getId() { + return getValue(org.jooq.test.db2.generatedclasses.tables.VAuthor.ID); + } + + /** + * An uncommented item + */ + public void setFirstName(java.lang.String value) { + setValue(org.jooq.test.db2.generatedclasses.tables.VAuthor.FIRST_NAME, value); + } + + /** + * An uncommented item + */ + public java.lang.String getFirstName() { + return getValue(org.jooq.test.db2.generatedclasses.tables.VAuthor.FIRST_NAME); + } + + /** + * An uncommented item + */ + public void setLastName(java.lang.String value) { + setValue(org.jooq.test.db2.generatedclasses.tables.VAuthor.LAST_NAME, value); + } + + /** + * An uncommented item + */ + public java.lang.String getLastName() { + return getValue(org.jooq.test.db2.generatedclasses.tables.VAuthor.LAST_NAME); + } + + /** + * An uncommented item + */ + public void setDateOfBirth(java.sql.Date value) { + setValue(org.jooq.test.db2.generatedclasses.tables.VAuthor.DATE_OF_BIRTH, value); + } + + /** + * An uncommented item + */ + public java.sql.Date getDateOfBirth() { + return getValue(org.jooq.test.db2.generatedclasses.tables.VAuthor.DATE_OF_BIRTH); + } + + /** + * An uncommented item + */ + public void setYearOfBirth(java.lang.Integer value) { + setValue(org.jooq.test.db2.generatedclasses.tables.VAuthor.YEAR_OF_BIRTH, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getYearOfBirth() { + return getValue(org.jooq.test.db2.generatedclasses.tables.VAuthor.YEAR_OF_BIRTH); + } + + /** + * An uncommented item + */ + public void setAddress(java.lang.String value) { + setValue(org.jooq.test.db2.generatedclasses.tables.VAuthor.ADDRESS, value); + } + + /** + * An uncommented item + */ + public java.lang.String getAddress() { + return getValue(org.jooq.test.db2.generatedclasses.tables.VAuthor.ADDRESS); + } + + /** + * Create a detached VAuthorRecord + */ + public VAuthorRecord() { + super(org.jooq.test.db2.generatedclasses.tables.VAuthor.V_AUTHOR); + } +} diff --git a/jOOQ-test/src/org/jooq/test/db2/generatedclasses/tables/records/VBookRecord.java b/jOOQ-test/src/org/jooq/test/db2/generatedclasses/tables/records/VBookRecord.java new file mode 100644 index 00000000000..fd6458bfc1b --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/db2/generatedclasses/tables/records/VBookRecord.java @@ -0,0 +1,145 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.db2.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + */ +public class VBookRecord extends org.jooq.impl.TableRecordImpl { + + private static final long serialVersionUID = 1705631366; + + /** + * An uncommented item + */ + public void setId(java.lang.Integer value) { + setValue(org.jooq.test.db2.generatedclasses.tables.VBook.ID, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getId() { + return getValue(org.jooq.test.db2.generatedclasses.tables.VBook.ID); + } + + /** + * An uncommented item + */ + public void setAuthorId(java.lang.Integer value) { + setValue(org.jooq.test.db2.generatedclasses.tables.VBook.AUTHOR_ID, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getAuthorId() { + return getValue(org.jooq.test.db2.generatedclasses.tables.VBook.AUTHOR_ID); + } + + /** + * An uncommented item + */ + public void setCoAuthorId(java.lang.Integer value) { + setValue(org.jooq.test.db2.generatedclasses.tables.VBook.CO_AUTHOR_ID, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getCoAuthorId() { + return getValue(org.jooq.test.db2.generatedclasses.tables.VBook.CO_AUTHOR_ID); + } + + /** + * An uncommented item + */ + public void setDetailsId(java.lang.Integer value) { + setValue(org.jooq.test.db2.generatedclasses.tables.VBook.DETAILS_ID, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getDetailsId() { + return getValue(org.jooq.test.db2.generatedclasses.tables.VBook.DETAILS_ID); + } + + /** + * An uncommented item + */ + public void setTitle(java.lang.String value) { + setValue(org.jooq.test.db2.generatedclasses.tables.VBook.TITLE, value); + } + + /** + * An uncommented item + */ + public java.lang.String getTitle() { + return getValue(org.jooq.test.db2.generatedclasses.tables.VBook.TITLE); + } + + /** + * An uncommented item + */ + public void setPublishedIn(java.lang.Integer value) { + setValue(org.jooq.test.db2.generatedclasses.tables.VBook.PUBLISHED_IN, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getPublishedIn() { + return getValue(org.jooq.test.db2.generatedclasses.tables.VBook.PUBLISHED_IN); + } + + /** + * An uncommented item + */ + public void setLanguageId(java.lang.Integer value) { + setValue(org.jooq.test.db2.generatedclasses.tables.VBook.LANGUAGE_ID, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getLanguageId() { + return getValue(org.jooq.test.db2.generatedclasses.tables.VBook.LANGUAGE_ID); + } + + /** + * An uncommented item + */ + public void setContentText(java.lang.String value) { + setValue(org.jooq.test.db2.generatedclasses.tables.VBook.CONTENT_TEXT, value); + } + + /** + * An uncommented item + */ + public java.lang.String getContentText() { + return getValue(org.jooq.test.db2.generatedclasses.tables.VBook.CONTENT_TEXT); + } + + /** + * An uncommented item + */ + public void setContentPdf(byte[] value) { + setValue(org.jooq.test.db2.generatedclasses.tables.VBook.CONTENT_PDF, value); + } + + /** + * An uncommented item + */ + public byte[] getContentPdf() { + return getValue(org.jooq.test.db2.generatedclasses.tables.VBook.CONTENT_PDF); + } + + /** + * Create a detached VBookRecord + */ + public VBookRecord() { + super(org.jooq.test.db2.generatedclasses.tables.VBook.V_BOOK); + } +} diff --git a/jOOQ-test/src/org/jooq/test/db2/generatedclasses/tables/records/VLibraryRecord.java b/jOOQ-test/src/org/jooq/test/db2/generatedclasses/tables/records/VLibraryRecord.java new file mode 100644 index 00000000000..18e4d4ae06d --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/db2/generatedclasses/tables/records/VLibraryRecord.java @@ -0,0 +1,47 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.db2.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + */ +public class VLibraryRecord extends org.jooq.impl.TableRecordImpl { + + private static final long serialVersionUID = -1021571206; + + /** + * An uncommented item + */ + public void setAuthor(java.lang.String value) { + setValue(org.jooq.test.db2.generatedclasses.tables.VLibrary.AUTHOR, value); + } + + /** + * An uncommented item + */ + public java.lang.String getAuthor() { + return getValue(org.jooq.test.db2.generatedclasses.tables.VLibrary.AUTHOR); + } + + /** + * An uncommented item + */ + public void setTitle(java.lang.String value) { + setValue(org.jooq.test.db2.generatedclasses.tables.VLibrary.TITLE, value); + } + + /** + * An uncommented item + */ + public java.lang.String getTitle() { + return getValue(org.jooq.test.db2.generatedclasses.tables.VLibrary.TITLE); + } + + /** + * Create a detached VLibraryRecord + */ + public VLibraryRecord() { + super(org.jooq.test.db2.generatedclasses.tables.VLibrary.V_LIBRARY); + } +} diff --git a/jOOQ-test/src/org/jooq/test/db2/generatedclasses/tables/records/XTestCase_64_69Record.java b/jOOQ-test/src/org/jooq/test/db2/generatedclasses/tables/records/XTestCase_64_69Record.java new file mode 100644 index 00000000000..4b7d587396b --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/db2/generatedclasses/tables/records/XTestCase_64_69Record.java @@ -0,0 +1,91 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.db2.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + */ +public class XTestCase_64_69Record extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = -2109285977; + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setId(java.lang.Integer value) { + setValue(org.jooq.test.db2.generatedclasses.tables.XTestCase_64_69.ID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.lang.Integer getId() { + return getValue(org.jooq.test.db2.generatedclasses.tables.XTestCase_64_69.ID); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.util.List fetchXTestCase_71List() { + return create() + .selectFrom(org.jooq.test.db2.generatedclasses.tables.XTestCase_71.X_TEST_CASE_71) + .where(org.jooq.test.db2.generatedclasses.tables.XTestCase_71.TEST_CASE_64_69_ID.equal(getValueAsShort(org.jooq.test.db2.generatedclasses.tables.XTestCase_64_69.ID))) + .fetch(); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT X_TEST_CASE_64_69__FK_X_TEST_CASE_64_69A
+	 * FOREIGN KEY (UNUSED_ID)
+	 * REFERENCES LUKAS.X_UNUSED (ID)
+	 * 
+ */ + public void setUnusedId(java.lang.Integer value) { + setValue(org.jooq.test.db2.generatedclasses.tables.XTestCase_64_69.UNUSED_ID, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT X_TEST_CASE_64_69__FK_X_TEST_CASE_64_69A
+	 * FOREIGN KEY (UNUSED_ID)
+	 * REFERENCES LUKAS.X_UNUSED (ID)
+	 * 
+ */ + public java.lang.Integer getUnusedId() { + return getValue(org.jooq.test.db2.generatedclasses.tables.XTestCase_64_69.UNUSED_ID); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT X_TEST_CASE_64_69__FK_X_TEST_CASE_64_69A
+	 * FOREIGN KEY (UNUSED_ID)
+	 * REFERENCES LUKAS.X_UNUSED (ID)
+	 * 
+ */ + public org.jooq.test.db2.generatedclasses.tables.records.XUnusedRecord fetchXUnused() { + return create() + .selectFrom(org.jooq.test.db2.generatedclasses.tables.XUnused.X_UNUSED) + .where(org.jooq.test.db2.generatedclasses.tables.XUnused.ID.equal(getValue(org.jooq.test.db2.generatedclasses.tables.XTestCase_64_69.UNUSED_ID))) + .fetchOne(); + } + + /** + * Create a detached XTestCase_64_69Record + */ + public XTestCase_64_69Record() { + super(org.jooq.test.db2.generatedclasses.tables.XTestCase_64_69.X_TEST_CASE_64_69); + } +} diff --git a/jOOQ-test/src/org/jooq/test/db2/generatedclasses/tables/records/XTestCase_71Record.java b/jOOQ-test/src/org/jooq/test/db2/generatedclasses/tables/records/XTestCase_71Record.java new file mode 100644 index 00000000000..49fd4bf758e --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/db2/generatedclasses/tables/records/XTestCase_71Record.java @@ -0,0 +1,79 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.db2.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + */ +public class XTestCase_71Record extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = -1065315127; + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setId(java.lang.Integer value) { + setValue(org.jooq.test.db2.generatedclasses.tables.XTestCase_71.ID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.lang.Integer getId() { + return getValue(org.jooq.test.db2.generatedclasses.tables.XTestCase_71.ID); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT X_TEST_CASE_71__FK_X_TEST_CASE_71
+	 * FOREIGN KEY (TEST_CASE_64_69_ID)
+	 * REFERENCES LUKAS.X_TEST_CASE_64_69 (ID)
+	 * 
+ */ + public void setTestCase_64_69Id(java.lang.Short value) { + setValue(org.jooq.test.db2.generatedclasses.tables.XTestCase_71.TEST_CASE_64_69_ID, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT X_TEST_CASE_71__FK_X_TEST_CASE_71
+	 * FOREIGN KEY (TEST_CASE_64_69_ID)
+	 * REFERENCES LUKAS.X_TEST_CASE_64_69 (ID)
+	 * 
+ */ + public java.lang.Short getTestCase_64_69Id() { + return getValue(org.jooq.test.db2.generatedclasses.tables.XTestCase_71.TEST_CASE_64_69_ID); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT X_TEST_CASE_71__FK_X_TEST_CASE_71
+	 * FOREIGN KEY (TEST_CASE_64_69_ID)
+	 * REFERENCES LUKAS.X_TEST_CASE_64_69 (ID)
+	 * 
+ */ + public org.jooq.test.db2.generatedclasses.tables.records.XTestCase_64_69Record fetchXTestCase_64_69() { + return create() + .selectFrom(org.jooq.test.db2.generatedclasses.tables.XTestCase_64_69.X_TEST_CASE_64_69) + .where(org.jooq.test.db2.generatedclasses.tables.XTestCase_64_69.ID.equal(getValueAsInteger(org.jooq.test.db2.generatedclasses.tables.XTestCase_71.TEST_CASE_64_69_ID))) + .fetchOne(); + } + + /** + * Create a detached XTestCase_71Record + */ + public XTestCase_71Record() { + super(org.jooq.test.db2.generatedclasses.tables.XTestCase_71.X_TEST_CASE_71); + } +} diff --git a/jOOQ-test/src/org/jooq/test/db2/generatedclasses/tables/records/XTestCase_85Record.java b/jOOQ-test/src/org/jooq/test/db2/generatedclasses/tables/records/XTestCase_85Record.java new file mode 100644 index 00000000000..8ceffd1c778 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/db2/generatedclasses/tables/records/XTestCase_85Record.java @@ -0,0 +1,106 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.db2.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + */ +public class XTestCase_85Record extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = -852080572; + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setId(java.lang.Integer value) { + setValue(org.jooq.test.db2.generatedclasses.tables.XTestCase_85.ID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.lang.Integer getId() { + return getValue(org.jooq.test.db2.generatedclasses.tables.XTestCase_85.ID); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT X_TEST_CASE_85__FK_X_TEST_CASE_85
+	 * FOREIGN KEY (X_UNUSED_ID, X_UNUSED_NAME)
+	 * REFERENCES LUKAS.X_UNUSED (ID, NAME)
+	 * 
+ */ + public void setXUnusedId(java.lang.Integer value) { + setValue(org.jooq.test.db2.generatedclasses.tables.XTestCase_85.X_UNUSED_ID, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT X_TEST_CASE_85__FK_X_TEST_CASE_85
+	 * FOREIGN KEY (X_UNUSED_ID, X_UNUSED_NAME)
+	 * REFERENCES LUKAS.X_UNUSED (ID, NAME)
+	 * 
+ */ + public java.lang.Integer getXUnusedId() { + return getValue(org.jooq.test.db2.generatedclasses.tables.XTestCase_85.X_UNUSED_ID); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT X_TEST_CASE_85__FK_X_TEST_CASE_85
+	 * FOREIGN KEY (X_UNUSED_ID, X_UNUSED_NAME)
+	 * REFERENCES LUKAS.X_UNUSED (ID, NAME)
+	 * 
+ */ + public org.jooq.test.db2.generatedclasses.tables.records.XUnusedRecord fetchXUnused() { + return create() + .selectFrom(org.jooq.test.db2.generatedclasses.tables.XUnused.X_UNUSED) + .where(org.jooq.test.db2.generatedclasses.tables.XUnused.ID.equal(getValue(org.jooq.test.db2.generatedclasses.tables.XTestCase_85.X_UNUSED_ID))) + .and(org.jooq.test.db2.generatedclasses.tables.XUnused.NAME.equal(getValue(org.jooq.test.db2.generatedclasses.tables.XTestCase_85.X_UNUSED_NAME))) + .fetchOne(); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT X_TEST_CASE_85__FK_X_TEST_CASE_85
+	 * FOREIGN KEY (X_UNUSED_ID, X_UNUSED_NAME)
+	 * REFERENCES LUKAS.X_UNUSED (ID, NAME)
+	 * 
+ */ + public void setXUnusedName(java.lang.String value) { + setValue(org.jooq.test.db2.generatedclasses.tables.XTestCase_85.X_UNUSED_NAME, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT X_TEST_CASE_85__FK_X_TEST_CASE_85
+	 * FOREIGN KEY (X_UNUSED_ID, X_UNUSED_NAME)
+	 * REFERENCES LUKAS.X_UNUSED (ID, NAME)
+	 * 
+ */ + public java.lang.String getXUnusedName() { + return getValue(org.jooq.test.db2.generatedclasses.tables.XTestCase_85.X_UNUSED_NAME); + } + + /** + * Create a detached XTestCase_85Record + */ + public XTestCase_85Record() { + super(org.jooq.test.db2.generatedclasses.tables.XTestCase_85.X_TEST_CASE_85); + } +} diff --git a/jOOQ-test/src/org/jooq/test/db2/generatedclasses/tables/records/XUnusedRecord.java b/jOOQ-test/src/org/jooq/test/db2/generatedclasses/tables/records/XUnusedRecord.java new file mode 100644 index 00000000000..dffb38c24e2 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/db2/generatedclasses/tables/records/XUnusedRecord.java @@ -0,0 +1,354 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.db2.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + */ +public class XUnusedRecord extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = 633459480; + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setId(java.lang.Integer value) { + setValue(org.jooq.test.db2.generatedclasses.tables.XUnused.ID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.lang.Integer getId() { + return getValue(org.jooq.test.db2.generatedclasses.tables.XUnused.ID); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.util.List fetchXTestCase_85List() { + return create() + .selectFrom(org.jooq.test.db2.generatedclasses.tables.XTestCase_85.X_TEST_CASE_85) + .where(org.jooq.test.db2.generatedclasses.tables.XTestCase_85.X_UNUSED_ID.equal(getValue(org.jooq.test.db2.generatedclasses.tables.XUnused.ID))) + .and(org.jooq.test.db2.generatedclasses.tables.XTestCase_85.X_UNUSED_NAME.equal(getValue(org.jooq.test.db2.generatedclasses.tables.XUnused.NAME))) + .fetch(); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.util.List fetchXUnusedList() { + return create() + .selectFrom(org.jooq.test.db2.generatedclasses.tables.XUnused.X_UNUSED) + .where(org.jooq.test.db2.generatedclasses.tables.XUnused.ID_REF.equal(getValue(org.jooq.test.db2.generatedclasses.tables.XUnused.ID))) + .and(org.jooq.test.db2.generatedclasses.tables.XUnused.NAME_REF.equal(getValue(org.jooq.test.db2.generatedclasses.tables.XUnused.NAME))) + .fetch(); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.util.List fetchT_986_1List() { + return create() + .selectFrom(org.jooq.test.db2.generatedclasses.tables.T_986_1.T_986_1) + .where(org.jooq.test.db2.generatedclasses.tables.T_986_1.REF.equal(getValue(org.jooq.test.db2.generatedclasses.tables.XUnused.ID))) + .fetch(); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.util.List fetchT_986_2List() { + return create() + .selectFrom(org.jooq.test.db2.generatedclasses.tables.T_986_2.T_986_2) + .where(org.jooq.test.db2.generatedclasses.tables.T_986_2.REF.equal(getValue(org.jooq.test.db2.generatedclasses.tables.XUnused.ID))) + .fetch(); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.util.List fetchXTestCase_64_69List() { + return create() + .selectFrom(org.jooq.test.db2.generatedclasses.tables.XTestCase_64_69.X_TEST_CASE_64_69) + .where(org.jooq.test.db2.generatedclasses.tables.XTestCase_64_69.UNUSED_ID.equal(getValue(org.jooq.test.db2.generatedclasses.tables.XUnused.ID))) + .fetch(); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setName(java.lang.String value) { + setValue(org.jooq.test.db2.generatedclasses.tables.XUnused.NAME, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.lang.String getName() { + return getValue(org.jooq.test.db2.generatedclasses.tables.XUnused.NAME); + } + + /** + * An uncommented item + */ + public void setBigInteger(java.math.BigInteger value) { + setValue(org.jooq.test.db2.generatedclasses.tables.XUnused.BIG_INTEGER, value); + } + + /** + * An uncommented item + */ + public java.math.BigInteger getBigInteger() { + return getValue(org.jooq.test.db2.generatedclasses.tables.XUnused.BIG_INTEGER); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT X_UNUSED__FK_X_UNUSED_SELF
+	 * FOREIGN KEY (ID_REF, NAME_REF)
+	 * REFERENCES LUKAS.X_UNUSED (ID, NAME)
+	 * 
+ */ + public void setIdRef(java.lang.Integer value) { + setValue(org.jooq.test.db2.generatedclasses.tables.XUnused.ID_REF, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT X_UNUSED__FK_X_UNUSED_SELF
+	 * FOREIGN KEY (ID_REF, NAME_REF)
+	 * REFERENCES LUKAS.X_UNUSED (ID, NAME)
+	 * 
+ */ + public java.lang.Integer getIdRef() { + return getValue(org.jooq.test.db2.generatedclasses.tables.XUnused.ID_REF); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT X_UNUSED__FK_X_UNUSED_SELF
+	 * FOREIGN KEY (ID_REF, NAME_REF)
+	 * REFERENCES LUKAS.X_UNUSED (ID, NAME)
+	 * 
+ */ + public org.jooq.test.db2.generatedclasses.tables.records.XUnusedRecord fetchXUnused() { + return create() + .selectFrom(org.jooq.test.db2.generatedclasses.tables.XUnused.X_UNUSED) + .where(org.jooq.test.db2.generatedclasses.tables.XUnused.ID.equal(getValue(org.jooq.test.db2.generatedclasses.tables.XUnused.ID_REF))) + .and(org.jooq.test.db2.generatedclasses.tables.XUnused.NAME.equal(getValue(org.jooq.test.db2.generatedclasses.tables.XUnused.NAME_REF))) + .fetchOne(); + } + + /** + * An uncommented item + */ + public void setClass_(java.lang.Integer value) { + setValue(org.jooq.test.db2.generatedclasses.tables.XUnused.CLASS, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getClass_() { + return getValue(org.jooq.test.db2.generatedclasses.tables.XUnused.CLASS); + } + + /** + * An uncommented item + */ + public void setFields_(java.lang.Integer value) { + setValue(org.jooq.test.db2.generatedclasses.tables.XUnused.FIELDS, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getFields_() { + return getValue(org.jooq.test.db2.generatedclasses.tables.XUnused.FIELDS); + } + + /** + * An uncommented item + */ + public void setTable_(java.lang.Integer value) { + setValue(org.jooq.test.db2.generatedclasses.tables.XUnused.TABLE, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getTable_() { + return getValue(org.jooq.test.db2.generatedclasses.tables.XUnused.TABLE); + } + + /** + * An uncommented item + */ + public void setConfiguration_(java.lang.Integer value) { + setValue(org.jooq.test.db2.generatedclasses.tables.XUnused.CONFIGURATION, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getConfiguration_() { + return getValue(org.jooq.test.db2.generatedclasses.tables.XUnused.CONFIGURATION); + } + + /** + * An uncommented item + */ + public void setUDT(java.lang.Integer value) { + setValue(org.jooq.test.db2.generatedclasses.tables.XUnused.U_D_T, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getUDT() { + return getValue(org.jooq.test.db2.generatedclasses.tables.XUnused.U_D_T); + } + + /** + * An uncommented item + */ + public void setMetaData_(java.lang.Integer value) { + setValue(org.jooq.test.db2.generatedclasses.tables.XUnused.META_DATA, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getMetaData_() { + return getValue(org.jooq.test.db2.generatedclasses.tables.XUnused.META_DATA); + } + + /** + * An uncommented item + */ + public void setValues_(java.lang.Integer value) { + setValue(org.jooq.test.db2.generatedclasses.tables.XUnused.VALUES, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getValues_() { + return getValue(org.jooq.test.db2.generatedclasses.tables.XUnused.VALUES); + } + + /** + * An uncommented item + */ + public void setType0_(java.lang.Integer value) { + setValue(org.jooq.test.db2.generatedclasses.tables.XUnused.TYPE0, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getType0_() { + return getValue(org.jooq.test.db2.generatedclasses.tables.XUnused.TYPE0); + } + + /** + * An uncommented item + */ + public void setPrimaryKey(java.lang.Integer value) { + setValue(org.jooq.test.db2.generatedclasses.tables.XUnused.PRIMARY_KEY, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getPrimaryKey() { + return getValue(org.jooq.test.db2.generatedclasses.tables.XUnused.PRIMARY_KEY); + } + + /** + * An uncommented item + */ + public void setPrimarykey(java.lang.Integer value) { + setValue(org.jooq.test.db2.generatedclasses.tables.XUnused.PRIMARYKEY, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getPrimarykey() { + return getValue(org.jooq.test.db2.generatedclasses.tables.XUnused.PRIMARYKEY); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT X_UNUSED__FK_X_UNUSED_SELF
+	 * FOREIGN KEY (ID_REF, NAME_REF)
+	 * REFERENCES LUKAS.X_UNUSED (ID, NAME)
+	 * 
+ */ + public void setNameRef(java.lang.String value) { + setValue(org.jooq.test.db2.generatedclasses.tables.XUnused.NAME_REF, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT X_UNUSED__FK_X_UNUSED_SELF
+	 * FOREIGN KEY (ID_REF, NAME_REF)
+	 * REFERENCES LUKAS.X_UNUSED (ID, NAME)
+	 * 
+ */ + public java.lang.String getNameRef() { + return getValue(org.jooq.test.db2.generatedclasses.tables.XUnused.NAME_REF); + } + + /** + * An uncommented item + */ + public void setField_737(java.math.BigDecimal value) { + setValue(org.jooq.test.db2.generatedclasses.tables.XUnused.FIELD_737, value); + } + + /** + * An uncommented item + */ + public java.math.BigDecimal getField_737() { + return getValue(org.jooq.test.db2.generatedclasses.tables.XUnused.FIELD_737); + } + + /** + * Create a detached XUnusedRecord + */ + public XUnusedRecord() { + super(org.jooq.test.db2.generatedclasses.tables.XUnused.X_UNUSED); + } +} diff --git a/jOOQ-test/src/org/jooq/test/db2/reset.sql b/jOOQ-test/src/org/jooq/test/db2/reset.sql new file mode 100644 index 00000000000..10da45d17d8 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/db2/reset.sql @@ -0,0 +1,65 @@ +DELETE FROM t_658_ref/ +DELETE FROM t_658_11/ +DELETE FROM t_658_21/ +DELETE FROM t_658_31/ +DELETE FROM t_658_12/ +DELETE FROM t_658_22/ +DELETE FROM t_658_32/ + +DELETE FROM t_book_to_book_store/ +DELETE FROM t_book_store/ +DELETE FROM t_book/ +DELETE FROM t_author/ +DELETE FROM t_language/ +DELETE FROM t_booleans/ +DELETE FROM t_dates/ +DELETE FROM t_identity/ +DELETE FROM t_identity_pk/ + +DROP SEQUENCE s_author_id/ +CREATE SEQUENCE s_author_id/ +DROP SEQUENCE s_trigger_id/ +CREATE SEQUENCE s_trigger_id/ + +INSERT INTO t_language (id, cd, description, description_english) VALUES (1, 'en', 'English', 'English')/ +INSERT INTO t_language (id, cd, description, description_english) VALUES (2, 'de', 'Deutsch', 'German')/ +INSERT INTO t_language (id, cd, description, description_english) VALUES (3, 'fr', 'Français', 'French')/ +INSERT INTO t_language (id, cd, description, description_english) VALUES (4, 'pt', null, null)/ +/ + +INSERT INTO t_658_11 VALUES ('A'), ('B'), ('C')/ +INSERT INTO t_658_21 VALUES (1), (2), (3)/ +INSERT INTO t_658_31 VALUES (1), (2), (3)/ +INSERT INTO t_658_12 VALUES ('A', 'A'), ('B', 'B'), ('C', 'C')/ +INSERT INTO t_658_22 VALUES (1, 1), (2, 2), (3, 3)/ +INSERT INTO t_658_32 VALUES (1, 1), (2, 2), (3, 3)/ +INSERT INTO t_658_ref VALUES ('A', 1, 1, 'B', 2, 2)/ + +INSERT INTO t_author VALUES (s_author_id.nextval, 'George', 'Orwell', '1903-06-25', 1903, null) +/ +INSERT INTO t_author VALUES (s_author_id.nextval, 'Paulo', 'Coelho', '1947-08-24', 1947, null) +/ + +INSERT INTO t_book VALUES (1, 1, null, null, '1984', 1948, 1, 'To know and not to know, to be conscious of complete truthfulness while telling carefully constructed lies, to hold simultaneously two opinions which cancelled out, knowing them to be contradictory and believing in both of them, to use logic against logic, to repudiate morality while laying claim to it, to believe that democracy was impossible and that the Party was the guardian of democracy, to forget, whatever it was necessary to forget, then to draw it back into memory again at the moment when it was needed, and then promptly to forget it again, and above all, to apply the same process to the process itself -- that was the ultimate subtlety; consciously to induce unconsciousness, and then, once again, to become unconscious of the act of hypnosis you had just performed. Even to understand the word ''doublethink'' involved the use of doublethink..', null) +/ +INSERT INTO t_book VALUES (2, 1, null, null, 'Animal Farm', 1945, 1, null, null) +/ +INSERT INTO t_book VALUES (3, 2, null, null, 'O Alquimista', 1988, 4, null, null) +/ +INSERT INTO t_book VALUES (4, 2, null, null, 'Brida', 1990, 2, null, null) +/ + +INSERT INTO t_book_store (name) VALUES + ('Orell Füssli'), + ('Ex Libris'), + ('Buchhandlung im Volkshaus') +/ + +INSERT INTO t_book_to_book_store VALUES + ('Orell Füssli', 1, 10), + ('Orell Füssli', 2, 10), + ('Orell Füssli', 3, 10), + ('Ex Libris', 1, 1), + ('Ex Libris', 3, 2), + ('Buchhandlung im Volkshaus', 3, 1) +/ \ No newline at end of file diff --git a/jOOQ-test/src/org/jooq/test/derby/create.sql b/jOOQ-test/src/org/jooq/test/derby/create.sql new file mode 100644 index 00000000000..5b8db1beb4c --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/derby/create.sql @@ -0,0 +1,329 @@ +DROP VIEW v_author/ +DROP VIEW v_book/ +DROP VIEW v_library/ + +DROP TRIGGER t_triggers_trigger/ + +DROP TABLE t_dates/ +DROP TABLE t_triggers/ +DROP TABLE t_book_to_book_store/ +DROP TABLE t_book_store/ +DROP TABLE t_book/ +DROP TABLE t_book_details/ +DROP TABLE t_author/ +DROP TABLE t_language/ +DROP TABLE x_test_case_71/ +DROP TABLE x_test_case_64_69/ +DROP TABLE x_test_case_85/ +DROP TABLE x_unused/ +DROP TABLE t_639_numbers_table/ +DROP TABLE t_658_ref/ +DROP TABLE t_658_11/ +DROP TABLE t_658_21/ +DROP TABLE t_658_31/ +DROP TABLE t_658_12/ +DROP TABLE t_658_22/ +DROP TABLE t_658_32/ +DROP TABLE t_725_lob_test/ +DROP TABLE t_785/ +DROP TABLE t_booleans/ +DROP TABLE t_identity/ +DROP TABLE t_identity_pk/ + +CREATE SCHEMA test AUTHORIZATION test +/ + +CREATE TABLE t_identity_pk ( + id INTEGER GENERATED BY DEFAULT AS IDENTITY, + val int, + + CONSTRAINT pk_t_identity_pk PRIMARY KEY (id) +) +/ + +CREATE TABLE t_identity ( + id INTEGER GENERATED BY DEFAULT AS IDENTITY, + val int +) +/ + +CREATE TABLE t_dates ( + id int, + d date, + t time, + ts timestamp, + d_int int, + ts_bigint bigint, + + CONSTRAINT pk_t_dates PRIMARY KEY (id) +) +/ + +CREATE TABLE t_booleans ( + id int, + one_zero int, + true_false_lc varchar(5), + true_false_uc varchar(5), + yes_no_lc varchar(3), + yes_no_uc varchar(3), + y_n_lc char(1), + y_n_uc char(1), + vc_boolean varchar(1), + c_boolean char(1), + n_boolean int, + + CONSTRAINT pk_t_booleans PRIMARY KEY (id) +) +/ + +CREATE TABLE t_triggers ( + id_generated INTEGER GENERATED ALWAYS AS IDENTITY, + id int, + counter int, + + CONSTRAINT pk_t_triggers PRIMARY KEY (id_generated) +) +/ + +CREATE TRIGGER t_triggers_trigger +AFTER INSERT +ON t_triggers +REFERENCING NEW AS new +FOR EACH ROW + update t_triggers + set id = id_generated, + counter = id_generated * 2 +/ + +CREATE TABLE t_language ( + cd CHAR(2) NOT NULL, + description VARCHAR(50), + description_english VARCHAR(50), + id INTEGER NOT NULL, + + CONSTRAINT pk_t_language PRIMARY KEY (ID) +) +/ + +CREATE TABLE t_658_11 ( + id CHAR(3) NOT NULL, + + CONSTRAINT pk_t_658_11 PRIMARY KEY (id) +) +/ + +CREATE TABLE t_658_21 ( + id INT NOT NULL, + + CONSTRAINT pk_t_658_21 PRIMARY KEY (id) +) +/ + +CREATE TABLE t_658_31 ( + id BIGINT NOT NULL, + + CONSTRAINT pk_t_658_31 PRIMARY KEY (id) +) +/ + +CREATE TABLE t_658_12 ( + id CHAR(3) NOT NULL, + cd CHAR(3) NOT NULL, + + CONSTRAINT pk_t_658_12 PRIMARY KEY (id) +) +/ + +CREATE TABLE t_658_22 ( + id INT NOT NULL, + cd INT NOT NULL, + + CONSTRAINT pk_t_658_22 PRIMARY KEY (id) +) +/ + +CREATE TABLE t_658_32 ( + id BIGINT NOT NULL, + cd BIGINT NOT NULL, + + CONSTRAINT pk_t_658_32 PRIMARY KEY (id) +) +/ + +CREATE TABLE t_658_ref ( + ref_11 char(3), + ref_21 int, + ref_31 bigint, + ref_12 char(3), + ref_22 int, + ref_32 bigint, + + CONSTRAINT fk_t_658_11 FOREIGN KEY (ref_11) REFERENCES t_658_11(id), + CONSTRAINT fk_t_658_21 FOREIGN KEY (ref_21) REFERENCES t_658_21(id), + CONSTRAINT fk_t_658_31 FOREIGN KEY (ref_31) REFERENCES t_658_31(id), + CONSTRAINT fk_t_658_12 FOREIGN KEY (ref_12) REFERENCES t_658_12(id), + CONSTRAINT fk_t_658_22 FOREIGN KEY (ref_22) REFERENCES t_658_22(id), + CONSTRAINT fk_t_658_32 FOREIGN KEY (ref_32) REFERENCES t_658_32(id) +) +/ + +CREATE TABLE t_725_lob_test ( + ID int NOT NULL, + LOB BLOB, + + CONSTRAINT pk_t_725_lob_test PRIMARY KEY (id) +) +/ + +CREATE TABLE t_785 ( + ID int, + NAME varchar(50), + VALUE varchar(50) +) +/ + +CREATE TABLE t_author ( + ID INT NOT NULL, + FIRST_NAME VARCHAR(50), + LAST_NAME VARCHAR(50) NOT NULL, + DATE_OF_BIRTH DATE, + YEAR_OF_BIRTH INT, + ADDRESS VARCHAR(50), + + CONSTRAINT pk_t_author PRIMARY KEY (ID) +) +/ + +CREATE TABLE t_book_details ( + ID INT, + + CONSTRAINT pk_t_book_details PRIMARY KEY (ID) +) +/ + +CREATE TABLE t_book ( + ID INT NOT NULL, + AUTHOR_ID INT NOT NULL, + co_author_id int, + DETAILS_ID INT, + TITLE VARCHAR(400) NOT NULL, + PUBLISHED_IN INT NOT NULL, + LANGUAGE_ID INT NOT NULL, + CONTENT_TEXT CLOB, + CONTENT_PDF BLOB, + + CONSTRAINT pk_t_book PRIMARY KEY (ID), + CONSTRAINT fk_t_book_author_id FOREIGN KEY (AUTHOR_ID) REFERENCES T_AUTHOR(ID), + CONSTRAINT fk_t_book_co_author_id FOREIGN KEY (CO_AUTHOR_ID) REFERENCES T_AUTHOR(ID), + CONSTRAINT fk_t_book_details_id FOREIGN KEY (DETAILS_ID) REFERENCES T_BOOK_DETAILS(ID), + CONSTRAINT fk_t_book_language_id FOREIGN KEY (LANGUAGE_ID) REFERENCES T_LANGUAGE(ID) +) +/ + + +CREATE TABLE t_book_store ( + name VARCHAR(400) NOT NULL, + + CONSTRAINT uk_t_book_store_name UNIQUE(name) +) +/ + + +CREATE TABLE t_book_to_book_store ( + book_store_name VARCHAR(400) NOT NULL, + book_id INTEGER NOT NULL, + stock INTEGER, + + CONSTRAINT pk_b2bs PRIMARY KEY(book_store_name, book_id), + CONSTRAINT fk_b2bs_bs_name FOREIGN KEY (book_store_name) + REFERENCES t_book_store (name) + ON DELETE CASCADE, + CONSTRAINT fk_b2bs_b_id FOREIGN KEY (book_id) + REFERENCES t_book (id) + ON DELETE CASCADE +) +/ + + +CREATE TABLE x_unused ( + ID INT NOT NULL, + NAME VARCHAR(10) NOT NULL, + BIG_INTEGER DECIMAL(25), + ID_REF INT, + CLASS INT, + FIELDS INT, + CONFIGURATION INT, + U_D_T INT, + META_DATA INT, + TYPE0 INT, + PRIMARY_KEY INT, + PRIMARYKEY INT, + NAME_REF VARCHAR(10), + "FIELD 737" DECIMAL(25, 2), + + CONSTRAINT pk_x_unused PRIMARY KEY(ID, NAME), + CONSTRAINT uk_x_unused_id UNIQUE(ID), + CONSTRAINT fk_x_unused_self FOREIGN KEY(ID_REF, NAME_REF) REFERENCES X_UNUSED(ID, NAME) +) +/ + +CREATE TABLE t_639_numbers_table ( + ID INT NOT NULL, + SHORT SMALLINT, + "INTEGER" INT, + LONG BIGINT, + BYTE_DECIMAL DECIMAL(2, 0), + SHORT_DECIMAL DECIMAL(4, 0), + INTEGER_DECIMAL DECIMAL(9, 0), + LONG_DECIMAL DECIMAL(18, 0), + BIG_INTEGER DECIMAL(22, 0), + BIG_DECIMAL DECIMAL(22, 5), + "FLOAT" REAL, + "DOUBLE" DOUBLE, + + CONSTRAINT pk_t_639_numbers_table PRIMARY KEY(ID) +) +/ + +CREATE TABLE x_test_case_64_69 ( + ID INT NOT NULL, + UNUSED_ID INT, + + CONSTRAINT pk_x_test_case_64_69 PRIMARY KEY(ID), + CONSTRAINT fk_x_test_case_64_69a FOREIGN KEY(UNUSED_ID) REFERENCES X_UNUSED(ID), + CONSTRAINT fk_x_test_case_64_69b FOREIGN KEY(UNUSED_ID) REFERENCES X_UNUSED(ID) +) +/ + +CREATE TABLE x_test_case_71 ( + ID INT NOT NULL, + TEST_CASE_64_69_ID INT, + + CONSTRAINT pk_x_test_case_71 PRIMARY KEY(ID), + CONSTRAINT fk_x_test_case_71 FOREIGN KEY(TEST_CASE_64_69_ID) REFERENCES X_TEST_CASE_64_69(ID) +) +/ + +CREATE TABLE x_test_case_85 ( + id int NOT NULL, + x_unused_id int, + x_unused_name VARCHAR(10), + + CONSTRAINT pk_x_test_case_85 PRIMARY KEY(ID), + CONSTRAINT fk_x_test_case_85 FOREIGN KEY(x_unused_id, x_unused_name) REFERENCES X_UNUSED(id, name) +) +/ + +CREATE VIEW V_LIBRARY (AUTHOR, TITLE) AS +SELECT T_AUTHOR.FIRST_NAME || ' ' || T_AUTHOR.LAST_NAME, T_BOOK.TITLE +FROM T_AUTHOR JOIN T_BOOK ON T_BOOK.AUTHOR_ID = T_AUTHOR.ID +/ + +CREATE VIEW v_author AS +SELECT * FROM t_author +/ + +CREATE VIEW v_book AS +SELECT * FROM t_book +/ + diff --git a/jOOQ-test/src/org/jooq/test/derby/generatedclasses/Keys.java b/jOOQ-test/src/org/jooq/test/derby/generatedclasses/Keys.java new file mode 100644 index 00000000000..68761927b13 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/derby/generatedclasses/Keys.java @@ -0,0 +1,50 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.derby.generatedclasses; + +/** + * This class is generated by jOOQ. + * + * A class modelling foreign key relationships between tables of the TEST schema + */ +@SuppressWarnings({"unchecked"}) +public class Keys extends org.jooq.impl.AbstractKeys { + + // IDENTITY definitions + public static final org.jooq.Identity IDENTITY_T_IDENTITY = createIdentity(org.jooq.test.derby.generatedclasses.tables.TIdentity.T_IDENTITY, org.jooq.test.derby.generatedclasses.tables.TIdentity.ID); + public static final org.jooq.Identity IDENTITY_T_IDENTITY_PK = createIdentity(org.jooq.test.derby.generatedclasses.tables.TIdentityPk.T_IDENTITY_PK, org.jooq.test.derby.generatedclasses.tables.TIdentityPk.ID); + public static final org.jooq.Identity IDENTITY_T_TRIGGERS = createIdentity(org.jooq.test.derby.generatedclasses.tables.TTriggers.T_TRIGGERS, org.jooq.test.derby.generatedclasses.tables.TTriggers.ID_GENERATED); + + // UNIQUE and PRIMARY KEY definitions + public static final org.jooq.UniqueKey PK_T_639_NUMBERS_TABLE = createUniqueKey(org.jooq.test.derby.generatedclasses.tables.T_639NumbersTable.T_639_NUMBERS_TABLE, org.jooq.test.derby.generatedclasses.tables.T_639NumbersTable.ID); + public static final org.jooq.UniqueKey PK_T_725_LOB_TEST = createUniqueKey(org.jooq.test.derby.generatedclasses.tables.T_725LobTest.T_725_LOB_TEST, org.jooq.test.derby.generatedclasses.tables.T_725LobTest.ID); + public static final org.jooq.UniqueKey PK_T_AUTHOR = createUniqueKey(org.jooq.test.derby.generatedclasses.tables.TAuthor.T_AUTHOR, org.jooq.test.derby.generatedclasses.tables.TAuthor.ID); + public static final org.jooq.UniqueKey PK_T_BOOK = createUniqueKey(org.jooq.test.derby.generatedclasses.tables.TBook.T_BOOK, org.jooq.test.derby.generatedclasses.tables.TBook.ID); + public static final org.jooq.UniqueKey UK_T_BOOK_STORE_NAME = createUniqueKey(org.jooq.test.derby.generatedclasses.tables.TBookStore.T_BOOK_STORE, org.jooq.test.derby.generatedclasses.tables.TBookStore.NAME); + public static final org.jooq.UniqueKey PK_B2BS = createUniqueKey(org.jooq.test.derby.generatedclasses.tables.TBookToBookStore.T_BOOK_TO_BOOK_STORE, org.jooq.test.derby.generatedclasses.tables.TBookToBookStore.BOOK_STORE_NAME, org.jooq.test.derby.generatedclasses.tables.TBookToBookStore.BOOK_ID); + public static final org.jooq.UniqueKey PK_T_BOOLEANS = createUniqueKey(org.jooq.test.derby.generatedclasses.tables.TBooleans.T_BOOLEANS, org.jooq.test.derby.generatedclasses.tables.TBooleans.ID); + public static final org.jooq.UniqueKey PK_T_DATES = createUniqueKey(org.jooq.test.derby.generatedclasses.tables.TDates.T_DATES, org.jooq.test.derby.generatedclasses.tables.TDates.ID); + public static final org.jooq.UniqueKey PK_T_IDENTITY_PK = createUniqueKey(org.jooq.test.derby.generatedclasses.tables.TIdentityPk.T_IDENTITY_PK, org.jooq.test.derby.generatedclasses.tables.TIdentityPk.ID); + public static final org.jooq.UniqueKey PK_T_TRIGGERS = createUniqueKey(org.jooq.test.derby.generatedclasses.tables.TTriggers.T_TRIGGERS, org.jooq.test.derby.generatedclasses.tables.TTriggers.ID_GENERATED); + public static final org.jooq.UniqueKey PK_X_TEST_CASE_64_69 = createUniqueKey(org.jooq.test.derby.generatedclasses.tables.XTestCase_64_69.X_TEST_CASE_64_69, org.jooq.test.derby.generatedclasses.tables.XTestCase_64_69.ID); + public static final org.jooq.UniqueKey PK_X_TEST_CASE_71 = createUniqueKey(org.jooq.test.derby.generatedclasses.tables.XTestCase_71.X_TEST_CASE_71, org.jooq.test.derby.generatedclasses.tables.XTestCase_71.ID); + public static final org.jooq.UniqueKey PK_X_TEST_CASE_85 = createUniqueKey(org.jooq.test.derby.generatedclasses.tables.XTestCase_85.X_TEST_CASE_85, org.jooq.test.derby.generatedclasses.tables.XTestCase_85.ID); + public static final org.jooq.UniqueKey PK_X_UNUSED = createUniqueKey(org.jooq.test.derby.generatedclasses.tables.XUnused.X_UNUSED, org.jooq.test.derby.generatedclasses.tables.XUnused.ID, org.jooq.test.derby.generatedclasses.tables.XUnused.NAME); + public static final org.jooq.UniqueKey UK_X_UNUSED_ID = createUniqueKey(org.jooq.test.derby.generatedclasses.tables.XUnused.X_UNUSED, org.jooq.test.derby.generatedclasses.tables.XUnused.ID); + + // FOREIGN KEY definitions + public static final org.jooq.ForeignKey FK_T_BOOK_AUTHOR_ID = createForeignKey(PK_T_AUTHOR, org.jooq.test.derby.generatedclasses.tables.TBook.T_BOOK, org.jooq.test.derby.generatedclasses.tables.TBook.AUTHOR_ID); + public static final org.jooq.ForeignKey FK_T_BOOK_CO_AUTHOR_ID = createForeignKey(PK_T_AUTHOR, org.jooq.test.derby.generatedclasses.tables.TBook.T_BOOK, org.jooq.test.derby.generatedclasses.tables.TBook.CO_AUTHOR_ID); + public static final org.jooq.ForeignKey FK_B2BS_BS_NAME = createForeignKey(UK_T_BOOK_STORE_NAME, org.jooq.test.derby.generatedclasses.tables.TBookToBookStore.T_BOOK_TO_BOOK_STORE, org.jooq.test.derby.generatedclasses.tables.TBookToBookStore.BOOK_STORE_NAME); + public static final org.jooq.ForeignKey FK_B2BS_B_ID = createForeignKey(PK_T_BOOK, org.jooq.test.derby.generatedclasses.tables.TBookToBookStore.T_BOOK_TO_BOOK_STORE, org.jooq.test.derby.generatedclasses.tables.TBookToBookStore.BOOK_ID); + public static final org.jooq.ForeignKey FK_X_TEST_CASE_64_69A = createForeignKey(UK_X_UNUSED_ID, org.jooq.test.derby.generatedclasses.tables.XTestCase_64_69.X_TEST_CASE_64_69, org.jooq.test.derby.generatedclasses.tables.XTestCase_64_69.UNUSED_ID); + public static final org.jooq.ForeignKey FK_X_TEST_CASE_71 = createForeignKey(PK_X_TEST_CASE_64_69, org.jooq.test.derby.generatedclasses.tables.XTestCase_71.X_TEST_CASE_71, org.jooq.test.derby.generatedclasses.tables.XTestCase_71.TEST_CASE_64_69_ID); + public static final org.jooq.ForeignKey FK_X_TEST_CASE_85 = createForeignKey(PK_X_UNUSED, org.jooq.test.derby.generatedclasses.tables.XTestCase_85.X_TEST_CASE_85, org.jooq.test.derby.generatedclasses.tables.XTestCase_85.X_UNUSED_ID, org.jooq.test.derby.generatedclasses.tables.XTestCase_85.X_UNUSED_NAME); + public static final org.jooq.ForeignKey FK_X_UNUSED_SELF = createForeignKey(PK_X_UNUSED, org.jooq.test.derby.generatedclasses.tables.XUnused.X_UNUSED, org.jooq.test.derby.generatedclasses.tables.XUnused.ID_REF, org.jooq.test.derby.generatedclasses.tables.XUnused.NAME_REF); + + /** + * No instances + */ + private Keys() {} +} diff --git a/jOOQ-test/src/org/jooq/test/derby/generatedclasses/Sequences.java b/jOOQ-test/src/org/jooq/test/derby/generatedclasses/Sequences.java new file mode 100644 index 00000000000..90ca02d0337 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/derby/generatedclasses/Sequences.java @@ -0,0 +1,22 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.derby.generatedclasses; + +/** + * This class is generated by jOOQ. + * + * Convenience access to all sequences in TEST + */ +public final class Sequences { + + /** + * The sequence TEST.S_AUTHOR_ID + */ + public static final org.jooq.Sequence S_AUTHOR_ID = new org.jooq.impl.SequenceImpl("S_AUTHOR_ID", org.jooq.test.derby.generatedclasses.Test.TEST, org.jooq.impl.SQLDataType.INTEGER); + + /** + * No instances + */ + private Sequences() {} +} diff --git a/jOOQ-test/src/org/jooq/test/derby/generatedclasses/Tables.java b/jOOQ-test/src/org/jooq/test/derby/generatedclasses/Tables.java new file mode 100644 index 00000000000..0bb213fe64a --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/derby/generatedclasses/Tables.java @@ -0,0 +1,117 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.derby.generatedclasses; + +/** + * This class is generated by jOOQ. + * + * Convenience access to all tables in TEST + */ +public final class Tables { + + /** + * The table TEST.T_639_NUMBERS_TABLE + */ + public static org.jooq.test.derby.generatedclasses.tables.T_639NumbersTable T_639_NUMBERS_TABLE = org.jooq.test.derby.generatedclasses.tables.T_639NumbersTable.T_639_NUMBERS_TABLE; + + /** + * The table TEST.T_658_REF + */ + public static org.jooq.test.derby.generatedclasses.tables.T_658Ref T_658_REF = org.jooq.test.derby.generatedclasses.tables.T_658Ref.T_658_REF; + + /** + * The table TEST.T_725_LOB_TEST + */ + public static org.jooq.test.derby.generatedclasses.tables.T_725LobTest T_725_LOB_TEST = org.jooq.test.derby.generatedclasses.tables.T_725LobTest.T_725_LOB_TEST; + + /** + * The table TEST.T_785 + */ + public static org.jooq.test.derby.generatedclasses.tables.T_785 T_785 = org.jooq.test.derby.generatedclasses.tables.T_785.T_785; + + /** + * The table TEST.T_AUTHOR + */ + public static org.jooq.test.derby.generatedclasses.tables.TAuthor T_AUTHOR = org.jooq.test.derby.generatedclasses.tables.TAuthor.T_AUTHOR; + + /** + * The table TEST.T_BOOK + */ + public static org.jooq.test.derby.generatedclasses.tables.TBook T_BOOK = org.jooq.test.derby.generatedclasses.tables.TBook.T_BOOK; + + /** + * The table TEST.T_BOOK_STORE + */ + public static org.jooq.test.derby.generatedclasses.tables.TBookStore T_BOOK_STORE = org.jooq.test.derby.generatedclasses.tables.TBookStore.T_BOOK_STORE; + + /** + * The table TEST.T_BOOK_TO_BOOK_STORE + */ + public static org.jooq.test.derby.generatedclasses.tables.TBookToBookStore T_BOOK_TO_BOOK_STORE = org.jooq.test.derby.generatedclasses.tables.TBookToBookStore.T_BOOK_TO_BOOK_STORE; + + /** + * The table TEST.T_BOOLEANS + */ + public static org.jooq.test.derby.generatedclasses.tables.TBooleans T_BOOLEANS = org.jooq.test.derby.generatedclasses.tables.TBooleans.T_BOOLEANS; + + /** + * The table TEST.T_DATES + */ + public static org.jooq.test.derby.generatedclasses.tables.TDates T_DATES = org.jooq.test.derby.generatedclasses.tables.TDates.T_DATES; + + /** + * The table TEST.T_IDENTITY + */ + public static org.jooq.test.derby.generatedclasses.tables.TIdentity T_IDENTITY = org.jooq.test.derby.generatedclasses.tables.TIdentity.T_IDENTITY; + + /** + * The table TEST.T_IDENTITY_PK + */ + public static org.jooq.test.derby.generatedclasses.tables.TIdentityPk T_IDENTITY_PK = org.jooq.test.derby.generatedclasses.tables.TIdentityPk.T_IDENTITY_PK; + + /** + * The table TEST.T_TRIGGERS + */ + public static org.jooq.test.derby.generatedclasses.tables.TTriggers T_TRIGGERS = org.jooq.test.derby.generatedclasses.tables.TTriggers.T_TRIGGERS; + + /** + * The table TEST.V_AUTHOR + */ + public static org.jooq.test.derby.generatedclasses.tables.VAuthor V_AUTHOR = org.jooq.test.derby.generatedclasses.tables.VAuthor.V_AUTHOR; + + /** + * The table TEST.V_BOOK + */ + public static org.jooq.test.derby.generatedclasses.tables.VBook V_BOOK = org.jooq.test.derby.generatedclasses.tables.VBook.V_BOOK; + + /** + * The table TEST.V_LIBRARY + */ + public static org.jooq.test.derby.generatedclasses.tables.VLibrary V_LIBRARY = org.jooq.test.derby.generatedclasses.tables.VLibrary.V_LIBRARY; + + /** + * The table TEST.X_TEST_CASE_64_69 + */ + public static org.jooq.test.derby.generatedclasses.tables.XTestCase_64_69 X_TEST_CASE_64_69 = org.jooq.test.derby.generatedclasses.tables.XTestCase_64_69.X_TEST_CASE_64_69; + + /** + * The table TEST.X_TEST_CASE_71 + */ + public static org.jooq.test.derby.generatedclasses.tables.XTestCase_71 X_TEST_CASE_71 = org.jooq.test.derby.generatedclasses.tables.XTestCase_71.X_TEST_CASE_71; + + /** + * The table TEST.X_TEST_CASE_85 + */ + public static org.jooq.test.derby.generatedclasses.tables.XTestCase_85 X_TEST_CASE_85 = org.jooq.test.derby.generatedclasses.tables.XTestCase_85.X_TEST_CASE_85; + + /** + * The table TEST.X_UNUSED + */ + public static org.jooq.test.derby.generatedclasses.tables.XUnused X_UNUSED = org.jooq.test.derby.generatedclasses.tables.XUnused.X_UNUSED; + + /** + * No instances + */ + private Tables() {} +} diff --git a/jOOQ-test/src/org/jooq/test/derby/generatedclasses/Test.java b/jOOQ-test/src/org/jooq/test/derby/generatedclasses/Test.java new file mode 100644 index 00000000000..1fbc78a336f --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/derby/generatedclasses/Test.java @@ -0,0 +1,54 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.derby.generatedclasses; + +/** + * This class is generated by jOOQ. + */ +public class Test extends org.jooq.impl.SchemaImpl { + + private static final long serialVersionUID = -1248900415; + + /** + * The singleton instance of TEST + */ + public static final Test TEST = new Test(); + + /** + * No further instances allowed + */ + private Test() { + super("TEST"); + } + + @Override + public final java.util.List> getSequences() { + return java.util.Arrays.>asList(org.jooq.test.derby.generatedclasses.Sequences.S_AUTHOR_ID); + } + + @Override + public final java.util.List> getTables() { + return java.util.Arrays.>asList( + org.jooq.test.derby.generatedclasses.tables.T_639NumbersTable.T_639_NUMBERS_TABLE, + org.jooq.test.derby.generatedclasses.tables.T_658Ref.T_658_REF, + org.jooq.test.derby.generatedclasses.tables.T_725LobTest.T_725_LOB_TEST, + org.jooq.test.derby.generatedclasses.tables.T_785.T_785, + org.jooq.test.derby.generatedclasses.tables.TAuthor.T_AUTHOR, + org.jooq.test.derby.generatedclasses.tables.TBook.T_BOOK, + org.jooq.test.derby.generatedclasses.tables.TBookStore.T_BOOK_STORE, + org.jooq.test.derby.generatedclasses.tables.TBookToBookStore.T_BOOK_TO_BOOK_STORE, + org.jooq.test.derby.generatedclasses.tables.TBooleans.T_BOOLEANS, + org.jooq.test.derby.generatedclasses.tables.TDates.T_DATES, + org.jooq.test.derby.generatedclasses.tables.TIdentity.T_IDENTITY, + org.jooq.test.derby.generatedclasses.tables.TIdentityPk.T_IDENTITY_PK, + org.jooq.test.derby.generatedclasses.tables.TTriggers.T_TRIGGERS, + org.jooq.test.derby.generatedclasses.tables.VAuthor.V_AUTHOR, + org.jooq.test.derby.generatedclasses.tables.VBook.V_BOOK, + org.jooq.test.derby.generatedclasses.tables.VLibrary.V_LIBRARY, + org.jooq.test.derby.generatedclasses.tables.XTestCase_64_69.X_TEST_CASE_64_69, + org.jooq.test.derby.generatedclasses.tables.XTestCase_71.X_TEST_CASE_71, + org.jooq.test.derby.generatedclasses.tables.XTestCase_85.X_TEST_CASE_85, + org.jooq.test.derby.generatedclasses.tables.XUnused.X_UNUSED); + } +} diff --git a/jOOQ-test/src/org/jooq/test/derby/generatedclasses/TestFactory.java b/jOOQ-test/src/org/jooq/test/derby/generatedclasses/TestFactory.java new file mode 100644 index 00000000000..3ebb925d5d7 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/derby/generatedclasses/TestFactory.java @@ -0,0 +1,41 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.derby.generatedclasses; + +/** + * This class is generated by jOOQ. + */ +public class TestFactory extends org.jooq.util.derby.DerbyFactory { + + private static final long serialVersionUID = 1130246897; + + /** + * Create a factory with a connection + * + * @param connection The connection to use with objects created from this factory + */ + public TestFactory(java.sql.Connection connection) { + super(connection); + } + + /** + * Create a factory with a connection and a schema mapping + * + * @deprecated - 2.0.5 - Use {@link #TestFactory(java.sql.Connection, org.jooq.conf.Settings)} instead + */ + @Deprecated + public TestFactory(java.sql.Connection connection, org.jooq.SchemaMapping mapping) { + super(connection, mapping); + } + + /** + * Create a factory with a connection and some settings + * + * @param connection The connection to use with objects created from this factory + * @param settings The settings to apply to objects created from this factory + */ + public TestFactory(java.sql.Connection connection, org.jooq.conf.Settings settings) { + super(connection, settings); + } +} diff --git a/jOOQ-test/src/org/jooq/test/derby/generatedclasses/enums/TLanguage.java b/jOOQ-test/src/org/jooq/test/derby/generatedclasses/enums/TLanguage.java new file mode 100644 index 00000000000..898e7438790 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/derby/generatedclasses/enums/TLanguage.java @@ -0,0 +1,65 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.derby.generatedclasses.enums; + +/** + * This class is generated by jOOQ. + */ +public enum TLanguage implements org.jooq.MasterDataType { + + /** + * English + */ + en(1, "en", "English"), + + /** + * Deutsch + */ + de(2, "de", "Deutsch"), + + /** + * Français + */ + fr(3, "fr", "Français"), + pt(4, "pt", null), + ; + + private final java.lang.Integer id; + private final java.lang.String cd; + private final java.lang.String description; + + private TLanguage(java.lang.Integer id, java.lang.String cd, java.lang.String description) { + this.id = id; + this.cd = cd; + this.description = description; + } + + @Override + public java.lang.Integer getPrimaryKey() { + return id; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final java.lang.Integer getId() { + return id; + } + + /** + * An uncommented item + */ + public final java.lang.String getCd() { + return cd; + } + + /** + * An uncommented item + */ + public final java.lang.String getDescription() { + return description; + } +} diff --git a/jOOQ-test/src/org/jooq/test/derby/generatedclasses/enums/T_658_11.java b/jOOQ-test/src/org/jooq/test/derby/generatedclasses/enums/T_658_11.java new file mode 100644 index 00000000000..ffdded9f8ae --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/derby/generatedclasses/enums/T_658_11.java @@ -0,0 +1,46 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.derby.generatedclasses.enums; + +/** + * This class is generated by jOOQ. + */ +public enum T_658_11 implements org.jooq.MasterDataType { + + /** + * A + */ + A__("A "), + + /** + * B + */ + B__("B "), + + /** + * C + */ + C__("C "), + ; + + private final java.lang.String id; + + private T_658_11(java.lang.String id) { + this.id = id; + } + + @Override + public java.lang.String getPrimaryKey() { + return id; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final java.lang.String getId() { + return id; + } +} diff --git a/jOOQ-test/src/org/jooq/test/derby/generatedclasses/enums/T_658_12.java b/jOOQ-test/src/org/jooq/test/derby/generatedclasses/enums/T_658_12.java new file mode 100644 index 00000000000..7e8113f7166 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/derby/generatedclasses/enums/T_658_12.java @@ -0,0 +1,55 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.derby.generatedclasses.enums; + +/** + * This class is generated by jOOQ. + */ +public enum T_658_12 implements org.jooq.MasterDataType { + + /** + * A + */ + A__("A ", "A "), + + /** + * B + */ + B__("B ", "B "), + + /** + * C + */ + C__("C ", "C "), + ; + + private final java.lang.String id; + private final java.lang.String cd; + + private T_658_12(java.lang.String id, java.lang.String cd) { + this.id = id; + this.cd = cd; + } + + @Override + public java.lang.String getPrimaryKey() { + return id; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final java.lang.String getId() { + return id; + } + + /** + * An uncommented item + */ + public final java.lang.String getCd() { + return cd; + } +} diff --git a/jOOQ-test/src/org/jooq/test/derby/generatedclasses/enums/T_658_21.java b/jOOQ-test/src/org/jooq/test/derby/generatedclasses/enums/T_658_21.java new file mode 100644 index 00000000000..1c5cd8dc378 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/derby/generatedclasses/enums/T_658_21.java @@ -0,0 +1,46 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.derby.generatedclasses.enums; + +/** + * This class is generated by jOOQ. + */ +public enum T_658_21 implements org.jooq.MasterDataType { + + /** + * 1 + */ + _1(1), + + /** + * 2 + */ + _2(2), + + /** + * 3 + */ + _3(3), + ; + + private final java.lang.Integer id; + + private T_658_21(java.lang.Integer id) { + this.id = id; + } + + @Override + public java.lang.Integer getPrimaryKey() { + return id; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final java.lang.Integer getId() { + return id; + } +} diff --git a/jOOQ-test/src/org/jooq/test/derby/generatedclasses/enums/T_658_22.java b/jOOQ-test/src/org/jooq/test/derby/generatedclasses/enums/T_658_22.java new file mode 100644 index 00000000000..1f2b8c81713 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/derby/generatedclasses/enums/T_658_22.java @@ -0,0 +1,55 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.derby.generatedclasses.enums; + +/** + * This class is generated by jOOQ. + */ +public enum T_658_22 implements org.jooq.MasterDataType { + + /** + * 1 + */ + _1(1, 1), + + /** + * 2 + */ + _2(2, 2), + + /** + * 3 + */ + _3(3, 3), + ; + + private final java.lang.Integer id; + private final java.lang.Integer cd; + + private T_658_22(java.lang.Integer id, java.lang.Integer cd) { + this.id = id; + this.cd = cd; + } + + @Override + public java.lang.Integer getPrimaryKey() { + return id; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final java.lang.Integer getId() { + return id; + } + + /** + * An uncommented item + */ + public final java.lang.Integer getCd() { + return cd; + } +} diff --git a/jOOQ-test/src/org/jooq/test/derby/generatedclasses/enums/T_658_31.java b/jOOQ-test/src/org/jooq/test/derby/generatedclasses/enums/T_658_31.java new file mode 100644 index 00000000000..6725df7e950 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/derby/generatedclasses/enums/T_658_31.java @@ -0,0 +1,46 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.derby.generatedclasses.enums; + +/** + * This class is generated by jOOQ. + */ +public enum T_658_31 implements org.jooq.MasterDataType { + + /** + * 1 + */ + _1(1L), + + /** + * 2 + */ + _2(2L), + + /** + * 3 + */ + _3(3L), + ; + + private final java.lang.Long id; + + private T_658_31(java.lang.Long id) { + this.id = id; + } + + @Override + public java.lang.Long getPrimaryKey() { + return id; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final java.lang.Long getId() { + return id; + } +} diff --git a/jOOQ-test/src/org/jooq/test/derby/generatedclasses/enums/T_658_32.java b/jOOQ-test/src/org/jooq/test/derby/generatedclasses/enums/T_658_32.java new file mode 100644 index 00000000000..f25352a495f --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/derby/generatedclasses/enums/T_658_32.java @@ -0,0 +1,55 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.derby.generatedclasses.enums; + +/** + * This class is generated by jOOQ. + */ +public enum T_658_32 implements org.jooq.MasterDataType { + + /** + * 1 + */ + _1(1L, 1L), + + /** + * 2 + */ + _2(2L, 2L), + + /** + * 3 + */ + _3(3L, 3L), + ; + + private final java.lang.Long id; + private final java.lang.Long cd; + + private T_658_32(java.lang.Long id, java.lang.Long cd) { + this.id = id; + this.cd = cd; + } + + @Override + public java.lang.Long getPrimaryKey() { + return id; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final java.lang.Long getId() { + return id; + } + + /** + * An uncommented item + */ + public final java.lang.Long getCd() { + return cd; + } +} diff --git a/jOOQ-test/src/org/jooq/test/derby/generatedclasses/tables/TAuthor.java b/jOOQ-test/src/org/jooq/test/derby/generatedclasses/tables/TAuthor.java new file mode 100644 index 00000000000..abcc4a99046 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/derby/generatedclasses/tables/TAuthor.java @@ -0,0 +1,80 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.derby.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class TAuthor extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = -242593401; + + /** + * The singleton instance of TEST.T_AUTHOR + */ + public static final org.jooq.test.derby.generatedclasses.tables.TAuthor T_AUTHOR = new org.jooq.test.derby.generatedclasses.tables.TAuthor(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.derby.generatedclasses.tables.records.TAuthorRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public static final org.jooq.TableField ID = createField("ID", org.jooq.impl.SQLDataType.INTEGER, T_AUTHOR); + + /** + * An uncommented item + */ + public static final org.jooq.TableField FIRST_NAME = createField("FIRST_NAME", org.jooq.impl.SQLDataType.VARCHAR, T_AUTHOR); + + /** + * An uncommented item + */ + public static final org.jooq.TableField LAST_NAME = createField("LAST_NAME", org.jooq.impl.SQLDataType.VARCHAR, T_AUTHOR); + + /** + * An uncommented item + */ + public static final org.jooq.TableField DATE_OF_BIRTH = createField("DATE_OF_BIRTH", org.jooq.impl.SQLDataType.DATE, T_AUTHOR); + + /** + * An uncommented item + */ + public static final org.jooq.TableField YEAR_OF_BIRTH = createField("YEAR_OF_BIRTH", org.jooq.impl.SQLDataType.INTEGER, T_AUTHOR); + + /** + * An uncommented item + */ + public static final org.jooq.TableField ADDRESS = createField("ADDRESS", org.jooq.impl.SQLDataType.VARCHAR, T_AUTHOR); + + /** + * No further instances allowed + */ + private TAuthor() { + super("T_AUTHOR", org.jooq.test.derby.generatedclasses.Test.TEST); + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.test.derby.generatedclasses.Keys.PK_T_AUTHOR; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.test.derby.generatedclasses.Keys.PK_T_AUTHOR); + } +} diff --git a/jOOQ-test/src/org/jooq/test/derby/generatedclasses/tables/TBook.java b/jOOQ-test/src/org/jooq/test/derby/generatedclasses/tables/TBook.java new file mode 100644 index 00000000000..0bdce406075 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/derby/generatedclasses/tables/TBook.java @@ -0,0 +1,119 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.derby.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class TBook extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = -1795200899; + + /** + * The singleton instance of TEST.T_BOOK + */ + public static final org.jooq.test.derby.generatedclasses.tables.TBook T_BOOK = new org.jooq.test.derby.generatedclasses.tables.TBook(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.derby.generatedclasses.tables.records.TBookRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public static final org.jooq.TableField ID = createField("ID", org.jooq.impl.SQLDataType.INTEGER, T_BOOK); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_T_BOOK_AUTHOR_ID
+	 * FOREIGN KEY (AUTHOR_ID)
+	 * REFERENCES TEST.T_AUTHOR (ID)
+	 * 
+ */ + public static final org.jooq.TableField AUTHOR_ID = createField("AUTHOR_ID", org.jooq.impl.SQLDataType.INTEGER, T_BOOK); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_T_BOOK_CO_AUTHOR_ID
+	 * FOREIGN KEY (CO_AUTHOR_ID)
+	 * REFERENCES TEST.T_AUTHOR (ID)
+	 * 
+ */ + public static final org.jooq.TableField CO_AUTHOR_ID = createField("CO_AUTHOR_ID", org.jooq.impl.SQLDataType.INTEGER, T_BOOK); + + /** + * An uncommented item + */ + public static final org.jooq.TableField DETAILS_ID = createField("DETAILS_ID", org.jooq.impl.SQLDataType.INTEGER, T_BOOK); + + /** + * An uncommented item + */ + public static final org.jooq.TableField TITLE = createField("TITLE", org.jooq.impl.SQLDataType.VARCHAR, T_BOOK); + + /** + * An uncommented item + */ + public static final org.jooq.TableField PUBLISHED_IN = createField("PUBLISHED_IN", org.jooq.impl.SQLDataType.INTEGER, T_BOOK); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_T_BOOK_LANGUAGE_ID
+	 * FOREIGN KEY (LANGUAGE_ID)
+	 * REFERENCES TEST.T_LANGUAGE (ID)
+	 * 
+ */ + public static final org.jooq.TableField LANGUAGE_ID = createField("LANGUAGE_ID", org.jooq.impl.SQLDataType.INTEGER.asMasterDataType(org.jooq.test.derby.generatedclasses.enums.TLanguage.class), T_BOOK); + + /** + * An uncommented item + */ + public static final org.jooq.TableField CONTENT_TEXT = createField("CONTENT_TEXT", org.jooq.impl.SQLDataType.CLOB, T_BOOK); + + /** + * An uncommented item + */ + public static final org.jooq.TableField CONTENT_PDF = createField("CONTENT_PDF", org.jooq.impl.SQLDataType.BLOB, T_BOOK); + + /** + * No further instances allowed + */ + private TBook() { + super("T_BOOK", org.jooq.test.derby.generatedclasses.Test.TEST); + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.test.derby.generatedclasses.Keys.PK_T_BOOK; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.test.derby.generatedclasses.Keys.PK_T_BOOK); + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getReferences() { + return java.util.Arrays.>asList(org.jooq.test.derby.generatedclasses.Keys.FK_T_BOOK_AUTHOR_ID, org.jooq.test.derby.generatedclasses.Keys.FK_T_BOOK_CO_AUTHOR_ID); + } +} diff --git a/jOOQ-test/src/org/jooq/test/derby/generatedclasses/tables/TBookStore.java b/jOOQ-test/src/org/jooq/test/derby/generatedclasses/tables/TBookStore.java new file mode 100644 index 00000000000..144f6fdbcf7 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/derby/generatedclasses/tables/TBookStore.java @@ -0,0 +1,53 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.derby.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class TBookStore extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = 814005580; + + /** + * The singleton instance of TEST.T_BOOK_STORE + */ + public static final org.jooq.test.derby.generatedclasses.tables.TBookStore T_BOOK_STORE = new org.jooq.test.derby.generatedclasses.tables.TBookStore(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.derby.generatedclasses.tables.records.TBookStoreRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + */ + public static final org.jooq.TableField NAME = createField("NAME", org.jooq.impl.SQLDataType.VARCHAR, T_BOOK_STORE); + + /** + * No further instances allowed + */ + private TBookStore() { + super("T_BOOK_STORE", org.jooq.test.derby.generatedclasses.Test.TEST); + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.test.derby.generatedclasses.Keys.UK_T_BOOK_STORE_NAME; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.test.derby.generatedclasses.Keys.UK_T_BOOK_STORE_NAME); + } +} diff --git a/jOOQ-test/src/org/jooq/test/derby/generatedclasses/tables/TBookToBookStore.java b/jOOQ-test/src/org/jooq/test/derby/generatedclasses/tables/TBookToBookStore.java new file mode 100644 index 00000000000..d34e44d73c8 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/derby/generatedclasses/tables/TBookToBookStore.java @@ -0,0 +1,85 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.derby.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class TBookToBookStore extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = -657221565; + + /** + * The singleton instance of TEST.T_BOOK_TO_BOOK_STORE + */ + public static final org.jooq.test.derby.generatedclasses.tables.TBookToBookStore T_BOOK_TO_BOOK_STORE = new org.jooq.test.derby.generatedclasses.tables.TBookToBookStore(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.derby.generatedclasses.tables.records.TBookToBookStoreRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT FK_B2BS_BS_NAME
+	 * FOREIGN KEY (BOOK_STORE_NAME)
+	 * REFERENCES TEST.T_BOOK_STORE (NAME)
+	 * 
+ */ + public static final org.jooq.TableField BOOK_STORE_NAME = createField("BOOK_STORE_NAME", org.jooq.impl.SQLDataType.VARCHAR, T_BOOK_TO_BOOK_STORE); + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT FK_B2BS_B_ID
+	 * FOREIGN KEY (BOOK_ID)
+	 * REFERENCES TEST.T_BOOK (ID)
+	 * 
+ */ + public static final org.jooq.TableField BOOK_ID = createField("BOOK_ID", org.jooq.impl.SQLDataType.INTEGER, T_BOOK_TO_BOOK_STORE); + + /** + * An uncommented item + */ + public static final org.jooq.TableField STOCK = createField("STOCK", org.jooq.impl.SQLDataType.INTEGER, T_BOOK_TO_BOOK_STORE); + + /** + * No further instances allowed + */ + private TBookToBookStore() { + super("T_BOOK_TO_BOOK_STORE", org.jooq.test.derby.generatedclasses.Test.TEST); + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.test.derby.generatedclasses.Keys.PK_B2BS; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.test.derby.generatedclasses.Keys.PK_B2BS); + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getReferences() { + return java.util.Arrays.>asList(org.jooq.test.derby.generatedclasses.Keys.FK_B2BS_BS_NAME, org.jooq.test.derby.generatedclasses.Keys.FK_B2BS_B_ID); + } +} diff --git a/jOOQ-test/src/org/jooq/test/derby/generatedclasses/tables/TBooleans.java b/jOOQ-test/src/org/jooq/test/derby/generatedclasses/tables/TBooleans.java new file mode 100644 index 00000000000..37f5904cc03 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/derby/generatedclasses/tables/TBooleans.java @@ -0,0 +1,105 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.derby.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class TBooleans extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = 944678732; + + /** + * The singleton instance of TEST.T_BOOLEANS + */ + public static final org.jooq.test.derby.generatedclasses.tables.TBooleans T_BOOLEANS = new org.jooq.test.derby.generatedclasses.tables.TBooleans(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.derby.generatedclasses.tables.records.TBooleansRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public static final org.jooq.TableField ID = createField("ID", org.jooq.impl.SQLDataType.INTEGER, T_BOOLEANS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField ONE_ZERO = createField("ONE_ZERO", org.jooq.impl.SQLDataType.INTEGER.asConvertedDataType(new org.jooq.test._.converters.Boolean_10_Converter()), T_BOOLEANS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField TRUE_FALSE_LC = createField("TRUE_FALSE_LC", org.jooq.impl.SQLDataType.VARCHAR.asConvertedDataType(new org.jooq.test._.converters.Boolean_TF_LC_Converter()), T_BOOLEANS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField TRUE_FALSE_UC = createField("TRUE_FALSE_UC", org.jooq.impl.SQLDataType.VARCHAR.asConvertedDataType(new org.jooq.test._.converters.Boolean_TF_UC_Converter()), T_BOOLEANS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField YES_NO_LC = createField("YES_NO_LC", org.jooq.impl.SQLDataType.VARCHAR.asConvertedDataType(new org.jooq.test._.converters.Boolean_YES_NO_LC_Converter()), T_BOOLEANS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField YES_NO_UC = createField("YES_NO_UC", org.jooq.impl.SQLDataType.VARCHAR.asConvertedDataType(new org.jooq.test._.converters.Boolean_YES_NO_UC_Converter()), T_BOOLEANS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField Y_N_LC = createField("Y_N_LC", org.jooq.impl.SQLDataType.CHAR.asConvertedDataType(new org.jooq.test._.converters.Boolean_YN_LC_Converter()), T_BOOLEANS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField Y_N_UC = createField("Y_N_UC", org.jooq.impl.SQLDataType.CHAR.asConvertedDataType(new org.jooq.test._.converters.Boolean_YN_UC_Converter()), T_BOOLEANS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField VC_BOOLEAN = createField("VC_BOOLEAN", org.jooq.impl.SQLDataType.BOOLEAN, T_BOOLEANS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField C_BOOLEAN = createField("C_BOOLEAN", org.jooq.impl.SQLDataType.BOOLEAN, T_BOOLEANS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField N_BOOLEAN = createField("N_BOOLEAN", org.jooq.impl.SQLDataType.BOOLEAN, T_BOOLEANS); + + /** + * No further instances allowed + */ + private TBooleans() { + super("T_BOOLEANS", org.jooq.test.derby.generatedclasses.Test.TEST); + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.test.derby.generatedclasses.Keys.PK_T_BOOLEANS; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.test.derby.generatedclasses.Keys.PK_T_BOOLEANS); + } +} diff --git a/jOOQ-test/src/org/jooq/test/derby/generatedclasses/tables/TDates.java b/jOOQ-test/src/org/jooq/test/derby/generatedclasses/tables/TDates.java new file mode 100644 index 00000000000..e57eee88eeb --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/derby/generatedclasses/tables/TDates.java @@ -0,0 +1,80 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.derby.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class TDates extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = 2140601346; + + /** + * The singleton instance of TEST.T_DATES + */ + public static final org.jooq.test.derby.generatedclasses.tables.TDates T_DATES = new org.jooq.test.derby.generatedclasses.tables.TDates(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.derby.generatedclasses.tables.records.TDatesRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public static final org.jooq.TableField ID = createField("ID", org.jooq.impl.SQLDataType.INTEGER, T_DATES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField D = createField("D", org.jooq.impl.SQLDataType.DATE, T_DATES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField T = createField("T", org.jooq.impl.SQLDataType.TIME, T_DATES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField TS = createField("TS", org.jooq.impl.SQLDataType.TIMESTAMP, T_DATES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField D_INT = createField("D_INT", org.jooq.impl.SQLDataType.INTEGER, T_DATES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField TS_BIGINT = createField("TS_BIGINT", org.jooq.impl.SQLDataType.BIGINT, T_DATES); + + /** + * No further instances allowed + */ + private TDates() { + super("T_DATES", org.jooq.test.derby.generatedclasses.Test.TEST); + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.test.derby.generatedclasses.Keys.PK_T_DATES; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.test.derby.generatedclasses.Keys.PK_T_DATES); + } +} diff --git a/jOOQ-test/src/org/jooq/test/derby/generatedclasses/tables/TIdentity.java b/jOOQ-test/src/org/jooq/test/derby/generatedclasses/tables/TIdentity.java new file mode 100644 index 00000000000..0f90e7df395 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/derby/generatedclasses/tables/TIdentity.java @@ -0,0 +1,52 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.derby.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class TIdentity extends org.jooq.impl.TableImpl { + + private static final long serialVersionUID = -550084289; + + /** + * The singleton instance of TEST.T_IDENTITY + */ + public static final org.jooq.test.derby.generatedclasses.tables.TIdentity T_IDENTITY = new org.jooq.test.derby.generatedclasses.tables.TIdentity(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.derby.generatedclasses.tables.records.TIdentityRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + */ + public static final org.jooq.TableField ID = createField("ID", org.jooq.impl.SQLDataType.INTEGER, T_IDENTITY); + + /** + * An uncommented item + */ + public static final org.jooq.TableField VAL = createField("VAL", org.jooq.impl.SQLDataType.INTEGER, T_IDENTITY); + + /** + * No further instances allowed + */ + private TIdentity() { + super("T_IDENTITY", org.jooq.test.derby.generatedclasses.Test.TEST); + } + + @Override + public org.jooq.Identity getIdentity() { + return org.jooq.test.derby.generatedclasses.Keys.IDENTITY_T_IDENTITY; + } +} diff --git a/jOOQ-test/src/org/jooq/test/derby/generatedclasses/tables/TIdentityPk.java b/jOOQ-test/src/org/jooq/test/derby/generatedclasses/tables/TIdentityPk.java new file mode 100644 index 00000000000..c5c40db7fd8 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/derby/generatedclasses/tables/TIdentityPk.java @@ -0,0 +1,65 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.derby.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class TIdentityPk extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = -1335513272; + + /** + * The singleton instance of TEST.T_IDENTITY_PK + */ + public static final org.jooq.test.derby.generatedclasses.tables.TIdentityPk T_IDENTITY_PK = new org.jooq.test.derby.generatedclasses.tables.TIdentityPk(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.derby.generatedclasses.tables.records.TIdentityPkRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public static final org.jooq.TableField ID = createField("ID", org.jooq.impl.SQLDataType.INTEGER, T_IDENTITY_PK); + + /** + * An uncommented item + */ + public static final org.jooq.TableField VAL = createField("VAL", org.jooq.impl.SQLDataType.INTEGER, T_IDENTITY_PK); + + /** + * No further instances allowed + */ + private TIdentityPk() { + super("T_IDENTITY_PK", org.jooq.test.derby.generatedclasses.Test.TEST); + } + + @Override + public org.jooq.Identity getIdentity() { + return org.jooq.test.derby.generatedclasses.Keys.IDENTITY_T_IDENTITY_PK; + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.test.derby.generatedclasses.Keys.PK_T_IDENTITY_PK; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.test.derby.generatedclasses.Keys.PK_T_IDENTITY_PK); + } +} diff --git a/jOOQ-test/src/org/jooq/test/derby/generatedclasses/tables/TTriggers.java b/jOOQ-test/src/org/jooq/test/derby/generatedclasses/tables/TTriggers.java new file mode 100644 index 00000000000..af2c2141580 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/derby/generatedclasses/tables/TTriggers.java @@ -0,0 +1,70 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.derby.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class TTriggers extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = -1533293078; + + /** + * The singleton instance of TEST.T_TRIGGERS + */ + public static final org.jooq.test.derby.generatedclasses.tables.TTriggers T_TRIGGERS = new org.jooq.test.derby.generatedclasses.tables.TTriggers(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.derby.generatedclasses.tables.records.TTriggersRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public static final org.jooq.TableField ID_GENERATED = createField("ID_GENERATED", org.jooq.impl.SQLDataType.INTEGER, T_TRIGGERS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField ID = createField("ID", org.jooq.impl.SQLDataType.INTEGER, T_TRIGGERS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField COUNTER = createField("COUNTER", org.jooq.impl.SQLDataType.INTEGER, T_TRIGGERS); + + /** + * No further instances allowed + */ + private TTriggers() { + super("T_TRIGGERS", org.jooq.test.derby.generatedclasses.Test.TEST); + } + + @Override + public org.jooq.Identity getIdentity() { + return org.jooq.test.derby.generatedclasses.Keys.IDENTITY_T_TRIGGERS; + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.test.derby.generatedclasses.Keys.PK_T_TRIGGERS; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.test.derby.generatedclasses.Keys.PK_T_TRIGGERS); + } +} diff --git a/jOOQ-test/src/org/jooq/test/derby/generatedclasses/tables/T_639NumbersTable.java b/jOOQ-test/src/org/jooq/test/derby/generatedclasses/tables/T_639NumbersTable.java new file mode 100644 index 00000000000..3f25f87db2e --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/derby/generatedclasses/tables/T_639NumbersTable.java @@ -0,0 +1,110 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.derby.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class T_639NumbersTable extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = 223030707; + + /** + * The singleton instance of TEST.T_639_NUMBERS_TABLE + */ + public static final org.jooq.test.derby.generatedclasses.tables.T_639NumbersTable T_639_NUMBERS_TABLE = new org.jooq.test.derby.generatedclasses.tables.T_639NumbersTable(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.derby.generatedclasses.tables.records.T_639NumbersTableRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public static final org.jooq.TableField ID = createField("ID", org.jooq.impl.SQLDataType.INTEGER, T_639_NUMBERS_TABLE); + + /** + * An uncommented item + */ + public static final org.jooq.TableField SHORT = createField("SHORT", org.jooq.impl.SQLDataType.SMALLINT, T_639_NUMBERS_TABLE); + + /** + * An uncommented item + */ + public static final org.jooq.TableField INTEGER = createField("INTEGER", org.jooq.impl.SQLDataType.INTEGER, T_639_NUMBERS_TABLE); + + /** + * An uncommented item + */ + public static final org.jooq.TableField LONG = createField("LONG", org.jooq.impl.SQLDataType.BIGINT, T_639_NUMBERS_TABLE); + + /** + * An uncommented item + */ + public static final org.jooq.TableField BYTE_DECIMAL = createField("BYTE_DECIMAL", org.jooq.impl.SQLDataType.TINYINT, T_639_NUMBERS_TABLE); + + /** + * An uncommented item + */ + public static final org.jooq.TableField SHORT_DECIMAL = createField("SHORT_DECIMAL", org.jooq.impl.SQLDataType.SMALLINT, T_639_NUMBERS_TABLE); + + /** + * An uncommented item + */ + public static final org.jooq.TableField INTEGER_DECIMAL = createField("INTEGER_DECIMAL", org.jooq.impl.SQLDataType.INTEGER, T_639_NUMBERS_TABLE); + + /** + * An uncommented item + */ + public static final org.jooq.TableField LONG_DECIMAL = createField("LONG_DECIMAL", org.jooq.impl.SQLDataType.BIGINT, T_639_NUMBERS_TABLE); + + /** + * An uncommented item + */ + public static final org.jooq.TableField BIG_INTEGER = createField("BIG_INTEGER", org.jooq.impl.SQLDataType.DECIMAL_INTEGER, T_639_NUMBERS_TABLE); + + /** + * An uncommented item + */ + public static final org.jooq.TableField BIG_DECIMAL = createField("BIG_DECIMAL", org.jooq.impl.SQLDataType.DECIMAL, T_639_NUMBERS_TABLE); + + /** + * An uncommented item + */ + public static final org.jooq.TableField FLOAT = createField("FLOAT", org.jooq.impl.SQLDataType.REAL, T_639_NUMBERS_TABLE); + + /** + * An uncommented item + */ + public static final org.jooq.TableField DOUBLE = createField("DOUBLE", org.jooq.impl.SQLDataType.DOUBLE, T_639_NUMBERS_TABLE); + + /** + * No further instances allowed + */ + private T_639NumbersTable() { + super("T_639_NUMBERS_TABLE", org.jooq.test.derby.generatedclasses.Test.TEST); + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.test.derby.generatedclasses.Keys.PK_T_639_NUMBERS_TABLE; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.test.derby.generatedclasses.Keys.PK_T_639_NUMBERS_TABLE); + } +} diff --git a/jOOQ-test/src/org/jooq/test/derby/generatedclasses/tables/T_658Ref.java b/jOOQ-test/src/org/jooq/test/derby/generatedclasses/tables/T_658Ref.java new file mode 100644 index 00000000000..e04b792778c --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/derby/generatedclasses/tables/T_658Ref.java @@ -0,0 +1,109 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.derby.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class T_658Ref extends org.jooq.impl.TableImpl { + + private static final long serialVersionUID = -238269329; + + /** + * The singleton instance of TEST.T_658_REF + */ + public static final org.jooq.test.derby.generatedclasses.tables.T_658Ref T_658_REF = new org.jooq.test.derby.generatedclasses.tables.T_658Ref(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.derby.generatedclasses.tables.records.T_658RefRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_T_658_11
+	 * FOREIGN KEY (REF_11)
+	 * REFERENCES TEST.T_658_11 (ID)
+	 * 
+ */ + public static final org.jooq.TableField REF_11 = createField("REF_11", org.jooq.impl.SQLDataType.CHAR.asMasterDataType(org.jooq.test.derby.generatedclasses.enums.T_658_11.class), T_658_REF); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_T_658_21
+	 * FOREIGN KEY (REF_21)
+	 * REFERENCES TEST.T_658_21 (ID)
+	 * 
+ */ + public static final org.jooq.TableField REF_21 = createField("REF_21", org.jooq.impl.SQLDataType.INTEGER.asMasterDataType(org.jooq.test.derby.generatedclasses.enums.T_658_21.class), T_658_REF); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_T_658_31
+	 * FOREIGN KEY (REF_31)
+	 * REFERENCES TEST.T_658_31 (ID)
+	 * 
+ */ + public static final org.jooq.TableField REF_31 = createField("REF_31", org.jooq.impl.SQLDataType.BIGINT.asMasterDataType(org.jooq.test.derby.generatedclasses.enums.T_658_31.class), T_658_REF); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_T_658_12
+	 * FOREIGN KEY (REF_12)
+	 * REFERENCES TEST.T_658_12 (ID)
+	 * 
+ */ + public static final org.jooq.TableField REF_12 = createField("REF_12", org.jooq.impl.SQLDataType.CHAR.asMasterDataType(org.jooq.test.derby.generatedclasses.enums.T_658_12.class), T_658_REF); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_T_658_22
+	 * FOREIGN KEY (REF_22)
+	 * REFERENCES TEST.T_658_22 (ID)
+	 * 
+ */ + public static final org.jooq.TableField REF_22 = createField("REF_22", org.jooq.impl.SQLDataType.INTEGER.asMasterDataType(org.jooq.test.derby.generatedclasses.enums.T_658_22.class), T_658_REF); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_T_658_32
+	 * FOREIGN KEY (REF_32)
+	 * REFERENCES TEST.T_658_32 (ID)
+	 * 
+ */ + public static final org.jooq.TableField REF_32 = createField("REF_32", org.jooq.impl.SQLDataType.BIGINT.asMasterDataType(org.jooq.test.derby.generatedclasses.enums.T_658_32.class), T_658_REF); + + /** + * No further instances allowed + */ + private T_658Ref() { + super("T_658_REF", org.jooq.test.derby.generatedclasses.Test.TEST); + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getReferences() { + return java.util.Arrays.>asList(); + } +} diff --git a/jOOQ-test/src/org/jooq/test/derby/generatedclasses/tables/T_725LobTest.java b/jOOQ-test/src/org/jooq/test/derby/generatedclasses/tables/T_725LobTest.java new file mode 100644 index 00000000000..2b625e63711 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/derby/generatedclasses/tables/T_725LobTest.java @@ -0,0 +1,60 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.derby.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class T_725LobTest extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = 1738735985; + + /** + * The singleton instance of TEST.T_725_LOB_TEST + */ + public static final org.jooq.test.derby.generatedclasses.tables.T_725LobTest T_725_LOB_TEST = new org.jooq.test.derby.generatedclasses.tables.T_725LobTest(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.derby.generatedclasses.tables.records.T_725LobTestRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public static final org.jooq.TableField ID = createField("ID", org.jooq.impl.SQLDataType.INTEGER, T_725_LOB_TEST); + + /** + * An uncommented item + */ + public static final org.jooq.TableField LOB = createField("LOB", org.jooq.impl.SQLDataType.BLOB, T_725_LOB_TEST); + + /** + * No further instances allowed + */ + private T_725LobTest() { + super("T_725_LOB_TEST", org.jooq.test.derby.generatedclasses.Test.TEST); + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.test.derby.generatedclasses.Keys.PK_T_725_LOB_TEST; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.test.derby.generatedclasses.Keys.PK_T_725_LOB_TEST); + } +} diff --git a/jOOQ-test/src/org/jooq/test/derby/generatedclasses/tables/T_785.java b/jOOQ-test/src/org/jooq/test/derby/generatedclasses/tables/T_785.java new file mode 100644 index 00000000000..277ca9c5238 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/derby/generatedclasses/tables/T_785.java @@ -0,0 +1,52 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.derby.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class T_785 extends org.jooq.impl.TableImpl { + + private static final long serialVersionUID = 218787695; + + /** + * The singleton instance of TEST.T_785 + */ + public static final org.jooq.test.derby.generatedclasses.tables.T_785 T_785 = new org.jooq.test.derby.generatedclasses.tables.T_785(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.derby.generatedclasses.tables.records.T_785Record.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + */ + public static final org.jooq.TableField ID = createField("ID", org.jooq.impl.SQLDataType.INTEGER, T_785); + + /** + * An uncommented item + */ + public static final org.jooq.TableField NAME = createField("NAME", org.jooq.impl.SQLDataType.VARCHAR, T_785); + + /** + * An uncommented item + */ + public static final org.jooq.TableField VALUE = createField("VALUE", org.jooq.impl.SQLDataType.VARCHAR, T_785); + + /** + * No further instances allowed + */ + private T_785() { + super("T_785", org.jooq.test.derby.generatedclasses.Test.TEST); + } +} diff --git a/jOOQ-test/src/org/jooq/test/derby/generatedclasses/tables/VAuthor.java b/jOOQ-test/src/org/jooq/test/derby/generatedclasses/tables/VAuthor.java new file mode 100644 index 00000000000..eb33ff48df5 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/derby/generatedclasses/tables/VAuthor.java @@ -0,0 +1,67 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.derby.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class VAuthor extends org.jooq.impl.TableImpl { + + private static final long serialVersionUID = 1773531573; + + /** + * The singleton instance of TEST.V_AUTHOR + */ + public static final org.jooq.test.derby.generatedclasses.tables.VAuthor V_AUTHOR = new org.jooq.test.derby.generatedclasses.tables.VAuthor(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.derby.generatedclasses.tables.records.VAuthorRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + */ + public static final org.jooq.TableField ID = createField("ID", org.jooq.impl.SQLDataType.INTEGER, V_AUTHOR); + + /** + * An uncommented item + */ + public static final org.jooq.TableField FIRST_NAME = createField("FIRST_NAME", org.jooq.impl.SQLDataType.VARCHAR, V_AUTHOR); + + /** + * An uncommented item + */ + public static final org.jooq.TableField LAST_NAME = createField("LAST_NAME", org.jooq.impl.SQLDataType.VARCHAR, V_AUTHOR); + + /** + * An uncommented item + */ + public static final org.jooq.TableField DATE_OF_BIRTH = createField("DATE_OF_BIRTH", org.jooq.impl.SQLDataType.DATE, V_AUTHOR); + + /** + * An uncommented item + */ + public static final org.jooq.TableField YEAR_OF_BIRTH = createField("YEAR_OF_BIRTH", org.jooq.impl.SQLDataType.INTEGER, V_AUTHOR); + + /** + * An uncommented item + */ + public static final org.jooq.TableField ADDRESS = createField("ADDRESS", org.jooq.impl.SQLDataType.VARCHAR, V_AUTHOR); + + /** + * No further instances allowed + */ + private VAuthor() { + super("V_AUTHOR", org.jooq.test.derby.generatedclasses.Test.TEST); + } +} diff --git a/jOOQ-test/src/org/jooq/test/derby/generatedclasses/tables/VBook.java b/jOOQ-test/src/org/jooq/test/derby/generatedclasses/tables/VBook.java new file mode 100644 index 00000000000..d2d560936d9 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/derby/generatedclasses/tables/VBook.java @@ -0,0 +1,82 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.derby.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class VBook extends org.jooq.impl.TableImpl { + + private static final long serialVersionUID = 984217237; + + /** + * The singleton instance of TEST.V_BOOK + */ + public static final org.jooq.test.derby.generatedclasses.tables.VBook V_BOOK = new org.jooq.test.derby.generatedclasses.tables.VBook(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.derby.generatedclasses.tables.records.VBookRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + */ + public static final org.jooq.TableField ID = createField("ID", org.jooq.impl.SQLDataType.INTEGER, V_BOOK); + + /** + * An uncommented item + */ + public static final org.jooq.TableField AUTHOR_ID = createField("AUTHOR_ID", org.jooq.impl.SQLDataType.INTEGER, V_BOOK); + + /** + * An uncommented item + */ + public static final org.jooq.TableField CO_AUTHOR_ID = createField("CO_AUTHOR_ID", org.jooq.impl.SQLDataType.INTEGER, V_BOOK); + + /** + * An uncommented item + */ + public static final org.jooq.TableField DETAILS_ID = createField("DETAILS_ID", org.jooq.impl.SQLDataType.INTEGER, V_BOOK); + + /** + * An uncommented item + */ + public static final org.jooq.TableField TITLE = createField("TITLE", org.jooq.impl.SQLDataType.VARCHAR, V_BOOK); + + /** + * An uncommented item + */ + public static final org.jooq.TableField PUBLISHED_IN = createField("PUBLISHED_IN", org.jooq.impl.SQLDataType.INTEGER, V_BOOK); + + /** + * An uncommented item + */ + public static final org.jooq.TableField LANGUAGE_ID = createField("LANGUAGE_ID", org.jooq.impl.SQLDataType.INTEGER, V_BOOK); + + /** + * An uncommented item + */ + public static final org.jooq.TableField CONTENT_TEXT = createField("CONTENT_TEXT", org.jooq.impl.SQLDataType.CLOB, V_BOOK); + + /** + * An uncommented item + */ + public static final org.jooq.TableField CONTENT_PDF = createField("CONTENT_PDF", org.jooq.impl.SQLDataType.BLOB, V_BOOK); + + /** + * No further instances allowed + */ + private VBook() { + super("V_BOOK", org.jooq.test.derby.generatedclasses.Test.TEST); + } +} diff --git a/jOOQ-test/src/org/jooq/test/derby/generatedclasses/tables/VLibrary.java b/jOOQ-test/src/org/jooq/test/derby/generatedclasses/tables/VLibrary.java new file mode 100644 index 00000000000..fbe0a874f8f --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/derby/generatedclasses/tables/VLibrary.java @@ -0,0 +1,47 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.derby.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class VLibrary extends org.jooq.impl.TableImpl { + + private static final long serialVersionUID = -1641852043; + + /** + * The singleton instance of TEST.V_LIBRARY + */ + public static final org.jooq.test.derby.generatedclasses.tables.VLibrary V_LIBRARY = new org.jooq.test.derby.generatedclasses.tables.VLibrary(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.derby.generatedclasses.tables.records.VLibraryRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + */ + public static final org.jooq.TableField AUTHOR = createField("AUTHOR", org.jooq.impl.SQLDataType.VARCHAR, V_LIBRARY); + + /** + * An uncommented item + */ + public static final org.jooq.TableField TITLE = createField("TITLE", org.jooq.impl.SQLDataType.VARCHAR, V_LIBRARY); + + /** + * No further instances allowed + */ + private VLibrary() { + super("V_LIBRARY", org.jooq.test.derby.generatedclasses.Test.TEST); + } +} diff --git a/jOOQ-test/src/org/jooq/test/derby/generatedclasses/tables/XTestCase_64_69.java b/jOOQ-test/src/org/jooq/test/derby/generatedclasses/tables/XTestCase_64_69.java new file mode 100644 index 00000000000..8c4c7a75efe --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/derby/generatedclasses/tables/XTestCase_64_69.java @@ -0,0 +1,72 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.derby.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class XTestCase_64_69 extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = -781911987; + + /** + * The singleton instance of TEST.X_TEST_CASE_64_69 + */ + public static final org.jooq.test.derby.generatedclasses.tables.XTestCase_64_69 X_TEST_CASE_64_69 = new org.jooq.test.derby.generatedclasses.tables.XTestCase_64_69(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.derby.generatedclasses.tables.records.XTestCase_64_69Record.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public static final org.jooq.TableField ID = createField("ID", org.jooq.impl.SQLDataType.INTEGER, X_TEST_CASE_64_69); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_X_TEST_CASE_64_69A
+	 * FOREIGN KEY (UNUSED_ID)
+	 * REFERENCES TEST.X_UNUSED (ID)
+	 * 
+ */ + public static final org.jooq.TableField UNUSED_ID = createField("UNUSED_ID", org.jooq.impl.SQLDataType.INTEGER, X_TEST_CASE_64_69); + + /** + * No further instances allowed + */ + private XTestCase_64_69() { + super("X_TEST_CASE_64_69", org.jooq.test.derby.generatedclasses.Test.TEST); + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.test.derby.generatedclasses.Keys.PK_X_TEST_CASE_64_69; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.test.derby.generatedclasses.Keys.PK_X_TEST_CASE_64_69); + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getReferences() { + return java.util.Arrays.>asList(org.jooq.test.derby.generatedclasses.Keys.FK_X_TEST_CASE_64_69A); + } +} diff --git a/jOOQ-test/src/org/jooq/test/derby/generatedclasses/tables/XTestCase_71.java b/jOOQ-test/src/org/jooq/test/derby/generatedclasses/tables/XTestCase_71.java new file mode 100644 index 00000000000..192e636f9a6 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/derby/generatedclasses/tables/XTestCase_71.java @@ -0,0 +1,72 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.derby.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class XTestCase_71 extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = 677019161; + + /** + * The singleton instance of TEST.X_TEST_CASE_71 + */ + public static final org.jooq.test.derby.generatedclasses.tables.XTestCase_71 X_TEST_CASE_71 = new org.jooq.test.derby.generatedclasses.tables.XTestCase_71(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.derby.generatedclasses.tables.records.XTestCase_71Record.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public static final org.jooq.TableField ID = createField("ID", org.jooq.impl.SQLDataType.INTEGER, X_TEST_CASE_71); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_X_TEST_CASE_71
+	 * FOREIGN KEY (TEST_CASE_64_69_ID)
+	 * REFERENCES TEST.X_TEST_CASE_64_69 (ID)
+	 * 
+ */ + public static final org.jooq.TableField TEST_CASE_64_69_ID = createField("TEST_CASE_64_69_ID", org.jooq.impl.SQLDataType.INTEGER, X_TEST_CASE_71); + + /** + * No further instances allowed + */ + private XTestCase_71() { + super("X_TEST_CASE_71", org.jooq.test.derby.generatedclasses.Test.TEST); + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.test.derby.generatedclasses.Keys.PK_X_TEST_CASE_71; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.test.derby.generatedclasses.Keys.PK_X_TEST_CASE_71); + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getReferences() { + return java.util.Arrays.>asList(org.jooq.test.derby.generatedclasses.Keys.FK_X_TEST_CASE_71); + } +} diff --git a/jOOQ-test/src/org/jooq/test/derby/generatedclasses/tables/XTestCase_85.java b/jOOQ-test/src/org/jooq/test/derby/generatedclasses/tables/XTestCase_85.java new file mode 100644 index 00000000000..7cc9ddd43e4 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/derby/generatedclasses/tables/XTestCase_85.java @@ -0,0 +1,83 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.derby.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class XTestCase_85 extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = 532381498; + + /** + * The singleton instance of TEST.X_TEST_CASE_85 + */ + public static final org.jooq.test.derby.generatedclasses.tables.XTestCase_85 X_TEST_CASE_85 = new org.jooq.test.derby.generatedclasses.tables.XTestCase_85(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.derby.generatedclasses.tables.records.XTestCase_85Record.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public static final org.jooq.TableField ID = createField("ID", org.jooq.impl.SQLDataType.INTEGER, X_TEST_CASE_85); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_X_TEST_CASE_85
+	 * FOREIGN KEY (X_UNUSED_ID, X_UNUSED_NAME)
+	 * REFERENCES TEST.X_UNUSED (ID, NAME)
+	 * 
+ */ + public static final org.jooq.TableField X_UNUSED_ID = createField("X_UNUSED_ID", org.jooq.impl.SQLDataType.INTEGER, X_TEST_CASE_85); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_X_TEST_CASE_85
+	 * FOREIGN KEY (X_UNUSED_ID, X_UNUSED_NAME)
+	 * REFERENCES TEST.X_UNUSED (ID, NAME)
+	 * 
+ */ + public static final org.jooq.TableField X_UNUSED_NAME = createField("X_UNUSED_NAME", org.jooq.impl.SQLDataType.VARCHAR, X_TEST_CASE_85); + + /** + * No further instances allowed + */ + private XTestCase_85() { + super("X_TEST_CASE_85", org.jooq.test.derby.generatedclasses.Test.TEST); + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.test.derby.generatedclasses.Keys.PK_X_TEST_CASE_85; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.test.derby.generatedclasses.Keys.PK_X_TEST_CASE_85); + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getReferences() { + return java.util.Arrays.>asList(org.jooq.test.derby.generatedclasses.Keys.FK_X_TEST_CASE_85); + } +} diff --git a/jOOQ-test/src/org/jooq/test/derby/generatedclasses/tables/XUnused.java b/jOOQ-test/src/org/jooq/test/derby/generatedclasses/tables/XUnused.java new file mode 100644 index 00000000000..d4ac9113ef5 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/derby/generatedclasses/tables/XUnused.java @@ -0,0 +1,140 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.derby.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class XUnused extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = -853732460; + + /** + * The singleton instance of TEST.X_UNUSED + */ + public static final org.jooq.test.derby.generatedclasses.tables.XUnused X_UNUSED = new org.jooq.test.derby.generatedclasses.tables.XUnused(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.derby.generatedclasses.tables.records.XUnusedRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public static final org.jooq.TableField ID = createField("ID", org.jooq.impl.SQLDataType.INTEGER, X_UNUSED); + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public static final org.jooq.TableField NAME = createField("NAME", org.jooq.impl.SQLDataType.VARCHAR, X_UNUSED); + + /** + * An uncommented item + */ + public static final org.jooq.TableField BIG_INTEGER = createField("BIG_INTEGER", org.jooq.impl.SQLDataType.DECIMAL_INTEGER, X_UNUSED); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_X_UNUSED_SELF
+	 * FOREIGN KEY (ID_REF, NAME_REF)
+	 * REFERENCES TEST.X_UNUSED (ID, NAME)
+	 * 
+ */ + public static final org.jooq.TableField ID_REF = createField("ID_REF", org.jooq.impl.SQLDataType.INTEGER, X_UNUSED); + + /** + * An uncommented item + */ + public static final org.jooq.TableField CLASS = createField("CLASS", org.jooq.impl.SQLDataType.INTEGER, X_UNUSED); + + /** + * An uncommented item + */ + public static final org.jooq.TableField FIELDS = createField("FIELDS", org.jooq.impl.SQLDataType.INTEGER, X_UNUSED); + + /** + * An uncommented item + */ + public static final org.jooq.TableField CONFIGURATION = createField("CONFIGURATION", org.jooq.impl.SQLDataType.INTEGER, X_UNUSED); + + /** + * An uncommented item + */ + public static final org.jooq.TableField U_D_T = createField("U_D_T", org.jooq.impl.SQLDataType.INTEGER, X_UNUSED); + + /** + * An uncommented item + */ + public static final org.jooq.TableField META_DATA = createField("META_DATA", org.jooq.impl.SQLDataType.INTEGER, X_UNUSED); + + /** + * An uncommented item + */ + public static final org.jooq.TableField TYPE0 = createField("TYPE0", org.jooq.impl.SQLDataType.INTEGER, X_UNUSED); + + /** + * An uncommented item + */ + public static final org.jooq.TableField PRIMARY_KEY = createField("PRIMARY_KEY", org.jooq.impl.SQLDataType.INTEGER, X_UNUSED); + + /** + * An uncommented item + */ + public static final org.jooq.TableField PRIMARYKEY = createField("PRIMARYKEY", org.jooq.impl.SQLDataType.INTEGER, X_UNUSED); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_X_UNUSED_SELF
+	 * FOREIGN KEY (ID_REF, NAME_REF)
+	 * REFERENCES TEST.X_UNUSED (ID, NAME)
+	 * 
+ */ + public static final org.jooq.TableField NAME_REF = createField("NAME_REF", org.jooq.impl.SQLDataType.VARCHAR, X_UNUSED); + + /** + * An uncommented item + */ + public static final org.jooq.TableField FIELD_737 = createField("FIELD 737", org.jooq.impl.SQLDataType.DECIMAL, X_UNUSED); + + /** + * No further instances allowed + */ + private XUnused() { + super("X_UNUSED", org.jooq.test.derby.generatedclasses.Test.TEST); + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.test.derby.generatedclasses.Keys.PK_X_UNUSED; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.test.derby.generatedclasses.Keys.PK_X_UNUSED, org.jooq.test.derby.generatedclasses.Keys.UK_X_UNUSED_ID); + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getReferences() { + return java.util.Arrays.>asList(org.jooq.test.derby.generatedclasses.Keys.FK_X_UNUSED_SELF); + } +} diff --git a/jOOQ-test/src/org/jooq/test/derby/generatedclasses/tables/records/TAuthorRecord.java b/jOOQ-test/src/org/jooq/test/derby/generatedclasses/tables/records/TAuthorRecord.java new file mode 100644 index 00000000000..52664942664 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/derby/generatedclasses/tables/records/TAuthorRecord.java @@ -0,0 +1,131 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.derby.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + */ +public class TAuthorRecord extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = 1310846335; + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setId(java.lang.Integer value) { + setValue(org.jooq.test.derby.generatedclasses.tables.TAuthor.ID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.lang.Integer getId() { + return getValue(org.jooq.test.derby.generatedclasses.tables.TAuthor.ID); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.util.List fetchTBookListByAuthorId() { + return create() + .selectFrom(org.jooq.test.derby.generatedclasses.tables.TBook.T_BOOK) + .where(org.jooq.test.derby.generatedclasses.tables.TBook.AUTHOR_ID.equal(getValue(org.jooq.test.derby.generatedclasses.tables.TAuthor.ID))) + .fetch(); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.util.List fetchTBookListByCoAuthorId() { + return create() + .selectFrom(org.jooq.test.derby.generatedclasses.tables.TBook.T_BOOK) + .where(org.jooq.test.derby.generatedclasses.tables.TBook.CO_AUTHOR_ID.equal(getValue(org.jooq.test.derby.generatedclasses.tables.TAuthor.ID))) + .fetch(); + } + + /** + * An uncommented item + */ + public void setFirstName(java.lang.String value) { + setValue(org.jooq.test.derby.generatedclasses.tables.TAuthor.FIRST_NAME, value); + } + + /** + * An uncommented item + */ + public java.lang.String getFirstName() { + return getValue(org.jooq.test.derby.generatedclasses.tables.TAuthor.FIRST_NAME); + } + + /** + * An uncommented item + */ + public void setLastName(java.lang.String value) { + setValue(org.jooq.test.derby.generatedclasses.tables.TAuthor.LAST_NAME, value); + } + + /** + * An uncommented item + */ + public java.lang.String getLastName() { + return getValue(org.jooq.test.derby.generatedclasses.tables.TAuthor.LAST_NAME); + } + + /** + * An uncommented item + */ + public void setDateOfBirth(java.sql.Date value) { + setValue(org.jooq.test.derby.generatedclasses.tables.TAuthor.DATE_OF_BIRTH, value); + } + + /** + * An uncommented item + */ + public java.sql.Date getDateOfBirth() { + return getValue(org.jooq.test.derby.generatedclasses.tables.TAuthor.DATE_OF_BIRTH); + } + + /** + * An uncommented item + */ + public void setYearOfBirth(java.lang.Integer value) { + setValue(org.jooq.test.derby.generatedclasses.tables.TAuthor.YEAR_OF_BIRTH, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getYearOfBirth() { + return getValue(org.jooq.test.derby.generatedclasses.tables.TAuthor.YEAR_OF_BIRTH); + } + + /** + * An uncommented item + */ + public void setAddress(java.lang.String value) { + setValue(org.jooq.test.derby.generatedclasses.tables.TAuthor.ADDRESS, value); + } + + /** + * An uncommented item + */ + public java.lang.String getAddress() { + return getValue(org.jooq.test.derby.generatedclasses.tables.TAuthor.ADDRESS); + } + + /** + * Create a detached TAuthorRecord + */ + public TAuthorRecord() { + super(org.jooq.test.derby.generatedclasses.tables.TAuthor.T_AUTHOR); + } +} diff --git a/jOOQ-test/src/org/jooq/test/derby/generatedclasses/tables/records/TBookRecord.java b/jOOQ-test/src/org/jooq/test/derby/generatedclasses/tables/records/TBookRecord.java new file mode 100644 index 00000000000..e4def3bfd7f --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/derby/generatedclasses/tables/records/TBookRecord.java @@ -0,0 +1,229 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.derby.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + */ +public class TBookRecord extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = 713299790; + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setId(java.lang.Integer value) { + setValue(org.jooq.test.derby.generatedclasses.tables.TBook.ID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.lang.Integer getId() { + return getValue(org.jooq.test.derby.generatedclasses.tables.TBook.ID); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.util.List fetchTBookToBookStoreList() { + return create() + .selectFrom(org.jooq.test.derby.generatedclasses.tables.TBookToBookStore.T_BOOK_TO_BOOK_STORE) + .where(org.jooq.test.derby.generatedclasses.tables.TBookToBookStore.BOOK_ID.equal(getValue(org.jooq.test.derby.generatedclasses.tables.TBook.ID))) + .fetch(); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_T_BOOK_AUTHOR_ID
+	 * FOREIGN KEY (AUTHOR_ID)
+	 * REFERENCES TEST.T_AUTHOR (ID)
+	 * 
+ */ + public void setAuthorId(java.lang.Integer value) { + setValue(org.jooq.test.derby.generatedclasses.tables.TBook.AUTHOR_ID, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_T_BOOK_AUTHOR_ID
+	 * FOREIGN KEY (AUTHOR_ID)
+	 * REFERENCES TEST.T_AUTHOR (ID)
+	 * 
+ */ + public java.lang.Integer getAuthorId() { + return getValue(org.jooq.test.derby.generatedclasses.tables.TBook.AUTHOR_ID); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_T_BOOK_AUTHOR_ID
+	 * FOREIGN KEY (AUTHOR_ID)
+	 * REFERENCES TEST.T_AUTHOR (ID)
+	 * 
+ */ + public org.jooq.test.derby.generatedclasses.tables.records.TAuthorRecord fetchTAuthorByAuthorId() { + return create() + .selectFrom(org.jooq.test.derby.generatedclasses.tables.TAuthor.T_AUTHOR) + .where(org.jooq.test.derby.generatedclasses.tables.TAuthor.ID.equal(getValue(org.jooq.test.derby.generatedclasses.tables.TBook.AUTHOR_ID))) + .fetchOne(); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_T_BOOK_CO_AUTHOR_ID
+	 * FOREIGN KEY (CO_AUTHOR_ID)
+	 * REFERENCES TEST.T_AUTHOR (ID)
+	 * 
+ */ + public void setCoAuthorId(java.lang.Integer value) { + setValue(org.jooq.test.derby.generatedclasses.tables.TBook.CO_AUTHOR_ID, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_T_BOOK_CO_AUTHOR_ID
+	 * FOREIGN KEY (CO_AUTHOR_ID)
+	 * REFERENCES TEST.T_AUTHOR (ID)
+	 * 
+ */ + public java.lang.Integer getCoAuthorId() { + return getValue(org.jooq.test.derby.generatedclasses.tables.TBook.CO_AUTHOR_ID); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_T_BOOK_CO_AUTHOR_ID
+	 * FOREIGN KEY (CO_AUTHOR_ID)
+	 * REFERENCES TEST.T_AUTHOR (ID)
+	 * 
+ */ + public org.jooq.test.derby.generatedclasses.tables.records.TAuthorRecord fetchTAuthorByCoAuthorId() { + return create() + .selectFrom(org.jooq.test.derby.generatedclasses.tables.TAuthor.T_AUTHOR) + .where(org.jooq.test.derby.generatedclasses.tables.TAuthor.ID.equal(getValue(org.jooq.test.derby.generatedclasses.tables.TBook.CO_AUTHOR_ID))) + .fetchOne(); + } + + /** + * An uncommented item + */ + public void setDetailsId(java.lang.Integer value) { + setValue(org.jooq.test.derby.generatedclasses.tables.TBook.DETAILS_ID, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getDetailsId() { + return getValue(org.jooq.test.derby.generatedclasses.tables.TBook.DETAILS_ID); + } + + /** + * An uncommented item + */ + public void setTitle(java.lang.String value) { + setValue(org.jooq.test.derby.generatedclasses.tables.TBook.TITLE, value); + } + + /** + * An uncommented item + */ + public java.lang.String getTitle() { + return getValue(org.jooq.test.derby.generatedclasses.tables.TBook.TITLE); + } + + /** + * An uncommented item + */ + public void setPublishedIn(java.lang.Integer value) { + setValue(org.jooq.test.derby.generatedclasses.tables.TBook.PUBLISHED_IN, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getPublishedIn() { + return getValue(org.jooq.test.derby.generatedclasses.tables.TBook.PUBLISHED_IN); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_T_BOOK_LANGUAGE_ID
+	 * FOREIGN KEY (LANGUAGE_ID)
+	 * REFERENCES TEST.T_LANGUAGE (ID)
+	 * 
+ */ + public void setLanguageId(org.jooq.test.derby.generatedclasses.enums.TLanguage value) { + setValue(org.jooq.test.derby.generatedclasses.tables.TBook.LANGUAGE_ID, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_T_BOOK_LANGUAGE_ID
+	 * FOREIGN KEY (LANGUAGE_ID)
+	 * REFERENCES TEST.T_LANGUAGE (ID)
+	 * 
+ */ + public org.jooq.test.derby.generatedclasses.enums.TLanguage getLanguageId() { + return getValue(org.jooq.test.derby.generatedclasses.tables.TBook.LANGUAGE_ID); + } + + /** + * An uncommented item + */ + public void setContentText(java.lang.String value) { + setValue(org.jooq.test.derby.generatedclasses.tables.TBook.CONTENT_TEXT, value); + } + + /** + * An uncommented item + */ + public java.lang.String getContentText() { + return getValue(org.jooq.test.derby.generatedclasses.tables.TBook.CONTENT_TEXT); + } + + /** + * An uncommented item + */ + public void setContentPdf(byte[] value) { + setValue(org.jooq.test.derby.generatedclasses.tables.TBook.CONTENT_PDF, value); + } + + /** + * An uncommented item + */ + public byte[] getContentPdf() { + return getValue(org.jooq.test.derby.generatedclasses.tables.TBook.CONTENT_PDF); + } + + /** + * Create a detached TBookRecord + */ + public TBookRecord() { + super(org.jooq.test.derby.generatedclasses.tables.TBook.T_BOOK); + } +} diff --git a/jOOQ-test/src/org/jooq/test/derby/generatedclasses/tables/records/TBookStoreRecord.java b/jOOQ-test/src/org/jooq/test/derby/generatedclasses/tables/records/TBookStoreRecord.java new file mode 100644 index 00000000000..1c74707d98d --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/derby/generatedclasses/tables/records/TBookStoreRecord.java @@ -0,0 +1,43 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.derby.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + */ +public class TBookStoreRecord extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = 43286102; + + /** + * An uncommented item + */ + public void setName(java.lang.String value) { + setValue(org.jooq.test.derby.generatedclasses.tables.TBookStore.NAME, value); + } + + /** + * An uncommented item + */ + public java.lang.String getName() { + return getValue(org.jooq.test.derby.generatedclasses.tables.TBookStore.NAME); + } + + /** + * An uncommented item + */ + public java.util.List fetchTBookToBookStoreList() { + return create() + .selectFrom(org.jooq.test.derby.generatedclasses.tables.TBookToBookStore.T_BOOK_TO_BOOK_STORE) + .where(org.jooq.test.derby.generatedclasses.tables.TBookToBookStore.BOOK_STORE_NAME.equal(getValue(org.jooq.test.derby.generatedclasses.tables.TBookStore.NAME))) + .fetch(); + } + + /** + * Create a detached TBookStoreRecord + */ + public TBookStoreRecord() { + super(org.jooq.test.derby.generatedclasses.tables.TBookStore.T_BOOK_STORE); + } +} diff --git a/jOOQ-test/src/org/jooq/test/derby/generatedclasses/tables/records/TBookToBookStoreRecord.java b/jOOQ-test/src/org/jooq/test/derby/generatedclasses/tables/records/TBookToBookStoreRecord.java new file mode 100644 index 00000000000..9965e951dcf --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/derby/generatedclasses/tables/records/TBookToBookStoreRecord.java @@ -0,0 +1,129 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.derby.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + */ +public class TBookToBookStoreRecord extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = -1466662752; + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT FK_B2BS_BS_NAME
+	 * FOREIGN KEY (BOOK_STORE_NAME)
+	 * REFERENCES TEST.T_BOOK_STORE (NAME)
+	 * 
+ */ + public void setBookStoreName(java.lang.String value) { + setValue(org.jooq.test.derby.generatedclasses.tables.TBookToBookStore.BOOK_STORE_NAME, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT FK_B2BS_BS_NAME
+	 * FOREIGN KEY (BOOK_STORE_NAME)
+	 * REFERENCES TEST.T_BOOK_STORE (NAME)
+	 * 
+ */ + public java.lang.String getBookStoreName() { + return getValue(org.jooq.test.derby.generatedclasses.tables.TBookToBookStore.BOOK_STORE_NAME); + } + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT FK_B2BS_BS_NAME
+	 * FOREIGN KEY (BOOK_STORE_NAME)
+	 * REFERENCES TEST.T_BOOK_STORE (NAME)
+	 * 
+ */ + public org.jooq.test.derby.generatedclasses.tables.records.TBookStoreRecord fetchTBookStore() { + return create() + .selectFrom(org.jooq.test.derby.generatedclasses.tables.TBookStore.T_BOOK_STORE) + .where(org.jooq.test.derby.generatedclasses.tables.TBookStore.NAME.equal(getValue(org.jooq.test.derby.generatedclasses.tables.TBookToBookStore.BOOK_STORE_NAME))) + .fetchOne(); + } + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT FK_B2BS_B_ID
+	 * FOREIGN KEY (BOOK_ID)
+	 * REFERENCES TEST.T_BOOK (ID)
+	 * 
+ */ + public void setBookId(java.lang.Integer value) { + setValue(org.jooq.test.derby.generatedclasses.tables.TBookToBookStore.BOOK_ID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT FK_B2BS_B_ID
+	 * FOREIGN KEY (BOOK_ID)
+	 * REFERENCES TEST.T_BOOK (ID)
+	 * 
+ */ + public java.lang.Integer getBookId() { + return getValue(org.jooq.test.derby.generatedclasses.tables.TBookToBookStore.BOOK_ID); + } + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT FK_B2BS_B_ID
+	 * FOREIGN KEY (BOOK_ID)
+	 * REFERENCES TEST.T_BOOK (ID)
+	 * 
+ */ + public org.jooq.test.derby.generatedclasses.tables.records.TBookRecord fetchTBook() { + return create() + .selectFrom(org.jooq.test.derby.generatedclasses.tables.TBook.T_BOOK) + .where(org.jooq.test.derby.generatedclasses.tables.TBook.ID.equal(getValue(org.jooq.test.derby.generatedclasses.tables.TBookToBookStore.BOOK_ID))) + .fetchOne(); + } + + /** + * An uncommented item + */ + public void setStock(java.lang.Integer value) { + setValue(org.jooq.test.derby.generatedclasses.tables.TBookToBookStore.STOCK, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getStock() { + return getValue(org.jooq.test.derby.generatedclasses.tables.TBookToBookStore.STOCK); + } + + /** + * Create a detached TBookToBookStoreRecord + */ + public TBookToBookStoreRecord() { + super(org.jooq.test.derby.generatedclasses.tables.TBookToBookStore.T_BOOK_TO_BOOK_STORE); + } +} diff --git a/jOOQ-test/src/org/jooq/test/derby/generatedclasses/tables/records/TBooleansRecord.java b/jOOQ-test/src/org/jooq/test/derby/generatedclasses/tables/records/TBooleansRecord.java new file mode 100644 index 00000000000..868d7ff3c91 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/derby/generatedclasses/tables/records/TBooleansRecord.java @@ -0,0 +1,177 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.derby.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + */ +public class TBooleansRecord extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = 621358932; + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setId(java.lang.Integer value) { + setValue(org.jooq.test.derby.generatedclasses.tables.TBooleans.ID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.lang.Integer getId() { + return getValue(org.jooq.test.derby.generatedclasses.tables.TBooleans.ID); + } + + /** + * An uncommented item + */ + public void setOneZero(org.jooq.test._.converters.Boolean_10 value) { + setValue(org.jooq.test.derby.generatedclasses.tables.TBooleans.ONE_ZERO, value); + } + + /** + * An uncommented item + */ + public org.jooq.test._.converters.Boolean_10 getOneZero() { + return getValue(org.jooq.test.derby.generatedclasses.tables.TBooleans.ONE_ZERO); + } + + /** + * An uncommented item + */ + public void setTrueFalseLc(org.jooq.test._.converters.Boolean_TF_LC value) { + setValue(org.jooq.test.derby.generatedclasses.tables.TBooleans.TRUE_FALSE_LC, value); + } + + /** + * An uncommented item + */ + public org.jooq.test._.converters.Boolean_TF_LC getTrueFalseLc() { + return getValue(org.jooq.test.derby.generatedclasses.tables.TBooleans.TRUE_FALSE_LC); + } + + /** + * An uncommented item + */ + public void setTrueFalseUc(org.jooq.test._.converters.Boolean_TF_UC value) { + setValue(org.jooq.test.derby.generatedclasses.tables.TBooleans.TRUE_FALSE_UC, value); + } + + /** + * An uncommented item + */ + public org.jooq.test._.converters.Boolean_TF_UC getTrueFalseUc() { + return getValue(org.jooq.test.derby.generatedclasses.tables.TBooleans.TRUE_FALSE_UC); + } + + /** + * An uncommented item + */ + public void setYesNoLc(org.jooq.test._.converters.Boolean_YES_NO_LC value) { + setValue(org.jooq.test.derby.generatedclasses.tables.TBooleans.YES_NO_LC, value); + } + + /** + * An uncommented item + */ + public org.jooq.test._.converters.Boolean_YES_NO_LC getYesNoLc() { + return getValue(org.jooq.test.derby.generatedclasses.tables.TBooleans.YES_NO_LC); + } + + /** + * An uncommented item + */ + public void setYesNoUc(org.jooq.test._.converters.Boolean_YES_NO_UC value) { + setValue(org.jooq.test.derby.generatedclasses.tables.TBooleans.YES_NO_UC, value); + } + + /** + * An uncommented item + */ + public org.jooq.test._.converters.Boolean_YES_NO_UC getYesNoUc() { + return getValue(org.jooq.test.derby.generatedclasses.tables.TBooleans.YES_NO_UC); + } + + /** + * An uncommented item + */ + public void setYNLc(org.jooq.test._.converters.Boolean_YN_LC value) { + setValue(org.jooq.test.derby.generatedclasses.tables.TBooleans.Y_N_LC, value); + } + + /** + * An uncommented item + */ + public org.jooq.test._.converters.Boolean_YN_LC getYNLc() { + return getValue(org.jooq.test.derby.generatedclasses.tables.TBooleans.Y_N_LC); + } + + /** + * An uncommented item + */ + public void setYNUc(org.jooq.test._.converters.Boolean_YN_UC value) { + setValue(org.jooq.test.derby.generatedclasses.tables.TBooleans.Y_N_UC, value); + } + + /** + * An uncommented item + */ + public org.jooq.test._.converters.Boolean_YN_UC getYNUc() { + return getValue(org.jooq.test.derby.generatedclasses.tables.TBooleans.Y_N_UC); + } + + /** + * An uncommented item + */ + public void setVcBoolean(java.lang.Boolean value) { + setValue(org.jooq.test.derby.generatedclasses.tables.TBooleans.VC_BOOLEAN, value); + } + + /** + * An uncommented item + */ + public java.lang.Boolean getVcBoolean() { + return getValue(org.jooq.test.derby.generatedclasses.tables.TBooleans.VC_BOOLEAN); + } + + /** + * An uncommented item + */ + public void setCBoolean(java.lang.Boolean value) { + setValue(org.jooq.test.derby.generatedclasses.tables.TBooleans.C_BOOLEAN, value); + } + + /** + * An uncommented item + */ + public java.lang.Boolean getCBoolean() { + return getValue(org.jooq.test.derby.generatedclasses.tables.TBooleans.C_BOOLEAN); + } + + /** + * An uncommented item + */ + public void setNBoolean(java.lang.Boolean value) { + setValue(org.jooq.test.derby.generatedclasses.tables.TBooleans.N_BOOLEAN, value); + } + + /** + * An uncommented item + */ + public java.lang.Boolean getNBoolean() { + return getValue(org.jooq.test.derby.generatedclasses.tables.TBooleans.N_BOOLEAN); + } + + /** + * Create a detached TBooleansRecord + */ + public TBooleansRecord() { + super(org.jooq.test.derby.generatedclasses.tables.TBooleans.T_BOOLEANS); + } +} diff --git a/jOOQ-test/src/org/jooq/test/derby/generatedclasses/tables/records/TDatesRecord.java b/jOOQ-test/src/org/jooq/test/derby/generatedclasses/tables/records/TDatesRecord.java new file mode 100644 index 00000000000..cbafdfbf9f1 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/derby/generatedclasses/tables/records/TDatesRecord.java @@ -0,0 +1,107 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.derby.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + */ +public class TDatesRecord extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = 1578483508; + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setId(java.lang.Integer value) { + setValue(org.jooq.test.derby.generatedclasses.tables.TDates.ID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.lang.Integer getId() { + return getValue(org.jooq.test.derby.generatedclasses.tables.TDates.ID); + } + + /** + * An uncommented item + */ + public void setD(java.sql.Date value) { + setValue(org.jooq.test.derby.generatedclasses.tables.TDates.D, value); + } + + /** + * An uncommented item + */ + public java.sql.Date getD() { + return getValue(org.jooq.test.derby.generatedclasses.tables.TDates.D); + } + + /** + * An uncommented item + */ + public void setT(java.sql.Time value) { + setValue(org.jooq.test.derby.generatedclasses.tables.TDates.T, value); + } + + /** + * An uncommented item + */ + public java.sql.Time getT() { + return getValue(org.jooq.test.derby.generatedclasses.tables.TDates.T); + } + + /** + * An uncommented item + */ + public void setTs(java.sql.Timestamp value) { + setValue(org.jooq.test.derby.generatedclasses.tables.TDates.TS, value); + } + + /** + * An uncommented item + */ + public java.sql.Timestamp getTs() { + return getValue(org.jooq.test.derby.generatedclasses.tables.TDates.TS); + } + + /** + * An uncommented item + */ + public void setDInt(java.lang.Integer value) { + setValue(org.jooq.test.derby.generatedclasses.tables.TDates.D_INT, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getDInt() { + return getValue(org.jooq.test.derby.generatedclasses.tables.TDates.D_INT); + } + + /** + * An uncommented item + */ + public void setTsBigint(java.lang.Long value) { + setValue(org.jooq.test.derby.generatedclasses.tables.TDates.TS_BIGINT, value); + } + + /** + * An uncommented item + */ + public java.lang.Long getTsBigint() { + return getValue(org.jooq.test.derby.generatedclasses.tables.TDates.TS_BIGINT); + } + + /** + * Create a detached TDatesRecord + */ + public TDatesRecord() { + super(org.jooq.test.derby.generatedclasses.tables.TDates.T_DATES); + } +} diff --git a/jOOQ-test/src/org/jooq/test/derby/generatedclasses/tables/records/TIdentityPkRecord.java b/jOOQ-test/src/org/jooq/test/derby/generatedclasses/tables/records/TIdentityPkRecord.java new file mode 100644 index 00000000000..eadbc87d4f6 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/derby/generatedclasses/tables/records/TIdentityPkRecord.java @@ -0,0 +1,51 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.derby.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + */ +public class TIdentityPkRecord extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = 1150666905; + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setId(java.lang.Integer value) { + setValue(org.jooq.test.derby.generatedclasses.tables.TIdentityPk.ID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.lang.Integer getId() { + return getValue(org.jooq.test.derby.generatedclasses.tables.TIdentityPk.ID); + } + + /** + * An uncommented item + */ + public void setVal(java.lang.Integer value) { + setValue(org.jooq.test.derby.generatedclasses.tables.TIdentityPk.VAL, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getVal() { + return getValue(org.jooq.test.derby.generatedclasses.tables.TIdentityPk.VAL); + } + + /** + * Create a detached TIdentityPkRecord + */ + public TIdentityPkRecord() { + super(org.jooq.test.derby.generatedclasses.tables.TIdentityPk.T_IDENTITY_PK); + } +} diff --git a/jOOQ-test/src/org/jooq/test/derby/generatedclasses/tables/records/TIdentityRecord.java b/jOOQ-test/src/org/jooq/test/derby/generatedclasses/tables/records/TIdentityRecord.java new file mode 100644 index 00000000000..e9f247fee5e --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/derby/generatedclasses/tables/records/TIdentityRecord.java @@ -0,0 +1,47 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.derby.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + */ +public class TIdentityRecord extends org.jooq.impl.TableRecordImpl { + + private static final long serialVersionUID = 836275544; + + /** + * An uncommented item + */ + public void setId(java.lang.Integer value) { + setValue(org.jooq.test.derby.generatedclasses.tables.TIdentity.ID, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getId() { + return getValue(org.jooq.test.derby.generatedclasses.tables.TIdentity.ID); + } + + /** + * An uncommented item + */ + public void setVal(java.lang.Integer value) { + setValue(org.jooq.test.derby.generatedclasses.tables.TIdentity.VAL, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getVal() { + return getValue(org.jooq.test.derby.generatedclasses.tables.TIdentity.VAL); + } + + /** + * Create a detached TIdentityRecord + */ + public TIdentityRecord() { + super(org.jooq.test.derby.generatedclasses.tables.TIdentity.T_IDENTITY); + } +} diff --git a/jOOQ-test/src/org/jooq/test/derby/generatedclasses/tables/records/TTriggersRecord.java b/jOOQ-test/src/org/jooq/test/derby/generatedclasses/tables/records/TTriggersRecord.java new file mode 100644 index 00000000000..6318f34afa1 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/derby/generatedclasses/tables/records/TTriggersRecord.java @@ -0,0 +1,65 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.derby.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + */ +public class TTriggersRecord extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = 154714960; + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setIdGenerated(java.lang.Integer value) { + setValue(org.jooq.test.derby.generatedclasses.tables.TTriggers.ID_GENERATED, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.lang.Integer getIdGenerated() { + return getValue(org.jooq.test.derby.generatedclasses.tables.TTriggers.ID_GENERATED); + } + + /** + * An uncommented item + */ + public void setId(java.lang.Integer value) { + setValue(org.jooq.test.derby.generatedclasses.tables.TTriggers.ID, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getId() { + return getValue(org.jooq.test.derby.generatedclasses.tables.TTriggers.ID); + } + + /** + * An uncommented item + */ + public void setCounter(java.lang.Integer value) { + setValue(org.jooq.test.derby.generatedclasses.tables.TTriggers.COUNTER, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getCounter() { + return getValue(org.jooq.test.derby.generatedclasses.tables.TTriggers.COUNTER); + } + + /** + * Create a detached TTriggersRecord + */ + public TTriggersRecord() { + super(org.jooq.test.derby.generatedclasses.tables.TTriggers.T_TRIGGERS); + } +} diff --git a/jOOQ-test/src/org/jooq/test/derby/generatedclasses/tables/records/T_639NumbersTableRecord.java b/jOOQ-test/src/org/jooq/test/derby/generatedclasses/tables/records/T_639NumbersTableRecord.java new file mode 100644 index 00000000000..45727f3a02c --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/derby/generatedclasses/tables/records/T_639NumbersTableRecord.java @@ -0,0 +1,191 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.derby.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + */ +public class T_639NumbersTableRecord extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = 999664201; + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setId(java.lang.Integer value) { + setValue(org.jooq.test.derby.generatedclasses.tables.T_639NumbersTable.ID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.lang.Integer getId() { + return getValue(org.jooq.test.derby.generatedclasses.tables.T_639NumbersTable.ID); + } + + /** + * An uncommented item + */ + public void setShort(java.lang.Short value) { + setValue(org.jooq.test.derby.generatedclasses.tables.T_639NumbersTable.SHORT, value); + } + + /** + * An uncommented item + */ + public java.lang.Short getShort() { + return getValue(org.jooq.test.derby.generatedclasses.tables.T_639NumbersTable.SHORT); + } + + /** + * An uncommented item + */ + public void setInteger(java.lang.Integer value) { + setValue(org.jooq.test.derby.generatedclasses.tables.T_639NumbersTable.INTEGER, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getInteger() { + return getValue(org.jooq.test.derby.generatedclasses.tables.T_639NumbersTable.INTEGER); + } + + /** + * An uncommented item + */ + public void setLong(java.lang.Long value) { + setValue(org.jooq.test.derby.generatedclasses.tables.T_639NumbersTable.LONG, value); + } + + /** + * An uncommented item + */ + public java.lang.Long getLong() { + return getValue(org.jooq.test.derby.generatedclasses.tables.T_639NumbersTable.LONG); + } + + /** + * An uncommented item + */ + public void setByteDecimal(java.lang.Byte value) { + setValue(org.jooq.test.derby.generatedclasses.tables.T_639NumbersTable.BYTE_DECIMAL, value); + } + + /** + * An uncommented item + */ + public java.lang.Byte getByteDecimal() { + return getValue(org.jooq.test.derby.generatedclasses.tables.T_639NumbersTable.BYTE_DECIMAL); + } + + /** + * An uncommented item + */ + public void setShortDecimal(java.lang.Short value) { + setValue(org.jooq.test.derby.generatedclasses.tables.T_639NumbersTable.SHORT_DECIMAL, value); + } + + /** + * An uncommented item + */ + public java.lang.Short getShortDecimal() { + return getValue(org.jooq.test.derby.generatedclasses.tables.T_639NumbersTable.SHORT_DECIMAL); + } + + /** + * An uncommented item + */ + public void setIntegerDecimal(java.lang.Integer value) { + setValue(org.jooq.test.derby.generatedclasses.tables.T_639NumbersTable.INTEGER_DECIMAL, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getIntegerDecimal() { + return getValue(org.jooq.test.derby.generatedclasses.tables.T_639NumbersTable.INTEGER_DECIMAL); + } + + /** + * An uncommented item + */ + public void setLongDecimal(java.lang.Long value) { + setValue(org.jooq.test.derby.generatedclasses.tables.T_639NumbersTable.LONG_DECIMAL, value); + } + + /** + * An uncommented item + */ + public java.lang.Long getLongDecimal() { + return getValue(org.jooq.test.derby.generatedclasses.tables.T_639NumbersTable.LONG_DECIMAL); + } + + /** + * An uncommented item + */ + public void setBigInteger(java.math.BigInteger value) { + setValue(org.jooq.test.derby.generatedclasses.tables.T_639NumbersTable.BIG_INTEGER, value); + } + + /** + * An uncommented item + */ + public java.math.BigInteger getBigInteger() { + return getValue(org.jooq.test.derby.generatedclasses.tables.T_639NumbersTable.BIG_INTEGER); + } + + /** + * An uncommented item + */ + public void setBigDecimal(java.math.BigDecimal value) { + setValue(org.jooq.test.derby.generatedclasses.tables.T_639NumbersTable.BIG_DECIMAL, value); + } + + /** + * An uncommented item + */ + public java.math.BigDecimal getBigDecimal() { + return getValue(org.jooq.test.derby.generatedclasses.tables.T_639NumbersTable.BIG_DECIMAL); + } + + /** + * An uncommented item + */ + public void setFloat(java.lang.Float value) { + setValue(org.jooq.test.derby.generatedclasses.tables.T_639NumbersTable.FLOAT, value); + } + + /** + * An uncommented item + */ + public java.lang.Float getFloat() { + return getValue(org.jooq.test.derby.generatedclasses.tables.T_639NumbersTable.FLOAT); + } + + /** + * An uncommented item + */ + public void setDouble(java.lang.Double value) { + setValue(org.jooq.test.derby.generatedclasses.tables.T_639NumbersTable.DOUBLE, value); + } + + /** + * An uncommented item + */ + public java.lang.Double getDouble() { + return getValue(org.jooq.test.derby.generatedclasses.tables.T_639NumbersTable.DOUBLE); + } + + /** + * Create a detached T_639NumbersTableRecord + */ + public T_639NumbersTableRecord() { + super(org.jooq.test.derby.generatedclasses.tables.T_639NumbersTable.T_639_NUMBERS_TABLE); + } +} diff --git a/jOOQ-test/src/org/jooq/test/derby/generatedclasses/tables/records/T_658RefRecord.java b/jOOQ-test/src/org/jooq/test/derby/generatedclasses/tables/records/T_658RefRecord.java new file mode 100644 index 00000000000..e29ca09d378 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/derby/generatedclasses/tables/records/T_658RefRecord.java @@ -0,0 +1,175 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.derby.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + */ +public class T_658RefRecord extends org.jooq.impl.TableRecordImpl { + + private static final long serialVersionUID = -159431686; + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_T_658_11
+	 * FOREIGN KEY (REF_11)
+	 * REFERENCES TEST.T_658_11 (ID)
+	 * 
+ */ + public void setRef_11(org.jooq.test.derby.generatedclasses.enums.T_658_11 value) { + setValue(org.jooq.test.derby.generatedclasses.tables.T_658Ref.REF_11, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_T_658_11
+	 * FOREIGN KEY (REF_11)
+	 * REFERENCES TEST.T_658_11 (ID)
+	 * 
+ */ + public org.jooq.test.derby.generatedclasses.enums.T_658_11 getRef_11() { + return getValue(org.jooq.test.derby.generatedclasses.tables.T_658Ref.REF_11); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_T_658_21
+	 * FOREIGN KEY (REF_21)
+	 * REFERENCES TEST.T_658_21 (ID)
+	 * 
+ */ + public void setRef_21(org.jooq.test.derby.generatedclasses.enums.T_658_21 value) { + setValue(org.jooq.test.derby.generatedclasses.tables.T_658Ref.REF_21, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_T_658_21
+	 * FOREIGN KEY (REF_21)
+	 * REFERENCES TEST.T_658_21 (ID)
+	 * 
+ */ + public org.jooq.test.derby.generatedclasses.enums.T_658_21 getRef_21() { + return getValue(org.jooq.test.derby.generatedclasses.tables.T_658Ref.REF_21); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_T_658_31
+	 * FOREIGN KEY (REF_31)
+	 * REFERENCES TEST.T_658_31 (ID)
+	 * 
+ */ + public void setRef_31(org.jooq.test.derby.generatedclasses.enums.T_658_31 value) { + setValue(org.jooq.test.derby.generatedclasses.tables.T_658Ref.REF_31, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_T_658_31
+	 * FOREIGN KEY (REF_31)
+	 * REFERENCES TEST.T_658_31 (ID)
+	 * 
+ */ + public org.jooq.test.derby.generatedclasses.enums.T_658_31 getRef_31() { + return getValue(org.jooq.test.derby.generatedclasses.tables.T_658Ref.REF_31); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_T_658_12
+	 * FOREIGN KEY (REF_12)
+	 * REFERENCES TEST.T_658_12 (ID)
+	 * 
+ */ + public void setRef_12(org.jooq.test.derby.generatedclasses.enums.T_658_12 value) { + setValue(org.jooq.test.derby.generatedclasses.tables.T_658Ref.REF_12, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_T_658_12
+	 * FOREIGN KEY (REF_12)
+	 * REFERENCES TEST.T_658_12 (ID)
+	 * 
+ */ + public org.jooq.test.derby.generatedclasses.enums.T_658_12 getRef_12() { + return getValue(org.jooq.test.derby.generatedclasses.tables.T_658Ref.REF_12); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_T_658_22
+	 * FOREIGN KEY (REF_22)
+	 * REFERENCES TEST.T_658_22 (ID)
+	 * 
+ */ + public void setRef_22(org.jooq.test.derby.generatedclasses.enums.T_658_22 value) { + setValue(org.jooq.test.derby.generatedclasses.tables.T_658Ref.REF_22, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_T_658_22
+	 * FOREIGN KEY (REF_22)
+	 * REFERENCES TEST.T_658_22 (ID)
+	 * 
+ */ + public org.jooq.test.derby.generatedclasses.enums.T_658_22 getRef_22() { + return getValue(org.jooq.test.derby.generatedclasses.tables.T_658Ref.REF_22); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_T_658_32
+	 * FOREIGN KEY (REF_32)
+	 * REFERENCES TEST.T_658_32 (ID)
+	 * 
+ */ + public void setRef_32(org.jooq.test.derby.generatedclasses.enums.T_658_32 value) { + setValue(org.jooq.test.derby.generatedclasses.tables.T_658Ref.REF_32, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_T_658_32
+	 * FOREIGN KEY (REF_32)
+	 * REFERENCES TEST.T_658_32 (ID)
+	 * 
+ */ + public org.jooq.test.derby.generatedclasses.enums.T_658_32 getRef_32() { + return getValue(org.jooq.test.derby.generatedclasses.tables.T_658Ref.REF_32); + } + + /** + * Create a detached T_658RefRecord + */ + public T_658RefRecord() { + super(org.jooq.test.derby.generatedclasses.tables.T_658Ref.T_658_REF); + } +} diff --git a/jOOQ-test/src/org/jooq/test/derby/generatedclasses/tables/records/T_725LobTestRecord.java b/jOOQ-test/src/org/jooq/test/derby/generatedclasses/tables/records/T_725LobTestRecord.java new file mode 100644 index 00000000000..0657b58cfff --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/derby/generatedclasses/tables/records/T_725LobTestRecord.java @@ -0,0 +1,51 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.derby.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + */ +public class T_725LobTestRecord extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = 1083703675; + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setId(java.lang.Integer value) { + setValue(org.jooq.test.derby.generatedclasses.tables.T_725LobTest.ID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.lang.Integer getId() { + return getValue(org.jooq.test.derby.generatedclasses.tables.T_725LobTest.ID); + } + + /** + * An uncommented item + */ + public void setLob(byte[] value) { + setValue(org.jooq.test.derby.generatedclasses.tables.T_725LobTest.LOB, value); + } + + /** + * An uncommented item + */ + public byte[] getLob() { + return getValue(org.jooq.test.derby.generatedclasses.tables.T_725LobTest.LOB); + } + + /** + * Create a detached T_725LobTestRecord + */ + public T_725LobTestRecord() { + super(org.jooq.test.derby.generatedclasses.tables.T_725LobTest.T_725_LOB_TEST); + } +} diff --git a/jOOQ-test/src/org/jooq/test/derby/generatedclasses/tables/records/T_785Record.java b/jOOQ-test/src/org/jooq/test/derby/generatedclasses/tables/records/T_785Record.java new file mode 100644 index 00000000000..c9c28ce964a --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/derby/generatedclasses/tables/records/T_785Record.java @@ -0,0 +1,61 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.derby.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + */ +public class T_785Record extends org.jooq.impl.TableRecordImpl { + + private static final long serialVersionUID = -2144534441; + + /** + * An uncommented item + */ + public void setId(java.lang.Integer value) { + setValue(org.jooq.test.derby.generatedclasses.tables.T_785.ID, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getId() { + return getValue(org.jooq.test.derby.generatedclasses.tables.T_785.ID); + } + + /** + * An uncommented item + */ + public void setName(java.lang.String value) { + setValue(org.jooq.test.derby.generatedclasses.tables.T_785.NAME, value); + } + + /** + * An uncommented item + */ + public java.lang.String getName() { + return getValue(org.jooq.test.derby.generatedclasses.tables.T_785.NAME); + } + + /** + * An uncommented item + */ + public void setValue(java.lang.String value) { + setValue(org.jooq.test.derby.generatedclasses.tables.T_785.VALUE, value); + } + + /** + * An uncommented item + */ + public java.lang.String getValue() { + return getValue(org.jooq.test.derby.generatedclasses.tables.T_785.VALUE); + } + + /** + * Create a detached T_785Record + */ + public T_785Record() { + super(org.jooq.test.derby.generatedclasses.tables.T_785.T_785); + } +} diff --git a/jOOQ-test/src/org/jooq/test/derby/generatedclasses/tables/records/VAuthorRecord.java b/jOOQ-test/src/org/jooq/test/derby/generatedclasses/tables/records/VAuthorRecord.java new file mode 100644 index 00000000000..a25da7d85e6 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/derby/generatedclasses/tables/records/VAuthorRecord.java @@ -0,0 +1,103 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.derby.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + */ +public class VAuthorRecord extends org.jooq.impl.TableRecordImpl { + + private static final long serialVersionUID = -403306398; + + /** + * An uncommented item + */ + public void setId(java.lang.Integer value) { + setValue(org.jooq.test.derby.generatedclasses.tables.VAuthor.ID, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getId() { + return getValue(org.jooq.test.derby.generatedclasses.tables.VAuthor.ID); + } + + /** + * An uncommented item + */ + public void setFirstName(java.lang.String value) { + setValue(org.jooq.test.derby.generatedclasses.tables.VAuthor.FIRST_NAME, value); + } + + /** + * An uncommented item + */ + public java.lang.String getFirstName() { + return getValue(org.jooq.test.derby.generatedclasses.tables.VAuthor.FIRST_NAME); + } + + /** + * An uncommented item + */ + public void setLastName(java.lang.String value) { + setValue(org.jooq.test.derby.generatedclasses.tables.VAuthor.LAST_NAME, value); + } + + /** + * An uncommented item + */ + public java.lang.String getLastName() { + return getValue(org.jooq.test.derby.generatedclasses.tables.VAuthor.LAST_NAME); + } + + /** + * An uncommented item + */ + public void setDateOfBirth(java.sql.Date value) { + setValue(org.jooq.test.derby.generatedclasses.tables.VAuthor.DATE_OF_BIRTH, value); + } + + /** + * An uncommented item + */ + public java.sql.Date getDateOfBirth() { + return getValue(org.jooq.test.derby.generatedclasses.tables.VAuthor.DATE_OF_BIRTH); + } + + /** + * An uncommented item + */ + public void setYearOfBirth(java.lang.Integer value) { + setValue(org.jooq.test.derby.generatedclasses.tables.VAuthor.YEAR_OF_BIRTH, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getYearOfBirth() { + return getValue(org.jooq.test.derby.generatedclasses.tables.VAuthor.YEAR_OF_BIRTH); + } + + /** + * An uncommented item + */ + public void setAddress(java.lang.String value) { + setValue(org.jooq.test.derby.generatedclasses.tables.VAuthor.ADDRESS, value); + } + + /** + * An uncommented item + */ + public java.lang.String getAddress() { + return getValue(org.jooq.test.derby.generatedclasses.tables.VAuthor.ADDRESS); + } + + /** + * Create a detached VAuthorRecord + */ + public VAuthorRecord() { + super(org.jooq.test.derby.generatedclasses.tables.VAuthor.V_AUTHOR); + } +} diff --git a/jOOQ-test/src/org/jooq/test/derby/generatedclasses/tables/records/VBookRecord.java b/jOOQ-test/src/org/jooq/test/derby/generatedclasses/tables/records/VBookRecord.java new file mode 100644 index 00000000000..d1d893a2d49 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/derby/generatedclasses/tables/records/VBookRecord.java @@ -0,0 +1,145 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.derby.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + */ +public class VBookRecord extends org.jooq.impl.TableRecordImpl { + + private static final long serialVersionUID = 334208994; + + /** + * An uncommented item + */ + public void setId(java.lang.Integer value) { + setValue(org.jooq.test.derby.generatedclasses.tables.VBook.ID, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getId() { + return getValue(org.jooq.test.derby.generatedclasses.tables.VBook.ID); + } + + /** + * An uncommented item + */ + public void setAuthorId(java.lang.Integer value) { + setValue(org.jooq.test.derby.generatedclasses.tables.VBook.AUTHOR_ID, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getAuthorId() { + return getValue(org.jooq.test.derby.generatedclasses.tables.VBook.AUTHOR_ID); + } + + /** + * An uncommented item + */ + public void setCoAuthorId(java.lang.Integer value) { + setValue(org.jooq.test.derby.generatedclasses.tables.VBook.CO_AUTHOR_ID, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getCoAuthorId() { + return getValue(org.jooq.test.derby.generatedclasses.tables.VBook.CO_AUTHOR_ID); + } + + /** + * An uncommented item + */ + public void setDetailsId(java.lang.Integer value) { + setValue(org.jooq.test.derby.generatedclasses.tables.VBook.DETAILS_ID, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getDetailsId() { + return getValue(org.jooq.test.derby.generatedclasses.tables.VBook.DETAILS_ID); + } + + /** + * An uncommented item + */ + public void setTitle(java.lang.String value) { + setValue(org.jooq.test.derby.generatedclasses.tables.VBook.TITLE, value); + } + + /** + * An uncommented item + */ + public java.lang.String getTitle() { + return getValue(org.jooq.test.derby.generatedclasses.tables.VBook.TITLE); + } + + /** + * An uncommented item + */ + public void setPublishedIn(java.lang.Integer value) { + setValue(org.jooq.test.derby.generatedclasses.tables.VBook.PUBLISHED_IN, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getPublishedIn() { + return getValue(org.jooq.test.derby.generatedclasses.tables.VBook.PUBLISHED_IN); + } + + /** + * An uncommented item + */ + public void setLanguageId(java.lang.Integer value) { + setValue(org.jooq.test.derby.generatedclasses.tables.VBook.LANGUAGE_ID, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getLanguageId() { + return getValue(org.jooq.test.derby.generatedclasses.tables.VBook.LANGUAGE_ID); + } + + /** + * An uncommented item + */ + public void setContentText(java.lang.String value) { + setValue(org.jooq.test.derby.generatedclasses.tables.VBook.CONTENT_TEXT, value); + } + + /** + * An uncommented item + */ + public java.lang.String getContentText() { + return getValue(org.jooq.test.derby.generatedclasses.tables.VBook.CONTENT_TEXT); + } + + /** + * An uncommented item + */ + public void setContentPdf(byte[] value) { + setValue(org.jooq.test.derby.generatedclasses.tables.VBook.CONTENT_PDF, value); + } + + /** + * An uncommented item + */ + public byte[] getContentPdf() { + return getValue(org.jooq.test.derby.generatedclasses.tables.VBook.CONTENT_PDF); + } + + /** + * Create a detached VBookRecord + */ + public VBookRecord() { + super(org.jooq.test.derby.generatedclasses.tables.VBook.V_BOOK); + } +} diff --git a/jOOQ-test/src/org/jooq/test/derby/generatedclasses/tables/records/VLibraryRecord.java b/jOOQ-test/src/org/jooq/test/derby/generatedclasses/tables/records/VLibraryRecord.java new file mode 100644 index 00000000000..25d1e09a65d --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/derby/generatedclasses/tables/records/VLibraryRecord.java @@ -0,0 +1,47 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.derby.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + */ +public class VLibraryRecord extends org.jooq.impl.TableRecordImpl { + + private static final long serialVersionUID = -479725794; + + /** + * An uncommented item + */ + public void setAuthor(java.lang.String value) { + setValue(org.jooq.test.derby.generatedclasses.tables.VLibrary.AUTHOR, value); + } + + /** + * An uncommented item + */ + public java.lang.String getAuthor() { + return getValue(org.jooq.test.derby.generatedclasses.tables.VLibrary.AUTHOR); + } + + /** + * An uncommented item + */ + public void setTitle(java.lang.String value) { + setValue(org.jooq.test.derby.generatedclasses.tables.VLibrary.TITLE, value); + } + + /** + * An uncommented item + */ + public java.lang.String getTitle() { + return getValue(org.jooq.test.derby.generatedclasses.tables.VLibrary.TITLE); + } + + /** + * Create a detached VLibraryRecord + */ + public VLibraryRecord() { + super(org.jooq.test.derby.generatedclasses.tables.VLibrary.V_LIBRARY); + } +} diff --git a/jOOQ-test/src/org/jooq/test/derby/generatedclasses/tables/records/XTestCase_64_69Record.java b/jOOQ-test/src/org/jooq/test/derby/generatedclasses/tables/records/XTestCase_64_69Record.java new file mode 100644 index 00000000000..3766b889721 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/derby/generatedclasses/tables/records/XTestCase_64_69Record.java @@ -0,0 +1,91 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.derby.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + */ +public class XTestCase_64_69Record extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = 1372924184; + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setId(java.lang.Integer value) { + setValue(org.jooq.test.derby.generatedclasses.tables.XTestCase_64_69.ID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.lang.Integer getId() { + return getValue(org.jooq.test.derby.generatedclasses.tables.XTestCase_64_69.ID); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.util.List fetchXTestCase_71List() { + return create() + .selectFrom(org.jooq.test.derby.generatedclasses.tables.XTestCase_71.X_TEST_CASE_71) + .where(org.jooq.test.derby.generatedclasses.tables.XTestCase_71.TEST_CASE_64_69_ID.equal(getValue(org.jooq.test.derby.generatedclasses.tables.XTestCase_64_69.ID))) + .fetch(); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_X_TEST_CASE_64_69A
+	 * FOREIGN KEY (UNUSED_ID)
+	 * REFERENCES TEST.X_UNUSED (ID)
+	 * 
+ */ + public void setUnusedId(java.lang.Integer value) { + setValue(org.jooq.test.derby.generatedclasses.tables.XTestCase_64_69.UNUSED_ID, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_X_TEST_CASE_64_69A
+	 * FOREIGN KEY (UNUSED_ID)
+	 * REFERENCES TEST.X_UNUSED (ID)
+	 * 
+ */ + public java.lang.Integer getUnusedId() { + return getValue(org.jooq.test.derby.generatedclasses.tables.XTestCase_64_69.UNUSED_ID); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_X_TEST_CASE_64_69A
+	 * FOREIGN KEY (UNUSED_ID)
+	 * REFERENCES TEST.X_UNUSED (ID)
+	 * 
+ */ + public org.jooq.test.derby.generatedclasses.tables.records.XUnusedRecord fetchXUnused() { + return create() + .selectFrom(org.jooq.test.derby.generatedclasses.tables.XUnused.X_UNUSED) + .where(org.jooq.test.derby.generatedclasses.tables.XUnused.ID.equal(getValue(org.jooq.test.derby.generatedclasses.tables.XTestCase_64_69.UNUSED_ID))) + .fetchOne(); + } + + /** + * Create a detached XTestCase_64_69Record + */ + public XTestCase_64_69Record() { + super(org.jooq.test.derby.generatedclasses.tables.XTestCase_64_69.X_TEST_CASE_64_69); + } +} diff --git a/jOOQ-test/src/org/jooq/test/derby/generatedclasses/tables/records/XTestCase_71Record.java b/jOOQ-test/src/org/jooq/test/derby/generatedclasses/tables/records/XTestCase_71Record.java new file mode 100644 index 00000000000..67e018f83f8 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/derby/generatedclasses/tables/records/XTestCase_71Record.java @@ -0,0 +1,79 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.derby.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + */ +public class XTestCase_71Record extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = 396552110; + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setId(java.lang.Integer value) { + setValue(org.jooq.test.derby.generatedclasses.tables.XTestCase_71.ID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.lang.Integer getId() { + return getValue(org.jooq.test.derby.generatedclasses.tables.XTestCase_71.ID); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_X_TEST_CASE_71
+	 * FOREIGN KEY (TEST_CASE_64_69_ID)
+	 * REFERENCES TEST.X_TEST_CASE_64_69 (ID)
+	 * 
+ */ + public void setTestCase_64_69Id(java.lang.Integer value) { + setValue(org.jooq.test.derby.generatedclasses.tables.XTestCase_71.TEST_CASE_64_69_ID, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_X_TEST_CASE_71
+	 * FOREIGN KEY (TEST_CASE_64_69_ID)
+	 * REFERENCES TEST.X_TEST_CASE_64_69 (ID)
+	 * 
+ */ + public java.lang.Integer getTestCase_64_69Id() { + return getValue(org.jooq.test.derby.generatedclasses.tables.XTestCase_71.TEST_CASE_64_69_ID); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_X_TEST_CASE_71
+	 * FOREIGN KEY (TEST_CASE_64_69_ID)
+	 * REFERENCES TEST.X_TEST_CASE_64_69 (ID)
+	 * 
+ */ + public org.jooq.test.derby.generatedclasses.tables.records.XTestCase_64_69Record fetchXTestCase_64_69() { + return create() + .selectFrom(org.jooq.test.derby.generatedclasses.tables.XTestCase_64_69.X_TEST_CASE_64_69) + .where(org.jooq.test.derby.generatedclasses.tables.XTestCase_64_69.ID.equal(getValue(org.jooq.test.derby.generatedclasses.tables.XTestCase_71.TEST_CASE_64_69_ID))) + .fetchOne(); + } + + /** + * Create a detached XTestCase_71Record + */ + public XTestCase_71Record() { + super(org.jooq.test.derby.generatedclasses.tables.XTestCase_71.X_TEST_CASE_71); + } +} diff --git a/jOOQ-test/src/org/jooq/test/derby/generatedclasses/tables/records/XTestCase_85Record.java b/jOOQ-test/src/org/jooq/test/derby/generatedclasses/tables/records/XTestCase_85Record.java new file mode 100644 index 00000000000..789f5f03905 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/derby/generatedclasses/tables/records/XTestCase_85Record.java @@ -0,0 +1,106 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.derby.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + */ +public class XTestCase_85Record extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = 107309154; + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setId(java.lang.Integer value) { + setValue(org.jooq.test.derby.generatedclasses.tables.XTestCase_85.ID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.lang.Integer getId() { + return getValue(org.jooq.test.derby.generatedclasses.tables.XTestCase_85.ID); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_X_TEST_CASE_85
+	 * FOREIGN KEY (X_UNUSED_ID, X_UNUSED_NAME)
+	 * REFERENCES TEST.X_UNUSED (ID, NAME)
+	 * 
+ */ + public void setXUnusedId(java.lang.Integer value) { + setValue(org.jooq.test.derby.generatedclasses.tables.XTestCase_85.X_UNUSED_ID, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_X_TEST_CASE_85
+	 * FOREIGN KEY (X_UNUSED_ID, X_UNUSED_NAME)
+	 * REFERENCES TEST.X_UNUSED (ID, NAME)
+	 * 
+ */ + public java.lang.Integer getXUnusedId() { + return getValue(org.jooq.test.derby.generatedclasses.tables.XTestCase_85.X_UNUSED_ID); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_X_TEST_CASE_85
+	 * FOREIGN KEY (X_UNUSED_ID, X_UNUSED_NAME)
+	 * REFERENCES TEST.X_UNUSED (ID, NAME)
+	 * 
+ */ + public org.jooq.test.derby.generatedclasses.tables.records.XUnusedRecord fetchXUnused() { + return create() + .selectFrom(org.jooq.test.derby.generatedclasses.tables.XUnused.X_UNUSED) + .where(org.jooq.test.derby.generatedclasses.tables.XUnused.ID.equal(getValue(org.jooq.test.derby.generatedclasses.tables.XTestCase_85.X_UNUSED_ID))) + .and(org.jooq.test.derby.generatedclasses.tables.XUnused.NAME.equal(getValue(org.jooq.test.derby.generatedclasses.tables.XTestCase_85.X_UNUSED_NAME))) + .fetchOne(); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_X_TEST_CASE_85
+	 * FOREIGN KEY (X_UNUSED_ID, X_UNUSED_NAME)
+	 * REFERENCES TEST.X_UNUSED (ID, NAME)
+	 * 
+ */ + public void setXUnusedName(java.lang.String value) { + setValue(org.jooq.test.derby.generatedclasses.tables.XTestCase_85.X_UNUSED_NAME, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_X_TEST_CASE_85
+	 * FOREIGN KEY (X_UNUSED_ID, X_UNUSED_NAME)
+	 * REFERENCES TEST.X_UNUSED (ID, NAME)
+	 * 
+ */ + public java.lang.String getXUnusedName() { + return getValue(org.jooq.test.derby.generatedclasses.tables.XTestCase_85.X_UNUSED_NAME); + } + + /** + * Create a detached XTestCase_85Record + */ + public XTestCase_85Record() { + super(org.jooq.test.derby.generatedclasses.tables.XTestCase_85.X_TEST_CASE_85); + } +} diff --git a/jOOQ-test/src/org/jooq/test/derby/generatedclasses/tables/records/XUnusedRecord.java b/jOOQ-test/src/org/jooq/test/derby/generatedclasses/tables/records/XUnusedRecord.java new file mode 100644 index 00000000000..0e60801504c --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/derby/generatedclasses/tables/records/XUnusedRecord.java @@ -0,0 +1,302 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.derby.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + */ +public class XUnusedRecord extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = -605499140; + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setId(java.lang.Integer value) { + setValue(org.jooq.test.derby.generatedclasses.tables.XUnused.ID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.lang.Integer getId() { + return getValue(org.jooq.test.derby.generatedclasses.tables.XUnused.ID); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.util.List fetchXUnusedList() { + return create() + .selectFrom(org.jooq.test.derby.generatedclasses.tables.XUnused.X_UNUSED) + .where(org.jooq.test.derby.generatedclasses.tables.XUnused.ID_REF.equal(getValue(org.jooq.test.derby.generatedclasses.tables.XUnused.ID))) + .and(org.jooq.test.derby.generatedclasses.tables.XUnused.NAME_REF.equal(getValue(org.jooq.test.derby.generatedclasses.tables.XUnused.NAME))) + .fetch(); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.util.List fetchXTestCase_85List() { + return create() + .selectFrom(org.jooq.test.derby.generatedclasses.tables.XTestCase_85.X_TEST_CASE_85) + .where(org.jooq.test.derby.generatedclasses.tables.XTestCase_85.X_UNUSED_ID.equal(getValue(org.jooq.test.derby.generatedclasses.tables.XUnused.ID))) + .and(org.jooq.test.derby.generatedclasses.tables.XTestCase_85.X_UNUSED_NAME.equal(getValue(org.jooq.test.derby.generatedclasses.tables.XUnused.NAME))) + .fetch(); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.util.List fetchXTestCase_64_69List() { + return create() + .selectFrom(org.jooq.test.derby.generatedclasses.tables.XTestCase_64_69.X_TEST_CASE_64_69) + .where(org.jooq.test.derby.generatedclasses.tables.XTestCase_64_69.UNUSED_ID.equal(getValue(org.jooq.test.derby.generatedclasses.tables.XUnused.ID))) + .fetch(); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setName(java.lang.String value) { + setValue(org.jooq.test.derby.generatedclasses.tables.XUnused.NAME, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.lang.String getName() { + return getValue(org.jooq.test.derby.generatedclasses.tables.XUnused.NAME); + } + + /** + * An uncommented item + */ + public void setBigInteger(java.math.BigInteger value) { + setValue(org.jooq.test.derby.generatedclasses.tables.XUnused.BIG_INTEGER, value); + } + + /** + * An uncommented item + */ + public java.math.BigInteger getBigInteger() { + return getValue(org.jooq.test.derby.generatedclasses.tables.XUnused.BIG_INTEGER); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_X_UNUSED_SELF
+	 * FOREIGN KEY (ID_REF, NAME_REF)
+	 * REFERENCES TEST.X_UNUSED (ID, NAME)
+	 * 
+ */ + public void setIdRef(java.lang.Integer value) { + setValue(org.jooq.test.derby.generatedclasses.tables.XUnused.ID_REF, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_X_UNUSED_SELF
+	 * FOREIGN KEY (ID_REF, NAME_REF)
+	 * REFERENCES TEST.X_UNUSED (ID, NAME)
+	 * 
+ */ + public java.lang.Integer getIdRef() { + return getValue(org.jooq.test.derby.generatedclasses.tables.XUnused.ID_REF); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_X_UNUSED_SELF
+	 * FOREIGN KEY (ID_REF, NAME_REF)
+	 * REFERENCES TEST.X_UNUSED (ID, NAME)
+	 * 
+ */ + public org.jooq.test.derby.generatedclasses.tables.records.XUnusedRecord fetchXUnused() { + return create() + .selectFrom(org.jooq.test.derby.generatedclasses.tables.XUnused.X_UNUSED) + .where(org.jooq.test.derby.generatedclasses.tables.XUnused.ID.equal(getValue(org.jooq.test.derby.generatedclasses.tables.XUnused.ID_REF))) + .and(org.jooq.test.derby.generatedclasses.tables.XUnused.NAME.equal(getValue(org.jooq.test.derby.generatedclasses.tables.XUnused.NAME_REF))) + .fetchOne(); + } + + /** + * An uncommented item + */ + public void setClass_(java.lang.Integer value) { + setValue(org.jooq.test.derby.generatedclasses.tables.XUnused.CLASS, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getClass_() { + return getValue(org.jooq.test.derby.generatedclasses.tables.XUnused.CLASS); + } + + /** + * An uncommented item + */ + public void setFields_(java.lang.Integer value) { + setValue(org.jooq.test.derby.generatedclasses.tables.XUnused.FIELDS, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getFields_() { + return getValue(org.jooq.test.derby.generatedclasses.tables.XUnused.FIELDS); + } + + /** + * An uncommented item + */ + public void setConfiguration_(java.lang.Integer value) { + setValue(org.jooq.test.derby.generatedclasses.tables.XUnused.CONFIGURATION, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getConfiguration_() { + return getValue(org.jooq.test.derby.generatedclasses.tables.XUnused.CONFIGURATION); + } + + /** + * An uncommented item + */ + public void setUDT(java.lang.Integer value) { + setValue(org.jooq.test.derby.generatedclasses.tables.XUnused.U_D_T, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getUDT() { + return getValue(org.jooq.test.derby.generatedclasses.tables.XUnused.U_D_T); + } + + /** + * An uncommented item + */ + public void setMetaData_(java.lang.Integer value) { + setValue(org.jooq.test.derby.generatedclasses.tables.XUnused.META_DATA, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getMetaData_() { + return getValue(org.jooq.test.derby.generatedclasses.tables.XUnused.META_DATA); + } + + /** + * An uncommented item + */ + public void setType0_(java.lang.Integer value) { + setValue(org.jooq.test.derby.generatedclasses.tables.XUnused.TYPE0, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getType0_() { + return getValue(org.jooq.test.derby.generatedclasses.tables.XUnused.TYPE0); + } + + /** + * An uncommented item + */ + public void setPrimaryKey(java.lang.Integer value) { + setValue(org.jooq.test.derby.generatedclasses.tables.XUnused.PRIMARY_KEY, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getPrimaryKey() { + return getValue(org.jooq.test.derby.generatedclasses.tables.XUnused.PRIMARY_KEY); + } + + /** + * An uncommented item + */ + public void setPrimarykey(java.lang.Integer value) { + setValue(org.jooq.test.derby.generatedclasses.tables.XUnused.PRIMARYKEY, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getPrimarykey() { + return getValue(org.jooq.test.derby.generatedclasses.tables.XUnused.PRIMARYKEY); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_X_UNUSED_SELF
+	 * FOREIGN KEY (ID_REF, NAME_REF)
+	 * REFERENCES TEST.X_UNUSED (ID, NAME)
+	 * 
+ */ + public void setNameRef(java.lang.String value) { + setValue(org.jooq.test.derby.generatedclasses.tables.XUnused.NAME_REF, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_X_UNUSED_SELF
+	 * FOREIGN KEY (ID_REF, NAME_REF)
+	 * REFERENCES TEST.X_UNUSED (ID, NAME)
+	 * 
+ */ + public java.lang.String getNameRef() { + return getValue(org.jooq.test.derby.generatedclasses.tables.XUnused.NAME_REF); + } + + /** + * An uncommented item + */ + public void setField_737(java.math.BigDecimal value) { + setValue(org.jooq.test.derby.generatedclasses.tables.XUnused.FIELD_737, value); + } + + /** + * An uncommented item + */ + public java.math.BigDecimal getField_737() { + return getValue(org.jooq.test.derby.generatedclasses.tables.XUnused.FIELD_737); + } + + /** + * Create a detached XUnusedRecord + */ + public XUnusedRecord() { + super(org.jooq.test.derby.generatedclasses.tables.XUnused.X_UNUSED); + } +} diff --git a/jOOQ-test/src/org/jooq/test/derby/reset.sql b/jOOQ-test/src/org/jooq/test/derby/reset.sql new file mode 100644 index 00000000000..2e35c549a7d --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/derby/reset.sql @@ -0,0 +1,63 @@ +DELETE FROM t_658_ref/ +DELETE FROM t_658_11/ +DELETE FROM t_658_21/ +DELETE FROM t_658_31/ +DELETE FROM t_658_12/ +DELETE FROM t_658_22/ +DELETE FROM t_658_32/ + +DELETE FROM t_book_to_book_store/ +DELETE FROM t_book_store/ +DELETE FROM t_book/ +DELETE FROM t_author/ +DELETE FROM t_language/ +DELETE FROM t_booleans/ +DELETE FROM t_dates/ +DELETE FROM t_identity/ +DELETE FROM t_identity_pk/ + +DROP SEQUENCE s_author_id RESTRICT/ +CREATE SEQUENCE s_author_id START WITH 1/ + +INSERT INTO t_language (id, cd, description, description_english) VALUES (1, 'en', 'English', 'English')/ +INSERT INTO t_language (id, cd, description, description_english) VALUES (2, 'de', 'Deutsch', 'German')/ +INSERT INTO t_language (id, cd, description, description_english) VALUES (3, 'fr', 'Français', 'French')/ +INSERT INTO t_language (id, cd, description, description_english) VALUES (4, 'pt', null, null)/ +/ + +INSERT INTO t_658_11 VALUES ('A'), ('B'), ('C')/ +INSERT INTO t_658_21 VALUES (1), (2), (3)/ +INSERT INTO t_658_31 VALUES (1), (2), (3)/ +INSERT INTO t_658_12 VALUES ('A', 'A'), ('B', 'B'), ('C', 'C')/ +INSERT INTO t_658_22 VALUES (1, 1), (2, 2), (3, 3)/ +INSERT INTO t_658_32 VALUES (1, 1), (2, 2), (3, 3)/ +INSERT INTO t_658_ref VALUES ('A', 1, 1, 'B', 2, 2)/ + +INSERT INTO t_author VALUES (next value for s_author_id, 'George', 'Orwell', '1903-06-25', 1903, null) +/ +INSERT INTO t_author VALUES (next value for s_author_id, 'Paulo', 'Coelho', '1947-08-24', 1947, null) +/ + +INSERT INTO t_book VALUES (1, 1, null, null, '1984', 1948, 1, 'To know and not to know, to be conscious of complete truthfulness while telling carefully constructed lies, to hold simultaneously two opinions which cancelled out, knowing them to be contradictory and believing in both of them, to use logic against logic, to repudiate morality while laying claim to it, to believe that democracy was impossible and that the Party was the guardian of democracy, to forget, whatever it was necessary to forget, then to draw it back into memory again at the moment when it was needed, and then promptly to forget it again, and above all, to apply the same process to the process itself -- that was the ultimate subtlety; consciously to induce unconsciousness, and then, once again, to become unconscious of the act of hypnosis you had just performed. Even to understand the word ''doublethink'' involved the use of doublethink..', null) +/ +INSERT INTO t_book VALUES (2, 1, null, null, 'Animal Farm', 1945, 1, null, null) +/ +INSERT INTO t_book VALUES (3, 2, null, null, 'O Alquimista', 1988, 4, null, null) +/ +INSERT INTO t_book VALUES (4, 2, null, null, 'Brida', 1990, 2, null, null) +/ + +INSERT INTO t_book_store (name) VALUES + ('Orell Füssli'), + ('Ex Libris'), + ('Buchhandlung im Volkshaus') +/ + +INSERT INTO t_book_to_book_store VALUES + ('Orell Füssli', 1, 10), + ('Orell Füssli', 2, 10), + ('Orell Füssli', 3, 10), + ('Ex Libris', 1, 1), + ('Ex Libris', 3, 2), + ('Buchhandlung im Volkshaus', 3, 1) +/ diff --git a/jOOQ-test/src/org/jooq/test/h2/F.java b/jOOQ-test/src/org/jooq/test/h2/F.java new file mode 100644 index 00000000000..820036ed3f1 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/h2/F.java @@ -0,0 +1,142 @@ +/** + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com + * All rights reserved. + * + * This software is licensed to you under the Apache License, Version 2.0 + * (the "License"); You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * 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 "jOOQ" 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 COPYRIGHT OWNER 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. + */ +package org.jooq.test.h2; + +import static org.jooq.impl.Factory.count; +import static org.jooq.impl.Factory.max; +import static org.jooq.impl.Factory.sign; +import static org.jooq.impl.SQLDataType.INTEGER; +import static org.jooq.test.h2.generatedclasses.tables.TAuthor.T_AUTHOR; +import static org.jooq.test.h2.generatedclasses.tables.TBook.T_BOOK; + +import java.sql.Connection; +import java.sql.PreparedStatement; +import java.sql.ResultSet; +import java.sql.SQLException; + +import org.jooq.test.h2.generatedclasses.Routines; +import org.jooq.test.h2.generatedclasses.tables.TAuthor; +import org.jooq.test.h2.generatedclasses.tables.TBook; +import org.jooq.util.h2.H2Factory; + +/** + * Pre-compiled stored functions for H2 + * + * @author Lukas Eder + */ +public class F { + + public static void pCreateAuthor(Connection connection) { + Routines.pCreateAuthorByName(create(connection), "William", "Shakespeare"); + } + + public static void pCreateAuthorByName(Connection connection, String firstName, String lastName) { + H2Factory create = create(connection); + + create.insertInto(T_AUTHOR) + .set(TAuthor.ID, create.select(max(TAuthor.ID).add(1)).from(T_AUTHOR).asField()) + .set(TAuthor.FIRST_NAME, firstName) + .set(TAuthor.LAST_NAME, lastName) + .execute(); + } + + public static ResultSet fGetOneCursor(Connection connection, Object[] bookIds) throws SQLException { + PreparedStatement stmt = null; + + if (bookIds == null) bookIds = new Object[0]; + + String sql = create(connection) + .select() + .from(T_BOOK) + .where(TBook.ID.in(INTEGER.getArrayDataType().convert(bookIds))) + .orderBy(TBook.ID.asc()) + .getSQL(); + + stmt = connection.prepareStatement(sql); + int i = 1; + for (Object o : bookIds) { + stmt.setObject(i++, o); + } + + return stmt.executeQuery(); + } + + public static Integer fAuthorExists(Connection connection, String authorName) { + H2Factory create = create(connection); + + Integer result = + create.select(sign(count())) + .from(T_AUTHOR) + .where(TAuthor.FIRST_NAME.equal(authorName)) + .or(TAuthor.LAST_NAME.equal(authorName)) + .fetchOne(0, Integer.class); + + return result; + } + + public static Object[] f_arrays1(Object[] in_array) { + return in_array; + } + + public static Object[] f_arrays2(Object[] in_array) { + return in_array; + } + + public static Object[] f_arrays3(Object[] in_array) { + return in_array; + } + + @SuppressWarnings("unused") + public static Integer f317(Integer p1, Integer p2, Integer p3, Integer p4) { + return 1000 * p1 + 100 * p2 + p4; + } + + public static String f1256(String string) { + return string; + } + + public static Integer fNumber(Integer n) { + return n; + } + + public static Integer fOne() { + return 1; + } + + private static H2Factory create(Connection connection) { + return new H2Factory(connection); + } +} diff --git a/jOOQ-test/src/org/jooq/test/h2/TTriggersTrigger.java b/jOOQ-test/src/org/jooq/test/h2/TTriggersTrigger.java new file mode 100644 index 00000000000..4746141e80b --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/h2/TTriggersTrigger.java @@ -0,0 +1,72 @@ +/** + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com + * All rights reserved. + * + * This software is licensed to you under the Apache License, Version 2.0 + * (the "License"); You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * 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 "jOOQ" 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 COPYRIGHT OWNER 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. + */ +package org.jooq.test.h2; + +import java.sql.Connection; +import java.sql.SQLException; + +import org.jooq.test.h2.generatedclasses.Sequences; +import org.jooq.util.h2.H2Factory; + +import org.h2.api.Trigger; + +/** + * A sample trigger for H2 + * + * @author Lukas Eder + */ +public class TTriggersTrigger implements Trigger { + + @Override + public void init(Connection conn, String schemaName, String triggerName, String tableName, boolean before, int type) + throws SQLException {} + + @Override + public void fire(Connection conn, Object[] oldRow, Object[] newRow) throws SQLException { + H2Factory create = new H2Factory(conn); + int maxID = create.nextval(Sequences.S_TRIGGERS_SEQUENCE).intValue(); + newRow[0] = maxID; + newRow[1] = maxID; + newRow[2] = maxID * 2; + } + + @Override + public void close() throws SQLException {} + + @Override + public void remove() throws SQLException {} + +} diff --git a/jOOQ-test/src/org/jooq/test/h2/create.sql b/jOOQ-test/src/org/jooq/test/h2/create.sql new file mode 100644 index 00000000000..84e50137ff4 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/h2/create.sql @@ -0,0 +1,396 @@ +DROP VIEW IF EXISTS v_author/ +DROP VIEW IF EXISTS v_book/ +DROP VIEW IF EXISTS v_library/ + +DROP ALIAS IF EXISTS f_arrays1/ +DROP ALIAS IF EXISTS f_arrays2/ +DROP ALIAS IF EXISTS f_arrays3/ +DROP ALIAS IF EXISTS f_author_exists/ +DROP ALIAS IF EXISTS f_one/ +DROP ALIAS IF EXISTS f_number/ +DROP ALIAS IF EXISTS f317/ +DROP ALIAS IF EXISTS f1256/ +DROP ALIAS IF EXISTS p_create_author/ +DROP ALIAS IF EXISTS p_create_author_by_name/ +DROP ALIAS IF EXISTS f_get_one_cursor/ + +DROP TRIGGER IF EXISTS t_triggers_trigger/ +DROP SEQUENCE IF EXISTS s_triggers_sequence/ + +DROP TABLE IF EXISTS t_dates/ +DROP TABLE IF EXISTS t_triggers/ +DROP TABLE IF EXISTS t_arrays/ +DROP TABLE IF EXISTS t_book_to_book_store/ +DROP TABLE IF EXISTS t_book_store/ +DROP TABLE IF EXISTS t_book/ +DROP TABLE IF EXISTS t_book_details/ +DROP TABLE IF EXISTS t_author/ +DROP TABLE IF EXISTS t_language/ +DROP TABLE IF EXISTS x_test_case_71/ +DROP TABLE IF EXISTS x_test_case_64_69/ +DROP TABLE IF EXISTS x_test_case_85/ +DROP TABLE IF EXISTS x_unused/ +DROP TABLE IF EXISTS t_639_numbers_table/ +DROP TABLE IF EXISTS t_658_ref/ +DROP TABLE IF EXISTS t_658_11/ +DROP TABLE IF EXISTS t_658_21/ +DROP TABLE IF EXISTS t_658_31/ +DROP TABLE IF EXISTS t_658_12/ +DROP TABLE IF EXISTS t_658_22/ +DROP TABLE IF EXISTS t_658_32/ +DROP TABLE IF EXISTS t_725_lob_test/ +DROP TABLE IF EXISTS t_785/ +DROP TABLE IF EXISTS t_877/ +DROP TABLE IF EXISTS t_booleans/ +DROP TABLE IF EXISTS t_identity/ +DROP TABLE IF EXISTS t_identity_pk/ + +CREATE TABLE t_identity_pk ( + id INTEGER AUTO_INCREMENT, + val int, + + CONSTRAINT pk_t_identity_pk PRIMARY KEY (id) +) +/ + +CREATE TABLE t_identity ( + id INTEGER AUTO_INCREMENT, + val int +) +/ + +CREATE TABLE t_dates ( + id int, + d date, + t time, + ts timestamp, + d_int int, + ts_bigint bigint, + + CONSTRAINT pk_t_dates PRIMARY KEY (id) +) +/ + +CREATE TABLE t_booleans ( + id int, + one_zero int, + true_false_lc varchar(5), + true_false_uc varchar(5), + yes_no_lc varchar(3), + yes_no_uc varchar(3), + y_n_lc char(1), + y_n_uc char(1), + vc_boolean varchar(1), + c_boolean char(1), + n_boolean int, + + CONSTRAINT pk_t_booleans PRIMARY KEY (id) +) +/ + +CREATE TABLE t_triggers ( + id_generated int AUTO_INCREMENT, + id int, + counter int, + + CONSTRAINT pk_t_triggers PRIMARY KEY (id_generated) +) +/ + +CREATE SEQUENCE s_triggers_sequence START WITH 1/ + +CREATE TRIGGER t_triggers_trigger +BEFORE INSERT +ON t_triggers +FOR EACH ROW +CALL "org.jooq.test.h2.TTriggersTrigger" +/ + +CREATE TABLE t_language ( + cd CHAR(2) NOT NULL, + description VARCHAR(50), + description_english VARCHAR(50), + id INTEGER NOT NULL, + + CONSTRAINT pk_t_language PRIMARY KEY (ID) +) +/ + +COMMENT ON TABLE t_language IS 'An entity holding language master data'/ +COMMENT ON COLUMN t_language.id IS 'The language ID'/ +COMMENT ON COLUMN t_language.cd IS 'The language ISO code'/ +COMMENT ON COLUMN t_language.description IS 'The language description'/ + +CREATE TABLE t_658_11 ( + id CHAR(3) NOT NULL, + + CONSTRAINT pk_t_658_11 PRIMARY KEY (id) +) +/ + +CREATE TABLE t_658_21 ( + id INT NOT NULL, + + CONSTRAINT pk_t_658_21 PRIMARY KEY (id) +) +/ + +CREATE TABLE t_658_31 ( + id BIGINT NOT NULL, + + CONSTRAINT pk_t_658_31 PRIMARY KEY (id) +) +/ + +CREATE TABLE t_658_12 ( + id CHAR(3) NOT NULL, + cd CHAR(3) NOT NULL, + + CONSTRAINT pk_t_658_12 PRIMARY KEY (id) +) +/ + +CREATE TABLE t_658_22 ( + id INT NOT NULL, + cd INT NOT NULL, + + CONSTRAINT pk_t_658_22 PRIMARY KEY (id) +) +/ + +CREATE TABLE t_658_32 ( + id BIGINT NOT NULL, + cd BIGINT NOT NULL, + + CONSTRAINT pk_t_658_32 PRIMARY KEY (id) +) +/ + +CREATE TABLE t_658_ref ( + ref_11 char(3), + ref_21 int, + ref_31 bigint, + ref_12 char(3), + ref_22 int, + ref_32 bigint, + + CONSTRAINT fk_t_658_11 FOREIGN KEY (ref_11) REFERENCES t_658_11(id), + CONSTRAINT fk_t_658_21 FOREIGN KEY (ref_21) REFERENCES t_658_21(id), + CONSTRAINT fk_t_658_31 FOREIGN KEY (ref_31) REFERENCES t_658_31(id), + CONSTRAINT fk_t_658_12 FOREIGN KEY (ref_12) REFERENCES t_658_12(id), + CONSTRAINT fk_t_658_22 FOREIGN KEY (ref_22) REFERENCES t_658_22(id), + CONSTRAINT fk_t_658_32 FOREIGN KEY (ref_32) REFERENCES t_658_32(id) +) +/ + +CREATE TABLE t_725_lob_test ( + ID int NOT NULL, + LOB BLOB NULL, + + CONSTRAINT pk_t_725_lob_test PRIMARY KEY (id) +) +/ + +CREATE TABLE t_785 ( + ID int, + NAME varchar(50), + VALUE varchar(50) +) +/ + +CREATE TABLE t_877 ( + ID INT AUTO_INCREMENT +) +/ + +CREATE TABLE t_author ( + ID INT NOT NULL, + FIRST_NAME VARCHAR(50), + LAST_NAME VARCHAR(50) NOT NULL, + DATE_OF_BIRTH DATE, + YEAR_OF_BIRTH INT, + ADDRESS VARCHAR(50), + + CONSTRAINT pk_t_author PRIMARY KEY (ID) +); +/ +COMMENT ON TABLE t_author IS 'An entity holding authors of books'/ +COMMENT ON COLUMN t_author.id IS 'The author ID'/ +COMMENT ON COLUMN t_author.first_name IS 'The author''s first name'/ +COMMENT ON COLUMN t_author.last_name IS 'The author''s last name'/ +COMMENT ON COLUMN t_author.date_of_birth IS 'The author''s date of birth'/ +COMMENT ON COLUMN t_author.year_of_birth IS 'The author''s year of birth'/ +COMMENT ON COLUMN t_author.address IS 'The author''s address'/ + +CREATE TABLE t_book_details ( + ID INT, + + CONSTRAINT pk_t_book_details PRIMARY KEY (ID) +) +/ +COMMENT ON TABLE t_book_details IS 'An unused details table'/ + +CREATE TABLE t_book ( + ID INT NOT NULL, + AUTHOR_ID INT NOT NULL, + co_author_id int, + DETAILS_ID INT, + TITLE VARCHAR(400) NOT NULL, + PUBLISHED_IN INT NOT NULL, + LANGUAGE_ID INT NOT NULL, + CONTENT_TEXT CLOB, + CONTENT_PDF BLOB, + + CONSTRAINT pk_t_book PRIMARY KEY (ID), + CONSTRAINT fk_t_book_author_id FOREIGN KEY (AUTHOR_ID) REFERENCES T_AUTHOR(ID), + CONSTRAINT fk_t_book_co_author_id FOREIGN KEY (CO_AUTHOR_ID) REFERENCES T_AUTHOR(ID), + CONSTRAINT fk_t_book_details_id FOREIGN KEY (DETAILS_ID) REFERENCES T_BOOK_DETAILS(ID), + CONSTRAINT fk_t_book_language_id FOREIGN KEY (LANGUAGE_ID) REFERENCES T_LANGUAGE(ID) +); +/ +COMMENT ON TABLE t_book IS 'An entity holding books'/ +COMMENT ON COLUMN t_book.id IS 'The book ID'/ +COMMENT ON COLUMN t_book.author_id IS 'The author ID in entity ''author'''/ +COMMENT ON COLUMN t_book.title IS 'The book''s title'/ +COMMENT ON COLUMN t_book.published_in IS 'The year the book was published in'/ +COMMENT ON COLUMN t_book.language_id IS 'The language of the book'/ +COMMENT ON COLUMN t_book.content_text IS 'Some textual content of the book'/ +COMMENT ON COLUMN t_book.content_pdf IS 'Some binary content of the book'/ + +CREATE TABLE t_book_store ( + name VARCHAR(400) NOT NULL, + + CONSTRAINT uk_t_book_store_name UNIQUE(name) +); +/ +COMMENT ON TABLE t_book_store IS 'A book store'/ +COMMENT ON COLUMN t_book_store.name IS 'The books store name'/ + + +CREATE TABLE t_book_to_book_store ( + book_store_name VARCHAR(400) NOT NULL, + book_id INTEGER NOT NULL, + stock INTEGER, + + CONSTRAINT pk_b2bs PRIMARY KEY(book_store_name, book_id), + CONSTRAINT fk_b2bs_bs_name FOREIGN KEY (book_store_name) + REFERENCES t_book_store (name) + ON DELETE CASCADE, + CONSTRAINT fk_b2bs_b_id FOREIGN KEY (book_id) + REFERENCES t_book (id) + ON DELETE CASCADE +); +/ +COMMENT ON TABLE t_book_to_book_store IS 'An m:n relation between books and book stores'/ +COMMENT ON COLUMN t_book_to_book_store.book_store_name IS 'The book store name'/ +COMMENT ON COLUMN t_book_to_book_store.book_id IS 'The book ID'/ +COMMENT ON COLUMN t_book_to_book_store.stock IS 'The number of books on stock'/ + + +CREATE TABLE t_arrays ( + id integer not null, + string_array ARRAY, + number_array ARRAY, + date_array ARRAY, + + CONSTRAINT pk_t_arrays PRIMARY KEY (ID) +); +/ + +CREATE TABLE x_unused ( + ID INT NOT NULL, + NAME VARCHAR(10) NOT NULL, + BIG_INTEGER DECIMAL(25), + ID_REF INT, + NAME_REF VARCHAR(10), + CLASS INT, + FIELDS INT, + TABLE INT, + CONFIGURATION INT, + U_D_T INT, + META_DATA INT, + VALUES INT, + TYPE0 INT, + PRIMARY_KEY INT, + PRIMARYKEY INT, + "FIELD 737" DECIMAL(25, 2), + + CONSTRAINT pk_x_unused PRIMARY KEY(ID, NAME), + CONSTRAINT uk_x_unused_id UNIQUE(ID), + CONSTRAINT fk_x_unused_self FOREIGN KEY(ID_REF, NAME_REF) REFERENCES X_UNUSED(ID, NAME) +); +/ + +CREATE TABLE t_639_numbers_table ( + ID INT NOT NULL, + BYTE TINYINT, + SHORT SMALLINT, + INTEGER INT, + LONG BIGINT, + BYTE_DECIMAL DECIMAL(2, 0), + SHORT_DECIMAL DECIMAL(4, 0), + INTEGER_DECIMAL DECIMAL(9, 0), + LONG_DECIMAL DECIMAL(18, 0), + BIG_INTEGER DECIMAL(22, 0), + BIG_DECIMAL DECIMAL(22, 5), + FLOAT REAL, + DOUBLE DOUBLE, + + CONSTRAINT pk_t_639_numbers_table PRIMARY KEY(ID) +); +/ + +CREATE TABLE x_test_case_64_69 ( + ID INT NOT NULL, + UNUSED_ID INT, + + CONSTRAINT pk_x_test_case_64_69 PRIMARY KEY(ID), + CONSTRAINT fk_x_test_case_64_69a FOREIGN KEY(UNUSED_ID) REFERENCES X_UNUSED(ID), + CONSTRAINT fk_x_test_case_64_69b FOREIGN KEY(UNUSED_ID) REFERENCES X_UNUSED(ID) +); +/ + +CREATE TABLE x_test_case_71 ( + ID INT NOT NULL, + TEST_CASE_64_69_ID SMALLINT, + + CONSTRAINT pk_x_test_case_71 PRIMARY KEY(ID), + CONSTRAINT fk_x_test_case_71 FOREIGN KEY(TEST_CASE_64_69_ID) REFERENCES X_TEST_CASE_64_69(ID) +); +/ + +CREATE TABLE x_test_case_85 ( + id int NOT NULL, + x_unused_id int, + x_unused_name VARCHAR(10), + + CONSTRAINT pk_x_test_case_85 PRIMARY KEY(ID), + CONSTRAINT fk_x_test_case_85 FOREIGN KEY(x_unused_id, x_unused_name) REFERENCES X_UNUSED(id, name) +); +/ + +CREATE VIEW V_LIBRARY (AUTHOR, TITLE) AS +SELECT CONCAT(T_AUTHOR.FIRST_NAME, ' ', T_AUTHOR.LAST_NAME), T_BOOK.TITLE +FROM T_AUTHOR JOIN T_BOOK ON T_BOOK.AUTHOR_ID = T_AUTHOR.ID; +/ + +CREATE VIEW v_author AS +SELECT * FROM t_author +/ + +CREATE VIEW v_book AS +SELECT * FROM t_book +/ + + +CREATE ALIAS f_one FOR "org.jooq.test.h2.F.fOne";/ +CREATE ALIAS f_number FOR "org.jooq.test.h2.F.fNumber";/ +CREATE ALIAS f317 FOR "org.jooq.test.h2.F.f317";/ +CREATE ALIAS f1256 FOR "org.jooq.test.h2.F.f1256";/ +CREATE ALIAS f_arrays1 FOR "org.jooq.test.h2.F.f_arrays1";/ +CREATE ALIAS f_arrays2 FOR "org.jooq.test.h2.F.f_arrays2";/ +CREATE ALIAS f_arrays3 FOR "org.jooq.test.h2.F.f_arrays3";/ +CREATE ALIAS f_author_exists FOR "org.jooq.test.h2.F.fAuthorExists";/ +CREATE ALIAS f_get_one_cursor FOR "org.jooq.test.h2.F.fGetOneCursor";/ +CREATE ALIAS p_create_author_by_name FOR "org.jooq.test.h2.F.pCreateAuthorByName";/ +CREATE ALIAS p_create_author FOR "org.jooq.test.h2.F.pCreateAuthor";/ \ No newline at end of file diff --git a/jOOQ-test/src/org/jooq/test/h2/generatedclasses/Keys.java b/jOOQ-test/src/org/jooq/test/h2/generatedclasses/Keys.java new file mode 100644 index 00000000000..deb130cd483 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/h2/generatedclasses/Keys.java @@ -0,0 +1,52 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.h2.generatedclasses; + +/** + * This class is generated by jOOQ. + * + * A class modelling foreign key relationships between tables of the PUBLIC schema + */ +@SuppressWarnings({"unchecked"}) +public class Keys extends org.jooq.impl.AbstractKeys { + + // IDENTITY definitions + public static final org.jooq.Identity IDENTITY_T_IDENTITY_PK = createIdentity(org.jooq.test.h2.generatedclasses.tables.TIdentityPk.T_IDENTITY_PK, org.jooq.test.h2.generatedclasses.tables.TIdentityPk.ID); + public static final org.jooq.Identity IDENTITY_T_IDENTITY = createIdentity(org.jooq.test.h2.generatedclasses.tables.TIdentity.T_IDENTITY, org.jooq.test.h2.generatedclasses.tables.TIdentity.ID); + public static final org.jooq.Identity IDENTITY_T_TRIGGERS = createIdentity(org.jooq.test.h2.generatedclasses.tables.TTriggers.T_TRIGGERS, org.jooq.test.h2.generatedclasses.tables.TTriggers.ID_GENERATED); + public static final org.jooq.Identity IDENTITY_T_877 = createIdentity(org.jooq.test.h2.generatedclasses.tables.T_877.T_877, org.jooq.test.h2.generatedclasses.tables.T_877.ID); + + // UNIQUE and PRIMARY KEY definitions + public static final org.jooq.UniqueKey PK_T_IDENTITY_PK = createUniqueKey(org.jooq.test.h2.generatedclasses.tables.TIdentityPk.T_IDENTITY_PK, org.jooq.test.h2.generatedclasses.tables.TIdentityPk.ID); + public static final org.jooq.UniqueKey PK_T_DATES = createUniqueKey(org.jooq.test.h2.generatedclasses.tables.TDates.T_DATES, org.jooq.test.h2.generatedclasses.tables.TDates.ID); + public static final org.jooq.UniqueKey PK_T_BOOLEANS = createUniqueKey(org.jooq.test.h2.generatedclasses.tables.TBooleans.T_BOOLEANS, org.jooq.test.h2.generatedclasses.tables.TBooleans.ID); + public static final org.jooq.UniqueKey PK_T_TRIGGERS = createUniqueKey(org.jooq.test.h2.generatedclasses.tables.TTriggers.T_TRIGGERS, org.jooq.test.h2.generatedclasses.tables.TTriggers.ID_GENERATED); + public static final org.jooq.UniqueKey PK_T_725_LOB_TEST = createUniqueKey(org.jooq.test.h2.generatedclasses.tables.T_725LobTest.T_725_LOB_TEST, org.jooq.test.h2.generatedclasses.tables.T_725LobTest.ID); + public static final org.jooq.UniqueKey PK_T_AUTHOR = createUniqueKey(org.jooq.test.h2.generatedclasses.tables.TAuthor.T_AUTHOR, org.jooq.test.h2.generatedclasses.tables.TAuthor.ID); + public static final org.jooq.UniqueKey PK_T_BOOK = createUniqueKey(org.jooq.test.h2.generatedclasses.tables.TBook.T_BOOK, org.jooq.test.h2.generatedclasses.tables.TBook.ID); + public static final org.jooq.UniqueKey UK_T_BOOK_STORE_NAME = createUniqueKey(org.jooq.test.h2.generatedclasses.tables.TBookStore.T_BOOK_STORE, org.jooq.test.h2.generatedclasses.tables.TBookStore.NAME); + public static final org.jooq.UniqueKey PK_B2BS = createUniqueKey(org.jooq.test.h2.generatedclasses.tables.TBookToBookStore.T_BOOK_TO_BOOK_STORE, org.jooq.test.h2.generatedclasses.tables.TBookToBookStore.BOOK_STORE_NAME, org.jooq.test.h2.generatedclasses.tables.TBookToBookStore.BOOK_ID); + public static final org.jooq.UniqueKey PK_T_ARRAYS = createUniqueKey(org.jooq.test.h2.generatedclasses.tables.TArrays.T_ARRAYS, org.jooq.test.h2.generatedclasses.tables.TArrays.ID); + public static final org.jooq.UniqueKey PK_X_UNUSED = createUniqueKey(org.jooq.test.h2.generatedclasses.tables.XUnused.X_UNUSED, org.jooq.test.h2.generatedclasses.tables.XUnused.ID, org.jooq.test.h2.generatedclasses.tables.XUnused.NAME); + public static final org.jooq.UniqueKey UK_X_UNUSED_ID = createUniqueKey(org.jooq.test.h2.generatedclasses.tables.XUnused.X_UNUSED, org.jooq.test.h2.generatedclasses.tables.XUnused.ID); + public static final org.jooq.UniqueKey PK_T_639_NUMBERS_TABLE = createUniqueKey(org.jooq.test.h2.generatedclasses.tables.T_639NumbersTable.T_639_NUMBERS_TABLE, org.jooq.test.h2.generatedclasses.tables.T_639NumbersTable.ID); + public static final org.jooq.UniqueKey PK_X_TEST_CASE_64_69 = createUniqueKey(org.jooq.test.h2.generatedclasses.tables.XTestCase_64_69.X_TEST_CASE_64_69, org.jooq.test.h2.generatedclasses.tables.XTestCase_64_69.ID); + public static final org.jooq.UniqueKey PK_X_TEST_CASE_71 = createUniqueKey(org.jooq.test.h2.generatedclasses.tables.XTestCase_71.X_TEST_CASE_71, org.jooq.test.h2.generatedclasses.tables.XTestCase_71.ID); + public static final org.jooq.UniqueKey PK_X_TEST_CASE_85 = createUniqueKey(org.jooq.test.h2.generatedclasses.tables.XTestCase_85.X_TEST_CASE_85, org.jooq.test.h2.generatedclasses.tables.XTestCase_85.ID); + + // FOREIGN KEY definitions + public static final org.jooq.ForeignKey FK_T_BOOK_AUTHOR_ID = createForeignKey(PK_T_AUTHOR, org.jooq.test.h2.generatedclasses.tables.TBook.T_BOOK, org.jooq.test.h2.generatedclasses.tables.TBook.AUTHOR_ID); + public static final org.jooq.ForeignKey FK_T_BOOK_CO_AUTHOR_ID = createForeignKey(PK_T_AUTHOR, org.jooq.test.h2.generatedclasses.tables.TBook.T_BOOK, org.jooq.test.h2.generatedclasses.tables.TBook.CO_AUTHOR_ID); + public static final org.jooq.ForeignKey FK_B2BS_BS_NAME = createForeignKey(UK_T_BOOK_STORE_NAME, org.jooq.test.h2.generatedclasses.tables.TBookToBookStore.T_BOOK_TO_BOOK_STORE, org.jooq.test.h2.generatedclasses.tables.TBookToBookStore.BOOK_STORE_NAME); + public static final org.jooq.ForeignKey FK_B2BS_B_ID = createForeignKey(PK_T_BOOK, org.jooq.test.h2.generatedclasses.tables.TBookToBookStore.T_BOOK_TO_BOOK_STORE, org.jooq.test.h2.generatedclasses.tables.TBookToBookStore.BOOK_ID); + public static final org.jooq.ForeignKey FK_X_UNUSED_SELF = createForeignKey(PK_X_UNUSED, org.jooq.test.h2.generatedclasses.tables.XUnused.X_UNUSED, org.jooq.test.h2.generatedclasses.tables.XUnused.ID_REF, org.jooq.test.h2.generatedclasses.tables.XUnused.ID_REF, org.jooq.test.h2.generatedclasses.tables.XUnused.NAME_REF, org.jooq.test.h2.generatedclasses.tables.XUnused.NAME_REF); + public static final org.jooq.ForeignKey FK_X_TEST_CASE_64_69A = createForeignKey(UK_X_UNUSED_ID, org.jooq.test.h2.generatedclasses.tables.XTestCase_64_69.X_TEST_CASE_64_69, org.jooq.test.h2.generatedclasses.tables.XTestCase_64_69.UNUSED_ID); + public static final org.jooq.ForeignKey FK_X_TEST_CASE_71 = createForeignKey(PK_X_TEST_CASE_64_69, org.jooq.test.h2.generatedclasses.tables.XTestCase_71.X_TEST_CASE_71, org.jooq.test.h2.generatedclasses.tables.XTestCase_71.TEST_CASE_64_69_ID); + public static final org.jooq.ForeignKey FK_X_TEST_CASE_85 = createForeignKey(PK_X_UNUSED, org.jooq.test.h2.generatedclasses.tables.XTestCase_85.X_TEST_CASE_85, org.jooq.test.h2.generatedclasses.tables.XTestCase_85.X_UNUSED_ID, org.jooq.test.h2.generatedclasses.tables.XTestCase_85.X_UNUSED_ID, org.jooq.test.h2.generatedclasses.tables.XTestCase_85.X_UNUSED_NAME, org.jooq.test.h2.generatedclasses.tables.XTestCase_85.X_UNUSED_NAME); + + /** + * No instances + */ + private Keys() {} +} diff --git a/jOOQ-test/src/org/jooq/test/h2/generatedclasses/Public.java b/jOOQ-test/src/org/jooq/test/h2/generatedclasses/Public.java new file mode 100644 index 00000000000..08c4181204d --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/h2/generatedclasses/Public.java @@ -0,0 +1,58 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.h2.generatedclasses; + +/** + * This class is generated by jOOQ. + */ +public class Public extends org.jooq.impl.SchemaImpl { + + private static final long serialVersionUID = 1503929128; + + /** + * The singleton instance of PUBLIC + */ + public static final Public PUBLIC = new Public(); + + /** + * No further instances allowed + */ + private Public() { + super("PUBLIC"); + } + + @Override + public final java.util.List> getSequences() { + return java.util.Arrays.>asList( + org.jooq.test.h2.generatedclasses.Sequences.S_AUTHOR_ID, + org.jooq.test.h2.generatedclasses.Sequences.S_TRIGGERS_SEQUENCE); + } + + @Override + public final java.util.List> getTables() { + return java.util.Arrays.>asList( + org.jooq.test.h2.generatedclasses.tables.TIdentityPk.T_IDENTITY_PK, + org.jooq.test.h2.generatedclasses.tables.TIdentity.T_IDENTITY, + org.jooq.test.h2.generatedclasses.tables.TDates.T_DATES, + org.jooq.test.h2.generatedclasses.tables.TBooleans.T_BOOLEANS, + org.jooq.test.h2.generatedclasses.tables.TTriggers.T_TRIGGERS, + org.jooq.test.h2.generatedclasses.tables.T_658Ref.T_658_REF, + org.jooq.test.h2.generatedclasses.tables.T_725LobTest.T_725_LOB_TEST, + org.jooq.test.h2.generatedclasses.tables.T_785.T_785, + org.jooq.test.h2.generatedclasses.tables.T_877.T_877, + org.jooq.test.h2.generatedclasses.tables.TAuthor.T_AUTHOR, + org.jooq.test.h2.generatedclasses.tables.TBook.T_BOOK, + org.jooq.test.h2.generatedclasses.tables.TBookStore.T_BOOK_STORE, + org.jooq.test.h2.generatedclasses.tables.TBookToBookStore.T_BOOK_TO_BOOK_STORE, + org.jooq.test.h2.generatedclasses.tables.TArrays.T_ARRAYS, + org.jooq.test.h2.generatedclasses.tables.XUnused.X_UNUSED, + org.jooq.test.h2.generatedclasses.tables.T_639NumbersTable.T_639_NUMBERS_TABLE, + org.jooq.test.h2.generatedclasses.tables.XTestCase_64_69.X_TEST_CASE_64_69, + org.jooq.test.h2.generatedclasses.tables.XTestCase_71.X_TEST_CASE_71, + org.jooq.test.h2.generatedclasses.tables.XTestCase_85.X_TEST_CASE_85, + org.jooq.test.h2.generatedclasses.tables.VLibrary.V_LIBRARY, + org.jooq.test.h2.generatedclasses.tables.VAuthor.V_AUTHOR, + org.jooq.test.h2.generatedclasses.tables.VBook.V_BOOK); + } +} diff --git a/jOOQ-test/src/org/jooq/test/h2/generatedclasses/PublicFactory.java b/jOOQ-test/src/org/jooq/test/h2/generatedclasses/PublicFactory.java new file mode 100644 index 00000000000..0c2bafbd8ac --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/h2/generatedclasses/PublicFactory.java @@ -0,0 +1,41 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.h2.generatedclasses; + +/** + * This class is generated by jOOQ. + */ +public class PublicFactory extends org.jooq.util.h2.H2Factory { + + private static final long serialVersionUID = -366537222; + + /** + * Create a factory with a connection + * + * @param connection The connection to use with objects created from this factory + */ + public PublicFactory(java.sql.Connection connection) { + super(connection); + } + + /** + * Create a factory with a connection and a schema mapping + * + * @deprecated - 2.0.5 - Use {@link #PublicFactory(java.sql.Connection, org.jooq.conf.Settings)} instead + */ + @Deprecated + public PublicFactory(java.sql.Connection connection, org.jooq.SchemaMapping mapping) { + super(connection, mapping); + } + + /** + * Create a factory with a connection and some settings + * + * @param connection The connection to use with objects created from this factory + * @param settings The settings to apply to objects created from this factory + */ + public PublicFactory(java.sql.Connection connection, org.jooq.conf.Settings settings) { + super(connection, settings); + } +} diff --git a/jOOQ-test/src/org/jooq/test/h2/generatedclasses/Routines.java b/jOOQ-test/src/org/jooq/test/h2/generatedclasses/Routines.java new file mode 100644 index 00000000000..5d7a5b22a91 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/h2/generatedclasses/Routines.java @@ -0,0 +1,387 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.h2.generatedclasses; + +/** + * This class is generated by jOOQ. + * + * Convenience access to all stored procedures and functions in PUBLIC + */ +public final class Routines { + + /** + * Call PUBLIC.F1256 + * + * @param p1 + * @throws org.jooq.exception.DataAccessException if something went wrong executing the query + */ + public static java.lang.String f1256(org.jooq.Configuration configuration, java.lang.String p1) { + org.jooq.test.h2.generatedclasses.routines.F1256 f = new org.jooq.test.h2.generatedclasses.routines.F1256(); + f.setP1(p1); + + f.execute(configuration); + return f.getReturnValue(); + } + + /** + * Get PUBLIC.F1256 as a field + * + * @param p1 + */ + public static org.jooq.Field f1256(java.lang.String p1) { + org.jooq.test.h2.generatedclasses.routines.F1256 f = new org.jooq.test.h2.generatedclasses.routines.F1256(); + f.setP1(p1); + + return f.asField(); + } + + /** + * Get PUBLIC.F1256 as a field + * + * @param p1 + */ + public static org.jooq.Field f1256(org.jooq.Field p1) { + org.jooq.test.h2.generatedclasses.routines.F1256 f = new org.jooq.test.h2.generatedclasses.routines.F1256(); + f.setP1(p1); + + return f.asField(); + } + + /** + * Call PUBLIC.F317 + * + * @param p1 + * @param p2 + * @param p3 + * @param p4 + * @throws org.jooq.exception.DataAccessException if something went wrong executing the query + */ + public static java.lang.Integer f317(org.jooq.Configuration configuration, java.lang.Integer p1, java.lang.Integer p2, java.lang.Integer p3, java.lang.Integer p4) { + org.jooq.test.h2.generatedclasses.routines.F317 f = new org.jooq.test.h2.generatedclasses.routines.F317(); + f.setP1(p1); + f.setP2(p2); + f.setP3(p3); + f.setP4(p4); + + f.execute(configuration); + return f.getReturnValue(); + } + + /** + * Get PUBLIC.F317 as a field + * + * @param p1 + * @param p2 + * @param p3 + * @param p4 + */ + public static org.jooq.Field f317(java.lang.Integer p1, java.lang.Integer p2, java.lang.Integer p3, java.lang.Integer p4) { + org.jooq.test.h2.generatedclasses.routines.F317 f = new org.jooq.test.h2.generatedclasses.routines.F317(); + f.setP1(p1); + f.setP2(p2); + f.setP3(p3); + f.setP4(p4); + + return f.asField(); + } + + /** + * Get PUBLIC.F317 as a field + * + * @param p1 + * @param p2 + * @param p3 + * @param p4 + */ + public static org.jooq.Field f317(org.jooq.Field p1, org.jooq.Field p2, org.jooq.Field p3, org.jooq.Field p4) { + org.jooq.test.h2.generatedclasses.routines.F317 f = new org.jooq.test.h2.generatedclasses.routines.F317(); + f.setP1(p1); + f.setP2(p2); + f.setP3(p3); + f.setP4(p4); + + return f.asField(); + } + + /** + * Call PUBLIC.F_ARRAYS1 + * + * @param p1 + * @throws org.jooq.exception.DataAccessException if something went wrong executing the query + */ + public static java.lang.Object[] fArrays1(org.jooq.Configuration configuration, java.lang.Object[] p1) { + org.jooq.test.h2.generatedclasses.routines.FArrays1 f = new org.jooq.test.h2.generatedclasses.routines.FArrays1(); + f.setP1(p1); + + f.execute(configuration); + return f.getReturnValue(); + } + + /** + * Get PUBLIC.F_ARRAYS1 as a field + * + * @param p1 + */ + public static org.jooq.Field fArrays1(java.lang.Object[] p1) { + org.jooq.test.h2.generatedclasses.routines.FArrays1 f = new org.jooq.test.h2.generatedclasses.routines.FArrays1(); + f.setP1(p1); + + return f.asField(); + } + + /** + * Get PUBLIC.F_ARRAYS1 as a field + * + * @param p1 + */ + public static org.jooq.Field fArrays1(org.jooq.Field p1) { + org.jooq.test.h2.generatedclasses.routines.FArrays1 f = new org.jooq.test.h2.generatedclasses.routines.FArrays1(); + f.setP1(p1); + + return f.asField(); + } + + /** + * Call PUBLIC.F_ARRAYS2 + * + * @param p1 + * @throws org.jooq.exception.DataAccessException if something went wrong executing the query + */ + public static java.lang.Object[] fArrays2(org.jooq.Configuration configuration, java.lang.Object[] p1) { + org.jooq.test.h2.generatedclasses.routines.FArrays2 f = new org.jooq.test.h2.generatedclasses.routines.FArrays2(); + f.setP1(p1); + + f.execute(configuration); + return f.getReturnValue(); + } + + /** + * Get PUBLIC.F_ARRAYS2 as a field + * + * @param p1 + */ + public static org.jooq.Field fArrays2(java.lang.Object[] p1) { + org.jooq.test.h2.generatedclasses.routines.FArrays2 f = new org.jooq.test.h2.generatedclasses.routines.FArrays2(); + f.setP1(p1); + + return f.asField(); + } + + /** + * Get PUBLIC.F_ARRAYS2 as a field + * + * @param p1 + */ + public static org.jooq.Field fArrays2(org.jooq.Field p1) { + org.jooq.test.h2.generatedclasses.routines.FArrays2 f = new org.jooq.test.h2.generatedclasses.routines.FArrays2(); + f.setP1(p1); + + return f.asField(); + } + + /** + * Call PUBLIC.F_ARRAYS3 + * + * @param p1 + * @throws org.jooq.exception.DataAccessException if something went wrong executing the query + */ + public static java.lang.Object[] fArrays3(org.jooq.Configuration configuration, java.lang.Object[] p1) { + org.jooq.test.h2.generatedclasses.routines.FArrays3 f = new org.jooq.test.h2.generatedclasses.routines.FArrays3(); + f.setP1(p1); + + f.execute(configuration); + return f.getReturnValue(); + } + + /** + * Get PUBLIC.F_ARRAYS3 as a field + * + * @param p1 + */ + public static org.jooq.Field fArrays3(java.lang.Object[] p1) { + org.jooq.test.h2.generatedclasses.routines.FArrays3 f = new org.jooq.test.h2.generatedclasses.routines.FArrays3(); + f.setP1(p1); + + return f.asField(); + } + + /** + * Get PUBLIC.F_ARRAYS3 as a field + * + * @param p1 + */ + public static org.jooq.Field fArrays3(org.jooq.Field p1) { + org.jooq.test.h2.generatedclasses.routines.FArrays3 f = new org.jooq.test.h2.generatedclasses.routines.FArrays3(); + f.setP1(p1); + + return f.asField(); + } + + /** + * Call PUBLIC.F_AUTHOR_EXISTS + * + * @param p2 + * @throws org.jooq.exception.DataAccessException if something went wrong executing the query + */ + public static java.lang.Integer fAuthorExists(org.jooq.Configuration configuration, java.lang.String p2) { + org.jooq.test.h2.generatedclasses.routines.FAuthorExists f = new org.jooq.test.h2.generatedclasses.routines.FAuthorExists(); + f.setP2(p2); + + f.execute(configuration); + return f.getReturnValue(); + } + + /** + * Get PUBLIC.F_AUTHOR_EXISTS as a field + * + * @param p2 + */ + public static org.jooq.Field fAuthorExists(java.lang.String p2) { + org.jooq.test.h2.generatedclasses.routines.FAuthorExists f = new org.jooq.test.h2.generatedclasses.routines.FAuthorExists(); + f.setP2(p2); + + return f.asField(); + } + + /** + * Get PUBLIC.F_AUTHOR_EXISTS as a field + * + * @param p2 + */ + public static org.jooq.Field fAuthorExists(org.jooq.Field p2) { + org.jooq.test.h2.generatedclasses.routines.FAuthorExists f = new org.jooq.test.h2.generatedclasses.routines.FAuthorExists(); + f.setP2(p2); + + return f.asField(); + } + + /** + * Call PUBLIC.F_GET_ONE_CURSOR + * + * @param p2 + * @throws org.jooq.exception.DataAccessException if something went wrong executing the query + */ + public static org.jooq.Result fGetOneCursor(org.jooq.Configuration configuration, java.lang.Object[] p2) { + org.jooq.test.h2.generatedclasses.routines.FGetOneCursor f = new org.jooq.test.h2.generatedclasses.routines.FGetOneCursor(); + f.setP2(p2); + + f.execute(configuration); + return f.getReturnValue(); + } + + /** + * Get PUBLIC.F_GET_ONE_CURSOR as a field + * + * @param p2 + */ + public static org.jooq.Field> fGetOneCursor(java.lang.Object[] p2) { + org.jooq.test.h2.generatedclasses.routines.FGetOneCursor f = new org.jooq.test.h2.generatedclasses.routines.FGetOneCursor(); + f.setP2(p2); + + return f.asField(); + } + + /** + * Get PUBLIC.F_GET_ONE_CURSOR as a field + * + * @param p2 + */ + public static org.jooq.Field> fGetOneCursor(org.jooq.Field p2) { + org.jooq.test.h2.generatedclasses.routines.FGetOneCursor f = new org.jooq.test.h2.generatedclasses.routines.FGetOneCursor(); + f.setP2(p2); + + return f.asField(); + } + + /** + * Call PUBLIC.F_NUMBER + * + * @param p1 + * @throws org.jooq.exception.DataAccessException if something went wrong executing the query + */ + public static java.lang.Integer fNumber(org.jooq.Configuration configuration, java.lang.Integer p1) { + org.jooq.test.h2.generatedclasses.routines.FNumber f = new org.jooq.test.h2.generatedclasses.routines.FNumber(); + f.setP1(p1); + + f.execute(configuration); + return f.getReturnValue(); + } + + /** + * Get PUBLIC.F_NUMBER as a field + * + * @param p1 + */ + public static org.jooq.Field fNumber(java.lang.Integer p1) { + org.jooq.test.h2.generatedclasses.routines.FNumber f = new org.jooq.test.h2.generatedclasses.routines.FNumber(); + f.setP1(p1); + + return f.asField(); + } + + /** + * Get PUBLIC.F_NUMBER as a field + * + * @param p1 + */ + public static org.jooq.Field fNumber(org.jooq.Field p1) { + org.jooq.test.h2.generatedclasses.routines.FNumber f = new org.jooq.test.h2.generatedclasses.routines.FNumber(); + f.setP1(p1); + + return f.asField(); + } + + /** + * Call PUBLIC.F_ONE + * + * @throws org.jooq.exception.DataAccessException if something went wrong executing the query + */ + public static java.lang.Integer fOne(org.jooq.Configuration configuration) { + org.jooq.test.h2.generatedclasses.routines.FOne f = new org.jooq.test.h2.generatedclasses.routines.FOne(); + + f.execute(configuration); + return f.getReturnValue(); + } + + /** + * Get PUBLIC.F_ONE as a field + * + */ + public static org.jooq.Field fOne() { + org.jooq.test.h2.generatedclasses.routines.FOne f = new org.jooq.test.h2.generatedclasses.routines.FOne(); + + return f.asField(); + } + + /** + * Call PUBLIC.P_CREATE_AUTHOR + * + * @throws org.jooq.exception.DataAccessException if something went wrong executing the query + */ + public static void pCreateAuthor(org.jooq.Configuration configuration) { + org.jooq.test.h2.generatedclasses.routines.PCreateAuthor p = new org.jooq.test.h2.generatedclasses.routines.PCreateAuthor(); + + p.execute(configuration); + } + + /** + * Call PUBLIC.P_CREATE_AUTHOR_BY_NAME + * + * @param p2 IN parameter + * @param p3 IN parameter + * @throws org.jooq.exception.DataAccessException if something went wrong executing the query + */ + public static void pCreateAuthorByName(org.jooq.Configuration configuration, java.lang.String p2, java.lang.String p3) { + org.jooq.test.h2.generatedclasses.routines.PCreateAuthorByName p = new org.jooq.test.h2.generatedclasses.routines.PCreateAuthorByName(); + p.setP2(p2); + p.setP3(p3); + + p.execute(configuration); + } + + /** + * No instances + */ + private Routines() {} +} diff --git a/jOOQ-test/src/org/jooq/test/h2/generatedclasses/Sequences.java b/jOOQ-test/src/org/jooq/test/h2/generatedclasses/Sequences.java new file mode 100644 index 00000000000..e9ef22c4497 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/h2/generatedclasses/Sequences.java @@ -0,0 +1,27 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.h2.generatedclasses; + +/** + * This class is generated by jOOQ. + * + * Convenience access to all sequences in PUBLIC + */ +public final class Sequences { + + /** + * The sequence PUBLIC.S_AUTHOR_ID + */ + public static final org.jooq.Sequence S_AUTHOR_ID = new org.jooq.impl.SequenceImpl("S_AUTHOR_ID", org.jooq.test.h2.generatedclasses.Public.PUBLIC, org.jooq.impl.SQLDataType.BIGINT); + + /** + * The sequence PUBLIC.S_TRIGGERS_SEQUENCE + */ + public static final org.jooq.Sequence S_TRIGGERS_SEQUENCE = new org.jooq.impl.SequenceImpl("S_TRIGGERS_SEQUENCE", org.jooq.test.h2.generatedclasses.Public.PUBLIC, org.jooq.impl.SQLDataType.BIGINT); + + /** + * No instances + */ + private Sequences() {} +} diff --git a/jOOQ-test/src/org/jooq/test/h2/generatedclasses/Tables.java b/jOOQ-test/src/org/jooq/test/h2/generatedclasses/Tables.java new file mode 100644 index 00000000000..d821f9839dd --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/h2/generatedclasses/Tables.java @@ -0,0 +1,127 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.h2.generatedclasses; + +/** + * This class is generated by jOOQ. + * + * Convenience access to all tables in PUBLIC + */ +public final class Tables { + + /** + * The table PUBLIC.T_IDENTITY_PK + */ + public static org.jooq.test.h2.generatedclasses.tables.TIdentityPk T_IDENTITY_PK = org.jooq.test.h2.generatedclasses.tables.TIdentityPk.T_IDENTITY_PK; + + /** + * The table PUBLIC.T_IDENTITY + */ + public static org.jooq.test.h2.generatedclasses.tables.TIdentity T_IDENTITY = org.jooq.test.h2.generatedclasses.tables.TIdentity.T_IDENTITY; + + /** + * The table PUBLIC.T_DATES + */ + public static org.jooq.test.h2.generatedclasses.tables.TDates T_DATES = org.jooq.test.h2.generatedclasses.tables.TDates.T_DATES; + + /** + * The table PUBLIC.T_BOOLEANS + */ + public static org.jooq.test.h2.generatedclasses.tables.TBooleans T_BOOLEANS = org.jooq.test.h2.generatedclasses.tables.TBooleans.T_BOOLEANS; + + /** + * The table PUBLIC.T_TRIGGERS + */ + public static org.jooq.test.h2.generatedclasses.tables.TTriggers T_TRIGGERS = org.jooq.test.h2.generatedclasses.tables.TTriggers.T_TRIGGERS; + + /** + * The table PUBLIC.T_658_REF + */ + public static org.jooq.test.h2.generatedclasses.tables.T_658Ref T_658_REF = org.jooq.test.h2.generatedclasses.tables.T_658Ref.T_658_REF; + + /** + * The table PUBLIC.T_725_LOB_TEST + */ + public static org.jooq.test.h2.generatedclasses.tables.T_725LobTest T_725_LOB_TEST = org.jooq.test.h2.generatedclasses.tables.T_725LobTest.T_725_LOB_TEST; + + /** + * The table PUBLIC.T_785 + */ + public static org.jooq.test.h2.generatedclasses.tables.T_785 T_785 = org.jooq.test.h2.generatedclasses.tables.T_785.T_785; + + /** + * The table PUBLIC.T_877 + */ + public static org.jooq.test.h2.generatedclasses.tables.T_877 T_877 = org.jooq.test.h2.generatedclasses.tables.T_877.T_877; + + /** + * An entity holding authors of books + */ + public static org.jooq.test.h2.generatedclasses.tables.TAuthor T_AUTHOR = org.jooq.test.h2.generatedclasses.tables.TAuthor.T_AUTHOR; + + /** + * An entity holding books + */ + public static org.jooq.test.h2.generatedclasses.tables.TBook T_BOOK = org.jooq.test.h2.generatedclasses.tables.TBook.T_BOOK; + + /** + * A book store + */ + public static org.jooq.test.h2.generatedclasses.tables.TBookStore T_BOOK_STORE = org.jooq.test.h2.generatedclasses.tables.TBookStore.T_BOOK_STORE; + + /** + * An m:n relation between books and book stores + */ + public static org.jooq.test.h2.generatedclasses.tables.TBookToBookStore T_BOOK_TO_BOOK_STORE = org.jooq.test.h2.generatedclasses.tables.TBookToBookStore.T_BOOK_TO_BOOK_STORE; + + /** + * The table PUBLIC.T_ARRAYS + */ + public static org.jooq.test.h2.generatedclasses.tables.TArrays T_ARRAYS = org.jooq.test.h2.generatedclasses.tables.TArrays.T_ARRAYS; + + /** + * The table PUBLIC.X_UNUSED + */ + public static org.jooq.test.h2.generatedclasses.tables.XUnused X_UNUSED = org.jooq.test.h2.generatedclasses.tables.XUnused.X_UNUSED; + + /** + * The table PUBLIC.T_639_NUMBERS_TABLE + */ + public static org.jooq.test.h2.generatedclasses.tables.T_639NumbersTable T_639_NUMBERS_TABLE = org.jooq.test.h2.generatedclasses.tables.T_639NumbersTable.T_639_NUMBERS_TABLE; + + /** + * The table PUBLIC.X_TEST_CASE_64_69 + */ + public static org.jooq.test.h2.generatedclasses.tables.XTestCase_64_69 X_TEST_CASE_64_69 = org.jooq.test.h2.generatedclasses.tables.XTestCase_64_69.X_TEST_CASE_64_69; + + /** + * The table PUBLIC.X_TEST_CASE_71 + */ + public static org.jooq.test.h2.generatedclasses.tables.XTestCase_71 X_TEST_CASE_71 = org.jooq.test.h2.generatedclasses.tables.XTestCase_71.X_TEST_CASE_71; + + /** + * The table PUBLIC.X_TEST_CASE_85 + */ + public static org.jooq.test.h2.generatedclasses.tables.XTestCase_85 X_TEST_CASE_85 = org.jooq.test.h2.generatedclasses.tables.XTestCase_85.X_TEST_CASE_85; + + /** + * The table PUBLIC.V_LIBRARY + */ + public static org.jooq.test.h2.generatedclasses.tables.VLibrary V_LIBRARY = org.jooq.test.h2.generatedclasses.tables.VLibrary.V_LIBRARY; + + /** + * The table PUBLIC.V_AUTHOR + */ + public static org.jooq.test.h2.generatedclasses.tables.VAuthor V_AUTHOR = org.jooq.test.h2.generatedclasses.tables.VAuthor.V_AUTHOR; + + /** + * The table PUBLIC.V_BOOK + */ + public static org.jooq.test.h2.generatedclasses.tables.VBook V_BOOK = org.jooq.test.h2.generatedclasses.tables.VBook.V_BOOK; + + /** + * No instances + */ + private Tables() {} +} diff --git a/jOOQ-test/src/org/jooq/test/h2/generatedclasses/enums/TLanguage.java b/jOOQ-test/src/org/jooq/test/h2/generatedclasses/enums/TLanguage.java new file mode 100644 index 00000000000..a5f1f2b0e39 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/h2/generatedclasses/enums/TLanguage.java @@ -0,0 +1,67 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.h2.generatedclasses.enums; + +/** + * This class is generated by jOOQ. + * + * An entity holding language master data + */ +public enum TLanguage implements org.jooq.MasterDataType { + + /** + * English + */ + en(1, "en", "English"), + + /** + * Deutsch + */ + de(2, "de", "Deutsch"), + + /** + * Français + */ + fr(3, "fr", "Français"), + pt(4, "pt", null), + ; + + private final java.lang.Integer id; + private final java.lang.String cd; + private final java.lang.String description; + + private TLanguage(java.lang.Integer id, java.lang.String cd, java.lang.String description) { + this.id = id; + this.cd = cd; + this.description = description; + } + + @Override + public java.lang.Integer getPrimaryKey() { + return id; + } + + /** + * The language ID + * + * PRIMARY KEY + */ + public final java.lang.Integer getId() { + return id; + } + + /** + * The language ISO code + */ + public final java.lang.String getCd() { + return cd; + } + + /** + * The language description + */ + public final java.lang.String getDescription() { + return description; + } +} diff --git a/jOOQ-test/src/org/jooq/test/h2/generatedclasses/enums/T_658_11.java b/jOOQ-test/src/org/jooq/test/h2/generatedclasses/enums/T_658_11.java new file mode 100644 index 00000000000..89a0fc00976 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/h2/generatedclasses/enums/T_658_11.java @@ -0,0 +1,46 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.h2.generatedclasses.enums; + +/** + * This class is generated by jOOQ. + */ +public enum T_658_11 implements org.jooq.MasterDataType { + + /** + * A + */ + A("A"), + + /** + * B + */ + B("B"), + + /** + * C + */ + C("C"), + ; + + private final java.lang.String id; + + private T_658_11(java.lang.String id) { + this.id = id; + } + + @Override + public java.lang.String getPrimaryKey() { + return id; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final java.lang.String getId() { + return id; + } +} diff --git a/jOOQ-test/src/org/jooq/test/h2/generatedclasses/enums/T_658_12.java b/jOOQ-test/src/org/jooq/test/h2/generatedclasses/enums/T_658_12.java new file mode 100644 index 00000000000..382378b15e7 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/h2/generatedclasses/enums/T_658_12.java @@ -0,0 +1,55 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.h2.generatedclasses.enums; + +/** + * This class is generated by jOOQ. + */ +public enum T_658_12 implements org.jooq.MasterDataType { + + /** + * A + */ + A("A", "A"), + + /** + * B + */ + B("B", "B"), + + /** + * C + */ + C("C", "C"), + ; + + private final java.lang.String id; + private final java.lang.String cd; + + private T_658_12(java.lang.String id, java.lang.String cd) { + this.id = id; + this.cd = cd; + } + + @Override + public java.lang.String getPrimaryKey() { + return id; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final java.lang.String getId() { + return id; + } + + /** + * An uncommented item + */ + public final java.lang.String getCd() { + return cd; + } +} diff --git a/jOOQ-test/src/org/jooq/test/h2/generatedclasses/enums/T_658_21.java b/jOOQ-test/src/org/jooq/test/h2/generatedclasses/enums/T_658_21.java new file mode 100644 index 00000000000..cf76caae73b --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/h2/generatedclasses/enums/T_658_21.java @@ -0,0 +1,46 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.h2.generatedclasses.enums; + +/** + * This class is generated by jOOQ. + */ +public enum T_658_21 implements org.jooq.MasterDataType { + + /** + * 1 + */ + _1(1), + + /** + * 2 + */ + _2(2), + + /** + * 3 + */ + _3(3), + ; + + private final java.lang.Integer id; + + private T_658_21(java.lang.Integer id) { + this.id = id; + } + + @Override + public java.lang.Integer getPrimaryKey() { + return id; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final java.lang.Integer getId() { + return id; + } +} diff --git a/jOOQ-test/src/org/jooq/test/h2/generatedclasses/enums/T_658_22.java b/jOOQ-test/src/org/jooq/test/h2/generatedclasses/enums/T_658_22.java new file mode 100644 index 00000000000..99afa312e77 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/h2/generatedclasses/enums/T_658_22.java @@ -0,0 +1,55 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.h2.generatedclasses.enums; + +/** + * This class is generated by jOOQ. + */ +public enum T_658_22 implements org.jooq.MasterDataType { + + /** + * 1 + */ + _1(1, 1), + + /** + * 2 + */ + _2(2, 2), + + /** + * 3 + */ + _3(3, 3), + ; + + private final java.lang.Integer id; + private final java.lang.Integer cd; + + private T_658_22(java.lang.Integer id, java.lang.Integer cd) { + this.id = id; + this.cd = cd; + } + + @Override + public java.lang.Integer getPrimaryKey() { + return id; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final java.lang.Integer getId() { + return id; + } + + /** + * An uncommented item + */ + public final java.lang.Integer getCd() { + return cd; + } +} diff --git a/jOOQ-test/src/org/jooq/test/h2/generatedclasses/enums/T_658_31.java b/jOOQ-test/src/org/jooq/test/h2/generatedclasses/enums/T_658_31.java new file mode 100644 index 00000000000..e34219c52f1 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/h2/generatedclasses/enums/T_658_31.java @@ -0,0 +1,46 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.h2.generatedclasses.enums; + +/** + * This class is generated by jOOQ. + */ +public enum T_658_31 implements org.jooq.MasterDataType { + + /** + * 1 + */ + _1(1L), + + /** + * 2 + */ + _2(2L), + + /** + * 3 + */ + _3(3L), + ; + + private final java.lang.Long id; + + private T_658_31(java.lang.Long id) { + this.id = id; + } + + @Override + public java.lang.Long getPrimaryKey() { + return id; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final java.lang.Long getId() { + return id; + } +} diff --git a/jOOQ-test/src/org/jooq/test/h2/generatedclasses/enums/T_658_32.java b/jOOQ-test/src/org/jooq/test/h2/generatedclasses/enums/T_658_32.java new file mode 100644 index 00000000000..8ca67fa9d52 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/h2/generatedclasses/enums/T_658_32.java @@ -0,0 +1,55 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.h2.generatedclasses.enums; + +/** + * This class is generated by jOOQ. + */ +public enum T_658_32 implements org.jooq.MasterDataType { + + /** + * 1 + */ + _1(1L, 1L), + + /** + * 2 + */ + _2(2L, 2L), + + /** + * 3 + */ + _3(3L, 3L), + ; + + private final java.lang.Long id; + private final java.lang.Long cd; + + private T_658_32(java.lang.Long id, java.lang.Long cd) { + this.id = id; + this.cd = cd; + } + + @Override + public java.lang.Long getPrimaryKey() { + return id; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final java.lang.Long getId() { + return id; + } + + /** + * An uncommented item + */ + public final java.lang.Long getCd() { + return cd; + } +} diff --git a/jOOQ-test/src/org/jooq/test/h2/generatedclasses/routines/F1256.java b/jOOQ-test/src/org/jooq/test/h2/generatedclasses/routines/F1256.java new file mode 100644 index 00000000000..4f3377c11ab --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/h2/generatedclasses/routines/F1256.java @@ -0,0 +1,49 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.h2.generatedclasses.routines; + +/** + * This class is generated by jOOQ. + */ +public class F1256 extends org.jooq.impl.AbstractRoutine { + + private static final long serialVersionUID = 588776449; + + + /** + * An uncommented item + */ + public static final org.jooq.Parameter RETURN_VALUE = createParameter("RETURN_VALUE", org.jooq.impl.SQLDataType.VARCHAR); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter P1 = createParameter("P1", org.jooq.impl.SQLDataType.VARCHAR); + + /** + * Create a new routine call instance + */ + public F1256() { + super("F1256", org.jooq.test.h2.generatedclasses.Public.PUBLIC, org.jooq.impl.SQLDataType.VARCHAR); + + setReturnParameter(RETURN_VALUE); + addInParameter(P1); + } + + /** + * Set the P1 parameter to the routine + */ + public void setP1(java.lang.String value) { + setValue(P1, value); + } + + /** + * Set the P1 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setP1(org.jooq.Field field) { + setField(P1, field); + } +} diff --git a/jOOQ-test/src/org/jooq/test/h2/generatedclasses/routines/F317.java b/jOOQ-test/src/org/jooq/test/h2/generatedclasses/routines/F317.java new file mode 100644 index 00000000000..c7a2a95948f --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/h2/generatedclasses/routines/F317.java @@ -0,0 +1,115 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.h2.generatedclasses.routines; + +/** + * This class is generated by jOOQ. + */ +public class F317 extends org.jooq.impl.AbstractRoutine { + + private static final long serialVersionUID = 580251765; + + + /** + * An uncommented item + */ + public static final org.jooq.Parameter RETURN_VALUE = createParameter("RETURN_VALUE", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter P1 = createParameter("P1", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter P2 = createParameter("P2", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter P3 = createParameter("P3", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter P4 = createParameter("P4", org.jooq.impl.SQLDataType.INTEGER); + + /** + * Create a new routine call instance + */ + public F317() { + super("F317", org.jooq.test.h2.generatedclasses.Public.PUBLIC, org.jooq.impl.SQLDataType.INTEGER); + + setReturnParameter(RETURN_VALUE); + addInParameter(P1); + addInParameter(P2); + addInParameter(P3); + addInParameter(P4); + } + + /** + * Set the P1 parameter to the routine + */ + public void setP1(java.lang.Integer value) { + setValue(P1, value); + } + + /** + * Set the P1 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setP1(org.jooq.Field field) { + setField(P1, field); + } + + /** + * Set the P2 parameter to the routine + */ + public void setP2(java.lang.Integer value) { + setValue(P2, value); + } + + /** + * Set the P2 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setP2(org.jooq.Field field) { + setField(P2, field); + } + + /** + * Set the P3 parameter to the routine + */ + public void setP3(java.lang.Integer value) { + setValue(P3, value); + } + + /** + * Set the P3 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setP3(org.jooq.Field field) { + setField(P3, field); + } + + /** + * Set the P4 parameter to the routine + */ + public void setP4(java.lang.Integer value) { + setValue(P4, value); + } + + /** + * Set the P4 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setP4(org.jooq.Field field) { + setField(P4, field); + } +} diff --git a/jOOQ-test/src/org/jooq/test/h2/generatedclasses/routines/FArrays1.java b/jOOQ-test/src/org/jooq/test/h2/generatedclasses/routines/FArrays1.java new file mode 100644 index 00000000000..94ab8776caf --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/h2/generatedclasses/routines/FArrays1.java @@ -0,0 +1,55 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.h2.generatedclasses.routines; + +/** + * This class is generated by jOOQ. + */ +public class FArrays1 extends org.jooq.impl.AbstractRoutine { + + private static final long serialVersionUID = 1114183660; + + + /** + * An uncommented item + * + * The SQL type of this item (ARRAY) could not be mapped.
+ * Deserialising this field might not work! + */ + public static final org.jooq.Parameter RETURN_VALUE = createParameter("RETURN_VALUE", org.jooq.impl.SQLDataType.OTHER.getArrayDataType()); + + /** + * An uncommented item + * + * The SQL type of this item (ARRAY) could not be mapped.
+ * Deserialising this field might not work! + */ + public static final org.jooq.Parameter P1 = createParameter("P1", org.jooq.impl.SQLDataType.OTHER.getArrayDataType()); + + /** + * Create a new routine call instance + */ + public FArrays1() { + super("F_ARRAYS1", org.jooq.test.h2.generatedclasses.Public.PUBLIC, org.jooq.impl.SQLDataType.OTHER.getArrayDataType()); + + setReturnParameter(RETURN_VALUE); + addInParameter(P1); + } + + /** + * Set the P1 parameter to the routine + */ + public void setP1(java.lang.Object[] value) { + setValue(P1, value); + } + + /** + * Set the P1 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setP1(org.jooq.Field field) { + setField(P1, field); + } +} diff --git a/jOOQ-test/src/org/jooq/test/h2/generatedclasses/routines/FArrays2.java b/jOOQ-test/src/org/jooq/test/h2/generatedclasses/routines/FArrays2.java new file mode 100644 index 00000000000..1af165aed6a --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/h2/generatedclasses/routines/FArrays2.java @@ -0,0 +1,55 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.h2.generatedclasses.routines; + +/** + * This class is generated by jOOQ. + */ +public class FArrays2 extends org.jooq.impl.AbstractRoutine { + + private static final long serialVersionUID = 1575400205; + + + /** + * An uncommented item + * + * The SQL type of this item (ARRAY) could not be mapped.
+ * Deserialising this field might not work! + */ + public static final org.jooq.Parameter RETURN_VALUE = createParameter("RETURN_VALUE", org.jooq.impl.SQLDataType.OTHER.getArrayDataType()); + + /** + * An uncommented item + * + * The SQL type of this item (ARRAY) could not be mapped.
+ * Deserialising this field might not work! + */ + public static final org.jooq.Parameter P1 = createParameter("P1", org.jooq.impl.SQLDataType.OTHER.getArrayDataType()); + + /** + * Create a new routine call instance + */ + public FArrays2() { + super("F_ARRAYS2", org.jooq.test.h2.generatedclasses.Public.PUBLIC, org.jooq.impl.SQLDataType.OTHER.getArrayDataType()); + + setReturnParameter(RETURN_VALUE); + addInParameter(P1); + } + + /** + * Set the P1 parameter to the routine + */ + public void setP1(java.lang.Object[] value) { + setValue(P1, value); + } + + /** + * Set the P1 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setP1(org.jooq.Field field) { + setField(P1, field); + } +} diff --git a/jOOQ-test/src/org/jooq/test/h2/generatedclasses/routines/FArrays3.java b/jOOQ-test/src/org/jooq/test/h2/generatedclasses/routines/FArrays3.java new file mode 100644 index 00000000000..aed756318bf --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/h2/generatedclasses/routines/FArrays3.java @@ -0,0 +1,55 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.h2.generatedclasses.routines; + +/** + * This class is generated by jOOQ. + */ +public class FArrays3 extends org.jooq.impl.AbstractRoutine { + + private static final long serialVersionUID = 2036616750; + + + /** + * An uncommented item + * + * The SQL type of this item (ARRAY) could not be mapped.
+ * Deserialising this field might not work! + */ + public static final org.jooq.Parameter RETURN_VALUE = createParameter("RETURN_VALUE", org.jooq.impl.SQLDataType.OTHER.getArrayDataType()); + + /** + * An uncommented item + * + * The SQL type of this item (ARRAY) could not be mapped.
+ * Deserialising this field might not work! + */ + public static final org.jooq.Parameter P1 = createParameter("P1", org.jooq.impl.SQLDataType.OTHER.getArrayDataType()); + + /** + * Create a new routine call instance + */ + public FArrays3() { + super("F_ARRAYS3", org.jooq.test.h2.generatedclasses.Public.PUBLIC, org.jooq.impl.SQLDataType.OTHER.getArrayDataType()); + + setReturnParameter(RETURN_VALUE); + addInParameter(P1); + } + + /** + * Set the P1 parameter to the routine + */ + public void setP1(java.lang.Object[] value) { + setValue(P1, value); + } + + /** + * Set the P1 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setP1(org.jooq.Field field) { + setField(P1, field); + } +} diff --git a/jOOQ-test/src/org/jooq/test/h2/generatedclasses/routines/FAuthorExists.java b/jOOQ-test/src/org/jooq/test/h2/generatedclasses/routines/FAuthorExists.java new file mode 100644 index 00000000000..9fb18efa059 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/h2/generatedclasses/routines/FAuthorExists.java @@ -0,0 +1,49 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.h2.generatedclasses.routines; + +/** + * This class is generated by jOOQ. + */ +public class FAuthorExists extends org.jooq.impl.AbstractRoutine { + + private static final long serialVersionUID = 1261265625; + + + /** + * An uncommented item + */ + public static final org.jooq.Parameter RETURN_VALUE = createParameter("RETURN_VALUE", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter P2 = createParameter("P2", org.jooq.impl.SQLDataType.VARCHAR); + + /** + * Create a new routine call instance + */ + public FAuthorExists() { + super("F_AUTHOR_EXISTS", org.jooq.test.h2.generatedclasses.Public.PUBLIC, org.jooq.impl.SQLDataType.INTEGER); + + setReturnParameter(RETURN_VALUE); + addInParameter(P2); + } + + /** + * Set the P2 parameter to the routine + */ + public void setP2(java.lang.String value) { + setValue(P2, value); + } + + /** + * Set the P2 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setP2(org.jooq.Field field) { + setField(P2, field); + } +} diff --git a/jOOQ-test/src/org/jooq/test/h2/generatedclasses/routines/FGetOneCursor.java b/jOOQ-test/src/org/jooq/test/h2/generatedclasses/routines/FGetOneCursor.java new file mode 100644 index 00000000000..b8d2162d815 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/h2/generatedclasses/routines/FGetOneCursor.java @@ -0,0 +1,52 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.h2.generatedclasses.routines; + +/** + * This class is generated by jOOQ. + */ +public class FGetOneCursor extends org.jooq.impl.AbstractRoutine> { + + private static final long serialVersionUID = -1815405672; + + + /** + * An uncommented item + */ + public static final org.jooq.Parameter> RETURN_VALUE = createParameter("RETURN_VALUE", org.jooq.impl.SQLDataType.RESULT); + + /** + * An uncommented item + * + * The SQL type of this item (ARRAY) could not be mapped.
+ * Deserialising this field might not work! + */ + public static final org.jooq.Parameter P2 = createParameter("P2", org.jooq.impl.SQLDataType.OTHER.getArrayDataType()); + + /** + * Create a new routine call instance + */ + public FGetOneCursor() { + super("F_GET_ONE_CURSOR", org.jooq.test.h2.generatedclasses.Public.PUBLIC, org.jooq.impl.SQLDataType.RESULT); + + setReturnParameter(RETURN_VALUE); + addInParameter(P2); + } + + /** + * Set the P2 parameter to the routine + */ + public void setP2(java.lang.Object[] value) { + setValue(P2, value); + } + + /** + * Set the P2 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setP2(org.jooq.Field field) { + setField(P2, field); + } +} diff --git a/jOOQ-test/src/org/jooq/test/h2/generatedclasses/routines/FNumber.java b/jOOQ-test/src/org/jooq/test/h2/generatedclasses/routines/FNumber.java new file mode 100644 index 00000000000..8d14fdcd97f --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/h2/generatedclasses/routines/FNumber.java @@ -0,0 +1,49 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.h2.generatedclasses.routines; + +/** + * This class is generated by jOOQ. + */ +public class FNumber extends org.jooq.impl.AbstractRoutine { + + private static final long serialVersionUID = -819593599; + + + /** + * An uncommented item + */ + public static final org.jooq.Parameter RETURN_VALUE = createParameter("RETURN_VALUE", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter P1 = createParameter("P1", org.jooq.impl.SQLDataType.INTEGER); + + /** + * Create a new routine call instance + */ + public FNumber() { + super("F_NUMBER", org.jooq.test.h2.generatedclasses.Public.PUBLIC, org.jooq.impl.SQLDataType.INTEGER); + + setReturnParameter(RETURN_VALUE); + addInParameter(P1); + } + + /** + * Set the P1 parameter to the routine + */ + public void setP1(java.lang.Integer value) { + setValue(P1, value); + } + + /** + * Set the P1 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setP1(org.jooq.Field field) { + setField(P1, field); + } +} diff --git a/jOOQ-test/src/org/jooq/test/h2/generatedclasses/routines/FOne.java b/jOOQ-test/src/org/jooq/test/h2/generatedclasses/routines/FOne.java new file mode 100644 index 00000000000..b86cd618471 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/h2/generatedclasses/routines/FOne.java @@ -0,0 +1,27 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.h2.generatedclasses.routines; + +/** + * This class is generated by jOOQ. + */ +public class FOne extends org.jooq.impl.AbstractRoutine { + + private static final long serialVersionUID = -1256811765; + + + /** + * An uncommented item + */ + public static final org.jooq.Parameter RETURN_VALUE = createParameter("RETURN_VALUE", org.jooq.impl.SQLDataType.INTEGER); + + /** + * Create a new routine call instance + */ + public FOne() { + super("F_ONE", org.jooq.test.h2.generatedclasses.Public.PUBLIC, org.jooq.impl.SQLDataType.INTEGER); + + setReturnParameter(RETURN_VALUE); + } +} diff --git a/jOOQ-test/src/org/jooq/test/h2/generatedclasses/routines/PCreateAuthor.java b/jOOQ-test/src/org/jooq/test/h2/generatedclasses/routines/PCreateAuthor.java new file mode 100644 index 00000000000..eaeb71081e6 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/h2/generatedclasses/routines/PCreateAuthor.java @@ -0,0 +1,20 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.h2.generatedclasses.routines; + +/** + * This class is generated by jOOQ. + */ +public class PCreateAuthor extends org.jooq.impl.AbstractRoutine { + + private static final long serialVersionUID = 1101387928; + + + /** + * Create a new routine call instance + */ + public PCreateAuthor() { + super("P_CREATE_AUTHOR", org.jooq.test.h2.generatedclasses.Public.PUBLIC); + } +} diff --git a/jOOQ-test/src/org/jooq/test/h2/generatedclasses/routines/PCreateAuthorByName.java b/jOOQ-test/src/org/jooq/test/h2/generatedclasses/routines/PCreateAuthorByName.java new file mode 100644 index 00000000000..9980371d7a6 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/h2/generatedclasses/routines/PCreateAuthorByName.java @@ -0,0 +1,47 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.h2.generatedclasses.routines; + +/** + * This class is generated by jOOQ. + */ +public class PCreateAuthorByName extends org.jooq.impl.AbstractRoutine { + + private static final long serialVersionUID = -1676101580; + + + /** + * An uncommented item + */ + public static final org.jooq.Parameter P2 = createParameter("P2", org.jooq.impl.SQLDataType.VARCHAR); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter P3 = createParameter("P3", org.jooq.impl.SQLDataType.VARCHAR); + + /** + * Create a new routine call instance + */ + public PCreateAuthorByName() { + super("P_CREATE_AUTHOR_BY_NAME", org.jooq.test.h2.generatedclasses.Public.PUBLIC); + + addInParameter(P2); + addInParameter(P3); + } + + /** + * Set the P2 parameter to the routine + */ + public void setP2(java.lang.String value) { + setValue(P2, value); + } + + /** + * Set the P3 parameter to the routine + */ + public void setP3(java.lang.String value) { + setValue(P3, value); + } +} diff --git a/jOOQ-test/src/org/jooq/test/h2/generatedclasses/tables/TArrays.java b/jOOQ-test/src/org/jooq/test/h2/generatedclasses/tables/TArrays.java new file mode 100644 index 00000000000..30edb438c50 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/h2/generatedclasses/tables/TArrays.java @@ -0,0 +1,79 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.h2.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class TArrays extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = 1172400643; + + /** + * The singleton instance of PUBLIC.T_ARRAYS + */ + public static final org.jooq.test.h2.generatedclasses.tables.TArrays T_ARRAYS = new org.jooq.test.h2.generatedclasses.tables.TArrays(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.h2.generatedclasses.tables.records.TArraysRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public static final org.jooq.TableField ID = createField("ID", org.jooq.impl.SQLDataType.INTEGER, T_ARRAYS); + + /** + * An uncommented item + * + * The SQL type of this item (ARRAY) could not be mapped.
+ * Deserialising this field might not work! + */ + public static final org.jooq.TableField STRING_ARRAY = createField("STRING_ARRAY", org.jooq.impl.SQLDataType.OTHER.getArrayDataType(), T_ARRAYS); + + /** + * An uncommented item + * + * The SQL type of this item (ARRAY) could not be mapped.
+ * Deserialising this field might not work! + */ + public static final org.jooq.TableField NUMBER_ARRAY = createField("NUMBER_ARRAY", org.jooq.impl.SQLDataType.OTHER.getArrayDataType(), T_ARRAYS); + + /** + * An uncommented item + * + * The SQL type of this item (ARRAY) could not be mapped.
+ * Deserialising this field might not work! + */ + public static final org.jooq.TableField DATE_ARRAY = createField("DATE_ARRAY", org.jooq.impl.SQLDataType.OTHER.getArrayDataType(), T_ARRAYS); + + /** + * No further instances allowed + */ + private TArrays() { + super("T_ARRAYS", org.jooq.test.h2.generatedclasses.Public.PUBLIC); + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.test.h2.generatedclasses.Keys.PK_T_ARRAYS; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.test.h2.generatedclasses.Keys.PK_T_ARRAYS); + } +} diff --git a/jOOQ-test/src/org/jooq/test/h2/generatedclasses/tables/TAuthor.java b/jOOQ-test/src/org/jooq/test/h2/generatedclasses/tables/TAuthor.java new file mode 100644 index 00000000000..24466f192dc --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/h2/generatedclasses/tables/TAuthor.java @@ -0,0 +1,82 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.h2.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + * + * An entity holding authors of books + */ +public class TAuthor extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = -1848434356; + + /** + * The singleton instance of PUBLIC.T_AUTHOR + */ + public static final org.jooq.test.h2.generatedclasses.tables.TAuthor T_AUTHOR = new org.jooq.test.h2.generatedclasses.tables.TAuthor(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.h2.generatedclasses.tables.records.TAuthorRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * The author ID + * + * PRIMARY KEY + */ + public static final org.jooq.TableField ID = createField("ID", org.jooq.impl.SQLDataType.INTEGER, T_AUTHOR); + + /** + * The author's first name + */ + public static final org.jooq.TableField FIRST_NAME = createField("FIRST_NAME", org.jooq.impl.SQLDataType.VARCHAR, T_AUTHOR); + + /** + * The author's last name + */ + public static final org.jooq.TableField LAST_NAME = createField("LAST_NAME", org.jooq.impl.SQLDataType.VARCHAR, T_AUTHOR); + + /** + * The author's date of birth + */ + public static final org.jooq.TableField DATE_OF_BIRTH = createField("DATE_OF_BIRTH", org.jooq.impl.SQLDataType.DATE, T_AUTHOR); + + /** + * The author's year of birth + */ + public static final org.jooq.TableField YEAR_OF_BIRTH = createField("YEAR_OF_BIRTH", org.jooq.impl.SQLDataType.INTEGER, T_AUTHOR); + + /** + * The author's address + */ + public static final org.jooq.TableField ADDRESS = createField("ADDRESS", org.jooq.impl.SQLDataType.VARCHAR, T_AUTHOR); + + /** + * No further instances allowed + */ + private TAuthor() { + super("T_AUTHOR", org.jooq.test.h2.generatedclasses.Public.PUBLIC); + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.test.h2.generatedclasses.Keys.PK_T_AUTHOR; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.test.h2.generatedclasses.Keys.PK_T_AUTHOR); + } +} diff --git a/jOOQ-test/src/org/jooq/test/h2/generatedclasses/tables/TBook.java b/jOOQ-test/src/org/jooq/test/h2/generatedclasses/tables/TBook.java new file mode 100644 index 00000000000..737646ccd1a --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/h2/generatedclasses/tables/TBook.java @@ -0,0 +1,121 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.h2.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + * + * An entity holding books + */ +public class TBook extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = -218574062; + + /** + * The singleton instance of PUBLIC.T_BOOK + */ + public static final org.jooq.test.h2.generatedclasses.tables.TBook T_BOOK = new org.jooq.test.h2.generatedclasses.tables.TBook(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.h2.generatedclasses.tables.records.TBookRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * The book ID + * + * PRIMARY KEY + */ + public static final org.jooq.TableField ID = createField("ID", org.jooq.impl.SQLDataType.INTEGER, T_BOOK); + + /** + * The author ID in entity 'author' + *

+ *

+	 * CONSTRAINT FK_T_BOOK_AUTHOR_ID
+	 * FOREIGN KEY (AUTHOR_ID)
+	 * REFERENCES PUBLIC.T_AUTHOR (ID)
+	 * 
+ */ + public static final org.jooq.TableField AUTHOR_ID = createField("AUTHOR_ID", org.jooq.impl.SQLDataType.INTEGER, T_BOOK); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_T_BOOK_CO_AUTHOR_ID
+	 * FOREIGN KEY (CO_AUTHOR_ID)
+	 * REFERENCES PUBLIC.T_AUTHOR (ID)
+	 * 
+ */ + public static final org.jooq.TableField CO_AUTHOR_ID = createField("CO_AUTHOR_ID", org.jooq.impl.SQLDataType.INTEGER, T_BOOK); + + /** + * An uncommented item + */ + public static final org.jooq.TableField DETAILS_ID = createField("DETAILS_ID", org.jooq.impl.SQLDataType.INTEGER, T_BOOK); + + /** + * The book's title + */ + public static final org.jooq.TableField TITLE = createField("TITLE", org.jooq.impl.SQLDataType.VARCHAR, T_BOOK); + + /** + * The year the book was published in + */ + public static final org.jooq.TableField PUBLISHED_IN = createField("PUBLISHED_IN", org.jooq.impl.SQLDataType.INTEGER, T_BOOK); + + /** + * The language of the book + *

+ *

+	 * CONSTRAINT FK_T_BOOK_LANGUAGE_ID
+	 * FOREIGN KEY (LANGUAGE_ID)
+	 * REFERENCES PUBLIC.T_LANGUAGE (ID)
+	 * 
+ */ + public static final org.jooq.TableField LANGUAGE_ID = createField("LANGUAGE_ID", org.jooq.impl.SQLDataType.INTEGER.asMasterDataType(org.jooq.test.h2.generatedclasses.enums.TLanguage.class), T_BOOK); + + /** + * Some textual content of the book + */ + public static final org.jooq.TableField CONTENT_TEXT = createField("CONTENT_TEXT", org.jooq.impl.SQLDataType.CLOB, T_BOOK); + + /** + * Some binary content of the book + */ + public static final org.jooq.TableField CONTENT_PDF = createField("CONTENT_PDF", org.jooq.impl.SQLDataType.BLOB, T_BOOK); + + /** + * No further instances allowed + */ + private TBook() { + super("T_BOOK", org.jooq.test.h2.generatedclasses.Public.PUBLIC); + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.test.h2.generatedclasses.Keys.PK_T_BOOK; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.test.h2.generatedclasses.Keys.PK_T_BOOK); + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getReferences() { + return java.util.Arrays.>asList(org.jooq.test.h2.generatedclasses.Keys.FK_T_BOOK_AUTHOR_ID, org.jooq.test.h2.generatedclasses.Keys.FK_T_BOOK_CO_AUTHOR_ID); + } +} diff --git a/jOOQ-test/src/org/jooq/test/h2/generatedclasses/tables/TBookStore.java b/jOOQ-test/src/org/jooq/test/h2/generatedclasses/tables/TBookStore.java new file mode 100644 index 00000000000..321867d0ace --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/h2/generatedclasses/tables/TBookStore.java @@ -0,0 +1,55 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.h2.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + * + * A book store + */ +public class TBookStore extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = -1372397316; + + /** + * The singleton instance of PUBLIC.T_BOOK_STORE + */ + public static final org.jooq.test.h2.generatedclasses.tables.TBookStore T_BOOK_STORE = new org.jooq.test.h2.generatedclasses.tables.TBookStore(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.h2.generatedclasses.tables.records.TBookStoreRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * The books store name + */ + public static final org.jooq.TableField NAME = createField("NAME", org.jooq.impl.SQLDataType.VARCHAR, T_BOOK_STORE); + + /** + * No further instances allowed + */ + private TBookStore() { + super("T_BOOK_STORE", org.jooq.test.h2.generatedclasses.Public.PUBLIC); + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.test.h2.generatedclasses.Keys.UK_T_BOOK_STORE_NAME; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.test.h2.generatedclasses.Keys.UK_T_BOOK_STORE_NAME); + } +} diff --git a/jOOQ-test/src/org/jooq/test/h2/generatedclasses/tables/TBookToBookStore.java b/jOOQ-test/src/org/jooq/test/h2/generatedclasses/tables/TBookToBookStore.java new file mode 100644 index 00000000000..5b3a4cdfc14 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/h2/generatedclasses/tables/TBookToBookStore.java @@ -0,0 +1,87 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.h2.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + * + * An m:n relation between books and book stores + */ +public class TBookToBookStore extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = 205780634; + + /** + * The singleton instance of PUBLIC.T_BOOK_TO_BOOK_STORE + */ + public static final org.jooq.test.h2.generatedclasses.tables.TBookToBookStore T_BOOK_TO_BOOK_STORE = new org.jooq.test.h2.generatedclasses.tables.TBookToBookStore(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.h2.generatedclasses.tables.records.TBookToBookStoreRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * The book store name + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT FK_B2BS_BS_NAME
+	 * FOREIGN KEY (BOOK_STORE_NAME)
+	 * REFERENCES PUBLIC.T_BOOK_STORE (NAME)
+	 * 
+ */ + public static final org.jooq.TableField BOOK_STORE_NAME = createField("BOOK_STORE_NAME", org.jooq.impl.SQLDataType.VARCHAR, T_BOOK_TO_BOOK_STORE); + + /** + * The book ID + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT FK_B2BS_B_ID
+	 * FOREIGN KEY (BOOK_ID)
+	 * REFERENCES PUBLIC.T_BOOK (ID)
+	 * 
+ */ + public static final org.jooq.TableField BOOK_ID = createField("BOOK_ID", org.jooq.impl.SQLDataType.INTEGER, T_BOOK_TO_BOOK_STORE); + + /** + * The number of books on stock + */ + public static final org.jooq.TableField STOCK = createField("STOCK", org.jooq.impl.SQLDataType.INTEGER, T_BOOK_TO_BOOK_STORE); + + /** + * No further instances allowed + */ + private TBookToBookStore() { + super("T_BOOK_TO_BOOK_STORE", org.jooq.test.h2.generatedclasses.Public.PUBLIC); + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.test.h2.generatedclasses.Keys.PK_B2BS; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.test.h2.generatedclasses.Keys.PK_B2BS); + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getReferences() { + return java.util.Arrays.>asList(org.jooq.test.h2.generatedclasses.Keys.FK_B2BS_BS_NAME, org.jooq.test.h2.generatedclasses.Keys.FK_B2BS_B_ID); + } +} diff --git a/jOOQ-test/src/org/jooq/test/h2/generatedclasses/tables/TBooleans.java b/jOOQ-test/src/org/jooq/test/h2/generatedclasses/tables/TBooleans.java new file mode 100644 index 00000000000..0f64f54539f --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/h2/generatedclasses/tables/TBooleans.java @@ -0,0 +1,105 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.h2.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class TBooleans extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = -1946796595; + + /** + * The singleton instance of PUBLIC.T_BOOLEANS + */ + public static final org.jooq.test.h2.generatedclasses.tables.TBooleans T_BOOLEANS = new org.jooq.test.h2.generatedclasses.tables.TBooleans(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.h2.generatedclasses.tables.records.TBooleansRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public static final org.jooq.TableField ID = createField("ID", org.jooq.impl.SQLDataType.INTEGER, T_BOOLEANS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField ONE_ZERO = createField("ONE_ZERO", org.jooq.impl.SQLDataType.INTEGER.asConvertedDataType(new org.jooq.test._.converters.Boolean_10_Converter()), T_BOOLEANS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField TRUE_FALSE_LC = createField("TRUE_FALSE_LC", org.jooq.impl.SQLDataType.VARCHAR.asConvertedDataType(new org.jooq.test._.converters.Boolean_TF_LC_Converter()), T_BOOLEANS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField TRUE_FALSE_UC = createField("TRUE_FALSE_UC", org.jooq.impl.SQLDataType.VARCHAR.asConvertedDataType(new org.jooq.test._.converters.Boolean_TF_UC_Converter()), T_BOOLEANS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField YES_NO_LC = createField("YES_NO_LC", org.jooq.impl.SQLDataType.VARCHAR.asConvertedDataType(new org.jooq.test._.converters.Boolean_YES_NO_LC_Converter()), T_BOOLEANS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField YES_NO_UC = createField("YES_NO_UC", org.jooq.impl.SQLDataType.VARCHAR.asConvertedDataType(new org.jooq.test._.converters.Boolean_YES_NO_UC_Converter()), T_BOOLEANS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField Y_N_LC = createField("Y_N_LC", org.jooq.impl.SQLDataType.CHAR.asConvertedDataType(new org.jooq.test._.converters.Boolean_YN_LC_Converter()), T_BOOLEANS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField Y_N_UC = createField("Y_N_UC", org.jooq.impl.SQLDataType.CHAR.asConvertedDataType(new org.jooq.test._.converters.Boolean_YN_UC_Converter()), T_BOOLEANS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField VC_BOOLEAN = createField("VC_BOOLEAN", org.jooq.impl.SQLDataType.BOOLEAN, T_BOOLEANS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField C_BOOLEAN = createField("C_BOOLEAN", org.jooq.impl.SQLDataType.BOOLEAN, T_BOOLEANS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField N_BOOLEAN = createField("N_BOOLEAN", org.jooq.impl.SQLDataType.BOOLEAN, T_BOOLEANS); + + /** + * No further instances allowed + */ + private TBooleans() { + super("T_BOOLEANS", org.jooq.test.h2.generatedclasses.Public.PUBLIC); + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.test.h2.generatedclasses.Keys.PK_T_BOOLEANS; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.test.h2.generatedclasses.Keys.PK_T_BOOLEANS); + } +} diff --git a/jOOQ-test/src/org/jooq/test/h2/generatedclasses/tables/TDates.java b/jOOQ-test/src/org/jooq/test/h2/generatedclasses/tables/TDates.java new file mode 100644 index 00000000000..4cd99efe0c4 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/h2/generatedclasses/tables/TDates.java @@ -0,0 +1,80 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.h2.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class TDates extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = -327566973; + + /** + * The singleton instance of PUBLIC.T_DATES + */ + public static final org.jooq.test.h2.generatedclasses.tables.TDates T_DATES = new org.jooq.test.h2.generatedclasses.tables.TDates(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.h2.generatedclasses.tables.records.TDatesRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public static final org.jooq.TableField ID = createField("ID", org.jooq.impl.SQLDataType.INTEGER, T_DATES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField D = createField("D", org.jooq.impl.SQLDataType.DATE, T_DATES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField T = createField("T", org.jooq.impl.SQLDataType.TIME, T_DATES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField TS = createField("TS", org.jooq.impl.SQLDataType.TIMESTAMP, T_DATES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField D_INT = createField("D_INT", org.jooq.impl.SQLDataType.INTEGER, T_DATES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField TS_BIGINT = createField("TS_BIGINT", org.jooq.impl.SQLDataType.BIGINT, T_DATES); + + /** + * No further instances allowed + */ + private TDates() { + super("T_DATES", org.jooq.test.h2.generatedclasses.Public.PUBLIC); + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.test.h2.generatedclasses.Keys.PK_T_DATES; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.test.h2.generatedclasses.Keys.PK_T_DATES); + } +} diff --git a/jOOQ-test/src/org/jooq/test/h2/generatedclasses/tables/TIdentity.java b/jOOQ-test/src/org/jooq/test/h2/generatedclasses/tables/TIdentity.java new file mode 100644 index 00000000000..0ee1a04b67e --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/h2/generatedclasses/tables/TIdentity.java @@ -0,0 +1,52 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.h2.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class TIdentity extends org.jooq.impl.TableImpl { + + private static final long serialVersionUID = -259613648; + + /** + * The singleton instance of PUBLIC.T_IDENTITY + */ + public static final org.jooq.test.h2.generatedclasses.tables.TIdentity T_IDENTITY = new org.jooq.test.h2.generatedclasses.tables.TIdentity(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.h2.generatedclasses.tables.records.TIdentityRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + */ + public static final org.jooq.TableField ID = createField("ID", org.jooq.impl.SQLDataType.INTEGER, T_IDENTITY); + + /** + * An uncommented item + */ + public static final org.jooq.TableField VAL = createField("VAL", org.jooq.impl.SQLDataType.INTEGER, T_IDENTITY); + + /** + * No further instances allowed + */ + private TIdentity() { + super("T_IDENTITY", org.jooq.test.h2.generatedclasses.Public.PUBLIC); + } + + @Override + public org.jooq.Identity getIdentity() { + return org.jooq.test.h2.generatedclasses.Keys.IDENTITY_T_IDENTITY; + } +} diff --git a/jOOQ-test/src/org/jooq/test/h2/generatedclasses/tables/TIdentityPk.java b/jOOQ-test/src/org/jooq/test/h2/generatedclasses/tables/TIdentityPk.java new file mode 100644 index 00000000000..4cfa6268908 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/h2/generatedclasses/tables/TIdentityPk.java @@ -0,0 +1,65 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.h2.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class TIdentityPk extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = 591613893; + + /** + * The singleton instance of PUBLIC.T_IDENTITY_PK + */ + public static final org.jooq.test.h2.generatedclasses.tables.TIdentityPk T_IDENTITY_PK = new org.jooq.test.h2.generatedclasses.tables.TIdentityPk(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.h2.generatedclasses.tables.records.TIdentityPkRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public static final org.jooq.TableField ID = createField("ID", org.jooq.impl.SQLDataType.INTEGER, T_IDENTITY_PK); + + /** + * An uncommented item + */ + public static final org.jooq.TableField VAL = createField("VAL", org.jooq.impl.SQLDataType.INTEGER, T_IDENTITY_PK); + + /** + * No further instances allowed + */ + private TIdentityPk() { + super("T_IDENTITY_PK", org.jooq.test.h2.generatedclasses.Public.PUBLIC); + } + + @Override + public org.jooq.Identity getIdentity() { + return org.jooq.test.h2.generatedclasses.Keys.IDENTITY_T_IDENTITY_PK; + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.test.h2.generatedclasses.Keys.PK_T_IDENTITY_PK; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.test.h2.generatedclasses.Keys.PK_T_IDENTITY_PK); + } +} diff --git a/jOOQ-test/src/org/jooq/test/h2/generatedclasses/tables/TTriggers.java b/jOOQ-test/src/org/jooq/test/h2/generatedclasses/tables/TTriggers.java new file mode 100644 index 00000000000..c99b7cf0d9b --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/h2/generatedclasses/tables/TTriggers.java @@ -0,0 +1,70 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.h2.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class TTriggers extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = -1465553161; + + /** + * The singleton instance of PUBLIC.T_TRIGGERS + */ + public static final org.jooq.test.h2.generatedclasses.tables.TTriggers T_TRIGGERS = new org.jooq.test.h2.generatedclasses.tables.TTriggers(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.h2.generatedclasses.tables.records.TTriggersRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public static final org.jooq.TableField ID_GENERATED = createField("ID_GENERATED", org.jooq.impl.SQLDataType.INTEGER, T_TRIGGERS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField ID = createField("ID", org.jooq.impl.SQLDataType.INTEGER, T_TRIGGERS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField COUNTER = createField("COUNTER", org.jooq.impl.SQLDataType.INTEGER, T_TRIGGERS); + + /** + * No further instances allowed + */ + private TTriggers() { + super("T_TRIGGERS", org.jooq.test.h2.generatedclasses.Public.PUBLIC); + } + + @Override + public org.jooq.Identity getIdentity() { + return org.jooq.test.h2.generatedclasses.Keys.IDENTITY_T_TRIGGERS; + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.test.h2.generatedclasses.Keys.PK_T_TRIGGERS; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.test.h2.generatedclasses.Keys.PK_T_TRIGGERS); + } +} diff --git a/jOOQ-test/src/org/jooq/test/h2/generatedclasses/tables/T_639NumbersTable.java b/jOOQ-test/src/org/jooq/test/h2/generatedclasses/tables/T_639NumbersTable.java new file mode 100644 index 00000000000..dff8f24bf6c --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/h2/generatedclasses/tables/T_639NumbersTable.java @@ -0,0 +1,115 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.h2.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class T_639NumbersTable extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = 898843120; + + /** + * The singleton instance of PUBLIC.T_639_NUMBERS_TABLE + */ + public static final org.jooq.test.h2.generatedclasses.tables.T_639NumbersTable T_639_NUMBERS_TABLE = new org.jooq.test.h2.generatedclasses.tables.T_639NumbersTable(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.h2.generatedclasses.tables.records.T_639NumbersTableRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public static final org.jooq.TableField ID = createField("ID", org.jooq.impl.SQLDataType.INTEGER, T_639_NUMBERS_TABLE); + + /** + * An uncommented item + */ + public static final org.jooq.TableField BYTE = createField("BYTE", org.jooq.impl.SQLDataType.TINYINT, T_639_NUMBERS_TABLE); + + /** + * An uncommented item + */ + public static final org.jooq.TableField SHORT = createField("SHORT", org.jooq.impl.SQLDataType.SMALLINT, T_639_NUMBERS_TABLE); + + /** + * An uncommented item + */ + public static final org.jooq.TableField INTEGER = createField("INTEGER", org.jooq.impl.SQLDataType.INTEGER, T_639_NUMBERS_TABLE); + + /** + * An uncommented item + */ + public static final org.jooq.TableField LONG = createField("LONG", org.jooq.impl.SQLDataType.BIGINT, T_639_NUMBERS_TABLE); + + /** + * An uncommented item + */ + public static final org.jooq.TableField BYTE_DECIMAL = createField("BYTE_DECIMAL", org.jooq.impl.SQLDataType.TINYINT, T_639_NUMBERS_TABLE); + + /** + * An uncommented item + */ + public static final org.jooq.TableField SHORT_DECIMAL = createField("SHORT_DECIMAL", org.jooq.impl.SQLDataType.SMALLINT, T_639_NUMBERS_TABLE); + + /** + * An uncommented item + */ + public static final org.jooq.TableField INTEGER_DECIMAL = createField("INTEGER_DECIMAL", org.jooq.impl.SQLDataType.INTEGER, T_639_NUMBERS_TABLE); + + /** + * An uncommented item + */ + public static final org.jooq.TableField LONG_DECIMAL = createField("LONG_DECIMAL", org.jooq.impl.SQLDataType.BIGINT, T_639_NUMBERS_TABLE); + + /** + * An uncommented item + */ + public static final org.jooq.TableField BIG_INTEGER = createField("BIG_INTEGER", org.jooq.impl.SQLDataType.DECIMAL_INTEGER, T_639_NUMBERS_TABLE); + + /** + * An uncommented item + */ + public static final org.jooq.TableField BIG_DECIMAL = createField("BIG_DECIMAL", org.jooq.impl.SQLDataType.DECIMAL, T_639_NUMBERS_TABLE); + + /** + * An uncommented item + */ + public static final org.jooq.TableField FLOAT = createField("FLOAT", org.jooq.impl.SQLDataType.REAL, T_639_NUMBERS_TABLE); + + /** + * An uncommented item + */ + public static final org.jooq.TableField DOUBLE = createField("DOUBLE", org.jooq.impl.SQLDataType.DOUBLE, T_639_NUMBERS_TABLE); + + /** + * No further instances allowed + */ + private T_639NumbersTable() { + super("T_639_NUMBERS_TABLE", org.jooq.test.h2.generatedclasses.Public.PUBLIC); + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.test.h2.generatedclasses.Keys.PK_T_639_NUMBERS_TABLE; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.test.h2.generatedclasses.Keys.PK_T_639_NUMBERS_TABLE); + } +} diff --git a/jOOQ-test/src/org/jooq/test/h2/generatedclasses/tables/T_658Ref.java b/jOOQ-test/src/org/jooq/test/h2/generatedclasses/tables/T_658Ref.java new file mode 100644 index 00000000000..2a7b37827cc --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/h2/generatedclasses/tables/T_658Ref.java @@ -0,0 +1,109 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.h2.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class T_658Ref extends org.jooq.impl.TableImpl { + + private static final long serialVersionUID = -840149292; + + /** + * The singleton instance of PUBLIC.T_658_REF + */ + public static final org.jooq.test.h2.generatedclasses.tables.T_658Ref T_658_REF = new org.jooq.test.h2.generatedclasses.tables.T_658Ref(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.h2.generatedclasses.tables.records.T_658RefRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_T_658_11
+	 * FOREIGN KEY (REF_11)
+	 * REFERENCES PUBLIC.T_658_11 (ID)
+	 * 
+ */ + public static final org.jooq.TableField REF_11 = createField("REF_11", org.jooq.impl.SQLDataType.CHAR.asMasterDataType(org.jooq.test.h2.generatedclasses.enums.T_658_11.class), T_658_REF); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_T_658_21
+	 * FOREIGN KEY (REF_21)
+	 * REFERENCES PUBLIC.T_658_21 (ID)
+	 * 
+ */ + public static final org.jooq.TableField REF_21 = createField("REF_21", org.jooq.impl.SQLDataType.INTEGER.asMasterDataType(org.jooq.test.h2.generatedclasses.enums.T_658_21.class), T_658_REF); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_T_658_31
+	 * FOREIGN KEY (REF_31)
+	 * REFERENCES PUBLIC.T_658_31 (ID)
+	 * 
+ */ + public static final org.jooq.TableField REF_31 = createField("REF_31", org.jooq.impl.SQLDataType.BIGINT.asMasterDataType(org.jooq.test.h2.generatedclasses.enums.T_658_31.class), T_658_REF); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_T_658_12
+	 * FOREIGN KEY (REF_12)
+	 * REFERENCES PUBLIC.T_658_12 (ID)
+	 * 
+ */ + public static final org.jooq.TableField REF_12 = createField("REF_12", org.jooq.impl.SQLDataType.CHAR.asMasterDataType(org.jooq.test.h2.generatedclasses.enums.T_658_12.class), T_658_REF); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_T_658_22
+	 * FOREIGN KEY (REF_22)
+	 * REFERENCES PUBLIC.T_658_22 (ID)
+	 * 
+ */ + public static final org.jooq.TableField REF_22 = createField("REF_22", org.jooq.impl.SQLDataType.INTEGER.asMasterDataType(org.jooq.test.h2.generatedclasses.enums.T_658_22.class), T_658_REF); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_T_658_32
+	 * FOREIGN KEY (REF_32)
+	 * REFERENCES PUBLIC.T_658_32 (ID)
+	 * 
+ */ + public static final org.jooq.TableField REF_32 = createField("REF_32", org.jooq.impl.SQLDataType.BIGINT.asMasterDataType(org.jooq.test.h2.generatedclasses.enums.T_658_32.class), T_658_REF); + + /** + * No further instances allowed + */ + private T_658Ref() { + super("T_658_REF", org.jooq.test.h2.generatedclasses.Public.PUBLIC); + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getReferences() { + return java.util.Arrays.>asList(); + } +} diff --git a/jOOQ-test/src/org/jooq/test/h2/generatedclasses/tables/T_725LobTest.java b/jOOQ-test/src/org/jooq/test/h2/generatedclasses/tables/T_725LobTest.java new file mode 100644 index 00000000000..2921a7925da --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/h2/generatedclasses/tables/T_725LobTest.java @@ -0,0 +1,60 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.h2.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class T_725LobTest extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = 95059692; + + /** + * The singleton instance of PUBLIC.T_725_LOB_TEST + */ + public static final org.jooq.test.h2.generatedclasses.tables.T_725LobTest T_725_LOB_TEST = new org.jooq.test.h2.generatedclasses.tables.T_725LobTest(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.h2.generatedclasses.tables.records.T_725LobTestRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public static final org.jooq.TableField ID = createField("ID", org.jooq.impl.SQLDataType.INTEGER, T_725_LOB_TEST); + + /** + * An uncommented item + */ + public static final org.jooq.TableField LOB = createField("LOB", org.jooq.impl.SQLDataType.BLOB, T_725_LOB_TEST); + + /** + * No further instances allowed + */ + private T_725LobTest() { + super("T_725_LOB_TEST", org.jooq.test.h2.generatedclasses.Public.PUBLIC); + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.test.h2.generatedclasses.Keys.PK_T_725_LOB_TEST; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.test.h2.generatedclasses.Keys.PK_T_725_LOB_TEST); + } +} diff --git a/jOOQ-test/src/org/jooq/test/h2/generatedclasses/tables/T_785.java b/jOOQ-test/src/org/jooq/test/h2/generatedclasses/tables/T_785.java new file mode 100644 index 00000000000..dedc297c35c --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/h2/generatedclasses/tables/T_785.java @@ -0,0 +1,52 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.h2.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class T_785 extends org.jooq.impl.TableImpl { + + private static final long serialVersionUID = 1674898846; + + /** + * The singleton instance of PUBLIC.T_785 + */ + public static final org.jooq.test.h2.generatedclasses.tables.T_785 T_785 = new org.jooq.test.h2.generatedclasses.tables.T_785(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.h2.generatedclasses.tables.records.T_785Record.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + */ + public static final org.jooq.TableField ID = createField("ID", org.jooq.impl.SQLDataType.INTEGER, T_785); + + /** + * An uncommented item + */ + public static final org.jooq.TableField NAME = createField("NAME", org.jooq.impl.SQLDataType.VARCHAR, T_785); + + /** + * An uncommented item + */ + public static final org.jooq.TableField VALUE = createField("VALUE", org.jooq.impl.SQLDataType.VARCHAR, T_785); + + /** + * No further instances allowed + */ + private T_785() { + super("T_785", org.jooq.test.h2.generatedclasses.Public.PUBLIC); + } +} diff --git a/jOOQ-test/src/org/jooq/test/h2/generatedclasses/tables/T_877.java b/jOOQ-test/src/org/jooq/test/h2/generatedclasses/tables/T_877.java new file mode 100644 index 00000000000..c54b516b0a7 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/h2/generatedclasses/tables/T_877.java @@ -0,0 +1,47 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.h2.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class T_877 extends org.jooq.impl.TableImpl { + + private static final long serialVersionUID = -1307971188; + + /** + * The singleton instance of PUBLIC.T_877 + */ + public static final org.jooq.test.h2.generatedclasses.tables.T_877 T_877 = new org.jooq.test.h2.generatedclasses.tables.T_877(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.h2.generatedclasses.tables.records.T_877Record.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + */ + public static final org.jooq.TableField ID = createField("ID", org.jooq.impl.SQLDataType.INTEGER, T_877); + + /** + * No further instances allowed + */ + private T_877() { + super("T_877", org.jooq.test.h2.generatedclasses.Public.PUBLIC); + } + + @Override + public org.jooq.Identity getIdentity() { + return org.jooq.test.h2.generatedclasses.Keys.IDENTITY_T_877; + } +} diff --git a/jOOQ-test/src/org/jooq/test/h2/generatedclasses/tables/VAuthor.java b/jOOQ-test/src/org/jooq/test/h2/generatedclasses/tables/VAuthor.java new file mode 100644 index 00000000000..390b87d22b3 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/h2/generatedclasses/tables/VAuthor.java @@ -0,0 +1,67 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.h2.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class VAuthor extends org.jooq.impl.TableImpl { + + private static final long serialVersionUID = -2044512938; + + /** + * The singleton instance of PUBLIC.V_AUTHOR + */ + public static final org.jooq.test.h2.generatedclasses.tables.VAuthor V_AUTHOR = new org.jooq.test.h2.generatedclasses.tables.VAuthor(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.h2.generatedclasses.tables.records.VAuthorRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + */ + public static final org.jooq.TableField ID = createField("ID", org.jooq.impl.SQLDataType.INTEGER, V_AUTHOR); + + /** + * An uncommented item + */ + public static final org.jooq.TableField FIRST_NAME = createField("FIRST_NAME", org.jooq.impl.SQLDataType.VARCHAR, V_AUTHOR); + + /** + * An uncommented item + */ + public static final org.jooq.TableField LAST_NAME = createField("LAST_NAME", org.jooq.impl.SQLDataType.VARCHAR, V_AUTHOR); + + /** + * An uncommented item + */ + public static final org.jooq.TableField DATE_OF_BIRTH = createField("DATE_OF_BIRTH", org.jooq.impl.SQLDataType.DATE, V_AUTHOR); + + /** + * An uncommented item + */ + public static final org.jooq.TableField YEAR_OF_BIRTH = createField("YEAR_OF_BIRTH", org.jooq.impl.SQLDataType.INTEGER, V_AUTHOR); + + /** + * An uncommented item + */ + public static final org.jooq.TableField ADDRESS = createField("ADDRESS", org.jooq.impl.SQLDataType.VARCHAR, V_AUTHOR); + + /** + * No further instances allowed + */ + private VAuthor() { + super("V_AUTHOR", org.jooq.test.h2.generatedclasses.Public.PUBLIC); + } +} diff --git a/jOOQ-test/src/org/jooq/test/h2/generatedclasses/tables/VBook.java b/jOOQ-test/src/org/jooq/test/h2/generatedclasses/tables/VBook.java new file mode 100644 index 00000000000..3d558afa46a --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/h2/generatedclasses/tables/VBook.java @@ -0,0 +1,82 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.h2.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class VBook extends org.jooq.impl.TableImpl { + + private static final long serialVersionUID = -2023483396; + + /** + * The singleton instance of PUBLIC.V_BOOK + */ + public static final org.jooq.test.h2.generatedclasses.tables.VBook V_BOOK = new org.jooq.test.h2.generatedclasses.tables.VBook(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.h2.generatedclasses.tables.records.VBookRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + */ + public static final org.jooq.TableField ID = createField("ID", org.jooq.impl.SQLDataType.INTEGER, V_BOOK); + + /** + * An uncommented item + */ + public static final org.jooq.TableField AUTHOR_ID = createField("AUTHOR_ID", org.jooq.impl.SQLDataType.INTEGER, V_BOOK); + + /** + * An uncommented item + */ + public static final org.jooq.TableField CO_AUTHOR_ID = createField("CO_AUTHOR_ID", org.jooq.impl.SQLDataType.INTEGER, V_BOOK); + + /** + * An uncommented item + */ + public static final org.jooq.TableField DETAILS_ID = createField("DETAILS_ID", org.jooq.impl.SQLDataType.INTEGER, V_BOOK); + + /** + * An uncommented item + */ + public static final org.jooq.TableField TITLE = createField("TITLE", org.jooq.impl.SQLDataType.VARCHAR, V_BOOK); + + /** + * An uncommented item + */ + public static final org.jooq.TableField PUBLISHED_IN = createField("PUBLISHED_IN", org.jooq.impl.SQLDataType.INTEGER, V_BOOK); + + /** + * An uncommented item + */ + public static final org.jooq.TableField LANGUAGE_ID = createField("LANGUAGE_ID", org.jooq.impl.SQLDataType.INTEGER, V_BOOK); + + /** + * An uncommented item + */ + public static final org.jooq.TableField CONTENT_TEXT = createField("CONTENT_TEXT", org.jooq.impl.SQLDataType.CLOB, V_BOOK); + + /** + * An uncommented item + */ + public static final org.jooq.TableField CONTENT_PDF = createField("CONTENT_PDF", org.jooq.impl.SQLDataType.BLOB, V_BOOK); + + /** + * No further instances allowed + */ + private VBook() { + super("V_BOOK", org.jooq.test.h2.generatedclasses.Public.PUBLIC); + } +} diff --git a/jOOQ-test/src/org/jooq/test/h2/generatedclasses/tables/VLibrary.java b/jOOQ-test/src/org/jooq/test/h2/generatedclasses/tables/VLibrary.java new file mode 100644 index 00000000000..9fb535a0b26 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/h2/generatedclasses/tables/VLibrary.java @@ -0,0 +1,47 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.h2.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class VLibrary extends org.jooq.impl.TableImpl { + + private static final long serialVersionUID = 218672184; + + /** + * The singleton instance of PUBLIC.V_LIBRARY + */ + public static final org.jooq.test.h2.generatedclasses.tables.VLibrary V_LIBRARY = new org.jooq.test.h2.generatedclasses.tables.VLibrary(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.h2.generatedclasses.tables.records.VLibraryRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + */ + public static final org.jooq.TableField AUTHOR = createField("AUTHOR", org.jooq.impl.SQLDataType.VARCHAR, V_LIBRARY); + + /** + * An uncommented item + */ + public static final org.jooq.TableField TITLE = createField("TITLE", org.jooq.impl.SQLDataType.VARCHAR, V_LIBRARY); + + /** + * No further instances allowed + */ + private VLibrary() { + super("V_LIBRARY", org.jooq.test.h2.generatedclasses.Public.PUBLIC); + } +} diff --git a/jOOQ-test/src/org/jooq/test/h2/generatedclasses/tables/XTestCase_64_69.java b/jOOQ-test/src/org/jooq/test/h2/generatedclasses/tables/XTestCase_64_69.java new file mode 100644 index 00000000000..6bffb2fc042 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/h2/generatedclasses/tables/XTestCase_64_69.java @@ -0,0 +1,72 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.h2.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class XTestCase_64_69 extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = -1111651685; + + /** + * The singleton instance of PUBLIC.X_TEST_CASE_64_69 + */ + public static final org.jooq.test.h2.generatedclasses.tables.XTestCase_64_69 X_TEST_CASE_64_69 = new org.jooq.test.h2.generatedclasses.tables.XTestCase_64_69(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.h2.generatedclasses.tables.records.XTestCase_64_69Record.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public static final org.jooq.TableField ID = createField("ID", org.jooq.impl.SQLDataType.INTEGER, X_TEST_CASE_64_69); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_X_TEST_CASE_64_69A
+	 * FOREIGN KEY (UNUSED_ID)
+	 * REFERENCES PUBLIC.X_UNUSED (ID)
+	 * 
+ */ + public static final org.jooq.TableField UNUSED_ID = createField("UNUSED_ID", org.jooq.impl.SQLDataType.INTEGER, X_TEST_CASE_64_69); + + /** + * No further instances allowed + */ + private XTestCase_64_69() { + super("X_TEST_CASE_64_69", org.jooq.test.h2.generatedclasses.Public.PUBLIC); + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.test.h2.generatedclasses.Keys.PK_X_TEST_CASE_64_69; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.test.h2.generatedclasses.Keys.PK_X_TEST_CASE_64_69); + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getReferences() { + return java.util.Arrays.>asList(org.jooq.test.h2.generatedclasses.Keys.FK_X_TEST_CASE_64_69A); + } +} diff --git a/jOOQ-test/src/org/jooq/test/h2/generatedclasses/tables/XTestCase_71.java b/jOOQ-test/src/org/jooq/test/h2/generatedclasses/tables/XTestCase_71.java new file mode 100644 index 00000000000..8c167577257 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/h2/generatedclasses/tables/XTestCase_71.java @@ -0,0 +1,72 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.h2.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class XTestCase_71 extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = 1310095977; + + /** + * The singleton instance of PUBLIC.X_TEST_CASE_71 + */ + public static final org.jooq.test.h2.generatedclasses.tables.XTestCase_71 X_TEST_CASE_71 = new org.jooq.test.h2.generatedclasses.tables.XTestCase_71(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.h2.generatedclasses.tables.records.XTestCase_71Record.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public static final org.jooq.TableField ID = createField("ID", org.jooq.impl.SQLDataType.INTEGER, X_TEST_CASE_71); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_X_TEST_CASE_71
+	 * FOREIGN KEY (TEST_CASE_64_69_ID)
+	 * REFERENCES PUBLIC.X_TEST_CASE_64_69 (ID)
+	 * 
+ */ + public static final org.jooq.TableField TEST_CASE_64_69_ID = createField("TEST_CASE_64_69_ID", org.jooq.impl.SQLDataType.SMALLINT, X_TEST_CASE_71); + + /** + * No further instances allowed + */ + private XTestCase_71() { + super("X_TEST_CASE_71", org.jooq.test.h2.generatedclasses.Public.PUBLIC); + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.test.h2.generatedclasses.Keys.PK_X_TEST_CASE_71; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.test.h2.generatedclasses.Keys.PK_X_TEST_CASE_71); + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getReferences() { + return java.util.Arrays.>asList(org.jooq.test.h2.generatedclasses.Keys.FK_X_TEST_CASE_71); + } +} diff --git a/jOOQ-test/src/org/jooq/test/h2/generatedclasses/tables/XTestCase_85.java b/jOOQ-test/src/org/jooq/test/h2/generatedclasses/tables/XTestCase_85.java new file mode 100644 index 00000000000..0b51b4910e7 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/h2/generatedclasses/tables/XTestCase_85.java @@ -0,0 +1,83 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.h2.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class XTestCase_85 extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = -172278115; + + /** + * The singleton instance of PUBLIC.X_TEST_CASE_85 + */ + public static final org.jooq.test.h2.generatedclasses.tables.XTestCase_85 X_TEST_CASE_85 = new org.jooq.test.h2.generatedclasses.tables.XTestCase_85(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.h2.generatedclasses.tables.records.XTestCase_85Record.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public static final org.jooq.TableField ID = createField("ID", org.jooq.impl.SQLDataType.INTEGER, X_TEST_CASE_85); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_X_TEST_CASE_85
+	 * FOREIGN KEY (X_UNUSED_ID, X_UNUSED_ID, X_UNUSED_NAME, X_UNUSED_NAME)
+	 * REFERENCES PUBLIC.X_UNUSED (ID, NAME)
+	 * 
+ */ + public static final org.jooq.TableField X_UNUSED_ID = createField("X_UNUSED_ID", org.jooq.impl.SQLDataType.INTEGER, X_TEST_CASE_85); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_X_TEST_CASE_85
+	 * FOREIGN KEY (X_UNUSED_ID, X_UNUSED_ID, X_UNUSED_NAME, X_UNUSED_NAME)
+	 * REFERENCES PUBLIC.X_UNUSED (ID, NAME)
+	 * 
+ */ + public static final org.jooq.TableField X_UNUSED_NAME = createField("X_UNUSED_NAME", org.jooq.impl.SQLDataType.VARCHAR, X_TEST_CASE_85); + + /** + * No further instances allowed + */ + private XTestCase_85() { + super("X_TEST_CASE_85", org.jooq.test.h2.generatedclasses.Public.PUBLIC); + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.test.h2.generatedclasses.Keys.PK_X_TEST_CASE_85; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.test.h2.generatedclasses.Keys.PK_X_TEST_CASE_85); + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getReferences() { + return java.util.Arrays.>asList(org.jooq.test.h2.generatedclasses.Keys.FK_X_TEST_CASE_85); + } +} diff --git a/jOOQ-test/src/org/jooq/test/h2/generatedclasses/tables/XUnused.java b/jOOQ-test/src/org/jooq/test/h2/generatedclasses/tables/XUnused.java new file mode 100644 index 00000000000..4de7705797d --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/h2/generatedclasses/tables/XUnused.java @@ -0,0 +1,150 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.h2.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class XUnused extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = -791628661; + + /** + * The singleton instance of PUBLIC.X_UNUSED + */ + public static final org.jooq.test.h2.generatedclasses.tables.XUnused X_UNUSED = new org.jooq.test.h2.generatedclasses.tables.XUnused(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.h2.generatedclasses.tables.records.XUnusedRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public static final org.jooq.TableField ID = createField("ID", org.jooq.impl.SQLDataType.INTEGER, X_UNUSED); + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public static final org.jooq.TableField NAME = createField("NAME", org.jooq.impl.SQLDataType.VARCHAR, X_UNUSED); + + /** + * An uncommented item + */ + public static final org.jooq.TableField BIG_INTEGER = createField("BIG_INTEGER", org.jooq.impl.SQLDataType.DECIMAL_INTEGER, X_UNUSED); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_X_UNUSED_SELF
+	 * FOREIGN KEY (ID_REF, ID_REF, NAME_REF, NAME_REF)
+	 * REFERENCES PUBLIC.X_UNUSED (ID, NAME)
+	 * 
+ */ + public static final org.jooq.TableField ID_REF = createField("ID_REF", org.jooq.impl.SQLDataType.INTEGER, X_UNUSED); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_X_UNUSED_SELF
+	 * FOREIGN KEY (ID_REF, ID_REF, NAME_REF, NAME_REF)
+	 * REFERENCES PUBLIC.X_UNUSED (ID, NAME)
+	 * 
+ */ + public static final org.jooq.TableField NAME_REF = createField("NAME_REF", org.jooq.impl.SQLDataType.VARCHAR, X_UNUSED); + + /** + * An uncommented item + */ + public static final org.jooq.TableField CLASS = createField("CLASS", org.jooq.impl.SQLDataType.INTEGER, X_UNUSED); + + /** + * An uncommented item + */ + public static final org.jooq.TableField FIELDS = createField("FIELDS", org.jooq.impl.SQLDataType.INTEGER, X_UNUSED); + + /** + * An uncommented item + */ + public static final org.jooq.TableField TABLE = createField("TABLE", org.jooq.impl.SQLDataType.INTEGER, X_UNUSED); + + /** + * An uncommented item + */ + public static final org.jooq.TableField CONFIGURATION = createField("CONFIGURATION", org.jooq.impl.SQLDataType.INTEGER, X_UNUSED); + + /** + * An uncommented item + */ + public static final org.jooq.TableField U_D_T = createField("U_D_T", org.jooq.impl.SQLDataType.INTEGER, X_UNUSED); + + /** + * An uncommented item + */ + public static final org.jooq.TableField META_DATA = createField("META_DATA", org.jooq.impl.SQLDataType.INTEGER, X_UNUSED); + + /** + * An uncommented item + */ + public static final org.jooq.TableField VALUES = createField("VALUES", org.jooq.impl.SQLDataType.INTEGER, X_UNUSED); + + /** + * An uncommented item + */ + public static final org.jooq.TableField TYPE0 = createField("TYPE0", org.jooq.impl.SQLDataType.INTEGER, X_UNUSED); + + /** + * An uncommented item + */ + public static final org.jooq.TableField PRIMARY_KEY = createField("PRIMARY_KEY", org.jooq.impl.SQLDataType.INTEGER, X_UNUSED); + + /** + * An uncommented item + */ + public static final org.jooq.TableField PRIMARYKEY = createField("PRIMARYKEY", org.jooq.impl.SQLDataType.INTEGER, X_UNUSED); + + /** + * An uncommented item + */ + public static final org.jooq.TableField FIELD_737 = createField("FIELD 737", org.jooq.impl.SQLDataType.DECIMAL, X_UNUSED); + + /** + * No further instances allowed + */ + private XUnused() { + super("X_UNUSED", org.jooq.test.h2.generatedclasses.Public.PUBLIC); + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.test.h2.generatedclasses.Keys.PK_X_UNUSED; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.test.h2.generatedclasses.Keys.PK_X_UNUSED, org.jooq.test.h2.generatedclasses.Keys.UK_X_UNUSED_ID); + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getReferences() { + return java.util.Arrays.>asList(org.jooq.test.h2.generatedclasses.Keys.FK_X_UNUSED_SELF); + } +} diff --git a/jOOQ-test/src/org/jooq/test/h2/generatedclasses/tables/records/TArraysRecord.java b/jOOQ-test/src/org/jooq/test/h2/generatedclasses/tables/records/TArraysRecord.java new file mode 100644 index 00000000000..a2ba1ffb68b --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/h2/generatedclasses/tables/records/TArraysRecord.java @@ -0,0 +1,97 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.h2.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + */ +public class TArraysRecord extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = -851743228; + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setId(java.lang.Integer value) { + setValue(org.jooq.test.h2.generatedclasses.tables.TArrays.ID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.lang.Integer getId() { + return getValue(org.jooq.test.h2.generatedclasses.tables.TArrays.ID); + } + + /** + * An uncommented item + * + * The SQL type of this item (ARRAY) could not be mapped.
+ * Deserialising this field might not work! + */ + public void setStringArray(java.lang.Object[] value) { + setValue(org.jooq.test.h2.generatedclasses.tables.TArrays.STRING_ARRAY, value); + } + + /** + * An uncommented item + * + * The SQL type of this item (ARRAY) could not be mapped.
+ * Deserialising this field might not work! + */ + public java.lang.Object[] getStringArray() { + return getValue(org.jooq.test.h2.generatedclasses.tables.TArrays.STRING_ARRAY); + } + + /** + * An uncommented item + * + * The SQL type of this item (ARRAY) could not be mapped.
+ * Deserialising this field might not work! + */ + public void setNumberArray(java.lang.Object[] value) { + setValue(org.jooq.test.h2.generatedclasses.tables.TArrays.NUMBER_ARRAY, value); + } + + /** + * An uncommented item + * + * The SQL type of this item (ARRAY) could not be mapped.
+ * Deserialising this field might not work! + */ + public java.lang.Object[] getNumberArray() { + return getValue(org.jooq.test.h2.generatedclasses.tables.TArrays.NUMBER_ARRAY); + } + + /** + * An uncommented item + * + * The SQL type of this item (ARRAY) could not be mapped.
+ * Deserialising this field might not work! + */ + public void setDateArray(java.lang.Object[] value) { + setValue(org.jooq.test.h2.generatedclasses.tables.TArrays.DATE_ARRAY, value); + } + + /** + * An uncommented item + * + * The SQL type of this item (ARRAY) could not be mapped.
+ * Deserialising this field might not work! + */ + public java.lang.Object[] getDateArray() { + return getValue(org.jooq.test.h2.generatedclasses.tables.TArrays.DATE_ARRAY); + } + + /** + * Create a detached TArraysRecord + */ + public TArraysRecord() { + super(org.jooq.test.h2.generatedclasses.tables.TArrays.T_ARRAYS); + } +} diff --git a/jOOQ-test/src/org/jooq/test/h2/generatedclasses/tables/records/TAuthorRecord.java b/jOOQ-test/src/org/jooq/test/h2/generatedclasses/tables/records/TAuthorRecord.java new file mode 100644 index 00000000000..098eb262b6b --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/h2/generatedclasses/tables/records/TAuthorRecord.java @@ -0,0 +1,133 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.h2.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + * + * An entity holding authors of books + */ +public class TAuthorRecord extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = -1224488395; + + /** + * The author ID + * + * PRIMARY KEY + */ + public void setId(java.lang.Integer value) { + setValue(org.jooq.test.h2.generatedclasses.tables.TAuthor.ID, value); + } + + /** + * The author ID + * + * PRIMARY KEY + */ + public java.lang.Integer getId() { + return getValue(org.jooq.test.h2.generatedclasses.tables.TAuthor.ID); + } + + /** + * The author ID + * + * PRIMARY KEY + */ + public java.util.List fetchTBookListByAuthorId() { + return create() + .selectFrom(org.jooq.test.h2.generatedclasses.tables.TBook.T_BOOK) + .where(org.jooq.test.h2.generatedclasses.tables.TBook.AUTHOR_ID.equal(getValue(org.jooq.test.h2.generatedclasses.tables.TAuthor.ID))) + .fetch(); + } + + /** + * The author ID + * + * PRIMARY KEY + */ + public java.util.List fetchTBookListByCoAuthorId() { + return create() + .selectFrom(org.jooq.test.h2.generatedclasses.tables.TBook.T_BOOK) + .where(org.jooq.test.h2.generatedclasses.tables.TBook.CO_AUTHOR_ID.equal(getValue(org.jooq.test.h2.generatedclasses.tables.TAuthor.ID))) + .fetch(); + } + + /** + * The author's first name + */ + public void setFirstName(java.lang.String value) { + setValue(org.jooq.test.h2.generatedclasses.tables.TAuthor.FIRST_NAME, value); + } + + /** + * The author's first name + */ + public java.lang.String getFirstName() { + return getValue(org.jooq.test.h2.generatedclasses.tables.TAuthor.FIRST_NAME); + } + + /** + * The author's last name + */ + public void setLastName(java.lang.String value) { + setValue(org.jooq.test.h2.generatedclasses.tables.TAuthor.LAST_NAME, value); + } + + /** + * The author's last name + */ + public java.lang.String getLastName() { + return getValue(org.jooq.test.h2.generatedclasses.tables.TAuthor.LAST_NAME); + } + + /** + * The author's date of birth + */ + public void setDateOfBirth(java.sql.Date value) { + setValue(org.jooq.test.h2.generatedclasses.tables.TAuthor.DATE_OF_BIRTH, value); + } + + /** + * The author's date of birth + */ + public java.sql.Date getDateOfBirth() { + return getValue(org.jooq.test.h2.generatedclasses.tables.TAuthor.DATE_OF_BIRTH); + } + + /** + * The author's year of birth + */ + public void setYearOfBirth(java.lang.Integer value) { + setValue(org.jooq.test.h2.generatedclasses.tables.TAuthor.YEAR_OF_BIRTH, value); + } + + /** + * The author's year of birth + */ + public java.lang.Integer getYearOfBirth() { + return getValue(org.jooq.test.h2.generatedclasses.tables.TAuthor.YEAR_OF_BIRTH); + } + + /** + * The author's address + */ + public void setAddress(java.lang.String value) { + setValue(org.jooq.test.h2.generatedclasses.tables.TAuthor.ADDRESS, value); + } + + /** + * The author's address + */ + public java.lang.String getAddress() { + return getValue(org.jooq.test.h2.generatedclasses.tables.TAuthor.ADDRESS); + } + + /** + * Create a detached TAuthorRecord + */ + public TAuthorRecord() { + super(org.jooq.test.h2.generatedclasses.tables.TAuthor.T_AUTHOR); + } +} diff --git a/jOOQ-test/src/org/jooq/test/h2/generatedclasses/tables/records/TBookRecord.java b/jOOQ-test/src/org/jooq/test/h2/generatedclasses/tables/records/TBookRecord.java new file mode 100644 index 00000000000..d1a72a66fe9 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/h2/generatedclasses/tables/records/TBookRecord.java @@ -0,0 +1,231 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.h2.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + * + * An entity holding books + */ +public class TBookRecord extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = -1133478228; + + /** + * The book ID + * + * PRIMARY KEY + */ + public void setId(java.lang.Integer value) { + setValue(org.jooq.test.h2.generatedclasses.tables.TBook.ID, value); + } + + /** + * The book ID + * + * PRIMARY KEY + */ + public java.lang.Integer getId() { + return getValue(org.jooq.test.h2.generatedclasses.tables.TBook.ID); + } + + /** + * The book ID + * + * PRIMARY KEY + */ + public java.util.List fetchTBookToBookStoreList() { + return create() + .selectFrom(org.jooq.test.h2.generatedclasses.tables.TBookToBookStore.T_BOOK_TO_BOOK_STORE) + .where(org.jooq.test.h2.generatedclasses.tables.TBookToBookStore.BOOK_ID.equal(getValue(org.jooq.test.h2.generatedclasses.tables.TBook.ID))) + .fetch(); + } + + /** + * The author ID in entity 'author' + *

+ *

+	 * CONSTRAINT FK_T_BOOK_AUTHOR_ID
+	 * FOREIGN KEY (AUTHOR_ID)
+	 * REFERENCES PUBLIC.T_AUTHOR (ID)
+	 * 
+ */ + public void setAuthorId(java.lang.Integer value) { + setValue(org.jooq.test.h2.generatedclasses.tables.TBook.AUTHOR_ID, value); + } + + /** + * The author ID in entity 'author' + *

+ *

+	 * CONSTRAINT FK_T_BOOK_AUTHOR_ID
+	 * FOREIGN KEY (AUTHOR_ID)
+	 * REFERENCES PUBLIC.T_AUTHOR (ID)
+	 * 
+ */ + public java.lang.Integer getAuthorId() { + return getValue(org.jooq.test.h2.generatedclasses.tables.TBook.AUTHOR_ID); + } + + /** + * The author ID in entity 'author' + *

+ *

+	 * CONSTRAINT FK_T_BOOK_AUTHOR_ID
+	 * FOREIGN KEY (AUTHOR_ID)
+	 * REFERENCES PUBLIC.T_AUTHOR (ID)
+	 * 
+ */ + public org.jooq.test.h2.generatedclasses.tables.records.TAuthorRecord fetchTAuthorByAuthorId() { + return create() + .selectFrom(org.jooq.test.h2.generatedclasses.tables.TAuthor.T_AUTHOR) + .where(org.jooq.test.h2.generatedclasses.tables.TAuthor.ID.equal(getValue(org.jooq.test.h2.generatedclasses.tables.TBook.AUTHOR_ID))) + .fetchOne(); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_T_BOOK_CO_AUTHOR_ID
+	 * FOREIGN KEY (CO_AUTHOR_ID)
+	 * REFERENCES PUBLIC.T_AUTHOR (ID)
+	 * 
+ */ + public void setCoAuthorId(java.lang.Integer value) { + setValue(org.jooq.test.h2.generatedclasses.tables.TBook.CO_AUTHOR_ID, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_T_BOOK_CO_AUTHOR_ID
+	 * FOREIGN KEY (CO_AUTHOR_ID)
+	 * REFERENCES PUBLIC.T_AUTHOR (ID)
+	 * 
+ */ + public java.lang.Integer getCoAuthorId() { + return getValue(org.jooq.test.h2.generatedclasses.tables.TBook.CO_AUTHOR_ID); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_T_BOOK_CO_AUTHOR_ID
+	 * FOREIGN KEY (CO_AUTHOR_ID)
+	 * REFERENCES PUBLIC.T_AUTHOR (ID)
+	 * 
+ */ + public org.jooq.test.h2.generatedclasses.tables.records.TAuthorRecord fetchTAuthorByCoAuthorId() { + return create() + .selectFrom(org.jooq.test.h2.generatedclasses.tables.TAuthor.T_AUTHOR) + .where(org.jooq.test.h2.generatedclasses.tables.TAuthor.ID.equal(getValue(org.jooq.test.h2.generatedclasses.tables.TBook.CO_AUTHOR_ID))) + .fetchOne(); + } + + /** + * An uncommented item + */ + public void setDetailsId(java.lang.Integer value) { + setValue(org.jooq.test.h2.generatedclasses.tables.TBook.DETAILS_ID, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getDetailsId() { + return getValue(org.jooq.test.h2.generatedclasses.tables.TBook.DETAILS_ID); + } + + /** + * The book's title + */ + public void setTitle(java.lang.String value) { + setValue(org.jooq.test.h2.generatedclasses.tables.TBook.TITLE, value); + } + + /** + * The book's title + */ + public java.lang.String getTitle() { + return getValue(org.jooq.test.h2.generatedclasses.tables.TBook.TITLE); + } + + /** + * The year the book was published in + */ + public void setPublishedIn(java.lang.Integer value) { + setValue(org.jooq.test.h2.generatedclasses.tables.TBook.PUBLISHED_IN, value); + } + + /** + * The year the book was published in + */ + public java.lang.Integer getPublishedIn() { + return getValue(org.jooq.test.h2.generatedclasses.tables.TBook.PUBLISHED_IN); + } + + /** + * The language of the book + *

+ *

+	 * CONSTRAINT FK_T_BOOK_LANGUAGE_ID
+	 * FOREIGN KEY (LANGUAGE_ID)
+	 * REFERENCES PUBLIC.T_LANGUAGE (ID)
+	 * 
+ */ + public void setLanguageId(org.jooq.test.h2.generatedclasses.enums.TLanguage value) { + setValue(org.jooq.test.h2.generatedclasses.tables.TBook.LANGUAGE_ID, value); + } + + /** + * The language of the book + *

+ *

+	 * CONSTRAINT FK_T_BOOK_LANGUAGE_ID
+	 * FOREIGN KEY (LANGUAGE_ID)
+	 * REFERENCES PUBLIC.T_LANGUAGE (ID)
+	 * 
+ */ + public org.jooq.test.h2.generatedclasses.enums.TLanguage getLanguageId() { + return getValue(org.jooq.test.h2.generatedclasses.tables.TBook.LANGUAGE_ID); + } + + /** + * Some textual content of the book + */ + public void setContentText(java.lang.String value) { + setValue(org.jooq.test.h2.generatedclasses.tables.TBook.CONTENT_TEXT, value); + } + + /** + * Some textual content of the book + */ + public java.lang.String getContentText() { + return getValue(org.jooq.test.h2.generatedclasses.tables.TBook.CONTENT_TEXT); + } + + /** + * Some binary content of the book + */ + public void setContentPdf(byte[] value) { + setValue(org.jooq.test.h2.generatedclasses.tables.TBook.CONTENT_PDF, value); + } + + /** + * Some binary content of the book + */ + public byte[] getContentPdf() { + return getValue(org.jooq.test.h2.generatedclasses.tables.TBook.CONTENT_PDF); + } + + /** + * Create a detached TBookRecord + */ + public TBookRecord() { + super(org.jooq.test.h2.generatedclasses.tables.TBook.T_BOOK); + } +} diff --git a/jOOQ-test/src/org/jooq/test/h2/generatedclasses/tables/records/TBookStoreRecord.java b/jOOQ-test/src/org/jooq/test/h2/generatedclasses/tables/records/TBookStoreRecord.java new file mode 100644 index 00000000000..64b2bcd0afa --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/h2/generatedclasses/tables/records/TBookStoreRecord.java @@ -0,0 +1,45 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.h2.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + * + * A book store + */ +public class TBookStoreRecord extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = 774347581; + + /** + * The books store name + */ + public void setName(java.lang.String value) { + setValue(org.jooq.test.h2.generatedclasses.tables.TBookStore.NAME, value); + } + + /** + * The books store name + */ + public java.lang.String getName() { + return getValue(org.jooq.test.h2.generatedclasses.tables.TBookStore.NAME); + } + + /** + * The books store name + */ + public java.util.List fetchTBookToBookStoreList() { + return create() + .selectFrom(org.jooq.test.h2.generatedclasses.tables.TBookToBookStore.T_BOOK_TO_BOOK_STORE) + .where(org.jooq.test.h2.generatedclasses.tables.TBookToBookStore.BOOK_STORE_NAME.equal(getValue(org.jooq.test.h2.generatedclasses.tables.TBookStore.NAME))) + .fetch(); + } + + /** + * Create a detached TBookStoreRecord + */ + public TBookStoreRecord() { + super(org.jooq.test.h2.generatedclasses.tables.TBookStore.T_BOOK_STORE); + } +} diff --git a/jOOQ-test/src/org/jooq/test/h2/generatedclasses/tables/records/TBookToBookStoreRecord.java b/jOOQ-test/src/org/jooq/test/h2/generatedclasses/tables/records/TBookToBookStoreRecord.java new file mode 100644 index 00000000000..ab0caacae34 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/h2/generatedclasses/tables/records/TBookToBookStoreRecord.java @@ -0,0 +1,131 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.h2.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + * + * An m:n relation between books and book stores + */ +public class TBookToBookStoreRecord extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = 2046362821; + + /** + * The book store name + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT FK_B2BS_BS_NAME
+	 * FOREIGN KEY (BOOK_STORE_NAME)
+	 * REFERENCES PUBLIC.T_BOOK_STORE (NAME)
+	 * 
+ */ + public void setBookStoreName(java.lang.String value) { + setValue(org.jooq.test.h2.generatedclasses.tables.TBookToBookStore.BOOK_STORE_NAME, value); + } + + /** + * The book store name + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT FK_B2BS_BS_NAME
+	 * FOREIGN KEY (BOOK_STORE_NAME)
+	 * REFERENCES PUBLIC.T_BOOK_STORE (NAME)
+	 * 
+ */ + public java.lang.String getBookStoreName() { + return getValue(org.jooq.test.h2.generatedclasses.tables.TBookToBookStore.BOOK_STORE_NAME); + } + + /** + * The book store name + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT FK_B2BS_BS_NAME
+	 * FOREIGN KEY (BOOK_STORE_NAME)
+	 * REFERENCES PUBLIC.T_BOOK_STORE (NAME)
+	 * 
+ */ + public org.jooq.test.h2.generatedclasses.tables.records.TBookStoreRecord fetchTBookStore() { + return create() + .selectFrom(org.jooq.test.h2.generatedclasses.tables.TBookStore.T_BOOK_STORE) + .where(org.jooq.test.h2.generatedclasses.tables.TBookStore.NAME.equal(getValue(org.jooq.test.h2.generatedclasses.tables.TBookToBookStore.BOOK_STORE_NAME))) + .fetchOne(); + } + + /** + * The book ID + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT FK_B2BS_B_ID
+	 * FOREIGN KEY (BOOK_ID)
+	 * REFERENCES PUBLIC.T_BOOK (ID)
+	 * 
+ */ + public void setBookId(java.lang.Integer value) { + setValue(org.jooq.test.h2.generatedclasses.tables.TBookToBookStore.BOOK_ID, value); + } + + /** + * The book ID + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT FK_B2BS_B_ID
+	 * FOREIGN KEY (BOOK_ID)
+	 * REFERENCES PUBLIC.T_BOOK (ID)
+	 * 
+ */ + public java.lang.Integer getBookId() { + return getValue(org.jooq.test.h2.generatedclasses.tables.TBookToBookStore.BOOK_ID); + } + + /** + * The book ID + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT FK_B2BS_B_ID
+	 * FOREIGN KEY (BOOK_ID)
+	 * REFERENCES PUBLIC.T_BOOK (ID)
+	 * 
+ */ + public org.jooq.test.h2.generatedclasses.tables.records.TBookRecord fetchTBook() { + return create() + .selectFrom(org.jooq.test.h2.generatedclasses.tables.TBook.T_BOOK) + .where(org.jooq.test.h2.generatedclasses.tables.TBook.ID.equal(getValue(org.jooq.test.h2.generatedclasses.tables.TBookToBookStore.BOOK_ID))) + .fetchOne(); + } + + /** + * The number of books on stock + */ + public void setStock(java.lang.Integer value) { + setValue(org.jooq.test.h2.generatedclasses.tables.TBookToBookStore.STOCK, value); + } + + /** + * The number of books on stock + */ + public java.lang.Integer getStock() { + return getValue(org.jooq.test.h2.generatedclasses.tables.TBookToBookStore.STOCK); + } + + /** + * Create a detached TBookToBookStoreRecord + */ + public TBookToBookStoreRecord() { + super(org.jooq.test.h2.generatedclasses.tables.TBookToBookStore.T_BOOK_TO_BOOK_STORE); + } +} diff --git a/jOOQ-test/src/org/jooq/test/h2/generatedclasses/tables/records/TBooleansRecord.java b/jOOQ-test/src/org/jooq/test/h2/generatedclasses/tables/records/TBooleansRecord.java new file mode 100644 index 00000000000..1a322fccebc --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/h2/generatedclasses/tables/records/TBooleansRecord.java @@ -0,0 +1,177 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.h2.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + */ +public class TBooleansRecord extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = -687651978; + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setId(java.lang.Integer value) { + setValue(org.jooq.test.h2.generatedclasses.tables.TBooleans.ID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.lang.Integer getId() { + return getValue(org.jooq.test.h2.generatedclasses.tables.TBooleans.ID); + } + + /** + * An uncommented item + */ + public void setOneZero(org.jooq.test._.converters.Boolean_10 value) { + setValue(org.jooq.test.h2.generatedclasses.tables.TBooleans.ONE_ZERO, value); + } + + /** + * An uncommented item + */ + public org.jooq.test._.converters.Boolean_10 getOneZero() { + return getValue(org.jooq.test.h2.generatedclasses.tables.TBooleans.ONE_ZERO); + } + + /** + * An uncommented item + */ + public void setTrueFalseLc(org.jooq.test._.converters.Boolean_TF_LC value) { + setValue(org.jooq.test.h2.generatedclasses.tables.TBooleans.TRUE_FALSE_LC, value); + } + + /** + * An uncommented item + */ + public org.jooq.test._.converters.Boolean_TF_LC getTrueFalseLc() { + return getValue(org.jooq.test.h2.generatedclasses.tables.TBooleans.TRUE_FALSE_LC); + } + + /** + * An uncommented item + */ + public void setTrueFalseUc(org.jooq.test._.converters.Boolean_TF_UC value) { + setValue(org.jooq.test.h2.generatedclasses.tables.TBooleans.TRUE_FALSE_UC, value); + } + + /** + * An uncommented item + */ + public org.jooq.test._.converters.Boolean_TF_UC getTrueFalseUc() { + return getValue(org.jooq.test.h2.generatedclasses.tables.TBooleans.TRUE_FALSE_UC); + } + + /** + * An uncommented item + */ + public void setYesNoLc(org.jooq.test._.converters.Boolean_YES_NO_LC value) { + setValue(org.jooq.test.h2.generatedclasses.tables.TBooleans.YES_NO_LC, value); + } + + /** + * An uncommented item + */ + public org.jooq.test._.converters.Boolean_YES_NO_LC getYesNoLc() { + return getValue(org.jooq.test.h2.generatedclasses.tables.TBooleans.YES_NO_LC); + } + + /** + * An uncommented item + */ + public void setYesNoUc(org.jooq.test._.converters.Boolean_YES_NO_UC value) { + setValue(org.jooq.test.h2.generatedclasses.tables.TBooleans.YES_NO_UC, value); + } + + /** + * An uncommented item + */ + public org.jooq.test._.converters.Boolean_YES_NO_UC getYesNoUc() { + return getValue(org.jooq.test.h2.generatedclasses.tables.TBooleans.YES_NO_UC); + } + + /** + * An uncommented item + */ + public void setYNLc(org.jooq.test._.converters.Boolean_YN_LC value) { + setValue(org.jooq.test.h2.generatedclasses.tables.TBooleans.Y_N_LC, value); + } + + /** + * An uncommented item + */ + public org.jooq.test._.converters.Boolean_YN_LC getYNLc() { + return getValue(org.jooq.test.h2.generatedclasses.tables.TBooleans.Y_N_LC); + } + + /** + * An uncommented item + */ + public void setYNUc(org.jooq.test._.converters.Boolean_YN_UC value) { + setValue(org.jooq.test.h2.generatedclasses.tables.TBooleans.Y_N_UC, value); + } + + /** + * An uncommented item + */ + public org.jooq.test._.converters.Boolean_YN_UC getYNUc() { + return getValue(org.jooq.test.h2.generatedclasses.tables.TBooleans.Y_N_UC); + } + + /** + * An uncommented item + */ + public void setVcBoolean(java.lang.Boolean value) { + setValue(org.jooq.test.h2.generatedclasses.tables.TBooleans.VC_BOOLEAN, value); + } + + /** + * An uncommented item + */ + public java.lang.Boolean getVcBoolean() { + return getValue(org.jooq.test.h2.generatedclasses.tables.TBooleans.VC_BOOLEAN); + } + + /** + * An uncommented item + */ + public void setCBoolean(java.lang.Boolean value) { + setValue(org.jooq.test.h2.generatedclasses.tables.TBooleans.C_BOOLEAN, value); + } + + /** + * An uncommented item + */ + public java.lang.Boolean getCBoolean() { + return getValue(org.jooq.test.h2.generatedclasses.tables.TBooleans.C_BOOLEAN); + } + + /** + * An uncommented item + */ + public void setNBoolean(java.lang.Boolean value) { + setValue(org.jooq.test.h2.generatedclasses.tables.TBooleans.N_BOOLEAN, value); + } + + /** + * An uncommented item + */ + public java.lang.Boolean getNBoolean() { + return getValue(org.jooq.test.h2.generatedclasses.tables.TBooleans.N_BOOLEAN); + } + + /** + * Create a detached TBooleansRecord + */ + public TBooleansRecord() { + super(org.jooq.test.h2.generatedclasses.tables.TBooleans.T_BOOLEANS); + } +} diff --git a/jOOQ-test/src/org/jooq/test/h2/generatedclasses/tables/records/TDatesRecord.java b/jOOQ-test/src/org/jooq/test/h2/generatedclasses/tables/records/TDatesRecord.java new file mode 100644 index 00000000000..ae409a04eee --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/h2/generatedclasses/tables/records/TDatesRecord.java @@ -0,0 +1,107 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.h2.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + */ +public class TDatesRecord extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = -1884059120; + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setId(java.lang.Integer value) { + setValue(org.jooq.test.h2.generatedclasses.tables.TDates.ID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.lang.Integer getId() { + return getValue(org.jooq.test.h2.generatedclasses.tables.TDates.ID); + } + + /** + * An uncommented item + */ + public void setD(java.sql.Date value) { + setValue(org.jooq.test.h2.generatedclasses.tables.TDates.D, value); + } + + /** + * An uncommented item + */ + public java.sql.Date getD() { + return getValue(org.jooq.test.h2.generatedclasses.tables.TDates.D); + } + + /** + * An uncommented item + */ + public void setT(java.sql.Time value) { + setValue(org.jooq.test.h2.generatedclasses.tables.TDates.T, value); + } + + /** + * An uncommented item + */ + public java.sql.Time getT() { + return getValue(org.jooq.test.h2.generatedclasses.tables.TDates.T); + } + + /** + * An uncommented item + */ + public void setTs(java.sql.Timestamp value) { + setValue(org.jooq.test.h2.generatedclasses.tables.TDates.TS, value); + } + + /** + * An uncommented item + */ + public java.sql.Timestamp getTs() { + return getValue(org.jooq.test.h2.generatedclasses.tables.TDates.TS); + } + + /** + * An uncommented item + */ + public void setDInt(java.lang.Integer value) { + setValue(org.jooq.test.h2.generatedclasses.tables.TDates.D_INT, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getDInt() { + return getValue(org.jooq.test.h2.generatedclasses.tables.TDates.D_INT); + } + + /** + * An uncommented item + */ + public void setTsBigint(java.lang.Long value) { + setValue(org.jooq.test.h2.generatedclasses.tables.TDates.TS_BIGINT, value); + } + + /** + * An uncommented item + */ + public java.lang.Long getTsBigint() { + return getValue(org.jooq.test.h2.generatedclasses.tables.TDates.TS_BIGINT); + } + + /** + * Create a detached TDatesRecord + */ + public TDatesRecord() { + super(org.jooq.test.h2.generatedclasses.tables.TDates.T_DATES); + } +} diff --git a/jOOQ-test/src/org/jooq/test/h2/generatedclasses/tables/records/TIdentityPkRecord.java b/jOOQ-test/src/org/jooq/test/h2/generatedclasses/tables/records/TIdentityPkRecord.java new file mode 100644 index 00000000000..aa71a064275 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/h2/generatedclasses/tables/records/TIdentityPkRecord.java @@ -0,0 +1,51 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.h2.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + */ +public class TIdentityPkRecord extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = -569770789; + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setId(java.lang.Integer value) { + setValue(org.jooq.test.h2.generatedclasses.tables.TIdentityPk.ID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.lang.Integer getId() { + return getValue(org.jooq.test.h2.generatedclasses.tables.TIdentityPk.ID); + } + + /** + * An uncommented item + */ + public void setVal(java.lang.Integer value) { + setValue(org.jooq.test.h2.generatedclasses.tables.TIdentityPk.VAL, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getVal() { + return getValue(org.jooq.test.h2.generatedclasses.tables.TIdentityPk.VAL); + } + + /** + * Create a detached TIdentityPkRecord + */ + public TIdentityPkRecord() { + super(org.jooq.test.h2.generatedclasses.tables.TIdentityPk.T_IDENTITY_PK); + } +} diff --git a/jOOQ-test/src/org/jooq/test/h2/generatedclasses/tables/records/TIdentityRecord.java b/jOOQ-test/src/org/jooq/test/h2/generatedclasses/tables/records/TIdentityRecord.java new file mode 100644 index 00000000000..f5ea56c83a0 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/h2/generatedclasses/tables/records/TIdentityRecord.java @@ -0,0 +1,47 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.h2.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + */ +public class TIdentityRecord extends org.jooq.impl.TableRecordImpl { + + private static final long serialVersionUID = 884582270; + + /** + * An uncommented item + */ + public void setId(java.lang.Integer value) { + setValue(org.jooq.test.h2.generatedclasses.tables.TIdentity.ID, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getId() { + return getValue(org.jooq.test.h2.generatedclasses.tables.TIdentity.ID); + } + + /** + * An uncommented item + */ + public void setVal(java.lang.Integer value) { + setValue(org.jooq.test.h2.generatedclasses.tables.TIdentity.VAL, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getVal() { + return getValue(org.jooq.test.h2.generatedclasses.tables.TIdentity.VAL); + } + + /** + * Create a detached TIdentityRecord + */ + public TIdentityRecord() { + super(org.jooq.test.h2.generatedclasses.tables.TIdentity.T_IDENTITY); + } +} diff --git a/jOOQ-test/src/org/jooq/test/h2/generatedclasses/tables/records/TTriggersRecord.java b/jOOQ-test/src/org/jooq/test/h2/generatedclasses/tables/records/TTriggersRecord.java new file mode 100644 index 00000000000..a744986aec0 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/h2/generatedclasses/tables/records/TTriggersRecord.java @@ -0,0 +1,65 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.h2.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + */ +public class TTriggersRecord extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = -897428164; + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setIdGenerated(java.lang.Integer value) { + setValue(org.jooq.test.h2.generatedclasses.tables.TTriggers.ID_GENERATED, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.lang.Integer getIdGenerated() { + return getValue(org.jooq.test.h2.generatedclasses.tables.TTriggers.ID_GENERATED); + } + + /** + * An uncommented item + */ + public void setId(java.lang.Integer value) { + setValue(org.jooq.test.h2.generatedclasses.tables.TTriggers.ID, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getId() { + return getValue(org.jooq.test.h2.generatedclasses.tables.TTriggers.ID); + } + + /** + * An uncommented item + */ + public void setCounter(java.lang.Integer value) { + setValue(org.jooq.test.h2.generatedclasses.tables.TTriggers.COUNTER, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getCounter() { + return getValue(org.jooq.test.h2.generatedclasses.tables.TTriggers.COUNTER); + } + + /** + * Create a detached TTriggersRecord + */ + public TTriggersRecord() { + super(org.jooq.test.h2.generatedclasses.tables.TTriggers.T_TRIGGERS); + } +} diff --git a/jOOQ-test/src/org/jooq/test/h2/generatedclasses/tables/records/T_639NumbersTableRecord.java b/jOOQ-test/src/org/jooq/test/h2/generatedclasses/tables/records/T_639NumbersTableRecord.java new file mode 100644 index 00000000000..704c2ccc40a --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/h2/generatedclasses/tables/records/T_639NumbersTableRecord.java @@ -0,0 +1,205 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.h2.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + */ +public class T_639NumbersTableRecord extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = 1928651369; + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setId(java.lang.Integer value) { + setValue(org.jooq.test.h2.generatedclasses.tables.T_639NumbersTable.ID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.lang.Integer getId() { + return getValue(org.jooq.test.h2.generatedclasses.tables.T_639NumbersTable.ID); + } + + /** + * An uncommented item + */ + public void setByte(java.lang.Byte value) { + setValue(org.jooq.test.h2.generatedclasses.tables.T_639NumbersTable.BYTE, value); + } + + /** + * An uncommented item + */ + public java.lang.Byte getByte() { + return getValue(org.jooq.test.h2.generatedclasses.tables.T_639NumbersTable.BYTE); + } + + /** + * An uncommented item + */ + public void setShort(java.lang.Short value) { + setValue(org.jooq.test.h2.generatedclasses.tables.T_639NumbersTable.SHORT, value); + } + + /** + * An uncommented item + */ + public java.lang.Short getShort() { + return getValue(org.jooq.test.h2.generatedclasses.tables.T_639NumbersTable.SHORT); + } + + /** + * An uncommented item + */ + public void setInteger(java.lang.Integer value) { + setValue(org.jooq.test.h2.generatedclasses.tables.T_639NumbersTable.INTEGER, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getInteger() { + return getValue(org.jooq.test.h2.generatedclasses.tables.T_639NumbersTable.INTEGER); + } + + /** + * An uncommented item + */ + public void setLong(java.lang.Long value) { + setValue(org.jooq.test.h2.generatedclasses.tables.T_639NumbersTable.LONG, value); + } + + /** + * An uncommented item + */ + public java.lang.Long getLong() { + return getValue(org.jooq.test.h2.generatedclasses.tables.T_639NumbersTable.LONG); + } + + /** + * An uncommented item + */ + public void setByteDecimal(java.lang.Byte value) { + setValue(org.jooq.test.h2.generatedclasses.tables.T_639NumbersTable.BYTE_DECIMAL, value); + } + + /** + * An uncommented item + */ + public java.lang.Byte getByteDecimal() { + return getValue(org.jooq.test.h2.generatedclasses.tables.T_639NumbersTable.BYTE_DECIMAL); + } + + /** + * An uncommented item + */ + public void setShortDecimal(java.lang.Short value) { + setValue(org.jooq.test.h2.generatedclasses.tables.T_639NumbersTable.SHORT_DECIMAL, value); + } + + /** + * An uncommented item + */ + public java.lang.Short getShortDecimal() { + return getValue(org.jooq.test.h2.generatedclasses.tables.T_639NumbersTable.SHORT_DECIMAL); + } + + /** + * An uncommented item + */ + public void setIntegerDecimal(java.lang.Integer value) { + setValue(org.jooq.test.h2.generatedclasses.tables.T_639NumbersTable.INTEGER_DECIMAL, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getIntegerDecimal() { + return getValue(org.jooq.test.h2.generatedclasses.tables.T_639NumbersTable.INTEGER_DECIMAL); + } + + /** + * An uncommented item + */ + public void setLongDecimal(java.lang.Long value) { + setValue(org.jooq.test.h2.generatedclasses.tables.T_639NumbersTable.LONG_DECIMAL, value); + } + + /** + * An uncommented item + */ + public java.lang.Long getLongDecimal() { + return getValue(org.jooq.test.h2.generatedclasses.tables.T_639NumbersTable.LONG_DECIMAL); + } + + /** + * An uncommented item + */ + public void setBigInteger(java.math.BigInteger value) { + setValue(org.jooq.test.h2.generatedclasses.tables.T_639NumbersTable.BIG_INTEGER, value); + } + + /** + * An uncommented item + */ + public java.math.BigInteger getBigInteger() { + return getValue(org.jooq.test.h2.generatedclasses.tables.T_639NumbersTable.BIG_INTEGER); + } + + /** + * An uncommented item + */ + public void setBigDecimal(java.math.BigDecimal value) { + setValue(org.jooq.test.h2.generatedclasses.tables.T_639NumbersTable.BIG_DECIMAL, value); + } + + /** + * An uncommented item + */ + public java.math.BigDecimal getBigDecimal() { + return getValue(org.jooq.test.h2.generatedclasses.tables.T_639NumbersTable.BIG_DECIMAL); + } + + /** + * An uncommented item + */ + public void setFloat(java.lang.Float value) { + setValue(org.jooq.test.h2.generatedclasses.tables.T_639NumbersTable.FLOAT, value); + } + + /** + * An uncommented item + */ + public java.lang.Float getFloat() { + return getValue(org.jooq.test.h2.generatedclasses.tables.T_639NumbersTable.FLOAT); + } + + /** + * An uncommented item + */ + public void setDouble(java.lang.Double value) { + setValue(org.jooq.test.h2.generatedclasses.tables.T_639NumbersTable.DOUBLE, value); + } + + /** + * An uncommented item + */ + public java.lang.Double getDouble() { + return getValue(org.jooq.test.h2.generatedclasses.tables.T_639NumbersTable.DOUBLE); + } + + /** + * Create a detached T_639NumbersTableRecord + */ + public T_639NumbersTableRecord() { + super(org.jooq.test.h2.generatedclasses.tables.T_639NumbersTable.T_639_NUMBERS_TABLE); + } +} diff --git a/jOOQ-test/src/org/jooq/test/h2/generatedclasses/tables/records/T_658RefRecord.java b/jOOQ-test/src/org/jooq/test/h2/generatedclasses/tables/records/T_658RefRecord.java new file mode 100644 index 00000000000..5391c78da44 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/h2/generatedclasses/tables/records/T_658RefRecord.java @@ -0,0 +1,175 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.h2.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + */ +public class T_658RefRecord extends org.jooq.impl.TableRecordImpl { + + private static final long serialVersionUID = 792146676; + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_T_658_11
+	 * FOREIGN KEY (REF_11)
+	 * REFERENCES PUBLIC.T_658_11 (ID)
+	 * 
+ */ + public void setRef_11(org.jooq.test.h2.generatedclasses.enums.T_658_11 value) { + setValue(org.jooq.test.h2.generatedclasses.tables.T_658Ref.REF_11, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_T_658_11
+	 * FOREIGN KEY (REF_11)
+	 * REFERENCES PUBLIC.T_658_11 (ID)
+	 * 
+ */ + public org.jooq.test.h2.generatedclasses.enums.T_658_11 getRef_11() { + return getValue(org.jooq.test.h2.generatedclasses.tables.T_658Ref.REF_11); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_T_658_21
+	 * FOREIGN KEY (REF_21)
+	 * REFERENCES PUBLIC.T_658_21 (ID)
+	 * 
+ */ + public void setRef_21(org.jooq.test.h2.generatedclasses.enums.T_658_21 value) { + setValue(org.jooq.test.h2.generatedclasses.tables.T_658Ref.REF_21, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_T_658_21
+	 * FOREIGN KEY (REF_21)
+	 * REFERENCES PUBLIC.T_658_21 (ID)
+	 * 
+ */ + public org.jooq.test.h2.generatedclasses.enums.T_658_21 getRef_21() { + return getValue(org.jooq.test.h2.generatedclasses.tables.T_658Ref.REF_21); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_T_658_31
+	 * FOREIGN KEY (REF_31)
+	 * REFERENCES PUBLIC.T_658_31 (ID)
+	 * 
+ */ + public void setRef_31(org.jooq.test.h2.generatedclasses.enums.T_658_31 value) { + setValue(org.jooq.test.h2.generatedclasses.tables.T_658Ref.REF_31, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_T_658_31
+	 * FOREIGN KEY (REF_31)
+	 * REFERENCES PUBLIC.T_658_31 (ID)
+	 * 
+ */ + public org.jooq.test.h2.generatedclasses.enums.T_658_31 getRef_31() { + return getValue(org.jooq.test.h2.generatedclasses.tables.T_658Ref.REF_31); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_T_658_12
+	 * FOREIGN KEY (REF_12)
+	 * REFERENCES PUBLIC.T_658_12 (ID)
+	 * 
+ */ + public void setRef_12(org.jooq.test.h2.generatedclasses.enums.T_658_12 value) { + setValue(org.jooq.test.h2.generatedclasses.tables.T_658Ref.REF_12, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_T_658_12
+	 * FOREIGN KEY (REF_12)
+	 * REFERENCES PUBLIC.T_658_12 (ID)
+	 * 
+ */ + public org.jooq.test.h2.generatedclasses.enums.T_658_12 getRef_12() { + return getValue(org.jooq.test.h2.generatedclasses.tables.T_658Ref.REF_12); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_T_658_22
+	 * FOREIGN KEY (REF_22)
+	 * REFERENCES PUBLIC.T_658_22 (ID)
+	 * 
+ */ + public void setRef_22(org.jooq.test.h2.generatedclasses.enums.T_658_22 value) { + setValue(org.jooq.test.h2.generatedclasses.tables.T_658Ref.REF_22, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_T_658_22
+	 * FOREIGN KEY (REF_22)
+	 * REFERENCES PUBLIC.T_658_22 (ID)
+	 * 
+ */ + public org.jooq.test.h2.generatedclasses.enums.T_658_22 getRef_22() { + return getValue(org.jooq.test.h2.generatedclasses.tables.T_658Ref.REF_22); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_T_658_32
+	 * FOREIGN KEY (REF_32)
+	 * REFERENCES PUBLIC.T_658_32 (ID)
+	 * 
+ */ + public void setRef_32(org.jooq.test.h2.generatedclasses.enums.T_658_32 value) { + setValue(org.jooq.test.h2.generatedclasses.tables.T_658Ref.REF_32, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_T_658_32
+	 * FOREIGN KEY (REF_32)
+	 * REFERENCES PUBLIC.T_658_32 (ID)
+	 * 
+ */ + public org.jooq.test.h2.generatedclasses.enums.T_658_32 getRef_32() { + return getValue(org.jooq.test.h2.generatedclasses.tables.T_658Ref.REF_32); + } + + /** + * Create a detached T_658RefRecord + */ + public T_658RefRecord() { + super(org.jooq.test.h2.generatedclasses.tables.T_658Ref.T_658_REF); + } +} diff --git a/jOOQ-test/src/org/jooq/test/h2/generatedclasses/tables/records/T_725LobTestRecord.java b/jOOQ-test/src/org/jooq/test/h2/generatedclasses/tables/records/T_725LobTestRecord.java new file mode 100644 index 00000000000..a9fac434cbc --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/h2/generatedclasses/tables/records/T_725LobTestRecord.java @@ -0,0 +1,51 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.h2.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + */ +public class T_725LobTestRecord extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = 853117287; + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setId(java.lang.Integer value) { + setValue(org.jooq.test.h2.generatedclasses.tables.T_725LobTest.ID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.lang.Integer getId() { + return getValue(org.jooq.test.h2.generatedclasses.tables.T_725LobTest.ID); + } + + /** + * An uncommented item + */ + public void setLob(byte[] value) { + setValue(org.jooq.test.h2.generatedclasses.tables.T_725LobTest.LOB, value); + } + + /** + * An uncommented item + */ + public byte[] getLob() { + return getValue(org.jooq.test.h2.generatedclasses.tables.T_725LobTest.LOB); + } + + /** + * Create a detached T_725LobTestRecord + */ + public T_725LobTestRecord() { + super(org.jooq.test.h2.generatedclasses.tables.T_725LobTest.T_725_LOB_TEST); + } +} diff --git a/jOOQ-test/src/org/jooq/test/h2/generatedclasses/tables/records/T_785Record.java b/jOOQ-test/src/org/jooq/test/h2/generatedclasses/tables/records/T_785Record.java new file mode 100644 index 00000000000..dc74c257e5f --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/h2/generatedclasses/tables/records/T_785Record.java @@ -0,0 +1,61 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.h2.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + */ +public class T_785Record extends org.jooq.impl.TableRecordImpl { + + private static final long serialVersionUID = -2113257201; + + /** + * An uncommented item + */ + public void setId(java.lang.Integer value) { + setValue(org.jooq.test.h2.generatedclasses.tables.T_785.ID, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getId() { + return getValue(org.jooq.test.h2.generatedclasses.tables.T_785.ID); + } + + /** + * An uncommented item + */ + public void setName(java.lang.String value) { + setValue(org.jooq.test.h2.generatedclasses.tables.T_785.NAME, value); + } + + /** + * An uncommented item + */ + public java.lang.String getName() { + return getValue(org.jooq.test.h2.generatedclasses.tables.T_785.NAME); + } + + /** + * An uncommented item + */ + public void setValue(java.lang.String value) { + setValue(org.jooq.test.h2.generatedclasses.tables.T_785.VALUE, value); + } + + /** + * An uncommented item + */ + public java.lang.String getValue() { + return getValue(org.jooq.test.h2.generatedclasses.tables.T_785.VALUE); + } + + /** + * Create a detached T_785Record + */ + public T_785Record() { + super(org.jooq.test.h2.generatedclasses.tables.T_785.T_785); + } +} diff --git a/jOOQ-test/src/org/jooq/test/h2/generatedclasses/tables/records/T_877Record.java b/jOOQ-test/src/org/jooq/test/h2/generatedclasses/tables/records/T_877Record.java new file mode 100644 index 00000000000..4fa7fa0b24a --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/h2/generatedclasses/tables/records/T_877Record.java @@ -0,0 +1,33 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.h2.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + */ +public class T_877Record extends org.jooq.impl.TableRecordImpl { + + private static final long serialVersionUID = -1680856353; + + /** + * An uncommented item + */ + public void setId(java.lang.Integer value) { + setValue(org.jooq.test.h2.generatedclasses.tables.T_877.ID, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getId() { + return getValue(org.jooq.test.h2.generatedclasses.tables.T_877.ID); + } + + /** + * Create a detached T_877Record + */ + public T_877Record() { + super(org.jooq.test.h2.generatedclasses.tables.T_877.T_877); + } +} diff --git a/jOOQ-test/src/org/jooq/test/h2/generatedclasses/tables/records/VAuthorRecord.java b/jOOQ-test/src/org/jooq/test/h2/generatedclasses/tables/records/VAuthorRecord.java new file mode 100644 index 00000000000..ef272ba8221 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/h2/generatedclasses/tables/records/VAuthorRecord.java @@ -0,0 +1,103 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.h2.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + */ +public class VAuthorRecord extends org.jooq.impl.TableRecordImpl { + + private static final long serialVersionUID = -332730644; + + /** + * An uncommented item + */ + public void setId(java.lang.Integer value) { + setValue(org.jooq.test.h2.generatedclasses.tables.VAuthor.ID, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getId() { + return getValue(org.jooq.test.h2.generatedclasses.tables.VAuthor.ID); + } + + /** + * An uncommented item + */ + public void setFirstName(java.lang.String value) { + setValue(org.jooq.test.h2.generatedclasses.tables.VAuthor.FIRST_NAME, value); + } + + /** + * An uncommented item + */ + public java.lang.String getFirstName() { + return getValue(org.jooq.test.h2.generatedclasses.tables.VAuthor.FIRST_NAME); + } + + /** + * An uncommented item + */ + public void setLastName(java.lang.String value) { + setValue(org.jooq.test.h2.generatedclasses.tables.VAuthor.LAST_NAME, value); + } + + /** + * An uncommented item + */ + public java.lang.String getLastName() { + return getValue(org.jooq.test.h2.generatedclasses.tables.VAuthor.LAST_NAME); + } + + /** + * An uncommented item + */ + public void setDateOfBirth(java.sql.Date value) { + setValue(org.jooq.test.h2.generatedclasses.tables.VAuthor.DATE_OF_BIRTH, value); + } + + /** + * An uncommented item + */ + public java.sql.Date getDateOfBirth() { + return getValue(org.jooq.test.h2.generatedclasses.tables.VAuthor.DATE_OF_BIRTH); + } + + /** + * An uncommented item + */ + public void setYearOfBirth(java.lang.Integer value) { + setValue(org.jooq.test.h2.generatedclasses.tables.VAuthor.YEAR_OF_BIRTH, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getYearOfBirth() { + return getValue(org.jooq.test.h2.generatedclasses.tables.VAuthor.YEAR_OF_BIRTH); + } + + /** + * An uncommented item + */ + public void setAddress(java.lang.String value) { + setValue(org.jooq.test.h2.generatedclasses.tables.VAuthor.ADDRESS, value); + } + + /** + * An uncommented item + */ + public java.lang.String getAddress() { + return getValue(org.jooq.test.h2.generatedclasses.tables.VAuthor.ADDRESS); + } + + /** + * Create a detached VAuthorRecord + */ + public VAuthorRecord() { + super(org.jooq.test.h2.generatedclasses.tables.VAuthor.V_AUTHOR); + } +} diff --git a/jOOQ-test/src/org/jooq/test/h2/generatedclasses/tables/records/VBookRecord.java b/jOOQ-test/src/org/jooq/test/h2/generatedclasses/tables/records/VBookRecord.java new file mode 100644 index 00000000000..277b43fd5d0 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/h2/generatedclasses/tables/records/VBookRecord.java @@ -0,0 +1,145 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.h2.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + */ +public class VBookRecord extends org.jooq.impl.TableRecordImpl { + + private static final long serialVersionUID = -2125790134; + + /** + * An uncommented item + */ + public void setId(java.lang.Integer value) { + setValue(org.jooq.test.h2.generatedclasses.tables.VBook.ID, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getId() { + return getValue(org.jooq.test.h2.generatedclasses.tables.VBook.ID); + } + + /** + * An uncommented item + */ + public void setAuthorId(java.lang.Integer value) { + setValue(org.jooq.test.h2.generatedclasses.tables.VBook.AUTHOR_ID, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getAuthorId() { + return getValue(org.jooq.test.h2.generatedclasses.tables.VBook.AUTHOR_ID); + } + + /** + * An uncommented item + */ + public void setCoAuthorId(java.lang.Integer value) { + setValue(org.jooq.test.h2.generatedclasses.tables.VBook.CO_AUTHOR_ID, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getCoAuthorId() { + return getValue(org.jooq.test.h2.generatedclasses.tables.VBook.CO_AUTHOR_ID); + } + + /** + * An uncommented item + */ + public void setDetailsId(java.lang.Integer value) { + setValue(org.jooq.test.h2.generatedclasses.tables.VBook.DETAILS_ID, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getDetailsId() { + return getValue(org.jooq.test.h2.generatedclasses.tables.VBook.DETAILS_ID); + } + + /** + * An uncommented item + */ + public void setTitle(java.lang.String value) { + setValue(org.jooq.test.h2.generatedclasses.tables.VBook.TITLE, value); + } + + /** + * An uncommented item + */ + public java.lang.String getTitle() { + return getValue(org.jooq.test.h2.generatedclasses.tables.VBook.TITLE); + } + + /** + * An uncommented item + */ + public void setPublishedIn(java.lang.Integer value) { + setValue(org.jooq.test.h2.generatedclasses.tables.VBook.PUBLISHED_IN, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getPublishedIn() { + return getValue(org.jooq.test.h2.generatedclasses.tables.VBook.PUBLISHED_IN); + } + + /** + * An uncommented item + */ + public void setLanguageId(java.lang.Integer value) { + setValue(org.jooq.test.h2.generatedclasses.tables.VBook.LANGUAGE_ID, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getLanguageId() { + return getValue(org.jooq.test.h2.generatedclasses.tables.VBook.LANGUAGE_ID); + } + + /** + * An uncommented item + */ + public void setContentText(java.lang.String value) { + setValue(org.jooq.test.h2.generatedclasses.tables.VBook.CONTENT_TEXT, value); + } + + /** + * An uncommented item + */ + public java.lang.String getContentText() { + return getValue(org.jooq.test.h2.generatedclasses.tables.VBook.CONTENT_TEXT); + } + + /** + * An uncommented item + */ + public void setContentPdf(byte[] value) { + setValue(org.jooq.test.h2.generatedclasses.tables.VBook.CONTENT_PDF, value); + } + + /** + * An uncommented item + */ + public byte[] getContentPdf() { + return getValue(org.jooq.test.h2.generatedclasses.tables.VBook.CONTENT_PDF); + } + + /** + * Create a detached VBookRecord + */ + public VBookRecord() { + super(org.jooq.test.h2.generatedclasses.tables.VBook.V_BOOK); + } +} diff --git a/jOOQ-test/src/org/jooq/test/h2/generatedclasses/tables/records/VLibraryRecord.java b/jOOQ-test/src/org/jooq/test/h2/generatedclasses/tables/records/VLibraryRecord.java new file mode 100644 index 00000000000..f900b662942 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/h2/generatedclasses/tables/records/VLibraryRecord.java @@ -0,0 +1,47 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.h2.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + */ +public class VLibraryRecord extends org.jooq.impl.TableRecordImpl { + + private static final long serialVersionUID = 229426030; + + /** + * An uncommented item + */ + public void setAuthor(java.lang.String value) { + setValue(org.jooq.test.h2.generatedclasses.tables.VLibrary.AUTHOR, value); + } + + /** + * An uncommented item + */ + public java.lang.String getAuthor() { + return getValue(org.jooq.test.h2.generatedclasses.tables.VLibrary.AUTHOR); + } + + /** + * An uncommented item + */ + public void setTitle(java.lang.String value) { + setValue(org.jooq.test.h2.generatedclasses.tables.VLibrary.TITLE, value); + } + + /** + * An uncommented item + */ + public java.lang.String getTitle() { + return getValue(org.jooq.test.h2.generatedclasses.tables.VLibrary.TITLE); + } + + /** + * Create a detached VLibraryRecord + */ + public VLibraryRecord() { + super(org.jooq.test.h2.generatedclasses.tables.VLibrary.V_LIBRARY); + } +} diff --git a/jOOQ-test/src/org/jooq/test/h2/generatedclasses/tables/records/XTestCase_64_69Record.java b/jOOQ-test/src/org/jooq/test/h2/generatedclasses/tables/records/XTestCase_64_69Record.java new file mode 100644 index 00000000000..831737c8e81 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/h2/generatedclasses/tables/records/XTestCase_64_69Record.java @@ -0,0 +1,91 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.h2.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + */ +public class XTestCase_64_69Record extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = 1093994879; + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setId(java.lang.Integer value) { + setValue(org.jooq.test.h2.generatedclasses.tables.XTestCase_64_69.ID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.lang.Integer getId() { + return getValue(org.jooq.test.h2.generatedclasses.tables.XTestCase_64_69.ID); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.util.List fetchXTestCase_71List() { + return create() + .selectFrom(org.jooq.test.h2.generatedclasses.tables.XTestCase_71.X_TEST_CASE_71) + .where(org.jooq.test.h2.generatedclasses.tables.XTestCase_71.TEST_CASE_64_69_ID.equal(getValueAsShort(org.jooq.test.h2.generatedclasses.tables.XTestCase_64_69.ID))) + .fetch(); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_X_TEST_CASE_64_69A
+	 * FOREIGN KEY (UNUSED_ID)
+	 * REFERENCES PUBLIC.X_UNUSED (ID)
+	 * 
+ */ + public void setUnusedId(java.lang.Integer value) { + setValue(org.jooq.test.h2.generatedclasses.tables.XTestCase_64_69.UNUSED_ID, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_X_TEST_CASE_64_69A
+	 * FOREIGN KEY (UNUSED_ID)
+	 * REFERENCES PUBLIC.X_UNUSED (ID)
+	 * 
+ */ + public java.lang.Integer getUnusedId() { + return getValue(org.jooq.test.h2.generatedclasses.tables.XTestCase_64_69.UNUSED_ID); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_X_TEST_CASE_64_69A
+	 * FOREIGN KEY (UNUSED_ID)
+	 * REFERENCES PUBLIC.X_UNUSED (ID)
+	 * 
+ */ + public org.jooq.test.h2.generatedclasses.tables.records.XUnusedRecord fetchXUnused() { + return create() + .selectFrom(org.jooq.test.h2.generatedclasses.tables.XUnused.X_UNUSED) + .where(org.jooq.test.h2.generatedclasses.tables.XUnused.ID.equal(getValue(org.jooq.test.h2.generatedclasses.tables.XTestCase_64_69.UNUSED_ID))) + .fetchOne(); + } + + /** + * Create a detached XTestCase_64_69Record + */ + public XTestCase_64_69Record() { + super(org.jooq.test.h2.generatedclasses.tables.XTestCase_64_69.X_TEST_CASE_64_69); + } +} diff --git a/jOOQ-test/src/org/jooq/test/h2/generatedclasses/tables/records/XTestCase_71Record.java b/jOOQ-test/src/org/jooq/test/h2/generatedclasses/tables/records/XTestCase_71Record.java new file mode 100644 index 00000000000..e9812b6aebb --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/h2/generatedclasses/tables/records/XTestCase_71Record.java @@ -0,0 +1,79 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.h2.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + */ +public class XTestCase_71Record extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = -790031417; + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setId(java.lang.Integer value) { + setValue(org.jooq.test.h2.generatedclasses.tables.XTestCase_71.ID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.lang.Integer getId() { + return getValue(org.jooq.test.h2.generatedclasses.tables.XTestCase_71.ID); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_X_TEST_CASE_71
+	 * FOREIGN KEY (TEST_CASE_64_69_ID)
+	 * REFERENCES PUBLIC.X_TEST_CASE_64_69 (ID)
+	 * 
+ */ + public void setTestCase_64_69Id(java.lang.Short value) { + setValue(org.jooq.test.h2.generatedclasses.tables.XTestCase_71.TEST_CASE_64_69_ID, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_X_TEST_CASE_71
+	 * FOREIGN KEY (TEST_CASE_64_69_ID)
+	 * REFERENCES PUBLIC.X_TEST_CASE_64_69 (ID)
+	 * 
+ */ + public java.lang.Short getTestCase_64_69Id() { + return getValue(org.jooq.test.h2.generatedclasses.tables.XTestCase_71.TEST_CASE_64_69_ID); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_X_TEST_CASE_71
+	 * FOREIGN KEY (TEST_CASE_64_69_ID)
+	 * REFERENCES PUBLIC.X_TEST_CASE_64_69 (ID)
+	 * 
+ */ + public org.jooq.test.h2.generatedclasses.tables.records.XTestCase_64_69Record fetchXTestCase_64_69() { + return create() + .selectFrom(org.jooq.test.h2.generatedclasses.tables.XTestCase_64_69.X_TEST_CASE_64_69) + .where(org.jooq.test.h2.generatedclasses.tables.XTestCase_64_69.ID.equal(getValueAsInteger(org.jooq.test.h2.generatedclasses.tables.XTestCase_71.TEST_CASE_64_69_ID))) + .fetchOne(); + } + + /** + * Create a detached XTestCase_71Record + */ + public XTestCase_71Record() { + super(org.jooq.test.h2.generatedclasses.tables.XTestCase_71.X_TEST_CASE_71); + } +} diff --git a/jOOQ-test/src/org/jooq/test/h2/generatedclasses/tables/records/XTestCase_85Record.java b/jOOQ-test/src/org/jooq/test/h2/generatedclasses/tables/records/XTestCase_85Record.java new file mode 100644 index 00000000000..5f846bdd2c1 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/h2/generatedclasses/tables/records/XTestCase_85Record.java @@ -0,0 +1,89 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.h2.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + */ +public class XTestCase_85Record extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = -130755219; + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setId(java.lang.Integer value) { + setValue(org.jooq.test.h2.generatedclasses.tables.XTestCase_85.ID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.lang.Integer getId() { + return getValue(org.jooq.test.h2.generatedclasses.tables.XTestCase_85.ID); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_X_TEST_CASE_85
+	 * FOREIGN KEY (X_UNUSED_ID, X_UNUSED_ID, X_UNUSED_NAME, X_UNUSED_NAME)
+	 * REFERENCES PUBLIC.X_UNUSED (ID, NAME)
+	 * 
+ */ + public void setXUnusedId(java.lang.Integer value) { + setValue(org.jooq.test.h2.generatedclasses.tables.XTestCase_85.X_UNUSED_ID, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_X_TEST_CASE_85
+	 * FOREIGN KEY (X_UNUSED_ID, X_UNUSED_ID, X_UNUSED_NAME, X_UNUSED_NAME)
+	 * REFERENCES PUBLIC.X_UNUSED (ID, NAME)
+	 * 
+ */ + public java.lang.Integer getXUnusedId() { + return getValue(org.jooq.test.h2.generatedclasses.tables.XTestCase_85.X_UNUSED_ID); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_X_TEST_CASE_85
+	 * FOREIGN KEY (X_UNUSED_ID, X_UNUSED_ID, X_UNUSED_NAME, X_UNUSED_NAME)
+	 * REFERENCES PUBLIC.X_UNUSED (ID, NAME)
+	 * 
+ */ + public void setXUnusedName(java.lang.String value) { + setValue(org.jooq.test.h2.generatedclasses.tables.XTestCase_85.X_UNUSED_NAME, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_X_TEST_CASE_85
+	 * FOREIGN KEY (X_UNUSED_ID, X_UNUSED_ID, X_UNUSED_NAME, X_UNUSED_NAME)
+	 * REFERENCES PUBLIC.X_UNUSED (ID, NAME)
+	 * 
+ */ + public java.lang.String getXUnusedName() { + return getValue(org.jooq.test.h2.generatedclasses.tables.XTestCase_85.X_UNUSED_NAME); + } + + /** + * Create a detached XTestCase_85Record + */ + public XTestCase_85Record() { + super(org.jooq.test.h2.generatedclasses.tables.XTestCase_85.X_TEST_CASE_85); + } +} diff --git a/jOOQ-test/src/org/jooq/test/h2/generatedclasses/tables/records/XUnusedRecord.java b/jOOQ-test/src/org/jooq/test/h2/generatedclasses/tables/records/XUnusedRecord.java new file mode 100644 index 00000000000..67a934e787b --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/h2/generatedclasses/tables/records/XUnusedRecord.java @@ -0,0 +1,287 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.h2.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + */ +public class XUnusedRecord extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = -2133981856; + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setId(java.lang.Integer value) { + setValue(org.jooq.test.h2.generatedclasses.tables.XUnused.ID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.lang.Integer getId() { + return getValue(org.jooq.test.h2.generatedclasses.tables.XUnused.ID); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.util.List fetchXTestCase_64_69List() { + return create() + .selectFrom(org.jooq.test.h2.generatedclasses.tables.XTestCase_64_69.X_TEST_CASE_64_69) + .where(org.jooq.test.h2.generatedclasses.tables.XTestCase_64_69.UNUSED_ID.equal(getValue(org.jooq.test.h2.generatedclasses.tables.XUnused.ID))) + .fetch(); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setName(java.lang.String value) { + setValue(org.jooq.test.h2.generatedclasses.tables.XUnused.NAME, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.lang.String getName() { + return getValue(org.jooq.test.h2.generatedclasses.tables.XUnused.NAME); + } + + /** + * An uncommented item + */ + public void setBigInteger(java.math.BigInteger value) { + setValue(org.jooq.test.h2.generatedclasses.tables.XUnused.BIG_INTEGER, value); + } + + /** + * An uncommented item + */ + public java.math.BigInteger getBigInteger() { + return getValue(org.jooq.test.h2.generatedclasses.tables.XUnused.BIG_INTEGER); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_X_UNUSED_SELF
+	 * FOREIGN KEY (ID_REF, ID_REF, NAME_REF, NAME_REF)
+	 * REFERENCES PUBLIC.X_UNUSED (ID, NAME)
+	 * 
+ */ + public void setIdRef(java.lang.Integer value) { + setValue(org.jooq.test.h2.generatedclasses.tables.XUnused.ID_REF, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_X_UNUSED_SELF
+	 * FOREIGN KEY (ID_REF, ID_REF, NAME_REF, NAME_REF)
+	 * REFERENCES PUBLIC.X_UNUSED (ID, NAME)
+	 * 
+ */ + public java.lang.Integer getIdRef() { + return getValue(org.jooq.test.h2.generatedclasses.tables.XUnused.ID_REF); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_X_UNUSED_SELF
+	 * FOREIGN KEY (ID_REF, ID_REF, NAME_REF, NAME_REF)
+	 * REFERENCES PUBLIC.X_UNUSED (ID, NAME)
+	 * 
+ */ + public void setNameRef(java.lang.String value) { + setValue(org.jooq.test.h2.generatedclasses.tables.XUnused.NAME_REF, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_X_UNUSED_SELF
+	 * FOREIGN KEY (ID_REF, ID_REF, NAME_REF, NAME_REF)
+	 * REFERENCES PUBLIC.X_UNUSED (ID, NAME)
+	 * 
+ */ + public java.lang.String getNameRef() { + return getValue(org.jooq.test.h2.generatedclasses.tables.XUnused.NAME_REF); + } + + /** + * An uncommented item + */ + public void setClass_(java.lang.Integer value) { + setValue(org.jooq.test.h2.generatedclasses.tables.XUnused.CLASS, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getClass_() { + return getValue(org.jooq.test.h2.generatedclasses.tables.XUnused.CLASS); + } + + /** + * An uncommented item + */ + public void setFields_(java.lang.Integer value) { + setValue(org.jooq.test.h2.generatedclasses.tables.XUnused.FIELDS, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getFields_() { + return getValue(org.jooq.test.h2.generatedclasses.tables.XUnused.FIELDS); + } + + /** + * An uncommented item + */ + public void setTable_(java.lang.Integer value) { + setValue(org.jooq.test.h2.generatedclasses.tables.XUnused.TABLE, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getTable_() { + return getValue(org.jooq.test.h2.generatedclasses.tables.XUnused.TABLE); + } + + /** + * An uncommented item + */ + public void setConfiguration_(java.lang.Integer value) { + setValue(org.jooq.test.h2.generatedclasses.tables.XUnused.CONFIGURATION, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getConfiguration_() { + return getValue(org.jooq.test.h2.generatedclasses.tables.XUnused.CONFIGURATION); + } + + /** + * An uncommented item + */ + public void setUDT(java.lang.Integer value) { + setValue(org.jooq.test.h2.generatedclasses.tables.XUnused.U_D_T, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getUDT() { + return getValue(org.jooq.test.h2.generatedclasses.tables.XUnused.U_D_T); + } + + /** + * An uncommented item + */ + public void setMetaData_(java.lang.Integer value) { + setValue(org.jooq.test.h2.generatedclasses.tables.XUnused.META_DATA, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getMetaData_() { + return getValue(org.jooq.test.h2.generatedclasses.tables.XUnused.META_DATA); + } + + /** + * An uncommented item + */ + public void setValues_(java.lang.Integer value) { + setValue(org.jooq.test.h2.generatedclasses.tables.XUnused.VALUES, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getValues_() { + return getValue(org.jooq.test.h2.generatedclasses.tables.XUnused.VALUES); + } + + /** + * An uncommented item + */ + public void setType0_(java.lang.Integer value) { + setValue(org.jooq.test.h2.generatedclasses.tables.XUnused.TYPE0, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getType0_() { + return getValue(org.jooq.test.h2.generatedclasses.tables.XUnused.TYPE0); + } + + /** + * An uncommented item + */ + public void setPrimaryKey(java.lang.Integer value) { + setValue(org.jooq.test.h2.generatedclasses.tables.XUnused.PRIMARY_KEY, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getPrimaryKey() { + return getValue(org.jooq.test.h2.generatedclasses.tables.XUnused.PRIMARY_KEY); + } + + /** + * An uncommented item + */ + public void setPrimarykey(java.lang.Integer value) { + setValue(org.jooq.test.h2.generatedclasses.tables.XUnused.PRIMARYKEY, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getPrimarykey() { + return getValue(org.jooq.test.h2.generatedclasses.tables.XUnused.PRIMARYKEY); + } + + /** + * An uncommented item + */ + public void setField_737(java.math.BigDecimal value) { + setValue(org.jooq.test.h2.generatedclasses.tables.XUnused.FIELD_737, value); + } + + /** + * An uncommented item + */ + public java.math.BigDecimal getField_737() { + return getValue(org.jooq.test.h2.generatedclasses.tables.XUnused.FIELD_737); + } + + /** + * Create a detached XUnusedRecord + */ + public XUnusedRecord() { + super(org.jooq.test.h2.generatedclasses.tables.XUnused.X_UNUSED); + } +} diff --git a/jOOQ-test/src/org/jooq/test/h2/reset.sql b/jOOQ-test/src/org/jooq/test/h2/reset.sql new file mode 100644 index 00000000000..19d30f2ccd2 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/h2/reset.sql @@ -0,0 +1,72 @@ +DELETE FROM t_658_ref/ +DELETE FROM t_658_11/ +DELETE FROM t_658_21/ +DELETE FROM t_658_31/ +DELETE FROM t_658_12/ +DELETE FROM t_658_22/ +DELETE FROM t_658_32/ +DELETE FROM t_arrays/ +DELETE FROM t_book_to_book_store/ +DELETE FROM t_book_store/ +DELETE FROM t_book/ +DELETE FROM t_author/ +DELETE FROM t_language/ +DELETE FROM t_booleans/ +DELETE FROM t_dates/ +DELETE FROM t_identity/ +DELETE FROM t_identity_pk/ + +DROP SEQUENCE IF EXISTS s_author_id;/ +CREATE SEQUENCE s_author_id START WITH 1;/ + +INSERT INTO t_language (id, cd, description, description_english) VALUES (1, 'en', 'English', 'English')/ +INSERT INTO t_language (id, cd, description, description_english) VALUES (2, 'de', 'Deutsch', 'German')/ +INSERT INTO t_language (id, cd, description, description_english) VALUES (3, 'fr', 'Français', 'French')/ +INSERT INTO t_language (id, cd, description, description_english) VALUES (4, 'pt', null, null)/ +/ + +INSERT INTO t_658_11 VALUES ('A'), ('B'), ('C')/ +INSERT INTO t_658_21 VALUES (1), (2), (3)/ +INSERT INTO t_658_31 VALUES (1), (2), (3)/ +INSERT INTO t_658_12 VALUES ('A', 'A'), ('B', 'B'), ('C', 'C')/ +INSERT INTO t_658_22 VALUES (1, 1), (2, 2), (3, 3)/ +INSERT INTO t_658_32 VALUES (1, 1), (2, 2), (3, 3)/ +INSERT INTO t_658_ref VALUES ('A', 1, 1, 'B', 2, 2)/ + +INSERT INTO t_author VALUES (next value for s_author_id, 'George', 'Orwell', '1903-06-25', 1903, null); +/ +INSERT INTO t_author VALUES (next value for s_author_id, 'Paulo', 'Coelho', '1947-08-24', 1947, null); +/ + +INSERT INTO t_book VALUES (1, 1, null, null, '1984', 1948, 1, 'To know and not to know, to be conscious of complete truthfulness while telling carefully constructed lies, to hold simultaneously two opinions which cancelled out, knowing them to be contradictory and believing in both of them, to use logic against logic, to repudiate morality while laying claim to it, to believe that democracy was impossible and that the Party was the guardian of democracy, to forget, whatever it was necessary to forget, then to draw it back into memory again at the moment when it was needed, and then promptly to forget it again, and above all, to apply the same process to the process itself -- that was the ultimate subtlety; consciously to induce unconsciousness, and then, once again, to become unconscious of the act of hypnosis you had just performed. Even to understand the word ''doublethink'' involved the use of doublethink..', null); +/ +INSERT INTO t_book VALUES (2, 1, null, null, 'Animal Farm', 1945, 1, null, null); +/ +INSERT INTO t_book VALUES (3, 2, null, null, 'O Alquimista', 1988, 4, null, null); +/ +INSERT INTO t_book VALUES (4, 2, null, null, 'Brida', 1990, 2, null, null); +/ + +INSERT INTO t_book_store (name) VALUES + ('Orell Füssli'), + ('Ex Libris'), + ('Buchhandlung im Volkshaus') +/ + +INSERT INTO t_book_to_book_store VALUES + ('Orell Füssli', 1, 10), + ('Orell Füssli', 2, 10), + ('Orell Füssli', 3, 10), + ('Ex Libris', 1, 1), + ('Ex Libris', 3, 2), + ('Buchhandlung im Volkshaus', 3, 1) +/ + +INSERT INTO t_arrays VALUES (1, null, null, null) +/ +INSERT INTO t_arrays VALUES (2, (), (), ()) +/ +INSERT INTO t_arrays VALUES (3, ('a'), (1), ('1981-07-10')) +/ +INSERT INTO t_arrays VALUES (4, ('a', 'b'), (1, 2), ('1981-07-10', '2000-01-01')) +/ \ No newline at end of file diff --git a/jOOQ-test/src/org/jooq/test/hsqldb/create.sql b/jOOQ-test/src/org/jooq/test/hsqldb/create.sql new file mode 100644 index 00000000000..e139e976faf --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/hsqldb/create.sql @@ -0,0 +1,520 @@ +DROP PROCEDURE IF EXISTS p_arrays1/ +DROP PROCEDURE IF EXISTS p_arrays2/ +DROP PROCEDURE IF EXISTS p_arrays3/ +DROP FUNCTION IF EXISTS f_arrays1/ +DROP FUNCTION IF EXISTS f_arrays2/ +DROP FUNCTION IF EXISTS f_arrays3/ +DROP PROCEDURE IF EXISTS p_author_exists/ +DROP PROCEDURE IF EXISTS p_unused/ +DROP PROCEDURE IF EXISTS p_create_author/ +DROP PROCEDURE IF EXISTS p_create_author_by_name/ +DROP PROCEDURE IF EXISTS p391/ +DROP FUNCTION IF EXISTS f_author_exists/ +DROP FUNCTION IF EXISTS f_one/ +DROP FUNCTION IF EXISTS f_number/ +DROP FUNCTION IF EXISTS f317/ +DROP PROCEDURE IF EXISTS p_get_two_cursors/ +DROP PROCEDURE IF EXISTS p_get_one_cursor/ +DROP FUNCTION IF EXISTS f_get_one_cursor/ + +DROP VIEW IF EXISTS v_author/ +DROP VIEW IF EXISTS v_book/ +DROP VIEW IF EXISTS v_library/ + +DROP TRIGGER IF EXISTS t_triggers_trigger/ +DROP SEQUENCE s_triggers_sequence/ + +DROP TABLE IF EXISTS t_dates/ +DROP TABLE IF EXISTS t_triggers/ +DROP TABLE IF EXISTS t_arrays/ +DROP TABLE IF EXISTS t_book_to_book_store/ +DROP TABLE IF EXISTS t_book_store/ +DROP TABLE IF EXISTS t_book/ +DROP TABLE IF EXISTS t_book_details/ +DROP TABLE IF EXISTS t_author/ +DROP TABLE IF EXISTS t_language/ +DROP TABLE IF EXISTS x_test_case_71/ +DROP TABLE IF EXISTS x_test_case_85/ +DROP TABLE IF EXISTS x_test_case_64_69/ +DROP TABLE IF EXISTS x_unused/ +DROP TABLE IF EXISTS t_639_numbers_table/ +DROP TABLE IF EXISTS t_658_ref/ +DROP TABLE IF EXISTS t_658_11/ +DROP TABLE IF EXISTS t_658_21/ +DROP TABLE IF EXISTS t_658_31/ +DROP TABLE IF EXISTS t_658_12/ +DROP TABLE IF EXISTS t_658_22/ +DROP TABLE IF EXISTS t_658_32/ +DROP TABLE IF EXISTS t_725_lob_test/ +DROP TABLE IF EXISTS t_785/ +DROP TABLE IF EXISTS T_937/ +DROP TABLE IF EXISTS "T_941"/ +DROP TABLE IF EXISTS "t_941"/ +DROP TABLE IF EXISTS T_943/ +DROP TABLE IF EXISTS system/ +DROP TABLE IF EXISTS class/ +DROP TABLE IF EXISTS integer/ +DROP TABLE IF EXISTS long/ +DROP TABLE IF EXISTS object/ +DROP TABLE IF EXISTS string/ +DROP TABLE IF EXISTS big_decimal/ +DROP TABLE IF EXISTS connection/ +DROP TABLE IF EXISTS prepared_statement/ +DROP TABLE IF EXISTS t_booleans/ +DROP TABLE IF EXISTS t_identity/ +DROP TABLE IF EXISTS t_identity_pk/ + +CREATE TABLE t_identity_pk ( + id INTEGER GENERATED BY DEFAULT AS IDENTITY(START WITH 1), + val int, + + CONSTRAINT pk_t_identity_pk PRIMARY KEY (id) +) +/ + +CREATE TABLE t_identity ( + id INTEGER GENERATED BY DEFAULT AS IDENTITY(START WITH 1), + val int +) +/ + +CREATE TABLE t_dates ( + id int, + d date, + t time, + ts timestamp, + d_int int, + ts_bigint bigint, + + CONSTRAINT pk_t_dates PRIMARY KEY (id) +) +/ + +CREATE TABLE t_booleans ( + id int, + one_zero int, + true_false_lc varchar(5), + true_false_uc varchar(5), + yes_no_lc varchar(3), + yes_no_uc varchar(3), + y_n_lc char(1), + y_n_uc char(1), + vc_boolean varchar(1), + c_boolean char(1), + n_boolean int, + + CONSTRAINT pk_t_booleans PRIMARY KEY (id) +) +/ + +CREATE SEQUENCE s_triggers_sequence START WITH 1/ + +CREATE TABLE t_triggers ( + id_generated int not null, + id int, + counter int, + + CONSTRAINT pk_t_triggers PRIMARY KEY (id_generated) +) +/ + +CREATE TRIGGER t_triggers_trigger +BEFORE INSERT +ON t_triggers +REFERENCING NEW AS new +FOR EACH ROW +BEGIN ATOMIC + select next value for s_triggers_sequence + into new.id_generated + from information_schema.system_users; + + set new.id = new.id_generated; + set new.counter = new.id_generated * 2; +END +/ + +CREATE TABLE t_language ( + cd CHAR(2) NOT NULL, + description VARCHAR(50), + description_english VARCHAR(50), + id INTEGER NOT NULL, + + CONSTRAINT pk_t_language PRIMARY KEY (ID) +) +/ + +CREATE TABLE t_658_11 ( + id CHAR(3) NOT NULL, + + CONSTRAINT pk_t_658_11 PRIMARY KEY (id) +) +/ + +CREATE TABLE t_658_21 ( + id INT NOT NULL, + + CONSTRAINT pk_t_658_21 PRIMARY KEY (id) +) +/ + +CREATE TABLE t_658_31 ( + id BIGINT NOT NULL, + + CONSTRAINT pk_t_658_31 PRIMARY KEY (id) +) +/ + +CREATE TABLE t_658_12 ( + id CHAR(3) NOT NULL, + cd CHAR(3) NOT NULL, + + CONSTRAINT pk_t_658_12 PRIMARY KEY (id) +) +/ + +CREATE TABLE t_658_22 ( + id INT NOT NULL, + cd INT NOT NULL, + + CONSTRAINT pk_t_658_22 PRIMARY KEY (id) +) +/ + +CREATE TABLE t_658_32 ( + id BIGINT NOT NULL, + cd BIGINT NOT NULL, + + CONSTRAINT pk_t_658_32 PRIMARY KEY (id) +) +/ + +CREATE TABLE t_658_ref ( + ref_11 char(3), + ref_21 int, + ref_31 bigint, + ref_12 char(3), + ref_22 int, + ref_32 bigint, + + CONSTRAINT fk_t_658_11 FOREIGN KEY (ref_11) REFERENCES t_658_11(id), + CONSTRAINT fk_t_658_21 FOREIGN KEY (ref_21) REFERENCES t_658_21(id), + CONSTRAINT fk_t_658_31 FOREIGN KEY (ref_31) REFERENCES t_658_31(id), + CONSTRAINT fk_t_658_12 FOREIGN KEY (ref_12) REFERENCES t_658_12(id), + CONSTRAINT fk_t_658_22 FOREIGN KEY (ref_22) REFERENCES t_658_22(id), + CONSTRAINT fk_t_658_32 FOREIGN KEY (ref_32) REFERENCES t_658_32(id) +) +/ + +CREATE TABLE t_725_lob_test ( + ID int NOT NULL, + LOB LONGVARBINARY NULL, + + CONSTRAINT pk_t_725_lob_test PRIMARY KEY (id) +) +/ + +CREATE TABLE t_785 ( + ID int, + NAME varchar(50), + VALUE varchar(50) +) +/ + +CREATE TABLE T_937 ( + T_937 int, + + CONSTRAINT T_937 PRIMARY KEY (T_937) +) +/ + +CREATE TABLE t_author ( + ID INT, + FIRST_NAME VARCHAR(50), + LAST_NAME VARCHAR(50) NOT NULL, + DATE_OF_BIRTH DATE, + YEAR_OF_BIRTH INT, + ADDRESS VARCHAR(50), + + CONSTRAINT pk_t_author PRIMARY KEY (ID) +); +/ + +CREATE TABLE t_book_details ( + ID INT, + + CONSTRAINT pk_t_book_details PRIMARY KEY (ID) +); +/ + +CREATE TABLE t_book ( + ID INT, + AUTHOR_ID INT NOT NULL, + co_author_id int, + DETAILS_ID INT, + TITLE VARCHAR(400) NOT NULL, + PUBLISHED_IN INT NOT NULL, + LANGUAGE_ID INT NOT NULL, + CONTENT_TEXT LONGVARCHAR, + CONTENT_PDF LONGVARBINARY, + + CONSTRAINT pk_t_book PRIMARY KEY (ID), + CONSTRAINT fk_t_book_author_id FOREIGN KEY (AUTHOR_ID) REFERENCES T_AUTHOR(ID), + CONSTRAINT fk_t_book_co_author_id FOREIGN KEY (CO_AUTHOR_ID) REFERENCES T_AUTHOR(ID), + CONSTRAINT fk_t_book_details_id FOREIGN KEY (DETAILS_ID) REFERENCES T_BOOK_DETAILS(ID), + CONSTRAINT fk_t_book_language_id FOREIGN KEY (LANGUAGE_ID) REFERENCES T_LANGUAGE(ID) +); +/ + +CREATE TABLE t_book_store ( + name VARCHAR(400) NOT NULL, + + CONSTRAINT uk_t_book_store_name UNIQUE(name) +); +/ + +CREATE TABLE t_book_to_book_store ( + book_store_name VARCHAR(400) NOT NULL, + book_id INTEGER NOT NULL, + stock INTEGER, + + CONSTRAINT pk_b2bs PRIMARY KEY(book_store_name, book_id), + CONSTRAINT fk_b2bs_bs_name FOREIGN KEY (book_store_name) + REFERENCES t_book_store (name) + ON DELETE CASCADE, + CONSTRAINT fk_b2bs_b_id FOREIGN KEY (book_id) + REFERENCES t_book (id) + ON DELETE CASCADE +); +/ + + +CREATE TABLE t_arrays ( + id integer not null, + string_array VARCHAR(20) ARRAY, + number_array INTEGER ARRAY, + date_array DATE ARRAY, + + CONSTRAINT pk_t_arrays PRIMARY KEY (ID) +); +/ + +CREATE TABLE x_unused ( + ID INT NOT NULL, + NAME VARCHAR(10) NOT NULL, + BIG_INTEGER DECIMAL(25), + ID_REF INT, + CLASS INT, + FIELDS INT, + CONFIGURATION INT, + U_D_T INT, + META_DATA INT, + TYPE0 INT, + PRIMARY_KEY INT, + PRIMARYKEY INT, + NAME_REF VARCHAR(10), + "FIELD 737" DECIMAL(25, 2), + CONNECTION INT, + PREPARED_STATEMENT INT, + + CONSTRAINT pk_x_unused PRIMARY KEY(ID, NAME), + CONSTRAINT uk_x_unused_id UNIQUE(ID), + CONSTRAINT fk_x_unused_self FOREIGN KEY(ID_REF, NAME_REF) REFERENCES X_UNUSED(ID, NAME) +); +/ + +CREATE TABLE t_639_numbers_table ( + ID INT NOT NULL, + BYTE TINYINT, + SHORT SMALLINT, + INTEGER INT, + LONG BIGINT, + BYTE_DECIMAL DECIMAL(2, 0), + SHORT_DECIMAL DECIMAL(4, 0), + INTEGER_DECIMAL DECIMAL(9, 0), + LONG_DECIMAL DECIMAL(18, 0), + BIG_INTEGER DECIMAL(22, 0), + BIG_DECIMAL DECIMAL(22, 5), + FLOAT REAL, + DOUBLE DOUBLE, + + CONSTRAINT pk_t_639_numbers_table PRIMARY KEY(ID) +); +/ + +CREATE TABLE x_test_case_64_69 ( + ID INT NOT NULL, + UNUSED_ID INT, + + CONSTRAINT pk_x_test_case_64_69 PRIMARY KEY(ID), + CONSTRAINT fk_x_test_case_64_69 FOREIGN KEY(UNUSED_ID) REFERENCES X_UNUSED(ID) +); +/ + +CREATE TABLE x_test_case_71 ( + ID INT NOT NULL, + TEST_CASE_64_69_ID SMALLINT, + + CONSTRAINT pk_x_test_case_71 PRIMARY KEY(ID), + CONSTRAINT fk_x_test_case_71 FOREIGN KEY(TEST_CASE_64_69_ID) REFERENCES X_TEST_CASE_64_69(ID) +); +/ + +CREATE TABLE x_test_case_85 ( + id int NOT NULL, + x_unused_id int, + x_unused_name VARCHAR(10), + + CONSTRAINT pk_x_test_case_85 PRIMARY KEY(ID), + CONSTRAINT fk_x_test_case_85 FOREIGN KEY(x_unused_id, x_unused_name) REFERENCES X_UNUSED(id, name) +); +/ + +CREATE TABLE system (id int);/ +CREATE TABLE class (class int);/ +CREATE TABLE integer (id int);/ +CREATE TABLE long (id int, other bigint);/ +CREATE TABLE object (id int, other object);/ +CREATE TABLE string (id int, other varchar(3));/ +CREATE TABLE big_decimal (id int, other decimal);/ +CREATE TABLE connection (id int);/ +CREATE TABLE prepared_statement (id int);/ + +CREATE VIEW V_LIBRARY (AUTHOR, TITLE) AS +SELECT T_AUTHOR.FIRST_NAME + ' ' + T_AUTHOR.LAST_NAME, T_BOOK.TITLE +FROM T_AUTHOR JOIN T_BOOK ON T_BOOK.AUTHOR_ID = T_AUTHOR.ID; +/ + +CREATE VIEW v_author AS +SELECT * FROM t_author +/ + +CREATE VIEW v_book AS +SELECT * FROM t_book +/ + + +CREATE FUNCTION f_author_exists (author_name varchar(50)) + RETURNS INTEGER + READS SQL DATA + RETURN ( + SELECT COUNT(*) + FROM t_author + WHERE first_name = author_name + OR last_name = author_name + ) +/ + +CREATE FUNCTION f_one () +RETURNS INTEGER +RETURN 1 +/ + +CREATE FUNCTION f_number (n integer) +RETURNS INTEGER +RETURN n +/ + +CREATE FUNCTION f317 (p1 INTEGER, p2 INTEGER, p3 INTEGER, p4 INTEGER) +RETURNS INTEGER +return 1000 * p1 + 100 * p2 + p4 +/ + +CREATE FUNCTION f_get_one_cursor (IN book_ids int array) +RETURNS TABLE ( + ID INT, + AUTHOR_ID INT, + co_author_id int, + DETAILS_ID INT, + TITLE VARCHAR(400), + PUBLISHED_IN INT, + LANGUAGE_ID INT, + CONTENT_TEXT LONGVARCHAR, + CONTENT_PDF LONGVARBINARY +) +READS SQL DATA +BEGIN ATOMIC + IF (book_ids IS NULL) THEN + RETURN TABLE(SELECT * FROM t_book WHERE 1 = 0); + ELSE + RETURN TABLE(SELECT * FROM t_book WHERE id IN (UNNEST(book_ids)) ORDER BY id ASC); + END IF; +END +/ + +CREATE PROCEDURE p_arrays1(IN in_array int array, OUT out_array int array) +BEGIN ATOMIC + SET out_array = in_array; +END +/ + +CREATE PROCEDURE p_arrays2(IN in_array bigint array, OUT out_array bigint array) +BEGIN ATOMIC + SET out_array = in_array; +END +/ + +CREATE PROCEDURE p_arrays3(IN in_array varchar(1000) array, OUT out_array varchar(1000) array) +BEGIN ATOMIC + SET out_array = in_array; +END +/ + +CREATE FUNCTION f_arrays1(IN in_array int array) +RETURNS INTEGER array +RETURN in_array +/ + +CREATE FUNCTION f_arrays2(IN in_array bigint array) +RETURNS bigint array +RETURN in_array +/ + +CREATE FUNCTION f_arrays3(IN in_array varchar(1000) array) +RETURNS varchar(1000) array +RETURN in_array +/ + +CREATE PROCEDURE p_author_exists (IN author_name VARCHAR(50), OUT result INT) +READS SQL DATA +BEGIN ATOMIC + SELECT COUNT(*) INTO result + FROM t_author + WHERE first_name LIKE author_name + OR last_name LIKE author_name; +END +/ + +CREATE PROCEDURE p_create_author_by_name (IN first_name VARCHAR(50), IN last_name VARCHAR(50)) +MODIFIES SQL DATA +BEGIN ATOMIC + INSERT INTO T_AUTHOR (ID, FIRST_NAME, LAST_NAME) + VALUES ((SELECT MAX(ID)+1 FROM T_AUTHOR), first_name, last_name); +END +/ + +CREATE PROCEDURE p_create_author() +MODIFIES SQL DATA +BEGIN ATOMIC + call {jdbc.Schema}.p_create_author_by_name('William', 'Shakespeare'); +END +/ + +CREATE PROCEDURE p_unused (IN in1 VARCHAR(50), OUT out1 INT, INOUT out2 INT) +BEGIN ATOMIC + SET out1 = 0; + SET out2 = 0; +END +/ + + +CREATE PROCEDURE p391 ( + i1 INTEGER, INOUT io1 INTEGER, OUT o1 INTEGER, + OUT o2 INTEGER, INOUT io2 INTEGER, i2 INTEGER) +BEGIN ATOMIC + SET o1 = io1; + SET io1 = i1; + + SET o2 = io2; + SET io2 = i2; +END +/ diff --git a/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/Keys.java b/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/Keys.java new file mode 100644 index 00000000000..40aae8fe369 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/Keys.java @@ -0,0 +1,51 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.hsqldb.generatedclasses; + +/** + * This class is generated by jOOQ. + * + * A class modelling foreign key relationships between tables of the PUBLIC schema + */ +@SuppressWarnings({"unchecked"}) +public class Keys extends org.jooq.impl.AbstractKeys { + + // IDENTITY definitions + public static final org.jooq.Identity IDENTITY_T_IDENTITY = createIdentity(org.jooq.test.hsqldb.generatedclasses.tables.TIdentity.T_IDENTITY, org.jooq.test.hsqldb.generatedclasses.tables.TIdentity.T_IDENTITY.ID); + public static final org.jooq.Identity IDENTITY_T_IDENTITY_PK = createIdentity(org.jooq.test.hsqldb.generatedclasses.tables.TIdentityPk.T_IDENTITY_PK, org.jooq.test.hsqldb.generatedclasses.tables.TIdentityPk.T_IDENTITY_PK.ID); + + // UNIQUE and PRIMARY KEY definitions + public static final org.jooq.UniqueKey PK_T_639_NUMBERS_TABLE = createUniqueKey(org.jooq.test.hsqldb.generatedclasses.tables.T_639NumbersTable.T_639_NUMBERS_TABLE, org.jooq.test.hsqldb.generatedclasses.tables.T_639NumbersTable.T_639_NUMBERS_TABLE.ID); + public static final org.jooq.UniqueKey PK_T_725_LOB_TEST = createUniqueKey(org.jooq.test.hsqldb.generatedclasses.tables.T_725LobTest.T_725_LOB_TEST, org.jooq.test.hsqldb.generatedclasses.tables.T_725LobTest.T_725_LOB_TEST.ID); + public static final org.jooq.UniqueKey T_937 = createUniqueKey(org.jooq.test.hsqldb.generatedclasses.tables.T_937.T_937, org.jooq.test.hsqldb.generatedclasses.tables.T_937.T_937.T_937_); + public static final org.jooq.UniqueKey PK_T_ARRAYS = createUniqueKey(org.jooq.test.hsqldb.generatedclasses.tables.TArrays.T_ARRAYS, org.jooq.test.hsqldb.generatedclasses.tables.TArrays.T_ARRAYS.ID); + public static final org.jooq.UniqueKey PK_T_AUTHOR = createUniqueKey(org.jooq.test.hsqldb.generatedclasses.tables.TAuthor.T_AUTHOR, org.jooq.test.hsqldb.generatedclasses.tables.TAuthor.T_AUTHOR.ID); + public static final org.jooq.UniqueKey PK_T_BOOK = createUniqueKey(org.jooq.test.hsqldb.generatedclasses.tables.TBook.T_BOOK, org.jooq.test.hsqldb.generatedclasses.tables.TBook.T_BOOK.ID); + public static final org.jooq.UniqueKey UK_T_BOOK_STORE_NAME = createUniqueKey(org.jooq.test.hsqldb.generatedclasses.tables.TBookStore.T_BOOK_STORE, org.jooq.test.hsqldb.generatedclasses.tables.TBookStore.T_BOOK_STORE.NAME); + public static final org.jooq.UniqueKey PK_B2BS = createUniqueKey(org.jooq.test.hsqldb.generatedclasses.tables.TBookToBookStore.T_BOOK_TO_BOOK_STORE, org.jooq.test.hsqldb.generatedclasses.tables.TBookToBookStore.T_BOOK_TO_BOOK_STORE.BOOK_STORE_NAME, org.jooq.test.hsqldb.generatedclasses.tables.TBookToBookStore.T_BOOK_TO_BOOK_STORE.BOOK_ID); + public static final org.jooq.UniqueKey PK_T_BOOLEANS = createUniqueKey(org.jooq.test.hsqldb.generatedclasses.tables.TBooleans.T_BOOLEANS, org.jooq.test.hsqldb.generatedclasses.tables.TBooleans.T_BOOLEANS.ID); + public static final org.jooq.UniqueKey PK_T_DATES = createUniqueKey(org.jooq.test.hsqldb.generatedclasses.tables.TDates.T_DATES, org.jooq.test.hsqldb.generatedclasses.tables.TDates.T_DATES.ID); + public static final org.jooq.UniqueKey PK_T_IDENTITY_PK = createUniqueKey(org.jooq.test.hsqldb.generatedclasses.tables.TIdentityPk.T_IDENTITY_PK, org.jooq.test.hsqldb.generatedclasses.tables.TIdentityPk.T_IDENTITY_PK.ID); + public static final org.jooq.UniqueKey PK_T_TRIGGERS = createUniqueKey(org.jooq.test.hsqldb.generatedclasses.tables.TTriggers.T_TRIGGERS, org.jooq.test.hsqldb.generatedclasses.tables.TTriggers.T_TRIGGERS.ID_GENERATED); + public static final org.jooq.UniqueKey PK_X_TEST_CASE_64_69 = createUniqueKey(org.jooq.test.hsqldb.generatedclasses.tables.XTestCase_64_69.X_TEST_CASE_64_69, org.jooq.test.hsqldb.generatedclasses.tables.XTestCase_64_69.X_TEST_CASE_64_69.ID); + public static final org.jooq.UniqueKey PK_X_TEST_CASE_71 = createUniqueKey(org.jooq.test.hsqldb.generatedclasses.tables.XTestCase_71.X_TEST_CASE_71, org.jooq.test.hsqldb.generatedclasses.tables.XTestCase_71.X_TEST_CASE_71.ID); + public static final org.jooq.UniqueKey PK_X_TEST_CASE_85 = createUniqueKey(org.jooq.test.hsqldb.generatedclasses.tables.XTestCase_85.X_TEST_CASE_85, org.jooq.test.hsqldb.generatedclasses.tables.XTestCase_85.X_TEST_CASE_85.ID); + public static final org.jooq.UniqueKey PK_X_UNUSED = createUniqueKey(org.jooq.test.hsqldb.generatedclasses.tables.XUnused.X_UNUSED, org.jooq.test.hsqldb.generatedclasses.tables.XUnused.X_UNUSED.ID, org.jooq.test.hsqldb.generatedclasses.tables.XUnused.X_UNUSED.NAME); + public static final org.jooq.UniqueKey UK_X_UNUSED_ID = createUniqueKey(org.jooq.test.hsqldb.generatedclasses.tables.XUnused.X_UNUSED, org.jooq.test.hsqldb.generatedclasses.tables.XUnused.X_UNUSED.ID); + + // FOREIGN KEY definitions + public static final org.jooq.ForeignKey FK_T_BOOK_AUTHOR_ID = createForeignKey(PK_T_AUTHOR, org.jooq.test.hsqldb.generatedclasses.tables.TBook.T_BOOK, org.jooq.test.hsqldb.generatedclasses.tables.TBook.T_BOOK.AUTHOR_ID); + public static final org.jooq.ForeignKey FK_T_BOOK_CO_AUTHOR_ID = createForeignKey(PK_T_AUTHOR, org.jooq.test.hsqldb.generatedclasses.tables.TBook.T_BOOK, org.jooq.test.hsqldb.generatedclasses.tables.TBook.T_BOOK.CO_AUTHOR_ID); + public static final org.jooq.ForeignKey FK_B2BS_BS_NAME = createForeignKey(UK_T_BOOK_STORE_NAME, org.jooq.test.hsqldb.generatedclasses.tables.TBookToBookStore.T_BOOK_TO_BOOK_STORE, org.jooq.test.hsqldb.generatedclasses.tables.TBookToBookStore.T_BOOK_TO_BOOK_STORE.BOOK_STORE_NAME); + public static final org.jooq.ForeignKey FK_B2BS_B_ID = createForeignKey(PK_T_BOOK, org.jooq.test.hsqldb.generatedclasses.tables.TBookToBookStore.T_BOOK_TO_BOOK_STORE, org.jooq.test.hsqldb.generatedclasses.tables.TBookToBookStore.T_BOOK_TO_BOOK_STORE.BOOK_ID); + public static final org.jooq.ForeignKey FK_X_TEST_CASE_64_69 = createForeignKey(UK_X_UNUSED_ID, org.jooq.test.hsqldb.generatedclasses.tables.XTestCase_64_69.X_TEST_CASE_64_69, org.jooq.test.hsqldb.generatedclasses.tables.XTestCase_64_69.X_TEST_CASE_64_69.UNUSED_ID); + public static final org.jooq.ForeignKey FK_X_TEST_CASE_71 = createForeignKey(PK_X_TEST_CASE_64_69, org.jooq.test.hsqldb.generatedclasses.tables.XTestCase_71.X_TEST_CASE_71, org.jooq.test.hsqldb.generatedclasses.tables.XTestCase_71.X_TEST_CASE_71.TEST_CASE_64_69_ID); + public static final org.jooq.ForeignKey FK_X_TEST_CASE_85 = createForeignKey(PK_X_UNUSED, org.jooq.test.hsqldb.generatedclasses.tables.XTestCase_85.X_TEST_CASE_85, org.jooq.test.hsqldb.generatedclasses.tables.XTestCase_85.X_TEST_CASE_85.X_UNUSED_ID, org.jooq.test.hsqldb.generatedclasses.tables.XTestCase_85.X_TEST_CASE_85.X_UNUSED_NAME); + public static final org.jooq.ForeignKey FK_X_UNUSED_SELF = createForeignKey(PK_X_UNUSED, org.jooq.test.hsqldb.generatedclasses.tables.XUnused.X_UNUSED, org.jooq.test.hsqldb.generatedclasses.tables.XUnused.X_UNUSED.ID_REF, org.jooq.test.hsqldb.generatedclasses.tables.XUnused.X_UNUSED.NAME_REF); + + /** + * No instances + */ + private Keys() {} +} diff --git a/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/Public.java b/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/Public.java new file mode 100644 index 00000000000..7770444ed90 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/Public.java @@ -0,0 +1,65 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.hsqldb.generatedclasses; + +/** + * This class is generated by jOOQ. + */ +public class Public extends org.jooq.impl.SchemaImpl { + + private static final long serialVersionUID = -636355357; + + /** + * The singleton instance of PUBLIC + */ + public static final Public PUBLIC = new Public(); + + /** + * No further instances allowed + */ + private Public() { + super("PUBLIC"); + } + + @Override + public final java.util.List> getSequences() { + return java.util.Arrays.>asList(org.jooq.test.hsqldb.generatedclasses.Sequences.S_AUTHOR_ID); + } + + @Override + public final java.util.List> getTables() { + return java.util.Arrays.>asList( + org.jooq.test.hsqldb.generatedclasses.tables.BigDecimal.BIG_DECIMAL, + org.jooq.test.hsqldb.generatedclasses.tables.Class.CLASS, + org.jooq.test.hsqldb.generatedclasses.tables.Connection.CONNECTION, + org.jooq.test.hsqldb.generatedclasses.tables.Integer.INTEGER, + org.jooq.test.hsqldb.generatedclasses.tables.Long.LONG, + org.jooq.test.hsqldb.generatedclasses.tables.Object.OBJECT, + org.jooq.test.hsqldb.generatedclasses.tables.PreparedStatement.PREPARED_STATEMENT, + org.jooq.test.hsqldb.generatedclasses.tables.String.STRING, + org.jooq.test.hsqldb.generatedclasses.tables.System.SYSTEM, + org.jooq.test.hsqldb.generatedclasses.tables.T_639NumbersTable.T_639_NUMBERS_TABLE, + org.jooq.test.hsqldb.generatedclasses.tables.T_658Ref.T_658_REF, + org.jooq.test.hsqldb.generatedclasses.tables.T_725LobTest.T_725_LOB_TEST, + org.jooq.test.hsqldb.generatedclasses.tables.T_785.T_785, + org.jooq.test.hsqldb.generatedclasses.tables.T_937.T_937, + org.jooq.test.hsqldb.generatedclasses.tables.TArrays.T_ARRAYS, + org.jooq.test.hsqldb.generatedclasses.tables.TAuthor.T_AUTHOR, + org.jooq.test.hsqldb.generatedclasses.tables.TBook.T_BOOK, + org.jooq.test.hsqldb.generatedclasses.tables.TBookStore.T_BOOK_STORE, + org.jooq.test.hsqldb.generatedclasses.tables.TBookToBookStore.T_BOOK_TO_BOOK_STORE, + org.jooq.test.hsqldb.generatedclasses.tables.TBooleans.T_BOOLEANS, + org.jooq.test.hsqldb.generatedclasses.tables.TDates.T_DATES, + org.jooq.test.hsqldb.generatedclasses.tables.TIdentity.T_IDENTITY, + org.jooq.test.hsqldb.generatedclasses.tables.TIdentityPk.T_IDENTITY_PK, + org.jooq.test.hsqldb.generatedclasses.tables.TTriggers.T_TRIGGERS, + org.jooq.test.hsqldb.generatedclasses.tables.VAuthor.V_AUTHOR, + org.jooq.test.hsqldb.generatedclasses.tables.VBook.V_BOOK, + org.jooq.test.hsqldb.generatedclasses.tables.VLibrary.V_LIBRARY, + org.jooq.test.hsqldb.generatedclasses.tables.XTestCase_64_69.X_TEST_CASE_64_69, + org.jooq.test.hsqldb.generatedclasses.tables.XTestCase_71.X_TEST_CASE_71, + org.jooq.test.hsqldb.generatedclasses.tables.XTestCase_85.X_TEST_CASE_85, + org.jooq.test.hsqldb.generatedclasses.tables.XUnused.X_UNUSED); + } +} diff --git a/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/PublicFactory.java b/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/PublicFactory.java new file mode 100644 index 00000000000..5e775ebe768 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/PublicFactory.java @@ -0,0 +1,41 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.hsqldb.generatedclasses; + +/** + * This class is generated by jOOQ. + */ +public class PublicFactory extends org.jooq.util.hsqldb.HSQLDBFactory { + + private static final long serialVersionUID = -446167808; + + /** + * Create a factory with a connection + * + * @param connection The connection to use with objects created from this factory + */ + public PublicFactory(java.sql.Connection connection) { + super(connection); + } + + /** + * Create a factory with a connection and a schema mapping + * + * @deprecated - 2.0.5 - Use {@link #PublicFactory(java.sql.Connection, org.jooq.conf.Settings)} instead + */ + @Deprecated + public PublicFactory(java.sql.Connection connection, org.jooq.SchemaMapping mapping) { + super(connection, mapping); + } + + /** + * Create a factory with a connection and some settings + * + * @param connection The connection to use with objects created from this factory + * @param settings The settings to apply to objects created from this factory + */ + public PublicFactory(java.sql.Connection connection, org.jooq.conf.Settings settings) { + super(connection, settings); + } +} diff --git a/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/Routines.java b/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/Routines.java new file mode 100644 index 00000000000..cc12cb9628b --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/Routines.java @@ -0,0 +1,448 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.hsqldb.generatedclasses; + +/** + * This class is generated by jOOQ. + * + * Convenience access to all stored procedures and functions in PUBLIC + */ +public final class Routines { + + /** + * Call PUBLIC.F317 + * + * @param p1 + * @param p2 + * @param p3 + * @param p4 + * @throws org.jooq.exception.DataAccessException if something went wrong executing the query + */ + public static java.lang.Integer f317(org.jooq.Configuration configuration, java.lang.Integer p1, java.lang.Integer p2, java.lang.Integer p3, java.lang.Integer p4) { + org.jooq.test.hsqldb.generatedclasses.routines.F317 f = new org.jooq.test.hsqldb.generatedclasses.routines.F317(); + f.setP1(p1); + f.setP2(p2); + f.setP3(p3); + f.setP4(p4); + + f.execute(configuration); + return f.getReturnValue(); + } + + /** + * Get PUBLIC.F317 as a field + * + * @param p1 + * @param p2 + * @param p3 + * @param p4 + */ + public static org.jooq.Field f317(java.lang.Integer p1, java.lang.Integer p2, java.lang.Integer p3, java.lang.Integer p4) { + org.jooq.test.hsqldb.generatedclasses.routines.F317 f = new org.jooq.test.hsqldb.generatedclasses.routines.F317(); + f.setP1(p1); + f.setP2(p2); + f.setP3(p3); + f.setP4(p4); + + return f.asField(); + } + + /** + * Get PUBLIC.F317 as a field + * + * @param p1 + * @param p2 + * @param p3 + * @param p4 + */ + public static org.jooq.Field f317(org.jooq.Field p1, org.jooq.Field p2, org.jooq.Field p3, org.jooq.Field p4) { + org.jooq.test.hsqldb.generatedclasses.routines.F317 f = new org.jooq.test.hsqldb.generatedclasses.routines.F317(); + f.setP1(p1); + f.setP2(p2); + f.setP3(p3); + f.setP4(p4); + + return f.asField(); + } + + /** + * Call PUBLIC.F_ARRAYS1 + * + * @param inArray + * @throws org.jooq.exception.DataAccessException if something went wrong executing the query + */ + public static java.lang.Integer[] fArrays1(org.jooq.Configuration configuration, java.lang.Integer[] inArray) { + org.jooq.test.hsqldb.generatedclasses.routines.FArrays1 f = new org.jooq.test.hsqldb.generatedclasses.routines.FArrays1(); + f.setInArray(inArray); + + f.execute(configuration); + return f.getReturnValue(); + } + + /** + * Get PUBLIC.F_ARRAYS1 as a field + * + * @param inArray + */ + public static org.jooq.Field fArrays1(java.lang.Integer[] inArray) { + org.jooq.test.hsqldb.generatedclasses.routines.FArrays1 f = new org.jooq.test.hsqldb.generatedclasses.routines.FArrays1(); + f.setInArray(inArray); + + return f.asField(); + } + + /** + * Get PUBLIC.F_ARRAYS1 as a field + * + * @param inArray + */ + public static org.jooq.Field fArrays1(org.jooq.Field inArray) { + org.jooq.test.hsqldb.generatedclasses.routines.FArrays1 f = new org.jooq.test.hsqldb.generatedclasses.routines.FArrays1(); + f.setInArray(inArray); + + return f.asField(); + } + + /** + * Call PUBLIC.F_ARRAYS2 + * + * @param inArray + * @throws org.jooq.exception.DataAccessException if something went wrong executing the query + */ + public static java.lang.Long[] fArrays2(org.jooq.Configuration configuration, java.lang.Long[] inArray) { + org.jooq.test.hsqldb.generatedclasses.routines.FArrays2 f = new org.jooq.test.hsqldb.generatedclasses.routines.FArrays2(); + f.setInArray(inArray); + + f.execute(configuration); + return f.getReturnValue(); + } + + /** + * Get PUBLIC.F_ARRAYS2 as a field + * + * @param inArray + */ + public static org.jooq.Field fArrays2(java.lang.Long[] inArray) { + org.jooq.test.hsqldb.generatedclasses.routines.FArrays2 f = new org.jooq.test.hsqldb.generatedclasses.routines.FArrays2(); + f.setInArray(inArray); + + return f.asField(); + } + + /** + * Get PUBLIC.F_ARRAYS2 as a field + * + * @param inArray + */ + public static org.jooq.Field fArrays2(org.jooq.Field inArray) { + org.jooq.test.hsqldb.generatedclasses.routines.FArrays2 f = new org.jooq.test.hsqldb.generatedclasses.routines.FArrays2(); + f.setInArray(inArray); + + return f.asField(); + } + + /** + * Call PUBLIC.F_ARRAYS3 + * + * @param inArray + * @throws org.jooq.exception.DataAccessException if something went wrong executing the query + */ + public static java.lang.String[] fArrays3(org.jooq.Configuration configuration, java.lang.String[] inArray) { + org.jooq.test.hsqldb.generatedclasses.routines.FArrays3 f = new org.jooq.test.hsqldb.generatedclasses.routines.FArrays3(); + f.setInArray(inArray); + + f.execute(configuration); + return f.getReturnValue(); + } + + /** + * Get PUBLIC.F_ARRAYS3 as a field + * + * @param inArray + */ + public static org.jooq.Field fArrays3(java.lang.String[] inArray) { + org.jooq.test.hsqldb.generatedclasses.routines.FArrays3 f = new org.jooq.test.hsqldb.generatedclasses.routines.FArrays3(); + f.setInArray(inArray); + + return f.asField(); + } + + /** + * Get PUBLIC.F_ARRAYS3 as a field + * + * @param inArray + */ + public static org.jooq.Field fArrays3(org.jooq.Field inArray) { + org.jooq.test.hsqldb.generatedclasses.routines.FArrays3 f = new org.jooq.test.hsqldb.generatedclasses.routines.FArrays3(); + f.setInArray(inArray); + + return f.asField(); + } + + /** + * Call PUBLIC.F_AUTHOR_EXISTS + * + * @param authorName + * @throws org.jooq.exception.DataAccessException if something went wrong executing the query + */ + public static java.lang.Integer fAuthorExists(org.jooq.Configuration configuration, java.lang.String authorName) { + org.jooq.test.hsqldb.generatedclasses.routines.FAuthorExists f = new org.jooq.test.hsqldb.generatedclasses.routines.FAuthorExists(); + f.setAuthorName(authorName); + + f.execute(configuration); + return f.getReturnValue(); + } + + /** + * Get PUBLIC.F_AUTHOR_EXISTS as a field + * + * @param authorName + */ + public static org.jooq.Field fAuthorExists(java.lang.String authorName) { + org.jooq.test.hsqldb.generatedclasses.routines.FAuthorExists f = new org.jooq.test.hsqldb.generatedclasses.routines.FAuthorExists(); + f.setAuthorName(authorName); + + return f.asField(); + } + + /** + * Get PUBLIC.F_AUTHOR_EXISTS as a field + * + * @param authorName + */ + public static org.jooq.Field fAuthorExists(org.jooq.Field authorName) { + org.jooq.test.hsqldb.generatedclasses.routines.FAuthorExists f = new org.jooq.test.hsqldb.generatedclasses.routines.FAuthorExists(); + f.setAuthorName(authorName); + + return f.asField(); + } + + /** + * Call PUBLIC.F_GET_ONE_CURSOR + * + * @param bookIds + * @throws org.jooq.exception.DataAccessException if something went wrong executing the query + */ + public static org.jooq.Result fGetOneCursor(org.jooq.Configuration configuration, java.lang.Integer[] bookIds) { + org.jooq.test.hsqldb.generatedclasses.routines.FGetOneCursor f = new org.jooq.test.hsqldb.generatedclasses.routines.FGetOneCursor(); + f.setBookIds(bookIds); + + f.execute(configuration); + return f.getReturnValue(); + } + + /** + * Get PUBLIC.F_GET_ONE_CURSOR as a field + * + * @param bookIds + */ + public static org.jooq.Field> fGetOneCursor(java.lang.Integer[] bookIds) { + org.jooq.test.hsqldb.generatedclasses.routines.FGetOneCursor f = new org.jooq.test.hsqldb.generatedclasses.routines.FGetOneCursor(); + f.setBookIds(bookIds); + + return f.asField(); + } + + /** + * Get PUBLIC.F_GET_ONE_CURSOR as a field + * + * @param bookIds + */ + public static org.jooq.Field> fGetOneCursor(org.jooq.Field bookIds) { + org.jooq.test.hsqldb.generatedclasses.routines.FGetOneCursor f = new org.jooq.test.hsqldb.generatedclasses.routines.FGetOneCursor(); + f.setBookIds(bookIds); + + return f.asField(); + } + + /** + * Call PUBLIC.F_NUMBER + * + * @param n + * @throws org.jooq.exception.DataAccessException if something went wrong executing the query + */ + public static java.lang.Integer fNumber(org.jooq.Configuration configuration, java.lang.Integer n) { + org.jooq.test.hsqldb.generatedclasses.routines.FNumber f = new org.jooq.test.hsqldb.generatedclasses.routines.FNumber(); + f.setN(n); + + f.execute(configuration); + return f.getReturnValue(); + } + + /** + * Get PUBLIC.F_NUMBER as a field + * + * @param n + */ + public static org.jooq.Field fNumber(java.lang.Integer n) { + org.jooq.test.hsqldb.generatedclasses.routines.FNumber f = new org.jooq.test.hsqldb.generatedclasses.routines.FNumber(); + f.setN(n); + + return f.asField(); + } + + /** + * Get PUBLIC.F_NUMBER as a field + * + * @param n + */ + public static org.jooq.Field fNumber(org.jooq.Field n) { + org.jooq.test.hsqldb.generatedclasses.routines.FNumber f = new org.jooq.test.hsqldb.generatedclasses.routines.FNumber(); + f.setN(n); + + return f.asField(); + } + + /** + * Call PUBLIC.F_ONE + * + * @throws org.jooq.exception.DataAccessException if something went wrong executing the query + */ + public static java.lang.Integer fOne(org.jooq.Configuration configuration) { + org.jooq.test.hsqldb.generatedclasses.routines.FOne f = new org.jooq.test.hsqldb.generatedclasses.routines.FOne(); + + f.execute(configuration); + return f.getReturnValue(); + } + + /** + * Get PUBLIC.F_ONE as a field + * + */ + public static org.jooq.Field fOne() { + org.jooq.test.hsqldb.generatedclasses.routines.FOne f = new org.jooq.test.hsqldb.generatedclasses.routines.FOne(); + + return f.asField(); + } + + /** + * Call PUBLIC.P391 + * + * @param i1 IN parameter + * @param io1 IN OUT parameter + * @param o1 OUT parameter + * @param o2 OUT parameter + * @param io2 IN OUT parameter + * @param i2 IN parameter + * @throws org.jooq.exception.DataAccessException if something went wrong executing the query + */ + public static org.jooq.test.hsqldb.generatedclasses.routines.P391 p391(org.jooq.Configuration configuration, java.lang.Integer i1, java.lang.Integer io1, java.lang.Integer io2, java.lang.Integer i2) { + org.jooq.test.hsqldb.generatedclasses.routines.P391 p = new org.jooq.test.hsqldb.generatedclasses.routines.P391(); + p.setI1(i1); + p.setIo1(io1); + p.setIo2(io2); + p.setI2(i2); + + p.execute(configuration); + return p; + } + + /** + * Call PUBLIC.P_ARRAYS1 + * + * @param inArray IN parameter + * @param outArray OUT parameter + * @throws org.jooq.exception.DataAccessException if something went wrong executing the query + */ + public static java.lang.Integer[] pArrays1(org.jooq.Configuration configuration, java.lang.Integer[] inArray) { + org.jooq.test.hsqldb.generatedclasses.routines.PArrays1 p = new org.jooq.test.hsqldb.generatedclasses.routines.PArrays1(); + p.setInArray(inArray); + + p.execute(configuration); + return p.getOutArray(); + } + + /** + * Call PUBLIC.P_ARRAYS2 + * + * @param inArray IN parameter + * @param outArray OUT parameter + * @throws org.jooq.exception.DataAccessException if something went wrong executing the query + */ + public static java.lang.Long[] pArrays2(org.jooq.Configuration configuration, java.lang.Long[] inArray) { + org.jooq.test.hsqldb.generatedclasses.routines.PArrays2 p = new org.jooq.test.hsqldb.generatedclasses.routines.PArrays2(); + p.setInArray(inArray); + + p.execute(configuration); + return p.getOutArray(); + } + + /** + * Call PUBLIC.P_ARRAYS3 + * + * @param inArray IN parameter + * @param outArray OUT parameter + * @throws org.jooq.exception.DataAccessException if something went wrong executing the query + */ + public static java.lang.String[] pArrays3(org.jooq.Configuration configuration, java.lang.String[] inArray) { + org.jooq.test.hsqldb.generatedclasses.routines.PArrays3 p = new org.jooq.test.hsqldb.generatedclasses.routines.PArrays3(); + p.setInArray(inArray); + + p.execute(configuration); + return p.getOutArray(); + } + + /** + * Call PUBLIC.P_AUTHOR_EXISTS + * + * @param authorName IN parameter + * @param result OUT parameter + * @throws org.jooq.exception.DataAccessException if something went wrong executing the query + */ + public static java.lang.Integer pAuthorExists(org.jooq.Configuration configuration, java.lang.String authorName) { + org.jooq.test.hsqldb.generatedclasses.routines.PAuthorExists p = new org.jooq.test.hsqldb.generatedclasses.routines.PAuthorExists(); + p.setAuthorName(authorName); + + p.execute(configuration); + return p.getResult(); + } + + /** + * Call PUBLIC.P_CREATE_AUTHOR + * + * @throws org.jooq.exception.DataAccessException if something went wrong executing the query + */ + public static void pCreateAuthor(org.jooq.Configuration configuration) { + org.jooq.test.hsqldb.generatedclasses.routines.PCreateAuthor p = new org.jooq.test.hsqldb.generatedclasses.routines.PCreateAuthor(); + + p.execute(configuration); + } + + /** + * Call PUBLIC.P_CREATE_AUTHOR_BY_NAME + * + * @param firstName IN parameter + * @param lastName IN parameter + * @throws org.jooq.exception.DataAccessException if something went wrong executing the query + */ + public static void pCreateAuthorByName(org.jooq.Configuration configuration, java.lang.String firstName, java.lang.String lastName) { + org.jooq.test.hsqldb.generatedclasses.routines.PCreateAuthorByName p = new org.jooq.test.hsqldb.generatedclasses.routines.PCreateAuthorByName(); + p.setFirstName(firstName); + p.setLastName(lastName); + + p.execute(configuration); + } + + /** + * Call PUBLIC.P_UNUSED + * + * @param in1 IN parameter + * @param out1 OUT parameter + * @param out2 IN OUT parameter + * @throws org.jooq.exception.DataAccessException if something went wrong executing the query + */ + public static org.jooq.test.hsqldb.generatedclasses.routines.PUnused pUnused(org.jooq.Configuration configuration, java.lang.String in1, java.lang.Integer out2) { + org.jooq.test.hsqldb.generatedclasses.routines.PUnused p = new org.jooq.test.hsqldb.generatedclasses.routines.PUnused(); + p.setIn1(in1); + p.setOut2(out2); + + p.execute(configuration); + return p; + } + + /** + * No instances + */ + private Routines() {} +} diff --git a/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/Sequences.java b/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/Sequences.java new file mode 100644 index 00000000000..61e70d01bf9 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/Sequences.java @@ -0,0 +1,22 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.hsqldb.generatedclasses; + +/** + * This class is generated by jOOQ. + * + * Convenience access to all sequences in PUBLIC + */ +public final class Sequences { + + /** + * The sequence PUBLIC.S_AUTHOR_ID + */ + public static final org.jooq.Sequence S_AUTHOR_ID = new org.jooq.impl.SequenceImpl("S_AUTHOR_ID", org.jooq.test.hsqldb.generatedclasses.Public.PUBLIC, org.jooq.impl.SQLDataType.INTEGER); + + /** + * No instances + */ + private Sequences() {} +} diff --git a/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/Tables.java b/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/Tables.java new file mode 100644 index 00000000000..864673e4ecc --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/Tables.java @@ -0,0 +1,172 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.hsqldb.generatedclasses; + +/** + * This class is generated by jOOQ. + * + * Convenience access to all tables in PUBLIC + */ +public final class Tables { + + /** + * The table PUBLIC.BIG_DECIMAL + */ + public static org.jooq.test.hsqldb.generatedclasses.tables.BigDecimal BIG_DECIMAL = org.jooq.test.hsqldb.generatedclasses.tables.BigDecimal.BIG_DECIMAL; + + /** + * The table PUBLIC.CLASS + */ + public static org.jooq.test.hsqldb.generatedclasses.tables.Class CLASS = org.jooq.test.hsqldb.generatedclasses.tables.Class.CLASS; + + /** + * The table PUBLIC.CONNECTION + */ + public static org.jooq.test.hsqldb.generatedclasses.tables.Connection CONNECTION = org.jooq.test.hsqldb.generatedclasses.tables.Connection.CONNECTION; + + /** + * The table PUBLIC.INTEGER + */ + public static org.jooq.test.hsqldb.generatedclasses.tables.Integer INTEGER = org.jooq.test.hsqldb.generatedclasses.tables.Integer.INTEGER; + + /** + * The table PUBLIC.LONG + */ + public static org.jooq.test.hsqldb.generatedclasses.tables.Long LONG = org.jooq.test.hsqldb.generatedclasses.tables.Long.LONG; + + /** + * The table PUBLIC.OBJECT + */ + public static org.jooq.test.hsqldb.generatedclasses.tables.Object OBJECT = org.jooq.test.hsqldb.generatedclasses.tables.Object.OBJECT; + + /** + * The table PUBLIC.PREPARED_STATEMENT + */ + public static org.jooq.test.hsqldb.generatedclasses.tables.PreparedStatement PREPARED_STATEMENT = org.jooq.test.hsqldb.generatedclasses.tables.PreparedStatement.PREPARED_STATEMENT; + + /** + * The table PUBLIC.STRING + */ + public static org.jooq.test.hsqldb.generatedclasses.tables.String STRING = org.jooq.test.hsqldb.generatedclasses.tables.String.STRING; + + /** + * The table PUBLIC.SYSTEM + */ + public static org.jooq.test.hsqldb.generatedclasses.tables.System SYSTEM = org.jooq.test.hsqldb.generatedclasses.tables.System.SYSTEM; + + /** + * The table PUBLIC.T_639_NUMBERS_TABLE + */ + public static org.jooq.test.hsqldb.generatedclasses.tables.T_639NumbersTable T_639_NUMBERS_TABLE = org.jooq.test.hsqldb.generatedclasses.tables.T_639NumbersTable.T_639_NUMBERS_TABLE; + + /** + * The table PUBLIC.T_658_REF + */ + public static org.jooq.test.hsqldb.generatedclasses.tables.T_658Ref T_658_REF = org.jooq.test.hsqldb.generatedclasses.tables.T_658Ref.T_658_REF; + + /** + * The table PUBLIC.T_725_LOB_TEST + */ + public static org.jooq.test.hsqldb.generatedclasses.tables.T_725LobTest T_725_LOB_TEST = org.jooq.test.hsqldb.generatedclasses.tables.T_725LobTest.T_725_LOB_TEST; + + /** + * The table PUBLIC.T_785 + */ + public static org.jooq.test.hsqldb.generatedclasses.tables.T_785 T_785 = org.jooq.test.hsqldb.generatedclasses.tables.T_785.T_785; + + /** + * The table PUBLIC.T_937 + */ + public static org.jooq.test.hsqldb.generatedclasses.tables.T_937 T_937 = org.jooq.test.hsqldb.generatedclasses.tables.T_937.T_937; + + /** + * The table PUBLIC.T_ARRAYS + */ + public static org.jooq.test.hsqldb.generatedclasses.tables.TArrays T_ARRAYS = org.jooq.test.hsqldb.generatedclasses.tables.TArrays.T_ARRAYS; + + /** + * The table PUBLIC.T_AUTHOR + */ + public static org.jooq.test.hsqldb.generatedclasses.tables.TAuthor T_AUTHOR = org.jooq.test.hsqldb.generatedclasses.tables.TAuthor.T_AUTHOR; + + /** + * The table PUBLIC.T_BOOK + */ + public static org.jooq.test.hsqldb.generatedclasses.tables.TBook T_BOOK = org.jooq.test.hsqldb.generatedclasses.tables.TBook.T_BOOK; + + /** + * The table PUBLIC.T_BOOK_STORE + */ + public static org.jooq.test.hsqldb.generatedclasses.tables.TBookStore T_BOOK_STORE = org.jooq.test.hsqldb.generatedclasses.tables.TBookStore.T_BOOK_STORE; + + /** + * The table PUBLIC.T_BOOK_TO_BOOK_STORE + */ + public static org.jooq.test.hsqldb.generatedclasses.tables.TBookToBookStore T_BOOK_TO_BOOK_STORE = org.jooq.test.hsqldb.generatedclasses.tables.TBookToBookStore.T_BOOK_TO_BOOK_STORE; + + /** + * The table PUBLIC.T_BOOLEANS + */ + public static org.jooq.test.hsqldb.generatedclasses.tables.TBooleans T_BOOLEANS = org.jooq.test.hsqldb.generatedclasses.tables.TBooleans.T_BOOLEANS; + + /** + * The table PUBLIC.T_DATES + */ + public static org.jooq.test.hsqldb.generatedclasses.tables.TDates T_DATES = org.jooq.test.hsqldb.generatedclasses.tables.TDates.T_DATES; + + /** + * The table PUBLIC.T_IDENTITY + */ + public static org.jooq.test.hsqldb.generatedclasses.tables.TIdentity T_IDENTITY = org.jooq.test.hsqldb.generatedclasses.tables.TIdentity.T_IDENTITY; + + /** + * The table PUBLIC.T_IDENTITY_PK + */ + public static org.jooq.test.hsqldb.generatedclasses.tables.TIdentityPk T_IDENTITY_PK = org.jooq.test.hsqldb.generatedclasses.tables.TIdentityPk.T_IDENTITY_PK; + + /** + * The table PUBLIC.T_TRIGGERS + */ + public static org.jooq.test.hsqldb.generatedclasses.tables.TTriggers T_TRIGGERS = org.jooq.test.hsqldb.generatedclasses.tables.TTriggers.T_TRIGGERS; + + /** + * The table PUBLIC.V_AUTHOR + */ + public static org.jooq.test.hsqldb.generatedclasses.tables.VAuthor V_AUTHOR = org.jooq.test.hsqldb.generatedclasses.tables.VAuthor.V_AUTHOR; + + /** + * The table PUBLIC.V_BOOK + */ + public static org.jooq.test.hsqldb.generatedclasses.tables.VBook V_BOOK = org.jooq.test.hsqldb.generatedclasses.tables.VBook.V_BOOK; + + /** + * The table PUBLIC.V_LIBRARY + */ + public static org.jooq.test.hsqldb.generatedclasses.tables.VLibrary V_LIBRARY = org.jooq.test.hsqldb.generatedclasses.tables.VLibrary.V_LIBRARY; + + /** + * The table PUBLIC.X_TEST_CASE_64_69 + */ + public static org.jooq.test.hsqldb.generatedclasses.tables.XTestCase_64_69 X_TEST_CASE_64_69 = org.jooq.test.hsqldb.generatedclasses.tables.XTestCase_64_69.X_TEST_CASE_64_69; + + /** + * The table PUBLIC.X_TEST_CASE_71 + */ + public static org.jooq.test.hsqldb.generatedclasses.tables.XTestCase_71 X_TEST_CASE_71 = org.jooq.test.hsqldb.generatedclasses.tables.XTestCase_71.X_TEST_CASE_71; + + /** + * The table PUBLIC.X_TEST_CASE_85 + */ + public static org.jooq.test.hsqldb.generatedclasses.tables.XTestCase_85 X_TEST_CASE_85 = org.jooq.test.hsqldb.generatedclasses.tables.XTestCase_85.X_TEST_CASE_85; + + /** + * The table PUBLIC.X_UNUSED + */ + public static org.jooq.test.hsqldb.generatedclasses.tables.XUnused X_UNUSED = org.jooq.test.hsqldb.generatedclasses.tables.XUnused.X_UNUSED; + + /** + * No instances + */ + private Tables() {} +} diff --git a/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/enums/TLanguage.java b/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/enums/TLanguage.java new file mode 100644 index 00000000000..d2952502fa4 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/enums/TLanguage.java @@ -0,0 +1,65 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.hsqldb.generatedclasses.enums; + +/** + * This class is generated by jOOQ. + */ +public enum TLanguage implements org.jooq.MasterDataType { + + /** + * English + */ + en(1, "en", "English"), + + /** + * Deutsch + */ + de(2, "de", "Deutsch"), + + /** + * Français + */ + fr(3, "fr", "Français"), + pt(4, "pt", null), + ; + + private final java.lang.Integer id; + private final java.lang.String cd; + private final java.lang.String description; + + private TLanguage(java.lang.Integer id, java.lang.String cd, java.lang.String description) { + this.id = id; + this.cd = cd; + this.description = description; + } + + @Override + public java.lang.Integer getPrimaryKey() { + return id; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final java.lang.Integer getId() { + return id; + } + + /** + * An uncommented item + */ + public final java.lang.String getCd() { + return cd; + } + + /** + * An uncommented item + */ + public final java.lang.String getDescription() { + return description; + } +} diff --git a/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/enums/T_658_11.java b/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/enums/T_658_11.java new file mode 100644 index 00000000000..deb2a0c9f3c --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/enums/T_658_11.java @@ -0,0 +1,46 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.hsqldb.generatedclasses.enums; + +/** + * This class is generated by jOOQ. + */ +public enum T_658_11 implements org.jooq.MasterDataType { + + /** + * A + */ + A__("A "), + + /** + * B + */ + B__("B "), + + /** + * C + */ + C__("C "), + ; + + private final java.lang.String id; + + private T_658_11(java.lang.String id) { + this.id = id; + } + + @Override + public java.lang.String getPrimaryKey() { + return id; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final java.lang.String getId() { + return id; + } +} diff --git a/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/enums/T_658_12.java b/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/enums/T_658_12.java new file mode 100644 index 00000000000..45bcb2b200e --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/enums/T_658_12.java @@ -0,0 +1,55 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.hsqldb.generatedclasses.enums; + +/** + * This class is generated by jOOQ. + */ +public enum T_658_12 implements org.jooq.MasterDataType { + + /** + * A + */ + A__("A ", "A "), + + /** + * B + */ + B__("B ", "B "), + + /** + * C + */ + C__("C ", "C "), + ; + + private final java.lang.String id; + private final java.lang.String cd; + + private T_658_12(java.lang.String id, java.lang.String cd) { + this.id = id; + this.cd = cd; + } + + @Override + public java.lang.String getPrimaryKey() { + return id; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final java.lang.String getId() { + return id; + } + + /** + * An uncommented item + */ + public final java.lang.String getCd() { + return cd; + } +} diff --git a/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/enums/T_658_21.java b/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/enums/T_658_21.java new file mode 100644 index 00000000000..54c5ce328b3 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/enums/T_658_21.java @@ -0,0 +1,46 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.hsqldb.generatedclasses.enums; + +/** + * This class is generated by jOOQ. + */ +public enum T_658_21 implements org.jooq.MasterDataType { + + /** + * 1 + */ + _1(1), + + /** + * 2 + */ + _2(2), + + /** + * 3 + */ + _3(3), + ; + + private final java.lang.Integer id; + + private T_658_21(java.lang.Integer id) { + this.id = id; + } + + @Override + public java.lang.Integer getPrimaryKey() { + return id; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final java.lang.Integer getId() { + return id; + } +} diff --git a/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/enums/T_658_22.java b/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/enums/T_658_22.java new file mode 100644 index 00000000000..66a9d7e6072 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/enums/T_658_22.java @@ -0,0 +1,55 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.hsqldb.generatedclasses.enums; + +/** + * This class is generated by jOOQ. + */ +public enum T_658_22 implements org.jooq.MasterDataType { + + /** + * 1 + */ + _1(1, 1), + + /** + * 2 + */ + _2(2, 2), + + /** + * 3 + */ + _3(3, 3), + ; + + private final java.lang.Integer id; + private final java.lang.Integer cd; + + private T_658_22(java.lang.Integer id, java.lang.Integer cd) { + this.id = id; + this.cd = cd; + } + + @Override + public java.lang.Integer getPrimaryKey() { + return id; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final java.lang.Integer getId() { + return id; + } + + /** + * An uncommented item + */ + public final java.lang.Integer getCd() { + return cd; + } +} diff --git a/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/enums/T_658_31.java b/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/enums/T_658_31.java new file mode 100644 index 00000000000..e7013a2d000 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/enums/T_658_31.java @@ -0,0 +1,46 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.hsqldb.generatedclasses.enums; + +/** + * This class is generated by jOOQ. + */ +public enum T_658_31 implements org.jooq.MasterDataType { + + /** + * 1 + */ + _1(1L), + + /** + * 2 + */ + _2(2L), + + /** + * 3 + */ + _3(3L), + ; + + private final java.lang.Long id; + + private T_658_31(java.lang.Long id) { + this.id = id; + } + + @Override + public java.lang.Long getPrimaryKey() { + return id; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final java.lang.Long getId() { + return id; + } +} diff --git a/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/enums/T_658_32.java b/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/enums/T_658_32.java new file mode 100644 index 00000000000..fc1fac44e20 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/enums/T_658_32.java @@ -0,0 +1,55 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.hsqldb.generatedclasses.enums; + +/** + * This class is generated by jOOQ. + */ +public enum T_658_32 implements org.jooq.MasterDataType { + + /** + * 1 + */ + _1(1L, 1L), + + /** + * 2 + */ + _2(2L, 2L), + + /** + * 3 + */ + _3(3L, 3L), + ; + + private final java.lang.Long id; + private final java.lang.Long cd; + + private T_658_32(java.lang.Long id, java.lang.Long cd) { + this.id = id; + this.cd = cd; + } + + @Override + public java.lang.Long getPrimaryKey() { + return id; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final java.lang.Long getId() { + return id; + } + + /** + * An uncommented item + */ + public final java.lang.Long getCd() { + return cd; + } +} diff --git a/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/routines/F317.java b/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/routines/F317.java new file mode 100644 index 00000000000..2f7f2e88cc4 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/routines/F317.java @@ -0,0 +1,115 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.hsqldb.generatedclasses.routines; + +/** + * This class is generated by jOOQ. + */ +public class F317 extends org.jooq.impl.AbstractRoutine { + + private static final long serialVersionUID = 281472065; + + + /** + * An uncommented item + */ + public static final org.jooq.Parameter RETURN_VALUE = createParameter("RETURN_VALUE", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter P1 = createParameter("P1", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter P2 = createParameter("P2", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter P3 = createParameter("P3", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter P4 = createParameter("P4", org.jooq.impl.SQLDataType.INTEGER); + + /** + * Create a new routine call instance + */ + public F317() { + super("F317", org.jooq.test.hsqldb.generatedclasses.Public.PUBLIC, org.jooq.impl.SQLDataType.INTEGER); + + setReturnParameter(RETURN_VALUE); + addInParameter(P1); + addInParameter(P2); + addInParameter(P3); + addInParameter(P4); + } + + /** + * Set the P1 parameter to the routine + */ + public void setP1(java.lang.Integer value) { + setValue(P1, value); + } + + /** + * Set the P1 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setP1(org.jooq.Field field) { + setField(P1, field); + } + + /** + * Set the P2 parameter to the routine + */ + public void setP2(java.lang.Integer value) { + setValue(P2, value); + } + + /** + * Set the P2 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setP2(org.jooq.Field field) { + setField(P2, field); + } + + /** + * Set the P3 parameter to the routine + */ + public void setP3(java.lang.Integer value) { + setValue(P3, value); + } + + /** + * Set the P3 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setP3(org.jooq.Field field) { + setField(P3, field); + } + + /** + * Set the P4 parameter to the routine + */ + public void setP4(java.lang.Integer value) { + setValue(P4, value); + } + + /** + * Set the P4 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setP4(org.jooq.Field field) { + setField(P4, field); + } +} diff --git a/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/routines/FArrays1.java b/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/routines/FArrays1.java new file mode 100644 index 00000000000..2c800213005 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/routines/FArrays1.java @@ -0,0 +1,49 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.hsqldb.generatedclasses.routines; + +/** + * This class is generated by jOOQ. + */ +public class FArrays1 extends org.jooq.impl.AbstractRoutine { + + private static final long serialVersionUID = -162664889; + + + /** + * An uncommented item + */ + public static final org.jooq.Parameter RETURN_VALUE = createParameter("RETURN_VALUE", org.jooq.impl.SQLDataType.INTEGER.getArrayDataType()); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter IN_ARRAY = createParameter("IN_ARRAY", org.jooq.impl.SQLDataType.INTEGER.getArrayDataType()); + + /** + * Create a new routine call instance + */ + public FArrays1() { + super("F_ARRAYS1", org.jooq.test.hsqldb.generatedclasses.Public.PUBLIC, org.jooq.impl.SQLDataType.INTEGER.getArrayDataType()); + + setReturnParameter(RETURN_VALUE); + addInParameter(IN_ARRAY); + } + + /** + * Set the IN_ARRAY parameter to the routine + */ + public void setInArray(java.lang.Integer[] value) { + setValue(IN_ARRAY, value); + } + + /** + * Set the IN_ARRAY parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setInArray(org.jooq.Field field) { + setField(IN_ARRAY, field); + } +} diff --git a/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/routines/FArrays2.java b/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/routines/FArrays2.java new file mode 100644 index 00000000000..6360540b461 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/routines/FArrays2.java @@ -0,0 +1,49 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.hsqldb.generatedclasses.routines; + +/** + * This class is generated by jOOQ. + */ +public class FArrays2 extends org.jooq.impl.AbstractRoutine { + + private static final long serialVersionUID = -400489581; + + + /** + * An uncommented item + */ + public static final org.jooq.Parameter RETURN_VALUE = createParameter("RETURN_VALUE", org.jooq.impl.SQLDataType.BIGINT.getArrayDataType()); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter IN_ARRAY = createParameter("IN_ARRAY", org.jooq.impl.SQLDataType.BIGINT.getArrayDataType()); + + /** + * Create a new routine call instance + */ + public FArrays2() { + super("F_ARRAYS2", org.jooq.test.hsqldb.generatedclasses.Public.PUBLIC, org.jooq.impl.SQLDataType.BIGINT.getArrayDataType()); + + setReturnParameter(RETURN_VALUE); + addInParameter(IN_ARRAY); + } + + /** + * Set the IN_ARRAY parameter to the routine + */ + public void setInArray(java.lang.Long[] value) { + setValue(IN_ARRAY, value); + } + + /** + * Set the IN_ARRAY parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setInArray(org.jooq.Field field) { + setField(IN_ARRAY, field); + } +} diff --git a/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/routines/FArrays3.java b/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/routines/FArrays3.java new file mode 100644 index 00000000000..dd919e9a867 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/routines/FArrays3.java @@ -0,0 +1,49 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.hsqldb.generatedclasses.routines; + +/** + * This class is generated by jOOQ. + */ +public class FArrays3 extends org.jooq.impl.AbstractRoutine { + + private static final long serialVersionUID = -608148421; + + + /** + * An uncommented item + */ + public static final org.jooq.Parameter RETURN_VALUE = createParameter("RETURN_VALUE", org.jooq.impl.SQLDataType.VARCHAR.getArrayDataType()); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter IN_ARRAY = createParameter("IN_ARRAY", org.jooq.impl.SQLDataType.VARCHAR.getArrayDataType()); + + /** + * Create a new routine call instance + */ + public FArrays3() { + super("F_ARRAYS3", org.jooq.test.hsqldb.generatedclasses.Public.PUBLIC, org.jooq.impl.SQLDataType.VARCHAR.getArrayDataType()); + + setReturnParameter(RETURN_VALUE); + addInParameter(IN_ARRAY); + } + + /** + * Set the IN_ARRAY parameter to the routine + */ + public void setInArray(java.lang.String[] value) { + setValue(IN_ARRAY, value); + } + + /** + * Set the IN_ARRAY parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setInArray(org.jooq.Field field) { + setField(IN_ARRAY, field); + } +} diff --git a/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/routines/FAuthorExists.java b/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/routines/FAuthorExists.java new file mode 100644 index 00000000000..c714b17c043 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/routines/FAuthorExists.java @@ -0,0 +1,49 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.hsqldb.generatedclasses.routines; + +/** + * This class is generated by jOOQ. + */ +public class FAuthorExists extends org.jooq.impl.AbstractRoutine { + + private static final long serialVersionUID = 1736607764; + + + /** + * An uncommented item + */ + public static final org.jooq.Parameter RETURN_VALUE = createParameter("RETURN_VALUE", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter AUTHOR_NAME = createParameter("AUTHOR_NAME", org.jooq.impl.SQLDataType.VARCHAR); + + /** + * Create a new routine call instance + */ + public FAuthorExists() { + super("F_AUTHOR_EXISTS", org.jooq.test.hsqldb.generatedclasses.Public.PUBLIC, org.jooq.impl.SQLDataType.INTEGER); + + setReturnParameter(RETURN_VALUE); + addInParameter(AUTHOR_NAME); + } + + /** + * Set the AUTHOR_NAME parameter to the routine + */ + public void setAuthorName(java.lang.String value) { + setValue(AUTHOR_NAME, value); + } + + /** + * Set the AUTHOR_NAME parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setAuthorName(org.jooq.Field field) { + setField(AUTHOR_NAME, field); + } +} diff --git a/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/routines/FGetOneCursor.java b/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/routines/FGetOneCursor.java new file mode 100644 index 00000000000..e150e2b77e9 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/routines/FGetOneCursor.java @@ -0,0 +1,49 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.hsqldb.generatedclasses.routines; + +/** + * This class is generated by jOOQ. + */ +public class FGetOneCursor extends org.jooq.impl.AbstractRoutine> { + + private static final long serialVersionUID = 1899645387; + + + /** + * An uncommented item + */ + public static final org.jooq.Parameter> RETURN_VALUE = createParameter("RETURN_VALUE", org.jooq.impl.SQLDataType.RESULT); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter BOOK_IDS = createParameter("BOOK_IDS", org.jooq.impl.SQLDataType.INTEGER.getArrayDataType()); + + /** + * Create a new routine call instance + */ + public FGetOneCursor() { + super("F_GET_ONE_CURSOR", org.jooq.test.hsqldb.generatedclasses.Public.PUBLIC, org.jooq.impl.SQLDataType.RESULT); + + setReturnParameter(RETURN_VALUE); + addInParameter(BOOK_IDS); + } + + /** + * Set the BOOK_IDS parameter to the routine + */ + public void setBookIds(java.lang.Integer[] value) { + setValue(BOOK_IDS, value); + } + + /** + * Set the BOOK_IDS parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setBookIds(org.jooq.Field field) { + setField(BOOK_IDS, field); + } +} diff --git a/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/routines/FNumber.java b/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/routines/FNumber.java new file mode 100644 index 00000000000..5f0781cfd0a --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/routines/FNumber.java @@ -0,0 +1,49 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.hsqldb.generatedclasses.routines; + +/** + * This class is generated by jOOQ. + */ +public class FNumber extends org.jooq.impl.AbstractRoutine { + + private static final long serialVersionUID = -1078683710; + + + /** + * An uncommented item + */ + public static final org.jooq.Parameter RETURN_VALUE = createParameter("RETURN_VALUE", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter N = createParameter("N", org.jooq.impl.SQLDataType.INTEGER); + + /** + * Create a new routine call instance + */ + public FNumber() { + super("F_NUMBER", org.jooq.test.hsqldb.generatedclasses.Public.PUBLIC, org.jooq.impl.SQLDataType.INTEGER); + + setReturnParameter(RETURN_VALUE); + addInParameter(N); + } + + /** + * Set the N parameter to the routine + */ + public void setN(java.lang.Integer value) { + setValue(N, value); + } + + /** + * Set the N parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setN(org.jooq.Field field) { + setField(N, field); + } +} diff --git a/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/routines/FOne.java b/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/routines/FOne.java new file mode 100644 index 00000000000..0c20ba54db6 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/routines/FOne.java @@ -0,0 +1,27 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.hsqldb.generatedclasses.routines; + +/** + * This class is generated by jOOQ. + */ +public class FOne extends org.jooq.impl.AbstractRoutine { + + private static final long serialVersionUID = -1304539573; + + + /** + * An uncommented item + */ + public static final org.jooq.Parameter RETURN_VALUE = createParameter("RETURN_VALUE", org.jooq.impl.SQLDataType.INTEGER); + + /** + * Create a new routine call instance + */ + public FOne() { + super("F_ONE", org.jooq.test.hsqldb.generatedclasses.Public.PUBLIC, org.jooq.impl.SQLDataType.INTEGER); + + setReturnParameter(RETURN_VALUE); + } +} diff --git a/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/routines/P391.java b/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/routines/P391.java new file mode 100644 index 00000000000..5338ae190ca --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/routines/P391.java @@ -0,0 +1,101 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.hsqldb.generatedclasses.routines; + +/** + * This class is generated by jOOQ. + */ +public class P391 extends org.jooq.impl.AbstractRoutine { + + private static final long serialVersionUID = 401900319; + + + /** + * An uncommented item + */ + public static final org.jooq.Parameter I1 = createParameter("I1", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter IO1 = createParameter("IO1", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter O1 = createParameter("O1", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter O2 = createParameter("O2", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter IO2 = createParameter("IO2", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter I2 = createParameter("I2", org.jooq.impl.SQLDataType.INTEGER); + + /** + * Create a new routine call instance + */ + public P391() { + super("P391", org.jooq.test.hsqldb.generatedclasses.Public.PUBLIC); + + addInParameter(I1); + addInOutParameter(IO1); + addOutParameter(O1); + addOutParameter(O2); + addInOutParameter(IO2); + addInParameter(I2); + } + + /** + * Set the I1 parameter to the routine + */ + public void setI1(java.lang.Integer value) { + setValue(I1, value); + } + + /** + * Set the IO1 parameter to the routine + */ + public void setIo1(java.lang.Integer value) { + setValue(IO1, value); + } + + /** + * Set the IO2 parameter to the routine + */ + public void setIo2(java.lang.Integer value) { + setValue(IO2, value); + } + + /** + * Set the I2 parameter to the routine + */ + public void setI2(java.lang.Integer value) { + setValue(I2, value); + } + + public java.lang.Integer getIo1() { + return getValue(IO1); + } + + public java.lang.Integer getO1() { + return getValue(O1); + } + + public java.lang.Integer getO2() { + return getValue(O2); + } + + public java.lang.Integer getIo2() { + return getValue(IO2); + } +} diff --git a/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/routines/PArrays1.java b/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/routines/PArrays1.java new file mode 100644 index 00000000000..8d2506609c6 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/routines/PArrays1.java @@ -0,0 +1,44 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.hsqldb.generatedclasses.routines; + +/** + * This class is generated by jOOQ. + */ +public class PArrays1 extends org.jooq.impl.AbstractRoutine { + + private static final long serialVersionUID = 1697705586; + + + /** + * An uncommented item + */ + public static final org.jooq.Parameter IN_ARRAY = createParameter("IN_ARRAY", org.jooq.impl.SQLDataType.INTEGER.getArrayDataType()); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter OUT_ARRAY = createParameter("OUT_ARRAY", org.jooq.impl.SQLDataType.INTEGER.getArrayDataType()); + + /** + * Create a new routine call instance + */ + public PArrays1() { + super("P_ARRAYS1", org.jooq.test.hsqldb.generatedclasses.Public.PUBLIC); + + addInParameter(IN_ARRAY); + addOutParameter(OUT_ARRAY); + } + + /** + * Set the IN_ARRAY parameter to the routine + */ + public void setInArray(java.lang.Integer[] value) { + setValue(IN_ARRAY, value); + } + + public java.lang.Integer[] getOutArray() { + return getValue(OUT_ARRAY); + } +} diff --git a/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/routines/PArrays2.java b/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/routines/PArrays2.java new file mode 100644 index 00000000000..f9d1d36b3c7 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/routines/PArrays2.java @@ -0,0 +1,44 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.hsqldb.generatedclasses.routines; + +/** + * This class is generated by jOOQ. + */ +public class PArrays2 extends org.jooq.impl.AbstractRoutine { + + private static final long serialVersionUID = 2073375753; + + + /** + * An uncommented item + */ + public static final org.jooq.Parameter IN_ARRAY = createParameter("IN_ARRAY", org.jooq.impl.SQLDataType.BIGINT.getArrayDataType()); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter OUT_ARRAY = createParameter("OUT_ARRAY", org.jooq.impl.SQLDataType.BIGINT.getArrayDataType()); + + /** + * Create a new routine call instance + */ + public PArrays2() { + super("P_ARRAYS2", org.jooq.test.hsqldb.generatedclasses.Public.PUBLIC); + + addInParameter(IN_ARRAY); + addOutParameter(OUT_ARRAY); + } + + /** + * Set the IN_ARRAY parameter to the routine + */ + public void setInArray(java.lang.Long[] value) { + setValue(IN_ARRAY, value); + } + + public java.lang.Long[] getOutArray() { + return getValue(OUT_ARRAY); + } +} diff --git a/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/routines/PArrays3.java b/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/routines/PArrays3.java new file mode 100644 index 00000000000..00f257dca7c --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/routines/PArrays3.java @@ -0,0 +1,44 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.hsqldb.generatedclasses.routines; + +/** + * This class is generated by jOOQ. + */ +public class PArrays3 extends org.jooq.impl.AbstractRoutine { + + private static final long serialVersionUID = 1238344562; + + + /** + * An uncommented item + */ + public static final org.jooq.Parameter IN_ARRAY = createParameter("IN_ARRAY", org.jooq.impl.SQLDataType.VARCHAR.getArrayDataType()); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter OUT_ARRAY = createParameter("OUT_ARRAY", org.jooq.impl.SQLDataType.VARCHAR.getArrayDataType()); + + /** + * Create a new routine call instance + */ + public PArrays3() { + super("P_ARRAYS3", org.jooq.test.hsqldb.generatedclasses.Public.PUBLIC); + + addInParameter(IN_ARRAY); + addOutParameter(OUT_ARRAY); + } + + /** + * Set the IN_ARRAY parameter to the routine + */ + public void setInArray(java.lang.String[] value) { + setValue(IN_ARRAY, value); + } + + public java.lang.String[] getOutArray() { + return getValue(OUT_ARRAY); + } +} diff --git a/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/routines/PAuthorExists.java b/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/routines/PAuthorExists.java new file mode 100644 index 00000000000..6d6f1f109bf --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/routines/PAuthorExists.java @@ -0,0 +1,44 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.hsqldb.generatedclasses.routines; + +/** + * This class is generated by jOOQ. + */ +public class PAuthorExists extends org.jooq.impl.AbstractRoutine { + + private static final long serialVersionUID = -857379830; + + + /** + * An uncommented item + */ + public static final org.jooq.Parameter AUTHOR_NAME = createParameter("AUTHOR_NAME", org.jooq.impl.SQLDataType.VARCHAR); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter RESULT = createParameter("RESULT", org.jooq.impl.SQLDataType.INTEGER); + + /** + * Create a new routine call instance + */ + public PAuthorExists() { + super("P_AUTHOR_EXISTS", org.jooq.test.hsqldb.generatedclasses.Public.PUBLIC); + + addInParameter(AUTHOR_NAME); + addOutParameter(RESULT); + } + + /** + * Set the AUTHOR_NAME parameter to the routine + */ + public void setAuthorName(java.lang.String value) { + setValue(AUTHOR_NAME, value); + } + + public java.lang.Integer getResult() { + return getValue(RESULT); + } +} diff --git a/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/routines/PCreateAuthor.java b/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/routines/PCreateAuthor.java new file mode 100644 index 00000000000..979c8f82661 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/routines/PCreateAuthor.java @@ -0,0 +1,20 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.hsqldb.generatedclasses.routines; + +/** + * This class is generated by jOOQ. + */ +public class PCreateAuthor extends org.jooq.impl.AbstractRoutine { + + private static final long serialVersionUID = -81165992; + + + /** + * Create a new routine call instance + */ + public PCreateAuthor() { + super("P_CREATE_AUTHOR", org.jooq.test.hsqldb.generatedclasses.Public.PUBLIC); + } +} diff --git a/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/routines/PCreateAuthorByName.java b/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/routines/PCreateAuthorByName.java new file mode 100644 index 00000000000..64c8ba7f07b --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/routines/PCreateAuthorByName.java @@ -0,0 +1,47 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.hsqldb.generatedclasses.routines; + +/** + * This class is generated by jOOQ. + */ +public class PCreateAuthorByName extends org.jooq.impl.AbstractRoutine { + + private static final long serialVersionUID = -636372750; + + + /** + * An uncommented item + */ + public static final org.jooq.Parameter FIRST_NAME = createParameter("FIRST_NAME", org.jooq.impl.SQLDataType.VARCHAR); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter LAST_NAME = createParameter("LAST_NAME", org.jooq.impl.SQLDataType.VARCHAR); + + /** + * Create a new routine call instance + */ + public PCreateAuthorByName() { + super("P_CREATE_AUTHOR_BY_NAME", org.jooq.test.hsqldb.generatedclasses.Public.PUBLIC); + + addInParameter(FIRST_NAME); + addInParameter(LAST_NAME); + } + + /** + * Set the FIRST_NAME parameter to the routine + */ + public void setFirstName(java.lang.String value) { + setValue(FIRST_NAME, value); + } + + /** + * Set the LAST_NAME parameter to the routine + */ + public void setLastName(java.lang.String value) { + setValue(LAST_NAME, value); + } +} diff --git a/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/routines/PUnused.java b/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/routines/PUnused.java new file mode 100644 index 00000000000..27d7a96e556 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/routines/PUnused.java @@ -0,0 +1,61 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.hsqldb.generatedclasses.routines; + +/** + * This class is generated by jOOQ. + */ +public class PUnused extends org.jooq.impl.AbstractRoutine { + + private static final long serialVersionUID = 781458185; + + + /** + * An uncommented item + */ + public static final org.jooq.Parameter IN1 = createParameter("IN1", org.jooq.impl.SQLDataType.VARCHAR); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter OUT1 = createParameter("OUT1", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter OUT2 = createParameter("OUT2", org.jooq.impl.SQLDataType.INTEGER); + + /** + * Create a new routine call instance + */ + public PUnused() { + super("P_UNUSED", org.jooq.test.hsqldb.generatedclasses.Public.PUBLIC); + + addInParameter(IN1); + addOutParameter(OUT1); + addInOutParameter(OUT2); + } + + /** + * Set the IN1 parameter to the routine + */ + public void setIn1(java.lang.String value) { + setValue(IN1, value); + } + + /** + * Set the OUT2 parameter to the routine + */ + public void setOut2(java.lang.Integer value) { + setValue(OUT2, value); + } + + public java.lang.Integer getOut1() { + return getValue(OUT1); + } + + public java.lang.Integer getOut2() { + return getValue(OUT2); + } +} diff --git a/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/tables/BigDecimal.java b/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/tables/BigDecimal.java new file mode 100644 index 00000000000..b7d6c4acd95 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/tables/BigDecimal.java @@ -0,0 +1,53 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.hsqldb.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class BigDecimal extends org.jooq.impl.TableImpl { + + private static final long serialVersionUID = -1993852709; + + /** + * The singleton instance of PUBLIC.BIG_DECIMAL + */ + public static final org.jooq.test.hsqldb.generatedclasses.tables.BigDecimal BIG_DECIMAL = new org.jooq.test.hsqldb.generatedclasses.tables.BigDecimal(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.hsqldb.generatedclasses.tables.records.BigDecimalRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + */ + public final org.jooq.TableField ID = createField("ID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField OTHER = createField("OTHER", org.jooq.impl.SQLDataType.DECIMAL_INTEGER, this); + + public BigDecimal() { + super("BIG_DECIMAL", org.jooq.test.hsqldb.generatedclasses.Public.PUBLIC); + } + + public BigDecimal(java.lang.String alias) { + super(alias, org.jooq.test.hsqldb.generatedclasses.Public.PUBLIC, org.jooq.test.hsqldb.generatedclasses.tables.BigDecimal.BIG_DECIMAL); + } + + @Override + public org.jooq.test.hsqldb.generatedclasses.tables.BigDecimal as(java.lang.String alias) { + return new org.jooq.test.hsqldb.generatedclasses.tables.BigDecimal(alias); + } +} diff --git a/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/tables/Class.java b/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/tables/Class.java new file mode 100644 index 00000000000..dbf65371463 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/tables/Class.java @@ -0,0 +1,48 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.hsqldb.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class Class extends org.jooq.impl.TableImpl { + + private static final long serialVersionUID = 962020297; + + /** + * The singleton instance of PUBLIC.CLASS + */ + public static final org.jooq.test.hsqldb.generatedclasses.tables.Class CLASS = new org.jooq.test.hsqldb.generatedclasses.tables.Class(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.hsqldb.generatedclasses.tables.records.ClassRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + */ + public final org.jooq.TableField CLASS_ = createField("CLASS", org.jooq.impl.SQLDataType.INTEGER, this); + + public Class() { + super("CLASS", org.jooq.test.hsqldb.generatedclasses.Public.PUBLIC); + } + + public Class(java.lang.String alias) { + super(alias, org.jooq.test.hsqldb.generatedclasses.Public.PUBLIC, org.jooq.test.hsqldb.generatedclasses.tables.Class.CLASS); + } + + @Override + public org.jooq.test.hsqldb.generatedclasses.tables.Class as(java.lang.String alias) { + return new org.jooq.test.hsqldb.generatedclasses.tables.Class(alias); + } +} diff --git a/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/tables/Connection.java b/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/tables/Connection.java new file mode 100644 index 00000000000..c7344314635 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/tables/Connection.java @@ -0,0 +1,48 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.hsqldb.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class Connection extends org.jooq.impl.TableImpl { + + private static final long serialVersionUID = 1848872610; + + /** + * The singleton instance of PUBLIC.CONNECTION + */ + public static final org.jooq.test.hsqldb.generatedclasses.tables.Connection CONNECTION = new org.jooq.test.hsqldb.generatedclasses.tables.Connection(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.hsqldb.generatedclasses.tables.records.ConnectionRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + */ + public final org.jooq.TableField ID = createField("ID", org.jooq.impl.SQLDataType.INTEGER, this); + + public Connection() { + super("CONNECTION", org.jooq.test.hsqldb.generatedclasses.Public.PUBLIC); + } + + public Connection(java.lang.String alias) { + super(alias, org.jooq.test.hsqldb.generatedclasses.Public.PUBLIC, org.jooq.test.hsqldb.generatedclasses.tables.Connection.CONNECTION); + } + + @Override + public org.jooq.test.hsqldb.generatedclasses.tables.Connection as(java.lang.String alias) { + return new org.jooq.test.hsqldb.generatedclasses.tables.Connection(alias); + } +} diff --git a/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/tables/Integer.java b/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/tables/Integer.java new file mode 100644 index 00000000000..aed4d01a805 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/tables/Integer.java @@ -0,0 +1,48 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.hsqldb.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class Integer extends org.jooq.impl.TableImpl { + + private static final long serialVersionUID = -1074332444; + + /** + * The singleton instance of PUBLIC.INTEGER + */ + public static final org.jooq.test.hsqldb.generatedclasses.tables.Integer INTEGER = new org.jooq.test.hsqldb.generatedclasses.tables.Integer(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.hsqldb.generatedclasses.tables.records.IntegerRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + */ + public final org.jooq.TableField ID = createField("ID", org.jooq.impl.SQLDataType.INTEGER, this); + + public Integer() { + super("INTEGER", org.jooq.test.hsqldb.generatedclasses.Public.PUBLIC); + } + + public Integer(java.lang.String alias) { + super(alias, org.jooq.test.hsqldb.generatedclasses.Public.PUBLIC, org.jooq.test.hsqldb.generatedclasses.tables.Integer.INTEGER); + } + + @Override + public org.jooq.test.hsqldb.generatedclasses.tables.Integer as(java.lang.String alias) { + return new org.jooq.test.hsqldb.generatedclasses.tables.Integer(alias); + } +} diff --git a/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/tables/Long.java b/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/tables/Long.java new file mode 100644 index 00000000000..8016ef41fe6 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/tables/Long.java @@ -0,0 +1,53 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.hsqldb.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class Long extends org.jooq.impl.TableImpl { + + private static final long serialVersionUID = -1171621266; + + /** + * The singleton instance of PUBLIC.LONG + */ + public static final org.jooq.test.hsqldb.generatedclasses.tables.Long LONG = new org.jooq.test.hsqldb.generatedclasses.tables.Long(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.hsqldb.generatedclasses.tables.records.LongRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + */ + public final org.jooq.TableField ID = createField("ID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField OTHER = createField("OTHER", org.jooq.impl.SQLDataType.BIGINT, this); + + public Long() { + super("LONG", org.jooq.test.hsqldb.generatedclasses.Public.PUBLIC); + } + + public Long(java.lang.String alias) { + super(alias, org.jooq.test.hsqldb.generatedclasses.Public.PUBLIC, org.jooq.test.hsqldb.generatedclasses.tables.Long.LONG); + } + + @Override + public org.jooq.test.hsqldb.generatedclasses.tables.Long as(java.lang.String alias) { + return new org.jooq.test.hsqldb.generatedclasses.tables.Long(alias); + } +} diff --git a/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/tables/Object.java b/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/tables/Object.java new file mode 100644 index 00000000000..f9fae3f956c --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/tables/Object.java @@ -0,0 +1,56 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.hsqldb.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class Object extends org.jooq.impl.TableImpl { + + private static final long serialVersionUID = -1757461586; + + /** + * The singleton instance of PUBLIC.OBJECT + */ + public static final org.jooq.test.hsqldb.generatedclasses.tables.Object OBJECT = new org.jooq.test.hsqldb.generatedclasses.tables.Object(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.hsqldb.generatedclasses.tables.records.ObjectRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + */ + public final org.jooq.TableField ID = createField("ID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + * + * The SQL type of this item (OTHER, null) could not be mapped.
+ * Deserialising this field might not work! + */ + public final org.jooq.TableField OTHER = createField("OTHER", org.jooq.impl.SQLDataType.OTHER, this); + + public Object() { + super("OBJECT", org.jooq.test.hsqldb.generatedclasses.Public.PUBLIC); + } + + public Object(java.lang.String alias) { + super(alias, org.jooq.test.hsqldb.generatedclasses.Public.PUBLIC, org.jooq.test.hsqldb.generatedclasses.tables.Object.OBJECT); + } + + @Override + public org.jooq.test.hsqldb.generatedclasses.tables.Object as(java.lang.String alias) { + return new org.jooq.test.hsqldb.generatedclasses.tables.Object(alias); + } +} diff --git a/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/tables/PreparedStatement.java b/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/tables/PreparedStatement.java new file mode 100644 index 00000000000..c4a329d761c --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/tables/PreparedStatement.java @@ -0,0 +1,48 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.hsqldb.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class PreparedStatement extends org.jooq.impl.TableImpl { + + private static final long serialVersionUID = 53598964; + + /** + * The singleton instance of PUBLIC.PREPARED_STATEMENT + */ + public static final org.jooq.test.hsqldb.generatedclasses.tables.PreparedStatement PREPARED_STATEMENT = new org.jooq.test.hsqldb.generatedclasses.tables.PreparedStatement(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.hsqldb.generatedclasses.tables.records.PreparedStatementRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + */ + public final org.jooq.TableField ID = createField("ID", org.jooq.impl.SQLDataType.INTEGER, this); + + public PreparedStatement() { + super("PREPARED_STATEMENT", org.jooq.test.hsqldb.generatedclasses.Public.PUBLIC); + } + + public PreparedStatement(java.lang.String alias) { + super(alias, org.jooq.test.hsqldb.generatedclasses.Public.PUBLIC, org.jooq.test.hsqldb.generatedclasses.tables.PreparedStatement.PREPARED_STATEMENT); + } + + @Override + public org.jooq.test.hsqldb.generatedclasses.tables.PreparedStatement as(java.lang.String alias) { + return new org.jooq.test.hsqldb.generatedclasses.tables.PreparedStatement(alias); + } +} diff --git a/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/tables/String.java b/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/tables/String.java new file mode 100644 index 00000000000..9f4c2405c3f --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/tables/String.java @@ -0,0 +1,53 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.hsqldb.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class String extends org.jooq.impl.TableImpl { + + private static final long serialVersionUID = -1057176851; + + /** + * The singleton instance of PUBLIC.STRING + */ + public static final org.jooq.test.hsqldb.generatedclasses.tables.String STRING = new org.jooq.test.hsqldb.generatedclasses.tables.String(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.hsqldb.generatedclasses.tables.records.StringRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + */ + public final org.jooq.TableField ID = createField("ID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField OTHER = createField("OTHER", org.jooq.impl.SQLDataType.VARCHAR, this); + + public String() { + super("STRING", org.jooq.test.hsqldb.generatedclasses.Public.PUBLIC); + } + + public String(java.lang.String alias) { + super(alias, org.jooq.test.hsqldb.generatedclasses.Public.PUBLIC, org.jooq.test.hsqldb.generatedclasses.tables.String.STRING); + } + + @Override + public org.jooq.test.hsqldb.generatedclasses.tables.String as(java.lang.String alias) { + return new org.jooq.test.hsqldb.generatedclasses.tables.String(alias); + } +} diff --git a/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/tables/System.java b/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/tables/System.java new file mode 100644 index 00000000000..7cff8c64262 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/tables/System.java @@ -0,0 +1,48 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.hsqldb.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class System extends org.jooq.impl.TableImpl { + + private static final long serialVersionUID = 702688949; + + /** + * The singleton instance of PUBLIC.SYSTEM + */ + public static final org.jooq.test.hsqldb.generatedclasses.tables.System SYSTEM = new org.jooq.test.hsqldb.generatedclasses.tables.System(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.hsqldb.generatedclasses.tables.records.SystemRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + */ + public final org.jooq.TableField ID = createField("ID", org.jooq.impl.SQLDataType.INTEGER, this); + + public System() { + super("SYSTEM", org.jooq.test.hsqldb.generatedclasses.Public.PUBLIC); + } + + public System(java.lang.String alias) { + super(alias, org.jooq.test.hsqldb.generatedclasses.Public.PUBLIC, org.jooq.test.hsqldb.generatedclasses.tables.System.SYSTEM); + } + + @Override + public org.jooq.test.hsqldb.generatedclasses.tables.System as(java.lang.String alias) { + return new org.jooq.test.hsqldb.generatedclasses.tables.System(alias); + } +} diff --git a/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/tables/TArrays.java b/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/tables/TArrays.java new file mode 100644 index 00000000000..1349183f479 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/tables/TArrays.java @@ -0,0 +1,76 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.hsqldb.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class TArrays extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = 1286485398; + + /** + * The singleton instance of PUBLIC.T_ARRAYS + */ + public static final org.jooq.test.hsqldb.generatedclasses.tables.TArrays T_ARRAYS = new org.jooq.test.hsqldb.generatedclasses.tables.TArrays(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.hsqldb.generatedclasses.tables.records.TArraysRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final org.jooq.TableField ID = createField("ID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField STRING_ARRAY = createField("STRING_ARRAY", org.jooq.impl.SQLDataType.VARCHAR.getArrayDataType(), this); + + /** + * An uncommented item + */ + public final org.jooq.TableField NUMBER_ARRAY = createField("NUMBER_ARRAY", org.jooq.impl.SQLDataType.INTEGER.getArrayDataType(), this); + + /** + * An uncommented item + */ + public final org.jooq.TableField DATE_ARRAY = createField("DATE_ARRAY", org.jooq.impl.SQLDataType.DATE.getArrayDataType(), this); + + public TArrays() { + super("T_ARRAYS", org.jooq.test.hsqldb.generatedclasses.Public.PUBLIC); + } + + public TArrays(java.lang.String alias) { + super(alias, org.jooq.test.hsqldb.generatedclasses.Public.PUBLIC, org.jooq.test.hsqldb.generatedclasses.tables.TArrays.T_ARRAYS); + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.test.hsqldb.generatedclasses.Keys.PK_T_ARRAYS; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.test.hsqldb.generatedclasses.Keys.PK_T_ARRAYS); + } + + @Override + public org.jooq.test.hsqldb.generatedclasses.tables.TArrays as(java.lang.String alias) { + return new org.jooq.test.hsqldb.generatedclasses.tables.TArrays(alias); + } +} diff --git a/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/tables/TAuthor.java b/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/tables/TAuthor.java new file mode 100644 index 00000000000..533d33f3f13 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/tables/TAuthor.java @@ -0,0 +1,86 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.hsqldb.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class TAuthor extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = -161813889; + + /** + * The singleton instance of PUBLIC.T_AUTHOR + */ + public static final org.jooq.test.hsqldb.generatedclasses.tables.TAuthor T_AUTHOR = new org.jooq.test.hsqldb.generatedclasses.tables.TAuthor(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.hsqldb.generatedclasses.tables.records.TAuthorRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final org.jooq.TableField ID = createField("ID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField FIRST_NAME = createField("FIRST_NAME", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField LAST_NAME = createField("LAST_NAME", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField DATE_OF_BIRTH = createField("DATE_OF_BIRTH", org.jooq.impl.SQLDataType.DATE, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField YEAR_OF_BIRTH = createField("YEAR_OF_BIRTH", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField ADDRESS = createField("ADDRESS", org.jooq.impl.SQLDataType.VARCHAR, this); + + public TAuthor() { + super("T_AUTHOR", org.jooq.test.hsqldb.generatedclasses.Public.PUBLIC); + } + + public TAuthor(java.lang.String alias) { + super(alias, org.jooq.test.hsqldb.generatedclasses.Public.PUBLIC, org.jooq.test.hsqldb.generatedclasses.tables.TAuthor.T_AUTHOR); + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.test.hsqldb.generatedclasses.Keys.PK_T_AUTHOR; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.test.hsqldb.generatedclasses.Keys.PK_T_AUTHOR); + } + + @Override + public org.jooq.test.hsqldb.generatedclasses.tables.TAuthor as(java.lang.String alias) { + return new org.jooq.test.hsqldb.generatedclasses.tables.TAuthor(alias); + } +} diff --git a/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/tables/TBook.java b/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/tables/TBook.java new file mode 100644 index 00000000000..bb55551aa09 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/tables/TBook.java @@ -0,0 +1,125 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.hsqldb.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class TBook extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = -218845274; + + /** + * The singleton instance of PUBLIC.T_BOOK + */ + public static final org.jooq.test.hsqldb.generatedclasses.tables.TBook T_BOOK = new org.jooq.test.hsqldb.generatedclasses.tables.TBook(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.hsqldb.generatedclasses.tables.records.TBookRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final org.jooq.TableField ID = createField("ID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_T_BOOK_AUTHOR_ID
+	 * FOREIGN KEY (AUTHOR_ID)
+	 * REFERENCES PUBLIC.T_AUTHOR (ID)
+	 * 
+ */ + public final org.jooq.TableField AUTHOR_ID = createField("AUTHOR_ID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_T_BOOK_CO_AUTHOR_ID
+	 * FOREIGN KEY (CO_AUTHOR_ID)
+	 * REFERENCES PUBLIC.T_AUTHOR (ID)
+	 * 
+ */ + public final org.jooq.TableField CO_AUTHOR_ID = createField("CO_AUTHOR_ID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField DETAILS_ID = createField("DETAILS_ID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField TITLE = createField("TITLE", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField PUBLISHED_IN = createField("PUBLISHED_IN", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_T_BOOK_LANGUAGE_ID
+	 * FOREIGN KEY (LANGUAGE_ID)
+	 * REFERENCES PUBLIC.T_LANGUAGE (ID)
+	 * 
+ */ + public final org.jooq.TableField LANGUAGE_ID = createField("LANGUAGE_ID", org.jooq.impl.SQLDataType.INTEGER.asMasterDataType(org.jooq.test.hsqldb.generatedclasses.enums.TLanguage.class), this); + + /** + * An uncommented item + */ + public final org.jooq.TableField CONTENT_TEXT = createField("CONTENT_TEXT", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField CONTENT_PDF = createField("CONTENT_PDF", org.jooq.impl.SQLDataType.VARBINARY, this); + + public TBook() { + super("T_BOOK", org.jooq.test.hsqldb.generatedclasses.Public.PUBLIC); + } + + public TBook(java.lang.String alias) { + super(alias, org.jooq.test.hsqldb.generatedclasses.Public.PUBLIC, org.jooq.test.hsqldb.generatedclasses.tables.TBook.T_BOOK); + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.test.hsqldb.generatedclasses.Keys.PK_T_BOOK; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.test.hsqldb.generatedclasses.Keys.PK_T_BOOK); + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getReferences() { + return java.util.Arrays.>asList(org.jooq.test.hsqldb.generatedclasses.Keys.FK_T_BOOK_AUTHOR_ID, org.jooq.test.hsqldb.generatedclasses.Keys.FK_T_BOOK_CO_AUTHOR_ID); + } + + @Override + public org.jooq.test.hsqldb.generatedclasses.tables.TBook as(java.lang.String alias) { + return new org.jooq.test.hsqldb.generatedclasses.tables.TBook(alias); + } +} diff --git a/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/tables/TBookStore.java b/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/tables/TBookStore.java new file mode 100644 index 00000000000..f7050f30f6e --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/tables/TBookStore.java @@ -0,0 +1,59 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.hsqldb.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class TBookStore extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = -1004174668; + + /** + * The singleton instance of PUBLIC.T_BOOK_STORE + */ + public static final org.jooq.test.hsqldb.generatedclasses.tables.TBookStore T_BOOK_STORE = new org.jooq.test.hsqldb.generatedclasses.tables.TBookStore(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.hsqldb.generatedclasses.tables.records.TBookStoreRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + */ + public final org.jooq.TableField NAME = createField("NAME", org.jooq.impl.SQLDataType.VARCHAR, this); + + public TBookStore() { + super("T_BOOK_STORE", org.jooq.test.hsqldb.generatedclasses.Public.PUBLIC); + } + + public TBookStore(java.lang.String alias) { + super(alias, org.jooq.test.hsqldb.generatedclasses.Public.PUBLIC, org.jooq.test.hsqldb.generatedclasses.tables.TBookStore.T_BOOK_STORE); + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.test.hsqldb.generatedclasses.Keys.UK_T_BOOK_STORE_NAME; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.test.hsqldb.generatedclasses.Keys.UK_T_BOOK_STORE_NAME); + } + + @Override + public org.jooq.test.hsqldb.generatedclasses.tables.TBookStore as(java.lang.String alias) { + return new org.jooq.test.hsqldb.generatedclasses.tables.TBookStore(alias); + } +} diff --git a/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/tables/TBookToBookStore.java b/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/tables/TBookToBookStore.java new file mode 100644 index 00000000000..dba36fed791 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/tables/TBookToBookStore.java @@ -0,0 +1,91 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.hsqldb.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class TBookToBookStore extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = -2144131979; + + /** + * The singleton instance of PUBLIC.T_BOOK_TO_BOOK_STORE + */ + public static final org.jooq.test.hsqldb.generatedclasses.tables.TBookToBookStore T_BOOK_TO_BOOK_STORE = new org.jooq.test.hsqldb.generatedclasses.tables.TBookToBookStore(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.hsqldb.generatedclasses.tables.records.TBookToBookStoreRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT FK_B2BS_BS_NAME
+	 * FOREIGN KEY (BOOK_STORE_NAME)
+	 * REFERENCES PUBLIC.T_BOOK_STORE (NAME)
+	 * 
+ */ + public final org.jooq.TableField BOOK_STORE_NAME = createField("BOOK_STORE_NAME", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT FK_B2BS_B_ID
+	 * FOREIGN KEY (BOOK_ID)
+	 * REFERENCES PUBLIC.T_BOOK (ID)
+	 * 
+ */ + public final org.jooq.TableField BOOK_ID = createField("BOOK_ID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField STOCK = createField("STOCK", org.jooq.impl.SQLDataType.INTEGER, this); + + public TBookToBookStore() { + super("T_BOOK_TO_BOOK_STORE", org.jooq.test.hsqldb.generatedclasses.Public.PUBLIC); + } + + public TBookToBookStore(java.lang.String alias) { + super(alias, org.jooq.test.hsqldb.generatedclasses.Public.PUBLIC, org.jooq.test.hsqldb.generatedclasses.tables.TBookToBookStore.T_BOOK_TO_BOOK_STORE); + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.test.hsqldb.generatedclasses.Keys.PK_B2BS; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.test.hsqldb.generatedclasses.Keys.PK_B2BS); + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getReferences() { + return java.util.Arrays.>asList(org.jooq.test.hsqldb.generatedclasses.Keys.FK_B2BS_BS_NAME, org.jooq.test.hsqldb.generatedclasses.Keys.FK_B2BS_B_ID); + } + + @Override + public org.jooq.test.hsqldb.generatedclasses.tables.TBookToBookStore as(java.lang.String alias) { + return new org.jooq.test.hsqldb.generatedclasses.tables.TBookToBookStore(alias); + } +} diff --git a/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/tables/TBooleans.java b/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/tables/TBooleans.java new file mode 100644 index 00000000000..e9d259b67cb --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/tables/TBooleans.java @@ -0,0 +1,111 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.hsqldb.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class TBooleans extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = -1464111600; + + /** + * The singleton instance of PUBLIC.T_BOOLEANS + */ + public static final org.jooq.test.hsqldb.generatedclasses.tables.TBooleans T_BOOLEANS = new org.jooq.test.hsqldb.generatedclasses.tables.TBooleans(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.hsqldb.generatedclasses.tables.records.TBooleansRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final org.jooq.TableField ID = createField("ID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField ONE_ZERO = createField("ONE_ZERO", org.jooq.impl.SQLDataType.INTEGER.asConvertedDataType(new org.jooq.test._.converters.Boolean_10_Converter()), this); + + /** + * An uncommented item + */ + public final org.jooq.TableField TRUE_FALSE_LC = createField("TRUE_FALSE_LC", org.jooq.impl.SQLDataType.VARCHAR.asConvertedDataType(new org.jooq.test._.converters.Boolean_TF_LC_Converter()), this); + + /** + * An uncommented item + */ + public final org.jooq.TableField TRUE_FALSE_UC = createField("TRUE_FALSE_UC", org.jooq.impl.SQLDataType.VARCHAR.asConvertedDataType(new org.jooq.test._.converters.Boolean_TF_UC_Converter()), this); + + /** + * An uncommented item + */ + public final org.jooq.TableField YES_NO_LC = createField("YES_NO_LC", org.jooq.impl.SQLDataType.VARCHAR.asConvertedDataType(new org.jooq.test._.converters.Boolean_YES_NO_LC_Converter()), this); + + /** + * An uncommented item + */ + public final org.jooq.TableField YES_NO_UC = createField("YES_NO_UC", org.jooq.impl.SQLDataType.VARCHAR.asConvertedDataType(new org.jooq.test._.converters.Boolean_YES_NO_UC_Converter()), this); + + /** + * An uncommented item + */ + public final org.jooq.TableField Y_N_LC = createField("Y_N_LC", org.jooq.impl.SQLDataType.CHAR.asConvertedDataType(new org.jooq.test._.converters.Boolean_YN_LC_Converter()), this); + + /** + * An uncommented item + */ + public final org.jooq.TableField Y_N_UC = createField("Y_N_UC", org.jooq.impl.SQLDataType.CHAR.asConvertedDataType(new org.jooq.test._.converters.Boolean_YN_UC_Converter()), this); + + /** + * An uncommented item + */ + public final org.jooq.TableField VC_BOOLEAN = createField("VC_BOOLEAN", org.jooq.impl.SQLDataType.BOOLEAN, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField C_BOOLEAN = createField("C_BOOLEAN", org.jooq.impl.SQLDataType.BOOLEAN, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField N_BOOLEAN = createField("N_BOOLEAN", org.jooq.impl.SQLDataType.BOOLEAN, this); + + public TBooleans() { + super("T_BOOLEANS", org.jooq.test.hsqldb.generatedclasses.Public.PUBLIC); + } + + public TBooleans(java.lang.String alias) { + super(alias, org.jooq.test.hsqldb.generatedclasses.Public.PUBLIC, org.jooq.test.hsqldb.generatedclasses.tables.TBooleans.T_BOOLEANS); + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.test.hsqldb.generatedclasses.Keys.PK_T_BOOLEANS; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.test.hsqldb.generatedclasses.Keys.PK_T_BOOLEANS); + } + + @Override + public org.jooq.test.hsqldb.generatedclasses.tables.TBooleans as(java.lang.String alias) { + return new org.jooq.test.hsqldb.generatedclasses.tables.TBooleans(alias); + } +} diff --git a/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/tables/TDates.java b/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/tables/TDates.java new file mode 100644 index 00000000000..6ebc5f836ef --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/tables/TDates.java @@ -0,0 +1,86 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.hsqldb.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class TDates extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = 1640812032; + + /** + * The singleton instance of PUBLIC.T_DATES + */ + public static final org.jooq.test.hsqldb.generatedclasses.tables.TDates T_DATES = new org.jooq.test.hsqldb.generatedclasses.tables.TDates(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.hsqldb.generatedclasses.tables.records.TDatesRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final org.jooq.TableField ID = createField("ID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField D = createField("D", org.jooq.impl.SQLDataType.DATE, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField T = createField("T", org.jooq.impl.SQLDataType.TIME, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField TS = createField("TS", org.jooq.impl.SQLDataType.TIMESTAMP, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField D_INT = createField("D_INT", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField TS_BIGINT = createField("TS_BIGINT", org.jooq.impl.SQLDataType.BIGINT, this); + + public TDates() { + super("T_DATES", org.jooq.test.hsqldb.generatedclasses.Public.PUBLIC); + } + + public TDates(java.lang.String alias) { + super(alias, org.jooq.test.hsqldb.generatedclasses.Public.PUBLIC, org.jooq.test.hsqldb.generatedclasses.tables.TDates.T_DATES); + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.test.hsqldb.generatedclasses.Keys.PK_T_DATES; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.test.hsqldb.generatedclasses.Keys.PK_T_DATES); + } + + @Override + public org.jooq.test.hsqldb.generatedclasses.tables.TDates as(java.lang.String alias) { + return new org.jooq.test.hsqldb.generatedclasses.tables.TDates(alias); + } +} diff --git a/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/tables/TIdentity.java b/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/tables/TIdentity.java new file mode 100644 index 00000000000..9bf3c9f33f5 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/tables/TIdentity.java @@ -0,0 +1,58 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.hsqldb.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class TIdentity extends org.jooq.impl.TableImpl { + + private static final long serialVersionUID = 907139776; + + /** + * The singleton instance of PUBLIC.T_IDENTITY + */ + public static final org.jooq.test.hsqldb.generatedclasses.tables.TIdentity T_IDENTITY = new org.jooq.test.hsqldb.generatedclasses.tables.TIdentity(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.hsqldb.generatedclasses.tables.records.TIdentityRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + */ + public final org.jooq.TableField ID = createField("ID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField VAL = createField("VAL", org.jooq.impl.SQLDataType.INTEGER, this); + + public TIdentity() { + super("T_IDENTITY", org.jooq.test.hsqldb.generatedclasses.Public.PUBLIC); + } + + public TIdentity(java.lang.String alias) { + super(alias, org.jooq.test.hsqldb.generatedclasses.Public.PUBLIC, org.jooq.test.hsqldb.generatedclasses.tables.TIdentity.T_IDENTITY); + } + + @Override + public org.jooq.Identity getIdentity() { + return org.jooq.test.hsqldb.generatedclasses.Keys.IDENTITY_T_IDENTITY; + } + + @Override + public org.jooq.test.hsqldb.generatedclasses.tables.TIdentity as(java.lang.String alias) { + return new org.jooq.test.hsqldb.generatedclasses.tables.TIdentity(alias); + } +} diff --git a/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/tables/TIdentityPk.java b/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/tables/TIdentityPk.java new file mode 100644 index 00000000000..9f753ce0d97 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/tables/TIdentityPk.java @@ -0,0 +1,71 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.hsqldb.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class TIdentityPk extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = 1398981381; + + /** + * The singleton instance of PUBLIC.T_IDENTITY_PK + */ + public static final org.jooq.test.hsqldb.generatedclasses.tables.TIdentityPk T_IDENTITY_PK = new org.jooq.test.hsqldb.generatedclasses.tables.TIdentityPk(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.hsqldb.generatedclasses.tables.records.TIdentityPkRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final org.jooq.TableField ID = createField("ID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField VAL = createField("VAL", org.jooq.impl.SQLDataType.INTEGER, this); + + public TIdentityPk() { + super("T_IDENTITY_PK", org.jooq.test.hsqldb.generatedclasses.Public.PUBLIC); + } + + public TIdentityPk(java.lang.String alias) { + super(alias, org.jooq.test.hsqldb.generatedclasses.Public.PUBLIC, org.jooq.test.hsqldb.generatedclasses.tables.TIdentityPk.T_IDENTITY_PK); + } + + @Override + public org.jooq.Identity getIdentity() { + return org.jooq.test.hsqldb.generatedclasses.Keys.IDENTITY_T_IDENTITY_PK; + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.test.hsqldb.generatedclasses.Keys.PK_T_IDENTITY_PK; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.test.hsqldb.generatedclasses.Keys.PK_T_IDENTITY_PK); + } + + @Override + public org.jooq.test.hsqldb.generatedclasses.tables.TIdentityPk as(java.lang.String alias) { + return new org.jooq.test.hsqldb.generatedclasses.tables.TIdentityPk(alias); + } +} diff --git a/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/tables/TTriggers.java b/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/tables/TTriggers.java new file mode 100644 index 00000000000..0ce8b292a96 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/tables/TTriggers.java @@ -0,0 +1,71 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.hsqldb.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class TTriggers extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = -818147977; + + /** + * The singleton instance of PUBLIC.T_TRIGGERS + */ + public static final org.jooq.test.hsqldb.generatedclasses.tables.TTriggers T_TRIGGERS = new org.jooq.test.hsqldb.generatedclasses.tables.TTriggers(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.hsqldb.generatedclasses.tables.records.TTriggersRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final org.jooq.TableField ID_GENERATED = createField("ID_GENERATED", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField ID = createField("ID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField COUNTER = createField("COUNTER", org.jooq.impl.SQLDataType.INTEGER, this); + + public TTriggers() { + super("T_TRIGGERS", org.jooq.test.hsqldb.generatedclasses.Public.PUBLIC); + } + + public TTriggers(java.lang.String alias) { + super(alias, org.jooq.test.hsqldb.generatedclasses.Public.PUBLIC, org.jooq.test.hsqldb.generatedclasses.tables.TTriggers.T_TRIGGERS); + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.test.hsqldb.generatedclasses.Keys.PK_T_TRIGGERS; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.test.hsqldb.generatedclasses.Keys.PK_T_TRIGGERS); + } + + @Override + public org.jooq.test.hsqldb.generatedclasses.tables.TTriggers as(java.lang.String alias) { + return new org.jooq.test.hsqldb.generatedclasses.tables.TTriggers(alias); + } +} diff --git a/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/tables/T_639NumbersTable.java b/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/tables/T_639NumbersTable.java new file mode 100644 index 00000000000..357cd936c4a --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/tables/T_639NumbersTable.java @@ -0,0 +1,121 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.hsqldb.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class T_639NumbersTable extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = -571305401; + + /** + * The singleton instance of PUBLIC.T_639_NUMBERS_TABLE + */ + public static final org.jooq.test.hsqldb.generatedclasses.tables.T_639NumbersTable T_639_NUMBERS_TABLE = new org.jooq.test.hsqldb.generatedclasses.tables.T_639NumbersTable(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.hsqldb.generatedclasses.tables.records.T_639NumbersTableRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final org.jooq.TableField ID = createField("ID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField BYTE = createField("BYTE", org.jooq.impl.SQLDataType.TINYINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField SHORT = createField("SHORT", org.jooq.impl.SQLDataType.SMALLINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField INTEGER = createField("INTEGER", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField LONG = createField("LONG", org.jooq.impl.SQLDataType.BIGINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField BYTE_DECIMAL = createField("BYTE_DECIMAL", org.jooq.impl.SQLDataType.TINYINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField SHORT_DECIMAL = createField("SHORT_DECIMAL", org.jooq.impl.SQLDataType.SMALLINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField INTEGER_DECIMAL = createField("INTEGER_DECIMAL", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField LONG_DECIMAL = createField("LONG_DECIMAL", org.jooq.impl.SQLDataType.BIGINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField BIG_INTEGER = createField("BIG_INTEGER", org.jooq.impl.SQLDataType.DECIMAL_INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField BIG_DECIMAL = createField("BIG_DECIMAL", org.jooq.impl.SQLDataType.DECIMAL, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField FLOAT = createField("FLOAT", org.jooq.impl.SQLDataType.DOUBLE, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField DOUBLE = createField("DOUBLE", org.jooq.impl.SQLDataType.DOUBLE, this); + + public T_639NumbersTable() { + super("T_639_NUMBERS_TABLE", org.jooq.test.hsqldb.generatedclasses.Public.PUBLIC); + } + + public T_639NumbersTable(java.lang.String alias) { + super(alias, org.jooq.test.hsqldb.generatedclasses.Public.PUBLIC, org.jooq.test.hsqldb.generatedclasses.tables.T_639NumbersTable.T_639_NUMBERS_TABLE); + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.test.hsqldb.generatedclasses.Keys.PK_T_639_NUMBERS_TABLE; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.test.hsqldb.generatedclasses.Keys.PK_T_639_NUMBERS_TABLE); + } + + @Override + public org.jooq.test.hsqldb.generatedclasses.tables.T_639NumbersTable as(java.lang.String alias) { + return new org.jooq.test.hsqldb.generatedclasses.tables.T_639NumbersTable(alias); + } +} diff --git a/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/tables/T_658Ref.java b/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/tables/T_658Ref.java new file mode 100644 index 00000000000..df02db9d81f --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/tables/T_658Ref.java @@ -0,0 +1,115 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.hsqldb.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class T_658Ref extends org.jooq.impl.TableImpl { + + private static final long serialVersionUID = -1484440469; + + /** + * The singleton instance of PUBLIC.T_658_REF + */ + public static final org.jooq.test.hsqldb.generatedclasses.tables.T_658Ref T_658_REF = new org.jooq.test.hsqldb.generatedclasses.tables.T_658Ref(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.hsqldb.generatedclasses.tables.records.T_658RefRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_T_658_11
+	 * FOREIGN KEY (REF_11)
+	 * REFERENCES PUBLIC.T_658_11 (ID)
+	 * 
+ */ + public final org.jooq.TableField REF_11 = createField("REF_11", org.jooq.impl.SQLDataType.CHAR.asMasterDataType(org.jooq.test.hsqldb.generatedclasses.enums.T_658_11.class), this); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_T_658_21
+	 * FOREIGN KEY (REF_21)
+	 * REFERENCES PUBLIC.T_658_21 (ID)
+	 * 
+ */ + public final org.jooq.TableField REF_21 = createField("REF_21", org.jooq.impl.SQLDataType.INTEGER.asMasterDataType(org.jooq.test.hsqldb.generatedclasses.enums.T_658_21.class), this); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_T_658_31
+	 * FOREIGN KEY (REF_31)
+	 * REFERENCES PUBLIC.T_658_31 (ID)
+	 * 
+ */ + public final org.jooq.TableField REF_31 = createField("REF_31", org.jooq.impl.SQLDataType.BIGINT.asMasterDataType(org.jooq.test.hsqldb.generatedclasses.enums.T_658_31.class), this); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_T_658_12
+	 * FOREIGN KEY (REF_12)
+	 * REFERENCES PUBLIC.T_658_12 (ID)
+	 * 
+ */ + public final org.jooq.TableField REF_12 = createField("REF_12", org.jooq.impl.SQLDataType.CHAR.asMasterDataType(org.jooq.test.hsqldb.generatedclasses.enums.T_658_12.class), this); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_T_658_22
+	 * FOREIGN KEY (REF_22)
+	 * REFERENCES PUBLIC.T_658_22 (ID)
+	 * 
+ */ + public final org.jooq.TableField REF_22 = createField("REF_22", org.jooq.impl.SQLDataType.INTEGER.asMasterDataType(org.jooq.test.hsqldb.generatedclasses.enums.T_658_22.class), this); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_T_658_32
+	 * FOREIGN KEY (REF_32)
+	 * REFERENCES PUBLIC.T_658_32 (ID)
+	 * 
+ */ + public final org.jooq.TableField REF_32 = createField("REF_32", org.jooq.impl.SQLDataType.BIGINT.asMasterDataType(org.jooq.test.hsqldb.generatedclasses.enums.T_658_32.class), this); + + public T_658Ref() { + super("T_658_REF", org.jooq.test.hsqldb.generatedclasses.Public.PUBLIC); + } + + public T_658Ref(java.lang.String alias) { + super(alias, org.jooq.test.hsqldb.generatedclasses.Public.PUBLIC, org.jooq.test.hsqldb.generatedclasses.tables.T_658Ref.T_658_REF); + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getReferences() { + return java.util.Arrays.>asList(); + } + + @Override + public org.jooq.test.hsqldb.generatedclasses.tables.T_658Ref as(java.lang.String alias) { + return new org.jooq.test.hsqldb.generatedclasses.tables.T_658Ref(alias); + } +} diff --git a/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/tables/T_725LobTest.java b/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/tables/T_725LobTest.java new file mode 100644 index 00000000000..4c77542c940 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/tables/T_725LobTest.java @@ -0,0 +1,66 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.hsqldb.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class T_725LobTest extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = -1764209708; + + /** + * The singleton instance of PUBLIC.T_725_LOB_TEST + */ + public static final org.jooq.test.hsqldb.generatedclasses.tables.T_725LobTest T_725_LOB_TEST = new org.jooq.test.hsqldb.generatedclasses.tables.T_725LobTest(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.hsqldb.generatedclasses.tables.records.T_725LobTestRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final org.jooq.TableField ID = createField("ID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField LOB = createField("LOB", org.jooq.impl.SQLDataType.VARBINARY, this); + + public T_725LobTest() { + super("T_725_LOB_TEST", org.jooq.test.hsqldb.generatedclasses.Public.PUBLIC); + } + + public T_725LobTest(java.lang.String alias) { + super(alias, org.jooq.test.hsqldb.generatedclasses.Public.PUBLIC, org.jooq.test.hsqldb.generatedclasses.tables.T_725LobTest.T_725_LOB_TEST); + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.test.hsqldb.generatedclasses.Keys.PK_T_725_LOB_TEST; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.test.hsqldb.generatedclasses.Keys.PK_T_725_LOB_TEST); + } + + @Override + public org.jooq.test.hsqldb.generatedclasses.tables.T_725LobTest as(java.lang.String alias) { + return new org.jooq.test.hsqldb.generatedclasses.tables.T_725LobTest(alias); + } +} diff --git a/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/tables/T_785.java b/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/tables/T_785.java new file mode 100644 index 00000000000..8c8494b7752 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/tables/T_785.java @@ -0,0 +1,58 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.hsqldb.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class T_785 extends org.jooq.impl.TableImpl { + + private static final long serialVersionUID = -1725771947; + + /** + * The singleton instance of PUBLIC.T_785 + */ + public static final org.jooq.test.hsqldb.generatedclasses.tables.T_785 T_785 = new org.jooq.test.hsqldb.generatedclasses.tables.T_785(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.hsqldb.generatedclasses.tables.records.T_785Record.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + */ + public final org.jooq.TableField ID = createField("ID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField NAME = createField("NAME", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField VALUE = createField("VALUE", org.jooq.impl.SQLDataType.VARCHAR, this); + + public T_785() { + super("T_785", org.jooq.test.hsqldb.generatedclasses.Public.PUBLIC); + } + + public T_785(java.lang.String alias) { + super(alias, org.jooq.test.hsqldb.generatedclasses.Public.PUBLIC, org.jooq.test.hsqldb.generatedclasses.tables.T_785.T_785); + } + + @Override + public org.jooq.test.hsqldb.generatedclasses.tables.T_785 as(java.lang.String alias) { + return new org.jooq.test.hsqldb.generatedclasses.tables.T_785(alias); + } +} diff --git a/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/tables/T_937.java b/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/tables/T_937.java new file mode 100644 index 00000000000..b9301a98691 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/tables/T_937.java @@ -0,0 +1,61 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.hsqldb.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class T_937 extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = 502816630; + + /** + * The singleton instance of PUBLIC.T_937 + */ + public static final org.jooq.test.hsqldb.generatedclasses.tables.T_937 T_937 = new org.jooq.test.hsqldb.generatedclasses.tables.T_937(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.hsqldb.generatedclasses.tables.records.T_937Record.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final org.jooq.TableField T_937_ = createField("T_937", org.jooq.impl.SQLDataType.INTEGER, this); + + public T_937() { + super("T_937", org.jooq.test.hsqldb.generatedclasses.Public.PUBLIC); + } + + public T_937(java.lang.String alias) { + super(alias, org.jooq.test.hsqldb.generatedclasses.Public.PUBLIC, org.jooq.test.hsqldb.generatedclasses.tables.T_937.T_937); + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.test.hsqldb.generatedclasses.Keys.T_937; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.test.hsqldb.generatedclasses.Keys.T_937); + } + + @Override + public org.jooq.test.hsqldb.generatedclasses.tables.T_937 as(java.lang.String alias) { + return new org.jooq.test.hsqldb.generatedclasses.tables.T_937(alias); + } +} diff --git a/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/tables/VAuthor.java b/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/tables/VAuthor.java new file mode 100644 index 00000000000..d57010630eb --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/tables/VAuthor.java @@ -0,0 +1,73 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.hsqldb.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class VAuthor extends org.jooq.impl.TableImpl { + + private static final long serialVersionUID = 24704307; + + /** + * The singleton instance of PUBLIC.V_AUTHOR + */ + public static final org.jooq.test.hsqldb.generatedclasses.tables.VAuthor V_AUTHOR = new org.jooq.test.hsqldb.generatedclasses.tables.VAuthor(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.hsqldb.generatedclasses.tables.records.VAuthorRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + */ + public final org.jooq.TableField ID = createField("ID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField FIRST_NAME = createField("FIRST_NAME", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField LAST_NAME = createField("LAST_NAME", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField DATE_OF_BIRTH = createField("DATE_OF_BIRTH", org.jooq.impl.SQLDataType.DATE, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField YEAR_OF_BIRTH = createField("YEAR_OF_BIRTH", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField ADDRESS = createField("ADDRESS", org.jooq.impl.SQLDataType.VARCHAR, this); + + public VAuthor() { + super("V_AUTHOR", org.jooq.test.hsqldb.generatedclasses.Public.PUBLIC); + } + + public VAuthor(java.lang.String alias) { + super(alias, org.jooq.test.hsqldb.generatedclasses.Public.PUBLIC, org.jooq.test.hsqldb.generatedclasses.tables.VAuthor.V_AUTHOR); + } + + @Override + public org.jooq.test.hsqldb.generatedclasses.tables.VAuthor as(java.lang.String alias) { + return new org.jooq.test.hsqldb.generatedclasses.tables.VAuthor(alias); + } +} diff --git a/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/tables/VBook.java b/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/tables/VBook.java new file mode 100644 index 00000000000..621b612976b --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/tables/VBook.java @@ -0,0 +1,88 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.hsqldb.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class VBook extends org.jooq.impl.TableImpl { + + private static final long serialVersionUID = 1964279047; + + /** + * The singleton instance of PUBLIC.V_BOOK + */ + public static final org.jooq.test.hsqldb.generatedclasses.tables.VBook V_BOOK = new org.jooq.test.hsqldb.generatedclasses.tables.VBook(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.hsqldb.generatedclasses.tables.records.VBookRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + */ + public final org.jooq.TableField ID = createField("ID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField AUTHOR_ID = createField("AUTHOR_ID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField CO_AUTHOR_ID = createField("CO_AUTHOR_ID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField DETAILS_ID = createField("DETAILS_ID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField TITLE = createField("TITLE", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField PUBLISHED_IN = createField("PUBLISHED_IN", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField LANGUAGE_ID = createField("LANGUAGE_ID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField CONTENT_TEXT = createField("CONTENT_TEXT", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField CONTENT_PDF = createField("CONTENT_PDF", org.jooq.impl.SQLDataType.VARBINARY, this); + + public VBook() { + super("V_BOOK", org.jooq.test.hsqldb.generatedclasses.Public.PUBLIC); + } + + public VBook(java.lang.String alias) { + super(alias, org.jooq.test.hsqldb.generatedclasses.Public.PUBLIC, org.jooq.test.hsqldb.generatedclasses.tables.VBook.V_BOOK); + } + + @Override + public org.jooq.test.hsqldb.generatedclasses.tables.VBook as(java.lang.String alias) { + return new org.jooq.test.hsqldb.generatedclasses.tables.VBook(alias); + } +} diff --git a/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/tables/VLibrary.java b/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/tables/VLibrary.java new file mode 100644 index 00000000000..48b82fce54e --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/tables/VLibrary.java @@ -0,0 +1,53 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.hsqldb.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class VLibrary extends org.jooq.impl.TableImpl { + + private static final long serialVersionUID = -2033253211; + + /** + * The singleton instance of PUBLIC.V_LIBRARY + */ + public static final org.jooq.test.hsqldb.generatedclasses.tables.VLibrary V_LIBRARY = new org.jooq.test.hsqldb.generatedclasses.tables.VLibrary(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.hsqldb.generatedclasses.tables.records.VLibraryRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + */ + public final org.jooq.TableField AUTHOR = createField("AUTHOR", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField TITLE = createField("TITLE", org.jooq.impl.SQLDataType.VARCHAR, this); + + public VLibrary() { + super("V_LIBRARY", org.jooq.test.hsqldb.generatedclasses.Public.PUBLIC); + } + + public VLibrary(java.lang.String alias) { + super(alias, org.jooq.test.hsqldb.generatedclasses.Public.PUBLIC, org.jooq.test.hsqldb.generatedclasses.tables.VLibrary.V_LIBRARY); + } + + @Override + public org.jooq.test.hsqldb.generatedclasses.tables.VLibrary as(java.lang.String alias) { + return new org.jooq.test.hsqldb.generatedclasses.tables.VLibrary(alias); + } +} diff --git a/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/tables/XTestCase_64_69.java b/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/tables/XTestCase_64_69.java new file mode 100644 index 00000000000..38514f7900a --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/tables/XTestCase_64_69.java @@ -0,0 +1,78 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.hsqldb.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class XTestCase_64_69 extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = -986018573; + + /** + * The singleton instance of PUBLIC.X_TEST_CASE_64_69 + */ + public static final org.jooq.test.hsqldb.generatedclasses.tables.XTestCase_64_69 X_TEST_CASE_64_69 = new org.jooq.test.hsqldb.generatedclasses.tables.XTestCase_64_69(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.hsqldb.generatedclasses.tables.records.XTestCase_64_69Record.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final org.jooq.TableField ID = createField("ID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_X_TEST_CASE_64_69
+	 * FOREIGN KEY (UNUSED_ID)
+	 * REFERENCES PUBLIC.X_UNUSED (ID)
+	 * 
+ */ + public final org.jooq.TableField UNUSED_ID = createField("UNUSED_ID", org.jooq.impl.SQLDataType.INTEGER, this); + + public XTestCase_64_69() { + super("X_TEST_CASE_64_69", org.jooq.test.hsqldb.generatedclasses.Public.PUBLIC); + } + + public XTestCase_64_69(java.lang.String alias) { + super(alias, org.jooq.test.hsqldb.generatedclasses.Public.PUBLIC, org.jooq.test.hsqldb.generatedclasses.tables.XTestCase_64_69.X_TEST_CASE_64_69); + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.test.hsqldb.generatedclasses.Keys.PK_X_TEST_CASE_64_69; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.test.hsqldb.generatedclasses.Keys.PK_X_TEST_CASE_64_69); + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getReferences() { + return java.util.Arrays.>asList(org.jooq.test.hsqldb.generatedclasses.Keys.FK_X_TEST_CASE_64_69); + } + + @Override + public org.jooq.test.hsqldb.generatedclasses.tables.XTestCase_64_69 as(java.lang.String alias) { + return new org.jooq.test.hsqldb.generatedclasses.tables.XTestCase_64_69(alias); + } +} diff --git a/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/tables/XTestCase_71.java b/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/tables/XTestCase_71.java new file mode 100644 index 00000000000..30ee63f330d --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/tables/XTestCase_71.java @@ -0,0 +1,78 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.hsqldb.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class XTestCase_71 extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = -1899206113; + + /** + * The singleton instance of PUBLIC.X_TEST_CASE_71 + */ + public static final org.jooq.test.hsqldb.generatedclasses.tables.XTestCase_71 X_TEST_CASE_71 = new org.jooq.test.hsqldb.generatedclasses.tables.XTestCase_71(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.hsqldb.generatedclasses.tables.records.XTestCase_71Record.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final org.jooq.TableField ID = createField("ID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_X_TEST_CASE_71
+	 * FOREIGN KEY (TEST_CASE_64_69_ID)
+	 * REFERENCES PUBLIC.X_TEST_CASE_64_69 (ID)
+	 * 
+ */ + public final org.jooq.TableField TEST_CASE_64_69_ID = createField("TEST_CASE_64_69_ID", org.jooq.impl.SQLDataType.SMALLINT, this); + + public XTestCase_71() { + super("X_TEST_CASE_71", org.jooq.test.hsqldb.generatedclasses.Public.PUBLIC); + } + + public XTestCase_71(java.lang.String alias) { + super(alias, org.jooq.test.hsqldb.generatedclasses.Public.PUBLIC, org.jooq.test.hsqldb.generatedclasses.tables.XTestCase_71.X_TEST_CASE_71); + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.test.hsqldb.generatedclasses.Keys.PK_X_TEST_CASE_71; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.test.hsqldb.generatedclasses.Keys.PK_X_TEST_CASE_71); + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getReferences() { + return java.util.Arrays.>asList(org.jooq.test.hsqldb.generatedclasses.Keys.FK_X_TEST_CASE_71); + } + + @Override + public org.jooq.test.hsqldb.generatedclasses.tables.XTestCase_71 as(java.lang.String alias) { + return new org.jooq.test.hsqldb.generatedclasses.tables.XTestCase_71(alias); + } +} diff --git a/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/tables/XTestCase_85.java b/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/tables/XTestCase_85.java new file mode 100644 index 00000000000..9be6380f18d --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/tables/XTestCase_85.java @@ -0,0 +1,89 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.hsqldb.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class XTestCase_85 extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = 1170551754; + + /** + * The singleton instance of PUBLIC.X_TEST_CASE_85 + */ + public static final org.jooq.test.hsqldb.generatedclasses.tables.XTestCase_85 X_TEST_CASE_85 = new org.jooq.test.hsqldb.generatedclasses.tables.XTestCase_85(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.hsqldb.generatedclasses.tables.records.XTestCase_85Record.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final org.jooq.TableField ID = createField("ID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_X_TEST_CASE_85
+	 * FOREIGN KEY (X_UNUSED_ID, X_UNUSED_NAME)
+	 * REFERENCES PUBLIC.X_UNUSED (ID, NAME)
+	 * 
+ */ + public final org.jooq.TableField X_UNUSED_ID = createField("X_UNUSED_ID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_X_TEST_CASE_85
+	 * FOREIGN KEY (X_UNUSED_ID, X_UNUSED_NAME)
+	 * REFERENCES PUBLIC.X_UNUSED (ID, NAME)
+	 * 
+ */ + public final org.jooq.TableField X_UNUSED_NAME = createField("X_UNUSED_NAME", org.jooq.impl.SQLDataType.VARCHAR, this); + + public XTestCase_85() { + super("X_TEST_CASE_85", org.jooq.test.hsqldb.generatedclasses.Public.PUBLIC); + } + + public XTestCase_85(java.lang.String alias) { + super(alias, org.jooq.test.hsqldb.generatedclasses.Public.PUBLIC, org.jooq.test.hsqldb.generatedclasses.tables.XTestCase_85.X_TEST_CASE_85); + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.test.hsqldb.generatedclasses.Keys.PK_X_TEST_CASE_85; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.test.hsqldb.generatedclasses.Keys.PK_X_TEST_CASE_85); + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getReferences() { + return java.util.Arrays.>asList(org.jooq.test.hsqldb.generatedclasses.Keys.FK_X_TEST_CASE_85); + } + + @Override + public org.jooq.test.hsqldb.generatedclasses.tables.XTestCase_85 as(java.lang.String alias) { + return new org.jooq.test.hsqldb.generatedclasses.tables.XTestCase_85(alias); + } +} diff --git a/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/tables/XUnused.java b/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/tables/XUnused.java new file mode 100644 index 00000000000..dcdef9fd52e --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/tables/XUnused.java @@ -0,0 +1,156 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.hsqldb.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class XUnused extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = 1841972521; + + /** + * The singleton instance of PUBLIC.X_UNUSED + */ + public static final org.jooq.test.hsqldb.generatedclasses.tables.XUnused X_UNUSED = new org.jooq.test.hsqldb.generatedclasses.tables.XUnused(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.hsqldb.generatedclasses.tables.records.XUnusedRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final org.jooq.TableField ID = createField("ID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final org.jooq.TableField NAME = createField("NAME", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField BIG_INTEGER = createField("BIG_INTEGER", org.jooq.impl.SQLDataType.DECIMAL_INTEGER, this); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_X_UNUSED_SELF
+	 * FOREIGN KEY (ID_REF, NAME_REF)
+	 * REFERENCES PUBLIC.X_UNUSED (ID, NAME)
+	 * 
+ */ + public final org.jooq.TableField ID_REF = createField("ID_REF", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField CLASS = createField("CLASS", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField FIELDS = createField("FIELDS", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField CONFIGURATION = createField("CONFIGURATION", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField U_D_T = createField("U_D_T", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField META_DATA = createField("META_DATA", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField TYPE0 = createField("TYPE0", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField PRIMARY_KEY = createField("PRIMARY_KEY", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField PRIMARYKEY = createField("PRIMARYKEY", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_X_UNUSED_SELF
+	 * FOREIGN KEY (ID_REF, NAME_REF)
+	 * REFERENCES PUBLIC.X_UNUSED (ID, NAME)
+	 * 
+ */ + public final org.jooq.TableField NAME_REF = createField("NAME_REF", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField FIELD_737 = createField("FIELD 737", org.jooq.impl.SQLDataType.DECIMAL, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField CONNECTION = createField("CONNECTION", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField PREPARED_STATEMENT = createField("PREPARED_STATEMENT", org.jooq.impl.SQLDataType.INTEGER, this); + + public XUnused() { + super("X_UNUSED", org.jooq.test.hsqldb.generatedclasses.Public.PUBLIC); + } + + public XUnused(java.lang.String alias) { + super(alias, org.jooq.test.hsqldb.generatedclasses.Public.PUBLIC, org.jooq.test.hsqldb.generatedclasses.tables.XUnused.X_UNUSED); + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.test.hsqldb.generatedclasses.Keys.PK_X_UNUSED; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.test.hsqldb.generatedclasses.Keys.PK_X_UNUSED, org.jooq.test.hsqldb.generatedclasses.Keys.UK_X_UNUSED_ID); + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getReferences() { + return java.util.Arrays.>asList(org.jooq.test.hsqldb.generatedclasses.Keys.FK_X_UNUSED_SELF); + } + + @Override + public org.jooq.test.hsqldb.generatedclasses.tables.XUnused as(java.lang.String alias) { + return new org.jooq.test.hsqldb.generatedclasses.tables.XUnused(alias); + } +} diff --git a/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/tables/records/BigDecimalRecord.java b/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/tables/records/BigDecimalRecord.java new file mode 100644 index 00000000000..a2c1abd894e --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/tables/records/BigDecimalRecord.java @@ -0,0 +1,47 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.hsqldb.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + */ +public class BigDecimalRecord extends org.jooq.impl.TableRecordImpl { + + private static final long serialVersionUID = 465745930; + + /** + * An uncommented item + */ + public void setId(java.lang.Integer value) { + setValue(org.jooq.test.hsqldb.generatedclasses.tables.BigDecimal.BIG_DECIMAL.ID, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getId() { + return getValue(org.jooq.test.hsqldb.generatedclasses.tables.BigDecimal.BIG_DECIMAL.ID); + } + + /** + * An uncommented item + */ + public void setOther(java.math.BigInteger value) { + setValue(org.jooq.test.hsqldb.generatedclasses.tables.BigDecimal.BIG_DECIMAL.OTHER, value); + } + + /** + * An uncommented item + */ + public java.math.BigInteger getOther() { + return getValue(org.jooq.test.hsqldb.generatedclasses.tables.BigDecimal.BIG_DECIMAL.OTHER); + } + + /** + * Create a detached BigDecimalRecord + */ + public BigDecimalRecord() { + super(org.jooq.test.hsqldb.generatedclasses.tables.BigDecimal.BIG_DECIMAL); + } +} diff --git a/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/tables/records/ClassRecord.java b/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/tables/records/ClassRecord.java new file mode 100644 index 00000000000..69817325d17 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/tables/records/ClassRecord.java @@ -0,0 +1,33 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.hsqldb.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + */ +public class ClassRecord extends org.jooq.impl.TableRecordImpl { + + private static final long serialVersionUID = 626883555; + + /** + * An uncommented item + */ + public void setClass_(java.lang.Integer value) { + setValue(org.jooq.test.hsqldb.generatedclasses.tables.Class.CLASS.CLASS_, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getClass_() { + return getValue(org.jooq.test.hsqldb.generatedclasses.tables.Class.CLASS.CLASS_); + } + + /** + * Create a detached ClassRecord + */ + public ClassRecord() { + super(org.jooq.test.hsqldb.generatedclasses.tables.Class.CLASS); + } +} diff --git a/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/tables/records/ConnectionRecord.java b/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/tables/records/ConnectionRecord.java new file mode 100644 index 00000000000..ebb9dac8c13 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/tables/records/ConnectionRecord.java @@ -0,0 +1,33 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.hsqldb.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + */ +public class ConnectionRecord extends org.jooq.impl.TableRecordImpl { + + private static final long serialVersionUID = 141085811; + + /** + * An uncommented item + */ + public void setId(java.lang.Integer value) { + setValue(org.jooq.test.hsqldb.generatedclasses.tables.Connection.CONNECTION.ID, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getId() { + return getValue(org.jooq.test.hsqldb.generatedclasses.tables.Connection.CONNECTION.ID); + } + + /** + * Create a detached ConnectionRecord + */ + public ConnectionRecord() { + super(org.jooq.test.hsqldb.generatedclasses.tables.Connection.CONNECTION); + } +} diff --git a/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/tables/records/IntegerRecord.java b/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/tables/records/IntegerRecord.java new file mode 100644 index 00000000000..6f4cd71bee6 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/tables/records/IntegerRecord.java @@ -0,0 +1,33 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.hsqldb.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + */ +public class IntegerRecord extends org.jooq.impl.TableRecordImpl { + + private static final long serialVersionUID = -1976883217; + + /** + * An uncommented item + */ + public void setId(java.lang.Integer value) { + setValue(org.jooq.test.hsqldb.generatedclasses.tables.Integer.INTEGER.ID, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getId() { + return getValue(org.jooq.test.hsqldb.generatedclasses.tables.Integer.INTEGER.ID); + } + + /** + * Create a detached IntegerRecord + */ + public IntegerRecord() { + super(org.jooq.test.hsqldb.generatedclasses.tables.Integer.INTEGER); + } +} diff --git a/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/tables/records/LongRecord.java b/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/tables/records/LongRecord.java new file mode 100644 index 00000000000..9312cc7b483 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/tables/records/LongRecord.java @@ -0,0 +1,47 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.hsqldb.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + */ +public class LongRecord extends org.jooq.impl.TableRecordImpl { + + private static final long serialVersionUID = 1681524613; + + /** + * An uncommented item + */ + public void setId(java.lang.Integer value) { + setValue(org.jooq.test.hsqldb.generatedclasses.tables.Long.LONG.ID, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getId() { + return getValue(org.jooq.test.hsqldb.generatedclasses.tables.Long.LONG.ID); + } + + /** + * An uncommented item + */ + public void setOther(java.lang.Long value) { + setValue(org.jooq.test.hsqldb.generatedclasses.tables.Long.LONG.OTHER, value); + } + + /** + * An uncommented item + */ + public java.lang.Long getOther() { + return getValue(org.jooq.test.hsqldb.generatedclasses.tables.Long.LONG.OTHER); + } + + /** + * Create a detached LongRecord + */ + public LongRecord() { + super(org.jooq.test.hsqldb.generatedclasses.tables.Long.LONG); + } +} diff --git a/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/tables/records/ObjectRecord.java b/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/tables/records/ObjectRecord.java new file mode 100644 index 00000000000..ff75b9b7467 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/tables/records/ObjectRecord.java @@ -0,0 +1,53 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.hsqldb.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + */ +public class ObjectRecord extends org.jooq.impl.TableRecordImpl { + + private static final long serialVersionUID = 1830321605; + + /** + * An uncommented item + */ + public void setId(java.lang.Integer value) { + setValue(org.jooq.test.hsqldb.generatedclasses.tables.Object.OBJECT.ID, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getId() { + return getValue(org.jooq.test.hsqldb.generatedclasses.tables.Object.OBJECT.ID); + } + + /** + * An uncommented item + * + * The SQL type of this item (OTHER, null) could not be mapped.
+ * Deserialising this field might not work! + */ + public void setOther(java.lang.Object value) { + setValue(org.jooq.test.hsqldb.generatedclasses.tables.Object.OBJECT.OTHER, value); + } + + /** + * An uncommented item + * + * The SQL type of this item (OTHER, null) could not be mapped.
+ * Deserialising this field might not work! + */ + public java.lang.Object getOther() { + return getValue(org.jooq.test.hsqldb.generatedclasses.tables.Object.OBJECT.OTHER); + } + + /** + * Create a detached ObjectRecord + */ + public ObjectRecord() { + super(org.jooq.test.hsqldb.generatedclasses.tables.Object.OBJECT); + } +} diff --git a/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/tables/records/PreparedStatementRecord.java b/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/tables/records/PreparedStatementRecord.java new file mode 100644 index 00000000000..4c0bbc7ae5c --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/tables/records/PreparedStatementRecord.java @@ -0,0 +1,33 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.hsqldb.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + */ +public class PreparedStatementRecord extends org.jooq.impl.TableRecordImpl { + + private static final long serialVersionUID = -1182157434; + + /** + * An uncommented item + */ + public void setId(java.lang.Integer value) { + setValue(org.jooq.test.hsqldb.generatedclasses.tables.PreparedStatement.PREPARED_STATEMENT.ID, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getId() { + return getValue(org.jooq.test.hsqldb.generatedclasses.tables.PreparedStatement.PREPARED_STATEMENT.ID); + } + + /** + * Create a detached PreparedStatementRecord + */ + public PreparedStatementRecord() { + super(org.jooq.test.hsqldb.generatedclasses.tables.PreparedStatement.PREPARED_STATEMENT); + } +} diff --git a/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/tables/records/StringRecord.java b/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/tables/records/StringRecord.java new file mode 100644 index 00000000000..11ec368d7c6 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/tables/records/StringRecord.java @@ -0,0 +1,47 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.hsqldb.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + */ +public class StringRecord extends org.jooq.impl.TableRecordImpl { + + private static final long serialVersionUID = -1644005115; + + /** + * An uncommented item + */ + public void setId(java.lang.Integer value) { + setValue(org.jooq.test.hsqldb.generatedclasses.tables.String.STRING.ID, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getId() { + return getValue(org.jooq.test.hsqldb.generatedclasses.tables.String.STRING.ID); + } + + /** + * An uncommented item + */ + public void setOther(java.lang.String value) { + setValue(org.jooq.test.hsqldb.generatedclasses.tables.String.STRING.OTHER, value); + } + + /** + * An uncommented item + */ + public java.lang.String getOther() { + return getValue(org.jooq.test.hsqldb.generatedclasses.tables.String.STRING.OTHER); + } + + /** + * Create a detached StringRecord + */ + public StringRecord() { + super(org.jooq.test.hsqldb.generatedclasses.tables.String.STRING); + } +} diff --git a/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/tables/records/SystemRecord.java b/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/tables/records/SystemRecord.java new file mode 100644 index 00000000000..5e927068d21 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/tables/records/SystemRecord.java @@ -0,0 +1,33 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.hsqldb.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + */ +public class SystemRecord extends org.jooq.impl.TableRecordImpl { + + private static final long serialVersionUID = 1587099987; + + /** + * An uncommented item + */ + public void setId(java.lang.Integer value) { + setValue(org.jooq.test.hsqldb.generatedclasses.tables.System.SYSTEM.ID, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getId() { + return getValue(org.jooq.test.hsqldb.generatedclasses.tables.System.SYSTEM.ID); + } + + /** + * Create a detached SystemRecord + */ + public SystemRecord() { + super(org.jooq.test.hsqldb.generatedclasses.tables.System.SYSTEM); + } +} diff --git a/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/tables/records/TArraysRecord.java b/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/tables/records/TArraysRecord.java new file mode 100644 index 00000000000..26652eb1a26 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/tables/records/TArraysRecord.java @@ -0,0 +1,79 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.hsqldb.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + */ +public class TArraysRecord extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = -1322756712; + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setId(java.lang.Integer value) { + setValue(org.jooq.test.hsqldb.generatedclasses.tables.TArrays.T_ARRAYS.ID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.lang.Integer getId() { + return getValue(org.jooq.test.hsqldb.generatedclasses.tables.TArrays.T_ARRAYS.ID); + } + + /** + * An uncommented item + */ + public void setStringArray(java.lang.String[] value) { + setValue(org.jooq.test.hsqldb.generatedclasses.tables.TArrays.T_ARRAYS.STRING_ARRAY, value); + } + + /** + * An uncommented item + */ + public java.lang.String[] getStringArray() { + return getValue(org.jooq.test.hsqldb.generatedclasses.tables.TArrays.T_ARRAYS.STRING_ARRAY); + } + + /** + * An uncommented item + */ + public void setNumberArray(java.lang.Integer[] value) { + setValue(org.jooq.test.hsqldb.generatedclasses.tables.TArrays.T_ARRAYS.NUMBER_ARRAY, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer[] getNumberArray() { + return getValue(org.jooq.test.hsqldb.generatedclasses.tables.TArrays.T_ARRAYS.NUMBER_ARRAY); + } + + /** + * An uncommented item + */ + public void setDateArray(java.sql.Date[] value) { + setValue(org.jooq.test.hsqldb.generatedclasses.tables.TArrays.T_ARRAYS.DATE_ARRAY, value); + } + + /** + * An uncommented item + */ + public java.sql.Date[] getDateArray() { + return getValue(org.jooq.test.hsqldb.generatedclasses.tables.TArrays.T_ARRAYS.DATE_ARRAY); + } + + /** + * Create a detached TArraysRecord + */ + public TArraysRecord() { + super(org.jooq.test.hsqldb.generatedclasses.tables.TArrays.T_ARRAYS); + } +} diff --git a/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/tables/records/TAuthorRecord.java b/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/tables/records/TAuthorRecord.java new file mode 100644 index 00000000000..4ea7df9fa06 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/tables/records/TAuthorRecord.java @@ -0,0 +1,131 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.hsqldb.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + */ +public class TAuthorRecord extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = 922676107; + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setId(java.lang.Integer value) { + setValue(org.jooq.test.hsqldb.generatedclasses.tables.TAuthor.T_AUTHOR.ID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.lang.Integer getId() { + return getValue(org.jooq.test.hsqldb.generatedclasses.tables.TAuthor.T_AUTHOR.ID); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.util.List fetchTBookListByAuthorId() { + return create() + .selectFrom(org.jooq.test.hsqldb.generatedclasses.tables.TBook.T_BOOK) + .where(org.jooq.test.hsqldb.generatedclasses.tables.TBook.T_BOOK.AUTHOR_ID.equal(getValue(org.jooq.test.hsqldb.generatedclasses.tables.TAuthor.T_AUTHOR.ID))) + .fetch(); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.util.List fetchTBookListByCoAuthorId() { + return create() + .selectFrom(org.jooq.test.hsqldb.generatedclasses.tables.TBook.T_BOOK) + .where(org.jooq.test.hsqldb.generatedclasses.tables.TBook.T_BOOK.CO_AUTHOR_ID.equal(getValue(org.jooq.test.hsqldb.generatedclasses.tables.TAuthor.T_AUTHOR.ID))) + .fetch(); + } + + /** + * An uncommented item + */ + public void setFirstName(java.lang.String value) { + setValue(org.jooq.test.hsqldb.generatedclasses.tables.TAuthor.T_AUTHOR.FIRST_NAME, value); + } + + /** + * An uncommented item + */ + public java.lang.String getFirstName() { + return getValue(org.jooq.test.hsqldb.generatedclasses.tables.TAuthor.T_AUTHOR.FIRST_NAME); + } + + /** + * An uncommented item + */ + public void setLastName(java.lang.String value) { + setValue(org.jooq.test.hsqldb.generatedclasses.tables.TAuthor.T_AUTHOR.LAST_NAME, value); + } + + /** + * An uncommented item + */ + public java.lang.String getLastName() { + return getValue(org.jooq.test.hsqldb.generatedclasses.tables.TAuthor.T_AUTHOR.LAST_NAME); + } + + /** + * An uncommented item + */ + public void setDateOfBirth(java.sql.Date value) { + setValue(org.jooq.test.hsqldb.generatedclasses.tables.TAuthor.T_AUTHOR.DATE_OF_BIRTH, value); + } + + /** + * An uncommented item + */ + public java.sql.Date getDateOfBirth() { + return getValue(org.jooq.test.hsqldb.generatedclasses.tables.TAuthor.T_AUTHOR.DATE_OF_BIRTH); + } + + /** + * An uncommented item + */ + public void setYearOfBirth(java.lang.Integer value) { + setValue(org.jooq.test.hsqldb.generatedclasses.tables.TAuthor.T_AUTHOR.YEAR_OF_BIRTH, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getYearOfBirth() { + return getValue(org.jooq.test.hsqldb.generatedclasses.tables.TAuthor.T_AUTHOR.YEAR_OF_BIRTH); + } + + /** + * An uncommented item + */ + public void setAddress(java.lang.String value) { + setValue(org.jooq.test.hsqldb.generatedclasses.tables.TAuthor.T_AUTHOR.ADDRESS, value); + } + + /** + * An uncommented item + */ + public java.lang.String getAddress() { + return getValue(org.jooq.test.hsqldb.generatedclasses.tables.TAuthor.T_AUTHOR.ADDRESS); + } + + /** + * Create a detached TAuthorRecord + */ + public TAuthorRecord() { + super(org.jooq.test.hsqldb.generatedclasses.tables.TAuthor.T_AUTHOR); + } +} diff --git a/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/tables/records/TBookRecord.java b/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/tables/records/TBookRecord.java new file mode 100644 index 00000000000..feaf17b63ec --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/tables/records/TBookRecord.java @@ -0,0 +1,229 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.hsqldb.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + */ +public class TBookRecord extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = 1112541178; + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setId(java.lang.Integer value) { + setValue(org.jooq.test.hsqldb.generatedclasses.tables.TBook.T_BOOK.ID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.lang.Integer getId() { + return getValue(org.jooq.test.hsqldb.generatedclasses.tables.TBook.T_BOOK.ID); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.util.List fetchTBookToBookStoreList() { + return create() + .selectFrom(org.jooq.test.hsqldb.generatedclasses.tables.TBookToBookStore.T_BOOK_TO_BOOK_STORE) + .where(org.jooq.test.hsqldb.generatedclasses.tables.TBookToBookStore.T_BOOK_TO_BOOK_STORE.BOOK_ID.equal(getValue(org.jooq.test.hsqldb.generatedclasses.tables.TBook.T_BOOK.ID))) + .fetch(); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_T_BOOK_AUTHOR_ID
+	 * FOREIGN KEY (AUTHOR_ID)
+	 * REFERENCES PUBLIC.T_AUTHOR (ID)
+	 * 
+ */ + public void setAuthorId(java.lang.Integer value) { + setValue(org.jooq.test.hsqldb.generatedclasses.tables.TBook.T_BOOK.AUTHOR_ID, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_T_BOOK_AUTHOR_ID
+	 * FOREIGN KEY (AUTHOR_ID)
+	 * REFERENCES PUBLIC.T_AUTHOR (ID)
+	 * 
+ */ + public java.lang.Integer getAuthorId() { + return getValue(org.jooq.test.hsqldb.generatedclasses.tables.TBook.T_BOOK.AUTHOR_ID); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_T_BOOK_AUTHOR_ID
+	 * FOREIGN KEY (AUTHOR_ID)
+	 * REFERENCES PUBLIC.T_AUTHOR (ID)
+	 * 
+ */ + public org.jooq.test.hsqldb.generatedclasses.tables.records.TAuthorRecord fetchTAuthorByAuthorId() { + return create() + .selectFrom(org.jooq.test.hsqldb.generatedclasses.tables.TAuthor.T_AUTHOR) + .where(org.jooq.test.hsqldb.generatedclasses.tables.TAuthor.T_AUTHOR.ID.equal(getValue(org.jooq.test.hsqldb.generatedclasses.tables.TBook.T_BOOK.AUTHOR_ID))) + .fetchOne(); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_T_BOOK_CO_AUTHOR_ID
+	 * FOREIGN KEY (CO_AUTHOR_ID)
+	 * REFERENCES PUBLIC.T_AUTHOR (ID)
+	 * 
+ */ + public void setCoAuthorId(java.lang.Integer value) { + setValue(org.jooq.test.hsqldb.generatedclasses.tables.TBook.T_BOOK.CO_AUTHOR_ID, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_T_BOOK_CO_AUTHOR_ID
+	 * FOREIGN KEY (CO_AUTHOR_ID)
+	 * REFERENCES PUBLIC.T_AUTHOR (ID)
+	 * 
+ */ + public java.lang.Integer getCoAuthorId() { + return getValue(org.jooq.test.hsqldb.generatedclasses.tables.TBook.T_BOOK.CO_AUTHOR_ID); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_T_BOOK_CO_AUTHOR_ID
+	 * FOREIGN KEY (CO_AUTHOR_ID)
+	 * REFERENCES PUBLIC.T_AUTHOR (ID)
+	 * 
+ */ + public org.jooq.test.hsqldb.generatedclasses.tables.records.TAuthorRecord fetchTAuthorByCoAuthorId() { + return create() + .selectFrom(org.jooq.test.hsqldb.generatedclasses.tables.TAuthor.T_AUTHOR) + .where(org.jooq.test.hsqldb.generatedclasses.tables.TAuthor.T_AUTHOR.ID.equal(getValue(org.jooq.test.hsqldb.generatedclasses.tables.TBook.T_BOOK.CO_AUTHOR_ID))) + .fetchOne(); + } + + /** + * An uncommented item + */ + public void setDetailsId(java.lang.Integer value) { + setValue(org.jooq.test.hsqldb.generatedclasses.tables.TBook.T_BOOK.DETAILS_ID, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getDetailsId() { + return getValue(org.jooq.test.hsqldb.generatedclasses.tables.TBook.T_BOOK.DETAILS_ID); + } + + /** + * An uncommented item + */ + public void setTitle(java.lang.String value) { + setValue(org.jooq.test.hsqldb.generatedclasses.tables.TBook.T_BOOK.TITLE, value); + } + + /** + * An uncommented item + */ + public java.lang.String getTitle() { + return getValue(org.jooq.test.hsqldb.generatedclasses.tables.TBook.T_BOOK.TITLE); + } + + /** + * An uncommented item + */ + public void setPublishedIn(java.lang.Integer value) { + setValue(org.jooq.test.hsqldb.generatedclasses.tables.TBook.T_BOOK.PUBLISHED_IN, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getPublishedIn() { + return getValue(org.jooq.test.hsqldb.generatedclasses.tables.TBook.T_BOOK.PUBLISHED_IN); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_T_BOOK_LANGUAGE_ID
+	 * FOREIGN KEY (LANGUAGE_ID)
+	 * REFERENCES PUBLIC.T_LANGUAGE (ID)
+	 * 
+ */ + public void setLanguageId(org.jooq.test.hsqldb.generatedclasses.enums.TLanguage value) { + setValue(org.jooq.test.hsqldb.generatedclasses.tables.TBook.T_BOOK.LANGUAGE_ID, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_T_BOOK_LANGUAGE_ID
+	 * FOREIGN KEY (LANGUAGE_ID)
+	 * REFERENCES PUBLIC.T_LANGUAGE (ID)
+	 * 
+ */ + public org.jooq.test.hsqldb.generatedclasses.enums.TLanguage getLanguageId() { + return getValue(org.jooq.test.hsqldb.generatedclasses.tables.TBook.T_BOOK.LANGUAGE_ID); + } + + /** + * An uncommented item + */ + public void setContentText(java.lang.String value) { + setValue(org.jooq.test.hsqldb.generatedclasses.tables.TBook.T_BOOK.CONTENT_TEXT, value); + } + + /** + * An uncommented item + */ + public java.lang.String getContentText() { + return getValue(org.jooq.test.hsqldb.generatedclasses.tables.TBook.T_BOOK.CONTENT_TEXT); + } + + /** + * An uncommented item + */ + public void setContentPdf(byte[] value) { + setValue(org.jooq.test.hsqldb.generatedclasses.tables.TBook.T_BOOK.CONTENT_PDF, value); + } + + /** + * An uncommented item + */ + public byte[] getContentPdf() { + return getValue(org.jooq.test.hsqldb.generatedclasses.tables.TBook.T_BOOK.CONTENT_PDF); + } + + /** + * Create a detached TBookRecord + */ + public TBookRecord() { + super(org.jooq.test.hsqldb.generatedclasses.tables.TBook.T_BOOK); + } +} diff --git a/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/tables/records/TBookStoreRecord.java b/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/tables/records/TBookStoreRecord.java new file mode 100644 index 00000000000..6621b30c53e --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/tables/records/TBookStoreRecord.java @@ -0,0 +1,43 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.hsqldb.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + */ +public class TBookStoreRecord extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = -377265854; + + /** + * An uncommented item + */ + public void setName(java.lang.String value) { + setValue(org.jooq.test.hsqldb.generatedclasses.tables.TBookStore.T_BOOK_STORE.NAME, value); + } + + /** + * An uncommented item + */ + public java.lang.String getName() { + return getValue(org.jooq.test.hsqldb.generatedclasses.tables.TBookStore.T_BOOK_STORE.NAME); + } + + /** + * An uncommented item + */ + public java.util.List fetchTBookToBookStoreList() { + return create() + .selectFrom(org.jooq.test.hsqldb.generatedclasses.tables.TBookToBookStore.T_BOOK_TO_BOOK_STORE) + .where(org.jooq.test.hsqldb.generatedclasses.tables.TBookToBookStore.T_BOOK_TO_BOOK_STORE.BOOK_STORE_NAME.equal(getValue(org.jooq.test.hsqldb.generatedclasses.tables.TBookStore.T_BOOK_STORE.NAME))) + .fetch(); + } + + /** + * Create a detached TBookStoreRecord + */ + public TBookStoreRecord() { + super(org.jooq.test.hsqldb.generatedclasses.tables.TBookStore.T_BOOK_STORE); + } +} diff --git a/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/tables/records/TBookToBookStoreRecord.java b/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/tables/records/TBookToBookStoreRecord.java new file mode 100644 index 00000000000..a604b98a8b7 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/tables/records/TBookToBookStoreRecord.java @@ -0,0 +1,129 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.hsqldb.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + */ +public class TBookToBookStoreRecord extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = 1758607780; + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT FK_B2BS_BS_NAME
+	 * FOREIGN KEY (BOOK_STORE_NAME)
+	 * REFERENCES PUBLIC.T_BOOK_STORE (NAME)
+	 * 
+ */ + public void setBookStoreName(java.lang.String value) { + setValue(org.jooq.test.hsqldb.generatedclasses.tables.TBookToBookStore.T_BOOK_TO_BOOK_STORE.BOOK_STORE_NAME, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT FK_B2BS_BS_NAME
+	 * FOREIGN KEY (BOOK_STORE_NAME)
+	 * REFERENCES PUBLIC.T_BOOK_STORE (NAME)
+	 * 
+ */ + public java.lang.String getBookStoreName() { + return getValue(org.jooq.test.hsqldb.generatedclasses.tables.TBookToBookStore.T_BOOK_TO_BOOK_STORE.BOOK_STORE_NAME); + } + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT FK_B2BS_BS_NAME
+	 * FOREIGN KEY (BOOK_STORE_NAME)
+	 * REFERENCES PUBLIC.T_BOOK_STORE (NAME)
+	 * 
+ */ + public org.jooq.test.hsqldb.generatedclasses.tables.records.TBookStoreRecord fetchTBookStore() { + return create() + .selectFrom(org.jooq.test.hsqldb.generatedclasses.tables.TBookStore.T_BOOK_STORE) + .where(org.jooq.test.hsqldb.generatedclasses.tables.TBookStore.T_BOOK_STORE.NAME.equal(getValue(org.jooq.test.hsqldb.generatedclasses.tables.TBookToBookStore.T_BOOK_TO_BOOK_STORE.BOOK_STORE_NAME))) + .fetchOne(); + } + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT FK_B2BS_B_ID
+	 * FOREIGN KEY (BOOK_ID)
+	 * REFERENCES PUBLIC.T_BOOK (ID)
+	 * 
+ */ + public void setBookId(java.lang.Integer value) { + setValue(org.jooq.test.hsqldb.generatedclasses.tables.TBookToBookStore.T_BOOK_TO_BOOK_STORE.BOOK_ID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT FK_B2BS_B_ID
+	 * FOREIGN KEY (BOOK_ID)
+	 * REFERENCES PUBLIC.T_BOOK (ID)
+	 * 
+ */ + public java.lang.Integer getBookId() { + return getValue(org.jooq.test.hsqldb.generatedclasses.tables.TBookToBookStore.T_BOOK_TO_BOOK_STORE.BOOK_ID); + } + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT FK_B2BS_B_ID
+	 * FOREIGN KEY (BOOK_ID)
+	 * REFERENCES PUBLIC.T_BOOK (ID)
+	 * 
+ */ + public org.jooq.test.hsqldb.generatedclasses.tables.records.TBookRecord fetchTBook() { + return create() + .selectFrom(org.jooq.test.hsqldb.generatedclasses.tables.TBook.T_BOOK) + .where(org.jooq.test.hsqldb.generatedclasses.tables.TBook.T_BOOK.ID.equal(getValue(org.jooq.test.hsqldb.generatedclasses.tables.TBookToBookStore.T_BOOK_TO_BOOK_STORE.BOOK_ID))) + .fetchOne(); + } + + /** + * An uncommented item + */ + public void setStock(java.lang.Integer value) { + setValue(org.jooq.test.hsqldb.generatedclasses.tables.TBookToBookStore.T_BOOK_TO_BOOK_STORE.STOCK, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getStock() { + return getValue(org.jooq.test.hsqldb.generatedclasses.tables.TBookToBookStore.T_BOOK_TO_BOOK_STORE.STOCK); + } + + /** + * Create a detached TBookToBookStoreRecord + */ + public TBookToBookStoreRecord() { + super(org.jooq.test.hsqldb.generatedclasses.tables.TBookToBookStore.T_BOOK_TO_BOOK_STORE); + } +} diff --git a/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/tables/records/TBooleansRecord.java b/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/tables/records/TBooleansRecord.java new file mode 100644 index 00000000000..157afe6f475 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/tables/records/TBooleansRecord.java @@ -0,0 +1,177 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.hsqldb.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + */ +public class TBooleansRecord extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = 1365759302; + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setId(java.lang.Integer value) { + setValue(org.jooq.test.hsqldb.generatedclasses.tables.TBooleans.T_BOOLEANS.ID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.lang.Integer getId() { + return getValue(org.jooq.test.hsqldb.generatedclasses.tables.TBooleans.T_BOOLEANS.ID); + } + + /** + * An uncommented item + */ + public void setOneZero(org.jooq.test._.converters.Boolean_10 value) { + setValue(org.jooq.test.hsqldb.generatedclasses.tables.TBooleans.T_BOOLEANS.ONE_ZERO, value); + } + + /** + * An uncommented item + */ + public org.jooq.test._.converters.Boolean_10 getOneZero() { + return getValue(org.jooq.test.hsqldb.generatedclasses.tables.TBooleans.T_BOOLEANS.ONE_ZERO); + } + + /** + * An uncommented item + */ + public void setTrueFalseLc(org.jooq.test._.converters.Boolean_TF_LC value) { + setValue(org.jooq.test.hsqldb.generatedclasses.tables.TBooleans.T_BOOLEANS.TRUE_FALSE_LC, value); + } + + /** + * An uncommented item + */ + public org.jooq.test._.converters.Boolean_TF_LC getTrueFalseLc() { + return getValue(org.jooq.test.hsqldb.generatedclasses.tables.TBooleans.T_BOOLEANS.TRUE_FALSE_LC); + } + + /** + * An uncommented item + */ + public void setTrueFalseUc(org.jooq.test._.converters.Boolean_TF_UC value) { + setValue(org.jooq.test.hsqldb.generatedclasses.tables.TBooleans.T_BOOLEANS.TRUE_FALSE_UC, value); + } + + /** + * An uncommented item + */ + public org.jooq.test._.converters.Boolean_TF_UC getTrueFalseUc() { + return getValue(org.jooq.test.hsqldb.generatedclasses.tables.TBooleans.T_BOOLEANS.TRUE_FALSE_UC); + } + + /** + * An uncommented item + */ + public void setYesNoLc(org.jooq.test._.converters.Boolean_YES_NO_LC value) { + setValue(org.jooq.test.hsqldb.generatedclasses.tables.TBooleans.T_BOOLEANS.YES_NO_LC, value); + } + + /** + * An uncommented item + */ + public org.jooq.test._.converters.Boolean_YES_NO_LC getYesNoLc() { + return getValue(org.jooq.test.hsqldb.generatedclasses.tables.TBooleans.T_BOOLEANS.YES_NO_LC); + } + + /** + * An uncommented item + */ + public void setYesNoUc(org.jooq.test._.converters.Boolean_YES_NO_UC value) { + setValue(org.jooq.test.hsqldb.generatedclasses.tables.TBooleans.T_BOOLEANS.YES_NO_UC, value); + } + + /** + * An uncommented item + */ + public org.jooq.test._.converters.Boolean_YES_NO_UC getYesNoUc() { + return getValue(org.jooq.test.hsqldb.generatedclasses.tables.TBooleans.T_BOOLEANS.YES_NO_UC); + } + + /** + * An uncommented item + */ + public void setYNLc(org.jooq.test._.converters.Boolean_YN_LC value) { + setValue(org.jooq.test.hsqldb.generatedclasses.tables.TBooleans.T_BOOLEANS.Y_N_LC, value); + } + + /** + * An uncommented item + */ + public org.jooq.test._.converters.Boolean_YN_LC getYNLc() { + return getValue(org.jooq.test.hsqldb.generatedclasses.tables.TBooleans.T_BOOLEANS.Y_N_LC); + } + + /** + * An uncommented item + */ + public void setYNUc(org.jooq.test._.converters.Boolean_YN_UC value) { + setValue(org.jooq.test.hsqldb.generatedclasses.tables.TBooleans.T_BOOLEANS.Y_N_UC, value); + } + + /** + * An uncommented item + */ + public org.jooq.test._.converters.Boolean_YN_UC getYNUc() { + return getValue(org.jooq.test.hsqldb.generatedclasses.tables.TBooleans.T_BOOLEANS.Y_N_UC); + } + + /** + * An uncommented item + */ + public void setVcBoolean(java.lang.Boolean value) { + setValue(org.jooq.test.hsqldb.generatedclasses.tables.TBooleans.T_BOOLEANS.VC_BOOLEAN, value); + } + + /** + * An uncommented item + */ + public java.lang.Boolean getVcBoolean() { + return getValue(org.jooq.test.hsqldb.generatedclasses.tables.TBooleans.T_BOOLEANS.VC_BOOLEAN); + } + + /** + * An uncommented item + */ + public void setCBoolean(java.lang.Boolean value) { + setValue(org.jooq.test.hsqldb.generatedclasses.tables.TBooleans.T_BOOLEANS.C_BOOLEAN, value); + } + + /** + * An uncommented item + */ + public java.lang.Boolean getCBoolean() { + return getValue(org.jooq.test.hsqldb.generatedclasses.tables.TBooleans.T_BOOLEANS.C_BOOLEAN); + } + + /** + * An uncommented item + */ + public void setNBoolean(java.lang.Boolean value) { + setValue(org.jooq.test.hsqldb.generatedclasses.tables.TBooleans.T_BOOLEANS.N_BOOLEAN, value); + } + + /** + * An uncommented item + */ + public java.lang.Boolean getNBoolean() { + return getValue(org.jooq.test.hsqldb.generatedclasses.tables.TBooleans.T_BOOLEANS.N_BOOLEAN); + } + + /** + * Create a detached TBooleansRecord + */ + public TBooleansRecord() { + super(org.jooq.test.hsqldb.generatedclasses.tables.TBooleans.T_BOOLEANS); + } +} diff --git a/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/tables/records/TDatesRecord.java b/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/tables/records/TDatesRecord.java new file mode 100644 index 00000000000..90f67072fc9 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/tables/records/TDatesRecord.java @@ -0,0 +1,107 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.hsqldb.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + */ +public class TDatesRecord extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = 637300834; + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setId(java.lang.Integer value) { + setValue(org.jooq.test.hsqldb.generatedclasses.tables.TDates.T_DATES.ID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.lang.Integer getId() { + return getValue(org.jooq.test.hsqldb.generatedclasses.tables.TDates.T_DATES.ID); + } + + /** + * An uncommented item + */ + public void setD(java.sql.Date value) { + setValue(org.jooq.test.hsqldb.generatedclasses.tables.TDates.T_DATES.D, value); + } + + /** + * An uncommented item + */ + public java.sql.Date getD() { + return getValue(org.jooq.test.hsqldb.generatedclasses.tables.TDates.T_DATES.D); + } + + /** + * An uncommented item + */ + public void setT(java.sql.Time value) { + setValue(org.jooq.test.hsqldb.generatedclasses.tables.TDates.T_DATES.T, value); + } + + /** + * An uncommented item + */ + public java.sql.Time getT() { + return getValue(org.jooq.test.hsqldb.generatedclasses.tables.TDates.T_DATES.T); + } + + /** + * An uncommented item + */ + public void setTs(java.sql.Timestamp value) { + setValue(org.jooq.test.hsqldb.generatedclasses.tables.TDates.T_DATES.TS, value); + } + + /** + * An uncommented item + */ + public java.sql.Timestamp getTs() { + return getValue(org.jooq.test.hsqldb.generatedclasses.tables.TDates.T_DATES.TS); + } + + /** + * An uncommented item + */ + public void setDInt(java.lang.Integer value) { + setValue(org.jooq.test.hsqldb.generatedclasses.tables.TDates.T_DATES.D_INT, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getDInt() { + return getValue(org.jooq.test.hsqldb.generatedclasses.tables.TDates.T_DATES.D_INT); + } + + /** + * An uncommented item + */ + public void setTsBigint(java.lang.Long value) { + setValue(org.jooq.test.hsqldb.generatedclasses.tables.TDates.T_DATES.TS_BIGINT, value); + } + + /** + * An uncommented item + */ + public java.lang.Long getTsBigint() { + return getValue(org.jooq.test.hsqldb.generatedclasses.tables.TDates.T_DATES.TS_BIGINT); + } + + /** + * Create a detached TDatesRecord + */ + public TDatesRecord() { + super(org.jooq.test.hsqldb.generatedclasses.tables.TDates.T_DATES); + } +} diff --git a/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/tables/records/TIdentityPkRecord.java b/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/tables/records/TIdentityPkRecord.java new file mode 100644 index 00000000000..3a9bc3ec777 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/tables/records/TIdentityPkRecord.java @@ -0,0 +1,51 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.hsqldb.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + */ +public class TIdentityPkRecord extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = 301623299; + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setId(java.lang.Integer value) { + setValue(org.jooq.test.hsqldb.generatedclasses.tables.TIdentityPk.T_IDENTITY_PK.ID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.lang.Integer getId() { + return getValue(org.jooq.test.hsqldb.generatedclasses.tables.TIdentityPk.T_IDENTITY_PK.ID); + } + + /** + * An uncommented item + */ + public void setVal(java.lang.Integer value) { + setValue(org.jooq.test.hsqldb.generatedclasses.tables.TIdentityPk.T_IDENTITY_PK.VAL, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getVal() { + return getValue(org.jooq.test.hsqldb.generatedclasses.tables.TIdentityPk.T_IDENTITY_PK.VAL); + } + + /** + * Create a detached TIdentityPkRecord + */ + public TIdentityPkRecord() { + super(org.jooq.test.hsqldb.generatedclasses.tables.TIdentityPk.T_IDENTITY_PK); + } +} diff --git a/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/tables/records/TIdentityRecord.java b/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/tables/records/TIdentityRecord.java new file mode 100644 index 00000000000..2b0b4eaee59 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/tables/records/TIdentityRecord.java @@ -0,0 +1,47 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.hsqldb.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + */ +public class TIdentityRecord extends org.jooq.impl.TableRecordImpl { + + private static final long serialVersionUID = 1061771704; + + /** + * An uncommented item + */ + public void setId(java.lang.Integer value) { + setValue(org.jooq.test.hsqldb.generatedclasses.tables.TIdentity.T_IDENTITY.ID, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getId() { + return getValue(org.jooq.test.hsqldb.generatedclasses.tables.TIdentity.T_IDENTITY.ID); + } + + /** + * An uncommented item + */ + public void setVal(java.lang.Integer value) { + setValue(org.jooq.test.hsqldb.generatedclasses.tables.TIdentity.T_IDENTITY.VAL, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getVal() { + return getValue(org.jooq.test.hsqldb.generatedclasses.tables.TIdentity.T_IDENTITY.VAL); + } + + /** + * Create a detached TIdentityRecord + */ + public TIdentityRecord() { + super(org.jooq.test.hsqldb.generatedclasses.tables.TIdentity.T_IDENTITY); + } +} diff --git a/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/tables/records/TTriggersRecord.java b/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/tables/records/TTriggersRecord.java new file mode 100644 index 00000000000..50b091e2954 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/tables/records/TTriggersRecord.java @@ -0,0 +1,65 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.hsqldb.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + */ +public class TTriggersRecord extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = 397377814; + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setIdGenerated(java.lang.Integer value) { + setValue(org.jooq.test.hsqldb.generatedclasses.tables.TTriggers.T_TRIGGERS.ID_GENERATED, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.lang.Integer getIdGenerated() { + return getValue(org.jooq.test.hsqldb.generatedclasses.tables.TTriggers.T_TRIGGERS.ID_GENERATED); + } + + /** + * An uncommented item + */ + public void setId(java.lang.Integer value) { + setValue(org.jooq.test.hsqldb.generatedclasses.tables.TTriggers.T_TRIGGERS.ID, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getId() { + return getValue(org.jooq.test.hsqldb.generatedclasses.tables.TTriggers.T_TRIGGERS.ID); + } + + /** + * An uncommented item + */ + public void setCounter(java.lang.Integer value) { + setValue(org.jooq.test.hsqldb.generatedclasses.tables.TTriggers.T_TRIGGERS.COUNTER, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getCounter() { + return getValue(org.jooq.test.hsqldb.generatedclasses.tables.TTriggers.T_TRIGGERS.COUNTER); + } + + /** + * Create a detached TTriggersRecord + */ + public TTriggersRecord() { + super(org.jooq.test.hsqldb.generatedclasses.tables.TTriggers.T_TRIGGERS); + } +} diff --git a/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/tables/records/T_639NumbersTableRecord.java b/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/tables/records/T_639NumbersTableRecord.java new file mode 100644 index 00000000000..0d8e3d896f9 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/tables/records/T_639NumbersTableRecord.java @@ -0,0 +1,205 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.hsqldb.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + */ +public class T_639NumbersTableRecord extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = -1939116873; + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setId(java.lang.Integer value) { + setValue(org.jooq.test.hsqldb.generatedclasses.tables.T_639NumbersTable.T_639_NUMBERS_TABLE.ID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.lang.Integer getId() { + return getValue(org.jooq.test.hsqldb.generatedclasses.tables.T_639NumbersTable.T_639_NUMBERS_TABLE.ID); + } + + /** + * An uncommented item + */ + public void setByte(java.lang.Byte value) { + setValue(org.jooq.test.hsqldb.generatedclasses.tables.T_639NumbersTable.T_639_NUMBERS_TABLE.BYTE, value); + } + + /** + * An uncommented item + */ + public java.lang.Byte getByte() { + return getValue(org.jooq.test.hsqldb.generatedclasses.tables.T_639NumbersTable.T_639_NUMBERS_TABLE.BYTE); + } + + /** + * An uncommented item + */ + public void setShort(java.lang.Short value) { + setValue(org.jooq.test.hsqldb.generatedclasses.tables.T_639NumbersTable.T_639_NUMBERS_TABLE.SHORT, value); + } + + /** + * An uncommented item + */ + public java.lang.Short getShort() { + return getValue(org.jooq.test.hsqldb.generatedclasses.tables.T_639NumbersTable.T_639_NUMBERS_TABLE.SHORT); + } + + /** + * An uncommented item + */ + public void setInteger(java.lang.Integer value) { + setValue(org.jooq.test.hsqldb.generatedclasses.tables.T_639NumbersTable.T_639_NUMBERS_TABLE.INTEGER, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getInteger() { + return getValue(org.jooq.test.hsqldb.generatedclasses.tables.T_639NumbersTable.T_639_NUMBERS_TABLE.INTEGER); + } + + /** + * An uncommented item + */ + public void setLong(java.lang.Long value) { + setValue(org.jooq.test.hsqldb.generatedclasses.tables.T_639NumbersTable.T_639_NUMBERS_TABLE.LONG, value); + } + + /** + * An uncommented item + */ + public java.lang.Long getLong() { + return getValue(org.jooq.test.hsqldb.generatedclasses.tables.T_639NumbersTable.T_639_NUMBERS_TABLE.LONG); + } + + /** + * An uncommented item + */ + public void setByteDecimal(java.lang.Byte value) { + setValue(org.jooq.test.hsqldb.generatedclasses.tables.T_639NumbersTable.T_639_NUMBERS_TABLE.BYTE_DECIMAL, value); + } + + /** + * An uncommented item + */ + public java.lang.Byte getByteDecimal() { + return getValue(org.jooq.test.hsqldb.generatedclasses.tables.T_639NumbersTable.T_639_NUMBERS_TABLE.BYTE_DECIMAL); + } + + /** + * An uncommented item + */ + public void setShortDecimal(java.lang.Short value) { + setValue(org.jooq.test.hsqldb.generatedclasses.tables.T_639NumbersTable.T_639_NUMBERS_TABLE.SHORT_DECIMAL, value); + } + + /** + * An uncommented item + */ + public java.lang.Short getShortDecimal() { + return getValue(org.jooq.test.hsqldb.generatedclasses.tables.T_639NumbersTable.T_639_NUMBERS_TABLE.SHORT_DECIMAL); + } + + /** + * An uncommented item + */ + public void setIntegerDecimal(java.lang.Integer value) { + setValue(org.jooq.test.hsqldb.generatedclasses.tables.T_639NumbersTable.T_639_NUMBERS_TABLE.INTEGER_DECIMAL, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getIntegerDecimal() { + return getValue(org.jooq.test.hsqldb.generatedclasses.tables.T_639NumbersTable.T_639_NUMBERS_TABLE.INTEGER_DECIMAL); + } + + /** + * An uncommented item + */ + public void setLongDecimal(java.lang.Long value) { + setValue(org.jooq.test.hsqldb.generatedclasses.tables.T_639NumbersTable.T_639_NUMBERS_TABLE.LONG_DECIMAL, value); + } + + /** + * An uncommented item + */ + public java.lang.Long getLongDecimal() { + return getValue(org.jooq.test.hsqldb.generatedclasses.tables.T_639NumbersTable.T_639_NUMBERS_TABLE.LONG_DECIMAL); + } + + /** + * An uncommented item + */ + public void setBigInteger(java.math.BigInteger value) { + setValue(org.jooq.test.hsqldb.generatedclasses.tables.T_639NumbersTable.T_639_NUMBERS_TABLE.BIG_INTEGER, value); + } + + /** + * An uncommented item + */ + public java.math.BigInteger getBigInteger() { + return getValue(org.jooq.test.hsqldb.generatedclasses.tables.T_639NumbersTable.T_639_NUMBERS_TABLE.BIG_INTEGER); + } + + /** + * An uncommented item + */ + public void setBigDecimal(java.math.BigDecimal value) { + setValue(org.jooq.test.hsqldb.generatedclasses.tables.T_639NumbersTable.T_639_NUMBERS_TABLE.BIG_DECIMAL, value); + } + + /** + * An uncommented item + */ + public java.math.BigDecimal getBigDecimal() { + return getValue(org.jooq.test.hsqldb.generatedclasses.tables.T_639NumbersTable.T_639_NUMBERS_TABLE.BIG_DECIMAL); + } + + /** + * An uncommented item + */ + public void setFloat(java.lang.Double value) { + setValue(org.jooq.test.hsqldb.generatedclasses.tables.T_639NumbersTable.T_639_NUMBERS_TABLE.FLOAT, value); + } + + /** + * An uncommented item + */ + public java.lang.Double getFloat() { + return getValue(org.jooq.test.hsqldb.generatedclasses.tables.T_639NumbersTable.T_639_NUMBERS_TABLE.FLOAT); + } + + /** + * An uncommented item + */ + public void setDouble(java.lang.Double value) { + setValue(org.jooq.test.hsqldb.generatedclasses.tables.T_639NumbersTable.T_639_NUMBERS_TABLE.DOUBLE, value); + } + + /** + * An uncommented item + */ + public java.lang.Double getDouble() { + return getValue(org.jooq.test.hsqldb.generatedclasses.tables.T_639NumbersTable.T_639_NUMBERS_TABLE.DOUBLE); + } + + /** + * Create a detached T_639NumbersTableRecord + */ + public T_639NumbersTableRecord() { + super(org.jooq.test.hsqldb.generatedclasses.tables.T_639NumbersTable.T_639_NUMBERS_TABLE); + } +} diff --git a/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/tables/records/T_658RefRecord.java b/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/tables/records/T_658RefRecord.java new file mode 100644 index 00000000000..6fe511e5f20 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/tables/records/T_658RefRecord.java @@ -0,0 +1,175 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.hsqldb.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + */ +public class T_658RefRecord extends org.jooq.impl.TableRecordImpl { + + private static final long serialVersionUID = -528692134; + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_T_658_11
+	 * FOREIGN KEY (REF_11)
+	 * REFERENCES PUBLIC.T_658_11 (ID)
+	 * 
+ */ + public void setRef_11(org.jooq.test.hsqldb.generatedclasses.enums.T_658_11 value) { + setValue(org.jooq.test.hsqldb.generatedclasses.tables.T_658Ref.T_658_REF.REF_11, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_T_658_11
+	 * FOREIGN KEY (REF_11)
+	 * REFERENCES PUBLIC.T_658_11 (ID)
+	 * 
+ */ + public org.jooq.test.hsqldb.generatedclasses.enums.T_658_11 getRef_11() { + return getValue(org.jooq.test.hsqldb.generatedclasses.tables.T_658Ref.T_658_REF.REF_11); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_T_658_21
+	 * FOREIGN KEY (REF_21)
+	 * REFERENCES PUBLIC.T_658_21 (ID)
+	 * 
+ */ + public void setRef_21(org.jooq.test.hsqldb.generatedclasses.enums.T_658_21 value) { + setValue(org.jooq.test.hsqldb.generatedclasses.tables.T_658Ref.T_658_REF.REF_21, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_T_658_21
+	 * FOREIGN KEY (REF_21)
+	 * REFERENCES PUBLIC.T_658_21 (ID)
+	 * 
+ */ + public org.jooq.test.hsqldb.generatedclasses.enums.T_658_21 getRef_21() { + return getValue(org.jooq.test.hsqldb.generatedclasses.tables.T_658Ref.T_658_REF.REF_21); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_T_658_31
+	 * FOREIGN KEY (REF_31)
+	 * REFERENCES PUBLIC.T_658_31 (ID)
+	 * 
+ */ + public void setRef_31(org.jooq.test.hsqldb.generatedclasses.enums.T_658_31 value) { + setValue(org.jooq.test.hsqldb.generatedclasses.tables.T_658Ref.T_658_REF.REF_31, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_T_658_31
+	 * FOREIGN KEY (REF_31)
+	 * REFERENCES PUBLIC.T_658_31 (ID)
+	 * 
+ */ + public org.jooq.test.hsqldb.generatedclasses.enums.T_658_31 getRef_31() { + return getValue(org.jooq.test.hsqldb.generatedclasses.tables.T_658Ref.T_658_REF.REF_31); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_T_658_12
+	 * FOREIGN KEY (REF_12)
+	 * REFERENCES PUBLIC.T_658_12 (ID)
+	 * 
+ */ + public void setRef_12(org.jooq.test.hsqldb.generatedclasses.enums.T_658_12 value) { + setValue(org.jooq.test.hsqldb.generatedclasses.tables.T_658Ref.T_658_REF.REF_12, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_T_658_12
+	 * FOREIGN KEY (REF_12)
+	 * REFERENCES PUBLIC.T_658_12 (ID)
+	 * 
+ */ + public org.jooq.test.hsqldb.generatedclasses.enums.T_658_12 getRef_12() { + return getValue(org.jooq.test.hsqldb.generatedclasses.tables.T_658Ref.T_658_REF.REF_12); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_T_658_22
+	 * FOREIGN KEY (REF_22)
+	 * REFERENCES PUBLIC.T_658_22 (ID)
+	 * 
+ */ + public void setRef_22(org.jooq.test.hsqldb.generatedclasses.enums.T_658_22 value) { + setValue(org.jooq.test.hsqldb.generatedclasses.tables.T_658Ref.T_658_REF.REF_22, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_T_658_22
+	 * FOREIGN KEY (REF_22)
+	 * REFERENCES PUBLIC.T_658_22 (ID)
+	 * 
+ */ + public org.jooq.test.hsqldb.generatedclasses.enums.T_658_22 getRef_22() { + return getValue(org.jooq.test.hsqldb.generatedclasses.tables.T_658Ref.T_658_REF.REF_22); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_T_658_32
+	 * FOREIGN KEY (REF_32)
+	 * REFERENCES PUBLIC.T_658_32 (ID)
+	 * 
+ */ + public void setRef_32(org.jooq.test.hsqldb.generatedclasses.enums.T_658_32 value) { + setValue(org.jooq.test.hsqldb.generatedclasses.tables.T_658Ref.T_658_REF.REF_32, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_T_658_32
+	 * FOREIGN KEY (REF_32)
+	 * REFERENCES PUBLIC.T_658_32 (ID)
+	 * 
+ */ + public org.jooq.test.hsqldb.generatedclasses.enums.T_658_32 getRef_32() { + return getValue(org.jooq.test.hsqldb.generatedclasses.tables.T_658Ref.T_658_REF.REF_32); + } + + /** + * Create a detached T_658RefRecord + */ + public T_658RefRecord() { + super(org.jooq.test.hsqldb.generatedclasses.tables.T_658Ref.T_658_REF); + } +} diff --git a/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/tables/records/T_725LobTestRecord.java b/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/tables/records/T_725LobTestRecord.java new file mode 100644 index 00000000000..b95f5b1ab35 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/tables/records/T_725LobTestRecord.java @@ -0,0 +1,51 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.hsqldb.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + */ +public class T_725LobTestRecord extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = -1064179525; + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setId(java.lang.Integer value) { + setValue(org.jooq.test.hsqldb.generatedclasses.tables.T_725LobTest.T_725_LOB_TEST.ID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.lang.Integer getId() { + return getValue(org.jooq.test.hsqldb.generatedclasses.tables.T_725LobTest.T_725_LOB_TEST.ID); + } + + /** + * An uncommented item + */ + public void setLob(byte[] value) { + setValue(org.jooq.test.hsqldb.generatedclasses.tables.T_725LobTest.T_725_LOB_TEST.LOB, value); + } + + /** + * An uncommented item + */ + public byte[] getLob() { + return getValue(org.jooq.test.hsqldb.generatedclasses.tables.T_725LobTest.T_725_LOB_TEST.LOB); + } + + /** + * Create a detached T_725LobTestRecord + */ + public T_725LobTestRecord() { + super(org.jooq.test.hsqldb.generatedclasses.tables.T_725LobTest.T_725_LOB_TEST); + } +} diff --git a/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/tables/records/T_785Record.java b/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/tables/records/T_785Record.java new file mode 100644 index 00000000000..44e8a434ded --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/tables/records/T_785Record.java @@ -0,0 +1,61 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.hsqldb.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + */ +public class T_785Record extends org.jooq.impl.TableRecordImpl { + + private static final long serialVersionUID = 916150781; + + /** + * An uncommented item + */ + public void setId(java.lang.Integer value) { + setValue(org.jooq.test.hsqldb.generatedclasses.tables.T_785.T_785.ID, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getId() { + return getValue(org.jooq.test.hsqldb.generatedclasses.tables.T_785.T_785.ID); + } + + /** + * An uncommented item + */ + public void setName(java.lang.String value) { + setValue(org.jooq.test.hsqldb.generatedclasses.tables.T_785.T_785.NAME, value); + } + + /** + * An uncommented item + */ + public java.lang.String getName() { + return getValue(org.jooq.test.hsqldb.generatedclasses.tables.T_785.T_785.NAME); + } + + /** + * An uncommented item + */ + public void setValue(java.lang.String value) { + setValue(org.jooq.test.hsqldb.generatedclasses.tables.T_785.T_785.VALUE, value); + } + + /** + * An uncommented item + */ + public java.lang.String getValue() { + return getValue(org.jooq.test.hsqldb.generatedclasses.tables.T_785.T_785.VALUE); + } + + /** + * Create a detached T_785Record + */ + public T_785Record() { + super(org.jooq.test.hsqldb.generatedclasses.tables.T_785.T_785); + } +} diff --git a/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/tables/records/T_937Record.java b/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/tables/records/T_937Record.java new file mode 100644 index 00000000000..a881c138990 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/tables/records/T_937Record.java @@ -0,0 +1,37 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.hsqldb.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + */ +public class T_937Record extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = -788388135; + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setT_937(java.lang.Integer value) { + setValue(org.jooq.test.hsqldb.generatedclasses.tables.T_937.T_937.T_937_, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.lang.Integer getT_937() { + return getValue(org.jooq.test.hsqldb.generatedclasses.tables.T_937.T_937.T_937_); + } + + /** + * Create a detached T_937Record + */ + public T_937Record() { + super(org.jooq.test.hsqldb.generatedclasses.tables.T_937.T_937); + } +} diff --git a/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/tables/records/VAuthorRecord.java b/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/tables/records/VAuthorRecord.java new file mode 100644 index 00000000000..dfcba108ea3 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/tables/records/VAuthorRecord.java @@ -0,0 +1,103 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.hsqldb.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + */ +public class VAuthorRecord extends org.jooq.impl.TableRecordImpl { + + private static final long serialVersionUID = 865870732; + + /** + * An uncommented item + */ + public void setId(java.lang.Integer value) { + setValue(org.jooq.test.hsqldb.generatedclasses.tables.VAuthor.V_AUTHOR.ID, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getId() { + return getValue(org.jooq.test.hsqldb.generatedclasses.tables.VAuthor.V_AUTHOR.ID); + } + + /** + * An uncommented item + */ + public void setFirstName(java.lang.String value) { + setValue(org.jooq.test.hsqldb.generatedclasses.tables.VAuthor.V_AUTHOR.FIRST_NAME, value); + } + + /** + * An uncommented item + */ + public java.lang.String getFirstName() { + return getValue(org.jooq.test.hsqldb.generatedclasses.tables.VAuthor.V_AUTHOR.FIRST_NAME); + } + + /** + * An uncommented item + */ + public void setLastName(java.lang.String value) { + setValue(org.jooq.test.hsqldb.generatedclasses.tables.VAuthor.V_AUTHOR.LAST_NAME, value); + } + + /** + * An uncommented item + */ + public java.lang.String getLastName() { + return getValue(org.jooq.test.hsqldb.generatedclasses.tables.VAuthor.V_AUTHOR.LAST_NAME); + } + + /** + * An uncommented item + */ + public void setDateOfBirth(java.sql.Date value) { + setValue(org.jooq.test.hsqldb.generatedclasses.tables.VAuthor.V_AUTHOR.DATE_OF_BIRTH, value); + } + + /** + * An uncommented item + */ + public java.sql.Date getDateOfBirth() { + return getValue(org.jooq.test.hsqldb.generatedclasses.tables.VAuthor.V_AUTHOR.DATE_OF_BIRTH); + } + + /** + * An uncommented item + */ + public void setYearOfBirth(java.lang.Integer value) { + setValue(org.jooq.test.hsqldb.generatedclasses.tables.VAuthor.V_AUTHOR.YEAR_OF_BIRTH, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getYearOfBirth() { + return getValue(org.jooq.test.hsqldb.generatedclasses.tables.VAuthor.V_AUTHOR.YEAR_OF_BIRTH); + } + + /** + * An uncommented item + */ + public void setAddress(java.lang.String value) { + setValue(org.jooq.test.hsqldb.generatedclasses.tables.VAuthor.V_AUTHOR.ADDRESS, value); + } + + /** + * An uncommented item + */ + public java.lang.String getAddress() { + return getValue(org.jooq.test.hsqldb.generatedclasses.tables.VAuthor.V_AUTHOR.ADDRESS); + } + + /** + * Create a detached VAuthorRecord + */ + public VAuthorRecord() { + super(org.jooq.test.hsqldb.generatedclasses.tables.VAuthor.V_AUTHOR); + } +} diff --git a/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/tables/records/VBookRecord.java b/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/tables/records/VBookRecord.java new file mode 100644 index 00000000000..b6a04ac5055 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/tables/records/VBookRecord.java @@ -0,0 +1,145 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.hsqldb.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + */ +public class VBookRecord extends org.jooq.impl.TableRecordImpl { + + private static final long serialVersionUID = -1321300600; + + /** + * An uncommented item + */ + public void setId(java.lang.Integer value) { + setValue(org.jooq.test.hsqldb.generatedclasses.tables.VBook.V_BOOK.ID, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getId() { + return getValue(org.jooq.test.hsqldb.generatedclasses.tables.VBook.V_BOOK.ID); + } + + /** + * An uncommented item + */ + public void setAuthorId(java.lang.Integer value) { + setValue(org.jooq.test.hsqldb.generatedclasses.tables.VBook.V_BOOK.AUTHOR_ID, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getAuthorId() { + return getValue(org.jooq.test.hsqldb.generatedclasses.tables.VBook.V_BOOK.AUTHOR_ID); + } + + /** + * An uncommented item + */ + public void setCoAuthorId(java.lang.Integer value) { + setValue(org.jooq.test.hsqldb.generatedclasses.tables.VBook.V_BOOK.CO_AUTHOR_ID, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getCoAuthorId() { + return getValue(org.jooq.test.hsqldb.generatedclasses.tables.VBook.V_BOOK.CO_AUTHOR_ID); + } + + /** + * An uncommented item + */ + public void setDetailsId(java.lang.Integer value) { + setValue(org.jooq.test.hsqldb.generatedclasses.tables.VBook.V_BOOK.DETAILS_ID, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getDetailsId() { + return getValue(org.jooq.test.hsqldb.generatedclasses.tables.VBook.V_BOOK.DETAILS_ID); + } + + /** + * An uncommented item + */ + public void setTitle(java.lang.String value) { + setValue(org.jooq.test.hsqldb.generatedclasses.tables.VBook.V_BOOK.TITLE, value); + } + + /** + * An uncommented item + */ + public java.lang.String getTitle() { + return getValue(org.jooq.test.hsqldb.generatedclasses.tables.VBook.V_BOOK.TITLE); + } + + /** + * An uncommented item + */ + public void setPublishedIn(java.lang.Integer value) { + setValue(org.jooq.test.hsqldb.generatedclasses.tables.VBook.V_BOOK.PUBLISHED_IN, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getPublishedIn() { + return getValue(org.jooq.test.hsqldb.generatedclasses.tables.VBook.V_BOOK.PUBLISHED_IN); + } + + /** + * An uncommented item + */ + public void setLanguageId(java.lang.Integer value) { + setValue(org.jooq.test.hsqldb.generatedclasses.tables.VBook.V_BOOK.LANGUAGE_ID, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getLanguageId() { + return getValue(org.jooq.test.hsqldb.generatedclasses.tables.VBook.V_BOOK.LANGUAGE_ID); + } + + /** + * An uncommented item + */ + public void setContentText(java.lang.String value) { + setValue(org.jooq.test.hsqldb.generatedclasses.tables.VBook.V_BOOK.CONTENT_TEXT, value); + } + + /** + * An uncommented item + */ + public java.lang.String getContentText() { + return getValue(org.jooq.test.hsqldb.generatedclasses.tables.VBook.V_BOOK.CONTENT_TEXT); + } + + /** + * An uncommented item + */ + public void setContentPdf(byte[] value) { + setValue(org.jooq.test.hsqldb.generatedclasses.tables.VBook.V_BOOK.CONTENT_PDF, value); + } + + /** + * An uncommented item + */ + public byte[] getContentPdf() { + return getValue(org.jooq.test.hsqldb.generatedclasses.tables.VBook.V_BOOK.CONTENT_PDF); + } + + /** + * Create a detached VBookRecord + */ + public VBookRecord() { + super(org.jooq.test.hsqldb.generatedclasses.tables.VBook.V_BOOK); + } +} diff --git a/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/tables/records/VLibraryRecord.java b/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/tables/records/VLibraryRecord.java new file mode 100644 index 00000000000..a4d41b2e6f1 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/tables/records/VLibraryRecord.java @@ -0,0 +1,47 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.hsqldb.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + */ +public class VLibraryRecord extends org.jooq.impl.TableRecordImpl { + + private static final long serialVersionUID = 1917049812; + + /** + * An uncommented item + */ + public void setAuthor(java.lang.String value) { + setValue(org.jooq.test.hsqldb.generatedclasses.tables.VLibrary.V_LIBRARY.AUTHOR, value); + } + + /** + * An uncommented item + */ + public java.lang.String getAuthor() { + return getValue(org.jooq.test.hsqldb.generatedclasses.tables.VLibrary.V_LIBRARY.AUTHOR); + } + + /** + * An uncommented item + */ + public void setTitle(java.lang.String value) { + setValue(org.jooq.test.hsqldb.generatedclasses.tables.VLibrary.V_LIBRARY.TITLE, value); + } + + /** + * An uncommented item + */ + public java.lang.String getTitle() { + return getValue(org.jooq.test.hsqldb.generatedclasses.tables.VLibrary.V_LIBRARY.TITLE); + } + + /** + * Create a detached VLibraryRecord + */ + public VLibraryRecord() { + super(org.jooq.test.hsqldb.generatedclasses.tables.VLibrary.V_LIBRARY); + } +} diff --git a/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/tables/records/XTestCase_64_69Record.java b/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/tables/records/XTestCase_64_69Record.java new file mode 100644 index 00000000000..6aaba8b0481 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/tables/records/XTestCase_64_69Record.java @@ -0,0 +1,91 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.hsqldb.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + */ +public class XTestCase_64_69Record extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = 1589945780; + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setId(java.lang.Integer value) { + setValue(org.jooq.test.hsqldb.generatedclasses.tables.XTestCase_64_69.X_TEST_CASE_64_69.ID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.lang.Integer getId() { + return getValue(org.jooq.test.hsqldb.generatedclasses.tables.XTestCase_64_69.X_TEST_CASE_64_69.ID); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.util.List fetchXTestCase_71List() { + return create() + .selectFrom(org.jooq.test.hsqldb.generatedclasses.tables.XTestCase_71.X_TEST_CASE_71) + .where(org.jooq.test.hsqldb.generatedclasses.tables.XTestCase_71.X_TEST_CASE_71.TEST_CASE_64_69_ID.equal(getValueAsShort(org.jooq.test.hsqldb.generatedclasses.tables.XTestCase_64_69.X_TEST_CASE_64_69.ID))) + .fetch(); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_X_TEST_CASE_64_69
+	 * FOREIGN KEY (UNUSED_ID)
+	 * REFERENCES PUBLIC.X_UNUSED (ID)
+	 * 
+ */ + public void setUnusedId(java.lang.Integer value) { + setValue(org.jooq.test.hsqldb.generatedclasses.tables.XTestCase_64_69.X_TEST_CASE_64_69.UNUSED_ID, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_X_TEST_CASE_64_69
+	 * FOREIGN KEY (UNUSED_ID)
+	 * REFERENCES PUBLIC.X_UNUSED (ID)
+	 * 
+ */ + public java.lang.Integer getUnusedId() { + return getValue(org.jooq.test.hsqldb.generatedclasses.tables.XTestCase_64_69.X_TEST_CASE_64_69.UNUSED_ID); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_X_TEST_CASE_64_69
+	 * FOREIGN KEY (UNUSED_ID)
+	 * REFERENCES PUBLIC.X_UNUSED (ID)
+	 * 
+ */ + public org.jooq.test.hsqldb.generatedclasses.tables.records.XUnusedRecord fetchXUnused() { + return create() + .selectFrom(org.jooq.test.hsqldb.generatedclasses.tables.XUnused.X_UNUSED) + .where(org.jooq.test.hsqldb.generatedclasses.tables.XUnused.X_UNUSED.ID.equal(getValue(org.jooq.test.hsqldb.generatedclasses.tables.XTestCase_64_69.X_TEST_CASE_64_69.UNUSED_ID))) + .fetchOne(); + } + + /** + * Create a detached XTestCase_64_69Record + */ + public XTestCase_64_69Record() { + super(org.jooq.test.hsqldb.generatedclasses.tables.XTestCase_64_69.X_TEST_CASE_64_69); + } +} diff --git a/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/tables/records/XTestCase_71Record.java b/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/tables/records/XTestCase_71Record.java new file mode 100644 index 00000000000..b3ec67cace4 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/tables/records/XTestCase_71Record.java @@ -0,0 +1,79 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.hsqldb.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + */ +public class XTestCase_71Record extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = -832601623; + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setId(java.lang.Integer value) { + setValue(org.jooq.test.hsqldb.generatedclasses.tables.XTestCase_71.X_TEST_CASE_71.ID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.lang.Integer getId() { + return getValue(org.jooq.test.hsqldb.generatedclasses.tables.XTestCase_71.X_TEST_CASE_71.ID); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_X_TEST_CASE_71
+	 * FOREIGN KEY (TEST_CASE_64_69_ID)
+	 * REFERENCES PUBLIC.X_TEST_CASE_64_69 (ID)
+	 * 
+ */ + public void setTestCase_64_69Id(java.lang.Short value) { + setValue(org.jooq.test.hsqldb.generatedclasses.tables.XTestCase_71.X_TEST_CASE_71.TEST_CASE_64_69_ID, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_X_TEST_CASE_71
+	 * FOREIGN KEY (TEST_CASE_64_69_ID)
+	 * REFERENCES PUBLIC.X_TEST_CASE_64_69 (ID)
+	 * 
+ */ + public java.lang.Short getTestCase_64_69Id() { + return getValue(org.jooq.test.hsqldb.generatedclasses.tables.XTestCase_71.X_TEST_CASE_71.TEST_CASE_64_69_ID); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_X_TEST_CASE_71
+	 * FOREIGN KEY (TEST_CASE_64_69_ID)
+	 * REFERENCES PUBLIC.X_TEST_CASE_64_69 (ID)
+	 * 
+ */ + public org.jooq.test.hsqldb.generatedclasses.tables.records.XTestCase_64_69Record fetchXTestCase_64_69() { + return create() + .selectFrom(org.jooq.test.hsqldb.generatedclasses.tables.XTestCase_64_69.X_TEST_CASE_64_69) + .where(org.jooq.test.hsqldb.generatedclasses.tables.XTestCase_64_69.X_TEST_CASE_64_69.ID.equal(getValueAsInteger(org.jooq.test.hsqldb.generatedclasses.tables.XTestCase_71.X_TEST_CASE_71.TEST_CASE_64_69_ID))) + .fetchOne(); + } + + /** + * Create a detached XTestCase_71Record + */ + public XTestCase_71Record() { + super(org.jooq.test.hsqldb.generatedclasses.tables.XTestCase_71.X_TEST_CASE_71); + } +} diff --git a/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/tables/records/XTestCase_85Record.java b/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/tables/records/XTestCase_85Record.java new file mode 100644 index 00000000000..4b49bc3db6c --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/tables/records/XTestCase_85Record.java @@ -0,0 +1,106 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.hsqldb.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + */ +public class XTestCase_85Record extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = -1460210241; + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setId(java.lang.Integer value) { + setValue(org.jooq.test.hsqldb.generatedclasses.tables.XTestCase_85.X_TEST_CASE_85.ID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.lang.Integer getId() { + return getValue(org.jooq.test.hsqldb.generatedclasses.tables.XTestCase_85.X_TEST_CASE_85.ID); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_X_TEST_CASE_85
+	 * FOREIGN KEY (X_UNUSED_ID, X_UNUSED_NAME)
+	 * REFERENCES PUBLIC.X_UNUSED (ID, NAME)
+	 * 
+ */ + public void setXUnusedId(java.lang.Integer value) { + setValue(org.jooq.test.hsqldb.generatedclasses.tables.XTestCase_85.X_TEST_CASE_85.X_UNUSED_ID, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_X_TEST_CASE_85
+	 * FOREIGN KEY (X_UNUSED_ID, X_UNUSED_NAME)
+	 * REFERENCES PUBLIC.X_UNUSED (ID, NAME)
+	 * 
+ */ + public java.lang.Integer getXUnusedId() { + return getValue(org.jooq.test.hsqldb.generatedclasses.tables.XTestCase_85.X_TEST_CASE_85.X_UNUSED_ID); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_X_TEST_CASE_85
+	 * FOREIGN KEY (X_UNUSED_ID, X_UNUSED_NAME)
+	 * REFERENCES PUBLIC.X_UNUSED (ID, NAME)
+	 * 
+ */ + public org.jooq.test.hsqldb.generatedclasses.tables.records.XUnusedRecord fetchXUnused() { + return create() + .selectFrom(org.jooq.test.hsqldb.generatedclasses.tables.XUnused.X_UNUSED) + .where(org.jooq.test.hsqldb.generatedclasses.tables.XUnused.X_UNUSED.ID.equal(getValue(org.jooq.test.hsqldb.generatedclasses.tables.XTestCase_85.X_TEST_CASE_85.X_UNUSED_ID))) + .and(org.jooq.test.hsqldb.generatedclasses.tables.XUnused.X_UNUSED.NAME.equal(getValue(org.jooq.test.hsqldb.generatedclasses.tables.XTestCase_85.X_TEST_CASE_85.X_UNUSED_NAME))) + .fetchOne(); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_X_TEST_CASE_85
+	 * FOREIGN KEY (X_UNUSED_ID, X_UNUSED_NAME)
+	 * REFERENCES PUBLIC.X_UNUSED (ID, NAME)
+	 * 
+ */ + public void setXUnusedName(java.lang.String value) { + setValue(org.jooq.test.hsqldb.generatedclasses.tables.XTestCase_85.X_TEST_CASE_85.X_UNUSED_NAME, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_X_TEST_CASE_85
+	 * FOREIGN KEY (X_UNUSED_ID, X_UNUSED_NAME)
+	 * REFERENCES PUBLIC.X_UNUSED (ID, NAME)
+	 * 
+ */ + public java.lang.String getXUnusedName() { + return getValue(org.jooq.test.hsqldb.generatedclasses.tables.XTestCase_85.X_TEST_CASE_85.X_UNUSED_NAME); + } + + /** + * Create a detached XTestCase_85Record + */ + public XTestCase_85Record() { + super(org.jooq.test.hsqldb.generatedclasses.tables.XTestCase_85.X_TEST_CASE_85); + } +} diff --git a/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/tables/records/XUnusedRecord.java b/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/tables/records/XUnusedRecord.java new file mode 100644 index 00000000000..10347367e71 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/hsqldb/generatedclasses/tables/records/XUnusedRecord.java @@ -0,0 +1,330 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.hsqldb.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + */ +public class XUnusedRecord extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = 449388969; + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setId(java.lang.Integer value) { + setValue(org.jooq.test.hsqldb.generatedclasses.tables.XUnused.X_UNUSED.ID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.lang.Integer getId() { + return getValue(org.jooq.test.hsqldb.generatedclasses.tables.XUnused.X_UNUSED.ID); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.util.List fetchXTestCase_85List() { + return create() + .selectFrom(org.jooq.test.hsqldb.generatedclasses.tables.XTestCase_85.X_TEST_CASE_85) + .where(org.jooq.test.hsqldb.generatedclasses.tables.XTestCase_85.X_TEST_CASE_85.X_UNUSED_ID.equal(getValue(org.jooq.test.hsqldb.generatedclasses.tables.XUnused.X_UNUSED.ID))) + .and(org.jooq.test.hsqldb.generatedclasses.tables.XTestCase_85.X_TEST_CASE_85.X_UNUSED_NAME.equal(getValue(org.jooq.test.hsqldb.generatedclasses.tables.XUnused.X_UNUSED.NAME))) + .fetch(); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.util.List fetchXUnusedList() { + return create() + .selectFrom(org.jooq.test.hsqldb.generatedclasses.tables.XUnused.X_UNUSED) + .where(org.jooq.test.hsqldb.generatedclasses.tables.XUnused.X_UNUSED.ID_REF.equal(getValue(org.jooq.test.hsqldb.generatedclasses.tables.XUnused.X_UNUSED.ID))) + .and(org.jooq.test.hsqldb.generatedclasses.tables.XUnused.X_UNUSED.NAME_REF.equal(getValue(org.jooq.test.hsqldb.generatedclasses.tables.XUnused.X_UNUSED.NAME))) + .fetch(); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.util.List fetchXTestCase_64_69List() { + return create() + .selectFrom(org.jooq.test.hsqldb.generatedclasses.tables.XTestCase_64_69.X_TEST_CASE_64_69) + .where(org.jooq.test.hsqldb.generatedclasses.tables.XTestCase_64_69.X_TEST_CASE_64_69.UNUSED_ID.equal(getValue(org.jooq.test.hsqldb.generatedclasses.tables.XUnused.X_UNUSED.ID))) + .fetch(); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setName(java.lang.String value) { + setValue(org.jooq.test.hsqldb.generatedclasses.tables.XUnused.X_UNUSED.NAME, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.lang.String getName() { + return getValue(org.jooq.test.hsqldb.generatedclasses.tables.XUnused.X_UNUSED.NAME); + } + + /** + * An uncommented item + */ + public void setBigInteger(java.math.BigInteger value) { + setValue(org.jooq.test.hsqldb.generatedclasses.tables.XUnused.X_UNUSED.BIG_INTEGER, value); + } + + /** + * An uncommented item + */ + public java.math.BigInteger getBigInteger() { + return getValue(org.jooq.test.hsqldb.generatedclasses.tables.XUnused.X_UNUSED.BIG_INTEGER); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_X_UNUSED_SELF
+	 * FOREIGN KEY (ID_REF, NAME_REF)
+	 * REFERENCES PUBLIC.X_UNUSED (ID, NAME)
+	 * 
+ */ + public void setIdRef(java.lang.Integer value) { + setValue(org.jooq.test.hsqldb.generatedclasses.tables.XUnused.X_UNUSED.ID_REF, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_X_UNUSED_SELF
+	 * FOREIGN KEY (ID_REF, NAME_REF)
+	 * REFERENCES PUBLIC.X_UNUSED (ID, NAME)
+	 * 
+ */ + public java.lang.Integer getIdRef() { + return getValue(org.jooq.test.hsqldb.generatedclasses.tables.XUnused.X_UNUSED.ID_REF); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_X_UNUSED_SELF
+	 * FOREIGN KEY (ID_REF, NAME_REF)
+	 * REFERENCES PUBLIC.X_UNUSED (ID, NAME)
+	 * 
+ */ + public org.jooq.test.hsqldb.generatedclasses.tables.records.XUnusedRecord fetchXUnused() { + return create() + .selectFrom(org.jooq.test.hsqldb.generatedclasses.tables.XUnused.X_UNUSED) + .where(org.jooq.test.hsqldb.generatedclasses.tables.XUnused.X_UNUSED.ID.equal(getValue(org.jooq.test.hsqldb.generatedclasses.tables.XUnused.X_UNUSED.ID_REF))) + .and(org.jooq.test.hsqldb.generatedclasses.tables.XUnused.X_UNUSED.NAME.equal(getValue(org.jooq.test.hsqldb.generatedclasses.tables.XUnused.X_UNUSED.NAME_REF))) + .fetchOne(); + } + + /** + * An uncommented item + */ + public void setClass_(java.lang.Integer value) { + setValue(org.jooq.test.hsqldb.generatedclasses.tables.XUnused.X_UNUSED.CLASS, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getClass_() { + return getValue(org.jooq.test.hsqldb.generatedclasses.tables.XUnused.X_UNUSED.CLASS); + } + + /** + * An uncommented item + */ + public void setFields_(java.lang.Integer value) { + setValue(org.jooq.test.hsqldb.generatedclasses.tables.XUnused.X_UNUSED.FIELDS, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getFields_() { + return getValue(org.jooq.test.hsqldb.generatedclasses.tables.XUnused.X_UNUSED.FIELDS); + } + + /** + * An uncommented item + */ + public void setConfiguration_(java.lang.Integer value) { + setValue(org.jooq.test.hsqldb.generatedclasses.tables.XUnused.X_UNUSED.CONFIGURATION, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getConfiguration_() { + return getValue(org.jooq.test.hsqldb.generatedclasses.tables.XUnused.X_UNUSED.CONFIGURATION); + } + + /** + * An uncommented item + */ + public void setUDT(java.lang.Integer value) { + setValue(org.jooq.test.hsqldb.generatedclasses.tables.XUnused.X_UNUSED.U_D_T, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getUDT() { + return getValue(org.jooq.test.hsqldb.generatedclasses.tables.XUnused.X_UNUSED.U_D_T); + } + + /** + * An uncommented item + */ + public void setMetaData_(java.lang.Integer value) { + setValue(org.jooq.test.hsqldb.generatedclasses.tables.XUnused.X_UNUSED.META_DATA, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getMetaData_() { + return getValue(org.jooq.test.hsqldb.generatedclasses.tables.XUnused.X_UNUSED.META_DATA); + } + + /** + * An uncommented item + */ + public void setType0_(java.lang.Integer value) { + setValue(org.jooq.test.hsqldb.generatedclasses.tables.XUnused.X_UNUSED.TYPE0, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getType0_() { + return getValue(org.jooq.test.hsqldb.generatedclasses.tables.XUnused.X_UNUSED.TYPE0); + } + + /** + * An uncommented item + */ + public void setPrimaryKey(java.lang.Integer value) { + setValue(org.jooq.test.hsqldb.generatedclasses.tables.XUnused.X_UNUSED.PRIMARY_KEY, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getPrimaryKey() { + return getValue(org.jooq.test.hsqldb.generatedclasses.tables.XUnused.X_UNUSED.PRIMARY_KEY); + } + + /** + * An uncommented item + */ + public void setPrimarykey(java.lang.Integer value) { + setValue(org.jooq.test.hsqldb.generatedclasses.tables.XUnused.X_UNUSED.PRIMARYKEY, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getPrimarykey() { + return getValue(org.jooq.test.hsqldb.generatedclasses.tables.XUnused.X_UNUSED.PRIMARYKEY); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_X_UNUSED_SELF
+	 * FOREIGN KEY (ID_REF, NAME_REF)
+	 * REFERENCES PUBLIC.X_UNUSED (ID, NAME)
+	 * 
+ */ + public void setNameRef(java.lang.String value) { + setValue(org.jooq.test.hsqldb.generatedclasses.tables.XUnused.X_UNUSED.NAME_REF, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_X_UNUSED_SELF
+	 * FOREIGN KEY (ID_REF, NAME_REF)
+	 * REFERENCES PUBLIC.X_UNUSED (ID, NAME)
+	 * 
+ */ + public java.lang.String getNameRef() { + return getValue(org.jooq.test.hsqldb.generatedclasses.tables.XUnused.X_UNUSED.NAME_REF); + } + + /** + * An uncommented item + */ + public void setField_737(java.math.BigDecimal value) { + setValue(org.jooq.test.hsqldb.generatedclasses.tables.XUnused.X_UNUSED.FIELD_737, value); + } + + /** + * An uncommented item + */ + public java.math.BigDecimal getField_737() { + return getValue(org.jooq.test.hsqldb.generatedclasses.tables.XUnused.X_UNUSED.FIELD_737); + } + + /** + * An uncommented item + */ + public void setConnection(java.lang.Integer value) { + setValue(org.jooq.test.hsqldb.generatedclasses.tables.XUnused.X_UNUSED.CONNECTION, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getConnection() { + return getValue(org.jooq.test.hsqldb.generatedclasses.tables.XUnused.X_UNUSED.CONNECTION); + } + + /** + * An uncommented item + */ + public void setPreparedStatement(java.lang.Integer value) { + setValue(org.jooq.test.hsqldb.generatedclasses.tables.XUnused.X_UNUSED.PREPARED_STATEMENT, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getPreparedStatement() { + return getValue(org.jooq.test.hsqldb.generatedclasses.tables.XUnused.X_UNUSED.PREPARED_STATEMENT); + } + + /** + * Create a detached XUnusedRecord + */ + public XUnusedRecord() { + super(org.jooq.test.hsqldb.generatedclasses.tables.XUnused.X_UNUSED); + } +} diff --git a/jOOQ-test/src/org/jooq/test/hsqldb/reset.sql b/jOOQ-test/src/org/jooq/test/hsqldb/reset.sql new file mode 100644 index 00000000000..ea04844e110 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/hsqldb/reset.sql @@ -0,0 +1,63 @@ +DELETE FROM t_658_ref/ +DELETE FROM t_658_11/ +DELETE FROM t_658_21/ +DELETE FROM t_658_31/ +DELETE FROM t_658_12/ +DELETE FROM t_658_22/ +DELETE FROM t_658_32/ +DELETE FROM t_arrays/ +DELETE FROM t_book_to_book_store/ +DELETE FROM t_book_store/ +DELETE FROM t_book/ +DELETE FROM t_author/ +DELETE FROM t_language/ +DELETE FROM t_booleans/ +DELETE FROM t_dates/ +DELETE FROM t_identity/ +DELETE FROM t_identity_pk/ + +DROP SEQUENCE IF EXISTS s_author_id;/ +CREATE SEQUENCE s_author_id START WITH 1;/ + +INSERT INTO t_language (id, cd, description, description_english) VALUES (1, 'en', 'English', 'English')/ +INSERT INTO t_language (id, cd, description, description_english) VALUES (2, 'de', 'Deutsch', 'German')/ +INSERT INTO t_language (id, cd, description, description_english) VALUES (3, 'fr', 'Français', 'French')/ +INSERT INTO t_language (id, cd, description, description_english) VALUES (4, 'pt', null, null)/ +/ + +INSERT INTO t_658_11 VALUES ('A'), ('B'), ('C')/ +INSERT INTO t_658_21 VALUES (1), (2), (3)/ +INSERT INTO t_658_31 VALUES (1), (2), (3)/ +INSERT INTO t_658_12 VALUES ('A', 'A'), ('B', 'B'), ('C', 'C')/ +INSERT INTO t_658_22 VALUES (1, 1), (2, 2), (3, 3)/ +INSERT INTO t_658_32 VALUES (1, 1), (2, 2), (3, 3)/ +INSERT INTO t_658_ref VALUES ('A', 1, 1, 'B', 2, 2)/ + +INSERT INTO t_author VALUES (next value for s_author_id, 'George', 'Orwell', '1903-06-25', 1903, null)/ +INSERT INTO t_author VALUES (next value for s_author_id, 'Paulo', 'Coelho', '1947-08-24', 1947, null)/ + +INSERT INTO t_book VALUES (1, 1, null, null, '1984', 1948, 1, 'To know and not to know, to be conscious of complete truthfulness while telling carefully constructed lies, to hold simultaneously two opinions which cancelled out, knowing them to be contradictory and believing in both of them, to use logic against logic, to repudiate morality while laying claim to it, to believe that democracy was impossible and that the Party was the guardian of democracy, to forget, whatever it was necessary to forget, then to draw it back into memory again at the moment when it was needed, and then promptly to forget it again, and above all, to apply the same process to the process itself -- that was the ultimate subtlety; consciously to induce unconsciousness, and then, once again, to become unconscious of the act of hypnosis you had just performed. Even to understand the word ''doublethink'' involved the use of doublethink..', null)/ +INSERT INTO t_book VALUES (2, 1, null, null, 'Animal Farm', 1945, 1, null, null)/ +INSERT INTO t_book VALUES (3, 2, null, null, 'O Alquimista', 1988, 4, null, null)/ +INSERT INTO t_book VALUES (4, 2, null, null, 'Brida', 1990, 2, null, null)/ + +INSERT INTO t_book_store (name) VALUES + ('Orell Füssli'), + ('Ex Libris'), + ('Buchhandlung im Volkshaus') +/ + +INSERT INTO t_book_to_book_store VALUES + ('Orell Füssli', 1, 10), + ('Orell Füssli', 2, 10), + ('Orell Füssli', 3, 10), + ('Ex Libris', 1, 1), + ('Ex Libris', 3, 2), + ('Buchhandlung im Volkshaus', 3, 1) +/ + + +INSERT INTO t_arrays VALUES (1, null, null, null)/ +INSERT INTO t_arrays VALUES (2, ARRAY[], ARRAY[], ARRAY[])/ +INSERT INTO t_arrays VALUES (3, ARRAY['a'], ARRAY[1], ARRAY['1981-07-10'])/ +INSERT INTO t_arrays VALUES (4, ARRAY['a', 'b'], ARRAY[1, 2], ARRAY['1981-07-10', '2000-01-01'])/ diff --git a/jOOQ-test/src/org/jooq/test/ingres/create.sql b/jOOQ-test/src/org/jooq/test/ingres/create.sql new file mode 100644 index 00000000000..9a318340eff --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/ingres/create.sql @@ -0,0 +1,363 @@ +DROP PROCEDURE IF EXISTS p_triggers/ + +DROP VIEW IF EXISTS v_author/ +DROP VIEW IF EXISTS v_book/ +DROP VIEW IF EXISTS v_library/ + +DROP RULE t_triggers_trigger/ + +DROP TABLE IF EXISTS t_triggers/ +DROP TABLE IF EXISTS t_book_to_book_store/ +DROP TABLE IF EXISTS t_book_store/ +DROP TABLE IF EXISTS t_book/ +DROP TABLE IF EXISTS t_book_details/ +DROP TABLE IF EXISTS t_author/ +DROP TABLE IF EXISTS t_language/ +DROP TABLE IF EXISTS x_test_case_71/ +DROP TABLE IF EXISTS x_test_case_64_69/ +DROP TABLE IF EXISTS x_test_case_85/ +DROP TABLE IF EXISTS x_unused/ +DROP TABLE IF EXISTS t_639_numbers_table/ +DROP TABLE IF EXISTS t_658_ref/ +DROP TABLE IF EXISTS t_658_11/ +DROP TABLE IF EXISTS t_658_21/ +DROP TABLE IF EXISTS t_658_31/ +DROP TABLE IF EXISTS t_658_12/ +DROP TABLE IF EXISTS t_658_22/ +DROP TABLE IF EXISTS t_658_32/ +DROP TABLE IF EXISTS t_725_lob_test/ +DROP TABLE IF EXISTS t_785/ +DROP TABLE IF EXISTS t_booleans/ +DROP TABLE IF EXISTS t_dates/ +DROP TABLE IF EXISTS t_identity/ +DROP TABLE IF EXISTS t_identity_pk/ + +CREATE TABLE t_identity_pk ( + id INTEGER NOT NULL GENERATED BY DEFAULT AS IDENTITY, + val int, + + CONSTRAINT pk_t_identity_pk PRIMARY KEY (id) +) +/ + +CREATE TABLE t_identity ( + id INTEGER GENERATED BY DEFAULT AS IDENTITY, + val int +) +/ + +CREATE TABLE t_dates ( + id int not null, + d date, + t time, + ts timestamp, + d_int int, + ts_bigint bigint, + + CONSTRAINT pk_t_dates PRIMARY KEY (id) +) +/ + +CREATE TABLE t_booleans ( + id int not null, + one_zero int, + true_false_lc varchar(5), + true_false_uc varchar(5), + yes_no_lc varchar(3), + yes_no_uc varchar(3), + y_n_lc char(1), + y_n_uc char(1), + vc_boolean varchar(1), + c_boolean char(1), + n_boolean int, + + CONSTRAINT pk_t_booleans PRIMARY KEY (id) +) +/ + +CREATE TABLE t_triggers ( + id_generated INTEGER NOT NULL GENERATED BY DEFAULT AS IDENTITY, + id int, + counter int, + + CONSTRAINT pk_t_triggers PRIMARY KEY (id_generated) +) +/ + +CREATE PROCEDURE p_triggers AS +BEGIN + UPDATE t_triggers + SET id = id_generated, + counter = id_generated * 2; +END +/ + +CREATE RULE t_triggers_trigger +AFTER INSERT OF t_triggers +EXECUTE PROCEDURE p_triggers +/ + +CREATE TABLE t_language ( + cd CHAR(2) NOT NULL, + description VARCHAR(50), + description_english VARCHAR(50), + id INTEGER NOT NULL, + + CONSTRAINT pk_t_language PRIMARY KEY (ID) +) +/ +COMMENT ON TABLE t_language IS 'An entity holding language master data'/ +COMMENT ON COLUMN t_language.id IS 'The language ID'/ +COMMENT ON COLUMN t_language.cd IS 'The language ISO code'/ +COMMENT ON COLUMN t_language.description IS 'The language description'/ + +CREATE TABLE t_658_11 ( + id CHAR(3) NOT NULL, + + CONSTRAINT pk_t_658_11 PRIMARY KEY (id) +) +/ + +CREATE TABLE t_658_21 ( + id INT NOT NULL, + + CONSTRAINT pk_t_658_21 PRIMARY KEY (id) +) +/ + +CREATE TABLE t_658_31 ( + id bigint NOT NULL, + + CONSTRAINT pk_t_658_31 PRIMARY KEY (id) +) +/ + +CREATE TABLE t_658_12 ( + id CHAR(3) NOT NULL, + cd CHAR(3) NOT NULL, + + CONSTRAINT pk_t_658_12 PRIMARY KEY (id) +) +/ + +CREATE TABLE t_658_22 ( + id INT NOT NULL, + cd INT NOT NULL, + + CONSTRAINT pk_t_658_22 PRIMARY KEY (id) +) +/ + +CREATE TABLE t_658_32 ( + id bigint NOT NULL, + cd bigint NOT NULL, + + CONSTRAINT pk_t_658_32 PRIMARY KEY (id) +) +/ + +CREATE TABLE t_658_ref ( + ref_11 char(3), + ref_21 int, + ref_31 bigint, + ref_12 char(3), + ref_22 int, + ref_32 bigint, + + CONSTRAINT fk_t_658_11 FOREIGN KEY (ref_11) REFERENCES t_658_11(id), + CONSTRAINT fk_t_658_21 FOREIGN KEY (ref_21) REFERENCES t_658_21(id), + CONSTRAINT fk_t_658_31 FOREIGN KEY (ref_31) REFERENCES t_658_31(id), + CONSTRAINT fk_t_658_12 FOREIGN KEY (ref_12) REFERENCES t_658_12(id), + CONSTRAINT fk_t_658_22 FOREIGN KEY (ref_22) REFERENCES t_658_22(id), + CONSTRAINT fk_t_658_32 FOREIGN KEY (ref_32) REFERENCES t_658_32(id) +) +/ + +CREATE TABLE t_725_lob_test ( + ID int NOT NULL, + LOB BLOB NULL, + + CONSTRAINT pk_t_725_lob_test PRIMARY KEY (id) +) +/ + +CREATE TABLE t_785 ( + ID int, + NAME varchar(50), + VALUE varchar(50) +) +/ + +CREATE TABLE t_author ( + ID INT NOT NULL, + FIRST_NAME VARCHAR(50), + LAST_NAME VARCHAR(50) NOT NULL, + DATE_OF_BIRTH DATE, + YEAR_OF_BIRTH INT, + ADDRESS VARCHAR(50), + + CONSTRAINT pk_t_author PRIMARY KEY (ID) +) +/ +COMMENT ON TABLE t_author IS 'An entity holding authors of books'/ +COMMENT ON COLUMN t_author.id IS 'The author ID'/ +COMMENT ON COLUMN t_author.first_name IS 'The author''s first name'/ +COMMENT ON COLUMN t_author.last_name IS 'The author''s last name'/ +COMMENT ON COLUMN t_author.date_of_birth IS 'The author''s date of birth'/ +COMMENT ON COLUMN t_author.year_of_birth IS 'The author''s year of birth'/ +COMMENT ON COLUMN t_author.address IS 'The author''s address'/ + +CREATE TABLE t_book_details ( + ID INT NOT NULL, + + CONSTRAINT pk_t_book_details PRIMARY KEY (ID) +) +/ +COMMENT ON TABLE t_book_details IS 'An unused details table' +/ + +CREATE TABLE t_book ( + ID INT NOT NULL, + AUTHOR_ID INT NOT NULL, + co_author_id int, + DETAILS_ID INT, + TITLE VARCHAR(400) NOT NULL, + PUBLISHED_IN INT NOT NULL, + LANGUAGE_ID INT NOT NULL, + CONTENT_TEXT CLOB, + CONTENT_PDF BLOB, + + CONSTRAINT pk_t_book PRIMARY KEY (ID), + CONSTRAINT fk_t_book_author_id FOREIGN KEY (AUTHOR_ID) REFERENCES T_AUTHOR(ID), + CONSTRAINT fk_t_book_co_author_id FOREIGN KEY (CO_AUTHOR_ID) REFERENCES T_AUTHOR(ID), + CONSTRAINT fk_t_book_details_id FOREIGN KEY (DETAILS_ID) REFERENCES T_BOOK_DETAILS(ID), + CONSTRAINT fk_t_book_language_id FOREIGN KEY (LANGUAGE_ID) REFERENCES T_LANGUAGE(ID) +) +/ +COMMENT ON TABLE t_book IS 'An entity holding books'/ +COMMENT ON COLUMN t_book.id IS 'The book ID'/ +COMMENT ON COLUMN t_book.author_id IS 'The author ID in entity ''author'''/ +COMMENT ON COLUMN t_book.title IS 'The book''s title'/ +COMMENT ON COLUMN t_book.published_in IS 'The year the book was published in'/ +COMMENT ON COLUMN t_book.language_id IS 'The language of the book'/ +COMMENT ON COLUMN t_book.content_text IS 'Some textual content of the book'/ +COMMENT ON COLUMN t_book.content_pdf IS 'Some binary content of the book'/ + + +CREATE TABLE t_book_store ( + name VARCHAR(400) NOT NULL, + + CONSTRAINT uk_t_book_store_name UNIQUE(name) +) +/ +COMMENT ON TABLE t_book_store IS 'A book store' +/ +COMMENT ON COLUMN t_book_store.name IS 'The books store name' +/ + + +CREATE TABLE t_book_to_book_store ( + book_store_name VARCHAR(400) NOT NULL, + book_id INTEGER NOT NULL, + stock INTEGER, + + CONSTRAINT pk_b2bs PRIMARY KEY(book_store_name, book_id), + CONSTRAINT fk_b2bs_bs_name FOREIGN KEY (book_store_name) + REFERENCES t_book_store (name) + ON DELETE CASCADE, + CONSTRAINT fk_b2bs_b_id FOREIGN KEY (book_id) + REFERENCES t_book (id) + ON DELETE CASCADE +) +/ +COMMENT ON TABLE t_book_to_book_store IS 'An m:n relation between books and book stores'/ +COMMENT ON COLUMN t_book_to_book_store.book_store_name IS 'The book store name'/ +COMMENT ON COLUMN t_book_to_book_store.book_id IS 'The book ID'/ +COMMENT ON COLUMN t_book_to_book_store.stock IS 'The number of books on stock'/ + + +CREATE TABLE x_unused ( + ID INT NOT NULL, + NAME VARCHAR(10) NOT NULL, + BIG_INTEGER DECIMAL(25), + ID_REF INT, + CLASS INT, + FIELDS INT, + CONFIGURATION INT, + U_D_T INT, + META_DATA INT, + TYPE0 INT, + PRIMARY_KEY INT, + PRIMARYKEY INT, + NAME_REF VARCHAR(10), + "FIELD 737" DECIMAL(25, 2), + + CONSTRAINT pk_x_unused PRIMARY KEY(ID, NAME), + CONSTRAINT uk_x_unused_id UNIQUE(ID), + CONSTRAINT fk_x_unused_self FOREIGN KEY(ID_REF, NAME_REF) REFERENCES X_UNUSED(ID, NAME) +) +/ +COMMENT ON TABLE x_unused IS 'An unused table in the same schema.' +/ + +CREATE TABLE t_639_numbers_table ( + ID INT NOT NULL, + BYTE TINYINT, + SHORT SMALLINT, + INTEGER INT, + LONG BIGINT, + BYTE_DECIMAL DECIMAL(2, 0), + SHORT_DECIMAL DECIMAL(4, 0), + INTEGER_DECIMAL DECIMAL(9, 0), + LONG_DECIMAL DECIMAL(18, 0), + BIG_INTEGER DECIMAL(22, 0), + BIG_DECIMAL DECIMAL(22, 5), + FLOAT REAL, + DOUBLE FLOAT, + + CONSTRAINT pk_t_639_numbers_table PRIMARY KEY(ID) +) +/ + +CREATE TABLE x_test_case_64_69 ( + ID INT NOT NULL, + UNUSED_ID INT, + + CONSTRAINT pk_x_test_case_64_69 PRIMARY KEY(ID), + CONSTRAINT fk_x_test_case_64_69a FOREIGN KEY(UNUSED_ID) REFERENCES X_UNUSED(ID), + CONSTRAINT fk_x_test_case_64_69b FOREIGN KEY(UNUSED_ID) REFERENCES X_UNUSED(ID) +) +/ + +CREATE TABLE x_test_case_71 ( + ID INT NOT NULL, + TEST_CASE_64_69_ID INT, + + CONSTRAINT pk_x_test_case_71 PRIMARY KEY(ID), + CONSTRAINT fk_x_test_case_71 FOREIGN KEY(TEST_CASE_64_69_ID) REFERENCES X_TEST_CASE_64_69(ID) +) +/ + +CREATE TABLE x_test_case_85 ( + id int NOT NULL, + x_unused_id int, + x_unused_name VARCHAR(10), + + CONSTRAINT pk_x_test_case_85 PRIMARY KEY(ID), + CONSTRAINT fk_x_test_case_85 FOREIGN KEY(x_unused_id, x_unused_name) REFERENCES X_UNUSED(id, name) +) +/ + +CREATE VIEW V_LIBRARY (AUTHOR, TITLE) AS +SELECT T_AUTHOR.FIRST_NAME || ' ' || T_AUTHOR.LAST_NAME, T_BOOK.TITLE +FROM T_AUTHOR JOIN T_BOOK ON T_BOOK.AUTHOR_ID = T_AUTHOR.ID +/ + +CREATE VIEW v_author AS +SELECT * FROM t_author +/ + +CREATE VIEW v_book AS +SELECT * FROM t_book +/ + diff --git a/jOOQ-test/src/org/jooq/test/ingres/generatedclasses/Keys.java b/jOOQ-test/src/org/jooq/test/ingres/generatedclasses/Keys.java new file mode 100644 index 00000000000..3eaf944b626 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/ingres/generatedclasses/Keys.java @@ -0,0 +1,50 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.ingres.generatedclasses; + +/** + * This class is generated by jOOQ. + * + * A class modelling foreign key relationships between tables of the test schema + */ +@SuppressWarnings({"unchecked"}) +public class Keys extends org.jooq.impl.AbstractKeys { + + // IDENTITY definitions + public static final org.jooq.Identity IDENTITY_T_IDENTITY = createIdentity(org.jooq.test.ingres.generatedclasses.tables.TIdentity.T_IDENTITY, org.jooq.test.ingres.generatedclasses.tables.TIdentity.ID); + public static final org.jooq.Identity IDENTITY_T_IDENTITY_PK = createIdentity(org.jooq.test.ingres.generatedclasses.tables.TIdentityPk.T_IDENTITY_PK, org.jooq.test.ingres.generatedclasses.tables.TIdentityPk.ID); + public static final org.jooq.Identity IDENTITY_T_TRIGGERS = createIdentity(org.jooq.test.ingres.generatedclasses.tables.TTriggers.T_TRIGGERS, org.jooq.test.ingres.generatedclasses.tables.TTriggers.ID_GENERATED); + + // UNIQUE and PRIMARY KEY definitions + public static final org.jooq.UniqueKey PK_T_639_NUMBERS_TABLE = createUniqueKey(org.jooq.test.ingres.generatedclasses.tables.T_639NumbersTable.T_639_NUMBERS_TABLE, org.jooq.test.ingres.generatedclasses.tables.T_639NumbersTable.ID); + public static final org.jooq.UniqueKey PK_T_725_LOB_TEST = createUniqueKey(org.jooq.test.ingres.generatedclasses.tables.T_725LobTest.T_725_LOB_TEST, org.jooq.test.ingres.generatedclasses.tables.T_725LobTest.ID); + public static final org.jooq.UniqueKey PK_T_AUTHOR = createUniqueKey(org.jooq.test.ingres.generatedclasses.tables.TAuthor.T_AUTHOR, org.jooq.test.ingres.generatedclasses.tables.TAuthor.ID); + public static final org.jooq.UniqueKey PK_T_BOOK = createUniqueKey(org.jooq.test.ingres.generatedclasses.tables.TBook.T_BOOK, org.jooq.test.ingres.generatedclasses.tables.TBook.ID); + public static final org.jooq.UniqueKey UK_T_BOOK_STORE_NAME = createUniqueKey(org.jooq.test.ingres.generatedclasses.tables.TBookStore.T_BOOK_STORE, org.jooq.test.ingres.generatedclasses.tables.TBookStore.NAME); + public static final org.jooq.UniqueKey PK_B2BS = createUniqueKey(org.jooq.test.ingres.generatedclasses.tables.TBookToBookStore.T_BOOK_TO_BOOK_STORE, org.jooq.test.ingres.generatedclasses.tables.TBookToBookStore.BOOK_STORE_NAME, org.jooq.test.ingres.generatedclasses.tables.TBookToBookStore.BOOK_ID); + public static final org.jooq.UniqueKey PK_T_BOOLEANS = createUniqueKey(org.jooq.test.ingres.generatedclasses.tables.TBooleans.T_BOOLEANS, org.jooq.test.ingres.generatedclasses.tables.TBooleans.ID); + public static final org.jooq.UniqueKey PK_T_DATES = createUniqueKey(org.jooq.test.ingres.generatedclasses.tables.TDates.T_DATES, org.jooq.test.ingres.generatedclasses.tables.TDates.ID); + public static final org.jooq.UniqueKey PK_T_IDENTITY_PK = createUniqueKey(org.jooq.test.ingres.generatedclasses.tables.TIdentityPk.T_IDENTITY_PK, org.jooq.test.ingres.generatedclasses.tables.TIdentityPk.ID); + public static final org.jooq.UniqueKey PK_T_TRIGGERS = createUniqueKey(org.jooq.test.ingres.generatedclasses.tables.TTriggers.T_TRIGGERS, org.jooq.test.ingres.generatedclasses.tables.TTriggers.ID_GENERATED); + public static final org.jooq.UniqueKey PK_X_TEST_CASE_64_69 = createUniqueKey(org.jooq.test.ingres.generatedclasses.tables.XTestCase_64_69.X_TEST_CASE_64_69, org.jooq.test.ingres.generatedclasses.tables.XTestCase_64_69.ID); + public static final org.jooq.UniqueKey PK_X_TEST_CASE_71 = createUniqueKey(org.jooq.test.ingres.generatedclasses.tables.XTestCase_71.X_TEST_CASE_71, org.jooq.test.ingres.generatedclasses.tables.XTestCase_71.ID); + public static final org.jooq.UniqueKey PK_X_TEST_CASE_85 = createUniqueKey(org.jooq.test.ingres.generatedclasses.tables.XTestCase_85.X_TEST_CASE_85, org.jooq.test.ingres.generatedclasses.tables.XTestCase_85.ID); + public static final org.jooq.UniqueKey PK_X_UNUSED = createUniqueKey(org.jooq.test.ingres.generatedclasses.tables.XUnused.X_UNUSED, org.jooq.test.ingres.generatedclasses.tables.XUnused.ID, org.jooq.test.ingres.generatedclasses.tables.XUnused.NAME); + public static final org.jooq.UniqueKey UK_X_UNUSED_ID = createUniqueKey(org.jooq.test.ingres.generatedclasses.tables.XUnused.X_UNUSED, org.jooq.test.ingres.generatedclasses.tables.XUnused.ID); + + // FOREIGN KEY definitions + public static final org.jooq.ForeignKey FK_T_BOOK_AUTHOR_ID = createForeignKey(PK_T_AUTHOR, org.jooq.test.ingres.generatedclasses.tables.TBook.T_BOOK, org.jooq.test.ingres.generatedclasses.tables.TBook.AUTHOR_ID); + public static final org.jooq.ForeignKey FK_T_BOOK_CO_AUTHOR_ID = createForeignKey(PK_T_AUTHOR, org.jooq.test.ingres.generatedclasses.tables.TBook.T_BOOK, org.jooq.test.ingres.generatedclasses.tables.TBook.CO_AUTHOR_ID); + public static final org.jooq.ForeignKey FK_B2BS_BS_NAME = createForeignKey(UK_T_BOOK_STORE_NAME, org.jooq.test.ingres.generatedclasses.tables.TBookToBookStore.T_BOOK_TO_BOOK_STORE, org.jooq.test.ingres.generatedclasses.tables.TBookToBookStore.BOOK_STORE_NAME); + public static final org.jooq.ForeignKey FK_B2BS_B_ID = createForeignKey(PK_T_BOOK, org.jooq.test.ingres.generatedclasses.tables.TBookToBookStore.T_BOOK_TO_BOOK_STORE, org.jooq.test.ingres.generatedclasses.tables.TBookToBookStore.BOOK_ID); + public static final org.jooq.ForeignKey FK_X_TEST_CASE_64_69A = createForeignKey(UK_X_UNUSED_ID, org.jooq.test.ingres.generatedclasses.tables.XTestCase_64_69.X_TEST_CASE_64_69, org.jooq.test.ingres.generatedclasses.tables.XTestCase_64_69.UNUSED_ID); + public static final org.jooq.ForeignKey FK_X_TEST_CASE_71 = createForeignKey(PK_X_TEST_CASE_64_69, org.jooq.test.ingres.generatedclasses.tables.XTestCase_71.X_TEST_CASE_71, org.jooq.test.ingres.generatedclasses.tables.XTestCase_71.TEST_CASE_64_69_ID); + public static final org.jooq.ForeignKey FK_X_TEST_CASE_85 = createForeignKey(PK_X_UNUSED, org.jooq.test.ingres.generatedclasses.tables.XTestCase_85.X_TEST_CASE_85, org.jooq.test.ingres.generatedclasses.tables.XTestCase_85.X_UNUSED_ID, org.jooq.test.ingres.generatedclasses.tables.XTestCase_85.X_UNUSED_NAME); + public static final org.jooq.ForeignKey FK_X_UNUSED_SELF = createForeignKey(PK_X_UNUSED, org.jooq.test.ingres.generatedclasses.tables.XUnused.X_UNUSED, org.jooq.test.ingres.generatedclasses.tables.XUnused.ID_REF, org.jooq.test.ingres.generatedclasses.tables.XUnused.NAME_REF); + + /** + * No instances + */ + private Keys() {} +} diff --git a/jOOQ-test/src/org/jooq/test/ingres/generatedclasses/Sequences.java b/jOOQ-test/src/org/jooq/test/ingres/generatedclasses/Sequences.java new file mode 100644 index 00000000000..1456a3b4d39 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/ingres/generatedclasses/Sequences.java @@ -0,0 +1,22 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.ingres.generatedclasses; + +/** + * This class is generated by jOOQ. + * + * Convenience access to all sequences in test + */ +public final class Sequences { + + /** + * The sequence test.s_author_id + */ + public static final org.jooq.Sequence S_AUTHOR_ID = new org.jooq.impl.SequenceImpl("s_author_id", org.jooq.test.ingres.generatedclasses.Test.TEST, org.jooq.impl.SQLDataType.BIGINT); + + /** + * No instances + */ + private Sequences() {} +} diff --git a/jOOQ-test/src/org/jooq/test/ingres/generatedclasses/Tables.java b/jOOQ-test/src/org/jooq/test/ingres/generatedclasses/Tables.java new file mode 100644 index 00000000000..b9d0f1e1d82 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/ingres/generatedclasses/Tables.java @@ -0,0 +1,117 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.ingres.generatedclasses; + +/** + * This class is generated by jOOQ. + * + * Convenience access to all tables in test + */ +public final class Tables { + + /** + * The table test.t_639_numbers_table + */ + public static org.jooq.test.ingres.generatedclasses.tables.T_639NumbersTable T_639_NUMBERS_TABLE = org.jooq.test.ingres.generatedclasses.tables.T_639NumbersTable.T_639_NUMBERS_TABLE; + + /** + * The table test.t_658_ref + */ + public static org.jooq.test.ingres.generatedclasses.tables.T_658Ref T_658_REF = org.jooq.test.ingres.generatedclasses.tables.T_658Ref.T_658_REF; + + /** + * The table test.t_725_lob_test + */ + public static org.jooq.test.ingres.generatedclasses.tables.T_725LobTest T_725_LOB_TEST = org.jooq.test.ingres.generatedclasses.tables.T_725LobTest.T_725_LOB_TEST; + + /** + * The table test.t_785 + */ + public static org.jooq.test.ingres.generatedclasses.tables.T_785 T_785 = org.jooq.test.ingres.generatedclasses.tables.T_785.T_785; + + /** + * An entity holding authors of books + */ + public static org.jooq.test.ingres.generatedclasses.tables.TAuthor T_AUTHOR = org.jooq.test.ingres.generatedclasses.tables.TAuthor.T_AUTHOR; + + /** + * An entity holding books + */ + public static org.jooq.test.ingres.generatedclasses.tables.TBook T_BOOK = org.jooq.test.ingres.generatedclasses.tables.TBook.T_BOOK; + + /** + * A book store + */ + public static org.jooq.test.ingres.generatedclasses.tables.TBookStore T_BOOK_STORE = org.jooq.test.ingres.generatedclasses.tables.TBookStore.T_BOOK_STORE; + + /** + * An m:n relation between books and book stores + */ + public static org.jooq.test.ingres.generatedclasses.tables.TBookToBookStore T_BOOK_TO_BOOK_STORE = org.jooq.test.ingres.generatedclasses.tables.TBookToBookStore.T_BOOK_TO_BOOK_STORE; + + /** + * The table test.t_booleans + */ + public static org.jooq.test.ingres.generatedclasses.tables.TBooleans T_BOOLEANS = org.jooq.test.ingres.generatedclasses.tables.TBooleans.T_BOOLEANS; + + /** + * The table test.t_dates + */ + public static org.jooq.test.ingres.generatedclasses.tables.TDates T_DATES = org.jooq.test.ingres.generatedclasses.tables.TDates.T_DATES; + + /** + * The table test.t_identity + */ + public static org.jooq.test.ingres.generatedclasses.tables.TIdentity T_IDENTITY = org.jooq.test.ingres.generatedclasses.tables.TIdentity.T_IDENTITY; + + /** + * The table test.t_identity_pk + */ + public static org.jooq.test.ingres.generatedclasses.tables.TIdentityPk T_IDENTITY_PK = org.jooq.test.ingres.generatedclasses.tables.TIdentityPk.T_IDENTITY_PK; + + /** + * The table test.t_triggers + */ + public static org.jooq.test.ingres.generatedclasses.tables.TTriggers T_TRIGGERS = org.jooq.test.ingres.generatedclasses.tables.TTriggers.T_TRIGGERS; + + /** + * The table test.v_author + */ + public static org.jooq.test.ingres.generatedclasses.tables.VAuthor V_AUTHOR = org.jooq.test.ingres.generatedclasses.tables.VAuthor.V_AUTHOR; + + /** + * The table test.v_book + */ + public static org.jooq.test.ingres.generatedclasses.tables.VBook V_BOOK = org.jooq.test.ingres.generatedclasses.tables.VBook.V_BOOK; + + /** + * The table test.v_library + */ + public static org.jooq.test.ingres.generatedclasses.tables.VLibrary V_LIBRARY = org.jooq.test.ingres.generatedclasses.tables.VLibrary.V_LIBRARY; + + /** + * The table test.x_test_case_64_69 + */ + public static org.jooq.test.ingres.generatedclasses.tables.XTestCase_64_69 X_TEST_CASE_64_69 = org.jooq.test.ingres.generatedclasses.tables.XTestCase_64_69.X_TEST_CASE_64_69; + + /** + * The table test.x_test_case_71 + */ + public static org.jooq.test.ingres.generatedclasses.tables.XTestCase_71 X_TEST_CASE_71 = org.jooq.test.ingres.generatedclasses.tables.XTestCase_71.X_TEST_CASE_71; + + /** + * The table test.x_test_case_85 + */ + public static org.jooq.test.ingres.generatedclasses.tables.XTestCase_85 X_TEST_CASE_85 = org.jooq.test.ingres.generatedclasses.tables.XTestCase_85.X_TEST_CASE_85; + + /** + * An unused table in the same schema. + */ + public static org.jooq.test.ingres.generatedclasses.tables.XUnused X_UNUSED = org.jooq.test.ingres.generatedclasses.tables.XUnused.X_UNUSED; + + /** + * No instances + */ + private Tables() {} +} diff --git a/jOOQ-test/src/org/jooq/test/ingres/generatedclasses/Test.java b/jOOQ-test/src/org/jooq/test/ingres/generatedclasses/Test.java new file mode 100644 index 00000000000..b6e1e5a53c8 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/ingres/generatedclasses/Test.java @@ -0,0 +1,54 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.ingres.generatedclasses; + +/** + * This class is generated by jOOQ. + */ +public class Test extends org.jooq.impl.SchemaImpl { + + private static final long serialVersionUID = -1048243755; + + /** + * The singleton instance of test + */ + public static final Test TEST = new Test(); + + /** + * No further instances allowed + */ + private Test() { + super("test"); + } + + @Override + public final java.util.List> getSequences() { + return java.util.Arrays.>asList(org.jooq.test.ingres.generatedclasses.Sequences.S_AUTHOR_ID); + } + + @Override + public final java.util.List> getTables() { + return java.util.Arrays.>asList( + org.jooq.test.ingres.generatedclasses.tables.T_639NumbersTable.T_639_NUMBERS_TABLE, + org.jooq.test.ingres.generatedclasses.tables.T_658Ref.T_658_REF, + org.jooq.test.ingres.generatedclasses.tables.T_725LobTest.T_725_LOB_TEST, + org.jooq.test.ingres.generatedclasses.tables.T_785.T_785, + org.jooq.test.ingres.generatedclasses.tables.TAuthor.T_AUTHOR, + org.jooq.test.ingres.generatedclasses.tables.TBook.T_BOOK, + org.jooq.test.ingres.generatedclasses.tables.TBookStore.T_BOOK_STORE, + org.jooq.test.ingres.generatedclasses.tables.TBookToBookStore.T_BOOK_TO_BOOK_STORE, + org.jooq.test.ingres.generatedclasses.tables.TBooleans.T_BOOLEANS, + org.jooq.test.ingres.generatedclasses.tables.TDates.T_DATES, + org.jooq.test.ingres.generatedclasses.tables.TIdentity.T_IDENTITY, + org.jooq.test.ingres.generatedclasses.tables.TIdentityPk.T_IDENTITY_PK, + org.jooq.test.ingres.generatedclasses.tables.TTriggers.T_TRIGGERS, + org.jooq.test.ingres.generatedclasses.tables.VAuthor.V_AUTHOR, + org.jooq.test.ingres.generatedclasses.tables.VBook.V_BOOK, + org.jooq.test.ingres.generatedclasses.tables.VLibrary.V_LIBRARY, + org.jooq.test.ingres.generatedclasses.tables.XTestCase_64_69.X_TEST_CASE_64_69, + org.jooq.test.ingres.generatedclasses.tables.XTestCase_71.X_TEST_CASE_71, + org.jooq.test.ingres.generatedclasses.tables.XTestCase_85.X_TEST_CASE_85, + org.jooq.test.ingres.generatedclasses.tables.XUnused.X_UNUSED); + } +} diff --git a/jOOQ-test/src/org/jooq/test/ingres/generatedclasses/TestFactory.java b/jOOQ-test/src/org/jooq/test/ingres/generatedclasses/TestFactory.java new file mode 100644 index 00000000000..fc5d5fa761e --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/ingres/generatedclasses/TestFactory.java @@ -0,0 +1,41 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.ingres.generatedclasses; + +/** + * This class is generated by jOOQ. + */ +public class TestFactory extends org.jooq.util.ingres.IngresFactory { + + private static final long serialVersionUID = 1781756079; + + /** + * Create a factory with a connection + * + * @param connection The connection to use with objects created from this factory + */ + public TestFactory(java.sql.Connection connection) { + super(connection); + } + + /** + * Create a factory with a connection and a schema mapping + * + * @deprecated - 2.0.5 - Use {@link #TestFactory(java.sql.Connection, org.jooq.conf.Settings)} instead + */ + @Deprecated + public TestFactory(java.sql.Connection connection, org.jooq.SchemaMapping mapping) { + super(connection, mapping); + } + + /** + * Create a factory with a connection and some settings + * + * @param connection The connection to use with objects created from this factory + * @param settings The settings to apply to objects created from this factory + */ + public TestFactory(java.sql.Connection connection, org.jooq.conf.Settings settings) { + super(connection, settings); + } +} diff --git a/jOOQ-test/src/org/jooq/test/ingres/generatedclasses/enums/TLanguage.java b/jOOQ-test/src/org/jooq/test/ingres/generatedclasses/enums/TLanguage.java new file mode 100644 index 00000000000..80e18657ddc --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/ingres/generatedclasses/enums/TLanguage.java @@ -0,0 +1,67 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.ingres.generatedclasses.enums; + +/** + * This class is generated by jOOQ. + * + * An entity holding language master data + */ +public enum TLanguage implements org.jooq.MasterDataType { + + /** + * English + */ + en(1, "en", "English"), + + /** + * Deutsch + */ + de(2, "de", "Deutsch"), + + /** + * Français + */ + fr(3, "fr", "Français"), + pt(4, "pt", null), + ; + + private final java.lang.Integer id; + private final java.lang.String cd; + private final java.lang.String description; + + private TLanguage(java.lang.Integer id, java.lang.String cd, java.lang.String description) { + this.id = id; + this.cd = cd; + this.description = description; + } + + @Override + public java.lang.Integer getPrimaryKey() { + return id; + } + + /** + * The language ID + * + * PRIMARY KEY + */ + public final java.lang.Integer getId() { + return id; + } + + /** + * The language ISO code + */ + public final java.lang.String getCd() { + return cd; + } + + /** + * The language description + */ + public final java.lang.String getDescription() { + return description; + } +} diff --git a/jOOQ-test/src/org/jooq/test/ingres/generatedclasses/enums/T_658_11.java b/jOOQ-test/src/org/jooq/test/ingres/generatedclasses/enums/T_658_11.java new file mode 100644 index 00000000000..d9945f5ba8b --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/ingres/generatedclasses/enums/T_658_11.java @@ -0,0 +1,46 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.ingres.generatedclasses.enums; + +/** + * This class is generated by jOOQ. + */ +public enum T_658_11 implements org.jooq.MasterDataType { + + /** + * A + */ + A__("A "), + + /** + * B + */ + B__("B "), + + /** + * C + */ + C__("C "), + ; + + private final java.lang.String id; + + private T_658_11(java.lang.String id) { + this.id = id; + } + + @Override + public java.lang.String getPrimaryKey() { + return id; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final java.lang.String getId() { + return id; + } +} diff --git a/jOOQ-test/src/org/jooq/test/ingres/generatedclasses/enums/T_658_12.java b/jOOQ-test/src/org/jooq/test/ingres/generatedclasses/enums/T_658_12.java new file mode 100644 index 00000000000..535db9e4f98 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/ingres/generatedclasses/enums/T_658_12.java @@ -0,0 +1,55 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.ingres.generatedclasses.enums; + +/** + * This class is generated by jOOQ. + */ +public enum T_658_12 implements org.jooq.MasterDataType { + + /** + * A + */ + A__("A ", "A "), + + /** + * B + */ + B__("B ", "B "), + + /** + * C + */ + C__("C ", "C "), + ; + + private final java.lang.String id; + private final java.lang.String cd; + + private T_658_12(java.lang.String id, java.lang.String cd) { + this.id = id; + this.cd = cd; + } + + @Override + public java.lang.String getPrimaryKey() { + return id; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final java.lang.String getId() { + return id; + } + + /** + * An uncommented item + */ + public final java.lang.String getCd() { + return cd; + } +} diff --git a/jOOQ-test/src/org/jooq/test/ingres/generatedclasses/enums/T_658_21.java b/jOOQ-test/src/org/jooq/test/ingres/generatedclasses/enums/T_658_21.java new file mode 100644 index 00000000000..f3c95dc717b --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/ingres/generatedclasses/enums/T_658_21.java @@ -0,0 +1,46 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.ingres.generatedclasses.enums; + +/** + * This class is generated by jOOQ. + */ +public enum T_658_21 implements org.jooq.MasterDataType { + + /** + * 1 + */ + _1(1), + + /** + * 2 + */ + _2(2), + + /** + * 3 + */ + _3(3), + ; + + private final java.lang.Integer id; + + private T_658_21(java.lang.Integer id) { + this.id = id; + } + + @Override + public java.lang.Integer getPrimaryKey() { + return id; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final java.lang.Integer getId() { + return id; + } +} diff --git a/jOOQ-test/src/org/jooq/test/ingres/generatedclasses/enums/T_658_22.java b/jOOQ-test/src/org/jooq/test/ingres/generatedclasses/enums/T_658_22.java new file mode 100644 index 00000000000..111926645e3 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/ingres/generatedclasses/enums/T_658_22.java @@ -0,0 +1,55 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.ingres.generatedclasses.enums; + +/** + * This class is generated by jOOQ. + */ +public enum T_658_22 implements org.jooq.MasterDataType { + + /** + * 1 + */ + _1(1, 1), + + /** + * 2 + */ + _2(2, 2), + + /** + * 3 + */ + _3(3, 3), + ; + + private final java.lang.Integer id; + private final java.lang.Integer cd; + + private T_658_22(java.lang.Integer id, java.lang.Integer cd) { + this.id = id; + this.cd = cd; + } + + @Override + public java.lang.Integer getPrimaryKey() { + return id; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final java.lang.Integer getId() { + return id; + } + + /** + * An uncommented item + */ + public final java.lang.Integer getCd() { + return cd; + } +} diff --git a/jOOQ-test/src/org/jooq/test/ingres/generatedclasses/enums/T_658_31.java b/jOOQ-test/src/org/jooq/test/ingres/generatedclasses/enums/T_658_31.java new file mode 100644 index 00000000000..219b0ce3860 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/ingres/generatedclasses/enums/T_658_31.java @@ -0,0 +1,46 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.ingres.generatedclasses.enums; + +/** + * This class is generated by jOOQ. + */ +public enum T_658_31 implements org.jooq.MasterDataType { + + /** + * 1 + */ + _1(1L), + + /** + * 2 + */ + _2(2L), + + /** + * 3 + */ + _3(3L), + ; + + private final java.lang.Long id; + + private T_658_31(java.lang.Long id) { + this.id = id; + } + + @Override + public java.lang.Long getPrimaryKey() { + return id; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final java.lang.Long getId() { + return id; + } +} diff --git a/jOOQ-test/src/org/jooq/test/ingres/generatedclasses/enums/T_658_32.java b/jOOQ-test/src/org/jooq/test/ingres/generatedclasses/enums/T_658_32.java new file mode 100644 index 00000000000..b04f0def7e3 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/ingres/generatedclasses/enums/T_658_32.java @@ -0,0 +1,55 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.ingres.generatedclasses.enums; + +/** + * This class is generated by jOOQ. + */ +public enum T_658_32 implements org.jooq.MasterDataType { + + /** + * 1 + */ + _1(1L, 1L), + + /** + * 2 + */ + _2(2L, 2L), + + /** + * 3 + */ + _3(3L, 3L), + ; + + private final java.lang.Long id; + private final java.lang.Long cd; + + private T_658_32(java.lang.Long id, java.lang.Long cd) { + this.id = id; + this.cd = cd; + } + + @Override + public java.lang.Long getPrimaryKey() { + return id; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final java.lang.Long getId() { + return id; + } + + /** + * An uncommented item + */ + public final java.lang.Long getCd() { + return cd; + } +} diff --git a/jOOQ-test/src/org/jooq/test/ingres/generatedclasses/tables/TAuthor.java b/jOOQ-test/src/org/jooq/test/ingres/generatedclasses/tables/TAuthor.java new file mode 100644 index 00000000000..44f4edf97a6 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/ingres/generatedclasses/tables/TAuthor.java @@ -0,0 +1,82 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.ingres.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + * + * An entity holding authors of books + */ +public class TAuthor extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = 930126183; + + /** + * The singleton instance of test.t_author + */ + public static final org.jooq.test.ingres.generatedclasses.tables.TAuthor T_AUTHOR = new org.jooq.test.ingres.generatedclasses.tables.TAuthor(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.ingres.generatedclasses.tables.records.TAuthorRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * The author ID + * + * PRIMARY KEY + */ + public static final org.jooq.TableField ID = createField("id", org.jooq.impl.SQLDataType.INTEGER, T_AUTHOR); + + /** + * The author's first name + */ + public static final org.jooq.TableField FIRST_NAME = createField("first_name", org.jooq.impl.SQLDataType.VARCHAR, T_AUTHOR); + + /** + * The author's last name + */ + public static final org.jooq.TableField LAST_NAME = createField("last_name", org.jooq.impl.SQLDataType.VARCHAR, T_AUTHOR); + + /** + * The author's date of birth + */ + public static final org.jooq.TableField DATE_OF_BIRTH = createField("date_of_birth", org.jooq.impl.SQLDataType.DATE, T_AUTHOR); + + /** + * The author's year of birth + */ + public static final org.jooq.TableField YEAR_OF_BIRTH = createField("year_of_birth", org.jooq.impl.SQLDataType.INTEGER, T_AUTHOR); + + /** + * The author's address + */ + public static final org.jooq.TableField ADDRESS = createField("address", org.jooq.impl.SQLDataType.VARCHAR, T_AUTHOR); + + /** + * No further instances allowed + */ + private TAuthor() { + super("t_author", org.jooq.test.ingres.generatedclasses.Test.TEST); + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.test.ingres.generatedclasses.Keys.PK_T_AUTHOR; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.test.ingres.generatedclasses.Keys.PK_T_AUTHOR); + } +} diff --git a/jOOQ-test/src/org/jooq/test/ingres/generatedclasses/tables/TBook.java b/jOOQ-test/src/org/jooq/test/ingres/generatedclasses/tables/TBook.java new file mode 100644 index 00000000000..3250f4d4617 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/ingres/generatedclasses/tables/TBook.java @@ -0,0 +1,121 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.ingres.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + * + * An entity holding books + */ +public class TBook extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = 1940540674; + + /** + * The singleton instance of test.t_book + */ + public static final org.jooq.test.ingres.generatedclasses.tables.TBook T_BOOK = new org.jooq.test.ingres.generatedclasses.tables.TBook(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.ingres.generatedclasses.tables.records.TBookRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * The book ID + * + * PRIMARY KEY + */ + public static final org.jooq.TableField ID = createField("id", org.jooq.impl.SQLDataType.INTEGER, T_BOOK); + + /** + * The author ID in entity 'author' + *

+ *

+	 * CONSTRAINT fk_t_book_author_id
+	 * FOREIGN KEY (author_id)
+	 * REFERENCES test.t_author (id)
+	 * 
+ */ + public static final org.jooq.TableField AUTHOR_ID = createField("author_id", org.jooq.impl.SQLDataType.INTEGER, T_BOOK); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_t_book_co_author_id
+	 * FOREIGN KEY (co_author_id)
+	 * REFERENCES test.t_author (id)
+	 * 
+ */ + public static final org.jooq.TableField CO_AUTHOR_ID = createField("co_author_id", org.jooq.impl.SQLDataType.INTEGER, T_BOOK); + + /** + * An uncommented item + */ + public static final org.jooq.TableField DETAILS_ID = createField("details_id", org.jooq.impl.SQLDataType.INTEGER, T_BOOK); + + /** + * The book's title + */ + public static final org.jooq.TableField TITLE = createField("title", org.jooq.impl.SQLDataType.VARCHAR, T_BOOK); + + /** + * The year the book was published in + */ + public static final org.jooq.TableField PUBLISHED_IN = createField("published_in", org.jooq.impl.SQLDataType.INTEGER, T_BOOK); + + /** + * The language of the book + *

+ *

+	 * CONSTRAINT fk_t_book_language_id
+	 * FOREIGN KEY (language_id)
+	 * REFERENCES test.t_language (id)
+	 * 
+ */ + public static final org.jooq.TableField LANGUAGE_ID = createField("language_id", org.jooq.impl.SQLDataType.INTEGER.asMasterDataType(org.jooq.test.ingres.generatedclasses.enums.TLanguage.class), T_BOOK); + + /** + * Some textual content of the book + */ + public static final org.jooq.TableField CONTENT_TEXT = createField("content_text", org.jooq.impl.SQLDataType.LONGVARCHAR, T_BOOK); + + /** + * Some binary content of the book + */ + public static final org.jooq.TableField CONTENT_PDF = createField("content_pdf", org.jooq.impl.SQLDataType.LONGVARBINARY, T_BOOK); + + /** + * No further instances allowed + */ + private TBook() { + super("t_book", org.jooq.test.ingres.generatedclasses.Test.TEST); + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.test.ingres.generatedclasses.Keys.PK_T_BOOK; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.test.ingres.generatedclasses.Keys.PK_T_BOOK); + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getReferences() { + return java.util.Arrays.>asList(org.jooq.test.ingres.generatedclasses.Keys.FK_T_BOOK_AUTHOR_ID, org.jooq.test.ingres.generatedclasses.Keys.FK_T_BOOK_CO_AUTHOR_ID); + } +} diff --git a/jOOQ-test/src/org/jooq/test/ingres/generatedclasses/tables/TBookStore.java b/jOOQ-test/src/org/jooq/test/ingres/generatedclasses/tables/TBookStore.java new file mode 100644 index 00000000000..462cd643801 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/ingres/generatedclasses/tables/TBookStore.java @@ -0,0 +1,57 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.ingres.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + * + * A book store + */ +public class TBookStore extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = -1957365280; + + /** + * The singleton instance of test.t_book_store + */ + public static final org.jooq.test.ingres.generatedclasses.tables.TBookStore T_BOOK_STORE = new org.jooq.test.ingres.generatedclasses.tables.TBookStore(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.ingres.generatedclasses.tables.records.TBookStoreRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * The books store name + * + * PRIMARY KEY + */ + public static final org.jooq.TableField NAME = createField("name", org.jooq.impl.SQLDataType.VARCHAR, T_BOOK_STORE); + + /** + * No further instances allowed + */ + private TBookStore() { + super("t_book_store", org.jooq.test.ingres.generatedclasses.Test.TEST); + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.test.ingres.generatedclasses.Keys.UK_T_BOOK_STORE_NAME; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.test.ingres.generatedclasses.Keys.UK_T_BOOK_STORE_NAME); + } +} diff --git a/jOOQ-test/src/org/jooq/test/ingres/generatedclasses/tables/TBookToBookStore.java b/jOOQ-test/src/org/jooq/test/ingres/generatedclasses/tables/TBookToBookStore.java new file mode 100644 index 00000000000..52e79f95b5b --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/ingres/generatedclasses/tables/TBookToBookStore.java @@ -0,0 +1,87 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.ingres.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + * + * An m:n relation between books and book stores + */ +public class TBookToBookStore extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = 1144367547; + + /** + * The singleton instance of test.t_book_to_book_store + */ + public static final org.jooq.test.ingres.generatedclasses.tables.TBookToBookStore T_BOOK_TO_BOOK_STORE = new org.jooq.test.ingres.generatedclasses.tables.TBookToBookStore(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.ingres.generatedclasses.tables.records.TBookToBookStoreRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * The book store name + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT fk_b2bs_bs_name
+	 * FOREIGN KEY (book_store_name)
+	 * REFERENCES test.t_book_store (name)
+	 * 
+ */ + public static final org.jooq.TableField BOOK_STORE_NAME = createField("book_store_name", org.jooq.impl.SQLDataType.VARCHAR, T_BOOK_TO_BOOK_STORE); + + /** + * The book ID + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT fk_b2bs_b_id
+	 * FOREIGN KEY (book_id)
+	 * REFERENCES test.t_book (id)
+	 * 
+ */ + public static final org.jooq.TableField BOOK_ID = createField("book_id", org.jooq.impl.SQLDataType.INTEGER, T_BOOK_TO_BOOK_STORE); + + /** + * The number of books on stock + */ + public static final org.jooq.TableField STOCK = createField("stock", org.jooq.impl.SQLDataType.INTEGER, T_BOOK_TO_BOOK_STORE); + + /** + * No further instances allowed + */ + private TBookToBookStore() { + super("t_book_to_book_store", org.jooq.test.ingres.generatedclasses.Test.TEST); + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.test.ingres.generatedclasses.Keys.PK_B2BS; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.test.ingres.generatedclasses.Keys.PK_B2BS); + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getReferences() { + return java.util.Arrays.>asList(org.jooq.test.ingres.generatedclasses.Keys.FK_B2BS_BS_NAME, org.jooq.test.ingres.generatedclasses.Keys.FK_B2BS_B_ID); + } +} diff --git a/jOOQ-test/src/org/jooq/test/ingres/generatedclasses/tables/TBooleans.java b/jOOQ-test/src/org/jooq/test/ingres/generatedclasses/tables/TBooleans.java new file mode 100644 index 00000000000..060d1283b3d --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/ingres/generatedclasses/tables/TBooleans.java @@ -0,0 +1,105 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.ingres.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class TBooleans extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = -455170602; + + /** + * The singleton instance of test.t_booleans + */ + public static final org.jooq.test.ingres.generatedclasses.tables.TBooleans T_BOOLEANS = new org.jooq.test.ingres.generatedclasses.tables.TBooleans(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.ingres.generatedclasses.tables.records.TBooleansRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public static final org.jooq.TableField ID = createField("id", org.jooq.impl.SQLDataType.INTEGER, T_BOOLEANS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField ONE_ZERO = createField("one_zero", org.jooq.impl.SQLDataType.INTEGER.asConvertedDataType(new org.jooq.test._.converters.Boolean_10_Converter()), T_BOOLEANS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField TRUE_FALSE_LC = createField("true_false_lc", org.jooq.impl.SQLDataType.VARCHAR.asConvertedDataType(new org.jooq.test._.converters.Boolean_TF_LC_Converter()), T_BOOLEANS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField TRUE_FALSE_UC = createField("true_false_uc", org.jooq.impl.SQLDataType.VARCHAR.asConvertedDataType(new org.jooq.test._.converters.Boolean_TF_UC_Converter()), T_BOOLEANS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField YES_NO_LC = createField("yes_no_lc", org.jooq.impl.SQLDataType.VARCHAR.asConvertedDataType(new org.jooq.test._.converters.Boolean_YES_NO_LC_Converter()), T_BOOLEANS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField YES_NO_UC = createField("yes_no_uc", org.jooq.impl.SQLDataType.VARCHAR.asConvertedDataType(new org.jooq.test._.converters.Boolean_YES_NO_UC_Converter()), T_BOOLEANS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField Y_N_LC = createField("y_n_lc", org.jooq.impl.SQLDataType.CHAR.asConvertedDataType(new org.jooq.test._.converters.Boolean_YN_LC_Converter()), T_BOOLEANS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField Y_N_UC = createField("y_n_uc", org.jooq.impl.SQLDataType.CHAR.asConvertedDataType(new org.jooq.test._.converters.Boolean_YN_UC_Converter()), T_BOOLEANS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField VC_BOOLEAN = createField("vc_boolean", org.jooq.impl.SQLDataType.BOOLEAN, T_BOOLEANS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField C_BOOLEAN = createField("c_boolean", org.jooq.impl.SQLDataType.BOOLEAN, T_BOOLEANS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField N_BOOLEAN = createField("n_boolean", org.jooq.impl.SQLDataType.BOOLEAN, T_BOOLEANS); + + /** + * No further instances allowed + */ + private TBooleans() { + super("t_booleans", org.jooq.test.ingres.generatedclasses.Test.TEST); + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.test.ingres.generatedclasses.Keys.PK_T_BOOLEANS; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.test.ingres.generatedclasses.Keys.PK_T_BOOLEANS); + } +} diff --git a/jOOQ-test/src/org/jooq/test/ingres/generatedclasses/tables/TDates.java b/jOOQ-test/src/org/jooq/test/ingres/generatedclasses/tables/TDates.java new file mode 100644 index 00000000000..d96f5e31d01 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/ingres/generatedclasses/tables/TDates.java @@ -0,0 +1,80 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.ingres.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class TDates extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = 1401658928; + + /** + * The singleton instance of test.t_dates + */ + public static final org.jooq.test.ingres.generatedclasses.tables.TDates T_DATES = new org.jooq.test.ingres.generatedclasses.tables.TDates(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.ingres.generatedclasses.tables.records.TDatesRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public static final org.jooq.TableField ID = createField("id", org.jooq.impl.SQLDataType.INTEGER, T_DATES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField D = createField("d", org.jooq.impl.SQLDataType.DATE, T_DATES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField T = createField("t", org.jooq.impl.SQLDataType.TIME, T_DATES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField TS = createField("ts", org.jooq.impl.SQLDataType.TIMESTAMP, T_DATES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField D_INT = createField("d_int", org.jooq.impl.SQLDataType.INTEGER, T_DATES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField TS_BIGINT = createField("ts_bigint", org.jooq.impl.SQLDataType.BIGINT, T_DATES); + + /** + * No further instances allowed + */ + private TDates() { + super("t_dates", org.jooq.test.ingres.generatedclasses.Test.TEST); + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.test.ingres.generatedclasses.Keys.PK_T_DATES; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.test.ingres.generatedclasses.Keys.PK_T_DATES); + } +} diff --git a/jOOQ-test/src/org/jooq/test/ingres/generatedclasses/tables/TIdentity.java b/jOOQ-test/src/org/jooq/test/ingres/generatedclasses/tables/TIdentity.java new file mode 100644 index 00000000000..8be1ebcfb06 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/ingres/generatedclasses/tables/TIdentity.java @@ -0,0 +1,52 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.ingres.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class TIdentity extends org.jooq.impl.TableImpl { + + private static final long serialVersionUID = -642779481; + + /** + * The singleton instance of test.t_identity + */ + public static final org.jooq.test.ingres.generatedclasses.tables.TIdentity T_IDENTITY = new org.jooq.test.ingres.generatedclasses.tables.TIdentity(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.ingres.generatedclasses.tables.records.TIdentityRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + */ + public static final org.jooq.TableField ID = createField("id", org.jooq.impl.SQLDataType.INTEGER, T_IDENTITY); + + /** + * An uncommented item + */ + public static final org.jooq.TableField VAL = createField("val", org.jooq.impl.SQLDataType.INTEGER, T_IDENTITY); + + /** + * No further instances allowed + */ + private TIdentity() { + super("t_identity", org.jooq.test.ingres.generatedclasses.Test.TEST); + } + + @Override + public org.jooq.Identity getIdentity() { + return org.jooq.test.ingres.generatedclasses.Keys.IDENTITY_T_IDENTITY; + } +} diff --git a/jOOQ-test/src/org/jooq/test/ingres/generatedclasses/tables/TIdentityPk.java b/jOOQ-test/src/org/jooq/test/ingres/generatedclasses/tables/TIdentityPk.java new file mode 100644 index 00000000000..7be400d2df8 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/ingres/generatedclasses/tables/TIdentityPk.java @@ -0,0 +1,65 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.ingres.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class TIdentityPk extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = -1467128342; + + /** + * The singleton instance of test.t_identity_pk + */ + public static final org.jooq.test.ingres.generatedclasses.tables.TIdentityPk T_IDENTITY_PK = new org.jooq.test.ingres.generatedclasses.tables.TIdentityPk(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.ingres.generatedclasses.tables.records.TIdentityPkRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public static final org.jooq.TableField ID = createField("id", org.jooq.impl.SQLDataType.INTEGER, T_IDENTITY_PK); + + /** + * An uncommented item + */ + public static final org.jooq.TableField VAL = createField("val", org.jooq.impl.SQLDataType.INTEGER, T_IDENTITY_PK); + + /** + * No further instances allowed + */ + private TIdentityPk() { + super("t_identity_pk", org.jooq.test.ingres.generatedclasses.Test.TEST); + } + + @Override + public org.jooq.Identity getIdentity() { + return org.jooq.test.ingres.generatedclasses.Keys.IDENTITY_T_IDENTITY_PK; + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.test.ingres.generatedclasses.Keys.PK_T_IDENTITY_PK; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.test.ingres.generatedclasses.Keys.PK_T_IDENTITY_PK); + } +} diff --git a/jOOQ-test/src/org/jooq/test/ingres/generatedclasses/tables/TTriggers.java b/jOOQ-test/src/org/jooq/test/ingres/generatedclasses/tables/TTriggers.java new file mode 100644 index 00000000000..3075f305003 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/ingres/generatedclasses/tables/TTriggers.java @@ -0,0 +1,70 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.ingres.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class TTriggers extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = 10534408; + + /** + * The singleton instance of test.t_triggers + */ + public static final org.jooq.test.ingres.generatedclasses.tables.TTriggers T_TRIGGERS = new org.jooq.test.ingres.generatedclasses.tables.TTriggers(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.ingres.generatedclasses.tables.records.TTriggersRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public static final org.jooq.TableField ID_GENERATED = createField("id_generated", org.jooq.impl.SQLDataType.INTEGER, T_TRIGGERS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField ID = createField("id", org.jooq.impl.SQLDataType.INTEGER, T_TRIGGERS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField COUNTER = createField("counter", org.jooq.impl.SQLDataType.INTEGER, T_TRIGGERS); + + /** + * No further instances allowed + */ + private TTriggers() { + super("t_triggers", org.jooq.test.ingres.generatedclasses.Test.TEST); + } + + @Override + public org.jooq.Identity getIdentity() { + return org.jooq.test.ingres.generatedclasses.Keys.IDENTITY_T_TRIGGERS; + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.test.ingres.generatedclasses.Keys.PK_T_TRIGGERS; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.test.ingres.generatedclasses.Keys.PK_T_TRIGGERS); + } +} diff --git a/jOOQ-test/src/org/jooq/test/ingres/generatedclasses/tables/T_639NumbersTable.java b/jOOQ-test/src/org/jooq/test/ingres/generatedclasses/tables/T_639NumbersTable.java new file mode 100644 index 00000000000..786cd293bc0 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/ingres/generatedclasses/tables/T_639NumbersTable.java @@ -0,0 +1,115 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.ingres.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class T_639NumbersTable extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = -1468733415; + + /** + * The singleton instance of test.t_639_numbers_table + */ + public static final org.jooq.test.ingres.generatedclasses.tables.T_639NumbersTable T_639_NUMBERS_TABLE = new org.jooq.test.ingres.generatedclasses.tables.T_639NumbersTable(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.ingres.generatedclasses.tables.records.T_639NumbersTableRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public static final org.jooq.TableField ID = createField("id", org.jooq.impl.SQLDataType.INTEGER, T_639_NUMBERS_TABLE); + + /** + * An uncommented item + */ + public static final org.jooq.TableField BYTE = createField("byte", org.jooq.impl.SQLDataType.TINYINT, T_639_NUMBERS_TABLE); + + /** + * An uncommented item + */ + public static final org.jooq.TableField SHORT = createField("short", org.jooq.impl.SQLDataType.SMALLINT, T_639_NUMBERS_TABLE); + + /** + * An uncommented item + */ + public static final org.jooq.TableField INTEGER = createField("integer", org.jooq.impl.SQLDataType.INTEGER, T_639_NUMBERS_TABLE); + + /** + * An uncommented item + */ + public static final org.jooq.TableField LONG = createField("long", org.jooq.impl.SQLDataType.BIGINT, T_639_NUMBERS_TABLE); + + /** + * An uncommented item + */ + public static final org.jooq.TableField BYTE_DECIMAL = createField("byte_decimal", org.jooq.impl.SQLDataType.TINYINT, T_639_NUMBERS_TABLE); + + /** + * An uncommented item + */ + public static final org.jooq.TableField SHORT_DECIMAL = createField("short_decimal", org.jooq.impl.SQLDataType.SMALLINT, T_639_NUMBERS_TABLE); + + /** + * An uncommented item + */ + public static final org.jooq.TableField INTEGER_DECIMAL = createField("integer_decimal", org.jooq.impl.SQLDataType.INTEGER, T_639_NUMBERS_TABLE); + + /** + * An uncommented item + */ + public static final org.jooq.TableField LONG_DECIMAL = createField("long_decimal", org.jooq.impl.SQLDataType.BIGINT, T_639_NUMBERS_TABLE); + + /** + * An uncommented item + */ + public static final org.jooq.TableField BIG_INTEGER = createField("big_integer", org.jooq.impl.SQLDataType.DECIMAL_INTEGER, T_639_NUMBERS_TABLE); + + /** + * An uncommented item + */ + public static final org.jooq.TableField BIG_DECIMAL = createField("big_decimal", org.jooq.impl.SQLDataType.DECIMAL, T_639_NUMBERS_TABLE); + + /** + * An uncommented item + */ + public static final org.jooq.TableField FLOAT = createField("float", org.jooq.impl.SQLDataType.REAL, T_639_NUMBERS_TABLE); + + /** + * An uncommented item + */ + public static final org.jooq.TableField DOUBLE = createField("double", org.jooq.impl.SQLDataType.DOUBLE, T_639_NUMBERS_TABLE); + + /** + * No further instances allowed + */ + private T_639NumbersTable() { + super("t_639_numbers_table", org.jooq.test.ingres.generatedclasses.Test.TEST); + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.test.ingres.generatedclasses.Keys.PK_T_639_NUMBERS_TABLE; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.test.ingres.generatedclasses.Keys.PK_T_639_NUMBERS_TABLE); + } +} diff --git a/jOOQ-test/src/org/jooq/test/ingres/generatedclasses/tables/T_658Ref.java b/jOOQ-test/src/org/jooq/test/ingres/generatedclasses/tables/T_658Ref.java new file mode 100644 index 00000000000..c0ea0b9fa32 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/ingres/generatedclasses/tables/T_658Ref.java @@ -0,0 +1,109 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.ingres.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class T_658Ref extends org.jooq.impl.TableImpl { + + private static final long serialVersionUID = -612736347; + + /** + * The singleton instance of test.t_658_ref + */ + public static final org.jooq.test.ingres.generatedclasses.tables.T_658Ref T_658_REF = new org.jooq.test.ingres.generatedclasses.tables.T_658Ref(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.ingres.generatedclasses.tables.records.T_658RefRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_t_658_11
+	 * FOREIGN KEY (ref_11)
+	 * REFERENCES test.t_658_11 (id)
+	 * 
+ */ + public static final org.jooq.TableField REF_11 = createField("ref_11", org.jooq.impl.SQLDataType.CHAR.asMasterDataType(org.jooq.test.ingres.generatedclasses.enums.T_658_11.class), T_658_REF); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_t_658_21
+	 * FOREIGN KEY (ref_21)
+	 * REFERENCES test.t_658_21 (id)
+	 * 
+ */ + public static final org.jooq.TableField REF_21 = createField("ref_21", org.jooq.impl.SQLDataType.INTEGER.asMasterDataType(org.jooq.test.ingres.generatedclasses.enums.T_658_21.class), T_658_REF); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_t_658_31
+	 * FOREIGN KEY (ref_31)
+	 * REFERENCES test.t_658_31 (id)
+	 * 
+ */ + public static final org.jooq.TableField REF_31 = createField("ref_31", org.jooq.impl.SQLDataType.BIGINT.asMasterDataType(org.jooq.test.ingres.generatedclasses.enums.T_658_31.class), T_658_REF); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_t_658_12
+	 * FOREIGN KEY (ref_12)
+	 * REFERENCES test.t_658_12 (id)
+	 * 
+ */ + public static final org.jooq.TableField REF_12 = createField("ref_12", org.jooq.impl.SQLDataType.CHAR.asMasterDataType(org.jooq.test.ingres.generatedclasses.enums.T_658_12.class), T_658_REF); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_t_658_22
+	 * FOREIGN KEY (ref_22)
+	 * REFERENCES test.t_658_22 (id)
+	 * 
+ */ + public static final org.jooq.TableField REF_22 = createField("ref_22", org.jooq.impl.SQLDataType.INTEGER.asMasterDataType(org.jooq.test.ingres.generatedclasses.enums.T_658_22.class), T_658_REF); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_t_658_32
+	 * FOREIGN KEY (ref_32)
+	 * REFERENCES test.t_658_32 (id)
+	 * 
+ */ + public static final org.jooq.TableField REF_32 = createField("ref_32", org.jooq.impl.SQLDataType.BIGINT.asMasterDataType(org.jooq.test.ingres.generatedclasses.enums.T_658_32.class), T_658_REF); + + /** + * No further instances allowed + */ + private T_658Ref() { + super("t_658_ref", org.jooq.test.ingres.generatedclasses.Test.TEST); + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getReferences() { + return java.util.Arrays.>asList(); + } +} diff --git a/jOOQ-test/src/org/jooq/test/ingres/generatedclasses/tables/T_725LobTest.java b/jOOQ-test/src/org/jooq/test/ingres/generatedclasses/tables/T_725LobTest.java new file mode 100644 index 00000000000..1d8072a6770 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/ingres/generatedclasses/tables/T_725LobTest.java @@ -0,0 +1,60 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.ingres.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class T_725LobTest extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = -571968018; + + /** + * The singleton instance of test.t_725_lob_test + */ + public static final org.jooq.test.ingres.generatedclasses.tables.T_725LobTest T_725_LOB_TEST = new org.jooq.test.ingres.generatedclasses.tables.T_725LobTest(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.ingres.generatedclasses.tables.records.T_725LobTestRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public static final org.jooq.TableField ID = createField("id", org.jooq.impl.SQLDataType.INTEGER, T_725_LOB_TEST); + + /** + * An uncommented item + */ + public static final org.jooq.TableField LOB = createField("lob", org.jooq.impl.SQLDataType.LONGVARBINARY, T_725_LOB_TEST); + + /** + * No further instances allowed + */ + private T_725LobTest() { + super("t_725_lob_test", org.jooq.test.ingres.generatedclasses.Test.TEST); + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.test.ingres.generatedclasses.Keys.PK_T_725_LOB_TEST; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.test.ingres.generatedclasses.Keys.PK_T_725_LOB_TEST); + } +} diff --git a/jOOQ-test/src/org/jooq/test/ingres/generatedclasses/tables/T_785.java b/jOOQ-test/src/org/jooq/test/ingres/generatedclasses/tables/T_785.java new file mode 100644 index 00000000000..709cbaac066 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/ingres/generatedclasses/tables/T_785.java @@ -0,0 +1,52 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.ingres.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class T_785 extends org.jooq.impl.TableImpl { + + private static final long serialVersionUID = -407591973; + + /** + * The singleton instance of test.t_785 + */ + public static final org.jooq.test.ingres.generatedclasses.tables.T_785 T_785 = new org.jooq.test.ingres.generatedclasses.tables.T_785(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.ingres.generatedclasses.tables.records.T_785Record.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + */ + public static final org.jooq.TableField ID = createField("id", org.jooq.impl.SQLDataType.INTEGER, T_785); + + /** + * An uncommented item + */ + public static final org.jooq.TableField NAME = createField("name", org.jooq.impl.SQLDataType.VARCHAR, T_785); + + /** + * An uncommented item + */ + public static final org.jooq.TableField VALUE = createField("value", org.jooq.impl.SQLDataType.VARCHAR, T_785); + + /** + * No further instances allowed + */ + private T_785() { + super("t_785", org.jooq.test.ingres.generatedclasses.Test.TEST); + } +} diff --git a/jOOQ-test/src/org/jooq/test/ingres/generatedclasses/tables/VAuthor.java b/jOOQ-test/src/org/jooq/test/ingres/generatedclasses/tables/VAuthor.java new file mode 100644 index 00000000000..c75a3c1d442 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/ingres/generatedclasses/tables/VAuthor.java @@ -0,0 +1,67 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.ingres.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class VAuthor extends org.jooq.impl.TableImpl { + + private static final long serialVersionUID = 1257048847; + + /** + * The singleton instance of test.v_author + */ + public static final org.jooq.test.ingres.generatedclasses.tables.VAuthor V_AUTHOR = new org.jooq.test.ingres.generatedclasses.tables.VAuthor(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.ingres.generatedclasses.tables.records.VAuthorRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + */ + public static final org.jooq.TableField ID = createField("id", org.jooq.impl.SQLDataType.INTEGER, V_AUTHOR); + + /** + * An uncommented item + */ + public static final org.jooq.TableField FIRST_NAME = createField("first_name", org.jooq.impl.SQLDataType.VARCHAR, V_AUTHOR); + + /** + * An uncommented item + */ + public static final org.jooq.TableField LAST_NAME = createField("last_name", org.jooq.impl.SQLDataType.VARCHAR, V_AUTHOR); + + /** + * An uncommented item + */ + public static final org.jooq.TableField DATE_OF_BIRTH = createField("date_of_birth", org.jooq.impl.SQLDataType.DATE, V_AUTHOR); + + /** + * An uncommented item + */ + public static final org.jooq.TableField YEAR_OF_BIRTH = createField("year_of_birth", org.jooq.impl.SQLDataType.INTEGER, V_AUTHOR); + + /** + * An uncommented item + */ + public static final org.jooq.TableField ADDRESS = createField("address", org.jooq.impl.SQLDataType.VARCHAR, V_AUTHOR); + + /** + * No further instances allowed + */ + private VAuthor() { + super("v_author", org.jooq.test.ingres.generatedclasses.Test.TEST); + } +} diff --git a/jOOQ-test/src/org/jooq/test/ingres/generatedclasses/tables/VBook.java b/jOOQ-test/src/org/jooq/test/ingres/generatedclasses/tables/VBook.java new file mode 100644 index 00000000000..5801e1f1e37 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/ingres/generatedclasses/tables/VBook.java @@ -0,0 +1,82 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.ingres.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class VBook extends org.jooq.impl.TableImpl { + + private static final long serialVersionUID = -1162533095; + + /** + * The singleton instance of test.v_book + */ + public static final org.jooq.test.ingres.generatedclasses.tables.VBook V_BOOK = new org.jooq.test.ingres.generatedclasses.tables.VBook(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.ingres.generatedclasses.tables.records.VBookRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + */ + public static final org.jooq.TableField ID = createField("id", org.jooq.impl.SQLDataType.INTEGER, V_BOOK); + + /** + * An uncommented item + */ + public static final org.jooq.TableField AUTHOR_ID = createField("author_id", org.jooq.impl.SQLDataType.INTEGER, V_BOOK); + + /** + * An uncommented item + */ + public static final org.jooq.TableField CO_AUTHOR_ID = createField("co_author_id", org.jooq.impl.SQLDataType.INTEGER, V_BOOK); + + /** + * An uncommented item + */ + public static final org.jooq.TableField DETAILS_ID = createField("details_id", org.jooq.impl.SQLDataType.INTEGER, V_BOOK); + + /** + * An uncommented item + */ + public static final org.jooq.TableField TITLE = createField("title", org.jooq.impl.SQLDataType.VARCHAR, V_BOOK); + + /** + * An uncommented item + */ + public static final org.jooq.TableField PUBLISHED_IN = createField("published_in", org.jooq.impl.SQLDataType.INTEGER, V_BOOK); + + /** + * An uncommented item + */ + public static final org.jooq.TableField LANGUAGE_ID = createField("language_id", org.jooq.impl.SQLDataType.INTEGER, V_BOOK); + + /** + * An uncommented item + */ + public static final org.jooq.TableField CONTENT_TEXT = createField("content_text", org.jooq.impl.SQLDataType.LONGVARCHAR, V_BOOK); + + /** + * An uncommented item + */ + public static final org.jooq.TableField CONTENT_PDF = createField("content_pdf", org.jooq.impl.SQLDataType.LONGVARBINARY, V_BOOK); + + /** + * No further instances allowed + */ + private VBook() { + super("v_book", org.jooq.test.ingres.generatedclasses.Test.TEST); + } +} diff --git a/jOOQ-test/src/org/jooq/test/ingres/generatedclasses/tables/VLibrary.java b/jOOQ-test/src/org/jooq/test/ingres/generatedclasses/tables/VLibrary.java new file mode 100644 index 00000000000..84409783847 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/ingres/generatedclasses/tables/VLibrary.java @@ -0,0 +1,47 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.ingres.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class VLibrary extends org.jooq.impl.TableImpl { + + private static final long serialVersionUID = -1047347433; + + /** + * The singleton instance of test.v_library + */ + public static final org.jooq.test.ingres.generatedclasses.tables.VLibrary V_LIBRARY = new org.jooq.test.ingres.generatedclasses.tables.VLibrary(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.ingres.generatedclasses.tables.records.VLibraryRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + */ + public static final org.jooq.TableField AUTHOR = createField("author", org.jooq.impl.SQLDataType.VARCHAR, V_LIBRARY); + + /** + * An uncommented item + */ + public static final org.jooq.TableField TITLE = createField("title", org.jooq.impl.SQLDataType.VARCHAR, V_LIBRARY); + + /** + * No further instances allowed + */ + private VLibrary() { + super("v_library", org.jooq.test.ingres.generatedclasses.Test.TEST); + } +} diff --git a/jOOQ-test/src/org/jooq/test/ingres/generatedclasses/tables/XTestCase_64_69.java b/jOOQ-test/src/org/jooq/test/ingres/generatedclasses/tables/XTestCase_64_69.java new file mode 100644 index 00000000000..d4450ea9582 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/ingres/generatedclasses/tables/XTestCase_64_69.java @@ -0,0 +1,72 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.ingres.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class XTestCase_64_69 extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = 1443616049; + + /** + * The singleton instance of test.x_test_case_64_69 + */ + public static final org.jooq.test.ingres.generatedclasses.tables.XTestCase_64_69 X_TEST_CASE_64_69 = new org.jooq.test.ingres.generatedclasses.tables.XTestCase_64_69(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.ingres.generatedclasses.tables.records.XTestCase_64_69Record.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public static final org.jooq.TableField ID = createField("id", org.jooq.impl.SQLDataType.INTEGER, X_TEST_CASE_64_69); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_x_test_case_64_69a
+	 * FOREIGN KEY (unused_id)
+	 * REFERENCES test.x_unused (id)
+	 * 
+ */ + public static final org.jooq.TableField UNUSED_ID = createField("unused_id", org.jooq.impl.SQLDataType.INTEGER, X_TEST_CASE_64_69); + + /** + * No further instances allowed + */ + private XTestCase_64_69() { + super("x_test_case_64_69", org.jooq.test.ingres.generatedclasses.Test.TEST); + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.test.ingres.generatedclasses.Keys.PK_X_TEST_CASE_64_69; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.test.ingres.generatedclasses.Keys.PK_X_TEST_CASE_64_69); + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getReferences() { + return java.util.Arrays.>asList(org.jooq.test.ingres.generatedclasses.Keys.FK_X_TEST_CASE_64_69A); + } +} diff --git a/jOOQ-test/src/org/jooq/test/ingres/generatedclasses/tables/XTestCase_71.java b/jOOQ-test/src/org/jooq/test/ingres/generatedclasses/tables/XTestCase_71.java new file mode 100644 index 00000000000..792e4d8c30d --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/ingres/generatedclasses/tables/XTestCase_71.java @@ -0,0 +1,72 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.ingres.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class XTestCase_71 extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = 1822709813; + + /** + * The singleton instance of test.x_test_case_71 + */ + public static final org.jooq.test.ingres.generatedclasses.tables.XTestCase_71 X_TEST_CASE_71 = new org.jooq.test.ingres.generatedclasses.tables.XTestCase_71(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.ingres.generatedclasses.tables.records.XTestCase_71Record.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public static final org.jooq.TableField ID = createField("id", org.jooq.impl.SQLDataType.INTEGER, X_TEST_CASE_71); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_x_test_case_71
+	 * FOREIGN KEY (test_case_64_69_id)
+	 * REFERENCES test.x_test_case_64_69 (id)
+	 * 
+ */ + public static final org.jooq.TableField TEST_CASE_64_69_ID = createField("test_case_64_69_id", org.jooq.impl.SQLDataType.INTEGER, X_TEST_CASE_71); + + /** + * No further instances allowed + */ + private XTestCase_71() { + super("x_test_case_71", org.jooq.test.ingres.generatedclasses.Test.TEST); + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.test.ingres.generatedclasses.Keys.PK_X_TEST_CASE_71; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.test.ingres.generatedclasses.Keys.PK_X_TEST_CASE_71); + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getReferences() { + return java.util.Arrays.>asList(org.jooq.test.ingres.generatedclasses.Keys.FK_X_TEST_CASE_71); + } +} diff --git a/jOOQ-test/src/org/jooq/test/ingres/generatedclasses/tables/XTestCase_85.java b/jOOQ-test/src/org/jooq/test/ingres/generatedclasses/tables/XTestCase_85.java new file mode 100644 index 00000000000..fa800c32717 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/ingres/generatedclasses/tables/XTestCase_85.java @@ -0,0 +1,83 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.ingres.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class XTestCase_85 extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = 1368294794; + + /** + * The singleton instance of test.x_test_case_85 + */ + public static final org.jooq.test.ingres.generatedclasses.tables.XTestCase_85 X_TEST_CASE_85 = new org.jooq.test.ingres.generatedclasses.tables.XTestCase_85(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.ingres.generatedclasses.tables.records.XTestCase_85Record.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public static final org.jooq.TableField ID = createField("id", org.jooq.impl.SQLDataType.INTEGER, X_TEST_CASE_85); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_x_test_case_85
+	 * FOREIGN KEY (x_unused_id, x_unused_name)
+	 * REFERENCES test.x_unused (id, name)
+	 * 
+ */ + public static final org.jooq.TableField X_UNUSED_ID = createField("x_unused_id", org.jooq.impl.SQLDataType.INTEGER, X_TEST_CASE_85); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_x_test_case_85
+	 * FOREIGN KEY (x_unused_id, x_unused_name)
+	 * REFERENCES test.x_unused (id, name)
+	 * 
+ */ + public static final org.jooq.TableField X_UNUSED_NAME = createField("x_unused_name", org.jooq.impl.SQLDataType.VARCHAR, X_TEST_CASE_85); + + /** + * No further instances allowed + */ + private XTestCase_85() { + super("x_test_case_85", org.jooq.test.ingres.generatedclasses.Test.TEST); + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.test.ingres.generatedclasses.Keys.PK_X_TEST_CASE_85; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.test.ingres.generatedclasses.Keys.PK_X_TEST_CASE_85); + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getReferences() { + return java.util.Arrays.>asList(org.jooq.test.ingres.generatedclasses.Keys.FK_X_TEST_CASE_85); + } +} diff --git a/jOOQ-test/src/org/jooq/test/ingres/generatedclasses/tables/XUnused.java b/jOOQ-test/src/org/jooq/test/ingres/generatedclasses/tables/XUnused.java new file mode 100644 index 00000000000..a63676326c5 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/ingres/generatedclasses/tables/XUnused.java @@ -0,0 +1,142 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.ingres.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + * + * An unused table in the same schema. + */ +public class XUnused extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = -364383514; + + /** + * The singleton instance of test.x_unused + */ + public static final org.jooq.test.ingres.generatedclasses.tables.XUnused X_UNUSED = new org.jooq.test.ingres.generatedclasses.tables.XUnused(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.ingres.generatedclasses.tables.records.XUnusedRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public static final org.jooq.TableField ID = createField("id", org.jooq.impl.SQLDataType.INTEGER, X_UNUSED); + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public static final org.jooq.TableField NAME = createField("name", org.jooq.impl.SQLDataType.VARCHAR, X_UNUSED); + + /** + * An uncommented item + */ + public static final org.jooq.TableField BIG_INTEGER = createField("big_integer", org.jooq.impl.SQLDataType.DECIMAL_INTEGER, X_UNUSED); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_x_unused_self
+	 * FOREIGN KEY (id_ref, name_ref)
+	 * REFERENCES test.x_unused (id, name)
+	 * 
+ */ + public static final org.jooq.TableField ID_REF = createField("id_ref", org.jooq.impl.SQLDataType.INTEGER, X_UNUSED); + + /** + * An uncommented item + */ + public static final org.jooq.TableField CLASS = createField("class", org.jooq.impl.SQLDataType.INTEGER, X_UNUSED); + + /** + * An uncommented item + */ + public static final org.jooq.TableField FIELDS = createField("fields", org.jooq.impl.SQLDataType.INTEGER, X_UNUSED); + + /** + * An uncommented item + */ + public static final org.jooq.TableField CONFIGURATION = createField("configuration", org.jooq.impl.SQLDataType.INTEGER, X_UNUSED); + + /** + * An uncommented item + */ + public static final org.jooq.TableField U_D_T = createField("u_d_t", org.jooq.impl.SQLDataType.INTEGER, X_UNUSED); + + /** + * An uncommented item + */ + public static final org.jooq.TableField META_DATA = createField("meta_data", org.jooq.impl.SQLDataType.INTEGER, X_UNUSED); + + /** + * An uncommented item + */ + public static final org.jooq.TableField TYPE0 = createField("type0", org.jooq.impl.SQLDataType.INTEGER, X_UNUSED); + + /** + * An uncommented item + */ + public static final org.jooq.TableField PRIMARY_KEY = createField("primary_key", org.jooq.impl.SQLDataType.INTEGER, X_UNUSED); + + /** + * An uncommented item + */ + public static final org.jooq.TableField PRIMARYKEY = createField("primarykey", org.jooq.impl.SQLDataType.INTEGER, X_UNUSED); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_x_unused_self
+	 * FOREIGN KEY (id_ref, name_ref)
+	 * REFERENCES test.x_unused (id, name)
+	 * 
+ */ + public static final org.jooq.TableField NAME_REF = createField("name_ref", org.jooq.impl.SQLDataType.VARCHAR, X_UNUSED); + + /** + * An uncommented item + */ + public static final org.jooq.TableField FIELD_737 = createField("field 737", org.jooq.impl.SQLDataType.DECIMAL, X_UNUSED); + + /** + * No further instances allowed + */ + private XUnused() { + super("x_unused", org.jooq.test.ingres.generatedclasses.Test.TEST); + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.test.ingres.generatedclasses.Keys.PK_X_UNUSED; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.test.ingres.generatedclasses.Keys.PK_X_UNUSED, org.jooq.test.ingres.generatedclasses.Keys.UK_X_UNUSED_ID); + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getReferences() { + return java.util.Arrays.>asList(org.jooq.test.ingres.generatedclasses.Keys.FK_X_UNUSED_SELF); + } +} diff --git a/jOOQ-test/src/org/jooq/test/ingres/generatedclasses/tables/records/TAuthorRecord.java b/jOOQ-test/src/org/jooq/test/ingres/generatedclasses/tables/records/TAuthorRecord.java new file mode 100644 index 00000000000..6d44143ff29 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/ingres/generatedclasses/tables/records/TAuthorRecord.java @@ -0,0 +1,133 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.ingres.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + * + * An entity holding authors of books + */ +public class TAuthorRecord extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = 561009337; + + /** + * The author ID + * + * PRIMARY KEY + */ + public void setId(java.lang.Integer value) { + setValue(org.jooq.test.ingres.generatedclasses.tables.TAuthor.ID, value); + } + + /** + * The author ID + * + * PRIMARY KEY + */ + public java.lang.Integer getId() { + return getValue(org.jooq.test.ingres.generatedclasses.tables.TAuthor.ID); + } + + /** + * The author ID + * + * PRIMARY KEY + */ + public java.util.List fetchTBookListByAuthorId() { + return create() + .selectFrom(org.jooq.test.ingres.generatedclasses.tables.TBook.T_BOOK) + .where(org.jooq.test.ingres.generatedclasses.tables.TBook.AUTHOR_ID.equal(getValue(org.jooq.test.ingres.generatedclasses.tables.TAuthor.ID))) + .fetch(); + } + + /** + * The author ID + * + * PRIMARY KEY + */ + public java.util.List fetchTBookListByCoAuthorId() { + return create() + .selectFrom(org.jooq.test.ingres.generatedclasses.tables.TBook.T_BOOK) + .where(org.jooq.test.ingres.generatedclasses.tables.TBook.CO_AUTHOR_ID.equal(getValue(org.jooq.test.ingres.generatedclasses.tables.TAuthor.ID))) + .fetch(); + } + + /** + * The author's first name + */ + public void setFirstName(java.lang.String value) { + setValue(org.jooq.test.ingres.generatedclasses.tables.TAuthor.FIRST_NAME, value); + } + + /** + * The author's first name + */ + public java.lang.String getFirstName() { + return getValue(org.jooq.test.ingres.generatedclasses.tables.TAuthor.FIRST_NAME); + } + + /** + * The author's last name + */ + public void setLastName(java.lang.String value) { + setValue(org.jooq.test.ingres.generatedclasses.tables.TAuthor.LAST_NAME, value); + } + + /** + * The author's last name + */ + public java.lang.String getLastName() { + return getValue(org.jooq.test.ingres.generatedclasses.tables.TAuthor.LAST_NAME); + } + + /** + * The author's date of birth + */ + public void setDateOfBirth(java.sql.Date value) { + setValue(org.jooq.test.ingres.generatedclasses.tables.TAuthor.DATE_OF_BIRTH, value); + } + + /** + * The author's date of birth + */ + public java.sql.Date getDateOfBirth() { + return getValue(org.jooq.test.ingres.generatedclasses.tables.TAuthor.DATE_OF_BIRTH); + } + + /** + * The author's year of birth + */ + public void setYearOfBirth(java.lang.Integer value) { + setValue(org.jooq.test.ingres.generatedclasses.tables.TAuthor.YEAR_OF_BIRTH, value); + } + + /** + * The author's year of birth + */ + public java.lang.Integer getYearOfBirth() { + return getValue(org.jooq.test.ingres.generatedclasses.tables.TAuthor.YEAR_OF_BIRTH); + } + + /** + * The author's address + */ + public void setAddress(java.lang.String value) { + setValue(org.jooq.test.ingres.generatedclasses.tables.TAuthor.ADDRESS, value); + } + + /** + * The author's address + */ + public java.lang.String getAddress() { + return getValue(org.jooq.test.ingres.generatedclasses.tables.TAuthor.ADDRESS); + } + + /** + * Create a detached TAuthorRecord + */ + public TAuthorRecord() { + super(org.jooq.test.ingres.generatedclasses.tables.TAuthor.T_AUTHOR); + } +} diff --git a/jOOQ-test/src/org/jooq/test/ingres/generatedclasses/tables/records/TBookRecord.java b/jOOQ-test/src/org/jooq/test/ingres/generatedclasses/tables/records/TBookRecord.java new file mode 100644 index 00000000000..61b460de5e1 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/ingres/generatedclasses/tables/records/TBookRecord.java @@ -0,0 +1,231 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.ingres.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + * + * An entity holding books + */ +public class TBookRecord extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = 653339406; + + /** + * The book ID + * + * PRIMARY KEY + */ + public void setId(java.lang.Integer value) { + setValue(org.jooq.test.ingres.generatedclasses.tables.TBook.ID, value); + } + + /** + * The book ID + * + * PRIMARY KEY + */ + public java.lang.Integer getId() { + return getValue(org.jooq.test.ingres.generatedclasses.tables.TBook.ID); + } + + /** + * The book ID + * + * PRIMARY KEY + */ + public java.util.List fetchTBookToBookStoreList() { + return create() + .selectFrom(org.jooq.test.ingres.generatedclasses.tables.TBookToBookStore.T_BOOK_TO_BOOK_STORE) + .where(org.jooq.test.ingres.generatedclasses.tables.TBookToBookStore.BOOK_ID.equal(getValue(org.jooq.test.ingres.generatedclasses.tables.TBook.ID))) + .fetch(); + } + + /** + * The author ID in entity 'author' + *

+ *

+	 * CONSTRAINT fk_t_book_author_id
+	 * FOREIGN KEY (author_id)
+	 * REFERENCES test.t_author (id)
+	 * 
+ */ + public void setAuthorId(java.lang.Integer value) { + setValue(org.jooq.test.ingres.generatedclasses.tables.TBook.AUTHOR_ID, value); + } + + /** + * The author ID in entity 'author' + *

+ *

+	 * CONSTRAINT fk_t_book_author_id
+	 * FOREIGN KEY (author_id)
+	 * REFERENCES test.t_author (id)
+	 * 
+ */ + public java.lang.Integer getAuthorId() { + return getValue(org.jooq.test.ingres.generatedclasses.tables.TBook.AUTHOR_ID); + } + + /** + * The author ID in entity 'author' + *

+ *

+	 * CONSTRAINT fk_t_book_author_id
+	 * FOREIGN KEY (author_id)
+	 * REFERENCES test.t_author (id)
+	 * 
+ */ + public org.jooq.test.ingres.generatedclasses.tables.records.TAuthorRecord fetchTAuthorByAuthorId() { + return create() + .selectFrom(org.jooq.test.ingres.generatedclasses.tables.TAuthor.T_AUTHOR) + .where(org.jooq.test.ingres.generatedclasses.tables.TAuthor.ID.equal(getValue(org.jooq.test.ingres.generatedclasses.tables.TBook.AUTHOR_ID))) + .fetchOne(); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_t_book_co_author_id
+	 * FOREIGN KEY (co_author_id)
+	 * REFERENCES test.t_author (id)
+	 * 
+ */ + public void setCoAuthorId(java.lang.Integer value) { + setValue(org.jooq.test.ingres.generatedclasses.tables.TBook.CO_AUTHOR_ID, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_t_book_co_author_id
+	 * FOREIGN KEY (co_author_id)
+	 * REFERENCES test.t_author (id)
+	 * 
+ */ + public java.lang.Integer getCoAuthorId() { + return getValue(org.jooq.test.ingres.generatedclasses.tables.TBook.CO_AUTHOR_ID); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_t_book_co_author_id
+	 * FOREIGN KEY (co_author_id)
+	 * REFERENCES test.t_author (id)
+	 * 
+ */ + public org.jooq.test.ingres.generatedclasses.tables.records.TAuthorRecord fetchTAuthorByCoAuthorId() { + return create() + .selectFrom(org.jooq.test.ingres.generatedclasses.tables.TAuthor.T_AUTHOR) + .where(org.jooq.test.ingres.generatedclasses.tables.TAuthor.ID.equal(getValue(org.jooq.test.ingres.generatedclasses.tables.TBook.CO_AUTHOR_ID))) + .fetchOne(); + } + + /** + * An uncommented item + */ + public void setDetailsId(java.lang.Integer value) { + setValue(org.jooq.test.ingres.generatedclasses.tables.TBook.DETAILS_ID, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getDetailsId() { + return getValue(org.jooq.test.ingres.generatedclasses.tables.TBook.DETAILS_ID); + } + + /** + * The book's title + */ + public void setTitle(java.lang.String value) { + setValue(org.jooq.test.ingres.generatedclasses.tables.TBook.TITLE, value); + } + + /** + * The book's title + */ + public java.lang.String getTitle() { + return getValue(org.jooq.test.ingres.generatedclasses.tables.TBook.TITLE); + } + + /** + * The year the book was published in + */ + public void setPublishedIn(java.lang.Integer value) { + setValue(org.jooq.test.ingres.generatedclasses.tables.TBook.PUBLISHED_IN, value); + } + + /** + * The year the book was published in + */ + public java.lang.Integer getPublishedIn() { + return getValue(org.jooq.test.ingres.generatedclasses.tables.TBook.PUBLISHED_IN); + } + + /** + * The language of the book + *

+ *

+	 * CONSTRAINT fk_t_book_language_id
+	 * FOREIGN KEY (language_id)
+	 * REFERENCES test.t_language (id)
+	 * 
+ */ + public void setLanguageId(org.jooq.test.ingres.generatedclasses.enums.TLanguage value) { + setValue(org.jooq.test.ingres.generatedclasses.tables.TBook.LANGUAGE_ID, value); + } + + /** + * The language of the book + *

+ *

+	 * CONSTRAINT fk_t_book_language_id
+	 * FOREIGN KEY (language_id)
+	 * REFERENCES test.t_language (id)
+	 * 
+ */ + public org.jooq.test.ingres.generatedclasses.enums.TLanguage getLanguageId() { + return getValue(org.jooq.test.ingres.generatedclasses.tables.TBook.LANGUAGE_ID); + } + + /** + * Some textual content of the book + */ + public void setContentText(java.lang.String value) { + setValue(org.jooq.test.ingres.generatedclasses.tables.TBook.CONTENT_TEXT, value); + } + + /** + * Some textual content of the book + */ + public java.lang.String getContentText() { + return getValue(org.jooq.test.ingres.generatedclasses.tables.TBook.CONTENT_TEXT); + } + + /** + * Some binary content of the book + */ + public void setContentPdf(byte[] value) { + setValue(org.jooq.test.ingres.generatedclasses.tables.TBook.CONTENT_PDF, value); + } + + /** + * Some binary content of the book + */ + public byte[] getContentPdf() { + return getValue(org.jooq.test.ingres.generatedclasses.tables.TBook.CONTENT_PDF); + } + + /** + * Create a detached TBookRecord + */ + public TBookRecord() { + super(org.jooq.test.ingres.generatedclasses.tables.TBook.T_BOOK); + } +} diff --git a/jOOQ-test/src/org/jooq/test/ingres/generatedclasses/tables/records/TBookStoreRecord.java b/jOOQ-test/src/org/jooq/test/ingres/generatedclasses/tables/records/TBookStoreRecord.java new file mode 100644 index 00000000000..08df27ba33a --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/ingres/generatedclasses/tables/records/TBookStoreRecord.java @@ -0,0 +1,51 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.ingres.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + * + * A book store + */ +public class TBookStoreRecord extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = 1871368730; + + /** + * The books store name + * + * PRIMARY KEY + */ + public void setName(java.lang.String value) { + setValue(org.jooq.test.ingres.generatedclasses.tables.TBookStore.NAME, value); + } + + /** + * The books store name + * + * PRIMARY KEY + */ + public java.lang.String getName() { + return getValue(org.jooq.test.ingres.generatedclasses.tables.TBookStore.NAME); + } + + /** + * The books store name + * + * PRIMARY KEY + */ + public java.util.List fetchTBookToBookStoreList() { + return create() + .selectFrom(org.jooq.test.ingres.generatedclasses.tables.TBookToBookStore.T_BOOK_TO_BOOK_STORE) + .where(org.jooq.test.ingres.generatedclasses.tables.TBookToBookStore.BOOK_STORE_NAME.equal(getValue(org.jooq.test.ingres.generatedclasses.tables.TBookStore.NAME))) + .fetch(); + } + + /** + * Create a detached TBookStoreRecord + */ + public TBookStoreRecord() { + super(org.jooq.test.ingres.generatedclasses.tables.TBookStore.T_BOOK_STORE); + } +} diff --git a/jOOQ-test/src/org/jooq/test/ingres/generatedclasses/tables/records/TBookToBookStoreRecord.java b/jOOQ-test/src/org/jooq/test/ingres/generatedclasses/tables/records/TBookToBookStoreRecord.java new file mode 100644 index 00000000000..59ba412ee82 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/ingres/generatedclasses/tables/records/TBookToBookStoreRecord.java @@ -0,0 +1,131 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.ingres.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + * + * An m:n relation between books and book stores + */ +public class TBookToBookStoreRecord extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = -2121237433; + + /** + * The book store name + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT fk_b2bs_bs_name
+	 * FOREIGN KEY (book_store_name)
+	 * REFERENCES test.t_book_store (name)
+	 * 
+ */ + public void setBookStoreName(java.lang.String value) { + setValue(org.jooq.test.ingres.generatedclasses.tables.TBookToBookStore.BOOK_STORE_NAME, value); + } + + /** + * The book store name + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT fk_b2bs_bs_name
+	 * FOREIGN KEY (book_store_name)
+	 * REFERENCES test.t_book_store (name)
+	 * 
+ */ + public java.lang.String getBookStoreName() { + return getValue(org.jooq.test.ingres.generatedclasses.tables.TBookToBookStore.BOOK_STORE_NAME); + } + + /** + * The book store name + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT fk_b2bs_bs_name
+	 * FOREIGN KEY (book_store_name)
+	 * REFERENCES test.t_book_store (name)
+	 * 
+ */ + public org.jooq.test.ingres.generatedclasses.tables.records.TBookStoreRecord fetchTBookStore() { + return create() + .selectFrom(org.jooq.test.ingres.generatedclasses.tables.TBookStore.T_BOOK_STORE) + .where(org.jooq.test.ingres.generatedclasses.tables.TBookStore.NAME.equal(getValue(org.jooq.test.ingres.generatedclasses.tables.TBookToBookStore.BOOK_STORE_NAME))) + .fetchOne(); + } + + /** + * The book ID + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT fk_b2bs_b_id
+	 * FOREIGN KEY (book_id)
+	 * REFERENCES test.t_book (id)
+	 * 
+ */ + public void setBookId(java.lang.Integer value) { + setValue(org.jooq.test.ingres.generatedclasses.tables.TBookToBookStore.BOOK_ID, value); + } + + /** + * The book ID + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT fk_b2bs_b_id
+	 * FOREIGN KEY (book_id)
+	 * REFERENCES test.t_book (id)
+	 * 
+ */ + public java.lang.Integer getBookId() { + return getValue(org.jooq.test.ingres.generatedclasses.tables.TBookToBookStore.BOOK_ID); + } + + /** + * The book ID + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT fk_b2bs_b_id
+	 * FOREIGN KEY (book_id)
+	 * REFERENCES test.t_book (id)
+	 * 
+ */ + public org.jooq.test.ingres.generatedclasses.tables.records.TBookRecord fetchTBook() { + return create() + .selectFrom(org.jooq.test.ingres.generatedclasses.tables.TBook.T_BOOK) + .where(org.jooq.test.ingres.generatedclasses.tables.TBook.ID.equal(getValue(org.jooq.test.ingres.generatedclasses.tables.TBookToBookStore.BOOK_ID))) + .fetchOne(); + } + + /** + * The number of books on stock + */ + public void setStock(java.lang.Integer value) { + setValue(org.jooq.test.ingres.generatedclasses.tables.TBookToBookStore.STOCK, value); + } + + /** + * The number of books on stock + */ + public java.lang.Integer getStock() { + return getValue(org.jooq.test.ingres.generatedclasses.tables.TBookToBookStore.STOCK); + } + + /** + * Create a detached TBookToBookStoreRecord + */ + public TBookToBookStoreRecord() { + super(org.jooq.test.ingres.generatedclasses.tables.TBookToBookStore.T_BOOK_TO_BOOK_STORE); + } +} diff --git a/jOOQ-test/src/org/jooq/test/ingres/generatedclasses/tables/records/TBooleansRecord.java b/jOOQ-test/src/org/jooq/test/ingres/generatedclasses/tables/records/TBooleansRecord.java new file mode 100644 index 00000000000..5cf4206ccd3 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/ingres/generatedclasses/tables/records/TBooleansRecord.java @@ -0,0 +1,177 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.ingres.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + */ +public class TBooleansRecord extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = 72648514; + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setId(java.lang.Integer value) { + setValue(org.jooq.test.ingres.generatedclasses.tables.TBooleans.ID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.lang.Integer getId() { + return getValue(org.jooq.test.ingres.generatedclasses.tables.TBooleans.ID); + } + + /** + * An uncommented item + */ + public void setOneZero(org.jooq.test._.converters.Boolean_10 value) { + setValue(org.jooq.test.ingres.generatedclasses.tables.TBooleans.ONE_ZERO, value); + } + + /** + * An uncommented item + */ + public org.jooq.test._.converters.Boolean_10 getOneZero() { + return getValue(org.jooq.test.ingres.generatedclasses.tables.TBooleans.ONE_ZERO); + } + + /** + * An uncommented item + */ + public void setTrueFalseLc(org.jooq.test._.converters.Boolean_TF_LC value) { + setValue(org.jooq.test.ingres.generatedclasses.tables.TBooleans.TRUE_FALSE_LC, value); + } + + /** + * An uncommented item + */ + public org.jooq.test._.converters.Boolean_TF_LC getTrueFalseLc() { + return getValue(org.jooq.test.ingres.generatedclasses.tables.TBooleans.TRUE_FALSE_LC); + } + + /** + * An uncommented item + */ + public void setTrueFalseUc(org.jooq.test._.converters.Boolean_TF_UC value) { + setValue(org.jooq.test.ingres.generatedclasses.tables.TBooleans.TRUE_FALSE_UC, value); + } + + /** + * An uncommented item + */ + public org.jooq.test._.converters.Boolean_TF_UC getTrueFalseUc() { + return getValue(org.jooq.test.ingres.generatedclasses.tables.TBooleans.TRUE_FALSE_UC); + } + + /** + * An uncommented item + */ + public void setYesNoLc(org.jooq.test._.converters.Boolean_YES_NO_LC value) { + setValue(org.jooq.test.ingres.generatedclasses.tables.TBooleans.YES_NO_LC, value); + } + + /** + * An uncommented item + */ + public org.jooq.test._.converters.Boolean_YES_NO_LC getYesNoLc() { + return getValue(org.jooq.test.ingres.generatedclasses.tables.TBooleans.YES_NO_LC); + } + + /** + * An uncommented item + */ + public void setYesNoUc(org.jooq.test._.converters.Boolean_YES_NO_UC value) { + setValue(org.jooq.test.ingres.generatedclasses.tables.TBooleans.YES_NO_UC, value); + } + + /** + * An uncommented item + */ + public org.jooq.test._.converters.Boolean_YES_NO_UC getYesNoUc() { + return getValue(org.jooq.test.ingres.generatedclasses.tables.TBooleans.YES_NO_UC); + } + + /** + * An uncommented item + */ + public void setYNLc(org.jooq.test._.converters.Boolean_YN_LC value) { + setValue(org.jooq.test.ingres.generatedclasses.tables.TBooleans.Y_N_LC, value); + } + + /** + * An uncommented item + */ + public org.jooq.test._.converters.Boolean_YN_LC getYNLc() { + return getValue(org.jooq.test.ingres.generatedclasses.tables.TBooleans.Y_N_LC); + } + + /** + * An uncommented item + */ + public void setYNUc(org.jooq.test._.converters.Boolean_YN_UC value) { + setValue(org.jooq.test.ingres.generatedclasses.tables.TBooleans.Y_N_UC, value); + } + + /** + * An uncommented item + */ + public org.jooq.test._.converters.Boolean_YN_UC getYNUc() { + return getValue(org.jooq.test.ingres.generatedclasses.tables.TBooleans.Y_N_UC); + } + + /** + * An uncommented item + */ + public void setVcBoolean(java.lang.Boolean value) { + setValue(org.jooq.test.ingres.generatedclasses.tables.TBooleans.VC_BOOLEAN, value); + } + + /** + * An uncommented item + */ + public java.lang.Boolean getVcBoolean() { + return getValue(org.jooq.test.ingres.generatedclasses.tables.TBooleans.VC_BOOLEAN); + } + + /** + * An uncommented item + */ + public void setCBoolean(java.lang.Boolean value) { + setValue(org.jooq.test.ingres.generatedclasses.tables.TBooleans.C_BOOLEAN, value); + } + + /** + * An uncommented item + */ + public java.lang.Boolean getCBoolean() { + return getValue(org.jooq.test.ingres.generatedclasses.tables.TBooleans.C_BOOLEAN); + } + + /** + * An uncommented item + */ + public void setNBoolean(java.lang.Boolean value) { + setValue(org.jooq.test.ingres.generatedclasses.tables.TBooleans.N_BOOLEAN, value); + } + + /** + * An uncommented item + */ + public java.lang.Boolean getNBoolean() { + return getValue(org.jooq.test.ingres.generatedclasses.tables.TBooleans.N_BOOLEAN); + } + + /** + * Create a detached TBooleansRecord + */ + public TBooleansRecord() { + super(org.jooq.test.ingres.generatedclasses.tables.TBooleans.T_BOOLEANS); + } +} diff --git a/jOOQ-test/src/org/jooq/test/ingres/generatedclasses/tables/records/TDatesRecord.java b/jOOQ-test/src/org/jooq/test/ingres/generatedclasses/tables/records/TDatesRecord.java new file mode 100644 index 00000000000..d7284d89ce5 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/ingres/generatedclasses/tables/records/TDatesRecord.java @@ -0,0 +1,107 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.ingres.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + */ +public class TDatesRecord extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = 1846271268; + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setId(java.lang.Integer value) { + setValue(org.jooq.test.ingres.generatedclasses.tables.TDates.ID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.lang.Integer getId() { + return getValue(org.jooq.test.ingres.generatedclasses.tables.TDates.ID); + } + + /** + * An uncommented item + */ + public void setD(java.sql.Date value) { + setValue(org.jooq.test.ingres.generatedclasses.tables.TDates.D, value); + } + + /** + * An uncommented item + */ + public java.sql.Date getD() { + return getValue(org.jooq.test.ingres.generatedclasses.tables.TDates.D); + } + + /** + * An uncommented item + */ + public void setT(java.sql.Time value) { + setValue(org.jooq.test.ingres.generatedclasses.tables.TDates.T, value); + } + + /** + * An uncommented item + */ + public java.sql.Time getT() { + return getValue(org.jooq.test.ingres.generatedclasses.tables.TDates.T); + } + + /** + * An uncommented item + */ + public void setTs(java.sql.Timestamp value) { + setValue(org.jooq.test.ingres.generatedclasses.tables.TDates.TS, value); + } + + /** + * An uncommented item + */ + public java.sql.Timestamp getTs() { + return getValue(org.jooq.test.ingres.generatedclasses.tables.TDates.TS); + } + + /** + * An uncommented item + */ + public void setDInt(java.lang.Integer value) { + setValue(org.jooq.test.ingres.generatedclasses.tables.TDates.D_INT, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getDInt() { + return getValue(org.jooq.test.ingres.generatedclasses.tables.TDates.D_INT); + } + + /** + * An uncommented item + */ + public void setTsBigint(java.lang.Long value) { + setValue(org.jooq.test.ingres.generatedclasses.tables.TDates.TS_BIGINT, value); + } + + /** + * An uncommented item + */ + public java.lang.Long getTsBigint() { + return getValue(org.jooq.test.ingres.generatedclasses.tables.TDates.TS_BIGINT); + } + + /** + * Create a detached TDatesRecord + */ + public TDatesRecord() { + super(org.jooq.test.ingres.generatedclasses.tables.TDates.T_DATES); + } +} diff --git a/jOOQ-test/src/org/jooq/test/ingres/generatedclasses/tables/records/TIdentityPkRecord.java b/jOOQ-test/src/org/jooq/test/ingres/generatedclasses/tables/records/TIdentityPkRecord.java new file mode 100644 index 00000000000..6abbe317b0d --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/ingres/generatedclasses/tables/records/TIdentityPkRecord.java @@ -0,0 +1,51 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.ingres.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + */ +public class TIdentityPkRecord extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = 472062687; + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setId(java.lang.Integer value) { + setValue(org.jooq.test.ingres.generatedclasses.tables.TIdentityPk.ID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.lang.Integer getId() { + return getValue(org.jooq.test.ingres.generatedclasses.tables.TIdentityPk.ID); + } + + /** + * An uncommented item + */ + public void setVal(java.lang.Integer value) { + setValue(org.jooq.test.ingres.generatedclasses.tables.TIdentityPk.VAL, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getVal() { + return getValue(org.jooq.test.ingres.generatedclasses.tables.TIdentityPk.VAL); + } + + /** + * Create a detached TIdentityPkRecord + */ + public TIdentityPkRecord() { + super(org.jooq.test.ingres.generatedclasses.tables.TIdentityPk.T_IDENTITY_PK); + } +} diff --git a/jOOQ-test/src/org/jooq/test/ingres/generatedclasses/tables/records/TIdentityRecord.java b/jOOQ-test/src/org/jooq/test/ingres/generatedclasses/tables/records/TIdentityRecord.java new file mode 100644 index 00000000000..9e687ca92d3 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/ingres/generatedclasses/tables/records/TIdentityRecord.java @@ -0,0 +1,47 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.ingres.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + */ +public class TIdentityRecord extends org.jooq.impl.TableRecordImpl { + + private static final long serialVersionUID = 2007819490; + + /** + * An uncommented item + */ + public void setId(java.lang.Integer value) { + setValue(org.jooq.test.ingres.generatedclasses.tables.TIdentity.ID, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getId() { + return getValue(org.jooq.test.ingres.generatedclasses.tables.TIdentity.ID); + } + + /** + * An uncommented item + */ + public void setVal(java.lang.Integer value) { + setValue(org.jooq.test.ingres.generatedclasses.tables.TIdentity.VAL, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getVal() { + return getValue(org.jooq.test.ingres.generatedclasses.tables.TIdentity.VAL); + } + + /** + * Create a detached TIdentityRecord + */ + public TIdentityRecord() { + super(org.jooq.test.ingres.generatedclasses.tables.TIdentity.T_IDENTITY); + } +} diff --git a/jOOQ-test/src/org/jooq/test/ingres/generatedclasses/tables/records/TTriggersRecord.java b/jOOQ-test/src/org/jooq/test/ingres/generatedclasses/tables/records/TTriggersRecord.java new file mode 100644 index 00000000000..a0088bc2960 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/ingres/generatedclasses/tables/records/TTriggersRecord.java @@ -0,0 +1,65 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.ingres.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + */ +public class TTriggersRecord extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = 1885532832; + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setIdGenerated(java.lang.Integer value) { + setValue(org.jooq.test.ingres.generatedclasses.tables.TTriggers.ID_GENERATED, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.lang.Integer getIdGenerated() { + return getValue(org.jooq.test.ingres.generatedclasses.tables.TTriggers.ID_GENERATED); + } + + /** + * An uncommented item + */ + public void setId(java.lang.Integer value) { + setValue(org.jooq.test.ingres.generatedclasses.tables.TTriggers.ID, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getId() { + return getValue(org.jooq.test.ingres.generatedclasses.tables.TTriggers.ID); + } + + /** + * An uncommented item + */ + public void setCounter(java.lang.Integer value) { + setValue(org.jooq.test.ingres.generatedclasses.tables.TTriggers.COUNTER, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getCounter() { + return getValue(org.jooq.test.ingres.generatedclasses.tables.TTriggers.COUNTER); + } + + /** + * Create a detached TTriggersRecord + */ + public TTriggersRecord() { + super(org.jooq.test.ingres.generatedclasses.tables.TTriggers.T_TRIGGERS); + } +} diff --git a/jOOQ-test/src/org/jooq/test/ingres/generatedclasses/tables/records/T_639NumbersTableRecord.java b/jOOQ-test/src/org/jooq/test/ingres/generatedclasses/tables/records/T_639NumbersTableRecord.java new file mode 100644 index 00000000000..e7ed9486c12 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/ingres/generatedclasses/tables/records/T_639NumbersTableRecord.java @@ -0,0 +1,205 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.ingres.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + */ +public class T_639NumbersTableRecord extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = -40018475; + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setId(java.lang.Integer value) { + setValue(org.jooq.test.ingres.generatedclasses.tables.T_639NumbersTable.ID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.lang.Integer getId() { + return getValue(org.jooq.test.ingres.generatedclasses.tables.T_639NumbersTable.ID); + } + + /** + * An uncommented item + */ + public void setByte(java.lang.Byte value) { + setValue(org.jooq.test.ingres.generatedclasses.tables.T_639NumbersTable.BYTE, value); + } + + /** + * An uncommented item + */ + public java.lang.Byte getByte() { + return getValue(org.jooq.test.ingres.generatedclasses.tables.T_639NumbersTable.BYTE); + } + + /** + * An uncommented item + */ + public void setShort(java.lang.Short value) { + setValue(org.jooq.test.ingres.generatedclasses.tables.T_639NumbersTable.SHORT, value); + } + + /** + * An uncommented item + */ + public java.lang.Short getShort() { + return getValue(org.jooq.test.ingres.generatedclasses.tables.T_639NumbersTable.SHORT); + } + + /** + * An uncommented item + */ + public void setInteger(java.lang.Integer value) { + setValue(org.jooq.test.ingres.generatedclasses.tables.T_639NumbersTable.INTEGER, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getInteger() { + return getValue(org.jooq.test.ingres.generatedclasses.tables.T_639NumbersTable.INTEGER); + } + + /** + * An uncommented item + */ + public void setLong(java.lang.Long value) { + setValue(org.jooq.test.ingres.generatedclasses.tables.T_639NumbersTable.LONG, value); + } + + /** + * An uncommented item + */ + public java.lang.Long getLong() { + return getValue(org.jooq.test.ingres.generatedclasses.tables.T_639NumbersTable.LONG); + } + + /** + * An uncommented item + */ + public void setByteDecimal(java.lang.Byte value) { + setValue(org.jooq.test.ingres.generatedclasses.tables.T_639NumbersTable.BYTE_DECIMAL, value); + } + + /** + * An uncommented item + */ + public java.lang.Byte getByteDecimal() { + return getValue(org.jooq.test.ingres.generatedclasses.tables.T_639NumbersTable.BYTE_DECIMAL); + } + + /** + * An uncommented item + */ + public void setShortDecimal(java.lang.Short value) { + setValue(org.jooq.test.ingres.generatedclasses.tables.T_639NumbersTable.SHORT_DECIMAL, value); + } + + /** + * An uncommented item + */ + public java.lang.Short getShortDecimal() { + return getValue(org.jooq.test.ingres.generatedclasses.tables.T_639NumbersTable.SHORT_DECIMAL); + } + + /** + * An uncommented item + */ + public void setIntegerDecimal(java.lang.Integer value) { + setValue(org.jooq.test.ingres.generatedclasses.tables.T_639NumbersTable.INTEGER_DECIMAL, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getIntegerDecimal() { + return getValue(org.jooq.test.ingres.generatedclasses.tables.T_639NumbersTable.INTEGER_DECIMAL); + } + + /** + * An uncommented item + */ + public void setLongDecimal(java.lang.Long value) { + setValue(org.jooq.test.ingres.generatedclasses.tables.T_639NumbersTable.LONG_DECIMAL, value); + } + + /** + * An uncommented item + */ + public java.lang.Long getLongDecimal() { + return getValue(org.jooq.test.ingres.generatedclasses.tables.T_639NumbersTable.LONG_DECIMAL); + } + + /** + * An uncommented item + */ + public void setBigInteger(java.math.BigInteger value) { + setValue(org.jooq.test.ingres.generatedclasses.tables.T_639NumbersTable.BIG_INTEGER, value); + } + + /** + * An uncommented item + */ + public java.math.BigInteger getBigInteger() { + return getValue(org.jooq.test.ingres.generatedclasses.tables.T_639NumbersTable.BIG_INTEGER); + } + + /** + * An uncommented item + */ + public void setBigDecimal(java.math.BigDecimal value) { + setValue(org.jooq.test.ingres.generatedclasses.tables.T_639NumbersTable.BIG_DECIMAL, value); + } + + /** + * An uncommented item + */ + public java.math.BigDecimal getBigDecimal() { + return getValue(org.jooq.test.ingres.generatedclasses.tables.T_639NumbersTable.BIG_DECIMAL); + } + + /** + * An uncommented item + */ + public void setFloat(java.lang.Float value) { + setValue(org.jooq.test.ingres.generatedclasses.tables.T_639NumbersTable.FLOAT, value); + } + + /** + * An uncommented item + */ + public java.lang.Float getFloat() { + return getValue(org.jooq.test.ingres.generatedclasses.tables.T_639NumbersTable.FLOAT); + } + + /** + * An uncommented item + */ + public void setDouble(java.lang.Double value) { + setValue(org.jooq.test.ingres.generatedclasses.tables.T_639NumbersTable.DOUBLE, value); + } + + /** + * An uncommented item + */ + public java.lang.Double getDouble() { + return getValue(org.jooq.test.ingres.generatedclasses.tables.T_639NumbersTable.DOUBLE); + } + + /** + * Create a detached T_639NumbersTableRecord + */ + public T_639NumbersTableRecord() { + super(org.jooq.test.ingres.generatedclasses.tables.T_639NumbersTable.T_639_NUMBERS_TABLE); + } +} diff --git a/jOOQ-test/src/org/jooq/test/ingres/generatedclasses/tables/records/T_658RefRecord.java b/jOOQ-test/src/org/jooq/test/ingres/generatedclasses/tables/records/T_658RefRecord.java new file mode 100644 index 00000000000..3820d2c9a14 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/ingres/generatedclasses/tables/records/T_658RefRecord.java @@ -0,0 +1,175 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.ingres.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + */ +public class T_658RefRecord extends org.jooq.impl.TableRecordImpl { + + private static final long serialVersionUID = 69787220; + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_t_658_11
+	 * FOREIGN KEY (ref_11)
+	 * REFERENCES test.t_658_11 (id)
+	 * 
+ */ + public void setRef_11(org.jooq.test.ingres.generatedclasses.enums.T_658_11 value) { + setValue(org.jooq.test.ingres.generatedclasses.tables.T_658Ref.REF_11, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_t_658_11
+	 * FOREIGN KEY (ref_11)
+	 * REFERENCES test.t_658_11 (id)
+	 * 
+ */ + public org.jooq.test.ingres.generatedclasses.enums.T_658_11 getRef_11() { + return getValue(org.jooq.test.ingres.generatedclasses.tables.T_658Ref.REF_11); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_t_658_21
+	 * FOREIGN KEY (ref_21)
+	 * REFERENCES test.t_658_21 (id)
+	 * 
+ */ + public void setRef_21(org.jooq.test.ingres.generatedclasses.enums.T_658_21 value) { + setValue(org.jooq.test.ingres.generatedclasses.tables.T_658Ref.REF_21, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_t_658_21
+	 * FOREIGN KEY (ref_21)
+	 * REFERENCES test.t_658_21 (id)
+	 * 
+ */ + public org.jooq.test.ingres.generatedclasses.enums.T_658_21 getRef_21() { + return getValue(org.jooq.test.ingres.generatedclasses.tables.T_658Ref.REF_21); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_t_658_31
+	 * FOREIGN KEY (ref_31)
+	 * REFERENCES test.t_658_31 (id)
+	 * 
+ */ + public void setRef_31(org.jooq.test.ingres.generatedclasses.enums.T_658_31 value) { + setValue(org.jooq.test.ingres.generatedclasses.tables.T_658Ref.REF_31, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_t_658_31
+	 * FOREIGN KEY (ref_31)
+	 * REFERENCES test.t_658_31 (id)
+	 * 
+ */ + public org.jooq.test.ingres.generatedclasses.enums.T_658_31 getRef_31() { + return getValue(org.jooq.test.ingres.generatedclasses.tables.T_658Ref.REF_31); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_t_658_12
+	 * FOREIGN KEY (ref_12)
+	 * REFERENCES test.t_658_12 (id)
+	 * 
+ */ + public void setRef_12(org.jooq.test.ingres.generatedclasses.enums.T_658_12 value) { + setValue(org.jooq.test.ingres.generatedclasses.tables.T_658Ref.REF_12, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_t_658_12
+	 * FOREIGN KEY (ref_12)
+	 * REFERENCES test.t_658_12 (id)
+	 * 
+ */ + public org.jooq.test.ingres.generatedclasses.enums.T_658_12 getRef_12() { + return getValue(org.jooq.test.ingres.generatedclasses.tables.T_658Ref.REF_12); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_t_658_22
+	 * FOREIGN KEY (ref_22)
+	 * REFERENCES test.t_658_22 (id)
+	 * 
+ */ + public void setRef_22(org.jooq.test.ingres.generatedclasses.enums.T_658_22 value) { + setValue(org.jooq.test.ingres.generatedclasses.tables.T_658Ref.REF_22, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_t_658_22
+	 * FOREIGN KEY (ref_22)
+	 * REFERENCES test.t_658_22 (id)
+	 * 
+ */ + public org.jooq.test.ingres.generatedclasses.enums.T_658_22 getRef_22() { + return getValue(org.jooq.test.ingres.generatedclasses.tables.T_658Ref.REF_22); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_t_658_32
+	 * FOREIGN KEY (ref_32)
+	 * REFERENCES test.t_658_32 (id)
+	 * 
+ */ + public void setRef_32(org.jooq.test.ingres.generatedclasses.enums.T_658_32 value) { + setValue(org.jooq.test.ingres.generatedclasses.tables.T_658Ref.REF_32, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_t_658_32
+	 * FOREIGN KEY (ref_32)
+	 * REFERENCES test.t_658_32 (id)
+	 * 
+ */ + public org.jooq.test.ingres.generatedclasses.enums.T_658_32 getRef_32() { + return getValue(org.jooq.test.ingres.generatedclasses.tables.T_658Ref.REF_32); + } + + /** + * Create a detached T_658RefRecord + */ + public T_658RefRecord() { + super(org.jooq.test.ingres.generatedclasses.tables.T_658Ref.T_658_REF); + } +} diff --git a/jOOQ-test/src/org/jooq/test/ingres/generatedclasses/tables/records/T_725LobTestRecord.java b/jOOQ-test/src/org/jooq/test/ingres/generatedclasses/tables/records/T_725LobTestRecord.java new file mode 100644 index 00000000000..677682fd273 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/ingres/generatedclasses/tables/records/T_725LobTestRecord.java @@ -0,0 +1,51 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.ingres.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + */ +public class T_725LobTestRecord extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = -1083879141; + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setId(java.lang.Integer value) { + setValue(org.jooq.test.ingres.generatedclasses.tables.T_725LobTest.ID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.lang.Integer getId() { + return getValue(org.jooq.test.ingres.generatedclasses.tables.T_725LobTest.ID); + } + + /** + * An uncommented item + */ + public void setLob(byte[] value) { + setValue(org.jooq.test.ingres.generatedclasses.tables.T_725LobTest.LOB, value); + } + + /** + * An uncommented item + */ + public byte[] getLob() { + return getValue(org.jooq.test.ingres.generatedclasses.tables.T_725LobTest.LOB); + } + + /** + * Create a detached T_725LobTestRecord + */ + public T_725LobTestRecord() { + super(org.jooq.test.ingres.generatedclasses.tables.T_725LobTest.T_725_LOB_TEST); + } +} diff --git a/jOOQ-test/src/org/jooq/test/ingres/generatedclasses/tables/records/T_785Record.java b/jOOQ-test/src/org/jooq/test/ingres/generatedclasses/tables/records/T_785Record.java new file mode 100644 index 00000000000..431ece1ca87 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/ingres/generatedclasses/tables/records/T_785Record.java @@ -0,0 +1,61 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.ingres.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + */ +public class T_785Record extends org.jooq.impl.TableRecordImpl { + + private static final long serialVersionUID = -2096600021; + + /** + * An uncommented item + */ + public void setId(java.lang.Integer value) { + setValue(org.jooq.test.ingres.generatedclasses.tables.T_785.ID, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getId() { + return getValue(org.jooq.test.ingres.generatedclasses.tables.T_785.ID); + } + + /** + * An uncommented item + */ + public void setName(java.lang.String value) { + setValue(org.jooq.test.ingres.generatedclasses.tables.T_785.NAME, value); + } + + /** + * An uncommented item + */ + public java.lang.String getName() { + return getValue(org.jooq.test.ingres.generatedclasses.tables.T_785.NAME); + } + + /** + * An uncommented item + */ + public void setValue(java.lang.String value) { + setValue(org.jooq.test.ingres.generatedclasses.tables.T_785.VALUE, value); + } + + /** + * An uncommented item + */ + public java.lang.String getValue() { + return getValue(org.jooq.test.ingres.generatedclasses.tables.T_785.VALUE); + } + + /** + * Create a detached T_785Record + */ + public T_785Record() { + super(org.jooq.test.ingres.generatedclasses.tables.T_785.T_785); + } +} diff --git a/jOOQ-test/src/org/jooq/test/ingres/generatedclasses/tables/records/VAuthorRecord.java b/jOOQ-test/src/org/jooq/test/ingres/generatedclasses/tables/records/VAuthorRecord.java new file mode 100644 index 00000000000..f94490d8558 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/ingres/generatedclasses/tables/records/VAuthorRecord.java @@ -0,0 +1,103 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.ingres.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + */ +public class VAuthorRecord extends org.jooq.impl.TableRecordImpl { + + private static final long serialVersionUID = 1274843960; + + /** + * An uncommented item + */ + public void setId(java.lang.Integer value) { + setValue(org.jooq.test.ingres.generatedclasses.tables.VAuthor.ID, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getId() { + return getValue(org.jooq.test.ingres.generatedclasses.tables.VAuthor.ID); + } + + /** + * An uncommented item + */ + public void setFirstName(java.lang.String value) { + setValue(org.jooq.test.ingres.generatedclasses.tables.VAuthor.FIRST_NAME, value); + } + + /** + * An uncommented item + */ + public java.lang.String getFirstName() { + return getValue(org.jooq.test.ingres.generatedclasses.tables.VAuthor.FIRST_NAME); + } + + /** + * An uncommented item + */ + public void setLastName(java.lang.String value) { + setValue(org.jooq.test.ingres.generatedclasses.tables.VAuthor.LAST_NAME, value); + } + + /** + * An uncommented item + */ + public java.lang.String getLastName() { + return getValue(org.jooq.test.ingres.generatedclasses.tables.VAuthor.LAST_NAME); + } + + /** + * An uncommented item + */ + public void setDateOfBirth(java.sql.Date value) { + setValue(org.jooq.test.ingres.generatedclasses.tables.VAuthor.DATE_OF_BIRTH, value); + } + + /** + * An uncommented item + */ + public java.sql.Date getDateOfBirth() { + return getValue(org.jooq.test.ingres.generatedclasses.tables.VAuthor.DATE_OF_BIRTH); + } + + /** + * An uncommented item + */ + public void setYearOfBirth(java.lang.Integer value) { + setValue(org.jooq.test.ingres.generatedclasses.tables.VAuthor.YEAR_OF_BIRTH, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getYearOfBirth() { + return getValue(org.jooq.test.ingres.generatedclasses.tables.VAuthor.YEAR_OF_BIRTH); + } + + /** + * An uncommented item + */ + public void setAddress(java.lang.String value) { + setValue(org.jooq.test.ingres.generatedclasses.tables.VAuthor.ADDRESS, value); + } + + /** + * An uncommented item + */ + public java.lang.String getAddress() { + return getValue(org.jooq.test.ingres.generatedclasses.tables.VAuthor.ADDRESS); + } + + /** + * Create a detached VAuthorRecord + */ + public VAuthorRecord() { + super(org.jooq.test.ingres.generatedclasses.tables.VAuthor.V_AUTHOR); + } +} diff --git a/jOOQ-test/src/org/jooq/test/ingres/generatedclasses/tables/records/VBookRecord.java b/jOOQ-test/src/org/jooq/test/ingres/generatedclasses/tables/records/VBookRecord.java new file mode 100644 index 00000000000..a60a99f221e --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/ingres/generatedclasses/tables/records/VBookRecord.java @@ -0,0 +1,145 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.ingres.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + */ +public class VBookRecord extends org.jooq.impl.TableRecordImpl { + + private static final long serialVersionUID = 844218518; + + /** + * An uncommented item + */ + public void setId(java.lang.Integer value) { + setValue(org.jooq.test.ingres.generatedclasses.tables.VBook.ID, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getId() { + return getValue(org.jooq.test.ingres.generatedclasses.tables.VBook.ID); + } + + /** + * An uncommented item + */ + public void setAuthorId(java.lang.Integer value) { + setValue(org.jooq.test.ingres.generatedclasses.tables.VBook.AUTHOR_ID, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getAuthorId() { + return getValue(org.jooq.test.ingres.generatedclasses.tables.VBook.AUTHOR_ID); + } + + /** + * An uncommented item + */ + public void setCoAuthorId(java.lang.Integer value) { + setValue(org.jooq.test.ingres.generatedclasses.tables.VBook.CO_AUTHOR_ID, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getCoAuthorId() { + return getValue(org.jooq.test.ingres.generatedclasses.tables.VBook.CO_AUTHOR_ID); + } + + /** + * An uncommented item + */ + public void setDetailsId(java.lang.Integer value) { + setValue(org.jooq.test.ingres.generatedclasses.tables.VBook.DETAILS_ID, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getDetailsId() { + return getValue(org.jooq.test.ingres.generatedclasses.tables.VBook.DETAILS_ID); + } + + /** + * An uncommented item + */ + public void setTitle(java.lang.String value) { + setValue(org.jooq.test.ingres.generatedclasses.tables.VBook.TITLE, value); + } + + /** + * An uncommented item + */ + public java.lang.String getTitle() { + return getValue(org.jooq.test.ingres.generatedclasses.tables.VBook.TITLE); + } + + /** + * An uncommented item + */ + public void setPublishedIn(java.lang.Integer value) { + setValue(org.jooq.test.ingres.generatedclasses.tables.VBook.PUBLISHED_IN, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getPublishedIn() { + return getValue(org.jooq.test.ingres.generatedclasses.tables.VBook.PUBLISHED_IN); + } + + /** + * An uncommented item + */ + public void setLanguageId(java.lang.Integer value) { + setValue(org.jooq.test.ingres.generatedclasses.tables.VBook.LANGUAGE_ID, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getLanguageId() { + return getValue(org.jooq.test.ingres.generatedclasses.tables.VBook.LANGUAGE_ID); + } + + /** + * An uncommented item + */ + public void setContentText(java.lang.String value) { + setValue(org.jooq.test.ingres.generatedclasses.tables.VBook.CONTENT_TEXT, value); + } + + /** + * An uncommented item + */ + public java.lang.String getContentText() { + return getValue(org.jooq.test.ingres.generatedclasses.tables.VBook.CONTENT_TEXT); + } + + /** + * An uncommented item + */ + public void setContentPdf(byte[] value) { + setValue(org.jooq.test.ingres.generatedclasses.tables.VBook.CONTENT_PDF, value); + } + + /** + * An uncommented item + */ + public byte[] getContentPdf() { + return getValue(org.jooq.test.ingres.generatedclasses.tables.VBook.CONTENT_PDF); + } + + /** + * Create a detached VBookRecord + */ + public VBookRecord() { + super(org.jooq.test.ingres.generatedclasses.tables.VBook.V_BOOK); + } +} diff --git a/jOOQ-test/src/org/jooq/test/ingres/generatedclasses/tables/records/VLibraryRecord.java b/jOOQ-test/src/org/jooq/test/ingres/generatedclasses/tables/records/VLibraryRecord.java new file mode 100644 index 00000000000..102937c48dd --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/ingres/generatedclasses/tables/records/VLibraryRecord.java @@ -0,0 +1,47 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.ingres.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + */ +public class VLibraryRecord extends org.jooq.impl.TableRecordImpl { + + private static final long serialVersionUID = -704175046; + + /** + * An uncommented item + */ + public void setAuthor(java.lang.String value) { + setValue(org.jooq.test.ingres.generatedclasses.tables.VLibrary.AUTHOR, value); + } + + /** + * An uncommented item + */ + public java.lang.String getAuthor() { + return getValue(org.jooq.test.ingres.generatedclasses.tables.VLibrary.AUTHOR); + } + + /** + * An uncommented item + */ + public void setTitle(java.lang.String value) { + setValue(org.jooq.test.ingres.generatedclasses.tables.VLibrary.TITLE, value); + } + + /** + * An uncommented item + */ + public java.lang.String getTitle() { + return getValue(org.jooq.test.ingres.generatedclasses.tables.VLibrary.TITLE); + } + + /** + * Create a detached VLibraryRecord + */ + public VLibraryRecord() { + super(org.jooq.test.ingres.generatedclasses.tables.VLibrary.V_LIBRARY); + } +} diff --git a/jOOQ-test/src/org/jooq/test/ingres/generatedclasses/tables/records/XTestCase_64_69Record.java b/jOOQ-test/src/org/jooq/test/ingres/generatedclasses/tables/records/XTestCase_64_69Record.java new file mode 100644 index 00000000000..5d2d96c78a9 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/ingres/generatedclasses/tables/records/XTestCase_64_69Record.java @@ -0,0 +1,91 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.ingres.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + */ +public class XTestCase_64_69Record extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = -1216318230; + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setId(java.lang.Integer value) { + setValue(org.jooq.test.ingres.generatedclasses.tables.XTestCase_64_69.ID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.lang.Integer getId() { + return getValue(org.jooq.test.ingres.generatedclasses.tables.XTestCase_64_69.ID); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.util.List fetchXTestCase_71List() { + return create() + .selectFrom(org.jooq.test.ingres.generatedclasses.tables.XTestCase_71.X_TEST_CASE_71) + .where(org.jooq.test.ingres.generatedclasses.tables.XTestCase_71.TEST_CASE_64_69_ID.equal(getValue(org.jooq.test.ingres.generatedclasses.tables.XTestCase_64_69.ID))) + .fetch(); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_x_test_case_64_69a
+	 * FOREIGN KEY (unused_id)
+	 * REFERENCES test.x_unused (id)
+	 * 
+ */ + public void setUnusedId(java.lang.Integer value) { + setValue(org.jooq.test.ingres.generatedclasses.tables.XTestCase_64_69.UNUSED_ID, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_x_test_case_64_69a
+	 * FOREIGN KEY (unused_id)
+	 * REFERENCES test.x_unused (id)
+	 * 
+ */ + public java.lang.Integer getUnusedId() { + return getValue(org.jooq.test.ingres.generatedclasses.tables.XTestCase_64_69.UNUSED_ID); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_x_test_case_64_69a
+	 * FOREIGN KEY (unused_id)
+	 * REFERENCES test.x_unused (id)
+	 * 
+ */ + public org.jooq.test.ingres.generatedclasses.tables.records.XUnusedRecord fetchXUnused() { + return create() + .selectFrom(org.jooq.test.ingres.generatedclasses.tables.XUnused.X_UNUSED) + .where(org.jooq.test.ingres.generatedclasses.tables.XUnused.ID.equal(getValue(org.jooq.test.ingres.generatedclasses.tables.XTestCase_64_69.UNUSED_ID))) + .fetchOne(); + } + + /** + * Create a detached XTestCase_64_69Record + */ + public XTestCase_64_69Record() { + super(org.jooq.test.ingres.generatedclasses.tables.XTestCase_64_69.X_TEST_CASE_64_69); + } +} diff --git a/jOOQ-test/src/org/jooq/test/ingres/generatedclasses/tables/records/XTestCase_71Record.java b/jOOQ-test/src/org/jooq/test/ingres/generatedclasses/tables/records/XTestCase_71Record.java new file mode 100644 index 00000000000..baacf85fff6 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/ingres/generatedclasses/tables/records/XTestCase_71Record.java @@ -0,0 +1,79 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.ingres.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + */ +public class XTestCase_71Record extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = -1606188536; + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setId(java.lang.Integer value) { + setValue(org.jooq.test.ingres.generatedclasses.tables.XTestCase_71.ID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.lang.Integer getId() { + return getValue(org.jooq.test.ingres.generatedclasses.tables.XTestCase_71.ID); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_x_test_case_71
+	 * FOREIGN KEY (test_case_64_69_id)
+	 * REFERENCES test.x_test_case_64_69 (id)
+	 * 
+ */ + public void setTestCase_64_69Id(java.lang.Integer value) { + setValue(org.jooq.test.ingres.generatedclasses.tables.XTestCase_71.TEST_CASE_64_69_ID, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_x_test_case_71
+	 * FOREIGN KEY (test_case_64_69_id)
+	 * REFERENCES test.x_test_case_64_69 (id)
+	 * 
+ */ + public java.lang.Integer getTestCase_64_69Id() { + return getValue(org.jooq.test.ingres.generatedclasses.tables.XTestCase_71.TEST_CASE_64_69_ID); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_x_test_case_71
+	 * FOREIGN KEY (test_case_64_69_id)
+	 * REFERENCES test.x_test_case_64_69 (id)
+	 * 
+ */ + public org.jooq.test.ingres.generatedclasses.tables.records.XTestCase_64_69Record fetchXTestCase_64_69() { + return create() + .selectFrom(org.jooq.test.ingres.generatedclasses.tables.XTestCase_64_69.X_TEST_CASE_64_69) + .where(org.jooq.test.ingres.generatedclasses.tables.XTestCase_64_69.ID.equal(getValue(org.jooq.test.ingres.generatedclasses.tables.XTestCase_71.TEST_CASE_64_69_ID))) + .fetchOne(); + } + + /** + * Create a detached XTestCase_71Record + */ + public XTestCase_71Record() { + super(org.jooq.test.ingres.generatedclasses.tables.XTestCase_71.X_TEST_CASE_71); + } +} diff --git a/jOOQ-test/src/org/jooq/test/ingres/generatedclasses/tables/records/XTestCase_85Record.java b/jOOQ-test/src/org/jooq/test/ingres/generatedclasses/tables/records/XTestCase_85Record.java new file mode 100644 index 00000000000..0d086591d6a --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/ingres/generatedclasses/tables/records/XTestCase_85Record.java @@ -0,0 +1,106 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.ingres.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + */ +public class XTestCase_85Record extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = 24175244; + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setId(java.lang.Integer value) { + setValue(org.jooq.test.ingres.generatedclasses.tables.XTestCase_85.ID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.lang.Integer getId() { + return getValue(org.jooq.test.ingres.generatedclasses.tables.XTestCase_85.ID); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_x_test_case_85
+	 * FOREIGN KEY (x_unused_id, x_unused_name)
+	 * REFERENCES test.x_unused (id, name)
+	 * 
+ */ + public void setXUnusedId(java.lang.Integer value) { + setValue(org.jooq.test.ingres.generatedclasses.tables.XTestCase_85.X_UNUSED_ID, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_x_test_case_85
+	 * FOREIGN KEY (x_unused_id, x_unused_name)
+	 * REFERENCES test.x_unused (id, name)
+	 * 
+ */ + public java.lang.Integer getXUnusedId() { + return getValue(org.jooq.test.ingres.generatedclasses.tables.XTestCase_85.X_UNUSED_ID); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_x_test_case_85
+	 * FOREIGN KEY (x_unused_id, x_unused_name)
+	 * REFERENCES test.x_unused (id, name)
+	 * 
+ */ + public org.jooq.test.ingres.generatedclasses.tables.records.XUnusedRecord fetchXUnused() { + return create() + .selectFrom(org.jooq.test.ingres.generatedclasses.tables.XUnused.X_UNUSED) + .where(org.jooq.test.ingres.generatedclasses.tables.XUnused.ID.equal(getValue(org.jooq.test.ingres.generatedclasses.tables.XTestCase_85.X_UNUSED_ID))) + .and(org.jooq.test.ingres.generatedclasses.tables.XUnused.NAME.equal(getValue(org.jooq.test.ingres.generatedclasses.tables.XTestCase_85.X_UNUSED_NAME))) + .fetchOne(); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_x_test_case_85
+	 * FOREIGN KEY (x_unused_id, x_unused_name)
+	 * REFERENCES test.x_unused (id, name)
+	 * 
+ */ + public void setXUnusedName(java.lang.String value) { + setValue(org.jooq.test.ingres.generatedclasses.tables.XTestCase_85.X_UNUSED_NAME, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_x_test_case_85
+	 * FOREIGN KEY (x_unused_id, x_unused_name)
+	 * REFERENCES test.x_unused (id, name)
+	 * 
+ */ + public java.lang.String getXUnusedName() { + return getValue(org.jooq.test.ingres.generatedclasses.tables.XTestCase_85.X_UNUSED_NAME); + } + + /** + * Create a detached XTestCase_85Record + */ + public XTestCase_85Record() { + super(org.jooq.test.ingres.generatedclasses.tables.XTestCase_85.X_TEST_CASE_85); + } +} diff --git a/jOOQ-test/src/org/jooq/test/ingres/generatedclasses/tables/records/XUnusedRecord.java b/jOOQ-test/src/org/jooq/test/ingres/generatedclasses/tables/records/XUnusedRecord.java new file mode 100644 index 00000000000..8ee49b2f60a --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/ingres/generatedclasses/tables/records/XUnusedRecord.java @@ -0,0 +1,304 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.ingres.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + * + * An unused table in the same schema. + */ +public class XUnusedRecord extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = 9033916; + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setId(java.lang.Integer value) { + setValue(org.jooq.test.ingres.generatedclasses.tables.XUnused.ID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.lang.Integer getId() { + return getValue(org.jooq.test.ingres.generatedclasses.tables.XUnused.ID); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.util.List fetchXTestCase_85List() { + return create() + .selectFrom(org.jooq.test.ingres.generatedclasses.tables.XTestCase_85.X_TEST_CASE_85) + .where(org.jooq.test.ingres.generatedclasses.tables.XTestCase_85.X_UNUSED_ID.equal(getValue(org.jooq.test.ingres.generatedclasses.tables.XUnused.ID))) + .and(org.jooq.test.ingres.generatedclasses.tables.XTestCase_85.X_UNUSED_NAME.equal(getValue(org.jooq.test.ingres.generatedclasses.tables.XUnused.NAME))) + .fetch(); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.util.List fetchXUnusedList() { + return create() + .selectFrom(org.jooq.test.ingres.generatedclasses.tables.XUnused.X_UNUSED) + .where(org.jooq.test.ingres.generatedclasses.tables.XUnused.ID_REF.equal(getValue(org.jooq.test.ingres.generatedclasses.tables.XUnused.ID))) + .and(org.jooq.test.ingres.generatedclasses.tables.XUnused.NAME_REF.equal(getValue(org.jooq.test.ingres.generatedclasses.tables.XUnused.NAME))) + .fetch(); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.util.List fetchXTestCase_64_69List() { + return create() + .selectFrom(org.jooq.test.ingres.generatedclasses.tables.XTestCase_64_69.X_TEST_CASE_64_69) + .where(org.jooq.test.ingres.generatedclasses.tables.XTestCase_64_69.UNUSED_ID.equal(getValue(org.jooq.test.ingres.generatedclasses.tables.XUnused.ID))) + .fetch(); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setName(java.lang.String value) { + setValue(org.jooq.test.ingres.generatedclasses.tables.XUnused.NAME, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.lang.String getName() { + return getValue(org.jooq.test.ingres.generatedclasses.tables.XUnused.NAME); + } + + /** + * An uncommented item + */ + public void setBigInteger(java.math.BigInteger value) { + setValue(org.jooq.test.ingres.generatedclasses.tables.XUnused.BIG_INTEGER, value); + } + + /** + * An uncommented item + */ + public java.math.BigInteger getBigInteger() { + return getValue(org.jooq.test.ingres.generatedclasses.tables.XUnused.BIG_INTEGER); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_x_unused_self
+	 * FOREIGN KEY (id_ref, name_ref)
+	 * REFERENCES test.x_unused (id, name)
+	 * 
+ */ + public void setIdRef(java.lang.Integer value) { + setValue(org.jooq.test.ingres.generatedclasses.tables.XUnused.ID_REF, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_x_unused_self
+	 * FOREIGN KEY (id_ref, name_ref)
+	 * REFERENCES test.x_unused (id, name)
+	 * 
+ */ + public java.lang.Integer getIdRef() { + return getValue(org.jooq.test.ingres.generatedclasses.tables.XUnused.ID_REF); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_x_unused_self
+	 * FOREIGN KEY (id_ref, name_ref)
+	 * REFERENCES test.x_unused (id, name)
+	 * 
+ */ + public org.jooq.test.ingres.generatedclasses.tables.records.XUnusedRecord fetchXUnused() { + return create() + .selectFrom(org.jooq.test.ingres.generatedclasses.tables.XUnused.X_UNUSED) + .where(org.jooq.test.ingres.generatedclasses.tables.XUnused.ID.equal(getValue(org.jooq.test.ingres.generatedclasses.tables.XUnused.ID_REF))) + .and(org.jooq.test.ingres.generatedclasses.tables.XUnused.NAME.equal(getValue(org.jooq.test.ingres.generatedclasses.tables.XUnused.NAME_REF))) + .fetchOne(); + } + + /** + * An uncommented item + */ + public void setClass_(java.lang.Integer value) { + setValue(org.jooq.test.ingres.generatedclasses.tables.XUnused.CLASS, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getClass_() { + return getValue(org.jooq.test.ingres.generatedclasses.tables.XUnused.CLASS); + } + + /** + * An uncommented item + */ + public void setFields_(java.lang.Integer value) { + setValue(org.jooq.test.ingres.generatedclasses.tables.XUnused.FIELDS, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getFields_() { + return getValue(org.jooq.test.ingres.generatedclasses.tables.XUnused.FIELDS); + } + + /** + * An uncommented item + */ + public void setConfiguration_(java.lang.Integer value) { + setValue(org.jooq.test.ingres.generatedclasses.tables.XUnused.CONFIGURATION, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getConfiguration_() { + return getValue(org.jooq.test.ingres.generatedclasses.tables.XUnused.CONFIGURATION); + } + + /** + * An uncommented item + */ + public void setUDT(java.lang.Integer value) { + setValue(org.jooq.test.ingres.generatedclasses.tables.XUnused.U_D_T, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getUDT() { + return getValue(org.jooq.test.ingres.generatedclasses.tables.XUnused.U_D_T); + } + + /** + * An uncommented item + */ + public void setMetaData_(java.lang.Integer value) { + setValue(org.jooq.test.ingres.generatedclasses.tables.XUnused.META_DATA, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getMetaData_() { + return getValue(org.jooq.test.ingres.generatedclasses.tables.XUnused.META_DATA); + } + + /** + * An uncommented item + */ + public void setType0_(java.lang.Integer value) { + setValue(org.jooq.test.ingres.generatedclasses.tables.XUnused.TYPE0, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getType0_() { + return getValue(org.jooq.test.ingres.generatedclasses.tables.XUnused.TYPE0); + } + + /** + * An uncommented item + */ + public void setPrimaryKey(java.lang.Integer value) { + setValue(org.jooq.test.ingres.generatedclasses.tables.XUnused.PRIMARY_KEY, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getPrimaryKey() { + return getValue(org.jooq.test.ingres.generatedclasses.tables.XUnused.PRIMARY_KEY); + } + + /** + * An uncommented item + */ + public void setPrimarykey(java.lang.Integer value) { + setValue(org.jooq.test.ingres.generatedclasses.tables.XUnused.PRIMARYKEY, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getPrimarykey() { + return getValue(org.jooq.test.ingres.generatedclasses.tables.XUnused.PRIMARYKEY); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_x_unused_self
+	 * FOREIGN KEY (id_ref, name_ref)
+	 * REFERENCES test.x_unused (id, name)
+	 * 
+ */ + public void setNameRef(java.lang.String value) { + setValue(org.jooq.test.ingres.generatedclasses.tables.XUnused.NAME_REF, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_x_unused_self
+	 * FOREIGN KEY (id_ref, name_ref)
+	 * REFERENCES test.x_unused (id, name)
+	 * 
+ */ + public java.lang.String getNameRef() { + return getValue(org.jooq.test.ingres.generatedclasses.tables.XUnused.NAME_REF); + } + + /** + * An uncommented item + */ + public void setField_737(java.math.BigDecimal value) { + setValue(org.jooq.test.ingres.generatedclasses.tables.XUnused.FIELD_737, value); + } + + /** + * An uncommented item + */ + public java.math.BigDecimal getField_737() { + return getValue(org.jooq.test.ingres.generatedclasses.tables.XUnused.FIELD_737); + } + + /** + * Create a detached XUnusedRecord + */ + public XUnusedRecord() { + super(org.jooq.test.ingres.generatedclasses.tables.XUnused.X_UNUSED); + } +} diff --git a/jOOQ-test/src/org/jooq/test/ingres/reset.sql b/jOOQ-test/src/org/jooq/test/ingres/reset.sql new file mode 100644 index 00000000000..99f8707f1ae --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/ingres/reset.sql @@ -0,0 +1,71 @@ +DELETE FROM t_658_ref/ +DELETE FROM t_658_11/ +DELETE FROM t_658_21/ +DELETE FROM t_658_31/ +DELETE FROM t_658_12/ +DELETE FROM t_658_22/ +DELETE FROM t_658_32/ +DELETE FROM t_book_to_book_store/ +DELETE FROM t_book_store/ +DELETE FROM t_book/ +DELETE FROM t_author/ +DELETE FROM t_language/ +DELETE FROM t_booleans/ +DELETE FROM t_dates/ +DELETE FROM t_identity/ +DELETE FROM t_identity_pk/ + +DROP SEQUENCE s_author_id/ +CREATE SEQUENCE s_author_id/ + +INSERT INTO t_language (id, cd, description, description_english) VALUES (1, 'en', 'English', 'English')/ +INSERT INTO t_language (id, cd, description, description_english) VALUES (2, 'de', 'Deutsch', 'German')/ +INSERT INTO t_language (id, cd, description, description_english) VALUES (3, 'fr', 'Français', 'French')/ +INSERT INTO t_language (id, cd, description, description_english) VALUES (4, 'pt', null, null)/ +/ + +INSERT INTO t_658_11 VALUES ('A')/ +INSERT INTO t_658_11 VALUES ('B')/ +INSERT INTO t_658_11 VALUES ('C')/ +INSERT INTO t_658_21 VALUES (1)/ +INSERT INTO t_658_21 VALUES (2)/ +INSERT INTO t_658_21 VALUES (3)/ +INSERT INTO t_658_31 VALUES (1)/ +INSERT INTO t_658_31 VALUES (2)/ +INSERT INTO t_658_31 VALUES (3)/ +INSERT INTO t_658_12 VALUES ('A', 'A')/ +INSERT INTO t_658_12 VALUES ('B', 'B')/ +INSERT INTO t_658_12 VALUES ('C', 'C')/ +INSERT INTO t_658_22 VALUES (1, 1)/ +INSERT INTO t_658_22 VALUES (2, 2)/ +INSERT INTO t_658_22 VALUES (3, 3)/ +INSERT INTO t_658_32 VALUES (1, 1)/ +INSERT INTO t_658_32 VALUES (2, 2)/ +INSERT INTO t_658_32 VALUES (3, 3)/ +INSERT INTO t_658_ref VALUES ('A', 1, 1, 'B', 2, 2)/ + +INSERT INTO t_author VALUES (s_author_id.nextval, 'George', 'Orwell', '1903-06-25', 1903, null) +/ +INSERT INTO t_author VALUES (s_author_id.nextval, 'Paulo', 'Coelho', '1947-08-24', 1947, null) +/ + +INSERT INTO t_book VALUES (1, 1, null, null, '1984', 1948, 1, 'To know and not to know, to be conscious of complete truthfulness while telling carefully constructed lies, to hold simultaneously two opinions which cancelled out, knowing them to be contradictory and believing in both of them, to use logic against logic, to repudiate morality while laying claim to it, to believe that democracy was impossible and that the Party was the guardian of democracy, to forget, whatever it was necessary to forget, then to draw it back into memory again at the moment when it was needed, and then promptly to forget it again, and above all, to apply the same process to the process itself -- that was the ultimate subtlety; consciously to induce unconsciousness, and then, once again, to become unconscious of the act of hypnosis you had just performed. Even to understand the word ''doublethink'' involved the use of doublethink..', null) +/ +INSERT INTO t_book VALUES (2, 1, null, null, 'Animal Farm', 1945, 1, null, null) +/ +INSERT INTO t_book VALUES (3, 2, null, null, 'O Alquimista', 1988, 4, null, null) +/ +INSERT INTO t_book VALUES (4, 2, null, null, 'Brida', 1990, 2, null, null) +/ + +INSERT INTO t_book_store (name) VALUES ('Orell Füssli')/ +INSERT INTO t_book_store (name) VALUES ('Ex Libris')/ +INSERT INTO t_book_store (name) VALUES ('Buchhandlung im Volkshaus')/ + +INSERT INTO t_book_to_book_store VALUES ('Orell Füssli', 1, 10)/ +INSERT INTO t_book_to_book_store VALUES ('Orell Füssli', 2, 10)/ +INSERT INTO t_book_to_book_store VALUES ('Orell Füssli', 3, 10)/ +INSERT INTO t_book_to_book_store VALUES ('Ex Libris', 1, 1)/ +INSERT INTO t_book_to_book_store VALUES ('Ex Libris', 3, 2)/ +INSERT INTO t_book_to_book_store VALUES ('Buchhandlung im Volkshaus', 3, 1)/ + diff --git a/jOOQ-test/src/org/jooq/test/jOOQASETest.java b/jOOQ-test/src/org/jooq/test/jOOQASETest.java new file mode 100644 index 00000000000..58a76a25dc6 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/jOOQASETest.java @@ -0,0 +1,745 @@ +/** + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com + * 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 "jOOQ" 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 COPYRIGHT OWNER 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. + */ + +package org.jooq.test; + +import static org.jooq.test.ase.generatedclasses.Tables.T_BOOK_TO_BOOK_STORE; +import static org.jooq.test.ase.generatedclasses.Tables.T_BOOLEANS; +import static org.jooq.test.ase.generatedclasses.Tables.T_DATES; +import static org.jooq.test.ase.generatedclasses.Tables.T_IDENTITY; +import static org.jooq.test.ase.generatedclasses.Tables.T_IDENTITY_PK; +import static org.jooq.test.ase.generatedclasses.Tables.V_AUTHOR; +import static org.jooq.test.ase.generatedclasses.Tables.V_BOOK; + +import java.math.BigDecimal; +import java.math.BigInteger; +import java.sql.Date; + +import org.jooq.ArrayRecord; +import org.jooq.DataType; +import org.jooq.Field; +import org.jooq.Record; +import org.jooq.Result; +import org.jooq.Table; +import org.jooq.TableField; +import org.jooq.UDTRecord; +import org.jooq.UpdatableTable; +import org.jooq.conf.Settings; +import org.jooq.impl.Factory; +import org.jooq.test._.converters.Boolean_10; +import org.jooq.test._.converters.Boolean_TF_LC; +import org.jooq.test._.converters.Boolean_TF_UC; +import org.jooq.test._.converters.Boolean_YES_NO_LC; +import org.jooq.test._.converters.Boolean_YES_NO_UC; +import org.jooq.test._.converters.Boolean_YN_LC; +import org.jooq.test._.converters.Boolean_YN_UC; +import org.jooq.test.ase.generatedclasses.DboFactory; +import org.jooq.test.ase.generatedclasses.tables.TAuthor; +import org.jooq.test.ase.generatedclasses.tables.TBook; +import org.jooq.test.ase.generatedclasses.tables.TBookStore; +import org.jooq.test.ase.generatedclasses.tables.TBookToBookStore; +import org.jooq.test.ase.generatedclasses.tables.TBooleans; +import org.jooq.test.ase.generatedclasses.tables.TIdentity; +import org.jooq.test.ase.generatedclasses.tables.TIdentityPk; +import org.jooq.test.ase.generatedclasses.tables.TTriggers; +import org.jooq.test.ase.generatedclasses.tables.T_639NumbersTable; +import org.jooq.test.ase.generatedclasses.tables.T_658Ref; +import org.jooq.test.ase.generatedclasses.tables.T_725LobTest; +import org.jooq.test.ase.generatedclasses.tables.T_785; +import org.jooq.test.ase.generatedclasses.tables.VLibrary; +import org.jooq.test.ase.generatedclasses.tables.records.TAuthorRecord; +import org.jooq.test.ase.generatedclasses.tables.records.TBookRecord; +import org.jooq.test.ase.generatedclasses.tables.records.TBookStoreRecord; +import org.jooq.test.ase.generatedclasses.tables.records.TBookToBookStoreRecord; +import org.jooq.test.ase.generatedclasses.tables.records.TBooleansRecord; +import org.jooq.test.ase.generatedclasses.tables.records.TDatesRecord; +import org.jooq.test.ase.generatedclasses.tables.records.TIdentityPkRecord; +import org.jooq.test.ase.generatedclasses.tables.records.TIdentityRecord; +import org.jooq.test.ase.generatedclasses.tables.records.TTriggersRecord; +import org.jooq.test.ase.generatedclasses.tables.records.T_639NumbersTableRecord; +import org.jooq.test.ase.generatedclasses.tables.records.T_658RefRecord; +import org.jooq.test.ase.generatedclasses.tables.records.T_725LobTestRecord; +import org.jooq.test.ase.generatedclasses.tables.records.T_785Record; +import org.jooq.test.ase.generatedclasses.tables.records.VLibraryRecord; +import org.jooq.test.ase.generatedclasses.tables.records.XUnusedRecord; +import org.jooq.tools.unsigned.UByte; +import org.jooq.tools.unsigned.UInteger; +import org.jooq.tools.unsigned.ULong; +import org.jooq.tools.unsigned.UShort; +import org.jooq.util.ase.ASEDataType; + + +/** + * Integration test that creates tables and performs various sql operations. + * + * @author Lukas Eder + */ +public class jOOQASETest extends jOOQAbstractTest< + TAuthorRecord, + TBookRecord, + TBookStoreRecord, + TBookToBookStoreRecord, + XUnusedRecord, + VLibraryRecord, + XUnusedRecord, + TDatesRecord, + TBooleansRecord, + XUnusedRecord, + TTriggersRecord, + XUnusedRecord, + TIdentityRecord, + TIdentityPkRecord, + T_658RefRecord, + T_725LobTestRecord, + T_639NumbersTableRecord, + T_785Record> { + + @Override + protected Factory create(Settings settings) { + return new DboFactory(getConnection(), settings); + } + + @Override + protected UpdatableTable TAuthor() { + return TAuthor.T_AUTHOR; + } + + @Override + protected TableField TAuthor_LAST_NAME() { + return TAuthor.LAST_NAME; + } + + @Override + protected TableField TAuthor_FIRST_NAME() { + return TAuthor.FIRST_NAME; + } + + @Override + protected TableField TAuthor_DATE_OF_BIRTH() { + return TAuthor.DATE_OF_BIRTH; + } + + @Override + protected TableField TAuthor_YEAR_OF_BIRTH() { + return TAuthor.YEAR_OF_BIRTH; + } + + @Override + protected TableField TAuthor_ID() { + return TAuthor.ID; + } + + @Override + protected TableField> TAuthor_ADDRESS() { + return null; + } + + @Override + protected UpdatableTable TBook() { + return TBook.T_BOOK; + } + + @Override + protected TableField TBook_ID() { + return TBook.ID; + } + + @Override + protected TableField TBook_AUTHOR_ID() { + return TBook.AUTHOR_ID; + } + + @Override + protected TableField TBook_TITLE() { + return TBook.TITLE; + } + + @Override + protected UpdatableTable TBookStore() { + return TBookStore.T_BOOK_STORE; + } + + @Override + protected TableField TBookStore_NAME() { + return TBookStore.NAME; + } + + @Override + protected UpdatableTable TBookToBookStore() { + return T_BOOK_TO_BOOK_STORE; + } + + @Override + protected UpdatableTable TBookSale() { + return null; + } + + @Override + protected TableField TBookToBookStore_BOOK_ID() { + return TBookToBookStore.BOOK_ID; + } + + @Override + protected TableField TBookToBookStore_BOOK_STORE_NAME() { + return TBookToBookStore.BOOK_STORE_NAME; + } + + @Override + protected TableField TBookToBookStore_STOCK() { + return TBookToBookStore.STOCK; + } + + @Override + protected Table T725() { + return T_725LobTest.T_725_LOB_TEST; + } + + @Override + protected TableField T725_ID() { + return T_725LobTest.ID; + } + + @Override + protected TableField T725_LOB() { + return T_725LobTest.LOB; + } + + @Override + protected Table T658() { + return T_658Ref.T_658_REF; + } + + @Override + protected Table T785() { + return T_785.T_785; + } + + @Override + protected TableField T785_ID() { + return T_785.ID; + } + + @Override + protected TableField T785_NAME() { + return T_785.NAME; + } + + @Override + protected TableField T785_VALUE() { + return T_785.VALUE; + } + + @Override + protected Table TUnsigned() { + return null; + } + + @Override + protected TableField TUnsigned_U_BYTE() { + return null; + } + + @Override + protected TableField TUnsigned_U_SHORT() { + return null; + } + + @Override + protected TableField TUnsigned_U_INT() { + return null; + } + + @Override + protected TableField TUnsigned_U_LONG() { + return null; + } + + @Override + protected Table TDates() { + return T_DATES; + } + + @Override + protected UpdatableTable TBooleans() { + return T_BOOLEANS; + } + + @Override + protected TableField TBooleans_ID() { + return TBooleans.ID; + } + + @Override + protected TableField TBooleans_BOOLEAN_10() { + return TBooleans.ONE_ZERO; + } + + @Override + protected TableField TBooleans_Boolean_TF_LC() { + return TBooleans.TRUE_FALSE_LC; + } + + @Override + protected TableField TBooleans_Boolean_TF_UC() { + return TBooleans.TRUE_FALSE_UC; + } + + @Override + protected TableField TBooleans_Boolean_YN_LC() { + return TBooleans.Y_N_LC; + } + + @Override + protected TableField TBooleans_Boolean_YN_UC() { + return TBooleans.Y_N_UC; + } + + @Override + protected TableField TBooleans_Boolean_YES_NO_LC() { + return TBooleans.YES_NO_LC; + } + + @Override + protected TableField TBooleans_Boolean_YES_NO_UC() { + return TBooleans.YES_NO_UC; + } + + @Override + protected TableField TBooleans_VC() { + return TBooleans.VC_BOOLEAN; + } + + @Override + protected TableField TBooleans_C() { + return TBooleans.C_BOOLEAN; + } + + @Override + protected TableField TBooleans_N() { + return TBooleans.N_BOOLEAN; + } + + @Override + protected Table T639() { + return T_639NumbersTable.T_639_NUMBERS_TABLE; + } + + @Override + protected TableField T639_ID() { + return T_639NumbersTable.ID; + } + + @Override + protected TableField T639_BIG_DECIMAL() { + return T_639NumbersTable.BIG_DECIMAL; + } + + @Override + protected TableField T639_BIG_INTEGER() { + return T_639NumbersTable.BIG_INTEGER; + } + + @Override + protected TableField T639_BYTE() { + return T_639NumbersTable.BYTE; + } + + @Override + protected TableField T639_BYTE_DECIMAL() { + return T_639NumbersTable.BYTE_DECIMAL; + } + + @Override + protected TableField T639_SHORT() { + return T_639NumbersTable.SHORT; + } + + @Override + protected TableField T639_SHORT_DECIMAL() { + return T_639NumbersTable.SHORT_DECIMAL; + } + + @Override + protected TableField T639_INTEGER() { + return T_639NumbersTable.INTEGER; + } + + @Override + protected TableField T639_INTEGER_DECIMAL() { + return T_639NumbersTable.INTEGER_DECIMAL; + } + + @Override + protected TableField T639_LONG() { + return T_639NumbersTable.LONG; + } + + @Override + protected TableField T639_LONG_DECIMAL() { + return T_639NumbersTable.LONG_DECIMAL; + } + + @Override + protected TableField T639_DOUBLE() { + return T_639NumbersTable.DOUBLE; + } + + @Override + protected TableField T639_FLOAT() { + return null; + } + + @Override + protected Table TArrays() { + return null; + } + + @Override + protected TableField TArrays_ID() { + return null; + } + + @Override + protected TableField TArrays_STRING() { + return null; + } + + @Override + protected TableField TArrays_NUMBER() { + return null; + } + + @Override + protected TableField TArrays_DATE() { + return null; + } + + @Override + protected TableField> TArrays_STRING_R() { + return null; + } + + @Override + protected TableField> TArrays_NUMBER_R() { + return null; + } + + @Override + protected TableField> TArrays_DATE_R() { + return null; + } + + @Override + protected TableField> TArrays_NUMBER_LONG_R() { + return null; + } + + @Override + protected TableField> TBook_LANGUAGE_ID() { + return TBook.LANGUAGE_ID; + } + + @Override + protected TableField TBook_PUBLISHED_IN() { + return TBook.PUBLISHED_IN; + } + + @Override + protected TableField TBook_CONTENT_TEXT() { + return TBook.CONTENT_TEXT; + } + + @Override + protected TableField TBook_CONTENT_PDF() { + return TBook.CONTENT_PDF; + } + + @Override + protected TableField> TBook_STATUS() { + return null; + } + + @Override + protected Table VLibrary() { + return VLibrary.V_LIBRARY; + } + + @Override + protected TableField VLibrary_TITLE() { + return VLibrary.TITLE; + } + + @Override + protected TableField VLibrary_AUTHOR() { + return VLibrary.AUTHOR; + } + + @Override + protected Table VAuthor() { + return V_AUTHOR; + } + + @Override + protected Table VBook() { + return V_BOOK; + } + + @Override + protected UpdatableTable TDirectory() { + return null; + } + + @Override + protected TableField TDirectory_ID() { + return null; + } + + @Override + protected TableField TDirectory_PARENT_ID() { + return null; + } + + @Override + protected TableField TDirectory_IS_DIRECTORY() { + return null; + } + + @Override + protected TableField TDirectory_NAME() { + return null; + } + + @Override + protected UpdatableTable TTriggers() { + return TTriggers.T_TRIGGERS; + } + + @Override + protected TableField TTriggers_ID_GENERATED() { + return TTriggers.ID_GENERATED; + } + + @Override + protected TableField TTriggers_ID() { + return TTriggers.ID; + } + + @Override + protected TableField TTriggers_COUNTER() { + return TTriggers.COUNTER; + } + + @Override + protected Table TIdentity() { + return T_IDENTITY; + } + + @Override + protected TableField TIdentity_ID() { + return TIdentity.ID; + } + + @Override + protected TableField TIdentity_VAL() { + return TIdentity.VAL; + } + + @Override + protected UpdatableTable TIdentityPK() { + return T_IDENTITY_PK; + } + + @Override + protected TableField TIdentityPK_ID() { + return TIdentityPk.ID; + } + + @Override + protected TableField TIdentityPK_VAL() { + return TIdentityPk.VAL; + } + + @Override + protected Field FAuthorExistsField(String authorName) { + return null; + } + + @Override + protected Field FOneField() { + return null; + } + + @Override + protected Field FNumberField(Number n) { + return null; + } + + @Override + protected Field FNumberField(Field n) { + return null; + } + + @Override + protected Field F317Field(Number n1, Number n2, Number n3, Number n4) { + return null; + } + + @Override + protected Field F317Field(Field n1, Field n2, + Field n3, Field n4) { + return null; + } + + @Override + protected Field> FGetOneCursorField(Integer[] array) { + return null; + } + + @Override + protected Field FArrays1Field(Field array) { + return null; + } + + + @Override + protected Field FArrays2Field(Field array) { + return null; + } + + + @Override + protected Field FArrays3Field(Field array) { + return null; + } + + + @Override + protected > Field FArrays1Field_R(Field array) { + return null; + } + + + @Override + protected > Field FArrays2Field_R(Field array) { + return null; + } + + + @Override + protected > Field FArrays3Field_R(Field array) { + return null; + } + + + @Override + protected Class> cUAddressType() { + return null; + } + + @Override + protected Class> cUStreetType() { + return null; + } + + @Override + protected Class cRoutines() { + return null; + } + + @Override + protected boolean supportsOUTParameters() { + return false; + } + + @Override + protected boolean supportsReferences() { + return true; + } + + @Override + protected boolean supportsRecursiveQueries() { + return false; + } + + @Override + protected Class cLibrary() { + return null; + } + + @Override + protected Class cSequences() { + return null; + } + + @Override + protected TableField[]> TArrays_UDT() { + return null; + } + + @Override + protected DataType[] getCastableDataTypes() { + return new DataType[] { + ASEDataType.BIGINT, + ASEDataType.BINARY, + ASEDataType.CHAR, + ASEDataType.DATE, + ASEDataType.DATETIME, + ASEDataType.DEC, + ASEDataType.DECIMAL, + ASEDataType.DOUBLE_PRECISION, + ASEDataType.FLOAT, + ASEDataType.IMAGE, + ASEDataType.INT, + ASEDataType.INTEGER, + ASEDataType.LONGVARCHAR, + ASEDataType.MONEY, + ASEDataType.NCHAR, + ASEDataType.NUMERIC, + ASEDataType.NVARCHAR, + ASEDataType.REAL, + ASEDataType.SMALLDATETIME, + ASEDataType.SMALLINT, + ASEDataType.SMALLMONEY, + ASEDataType.TEXT, + ASEDataType.TIME, + ASEDataType.TIMESTAMP, + ASEDataType.TINYINT, + ASEDataType.UNICHAR, + ASEDataType.UNITEXT, + ASEDataType.UNIVARCHAR, + ASEDataType.UNSIGNEDBIGINT, + ASEDataType.UNSIGNEDINT, + ASEDataType.UNSIGNEDSMALLLINT, + ASEDataType.VARBINARY, + ASEDataType.VARCHAR, + }; + } +} diff --git a/jOOQ-test/src/org/jooq/test/jOOQAbstractTest.java b/jOOQ-test/src/org/jooq/test/jOOQAbstractTest.java new file mode 100644 index 00000000000..284bc2ce85f --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/jOOQAbstractTest.java @@ -0,0 +1,1493 @@ +/** + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com + * All rights reserved. + * + * This software is licensed to you under the Apache License, Version 2.0 + * (the "License"); You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * 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 "jOOQ" 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 COPYRIGHT OWNER 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. + */ +package org.jooq.test; + +import static junit.framework.Assert.assertEquals; +import static org.jooq.SQLDialect.CUBRID; + +import java.io.File; +import java.io.InputStream; +import java.math.BigDecimal; +import java.math.BigInteger; +import java.sql.Connection; +import java.sql.Date; +import java.sql.DriverManager; +import java.sql.SQLException; +import java.sql.SQLSyntaxErrorException; +import java.sql.Statement; +import java.util.Arrays; +import java.util.HashMap; +import java.util.List; +import java.util.Map; +import java.util.Properties; + +import javax.swing.UIManager; + +import org.jooq.ArrayRecord; +import org.jooq.DataType; +import org.jooq.ExecuteType; +import org.jooq.Field; +import org.jooq.QueryPart; +import org.jooq.QueryPartInternal; +import org.jooq.Record; +import org.jooq.Result; +import org.jooq.SQLDialect; +import org.jooq.Schema; +import org.jooq.Table; +import org.jooq.TableField; +import org.jooq.TableRecord; +import org.jooq.UDTRecord; +import org.jooq.UpdatableRecord; +import org.jooq.UpdatableTable; +import org.jooq.conf.RenderMapping; +import org.jooq.conf.Settings; +import org.jooq.conf.SettingsTools; +import org.jooq.debug.DebugListener; +import org.jooq.debug.console.Console; +import org.jooq.debug.console.DatabaseDescriptor; +import org.jooq.debug.console.remote.RemoteDebuggerServer; +import org.jooq.impl.Factory; +import org.jooq.test._.TestStatisticsListener; +import org.jooq.test._.converters.Boolean_10; +import org.jooq.test._.converters.Boolean_TF_LC; +import org.jooq.test._.converters.Boolean_TF_UC; +import org.jooq.test._.converters.Boolean_YES_NO_LC; +import org.jooq.test._.converters.Boolean_YES_NO_UC; +import org.jooq.test._.converters.Boolean_YN_LC; +import org.jooq.test._.converters.Boolean_YN_UC; +import org.jooq.test._.testcases.AggregateWindowFunctionTests; +import org.jooq.test._.testcases.CRUDTests; +import org.jooq.test._.testcases.DataTypeTests; +import org.jooq.test._.testcases.EnumTests; +import org.jooq.test._.testcases.ExecuteListenerTests; +import org.jooq.test._.testcases.ExoticTests; +import org.jooq.test._.testcases.FetchTests; +import org.jooq.test._.testcases.FormatTests; +import org.jooq.test._.testcases.FunctionTests; +import org.jooq.test._.testcases.GeneralTests; +import org.jooq.test._.testcases.GroupByTests; +import org.jooq.test._.testcases.InsertUpdateTests; +import org.jooq.test._.testcases.JoinTests; +import org.jooq.test._.testcases.LoaderTests; +import org.jooq.test._.testcases.OrderByTests; +import org.jooq.test._.testcases.PlainSQLTests; +import org.jooq.test._.testcases.PredicateTests; +import org.jooq.test._.testcases.RenderAndBindTests; +import org.jooq.test._.testcases.RoutineAndUDTTests; +import org.jooq.test._.testcases.SchemaAndMappingTests; +import org.jooq.test._.testcases.SelectTests; +import org.jooq.tools.JooqLogger; +import org.jooq.tools.StopWatch; +import org.jooq.tools.StringUtils; +import org.jooq.tools.unsigned.UByte; +import org.jooq.tools.unsigned.UInteger; +import org.jooq.tools.unsigned.ULong; +import org.jooq.tools.unsigned.UShort; +import org.jooq.util.GenerationTool; + +import org.apache.commons.io.FileUtils; +import org.junit.After; +import org.junit.AfterClass; +import org.junit.Before; +import org.junit.BeforeClass; +import org.junit.Test; +import org.postgresql.util.PSQLException; + +import com.microsoft.sqlserver.jdbc.SQLServerException; + +/** + * The abstract test suite uses generic types to model the generated test schema + * types, such as T_AUTHOR, T_BOOK, etc + * + * @author Lukas Eder + */ +@SuppressWarnings({ "rawtypes", "unchecked" }) +public abstract class jOOQAbstractTest< + + // T_AUTHOR table + A extends UpdatableRecord
, + + // T_BOOK table + B extends UpdatableRecord, + + // T_BOOK_STORE table + S extends UpdatableRecord, + + // T_BOOK_TO_BOOK_STORE table + B2S extends UpdatableRecord, + + // MULTI_SCHEMA.T_BOOK_SALE table + BS extends UpdatableRecord, + + // V_LIBRARY view + L extends TableRecord, + + // T_ARRAYS table + X extends TableRecord, + + // T_DATES table + DATE extends UpdatableRecord, + + // T_BOOLEANS table + BOOL extends UpdatableRecord, + + // T_DIRECTORY table + D extends UpdatableRecord, + + // T_TRIGGERS table + T extends UpdatableRecord, + + // T_UNSIGNED table + U extends TableRecord, + + // T_IDENTITY table + I extends TableRecord, + + // T_IDENTITY_PK table + IPK extends UpdatableRecord, + + // Various tables related to trac ticket numbers + T658 extends TableRecord, + T725 extends UpdatableRecord, + T639 extends UpdatableRecord, + T785 extends TableRecord> { + + protected static final List BOOK_IDS_SHORT = Arrays.asList((short) 1, (short) 2, (short) 3, (short) 4); + protected static final List BOOK_IDS = Arrays.asList(1, 2, 3, 4); + protected static final List BOOK_AUTHOR_IDS = Arrays.asList(1, 1, 2, 2); + protected static final List BOOK_TITLES = Arrays.asList("1984", "Animal Farm", "O Alquimista", "Brida"); + protected static final List BOOK_FIRST_NAMES = Arrays.asList("George", "George", "Paulo", "Paulo"); + protected static final List BOOK_LAST_NAMES = Arrays.asList("Orwell", "Orwell", "Coelho", "Coelho"); + protected static final List AUTHOR_IDS = Arrays.asList(1, 2); + protected static final List AUTHOR_FIRST_NAMES = Arrays.asList("George", "Paulo"); + protected static final List AUTHOR_LAST_NAMES = Arrays.asList("Orwell", "Coelho"); + + private static final String JDBC_SCHEMA = "jdbc.Schema"; + private static final String JDBC_PASSWORD = "jdbc.Password"; + private static final String JDBC_USER = "jdbc.User"; + private static final String JDBC_URL = "jdbc.URL"; + private static final String JDBC_DRIVER = "jdbc.Driver"; + private static final int DEBUGGER_PORT = 5533; + + public static final JooqLogger log = JooqLogger.getLogger(jOOQAbstractTest.class); + public static final StopWatch testSQLWatch = new StopWatch(); + public static boolean initialised; + public static boolean reset; + public static Connection connection; + public static boolean connectionInitialised; + public static Connection connectionMultiSchema; + public static boolean connectionMultiSchemaInitialised; + public static Connection connectionMultiSchemaUnused; + public static boolean connectionMultiSchemaUnusedInitialised; + public static boolean autocommit; + public static String jdbcURL; + public static String jdbcSchema; + public static Map scripts = new HashMap(); + + private static RemoteDebuggerServer SERVER; + + protected void execute(String script) throws Exception { + Statement stmt = null; + + String allSQL = scripts.get(script); + if (allSQL == null) { + try { + log.info("Loading", script); + File file = new File(getClass().getResource(script).toURI()); + allSQL = FileUtils.readFileToString(file); + testSQLWatch.splitDebug("Loaded SQL file"); + } + catch (Exception ignore) { + allSQL = ""; + } + + scripts.put(script, allSQL); + } + + for (String sql : allSQL.split("/")) { + try { + if (!StringUtils.isBlank(sql)) { + sql = sql.replace("{" + JDBC_SCHEMA + "}", jdbcSchema); + + if (sql.toLowerCase().contains("multi_schema_unused.") && + !sql.toLowerCase().contains("references multi_schema_unused")) { + stmt = getConnectionMultiSchemaUnused().createStatement(); + } + else if (sql.toLowerCase().contains("multi_schema.") && + !sql.toLowerCase().contains("references multi_schema.")) { + stmt = getConnectionMultiSchema().createStatement(); + } + else { + stmt = getConnection().createStatement(); + } + + stmt.execute(sql.trim()); + testSQLWatch.splitDebug(StringUtils.abbreviate(sql.trim().replaceAll("[\\n\\r]|\\s+", " "), 25)); + } + } + catch (Exception e) { + // There is no DROP TABLE IF EXISTS statement in Oracle + if (e.getMessage().contains("ORA-00942")) { + continue; + } + + // There is no DROP SEQUENCE IF EXISTS statement in Oracle + else if (e.getMessage().contains("ORA-02289")) { + continue; + } + + // There is no DROP {PROCEDURE|FUNCTION} IF EXISTS statement in + // Oracle + else if (e.getMessage().contains("ORA-04043")) { + continue; + } + + // There is no DROP TRIGGER IF EXISTS statement in Oracle + else if (e.getMessage().contains("ORA-04080")) { + continue; + } + + // There is no DROP TABLE IF EXISTS statement in DB2 + else if (e.getMessage().contains("SQLCODE=-204") && e.getMessage().contains("SQLSTATE=42704")) { + continue; + } + + // There is no DROP TRANSFORM IF EXISTS statement in DB2 + else if (e.getMessage().contains("SQLCODE=-20012") && e.getMessage().contains("SQLSTATE=42740")) { + continue; + } + + // There is no DROP FUNCTION IF EXISTS statement in Postgres + else if (e.getClass().getName().startsWith("org.postgresql")) { + if ("42883".equals(((PSQLException) e).getSQLState())) { + continue; + } + } + + // There is no DROP ** IF EXISTS statement in Derby + else if (e.getCause() instanceof org.apache.derby.client.am.SqlException) { + if (sql.contains("DROP") || sql.contains("CREATE SCHEMA")) { + continue; + } + } + + // There is no DROP ** IF EXISTS statement in SQL Server + else if (e.getClass().getName().startsWith("com.microsoft")) { + switch (((SQLServerException)e).getErrorCode()) { + case 3701: // Tables + case 218: // Types + continue; + } + } + + // There is no DROP SEQUENCE IF EXISTS statement in Sybase + else if (e.getClass().getName().startsWith("com.sybase")) { + if (sql.contains("DROP SEQUENCE")) { + continue; + } + } + + // There are no DROP SEQUENCE IF EXISTS and + // DROP RULE IF EXISTS statements in Ingres + else if (e instanceof SQLSyntaxErrorException) { + if (sql.contains("DROP SEQUENCE") || sql.contains("DROP RULE")) { + continue; + } + } + + // There are no IF EXISTS clauses in Sybase ASE + else if (e.getMessage().contains("doesn't exist") && getDialect() == SQLDialect.ASE) { + continue; + } + + // There is no IF EXISTS clause in CUBRID's DROP VIEW statement + else if (getDialect() == CUBRID && sql.trim().startsWith("DROP")) { + continue; + } + + // All other errors + System.out.println("Error while executing : " + sql.trim()); + System.out.println(); + System.out.println(); + e.printStackTrace(); + + System.exit(-1); + } + finally { + if (stmt != null) { + try { + stmt.close(); + } catch (SQLException e) { + // Sybase throws an exception: JZ0S2: Statement object has already been closed + } + } + } + } + } + + @BeforeClass + public static void sqlConsole() throws Exception { + SERVER = new RemoteDebuggerServer(DEBUGGER_PORT); + } + + @Before + public void setUp() throws Exception { + connection = getConnection(); + // connectionMultiSchema = getConnectionMultiSchema(); + + autocommit = connection.getAutoCommit(); + + if (!initialised) { + initialised = true; + execute(getCreateScript()); + } + + if (!reset) { + reset = true; + execute(getResetScript()); + } + } + + @After + public void tearDown() throws Exception { + connection.setAutoCommit(autocommit); + } + + @AfterClass + public static void quit() throws Exception { + SERVER.close(); + + log.info("QUITTING"); + + // Issue a log dump on adaptive server. Don't know why this is needed + // http://www.faqs.org/faqs/databases/sybase-faq/part6/ + if (connection.getClass().getPackage().getName().contains("jtds")) { + log.info("RUNNING", "dump tran TEST with truncate_only"); + connection.createStatement().execute("dump tran TEST with truncate_only"); + } + + connection.close(); + + log.info("TEST STATISTICS"); + log.info("---------------"); + + int total = 0; + for (ExecuteType type : ExecuteType.values()) { + Integer count = TestStatisticsListener.STATISTICS.get(type); + if (count != null) total += count; + + log.info(type.name(), TestStatisticsListener.STATISTICS.get(type) + " executions"); + } + + log.info("---------------"); + log.info("Total", total); + } + + public final Connection getConnection() { + if (!connectionInitialised) { + connectionInitialised = true; + connection = getConnection0(null, null); + + boolean runConsoleInProcess = false; + if (runConsoleInProcess) { + DatabaseDescriptor descriptor = new DatabaseDescriptor() { + @Override + public Schema getSchema() { + return jOOQAbstractTest.this.schema(); + } + + @Override + public SQLDialect getSQLDialect() { + return SQLDialect.ORACLE; + } + + @Override + public Connection createConnection() { + return jOOQAbstractTest.this.getConnection(); + } + }; + + try { + UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName()); + Console console = new Console(descriptor, true); + console.setLoggingActive(true); + console.setVisible(true); + } + catch (Exception ignore) {} + } + } + + return connection; + } + + public final Connection getConnectionMultiSchema() { + if (!connectionMultiSchemaInitialised) { + connectionMultiSchemaInitialised = true; + connectionMultiSchema = getConnection0("MULTI_SCHEMA", "MULTI_SCHEMA"); + } + + return connectionMultiSchema; + } + + public final Connection getConnectionMultiSchemaUnused() { + if (!connectionMultiSchemaUnusedInitialised) { + connectionMultiSchemaUnusedInitialised = true; + connectionMultiSchemaUnused = getConnection0("MULTI_SCHEMA_UNUSED", "MULTI_SCHEMA_UNUSED"); + } + + return connectionMultiSchemaUnused; + } + + private final Connection getConnection0(String jdbcUser, String jdbcPassword) { + try { + String configuration = System.getProperty("jdbc.properties"); + if (configuration == null) { + log.error("No system property 'jdbc.properties' found"); + log.error("-----------"); + log.error("Please be sure property is set; example: -Djdbc.properties=/org/jooq/configuration/${env_var:USERNAME}/db2/library.properties"); + throw new Error(); + } + InputStream in = GenerationTool.class.getResourceAsStream(configuration); + if (in == null) { + log.error("Cannot find " + configuration); + log.error("-----------"); + log.error("Please be sure it is located on the classpath and qualified as a classpath location."); + log.error("If it is located at the current working directory, try adding a '/' to the path"); + throw new Error(); + } + + Properties properties = new Properties(); + + try { + properties.load(in); + } + finally { + in.close(); + } + + String driver = properties.getProperty(JDBC_DRIVER); + jdbcURL = properties.getProperty(JDBC_URL) + getSchemaSuffix(); + jdbcUser = jdbcUser != null ? jdbcUser : properties.getProperty(JDBC_USER); + jdbcPassword = jdbcPassword != null ? jdbcPassword : properties.getProperty(JDBC_PASSWORD); + jdbcSchema = properties.getProperty(JDBC_SCHEMA) + getSchemaSuffix(); + + Class.forName(driver); + if (StringUtils.isBlank(jdbcUser)) { + Properties p = new Properties(); + + if (getClass().getSimpleName().toLowerCase().contains("ingres")) { + p.setProperty("timezone", "EUROPE-CENTRAL"); + } + + return DriverManager.getConnection(getJdbcURL(), p); + } + else { + return DriverManager.getConnection(getJdbcURL(), jdbcUser, jdbcPassword); + } + } + catch (Exception e) { + throw new Error(e); + } + } + + /** + * Gets the jdbc url. + * + * Subclasses can override this method to add special parameters to the url + * + * @return + */ + protected String getJdbcURL() { + return jdbcURL; + } + + protected final String getCreateScript() throws Exception { + return "/org/jooq/test/" + getDialect().getName().toLowerCase() + "/create.sql"; + } + + protected final String getResetScript() throws Exception { + return "/org/jooq/test/" + getDialect().getName().toLowerCase() + "/reset.sql"; + } + + protected abstract Table T658(); + protected abstract Table T725(); + protected abstract TableField T725_ID(); + protected abstract TableField T725_LOB(); + protected abstract Table T639(); + protected abstract TableField T639_ID(); + protected abstract TableField T639_BIG_DECIMAL(); + protected abstract TableField T639_BIG_INTEGER(); + protected abstract TableField T639_BYTE(); + protected abstract TableField T639_BYTE_DECIMAL(); + protected abstract TableField T639_SHORT(); + protected abstract TableField T639_SHORT_DECIMAL(); + protected abstract TableField T639_INTEGER(); + protected abstract TableField T639_INTEGER_DECIMAL(); + protected abstract TableField T639_LONG(); + protected abstract TableField T639_LONG_DECIMAL(); + protected abstract TableField T639_DOUBLE(); + protected abstract TableField T639_FLOAT(); + + protected abstract Table T785(); + protected abstract TableField T785_ID(); + protected abstract TableField T785_NAME(); + protected abstract TableField T785_VALUE(); + + protected abstract Table TUnsigned(); + protected abstract TableField TUnsigned_U_BYTE(); + protected abstract TableField TUnsigned_U_SHORT(); + protected abstract TableField TUnsigned_U_INT(); + protected abstract TableField TUnsigned_U_LONG(); + + protected abstract Table TDates(); + + protected abstract Table TArrays(); + protected abstract TableField TArrays_ID(); + protected abstract TableField TArrays_STRING(); + protected abstract TableField TArrays_NUMBER(); + protected abstract TableField TArrays_DATE(); + protected abstract TableField[]> TArrays_UDT(); + protected abstract TableField> TArrays_STRING_R(); + protected abstract TableField> TArrays_NUMBER_R(); + protected abstract TableField> TArrays_NUMBER_LONG_R(); + protected abstract TableField> TArrays_DATE_R(); + + protected abstract UpdatableTable TAuthor(); + protected abstract TableField TAuthor_LAST_NAME(); + protected abstract TableField TAuthor_FIRST_NAME(); + protected abstract TableField TAuthor_DATE_OF_BIRTH(); + protected abstract TableField TAuthor_YEAR_OF_BIRTH(); + protected abstract TableField TAuthor_ID(); + protected abstract TableField> TAuthor_ADDRESS(); + + protected abstract Class> cUAddressType(); + protected abstract Class> cUStreetType(); + protected abstract UpdatableTable TBook(); + + protected abstract TableField TBook_ID(); + protected abstract TableField TBook_AUTHOR_ID(); + protected abstract TableField TBook_TITLE(); + protected abstract TableField TBook_LANGUAGE_ID(); + protected abstract TableField TBook_PUBLISHED_IN(); + protected abstract TableField TBook_CONTENT_TEXT(); + protected abstract TableField TBook_CONTENT_PDF(); + protected abstract TableField> TBook_STATUS(); + + protected abstract UpdatableTable TBookStore(); + protected abstract TableField TBookStore_NAME(); + protected abstract Table VLibrary(); + protected abstract Table VAuthor(); + protected abstract Table VBook(); + protected abstract TableField VLibrary_TITLE(); + protected abstract TableField VLibrary_AUTHOR(); + + protected abstract UpdatableTable TBookToBookStore(); + protected abstract TableField TBookToBookStore_BOOK_ID(); + protected abstract TableField TBookToBookStore_BOOK_STORE_NAME(); + protected abstract TableField TBookToBookStore_STOCK(); + + protected abstract UpdatableTable TBookSale(); + protected final TableField TBookSale_ID() { + return (TableField) TBookSale().getField("ID"); + } + protected final TableField TBookSale_BOOK_ID() { + return (TableField) TBookSale().getField("BOOK_ID"); + } + protected final TableField TBookSale_BOOK_STORE_NAME() { + return (TableField) TBookSale().getField("BOOK_STORE_NAME"); + } + protected final TableField TBookSale_SOLD_AT() { + return (TableField) TBookSale().getField("SOLD_AT"); + } + protected final TableField TBookSale_SOLD_FOR() { + return (TableField) TBookSale().getField("SOLD_FOR"); + } + + protected abstract UpdatableTable TBooleans(); + protected abstract TableField TBooleans_ID(); + protected abstract TableField TBooleans_BOOLEAN_10(); + protected abstract TableField TBooleans_Boolean_TF_LC(); + protected abstract TableField TBooleans_Boolean_TF_UC(); + protected abstract TableField TBooleans_Boolean_YN_LC(); + protected abstract TableField TBooleans_Boolean_YN_UC(); + protected abstract TableField TBooleans_Boolean_YES_NO_LC(); + protected abstract TableField TBooleans_Boolean_YES_NO_UC(); + protected abstract TableField TBooleans_VC(); + protected abstract TableField TBooleans_C(); + protected abstract TableField TBooleans_N(); + + protected abstract UpdatableTable TDirectory(); + protected abstract TableField TDirectory_ID(); + protected abstract TableField TDirectory_PARENT_ID(); + protected abstract TableField TDirectory_IS_DIRECTORY(); + protected abstract TableField TDirectory_NAME(); + + protected abstract UpdatableTable TTriggers(); + protected abstract TableField TTriggers_ID_GENERATED(); + protected abstract TableField TTriggers_ID(); + protected abstract TableField TTriggers_COUNTER(); + + protected abstract Table TIdentity(); + protected abstract TableField TIdentity_ID(); + protected abstract TableField TIdentity_VAL(); + protected abstract UpdatableTable TIdentityPK(); + protected abstract TableField TIdentityPK_ID(); + protected abstract TableField TIdentityPK_VAL(); + + protected abstract Field FAuthorExistsField(String authorName); + protected abstract Field FOneField(); + protected abstract Field FNumberField(Number n); + protected abstract Field FNumberField(Field n); + protected abstract Field F317Field(Number n1, Number n2, Number n3, Number n4); + protected abstract Field F317Field(Field n1, Field n2, Field n3, Field n4); + protected abstract Field> FGetOneCursorField(Integer[] array); + + protected abstract Field FArrays1Field(Field array); + protected abstract Field FArrays2Field(Field array); + protected abstract Field FArrays3Field(Field array); + protected abstract > Field FArrays1Field_R(Field array); + protected abstract > Field FArrays2Field_R(Field array); + protected abstract > Field FArrays3Field_R(Field array); + + protected abstract boolean supportsOUTParameters(); + protected abstract boolean supportsReferences(); + protected abstract boolean supportsRecursiveQueries(); + protected abstract Class cRoutines(); + protected abstract Class cLibrary(); + protected abstract Class cSequences(); + protected abstract DataType[] getCastableDataTypes(); + protected abstract Factory create(Settings settings); + + @SuppressWarnings("deprecation") + protected final Schema schema() { + return create().getSchemaMapping().map(TAuthor().getSchema()); + } + + protected final Factory create() { + Settings settings = SettingsTools.defaultSettings() + .withRenderMapping(new RenderMapping() + .withDefaultSchema("")) + .withExecuteListeners( + TestStatisticsListener.class.getName(), + DebugListener.class.getName()); + + return create(settings); + } + + protected final SQLDialect getDialect() throws Exception { + return create().getDialect(); + } + + protected final QueryPartInternal internal(QueryPart q) { + return q.internalAPI(QueryPartInternal.class); + } + + protected String getSchemaSuffix() { + return ""; + } + + // IMPORTANT! Make this the first test, to prevent side-effects + @Test + public void testInsertIdentity() throws Exception { + new InsertUpdateTests(this).testInsertIdentity(); + } + + + // IMPORTANT! Make this the an early test, to check for attaching side-effects + @Test + public void testUse() throws Exception { + new SchemaAndMappingTests(this).testUse(); + } + + @Test + public void testTableMapping() throws Exception { + new SchemaAndMappingTests(this).testTableMapping(); + } + + @Test + public void testSchemaMapping() throws Exception { + new SchemaAndMappingTests(this).testSchemaMapping(); + } + + @Test + public void testMultiSchemaQueries() throws Exception { + new SchemaAndMappingTests(this).testMultiSchemaQueries(); + } + + @Test + public void testSystemFunctions() throws Exception { + new FunctionTests(this).testSystemFunctions(); + } + + @Test + public void testFetchResultSet() throws Exception { + new FetchTests(this).testFetchResultSet(); + } + + @Test + public void testFetchLazy() throws Exception { + new FetchTests(this).testFetchLazy(); + } + + @Test + public void testFetchMap() throws Exception { + new FetchTests(this).testFetchMap(); + } + + @Test + public void testFetchArray() throws Exception { + new FetchTests(this).testFetchArray(); + } + + @Test + public void testSelectGetSQLAndGetBindValues() throws Exception { + new RenderAndBindTests(this).testSelectGetSQLAndGetBindValues(); + } + + @Test + public void testInsertUpdateGetSQLAndGetBindValues() throws Exception { + new RenderAndBindTests(this).testInsertUpdateGetSQLAndGetBindValues(); + } + + @Test + public void testTruncate() throws Exception { + new InsertUpdateTests(this).testTruncate(); + } + + @Test + public void testMetaModel() throws Exception { + new GeneralTests(this).testMetaModel(); + } + + @Test + public void testNumbers() throws Exception { + new DataTypeTests(this).testNumbers(); + } + + @Test + public void testLiterals() throws Exception { + new GeneralTests(this).testLiterals(); + } + + @Test + public void testPlainSQL() throws Exception { + new PlainSQLTests(this).testPlainSQL(); + } + + @Test + public void testPlainSQLCRUD() throws Exception { + new PlainSQLTests(this).testPlainSQLCRUD(); + } + + @Test + public void testPlainSQLResultQuery() throws Exception { + new PlainSQLTests(this).testPlainSQLResultQuery(); + } + + @Test + public void testCustomSQL() throws Exception { + new PlainSQLTests(this).testCustomSQL(); + } + + @Test + public void testUnsignedDataTypes() throws Exception { + new DataTypeTests(this).testUnsignedDataTypes(); + } + + @Test + public void testConversion() throws Exception { + new DataTypeTests(this).testConversion(); + } + + @Test + public void testConversionResult() throws Exception { + new DataTypeTests(this).testConversionResult(); + } + + @Test + public void testCustomConversion() throws Exception { + new DataTypeTests(this).testCustomConversion(); + } + + @Test + public void testForUpdateClauses() throws Exception { + new SelectTests(this).testForUpdateClauses(); + } + + @Test + public void testCastingToJavaClass() throws Exception { + new DataTypeTests(this).testCastingToJavaClass(); + } + + @Test + public void testNestedCasting() throws Exception { + new DataTypeTests(this).testNestedCasting(); + } + + @Test + public void testCastingToSQLDataType() throws Exception { + new DataTypeTests(this).testCastingToSQLDataType(); + } + + @Test + public void testCastingToDialectDataType() throws Exception { + new DataTypeTests(this).testCastingToDialectDataType(); + } + + @Test + public void testSequences() throws Exception { + new GeneralTests(this).testSequences(); + } + + @Test + public void testSelectSimpleQuery() throws Exception { + new SelectTests(this).testSelectSimpleQuery(); + } + + @Test + public void testSelectCountQuery() throws Exception { + new AggregateWindowFunctionTests(this).testSelectCountQuery(); + } + + @Test + public void testSelectQuery() throws Exception { + new SelectTests(this).testSelectQuery(); + } + + @Test + public void testAccessInternalRepresentation() throws Exception { + new GeneralTests(this).testAccessInternalRepresentation(); + } + + @Test + public void testLimit() throws Exception { + new OrderByTests(this).testLimit(); + } + + @Test + public void testLimitNested() throws Exception { + new OrderByTests(this).testLimitNested(); + } + + @Test + public void testLimitNamedParams() throws Exception { + new OrderByTests(this).testLimitNamedParams(); + } + + @Test + public void testTypeConversions() throws Exception { + new DataTypeTests(this).testTypeConversions(); + } + + @Test + public void testConditionalSelect() throws Exception { + new PredicateTests(this).testConditionalSelect(); + } + + @Test + public void testConditions() throws Exception { + new PredicateTests(this).testConditions(); + } + + @Test + public void testIgnoreCase() throws Exception { + new PredicateTests(this).testIgnoreCase(); + } + + @Test + public void testLargeINCondition() throws Exception { + new PredicateTests(this).testLargeINCondition(); + } + + @Test + public void testSubSelect() throws Exception { + new SelectTests(this).testSubSelect(); + } + + @Test + public void testDistinctQuery() throws Exception { + new SelectTests(this).testDistinctQuery(); + } + + @Test + public void testFetch() throws Exception { + new FetchTests(this).testFetch(); + } + + @Test + public void testFetchMany() throws Exception { + new FetchTests(this).testFetchMany(); + } + + @Test + public void testFetchWithoutResults() throws Exception { + new FetchTests(this).testFetchWithoutResults(); + } + + @Test + public void testFetchIntoWithAnnotations() throws Exception { + new FetchTests(this).testFetchIntoWithAnnotations(); + } + + @Test + public void testFetchIntoWithoutAnnotations() throws Exception { + new FetchTests(this).testFetchIntoWithoutAnnotations(); + } + + @Test + public void testRecordFromWithAnnotations() throws Exception { + new FetchTests(this).testRecordFromWithAnnotations(); + } + + @Test + public void testRecordFromWithoutAnnotations() throws Exception { + new FetchTests(this).testRecordFromWithoutAnnotations(); + } + + @Test + public void testRecordFromUpdatePK() throws Exception { + new FetchTests(this).testRecordFromUpdatePK(); + } + + @Test + public void testReflectionWithAnnotations() throws Exception { + new FetchTests(this).testReflectionWithAnnotations(); + } + + @Test + public void testReflectionWithoutAnnotations() throws Exception { + new FetchTests(this).testReflectionWithoutAnnotations(); + } + + @Test + public void testFetchIntoCustomTable() throws Exception { + new FetchTests(this).testFetchIntoCustomTable(); + } + + @Test + public void testFetchIntoGeneratedPojos() throws Exception { + new FetchTests(this).testFetchIntoGeneratedPojos(); + } + + @Test + public void testFetchIntoRecordHandler() throws Exception { + new FetchTests(this).testFetchIntoRecordHandler(); + } + + @Test + public void testFetchLater() throws Exception { + new FetchTests(this).testFetchLater(); + } + + @Test + public void testGrouping() throws Exception { + new GroupByTests(this).testGrouping(); + } + + @Test + public void testGroupByCubeRollup() throws Exception { + new GroupByTests(this).testGroupByCubeRollup(); + } + + @Test + public void testHavingWithoutGrouping() throws Exception { + new GroupByTests(this).testHavingWithoutGrouping(); + } + + @Test + public void testInsertUpdateDelete() throws Exception { + new CRUDTests(this).testInsertUpdateDelete(); + } + + @Test + public void testInsertImplicit() throws Exception { + new InsertUpdateTests(this).testInsertImplicit(); + } + + @Test + public void testInsertMultiple() throws Exception { + new InsertUpdateTests(this).testInsertMultiple(); + } + + @Test + public void testInsertConvert() throws Exception { + new InsertUpdateTests(this).testInsertConvert(); + } + + @Test + public void testInsertSelect() throws Exception { + new InsertUpdateTests(this).testInsertSelect(); + } + + @Test + public void testInsertWithSelectAsField() throws Exception { + new InsertUpdateTests(this).testInsertWithSelectAsField(); + } + + @Test + public void testUpdateSelect() throws Exception { + new InsertUpdateTests(this).testUpdateSelect(); + } + + @Test + public void testInsertOnDuplicateKey() throws Exception { + new InsertUpdateTests(this).testInsertOnDuplicateKey(); + } + + @Test + public void testInsertReturning() throws Exception { + new InsertUpdateTests(this).testInsertReturning(); + } + + @Test + public void testMerge() throws Exception { + new InsertUpdateTests(this).testMerge(); + } + + @Test + public void testBlobAndClob() throws Exception { + new DataTypeTests(this).testBlobAndClob(); + } + + @Test + public void testDateTime() throws Exception { + new DataTypeTests(this).testDateTime(); + } + + @Test + public void testDateTimeArithmetic() throws Exception { + new DataTypeTests(this).testDateTimeArithmetic(); + } + + @Test + public void testManager() throws Exception { + new CRUDTests(this).testManager(); + } + + @Test + public void testRelations() throws Exception { + new CRUDTests(this).testRelations(); + } + + @Test + public void testUpdatablesPK() throws Exception { + new CRUDTests(this).testUpdatablesPK(); + } + + @Test + public void testUpdatablesPKChangePK() throws Exception { + new CRUDTests(this).testUpdatablesPKChangePK(); + } + + @Test + public void testUpdatablesUK() throws Exception { + new CRUDTests(this).testUpdatablesUK(); + } + + @Test + public void testNonUpdatables() throws Exception { + new CRUDTests(this).testNonUpdatables(); + } + + @Test + public void testFormatHTML() throws Exception { + new FormatTests(this).testFormatHTML(); + } + + @Test + public void testFormatCSV() throws Exception { + new FormatTests(this).testFormatCSV(); + } + + @Test + public void testFormatJSON() throws Exception { + new FormatTests(this).testFormatJSON(); + } + + @Test + public void testFormatXML() throws Exception { + new FormatTests(this).testFormatXML(); + } + + @Test + public void testIntoXML() throws Exception { + new FormatTests(this).testIntoXML(); + } + + @Test + public void testCombinedSelectQuery() throws Exception { + new SelectTests(this).testCombinedSelectQuery(); + } + + @Test + public void testComplexUnions() throws Exception { + new SelectTests(this).testComplexUnions(); + } + + @Test + public void testOrderByInSubquery() throws Exception { + new OrderByTests(this).testOrderByInSubquery(); + } + + @Test + public void testOrderByNulls() throws Exception { + new OrderByTests(this).testOrderByNulls(); + } + + @Test + public void testOrderByIndexes() throws Exception { + new OrderByTests(this).testOrderByIndexes(); + } + + @Test + public void testOrderByIndirection() throws Exception { + new OrderByTests(this).testOrderByIndirection(); + } + + @Test + public void testJoinQuery() throws Exception { + new JoinTests(this).testJoinQuery(); + } + + @Test + public void testCrossJoin() throws Exception { + new JoinTests(this).testCrossJoin(); + } + + @Test + public void testNaturalJoin() throws Exception { + new JoinTests(this).testNaturalJoin(); + } + + @Test + public void testJoinUsing() throws Exception { + new JoinTests(this).testJoinUsing(); + } + + @Test + public void testJoinOnKey() throws Exception { + new JoinTests(this).testJoinOnKey(); + } + + @Test + public void testInverseAndNestedJoin() throws Exception { + new JoinTests(this).testInverseAndNestedJoin(); + } + + @Test + public void testOuterJoin() throws Exception { + new JoinTests(this).testOuterJoin(); + } + + @Test + public void testAliasing() throws Exception { + Table b = TBook().as("b"); + Field b_ID = b.getField(TBook_ID()); + + List ids = create().select(b_ID).from(b).orderBy(b_ID).fetch(b_ID); + assertEquals(4, ids.size()); + assertEquals(BOOK_IDS, ids); + + Result books = create().select().from(b).orderBy(b_ID).fetch(); + assertEquals(4, books.size()); + assertEquals(BOOK_IDS, books.getValues(b_ID)); + } + + // @Test // TODO [#579] re-enable this test when fixing this bug + public void testUnaliasedSubqueryProjections() throws Exception { + new SelectTests(this).testUnaliasedSubqueryProjections(); + } + + @Test + public void testArithmeticOperations() throws Exception { + new FunctionTests(this).testArithmeticOperations(); + } + + @Test + public void testBitwiseOperations() throws Exception { + new FunctionTests(this).testBitwiseOperations(); + } + + @Test + public void testAggregateFunctions() throws Exception { + new AggregateWindowFunctionTests(this).testAggregateFunctions(); + } + + @Test + public void testListAgg() throws Exception { + new AggregateWindowFunctionTests(this).testListAgg(); + } + + @Test + public void testStoredFunctions() throws Exception { + new RoutineAndUDTTests(this).testStoredFunctions(); + } + + @Test + public void testFunctionsOnDates() throws Exception { + new FunctionTests(this).testFunctionsOnDates(); + } + + @Test + public void testExtractInSubselect() throws Exception { + new FunctionTests(this).testExtractInSubselect(); + } + + @Test + public void testFunctionsOnNumbers() throws Exception { + new FunctionTests(this).testFunctionsOnNumbers(); + } + + @Test + public void testFunctionsOnStrings() throws Exception { + new FunctionTests(this).testFunctionsOnStrings(); + } + + @Test + public void testFunctionPosition() throws Exception { + new FunctionTests(this).testFunctionPosition(); + } + + @Test + public void testFunctionsLikeDecode() throws Exception { + new FunctionTests(this).testFunctionsLikeDecode(); + } + + @Test + public void testCaseStatement() throws Exception { + new FunctionTests(this).testCaseStatement(); + } + + @Test + public void testEnums() throws Exception { + new EnumTests(this).testEnums(); + } + + @Test + public > void testCustomEnums() throws Exception { + new EnumTests(this).testCustomEnums(); + } + + @Test + public void testMasterData() throws Exception { + new EnumTests(this).testMasterData(); + } + + @Test + public void testSerialisation() throws Exception { + new GeneralTests(this).testSerialisation(); + } + + @Test + public void testARRAYType() throws Exception { + new RoutineAndUDTTests(this).testARRAYType(); + } + + @Test + public void testARRAYProcedure() throws Exception { + new RoutineAndUDTTests(this).testARRAYProcedure(); + } + + @Test + public void testUDTs() throws Exception { + new RoutineAndUDTTests(this).testUDTs(); + } + + @Test + public void testUDTProcedure() throws Exception { + new RoutineAndUDTTests(this).testUDTProcedure(); + } + + @Test + public void testAttachable() throws Exception { + new GeneralTests(this).testAttachable(); + } + + @Test + public void testNULL() throws Exception { + new GeneralTests(this).testNULL(); + } + + @Test + public void testIsTrue() throws Exception { + new PredicateTests(this).testIsTrue(); + } + + @Test + public void testLike() throws Exception { + new PredicateTests(this).testLike(); + } + + @Test + public void testDual() throws Exception { + new GeneralTests(this).testDual(); + } + + @Test + public void testWindowFunctions() throws Exception { + new AggregateWindowFunctionTests(this).testWindowFunctions(); + } + + @Test + public void testPackage() throws Exception { + new RoutineAndUDTTests(this).testPackage(); + } + + @Test + public void testStoredProcedure() throws Exception { + new RoutineAndUDTTests(this).testStoredProcedure(); + } + + @Test + public void testStoredProcedureWithDefaultParameters() throws Exception { + new RoutineAndUDTTests(this).testStoredProcedureWithDefaultParameters(); + } + + @Test + public void testArrayTables() throws Exception { + new RoutineAndUDTTests(this).testArrayTables(); + } + + @Test + public void testArrayTableSimulation() throws Exception { + new RoutineAndUDTTests(this).testArrayTableSimulation(); + } + + @Test + public void testStoredProceduresWithCursorParameters() throws Exception { + new RoutineAndUDTTests(this).testStoredProceduresWithCursorParameters(); + } + + @Test + public void testEquals() throws Exception { + new GeneralTests(this).testEquals(); + } + + @Test + public void testBatchSingle() throws Exception { + new GeneralTests(this).testBatchSingle(); + } + + @Test + public void testBatchMultiple() throws Exception { + new GeneralTests(this).testBatchMultiple(); + } + + @Test + public void testNamedParams() throws Exception { + new RenderAndBindTests(this).testNamedParams(); + } + + @Test + public void testUnknownBindTypes() throws Exception { + new RenderAndBindTests(this).testUnknownBindTypes(); + } + + @Test + public void testSelectBindValues() throws Exception { + new RenderAndBindTests(this).testSelectBindValues(); + } + + @Test + public void testSelectBindValuesWithPlainSQL() throws Exception { + new RenderAndBindTests(this).testSelectBindValuesWithPlainSQL(); + } + + @Test + public void testInlinedBindValues() throws Exception { + new RenderAndBindTests(this).testInlinedBindValues(); + } + + @Test + public void testInlinedBindValuesForDatetime() throws Exception { + new RenderAndBindTests(this).testInlinedBindValuesForDatetime(); + } + + @Test + public void testPivotClause() throws Exception { + new ExoticTests(this).testPivotClause(); + } + + @Test + public void testRelationalDivision() throws Exception { + new ExoticTests(this).testRelationalDivision(); + } + + @Test + public void testConnectBySimple() throws Exception { + new ExoticTests(this).testConnectBySimple(); + } + + @Test + public void testConnectByDirectory() throws Exception { + new ExoticTests(this).testConnectByDirectory(); + } + + @Test + public void testExecuteListenerOnResultQuery() throws Exception { + new ExecuteListenerTests(this).testExecuteListenerOnResultQuery(); + } + + @Test + public void testExecuteListenerOnBatchSingle() throws Exception { + new ExecuteListenerTests(this).testExecuteListenerOnBatchSingle(); + } + + @Test + public void testExecuteListenerOnBatchMultiple() throws Exception { + new ExecuteListenerTests(this).testExecuteListenerOnBatchMultiple(); + } + + @Test + public void testRenderNameStyle() throws Exception { + new RenderAndBindTests(this).testRenderNameStyle(); + } + + @Test + public void testRenderKeywordStyle() throws Exception { + new RenderAndBindTests(this).testRenderKeywordStyle(); + } + + @Test + public void testLoader() throws Exception { + new LoaderTests(this).testLoader(); + } + + @Test + public void testVoid() { + // A final test case to clean up the test database + } +} diff --git a/jOOQ-test/src/org/jooq/test/jOOQCUBRIDTest.java b/jOOQ-test/src/org/jooq/test/jOOQCUBRIDTest.java new file mode 100644 index 00000000000..b8173020e24 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/jOOQCUBRIDTest.java @@ -0,0 +1,743 @@ +/** + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com + * 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 "jOOQ" 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 COPYRIGHT OWNER 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. + */ + +package org.jooq.test; + +import static org.jooq.test.cubrid.generatedclasses.Tables.T_BOOK_TO_BOOK_STORE; +import static org.jooq.test.cubrid.generatedclasses.Tables.T_BOOLEANS; +import static org.jooq.test.cubrid.generatedclasses.Tables.T_DATES; +import static org.jooq.test.cubrid.generatedclasses.Tables.T_DIRECTORY; +import static org.jooq.test.cubrid.generatedclasses.Tables.T_IDENTITY; +import static org.jooq.test.cubrid.generatedclasses.Tables.T_IDENTITY_PK; +import static org.jooq.test.cubrid.generatedclasses.Tables.V_AUTHOR; +import static org.jooq.test.cubrid.generatedclasses.Tables.V_BOOK; + +import java.math.BigDecimal; +import java.math.BigInteger; +import java.sql.Date; + +import org.jooq.ArrayRecord; +import org.jooq.DataType; +import org.jooq.Field; +import org.jooq.Record; +import org.jooq.Result; +import org.jooq.Table; +import org.jooq.TableField; +import org.jooq.UDTRecord; +import org.jooq.UpdatableTable; +import org.jooq.conf.Settings; +import org.jooq.impl.Factory; +import org.jooq.test._.converters.Boolean_10; +import org.jooq.test._.converters.Boolean_TF_LC; +import org.jooq.test._.converters.Boolean_TF_UC; +import org.jooq.test._.converters.Boolean_YES_NO_LC; +import org.jooq.test._.converters.Boolean_YES_NO_UC; +import org.jooq.test._.converters.Boolean_YN_LC; +import org.jooq.test._.converters.Boolean_YN_UC; +import org.jooq.test.cubrid.generatedclasses.Sequences; +import org.jooq.test.cubrid.generatedclasses.tables.TAuthor; +import org.jooq.test.cubrid.generatedclasses.tables.TBook; +import org.jooq.test.cubrid.generatedclasses.tables.TBookStore; +import org.jooq.test.cubrid.generatedclasses.tables.TBookToBookStore; +import org.jooq.test.cubrid.generatedclasses.tables.TBooleans; +import org.jooq.test.cubrid.generatedclasses.tables.TDirectory; +import org.jooq.test.cubrid.generatedclasses.tables.TIdentity; +import org.jooq.test.cubrid.generatedclasses.tables.TIdentityPk; +import org.jooq.test.cubrid.generatedclasses.tables.TTriggers; +import org.jooq.test.cubrid.generatedclasses.tables.T_639NumbersTable; +import org.jooq.test.cubrid.generatedclasses.tables.T_658Ref; +import org.jooq.test.cubrid.generatedclasses.tables.T_725LobTest; +import org.jooq.test.cubrid.generatedclasses.tables.T_785; +import org.jooq.test.cubrid.generatedclasses.tables.VLibrary; +import org.jooq.test.cubrid.generatedclasses.tables.records.TAuthorRecord; +import org.jooq.test.cubrid.generatedclasses.tables.records.TBookRecord; +import org.jooq.test.cubrid.generatedclasses.tables.records.TBookStoreRecord; +import org.jooq.test.cubrid.generatedclasses.tables.records.TBookToBookStoreRecord; +import org.jooq.test.cubrid.generatedclasses.tables.records.TBooleansRecord; +import org.jooq.test.cubrid.generatedclasses.tables.records.TDatesRecord; +import org.jooq.test.cubrid.generatedclasses.tables.records.TDirectoryRecord; +import org.jooq.test.cubrid.generatedclasses.tables.records.TIdentityPkRecord; +import org.jooq.test.cubrid.generatedclasses.tables.records.TIdentityRecord; +import org.jooq.test.cubrid.generatedclasses.tables.records.TTriggersRecord; +import org.jooq.test.cubrid.generatedclasses.tables.records.T_639NumbersTableRecord; +import org.jooq.test.cubrid.generatedclasses.tables.records.T_658RefRecord; +import org.jooq.test.cubrid.generatedclasses.tables.records.T_725LobTestRecord; +import org.jooq.test.cubrid.generatedclasses.tables.records.T_785Record; +import org.jooq.test.cubrid.generatedclasses.tables.records.VLibraryRecord; +import org.jooq.test.cubrid.generatedclasses.tables.records.XUnusedRecord; +import org.jooq.tools.unsigned.UByte; +import org.jooq.tools.unsigned.UInteger; +import org.jooq.tools.unsigned.ULong; +import org.jooq.tools.unsigned.UShort; +import org.jooq.util.cubrid.CUBRIDDataType; +import org.jooq.util.cubrid.CUBRIDFactory; + + +/** + * Integration test that creates tables and performs various sql operations. + * + * @author Lukas Eder + */ +public class jOOQCUBRIDTest extends jOOQAbstractTest< + TAuthorRecord, + TBookRecord, + TBookStoreRecord, + TBookToBookStoreRecord, + XUnusedRecord, + VLibraryRecord, + XUnusedRecord, + TDatesRecord, + TBooleansRecord, + TDirectoryRecord, + TTriggersRecord, + XUnusedRecord, + TIdentityRecord, + TIdentityPkRecord, + T_658RefRecord, + T_725LobTestRecord, + T_639NumbersTableRecord, + T_785Record> { + + @Override + protected Factory create(Settings settings) { + return new CUBRIDFactory(getConnection(), settings); + } + + @Override + protected UpdatableTable TAuthor() { + return TAuthor.T_AUTHOR; + } + + @Override + protected TableField TAuthor_LAST_NAME() { + return TAuthor.LAST_NAME; + } + + @Override + protected TableField TAuthor_FIRST_NAME() { + return TAuthor.FIRST_NAME; + } + + @Override + protected TableField TAuthor_DATE_OF_BIRTH() { + return TAuthor.DATE_OF_BIRTH; + } + + @Override + protected TableField TAuthor_YEAR_OF_BIRTH() { + return TAuthor.YEAR_OF_BIRTH; + } + + @Override + protected TableField TAuthor_ID() { + return TAuthor.ID; + } + + @Override + protected TableField> TAuthor_ADDRESS() { + return null; + } + + @Override + protected UpdatableTable TBook() { + return TBook.T_BOOK; + } + + @Override + protected TableField TBook_ID() { + return TBook.ID; + } + + @Override + protected TableField TBook_AUTHOR_ID() { + return TBook.AUTHOR_ID; + } + + @Override + protected TableField TBook_TITLE() { + return TBook.TITLE; + } + + @Override + protected UpdatableTable TBookStore() { + return TBookStore.T_BOOK_STORE; + } + + @Override + protected TableField TBookStore_NAME() { + return TBookStore.NAME; + } + + @Override + protected UpdatableTable TBookToBookStore() { + return T_BOOK_TO_BOOK_STORE; + } + + @Override + protected UpdatableTable TBookSale() { + return null; + } + + @Override + protected TableField TBookToBookStore_BOOK_ID() { + return TBookToBookStore.BOOK_ID; + } + + @Override + protected TableField TBookToBookStore_BOOK_STORE_NAME() { + return TBookToBookStore.BOOK_STORE_NAME; + } + + @Override + protected TableField TBookToBookStore_STOCK() { + return TBookToBookStore.STOCK; + } + + @Override + protected Table T725() { + return T_725LobTest.T_725_LOB_TEST; + } + + @Override + protected TableField T725_ID() { + return T_725LobTest.ID; + } + + @Override + protected TableField T725_LOB() { + return T_725LobTest.LOB; + } + + @Override + protected Table T658() { + return T_658Ref.T_658_REF; + } + + @Override + protected Table T785() { + return T_785.T_785; + } + + @Override + protected TableField T785_ID() { + return T_785.ID; + } + + @Override + protected TableField T785_NAME() { + return T_785.NAME; + } + + @Override + protected TableField T785_VALUE() { + return T_785.VALUE; + } + + @Override + protected Table TUnsigned() { + return null; + } + + @Override + protected TableField TUnsigned_U_BYTE() { + return null; + } + + @Override + protected TableField TUnsigned_U_SHORT() { + return null; + } + + @Override + protected TableField TUnsigned_U_INT() { + return null; + } + + @Override + protected TableField TUnsigned_U_LONG() { + return null; + } + + @Override + protected Table TDates() { + return T_DATES; + } + + @Override + protected UpdatableTable TBooleans() { + return T_BOOLEANS; + } + + @Override + protected TableField TBooleans_ID() { + return TBooleans.ID; + } + + @Override + protected TableField TBooleans_BOOLEAN_10() { + return TBooleans.ONE_ZERO; + } + + @Override + protected TableField TBooleans_Boolean_TF_LC() { + return TBooleans.TRUE_FALSE_LC; + } + + @Override + protected TableField TBooleans_Boolean_TF_UC() { + return TBooleans.TRUE_FALSE_UC; + } + + @Override + protected TableField TBooleans_Boolean_YN_LC() { + return TBooleans.Y_N_LC; + } + + @Override + protected TableField TBooleans_Boolean_YN_UC() { + return TBooleans.Y_N_UC; + } + + @Override + protected TableField TBooleans_Boolean_YES_NO_LC() { + return TBooleans.YES_NO_LC; + } + + @Override + protected TableField TBooleans_Boolean_YES_NO_UC() { + return TBooleans.YES_NO_UC; + } + + @Override + protected TableField TBooleans_VC() { + return TBooleans.VC_BOOLEAN; + } + + @Override + protected TableField TBooleans_C() { + return TBooleans.C_BOOLEAN; + } + + @Override + protected TableField TBooleans_N() { + return TBooleans.N_BOOLEAN; + } + + @Override + protected Table T639() { + return T_639NumbersTable.T_639_NUMBERS_TABLE; + } + + @Override + protected TableField T639_ID() { + return T_639NumbersTable.ID; + } + + @Override + protected TableField T639_BIG_DECIMAL() { + return T_639NumbersTable.BIG_DECIMAL; + } + + @Override + protected TableField T639_BIG_INTEGER() { + return T_639NumbersTable.BIG_INTEGER; + } + + @Override + protected TableField T639_BYTE() { + return null; + } + + @Override + protected TableField T639_BYTE_DECIMAL() { + return T_639NumbersTable.BYTE_DECIMAL; + } + + @Override + protected TableField T639_SHORT() { + return T_639NumbersTable.SHORT; + } + + @Override + protected TableField T639_SHORT_DECIMAL() { + return T_639NumbersTable.SHORT_DECIMAL; + } + + @Override + protected TableField T639_INTEGER() { + return T_639NumbersTable.INTEGER; + } + + @Override + protected TableField T639_INTEGER_DECIMAL() { + return T_639NumbersTable.INTEGER_DECIMAL; + } + + @Override + protected TableField T639_LONG() { + return T_639NumbersTable.LONG; + } + + @Override + protected TableField T639_LONG_DECIMAL() { + return T_639NumbersTable.LONG_DECIMAL; + } + + @Override + protected TableField T639_DOUBLE() { + return T_639NumbersTable.DOUBLE; + } + + @Override + protected TableField T639_FLOAT() { + return null; + } + + @Override + protected Table TArrays() { + return null; + } + + @Override + protected TableField TArrays_ID() { + return null; + } + + @Override + protected TableField TArrays_STRING() { + return null; + } + + @Override + protected TableField TArrays_NUMBER() { + return null; + } + + @Override + protected TableField TArrays_DATE() { + return null; + } + + @Override + protected TableField> TArrays_STRING_R() { + return null; + } + + @Override + protected TableField> TArrays_NUMBER_R() { + return null; + } + + @Override + protected TableField> TArrays_DATE_R() { + return null; + } + + @Override + protected TableField> TArrays_NUMBER_LONG_R() { + return null; + } + + @Override + protected TableField> TBook_LANGUAGE_ID() { + return TBook.LANGUAGE_ID; + } + + @Override + protected TableField TBook_PUBLISHED_IN() { + return TBook.PUBLISHED_IN; + } + + @Override + protected TableField TBook_CONTENT_TEXT() { + return TBook.CONTENT_TEXT; + } + + @Override + protected TableField TBook_CONTENT_PDF() { + return TBook.CONTENT_PDF; + } + + @Override + protected TableField> TBook_STATUS() { + return null; + } + + @Override + protected Table VLibrary() { + return VLibrary.V_LIBRARY; + } + + @Override + protected TableField VLibrary_TITLE() { + return VLibrary.TITLE; + } + + @Override + protected TableField VLibrary_AUTHOR() { + return VLibrary.AUTHOR; + } + + @Override + protected Table VAuthor() { + return V_AUTHOR; + } + + @Override + protected Table VBook() { + return V_BOOK; + } + + @Override + protected UpdatableTable TDirectory() { + return T_DIRECTORY; + } + + @Override + protected TableField TDirectory_ID() { + return TDirectory.ID; + } + + @Override + protected TableField TDirectory_PARENT_ID() { + return TDirectory.PARENT_ID; + } + + @Override + protected TableField TDirectory_IS_DIRECTORY() { + return TDirectory.IS_DIRECTORY; + } + + @Override + protected TableField TDirectory_NAME() { + return TDirectory.NAME; + } + + @Override + protected UpdatableTable TTriggers() { + return TTriggers.T_TRIGGERS; + } + + @Override + protected TableField TTriggers_ID_GENERATED() { + return TTriggers.ID_GENERATED; + } + + @Override + protected TableField TTriggers_ID() { + return TTriggers.ID; + } + + @Override + protected TableField TTriggers_COUNTER() { + return TTriggers.COUNTER; + } + + @Override + protected Table TIdentity() { + return T_IDENTITY; + } + + @Override + protected TableField TIdentity_ID() { + return TIdentity.ID; + } + + @Override + protected TableField TIdentity_VAL() { + return TIdentity.VAL; + } + + @Override + protected UpdatableTable TIdentityPK() { + return T_IDENTITY_PK; + } + + @Override + protected TableField TIdentityPK_ID() { + return TIdentityPk.ID; + } + + @Override + protected TableField TIdentityPK_VAL() { + return TIdentityPk.VAL; + } + + @Override + protected Field FAuthorExistsField(String authorName) { + return null; + } + + @Override + protected Field FOneField() { + return null; + } + + @Override + protected Field FNumberField(Number n) { + return null; + } + + @Override + protected Field FNumberField(Field n) { + return null; + } + + @Override + protected Field F317Field(Number n1, Number n2, Number n3, Number n4) { + return null; + } + + @Override + protected Field F317Field(Field n1, Field n2, + Field n3, Field n4) { + return null; + } + + @Override + protected Field> FGetOneCursorField(Integer[] array) { + return null; + } + + @Override + protected Field FArrays1Field(Field array) { + return null; + } + + + @Override + protected Field FArrays2Field(Field array) { + return null; + } + + + @Override + protected Field FArrays3Field(Field array) { + return null; + } + + + @Override + protected > Field FArrays1Field_R(Field array) { + return null; + } + + + @Override + protected > Field FArrays2Field_R(Field array) { + return null; + } + + + @Override + protected > Field FArrays3Field_R(Field array) { + return null; + } + + + @Override + protected Class> cUAddressType() { + return null; + } + + @Override + protected Class> cUStreetType() { + return null; + } + + @Override + protected Class cRoutines() { + return null; + } + + @Override + protected boolean supportsOUTParameters() { + return false; + } + + @Override + protected boolean supportsReferences() { + return false; + } + + @Override + protected boolean supportsRecursiveQueries() { + return true; + } + + @Override + protected Class cLibrary() { + return null; + } + + @Override + protected Class cSequences() { + return Sequences.class; + } + + @Override + protected TableField[]> TArrays_UDT() { + return null; + } + + @Override + protected DataType[] getCastableDataTypes() { + return new DataType[] { + CUBRIDDataType.BIGINT, + CUBRIDDataType.BIT, + CUBRIDDataType.BITVARYING, + CUBRIDDataType.BLOB, + CUBRIDDataType.CHAR, + CUBRIDDataType.CHARACTER, + CUBRIDDataType.CHARACTERVARYING, + CUBRIDDataType.CHARVARYING, + CUBRIDDataType.CLOB, + CUBRIDDataType.DATE, + CUBRIDDataType.DATETIME, + CUBRIDDataType.FLOAT, + CUBRIDDataType.INT, + CUBRIDDataType.INTEGER, + CUBRIDDataType.MONETARY, + CUBRIDDataType.NATIONALCHARACTERVARYING, + CUBRIDDataType.NATIONALCHARVARYING, + CUBRIDDataType.NCHAR, + CUBRIDDataType.NCHARVARYING, + CUBRIDDataType.NUMERIC, + CUBRIDDataType.REAL, + CUBRIDDataType.SHORT, + CUBRIDDataType.SMALLINT, + CUBRIDDataType.STRING, + CUBRIDDataType.TIME, + CUBRIDDataType.TIMESTAMP, + CUBRIDDataType.VARCHAR, + }; + } +} diff --git a/jOOQ-test/src/org/jooq/test/jOOQDB2Test.java b/jOOQ-test/src/org/jooq/test/jOOQDB2Test.java new file mode 100644 index 00000000000..0bae04c89c5 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/jOOQDB2Test.java @@ -0,0 +1,740 @@ +/** + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com + * All rights reserved. + * + * This software is licensed to you under the Apache License, Version 2.0 + * (the "License"); You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * 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 "jOOQ" 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 COPYRIGHT OWNER 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. + */ + +package org.jooq.test; + +import static org.jooq.test.db2.generatedclasses.Tables.T_BOOK_TO_BOOK_STORE; +import static org.jooq.test.db2.generatedclasses.Tables.T_BOOLEANS; +import static org.jooq.test.db2.generatedclasses.Tables.T_DATES; +import static org.jooq.test.db2.generatedclasses.Tables.T_IDENTITY; +import static org.jooq.test.db2.generatedclasses.Tables.T_IDENTITY_PK; +import static org.jooq.test.db2.generatedclasses.Tables.V_AUTHOR; +import static org.jooq.test.db2.generatedclasses.Tables.V_BOOK; + +import java.math.BigDecimal; +import java.math.BigInteger; +import java.sql.Date; + +import org.jooq.ArrayRecord; +import org.jooq.DataType; +import org.jooq.Field; +import org.jooq.Record; +import org.jooq.Result; +import org.jooq.Table; +import org.jooq.TableField; +import org.jooq.UDTRecord; +import org.jooq.UpdatableTable; +import org.jooq.conf.Settings; +import org.jooq.impl.Factory; +import org.jooq.test._.converters.Boolean_10; +import org.jooq.test._.converters.Boolean_TF_LC; +import org.jooq.test._.converters.Boolean_TF_UC; +import org.jooq.test._.converters.Boolean_YES_NO_LC; +import org.jooq.test._.converters.Boolean_YES_NO_UC; +import org.jooq.test._.converters.Boolean_YN_LC; +import org.jooq.test._.converters.Boolean_YN_UC; +import org.jooq.test.db2.generatedclasses.LukasFactory; +import org.jooq.test.db2.generatedclasses.Routines; +import org.jooq.test.db2.generatedclasses.Sequences; +import org.jooq.test.db2.generatedclasses.tables.TAuthor; +import org.jooq.test.db2.generatedclasses.tables.TBook; +import org.jooq.test.db2.generatedclasses.tables.TBookStore; +import org.jooq.test.db2.generatedclasses.tables.TBookToBookStore; +import org.jooq.test.db2.generatedclasses.tables.TBooleans; +import org.jooq.test.db2.generatedclasses.tables.TIdentity; +import org.jooq.test.db2.generatedclasses.tables.TIdentityPk; +import org.jooq.test.db2.generatedclasses.tables.TTriggers; +import org.jooq.test.db2.generatedclasses.tables.T_639NumbersTable; +import org.jooq.test.db2.generatedclasses.tables.T_658Ref; +import org.jooq.test.db2.generatedclasses.tables.T_725LobTest; +import org.jooq.test.db2.generatedclasses.tables.T_785; +import org.jooq.test.db2.generatedclasses.tables.VLibrary; +import org.jooq.test.db2.generatedclasses.tables.records.TAuthorRecord; +import org.jooq.test.db2.generatedclasses.tables.records.TBookRecord; +import org.jooq.test.db2.generatedclasses.tables.records.TBookStoreRecord; +import org.jooq.test.db2.generatedclasses.tables.records.TBookToBookStoreRecord; +import org.jooq.test.db2.generatedclasses.tables.records.TBooleansRecord; +import org.jooq.test.db2.generatedclasses.tables.records.TDatesRecord; +import org.jooq.test.db2.generatedclasses.tables.records.TIdentityPkRecord; +import org.jooq.test.db2.generatedclasses.tables.records.TIdentityRecord; +import org.jooq.test.db2.generatedclasses.tables.records.TTriggersRecord; +import org.jooq.test.db2.generatedclasses.tables.records.T_639NumbersTableRecord; +import org.jooq.test.db2.generatedclasses.tables.records.T_658RefRecord; +import org.jooq.test.db2.generatedclasses.tables.records.T_725LobTestRecord; +import org.jooq.test.db2.generatedclasses.tables.records.T_785Record; +import org.jooq.test.db2.generatedclasses.tables.records.VLibraryRecord; +import org.jooq.test.db2.generatedclasses.tables.records.XUnusedRecord; +import org.jooq.tools.unsigned.UByte; +import org.jooq.tools.unsigned.UInteger; +import org.jooq.tools.unsigned.ULong; +import org.jooq.tools.unsigned.UShort; +import org.jooq.util.db2.DB2DataType; + + +/** + * Integration test that creates tables and performs various sql operations. + * + * @author Espen Stromsnes + */ +public class jOOQDB2Test extends jOOQAbstractTest< + TAuthorRecord, + TBookRecord, + TBookStoreRecord, + TBookToBookStoreRecord, + XUnusedRecord, + VLibraryRecord, + XUnusedRecord, + TDatesRecord, + TBooleansRecord, + XUnusedRecord, + TTriggersRecord, + XUnusedRecord, + TIdentityRecord, + TIdentityPkRecord, + T_658RefRecord, + T_725LobTestRecord, + T_639NumbersTableRecord, + T_785Record> { + + @Override + protected Factory create(Settings settings) { + return new LukasFactory(getConnection(), settings); + } + + @Override + protected String getJdbcURL() { + return jdbcURL + "currentSchema=" + jdbcSchema + ";"; + } + + @Override + protected UpdatableTable TAuthor() { + return TAuthor.T_AUTHOR; + } + + @Override + protected TableField TAuthor_LAST_NAME() { + return TAuthor.LAST_NAME; + } + + @Override + protected TableField TAuthor_FIRST_NAME() { + return TAuthor.FIRST_NAME; + } + + @Override + protected TableField TAuthor_DATE_OF_BIRTH() { + return TAuthor.DATE_OF_BIRTH; + } + + @Override + protected TableField TAuthor_YEAR_OF_BIRTH() { + return TAuthor.YEAR_OF_BIRTH; + } + + @Override + protected TableField TAuthor_ID() { + return TAuthor.ID; + } + + @Override + protected TableField> TAuthor_ADDRESS() { + return null; + } + + @Override + protected UpdatableTable TBook() { + return TBook.T_BOOK; + } + + @Override + protected TableField TBook_ID() { + return TBook.ID; + } + + @Override + protected TableField TBook_AUTHOR_ID() { + return TBook.AUTHOR_ID; + } + + @Override + protected TableField TBook_TITLE() { + return TBook.TITLE; + } + + @Override + protected UpdatableTable TBookStore() { + return TBookStore.T_BOOK_STORE; + } + + @Override + protected TableField TBookStore_NAME() { + return TBookStore.NAME; + } + + @Override + protected UpdatableTable TBookToBookStore() { + return T_BOOK_TO_BOOK_STORE; + } + + @Override + protected UpdatableTable TBookSale() { + return null; + } + + @Override + protected TableField TBookToBookStore_BOOK_ID() { + return TBookToBookStore.BOOK_ID; + } + + @Override + protected TableField TBookToBookStore_BOOK_STORE_NAME() { + return TBookToBookStore.BOOK_STORE_NAME; + } + + @Override + protected TableField TBookToBookStore_STOCK() { + return TBookToBookStore.STOCK; + } + + @Override + protected Table T658() { + return T_658Ref.T_658_REF; + } + + @Override + protected Table T639() { + return T_639NumbersTable.T_639_NUMBERS_TABLE; + } + + @Override + protected TableField T639_ID() { + return T_639NumbersTable.ID; + } + + @Override + protected TableField T639_BIG_DECIMAL() { + return T_639NumbersTable.BIG_DECIMAL; + } + + @Override + protected TableField T639_BIG_INTEGER() { + return T_639NumbersTable.BIG_INTEGER; + } + + @Override + protected TableField T639_BYTE() { + return null; + } + + @Override + protected TableField T639_BYTE_DECIMAL() { + return T_639NumbersTable.BYTE_DECIMAL; + } + + @Override + protected TableField T639_SHORT() { + return T_639NumbersTable.SHORT; + } + + @Override + protected TableField T639_SHORT_DECIMAL() { + return T_639NumbersTable.SHORT_DECIMAL; + } + + @Override + protected TableField T639_INTEGER() { + return T_639NumbersTable.INTEGER; + } + + @Override + protected TableField T639_INTEGER_DECIMAL() { + return T_639NumbersTable.INTEGER_DECIMAL; + } + + @Override + protected TableField T639_LONG() { + return T_639NumbersTable.LONG; + } + + @Override + protected TableField T639_LONG_DECIMAL() { + return T_639NumbersTable.LONG_DECIMAL; + } + + @Override + protected TableField T639_DOUBLE() { + return T_639NumbersTable.DOUBLE; + } + + @Override + protected TableField T639_FLOAT() { + return T_639NumbersTable.FLOAT; + } + + @Override + protected Table T725() { + return T_725LobTest.T_725_LOB_TEST; + } + + @Override + protected TableField T725_ID() { + return T_725LobTest.ID; + } + + @Override + protected TableField T725_LOB() { + return T_725LobTest.LOB; + } + + @Override + protected Table T785() { + return T_785.T_785; + } + + @Override + protected TableField T785_ID() { + return T_785.ID; + } + + @Override + protected TableField T785_NAME() { + return T_785.NAME; + } + + @Override + protected TableField T785_VALUE() { + return T_785.VALUE; + } + + @Override + protected Table TUnsigned() { + return null; + } + + @Override + protected TableField TUnsigned_U_BYTE() { + return null; + } + + @Override + protected TableField TUnsigned_U_SHORT() { + return null; + } + + @Override + protected TableField TUnsigned_U_INT() { + return null; + } + + @Override + protected TableField TUnsigned_U_LONG() { + return null; + } + + @Override + protected Table TDates() { + return T_DATES; + } + + @Override + protected UpdatableTable TBooleans() { + return T_BOOLEANS; + } + + @Override + protected TableField TBooleans_ID() { + return TBooleans.ID; + } + + @Override + protected TableField TBooleans_BOOLEAN_10() { + return TBooleans.ONE_ZERO; + } + + @Override + protected TableField TBooleans_Boolean_TF_LC() { + return TBooleans.TRUE_FALSE_LC; + } + + @Override + protected TableField TBooleans_Boolean_TF_UC() { + return TBooleans.TRUE_FALSE_UC; + } + + @Override + protected TableField TBooleans_Boolean_YN_LC() { + return TBooleans.Y_N_LC; + } + + @Override + protected TableField TBooleans_Boolean_YN_UC() { + return TBooleans.Y_N_UC; + } + + @Override + protected TableField TBooleans_Boolean_YES_NO_LC() { + return TBooleans.YES_NO_LC; + } + + @Override + protected TableField TBooleans_Boolean_YES_NO_UC() { + return TBooleans.YES_NO_UC; + } + + @Override + protected TableField TBooleans_VC() { + return TBooleans.VC_BOOLEAN; + } + + @Override + protected TableField TBooleans_C() { + return TBooleans.C_BOOLEAN; + } + + @Override + protected TableField TBooleans_N() { + return TBooleans.N_BOOLEAN; + } + + @Override + protected Table TArrays() { + return null; + } + + @Override + protected TableField TArrays_ID() { + return null; + } + + @Override + protected TableField TArrays_STRING() { + return null; + } + + @Override + protected TableField TArrays_NUMBER() { + return null; + } + + @Override + protected TableField TArrays_DATE() { + return null; + } + + @Override + protected TableField[]> TArrays_UDT() { + return null; + } + + @Override + protected TableField> TArrays_STRING_R() { + return null; + } + + @Override + protected TableField> TArrays_NUMBER_R() { + return null; + } + + @Override + protected TableField> TArrays_DATE_R() { + return null; + } + + @Override + protected TableField> TArrays_NUMBER_LONG_R() { + return null; + } + + @Override + protected TableField> TBook_LANGUAGE_ID() { + return TBook.LANGUAGE_ID; + } + + @Override + protected TableField TBook_PUBLISHED_IN() { + return TBook.PUBLISHED_IN; + } + + @Override + protected TableField TBook_CONTENT_TEXT() { + return TBook.CONTENT_TEXT; + } + + @Override + protected TableField TBook_CONTENT_PDF() { + return TBook.CONTENT_PDF; + } + + @Override + protected TableField> TBook_STATUS() { + return null; + } + + @Override + protected Table VLibrary() { + return VLibrary.V_LIBRARY; + } + + @Override + protected TableField VLibrary_TITLE() { + return VLibrary.TITLE; + } + + @Override + protected TableField VLibrary_AUTHOR() { + return VLibrary.AUTHOR; + } + + @Override + protected Table VAuthor() { + return V_AUTHOR; + } + + @Override + protected Table VBook() { + return V_BOOK; + } + + @Override + protected UpdatableTable TDirectory() { + return null; + } + + @Override + protected TableField TDirectory_ID() { + return null; + } + + @Override + protected TableField TDirectory_PARENT_ID() { + return null; + } + + @Override + protected TableField TDirectory_IS_DIRECTORY() { + return null; + } + + @Override + protected TableField TDirectory_NAME() { + return null; + } + + @Override + protected UpdatableTable TTriggers() { + return TTriggers.T_TRIGGERS; + } + + @Override + protected TableField TTriggers_ID_GENERATED() { + return TTriggers.ID_GENERATED; + } + + @Override + protected TableField TTriggers_ID() { + return TTriggers.ID; + } + + @Override + protected TableField TTriggers_COUNTER() { + return TTriggers.COUNTER; + } + + @Override + protected Table TIdentity() { + return T_IDENTITY; + } + + @Override + protected TableField TIdentity_ID() { + return TIdentity.ID; + } + + @Override + protected TableField TIdentity_VAL() { + return TIdentity.VAL; + } + + @Override + protected UpdatableTable TIdentityPK() { + return T_IDENTITY_PK; + } + + @Override + protected TableField TIdentityPK_ID() { + return TIdentityPk.ID; + } + + @Override + protected TableField TIdentityPK_VAL() { + return TIdentityPk.VAL; + } + + @Override + protected Field FAuthorExistsField(String authorName) { + return Routines.fAuthorExists(authorName); + } + + @Override + protected Field FOneField() { + return Routines.fOne(); + } + + @Override + protected Field FNumberField(Number n) { + return Routines.fNumber((Integer) n); + } + + @SuppressWarnings("unchecked") + @Override + protected Field FNumberField(Field n) { + return Routines.fNumber((Field) n); + } + + @Override + protected Field F317Field(Number n1, Number n2, Number n3, Number n4) { + return Routines.f317((Integer) n1, (Integer) n2, (Integer) n3, (Integer) n4); + } + + @SuppressWarnings("unchecked") + @Override + protected Field F317Field(Field n1, Field n2, + Field n3, Field n4) { + return Routines.f317((Field) n1, (Field) n2, (Field) n3, (Field) n4); + } + + @Override + protected Field> FGetOneCursorField(Integer[] array) { + return null; + } + + @Override + protected Field FArrays1Field(Field array) { + return null; + } + + @Override + protected Field FArrays2Field(Field array) { + return null; + } + + @Override + protected Field FArrays3Field(Field array) { + return null; + } + + @Override + protected > Field FArrays1Field_R(Field array) { + return null; + } + + @Override + protected > Field FArrays2Field_R(Field array) { + return null; + } + + @Override + protected > Field FArrays3Field_R(Field array) { + return null; + } + + @Override + protected Class> cUAddressType() { + return null; + } + + @Override + protected Class> cUStreetType() { + return null; + } + + @Override + protected Class cRoutines() { + return Routines.class; + } + + @Override + protected boolean supportsOUTParameters() { + return true; + } + + @Override + protected boolean supportsReferences() { + return true; + } + + @Override + protected boolean supportsRecursiveQueries() { + return false; + } + + @Override + protected Class cLibrary() { + return null; + } + + @Override + protected Class cSequences() { + return Sequences.class; + } + + @Override + protected DataType[] getCastableDataTypes() { + return new DataType[] { + DB2DataType.BIGINT, + DB2DataType.BLOB, + DB2DataType.CHAR, + DB2DataType.CHARACTER, + DB2DataType.CHARFORBITDATA, + DB2DataType.CLOB, + DB2DataType.DATE, + DB2DataType.DBCLOB, + DB2DataType.DECFLOAT, + DB2DataType.DECIMAL, + DB2DataType.DOUBLE, + DB2DataType.GRAPHIC, + DB2DataType.INTEGER, + DB2DataType.LONGVARCHAR, + DB2DataType.REAL, + DB2DataType.SMALLINT, + DB2DataType.TIME, + DB2DataType.TIMESTAMP, + DB2DataType.VARCHAR, + DB2DataType.VARCHARFORBITDATA, + }; + } +} diff --git a/jOOQ-test/src/org/jooq/test/jOOQDerbyTest.java b/jOOQ-test/src/org/jooq/test/jOOQDerbyTest.java new file mode 100644 index 00000000000..030097d6e7f --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/jOOQDerbyTest.java @@ -0,0 +1,739 @@ +/** + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com + * All rights reserved. + * + * This software is licensed to you under the Apache License, Version 2.0 + * (the "License"); You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * 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 "jOOQ" 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 COPYRIGHT OWNER 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. + */ + +package org.jooq.test; + +import static org.jooq.test.derby.generatedclasses.Tables.T_BOOK_TO_BOOK_STORE; +import static org.jooq.test.derby.generatedclasses.Tables.T_BOOLEANS; +import static org.jooq.test.derby.generatedclasses.Tables.T_DATES; +import static org.jooq.test.derby.generatedclasses.Tables.T_IDENTITY; +import static org.jooq.test.derby.generatedclasses.Tables.T_IDENTITY_PK; +import static org.jooq.test.derby.generatedclasses.Tables.V_AUTHOR; +import static org.jooq.test.derby.generatedclasses.Tables.V_BOOK; + +import java.math.BigDecimal; +import java.math.BigInteger; +import java.sql.Date; + +import org.jooq.ArrayRecord; +import org.jooq.DataType; +import org.jooq.Field; +import org.jooq.Record; +import org.jooq.Result; +import org.jooq.Table; +import org.jooq.TableField; +import org.jooq.UDTRecord; +import org.jooq.UpdatableTable; +import org.jooq.conf.Settings; +import org.jooq.impl.Factory; +import org.jooq.test._.converters.Boolean_10; +import org.jooq.test._.converters.Boolean_TF_LC; +import org.jooq.test._.converters.Boolean_TF_UC; +import org.jooq.test._.converters.Boolean_YES_NO_LC; +import org.jooq.test._.converters.Boolean_YES_NO_UC; +import org.jooq.test._.converters.Boolean_YN_LC; +import org.jooq.test._.converters.Boolean_YN_UC; +import org.jooq.test.derby.generatedclasses.Sequences; +import org.jooq.test.derby.generatedclasses.TestFactory; +import org.jooq.test.derby.generatedclasses.tables.TAuthor; +import org.jooq.test.derby.generatedclasses.tables.TBook; +import org.jooq.test.derby.generatedclasses.tables.TBookStore; +import org.jooq.test.derby.generatedclasses.tables.TBookToBookStore; +import org.jooq.test.derby.generatedclasses.tables.TBooleans; +import org.jooq.test.derby.generatedclasses.tables.TIdentity; +import org.jooq.test.derby.generatedclasses.tables.TIdentityPk; +import org.jooq.test.derby.generatedclasses.tables.TTriggers; +import org.jooq.test.derby.generatedclasses.tables.T_639NumbersTable; +import org.jooq.test.derby.generatedclasses.tables.T_658Ref; +import org.jooq.test.derby.generatedclasses.tables.T_725LobTest; +import org.jooq.test.derby.generatedclasses.tables.T_785; +import org.jooq.test.derby.generatedclasses.tables.VLibrary; +import org.jooq.test.derby.generatedclasses.tables.records.TAuthorRecord; +import org.jooq.test.derby.generatedclasses.tables.records.TBookRecord; +import org.jooq.test.derby.generatedclasses.tables.records.TBookStoreRecord; +import org.jooq.test.derby.generatedclasses.tables.records.TBookToBookStoreRecord; +import org.jooq.test.derby.generatedclasses.tables.records.TBooleansRecord; +import org.jooq.test.derby.generatedclasses.tables.records.TDatesRecord; +import org.jooq.test.derby.generatedclasses.tables.records.TIdentityPkRecord; +import org.jooq.test.derby.generatedclasses.tables.records.TIdentityRecord; +import org.jooq.test.derby.generatedclasses.tables.records.TTriggersRecord; +import org.jooq.test.derby.generatedclasses.tables.records.T_639NumbersTableRecord; +import org.jooq.test.derby.generatedclasses.tables.records.T_658RefRecord; +import org.jooq.test.derby.generatedclasses.tables.records.T_725LobTestRecord; +import org.jooq.test.derby.generatedclasses.tables.records.T_785Record; +import org.jooq.test.derby.generatedclasses.tables.records.VLibraryRecord; +import org.jooq.test.derby.generatedclasses.tables.records.XUnusedRecord; +import org.jooq.tools.unsigned.UByte; +import org.jooq.tools.unsigned.UInteger; +import org.jooq.tools.unsigned.ULong; +import org.jooq.tools.unsigned.UShort; +import org.jooq.util.derby.DerbyDataType; + +/** + * @author Lukas Eder + */ +public class jOOQDerbyTest extends jOOQAbstractTest< + TAuthorRecord, + TBookRecord, + TBookStoreRecord, + TBookToBookStoreRecord, + XUnusedRecord, + VLibraryRecord, + XUnusedRecord, + TDatesRecord, + TBooleansRecord, + XUnusedRecord, + TTriggersRecord, + XUnusedRecord, + TIdentityRecord, + TIdentityPkRecord, + T_658RefRecord, + T_725LobTestRecord, + T_639NumbersTableRecord, + T_785Record> { + + @Override + protected Factory create(Settings settings) { + return new TestFactory(getConnection(), settings); + } + + @Override + protected UpdatableTable TAuthor() { + return TAuthor.T_AUTHOR; + } + + @Override + protected TableField TAuthor_LAST_NAME() { + return TAuthor.LAST_NAME; + } + + @Override + protected TableField TAuthor_FIRST_NAME() { + return TAuthor.FIRST_NAME; + } + + @Override + protected TableField TAuthor_DATE_OF_BIRTH() { + return TAuthor.DATE_OF_BIRTH; + } + + @Override + protected TableField TAuthor_YEAR_OF_BIRTH() { + return TAuthor.YEAR_OF_BIRTH; + } + + @Override + protected TableField TAuthor_ID() { + return TAuthor.ID; + } + + @Override + protected TableField> TAuthor_ADDRESS() { + return null; + } + + @Override + protected UpdatableTable TBook() { + return TBook.T_BOOK; + } + + @Override + protected TableField TBook_ID() { + return TBook.ID; + } + + @Override + protected TableField TBook_AUTHOR_ID() { + return TBook.AUTHOR_ID; + } + + @Override + protected TableField TBook_TITLE() { + return TBook.TITLE; + } + + @Override + protected UpdatableTable TBookStore() { + return TBookStore.T_BOOK_STORE; + } + + @Override + protected TableField TBookStore_NAME() { + return TBookStore.NAME; + } + + @Override + protected UpdatableTable TBookToBookStore() { + return T_BOOK_TO_BOOK_STORE; + } + + @Override + protected UpdatableTable TBookSale() { + return null; + } + + @Override + protected TableField TBookToBookStore_BOOK_ID() { + return TBookToBookStore.BOOK_ID; + } + + @Override + protected TableField TBookToBookStore_BOOK_STORE_NAME() { + return TBookToBookStore.BOOK_STORE_NAME; + } + + @Override + protected TableField TBookToBookStore_STOCK() { + return TBookToBookStore.STOCK; + } + + @Override + protected Table T658() { + return T_658Ref.T_658_REF; + } + + @Override + protected Table T639() { + return T_639NumbersTable.T_639_NUMBERS_TABLE; + } + + @Override + protected TableField T639_ID() { + return T_639NumbersTable.ID; + } + + @Override + protected TableField T639_BIG_DECIMAL() { + return T_639NumbersTable.BIG_DECIMAL; + } + + @Override + protected TableField T639_BIG_INTEGER() { + return T_639NumbersTable.BIG_INTEGER; + } + + @Override + protected TableField T639_BYTE() { + return null; + } + + @Override + protected TableField T639_BYTE_DECIMAL() { + return T_639NumbersTable.BYTE_DECIMAL; + } + + @Override + protected TableField T639_SHORT() { + return T_639NumbersTable.SHORT; + } + + @Override + protected TableField T639_SHORT_DECIMAL() { + return T_639NumbersTable.SHORT_DECIMAL; + } + + @Override + protected TableField T639_INTEGER() { + return T_639NumbersTable.INTEGER; + } + + @Override + protected TableField T639_INTEGER_DECIMAL() { + return T_639NumbersTable.INTEGER_DECIMAL; + } + + @Override + protected TableField T639_LONG() { + return T_639NumbersTable.LONG; + } + + @Override + protected TableField T639_LONG_DECIMAL() { + return T_639NumbersTable.LONG_DECIMAL; + } + + @Override + protected TableField T639_DOUBLE() { + return T_639NumbersTable.DOUBLE; + } + + @Override + protected TableField T639_FLOAT() { + return T_639NumbersTable.FLOAT; + } + + @Override + protected Table T725() { + return T_725LobTest.T_725_LOB_TEST; + } + + @Override + protected TableField T725_ID() { + return T_725LobTest.ID; + } + + @Override + protected TableField T725_LOB() { + return T_725LobTest.LOB; + } + + @Override + protected Table T785() { + return T_785.T_785; + } + + @Override + protected TableField T785_ID() { + return T_785.ID; + } + + @Override + protected TableField T785_NAME() { + return T_785.NAME; + } + + @Override + protected TableField T785_VALUE() { + return T_785.VALUE; + } + + @Override + protected Table TUnsigned() { + return null; + } + + @Override + protected TableField TUnsigned_U_BYTE() { + return null; + } + + @Override + protected TableField TUnsigned_U_SHORT() { + return null; + } + + @Override + protected TableField TUnsigned_U_INT() { + return null; + } + + @Override + protected TableField TUnsigned_U_LONG() { + return null; + } + + @Override + protected Table TDates() { + return T_DATES; + } + + @Override + protected UpdatableTable TBooleans() { + return T_BOOLEANS; + } + + @Override + protected TableField TBooleans_ID() { + return TBooleans.ID; + } + + @Override + protected TableField TBooleans_BOOLEAN_10() { + return TBooleans.ONE_ZERO; + } + + @Override + protected TableField TBooleans_Boolean_TF_LC() { + return TBooleans.TRUE_FALSE_LC; + } + + @Override + protected TableField TBooleans_Boolean_TF_UC() { + return TBooleans.TRUE_FALSE_UC; + } + + @Override + protected TableField TBooleans_Boolean_YN_LC() { + return TBooleans.Y_N_LC; + } + + @Override + protected TableField TBooleans_Boolean_YN_UC() { + return TBooleans.Y_N_UC; + } + + @Override + protected TableField TBooleans_Boolean_YES_NO_LC() { + return TBooleans.YES_NO_LC; + } + + @Override + protected TableField TBooleans_Boolean_YES_NO_UC() { + return TBooleans.YES_NO_UC; + } + + @Override + protected TableField TBooleans_VC() { + return TBooleans.VC_BOOLEAN; + } + + @Override + protected TableField TBooleans_C() { + return TBooleans.C_BOOLEAN; + } + + @Override + protected TableField TBooleans_N() { + return TBooleans.N_BOOLEAN; + } + + @Override + protected Table TArrays() { + return null; + } + + @Override + protected TableField TArrays_ID() { + return null; + } + + @Override + protected TableField TArrays_STRING() { + return null; + } + + @Override + protected TableField TArrays_NUMBER() { + return null; + } + + @Override + protected TableField TArrays_DATE() { + return null; + } + + @Override + protected TableField[]> TArrays_UDT() { + return null; + } + + @Override + protected TableField> TArrays_STRING_R() { + return null; + } + + @Override + protected TableField> TArrays_NUMBER_R() { + return null; + } + + @Override + protected TableField> TArrays_DATE_R() { + return null; + } + + @Override + protected TableField> TArrays_NUMBER_LONG_R() { + return null; + } + + @Override + protected TableField> TBook_LANGUAGE_ID() { + return TBook.LANGUAGE_ID; + } + + @Override + protected TableField TBook_PUBLISHED_IN() { + return TBook.PUBLISHED_IN; + } + + @Override + protected TableField TBook_CONTENT_TEXT() { + return TBook.CONTENT_TEXT; + } + + @Override + protected TableField TBook_CONTENT_PDF() { + return TBook.CONTENT_PDF; + } + + @Override + protected TableField> TBook_STATUS() { + return null; + } + + @Override + protected Table VLibrary() { + return VLibrary.V_LIBRARY; + } + + @Override + protected TableField VLibrary_TITLE() { + return VLibrary.TITLE; + } + + @Override + protected TableField VLibrary_AUTHOR() { + return VLibrary.AUTHOR; + } + + @Override + protected Table VAuthor() { + return V_AUTHOR; + } + + @Override + protected Table VBook() { + return V_BOOK; + } + + @Override + protected UpdatableTable TDirectory() { + return null; + } + + @Override + protected TableField TDirectory_ID() { + return null; + } + + @Override + protected TableField TDirectory_PARENT_ID() { + return null; + } + + @Override + protected TableField TDirectory_IS_DIRECTORY() { + return null; + } + + @Override + protected TableField TDirectory_NAME() { + return null; + } + + @Override + protected UpdatableTable TTriggers() { + return TTriggers.T_TRIGGERS; + } + + @Override + protected TableField TTriggers_ID_GENERATED() { + return TTriggers.ID_GENERATED; + } + + @Override + protected TableField TTriggers_ID() { + return TTriggers.ID; + } + + @Override + protected TableField TTriggers_COUNTER() { + return TTriggers.COUNTER; + } + + @Override + protected Table TIdentity() { + return T_IDENTITY; + } + + @Override + protected TableField TIdentity_ID() { + return TIdentity.ID; + } + + @Override + protected TableField TIdentity_VAL() { + return TIdentity.VAL; + } + + @Override + protected UpdatableTable TIdentityPK() { + return T_IDENTITY_PK; + } + + @Override + protected TableField TIdentityPK_ID() { + return TIdentityPk.ID; + } + + @Override + protected TableField TIdentityPK_VAL() { + return TIdentityPk.VAL; + } + + @Override + protected Field FAuthorExistsField(String authorName) { + return null; + } + + @Override + protected Field FOneField() { + return null; + } + + @Override + protected Field FNumberField(Number n) { + return null; + } + + @Override + protected Field FNumberField(Field n) { + return null; + } + + @Override + protected Field F317Field(Number n1, Number n2, Number n3, Number n4) { + return null; + } + + @Override + protected Field F317Field(Field n1, Field n2, + Field n3, Field n4) { + return null; + } + + @Override + protected Field> FGetOneCursorField(Integer[] array) { + return null; + } + + @Override + protected Field FArrays1Field(Field array) { + return null; + } + + @Override + protected Field FArrays2Field(Field array) { + return null; + } + + @Override + protected Field FArrays3Field(Field array) { + return null; + } + + @Override + protected > Field FArrays1Field_R(Field array) { + return null; + } + + @Override + protected > Field FArrays2Field_R(Field array) { + return null; + } + + @Override + protected > Field FArrays3Field_R(Field array) { + return null; + } + + @Override + protected Class> cUAddressType() { + return null; + } + + @Override + protected Class> cUStreetType() { + return null; + } + + @Override + protected Class cRoutines() { + return null; + } + + @Override + protected boolean supportsOUTParameters() { + return false; + } + + @Override + protected boolean supportsReferences() { + return true; + } + + @Override + protected boolean supportsRecursiveQueries() { + return false; + } + + @Override + protected Class cLibrary() { + return null; + } + + @Override + protected Class cSequences() { + return Sequences.class; + } + + @Override + protected DataType[] getCastableDataTypes() { + return new DataType[] { + DerbyDataType.BIGINT, + DerbyDataType.BINARYLARGEOBJECT, + DerbyDataType.BLOB, + DerbyDataType.BOOLEAN, + DerbyDataType.CHAR, + DerbyDataType.CHARACTER, + DerbyDataType.CHARACTERFORBITDATA, + DerbyDataType.CHARACTERLARGEOBJECT, + DerbyDataType.CHARACTERVARYING, + DerbyDataType.CHARACTERVARYINGFORBITDATA, + DerbyDataType.CHARFORBITDATA, + DerbyDataType.CHARVARYING, + DerbyDataType.CHARVARYINGFORBITDATA, + DerbyDataType.CLOB, + DerbyDataType.DATE, + DerbyDataType.DEC, + DerbyDataType.DECIMAL, + DerbyDataType.DOUBLE, + DerbyDataType.DOUBLEPRECISION, + DerbyDataType.FLOAT, + DerbyDataType.INT, + DerbyDataType.INTEGER, + DerbyDataType.LONGVARCHAR, + DerbyDataType.LONGVARCHARFORBITDATA, + DerbyDataType.REAL, + DerbyDataType.SMALLINT, + DerbyDataType.TIME, + DerbyDataType.TIMESTAMP, + DerbyDataType.VARCHAR, + DerbyDataType.VARCHARFORBITDATA, + }; + } +} diff --git a/jOOQ-test/src/org/jooq/test/jOOQH2Test.java b/jOOQ-test/src/org/jooq/test/jOOQH2Test.java new file mode 100644 index 00000000000..36b400b2280 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/jOOQH2Test.java @@ -0,0 +1,780 @@ +/** + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com + * All rights reserved. + * + * This software is licensed to you under the Apache License, Version 2.0 + * (the "License"); You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * 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 "jOOQ" 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 COPYRIGHT OWNER 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. + */ + +package org.jooq.test; + +import static org.jooq.test.h2.generatedclasses.Tables.T_BOOK_TO_BOOK_STORE; +import static org.jooq.test.h2.generatedclasses.Tables.T_BOOLEANS; +import static org.jooq.test.h2.generatedclasses.Tables.T_DATES; +import static org.jooq.test.h2.generatedclasses.Tables.T_IDENTITY; +import static org.jooq.test.h2.generatedclasses.Tables.T_IDENTITY_PK; +import static org.jooq.test.h2.generatedclasses.Tables.V_AUTHOR; +import static org.jooq.test.h2.generatedclasses.Tables.V_BOOK; + +import java.math.BigDecimal; +import java.math.BigInteger; +import java.sql.Date; + +import org.jooq.ArrayRecord; +import org.jooq.DataType; +import org.jooq.Field; +import org.jooq.Record; +import org.jooq.Result; +import org.jooq.Table; +import org.jooq.TableField; +import org.jooq.UDTRecord; +import org.jooq.UpdatableTable; +import org.jooq.conf.Settings; +import org.jooq.impl.Factory; +import org.jooq.test._.converters.Boolean_10; +import org.jooq.test._.converters.Boolean_TF_LC; +import org.jooq.test._.converters.Boolean_TF_UC; +import org.jooq.test._.converters.Boolean_YES_NO_LC; +import org.jooq.test._.converters.Boolean_YES_NO_UC; +import org.jooq.test._.converters.Boolean_YN_LC; +import org.jooq.test._.converters.Boolean_YN_UC; +import org.jooq.test.h2.generatedclasses.PublicFactory; +import org.jooq.test.h2.generatedclasses.Routines; +import org.jooq.test.h2.generatedclasses.Sequences; +import org.jooq.test.h2.generatedclasses.tables.TArrays; +import org.jooq.test.h2.generatedclasses.tables.TAuthor; +import org.jooq.test.h2.generatedclasses.tables.TBook; +import org.jooq.test.h2.generatedclasses.tables.TBookStore; +import org.jooq.test.h2.generatedclasses.tables.TBookToBookStore; +import org.jooq.test.h2.generatedclasses.tables.TBooleans; +import org.jooq.test.h2.generatedclasses.tables.TIdentity; +import org.jooq.test.h2.generatedclasses.tables.TIdentityPk; +import org.jooq.test.h2.generatedclasses.tables.TTriggers; +import org.jooq.test.h2.generatedclasses.tables.T_639NumbersTable; +import org.jooq.test.h2.generatedclasses.tables.T_658Ref; +import org.jooq.test.h2.generatedclasses.tables.T_725LobTest; +import org.jooq.test.h2.generatedclasses.tables.T_785; +import org.jooq.test.h2.generatedclasses.tables.VLibrary; +import org.jooq.test.h2.generatedclasses.tables.records.TArraysRecord; +import org.jooq.test.h2.generatedclasses.tables.records.TAuthorRecord; +import org.jooq.test.h2.generatedclasses.tables.records.TBookRecord; +import org.jooq.test.h2.generatedclasses.tables.records.TBookStoreRecord; +import org.jooq.test.h2.generatedclasses.tables.records.TBookToBookStoreRecord; +import org.jooq.test.h2.generatedclasses.tables.records.TBooleansRecord; +import org.jooq.test.h2.generatedclasses.tables.records.TDatesRecord; +import org.jooq.test.h2.generatedclasses.tables.records.TIdentityPkRecord; +import org.jooq.test.h2.generatedclasses.tables.records.TIdentityRecord; +import org.jooq.test.h2.generatedclasses.tables.records.TTriggersRecord; +import org.jooq.test.h2.generatedclasses.tables.records.T_639NumbersTableRecord; +import org.jooq.test.h2.generatedclasses.tables.records.T_658RefRecord; +import org.jooq.test.h2.generatedclasses.tables.records.T_725LobTestRecord; +import org.jooq.test.h2.generatedclasses.tables.records.T_785Record; +import org.jooq.test.h2.generatedclasses.tables.records.VLibraryRecord; +import org.jooq.test.h2.generatedclasses.tables.records.XUnusedRecord; +import org.jooq.tools.unsigned.UByte; +import org.jooq.tools.unsigned.UInteger; +import org.jooq.tools.unsigned.ULong; +import org.jooq.tools.unsigned.UShort; +import org.jooq.util.h2.H2DataType; + +/** + * Integration test for the H2 database + * + * @author Espen Stromsnes + */ +public class jOOQH2Test extends jOOQAbstractTest< + TAuthorRecord, + TBookRecord, + TBookStoreRecord, + TBookToBookStoreRecord, + XUnusedRecord, + VLibraryRecord, + TArraysRecord, + TDatesRecord, + TBooleansRecord, + XUnusedRecord, + TTriggersRecord, + XUnusedRecord, + TIdentityRecord, + TIdentityPkRecord, + T_658RefRecord, + T_725LobTestRecord, + T_639NumbersTableRecord, + T_785Record> { + + @Override + protected Factory create(Settings settings) { + return new PublicFactory(getConnection(), settings); + } + + @Override + protected UpdatableTable TAuthor() { + return TAuthor.T_AUTHOR; + } + + @Override + protected TableField TAuthor_LAST_NAME() { + return TAuthor.LAST_NAME; + } + + @Override + protected TableField TAuthor_FIRST_NAME() { + return TAuthor.FIRST_NAME; + } + + @Override + protected TableField TAuthor_DATE_OF_BIRTH() { + return TAuthor.DATE_OF_BIRTH; + } + + @Override + protected TableField TAuthor_YEAR_OF_BIRTH() { + return TAuthor.YEAR_OF_BIRTH; + } + + @Override + protected TableField TAuthor_ID() { + return TAuthor.ID; + } + + @Override + protected TableField> TAuthor_ADDRESS() { + return null; + } + + @Override + protected UpdatableTable TBook() { + return TBook.T_BOOK; + } + + @Override + protected TableField TBook_ID() { + return TBook.ID; + } + + @Override + protected TableField TBook_AUTHOR_ID() { + return TBook.AUTHOR_ID; + } + + @Override + protected TableField TBook_TITLE() { + return TBook.TITLE; + } + + @Override + protected UpdatableTable TBookStore() { + return TBookStore.T_BOOK_STORE; + } + + @Override + protected TableField TBookStore_NAME() { + return TBookStore.NAME; + } + + @Override + protected UpdatableTable TBookToBookStore() { + return T_BOOK_TO_BOOK_STORE; + } + + @Override + protected UpdatableTable TBookSale() { + return null; + } + + @Override + protected TableField TBookToBookStore_BOOK_ID() { + return TBookToBookStore.BOOK_ID; + } + + @Override + protected TableField TBookToBookStore_BOOK_STORE_NAME() { + return TBookToBookStore.BOOK_STORE_NAME; + } + + @Override + protected TableField TBookToBookStore_STOCK() { + return TBookToBookStore.STOCK; + } + + @Override + protected Table T658() { + return T_658Ref.T_658_REF; + } + + @Override + protected Table T639() { + return T_639NumbersTable.T_639_NUMBERS_TABLE; + } + + @Override + protected TableField T639_ID() { + return T_639NumbersTable.ID; + } + + @Override + protected TableField T639_BIG_DECIMAL() { + return T_639NumbersTable.BIG_DECIMAL; + } + + @Override + protected TableField T639_BIG_INTEGER() { + return T_639NumbersTable.BIG_INTEGER; + } + + @Override + protected TableField T639_BYTE() { + return T_639NumbersTable.BYTE; + } + + @Override + protected TableField T639_BYTE_DECIMAL() { + return T_639NumbersTable.BYTE_DECIMAL; + } + + @Override + protected TableField T639_SHORT() { + return T_639NumbersTable.SHORT; + } + + @Override + protected TableField T639_SHORT_DECIMAL() { + return T_639NumbersTable.SHORT_DECIMAL; + } + + @Override + protected TableField T639_INTEGER() { + return T_639NumbersTable.INTEGER; + } + + @Override + protected TableField T639_INTEGER_DECIMAL() { + return T_639NumbersTable.INTEGER_DECIMAL; + } + + @Override + protected TableField T639_LONG() { + return T_639NumbersTable.LONG; + } + + @Override + protected TableField T639_LONG_DECIMAL() { + return T_639NumbersTable.LONG_DECIMAL; + } + + @Override + protected TableField T639_DOUBLE() { + return T_639NumbersTable.DOUBLE; + } + + @Override + protected TableField T639_FLOAT() { + return T_639NumbersTable.FLOAT; + } + + @Override + protected Table T725() { + return T_725LobTest.T_725_LOB_TEST; + } + + @Override + protected TableField T725_ID() { + return T_725LobTest.ID; + } + + @Override + protected TableField T725_LOB() { + return T_725LobTest.LOB; + } + + @Override + protected Table T785() { + return T_785.T_785; + } + + @Override + protected TableField T785_ID() { + return T_785.ID; + } + + @Override + protected TableField T785_NAME() { + return T_785.NAME; + } + + @Override + protected TableField T785_VALUE() { + return T_785.VALUE; + } + + @Override + protected Table TUnsigned() { + return null; + } + + @Override + protected TableField TUnsigned_U_BYTE() { + return null; + } + + @Override + protected TableField TUnsigned_U_SHORT() { + return null; + } + + @Override + protected TableField TUnsigned_U_INT() { + return null; + } + + @Override + protected TableField TUnsigned_U_LONG() { + return null; + } + + @Override + protected Table TDates() { + return T_DATES; + } + + @Override + protected UpdatableTable TBooleans() { + return T_BOOLEANS; + } + + @Override + protected TableField TBooleans_ID() { + return TBooleans.ID; + } + + @Override + protected TableField TBooleans_BOOLEAN_10() { + return TBooleans.ONE_ZERO; + } + + @Override + protected TableField TBooleans_Boolean_TF_LC() { + return TBooleans.TRUE_FALSE_LC; + } + + @Override + protected TableField TBooleans_Boolean_TF_UC() { + return TBooleans.TRUE_FALSE_UC; + } + + @Override + protected TableField TBooleans_Boolean_YN_LC() { + return TBooleans.Y_N_LC; + } + + @Override + protected TableField TBooleans_Boolean_YN_UC() { + return TBooleans.Y_N_UC; + } + + @Override + protected TableField TBooleans_Boolean_YES_NO_LC() { + return TBooleans.YES_NO_LC; + } + + @Override + protected TableField TBooleans_Boolean_YES_NO_UC() { + return TBooleans.YES_NO_UC; + } + + @Override + protected TableField TBooleans_VC() { + return TBooleans.VC_BOOLEAN; + } + + @Override + protected TableField TBooleans_C() { + return TBooleans.C_BOOLEAN; + } + + @Override + protected TableField TBooleans_N() { + return TBooleans.N_BOOLEAN; + } + + @Override + protected Table TArrays() { + return TArrays.T_ARRAYS; + } + + @Override + protected TableField TArrays_ID() { + return TArrays.ID; + } + + @SuppressWarnings({ "rawtypes", "unchecked" }) + @Override + protected TableField TArrays_STRING() { + return (TableField) TArrays.STRING_ARRAY; + } + + @SuppressWarnings({ "rawtypes", "unchecked" }) + @Override + protected TableField TArrays_NUMBER() { + return (TableField) TArrays.NUMBER_ARRAY; + } + + @SuppressWarnings({ "rawtypes", "unchecked" }) + @Override + protected TableField TArrays_DATE() { + return (TableField) TArrays.DATE_ARRAY; + } + + @Override + protected TableField[]> TArrays_UDT() { + return null; + } + + @Override + protected TableField> TArrays_STRING_R() { + return null; + } + + @Override + protected TableField> TArrays_NUMBER_R() { + return null; + } + + @Override + protected TableField> TArrays_DATE_R() { + return null; + } + + @Override + protected TableField> TArrays_NUMBER_LONG_R() { + return null; + } + + @Override + protected TableField> TBook_LANGUAGE_ID() { + return TBook.LANGUAGE_ID; + } + + @Override + protected TableField TBook_PUBLISHED_IN() { + return TBook.PUBLISHED_IN; + } + + @Override + protected TableField TBook_CONTENT_TEXT() { + return TBook.CONTENT_TEXT; + } + + @Override + protected TableField TBook_CONTENT_PDF() { + return TBook.CONTENT_PDF; + } + + @Override + protected TableField> TBook_STATUS() { + return null; + } + + @Override + protected Table VLibrary() { + return VLibrary.V_LIBRARY; + } + + @Override + protected TableField VLibrary_TITLE() { + return VLibrary.TITLE; + } + + @Override + protected TableField VLibrary_AUTHOR() { + return VLibrary.AUTHOR; + } + + @Override + protected Table VAuthor() { + return V_AUTHOR; + } + + @Override + protected Table VBook() { + return V_BOOK; + } + + @Override + protected UpdatableTable TDirectory() { + return null; + } + + @Override + protected TableField TDirectory_ID() { + return null; + } + + @Override + protected TableField TDirectory_PARENT_ID() { + return null; + } + + @Override + protected TableField TDirectory_IS_DIRECTORY() { + return null; + } + + @Override + protected TableField TDirectory_NAME() { + return null; + } + + @Override + protected UpdatableTable TTriggers() { + return TTriggers.T_TRIGGERS; + } + + @Override + protected TableField TTriggers_ID_GENERATED() { + return TTriggers.ID_GENERATED; + } + + @Override + protected TableField TTriggers_ID() { + return TTriggers.ID; + } + + @Override + protected TableField TTriggers_COUNTER() { + return TTriggers.COUNTER; + } + + @Override + protected Table TIdentity() { + return T_IDENTITY; + } + + @Override + protected TableField TIdentity_ID() { + return TIdentity.ID; + } + + @Override + protected TableField TIdentity_VAL() { + return TIdentity.VAL; + } + + @Override + protected UpdatableTable TIdentityPK() { + return T_IDENTITY_PK; + } + + @Override + protected TableField TIdentityPK_ID() { + return TIdentityPk.ID; + } + + @Override + protected TableField TIdentityPK_VAL() { + return TIdentityPk.VAL; + } + + @Override + protected Field FAuthorExistsField(String authorName) { + return Routines.fAuthorExists(authorName); + } + + @Override + protected Field FOneField() { + return Routines.fOne(); + } + + @Override + protected Field FNumberField(Number n) { + return Routines.fNumber((Integer) n); + } + + @SuppressWarnings("unchecked") + @Override + protected Field FNumberField(Field n) { + return Routines.fNumber((Field) n); + } + + @Override + protected Field F317Field(Number n1, Number n2, Number n3, Number n4) { + return Routines.f317((Integer) n1, (Integer) n2, (Integer) n3, (Integer) n4); + } + + @SuppressWarnings("unchecked") + @Override + protected Field F317Field(Field n1, Field n2, + Field n3, Field n4) { + return Routines.f317((Field) n1, (Field) n2, (Field) n3, (Field) n4); + } + + @Override + protected Field> FGetOneCursorField(Integer[] array) { + return Routines.fGetOneCursor(array); + } + + @SuppressWarnings({ "unchecked", "rawtypes" }) + @Override + protected Field FArrays1Field(Field array) { + return (Field) Routines.fArrays1((Field) array); + } + + @SuppressWarnings({ "unchecked", "rawtypes" }) + @Override + protected Field FArrays2Field(Field array) { + return (Field) Routines.fArrays2((Field) array); + } + + @SuppressWarnings({ "unchecked", "rawtypes" }) + @Override + protected Field FArrays3Field(Field array) { + return (Field) Routines.fArrays3((Field)array); + } + + @Override + protected > Field FArrays1Field_R(Field array) { + return null; + } + + @Override + protected > Field FArrays2Field_R(Field array) { + return null; + } + + @Override + protected > Field FArrays3Field_R(Field array) { + return null; + } + + @Override + protected Class> cUAddressType() { + return null; + } + + @Override + protected Class> cUStreetType() { + return null; + } + + @Override + protected Class cRoutines() { + return Routines.class; + } + + @Override + protected boolean supportsOUTParameters() { + return false; + } + + @Override + protected boolean supportsReferences() { + return true; + } + + @Override + protected boolean supportsRecursiveQueries() { + return false; + } + + @Override + protected Class cLibrary() { + return null; + } + + @Override + protected Class cSequences() { + return Sequences.class; + } + + @Override + protected DataType[] getCastableDataTypes() { + return new DataType[] { + H2DataType.BIGINT, + H2DataType.BINARY, + H2DataType.BIT, + H2DataType.BLOB, + H2DataType.BOOL, + H2DataType.BOOLEAN, + H2DataType.BYTEA, + H2DataType.CHAR, + H2DataType.CHARACTER, + H2DataType.CLOB, + H2DataType.DATE, + H2DataType.DATETIME, + H2DataType.DEC, + H2DataType.DECIMAL, + H2DataType.DOUBLE, + H2DataType.FLOAT, + H2DataType.FLOAT4, + H2DataType.FLOAT8, + H2DataType.IDENTITY, + H2DataType.IMAGE, + H2DataType.INT, + H2DataType.INT2, + H2DataType.INT4, + H2DataType.INT8, + H2DataType.INTEGER, + H2DataType.LONGBLOB, + H2DataType.LONGTEXT, + H2DataType.LONGVARBINARY, + H2DataType.LONGVARCHAR, + H2DataType.MEDIUMBLOB, + H2DataType.MEDIUMINT, + H2DataType.MEDIUMTEXT, + H2DataType.NCHAR, + H2DataType.NCLOB, + H2DataType.NTEXT, + H2DataType.NUMBER, + H2DataType.NUMERIC, + H2DataType.NVARCHAR, + H2DataType.NVARCHAR2, + H2DataType.OID, + H2DataType.OTHER, + H2DataType.RAW, + H2DataType.REAL, + H2DataType.SIGNED, + H2DataType.SMALLDATETIME, + H2DataType.SMALLINT, + H2DataType.TEXT, + H2DataType.TIME, + H2DataType.TIMESTAMP, + H2DataType.TINYBLOB, + H2DataType.TINYINT, + H2DataType.TINYTEXT, + H2DataType.UUID, + H2DataType.VARBINARY, + H2DataType.VARCHAR, + H2DataType.VARCHAR2, + H2DataType.VARCHAR_CASESENSITIVE, + H2DataType.VARCHAR_IGNORECASE, + }; + } +} diff --git a/jOOQ-test/src/org/jooq/test/jOOQHSQLDBTest.java b/jOOQ-test/src/org/jooq/test/jOOQHSQLDBTest.java new file mode 100644 index 00000000000..684d0c377e9 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/jOOQHSQLDBTest.java @@ -0,0 +1,741 @@ +/** + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com + * All rights reserved. + * + * This software is licensed to you under the Apache License, Version 2.0 + * (the "License"); You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * 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 "jOOQ" 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 COPYRIGHT OWNER 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. + */ + +package org.jooq.test; + +import static org.jooq.test.hsqldb.generatedclasses.Tables.T_639_NUMBERS_TABLE; +import static org.jooq.test.hsqldb.generatedclasses.Tables.T_658_REF; +import static org.jooq.test.hsqldb.generatedclasses.Tables.T_725_LOB_TEST; +import static org.jooq.test.hsqldb.generatedclasses.Tables.T_785; +import static org.jooq.test.hsqldb.generatedclasses.Tables.T_ARRAYS; +import static org.jooq.test.hsqldb.generatedclasses.Tables.T_AUTHOR; +import static org.jooq.test.hsqldb.generatedclasses.Tables.T_BOOK; +import static org.jooq.test.hsqldb.generatedclasses.Tables.T_BOOK_STORE; +import static org.jooq.test.hsqldb.generatedclasses.Tables.T_BOOK_TO_BOOK_STORE; +import static org.jooq.test.hsqldb.generatedclasses.Tables.T_BOOLEANS; +import static org.jooq.test.hsqldb.generatedclasses.Tables.T_DATES; +import static org.jooq.test.hsqldb.generatedclasses.Tables.T_IDENTITY; +import static org.jooq.test.hsqldb.generatedclasses.Tables.T_IDENTITY_PK; +import static org.jooq.test.hsqldb.generatedclasses.Tables.T_TRIGGERS; +import static org.jooq.test.hsqldb.generatedclasses.Tables.V_AUTHOR; +import static org.jooq.test.hsqldb.generatedclasses.Tables.V_BOOK; +import static org.jooq.test.hsqldb.generatedclasses.Tables.V_LIBRARY; + +import java.math.BigDecimal; +import java.math.BigInteger; +import java.sql.Date; + +import org.jooq.ArrayRecord; +import org.jooq.DataType; +import org.jooq.Field; +import org.jooq.Record; +import org.jooq.Result; +import org.jooq.Table; +import org.jooq.TableField; +import org.jooq.UDTRecord; +import org.jooq.UpdatableTable; +import org.jooq.conf.Settings; +import org.jooq.impl.Factory; +import org.jooq.test._.converters.Boolean_10; +import org.jooq.test._.converters.Boolean_TF_LC; +import org.jooq.test._.converters.Boolean_TF_UC; +import org.jooq.test._.converters.Boolean_YES_NO_LC; +import org.jooq.test._.converters.Boolean_YES_NO_UC; +import org.jooq.test._.converters.Boolean_YN_LC; +import org.jooq.test._.converters.Boolean_YN_UC; +import org.jooq.test.hsqldb.generatedclasses.PublicFactory; +import org.jooq.test.hsqldb.generatedclasses.Routines; +import org.jooq.test.hsqldb.generatedclasses.Sequences; +import org.jooq.test.hsqldb.generatedclasses.tables.records.TArraysRecord; +import org.jooq.test.hsqldb.generatedclasses.tables.records.TAuthorRecord; +import org.jooq.test.hsqldb.generatedclasses.tables.records.TBookRecord; +import org.jooq.test.hsqldb.generatedclasses.tables.records.TBookStoreRecord; +import org.jooq.test.hsqldb.generatedclasses.tables.records.TBookToBookStoreRecord; +import org.jooq.test.hsqldb.generatedclasses.tables.records.TBooleansRecord; +import org.jooq.test.hsqldb.generatedclasses.tables.records.TDatesRecord; +import org.jooq.test.hsqldb.generatedclasses.tables.records.TIdentityPkRecord; +import org.jooq.test.hsqldb.generatedclasses.tables.records.TIdentityRecord; +import org.jooq.test.hsqldb.generatedclasses.tables.records.TTriggersRecord; +import org.jooq.test.hsqldb.generatedclasses.tables.records.T_639NumbersTableRecord; +import org.jooq.test.hsqldb.generatedclasses.tables.records.T_658RefRecord; +import org.jooq.test.hsqldb.generatedclasses.tables.records.T_725LobTestRecord; +import org.jooq.test.hsqldb.generatedclasses.tables.records.T_785Record; +import org.jooq.test.hsqldb.generatedclasses.tables.records.VLibraryRecord; +import org.jooq.test.hsqldb.generatedclasses.tables.records.XUnusedRecord; +import org.jooq.tools.unsigned.UByte; +import org.jooq.tools.unsigned.UInteger; +import org.jooq.tools.unsigned.ULong; +import org.jooq.tools.unsigned.UShort; +import org.jooq.util.hsqldb.HSQLDBDataType; + +/** + * @author Lukas Eder + */ +public class jOOQHSQLDBTest extends jOOQAbstractTest< + TAuthorRecord, + TBookRecord, + TBookStoreRecord, + TBookToBookStoreRecord, + XUnusedRecord, + VLibraryRecord, + TArraysRecord, + TDatesRecord, + TBooleansRecord, + XUnusedRecord, + TTriggersRecord, + XUnusedRecord, + TIdentityRecord, + TIdentityPkRecord, + T_658RefRecord, + T_725LobTestRecord, + T_639NumbersTableRecord, + T_785Record> { + + @Override + protected Factory create(Settings settings) { + return new PublicFactory(getConnection(), settings); + } + + @Override + protected UpdatableTable TAuthor() { + return T_AUTHOR; + } + + @Override + protected TableField TAuthor_LAST_NAME() { + return T_AUTHOR.LAST_NAME; + } + + @Override + protected TableField TAuthor_FIRST_NAME() { + return T_AUTHOR.FIRST_NAME; + } + + @Override + protected TableField TAuthor_DATE_OF_BIRTH() { + return T_AUTHOR.DATE_OF_BIRTH; + } + + @Override + protected TableField TAuthor_YEAR_OF_BIRTH() { + return T_AUTHOR.YEAR_OF_BIRTH; + } + + @Override + protected TableField TAuthor_ID() { + return T_AUTHOR.ID; + } + + @Override + protected TableField> TAuthor_ADDRESS() { + return null; + } + + @Override + protected UpdatableTable TBook() { + return T_BOOK; + } + + @Override + protected TableField TBook_ID() { + return T_BOOK.ID; + } + + @Override + protected TableField TBook_AUTHOR_ID() { + return T_BOOK.AUTHOR_ID; + } + + @Override + protected TableField TBook_TITLE() { + return T_BOOK.TITLE; + } + + @Override + protected UpdatableTable TBookStore() { + return T_BOOK_STORE; + } + + @Override + protected TableField TBookStore_NAME() { + return T_BOOK_STORE.NAME; + } + + @Override + protected UpdatableTable TBookToBookStore() { + return T_BOOK_TO_BOOK_STORE; + } + + @Override + protected UpdatableTable TBookSale() { + return null; + } + + @Override + protected TableField TBookToBookStore_BOOK_ID() { + return T_BOOK_TO_BOOK_STORE.BOOK_ID; + } + + @Override + protected TableField TBookToBookStore_BOOK_STORE_NAME() { + return T_BOOK_TO_BOOK_STORE.BOOK_STORE_NAME; + } + + @Override + protected TableField TBookToBookStore_STOCK() { + return T_BOOK_TO_BOOK_STORE.STOCK; + } + + @Override + protected Table T658() { + return T_658_REF; + } + + @Override + protected Table T639() { + return T_639_NUMBERS_TABLE; + } + + @Override + protected TableField T639_ID() { + return T_639_NUMBERS_TABLE.ID; + } + + @Override + protected TableField T639_BIG_DECIMAL() { + return T_639_NUMBERS_TABLE.BIG_DECIMAL; + } + + @Override + protected TableField T639_BIG_INTEGER() { + return T_639_NUMBERS_TABLE.BIG_INTEGER; + } + + @Override + protected TableField T639_BYTE() { + return T_639_NUMBERS_TABLE.BYTE; + } + + @Override + protected TableField T639_BYTE_DECIMAL() { + return T_639_NUMBERS_TABLE.BYTE_DECIMAL; + } + + @Override + protected TableField T639_SHORT() { + return T_639_NUMBERS_TABLE.SHORT; + } + + @Override + protected TableField T639_SHORT_DECIMAL() { + return T_639_NUMBERS_TABLE.SHORT_DECIMAL; + } + + @Override + protected TableField T639_INTEGER() { + return T_639_NUMBERS_TABLE.INTEGER; + } + + @Override + protected TableField T639_INTEGER_DECIMAL() { + return T_639_NUMBERS_TABLE.INTEGER_DECIMAL; + } + + @Override + protected TableField T639_LONG() { + return T_639_NUMBERS_TABLE.LONG; + } + + @Override + protected TableField T639_LONG_DECIMAL() { + return T_639_NUMBERS_TABLE.LONG_DECIMAL; + } + + @Override + protected TableField T639_DOUBLE() { + return T_639_NUMBERS_TABLE.DOUBLE; + } + + @Override + protected TableField T639_FLOAT() { + return null; + } + + @Override + protected Table T725() { + return T_725_LOB_TEST; + } + + @Override + protected TableField T725_ID() { + return T_725_LOB_TEST.ID; + } + + @Override + protected TableField T725_LOB() { + return T_725_LOB_TEST.LOB; + } + + @Override + protected Table T785() { + return T_785; + } + + @Override + protected TableField T785_ID() { + return T_785.ID; + } + + @Override + protected TableField T785_NAME() { + return T_785.NAME; + } + + @Override + protected TableField T785_VALUE() { + return T_785.VALUE; + } + + @Override + protected Table TUnsigned() { + return null; + } + + @Override + protected TableField TUnsigned_U_BYTE() { + return null; + } + + @Override + protected TableField TUnsigned_U_SHORT() { + return null; + } + + @Override + protected TableField TUnsigned_U_INT() { + return null; + } + + @Override + protected TableField TUnsigned_U_LONG() { + return null; + } + + @Override + protected Table TDates() { + return T_DATES; + } + + @Override + protected UpdatableTable TBooleans() { + return T_BOOLEANS; + } + + @Override + protected TableField TBooleans_ID() { + return T_BOOLEANS.ID; + } + + @Override + protected TableField TBooleans_BOOLEAN_10() { + return T_BOOLEANS.ONE_ZERO; + } + + @Override + protected TableField TBooleans_Boolean_TF_LC() { + return T_BOOLEANS.TRUE_FALSE_LC; + } + + @Override + protected TableField TBooleans_Boolean_TF_UC() { + return T_BOOLEANS.TRUE_FALSE_UC; + } + + @Override + protected TableField TBooleans_Boolean_YN_LC() { + return T_BOOLEANS.Y_N_LC; + } + + @Override + protected TableField TBooleans_Boolean_YN_UC() { + return T_BOOLEANS.Y_N_UC; + } + + @Override + protected TableField TBooleans_Boolean_YES_NO_LC() { + return T_BOOLEANS.YES_NO_LC; + } + + @Override + protected TableField TBooleans_Boolean_YES_NO_UC() { + return T_BOOLEANS.YES_NO_UC; + } + + @Override + protected TableField TBooleans_VC() { + return T_BOOLEANS.VC_BOOLEAN; + } + + @Override + protected TableField TBooleans_C() { + return T_BOOLEANS.C_BOOLEAN; + } + + @Override + protected TableField TBooleans_N() { + return T_BOOLEANS.N_BOOLEAN; + } + + @Override + protected Table TArrays() { + return T_ARRAYS; + } + + @Override + protected TableField TArrays_ID() { + return T_ARRAYS.ID; + } + + @Override + protected TableField TArrays_STRING() { + return T_ARRAYS.STRING_ARRAY; + } + + @Override + protected TableField TArrays_NUMBER() { + return T_ARRAYS.NUMBER_ARRAY; + } + + @Override + protected TableField TArrays_DATE() { + return T_ARRAYS.DATE_ARRAY; + } + + @Override + protected TableField[]> TArrays_UDT() { + return null; + } + + @Override + protected TableField> TArrays_STRING_R() { + return null; + } + + @Override + protected TableField> TArrays_NUMBER_R() { + return null; + } + + @Override + protected TableField> TArrays_DATE_R() { + return null; + } + + @Override + protected TableField> TArrays_NUMBER_LONG_R() { + return null; + } + + @Override + protected TableField> TBook_LANGUAGE_ID() { + return T_BOOK.LANGUAGE_ID; + } + + @Override + protected TableField TBook_PUBLISHED_IN() { + return T_BOOK.PUBLISHED_IN; + } + + @Override + protected TableField TBook_CONTENT_TEXT() { + return T_BOOK.CONTENT_TEXT; + } + + @Override + protected TableField TBook_CONTENT_PDF() { + return T_BOOK.CONTENT_PDF; + } + + @Override + protected TableField> TBook_STATUS() { + return null; + } + + @Override + protected Table VLibrary() { + return V_LIBRARY; + } + + @Override + protected TableField VLibrary_TITLE() { + return V_LIBRARY.TITLE; + } + + @Override + protected TableField VLibrary_AUTHOR() { + return V_LIBRARY.AUTHOR; + } + + @Override + protected Table VAuthor() { + return V_AUTHOR; + } + + @Override + protected Table VBook() { + return V_BOOK; + } + + @Override + protected UpdatableTable TDirectory() { + return null; + } + + @Override + protected TableField TDirectory_ID() { + return null; + } + + @Override + protected TableField TDirectory_PARENT_ID() { + return null; + } + + @Override + protected TableField TDirectory_IS_DIRECTORY() { + return null; + } + + @Override + protected TableField TDirectory_NAME() { + return null; + } + + @Override + protected UpdatableTable TTriggers() { + return T_TRIGGERS; + } + + @Override + protected TableField TTriggers_ID_GENERATED() { + return T_TRIGGERS.ID_GENERATED; + } + + @Override + protected TableField TTriggers_ID() { + return T_TRIGGERS.ID; + } + + @Override + protected TableField TTriggers_COUNTER() { + return T_TRIGGERS.COUNTER; + } + + @Override + protected Table TIdentity() { + return T_IDENTITY; + } + + @Override + protected TableField TIdentity_ID() { + return T_IDENTITY.ID; + } + + @Override + protected TableField TIdentity_VAL() { + return T_IDENTITY.VAL; + } + + @Override + protected UpdatableTable TIdentityPK() { + return T_IDENTITY_PK; + } + + @Override + protected TableField TIdentityPK_ID() { + return T_IDENTITY_PK.ID; + } + + @Override + protected TableField TIdentityPK_VAL() { + return T_IDENTITY_PK.VAL; + } + + @Override + protected Field FAuthorExistsField(String authorName) { + return Routines.fAuthorExists(authorName); + } + + @Override + protected Field FOneField() { + return Routines.fOne(); + } + + @Override + protected Field FNumberField(Number n) { + return Routines.fNumber((Integer) n); + } + + @SuppressWarnings("unchecked") + @Override + protected Field FNumberField(Field n) { + return Routines.fNumber((Field) n); + } + + @Override + protected Field F317Field(Number n1, Number n2, Number n3, Number n4) { + return Routines.f317((Integer) n1, (Integer) n2, (Integer) n3, (Integer) n4); + } + + @SuppressWarnings("unchecked") + @Override + protected Field F317Field(Field n1, Field n2, + Field n3, Field n4) { + return Routines.f317((Field) n1, (Field) n2, (Field) n3, (Field) n4); + } + + @Override + protected Field> FGetOneCursorField(Integer[] array) { + return Routines.fGetOneCursor(array); + } + + @Override + protected Field FArrays1Field(Field array) { + return Routines.fArrays1(array); + } + + @Override + protected Field FArrays2Field(Field array) { + return Routines.fArrays2(array); + } + + @Override + protected Field FArrays3Field(Field array) { + return Routines.fArrays3(array); + } + + @Override + protected > Field FArrays1Field_R(Field array) { + return null; + } + + @Override + protected > Field FArrays2Field_R(Field array) { + return null; + } + + @Override + protected > Field FArrays3Field_R(Field array) { + return null; + } + + @Override + protected Class> cUAddressType() { + return null; + } + + @Override + protected Class> cUStreetType() { + return null; + } + + @Override + protected Class cRoutines() { + return Routines.class; + } + + @Override + protected boolean supportsOUTParameters() { + return true; + } + + @Override + protected boolean supportsReferences() { + return true; + } + + @Override + protected boolean supportsRecursiveQueries() { + return false; + } + + @Override + protected Class cLibrary() { + return null; + } + + @Override + protected Class cSequences() { + return Sequences.class; + } + + @Override + protected DataType[] getCastableDataTypes() { + return new DataType[] { + HSQLDBDataType.BIGINT, + HSQLDBDataType.BINARY, + HSQLDBDataType.BINARYLARGEOBJECT, + HSQLDBDataType.BIT, + HSQLDBDataType.BOOLEAN, + HSQLDBDataType.CHAR, + HSQLDBDataType.CHARACTER, + HSQLDBDataType.CHARACTERLARGEOBJECT, + HSQLDBDataType.CHARACTERVARYING, + HSQLDBDataType.CHARLARGEOBJECT, + HSQLDBDataType.DATE, + HSQLDBDataType.DATETIME, + HSQLDBDataType.DECIMAL, + HSQLDBDataType.DOUBLE, + HSQLDBDataType.DOUBLEPRECISION, + HSQLDBDataType.FLOAT, + HSQLDBDataType.INT, + HSQLDBDataType.INTEGER, + HSQLDBDataType.LONGVARBINARY, + HSQLDBDataType.LONGVARCHAR, + HSQLDBDataType.NUMERIC, + HSQLDBDataType.OBJECT, + HSQLDBDataType.OTHER, + HSQLDBDataType.REAL, + HSQLDBDataType.SMALLINT, + HSQLDBDataType.TIME, + HSQLDBDataType.TIMESTAMP, + HSQLDBDataType.TINYINT, + HSQLDBDataType.VARBINARY, + HSQLDBDataType.VARCHAR, + HSQLDBDataType.VARCHARIGNORECASE, + }; + } +} diff --git a/jOOQ-test/src/org/jooq/test/jOOQHSQLDBTest2.java b/jOOQ-test/src/org/jooq/test/jOOQHSQLDBTest2.java new file mode 100644 index 00000000000..4a39ec84a0c --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/jOOQHSQLDBTest2.java @@ -0,0 +1,737 @@ +/** + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com + * All rights reserved. + * + * This software is licensed to you under the Apache License, Version 2.0 + * (the "License"); You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * 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 "jOOQ" 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 COPYRIGHT OWNER 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. + */ + +package org.jooq.test; + +import static org.jooq.test.oracle.generatedclasses.test.Tables.T_639_NUMBERS_TABLE; +import static org.jooq.test.oracle.generatedclasses.test.Tables.T_658_REF; +import static org.jooq.test.oracle.generatedclasses.test.Tables.T_725_LOB_TEST; +import static org.jooq.test.oracle.generatedclasses.test.Tables.T_785; +import static org.jooq.test.oracle.generatedclasses.test.Tables.T_AUTHOR; +import static org.jooq.test.oracle.generatedclasses.test.Tables.T_BOOK; +import static org.jooq.test.oracle.generatedclasses.test.Tables.T_BOOK_STORE; +import static org.jooq.test.oracle.generatedclasses.test.Tables.T_BOOK_TO_BOOK_STORE; +import static org.jooq.test.oracle.generatedclasses.test.Tables.T_BOOLEANS; +import static org.jooq.test.oracle.generatedclasses.test.Tables.T_DATES; +import static org.jooq.test.oracle.generatedclasses.test.Tables.T_DIRECTORY; +import static org.jooq.test.oracle.generatedclasses.test.Tables.T_TRIGGERS; +import static org.jooq.test.oracle.generatedclasses.test.Tables.V_AUTHOR; +import static org.jooq.test.oracle.generatedclasses.test.Tables.V_BOOK; +import static org.jooq.test.oracle.generatedclasses.test.Tables.V_LIBRARY; + +import java.math.BigDecimal; +import java.math.BigInteger; +import java.sql.Date; +import java.util.List; + +import org.jooq.ArrayRecord; +import org.jooq.DataType; +import org.jooq.Field; +import org.jooq.Record; +import org.jooq.Result; +import org.jooq.Table; +import org.jooq.TableField; +import org.jooq.UDTRecord; +import org.jooq.UpdatableTable; +import org.jooq.conf.MappedSchema; +import org.jooq.conf.RenderMapping; +import org.jooq.conf.Settings; +import org.jooq.conf.SettingsTools; +import org.jooq.impl.Factory; +import org.jooq.test._.converters.Boolean_10; +import org.jooq.test._.converters.Boolean_TF_LC; +import org.jooq.test._.converters.Boolean_TF_UC; +import org.jooq.test._.converters.Boolean_YES_NO_LC; +import org.jooq.test._.converters.Boolean_YES_NO_UC; +import org.jooq.test._.converters.Boolean_YN_LC; +import org.jooq.test._.converters.Boolean_YN_UC; +import org.jooq.test.hsqldb.generatedclasses.Public; +import org.jooq.test.hsqldb.generatedclasses.PublicFactory; +import org.jooq.test.oracle.generatedclasses.test.Routines; +import org.jooq.test.oracle.generatedclasses.test.Sequences; +import org.jooq.test.oracle.generatedclasses.test.tables.records.TArraysRecord; +import org.jooq.test.oracle.generatedclasses.test.tables.records.TAuthorRecord; +import org.jooq.test.oracle.generatedclasses.test.tables.records.TBookRecord; +import org.jooq.test.oracle.generatedclasses.test.tables.records.TBookStoreRecord; +import org.jooq.test.oracle.generatedclasses.test.tables.records.TBookToBookStoreRecord; +import org.jooq.test.oracle.generatedclasses.test.tables.records.TBooleansRecord; +import org.jooq.test.oracle.generatedclasses.test.tables.records.TDatesRecord; +import org.jooq.test.oracle.generatedclasses.test.tables.records.TDirectoryRecord; +import org.jooq.test.oracle.generatedclasses.test.tables.records.TTriggersRecord; +import org.jooq.test.oracle.generatedclasses.test.tables.records.T_639NumbersTableRecord; +import org.jooq.test.oracle.generatedclasses.test.tables.records.T_658RefRecord; +import org.jooq.test.oracle.generatedclasses.test.tables.records.T_725LobTestRecord; +import org.jooq.test.oracle.generatedclasses.test.tables.records.T_785Record; +import org.jooq.test.oracle.generatedclasses.test.tables.records.VLibraryRecord; +import org.jooq.test.oracle.generatedclasses.test.tables.records.XUnusedRecord; +import org.jooq.tools.unsigned.UByte; +import org.jooq.tools.unsigned.UInteger; +import org.jooq.tools.unsigned.ULong; +import org.jooq.tools.unsigned.UShort; + +/** + * @author Lukas Eder + */ +public class jOOQHSQLDBTest2 extends jOOQAbstractTest< + TAuthorRecord, + TBookRecord, + TBookStoreRecord, + TBookToBookStoreRecord, + XUnusedRecord, + VLibraryRecord, + TArraysRecord, + TDatesRecord, + TBooleansRecord, + TDirectoryRecord, + TTriggersRecord, + XUnusedRecord, + XUnusedRecord, + XUnusedRecord, + T_658RefRecord, + T_725LobTestRecord, + T_639NumbersTableRecord, + T_785Record> { + + @Override + protected Factory create(Settings settings) { + settings = (settings != null) ? settings : new Settings(); + RenderMapping mapping = SettingsTools.getRenderMapping(settings); + List schemata = mapping.getSchemata(); + + if (schemata.size() == 0) { + schemata.add(new MappedSchema() + .withInput(TAuthor().getSchema().getName()) + .withOutput(Public.PUBLIC.getName())); + } + else { + schemata.get(0) + .withInput(TAuthor().getSchema().getName()) + .withOutput(Public.PUBLIC.getName()); + } + + return new PublicFactory(getConnection(), settings); + } + + @Override + protected UpdatableTable TAuthor() { + return T_AUTHOR; + } + + @Override + protected TableField TAuthor_LAST_NAME() { + return T_AUTHOR.LAST_NAME; + } + + @Override + protected TableField TAuthor_FIRST_NAME() { + return T_AUTHOR.FIRST_NAME; + } + + @Override + protected TableField TAuthor_DATE_OF_BIRTH() { + return T_AUTHOR.DATE_OF_BIRTH; + } + + @Override + protected TableField TAuthor_YEAR_OF_BIRTH() { + return T_AUTHOR.YEAR_OF_BIRTH; + } + + @Override + protected TableField TAuthor_ID() { + return T_AUTHOR.ID; + } + + @Override + protected TableField> TAuthor_ADDRESS() { + return null; + } + + @Override + protected UpdatableTable TBook() { + return T_BOOK; + } + + @Override + protected TableField TBook_ID() { + return T_BOOK.ID; + } + + @Override + protected TableField TBook_AUTHOR_ID() { + return T_BOOK.AUTHOR_ID; + } + + @Override + protected TableField TBook_TITLE() { + return T_BOOK.TITLE; + } + + @Override + protected UpdatableTable TBookStore() { + return T_BOOK_STORE; + } + + @Override + protected TableField TBookStore_NAME() { + return T_BOOK_STORE.NAME; + } + + @Override + protected UpdatableTable TBookToBookStore() { + return T_BOOK_TO_BOOK_STORE; + } + + @Override + protected UpdatableTable TBookSale() { + return null; + } + + @Override + protected TableField TBookToBookStore_BOOK_ID() { + return T_BOOK_TO_BOOK_STORE.BOOK_ID; + } + + @Override + protected TableField TBookToBookStore_BOOK_STORE_NAME() { + return T_BOOK_TO_BOOK_STORE.BOOK_STORE_NAME; + } + + @Override + protected TableField TBookToBookStore_STOCK() { + return T_BOOK_TO_BOOK_STORE.STOCK; + } + + @Override + protected Table T658() { + return T_658_REF; + } + + @Override + protected Table T639() { + return T_639_NUMBERS_TABLE; + } + + @Override + protected TableField T639_ID() { + return T_639_NUMBERS_TABLE.ID; + } + + @Override + protected TableField T639_BIG_DECIMAL() { + return T_639_NUMBERS_TABLE.BIG_DECIMAL; + } + + @Override + protected TableField T639_BIG_INTEGER() { + return T_639_NUMBERS_TABLE.BIG_INTEGER; + } + + @Override + protected TableField T639_BYTE() { + return T_639_NUMBERS_TABLE.BYTE; + } + + @Override + protected TableField T639_BYTE_DECIMAL() { + return T_639_NUMBERS_TABLE.BYTE_DECIMAL; + } + + @Override + protected TableField T639_SHORT() { + return T_639_NUMBERS_TABLE.SHORT; + } + + @Override + protected TableField T639_SHORT_DECIMAL() { + return T_639_NUMBERS_TABLE.SHORT_DECIMAL; + } + + @Override + protected TableField T639_INTEGER() { + return T_639_NUMBERS_TABLE.INTEGER; + } + + @Override + protected TableField T639_INTEGER_DECIMAL() { + return T_639_NUMBERS_TABLE.INTEGER_DECIMAL; + } + + @Override + protected TableField T639_LONG() { + return T_639_NUMBERS_TABLE.LONG; + } + + @Override + protected TableField T639_LONG_DECIMAL() { + return T_639_NUMBERS_TABLE.LONG_DECIMAL; + } + + @Override + protected TableField T639_DOUBLE() { + return null; + } + + @Override + protected TableField T639_FLOAT() { + return null; + } + + @Override + protected Table T725() { + return T_725_LOB_TEST; + } + + @Override + protected TableField T725_ID() { + return T_725_LOB_TEST.ID; + } + + @Override + protected TableField T725_LOB() { + return T_725_LOB_TEST.LOB; + } + + @Override + protected Table T785() { + return T_785; + } + + @Override + protected TableField T785_ID() { + return T_785.ID; + } + + @Override + protected TableField T785_NAME() { + return T_785.NAME; + } + + @Override + protected TableField T785_VALUE() { + return T_785.VALUE; + } + + @Override + protected Table TUnsigned() { + return null; + } + + @Override + protected TableField TUnsigned_U_BYTE() { + return null; + } + + @Override + protected TableField TUnsigned_U_SHORT() { + return null; + } + + @Override + protected TableField TUnsigned_U_INT() { + return null; + } + + @Override + protected TableField TUnsigned_U_LONG() { + return null; + } + + @Override + protected UpdatableTable TBooleans() { + return T_BOOLEANS; + } + + @Override + protected TableField TBooleans_ID() { + return T_BOOLEANS.ID; + } + + @Override + protected TableField TBooleans_BOOLEAN_10() { + return T_BOOLEANS.ONE_ZERO; + } + + @Override + protected TableField TBooleans_Boolean_TF_LC() { + return T_BOOLEANS.TRUE_FALSE_LC; + } + + @Override + protected TableField TBooleans_Boolean_TF_UC() { + return T_BOOLEANS.TRUE_FALSE_UC; + } + + @Override + protected TableField TBooleans_Boolean_YN_LC() { + return T_BOOLEANS.Y_N_LC; + } + + @Override + protected TableField TBooleans_Boolean_YN_UC() { + return T_BOOLEANS.Y_N_UC; + } + + @Override + protected TableField TBooleans_Boolean_YES_NO_LC() { + return T_BOOLEANS.YES_NO_LC; + } + + @Override + protected TableField TBooleans_Boolean_YES_NO_UC() { + return T_BOOLEANS.YES_NO_UC; + } + + @Override + protected TableField TBooleans_VC() { + return T_BOOLEANS.VC_BOOLEAN; + } + + @Override + protected TableField TBooleans_C() { + return T_BOOLEANS.C_BOOLEAN; + } + + @Override + protected TableField TBooleans_N() { + return T_BOOLEANS.N_BOOLEAN; + } + + @Override + protected Table TDates() { + return T_DATES; + } + + @Override + protected Table TArrays() { + return null; + } + + @Override + protected TableField TArrays_ID() { + return null; + } + + @Override + protected TableField TArrays_STRING() { + return null; + } + + @Override + protected TableField TArrays_NUMBER() { + return null; + } + + @Override + protected TableField TArrays_DATE() { + return null; + } + + @Override + protected TableField[]> TArrays_UDT() { + return null; + } + + @Override + protected TableField> TArrays_STRING_R() { + return null; + } + + @Override + protected TableField> TArrays_NUMBER_R() { + return null; + } + + @Override + protected TableField> TArrays_DATE_R() { + return null; + } + + @Override + protected TableField> TArrays_NUMBER_LONG_R() { + return null; + } + + @Override + protected TableField> TBook_LANGUAGE_ID() { + return T_BOOK.LANGUAGE_ID; + } + + @Override + protected TableField TBook_PUBLISHED_IN() { + return T_BOOK.PUBLISHED_IN; + } + + @Override + protected TableField TBook_CONTENT_TEXT() { + return T_BOOK.CONTENT_TEXT; + } + + @Override + protected TableField TBook_CONTENT_PDF() { + return T_BOOK.CONTENT_PDF; + } + + @Override + protected TableField> TBook_STATUS() { + return null; + } + + @Override + protected Table VLibrary() { + return V_LIBRARY; + } + + @Override + protected TableField VLibrary_TITLE() { + return V_LIBRARY.TITLE; + } + + @Override + protected TableField VLibrary_AUTHOR() { + return V_LIBRARY.AUTHOR; + } + + @Override + protected Table VAuthor() { + return V_AUTHOR; + } + + @Override + protected Table VBook() { + return V_BOOK; + } + + @Override + protected UpdatableTable TDirectory() { + return T_DIRECTORY; + } + + @Override + protected TableField TDirectory_ID() { + return T_DIRECTORY.ID; + } + + @Override + protected TableField TDirectory_PARENT_ID() { + return T_DIRECTORY.PARENT_ID; + } + + @Override + protected TableField TDirectory_IS_DIRECTORY() { + return T_DIRECTORY.IS_DIRECTORY; + } + + @Override + protected TableField TDirectory_NAME() { + return T_DIRECTORY.NAME; + } + + @Override + protected UpdatableTable TTriggers() { + return T_TRIGGERS; + } + + @Override + protected TableField TTriggers_ID_GENERATED() { + return T_TRIGGERS.ID_GENERATED; + } + + @Override + protected TableField TTriggers_ID() { + return T_TRIGGERS.ID; + } + + @Override + protected TableField TTriggers_COUNTER() { + return T_TRIGGERS.COUNTER; + } + + @Override + protected Table TIdentity() { + return null; + } + + @Override + protected TableField TIdentity_ID() { + return null; + } + + @Override + protected TableField TIdentity_VAL() { + return null; + } + + @Override + protected UpdatableTable TIdentityPK() { + return null; + } + + @Override + protected TableField TIdentityPK_ID() { + return null; + } + + @Override + protected TableField TIdentityPK_VAL() { + return null; + } + + @Override + protected Field FAuthorExistsField(String authorName) { + return Routines.fAuthorExists(authorName); + } + + @Override + protected Field FOneField() { + return Routines.fOne(); + } + + @Override + protected Field FNumberField(Number n) { + return Routines.fNumber(n); + } + + @Override + protected Field FNumberField(Field n) { + return Routines.fNumber(n); + } + + @Override + protected Field F317Field(Number n1, Number n2, Number n3, Number n4) { + return Routines.f317(n1, n2, n3, n4); + } + + @Override + protected Field F317Field(Field n1, Field n2, + Field n3, Field n4) { + return Routines.f317(n1, n2, n3, n4); + } + + @Override + protected Field> FGetOneCursorField(Integer[] array) { + return null; + } + + @Override + protected Field FArrays1Field(Field array) { + return null; + } + + @Override + protected Field FArrays2Field(Field array) { + return null; + } + + @Override + protected Field FArrays3Field(Field array) { + return null; + } + + @Override + protected > Field FArrays1Field_R(Field array) { + return null; + } + + @Override + protected > Field FArrays2Field_R(Field array) { + return null; + } + + @Override + protected > Field FArrays3Field_R(Field array) { + return null; + } + + @Override + protected Class> cUAddressType() { + return null; + } + + @Override + protected Class> cUStreetType() { + return null; + } + + @Override + protected Class cRoutines() { + return Routines.class; + } + + @Override + protected boolean supportsOUTParameters() { + return true; + } + + @Override + protected boolean supportsReferences() { + return true; + } + + @Override + protected boolean supportsRecursiveQueries() { + return false; + } + + @Override + protected Class cLibrary() { + return null; + } + + @Override + protected Class cSequences() { + return Sequences.class; + } + + @Override + protected DataType[] getCastableDataTypes() { + return new DataType[0]; + } + + // ------------------------------------------------------------------------- + // The following tests don't make sense in this context + // ------------------------------------------------------------------------- + + @Override + public void testInsertIdentity() throws Exception { + log.info("SKIPPING", "Identity tests"); + } + + @Override + public void testMetaModel() throws Exception { + log.info("SKIPPING", "Meta model tests"); + } +} diff --git a/jOOQ-test/src/org/jooq/test/jOOQIngresTest.java b/jOOQ-test/src/org/jooq/test/jOOQIngresTest.java new file mode 100644 index 00000000000..d58e56d50ee --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/jOOQIngresTest.java @@ -0,0 +1,757 @@ +/** + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com + * All rights reserved. + * + * This software is licensed to you under the Apache License, Version 2.0 + * (the "License"); You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * 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 "jOOQ" 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 COPYRIGHT OWNER 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. + */ + +package org.jooq.test; + +import static org.jooq.test.ingres.generatedclasses.Tables.T_BOOK_TO_BOOK_STORE; +import static org.jooq.test.ingres.generatedclasses.Tables.T_BOOLEANS; +import static org.jooq.test.ingres.generatedclasses.Tables.T_DATES; +import static org.jooq.test.ingres.generatedclasses.Tables.T_IDENTITY; +import static org.jooq.test.ingres.generatedclasses.Tables.T_IDENTITY_PK; +import static org.jooq.test.ingres.generatedclasses.Tables.V_AUTHOR; +import static org.jooq.test.ingres.generatedclasses.Tables.V_BOOK; + +import java.math.BigDecimal; +import java.math.BigInteger; +import java.sql.Date; + +import org.jooq.ArrayRecord; +import org.jooq.DataType; +import org.jooq.Field; +import org.jooq.Record; +import org.jooq.Result; +import org.jooq.Table; +import org.jooq.TableField; +import org.jooq.UDTRecord; +import org.jooq.UpdatableTable; +import org.jooq.conf.Settings; +import org.jooq.impl.Factory; +import org.jooq.test._.converters.Boolean_10; +import org.jooq.test._.converters.Boolean_TF_LC; +import org.jooq.test._.converters.Boolean_TF_UC; +import org.jooq.test._.converters.Boolean_YES_NO_LC; +import org.jooq.test._.converters.Boolean_YES_NO_UC; +import org.jooq.test._.converters.Boolean_YN_LC; +import org.jooq.test._.converters.Boolean_YN_UC; +import org.jooq.test.ingres.generatedclasses.Sequences; +import org.jooq.test.ingres.generatedclasses.TestFactory; +import org.jooq.test.ingres.generatedclasses.tables.TAuthor; +import org.jooq.test.ingres.generatedclasses.tables.TBook; +import org.jooq.test.ingres.generatedclasses.tables.TBookStore; +import org.jooq.test.ingres.generatedclasses.tables.TBookToBookStore; +import org.jooq.test.ingres.generatedclasses.tables.TBooleans; +import org.jooq.test.ingres.generatedclasses.tables.TIdentity; +import org.jooq.test.ingres.generatedclasses.tables.TIdentityPk; +import org.jooq.test.ingres.generatedclasses.tables.TTriggers; +import org.jooq.test.ingres.generatedclasses.tables.T_639NumbersTable; +import org.jooq.test.ingres.generatedclasses.tables.T_658Ref; +import org.jooq.test.ingres.generatedclasses.tables.T_725LobTest; +import org.jooq.test.ingres.generatedclasses.tables.T_785; +import org.jooq.test.ingres.generatedclasses.tables.VLibrary; +import org.jooq.test.ingres.generatedclasses.tables.records.TAuthorRecord; +import org.jooq.test.ingres.generatedclasses.tables.records.TBookRecord; +import org.jooq.test.ingres.generatedclasses.tables.records.TBookStoreRecord; +import org.jooq.test.ingres.generatedclasses.tables.records.TBookToBookStoreRecord; +import org.jooq.test.ingres.generatedclasses.tables.records.TBooleansRecord; +import org.jooq.test.ingres.generatedclasses.tables.records.TDatesRecord; +import org.jooq.test.ingres.generatedclasses.tables.records.TIdentityPkRecord; +import org.jooq.test.ingres.generatedclasses.tables.records.TIdentityRecord; +import org.jooq.test.ingres.generatedclasses.tables.records.TTriggersRecord; +import org.jooq.test.ingres.generatedclasses.tables.records.T_639NumbersTableRecord; +import org.jooq.test.ingres.generatedclasses.tables.records.T_658RefRecord; +import org.jooq.test.ingres.generatedclasses.tables.records.T_725LobTestRecord; +import org.jooq.test.ingres.generatedclasses.tables.records.T_785Record; +import org.jooq.test.ingres.generatedclasses.tables.records.VLibraryRecord; +import org.jooq.test.ingres.generatedclasses.tables.records.XUnusedRecord; +import org.jooq.tools.unsigned.UByte; +import org.jooq.tools.unsigned.UInteger; +import org.jooq.tools.unsigned.ULong; +import org.jooq.tools.unsigned.UShort; +import org.jooq.util.ingres.IngresDataType; + + +/** + * @author Lukas Eder + */ +public class jOOQIngresTest extends jOOQAbstractTest< + TAuthorRecord, + TBookRecord, + TBookStoreRecord, + TBookToBookStoreRecord, + XUnusedRecord, + VLibraryRecord, + XUnusedRecord, + TDatesRecord, + TBooleansRecord, + XUnusedRecord, + TTriggersRecord, + XUnusedRecord, + TIdentityRecord, + TIdentityPkRecord, + T_658RefRecord, + T_725LobTestRecord, + T_639NumbersTableRecord, + T_785Record> { + + @Override + protected Factory create(Settings settings) { + return new TestFactory(getConnection(), settings); + } + + @Override + protected UpdatableTable TAuthor() { + return TAuthor.T_AUTHOR; + } + + @Override + protected TableField TAuthor_LAST_NAME() { + return TAuthor.LAST_NAME; + } + + @Override + protected TableField TAuthor_FIRST_NAME() { + return TAuthor.FIRST_NAME; + } + + @Override + protected TableField TAuthor_DATE_OF_BIRTH() { + return TAuthor.DATE_OF_BIRTH; + } + + @Override + protected TableField TAuthor_YEAR_OF_BIRTH() { + return TAuthor.YEAR_OF_BIRTH; + } + + @Override + protected TableField TAuthor_ID() { + return TAuthor.ID; + } + + @Override + protected TableField> TAuthor_ADDRESS() { + return null; + } + + @Override + protected UpdatableTable TBook() { + return TBook.T_BOOK; + } + + @Override + protected TableField TBook_ID() { + return TBook.ID; + } + + @Override + protected TableField TBook_AUTHOR_ID() { + return TBook.AUTHOR_ID; + } + + @Override + protected TableField TBook_TITLE() { + return TBook.TITLE; + } + + @Override + protected UpdatableTable TBookStore() { + return TBookStore.T_BOOK_STORE; + } + + @Override + protected TableField TBookStore_NAME() { + return TBookStore.NAME; + } + + @Override + protected UpdatableTable TBookToBookStore() { + return T_BOOK_TO_BOOK_STORE; + } + + @Override + protected UpdatableTable TBookSale() { + return null; + } + + @Override + protected TableField TBookToBookStore_BOOK_ID() { + return TBookToBookStore.BOOK_ID; + } + + @Override + protected TableField TBookToBookStore_BOOK_STORE_NAME() { + return TBookToBookStore.BOOK_STORE_NAME; + } + + @Override + protected TableField TBookToBookStore_STOCK() { + return TBookToBookStore.STOCK; + } + + @Override + protected Table T658() { + return T_658Ref.T_658_REF; + } + + @Override + protected Table T639() { + return T_639NumbersTable.T_639_NUMBERS_TABLE; + } + + @Override + protected TableField T639_ID() { + return T_639NumbersTable.ID; + } + + @Override + protected TableField T639_BIG_DECIMAL() { + return T_639NumbersTable.BIG_DECIMAL; + } + + @Override + protected TableField T639_BIG_INTEGER() { + return T_639NumbersTable.BIG_INTEGER; + } + + @Override + protected TableField T639_BYTE() { + return T_639NumbersTable.BYTE; + } + + @Override + protected TableField T639_BYTE_DECIMAL() { + return T_639NumbersTable.BYTE_DECIMAL; + } + + @Override + protected TableField T639_SHORT() { + return T_639NumbersTable.SHORT; + } + + @Override + protected TableField T639_SHORT_DECIMAL() { + return T_639NumbersTable.SHORT_DECIMAL; + } + + @Override + protected TableField T639_INTEGER() { + return T_639NumbersTable.INTEGER; + } + + @Override + protected TableField T639_INTEGER_DECIMAL() { + return T_639NumbersTable.INTEGER_DECIMAL; + } + + @Override + protected TableField T639_LONG() { + return T_639NumbersTable.LONG; + } + + @Override + protected TableField T639_LONG_DECIMAL() { + return T_639NumbersTable.LONG_DECIMAL; + } + + @Override + protected TableField T639_DOUBLE() { + return T_639NumbersTable.DOUBLE; + } + + @Override + protected TableField T639_FLOAT() { + return T_639NumbersTable.FLOAT; + } + + @Override + protected Table T725() { + return T_725LobTest.T_725_LOB_TEST; + } + + @Override + protected TableField T725_ID() { + return T_725LobTest.ID; + } + + @Override + protected TableField T725_LOB() { + return T_725LobTest.LOB; + } + + @Override + protected Table T785() { + return T_785.T_785; + } + + @Override + protected TableField T785_ID() { + return T_785.ID; + } + + @Override + protected TableField T785_NAME() { + return T_785.NAME; + } + + @Override + protected TableField T785_VALUE() { + return T_785.VALUE; + } + + @Override + protected Table TUnsigned() { + return null; + } + + @Override + protected TableField TUnsigned_U_BYTE() { + return null; + } + + @Override + protected TableField TUnsigned_U_SHORT() { + return null; + } + + @Override + protected TableField TUnsigned_U_INT() { + return null; + } + + @Override + protected TableField TUnsigned_U_LONG() { + return null; + } + + @Override + protected Table TDates() { + return T_DATES; + } + + @Override + protected UpdatableTable TBooleans() { + return T_BOOLEANS; + } + + @Override + protected TableField TBooleans_ID() { + return TBooleans.ID; + } + + @Override + protected TableField TBooleans_BOOLEAN_10() { + return TBooleans.ONE_ZERO; + } + + @Override + protected TableField TBooleans_Boolean_TF_LC() { + return TBooleans.TRUE_FALSE_LC; + } + + @Override + protected TableField TBooleans_Boolean_TF_UC() { + return TBooleans.TRUE_FALSE_UC; + } + + @Override + protected TableField TBooleans_Boolean_YN_LC() { + return TBooleans.Y_N_LC; + } + + @Override + protected TableField TBooleans_Boolean_YN_UC() { + return TBooleans.Y_N_UC; + } + + @Override + protected TableField TBooleans_Boolean_YES_NO_LC() { + return TBooleans.YES_NO_LC; + } + + @Override + protected TableField TBooleans_Boolean_YES_NO_UC() { + return TBooleans.YES_NO_UC; + } + + @Override + protected TableField TBooleans_VC() { + return TBooleans.VC_BOOLEAN; + } + + @Override + protected TableField TBooleans_C() { + return TBooleans.C_BOOLEAN; + } + + @Override + protected TableField TBooleans_N() { + return TBooleans.N_BOOLEAN; + } + + @Override + protected Table TArrays() { + return null; + } + + @Override + protected TableField TArrays_ID() { + return null; + } + + @Override + protected TableField TArrays_STRING() { + return null; + } + + @Override + protected TableField TArrays_NUMBER() { + return null; + } + + @Override + protected TableField TArrays_DATE() { + return null; + } + + @Override + protected TableField[]> TArrays_UDT() { + return null; + } + + @Override + protected TableField> TArrays_STRING_R() { + return null; + } + + @Override + protected TableField> TArrays_NUMBER_R() { + return null; + } + + @Override + protected TableField> TArrays_DATE_R() { + return null; + } + + @Override + protected TableField> TArrays_NUMBER_LONG_R() { + return null; + } + + @Override + protected TableField> TBook_LANGUAGE_ID() { + return TBook.LANGUAGE_ID; + } + + @Override + protected TableField TBook_PUBLISHED_IN() { + return TBook.PUBLISHED_IN; + } + + @Override + protected TableField TBook_CONTENT_TEXT() { + return TBook.CONTENT_TEXT; + } + + @Override + protected TableField TBook_CONTENT_PDF() { + return TBook.CONTENT_PDF; + } + + @Override + protected TableField> TBook_STATUS() { + return null; + } + + @Override + protected Table VLibrary() { + return VLibrary.V_LIBRARY; + } + + @Override + protected TableField VLibrary_TITLE() { + return VLibrary.TITLE; + } + + @Override + protected TableField VLibrary_AUTHOR() { + return VLibrary.AUTHOR; + } + + @Override + protected Table VAuthor() { + return V_AUTHOR; + } + + @Override + protected Table VBook() { + return V_BOOK; + } + + @Override + protected UpdatableTable TDirectory() { + return null; + } + + @Override + protected TableField TDirectory_ID() { + return null; + } + + @Override + protected TableField TDirectory_PARENT_ID() { + return null; + } + + @Override + protected TableField TDirectory_IS_DIRECTORY() { + return null; + } + + @Override + protected TableField TDirectory_NAME() { + return null; + } + + @Override + protected UpdatableTable TTriggers() { + return TTriggers.T_TRIGGERS; + } + + @Override + protected TableField TTriggers_ID_GENERATED() { + return TTriggers.ID_GENERATED; + } + + @Override + protected TableField TTriggers_ID() { + return TTriggers.ID; + } + + @Override + protected TableField TTriggers_COUNTER() { + return TTriggers.COUNTER; + } + + @Override + protected Table TIdentity() { + return T_IDENTITY; + } + + @Override + protected TableField TIdentity_ID() { + return TIdentity.ID; + } + + @Override + protected TableField TIdentity_VAL() { + return TIdentity.VAL; + } + + @Override + protected UpdatableTable TIdentityPK() { + return T_IDENTITY_PK; + } + + @Override + protected TableField TIdentityPK_ID() { + return TIdentityPk.ID; + } + + @Override + protected TableField TIdentityPK_VAL() { + return TIdentityPk.VAL; + } + + @Override + protected Field FAuthorExistsField(String authorName) { + return null; + } + + @Override + protected Field FOneField() { + return null; + } + + @Override + protected Field FNumberField(Number n) { + return null; + } + + @Override + protected Field FNumberField(Field n) { + return null; + } + + @Override + protected Field F317Field(Number n1, Number n2, Number n3, Number n4) { + return null; + } + + @Override + protected Field F317Field(Field n1, Field n2, + Field n3, Field n4) { + return null; + } + + @Override + protected Field> FGetOneCursorField(Integer[] array) { + return null; + } + + @Override + protected Field FArrays1Field(Field array) { + return null; + } + + @Override + protected Field FArrays2Field(Field array) { + return null; + } + + @Override + protected Field FArrays3Field(Field array) { + return null; + } + + @Override + protected > Field FArrays1Field_R(Field array) { + return null; + } + + @Override + protected > Field FArrays2Field_R(Field array) { + return null; + } + + @Override + protected > Field FArrays3Field_R(Field array) { + return null; + } + + @Override + protected Class> cUAddressType() { + return null; + } + + @Override + protected Class> cUStreetType() { + return null; + } + + @Override + protected Class cRoutines() { + return null; + } + + @Override + protected boolean supportsOUTParameters() { + return true; + } + + @Override + protected boolean supportsReferences() { + return true; + } + + @Override + protected boolean supportsRecursiveQueries() { + return false; + } + + @Override + protected Class cLibrary() { + return null; + } + + @Override + protected Class cSequences() { + return Sequences.class; + } + + @Override + protected DataType[] getCastableDataTypes() { + return new DataType[] { + IngresDataType.ANSIDATE, + IngresDataType.BIGINT, + IngresDataType.BINARY, + IngresDataType.BINARYLARGEOBJECT, + IngresDataType.BLOB, + IngresDataType.BOOLEAN, + IngresDataType.BYTE, + IngresDataType.C, + IngresDataType.CHAR, + IngresDataType.CHARACTER, + IngresDataType.CHARACTERLARGEOBJECT, + IngresDataType.CHARACTERVARYING, + IngresDataType.CHARLARGEOBJECT, + IngresDataType.CLOB, + IngresDataType.DATE, + IngresDataType.DECIMAL, + IngresDataType.DOUBLEPRECISION, + IngresDataType.FLOAT, + IngresDataType.FLOAT4, + IngresDataType.FLOAT8, + IngresDataType.I1, + IngresDataType.I2, + IngresDataType.I4, + IngresDataType.I8, + IngresDataType.INGRESDATE, + IngresDataType.INTEGER, + IngresDataType.INTEGER1, + IngresDataType.INTEGER2, + IngresDataType.INTEGER4, + IngresDataType.INTEGER8, + IngresDataType.LONGBYTE, + IngresDataType.LONGNVARCHAR, + IngresDataType.LONGVARCHAR, + IngresDataType.NATIONALCHARACTERLARGEOBJECT, + IngresDataType.NCHAR, + IngresDataType.NCHARLARGEOBJECT, + IngresDataType.NCLOB, + IngresDataType.NVARCHAR, + IngresDataType.REAL, + IngresDataType.SMALLINT, + IngresDataType.TEXT, + IngresDataType.TIME, + IngresDataType.TIMESTAMP, + IngresDataType.TINYINT, + IngresDataType.VARBINARY, + IngresDataType.VARBYTE, + IngresDataType.VARCHAR, + }; + } +} diff --git a/jOOQ-test/src/org/jooq/test/jOOQMySQLTest.java b/jOOQ-test/src/org/jooq/test/jOOQMySQLTest.java new file mode 100644 index 00000000000..19325bb4f4c --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/jOOQMySQLTest.java @@ -0,0 +1,822 @@ +/** + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com + * All rights reserved. + * + * This software is licensed to you under the Apache License, Version 2.0 + * (the "License"); You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * 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 "jOOQ" 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 COPYRIGHT OWNER 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. + */ + +package org.jooq.test; + +import static junit.framework.Assert.assertNull; +import static org.jooq.impl.Factory.val; +import static org.jooq.test.mysql.generatedclasses.Tables.T_BOOK_TO_BOOK_STORE; +import static org.jooq.test.mysql.generatedclasses.Tables.T_BOOLEANS; +import static org.jooq.test.mysql.generatedclasses.Tables.T_DATES; +import static org.jooq.test.mysql.generatedclasses.Tables.T_IDENTITY_PK; +import static org.jooq.test.mysql.generatedclasses.Tables.T_UNSIGNED; +import static org.jooq.test.mysql.generatedclasses.Tables.V_AUTHOR; +import static org.jooq.test.mysql.generatedclasses.Tables.V_BOOK; +import static org.jooq.util.mysql.MySQLFactory.aesDecrypt; +import static org.jooq.util.mysql.MySQLFactory.aesEncrypt; +import static org.jooq.util.mysql.MySQLFactory.compress; +import static org.jooq.util.mysql.MySQLFactory.decode; +import static org.jooq.util.mysql.MySQLFactory.desDecrypt; +import static org.jooq.util.mysql.MySQLFactory.desEncrypt; +import static org.jooq.util.mysql.MySQLFactory.encode; +import static org.jooq.util.mysql.MySQLFactory.md5; +import static org.jooq.util.mysql.MySQLFactory.password; +import static org.jooq.util.mysql.MySQLFactory.sha1; +import static org.jooq.util.mysql.MySQLFactory.sha2; +import static org.jooq.util.mysql.MySQLFactory.uncompress; +import static org.jooq.util.mysql.MySQLFactory.uncompressedLength; +import static org.junit.Assert.assertEquals; +import static org.junit.Assert.assertNotNull; + +import java.math.BigDecimal; +import java.math.BigInteger; +import java.sql.Date; +import java.util.List; + +import org.jooq.ArrayRecord; +import org.jooq.DataType; +import org.jooq.Field; +import org.jooq.Record; +import org.jooq.Result; +import org.jooq.Table; +import org.jooq.TableField; +import org.jooq.UDTRecord; +import org.jooq.UpdatableTable; +import org.jooq.conf.Settings; +import org.jooq.test._.converters.Boolean_10; +import org.jooq.test._.converters.Boolean_TF_LC; +import org.jooq.test._.converters.Boolean_TF_UC; +import org.jooq.test._.converters.Boolean_YES_NO_LC; +import org.jooq.test._.converters.Boolean_YES_NO_UC; +import org.jooq.test._.converters.Boolean_YN_LC; +import org.jooq.test._.converters.Boolean_YN_UC; +import org.jooq.test.mysql.generatedclasses.Routines; +import org.jooq.test.mysql.generatedclasses.TestFactory; +import org.jooq.test.mysql.generatedclasses.enums.TBookStatus; +import org.jooq.test.mysql.generatedclasses.enums.T_959JavaKeywords; +import org.jooq.test.mysql.generatedclasses.tables.TAuthor; +import org.jooq.test.mysql.generatedclasses.tables.TBook; +import org.jooq.test.mysql.generatedclasses.tables.TBookStore; +import org.jooq.test.mysql.generatedclasses.tables.TBookToBookStore; +import org.jooq.test.mysql.generatedclasses.tables.TBooleans; +import org.jooq.test.mysql.generatedclasses.tables.TIdentityPk; +import org.jooq.test.mysql.generatedclasses.tables.TTriggers; +import org.jooq.test.mysql.generatedclasses.tables.TUnsigned; +import org.jooq.test.mysql.generatedclasses.tables.T_639NumbersTable; +import org.jooq.test.mysql.generatedclasses.tables.T_658Ref; +import org.jooq.test.mysql.generatedclasses.tables.T_725LobTest; +import org.jooq.test.mysql.generatedclasses.tables.T_785; +import org.jooq.test.mysql.generatedclasses.tables.T_959; +import org.jooq.test.mysql.generatedclasses.tables.VLibrary; +import org.jooq.test.mysql.generatedclasses.tables.records.TAuthorRecord; +import org.jooq.test.mysql.generatedclasses.tables.records.TBookRecord; +import org.jooq.test.mysql.generatedclasses.tables.records.TBookStoreRecord; +import org.jooq.test.mysql.generatedclasses.tables.records.TBookToBookStoreRecord; +import org.jooq.test.mysql.generatedclasses.tables.records.TBooleansRecord; +import org.jooq.test.mysql.generatedclasses.tables.records.TDatesRecord; +import org.jooq.test.mysql.generatedclasses.tables.records.TIdentityPkRecord; +import org.jooq.test.mysql.generatedclasses.tables.records.TTriggersRecord; +import org.jooq.test.mysql.generatedclasses.tables.records.TUnsignedRecord; +import org.jooq.test.mysql.generatedclasses.tables.records.T_639NumbersTableRecord; +import org.jooq.test.mysql.generatedclasses.tables.records.T_658RefRecord; +import org.jooq.test.mysql.generatedclasses.tables.records.T_725LobTestRecord; +import org.jooq.test.mysql.generatedclasses.tables.records.T_785Record; +import org.jooq.test.mysql.generatedclasses.tables.records.VLibraryRecord; +import org.jooq.test.mysql.generatedclasses.tables.records.XUnusedRecord; +import org.jooq.tools.unsigned.UByte; +import org.jooq.tools.unsigned.UInteger; +import org.jooq.tools.unsigned.ULong; +import org.jooq.tools.unsigned.UShort; +import org.jooq.util.mysql.MySQLDataType; +import org.jooq.util.mysql.MySQLFactory; + +import org.junit.Test; + + +/** + * @author Lukas Eder + */ +public class jOOQMySQLTest extends jOOQAbstractTest< + TAuthorRecord, + TBookRecord, + TBookStoreRecord, + TBookToBookStoreRecord, + XUnusedRecord, + VLibraryRecord, + XUnusedRecord, + TDatesRecord, + TBooleansRecord, + XUnusedRecord, + TTriggersRecord, + TUnsignedRecord, + XUnusedRecord, + TIdentityPkRecord, + T_658RefRecord, + T_725LobTestRecord, + T_639NumbersTableRecord, + T_785Record> { + + @Override + protected TestFactory create(Settings settings) { + return new TestFactory(getConnection(), settings); + } + + @Override + protected UpdatableTable TAuthor() { + return TAuthor.T_AUTHOR; + } + + @Override + protected TableField TAuthor_LAST_NAME() { + return TAuthor.LAST_NAME; + } + + @Override + protected TableField TAuthor_FIRST_NAME() { + return TAuthor.FIRST_NAME; + } + + @Override + protected TableField TAuthor_DATE_OF_BIRTH() { + return TAuthor.DATE_OF_BIRTH; + } + + @Override + protected TableField TAuthor_YEAR_OF_BIRTH() { + return TAuthor.YEAR_OF_BIRTH; + } + + @Override + protected TableField TAuthor_ID() { + return TAuthor.ID; + } + + @Override + protected TableField> TAuthor_ADDRESS() { + return null; + } + + @Override + protected UpdatableTable TBook() { + return TBook.T_BOOK; + } + + @Override + protected TableField TBook_ID() { + return TBook.ID; + } + + @Override + protected TableField TBook_AUTHOR_ID() { + return TBook.AUTHOR_ID; + } + + @Override + protected TableField TBook_TITLE() { + return TBook.TITLE; + } + + @Override + protected UpdatableTable TBookStore() { + return TBookStore.T_BOOK_STORE; + } + + @Override + protected TableField TBookStore_NAME() { + return TBookStore.NAME; + } + + @Override + protected UpdatableTable TBookToBookStore() { + return T_BOOK_TO_BOOK_STORE; + } + + @Override + protected UpdatableTable TBookSale() { + return null; + } + + @Override + protected TableField TBookToBookStore_BOOK_ID() { + return TBookToBookStore.BOOK_ID; + } + + @Override + protected TableField TBookToBookStore_BOOK_STORE_NAME() { + return TBookToBookStore.BOOK_STORE_NAME; + } + + @Override + protected TableField TBookToBookStore_STOCK() { + return TBookToBookStore.STOCK; + } + + @Override + protected Table T658() { + return T_658Ref.T_658_REF; + } + + @Override + protected Table T639() { + return T_639NumbersTable.T_639_NUMBERS_TABLE; + } + + @Override + protected TableField T639_ID() { + return T_639NumbersTable.ID; + } + + @Override + protected TableField T639_BIG_DECIMAL() { + return T_639NumbersTable.BIG_DECIMAL; + } + + @Override + protected TableField T639_BIG_INTEGER() { + return T_639NumbersTable.BIG_INTEGER; + } + + @Override + protected TableField T639_BYTE() { + return T_639NumbersTable.BYTE; + } + + @Override + protected TableField T639_BYTE_DECIMAL() { + return T_639NumbersTable.BYTE_DECIMAL; + } + + @Override + protected TableField T639_SHORT() { + return T_639NumbersTable.SHORT; + } + + @Override + protected TableField T639_SHORT_DECIMAL() { + return T_639NumbersTable.SHORT_DECIMAL; + } + + @Override + protected TableField T639_INTEGER() { + return T_639NumbersTable.INTEGER; + } + + @Override + protected TableField T639_INTEGER_DECIMAL() { + return T_639NumbersTable.INTEGER_DECIMAL; + } + + @Override + protected TableField T639_LONG() { + return T_639NumbersTable.LONG; + } + + @Override + protected TableField T639_LONG_DECIMAL() { + return T_639NumbersTable.LONG_DECIMAL; + } + + @Override + protected TableField T639_DOUBLE() { + return T_639NumbersTable.DOUBLE; + } + + @Override + protected TableField T639_FLOAT() { + return null; + } + + @Override + protected Table T725() { + return T_725LobTest.T_725_LOB_TEST; + } + + @Override + protected TableField T725_ID() { + return T_725LobTest.ID; + } + + @Override + protected TableField T725_LOB() { + return T_725LobTest.LOB; + } + + @Override + protected Table T785() { + return T_785.T_785; + } + + @Override + protected TableField T785_ID() { + return T_785.ID; + } + + @Override + protected TableField T785_NAME() { + return T_785.NAME; + } + + @Override + protected TableField T785_VALUE() { + return T_785.VALUE; + } + + @Override + protected Table TUnsigned() { + return T_UNSIGNED; + } + + @Override + protected TableField TUnsigned_U_BYTE() { + return TUnsigned.U_BYTE; + } + + @Override + protected TableField TUnsigned_U_SHORT() { + return TUnsigned.U_SHORT; + } + + @Override + protected TableField TUnsigned_U_INT() { + return TUnsigned.U_INT; + } + + @Override + protected TableField TUnsigned_U_LONG() { + return TUnsigned.U_LONG; + } + + @Override + protected Table TDates() { + return T_DATES; + } + + @Override + protected UpdatableTable TBooleans() { + return T_BOOLEANS; + } + + @Override + protected TableField TBooleans_ID() { + return TBooleans.ID; + } + + @Override + protected TableField TBooleans_BOOLEAN_10() { + return TBooleans.ONE_ZERO; + } + + @Override + protected TableField TBooleans_Boolean_TF_LC() { + return TBooleans.TRUE_FALSE_LC; + } + + @Override + protected TableField TBooleans_Boolean_TF_UC() { + return TBooleans.TRUE_FALSE_UC; + } + + @Override + protected TableField TBooleans_Boolean_YN_LC() { + return TBooleans.Y_N_LC; + } + + @Override + protected TableField TBooleans_Boolean_YN_UC() { + return TBooleans.Y_N_UC; + } + + @Override + protected TableField TBooleans_Boolean_YES_NO_LC() { + return TBooleans.YES_NO_LC; + } + + @Override + protected TableField TBooleans_Boolean_YES_NO_UC() { + return TBooleans.YES_NO_UC; + } + + @Override + protected TableField TBooleans_VC() { + return TBooleans.VC_BOOLEAN; + } + + @Override + protected TableField TBooleans_C() { + return TBooleans.C_BOOLEAN; + } + + @Override + protected TableField TBooleans_N() { + return TBooleans.N_BOOLEAN; + } + + @Override + protected Table TArrays() { + return null; + } + + @Override + protected TableField TArrays_ID() { + return null; + } + + @Override + protected TableField TArrays_STRING() { + return null; + } + + @Override + protected TableField TArrays_NUMBER() { + return null; + } + + @Override + protected TableField TArrays_DATE() { + return null; + } + + @Override + protected TableField[]> TArrays_UDT() { + return null; + } + + @Override + protected TableField> TArrays_STRING_R() { + return null; + } + + @Override + protected TableField> TArrays_NUMBER_R() { + return null; + } + + @Override + protected TableField> TArrays_DATE_R() { + return null; + } + + @Override + protected TableField> TArrays_NUMBER_LONG_R() { + return null; + } + + @Override + protected TableField> TBook_LANGUAGE_ID() { + return TBook.LANGUAGE_ID; + } + + @Override + protected TableField TBook_PUBLISHED_IN() { + return TBook.PUBLISHED_IN; + } + + @Override + protected TableField TBook_CONTENT_TEXT() { + return TBook.CONTENT_TEXT; + } + + @Override + protected TableField TBook_CONTENT_PDF() { + return TBook.CONTENT_PDF; + } + + @Override + protected TableField> TBook_STATUS() { + return TBook.STATUS; + } + + @Override + protected Table VLibrary() { + return VLibrary.V_LIBRARY; + } + + @Override + protected TableField VLibrary_TITLE() { + return VLibrary.TITLE; + } + + @Override + protected TableField VLibrary_AUTHOR() { + return VLibrary.AUTHOR; + } + + @Override + protected Table VAuthor() { + return V_AUTHOR; + } + + @Override + protected Table VBook() { + return V_BOOK; + } + + @Override + protected UpdatableTable TDirectory() { + return null; + } + + @Override + protected TableField TDirectory_ID() { + return null; + } + + @Override + protected TableField TDirectory_PARENT_ID() { + return null; + } + + @Override + protected TableField TDirectory_IS_DIRECTORY() { + return null; + } + + @Override + protected TableField TDirectory_NAME() { + return null; + } + + @Override + protected UpdatableTable TTriggers() { + return TTriggers.T_TRIGGERS; + } + + @Override + protected TableField TTriggers_ID_GENERATED() { + return TTriggers.ID_GENERATED; + } + + @Override + protected TableField TTriggers_ID() { + return TTriggers.ID; + } + + @Override + protected TableField TTriggers_COUNTER() { + return TTriggers.COUNTER; + } + + @Override + protected Table TIdentity() { + return null; + } + + @Override + protected TableField TIdentity_ID() { + return null; + } + + @Override + protected TableField TIdentity_VAL() { + return null; + } + + @Override + protected UpdatableTable TIdentityPK() { + return T_IDENTITY_PK; + } + + @Override + protected TableField TIdentityPK_ID() { + return TIdentityPk.ID; + } + + @Override + protected TableField TIdentityPK_VAL() { + return TIdentityPk.VAL; + } + + @Override + protected Field FAuthorExistsField(String authorName) { + return Routines.fAuthorExists(authorName); + } + + @Override + protected Field FOneField() { + return Routines.fOne(); + } + + @Override + protected Field FNumberField(Number n) { + return Routines.fNumber((Integer) n); + } + + @SuppressWarnings("unchecked") + @Override + protected Field FNumberField(Field n) { + return Routines.fNumber((Field) n); + } + + @Override + protected Field F317Field(Number n1, Number n2, Number n3, Number n4) { + return Routines.f317((Integer) n1, (Integer) n2, (Integer) n3, (Integer) n4); + } + + @SuppressWarnings("unchecked") + @Override + protected Field F317Field(Field n1, Field n2, + Field n3, Field n4) { + return Routines.f317((Field) n1, (Field) n2, (Field) n3, (Field) n4); + } + + @Override + protected Field> FGetOneCursorField(Integer[] array) { + return null; + } + + @Override + protected Field FArrays1Field(Field array) { + return null; + } + + @Override + protected Field FArrays2Field(Field array) { + return null; + } + + @Override + protected Field FArrays3Field(Field array) { + return null; + } + + @Override + protected > Field FArrays1Field_R(Field array) { + return null; + } + + @Override + protected > Field FArrays2Field_R(Field array) { + return null; + } + + @Override + protected > Field FArrays3Field_R(Field array) { + return null; + } + + @Override + protected Class> cUAddressType() { + return null; + } + + @Override + protected Class> cUStreetType() { + return null; + } + + @Override + protected Class cRoutines() { + return Routines.class; + } + + @Override + protected boolean supportsOUTParameters() { + return true; + } + + @Override + protected boolean supportsReferences() { + return true; + } + + @Override + protected boolean supportsRecursiveQueries() { + return false; + } + + @Override + protected Class cLibrary() { + return null; + } + + @Override + protected Class cSequences() { + return null; + } + + @Override + protected DataType[] getCastableDataTypes() { + return new DataType[] { + MySQLDataType.BIGINT, + MySQLDataType.BINARY, + MySQLDataType.BIT, + MySQLDataType.BLOB, + MySQLDataType.BOOL, + MySQLDataType.BOOLEAN, + MySQLDataType.CHAR, + MySQLDataType.DATE, + MySQLDataType.DATETIME, + MySQLDataType.DEC, + MySQLDataType.DECIMAL, + MySQLDataType.DOUBLE, + MySQLDataType.FLOAT, + MySQLDataType.INT, + MySQLDataType.INTEGER, + MySQLDataType.LONGBLOB, + MySQLDataType.LONGTEXT, + MySQLDataType.MEDIUMBLOB, + MySQLDataType.MEDIUMINT, + MySQLDataType.MEDIUMTEXT, + MySQLDataType.SET, + MySQLDataType.SMALLINT, + MySQLDataType.TEXT, + MySQLDataType.TIME, + MySQLDataType.TIMESTAMP, + MySQLDataType.TINYBLOB, + MySQLDataType.TINYINT, + MySQLDataType.VARBINARY, + MySQLDataType.VARCHAR, + MySQLDataType.YEAR, + }; + } + + // IMPORTANT! Make this the first test, to prevent side-effects + @Override + @Test + public void testInsertIdentity() throws Exception { + super.testInsertIdentity(); + } + + @Test + public void testMySQLEncryptionFunctions() throws Exception { + MySQLFactory create = (MySQLFactory) create(); + + assertNotNull(create.select(password("abc")).fetchOne(0)); + assertNotNull(create.select(md5("abc")).fetchOne(0)); + assertNotNull(create.select(sha1("abc")).fetchOne(0)); + assertNotNull(create.select(sha2("abc", 256)).fetchOne(0)); + assertEquals("abc", create.select(decode(encode("abc", "pw"), val("pw"))).fetchOne(0)); + assertEquals("abc", create.select(aesDecrypt(aesEncrypt("abc", "pw"), val("pw"))).fetchOne(0)); + assertEquals("abc", create.select(desDecrypt(desEncrypt("abc", "pw"), val("pw"))).fetchOne(0)); + assertEquals("abc", create.select(desDecrypt(desEncrypt("abc"))).fetchOne(0)); + assertEquals("abc", create.select(uncompress(compress("abc"))).fetchOne(0)); + assertEquals(3, create.select(uncompressedLength(compress("abc"))).fetchOne(0)); + } + + @Test + public void testMySQLJavaKeywordEnums() throws Exception { + reset = false; + + assertEquals(3, + create().insertInto(T_959.T_959) + .set(T_959.JAVA_KEYWORDS, T_959JavaKeywords.public_) + .newRecord() + .set(T_959.JAVA_KEYWORDS, T_959JavaKeywords.abstract_) + .newRecord() + .set(T_959.JAVA_KEYWORDS, T_959JavaKeywords.class_) + .execute()); + + List result = + create().selectFrom(T_959.T_959) + .orderBy(T_959.JAVA_KEYWORDS) + .fetch(T_959.JAVA_KEYWORDS); + + assertEquals(3, result.size()); + assertEquals(T_959JavaKeywords.abstract_, result.get(0)); + assertEquals(T_959JavaKeywords.class_, result.get(1)); + assertEquals(T_959JavaKeywords.public_, result.get(2)); + } + + @Test + public void testMySQLEnumIndex() throws Exception { + assertNull(MySQLFactory.enumType(TBookStatus.class, -1)); + assertNull(MySQLFactory.enumType(TBookStatus.class, 0)); + assertEquals(TBookStatus.SOLD_OUT, MySQLFactory.enumType(TBookStatus.class, 1)); + assertEquals(TBookStatus.ORDERED, MySQLFactory.enumType(TBookStatus.class, 2)); + assertEquals(TBookStatus.ON_STOCK, MySQLFactory.enumType(TBookStatus.class, 3)); + assertNull(MySQLFactory.enumType(TBookStatus.class, 4)); + } +} diff --git a/jOOQ-test/src/org/jooq/test/jOOQMySQLTestSchemaMapping.java b/jOOQ-test/src/org/jooq/test/jOOQMySQLTestSchemaMapping.java new file mode 100644 index 00000000000..944fc71162d --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/jOOQMySQLTestSchemaMapping.java @@ -0,0 +1,84 @@ +/** + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com + * All rights reserved. + * + * This software is licensed to you under the Apache License, Version 2.0 + * (the "License"); You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * 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 "jOOQ" 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 COPYRIGHT OWNER 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. + */ + +package org.jooq.test; + +import java.util.List; + +import org.jooq.conf.MappedSchema; +import org.jooq.conf.RenderMapping; +import org.jooq.conf.Settings; +import org.jooq.conf.SettingsTools; +import org.jooq.test.mysql.generatedclasses.TestFactory; + + +/** + * @author Lukas Eder + */ +public class jOOQMySQLTestSchemaMapping extends jOOQMySQLTest { + + @Override + public void setUp() throws Exception { + super.setUp(); + + create().query("use " + TAuthor().getSchema().getName() + getSchemaSuffix()).execute(); + } + + @Override + protected String getSchemaSuffix() { + return "2"; + } + + @Override + protected TestFactory create(Settings settings) { + settings = (settings != null) ? settings : new Settings(); + RenderMapping mapping = SettingsTools.getRenderMapping(settings); + List schemata = mapping.getSchemata(); + + if (schemata.size() == 0) { + schemata.add(new MappedSchema() + .withInput(TAuthor().getSchema().getName()) + .withOutput(TAuthor().getSchema().getName() + getSchemaSuffix())); + } + else { + schemata.get(0) + .withInput(TAuthor().getSchema().getName()) + .withOutput(TAuthor().getSchema().getName() + getSchemaSuffix()); + } + + return new TestFactory(getConnection(), settings); + } +} \ No newline at end of file diff --git a/jOOQ-test/src/org/jooq/test/jOOQMySQLTestSchemaRewrite.java b/jOOQ-test/src/org/jooq/test/jOOQMySQLTestSchemaRewrite.java new file mode 100644 index 00000000000..f024c6178bd --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/jOOQMySQLTestSchemaRewrite.java @@ -0,0 +1,742 @@ +/** + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com + * All rights reserved. + * + * This software is licensed to you under the Apache License, Version 2.0 + * (the "License"); You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * 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 "jOOQ" 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 COPYRIGHT OWNER 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. + */ + +package org.jooq.test; + +import static org.jooq.test.mysql2.generatedclasses.Tables.T_639_NUMBERS_TABLE; +import static org.jooq.test.mysql2.generatedclasses.Tables.T_658_REF; +import static org.jooq.test.mysql2.generatedclasses.Tables.T_725_LOB_TEST; +import static org.jooq.test.mysql2.generatedclasses.Tables.T_785; +import static org.jooq.test.mysql2.generatedclasses.Tables.T_AUTHOR; +import static org.jooq.test.mysql2.generatedclasses.Tables.T_BOOK; +import static org.jooq.test.mysql2.generatedclasses.Tables.T_BOOK_STORE; +import static org.jooq.test.mysql2.generatedclasses.Tables.T_BOOK_TO_BOOK_STORE; +import static org.jooq.test.mysql2.generatedclasses.Tables.T_BOOLEANS; +import static org.jooq.test.mysql2.generatedclasses.Tables.T_DATES; +import static org.jooq.test.mysql2.generatedclasses.Tables.T_IDENTITY_PK; +import static org.jooq.test.mysql2.generatedclasses.Tables.T_TRIGGERS; +import static org.jooq.test.mysql2.generatedclasses.Tables.T_UNSIGNED; +import static org.jooq.test.mysql2.generatedclasses.Tables.V_AUTHOR; +import static org.jooq.test.mysql2.generatedclasses.Tables.V_BOOK; +import static org.jooq.test.mysql2.generatedclasses.Tables.V_LIBRARY; + +import java.math.BigDecimal; +import java.math.BigInteger; +import java.sql.Date; + +import org.jooq.ArrayRecord; +import org.jooq.DataType; +import org.jooq.Field; +import org.jooq.Record; +import org.jooq.Result; +import org.jooq.Table; +import org.jooq.TableField; +import org.jooq.UDTRecord; +import org.jooq.UpdatableTable; +import org.jooq.conf.Settings; +import org.jooq.test._.converters.Boolean_10; +import org.jooq.test._.converters.Boolean_TF_LC; +import org.jooq.test._.converters.Boolean_TF_UC; +import org.jooq.test._.converters.Boolean_YES_NO_LC; +import org.jooq.test._.converters.Boolean_YES_NO_UC; +import org.jooq.test._.converters.Boolean_YN_LC; +import org.jooq.test._.converters.Boolean_YN_UC; +import org.jooq.test.mysql2.generatedclasses.Routines; +import org.jooq.test.mysql2.generatedclasses.Test2Factory; +import org.jooq.test.mysql2.generatedclasses.tables.records.TAuthorRecord; +import org.jooq.test.mysql2.generatedclasses.tables.records.TBookRecord; +import org.jooq.test.mysql2.generatedclasses.tables.records.TBookStoreRecord; +import org.jooq.test.mysql2.generatedclasses.tables.records.TBookToBookStoreRecord; +import org.jooq.test.mysql2.generatedclasses.tables.records.TBooleansRecord; +import org.jooq.test.mysql2.generatedclasses.tables.records.TDatesRecord; +import org.jooq.test.mysql2.generatedclasses.tables.records.TIdentityPkRecord; +import org.jooq.test.mysql2.generatedclasses.tables.records.TTriggersRecord; +import org.jooq.test.mysql2.generatedclasses.tables.records.TUnsignedRecord; +import org.jooq.test.mysql2.generatedclasses.tables.records.T_639NumbersTableRecord; +import org.jooq.test.mysql2.generatedclasses.tables.records.T_658RefRecord; +import org.jooq.test.mysql2.generatedclasses.tables.records.T_725LobTestRecord; +import org.jooq.test.mysql2.generatedclasses.tables.records.T_785Record; +import org.jooq.test.mysql2.generatedclasses.tables.records.VLibraryRecord; +import org.jooq.test.mysql2.generatedclasses.tables.records.XUnusedRecord; +import org.jooq.tools.unsigned.UByte; +import org.jooq.tools.unsigned.UInteger; +import org.jooq.tools.unsigned.ULong; +import org.jooq.tools.unsigned.UShort; +import org.jooq.util.mysql.MySQLDataType; + + +/** + * @author Lukas Eder + */ +public class jOOQMySQLTestSchemaRewrite extends jOOQAbstractTest< + TAuthorRecord, + TBookRecord, + TBookStoreRecord, + TBookToBookStoreRecord, + XUnusedRecord, + VLibraryRecord, + XUnusedRecord, + TDatesRecord, + TBooleansRecord, + XUnusedRecord, + TTriggersRecord, + TUnsignedRecord, + XUnusedRecord, + TIdentityPkRecord, + T_658RefRecord, + T_725LobTestRecord, + T_639NumbersTableRecord, + T_785Record> { + + @Override + protected String getSchemaSuffix() { + return "2"; + } + + @Override + protected Test2Factory create(Settings settings) { + return new Test2Factory(getConnection(), settings); + } + + @Override + protected UpdatableTable TAuthor() { + return T_AUTHOR; + } + + @Override + protected TableField TAuthor_LAST_NAME() { + return T_AUTHOR.LAST_NAME; + } + + @Override + protected TableField TAuthor_FIRST_NAME() { + return T_AUTHOR.FIRST_NAME; + } + + @Override + protected TableField TAuthor_DATE_OF_BIRTH() { + return T_AUTHOR.DATE_OF_BIRTH; + } + + @Override + protected TableField TAuthor_YEAR_OF_BIRTH() { + return T_AUTHOR.YEAR_OF_BIRTH; + } + + @Override + protected TableField TAuthor_ID() { + return T_AUTHOR.ID; + } + + @Override + protected TableField> TAuthor_ADDRESS() { + return null; + } + + @Override + protected UpdatableTable TBook() { + return T_BOOK; + } + + @Override + protected TableField TBook_ID() { + return T_BOOK.ID; + } + + @Override + protected TableField TBook_AUTHOR_ID() { + return T_BOOK.AUTHOR_ID; + } + + @Override + protected TableField TBook_TITLE() { + return T_BOOK.TITLE; + } + + @Override + protected UpdatableTable TBookStore() { + return T_BOOK_STORE; + } + + @Override + protected TableField TBookStore_NAME() { + return T_BOOK_STORE.NAME; + } + + @Override + protected UpdatableTable TBookToBookStore() { + return T_BOOK_TO_BOOK_STORE; + } + + @Override + protected UpdatableTable TBookSale() { + return null; + } + + @Override + protected TableField TBookToBookStore_BOOK_ID() { + return T_BOOK_TO_BOOK_STORE.BOOK_ID; + } + + @Override + protected TableField TBookToBookStore_BOOK_STORE_NAME() { + return T_BOOK_TO_BOOK_STORE.BOOK_STORE_NAME; + } + + @Override + protected TableField TBookToBookStore_STOCK() { + return T_BOOK_TO_BOOK_STORE.STOCK; + } + + @Override + protected Table T658() { + return T_658_REF; + } + + @Override + protected Table T639() { + return T_639_NUMBERS_TABLE; + } + + @Override + protected TableField T639_ID() { + return T_639_NUMBERS_TABLE.ID; + } + + @Override + protected TableField T639_BIG_DECIMAL() { + return T_639_NUMBERS_TABLE.BIG_DECIMAL; + } + + @Override + protected TableField T639_BIG_INTEGER() { + return T_639_NUMBERS_TABLE.BIG_INTEGER; + } + + @Override + protected TableField T639_BYTE() { + return T_639_NUMBERS_TABLE.BYTE; + } + + @Override + protected TableField T639_BYTE_DECIMAL() { + return T_639_NUMBERS_TABLE.BYTE_DECIMAL; + } + + @Override + protected TableField T639_SHORT() { + return T_639_NUMBERS_TABLE.SHORT; + } + + @Override + protected TableField T639_SHORT_DECIMAL() { + return T_639_NUMBERS_TABLE.SHORT_DECIMAL; + } + + @Override + protected TableField T639_INTEGER() { + return T_639_NUMBERS_TABLE.INTEGER; + } + + @Override + protected TableField T639_INTEGER_DECIMAL() { + return T_639_NUMBERS_TABLE.INTEGER_DECIMAL; + } + + @Override + protected TableField T639_LONG() { + return T_639_NUMBERS_TABLE.LONG; + } + + @Override + protected TableField T639_LONG_DECIMAL() { + return T_639_NUMBERS_TABLE.LONG_DECIMAL; + } + + @Override + protected TableField T639_DOUBLE() { + return T_639_NUMBERS_TABLE.DOUBLE; + } + + @Override + protected TableField T639_FLOAT() { + return null; + } + + @Override + protected Table T725() { + return T_725_LOB_TEST; + } + + @Override + protected TableField T725_ID() { + return T_725_LOB_TEST.ID; + } + + @Override + protected TableField T725_LOB() { + return T_725_LOB_TEST.LOB; + } + + @Override + protected Table T785() { + return T_785; + } + + @Override + protected TableField T785_ID() { + return T_785.ID; + } + + @Override + protected TableField T785_NAME() { + return T_785.NAME; + } + + @Override + protected TableField T785_VALUE() { + return T_785.VALUE; + } + + @Override + protected Table TUnsigned() { + return T_UNSIGNED; + } + + @Override + protected TableField TUnsigned_U_BYTE() { + return T_UNSIGNED.U_BYTE; + } + + @Override + protected TableField TUnsigned_U_SHORT() { + return T_UNSIGNED.U_SHORT; + } + + @Override + protected TableField TUnsigned_U_INT() { + return T_UNSIGNED.U_INT; + } + + @Override + protected TableField TUnsigned_U_LONG() { + return T_UNSIGNED.U_LONG; + } + + @Override + protected Table TDates() { + return T_DATES; + } + + @Override + protected UpdatableTable TBooleans() { + return T_BOOLEANS; + } + + @Override + protected TableField TBooleans_ID() { + return T_BOOLEANS.ID; + } + + @Override + protected TableField TBooleans_BOOLEAN_10() { + return T_BOOLEANS.ONE_ZERO; + } + + @Override + protected TableField TBooleans_Boolean_TF_LC() { + return T_BOOLEANS.TRUE_FALSE_LC; + } + + @Override + protected TableField TBooleans_Boolean_TF_UC() { + return T_BOOLEANS.TRUE_FALSE_UC; + } + + @Override + protected TableField TBooleans_Boolean_YN_LC() { + return T_BOOLEANS.Y_N_LC; + } + + @Override + protected TableField TBooleans_Boolean_YN_UC() { + return T_BOOLEANS.Y_N_UC; + } + + @Override + protected TableField TBooleans_Boolean_YES_NO_LC() { + return T_BOOLEANS.YES_NO_LC; + } + + @Override + protected TableField TBooleans_Boolean_YES_NO_UC() { + return T_BOOLEANS.YES_NO_UC; + } + + @Override + protected TableField TBooleans_VC() { + return T_BOOLEANS.VC_BOOLEAN; + } + + @Override + protected TableField TBooleans_C() { + return T_BOOLEANS.C_BOOLEAN; + } + + @Override + protected TableField TBooleans_N() { + return T_BOOLEANS.N_BOOLEAN; + } + + @Override + protected Table TArrays() { + return null; + } + + @Override + protected TableField TArrays_ID() { + return null; + } + + @Override + protected TableField TArrays_STRING() { + return null; + } + + @Override + protected TableField TArrays_NUMBER() { + return null; + } + + @Override + protected TableField TArrays_DATE() { + return null; + } + + @Override + protected TableField[]> TArrays_UDT() { + return null; + } + + @Override + protected TableField> TArrays_STRING_R() { + return null; + } + + @Override + protected TableField> TArrays_NUMBER_R() { + return null; + } + + @Override + protected TableField> TArrays_DATE_R() { + return null; + } + + @Override + protected TableField> TArrays_NUMBER_LONG_R() { + return null; + } + + @Override + protected TableField> TBook_LANGUAGE_ID() { + return T_BOOK.LANGUAGE_ID; + } + + @Override + protected TableField TBook_PUBLISHED_IN() { + return T_BOOK.PUBLISHED_IN; + } + + @Override + protected TableField TBook_CONTENT_TEXT() { + return T_BOOK.CONTENT_TEXT; + } + + @Override + protected TableField TBook_CONTENT_PDF() { + return T_BOOK.CONTENT_PDF; + } + + @Override + protected TableField> TBook_STATUS() { + return T_BOOK.STATUS; + } + + @Override + protected Table VLibrary() { + return V_LIBRARY; + } + + @Override + protected TableField VLibrary_TITLE() { + return V_LIBRARY.TITLE; + } + + @Override + protected TableField VLibrary_AUTHOR() { + return V_LIBRARY.AUTHOR; + } + + @Override + protected Table VAuthor() { + return V_AUTHOR; + } + + @Override + protected Table VBook() { + return V_BOOK; + } + + @Override + protected UpdatableTable TDirectory() { + return null; + } + + @Override + protected TableField TDirectory_ID() { + return null; + } + + @Override + protected TableField TDirectory_PARENT_ID() { + return null; + } + + @Override + protected TableField TDirectory_IS_DIRECTORY() { + return null; + } + + @Override + protected TableField TDirectory_NAME() { + return null; + } + + @Override + protected UpdatableTable TTriggers() { + return T_TRIGGERS; + } + + @Override + protected TableField TTriggers_ID_GENERATED() { + return T_TRIGGERS.ID_GENERATED; + } + + @Override + protected TableField TTriggers_ID() { + return T_TRIGGERS.ID; + } + + @Override + protected TableField TTriggers_COUNTER() { + return T_TRIGGERS.COUNTER; + } + + @Override + protected Table TIdentity() { + return null; + } + + @Override + protected TableField TIdentity_ID() { + return null; + } + + @Override + protected TableField TIdentity_VAL() { + return null; + } + + @Override + protected UpdatableTable TIdentityPK() { + return T_IDENTITY_PK; + } + + @Override + protected TableField TIdentityPK_ID() { + return T_IDENTITY_PK.ID; + } + + @Override + protected TableField TIdentityPK_VAL() { + return T_IDENTITY_PK.VAL; + } + + @Override + protected Field FAuthorExistsField(String authorName) { + return Routines.fAuthorExists(authorName); + } + + @Override + protected Field FOneField() { + return Routines.fOne(); + } + + @Override + protected Field FNumberField(Number n) { + return Routines.fNumber((Integer) n); + } + + @SuppressWarnings("unchecked") + @Override + protected Field FNumberField(Field n) { + return Routines.fNumber((Field) n); + } + + @Override + protected Field F317Field(Number n1, Number n2, Number n3, Number n4) { + return Routines.f317((Integer) n1, (Integer) n2, (Integer) n3, (Integer) n4); + } + + @SuppressWarnings("unchecked") + @Override + protected Field F317Field(Field n1, Field n2, + Field n3, Field n4) { + return Routines.f317((Field) n1, (Field) n2, (Field) n3, (Field) n4); + } + + @Override + protected Field> FGetOneCursorField(Integer[] array) { + return null; + } + + @Override + protected Field FArrays1Field(Field array) { + return null; + } + + @Override + protected Field FArrays2Field(Field array) { + return null; + } + + @Override + protected Field FArrays3Field(Field array) { + return null; + } + + @Override + protected > Field FArrays1Field_R(Field array) { + return null; + } + + @Override + protected > Field FArrays2Field_R(Field array) { + return null; + } + + @Override + protected > Field FArrays3Field_R(Field array) { + return null; + } + + @Override + protected Class> cUAddressType() { + return null; + } + + @Override + protected Class> cUStreetType() { + return null; + } + + @Override + protected Class cRoutines() { + return Routines.class; + } + + @Override + protected boolean supportsOUTParameters() { + return true; + } + + @Override + protected boolean supportsReferences() { + return true; + } + + @Override + protected boolean supportsRecursiveQueries() { + return false; + } + + @Override + protected Class cLibrary() { + return null; + } + + @Override + protected Class cSequences() { + return null; + } + + @Override + protected DataType[] getCastableDataTypes() { + return new DataType[] { + MySQLDataType.BIGINT, + MySQLDataType.BINARY, + MySQLDataType.BIT, + MySQLDataType.BLOB, + MySQLDataType.BOOL, + MySQLDataType.BOOLEAN, + MySQLDataType.CHAR, + MySQLDataType.DATE, + MySQLDataType.DATETIME, + MySQLDataType.DEC, + MySQLDataType.DECIMAL, + MySQLDataType.DOUBLE, + MySQLDataType.FLOAT, + MySQLDataType.INT, + MySQLDataType.INTEGER, + MySQLDataType.LONGBLOB, + MySQLDataType.LONGTEXT, + MySQLDataType.MEDIUMBLOB, + MySQLDataType.MEDIUMINT, + MySQLDataType.MEDIUMTEXT, + MySQLDataType.SET, + MySQLDataType.SMALLINT, + MySQLDataType.TEXT, + MySQLDataType.TIME, + MySQLDataType.TIMESTAMP, + MySQLDataType.TINYBLOB, + MySQLDataType.TINYINT, + MySQLDataType.VARBINARY, + MySQLDataType.VARCHAR, + MySQLDataType.YEAR, + }; + } +} \ No newline at end of file diff --git a/jOOQ-test/src/org/jooq/test/jOOQOracleTest.java b/jOOQ-test/src/org/jooq/test/jOOQOracleTest.java new file mode 100644 index 00000000000..85060c5ef4f --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/jOOQOracleTest.java @@ -0,0 +1,1233 @@ +/** + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com + * All rights reserved. + * + * This software is licensed to you under the Apache License, Version 2.0 + * (the "License"); You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * 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 "jOOQ" 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 COPYRIGHT OWNER 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. + */ + +package org.jooq.test; + +import static java.util.Arrays.asList; +import static java.util.Collections.emptyList; +import static junit.framework.Assert.assertEquals; +import static junit.framework.Assert.assertNull; +import static org.jooq.impl.Factory.currentUser; +import static org.jooq.impl.Factory.falseCondition; +import static org.jooq.impl.Factory.table; +import static org.jooq.impl.Factory.trueCondition; +import static org.jooq.impl.Factory.val; +import static org.jooq.test.oracle.generatedclasses.multi_schema.Tables.T_BOOK_SALE; +import static org.jooq.test.oracle.generatedclasses.test.Routines.f691cursorIn; +import static org.jooq.test.oracle.generatedclasses.test.Routines.f691cursorOut; +import static org.jooq.test.oracle.generatedclasses.test.Routines.fArrays1; +import static org.jooq.test.oracle.generatedclasses.test.Routines.fArrays4; +import static org.jooq.test.oracle.generatedclasses.test.Routines.fTables1; +import static org.jooq.test.oracle.generatedclasses.test.Routines.fTables4; +import static org.jooq.test.oracle.generatedclasses.test.Routines.pArrays1; +import static org.jooq.test.oracle.generatedclasses.test.Routines.pTables1; +import static org.jooq.test.oracle.generatedclasses.test.Tables.T_639_NUMBERS_TABLE; +import static org.jooq.test.oracle.generatedclasses.test.Tables.T_658_REF; +import static org.jooq.test.oracle.generatedclasses.test.Tables.T_725_LOB_TEST; +import static org.jooq.test.oracle.generatedclasses.test.Tables.T_785; +import static org.jooq.test.oracle.generatedclasses.test.Tables.T_ARRAYS; +import static org.jooq.test.oracle.generatedclasses.test.Tables.T_AUTHOR; +import static org.jooq.test.oracle.generatedclasses.test.Tables.T_BOOK; +import static org.jooq.test.oracle.generatedclasses.test.Tables.T_BOOK_STORE; +import static org.jooq.test.oracle.generatedclasses.test.Tables.T_BOOK_TO_BOOK_STORE; +import static org.jooq.test.oracle.generatedclasses.test.Tables.T_BOOLEANS; +import static org.jooq.test.oracle.generatedclasses.test.Tables.T_DATES; +import static org.jooq.test.oracle.generatedclasses.test.Tables.T_DIRECTORY; +import static org.jooq.test.oracle.generatedclasses.test.Tables.T_TRIGGERS; +import static org.jooq.test.oracle.generatedclasses.test.Tables.V_AUTHOR; +import static org.jooq.test.oracle.generatedclasses.test.Tables.V_BOOK; +import static org.jooq.test.oracle.generatedclasses.test.Tables.V_LIBRARY; +import static org.jooq.test.oracle.generatedclasses.test.UDTs.U_AUTHOR_TYPE; +import static org.jooq.test.oracle.generatedclasses.test.udt.UAuthorType.countBooks; +import static org.jooq.test.oracle.generatedclasses.test.udt.UAuthorType.load; +import static org.jooq.test.oracle2.generatedclasses.Tables.DATE_AS_TIMESTAMP_T_976; +import static org.jooq.test.oracle2.generatedclasses.udt.DateAsTimestampT_976ObjectType.DATE_AS_TIMESTAMP_T_976_OBJECT_TYPE; +import static org.jooq.util.oracle.OracleFactory.sysContext; + +import java.math.BigDecimal; +import java.math.BigInteger; +import java.sql.Date; +import java.sql.Timestamp; + +import org.jooq.ArrayRecord; +import org.jooq.DataType; +import org.jooq.Field; +import org.jooq.Record; +import org.jooq.Result; +import org.jooq.Table; +import org.jooq.TableField; +import org.jooq.UDTRecord; +import org.jooq.UpdatableTable; +import org.jooq.conf.Settings; +import org.jooq.test._.converters.Boolean_10; +import org.jooq.test._.converters.Boolean_TF_LC; +import org.jooq.test._.converters.Boolean_TF_UC; +import org.jooq.test._.converters.Boolean_YES_NO_LC; +import org.jooq.test._.converters.Boolean_YES_NO_UC; +import org.jooq.test._.converters.Boolean_YN_LC; +import org.jooq.test._.converters.Boolean_YN_UC; +import org.jooq.test.oracle.generatedclasses.multi_schema.tables.records.TBookSaleRecord; +import org.jooq.test.oracle.generatedclasses.test.Routines; +import org.jooq.test.oracle.generatedclasses.test.Sequences; +import org.jooq.test.oracle.generatedclasses.test.TestFactory; +import org.jooq.test.oracle.generatedclasses.test.packages.Library; +import org.jooq.test.oracle.generatedclasses.test.routines.F377; +import org.jooq.test.oracle.generatedclasses.test.routines.FArrays1; +import org.jooq.test.oracle.generatedclasses.test.routines.FArrays4; +import org.jooq.test.oracle.generatedclasses.test.routines.FTables1; +import org.jooq.test.oracle.generatedclasses.test.routines.FTables4; +import org.jooq.test.oracle.generatedclasses.test.tables.VIncomplete; +import org.jooq.test.oracle.generatedclasses.test.tables.records.TArraysRecord; +import org.jooq.test.oracle.generatedclasses.test.tables.records.TAuthorRecord; +import org.jooq.test.oracle.generatedclasses.test.tables.records.TBookRecord; +import org.jooq.test.oracle.generatedclasses.test.tables.records.TBookStoreRecord; +import org.jooq.test.oracle.generatedclasses.test.tables.records.TBookToBookStoreRecord; +import org.jooq.test.oracle.generatedclasses.test.tables.records.TBooleansRecord; +import org.jooq.test.oracle.generatedclasses.test.tables.records.TDatesRecord; +import org.jooq.test.oracle.generatedclasses.test.tables.records.TDirectoryRecord; +import org.jooq.test.oracle.generatedclasses.test.tables.records.TTriggersRecord; +import org.jooq.test.oracle.generatedclasses.test.tables.records.T_639NumbersTableRecord; +import org.jooq.test.oracle.generatedclasses.test.tables.records.T_658RefRecord; +import org.jooq.test.oracle.generatedclasses.test.tables.records.T_725LobTestRecord; +import org.jooq.test.oracle.generatedclasses.test.tables.records.T_785Record; +import org.jooq.test.oracle.generatedclasses.test.tables.records.VIncompleteRecord; +import org.jooq.test.oracle.generatedclasses.test.tables.records.VLibraryRecord; +import org.jooq.test.oracle.generatedclasses.test.tables.records.XUnusedRecord; +import org.jooq.test.oracle.generatedclasses.test.udt.OInvalidType; +import org.jooq.test.oracle.generatedclasses.test.udt.UAddressType; +import org.jooq.test.oracle.generatedclasses.test.udt.UInvalidTable; +import org.jooq.test.oracle.generatedclasses.test.udt.UInvalidType; +import org.jooq.test.oracle.generatedclasses.test.udt.UStreetType; +import org.jooq.test.oracle.generatedclasses.test.udt.records.OInvalidTypeRecord; +import org.jooq.test.oracle.generatedclasses.test.udt.records.UAuthorTypeRecord; +import org.jooq.test.oracle.generatedclasses.test.udt.records.UBookArrayRecord; +import org.jooq.test.oracle.generatedclasses.test.udt.records.UBookTableRecord; +import org.jooq.test.oracle.generatedclasses.test.udt.records.UBookTypeRecord; +import org.jooq.test.oracle.generatedclasses.test.udt.records.UInvalidTableRecord; +import org.jooq.test.oracle.generatedclasses.test.udt.records.UInvalidTypeRecord; +import org.jooq.test.oracle.generatedclasses.test.udt.records.UNumberArrayRecord; +import org.jooq.test.oracle.generatedclasses.test.udt.records.UNumberLongArrayRecord; +import org.jooq.test.oracle.generatedclasses.test.udt.records.UNumberTableRecord; +import org.jooq.test.oracle.generatedclasses.test.udt.records.UStringArrayRecord; +import org.jooq.test.oracle.generatedclasses.test.udt.u_author_type.GetBooks; +import org.jooq.test.oracle2.generatedclasses.tables.records.DateAsTimestampT_976Record; +import org.jooq.test.oracle2.generatedclasses.udt.records.DateAsTimestampT_976ObjectTypeRecord; +import org.jooq.test.oracle2.generatedclasses.udt.records.DateAsTimestampT_976VarrayTypeRecord; +import org.jooq.tools.unsigned.UByte; +import org.jooq.tools.unsigned.UInteger; +import org.jooq.tools.unsigned.ULong; +import org.jooq.tools.unsigned.UShort; +import org.jooq.util.oracle.OracleDataType; +import org.jooq.util.oracle.OracleFactory; + +import org.junit.Test; + + +/** + * @author Lukas Eder + */ +public class jOOQOracleTest extends jOOQAbstractTest< + TAuthorRecord, + TBookRecord, + TBookStoreRecord, + TBookToBookStoreRecord, + TBookSaleRecord, + VLibraryRecord, + TArraysRecord, + TDatesRecord, + TBooleansRecord, + TDirectoryRecord, + TTriggersRecord, + XUnusedRecord, + XUnusedRecord, + XUnusedRecord, + T_658RefRecord, + T_725LobTestRecord, + T_639NumbersTableRecord, + T_785Record> { + + static { + // [#624] Incomplete or erroneous artefacts must be generated too. This + // won't compile, if there is anything wrong with code generation of + // incomplete or erroneous artefacts + + try { + Class.forName(VIncomplete.class.getName()); + Class.forName(VIncompleteRecord.class.getName()); + Class.forName(F377.class.getName()); + Class.forName(UInvalidType.class.getName()); + Class.forName(UInvalidTypeRecord.class.getName()); + Class.forName(UInvalidTable.class.getName()); + Class.forName(UInvalidTableRecord.class.getName()); + Class.forName(OInvalidType.class.getName()); + Class.forName(OInvalidTypeRecord.class.getName()); + } + catch (Exception e) { + throw new Error(e); + } + } + + @Override + protected TestFactory create(Settings settings) { + return new TestFactory(getConnection(), settings); + } + + @Override + protected UpdatableTable TAuthor() { + return T_AUTHOR; + } + + @Override + protected TableField TAuthor_LAST_NAME() { + return T_AUTHOR.LAST_NAME; + } + + @Override + protected TableField TAuthor_FIRST_NAME() { + return T_AUTHOR.FIRST_NAME; + } + + @Override + protected TableField TAuthor_DATE_OF_BIRTH() { + return T_AUTHOR.DATE_OF_BIRTH; + } + + @Override + protected TableField TAuthor_YEAR_OF_BIRTH() { + return T_AUTHOR.YEAR_OF_BIRTH; + } + + @Override + protected TableField TAuthor_ID() { + return T_AUTHOR.ID; + } + + @Override + protected TableField> TAuthor_ADDRESS() { + return T_AUTHOR.ADDRESS; + } + + @Override + protected UpdatableTable TBook() { + return T_BOOK; + } + + @Override + protected TableField TBook_ID() { + return T_BOOK.ID; + } + + @Override + protected TableField TBook_AUTHOR_ID() { + return T_BOOK.AUTHOR_ID; + } + + @Override + protected TableField TBook_TITLE() { + return T_BOOK.TITLE; + } + + @Override + protected UpdatableTable TBookStore() { + return T_BOOK_STORE; + } + + @Override + protected TableField TBookStore_NAME() { + return T_BOOK_STORE.NAME; + } + + @Override + protected UpdatableTable TBookToBookStore() { + return T_BOOK_TO_BOOK_STORE; + } + + @Override + protected UpdatableTable TBookSale() { + return T_BOOK_SALE; + } + + @Override + protected TableField TBookToBookStore_BOOK_ID() { + return T_BOOK_TO_BOOK_STORE.BOOK_ID; + } + + @Override + protected TableField TBookToBookStore_BOOK_STORE_NAME() { + return T_BOOK_TO_BOOK_STORE.BOOK_STORE_NAME; + } + + @Override + protected TableField TBookToBookStore_STOCK() { + return T_BOOK_TO_BOOK_STORE.STOCK; + } + + @Override + protected Table T725() { + return T_725_LOB_TEST; + } + + @Override + protected TableField T725_ID() { + return T_725_LOB_TEST.ID; + } + + @Override + protected TableField T725_LOB() { + return T_725_LOB_TEST.LOB; + } + + @Override + protected Table T785() { + return T_785; + } + + @Override + protected TableField T785_ID() { + return T_785.ID; + } + + @Override + protected TableField T785_NAME() { + return T_785.NAME; + } + + @Override + protected TableField T785_VALUE() { + return T_785.VALUE; + } + + @Override + protected Table TUnsigned() { + return null; + } + + @Override + protected TableField TUnsigned_U_BYTE() { + return null; + } + + @Override + protected TableField TUnsigned_U_SHORT() { + return null; + } + + @Override + protected TableField TUnsigned_U_INT() { + return null; + } + + @Override + protected TableField TUnsigned_U_LONG() { + return null; + } + + @Override + protected Table TDates() { + return T_DATES; + } + + @Override + protected UpdatableTable TBooleans() { + return T_BOOLEANS; + } + + @Override + protected TableField TBooleans_ID() { + return T_BOOLEANS.ID; + } + + @Override + protected TableField TBooleans_BOOLEAN_10() { + return T_BOOLEANS.ONE_ZERO; + } + + @Override + protected TableField TBooleans_Boolean_TF_LC() { + return T_BOOLEANS.TRUE_FALSE_LC; + } + + @Override + protected TableField TBooleans_Boolean_TF_UC() { + return T_BOOLEANS.TRUE_FALSE_UC; + } + + @Override + protected TableField TBooleans_Boolean_YN_LC() { + return T_BOOLEANS.Y_N_LC; + } + + @Override + protected TableField TBooleans_Boolean_YN_UC() { + return T_BOOLEANS.Y_N_UC; + } + + @Override + protected TableField TBooleans_Boolean_YES_NO_LC() { + return T_BOOLEANS.YES_NO_LC; + } + + @Override + protected TableField TBooleans_Boolean_YES_NO_UC() { + return T_BOOLEANS.YES_NO_UC; + } + + @Override + protected TableField TBooleans_VC() { + return T_BOOLEANS.VC_BOOLEAN; + } + + @Override + protected TableField TBooleans_C() { + return T_BOOLEANS.C_BOOLEAN; + } + + @Override + protected TableField TBooleans_N() { + return T_BOOLEANS.N_BOOLEAN; + } + + @Override + protected Table T658() { + return T_658_REF; + } + + @Override + protected Table T639() { + return T_639_NUMBERS_TABLE; + } + + @Override + protected TableField T639_ID() { + return T_639_NUMBERS_TABLE.ID; + } + + @Override + protected TableField T639_BIG_DECIMAL() { + return T_639_NUMBERS_TABLE.BIG_DECIMAL; + } + + @Override + protected TableField T639_BIG_INTEGER() { + return T_639_NUMBERS_TABLE.BIG_INTEGER; + } + + @Override + protected TableField T639_BYTE() { + return T_639_NUMBERS_TABLE.BYTE; + } + + @Override + protected TableField T639_BYTE_DECIMAL() { + return T_639_NUMBERS_TABLE.BYTE_DECIMAL; + } + + @Override + protected TableField T639_SHORT() { + return T_639_NUMBERS_TABLE.SHORT; + } + + @Override + protected TableField T639_SHORT_DECIMAL() { + return T_639_NUMBERS_TABLE.SHORT_DECIMAL; + } + + @Override + protected TableField T639_INTEGER() { + return T_639_NUMBERS_TABLE.INTEGER; + } + + @Override + protected TableField T639_INTEGER_DECIMAL() { + return T_639_NUMBERS_TABLE.INTEGER_DECIMAL; + } + + @Override + protected TableField T639_LONG() { + return T_639_NUMBERS_TABLE.LONG; + } + + @Override + protected TableField T639_LONG_DECIMAL() { + return T_639_NUMBERS_TABLE.LONG_DECIMAL; + } + + @Override + protected TableField T639_DOUBLE() { + return null; + } + + @Override + protected TableField T639_FLOAT() { + return null; + } + + @Override + protected Table TArrays() { + return T_ARRAYS; + } + + @Override + protected TableField TArrays_ID() { + return T_ARRAYS.ID; + } + + @Override + protected TableField TArrays_STRING() { + return null; + } + + @Override + protected TableField TArrays_NUMBER() { + return null; + } + + @Override + protected TableField TArrays_DATE() { + return null; + } + + @Override + protected TableField[]> TArrays_UDT() { + return null; + } + + @Override + protected TableField> TArrays_STRING_R() { + return T_ARRAYS.STRING_ARRAY; + } + + @Override + protected TableField> TArrays_NUMBER_R() { + return T_ARRAYS.NUMBER_ARRAY; + } + + @Override + protected TableField> TArrays_DATE_R() { + return T_ARRAYS.DATE_ARRAY; + } + + @Override + protected TableField> TArrays_NUMBER_LONG_R() { + return T_ARRAYS.NUMBER_LONG_ARRAY; + } + + @Override + protected TableField> TBook_LANGUAGE_ID() { + return T_BOOK.LANGUAGE_ID; + } + + @Override + protected TableField TBook_PUBLISHED_IN() { + return T_BOOK.PUBLISHED_IN; + } + + @Override + protected TableField TBook_CONTENT_TEXT() { + return T_BOOK.CONTENT_TEXT; + } + + @Override + protected TableField TBook_CONTENT_PDF() { + return T_BOOK.CONTENT_PDF; + } + + @Override + protected TableField> TBook_STATUS() { + return null; + } + + @Override + protected Table VLibrary() { + return V_LIBRARY; + } + + @Override + protected TableField VLibrary_TITLE() { + return V_LIBRARY.TITLE; + } + + @Override + protected TableField VLibrary_AUTHOR() { + return V_LIBRARY.AUTHOR; + } + + @Override + protected Table VAuthor() { + return V_AUTHOR; + } + + @Override + protected Table VBook() { + return V_BOOK; + } + + @Override + protected UpdatableTable TDirectory() { + return T_DIRECTORY; + } + + @Override + protected TableField TDirectory_ID() { + return T_DIRECTORY.ID; + } + + @Override + protected TableField TDirectory_PARENT_ID() { + return T_DIRECTORY.PARENT_ID; + } + + @Override + protected TableField TDirectory_IS_DIRECTORY() { + return T_DIRECTORY.IS_DIRECTORY; + } + + @Override + protected TableField TDirectory_NAME() { + return T_DIRECTORY.NAME; + } + + @Override + protected UpdatableTable TTriggers() { + return T_TRIGGERS; + } + + @Override + protected TableField TTriggers_ID_GENERATED() { + return T_TRIGGERS.ID_GENERATED; + } + + @Override + protected TableField TTriggers_ID() { + return T_TRIGGERS.ID; + } + + @Override + protected TableField TTriggers_COUNTER() { + return T_TRIGGERS.COUNTER; + } + + @Override + protected Table TIdentity() { + return null; + } + + @Override + protected TableField TIdentity_ID() { + return null; + } + + @Override + protected TableField TIdentity_VAL() { + return null; + } + + @Override + protected UpdatableTable TIdentityPK() { + return null; + } + + @Override + protected TableField TIdentityPK_ID() { + return null; + } + + @Override + protected TableField TIdentityPK_VAL() { + return null; + } + + @Override + protected Field FAuthorExistsField(String authorName) { + return Routines.fAuthorExists(authorName); + } + + @Override + protected Field FOneField() { + return Routines.fOne(); + } + + @Override + protected Field FNumberField(Number n) { + return Routines.fNumber(n); + } + + @Override + protected Field FNumberField(Field n) { + return Routines.fNumber(n); + } + + @Override + protected Field F317Field(Number n1, Number n2, Number n3, Number n4) { + return Routines.f317(n1, n2, n3, n4); + } + + @Override + protected Field F317Field(Field n1, Field n2, + Field n3, Field n4) { + return Routines.f317(n1, n2, n3, n4); + } + + @Override + protected Field> FGetOneCursorField(Integer[] array) { + if (array == null) { + return Routines.fGetOneCursor((UNumberArrayRecord) null); + } + else { + return Routines.fGetOneCursor(new UNumberArrayRecord(create(), array)); + } + } + + @Override + protected Field FArrays1Field(Field array) { + return null; + } + + @Override + protected Field FArrays2Field(Field array) { + return null; + } + + @Override + protected Field FArrays3Field(Field array) { + return null; + } + + @SuppressWarnings("unchecked") + @Override + protected > Field FArrays1Field_R(Field array) { + return (Field) Routines.fArrays1((Field) array); + } + + @SuppressWarnings("unchecked") + @Override + protected > Field FArrays2Field_R(Field array) { + return (Field) Routines.fArrays2((Field) array); + } + + @SuppressWarnings("unchecked") + @Override + protected > Field FArrays3Field_R(Field array) { + return (Field) Routines.fArrays3((Field) array); + } + + @Override + protected Class> cUAddressType() { + return UAddressType.U_ADDRESS_TYPE.getRecordType(); + } + + @Override + protected Class> cUStreetType() { + return UStreetType.U_STREET_TYPE.getRecordType(); + } + + @Override + protected Class cRoutines() { + return Routines.class; + } + + @Override + protected boolean supportsOUTParameters() { + return true; + } + + @Override + protected boolean supportsReferences() { + return true; + } + + @Override + protected boolean supportsRecursiveQueries() { + return true; + } + + @Override + protected Class cLibrary() { + return Library.class; + } + + @Override + protected Class cSequences() { + return Sequences.class; + } + + @Override + protected DataType[] getCastableDataTypes() { + return new DataType[] { + OracleDataType.CHAR, + OracleDataType.DATE, + OracleDataType.DEC, + OracleDataType.DECIMAL, + OracleDataType.FLOAT, + OracleDataType.INT, + OracleDataType.INTEGER, + OracleDataType.NCHAR, + OracleDataType.NUMBER, + OracleDataType.NUMERIC, + OracleDataType.NVARCHAR, + OracleDataType.NVARCHAR2, + OracleDataType.REAL, + OracleDataType.SMALLINT, + OracleDataType.TIMESTAMP, + OracleDataType.VARCHAR, + OracleDataType.VARCHAR2, + }; + } + + // ------------------------------------------------------------------------- + // Oracle-specific tests + // ------------------------------------------------------------------------- + + private OracleFactory ora() { + return new OracleFactory(create().getConnection(), create().getSettings()); + } + + @Test + public void testOracleHints() throws Exception { + assertEquals(1, create().selectOne().hint("/*+ALL_ROWS*/").fetchOne(0)); + assertEquals(1, create().select(val(1)).hint("/*+ALL_ROWS*/").fetchOne(0)); + assertEquals(1, create().selectDistinct(val(1)).hint("/*+ALL_ROWS*/").fetchOne(0)); + } + + // @Test [#1119] TODO reactivate this test + public void testOraclePipelinedFunctions() throws Exception { + // TODO [#1113] [#1119] Standalone calls to pipelined functions should + // be possible too + System.out.println(Routines.fPipelinedArray1(ora())); + } + + @Test + public void testOracleTableTypes() throws Exception { + // TODO [#523] [#1109] These two statements are needed when running this test + // in standalone mode. The data type is not registered automatically for + // ArrayRecords + new FArrays1(); + new FTables1(); + new FArrays4(); + new FTables4(); + + // FIRST, check unnesting of VARRAY/TABLE of NUMBER + // ------------------------------------------------ + + // Unnesting arrays + assertEquals(emptyList(), + create().select().from(table(new UNumberArrayRecord(ora(), (Integer[]) null))).fetch(0)); + assertEquals(emptyList(), + create().select().from(table(new UNumberArrayRecord(ora()))).fetch(0)); + assertEquals(asList(1), + create().select().from(table(new UNumberArrayRecord(ora(), 1))).fetch(0)); + assertEquals(asList(1, 2), + create().select().from(table(new UNumberArrayRecord(ora(), 1, 2))).fetch(0)); + + // Unnesting tables + assertEquals(emptyList(), + create().select().from(table(new UNumberTableRecord(ora(), (Integer[]) null))).fetch(0)); + assertEquals(emptyList(), + create().select().from(table(new UNumberTableRecord(ora()))).fetch(0)); + assertEquals(asList(1), + create().select().from(table(new UNumberTableRecord(ora(), 1))).fetch(0)); + assertEquals(asList(1, 2), + create().select().from(table(new UNumberTableRecord(ora(), 1, 2))).fetch(0)); + + // Unnesting arrays from functions + assertEquals(emptyList(), + create().select().from(table(fArrays1((UNumberArrayRecord) null))).fetch(0)); + assertEquals(emptyList(), + create().select().from(table(fArrays1(new UNumberArrayRecord(ora(), (Integer[]) null)))).fetch(0)); + assertEquals(emptyList(), + create().select().from(table(fArrays1(new UNumberArrayRecord(ora())))).fetch(0)); + assertEquals(asList(1), + create().select().from(table(fArrays1(fArrays1(new UNumberArrayRecord(ora(), 1))))).fetch(0)); + assertEquals(asList(1, 2), + create().select().from(table(fArrays1(fArrays1(new UNumberArrayRecord(ora(), 1, 2))))).fetch(0)); + + // Unnesting tables from functions + assertEquals(emptyList(), + create().select().from(table(fTables1((UNumberTableRecord) null))).fetch(0)); + assertEquals(emptyList(), + create().select().from(table(fTables1(new UNumberTableRecord(ora(), (Integer[]) null)))).fetch(0)); + assertEquals(emptyList(), + create().select().from(table(fTables1(new UNumberTableRecord(ora())))).fetch(0)); + assertEquals(asList(1), + create().select().from(table(fTables1(fTables1(new UNumberTableRecord(ora(), 1))))).fetch(0)); + assertEquals(asList(1, 2), + create().select().from(table(fTables1(fTables1(new UNumberTableRecord(ora(), 1, 2))))).fetch(0)); + + // Retrieving arrays from functions + assertNull(fArrays1(ora(), null)); + assertEquals(emptyList(), + fArrays1(ora(), new UNumberArrayRecord(ora(), (Integer[]) null)).getList()); + assertEquals(emptyList(), + fArrays1(ora(), new UNumberArrayRecord(ora())).getList()); + assertEquals(asList(1), + fArrays1(ora(), fArrays1(ora(), new UNumberArrayRecord(ora(), 1))).getList()); + assertEquals(asList(1, 2), + fArrays1(ora(), fArrays1(ora(), new UNumberArrayRecord(ora(), 1, 2))).getList()); + + // Retrieving tables from functions + assertNull(fTables1(ora(), null)); + assertEquals(emptyList(), + fTables1(ora(), new UNumberTableRecord(ora(), (Integer[]) null)).getList()); + assertEquals(emptyList(), + fTables1(ora(), new UNumberTableRecord(ora())).getList()); + assertEquals(asList(1), + fTables1(ora(), fTables1(ora(), new UNumberTableRecord(ora(), 1))).getList()); + assertEquals(asList(1, 2), + fTables1(ora(), fTables1(ora(), new UNumberTableRecord(ora(), 1, 2))).getList()); + + // Retrieving arrays from procedures + assertNull(pArrays1(ora(), null)); + assertEquals(emptyList(), + pArrays1(ora(), new UNumberArrayRecord(ora(), (Integer[]) null)).getList()); + assertEquals(emptyList(), + pArrays1(ora(), new UNumberArrayRecord(ora())).getList()); + assertEquals(asList(1), + pArrays1(ora(), pArrays1(ora(), new UNumberArrayRecord(ora(), 1))).getList()); + assertEquals(asList(1, 2), + pArrays1(ora(), pArrays1(ora(), new UNumberArrayRecord(ora(), 1, 2))).getList()); + + // Retrieving tables from procedures + assertNull(pTables1(ora(), null)); + assertEquals(emptyList(), + pTables1(ora(), new UNumberTableRecord(ora(), (Integer[]) null)).getList()); + assertEquals(emptyList(), + pTables1(ora(), new UNumberTableRecord(ora())).getList()); + assertEquals(asList(1), + pTables1(ora(), pTables1(ora(), new UNumberTableRecord(ora(), 1))).getList()); + assertEquals(asList(1, 2), + pTables1(ora(), pTables1(ora(), new UNumberTableRecord(ora(), 1, 2))).getList()); + + // THEN, check unnesting of VARRAY/TABLE of OBJECT + // ----------------------------------------------- + UBookTypeRecord r1 = new UBookTypeRecord(); + UBookTypeRecord r2 = new UBookTypeRecord(); + + r1.setId(1); + r1.setTitle(BOOK_TITLES.get(0)); + + r2.setId(2); + r2.setTitle(BOOK_TITLES.get(1)); + + // Unnesting arrays + assertEquals(emptyList(), + create().select().from(table(new UBookArrayRecord(ora(), (UBookTypeRecord[]) null))).fetch(0)); + assertEquals(emptyList(), + create().select().from(table(new UBookArrayRecord(ora()))).fetch(0)); + assertEquals(asList(1), + create().select().from(table(new UBookArrayRecord(ora(), r1))).fetch(0)); + assertEquals(BOOK_TITLES.subList(0, 1), + create().select().from(table(new UBookArrayRecord(ora(), r1))).fetch(1)); + assertEquals(asList(1, 2), + create().select().from(table(new UBookArrayRecord(ora(), r1, r2))).fetch(0)); + assertEquals(BOOK_TITLES.subList(0, 2), + create().select().from(table(new UBookArrayRecord(ora(), r1, r2))).fetch(1)); + + // Unnesting tables + assertEquals(emptyList(), + create().select().from(table(new UBookTableRecord(ora(), (UBookTypeRecord[]) null))).fetch(0)); + assertEquals(emptyList(), + create().select().from(table(new UBookTableRecord(ora()))).fetch(0)); + assertEquals(asList(1), + create().select().from(table(new UBookTableRecord(ora(), r1))).fetch(0)); + assertEquals(BOOK_TITLES.subList(0, 1), + create().select().from(table(new UBookTableRecord(ora(), r1))).fetch(1)); + assertEquals(asList(1, 2), + create().select().from(table(new UBookTableRecord(ora(), r1, r2))).fetch(0)); + assertEquals(BOOK_TITLES.subList(0, 2), + create().select().from(table(new UBookTableRecord(ora(), r1, r2))).fetch(1)); + + // Unnesting arrays from functions + assertEquals(emptyList(), + create().select().from(table(fArrays4((UBookArrayRecord) null))).fetch(0)); + assertEquals(emptyList(), + create().select().from(table(fArrays4(new UBookArrayRecord(ora(), (UBookTypeRecord[]) null)))).fetch(0)); + assertEquals(emptyList(), + create().select().from(table(fArrays4(new UBookArrayRecord(ora())))).fetch(0)); + assertEquals(asList(1), + create().select().from(table(fArrays4(new UBookArrayRecord(ora(), r1)))).fetch(0)); + assertEquals(BOOK_TITLES.subList(0, 1), + create().select().from(table(fArrays4(new UBookArrayRecord(ora(), r1)))).fetch(1)); + assertEquals(asList(1, 2), + create().select().from(table(fArrays4(fArrays4(new UBookArrayRecord(ora(), r1, r2))))).fetch(0)); + assertEquals(BOOK_TITLES.subList(0, 2), + create().select().from(table(fArrays4(fArrays4(new UBookArrayRecord(ora(), r1, r2))))).fetch(1)); + + // Unnesting tables from functions + assertEquals(emptyList(), + create().select().from(table(fTables4((UBookTableRecord) null))).fetch(0)); + assertEquals(emptyList(), + create().select().from(table(fTables4(new UBookTableRecord(ora(), (UBookTypeRecord[]) null)))).fetch(0)); + assertEquals(emptyList(), + create().select().from(table(fTables4(new UBookTableRecord(ora())))).fetch(0)); + assertEquals(asList(1), + create().select().from(table(fTables4(new UBookTableRecord(ora(), r1)))).fetch(0)); + assertEquals(BOOK_TITLES.subList(0, 1), + create().select().from(table(fTables4(new UBookTableRecord(ora(), r1)))).fetch(1)); + assertEquals(asList(1, 2), + create().select().from(table(fTables4(fTables4(new UBookTableRecord(ora(), r1, r2))))).fetch(0)); + assertEquals(BOOK_TITLES.subList(0, 2), + create().select().from(table(fTables4(fTables4(new UBookTableRecord(ora(), r1, r2))))).fetch(1)); + + // Retrieving arrays from functions + assertNull(fArrays4(ora(), null)); + assertEquals(emptyList(), + fArrays4(ora(), new UBookArrayRecord(ora(), (UBookTypeRecord[]) null)).getList()); + assertEquals(emptyList(), + fArrays4(ora(), new UBookArrayRecord(ora())).getList()); + assertEquals(asList(r1), + fArrays4(ora(), fArrays4(ora(), new UBookArrayRecord(ora(), r1))).getList()); + assertEquals(asList(r1, r2), + fArrays4(ora(), fArrays4(ora(), new UBookArrayRecord(ora(), r1, r2))).getList()); + + // Retrieving tables from functions + assertNull(fTables4(ora(), null)); + assertEquals(emptyList(), + fTables4(ora(), new UBookTableRecord(ora(), (UBookTypeRecord[]) null)).getList()); + assertEquals(emptyList(), + fTables4(ora(), new UBookTableRecord(ora())).getList()); + assertEquals(asList(r1), + fTables4(ora(), fTables4(ora(), new UBookTableRecord(ora(), r1))).getList()); + assertEquals(asList(r1, r2), + fTables4(ora(), fTables4(ora(), new UBookTableRecord(ora(), r1, r2))).getList()); + + + } + + @Test + public void testOracleMemberProcedures() throws Exception { + UAuthorTypeRecord author1; + UAuthorTypeRecord author2; + + // Unattached: + author1 = new UAuthorTypeRecord(); + author1.setId(1); + author2 = load(ora(), author1); + assertEquals(1, (int) author1.getId()); + assertEquals(1, (int) author2.getId()); + assertNull(author1.getFirstName()); + assertEquals("George", author2.getFirstName()); + assertNull(author1.getLastName()); + assertEquals("Orwell", author2.getLastName()); + + // Attached + author1 = ora().newRecord(U_AUTHOR_TYPE); + author1.setId(1); + author2 = author1.load(); + assertEquals(1, (int) author1.getId()); + assertEquals(1, (int) author2.getId()); + assertEquals("George", author1.getFirstName()); + assertEquals("George", author2.getFirstName()); + assertEquals("Orwell", author1.getLastName()); + assertEquals("Orwell", author2.getLastName()); + + // Count books + author1 = ora().newRecord(U_AUTHOR_TYPE); + assertEquals(BigDecimal.ZERO, author1.countBooks()); + assertEquals(BigDecimal.ZERO, ora().select(countBooks(author1)).fetchOne(0)); + + author1 = ora().newRecord(U_AUTHOR_TYPE); + author1.setId(1); + assertEquals(new BigDecimal("2"), author1.countBooks()); + assertEquals(new BigDecimal("2"), ora().select(countBooks(author1)).fetchOne(0)); + + // Get books + author1 = ora().newRecord(U_AUTHOR_TYPE); + GetBooks noBooks = author1.getBooks(); + assertNull(noBooks.getBook1().getId()); + assertNull(noBooks.getBook1().getTitle()); + assertNull(noBooks.getBook2().getId()); + assertNull(noBooks.getBook2().getTitle()); + + author1 = ora().newRecord(U_AUTHOR_TYPE); + author1.setId(1); + GetBooks books = author1.getBooks(); + assertEquals(1, (int) books.getBook1().getId()); + assertEquals("1984", books.getBook1().getTitle()); + assertEquals(2, (int) books.getBook2().getId()); + assertEquals("Animal Farm", books.getBook2().getTitle()); + + // Get books also calls upon load, internally. Check if that's reflected + assertEquals(1, (int) author1.getId()); + assertEquals("George", author1.getFirstName()); + assertEquals("Orwell", author1.getLastName()); + } + + @Test + public void testOracleCursorINOUT() throws Exception { + assertEquals(4, (int) create().select(f691cursorIn(f691cursorOut())).fetchOne(0, Integer.class)); + } + + @Test + public void testOracleTypedSequences() throws Exception { + assertEquals(Byte.valueOf("1"), ora().nextval(Sequences.S_961_BYTE)); + assertEquals(Short.valueOf("1"), ora().nextval(Sequences.S_961_SHORT)); + assertEquals(Integer.valueOf("1"), ora().nextval(Sequences.S_961_INT)); + assertEquals(Long.valueOf("1"), ora().nextval(Sequences.S_961_LONG)); + assertEquals(BigInteger.valueOf(1), ora().nextval(Sequences.S_961_BIG_INTEGER)); + } + + @Test + public void testOracleMergeStatementExtensions() throws Exception { + reset = false; + TAuthorRecord author; + + // Test updating with a positive condition + // --------------------------------------- + assertEquals(1, + ora().mergeInto(T_AUTHOR) + .usingDual() + .on(T_AUTHOR.ID.equal(1)) + .whenMatchedThenUpdate() + .set(T_AUTHOR.LAST_NAME, "Frisch") + .where(T_AUTHOR.ID.equal(1)) + .execute()); + + author = create().fetchOne(T_AUTHOR, T_AUTHOR.ID.equal(1)); + assertEquals(2, create().selectCount().from(T_AUTHOR).fetchOne(0)); + assertEquals(1, (int) author.getId()); + assertEquals(AUTHOR_FIRST_NAMES.get(0), author.getFirstName()); + assertEquals("Frisch", author.getLastName()); + + // Test updating with a negative condition + // --------------------------------------- + assertEquals(0, + ora().mergeInto(T_AUTHOR) + .usingDual() + .on(T_AUTHOR.ID.equal(1)) + .whenMatchedThenUpdate() + .set(T_AUTHOR.LAST_NAME, "Frisch") + .where(T_AUTHOR.ID.equal(3)) + .execute()); + + author = create().fetchOne(T_AUTHOR, T_AUTHOR.ID.equal(1)); + assertEquals(2, create().selectCount().from(T_AUTHOR).fetchOne(0)); + assertEquals(1, (int) author.getId()); + assertEquals(AUTHOR_FIRST_NAMES.get(0), author.getFirstName()); + assertEquals("Frisch", author.getLastName()); + + // Test deleting + // ------------- + // ON DELETE CASCADE doesn't work with MERGE...? + ora().delete(T_BOOK).execute(); + + assertEquals(1, + ora().mergeInto(T_AUTHOR) + .usingDual() + .on(trueCondition()) + .whenMatchedThenUpdate() + .set(T_AUTHOR.LAST_NAME, "Frisch") + .where(T_AUTHOR.ID.equal(2)) + .deleteWhere(T_AUTHOR.ID.equal(2)) + .execute()); + + author = create().fetchOne(T_AUTHOR, T_AUTHOR.ID.equal(1)); + assertEquals(1, create().selectCount().from(T_AUTHOR).fetchOne(0)); + assertEquals(1, (int) author.getId()); + assertEquals(AUTHOR_FIRST_NAMES.get(0), author.getFirstName()); + assertEquals("Frisch", author.getLastName()); + + // Test inserting + // -------------- + assertEquals(0, + ora().mergeInto(T_AUTHOR) + .usingDual() + .on(trueCondition()) + .whenNotMatchedThenInsert( + T_AUTHOR.ID, + T_AUTHOR.FIRST_NAME, + T_AUTHOR.LAST_NAME) + .values(3, "Yvette", "Z'Graggen") + .where(falseCondition()) + .execute()); + + // No tests on results + } + + @Test + public void testOracleDateAsTimestamp() throws Exception { + Timestamp now = new Timestamp(System.currentTimeMillis() / 1000 * 1000); + + // A record with nulls + // ------------------- + DateAsTimestampT_976Record record = ora().newRecord(DATE_AS_TIMESTAMP_T_976); + record.setId(1); + assertEquals(1, record.store()); + assertNull(record.getD()); + assertNull(record.getT()); + assertNull(record.getO()); + + record.refresh(); + assertNull(record.getD()); + assertNull(record.getT()); + assertNull(record.getO()); + assertEquals(record, ora().fetchOne(DATE_AS_TIMESTAMP_T_976, DATE_AS_TIMESTAMP_T_976.DATE_AS_TIMESTAMP_ID.equal(1))); + + // A record with values + // -------------------- + DateAsTimestampT_976ObjectTypeRecord o = ora().newRecord(DATE_AS_TIMESTAMP_T_976_OBJECT_TYPE); + o.setD(now); + // [#1034] TODO: Check proper use of Timestamp in array records + DateAsTimestampT_976VarrayTypeRecord t = new DateAsTimestampT_976VarrayTypeRecord(ora()); +// t.set(now, now); + + record = ora().newRecord(DATE_AS_TIMESTAMP_T_976); + record.setId(2); + record.setD(now); + record.setO(o); + record.setT(t); + record.store(); + assertEquals(record, ora().fetchOne(DATE_AS_TIMESTAMP_T_976, DATE_AS_TIMESTAMP_T_976.DATE_AS_TIMESTAMP_ID.equal(2))); + + // Procedures and packages + // ----------------------- + assertEquals(now, org.jooq.test.oracle2.generatedclasses.Routines.p_976(ora(), now)); + assertEquals(now, org.jooq.test.oracle2.generatedclasses.Routines.f_976(ora(), now)); + assertEquals(now, ora().select(org.jooq.test.oracle2.generatedclasses.Routines.f_976(now)).fetchOne(0)); + + assertEquals(now, org.jooq.test.oracle2.generatedclasses.packages.DateAsTimestampPkg_976.p_976(ora(), now)); + assertEquals(now, org.jooq.test.oracle2.generatedclasses.packages.DateAsTimestampPkg_976.f_976(ora(), now)); + assertEquals(now, ora().select(org.jooq.test.oracle2.generatedclasses.packages.DateAsTimestampPkg_976.f_976(now)).fetchOne(0)); + } + + @Test + public void testOracleFunctions() { + Record user = ora().select( + sysContext("USERENV", "SESSION_USER"), + currentUser()).fetchOne(); + + assertEquals(user.getValue(0), user.getValue(1)); + } +} diff --git a/jOOQ-test/src/org/jooq/test/jOOQOracleTestInline.java b/jOOQ-test/src/org/jooq/test/jOOQOracleTestInline.java new file mode 100644 index 00000000000..625dd1d0dc7 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/jOOQOracleTestInline.java @@ -0,0 +1,56 @@ +/** + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com + * All rights reserved. + * + * This software is licensed to you under the Apache License, Version 2.0 + * (the "License"); You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * 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 "jOOQ" 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 COPYRIGHT OWNER 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. + */ + +package org.jooq.test; + +import org.jooq.conf.Settings; +import org.jooq.conf.StatementType; +import org.jooq.test.oracle.generatedclasses.test.TestFactory; + + +/** + * @author Lukas Eder + */ +public class jOOQOracleTestInline extends jOOQOracleTest { + + @Override + protected TestFactory create(Settings settings) { + settings = (settings != null) ? settings : new Settings(); + settings.withStatementType(StatementType.STATIC_STATEMENT); + settings.withRenderFormatted(true); + return new TestFactory(getConnection(), settings); + } +} \ No newline at end of file diff --git a/jOOQ-test/src/org/jooq/test/jOOQPostgresTest.java b/jOOQ-test/src/org/jooq/test/jOOQPostgresTest.java new file mode 100644 index 00000000000..4ee66e41090 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/jOOQPostgresTest.java @@ -0,0 +1,819 @@ +/** + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com + * All rights reserved. + * + * This software is licensed to you under the Apache License, Version 2.0 + * (the "License"); You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * 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 "jOOQ" 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 COPYRIGHT OWNER 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. + */ + +package org.jooq.test; + +import static org.jooq.test.postgres.generatedclasses.Tables.T_639_NUMBERS_TABLE; +import static org.jooq.test.postgres.generatedclasses.Tables.T_658_REF; +import static org.jooq.test.postgres.generatedclasses.Tables.T_725_LOB_TEST; +import static org.jooq.test.postgres.generatedclasses.Tables.T_785; +import static org.jooq.test.postgres.generatedclasses.Tables.T_959; +import static org.jooq.test.postgres.generatedclasses.Tables.T_ARRAYS; +import static org.jooq.test.postgres.generatedclasses.Tables.T_AUTHOR; +import static org.jooq.test.postgres.generatedclasses.Tables.T_BOOK; +import static org.jooq.test.postgres.generatedclasses.Tables.T_BOOK_STORE; +import static org.jooq.test.postgres.generatedclasses.Tables.T_BOOK_TO_BOOK_STORE; +import static org.jooq.test.postgres.generatedclasses.Tables.T_BOOLEANS; +import static org.jooq.test.postgres.generatedclasses.Tables.T_DATES; +import static org.jooq.test.postgres.generatedclasses.Tables.T_IDENTITY; +import static org.jooq.test.postgres.generatedclasses.Tables.T_IDENTITY_PK; +import static org.jooq.test.postgres.generatedclasses.Tables.T_TRIGGERS; +import static org.jooq.test.postgres.generatedclasses.Tables.V_AUTHOR; +import static org.jooq.test.postgres.generatedclasses.Tables.V_BOOK; +import static org.jooq.test.postgres.generatedclasses.Tables.V_LIBRARY; +import static org.junit.Assert.assertEquals; + +import java.math.BigDecimal; +import java.math.BigInteger; +import java.sql.Date; +import java.util.List; + +import org.jooq.ArrayRecord; +import org.jooq.DataType; +import org.jooq.Field; +import org.jooq.Record; +import org.jooq.Result; +import org.jooq.Table; +import org.jooq.TableField; +import org.jooq.UDTRecord; +import org.jooq.UpdatableTable; +import org.jooq.conf.Settings; +import org.jooq.impl.Factory; +import org.jooq.test._.converters.Boolean_10; +import org.jooq.test._.converters.Boolean_TF_LC; +import org.jooq.test._.converters.Boolean_TF_UC; +import org.jooq.test._.converters.Boolean_YES_NO_LC; +import org.jooq.test._.converters.Boolean_YES_NO_UC; +import org.jooq.test._.converters.Boolean_YN_LC; +import org.jooq.test._.converters.Boolean_YN_UC; +import org.jooq.test.postgres.generatedclasses.PublicFactory; +import org.jooq.test.postgres.generatedclasses.Routines; +import org.jooq.test.postgres.generatedclasses.Sequences; +import org.jooq.test.postgres.generatedclasses.enums.U_959; +import org.jooq.test.postgres.generatedclasses.tables.records.TArraysRecord; +import org.jooq.test.postgres.generatedclasses.tables.records.TAuthorRecord; +import org.jooq.test.postgres.generatedclasses.tables.records.TBookRecord; +import org.jooq.test.postgres.generatedclasses.tables.records.TBookStoreRecord; +import org.jooq.test.postgres.generatedclasses.tables.records.TBookToBookStoreRecord; +import org.jooq.test.postgres.generatedclasses.tables.records.TBooleansRecord; +import org.jooq.test.postgres.generatedclasses.tables.records.TDatesRecord; +import org.jooq.test.postgres.generatedclasses.tables.records.TIdentityPkRecord; +import org.jooq.test.postgres.generatedclasses.tables.records.TIdentityRecord; +import org.jooq.test.postgres.generatedclasses.tables.records.TTriggersRecord; +import org.jooq.test.postgres.generatedclasses.tables.records.T_639NumbersTableRecord; +import org.jooq.test.postgres.generatedclasses.tables.records.T_658RefRecord; +import org.jooq.test.postgres.generatedclasses.tables.records.T_725LobTestRecord; +import org.jooq.test.postgres.generatedclasses.tables.records.T_785Record; +import org.jooq.test.postgres.generatedclasses.tables.records.VLibraryRecord; +import org.jooq.test.postgres.generatedclasses.tables.records.XUnusedRecord; +import org.jooq.test.postgres.generatedclasses.udt.UAddressType; +import org.jooq.test.postgres.generatedclasses.udt.UStreetType; +import org.jooq.tools.unsigned.UByte; +import org.jooq.tools.unsigned.UInteger; +import org.jooq.tools.unsigned.ULong; +import org.jooq.tools.unsigned.UShort; +import org.jooq.util.postgres.PostgresDataType; + +import org.junit.Test; + + +/** + * @author Lukas Eder + */ +public class jOOQPostgresTest extends jOOQAbstractTest< + TAuthorRecord, + TBookRecord, + TBookStoreRecord, + TBookToBookStoreRecord, + XUnusedRecord, + VLibraryRecord, + TArraysRecord, + TDatesRecord, + TBooleansRecord, + XUnusedRecord, + TTriggersRecord, + XUnusedRecord, + TIdentityRecord, + TIdentityPkRecord, + T_658RefRecord, + T_725LobTestRecord, + T_639NumbersTableRecord, + T_785Record> { + + @Override + protected Factory create(Settings settings) { + return new PublicFactory(getConnection(), settings); + } + + @Override + protected UpdatableTable TAuthor() { + return T_AUTHOR; + } + + @Override + protected TableField TAuthor_LAST_NAME() { + return T_AUTHOR.LAST_NAME; + } + + @Override + protected TableField TAuthor_FIRST_NAME() { + return T_AUTHOR.FIRST_NAME; + } + + @Override + protected TableField TAuthor_DATE_OF_BIRTH() { + return T_AUTHOR.DATE_OF_BIRTH; + } + + @Override + protected TableField TAuthor_YEAR_OF_BIRTH() { + return T_AUTHOR.YEAR_OF_BIRTH; + } + + @Override + protected TableField TAuthor_ID() { + return T_AUTHOR.ID; + } + + @Override + protected TableField> TAuthor_ADDRESS() { + return T_AUTHOR.ADDRESS; + } + + @Override + protected UpdatableTable TBook() { + return T_BOOK; + } + + @Override + protected TableField TBook_ID() { + return T_BOOK.ID; + } + + @Override + protected TableField TBook_AUTHOR_ID() { + return T_BOOK.AUTHOR_ID; + } + + @Override + protected TableField TBook_TITLE() { + return T_BOOK.TITLE; + } + + @Override + protected UpdatableTable TBookStore() { + return T_BOOK_STORE; + } + + @Override + protected TableField TBookStore_NAME() { + return T_BOOK_STORE.NAME; + } + + @Override + protected UpdatableTable TBookToBookStore() { + return T_BOOK_TO_BOOK_STORE; + } + + @Override + protected UpdatableTable TBookSale() { + return null; + } + + @Override + protected TableField TBookToBookStore_BOOK_ID() { + return T_BOOK_TO_BOOK_STORE.BOOK_ID; + } + + @Override + protected TableField TBookToBookStore_BOOK_STORE_NAME() { + return T_BOOK_TO_BOOK_STORE.BOOK_STORE_NAME; + } + + @Override + protected TableField TBookToBookStore_STOCK() { + return T_BOOK_TO_BOOK_STORE.STOCK; + } + + @Override + protected Table T725() { + return T_725_LOB_TEST; + } + + @Override + protected TableField T725_ID() { + return T_725_LOB_TEST.ID; + } + + @Override + protected TableField T725_LOB() { + return T_725_LOB_TEST.LOB; + } + + @Override + protected Table T785() { + return T_785; + } + + @Override + protected TableField T785_ID() { + return T_785.ID; + } + + @Override + protected TableField T785_NAME() { + return T_785.NAME; + } + + @Override + protected TableField T785_VALUE() { + return T_785.VALUE; + } + + @Override + protected Table TUnsigned() { + return null; + } + + @Override + protected TableField TUnsigned_U_BYTE() { + return null; + } + + @Override + protected TableField TUnsigned_U_SHORT() { + return null; + } + + @Override + protected TableField TUnsigned_U_INT() { + return null; + } + + @Override + protected TableField TUnsigned_U_LONG() { + return null; + } + + @Override + protected Table TDates() { + return T_DATES; + } + + @Override + protected UpdatableTable TBooleans() { + return T_BOOLEANS; + } + + @Override + protected TableField TBooleans_ID() { + return T_BOOLEANS.ID; + } + + @Override + protected TableField TBooleans_BOOLEAN_10() { + return T_BOOLEANS.ONE_ZERO; + } + + @Override + protected TableField TBooleans_Boolean_TF_LC() { + return T_BOOLEANS.TRUE_FALSE_LC; + } + + @Override + protected TableField TBooleans_Boolean_TF_UC() { + return T_BOOLEANS.TRUE_FALSE_UC; + } + + @Override + protected TableField TBooleans_Boolean_YN_LC() { + return T_BOOLEANS.Y_N_LC; + } + + @Override + protected TableField TBooleans_Boolean_YN_UC() { + return T_BOOLEANS.Y_N_UC; + } + + @Override + protected TableField TBooleans_Boolean_YES_NO_LC() { + return T_BOOLEANS.YES_NO_LC; + } + + @Override + protected TableField TBooleans_Boolean_YES_NO_UC() { + return T_BOOLEANS.YES_NO_UC; + } + + @Override + protected TableField TBooleans_VC() { + return T_BOOLEANS.VC_BOOLEAN; + } + + @Override + protected TableField TBooleans_C() { + return T_BOOLEANS.C_BOOLEAN; + } + + @Override + protected TableField TBooleans_N() { + return T_BOOLEANS.N_BOOLEAN; + } + + @Override + protected Table T658() { + return T_658_REF; + } + + @Override + protected Table T639() { + return T_639_NUMBERS_TABLE; + } + + @Override + protected TableField T639_ID() { + return T_639_NUMBERS_TABLE.ID; + } + + @Override + protected TableField T639_BIG_DECIMAL() { + return T_639_NUMBERS_TABLE.BIG_DECIMAL; + } + + @Override + protected TableField T639_BIG_INTEGER() { + return T_639_NUMBERS_TABLE.BIG_INTEGER; + } + + @Override + protected TableField T639_BYTE() { + return null; + } + + @Override + protected TableField T639_BYTE_DECIMAL() { + return T_639_NUMBERS_TABLE.BYTE_DECIMAL; + } + + @Override + protected TableField T639_SHORT() { + return T_639_NUMBERS_TABLE.SHORT; + } + + @Override + protected TableField T639_SHORT_DECIMAL() { + return T_639_NUMBERS_TABLE.SHORT_DECIMAL; + } + + @Override + protected TableField T639_INTEGER() { + return T_639_NUMBERS_TABLE.INTEGER; + } + + @Override + protected TableField T639_INTEGER_DECIMAL() { + return T_639_NUMBERS_TABLE.INTEGER_DECIMAL; + } + + @Override + protected TableField T639_LONG() { + return T_639_NUMBERS_TABLE.LONG; + } + + @Override + protected TableField T639_LONG_DECIMAL() { + return T_639_NUMBERS_TABLE.LONG_DECIMAL; + } + + @Override + protected TableField T639_DOUBLE() { + return T_639_NUMBERS_TABLE.DOUBLE; + } + + @Override + protected TableField T639_FLOAT() { + return T_639_NUMBERS_TABLE.FLOAT; + } + + @Override + protected Table TArrays() { + return T_ARRAYS; + } + + @Override + protected TableField TArrays_ID() { + return T_ARRAYS.ID; + } + + @Override + protected TableField TArrays_STRING() { + return T_ARRAYS.STRING_ARRAY; + } + + @Override + protected TableField TArrays_NUMBER() { + return T_ARRAYS.NUMBER_ARRAY; + } + + @Override + protected TableField TArrays_DATE() { + return T_ARRAYS.DATE_ARRAY; + } + + @Override + protected TableField[]> TArrays_UDT() { + return T_ARRAYS.UDT_ARRAY; + } + + @Override + protected TableField> TArrays_STRING_R() { + return null; + } + + @Override + protected TableField> TArrays_NUMBER_R() { + return null; + } + + @Override + protected TableField> TArrays_DATE_R() { + return null; + } + + @Override + protected TableField> TArrays_NUMBER_LONG_R() { + return null; + } + + @Override + protected TableField> TBook_LANGUAGE_ID() { + return T_BOOK.LANGUAGE_ID; + } + + @Override + protected TableField TBook_CONTENT_TEXT() { + return T_BOOK.CONTENT_TEXT; + } + + @Override + protected TableField TBook_PUBLISHED_IN() { + return T_BOOK.PUBLISHED_IN; + } + + @Override + protected TableField TBook_CONTENT_PDF() { + return T_BOOK.CONTENT_PDF; + } + + @Override + protected TableField> TBook_STATUS() { + return T_BOOK.STATUS; + } + + @Override + protected Table VLibrary() { + return V_LIBRARY; + } + + @Override + protected TableField VLibrary_TITLE() { + return V_LIBRARY.TITLE; + } + + @Override + protected TableField VLibrary_AUTHOR() { + return V_LIBRARY.AUTHOR; + } + + @Override + protected Table VAuthor() { + return V_AUTHOR; + } + + @Override + protected Table VBook() { + return V_BOOK; + } + + @Override + protected UpdatableTable TDirectory() { + return null; + } + + @Override + protected TableField TDirectory_ID() { + return null; + } + + @Override + protected TableField TDirectory_PARENT_ID() { + return null; + } + + @Override + protected TableField TDirectory_IS_DIRECTORY() { + return null; + } + + @Override + protected TableField TDirectory_NAME() { + return null; + } + + @Override + protected UpdatableTable TTriggers() { + return T_TRIGGERS; + } + + @Override + protected TableField TTriggers_ID_GENERATED() { + return T_TRIGGERS.ID_GENERATED; + } + + @Override + protected TableField TTriggers_ID() { + return T_TRIGGERS.ID; + } + + @Override + protected TableField TTriggers_COUNTER() { + return T_TRIGGERS.COUNTER; + } + + @Override + protected Table TIdentity() { + return T_IDENTITY; + } + + @Override + protected TableField TIdentity_ID() { + return T_IDENTITY.ID; + } + + @Override + protected TableField TIdentity_VAL() { + return T_IDENTITY.VAL; + } + + @Override + protected UpdatableTable TIdentityPK() { + return T_IDENTITY_PK; + } + + @Override + protected TableField TIdentityPK_ID() { + return T_IDENTITY_PK.ID; + } + + @Override + protected TableField TIdentityPK_VAL() { + return T_IDENTITY_PK.VAL; + } + + @Override + protected Field FAuthorExistsField(String authorName) { + return Routines.fAuthorExists(authorName); + } + + @Override + protected Field FOneField() { + return Routines.fOne(); + } + + @Override + protected Field FNumberField(Number n) { + return Routines.fNumber((Integer) n); + } + + @SuppressWarnings("unchecked") + @Override + protected Field FNumberField(Field n) { + return Routines.fNumber((Field) n); + } + + @Override + protected Field F317Field(Number n1, Number n2, Number n3, Number n4) { + return Routines.f317((Integer) n1, (Integer) n2, (Integer) n3, (Integer) n4); + } + + @SuppressWarnings("unchecked") + @Override + protected Field F317Field(Field n1, Field n2, + Field n3, Field n4) { + return Routines.f317((Field) n1, (Field) n2, (Field) n3, (Field) n4); + } + + @Override + protected Field> FGetOneCursorField(Integer[] array) { + return Routines.fGetOneCursor(array); + } + + @Override + protected Field FArrays1Field(Field array) { + return Routines.fArrays1(array); + } + + @Override + protected Field FArrays2Field(Field array) { + return Routines.fArrays2(array); + } + + @Override + protected Field FArrays3Field(Field array) { + return Routines.fArrays3(array); + } + + @Override + protected > Field FArrays1Field_R(Field array) { + return null; + } + + @Override + protected > Field FArrays2Field_R(Field array) { + return null; + } + + @Override + protected > Field FArrays3Field_R(Field array) { + return null; + } + + @Override + protected Class> cUAddressType() { + return UAddressType.U_ADDRESS_TYPE.getRecordType(); + } + + @Override + protected Class> cUStreetType() { + return UStreetType.U_STREET_TYPE.getRecordType(); + } + + @Override + protected Class cRoutines() { + return Routines.class; + } + + @Override + protected boolean supportsOUTParameters() { + return true; + } + + @Override + protected boolean supportsReferences() { + return true; + } + + @Override + protected boolean supportsRecursiveQueries() { + return false; + } + + @Override + protected Class cLibrary() { + return null; + } + + @Override + protected Class cSequences() { + return Sequences.class; + } + + @Override + protected DataType[] getCastableDataTypes() { + return new DataType[] { + PostgresDataType.ACLITEM, + PostgresDataType.BIGINT, + PostgresDataType.BIT, + PostgresDataType.BITVARYING, + PostgresDataType.BOOL, + PostgresDataType.BOOLEAN, + PostgresDataType.BYTEA, + PostgresDataType.CHAR, + PostgresDataType.CHARACTER, + PostgresDataType.CHARACTERVARYING, + PostgresDataType.CID, + PostgresDataType.DATE, + PostgresDataType.DECIMAL, + PostgresDataType.DOUBLEPRECISION, + PostgresDataType.FLOAT4, + PostgresDataType.FLOAT8, + PostgresDataType.INT, + PostgresDataType.INT2, + PostgresDataType.INT4, + PostgresDataType.INT8, + PostgresDataType.INTEGER, + PostgresDataType.MONEY, + PostgresDataType.NAME, + PostgresDataType.NUMERIC, + PostgresDataType.OID, + PostgresDataType.OIDVECTOR, + PostgresDataType.REAL, + PostgresDataType.REGPROC, + PostgresDataType.SMALLINT, + PostgresDataType.TEXT, + PostgresDataType.TID, + PostgresDataType.TIME, + PostgresDataType.TIMESTAMP, + PostgresDataType.TIMESTAMPTZ, + PostgresDataType.TIMESTAMPWITHOUTTIMEZONE, + PostgresDataType.TIMESTAMPWITHTIMEZONE, + PostgresDataType.TIMETZ, + PostgresDataType.TIMEWITHOUTTIMEZONE, + PostgresDataType.TIMEWITHTIMEZONE, + }; + } + + @Test + public void testPostgresJavaKeywordEnums() throws Exception { + reset = false; + + assertEquals(3, + create().insertInto(T_959) + .set(T_959.JAVA_KEYWORDS, U_959.public_) + .newRecord() + .set(T_959.JAVA_KEYWORDS, U_959.abstract_) + .newRecord() + .set(T_959.JAVA_KEYWORDS, U_959.class_) + .execute()); + + List result = + create().selectFrom(T_959) + .orderBy(T_959.JAVA_KEYWORDS) + .fetch(T_959.JAVA_KEYWORDS); + + assertEquals(3, result.size()); + assertEquals(U_959.abstract_, result.get(0)); + assertEquals(U_959.class_, result.get(1)); + assertEquals(U_959.public_, result.get(2)); + } + + @Test + public void testPostgresArrayOperations() throws Exception { + + // [#1107] The contains operator @> is implemented in Field.contains() + // ------------------------------------------------------------------- + assertEquals(0, + create().selectCount() + .from(T_ARRAYS) + .where(T_ARRAYS.NUMBER_ARRAY.contains((Integer[])null)) + .fetchOne(0)); + + assertEquals(3, + create().selectCount() + .from(T_ARRAYS) + .where(T_ARRAYS.NUMBER_ARRAY.contains(new Integer[0])) + .fetchOne(0)); + + assertEquals(2, + create().selectCount() + .from(T_ARRAYS) + .where(T_ARRAYS.NUMBER_ARRAY.contains(new Integer[] { 1 })) + .fetchOne(0)); + + assertEquals(1, + create().selectCount() + .from(T_ARRAYS) + .where(T_ARRAYS.NUMBER_ARRAY.contains(new Integer[] { 1, 2 })) + .fetchOne(0)); + + assertEquals(0, + create().selectCount() + .from(T_ARRAYS) + .where(T_ARRAYS.NUMBER_ARRAY.contains(new Integer[] { 1, 2, 3 })) + .fetchOne(0)); + + } +} diff --git a/jOOQ-test/src/org/jooq/test/jOOQSQLServerTest.java b/jOOQ-test/src/org/jooq/test/jOOQSQLServerTest.java new file mode 100644 index 00000000000..48c73bd1ad5 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/jOOQSQLServerTest.java @@ -0,0 +1,730 @@ +/** + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com + * All rights reserved. + * + * This software is licensed to you under the Apache License, Version 2.0 + * (the "License"); You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * 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 "jOOQ" 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 COPYRIGHT OWNER 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. + */ + +package org.jooq.test; + +import static org.jooq.test.sqlserver.generatedclasses.Tables.T_639_NUMBERS_TABLE; +import static org.jooq.test.sqlserver.generatedclasses.Tables.T_725_LOB_TEST; +import static org.jooq.test.sqlserver.generatedclasses.Tables.T_785; +import static org.jooq.test.sqlserver.generatedclasses.Tables.T_AUTHOR; +import static org.jooq.test.sqlserver.generatedclasses.Tables.T_BOOK; +import static org.jooq.test.sqlserver.generatedclasses.Tables.T_BOOK_STORE; +import static org.jooq.test.sqlserver.generatedclasses.Tables.T_BOOK_TO_BOOK_STORE; +import static org.jooq.test.sqlserver.generatedclasses.Tables.T_BOOLEANS; +import static org.jooq.test.sqlserver.generatedclasses.Tables.T_DATES; +import static org.jooq.test.sqlserver.generatedclasses.Tables.T_IDENTITY; +import static org.jooq.test.sqlserver.generatedclasses.Tables.T_IDENTITY_PK; +import static org.jooq.test.sqlserver.generatedclasses.Tables.T_TRIGGERS; +import static org.jooq.test.sqlserver.generatedclasses.Tables.V_AUTHOR; +import static org.jooq.test.sqlserver.generatedclasses.Tables.V_BOOK; +import static org.jooq.test.sqlserver.generatedclasses.Tables.V_LIBRARY; + +import java.math.BigDecimal; +import java.math.BigInteger; +import java.sql.Date; + +import org.jooq.ArrayRecord; +import org.jooq.DataType; +import org.jooq.Field; +import org.jooq.Record; +import org.jooq.Result; +import org.jooq.Table; +import org.jooq.TableField; +import org.jooq.UDTRecord; +import org.jooq.UpdatableTable; +import org.jooq.conf.Settings; +import org.jooq.impl.Factory; +import org.jooq.test._.converters.Boolean_10; +import org.jooq.test._.converters.Boolean_TF_LC; +import org.jooq.test._.converters.Boolean_TF_UC; +import org.jooq.test._.converters.Boolean_YES_NO_LC; +import org.jooq.test._.converters.Boolean_YES_NO_UC; +import org.jooq.test._.converters.Boolean_YN_LC; +import org.jooq.test._.converters.Boolean_YN_UC; +import org.jooq.test.sqlserver.generatedclasses.DboFactory; +import org.jooq.test.sqlserver.generatedclasses.Routines; +import org.jooq.test.sqlserver.generatedclasses.tables.T_658Ref; +import org.jooq.test.sqlserver.generatedclasses.tables.records.TAuthorRecord; +import org.jooq.test.sqlserver.generatedclasses.tables.records.TBookRecord; +import org.jooq.test.sqlserver.generatedclasses.tables.records.TBookStoreRecord; +import org.jooq.test.sqlserver.generatedclasses.tables.records.TBookToBookStoreRecord; +import org.jooq.test.sqlserver.generatedclasses.tables.records.TBooleansRecord; +import org.jooq.test.sqlserver.generatedclasses.tables.records.TDatesRecord; +import org.jooq.test.sqlserver.generatedclasses.tables.records.TIdentityPkRecord; +import org.jooq.test.sqlserver.generatedclasses.tables.records.TIdentityRecord; +import org.jooq.test.sqlserver.generatedclasses.tables.records.TTriggersRecord; +import org.jooq.test.sqlserver.generatedclasses.tables.records.T_639NumbersTableRecord; +import org.jooq.test.sqlserver.generatedclasses.tables.records.T_658RefRecord; +import org.jooq.test.sqlserver.generatedclasses.tables.records.T_725LobTestRecord; +import org.jooq.test.sqlserver.generatedclasses.tables.records.T_785Record; +import org.jooq.test.sqlserver.generatedclasses.tables.records.VLibraryRecord; +import org.jooq.test.sqlserver.generatedclasses.tables.records.XUnusedRecord; +import org.jooq.tools.unsigned.UByte; +import org.jooq.tools.unsigned.UInteger; +import org.jooq.tools.unsigned.ULong; +import org.jooq.tools.unsigned.UShort; +import org.jooq.util.sqlserver.SQLServerDataType; + +/** + * @author Lukas Eder + */ +public class jOOQSQLServerTest extends jOOQAbstractTest< + TAuthorRecord, + TBookRecord, + TBookStoreRecord, + TBookToBookStoreRecord, + XUnusedRecord, + VLibraryRecord, + XUnusedRecord, + TDatesRecord, + TBooleansRecord, + XUnusedRecord, + TTriggersRecord, + XUnusedRecord, + TIdentityRecord, + TIdentityPkRecord, + T_658RefRecord, + T_725LobTestRecord, + T_639NumbersTableRecord, + T_785Record> { + + @Override + protected Factory create(Settings settings) { + return new DboFactory(getConnection(), settings); + } + + @Override + protected UpdatableTable TAuthor() { + return T_AUTHOR; + } + + @Override + protected TableField TAuthor_LAST_NAME() { + return T_AUTHOR.LAST_NAME; + } + + @Override + protected TableField TAuthor_FIRST_NAME() { + return T_AUTHOR.FIRST_NAME; + } + + @Override + protected TableField TAuthor_DATE_OF_BIRTH() { + return T_AUTHOR.DATE_OF_BIRTH; + } + + @Override + protected TableField TAuthor_YEAR_OF_BIRTH() { + return T_AUTHOR.YEAR_OF_BIRTH; + } + + @Override + protected TableField TAuthor_ID() { + return T_AUTHOR.ID; + } + + @Override + protected TableField> TAuthor_ADDRESS() { + return null; + } + + @Override + protected UpdatableTable TBook() { + return T_BOOK; + } + + @Override + protected TableField TBook_ID() { + return T_BOOK.ID; + } + + @Override + protected TableField TBook_AUTHOR_ID() { + return T_BOOK.AUTHOR_ID; + } + + @Override + protected TableField TBook_TITLE() { + return T_BOOK.TITLE; + } + + @Override + protected UpdatableTable TBookStore() { + return T_BOOK_STORE; + } + + @Override + protected TableField TBookStore_NAME() { + return T_BOOK_STORE.NAME; + } + + @Override + protected UpdatableTable TBookToBookStore() { + return T_BOOK_TO_BOOK_STORE; + } + + @Override + protected UpdatableTable TBookSale() { + return null; + } + + @Override + protected TableField TBookToBookStore_BOOK_ID() { + return T_BOOK_TO_BOOK_STORE.BOOK_ID; + } + + @Override + protected TableField TBookToBookStore_BOOK_STORE_NAME() { + return T_BOOK_TO_BOOK_STORE.BOOK_STORE_NAME; + } + + @Override + protected TableField TBookToBookStore_STOCK() { + return T_BOOK_TO_BOOK_STORE.STOCK; + } + + @Override + protected Table T725() { + return T_725_LOB_TEST; + } + + @Override + protected TableField T725_ID() { + return T_725_LOB_TEST.ID; + } + + @Override + protected TableField T725_LOB() { + return T_725_LOB_TEST.LOB; + } + + @Override + protected Table T658() { + return T_658Ref.T_658_REF; + } + + @Override + protected Table T639() { + return T_639_NUMBERS_TABLE; + } + + @Override + protected TableField T639_ID() { + return T_639_NUMBERS_TABLE.ID; + } + + @Override + protected TableField T639_BIG_DECIMAL() { + return T_639_NUMBERS_TABLE.BIG_DECIMAL; + } + + @Override + protected TableField T639_BIG_INTEGER() { + return T_639_NUMBERS_TABLE.BIG_INTEGER; + } + + @Override + protected TableField T639_BYTE() { + return T_639_NUMBERS_TABLE.BYTE; + } + + @Override + protected TableField T639_BYTE_DECIMAL() { + return T_639_NUMBERS_TABLE.BYTE_DECIMAL; + } + + @Override + protected TableField T639_SHORT() { + return T_639_NUMBERS_TABLE.SHORT; + } + + @Override + protected TableField T639_SHORT_DECIMAL() { + return T_639_NUMBERS_TABLE.SHORT_DECIMAL; + } + + @Override + protected TableField T639_INTEGER() { + return T_639_NUMBERS_TABLE.INTEGER; + } + + @Override + protected TableField T639_INTEGER_DECIMAL() { + return T_639_NUMBERS_TABLE.INTEGER_DECIMAL; + } + + @Override + protected TableField T639_LONG() { + return T_639_NUMBERS_TABLE.LONG; + } + + @Override + protected TableField T639_LONG_DECIMAL() { + return T_639_NUMBERS_TABLE.LONG_DECIMAL; + } + + @Override + protected TableField T639_DOUBLE() { + return T_639_NUMBERS_TABLE.DOUBLE; + } + + @Override + protected TableField T639_FLOAT() { + return T_639_NUMBERS_TABLE.FLOAT; + } + + @Override + protected Table T785() { + return T_785; + } + + @Override + protected TableField T785_ID() { + return T_785.ID; + } + + @Override + protected TableField T785_NAME() { + return T_785.NAME; + } + + @Override + protected TableField T785_VALUE() { + return T_785.VALUE; + } + + @Override + protected Table TUnsigned() { + return null; + } + + @Override + protected TableField TUnsigned_U_BYTE() { + return null; + } + + @Override + protected TableField TUnsigned_U_SHORT() { + return null; + } + + @Override + protected TableField TUnsigned_U_INT() { + return null; + } + + @Override + protected TableField TUnsigned_U_LONG() { + return null; + } + + @Override + protected Table TDates() { + return T_DATES; + } + + @Override + protected UpdatableTable TBooleans() { + return T_BOOLEANS; + } + + @Override + protected TableField TBooleans_ID() { + return T_BOOLEANS.ID; + } + + @Override + protected TableField TBooleans_BOOLEAN_10() { + return T_BOOLEANS.ONE_ZERO; + } + + @Override + protected TableField TBooleans_Boolean_TF_LC() { + return T_BOOLEANS.TRUE_FALSE_LC; + } + + @Override + protected TableField TBooleans_Boolean_TF_UC() { + return T_BOOLEANS.TRUE_FALSE_UC; + } + + @Override + protected TableField TBooleans_Boolean_YN_LC() { + return T_BOOLEANS.Y_N_LC; + } + + @Override + protected TableField TBooleans_Boolean_YN_UC() { + return T_BOOLEANS.Y_N_UC; + } + + @Override + protected TableField TBooleans_Boolean_YES_NO_LC() { + return T_BOOLEANS.YES_NO_LC; + } + + @Override + protected TableField TBooleans_Boolean_YES_NO_UC() { + return T_BOOLEANS.YES_NO_UC; + } + + @Override + protected TableField TBooleans_VC() { + return T_BOOLEANS.VC_BOOLEAN; + } + + @Override + protected TableField TBooleans_C() { + return T_BOOLEANS.C_BOOLEAN; + } + + @Override + protected TableField TBooleans_N() { + return T_BOOLEANS.N_BOOLEAN; + } + + @Override + protected Table TArrays() { + return null; + } + + @Override + protected TableField TArrays_ID() { + return null; + } + + @Override + protected TableField TArrays_STRING() { + return null; + } + + @Override + protected TableField TArrays_NUMBER() { + return null; + } + + @Override + protected TableField TArrays_DATE() { + return null; + } + + @Override + protected TableField[]> TArrays_UDT() { + return null; + } + + @Override + protected TableField> TArrays_STRING_R() { + return null; + } + + @Override + protected TableField> TArrays_NUMBER_R() { + return null; + } + + @Override + protected TableField> TArrays_DATE_R() { + return null; + } + + @Override + protected TableField> TArrays_NUMBER_LONG_R() { + return null; + } + + @Override + protected TableField> TBook_LANGUAGE_ID() { + return T_BOOK.LANGUAGE_ID; + } + + @Override + protected TableField TBook_PUBLISHED_IN() { + return T_BOOK.PUBLISHED_IN; + } + + @Override + protected TableField TBook_CONTENT_TEXT() { + return T_BOOK.CONTENT_TEXT; + } + + @Override + protected TableField TBook_CONTENT_PDF() { + return T_BOOK.CONTENT_PDF; + } + + @Override + protected TableField> TBook_STATUS() { + return null; + } + + @Override + protected Table VLibrary() { + return V_LIBRARY; + } + + @Override + protected TableField VLibrary_TITLE() { + return V_LIBRARY.TITLE; + } + + @Override + protected TableField VLibrary_AUTHOR() { + return V_LIBRARY.AUTHOR; + } + + @Override + protected Table VAuthor() { + return V_AUTHOR; + } + + @Override + protected Table VBook() { + return V_BOOK; + } + + @Override + protected UpdatableTable TDirectory() { + return null; + } + + @Override + protected TableField TDirectory_ID() { + return null; + } + + @Override + protected TableField TDirectory_PARENT_ID() { + return null; + } + + @Override + protected TableField TDirectory_IS_DIRECTORY() { + return null; + } + + @Override + protected TableField TDirectory_NAME() { + return null; + } + + @Override + protected UpdatableTable TTriggers() { + return T_TRIGGERS; + } + + @Override + protected TableField TTriggers_ID_GENERATED() { + return T_TRIGGERS.ID_GENERATED; + } + + @Override + protected TableField TTriggers_ID() { + return T_TRIGGERS.ID; + } + + @Override + protected TableField TTriggers_COUNTER() { + return T_TRIGGERS.COUNTER; + } + + @Override + protected Table TIdentity() { + return T_IDENTITY; + } + + @Override + protected TableField TIdentity_ID() { + return T_IDENTITY.ID; + } + + @Override + protected TableField TIdentity_VAL() { + return T_IDENTITY.VAL; + } + + @Override + protected UpdatableTable TIdentityPK() { + return T_IDENTITY_PK; + } + + @Override + protected TableField TIdentityPK_ID() { + return T_IDENTITY_PK.ID; + } + + @Override + protected TableField TIdentityPK_VAL() { + return T_IDENTITY_PK.VAL; + } + + @Override + protected Field FAuthorExistsField(String authorName) { + return Routines.fAuthorExists(authorName); + } + + @Override + protected Field FOneField() { + return Routines.fOne(); + } + + @Override + protected Field FNumberField(Number n) { + return Routines.fNumber((Integer) n); + } + + @SuppressWarnings("unchecked") + @Override + protected Field FNumberField(Field n) { + return Routines.fNumber((Field) n); + } + + @Override + protected Field F317Field(Number n1, Number n2, Number n3, Number n4) { + return Routines.f317((Integer) n1, (Integer) n2, (Integer) n3, (Integer) n4); + } + + @SuppressWarnings("unchecked") + @Override + protected Field F317Field(Field n1, Field n2, + Field n3, Field n4) { + return Routines.f317((Field) n1, (Field) n2, (Field) n3, (Field) n4); + } + + @Override + protected Field> FGetOneCursorField(Integer[] array) { + return null; + } + + @Override + protected Field FArrays1Field(Field array) { + return null; + } + + @Override + protected Field FArrays2Field(Field array) { + return null; + } + + @Override + protected Field FArrays3Field(Field array) { + return null; + } + + @Override + protected > Field FArrays1Field_R(Field array) { + return null; + } + + @Override + protected > Field FArrays2Field_R(Field array) { + return null; + } + + @Override + protected > Field FArrays3Field_R(Field array) { + return null; + } + + @Override + protected Class> cUAddressType() { + return null; + } + + @Override + protected Class> cUStreetType() { + return null; + } + + @Override + protected Class cRoutines() { + return Routines.class; + } + + @Override + protected boolean supportsOUTParameters() { + return true; + } + + @Override + protected boolean supportsReferences() { + return true; + } + + @Override + protected boolean supportsRecursiveQueries() { + return false; + } + + @Override + protected Class cLibrary() { + return null; + } + + @Override + protected Class cSequences() { + return null; + } + + @Override + protected DataType[] getCastableDataTypes() { + return new DataType[] { + SQLServerDataType.BIGINT, + SQLServerDataType.BINARY, + SQLServerDataType.BIT, + SQLServerDataType.CHAR, + SQLServerDataType.DATE, + SQLServerDataType.DATETIME, + SQLServerDataType.DECIMAL, + SQLServerDataType.FLOAT, + SQLServerDataType.IMAGE, + SQLServerDataType.INT, + SQLServerDataType.MONEY, + SQLServerDataType.NCHAR, + SQLServerDataType.NTEXT, + SQLServerDataType.NUMERIC, + SQLServerDataType.NVARCHAR, + SQLServerDataType.REAL, + SQLServerDataType.SMALLDATETIME, + SQLServerDataType.SMALLINT, + SQLServerDataType.SMALLMONEY, + SQLServerDataType.TEXT, + SQLServerDataType.TINYINT, + SQLServerDataType.VARBINARY, + SQLServerDataType.VARCHAR, + }; + } +} diff --git a/jOOQ-test/src/org/jooq/test/jOOQSQLServerTestInline.java b/jOOQ-test/src/org/jooq/test/jOOQSQLServerTestInline.java new file mode 100644 index 00000000000..436f4a42982 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/jOOQSQLServerTestInline.java @@ -0,0 +1,55 @@ +/** + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com + * All rights reserved. + * + * This software is licensed to you under the Apache License, Version 2.0 + * (the "License"); You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * 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 "jOOQ" 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 COPYRIGHT OWNER 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. + */ + +package org.jooq.test; + +import org.jooq.conf.Settings; +import org.jooq.conf.StatementType; +import org.jooq.test.sqlserver.generatedclasses.DboFactory; + + +/** + * @author Lukas Eder + */ +public class jOOQSQLServerTestInline extends jOOQSQLServerTest { + + @Override + protected DboFactory create(Settings settings) { + settings = (settings != null) ? settings : new Settings(); + settings.withStatementType(StatementType.STATIC_STATEMENT); + return new DboFactory(getConnection(), settings); + } +} \ No newline at end of file diff --git a/jOOQ-test/src/org/jooq/test/jOOQSQLiteTest.java b/jOOQ-test/src/org/jooq/test/jOOQSQLiteTest.java new file mode 100644 index 00000000000..1f4bfaf9fc2 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/jOOQSQLiteTest.java @@ -0,0 +1,734 @@ +/** + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com + * All rights reserved. + * + * This software is licensed to you under the Apache License, Version 2.0 + * (the "License"); You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * 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 "jOOQ" 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 COPYRIGHT OWNER 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. + */ + +package org.jooq.test; + +import static org.jooq.test.sqlite.generatedclasses.Tables.T_BOOK_TO_BOOK_STORE; +import static org.jooq.test.sqlite.generatedclasses.Tables.T_BOOLEANS; +import static org.jooq.test.sqlite.generatedclasses.Tables.T_DATES; +import static org.jooq.test.sqlite.generatedclasses.Tables.V_AUTHOR; +import static org.jooq.test.sqlite.generatedclasses.Tables.V_BOOK; + +import java.math.BigDecimal; +import java.math.BigInteger; +import java.sql.Date; + +import org.jooq.ArrayRecord; +import org.jooq.DataType; +import org.jooq.Field; +import org.jooq.Record; +import org.jooq.Result; +import org.jooq.Table; +import org.jooq.TableField; +import org.jooq.UDTRecord; +import org.jooq.UpdatableTable; +import org.jooq.conf.Settings; +import org.jooq.impl.Factory; +import org.jooq.test._.converters.Boolean_10; +import org.jooq.test._.converters.Boolean_TF_LC; +import org.jooq.test._.converters.Boolean_TF_UC; +import org.jooq.test._.converters.Boolean_YES_NO_LC; +import org.jooq.test._.converters.Boolean_YES_NO_UC; +import org.jooq.test._.converters.Boolean_YN_LC; +import org.jooq.test._.converters.Boolean_YN_UC; +import org.jooq.test.sqlite.generatedclasses.tables.TAuthor; +import org.jooq.test.sqlite.generatedclasses.tables.TBook; +import org.jooq.test.sqlite.generatedclasses.tables.TBookStore; +import org.jooq.test.sqlite.generatedclasses.tables.TBookToBookStore; +import org.jooq.test.sqlite.generatedclasses.tables.TBooleans; +import org.jooq.test.sqlite.generatedclasses.tables.TTriggers; +import org.jooq.test.sqlite.generatedclasses.tables.T_639NumbersTable; +import org.jooq.test.sqlite.generatedclasses.tables.T_658Ref; +import org.jooq.test.sqlite.generatedclasses.tables.T_725LobTest; +import org.jooq.test.sqlite.generatedclasses.tables.T_785; +import org.jooq.test.sqlite.generatedclasses.tables.VLibrary; +import org.jooq.test.sqlite.generatedclasses.tables.records.TAuthorRecord; +import org.jooq.test.sqlite.generatedclasses.tables.records.TBookRecord; +import org.jooq.test.sqlite.generatedclasses.tables.records.TBookStoreRecord; +import org.jooq.test.sqlite.generatedclasses.tables.records.TBookToBookStoreRecord; +import org.jooq.test.sqlite.generatedclasses.tables.records.TBooleansRecord; +import org.jooq.test.sqlite.generatedclasses.tables.records.TDatesRecord; +import org.jooq.test.sqlite.generatedclasses.tables.records.TTriggersRecord; +import org.jooq.test.sqlite.generatedclasses.tables.records.T_639NumbersTableRecord; +import org.jooq.test.sqlite.generatedclasses.tables.records.T_658RefRecord; +import org.jooq.test.sqlite.generatedclasses.tables.records.T_725LobTestRecord; +import org.jooq.test.sqlite.generatedclasses.tables.records.T_785Record; +import org.jooq.test.sqlite.generatedclasses.tables.records.VLibraryRecord; +import org.jooq.test.sqlite.generatedclasses.tables.records.XUnusedRecord; +import org.jooq.tools.unsigned.UByte; +import org.jooq.tools.unsigned.UInteger; +import org.jooq.tools.unsigned.ULong; +import org.jooq.tools.unsigned.UShort; +import org.jooq.util.sqlite.SQLiteDataType; +import org.jooq.util.sqlite.SQLiteFactory; + +/** + * Integration test for the SQLite database + * + * @author Lukas Eder + */ +public class jOOQSQLiteTest extends jOOQAbstractTest< + TAuthorRecord, + TBookRecord, + TBookStoreRecord, + TBookToBookStoreRecord, + XUnusedRecord, + VLibraryRecord, + XUnusedRecord, + TDatesRecord, + TBooleansRecord, + XUnusedRecord, + TTriggersRecord, + XUnusedRecord, + XUnusedRecord, + XUnusedRecord, + T_658RefRecord, + T_725LobTestRecord, + T_639NumbersTableRecord, + T_785Record> { + + @Override + protected Factory create(Settings settings) { + return new SQLiteFactory(getConnection(), settings); + } + + @Override + protected UpdatableTable TAuthor() { + return TAuthor.T_AUTHOR; + } + + @Override + protected TableField TAuthor_LAST_NAME() { + return TAuthor.LAST_NAME; + } + + @Override + protected TableField TAuthor_FIRST_NAME() { + return TAuthor.FIRST_NAME; + } + + @Override + protected TableField TAuthor_DATE_OF_BIRTH() { + return TAuthor.DATE_OF_BIRTH; + } + + @Override + protected TableField TAuthor_YEAR_OF_BIRTH() { + return TAuthor.YEAR_OF_BIRTH; + } + + @Override + protected TableField TAuthor_ID() { + return TAuthor.ID; + } + + @Override + protected TableField> TAuthor_ADDRESS() { + return null; + } + + @Override + protected UpdatableTable TBook() { + return TBook.T_BOOK; + } + + @Override + protected TableField TBook_ID() { + return TBook.ID; + } + + @Override + protected TableField TBook_AUTHOR_ID() { + return TBook.AUTHOR_ID; + } + + @Override + protected TableField TBook_TITLE() { + return TBook.TITLE; + } + + @Override + protected UpdatableTable TBookStore() { + return TBookStore.T_BOOK_STORE; + } + + @Override + protected TableField TBookStore_NAME() { + return TBookStore.NAME; + } + + @Override + protected UpdatableTable TBookToBookStore() { + return T_BOOK_TO_BOOK_STORE; + } + + @Override + protected UpdatableTable TBookSale() { + return null; + } + + @Override + protected TableField TBookToBookStore_BOOK_ID() { + return TBookToBookStore.BOOK_ID; + } + + @Override + protected TableField TBookToBookStore_BOOK_STORE_NAME() { + return TBookToBookStore.BOOK_STORE_NAME; + } + + @Override + protected TableField TBookToBookStore_STOCK() { + return TBookToBookStore.STOCK; + } + + @Override + protected Table T725() { + return T_725LobTest.T_725_LOB_TEST; + } + + @Override + protected TableField T725_ID() { + return T_725LobTest.ID; + } + + @Override + protected TableField T725_LOB() { + return T_725LobTest.LOB; + } + + @Override + protected Table T658() { + return T_658Ref.T_658_REF; + } + + @Override + protected Table T639() { + return T_639NumbersTable.T_639_NUMBERS_TABLE; + } + + @Override + protected TableField T639_ID() { + return T_639NumbersTable.ID; + } + + @Override + protected TableField T639_BIG_DECIMAL() { + return T_639NumbersTable.BIG_DECIMAL; + } + + @Override + protected TableField T639_BIG_INTEGER() { + return T_639NumbersTable.BIG_INTEGER; + } + + @Override + protected TableField T639_BYTE() { + return T_639NumbersTable.BYTE; + } + + @Override + protected TableField T639_BYTE_DECIMAL() { + return T_639NumbersTable.BYTE_DECIMAL; + } + + @Override + protected TableField T639_SHORT() { + return T_639NumbersTable.SHORT; + } + + @Override + protected TableField T639_SHORT_DECIMAL() { + return T_639NumbersTable.SHORT_DECIMAL; + } + + @Override + protected TableField T639_INTEGER() { + return T_639NumbersTable.INTEGER; + } + + @Override + protected TableField T639_INTEGER_DECIMAL() { + return T_639NumbersTable.INTEGER_DECIMAL; + } + + @Override + protected TableField T639_LONG() { + return T_639NumbersTable.LONG; + } + + @Override + protected TableField T639_LONG_DECIMAL() { + return T_639NumbersTable.LONG_DECIMAL; + } + + @Override + protected TableField T639_DOUBLE() { + return T_639NumbersTable.DOUBLE; + } + + @Override + protected TableField T639_FLOAT() { + return T_639NumbersTable.FLOAT; + } + + @Override + protected Table T785() { + return T_785.T_785; + } + + @Override + protected TableField T785_ID() { + return T_785.ID; + } + + @Override + protected TableField T785_NAME() { + return T_785.NAME; + } + + @Override + protected TableField T785_VALUE() { + return T_785.VALUE; + } + + @Override + protected Table TUnsigned() { + return null; + } + + @Override + protected TableField TUnsigned_U_BYTE() { + return null; + } + + @Override + protected TableField TUnsigned_U_SHORT() { + return null; + } + + @Override + protected TableField TUnsigned_U_INT() { + return null; + } + + @Override + protected TableField TUnsigned_U_LONG() { + return null; + } + + @Override + protected Table TDates() { + return T_DATES; + } + + @Override + protected UpdatableTable TBooleans() { + return T_BOOLEANS; + } + + @Override + protected TableField TBooleans_ID() { + return TBooleans.ID; + } + + @Override + protected TableField TBooleans_BOOLEAN_10() { + return TBooleans.ONE_ZERO; + } + + @Override + protected TableField TBooleans_Boolean_TF_LC() { + return TBooleans.TRUE_FALSE_LC; + } + + @Override + protected TableField TBooleans_Boolean_TF_UC() { + return TBooleans.TRUE_FALSE_UC; + } + + @Override + protected TableField TBooleans_Boolean_YN_LC() { + return TBooleans.Y_N_LC; + } + + @Override + protected TableField TBooleans_Boolean_YN_UC() { + return TBooleans.Y_N_UC; + } + + @Override + protected TableField TBooleans_Boolean_YES_NO_LC() { + return TBooleans.YES_NO_LC; + } + + @Override + protected TableField TBooleans_Boolean_YES_NO_UC() { + return TBooleans.YES_NO_UC; + } + + @Override + protected TableField TBooleans_VC() { + return TBooleans.VC_BOOLEAN; + } + + @Override + protected TableField TBooleans_C() { + return TBooleans.C_BOOLEAN; + } + + @Override + protected TableField TBooleans_N() { + return TBooleans.N_BOOLEAN; + } + + @Override + protected Table TArrays() { + return null; + } + + @Override + protected TableField TArrays_ID() { + return null; + } + + @Override + protected TableField TArrays_STRING() { + return null; + } + + @Override + protected TableField TArrays_NUMBER() { + return null; + } + + @Override + protected TableField TArrays_DATE() { + return null; + } + + @Override + protected TableField[]> TArrays_UDT() { + return null; + } + + @Override + protected TableField> TArrays_STRING_R() { + return null; + } + + @Override + protected TableField> TArrays_NUMBER_R() { + return null; + } + + @Override + protected TableField> TArrays_DATE_R() { + return null; + } + + @Override + protected TableField> TArrays_NUMBER_LONG_R() { + return null; + } + + @Override + protected TableField TBook_LANGUAGE_ID() { + return TBook.LANGUAGE_ID; + } + + @Override + protected TableField TBook_PUBLISHED_IN() { + return TBook.PUBLISHED_IN; + } + + @Override + protected TableField TBook_CONTENT_TEXT() { + return TBook.CONTENT_TEXT; + } + + @Override + protected TableField TBook_CONTENT_PDF() { + return TBook.CONTENT_PDF; + } + + @Override + protected TableField> TBook_STATUS() { + return null; + } + + @Override + protected Table VLibrary() { + return VLibrary.V_LIBRARY; + } + + @Override + protected TableField VLibrary_TITLE() { + return VLibrary.TITLE; + } + + @Override + protected TableField VLibrary_AUTHOR() { + return VLibrary.AUTHOR; + } + + @Override + protected Table VAuthor() { + return V_AUTHOR; + } + + @Override + protected Table VBook() { + return V_BOOK; + } + + @Override + protected UpdatableTable TDirectory() { + return null; + } + + @Override + protected TableField TDirectory_ID() { + return null; + } + + @Override + protected TableField TDirectory_PARENT_ID() { + return null; + } + + @Override + protected TableField TDirectory_IS_DIRECTORY() { + return null; + } + + @Override + protected TableField TDirectory_NAME() { + return null; + } + + @Override + protected UpdatableTable TTriggers() { + return TTriggers.T_TRIGGERS; + } + + @Override + protected TableField TTriggers_ID_GENERATED() { + return TTriggers.ID_GENERATED; + } + + @Override + protected TableField TTriggers_ID() { + return TTriggers.ID; + } + + @Override + protected TableField TTriggers_COUNTER() { + return TTriggers.COUNTER; + } + + @Override + protected Table TIdentity() { + return null; + } + + @Override + protected TableField TIdentity_ID() { + return null; + } + + @Override + protected TableField TIdentity_VAL() { + return null; + } + + @Override + protected UpdatableTable TIdentityPK() { + return null; + } + + @Override + protected TableField TIdentityPK_ID() { + return null; + } + + @Override + protected TableField TIdentityPK_VAL() { + return null; + } + + @Override + protected Field FAuthorExistsField(String authorName) { + return null; + } + + @Override + protected Field FOneField() { + return null; + } + + @Override + protected Field FNumberField(Number n) { + return null; + } + + @Override + protected Field FNumberField(Field n) { + return null; + } + + @Override + protected Field F317Field(Number n1, Number n2, Number n3, Number n4) { + return null; + } + + @Override + protected Field F317Field(Field n1, Field n2, + Field n3, Field n4) { + return null; + } + + @Override + protected Field> FGetOneCursorField(Integer[] array) { + return null; + } + + @Override + protected Field FArrays1Field(Field array) { + return null; + } + + @Override + protected Field FArrays2Field(Field array) { + return null; + } + + @Override + protected Field FArrays3Field(Field array) { + return null; + } + + @Override + protected > Field FArrays1Field_R(Field array) { + return null; + } + + @Override + protected > Field FArrays2Field_R(Field array) { + return null; + } + + @Override + protected > Field FArrays3Field_R(Field array) { + return null; + } + + @Override + protected Class> cUAddressType() { + return null; + } + + @Override + protected Class> cUStreetType() { + return null; + } + + @Override + protected Class cRoutines() { + return null; + } + + @Override + protected boolean supportsOUTParameters() { + return false; + } + + @Override + protected boolean supportsReferences() { + return true; + } + + @Override + protected boolean supportsRecursiveQueries() { + return false; + } + + @Override + protected Class cLibrary() { + return null; + } + + @Override + protected Class cSequences() { + return null; + } + + @Override + protected DataType[] getCastableDataTypes() { + return new DataType[] { + SQLiteDataType.BIGINT, + SQLiteDataType.BLOB, + SQLiteDataType.BOOLEAN, + SQLiteDataType.CHAR, + SQLiteDataType.CHARACTER, + SQLiteDataType.CLOB, + SQLiteDataType.DATE, + SQLiteDataType.DATETIME, + SQLiteDataType.DECIMAL, + SQLiteDataType.DOUBLE, + SQLiteDataType.DOUBLEPRECISION, + SQLiteDataType.FLOAT, + SQLiteDataType.INT, + SQLiteDataType.INT2, + SQLiteDataType.INT8, + SQLiteDataType.INTEGER, + SQLiteDataType.LONGVARBINARY, + SQLiteDataType.LONGVARCHAR, + SQLiteDataType.MEDIUMINT, + SQLiteDataType.NATIVECHARACTER, + SQLiteDataType.NCHAR, + SQLiteDataType.NUMERIC, + SQLiteDataType.NVARCHAR, + SQLiteDataType.REAL, + SQLiteDataType.SMALLINT, + SQLiteDataType.TEXT, + SQLiteDataType.TINYINT, + SQLiteDataType.UNSIGNEDBIGINT, + SQLiteDataType.VARCHAR, + SQLiteDataType.VARYINGCHARACTER, + }; + } +} diff --git a/jOOQ-test/src/org/jooq/test/jOOQSybaseTest.java b/jOOQ-test/src/org/jooq/test/jOOQSybaseTest.java new file mode 100644 index 00000000000..514eeb329ff --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/jOOQSybaseTest.java @@ -0,0 +1,738 @@ +/** + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com + * 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 "jOOQ" 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 COPYRIGHT OWNER 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. + */ + +package org.jooq.test; + +import static org.jooq.test.sybase.generatedclasses.Tables.T_639_NUMBERS_TABLE; +import static org.jooq.test.sybase.generatedclasses.Tables.T_658_REF; +import static org.jooq.test.sybase.generatedclasses.Tables.T_725_LOB_TEST; +import static org.jooq.test.sybase.generatedclasses.Tables.T_785; +import static org.jooq.test.sybase.generatedclasses.Tables.T_AUTHOR; +import static org.jooq.test.sybase.generatedclasses.Tables.T_BOOK; +import static org.jooq.test.sybase.generatedclasses.Tables.T_BOOK_STORE; +import static org.jooq.test.sybase.generatedclasses.Tables.T_BOOK_TO_BOOK_STORE; +import static org.jooq.test.sybase.generatedclasses.Tables.T_BOOLEANS; +import static org.jooq.test.sybase.generatedclasses.Tables.T_DATES; +import static org.jooq.test.sybase.generatedclasses.Tables.T_IDENTITY; +import static org.jooq.test.sybase.generatedclasses.Tables.T_IDENTITY_PK; +import static org.jooq.test.sybase.generatedclasses.Tables.T_TRIGGERS; +import static org.jooq.test.sybase.generatedclasses.Tables.V_AUTHOR; +import static org.jooq.test.sybase.generatedclasses.Tables.V_BOOK; +import static org.jooq.test.sybase.generatedclasses.Tables.V_LIBRARY; + +import java.math.BigDecimal; +import java.math.BigInteger; +import java.sql.Date; + +import org.jooq.ArrayRecord; +import org.jooq.DataType; +import org.jooq.Field; +import org.jooq.Record; +import org.jooq.Result; +import org.jooq.Table; +import org.jooq.TableField; +import org.jooq.UDTRecord; +import org.jooq.UpdatableTable; +import org.jooq.conf.Settings; +import org.jooq.impl.Factory; +import org.jooq.test._.converters.Boolean_10; +import org.jooq.test._.converters.Boolean_TF_LC; +import org.jooq.test._.converters.Boolean_TF_UC; +import org.jooq.test._.converters.Boolean_YES_NO_LC; +import org.jooq.test._.converters.Boolean_YES_NO_UC; +import org.jooq.test._.converters.Boolean_YN_LC; +import org.jooq.test._.converters.Boolean_YN_UC; +import org.jooq.test.sybase.generatedclasses.DbaFactory; +import org.jooq.test.sybase.generatedclasses.Routines; +import org.jooq.test.sybase.generatedclasses.Sequences; +import org.jooq.test.sybase.generatedclasses.tables.records.TAuthorRecord; +import org.jooq.test.sybase.generatedclasses.tables.records.TBookRecord; +import org.jooq.test.sybase.generatedclasses.tables.records.TBookStoreRecord; +import org.jooq.test.sybase.generatedclasses.tables.records.TBookToBookStoreRecord; +import org.jooq.test.sybase.generatedclasses.tables.records.TBooleansRecord; +import org.jooq.test.sybase.generatedclasses.tables.records.TDatesRecord; +import org.jooq.test.sybase.generatedclasses.tables.records.TIdentityPkRecord; +import org.jooq.test.sybase.generatedclasses.tables.records.TIdentityRecord; +import org.jooq.test.sybase.generatedclasses.tables.records.TTriggersRecord; +import org.jooq.test.sybase.generatedclasses.tables.records.T_639NumbersTableRecord; +import org.jooq.test.sybase.generatedclasses.tables.records.T_658RefRecord; +import org.jooq.test.sybase.generatedclasses.tables.records.T_725LobTestRecord; +import org.jooq.test.sybase.generatedclasses.tables.records.T_785Record; +import org.jooq.test.sybase.generatedclasses.tables.records.VLibraryRecord; +import org.jooq.test.sybase.generatedclasses.tables.records.XUnusedRecord; +import org.jooq.tools.unsigned.UByte; +import org.jooq.tools.unsigned.UInteger; +import org.jooq.tools.unsigned.ULong; +import org.jooq.tools.unsigned.UShort; +import org.jooq.util.sybase.SybaseDataType; + + +/** + * Integration test that creates tables and performs various sql operations. + * + * @author Espen Stromsnes + */ +public class jOOQSybaseTest extends jOOQAbstractTest< + TAuthorRecord, + TBookRecord, + TBookStoreRecord, + TBookToBookStoreRecord, + XUnusedRecord, + VLibraryRecord, + XUnusedRecord, + TDatesRecord, + TBooleansRecord, + XUnusedRecord, + TTriggersRecord, + XUnusedRecord, + TIdentityRecord, + TIdentityPkRecord, + T_658RefRecord, + T_725LobTestRecord, + T_639NumbersTableRecord, + T_785Record> { + + @Override + protected Factory create(Settings settings) { + return new DbaFactory(getConnection(), settings); + } + + + @Override + protected UpdatableTable TAuthor() { + return T_AUTHOR; + } + + @Override + protected TableField TAuthor_LAST_NAME() { + return T_AUTHOR.LAST_NAME; + } + + @Override + protected TableField TAuthor_FIRST_NAME() { + return T_AUTHOR.FIRST_NAME; + } + + @Override + protected TableField TAuthor_DATE_OF_BIRTH() { + return T_AUTHOR.DATE_OF_BIRTH; + } + + @Override + protected TableField TAuthor_YEAR_OF_BIRTH() { + return T_AUTHOR.YEAR_OF_BIRTH; + } + + @Override + protected TableField TAuthor_ID() { + return T_AUTHOR.ID; + } + + @Override + protected TableField> TAuthor_ADDRESS() { + return null; + } + + @Override + protected UpdatableTable TBook() { + return T_BOOK; + } + + @Override + protected TableField TBook_ID() { + return T_BOOK.ID; + } + + @Override + protected TableField TBook_AUTHOR_ID() { + return T_BOOK.AUTHOR_ID; + } + + @Override + protected TableField TBook_TITLE() { + return T_BOOK.TITLE; + } + + @Override + protected UpdatableTable TBookStore() { + return T_BOOK_STORE; + } + + @Override + protected TableField TBookStore_NAME() { + return T_BOOK_STORE.NAME; + } + + @Override + protected UpdatableTable TBookToBookStore() { + return T_BOOK_TO_BOOK_STORE; + } + + @Override + protected UpdatableTable TBookSale() { + return null; + } + + @Override + protected TableField TBookToBookStore_BOOK_ID() { + return T_BOOK_TO_BOOK_STORE.BOOK_ID; + } + + @Override + protected TableField TBookToBookStore_BOOK_STORE_NAME() { + return T_BOOK_TO_BOOK_STORE.BOOK_STORE_NAME; + } + + @Override + protected TableField TBookToBookStore_STOCK() { + return T_BOOK_TO_BOOK_STORE.STOCK; + } + + @Override + protected Table T725() { + return T_725_LOB_TEST; + } + + @Override + protected TableField T725_ID() { + return T_725_LOB_TEST.ID; + } + + @Override + protected TableField T725_LOB() { + return T_725_LOB_TEST.LOB; + } + + @Override + protected Table T658() { + return T_658_REF; + } + + @Override + protected Table T785() { + return T_785; + } + + @Override + protected TableField T785_ID() { + return T_785.ID; + } + + @Override + protected TableField T785_NAME() { + return T_785.NAME; + } + + @Override + protected TableField T785_VALUE() { + return T_785.VALUE; + } + + @Override + protected Table TUnsigned() { + return null; + } + + @Override + protected TableField TUnsigned_U_BYTE() { + return null; + } + + @Override + protected TableField TUnsigned_U_SHORT() { + return null; + } + + @Override + protected TableField TUnsigned_U_INT() { + return null; + } + + @Override + protected TableField TUnsigned_U_LONG() { + return null; + } + + @Override + protected Table TDates() { + return T_DATES; + } + + @Override + protected UpdatableTable TBooleans() { + return T_BOOLEANS; + } + + @Override + protected TableField TBooleans_ID() { + return T_BOOLEANS.ID; + } + + @Override + protected TableField TBooleans_BOOLEAN_10() { + return T_BOOLEANS.ONE_ZERO; + } + + @Override + protected TableField TBooleans_Boolean_TF_LC() { + return T_BOOLEANS.TRUE_FALSE_LC; + } + + @Override + protected TableField TBooleans_Boolean_TF_UC() { + return T_BOOLEANS.TRUE_FALSE_UC; + } + + @Override + protected TableField TBooleans_Boolean_YN_LC() { + return T_BOOLEANS.Y_N_LC; + } + + @Override + protected TableField TBooleans_Boolean_YN_UC() { + return T_BOOLEANS.Y_N_UC; + } + + @Override + protected TableField TBooleans_Boolean_YES_NO_LC() { + return T_BOOLEANS.YES_NO_LC; + } + + @Override + protected TableField TBooleans_Boolean_YES_NO_UC() { + return T_BOOLEANS.YES_NO_UC; + } + + @Override + protected TableField TBooleans_VC() { + return T_BOOLEANS.VC_BOOLEAN; + } + + @Override + protected TableField TBooleans_C() { + return T_BOOLEANS.C_BOOLEAN; + } + + @Override + protected TableField TBooleans_N() { + return T_BOOLEANS.N_BOOLEAN; + } + + @Override + protected Table T639() { + return T_639_NUMBERS_TABLE; + } + + @Override + protected TableField T639_ID() { + return T_639_NUMBERS_TABLE.ID; + } + + @Override + protected TableField T639_BIG_DECIMAL() { + return T_639_NUMBERS_TABLE.BIG_DECIMAL; + } + + @Override + protected TableField T639_BIG_INTEGER() { + return T_639_NUMBERS_TABLE.BIG_INTEGER; + } + + @Override + protected TableField T639_BYTE() { + return T_639_NUMBERS_TABLE.BYTE; + } + + @Override + protected TableField T639_BYTE_DECIMAL() { + return T_639_NUMBERS_TABLE.BYTE_DECIMAL; + } + + @Override + protected TableField T639_SHORT() { + return T_639_NUMBERS_TABLE.SHORT; + } + + @Override + protected TableField T639_SHORT_DECIMAL() { + return T_639_NUMBERS_TABLE.SHORT_DECIMAL; + } + + @Override + protected TableField T639_INTEGER() { + return T_639_NUMBERS_TABLE.INTEGER; + } + + @Override + protected TableField T639_INTEGER_DECIMAL() { + return T_639_NUMBERS_TABLE.INTEGER_DECIMAL; + } + + @Override + protected TableField T639_LONG() { + return T_639_NUMBERS_TABLE.LONG; + } + + @Override + protected TableField T639_LONG_DECIMAL() { + return T_639_NUMBERS_TABLE.LONG_DECIMAL; + } + + @Override + protected TableField T639_DOUBLE() { + return T_639_NUMBERS_TABLE.DOUBLE; + } + + @Override + protected TableField T639_FLOAT() { + return null; + } + + @Override + protected Table TArrays() { + return null; + } + + @Override + protected TableField TArrays_ID() { + return null; + } + + @Override + protected TableField TArrays_STRING() { + return null; + } + + @Override + protected TableField TArrays_NUMBER() { + return null; + } + + @Override + protected TableField TArrays_DATE() { + return null; + } + + @Override + protected TableField> TArrays_STRING_R() { + return null; + } + + @Override + protected TableField> TArrays_NUMBER_R() { + return null; + } + + @Override + protected TableField> TArrays_DATE_R() { + return null; + } + + @Override + protected TableField> TArrays_NUMBER_LONG_R() { + return null; + } + + @Override + protected TableField> TBook_LANGUAGE_ID() { + return T_BOOK.LANGUAGE_ID; + } + + @Override + protected TableField TBook_PUBLISHED_IN() { + return T_BOOK.PUBLISHED_IN; + } + + @Override + protected TableField TBook_CONTENT_TEXT() { + return T_BOOK.CONTENT_TEXT; + } + + @Override + protected TableField TBook_CONTENT_PDF() { + return T_BOOK.CONTENT_PDF; + } + + @Override + protected TableField> TBook_STATUS() { + return null; + } + + @Override + protected Table VLibrary() { + return V_LIBRARY; + } + + @Override + protected TableField VLibrary_TITLE() { + return V_LIBRARY.TITLE; + } + + @Override + protected TableField VLibrary_AUTHOR() { + return V_LIBRARY.AUTHOR; + } + + @Override + protected Table VAuthor() { + return V_AUTHOR; + } + + @Override + protected Table VBook() { + return V_BOOK; + } + + @Override + protected UpdatableTable TDirectory() { + return null; + } + + @Override + protected TableField TDirectory_ID() { + return null; + } + + @Override + protected TableField TDirectory_PARENT_ID() { + return null; + } + + @Override + protected TableField TDirectory_IS_DIRECTORY() { + return null; + } + + @Override + protected TableField TDirectory_NAME() { + return null; + } + + @Override + protected UpdatableTable TTriggers() { + return T_TRIGGERS; + } + + @Override + protected TableField TTriggers_ID_GENERATED() { + return T_TRIGGERS.ID_GENERATED; + } + + @Override + protected TableField TTriggers_ID() { + return T_TRIGGERS.ID; + } + + @Override + protected TableField TTriggers_COUNTER() { + return T_TRIGGERS.COUNTER; + } + + @Override + protected Table TIdentity() { + return T_IDENTITY; + } + + @Override + protected TableField TIdentity_ID() { + return T_IDENTITY.ID; + } + + @Override + protected TableField TIdentity_VAL() { + return T_IDENTITY.VAL; + } + + @Override + protected UpdatableTable TIdentityPK() { + return T_IDENTITY_PK; + } + + @Override + protected TableField TIdentityPK_ID() { + return T_IDENTITY_PK.ID; + } + + @Override + protected TableField TIdentityPK_VAL() { + return T_IDENTITY_PK.VAL; + } + + @Override + protected Field FAuthorExistsField(String authorName) { + return Routines.fAuthorExists(authorName); + } + + @Override + protected Field FOneField() { + return Routines.fOne(); + } + + @Override + protected Field FNumberField(Number n) { + return Routines.fNumber((Integer) n); + } + + @SuppressWarnings("unchecked") + @Override + protected Field FNumberField(Field n) { + return Routines.fNumber((Field) n); + } + + @Override + protected Field F317Field(Number n1, Number n2, Number n3, Number n4) { + return Routines.f317((Integer) n1, (Integer) n2, (Integer) n3, (Integer) n4); + } + + @SuppressWarnings("unchecked") + @Override + protected Field F317Field(Field n1, Field n2, + Field n3, Field n4) { + return Routines.f317((Field) n1, (Field) n2, (Field) n3, (Field) n4); + } + + @Override + protected Field> FGetOneCursorField(Integer[] array) { + return null; + } + + @Override + protected Field FArrays1Field(Field array) { + return null; + } + + + @Override + protected Field FArrays2Field(Field array) { + return null; + } + + + @Override + protected Field FArrays3Field(Field array) { + return null; + } + + + @Override + protected > Field FArrays1Field_R(Field array) { + return null; + } + + + @Override + protected > Field FArrays2Field_R(Field array) { + return null; + } + + + @Override + protected > Field FArrays3Field_R(Field array) { + return null; + } + + + @Override + protected Class> cUAddressType() { + return null; + } + + @Override + protected Class> cUStreetType() { + return null; + } + + @Override + protected Class cRoutines() { + return Routines.class; + } + + @Override + protected boolean supportsOUTParameters() { + return true; + } + + @Override + protected boolean supportsReferences() { + return true; + } + + @Override + protected boolean supportsRecursiveQueries() { + return false; + } + + @Override + protected Class cLibrary() { + return null; + } + + @Override + protected Class cSequences() { + return Sequences.class; + } + + + @Override + protected TableField[]> TArrays_UDT() { + return null; + } + + + @Override + protected DataType[] getCastableDataTypes() { + return new DataType[] { + SybaseDataType.MONEY, + SybaseDataType.SMALLMONEY, + SybaseDataType.CHAR, + SybaseDataType.LONGNVARCHAR, + SybaseDataType.LONGVARCHAR, + SybaseDataType.NCHAR, + SybaseDataType.NTEXT, + SybaseDataType.NVARCHAR, + SybaseDataType.TEXT, + SybaseDataType.UNIQUEIDENTIFIERSTR, + SybaseDataType.VARCHAR, + SybaseDataType.XML, + SybaseDataType.UNIQUEIDENTIFIER, + SybaseDataType.BIGINT, + SybaseDataType.BIT, + SybaseDataType.DECIMAL, + SybaseDataType.DOUBLE, + SybaseDataType.FLOAT, + SybaseDataType.INTEGER, + SybaseDataType.NUMERIC, + SybaseDataType.REAL, + SybaseDataType.SMALLINT, + SybaseDataType.TINYINT, + }; + } +} diff --git a/jOOQ-test/src/org/jooq/test/mysql/create.sql b/jOOQ-test/src/org/jooq/test/mysql/create.sql new file mode 100644 index 00000000000..dba05cd28d3 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/mysql/create.sql @@ -0,0 +1,449 @@ +DROP VIEW IF EXISTS v_library/ +DROP VIEW IF EXISTS v_author/ +DROP VIEW IF EXISTS v_book/ + +DROP PROCEDURE IF EXISTS p_unused/ +DROP PROCEDURE IF EXISTS p_author_exists/ +DROP PROCEDURE IF EXISTS p_create_author/ +DROP PROCEDURE IF EXISTS p_create_author_by_name/ +DROP PROCEDURE IF EXISTS p391/ +DROP FUNCTION IF EXISTS f_author_exists/ +DROP FUNCTION IF EXISTS f_one/ +DROP FUNCTION IF EXISTS f_number/ +DROP FUNCTION IF EXISTS f317/ + +DROP TRIGGER IF EXISTS t_triggers_trigger/ + +DROP TABLE IF EXISTS t_dates/ +DROP TABLE IF EXISTS t_triggers/ +DROP TABLE IF EXISTS t_book_to_book_store/ +DROP TABLE IF EXISTS t_book_store/ +DROP TABLE IF EXISTS t_book/ +DROP TABLE IF EXISTS t_book_details/ +DROP TABLE IF EXISTS t_author/ +DROP TABLE IF EXISTS t_language/ +DROP TABLE IF EXISTS x_test_case_71/ +DROP TABLE IF EXISTS x_test_case_64_69/ +DROP TABLE IF EXISTS x_test_case_85/ +DROP TABLE IF EXISTS x_unused/ +DROP TABLE IF EXISTS t_639_numbers_table/ +DROP TABLE IF EXISTS t_658_ref/ +DROP TABLE IF EXISTS t_658_11/ +DROP TABLE IF EXISTS t_658_21/ +DROP TABLE IF EXISTS t_658_31/ +DROP TABLE IF EXISTS t_658_12/ +DROP TABLE IF EXISTS t_658_22/ +DROP TABLE IF EXISTS t_658_32/ +DROP TABLE IF EXISTS t_725_lob_test/ +DROP TABLE IF EXISTS t_785/ +DROP TABLE IF EXISTS t_unsigned/ +DROP TABLE IF EXISTS t_959/ +DROP TABLE IF EXISTS t_booleans/ +DROP TABLE IF EXISTS t_identity_pk/ + +CREATE TABLE t_identity_pk ( + id INT NOT NULL AUTO_INCREMENT, + val int, + + CONSTRAINT pk_t_identity_pk PRIMARY KEY (id) +) +/ + +CREATE TABLE t_dates ( + id int, + d date, + t time, + ts datetime, + d_int int, + ts_bigint bigint, + + CONSTRAINT pk_t_dates PRIMARY KEY (id) +) +/ + +CREATE TABLE t_booleans ( + id int, + one_zero int, + true_false_lc varchar(5), + true_false_uc varchar(5), + yes_no_lc enum('yes', 'no'), + yes_no_uc enum('YES', 'NO'), + y_n_lc char(1), + y_n_uc char(1), + vc_boolean varchar(1), + c_boolean char(1), + n_boolean int, + + CONSTRAINT pk_t_booleans PRIMARY KEY (id) +) +/ + +CREATE TABLE t_959 ( + java_keywords enum('abstract', 'assert', 'boolean', 'break', 'byte', 'case', 'catch', + 'char', 'class', 'const', 'continue', 'default', 'double', 'do', + 'else', 'enum', 'extends', 'false', 'final', 'finally', 'float', + 'for', 'goto', 'if', 'implements', 'import', 'instanceof', + 'interface', 'int', 'long', 'native', 'new', 'package', 'private', + 'protected', 'public', 'return', 'short', 'static', 'strictfp', + 'super', 'switch', 'synchronized', 'this', 'throw', 'throws', + 'transient', 'true', 'try', 'void', 'volatile', 'while') +) ENGINE = InnoDB +/ + +CREATE TABLE t_unsigned ( + u_byte tinyint unsigned, + u_short smallint unsigned, + u_int int unsigned, + u_long bigint unsigned +) ENGINE = InnoDB +/ + +CREATE TABLE t_triggers ( + id_generated int not null AUTO_INCREMENT, + id int, + counter int, + + CONSTRAINT pk_t_triggers PRIMARY KEY (id_generated) +) ENGINE = InnoDB +/ + +CREATE TRIGGER t_triggers_trigger +BEFORE INSERT +ON t_triggers +FOR EACH ROW +BEGIN + DECLARE new_id INT; + + SELECT IFNULL(MAX(id_generated), 0) + 1 INTO new_id FROM t_triggers; + + SET NEW.id = new_id; + SET NEW.counter = new_id * 2; +END; +/ + +CREATE TABLE t_language ( + CD CHAR(2) NOT NULL COMMENT 'The language ISO code', + DESCRIPTION VARCHAR(50) COMMENT 'The language description', + description_english VARCHAR(50), + ID INT NOT NULL COMMENT 'The language ID', + + CONSTRAINT pk_t_language PRIMARY KEY (ID) +) ENGINE = InnoDB + COMMENT 'An entity holding language master data' +/ + +CREATE TABLE t_658_11 ( + id CHAR(3) NOT NULL, + + CONSTRAINT pk_t_658_11 PRIMARY KEY (id) +) +/ + +CREATE TABLE t_658_21 ( + id INT NOT NULL, + + CONSTRAINT pk_t_658_21 PRIMARY KEY (id) +) +/ + +CREATE TABLE t_658_31 ( + id BIGINT NOT NULL, + + CONSTRAINT pk_t_658_31 PRIMARY KEY (id) +) +/ + +CREATE TABLE t_658_12 ( + id CHAR(3) NOT NULL, + cd CHAR(3) NOT NULL, + + CONSTRAINT pk_t_658_12 PRIMARY KEY (id) +) +/ + +CREATE TABLE t_658_22 ( + id INT NOT NULL, + cd INT NOT NULL, + + CONSTRAINT pk_t_658_22 PRIMARY KEY (id) +) +/ + +CREATE TABLE t_658_32 ( + id BIGINT NOT NULL, + cd BIGINT NOT NULL, + + CONSTRAINT pk_t_658_32 PRIMARY KEY (id) +) +/ + +CREATE TABLE t_658_ref ( + ref_11 char(3), + ref_21 int, + ref_31 bigint, + ref_12 char(3), + ref_22 int, + ref_32 bigint, + + CONSTRAINT fk_t_658_11 FOREIGN KEY (ref_11) REFERENCES t_658_11(id), + CONSTRAINT fk_t_658_21 FOREIGN KEY (ref_21) REFERENCES t_658_21(id), + CONSTRAINT fk_t_658_31 FOREIGN KEY (ref_31) REFERENCES t_658_31(id), + CONSTRAINT fk_t_658_12 FOREIGN KEY (ref_12) REFERENCES t_658_12(id), + CONSTRAINT fk_t_658_22 FOREIGN KEY (ref_22) REFERENCES t_658_22(id), + CONSTRAINT fk_t_658_32 FOREIGN KEY (ref_32) REFERENCES t_658_32(id) +) +/ + +CREATE TABLE t_725_lob_test ( + ID int NOT NULL, + LOB LONGBLOB NULL, + + CONSTRAINT pk_t_725_lob_test PRIMARY KEY (id) +) +/ + +CREATE TABLE t_785 ( + ID int, + NAME varchar(50), + VALUE varchar(50) +) +/ + +CREATE TABLE t_author ( + ID INT NOT NULL COMMENT 'The author ID', + FIRST_NAME VARCHAR(50) COMMENT 'The author''s first name', + LAST_NAME VARCHAR(50) NOT NULL COMMENT 'The author''s last name', + DATE_OF_BIRTH DATE COMMENT 'The author''s date of birth', + YEAR_OF_BIRTH INT COMMENT 'The author''s year of birth', + ADDRESS VARCHAR(200) COMMENT 'The author''s address', + + CONSTRAINT pk_t_author PRIMARY KEY (ID) +) ENGINE = InnoDB + COMMENT = 'An entity holding authors of books'; +/ + +CREATE TABLE t_book_details ( + ID INT NOT NULL COMMENT 'The details ID', + E enum('A', 'B', 'C') COMMENT '#1237 Don''t generate an enum for this', + + CONSTRAINT pk_t_book_details PRIMARY KEY (ID) +) ENGINE = InnoDB + COMMENT = 'An unused details table' +/ + +CREATE TABLE t_book ( + ID INT NOT NULL COMMENT 'The book ID', + AUTHOR_ID INT NOT NULL COMMENT 'The author ID in entity ''author''', + co_author_id int, + DETAILS_ID INT COMMENT 'Some more details about the book', + TITLE TEXT NOT NULL COMMENT 'The book''s title', + PUBLISHED_IN INT NOT NULL COMMENT 'The year the book was published in', + LANGUAGE_ID INT NOT NULL COMMENT 'The language of the book', + CONTENT_TEXT LONGTEXT COMMENT 'Some textual content of the book', + CONTENT_PDF LONGBLOB COMMENT 'Some binary content of the book', + STATUS enum('SOLD OUT','ORDERED','ON STOCK') COMMENT 'The book''s stock status', + INDEX (AUTHOR_ID), + INDEX (LANGUAGE_ID), + + CONSTRAINT pk_t_book PRIMARY KEY (ID), + CONSTRAINT fk_t_book_author_id FOREIGN KEY (AUTHOR_ID) REFERENCES T_AUTHOR(ID), + CONSTRAINT fk_t_book_co_author_id FOREIGN KEY (CO_AUTHOR_ID) REFERENCES T_AUTHOR(ID), + CONSTRAINT fk_t_book_details_id FOREIGN KEY (DETAILS_ID) REFERENCES T_BOOK_DETAILS(ID), + CONSTRAINT fk_t_book_language_id FOREIGN KEY (LANGUAGE_ID) REFERENCES T_LANGUAGE(ID) +) ENGINE = InnoDB + COMMENT = 'An entity holding books'; +/ + +CREATE TABLE t_book_store ( + name VARCHAR(400) NOT NULL COMMENT 'The books store name', + + CONSTRAINT uk_t_book_store_name UNIQUE(name) +) ENGINE = InnoDB + COMMENT = 'A book store' +/ + +CREATE TABLE t_book_to_book_store ( + book_store_name VARCHAR(400) NOT NULL COMMENT 'The book store name', + book_id INTEGER NOT NULL COMMENT 'The book ID', + stock INTEGER COMMENT 'The number of books on stock', + + CONSTRAINT pk_b2bs PRIMARY KEY(book_store_name, book_id), + CONSTRAINT fk_b2bs_bs_name FOREIGN KEY (book_store_name) + REFERENCES t_book_store (name) + ON DELETE CASCADE, + CONSTRAINT fk_b2bs_b_id FOREIGN KEY (book_id) + REFERENCES t_book (id) + ON DELETE CASCADE +) ENGINE = InnoDB + COMMENT = 'An m:n relation between books and book stores' +/ + + +CREATE TABLE x_unused ( + ID INT NOT NULL, + NAME VARCHAR(10) NOT NULL, + BIG_INTEGER DECIMAL(25), + ID_REF INT, + NAME_REF VARCHAR(10), + CLASS INT, + FIELDS INT, + CONFIGURATION INT, + U_D_T INT, + META_DATA INT, + TYPE0 INT, + PRIMARY_KEY INT, + PRIMARYKEY INT, + `FIELD 737` DECIMAL(25, 2), + + CONSTRAINT pk_x_unused PRIMARY KEY(ID, NAME), + CONSTRAINT uk_x_unused_id UNIQUE(ID), + CONSTRAINT fk_x_unused_self FOREIGN KEY(ID_REF, NAME_REF) REFERENCES X_UNUSED(ID, NAME) +) ENGINE = InnoDB + COMMENT = 'An unused table in the same schema.'; +/ + +CREATE TABLE t_639_numbers_table ( + ID INT NOT NULL, + BYTE TINYINT, + SHORT SMALLINT, + `INTEGER` INT, + `LONG` BIGINT, + BYTE_DECIMAL DECIMAL(2, 0), + SHORT_DECIMAL DECIMAL(4, 0), + INTEGER_DECIMAL DECIMAL(9, 0), + LONG_DECIMAL DECIMAL(18, 0), + BIG_INTEGER DECIMAL(22, 0), + BIG_DECIMAL DECIMAL(22, 5), + `FLOAT` FLOAT, + `DOUBLE` DOUBLE, + CONSTRAINT pk_t_639_numbers_table PRIMARY KEY(ID) +) ENGINE = InnoDB +/ + +CREATE TABLE x_test_case_64_69 ( + ID INT NOT NULL, + UNUSED_ID INT, + + CONSTRAINT pk_x_test_case_64_69 PRIMARY KEY(ID), + CONSTRAINT fk_x_test_case_64_69a FOREIGN KEY(UNUSED_ID) REFERENCES X_UNUSED(ID), + CONSTRAINT fk_x_test_case_64_69b FOREIGN KEY(UNUSED_ID) REFERENCES X_UNUSED(ID) +) ENGINE = InnoDB + COMMENT = 'An unused table in the same schema.'; +/ + +CREATE TABLE x_test_case_71 ( + ID INT NOT NULL, + TEST_CASE_64_69_ID INT, + + CONSTRAINT pk_x_test_case_71 PRIMARY KEY(ID), + CONSTRAINT fk_x_test_case_71 FOREIGN KEY(TEST_CASE_64_69_ID) REFERENCES X_TEST_CASE_64_69(ID) +) ENGINE = InnoDB + COMMENT = 'An unused table in the same schema.'; +/ + +CREATE TABLE x_test_case_85 ( + id int NOT NULL, + x_unused_id int, + x_unused_name VARCHAR(10), + + CONSTRAINT pk_x_test_case_85 PRIMARY KEY(ID), + CONSTRAINT fk_x_test_case_85 FOREIGN KEY(x_unused_id, x_unused_name) REFERENCES X_UNUSED(id, name) +) ENGINE = InnoDB + COMMENT = 'An unused table in the same schema.'; +/ + +CREATE OR REPLACE VIEW V_LIBRARY (AUTHOR, TITLE) AS +SELECT CONCAT(A.FIRST_NAME, ' ', A.LAST_NAME), B.TITLE +FROM T_AUTHOR A JOIN T_BOOK B ON B.AUTHOR_ID = A.ID; +/ + +CREATE VIEW v_author AS +SELECT * FROM t_author +/ + +CREATE VIEW v_book AS +SELECT * FROM t_book +/ + + +CREATE PROCEDURE p_unused (in1 VARCHAR(50), OUT out1 BOOL, INOUT out2 BOOL) +BEGIN +END +/ + +CREATE PROCEDURE p_create_author_by_name (IN first_name VARCHAR(50), IN last_name VARCHAR(50)) + COMMENT 'Create a new author' +BEGIN + SET @id = 0; + + SELECT max(id) + 1 INTO @id FROM t_author; + + INSERT INTO T_AUTHOR (ID, FIRST_NAME, LAST_NAME) + VALUES (@id, first_name, last_name); +END +/ + +CREATE PROCEDURE p_create_author() + COMMENT 'Create a new author' +BEGIN + call {jdbc.Schema}.p_create_author_by_name('William', 'Shakespeare'); +END +/ + +CREATE PROCEDURE p_author_exists (author_name VARCHAR(50), OUT result INT) + COMMENT 'Check existence of an author' +BEGIN + SELECT COUNT(*) > 0 INTO result + FROM t_author + WHERE first_name LIKE author_name + OR last_name LIKE author_name; +END +/ + +CREATE PROCEDURE p391 ( + i1 INTEGER, INOUT io1 INTEGER, OUT o1 INTEGER, + OUT o2 INTEGER, INOUT io2 INTEGER, i2 INTEGER) + COMMENT 'Integration tests for #391' +BEGIN + SET o1 = io1; + SET io1 = i1; + + SET o2 = io2; + SET io2 = i2; +END +/ + +CREATE FUNCTION f_author_exists (author_name VARCHAR(50)) + RETURNS INT + COMMENT 'Check existence of an author' +BEGIN + RETURN (SELECT COUNT(*) > 0 + FROM t_author + WHERE first_name LIKE author_name + OR last_name LIKE author_name); +END +/ + +CREATE FUNCTION f_one () + RETURNS INT + COMMENT '1 constant value' +BEGIN + RETURN 1; +END +/ + +CREATE FUNCTION f_number (n int) + RETURNS INT + COMMENT 'echo n' +BEGIN + RETURN n; +END +/ + +CREATE FUNCTION f317 (p1 int, p2 int, p3 int, p4 int) + RETURNS INT + COMMENT 'integration test for #317' +BEGIN + RETURN 1000 * p1 + 100 * p2 + p4; +END +/ \ No newline at end of file diff --git a/jOOQ-test/src/org/jooq/test/mysql/generatedclasses/Keys.java b/jOOQ-test/src/org/jooq/test/mysql/generatedclasses/Keys.java new file mode 100644 index 00000000000..96cf9459f7c --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/mysql/generatedclasses/Keys.java @@ -0,0 +1,49 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.mysql.generatedclasses; + +/** + * This class is generated by jOOQ. + * + * A class modelling foreign key relationships between tables of the test schema + */ +@SuppressWarnings({"unchecked"}) +public class Keys extends org.jooq.impl.AbstractKeys { + + // IDENTITY definitions + public static final org.jooq.Identity IDENTITY_T_IDENTITY_PK = createIdentity(org.jooq.test.mysql.generatedclasses.tables.TIdentityPk.T_IDENTITY_PK, org.jooq.test.mysql.generatedclasses.tables.TIdentityPk.ID); + public static final org.jooq.Identity IDENTITY_T_TRIGGERS = createIdentity(org.jooq.test.mysql.generatedclasses.tables.TTriggers.T_TRIGGERS, org.jooq.test.mysql.generatedclasses.tables.TTriggers.ID_GENERATED); + + // UNIQUE and PRIMARY KEY definitions + public static final org.jooq.UniqueKey KEY_T_639_NUMBERS_TABLE_PRIMARY = createUniqueKey(org.jooq.test.mysql.generatedclasses.tables.T_639NumbersTable.T_639_NUMBERS_TABLE, org.jooq.test.mysql.generatedclasses.tables.T_639NumbersTable.ID); + public static final org.jooq.UniqueKey KEY_T_725_LOB_TEST_PRIMARY = createUniqueKey(org.jooq.test.mysql.generatedclasses.tables.T_725LobTest.T_725_LOB_TEST, org.jooq.test.mysql.generatedclasses.tables.T_725LobTest.ID); + public static final org.jooq.UniqueKey KEY_T_AUTHOR_PRIMARY = createUniqueKey(org.jooq.test.mysql.generatedclasses.tables.TAuthor.T_AUTHOR, org.jooq.test.mysql.generatedclasses.tables.TAuthor.ID); + public static final org.jooq.UniqueKey KEY_T_BOOK_PRIMARY = createUniqueKey(org.jooq.test.mysql.generatedclasses.tables.TBook.T_BOOK, org.jooq.test.mysql.generatedclasses.tables.TBook.ID); + public static final org.jooq.UniqueKey KEY_T_BOOK_STORE_UK_T_BOOK_STORE_NAME = createUniqueKey(org.jooq.test.mysql.generatedclasses.tables.TBookStore.T_BOOK_STORE, org.jooq.test.mysql.generatedclasses.tables.TBookStore.NAME); + public static final org.jooq.UniqueKey KEY_T_BOOK_TO_BOOK_STORE_PRIMARY = createUniqueKey(org.jooq.test.mysql.generatedclasses.tables.TBookToBookStore.T_BOOK_TO_BOOK_STORE, org.jooq.test.mysql.generatedclasses.tables.TBookToBookStore.BOOK_STORE_NAME, org.jooq.test.mysql.generatedclasses.tables.TBookToBookStore.BOOK_ID); + public static final org.jooq.UniqueKey KEY_T_BOOLEANS_PRIMARY = createUniqueKey(org.jooq.test.mysql.generatedclasses.tables.TBooleans.T_BOOLEANS, org.jooq.test.mysql.generatedclasses.tables.TBooleans.ID); + public static final org.jooq.UniqueKey KEY_T_DATES_PRIMARY = createUniqueKey(org.jooq.test.mysql.generatedclasses.tables.TDates.T_DATES, org.jooq.test.mysql.generatedclasses.tables.TDates.ID); + public static final org.jooq.UniqueKey KEY_T_IDENTITY_PK_PRIMARY = createUniqueKey(org.jooq.test.mysql.generatedclasses.tables.TIdentityPk.T_IDENTITY_PK, org.jooq.test.mysql.generatedclasses.tables.TIdentityPk.ID); + public static final org.jooq.UniqueKey KEY_T_TRIGGERS_PRIMARY = createUniqueKey(org.jooq.test.mysql.generatedclasses.tables.TTriggers.T_TRIGGERS, org.jooq.test.mysql.generatedclasses.tables.TTriggers.ID_GENERATED); + public static final org.jooq.UniqueKey KEY_X_TEST_CASE_64_69_PRIMARY = createUniqueKey(org.jooq.test.mysql.generatedclasses.tables.XTestCase_64_69.X_TEST_CASE_64_69, org.jooq.test.mysql.generatedclasses.tables.XTestCase_64_69.ID); + public static final org.jooq.UniqueKey KEY_X_TEST_CASE_71_PRIMARY = createUniqueKey(org.jooq.test.mysql.generatedclasses.tables.XTestCase_71.X_TEST_CASE_71, org.jooq.test.mysql.generatedclasses.tables.XTestCase_71.ID); + public static final org.jooq.UniqueKey KEY_X_TEST_CASE_85_PRIMARY = createUniqueKey(org.jooq.test.mysql.generatedclasses.tables.XTestCase_85.X_TEST_CASE_85, org.jooq.test.mysql.generatedclasses.tables.XTestCase_85.ID); + public static final org.jooq.UniqueKey KEY_X_UNUSED_PRIMARY = createUniqueKey(org.jooq.test.mysql.generatedclasses.tables.XUnused.X_UNUSED, org.jooq.test.mysql.generatedclasses.tables.XUnused.ID, org.jooq.test.mysql.generatedclasses.tables.XUnused.NAME); + public static final org.jooq.UniqueKey KEY_X_UNUSED_UK_X_UNUSED_ID = createUniqueKey(org.jooq.test.mysql.generatedclasses.tables.XUnused.X_UNUSED, org.jooq.test.mysql.generatedclasses.tables.XUnused.ID); + + // FOREIGN KEY definitions + public static final org.jooq.ForeignKey FK_T_BOOK_AUTHOR_ID = createForeignKey(KEY_T_AUTHOR_PRIMARY, org.jooq.test.mysql.generatedclasses.tables.TBook.T_BOOK, org.jooq.test.mysql.generatedclasses.tables.TBook.AUTHOR_ID); + public static final org.jooq.ForeignKey FK_T_BOOK_CO_AUTHOR_ID = createForeignKey(KEY_T_AUTHOR_PRIMARY, org.jooq.test.mysql.generatedclasses.tables.TBook.T_BOOK, org.jooq.test.mysql.generatedclasses.tables.TBook.CO_AUTHOR_ID); + public static final org.jooq.ForeignKey FK_B2BS_BS_NAME = createForeignKey(KEY_T_BOOK_STORE_UK_T_BOOK_STORE_NAME, org.jooq.test.mysql.generatedclasses.tables.TBookToBookStore.T_BOOK_TO_BOOK_STORE, org.jooq.test.mysql.generatedclasses.tables.TBookToBookStore.BOOK_STORE_NAME); + public static final org.jooq.ForeignKey FK_B2BS_B_ID = createForeignKey(KEY_T_BOOK_PRIMARY, org.jooq.test.mysql.generatedclasses.tables.TBookToBookStore.T_BOOK_TO_BOOK_STORE, org.jooq.test.mysql.generatedclasses.tables.TBookToBookStore.BOOK_ID); + public static final org.jooq.ForeignKey FK_X_TEST_CASE_64_69A = createForeignKey(KEY_X_UNUSED_PRIMARY, org.jooq.test.mysql.generatedclasses.tables.XTestCase_64_69.X_TEST_CASE_64_69, org.jooq.test.mysql.generatedclasses.tables.XTestCase_64_69.UNUSED_ID); + public static final org.jooq.ForeignKey FK_X_TEST_CASE_71 = createForeignKey(KEY_X_TEST_CASE_64_69_PRIMARY, org.jooq.test.mysql.generatedclasses.tables.XTestCase_71.X_TEST_CASE_71, org.jooq.test.mysql.generatedclasses.tables.XTestCase_71.TEST_CASE_64_69_ID); + public static final org.jooq.ForeignKey FK_X_TEST_CASE_85 = createForeignKey(KEY_X_UNUSED_PRIMARY, org.jooq.test.mysql.generatedclasses.tables.XTestCase_85.X_TEST_CASE_85, org.jooq.test.mysql.generatedclasses.tables.XTestCase_85.X_UNUSED_ID, org.jooq.test.mysql.generatedclasses.tables.XTestCase_85.X_UNUSED_NAME); + public static final org.jooq.ForeignKey FK_X_UNUSED_SELF = createForeignKey(KEY_X_UNUSED_PRIMARY, org.jooq.test.mysql.generatedclasses.tables.XUnused.X_UNUSED, org.jooq.test.mysql.generatedclasses.tables.XUnused.ID_REF, org.jooq.test.mysql.generatedclasses.tables.XUnused.NAME_REF); + + /** + * No instances + */ + private Keys() {} +} diff --git a/jOOQ-test/src/org/jooq/test/mysql/generatedclasses/Routines.java b/jOOQ-test/src/org/jooq/test/mysql/generatedclasses/Routines.java new file mode 100644 index 00000000000..ae829272d0c --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/mysql/generatedclasses/Routines.java @@ -0,0 +1,251 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.mysql.generatedclasses; + +/** + * This class is generated by jOOQ. + * + * Convenience access to all stored procedures and functions in test + */ +public final class Routines { + + /** + * Call test.f317 + * + * @param p1 + * @param p2 + * @param p3 + * @param p4 + * @throws org.jooq.exception.DataAccessException if something went wrong executing the query + */ + public static java.lang.Integer f317(org.jooq.Configuration configuration, java.lang.Integer p1, java.lang.Integer p2, java.lang.Integer p3, java.lang.Integer p4) { + org.jooq.test.mysql.generatedclasses.routines.F317 f = new org.jooq.test.mysql.generatedclasses.routines.F317(); + f.setP1(p1); + f.setP2(p2); + f.setP3(p3); + f.setP4(p4); + + f.execute(configuration); + return f.getReturnValue(); + } + + /** + * Get test.f317 as a field + * + * @param p1 + * @param p2 + * @param p3 + * @param p4 + */ + public static org.jooq.Field f317(java.lang.Integer p1, java.lang.Integer p2, java.lang.Integer p3, java.lang.Integer p4) { + org.jooq.test.mysql.generatedclasses.routines.F317 f = new org.jooq.test.mysql.generatedclasses.routines.F317(); + f.setP1(p1); + f.setP2(p2); + f.setP3(p3); + f.setP4(p4); + + return f.asField(); + } + + /** + * Get test.f317 as a field + * + * @param p1 + * @param p2 + * @param p3 + * @param p4 + */ + public static org.jooq.Field f317(org.jooq.Field p1, org.jooq.Field p2, org.jooq.Field p3, org.jooq.Field p4) { + org.jooq.test.mysql.generatedclasses.routines.F317 f = new org.jooq.test.mysql.generatedclasses.routines.F317(); + f.setP1(p1); + f.setP2(p2); + f.setP3(p3); + f.setP4(p4); + + return f.asField(); + } + + /** + * Call test.f_author_exists + * + * @param authorName + * @throws org.jooq.exception.DataAccessException if something went wrong executing the query + */ + public static java.lang.Integer fAuthorExists(org.jooq.Configuration configuration, java.lang.String authorName) { + org.jooq.test.mysql.generatedclasses.routines.FAuthorExists f = new org.jooq.test.mysql.generatedclasses.routines.FAuthorExists(); + f.setAuthorName(authorName); + + f.execute(configuration); + return f.getReturnValue(); + } + + /** + * Get test.f_author_exists as a field + * + * @param authorName + */ + public static org.jooq.Field fAuthorExists(java.lang.String authorName) { + org.jooq.test.mysql.generatedclasses.routines.FAuthorExists f = new org.jooq.test.mysql.generatedclasses.routines.FAuthorExists(); + f.setAuthorName(authorName); + + return f.asField(); + } + + /** + * Get test.f_author_exists as a field + * + * @param authorName + */ + public static org.jooq.Field fAuthorExists(org.jooq.Field authorName) { + org.jooq.test.mysql.generatedclasses.routines.FAuthorExists f = new org.jooq.test.mysql.generatedclasses.routines.FAuthorExists(); + f.setAuthorName(authorName); + + return f.asField(); + } + + /** + * Call test.f_number + * + * @param n + * @throws org.jooq.exception.DataAccessException if something went wrong executing the query + */ + public static java.lang.Integer fNumber(org.jooq.Configuration configuration, java.lang.Integer n) { + org.jooq.test.mysql.generatedclasses.routines.FNumber f = new org.jooq.test.mysql.generatedclasses.routines.FNumber(); + f.setN(n); + + f.execute(configuration); + return f.getReturnValue(); + } + + /** + * Get test.f_number as a field + * + * @param n + */ + public static org.jooq.Field fNumber(java.lang.Integer n) { + org.jooq.test.mysql.generatedclasses.routines.FNumber f = new org.jooq.test.mysql.generatedclasses.routines.FNumber(); + f.setN(n); + + return f.asField(); + } + + /** + * Get test.f_number as a field + * + * @param n + */ + public static org.jooq.Field fNumber(org.jooq.Field n) { + org.jooq.test.mysql.generatedclasses.routines.FNumber f = new org.jooq.test.mysql.generatedclasses.routines.FNumber(); + f.setN(n); + + return f.asField(); + } + + /** + * Call test.f_one + * + * @throws org.jooq.exception.DataAccessException if something went wrong executing the query + */ + public static java.lang.Integer fOne(org.jooq.Configuration configuration) { + org.jooq.test.mysql.generatedclasses.routines.FOne f = new org.jooq.test.mysql.generatedclasses.routines.FOne(); + + f.execute(configuration); + return f.getReturnValue(); + } + + /** + * Get test.f_one as a field + * + */ + public static org.jooq.Field fOne() { + org.jooq.test.mysql.generatedclasses.routines.FOne f = new org.jooq.test.mysql.generatedclasses.routines.FOne(); + + return f.asField(); + } + + /** + * Call test.p391 + * + * @param i1 IN parameter + * @param io1 IN OUT parameter + * @param o1 OUT parameter + * @param o2 OUT parameter + * @param io2 IN OUT parameter + * @param i2 IN parameter + * @throws org.jooq.exception.DataAccessException if something went wrong executing the query + */ + public static org.jooq.test.mysql.generatedclasses.routines.P391 p391(org.jooq.Configuration configuration, java.lang.Integer i1, java.lang.Integer io1, java.lang.Integer io2, java.lang.Integer i2) { + org.jooq.test.mysql.generatedclasses.routines.P391 p = new org.jooq.test.mysql.generatedclasses.routines.P391(); + p.setI1(i1); + p.setIo1(io1); + p.setIo2(io2); + p.setI2(i2); + + p.execute(configuration); + return p; + } + + /** + * Call test.p_author_exists + * + * @param authorName IN parameter + * @param result OUT parameter + * @throws org.jooq.exception.DataAccessException if something went wrong executing the query + */ + public static java.lang.Integer pAuthorExists(org.jooq.Configuration configuration, java.lang.String authorName) { + org.jooq.test.mysql.generatedclasses.routines.PAuthorExists p = new org.jooq.test.mysql.generatedclasses.routines.PAuthorExists(); + p.setAuthorName(authorName); + + p.execute(configuration); + return p.getResult(); + } + + /** + * Call test.p_create_author + * + * @throws org.jooq.exception.DataAccessException if something went wrong executing the query + */ + public static void pCreateAuthor(org.jooq.Configuration configuration) { + org.jooq.test.mysql.generatedclasses.routines.PCreateAuthor p = new org.jooq.test.mysql.generatedclasses.routines.PCreateAuthor(); + + p.execute(configuration); + } + + /** + * Call test.p_create_author_by_name + * + * @param firstName IN parameter + * @param lastName IN parameter + * @throws org.jooq.exception.DataAccessException if something went wrong executing the query + */ + public static void pCreateAuthorByName(org.jooq.Configuration configuration, java.lang.String firstName, java.lang.String lastName) { + org.jooq.test.mysql.generatedclasses.routines.PCreateAuthorByName p = new org.jooq.test.mysql.generatedclasses.routines.PCreateAuthorByName(); + p.setFirstName(firstName); + p.setLastName(lastName); + + p.execute(configuration); + } + + /** + * Call test.p_unused + * + * @param in1 IN parameter + * @param out1 OUT parameter + * @param out2 IN OUT parameter + * @throws org.jooq.exception.DataAccessException if something went wrong executing the query + */ + public static org.jooq.test.mysql.generatedclasses.routines.PUnused pUnused(org.jooq.Configuration configuration, java.lang.String in1, java.lang.Boolean out2) { + org.jooq.test.mysql.generatedclasses.routines.PUnused p = new org.jooq.test.mysql.generatedclasses.routines.PUnused(); + p.setIn1(in1); + p.setOut2(out2); + + p.execute(configuration); + return p; + } + + /** + * No instances + */ + private Routines() {} +} diff --git a/jOOQ-test/src/org/jooq/test/mysql/generatedclasses/Tables.java b/jOOQ-test/src/org/jooq/test/mysql/generatedclasses/Tables.java new file mode 100644 index 00000000000..fbebdac278c --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/mysql/generatedclasses/Tables.java @@ -0,0 +1,122 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.mysql.generatedclasses; + +/** + * This class is generated by jOOQ. + * + * Convenience access to all tables in test + */ +public final class Tables { + + /** + * The table test.t_639_numbers_table + */ + public static org.jooq.test.mysql.generatedclasses.tables.T_639NumbersTable T_639_NUMBERS_TABLE = org.jooq.test.mysql.generatedclasses.tables.T_639NumbersTable.T_639_NUMBERS_TABLE; + + /** + * The table test.t_658_ref + */ + public static org.jooq.test.mysql.generatedclasses.tables.T_658Ref T_658_REF = org.jooq.test.mysql.generatedclasses.tables.T_658Ref.T_658_REF; + + /** + * The table test.t_725_lob_test + */ + public static org.jooq.test.mysql.generatedclasses.tables.T_725LobTest T_725_LOB_TEST = org.jooq.test.mysql.generatedclasses.tables.T_725LobTest.T_725_LOB_TEST; + + /** + * The table test.t_785 + */ + public static org.jooq.test.mysql.generatedclasses.tables.T_785 T_785 = org.jooq.test.mysql.generatedclasses.tables.T_785.T_785; + + /** + * The table test.t_959 + */ + public static org.jooq.test.mysql.generatedclasses.tables.T_959 T_959 = org.jooq.test.mysql.generatedclasses.tables.T_959.T_959; + + /** + * An entity holding authors of books + */ + public static org.jooq.test.mysql.generatedclasses.tables.TAuthor T_AUTHOR = org.jooq.test.mysql.generatedclasses.tables.TAuthor.T_AUTHOR; + + /** + * An entity holding books + */ + public static org.jooq.test.mysql.generatedclasses.tables.TBook T_BOOK = org.jooq.test.mysql.generatedclasses.tables.TBook.T_BOOK; + + /** + * A book store + */ + public static org.jooq.test.mysql.generatedclasses.tables.TBookStore T_BOOK_STORE = org.jooq.test.mysql.generatedclasses.tables.TBookStore.T_BOOK_STORE; + + /** + * An m:n relation between books and book stores + */ + public static org.jooq.test.mysql.generatedclasses.tables.TBookToBookStore T_BOOK_TO_BOOK_STORE = org.jooq.test.mysql.generatedclasses.tables.TBookToBookStore.T_BOOK_TO_BOOK_STORE; + + /** + * The table test.t_booleans + */ + public static org.jooq.test.mysql.generatedclasses.tables.TBooleans T_BOOLEANS = org.jooq.test.mysql.generatedclasses.tables.TBooleans.T_BOOLEANS; + + /** + * The table test.t_dates + */ + public static org.jooq.test.mysql.generatedclasses.tables.TDates T_DATES = org.jooq.test.mysql.generatedclasses.tables.TDates.T_DATES; + + /** + * The table test.t_identity_pk + */ + public static org.jooq.test.mysql.generatedclasses.tables.TIdentityPk T_IDENTITY_PK = org.jooq.test.mysql.generatedclasses.tables.TIdentityPk.T_IDENTITY_PK; + + /** + * The table test.t_triggers + */ + public static org.jooq.test.mysql.generatedclasses.tables.TTriggers T_TRIGGERS = org.jooq.test.mysql.generatedclasses.tables.TTriggers.T_TRIGGERS; + + /** + * The table test.t_unsigned + */ + public static org.jooq.test.mysql.generatedclasses.tables.TUnsigned T_UNSIGNED = org.jooq.test.mysql.generatedclasses.tables.TUnsigned.T_UNSIGNED; + + /** + * VIEW + */ + public static org.jooq.test.mysql.generatedclasses.tables.VAuthor V_AUTHOR = org.jooq.test.mysql.generatedclasses.tables.VAuthor.V_AUTHOR; + + /** + * VIEW + */ + public static org.jooq.test.mysql.generatedclasses.tables.VBook V_BOOK = org.jooq.test.mysql.generatedclasses.tables.VBook.V_BOOK; + + /** + * VIEW + */ + public static org.jooq.test.mysql.generatedclasses.tables.VLibrary V_LIBRARY = org.jooq.test.mysql.generatedclasses.tables.VLibrary.V_LIBRARY; + + /** + * An unused table in the same schema. + */ + public static org.jooq.test.mysql.generatedclasses.tables.XTestCase_64_69 X_TEST_CASE_64_69 = org.jooq.test.mysql.generatedclasses.tables.XTestCase_64_69.X_TEST_CASE_64_69; + + /** + * An unused table in the same schema. + */ + public static org.jooq.test.mysql.generatedclasses.tables.XTestCase_71 X_TEST_CASE_71 = org.jooq.test.mysql.generatedclasses.tables.XTestCase_71.X_TEST_CASE_71; + + /** + * An unused table in the same schema. + */ + public static org.jooq.test.mysql.generatedclasses.tables.XTestCase_85 X_TEST_CASE_85 = org.jooq.test.mysql.generatedclasses.tables.XTestCase_85.X_TEST_CASE_85; + + /** + * An unused table in the same schema. + */ + public static org.jooq.test.mysql.generatedclasses.tables.XUnused X_UNUSED = org.jooq.test.mysql.generatedclasses.tables.XUnused.X_UNUSED; + + /** + * No instances + */ + private Tables() {} +} diff --git a/jOOQ-test/src/org/jooq/test/mysql/generatedclasses/Test.java b/jOOQ-test/src/org/jooq/test/mysql/generatedclasses/Test.java new file mode 100644 index 00000000000..677ad74da1e --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/mysql/generatedclasses/Test.java @@ -0,0 +1,50 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.mysql.generatedclasses; + +/** + * This class is generated by jOOQ. + */ +public class Test extends org.jooq.impl.SchemaImpl { + + private static final long serialVersionUID = 1629147327; + + /** + * The singleton instance of test + */ + public static final Test TEST = new Test(); + + /** + * No further instances allowed + */ + private Test() { + super("test"); + } + + @Override + public final java.util.List> getTables() { + return java.util.Arrays.>asList( + org.jooq.test.mysql.generatedclasses.tables.T_639NumbersTable.T_639_NUMBERS_TABLE, + org.jooq.test.mysql.generatedclasses.tables.T_658Ref.T_658_REF, + org.jooq.test.mysql.generatedclasses.tables.T_725LobTest.T_725_LOB_TEST, + org.jooq.test.mysql.generatedclasses.tables.T_785.T_785, + org.jooq.test.mysql.generatedclasses.tables.T_959.T_959, + org.jooq.test.mysql.generatedclasses.tables.TAuthor.T_AUTHOR, + org.jooq.test.mysql.generatedclasses.tables.TBook.T_BOOK, + org.jooq.test.mysql.generatedclasses.tables.TBookStore.T_BOOK_STORE, + org.jooq.test.mysql.generatedclasses.tables.TBookToBookStore.T_BOOK_TO_BOOK_STORE, + org.jooq.test.mysql.generatedclasses.tables.TBooleans.T_BOOLEANS, + org.jooq.test.mysql.generatedclasses.tables.TDates.T_DATES, + org.jooq.test.mysql.generatedclasses.tables.TIdentityPk.T_IDENTITY_PK, + org.jooq.test.mysql.generatedclasses.tables.TTriggers.T_TRIGGERS, + org.jooq.test.mysql.generatedclasses.tables.TUnsigned.T_UNSIGNED, + org.jooq.test.mysql.generatedclasses.tables.VAuthor.V_AUTHOR, + org.jooq.test.mysql.generatedclasses.tables.VBook.V_BOOK, + org.jooq.test.mysql.generatedclasses.tables.VLibrary.V_LIBRARY, + org.jooq.test.mysql.generatedclasses.tables.XTestCase_64_69.X_TEST_CASE_64_69, + org.jooq.test.mysql.generatedclasses.tables.XTestCase_71.X_TEST_CASE_71, + org.jooq.test.mysql.generatedclasses.tables.XTestCase_85.X_TEST_CASE_85, + org.jooq.test.mysql.generatedclasses.tables.XUnused.X_UNUSED); + } +} diff --git a/jOOQ-test/src/org/jooq/test/mysql/generatedclasses/TestFactory.java b/jOOQ-test/src/org/jooq/test/mysql/generatedclasses/TestFactory.java new file mode 100644 index 00000000000..8f9eb41bf14 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/mysql/generatedclasses/TestFactory.java @@ -0,0 +1,41 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.mysql.generatedclasses; + +/** + * This class is generated by jOOQ. + */ +public class TestFactory extends org.jooq.util.mysql.MySQLFactory { + + private static final long serialVersionUID = -151076125; + + /** + * Create a factory with a connection + * + * @param connection The connection to use with objects created from this factory + */ + public TestFactory(java.sql.Connection connection) { + super(connection); + } + + /** + * Create a factory with a connection and a schema mapping + * + * @deprecated - 2.0.5 - Use {@link #TestFactory(java.sql.Connection, org.jooq.conf.Settings)} instead + */ + @Deprecated + public TestFactory(java.sql.Connection connection, org.jooq.SchemaMapping mapping) { + super(connection, mapping); + } + + /** + * Create a factory with a connection and some settings + * + * @param connection The connection to use with objects created from this factory + * @param settings The settings to apply to objects created from this factory + */ + public TestFactory(java.sql.Connection connection, org.jooq.conf.Settings settings) { + super(connection, settings); + } +} diff --git a/jOOQ-test/src/org/jooq/test/mysql/generatedclasses/enums/TBookStatus.java b/jOOQ-test/src/org/jooq/test/mysql/generatedclasses/enums/TBookStatus.java new file mode 100644 index 00000000000..e1f3bfb394f --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/mysql/generatedclasses/enums/TBookStatus.java @@ -0,0 +1,35 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.mysql.generatedclasses.enums; + +/** + * This class is generated by jOOQ. + * + * The book's stock status + */ +public enum TBookStatus implements org.jooq.EnumType { + SOLD_OUT("SOLD OUT"), + + ORDERED("ORDERED"), + + ON_STOCK("ON STOCK"), + + ; + + private final java.lang.String literal; + + private TBookStatus(java.lang.String literal) { + this.literal = literal; + } + + @Override + public java.lang.String getName() { + return "t_book_STATUS"; + } + + @Override + public java.lang.String getLiteral() { + return literal; + } +} diff --git a/jOOQ-test/src/org/jooq/test/mysql/generatedclasses/enums/TLanguage.java b/jOOQ-test/src/org/jooq/test/mysql/generatedclasses/enums/TLanguage.java new file mode 100644 index 00000000000..558750d746c --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/mysql/generatedclasses/enums/TLanguage.java @@ -0,0 +1,67 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.mysql.generatedclasses.enums; + +/** + * This class is generated by jOOQ. + * + * An entity holding language master data + */ +public enum TLanguage implements org.jooq.MasterDataType { + + /** + * English + */ + en(1, "en", "English"), + + /** + * Deutsch + */ + de(2, "de", "Deutsch"), + + /** + * Français + */ + fr(3, "fr", "Français"), + pt(4, "pt", null), + ; + + private final java.lang.Integer id; + private final java.lang.String cd; + private final java.lang.String description; + + private TLanguage(java.lang.Integer id, java.lang.String cd, java.lang.String description) { + this.id = id; + this.cd = cd; + this.description = description; + } + + @Override + public java.lang.Integer getPrimaryKey() { + return id; + } + + /** + * The language ID + * + * PRIMARY KEY + */ + public final java.lang.Integer getId() { + return id; + } + + /** + * The language ISO code + */ + public final java.lang.String getCd() { + return cd; + } + + /** + * The language description + */ + public final java.lang.String getDescription() { + return description; + } +} diff --git a/jOOQ-test/src/org/jooq/test/mysql/generatedclasses/enums/T_658_11.java b/jOOQ-test/src/org/jooq/test/mysql/generatedclasses/enums/T_658_11.java new file mode 100644 index 00000000000..c252712bcea --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/mysql/generatedclasses/enums/T_658_11.java @@ -0,0 +1,46 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.mysql.generatedclasses.enums; + +/** + * This class is generated by jOOQ. + */ +public enum T_658_11 implements org.jooq.MasterDataType { + + /** + * A + */ + A("A"), + + /** + * B + */ + B("B"), + + /** + * C + */ + C("C"), + ; + + private final java.lang.String id; + + private T_658_11(java.lang.String id) { + this.id = id; + } + + @Override + public java.lang.String getPrimaryKey() { + return id; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final java.lang.String getId() { + return id; + } +} diff --git a/jOOQ-test/src/org/jooq/test/mysql/generatedclasses/enums/T_658_12.java b/jOOQ-test/src/org/jooq/test/mysql/generatedclasses/enums/T_658_12.java new file mode 100644 index 00000000000..788fb59872e --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/mysql/generatedclasses/enums/T_658_12.java @@ -0,0 +1,55 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.mysql.generatedclasses.enums; + +/** + * This class is generated by jOOQ. + */ +public enum T_658_12 implements org.jooq.MasterDataType { + + /** + * A + */ + A("A", "A"), + + /** + * B + */ + B("B", "B"), + + /** + * C + */ + C("C", "C"), + ; + + private final java.lang.String id; + private final java.lang.String cd; + + private T_658_12(java.lang.String id, java.lang.String cd) { + this.id = id; + this.cd = cd; + } + + @Override + public java.lang.String getPrimaryKey() { + return id; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final java.lang.String getId() { + return id; + } + + /** + * An uncommented item + */ + public final java.lang.String getCd() { + return cd; + } +} diff --git a/jOOQ-test/src/org/jooq/test/mysql/generatedclasses/enums/T_658_21.java b/jOOQ-test/src/org/jooq/test/mysql/generatedclasses/enums/T_658_21.java new file mode 100644 index 00000000000..d17b50b4d9d --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/mysql/generatedclasses/enums/T_658_21.java @@ -0,0 +1,46 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.mysql.generatedclasses.enums; + +/** + * This class is generated by jOOQ. + */ +public enum T_658_21 implements org.jooq.MasterDataType { + + /** + * 1 + */ + _1(1), + + /** + * 2 + */ + _2(2), + + /** + * 3 + */ + _3(3), + ; + + private final java.lang.Integer id; + + private T_658_21(java.lang.Integer id) { + this.id = id; + } + + @Override + public java.lang.Integer getPrimaryKey() { + return id; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final java.lang.Integer getId() { + return id; + } +} diff --git a/jOOQ-test/src/org/jooq/test/mysql/generatedclasses/enums/T_658_22.java b/jOOQ-test/src/org/jooq/test/mysql/generatedclasses/enums/T_658_22.java new file mode 100644 index 00000000000..e2ca3f9acb1 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/mysql/generatedclasses/enums/T_658_22.java @@ -0,0 +1,55 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.mysql.generatedclasses.enums; + +/** + * This class is generated by jOOQ. + */ +public enum T_658_22 implements org.jooq.MasterDataType { + + /** + * 1 + */ + _1(1, 1), + + /** + * 2 + */ + _2(2, 2), + + /** + * 3 + */ + _3(3, 3), + ; + + private final java.lang.Integer id; + private final java.lang.Integer cd; + + private T_658_22(java.lang.Integer id, java.lang.Integer cd) { + this.id = id; + this.cd = cd; + } + + @Override + public java.lang.Integer getPrimaryKey() { + return id; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final java.lang.Integer getId() { + return id; + } + + /** + * An uncommented item + */ + public final java.lang.Integer getCd() { + return cd; + } +} diff --git a/jOOQ-test/src/org/jooq/test/mysql/generatedclasses/enums/T_658_31.java b/jOOQ-test/src/org/jooq/test/mysql/generatedclasses/enums/T_658_31.java new file mode 100644 index 00000000000..a6371d56345 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/mysql/generatedclasses/enums/T_658_31.java @@ -0,0 +1,46 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.mysql.generatedclasses.enums; + +/** + * This class is generated by jOOQ. + */ +public enum T_658_31 implements org.jooq.MasterDataType { + + /** + * 1 + */ + _1(1L), + + /** + * 2 + */ + _2(2L), + + /** + * 3 + */ + _3(3L), + ; + + private final java.lang.Long id; + + private T_658_31(java.lang.Long id) { + this.id = id; + } + + @Override + public java.lang.Long getPrimaryKey() { + return id; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final java.lang.Long getId() { + return id; + } +} diff --git a/jOOQ-test/src/org/jooq/test/mysql/generatedclasses/enums/T_658_32.java b/jOOQ-test/src/org/jooq/test/mysql/generatedclasses/enums/T_658_32.java new file mode 100644 index 00000000000..1f0c9be676e --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/mysql/generatedclasses/enums/T_658_32.java @@ -0,0 +1,55 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.mysql.generatedclasses.enums; + +/** + * This class is generated by jOOQ. + */ +public enum T_658_32 implements org.jooq.MasterDataType { + + /** + * 1 + */ + _1(1L, 1L), + + /** + * 2 + */ + _2(2L, 2L), + + /** + * 3 + */ + _3(3L, 3L), + ; + + private final java.lang.Long id; + private final java.lang.Long cd; + + private T_658_32(java.lang.Long id, java.lang.Long cd) { + this.id = id; + this.cd = cd; + } + + @Override + public java.lang.Long getPrimaryKey() { + return id; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final java.lang.Long getId() { + return id; + } + + /** + * An uncommented item + */ + public final java.lang.Long getCd() { + return cd; + } +} diff --git a/jOOQ-test/src/org/jooq/test/mysql/generatedclasses/enums/T_959JavaKeywords.java b/jOOQ-test/src/org/jooq/test/mysql/generatedclasses/enums/T_959JavaKeywords.java new file mode 100644 index 00000000000..60d6f1395a9 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/mysql/generatedclasses/enums/T_959JavaKeywords.java @@ -0,0 +1,131 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.mysql.generatedclasses.enums; + +/** + * This class is generated by jOOQ. + */ +public enum T_959JavaKeywords implements org.jooq.EnumType { + abstract_("abstract"), + + assert_("assert"), + + boolean_("boolean"), + + break_("break"), + + byte_("byte"), + + case_("case"), + + catch_("catch"), + + char_("char"), + + class_("class"), + + const_("const"), + + continue_("continue"), + + default_("default"), + + double_("double"), + + do_("do"), + + else_("else"), + + enum_("enum"), + + extends_("extends"), + + false_("false"), + + final_("final"), + + finally_("finally"), + + float_("float"), + + for_("for"), + + goto_("goto"), + + if_("if"), + + implements_("implements"), + + import_("import"), + + instanceof_("instanceof"), + + interface_("interface"), + + int_("int"), + + long_("long"), + + native_("native"), + + new_("new"), + + package_("package"), + + private_("private"), + + protected_("protected"), + + public_("public"), + + return_("return"), + + short_("short"), + + static_("static"), + + strictfp_("strictfp"), + + super_("super"), + + switch_("switch"), + + synchronized_("synchronized"), + + this_("this"), + + throw_("throw"), + + throws_("throws"), + + transient_("transient"), + + true_("true"), + + try_("try"), + + void_("void"), + + volatile_("volatile"), + + while_("while"), + + ; + + private final java.lang.String literal; + + private T_959JavaKeywords(java.lang.String literal) { + this.literal = literal; + } + + @Override + public java.lang.String getName() { + return "t_959_java_keywords"; + } + + @Override + public java.lang.String getLiteral() { + return literal; + } +} diff --git a/jOOQ-test/src/org/jooq/test/mysql/generatedclasses/enums/VBookStatus.java b/jOOQ-test/src/org/jooq/test/mysql/generatedclasses/enums/VBookStatus.java new file mode 100644 index 00000000000..62006ce279c --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/mysql/generatedclasses/enums/VBookStatus.java @@ -0,0 +1,35 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.mysql.generatedclasses.enums; + +/** + * This class is generated by jOOQ. + * + * The book's stock status + */ +public enum VBookStatus implements org.jooq.EnumType { + SOLD_OUT("SOLD OUT"), + + ORDERED("ORDERED"), + + ON_STOCK("ON STOCK"), + + ; + + private final java.lang.String literal; + + private VBookStatus(java.lang.String literal) { + this.literal = literal; + } + + @Override + public java.lang.String getName() { + return "v_book_STATUS"; + } + + @Override + public java.lang.String getLiteral() { + return literal; + } +} diff --git a/jOOQ-test/src/org/jooq/test/mysql/generatedclasses/routines/F317.java b/jOOQ-test/src/org/jooq/test/mysql/generatedclasses/routines/F317.java new file mode 100644 index 00000000000..b666100286a --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/mysql/generatedclasses/routines/F317.java @@ -0,0 +1,117 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.mysql.generatedclasses.routines; + +/** + * This class is generated by jOOQ. + * + * integration test for #317 + */ +public class F317 extends org.jooq.impl.AbstractRoutine { + + private static final long serialVersionUID = 627542082; + + + /** + * An uncommented item + */ + public static final org.jooq.Parameter RETURN_VALUE = createParameter("RETURN_VALUE", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter P1 = createParameter("p1", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter P2 = createParameter("p2", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter P3 = createParameter("p3", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter P4 = createParameter("p4", org.jooq.impl.SQLDataType.INTEGER); + + /** + * Create a new routine call instance + */ + public F317() { + super("f317", org.jooq.test.mysql.generatedclasses.Test.TEST, org.jooq.impl.SQLDataType.INTEGER); + + setReturnParameter(RETURN_VALUE); + addInParameter(P1); + addInParameter(P2); + addInParameter(P3); + addInParameter(P4); + } + + /** + * Set the p1 parameter to the routine + */ + public void setP1(java.lang.Integer value) { + setValue(P1, value); + } + + /** + * Set the p1 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setP1(org.jooq.Field field) { + setField(P1, field); + } + + /** + * Set the p2 parameter to the routine + */ + public void setP2(java.lang.Integer value) { + setValue(P2, value); + } + + /** + * Set the p2 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setP2(org.jooq.Field field) { + setField(P2, field); + } + + /** + * Set the p3 parameter to the routine + */ + public void setP3(java.lang.Integer value) { + setValue(P3, value); + } + + /** + * Set the p3 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setP3(org.jooq.Field field) { + setField(P3, field); + } + + /** + * Set the p4 parameter to the routine + */ + public void setP4(java.lang.Integer value) { + setValue(P4, value); + } + + /** + * Set the p4 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setP4(org.jooq.Field field) { + setField(P4, field); + } +} diff --git a/jOOQ-test/src/org/jooq/test/mysql/generatedclasses/routines/FAuthorExists.java b/jOOQ-test/src/org/jooq/test/mysql/generatedclasses/routines/FAuthorExists.java new file mode 100644 index 00000000000..2fa304b6b71 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/mysql/generatedclasses/routines/FAuthorExists.java @@ -0,0 +1,51 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.mysql.generatedclasses.routines; + +/** + * This class is generated by jOOQ. + * + * Check existence of an author + */ +public class FAuthorExists extends org.jooq.impl.AbstractRoutine { + + private static final long serialVersionUID = 484078391; + + + /** + * An uncommented item + */ + public static final org.jooq.Parameter RETURN_VALUE = createParameter("RETURN_VALUE", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter AUTHOR_NAME = createParameter("author_name", org.jooq.impl.SQLDataType.VARCHAR); + + /** + * Create a new routine call instance + */ + public FAuthorExists() { + super("f_author_exists", org.jooq.test.mysql.generatedclasses.Test.TEST, org.jooq.impl.SQLDataType.INTEGER); + + setReturnParameter(RETURN_VALUE); + addInParameter(AUTHOR_NAME); + } + + /** + * Set the author_name parameter to the routine + */ + public void setAuthorName(java.lang.String value) { + setValue(AUTHOR_NAME, value); + } + + /** + * Set the author_name parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setAuthorName(org.jooq.Field field) { + setField(AUTHOR_NAME, field); + } +} diff --git a/jOOQ-test/src/org/jooq/test/mysql/generatedclasses/routines/FNumber.java b/jOOQ-test/src/org/jooq/test/mysql/generatedclasses/routines/FNumber.java new file mode 100644 index 00000000000..06a0e9ac22c --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/mysql/generatedclasses/routines/FNumber.java @@ -0,0 +1,51 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.mysql.generatedclasses.routines; + +/** + * This class is generated by jOOQ. + * + * echo n + */ +public class FNumber extends org.jooq.impl.AbstractRoutine { + + private static final long serialVersionUID = -1080084069; + + + /** + * An uncommented item + */ + public static final org.jooq.Parameter RETURN_VALUE = createParameter("RETURN_VALUE", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter N = createParameter("n", org.jooq.impl.SQLDataType.INTEGER); + + /** + * Create a new routine call instance + */ + public FNumber() { + super("f_number", org.jooq.test.mysql.generatedclasses.Test.TEST, org.jooq.impl.SQLDataType.INTEGER); + + setReturnParameter(RETURN_VALUE); + addInParameter(N); + } + + /** + * Set the n parameter to the routine + */ + public void setN(java.lang.Integer value) { + setValue(N, value); + } + + /** + * Set the n parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setN(org.jooq.Field field) { + setField(N, field); + } +} diff --git a/jOOQ-test/src/org/jooq/test/mysql/generatedclasses/routines/FOne.java b/jOOQ-test/src/org/jooq/test/mysql/generatedclasses/routines/FOne.java new file mode 100644 index 00000000000..28208c8d5dd --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/mysql/generatedclasses/routines/FOne.java @@ -0,0 +1,29 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.mysql.generatedclasses.routines; + +/** + * This class is generated by jOOQ. + * + * 1 constant value + */ +public class FOne extends org.jooq.impl.AbstractRoutine { + + private static final long serialVersionUID = 641804479; + + + /** + * An uncommented item + */ + public static final org.jooq.Parameter RETURN_VALUE = createParameter("RETURN_VALUE", org.jooq.impl.SQLDataType.INTEGER); + + /** + * Create a new routine call instance + */ + public FOne() { + super("f_one", org.jooq.test.mysql.generatedclasses.Test.TEST, org.jooq.impl.SQLDataType.INTEGER); + + setReturnParameter(RETURN_VALUE); + } +} diff --git a/jOOQ-test/src/org/jooq/test/mysql/generatedclasses/routines/P391.java b/jOOQ-test/src/org/jooq/test/mysql/generatedclasses/routines/P391.java new file mode 100644 index 00000000000..9ca92a6e77c --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/mysql/generatedclasses/routines/P391.java @@ -0,0 +1,103 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.mysql.generatedclasses.routines; + +/** + * This class is generated by jOOQ. + * + * Integration tests for #391 + */ +public class P391 extends org.jooq.impl.AbstractRoutine { + + private static final long serialVersionUID = 1719688547; + + + /** + * An uncommented item + */ + public static final org.jooq.Parameter I1 = createParameter("i1", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter IO1 = createParameter("io1", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter O1 = createParameter("o1", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter O2 = createParameter("o2", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter IO2 = createParameter("io2", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter I2 = createParameter("i2", org.jooq.impl.SQLDataType.INTEGER); + + /** + * Create a new routine call instance + */ + public P391() { + super("p391", org.jooq.test.mysql.generatedclasses.Test.TEST); + + addInParameter(I1); + addInOutParameter(IO1); + addOutParameter(O1); + addOutParameter(O2); + addInOutParameter(IO2); + addInParameter(I2); + } + + /** + * Set the i1 parameter to the routine + */ + public void setI1(java.lang.Integer value) { + setValue(I1, value); + } + + /** + * Set the io1 parameter to the routine + */ + public void setIo1(java.lang.Integer value) { + setValue(IO1, value); + } + + /** + * Set the io2 parameter to the routine + */ + public void setIo2(java.lang.Integer value) { + setValue(IO2, value); + } + + /** + * Set the i2 parameter to the routine + */ + public void setI2(java.lang.Integer value) { + setValue(I2, value); + } + + public java.lang.Integer getIo1() { + return getValue(IO1); + } + + public java.lang.Integer getO1() { + return getValue(O1); + } + + public java.lang.Integer getO2() { + return getValue(O2); + } + + public java.lang.Integer getIo2() { + return getValue(IO2); + } +} diff --git a/jOOQ-test/src/org/jooq/test/mysql/generatedclasses/routines/PAuthorExists.java b/jOOQ-test/src/org/jooq/test/mysql/generatedclasses/routines/PAuthorExists.java new file mode 100644 index 00000000000..7e437e9fc8f --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/mysql/generatedclasses/routines/PAuthorExists.java @@ -0,0 +1,46 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.mysql.generatedclasses.routines; + +/** + * This class is generated by jOOQ. + * + * Check existence of an author + */ +public class PAuthorExists extends org.jooq.impl.AbstractRoutine { + + private static final long serialVersionUID = -1805452743; + + + /** + * An uncommented item + */ + public static final org.jooq.Parameter AUTHOR_NAME = createParameter("author_name", org.jooq.impl.SQLDataType.VARCHAR); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter RESULT = createParameter("result", org.jooq.impl.SQLDataType.INTEGER); + + /** + * Create a new routine call instance + */ + public PAuthorExists() { + super("p_author_exists", org.jooq.test.mysql.generatedclasses.Test.TEST); + + addInParameter(AUTHOR_NAME); + addOutParameter(RESULT); + } + + /** + * Set the author_name parameter to the routine + */ + public void setAuthorName(java.lang.String value) { + setValue(AUTHOR_NAME, value); + } + + public java.lang.Integer getResult() { + return getValue(RESULT); + } +} diff --git a/jOOQ-test/src/org/jooq/test/mysql/generatedclasses/routines/PCreateAuthor.java b/jOOQ-test/src/org/jooq/test/mysql/generatedclasses/routines/PCreateAuthor.java new file mode 100644 index 00000000000..c48637816bc --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/mysql/generatedclasses/routines/PCreateAuthor.java @@ -0,0 +1,22 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.mysql.generatedclasses.routines; + +/** + * This class is generated by jOOQ. + * + * Create a new author + */ +public class PCreateAuthor extends org.jooq.impl.AbstractRoutine { + + private static final long serialVersionUID = 890451030; + + + /** + * Create a new routine call instance + */ + public PCreateAuthor() { + super("p_create_author", org.jooq.test.mysql.generatedclasses.Test.TEST); + } +} diff --git a/jOOQ-test/src/org/jooq/test/mysql/generatedclasses/routines/PCreateAuthorByName.java b/jOOQ-test/src/org/jooq/test/mysql/generatedclasses/routines/PCreateAuthorByName.java new file mode 100644 index 00000000000..30bda5a7ef1 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/mysql/generatedclasses/routines/PCreateAuthorByName.java @@ -0,0 +1,49 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.mysql.generatedclasses.routines; + +/** + * This class is generated by jOOQ. + * + * Create a new author + */ +public class PCreateAuthorByName extends org.jooq.impl.AbstractRoutine { + + private static final long serialVersionUID = 1702167816; + + + /** + * An uncommented item + */ + public static final org.jooq.Parameter FIRST_NAME = createParameter("first_name", org.jooq.impl.SQLDataType.VARCHAR); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter LAST_NAME = createParameter("last_name", org.jooq.impl.SQLDataType.VARCHAR); + + /** + * Create a new routine call instance + */ + public PCreateAuthorByName() { + super("p_create_author_by_name", org.jooq.test.mysql.generatedclasses.Test.TEST); + + addInParameter(FIRST_NAME); + addInParameter(LAST_NAME); + } + + /** + * Set the first_name parameter to the routine + */ + public void setFirstName(java.lang.String value) { + setValue(FIRST_NAME, value); + } + + /** + * Set the last_name parameter to the routine + */ + public void setLastName(java.lang.String value) { + setValue(LAST_NAME, value); + } +} diff --git a/jOOQ-test/src/org/jooq/test/mysql/generatedclasses/routines/PUnused.java b/jOOQ-test/src/org/jooq/test/mysql/generatedclasses/routines/PUnused.java new file mode 100644 index 00000000000..27c9f9412c4 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/mysql/generatedclasses/routines/PUnused.java @@ -0,0 +1,61 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.mysql.generatedclasses.routines; + +/** + * This class is generated by jOOQ. + */ +public class PUnused extends org.jooq.impl.AbstractRoutine { + + private static final long serialVersionUID = 769434861; + + + /** + * An uncommented item + */ + public static final org.jooq.Parameter IN1 = createParameter("in1", org.jooq.impl.SQLDataType.VARCHAR); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter OUT1 = createParameter("out1", org.jooq.impl.SQLDataType.BOOLEAN); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter OUT2 = createParameter("out2", org.jooq.impl.SQLDataType.BOOLEAN); + + /** + * Create a new routine call instance + */ + public PUnused() { + super("p_unused", org.jooq.test.mysql.generatedclasses.Test.TEST); + + addInParameter(IN1); + addOutParameter(OUT1); + addInOutParameter(OUT2); + } + + /** + * Set the in1 parameter to the routine + */ + public void setIn1(java.lang.String value) { + setValue(IN1, value); + } + + /** + * Set the out2 parameter to the routine + */ + public void setOut2(java.lang.Boolean value) { + setValue(OUT2, value); + } + + public java.lang.Boolean getOut1() { + return getValue(OUT1); + } + + public java.lang.Boolean getOut2() { + return getValue(OUT2); + } +} diff --git a/jOOQ-test/src/org/jooq/test/mysql/generatedclasses/tables/TAuthor.java b/jOOQ-test/src/org/jooq/test/mysql/generatedclasses/tables/TAuthor.java new file mode 100644 index 00000000000..7800d22bb23 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/mysql/generatedclasses/tables/TAuthor.java @@ -0,0 +1,82 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.mysql.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + * + * An entity holding authors of books + */ +public class TAuthor extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = -212245045; + + /** + * The singleton instance of test.t_author + */ + public static final org.jooq.test.mysql.generatedclasses.tables.TAuthor T_AUTHOR = new org.jooq.test.mysql.generatedclasses.tables.TAuthor(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.mysql.generatedclasses.tables.records.TAuthorRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * The author ID + * + * PRIMARY KEY + */ + public static final org.jooq.TableField ID = createField("ID", org.jooq.impl.SQLDataType.INTEGER, T_AUTHOR); + + /** + * The author's first name + */ + public static final org.jooq.TableField FIRST_NAME = createField("FIRST_NAME", org.jooq.impl.SQLDataType.VARCHAR, T_AUTHOR); + + /** + * The author's last name + */ + public static final org.jooq.TableField LAST_NAME = createField("LAST_NAME", org.jooq.impl.SQLDataType.VARCHAR, T_AUTHOR); + + /** + * The author's date of birth + */ + public static final org.jooq.TableField DATE_OF_BIRTH = createField("DATE_OF_BIRTH", org.jooq.impl.SQLDataType.DATE, T_AUTHOR); + + /** + * The author's year of birth + */ + public static final org.jooq.TableField YEAR_OF_BIRTH = createField("YEAR_OF_BIRTH", org.jooq.impl.SQLDataType.INTEGER, T_AUTHOR); + + /** + * The author's address + */ + public static final org.jooq.TableField ADDRESS = createField("ADDRESS", org.jooq.impl.SQLDataType.VARCHAR, T_AUTHOR); + + /** + * No further instances allowed + */ + private TAuthor() { + super("t_author", org.jooq.test.mysql.generatedclasses.Test.TEST); + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.test.mysql.generatedclasses.Keys.KEY_T_AUTHOR_PRIMARY; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.test.mysql.generatedclasses.Keys.KEY_T_AUTHOR_PRIMARY); + } +} diff --git a/jOOQ-test/src/org/jooq/test/mysql/generatedclasses/tables/TBook.java b/jOOQ-test/src/org/jooq/test/mysql/generatedclasses/tables/TBook.java new file mode 100644 index 00000000000..d0bddd88ddc --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/mysql/generatedclasses/tables/TBook.java @@ -0,0 +1,126 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.mysql.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + * + * An entity holding books + */ +public class TBook extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = 1315796628; + + /** + * The singleton instance of test.t_book + */ + public static final org.jooq.test.mysql.generatedclasses.tables.TBook T_BOOK = new org.jooq.test.mysql.generatedclasses.tables.TBook(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.mysql.generatedclasses.tables.records.TBookRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * The book ID + * + * PRIMARY KEY + */ + public static final org.jooq.TableField ID = createField("ID", org.jooq.impl.SQLDataType.INTEGER, T_BOOK); + + /** + * The author ID in entity 'author' + *

+ *

+	 * CONSTRAINT fk_t_book_author_id
+	 * FOREIGN KEY (AUTHOR_ID)
+	 * REFERENCES test.t_author (ID)
+	 * 
+ */ + public static final org.jooq.TableField AUTHOR_ID = createField("AUTHOR_ID", org.jooq.impl.SQLDataType.INTEGER, T_BOOK); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_t_book_co_author_id
+	 * FOREIGN KEY (co_author_id)
+	 * REFERENCES test.t_author (ID)
+	 * 
+ */ + public static final org.jooq.TableField CO_AUTHOR_ID = createField("co_author_id", org.jooq.impl.SQLDataType.INTEGER, T_BOOK); + + /** + * Some more details about the book + */ + public static final org.jooq.TableField DETAILS_ID = createField("DETAILS_ID", org.jooq.impl.SQLDataType.INTEGER, T_BOOK); + + /** + * The book's title + */ + public static final org.jooq.TableField TITLE = createField("TITLE", org.jooq.impl.SQLDataType.CLOB, T_BOOK); + + /** + * The year the book was published in + */ + public static final org.jooq.TableField PUBLISHED_IN = createField("PUBLISHED_IN", org.jooq.impl.SQLDataType.INTEGER, T_BOOK); + + /** + * The language of the book + *

+ *

+	 * CONSTRAINT fk_t_book_language_id
+	 * FOREIGN KEY (LANGUAGE_ID)
+	 * REFERENCES test.t_language (ID)
+	 * 
+ */ + public static final org.jooq.TableField LANGUAGE_ID = createField("LANGUAGE_ID", org.jooq.impl.SQLDataType.INTEGER.asMasterDataType(org.jooq.test.mysql.generatedclasses.enums.TLanguage.class), T_BOOK); + + /** + * Some textual content of the book + */ + public static final org.jooq.TableField CONTENT_TEXT = createField("CONTENT_TEXT", org.jooq.impl.SQLDataType.CLOB, T_BOOK); + + /** + * Some binary content of the book + */ + public static final org.jooq.TableField CONTENT_PDF = createField("CONTENT_PDF", org.jooq.impl.SQLDataType.BLOB, T_BOOK); + + /** + * The book's stock status + */ + public static final org.jooq.TableField STATUS = createField("STATUS", org.jooq.util.mysql.MySQLDataType.VARCHAR.asEnumDataType(org.jooq.test.mysql.generatedclasses.enums.TBookStatus.class), T_BOOK); + + /** + * No further instances allowed + */ + private TBook() { + super("t_book", org.jooq.test.mysql.generatedclasses.Test.TEST); + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.test.mysql.generatedclasses.Keys.KEY_T_BOOK_PRIMARY; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.test.mysql.generatedclasses.Keys.KEY_T_BOOK_PRIMARY); + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getReferences() { + return java.util.Arrays.>asList(org.jooq.test.mysql.generatedclasses.Keys.FK_T_BOOK_AUTHOR_ID, org.jooq.test.mysql.generatedclasses.Keys.FK_T_BOOK_CO_AUTHOR_ID); + } +} diff --git a/jOOQ-test/src/org/jooq/test/mysql/generatedclasses/tables/TBookStore.java b/jOOQ-test/src/org/jooq/test/mysql/generatedclasses/tables/TBookStore.java new file mode 100644 index 00000000000..5465e9420ae --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/mysql/generatedclasses/tables/TBookStore.java @@ -0,0 +1,55 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.mysql.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + * + * A book store + */ +public class TBookStore extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = -1432549761; + + /** + * The singleton instance of test.t_book_store + */ + public static final org.jooq.test.mysql.generatedclasses.tables.TBookStore T_BOOK_STORE = new org.jooq.test.mysql.generatedclasses.tables.TBookStore(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.mysql.generatedclasses.tables.records.TBookStoreRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * The books store name + */ + public static final org.jooq.TableField NAME = createField("name", org.jooq.impl.SQLDataType.VARCHAR, T_BOOK_STORE); + + /** + * No further instances allowed + */ + private TBookStore() { + super("t_book_store", org.jooq.test.mysql.generatedclasses.Test.TEST); + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.test.mysql.generatedclasses.Keys.KEY_T_BOOK_STORE_UK_T_BOOK_STORE_NAME; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.test.mysql.generatedclasses.Keys.KEY_T_BOOK_STORE_UK_T_BOOK_STORE_NAME); + } +} diff --git a/jOOQ-test/src/org/jooq/test/mysql/generatedclasses/tables/TBookToBookStore.java b/jOOQ-test/src/org/jooq/test/mysql/generatedclasses/tables/TBookToBookStore.java new file mode 100644 index 00000000000..662778dbd23 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/mysql/generatedclasses/tables/TBookToBookStore.java @@ -0,0 +1,87 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.mysql.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + * + * An m:n relation between books and book stores + */ +public class TBookToBookStore extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = -2031823513; + + /** + * The singleton instance of test.t_book_to_book_store + */ + public static final org.jooq.test.mysql.generatedclasses.tables.TBookToBookStore T_BOOK_TO_BOOK_STORE = new org.jooq.test.mysql.generatedclasses.tables.TBookToBookStore(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.mysql.generatedclasses.tables.records.TBookToBookStoreRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * The book store name + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT fk_b2bs_bs_name
+	 * FOREIGN KEY (book_store_name)
+	 * REFERENCES test.t_book_store (name)
+	 * 
+ */ + public static final org.jooq.TableField BOOK_STORE_NAME = createField("book_store_name", org.jooq.impl.SQLDataType.VARCHAR, T_BOOK_TO_BOOK_STORE); + + /** + * The book ID + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT fk_b2bs_b_id
+	 * FOREIGN KEY (book_id)
+	 * REFERENCES test.t_book (ID)
+	 * 
+ */ + public static final org.jooq.TableField BOOK_ID = createField("book_id", org.jooq.impl.SQLDataType.INTEGER, T_BOOK_TO_BOOK_STORE); + + /** + * The number of books on stock + */ + public static final org.jooq.TableField STOCK = createField("stock", org.jooq.impl.SQLDataType.INTEGER, T_BOOK_TO_BOOK_STORE); + + /** + * No further instances allowed + */ + private TBookToBookStore() { + super("t_book_to_book_store", org.jooq.test.mysql.generatedclasses.Test.TEST); + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.test.mysql.generatedclasses.Keys.KEY_T_BOOK_TO_BOOK_STORE_PRIMARY; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.test.mysql.generatedclasses.Keys.KEY_T_BOOK_TO_BOOK_STORE_PRIMARY); + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getReferences() { + return java.util.Arrays.>asList(org.jooq.test.mysql.generatedclasses.Keys.FK_B2BS_BS_NAME, org.jooq.test.mysql.generatedclasses.Keys.FK_B2BS_B_ID); + } +} diff --git a/jOOQ-test/src/org/jooq/test/mysql/generatedclasses/tables/TBooleans.java b/jOOQ-test/src/org/jooq/test/mysql/generatedclasses/tables/TBooleans.java new file mode 100644 index 00000000000..4712675d2bf --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/mysql/generatedclasses/tables/TBooleans.java @@ -0,0 +1,105 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.mysql.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class TBooleans extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = 430692360; + + /** + * The singleton instance of test.t_booleans + */ + public static final org.jooq.test.mysql.generatedclasses.tables.TBooleans T_BOOLEANS = new org.jooq.test.mysql.generatedclasses.tables.TBooleans(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.mysql.generatedclasses.tables.records.TBooleansRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public static final org.jooq.TableField ID = createField("id", org.jooq.impl.SQLDataType.INTEGER, T_BOOLEANS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField ONE_ZERO = createField("one_zero", org.jooq.impl.SQLDataType.INTEGER.asConvertedDataType(new org.jooq.test._.converters.Boolean_10_Converter()), T_BOOLEANS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField TRUE_FALSE_LC = createField("true_false_lc", org.jooq.impl.SQLDataType.VARCHAR.asConvertedDataType(new org.jooq.test._.converters.Boolean_TF_LC_Converter()), T_BOOLEANS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField TRUE_FALSE_UC = createField("true_false_uc", org.jooq.impl.SQLDataType.VARCHAR.asConvertedDataType(new org.jooq.test._.converters.Boolean_TF_UC_Converter()), T_BOOLEANS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField YES_NO_LC = createField("yes_no_lc", org.jooq.impl.SQLDataType.VARCHAR.asConvertedDataType(new org.jooq.test._.converters.Boolean_YES_NO_LC_Converter()), T_BOOLEANS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField YES_NO_UC = createField("yes_no_uc", org.jooq.impl.SQLDataType.VARCHAR.asConvertedDataType(new org.jooq.test._.converters.Boolean_YES_NO_UC_Converter()), T_BOOLEANS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField Y_N_LC = createField("y_n_lc", org.jooq.impl.SQLDataType.CHAR.asConvertedDataType(new org.jooq.test._.converters.Boolean_YN_LC_Converter()), T_BOOLEANS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField Y_N_UC = createField("y_n_uc", org.jooq.impl.SQLDataType.CHAR.asConvertedDataType(new org.jooq.test._.converters.Boolean_YN_UC_Converter()), T_BOOLEANS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField VC_BOOLEAN = createField("vc_boolean", org.jooq.impl.SQLDataType.BOOLEAN, T_BOOLEANS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField C_BOOLEAN = createField("c_boolean", org.jooq.impl.SQLDataType.BOOLEAN, T_BOOLEANS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField N_BOOLEAN = createField("n_boolean", org.jooq.impl.SQLDataType.BOOLEAN, T_BOOLEANS); + + /** + * No further instances allowed + */ + private TBooleans() { + super("t_booleans", org.jooq.test.mysql.generatedclasses.Test.TEST); + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.test.mysql.generatedclasses.Keys.KEY_T_BOOLEANS_PRIMARY; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.test.mysql.generatedclasses.Keys.KEY_T_BOOLEANS_PRIMARY); + } +} diff --git a/jOOQ-test/src/org/jooq/test/mysql/generatedclasses/tables/TDates.java b/jOOQ-test/src/org/jooq/test/mysql/generatedclasses/tables/TDates.java new file mode 100644 index 00000000000..3e27972eaa9 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/mysql/generatedclasses/tables/TDates.java @@ -0,0 +1,80 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.mysql.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class TDates extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = -378636094; + + /** + * The singleton instance of test.t_dates + */ + public static final org.jooq.test.mysql.generatedclasses.tables.TDates T_DATES = new org.jooq.test.mysql.generatedclasses.tables.TDates(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.mysql.generatedclasses.tables.records.TDatesRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public static final org.jooq.TableField ID = createField("id", org.jooq.impl.SQLDataType.INTEGER, T_DATES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField D = createField("d", org.jooq.impl.SQLDataType.DATE, T_DATES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField T = createField("t", org.jooq.impl.SQLDataType.TIME, T_DATES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField TS = createField("ts", org.jooq.impl.SQLDataType.TIMESTAMP, T_DATES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField D_INT = createField("d_int", org.jooq.impl.SQLDataType.INTEGER, T_DATES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField TS_BIGINT = createField("ts_bigint", org.jooq.impl.SQLDataType.BIGINT, T_DATES); + + /** + * No further instances allowed + */ + private TDates() { + super("t_dates", org.jooq.test.mysql.generatedclasses.Test.TEST); + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.test.mysql.generatedclasses.Keys.KEY_T_DATES_PRIMARY; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.test.mysql.generatedclasses.Keys.KEY_T_DATES_PRIMARY); + } +} diff --git a/jOOQ-test/src/org/jooq/test/mysql/generatedclasses/tables/TIdentityPk.java b/jOOQ-test/src/org/jooq/test/mysql/generatedclasses/tables/TIdentityPk.java new file mode 100644 index 00000000000..681f32eb78f --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/mysql/generatedclasses/tables/TIdentityPk.java @@ -0,0 +1,65 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.mysql.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class TIdentityPk extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = -1880144914; + + /** + * The singleton instance of test.t_identity_pk + */ + public static final org.jooq.test.mysql.generatedclasses.tables.TIdentityPk T_IDENTITY_PK = new org.jooq.test.mysql.generatedclasses.tables.TIdentityPk(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.mysql.generatedclasses.tables.records.TIdentityPkRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public static final org.jooq.TableField ID = createField("id", org.jooq.impl.SQLDataType.INTEGER, T_IDENTITY_PK); + + /** + * An uncommented item + */ + public static final org.jooq.TableField VAL = createField("val", org.jooq.impl.SQLDataType.INTEGER, T_IDENTITY_PK); + + /** + * No further instances allowed + */ + private TIdentityPk() { + super("t_identity_pk", org.jooq.test.mysql.generatedclasses.Test.TEST); + } + + @Override + public org.jooq.Identity getIdentity() { + return org.jooq.test.mysql.generatedclasses.Keys.IDENTITY_T_IDENTITY_PK; + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.test.mysql.generatedclasses.Keys.KEY_T_IDENTITY_PK_PRIMARY; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.test.mysql.generatedclasses.Keys.KEY_T_IDENTITY_PK_PRIMARY); + } +} diff --git a/jOOQ-test/src/org/jooq/test/mysql/generatedclasses/tables/TTriggers.java b/jOOQ-test/src/org/jooq/test/mysql/generatedclasses/tables/TTriggers.java new file mode 100644 index 00000000000..e6278d3060d --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/mysql/generatedclasses/tables/TTriggers.java @@ -0,0 +1,70 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.mysql.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class TTriggers extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = -1620862730; + + /** + * The singleton instance of test.t_triggers + */ + public static final org.jooq.test.mysql.generatedclasses.tables.TTriggers T_TRIGGERS = new org.jooq.test.mysql.generatedclasses.tables.TTriggers(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.mysql.generatedclasses.tables.records.TTriggersRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public static final org.jooq.TableField ID_GENERATED = createField("id_generated", org.jooq.impl.SQLDataType.INTEGER, T_TRIGGERS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField ID = createField("id", org.jooq.impl.SQLDataType.INTEGER, T_TRIGGERS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField COUNTER = createField("counter", org.jooq.impl.SQLDataType.INTEGER, T_TRIGGERS); + + /** + * No further instances allowed + */ + private TTriggers() { + super("t_triggers", org.jooq.test.mysql.generatedclasses.Test.TEST); + } + + @Override + public org.jooq.Identity getIdentity() { + return org.jooq.test.mysql.generatedclasses.Keys.IDENTITY_T_TRIGGERS; + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.test.mysql.generatedclasses.Keys.KEY_T_TRIGGERS_PRIMARY; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.test.mysql.generatedclasses.Keys.KEY_T_TRIGGERS_PRIMARY); + } +} diff --git a/jOOQ-test/src/org/jooq/test/mysql/generatedclasses/tables/TUnsigned.java b/jOOQ-test/src/org/jooq/test/mysql/generatedclasses/tables/TUnsigned.java new file mode 100644 index 00000000000..42165a9b02d --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/mysql/generatedclasses/tables/TUnsigned.java @@ -0,0 +1,57 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.mysql.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class TUnsigned extends org.jooq.impl.TableImpl { + + private static final long serialVersionUID = -1011549625; + + /** + * The singleton instance of test.t_unsigned + */ + public static final org.jooq.test.mysql.generatedclasses.tables.TUnsigned T_UNSIGNED = new org.jooq.test.mysql.generatedclasses.tables.TUnsigned(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.mysql.generatedclasses.tables.records.TUnsignedRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + */ + public static final org.jooq.TableField U_BYTE = createField("u_byte", org.jooq.impl.SQLDataType.TINYINTUNSIGNED, T_UNSIGNED); + + /** + * An uncommented item + */ + public static final org.jooq.TableField U_SHORT = createField("u_short", org.jooq.impl.SQLDataType.SMALLINTUNSIGNED, T_UNSIGNED); + + /** + * An uncommented item + */ + public static final org.jooq.TableField U_INT = createField("u_int", org.jooq.impl.SQLDataType.INTEGERUNSIGNED, T_UNSIGNED); + + /** + * An uncommented item + */ + public static final org.jooq.TableField U_LONG = createField("u_long", org.jooq.impl.SQLDataType.BIGINTUNSIGNED, T_UNSIGNED); + + /** + * No further instances allowed + */ + private TUnsigned() { + super("t_unsigned", org.jooq.test.mysql.generatedclasses.Test.TEST); + } +} diff --git a/jOOQ-test/src/org/jooq/test/mysql/generatedclasses/tables/T_639NumbersTable.java b/jOOQ-test/src/org/jooq/test/mysql/generatedclasses/tables/T_639NumbersTable.java new file mode 100644 index 00000000000..a7e56ad1785 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/mysql/generatedclasses/tables/T_639NumbersTable.java @@ -0,0 +1,115 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.mysql.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class T_639NumbersTable extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = 538660396; + + /** + * The singleton instance of test.t_639_numbers_table + */ + public static final org.jooq.test.mysql.generatedclasses.tables.T_639NumbersTable T_639_NUMBERS_TABLE = new org.jooq.test.mysql.generatedclasses.tables.T_639NumbersTable(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.mysql.generatedclasses.tables.records.T_639NumbersTableRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public static final org.jooq.TableField ID = createField("ID", org.jooq.impl.SQLDataType.INTEGER, T_639_NUMBERS_TABLE); + + /** + * An uncommented item + */ + public static final org.jooq.TableField BYTE = createField("BYTE", org.jooq.impl.SQLDataType.TINYINT, T_639_NUMBERS_TABLE); + + /** + * An uncommented item + */ + public static final org.jooq.TableField SHORT = createField("SHORT", org.jooq.impl.SQLDataType.SMALLINT, T_639_NUMBERS_TABLE); + + /** + * An uncommented item + */ + public static final org.jooq.TableField INTEGER = createField("INTEGER", org.jooq.impl.SQLDataType.INTEGER, T_639_NUMBERS_TABLE); + + /** + * An uncommented item + */ + public static final org.jooq.TableField LONG = createField("LONG", org.jooq.impl.SQLDataType.BIGINT, T_639_NUMBERS_TABLE); + + /** + * An uncommented item + */ + public static final org.jooq.TableField BYTE_DECIMAL = createField("BYTE_DECIMAL", org.jooq.impl.SQLDataType.TINYINT, T_639_NUMBERS_TABLE); + + /** + * An uncommented item + */ + public static final org.jooq.TableField SHORT_DECIMAL = createField("SHORT_DECIMAL", org.jooq.impl.SQLDataType.SMALLINT, T_639_NUMBERS_TABLE); + + /** + * An uncommented item + */ + public static final org.jooq.TableField INTEGER_DECIMAL = createField("INTEGER_DECIMAL", org.jooq.impl.SQLDataType.INTEGER, T_639_NUMBERS_TABLE); + + /** + * An uncommented item + */ + public static final org.jooq.TableField LONG_DECIMAL = createField("LONG_DECIMAL", org.jooq.impl.SQLDataType.BIGINT, T_639_NUMBERS_TABLE); + + /** + * An uncommented item + */ + public static final org.jooq.TableField BIG_INTEGER = createField("BIG_INTEGER", org.jooq.impl.SQLDataType.DECIMAL_INTEGER, T_639_NUMBERS_TABLE); + + /** + * An uncommented item + */ + public static final org.jooq.TableField BIG_DECIMAL = createField("BIG_DECIMAL", org.jooq.impl.SQLDataType.DECIMAL, T_639_NUMBERS_TABLE); + + /** + * An uncommented item + */ + public static final org.jooq.TableField FLOAT = createField("FLOAT", org.jooq.impl.SQLDataType.FLOAT, T_639_NUMBERS_TABLE); + + /** + * An uncommented item + */ + public static final org.jooq.TableField DOUBLE = createField("DOUBLE", org.jooq.impl.SQLDataType.DOUBLE, T_639_NUMBERS_TABLE); + + /** + * No further instances allowed + */ + private T_639NumbersTable() { + super("t_639_numbers_table", org.jooq.test.mysql.generatedclasses.Test.TEST); + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.test.mysql.generatedclasses.Keys.KEY_T_639_NUMBERS_TABLE_PRIMARY; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.test.mysql.generatedclasses.Keys.KEY_T_639_NUMBERS_TABLE_PRIMARY); + } +} diff --git a/jOOQ-test/src/org/jooq/test/mysql/generatedclasses/tables/T_658Ref.java b/jOOQ-test/src/org/jooq/test/mysql/generatedclasses/tables/T_658Ref.java new file mode 100644 index 00000000000..3852551683e --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/mysql/generatedclasses/tables/T_658Ref.java @@ -0,0 +1,109 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.mysql.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class T_658Ref extends org.jooq.impl.TableImpl { + + private static final long serialVersionUID = -1001042477; + + /** + * The singleton instance of test.t_658_ref + */ + public static final org.jooq.test.mysql.generatedclasses.tables.T_658Ref T_658_REF = new org.jooq.test.mysql.generatedclasses.tables.T_658Ref(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.mysql.generatedclasses.tables.records.T_658RefRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_t_658_11
+	 * FOREIGN KEY (ref_11)
+	 * REFERENCES test.t_658_11 (id)
+	 * 
+ */ + public static final org.jooq.TableField REF_11 = createField("ref_11", org.jooq.impl.SQLDataType.CHAR.asMasterDataType(org.jooq.test.mysql.generatedclasses.enums.T_658_11.class), T_658_REF); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_t_658_21
+	 * FOREIGN KEY (ref_21)
+	 * REFERENCES test.t_658_21 (id)
+	 * 
+ */ + public static final org.jooq.TableField REF_21 = createField("ref_21", org.jooq.impl.SQLDataType.INTEGER.asMasterDataType(org.jooq.test.mysql.generatedclasses.enums.T_658_21.class), T_658_REF); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_t_658_31
+	 * FOREIGN KEY (ref_31)
+	 * REFERENCES test.t_658_31 (id)
+	 * 
+ */ + public static final org.jooq.TableField REF_31 = createField("ref_31", org.jooq.impl.SQLDataType.BIGINT.asMasterDataType(org.jooq.test.mysql.generatedclasses.enums.T_658_31.class), T_658_REF); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_t_658_12
+	 * FOREIGN KEY (ref_12)
+	 * REFERENCES test.t_658_12 (id)
+	 * 
+ */ + public static final org.jooq.TableField REF_12 = createField("ref_12", org.jooq.impl.SQLDataType.CHAR.asMasterDataType(org.jooq.test.mysql.generatedclasses.enums.T_658_12.class), T_658_REF); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_t_658_22
+	 * FOREIGN KEY (ref_22)
+	 * REFERENCES test.t_658_22 (id)
+	 * 
+ */ + public static final org.jooq.TableField REF_22 = createField("ref_22", org.jooq.impl.SQLDataType.INTEGER.asMasterDataType(org.jooq.test.mysql.generatedclasses.enums.T_658_22.class), T_658_REF); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_t_658_32
+	 * FOREIGN KEY (ref_32)
+	 * REFERENCES test.t_658_32 (id)
+	 * 
+ */ + public static final org.jooq.TableField REF_32 = createField("ref_32", org.jooq.impl.SQLDataType.BIGINT.asMasterDataType(org.jooq.test.mysql.generatedclasses.enums.T_658_32.class), T_658_REF); + + /** + * No further instances allowed + */ + private T_658Ref() { + super("t_658_ref", org.jooq.test.mysql.generatedclasses.Test.TEST); + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getReferences() { + return java.util.Arrays.>asList(); + } +} diff --git a/jOOQ-test/src/org/jooq/test/mysql/generatedclasses/tables/T_725LobTest.java b/jOOQ-test/src/org/jooq/test/mysql/generatedclasses/tables/T_725LobTest.java new file mode 100644 index 00000000000..a20b60232c0 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/mysql/generatedclasses/tables/T_725LobTest.java @@ -0,0 +1,60 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.mysql.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class T_725LobTest extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = -1552079157; + + /** + * The singleton instance of test.t_725_lob_test + */ + public static final org.jooq.test.mysql.generatedclasses.tables.T_725LobTest T_725_LOB_TEST = new org.jooq.test.mysql.generatedclasses.tables.T_725LobTest(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.mysql.generatedclasses.tables.records.T_725LobTestRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public static final org.jooq.TableField ID = createField("ID", org.jooq.impl.SQLDataType.INTEGER, T_725_LOB_TEST); + + /** + * An uncommented item + */ + public static final org.jooq.TableField LOB = createField("LOB", org.jooq.impl.SQLDataType.BLOB, T_725_LOB_TEST); + + /** + * No further instances allowed + */ + private T_725LobTest() { + super("t_725_lob_test", org.jooq.test.mysql.generatedclasses.Test.TEST); + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.test.mysql.generatedclasses.Keys.KEY_T_725_LOB_TEST_PRIMARY; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.test.mysql.generatedclasses.Keys.KEY_T_725_LOB_TEST_PRIMARY); + } +} diff --git a/jOOQ-test/src/org/jooq/test/mysql/generatedclasses/tables/T_785.java b/jOOQ-test/src/org/jooq/test/mysql/generatedclasses/tables/T_785.java new file mode 100644 index 00000000000..bfea348ebb0 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/mysql/generatedclasses/tables/T_785.java @@ -0,0 +1,52 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.mysql.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class T_785 extends org.jooq.impl.TableImpl { + + private static final long serialVersionUID = 1596205645; + + /** + * The singleton instance of test.t_785 + */ + public static final org.jooq.test.mysql.generatedclasses.tables.T_785 T_785 = new org.jooq.test.mysql.generatedclasses.tables.T_785(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.mysql.generatedclasses.tables.records.T_785Record.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + */ + public static final org.jooq.TableField ID = createField("ID", org.jooq.impl.SQLDataType.INTEGER, T_785); + + /** + * An uncommented item + */ + public static final org.jooq.TableField NAME = createField("NAME", org.jooq.impl.SQLDataType.VARCHAR, T_785); + + /** + * An uncommented item + */ + public static final org.jooq.TableField VALUE = createField("VALUE", org.jooq.impl.SQLDataType.VARCHAR, T_785); + + /** + * No further instances allowed + */ + private T_785() { + super("t_785", org.jooq.test.mysql.generatedclasses.Test.TEST); + } +} diff --git a/jOOQ-test/src/org/jooq/test/mysql/generatedclasses/tables/T_959.java b/jOOQ-test/src/org/jooq/test/mysql/generatedclasses/tables/T_959.java new file mode 100644 index 00000000000..15ee8fd49b0 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/mysql/generatedclasses/tables/T_959.java @@ -0,0 +1,42 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.mysql.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class T_959 extends org.jooq.impl.TableImpl { + + private static final long serialVersionUID = -1269649363; + + /** + * The singleton instance of test.t_959 + */ + public static final org.jooq.test.mysql.generatedclasses.tables.T_959 T_959 = new org.jooq.test.mysql.generatedclasses.tables.T_959(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.mysql.generatedclasses.tables.records.T_959Record.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + */ + public static final org.jooq.TableField JAVA_KEYWORDS = createField("java_keywords", org.jooq.util.mysql.MySQLDataType.VARCHAR.asEnumDataType(org.jooq.test.mysql.generatedclasses.enums.T_959JavaKeywords.class), T_959); + + /** + * No further instances allowed + */ + private T_959() { + super("t_959", org.jooq.test.mysql.generatedclasses.Test.TEST); + } +} diff --git a/jOOQ-test/src/org/jooq/test/mysql/generatedclasses/tables/VAuthor.java b/jOOQ-test/src/org/jooq/test/mysql/generatedclasses/tables/VAuthor.java new file mode 100644 index 00000000000..1f214afc444 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/mysql/generatedclasses/tables/VAuthor.java @@ -0,0 +1,69 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.mysql.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + * + * VIEW + */ +public class VAuthor extends org.jooq.impl.TableImpl { + + private static final long serialVersionUID = 1637223352; + + /** + * The singleton instance of test.v_author + */ + public static final org.jooq.test.mysql.generatedclasses.tables.VAuthor V_AUTHOR = new org.jooq.test.mysql.generatedclasses.tables.VAuthor(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.mysql.generatedclasses.tables.records.VAuthorRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * The author ID + */ + public static final org.jooq.TableField ID = createField("ID", org.jooq.impl.SQLDataType.INTEGER, V_AUTHOR); + + /** + * The author's first name + */ + public static final org.jooq.TableField FIRST_NAME = createField("FIRST_NAME", org.jooq.impl.SQLDataType.VARCHAR, V_AUTHOR); + + /** + * The author's last name + */ + public static final org.jooq.TableField LAST_NAME = createField("LAST_NAME", org.jooq.impl.SQLDataType.VARCHAR, V_AUTHOR); + + /** + * The author's date of birth + */ + public static final org.jooq.TableField DATE_OF_BIRTH = createField("DATE_OF_BIRTH", org.jooq.impl.SQLDataType.DATE, V_AUTHOR); + + /** + * The author's year of birth + */ + public static final org.jooq.TableField YEAR_OF_BIRTH = createField("YEAR_OF_BIRTH", org.jooq.impl.SQLDataType.INTEGER, V_AUTHOR); + + /** + * The author's address + */ + public static final org.jooq.TableField ADDRESS = createField("ADDRESS", org.jooq.impl.SQLDataType.VARCHAR, V_AUTHOR); + + /** + * No further instances allowed + */ + private VAuthor() { + super("v_author", org.jooq.test.mysql.generatedclasses.Test.TEST); + } +} diff --git a/jOOQ-test/src/org/jooq/test/mysql/generatedclasses/tables/VBook.java b/jOOQ-test/src/org/jooq/test/mysql/generatedclasses/tables/VBook.java new file mode 100644 index 00000000000..41ed46e8553 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/mysql/generatedclasses/tables/VBook.java @@ -0,0 +1,89 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.mysql.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + * + * VIEW + */ +public class VBook extends org.jooq.impl.TableImpl { + + private static final long serialVersionUID = -593559428; + + /** + * The singleton instance of test.v_book + */ + public static final org.jooq.test.mysql.generatedclasses.tables.VBook V_BOOK = new org.jooq.test.mysql.generatedclasses.tables.VBook(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.mysql.generatedclasses.tables.records.VBookRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * The book ID + */ + public static final org.jooq.TableField ID = createField("ID", org.jooq.impl.SQLDataType.INTEGER, V_BOOK); + + /** + * The author ID in entity 'author' + */ + public static final org.jooq.TableField AUTHOR_ID = createField("AUTHOR_ID", org.jooq.impl.SQLDataType.INTEGER, V_BOOK); + + /** + * An uncommented item + */ + public static final org.jooq.TableField CO_AUTHOR_ID = createField("co_author_id", org.jooq.impl.SQLDataType.INTEGER, V_BOOK); + + /** + * Some more details about the book + */ + public static final org.jooq.TableField DETAILS_ID = createField("DETAILS_ID", org.jooq.impl.SQLDataType.INTEGER, V_BOOK); + + /** + * The book's title + */ + public static final org.jooq.TableField TITLE = createField("TITLE", org.jooq.impl.SQLDataType.CLOB, V_BOOK); + + /** + * The year the book was published in + */ + public static final org.jooq.TableField PUBLISHED_IN = createField("PUBLISHED_IN", org.jooq.impl.SQLDataType.INTEGER, V_BOOK); + + /** + * The language of the book + */ + public static final org.jooq.TableField LANGUAGE_ID = createField("LANGUAGE_ID", org.jooq.impl.SQLDataType.INTEGER, V_BOOK); + + /** + * Some textual content of the book + */ + public static final org.jooq.TableField CONTENT_TEXT = createField("CONTENT_TEXT", org.jooq.impl.SQLDataType.CLOB, V_BOOK); + + /** + * Some binary content of the book + */ + public static final org.jooq.TableField CONTENT_PDF = createField("CONTENT_PDF", org.jooq.impl.SQLDataType.BLOB, V_BOOK); + + /** + * The book's stock status + */ + public static final org.jooq.TableField STATUS = createField("STATUS", org.jooq.util.mysql.MySQLDataType.VARCHAR.asEnumDataType(org.jooq.test.mysql.generatedclasses.enums.VBookStatus.class), V_BOOK); + + /** + * No further instances allowed + */ + private VBook() { + super("v_book", org.jooq.test.mysql.generatedclasses.Test.TEST); + } +} diff --git a/jOOQ-test/src/org/jooq/test/mysql/generatedclasses/tables/VLibrary.java b/jOOQ-test/src/org/jooq/test/mysql/generatedclasses/tables/VLibrary.java new file mode 100644 index 00000000000..c7d4644d08d --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/mysql/generatedclasses/tables/VLibrary.java @@ -0,0 +1,49 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.mysql.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + * + * VIEW + */ +public class VLibrary extends org.jooq.impl.TableImpl { + + private static final long serialVersionUID = -370793248; + + /** + * The singleton instance of test.v_library + */ + public static final org.jooq.test.mysql.generatedclasses.tables.VLibrary V_LIBRARY = new org.jooq.test.mysql.generatedclasses.tables.VLibrary(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.mysql.generatedclasses.tables.records.VLibraryRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + */ + public static final org.jooq.TableField AUTHOR = createField("AUTHOR", org.jooq.impl.SQLDataType.VARCHAR, V_LIBRARY); + + /** + * The book's title + */ + public static final org.jooq.TableField TITLE = createField("TITLE", org.jooq.impl.SQLDataType.CLOB, V_LIBRARY); + + /** + * No further instances allowed + */ + private VLibrary() { + super("v_library", org.jooq.test.mysql.generatedclasses.Test.TEST); + } +} diff --git a/jOOQ-test/src/org/jooq/test/mysql/generatedclasses/tables/XTestCase_64_69.java b/jOOQ-test/src/org/jooq/test/mysql/generatedclasses/tables/XTestCase_64_69.java new file mode 100644 index 00000000000..7e9b19a9a94 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/mysql/generatedclasses/tables/XTestCase_64_69.java @@ -0,0 +1,74 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.mysql.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + * + * An unused table in the same schema. + */ +public class XTestCase_64_69 extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = -1834195164; + + /** + * The singleton instance of test.x_test_case_64_69 + */ + public static final org.jooq.test.mysql.generatedclasses.tables.XTestCase_64_69 X_TEST_CASE_64_69 = new org.jooq.test.mysql.generatedclasses.tables.XTestCase_64_69(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.mysql.generatedclasses.tables.records.XTestCase_64_69Record.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public static final org.jooq.TableField ID = createField("ID", org.jooq.impl.SQLDataType.INTEGER, X_TEST_CASE_64_69); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_x_test_case_64_69a
+	 * FOREIGN KEY (UNUSED_ID)
+	 * REFERENCES test.x_unused (ID, NAME)
+	 * 
+ */ + public static final org.jooq.TableField UNUSED_ID = createField("UNUSED_ID", org.jooq.impl.SQLDataType.INTEGER, X_TEST_CASE_64_69); + + /** + * No further instances allowed + */ + private XTestCase_64_69() { + super("x_test_case_64_69", org.jooq.test.mysql.generatedclasses.Test.TEST); + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.test.mysql.generatedclasses.Keys.KEY_X_TEST_CASE_64_69_PRIMARY; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.test.mysql.generatedclasses.Keys.KEY_X_TEST_CASE_64_69_PRIMARY); + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getReferences() { + return java.util.Arrays.>asList(org.jooq.test.mysql.generatedclasses.Keys.FK_X_TEST_CASE_64_69A); + } +} diff --git a/jOOQ-test/src/org/jooq/test/mysql/generatedclasses/tables/XTestCase_71.java b/jOOQ-test/src/org/jooq/test/mysql/generatedclasses/tables/XTestCase_71.java new file mode 100644 index 00000000000..79e080b3f61 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/mysql/generatedclasses/tables/XTestCase_71.java @@ -0,0 +1,74 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.mysql.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + * + * An unused table in the same schema. + */ +public class XTestCase_71 extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = 2144731399; + + /** + * The singleton instance of test.x_test_case_71 + */ + public static final org.jooq.test.mysql.generatedclasses.tables.XTestCase_71 X_TEST_CASE_71 = new org.jooq.test.mysql.generatedclasses.tables.XTestCase_71(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.mysql.generatedclasses.tables.records.XTestCase_71Record.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public static final org.jooq.TableField ID = createField("ID", org.jooq.impl.SQLDataType.INTEGER, X_TEST_CASE_71); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_x_test_case_71
+	 * FOREIGN KEY (TEST_CASE_64_69_ID)
+	 * REFERENCES test.x_test_case_64_69 (ID)
+	 * 
+ */ + public static final org.jooq.TableField TEST_CASE_64_69_ID = createField("TEST_CASE_64_69_ID", org.jooq.impl.SQLDataType.INTEGER, X_TEST_CASE_71); + + /** + * No further instances allowed + */ + private XTestCase_71() { + super("x_test_case_71", org.jooq.test.mysql.generatedclasses.Test.TEST); + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.test.mysql.generatedclasses.Keys.KEY_X_TEST_CASE_71_PRIMARY; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.test.mysql.generatedclasses.Keys.KEY_X_TEST_CASE_71_PRIMARY); + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getReferences() { + return java.util.Arrays.>asList(org.jooq.test.mysql.generatedclasses.Keys.FK_X_TEST_CASE_71); + } +} diff --git a/jOOQ-test/src/org/jooq/test/mysql/generatedclasses/tables/XTestCase_85.java b/jOOQ-test/src/org/jooq/test/mysql/generatedclasses/tables/XTestCase_85.java new file mode 100644 index 00000000000..ca8c7175b66 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/mysql/generatedclasses/tables/XTestCase_85.java @@ -0,0 +1,85 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.mysql.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + * + * An unused table in the same schema. + */ +public class XTestCase_85 extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = 629145184; + + /** + * The singleton instance of test.x_test_case_85 + */ + public static final org.jooq.test.mysql.generatedclasses.tables.XTestCase_85 X_TEST_CASE_85 = new org.jooq.test.mysql.generatedclasses.tables.XTestCase_85(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.mysql.generatedclasses.tables.records.XTestCase_85Record.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public static final org.jooq.TableField ID = createField("id", org.jooq.impl.SQLDataType.INTEGER, X_TEST_CASE_85); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_x_test_case_85
+	 * FOREIGN KEY (x_unused_id, x_unused_name)
+	 * REFERENCES test.x_unused (ID, NAME)
+	 * 
+ */ + public static final org.jooq.TableField X_UNUSED_ID = createField("x_unused_id", org.jooq.impl.SQLDataType.INTEGER, X_TEST_CASE_85); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_x_test_case_85
+	 * FOREIGN KEY (x_unused_id, x_unused_name)
+	 * REFERENCES test.x_unused (ID, NAME)
+	 * 
+ */ + public static final org.jooq.TableField X_UNUSED_NAME = createField("x_unused_name", org.jooq.impl.SQLDataType.VARCHAR, X_TEST_CASE_85); + + /** + * No further instances allowed + */ + private XTestCase_85() { + super("x_test_case_85", org.jooq.test.mysql.generatedclasses.Test.TEST); + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.test.mysql.generatedclasses.Keys.KEY_X_TEST_CASE_85_PRIMARY; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.test.mysql.generatedclasses.Keys.KEY_X_TEST_CASE_85_PRIMARY); + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getReferences() { + return java.util.Arrays.>asList(org.jooq.test.mysql.generatedclasses.Keys.FK_X_TEST_CASE_85); + } +} diff --git a/jOOQ-test/src/org/jooq/test/mysql/generatedclasses/tables/XUnused.java b/jOOQ-test/src/org/jooq/test/mysql/generatedclasses/tables/XUnused.java new file mode 100644 index 00000000000..154405df565 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/mysql/generatedclasses/tables/XUnused.java @@ -0,0 +1,142 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.mysql.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + * + * An unused table in the same schema. + */ +public class XUnused extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = -579794226; + + /** + * The singleton instance of test.x_unused + */ + public static final org.jooq.test.mysql.generatedclasses.tables.XUnused X_UNUSED = new org.jooq.test.mysql.generatedclasses.tables.XUnused(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.mysql.generatedclasses.tables.records.XUnusedRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public static final org.jooq.TableField ID = createField("ID", org.jooq.impl.SQLDataType.INTEGER, X_UNUSED); + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public static final org.jooq.TableField NAME = createField("NAME", org.jooq.impl.SQLDataType.VARCHAR, X_UNUSED); + + /** + * An uncommented item + */ + public static final org.jooq.TableField BIG_INTEGER = createField("BIG_INTEGER", org.jooq.impl.SQLDataType.DECIMAL_INTEGER, X_UNUSED); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_x_unused_self
+	 * FOREIGN KEY (ID_REF, NAME_REF)
+	 * REFERENCES test.x_unused (ID, NAME)
+	 * 
+ */ + public static final org.jooq.TableField ID_REF = createField("ID_REF", org.jooq.impl.SQLDataType.INTEGER, X_UNUSED); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_x_unused_self
+	 * FOREIGN KEY (ID_REF, NAME_REF)
+	 * REFERENCES test.x_unused (ID, NAME)
+	 * 
+ */ + public static final org.jooq.TableField NAME_REF = createField("NAME_REF", org.jooq.impl.SQLDataType.VARCHAR, X_UNUSED); + + /** + * An uncommented item + */ + public static final org.jooq.TableField CLASS = createField("CLASS", org.jooq.impl.SQLDataType.INTEGER, X_UNUSED); + + /** + * An uncommented item + */ + public static final org.jooq.TableField FIELDS = createField("FIELDS", org.jooq.impl.SQLDataType.INTEGER, X_UNUSED); + + /** + * An uncommented item + */ + public static final org.jooq.TableField CONFIGURATION = createField("CONFIGURATION", org.jooq.impl.SQLDataType.INTEGER, X_UNUSED); + + /** + * An uncommented item + */ + public static final org.jooq.TableField U_D_T = createField("U_D_T", org.jooq.impl.SQLDataType.INTEGER, X_UNUSED); + + /** + * An uncommented item + */ + public static final org.jooq.TableField META_DATA = createField("META_DATA", org.jooq.impl.SQLDataType.INTEGER, X_UNUSED); + + /** + * An uncommented item + */ + public static final org.jooq.TableField TYPE0 = createField("TYPE0", org.jooq.impl.SQLDataType.INTEGER, X_UNUSED); + + /** + * An uncommented item + */ + public static final org.jooq.TableField PRIMARY_KEY = createField("PRIMARY_KEY", org.jooq.impl.SQLDataType.INTEGER, X_UNUSED); + + /** + * An uncommented item + */ + public static final org.jooq.TableField PRIMARYKEY = createField("PRIMARYKEY", org.jooq.impl.SQLDataType.INTEGER, X_UNUSED); + + /** + * An uncommented item + */ + public static final org.jooq.TableField FIELD_737 = createField("FIELD 737", org.jooq.impl.SQLDataType.DECIMAL, X_UNUSED); + + /** + * No further instances allowed + */ + private XUnused() { + super("x_unused", org.jooq.test.mysql.generatedclasses.Test.TEST); + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.test.mysql.generatedclasses.Keys.KEY_X_UNUSED_PRIMARY; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.test.mysql.generatedclasses.Keys.KEY_X_UNUSED_PRIMARY, org.jooq.test.mysql.generatedclasses.Keys.KEY_X_UNUSED_UK_X_UNUSED_ID); + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getReferences() { + return java.util.Arrays.>asList(org.jooq.test.mysql.generatedclasses.Keys.FK_X_UNUSED_SELF); + } +} diff --git a/jOOQ-test/src/org/jooq/test/mysql/generatedclasses/tables/pojos/TAuthor.java b/jOOQ-test/src/org/jooq/test/mysql/generatedclasses/tables/pojos/TAuthor.java new file mode 100644 index 00000000000..6f0f648f6dd --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/mysql/generatedclasses/tables/pojos/TAuthor.java @@ -0,0 +1,69 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.mysql.generatedclasses.tables.pojos; + +/** + * This class is generated by jOOQ. + * + * An entity holding authors of books + */ +public class TAuthor implements java.io.Serializable { + + private static final long serialVersionUID = 1386247847; + + private java.lang.Integer id; + private java.lang.String firstName; + private java.lang.String lastName; + private java.sql.Date dateOfBirth; + private java.lang.Integer yearOfBirth; + private java.lang.String address; + + public java.lang.Integer getId() { + return this.id; + } + + public void setId(java.lang.Integer id) { + this.id = id; + } + + public java.lang.String getFirstName() { + return this.firstName; + } + + public void setFirstName(java.lang.String firstName) { + this.firstName = firstName; + } + + public java.lang.String getLastName() { + return this.lastName; + } + + public void setLastName(java.lang.String lastName) { + this.lastName = lastName; + } + + public java.sql.Date getDateOfBirth() { + return this.dateOfBirth; + } + + public void setDateOfBirth(java.sql.Date dateOfBirth) { + this.dateOfBirth = dateOfBirth; + } + + public java.lang.Integer getYearOfBirth() { + return this.yearOfBirth; + } + + public void setYearOfBirth(java.lang.Integer yearOfBirth) { + this.yearOfBirth = yearOfBirth; + } + + public java.lang.String getAddress() { + return this.address; + } + + public void setAddress(java.lang.String address) { + this.address = address; + } +} diff --git a/jOOQ-test/src/org/jooq/test/mysql/generatedclasses/tables/pojos/TBook.java b/jOOQ-test/src/org/jooq/test/mysql/generatedclasses/tables/pojos/TBook.java new file mode 100644 index 00000000000..3dda681f9e1 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/mysql/generatedclasses/tables/pojos/TBook.java @@ -0,0 +1,105 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.mysql.generatedclasses.tables.pojos; + +/** + * This class is generated by jOOQ. + * + * An entity holding books + */ +public class TBook implements java.io.Serializable { + + private static final long serialVersionUID = -1465434661; + + private java.lang.Integer id; + private java.lang.Integer authorId; + private java.lang.Integer coAuthorId; + private java.lang.Integer detailsId; + private java.lang.String title; + private java.lang.Integer publishedIn; + private org.jooq.test.mysql.generatedclasses.enums.TLanguage languageId; + private java.lang.String contentText; + private byte[] contentPdf; + private org.jooq.test.mysql.generatedclasses.enums.TBookStatus status; + + public java.lang.Integer getId() { + return this.id; + } + + public void setId(java.lang.Integer id) { + this.id = id; + } + + public java.lang.Integer getAuthorId() { + return this.authorId; + } + + public void setAuthorId(java.lang.Integer authorId) { + this.authorId = authorId; + } + + public java.lang.Integer getCoAuthorId() { + return this.coAuthorId; + } + + public void setCoAuthorId(java.lang.Integer coAuthorId) { + this.coAuthorId = coAuthorId; + } + + public java.lang.Integer getDetailsId() { + return this.detailsId; + } + + public void setDetailsId(java.lang.Integer detailsId) { + this.detailsId = detailsId; + } + + public java.lang.String getTitle() { + return this.title; + } + + public void setTitle(java.lang.String title) { + this.title = title; + } + + public java.lang.Integer getPublishedIn() { + return this.publishedIn; + } + + public void setPublishedIn(java.lang.Integer publishedIn) { + this.publishedIn = publishedIn; + } + + public org.jooq.test.mysql.generatedclasses.enums.TLanguage getLanguageId() { + return this.languageId; + } + + public void setLanguageId(org.jooq.test.mysql.generatedclasses.enums.TLanguage languageId) { + this.languageId = languageId; + } + + public java.lang.String getContentText() { + return this.contentText; + } + + public void setContentText(java.lang.String contentText) { + this.contentText = contentText; + } + + public byte[] getContentPdf() { + return this.contentPdf; + } + + public void setContentPdf(byte[] contentPdf) { + this.contentPdf = contentPdf; + } + + public org.jooq.test.mysql.generatedclasses.enums.TBookStatus getStatus() { + return this.status; + } + + public void setStatus(org.jooq.test.mysql.generatedclasses.enums.TBookStatus status) { + this.status = status; + } +} diff --git a/jOOQ-test/src/org/jooq/test/mysql/generatedclasses/tables/pojos/TBookStore.java b/jOOQ-test/src/org/jooq/test/mysql/generatedclasses/tables/pojos/TBookStore.java new file mode 100644 index 00000000000..798a7090667 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/mysql/generatedclasses/tables/pojos/TBookStore.java @@ -0,0 +1,24 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.mysql.generatedclasses.tables.pojos; + +/** + * This class is generated by jOOQ. + * + * A book store + */ +public class TBookStore implements java.io.Serializable { + + private static final long serialVersionUID = 1068471066; + + private java.lang.String name; + + public java.lang.String getName() { + return this.name; + } + + public void setName(java.lang.String name) { + this.name = name; + } +} diff --git a/jOOQ-test/src/org/jooq/test/mysql/generatedclasses/tables/pojos/TBookToBookStore.java b/jOOQ-test/src/org/jooq/test/mysql/generatedclasses/tables/pojos/TBookToBookStore.java new file mode 100644 index 00000000000..c59db35b177 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/mysql/generatedclasses/tables/pojos/TBookToBookStore.java @@ -0,0 +1,42 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.mysql.generatedclasses.tables.pojos; + +/** + * This class is generated by jOOQ. + * + * An m:n relation between books and book stores + */ +public class TBookToBookStore implements java.io.Serializable { + + private static final long serialVersionUID = 734241767; + + private java.lang.String bookStoreName; + private java.lang.Integer bookId; + private java.lang.Integer stock; + + public java.lang.String getBookStoreName() { + return this.bookStoreName; + } + + public void setBookStoreName(java.lang.String bookStoreName) { + this.bookStoreName = bookStoreName; + } + + public java.lang.Integer getBookId() { + return this.bookId; + } + + public void setBookId(java.lang.Integer bookId) { + this.bookId = bookId; + } + + public java.lang.Integer getStock() { + return this.stock; + } + + public void setStock(java.lang.Integer stock) { + this.stock = stock; + } +} diff --git a/jOOQ-test/src/org/jooq/test/mysql/generatedclasses/tables/pojos/TBooleans.java b/jOOQ-test/src/org/jooq/test/mysql/generatedclasses/tables/pojos/TBooleans.java new file mode 100644 index 00000000000..b4f92ca1909 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/mysql/generatedclasses/tables/pojos/TBooleans.java @@ -0,0 +1,112 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.mysql.generatedclasses.tables.pojos; + +/** + * This class is generated by jOOQ. + */ +public class TBooleans implements java.io.Serializable { + + private static final long serialVersionUID = -199911526; + + private java.lang.Integer id; + private org.jooq.test._.converters.Boolean_10 oneZero; + private org.jooq.test._.converters.Boolean_TF_LC trueFalseLc; + private org.jooq.test._.converters.Boolean_TF_UC trueFalseUc; + private org.jooq.test._.converters.Boolean_YES_NO_LC yesNoLc; + private org.jooq.test._.converters.Boolean_YES_NO_UC yesNoUc; + private org.jooq.test._.converters.Boolean_YN_LC yNLc; + private org.jooq.test._.converters.Boolean_YN_UC yNUc; + private java.lang.Boolean vcBoolean; + private java.lang.Boolean cBoolean; + private java.lang.Boolean nBoolean; + + public java.lang.Integer getId() { + return this.id; + } + + public void setId(java.lang.Integer id) { + this.id = id; + } + + public org.jooq.test._.converters.Boolean_10 getOneZero() { + return this.oneZero; + } + + public void setOneZero(org.jooq.test._.converters.Boolean_10 oneZero) { + this.oneZero = oneZero; + } + + public org.jooq.test._.converters.Boolean_TF_LC getTrueFalseLc() { + return this.trueFalseLc; + } + + public void setTrueFalseLc(org.jooq.test._.converters.Boolean_TF_LC trueFalseLc) { + this.trueFalseLc = trueFalseLc; + } + + public org.jooq.test._.converters.Boolean_TF_UC getTrueFalseUc() { + return this.trueFalseUc; + } + + public void setTrueFalseUc(org.jooq.test._.converters.Boolean_TF_UC trueFalseUc) { + this.trueFalseUc = trueFalseUc; + } + + public org.jooq.test._.converters.Boolean_YES_NO_LC getYesNoLc() { + return this.yesNoLc; + } + + public void setYesNoLc(org.jooq.test._.converters.Boolean_YES_NO_LC yesNoLc) { + this.yesNoLc = yesNoLc; + } + + public org.jooq.test._.converters.Boolean_YES_NO_UC getYesNoUc() { + return this.yesNoUc; + } + + public void setYesNoUc(org.jooq.test._.converters.Boolean_YES_NO_UC yesNoUc) { + this.yesNoUc = yesNoUc; + } + + public org.jooq.test._.converters.Boolean_YN_LC getYNLc() { + return this.yNLc; + } + + public void setYNLc(org.jooq.test._.converters.Boolean_YN_LC yNLc) { + this.yNLc = yNLc; + } + + public org.jooq.test._.converters.Boolean_YN_UC getYNUc() { + return this.yNUc; + } + + public void setYNUc(org.jooq.test._.converters.Boolean_YN_UC yNUc) { + this.yNUc = yNUc; + } + + public java.lang.Boolean getVcBoolean() { + return this.vcBoolean; + } + + public void setVcBoolean(java.lang.Boolean vcBoolean) { + this.vcBoolean = vcBoolean; + } + + public java.lang.Boolean getCBoolean() { + return this.cBoolean; + } + + public void setCBoolean(java.lang.Boolean cBoolean) { + this.cBoolean = cBoolean; + } + + public java.lang.Boolean getNBoolean() { + return this.nBoolean; + } + + public void setNBoolean(java.lang.Boolean nBoolean) { + this.nBoolean = nBoolean; + } +} diff --git a/jOOQ-test/src/org/jooq/test/mysql/generatedclasses/tables/pojos/TDates.java b/jOOQ-test/src/org/jooq/test/mysql/generatedclasses/tables/pojos/TDates.java new file mode 100644 index 00000000000..6a82e95ee83 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/mysql/generatedclasses/tables/pojos/TDates.java @@ -0,0 +1,67 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.mysql.generatedclasses.tables.pojos; + +/** + * This class is generated by jOOQ. + */ +public class TDates implements java.io.Serializable { + + private static final long serialVersionUID = 413900790; + + private java.lang.Integer id; + private java.sql.Date d; + private java.sql.Time t; + private java.sql.Timestamp ts; + private java.lang.Integer dInt; + private java.lang.Long tsBigint; + + public java.lang.Integer getId() { + return this.id; + } + + public void setId(java.lang.Integer id) { + this.id = id; + } + + public java.sql.Date getD() { + return this.d; + } + + public void setD(java.sql.Date d) { + this.d = d; + } + + public java.sql.Time getT() { + return this.t; + } + + public void setT(java.sql.Time t) { + this.t = t; + } + + public java.sql.Timestamp getTs() { + return this.ts; + } + + public void setTs(java.sql.Timestamp ts) { + this.ts = ts; + } + + public java.lang.Integer getDInt() { + return this.dInt; + } + + public void setDInt(java.lang.Integer dInt) { + this.dInt = dInt; + } + + public java.lang.Long getTsBigint() { + return this.tsBigint; + } + + public void setTsBigint(java.lang.Long tsBigint) { + this.tsBigint = tsBigint; + } +} diff --git a/jOOQ-test/src/org/jooq/test/mysql/generatedclasses/tables/pojos/TIdentityPk.java b/jOOQ-test/src/org/jooq/test/mysql/generatedclasses/tables/pojos/TIdentityPk.java new file mode 100644 index 00000000000..02856f71e8f --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/mysql/generatedclasses/tables/pojos/TIdentityPk.java @@ -0,0 +1,31 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.mysql.generatedclasses.tables.pojos; + +/** + * This class is generated by jOOQ. + */ +public class TIdentityPk implements java.io.Serializable { + + private static final long serialVersionUID = -1205361692; + + private java.lang.Integer id; + private java.lang.Integer val; + + public java.lang.Integer getId() { + return this.id; + } + + public void setId(java.lang.Integer id) { + this.id = id; + } + + public java.lang.Integer getVal() { + return this.val; + } + + public void setVal(java.lang.Integer val) { + this.val = val; + } +} diff --git a/jOOQ-test/src/org/jooq/test/mysql/generatedclasses/tables/pojos/TTriggers.java b/jOOQ-test/src/org/jooq/test/mysql/generatedclasses/tables/pojos/TTriggers.java new file mode 100644 index 00000000000..1d88fe82a23 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/mysql/generatedclasses/tables/pojos/TTriggers.java @@ -0,0 +1,40 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.mysql.generatedclasses.tables.pojos; + +/** + * This class is generated by jOOQ. + */ +public class TTriggers implements java.io.Serializable { + + private static final long serialVersionUID = -479572339; + + private java.lang.Integer idGenerated; + private java.lang.Integer id; + private java.lang.Integer counter; + + public java.lang.Integer getIdGenerated() { + return this.idGenerated; + } + + public void setIdGenerated(java.lang.Integer idGenerated) { + this.idGenerated = idGenerated; + } + + public java.lang.Integer getId() { + return this.id; + } + + public void setId(java.lang.Integer id) { + this.id = id; + } + + public java.lang.Integer getCounter() { + return this.counter; + } + + public void setCounter(java.lang.Integer counter) { + this.counter = counter; + } +} diff --git a/jOOQ-test/src/org/jooq/test/mysql/generatedclasses/tables/pojos/TUnsigned.java b/jOOQ-test/src/org/jooq/test/mysql/generatedclasses/tables/pojos/TUnsigned.java new file mode 100644 index 00000000000..530d15b4388 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/mysql/generatedclasses/tables/pojos/TUnsigned.java @@ -0,0 +1,49 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.mysql.generatedclasses.tables.pojos; + +/** + * This class is generated by jOOQ. + */ +public class TUnsigned implements java.io.Serializable { + + private static final long serialVersionUID = -1510277863; + + private org.jooq.tools.unsigned.UByte uByte; + private org.jooq.tools.unsigned.UShort uShort; + private org.jooq.tools.unsigned.UInteger uInt; + private org.jooq.tools.unsigned.ULong uLong; + + public org.jooq.tools.unsigned.UByte getUByte() { + return this.uByte; + } + + public void setUByte(org.jooq.tools.unsigned.UByte uByte) { + this.uByte = uByte; + } + + public org.jooq.tools.unsigned.UShort getUShort() { + return this.uShort; + } + + public void setUShort(org.jooq.tools.unsigned.UShort uShort) { + this.uShort = uShort; + } + + public org.jooq.tools.unsigned.UInteger getUInt() { + return this.uInt; + } + + public void setUInt(org.jooq.tools.unsigned.UInteger uInt) { + this.uInt = uInt; + } + + public org.jooq.tools.unsigned.ULong getULong() { + return this.uLong; + } + + public void setULong(org.jooq.tools.unsigned.ULong uLong) { + this.uLong = uLong; + } +} diff --git a/jOOQ-test/src/org/jooq/test/mysql/generatedclasses/tables/pojos/T_639NumbersTable.java b/jOOQ-test/src/org/jooq/test/mysql/generatedclasses/tables/pojos/T_639NumbersTable.java new file mode 100644 index 00000000000..9c0e7a25a1e --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/mysql/generatedclasses/tables/pojos/T_639NumbersTable.java @@ -0,0 +1,130 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.mysql.generatedclasses.tables.pojos; + +/** + * This class is generated by jOOQ. + */ +public class T_639NumbersTable implements java.io.Serializable { + + private static final long serialVersionUID = 1858551029; + + private java.lang.Integer id; + private java.lang.Byte byte_; + private java.lang.Short short_; + private java.lang.Integer integer; + private java.lang.Long long_; + private java.lang.Byte byteDecimal; + private java.lang.Short shortDecimal; + private java.lang.Integer integerDecimal; + private java.lang.Long longDecimal; + private java.math.BigInteger bigInteger; + private java.math.BigDecimal bigDecimal; + private java.lang.Double float_; + private java.lang.Double double_; + + public java.lang.Integer getId() { + return this.id; + } + + public void setId(java.lang.Integer id) { + this.id = id; + } + + public java.lang.Byte getByte() { + return this.byte_; + } + + public void setByte(java.lang.Byte byte_) { + this.byte_ = byte_; + } + + public java.lang.Short getShort() { + return this.short_; + } + + public void setShort(java.lang.Short short_) { + this.short_ = short_; + } + + public java.lang.Integer getInteger() { + return this.integer; + } + + public void setInteger(java.lang.Integer integer) { + this.integer = integer; + } + + public java.lang.Long getLong() { + return this.long_; + } + + public void setLong(java.lang.Long long_) { + this.long_ = long_; + } + + public java.lang.Byte getByteDecimal() { + return this.byteDecimal; + } + + public void setByteDecimal(java.lang.Byte byteDecimal) { + this.byteDecimal = byteDecimal; + } + + public java.lang.Short getShortDecimal() { + return this.shortDecimal; + } + + public void setShortDecimal(java.lang.Short shortDecimal) { + this.shortDecimal = shortDecimal; + } + + public java.lang.Integer getIntegerDecimal() { + return this.integerDecimal; + } + + public void setIntegerDecimal(java.lang.Integer integerDecimal) { + this.integerDecimal = integerDecimal; + } + + public java.lang.Long getLongDecimal() { + return this.longDecimal; + } + + public void setLongDecimal(java.lang.Long longDecimal) { + this.longDecimal = longDecimal; + } + + public java.math.BigInteger getBigInteger() { + return this.bigInteger; + } + + public void setBigInteger(java.math.BigInteger bigInteger) { + this.bigInteger = bigInteger; + } + + public java.math.BigDecimal getBigDecimal() { + return this.bigDecimal; + } + + public void setBigDecimal(java.math.BigDecimal bigDecimal) { + this.bigDecimal = bigDecimal; + } + + public java.lang.Double getFloat() { + return this.float_; + } + + public void setFloat(java.lang.Double float_) { + this.float_ = float_; + } + + public java.lang.Double getDouble() { + return this.double_; + } + + public void setDouble(java.lang.Double double_) { + this.double_ = double_; + } +} diff --git a/jOOQ-test/src/org/jooq/test/mysql/generatedclasses/tables/pojos/T_658Ref.java b/jOOQ-test/src/org/jooq/test/mysql/generatedclasses/tables/pojos/T_658Ref.java new file mode 100644 index 00000000000..04f92f90540 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/mysql/generatedclasses/tables/pojos/T_658Ref.java @@ -0,0 +1,67 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.mysql.generatedclasses.tables.pojos; + +/** + * This class is generated by jOOQ. + */ +public class T_658Ref implements java.io.Serializable { + + private static final long serialVersionUID = -1209306844; + + private org.jooq.test.mysql.generatedclasses.enums.T_658_11 ref_11; + private org.jooq.test.mysql.generatedclasses.enums.T_658_21 ref_21; + private org.jooq.test.mysql.generatedclasses.enums.T_658_31 ref_31; + private org.jooq.test.mysql.generatedclasses.enums.T_658_12 ref_12; + private org.jooq.test.mysql.generatedclasses.enums.T_658_22 ref_22; + private org.jooq.test.mysql.generatedclasses.enums.T_658_32 ref_32; + + public org.jooq.test.mysql.generatedclasses.enums.T_658_11 getRef_11() { + return this.ref_11; + } + + public void setRef_11(org.jooq.test.mysql.generatedclasses.enums.T_658_11 ref_11) { + this.ref_11 = ref_11; + } + + public org.jooq.test.mysql.generatedclasses.enums.T_658_21 getRef_21() { + return this.ref_21; + } + + public void setRef_21(org.jooq.test.mysql.generatedclasses.enums.T_658_21 ref_21) { + this.ref_21 = ref_21; + } + + public org.jooq.test.mysql.generatedclasses.enums.T_658_31 getRef_31() { + return this.ref_31; + } + + public void setRef_31(org.jooq.test.mysql.generatedclasses.enums.T_658_31 ref_31) { + this.ref_31 = ref_31; + } + + public org.jooq.test.mysql.generatedclasses.enums.T_658_12 getRef_12() { + return this.ref_12; + } + + public void setRef_12(org.jooq.test.mysql.generatedclasses.enums.T_658_12 ref_12) { + this.ref_12 = ref_12; + } + + public org.jooq.test.mysql.generatedclasses.enums.T_658_22 getRef_22() { + return this.ref_22; + } + + public void setRef_22(org.jooq.test.mysql.generatedclasses.enums.T_658_22 ref_22) { + this.ref_22 = ref_22; + } + + public org.jooq.test.mysql.generatedclasses.enums.T_658_32 getRef_32() { + return this.ref_32; + } + + public void setRef_32(org.jooq.test.mysql.generatedclasses.enums.T_658_32 ref_32) { + this.ref_32 = ref_32; + } +} diff --git a/jOOQ-test/src/org/jooq/test/mysql/generatedclasses/tables/pojos/T_725LobTest.java b/jOOQ-test/src/org/jooq/test/mysql/generatedclasses/tables/pojos/T_725LobTest.java new file mode 100644 index 00000000000..35caa1bcea7 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/mysql/generatedclasses/tables/pojos/T_725LobTest.java @@ -0,0 +1,31 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.mysql.generatedclasses.tables.pojos; + +/** + * This class is generated by jOOQ. + */ +public class T_725LobTest implements java.io.Serializable { + + private static final long serialVersionUID = -1817151553; + + private java.lang.Integer id; + private byte[] lob; + + public java.lang.Integer getId() { + return this.id; + } + + public void setId(java.lang.Integer id) { + this.id = id; + } + + public byte[] getLob() { + return this.lob; + } + + public void setLob(byte[] lob) { + this.lob = lob; + } +} diff --git a/jOOQ-test/src/org/jooq/test/mysql/generatedclasses/tables/pojos/T_785.java b/jOOQ-test/src/org/jooq/test/mysql/generatedclasses/tables/pojos/T_785.java new file mode 100644 index 00000000000..576bf6dd1db --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/mysql/generatedclasses/tables/pojos/T_785.java @@ -0,0 +1,40 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.mysql.generatedclasses.tables.pojos; + +/** + * This class is generated by jOOQ. + */ +public class T_785 implements java.io.Serializable { + + private static final long serialVersionUID = -2110496507; + + private java.lang.Integer id; + private java.lang.String name; + private java.lang.String value; + + public java.lang.Integer getId() { + return this.id; + } + + public void setId(java.lang.Integer id) { + this.id = id; + } + + public java.lang.String getName() { + return this.name; + } + + public void setName(java.lang.String name) { + this.name = name; + } + + public java.lang.String getValue() { + return this.value; + } + + public void setValue(java.lang.String value) { + this.value = value; + } +} diff --git a/jOOQ-test/src/org/jooq/test/mysql/generatedclasses/tables/pojos/T_959.java b/jOOQ-test/src/org/jooq/test/mysql/generatedclasses/tables/pojos/T_959.java new file mode 100644 index 00000000000..ffeba07d2fd --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/mysql/generatedclasses/tables/pojos/T_959.java @@ -0,0 +1,22 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.mysql.generatedclasses.tables.pojos; + +/** + * This class is generated by jOOQ. + */ +public class T_959 implements java.io.Serializable { + + private static final long serialVersionUID = -1879803665; + + private org.jooq.test.mysql.generatedclasses.enums.T_959JavaKeywords javaKeywords; + + public org.jooq.test.mysql.generatedclasses.enums.T_959JavaKeywords getJavaKeywords() { + return this.javaKeywords; + } + + public void setJavaKeywords(org.jooq.test.mysql.generatedclasses.enums.T_959JavaKeywords javaKeywords) { + this.javaKeywords = javaKeywords; + } +} diff --git a/jOOQ-test/src/org/jooq/test/mysql/generatedclasses/tables/pojos/VAuthor.java b/jOOQ-test/src/org/jooq/test/mysql/generatedclasses/tables/pojos/VAuthor.java new file mode 100644 index 00000000000..0a98e1fa64f --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/mysql/generatedclasses/tables/pojos/VAuthor.java @@ -0,0 +1,69 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.mysql.generatedclasses.tables.pojos; + +/** + * This class is generated by jOOQ. + * + * VIEW + */ +public class VAuthor implements java.io.Serializable { + + private static final long serialVersionUID = 1430170954; + + private java.lang.Integer id; + private java.lang.String firstName; + private java.lang.String lastName; + private java.sql.Date dateOfBirth; + private java.lang.Integer yearOfBirth; + private java.lang.String address; + + public java.lang.Integer getId() { + return this.id; + } + + public void setId(java.lang.Integer id) { + this.id = id; + } + + public java.lang.String getFirstName() { + return this.firstName; + } + + public void setFirstName(java.lang.String firstName) { + this.firstName = firstName; + } + + public java.lang.String getLastName() { + return this.lastName; + } + + public void setLastName(java.lang.String lastName) { + this.lastName = lastName; + } + + public java.sql.Date getDateOfBirth() { + return this.dateOfBirth; + } + + public void setDateOfBirth(java.sql.Date dateOfBirth) { + this.dateOfBirth = dateOfBirth; + } + + public java.lang.Integer getYearOfBirth() { + return this.yearOfBirth; + } + + public void setYearOfBirth(java.lang.Integer yearOfBirth) { + this.yearOfBirth = yearOfBirth; + } + + public java.lang.String getAddress() { + return this.address; + } + + public void setAddress(java.lang.String address) { + this.address = address; + } +} diff --git a/jOOQ-test/src/org/jooq/test/mysql/generatedclasses/tables/pojos/VBook.java b/jOOQ-test/src/org/jooq/test/mysql/generatedclasses/tables/pojos/VBook.java new file mode 100644 index 00000000000..78c9d0ecb0e --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/mysql/generatedclasses/tables/pojos/VBook.java @@ -0,0 +1,105 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.mysql.generatedclasses.tables.pojos; + +/** + * This class is generated by jOOQ. + * + * VIEW + */ +public class VBook implements java.io.Serializable { + + private static final long serialVersionUID = 360277067; + + private java.lang.Integer id; + private java.lang.Integer authorId; + private java.lang.Integer coAuthorId; + private java.lang.Integer detailsId; + private java.lang.String title; + private java.lang.Integer publishedIn; + private java.lang.Integer languageId; + private java.lang.String contentText; + private byte[] contentPdf; + private org.jooq.test.mysql.generatedclasses.enums.VBookStatus status; + + public java.lang.Integer getId() { + return this.id; + } + + public void setId(java.lang.Integer id) { + this.id = id; + } + + public java.lang.Integer getAuthorId() { + return this.authorId; + } + + public void setAuthorId(java.lang.Integer authorId) { + this.authorId = authorId; + } + + public java.lang.Integer getCoAuthorId() { + return this.coAuthorId; + } + + public void setCoAuthorId(java.lang.Integer coAuthorId) { + this.coAuthorId = coAuthorId; + } + + public java.lang.Integer getDetailsId() { + return this.detailsId; + } + + public void setDetailsId(java.lang.Integer detailsId) { + this.detailsId = detailsId; + } + + public java.lang.String getTitle() { + return this.title; + } + + public void setTitle(java.lang.String title) { + this.title = title; + } + + public java.lang.Integer getPublishedIn() { + return this.publishedIn; + } + + public void setPublishedIn(java.lang.Integer publishedIn) { + this.publishedIn = publishedIn; + } + + public java.lang.Integer getLanguageId() { + return this.languageId; + } + + public void setLanguageId(java.lang.Integer languageId) { + this.languageId = languageId; + } + + public java.lang.String getContentText() { + return this.contentText; + } + + public void setContentText(java.lang.String contentText) { + this.contentText = contentText; + } + + public byte[] getContentPdf() { + return this.contentPdf; + } + + public void setContentPdf(byte[] contentPdf) { + this.contentPdf = contentPdf; + } + + public org.jooq.test.mysql.generatedclasses.enums.VBookStatus getStatus() { + return this.status; + } + + public void setStatus(org.jooq.test.mysql.generatedclasses.enums.VBookStatus status) { + this.status = status; + } +} diff --git a/jOOQ-test/src/org/jooq/test/mysql/generatedclasses/tables/pojos/VLibrary.java b/jOOQ-test/src/org/jooq/test/mysql/generatedclasses/tables/pojos/VLibrary.java new file mode 100644 index 00000000000..ad482e94826 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/mysql/generatedclasses/tables/pojos/VLibrary.java @@ -0,0 +1,33 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.mysql.generatedclasses.tables.pojos; + +/** + * This class is generated by jOOQ. + * + * VIEW + */ +public class VLibrary implements java.io.Serializable { + + private static final long serialVersionUID = -1934101596; + + private java.lang.String author; + private java.lang.String title; + + public java.lang.String getAuthor() { + return this.author; + } + + public void setAuthor(java.lang.String author) { + this.author = author; + } + + public java.lang.String getTitle() { + return this.title; + } + + public void setTitle(java.lang.String title) { + this.title = title; + } +} diff --git a/jOOQ-test/src/org/jooq/test/mysql/generatedclasses/tables/pojos/XTestCase_64_69.java b/jOOQ-test/src/org/jooq/test/mysql/generatedclasses/tables/pojos/XTestCase_64_69.java new file mode 100644 index 00000000000..6c4aea32798 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/mysql/generatedclasses/tables/pojos/XTestCase_64_69.java @@ -0,0 +1,33 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.mysql.generatedclasses.tables.pojos; + +/** + * This class is generated by jOOQ. + * + * An unused table in the same schema. + */ +public class XTestCase_64_69 implements java.io.Serializable { + + private static final long serialVersionUID = -1351242452; + + private java.lang.Integer id; + private java.lang.Integer unusedId; + + public java.lang.Integer getId() { + return this.id; + } + + public void setId(java.lang.Integer id) { + this.id = id; + } + + public java.lang.Integer getUnusedId() { + return this.unusedId; + } + + public void setUnusedId(java.lang.Integer unusedId) { + this.unusedId = unusedId; + } +} diff --git a/jOOQ-test/src/org/jooq/test/mysql/generatedclasses/tables/pojos/XTestCase_71.java b/jOOQ-test/src/org/jooq/test/mysql/generatedclasses/tables/pojos/XTestCase_71.java new file mode 100644 index 00000000000..d13da7b8c48 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/mysql/generatedclasses/tables/pojos/XTestCase_71.java @@ -0,0 +1,33 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.mysql.generatedclasses.tables.pojos; + +/** + * This class is generated by jOOQ. + * + * An unused table in the same schema. + */ +public class XTestCase_71 implements java.io.Serializable { + + private static final long serialVersionUID = -790489891; + + private java.lang.Integer id; + private java.lang.Integer testCase_64_69Id; + + public java.lang.Integer getId() { + return this.id; + } + + public void setId(java.lang.Integer id) { + this.id = id; + } + + public java.lang.Integer getTestCase_64_69Id() { + return this.testCase_64_69Id; + } + + public void setTestCase_64_69Id(java.lang.Integer testCase_64_69Id) { + this.testCase_64_69Id = testCase_64_69Id; + } +} diff --git a/jOOQ-test/src/org/jooq/test/mysql/generatedclasses/tables/pojos/XTestCase_85.java b/jOOQ-test/src/org/jooq/test/mysql/generatedclasses/tables/pojos/XTestCase_85.java new file mode 100644 index 00000000000..baad90052a8 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/mysql/generatedclasses/tables/pojos/XTestCase_85.java @@ -0,0 +1,42 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.mysql.generatedclasses.tables.pojos; + +/** + * This class is generated by jOOQ. + * + * An unused table in the same schema. + */ +public class XTestCase_85 implements java.io.Serializable { + + private static final long serialVersionUID = -2132677187; + + private java.lang.Integer id; + private java.lang.Integer xUnusedId; + private java.lang.String xUnusedName; + + public java.lang.Integer getId() { + return this.id; + } + + public void setId(java.lang.Integer id) { + this.id = id; + } + + public java.lang.Integer getXUnusedId() { + return this.xUnusedId; + } + + public void setXUnusedId(java.lang.Integer xUnusedId) { + this.xUnusedId = xUnusedId; + } + + public java.lang.String getXUnusedName() { + return this.xUnusedName; + } + + public void setXUnusedName(java.lang.String xUnusedName) { + this.xUnusedName = xUnusedName; + } +} diff --git a/jOOQ-test/src/org/jooq/test/mysql/generatedclasses/tables/pojos/XUnused.java b/jOOQ-test/src/org/jooq/test/mysql/generatedclasses/tables/pojos/XUnused.java new file mode 100644 index 00000000000..7ac98f3eb1a --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/mysql/generatedclasses/tables/pojos/XUnused.java @@ -0,0 +1,141 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.mysql.generatedclasses.tables.pojos; + +/** + * This class is generated by jOOQ. + * + * An unused table in the same schema. + */ +public class XUnused implements java.io.Serializable { + + private static final long serialVersionUID = 1359273608; + + private java.lang.Integer id; + private java.lang.String name; + private java.math.BigInteger bigInteger; + private java.lang.Integer idRef; + private java.lang.String nameRef; + private java.lang.Integer class_; + private java.lang.Integer fields; + private java.lang.Integer configuration; + private java.lang.Integer uDT; + private java.lang.Integer metaData; + private java.lang.Integer type0; + private java.lang.Integer primaryKey; + private java.lang.Integer primarykey; + private java.math.BigDecimal field_737; + + public java.lang.Integer getId() { + return this.id; + } + + public void setId(java.lang.Integer id) { + this.id = id; + } + + public java.lang.String getName() { + return this.name; + } + + public void setName(java.lang.String name) { + this.name = name; + } + + public java.math.BigInteger getBigInteger() { + return this.bigInteger; + } + + public void setBigInteger(java.math.BigInteger bigInteger) { + this.bigInteger = bigInteger; + } + + public java.lang.Integer getIdRef() { + return this.idRef; + } + + public void setIdRef(java.lang.Integer idRef) { + this.idRef = idRef; + } + + public java.lang.String getNameRef() { + return this.nameRef; + } + + public void setNameRef(java.lang.String nameRef) { + this.nameRef = nameRef; + } + + public java.lang.Integer getClass_() { + return this.class_; + } + + public void setClass_(java.lang.Integer class_) { + this.class_ = class_; + } + + public java.lang.Integer getFields_() { + return this.fields; + } + + public void setFields_(java.lang.Integer fields) { + this.fields = fields; + } + + public java.lang.Integer getConfiguration_() { + return this.configuration; + } + + public void setConfiguration_(java.lang.Integer configuration) { + this.configuration = configuration; + } + + public java.lang.Integer getUDT() { + return this.uDT; + } + + public void setUDT(java.lang.Integer uDT) { + this.uDT = uDT; + } + + public java.lang.Integer getMetaData_() { + return this.metaData; + } + + public void setMetaData_(java.lang.Integer metaData) { + this.metaData = metaData; + } + + public java.lang.Integer getType0_() { + return this.type0; + } + + public void setType0_(java.lang.Integer type0) { + this.type0 = type0; + } + + public java.lang.Integer getPrimaryKey() { + return this.primaryKey; + } + + public void setPrimaryKey(java.lang.Integer primaryKey) { + this.primaryKey = primaryKey; + } + + public java.lang.Integer getPrimarykey() { + return this.primarykey; + } + + public void setPrimarykey(java.lang.Integer primarykey) { + this.primarykey = primarykey; + } + + public java.math.BigDecimal getField_737() { + return this.field_737; + } + + public void setField_737(java.math.BigDecimal field_737) { + this.field_737 = field_737; + } +} diff --git a/jOOQ-test/src/org/jooq/test/mysql/generatedclasses/tables/records/TAuthorRecord.java b/jOOQ-test/src/org/jooq/test/mysql/generatedclasses/tables/records/TAuthorRecord.java new file mode 100644 index 00000000000..15ed12f7ffb --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/mysql/generatedclasses/tables/records/TAuthorRecord.java @@ -0,0 +1,133 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.mysql.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + * + * An entity holding authors of books + */ +public class TAuthorRecord extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = -1890739333; + + /** + * The author ID + * + * PRIMARY KEY + */ + public void setId(java.lang.Integer value) { + setValue(org.jooq.test.mysql.generatedclasses.tables.TAuthor.ID, value); + } + + /** + * The author ID + * + * PRIMARY KEY + */ + public java.lang.Integer getId() { + return getValue(org.jooq.test.mysql.generatedclasses.tables.TAuthor.ID); + } + + /** + * The author ID + * + * PRIMARY KEY + */ + public java.util.List fetchTBookListByAuthorId() { + return create() + .selectFrom(org.jooq.test.mysql.generatedclasses.tables.TBook.T_BOOK) + .where(org.jooq.test.mysql.generatedclasses.tables.TBook.AUTHOR_ID.equal(getValue(org.jooq.test.mysql.generatedclasses.tables.TAuthor.ID))) + .fetch(); + } + + /** + * The author ID + * + * PRIMARY KEY + */ + public java.util.List fetchTBookListByCoAuthorId() { + return create() + .selectFrom(org.jooq.test.mysql.generatedclasses.tables.TBook.T_BOOK) + .where(org.jooq.test.mysql.generatedclasses.tables.TBook.CO_AUTHOR_ID.equal(getValue(org.jooq.test.mysql.generatedclasses.tables.TAuthor.ID))) + .fetch(); + } + + /** + * The author's first name + */ + public void setFirstName(java.lang.String value) { + setValue(org.jooq.test.mysql.generatedclasses.tables.TAuthor.FIRST_NAME, value); + } + + /** + * The author's first name + */ + public java.lang.String getFirstName() { + return getValue(org.jooq.test.mysql.generatedclasses.tables.TAuthor.FIRST_NAME); + } + + /** + * The author's last name + */ + public void setLastName(java.lang.String value) { + setValue(org.jooq.test.mysql.generatedclasses.tables.TAuthor.LAST_NAME, value); + } + + /** + * The author's last name + */ + public java.lang.String getLastName() { + return getValue(org.jooq.test.mysql.generatedclasses.tables.TAuthor.LAST_NAME); + } + + /** + * The author's date of birth + */ + public void setDateOfBirth(java.sql.Date value) { + setValue(org.jooq.test.mysql.generatedclasses.tables.TAuthor.DATE_OF_BIRTH, value); + } + + /** + * The author's date of birth + */ + public java.sql.Date getDateOfBirth() { + return getValue(org.jooq.test.mysql.generatedclasses.tables.TAuthor.DATE_OF_BIRTH); + } + + /** + * The author's year of birth + */ + public void setYearOfBirth(java.lang.Integer value) { + setValue(org.jooq.test.mysql.generatedclasses.tables.TAuthor.YEAR_OF_BIRTH, value); + } + + /** + * The author's year of birth + */ + public java.lang.Integer getYearOfBirth() { + return getValue(org.jooq.test.mysql.generatedclasses.tables.TAuthor.YEAR_OF_BIRTH); + } + + /** + * The author's address + */ + public void setAddress(java.lang.String value) { + setValue(org.jooq.test.mysql.generatedclasses.tables.TAuthor.ADDRESS, value); + } + + /** + * The author's address + */ + public java.lang.String getAddress() { + return getValue(org.jooq.test.mysql.generatedclasses.tables.TAuthor.ADDRESS); + } + + /** + * Create a detached TAuthorRecord + */ + public TAuthorRecord() { + super(org.jooq.test.mysql.generatedclasses.tables.TAuthor.T_AUTHOR); + } +} diff --git a/jOOQ-test/src/org/jooq/test/mysql/generatedclasses/tables/records/TBookRecord.java b/jOOQ-test/src/org/jooq/test/mysql/generatedclasses/tables/records/TBookRecord.java new file mode 100644 index 00000000000..d110c149175 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/mysql/generatedclasses/tables/records/TBookRecord.java @@ -0,0 +1,245 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.mysql.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + * + * An entity holding books + */ +public class TBookRecord extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = 1209646; + + /** + * The book ID + * + * PRIMARY KEY + */ + public void setId(java.lang.Integer value) { + setValue(org.jooq.test.mysql.generatedclasses.tables.TBook.ID, value); + } + + /** + * The book ID + * + * PRIMARY KEY + */ + public java.lang.Integer getId() { + return getValue(org.jooq.test.mysql.generatedclasses.tables.TBook.ID); + } + + /** + * The book ID + * + * PRIMARY KEY + */ + public java.util.List fetchTBookToBookStoreList() { + return create() + .selectFrom(org.jooq.test.mysql.generatedclasses.tables.TBookToBookStore.T_BOOK_TO_BOOK_STORE) + .where(org.jooq.test.mysql.generatedclasses.tables.TBookToBookStore.BOOK_ID.equal(getValue(org.jooq.test.mysql.generatedclasses.tables.TBook.ID))) + .fetch(); + } + + /** + * The author ID in entity 'author' + *

+ *

+	 * CONSTRAINT fk_t_book_author_id
+	 * FOREIGN KEY (AUTHOR_ID)
+	 * REFERENCES test.t_author (ID)
+	 * 
+ */ + public void setAuthorId(java.lang.Integer value) { + setValue(org.jooq.test.mysql.generatedclasses.tables.TBook.AUTHOR_ID, value); + } + + /** + * The author ID in entity 'author' + *

+ *

+	 * CONSTRAINT fk_t_book_author_id
+	 * FOREIGN KEY (AUTHOR_ID)
+	 * REFERENCES test.t_author (ID)
+	 * 
+ */ + public java.lang.Integer getAuthorId() { + return getValue(org.jooq.test.mysql.generatedclasses.tables.TBook.AUTHOR_ID); + } + + /** + * The author ID in entity 'author' + *

+ *

+	 * CONSTRAINT fk_t_book_author_id
+	 * FOREIGN KEY (AUTHOR_ID)
+	 * REFERENCES test.t_author (ID)
+	 * 
+ */ + public org.jooq.test.mysql.generatedclasses.tables.records.TAuthorRecord fetchTAuthorByAuthorId() { + return create() + .selectFrom(org.jooq.test.mysql.generatedclasses.tables.TAuthor.T_AUTHOR) + .where(org.jooq.test.mysql.generatedclasses.tables.TAuthor.ID.equal(getValue(org.jooq.test.mysql.generatedclasses.tables.TBook.AUTHOR_ID))) + .fetchOne(); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_t_book_co_author_id
+	 * FOREIGN KEY (co_author_id)
+	 * REFERENCES test.t_author (ID)
+	 * 
+ */ + public void setCoAuthorId(java.lang.Integer value) { + setValue(org.jooq.test.mysql.generatedclasses.tables.TBook.CO_AUTHOR_ID, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_t_book_co_author_id
+	 * FOREIGN KEY (co_author_id)
+	 * REFERENCES test.t_author (ID)
+	 * 
+ */ + public java.lang.Integer getCoAuthorId() { + return getValue(org.jooq.test.mysql.generatedclasses.tables.TBook.CO_AUTHOR_ID); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_t_book_co_author_id
+	 * FOREIGN KEY (co_author_id)
+	 * REFERENCES test.t_author (ID)
+	 * 
+ */ + public org.jooq.test.mysql.generatedclasses.tables.records.TAuthorRecord fetchTAuthorByCoAuthorId() { + return create() + .selectFrom(org.jooq.test.mysql.generatedclasses.tables.TAuthor.T_AUTHOR) + .where(org.jooq.test.mysql.generatedclasses.tables.TAuthor.ID.equal(getValue(org.jooq.test.mysql.generatedclasses.tables.TBook.CO_AUTHOR_ID))) + .fetchOne(); + } + + /** + * Some more details about the book + */ + public void setDetailsId(java.lang.Integer value) { + setValue(org.jooq.test.mysql.generatedclasses.tables.TBook.DETAILS_ID, value); + } + + /** + * Some more details about the book + */ + public java.lang.Integer getDetailsId() { + return getValue(org.jooq.test.mysql.generatedclasses.tables.TBook.DETAILS_ID); + } + + /** + * The book's title + */ + public void setTitle(java.lang.String value) { + setValue(org.jooq.test.mysql.generatedclasses.tables.TBook.TITLE, value); + } + + /** + * The book's title + */ + public java.lang.String getTitle() { + return getValue(org.jooq.test.mysql.generatedclasses.tables.TBook.TITLE); + } + + /** + * The year the book was published in + */ + public void setPublishedIn(java.lang.Integer value) { + setValue(org.jooq.test.mysql.generatedclasses.tables.TBook.PUBLISHED_IN, value); + } + + /** + * The year the book was published in + */ + public java.lang.Integer getPublishedIn() { + return getValue(org.jooq.test.mysql.generatedclasses.tables.TBook.PUBLISHED_IN); + } + + /** + * The language of the book + *

+ *

+	 * CONSTRAINT fk_t_book_language_id
+	 * FOREIGN KEY (LANGUAGE_ID)
+	 * REFERENCES test.t_language (ID)
+	 * 
+ */ + public void setLanguageId(org.jooq.test.mysql.generatedclasses.enums.TLanguage value) { + setValue(org.jooq.test.mysql.generatedclasses.tables.TBook.LANGUAGE_ID, value); + } + + /** + * The language of the book + *

+ *

+	 * CONSTRAINT fk_t_book_language_id
+	 * FOREIGN KEY (LANGUAGE_ID)
+	 * REFERENCES test.t_language (ID)
+	 * 
+ */ + public org.jooq.test.mysql.generatedclasses.enums.TLanguage getLanguageId() { + return getValue(org.jooq.test.mysql.generatedclasses.tables.TBook.LANGUAGE_ID); + } + + /** + * Some textual content of the book + */ + public void setContentText(java.lang.String value) { + setValue(org.jooq.test.mysql.generatedclasses.tables.TBook.CONTENT_TEXT, value); + } + + /** + * Some textual content of the book + */ + public java.lang.String getContentText() { + return getValue(org.jooq.test.mysql.generatedclasses.tables.TBook.CONTENT_TEXT); + } + + /** + * Some binary content of the book + */ + public void setContentPdf(byte[] value) { + setValue(org.jooq.test.mysql.generatedclasses.tables.TBook.CONTENT_PDF, value); + } + + /** + * Some binary content of the book + */ + public byte[] getContentPdf() { + return getValue(org.jooq.test.mysql.generatedclasses.tables.TBook.CONTENT_PDF); + } + + /** + * The book's stock status + */ + public void setStatus(org.jooq.test.mysql.generatedclasses.enums.TBookStatus value) { + setValue(org.jooq.test.mysql.generatedclasses.tables.TBook.STATUS, value); + } + + /** + * The book's stock status + */ + public org.jooq.test.mysql.generatedclasses.enums.TBookStatus getStatus() { + return getValue(org.jooq.test.mysql.generatedclasses.tables.TBook.STATUS); + } + + /** + * Create a detached TBookRecord + */ + public TBookRecord() { + super(org.jooq.test.mysql.generatedclasses.tables.TBook.T_BOOK); + } +} diff --git a/jOOQ-test/src/org/jooq/test/mysql/generatedclasses/tables/records/TBookStoreRecord.java b/jOOQ-test/src/org/jooq/test/mysql/generatedclasses/tables/records/TBookStoreRecord.java new file mode 100644 index 00000000000..016f8df1f14 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/mysql/generatedclasses/tables/records/TBookStoreRecord.java @@ -0,0 +1,45 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.mysql.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + * + * A book store + */ +public class TBookStoreRecord extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = 1823354545; + + /** + * The books store name + */ + public void setName(java.lang.String value) { + setValue(org.jooq.test.mysql.generatedclasses.tables.TBookStore.NAME, value); + } + + /** + * The books store name + */ + public java.lang.String getName() { + return getValue(org.jooq.test.mysql.generatedclasses.tables.TBookStore.NAME); + } + + /** + * The books store name + */ + public java.util.List fetchTBookToBookStoreList() { + return create() + .selectFrom(org.jooq.test.mysql.generatedclasses.tables.TBookToBookStore.T_BOOK_TO_BOOK_STORE) + .where(org.jooq.test.mysql.generatedclasses.tables.TBookToBookStore.BOOK_STORE_NAME.equal(getValue(org.jooq.test.mysql.generatedclasses.tables.TBookStore.NAME))) + .fetch(); + } + + /** + * Create a detached TBookStoreRecord + */ + public TBookStoreRecord() { + super(org.jooq.test.mysql.generatedclasses.tables.TBookStore.T_BOOK_STORE); + } +} diff --git a/jOOQ-test/src/org/jooq/test/mysql/generatedclasses/tables/records/TBookToBookStoreRecord.java b/jOOQ-test/src/org/jooq/test/mysql/generatedclasses/tables/records/TBookToBookStoreRecord.java new file mode 100644 index 00000000000..2ecbab6ceac --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/mysql/generatedclasses/tables/records/TBookToBookStoreRecord.java @@ -0,0 +1,131 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.mysql.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + * + * An m:n relation between books and book stores + */ +public class TBookToBookStoreRecord extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = 1485041457; + + /** + * The book store name + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT fk_b2bs_bs_name
+	 * FOREIGN KEY (book_store_name)
+	 * REFERENCES test.t_book_store (name)
+	 * 
+ */ + public void setBookStoreName(java.lang.String value) { + setValue(org.jooq.test.mysql.generatedclasses.tables.TBookToBookStore.BOOK_STORE_NAME, value); + } + + /** + * The book store name + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT fk_b2bs_bs_name
+	 * FOREIGN KEY (book_store_name)
+	 * REFERENCES test.t_book_store (name)
+	 * 
+ */ + public java.lang.String getBookStoreName() { + return getValue(org.jooq.test.mysql.generatedclasses.tables.TBookToBookStore.BOOK_STORE_NAME); + } + + /** + * The book store name + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT fk_b2bs_bs_name
+	 * FOREIGN KEY (book_store_name)
+	 * REFERENCES test.t_book_store (name)
+	 * 
+ */ + public org.jooq.test.mysql.generatedclasses.tables.records.TBookStoreRecord fetchTBookStore() { + return create() + .selectFrom(org.jooq.test.mysql.generatedclasses.tables.TBookStore.T_BOOK_STORE) + .where(org.jooq.test.mysql.generatedclasses.tables.TBookStore.NAME.equal(getValue(org.jooq.test.mysql.generatedclasses.tables.TBookToBookStore.BOOK_STORE_NAME))) + .fetchOne(); + } + + /** + * The book ID + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT fk_b2bs_b_id
+	 * FOREIGN KEY (book_id)
+	 * REFERENCES test.t_book (ID)
+	 * 
+ */ + public void setBookId(java.lang.Integer value) { + setValue(org.jooq.test.mysql.generatedclasses.tables.TBookToBookStore.BOOK_ID, value); + } + + /** + * The book ID + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT fk_b2bs_b_id
+	 * FOREIGN KEY (book_id)
+	 * REFERENCES test.t_book (ID)
+	 * 
+ */ + public java.lang.Integer getBookId() { + return getValue(org.jooq.test.mysql.generatedclasses.tables.TBookToBookStore.BOOK_ID); + } + + /** + * The book ID + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT fk_b2bs_b_id
+	 * FOREIGN KEY (book_id)
+	 * REFERENCES test.t_book (ID)
+	 * 
+ */ + public org.jooq.test.mysql.generatedclasses.tables.records.TBookRecord fetchTBook() { + return create() + .selectFrom(org.jooq.test.mysql.generatedclasses.tables.TBook.T_BOOK) + .where(org.jooq.test.mysql.generatedclasses.tables.TBook.ID.equal(getValue(org.jooq.test.mysql.generatedclasses.tables.TBookToBookStore.BOOK_ID))) + .fetchOne(); + } + + /** + * The number of books on stock + */ + public void setStock(java.lang.Integer value) { + setValue(org.jooq.test.mysql.generatedclasses.tables.TBookToBookStore.STOCK, value); + } + + /** + * The number of books on stock + */ + public java.lang.Integer getStock() { + return getValue(org.jooq.test.mysql.generatedclasses.tables.TBookToBookStore.STOCK); + } + + /** + * Create a detached TBookToBookStoreRecord + */ + public TBookToBookStoreRecord() { + super(org.jooq.test.mysql.generatedclasses.tables.TBookToBookStore.T_BOOK_TO_BOOK_STORE); + } +} diff --git a/jOOQ-test/src/org/jooq/test/mysql/generatedclasses/tables/records/TBooleansRecord.java b/jOOQ-test/src/org/jooq/test/mysql/generatedclasses/tables/records/TBooleansRecord.java new file mode 100644 index 00000000000..e4e3bad6b1d --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/mysql/generatedclasses/tables/records/TBooleansRecord.java @@ -0,0 +1,177 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.mysql.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + */ +public class TBooleansRecord extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = 875657114; + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setId(java.lang.Integer value) { + setValue(org.jooq.test.mysql.generatedclasses.tables.TBooleans.ID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.lang.Integer getId() { + return getValue(org.jooq.test.mysql.generatedclasses.tables.TBooleans.ID); + } + + /** + * An uncommented item + */ + public void setOneZero(org.jooq.test._.converters.Boolean_10 value) { + setValue(org.jooq.test.mysql.generatedclasses.tables.TBooleans.ONE_ZERO, value); + } + + /** + * An uncommented item + */ + public org.jooq.test._.converters.Boolean_10 getOneZero() { + return getValue(org.jooq.test.mysql.generatedclasses.tables.TBooleans.ONE_ZERO); + } + + /** + * An uncommented item + */ + public void setTrueFalseLc(org.jooq.test._.converters.Boolean_TF_LC value) { + setValue(org.jooq.test.mysql.generatedclasses.tables.TBooleans.TRUE_FALSE_LC, value); + } + + /** + * An uncommented item + */ + public org.jooq.test._.converters.Boolean_TF_LC getTrueFalseLc() { + return getValue(org.jooq.test.mysql.generatedclasses.tables.TBooleans.TRUE_FALSE_LC); + } + + /** + * An uncommented item + */ + public void setTrueFalseUc(org.jooq.test._.converters.Boolean_TF_UC value) { + setValue(org.jooq.test.mysql.generatedclasses.tables.TBooleans.TRUE_FALSE_UC, value); + } + + /** + * An uncommented item + */ + public org.jooq.test._.converters.Boolean_TF_UC getTrueFalseUc() { + return getValue(org.jooq.test.mysql.generatedclasses.tables.TBooleans.TRUE_FALSE_UC); + } + + /** + * An uncommented item + */ + public void setYesNoLc(org.jooq.test._.converters.Boolean_YES_NO_LC value) { + setValue(org.jooq.test.mysql.generatedclasses.tables.TBooleans.YES_NO_LC, value); + } + + /** + * An uncommented item + */ + public org.jooq.test._.converters.Boolean_YES_NO_LC getYesNoLc() { + return getValue(org.jooq.test.mysql.generatedclasses.tables.TBooleans.YES_NO_LC); + } + + /** + * An uncommented item + */ + public void setYesNoUc(org.jooq.test._.converters.Boolean_YES_NO_UC value) { + setValue(org.jooq.test.mysql.generatedclasses.tables.TBooleans.YES_NO_UC, value); + } + + /** + * An uncommented item + */ + public org.jooq.test._.converters.Boolean_YES_NO_UC getYesNoUc() { + return getValue(org.jooq.test.mysql.generatedclasses.tables.TBooleans.YES_NO_UC); + } + + /** + * An uncommented item + */ + public void setYNLc(org.jooq.test._.converters.Boolean_YN_LC value) { + setValue(org.jooq.test.mysql.generatedclasses.tables.TBooleans.Y_N_LC, value); + } + + /** + * An uncommented item + */ + public org.jooq.test._.converters.Boolean_YN_LC getYNLc() { + return getValue(org.jooq.test.mysql.generatedclasses.tables.TBooleans.Y_N_LC); + } + + /** + * An uncommented item + */ + public void setYNUc(org.jooq.test._.converters.Boolean_YN_UC value) { + setValue(org.jooq.test.mysql.generatedclasses.tables.TBooleans.Y_N_UC, value); + } + + /** + * An uncommented item + */ + public org.jooq.test._.converters.Boolean_YN_UC getYNUc() { + return getValue(org.jooq.test.mysql.generatedclasses.tables.TBooleans.Y_N_UC); + } + + /** + * An uncommented item + */ + public void setVcBoolean(java.lang.Boolean value) { + setValue(org.jooq.test.mysql.generatedclasses.tables.TBooleans.VC_BOOLEAN, value); + } + + /** + * An uncommented item + */ + public java.lang.Boolean getVcBoolean() { + return getValue(org.jooq.test.mysql.generatedclasses.tables.TBooleans.VC_BOOLEAN); + } + + /** + * An uncommented item + */ + public void setCBoolean(java.lang.Boolean value) { + setValue(org.jooq.test.mysql.generatedclasses.tables.TBooleans.C_BOOLEAN, value); + } + + /** + * An uncommented item + */ + public java.lang.Boolean getCBoolean() { + return getValue(org.jooq.test.mysql.generatedclasses.tables.TBooleans.C_BOOLEAN); + } + + /** + * An uncommented item + */ + public void setNBoolean(java.lang.Boolean value) { + setValue(org.jooq.test.mysql.generatedclasses.tables.TBooleans.N_BOOLEAN, value); + } + + /** + * An uncommented item + */ + public java.lang.Boolean getNBoolean() { + return getValue(org.jooq.test.mysql.generatedclasses.tables.TBooleans.N_BOOLEAN); + } + + /** + * Create a detached TBooleansRecord + */ + public TBooleansRecord() { + super(org.jooq.test.mysql.generatedclasses.tables.TBooleans.T_BOOLEANS); + } +} diff --git a/jOOQ-test/src/org/jooq/test/mysql/generatedclasses/tables/records/TDatesRecord.java b/jOOQ-test/src/org/jooq/test/mysql/generatedclasses/tables/records/TDatesRecord.java new file mode 100644 index 00000000000..a02cfaa48bb --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/mysql/generatedclasses/tables/records/TDatesRecord.java @@ -0,0 +1,107 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.mysql.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + */ +public class TDatesRecord extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = 2018007890; + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setId(java.lang.Integer value) { + setValue(org.jooq.test.mysql.generatedclasses.tables.TDates.ID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.lang.Integer getId() { + return getValue(org.jooq.test.mysql.generatedclasses.tables.TDates.ID); + } + + /** + * An uncommented item + */ + public void setD(java.sql.Date value) { + setValue(org.jooq.test.mysql.generatedclasses.tables.TDates.D, value); + } + + /** + * An uncommented item + */ + public java.sql.Date getD() { + return getValue(org.jooq.test.mysql.generatedclasses.tables.TDates.D); + } + + /** + * An uncommented item + */ + public void setT(java.sql.Time value) { + setValue(org.jooq.test.mysql.generatedclasses.tables.TDates.T, value); + } + + /** + * An uncommented item + */ + public java.sql.Time getT() { + return getValue(org.jooq.test.mysql.generatedclasses.tables.TDates.T); + } + + /** + * An uncommented item + */ + public void setTs(java.sql.Timestamp value) { + setValue(org.jooq.test.mysql.generatedclasses.tables.TDates.TS, value); + } + + /** + * An uncommented item + */ + public java.sql.Timestamp getTs() { + return getValue(org.jooq.test.mysql.generatedclasses.tables.TDates.TS); + } + + /** + * An uncommented item + */ + public void setDInt(java.lang.Integer value) { + setValue(org.jooq.test.mysql.generatedclasses.tables.TDates.D_INT, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getDInt() { + return getValue(org.jooq.test.mysql.generatedclasses.tables.TDates.D_INT); + } + + /** + * An uncommented item + */ + public void setTsBigint(java.lang.Long value) { + setValue(org.jooq.test.mysql.generatedclasses.tables.TDates.TS_BIGINT, value); + } + + /** + * An uncommented item + */ + public java.lang.Long getTsBigint() { + return getValue(org.jooq.test.mysql.generatedclasses.tables.TDates.TS_BIGINT); + } + + /** + * Create a detached TDatesRecord + */ + public TDatesRecord() { + super(org.jooq.test.mysql.generatedclasses.tables.TDates.T_DATES); + } +} diff --git a/jOOQ-test/src/org/jooq/test/mysql/generatedclasses/tables/records/TIdentityPkRecord.java b/jOOQ-test/src/org/jooq/test/mysql/generatedclasses/tables/records/TIdentityPkRecord.java new file mode 100644 index 00000000000..34e2f39a30a --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/mysql/generatedclasses/tables/records/TIdentityPkRecord.java @@ -0,0 +1,51 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.mysql.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + */ +public class TIdentityPkRecord extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = -1226121977; + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setId(java.lang.Integer value) { + setValue(org.jooq.test.mysql.generatedclasses.tables.TIdentityPk.ID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.lang.Integer getId() { + return getValue(org.jooq.test.mysql.generatedclasses.tables.TIdentityPk.ID); + } + + /** + * An uncommented item + */ + public void setVal(java.lang.Integer value) { + setValue(org.jooq.test.mysql.generatedclasses.tables.TIdentityPk.VAL, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getVal() { + return getValue(org.jooq.test.mysql.generatedclasses.tables.TIdentityPk.VAL); + } + + /** + * Create a detached TIdentityPkRecord + */ + public TIdentityPkRecord() { + super(org.jooq.test.mysql.generatedclasses.tables.TIdentityPk.T_IDENTITY_PK); + } +} diff --git a/jOOQ-test/src/org/jooq/test/mysql/generatedclasses/tables/records/TTriggersRecord.java b/jOOQ-test/src/org/jooq/test/mysql/generatedclasses/tables/records/TTriggersRecord.java new file mode 100644 index 00000000000..4bdc6e1db35 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/mysql/generatedclasses/tables/records/TTriggersRecord.java @@ -0,0 +1,65 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.mysql.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + */ +public class TTriggersRecord extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = -1842903606; + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setIdGenerated(java.lang.Integer value) { + setValue(org.jooq.test.mysql.generatedclasses.tables.TTriggers.ID_GENERATED, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.lang.Integer getIdGenerated() { + return getValue(org.jooq.test.mysql.generatedclasses.tables.TTriggers.ID_GENERATED); + } + + /** + * An uncommented item + */ + public void setId(java.lang.Integer value) { + setValue(org.jooq.test.mysql.generatedclasses.tables.TTriggers.ID, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getId() { + return getValue(org.jooq.test.mysql.generatedclasses.tables.TTriggers.ID); + } + + /** + * An uncommented item + */ + public void setCounter(java.lang.Integer value) { + setValue(org.jooq.test.mysql.generatedclasses.tables.TTriggers.COUNTER, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getCounter() { + return getValue(org.jooq.test.mysql.generatedclasses.tables.TTriggers.COUNTER); + } + + /** + * Create a detached TTriggersRecord + */ + public TTriggersRecord() { + super(org.jooq.test.mysql.generatedclasses.tables.TTriggers.T_TRIGGERS); + } +} diff --git a/jOOQ-test/src/org/jooq/test/mysql/generatedclasses/tables/records/TUnsignedRecord.java b/jOOQ-test/src/org/jooq/test/mysql/generatedclasses/tables/records/TUnsignedRecord.java new file mode 100644 index 00000000000..d1077c7992e --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/mysql/generatedclasses/tables/records/TUnsignedRecord.java @@ -0,0 +1,75 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.mysql.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + */ +public class TUnsignedRecord extends org.jooq.impl.TableRecordImpl { + + private static final long serialVersionUID = -2060572600; + + /** + * An uncommented item + */ + public void setUByte(org.jooq.tools.unsigned.UByte value) { + setValue(org.jooq.test.mysql.generatedclasses.tables.TUnsigned.U_BYTE, value); + } + + /** + * An uncommented item + */ + public org.jooq.tools.unsigned.UByte getUByte() { + return getValue(org.jooq.test.mysql.generatedclasses.tables.TUnsigned.U_BYTE); + } + + /** + * An uncommented item + */ + public void setUShort(org.jooq.tools.unsigned.UShort value) { + setValue(org.jooq.test.mysql.generatedclasses.tables.TUnsigned.U_SHORT, value); + } + + /** + * An uncommented item + */ + public org.jooq.tools.unsigned.UShort getUShort() { + return getValue(org.jooq.test.mysql.generatedclasses.tables.TUnsigned.U_SHORT); + } + + /** + * An uncommented item + */ + public void setUInt(org.jooq.tools.unsigned.UInteger value) { + setValue(org.jooq.test.mysql.generatedclasses.tables.TUnsigned.U_INT, value); + } + + /** + * An uncommented item + */ + public org.jooq.tools.unsigned.UInteger getUInt() { + return getValue(org.jooq.test.mysql.generatedclasses.tables.TUnsigned.U_INT); + } + + /** + * An uncommented item + */ + public void setULong(org.jooq.tools.unsigned.ULong value) { + setValue(org.jooq.test.mysql.generatedclasses.tables.TUnsigned.U_LONG, value); + } + + /** + * An uncommented item + */ + public org.jooq.tools.unsigned.ULong getULong() { + return getValue(org.jooq.test.mysql.generatedclasses.tables.TUnsigned.U_LONG); + } + + /** + * Create a detached TUnsignedRecord + */ + public TUnsignedRecord() { + super(org.jooq.test.mysql.generatedclasses.tables.TUnsigned.T_UNSIGNED); + } +} diff --git a/jOOQ-test/src/org/jooq/test/mysql/generatedclasses/tables/records/T_639NumbersTableRecord.java b/jOOQ-test/src/org/jooq/test/mysql/generatedclasses/tables/records/T_639NumbersTableRecord.java new file mode 100644 index 00000000000..d391181fda2 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/mysql/generatedclasses/tables/records/T_639NumbersTableRecord.java @@ -0,0 +1,205 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.mysql.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + */ +public class T_639NumbersTableRecord extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = -1119956127; + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setId(java.lang.Integer value) { + setValue(org.jooq.test.mysql.generatedclasses.tables.T_639NumbersTable.ID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.lang.Integer getId() { + return getValue(org.jooq.test.mysql.generatedclasses.tables.T_639NumbersTable.ID); + } + + /** + * An uncommented item + */ + public void setByte(java.lang.Byte value) { + setValue(org.jooq.test.mysql.generatedclasses.tables.T_639NumbersTable.BYTE, value); + } + + /** + * An uncommented item + */ + public java.lang.Byte getByte() { + return getValue(org.jooq.test.mysql.generatedclasses.tables.T_639NumbersTable.BYTE); + } + + /** + * An uncommented item + */ + public void setShort(java.lang.Short value) { + setValue(org.jooq.test.mysql.generatedclasses.tables.T_639NumbersTable.SHORT, value); + } + + /** + * An uncommented item + */ + public java.lang.Short getShort() { + return getValue(org.jooq.test.mysql.generatedclasses.tables.T_639NumbersTable.SHORT); + } + + /** + * An uncommented item + */ + public void setInteger(java.lang.Integer value) { + setValue(org.jooq.test.mysql.generatedclasses.tables.T_639NumbersTable.INTEGER, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getInteger() { + return getValue(org.jooq.test.mysql.generatedclasses.tables.T_639NumbersTable.INTEGER); + } + + /** + * An uncommented item + */ + public void setLong(java.lang.Long value) { + setValue(org.jooq.test.mysql.generatedclasses.tables.T_639NumbersTable.LONG, value); + } + + /** + * An uncommented item + */ + public java.lang.Long getLong() { + return getValue(org.jooq.test.mysql.generatedclasses.tables.T_639NumbersTable.LONG); + } + + /** + * An uncommented item + */ + public void setByteDecimal(java.lang.Byte value) { + setValue(org.jooq.test.mysql.generatedclasses.tables.T_639NumbersTable.BYTE_DECIMAL, value); + } + + /** + * An uncommented item + */ + public java.lang.Byte getByteDecimal() { + return getValue(org.jooq.test.mysql.generatedclasses.tables.T_639NumbersTable.BYTE_DECIMAL); + } + + /** + * An uncommented item + */ + public void setShortDecimal(java.lang.Short value) { + setValue(org.jooq.test.mysql.generatedclasses.tables.T_639NumbersTable.SHORT_DECIMAL, value); + } + + /** + * An uncommented item + */ + public java.lang.Short getShortDecimal() { + return getValue(org.jooq.test.mysql.generatedclasses.tables.T_639NumbersTable.SHORT_DECIMAL); + } + + /** + * An uncommented item + */ + public void setIntegerDecimal(java.lang.Integer value) { + setValue(org.jooq.test.mysql.generatedclasses.tables.T_639NumbersTable.INTEGER_DECIMAL, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getIntegerDecimal() { + return getValue(org.jooq.test.mysql.generatedclasses.tables.T_639NumbersTable.INTEGER_DECIMAL); + } + + /** + * An uncommented item + */ + public void setLongDecimal(java.lang.Long value) { + setValue(org.jooq.test.mysql.generatedclasses.tables.T_639NumbersTable.LONG_DECIMAL, value); + } + + /** + * An uncommented item + */ + public java.lang.Long getLongDecimal() { + return getValue(org.jooq.test.mysql.generatedclasses.tables.T_639NumbersTable.LONG_DECIMAL); + } + + /** + * An uncommented item + */ + public void setBigInteger(java.math.BigInteger value) { + setValue(org.jooq.test.mysql.generatedclasses.tables.T_639NumbersTable.BIG_INTEGER, value); + } + + /** + * An uncommented item + */ + public java.math.BigInteger getBigInteger() { + return getValue(org.jooq.test.mysql.generatedclasses.tables.T_639NumbersTable.BIG_INTEGER); + } + + /** + * An uncommented item + */ + public void setBigDecimal(java.math.BigDecimal value) { + setValue(org.jooq.test.mysql.generatedclasses.tables.T_639NumbersTable.BIG_DECIMAL, value); + } + + /** + * An uncommented item + */ + public java.math.BigDecimal getBigDecimal() { + return getValue(org.jooq.test.mysql.generatedclasses.tables.T_639NumbersTable.BIG_DECIMAL); + } + + /** + * An uncommented item + */ + public void setFloat(java.lang.Double value) { + setValue(org.jooq.test.mysql.generatedclasses.tables.T_639NumbersTable.FLOAT, value); + } + + /** + * An uncommented item + */ + public java.lang.Double getFloat() { + return getValue(org.jooq.test.mysql.generatedclasses.tables.T_639NumbersTable.FLOAT); + } + + /** + * An uncommented item + */ + public void setDouble(java.lang.Double value) { + setValue(org.jooq.test.mysql.generatedclasses.tables.T_639NumbersTable.DOUBLE, value); + } + + /** + * An uncommented item + */ + public java.lang.Double getDouble() { + return getValue(org.jooq.test.mysql.generatedclasses.tables.T_639NumbersTable.DOUBLE); + } + + /** + * Create a detached T_639NumbersTableRecord + */ + public T_639NumbersTableRecord() { + super(org.jooq.test.mysql.generatedclasses.tables.T_639NumbersTable.T_639_NUMBERS_TABLE); + } +} diff --git a/jOOQ-test/src/org/jooq/test/mysql/generatedclasses/tables/records/T_658RefRecord.java b/jOOQ-test/src/org/jooq/test/mysql/generatedclasses/tables/records/T_658RefRecord.java new file mode 100644 index 00000000000..b2617411cad --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/mysql/generatedclasses/tables/records/T_658RefRecord.java @@ -0,0 +1,175 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.mysql.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + */ +public class T_658RefRecord extends org.jooq.impl.TableRecordImpl { + + private static final long serialVersionUID = 999539532; + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_t_658_11
+	 * FOREIGN KEY (ref_11)
+	 * REFERENCES test.t_658_11 (id)
+	 * 
+ */ + public void setRef_11(org.jooq.test.mysql.generatedclasses.enums.T_658_11 value) { + setValue(org.jooq.test.mysql.generatedclasses.tables.T_658Ref.REF_11, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_t_658_11
+	 * FOREIGN KEY (ref_11)
+	 * REFERENCES test.t_658_11 (id)
+	 * 
+ */ + public org.jooq.test.mysql.generatedclasses.enums.T_658_11 getRef_11() { + return getValue(org.jooq.test.mysql.generatedclasses.tables.T_658Ref.REF_11); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_t_658_21
+	 * FOREIGN KEY (ref_21)
+	 * REFERENCES test.t_658_21 (id)
+	 * 
+ */ + public void setRef_21(org.jooq.test.mysql.generatedclasses.enums.T_658_21 value) { + setValue(org.jooq.test.mysql.generatedclasses.tables.T_658Ref.REF_21, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_t_658_21
+	 * FOREIGN KEY (ref_21)
+	 * REFERENCES test.t_658_21 (id)
+	 * 
+ */ + public org.jooq.test.mysql.generatedclasses.enums.T_658_21 getRef_21() { + return getValue(org.jooq.test.mysql.generatedclasses.tables.T_658Ref.REF_21); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_t_658_31
+	 * FOREIGN KEY (ref_31)
+	 * REFERENCES test.t_658_31 (id)
+	 * 
+ */ + public void setRef_31(org.jooq.test.mysql.generatedclasses.enums.T_658_31 value) { + setValue(org.jooq.test.mysql.generatedclasses.tables.T_658Ref.REF_31, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_t_658_31
+	 * FOREIGN KEY (ref_31)
+	 * REFERENCES test.t_658_31 (id)
+	 * 
+ */ + public org.jooq.test.mysql.generatedclasses.enums.T_658_31 getRef_31() { + return getValue(org.jooq.test.mysql.generatedclasses.tables.T_658Ref.REF_31); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_t_658_12
+	 * FOREIGN KEY (ref_12)
+	 * REFERENCES test.t_658_12 (id)
+	 * 
+ */ + public void setRef_12(org.jooq.test.mysql.generatedclasses.enums.T_658_12 value) { + setValue(org.jooq.test.mysql.generatedclasses.tables.T_658Ref.REF_12, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_t_658_12
+	 * FOREIGN KEY (ref_12)
+	 * REFERENCES test.t_658_12 (id)
+	 * 
+ */ + public org.jooq.test.mysql.generatedclasses.enums.T_658_12 getRef_12() { + return getValue(org.jooq.test.mysql.generatedclasses.tables.T_658Ref.REF_12); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_t_658_22
+	 * FOREIGN KEY (ref_22)
+	 * REFERENCES test.t_658_22 (id)
+	 * 
+ */ + public void setRef_22(org.jooq.test.mysql.generatedclasses.enums.T_658_22 value) { + setValue(org.jooq.test.mysql.generatedclasses.tables.T_658Ref.REF_22, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_t_658_22
+	 * FOREIGN KEY (ref_22)
+	 * REFERENCES test.t_658_22 (id)
+	 * 
+ */ + public org.jooq.test.mysql.generatedclasses.enums.T_658_22 getRef_22() { + return getValue(org.jooq.test.mysql.generatedclasses.tables.T_658Ref.REF_22); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_t_658_32
+	 * FOREIGN KEY (ref_32)
+	 * REFERENCES test.t_658_32 (id)
+	 * 
+ */ + public void setRef_32(org.jooq.test.mysql.generatedclasses.enums.T_658_32 value) { + setValue(org.jooq.test.mysql.generatedclasses.tables.T_658Ref.REF_32, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_t_658_32
+	 * FOREIGN KEY (ref_32)
+	 * REFERENCES test.t_658_32 (id)
+	 * 
+ */ + public org.jooq.test.mysql.generatedclasses.enums.T_658_32 getRef_32() { + return getValue(org.jooq.test.mysql.generatedclasses.tables.T_658Ref.REF_32); + } + + /** + * Create a detached T_658RefRecord + */ + public T_658RefRecord() { + super(org.jooq.test.mysql.generatedclasses.tables.T_658Ref.T_658_REF); + } +} diff --git a/jOOQ-test/src/org/jooq/test/mysql/generatedclasses/tables/records/T_725LobTestRecord.java b/jOOQ-test/src/org/jooq/test/mysql/generatedclasses/tables/records/T_725LobTestRecord.java new file mode 100644 index 00000000000..c3fd6ed0f69 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/mysql/generatedclasses/tables/records/T_725LobTestRecord.java @@ -0,0 +1,51 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.mysql.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + */ +public class T_725LobTestRecord extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = 739768041; + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setId(java.lang.Integer value) { + setValue(org.jooq.test.mysql.generatedclasses.tables.T_725LobTest.ID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.lang.Integer getId() { + return getValue(org.jooq.test.mysql.generatedclasses.tables.T_725LobTest.ID); + } + + /** + * An uncommented item + */ + public void setLob(byte[] value) { + setValue(org.jooq.test.mysql.generatedclasses.tables.T_725LobTest.LOB, value); + } + + /** + * An uncommented item + */ + public byte[] getLob() { + return getValue(org.jooq.test.mysql.generatedclasses.tables.T_725LobTest.LOB); + } + + /** + * Create a detached T_725LobTestRecord + */ + public T_725LobTestRecord() { + super(org.jooq.test.mysql.generatedclasses.tables.T_725LobTest.T_725_LOB_TEST); + } +} diff --git a/jOOQ-test/src/org/jooq/test/mysql/generatedclasses/tables/records/T_785Record.java b/jOOQ-test/src/org/jooq/test/mysql/generatedclasses/tables/records/T_785Record.java new file mode 100644 index 00000000000..d011cabc282 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/mysql/generatedclasses/tables/records/T_785Record.java @@ -0,0 +1,61 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.mysql.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + */ +public class T_785Record extends org.jooq.impl.TableRecordImpl { + + private static final long serialVersionUID = -2080403427; + + /** + * An uncommented item + */ + public void setId(java.lang.Integer value) { + setValue(org.jooq.test.mysql.generatedclasses.tables.T_785.ID, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getId() { + return getValue(org.jooq.test.mysql.generatedclasses.tables.T_785.ID); + } + + /** + * An uncommented item + */ + public void setName(java.lang.String value) { + setValue(org.jooq.test.mysql.generatedclasses.tables.T_785.NAME, value); + } + + /** + * An uncommented item + */ + public java.lang.String getName() { + return getValue(org.jooq.test.mysql.generatedclasses.tables.T_785.NAME); + } + + /** + * An uncommented item + */ + public void setValue(java.lang.String value) { + setValue(org.jooq.test.mysql.generatedclasses.tables.T_785.VALUE, value); + } + + /** + * An uncommented item + */ + public java.lang.String getValue() { + return getValue(org.jooq.test.mysql.generatedclasses.tables.T_785.VALUE); + } + + /** + * Create a detached T_785Record + */ + public T_785Record() { + super(org.jooq.test.mysql.generatedclasses.tables.T_785.T_785); + } +} diff --git a/jOOQ-test/src/org/jooq/test/mysql/generatedclasses/tables/records/T_959Record.java b/jOOQ-test/src/org/jooq/test/mysql/generatedclasses/tables/records/T_959Record.java new file mode 100644 index 00000000000..c04070bc32a --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/mysql/generatedclasses/tables/records/T_959Record.java @@ -0,0 +1,33 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.mysql.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + */ +public class T_959Record extends org.jooq.impl.TableRecordImpl { + + private static final long serialVersionUID = 1602019867; + + /** + * An uncommented item + */ + public void setJavaKeywords(org.jooq.test.mysql.generatedclasses.enums.T_959JavaKeywords value) { + setValue(org.jooq.test.mysql.generatedclasses.tables.T_959.JAVA_KEYWORDS, value); + } + + /** + * An uncommented item + */ + public org.jooq.test.mysql.generatedclasses.enums.T_959JavaKeywords getJavaKeywords() { + return getValue(org.jooq.test.mysql.generatedclasses.tables.T_959.JAVA_KEYWORDS); + } + + /** + * Create a detached T_959Record + */ + public T_959Record() { + super(org.jooq.test.mysql.generatedclasses.tables.T_959.T_959); + } +} diff --git a/jOOQ-test/src/org/jooq/test/mysql/generatedclasses/tables/records/VAuthorRecord.java b/jOOQ-test/src/org/jooq/test/mysql/generatedclasses/tables/records/VAuthorRecord.java new file mode 100644 index 00000000000..eb253b5ebb7 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/mysql/generatedclasses/tables/records/VAuthorRecord.java @@ -0,0 +1,105 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.mysql.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + * + * VIEW + */ +public class VAuthorRecord extends org.jooq.impl.TableRecordImpl { + + private static final long serialVersionUID = -79968355; + + /** + * The author ID + */ + public void setId(java.lang.Integer value) { + setValue(org.jooq.test.mysql.generatedclasses.tables.VAuthor.ID, value); + } + + /** + * The author ID + */ + public java.lang.Integer getId() { + return getValue(org.jooq.test.mysql.generatedclasses.tables.VAuthor.ID); + } + + /** + * The author's first name + */ + public void setFirstName(java.lang.String value) { + setValue(org.jooq.test.mysql.generatedclasses.tables.VAuthor.FIRST_NAME, value); + } + + /** + * The author's first name + */ + public java.lang.String getFirstName() { + return getValue(org.jooq.test.mysql.generatedclasses.tables.VAuthor.FIRST_NAME); + } + + /** + * The author's last name + */ + public void setLastName(java.lang.String value) { + setValue(org.jooq.test.mysql.generatedclasses.tables.VAuthor.LAST_NAME, value); + } + + /** + * The author's last name + */ + public java.lang.String getLastName() { + return getValue(org.jooq.test.mysql.generatedclasses.tables.VAuthor.LAST_NAME); + } + + /** + * The author's date of birth + */ + public void setDateOfBirth(java.sql.Date value) { + setValue(org.jooq.test.mysql.generatedclasses.tables.VAuthor.DATE_OF_BIRTH, value); + } + + /** + * The author's date of birth + */ + public java.sql.Date getDateOfBirth() { + return getValue(org.jooq.test.mysql.generatedclasses.tables.VAuthor.DATE_OF_BIRTH); + } + + /** + * The author's year of birth + */ + public void setYearOfBirth(java.lang.Integer value) { + setValue(org.jooq.test.mysql.generatedclasses.tables.VAuthor.YEAR_OF_BIRTH, value); + } + + /** + * The author's year of birth + */ + public java.lang.Integer getYearOfBirth() { + return getValue(org.jooq.test.mysql.generatedclasses.tables.VAuthor.YEAR_OF_BIRTH); + } + + /** + * The author's address + */ + public void setAddress(java.lang.String value) { + setValue(org.jooq.test.mysql.generatedclasses.tables.VAuthor.ADDRESS, value); + } + + /** + * The author's address + */ + public java.lang.String getAddress() { + return getValue(org.jooq.test.mysql.generatedclasses.tables.VAuthor.ADDRESS); + } + + /** + * Create a detached VAuthorRecord + */ + public VAuthorRecord() { + super(org.jooq.test.mysql.generatedclasses.tables.VAuthor.V_AUTHOR); + } +} diff --git a/jOOQ-test/src/org/jooq/test/mysql/generatedclasses/tables/records/VBookRecord.java b/jOOQ-test/src/org/jooq/test/mysql/generatedclasses/tables/records/VBookRecord.java new file mode 100644 index 00000000000..76a99172f0d --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/mysql/generatedclasses/tables/records/VBookRecord.java @@ -0,0 +1,161 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.mysql.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + * + * VIEW + */ +public class VBookRecord extends org.jooq.impl.TableRecordImpl { + + private static final long serialVersionUID = -2034491329; + + /** + * The book ID + */ + public void setId(java.lang.Integer value) { + setValue(org.jooq.test.mysql.generatedclasses.tables.VBook.ID, value); + } + + /** + * The book ID + */ + public java.lang.Integer getId() { + return getValue(org.jooq.test.mysql.generatedclasses.tables.VBook.ID); + } + + /** + * The author ID in entity 'author' + */ + public void setAuthorId(java.lang.Integer value) { + setValue(org.jooq.test.mysql.generatedclasses.tables.VBook.AUTHOR_ID, value); + } + + /** + * The author ID in entity 'author' + */ + public java.lang.Integer getAuthorId() { + return getValue(org.jooq.test.mysql.generatedclasses.tables.VBook.AUTHOR_ID); + } + + /** + * An uncommented item + */ + public void setCoAuthorId(java.lang.Integer value) { + setValue(org.jooq.test.mysql.generatedclasses.tables.VBook.CO_AUTHOR_ID, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getCoAuthorId() { + return getValue(org.jooq.test.mysql.generatedclasses.tables.VBook.CO_AUTHOR_ID); + } + + /** + * Some more details about the book + */ + public void setDetailsId(java.lang.Integer value) { + setValue(org.jooq.test.mysql.generatedclasses.tables.VBook.DETAILS_ID, value); + } + + /** + * Some more details about the book + */ + public java.lang.Integer getDetailsId() { + return getValue(org.jooq.test.mysql.generatedclasses.tables.VBook.DETAILS_ID); + } + + /** + * The book's title + */ + public void setTitle(java.lang.String value) { + setValue(org.jooq.test.mysql.generatedclasses.tables.VBook.TITLE, value); + } + + /** + * The book's title + */ + public java.lang.String getTitle() { + return getValue(org.jooq.test.mysql.generatedclasses.tables.VBook.TITLE); + } + + /** + * The year the book was published in + */ + public void setPublishedIn(java.lang.Integer value) { + setValue(org.jooq.test.mysql.generatedclasses.tables.VBook.PUBLISHED_IN, value); + } + + /** + * The year the book was published in + */ + public java.lang.Integer getPublishedIn() { + return getValue(org.jooq.test.mysql.generatedclasses.tables.VBook.PUBLISHED_IN); + } + + /** + * The language of the book + */ + public void setLanguageId(java.lang.Integer value) { + setValue(org.jooq.test.mysql.generatedclasses.tables.VBook.LANGUAGE_ID, value); + } + + /** + * The language of the book + */ + public java.lang.Integer getLanguageId() { + return getValue(org.jooq.test.mysql.generatedclasses.tables.VBook.LANGUAGE_ID); + } + + /** + * Some textual content of the book + */ + public void setContentText(java.lang.String value) { + setValue(org.jooq.test.mysql.generatedclasses.tables.VBook.CONTENT_TEXT, value); + } + + /** + * Some textual content of the book + */ + public java.lang.String getContentText() { + return getValue(org.jooq.test.mysql.generatedclasses.tables.VBook.CONTENT_TEXT); + } + + /** + * Some binary content of the book + */ + public void setContentPdf(byte[] value) { + setValue(org.jooq.test.mysql.generatedclasses.tables.VBook.CONTENT_PDF, value); + } + + /** + * Some binary content of the book + */ + public byte[] getContentPdf() { + return getValue(org.jooq.test.mysql.generatedclasses.tables.VBook.CONTENT_PDF); + } + + /** + * The book's stock status + */ + public void setStatus(org.jooq.test.mysql.generatedclasses.enums.VBookStatus value) { + setValue(org.jooq.test.mysql.generatedclasses.tables.VBook.STATUS, value); + } + + /** + * The book's stock status + */ + public org.jooq.test.mysql.generatedclasses.enums.VBookStatus getStatus() { + return getValue(org.jooq.test.mysql.generatedclasses.tables.VBook.STATUS); + } + + /** + * Create a detached VBookRecord + */ + public VBookRecord() { + super(org.jooq.test.mysql.generatedclasses.tables.VBook.V_BOOK); + } +} diff --git a/jOOQ-test/src/org/jooq/test/mysql/generatedclasses/tables/records/VLibraryRecord.java b/jOOQ-test/src/org/jooq/test/mysql/generatedclasses/tables/records/VLibraryRecord.java new file mode 100644 index 00000000000..1f3de77bf6c --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/mysql/generatedclasses/tables/records/VLibraryRecord.java @@ -0,0 +1,49 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.mysql.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + * + * VIEW + */ +public class VLibraryRecord extends org.jooq.impl.TableRecordImpl { + + private static final long serialVersionUID = 1030836399; + + /** + * An uncommented item + */ + public void setAuthor(java.lang.String value) { + setValue(org.jooq.test.mysql.generatedclasses.tables.VLibrary.AUTHOR, value); + } + + /** + * An uncommented item + */ + public java.lang.String getAuthor() { + return getValue(org.jooq.test.mysql.generatedclasses.tables.VLibrary.AUTHOR); + } + + /** + * The book's title + */ + public void setTitle(java.lang.String value) { + setValue(org.jooq.test.mysql.generatedclasses.tables.VLibrary.TITLE, value); + } + + /** + * The book's title + */ + public java.lang.String getTitle() { + return getValue(org.jooq.test.mysql.generatedclasses.tables.VLibrary.TITLE); + } + + /** + * Create a detached VLibraryRecord + */ + public VLibraryRecord() { + super(org.jooq.test.mysql.generatedclasses.tables.VLibrary.V_LIBRARY); + } +} diff --git a/jOOQ-test/src/org/jooq/test/mysql/generatedclasses/tables/records/XTestCase_64_69Record.java b/jOOQ-test/src/org/jooq/test/mysql/generatedclasses/tables/records/XTestCase_64_69Record.java new file mode 100644 index 00000000000..9af17c8e016 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/mysql/generatedclasses/tables/records/XTestCase_64_69Record.java @@ -0,0 +1,77 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.mysql.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + * + * An unused table in the same schema. + */ +public class XTestCase_64_69Record extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = -1418131036; + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setId(java.lang.Integer value) { + setValue(org.jooq.test.mysql.generatedclasses.tables.XTestCase_64_69.ID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.lang.Integer getId() { + return getValue(org.jooq.test.mysql.generatedclasses.tables.XTestCase_64_69.ID); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.util.List fetchXTestCase_71List() { + return create() + .selectFrom(org.jooq.test.mysql.generatedclasses.tables.XTestCase_71.X_TEST_CASE_71) + .where(org.jooq.test.mysql.generatedclasses.tables.XTestCase_71.TEST_CASE_64_69_ID.equal(getValue(org.jooq.test.mysql.generatedclasses.tables.XTestCase_64_69.ID))) + .fetch(); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_x_test_case_64_69a
+	 * FOREIGN KEY (UNUSED_ID)
+	 * REFERENCES test.x_unused (ID, NAME)
+	 * 
+ */ + public void setUnusedId(java.lang.Integer value) { + setValue(org.jooq.test.mysql.generatedclasses.tables.XTestCase_64_69.UNUSED_ID, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_x_test_case_64_69a
+	 * FOREIGN KEY (UNUSED_ID)
+	 * REFERENCES test.x_unused (ID, NAME)
+	 * 
+ */ + public java.lang.Integer getUnusedId() { + return getValue(org.jooq.test.mysql.generatedclasses.tables.XTestCase_64_69.UNUSED_ID); + } + + /** + * Create a detached XTestCase_64_69Record + */ + public XTestCase_64_69Record() { + super(org.jooq.test.mysql.generatedclasses.tables.XTestCase_64_69.X_TEST_CASE_64_69); + } +} diff --git a/jOOQ-test/src/org/jooq/test/mysql/generatedclasses/tables/records/XTestCase_71Record.java b/jOOQ-test/src/org/jooq/test/mysql/generatedclasses/tables/records/XTestCase_71Record.java new file mode 100644 index 00000000000..915df490e54 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/mysql/generatedclasses/tables/records/XTestCase_71Record.java @@ -0,0 +1,81 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.mysql.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + * + * An unused table in the same schema. + */ +public class XTestCase_71Record extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = -18000200; + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setId(java.lang.Integer value) { + setValue(org.jooq.test.mysql.generatedclasses.tables.XTestCase_71.ID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.lang.Integer getId() { + return getValue(org.jooq.test.mysql.generatedclasses.tables.XTestCase_71.ID); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_x_test_case_71
+	 * FOREIGN KEY (TEST_CASE_64_69_ID)
+	 * REFERENCES test.x_test_case_64_69 (ID)
+	 * 
+ */ + public void setTestCase_64_69Id(java.lang.Integer value) { + setValue(org.jooq.test.mysql.generatedclasses.tables.XTestCase_71.TEST_CASE_64_69_ID, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_x_test_case_71
+	 * FOREIGN KEY (TEST_CASE_64_69_ID)
+	 * REFERENCES test.x_test_case_64_69 (ID)
+	 * 
+ */ + public java.lang.Integer getTestCase_64_69Id() { + return getValue(org.jooq.test.mysql.generatedclasses.tables.XTestCase_71.TEST_CASE_64_69_ID); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_x_test_case_71
+	 * FOREIGN KEY (TEST_CASE_64_69_ID)
+	 * REFERENCES test.x_test_case_64_69 (ID)
+	 * 
+ */ + public org.jooq.test.mysql.generatedclasses.tables.records.XTestCase_64_69Record fetchXTestCase_64_69() { + return create() + .selectFrom(org.jooq.test.mysql.generatedclasses.tables.XTestCase_64_69.X_TEST_CASE_64_69) + .where(org.jooq.test.mysql.generatedclasses.tables.XTestCase_64_69.ID.equal(getValue(org.jooq.test.mysql.generatedclasses.tables.XTestCase_71.TEST_CASE_64_69_ID))) + .fetchOne(); + } + + /** + * Create a detached XTestCase_71Record + */ + public XTestCase_71Record() { + super(org.jooq.test.mysql.generatedclasses.tables.XTestCase_71.X_TEST_CASE_71); + } +} diff --git a/jOOQ-test/src/org/jooq/test/mysql/generatedclasses/tables/records/XTestCase_85Record.java b/jOOQ-test/src/org/jooq/test/mysql/generatedclasses/tables/records/XTestCase_85Record.java new file mode 100644 index 00000000000..c83147408bb --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/mysql/generatedclasses/tables/records/XTestCase_85Record.java @@ -0,0 +1,108 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.mysql.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + * + * An unused table in the same schema. + */ +public class XTestCase_85Record extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = 2054947840; + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setId(java.lang.Integer value) { + setValue(org.jooq.test.mysql.generatedclasses.tables.XTestCase_85.ID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.lang.Integer getId() { + return getValue(org.jooq.test.mysql.generatedclasses.tables.XTestCase_85.ID); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_x_test_case_85
+	 * FOREIGN KEY (x_unused_id, x_unused_name)
+	 * REFERENCES test.x_unused (ID, NAME)
+	 * 
+ */ + public void setXUnusedId(java.lang.Integer value) { + setValue(org.jooq.test.mysql.generatedclasses.tables.XTestCase_85.X_UNUSED_ID, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_x_test_case_85
+	 * FOREIGN KEY (x_unused_id, x_unused_name)
+	 * REFERENCES test.x_unused (ID, NAME)
+	 * 
+ */ + public java.lang.Integer getXUnusedId() { + return getValue(org.jooq.test.mysql.generatedclasses.tables.XTestCase_85.X_UNUSED_ID); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_x_test_case_85
+	 * FOREIGN KEY (x_unused_id, x_unused_name)
+	 * REFERENCES test.x_unused (ID, NAME)
+	 * 
+ */ + public org.jooq.test.mysql.generatedclasses.tables.records.XUnusedRecord fetchXUnused() { + return create() + .selectFrom(org.jooq.test.mysql.generatedclasses.tables.XUnused.X_UNUSED) + .where(org.jooq.test.mysql.generatedclasses.tables.XUnused.ID.equal(getValue(org.jooq.test.mysql.generatedclasses.tables.XTestCase_85.X_UNUSED_ID))) + .and(org.jooq.test.mysql.generatedclasses.tables.XUnused.NAME.equal(getValue(org.jooq.test.mysql.generatedclasses.tables.XTestCase_85.X_UNUSED_NAME))) + .fetchOne(); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_x_test_case_85
+	 * FOREIGN KEY (x_unused_id, x_unused_name)
+	 * REFERENCES test.x_unused (ID, NAME)
+	 * 
+ */ + public void setXUnusedName(java.lang.String value) { + setValue(org.jooq.test.mysql.generatedclasses.tables.XTestCase_85.X_UNUSED_NAME, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_x_test_case_85
+	 * FOREIGN KEY (x_unused_id, x_unused_name)
+	 * REFERENCES test.x_unused (ID, NAME)
+	 * 
+ */ + public java.lang.String getXUnusedName() { + return getValue(org.jooq.test.mysql.generatedclasses.tables.XTestCase_85.X_UNUSED_NAME); + } + + /** + * Create a detached XTestCase_85Record + */ + public XTestCase_85Record() { + super(org.jooq.test.mysql.generatedclasses.tables.XTestCase_85.X_TEST_CASE_85); + } +} diff --git a/jOOQ-test/src/org/jooq/test/mysql/generatedclasses/tables/records/XUnusedRecord.java b/jOOQ-test/src/org/jooq/test/mysql/generatedclasses/tables/records/XUnusedRecord.java new file mode 100644 index 00000000000..fbdf9f82d76 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/mysql/generatedclasses/tables/records/XUnusedRecord.java @@ -0,0 +1,292 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.mysql.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + * + * An unused table in the same schema. + */ +public class XUnusedRecord extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = 1614127736; + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setId(java.lang.Integer value) { + setValue(org.jooq.test.mysql.generatedclasses.tables.XUnused.ID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.lang.Integer getId() { + return getValue(org.jooq.test.mysql.generatedclasses.tables.XUnused.ID); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.util.List fetchXTestCase_85List() { + return create() + .selectFrom(org.jooq.test.mysql.generatedclasses.tables.XTestCase_85.X_TEST_CASE_85) + .where(org.jooq.test.mysql.generatedclasses.tables.XTestCase_85.X_UNUSED_ID.equal(getValue(org.jooq.test.mysql.generatedclasses.tables.XUnused.ID))) + .and(org.jooq.test.mysql.generatedclasses.tables.XTestCase_85.X_UNUSED_NAME.equal(getValue(org.jooq.test.mysql.generatedclasses.tables.XUnused.NAME))) + .fetch(); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.util.List fetchXUnusedList() { + return create() + .selectFrom(org.jooq.test.mysql.generatedclasses.tables.XUnused.X_UNUSED) + .where(org.jooq.test.mysql.generatedclasses.tables.XUnused.ID_REF.equal(getValue(org.jooq.test.mysql.generatedclasses.tables.XUnused.ID))) + .and(org.jooq.test.mysql.generatedclasses.tables.XUnused.NAME_REF.equal(getValue(org.jooq.test.mysql.generatedclasses.tables.XUnused.NAME))) + .fetch(); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setName(java.lang.String value) { + setValue(org.jooq.test.mysql.generatedclasses.tables.XUnused.NAME, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.lang.String getName() { + return getValue(org.jooq.test.mysql.generatedclasses.tables.XUnused.NAME); + } + + /** + * An uncommented item + */ + public void setBigInteger(java.math.BigInteger value) { + setValue(org.jooq.test.mysql.generatedclasses.tables.XUnused.BIG_INTEGER, value); + } + + /** + * An uncommented item + */ + public java.math.BigInteger getBigInteger() { + return getValue(org.jooq.test.mysql.generatedclasses.tables.XUnused.BIG_INTEGER); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_x_unused_self
+	 * FOREIGN KEY (ID_REF, NAME_REF)
+	 * REFERENCES test.x_unused (ID, NAME)
+	 * 
+ */ + public void setIdRef(java.lang.Integer value) { + setValue(org.jooq.test.mysql.generatedclasses.tables.XUnused.ID_REF, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_x_unused_self
+	 * FOREIGN KEY (ID_REF, NAME_REF)
+	 * REFERENCES test.x_unused (ID, NAME)
+	 * 
+ */ + public java.lang.Integer getIdRef() { + return getValue(org.jooq.test.mysql.generatedclasses.tables.XUnused.ID_REF); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_x_unused_self
+	 * FOREIGN KEY (ID_REF, NAME_REF)
+	 * REFERENCES test.x_unused (ID, NAME)
+	 * 
+ */ + public org.jooq.test.mysql.generatedclasses.tables.records.XUnusedRecord fetchXUnused() { + return create() + .selectFrom(org.jooq.test.mysql.generatedclasses.tables.XUnused.X_UNUSED) + .where(org.jooq.test.mysql.generatedclasses.tables.XUnused.ID.equal(getValue(org.jooq.test.mysql.generatedclasses.tables.XUnused.ID_REF))) + .and(org.jooq.test.mysql.generatedclasses.tables.XUnused.NAME.equal(getValue(org.jooq.test.mysql.generatedclasses.tables.XUnused.NAME_REF))) + .fetchOne(); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_x_unused_self
+	 * FOREIGN KEY (ID_REF, NAME_REF)
+	 * REFERENCES test.x_unused (ID, NAME)
+	 * 
+ */ + public void setNameRef(java.lang.String value) { + setValue(org.jooq.test.mysql.generatedclasses.tables.XUnused.NAME_REF, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_x_unused_self
+	 * FOREIGN KEY (ID_REF, NAME_REF)
+	 * REFERENCES test.x_unused (ID, NAME)
+	 * 
+ */ + public java.lang.String getNameRef() { + return getValue(org.jooq.test.mysql.generatedclasses.tables.XUnused.NAME_REF); + } + + /** + * An uncommented item + */ + public void setClass_(java.lang.Integer value) { + setValue(org.jooq.test.mysql.generatedclasses.tables.XUnused.CLASS, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getClass_() { + return getValue(org.jooq.test.mysql.generatedclasses.tables.XUnused.CLASS); + } + + /** + * An uncommented item + */ + public void setFields_(java.lang.Integer value) { + setValue(org.jooq.test.mysql.generatedclasses.tables.XUnused.FIELDS, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getFields_() { + return getValue(org.jooq.test.mysql.generatedclasses.tables.XUnused.FIELDS); + } + + /** + * An uncommented item + */ + public void setConfiguration_(java.lang.Integer value) { + setValue(org.jooq.test.mysql.generatedclasses.tables.XUnused.CONFIGURATION, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getConfiguration_() { + return getValue(org.jooq.test.mysql.generatedclasses.tables.XUnused.CONFIGURATION); + } + + /** + * An uncommented item + */ + public void setUDT(java.lang.Integer value) { + setValue(org.jooq.test.mysql.generatedclasses.tables.XUnused.U_D_T, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getUDT() { + return getValue(org.jooq.test.mysql.generatedclasses.tables.XUnused.U_D_T); + } + + /** + * An uncommented item + */ + public void setMetaData_(java.lang.Integer value) { + setValue(org.jooq.test.mysql.generatedclasses.tables.XUnused.META_DATA, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getMetaData_() { + return getValue(org.jooq.test.mysql.generatedclasses.tables.XUnused.META_DATA); + } + + /** + * An uncommented item + */ + public void setType0_(java.lang.Integer value) { + setValue(org.jooq.test.mysql.generatedclasses.tables.XUnused.TYPE0, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getType0_() { + return getValue(org.jooq.test.mysql.generatedclasses.tables.XUnused.TYPE0); + } + + /** + * An uncommented item + */ + public void setPrimaryKey(java.lang.Integer value) { + setValue(org.jooq.test.mysql.generatedclasses.tables.XUnused.PRIMARY_KEY, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getPrimaryKey() { + return getValue(org.jooq.test.mysql.generatedclasses.tables.XUnused.PRIMARY_KEY); + } + + /** + * An uncommented item + */ + public void setPrimarykey(java.lang.Integer value) { + setValue(org.jooq.test.mysql.generatedclasses.tables.XUnused.PRIMARYKEY, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getPrimarykey() { + return getValue(org.jooq.test.mysql.generatedclasses.tables.XUnused.PRIMARYKEY); + } + + /** + * An uncommented item + */ + public void setField_737(java.math.BigDecimal value) { + setValue(org.jooq.test.mysql.generatedclasses.tables.XUnused.FIELD_737, value); + } + + /** + * An uncommented item + */ + public java.math.BigDecimal getField_737() { + return getValue(org.jooq.test.mysql.generatedclasses.tables.XUnused.FIELD_737); + } + + /** + * Create a detached XUnusedRecord + */ + public XUnusedRecord() { + super(org.jooq.test.mysql.generatedclasses.tables.XUnused.X_UNUSED); + } +} diff --git a/jOOQ-test/src/org/jooq/test/mysql/reset.sql b/jOOQ-test/src/org/jooq/test/mysql/reset.sql new file mode 100644 index 00000000000..b539a79d3ac --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/mysql/reset.sql @@ -0,0 +1,50 @@ +DELETE FROM t_658_ref/ +DELETE FROM t_658_11/ +DELETE FROM t_658_21/ +DELETE FROM t_658_31/ +DELETE FROM t_658_12/ +DELETE FROM t_658_22/ +DELETE FROM t_658_32/ +DELETE FROM t_book_to_book_store/ +DELETE FROM t_book_store/ +DELETE FROM t_book/ +DELETE FROM t_author/ +DELETE FROM t_language/ +DELETE FROM t_booleans/ +DELETE FROM t_dates/ +DELETE FROM t_identity_pk/ + +INSERT INTO t_language (id, cd, description, description_english) VALUES (1, 'en', 'English', 'English')/ +INSERT INTO t_language (id, cd, description, description_english) VALUES (2, 'de', 'Deutsch', 'German')/ +INSERT INTO t_language (id, cd, description, description_english) VALUES (3, 'fr', 'Français', 'French')/ +INSERT INTO t_language (id, cd, description, description_english) VALUES (4, 'pt', null, null)/ + + +INSERT INTO t_658_11 VALUES ('A'), ('B'), ('C')/ +INSERT INTO t_658_21 VALUES (1), (2), (3)/ +INSERT INTO t_658_31 VALUES (1), (2), (3)/ +INSERT INTO t_658_12 VALUES ('A', 'A'), ('B', 'B'), ('C', 'C')/ +INSERT INTO t_658_22 VALUES (1, 1), (2, 2), (3, 3)/ +INSERT INTO t_658_32 VALUES (1, 1), (2, 2), (3, 3)/ +INSERT INTO t_658_ref VALUES ('A', 1, 1, 'B', 2, 2)/ + +INSERT INTO t_author VALUES (1, 'George', 'Orwell', '1903-06-25', 1903, null);/ +INSERT INTO t_author VALUES (2, 'Paulo', 'Coelho', '1947-08-24', 1947, null);/ + +INSERT INTO t_book VALUES (1, 1, null, null, '1984', 1948, 1, 'To know and not to know, to be conscious of complete truthfulness while telling carefully constructed lies, to hold simultaneously two opinions which cancelled out, knowing them to be contradictory and believing in both of them, to use logic against logic, to repudiate morality while laying claim to it, to believe that democracy was impossible and that the Party was the guardian of democracy, to forget, whatever it was necessary to forget, then to draw it back into memory again at the moment when it was needed, and then promptly to forget it again, and above all, to apply the same process to the process itself -- that was the ultimate subtlety; consciously to induce unconsciousness, and then, once again, to become unconscious of the act of hypnosis you had just performed. Even to understand the word ''doublethink'' involved the use of doublethink..', null, 'ORDERED')/ +INSERT INTO t_book VALUES (2, 1, null, null, 'Animal Farm', 1945, 1, null, null, 'ON STOCK')/ +INSERT INTO t_book VALUES (3, 2, null, null, 'O Alquimista', 1988, 4, null, null, 'ON STOCK')/ +INSERT INTO t_book VALUES (4, 2, null, null, 'Brida', 1990, 2, null, null, 'SOLD OUT')/ + +INSERT INTO t_book_store (name) VALUES + ('Orell Füssli'), + ('Ex Libris'), + ('Buchhandlung im Volkshaus')/ + +INSERT INTO t_book_to_book_store VALUES + ('Orell Füssli', 1, 10), + ('Orell Füssli', 2, 10), + ('Orell Füssli', 3, 10), + ('Ex Libris', 1, 1), + ('Ex Libris', 3, 2), + ('Buchhandlung im Volkshaus', 3, 1)/ \ No newline at end of file diff --git a/jOOQ-test/src/org/jooq/test/mysql/sakila-data.sql b/jOOQ-test/src/org/jooq/test/mysql/sakila-data.sql new file mode 100644 index 00000000000..c2a1a5ee55d --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/mysql/sakila-data.sql @@ -0,0 +1,166 @@ +-- Sakila Sample Database Data +-- Version 0.8 + +-- Copyright (c) 2006, MySQL AB +-- 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 MySQL AB 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 COPYRIGHT OWNER 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. + +SET @OLD_UNIQUE_CHECKS=@@UNIQUE_CHECKS, UNIQUE_CHECKS=0; +SET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS, FOREIGN_KEY_CHECKS=0; +SET @OLD_SQL_MODE=@@SQL_MODE, SQL_MODE='TRADITIONAL'; + +USE sakila; + +-- +-- Dumping data for table actor +-- + +SET AUTOCOMMIT=0; +INSERT INTO actor VALUES (1,'PENELOPE','GUINESS','2006-02-15 04:34:33'),(2,'NICK','WAHLBERG','2006-02-15 04:34:33'),(3,'ED','CHASE','2006-02-15 04:34:33'),(4,'JENNIFER','DAVIS','2006-02-15 04:34:33'),(5,'JOHNNY','LOLLOBRIGIDA','2006-02-15 04:34:33'),(6,'BETTE','NICHOLSON','2006-02-15 04:34:33'),(7,'GRACE','MOSTEL','2006-02-15 04:34:33'),(8,'MATTHEW','JOHANSSON','2006-02-15 04:34:33'),(9,'JOE','SWANK','2006-02-15 04:34:33'),(10,'CHRISTIAN','GABLE','2006-02-15 04:34:33'),(11,'ZERO','CAGE','2006-02-15 04:34:33'),(12,'KARL','BERRY','2006-02-15 04:34:33'),(13,'UMA','WOOD','2006-02-15 04:34:33'),(14,'VIVIEN','BERGEN','2006-02-15 04:34:33'),(15,'CUBA','OLIVIER','2006-02-15 04:34:33'),(16,'FRED','COSTNER','2006-02-15 04:34:33'),(17,'HELEN','VOIGHT','2006-02-15 04:34:33'),(18,'DAN','TORN','2006-02-15 04:34:33'),(19,'BOB','FAWCETT','2006-02-15 04:34:33'),(20,'LUCILLE','TRACY','2006-02-15 04:34:33'),(21,'KIRSTEN','PALTROW','2006-02-15 04:34:33'),(22,'ELVIS','MARX','2006-02-15 04:34:33'),(23,'SANDRA','KILMER','2006-02-15 04:34:33'),(24,'CAMERON','STREEP','2006-02-15 04:34:33'),(25,'KEVIN','BLOOM','2006-02-15 04:34:33'),(26,'RIP','CRAWFORD','2006-02-15 04:34:33'),(27,'JULIA','MCQUEEN','2006-02-15 04:34:33'),(28,'WOODY','HOFFMAN','2006-02-15 04:34:33'),(29,'ALEC','WAYNE','2006-02-15 04:34:33'),(30,'SANDRA','PECK','2006-02-15 04:34:33'),(31,'SISSY','SOBIESKI','2006-02-15 04:34:33'),(32,'TIM','HACKMAN','2006-02-15 04:34:33'),(33,'MILLA','PECK','2006-02-15 04:34:33'),(34,'AUDREY','OLIVIER','2006-02-15 04:34:33'),(35,'JUDY','DEAN','2006-02-15 04:34:33'),(36,'BURT','DUKAKIS','2006-02-15 04:34:33'),(37,'VAL','BOLGER','2006-02-15 04:34:33'),(38,'TOM','MCKELLEN','2006-02-15 04:34:33'),(39,'GOLDIE','BRODY','2006-02-15 04:34:33'),(40,'JOHNNY','CAGE','2006-02-15 04:34:33'),(41,'JODIE','DEGENERES','2006-02-15 04:34:33'),(42,'TOM','MIRANDA','2006-02-15 04:34:33'),(43,'KIRK','JOVOVICH','2006-02-15 04:34:33'),(44,'NICK','STALLONE','2006-02-15 04:34:33'),(45,'REESE','KILMER','2006-02-15 04:34:33'),(46,'PARKER','GOLDBERG','2006-02-15 04:34:33'),(47,'JULIA','BARRYMORE','2006-02-15 04:34:33'),(48,'FRANCES','DAY-LEWIS','2006-02-15 04:34:33'),(49,'ANNE','CRONYN','2006-02-15 04:34:33'),(50,'NATALIE','HOPKINS','2006-02-15 04:34:33'),(51,'GARY','PHOENIX','2006-02-15 04:34:33'),(52,'CARMEN','HUNT','2006-02-15 04:34:33'),(53,'MENA','TEMPLE','2006-02-15 04:34:33'),(54,'PENELOPE','PINKETT','2006-02-15 04:34:33'),(55,'FAY','KILMER','2006-02-15 04:34:33'),(56,'DAN','HARRIS','2006-02-15 04:34:33'),(57,'JUDE','CRUISE','2006-02-15 04:34:33'),(58,'CHRISTIAN','AKROYD','2006-02-15 04:34:33'),(59,'DUSTIN','TAUTOU','2006-02-15 04:34:33'),(60,'HENRY','BERRY','2006-02-15 04:34:33'),(61,'CHRISTIAN','NEESON','2006-02-15 04:34:33'),(62,'JAYNE','NEESON','2006-02-15 04:34:33'),(63,'CAMERON','WRAY','2006-02-15 04:34:33'),(64,'RAY','JOHANSSON','2006-02-15 04:34:33'),(65,'ANGELA','HUDSON','2006-02-15 04:34:33'),(66,'MARY','TANDY','2006-02-15 04:34:33'),(67,'JESSICA','BAILEY','2006-02-15 04:34:33'),(68,'RIP','WINSLET','2006-02-15 04:34:33'),(69,'KENNETH','PALTROW','2006-02-15 04:34:33'),(70,'MICHELLE','MCCONAUGHEY','2006-02-15 04:34:33'),(71,'ADAM','GRANT','2006-02-15 04:34:33'),(72,'SEAN','WILLIAMS','2006-02-15 04:34:33'),(73,'GARY','PENN','2006-02-15 04:34:33'),(74,'MILLA','KEITEL','2006-02-15 04:34:33'),(75,'BURT','POSEY','2006-02-15 04:34:33'),(76,'ANGELINA','ASTAIRE','2006-02-15 04:34:33'),(77,'CARY','MCCONAUGHEY','2006-02-15 04:34:33'),(78,'GROUCHO','SINATRA','2006-02-15 04:34:33'),(79,'MAE','HOFFMAN','2006-02-15 04:34:33'),(80,'RALPH','CRUZ','2006-02-15 04:34:33'),(81,'SCARLETT','DAMON','2006-02-15 04:34:33'),(82,'WOODY','JOLIE','2006-02-15 04:34:33'),(83,'BEN','WILLIS','2006-02-15 04:34:33'),(84,'JAMES','PITT','2006-02-15 04:34:33'),(85,'MINNIE','ZELLWEGER','2006-02-15 04:34:33'),(86,'GREG','CHAPLIN','2006-02-15 04:34:33'),(87,'SPENCER','PECK','2006-02-15 04:34:33'),(88,'KENNETH','PESCI','2006-02-15 04:34:33'),(89,'CHARLIZE','DENCH','2006-02-15 04:34:33'),(90,'SEAN','GUINESS','2006-02-15 04:34:33'),(91,'CHRISTOPHER','BERRY','2006-02-15 04:34:33'),(92,'KIRSTEN','AKROYD','2006-02-15 04:34:33'),(93,'ELLEN','PRESLEY','2006-02-15 04:34:33'),(94,'KENNETH','TORN','2006-02-15 04:34:33'),(95,'DARYL','WAHLBERG','2006-02-15 04:34:33'),(96,'GENE','WILLIS','2006-02-15 04:34:33'),(97,'MEG','HAWKE','2006-02-15 04:34:33'),(98,'CHRIS','BRIDGES','2006-02-15 04:34:33'),(99,'JIM','MOSTEL','2006-02-15 04:34:33'),(100,'SPENCER','DEPP','2006-02-15 04:34:33'),(101,'SUSAN','DAVIS','2006-02-15 04:34:33'),(102,'WALTER','TORN','2006-02-15 04:34:33'),(103,'MATTHEW','LEIGH','2006-02-15 04:34:33'),(104,'PENELOPE','CRONYN','2006-02-15 04:34:33'),(105,'SIDNEY','CROWE','2006-02-15 04:34:33'),(106,'GROUCHO','DUNST','2006-02-15 04:34:33'),(107,'GINA','DEGENERES','2006-02-15 04:34:33'),(108,'WARREN','NOLTE','2006-02-15 04:34:33'),(109,'SYLVESTER','DERN','2006-02-15 04:34:33'),(110,'SUSAN','DAVIS','2006-02-15 04:34:33'),(111,'CAMERON','ZELLWEGER','2006-02-15 04:34:33'),(112,'RUSSELL','BACALL','2006-02-15 04:34:33'),(113,'MORGAN','HOPKINS','2006-02-15 04:34:33'),(114,'MORGAN','MCDORMAND','2006-02-15 04:34:33'),(115,'HARRISON','BALE','2006-02-15 04:34:33'),(116,'DAN','STREEP','2006-02-15 04:34:33'),(117,'RENEE','TRACY','2006-02-15 04:34:33'),(118,'CUBA','ALLEN','2006-02-15 04:34:33'),(119,'WARREN','JACKMAN','2006-02-15 04:34:33'),(120,'PENELOPE','MONROE','2006-02-15 04:34:33'),(121,'LIZA','BERGMAN','2006-02-15 04:34:33'),(122,'SALMA','NOLTE','2006-02-15 04:34:33'),(123,'JULIANNE','DENCH','2006-02-15 04:34:33'),(124,'SCARLETT','BENING','2006-02-15 04:34:33'),(125,'ALBERT','NOLTE','2006-02-15 04:34:33'),(126,'FRANCES','TOMEI','2006-02-15 04:34:33'),(127,'KEVIN','GARLAND','2006-02-15 04:34:33'),(128,'CATE','MCQUEEN','2006-02-15 04:34:33'),(129,'DARYL','CRAWFORD','2006-02-15 04:34:33'),(130,'GRETA','KEITEL','2006-02-15 04:34:33'),(131,'JANE','JACKMAN','2006-02-15 04:34:33'),(132,'ADAM','HOPPER','2006-02-15 04:34:33'),(133,'RICHARD','PENN','2006-02-15 04:34:33'),(134,'GENE','HOPKINS','2006-02-15 04:34:33'),(135,'RITA','REYNOLDS','2006-02-15 04:34:33'),(136,'ED','MANSFIELD','2006-02-15 04:34:33'),(137,'MORGAN','WILLIAMS','2006-02-15 04:34:33'),(138,'LUCILLE','DEE','2006-02-15 04:34:33'),(139,'EWAN','GOODING','2006-02-15 04:34:33'),(140,'WHOOPI','HURT','2006-02-15 04:34:33'),(141,'CATE','HARRIS','2006-02-15 04:34:33'),(142,'JADA','RYDER','2006-02-15 04:34:33'),(143,'RIVER','DEAN','2006-02-15 04:34:33'),(144,'ANGELA','WITHERSPOON','2006-02-15 04:34:33'),(145,'KIM','ALLEN','2006-02-15 04:34:33'),(146,'ALBERT','JOHANSSON','2006-02-15 04:34:33'),(147,'FAY','WINSLET','2006-02-15 04:34:33'),(148,'EMILY','DEE','2006-02-15 04:34:33'),(149,'RUSSELL','TEMPLE','2006-02-15 04:34:33'),(150,'JAYNE','NOLTE','2006-02-15 04:34:33'),(151,'GEOFFREY','HESTON','2006-02-15 04:34:33'),(152,'BEN','HARRIS','2006-02-15 04:34:33'),(153,'MINNIE','KILMER','2006-02-15 04:34:33'),(154,'MERYL','GIBSON','2006-02-15 04:34:33'),(155,'IAN','TANDY','2006-02-15 04:34:33'),(156,'FAY','WOOD','2006-02-15 04:34:33'),(157,'GRETA','MALDEN','2006-02-15 04:34:33'),(158,'VIVIEN','BASINGER','2006-02-15 04:34:33'),(159,'LAURA','BRODY','2006-02-15 04:34:33'),(160,'CHRIS','DEPP','2006-02-15 04:34:33'),(161,'HARVEY','HOPE','2006-02-15 04:34:33'),(162,'OPRAH','KILMER','2006-02-15 04:34:33'),(163,'CHRISTOPHER','WEST','2006-02-15 04:34:33'),(164,'HUMPHREY','WILLIS','2006-02-15 04:34:33'),(165,'AL','GARLAND','2006-02-15 04:34:33'),(166,'NICK','DEGENERES','2006-02-15 04:34:33'),(167,'LAURENCE','BULLOCK','2006-02-15 04:34:33'),(168,'WILL','WILSON','2006-02-15 04:34:33'),(169,'KENNETH','HOFFMAN','2006-02-15 04:34:33'),(170,'MENA','HOPPER','2006-02-15 04:34:33'),(171,'OLYMPIA','PFEIFFER','2006-02-15 04:34:33'),(172,'GROUCHO','WILLIAMS','2006-02-15 04:34:33'),(173,'ALAN','DREYFUSS','2006-02-15 04:34:33'),(174,'MICHAEL','BENING','2006-02-15 04:34:33'),(175,'WILLIAM','HACKMAN','2006-02-15 04:34:33'),(176,'JON','CHASE','2006-02-15 04:34:33'),(177,'GENE','MCKELLEN','2006-02-15 04:34:33'),(178,'LISA','MONROE','2006-02-15 04:34:33'),(179,'ED','GUINESS','2006-02-15 04:34:33'),(180,'JEFF','SILVERSTONE','2006-02-15 04:34:33'),(181,'MATTHEW','CARREY','2006-02-15 04:34:33'),(182,'DEBBIE','AKROYD','2006-02-15 04:34:33'),(183,'RUSSELL','CLOSE','2006-02-15 04:34:33'),(184,'HUMPHREY','GARLAND','2006-02-15 04:34:33'),(185,'MICHAEL','BOLGER','2006-02-15 04:34:33'),(186,'JULIA','ZELLWEGER','2006-02-15 04:34:33'),(187,'RENEE','BALL','2006-02-15 04:34:33'),(188,'ROCK','DUKAKIS','2006-02-15 04:34:33'),(189,'CUBA','BIRCH','2006-02-15 04:34:33'),(190,'AUDREY','BAILEY','2006-02-15 04:34:33'),(191,'GREGORY','GOODING','2006-02-15 04:34:33'),(192,'JOHN','SUVARI','2006-02-15 04:34:33'),(193,'BURT','TEMPLE','2006-02-15 04:34:33'),(194,'MERYL','ALLEN','2006-02-15 04:34:33'),(195,'JAYNE','SILVERSTONE','2006-02-15 04:34:33'),(196,'BELA','WALKEN','2006-02-15 04:34:33'),(197,'REESE','WEST','2006-02-15 04:34:33'),(198,'MARY','KEITEL','2006-02-15 04:34:33'),(199,'JULIA','FAWCETT','2006-02-15 04:34:33'),(200,'THORA','TEMPLE','2006-02-15 04:34:33'); +COMMIT; + +-- +-- Dumping data for table address +-- + +SET AUTOCOMMIT=0; +INSERT INTO address VALUES (1,'47 MySakila Drive',NULL,'Alberta',300,'','','2006-02-15 04:45:30'),(2,'28 MySQL Boulevard',NULL,'QLD',576,'','','2006-02-15 04:45:30'),(3,'23 Workhaven Lane',NULL,'Alberta',300,'','14033335568','2006-02-15 04:45:30'),(4,'1411 Lillydale Drive',NULL,'QLD',576,'','6172235589','2006-02-15 04:45:30'),(5,'1913 Hanoi Way','','Nagasaki',463,'35200','28303384290','2006-02-15 04:45:30'),(6,'1121 Loja Avenue','','California',449,'17886','838635286649','2006-02-15 04:45:30'),(7,'692 Joliet Street','','Attika',38,'83579','448477190408','2006-02-15 04:45:30'),(8,'1566 Inegl Manor','','Mandalay',349,'53561','705814003527','2006-02-15 04:45:30'),(9,'53 Idfu Parkway','','Nantou',361,'42399','10655648674','2006-02-15 04:45:30'),(10,'1795 Santiago de Compostela Way','','Texas',295,'18743','860452626434','2006-02-15 04:45:30'),(11,'900 Santiago de Compostela Parkway','','Central Serbia',280,'93896','716571220373','2006-02-15 04:45:30'),(12,'478 Joliet Way','','Hamilton',200,'77948','657282285970','2006-02-15 04:45:30'),(13,'613 Korolev Drive','','Masqat',329,'45844','380657522649','2006-02-15 04:45:30'),(14,'1531 Sal Drive','','Esfahan',162,'53628','648856936185','2006-02-15 04:45:30'),(15,'1542 Tarlac Parkway','','Kanagawa',440,'1027','635297277345','2006-02-15 04:45:30'),(16,'808 Bhopal Manor','','Haryana',582,'10672','465887807014','2006-02-15 04:45:30'),(17,'270 Amroha Parkway','','Osmaniye',384,'29610','695479687538','2006-02-15 04:45:30'),(18,'770 Bydgoszcz Avenue','','California',120,'16266','517338314235','2006-02-15 04:45:30'),(19,'419 Iligan Lane','','Madhya Pradesh',76,'72878','990911107354','2006-02-15 04:45:30'),(20,'360 Toulouse Parkway','','England',495,'54308','949312333307','2006-02-15 04:45:30'),(21,'270 Toulon Boulevard','','Kalmykia',156,'81766','407752414682','2006-02-15 04:45:30'),(22,'320 Brest Avenue','','Kaduna',252,'43331','747791594069','2006-02-15 04:45:30'),(23,'1417 Lancaster Avenue','','Northern Cape',267,'72192','272572357893','2006-02-15 04:45:30'),(24,'1688 Okara Way','','Nothwest Border Prov',327,'21954','144453869132','2006-02-15 04:45:30'),(25,'262 A Corua (La Corua) Parkway','','Dhaka',525,'34418','892775750063','2006-02-15 04:45:30'),(26,'28 Charlotte Amalie Street','','Rabat-Sal-Zammour-Z',443,'37551','161968374323','2006-02-15 04:45:30'),(27,'1780 Hino Boulevard','','Liepaja',303,'7716','902731229323','2006-02-15 04:45:30'),(28,'96 Tafuna Way','','Crdoba',128,'99865','934730187245','2006-02-15 04:45:30'),(29,'934 San Felipe de Puerto Plata Street','','Sind',472,'99780','196495945706','2006-02-15 04:45:30'),(30,'18 Duisburg Boulevard','','',121,'58327','998009777982','2006-02-15 04:45:30'),(31,'217 Botshabelo Place','','Southern Mindanao',138,'49521','665356572025','2006-02-15 04:45:30'),(32,'1425 Shikarpur Manor','','Bihar',346,'65599','678220867005','2006-02-15 04:45:30'),(33,'786 Aurora Avenue','','Yamaguchi',474,'65750','18461860151','2006-02-15 04:45:30'),(34,'1668 Anpolis Street','','Taipei',316,'50199','525255540978','2006-02-15 04:45:30'),(35,'33 Gorontalo Way','','West Bengali',257,'30348','745994947458','2006-02-15 04:45:30'),(36,'176 Mandaluyong Place','','Uttar Pradesh',239,'65213','627705991774','2006-02-15 04:45:30'),(37,'127 Purnea (Purnia) Manor','','Piemonte',17,'79388','911872220378','2006-02-15 04:45:30'),(38,'61 Tama Street','','Okayama',284,'94065','708403338270','2006-02-15 04:45:30'),(39,'391 Callao Drive','','Midi-Pyrnes',544,'34021','440512153169','2006-02-15 04:45:30'),(40,'334 Munger (Monghyr) Lane','','Markazi',31,'38145','481183273622','2006-02-15 04:45:30'),(41,'1440 Fukuyama Loop','','Henan',362,'47929','912257250465','2006-02-15 04:45:30'),(42,'269 Cam Ranh Parkway','','Chisinau',115,'34689','489783829737','2006-02-15 04:45:30'),(43,'306 Antofagasta Place','','Esprito Santo',569,'3989','378318851631','2006-02-15 04:45:30'),(44,'671 Graz Street','','Oriental',353,'94399','680768868518','2006-02-15 04:45:30'),(45,'42 Brindisi Place','','Yerevan',586,'16744','42384721397','2006-02-15 04:45:30'),(46,'1632 Bislig Avenue','','Nonthaburi',394,'61117','471675840679','2006-02-15 04:45:30'),(47,'1447 Imus Way','','Tahiti',167,'48942','539758313890','2006-02-15 04:45:30'),(48,'1998 Halifax Drive','','Lipetsk',308,'76022','177727722820','2006-02-15 04:45:30'),(49,'1718 Valencia Street','','Antofagasta',27,'37359','675292816413','2006-02-15 04:45:30'),(50,'46 Pjatigorsk Lane','','Moscow (City)',343,'23616','262076994845','2006-02-15 04:45:30'),(51,'686 Garland Manor','','Cear',247,'52535','69493378813','2006-02-15 04:45:30'),(52,'909 Garland Manor','','Tatarstan',367,'69367','705800322606','2006-02-15 04:45:30'),(53,'725 Isesaki Place','','Mekka',237,'74428','876295323994','2006-02-15 04:45:30'),(54,'115 Hidalgo Parkway','','Khartum',379,'80168','307703950263','2006-02-15 04:45:30'),(55,'1135 Izumisano Parkway','','California',171,'48150','171822533480','2006-02-15 04:45:30'),(56,'939 Probolinggo Loop','','Galicia',1,'4166','680428310138','2006-02-15 04:45:30'),(57,'17 Kabul Boulevard','','Chiba',355,'38594','697760867968','2006-02-15 04:45:30'),(58,'1964 Allappuzha (Alleppey) Street','','Yamaguchi',227,'48980','920811325222','2006-02-15 04:45:30'),(59,'1697 Kowloon and New Kowloon Loop','','Moskova',49,'57807','499352017190','2006-02-15 04:45:30'),(60,'1668 Saint Louis Place','','Tahiti',397,'39072','347487831378','2006-02-15 04:45:30'),(61,'943 Tokat Street','','Vaduz',560,'45428','889318963672','2006-02-15 04:45:30'),(62,'1114 Liepaja Street','','Sarawak',282,'69226','212869228936','2006-02-15 04:45:30'),(63,'1213 Ranchi Parkway','','Karnataka',350,'94352','800024380485','2006-02-15 04:45:30'),(64,'81 Hodeida Way','','Rajasthan',231,'55561','250767749542','2006-02-15 04:45:30'),(65,'915 Ponce Place','','Basel-Stadt',56,'83980','1395251317','2006-02-15 04:45:30'),(66,'1717 Guadalajara Lane','','Missouri',441,'85505','914090181665','2006-02-15 04:45:30'),(67,'1214 Hanoi Way','','Nebraska',306,'67055','491001136577','2006-02-15 04:45:30'),(68,'1966 Amroha Avenue','','Sichuan',139,'70385','333489324603','2006-02-15 04:45:30'),(69,'698 Otsu Street','','Cayenne',105,'71110','409983924481','2006-02-15 04:45:30'),(70,'1150 Kimchon Manor','','Skne ln',321,'96109','663449333709','2006-02-15 04:45:30'),(71,'1586 Guaruj Place','','Hunan',579,'5135','947233365992','2006-02-15 04:45:30'),(72,'57 Arlington Manor','','Madhya Pradesh',475,'48960','990214419142','2006-02-15 04:45:30'),(73,'1031 Daugavpils Parkway','','Bchar',63,'59025','107137400143','2006-02-15 04:45:30'),(74,'1124 Buenaventura Drive','','Mekka',13,'6856','407733804223','2006-02-15 04:45:30'),(75,'492 Cam Ranh Street','','Eastern Visayas',61,'50805','565018274456','2006-02-15 04:45:30'),(76,'89 Allappuzha (Alleppey) Manor','','National Capital Reg',517,'75444','255800440636','2006-02-15 04:45:30'),(77,'1947 Poos de Caldas Boulevard','','Chiayi',114,'60951','427454485876','2006-02-15 04:45:30'),(78,'1206 Dos Quebradas Place','','So Paulo',431,'20207','241832790687','2006-02-15 04:45:30'),(79,'1551 Rampur Lane','','Changhwa',108,'72394','251164340471','2006-02-15 04:45:30'),(80,'602 Paarl Street','','Pavlodar',402,'98889','896314772871','2006-02-15 04:45:30'),(81,'1692 Ede Loop','','So Paulo',30,'9223','918711376618','2006-02-15 04:45:30'),(82,'936 Salzburg Lane','','Uttar Pradesh',425,'96709','875756771675','2006-02-15 04:45:30'),(83,'586 Tete Way','','Kanagawa',256,'1079','18581624103','2006-02-15 04:45:30'),(84,'1888 Kabul Drive','','Oyo & Osun',217,'20936','701457319790','2006-02-15 04:45:30'),(85,'320 Baiyin Parkway','','Mahajanga',319,'37307','223664661973','2006-02-15 04:45:30'),(86,'927 Baha Blanca Parkway','','Krim',479,'9495','821972242086','2006-02-15 04:45:30'),(87,'929 Tallahassee Loop','','Gauteng',497,'74671','800716535041','2006-02-15 04:45:30'),(88,'125 Citt del Vaticano Boulevard','','Puebla',40,'67912','48417642933','2006-02-15 04:45:30'),(89,'1557 Ktahya Boulevard','','England',88,'88002','720998247660','2006-02-15 04:45:30'),(90,'870 Ashqelon Loop','','Songkhla',489,'84931','135117278909','2006-02-15 04:45:30'),(91,'1740 Portoviejo Avenue','','Sucre',480,'29932','198123170793','2006-02-15 04:45:30'),(92,'1942 Ciparay Parkway','','Cheju',113,'82624','978987363654','2006-02-15 04:45:30'),(93,'1926 El Alto Avenue','','Buenos Aires',289,'75543','846225459260','2006-02-15 04:45:30'),(94,'1952 Chatsworth Drive','','Guangdong',332,'25958','991562402283','2006-02-15 04:45:30'),(95,'1370 Le Mans Avenue','','Brunei and Muara',53,'52163','345679835036','2006-02-15 04:45:30'),(96,'984 Effon-Alaiye Avenue','','Gois',183,'17119','132986892228','2006-02-15 04:45:30'),(97,'832 Nakhon Sawan Manor','','Inner Mongolia',592,'49021','275595571388','2006-02-15 04:45:30'),(98,'152 Kitwe Parkway','','Caraga',82,'53182','835433605312','2006-02-15 04:45:30'),(99,'1697 Tanauan Lane','','Punjab',399,'22870','4764773857','2006-02-15 04:45:30'),(100,'1308 Arecibo Way','','Georgia',41,'30695','6171054059','2006-02-15 04:45:30'),(101,'1599 Plock Drive','','Tete',534,'71986','817248913162','2006-02-15 04:45:30'),(102,'669 Firozabad Loop','','Abu Dhabi',12,'92265','412903167998','2006-02-15 04:45:30'),(103,'588 Vila Velha Manor','','Kyongsangbuk',268,'51540','333339908719','2006-02-15 04:45:30'),(104,'1913 Kamakura Place','','Lipetsk',238,'97287','942570536750','2006-02-15 04:45:30'),(105,'733 Mandaluyong Place','','Asir',2,'77459','196568435814','2006-02-15 04:45:30'),(106,'659 Vaduz Drive','','Ha Darom',34,'49708','709935135487','2006-02-15 04:45:30'),(107,'1177 Jelets Way','','Kwara & Kogi',220,'3305','484292626944','2006-02-15 04:45:30'),(108,'1386 Yangor Avenue','','Provence-Alpes-Cte',543,'80720','449216226468','2006-02-15 04:45:30'),(109,'454 Nakhon Sawan Boulevard','','Funafuti',173,'76383','963887147572','2006-02-15 04:45:30'),(110,'1867 San Juan Bautista Tuxtepec Avenue','','Ivanovo',225,'78311','547003310357','2006-02-15 04:45:30'),(111,'1532 Dzerzinsk Way','','Buenos Aires',334,'9599','330838016880','2006-02-15 04:45:30'),(112,'1002 Ahmadnagar Manor','','Mxico',213,'93026','371490777743','2006-02-15 04:45:30'),(113,'682 Junan Way','','North West',273,'30418','622255216127','2006-02-15 04:45:30'),(114,'804 Elista Drive','','Hubei',159,'61069','379804592943','2006-02-15 04:45:30'),(115,'1378 Alvorada Avenue','','Distrito Federal',102,'75834','272234298332','2006-02-15 04:45:30'),(116,'793 Cam Ranh Avenue','','California',292,'87057','824370924746','2006-02-15 04:45:30'),(117,'1079 Tel Aviv-Jaffa Boulevard','','Sucre',132,'10885','358178933857','2006-02-15 04:45:30'),(118,'442 Rae Bareli Place','','Nordrhein-Westfalen',148,'24321','886636413768','2006-02-15 04:45:30'),(119,'1107 Nakhon Sawan Avenue','','Mxico',365,'75149','867546627903','2006-02-15 04:45:30'),(120,'544 Malm Parkway','','Central Java',403,'63502','386759646229','2006-02-15 04:45:30'),(121,'1967 Sincelejo Place','','Gujarat',176,'73644','577812616052','2006-02-15 04:45:30'),(122,'333 Goinia Way','','Texas',185,'78625','909029256431','2006-02-15 04:45:30'),(123,'1987 Coacalco de Berriozbal Loop','','al-Qalyubiya',476,'96065','787654415858','2006-02-15 04:45:30'),(124,'241 Mosul Lane','','Risaralda',147,'76157','765345144779','2006-02-15 04:45:30'),(125,'211 Chiayi Drive','','Uttar Pradesh',164,'58186','665993880048','2006-02-15 04:45:30'),(126,'1175 Tanauan Way','','Lima',305,'64615','937222955822','2006-02-15 04:45:30'),(127,'117 Boa Vista Way','','Uttar Pradesh',566,'6804','677976133614','2006-02-15 04:45:30'),(128,'848 Tafuna Manor','','Ktahya',281,'45142','614935229095','2006-02-15 04:45:30'),(129,'569 Baicheng Lane','','Gauteng',85,'60304','490211944645','2006-02-15 04:45:30'),(130,'1666 Qomsheh Drive','','So Paulo',410,'66255','582835362905','2006-02-15 04:45:30'),(131,'801 Hagonoy Drive','','Smolensk',484,'8439','237426099212','2006-02-15 04:45:30'),(132,'1050 Garden Grove Avenue','','Slaskie',236,'4999','973047364353','2006-02-15 04:45:30'),(133,'1854 Tieli Street','','Shandong',302,'15819','509492324775','2006-02-15 04:45:30'),(134,'758 Junan Lane','','Gois',190,'82639','935448624185','2006-02-15 04:45:30'),(135,'1752 So Leopoldo Parkway','','Taka-Karpatia',345,'14014','252265130067','2006-02-15 04:45:30'),(136,'898 Belm Manor','','Free State',87,'49757','707169393853','2006-02-15 04:45:30'),(137,'261 Saint Louis Way','','Coahuila de Zaragoza',541,'83401','321944036800','2006-02-15 04:45:30'),(138,'765 Southampton Drive','','al-Qalyubiya',421,'4285','23712411567','2006-02-15 04:45:30'),(139,'943 Johannesburg Avenue','','Maharashtra',417,'5892','90921003005','2006-02-15 04:45:30'),(140,'788 Atinsk Street','','Karnataka',211,'81691','146497509724','2006-02-15 04:45:30'),(141,'1749 Daxian Place','','Gelderland',29,'11044','963369996279','2006-02-15 04:45:30'),(142,'1587 Sullana Lane','','Inner Mongolia',207,'85769','468060467018','2006-02-15 04:45:30'),(143,'1029 Dzerzinsk Manor','','Ynlin',542,'57519','33173584456','2006-02-15 04:45:30'),(144,'1666 Beni-Mellal Place','','Tennessee',123,'13377','9099941466','2006-02-15 04:45:30'),(145,'928 Jaffna Loop','','Hiroshima',172,'93762','581852137991','2006-02-15 04:45:30'),(146,'483 Ljubertsy Parkway','','Scotland',149,'60562','581174211853','2006-02-15 04:45:30'),(147,'374 Bat Yam Boulevard','','Kilis',266,'97700','923261616249','2006-02-15 04:45:30'),(148,'1027 Songkhla Manor','','Minsk',340,'30861','563660187896','2006-02-15 04:45:30'),(149,'999 Sanaa Loop','','Gauteng',491,'3439','918032330119','2006-02-15 04:45:30'),(150,'879 Newcastle Way','','Michigan',499,'90732','206841104594','2006-02-15 04:45:30'),(151,'1337 Lincoln Parkway','','Saitama',555,'99457','597815221267','2006-02-15 04:45:30'),(152,'1952 Pune Lane','','Saint-Denis',442,'92150','354615066969','2006-02-15 04:45:30'),(153,'782 Mosul Street','','Massachusetts',94,'25545','885899703621','2006-02-15 04:45:30'),(154,'781 Shimonoseki Drive','','Michoacn de Ocampo',202,'95444','632316273199','2006-02-15 04:45:30'),(155,'1560 Jelets Boulevard','','Shandong',291,'77777','189446090264','2006-02-15 04:45:30'),(156,'1963 Moscow Place','','Assam',354,'64863','761379480249','2006-02-15 04:45:30'),(157,'456 Escobar Way','','Jakarta Raya',232,'36061','719202533520','2006-02-15 04:45:30'),(158,'798 Cianjur Avenue','','Shanxi',590,'76990','499408708580','2006-02-15 04:45:30'),(159,'185 Novi Sad Place','','Bern',72,'41778','904253967161','2006-02-15 04:45:30'),(160,'1367 Yantai Manor','','Ondo & Ekiti',381,'21294','889538496300','2006-02-15 04:45:30'),(161,'1386 Nakhon Sawan Boulevard','','Pyongyang-si',420,'53502','368899174225','2006-02-15 04:45:30'),(162,'369 Papeete Way','','North Carolina',187,'66639','170117068815','2006-02-15 04:45:30'),(163,'1440 Compton Place','','North Austria',307,'81037','931059836497','2006-02-15 04:45:30'),(164,'1623 Baha Blanca Manor','','Moskova',310,'81511','149981248346','2006-02-15 04:45:30'),(165,'97 Shimoga Avenue','','Tel Aviv',533,'44660','177167004331','2006-02-15 04:45:30'),(166,'1740 Le Mans Loop','','Pays de la Loire',297,'22853','168476538960','2006-02-15 04:45:30'),(167,'1287 Xiangfan Boulevard','','Gifu',253,'57844','819416131190','2006-02-15 04:45:30'),(168,'842 Salzburg Lane','','Adana',529,'3313','697151428760','2006-02-15 04:45:30'),(169,'154 Tallahassee Loop','','Xinxiang',199,'62250','935508855935','2006-02-15 04:45:30'),(170,'710 San Felipe del Progreso Avenue','','Lilongwe',304,'76901','843801144113','2006-02-15 04:45:30'),(171,'1540 Wroclaw Drive','','Maharashtra',107,'62686','182363341674','2006-02-15 04:45:30'),(172,'475 Atinsk Way','','Gansu',240,'59571','201705577290','2006-02-15 04:45:30'),(173,'1294 Firozabad Drive','','Jiangxi',407,'70618','161801569569','2006-02-15 04:45:30'),(174,'1877 Ezhou Lane','','Rajasthan',550,'63337','264541743403','2006-02-15 04:45:30'),(175,'316 Uruapan Street','','Perak',223,'58194','275788967899','2006-02-15 04:45:30'),(176,'29 Pyongyang Loop','','Batman',58,'47753','734780743462','2006-02-15 04:45:30'),(177,'1010 Klerksdorp Way','','Steiermark',186,'6802','493008546874','2006-02-15 04:45:30'),(178,'1848 Salala Boulevard','','Miranda',373,'25220','48265851133','2006-02-15 04:45:30'),(179,'431 Xiangtan Avenue','','Kerala',18,'4854','230250973122','2006-02-15 04:45:30'),(180,'757 Rustenburg Avenue','','Skikda',483,'89668','506134035434','2006-02-15 04:45:30'),(181,'146 Johannesburg Way','','Tamaulipas',330,'54132','953689007081','2006-02-15 04:45:30'),(182,'1891 Rizhao Boulevard','','So Paulo',456,'47288','391065549876','2006-02-15 04:45:30'),(183,'1089 Iwatsuki Avenue','','Kirov',270,'35109','866092335135','2006-02-15 04:45:30'),(184,'1410 Benin City Parkway','','Risaralda',405,'29747','104150372603','2006-02-15 04:45:30'),(185,'682 Garden Grove Place','','Tennessee',333,'67497','72136330362','2006-02-15 04:45:30'),(186,'533 al-Ayn Boulevard','','California',126,'8862','662227486184','2006-02-15 04:45:30'),(187,'1839 Szkesfehrvr Parkway','','Gois',317,'55709','947468818183','2006-02-15 04:45:30'),(188,'741 Ambattur Manor','','Noord-Brabant',438,'43310','302590383819','2006-02-15 04:45:30'),(189,'927 Barcelona Street','','Chaharmahal va Bakht',467,'65121','951486492670','2006-02-15 04:45:30'),(190,'435 0 Way','','West Bengali',195,'74750','760171523969','2006-02-15 04:45:30'),(191,'140 Chiayi Parkway','','Sumy',506,'38982','855863906434','2006-02-15 04:45:30'),(192,'1166 Changhwa Street','','Caraga',62,'58852','650752094490','2006-02-15 04:45:30'),(193,'891 Novi Sad Manor','','Ontario',383,'5379','247646995453','2006-02-15 04:45:30'),(194,'605 Rio Claro Parkway','','Tabora',513,'49348','352469351088','2006-02-15 04:45:30'),(195,'1077 San Felipe de Puerto Plata Place','','Rostov-na-Donu',369,'65387','812824036424','2006-02-15 04:45:30'),(196,'9 San Miguel de Tucumn Manor','','Uttar Pradesh',169,'90845','956188728558','2006-02-15 04:45:30'),(197,'447 Surakarta Loop','','Nyanza',271,'10428','940830176580','2006-02-15 04:45:30'),(198,'345 Oshawa Boulevard','','Tokyo-to',204,'32114','104491201771','2006-02-15 04:45:30'),(199,'1792 Valle de la Pascua Place','','Nordrhein-Westfalen',477,'15540','419419591240','2006-02-15 04:45:30'),(200,'1074 Binzhou Manor','','Baden-Wrttemberg',325,'36490','331132568928','2006-02-15 04:45:30'),(201,'817 Bradford Loop','','Jiangsu',109,'89459','264286442804','2006-02-15 04:45:30'),(202,'955 Bamenda Way','','Ondo & Ekiti',218,'1545','768481779568','2006-02-15 04:45:30'),(203,'1149 A Corua (La Corua) Boulevard','','Haiphong',194,'95824','470884141195','2006-02-15 04:45:30'),(204,'387 Mwene-Ditu Drive','','Ahal',35,'8073','764477681869','2006-02-15 04:45:30'),(205,'68 Molodetno Manor','','Nordrhein-Westfalen',575,'4662','146640639760','2006-02-15 04:45:30'),(206,'642 Nador Drive','','Maharashtra',77,'3924','369050085652','2006-02-15 04:45:30'),(207,'1688 Nador Lane','','Sulawesi Utara',184,'61613','652218196731','2006-02-15 04:45:30'),(208,'1215 Pyongyang Parkway','','Usak',557,'25238','646237101779','2006-02-15 04:45:30'),(209,'1679 Antofagasta Street','','Alto Paran',122,'86599','905903574913','2006-02-15 04:45:30'),(210,'1304 s-Hertogenbosch Way','','Santa Catarina',83,'10925','90336226227','2006-02-15 04:45:30'),(211,'850 Salala Loop','','Kitaa',371,'10800','403404780639','2006-02-15 04:45:30'),(212,'624 Oshawa Boulevard','','West Bengali',51,'89959','49677664184','2006-02-15 04:45:30'),(213,'43 Dadu Avenue','','Rajasthan',74,'4855','95666951770','2006-02-15 04:45:30'),(214,'751 Lima Loop','','Aden',7,'99405','756460337785','2006-02-15 04:45:30'),(215,'1333 Haldia Street','','Jilin',174,'82161','408304391718','2006-02-15 04:45:30'),(216,'660 Jedda Boulevard','','Washington',65,'25053','168758068397','2006-02-15 04:45:30'),(217,'1001 Miyakonojo Lane','','Taizz',518,'67924','584316724815','2006-02-15 04:45:30'),(218,'226 Brest Manor','','California',508,'2299','785881412500','2006-02-15 04:45:30'),(219,'1229 Valencia Parkway','','Haskovo',498,'99124','352679173732','2006-02-15 04:45:30'),(220,'1201 Qomsheh Manor','','Gois',28,'21464','873492228462','2006-02-15 04:45:30'),(221,'866 Shivapuri Manor','','Uttar Pradesh',448,'22474','778502731092','2006-02-15 04:45:30'),(222,'1168 Najafabad Parkway','','Kabol',251,'40301','886649065861','2006-02-15 04:45:30'),(223,'1244 Allappuzha (Alleppey) Place','','Buenos Aires',567,'20657','991802825778','2006-02-15 04:45:30'),(224,'1842 Luzinia Boulevard','','Zanzibar West',593,'94420','706878974831','2006-02-15 04:45:30'),(225,'1926 Gingoog Street','','Sisilia',511,'22824','469738825391','2006-02-15 04:45:30'),(226,'810 Palghat (Palakkad) Boulevard','','Jaroslavl',235,'73431','516331171356','2006-02-15 04:45:30'),(227,'1820 Maring Parkway','','Punjab',324,'88307','99760893676','2006-02-15 04:45:30'),(228,'60 Poos de Caldas Street','','Rajasthan',243,'82338','963063788669','2006-02-15 04:45:30'),(229,'1014 Loja Manor','','Tamil Nadu',22,'66851','460795526514','2006-02-15 04:45:30'),(230,'201 Effon-Alaiye Way','','Asuncin',37,'64344','684192903087','2006-02-15 04:45:30'),(231,'430 Alessandria Loop','','Saarland',439,'47446','669828224459','2006-02-15 04:45:30'),(232,'754 Valencia Place','','Phnom Penh',406,'87911','594319417514','2006-02-15 04:45:30'),(233,'356 Olomouc Manor','','Gois',26,'93323','22326410776','2006-02-15 04:45:30'),(234,'1256 Bislig Boulevard','','Botosani',86,'50598','479007229460','2006-02-15 04:45:30'),(235,'954 Kimchon Place','','West Bengali',559,'42420','541327526474','2006-02-15 04:45:30'),(236,'885 Yingkou Manor','','Kaduna',596,'31390','588964509072','2006-02-15 04:45:30'),(237,'1736 Cavite Place','','Qina',216,'98775','431770603551','2006-02-15 04:45:30'),(238,'346 Skikda Parkway','','Hawalli',233,'90628','630424482919','2006-02-15 04:45:30'),(239,'98 Stara Zagora Boulevard','','Valle',96,'76448','610173756082','2006-02-15 04:45:30'),(240,'1479 Rustenburg Boulevard','','Southern Tagalog',527,'18727','727785483194','2006-02-15 04:45:30'),(241,'647 A Corua (La Corua) Street','','Chollanam',357,'36971','792557457753','2006-02-15 04:45:30'),(242,'1964 Gijn Manor','','Karnataka',473,'14408','918119601885','2006-02-15 04:45:30'),(243,'47 Syktyvkar Lane','','West Java',118,'22236','63937119031','2006-02-15 04:45:30'),(244,'1148 Saarbrcken Parkway','','Fukushima',226,'1921','137773001988','2006-02-15 04:45:30'),(245,'1103 Bilbays Parkway','','Hubei',578,'87660','279979529227','2006-02-15 04:45:30'),(246,'1246 Boksburg Parkway','','Hebei',422,'28349','890283544295','2006-02-15 04:45:30'),(247,'1483 Pathankot Street','','Tucumn',454,'37288','686015532180','2006-02-15 04:45:30'),(248,'582 Papeete Loop','','Central Visayas',294,'27722','569868543137','2006-02-15 04:45:30'),(249,'300 Junan Street','','Kyonggi',553,'81314','890289150158','2006-02-15 04:45:30'),(250,'829 Grand Prairie Way','','Paran',328,'6461','741070712873','2006-02-15 04:45:30'),(251,'1473 Changhwa Parkway','','Mxico',124,'75933','266798132374','2006-02-15 04:45:30'),(252,'1309 Weifang Street','','Florida',520,'57338','435785045362','2006-02-15 04:45:30'),(253,'1760 Oshawa Manor','','Tianjin',535,'38140','56257502250','2006-02-15 04:45:30'),(254,'786 Stara Zagora Way','','Oyo & Osun',390,'98332','716256596301','2006-02-15 04:45:30'),(255,'1966 Tonghae Street','','Anhalt Sachsen',198,'36481','567359279425','2006-02-15 04:45:30'),(256,'1497 Yuzhou Drive','','England',312,'3433','246810237916','2006-02-15 04:45:30'),(258,'752 Ondo Loop','','Miyazaki',338,'32474','134673576619','2006-02-15 04:45:30'),(259,'1338 Zalantun Lane','','Minas Gerais',413,'45403','840522972766','2006-02-15 04:45:30'),(260,'127 Iwakuni Boulevard','','Central Luzon',192,'20777','987442542471','2006-02-15 04:45:30'),(261,'51 Laredo Avenue','','Sagaing',342,'68146','884536620568','2006-02-15 04:45:30'),(262,'771 Yaound Manor','','Sofala',64,'86768','245477603573','2006-02-15 04:45:30'),(263,'532 Toulon Street','','Santiago',460,'69517','46871694740','2006-02-15 04:45:30'),(264,'1027 Banjul Place','','West Bengali',197,'50390','538241037443','2006-02-15 04:45:30'),(265,'1158 Mandi Bahauddin Parkway','','Shanxi',136,'98484','276555730211','2006-02-15 04:45:30'),(266,'862 Xintai Lane','','Cagayan Valley',548,'30065','265153400632','2006-02-15 04:45:30'),(267,'816 Cayenne Parkway','','Manab',414,'93629','282874611748','2006-02-15 04:45:30'),(268,'1831 Nam Dinh Loop','','National Capital Reg',323,'51990','322888976727','2006-02-15 04:45:30'),(269,'446 Kirovo-Tepetsk Lane','','Osaka',203,'19428','303967439816','2006-02-15 04:45:30'),(270,'682 Halisahar Place','','Severn Morava',378,'20536','475553436330','2006-02-15 04:45:30'),(271,'1587 Loja Manor','','Salzburg',447,'5410','621625204422','2006-02-15 04:45:30'),(272,'1762 Paarl Parkway','','Hunan',298,'53928','192459639410','2006-02-15 04:45:30'),(273,'1519 Ilorin Place','','Kerala',395,'49298','357445645426','2006-02-15 04:45:30'),(274,'920 Kumbakonam Loop','','California',446,'75090','685010736240','2006-02-15 04:45:30'),(275,'906 Goinia Way','','Wielkopolskie',255,'83565','701767622697','2006-02-15 04:45:30'),(276,'1675 Xiangfan Manor','','Tamil Nadu',283,'11763','271149517630','2006-02-15 04:45:30'),(277,'85 San Felipe de Puerto Plata Drive','','Shandong',584,'46063','170739645687','2006-02-15 04:45:30'),(278,'144 South Hill Loop','','Guanajuato',445,'2012','45387294817','2006-02-15 04:45:30'),(279,'1884 Shikarpur Avenue','','Haryana',263,'85548','959949395183','2006-02-15 04:45:30'),(280,'1980 Kamjanets-Podilskyi Street','','Illinois',404,'89502','874337098891','2006-02-15 04:45:30'),(281,'1944 Bamenda Way','','Michigan',573,'24645','75975221996','2006-02-15 04:45:30'),(282,'556 Baybay Manor','','Oyo & Osun',374,'55802','363982224739','2006-02-15 04:45:30'),(283,'457 Tongliao Loop','','Bursa',222,'56254','880756161823','2006-02-15 04:45:30'),(284,'600 Bradford Street','','East Azerbaidzan',514,'96204','117592274996','2006-02-15 04:45:30'),(285,'1006 Santa Brbara dOeste Manor','','Ondo & Ekiti',389,'36229','85059738746','2006-02-15 04:45:30'),(286,'1308 Sumy Loop','','Fujian',175,'30657','583021225407','2006-02-15 04:45:30'),(287,'1405 Chisinau Place','','Ponce',411,'8160','62781725285','2006-02-15 04:45:30'),(288,'226 Halifax Street','','Xinxiang',277,'58492','790651020929','2006-02-15 04:45:30'),(289,'1279 Udine Parkway','','Edo & Delta',69,'75860','195003555232','2006-02-15 04:45:30'),(290,'1336 Benin City Drive','','Shiga',386,'46044','341242939532','2006-02-15 04:45:30'),(291,'1155 Liaocheng Place','','Oyo & Osun',152,'22650','558236142492','2006-02-15 04:45:30'),(292,'1993 Tabuk Lane','','Tamil Nadu',522,'64221','648482415405','2006-02-15 04:45:30'),(293,'86 Higashiosaka Lane','','Guanajuato',563,'33768','957128697225','2006-02-15 04:45:30'),(294,'1912 Allende Manor','','Kowloon and New Kowl',279,'58124','172262454487','2006-02-15 04:45:30'),(295,'544 Tarsus Boulevard','','Gurico',562,'53145','892523334','2006-02-15 04:45:30'),(296,'1936 Cuman Avenue','','Virginia',433,'61195','976798660411','2006-02-15 04:45:30'),(297,'1192 Tongliao Street','','Sharja',470,'19065','350970907017','2006-02-15 04:45:30'),(298,'44 Najafabad Way','','Baskimaa',146,'61391','96604821070','2006-02-15 04:45:30'),(299,'32 Pudukkottai Lane','','Ohio',140,'38834','967274728547','2006-02-15 04:45:30'),(300,'661 Chisinau Lane','','Pietari',274,'8856','816436065431','2006-02-15 04:45:30'),(301,'951 Stara Zagora Manor','','Punjab',400,'98573','429925609431','2006-02-15 04:45:30'),(302,'922 Vila Velha Loop','','Maharashtra',9,'4085','510737228015','2006-02-15 04:45:30'),(303,'898 Jining Lane','','Pohjois-Pohjanmaa',387,'40070','161643343536','2006-02-15 04:45:30'),(304,'1635 Kuwana Boulevard','','Hiroshima',205,'52137','710603868323','2006-02-15 04:45:30'),(305,'41 El Alto Parkway','','Maharashtra',398,'56883','51917807050','2006-02-15 04:45:30'),(306,'1883 Maikop Lane','','Kaliningrad',254,'68469','96110042435','2006-02-15 04:45:30'),(307,'1908 Gaziantep Place','','Liaoning',536,'58979','108053751300','2006-02-15 04:45:30'),(308,'687 Alessandria Parkway','','Sanaa',455,'57587','407218522294','2006-02-15 04:45:30'),(309,'827 Yuncheng Drive','','Callao',99,'79047','504434452842','2006-02-15 04:45:30'),(310,'913 Coacalco de Berriozbal Loop','','Texas',33,'42141','262088367001','2006-02-15 04:45:30'),(311,'715 So Bernardo do Campo Lane','','Kedah',507,'84804','181179321332','2006-02-15 04:45:30'),(312,'1354 Siegen Street','','Rio de Janeiro',25,'80184','573441801529','2006-02-15 04:45:30'),(313,'1191 Sungai Petani Boulevard','','Missouri',262,'9668','983259819766','2006-02-15 04:45:30'),(314,'1224 Huejutla de Reyes Boulevard','','Lombardia',91,'70923','806016930576','2006-02-15 04:45:30'),(315,'543 Bergamo Avenue','','Minas Gerais',215,'59686','103602195112','2006-02-15 04:45:30'),(316,'746 Joliet Lane','','Kursk',286,'94878','688485191923','2006-02-15 04:45:30'),(317,'780 Kimberley Way','','Tabuk',515,'17032','824396883951','2006-02-15 04:45:30'),(318,'1774 Yaound Place','','Hubei',166,'91400','613124286867','2006-02-15 04:45:30'),(319,'1957 Yantai Lane','','So Paulo',490,'59255','704948322302','2006-02-15 04:45:30'),(320,'1542 Lubumbashi Boulevard','','Tel Aviv',57,'62472','508800331065','2006-02-15 04:45:30'),(321,'651 Pathankot Loop','','Maharashtra',336,'59811','139378397418','2006-02-15 04:45:30'),(322,'1359 Zhoushan Parkway','','Streymoyar',545,'29763','46568045367','2006-02-15 04:45:30'),(323,'1769 Iwaki Lane','','Kujawsko-Pomorskie',97,'25787','556100547674','2006-02-15 04:45:30'),(324,'1145 Vilnius Manor','','Mxico',451,'73170','674805712553','2006-02-15 04:45:30'),(325,'1892 Nabereznyje Telny Lane','','Tutuila',516,'28396','478229987054','2006-02-15 04:45:30'),(326,'470 Boksburg Street','','Central',81,'97960','908029859266','2006-02-15 04:45:30'),(327,'1427 A Corua (La Corua) Place','','Buenos Aires',45,'85799','972574862516','2006-02-15 04:45:30'),(328,'479 San Felipe del Progreso Avenue','','Morelos',130,'54949','869051782691','2006-02-15 04:45:30'),(329,'867 Benin City Avenue','','Henan',591,'78543','168884817145','2006-02-15 04:45:30'),(330,'981 Kumbakonam Place','','Distrito Federal',89,'87611','829116184079','2006-02-15 04:45:30'),(331,'1016 Iwakuni Street','','St George',269,'49833','961370847344','2006-02-15 04:45:30'),(332,'663 Baha Blanca Parkway','','Adana',5,'33463','834418779292','2006-02-15 04:45:30'),(333,'1860 Taguig Loop','','West Java',119,'59550','38158430589','2006-02-15 04:45:30'),(334,'1816 Bydgoszcz Loop','','Dhaka',234,'64308','965273813662','2006-02-15 04:45:30'),(335,'587 Benguela Manor','','Illinois',42,'91590','165450987037','2006-02-15 04:45:30'),(336,'430 Kumbakonam Drive','','Santa F',457,'28814','105470691550','2006-02-15 04:45:30'),(337,'1838 Tabriz Lane','','Dhaka',143,'1195','38988715447','2006-02-15 04:45:30'),(338,'431 Szkesfehrvr Avenue','','Baki',48,'57828','119501405123','2006-02-15 04:45:30'),(339,'503 Sogamoso Loop','','Sumqayit',505,'49812','834626715837','2006-02-15 04:45:30'),(340,'507 Smolensk Loop','','Sousse',492,'22971','80303246192','2006-02-15 04:45:30'),(341,'1920 Weifang Avenue','','Uttar Pradesh',427,'15643','869507847714','2006-02-15 04:45:30'),(342,'124 al-Manama Way','','Hiroshima',382,'52368','647899404952','2006-02-15 04:45:30'),(343,'1443 Mardan Street','','Western Cape',392,'31483','231383037471','2006-02-15 04:45:30'),(344,'1909 Benguela Lane','','Henan',581,'19913','624138001031','2006-02-15 04:45:30'),(345,'68 Ponce Parkway','','Hanoi',201,'85926','870635127812','2006-02-15 04:45:30'),(346,'1217 Konotop Avenue','','Gelderland',151,'504','718917251754','2006-02-15 04:45:30'),(347,'1293 Nam Dinh Way','','Roraima',84,'71583','697656479977','2006-02-15 04:45:30'),(348,'785 Vaduz Street','','Baja California',335,'36170','895616862749','2006-02-15 04:45:30'),(349,'1516 Escobar Drive','','Tongatapu',370,'46069','64536069371','2006-02-15 04:45:30'),(350,'1628 Nagareyama Lane','','Central',453,'60079','20064292617','2006-02-15 04:45:30'),(351,'1157 Nyeri Loop','','Adygea',320,'56380','262744791493','2006-02-15 04:45:30'),(352,'1673 Tangail Drive','','Daugavpils',137,'26857','627924259271','2006-02-15 04:45:30'),(353,'381 Kabul Way','','Taipei',209,'87272','55477302294','2006-02-15 04:45:30'),(354,'953 Hodeida Street','','Southern Tagalog',221,'18841','53912826864','2006-02-15 04:45:30'),(355,'469 Nakhon Sawan Street','','Tuvassia',531,'58866','689199636560','2006-02-15 04:45:30'),(356,'1378 Beira Loop','','Krasnojarsk',597,'40792','840957664136','2006-02-15 04:45:30'),(357,'1641 Changhwa Place','','Nord-Ouest',52,'37636','256546485220','2006-02-15 04:45:30'),(358,'1698 Southport Loop','','Hidalgo',393,'49009','754358349853','2006-02-15 04:45:30'),(359,'519 Nyeri Manor','','So Paulo',461,'37650','764680915323','2006-02-15 04:45:30'),(360,'619 Hunuco Avenue','','Shimane',331,'81508','142596392389','2006-02-15 04:45:30'),(361,'45 Aparecida de Goinia Place','','Madhya Pradesh',464,'7431','650496654258','2006-02-15 04:45:30'),(362,'482 Kowloon and New Kowloon Manor','','Bratislava',90,'97056','738968474939','2006-02-15 04:45:30'),(363,'604 Bern Place','','Jharkhand',429,'5373','620719383725','2006-02-15 04:45:30'),(364,'1623 Kingstown Drive','','Buenos Aires',20,'91299','296394569728','2006-02-15 04:45:30'),(365,'1009 Zanzibar Lane','','Arecibo',32,'64875','102396298916','2006-02-15 04:45:30'),(366,'114 Jalib al-Shuyukh Manor','','Centre',585,'60440','845378657301','2006-02-15 04:45:30'),(367,'1163 London Parkway','','Par',66,'6066','675120358494','2006-02-15 04:45:30'),(368,'1658 Jastrzebie-Zdrj Loop','','Central',372,'96584','568367775448','2006-02-15 04:45:30'),(369,'817 Laredo Avenue','','Jalisco',188,'77449','151249681135','2006-02-15 04:45:30'),(370,'1565 Tangail Manor','','Okinawa',377,'45750','634445428822','2006-02-15 04:45:30'),(371,'1912 Emeishan Drive','','Balikesir',50,'33050','99883471275','2006-02-15 04:45:30'),(372,'230 Urawa Drive','','Andhra Pradesh',8,'2738','166898395731','2006-02-15 04:45:30'),(373,'1922 Miraj Way','','Esfahan',356,'13203','320471479776','2006-02-15 04:45:30'),(374,'433 Florencia Street','','Chihuahua',250,'91330','561729882725','2006-02-15 04:45:30'),(375,'1049 Matamoros Parkway','','Karnataka',191,'69640','960505250340','2006-02-15 04:45:30'),(376,'1061 Ede Avenue','','Southern Tagalog',98,'57810','333390595558','2006-02-15 04:45:30'),(377,'154 Oshawa Manor','','East Java',415,'72771','440365973660','2006-02-15 04:45:30'),(378,'1191 Tandil Drive','','Southern Tagalog',523,'6362','45554316010','2006-02-15 04:45:30'),(379,'1133 Rizhao Avenue','','Pernambuco',572,'2800','600264533987','2006-02-15 04:45:30'),(380,'1519 Santiago de los Caballeros Loop','','East Kasai',348,'22025','409315295763','2006-02-15 04:45:30'),(381,'1618 Olomouc Manor','','Kurgan',285,'26385','96846695220','2006-02-15 04:45:30'),(382,'220 Hidalgo Drive','','Kermanshah',265,'45298','342720754566','2006-02-15 04:45:30'),(383,'686 Donostia-San Sebastin Lane','','Guangdong',471,'97390','71857599858','2006-02-15 04:45:30'),(384,'97 Mogiljov Lane','','Gujarat',73,'89294','924815207181','2006-02-15 04:45:30'),(385,'1642 Charlotte Amalie Drive','','Slaskie',549,'75442','821476736117','2006-02-15 04:45:30'),(386,'1368 Maracabo Boulevard','','',493,'32716','934352415130','2006-02-15 04:45:30'),(387,'401 Sucre Boulevard','','New Hampshire',322,'25007','486395999608','2006-02-15 04:45:30'),(388,'368 Hunuco Boulevard','','Namibe',360,'17165','106439158941','2006-02-15 04:45:30'),(389,'500 Lincoln Parkway','','Jiangsu',210,'95509','550306965159','2006-02-15 04:45:30'),(390,'102 Chapra Drive','','Ibaragi',521,'14073','776031833752','2006-02-15 04:45:30'),(391,'1793 Meixian Place','','Hmelnytskyi',258,'33535','619966287415','2006-02-15 04:45:30'),(392,'514 Ife Way','','Shaba',315,'69973','900235712074','2006-02-15 04:45:30'),(393,'717 Changzhou Lane','','Southern Tagalog',104,'21615','426255288071','2006-02-15 04:45:30'),(394,'753 Ilorin Avenue','','Sichuan',157,'3656','464511145118','2006-02-15 04:45:30'),(395,'1337 Mit Ghamr Avenue','','Nakhon Sawan',358,'29810','175283210378','2006-02-15 04:45:30'),(396,'767 Pyongyang Drive','','Osaka',229,'83536','667736124769','2006-02-15 04:45:30'),(397,'614 Pak Kret Street','','Addis Abeba',6,'27796','47808359842','2006-02-15 04:45:30'),(398,'954 Lapu-Lapu Way','','Moskova',278,'8816','737229003916','2006-02-15 04:45:30'),(399,'331 Bydgoszcz Parkway','','Asturia',181,'966','537374465982','2006-02-15 04:45:30'),(400,'1152 Citrus Heights Manor','','al-Qadarif',15,'5239','765957414528','2006-02-15 04:45:30'),(401,'168 Cianjur Manor','','Saitama',228,'73824','679095087143','2006-02-15 04:45:30'),(402,'616 Hagonoy Avenue','','Krasnojarsk',39,'46043','604177838256','2006-02-15 04:45:30'),(403,'1190 0 Place','','Rio Grande do Sul',44,'10417','841876514789','2006-02-15 04:45:30'),(404,'734 Bchar Place','','Punjab',375,'30586','280578750435','2006-02-15 04:45:30'),(405,'530 Lausanne Lane','','Texas',135,'11067','775235029633','2006-02-15 04:45:30'),(406,'454 Patiala Lane','','Fukushima',276,'13496','794553031307','2006-02-15 04:45:30'),(407,'1346 Mysore Drive','','Bretagne',92,'61507','516647474029','2006-02-15 04:45:30'),(408,'990 Etawah Loop','','Tamil Nadu',564,'79940','206169448769','2006-02-15 04:45:30'),(409,'1266 Laredo Parkway','','Saitama',380,'7664','1483365694','2006-02-15 04:45:30'),(410,'88 Nagaon Manor','','Buenos Aires',524,'86868','779461480495','2006-02-15 04:45:30'),(411,'264 Bhimavaram Manor','','St Thomas',111,'54749','302526949177','2006-02-15 04:45:30'),(412,'1639 Saarbrcken Drive','','North West',437,'9827','328494873422','2006-02-15 04:45:30'),(413,'692 Amroha Drive','','Northern',230,'35575','359478883004','2006-02-15 04:45:30'),(414,'1936 Lapu-Lapu Parkway','','Bauchi & Gombe',141,'7122','653436985797','2006-02-15 04:45:30'),(415,'432 Garden Grove Street','','Ontario',430,'65630','615964523510','2006-02-15 04:45:30'),(416,'1445 Carmen Parkway','','West Java',117,'70809','598912394463','2006-02-15 04:45:30'),(417,'791 Salinas Street','','Punjab',208,'40509','129953030512','2006-02-15 04:45:30'),(418,'126 Acua Parkway','','West Bengali',71,'58888','480039662421','2006-02-15 04:45:30'),(419,'397 Sunnyvale Avenue','','Guanajuato',19,'55566','680851640676','2006-02-15 04:45:30'),(420,'992 Klerksdorp Loop','','Utrecht',23,'33711','855290087237','2006-02-15 04:45:30'),(421,'966 Arecibo Loop','','Sind',134,'94018','15273765306','2006-02-15 04:45:30'),(422,'289 Santo Andr Manor','','al-Sharqiya',16,'72410','214976066017','2006-02-15 04:45:30'),(423,'437 Chungho Drive','','Puerto Plata',450,'59489','491271355190','2006-02-15 04:45:30'),(424,'1948 Bayugan Parkway','','Bihar',264,'60622','987306329957','2006-02-15 04:45:30'),(425,'1866 al-Qatif Avenue','','California',155,'89420','546793516940','2006-02-15 04:45:30'),(426,'1661 Abha Drive','','Tamil Nadu',416,'14400','270456873752','2006-02-15 04:45:30'),(427,'1557 Cape Coral Parkway','','Hubei',293,'46875','368284120423','2006-02-15 04:45:30'),(428,'1727 Matamoros Place','','Sawhaj',465,'78813','129673677866','2006-02-15 04:45:30'),(429,'1269 Botosani Manor','','Guangdong',468,'47394','736517327853','2006-02-15 04:45:30'),(430,'355 Vitria de Santo Anto Way','','Oaxaca',452,'81758','548003849552','2006-02-15 04:45:30'),(431,'1596 Acua Parkway','','Jharkhand',418,'70425','157133457169','2006-02-15 04:45:30'),(432,'259 Ipoh Drive','','So Paulo',189,'64964','419009857119','2006-02-15 04:45:30'),(433,'1823 Hoshiarpur Lane','','Komi',510,'33191','307133768620','2006-02-15 04:45:30'),(434,'1404 Taguig Drive','','Okayama',547,'87212','572068624538','2006-02-15 04:45:30'),(435,'740 Udaipur Lane','','Nizni Novgorod',150,'33505','497288595103','2006-02-15 04:45:30'),(436,'287 Cuautla Boulevard','','Chuquisaca',501,'72736','82619513349','2006-02-15 04:45:30'),(437,'1766 Almirante Brown Street','','KwaZulu-Natal',364,'63104','617567598243','2006-02-15 04:45:30'),(438,'596 Huixquilucan Place','','Nampula',351,'65892','342709348083','2006-02-15 04:45:30'),(439,'1351 Aparecida de Goinia Parkway','','Northern Mindanao',391,'41775','959834530529','2006-02-15 04:45:30'),(440,'722 Bradford Lane','','Shandong',249,'90920','746251338300','2006-02-15 04:45:30'),(441,'983 Santa F Way','','British Colombia',565,'47472','145720452260','2006-02-15 04:45:30'),(442,'1245 Ibirit Way','','La Romana',290,'40926','331888642162','2006-02-15 04:45:30'),(443,'1836 Korla Parkway','','Copperbelt',272,'55405','689681677428','2006-02-15 04:45:30'),(444,'231 Kaliningrad Place','','Lombardia',70,'57833','575081026569','2006-02-15 04:45:30'),(445,'495 Bhimavaram Lane','','Maharashtra',144,'3','82088937724','2006-02-15 04:45:30'),(446,'1924 Shimonoseki Drive','','Batna',59,'52625','406784385440','2006-02-15 04:45:30'),(447,'105 Dzerzinsk Manor','','Inner Mongolia',540,'48570','240776414296','2006-02-15 04:45:30'),(448,'614 Denizli Parkway','','Rio Grande do Sul',486,'29444','876491807547','2006-02-15 04:45:30'),(449,'1289 Belm Boulevard','','Tartumaa',530,'88306','237368926031','2006-02-15 04:45:30'),(450,'203 Tambaram Street','','Buenos Aires',161,'73942','411549550611','2006-02-15 04:45:30'),(451,'1704 Tambaram Manor','','West Bengali',554,'2834','39463554936','2006-02-15 04:45:30'),(452,'207 Cuernavaca Loop','','Tatarstan',352,'52671','782900030287','2006-02-15 04:45:30'),(453,'319 Springs Loop','','Baijeri',160,'99552','72524459905','2006-02-15 04:45:30'),(454,'956 Nam Dinh Manor','','Kerman',481,'21872','474047727727','2006-02-15 04:45:30'),(455,'1947 Paarl Way','','Central Java',509,'23636','834061016202','2006-02-15 04:45:30'),(456,'814 Simferopol Loop','','Sinaloa',154,'48745','524567129902','2006-02-15 04:45:30'),(457,'535 Ahmadnagar Manor','','Abu Dhabi',3,'41136','985109775584','2006-02-15 04:45:30'),(458,'138 Caracas Boulevard','','Zulia',326,'16790','974433019532','2006-02-15 04:45:30'),(459,'251 Florencia Drive','','Michoacn de Ocampo',556,'16119','118011831565','2006-02-15 04:45:30'),(460,'659 Gatineau Boulevard','','La Paz',153,'28587','205524798287','2006-02-15 04:45:30'),(461,'1889 Valparai Way','','Ziguinchor',600,'75559','670370974122','2006-02-15 04:45:30'),(462,'1485 Bratislava Place','','Illinois',435,'83183','924663855568','2006-02-15 04:45:30'),(463,'935 Aden Boulevard','','Central Java',532,'64709','335052544020','2006-02-15 04:45:30'),(464,'76 Kermanshah Manor','','Esfahan',423,'23343','762361821578','2006-02-15 04:45:30'),(465,'734 Tanshui Avenue','','Caquet',170,'70664','366776723320','2006-02-15 04:45:30'),(466,'118 Jaffna Loop','','Northern Mindanao',182,'10447','325526730021','2006-02-15 04:45:30'),(467,'1621 Tongliao Avenue','','Irkutsk',558,'22173','209342540247','2006-02-15 04:45:30'),(468,'1844 Usak Avenue','','Nova Scotia',196,'84461','164414772677','2006-02-15 04:45:30'),(469,'1872 Toulon Loop','','OHiggins',428,'7939','928809465153','2006-02-15 04:45:30'),(470,'1088 Ibirit Place','','Jalisco',595,'88502','49084281333','2006-02-15 04:45:30'),(471,'1322 Mosul Parkway','','Shandong',145,'95400','268053970382','2006-02-15 04:45:30'),(472,'1447 Chatsworth Place','','Chihuahua',129,'41545','769370126331','2006-02-15 04:45:30'),(473,'1257 Guadalajara Street','','Karnataka',78,'33599','195337700615','2006-02-15 04:45:30'),(474,'1469 Plock Lane','','Galicia',388,'95835','622884741180','2006-02-15 04:45:30'),(475,'434 Ourense (Orense) Manor','','Hodeida',206,'14122','562370137426','2006-02-15 04:45:30'),(476,'270 Tambaram Parkway','','Gauteng',244,'9668','248446668735','2006-02-15 04:45:30'),(477,'1786 Salinas Place','','Nam Ha',359,'66546','206060652238','2006-02-15 04:45:30'),(478,'1078 Stara Zagora Drive','','Aceh',301,'69221','932992626595','2006-02-15 04:45:30'),(479,'1854 Okara Boulevard','','Drenthe',158,'42123','131912793873','2006-02-15 04:45:30'),(480,'421 Yaound Street','','Sumy',385,'11363','726875628268','2006-02-15 04:45:30'),(481,'1153 Allende Way','','Qubec',179,'20336','856872225376','2006-02-15 04:45:30'),(482,'808 Naala-Porto Parkway','','England',500,'41060','553452430707','2006-02-15 04:45:30'),(483,'632 Usolje-Sibirskoje Parkway','','Ha Darom',36,'73085','667648979883','2006-02-15 04:45:30'),(484,'98 Pyongyang Boulevard','','Ohio',11,'88749','191958435142','2006-02-15 04:45:30'),(485,'984 Novoterkassk Loop','','Gaziantep',180,'28165','435118527255','2006-02-15 04:45:30'),(486,'64 Korla Street','','Mwanza',347,'25145','510383179153','2006-02-15 04:45:30'),(487,'1785 So Bernardo do Campo Street','','Veracruz',125,'71182','684529463244','2006-02-15 04:45:30'),(488,'698 Jelets Boulevard','','Denizli',142,'2596','975185523021','2006-02-15 04:45:30'),(489,'1297 Alvorada Parkway','','Ningxia',587,'11839','508348602835','2006-02-15 04:45:30'),(490,'1909 Dayton Avenue','','Guangdong',469,'88513','702955450528','2006-02-15 04:45:30'),(491,'1789 Saint-Denis Parkway','','Coahuila de Zaragoza',4,'8268','936806643983','2006-02-15 04:45:30'),(492,'185 Mannheim Lane','','Stavropol',408,'23661','589377568313','2006-02-15 04:45:30'),(493,'184 Mandaluyong Street','','Baja California Sur',288,'94239','488425406814','2006-02-15 04:45:30'),(494,'591 Sungai Petani Drive','','Okayama',376,'46400','37247325001','2006-02-15 04:45:30'),(495,'656 Matamoros Drive','','Boyac',487,'19489','17305839123','2006-02-15 04:45:30'),(496,'775 ostka Drive','','al-Daqahliya',337,'22358','171973024401','2006-02-15 04:45:30'),(497,'1013 Tabuk Boulevard','','West Bengali',261,'96203','158399646978','2006-02-15 04:45:30'),(498,'319 Plock Parkway','','Istanbul',504,'26101','854259976812','2006-02-15 04:45:30'),(499,'1954 Kowloon and New Kowloon Way','','Chimborazo',434,'63667','898559280434','2006-02-15 04:45:30'),(500,'362 Rajkot Lane','','Gansu',47,'98030','962020153680','2006-02-15 04:45:30'),(501,'1060 Tandil Lane','','Shandong',432,'72349','211256301880','2006-02-15 04:45:30'),(502,'1515 Korla Way','','England',589,'57197','959467760895','2006-02-15 04:45:30'),(503,'1416 San Juan Bautista Tuxtepec Avenue','','Zufar',444,'50592','144206758053','2006-02-15 04:45:30'),(504,'1 Valle de Santiago Avenue','','Apulia',93,'86208','465897838272','2006-02-15 04:45:30'),(505,'519 Brescia Parkway','','East Java',318,'69504','793996678771','2006-02-15 04:45:30'),(506,'414 Mandaluyong Street','','Lubelskie',314,'16370','52709222667','2006-02-15 04:45:30'),(507,'1197 Sokoto Boulevard','','West Bengali',478,'87687','868602816371','2006-02-15 04:45:30'),(508,'496 Celaya Drive','','Nagano',552,'90797','759586584889','2006-02-15 04:45:30'),(509,'786 Matsue Way','','Illinois',245,'37469','111177206479','2006-02-15 04:45:30'),(510,'48 Maracabo Place','','Central Luzon',519,'1570','82671830126','2006-02-15 04:45:30'),(511,'1152 al-Qatif Lane','','Kalimantan Barat',412,'44816','131370665218','2006-02-15 04:45:30'),(512,'1269 Ipoh Avenue','','Eskisehir',163,'54674','402630109080','2006-02-15 04:45:30'),(513,'758 Korolev Parkway','','Andhra Pradesh',568,'75474','441628280920','2006-02-15 04:45:30'),(514,'1747 Rustenburg Place','','Bihar',110,'51369','442673923363','2006-02-15 04:45:30'),(515,'886 Tonghae Place','','Volgograd',259,'19450','711928348157','2006-02-15 04:45:30'),(516,'1574 Goinia Boulevard','','Heilongjiang',502,'39529','59634255214','2006-02-15 04:45:30'),(517,'548 Uruapan Street','','Ontario',312,'35653','879347453467','2006-02-15 04:45:30'),(519,'962 Tama Loop','','',583,'65952','282667506728','2006-02-15 04:45:30'),(520,'1778 Gijn Manor','','Hubei',594,'35156','288910576761','2006-02-15 04:45:30'),(521,'568 Dhule (Dhulia) Loop','','Coquimbo',127,'92568','602101369463','2006-02-15 04:45:30'),(522,'1768 Udine Loop','','Battambang',60,'32347','448876499197','2006-02-15 04:45:30'),(523,'608 Birgunj Parkway','','Taipei',116,'400','627425618482','2006-02-15 04:45:30'),(524,'680 A Corua (La Corua) Manor','','Sivas',482,'49806','158326114853','2006-02-15 04:45:30'),(525,'1949 Sanya Street','','Gumma',224,'61244','132100972047','2006-02-15 04:45:30'),(526,'617 Klerksdorp Place','','Khanh Hoa',366,'94707','574973479129','2006-02-15 04:45:30'),(527,'1993 0 Loop','','Liaoning',588,'41214','25865528181','2006-02-15 04:45:30'),(528,'1176 Southend-on-Sea Manor','','Southern Tagalog',458,'81651','236679267178','2006-02-15 04:45:30'),(529,'600 Purnea (Purnia) Avenue','','Nghe An',571,'18043','638409958875','2006-02-15 04:45:30'),(530,'1003 Qinhuangdao Street','','West Java',419,'25972','35533115997','2006-02-15 04:45:30'),(531,'1986 Sivas Place','','Friuli-Venezia Giuli',551,'95775','182059202712','2006-02-15 04:45:30'),(532,'1427 Tabuk Place','','Florida',101,'31342','214756839122','2006-02-15 04:45:30'),(533,'556 Asuncin Way','','Mogiljov',339,'35364','338244023543','2006-02-15 04:45:30'),(534,'486 Ondo Parkway','','Benguela',67,'35202','105882218332','2006-02-15 04:45:30'),(535,'635 Brest Manor','','Andhra Pradesh',75,'40899','80593242951','2006-02-15 04:45:30'),(536,'166 Jinchang Street','','Buenos Aires',165,'86760','717566026669','2006-02-15 04:45:30'),(537,'958 Sagamihara Lane','','Mie',287,'88408','427274926505','2006-02-15 04:45:30'),(538,'1817 Livorno Way','','Khanh Hoa',100,'79401','478380208348','2006-02-15 04:45:30'),(539,'1332 Gaziantep Lane','','Shandong',80,'22813','383353187467','2006-02-15 04:45:30'),(540,'949 Allende Lane','','Uttar Pradesh',24,'67521','122981120653','2006-02-15 04:45:30'),(541,'195 Ilorin Street','','Chari-Baguirmi',363,'49250','8912935608','2006-02-15 04:45:30'),(542,'193 Bhusawal Place','','Kang-won',539,'9750','745267607502','2006-02-15 04:45:30'),(543,'43 Vilnius Manor','','Colorado',42,'79814','484500282381','2006-02-15 04:45:30'),(544,'183 Haiphong Street','','Jilin',46,'69953','488600270038','2006-02-15 04:45:30'),(545,'163 Augusta-Richmond County Loop','','Carabobo',561,'33030','754579047924','2006-02-15 04:45:30'),(546,'191 Jos Azueta Parkway','','Ruse',436,'13629','932156667696','2006-02-15 04:45:30'),(547,'379 Lublin Parkway','','Toscana',309,'74568','921960450089','2006-02-15 04:45:30'),(548,'1658 Cuman Loop','','Sumatera Selatan',396,'51309','784907335610','2006-02-15 04:45:30'),(549,'454 Qinhuangdao Drive','','Tadla-Azilal',68,'25866','786270036240','2006-02-15 04:45:30'),(550,'1715 Okayama Street','','So Paulo',485,'55676','169352919175','2006-02-15 04:45:30'),(551,'182 Nukualofa Drive','','Sumy',275,'15414','426346224043','2006-02-15 04:45:30'),(552,'390 Wroclaw Way','','Hainan',462,'5753','357593328658','2006-02-15 04:45:30'),(553,'1421 Quilmes Lane','','Ishikawa',260,'19151','135407755975','2006-02-15 04:45:30'),(554,'947 Trshavn Place','','Central Luzon',528,'841','50898428626','2006-02-15 04:45:30'),(555,'1764 Jalib al-Shuyukh Parkway','','Galicia',459,'77642','84794532510','2006-02-15 04:45:30'),(556,'346 Cam Ranh Avenue','','Zhejiang',599,'39976','978430786151','2006-02-15 04:45:30'),(557,'1407 Pachuca de Soto Place','','Rio Grande do Sul',21,'26284','380077794770','2006-02-15 04:45:30'),(558,'904 Clarksville Drive','','Zhejiang',193,'52234','955349440539','2006-02-15 04:45:30'),(559,'1917 Kumbakonam Parkway','','Vojvodina',368,'11892','698182547686','2006-02-15 04:45:30'),(560,'1447 Imus Place','','Gujarat',426,'12905','62127829280','2006-02-15 04:45:30'),(561,'1497 Fengshan Drive','','KwaZulu-Natal',112,'63022','368738360376','2006-02-15 04:45:30'),(562,'869 Shikarpur Way','','England',496,'57380','590764256785','2006-02-15 04:45:30'),(563,'1059 Yuncheng Avenue','','Vilna',570,'47498','107092893983','2006-02-15 04:45:30'),(564,'505 Madiun Boulevard','','Dolnoslaskie',577,'97271','970638808606','2006-02-15 04:45:30'),(565,'1741 Hoshiarpur Boulevard','','al-Sharqiya',79,'22372','855066328617','2006-02-15 04:45:30'),(566,'1229 Varanasi (Benares) Manor','','Buenos Aires',43,'40195','817740355461','2006-02-15 04:45:30'),(567,'1894 Boa Vista Way','','Texas',178,'77464','239357986667','2006-02-15 04:45:30'),(568,'1342 Sharja Way','','Sokoto & Kebbi & Zam',488,'93655','946114054231','2006-02-15 04:45:30'),(569,'1342 Abha Boulevard','','Bukarest',95,'10714','997453607116','2006-02-15 04:45:30'),(570,'415 Pune Avenue','','Shandong',580,'44274','203202500108','2006-02-15 04:45:30'),(571,'1746 Faaa Way','','Huanuco',214,'32515','863080561151','2006-02-15 04:45:30'),(572,'539 Hami Way','','Tokat',538,'52196','525518075499','2006-02-15 04:45:30'),(573,'1407 Surakarta Manor','','Moskova',466,'33224','324346485054','2006-02-15 04:45:30'),(574,'502 Mandi Bahauddin Parkway','','Anzotegui',55,'15992','618156722572','2006-02-15 04:45:30'),(575,'1052 Pathankot Avenue','','Sichuan',299,'77397','128499386727','2006-02-15 04:45:30'),(576,'1351 Sousse Lane','','Coahuila de Zaragoza',341,'37815','203804046132','2006-02-15 04:45:30'),(577,'1501 Pangkal Pinang Avenue','','Mazowieckie',409,'943','770864062795','2006-02-15 04:45:30'),(578,'1405 Hagonoy Avenue','','Slaskie',133,'86587','867287719310','2006-02-15 04:45:30'),(579,'521 San Juan Bautista Tuxtepec Place','','Qaraghandy',598,'95093','844018348565','2006-02-15 04:45:30'),(580,'923 Tangail Boulevard','','Tokyo-to',10,'33384','315528269898','2006-02-15 04:45:30'),(581,'186 Skikda Lane','','Morelos',131,'89422','14465669789','2006-02-15 04:45:30'),(582,'1568 Celaya Parkway','','Kaohsiung',168,'34750','278669994384','2006-02-15 04:45:30'),(583,'1489 Kakamigahara Lane','','Taipei',526,'98883','29341849811','2006-02-15 04:45:30'),(584,'1819 Alessandria Loop','','Campeche',103,'53829','377633994405','2006-02-15 04:45:30'),(585,'1208 Tama Loop','','Ninawa',344,'73605','954786054144','2006-02-15 04:45:30'),(586,'951 Springs Lane','','Central Mindanao',219,'96115','165164761435','2006-02-15 04:45:30'),(587,'760 Miyakonojo Drive','','Guerrero',246,'64682','294449058179','2006-02-15 04:45:30'),(588,'966 Asuncin Way','','Hidalgo',212,'62703','995527378381','2006-02-15 04:45:30'),(589,'1584 Ljubertsy Lane','','England',494,'22954','285710089439','2006-02-15 04:45:30'),(590,'247 Jining Parkway','','Banjul',54,'53446','170115379190','2006-02-15 04:45:30'),(591,'773 Dallas Manor','','Buenos Aires',424,'12664','914466027044','2006-02-15 04:45:30'),(592,'1923 Stara Zagora Lane','','Nantou',546,'95179','182178609211','2006-02-15 04:45:30'),(593,'1402 Zanzibar Boulevard','','Guanajuato',106,'71102','387448063440','2006-02-15 04:45:30'),(594,'1464 Kursk Parkway','','Shandong',574,'17381','338758048786','2006-02-15 04:45:30'),(595,'1074 Sanaa Parkway','','Loja',311,'22474','154124128457','2006-02-15 04:45:30'),(596,'1759 Niznekamsk Avenue','','al-Manama',14,'39414','864392582257','2006-02-15 04:45:30'),(597,'32 Liaocheng Way','','Minas Gerais',248,'1944','410877354933','2006-02-15 04:45:30'),(598,'42 Fontana Avenue','','Fejr',512,'14684','437829801725','2006-02-15 04:45:30'),(599,'1895 Zhezqazghan Drive','','California',177,'36693','137809746111','2006-02-15 04:45:30'),(600,'1837 Kaduna Parkway','','Inner Mongolia',241,'82580','640843562301','2006-02-15 04:45:30'),(601,'844 Bucuresti Place','','Liaoning',242,'36603','935952366111','2006-02-15 04:45:30'),(602,'1101 Bucuresti Boulevard','','West Greece',401,'97661','199514580428','2006-02-15 04:45:30'),(603,'1103 Quilmes Boulevard','','Piura',503,'52137','644021380889','2006-02-15 04:45:30'),(604,'1331 Usak Boulevard','','Vaud',296,'61960','145308717464','2006-02-15 04:45:30'),(605,'1325 Fukuyama Street','','Heilongjiang',537,'27107','288241215394','2006-02-15 04:45:30'); +COMMIT; + +-- +-- Dumping data for table category +-- + +SET AUTOCOMMIT=0; +INSERT INTO category VALUES (1,'Action','2006-02-15 04:46:27'),(2,'Animation','2006-02-15 04:46:27'),(3,'Children','2006-02-15 04:46:27'),(4,'Classics','2006-02-15 04:46:27'),(5,'Comedy','2006-02-15 04:46:27'),(6,'Documentary','2006-02-15 04:46:27'),(7,'Drama','2006-02-15 04:46:27'),(8,'Family','2006-02-15 04:46:27'),(9,'Foreign','2006-02-15 04:46:27'),(10,'Games','2006-02-15 04:46:27'),(11,'Horror','2006-02-15 04:46:27'),(12,'Music','2006-02-15 04:46:27'),(13,'New','2006-02-15 04:46:27'),(14,'Sci-Fi','2006-02-15 04:46:27'),(15,'Sports','2006-02-15 04:46:27'),(16,'Travel','2006-02-15 04:46:27'); +COMMIT; + +-- +-- Dumping data for table city +-- + +SET AUTOCOMMIT=0; +INSERT INTO city VALUES (1,'A Corua (La Corua)',87,'2006-02-15 04:45:25'),(2,'Abha',82,'2006-02-15 04:45:25'),(3,'Abu Dhabi',101,'2006-02-15 04:45:25'),(4,'Acua',60,'2006-02-15 04:45:25'),(5,'Adana',97,'2006-02-15 04:45:25'),(6,'Addis Abeba',31,'2006-02-15 04:45:25'),(7,'Aden',107,'2006-02-15 04:45:25'),(8,'Adoni',44,'2006-02-15 04:45:25'),(9,'Ahmadnagar',44,'2006-02-15 04:45:25'),(10,'Akishima',50,'2006-02-15 04:45:25'),(11,'Akron',103,'2006-02-15 04:45:25'),(12,'al-Ayn',101,'2006-02-15 04:45:25'),(13,'al-Hawiya',82,'2006-02-15 04:45:25'),(14,'al-Manama',11,'2006-02-15 04:45:25'),(15,'al-Qadarif',89,'2006-02-15 04:45:25'),(16,'al-Qatif',82,'2006-02-15 04:45:25'),(17,'Alessandria',49,'2006-02-15 04:45:25'),(18,'Allappuzha (Alleppey)',44,'2006-02-15 04:45:25'),(19,'Allende',60,'2006-02-15 04:45:25'),(20,'Almirante Brown',6,'2006-02-15 04:45:25'),(21,'Alvorada',15,'2006-02-15 04:45:25'),(22,'Ambattur',44,'2006-02-15 04:45:25'),(23,'Amersfoort',67,'2006-02-15 04:45:25'),(24,'Amroha',44,'2006-02-15 04:45:25'),(25,'Angra dos Reis',15,'2006-02-15 04:45:25'),(26,'Anpolis',15,'2006-02-15 04:45:25'),(27,'Antofagasta',22,'2006-02-15 04:45:25'),(28,'Aparecida de Goinia',15,'2006-02-15 04:45:25'),(29,'Apeldoorn',67,'2006-02-15 04:45:25'),(30,'Araatuba',15,'2006-02-15 04:45:25'),(31,'Arak',46,'2006-02-15 04:45:25'),(32,'Arecibo',77,'2006-02-15 04:45:25'),(33,'Arlington',103,'2006-02-15 04:45:25'),(34,'Ashdod',48,'2006-02-15 04:45:25'),(35,'Ashgabat',98,'2006-02-15 04:45:25'),(36,'Ashqelon',48,'2006-02-15 04:45:25'),(37,'Asuncin',73,'2006-02-15 04:45:25'),(38,'Athenai',39,'2006-02-15 04:45:25'),(39,'Atinsk',80,'2006-02-15 04:45:25'),(40,'Atlixco',60,'2006-02-15 04:45:25'),(41,'Augusta-Richmond County',103,'2006-02-15 04:45:25'),(42,'Aurora',103,'2006-02-15 04:45:25'),(43,'Avellaneda',6,'2006-02-15 04:45:25'),(44,'Bag',15,'2006-02-15 04:45:25'),(45,'Baha Blanca',6,'2006-02-15 04:45:25'),(46,'Baicheng',23,'2006-02-15 04:45:25'),(47,'Baiyin',23,'2006-02-15 04:45:25'),(48,'Baku',10,'2006-02-15 04:45:25'),(49,'Balaiha',80,'2006-02-15 04:45:25'),(50,'Balikesir',97,'2006-02-15 04:45:25'),(51,'Balurghat',44,'2006-02-15 04:45:25'),(52,'Bamenda',19,'2006-02-15 04:45:25'),(53,'Bandar Seri Begawan',16,'2006-02-15 04:45:25'),(54,'Banjul',37,'2006-02-15 04:45:25'),(55,'Barcelona',104,'2006-02-15 04:45:25'),(56,'Basel',91,'2006-02-15 04:45:25'),(57,'Bat Yam',48,'2006-02-15 04:45:25'),(58,'Batman',97,'2006-02-15 04:45:25'),(59,'Batna',2,'2006-02-15 04:45:25'),(60,'Battambang',18,'2006-02-15 04:45:25'),(61,'Baybay',75,'2006-02-15 04:45:25'),(62,'Bayugan',75,'2006-02-15 04:45:25'),(63,'Bchar',2,'2006-02-15 04:45:25'),(64,'Beira',63,'2006-02-15 04:45:25'),(65,'Bellevue',103,'2006-02-15 04:45:25'),(66,'Belm',15,'2006-02-15 04:45:25'),(67,'Benguela',4,'2006-02-15 04:45:25'),(68,'Beni-Mellal',62,'2006-02-15 04:45:25'),(69,'Benin City',69,'2006-02-15 04:45:25'),(70,'Bergamo',49,'2006-02-15 04:45:25'),(71,'Berhampore (Baharampur)',44,'2006-02-15 04:45:25'),(72,'Bern',91,'2006-02-15 04:45:25'),(73,'Bhavnagar',44,'2006-02-15 04:45:25'),(74,'Bhilwara',44,'2006-02-15 04:45:25'),(75,'Bhimavaram',44,'2006-02-15 04:45:25'),(76,'Bhopal',44,'2006-02-15 04:45:25'),(77,'Bhusawal',44,'2006-02-15 04:45:25'),(78,'Bijapur',44,'2006-02-15 04:45:25'),(79,'Bilbays',29,'2006-02-15 04:45:25'),(80,'Binzhou',23,'2006-02-15 04:45:25'),(81,'Birgunj',66,'2006-02-15 04:45:25'),(82,'Bislig',75,'2006-02-15 04:45:25'),(83,'Blumenau',15,'2006-02-15 04:45:25'),(84,'Boa Vista',15,'2006-02-15 04:45:25'),(85,'Boksburg',85,'2006-02-15 04:45:25'),(86,'Botosani',78,'2006-02-15 04:45:25'),(87,'Botshabelo',85,'2006-02-15 04:45:25'),(88,'Bradford',102,'2006-02-15 04:45:25'),(89,'Braslia',15,'2006-02-15 04:45:25'),(90,'Bratislava',84,'2006-02-15 04:45:25'),(91,'Brescia',49,'2006-02-15 04:45:25'),(92,'Brest',34,'2006-02-15 04:45:25'),(93,'Brindisi',49,'2006-02-15 04:45:25'),(94,'Brockton',103,'2006-02-15 04:45:25'),(95,'Bucuresti',78,'2006-02-15 04:45:25'),(96,'Buenaventura',24,'2006-02-15 04:45:25'),(97,'Bydgoszcz',76,'2006-02-15 04:45:25'),(98,'Cabuyao',75,'2006-02-15 04:45:25'),(99,'Callao',74,'2006-02-15 04:45:25'),(100,'Cam Ranh',105,'2006-02-15 04:45:25'),(101,'Cape Coral',103,'2006-02-15 04:45:25'),(102,'Caracas',104,'2006-02-15 04:45:25'),(103,'Carmen',60,'2006-02-15 04:45:25'),(104,'Cavite',75,'2006-02-15 04:45:25'),(105,'Cayenne',35,'2006-02-15 04:45:25'),(106,'Celaya',60,'2006-02-15 04:45:25'),(107,'Chandrapur',44,'2006-02-15 04:45:25'),(108,'Changhwa',92,'2006-02-15 04:45:25'),(109,'Changzhou',23,'2006-02-15 04:45:25'),(110,'Chapra',44,'2006-02-15 04:45:25'),(111,'Charlotte Amalie',106,'2006-02-15 04:45:25'),(112,'Chatsworth',85,'2006-02-15 04:45:25'),(113,'Cheju',86,'2006-02-15 04:45:25'),(114,'Chiayi',92,'2006-02-15 04:45:25'),(115,'Chisinau',61,'2006-02-15 04:45:25'),(116,'Chungho',92,'2006-02-15 04:45:25'),(117,'Cianjur',45,'2006-02-15 04:45:25'),(118,'Ciomas',45,'2006-02-15 04:45:25'),(119,'Ciparay',45,'2006-02-15 04:45:25'),(120,'Citrus Heights',103,'2006-02-15 04:45:25'),(121,'Citt del Vaticano',41,'2006-02-15 04:45:25'),(122,'Ciudad del Este',73,'2006-02-15 04:45:25'),(123,'Clarksville',103,'2006-02-15 04:45:25'),(124,'Coacalco de Berriozbal',60,'2006-02-15 04:45:25'),(125,'Coatzacoalcos',60,'2006-02-15 04:45:25'),(126,'Compton',103,'2006-02-15 04:45:25'),(127,'Coquimbo',22,'2006-02-15 04:45:25'),(128,'Crdoba',6,'2006-02-15 04:45:25'),(129,'Cuauhtmoc',60,'2006-02-15 04:45:25'),(130,'Cuautla',60,'2006-02-15 04:45:25'),(131,'Cuernavaca',60,'2006-02-15 04:45:25'),(132,'Cuman',104,'2006-02-15 04:45:25'),(133,'Czestochowa',76,'2006-02-15 04:45:25'),(134,'Dadu',72,'2006-02-15 04:45:25'),(135,'Dallas',103,'2006-02-15 04:45:25'),(136,'Datong',23,'2006-02-15 04:45:25'),(137,'Daugavpils',54,'2006-02-15 04:45:25'),(138,'Davao',75,'2006-02-15 04:45:25'),(139,'Daxian',23,'2006-02-15 04:45:25'),(140,'Dayton',103,'2006-02-15 04:45:25'),(141,'Deba Habe',69,'2006-02-15 04:45:25'),(142,'Denizli',97,'2006-02-15 04:45:25'),(143,'Dhaka',12,'2006-02-15 04:45:25'),(144,'Dhule (Dhulia)',44,'2006-02-15 04:45:25'),(145,'Dongying',23,'2006-02-15 04:45:25'),(146,'Donostia-San Sebastin',87,'2006-02-15 04:45:25'),(147,'Dos Quebradas',24,'2006-02-15 04:45:25'),(148,'Duisburg',38,'2006-02-15 04:45:25'),(149,'Dundee',102,'2006-02-15 04:45:25'),(150,'Dzerzinsk',80,'2006-02-15 04:45:25'),(151,'Ede',67,'2006-02-15 04:45:25'),(152,'Effon-Alaiye',69,'2006-02-15 04:45:25'),(153,'El Alto',14,'2006-02-15 04:45:25'),(154,'El Fuerte',60,'2006-02-15 04:45:25'),(155,'El Monte',103,'2006-02-15 04:45:25'),(156,'Elista',80,'2006-02-15 04:45:25'),(157,'Emeishan',23,'2006-02-15 04:45:25'),(158,'Emmen',67,'2006-02-15 04:45:25'),(159,'Enshi',23,'2006-02-15 04:45:25'),(160,'Erlangen',38,'2006-02-15 04:45:25'),(161,'Escobar',6,'2006-02-15 04:45:25'),(162,'Esfahan',46,'2006-02-15 04:45:25'),(163,'Eskisehir',97,'2006-02-15 04:45:25'),(164,'Etawah',44,'2006-02-15 04:45:25'),(165,'Ezeiza',6,'2006-02-15 04:45:25'),(166,'Ezhou',23,'2006-02-15 04:45:25'),(167,'Faaa',36,'2006-02-15 04:45:25'),(168,'Fengshan',92,'2006-02-15 04:45:25'),(169,'Firozabad',44,'2006-02-15 04:45:25'),(170,'Florencia',24,'2006-02-15 04:45:25'),(171,'Fontana',103,'2006-02-15 04:45:25'),(172,'Fukuyama',50,'2006-02-15 04:45:25'),(173,'Funafuti',99,'2006-02-15 04:45:25'),(174,'Fuyu',23,'2006-02-15 04:45:25'),(175,'Fuzhou',23,'2006-02-15 04:45:25'),(176,'Gandhinagar',44,'2006-02-15 04:45:25'),(177,'Garden Grove',103,'2006-02-15 04:45:25'),(178,'Garland',103,'2006-02-15 04:45:25'),(179,'Gatineau',20,'2006-02-15 04:45:25'),(180,'Gaziantep',97,'2006-02-15 04:45:25'),(181,'Gijn',87,'2006-02-15 04:45:25'),(182,'Gingoog',75,'2006-02-15 04:45:25'),(183,'Goinia',15,'2006-02-15 04:45:25'),(184,'Gorontalo',45,'2006-02-15 04:45:25'),(185,'Grand Prairie',103,'2006-02-15 04:45:25'),(186,'Graz',9,'2006-02-15 04:45:25'),(187,'Greensboro',103,'2006-02-15 04:45:25'),(188,'Guadalajara',60,'2006-02-15 04:45:25'),(189,'Guaruj',15,'2006-02-15 04:45:25'),(190,'guas Lindas de Gois',15,'2006-02-15 04:45:25'),(191,'Gulbarga',44,'2006-02-15 04:45:25'),(192,'Hagonoy',75,'2006-02-15 04:45:25'),(193,'Haining',23,'2006-02-15 04:45:25'),(194,'Haiphong',105,'2006-02-15 04:45:25'),(195,'Haldia',44,'2006-02-15 04:45:25'),(196,'Halifax',20,'2006-02-15 04:45:25'),(197,'Halisahar',44,'2006-02-15 04:45:25'),(198,'Halle/Saale',38,'2006-02-15 04:45:25'),(199,'Hami',23,'2006-02-15 04:45:25'),(200,'Hamilton',68,'2006-02-15 04:45:25'),(201,'Hanoi',105,'2006-02-15 04:45:25'),(202,'Hidalgo',60,'2006-02-15 04:45:25'),(203,'Higashiosaka',50,'2006-02-15 04:45:25'),(204,'Hino',50,'2006-02-15 04:45:25'),(205,'Hiroshima',50,'2006-02-15 04:45:25'),(206,'Hodeida',107,'2006-02-15 04:45:25'),(207,'Hohhot',23,'2006-02-15 04:45:25'),(208,'Hoshiarpur',44,'2006-02-15 04:45:25'),(209,'Hsichuh',92,'2006-02-15 04:45:25'),(210,'Huaian',23,'2006-02-15 04:45:25'),(211,'Hubli-Dharwad',44,'2006-02-15 04:45:25'),(212,'Huejutla de Reyes',60,'2006-02-15 04:45:25'),(213,'Huixquilucan',60,'2006-02-15 04:45:25'),(214,'Hunuco',74,'2006-02-15 04:45:25'),(215,'Ibirit',15,'2006-02-15 04:45:25'),(216,'Idfu',29,'2006-02-15 04:45:25'),(217,'Ife',69,'2006-02-15 04:45:25'),(218,'Ikerre',69,'2006-02-15 04:45:25'),(219,'Iligan',75,'2006-02-15 04:45:25'),(220,'Ilorin',69,'2006-02-15 04:45:25'),(221,'Imus',75,'2006-02-15 04:45:25'),(222,'Inegl',97,'2006-02-15 04:45:25'),(223,'Ipoh',59,'2006-02-15 04:45:25'),(224,'Isesaki',50,'2006-02-15 04:45:25'),(225,'Ivanovo',80,'2006-02-15 04:45:25'),(226,'Iwaki',50,'2006-02-15 04:45:25'),(227,'Iwakuni',50,'2006-02-15 04:45:25'),(228,'Iwatsuki',50,'2006-02-15 04:45:25'),(229,'Izumisano',50,'2006-02-15 04:45:25'),(230,'Jaffna',88,'2006-02-15 04:45:25'),(231,'Jaipur',44,'2006-02-15 04:45:25'),(232,'Jakarta',45,'2006-02-15 04:45:25'),(233,'Jalib al-Shuyukh',53,'2006-02-15 04:45:25'),(234,'Jamalpur',12,'2006-02-15 04:45:25'),(235,'Jaroslavl',80,'2006-02-15 04:45:25'),(236,'Jastrzebie-Zdrj',76,'2006-02-15 04:45:25'),(237,'Jedda',82,'2006-02-15 04:45:25'),(238,'Jelets',80,'2006-02-15 04:45:25'),(239,'Jhansi',44,'2006-02-15 04:45:25'),(240,'Jinchang',23,'2006-02-15 04:45:25'),(241,'Jining',23,'2006-02-15 04:45:25'),(242,'Jinzhou',23,'2006-02-15 04:45:25'),(243,'Jodhpur',44,'2006-02-15 04:45:25'),(244,'Johannesburg',85,'2006-02-15 04:45:25'),(245,'Joliet',103,'2006-02-15 04:45:25'),(246,'Jos Azueta',60,'2006-02-15 04:45:25'),(247,'Juazeiro do Norte',15,'2006-02-15 04:45:25'),(248,'Juiz de Fora',15,'2006-02-15 04:45:25'),(249,'Junan',23,'2006-02-15 04:45:25'),(250,'Jurez',60,'2006-02-15 04:45:25'),(251,'Kabul',1,'2006-02-15 04:45:25'),(252,'Kaduna',69,'2006-02-15 04:45:25'),(253,'Kakamigahara',50,'2006-02-15 04:45:25'),(254,'Kaliningrad',80,'2006-02-15 04:45:25'),(255,'Kalisz',76,'2006-02-15 04:45:25'),(256,'Kamakura',50,'2006-02-15 04:45:25'),(257,'Kamarhati',44,'2006-02-15 04:45:25'),(258,'Kamjanets-Podilskyi',100,'2006-02-15 04:45:25'),(259,'Kamyin',80,'2006-02-15 04:45:25'),(260,'Kanazawa',50,'2006-02-15 04:45:25'),(261,'Kanchrapara',44,'2006-02-15 04:45:25'),(262,'Kansas City',103,'2006-02-15 04:45:25'),(263,'Karnal',44,'2006-02-15 04:45:25'),(264,'Katihar',44,'2006-02-15 04:45:25'),(265,'Kermanshah',46,'2006-02-15 04:45:25'),(266,'Kilis',97,'2006-02-15 04:45:25'),(267,'Kimberley',85,'2006-02-15 04:45:25'),(268,'Kimchon',86,'2006-02-15 04:45:25'),(269,'Kingstown',81,'2006-02-15 04:45:25'),(270,'Kirovo-Tepetsk',80,'2006-02-15 04:45:25'),(271,'Kisumu',52,'2006-02-15 04:45:25'),(272,'Kitwe',109,'2006-02-15 04:45:25'),(273,'Klerksdorp',85,'2006-02-15 04:45:25'),(274,'Kolpino',80,'2006-02-15 04:45:25'),(275,'Konotop',100,'2006-02-15 04:45:25'),(276,'Koriyama',50,'2006-02-15 04:45:25'),(277,'Korla',23,'2006-02-15 04:45:25'),(278,'Korolev',80,'2006-02-15 04:45:25'),(279,'Kowloon and New Kowloon',42,'2006-02-15 04:45:25'),(280,'Kragujevac',108,'2006-02-15 04:45:25'),(281,'Ktahya',97,'2006-02-15 04:45:25'),(282,'Kuching',59,'2006-02-15 04:45:25'),(283,'Kumbakonam',44,'2006-02-15 04:45:25'),(284,'Kurashiki',50,'2006-02-15 04:45:25'),(285,'Kurgan',80,'2006-02-15 04:45:25'),(286,'Kursk',80,'2006-02-15 04:45:25'),(287,'Kuwana',50,'2006-02-15 04:45:25'),(288,'La Paz',60,'2006-02-15 04:45:25'),(289,'La Plata',6,'2006-02-15 04:45:25'),(290,'La Romana',27,'2006-02-15 04:45:25'),(291,'Laiwu',23,'2006-02-15 04:45:25'),(292,'Lancaster',103,'2006-02-15 04:45:25'),(293,'Laohekou',23,'2006-02-15 04:45:25'),(294,'Lapu-Lapu',75,'2006-02-15 04:45:25'),(295,'Laredo',103,'2006-02-15 04:45:25'),(296,'Lausanne',91,'2006-02-15 04:45:25'),(297,'Le Mans',34,'2006-02-15 04:45:25'),(298,'Lengshuijiang',23,'2006-02-15 04:45:25'),(299,'Leshan',23,'2006-02-15 04:45:25'),(300,'Lethbridge',20,'2006-02-15 04:45:25'),(301,'Lhokseumawe',45,'2006-02-15 04:45:25'),(302,'Liaocheng',23,'2006-02-15 04:45:25'),(303,'Liepaja',54,'2006-02-15 04:45:25'),(304,'Lilongwe',58,'2006-02-15 04:45:25'),(305,'Lima',74,'2006-02-15 04:45:25'),(306,'Lincoln',103,'2006-02-15 04:45:25'),(307,'Linz',9,'2006-02-15 04:45:25'),(308,'Lipetsk',80,'2006-02-15 04:45:25'),(309,'Livorno',49,'2006-02-15 04:45:25'),(310,'Ljubertsy',80,'2006-02-15 04:45:25'),(311,'Loja',28,'2006-02-15 04:45:25'),(312,'London',102,'2006-02-15 04:45:25'),(313,'London',20,'2006-02-15 04:45:25'),(314,'Lublin',76,'2006-02-15 04:45:25'),(315,'Lubumbashi',25,'2006-02-15 04:45:25'),(316,'Lungtan',92,'2006-02-15 04:45:25'),(317,'Luzinia',15,'2006-02-15 04:45:25'),(318,'Madiun',45,'2006-02-15 04:45:25'),(319,'Mahajanga',57,'2006-02-15 04:45:25'),(320,'Maikop',80,'2006-02-15 04:45:25'),(321,'Malm',90,'2006-02-15 04:45:25'),(322,'Manchester',103,'2006-02-15 04:45:25'),(323,'Mandaluyong',75,'2006-02-15 04:45:25'),(324,'Mandi Bahauddin',72,'2006-02-15 04:45:25'),(325,'Mannheim',38,'2006-02-15 04:45:25'),(326,'Maracabo',104,'2006-02-15 04:45:25'),(327,'Mardan',72,'2006-02-15 04:45:25'),(328,'Maring',15,'2006-02-15 04:45:25'),(329,'Masqat',71,'2006-02-15 04:45:25'),(330,'Matamoros',60,'2006-02-15 04:45:25'),(331,'Matsue',50,'2006-02-15 04:45:25'),(332,'Meixian',23,'2006-02-15 04:45:25'),(333,'Memphis',103,'2006-02-15 04:45:25'),(334,'Merlo',6,'2006-02-15 04:45:25'),(335,'Mexicali',60,'2006-02-15 04:45:25'),(336,'Miraj',44,'2006-02-15 04:45:25'),(337,'Mit Ghamr',29,'2006-02-15 04:45:25'),(338,'Miyakonojo',50,'2006-02-15 04:45:25'),(339,'Mogiljov',13,'2006-02-15 04:45:25'),(340,'Molodetno',13,'2006-02-15 04:45:25'),(341,'Monclova',60,'2006-02-15 04:45:25'),(342,'Monywa',64,'2006-02-15 04:45:25'),(343,'Moscow',80,'2006-02-15 04:45:25'),(344,'Mosul',47,'2006-02-15 04:45:25'),(345,'Mukateve',100,'2006-02-15 04:45:25'),(346,'Munger (Monghyr)',44,'2006-02-15 04:45:25'),(347,'Mwanza',93,'2006-02-15 04:45:25'),(348,'Mwene-Ditu',25,'2006-02-15 04:45:25'),(349,'Myingyan',64,'2006-02-15 04:45:25'),(350,'Mysore',44,'2006-02-15 04:45:25'),(351,'Naala-Porto',63,'2006-02-15 04:45:25'),(352,'Nabereznyje Telny',80,'2006-02-15 04:45:25'),(353,'Nador',62,'2006-02-15 04:45:25'),(354,'Nagaon',44,'2006-02-15 04:45:25'),(355,'Nagareyama',50,'2006-02-15 04:45:25'),(356,'Najafabad',46,'2006-02-15 04:45:25'),(357,'Naju',86,'2006-02-15 04:45:25'),(358,'Nakhon Sawan',94,'2006-02-15 04:45:25'),(359,'Nam Dinh',105,'2006-02-15 04:45:25'),(360,'Namibe',4,'2006-02-15 04:45:25'),(361,'Nantou',92,'2006-02-15 04:45:25'),(362,'Nanyang',23,'2006-02-15 04:45:25'),(363,'NDjamna',21,'2006-02-15 04:45:25'),(364,'Newcastle',85,'2006-02-15 04:45:25'),(365,'Nezahualcyotl',60,'2006-02-15 04:45:25'),(366,'Nha Trang',105,'2006-02-15 04:45:25'),(367,'Niznekamsk',80,'2006-02-15 04:45:25'),(368,'Novi Sad',108,'2006-02-15 04:45:25'),(369,'Novoterkassk',80,'2006-02-15 04:45:25'),(370,'Nukualofa',95,'2006-02-15 04:45:25'),(371,'Nuuk',40,'2006-02-15 04:45:25'),(372,'Nyeri',52,'2006-02-15 04:45:25'),(373,'Ocumare del Tuy',104,'2006-02-15 04:45:25'),(374,'Ogbomosho',69,'2006-02-15 04:45:25'),(375,'Okara',72,'2006-02-15 04:45:25'),(376,'Okayama',50,'2006-02-15 04:45:25'),(377,'Okinawa',50,'2006-02-15 04:45:25'),(378,'Olomouc',26,'2006-02-15 04:45:25'),(379,'Omdurman',89,'2006-02-15 04:45:25'),(380,'Omiya',50,'2006-02-15 04:45:25'),(381,'Ondo',69,'2006-02-15 04:45:25'),(382,'Onomichi',50,'2006-02-15 04:45:25'),(383,'Oshawa',20,'2006-02-15 04:45:25'),(384,'Osmaniye',97,'2006-02-15 04:45:25'),(385,'ostka',100,'2006-02-15 04:45:25'),(386,'Otsu',50,'2006-02-15 04:45:25'),(387,'Oulu',33,'2006-02-15 04:45:25'),(388,'Ourense (Orense)',87,'2006-02-15 04:45:25'),(389,'Owo',69,'2006-02-15 04:45:25'),(390,'Oyo',69,'2006-02-15 04:45:25'),(391,'Ozamis',75,'2006-02-15 04:45:25'),(392,'Paarl',85,'2006-02-15 04:45:25'),(393,'Pachuca de Soto',60,'2006-02-15 04:45:25'),(394,'Pak Kret',94,'2006-02-15 04:45:25'),(395,'Palghat (Palakkad)',44,'2006-02-15 04:45:25'),(396,'Pangkal Pinang',45,'2006-02-15 04:45:25'),(397,'Papeete',36,'2006-02-15 04:45:25'),(398,'Parbhani',44,'2006-02-15 04:45:25'),(399,'Pathankot',44,'2006-02-15 04:45:25'),(400,'Patiala',44,'2006-02-15 04:45:25'),(401,'Patras',39,'2006-02-15 04:45:25'),(402,'Pavlodar',51,'2006-02-15 04:45:25'),(403,'Pemalang',45,'2006-02-15 04:45:25'),(404,'Peoria',103,'2006-02-15 04:45:25'),(405,'Pereira',24,'2006-02-15 04:45:25'),(406,'Phnom Penh',18,'2006-02-15 04:45:25'),(407,'Pingxiang',23,'2006-02-15 04:45:25'),(408,'Pjatigorsk',80,'2006-02-15 04:45:25'),(409,'Plock',76,'2006-02-15 04:45:25'),(410,'Po',15,'2006-02-15 04:45:25'),(411,'Ponce',77,'2006-02-15 04:45:25'),(412,'Pontianak',45,'2006-02-15 04:45:25'),(413,'Poos de Caldas',15,'2006-02-15 04:45:25'),(414,'Portoviejo',28,'2006-02-15 04:45:25'),(415,'Probolinggo',45,'2006-02-15 04:45:25'),(416,'Pudukkottai',44,'2006-02-15 04:45:25'),(417,'Pune',44,'2006-02-15 04:45:25'),(418,'Purnea (Purnia)',44,'2006-02-15 04:45:25'),(419,'Purwakarta',45,'2006-02-15 04:45:25'),(420,'Pyongyang',70,'2006-02-15 04:45:25'),(421,'Qalyub',29,'2006-02-15 04:45:25'),(422,'Qinhuangdao',23,'2006-02-15 04:45:25'),(423,'Qomsheh',46,'2006-02-15 04:45:25'),(424,'Quilmes',6,'2006-02-15 04:45:25'),(425,'Rae Bareli',44,'2006-02-15 04:45:25'),(426,'Rajkot',44,'2006-02-15 04:45:25'),(427,'Rampur',44,'2006-02-15 04:45:25'),(428,'Rancagua',22,'2006-02-15 04:45:25'),(429,'Ranchi',44,'2006-02-15 04:45:25'),(430,'Richmond Hill',20,'2006-02-15 04:45:25'),(431,'Rio Claro',15,'2006-02-15 04:45:25'),(432,'Rizhao',23,'2006-02-15 04:45:25'),(433,'Roanoke',103,'2006-02-15 04:45:25'),(434,'Robamba',28,'2006-02-15 04:45:25'),(435,'Rockford',103,'2006-02-15 04:45:25'),(436,'Ruse',17,'2006-02-15 04:45:25'),(437,'Rustenburg',85,'2006-02-15 04:45:25'),(438,'s-Hertogenbosch',67,'2006-02-15 04:45:25'),(439,'Saarbrcken',38,'2006-02-15 04:45:25'),(440,'Sagamihara',50,'2006-02-15 04:45:25'),(441,'Saint Louis',103,'2006-02-15 04:45:25'),(442,'Saint-Denis',79,'2006-02-15 04:45:25'),(443,'Sal',62,'2006-02-15 04:45:25'),(444,'Salala',71,'2006-02-15 04:45:25'),(445,'Salamanca',60,'2006-02-15 04:45:25'),(446,'Salinas',103,'2006-02-15 04:45:25'),(447,'Salzburg',9,'2006-02-15 04:45:25'),(448,'Sambhal',44,'2006-02-15 04:45:25'),(449,'San Bernardino',103,'2006-02-15 04:45:25'),(450,'San Felipe de Puerto Plata',27,'2006-02-15 04:45:25'),(451,'San Felipe del Progreso',60,'2006-02-15 04:45:25'),(452,'San Juan Bautista Tuxtepec',60,'2006-02-15 04:45:25'),(453,'San Lorenzo',73,'2006-02-15 04:45:25'),(454,'San Miguel de Tucumn',6,'2006-02-15 04:45:25'),(455,'Sanaa',107,'2006-02-15 04:45:25'),(456,'Santa Brbara dOeste',15,'2006-02-15 04:45:25'),(457,'Santa F',6,'2006-02-15 04:45:25'),(458,'Santa Rosa',75,'2006-02-15 04:45:25'),(459,'Santiago de Compostela',87,'2006-02-15 04:45:25'),(460,'Santiago de los Caballeros',27,'2006-02-15 04:45:25'),(461,'Santo Andr',15,'2006-02-15 04:45:25'),(462,'Sanya',23,'2006-02-15 04:45:25'),(463,'Sasebo',50,'2006-02-15 04:45:25'),(464,'Satna',44,'2006-02-15 04:45:25'),(465,'Sawhaj',29,'2006-02-15 04:45:25'),(466,'Serpuhov',80,'2006-02-15 04:45:25'),(467,'Shahr-e Kord',46,'2006-02-15 04:45:25'),(468,'Shanwei',23,'2006-02-15 04:45:25'),(469,'Shaoguan',23,'2006-02-15 04:45:25'),(470,'Sharja',101,'2006-02-15 04:45:25'),(471,'Shenzhen',23,'2006-02-15 04:45:25'),(472,'Shikarpur',72,'2006-02-15 04:45:25'),(473,'Shimoga',44,'2006-02-15 04:45:25'),(474,'Shimonoseki',50,'2006-02-15 04:45:25'),(475,'Shivapuri',44,'2006-02-15 04:45:25'),(476,'Shubra al-Khayma',29,'2006-02-15 04:45:25'),(477,'Siegen',38,'2006-02-15 04:45:25'),(478,'Siliguri (Shiliguri)',44,'2006-02-15 04:45:25'),(479,'Simferopol',100,'2006-02-15 04:45:25'),(480,'Sincelejo',24,'2006-02-15 04:45:25'),(481,'Sirjan',46,'2006-02-15 04:45:25'),(482,'Sivas',97,'2006-02-15 04:45:25'),(483,'Skikda',2,'2006-02-15 04:45:25'),(484,'Smolensk',80,'2006-02-15 04:45:25'),(485,'So Bernardo do Campo',15,'2006-02-15 04:45:25'),(486,'So Leopoldo',15,'2006-02-15 04:45:25'),(487,'Sogamoso',24,'2006-02-15 04:45:25'),(488,'Sokoto',69,'2006-02-15 04:45:25'),(489,'Songkhla',94,'2006-02-15 04:45:25'),(490,'Sorocaba',15,'2006-02-15 04:45:25'),(491,'Soshanguve',85,'2006-02-15 04:45:25'),(492,'Sousse',96,'2006-02-15 04:45:25'),(493,'South Hill',5,'2006-02-15 04:45:25'),(494,'Southampton',102,'2006-02-15 04:45:25'),(495,'Southend-on-Sea',102,'2006-02-15 04:45:25'),(496,'Southport',102,'2006-02-15 04:45:25'),(497,'Springs',85,'2006-02-15 04:45:25'),(498,'Stara Zagora',17,'2006-02-15 04:45:25'),(499,'Sterling Heights',103,'2006-02-15 04:45:25'),(500,'Stockport',102,'2006-02-15 04:45:25'),(501,'Sucre',14,'2006-02-15 04:45:25'),(502,'Suihua',23,'2006-02-15 04:45:25'),(503,'Sullana',74,'2006-02-15 04:45:25'),(504,'Sultanbeyli',97,'2006-02-15 04:45:25'),(505,'Sumqayit',10,'2006-02-15 04:45:25'),(506,'Sumy',100,'2006-02-15 04:45:25'),(507,'Sungai Petani',59,'2006-02-15 04:45:25'),(508,'Sunnyvale',103,'2006-02-15 04:45:25'),(509,'Surakarta',45,'2006-02-15 04:45:25'),(510,'Syktyvkar',80,'2006-02-15 04:45:25'),(511,'Syrakusa',49,'2006-02-15 04:45:25'),(512,'Szkesfehrvr',43,'2006-02-15 04:45:25'),(513,'Tabora',93,'2006-02-15 04:45:25'),(514,'Tabriz',46,'2006-02-15 04:45:25'),(515,'Tabuk',82,'2006-02-15 04:45:25'),(516,'Tafuna',3,'2006-02-15 04:45:25'),(517,'Taguig',75,'2006-02-15 04:45:25'),(518,'Taizz',107,'2006-02-15 04:45:25'),(519,'Talavera',75,'2006-02-15 04:45:25'),(520,'Tallahassee',103,'2006-02-15 04:45:25'),(521,'Tama',50,'2006-02-15 04:45:25'),(522,'Tambaram',44,'2006-02-15 04:45:25'),(523,'Tanauan',75,'2006-02-15 04:45:25'),(524,'Tandil',6,'2006-02-15 04:45:25'),(525,'Tangail',12,'2006-02-15 04:45:25'),(526,'Tanshui',92,'2006-02-15 04:45:25'),(527,'Tanza',75,'2006-02-15 04:45:25'),(528,'Tarlac',75,'2006-02-15 04:45:25'),(529,'Tarsus',97,'2006-02-15 04:45:25'),(530,'Tartu',30,'2006-02-15 04:45:25'),(531,'Teboksary',80,'2006-02-15 04:45:25'),(532,'Tegal',45,'2006-02-15 04:45:25'),(533,'Tel Aviv-Jaffa',48,'2006-02-15 04:45:25'),(534,'Tete',63,'2006-02-15 04:45:25'),(535,'Tianjin',23,'2006-02-15 04:45:25'),(536,'Tiefa',23,'2006-02-15 04:45:25'),(537,'Tieli',23,'2006-02-15 04:45:25'),(538,'Tokat',97,'2006-02-15 04:45:25'),(539,'Tonghae',86,'2006-02-15 04:45:25'),(540,'Tongliao',23,'2006-02-15 04:45:25'),(541,'Torren',60,'2006-02-15 04:45:25'),(542,'Touliu',92,'2006-02-15 04:45:25'),(543,'Toulon',34,'2006-02-15 04:45:25'),(544,'Toulouse',34,'2006-02-15 04:45:25'),(545,'Trshavn',32,'2006-02-15 04:45:25'),(546,'Tsaotun',92,'2006-02-15 04:45:25'),(547,'Tsuyama',50,'2006-02-15 04:45:25'),(548,'Tuguegarao',75,'2006-02-15 04:45:25'),(549,'Tychy',76,'2006-02-15 04:45:25'),(550,'Udaipur',44,'2006-02-15 04:45:25'),(551,'Udine',49,'2006-02-15 04:45:25'),(552,'Ueda',50,'2006-02-15 04:45:25'),(553,'Uijongbu',86,'2006-02-15 04:45:25'),(554,'Uluberia',44,'2006-02-15 04:45:25'),(555,'Urawa',50,'2006-02-15 04:45:25'),(556,'Uruapan',60,'2006-02-15 04:45:25'),(557,'Usak',97,'2006-02-15 04:45:25'),(558,'Usolje-Sibirskoje',80,'2006-02-15 04:45:25'),(559,'Uttarpara-Kotrung',44,'2006-02-15 04:45:25'),(560,'Vaduz',55,'2006-02-15 04:45:25'),(561,'Valencia',104,'2006-02-15 04:45:25'),(562,'Valle de la Pascua',104,'2006-02-15 04:45:25'),(563,'Valle de Santiago',60,'2006-02-15 04:45:25'),(564,'Valparai',44,'2006-02-15 04:45:25'),(565,'Vancouver',20,'2006-02-15 04:45:25'),(566,'Varanasi (Benares)',44,'2006-02-15 04:45:25'),(567,'Vicente Lpez',6,'2006-02-15 04:45:25'),(568,'Vijayawada',44,'2006-02-15 04:45:25'),(569,'Vila Velha',15,'2006-02-15 04:45:25'),(570,'Vilnius',56,'2006-02-15 04:45:25'),(571,'Vinh',105,'2006-02-15 04:45:25'),(572,'Vitria de Santo Anto',15,'2006-02-15 04:45:25'),(573,'Warren',103,'2006-02-15 04:45:25'),(574,'Weifang',23,'2006-02-15 04:45:25'),(575,'Witten',38,'2006-02-15 04:45:25'),(576,'Woodridge',8,'2006-02-15 04:45:25'),(577,'Wroclaw',76,'2006-02-15 04:45:25'),(578,'Xiangfan',23,'2006-02-15 04:45:25'),(579,'Xiangtan',23,'2006-02-15 04:45:25'),(580,'Xintai',23,'2006-02-15 04:45:25'),(581,'Xinxiang',23,'2006-02-15 04:45:25'),(582,'Yamuna Nagar',44,'2006-02-15 04:45:25'),(583,'Yangor',65,'2006-02-15 04:45:25'),(584,'Yantai',23,'2006-02-15 04:45:25'),(585,'Yaound',19,'2006-02-15 04:45:25'),(586,'Yerevan',7,'2006-02-15 04:45:25'),(587,'Yinchuan',23,'2006-02-15 04:45:25'),(588,'Yingkou',23,'2006-02-15 04:45:25'),(589,'York',102,'2006-02-15 04:45:25'),(590,'Yuncheng',23,'2006-02-15 04:45:25'),(591,'Yuzhou',23,'2006-02-15 04:45:25'),(592,'Zalantun',23,'2006-02-15 04:45:25'),(593,'Zanzibar',93,'2006-02-15 04:45:25'),(594,'Zaoyang',23,'2006-02-15 04:45:25'),(595,'Zapopan',60,'2006-02-15 04:45:25'),(596,'Zaria',69,'2006-02-15 04:45:25'),(597,'Zeleznogorsk',80,'2006-02-15 04:45:25'),(598,'Zhezqazghan',51,'2006-02-15 04:45:25'),(599,'Zhoushan',23,'2006-02-15 04:45:25'),(600,'Ziguinchor',83,'2006-02-15 04:45:25'); +COMMIT; + +-- +-- Dumping data for table country +-- + +SET AUTOCOMMIT=0; +INSERT INTO country VALUES (1,'Afghanistan','2006-02-15 04:44:00'),(2,'Algeria','2006-02-15 04:44:00'),(3,'American Samoa','2006-02-15 04:44:00'),(4,'Angola','2006-02-15 04:44:00'),(5,'Anguilla','2006-02-15 04:44:00'),(6,'Argentina','2006-02-15 04:44:00'),(7,'Armenia','2006-02-15 04:44:00'),(8,'Australia','2006-02-15 04:44:00'),(9,'Austria','2006-02-15 04:44:00'),(10,'Azerbaijan','2006-02-15 04:44:00'),(11,'Bahrain','2006-02-15 04:44:00'),(12,'Bangladesh','2006-02-15 04:44:00'),(13,'Belarus','2006-02-15 04:44:00'),(14,'Bolivia','2006-02-15 04:44:00'),(15,'Brazil','2006-02-15 04:44:00'),(16,'Brunei','2006-02-15 04:44:00'),(17,'Bulgaria','2006-02-15 04:44:00'),(18,'Cambodia','2006-02-15 04:44:00'),(19,'Cameroon','2006-02-15 04:44:00'),(20,'Canada','2006-02-15 04:44:00'),(21,'Chad','2006-02-15 04:44:00'),(22,'Chile','2006-02-15 04:44:00'),(23,'China','2006-02-15 04:44:00'),(24,'Colombia','2006-02-15 04:44:00'),(25,'Congo, The Democratic Republic of the','2006-02-15 04:44:00'),(26,'Czech Republic','2006-02-15 04:44:00'),(27,'Dominican Republic','2006-02-15 04:44:00'),(28,'Ecuador','2006-02-15 04:44:00'),(29,'Egypt','2006-02-15 04:44:00'),(30,'Estonia','2006-02-15 04:44:00'),(31,'Ethiopia','2006-02-15 04:44:00'),(32,'Faroe Islands','2006-02-15 04:44:00'),(33,'Finland','2006-02-15 04:44:00'),(34,'France','2006-02-15 04:44:00'),(35,'French Guiana','2006-02-15 04:44:00'),(36,'French Polynesia','2006-02-15 04:44:00'),(37,'Gambia','2006-02-15 04:44:00'),(38,'Germany','2006-02-15 04:44:00'),(39,'Greece','2006-02-15 04:44:00'),(40,'Greenland','2006-02-15 04:44:00'),(41,'Holy See (Vatican City State)','2006-02-15 04:44:00'),(42,'Hong Kong','2006-02-15 04:44:00'),(43,'Hungary','2006-02-15 04:44:00'),(44,'India','2006-02-15 04:44:00'),(45,'Indonesia','2006-02-15 04:44:00'),(46,'Iran','2006-02-15 04:44:00'),(47,'Iraq','2006-02-15 04:44:00'),(48,'Israel','2006-02-15 04:44:00'),(49,'Italy','2006-02-15 04:44:00'),(50,'Japan','2006-02-15 04:44:00'),(51,'Kazakstan','2006-02-15 04:44:00'),(52,'Kenya','2006-02-15 04:44:00'),(53,'Kuwait','2006-02-15 04:44:00'),(54,'Latvia','2006-02-15 04:44:00'),(55,'Liechtenstein','2006-02-15 04:44:00'),(56,'Lithuania','2006-02-15 04:44:00'),(57,'Madagascar','2006-02-15 04:44:00'),(58,'Malawi','2006-02-15 04:44:00'),(59,'Malaysia','2006-02-15 04:44:00'),(60,'Mexico','2006-02-15 04:44:00'),(61,'Moldova','2006-02-15 04:44:00'),(62,'Morocco','2006-02-15 04:44:00'),(63,'Mozambique','2006-02-15 04:44:00'),(64,'Myanmar','2006-02-15 04:44:00'),(65,'Nauru','2006-02-15 04:44:00'),(66,'Nepal','2006-02-15 04:44:00'),(67,'Netherlands','2006-02-15 04:44:00'),(68,'New Zealand','2006-02-15 04:44:00'),(69,'Nigeria','2006-02-15 04:44:00'),(70,'North Korea','2006-02-15 04:44:00'),(71,'Oman','2006-02-15 04:44:00'),(72,'Pakistan','2006-02-15 04:44:00'),(73,'Paraguay','2006-02-15 04:44:00'),(74,'Peru','2006-02-15 04:44:00'),(75,'Philippines','2006-02-15 04:44:00'),(76,'Poland','2006-02-15 04:44:00'),(77,'Puerto Rico','2006-02-15 04:44:00'),(78,'Romania','2006-02-15 04:44:00'),(79,'Runion','2006-02-15 04:44:00'),(80,'Russian Federation','2006-02-15 04:44:00'),(81,'Saint Vincent and the Grenadines','2006-02-15 04:44:00'),(82,'Saudi Arabia','2006-02-15 04:44:00'),(83,'Senegal','2006-02-15 04:44:00'),(84,'Slovakia','2006-02-15 04:44:00'),(85,'South Africa','2006-02-15 04:44:00'),(86,'South Korea','2006-02-15 04:44:00'),(87,'Spain','2006-02-15 04:44:00'),(88,'Sri Lanka','2006-02-15 04:44:00'),(89,'Sudan','2006-02-15 04:44:00'),(90,'Sweden','2006-02-15 04:44:00'),(91,'Switzerland','2006-02-15 04:44:00'),(92,'Taiwan','2006-02-15 04:44:00'),(93,'Tanzania','2006-02-15 04:44:00'),(94,'Thailand','2006-02-15 04:44:00'),(95,'Tonga','2006-02-15 04:44:00'),(96,'Tunisia','2006-02-15 04:44:00'),(97,'Turkey','2006-02-15 04:44:00'),(98,'Turkmenistan','2006-02-15 04:44:00'),(99,'Tuvalu','2006-02-15 04:44:00'),(100,'Ukraine','2006-02-15 04:44:00'),(101,'United Arab Emirates','2006-02-15 04:44:00'),(102,'United Kingdom','2006-02-15 04:44:00'),(103,'United States','2006-02-15 04:44:00'),(104,'Venezuela','2006-02-15 04:44:00'),(105,'Vietnam','2006-02-15 04:44:00'),(106,'Virgin Islands, U.S.','2006-02-15 04:44:00'),(107,'Yemen','2006-02-15 04:44:00'),(108,'Yugoslavia','2006-02-15 04:44:00'),(109,'Zambia','2006-02-15 04:44:00'); +COMMIT; + +-- +-- Dumping data for table customer +-- + +SET AUTOCOMMIT=0; +INSERT INTO customer VALUES (1,1,'MARY','SMITH','MARY.SMITH@sakilacustomer.org',5,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(2,1,'PATRICIA','JOHNSON','PATRICIA.JOHNSON@sakilacustomer.org',6,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(3,1,'LINDA','WILLIAMS','LINDA.WILLIAMS@sakilacustomer.org',7,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(4,2,'BARBARA','JONES','BARBARA.JONES@sakilacustomer.org',8,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(5,1,'ELIZABETH','BROWN','ELIZABETH.BROWN@sakilacustomer.org',9,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(6,2,'JENNIFER','DAVIS','JENNIFER.DAVIS@sakilacustomer.org',10,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(7,1,'MARIA','MILLER','MARIA.MILLER@sakilacustomer.org',11,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(8,2,'SUSAN','WILSON','SUSAN.WILSON@sakilacustomer.org',12,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(9,2,'MARGARET','MOORE','MARGARET.MOORE@sakilacustomer.org',13,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(10,1,'DOROTHY','TAYLOR','DOROTHY.TAYLOR@sakilacustomer.org',14,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(11,2,'LISA','ANDERSON','LISA.ANDERSON@sakilacustomer.org',15,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(12,1,'NANCY','THOMAS','NANCY.THOMAS@sakilacustomer.org',16,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(13,2,'KAREN','JACKSON','KAREN.JACKSON@sakilacustomer.org',17,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(14,2,'BETTY','WHITE','BETTY.WHITE@sakilacustomer.org',18,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(15,1,'HELEN','HARRIS','HELEN.HARRIS@sakilacustomer.org',19,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(16,2,'SANDRA','MARTIN','SANDRA.MARTIN@sakilacustomer.org',20,0,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(17,1,'DONNA','THOMPSON','DONNA.THOMPSON@sakilacustomer.org',21,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(18,2,'CAROL','GARCIA','CAROL.GARCIA@sakilacustomer.org',22,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(19,1,'RUTH','MARTINEZ','RUTH.MARTINEZ@sakilacustomer.org',23,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(20,2,'SHARON','ROBINSON','SHARON.ROBINSON@sakilacustomer.org',24,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(21,1,'MICHELLE','CLARK','MICHELLE.CLARK@sakilacustomer.org',25,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(22,1,'LAURA','RODRIGUEZ','LAURA.RODRIGUEZ@sakilacustomer.org',26,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(23,2,'SARAH','LEWIS','SARAH.LEWIS@sakilacustomer.org',27,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(24,2,'KIMBERLY','LEE','KIMBERLY.LEE@sakilacustomer.org',28,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(25,1,'DEBORAH','WALKER','DEBORAH.WALKER@sakilacustomer.org',29,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(26,2,'JESSICA','HALL','JESSICA.HALL@sakilacustomer.org',30,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(27,2,'SHIRLEY','ALLEN','SHIRLEY.ALLEN@sakilacustomer.org',31,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(28,1,'CYNTHIA','YOUNG','CYNTHIA.YOUNG@sakilacustomer.org',32,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(29,2,'ANGELA','HERNANDEZ','ANGELA.HERNANDEZ@sakilacustomer.org',33,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(30,1,'MELISSA','KING','MELISSA.KING@sakilacustomer.org',34,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(31,2,'BRENDA','WRIGHT','BRENDA.WRIGHT@sakilacustomer.org',35,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(32,1,'AMY','LOPEZ','AMY.LOPEZ@sakilacustomer.org',36,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(33,2,'ANNA','HILL','ANNA.HILL@sakilacustomer.org',37,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(34,2,'REBECCA','SCOTT','REBECCA.SCOTT@sakilacustomer.org',38,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(35,2,'VIRGINIA','GREEN','VIRGINIA.GREEN@sakilacustomer.org',39,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(36,2,'KATHLEEN','ADAMS','KATHLEEN.ADAMS@sakilacustomer.org',40,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(37,1,'PAMELA','BAKER','PAMELA.BAKER@sakilacustomer.org',41,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(38,1,'MARTHA','GONZALEZ','MARTHA.GONZALEZ@sakilacustomer.org',42,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(39,1,'DEBRA','NELSON','DEBRA.NELSON@sakilacustomer.org',43,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(40,2,'AMANDA','CARTER','AMANDA.CARTER@sakilacustomer.org',44,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(41,1,'STEPHANIE','MITCHELL','STEPHANIE.MITCHELL@sakilacustomer.org',45,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(42,2,'CAROLYN','PEREZ','CAROLYN.PEREZ@sakilacustomer.org',46,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(43,2,'CHRISTINE','ROBERTS','CHRISTINE.ROBERTS@sakilacustomer.org',47,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(44,1,'MARIE','TURNER','MARIE.TURNER@sakilacustomer.org',48,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(45,1,'JANET','PHILLIPS','JANET.PHILLIPS@sakilacustomer.org',49,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(46,2,'CATHERINE','CAMPBELL','CATHERINE.CAMPBELL@sakilacustomer.org',50,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(47,1,'FRANCES','PARKER','FRANCES.PARKER@sakilacustomer.org',51,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(48,1,'ANN','EVANS','ANN.EVANS@sakilacustomer.org',52,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(49,2,'JOYCE','EDWARDS','JOYCE.EDWARDS@sakilacustomer.org',53,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(50,1,'DIANE','COLLINS','DIANE.COLLINS@sakilacustomer.org',54,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(51,1,'ALICE','STEWART','ALICE.STEWART@sakilacustomer.org',55,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(52,1,'JULIE','SANCHEZ','JULIE.SANCHEZ@sakilacustomer.org',56,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(53,1,'HEATHER','MORRIS','HEATHER.MORRIS@sakilacustomer.org',57,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(54,1,'TERESA','ROGERS','TERESA.ROGERS@sakilacustomer.org',58,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(55,2,'DORIS','REED','DORIS.REED@sakilacustomer.org',59,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(56,1,'GLORIA','COOK','GLORIA.COOK@sakilacustomer.org',60,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(57,2,'EVELYN','MORGAN','EVELYN.MORGAN@sakilacustomer.org',61,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(58,1,'JEAN','BELL','JEAN.BELL@sakilacustomer.org',62,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(59,1,'CHERYL','MURPHY','CHERYL.MURPHY@sakilacustomer.org',63,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(60,1,'MILDRED','BAILEY','MILDRED.BAILEY@sakilacustomer.org',64,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(61,2,'KATHERINE','RIVERA','KATHERINE.RIVERA@sakilacustomer.org',65,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(62,1,'JOAN','COOPER','JOAN.COOPER@sakilacustomer.org',66,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(63,1,'ASHLEY','RICHARDSON','ASHLEY.RICHARDSON@sakilacustomer.org',67,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(64,2,'JUDITH','COX','JUDITH.COX@sakilacustomer.org',68,0,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(65,2,'ROSE','HOWARD','ROSE.HOWARD@sakilacustomer.org',69,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(66,2,'JANICE','WARD','JANICE.WARD@sakilacustomer.org',70,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(67,1,'KELLY','TORRES','KELLY.TORRES@sakilacustomer.org',71,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(68,1,'NICOLE','PETERSON','NICOLE.PETERSON@sakilacustomer.org',72,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(69,2,'JUDY','GRAY','JUDY.GRAY@sakilacustomer.org',73,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(70,2,'CHRISTINA','RAMIREZ','CHRISTINA.RAMIREZ@sakilacustomer.org',74,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(71,1,'KATHY','JAMES','KATHY.JAMES@sakilacustomer.org',75,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(72,2,'THERESA','WATSON','THERESA.WATSON@sakilacustomer.org',76,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(73,2,'BEVERLY','BROOKS','BEVERLY.BROOKS@sakilacustomer.org',77,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(74,1,'DENISE','KELLY','DENISE.KELLY@sakilacustomer.org',78,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(75,2,'TAMMY','SANDERS','TAMMY.SANDERS@sakilacustomer.org',79,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(76,2,'IRENE','PRICE','IRENE.PRICE@sakilacustomer.org',80,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(77,2,'JANE','BENNETT','JANE.BENNETT@sakilacustomer.org',81,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(78,1,'LORI','WOOD','LORI.WOOD@sakilacustomer.org',82,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(79,1,'RACHEL','BARNES','RACHEL.BARNES@sakilacustomer.org',83,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(80,1,'MARILYN','ROSS','MARILYN.ROSS@sakilacustomer.org',84,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(81,1,'ANDREA','HENDERSON','ANDREA.HENDERSON@sakilacustomer.org',85,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(82,1,'KATHRYN','COLEMAN','KATHRYN.COLEMAN@sakilacustomer.org',86,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(83,1,'LOUISE','JENKINS','LOUISE.JENKINS@sakilacustomer.org',87,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(84,2,'SARA','PERRY','SARA.PERRY@sakilacustomer.org',88,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(85,2,'ANNE','POWELL','ANNE.POWELL@sakilacustomer.org',89,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(86,2,'JACQUELINE','LONG','JACQUELINE.LONG@sakilacustomer.org',90,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(87,1,'WANDA','PATTERSON','WANDA.PATTERSON@sakilacustomer.org',91,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(88,2,'BONNIE','HUGHES','BONNIE.HUGHES@sakilacustomer.org',92,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(89,1,'JULIA','FLORES','JULIA.FLORES@sakilacustomer.org',93,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(90,2,'RUBY','WASHINGTON','RUBY.WASHINGTON@sakilacustomer.org',94,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(91,2,'LOIS','BUTLER','LOIS.BUTLER@sakilacustomer.org',95,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(92,2,'TINA','SIMMONS','TINA.SIMMONS@sakilacustomer.org',96,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(93,1,'PHYLLIS','FOSTER','PHYLLIS.FOSTER@sakilacustomer.org',97,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(94,1,'NORMA','GONZALES','NORMA.GONZALES@sakilacustomer.org',98,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(95,2,'PAULA','BRYANT','PAULA.BRYANT@sakilacustomer.org',99,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(96,1,'DIANA','ALEXANDER','DIANA.ALEXANDER@sakilacustomer.org',100,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(97,2,'ANNIE','RUSSELL','ANNIE.RUSSELL@sakilacustomer.org',101,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(98,1,'LILLIAN','GRIFFIN','LILLIAN.GRIFFIN@sakilacustomer.org',102,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(99,2,'EMILY','DIAZ','EMILY.DIAZ@sakilacustomer.org',103,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(100,1,'ROBIN','HAYES','ROBIN.HAYES@sakilacustomer.org',104,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(101,1,'PEGGY','MYERS','PEGGY.MYERS@sakilacustomer.org',105,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(102,1,'CRYSTAL','FORD','CRYSTAL.FORD@sakilacustomer.org',106,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(103,1,'GLADYS','HAMILTON','GLADYS.HAMILTON@sakilacustomer.org',107,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(104,1,'RITA','GRAHAM','RITA.GRAHAM@sakilacustomer.org',108,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(105,1,'DAWN','SULLIVAN','DAWN.SULLIVAN@sakilacustomer.org',109,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(106,1,'CONNIE','WALLACE','CONNIE.WALLACE@sakilacustomer.org',110,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(107,1,'FLORENCE','WOODS','FLORENCE.WOODS@sakilacustomer.org',111,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(108,1,'TRACY','COLE','TRACY.COLE@sakilacustomer.org',112,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(109,2,'EDNA','WEST','EDNA.WEST@sakilacustomer.org',113,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(110,2,'TIFFANY','JORDAN','TIFFANY.JORDAN@sakilacustomer.org',114,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(111,1,'CARMEN','OWENS','CARMEN.OWENS@sakilacustomer.org',115,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(112,2,'ROSA','REYNOLDS','ROSA.REYNOLDS@sakilacustomer.org',116,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(113,2,'CINDY','FISHER','CINDY.FISHER@sakilacustomer.org',117,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(114,2,'GRACE','ELLIS','GRACE.ELLIS@sakilacustomer.org',118,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(115,1,'WENDY','HARRISON','WENDY.HARRISON@sakilacustomer.org',119,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(116,1,'VICTORIA','GIBSON','VICTORIA.GIBSON@sakilacustomer.org',120,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(117,1,'EDITH','MCDONALD','EDITH.MCDONALD@sakilacustomer.org',121,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(118,1,'KIM','CRUZ','KIM.CRUZ@sakilacustomer.org',122,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(119,1,'SHERRY','MARSHALL','SHERRY.MARSHALL@sakilacustomer.org',123,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(120,2,'SYLVIA','ORTIZ','SYLVIA.ORTIZ@sakilacustomer.org',124,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(121,1,'JOSEPHINE','GOMEZ','JOSEPHINE.GOMEZ@sakilacustomer.org',125,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(122,1,'THELMA','MURRAY','THELMA.MURRAY@sakilacustomer.org',126,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(123,2,'SHANNON','FREEMAN','SHANNON.FREEMAN@sakilacustomer.org',127,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(124,1,'SHEILA','WELLS','SHEILA.WELLS@sakilacustomer.org',128,0,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(125,1,'ETHEL','WEBB','ETHEL.WEBB@sakilacustomer.org',129,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(126,1,'ELLEN','SIMPSON','ELLEN.SIMPSON@sakilacustomer.org',130,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(127,2,'ELAINE','STEVENS','ELAINE.STEVENS@sakilacustomer.org',131,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(128,1,'MARJORIE','TUCKER','MARJORIE.TUCKER@sakilacustomer.org',132,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(129,1,'CARRIE','PORTER','CARRIE.PORTER@sakilacustomer.org',133,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(130,1,'CHARLOTTE','HUNTER','CHARLOTTE.HUNTER@sakilacustomer.org',134,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(131,2,'MONICA','HICKS','MONICA.HICKS@sakilacustomer.org',135,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(132,2,'ESTHER','CRAWFORD','ESTHER.CRAWFORD@sakilacustomer.org',136,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(133,1,'PAULINE','HENRY','PAULINE.HENRY@sakilacustomer.org',137,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(134,1,'EMMA','BOYD','EMMA.BOYD@sakilacustomer.org',138,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(135,2,'JUANITA','MASON','JUANITA.MASON@sakilacustomer.org',139,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(136,2,'ANITA','MORALES','ANITA.MORALES@sakilacustomer.org',140,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(137,2,'RHONDA','KENNEDY','RHONDA.KENNEDY@sakilacustomer.org',141,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(138,1,'HAZEL','WARREN','HAZEL.WARREN@sakilacustomer.org',142,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(139,1,'AMBER','DIXON','AMBER.DIXON@sakilacustomer.org',143,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(140,1,'EVA','RAMOS','EVA.RAMOS@sakilacustomer.org',144,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(141,1,'DEBBIE','REYES','DEBBIE.REYES@sakilacustomer.org',145,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(142,1,'APRIL','BURNS','APRIL.BURNS@sakilacustomer.org',146,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(143,1,'LESLIE','GORDON','LESLIE.GORDON@sakilacustomer.org',147,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(144,1,'CLARA','SHAW','CLARA.SHAW@sakilacustomer.org',148,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(145,1,'LUCILLE','HOLMES','LUCILLE.HOLMES@sakilacustomer.org',149,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(146,1,'JAMIE','RICE','JAMIE.RICE@sakilacustomer.org',150,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(147,2,'JOANNE','ROBERTSON','JOANNE.ROBERTSON@sakilacustomer.org',151,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(148,1,'ELEANOR','HUNT','ELEANOR.HUNT@sakilacustomer.org',152,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(149,1,'VALERIE','BLACK','VALERIE.BLACK@sakilacustomer.org',153,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(150,2,'DANIELLE','DANIELS','DANIELLE.DANIELS@sakilacustomer.org',154,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(151,2,'MEGAN','PALMER','MEGAN.PALMER@sakilacustomer.org',155,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(152,1,'ALICIA','MILLS','ALICIA.MILLS@sakilacustomer.org',156,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(153,2,'SUZANNE','NICHOLS','SUZANNE.NICHOLS@sakilacustomer.org',157,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(154,2,'MICHELE','GRANT','MICHELE.GRANT@sakilacustomer.org',158,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(155,1,'GAIL','KNIGHT','GAIL.KNIGHT@sakilacustomer.org',159,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(156,1,'BERTHA','FERGUSON','BERTHA.FERGUSON@sakilacustomer.org',160,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(157,2,'DARLENE','ROSE','DARLENE.ROSE@sakilacustomer.org',161,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(158,1,'VERONICA','STONE','VERONICA.STONE@sakilacustomer.org',162,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(159,1,'JILL','HAWKINS','JILL.HAWKINS@sakilacustomer.org',163,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(160,2,'ERIN','DUNN','ERIN.DUNN@sakilacustomer.org',164,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(161,1,'GERALDINE','PERKINS','GERALDINE.PERKINS@sakilacustomer.org',165,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(162,2,'LAUREN','HUDSON','LAUREN.HUDSON@sakilacustomer.org',166,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(163,1,'CATHY','SPENCER','CATHY.SPENCER@sakilacustomer.org',167,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(164,2,'JOANN','GARDNER','JOANN.GARDNER@sakilacustomer.org',168,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(165,2,'LORRAINE','STEPHENS','LORRAINE.STEPHENS@sakilacustomer.org',169,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(166,1,'LYNN','PAYNE','LYNN.PAYNE@sakilacustomer.org',170,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(167,2,'SALLY','PIERCE','SALLY.PIERCE@sakilacustomer.org',171,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(168,1,'REGINA','BERRY','REGINA.BERRY@sakilacustomer.org',172,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(169,2,'ERICA','MATTHEWS','ERICA.MATTHEWS@sakilacustomer.org',173,0,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(170,1,'BEATRICE','ARNOLD','BEATRICE.ARNOLD@sakilacustomer.org',174,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(171,2,'DOLORES','WAGNER','DOLORES.WAGNER@sakilacustomer.org',175,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(172,1,'BERNICE','WILLIS','BERNICE.WILLIS@sakilacustomer.org',176,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(173,1,'AUDREY','RAY','AUDREY.RAY@sakilacustomer.org',177,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(174,2,'YVONNE','WATKINS','YVONNE.WATKINS@sakilacustomer.org',178,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(175,1,'ANNETTE','OLSON','ANNETTE.OLSON@sakilacustomer.org',179,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(176,1,'JUNE','CARROLL','JUNE.CARROLL@sakilacustomer.org',180,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(177,2,'SAMANTHA','DUNCAN','SAMANTHA.DUNCAN@sakilacustomer.org',181,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(178,2,'MARION','SNYDER','MARION.SNYDER@sakilacustomer.org',182,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(179,1,'DANA','HART','DANA.HART@sakilacustomer.org',183,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(180,2,'STACY','CUNNINGHAM','STACY.CUNNINGHAM@sakilacustomer.org',184,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(181,2,'ANA','BRADLEY','ANA.BRADLEY@sakilacustomer.org',185,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(182,1,'RENEE','LANE','RENEE.LANE@sakilacustomer.org',186,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(183,2,'IDA','ANDREWS','IDA.ANDREWS@sakilacustomer.org',187,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(184,1,'VIVIAN','RUIZ','VIVIAN.RUIZ@sakilacustomer.org',188,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(185,1,'ROBERTA','HARPER','ROBERTA.HARPER@sakilacustomer.org',189,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(186,2,'HOLLY','FOX','HOLLY.FOX@sakilacustomer.org',190,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(187,2,'BRITTANY','RILEY','BRITTANY.RILEY@sakilacustomer.org',191,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(188,1,'MELANIE','ARMSTRONG','MELANIE.ARMSTRONG@sakilacustomer.org',192,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(189,1,'LORETTA','CARPENTER','LORETTA.CARPENTER@sakilacustomer.org',193,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(190,2,'YOLANDA','WEAVER','YOLANDA.WEAVER@sakilacustomer.org',194,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(191,1,'JEANETTE','GREENE','JEANETTE.GREENE@sakilacustomer.org',195,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(192,1,'LAURIE','LAWRENCE','LAURIE.LAWRENCE@sakilacustomer.org',196,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(193,2,'KATIE','ELLIOTT','KATIE.ELLIOTT@sakilacustomer.org',197,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(194,2,'KRISTEN','CHAVEZ','KRISTEN.CHAVEZ@sakilacustomer.org',198,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(195,1,'VANESSA','SIMS','VANESSA.SIMS@sakilacustomer.org',199,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(196,1,'ALMA','AUSTIN','ALMA.AUSTIN@sakilacustomer.org',200,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(197,2,'SUE','PETERS','SUE.PETERS@sakilacustomer.org',201,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(198,2,'ELSIE','KELLEY','ELSIE.KELLEY@sakilacustomer.org',202,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(199,2,'BETH','FRANKLIN','BETH.FRANKLIN@sakilacustomer.org',203,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(200,2,'JEANNE','LAWSON','JEANNE.LAWSON@sakilacustomer.org',204,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(201,1,'VICKI','FIELDS','VICKI.FIELDS@sakilacustomer.org',205,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(202,2,'CARLA','GUTIERREZ','CARLA.GUTIERREZ@sakilacustomer.org',206,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(203,1,'TARA','RYAN','TARA.RYAN@sakilacustomer.org',207,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(204,1,'ROSEMARY','SCHMIDT','ROSEMARY.SCHMIDT@sakilacustomer.org',208,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(205,2,'EILEEN','CARR','EILEEN.CARR@sakilacustomer.org',209,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(206,1,'TERRI','VASQUEZ','TERRI.VASQUEZ@sakilacustomer.org',210,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(207,1,'GERTRUDE','CASTILLO','GERTRUDE.CASTILLO@sakilacustomer.org',211,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(208,1,'LUCY','WHEELER','LUCY.WHEELER@sakilacustomer.org',212,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(209,2,'TONYA','CHAPMAN','TONYA.CHAPMAN@sakilacustomer.org',213,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(210,2,'ELLA','OLIVER','ELLA.OLIVER@sakilacustomer.org',214,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(211,1,'STACEY','MONTGOMERY','STACEY.MONTGOMERY@sakilacustomer.org',215,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(212,2,'WILMA','RICHARDS','WILMA.RICHARDS@sakilacustomer.org',216,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(213,1,'GINA','WILLIAMSON','GINA.WILLIAMSON@sakilacustomer.org',217,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(214,1,'KRISTIN','JOHNSTON','KRISTIN.JOHNSTON@sakilacustomer.org',218,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(215,2,'JESSIE','BANKS','JESSIE.BANKS@sakilacustomer.org',219,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(216,1,'NATALIE','MEYER','NATALIE.MEYER@sakilacustomer.org',220,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(217,2,'AGNES','BISHOP','AGNES.BISHOP@sakilacustomer.org',221,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(218,1,'VERA','MCCOY','VERA.MCCOY@sakilacustomer.org',222,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(219,2,'WILLIE','HOWELL','WILLIE.HOWELL@sakilacustomer.org',223,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(220,2,'CHARLENE','ALVAREZ','CHARLENE.ALVAREZ@sakilacustomer.org',224,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(221,1,'BESSIE','MORRISON','BESSIE.MORRISON@sakilacustomer.org',225,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(222,2,'DELORES','HANSEN','DELORES.HANSEN@sakilacustomer.org',226,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(223,1,'MELINDA','FERNANDEZ','MELINDA.FERNANDEZ@sakilacustomer.org',227,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(224,2,'PEARL','GARZA','PEARL.GARZA@sakilacustomer.org',228,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(225,1,'ARLENE','HARVEY','ARLENE.HARVEY@sakilacustomer.org',229,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(226,2,'MAUREEN','LITTLE','MAUREEN.LITTLE@sakilacustomer.org',230,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(227,1,'COLLEEN','BURTON','COLLEEN.BURTON@sakilacustomer.org',231,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(228,2,'ALLISON','STANLEY','ALLISON.STANLEY@sakilacustomer.org',232,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(229,1,'TAMARA','NGUYEN','TAMARA.NGUYEN@sakilacustomer.org',233,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(230,2,'JOY','GEORGE','JOY.GEORGE@sakilacustomer.org',234,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(231,1,'GEORGIA','JACOBS','GEORGIA.JACOBS@sakilacustomer.org',235,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(232,2,'CONSTANCE','REID','CONSTANCE.REID@sakilacustomer.org',236,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(233,2,'LILLIE','KIM','LILLIE.KIM@sakilacustomer.org',237,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(234,1,'CLAUDIA','FULLER','CLAUDIA.FULLER@sakilacustomer.org',238,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(235,1,'JACKIE','LYNCH','JACKIE.LYNCH@sakilacustomer.org',239,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(236,1,'MARCIA','DEAN','MARCIA.DEAN@sakilacustomer.org',240,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(237,1,'TANYA','GILBERT','TANYA.GILBERT@sakilacustomer.org',241,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(238,1,'NELLIE','GARRETT','NELLIE.GARRETT@sakilacustomer.org',242,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(239,2,'MINNIE','ROMERO','MINNIE.ROMERO@sakilacustomer.org',243,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(240,1,'MARLENE','WELCH','MARLENE.WELCH@sakilacustomer.org',244,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(241,2,'HEIDI','LARSON','HEIDI.LARSON@sakilacustomer.org',245,0,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(242,1,'GLENDA','FRAZIER','GLENDA.FRAZIER@sakilacustomer.org',246,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(243,1,'LYDIA','BURKE','LYDIA.BURKE@sakilacustomer.org',247,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(244,2,'VIOLA','HANSON','VIOLA.HANSON@sakilacustomer.org',248,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(245,1,'COURTNEY','DAY','COURTNEY.DAY@sakilacustomer.org',249,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(246,1,'MARIAN','MENDOZA','MARIAN.MENDOZA@sakilacustomer.org',250,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(247,1,'STELLA','MORENO','STELLA.MORENO@sakilacustomer.org',251,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(248,1,'CAROLINE','BOWMAN','CAROLINE.BOWMAN@sakilacustomer.org',252,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(249,2,'DORA','MEDINA','DORA.MEDINA@sakilacustomer.org',253,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(250,2,'JO','FOWLER','JO.FOWLER@sakilacustomer.org',254,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(251,2,'VICKIE','BREWER','VICKIE.BREWER@sakilacustomer.org',255,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(252,2,'MATTIE','HOFFMAN','MATTIE.HOFFMAN@sakilacustomer.org',256,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(253,1,'TERRY','CARLSON','TERRY.CARLSON@sakilacustomer.org',258,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(254,2,'MAXINE','SILVA','MAXINE.SILVA@sakilacustomer.org',259,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(255,2,'IRMA','PEARSON','IRMA.PEARSON@sakilacustomer.org',260,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(256,2,'MABEL','HOLLAND','MABEL.HOLLAND@sakilacustomer.org',261,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(257,2,'MARSHA','DOUGLAS','MARSHA.DOUGLAS@sakilacustomer.org',262,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(258,1,'MYRTLE','FLEMING','MYRTLE.FLEMING@sakilacustomer.org',263,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(259,2,'LENA','JENSEN','LENA.JENSEN@sakilacustomer.org',264,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(260,1,'CHRISTY','VARGAS','CHRISTY.VARGAS@sakilacustomer.org',265,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(261,1,'DEANNA','BYRD','DEANNA.BYRD@sakilacustomer.org',266,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(262,2,'PATSY','DAVIDSON','PATSY.DAVIDSON@sakilacustomer.org',267,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(263,1,'HILDA','HOPKINS','HILDA.HOPKINS@sakilacustomer.org',268,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(264,1,'GWENDOLYN','MAY','GWENDOLYN.MAY@sakilacustomer.org',269,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(265,2,'JENNIE','TERRY','JENNIE.TERRY@sakilacustomer.org',270,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(266,2,'NORA','HERRERA','NORA.HERRERA@sakilacustomer.org',271,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(267,1,'MARGIE','WADE','MARGIE.WADE@sakilacustomer.org',272,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(268,1,'NINA','SOTO','NINA.SOTO@sakilacustomer.org',273,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(269,1,'CASSANDRA','WALTERS','CASSANDRA.WALTERS@sakilacustomer.org',274,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(270,1,'LEAH','CURTIS','LEAH.CURTIS@sakilacustomer.org',275,1,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(271,1,'PENNY','NEAL','PENNY.NEAL@sakilacustomer.org',276,0,'2006-02-14 22:04:36','2006-02-15 04:57:20'),(272,1,'KAY','CALDWELL','KAY.CALDWELL@sakilacustomer.org',277,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(273,2,'PRISCILLA','LOWE','PRISCILLA.LOWE@sakilacustomer.org',278,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(274,1,'NAOMI','JENNINGS','NAOMI.JENNINGS@sakilacustomer.org',279,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(275,2,'CAROLE','BARNETT','CAROLE.BARNETT@sakilacustomer.org',280,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(276,1,'BRANDY','GRAVES','BRANDY.GRAVES@sakilacustomer.org',281,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(277,2,'OLGA','JIMENEZ','OLGA.JIMENEZ@sakilacustomer.org',282,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(278,2,'BILLIE','HORTON','BILLIE.HORTON@sakilacustomer.org',283,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(279,2,'DIANNE','SHELTON','DIANNE.SHELTON@sakilacustomer.org',284,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(280,2,'TRACEY','BARRETT','TRACEY.BARRETT@sakilacustomer.org',285,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(281,2,'LEONA','OBRIEN','LEONA.OBRIEN@sakilacustomer.org',286,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(282,2,'JENNY','CASTRO','JENNY.CASTRO@sakilacustomer.org',287,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(283,1,'FELICIA','SUTTON','FELICIA.SUTTON@sakilacustomer.org',288,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(284,1,'SONIA','GREGORY','SONIA.GREGORY@sakilacustomer.org',289,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(285,1,'MIRIAM','MCKINNEY','MIRIAM.MCKINNEY@sakilacustomer.org',290,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(286,1,'VELMA','LUCAS','VELMA.LUCAS@sakilacustomer.org',291,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(287,2,'BECKY','MILES','BECKY.MILES@sakilacustomer.org',292,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(288,1,'BOBBIE','CRAIG','BOBBIE.CRAIG@sakilacustomer.org',293,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(289,1,'VIOLET','RODRIQUEZ','VIOLET.RODRIQUEZ@sakilacustomer.org',294,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(290,1,'KRISTINA','CHAMBERS','KRISTINA.CHAMBERS@sakilacustomer.org',295,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(291,1,'TONI','HOLT','TONI.HOLT@sakilacustomer.org',296,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(292,2,'MISTY','LAMBERT','MISTY.LAMBERT@sakilacustomer.org',297,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(293,2,'MAE','FLETCHER','MAE.FLETCHER@sakilacustomer.org',298,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(294,2,'SHELLY','WATTS','SHELLY.WATTS@sakilacustomer.org',299,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(295,1,'DAISY','BATES','DAISY.BATES@sakilacustomer.org',300,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(296,2,'RAMONA','HALE','RAMONA.HALE@sakilacustomer.org',301,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(297,1,'SHERRI','RHODES','SHERRI.RHODES@sakilacustomer.org',302,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(298,1,'ERIKA','PENA','ERIKA.PENA@sakilacustomer.org',303,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(299,2,'JAMES','GANNON','JAMES.GANNON@sakilacustomer.org',304,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(300,1,'JOHN','FARNSWORTH','JOHN.FARNSWORTH@sakilacustomer.org',305,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(301,2,'ROBERT','BAUGHMAN','ROBERT.BAUGHMAN@sakilacustomer.org',306,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(302,1,'MICHAEL','SILVERMAN','MICHAEL.SILVERMAN@sakilacustomer.org',307,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(303,2,'WILLIAM','SATTERFIELD','WILLIAM.SATTERFIELD@sakilacustomer.org',308,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(304,2,'DAVID','ROYAL','DAVID.ROYAL@sakilacustomer.org',309,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(305,1,'RICHARD','MCCRARY','RICHARD.MCCRARY@sakilacustomer.org',310,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(306,1,'CHARLES','KOWALSKI','CHARLES.KOWALSKI@sakilacustomer.org',311,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(307,2,'JOSEPH','JOY','JOSEPH.JOY@sakilacustomer.org',312,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(308,1,'THOMAS','GRIGSBY','THOMAS.GRIGSBY@sakilacustomer.org',313,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(309,1,'CHRISTOPHER','GRECO','CHRISTOPHER.GRECO@sakilacustomer.org',314,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(310,2,'DANIEL','CABRAL','DANIEL.CABRAL@sakilacustomer.org',315,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(311,2,'PAUL','TROUT','PAUL.TROUT@sakilacustomer.org',316,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(312,2,'MARK','RINEHART','MARK.RINEHART@sakilacustomer.org',317,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(313,2,'DONALD','MAHON','DONALD.MAHON@sakilacustomer.org',318,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(314,1,'GEORGE','LINTON','GEORGE.LINTON@sakilacustomer.org',319,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(315,2,'KENNETH','GOODEN','KENNETH.GOODEN@sakilacustomer.org',320,0,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(316,1,'STEVEN','CURLEY','STEVEN.CURLEY@sakilacustomer.org',321,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(317,2,'EDWARD','BAUGH','EDWARD.BAUGH@sakilacustomer.org',322,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(318,1,'BRIAN','WYMAN','BRIAN.WYMAN@sakilacustomer.org',323,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(319,2,'RONALD','WEINER','RONALD.WEINER@sakilacustomer.org',324,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(320,2,'ANTHONY','SCHWAB','ANTHONY.SCHWAB@sakilacustomer.org',325,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(321,1,'KEVIN','SCHULER','KEVIN.SCHULER@sakilacustomer.org',326,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(322,1,'JASON','MORRISSEY','JASON.MORRISSEY@sakilacustomer.org',327,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(323,2,'MATTHEW','MAHAN','MATTHEW.MAHAN@sakilacustomer.org',328,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(324,2,'GARY','COY','GARY.COY@sakilacustomer.org',329,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(325,1,'TIMOTHY','BUNN','TIMOTHY.BUNN@sakilacustomer.org',330,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(326,1,'JOSE','ANDREW','JOSE.ANDREW@sakilacustomer.org',331,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(327,2,'LARRY','THRASHER','LARRY.THRASHER@sakilacustomer.org',332,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(328,2,'JEFFREY','SPEAR','JEFFREY.SPEAR@sakilacustomer.org',333,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(329,2,'FRANK','WAGGONER','FRANK.WAGGONER@sakilacustomer.org',334,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(330,1,'SCOTT','SHELLEY','SCOTT.SHELLEY@sakilacustomer.org',335,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(331,1,'ERIC','ROBERT','ERIC.ROBERT@sakilacustomer.org',336,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(332,1,'STEPHEN','QUALLS','STEPHEN.QUALLS@sakilacustomer.org',337,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(333,2,'ANDREW','PURDY','ANDREW.PURDY@sakilacustomer.org',338,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(334,2,'RAYMOND','MCWHORTER','RAYMOND.MCWHORTER@sakilacustomer.org',339,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(335,1,'GREGORY','MAULDIN','GREGORY.MAULDIN@sakilacustomer.org',340,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(336,1,'JOSHUA','MARK','JOSHUA.MARK@sakilacustomer.org',341,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(337,1,'JERRY','JORDON','JERRY.JORDON@sakilacustomer.org',342,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(338,1,'DENNIS','GILMAN','DENNIS.GILMAN@sakilacustomer.org',343,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(339,2,'WALTER','PERRYMAN','WALTER.PERRYMAN@sakilacustomer.org',344,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(340,1,'PATRICK','NEWSOM','PATRICK.NEWSOM@sakilacustomer.org',345,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(341,1,'PETER','MENARD','PETER.MENARD@sakilacustomer.org',346,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(342,1,'HAROLD','MARTINO','HAROLD.MARTINO@sakilacustomer.org',347,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(343,1,'DOUGLAS','GRAF','DOUGLAS.GRAF@sakilacustomer.org',348,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(344,1,'HENRY','BILLINGSLEY','HENRY.BILLINGSLEY@sakilacustomer.org',349,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(345,1,'CARL','ARTIS','CARL.ARTIS@sakilacustomer.org',350,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(346,1,'ARTHUR','SIMPKINS','ARTHUR.SIMPKINS@sakilacustomer.org',351,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(347,2,'RYAN','SALISBURY','RYAN.SALISBURY@sakilacustomer.org',352,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(348,2,'ROGER','QUINTANILLA','ROGER.QUINTANILLA@sakilacustomer.org',353,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(349,2,'JOE','GILLILAND','JOE.GILLILAND@sakilacustomer.org',354,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(350,1,'JUAN','FRALEY','JUAN.FRALEY@sakilacustomer.org',355,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(351,1,'JACK','FOUST','JACK.FOUST@sakilacustomer.org',356,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(352,1,'ALBERT','CROUSE','ALBERT.CROUSE@sakilacustomer.org',357,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(353,1,'JONATHAN','SCARBOROUGH','JONATHAN.SCARBOROUGH@sakilacustomer.org',358,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(354,2,'JUSTIN','NGO','JUSTIN.NGO@sakilacustomer.org',359,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(355,2,'TERRY','GRISSOM','TERRY.GRISSOM@sakilacustomer.org',360,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(356,2,'GERALD','FULTZ','GERALD.FULTZ@sakilacustomer.org',361,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(357,1,'KEITH','RICO','KEITH.RICO@sakilacustomer.org',362,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(358,2,'SAMUEL','MARLOW','SAMUEL.MARLOW@sakilacustomer.org',363,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(359,2,'WILLIE','MARKHAM','WILLIE.MARKHAM@sakilacustomer.org',364,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(360,2,'RALPH','MADRIGAL','RALPH.MADRIGAL@sakilacustomer.org',365,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(361,2,'LAWRENCE','LAWTON','LAWRENCE.LAWTON@sakilacustomer.org',366,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(362,1,'NICHOLAS','BARFIELD','NICHOLAS.BARFIELD@sakilacustomer.org',367,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(363,2,'ROY','WHITING','ROY.WHITING@sakilacustomer.org',368,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(364,1,'BENJAMIN','VARNEY','BENJAMIN.VARNEY@sakilacustomer.org',369,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(365,2,'BRUCE','SCHWARZ','BRUCE.SCHWARZ@sakilacustomer.org',370,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(366,1,'BRANDON','HUEY','BRANDON.HUEY@sakilacustomer.org',371,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(367,1,'ADAM','GOOCH','ADAM.GOOCH@sakilacustomer.org',372,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(368,1,'HARRY','ARCE','HARRY.ARCE@sakilacustomer.org',373,0,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(369,2,'FRED','WHEAT','FRED.WHEAT@sakilacustomer.org',374,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(370,2,'WAYNE','TRUONG','WAYNE.TRUONG@sakilacustomer.org',375,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(371,1,'BILLY','POULIN','BILLY.POULIN@sakilacustomer.org',376,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(372,2,'STEVE','MACKENZIE','STEVE.MACKENZIE@sakilacustomer.org',377,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(373,1,'LOUIS','LEONE','LOUIS.LEONE@sakilacustomer.org',378,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(374,2,'JEREMY','HURTADO','JEREMY.HURTADO@sakilacustomer.org',379,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(375,2,'AARON','SELBY','AARON.SELBY@sakilacustomer.org',380,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(376,1,'RANDY','GAITHER','RANDY.GAITHER@sakilacustomer.org',381,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(377,1,'HOWARD','FORTNER','HOWARD.FORTNER@sakilacustomer.org',382,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(378,1,'EUGENE','CULPEPPER','EUGENE.CULPEPPER@sakilacustomer.org',383,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(379,1,'CARLOS','COUGHLIN','CARLOS.COUGHLIN@sakilacustomer.org',384,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(380,1,'RUSSELL','BRINSON','RUSSELL.BRINSON@sakilacustomer.org',385,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(381,2,'BOBBY','BOUDREAU','BOBBY.BOUDREAU@sakilacustomer.org',386,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(382,2,'VICTOR','BARKLEY','VICTOR.BARKLEY@sakilacustomer.org',387,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(383,1,'MARTIN','BALES','MARTIN.BALES@sakilacustomer.org',388,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(384,2,'ERNEST','STEPP','ERNEST.STEPP@sakilacustomer.org',389,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(385,1,'PHILLIP','HOLM','PHILLIP.HOLM@sakilacustomer.org',390,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(386,1,'TODD','TAN','TODD.TAN@sakilacustomer.org',391,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(387,2,'JESSE','SCHILLING','JESSE.SCHILLING@sakilacustomer.org',392,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(388,2,'CRAIG','MORRELL','CRAIG.MORRELL@sakilacustomer.org',393,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(389,1,'ALAN','KAHN','ALAN.KAHN@sakilacustomer.org',394,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(390,1,'SHAWN','HEATON','SHAWN.HEATON@sakilacustomer.org',395,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(391,1,'CLARENCE','GAMEZ','CLARENCE.GAMEZ@sakilacustomer.org',396,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(392,2,'SEAN','DOUGLASS','SEAN.DOUGLASS@sakilacustomer.org',397,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(393,1,'PHILIP','CAUSEY','PHILIP.CAUSEY@sakilacustomer.org',398,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(394,2,'CHRIS','BROTHERS','CHRIS.BROTHERS@sakilacustomer.org',399,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(395,2,'JOHNNY','TURPIN','JOHNNY.TURPIN@sakilacustomer.org',400,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(396,1,'EARL','SHANKS','EARL.SHANKS@sakilacustomer.org',401,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(397,1,'JIMMY','SCHRADER','JIMMY.SCHRADER@sakilacustomer.org',402,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(398,1,'ANTONIO','MEEK','ANTONIO.MEEK@sakilacustomer.org',403,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(399,1,'DANNY','ISOM','DANNY.ISOM@sakilacustomer.org',404,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(400,2,'BRYAN','HARDISON','BRYAN.HARDISON@sakilacustomer.org',405,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(401,2,'TONY','CARRANZA','TONY.CARRANZA@sakilacustomer.org',406,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(402,1,'LUIS','YANEZ','LUIS.YANEZ@sakilacustomer.org',407,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(403,1,'MIKE','WAY','MIKE.WAY@sakilacustomer.org',408,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(404,2,'STANLEY','SCROGGINS','STANLEY.SCROGGINS@sakilacustomer.org',409,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(405,1,'LEONARD','SCHOFIELD','LEONARD.SCHOFIELD@sakilacustomer.org',410,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(406,1,'NATHAN','RUNYON','NATHAN.RUNYON@sakilacustomer.org',411,0,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(407,1,'DALE','RATCLIFF','DALE.RATCLIFF@sakilacustomer.org',412,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(408,1,'MANUEL','MURRELL','MANUEL.MURRELL@sakilacustomer.org',413,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(409,2,'RODNEY','MOELLER','RODNEY.MOELLER@sakilacustomer.org',414,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(410,2,'CURTIS','IRBY','CURTIS.IRBY@sakilacustomer.org',415,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(411,1,'NORMAN','CURRIER','NORMAN.CURRIER@sakilacustomer.org',416,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(412,2,'ALLEN','BUTTERFIELD','ALLEN.BUTTERFIELD@sakilacustomer.org',417,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(413,2,'MARVIN','YEE','MARVIN.YEE@sakilacustomer.org',418,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(414,1,'VINCENT','RALSTON','VINCENT.RALSTON@sakilacustomer.org',419,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(415,1,'GLENN','PULLEN','GLENN.PULLEN@sakilacustomer.org',420,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(416,2,'JEFFERY','PINSON','JEFFERY.PINSON@sakilacustomer.org',421,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(417,1,'TRAVIS','ESTEP','TRAVIS.ESTEP@sakilacustomer.org',422,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(418,2,'JEFF','EAST','JEFF.EAST@sakilacustomer.org',423,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(419,1,'CHAD','CARBONE','CHAD.CARBONE@sakilacustomer.org',424,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(420,1,'JACOB','LANCE','JACOB.LANCE@sakilacustomer.org',425,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(421,1,'LEE','HAWKS','LEE.HAWKS@sakilacustomer.org',426,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(422,1,'MELVIN','ELLINGTON','MELVIN.ELLINGTON@sakilacustomer.org',427,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(423,2,'ALFRED','CASILLAS','ALFRED.CASILLAS@sakilacustomer.org',428,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(424,2,'KYLE','SPURLOCK','KYLE.SPURLOCK@sakilacustomer.org',429,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(425,2,'FRANCIS','SIKES','FRANCIS.SIKES@sakilacustomer.org',430,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(426,1,'BRADLEY','MOTLEY','BRADLEY.MOTLEY@sakilacustomer.org',431,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(427,2,'JESUS','MCCARTNEY','JESUS.MCCARTNEY@sakilacustomer.org',432,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(428,2,'HERBERT','KRUGER','HERBERT.KRUGER@sakilacustomer.org',433,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(429,2,'FREDERICK','ISBELL','FREDERICK.ISBELL@sakilacustomer.org',434,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(430,1,'RAY','HOULE','RAY.HOULE@sakilacustomer.org',435,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(431,2,'JOEL','FRANCISCO','JOEL.FRANCISCO@sakilacustomer.org',436,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(432,1,'EDWIN','BURK','EDWIN.BURK@sakilacustomer.org',437,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(433,1,'DON','BONE','DON.BONE@sakilacustomer.org',438,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(434,1,'EDDIE','TOMLIN','EDDIE.TOMLIN@sakilacustomer.org',439,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(435,2,'RICKY','SHELBY','RICKY.SHELBY@sakilacustomer.org',440,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(436,1,'TROY','QUIGLEY','TROY.QUIGLEY@sakilacustomer.org',441,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(437,2,'RANDALL','NEUMANN','RANDALL.NEUMANN@sakilacustomer.org',442,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(438,1,'BARRY','LOVELACE','BARRY.LOVELACE@sakilacustomer.org',443,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(439,2,'ALEXANDER','FENNELL','ALEXANDER.FENNELL@sakilacustomer.org',444,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(440,1,'BERNARD','COLBY','BERNARD.COLBY@sakilacustomer.org',445,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(441,1,'MARIO','CHEATHAM','MARIO.CHEATHAM@sakilacustomer.org',446,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(442,1,'LEROY','BUSTAMANTE','LEROY.BUSTAMANTE@sakilacustomer.org',447,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(443,2,'FRANCISCO','SKIDMORE','FRANCISCO.SKIDMORE@sakilacustomer.org',448,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(444,2,'MARCUS','HIDALGO','MARCUS.HIDALGO@sakilacustomer.org',449,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(445,1,'MICHEAL','FORMAN','MICHEAL.FORMAN@sakilacustomer.org',450,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(446,2,'THEODORE','CULP','THEODORE.CULP@sakilacustomer.org',451,0,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(447,1,'CLIFFORD','BOWENS','CLIFFORD.BOWENS@sakilacustomer.org',452,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(448,1,'MIGUEL','BETANCOURT','MIGUEL.BETANCOURT@sakilacustomer.org',453,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(449,2,'OSCAR','AQUINO','OSCAR.AQUINO@sakilacustomer.org',454,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(450,1,'JAY','ROBB','JAY.ROBB@sakilacustomer.org',455,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(451,1,'JIM','REA','JIM.REA@sakilacustomer.org',456,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(452,1,'TOM','MILNER','TOM.MILNER@sakilacustomer.org',457,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(453,1,'CALVIN','MARTEL','CALVIN.MARTEL@sakilacustomer.org',458,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(454,2,'ALEX','GRESHAM','ALEX.GRESHAM@sakilacustomer.org',459,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(455,2,'JON','WILES','JON.WILES@sakilacustomer.org',460,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(456,2,'RONNIE','RICKETTS','RONNIE.RICKETTS@sakilacustomer.org',461,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(457,2,'BILL','GAVIN','BILL.GAVIN@sakilacustomer.org',462,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(458,1,'LLOYD','DOWD','LLOYD.DOWD@sakilacustomer.org',463,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(459,1,'TOMMY','COLLAZO','TOMMY.COLLAZO@sakilacustomer.org',464,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(460,1,'LEON','BOSTIC','LEON.BOSTIC@sakilacustomer.org',465,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(461,1,'DEREK','BLAKELY','DEREK.BLAKELY@sakilacustomer.org',466,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(462,2,'WARREN','SHERROD','WARREN.SHERROD@sakilacustomer.org',467,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(463,2,'DARRELL','POWER','DARRELL.POWER@sakilacustomer.org',468,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(464,1,'JEROME','KENYON','JEROME.KENYON@sakilacustomer.org',469,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(465,1,'FLOYD','GANDY','FLOYD.GANDY@sakilacustomer.org',470,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(466,1,'LEO','EBERT','LEO.EBERT@sakilacustomer.org',471,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(467,2,'ALVIN','DELOACH','ALVIN.DELOACH@sakilacustomer.org',472,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(468,1,'TIM','CARY','TIM.CARY@sakilacustomer.org',473,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(469,2,'WESLEY','BULL','WESLEY.BULL@sakilacustomer.org',474,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(470,1,'GORDON','ALLARD','GORDON.ALLARD@sakilacustomer.org',475,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(471,1,'DEAN','SAUER','DEAN.SAUER@sakilacustomer.org',476,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(472,1,'GREG','ROBINS','GREG.ROBINS@sakilacustomer.org',477,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(473,2,'JORGE','OLIVARES','JORGE.OLIVARES@sakilacustomer.org',478,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(474,2,'DUSTIN','GILLETTE','DUSTIN.GILLETTE@sakilacustomer.org',479,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(475,2,'PEDRO','CHESTNUT','PEDRO.CHESTNUT@sakilacustomer.org',480,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(476,1,'DERRICK','BOURQUE','DERRICK.BOURQUE@sakilacustomer.org',481,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(477,1,'DAN','PAINE','DAN.PAINE@sakilacustomer.org',482,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(478,1,'LEWIS','LYMAN','LEWIS.LYMAN@sakilacustomer.org',483,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(479,1,'ZACHARY','HITE','ZACHARY.HITE@sakilacustomer.org',484,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(480,1,'COREY','HAUSER','COREY.HAUSER@sakilacustomer.org',485,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(481,1,'HERMAN','DEVORE','HERMAN.DEVORE@sakilacustomer.org',486,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(482,1,'MAURICE','CRAWLEY','MAURICE.CRAWLEY@sakilacustomer.org',487,0,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(483,2,'VERNON','CHAPA','VERNON.CHAPA@sakilacustomer.org',488,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(484,1,'ROBERTO','VU','ROBERTO.VU@sakilacustomer.org',489,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(485,1,'CLYDE','TOBIAS','CLYDE.TOBIAS@sakilacustomer.org',490,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(486,1,'GLEN','TALBERT','GLEN.TALBERT@sakilacustomer.org',491,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(487,2,'HECTOR','POINDEXTER','HECTOR.POINDEXTER@sakilacustomer.org',492,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(488,2,'SHANE','MILLARD','SHANE.MILLARD@sakilacustomer.org',493,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(489,1,'RICARDO','MEADOR','RICARDO.MEADOR@sakilacustomer.org',494,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(490,1,'SAM','MCDUFFIE','SAM.MCDUFFIE@sakilacustomer.org',495,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(491,2,'RICK','MATTOX','RICK.MATTOX@sakilacustomer.org',496,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(492,2,'LESTER','KRAUS','LESTER.KRAUS@sakilacustomer.org',497,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(493,1,'BRENT','HARKINS','BRENT.HARKINS@sakilacustomer.org',498,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(494,2,'RAMON','CHOATE','RAMON.CHOATE@sakilacustomer.org',499,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(495,2,'CHARLIE','BESS','CHARLIE.BESS@sakilacustomer.org',500,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(496,2,'TYLER','WREN','TYLER.WREN@sakilacustomer.org',501,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(497,2,'GILBERT','SLEDGE','GILBERT.SLEDGE@sakilacustomer.org',502,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(498,1,'GENE','SANBORN','GENE.SANBORN@sakilacustomer.org',503,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(499,2,'MARC','OUTLAW','MARC.OUTLAW@sakilacustomer.org',504,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(500,1,'REGINALD','KINDER','REGINALD.KINDER@sakilacustomer.org',505,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(501,1,'RUBEN','GEARY','RUBEN.GEARY@sakilacustomer.org',506,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(502,1,'BRETT','CORNWELL','BRETT.CORNWELL@sakilacustomer.org',507,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(503,1,'ANGEL','BARCLAY','ANGEL.BARCLAY@sakilacustomer.org',508,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(504,1,'NATHANIEL','ADAM','NATHANIEL.ADAM@sakilacustomer.org',509,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(505,1,'RAFAEL','ABNEY','RAFAEL.ABNEY@sakilacustomer.org',510,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(506,2,'LESLIE','SEWARD','LESLIE.SEWARD@sakilacustomer.org',511,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(507,2,'EDGAR','RHOADS','EDGAR.RHOADS@sakilacustomer.org',512,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(508,2,'MILTON','HOWLAND','MILTON.HOWLAND@sakilacustomer.org',513,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(509,1,'RAUL','FORTIER','RAUL.FORTIER@sakilacustomer.org',514,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(510,2,'BEN','EASTER','BEN.EASTER@sakilacustomer.org',515,0,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(511,1,'CHESTER','BENNER','CHESTER.BENNER@sakilacustomer.org',516,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(512,1,'CECIL','VINES','CECIL.VINES@sakilacustomer.org',517,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(513,2,'DUANE','TUBBS','DUANE.TUBBS@sakilacustomer.org',519,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(514,2,'FRANKLIN','TROUTMAN','FRANKLIN.TROUTMAN@sakilacustomer.org',520,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(515,1,'ANDRE','RAPP','ANDRE.RAPP@sakilacustomer.org',521,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(516,2,'ELMER','NOE','ELMER.NOE@sakilacustomer.org',522,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(517,2,'BRAD','MCCURDY','BRAD.MCCURDY@sakilacustomer.org',523,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(518,1,'GABRIEL','HARDER','GABRIEL.HARDER@sakilacustomer.org',524,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(519,2,'RON','DELUCA','RON.DELUCA@sakilacustomer.org',525,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(520,2,'MITCHELL','WESTMORELAND','MITCHELL.WESTMORELAND@sakilacustomer.org',526,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(521,2,'ROLAND','SOUTH','ROLAND.SOUTH@sakilacustomer.org',527,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(522,2,'ARNOLD','HAVENS','ARNOLD.HAVENS@sakilacustomer.org',528,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(523,1,'HARVEY','GUAJARDO','HARVEY.GUAJARDO@sakilacustomer.org',529,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(524,1,'JARED','ELY','JARED.ELY@sakilacustomer.org',530,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(525,2,'ADRIAN','CLARY','ADRIAN.CLARY@sakilacustomer.org',531,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(526,2,'KARL','SEAL','KARL.SEAL@sakilacustomer.org',532,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(527,1,'CORY','MEEHAN','CORY.MEEHAN@sakilacustomer.org',533,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(528,1,'CLAUDE','HERZOG','CLAUDE.HERZOG@sakilacustomer.org',534,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(529,2,'ERIK','GUILLEN','ERIK.GUILLEN@sakilacustomer.org',535,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(530,2,'DARRYL','ASHCRAFT','DARRYL.ASHCRAFT@sakilacustomer.org',536,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(531,2,'JAMIE','WAUGH','JAMIE.WAUGH@sakilacustomer.org',537,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(532,2,'NEIL','RENNER','NEIL.RENNER@sakilacustomer.org',538,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(533,1,'JESSIE','MILAM','JESSIE.MILAM@sakilacustomer.org',539,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(534,1,'CHRISTIAN','JUNG','CHRISTIAN.JUNG@sakilacustomer.org',540,0,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(535,1,'JAVIER','ELROD','JAVIER.ELROD@sakilacustomer.org',541,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(536,2,'FERNANDO','CHURCHILL','FERNANDO.CHURCHILL@sakilacustomer.org',542,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(537,2,'CLINTON','BUFORD','CLINTON.BUFORD@sakilacustomer.org',543,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(538,2,'TED','BREAUX','TED.BREAUX@sakilacustomer.org',544,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(539,1,'MATHEW','BOLIN','MATHEW.BOLIN@sakilacustomer.org',545,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(540,1,'TYRONE','ASHER','TYRONE.ASHER@sakilacustomer.org',546,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(541,2,'DARREN','WINDHAM','DARREN.WINDHAM@sakilacustomer.org',547,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(542,2,'LONNIE','TIRADO','LONNIE.TIRADO@sakilacustomer.org',548,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(543,1,'LANCE','PEMBERTON','LANCE.PEMBERTON@sakilacustomer.org',549,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(544,2,'CODY','NOLEN','CODY.NOLEN@sakilacustomer.org',550,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(545,2,'JULIO','NOLAND','JULIO.NOLAND@sakilacustomer.org',551,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(546,1,'KELLY','KNOTT','KELLY.KNOTT@sakilacustomer.org',552,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(547,1,'KURT','EMMONS','KURT.EMMONS@sakilacustomer.org',553,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(548,1,'ALLAN','CORNISH','ALLAN.CORNISH@sakilacustomer.org',554,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(549,1,'NELSON','CHRISTENSON','NELSON.CHRISTENSON@sakilacustomer.org',555,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(550,2,'GUY','BROWNLEE','GUY.BROWNLEE@sakilacustomer.org',556,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(551,2,'CLAYTON','BARBEE','CLAYTON.BARBEE@sakilacustomer.org',557,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(552,2,'HUGH','WALDROP','HUGH.WALDROP@sakilacustomer.org',558,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(553,1,'MAX','PITT','MAX.PITT@sakilacustomer.org',559,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(554,1,'DWAYNE','OLVERA','DWAYNE.OLVERA@sakilacustomer.org',560,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(555,1,'DWIGHT','LOMBARDI','DWIGHT.LOMBARDI@sakilacustomer.org',561,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(556,2,'ARMANDO','GRUBER','ARMANDO.GRUBER@sakilacustomer.org',562,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(557,1,'FELIX','GAFFNEY','FELIX.GAFFNEY@sakilacustomer.org',563,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(558,1,'JIMMIE','EGGLESTON','JIMMIE.EGGLESTON@sakilacustomer.org',564,0,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(559,2,'EVERETT','BANDA','EVERETT.BANDA@sakilacustomer.org',565,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(560,1,'JORDAN','ARCHULETA','JORDAN.ARCHULETA@sakilacustomer.org',566,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(561,2,'IAN','STILL','IAN.STILL@sakilacustomer.org',567,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(562,1,'WALLACE','SLONE','WALLACE.SLONE@sakilacustomer.org',568,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(563,2,'KEN','PREWITT','KEN.PREWITT@sakilacustomer.org',569,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(564,2,'BOB','PFEIFFER','BOB.PFEIFFER@sakilacustomer.org',570,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(565,2,'JAIME','NETTLES','JAIME.NETTLES@sakilacustomer.org',571,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(566,1,'CASEY','MENA','CASEY.MENA@sakilacustomer.org',572,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(567,2,'ALFREDO','MCADAMS','ALFREDO.MCADAMS@sakilacustomer.org',573,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(568,2,'ALBERTO','HENNING','ALBERTO.HENNING@sakilacustomer.org',574,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(569,2,'DAVE','GARDINER','DAVE.GARDINER@sakilacustomer.org',575,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(570,2,'IVAN','CROMWELL','IVAN.CROMWELL@sakilacustomer.org',576,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(571,2,'JOHNNIE','CHISHOLM','JOHNNIE.CHISHOLM@sakilacustomer.org',577,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(572,1,'SIDNEY','BURLESON','SIDNEY.BURLESON@sakilacustomer.org',578,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(573,1,'BYRON','BOX','BYRON.BOX@sakilacustomer.org',579,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(574,2,'JULIAN','VEST','JULIAN.VEST@sakilacustomer.org',580,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(575,2,'ISAAC','OGLESBY','ISAAC.OGLESBY@sakilacustomer.org',581,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(576,2,'MORRIS','MCCARTER','MORRIS.MCCARTER@sakilacustomer.org',582,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(577,2,'CLIFTON','MALCOLM','CLIFTON.MALCOLM@sakilacustomer.org',583,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(578,2,'WILLARD','LUMPKIN','WILLARD.LUMPKIN@sakilacustomer.org',584,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(579,2,'DARYL','LARUE','DARYL.LARUE@sakilacustomer.org',585,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(580,1,'ROSS','GREY','ROSS.GREY@sakilacustomer.org',586,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(581,1,'VIRGIL','WOFFORD','VIRGIL.WOFFORD@sakilacustomer.org',587,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(582,2,'ANDY','VANHORN','ANDY.VANHORN@sakilacustomer.org',588,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(583,1,'MARSHALL','THORN','MARSHALL.THORN@sakilacustomer.org',589,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(584,2,'SALVADOR','TEEL','SALVADOR.TEEL@sakilacustomer.org',590,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(585,1,'PERRY','SWAFFORD','PERRY.SWAFFORD@sakilacustomer.org',591,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(586,1,'KIRK','STCLAIR','KIRK.STCLAIR@sakilacustomer.org',592,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(587,1,'SERGIO','STANFIELD','SERGIO.STANFIELD@sakilacustomer.org',593,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(588,1,'MARION','OCAMPO','MARION.OCAMPO@sakilacustomer.org',594,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(589,1,'TRACY','HERRMANN','TRACY.HERRMANN@sakilacustomer.org',595,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(590,2,'SETH','HANNON','SETH.HANNON@sakilacustomer.org',596,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(591,1,'KENT','ARSENAULT','KENT.ARSENAULT@sakilacustomer.org',597,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(592,1,'TERRANCE','ROUSH','TERRANCE.ROUSH@sakilacustomer.org',598,0,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(593,2,'RENE','MCALISTER','RENE.MCALISTER@sakilacustomer.org',599,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(594,1,'EDUARDO','HIATT','EDUARDO.HIATT@sakilacustomer.org',600,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(595,1,'TERRENCE','GUNDERSON','TERRENCE.GUNDERSON@sakilacustomer.org',601,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(596,1,'ENRIQUE','FORSYTHE','ENRIQUE.FORSYTHE@sakilacustomer.org',602,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(597,1,'FREDDIE','DUGGAN','FREDDIE.DUGGAN@sakilacustomer.org',603,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(598,1,'WADE','DELVALLE','WADE.DELVALLE@sakilacustomer.org',604,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'),(599,2,'AUSTIN','CINTRON','AUSTIN.CINTRON@sakilacustomer.org',605,1,'2006-02-14 22:04:37','2006-02-15 04:57:20'); +COMMIT; + +-- +-- Trigger to enforce create dates on INSERT +-- + +CREATE TRIGGER customer_create_date BEFORE INSERT ON customer + FOR EACH ROW SET NEW.create_date = NOW(); + +-- +-- Dumping data for table film +-- + +SET AUTOCOMMIT=0; +INSERT INTO film VALUES (1,'ACADEMY DINOSAUR','A Epic Drama of a Feminist And a Mad Scientist who must Battle a Teacher in The Canadian Rockies',2006,1,NULL,6,'0.99',86,'20.99','PG','Deleted Scenes,Behind the Scenes','2006-02-15 05:03:42'),(2,'ACE GOLDFINGER','A Astounding Epistle of a Database Administrator And a Explorer who must Find a Car in Ancient China',2006,1,NULL,3,'4.99',48,'12.99','G','Trailers,Deleted Scenes','2006-02-15 05:03:42'),(3,'ADAPTATION HOLES','A Astounding Reflection of a Lumberjack And a Car who must Sink a Lumberjack in A Baloon Factory',2006,1,NULL,7,'2.99',50,'18.99','NC-17','Trailers,Deleted Scenes','2006-02-15 05:03:42'),(4,'AFFAIR PREJUDICE','A Fanciful Documentary of a Frisbee And a Lumberjack who must Chase a Monkey in A Shark Tank',2006,1,NULL,5,'2.99',117,'26.99','G','Commentaries,Behind the Scenes','2006-02-15 05:03:42'),(5,'AFRICAN EGG','A Fast-Paced Documentary of a Pastry Chef And a Dentist who must Pursue a Forensic Psychologist in The Gulf of Mexico',2006,1,NULL,6,'2.99',130,'22.99','G','Deleted Scenes','2006-02-15 05:03:42'),(6,'AGENT TRUMAN','A Intrepid Panorama of a Robot And a Boy who must Escape a Sumo Wrestler in Ancient China',2006,1,NULL,3,'2.99',169,'17.99','PG','Deleted Scenes','2006-02-15 05:03:42'),(7,'AIRPLANE SIERRA','A Touching Saga of a Hunter And a Butler who must Discover a Butler in A Jet Boat',2006,1,NULL,6,'4.99',62,'28.99','PG-13','Trailers,Deleted Scenes','2006-02-15 05:03:42'),(8,'AIRPORT POLLOCK','A Epic Tale of a Moose And a Girl who must Confront a Monkey in Ancient India',2006,1,NULL,6,'4.99',54,'15.99','R','Trailers','2006-02-15 05:03:42'),(9,'ALABAMA DEVIL','A Thoughtful Panorama of a Database Administrator And a Mad Scientist who must Outgun a Mad Scientist in A Jet Boat',2006,1,NULL,3,'2.99',114,'21.99','PG-13','Trailers,Deleted Scenes','2006-02-15 05:03:42'),(10,'ALADDIN CALENDAR','A Action-Packed Tale of a Man And a Lumberjack who must Reach a Feminist in Ancient China',2006,1,NULL,6,'4.99',63,'24.99','NC-17','Trailers,Deleted Scenes','2006-02-15 05:03:42'),(11,'ALAMO VIDEOTAPE','A Boring Epistle of a Butler And a Cat who must Fight a Pastry Chef in A MySQL Convention',2006,1,NULL,6,'0.99',126,'16.99','G','Commentaries,Behind the Scenes','2006-02-15 05:03:42'),(12,'ALASKA PHANTOM','A Fanciful Saga of a Hunter And a Pastry Chef who must Vanquish a Boy in Australia',2006,1,NULL,6,'0.99',136,'22.99','PG','Commentaries,Deleted Scenes','2006-02-15 05:03:42'),(13,'ALI FOREVER','A Action-Packed Drama of a Dentist And a Crocodile who must Battle a Feminist in The Canadian Rockies',2006,1,NULL,4,'4.99',150,'21.99','PG','Deleted Scenes,Behind the Scenes','2006-02-15 05:03:42'),(14,'ALICE FANTASIA','A Emotional Drama of a A Shark And a Database Administrator who must Vanquish a Pioneer in Soviet Georgia',2006,1,NULL,6,'0.99',94,'23.99','NC-17','Trailers,Deleted Scenes,Behind the Scenes','2006-02-15 05:03:42'),(15,'ALIEN CENTER','A Brilliant Drama of a Cat And a Mad Scientist who must Battle a Feminist in A MySQL Convention',2006,1,NULL,5,'2.99',46,'10.99','NC-17','Trailers,Commentaries,Behind the Scenes','2006-02-15 05:03:42'),(16,'ALLEY EVOLUTION','A Fast-Paced Drama of a Robot And a Composer who must Battle a Astronaut in New Orleans',2006,1,NULL,6,'2.99',180,'23.99','NC-17','Trailers,Commentaries','2006-02-15 05:03:42'),(17,'ALONE TRIP','A Fast-Paced Character Study of a Composer And a Dog who must Outgun a Boat in An Abandoned Fun House',2006,1,NULL,3,'0.99',82,'14.99','R','Trailers,Behind the Scenes','2006-02-15 05:03:42'),(18,'ALTER VICTORY','A Thoughtful Drama of a Composer And a Feminist who must Meet a Secret Agent in The Canadian Rockies',2006,1,NULL,6,'0.99',57,'27.99','PG-13','Trailers,Behind the Scenes','2006-02-15 05:03:42'),(19,'AMADEUS HOLY','A Emotional Display of a Pioneer And a Technical Writer who must Battle a Man in A Baloon',2006,1,NULL,6,'0.99',113,'20.99','PG','Commentaries,Deleted Scenes,Behind the Scenes','2006-02-15 05:03:42'),(20,'AMELIE HELLFIGHTERS','A Boring Drama of a Woman And a Squirrel who must Conquer a Student in A Baloon',2006,1,NULL,4,'4.99',79,'23.99','R','Commentaries,Deleted Scenes,Behind the Scenes','2006-02-15 05:03:42'),(21,'AMERICAN CIRCUS','A Insightful Drama of a Girl And a Astronaut who must Face a Database Administrator in A Shark Tank',2006,1,NULL,3,'4.99',129,'17.99','R','Commentaries,Behind the Scenes','2006-02-15 05:03:42'),(22,'AMISTAD MIDSUMMER','A Emotional Character Study of a Dentist And a Crocodile who must Meet a Sumo Wrestler in California',2006,1,NULL,6,'2.99',85,'10.99','G','Commentaries,Behind the Scenes','2006-02-15 05:03:42'),(23,'ANACONDA CONFESSIONS','A Lacklusture Display of a Dentist And a Dentist who must Fight a Girl in Australia',2006,1,NULL,3,'0.99',92,'9.99','R','Trailers,Deleted Scenes','2006-02-15 05:03:42'),(24,'ANALYZE HOOSIERS','A Thoughtful Display of a Explorer And a Pastry Chef who must Overcome a Feminist in The Sahara Desert',2006,1,NULL,6,'2.99',181,'19.99','R','Trailers,Behind the Scenes','2006-02-15 05:03:42'),(25,'ANGELS LIFE','A Thoughtful Display of a Woman And a Astronaut who must Battle a Robot in Berlin',2006,1,NULL,3,'2.99',74,'15.99','G','Trailers','2006-02-15 05:03:42'),(26,'ANNIE IDENTITY','A Amazing Panorama of a Pastry Chef And a Boat who must Escape a Woman in An Abandoned Amusement Park',2006,1,NULL,3,'0.99',86,'15.99','G','Commentaries,Deleted Scenes','2006-02-15 05:03:42'),(27,'ANONYMOUS HUMAN','A Amazing Reflection of a Database Administrator And a Astronaut who must Outrace a Database Administrator in A Shark Tank',2006,1,NULL,7,'0.99',179,'12.99','NC-17','Deleted Scenes,Behind the Scenes','2006-02-15 05:03:42'),(28,'ANTHEM LUKE','A Touching Panorama of a Waitress And a Woman who must Outrace a Dog in An Abandoned Amusement Park',2006,1,NULL,5,'4.99',91,'16.99','PG-13','Deleted Scenes,Behind the Scenes','2006-02-15 05:03:42'),(29,'ANTITRUST TOMATOES','A Fateful Yarn of a Womanizer And a Feminist who must Succumb a Database Administrator in Ancient India',2006,1,NULL,5,'2.99',168,'11.99','NC-17','Trailers,Commentaries,Deleted Scenes','2006-02-15 05:03:42'),(30,'ANYTHING SAVANNAH','A Epic Story of a Pastry Chef And a Woman who must Chase a Feminist in An Abandoned Fun House',2006,1,NULL,4,'2.99',82,'27.99','R','Trailers,Deleted Scenes,Behind the Scenes','2006-02-15 05:03:42'),(31,'APACHE DIVINE','A Awe-Inspiring Reflection of a Pastry Chef And a Teacher who must Overcome a Sumo Wrestler in A U-Boat',2006,1,NULL,5,'4.99',92,'16.99','NC-17','Commentaries,Deleted Scenes,Behind the Scenes','2006-02-15 05:03:42'),(32,'APOCALYPSE FLAMINGOS','A Astounding Story of a Dog And a Squirrel who must Defeat a Woman in An Abandoned Amusement Park',2006,1,NULL,6,'4.99',119,'11.99','R','Trailers,Commentaries','2006-02-15 05:03:42'),(33,'APOLLO TEEN','A Action-Packed Reflection of a Crocodile And a Explorer who must Find a Sumo Wrestler in An Abandoned Mine Shaft',2006,1,NULL,5,'2.99',153,'15.99','PG-13','Trailers,Commentaries,Deleted Scenes,Behind the Scenes','2006-02-15 05:03:42'),(34,'ARABIA DOGMA','A Touching Epistle of a Madman And a Mad Cow who must Defeat a Student in Nigeria',2006,1,NULL,6,'0.99',62,'29.99','NC-17','Commentaries,Deleted Scenes','2006-02-15 05:03:42'),(35,'ARACHNOPHOBIA ROLLERCOASTER','A Action-Packed Reflection of a Pastry Chef And a Composer who must Discover a Mad Scientist in The First Manned Space Station',2006,1,NULL,4,'2.99',147,'24.99','PG-13','Trailers,Deleted Scenes,Behind the Scenes','2006-02-15 05:03:42'),(36,'ARGONAUTS TOWN','A Emotional Epistle of a Forensic Psychologist And a Butler who must Challenge a Waitress in An Abandoned Mine Shaft',2006,1,NULL,7,'0.99',127,'12.99','PG-13','Trailers,Commentaries','2006-02-15 05:03:42'),(37,'ARIZONA BANG','A Brilliant Panorama of a Mad Scientist And a Mad Cow who must Meet a Pioneer in A Monastery',2006,1,NULL,3,'2.99',121,'28.99','PG','Trailers,Deleted Scenes','2006-02-15 05:03:42'),(38,'ARK RIDGEMONT','A Beautiful Yarn of a Pioneer And a Monkey who must Pursue a Explorer in The Sahara Desert',2006,1,NULL,6,'0.99',68,'25.99','NC-17','Trailers,Commentaries,Deleted Scenes,Behind the Scenes','2006-02-15 05:03:42'),(39,'ARMAGEDDON LOST','A Fast-Paced Tale of a Boat And a Teacher who must Succumb a Composer in An Abandoned Mine Shaft',2006,1,NULL,5,'0.99',99,'10.99','G','Trailers','2006-02-15 05:03:42'),(40,'ARMY FLINTSTONES','A Boring Saga of a Database Administrator And a Womanizer who must Battle a Waitress in Nigeria',2006,1,NULL,4,'0.99',148,'22.99','R','Trailers,Commentaries','2006-02-15 05:03:42'),(41,'ARSENIC INDEPENDENCE','A Fanciful Documentary of a Mad Cow And a Womanizer who must Find a Dentist in Berlin',2006,1,NULL,4,'0.99',137,'17.99','PG','Trailers,Deleted Scenes,Behind the Scenes','2006-02-15 05:03:42'),(42,'ARTIST COLDBLOODED','A Stunning Reflection of a Robot And a Moose who must Challenge a Woman in California',2006,1,NULL,5,'2.99',170,'10.99','NC-17','Trailers,Behind the Scenes','2006-02-15 05:03:42'),(43,'ATLANTIS CAUSE','A Thrilling Yarn of a Feminist And a Hunter who must Fight a Technical Writer in A Shark Tank',2006,1,NULL,6,'2.99',170,'15.99','G','Behind the Scenes','2006-02-15 05:03:42'),(44,'ATTACKS HATE','A Fast-Paced Panorama of a Technical Writer And a Mad Scientist who must Find a Feminist in An Abandoned Mine Shaft',2006,1,NULL,5,'4.99',113,'21.99','PG-13','Trailers,Behind the Scenes','2006-02-15 05:03:42'),(45,'ATTRACTION NEWTON','A Astounding Panorama of a Composer And a Frisbee who must Reach a Husband in Ancient Japan',2006,1,NULL,5,'4.99',83,'14.99','PG-13','Trailers,Behind the Scenes','2006-02-15 05:03:42'),(46,'AUTUMN CROW','A Beautiful Tale of a Dentist And a Mad Cow who must Battle a Moose in The Sahara Desert',2006,1,NULL,3,'4.99',108,'13.99','G','Trailers,Commentaries,Deleted Scenes,Behind the Scenes','2006-02-15 05:03:42'),(47,'BABY HALL','A Boring Character Study of a A Shark And a Girl who must Outrace a Feminist in An Abandoned Mine Shaft',2006,1,NULL,5,'4.99',153,'23.99','NC-17','Commentaries','2006-02-15 05:03:42'),(48,'BACKLASH UNDEFEATED','A Stunning Character Study of a Mad Scientist And a Mad Cow who must Kill a Car in A Monastery',2006,1,NULL,3,'4.99',118,'24.99','PG-13','Trailers,Behind the Scenes','2006-02-15 05:03:42'),(49,'BADMAN DAWN','A Emotional Panorama of a Pioneer And a Composer who must Escape a Mad Scientist in A Jet Boat',2006,1,NULL,6,'2.99',162,'22.99','R','Trailers,Commentaries,Behind the Scenes','2006-02-15 05:03:42'),(50,'BAKED CLEOPATRA','A Stunning Drama of a Forensic Psychologist And a Husband who must Overcome a Waitress in A Monastery',2006,1,NULL,3,'2.99',182,'20.99','G','Commentaries,Behind the Scenes','2006-02-15 05:03:42'),(51,'BALLOON HOMEWARD','A Insightful Panorama of a Forensic Psychologist And a Mad Cow who must Build a Mad Scientist in The First Manned Space Station',2006,1,NULL,5,'2.99',75,'10.99','NC-17','Deleted Scenes','2006-02-15 05:03:42'),(52,'BALLROOM MOCKINGBIRD','A Thrilling Documentary of a Composer And a Monkey who must Find a Feminist in California',2006,1,NULL,6,'0.99',173,'29.99','G','Commentaries,Deleted Scenes','2006-02-15 05:03:42'),(53,'BANG KWAI','A Epic Drama of a Madman And a Cat who must Face a A Shark in An Abandoned Amusement Park',2006,1,NULL,5,'2.99',87,'25.99','NC-17','Commentaries,Deleted Scenes,Behind the Scenes','2006-02-15 05:03:42'),(54,'BANGER PINOCCHIO','A Awe-Inspiring Drama of a Car And a Pastry Chef who must Chase a Crocodile in The First Manned Space Station',2006,1,NULL,5,'0.99',113,'15.99','R','Trailers,Commentaries,Deleted Scenes','2006-02-15 05:03:42'),(55,'BARBARELLA STREETCAR','A Awe-Inspiring Story of a Feminist And a Cat who must Conquer a Dog in A Monastery',2006,1,NULL,6,'2.99',65,'27.99','G','Behind the Scenes','2006-02-15 05:03:42'),(56,'BAREFOOT MANCHURIAN','A Intrepid Story of a Cat And a Student who must Vanquish a Girl in An Abandoned Amusement Park',2006,1,NULL,6,'2.99',129,'15.99','G','Trailers,Commentaries','2006-02-15 05:03:42'),(57,'BASIC EASY','A Stunning Epistle of a Man And a Husband who must Reach a Mad Scientist in A Jet Boat',2006,1,NULL,4,'2.99',90,'18.99','PG-13','Deleted Scenes','2006-02-15 05:03:42'),(58,'BEACH HEARTBREAKERS','A Fateful Display of a Womanizer And a Mad Scientist who must Outgun a A Shark in Soviet Georgia',2006,1,NULL,6,'2.99',122,'16.99','G','Deleted Scenes,Behind the Scenes','2006-02-15 05:03:42'),(59,'BEAR GRACELAND','A Astounding Saga of a Dog And a Boy who must Kill a Teacher in The First Manned Space Station',2006,1,NULL,4,'2.99',160,'20.99','R','Deleted Scenes','2006-02-15 05:03:42'),(60,'BEAST HUNCHBACK','A Awe-Inspiring Epistle of a Student And a Squirrel who must Defeat a Boy in Ancient China',2006,1,NULL,3,'4.99',89,'22.99','R','Deleted Scenes,Behind the Scenes','2006-02-15 05:03:42'),(61,'BEAUTY GREASE','A Fast-Paced Display of a Composer And a Moose who must Sink a Robot in An Abandoned Mine Shaft',2006,1,NULL,5,'4.99',175,'28.99','G','Trailers,Commentaries','2006-02-15 05:03:42'),(62,'BED HIGHBALL','A Astounding Panorama of a Lumberjack And a Dog who must Redeem a Woman in An Abandoned Fun House',2006,1,NULL,5,'2.99',106,'23.99','NC-17','Trailers,Commentaries,Deleted Scenes','2006-02-15 05:03:42'),(63,'BEDAZZLED MARRIED','A Astounding Character Study of a Madman And a Robot who must Meet a Mad Scientist in An Abandoned Fun House',2006,1,NULL,6,'0.99',73,'21.99','PG','Trailers,Deleted Scenes,Behind the Scenes','2006-02-15 05:03:42'),(64,'BEETHOVEN EXORCIST','A Epic Display of a Pioneer And a Student who must Challenge a Butler in The Gulf of Mexico',2006,1,NULL,6,'0.99',151,'26.99','PG-13','Commentaries,Behind the Scenes','2006-02-15 05:03:42'),(65,'BEHAVIOR RUNAWAY','A Unbelieveable Drama of a Student And a Husband who must Outrace a Sumo Wrestler in Berlin',2006,1,NULL,3,'4.99',100,'20.99','PG','Trailers,Deleted Scenes,Behind the Scenes','2006-02-15 05:03:42'),(66,'BENEATH RUSH','A Astounding Panorama of a Man And a Monkey who must Discover a Man in The First Manned Space Station',2006,1,NULL,6,'0.99',53,'27.99','NC-17','Commentaries,Deleted Scenes','2006-02-15 05:03:42'),(67,'BERETS AGENT','A Taut Saga of a Crocodile And a Boy who must Overcome a Technical Writer in Ancient China',2006,1,NULL,5,'2.99',77,'24.99','PG-13','Deleted Scenes','2006-02-15 05:03:42'),(68,'BETRAYED REAR','A Emotional Character Study of a Boat And a Pioneer who must Find a Explorer in A Shark Tank',2006,1,NULL,5,'4.99',122,'26.99','NC-17','Commentaries,Deleted Scenes,Behind the Scenes','2006-02-15 05:03:42'),(69,'BEVERLY OUTLAW','A Fanciful Documentary of a Womanizer And a Boat who must Defeat a Madman in The First Manned Space Station',2006,1,NULL,3,'2.99',85,'21.99','R','Trailers','2006-02-15 05:03:42'),(70,'BIKINI BORROWERS','A Astounding Drama of a Astronaut And a Cat who must Discover a Woman in The First Manned Space Station',2006,1,NULL,7,'4.99',142,'26.99','NC-17','Commentaries,Deleted Scenes','2006-02-15 05:03:42'),(71,'BILKO ANONYMOUS','A Emotional Reflection of a Teacher And a Man who must Meet a Cat in The First Manned Space Station',2006,1,NULL,3,'4.99',100,'25.99','PG-13','Commentaries,Deleted Scenes,Behind the Scenes','2006-02-15 05:03:42'),(72,'BILL OTHERS','A Stunning Saga of a Mad Scientist And a Forensic Psychologist who must Challenge a Squirrel in A MySQL Convention',2006,1,NULL,6,'2.99',93,'12.99','PG','Trailers,Commentaries','2006-02-15 05:03:42'),(73,'BINGO TALENTED','A Touching Tale of a Girl And a Crocodile who must Discover a Waitress in Nigeria',2006,1,NULL,5,'2.99',150,'22.99','PG-13','Trailers,Commentaries','2006-02-15 05:03:42'),(74,'BIRCH ANTITRUST','A Fanciful Panorama of a Husband And a Pioneer who must Outgun a Dog in A Baloon',2006,1,NULL,4,'4.99',162,'18.99','PG','Trailers,Commentaries,Deleted Scenes','2006-02-15 05:03:42'),(75,'BIRD INDEPENDENCE','A Thrilling Documentary of a Car And a Student who must Sink a Hunter in The Canadian Rockies',2006,1,NULL,6,'4.99',163,'14.99','G','Commentaries,Behind the Scenes','2006-02-15 05:03:42'),(76,'BIRDCAGE CASPER','A Fast-Paced Saga of a Frisbee And a Astronaut who must Overcome a Feminist in Ancient India',2006,1,NULL,4,'0.99',103,'23.99','NC-17','Commentaries,Deleted Scenes,Behind the Scenes','2006-02-15 05:03:42'),(77,'BIRDS PERDITION','A Boring Story of a Womanizer And a Pioneer who must Face a Dog in California',2006,1,NULL,5,'4.99',61,'15.99','G','Trailers,Behind the Scenes','2006-02-15 05:03:42'),(78,'BLACKOUT PRIVATE','A Intrepid Yarn of a Pastry Chef And a Mad Scientist who must Challenge a Secret Agent in Ancient Japan',2006,1,NULL,7,'2.99',85,'12.99','PG','Trailers,Deleted Scenes','2006-02-15 05:03:42'),(79,'BLADE POLISH','A Thoughtful Character Study of a Frisbee And a Pastry Chef who must Fight a Dentist in The First Manned Space Station',2006,1,NULL,5,'0.99',114,'10.99','PG-13','Trailers,Behind the Scenes','2006-02-15 05:03:42'),(80,'BLANKET BEVERLY','A Emotional Documentary of a Student And a Girl who must Build a Boat in Nigeria',2006,1,NULL,7,'2.99',148,'21.99','G','Trailers','2006-02-15 05:03:42'),(81,'BLINDNESS GUN','A Touching Drama of a Robot And a Dentist who must Meet a Hunter in A Jet Boat',2006,1,NULL,6,'4.99',103,'29.99','PG-13','Trailers,Behind the Scenes','2006-02-15 05:03:42'),(82,'BLOOD ARGONAUTS','A Boring Drama of a Explorer And a Man who must Kill a Lumberjack in A Manhattan Penthouse',2006,1,NULL,3,'0.99',71,'13.99','G','Trailers,Commentaries,Behind the Scenes','2006-02-15 05:03:42'),(83,'BLUES INSTINCT','A Insightful Documentary of a Boat And a Composer who must Meet a Forensic Psychologist in An Abandoned Fun House',2006,1,NULL,5,'2.99',50,'18.99','G','Trailers,Deleted Scenes,Behind the Scenes','2006-02-15 05:03:42'),(84,'BOILED DARES','A Awe-Inspiring Story of a Waitress And a Dog who must Discover a Dentist in Ancient Japan',2006,1,NULL,7,'4.99',102,'13.99','PG','Trailers,Commentaries','2006-02-15 05:03:42'),(85,'BONNIE HOLOCAUST','A Fast-Paced Story of a Crocodile And a Robot who must Find a Moose in Ancient Japan',2006,1,NULL,4,'0.99',63,'29.99','G','Deleted Scenes','2006-02-15 05:03:42'),(86,'BOOGIE AMELIE','A Lacklusture Character Study of a Husband And a Sumo Wrestler who must Succumb a Technical Writer in The Gulf of Mexico',2006,1,NULL,6,'4.99',121,'11.99','R','Commentaries,Behind the Scenes','2006-02-15 05:03:42'),(87,'BOONDOCK BALLROOM','A Fateful Panorama of a Crocodile And a Boy who must Defeat a Monkey in The Gulf of Mexico',2006,1,NULL,7,'0.99',76,'14.99','NC-17','Behind the Scenes','2006-02-15 05:03:42'),(88,'BORN SPINAL','A Touching Epistle of a Frisbee And a Husband who must Pursue a Student in Nigeria',2006,1,NULL,7,'4.99',179,'17.99','PG','Trailers,Commentaries,Deleted Scenes','2006-02-15 05:03:42'),(89,'BORROWERS BEDAZZLED','A Brilliant Epistle of a Teacher And a Sumo Wrestler who must Defeat a Man in An Abandoned Fun House',2006,1,NULL,7,'0.99',63,'22.99','G','Commentaries,Deleted Scenes,Behind the Scenes','2006-02-15 05:03:42'),(90,'BOULEVARD MOB','A Fateful Epistle of a Moose And a Monkey who must Confront a Lumberjack in Ancient China',2006,1,NULL,3,'0.99',63,'11.99','R','Trailers','2006-02-15 05:03:42'),(91,'BOUND CHEAPER','A Thrilling Panorama of a Database Administrator And a Astronaut who must Challenge a Lumberjack in A Baloon',2006,1,NULL,5,'0.99',98,'17.99','PG','Behind the Scenes','2006-02-15 05:03:42'),(92,'BOWFINGER GABLES','A Fast-Paced Yarn of a Waitress And a Composer who must Outgun a Dentist in California',2006,1,NULL,7,'4.99',72,'19.99','NC-17','Trailers,Deleted Scenes','2006-02-15 05:03:42'),(93,'BRANNIGAN SUNRISE','A Amazing Epistle of a Moose And a Crocodile who must Outrace a Dog in Berlin',2006,1,NULL,4,'4.99',121,'27.99','PG','Trailers','2006-02-15 05:03:42'),(94,'BRAVEHEART HUMAN','A Insightful Story of a Dog And a Pastry Chef who must Battle a Girl in Berlin',2006,1,NULL,7,'2.99',176,'14.99','PG-13','Trailers,Deleted Scenes','2006-02-15 05:03:42'),(95,'BREAKFAST GOLDFINGER','A Beautiful Reflection of a Student And a Student who must Fight a Moose in Berlin',2006,1,NULL,5,'4.99',123,'18.99','G','Trailers,Commentaries,Deleted Scenes','2006-02-15 05:03:42'),(96,'BREAKING HOME','A Beautiful Display of a Secret Agent And a Monkey who must Battle a Sumo Wrestler in An Abandoned Mine Shaft',2006,1,NULL,4,'2.99',169,'21.99','PG-13','Trailers,Commentaries','2006-02-15 05:03:42'),(97,'BRIDE INTRIGUE','A Epic Tale of a Robot And a Monkey who must Vanquish a Man in New Orleans',2006,1,NULL,7,'0.99',56,'24.99','G','Trailers,Commentaries,Behind the Scenes','2006-02-15 05:03:42'),(98,'BRIGHT ENCOUNTERS','A Fateful Yarn of a Lumberjack And a Feminist who must Conquer a Student in A Jet Boat',2006,1,NULL,4,'4.99',73,'12.99','PG-13','Trailers','2006-02-15 05:03:42'),(99,'BRINGING HYSTERICAL','A Fateful Saga of a A Shark And a Technical Writer who must Find a Woman in A Jet Boat',2006,1,NULL,7,'2.99',136,'14.99','PG','Trailers','2006-02-15 05:03:42'),(100,'BROOKLYN DESERT','A Beautiful Drama of a Dentist And a Composer who must Battle a Sumo Wrestler in The First Manned Space Station',2006,1,NULL,7,'4.99',161,'21.99','R','Commentaries','2006-02-15 05:03:42'),(101,'BROTHERHOOD BLANKET','A Fateful Character Study of a Butler And a Technical Writer who must Sink a Astronaut in Ancient Japan',2006,1,NULL,3,'0.99',73,'26.99','R','Behind the Scenes','2006-02-15 05:03:42'),(102,'BUBBLE GROSSE','A Awe-Inspiring Panorama of a Crocodile And a Moose who must Confront a Girl in A Baloon',2006,1,NULL,4,'4.99',60,'20.99','R','Trailers,Commentaries,Deleted Scenes,Behind the Scenes','2006-02-15 05:03:42'),(103,'BUCKET BROTHERHOOD','A Amazing Display of a Girl And a Womanizer who must Succumb a Lumberjack in A Baloon Factory',2006,1,NULL,7,'4.99',133,'27.99','PG','Commentaries,Deleted Scenes','2006-02-15 05:03:42'),(104,'BUGSY SONG','A Awe-Inspiring Character Study of a Secret Agent And a Boat who must Find a Squirrel in The First Manned Space Station',2006,1,NULL,4,'2.99',119,'17.99','G','Commentaries','2006-02-15 05:03:42'),(105,'BULL SHAWSHANK','A Fanciful Drama of a Moose And a Squirrel who must Conquer a Pioneer in The Canadian Rockies',2006,1,NULL,6,'0.99',125,'21.99','NC-17','Deleted Scenes','2006-02-15 05:03:42'),(106,'BULWORTH COMMANDMENTS','A Amazing Display of a Mad Cow And a Pioneer who must Redeem a Sumo Wrestler in The Outback',2006,1,NULL,4,'2.99',61,'14.99','G','Trailers','2006-02-15 05:03:42'),(107,'BUNCH MINDS','A Emotional Story of a Feminist And a Feminist who must Escape a Pastry Chef in A MySQL Convention',2006,1,NULL,4,'2.99',63,'13.99','G','Behind the Scenes','2006-02-15 05:03:42'),(108,'BUTCH PANTHER','A Lacklusture Yarn of a Feminist And a Database Administrator who must Face a Hunter in New Orleans',2006,1,NULL,6,'0.99',67,'19.99','PG-13','Trailers,Commentaries,Deleted Scenes','2006-02-15 05:03:42'),(109,'BUTTERFLY CHOCOLAT','A Fateful Story of a Girl And a Composer who must Conquer a Husband in A Shark Tank',2006,1,NULL,3,'0.99',89,'17.99','G','Behind the Scenes','2006-02-15 05:03:42'),(110,'CABIN FLASH','A Stunning Epistle of a Boat And a Man who must Challenge a A Shark in A Baloon Factory',2006,1,NULL,4,'0.99',53,'25.99','NC-17','Commentaries,Deleted Scenes','2006-02-15 05:03:42'),(111,'CADDYSHACK JEDI','A Awe-Inspiring Epistle of a Woman And a Madman who must Fight a Robot in Soviet Georgia',2006,1,NULL,3,'0.99',52,'17.99','NC-17','Commentaries,Deleted Scenes','2006-02-15 05:03:42'),(112,'CALENDAR GUNFIGHT','A Thrilling Drama of a Frisbee And a Lumberjack who must Sink a Man in Nigeria',2006,1,NULL,4,'4.99',120,'22.99','NC-17','Trailers,Commentaries,Behind the Scenes','2006-02-15 05:03:42'),(113,'CALIFORNIA BIRDS','A Thrilling Yarn of a Database Administrator And a Robot who must Battle a Database Administrator in Ancient India',2006,1,NULL,4,'4.99',75,'19.99','NC-17','Trailers,Commentaries,Deleted Scenes','2006-02-15 05:03:42'),(114,'CAMELOT VACATION','A Touching Character Study of a Woman And a Waitress who must Battle a Pastry Chef in A MySQL Convention',2006,1,NULL,3,'0.99',61,'26.99','NC-17','Trailers,Commentaries,Deleted Scenes,Behind the Scenes','2006-02-15 05:03:42'),(115,'CAMPUS REMEMBER','A Astounding Drama of a Crocodile And a Mad Cow who must Build a Robot in A Jet Boat',2006,1,NULL,5,'2.99',167,'27.99','R','Behind the Scenes','2006-02-15 05:03:42'),(116,'CANDIDATE PERDITION','A Brilliant Epistle of a Composer And a Database Administrator who must Vanquish a Mad Scientist in The First Manned Space Station',2006,1,NULL,4,'2.99',70,'10.99','R','Deleted Scenes,Behind the Scenes','2006-02-15 05:03:42'),(117,'CANDLES GRAPES','A Fanciful Character Study of a Monkey And a Explorer who must Build a Astronaut in An Abandoned Fun House',2006,1,NULL,6,'4.99',135,'15.99','NC-17','Trailers,Deleted Scenes','2006-02-15 05:03:42'),(118,'CANYON STOCK','A Thoughtful Reflection of a Waitress And a Feminist who must Escape a Squirrel in A Manhattan Penthouse',2006,1,NULL,7,'0.99',85,'26.99','R','Trailers,Deleted Scenes','2006-02-15 05:03:42'),(119,'CAPER MOTIONS','A Fateful Saga of a Moose And a Car who must Pursue a Woman in A MySQL Convention',2006,1,NULL,6,'0.99',176,'22.99','G','Trailers,Commentaries,Deleted Scenes','2006-02-15 05:03:42'),(120,'CARIBBEAN LIBERTY','A Fanciful Tale of a Pioneer And a Technical Writer who must Outgun a Pioneer in A Shark Tank',2006,1,NULL,3,'4.99',92,'16.99','NC-17','Commentaries,Deleted Scenes','2006-02-15 05:03:42'),(121,'CAROL TEXAS','A Astounding Character Study of a Composer And a Student who must Overcome a Composer in A Monastery',2006,1,NULL,4,'2.99',151,'15.99','PG','Trailers,Behind the Scenes','2006-02-15 05:03:42'),(122,'CARRIE BUNCH','A Amazing Epistle of a Student And a Astronaut who must Discover a Frisbee in The Canadian Rockies',2006,1,NULL,7,'0.99',114,'11.99','PG','Trailers,Commentaries,Behind the Scenes','2006-02-15 05:03:42'),(123,'CASABLANCA SUPER','A Amazing Panorama of a Crocodile And a Forensic Psychologist who must Pursue a Secret Agent in The First Manned Space Station',2006,1,NULL,6,'4.99',85,'22.99','G','Trailers,Deleted Scenes,Behind the Scenes','2006-02-15 05:03:42'),(124,'CASPER DRAGONFLY','A Intrepid Documentary of a Boat And a Crocodile who must Chase a Robot in The Sahara Desert',2006,1,NULL,3,'4.99',163,'16.99','PG-13','Trailers','2006-02-15 05:03:42'),(125,'CASSIDY WYOMING','A Intrepid Drama of a Frisbee And a Hunter who must Kill a Secret Agent in New Orleans',2006,1,NULL,5,'2.99',61,'19.99','NC-17','Commentaries,Behind the Scenes','2006-02-15 05:03:42'),(126,'CASUALTIES ENCINO','A Insightful Yarn of a A Shark And a Pastry Chef who must Face a Boy in A Monastery',2006,1,NULL,3,'4.99',179,'16.99','G','Trailers','2006-02-15 05:03:42'),(127,'CAT CONEHEADS','A Fast-Paced Panorama of a Girl And a A Shark who must Confront a Boy in Ancient India',2006,1,NULL,5,'4.99',112,'14.99','G','Commentaries,Deleted Scenes','2006-02-15 05:03:42'),(128,'CATCH AMISTAD','A Boring Reflection of a Lumberjack And a Feminist who must Discover a Woman in Nigeria',2006,1,NULL,7,'0.99',183,'10.99','G','Trailers,Behind the Scenes','2006-02-15 05:03:42'),(129,'CAUSE DATE','A Taut Tale of a Explorer And a Pastry Chef who must Conquer a Hunter in A MySQL Convention',2006,1,NULL,3,'2.99',179,'16.99','R','Commentaries,Deleted Scenes,Behind the Scenes','2006-02-15 05:03:42'),(130,'CELEBRITY HORN','A Amazing Documentary of a Secret Agent And a Astronaut who must Vanquish a Hunter in A Shark Tank',2006,1,NULL,7,'0.99',110,'24.99','PG-13','Deleted Scenes,Behind the Scenes','2006-02-15 05:03:42'),(131,'CENTER DINOSAUR','A Beautiful Character Study of a Sumo Wrestler And a Dentist who must Find a Dog in California',2006,1,NULL,5,'4.99',152,'12.99','PG','Deleted Scenes','2006-02-15 05:03:42'),(132,'CHAINSAW UPTOWN','A Beautiful Documentary of a Boy And a Robot who must Discover a Squirrel in Australia',2006,1,NULL,6,'0.99',114,'25.99','PG','Deleted Scenes,Behind the Scenes','2006-02-15 05:03:42'),(133,'CHAMBER ITALIAN','A Fateful Reflection of a Moose And a Husband who must Overcome a Monkey in Nigeria',2006,1,NULL,7,'4.99',117,'14.99','NC-17','Trailers','2006-02-15 05:03:42'),(134,'CHAMPION FLATLINERS','A Amazing Story of a Mad Cow And a Dog who must Kill a Husband in A Monastery',2006,1,NULL,4,'4.99',51,'21.99','PG','Trailers','2006-02-15 05:03:42'),(135,'CHANCE RESURRECTION','A Astounding Story of a Forensic Psychologist And a Forensic Psychologist who must Overcome a Moose in Ancient China',2006,1,NULL,3,'2.99',70,'22.99','R','Commentaries,Deleted Scenes,Behind the Scenes','2006-02-15 05:03:42'),(136,'CHAPLIN LICENSE','A Boring Drama of a Dog And a Forensic Psychologist who must Outrace a Explorer in Ancient India',2006,1,NULL,7,'2.99',146,'26.99','NC-17','Behind the Scenes','2006-02-15 05:03:42'),(137,'CHARADE DUFFEL','A Action-Packed Display of a Man And a Waitress who must Build a Dog in A MySQL Convention',2006,1,NULL,3,'2.99',66,'21.99','PG','Trailers,Deleted Scenes,Behind the Scenes','2006-02-15 05:03:42'),(138,'CHARIOTS CONSPIRACY','A Unbelieveable Epistle of a Robot And a Husband who must Chase a Robot in The First Manned Space Station',2006,1,NULL,5,'2.99',71,'29.99','R','Deleted Scenes,Behind the Scenes','2006-02-15 05:03:42'),(139,'CHASING FIGHT','A Astounding Saga of a Technical Writer And a Butler who must Battle a Butler in A Shark Tank',2006,1,NULL,7,'4.99',114,'21.99','PG','Trailers,Commentaries','2006-02-15 05:03:42'),(140,'CHEAPER CLYDE','A Emotional Character Study of a Pioneer And a Girl who must Discover a Dog in Ancient Japan',2006,1,NULL,6,'0.99',87,'23.99','G','Trailers,Commentaries,Behind the Scenes','2006-02-15 05:03:42'),(141,'CHICAGO NORTH','A Fateful Yarn of a Mad Cow And a Waitress who must Battle a Student in California',2006,1,NULL,6,'4.99',185,'11.99','PG-13','Deleted Scenes,Behind the Scenes','2006-02-15 05:03:42'),(142,'CHICKEN HELLFIGHTERS','A Emotional Drama of a Dog And a Explorer who must Outrace a Technical Writer in Australia',2006,1,NULL,3,'0.99',122,'24.99','PG','Trailers,Commentaries,Deleted Scenes,Behind the Scenes','2006-02-15 05:03:42'),(143,'CHILL LUCK','A Lacklusture Epistle of a Boat And a Technical Writer who must Fight a A Shark in The Canadian Rockies',2006,1,NULL,6,'0.99',142,'17.99','PG','Trailers,Commentaries,Deleted Scenes','2006-02-15 05:03:42'),(144,'CHINATOWN GLADIATOR','A Brilliant Panorama of a Technical Writer And a Lumberjack who must Escape a Butler in Ancient India',2006,1,NULL,7,'4.99',61,'24.99','PG','Trailers,Commentaries,Deleted Scenes','2006-02-15 05:03:42'),(145,'CHISUM BEHAVIOR','A Epic Documentary of a Sumo Wrestler And a Butler who must Kill a Car in Ancient India',2006,1,NULL,5,'4.99',124,'25.99','G','Trailers,Commentaries,Behind the Scenes','2006-02-15 05:03:42'),(146,'CHITTY LOCK','A Boring Epistle of a Boat And a Database Administrator who must Kill a Sumo Wrestler in The First Manned Space Station',2006,1,NULL,6,'2.99',107,'24.99','G','Commentaries','2006-02-15 05:03:42'),(147,'CHOCOLAT HARRY','A Action-Packed Epistle of a Dentist And a Moose who must Meet a Mad Cow in Ancient Japan',2006,1,NULL,5,'0.99',101,'16.99','NC-17','Commentaries,Behind the Scenes','2006-02-15 05:03:42'),(148,'CHOCOLATE DUCK','A Unbelieveable Story of a Mad Scientist And a Technical Writer who must Discover a Composer in Ancient China',2006,1,NULL,3,'2.99',132,'13.99','R','Trailers,Commentaries,Behind the Scenes','2006-02-15 05:03:42'),(149,'CHRISTMAS MOONSHINE','A Action-Packed Epistle of a Feminist And a Astronaut who must Conquer a Boat in A Manhattan Penthouse',2006,1,NULL,7,'0.99',150,'21.99','NC-17','Trailers,Commentaries,Behind the Scenes','2006-02-15 05:03:42'),(150,'CIDER DESIRE','A Stunning Character Study of a Composer And a Mad Cow who must Succumb a Cat in Soviet Georgia',2006,1,NULL,7,'2.99',101,'9.99','PG','Behind the Scenes','2006-02-15 05:03:42'),(151,'CINCINATTI WHISPERER','A Brilliant Saga of a Pastry Chef And a Hunter who must Confront a Butler in Berlin',2006,1,NULL,5,'4.99',143,'26.99','NC-17','Deleted Scenes','2006-02-15 05:03:42'),(152,'CIRCUS YOUTH','A Thoughtful Drama of a Pastry Chef And a Dentist who must Pursue a Girl in A Baloon',2006,1,NULL,5,'2.99',90,'13.99','PG-13','Trailers,Deleted Scenes,Behind the Scenes','2006-02-15 05:03:42'),(153,'CITIZEN SHREK','A Fanciful Character Study of a Technical Writer And a Husband who must Redeem a Robot in The Outback',2006,1,NULL,7,'0.99',165,'18.99','G','Commentaries,Deleted Scenes','2006-02-15 05:03:42'),(154,'CLASH FREDDY','A Amazing Yarn of a Composer And a Squirrel who must Escape a Astronaut in Australia',2006,1,NULL,6,'2.99',81,'12.99','G','Commentaries,Deleted Scenes','2006-02-15 05:03:42'),(155,'CLEOPATRA DEVIL','A Fanciful Documentary of a Crocodile And a Technical Writer who must Fight a A Shark in A Baloon',2006,1,NULL,6,'0.99',150,'26.99','PG-13','Trailers,Deleted Scenes,Behind the Scenes','2006-02-15 05:03:42'),(156,'CLERKS ANGELS','A Thrilling Display of a Sumo Wrestler And a Girl who must Confront a Man in A Baloon',2006,1,NULL,3,'4.99',164,'15.99','G','Commentaries','2006-02-15 05:03:42'),(157,'CLOCKWORK PARADISE','A Insightful Documentary of a Technical Writer And a Feminist who must Challenge a Cat in A Baloon',2006,1,NULL,7,'0.99',143,'29.99','PG-13','Trailers,Commentaries,Deleted Scenes,Behind the Scenes','2006-02-15 05:03:42'),(158,'CLONES PINOCCHIO','A Amazing Drama of a Car And a Robot who must Pursue a Dentist in New Orleans',2006,1,NULL,6,'2.99',124,'16.99','R','Behind the Scenes','2006-02-15 05:03:42'),(159,'CLOSER BANG','A Unbelieveable Panorama of a Frisbee And a Hunter who must Vanquish a Monkey in Ancient India',2006,1,NULL,5,'4.99',58,'12.99','R','Trailers,Behind the Scenes','2006-02-15 05:03:42'),(160,'CLUB GRAFFITI','A Epic Tale of a Pioneer And a Hunter who must Escape a Girl in A U-Boat',2006,1,NULL,4,'0.99',65,'12.99','PG-13','Trailers,Deleted Scenes','2006-02-15 05:03:42'),(161,'CLUE GRAIL','A Taut Tale of a Butler And a Mad Scientist who must Build a Crocodile in Ancient China',2006,1,NULL,6,'4.99',70,'27.99','NC-17','Trailers,Commentaries,Behind the Scenes','2006-02-15 05:03:42'),(162,'CLUELESS BUCKET','A Taut Tale of a Car And a Pioneer who must Conquer a Sumo Wrestler in An Abandoned Fun House',2006,1,NULL,4,'2.99',95,'13.99','R','Trailers,Deleted Scenes,Behind the Scenes','2006-02-15 05:03:42'),(163,'CLYDE THEORY','A Beautiful Yarn of a Astronaut And a Frisbee who must Overcome a Explorer in A Jet Boat',2006,1,NULL,4,'0.99',139,'29.99','PG-13','Commentaries,Deleted Scenes,Behind the Scenes','2006-02-15 05:03:42'),(164,'COAST RAINBOW','A Astounding Documentary of a Mad Cow And a Pioneer who must Challenge a Butler in The Sahara Desert',2006,1,NULL,4,'0.99',55,'20.99','PG','Trailers,Commentaries,Deleted Scenes,Behind the Scenes','2006-02-15 05:03:42'),(165,'COLDBLOODED DARLING','A Brilliant Panorama of a Dentist And a Moose who must Find a Student in The Gulf of Mexico',2006,1,NULL,7,'4.99',70,'27.99','G','Trailers,Deleted Scenes','2006-02-15 05:03:42'),(166,'COLOR PHILADELPHIA','A Thoughtful Panorama of a Car And a Crocodile who must Sink a Monkey in The Sahara Desert',2006,1,NULL,6,'2.99',149,'19.99','G','Commentaries,Behind the Scenes','2006-02-15 05:03:42'),(167,'COMA HEAD','A Awe-Inspiring Drama of a Boy And a Frisbee who must Escape a Pastry Chef in California',2006,1,NULL,6,'4.99',109,'10.99','NC-17','Commentaries','2006-02-15 05:03:42'),(168,'COMANCHEROS ENEMY','A Boring Saga of a Lumberjack And a Monkey who must Find a Monkey in The Gulf of Mexico',2006,1,NULL,5,'0.99',67,'23.99','R','Trailers,Behind the Scenes','2006-02-15 05:03:42'),(169,'COMFORTS RUSH','A Unbelieveable Panorama of a Pioneer And a Husband who must Meet a Mad Cow in An Abandoned Mine Shaft',2006,1,NULL,3,'2.99',76,'19.99','NC-17','Commentaries,Behind the Scenes','2006-02-15 05:03:42'),(170,'COMMAND DARLING','A Awe-Inspiring Tale of a Forensic Psychologist And a Woman who must Challenge a Database Administrator in Ancient Japan',2006,1,NULL,5,'4.99',120,'28.99','PG-13','Behind the Scenes','2006-02-15 05:03:42'),(171,'COMMANDMENTS EXPRESS','A Fanciful Saga of a Student And a Mad Scientist who must Battle a Hunter in An Abandoned Mine Shaft',2006,1,NULL,6,'4.99',59,'13.99','R','Trailers,Commentaries,Deleted Scenes','2006-02-15 05:03:42'),(172,'CONEHEADS SMOOCHY','A Touching Story of a Womanizer And a Composer who must Pursue a Husband in Nigeria',2006,1,NULL,7,'4.99',112,'12.99','NC-17','Deleted Scenes,Behind the Scenes','2006-02-15 05:03:42'),(173,'CONFESSIONS MAGUIRE','A Insightful Story of a Car And a Boy who must Battle a Technical Writer in A Baloon',2006,1,NULL,7,'4.99',65,'25.99','PG-13','Behind the Scenes','2006-02-15 05:03:42'),(174,'CONFIDENTIAL INTERVIEW','A Stunning Reflection of a Cat And a Woman who must Find a Astronaut in Ancient Japan',2006,1,NULL,6,'4.99',180,'13.99','NC-17','Commentaries','2006-02-15 05:03:42'),(175,'CONFUSED CANDLES','A Stunning Epistle of a Cat And a Forensic Psychologist who must Confront a Pioneer in A Baloon',2006,1,NULL,3,'2.99',122,'27.99','PG-13','Trailers,Commentaries,Deleted Scenes,Behind the Scenes','2006-02-15 05:03:42'),(176,'CONGENIALITY QUEST','A Touching Documentary of a Cat And a Pastry Chef who must Find a Lumberjack in A Baloon',2006,1,NULL,6,'0.99',87,'21.99','PG-13','Commentaries,Behind the Scenes','2006-02-15 05:03:42'),(177,'CONNECTICUT TRAMP','A Unbelieveable Drama of a Crocodile And a Mad Cow who must Reach a Dentist in A Shark Tank',2006,1,NULL,4,'4.99',172,'20.99','R','Commentaries,Deleted Scenes','2006-02-15 05:03:42'),(178,'CONNECTION MICROCOSMOS','A Fateful Documentary of a Crocodile And a Husband who must Face a Husband in The First Manned Space Station',2006,1,NULL,6,'0.99',115,'25.99','G','Deleted Scenes,Behind the Scenes','2006-02-15 05:03:42'),(179,'CONQUERER NUTS','A Taut Drama of a Mad Scientist And a Man who must Escape a Pioneer in An Abandoned Mine Shaft',2006,1,NULL,4,'4.99',173,'14.99','G','Commentaries,Deleted Scenes,Behind the Scenes','2006-02-15 05:03:42'),(180,'CONSPIRACY SPIRIT','A Awe-Inspiring Story of a Student And a Frisbee who must Conquer a Crocodile in An Abandoned Mine Shaft',2006,1,NULL,4,'2.99',184,'27.99','PG-13','Trailers,Commentaries','2006-02-15 05:03:42'),(181,'CONTACT ANONYMOUS','A Insightful Display of a A Shark And a Monkey who must Face a Database Administrator in Ancient India',2006,1,NULL,7,'2.99',166,'10.99','PG-13','Commentaries','2006-02-15 05:03:42'),(182,'CONTROL ANTHEM','A Fateful Documentary of a Robot And a Student who must Battle a Cat in A Monastery',2006,1,NULL,7,'4.99',185,'9.99','G','Commentaries','2006-02-15 05:03:42'),(183,'CONVERSATION DOWNHILL','A Taut Character Study of a Husband And a Waitress who must Sink a Squirrel in A MySQL Convention',2006,1,NULL,4,'4.99',112,'14.99','R','Commentaries','2006-02-15 05:03:42'),(184,'CORE SUIT','A Unbelieveable Tale of a Car And a Explorer who must Confront a Boat in A Manhattan Penthouse',2006,1,NULL,3,'2.99',92,'24.99','PG-13','Deleted Scenes','2006-02-15 05:03:42'),(185,'COWBOY DOOM','A Astounding Drama of a Boy And a Lumberjack who must Fight a Butler in A Baloon',2006,1,NULL,3,'2.99',146,'10.99','PG','Commentaries,Deleted Scenes,Behind the Scenes','2006-02-15 05:03:42'),(186,'CRAFT OUTFIELD','A Lacklusture Display of a Explorer And a Hunter who must Succumb a Database Administrator in A Baloon Factory',2006,1,NULL,6,'0.99',64,'17.99','NC-17','Deleted Scenes,Behind the Scenes','2006-02-15 05:03:42'),(187,'CRANES RESERVOIR','A Fanciful Documentary of a Teacher And a Dog who must Outgun a Forensic Psychologist in A Baloon Factory',2006,1,NULL,5,'2.99',57,'12.99','NC-17','Commentaries','2006-02-15 05:03:42'),(188,'CRAZY HOME','A Fanciful Panorama of a Boy And a Woman who must Vanquish a Database Administrator in The Outback',2006,1,NULL,7,'2.99',136,'24.99','PG','Commentaries,Deleted Scenes','2006-02-15 05:03:42'),(189,'CREATURES SHAKESPEARE','A Emotional Drama of a Womanizer And a Squirrel who must Vanquish a Crocodile in Ancient India',2006,1,NULL,3,'0.99',139,'23.99','NC-17','Trailers,Deleted Scenes','2006-02-15 05:03:42'),(190,'CREEPERS KANE','A Awe-Inspiring Reflection of a Squirrel And a Boat who must Outrace a Car in A Jet Boat',2006,1,NULL,5,'4.99',172,'23.99','NC-17','Trailers,Behind the Scenes','2006-02-15 05:03:42'),(191,'CROOKED FROGMEN','A Unbelieveable Drama of a Hunter And a Database Administrator who must Battle a Crocodile in An Abandoned Amusement Park',2006,1,NULL,6,'0.99',143,'27.99','PG-13','Commentaries,Deleted Scenes,Behind the Scenes','2006-02-15 05:03:42'),(192,'CROSSING DIVORCE','A Beautiful Documentary of a Dog And a Robot who must Redeem a Womanizer in Berlin',2006,1,NULL,4,'4.99',50,'19.99','R','Commentaries,Deleted Scenes,Behind the Scenes','2006-02-15 05:03:42'),(193,'CROSSROADS CASUALTIES','A Intrepid Documentary of a Sumo Wrestler And a Astronaut who must Battle a Composer in The Outback',2006,1,NULL,5,'2.99',153,'20.99','G','Trailers,Commentaries,Behind the Scenes','2006-02-15 05:03:42'),(194,'CROW GREASE','A Awe-Inspiring Documentary of a Woman And a Husband who must Sink a Database Administrator in The First Manned Space Station',2006,1,NULL,6,'0.99',104,'22.99','PG','Trailers,Commentaries,Behind the Scenes','2006-02-15 05:03:42'),(195,'CROWDS TELEMARK','A Intrepid Documentary of a Astronaut And a Forensic Psychologist who must Find a Frisbee in An Abandoned Fun House',2006,1,NULL,3,'4.99',112,'16.99','R','Trailers,Behind the Scenes','2006-02-15 05:03:42'),(196,'CRUELTY UNFORGIVEN','A Brilliant Tale of a Car And a Moose who must Battle a Dentist in Nigeria',2006,1,NULL,7,'0.99',69,'29.99','G','Deleted Scenes,Behind the Scenes','2006-02-15 05:03:42'),(197,'CRUSADE HONEY','A Fast-Paced Reflection of a Explorer And a Butler who must Battle a Madman in An Abandoned Amusement Park',2006,1,NULL,4,'2.99',112,'27.99','R','Commentaries','2006-02-15 05:03:42'),(198,'CRYSTAL BREAKING','A Fast-Paced Character Study of a Feminist And a Explorer who must Face a Pastry Chef in Ancient Japan',2006,1,NULL,6,'2.99',184,'22.99','NC-17','Trailers,Commentaries','2006-02-15 05:03:42'),(199,'CUPBOARD SINNERS','A Emotional Reflection of a Frisbee And a Boat who must Reach a Pastry Chef in An Abandoned Amusement Park',2006,1,NULL,4,'2.99',56,'29.99','R','Behind the Scenes','2006-02-15 05:03:42'),(200,'CURTAIN VIDEOTAPE','A Boring Reflection of a Dentist And a Mad Cow who must Chase a Secret Agent in A Shark Tank',2006,1,NULL,7,'0.99',133,'27.99','PG-13','Trailers,Commentaries,Deleted Scenes,Behind the Scenes','2006-02-15 05:03:42'),(201,'CYCLONE FAMILY','A Lacklusture Drama of a Student And a Monkey who must Sink a Womanizer in A MySQL Convention',2006,1,NULL,7,'2.99',176,'18.99','PG','Trailers,Deleted Scenes','2006-02-15 05:03:42'),(202,'DADDY PITTSBURGH','A Epic Story of a A Shark And a Student who must Confront a Explorer in The Gulf of Mexico',2006,1,NULL,5,'4.99',161,'26.99','G','Deleted Scenes,Behind the Scenes','2006-02-15 05:03:42'),(203,'DAISY MENAGERIE','A Fast-Paced Saga of a Pastry Chef And a Monkey who must Sink a Composer in Ancient India',2006,1,NULL,5,'4.99',84,'9.99','G','Trailers,Commentaries,Behind the Scenes','2006-02-15 05:03:42'),(204,'DALMATIONS SWEDEN','A Emotional Epistle of a Moose And a Hunter who must Overcome a Robot in A Manhattan Penthouse',2006,1,NULL,4,'0.99',106,'25.99','PG','Trailers,Commentaries,Deleted Scenes','2006-02-15 05:03:42'),(205,'DANCES NONE','A Insightful Reflection of a A Shark And a Dog who must Kill a Butler in An Abandoned Amusement Park',2006,1,NULL,3,'0.99',58,'22.99','NC-17','Trailers,Commentaries,Deleted Scenes,Behind the Scenes','2006-02-15 05:03:42'),(206,'DANCING FEVER','A Stunning Story of a Explorer And a Forensic Psychologist who must Face a Crocodile in A Shark Tank',2006,1,NULL,6,'0.99',144,'25.99','G','Commentaries,Behind the Scenes','2006-02-15 05:03:42'),(207,'DANGEROUS UPTOWN','A Unbelieveable Story of a Mad Scientist And a Woman who must Overcome a Dog in California',2006,1,NULL,7,'4.99',121,'26.99','PG','Commentaries','2006-02-15 05:03:42'),(208,'DARES PLUTO','A Fateful Story of a Robot And a Dentist who must Defeat a Astronaut in New Orleans',2006,1,NULL,7,'2.99',89,'16.99','PG-13','Commentaries,Behind the Scenes','2006-02-15 05:03:42'),(209,'DARKNESS WAR','A Touching Documentary of a Husband And a Hunter who must Escape a Boy in The Sahara Desert',2006,1,NULL,6,'2.99',99,'24.99','NC-17','Deleted Scenes,Behind the Scenes','2006-02-15 05:03:42'),(210,'DARKO DORADO','A Stunning Reflection of a Frisbee And a Husband who must Redeem a Dog in New Orleans',2006,1,NULL,3,'4.99',130,'13.99','NC-17','Trailers,Commentaries,Deleted Scenes,Behind the Scenes','2006-02-15 05:03:42'),(211,'DARLING BREAKING','A Brilliant Documentary of a Astronaut And a Squirrel who must Succumb a Student in The Gulf of Mexico',2006,1,NULL,7,'4.99',165,'20.99','PG-13','Commentaries,Behind the Scenes','2006-02-15 05:03:42'),(212,'DARN FORRESTER','A Fateful Story of a A Shark And a Explorer who must Succumb a Technical Writer in A Jet Boat',2006,1,NULL,7,'4.99',185,'14.99','G','Deleted Scenes','2006-02-15 05:03:42'),(213,'DATE SPEED','A Touching Saga of a Composer And a Moose who must Discover a Dentist in A MySQL Convention',2006,1,NULL,4,'0.99',104,'19.99','R','Commentaries','2006-02-15 05:03:42'),(214,'DAUGHTER MADIGAN','A Beautiful Tale of a Hunter And a Mad Scientist who must Confront a Squirrel in The First Manned Space Station',2006,1,NULL,3,'4.99',59,'13.99','PG-13','Trailers','2006-02-15 05:03:42'),(215,'DAWN POND','A Thoughtful Documentary of a Dentist And a Forensic Psychologist who must Defeat a Waitress in Berlin',2006,1,NULL,4,'4.99',57,'27.99','PG','Trailers,Deleted Scenes,Behind the Scenes','2006-02-15 05:03:42'),(216,'DAY UNFAITHFUL','A Stunning Documentary of a Composer And a Mad Scientist who must Find a Technical Writer in A U-Boat',2006,1,NULL,3,'4.99',113,'16.99','G','Trailers,Commentaries,Deleted Scenes,Behind the Scenes','2006-02-15 05:03:42'),(217,'DAZED PUNK','A Action-Packed Story of a Pioneer And a Technical Writer who must Discover a Forensic Psychologist in An Abandoned Amusement Park',2006,1,NULL,6,'4.99',120,'20.99','G','Commentaries,Deleted Scenes','2006-02-15 05:03:42'),(218,'DECEIVER BETRAYED','A Taut Story of a Moose And a Squirrel who must Build a Husband in Ancient India',2006,1,NULL,7,'0.99',122,'22.99','NC-17','Trailers,Commentaries,Deleted Scenes,Behind the Scenes','2006-02-15 05:03:42'),(219,'DEEP CRUSADE','A Amazing Tale of a Crocodile And a Squirrel who must Discover a Composer in Australia',2006,1,NULL,6,'4.99',51,'20.99','PG-13','Commentaries,Behind the Scenes','2006-02-15 05:03:42'),(220,'DEER VIRGINIAN','A Thoughtful Story of a Mad Cow And a Womanizer who must Overcome a Mad Scientist in Soviet Georgia',2006,1,NULL,7,'2.99',106,'13.99','NC-17','Deleted Scenes','2006-02-15 05:03:42'),(221,'DELIVERANCE MULHOLLAND','A Astounding Saga of a Monkey And a Moose who must Conquer a Butler in A Shark Tank',2006,1,NULL,4,'0.99',100,'9.99','R','Deleted Scenes','2006-02-15 05:03:42'),(222,'DESERT POSEIDON','A Brilliant Documentary of a Butler And a Frisbee who must Build a Astronaut in New Orleans',2006,1,NULL,4,'4.99',64,'27.99','R','Trailers,Behind the Scenes','2006-02-15 05:03:42'),(223,'DESIRE ALIEN','A Fast-Paced Tale of a Dog And a Forensic Psychologist who must Meet a Astronaut in The First Manned Space Station',2006,1,NULL,7,'2.99',76,'24.99','NC-17','Deleted Scenes','2006-02-15 05:03:42'),(224,'DESPERATE TRAINSPOTTING','A Epic Yarn of a Forensic Psychologist And a Teacher who must Face a Lumberjack in California',2006,1,NULL,7,'4.99',81,'29.99','G','Deleted Scenes','2006-02-15 05:03:42'),(225,'DESTINATION JERK','A Beautiful Yarn of a Teacher And a Cat who must Build a Car in A U-Boat',2006,1,NULL,3,'0.99',76,'19.99','PG-13','Trailers,Commentaries,Behind the Scenes','2006-02-15 05:03:42'),(226,'DESTINY SATURDAY','A Touching Drama of a Crocodile And a Crocodile who must Conquer a Explorer in Soviet Georgia',2006,1,NULL,4,'4.99',56,'20.99','G','Trailers,Commentaries,Behind the Scenes','2006-02-15 05:03:42'),(227,'DETAILS PACKER','A Epic Saga of a Waitress And a Composer who must Face a Boat in A U-Boat',2006,1,NULL,4,'4.99',88,'17.99','R','Commentaries,Deleted Scenes','2006-02-15 05:03:42'),(228,'DETECTIVE VISION','A Fanciful Documentary of a Pioneer And a Woman who must Redeem a Hunter in Ancient Japan',2006,1,NULL,4,'0.99',143,'16.99','PG-13','Trailers,Commentaries,Behind the Scenes','2006-02-15 05:03:42'),(229,'DEVIL DESIRE','A Beautiful Reflection of a Monkey And a Dentist who must Face a Database Administrator in Ancient Japan',2006,1,NULL,6,'4.99',87,'12.99','R','Trailers,Behind the Scenes','2006-02-15 05:03:42'),(230,'DIARY PANIC','A Thoughtful Character Study of a Frisbee And a Mad Cow who must Outgun a Man in Ancient India',2006,1,NULL,7,'2.99',107,'20.99','G','Commentaries,Behind the Scenes','2006-02-15 05:03:42'),(231,'DINOSAUR SECRETARY','A Action-Packed Drama of a Feminist And a Girl who must Reach a Robot in The Canadian Rockies',2006,1,NULL,7,'2.99',63,'27.99','R','Trailers,Behind the Scenes','2006-02-15 05:03:42'),(232,'DIRTY ACE','A Action-Packed Character Study of a Forensic Psychologist And a Girl who must Build a Dentist in The Outback',2006,1,NULL,7,'2.99',147,'29.99','NC-17','Commentaries,Deleted Scenes,Behind the Scenes','2006-02-15 05:03:42'),(233,'DISCIPLE MOTHER','A Touching Reflection of a Mad Scientist And a Boat who must Face a Moose in A Shark Tank',2006,1,NULL,3,'0.99',141,'17.99','PG','Trailers,Deleted Scenes,Behind the Scenes','2006-02-15 05:03:42'),(234,'DISTURBING SCARFACE','A Lacklusture Display of a Crocodile And a Butler who must Overcome a Monkey in A U-Boat',2006,1,NULL,6,'2.99',94,'27.99','R','Trailers,Behind the Scenes','2006-02-15 05:03:42'),(235,'DIVIDE MONSTER','A Intrepid Saga of a Man And a Forensic Psychologist who must Reach a Squirrel in A Monastery',2006,1,NULL,6,'2.99',68,'13.99','PG-13','Trailers,Commentaries','2006-02-15 05:03:42'),(236,'DIVINE RESURRECTION','A Boring Character Study of a Man And a Womanizer who must Succumb a Teacher in An Abandoned Amusement Park',2006,1,NULL,4,'2.99',100,'19.99','R','Trailers,Commentaries','2006-02-15 05:03:42'),(237,'DIVORCE SHINING','A Unbelieveable Saga of a Crocodile And a Student who must Discover a Cat in Ancient India',2006,1,NULL,3,'2.99',47,'21.99','G','Trailers,Commentaries,Deleted Scenes','2006-02-15 05:03:42'),(238,'DOCTOR GRAIL','A Insightful Drama of a Womanizer And a Waitress who must Reach a Forensic Psychologist in The Outback',2006,1,NULL,4,'2.99',57,'29.99','G','Trailers,Commentaries,Behind the Scenes','2006-02-15 05:03:42'),(239,'DOGMA FAMILY','A Brilliant Character Study of a Database Administrator And a Monkey who must Succumb a Astronaut in New Orleans',2006,1,NULL,5,'4.99',122,'16.99','G','Commentaries','2006-02-15 05:03:42'),(240,'DOLLS RAGE','A Thrilling Display of a Pioneer And a Frisbee who must Escape a Teacher in The Outback',2006,1,NULL,7,'2.99',120,'10.99','PG-13','Commentaries,Deleted Scenes','2006-02-15 05:03:42'),(241,'DONNIE ALLEY','A Awe-Inspiring Tale of a Butler And a Frisbee who must Vanquish a Teacher in Ancient Japan',2006,1,NULL,4,'0.99',125,'20.99','NC-17','Trailers,Commentaries,Behind the Scenes','2006-02-15 05:03:42'),(242,'DOOM DANCING','A Astounding Panorama of a Car And a Mad Scientist who must Battle a Lumberjack in A MySQL Convention',2006,1,NULL,4,'0.99',68,'13.99','R','Trailers,Commentaries','2006-02-15 05:03:42'),(243,'DOORS PRESIDENT','A Awe-Inspiring Display of a Squirrel And a Woman who must Overcome a Boy in The Gulf of Mexico',2006,1,NULL,3,'4.99',49,'22.99','NC-17','Trailers,Commentaries,Deleted Scenes,Behind the Scenes','2006-02-15 05:03:42'),(244,'DORADO NOTTING','A Action-Packed Tale of a Sumo Wrestler And a A Shark who must Meet a Frisbee in California',2006,1,NULL,5,'4.99',139,'26.99','NC-17','Commentaries','2006-02-15 05:03:42'),(245,'DOUBLE WRATH','A Thoughtful Yarn of a Womanizer And a Dog who must Challenge a Madman in The Gulf of Mexico',2006,1,NULL,4,'0.99',177,'28.99','R','Trailers,Deleted Scenes,Behind the Scenes','2006-02-15 05:03:42'),(246,'DOUBTFIRE LABYRINTH','A Intrepid Panorama of a Butler And a Composer who must Meet a Mad Cow in The Sahara Desert',2006,1,NULL,5,'4.99',154,'16.99','R','Deleted Scenes,Behind the Scenes','2006-02-15 05:03:42'),(247,'DOWNHILL ENOUGH','A Emotional Tale of a Pastry Chef And a Forensic Psychologist who must Succumb a Monkey in The Sahara Desert',2006,1,NULL,3,'0.99',47,'19.99','G','Trailers,Commentaries,Deleted Scenes','2006-02-15 05:03:42'),(248,'DOZEN LION','A Taut Drama of a Cat And a Girl who must Defeat a Frisbee in The Canadian Rockies',2006,1,NULL,6,'4.99',177,'20.99','NC-17','Commentaries,Deleted Scenes,Behind the Scenes','2006-02-15 05:03:42'),(249,'DRACULA CRYSTAL','A Thrilling Reflection of a Feminist And a Cat who must Find a Frisbee in An Abandoned Fun House',2006,1,NULL,7,'0.99',176,'26.99','G','Commentaries','2006-02-15 05:03:42'),(250,'DRAGON SQUAD','A Taut Reflection of a Boy And a Waitress who must Outgun a Teacher in Ancient China',2006,1,NULL,4,'0.99',170,'26.99','NC-17','Deleted Scenes,Behind the Scenes','2006-02-15 05:03:42'),(251,'DRAGONFLY STRANGERS','A Boring Documentary of a Pioneer And a Man who must Vanquish a Man in Nigeria',2006,1,NULL,6,'4.99',133,'19.99','NC-17','Trailers,Behind the Scenes','2006-02-15 05:03:42'),(252,'DREAM PICKUP','A Epic Display of a Car And a Composer who must Overcome a Forensic Psychologist in The Gulf of Mexico',2006,1,NULL,6,'2.99',135,'18.99','PG','Trailers,Commentaries,Behind the Scenes','2006-02-15 05:03:42'),(253,'DRIFTER COMMANDMENTS','A Epic Reflection of a Womanizer And a Squirrel who must Discover a Husband in A Jet Boat',2006,1,NULL,5,'4.99',61,'18.99','PG-13','Trailers,Behind the Scenes','2006-02-15 05:03:42'),(254,'DRIVER ANNIE','A Lacklusture Character Study of a Butler And a Car who must Redeem a Boat in An Abandoned Fun House',2006,1,NULL,4,'2.99',159,'11.99','PG-13','Trailers,Deleted Scenes,Behind the Scenes','2006-02-15 05:03:42'),(255,'DRIVING POLISH','A Action-Packed Yarn of a Feminist And a Technical Writer who must Sink a Boat in An Abandoned Mine Shaft',2006,1,NULL,6,'4.99',175,'21.99','NC-17','Trailers,Deleted Scenes','2006-02-15 05:03:42'),(256,'DROP WATERFRONT','A Fanciful Documentary of a Husband And a Explorer who must Reach a Madman in Ancient China',2006,1,NULL,6,'4.99',178,'20.99','R','Trailers,Commentaries','2006-02-15 05:03:42'),(257,'DRUMLINE CYCLONE','A Insightful Panorama of a Monkey And a Sumo Wrestler who must Outrace a Mad Scientist in The Canadian Rockies',2006,1,NULL,3,'0.99',110,'14.99','G','Commentaries,Deleted Scenes,Behind the Scenes','2006-02-15 05:03:42'),(258,'DRUMS DYNAMITE','A Epic Display of a Crocodile And a Crocodile who must Confront a Dog in An Abandoned Amusement Park',2006,1,NULL,6,'0.99',96,'11.99','PG','Trailers','2006-02-15 05:03:42'),(259,'DUCK RACER','A Lacklusture Yarn of a Teacher And a Squirrel who must Overcome a Dog in A Shark Tank',2006,1,NULL,4,'2.99',116,'15.99','NC-17','Behind the Scenes','2006-02-15 05:03:42'),(260,'DUDE BLINDNESS','A Stunning Reflection of a Husband And a Lumberjack who must Face a Frisbee in An Abandoned Fun House',2006,1,NULL,3,'4.99',132,'9.99','G','Trailers,Deleted Scenes','2006-02-15 05:03:42'),(261,'DUFFEL APOCALYPSE','A Emotional Display of a Boat And a Explorer who must Challenge a Madman in A MySQL Convention',2006,1,NULL,5,'0.99',171,'13.99','G','Commentaries','2006-02-15 05:03:42'),(262,'DUMBO LUST','A Touching Display of a Feminist And a Dentist who must Conquer a Husband in The Gulf of Mexico',2006,1,NULL,5,'0.99',119,'17.99','NC-17','Behind the Scenes','2006-02-15 05:03:42'),(263,'DURHAM PANKY','A Brilliant Panorama of a Girl And a Boy who must Face a Mad Scientist in An Abandoned Mine Shaft',2006,1,NULL,6,'4.99',154,'14.99','R','Trailers,Commentaries','2006-02-15 05:03:42'),(264,'DWARFS ALTER','A Emotional Yarn of a Girl And a Dog who must Challenge a Composer in Ancient Japan',2006,1,NULL,6,'2.99',101,'13.99','G','Commentaries,Deleted Scenes','2006-02-15 05:03:42'),(265,'DYING MAKER','A Intrepid Tale of a Boat And a Monkey who must Kill a Cat in California',2006,1,NULL,5,'4.99',168,'28.99','PG','Behind the Scenes','2006-02-15 05:03:42'),(266,'DYNAMITE TARZAN','A Intrepid Documentary of a Forensic Psychologist And a Mad Scientist who must Face a Explorer in A U-Boat',2006,1,NULL,4,'0.99',141,'27.99','PG-13','Deleted Scenes','2006-02-15 05:03:42'),(267,'EAGLES PANKY','A Thoughtful Story of a Car And a Boy who must Find a A Shark in The Sahara Desert',2006,1,NULL,4,'4.99',140,'14.99','NC-17','Trailers,Commentaries,Behind the Scenes','2006-02-15 05:03:42'),(268,'EARLY HOME','A Amazing Panorama of a Mad Scientist And a Husband who must Meet a Woman in The Outback',2006,1,NULL,6,'4.99',96,'27.99','NC-17','Trailers,Commentaries,Behind the Scenes','2006-02-15 05:03:42'),(269,'EARRING INSTINCT','A Stunning Character Study of a Dentist And a Mad Cow who must Find a Teacher in Nigeria',2006,1,NULL,3,'0.99',98,'22.99','R','Behind the Scenes','2006-02-15 05:03:42'),(270,'EARTH VISION','A Stunning Drama of a Butler And a Madman who must Outrace a Womanizer in Ancient India',2006,1,NULL,7,'0.99',85,'29.99','NC-17','Trailers,Commentaries,Deleted Scenes','2006-02-15 05:03:42'),(271,'EASY GLADIATOR','A Fateful Story of a Monkey And a Girl who must Overcome a Pastry Chef in Ancient India',2006,1,NULL,5,'4.99',148,'12.99','G','Trailers,Commentaries,Behind the Scenes','2006-02-15 05:03:42'),(272,'EDGE KISSING','A Beautiful Yarn of a Composer And a Mad Cow who must Redeem a Mad Scientist in A Jet Boat',2006,1,NULL,5,'4.99',153,'9.99','NC-17','Deleted Scenes','2006-02-15 05:03:42'),(273,'EFFECT GLADIATOR','A Beautiful Display of a Pastry Chef And a Pastry Chef who must Outgun a Forensic Psychologist in A Manhattan Penthouse',2006,1,NULL,6,'0.99',107,'14.99','PG','Commentaries','2006-02-15 05:03:42'),(274,'EGG IGBY','A Beautiful Documentary of a Boat And a Sumo Wrestler who must Succumb a Database Administrator in The First Manned Space Station',2006,1,NULL,4,'2.99',67,'20.99','PG','Commentaries,Behind the Scenes','2006-02-15 05:03:42'),(275,'EGYPT TENENBAUMS','A Intrepid Story of a Madman And a Secret Agent who must Outrace a Astronaut in An Abandoned Amusement Park',2006,1,NULL,3,'0.99',85,'11.99','PG','Commentaries,Deleted Scenes,Behind the Scenes','2006-02-15 05:03:42'),(276,'ELEMENT FREDDY','A Awe-Inspiring Reflection of a Waitress And a Squirrel who must Kill a Mad Cow in A Jet Boat',2006,1,NULL,6,'4.99',115,'28.99','NC-17','Commentaries,Behind the Scenes','2006-02-15 05:03:42'),(277,'ELEPHANT TROJAN','A Beautiful Panorama of a Lumberjack And a Forensic Psychologist who must Overcome a Frisbee in A Baloon',2006,1,NULL,4,'4.99',126,'24.99','PG-13','Behind the Scenes','2006-02-15 05:03:42'),(278,'ELF MURDER','A Action-Packed Story of a Frisbee And a Woman who must Reach a Girl in An Abandoned Mine Shaft',2006,1,NULL,4,'4.99',155,'19.99','NC-17','Trailers,Commentaries,Behind the Scenes','2006-02-15 05:03:42'),(279,'ELIZABETH SHANE','A Lacklusture Display of a Womanizer And a Dog who must Face a Sumo Wrestler in Ancient Japan',2006,1,NULL,7,'4.99',152,'11.99','NC-17','Trailers,Deleted Scenes,Behind the Scenes','2006-02-15 05:03:42'),(280,'EMPIRE MALKOVICH','A Amazing Story of a Feminist And a Cat who must Face a Car in An Abandoned Fun House',2006,1,NULL,7,'0.99',177,'26.99','G','Deleted Scenes','2006-02-15 05:03:42'),(281,'ENCINO ELF','A Astounding Drama of a Feminist And a Teacher who must Confront a Husband in A Baloon',2006,1,NULL,6,'0.99',143,'9.99','G','Trailers,Behind the Scenes','2006-02-15 05:03:42'),(282,'ENCOUNTERS CURTAIN','A Insightful Epistle of a Pastry Chef And a Womanizer who must Build a Boat in New Orleans',2006,1,NULL,5,'0.99',92,'20.99','NC-17','Trailers','2006-02-15 05:03:42'),(283,'ENDING CROWDS','A Unbelieveable Display of a Dentist And a Madman who must Vanquish a Squirrel in Berlin',2006,1,NULL,6,'0.99',85,'10.99','NC-17','Commentaries,Behind the Scenes','2006-02-15 05:03:42'),(284,'ENEMY ODDS','A Fanciful Panorama of a Mad Scientist And a Woman who must Pursue a Astronaut in Ancient India',2006,1,NULL,5,'4.99',77,'23.99','NC-17','Trailers','2006-02-15 05:03:42'),(285,'ENGLISH BULWORTH','A Intrepid Epistle of a Pastry Chef And a Pastry Chef who must Pursue a Crocodile in Ancient China',2006,1,NULL,3,'0.99',51,'18.99','PG-13','Deleted Scenes','2006-02-15 05:03:42'),(286,'ENOUGH RAGING','A Astounding Character Study of a Boat And a Secret Agent who must Find a Mad Cow in The Sahara Desert',2006,1,NULL,7,'2.99',158,'16.99','NC-17','Commentaries','2006-02-15 05:03:42'),(287,'ENTRAPMENT SATISFACTION','A Thoughtful Panorama of a Hunter And a Teacher who must Reach a Mad Cow in A U-Boat',2006,1,NULL,5,'0.99',176,'19.99','R','Commentaries,Deleted Scenes,Behind the Scenes','2006-02-15 05:03:42'),(288,'ESCAPE METROPOLIS','A Taut Yarn of a Astronaut And a Technical Writer who must Outgun a Boat in New Orleans',2006,1,NULL,7,'2.99',167,'20.99','R','Trailers','2006-02-15 05:03:42'),(289,'EVE RESURRECTION','A Awe-Inspiring Yarn of a Pastry Chef And a Database Administrator who must Challenge a Teacher in A Baloon',2006,1,NULL,5,'4.99',66,'25.99','G','Trailers,Commentaries,Deleted Scenes','2006-02-15 05:03:42'),(290,'EVERYONE CRAFT','A Fateful Display of a Waitress And a Dentist who must Reach a Butler in Nigeria',2006,1,NULL,4,'0.99',163,'29.99','PG','Trailers,Commentaries','2006-02-15 05:03:42'),(291,'EVOLUTION ALTER','A Fanciful Character Study of a Feminist And a Madman who must Find a Explorer in A Baloon Factory',2006,1,NULL,5,'0.99',174,'10.99','PG-13','Behind the Scenes','2006-02-15 05:03:42'),(292,'EXCITEMENT EVE','A Brilliant Documentary of a Monkey And a Car who must Conquer a Crocodile in A Shark Tank',2006,1,NULL,3,'0.99',51,'20.99','G','Commentaries','2006-02-15 05:03:42'),(293,'EXORCIST STING','A Touching Drama of a Dog And a Sumo Wrestler who must Conquer a Mad Scientist in Berlin',2006,1,NULL,6,'2.99',167,'17.99','G','Commentaries,Deleted Scenes,Behind the Scenes','2006-02-15 05:03:42'),(294,'EXPECATIONS NATURAL','A Amazing Drama of a Butler And a Husband who must Reach a A Shark in A U-Boat',2006,1,NULL,5,'4.99',138,'26.99','PG-13','Deleted Scenes','2006-02-15 05:03:42'),(295,'EXPENDABLE STALLION','A Amazing Character Study of a Mad Cow And a Squirrel who must Discover a Hunter in A U-Boat',2006,1,NULL,3,'0.99',97,'14.99','PG','Trailers,Behind the Scenes','2006-02-15 05:03:42'),(296,'EXPRESS LONELY','A Boring Drama of a Astronaut And a Boat who must Face a Boat in California',2006,1,NULL,5,'2.99',178,'23.99','R','Trailers','2006-02-15 05:03:42'),(297,'EXTRAORDINARY CONQUERER','A Stunning Story of a Dog And a Feminist who must Face a Forensic Psychologist in Berlin',2006,1,NULL,6,'2.99',122,'29.99','G','Trailers,Commentaries,Deleted Scenes','2006-02-15 05:03:42'),(298,'EYES DRIVING','A Thrilling Story of a Cat And a Waitress who must Fight a Explorer in The Outback',2006,1,NULL,4,'2.99',172,'13.99','PG-13','Trailers,Commentaries','2006-02-15 05:03:42'),(299,'FACTORY DRAGON','A Action-Packed Saga of a Teacher And a Frisbee who must Escape a Lumberjack in The Sahara Desert',2006,1,NULL,4,'0.99',144,'9.99','PG-13','Trailers,Commentaries,Deleted Scenes','2006-02-15 05:03:42'),(300,'FALCON VOLUME','A Fateful Saga of a Sumo Wrestler And a Hunter who must Redeem a A Shark in New Orleans',2006,1,NULL,5,'4.99',102,'21.99','PG-13','Commentaries,Behind the Scenes','2006-02-15 05:03:42'),(301,'FAMILY SWEET','A Epic Documentary of a Teacher And a Boy who must Escape a Woman in Berlin',2006,1,NULL,4,'0.99',155,'24.99','R','Trailers','2006-02-15 05:03:42'),(302,'FANTASIA PARK','A Thoughtful Documentary of a Mad Scientist And a A Shark who must Outrace a Feminist in Australia',2006,1,NULL,5,'2.99',131,'29.99','G','Commentaries','2006-02-15 05:03:42'),(303,'FANTASY TROOPERS','A Touching Saga of a Teacher And a Monkey who must Overcome a Secret Agent in A MySQL Convention',2006,1,NULL,6,'0.99',58,'27.99','PG-13','Behind the Scenes','2006-02-15 05:03:42'),(304,'FARGO GANDHI','A Thrilling Reflection of a Pastry Chef And a Crocodile who must Reach a Teacher in The Outback',2006,1,NULL,3,'2.99',130,'28.99','G','Deleted Scenes','2006-02-15 05:03:42'),(305,'FATAL HAUNTED','A Beautiful Drama of a Student And a Secret Agent who must Confront a Dentist in Ancient Japan',2006,1,NULL,6,'2.99',91,'24.99','PG','Trailers,Behind the Scenes','2006-02-15 05:03:42'),(306,'FEATHERS METAL','A Thoughtful Yarn of a Monkey And a Teacher who must Find a Dog in Australia',2006,1,NULL,3,'0.99',104,'12.99','PG-13','Trailers,Deleted Scenes','2006-02-15 05:03:42'),(307,'FELLOWSHIP AUTUMN','A Lacklusture Reflection of a Dentist And a Hunter who must Meet a Teacher in A Baloon',2006,1,NULL,6,'4.99',77,'9.99','NC-17','Deleted Scenes,Behind the Scenes','2006-02-15 05:03:42'),(308,'FERRIS MOTHER','A Touching Display of a Frisbee And a Frisbee who must Kill a Girl in The Gulf of Mexico',2006,1,NULL,3,'2.99',142,'13.99','PG','Trailers,Deleted Scenes,Behind the Scenes','2006-02-15 05:03:42'),(309,'FEUD FROGMEN','A Brilliant Reflection of a Database Administrator And a Mad Cow who must Chase a Woman in The Canadian Rockies',2006,1,NULL,6,'0.99',98,'29.99','R','Trailers,Commentaries,Deleted Scenes,Behind the Scenes','2006-02-15 05:03:42'),(310,'FEVER EMPIRE','A Insightful Panorama of a Cat And a Boat who must Defeat a Boat in The Gulf of Mexico',2006,1,NULL,5,'4.99',158,'20.99','R','Commentaries,Deleted Scenes','2006-02-15 05:03:42'),(311,'FICTION CHRISTMAS','A Emotional Yarn of a A Shark And a Student who must Battle a Robot in An Abandoned Mine Shaft',2006,1,NULL,4,'0.99',72,'14.99','PG','Trailers,Commentaries,Deleted Scenes,Behind the Scenes','2006-02-15 05:03:42'),(312,'FIDDLER LOST','A Boring Tale of a Squirrel And a Dog who must Challenge a Madman in The Gulf of Mexico',2006,1,NULL,4,'4.99',75,'20.99','R','Deleted Scenes,Behind the Scenes','2006-02-15 05:03:42'),(313,'FIDELITY DEVIL','A Awe-Inspiring Drama of a Technical Writer And a Composer who must Reach a Pastry Chef in A U-Boat',2006,1,NULL,5,'4.99',118,'11.99','G','Trailers,Deleted Scenes,Behind the Scenes','2006-02-15 05:03:42'),(314,'FIGHT JAWBREAKER','A Intrepid Panorama of a Womanizer And a Girl who must Escape a Girl in A Manhattan Penthouse',2006,1,NULL,3,'0.99',91,'13.99','R','Trailers,Commentaries,Deleted Scenes,Behind the Scenes','2006-02-15 05:03:42'),(315,'FINDING ANACONDA','A Fateful Tale of a Database Administrator And a Girl who must Battle a Squirrel in New Orleans',2006,1,NULL,4,'0.99',156,'10.99','R','Trailers,Commentaries','2006-02-15 05:03:42'),(316,'FIRE WOLVES','A Intrepid Documentary of a Frisbee And a Dog who must Outrace a Lumberjack in Nigeria',2006,1,NULL,5,'4.99',173,'18.99','R','Trailers','2006-02-15 05:03:42'),(317,'FIREBALL PHILADELPHIA','A Amazing Yarn of a Dentist And a A Shark who must Vanquish a Madman in An Abandoned Mine Shaft',2006,1,NULL,4,'0.99',148,'25.99','PG','Trailers,Commentaries,Behind the Scenes','2006-02-15 05:03:42'),(318,'FIREHOUSE VIETNAM','A Awe-Inspiring Character Study of a Boat And a Boy who must Kill a Pastry Chef in The Sahara Desert',2006,1,NULL,7,'0.99',103,'14.99','G','Commentaries,Deleted Scenes','2006-02-15 05:03:42'),(319,'FISH OPUS','A Touching Display of a Feminist And a Girl who must Confront a Astronaut in Australia',2006,1,NULL,4,'2.99',125,'22.99','R','Trailers,Deleted Scenes,Behind the Scenes','2006-02-15 05:03:42'),(320,'FLAMINGOS CONNECTICUT','A Fast-Paced Reflection of a Composer And a Composer who must Meet a Cat in The Sahara Desert',2006,1,NULL,4,'4.99',80,'28.99','PG-13','Trailers','2006-02-15 05:03:42'),(321,'FLASH WARS','A Astounding Saga of a Moose And a Pastry Chef who must Chase a Student in The Gulf of Mexico',2006,1,NULL,3,'4.99',123,'21.99','NC-17','Trailers,Commentaries,Behind the Scenes','2006-02-15 05:03:42'),(322,'FLATLINERS KILLER','A Taut Display of a Secret Agent And a Waitress who must Sink a Robot in An Abandoned Mine Shaft',2006,1,NULL,5,'2.99',100,'29.99','G','Trailers,Commentaries,Deleted Scenes','2006-02-15 05:03:42'),(323,'FLIGHT LIES','A Stunning Character Study of a Crocodile And a Pioneer who must Pursue a Teacher in New Orleans',2006,1,NULL,7,'4.99',179,'22.99','R','Trailers','2006-02-15 05:03:42'),(324,'FLINTSTONES HAPPINESS','A Fateful Story of a Husband And a Moose who must Vanquish a Boy in California',2006,1,NULL,3,'4.99',148,'11.99','PG-13','Trailers,Commentaries,Deleted Scenes,Behind the Scenes','2006-02-15 05:03:42'),(325,'FLOATS GARDEN','A Action-Packed Epistle of a Robot And a Car who must Chase a Boat in Ancient Japan',2006,1,NULL,6,'2.99',145,'29.99','PG-13','Trailers,Commentaries,Behind the Scenes','2006-02-15 05:03:42'),(326,'FLYING HOOK','A Thrilling Display of a Mad Cow And a Dog who must Challenge a Frisbee in Nigeria',2006,1,NULL,6,'2.99',69,'18.99','NC-17','Trailers,Commentaries,Behind the Scenes','2006-02-15 05:03:42'),(327,'FOOL MOCKINGBIRD','A Lacklusture Tale of a Crocodile And a Composer who must Defeat a Madman in A U-Boat',2006,1,NULL,3,'4.99',158,'24.99','PG','Trailers,Commentaries','2006-02-15 05:03:42'),(328,'FOREVER CANDIDATE','A Unbelieveable Panorama of a Technical Writer And a Man who must Pursue a Frisbee in A U-Boat',2006,1,NULL,7,'2.99',131,'28.99','NC-17','Commentaries,Deleted Scenes,Behind the Scenes','2006-02-15 05:03:42'),(329,'FORREST SONS','A Thrilling Documentary of a Forensic Psychologist And a Butler who must Defeat a Explorer in A Jet Boat',2006,1,NULL,4,'2.99',63,'15.99','R','Commentaries','2006-02-15 05:03:42'),(330,'FORRESTER COMANCHEROS','A Fateful Tale of a Squirrel And a Forensic Psychologist who must Redeem a Man in Nigeria',2006,1,NULL,7,'4.99',112,'22.99','NC-17','Trailers,Behind the Scenes','2006-02-15 05:03:42'),(331,'FORWARD TEMPLE','A Astounding Display of a Forensic Psychologist And a Mad Scientist who must Challenge a Girl in New Orleans',2006,1,NULL,6,'2.99',90,'25.99','NC-17','Trailers,Commentaries,Behind the Scenes','2006-02-15 05:03:42'),(332,'FRANKENSTEIN STRANGER','A Insightful Character Study of a Feminist And a Pioneer who must Pursue a Pastry Chef in Nigeria',2006,1,NULL,7,'0.99',159,'16.99','NC-17','Deleted Scenes,Behind the Scenes','2006-02-15 05:03:42'),(333,'FREAKY POCUS','A Fast-Paced Documentary of a Pastry Chef And a Crocodile who must Chase a Squirrel in The Gulf of Mexico',2006,1,NULL,7,'2.99',126,'16.99','R','Trailers,Behind the Scenes','2006-02-15 05:03:42'),(334,'FREDDY STORM','A Intrepid Saga of a Man And a Lumberjack who must Vanquish a Husband in The Outback',2006,1,NULL,6,'4.99',65,'21.99','NC-17','Trailers,Commentaries,Behind the Scenes','2006-02-15 05:03:42'),(335,'FREEDOM CLEOPATRA','A Emotional Reflection of a Dentist And a Mad Cow who must Face a Squirrel in A Baloon',2006,1,NULL,5,'0.99',133,'23.99','PG-13','Trailers,Commentaries,Behind the Scenes','2006-02-15 05:03:42'),(336,'FRENCH HOLIDAY','A Thrilling Epistle of a Dog And a Feminist who must Kill a Madman in Berlin',2006,1,NULL,5,'4.99',99,'22.99','PG','Behind the Scenes','2006-02-15 05:03:42'),(337,'FRIDA SLIPPER','A Fateful Story of a Lumberjack And a Car who must Escape a Boat in An Abandoned Mine Shaft',2006,1,NULL,6,'2.99',73,'11.99','R','Trailers,Deleted Scenes','2006-02-15 05:03:42'),(338,'FRISCO FORREST','A Beautiful Documentary of a Woman And a Pioneer who must Pursue a Mad Scientist in A Shark Tank',2006,1,NULL,6,'4.99',51,'23.99','PG','Commentaries,Deleted Scenes,Behind the Scenes','2006-02-15 05:03:42'),(339,'FROGMEN BREAKING','A Unbelieveable Yarn of a Mad Scientist And a Cat who must Chase a Lumberjack in Australia',2006,1,NULL,5,'0.99',111,'17.99','R','Trailers,Deleted Scenes,Behind the Scenes','2006-02-15 05:03:42'),(340,'FRONTIER CABIN','A Emotional Story of a Madman And a Waitress who must Battle a Teacher in An Abandoned Fun House',2006,1,NULL,6,'4.99',183,'14.99','PG-13','Commentaries,Deleted Scenes','2006-02-15 05:03:42'),(341,'FROST HEAD','A Amazing Reflection of a Lumberjack And a Cat who must Discover a Husband in A MySQL Convention',2006,1,NULL,5,'0.99',82,'13.99','PG','Trailers,Deleted Scenes','2006-02-15 05:03:42'),(342,'FUGITIVE MAGUIRE','A Taut Epistle of a Feminist And a Sumo Wrestler who must Battle a Crocodile in Australia',2006,1,NULL,7,'4.99',83,'28.99','R','Trailers,Commentaries,Deleted Scenes','2006-02-15 05:03:42'),(343,'FULL FLATLINERS','A Beautiful Documentary of a Astronaut And a Moose who must Pursue a Monkey in A Shark Tank',2006,1,NULL,6,'2.99',94,'14.99','PG','Trailers,Deleted Scenes','2006-02-15 05:03:42'),(344,'FURY MURDER','A Lacklusture Reflection of a Boat And a Forensic Psychologist who must Fight a Waitress in A Monastery',2006,1,NULL,3,'0.99',178,'28.99','PG-13','Deleted Scenes','2006-02-15 05:03:42'),(345,'GABLES METROPOLIS','A Fateful Display of a Cat And a Pioneer who must Challenge a Pastry Chef in A Baloon Factory',2006,1,NULL,3,'0.99',161,'17.99','PG','Trailers,Commentaries','2006-02-15 05:03:42'),(346,'GALAXY SWEETHEARTS','A Emotional Reflection of a Womanizer And a Pioneer who must Face a Squirrel in Berlin',2006,1,NULL,4,'4.99',128,'13.99','R','Deleted Scenes','2006-02-15 05:03:42'),(347,'GAMES BOWFINGER','A Astounding Documentary of a Butler And a Explorer who must Challenge a Butler in A Monastery',2006,1,NULL,7,'4.99',119,'17.99','PG-13','Behind the Scenes','2006-02-15 05:03:42'),(348,'GANDHI KWAI','A Thoughtful Display of a Mad Scientist And a Secret Agent who must Chase a Boat in Berlin',2006,1,NULL,7,'0.99',86,'9.99','PG-13','Trailers','2006-02-15 05:03:42'),(349,'GANGS PRIDE','A Taut Character Study of a Woman And a A Shark who must Confront a Frisbee in Berlin',2006,1,NULL,4,'2.99',185,'27.99','PG-13','Behind the Scenes','2006-02-15 05:03:42'),(350,'GARDEN ISLAND','A Unbelieveable Character Study of a Womanizer And a Madman who must Reach a Man in The Outback',2006,1,NULL,3,'4.99',80,'21.99','G','Trailers,Behind the Scenes','2006-02-15 05:03:42'),(351,'GASLIGHT CRUSADE','A Amazing Epistle of a Boy And a Astronaut who must Redeem a Man in The Gulf of Mexico',2006,1,NULL,4,'2.99',106,'10.99','PG','Trailers,Deleted Scenes','2006-02-15 05:03:42'),(352,'GATHERING CALENDAR','A Intrepid Tale of a Pioneer And a Moose who must Conquer a Frisbee in A MySQL Convention',2006,1,NULL,4,'0.99',176,'22.99','PG-13','Commentaries,Behind the Scenes','2006-02-15 05:03:42'),(353,'GENTLEMEN STAGE','A Awe-Inspiring Reflection of a Monkey And a Student who must Overcome a Dentist in The First Manned Space Station',2006,1,NULL,6,'2.99',125,'22.99','NC-17','Commentaries,Deleted Scenes','2006-02-15 05:03:42'),(354,'GHOST GROUNDHOG','A Brilliant Panorama of a Madman And a Composer who must Succumb a Car in Ancient India',2006,1,NULL,6,'4.99',85,'18.99','G','Trailers,Commentaries,Deleted Scenes,Behind the Scenes','2006-02-15 05:03:42'),(355,'GHOSTBUSTERS ELF','A Thoughtful Epistle of a Dog And a Feminist who must Chase a Composer in Berlin',2006,1,NULL,7,'0.99',101,'18.99','R','Trailers,Deleted Scenes,Behind the Scenes','2006-02-15 05:03:42'),(356,'GIANT TROOPERS','A Fateful Display of a Feminist And a Monkey who must Vanquish a Monkey in The Canadian Rockies',2006,1,NULL,5,'2.99',102,'10.99','R','Trailers,Commentaries','2006-02-15 05:03:42'),(357,'GILBERT PELICAN','A Fateful Tale of a Man And a Feminist who must Conquer a Crocodile in A Manhattan Penthouse',2006,1,NULL,7,'0.99',114,'13.99','G','Trailers,Commentaries','2006-02-15 05:03:42'),(358,'GILMORE BOILED','A Unbelieveable Documentary of a Boat And a Husband who must Succumb a Student in A U-Boat',2006,1,NULL,5,'0.99',163,'29.99','R','Trailers,Behind the Scenes','2006-02-15 05:03:42'),(359,'GLADIATOR WESTWARD','A Astounding Reflection of a Squirrel And a Sumo Wrestler who must Sink a Dentist in Ancient Japan',2006,1,NULL,6,'4.99',173,'20.99','PG','Commentaries,Deleted Scenes','2006-02-15 05:03:42'),(360,'GLASS DYING','A Astounding Drama of a Frisbee And a Astronaut who must Fight a Dog in Ancient Japan',2006,1,NULL,4,'0.99',103,'24.99','G','Trailers','2006-02-15 05:03:42'),(361,'GLEAMING JAWBREAKER','A Amazing Display of a Composer And a Forensic Psychologist who must Discover a Car in The Canadian Rockies',2006,1,NULL,5,'2.99',89,'25.99','NC-17','Trailers,Commentaries','2006-02-15 05:03:42'),(362,'GLORY TRACY','A Amazing Saga of a Woman And a Womanizer who must Discover a Cat in The First Manned Space Station',2006,1,NULL,7,'2.99',115,'13.99','PG-13','Trailers,Commentaries,Behind the Scenes','2006-02-15 05:03:42'),(363,'GO PURPLE','A Fast-Paced Display of a Car And a Database Administrator who must Battle a Woman in A Baloon',2006,1,NULL,3,'0.99',54,'12.99','R','Trailers','2006-02-15 05:03:42'),(364,'GODFATHER DIARY','A Stunning Saga of a Lumberjack And a Squirrel who must Chase a Car in The Outback',2006,1,NULL,3,'2.99',73,'14.99','NC-17','Trailers','2006-02-15 05:03:42'),(365,'GOLD RIVER','A Taut Documentary of a Database Administrator And a Waitress who must Reach a Mad Scientist in A Baloon Factory',2006,1,NULL,4,'4.99',154,'21.99','R','Trailers,Commentaries,Deleted Scenes,Behind the Scenes','2006-02-15 05:03:42'),(366,'GOLDFINGER SENSIBILITY','A Insightful Drama of a Mad Scientist And a Hunter who must Defeat a Pastry Chef in New Orleans',2006,1,NULL,3,'0.99',93,'29.99','G','Trailers,Commentaries,Behind the Scenes','2006-02-15 05:03:42'),(367,'GOLDMINE TYCOON','A Brilliant Epistle of a Composer And a Frisbee who must Conquer a Husband in The Outback',2006,1,NULL,6,'0.99',153,'20.99','R','Trailers,Behind the Scenes','2006-02-15 05:03:42'),(368,'GONE TROUBLE','A Insightful Character Study of a Mad Cow And a Forensic Psychologist who must Conquer a A Shark in A Manhattan Penthouse',2006,1,NULL,7,'2.99',84,'20.99','R','Deleted Scenes,Behind the Scenes','2006-02-15 05:03:42'),(369,'GOODFELLAS SALUTE','A Unbelieveable Tale of a Dog And a Explorer who must Sink a Mad Cow in A Baloon Factory',2006,1,NULL,4,'4.99',56,'22.99','PG','Deleted Scenes','2006-02-15 05:03:42'),(370,'GORGEOUS BINGO','A Action-Packed Display of a Sumo Wrestler And a Car who must Overcome a Waitress in A Baloon Factory',2006,1,NULL,4,'2.99',108,'26.99','R','Deleted Scenes,Behind the Scenes','2006-02-15 05:03:42'),(371,'GOSFORD DONNIE','A Epic Panorama of a Mad Scientist And a Monkey who must Redeem a Secret Agent in Berlin',2006,1,NULL,5,'4.99',129,'17.99','G','Commentaries','2006-02-15 05:03:42'),(372,'GRACELAND DYNAMITE','A Taut Display of a Cat And a Girl who must Overcome a Database Administrator in New Orleans',2006,1,NULL,5,'4.99',140,'26.99','R','Trailers,Commentaries','2006-02-15 05:03:42'),(373,'GRADUATE LORD','A Lacklusture Epistle of a Girl And a A Shark who must Meet a Mad Scientist in Ancient China',2006,1,NULL,7,'2.99',156,'14.99','G','Trailers,Behind the Scenes','2006-02-15 05:03:42'),(374,'GRAFFITI LOVE','A Unbelieveable Epistle of a Sumo Wrestler And a Hunter who must Build a Composer in Berlin',2006,1,NULL,3,'0.99',117,'29.99','PG','Trailers,Deleted Scenes','2006-02-15 05:03:42'),(375,'GRAIL FRANKENSTEIN','A Unbelieveable Saga of a Teacher And a Monkey who must Fight a Girl in An Abandoned Mine Shaft',2006,1,NULL,4,'2.99',85,'17.99','NC-17','Commentaries,Deleted Scenes,Behind the Scenes','2006-02-15 05:03:42'),(376,'GRAPES FURY','A Boring Yarn of a Mad Cow And a Sumo Wrestler who must Meet a Robot in Australia',2006,1,NULL,4,'0.99',155,'20.99','G','Commentaries,Behind the Scenes','2006-02-15 05:03:42'),(377,'GREASE YOUTH','A Emotional Panorama of a Secret Agent And a Waitress who must Escape a Composer in Soviet Georgia',2006,1,NULL,7,'0.99',135,'20.99','G','Trailers,Deleted Scenes','2006-02-15 05:03:42'),(378,'GREATEST NORTH','A Astounding Character Study of a Secret Agent And a Robot who must Build a A Shark in Berlin',2006,1,NULL,5,'2.99',93,'24.99','NC-17','Trailers,Commentaries,Behind the Scenes','2006-02-15 05:03:42'),(379,'GREEDY ROOTS','A Amazing Reflection of a A Shark And a Butler who must Chase a Hunter in The Canadian Rockies',2006,1,NULL,7,'0.99',166,'14.99','R','Trailers,Commentaries,Deleted Scenes','2006-02-15 05:03:42'),(380,'GREEK EVERYONE','A Stunning Display of a Butler And a Teacher who must Confront a A Shark in The First Manned Space Station',2006,1,NULL,7,'2.99',176,'11.99','PG','Trailers,Deleted Scenes','2006-02-15 05:03:42'),(381,'GRINCH MASSAGE','A Intrepid Display of a Madman And a Feminist who must Pursue a Pioneer in The First Manned Space Station',2006,1,NULL,7,'4.99',150,'25.99','R','Trailers','2006-02-15 05:03:42'),(382,'GRIT CLOCKWORK','A Thoughtful Display of a Dentist And a Squirrel who must Confront a Lumberjack in A Shark Tank',2006,1,NULL,3,'0.99',137,'21.99','PG','Trailers,Deleted Scenes','2006-02-15 05:03:42'),(383,'GROOVE FICTION','A Unbelieveable Reflection of a Moose And a A Shark who must Defeat a Lumberjack in An Abandoned Mine Shaft',2006,1,NULL,6,'0.99',111,'13.99','NC-17','Behind the Scenes','2006-02-15 05:03:42'),(384,'GROSSE WONDERFUL','A Epic Drama of a Cat And a Explorer who must Redeem a Moose in Australia',2006,1,NULL,5,'4.99',49,'19.99','R','Behind the Scenes','2006-02-15 05:03:42'),(385,'GROUNDHOG UNCUT','A Brilliant Panorama of a Astronaut And a Technical Writer who must Discover a Butler in A Manhattan Penthouse',2006,1,NULL,6,'4.99',139,'26.99','PG-13','Trailers,Commentaries,Deleted Scenes,Behind the Scenes','2006-02-15 05:03:42'),(386,'GUMP DATE','A Intrepid Yarn of a Explorer And a Student who must Kill a Husband in An Abandoned Mine Shaft',2006,1,NULL,3,'4.99',53,'12.99','NC-17','Deleted Scenes','2006-02-15 05:03:42'),(387,'GUN BONNIE','A Boring Display of a Sumo Wrestler And a Husband who must Build a Waitress in The Gulf of Mexico',2006,1,NULL,7,'0.99',100,'27.99','G','Behind the Scenes','2006-02-15 05:03:42'),(388,'GUNFIGHT MOON','A Epic Reflection of a Pastry Chef And a Explorer who must Reach a Dentist in The Sahara Desert',2006,1,NULL,5,'0.99',70,'16.99','NC-17','Deleted Scenes,Behind the Scenes','2006-02-15 05:03:42'),(389,'GUNFIGHTER MUSSOLINI','A Touching Saga of a Robot And a Boy who must Kill a Man in Ancient Japan',2006,1,NULL,3,'2.99',127,'9.99','PG-13','Trailers,Commentaries','2006-02-15 05:03:42'),(390,'GUYS FALCON','A Boring Story of a Woman And a Feminist who must Redeem a Squirrel in A U-Boat',2006,1,NULL,4,'4.99',84,'20.99','R','Trailers,Commentaries,Behind the Scenes','2006-02-15 05:03:42'),(391,'HALF OUTFIELD','A Epic Epistle of a Database Administrator And a Crocodile who must Face a Madman in A Jet Boat',2006,1,NULL,6,'2.99',146,'25.99','PG-13','Trailers,Commentaries,Deleted Scenes,Behind the Scenes','2006-02-15 05:03:42'),(392,'HALL CASSIDY','A Beautiful Panorama of a Pastry Chef And a A Shark who must Battle a Pioneer in Soviet Georgia',2006,1,NULL,5,'4.99',51,'13.99','NC-17','Commentaries,Behind the Scenes','2006-02-15 05:03:42'),(393,'HALLOWEEN NUTS','A Amazing Panorama of a Forensic Psychologist And a Technical Writer who must Fight a Dentist in A U-Boat',2006,1,NULL,6,'2.99',47,'19.99','PG-13','Deleted Scenes','2006-02-15 05:03:42'),(394,'HAMLET WISDOM','A Touching Reflection of a Man And a Man who must Sink a Robot in The Outback',2006,1,NULL,7,'2.99',146,'21.99','R','Trailers,Deleted Scenes','2006-02-15 05:03:42'),(395,'HANDICAP BOONDOCK','A Beautiful Display of a Pioneer And a Squirrel who must Vanquish a Sumo Wrestler in Soviet Georgia',2006,1,NULL,4,'0.99',108,'28.99','R','Commentaries,Deleted Scenes,Behind the Scenes','2006-02-15 05:03:42'),(396,'HANGING DEEP','A Action-Packed Yarn of a Boat And a Crocodile who must Build a Monkey in Berlin',2006,1,NULL,5,'4.99',62,'18.99','G','Trailers,Commentaries,Deleted Scenes','2006-02-15 05:03:42'),(397,'HANKY OCTOBER','A Boring Epistle of a Database Administrator And a Explorer who must Pursue a Madman in Soviet Georgia',2006,1,NULL,5,'2.99',107,'26.99','NC-17','Trailers,Commentaries,Deleted Scenes','2006-02-15 05:03:42'),(398,'HANOVER GALAXY','A Stunning Reflection of a Girl And a Secret Agent who must Succumb a Boy in A MySQL Convention',2006,1,NULL,5,'4.99',47,'21.99','NC-17','Commentaries,Deleted Scenes,Behind the Scenes','2006-02-15 05:03:42'),(399,'HAPPINESS UNITED','A Action-Packed Panorama of a Husband And a Feminist who must Meet a Forensic Psychologist in Ancient Japan',2006,1,NULL,6,'2.99',100,'23.99','G','Deleted Scenes','2006-02-15 05:03:42'),(400,'HARDLY ROBBERS','A Emotional Character Study of a Hunter And a Car who must Kill a Woman in Berlin',2006,1,NULL,7,'2.99',72,'15.99','R','Trailers,Behind the Scenes','2006-02-15 05:03:42'),(401,'HAROLD FRENCH','A Stunning Saga of a Sumo Wrestler And a Student who must Outrace a Moose in The Sahara Desert',2006,1,NULL,6,'0.99',168,'10.99','NC-17','Commentaries,Deleted Scenes,Behind the Scenes','2006-02-15 05:03:42'),(402,'HARPER DYING','A Awe-Inspiring Reflection of a Woman And a Cat who must Confront a Feminist in The Sahara Desert',2006,1,NULL,3,'0.99',52,'15.99','G','Trailers','2006-02-15 05:03:42'),(403,'HARRY IDAHO','A Taut Yarn of a Technical Writer And a Feminist who must Outrace a Dog in California',2006,1,NULL,5,'4.99',121,'18.99','PG-13','Commentaries,Deleted Scenes','2006-02-15 05:03:42'),(404,'HATE HANDICAP','A Intrepid Reflection of a Mad Scientist And a Pioneer who must Overcome a Hunter in The First Manned Space Station',2006,1,NULL,4,'0.99',107,'26.99','PG','Trailers,Commentaries,Behind the Scenes','2006-02-15 05:03:42'),(405,'HAUNTED ANTITRUST','A Amazing Saga of a Man And a Dentist who must Reach a Technical Writer in Ancient India',2006,1,NULL,6,'4.99',76,'13.99','NC-17','Trailers,Deleted Scenes','2006-02-15 05:03:42'),(406,'HAUNTING PIANIST','A Fast-Paced Story of a Database Administrator And a Composer who must Defeat a Squirrel in An Abandoned Amusement Park',2006,1,NULL,5,'0.99',181,'22.99','R','Behind the Scenes','2006-02-15 05:03:42'),(407,'HAWK CHILL','A Action-Packed Drama of a Mad Scientist And a Composer who must Outgun a Car in Australia',2006,1,NULL,5,'0.99',47,'12.99','PG-13','Behind the Scenes','2006-02-15 05:03:42'),(408,'HEAD STRANGER','A Thoughtful Saga of a Hunter And a Crocodile who must Confront a Dog in The Gulf of Mexico',2006,1,NULL,4,'4.99',69,'28.99','R','Trailers,Commentaries','2006-02-15 05:03:42'),(409,'HEARTBREAKERS BRIGHT','A Awe-Inspiring Documentary of a A Shark And a Dentist who must Outrace a Pastry Chef in The Canadian Rockies',2006,1,NULL,3,'4.99',59,'9.99','G','Trailers,Deleted Scenes','2006-02-15 05:03:42'),(410,'HEAVEN FREEDOM','A Intrepid Story of a Butler And a Car who must Vanquish a Man in New Orleans',2006,1,NULL,7,'2.99',48,'19.99','PG','Commentaries','2006-02-15 05:03:42'),(411,'HEAVENLY GUN','A Beautiful Yarn of a Forensic Psychologist And a Frisbee who must Battle a Moose in A Jet Boat',2006,1,NULL,5,'4.99',49,'13.99','NC-17','Behind the Scenes','2006-02-15 05:03:42'),(412,'HEAVYWEIGHTS BEAST','A Unbelieveable Story of a Composer And a Dog who must Overcome a Womanizer in An Abandoned Amusement Park',2006,1,NULL,6,'4.99',102,'25.99','G','Deleted Scenes','2006-02-15 05:03:42'),(413,'HEDWIG ALTER','A Action-Packed Yarn of a Womanizer And a Lumberjack who must Chase a Sumo Wrestler in A Monastery',2006,1,NULL,7,'2.99',169,'16.99','NC-17','Trailers,Commentaries,Behind the Scenes','2006-02-15 05:03:42'),(414,'HELLFIGHTERS SIERRA','A Taut Reflection of a A Shark And a Dentist who must Battle a Boat in Soviet Georgia',2006,1,NULL,3,'2.99',75,'23.99','PG','Deleted Scenes,Behind the Scenes','2006-02-15 05:03:42'),(415,'HIGH ENCINO','A Fateful Saga of a Waitress And a Hunter who must Outrace a Sumo Wrestler in Australia',2006,1,NULL,3,'2.99',84,'23.99','R','Trailers,Commentaries,Behind the Scenes','2006-02-15 05:03:42'),(416,'HIGHBALL POTTER','A Action-Packed Saga of a Husband And a Dog who must Redeem a Database Administrator in The Sahara Desert',2006,1,NULL,6,'0.99',110,'10.99','R','Deleted Scenes','2006-02-15 05:03:42'),(417,'HILLS NEIGHBORS','A Epic Display of a Hunter And a Feminist who must Sink a Car in A U-Boat',2006,1,NULL,5,'0.99',93,'29.99','G','Trailers,Commentaries,Deleted Scenes,Behind the Scenes','2006-02-15 05:03:42'),(418,'HOBBIT ALIEN','A Emotional Drama of a Husband And a Girl who must Outgun a Composer in The First Manned Space Station',2006,1,NULL,5,'0.99',157,'27.99','PG-13','Commentaries','2006-02-15 05:03:42'),(419,'HOCUS FRIDA','A Awe-Inspiring Tale of a Girl And a Madman who must Outgun a Student in A Shark Tank',2006,1,NULL,4,'2.99',141,'19.99','G','Trailers,Deleted Scenes,Behind the Scenes','2006-02-15 05:03:42'),(420,'HOLES BRANNIGAN','A Fast-Paced Reflection of a Technical Writer And a Student who must Fight a Boy in The Canadian Rockies',2006,1,NULL,7,'4.99',128,'27.99','PG','Commentaries,Behind the Scenes','2006-02-15 05:03:42'),(421,'HOLIDAY GAMES','A Insightful Reflection of a Waitress And a Madman who must Pursue a Boy in Ancient Japan',2006,1,NULL,7,'4.99',78,'10.99','PG-13','Trailers,Commentaries,Behind the Scenes','2006-02-15 05:03:42'),(422,'HOLLOW JEOPARDY','A Beautiful Character Study of a Robot And a Astronaut who must Overcome a Boat in A Monastery',2006,1,NULL,7,'4.99',136,'25.99','NC-17','Behind the Scenes','2006-02-15 05:03:42'),(423,'HOLLYWOOD ANONYMOUS','A Fast-Paced Epistle of a Boy And a Explorer who must Escape a Dog in A U-Boat',2006,1,NULL,7,'0.99',69,'29.99','PG','Trailers,Behind the Scenes','2006-02-15 05:03:42'),(424,'HOLOCAUST HIGHBALL','A Awe-Inspiring Yarn of a Composer And a Man who must Find a Robot in Soviet Georgia',2006,1,NULL,6,'0.99',149,'12.99','R','Deleted Scenes','2006-02-15 05:03:42'),(425,'HOLY TADPOLE','A Action-Packed Display of a Feminist And a Pioneer who must Pursue a Dog in A Baloon Factory',2006,1,NULL,6,'0.99',88,'20.99','R','Behind the Scenes','2006-02-15 05:03:42'),(426,'HOME PITY','A Touching Panorama of a Man And a Secret Agent who must Challenge a Teacher in A MySQL Convention',2006,1,NULL,7,'4.99',185,'15.99','R','Trailers,Commentaries,Behind the Scenes','2006-02-15 05:03:42'),(427,'HOMEWARD CIDER','A Taut Reflection of a Astronaut And a Squirrel who must Fight a Squirrel in A Manhattan Penthouse',2006,1,NULL,5,'0.99',103,'19.99','R','Trailers','2006-02-15 05:03:42'),(428,'HOMICIDE PEACH','A Astounding Documentary of a Hunter And a Boy who must Confront a Boy in A MySQL Convention',2006,1,NULL,6,'2.99',141,'21.99','PG-13','Commentaries','2006-02-15 05:03:42'),(429,'HONEY TIES','A Taut Story of a Waitress And a Crocodile who must Outrace a Lumberjack in A Shark Tank',2006,1,NULL,3,'0.99',84,'29.99','R','Trailers,Commentaries,Deleted Scenes','2006-02-15 05:03:42'),(430,'HOOK CHARIOTS','A Insightful Story of a Boy And a Dog who must Redeem a Boy in Australia',2006,1,NULL,7,'0.99',49,'23.99','G','Trailers,Commentaries,Behind the Scenes','2006-02-15 05:03:42'),(431,'HOOSIERS BIRDCAGE','A Astounding Display of a Explorer And a Boat who must Vanquish a Car in The First Manned Space Station',2006,1,NULL,3,'2.99',176,'12.99','G','Trailers,Commentaries,Deleted Scenes','2006-02-15 05:03:42'),(432,'HOPE TOOTSIE','A Amazing Documentary of a Student And a Sumo Wrestler who must Outgun a A Shark in A Shark Tank',2006,1,NULL,4,'2.99',139,'22.99','NC-17','Trailers,Deleted Scenes,Behind the Scenes','2006-02-15 05:03:42'),(433,'HORN WORKING','A Stunning Display of a Mad Scientist And a Technical Writer who must Succumb a Monkey in A Shark Tank',2006,1,NULL,4,'2.99',95,'23.99','PG','Trailers','2006-02-15 05:03:42'),(434,'HORROR REIGN','A Touching Documentary of a A Shark And a Car who must Build a Husband in Nigeria',2006,1,NULL,3,'0.99',139,'25.99','R','Deleted Scenes,Behind the Scenes','2006-02-15 05:03:42'),(435,'HOTEL HAPPINESS','A Thrilling Yarn of a Pastry Chef And a A Shark who must Challenge a Mad Scientist in The Outback',2006,1,NULL,6,'4.99',181,'28.99','PG-13','Behind the Scenes','2006-02-15 05:03:42'),(436,'HOURS RAGE','A Fateful Story of a Explorer And a Feminist who must Meet a Technical Writer in Soviet Georgia',2006,1,NULL,4,'0.99',122,'14.99','NC-17','Trailers,Deleted Scenes','2006-02-15 05:03:42'),(437,'HOUSE DYNAMITE','A Taut Story of a Pioneer And a Squirrel who must Battle a Student in Soviet Georgia',2006,1,NULL,7,'2.99',109,'13.99','R','Commentaries,Deleted Scenes,Behind the Scenes','2006-02-15 05:03:42'),(438,'HUMAN GRAFFITI','A Beautiful Reflection of a Womanizer And a Sumo Wrestler who must Chase a Database Administrator in The Gulf of Mexico',2006,1,NULL,3,'2.99',68,'22.99','NC-17','Trailers,Behind the Scenes','2006-02-15 05:03:42'),(439,'HUNCHBACK IMPOSSIBLE','A Touching Yarn of a Frisbee And a Dentist who must Fight a Composer in Ancient Japan',2006,1,NULL,4,'4.99',151,'28.99','PG-13','Trailers,Deleted Scenes','2006-02-15 05:03:42'),(440,'HUNGER ROOF','A Unbelieveable Yarn of a Student And a Database Administrator who must Outgun a Husband in An Abandoned Mine Shaft',2006,1,NULL,6,'0.99',105,'21.99','G','Deleted Scenes,Behind the Scenes','2006-02-15 05:03:42'),(441,'HUNTER ALTER','A Emotional Drama of a Mad Cow And a Boat who must Redeem a Secret Agent in A Shark Tank',2006,1,NULL,5,'2.99',125,'21.99','PG-13','Commentaries,Deleted Scenes,Behind the Scenes','2006-02-15 05:03:42'),(442,'HUNTING MUSKETEERS','A Thrilling Reflection of a Pioneer And a Dentist who must Outrace a Womanizer in An Abandoned Mine Shaft',2006,1,NULL,6,'2.99',65,'24.99','NC-17','Trailers,Deleted Scenes','2006-02-15 05:03:42'),(443,'HURRICANE AFFAIR','A Lacklusture Epistle of a Database Administrator And a Woman who must Meet a Hunter in An Abandoned Mine Shaft',2006,1,NULL,6,'2.99',49,'11.99','PG','Trailers,Commentaries,Behind the Scenes','2006-02-15 05:03:42'),(444,'HUSTLER PARTY','A Emotional Reflection of a Sumo Wrestler And a Monkey who must Conquer a Robot in The Sahara Desert',2006,1,NULL,3,'4.99',83,'22.99','NC-17','Trailers,Commentaries,Behind the Scenes','2006-02-15 05:03:42'),(445,'HYDE DOCTOR','A Fanciful Documentary of a Boy And a Woman who must Redeem a Womanizer in A Jet Boat',2006,1,NULL,5,'2.99',100,'11.99','G','Trailers,Deleted Scenes','2006-02-15 05:03:42'),(446,'HYSTERICAL GRAIL','A Amazing Saga of a Madman And a Dentist who must Build a Car in A Manhattan Penthouse',2006,1,NULL,5,'4.99',150,'19.99','PG','Trailers,Commentaries,Deleted Scenes','2006-02-15 05:03:42'),(447,'ICE CROSSING','A Fast-Paced Tale of a Butler And a Moose who must Overcome a Pioneer in A Manhattan Penthouse',2006,1,NULL,5,'2.99',131,'28.99','R','Deleted Scenes','2006-02-15 05:03:42'),(448,'IDAHO LOVE','A Fast-Paced Drama of a Student And a Crocodile who must Meet a Database Administrator in The Outback',2006,1,NULL,3,'2.99',172,'25.99','PG-13','Trailers,Commentaries,Deleted Scenes,Behind the Scenes','2006-02-15 05:03:42'),(449,'IDENTITY LOVER','A Boring Tale of a Composer And a Mad Cow who must Defeat a Car in The Outback',2006,1,NULL,4,'2.99',119,'12.99','PG-13','Deleted Scenes','2006-02-15 05:03:42'),(450,'IDOLS SNATCHERS','A Insightful Drama of a Car And a Composer who must Fight a Man in A Monastery',2006,1,NULL,5,'2.99',84,'29.99','NC-17','Trailers','2006-02-15 05:03:42'),(451,'IGBY MAKER','A Epic Documentary of a Hunter And a Dog who must Outgun a Dog in A Baloon Factory',2006,1,NULL,7,'4.99',160,'12.99','NC-17','Trailers,Behind the Scenes','2006-02-15 05:03:42'),(452,'ILLUSION AMELIE','A Emotional Epistle of a Boat And a Mad Scientist who must Outrace a Robot in An Abandoned Mine Shaft',2006,1,NULL,4,'0.99',122,'15.99','R','Commentaries,Behind the Scenes','2006-02-15 05:03:42'),(453,'IMAGE PRINCESS','A Lacklusture Panorama of a Secret Agent And a Crocodile who must Discover a Madman in The Canadian Rockies',2006,1,NULL,3,'2.99',178,'17.99','PG-13','Trailers,Commentaries,Deleted Scenes','2006-02-15 05:03:42'),(454,'IMPACT ALADDIN','A Epic Character Study of a Frisbee And a Moose who must Outgun a Technical Writer in A Shark Tank',2006,1,NULL,6,'0.99',180,'20.99','PG-13','Trailers,Deleted Scenes','2006-02-15 05:03:42'),(455,'IMPOSSIBLE PREJUDICE','A Awe-Inspiring Yarn of a Monkey And a Hunter who must Chase a Teacher in Ancient China',2006,1,NULL,7,'4.99',103,'11.99','NC-17','Deleted Scenes','2006-02-15 05:03:42'),(456,'INCH JET','A Fateful Saga of a Womanizer And a Student who must Defeat a Butler in A Monastery',2006,1,NULL,6,'4.99',167,'18.99','NC-17','Deleted Scenes','2006-02-15 05:03:42'),(457,'INDEPENDENCE HOTEL','A Thrilling Tale of a Technical Writer And a Boy who must Face a Pioneer in A Monastery',2006,1,NULL,5,'0.99',157,'21.99','NC-17','Trailers,Behind the Scenes','2006-02-15 05:03:42'),(458,'INDIAN LOVE','A Insightful Saga of a Mad Scientist And a Mad Scientist who must Kill a Astronaut in An Abandoned Fun House',2006,1,NULL,4,'0.99',135,'26.99','NC-17','Trailers,Commentaries,Deleted Scenes,Behind the Scenes','2006-02-15 05:03:42'),(459,'INFORMER DOUBLE','A Action-Packed Display of a Woman And a Dentist who must Redeem a Forensic Psychologist in The Canadian Rockies',2006,1,NULL,4,'4.99',74,'23.99','NC-17','Trailers,Commentaries','2006-02-15 05:03:42'),(460,'INNOCENT USUAL','A Beautiful Drama of a Pioneer And a Crocodile who must Challenge a Student in The Outback',2006,1,NULL,3,'4.99',178,'26.99','PG-13','Trailers,Deleted Scenes,Behind the Scenes','2006-02-15 05:03:42'),(461,'INSECTS STONE','A Epic Display of a Butler And a Dog who must Vanquish a Crocodile in A Manhattan Penthouse',2006,1,NULL,3,'0.99',123,'14.99','NC-17','Trailers,Commentaries,Behind the Scenes','2006-02-15 05:03:42'),(462,'INSIDER ARIZONA','A Astounding Saga of a Mad Scientist And a Hunter who must Pursue a Robot in A Baloon Factory',2006,1,NULL,5,'2.99',78,'17.99','NC-17','Commentaries','2006-02-15 05:03:42'),(463,'INSTINCT AIRPORT','A Touching Documentary of a Mad Cow And a Explorer who must Confront a Butler in A Manhattan Penthouse',2006,1,NULL,4,'2.99',116,'21.99','PG','Commentaries,Deleted Scenes','2006-02-15 05:03:42'),(464,'INTENTIONS EMPIRE','A Astounding Epistle of a Cat And a Cat who must Conquer a Mad Cow in A U-Boat',2006,1,NULL,3,'2.99',107,'13.99','PG-13','Trailers,Behind the Scenes','2006-02-15 05:03:42'),(465,'INTERVIEW LIAISONS','A Action-Packed Reflection of a Student And a Butler who must Discover a Database Administrator in A Manhattan Penthouse',2006,1,NULL,4,'4.99',59,'17.99','R','Commentaries,Behind the Scenes','2006-02-15 05:03:42'),(466,'INTOLERABLE INTENTIONS','A Awe-Inspiring Story of a Monkey And a Pastry Chef who must Succumb a Womanizer in A MySQL Convention',2006,1,NULL,6,'4.99',63,'20.99','PG-13','Commentaries,Behind the Scenes','2006-02-15 05:03:42'),(467,'INTRIGUE WORST','A Fanciful Character Study of a Explorer And a Mad Scientist who must Vanquish a Squirrel in A Jet Boat',2006,1,NULL,6,'0.99',181,'10.99','G','Deleted Scenes','2006-02-15 05:03:42'),(468,'INVASION CYCLONE','A Lacklusture Character Study of a Mad Scientist And a Womanizer who must Outrace a Explorer in A Monastery',2006,1,NULL,5,'2.99',97,'12.99','PG','Trailers,Deleted Scenes','2006-02-15 05:03:42'),(469,'IRON MOON','A Fast-Paced Documentary of a Mad Cow And a Boy who must Pursue a Dentist in A Baloon',2006,1,NULL,7,'4.99',46,'27.99','PG','Commentaries,Behind the Scenes','2006-02-15 05:03:42'),(470,'ISHTAR ROCKETEER','A Astounding Saga of a Dog And a Squirrel who must Conquer a Dog in An Abandoned Fun House',2006,1,NULL,4,'4.99',79,'24.99','R','Trailers,Commentaries,Deleted Scenes','2006-02-15 05:03:42'),(471,'ISLAND EXORCIST','A Fanciful Panorama of a Technical Writer And a Boy who must Find a Dentist in An Abandoned Fun House',2006,1,NULL,7,'2.99',84,'23.99','NC-17','Trailers,Commentaries','2006-02-15 05:03:42'),(472,'ITALIAN AFRICAN','A Astounding Character Study of a Monkey And a Moose who must Outgun a Cat in A U-Boat',2006,1,NULL,3,'4.99',174,'24.99','G','Trailers,Commentaries,Deleted Scenes','2006-02-15 05:03:42'),(473,'JACKET FRISCO','A Insightful Reflection of a Womanizer And a Husband who must Conquer a Pastry Chef in A Baloon',2006,1,NULL,5,'2.99',181,'16.99','PG-13','Trailers,Deleted Scenes,Behind the Scenes','2006-02-15 05:03:42'),(474,'JADE BUNCH','A Insightful Panorama of a Squirrel And a Mad Cow who must Confront a Student in The First Manned Space Station',2006,1,NULL,6,'2.99',174,'21.99','NC-17','Trailers,Commentaries,Behind the Scenes','2006-02-15 05:03:42'),(475,'JAPANESE RUN','A Awe-Inspiring Epistle of a Feminist And a Girl who must Sink a Girl in The Outback',2006,1,NULL,6,'0.99',135,'29.99','G','Deleted Scenes','2006-02-15 05:03:42'),(476,'JASON TRAP','A Thoughtful Tale of a Woman And a A Shark who must Conquer a Dog in A Monastery',2006,1,NULL,5,'2.99',130,'9.99','NC-17','Trailers,Deleted Scenes,Behind the Scenes','2006-02-15 05:03:42'),(477,'JAWBREAKER BROOKLYN','A Stunning Reflection of a Boat And a Pastry Chef who must Succumb a A Shark in A Jet Boat',2006,1,NULL,5,'0.99',118,'15.99','PG','Trailers,Behind the Scenes','2006-02-15 05:03:42'),(478,'JAWS HARRY','A Thrilling Display of a Database Administrator And a Monkey who must Overcome a Dog in An Abandoned Fun House',2006,1,NULL,4,'2.99',112,'10.99','G','Deleted Scenes','2006-02-15 05:03:42'),(479,'JEDI BENEATH','A Astounding Reflection of a Explorer And a Dentist who must Pursue a Student in Nigeria',2006,1,NULL,7,'0.99',128,'12.99','PG','Trailers,Commentaries,Deleted Scenes','2006-02-15 05:03:42'),(480,'JEEPERS WEDDING','A Astounding Display of a Composer And a Dog who must Kill a Pastry Chef in Soviet Georgia',2006,1,NULL,3,'2.99',84,'29.99','R','Trailers,Commentaries,Deleted Scenes','2006-02-15 05:03:42'),(481,'JEKYLL FROGMEN','A Fanciful Epistle of a Student And a Astronaut who must Kill a Waitress in A Shark Tank',2006,1,NULL,4,'2.99',58,'22.99','PG','Commentaries,Deleted Scenes,Behind the Scenes','2006-02-15 05:03:42'),(482,'JEOPARDY ENCINO','A Boring Panorama of a Man And a Mad Cow who must Face a Explorer in Ancient India',2006,1,NULL,3,'0.99',102,'12.99','R','Trailers,Commentaries','2006-02-15 05:03:42'),(483,'JERICHO MULAN','A Amazing Yarn of a Hunter And a Butler who must Defeat a Boy in A Jet Boat',2006,1,NULL,3,'2.99',171,'29.99','NC-17','Commentaries','2006-02-15 05:03:42'),(484,'JERK PAYCHECK','A Touching Character Study of a Pastry Chef And a Database Administrator who must Reach a A Shark in Ancient Japan',2006,1,NULL,3,'2.99',172,'13.99','NC-17','Trailers,Commentaries,Deleted Scenes,Behind the Scenes','2006-02-15 05:03:42'),(485,'JERSEY SASSY','A Lacklusture Documentary of a Madman And a Mad Cow who must Find a Feminist in Ancient Japan',2006,1,NULL,6,'4.99',60,'16.99','PG','Deleted Scenes,Behind the Scenes','2006-02-15 05:03:42'),(486,'JET NEIGHBORS','A Amazing Display of a Lumberjack And a Teacher who must Outrace a Woman in A U-Boat',2006,1,NULL,7,'4.99',59,'14.99','R','Trailers,Commentaries,Behind the Scenes','2006-02-15 05:03:42'),(487,'JINGLE SAGEBRUSH','A Epic Character Study of a Feminist And a Student who must Meet a Woman in A Baloon',2006,1,NULL,6,'4.99',124,'29.99','PG-13','Trailers,Commentaries','2006-02-15 05:03:42'),(488,'JOON NORTHWEST','A Thrilling Panorama of a Technical Writer And a Car who must Discover a Forensic Psychologist in A Shark Tank',2006,1,NULL,3,'0.99',105,'23.99','NC-17','Trailers,Commentaries,Behind the Scenes','2006-02-15 05:03:42'),(489,'JUGGLER HARDLY','A Epic Story of a Mad Cow And a Astronaut who must Challenge a Car in California',2006,1,NULL,4,'0.99',54,'14.99','PG-13','Trailers,Commentaries','2006-02-15 05:03:42'),(490,'JUMANJI BLADE','A Intrepid Yarn of a Husband And a Womanizer who must Pursue a Mad Scientist in New Orleans',2006,1,NULL,4,'2.99',121,'13.99','G','Commentaries,Behind the Scenes','2006-02-15 05:03:42'),(491,'JUMPING WRATH','A Touching Epistle of a Monkey And a Feminist who must Discover a Boat in Berlin',2006,1,NULL,4,'0.99',74,'18.99','NC-17','Commentaries,Behind the Scenes','2006-02-15 05:03:42'),(492,'JUNGLE CLOSER','A Boring Character Study of a Boy And a Woman who must Battle a Astronaut in Australia',2006,1,NULL,6,'0.99',134,'11.99','NC-17','Trailers,Commentaries,Deleted Scenes','2006-02-15 05:03:42'),(493,'KANE EXORCIST','A Epic Documentary of a Composer And a Robot who must Overcome a Car in Berlin',2006,1,NULL,5,'0.99',92,'18.99','R','Trailers,Commentaries','2006-02-15 05:03:42'),(494,'KARATE MOON','A Astounding Yarn of a Womanizer And a Dog who must Reach a Waitress in A MySQL Convention',2006,1,NULL,4,'0.99',120,'21.99','PG-13','Behind the Scenes','2006-02-15 05:03:42'),(495,'KENTUCKIAN GIANT','A Stunning Yarn of a Woman And a Frisbee who must Escape a Waitress in A U-Boat',2006,1,NULL,5,'2.99',169,'10.99','PG','Trailers,Commentaries,Deleted Scenes,Behind the Scenes','2006-02-15 05:03:42'),(496,'KICK SAVANNAH','A Emotional Drama of a Monkey And a Robot who must Defeat a Monkey in New Orleans',2006,1,NULL,3,'0.99',179,'10.99','PG-13','Trailers,Commentaries,Deleted Scenes','2006-02-15 05:03:42'),(497,'KILL BROTHERHOOD','A Touching Display of a Hunter And a Secret Agent who must Redeem a Husband in The Outback',2006,1,NULL,4,'0.99',54,'15.99','G','Trailers,Commentaries','2006-02-15 05:03:42'),(498,'KILLER INNOCENT','A Fanciful Character Study of a Student And a Explorer who must Succumb a Composer in An Abandoned Mine Shaft',2006,1,NULL,7,'2.99',161,'11.99','R','Trailers,Commentaries,Deleted Scenes','2006-02-15 05:03:42'),(499,'KING EVOLUTION','A Action-Packed Tale of a Boy And a Lumberjack who must Chase a Madman in A Baloon',2006,1,NULL,3,'4.99',184,'24.99','NC-17','Trailers,Deleted Scenes,Behind the Scenes','2006-02-15 05:03:42'),(500,'KISS GLORY','A Lacklusture Reflection of a Girl And a Husband who must Find a Robot in The Canadian Rockies',2006,1,NULL,5,'4.99',163,'11.99','PG-13','Trailers,Commentaries,Behind the Scenes','2006-02-15 05:03:42'),(501,'KISSING DOLLS','A Insightful Reflection of a Pioneer And a Teacher who must Build a Composer in The First Manned Space Station',2006,1,NULL,3,'4.99',141,'9.99','R','Trailers','2006-02-15 05:03:42'),(502,'KNOCK WARLOCK','A Unbelieveable Story of a Teacher And a Boat who must Confront a Moose in A Baloon',2006,1,NULL,4,'2.99',71,'21.99','PG-13','Trailers','2006-02-15 05:03:42'),(503,'KRAMER CHOCOLATE','A Amazing Yarn of a Robot And a Pastry Chef who must Redeem a Mad Scientist in The Outback',2006,1,NULL,3,'2.99',171,'24.99','R','Trailers','2006-02-15 05:03:42'),(504,'KWAI HOMEWARD','A Amazing Drama of a Car And a Squirrel who must Pursue a Car in Soviet Georgia',2006,1,NULL,5,'0.99',46,'25.99','PG-13','Trailers,Commentaries','2006-02-15 05:03:42'),(505,'LABYRINTH LEAGUE','A Awe-Inspiring Saga of a Composer And a Frisbee who must Succumb a Pioneer in The Sahara Desert',2006,1,NULL,6,'2.99',46,'24.99','PG-13','Commentaries,Behind the Scenes','2006-02-15 05:03:42'),(506,'LADY STAGE','A Beautiful Character Study of a Woman And a Man who must Pursue a Explorer in A U-Boat',2006,1,NULL,4,'4.99',67,'14.99','PG','Trailers,Deleted Scenes,Behind the Scenes','2006-02-15 05:03:42'),(507,'LADYBUGS ARMAGEDDON','A Fateful Reflection of a Dog And a Mad Scientist who must Meet a Mad Scientist in New Orleans',2006,1,NULL,4,'0.99',113,'13.99','NC-17','Deleted Scenes','2006-02-15 05:03:42'),(508,'LAMBS CINCINATTI','A Insightful Story of a Man And a Feminist who must Fight a Composer in Australia',2006,1,NULL,6,'4.99',144,'18.99','PG-13','Trailers,Behind the Scenes','2006-02-15 05:03:42'),(509,'LANGUAGE COWBOY','A Epic Yarn of a Cat And a Madman who must Vanquish a Dentist in An Abandoned Amusement Park',2006,1,NULL,5,'0.99',78,'26.99','NC-17','Trailers,Deleted Scenes','2006-02-15 05:03:42'),(510,'LAWLESS VISION','A Insightful Yarn of a Boy And a Sumo Wrestler who must Outgun a Car in The Outback',2006,1,NULL,6,'4.99',181,'29.99','G','Deleted Scenes,Behind the Scenes','2006-02-15 05:03:42'),(511,'LAWRENCE LOVE','A Fanciful Yarn of a Database Administrator And a Mad Cow who must Pursue a Womanizer in Berlin',2006,1,NULL,7,'0.99',175,'23.99','NC-17','Commentaries,Deleted Scenes,Behind the Scenes','2006-02-15 05:03:42'),(512,'LEAGUE HELLFIGHTERS','A Thoughtful Saga of a A Shark And a Monkey who must Outgun a Student in Ancient China',2006,1,NULL,5,'4.99',110,'25.99','PG-13','Trailers','2006-02-15 05:03:42'),(513,'LEATHERNECKS DWARFS','A Fateful Reflection of a Dog And a Mad Cow who must Outrace a Teacher in An Abandoned Mine Shaft',2006,1,NULL,6,'2.99',153,'21.99','PG-13','Trailers,Commentaries,Behind the Scenes','2006-02-15 05:03:42'),(514,'LEBOWSKI SOLDIERS','A Beautiful Epistle of a Secret Agent And a Pioneer who must Chase a Astronaut in Ancient China',2006,1,NULL,6,'2.99',69,'17.99','PG-13','Commentaries,Deleted Scenes','2006-02-15 05:03:42'),(515,'LEGALLY SECRETARY','A Astounding Tale of a A Shark And a Moose who must Meet a Womanizer in The Sahara Desert',2006,1,NULL,7,'4.99',113,'14.99','PG','Trailers,Commentaries,Behind the Scenes','2006-02-15 05:03:42'),(516,'LEGEND JEDI','A Awe-Inspiring Epistle of a Pioneer And a Student who must Outgun a Crocodile in The Outback',2006,1,NULL,7,'0.99',59,'18.99','PG','Commentaries,Deleted Scenes','2006-02-15 05:03:42'),(517,'LESSON CLEOPATRA','A Emotional Display of a Man And a Explorer who must Build a Boy in A Manhattan Penthouse',2006,1,NULL,3,'0.99',167,'28.99','NC-17','Deleted Scenes,Behind the Scenes','2006-02-15 05:03:42'),(518,'LIAISONS SWEET','A Boring Drama of a A Shark And a Explorer who must Redeem a Waitress in The Canadian Rockies',2006,1,NULL,5,'4.99',140,'15.99','PG','Commentaries,Behind the Scenes','2006-02-15 05:03:42'),(519,'LIBERTY MAGNIFICENT','A Boring Drama of a Student And a Cat who must Sink a Technical Writer in A Baloon',2006,1,NULL,3,'2.99',138,'27.99','G','Commentaries,Deleted Scenes,Behind the Scenes','2006-02-15 05:03:42'),(520,'LICENSE WEEKEND','A Insightful Story of a Man And a Husband who must Overcome a Madman in A Monastery',2006,1,NULL,7,'2.99',91,'28.99','NC-17','Deleted Scenes,Behind the Scenes','2006-02-15 05:03:42'),(521,'LIES TREATMENT','A Fast-Paced Character Study of a Dentist And a Moose who must Defeat a Composer in The First Manned Space Station',2006,1,NULL,7,'4.99',147,'28.99','NC-17','Commentaries,Deleted Scenes,Behind the Scenes','2006-02-15 05:03:42'),(522,'LIFE TWISTED','A Thrilling Reflection of a Teacher And a Composer who must Find a Man in The First Manned Space Station',2006,1,NULL,4,'2.99',137,'9.99','NC-17','Commentaries,Deleted Scenes','2006-02-15 05:03:42'),(523,'LIGHTS DEER','A Unbelieveable Epistle of a Dog And a Woman who must Confront a Moose in The Gulf of Mexico',2006,1,NULL,7,'0.99',174,'21.99','R','Commentaries','2006-02-15 05:03:42'),(524,'LION UNCUT','A Intrepid Display of a Pastry Chef And a Cat who must Kill a A Shark in Ancient China',2006,1,NULL,6,'0.99',50,'13.99','PG','Trailers,Deleted Scenes','2006-02-15 05:03:42'),(525,'LOATHING LEGALLY','A Boring Epistle of a Pioneer And a Mad Scientist who must Escape a Frisbee in The Gulf of Mexico',2006,1,NULL,4,'0.99',140,'29.99','R','Deleted Scenes','2006-02-15 05:03:42'),(526,'LOCK REAR','A Thoughtful Character Study of a Squirrel And a Technical Writer who must Outrace a Student in Ancient Japan',2006,1,NULL,7,'2.99',120,'10.99','R','Trailers,Commentaries','2006-02-15 05:03:42'),(527,'LOLA AGENT','A Astounding Tale of a Mad Scientist And a Husband who must Redeem a Database Administrator in Ancient Japan',2006,1,NULL,4,'4.99',85,'24.99','PG','Trailers,Commentaries','2006-02-15 05:03:42'),(528,'LOLITA WORLD','A Thrilling Drama of a Girl And a Robot who must Redeem a Waitress in An Abandoned Mine Shaft',2006,1,NULL,4,'2.99',155,'25.99','NC-17','Trailers,Deleted Scenes','2006-02-15 05:03:42'),(529,'LONELY ELEPHANT','A Intrepid Story of a Student And a Dog who must Challenge a Explorer in Soviet Georgia',2006,1,NULL,3,'2.99',67,'12.99','G','Trailers,Commentaries,Deleted Scenes,Behind the Scenes','2006-02-15 05:03:42'),(530,'LORD ARIZONA','A Action-Packed Display of a Frisbee And a Pastry Chef who must Pursue a Crocodile in A Jet Boat',2006,1,NULL,5,'2.99',108,'27.99','PG-13','Trailers','2006-02-15 05:03:42'),(531,'LOSE INCH','A Stunning Reflection of a Student And a Technical Writer who must Battle a Butler in The First Manned Space Station',2006,1,NULL,3,'0.99',137,'18.99','R','Trailers,Commentaries','2006-02-15 05:03:42'),(532,'LOSER HUSTLER','A Stunning Drama of a Robot And a Feminist who must Outgun a Butler in Nigeria',2006,1,NULL,5,'4.99',80,'28.99','PG','Deleted Scenes,Behind the Scenes','2006-02-15 05:03:42'),(533,'LOST BIRD','A Emotional Character Study of a Robot And a A Shark who must Defeat a Technical Writer in A Manhattan Penthouse',2006,1,NULL,4,'2.99',98,'21.99','PG-13','Deleted Scenes','2006-02-15 05:03:42'),(534,'LOUISIANA HARRY','A Lacklusture Drama of a Girl And a Technical Writer who must Redeem a Monkey in A Shark Tank',2006,1,NULL,5,'0.99',70,'18.99','PG-13','Trailers','2006-02-15 05:03:42'),(535,'LOVE SUICIDES','A Brilliant Panorama of a Hunter And a Explorer who must Pursue a Dentist in An Abandoned Fun House',2006,1,NULL,6,'0.99',181,'21.99','R','Trailers,Behind the Scenes','2006-02-15 05:03:42'),(536,'LOVELY JINGLE','A Fanciful Yarn of a Crocodile And a Forensic Psychologist who must Discover a Crocodile in The Outback',2006,1,NULL,3,'2.99',65,'18.99','PG','Trailers,Behind the Scenes','2006-02-15 05:03:42'),(537,'LOVER TRUMAN','A Emotional Yarn of a Robot And a Boy who must Outgun a Technical Writer in A U-Boat',2006,1,NULL,3,'2.99',75,'29.99','G','Trailers','2006-02-15 05:03:42'),(538,'LOVERBOY ATTACKS','A Boring Story of a Car And a Butler who must Build a Girl in Soviet Georgia',2006,1,NULL,7,'0.99',162,'19.99','PG-13','Trailers,Behind the Scenes','2006-02-15 05:03:42'),(539,'LUCK OPUS','A Boring Display of a Moose And a Squirrel who must Outrace a Teacher in A Shark Tank',2006,1,NULL,7,'2.99',152,'21.99','NC-17','Trailers,Commentaries,Behind the Scenes','2006-02-15 05:03:42'),(540,'LUCKY FLYING','A Lacklusture Character Study of a A Shark And a Man who must Find a Forensic Psychologist in A U-Boat',2006,1,NULL,7,'2.99',97,'10.99','PG-13','Trailers,Commentaries,Behind the Scenes','2006-02-15 05:03:42'),(541,'LUKE MUMMY','A Taut Character Study of a Boy And a Robot who must Redeem a Mad Scientist in Ancient India',2006,1,NULL,5,'2.99',74,'21.99','NC-17','Trailers,Behind the Scenes','2006-02-15 05:03:42'),(542,'LUST LOCK','A Fanciful Panorama of a Hunter And a Dentist who must Meet a Secret Agent in The Sahara Desert',2006,1,NULL,3,'2.99',52,'28.99','G','Trailers,Commentaries,Behind the Scenes','2006-02-15 05:03:42'),(543,'MADIGAN DORADO','A Astounding Character Study of a A Shark And a A Shark who must Discover a Crocodile in The Outback',2006,1,NULL,5,'4.99',116,'20.99','R','Deleted Scenes,Behind the Scenes','2006-02-15 05:03:42'),(544,'MADISON TRAP','A Awe-Inspiring Reflection of a Monkey And a Dentist who must Overcome a Pioneer in A U-Boat',2006,1,NULL,4,'2.99',147,'11.99','R','Commentaries,Deleted Scenes,Behind the Scenes','2006-02-15 05:03:42'),(545,'MADNESS ATTACKS','A Fanciful Tale of a Squirrel And a Boat who must Defeat a Crocodile in The Gulf of Mexico',2006,1,NULL,4,'0.99',178,'14.99','PG-13','Trailers','2006-02-15 05:03:42'),(546,'MADRE GABLES','A Intrepid Panorama of a Sumo Wrestler And a Forensic Psychologist who must Discover a Moose in The First Manned Space Station',2006,1,NULL,7,'2.99',98,'27.99','PG-13','Trailers,Commentaries,Deleted Scenes','2006-02-15 05:03:42'),(547,'MAGIC MALLRATS','A Touching Documentary of a Pastry Chef And a Pastry Chef who must Build a Mad Scientist in California',2006,1,NULL,3,'0.99',117,'19.99','PG','Trailers,Commentaries','2006-02-15 05:03:42'),(548,'MAGNIFICENT CHITTY','A Insightful Story of a Teacher And a Hunter who must Face a Mad Cow in California',2006,1,NULL,3,'2.99',53,'27.99','R','Commentaries,Deleted Scenes','2006-02-15 05:03:42'),(549,'MAGNOLIA FORRESTER','A Thoughtful Documentary of a Composer And a Explorer who must Conquer a Dentist in New Orleans',2006,1,NULL,4,'0.99',171,'28.99','PG-13','Trailers,Commentaries,Deleted Scenes','2006-02-15 05:03:42'),(550,'MAGUIRE APACHE','A Fast-Paced Reflection of a Waitress And a Hunter who must Defeat a Forensic Psychologist in A Baloon',2006,1,NULL,6,'2.99',74,'22.99','NC-17','Trailers,Commentaries','2006-02-15 05:03:42'),(551,'MAIDEN HOME','A Lacklusture Saga of a Moose And a Teacher who must Kill a Forensic Psychologist in A MySQL Convention',2006,1,NULL,3,'4.99',138,'9.99','PG','Behind the Scenes','2006-02-15 05:03:42'),(552,'MAJESTIC FLOATS','A Thrilling Character Study of a Moose And a Student who must Escape a Butler in The First Manned Space Station',2006,1,NULL,5,'0.99',130,'15.99','PG','Trailers','2006-02-15 05:03:42'),(553,'MAKER GABLES','A Stunning Display of a Moose And a Database Administrator who must Pursue a Composer in A Jet Boat',2006,1,NULL,4,'0.99',136,'12.99','PG-13','Deleted Scenes,Behind the Scenes','2006-02-15 05:03:42'),(554,'MALKOVICH PET','A Intrepid Reflection of a Waitress And a A Shark who must Kill a Squirrel in The Outback',2006,1,NULL,6,'2.99',159,'22.99','G','Behind the Scenes','2006-02-15 05:03:42'),(555,'MALLRATS UNITED','A Thrilling Yarn of a Waitress And a Dentist who must Find a Hunter in A Monastery',2006,1,NULL,4,'0.99',133,'25.99','PG','Trailers,Commentaries,Deleted Scenes','2006-02-15 05:03:42'),(556,'MALTESE HOPE','A Fast-Paced Documentary of a Crocodile And a Sumo Wrestler who must Conquer a Explorer in California',2006,1,NULL,6,'4.99',127,'26.99','PG-13','Behind the Scenes','2006-02-15 05:03:42'),(557,'MANCHURIAN CURTAIN','A Stunning Tale of a Mad Cow And a Boy who must Battle a Boy in Berlin',2006,1,NULL,5,'2.99',177,'27.99','PG','Trailers,Commentaries','2006-02-15 05:03:42'),(558,'MANNEQUIN WORST','A Astounding Saga of a Mad Cow And a Pastry Chef who must Discover a Husband in Ancient India',2006,1,NULL,3,'2.99',71,'18.99','PG-13','Trailers,Commentaries,Deleted Scenes','2006-02-15 05:03:42'),(559,'MARRIED GO','A Fanciful Story of a Womanizer And a Dog who must Face a Forensic Psychologist in The Sahara Desert',2006,1,NULL,7,'2.99',114,'22.99','G','Behind the Scenes','2006-02-15 05:03:42'),(560,'MARS ROMAN','A Boring Drama of a Car And a Dog who must Succumb a Madman in Soviet Georgia',2006,1,NULL,6,'0.99',62,'21.99','NC-17','Commentaries,Deleted Scenes','2006-02-15 05:03:42'),(561,'MASK PEACH','A Boring Character Study of a Student And a Robot who must Meet a Woman in California',2006,1,NULL,6,'2.99',123,'26.99','NC-17','Commentaries,Deleted Scenes','2006-02-15 05:03:42'),(562,'MASKED BUBBLE','A Fanciful Documentary of a Pioneer And a Boat who must Pursue a Pioneer in An Abandoned Mine Shaft',2006,1,NULL,6,'0.99',151,'12.99','PG-13','Commentaries,Behind the Scenes','2006-02-15 05:03:42'),(563,'MASSACRE USUAL','A Fateful Reflection of a Waitress And a Crocodile who must Challenge a Forensic Psychologist in California',2006,1,NULL,6,'4.99',165,'16.99','R','Commentaries','2006-02-15 05:03:42'),(564,'MASSAGE IMAGE','A Fateful Drama of a Frisbee And a Crocodile who must Vanquish a Dog in The First Manned Space Station',2006,1,NULL,4,'2.99',161,'11.99','PG','Commentaries,Behind the Scenes','2006-02-15 05:03:42'),(565,'MATRIX SNOWMAN','A Action-Packed Saga of a Womanizer And a Woman who must Overcome a Student in California',2006,1,NULL,6,'4.99',56,'9.99','PG-13','Commentaries,Deleted Scenes,Behind the Scenes','2006-02-15 05:03:42'),(566,'MAUDE MOD','A Beautiful Documentary of a Forensic Psychologist And a Cat who must Reach a Astronaut in Nigeria',2006,1,NULL,6,'0.99',72,'20.99','R','Trailers,Behind the Scenes','2006-02-15 05:03:42'),(567,'MEET CHOCOLATE','A Boring Documentary of a Dentist And a Butler who must Confront a Monkey in A MySQL Convention',2006,1,NULL,3,'2.99',80,'26.99','G','Trailers','2006-02-15 05:03:42'),(568,'MEMENTO ZOOLANDER','A Touching Epistle of a Squirrel And a Explorer who must Redeem a Pastry Chef in The Sahara Desert',2006,1,NULL,4,'4.99',77,'11.99','NC-17','Behind the Scenes','2006-02-15 05:03:42'),(569,'MENAGERIE RUSHMORE','A Unbelieveable Panorama of a Composer And a Butler who must Overcome a Database Administrator in The First Manned Space Station',2006,1,NULL,7,'2.99',147,'18.99','G','Trailers,Commentaries,Deleted Scenes','2006-02-15 05:03:42'),(570,'MERMAID INSECTS','A Lacklusture Drama of a Waitress And a Husband who must Fight a Husband in California',2006,1,NULL,5,'4.99',104,'20.99','NC-17','Trailers,Behind the Scenes','2006-02-15 05:03:42'),(571,'METAL ARMAGEDDON','A Thrilling Display of a Lumberjack And a Crocodile who must Meet a Monkey in A Baloon Factory',2006,1,NULL,6,'2.99',161,'26.99','PG-13','Trailers,Commentaries,Deleted Scenes','2006-02-15 05:03:42'),(572,'METROPOLIS COMA','A Emotional Saga of a Database Administrator And a Pastry Chef who must Confront a Teacher in A Baloon Factory',2006,1,NULL,4,'2.99',64,'9.99','PG-13','Trailers,Commentaries,Behind the Scenes','2006-02-15 05:03:42'),(573,'MICROCOSMOS PARADISE','A Touching Character Study of a Boat And a Student who must Sink a A Shark in Nigeria',2006,1,NULL,6,'2.99',105,'22.99','PG-13','Commentaries','2006-02-15 05:03:42'),(574,'MIDNIGHT WESTWARD','A Taut Reflection of a Husband And a A Shark who must Redeem a Pastry Chef in A Monastery',2006,1,NULL,3,'0.99',86,'19.99','G','Trailers,Deleted Scenes','2006-02-15 05:03:42'),(575,'MIDSUMMER GROUNDHOG','A Fateful Panorama of a Moose And a Dog who must Chase a Crocodile in Ancient Japan',2006,1,NULL,3,'4.99',48,'27.99','G','Trailers,Deleted Scenes','2006-02-15 05:03:42'),(576,'MIGHTY LUCK','A Astounding Epistle of a Mad Scientist And a Pioneer who must Escape a Database Administrator in A MySQL Convention',2006,1,NULL,7,'2.99',122,'13.99','PG','Behind the Scenes','2006-02-15 05:03:42'),(577,'MILE MULAN','A Lacklusture Epistle of a Cat And a Husband who must Confront a Boy in A MySQL Convention',2006,1,NULL,4,'0.99',64,'10.99','PG','Deleted Scenes,Behind the Scenes','2006-02-15 05:03:42'),(578,'MILLION ACE','A Brilliant Documentary of a Womanizer And a Squirrel who must Find a Technical Writer in The Sahara Desert',2006,1,NULL,4,'4.99',142,'16.99','PG-13','Deleted Scenes','2006-02-15 05:03:42'),(579,'MINDS TRUMAN','A Taut Yarn of a Mad Scientist And a Crocodile who must Outgun a Database Administrator in A Monastery',2006,1,NULL,3,'4.99',149,'22.99','PG-13','Deleted Scenes,Behind the Scenes','2006-02-15 05:03:42'),(580,'MINE TITANS','A Amazing Yarn of a Robot And a Womanizer who must Discover a Forensic Psychologist in Berlin',2006,1,NULL,3,'4.99',166,'12.99','PG-13','Trailers,Deleted Scenes','2006-02-15 05:03:42'),(581,'MINORITY KISS','A Insightful Display of a Lumberjack And a Sumo Wrestler who must Meet a Man in The Outback',2006,1,NULL,4,'0.99',59,'16.99','G','Trailers','2006-02-15 05:03:42'),(582,'MIRACLE VIRTUAL','A Touching Epistle of a Butler And a Boy who must Find a Mad Scientist in The Sahara Desert',2006,1,NULL,3,'2.99',162,'19.99','PG-13','Trailers,Deleted Scenes','2006-02-15 05:03:42'),(583,'MISSION ZOOLANDER','A Intrepid Story of a Sumo Wrestler And a Teacher who must Meet a A Shark in An Abandoned Fun House',2006,1,NULL,3,'4.99',164,'26.99','PG-13','Behind the Scenes','2006-02-15 05:03:42'),(584,'MIXED DOORS','A Taut Drama of a Womanizer And a Lumberjack who must Succumb a Pioneer in Ancient India',2006,1,NULL,6,'2.99',180,'26.99','PG-13','Behind the Scenes','2006-02-15 05:03:42'),(585,'MOB DUFFEL','A Unbelieveable Documentary of a Frisbee And a Boat who must Meet a Boy in The Canadian Rockies',2006,1,NULL,4,'0.99',105,'25.99','G','Trailers','2006-02-15 05:03:42'),(586,'MOCKINGBIRD HOLLYWOOD','A Thoughtful Panorama of a Man And a Car who must Sink a Composer in Berlin',2006,1,NULL,4,'0.99',60,'27.99','PG','Behind the Scenes','2006-02-15 05:03:42'),(587,'MOD SECRETARY','A Boring Documentary of a Mad Cow And a Cat who must Build a Lumberjack in New Orleans',2006,1,NULL,6,'4.99',77,'20.99','NC-17','Commentaries,Behind the Scenes','2006-02-15 05:03:42'),(588,'MODEL FISH','A Beautiful Panorama of a Boat And a Crocodile who must Outrace a Dog in Australia',2006,1,NULL,4,'4.99',175,'11.99','NC-17','Trailers,Commentaries,Behind the Scenes','2006-02-15 05:03:42'),(589,'MODERN DORADO','A Awe-Inspiring Story of a Butler And a Sumo Wrestler who must Redeem a Boy in New Orleans',2006,1,NULL,3,'0.99',74,'20.99','PG','Trailers,Commentaries,Deleted Scenes','2006-02-15 05:03:42'),(590,'MONEY HAROLD','A Touching Tale of a Explorer And a Boat who must Defeat a Robot in Australia',2006,1,NULL,3,'2.99',135,'17.99','PG','Trailers,Commentaries','2006-02-15 05:03:42'),(591,'MONSOON CAUSE','A Astounding Tale of a Crocodile And a Car who must Outrace a Squirrel in A U-Boat',2006,1,NULL,6,'4.99',182,'20.99','PG','Commentaries,Behind the Scenes','2006-02-15 05:03:42'),(592,'MONSTER SPARTACUS','A Fast-Paced Story of a Waitress And a Cat who must Fight a Girl in Australia',2006,1,NULL,6,'2.99',107,'28.99','PG','Commentaries,Behind the Scenes','2006-02-15 05:03:42'),(593,'MONTEREY LABYRINTH','A Awe-Inspiring Drama of a Monkey And a Composer who must Escape a Feminist in A U-Boat',2006,1,NULL,6,'0.99',158,'13.99','G','Trailers,Commentaries','2006-02-15 05:03:42'),(594,'MONTEZUMA COMMAND','A Thrilling Reflection of a Waitress And a Butler who must Battle a Butler in A Jet Boat',2006,1,NULL,6,'0.99',126,'22.99','NC-17','Trailers','2006-02-15 05:03:42'),(595,'MOON BUNCH','A Beautiful Tale of a Astronaut And a Mad Cow who must Challenge a Cat in A Baloon Factory',2006,1,NULL,7,'0.99',83,'20.99','PG','Deleted Scenes,Behind the Scenes','2006-02-15 05:03:42'),(596,'MOONSHINE CABIN','A Thoughtful Display of a Astronaut And a Feminist who must Chase a Frisbee in A Jet Boat',2006,1,NULL,4,'4.99',171,'25.99','PG-13','Behind the Scenes','2006-02-15 05:03:42'),(597,'MOONWALKER FOOL','A Epic Drama of a Feminist And a Pioneer who must Sink a Composer in New Orleans',2006,1,NULL,5,'4.99',184,'12.99','G','Trailers,Deleted Scenes','2006-02-15 05:03:42'),(598,'MOSQUITO ARMAGEDDON','A Thoughtful Character Study of a Waitress And a Feminist who must Build a Teacher in Ancient Japan',2006,1,NULL,6,'0.99',57,'22.99','G','Trailers','2006-02-15 05:03:42'),(599,'MOTHER OLEANDER','A Boring Tale of a Husband And a Boy who must Fight a Squirrel in Ancient China',2006,1,NULL,3,'0.99',103,'20.99','R','Trailers,Commentaries','2006-02-15 05:03:42'),(600,'MOTIONS DETAILS','A Awe-Inspiring Reflection of a Dog And a Student who must Kill a Car in An Abandoned Fun House',2006,1,NULL,5,'0.99',166,'16.99','PG','Trailers,Commentaries,Behind the Scenes','2006-02-15 05:03:42'),(601,'MOULIN WAKE','A Astounding Story of a Forensic Psychologist And a Cat who must Battle a Teacher in An Abandoned Mine Shaft',2006,1,NULL,4,'0.99',79,'20.99','PG-13','Trailers','2006-02-15 05:03:42'),(602,'MOURNING PURPLE','A Lacklusture Display of a Waitress And a Lumberjack who must Chase a Pioneer in New Orleans',2006,1,NULL,5,'0.99',146,'14.99','PG','Trailers,Commentaries,Deleted Scenes,Behind the Scenes','2006-02-15 05:03:42'),(603,'MOVIE SHAKESPEARE','A Insightful Display of a Database Administrator And a Student who must Build a Hunter in Berlin',2006,1,NULL,6,'4.99',53,'27.99','PG','Commentaries,Deleted Scenes,Behind the Scenes','2006-02-15 05:03:42'),(604,'MULAN MOON','A Emotional Saga of a Womanizer And a Pioneer who must Overcome a Dentist in A Baloon',2006,1,NULL,4,'0.99',160,'10.99','G','Behind the Scenes','2006-02-15 05:03:42'),(605,'MULHOLLAND BEAST','A Awe-Inspiring Display of a Husband And a Squirrel who must Battle a Sumo Wrestler in A Jet Boat',2006,1,NULL,7,'2.99',157,'13.99','PG','Trailers,Deleted Scenes,Behind the Scenes','2006-02-15 05:03:42'),(606,'MUMMY CREATURES','A Fateful Character Study of a Crocodile And a Monkey who must Meet a Dentist in Australia',2006,1,NULL,3,'0.99',160,'15.99','NC-17','Trailers,Behind the Scenes','2006-02-15 05:03:42'),(607,'MUPPET MILE','A Lacklusture Story of a Madman And a Teacher who must Kill a Frisbee in The Gulf of Mexico',2006,1,NULL,5,'4.99',50,'18.99','PG','Trailers,Deleted Scenes','2006-02-15 05:03:42'),(608,'MURDER ANTITRUST','A Brilliant Yarn of a Car And a Database Administrator who must Escape a Boy in A MySQL Convention',2006,1,NULL,6,'2.99',166,'11.99','PG','Trailers,Deleted Scenes,Behind the Scenes','2006-02-15 05:03:42'),(609,'MUSCLE BRIGHT','A Stunning Panorama of a Sumo Wrestler And a Husband who must Redeem a Madman in Ancient India',2006,1,NULL,7,'2.99',185,'23.99','G','Deleted Scenes','2006-02-15 05:03:42'),(610,'MUSIC BOONDOCK','A Thrilling Tale of a Butler And a Astronaut who must Battle a Explorer in The First Manned Space Station',2006,1,NULL,7,'0.99',129,'17.99','R','Trailers,Commentaries,Behind the Scenes','2006-02-15 05:03:42'),(611,'MUSKETEERS WAIT','A Touching Yarn of a Student And a Moose who must Fight a Mad Cow in Australia',2006,1,NULL,7,'4.99',73,'17.99','PG','Deleted Scenes,Behind the Scenes','2006-02-15 05:03:42'),(612,'MUSSOLINI SPOILERS','A Thrilling Display of a Boat And a Monkey who must Meet a Composer in Ancient China',2006,1,NULL,6,'2.99',180,'10.99','G','Deleted Scenes,Behind the Scenes','2006-02-15 05:03:42'),(613,'MYSTIC TRUMAN','A Epic Yarn of a Teacher And a Hunter who must Outgun a Explorer in Soviet Georgia',2006,1,NULL,5,'0.99',92,'19.99','NC-17','Commentaries,Behind the Scenes','2006-02-15 05:03:42'),(614,'NAME DETECTIVE','A Touching Saga of a Sumo Wrestler And a Cat who must Pursue a Mad Scientist in Nigeria',2006,1,NULL,5,'4.99',178,'11.99','PG-13','Trailers,Commentaries,Behind the Scenes','2006-02-15 05:03:42'),(615,'NASH CHOCOLAT','A Epic Reflection of a Monkey And a Mad Cow who must Kill a Forensic Psychologist in An Abandoned Mine Shaft',2006,1,NULL,6,'2.99',180,'21.99','PG-13','Commentaries,Behind the Scenes','2006-02-15 05:03:42'),(616,'NATIONAL STORY','A Taut Epistle of a Mad Scientist And a Girl who must Escape a Monkey in California',2006,1,NULL,4,'2.99',92,'19.99','NC-17','Trailers','2006-02-15 05:03:42'),(617,'NATURAL STOCK','A Fast-Paced Story of a Sumo Wrestler And a Girl who must Defeat a Car in A Baloon Factory',2006,1,NULL,4,'0.99',50,'24.99','PG-13','Commentaries,Deleted Scenes','2006-02-15 05:03:42'),(618,'NECKLACE OUTBREAK','A Astounding Epistle of a Database Administrator And a Mad Scientist who must Pursue a Cat in California',2006,1,NULL,3,'0.99',132,'21.99','PG','Trailers,Commentaries,Behind the Scenes','2006-02-15 05:03:42'),(619,'NEIGHBORS CHARADE','A Fanciful Reflection of a Crocodile And a Astronaut who must Outrace a Feminist in An Abandoned Amusement Park',2006,1,NULL,3,'0.99',161,'20.99','R','Trailers,Commentaries,Deleted Scenes','2006-02-15 05:03:42'),(620,'NEMO CAMPUS','A Lacklusture Reflection of a Monkey And a Squirrel who must Outrace a Womanizer in A Manhattan Penthouse',2006,1,NULL,5,'2.99',131,'23.99','NC-17','Trailers','2006-02-15 05:03:42'),(621,'NETWORK PEAK','A Unbelieveable Reflection of a Butler And a Boat who must Outgun a Mad Scientist in California',2006,1,NULL,5,'2.99',75,'23.99','PG-13','Commentaries,Deleted Scenes,Behind the Scenes','2006-02-15 05:03:42'),(622,'NEWSIES STORY','A Action-Packed Character Study of a Dog And a Lumberjack who must Outrace a Moose in The Gulf of Mexico',2006,1,NULL,4,'0.99',159,'25.99','G','Trailers,Deleted Scenes','2006-02-15 05:03:42'),(623,'NEWTON LABYRINTH','A Intrepid Character Study of a Moose And a Waitress who must Find a A Shark in Ancient India',2006,1,NULL,4,'0.99',75,'9.99','PG','Trailers,Commentaries,Deleted Scenes,Behind the Scenes','2006-02-15 05:03:42'),(624,'NIGHTMARE CHILL','A Brilliant Display of a Robot And a Butler who must Fight a Waitress in An Abandoned Mine Shaft',2006,1,NULL,3,'4.99',149,'25.99','PG','Trailers,Deleted Scenes,Behind the Scenes','2006-02-15 05:03:42'),(625,'NONE SPIKING','A Boring Reflection of a Secret Agent And a Astronaut who must Face a Composer in A Manhattan Penthouse',2006,1,NULL,3,'0.99',83,'18.99','NC-17','Trailers,Commentaries','2006-02-15 05:03:42'),(626,'NOON PAPI','A Unbelieveable Character Study of a Mad Scientist And a Astronaut who must Find a Pioneer in A Manhattan Penthouse',2006,1,NULL,5,'2.99',57,'12.99','G','Behind the Scenes','2006-02-15 05:03:42'),(627,'NORTH TEQUILA','A Beautiful Character Study of a Mad Cow And a Robot who must Reach a Womanizer in New Orleans',2006,1,NULL,4,'4.99',67,'9.99','NC-17','Commentaries,Deleted Scenes,Behind the Scenes','2006-02-15 05:03:42'),(628,'NORTHWEST POLISH','A Boring Character Study of a Boy And a A Shark who must Outrace a Womanizer in The Outback',2006,1,NULL,5,'2.99',172,'24.99','PG','Trailers','2006-02-15 05:03:42'),(629,'NOTORIOUS REUNION','A Amazing Epistle of a Woman And a Squirrel who must Fight a Hunter in A Baloon',2006,1,NULL,7,'0.99',128,'9.99','NC-17','Trailers,Commentaries,Deleted Scenes','2006-02-15 05:03:42'),(630,'NOTTING SPEAKEASY','A Thoughtful Display of a Butler And a Womanizer who must Find a Waitress in The Canadian Rockies',2006,1,NULL,7,'0.99',48,'19.99','PG-13','Trailers,Commentaries','2006-02-15 05:03:42'),(631,'NOVOCAINE FLIGHT','A Fanciful Display of a Student And a Teacher who must Outgun a Crocodile in Nigeria',2006,1,NULL,4,'0.99',64,'11.99','G','Trailers,Commentaries,Deleted Scenes','2006-02-15 05:03:42'),(632,'NUTS TIES','A Thoughtful Drama of a Explorer And a Womanizer who must Meet a Teacher in California',2006,1,NULL,5,'4.99',145,'10.99','NC-17','Trailers,Behind the Scenes','2006-02-15 05:03:42'),(633,'OCTOBER SUBMARINE','A Taut Epistle of a Monkey And a Boy who must Confront a Husband in A Jet Boat',2006,1,NULL,6,'4.99',54,'10.99','PG-13','Trailers,Commentaries,Behind the Scenes','2006-02-15 05:03:42'),(634,'ODDS BOOGIE','A Thrilling Yarn of a Feminist And a Madman who must Battle a Hunter in Berlin',2006,1,NULL,6,'0.99',48,'14.99','NC-17','Trailers,Commentaries,Behind the Scenes','2006-02-15 05:03:42'),(635,'OKLAHOMA JUMANJI','A Thoughtful Drama of a Dentist And a Womanizer who must Meet a Husband in The Sahara Desert',2006,1,NULL,7,'0.99',58,'15.99','PG','Behind the Scenes','2006-02-15 05:03:42'),(636,'OLEANDER CLUE','A Boring Story of a Teacher And a Monkey who must Succumb a Forensic Psychologist in A Jet Boat',2006,1,NULL,5,'0.99',161,'12.99','PG','Commentaries,Deleted Scenes','2006-02-15 05:03:42'),(637,'OPEN AFRICAN','A Lacklusture Drama of a Secret Agent And a Explorer who must Discover a Car in A U-Boat',2006,1,NULL,7,'4.99',131,'16.99','PG','Trailers,Commentaries','2006-02-15 05:03:42'),(638,'OPERATION OPERATION','A Intrepid Character Study of a Man And a Frisbee who must Overcome a Madman in Ancient China',2006,1,NULL,7,'2.99',156,'23.99','G','Trailers,Commentaries,Deleted Scenes,Behind the Scenes','2006-02-15 05:03:42'),(639,'OPPOSITE NECKLACE','A Fateful Epistle of a Crocodile And a Moose who must Kill a Explorer in Nigeria',2006,1,NULL,7,'4.99',92,'9.99','PG','Deleted Scenes','2006-02-15 05:03:42'),(640,'OPUS ICE','A Fast-Paced Drama of a Hunter And a Boy who must Discover a Feminist in The Sahara Desert',2006,1,NULL,5,'4.99',102,'21.99','R','Commentaries,Deleted Scenes','2006-02-15 05:03:42'),(641,'ORANGE GRAPES','A Astounding Documentary of a Butler And a Womanizer who must Face a Dog in A U-Boat',2006,1,NULL,4,'0.99',76,'21.99','PG-13','Trailers,Commentaries','2006-02-15 05:03:42'),(642,'ORDER BETRAYED','A Amazing Saga of a Dog And a A Shark who must Challenge a Cat in The Sahara Desert',2006,1,NULL,7,'2.99',120,'13.99','PG-13','Deleted Scenes,Behind the Scenes','2006-02-15 05:03:42'),(643,'ORIENT CLOSER','A Astounding Epistle of a Technical Writer And a Teacher who must Fight a Squirrel in The Sahara Desert',2006,1,NULL,3,'2.99',118,'22.99','R','Commentaries,Deleted Scenes','2006-02-15 05:03:42'),(644,'OSCAR GOLD','A Insightful Tale of a Database Administrator And a Dog who must Face a Madman in Soviet Georgia',2006,1,NULL,7,'2.99',115,'29.99','PG','Behind the Scenes','2006-02-15 05:03:42'),(645,'OTHERS SOUP','A Lacklusture Documentary of a Mad Cow And a Madman who must Sink a Moose in The Gulf of Mexico',2006,1,NULL,7,'2.99',118,'18.99','PG','Deleted Scenes','2006-02-15 05:03:42'),(646,'OUTBREAK DIVINE','A Unbelieveable Yarn of a Database Administrator And a Woman who must Succumb a A Shark in A U-Boat',2006,1,NULL,6,'0.99',169,'12.99','NC-17','Trailers,Deleted Scenes,Behind the Scenes','2006-02-15 05:03:42'),(647,'OUTFIELD MASSACRE','A Thoughtful Drama of a Husband And a Secret Agent who must Pursue a Database Administrator in Ancient India',2006,1,NULL,4,'0.99',129,'18.99','NC-17','Trailers,Deleted Scenes','2006-02-15 05:03:42'),(648,'OUTLAW HANKY','A Thoughtful Story of a Astronaut And a Composer who must Conquer a Dog in The Sahara Desert',2006,1,NULL,7,'4.99',148,'17.99','PG-13','Trailers,Commentaries','2006-02-15 05:03:42'),(649,'OZ LIAISONS','A Epic Yarn of a Mad Scientist And a Cat who must Confront a Womanizer in A Baloon Factory',2006,1,NULL,4,'2.99',85,'14.99','R','Commentaries,Deleted Scenes,Behind the Scenes','2006-02-15 05:03:42'),(650,'PACIFIC AMISTAD','A Thrilling Yarn of a Dog And a Moose who must Kill a Pastry Chef in A Manhattan Penthouse',2006,1,NULL,3,'0.99',144,'27.99','G','Trailers,Commentaries,Deleted Scenes,Behind the Scenes','2006-02-15 05:03:42'),(651,'PACKER MADIGAN','A Epic Display of a Sumo Wrestler And a Forensic Psychologist who must Build a Woman in An Abandoned Amusement Park',2006,1,NULL,3,'0.99',84,'20.99','PG-13','Trailers','2006-02-15 05:03:42'),(652,'PAJAMA JAWBREAKER','A Emotional Drama of a Boy And a Technical Writer who must Redeem a Sumo Wrestler in California',2006,1,NULL,3,'0.99',126,'14.99','R','Trailers,Deleted Scenes','2006-02-15 05:03:42'),(653,'PANIC CLUB','A Fanciful Display of a Teacher And a Crocodile who must Succumb a Girl in A Baloon',2006,1,NULL,3,'4.99',102,'15.99','G','Commentaries,Deleted Scenes','2006-02-15 05:03:42'),(654,'PANKY SUBMARINE','A Touching Documentary of a Dentist And a Sumo Wrestler who must Overcome a Boy in The Gulf of Mexico',2006,1,NULL,4,'4.99',93,'19.99','G','Trailers,Commentaries,Deleted Scenes,Behind the Scenes','2006-02-15 05:03:42'),(655,'PANTHER REDS','A Brilliant Panorama of a Moose And a Man who must Reach a Teacher in The Gulf of Mexico',2006,1,NULL,5,'4.99',109,'22.99','NC-17','Deleted Scenes,Behind the Scenes','2006-02-15 05:03:42'),(656,'PAPI NECKLACE','A Fanciful Display of a Car And a Monkey who must Escape a Squirrel in Ancient Japan',2006,1,NULL,3,'0.99',128,'9.99','PG','Trailers,Deleted Scenes,Behind the Scenes','2006-02-15 05:03:42'),(657,'PARADISE SABRINA','A Intrepid Yarn of a Car And a Moose who must Outrace a Crocodile in A Manhattan Penthouse',2006,1,NULL,5,'2.99',48,'12.99','PG-13','Commentaries,Deleted Scenes,Behind the Scenes','2006-02-15 05:03:42'),(658,'PARIS WEEKEND','A Intrepid Story of a Squirrel And a Crocodile who must Defeat a Monkey in The Outback',2006,1,NULL,7,'2.99',121,'19.99','PG-13','Trailers,Commentaries,Deleted Scenes,Behind the Scenes','2006-02-15 05:03:42'),(659,'PARK CITIZEN','A Taut Epistle of a Sumo Wrestler And a Girl who must Face a Husband in Ancient Japan',2006,1,NULL,3,'4.99',109,'14.99','PG-13','Trailers,Deleted Scenes','2006-02-15 05:03:42'),(660,'PARTY KNOCK','A Fateful Display of a Technical Writer And a Butler who must Battle a Sumo Wrestler in An Abandoned Mine Shaft',2006,1,NULL,7,'2.99',107,'11.99','PG','Trailers,Behind the Scenes','2006-02-15 05:03:42'),(661,'PAST SUICIDES','A Intrepid Tale of a Madman And a Astronaut who must Challenge a Hunter in A Monastery',2006,1,NULL,5,'4.99',157,'17.99','PG-13','Trailers,Deleted Scenes,Behind the Scenes','2006-02-15 05:03:42'),(662,'PATHS CONTROL','A Astounding Documentary of a Butler And a Cat who must Find a Frisbee in Ancient China',2006,1,NULL,3,'4.99',118,'9.99','PG','Trailers,Behind the Scenes','2006-02-15 05:03:42'),(663,'PATIENT SISTER','A Emotional Epistle of a Squirrel And a Robot who must Confront a Lumberjack in Soviet Georgia',2006,1,NULL,7,'0.99',99,'29.99','NC-17','Trailers,Commentaries','2006-02-15 05:03:42'),(664,'PATRIOT ROMAN','A Taut Saga of a Robot And a Database Administrator who must Challenge a Astronaut in California',2006,1,NULL,6,'2.99',65,'12.99','PG','Trailers,Deleted Scenes','2006-02-15 05:03:42'),(665,'PATTON INTERVIEW','A Thrilling Documentary of a Composer And a Secret Agent who must Succumb a Cat in Berlin',2006,1,NULL,4,'2.99',175,'22.99','PG','Commentaries','2006-02-15 05:03:42'),(666,'PAYCHECK WAIT','A Awe-Inspiring Reflection of a Boy And a Man who must Discover a Moose in The Sahara Desert',2006,1,NULL,4,'4.99',145,'27.99','PG-13','Commentaries,Deleted Scenes','2006-02-15 05:03:42'),(667,'PEACH INNOCENT','A Action-Packed Drama of a Monkey And a Dentist who must Chase a Butler in Berlin',2006,1,NULL,3,'2.99',160,'20.99','PG-13','Commentaries,Behind the Scenes','2006-02-15 05:03:42'),(668,'PEAK FOREVER','A Insightful Reflection of a Boat And a Secret Agent who must Vanquish a Astronaut in An Abandoned Mine Shaft',2006,1,NULL,7,'4.99',80,'25.99','PG','Trailers,Commentaries,Deleted Scenes,Behind the Scenes','2006-02-15 05:03:42'),(669,'PEARL DESTINY','A Lacklusture Yarn of a Astronaut And a Pastry Chef who must Sink a Dog in A U-Boat',2006,1,NULL,3,'2.99',74,'10.99','NC-17','Trailers','2006-02-15 05:03:42'),(670,'PELICAN COMFORTS','A Epic Documentary of a Boy And a Monkey who must Pursue a Astronaut in Berlin',2006,1,NULL,4,'4.99',48,'17.99','PG','Commentaries,Deleted Scenes','2006-02-15 05:03:42'),(671,'PERDITION FARGO','A Fast-Paced Story of a Car And a Cat who must Outgun a Hunter in Berlin',2006,1,NULL,7,'4.99',99,'27.99','NC-17','Trailers,Behind the Scenes','2006-02-15 05:03:42'),(672,'PERFECT GROOVE','A Thrilling Yarn of a Dog And a Dog who must Build a Husband in A Baloon',2006,1,NULL,7,'2.99',82,'17.99','PG-13','Commentaries,Deleted Scenes,Behind the Scenes','2006-02-15 05:03:42'),(673,'PERSONAL LADYBUGS','A Epic Saga of a Hunter And a Technical Writer who must Conquer a Cat in Ancient Japan',2006,1,NULL,3,'0.99',118,'19.99','PG-13','Deleted Scenes,Behind the Scenes','2006-02-15 05:03:42'),(674,'PET HAUNTING','A Unbelieveable Reflection of a Explorer And a Boat who must Conquer a Woman in California',2006,1,NULL,3,'0.99',99,'11.99','PG','Trailers,Commentaries','2006-02-15 05:03:42'),(675,'PHANTOM GLORY','A Beautiful Documentary of a Astronaut And a Crocodile who must Discover a Madman in A Monastery',2006,1,NULL,6,'2.99',60,'17.99','NC-17','Commentaries,Behind the Scenes','2006-02-15 05:03:42'),(676,'PHILADELPHIA WIFE','A Taut Yarn of a Hunter And a Astronaut who must Conquer a Database Administrator in The Sahara Desert',2006,1,NULL,7,'4.99',137,'16.99','PG-13','Trailers,Commentaries,Deleted Scenes','2006-02-15 05:03:42'),(677,'PIANIST OUTFIELD','A Intrepid Story of a Boy And a Technical Writer who must Pursue a Lumberjack in A Monastery',2006,1,NULL,6,'0.99',136,'25.99','NC-17','Trailers,Commentaries,Deleted Scenes','2006-02-15 05:03:42'),(678,'PICKUP DRIVING','A Touching Documentary of a Husband And a Boat who must Meet a Pastry Chef in A Baloon Factory',2006,1,NULL,3,'2.99',77,'23.99','G','Trailers,Commentaries,Deleted Scenes,Behind the Scenes','2006-02-15 05:03:42'),(679,'PILOT HOOSIERS','A Awe-Inspiring Reflection of a Crocodile And a Sumo Wrestler who must Meet a Forensic Psychologist in An Abandoned Mine Shaft',2006,1,NULL,6,'2.99',50,'17.99','PG','Trailers,Deleted Scenes','2006-02-15 05:03:42'),(680,'PINOCCHIO SIMON','A Action-Packed Reflection of a Mad Scientist And a A Shark who must Find a Feminist in California',2006,1,NULL,4,'4.99',103,'21.99','PG','Commentaries,Behind the Scenes','2006-02-15 05:03:42'),(681,'PIRATES ROXANNE','A Stunning Drama of a Woman And a Lumberjack who must Overcome a A Shark in The Canadian Rockies',2006,1,NULL,4,'0.99',100,'20.99','PG','Commentaries,Deleted Scenes','2006-02-15 05:03:42'),(682,'PITTSBURGH HUNCHBACK','A Thrilling Epistle of a Boy And a Boat who must Find a Student in Soviet Georgia',2006,1,NULL,4,'4.99',134,'17.99','PG-13','Trailers,Deleted Scenes,Behind the Scenes','2006-02-15 05:03:42'),(683,'PITY BOUND','A Boring Panorama of a Feminist And a Moose who must Defeat a Database Administrator in Nigeria',2006,1,NULL,5,'4.99',60,'19.99','NC-17','Commentaries','2006-02-15 05:03:42'),(684,'PIZZA JUMANJI','A Epic Saga of a Cat And a Squirrel who must Outgun a Robot in A U-Boat',2006,1,NULL,4,'2.99',173,'11.99','NC-17','Commentaries','2006-02-15 05:03:42'),(685,'PLATOON INSTINCT','A Thrilling Panorama of a Man And a Woman who must Reach a Woman in Australia',2006,1,NULL,6,'4.99',132,'10.99','PG-13','Trailers,Commentaries','2006-02-15 05:03:42'),(686,'PLUTO OLEANDER','A Action-Packed Reflection of a Car And a Moose who must Outgun a Car in A Shark Tank',2006,1,NULL,5,'4.99',84,'9.99','R','Behind the Scenes','2006-02-15 05:03:42'),(687,'POCUS PULP','A Intrepid Yarn of a Frisbee And a Dog who must Build a Astronaut in A Baloon Factory',2006,1,NULL,6,'0.99',138,'15.99','NC-17','Commentaries,Deleted Scenes,Behind the Scenes','2006-02-15 05:03:42'),(688,'POLISH BROOKLYN','A Boring Character Study of a Database Administrator And a Lumberjack who must Reach a Madman in The Outback',2006,1,NULL,6,'0.99',61,'12.99','PG','Trailers,Commentaries,Deleted Scenes,Behind the Scenes','2006-02-15 05:03:42'),(689,'POLLOCK DELIVERANCE','A Intrepid Story of a Madman And a Frisbee who must Outgun a Boat in The Sahara Desert',2006,1,NULL,5,'2.99',137,'14.99','PG','Commentaries','2006-02-15 05:03:42'),(690,'POND SEATTLE','A Stunning Drama of a Teacher And a Boat who must Battle a Feminist in Ancient China',2006,1,NULL,7,'2.99',185,'25.99','PG-13','Trailers,Commentaries,Behind the Scenes','2006-02-15 05:03:42'),(691,'POSEIDON FOREVER','A Thoughtful Epistle of a Womanizer And a Monkey who must Vanquish a Dentist in A Monastery',2006,1,NULL,6,'4.99',159,'29.99','PG-13','Commentaries','2006-02-15 05:03:42'),(692,'POTLUCK MIXED','A Beautiful Story of a Dog And a Technical Writer who must Outgun a Student in A Baloon',2006,1,NULL,3,'2.99',179,'10.99','G','Behind the Scenes','2006-02-15 05:03:42'),(693,'POTTER CONNECTICUT','A Thrilling Epistle of a Frisbee And a Cat who must Fight a Technical Writer in Berlin',2006,1,NULL,5,'2.99',115,'16.99','PG','Trailers,Commentaries','2006-02-15 05:03:42'),(694,'PREJUDICE OLEANDER','A Epic Saga of a Boy And a Dentist who must Outrace a Madman in A U-Boat',2006,1,NULL,6,'4.99',98,'15.99','PG-13','Trailers,Commentaries,Deleted Scenes','2006-02-15 05:03:42'),(695,'PRESIDENT BANG','A Fateful Panorama of a Technical Writer And a Moose who must Battle a Robot in Soviet Georgia',2006,1,NULL,6,'4.99',144,'12.99','PG','Behind the Scenes','2006-02-15 05:03:42'),(696,'PRIDE ALAMO','A Thoughtful Drama of a A Shark And a Forensic Psychologist who must Vanquish a Student in Ancient India',2006,1,NULL,6,'0.99',114,'20.99','NC-17','Deleted Scenes','2006-02-15 05:03:42'),(697,'PRIMARY GLASS','A Fateful Documentary of a Pastry Chef And a Butler who must Build a Dog in The Canadian Rockies',2006,1,NULL,7,'0.99',53,'16.99','G','Trailers,Deleted Scenes,Behind the Scenes','2006-02-15 05:03:42'),(698,'PRINCESS GIANT','A Thrilling Yarn of a Pastry Chef And a Monkey who must Battle a Monkey in A Shark Tank',2006,1,NULL,3,'2.99',71,'29.99','NC-17','Trailers,Deleted Scenes','2006-02-15 05:03:42'),(699,'PRIVATE DROP','A Stunning Story of a Technical Writer And a Hunter who must Succumb a Secret Agent in A Baloon',2006,1,NULL,7,'4.99',106,'26.99','PG','Trailers','2006-02-15 05:03:42'),(700,'PRIX UNDEFEATED','A Stunning Saga of a Mad Scientist And a Boat who must Overcome a Dentist in Ancient China',2006,1,NULL,4,'2.99',115,'13.99','R','Trailers,Deleted Scenes','2006-02-15 05:03:42'),(701,'PSYCHO SHRUNK','A Amazing Panorama of a Crocodile And a Explorer who must Fight a Husband in Nigeria',2006,1,NULL,5,'2.99',155,'11.99','PG-13','Behind the Scenes','2006-02-15 05:03:42'),(702,'PULP BEVERLY','A Unbelieveable Display of a Dog And a Crocodile who must Outrace a Man in Nigeria',2006,1,NULL,4,'2.99',89,'12.99','G','Trailers,Behind the Scenes','2006-02-15 05:03:42'),(703,'PUNK DIVORCE','A Fast-Paced Tale of a Pastry Chef And a Boat who must Face a Frisbee in The Canadian Rockies',2006,1,NULL,6,'4.99',100,'18.99','PG','Trailers,Commentaries,Deleted Scenes','2006-02-15 05:03:42'),(704,'PURE RUNNER','A Thoughtful Documentary of a Student And a Madman who must Challenge a Squirrel in A Manhattan Penthouse',2006,1,NULL,3,'2.99',121,'25.99','NC-17','Trailers,Deleted Scenes','2006-02-15 05:03:42'),(705,'PURPLE MOVIE','A Boring Display of a Pastry Chef And a Sumo Wrestler who must Discover a Frisbee in An Abandoned Amusement Park',2006,1,NULL,4,'2.99',88,'9.99','R','Commentaries,Deleted Scenes','2006-02-15 05:03:42'),(706,'QUEEN LUKE','A Astounding Story of a Girl And a Boy who must Challenge a Composer in New Orleans',2006,1,NULL,5,'4.99',163,'22.99','PG','Commentaries,Deleted Scenes,Behind the Scenes','2006-02-15 05:03:42'),(707,'QUEST MUSSOLINI','A Fateful Drama of a Husband And a Sumo Wrestler who must Battle a Pastry Chef in A Baloon Factory',2006,1,NULL,5,'2.99',177,'29.99','R','Behind the Scenes','2006-02-15 05:03:42'),(708,'QUILLS BULL','A Thoughtful Story of a Pioneer And a Woman who must Reach a Moose in Australia',2006,1,NULL,4,'4.99',112,'19.99','R','Trailers,Behind the Scenes','2006-02-15 05:03:42'),(709,'RACER EGG','A Emotional Display of a Monkey And a Waitress who must Reach a Secret Agent in California',2006,1,NULL,7,'2.99',147,'19.99','NC-17','Trailers,Commentaries,Deleted Scenes','2006-02-15 05:03:42'),(710,'RAGE GAMES','A Fast-Paced Saga of a Astronaut And a Secret Agent who must Escape a Hunter in An Abandoned Amusement Park',2006,1,NULL,4,'4.99',120,'18.99','R','Trailers,Behind the Scenes','2006-02-15 05:03:42'),(711,'RAGING AIRPLANE','A Astounding Display of a Secret Agent And a Technical Writer who must Escape a Mad Scientist in A Jet Boat',2006,1,NULL,4,'4.99',154,'18.99','R','Commentaries,Deleted Scenes','2006-02-15 05:03:42'),(712,'RAIDERS ANTITRUST','A Amazing Drama of a Teacher And a Feminist who must Meet a Woman in The First Manned Space Station',2006,1,NULL,4,'0.99',82,'11.99','PG-13','Deleted Scenes','2006-02-15 05:03:42'),(713,'RAINBOW SHOCK','A Action-Packed Story of a Hunter And a Boy who must Discover a Lumberjack in Ancient India',2006,1,NULL,3,'4.99',74,'14.99','PG','Trailers,Commentaries,Deleted Scenes,Behind the Scenes','2006-02-15 05:03:42'),(714,'RANDOM GO','A Fateful Drama of a Frisbee And a Student who must Confront a Cat in A Shark Tank',2006,1,NULL,6,'2.99',73,'29.99','NC-17','Trailers','2006-02-15 05:03:42'),(715,'RANGE MOONWALKER','A Insightful Documentary of a Hunter And a Dentist who must Confront a Crocodile in A Baloon',2006,1,NULL,3,'4.99',147,'25.99','PG','Trailers,Commentaries,Deleted Scenes','2006-02-15 05:03:42'),(716,'REAP UNFAITHFUL','A Thrilling Epistle of a Composer And a Sumo Wrestler who must Challenge a Mad Cow in A MySQL Convention',2006,1,NULL,6,'2.99',136,'26.99','PG-13','Trailers,Commentaries','2006-02-15 05:03:42'),(717,'REAR TRADING','A Awe-Inspiring Reflection of a Forensic Psychologist And a Secret Agent who must Succumb a Pastry Chef in Soviet Georgia',2006,1,NULL,6,'0.99',97,'23.99','NC-17','Trailers,Commentaries,Deleted Scenes','2006-02-15 05:03:42'),(718,'REBEL AIRPORT','A Intrepid Yarn of a Database Administrator And a Boat who must Outrace a Husband in Ancient India',2006,1,NULL,7,'0.99',73,'24.99','G','Trailers,Behind the Scenes','2006-02-15 05:03:42'),(719,'RECORDS ZORRO','A Amazing Drama of a Mad Scientist And a Composer who must Build a Husband in The Outback',2006,1,NULL,7,'4.99',182,'11.99','PG','Behind the Scenes','2006-02-15 05:03:42'),(720,'REDEMPTION COMFORTS','A Emotional Documentary of a Dentist And a Woman who must Battle a Mad Scientist in Ancient China',2006,1,NULL,3,'2.99',179,'20.99','NC-17','Trailers,Deleted Scenes,Behind the Scenes','2006-02-15 05:03:42'),(721,'REDS POCUS','A Lacklusture Yarn of a Sumo Wrestler And a Squirrel who must Redeem a Monkey in Soviet Georgia',2006,1,NULL,7,'4.99',182,'23.99','PG-13','Trailers,Behind the Scenes','2006-02-15 05:03:42'),(722,'REEF SALUTE','A Action-Packed Saga of a Teacher And a Lumberjack who must Battle a Dentist in A Baloon',2006,1,NULL,5,'0.99',123,'26.99','NC-17','Behind the Scenes','2006-02-15 05:03:42'),(723,'REIGN GENTLEMEN','A Emotional Yarn of a Composer And a Man who must Escape a Butler in The Gulf of Mexico',2006,1,NULL,3,'2.99',82,'29.99','PG-13','Deleted Scenes,Behind the Scenes','2006-02-15 05:03:42'),(724,'REMEMBER DIARY','A Insightful Tale of a Technical Writer And a Waitress who must Conquer a Monkey in Ancient India',2006,1,NULL,5,'2.99',110,'15.99','R','Trailers,Commentaries','2006-02-15 05:03:42'),(725,'REQUIEM TYCOON','A Unbelieveable Character Study of a Cat And a Database Administrator who must Pursue a Teacher in A Monastery',2006,1,NULL,6,'4.99',167,'25.99','R','Trailers,Commentaries,Behind the Scenes','2006-02-15 05:03:42'),(726,'RESERVOIR ADAPTATION','A Intrepid Drama of a Teacher And a Moose who must Kill a Car in California',2006,1,NULL,7,'2.99',61,'29.99','PG-13','Commentaries','2006-02-15 05:03:42'),(727,'RESURRECTION SILVERADO','A Epic Yarn of a Robot And a Explorer who must Challenge a Girl in A MySQL Convention',2006,1,NULL,6,'0.99',117,'12.99','PG','Trailers,Deleted Scenes','2006-02-15 05:03:42'),(728,'REUNION WITCHES','A Unbelieveable Documentary of a Database Administrator And a Frisbee who must Redeem a Mad Scientist in A Baloon Factory',2006,1,NULL,3,'0.99',63,'26.99','R','Commentaries','2006-02-15 05:03:42'),(729,'RIDER CADDYSHACK','A Taut Reflection of a Monkey And a Womanizer who must Chase a Moose in Nigeria',2006,1,NULL,5,'2.99',177,'28.99','PG','Commentaries,Behind the Scenes','2006-02-15 05:03:42'),(730,'RIDGEMONT SUBMARINE','A Unbelieveable Drama of a Waitress And a Composer who must Sink a Mad Cow in Ancient Japan',2006,1,NULL,3,'0.99',46,'28.99','PG-13','Commentaries,Deleted Scenes,Behind the Scenes','2006-02-15 05:03:42'),(731,'RIGHT CRANES','A Fateful Character Study of a Boat And a Cat who must Find a Database Administrator in A Jet Boat',2006,1,NULL,7,'4.99',153,'29.99','PG-13','Trailers,Commentaries,Deleted Scenes','2006-02-15 05:03:42'),(732,'RINGS HEARTBREAKERS','A Amazing Yarn of a Sumo Wrestler And a Boat who must Conquer a Waitress in New Orleans',2006,1,NULL,5,'0.99',58,'17.99','G','Trailers,Commentaries,Behind the Scenes','2006-02-15 05:03:42'),(733,'RIVER OUTLAW','A Thrilling Character Study of a Squirrel And a Lumberjack who must Face a Hunter in A MySQL Convention',2006,1,NULL,4,'0.99',149,'29.99','PG-13','Commentaries','2006-02-15 05:03:42'),(734,'ROAD ROXANNE','A Boring Character Study of a Waitress And a Astronaut who must Fight a Crocodile in Ancient Japan',2006,1,NULL,4,'4.99',158,'12.99','R','Behind the Scenes','2006-02-15 05:03:42'),(735,'ROBBERS JOON','A Thoughtful Story of a Mad Scientist And a Waitress who must Confront a Forensic Psychologist in Soviet Georgia',2006,1,NULL,7,'2.99',102,'26.99','PG-13','Commentaries','2006-02-15 05:03:42'),(736,'ROBBERY BRIGHT','A Taut Reflection of a Robot And a Squirrel who must Fight a Boat in Ancient Japan',2006,1,NULL,4,'0.99',134,'21.99','R','Trailers','2006-02-15 05:03:42'),(737,'ROCK INSTINCT','A Astounding Character Study of a Robot And a Moose who must Overcome a Astronaut in Ancient India',2006,1,NULL,4,'0.99',102,'28.99','G','Trailers,Commentaries,Deleted Scenes,Behind the Scenes','2006-02-15 05:03:42'),(738,'ROCKETEER MOTHER','A Awe-Inspiring Character Study of a Robot And a Sumo Wrestler who must Discover a Womanizer in A Shark Tank',2006,1,NULL,3,'0.99',178,'27.99','PG-13','Deleted Scenes,Behind the Scenes','2006-02-15 05:03:42'),(739,'ROCKY WAR','A Fast-Paced Display of a Squirrel And a Explorer who must Outgun a Mad Scientist in Nigeria',2006,1,NULL,4,'4.99',145,'17.99','PG-13','Trailers,Commentaries,Behind the Scenes','2006-02-15 05:03:42'),(740,'ROLLERCOASTER BRINGING','A Beautiful Drama of a Robot And a Lumberjack who must Discover a Technical Writer in A Shark Tank',2006,1,NULL,5,'2.99',153,'13.99','PG-13','Trailers,Commentaries,Deleted Scenes','2006-02-15 05:03:42'),(741,'ROMAN PUNK','A Thoughtful Panorama of a Mad Cow And a Student who must Battle a Forensic Psychologist in Berlin',2006,1,NULL,7,'0.99',81,'28.99','NC-17','Trailers','2006-02-15 05:03:42'),(742,'ROOF CHAMPION','A Lacklusture Reflection of a Car And a Explorer who must Find a Monkey in A Baloon',2006,1,NULL,7,'0.99',101,'25.99','R','Deleted Scenes,Behind the Scenes','2006-02-15 05:03:42'),(743,'ROOM ROMAN','A Awe-Inspiring Panorama of a Composer And a Secret Agent who must Sink a Composer in A Shark Tank',2006,1,NULL,7,'0.99',60,'27.99','PG','Trailers,Deleted Scenes,Behind the Scenes','2006-02-15 05:03:42'),(744,'ROOTS REMEMBER','A Brilliant Drama of a Mad Cow And a Hunter who must Escape a Hunter in Berlin',2006,1,NULL,4,'0.99',89,'23.99','PG-13','Commentaries,Deleted Scenes,Behind the Scenes','2006-02-15 05:03:42'),(745,'ROSES TREASURE','A Astounding Panorama of a Monkey And a Secret Agent who must Defeat a Woman in The First Manned Space Station',2006,1,NULL,5,'4.99',162,'23.99','PG-13','Commentaries,Deleted Scenes,Behind the Scenes','2006-02-15 05:03:42'),(746,'ROUGE SQUAD','A Awe-Inspiring Drama of a Astronaut And a Frisbee who must Conquer a Mad Scientist in Australia',2006,1,NULL,3,'0.99',118,'10.99','NC-17','Commentaries,Deleted Scenes,Behind the Scenes','2006-02-15 05:03:42'),(747,'ROXANNE REBEL','A Astounding Story of a Pastry Chef And a Database Administrator who must Fight a Man in The Outback',2006,1,NULL,5,'0.99',171,'9.99','R','Deleted Scenes,Behind the Scenes','2006-02-15 05:03:42'),(748,'RUGRATS SHAKESPEARE','A Touching Saga of a Crocodile And a Crocodile who must Discover a Technical Writer in Nigeria',2006,1,NULL,4,'0.99',109,'16.99','PG-13','Trailers,Commentaries,Deleted Scenes,Behind the Scenes','2006-02-15 05:03:42'),(749,'RULES HUMAN','A Beautiful Epistle of a Astronaut And a Student who must Confront a Monkey in An Abandoned Fun House',2006,1,NULL,6,'4.99',153,'19.99','R','Deleted Scenes,Behind the Scenes','2006-02-15 05:03:42'),(750,'RUN PACIFIC','A Touching Tale of a Cat And a Pastry Chef who must Conquer a Pastry Chef in A MySQL Convention',2006,1,NULL,3,'0.99',145,'25.99','R','Commentaries,Deleted Scenes,Behind the Scenes','2006-02-15 05:03:42'),(751,'RUNAWAY TENENBAUMS','A Thoughtful Documentary of a Boat And a Man who must Meet a Boat in An Abandoned Fun House',2006,1,NULL,6,'0.99',181,'17.99','NC-17','Commentaries','2006-02-15 05:03:42'),(752,'RUNNER MADIGAN','A Thoughtful Documentary of a Crocodile And a Robot who must Outrace a Womanizer in The Outback',2006,1,NULL,6,'0.99',101,'27.99','NC-17','Commentaries,Deleted Scenes,Behind the Scenes','2006-02-15 05:03:42'),(753,'RUSH GOODFELLAS','A Emotional Display of a Man And a Dentist who must Challenge a Squirrel in Australia',2006,1,NULL,3,'0.99',48,'20.99','PG','Deleted Scenes','2006-02-15 05:03:42'),(754,'RUSHMORE MERMAID','A Boring Story of a Woman And a Moose who must Reach a Husband in A Shark Tank',2006,1,NULL,6,'2.99',150,'17.99','PG-13','Trailers,Commentaries,Deleted Scenes','2006-02-15 05:03:42'),(755,'SABRINA MIDNIGHT','A Emotional Story of a Squirrel And a Crocodile who must Succumb a Husband in The Sahara Desert',2006,1,NULL,5,'4.99',99,'11.99','PG','Trailers,Behind the Scenes','2006-02-15 05:03:42'),(756,'SADDLE ANTITRUST','A Stunning Epistle of a Feminist And a A Shark who must Battle a Woman in An Abandoned Fun House',2006,1,NULL,7,'2.99',80,'10.99','PG-13','Trailers,Deleted Scenes','2006-02-15 05:03:42'),(757,'SAGEBRUSH CLUELESS','A Insightful Story of a Lumberjack And a Hunter who must Kill a Boy in Ancient Japan',2006,1,NULL,4,'2.99',106,'28.99','G','Trailers','2006-02-15 05:03:42'),(758,'SAINTS BRIDE','A Fateful Tale of a Technical Writer And a Composer who must Pursue a Explorer in The Gulf of Mexico',2006,1,NULL,5,'2.99',125,'11.99','G','Deleted Scenes','2006-02-15 05:03:42'),(759,'SALUTE APOLLO','A Awe-Inspiring Character Study of a Boy And a Feminist who must Sink a Crocodile in Ancient China',2006,1,NULL,4,'2.99',73,'29.99','R','Trailers,Commentaries,Deleted Scenes,Behind the Scenes','2006-02-15 05:03:42'),(760,'SAMURAI LION','A Fast-Paced Story of a Pioneer And a Astronaut who must Reach a Boat in A Baloon',2006,1,NULL,5,'2.99',110,'21.99','G','Commentaries','2006-02-15 05:03:42'),(761,'SANTA PARIS','A Emotional Documentary of a Moose And a Car who must Redeem a Mad Cow in A Baloon Factory',2006,1,NULL,7,'2.99',154,'23.99','PG','Commentaries,Behind the Scenes','2006-02-15 05:03:42'),(762,'SASSY PACKER','A Fast-Paced Documentary of a Dog And a Teacher who must Find a Moose in A Manhattan Penthouse',2006,1,NULL,6,'0.99',154,'29.99','G','Deleted Scenes,Behind the Scenes','2006-02-15 05:03:42'),(763,'SATISFACTION CONFIDENTIAL','A Lacklusture Yarn of a Dentist And a Butler who must Meet a Secret Agent in Ancient China',2006,1,NULL,3,'4.99',75,'26.99','G','Commentaries,Deleted Scenes,Behind the Scenes','2006-02-15 05:03:42'),(764,'SATURDAY LAMBS','A Thoughtful Reflection of a Mad Scientist And a Moose who must Kill a Husband in A Baloon',2006,1,NULL,3,'4.99',150,'28.99','G','Commentaries,Deleted Scenes','2006-02-15 05:03:42'),(765,'SATURN NAME','A Fateful Epistle of a Butler And a Boy who must Redeem a Teacher in Berlin',2006,1,NULL,7,'4.99',182,'18.99','R','Trailers,Commentaries,Deleted Scenes,Behind the Scenes','2006-02-15 05:03:42'),(766,'SAVANNAH TOWN','A Awe-Inspiring Tale of a Astronaut And a Database Administrator who must Chase a Secret Agent in The Gulf of Mexico',2006,1,NULL,5,'0.99',84,'25.99','PG-13','Commentaries,Deleted Scenes,Behind the Scenes','2006-02-15 05:03:42'),(767,'SCALAWAG DUCK','A Fateful Reflection of a Car And a Teacher who must Confront a Waitress in A Monastery',2006,1,NULL,6,'4.99',183,'13.99','NC-17','Commentaries,Behind the Scenes','2006-02-15 05:03:42'),(768,'SCARFACE BANG','A Emotional Yarn of a Teacher And a Girl who must Find a Teacher in A Baloon Factory',2006,1,NULL,3,'4.99',102,'11.99','PG-13','Commentaries,Deleted Scenes','2006-02-15 05:03:42'),(769,'SCHOOL JACKET','A Intrepid Yarn of a Monkey And a Boy who must Fight a Composer in A Manhattan Penthouse',2006,1,NULL,5,'4.99',151,'21.99','PG-13','Trailers','2006-02-15 05:03:42'),(770,'SCISSORHANDS SLUMS','A Awe-Inspiring Drama of a Girl And a Technical Writer who must Meet a Feminist in The Canadian Rockies',2006,1,NULL,5,'2.99',147,'13.99','G','Commentaries,Deleted Scenes,Behind the Scenes','2006-02-15 05:03:42'),(771,'SCORPION APOLLO','A Awe-Inspiring Documentary of a Technical Writer And a Husband who must Meet a Monkey in An Abandoned Fun House',2006,1,NULL,3,'4.99',137,'23.99','NC-17','Commentaries,Deleted Scenes','2006-02-15 05:03:42'),(772,'SEA VIRGIN','A Fast-Paced Documentary of a Technical Writer And a Pastry Chef who must Escape a Moose in A U-Boat',2006,1,NULL,4,'2.99',80,'24.99','PG','Deleted Scenes','2006-02-15 05:03:42'),(773,'SEABISCUIT PUNK','A Insightful Saga of a Man And a Forensic Psychologist who must Discover a Mad Cow in A MySQL Convention',2006,1,NULL,6,'2.99',112,'28.99','NC-17','Commentaries,Deleted Scenes,Behind the Scenes','2006-02-15 05:03:42'),(774,'SEARCHERS WAIT','A Fast-Paced Tale of a Car And a Mad Scientist who must Kill a Womanizer in Ancient Japan',2006,1,NULL,3,'2.99',182,'22.99','NC-17','Trailers,Commentaries,Deleted Scenes,Behind the Scenes','2006-02-15 05:03:42'),(775,'SEATTLE EXPECATIONS','A Insightful Reflection of a Crocodile And a Sumo Wrestler who must Meet a Technical Writer in The Sahara Desert',2006,1,NULL,4,'4.99',110,'18.99','PG-13','Trailers','2006-02-15 05:03:42'),(776,'SECRET GROUNDHOG','A Astounding Story of a Cat And a Database Administrator who must Build a Technical Writer in New Orleans',2006,1,NULL,6,'4.99',90,'11.99','PG','Commentaries,Deleted Scenes','2006-02-15 05:03:42'),(777,'SECRETARY ROUGE','A Action-Packed Panorama of a Mad Cow And a Composer who must Discover a Robot in A Baloon Factory',2006,1,NULL,5,'4.99',158,'10.99','PG','Commentaries,Behind the Scenes','2006-02-15 05:03:42'),(778,'SECRETS PARADISE','A Fateful Saga of a Cat And a Frisbee who must Kill a Girl in A Manhattan Penthouse',2006,1,NULL,3,'4.99',109,'24.99','G','Trailers,Commentaries','2006-02-15 05:03:42'),(779,'SENSE GREEK','A Taut Saga of a Lumberjack And a Pastry Chef who must Escape a Sumo Wrestler in An Abandoned Fun House',2006,1,NULL,4,'4.99',54,'23.99','R','Deleted Scenes,Behind the Scenes','2006-02-15 05:03:42'),(780,'SENSIBILITY REAR','A Emotional Tale of a Robot And a Sumo Wrestler who must Redeem a Pastry Chef in A Baloon Factory',2006,1,NULL,7,'4.99',98,'15.99','PG','Behind the Scenes','2006-02-15 05:03:42'),(781,'SEVEN SWARM','A Unbelieveable Character Study of a Dog And a Mad Cow who must Kill a Monkey in Berlin',2006,1,NULL,4,'4.99',127,'15.99','R','Deleted Scenes','2006-02-15 05:03:42'),(782,'SHAKESPEARE SADDLE','A Fast-Paced Panorama of a Lumberjack And a Database Administrator who must Defeat a Madman in A MySQL Convention',2006,1,NULL,6,'2.99',60,'26.99','PG-13','Commentaries,Behind the Scenes','2006-02-15 05:03:42'),(783,'SHANE DARKNESS','A Action-Packed Saga of a Moose And a Lumberjack who must Find a Woman in Berlin',2006,1,NULL,5,'2.99',93,'22.99','PG','Commentaries,Deleted Scenes','2006-02-15 05:03:42'),(784,'SHANGHAI TYCOON','A Fast-Paced Character Study of a Crocodile And a Lumberjack who must Build a Husband in An Abandoned Fun House',2006,1,NULL,7,'2.99',47,'20.99','PG','Commentaries,Deleted Scenes,Behind the Scenes','2006-02-15 05:03:42'),(785,'SHAWSHANK BUBBLE','A Lacklusture Story of a Moose And a Monkey who must Confront a Butler in An Abandoned Amusement Park',2006,1,NULL,6,'4.99',80,'20.99','PG','Commentaries,Deleted Scenes','2006-02-15 05:03:42'),(786,'SHEPHERD MIDSUMMER','A Thoughtful Drama of a Robot And a Womanizer who must Kill a Lumberjack in A Baloon',2006,1,NULL,7,'0.99',113,'14.99','R','Deleted Scenes','2006-02-15 05:03:42'),(787,'SHINING ROSES','A Awe-Inspiring Character Study of a Astronaut And a Forensic Psychologist who must Challenge a Madman in Ancient India',2006,1,NULL,4,'0.99',125,'12.99','G','Trailers,Commentaries,Deleted Scenes,Behind the Scenes','2006-02-15 05:03:42'),(788,'SHIP WONDERLAND','A Thrilling Saga of a Monkey And a Frisbee who must Escape a Explorer in The Outback',2006,1,NULL,5,'2.99',104,'15.99','R','Commentaries','2006-02-15 05:03:42'),(789,'SHOCK CABIN','A Fateful Tale of a Mad Cow And a Crocodile who must Meet a Husband in New Orleans',2006,1,NULL,7,'2.99',79,'15.99','PG-13','Trailers,Commentaries,Behind the Scenes','2006-02-15 05:03:42'),(790,'SHOOTIST SUPERFLY','A Fast-Paced Story of a Crocodile And a A Shark who must Sink a Pioneer in Berlin',2006,1,NULL,6,'0.99',67,'22.99','PG-13','Trailers','2006-02-15 05:03:42'),(791,'SHOW LORD','A Fanciful Saga of a Student And a Girl who must Find a Butler in Ancient Japan',2006,1,NULL,3,'4.99',167,'24.99','PG-13','Deleted Scenes','2006-02-15 05:03:42'),(792,'SHREK LICENSE','A Fateful Yarn of a Secret Agent And a Feminist who must Find a Feminist in A Jet Boat',2006,1,NULL,7,'2.99',154,'15.99','PG-13','Commentaries','2006-02-15 05:03:42'),(793,'SHRUNK DIVINE','A Fateful Character Study of a Waitress And a Technical Writer who must Battle a Hunter in A Baloon',2006,1,NULL,6,'2.99',139,'14.99','R','Trailers,Deleted Scenes,Behind the Scenes','2006-02-15 05:03:42'),(794,'SIDE ARK','A Stunning Panorama of a Crocodile And a Womanizer who must Meet a Feminist in The Canadian Rockies',2006,1,NULL,5,'0.99',52,'28.99','G','Deleted Scenes,Behind the Scenes','2006-02-15 05:03:42'),(795,'SIEGE MADRE','A Boring Tale of a Frisbee And a Crocodile who must Vanquish a Moose in An Abandoned Mine Shaft',2006,1,NULL,7,'0.99',111,'23.99','R','Trailers,Deleted Scenes','2006-02-15 05:03:42'),(796,'SIERRA DIVIDE','A Emotional Character Study of a Frisbee And a Mad Scientist who must Build a Madman in California',2006,1,NULL,3,'0.99',135,'12.99','NC-17','Commentaries,Deleted Scenes','2006-02-15 05:03:42'),(797,'SILENCE KANE','A Emotional Drama of a Sumo Wrestler And a Dentist who must Confront a Sumo Wrestler in A Baloon',2006,1,NULL,7,'0.99',67,'23.99','R','Trailers,Deleted Scenes,Behind the Scenes','2006-02-15 05:03:42'),(798,'SILVERADO GOLDFINGER','A Stunning Epistle of a Sumo Wrestler And a Man who must Challenge a Waitress in Ancient India',2006,1,NULL,4,'4.99',74,'11.99','PG','Trailers,Commentaries','2006-02-15 05:03:42'),(799,'SIMON NORTH','A Thrilling Documentary of a Technical Writer And a A Shark who must Face a Pioneer in A Shark Tank',2006,1,NULL,3,'0.99',51,'26.99','NC-17','Trailers,Commentaries','2006-02-15 05:03:42'),(800,'SINNERS ATLANTIS','A Epic Display of a Dog And a Boat who must Succumb a Mad Scientist in An Abandoned Mine Shaft',2006,1,NULL,7,'2.99',126,'19.99','PG-13','Trailers,Commentaries,Deleted Scenes','2006-02-15 05:03:42'),(801,'SISTER FREDDY','A Stunning Saga of a Butler And a Woman who must Pursue a Explorer in Australia',2006,1,NULL,5,'4.99',152,'19.99','PG-13','Trailers,Behind the Scenes','2006-02-15 05:03:42'),(802,'SKY MIRACLE','A Epic Drama of a Mad Scientist And a Explorer who must Succumb a Waitress in An Abandoned Fun House',2006,1,NULL,7,'2.99',132,'15.99','PG','Trailers,Commentaries,Deleted Scenes','2006-02-15 05:03:42'),(803,'SLACKER LIAISONS','A Fast-Paced Tale of a A Shark And a Student who must Meet a Crocodile in Ancient China',2006,1,NULL,7,'4.99',179,'29.99','R','Trailers,Commentaries,Behind the Scenes','2006-02-15 05:03:42'),(804,'SLEEPING SUSPECTS','A Stunning Reflection of a Sumo Wrestler And a Explorer who must Sink a Frisbee in A MySQL Convention',2006,1,NULL,7,'4.99',129,'13.99','PG-13','Trailers,Commentaries','2006-02-15 05:03:42'),(805,'SLEEPLESS MONSOON','A Amazing Saga of a Moose And a Pastry Chef who must Escape a Butler in Australia',2006,1,NULL,5,'4.99',64,'12.99','G','Trailers,Deleted Scenes,Behind the Scenes','2006-02-15 05:03:42'),(806,'SLEEPY JAPANESE','A Emotional Epistle of a Moose And a Composer who must Fight a Technical Writer in The Outback',2006,1,NULL,4,'2.99',137,'25.99','PG','Trailers,Commentaries,Deleted Scenes','2006-02-15 05:03:42'),(807,'SLEUTH ORIENT','A Fateful Character Study of a Husband And a Dog who must Find a Feminist in Ancient India',2006,1,NULL,4,'0.99',87,'25.99','NC-17','Deleted Scenes,Behind the Scenes','2006-02-15 05:03:42'),(808,'SLING LUKE','A Intrepid Character Study of a Robot And a Monkey who must Reach a Secret Agent in An Abandoned Amusement Park',2006,1,NULL,5,'0.99',84,'10.99','R','Behind the Scenes','2006-02-15 05:03:42'),(809,'SLIPPER FIDELITY','A Taut Reflection of a Secret Agent And a Man who must Redeem a Explorer in A MySQL Convention',2006,1,NULL,5,'0.99',156,'14.99','PG-13','Trailers,Deleted Scenes','2006-02-15 05:03:42'),(810,'SLUMS DUCK','A Amazing Character Study of a Teacher And a Database Administrator who must Defeat a Waitress in A Jet Boat',2006,1,NULL,5,'0.99',147,'21.99','PG','Commentaries,Deleted Scenes,Behind the Scenes','2006-02-15 05:03:42'),(811,'SMILE EARRING','A Intrepid Drama of a Teacher And a Butler who must Build a Pastry Chef in Berlin',2006,1,NULL,4,'2.99',60,'29.99','G','Commentaries,Behind the Scenes','2006-02-15 05:03:42'),(812,'SMOKING BARBARELLA','A Lacklusture Saga of a Mad Cow And a Mad Scientist who must Sink a Cat in A MySQL Convention',2006,1,NULL,7,'0.99',50,'13.99','PG-13','Behind the Scenes','2006-02-15 05:03:42'),(813,'SMOOCHY CONTROL','A Thrilling Documentary of a Husband And a Feminist who must Face a Mad Scientist in Ancient China',2006,1,NULL,7,'0.99',184,'18.99','R','Behind the Scenes','2006-02-15 05:03:42'),(814,'SNATCH SLIPPER','A Insightful Panorama of a Woman And a Feminist who must Defeat a Forensic Psychologist in Berlin',2006,1,NULL,6,'4.99',110,'15.99','PG','Commentaries','2006-02-15 05:03:42'),(815,'SNATCHERS MONTEZUMA','A Boring Epistle of a Sumo Wrestler And a Woman who must Escape a Man in The Canadian Rockies',2006,1,NULL,4,'2.99',74,'14.99','PG-13','Commentaries','2006-02-15 05:03:42'),(816,'SNOWMAN ROLLERCOASTER','A Fateful Display of a Lumberjack And a Girl who must Succumb a Mad Cow in A Manhattan Penthouse',2006,1,NULL,3,'0.99',62,'27.99','G','Trailers','2006-02-15 05:03:42'),(817,'SOLDIERS EVOLUTION','A Lacklusture Panorama of a A Shark And a Pioneer who must Confront a Student in The First Manned Space Station',2006,1,NULL,7,'4.99',185,'27.99','R','Trailers,Commentaries,Deleted Scenes,Behind the Scenes','2006-02-15 05:03:42'),(818,'SOMETHING DUCK','A Boring Character Study of a Car And a Husband who must Outgun a Frisbee in The First Manned Space Station',2006,1,NULL,4,'4.99',180,'17.99','NC-17','Commentaries,Behind the Scenes','2006-02-15 05:03:42'),(819,'SONG HEDWIG','A Amazing Documentary of a Man And a Husband who must Confront a Squirrel in A MySQL Convention',2006,1,NULL,3,'0.99',165,'29.99','PG-13','Trailers,Deleted Scenes','2006-02-15 05:03:42'),(820,'SONS INTERVIEW','A Taut Character Study of a Explorer And a Mad Cow who must Battle a Hunter in Ancient China',2006,1,NULL,3,'2.99',184,'11.99','NC-17','Commentaries,Behind the Scenes','2006-02-15 05:03:42'),(821,'SORORITY QUEEN','A Fast-Paced Display of a Squirrel And a Composer who must Fight a Forensic Psychologist in A Jet Boat',2006,1,NULL,6,'0.99',184,'17.99','NC-17','Trailers,Deleted Scenes','2006-02-15 05:03:42'),(822,'SOUP WISDOM','A Fast-Paced Display of a Robot And a Butler who must Defeat a Butler in A MySQL Convention',2006,1,NULL,6,'0.99',169,'12.99','R','Behind the Scenes','2006-02-15 05:03:42'),(823,'SOUTH WAIT','A Amazing Documentary of a Car And a Robot who must Escape a Lumberjack in An Abandoned Amusement Park',2006,1,NULL,4,'2.99',143,'21.99','R','Commentaries,Behind the Scenes','2006-02-15 05:03:42'),(824,'SPARTACUS CHEAPER','A Thrilling Panorama of a Pastry Chef And a Secret Agent who must Overcome a Student in A Manhattan Penthouse',2006,1,NULL,4,'4.99',52,'19.99','NC-17','Deleted Scenes,Behind the Scenes','2006-02-15 05:03:42'),(825,'SPEAKEASY DATE','A Lacklusture Drama of a Forensic Psychologist And a Car who must Redeem a Man in A Manhattan Penthouse',2006,1,NULL,6,'2.99',165,'22.99','PG-13','Deleted Scenes,Behind the Scenes','2006-02-15 05:03:42'),(826,'SPEED SUIT','A Brilliant Display of a Frisbee And a Mad Scientist who must Succumb a Robot in Ancient China',2006,1,NULL,7,'4.99',124,'19.99','PG-13','Commentaries,Behind the Scenes','2006-02-15 05:03:42'),(827,'SPICE SORORITY','A Fateful Display of a Pioneer And a Hunter who must Defeat a Husband in An Abandoned Mine Shaft',2006,1,NULL,5,'4.99',141,'22.99','NC-17','Trailers,Commentaries,Deleted Scenes,Behind the Scenes','2006-02-15 05:03:42'),(828,'SPIKING ELEMENT','A Lacklusture Epistle of a Dentist And a Technical Writer who must Find a Dog in A Monastery',2006,1,NULL,7,'2.99',79,'12.99','G','Trailers,Deleted Scenes,Behind the Scenes','2006-02-15 05:03:42'),(829,'SPINAL ROCKY','A Lacklusture Epistle of a Sumo Wrestler And a Squirrel who must Defeat a Explorer in California',2006,1,NULL,7,'2.99',138,'12.99','PG-13','Commentaries,Deleted Scenes','2006-02-15 05:03:42'),(830,'SPIRIT FLINTSTONES','A Brilliant Yarn of a Cat And a Car who must Confront a Explorer in Ancient Japan',2006,1,NULL,7,'0.99',149,'23.99','R','Commentaries,Deleted Scenes','2006-02-15 05:03:42'),(831,'SPIRITED CASUALTIES','A Taut Story of a Waitress And a Man who must Face a Car in A Baloon Factory',2006,1,NULL,5,'0.99',138,'20.99','PG-13','Commentaries,Behind the Scenes','2006-02-15 05:03:42'),(832,'SPLASH GUMP','A Taut Saga of a Crocodile And a Boat who must Conquer a Hunter in A Shark Tank',2006,1,NULL,5,'0.99',175,'16.99','PG','Trailers,Commentaries,Deleted Scenes,Behind the Scenes','2006-02-15 05:03:42'),(833,'SPLENDOR PATTON','A Taut Story of a Dog And a Explorer who must Find a Astronaut in Berlin',2006,1,NULL,5,'0.99',134,'20.99','R','Trailers,Commentaries,Deleted Scenes,Behind the Scenes','2006-02-15 05:03:42'),(834,'SPOILERS HELLFIGHTERS','A Fanciful Story of a Technical Writer And a Squirrel who must Defeat a Dog in The Gulf of Mexico',2006,1,NULL,4,'0.99',151,'26.99','G','Trailers,Commentaries,Deleted Scenes,Behind the Scenes','2006-02-15 05:03:42'),(835,'SPY MILE','A Thrilling Documentary of a Feminist And a Feminist who must Confront a Feminist in A Baloon',2006,1,NULL,6,'2.99',112,'13.99','PG-13','Trailers,Commentaries,Deleted Scenes,Behind the Scenes','2006-02-15 05:03:42'),(836,'SQUAD FISH','A Fast-Paced Display of a Pastry Chef And a Dog who must Kill a Teacher in Berlin',2006,1,NULL,3,'2.99',136,'14.99','PG','Commentaries,Deleted Scenes,Behind the Scenes','2006-02-15 05:03:42'),(837,'STAGE WORLD','A Lacklusture Panorama of a Woman And a Frisbee who must Chase a Crocodile in A Jet Boat',2006,1,NULL,4,'2.99',85,'19.99','PG','Commentaries,Behind the Scenes','2006-02-15 05:03:42'),(838,'STAGECOACH ARMAGEDDON','A Touching Display of a Pioneer And a Butler who must Chase a Car in California',2006,1,NULL,5,'4.99',112,'25.99','R','Trailers,Deleted Scenes','2006-02-15 05:03:42'),(839,'STALLION SUNDANCE','A Fast-Paced Tale of a Car And a Dog who must Outgun a A Shark in Australia',2006,1,NULL,5,'0.99',130,'23.99','PG-13','Deleted Scenes,Behind the Scenes','2006-02-15 05:03:42'),(840,'STAMPEDE DISTURBING','A Unbelieveable Tale of a Woman And a Lumberjack who must Fight a Frisbee in A U-Boat',2006,1,NULL,5,'0.99',75,'26.99','R','Commentaries,Deleted Scenes,Behind the Scenes','2006-02-15 05:03:42'),(841,'STAR OPERATION','A Insightful Character Study of a Girl And a Car who must Pursue a Mad Cow in A Shark Tank',2006,1,NULL,5,'2.99',181,'9.99','PG','Commentaries','2006-02-15 05:03:42'),(842,'STATE WASTELAND','A Beautiful Display of a Cat And a Pastry Chef who must Outrace a Mad Cow in A Jet Boat',2006,1,NULL,4,'2.99',113,'13.99','NC-17','Trailers,Commentaries,Deleted Scenes,Behind the Scenes','2006-02-15 05:03:42'),(843,'STEEL SANTA','A Fast-Paced Yarn of a Composer And a Frisbee who must Face a Moose in Nigeria',2006,1,NULL,4,'4.99',143,'15.99','NC-17','Commentaries,Deleted Scenes','2006-02-15 05:03:42'),(844,'STEERS ARMAGEDDON','A Stunning Character Study of a Car And a Girl who must Succumb a Car in A MySQL Convention',2006,1,NULL,6,'4.99',140,'16.99','PG','Trailers,Commentaries,Deleted Scenes,Behind the Scenes','2006-02-15 05:03:42'),(845,'STEPMOM DREAM','A Touching Epistle of a Crocodile And a Teacher who must Build a Forensic Psychologist in A MySQL Convention',2006,1,NULL,7,'4.99',48,'9.99','NC-17','Deleted Scenes,Behind the Scenes','2006-02-15 05:03:42'),(846,'STING PERSONAL','A Fanciful Drama of a Frisbee And a Dog who must Fight a Madman in A Jet Boat',2006,1,NULL,3,'4.99',93,'9.99','NC-17','Commentaries,Deleted Scenes,Behind the Scenes','2006-02-15 05:03:42'),(847,'STOCK GLASS','A Boring Epistle of a Crocodile And a Lumberjack who must Outgun a Moose in Ancient China',2006,1,NULL,7,'2.99',160,'10.99','PG','Commentaries','2006-02-15 05:03:42'),(848,'STONE FIRE','A Intrepid Drama of a Astronaut And a Crocodile who must Find a Boat in Soviet Georgia',2006,1,NULL,3,'0.99',94,'19.99','G','Trailers','2006-02-15 05:03:42'),(849,'STORM HAPPINESS','A Insightful Drama of a Feminist And a A Shark who must Vanquish a Boat in A Shark Tank',2006,1,NULL,6,'0.99',57,'28.99','NC-17','Trailers,Commentaries,Behind the Scenes','2006-02-15 05:03:42'),(850,'STORY SIDE','A Lacklusture Saga of a Boy And a Cat who must Sink a Dentist in An Abandoned Mine Shaft',2006,1,NULL,7,'0.99',163,'27.99','R','Trailers,Behind the Scenes','2006-02-15 05:03:42'),(851,'STRAIGHT HOURS','A Boring Panorama of a Secret Agent And a Girl who must Sink a Waitress in The Outback',2006,1,NULL,3,'0.99',151,'19.99','R','Commentaries,Behind the Scenes','2006-02-15 05:03:42'),(852,'STRANGELOVE DESIRE','A Awe-Inspiring Panorama of a Lumberjack And a Waitress who must Defeat a Crocodile in An Abandoned Amusement Park',2006,1,NULL,4,'0.99',103,'27.99','NC-17','Trailers,Commentaries,Deleted Scenes','2006-02-15 05:03:42'),(853,'STRANGER STRANGERS','A Awe-Inspiring Yarn of a Womanizer And a Explorer who must Fight a Woman in The First Manned Space Station',2006,1,NULL,3,'4.99',139,'12.99','G','Commentaries,Deleted Scenes','2006-02-15 05:03:42'),(854,'STRANGERS GRAFFITI','A Brilliant Character Study of a Secret Agent And a Man who must Find a Cat in The Gulf of Mexico',2006,1,NULL,4,'4.99',119,'22.99','R','Trailers,Behind the Scenes','2006-02-15 05:03:42'),(855,'STREAK RIDGEMONT','A Astounding Character Study of a Hunter And a Waitress who must Sink a Man in New Orleans',2006,1,NULL,7,'0.99',132,'28.99','PG-13','Trailers,Behind the Scenes','2006-02-15 05:03:42'),(856,'STREETCAR INTENTIONS','A Insightful Character Study of a Waitress And a Crocodile who must Sink a Waitress in The Gulf of Mexico',2006,1,NULL,5,'4.99',73,'11.99','R','Commentaries','2006-02-15 05:03:42'),(857,'STRICTLY SCARFACE','A Touching Reflection of a Crocodile And a Dog who must Chase a Hunter in An Abandoned Fun House',2006,1,NULL,3,'2.99',144,'24.99','PG-13','Commentaries,Deleted Scenes,Behind the Scenes','2006-02-15 05:03:42'),(858,'SUBMARINE BED','A Amazing Display of a Car And a Monkey who must Fight a Teacher in Soviet Georgia',2006,1,NULL,5,'4.99',127,'21.99','R','Trailers','2006-02-15 05:03:42'),(859,'SUGAR WONKA','A Touching Story of a Dentist And a Database Administrator who must Conquer a Astronaut in An Abandoned Amusement Park',2006,1,NULL,3,'4.99',114,'20.99','PG','Trailers,Commentaries,Behind the Scenes','2006-02-15 05:03:42'),(860,'SUICIDES SILENCE','A Emotional Character Study of a Car And a Girl who must Face a Composer in A U-Boat',2006,1,NULL,4,'4.99',93,'13.99','G','Deleted Scenes','2006-02-15 05:03:42'),(861,'SUIT WALLS','A Touching Panorama of a Lumberjack And a Frisbee who must Build a Dog in Australia',2006,1,NULL,3,'4.99',111,'12.99','R','Commentaries','2006-02-15 05:03:42'),(862,'SUMMER SCARFACE','A Emotional Panorama of a Lumberjack And a Hunter who must Meet a Girl in A Shark Tank',2006,1,NULL,5,'0.99',53,'25.99','G','Deleted Scenes,Behind the Scenes','2006-02-15 05:03:42'),(863,'SUN CONFESSIONS','A Beautiful Display of a Mad Cow And a Dog who must Redeem a Waitress in An Abandoned Amusement Park',2006,1,NULL,5,'0.99',141,'9.99','R','Trailers,Behind the Scenes','2006-02-15 05:03:42'),(864,'SUNDANCE INVASION','A Epic Drama of a Lumberjack And a Explorer who must Confront a Hunter in A Baloon Factory',2006,1,NULL,5,'0.99',92,'21.99','NC-17','Commentaries,Behind the Scenes','2006-02-15 05:03:42'),(865,'SUNRISE LEAGUE','A Beautiful Epistle of a Madman And a Butler who must Face a Crocodile in A Manhattan Penthouse',2006,1,NULL,3,'4.99',135,'19.99','PG-13','Behind the Scenes','2006-02-15 05:03:42'),(866,'SUNSET RACER','A Awe-Inspiring Reflection of a Astronaut And a A Shark who must Defeat a Forensic Psychologist in California',2006,1,NULL,6,'0.99',48,'28.99','NC-17','Commentaries,Behind the Scenes','2006-02-15 05:03:42'),(867,'SUPER WYOMING','A Action-Packed Saga of a Pastry Chef And a Explorer who must Discover a A Shark in The Outback',2006,1,NULL,5,'4.99',58,'10.99','PG','Trailers,Commentaries,Behind the Scenes','2006-02-15 05:03:42'),(868,'SUPERFLY TRIP','A Beautiful Saga of a Lumberjack And a Teacher who must Build a Technical Writer in An Abandoned Fun House',2006,1,NULL,5,'0.99',114,'27.99','PG','Commentaries,Behind the Scenes','2006-02-15 05:03:42'),(869,'SUSPECTS QUILLS','A Emotional Epistle of a Pioneer And a Crocodile who must Battle a Man in A Manhattan Penthouse',2006,1,NULL,4,'2.99',47,'22.99','PG','Trailers','2006-02-15 05:03:42'),(870,'SWARM GOLD','A Insightful Panorama of a Crocodile And a Boat who must Conquer a Sumo Wrestler in A MySQL Convention',2006,1,NULL,4,'0.99',123,'12.99','PG-13','Trailers,Commentaries','2006-02-15 05:03:42'),(871,'SWEDEN SHINING','A Taut Documentary of a Car And a Robot who must Conquer a Boy in The Canadian Rockies',2006,1,NULL,6,'4.99',176,'19.99','PG','Deleted Scenes,Behind the Scenes','2006-02-15 05:03:42'),(872,'SWEET BROTHERHOOD','A Unbelieveable Epistle of a Sumo Wrestler And a Hunter who must Chase a Forensic Psychologist in A Baloon',2006,1,NULL,3,'2.99',185,'27.99','R','Deleted Scenes','2006-02-15 05:03:42'),(873,'SWEETHEARTS SUSPECTS','A Brilliant Character Study of a Frisbee And a Sumo Wrestler who must Confront a Woman in The Gulf of Mexico',2006,1,NULL,3,'0.99',108,'13.99','G','Trailers,Commentaries,Deleted Scenes,Behind the Scenes','2006-02-15 05:03:42'),(874,'TADPOLE PARK','A Beautiful Tale of a Frisbee And a Moose who must Vanquish a Dog in An Abandoned Amusement Park',2006,1,NULL,6,'2.99',155,'13.99','PG','Trailers,Commentaries','2006-02-15 05:03:42'),(875,'TALENTED HOMICIDE','A Lacklusture Panorama of a Dentist And a Forensic Psychologist who must Outrace a Pioneer in A U-Boat',2006,1,NULL,6,'0.99',173,'9.99','PG','Commentaries,Deleted Scenes,Behind the Scenes','2006-02-15 05:03:42'),(876,'TARZAN VIDEOTAPE','A Fast-Paced Display of a Lumberjack And a Mad Scientist who must Succumb a Sumo Wrestler in The Sahara Desert',2006,1,NULL,3,'2.99',91,'11.99','PG-13','Trailers','2006-02-15 05:03:42'),(877,'TAXI KICK','A Amazing Epistle of a Girl And a Woman who must Outrace a Waitress in Soviet Georgia',2006,1,NULL,4,'0.99',64,'23.99','PG-13','Commentaries,Deleted Scenes','2006-02-15 05:03:42'),(878,'TEEN APOLLO','A Awe-Inspiring Drama of a Dog And a Man who must Escape a Robot in A Shark Tank',2006,1,NULL,3,'4.99',74,'25.99','G','Trailers,Deleted Scenes,Behind the Scenes','2006-02-15 05:03:42'),(879,'TELEGRAPH VOYAGE','A Fateful Yarn of a Husband And a Dog who must Battle a Waitress in A Jet Boat',2006,1,NULL,3,'4.99',148,'20.99','PG','Commentaries','2006-02-15 05:03:42'),(880,'TELEMARK HEARTBREAKERS','A Action-Packed Panorama of a Technical Writer And a Man who must Build a Forensic Psychologist in A Manhattan Penthouse',2006,1,NULL,6,'2.99',152,'9.99','PG-13','Trailers,Commentaries,Deleted Scenes,Behind the Scenes','2006-02-15 05:03:42'),(881,'TEMPLE ATTRACTION','A Action-Packed Saga of a Forensic Psychologist And a Woman who must Battle a Womanizer in Soviet Georgia',2006,1,NULL,5,'4.99',71,'13.99','PG','Commentaries,Deleted Scenes','2006-02-15 05:03:42'),(882,'TENENBAUMS COMMAND','A Taut Display of a Pioneer And a Man who must Reach a Girl in The Gulf of Mexico',2006,1,NULL,4,'0.99',99,'24.99','PG-13','Trailers,Commentaries','2006-02-15 05:03:42'),(883,'TEQUILA PAST','A Action-Packed Panorama of a Mad Scientist And a Robot who must Challenge a Student in Nigeria',2006,1,NULL,6,'4.99',53,'17.99','PG','Commentaries,Behind the Scenes','2006-02-15 05:03:42'),(884,'TERMINATOR CLUB','A Touching Story of a Crocodile And a Girl who must Sink a Man in The Gulf of Mexico',2006,1,NULL,5,'4.99',88,'11.99','R','Trailers,Deleted Scenes,Behind the Scenes','2006-02-15 05:03:42'),(885,'TEXAS WATCH','A Awe-Inspiring Yarn of a Student And a Teacher who must Fight a Teacher in An Abandoned Amusement Park',2006,1,NULL,7,'0.99',179,'22.99','NC-17','Trailers','2006-02-15 05:03:42'),(886,'THEORY MERMAID','A Fateful Yarn of a Composer And a Monkey who must Vanquish a Womanizer in The First Manned Space Station',2006,1,NULL,5,'0.99',184,'9.99','PG-13','Deleted Scenes,Behind the Scenes','2006-02-15 05:03:42'),(887,'THIEF PELICAN','A Touching Documentary of a Madman And a Mad Scientist who must Outrace a Feminist in An Abandoned Mine Shaft',2006,1,NULL,5,'4.99',135,'28.99','PG-13','Deleted Scenes,Behind the Scenes','2006-02-15 05:03:42'),(888,'THIN SAGEBRUSH','A Emotional Drama of a Husband And a Lumberjack who must Build a Cat in Ancient India',2006,1,NULL,5,'4.99',53,'9.99','PG-13','Behind the Scenes','2006-02-15 05:03:42'),(889,'TIES HUNGER','A Insightful Saga of a Astronaut And a Explorer who must Pursue a Mad Scientist in A U-Boat',2006,1,NULL,3,'4.99',111,'28.99','R','Deleted Scenes','2006-02-15 05:03:42'),(890,'TIGHTS DAWN','A Thrilling Epistle of a Boat And a Secret Agent who must Face a Boy in A Baloon',2006,1,NULL,5,'0.99',172,'14.99','R','Trailers,Behind the Scenes','2006-02-15 05:03:42'),(891,'TIMBERLAND SKY','A Boring Display of a Man And a Dog who must Redeem a Girl in A U-Boat',2006,1,NULL,3,'0.99',69,'13.99','G','Commentaries','2006-02-15 05:03:42'),(892,'TITANIC BOONDOCK','A Brilliant Reflection of a Feminist And a Dog who must Fight a Boy in A Baloon Factory',2006,1,NULL,3,'4.99',104,'18.99','R','Trailers,Commentaries,Deleted Scenes,Behind the Scenes','2006-02-15 05:03:42'),(893,'TITANS JERK','A Unbelieveable Panorama of a Feminist And a Sumo Wrestler who must Challenge a Technical Writer in Ancient China',2006,1,NULL,4,'4.99',91,'11.99','PG','Behind the Scenes','2006-02-15 05:03:42'),(894,'TOMATOES HELLFIGHTERS','A Thoughtful Epistle of a Madman And a Astronaut who must Overcome a Monkey in A Shark Tank',2006,1,NULL,6,'0.99',68,'23.99','PG','Behind the Scenes','2006-02-15 05:03:42'),(895,'TOMORROW HUSTLER','A Thoughtful Story of a Moose And a Husband who must Face a Secret Agent in The Sahara Desert',2006,1,NULL,3,'2.99',142,'21.99','R','Commentaries','2006-02-15 05:03:42'),(896,'TOOTSIE PILOT','A Awe-Inspiring Documentary of a Womanizer And a Pastry Chef who must Kill a Lumberjack in Berlin',2006,1,NULL,3,'0.99',157,'10.99','PG','Commentaries,Deleted Scenes,Behind the Scenes','2006-02-15 05:03:42'),(897,'TORQUE BOUND','A Emotional Display of a Crocodile And a Husband who must Reach a Man in Ancient Japan',2006,1,NULL,3,'4.99',179,'27.99','G','Trailers,Commentaries','2006-02-15 05:03:42'),(898,'TOURIST PELICAN','A Boring Story of a Butler And a Astronaut who must Outrace a Pioneer in Australia',2006,1,NULL,4,'4.99',152,'18.99','PG-13','Deleted Scenes','2006-02-15 05:03:42'),(899,'TOWERS HURRICANE','A Fateful Display of a Monkey And a Car who must Sink a Husband in A MySQL Convention',2006,1,NULL,7,'0.99',144,'14.99','NC-17','Commentaries,Behind the Scenes','2006-02-15 05:03:42'),(900,'TOWN ARK','A Awe-Inspiring Documentary of a Moose And a Madman who must Meet a Dog in An Abandoned Mine Shaft',2006,1,NULL,6,'2.99',136,'17.99','R','Behind the Scenes','2006-02-15 05:03:42'),(901,'TRACY CIDER','A Touching Reflection of a Database Administrator And a Madman who must Build a Lumberjack in Nigeria',2006,1,NULL,3,'0.99',142,'29.99','G','Trailers,Commentaries,Behind the Scenes','2006-02-15 05:03:42'),(902,'TRADING PINOCCHIO','A Emotional Character Study of a Student And a Explorer who must Discover a Frisbee in The First Manned Space Station',2006,1,NULL,6,'4.99',170,'22.99','PG','Trailers,Deleted Scenes,Behind the Scenes','2006-02-15 05:03:42'),(903,'TRAFFIC HOBBIT','A Amazing Epistle of a Squirrel And a Lumberjack who must Succumb a Database Administrator in A U-Boat',2006,1,NULL,5,'4.99',139,'13.99','G','Trailers,Commentaries','2006-02-15 05:03:42'),(904,'TRAIN BUNCH','A Thrilling Character Study of a Robot And a Squirrel who must Face a Dog in Ancient India',2006,1,NULL,3,'4.99',71,'26.99','R','Trailers,Deleted Scenes','2006-02-15 05:03:42'),(905,'TRAINSPOTTING STRANGERS','A Fast-Paced Drama of a Pioneer And a Mad Cow who must Challenge a Madman in Ancient Japan',2006,1,NULL,7,'4.99',132,'10.99','PG-13','Trailers','2006-02-15 05:03:42'),(906,'TRAMP OTHERS','A Brilliant Display of a Composer And a Cat who must Succumb a A Shark in Ancient India',2006,1,NULL,4,'0.99',171,'27.99','PG','Deleted Scenes','2006-02-15 05:03:42'),(907,'TRANSLATION SUMMER','A Touching Reflection of a Man And a Monkey who must Pursue a Womanizer in A MySQL Convention',2006,1,NULL,4,'0.99',168,'10.99','PG-13','Trailers','2006-02-15 05:03:42'),(908,'TRAP GUYS','A Unbelieveable Story of a Boy And a Mad Cow who must Challenge a Database Administrator in The Sahara Desert',2006,1,NULL,3,'4.99',110,'11.99','G','Commentaries,Behind the Scenes','2006-02-15 05:03:42'),(909,'TREASURE COMMAND','A Emotional Saga of a Car And a Madman who must Discover a Pioneer in California',2006,1,NULL,3,'0.99',102,'28.99','PG-13','Trailers,Commentaries,Deleted Scenes,Behind the Scenes','2006-02-15 05:03:42'),(910,'TREATMENT JEKYLL','A Boring Story of a Teacher And a Student who must Outgun a Cat in An Abandoned Mine Shaft',2006,1,NULL,3,'0.99',87,'19.99','PG','Trailers,Deleted Scenes,Behind the Scenes','2006-02-15 05:03:42'),(911,'TRIP NEWTON','A Fanciful Character Study of a Lumberjack And a Car who must Discover a Cat in An Abandoned Amusement Park',2006,1,NULL,7,'4.99',64,'14.99','PG-13','Commentaries,Deleted Scenes','2006-02-15 05:03:42'),(912,'TROJAN TOMORROW','A Astounding Panorama of a Husband And a Sumo Wrestler who must Pursue a Boat in Ancient India',2006,1,NULL,3,'2.99',52,'9.99','PG','Commentaries,Deleted Scenes','2006-02-15 05:03:42'),(913,'TROOPERS METAL','A Fanciful Drama of a Monkey And a Feminist who must Sink a Man in Berlin',2006,1,NULL,3,'0.99',115,'20.99','R','Deleted Scenes,Behind the Scenes','2006-02-15 05:03:42'),(914,'TROUBLE DATE','A Lacklusture Panorama of a Forensic Psychologist And a Woman who must Kill a Explorer in Ancient Japan',2006,1,NULL,6,'2.99',61,'13.99','PG','Trailers,Commentaries,Behind the Scenes','2006-02-15 05:03:42'),(915,'TRUMAN CRAZY','A Thrilling Epistle of a Moose And a Boy who must Meet a Database Administrator in A Monastery',2006,1,NULL,7,'4.99',92,'9.99','G','Trailers,Commentaries','2006-02-15 05:03:42'),(916,'TURN STAR','A Stunning Tale of a Man And a Monkey who must Chase a Student in New Orleans',2006,1,NULL,3,'2.99',80,'10.99','G','Commentaries,Behind the Scenes','2006-02-15 05:03:42'),(917,'TUXEDO MILE','A Boring Drama of a Man And a Forensic Psychologist who must Face a Frisbee in Ancient India',2006,1,NULL,3,'2.99',152,'24.99','R','Commentaries,Deleted Scenes,Behind the Scenes','2006-02-15 05:03:42'),(918,'TWISTED PIRATES','A Touching Display of a Frisbee And a Boat who must Kill a Girl in A MySQL Convention',2006,1,NULL,4,'4.99',152,'23.99','PG','Trailers,Commentaries,Deleted Scenes','2006-02-15 05:03:42'),(919,'TYCOON GATHERING','A Emotional Display of a Husband And a A Shark who must Succumb a Madman in A Manhattan Penthouse',2006,1,NULL,3,'4.99',82,'17.99','G','Trailers,Commentaries,Deleted Scenes','2006-02-15 05:03:42'),(920,'UNBREAKABLE KARATE','A Amazing Character Study of a Robot And a Student who must Chase a Robot in Australia',2006,1,NULL,3,'0.99',62,'16.99','G','Deleted Scenes,Behind the Scenes','2006-02-15 05:03:42'),(921,'UNCUT SUICIDES','A Intrepid Yarn of a Explorer And a Pastry Chef who must Pursue a Mad Cow in A U-Boat',2006,1,NULL,7,'2.99',172,'29.99','PG-13','Trailers,Commentaries,Behind the Scenes','2006-02-15 05:03:42'),(922,'UNDEFEATED DALMATIONS','A Unbelieveable Display of a Crocodile And a Feminist who must Overcome a Moose in An Abandoned Amusement Park',2006,1,NULL,7,'4.99',107,'22.99','PG-13','Commentaries','2006-02-15 05:03:42'),(923,'UNFAITHFUL KILL','A Taut Documentary of a Waitress And a Mad Scientist who must Battle a Technical Writer in New Orleans',2006,1,NULL,7,'2.99',78,'12.99','R','Commentaries,Deleted Scenes','2006-02-15 05:03:42'),(924,'UNFORGIVEN ZOOLANDER','A Taut Epistle of a Monkey And a Sumo Wrestler who must Vanquish a A Shark in A Baloon Factory',2006,1,NULL,7,'0.99',129,'15.99','PG','Trailers,Commentaries,Behind the Scenes','2006-02-15 05:03:42'),(925,'UNITED PILOT','A Fast-Paced Reflection of a Cat And a Mad Cow who must Fight a Car in The Sahara Desert',2006,1,NULL,3,'0.99',164,'27.99','R','Trailers,Deleted Scenes','2006-02-15 05:03:42'),(926,'UNTOUCHABLES SUNRISE','A Amazing Documentary of a Woman And a Astronaut who must Outrace a Teacher in An Abandoned Fun House',2006,1,NULL,5,'2.99',120,'11.99','NC-17','Trailers,Deleted Scenes','2006-02-15 05:03:42'),(927,'UPRISING UPTOWN','A Fanciful Reflection of a Boy And a Butler who must Pursue a Woman in Berlin',2006,1,NULL,6,'2.99',174,'16.99','NC-17','Trailers,Behind the Scenes','2006-02-15 05:03:42'),(928,'UPTOWN YOUNG','A Fateful Documentary of a Dog And a Hunter who must Pursue a Teacher in An Abandoned Amusement Park',2006,1,NULL,5,'2.99',84,'16.99','PG','Commentaries','2006-02-15 05:03:42'),(929,'USUAL UNTOUCHABLES','A Touching Display of a Explorer And a Lumberjack who must Fight a Forensic Psychologist in A Shark Tank',2006,1,NULL,5,'4.99',128,'21.99','PG-13','Trailers,Commentaries,Behind the Scenes','2006-02-15 05:03:42'),(930,'VACATION BOONDOCK','A Fanciful Character Study of a Secret Agent And a Mad Scientist who must Reach a Teacher in Australia',2006,1,NULL,4,'2.99',145,'23.99','R','Commentaries','2006-02-15 05:03:42'),(931,'VALENTINE VANISHING','A Thrilling Display of a Husband And a Butler who must Reach a Pastry Chef in California',2006,1,NULL,7,'0.99',48,'9.99','PG-13','Trailers,Behind the Scenes','2006-02-15 05:03:42'),(932,'VALLEY PACKER','A Astounding Documentary of a Astronaut And a Boy who must Outrace a Sumo Wrestler in Berlin',2006,1,NULL,3,'0.99',73,'21.99','G','Commentaries,Deleted Scenes','2006-02-15 05:03:42'),(933,'VAMPIRE WHALE','A Epic Story of a Lumberjack And a Monkey who must Confront a Pioneer in A MySQL Convention',2006,1,NULL,4,'4.99',126,'11.99','NC-17','Trailers,Commentaries','2006-02-15 05:03:42'),(934,'VANILLA DAY','A Fast-Paced Saga of a Girl And a Forensic Psychologist who must Redeem a Girl in Nigeria',2006,1,NULL,7,'4.99',122,'20.99','NC-17','Deleted Scenes,Behind the Scenes','2006-02-15 05:03:42'),(935,'VANISHED GARDEN','A Intrepid Character Study of a Squirrel And a A Shark who must Kill a Lumberjack in California',2006,1,NULL,5,'0.99',142,'17.99','R','Trailers,Commentaries,Deleted Scenes','2006-02-15 05:03:42'),(936,'VANISHING ROCKY','A Brilliant Reflection of a Man And a Woman who must Conquer a Pioneer in A MySQL Convention',2006,1,NULL,3,'2.99',123,'21.99','NC-17','Trailers,Commentaries,Behind the Scenes','2006-02-15 05:03:42'),(937,'VARSITY TRIP','A Action-Packed Character Study of a Astronaut And a Explorer who must Reach a Monkey in A MySQL Convention',2006,1,NULL,7,'2.99',85,'14.99','NC-17','Commentaries,Deleted Scenes','2006-02-15 05:03:42'),(938,'VELVET TERMINATOR','A Lacklusture Tale of a Pastry Chef And a Technical Writer who must Confront a Crocodile in An Abandoned Amusement Park',2006,1,NULL,3,'4.99',173,'14.99','R','Behind the Scenes','2006-02-15 05:03:42'),(939,'VERTIGO NORTHWEST','A Unbelieveable Display of a Mad Scientist And a Mad Scientist who must Outgun a Mad Cow in Ancient Japan',2006,1,NULL,4,'2.99',90,'17.99','R','Commentaries,Behind the Scenes','2006-02-15 05:03:42'),(940,'VICTORY ACADEMY','A Insightful Epistle of a Mad Scientist And a Explorer who must Challenge a Cat in The Sahara Desert',2006,1,NULL,6,'0.99',64,'19.99','PG-13','Trailers,Behind the Scenes','2006-02-15 05:03:42'),(941,'VIDEOTAPE ARSENIC','A Lacklusture Display of a Girl And a Astronaut who must Succumb a Student in Australia',2006,1,NULL,4,'4.99',145,'10.99','NC-17','Commentaries,Deleted Scenes,Behind the Scenes','2006-02-15 05:03:42'),(942,'VIETNAM SMOOCHY','A Lacklusture Display of a Butler And a Man who must Sink a Explorer in Soviet Georgia',2006,1,NULL,7,'0.99',174,'27.99','PG-13','Deleted Scenes,Behind the Scenes','2006-02-15 05:03:42'),(943,'VILLAIN DESPERATE','A Boring Yarn of a Pioneer And a Feminist who must Redeem a Cat in An Abandoned Amusement Park',2006,1,NULL,4,'4.99',76,'27.99','PG-13','Trailers,Commentaries','2006-02-15 05:03:42'),(944,'VIRGIN DAISY','A Awe-Inspiring Documentary of a Robot And a Mad Scientist who must Reach a Database Administrator in A Shark Tank',2006,1,NULL,6,'4.99',179,'29.99','PG-13','Trailers,Behind the Scenes','2006-02-15 05:03:42'),(945,'VIRGINIAN PLUTO','A Emotional Panorama of a Dentist And a Crocodile who must Meet a Boy in Berlin',2006,1,NULL,5,'0.99',164,'22.99','R','Deleted Scenes','2006-02-15 05:03:42'),(946,'VIRTUAL SPOILERS','A Fateful Tale of a Database Administrator And a Squirrel who must Discover a Student in Soviet Georgia',2006,1,NULL,3,'4.99',144,'14.99','NC-17','Commentaries,Deleted Scenes','2006-02-15 05:03:42'),(947,'VISION TORQUE','A Thoughtful Documentary of a Dog And a Man who must Sink a Man in A Shark Tank',2006,1,NULL,5,'0.99',59,'16.99','PG-13','Commentaries,Deleted Scenes','2006-02-15 05:03:42'),(948,'VOICE PEACH','A Amazing Panorama of a Pioneer And a Student who must Overcome a Mad Scientist in A Manhattan Penthouse',2006,1,NULL,6,'0.99',139,'22.99','PG-13','Commentaries,Behind the Scenes','2006-02-15 05:03:42'),(949,'VOLCANO TEXAS','A Awe-Inspiring Yarn of a Hunter And a Feminist who must Challenge a Dentist in The Outback',2006,1,NULL,6,'0.99',157,'27.99','NC-17','Trailers,Commentaries,Deleted Scenes,Behind the Scenes','2006-02-15 05:03:42'),(950,'VOLUME HOUSE','A Boring Tale of a Dog And a Woman who must Meet a Dentist in California',2006,1,NULL,7,'4.99',132,'12.99','PG','Commentaries','2006-02-15 05:03:42'),(951,'VOYAGE LEGALLY','A Epic Tale of a Squirrel And a Hunter who must Conquer a Boy in An Abandoned Mine Shaft',2006,1,NULL,6,'0.99',78,'28.99','PG-13','Commentaries,Behind the Scenes','2006-02-15 05:03:42'),(952,'WAGON JAWS','A Intrepid Drama of a Moose And a Boat who must Kill a Explorer in A Manhattan Penthouse',2006,1,NULL,7,'2.99',152,'17.99','PG','Deleted Scenes,Behind the Scenes','2006-02-15 05:03:42'),(953,'WAIT CIDER','A Intrepid Epistle of a Woman And a Forensic Psychologist who must Succumb a Astronaut in A Manhattan Penthouse',2006,1,NULL,3,'0.99',112,'9.99','PG-13','Trailers','2006-02-15 05:03:42'),(954,'WAKE JAWS','A Beautiful Saga of a Feminist And a Composer who must Challenge a Moose in Berlin',2006,1,NULL,7,'4.99',73,'18.99','G','Trailers,Commentaries,Deleted Scenes,Behind the Scenes','2006-02-15 05:03:42'),(955,'WALLS ARTIST','A Insightful Panorama of a Teacher And a Teacher who must Overcome a Mad Cow in An Abandoned Fun House',2006,1,NULL,7,'4.99',135,'19.99','PG','Trailers,Behind the Scenes','2006-02-15 05:03:42'),(956,'WANDA CHAMBER','A Insightful Drama of a A Shark And a Pioneer who must Find a Womanizer in The Outback',2006,1,NULL,7,'4.99',107,'23.99','PG-13','Commentaries,Deleted Scenes,Behind the Scenes','2006-02-15 05:03:42'),(957,'WAR NOTTING','A Boring Drama of a Teacher And a Sumo Wrestler who must Challenge a Secret Agent in The Canadian Rockies',2006,1,NULL,7,'4.99',80,'26.99','G','Deleted Scenes,Behind the Scenes','2006-02-15 05:03:42'),(958,'WARDROBE PHANTOM','A Action-Packed Display of a Mad Cow And a Astronaut who must Kill a Car in Ancient India',2006,1,NULL,6,'2.99',178,'19.99','G','Trailers,Commentaries','2006-02-15 05:03:42'),(959,'WARLOCK WEREWOLF','A Astounding Yarn of a Pioneer And a Crocodile who must Defeat a A Shark in The Outback',2006,1,NULL,6,'2.99',83,'10.99','G','Commentaries,Behind the Scenes','2006-02-15 05:03:42'),(960,'WARS PLUTO','A Taut Reflection of a Teacher And a Database Administrator who must Chase a Madman in The Sahara Desert',2006,1,NULL,5,'2.99',128,'15.99','G','Commentaries,Behind the Scenes','2006-02-15 05:03:42'),(961,'WASH HEAVENLY','A Awe-Inspiring Reflection of a Cat And a Pioneer who must Escape a Hunter in Ancient China',2006,1,NULL,7,'4.99',161,'22.99','R','Commentaries','2006-02-15 05:03:42'),(962,'WASTELAND DIVINE','A Fanciful Story of a Database Administrator And a Womanizer who must Fight a Database Administrator in Ancient China',2006,1,NULL,7,'2.99',85,'18.99','PG','Trailers,Deleted Scenes,Behind the Scenes','2006-02-15 05:03:42'),(963,'WATCH TRACY','A Fast-Paced Yarn of a Dog And a Frisbee who must Conquer a Hunter in Nigeria',2006,1,NULL,5,'0.99',78,'12.99','PG','Trailers,Deleted Scenes,Behind the Scenes','2006-02-15 05:03:42'),(964,'WATERFRONT DELIVERANCE','A Unbelieveable Documentary of a Dentist And a Technical Writer who must Build a Womanizer in Nigeria',2006,1,NULL,4,'4.99',61,'17.99','G','Behind the Scenes','2006-02-15 05:03:42'),(965,'WATERSHIP FRONTIER','A Emotional Yarn of a Boat And a Crocodile who must Meet a Moose in Soviet Georgia',2006,1,NULL,6,'0.99',112,'28.99','G','Commentaries','2006-02-15 05:03:42'),(966,'WEDDING APOLLO','A Action-Packed Tale of a Student And a Waitress who must Conquer a Lumberjack in An Abandoned Mine Shaft',2006,1,NULL,3,'0.99',70,'14.99','PG','Trailers','2006-02-15 05:03:42'),(967,'WEEKEND PERSONAL','A Fast-Paced Documentary of a Car And a Butler who must Find a Frisbee in A Jet Boat',2006,1,NULL,5,'2.99',134,'26.99','R','Trailers,Commentaries,Deleted Scenes,Behind the Scenes','2006-02-15 05:03:42'),(968,'WEREWOLF LOLA','A Fanciful Story of a Man And a Sumo Wrestler who must Outrace a Student in A Monastery',2006,1,NULL,6,'4.99',79,'19.99','G','Trailers,Behind the Scenes','2006-02-15 05:03:42'),(969,'WEST LION','A Intrepid Drama of a Butler And a Lumberjack who must Challenge a Database Administrator in A Manhattan Penthouse',2006,1,NULL,4,'4.99',159,'29.99','G','Trailers','2006-02-15 05:03:42'),(970,'WESTWARD SEABISCUIT','A Lacklusture Tale of a Butler And a Husband who must Face a Boy in Ancient China',2006,1,NULL,7,'0.99',52,'11.99','NC-17','Commentaries,Deleted Scenes','2006-02-15 05:03:42'),(971,'WHALE BIKINI','A Intrepid Story of a Pastry Chef And a Database Administrator who must Kill a Feminist in A MySQL Convention',2006,1,NULL,4,'4.99',109,'11.99','PG-13','Commentaries,Deleted Scenes,Behind the Scenes','2006-02-15 05:03:42'),(972,'WHISPERER GIANT','A Intrepid Story of a Dentist And a Hunter who must Confront a Monkey in Ancient Japan',2006,1,NULL,4,'4.99',59,'24.99','PG-13','Trailers,Deleted Scenes','2006-02-15 05:03:42'),(973,'WIFE TURN','A Awe-Inspiring Epistle of a Teacher And a Feminist who must Confront a Pioneer in Ancient Japan',2006,1,NULL,3,'4.99',183,'27.99','NC-17','Deleted Scenes,Behind the Scenes','2006-02-15 05:03:42'),(974,'WILD APOLLO','A Beautiful Story of a Monkey And a Sumo Wrestler who must Conquer a A Shark in A MySQL Convention',2006,1,NULL,4,'0.99',181,'24.99','R','Trailers,Commentaries,Deleted Scenes,Behind the Scenes','2006-02-15 05:03:42'),(975,'WILLOW TRACY','A Brilliant Panorama of a Boat And a Astronaut who must Challenge a Teacher in A Manhattan Penthouse',2006,1,NULL,6,'2.99',137,'22.99','R','Trailers,Commentaries,Behind the Scenes','2006-02-15 05:03:42'),(976,'WIND PHANTOM','A Touching Saga of a Madman And a Forensic Psychologist who must Build a Sumo Wrestler in An Abandoned Mine Shaft',2006,1,NULL,6,'0.99',111,'12.99','R','Commentaries,Deleted Scenes','2006-02-15 05:03:42'),(977,'WINDOW SIDE','A Astounding Character Study of a Womanizer And a Hunter who must Escape a Robot in A Monastery',2006,1,NULL,3,'2.99',85,'25.99','R','Deleted Scenes,Behind the Scenes','2006-02-15 05:03:42'),(978,'WISDOM WORKER','A Unbelieveable Saga of a Forensic Psychologist And a Student who must Face a Squirrel in The First Manned Space Station',2006,1,NULL,3,'0.99',98,'12.99','R','Deleted Scenes,Behind the Scenes','2006-02-15 05:03:42'),(979,'WITCHES PANIC','A Awe-Inspiring Drama of a Secret Agent And a Hunter who must Fight a Moose in Nigeria',2006,1,NULL,6,'4.99',100,'10.99','NC-17','Commentaries,Behind the Scenes','2006-02-15 05:03:42'),(980,'WIZARD COLDBLOODED','A Lacklusture Display of a Robot And a Girl who must Defeat a Sumo Wrestler in A MySQL Convention',2006,1,NULL,4,'4.99',75,'12.99','PG','Commentaries,Deleted Scenes,Behind the Scenes','2006-02-15 05:03:42'),(981,'WOLVES DESIRE','A Fast-Paced Drama of a Squirrel And a Robot who must Succumb a Technical Writer in A Manhattan Penthouse',2006,1,NULL,7,'0.99',55,'13.99','NC-17','Behind the Scenes','2006-02-15 05:03:42'),(982,'WOMEN DORADO','A Insightful Documentary of a Waitress And a Butler who must Vanquish a Composer in Australia',2006,1,NULL,4,'0.99',126,'23.99','R','Deleted Scenes,Behind the Scenes','2006-02-15 05:03:42'),(983,'WON DARES','A Unbelieveable Documentary of a Teacher And a Monkey who must Defeat a Explorer in A U-Boat',2006,1,NULL,7,'2.99',105,'18.99','PG','Behind the Scenes','2006-02-15 05:03:42'),(984,'WONDERFUL DROP','A Boring Panorama of a Woman And a Madman who must Overcome a Butler in A U-Boat',2006,1,NULL,3,'2.99',126,'20.99','NC-17','Commentaries','2006-02-15 05:03:42'),(985,'WONDERLAND CHRISTMAS','A Awe-Inspiring Character Study of a Waitress And a Car who must Pursue a Mad Scientist in The First Manned Space Station',2006,1,NULL,4,'4.99',111,'19.99','PG','Commentaries','2006-02-15 05:03:42'),(986,'WONKA SEA','A Brilliant Saga of a Boat And a Mad Scientist who must Meet a Moose in Ancient India',2006,1,NULL,6,'2.99',85,'24.99','NC-17','Trailers,Commentaries','2006-02-15 05:03:42'),(987,'WORDS HUNTER','A Action-Packed Reflection of a Composer And a Mad Scientist who must Face a Pioneer in A MySQL Convention',2006,1,NULL,3,'2.99',116,'13.99','PG','Trailers,Commentaries,Deleted Scenes','2006-02-15 05:03:42'),(988,'WORKER TARZAN','A Action-Packed Yarn of a Secret Agent And a Technical Writer who must Battle a Sumo Wrestler in The First Manned Space Station',2006,1,NULL,7,'2.99',139,'26.99','R','Trailers,Commentaries,Behind the Scenes','2006-02-15 05:03:42'),(989,'WORKING MICROCOSMOS','A Stunning Epistle of a Dentist And a Dog who must Kill a Madman in Ancient China',2006,1,NULL,4,'4.99',74,'22.99','R','Commentaries,Deleted Scenes','2006-02-15 05:03:42'),(990,'WORLD LEATHERNECKS','A Unbelieveable Tale of a Pioneer And a Astronaut who must Overcome a Robot in An Abandoned Amusement Park',2006,1,NULL,3,'0.99',171,'13.99','PG-13','Trailers,Behind the Scenes','2006-02-15 05:03:42'),(991,'WORST BANGER','A Thrilling Drama of a Madman And a Dentist who must Conquer a Boy in The Outback',2006,1,NULL,4,'2.99',185,'26.99','PG','Deleted Scenes,Behind the Scenes','2006-02-15 05:03:42'),(992,'WRATH MILE','A Intrepid Reflection of a Technical Writer And a Hunter who must Defeat a Sumo Wrestler in A Monastery',2006,1,NULL,5,'0.99',176,'17.99','NC-17','Trailers,Commentaries','2006-02-15 05:03:42'),(993,'WRONG BEHAVIOR','A Emotional Saga of a Crocodile And a Sumo Wrestler who must Discover a Mad Cow in New Orleans',2006,1,NULL,6,'2.99',178,'10.99','PG-13','Trailers,Behind the Scenes','2006-02-15 05:03:42'),(994,'WYOMING STORM','A Awe-Inspiring Panorama of a Robot And a Boat who must Overcome a Feminist in A U-Boat',2006,1,NULL,6,'4.99',100,'29.99','PG-13','Deleted Scenes','2006-02-15 05:03:42'),(995,'YENTL IDAHO','A Amazing Display of a Robot And a Astronaut who must Fight a Womanizer in Berlin',2006,1,NULL,5,'4.99',86,'11.99','R','Trailers,Commentaries,Deleted Scenes','2006-02-15 05:03:42'),(996,'YOUNG LANGUAGE','A Unbelieveable Yarn of a Boat And a Database Administrator who must Meet a Boy in The First Manned Space Station',2006,1,NULL,6,'0.99',183,'9.99','G','Trailers,Behind the Scenes','2006-02-15 05:03:42'),(997,'YOUTH KICK','A Touching Drama of a Teacher And a Cat who must Challenge a Technical Writer in A U-Boat',2006,1,NULL,4,'0.99',179,'14.99','NC-17','Trailers,Behind the Scenes','2006-02-15 05:03:42'),(998,'ZHIVAGO CORE','A Fateful Yarn of a Composer And a Man who must Face a Boy in The Canadian Rockies',2006,1,NULL,6,'0.99',105,'10.99','NC-17','Deleted Scenes','2006-02-15 05:03:42'),(999,'ZOOLANDER FICTION','A Fateful Reflection of a Waitress And a Boat who must Discover a Sumo Wrestler in Ancient China',2006,1,NULL,5,'2.99',101,'28.99','R','Trailers,Deleted Scenes','2006-02-15 05:03:42'),(1000,'ZORRO ARK','A Intrepid Panorama of a Mad Scientist And a Boy who must Redeem a Boy in A Monastery',2006,1,NULL,3,'4.99',50,'18.99','NC-17','Trailers,Commentaries,Behind the Scenes','2006-02-15 05:03:42'); +COMMIT; + +-- +-- Dumping data for table film_actor +-- + +SET AUTOCOMMIT=0; +INSERT INTO film_actor VALUES (1,1,'2006-02-15 05:05:03'),(1,23,'2006-02-15 05:05:03'),(1,25,'2006-02-15 05:05:03'),(1,106,'2006-02-15 05:05:03'),(1,140,'2006-02-15 05:05:03'),(1,166,'2006-02-15 05:05:03'),(1,277,'2006-02-15 05:05:03'),(1,361,'2006-02-15 05:05:03'),(1,438,'2006-02-15 05:05:03'),(1,499,'2006-02-15 05:05:03'),(1,506,'2006-02-15 05:05:03'),(1,509,'2006-02-15 05:05:03'),(1,605,'2006-02-15 05:05:03'),(1,635,'2006-02-15 05:05:03'),(1,749,'2006-02-15 05:05:03'),(1,832,'2006-02-15 05:05:03'),(1,939,'2006-02-15 05:05:03'),(1,970,'2006-02-15 05:05:03'),(1,980,'2006-02-15 05:05:03'),(2,3,'2006-02-15 05:05:03'),(2,31,'2006-02-15 05:05:03'),(2,47,'2006-02-15 05:05:03'),(2,105,'2006-02-15 05:05:03'),(2,132,'2006-02-15 05:05:03'),(2,145,'2006-02-15 05:05:03'),(2,226,'2006-02-15 05:05:03'),(2,249,'2006-02-15 05:05:03'),(2,314,'2006-02-15 05:05:03'),(2,321,'2006-02-15 05:05:03'),(2,357,'2006-02-15 05:05:03'),(2,369,'2006-02-15 05:05:03'),(2,399,'2006-02-15 05:05:03'),(2,458,'2006-02-15 05:05:03'),(2,481,'2006-02-15 05:05:03'),(2,485,'2006-02-15 05:05:03'),(2,518,'2006-02-15 05:05:03'),(2,540,'2006-02-15 05:05:03'),(2,550,'2006-02-15 05:05:03'),(2,555,'2006-02-15 05:05:03'),(2,561,'2006-02-15 05:05:03'),(2,742,'2006-02-15 05:05:03'),(2,754,'2006-02-15 05:05:03'),(2,811,'2006-02-15 05:05:03'),(2,958,'2006-02-15 05:05:03'),(3,17,'2006-02-15 05:05:03'),(3,40,'2006-02-15 05:05:03'),(3,42,'2006-02-15 05:05:03'),(3,87,'2006-02-15 05:05:03'),(3,111,'2006-02-15 05:05:03'),(3,185,'2006-02-15 05:05:03'),(3,289,'2006-02-15 05:05:03'),(3,329,'2006-02-15 05:05:03'),(3,336,'2006-02-15 05:05:03'),(3,341,'2006-02-15 05:05:03'),(3,393,'2006-02-15 05:05:03'),(3,441,'2006-02-15 05:05:03'),(3,453,'2006-02-15 05:05:03'),(3,480,'2006-02-15 05:05:03'),(3,539,'2006-02-15 05:05:03'),(3,618,'2006-02-15 05:05:03'),(3,685,'2006-02-15 05:05:03'),(3,827,'2006-02-15 05:05:03'),(3,966,'2006-02-15 05:05:03'),(3,967,'2006-02-15 05:05:03'),(3,971,'2006-02-15 05:05:03'),(3,996,'2006-02-15 05:05:03'),(4,23,'2006-02-15 05:05:03'),(4,25,'2006-02-15 05:05:03'),(4,56,'2006-02-15 05:05:03'),(4,62,'2006-02-15 05:05:03'),(4,79,'2006-02-15 05:05:03'),(4,87,'2006-02-15 05:05:03'),(4,355,'2006-02-15 05:05:03'),(4,379,'2006-02-15 05:05:03'),(4,398,'2006-02-15 05:05:03'),(4,463,'2006-02-15 05:05:03'),(4,490,'2006-02-15 05:05:03'),(4,616,'2006-02-15 05:05:03'),(4,635,'2006-02-15 05:05:03'),(4,691,'2006-02-15 05:05:03'),(4,712,'2006-02-15 05:05:03'),(4,714,'2006-02-15 05:05:03'),(4,721,'2006-02-15 05:05:03'),(4,798,'2006-02-15 05:05:03'),(4,832,'2006-02-15 05:05:03'),(4,858,'2006-02-15 05:05:03'),(4,909,'2006-02-15 05:05:03'),(4,924,'2006-02-15 05:05:03'),(5,19,'2006-02-15 05:05:03'),(5,54,'2006-02-15 05:05:03'),(5,85,'2006-02-15 05:05:03'),(5,146,'2006-02-15 05:05:03'),(5,171,'2006-02-15 05:05:03'),(5,172,'2006-02-15 05:05:03'),(5,202,'2006-02-15 05:05:03'),(5,203,'2006-02-15 05:05:03'),(5,286,'2006-02-15 05:05:03'),(5,288,'2006-02-15 05:05:03'),(5,316,'2006-02-15 05:05:03'),(5,340,'2006-02-15 05:05:03'),(5,369,'2006-02-15 05:05:03'),(5,375,'2006-02-15 05:05:03'),(5,383,'2006-02-15 05:05:03'),(5,392,'2006-02-15 05:05:03'),(5,411,'2006-02-15 05:05:03'),(5,503,'2006-02-15 05:05:03'),(5,535,'2006-02-15 05:05:03'),(5,571,'2006-02-15 05:05:03'),(5,650,'2006-02-15 05:05:03'),(5,665,'2006-02-15 05:05:03'),(5,687,'2006-02-15 05:05:03'),(5,730,'2006-02-15 05:05:03'),(5,732,'2006-02-15 05:05:03'),(5,811,'2006-02-15 05:05:03'),(5,817,'2006-02-15 05:05:03'),(5,841,'2006-02-15 05:05:03'),(5,865,'2006-02-15 05:05:03'),(6,29,'2006-02-15 05:05:03'),(6,53,'2006-02-15 05:05:03'),(6,60,'2006-02-15 05:05:03'),(6,70,'2006-02-15 05:05:03'),(6,112,'2006-02-15 05:05:03'),(6,164,'2006-02-15 05:05:03'),(6,165,'2006-02-15 05:05:03'),(6,193,'2006-02-15 05:05:03'),(6,256,'2006-02-15 05:05:03'),(6,451,'2006-02-15 05:05:03'),(6,503,'2006-02-15 05:05:03'),(6,509,'2006-02-15 05:05:03'),(6,517,'2006-02-15 05:05:03'),(6,519,'2006-02-15 05:05:03'),(6,605,'2006-02-15 05:05:03'),(6,692,'2006-02-15 05:05:03'),(6,826,'2006-02-15 05:05:03'),(6,892,'2006-02-15 05:05:03'),(6,902,'2006-02-15 05:05:03'),(6,994,'2006-02-15 05:05:03'),(7,25,'2006-02-15 05:05:03'),(7,27,'2006-02-15 05:05:03'),(7,35,'2006-02-15 05:05:03'),(7,67,'2006-02-15 05:05:03'),(7,96,'2006-02-15 05:05:03'),(7,170,'2006-02-15 05:05:03'),(7,173,'2006-02-15 05:05:03'),(7,217,'2006-02-15 05:05:03'),(7,218,'2006-02-15 05:05:03'),(7,225,'2006-02-15 05:05:03'),(7,292,'2006-02-15 05:05:03'),(7,351,'2006-02-15 05:05:03'),(7,414,'2006-02-15 05:05:03'),(7,463,'2006-02-15 05:05:03'),(7,554,'2006-02-15 05:05:03'),(7,618,'2006-02-15 05:05:03'),(7,633,'2006-02-15 05:05:03'),(7,637,'2006-02-15 05:05:03'),(7,691,'2006-02-15 05:05:03'),(7,758,'2006-02-15 05:05:03'),(7,766,'2006-02-15 05:05:03'),(7,770,'2006-02-15 05:05:03'),(7,805,'2006-02-15 05:05:03'),(7,806,'2006-02-15 05:05:03'),(7,846,'2006-02-15 05:05:03'),(7,900,'2006-02-15 05:05:03'),(7,901,'2006-02-15 05:05:03'),(7,910,'2006-02-15 05:05:03'),(7,957,'2006-02-15 05:05:03'),(7,959,'2006-02-15 05:05:03'),(8,47,'2006-02-15 05:05:03'),(8,115,'2006-02-15 05:05:03'),(8,158,'2006-02-15 05:05:03'),(8,179,'2006-02-15 05:05:03'),(8,195,'2006-02-15 05:05:03'),(8,205,'2006-02-15 05:05:03'),(8,255,'2006-02-15 05:05:03'),(8,263,'2006-02-15 05:05:03'),(8,321,'2006-02-15 05:05:03'),(8,396,'2006-02-15 05:05:03'),(8,458,'2006-02-15 05:05:03'),(8,523,'2006-02-15 05:05:03'),(8,532,'2006-02-15 05:05:03'),(8,554,'2006-02-15 05:05:03'),(8,752,'2006-02-15 05:05:03'),(8,769,'2006-02-15 05:05:03'),(8,771,'2006-02-15 05:05:03'),(8,859,'2006-02-15 05:05:03'),(8,895,'2006-02-15 05:05:03'),(8,936,'2006-02-15 05:05:03'),(9,30,'2006-02-15 05:05:03'),(9,74,'2006-02-15 05:05:03'),(9,147,'2006-02-15 05:05:03'),(9,148,'2006-02-15 05:05:03'),(9,191,'2006-02-15 05:05:03'),(9,200,'2006-02-15 05:05:03'),(9,204,'2006-02-15 05:05:03'),(9,434,'2006-02-15 05:05:03'),(9,510,'2006-02-15 05:05:03'),(9,514,'2006-02-15 05:05:03'),(9,552,'2006-02-15 05:05:03'),(9,650,'2006-02-15 05:05:03'),(9,671,'2006-02-15 05:05:03'),(9,697,'2006-02-15 05:05:03'),(9,722,'2006-02-15 05:05:03'),(9,752,'2006-02-15 05:05:03'),(9,811,'2006-02-15 05:05:03'),(9,815,'2006-02-15 05:05:03'),(9,865,'2006-02-15 05:05:03'),(9,873,'2006-02-15 05:05:03'),(9,889,'2006-02-15 05:05:03'),(9,903,'2006-02-15 05:05:03'),(9,926,'2006-02-15 05:05:03'),(9,964,'2006-02-15 05:05:03'),(9,974,'2006-02-15 05:05:03'),(10,1,'2006-02-15 05:05:03'),(10,9,'2006-02-15 05:05:03'),(10,191,'2006-02-15 05:05:03'),(10,236,'2006-02-15 05:05:03'),(10,251,'2006-02-15 05:05:03'),(10,366,'2006-02-15 05:05:03'),(10,477,'2006-02-15 05:05:03'),(10,480,'2006-02-15 05:05:03'),(10,522,'2006-02-15 05:05:03'),(10,530,'2006-02-15 05:05:03'),(10,587,'2006-02-15 05:05:03'),(10,694,'2006-02-15 05:05:03'),(10,703,'2006-02-15 05:05:03'),(10,716,'2006-02-15 05:05:03'),(10,782,'2006-02-15 05:05:03'),(10,914,'2006-02-15 05:05:03'),(10,929,'2006-02-15 05:05:03'),(10,930,'2006-02-15 05:05:03'),(10,964,'2006-02-15 05:05:03'),(10,966,'2006-02-15 05:05:03'),(10,980,'2006-02-15 05:05:03'),(10,983,'2006-02-15 05:05:03'),(11,118,'2006-02-15 05:05:03'),(11,205,'2006-02-15 05:05:03'),(11,281,'2006-02-15 05:05:03'),(11,283,'2006-02-15 05:05:03'),(11,348,'2006-02-15 05:05:03'),(11,364,'2006-02-15 05:05:03'),(11,395,'2006-02-15 05:05:03'),(11,429,'2006-02-15 05:05:03'),(11,433,'2006-02-15 05:05:03'),(11,453,'2006-02-15 05:05:03'),(11,485,'2006-02-15 05:05:03'),(11,532,'2006-02-15 05:05:03'),(11,567,'2006-02-15 05:05:03'),(11,587,'2006-02-15 05:05:03'),(11,597,'2006-02-15 05:05:03'),(11,636,'2006-02-15 05:05:03'),(11,709,'2006-02-15 05:05:03'),(11,850,'2006-02-15 05:05:03'),(11,854,'2006-02-15 05:05:03'),(11,888,'2006-02-15 05:05:03'),(11,896,'2006-02-15 05:05:03'),(11,928,'2006-02-15 05:05:03'),(11,938,'2006-02-15 05:05:03'),(11,969,'2006-02-15 05:05:03'),(11,988,'2006-02-15 05:05:03'),(12,16,'2006-02-15 05:05:03'),(12,17,'2006-02-15 05:05:03'),(12,34,'2006-02-15 05:05:03'),(12,37,'2006-02-15 05:05:03'),(12,91,'2006-02-15 05:05:03'),(12,92,'2006-02-15 05:05:03'),(12,107,'2006-02-15 05:05:03'),(12,155,'2006-02-15 05:05:03'),(12,177,'2006-02-15 05:05:03'),(12,208,'2006-02-15 05:05:03'),(12,213,'2006-02-15 05:05:03'),(12,216,'2006-02-15 05:05:03'),(12,243,'2006-02-15 05:05:03'),(12,344,'2006-02-15 05:05:03'),(12,400,'2006-02-15 05:05:03'),(12,416,'2006-02-15 05:05:03'),(12,420,'2006-02-15 05:05:03'),(12,457,'2006-02-15 05:05:03'),(12,513,'2006-02-15 05:05:03'),(12,540,'2006-02-15 05:05:03'),(12,593,'2006-02-15 05:05:03'),(12,631,'2006-02-15 05:05:03'),(12,635,'2006-02-15 05:05:03'),(12,672,'2006-02-15 05:05:03'),(12,716,'2006-02-15 05:05:03'),(12,728,'2006-02-15 05:05:03'),(12,812,'2006-02-15 05:05:03'),(12,838,'2006-02-15 05:05:03'),(12,871,'2006-02-15 05:05:03'),(12,880,'2006-02-15 05:05:03'),(12,945,'2006-02-15 05:05:03'),(13,17,'2006-02-15 05:05:03'),(13,29,'2006-02-15 05:05:03'),(13,45,'2006-02-15 05:05:03'),(13,87,'2006-02-15 05:05:03'),(13,110,'2006-02-15 05:05:03'),(13,144,'2006-02-15 05:05:03'),(13,154,'2006-02-15 05:05:03'),(13,162,'2006-02-15 05:05:03'),(13,203,'2006-02-15 05:05:03'),(13,254,'2006-02-15 05:05:03'),(13,337,'2006-02-15 05:05:03'),(13,346,'2006-02-15 05:05:03'),(13,381,'2006-02-15 05:05:03'),(13,385,'2006-02-15 05:05:03'),(13,427,'2006-02-15 05:05:03'),(13,456,'2006-02-15 05:05:03'),(13,513,'2006-02-15 05:05:03'),(13,515,'2006-02-15 05:05:03'),(13,522,'2006-02-15 05:05:03'),(13,524,'2006-02-15 05:05:03'),(13,528,'2006-02-15 05:05:03'),(13,571,'2006-02-15 05:05:03'),(13,588,'2006-02-15 05:05:03'),(13,597,'2006-02-15 05:05:03'),(13,600,'2006-02-15 05:05:03'),(13,718,'2006-02-15 05:05:03'),(13,729,'2006-02-15 05:05:03'),(13,816,'2006-02-15 05:05:03'),(13,817,'2006-02-15 05:05:03'),(13,832,'2006-02-15 05:05:03'),(13,833,'2006-02-15 05:05:03'),(13,843,'2006-02-15 05:05:03'),(13,897,'2006-02-15 05:05:03'),(13,966,'2006-02-15 05:05:03'),(13,998,'2006-02-15 05:05:03'),(14,154,'2006-02-15 05:05:03'),(14,187,'2006-02-15 05:05:03'),(14,232,'2006-02-15 05:05:03'),(14,241,'2006-02-15 05:05:03'),(14,253,'2006-02-15 05:05:03'),(14,255,'2006-02-15 05:05:03'),(14,258,'2006-02-15 05:05:03'),(14,284,'2006-02-15 05:05:03'),(14,292,'2006-02-15 05:05:03'),(14,370,'2006-02-15 05:05:03'),(14,415,'2006-02-15 05:05:03'),(14,417,'2006-02-15 05:05:03'),(14,418,'2006-02-15 05:05:03'),(14,454,'2006-02-15 05:05:03'),(14,472,'2006-02-15 05:05:03'),(14,475,'2006-02-15 05:05:03'),(14,495,'2006-02-15 05:05:03'),(14,536,'2006-02-15 05:05:03'),(14,537,'2006-02-15 05:05:03'),(14,612,'2006-02-15 05:05:03'),(14,688,'2006-02-15 05:05:03'),(14,759,'2006-02-15 05:05:03'),(14,764,'2006-02-15 05:05:03'),(14,847,'2006-02-15 05:05:03'),(14,856,'2006-02-15 05:05:03'),(14,890,'2006-02-15 05:05:03'),(14,908,'2006-02-15 05:05:03'),(14,919,'2006-02-15 05:05:03'),(14,948,'2006-02-15 05:05:03'),(14,970,'2006-02-15 05:05:03'),(15,31,'2006-02-15 05:05:03'),(15,89,'2006-02-15 05:05:03'),(15,91,'2006-02-15 05:05:03'),(15,108,'2006-02-15 05:05:03'),(15,125,'2006-02-15 05:05:03'),(15,236,'2006-02-15 05:05:03'),(15,275,'2006-02-15 05:05:03'),(15,280,'2006-02-15 05:05:03'),(15,326,'2006-02-15 05:05:03'),(15,342,'2006-02-15 05:05:03'),(15,414,'2006-02-15 05:05:03'),(15,445,'2006-02-15 05:05:03'),(15,500,'2006-02-15 05:05:03'),(15,502,'2006-02-15 05:05:03'),(15,541,'2006-02-15 05:05:03'),(15,553,'2006-02-15 05:05:03'),(15,594,'2006-02-15 05:05:03'),(15,626,'2006-02-15 05:05:03'),(15,635,'2006-02-15 05:05:03'),(15,745,'2006-02-15 05:05:03'),(15,783,'2006-02-15 05:05:03'),(15,795,'2006-02-15 05:05:03'),(15,817,'2006-02-15 05:05:03'),(15,886,'2006-02-15 05:05:03'),(15,924,'2006-02-15 05:05:03'),(15,949,'2006-02-15 05:05:03'),(15,968,'2006-02-15 05:05:03'),(15,985,'2006-02-15 05:05:03'),(16,80,'2006-02-15 05:05:03'),(16,87,'2006-02-15 05:05:03'),(16,101,'2006-02-15 05:05:03'),(16,121,'2006-02-15 05:05:03'),(16,155,'2006-02-15 05:05:03'),(16,177,'2006-02-15 05:05:03'),(16,218,'2006-02-15 05:05:03'),(16,221,'2006-02-15 05:05:03'),(16,267,'2006-02-15 05:05:03'),(16,269,'2006-02-15 05:05:03'),(16,271,'2006-02-15 05:05:03'),(16,280,'2006-02-15 05:05:03'),(16,287,'2006-02-15 05:05:03'),(16,345,'2006-02-15 05:05:03'),(16,438,'2006-02-15 05:05:03'),(16,453,'2006-02-15 05:05:03'),(16,455,'2006-02-15 05:05:03'),(16,456,'2006-02-15 05:05:03'),(16,503,'2006-02-15 05:05:03'),(16,548,'2006-02-15 05:05:03'),(16,582,'2006-02-15 05:05:03'),(16,583,'2006-02-15 05:05:03'),(16,717,'2006-02-15 05:05:03'),(16,758,'2006-02-15 05:05:03'),(16,779,'2006-02-15 05:05:03'),(16,886,'2006-02-15 05:05:03'),(16,967,'2006-02-15 05:05:03'),(17,96,'2006-02-15 05:05:03'),(17,119,'2006-02-15 05:05:03'),(17,124,'2006-02-15 05:05:03'),(17,127,'2006-02-15 05:05:03'),(17,154,'2006-02-15 05:05:03'),(17,199,'2006-02-15 05:05:03'),(17,201,'2006-02-15 05:05:03'),(17,236,'2006-02-15 05:05:03'),(17,280,'2006-02-15 05:05:03'),(17,310,'2006-02-15 05:05:03'),(17,313,'2006-02-15 05:05:03'),(17,378,'2006-02-15 05:05:03'),(17,457,'2006-02-15 05:05:03'),(17,469,'2006-02-15 05:05:03'),(17,478,'2006-02-15 05:05:03'),(17,500,'2006-02-15 05:05:03'),(17,515,'2006-02-15 05:05:03'),(17,521,'2006-02-15 05:05:03'),(17,573,'2006-02-15 05:05:03'),(17,603,'2006-02-15 05:05:03'),(17,606,'2006-02-15 05:05:03'),(17,734,'2006-02-15 05:05:03'),(17,770,'2006-02-15 05:05:03'),(17,794,'2006-02-15 05:05:03'),(17,800,'2006-02-15 05:05:03'),(17,853,'2006-02-15 05:05:03'),(17,873,'2006-02-15 05:05:03'),(17,874,'2006-02-15 05:05:03'),(17,880,'2006-02-15 05:05:03'),(17,948,'2006-02-15 05:05:03'),(17,957,'2006-02-15 05:05:03'),(17,959,'2006-02-15 05:05:03'),(18,44,'2006-02-15 05:05:03'),(18,84,'2006-02-15 05:05:03'),(18,144,'2006-02-15 05:05:03'),(18,172,'2006-02-15 05:05:03'),(18,268,'2006-02-15 05:05:03'),(18,279,'2006-02-15 05:05:03'),(18,280,'2006-02-15 05:05:03'),(18,321,'2006-02-15 05:05:03'),(18,386,'2006-02-15 05:05:03'),(18,460,'2006-02-15 05:05:03'),(18,462,'2006-02-15 05:05:03'),(18,484,'2006-02-15 05:05:03'),(18,536,'2006-02-15 05:05:03'),(18,561,'2006-02-15 05:05:03'),(18,612,'2006-02-15 05:05:03'),(18,717,'2006-02-15 05:05:03'),(18,808,'2006-02-15 05:05:03'),(18,842,'2006-02-15 05:05:03'),(18,863,'2006-02-15 05:05:03'),(18,883,'2006-02-15 05:05:03'),(18,917,'2006-02-15 05:05:03'),(18,944,'2006-02-15 05:05:03'),(19,2,'2006-02-15 05:05:03'),(19,3,'2006-02-15 05:05:03'),(19,144,'2006-02-15 05:05:03'),(19,152,'2006-02-15 05:05:03'),(19,182,'2006-02-15 05:05:03'),(19,208,'2006-02-15 05:05:03'),(19,212,'2006-02-15 05:05:03'),(19,217,'2006-02-15 05:05:03'),(19,266,'2006-02-15 05:05:03'),(19,404,'2006-02-15 05:05:03'),(19,428,'2006-02-15 05:05:03'),(19,473,'2006-02-15 05:05:03'),(19,490,'2006-02-15 05:05:03'),(19,510,'2006-02-15 05:05:03'),(19,513,'2006-02-15 05:05:03'),(19,644,'2006-02-15 05:05:03'),(19,670,'2006-02-15 05:05:03'),(19,673,'2006-02-15 05:05:03'),(19,711,'2006-02-15 05:05:03'),(19,750,'2006-02-15 05:05:03'),(19,752,'2006-02-15 05:05:03'),(19,756,'2006-02-15 05:05:03'),(19,771,'2006-02-15 05:05:03'),(19,785,'2006-02-15 05:05:03'),(19,877,'2006-02-15 05:05:03'),(20,1,'2006-02-15 05:05:03'),(20,54,'2006-02-15 05:05:03'),(20,63,'2006-02-15 05:05:03'),(20,140,'2006-02-15 05:05:03'),(20,146,'2006-02-15 05:05:03'),(20,165,'2006-02-15 05:05:03'),(20,231,'2006-02-15 05:05:03'),(20,243,'2006-02-15 05:05:03'),(20,269,'2006-02-15 05:05:03'),(20,274,'2006-02-15 05:05:03'),(20,348,'2006-02-15 05:05:03'),(20,366,'2006-02-15 05:05:03'),(20,445,'2006-02-15 05:05:03'),(20,478,'2006-02-15 05:05:03'),(20,492,'2006-02-15 05:05:03'),(20,499,'2006-02-15 05:05:03'),(20,527,'2006-02-15 05:05:03'),(20,531,'2006-02-15 05:05:03'),(20,538,'2006-02-15 05:05:03'),(20,589,'2006-02-15 05:05:03'),(20,643,'2006-02-15 05:05:03'),(20,652,'2006-02-15 05:05:03'),(20,663,'2006-02-15 05:05:03'),(20,714,'2006-02-15 05:05:03'),(20,717,'2006-02-15 05:05:03'),(20,757,'2006-02-15 05:05:03'),(20,784,'2006-02-15 05:05:03'),(20,863,'2006-02-15 05:05:03'),(20,962,'2006-02-15 05:05:03'),(20,977,'2006-02-15 05:05:03'),(21,6,'2006-02-15 05:05:03'),(21,87,'2006-02-15 05:05:03'),(21,88,'2006-02-15 05:05:03'),(21,142,'2006-02-15 05:05:03'),(21,159,'2006-02-15 05:05:03'),(21,179,'2006-02-15 05:05:03'),(21,253,'2006-02-15 05:05:03'),(21,281,'2006-02-15 05:05:03'),(21,321,'2006-02-15 05:05:03'),(21,398,'2006-02-15 05:05:03'),(21,426,'2006-02-15 05:05:03'),(21,429,'2006-02-15 05:05:03'),(21,497,'2006-02-15 05:05:03'),(21,507,'2006-02-15 05:05:03'),(21,530,'2006-02-15 05:05:03'),(21,680,'2006-02-15 05:05:03'),(21,686,'2006-02-15 05:05:03'),(21,700,'2006-02-15 05:05:03'),(21,702,'2006-02-15 05:05:03'),(21,733,'2006-02-15 05:05:03'),(21,734,'2006-02-15 05:05:03'),(21,798,'2006-02-15 05:05:03'),(21,804,'2006-02-15 05:05:03'),(21,887,'2006-02-15 05:05:03'),(21,893,'2006-02-15 05:05:03'),(21,920,'2006-02-15 05:05:03'),(21,983,'2006-02-15 05:05:03'),(22,9,'2006-02-15 05:05:03'),(22,23,'2006-02-15 05:05:03'),(22,56,'2006-02-15 05:05:03'),(22,89,'2006-02-15 05:05:03'),(22,111,'2006-02-15 05:05:03'),(22,146,'2006-02-15 05:05:03'),(22,291,'2006-02-15 05:05:03'),(22,294,'2006-02-15 05:05:03'),(22,349,'2006-02-15 05:05:03'),(22,369,'2006-02-15 05:05:03'),(22,418,'2006-02-15 05:05:03'),(22,430,'2006-02-15 05:05:03'),(22,483,'2006-02-15 05:05:03'),(22,491,'2006-02-15 05:05:03'),(22,495,'2006-02-15 05:05:03'),(22,536,'2006-02-15 05:05:03'),(22,600,'2006-02-15 05:05:03'),(22,634,'2006-02-15 05:05:03'),(22,648,'2006-02-15 05:05:03'),(22,688,'2006-02-15 05:05:03'),(22,731,'2006-02-15 05:05:03'),(22,742,'2006-02-15 05:05:03'),(22,775,'2006-02-15 05:05:03'),(22,802,'2006-02-15 05:05:03'),(22,912,'2006-02-15 05:05:03'),(22,964,'2006-02-15 05:05:03'),(23,6,'2006-02-15 05:05:03'),(23,42,'2006-02-15 05:05:03'),(23,78,'2006-02-15 05:05:03'),(23,105,'2006-02-15 05:05:03'),(23,116,'2006-02-15 05:05:03'),(23,117,'2006-02-15 05:05:03'),(23,125,'2006-02-15 05:05:03'),(23,212,'2006-02-15 05:05:03'),(23,226,'2006-02-15 05:05:03'),(23,235,'2006-02-15 05:05:03'),(23,254,'2006-02-15 05:05:03'),(23,367,'2006-02-15 05:05:03'),(23,370,'2006-02-15 05:05:03'),(23,414,'2006-02-15 05:05:03'),(23,419,'2006-02-15 05:05:03'),(23,435,'2006-02-15 05:05:03'),(23,449,'2006-02-15 05:05:03'),(23,491,'2006-02-15 05:05:03'),(23,536,'2006-02-15 05:05:03'),(23,549,'2006-02-15 05:05:03'),(23,636,'2006-02-15 05:05:03'),(23,649,'2006-02-15 05:05:03'),(23,673,'2006-02-15 05:05:03'),(23,691,'2006-02-15 05:05:03'),(23,766,'2006-02-15 05:05:03'),(23,782,'2006-02-15 05:05:03'),(23,804,'2006-02-15 05:05:03'),(23,820,'2006-02-15 05:05:03'),(23,826,'2006-02-15 05:05:03'),(23,833,'2006-02-15 05:05:03'),(23,842,'2006-02-15 05:05:03'),(23,853,'2006-02-15 05:05:03'),(23,855,'2006-02-15 05:05:03'),(23,856,'2006-02-15 05:05:03'),(23,935,'2006-02-15 05:05:03'),(23,981,'2006-02-15 05:05:03'),(23,997,'2006-02-15 05:05:03'),(24,3,'2006-02-15 05:05:03'),(24,83,'2006-02-15 05:05:03'),(24,112,'2006-02-15 05:05:03'),(24,126,'2006-02-15 05:05:03'),(24,148,'2006-02-15 05:05:03'),(24,164,'2006-02-15 05:05:03'),(24,178,'2006-02-15 05:05:03'),(24,194,'2006-02-15 05:05:03'),(24,199,'2006-02-15 05:05:03'),(24,242,'2006-02-15 05:05:03'),(24,256,'2006-02-15 05:05:03'),(24,277,'2006-02-15 05:05:03'),(24,335,'2006-02-15 05:05:03'),(24,405,'2006-02-15 05:05:03'),(24,463,'2006-02-15 05:05:03'),(24,515,'2006-02-15 05:05:03'),(24,585,'2006-02-15 05:05:03'),(24,603,'2006-02-15 05:05:03'),(24,653,'2006-02-15 05:05:03'),(24,704,'2006-02-15 05:05:03'),(24,781,'2006-02-15 05:05:03'),(24,829,'2006-02-15 05:05:03'),(24,832,'2006-02-15 05:05:03'),(24,969,'2006-02-15 05:05:03'),(25,21,'2006-02-15 05:05:03'),(25,86,'2006-02-15 05:05:03'),(25,153,'2006-02-15 05:05:03'),(25,179,'2006-02-15 05:05:03'),(25,204,'2006-02-15 05:05:03'),(25,213,'2006-02-15 05:05:03'),(25,226,'2006-02-15 05:05:03'),(25,245,'2006-02-15 05:05:03'),(25,311,'2006-02-15 05:05:03'),(25,404,'2006-02-15 05:05:03'),(25,411,'2006-02-15 05:05:03'),(25,420,'2006-02-15 05:05:03'),(25,538,'2006-02-15 05:05:03'),(25,564,'2006-02-15 05:05:03'),(25,583,'2006-02-15 05:05:03'),(25,606,'2006-02-15 05:05:03'),(25,688,'2006-02-15 05:05:03'),(25,697,'2006-02-15 05:05:03'),(25,755,'2006-02-15 05:05:03'),(25,871,'2006-02-15 05:05:03'),(25,914,'2006-02-15 05:05:03'),(26,9,'2006-02-15 05:05:03'),(26,21,'2006-02-15 05:05:03'),(26,34,'2006-02-15 05:05:03'),(26,90,'2006-02-15 05:05:03'),(26,93,'2006-02-15 05:05:03'),(26,103,'2006-02-15 05:05:03'),(26,147,'2006-02-15 05:05:03'),(26,186,'2006-02-15 05:05:03'),(26,201,'2006-02-15 05:05:03'),(26,225,'2006-02-15 05:05:03'),(26,241,'2006-02-15 05:05:03'),(26,327,'2006-02-15 05:05:03'),(26,329,'2006-02-15 05:05:03'),(26,340,'2006-02-15 05:05:03'),(26,345,'2006-02-15 05:05:03'),(26,390,'2006-02-15 05:05:03'),(26,392,'2006-02-15 05:05:03'),(26,529,'2006-02-15 05:05:03'),(26,544,'2006-02-15 05:05:03'),(26,564,'2006-02-15 05:05:03'),(26,635,'2006-02-15 05:05:03'),(26,644,'2006-02-15 05:05:03'),(26,682,'2006-02-15 05:05:03'),(26,688,'2006-02-15 05:05:03'),(26,715,'2006-02-15 05:05:03'),(26,732,'2006-02-15 05:05:03'),(26,758,'2006-02-15 05:05:03'),(26,764,'2006-02-15 05:05:03'),(26,795,'2006-02-15 05:05:03'),(26,821,'2006-02-15 05:05:03'),(26,885,'2006-02-15 05:05:03'),(26,904,'2006-02-15 05:05:03'),(26,906,'2006-02-15 05:05:03'),(27,19,'2006-02-15 05:05:03'),(27,34,'2006-02-15 05:05:03'),(27,85,'2006-02-15 05:05:03'),(27,150,'2006-02-15 05:05:03'),(27,172,'2006-02-15 05:05:03'),(27,273,'2006-02-15 05:05:03'),(27,334,'2006-02-15 05:05:03'),(27,347,'2006-02-15 05:05:03'),(27,359,'2006-02-15 05:05:03'),(27,398,'2006-02-15 05:05:03'),(27,415,'2006-02-15 05:05:03'),(27,462,'2006-02-15 05:05:03'),(27,477,'2006-02-15 05:05:03'),(27,500,'2006-02-15 05:05:03'),(27,503,'2006-02-15 05:05:03'),(27,540,'2006-02-15 05:05:03'),(27,586,'2006-02-15 05:05:03'),(27,593,'2006-02-15 05:05:03'),(27,637,'2006-02-15 05:05:03'),(27,679,'2006-02-15 05:05:03'),(27,682,'2006-02-15 05:05:03'),(27,695,'2006-02-15 05:05:03'),(27,771,'2006-02-15 05:05:03'),(27,805,'2006-02-15 05:05:03'),(27,830,'2006-02-15 05:05:03'),(27,854,'2006-02-15 05:05:03'),(27,873,'2006-02-15 05:05:03'),(27,880,'2006-02-15 05:05:03'),(27,889,'2006-02-15 05:05:03'),(27,904,'2006-02-15 05:05:03'),(27,967,'2006-02-15 05:05:03'),(27,986,'2006-02-15 05:05:03'),(27,996,'2006-02-15 05:05:03'),(28,14,'2006-02-15 05:05:03'),(28,43,'2006-02-15 05:05:03'),(28,58,'2006-02-15 05:05:03'),(28,74,'2006-02-15 05:05:03'),(28,96,'2006-02-15 05:05:03'),(28,107,'2006-02-15 05:05:03'),(28,259,'2006-02-15 05:05:03'),(28,263,'2006-02-15 05:05:03'),(28,287,'2006-02-15 05:05:03'),(28,358,'2006-02-15 05:05:03'),(28,502,'2006-02-15 05:05:03'),(28,508,'2006-02-15 05:05:03'),(28,532,'2006-02-15 05:05:03'),(28,551,'2006-02-15 05:05:03'),(28,574,'2006-02-15 05:05:03'),(28,597,'2006-02-15 05:05:03'),(28,619,'2006-02-15 05:05:03'),(28,625,'2006-02-15 05:05:03'),(28,652,'2006-02-15 05:05:03'),(28,679,'2006-02-15 05:05:03'),(28,743,'2006-02-15 05:05:03'),(28,790,'2006-02-15 05:05:03'),(28,793,'2006-02-15 05:05:03'),(28,816,'2006-02-15 05:05:03'),(28,827,'2006-02-15 05:05:03'),(28,835,'2006-02-15 05:05:03'),(28,879,'2006-02-15 05:05:03'),(28,908,'2006-02-15 05:05:03'),(28,953,'2006-02-15 05:05:03'),(28,973,'2006-02-15 05:05:03'),(28,994,'2006-02-15 05:05:03'),(29,10,'2006-02-15 05:05:03'),(29,79,'2006-02-15 05:05:03'),(29,105,'2006-02-15 05:05:03'),(29,110,'2006-02-15 05:05:03'),(29,131,'2006-02-15 05:05:03'),(29,133,'2006-02-15 05:05:03'),(29,172,'2006-02-15 05:05:03'),(29,226,'2006-02-15 05:05:03'),(29,273,'2006-02-15 05:05:03'),(29,282,'2006-02-15 05:05:03'),(29,296,'2006-02-15 05:05:03'),(29,311,'2006-02-15 05:05:03'),(29,335,'2006-02-15 05:05:03'),(29,342,'2006-02-15 05:05:03'),(29,436,'2006-02-15 05:05:03'),(29,444,'2006-02-15 05:05:03'),(29,449,'2006-02-15 05:05:03'),(29,462,'2006-02-15 05:05:03'),(29,482,'2006-02-15 05:05:03'),(29,488,'2006-02-15 05:05:03'),(29,519,'2006-02-15 05:05:03'),(29,547,'2006-02-15 05:05:03'),(29,590,'2006-02-15 05:05:03'),(29,646,'2006-02-15 05:05:03'),(29,723,'2006-02-15 05:05:03'),(29,812,'2006-02-15 05:05:03'),(29,862,'2006-02-15 05:05:03'),(29,928,'2006-02-15 05:05:03'),(29,944,'2006-02-15 05:05:03'),(30,1,'2006-02-15 05:05:03'),(30,53,'2006-02-15 05:05:03'),(30,64,'2006-02-15 05:05:03'),(30,69,'2006-02-15 05:05:03'),(30,77,'2006-02-15 05:05:03'),(30,87,'2006-02-15 05:05:03'),(30,260,'2006-02-15 05:05:03'),(30,262,'2006-02-15 05:05:03'),(30,286,'2006-02-15 05:05:03'),(30,292,'2006-02-15 05:05:03'),(30,301,'2006-02-15 05:05:03'),(30,318,'2006-02-15 05:05:03'),(30,321,'2006-02-15 05:05:03'),(30,357,'2006-02-15 05:05:03'),(30,565,'2006-02-15 05:05:03'),(30,732,'2006-02-15 05:05:03'),(30,797,'2006-02-15 05:05:03'),(30,838,'2006-02-15 05:05:03'),(30,945,'2006-02-15 05:05:03'),(31,88,'2006-02-15 05:05:03'),(31,146,'2006-02-15 05:05:03'),(31,163,'2006-02-15 05:05:03'),(31,164,'2006-02-15 05:05:03'),(31,188,'2006-02-15 05:05:03'),(31,299,'2006-02-15 05:05:03'),(31,308,'2006-02-15 05:05:03'),(31,368,'2006-02-15 05:05:03'),(31,380,'2006-02-15 05:05:03'),(31,431,'2006-02-15 05:05:03'),(31,585,'2006-02-15 05:05:03'),(31,637,'2006-02-15 05:05:03'),(31,700,'2006-02-15 05:05:03'),(31,739,'2006-02-15 05:05:03'),(31,793,'2006-02-15 05:05:03'),(31,802,'2006-02-15 05:05:03'),(31,880,'2006-02-15 05:05:03'),(31,978,'2006-02-15 05:05:03'),(32,65,'2006-02-15 05:05:03'),(32,84,'2006-02-15 05:05:03'),(32,103,'2006-02-15 05:05:03'),(32,112,'2006-02-15 05:05:03'),(32,136,'2006-02-15 05:05:03'),(32,197,'2006-02-15 05:05:03'),(32,199,'2006-02-15 05:05:03'),(32,219,'2006-02-15 05:05:03'),(32,309,'2006-02-15 05:05:03'),(32,312,'2006-02-15 05:05:03'),(32,401,'2006-02-15 05:05:03'),(32,427,'2006-02-15 05:05:03'),(32,431,'2006-02-15 05:05:03'),(32,523,'2006-02-15 05:05:03'),(32,567,'2006-02-15 05:05:03'),(32,585,'2006-02-15 05:05:03'),(32,606,'2006-02-15 05:05:03'),(32,651,'2006-02-15 05:05:03'),(32,667,'2006-02-15 05:05:03'),(32,669,'2006-02-15 05:05:03'),(32,815,'2006-02-15 05:05:03'),(32,928,'2006-02-15 05:05:03'),(32,980,'2006-02-15 05:05:03'),(33,56,'2006-02-15 05:05:03'),(33,112,'2006-02-15 05:05:03'),(33,135,'2006-02-15 05:05:03'),(33,154,'2006-02-15 05:05:03'),(33,214,'2006-02-15 05:05:03'),(33,252,'2006-02-15 05:05:03'),(33,305,'2006-02-15 05:05:03'),(33,306,'2006-02-15 05:05:03'),(33,473,'2006-02-15 05:05:03'),(33,489,'2006-02-15 05:05:03'),(33,574,'2006-02-15 05:05:03'),(33,618,'2006-02-15 05:05:03'),(33,667,'2006-02-15 05:05:03'),(33,694,'2006-02-15 05:05:03'),(33,712,'2006-02-15 05:05:03'),(33,735,'2006-02-15 05:05:03'),(33,737,'2006-02-15 05:05:03'),(33,754,'2006-02-15 05:05:03'),(33,775,'2006-02-15 05:05:03'),(33,878,'2006-02-15 05:05:03'),(33,881,'2006-02-15 05:05:03'),(33,965,'2006-02-15 05:05:03'),(33,972,'2006-02-15 05:05:03'),(33,993,'2006-02-15 05:05:03'),(34,43,'2006-02-15 05:05:03'),(34,90,'2006-02-15 05:05:03'),(34,119,'2006-02-15 05:05:03'),(34,125,'2006-02-15 05:05:03'),(34,172,'2006-02-15 05:05:03'),(34,182,'2006-02-15 05:05:03'),(34,244,'2006-02-15 05:05:03'),(34,336,'2006-02-15 05:05:03'),(34,389,'2006-02-15 05:05:03'),(34,393,'2006-02-15 05:05:03'),(34,438,'2006-02-15 05:05:03'),(34,493,'2006-02-15 05:05:03'),(34,502,'2006-02-15 05:05:03'),(34,525,'2006-02-15 05:05:03'),(34,668,'2006-02-15 05:05:03'),(34,720,'2006-02-15 05:05:03'),(34,779,'2006-02-15 05:05:03'),(34,788,'2006-02-15 05:05:03'),(34,794,'2006-02-15 05:05:03'),(34,836,'2006-02-15 05:05:03'),(34,846,'2006-02-15 05:05:03'),(34,853,'2006-02-15 05:05:03'),(34,929,'2006-02-15 05:05:03'),(34,950,'2006-02-15 05:05:03'),(34,971,'2006-02-15 05:05:03'),(35,10,'2006-02-15 05:05:03'),(35,35,'2006-02-15 05:05:03'),(35,52,'2006-02-15 05:05:03'),(35,201,'2006-02-15 05:05:03'),(35,256,'2006-02-15 05:05:03'),(35,389,'2006-02-15 05:05:03'),(35,589,'2006-02-15 05:05:03'),(35,612,'2006-02-15 05:05:03'),(35,615,'2006-02-15 05:05:03'),(35,707,'2006-02-15 05:05:03'),(35,732,'2006-02-15 05:05:03'),(35,738,'2006-02-15 05:05:03'),(35,748,'2006-02-15 05:05:03'),(35,817,'2006-02-15 05:05:03'),(35,914,'2006-02-15 05:05:03'),(36,15,'2006-02-15 05:05:03'),(36,81,'2006-02-15 05:05:03'),(36,171,'2006-02-15 05:05:03'),(36,231,'2006-02-15 05:05:03'),(36,245,'2006-02-15 05:05:03'),(36,283,'2006-02-15 05:05:03'),(36,380,'2006-02-15 05:05:03'),(36,381,'2006-02-15 05:05:03'),(36,387,'2006-02-15 05:05:03'),(36,390,'2006-02-15 05:05:03'),(36,410,'2006-02-15 05:05:03'),(36,426,'2006-02-15 05:05:03'),(36,427,'2006-02-15 05:05:03'),(36,453,'2006-02-15 05:05:03'),(36,466,'2006-02-15 05:05:03'),(36,484,'2006-02-15 05:05:03'),(36,493,'2006-02-15 05:05:03'),(36,499,'2006-02-15 05:05:03'),(36,569,'2006-02-15 05:05:03'),(36,590,'2006-02-15 05:05:03'),(36,600,'2006-02-15 05:05:03'),(36,714,'2006-02-15 05:05:03'),(36,715,'2006-02-15 05:05:03'),(36,716,'2006-02-15 05:05:03'),(36,731,'2006-02-15 05:05:03'),(36,875,'2006-02-15 05:05:03'),(36,915,'2006-02-15 05:05:03'),(36,931,'2006-02-15 05:05:03'),(36,956,'2006-02-15 05:05:03'),(37,10,'2006-02-15 05:05:03'),(37,12,'2006-02-15 05:05:03'),(37,19,'2006-02-15 05:05:03'),(37,118,'2006-02-15 05:05:03'),(37,119,'2006-02-15 05:05:03'),(37,122,'2006-02-15 05:05:03'),(37,146,'2006-02-15 05:05:03'),(37,204,'2006-02-15 05:05:03'),(37,253,'2006-02-15 05:05:03'),(37,260,'2006-02-15 05:05:03'),(37,277,'2006-02-15 05:05:03'),(37,317,'2006-02-15 05:05:03'),(37,467,'2006-02-15 05:05:03'),(37,477,'2006-02-15 05:05:03'),(37,485,'2006-02-15 05:05:03'),(37,508,'2006-02-15 05:05:03'),(37,529,'2006-02-15 05:05:03'),(37,553,'2006-02-15 05:05:03'),(37,555,'2006-02-15 05:05:03'),(37,572,'2006-02-15 05:05:03'),(37,588,'2006-02-15 05:05:03'),(37,662,'2006-02-15 05:05:03'),(37,663,'2006-02-15 05:05:03'),(37,694,'2006-02-15 05:05:03'),(37,697,'2006-02-15 05:05:03'),(37,785,'2006-02-15 05:05:03'),(37,839,'2006-02-15 05:05:03'),(37,840,'2006-02-15 05:05:03'),(37,853,'2006-02-15 05:05:03'),(37,900,'2006-02-15 05:05:03'),(37,925,'2006-02-15 05:05:03'),(37,963,'2006-02-15 05:05:03'),(37,966,'2006-02-15 05:05:03'),(37,989,'2006-02-15 05:05:03'),(37,997,'2006-02-15 05:05:03'),(38,24,'2006-02-15 05:05:03'),(38,111,'2006-02-15 05:05:03'),(38,160,'2006-02-15 05:05:03'),(38,176,'2006-02-15 05:05:03'),(38,223,'2006-02-15 05:05:03'),(38,241,'2006-02-15 05:05:03'),(38,274,'2006-02-15 05:05:03'),(38,335,'2006-02-15 05:05:03'),(38,338,'2006-02-15 05:05:03'),(38,353,'2006-02-15 05:05:03'),(38,448,'2006-02-15 05:05:03'),(38,450,'2006-02-15 05:05:03'),(38,458,'2006-02-15 05:05:03'),(38,501,'2006-02-15 05:05:03'),(38,516,'2006-02-15 05:05:03'),(38,547,'2006-02-15 05:05:03'),(38,583,'2006-02-15 05:05:03'),(38,618,'2006-02-15 05:05:03'),(38,619,'2006-02-15 05:05:03'),(38,705,'2006-02-15 05:05:03'),(38,793,'2006-02-15 05:05:03'),(38,827,'2006-02-15 05:05:03'),(38,839,'2006-02-15 05:05:03'),(38,853,'2006-02-15 05:05:03'),(38,876,'2006-02-15 05:05:03'),(39,71,'2006-02-15 05:05:03'),(39,73,'2006-02-15 05:05:03'),(39,168,'2006-02-15 05:05:03'),(39,203,'2006-02-15 05:05:03'),(39,222,'2006-02-15 05:05:03'),(39,290,'2006-02-15 05:05:03'),(39,293,'2006-02-15 05:05:03'),(39,320,'2006-02-15 05:05:03'),(39,415,'2006-02-15 05:05:03'),(39,425,'2006-02-15 05:05:03'),(39,431,'2006-02-15 05:05:03'),(39,456,'2006-02-15 05:05:03'),(39,476,'2006-02-15 05:05:03'),(39,559,'2006-02-15 05:05:03'),(39,587,'2006-02-15 05:05:03'),(39,598,'2006-02-15 05:05:03'),(39,606,'2006-02-15 05:05:03'),(39,648,'2006-02-15 05:05:03'),(39,683,'2006-02-15 05:05:03'),(39,689,'2006-02-15 05:05:03'),(39,696,'2006-02-15 05:05:03'),(39,700,'2006-02-15 05:05:03'),(39,703,'2006-02-15 05:05:03'),(39,736,'2006-02-15 05:05:03'),(39,772,'2006-02-15 05:05:03'),(39,815,'2006-02-15 05:05:03'),(39,831,'2006-02-15 05:05:03'),(39,920,'2006-02-15 05:05:03'),(40,1,'2006-02-15 05:05:03'),(40,11,'2006-02-15 05:05:03'),(40,34,'2006-02-15 05:05:03'),(40,107,'2006-02-15 05:05:03'),(40,128,'2006-02-15 05:05:03'),(40,163,'2006-02-15 05:05:03'),(40,177,'2006-02-15 05:05:03'),(40,223,'2006-02-15 05:05:03'),(40,233,'2006-02-15 05:05:03'),(40,326,'2006-02-15 05:05:03'),(40,374,'2006-02-15 05:05:03'),(40,394,'2006-02-15 05:05:03'),(40,396,'2006-02-15 05:05:03'),(40,463,'2006-02-15 05:05:03'),(40,466,'2006-02-15 05:05:03'),(40,494,'2006-02-15 05:05:03'),(40,521,'2006-02-15 05:05:03'),(40,723,'2006-02-15 05:05:03'),(40,737,'2006-02-15 05:05:03'),(40,744,'2006-02-15 05:05:03'),(40,747,'2006-02-15 05:05:03'),(40,754,'2006-02-15 05:05:03'),(40,799,'2006-02-15 05:05:03'),(40,835,'2006-02-15 05:05:03'),(40,868,'2006-02-15 05:05:03'),(40,869,'2006-02-15 05:05:03'),(40,887,'2006-02-15 05:05:03'),(40,933,'2006-02-15 05:05:03'),(40,938,'2006-02-15 05:05:03'),(41,4,'2006-02-15 05:05:03'),(41,60,'2006-02-15 05:05:03'),(41,69,'2006-02-15 05:05:03'),(41,86,'2006-02-15 05:05:03'),(41,100,'2006-02-15 05:05:03'),(41,150,'2006-02-15 05:05:03'),(41,159,'2006-02-15 05:05:03'),(41,194,'2006-02-15 05:05:03'),(41,203,'2006-02-15 05:05:03'),(41,212,'2006-02-15 05:05:03'),(41,230,'2006-02-15 05:05:03'),(41,249,'2006-02-15 05:05:03'),(41,252,'2006-02-15 05:05:03'),(41,305,'2006-02-15 05:05:03'),(41,336,'2006-02-15 05:05:03'),(41,383,'2006-02-15 05:05:03'),(41,544,'2006-02-15 05:05:03'),(41,596,'2006-02-15 05:05:03'),(41,657,'2006-02-15 05:05:03'),(41,674,'2006-02-15 05:05:03'),(41,678,'2006-02-15 05:05:03'),(41,721,'2006-02-15 05:05:03'),(41,724,'2006-02-15 05:05:03'),(41,779,'2006-02-15 05:05:03'),(41,784,'2006-02-15 05:05:03'),(41,799,'2006-02-15 05:05:03'),(41,894,'2006-02-15 05:05:03'),(41,912,'2006-02-15 05:05:03'),(41,942,'2006-02-15 05:05:03'),(42,24,'2006-02-15 05:05:03'),(42,139,'2006-02-15 05:05:03'),(42,309,'2006-02-15 05:05:03'),(42,320,'2006-02-15 05:05:03'),(42,333,'2006-02-15 05:05:03'),(42,500,'2006-02-15 05:05:03'),(42,502,'2006-02-15 05:05:03'),(42,505,'2006-02-15 05:05:03'),(42,527,'2006-02-15 05:05:03'),(42,535,'2006-02-15 05:05:03'),(42,546,'2006-02-15 05:05:03'),(42,568,'2006-02-15 05:05:03'),(42,648,'2006-02-15 05:05:03'),(42,665,'2006-02-15 05:05:03'),(42,673,'2006-02-15 05:05:03'),(42,687,'2006-02-15 05:05:03'),(42,713,'2006-02-15 05:05:03'),(42,738,'2006-02-15 05:05:03'),(42,798,'2006-02-15 05:05:03'),(42,861,'2006-02-15 05:05:03'),(42,865,'2006-02-15 05:05:03'),(42,867,'2006-02-15 05:05:03'),(42,876,'2006-02-15 05:05:03'),(42,890,'2006-02-15 05:05:03'),(42,907,'2006-02-15 05:05:03'),(42,922,'2006-02-15 05:05:03'),(42,932,'2006-02-15 05:05:03'),(43,19,'2006-02-15 05:05:03'),(43,42,'2006-02-15 05:05:03'),(43,56,'2006-02-15 05:05:03'),(43,89,'2006-02-15 05:05:03'),(43,105,'2006-02-15 05:05:03'),(43,147,'2006-02-15 05:05:03'),(43,161,'2006-02-15 05:05:03'),(43,180,'2006-02-15 05:05:03'),(43,239,'2006-02-15 05:05:03'),(43,276,'2006-02-15 05:05:03'),(43,330,'2006-02-15 05:05:03'),(43,344,'2006-02-15 05:05:03'),(43,359,'2006-02-15 05:05:03'),(43,377,'2006-02-15 05:05:03'),(43,410,'2006-02-15 05:05:03'),(43,462,'2006-02-15 05:05:03'),(43,533,'2006-02-15 05:05:03'),(43,598,'2006-02-15 05:05:03'),(43,605,'2006-02-15 05:05:03'),(43,608,'2006-02-15 05:05:03'),(43,621,'2006-02-15 05:05:03'),(43,753,'2006-02-15 05:05:03'),(43,827,'2006-02-15 05:05:03'),(43,833,'2006-02-15 05:05:03'),(43,917,'2006-02-15 05:05:03'),(43,958,'2006-02-15 05:05:03'),(44,58,'2006-02-15 05:05:03'),(44,84,'2006-02-15 05:05:03'),(44,88,'2006-02-15 05:05:03'),(44,94,'2006-02-15 05:05:03'),(44,109,'2006-02-15 05:05:03'),(44,176,'2006-02-15 05:05:03'),(44,242,'2006-02-15 05:05:03'),(44,273,'2006-02-15 05:05:03'),(44,322,'2006-02-15 05:05:03'),(44,420,'2006-02-15 05:05:03'),(44,434,'2006-02-15 05:05:03'),(44,490,'2006-02-15 05:05:03'),(44,591,'2006-02-15 05:05:03'),(44,598,'2006-02-15 05:05:03'),(44,604,'2006-02-15 05:05:03'),(44,699,'2006-02-15 05:05:03'),(44,751,'2006-02-15 05:05:03'),(44,784,'2006-02-15 05:05:03'),(44,825,'2006-02-15 05:05:03'),(44,854,'2006-02-15 05:05:03'),(44,875,'2006-02-15 05:05:03'),(44,878,'2006-02-15 05:05:03'),(44,883,'2006-02-15 05:05:03'),(44,896,'2006-02-15 05:05:03'),(44,902,'2006-02-15 05:05:03'),(44,937,'2006-02-15 05:05:03'),(44,944,'2006-02-15 05:05:03'),(44,952,'2006-02-15 05:05:03'),(44,982,'2006-02-15 05:05:03'),(44,998,'2006-02-15 05:05:03'),(45,18,'2006-02-15 05:05:03'),(45,65,'2006-02-15 05:05:03'),(45,66,'2006-02-15 05:05:03'),(45,115,'2006-02-15 05:05:03'),(45,117,'2006-02-15 05:05:03'),(45,164,'2006-02-15 05:05:03'),(45,187,'2006-02-15 05:05:03'),(45,198,'2006-02-15 05:05:03'),(45,219,'2006-02-15 05:05:03'),(45,330,'2006-02-15 05:05:03'),(45,407,'2006-02-15 05:05:03'),(45,416,'2006-02-15 05:05:03'),(45,463,'2006-02-15 05:05:03'),(45,467,'2006-02-15 05:05:03'),(45,484,'2006-02-15 05:05:03'),(45,502,'2006-02-15 05:05:03'),(45,503,'2006-02-15 05:05:03'),(45,508,'2006-02-15 05:05:03'),(45,537,'2006-02-15 05:05:03'),(45,680,'2006-02-15 05:05:03'),(45,714,'2006-02-15 05:05:03'),(45,767,'2006-02-15 05:05:03'),(45,778,'2006-02-15 05:05:03'),(45,797,'2006-02-15 05:05:03'),(45,810,'2006-02-15 05:05:03'),(45,895,'2006-02-15 05:05:03'),(45,900,'2006-02-15 05:05:03'),(45,901,'2006-02-15 05:05:03'),(45,920,'2006-02-15 05:05:03'),(45,925,'2006-02-15 05:05:03'),(45,975,'2006-02-15 05:05:03'),(45,978,'2006-02-15 05:05:03'),(46,38,'2006-02-15 05:05:03'),(46,51,'2006-02-15 05:05:03'),(46,174,'2006-02-15 05:05:03'),(46,254,'2006-02-15 05:05:03'),(46,296,'2006-02-15 05:05:03'),(46,319,'2006-02-15 05:05:03'),(46,407,'2006-02-15 05:05:03'),(46,448,'2006-02-15 05:05:03'),(46,456,'2006-02-15 05:05:03'),(46,463,'2006-02-15 05:05:03'),(46,478,'2006-02-15 05:05:03'),(46,538,'2006-02-15 05:05:03'),(46,540,'2006-02-15 05:05:03'),(46,567,'2006-02-15 05:05:03'),(46,731,'2006-02-15 05:05:03'),(46,766,'2006-02-15 05:05:03'),(46,768,'2006-02-15 05:05:03'),(46,820,'2006-02-15 05:05:03'),(46,829,'2006-02-15 05:05:03'),(46,830,'2006-02-15 05:05:03'),(46,836,'2006-02-15 05:05:03'),(46,889,'2006-02-15 05:05:03'),(46,980,'2006-02-15 05:05:03'),(46,991,'2006-02-15 05:05:03'),(47,25,'2006-02-15 05:05:03'),(47,36,'2006-02-15 05:05:03'),(47,53,'2006-02-15 05:05:03'),(47,67,'2006-02-15 05:05:03'),(47,172,'2006-02-15 05:05:03'),(47,233,'2006-02-15 05:05:03'),(47,273,'2006-02-15 05:05:03'),(47,351,'2006-02-15 05:05:03'),(47,385,'2006-02-15 05:05:03'),(47,484,'2006-02-15 05:05:03'),(47,508,'2006-02-15 05:05:03'),(47,576,'2006-02-15 05:05:03'),(47,670,'2006-02-15 05:05:03'),(47,734,'2006-02-15 05:05:03'),(47,737,'2006-02-15 05:05:03'),(47,770,'2006-02-15 05:05:03'),(47,777,'2006-02-15 05:05:03'),(47,787,'2006-02-15 05:05:03'),(47,790,'2006-02-15 05:05:03'),(47,913,'2006-02-15 05:05:03'),(47,923,'2006-02-15 05:05:03'),(47,924,'2006-02-15 05:05:03'),(47,944,'2006-02-15 05:05:03'),(47,973,'2006-02-15 05:05:03'),(48,99,'2006-02-15 05:05:03'),(48,101,'2006-02-15 05:05:03'),(48,134,'2006-02-15 05:05:03'),(48,150,'2006-02-15 05:05:03'),(48,164,'2006-02-15 05:05:03'),(48,211,'2006-02-15 05:05:03'),(48,245,'2006-02-15 05:05:03'),(48,267,'2006-02-15 05:05:03'),(48,287,'2006-02-15 05:05:03'),(48,295,'2006-02-15 05:05:03'),(48,312,'2006-02-15 05:05:03'),(48,315,'2006-02-15 05:05:03'),(48,345,'2006-02-15 05:05:03'),(48,349,'2006-02-15 05:05:03'),(48,428,'2006-02-15 05:05:03'),(48,506,'2006-02-15 05:05:03'),(48,545,'2006-02-15 05:05:03'),(48,559,'2006-02-15 05:05:03'),(48,570,'2006-02-15 05:05:03'),(48,599,'2006-02-15 05:05:03'),(48,645,'2006-02-15 05:05:03'),(48,705,'2006-02-15 05:05:03'),(48,757,'2006-02-15 05:05:03'),(48,792,'2006-02-15 05:05:03'),(48,922,'2006-02-15 05:05:03'),(48,926,'2006-02-15 05:05:03'),(49,31,'2006-02-15 05:05:03'),(49,151,'2006-02-15 05:05:03'),(49,195,'2006-02-15 05:05:03'),(49,207,'2006-02-15 05:05:03'),(49,250,'2006-02-15 05:05:03'),(49,282,'2006-02-15 05:05:03'),(49,348,'2006-02-15 05:05:03'),(49,391,'2006-02-15 05:05:03'),(49,400,'2006-02-15 05:05:03'),(49,407,'2006-02-15 05:05:03'),(49,423,'2006-02-15 05:05:03'),(49,433,'2006-02-15 05:05:03'),(49,469,'2006-02-15 05:05:03'),(49,506,'2006-02-15 05:05:03'),(49,542,'2006-02-15 05:05:03'),(49,558,'2006-02-15 05:05:03'),(49,579,'2006-02-15 05:05:03'),(49,595,'2006-02-15 05:05:03'),(49,662,'2006-02-15 05:05:03'),(49,709,'2006-02-15 05:05:03'),(49,716,'2006-02-15 05:05:03'),(49,725,'2006-02-15 05:05:03'),(49,729,'2006-02-15 05:05:03'),(49,811,'2006-02-15 05:05:03'),(49,927,'2006-02-15 05:05:03'),(49,977,'2006-02-15 05:05:03'),(49,980,'2006-02-15 05:05:03'),(50,111,'2006-02-15 05:05:03'),(50,178,'2006-02-15 05:05:03'),(50,243,'2006-02-15 05:05:03'),(50,248,'2006-02-15 05:05:03'),(50,274,'2006-02-15 05:05:03'),(50,288,'2006-02-15 05:05:03'),(50,303,'2006-02-15 05:05:03'),(50,306,'2006-02-15 05:05:03'),(50,327,'2006-02-15 05:05:03'),(50,372,'2006-02-15 05:05:03'),(50,401,'2006-02-15 05:05:03'),(50,417,'2006-02-15 05:05:03'),(50,420,'2006-02-15 05:05:03'),(50,437,'2006-02-15 05:05:03'),(50,476,'2006-02-15 05:05:03'),(50,504,'2006-02-15 05:05:03'),(50,520,'2006-02-15 05:05:03'),(50,552,'2006-02-15 05:05:03'),(50,591,'2006-02-15 05:05:03'),(50,621,'2006-02-15 05:05:03'),(50,632,'2006-02-15 05:05:03'),(50,645,'2006-02-15 05:05:03'),(50,672,'2006-02-15 05:05:03'),(50,717,'2006-02-15 05:05:03'),(50,732,'2006-02-15 05:05:03'),(50,795,'2006-02-15 05:05:03'),(50,829,'2006-02-15 05:05:03'),(50,840,'2006-02-15 05:05:03'),(50,897,'2006-02-15 05:05:03'),(50,918,'2006-02-15 05:05:03'),(50,924,'2006-02-15 05:05:03'),(50,957,'2006-02-15 05:05:03'),(51,5,'2006-02-15 05:05:03'),(51,63,'2006-02-15 05:05:03'),(51,103,'2006-02-15 05:05:03'),(51,112,'2006-02-15 05:05:03'),(51,121,'2006-02-15 05:05:03'),(51,153,'2006-02-15 05:05:03'),(51,395,'2006-02-15 05:05:03'),(51,408,'2006-02-15 05:05:03'),(51,420,'2006-02-15 05:05:03'),(51,461,'2006-02-15 05:05:03'),(51,490,'2006-02-15 05:05:03'),(51,525,'2006-02-15 05:05:03'),(51,627,'2006-02-15 05:05:03'),(51,678,'2006-02-15 05:05:03'),(51,733,'2006-02-15 05:05:03'),(51,734,'2006-02-15 05:05:03'),(51,737,'2006-02-15 05:05:03'),(51,750,'2006-02-15 05:05:03'),(51,847,'2006-02-15 05:05:03'),(51,891,'2006-02-15 05:05:03'),(51,895,'2006-02-15 05:05:03'),(51,940,'2006-02-15 05:05:03'),(51,974,'2006-02-15 05:05:03'),(51,990,'2006-02-15 05:05:03'),(51,993,'2006-02-15 05:05:03'),(52,20,'2006-02-15 05:05:03'),(52,92,'2006-02-15 05:05:03'),(52,96,'2006-02-15 05:05:03'),(52,108,'2006-02-15 05:05:03'),(52,203,'2006-02-15 05:05:03'),(52,249,'2006-02-15 05:05:03'),(52,341,'2006-02-15 05:05:03'),(52,376,'2006-02-15 05:05:03'),(52,388,'2006-02-15 05:05:03'),(52,407,'2006-02-15 05:05:03'),(52,424,'2006-02-15 05:05:03'),(52,474,'2006-02-15 05:05:03'),(52,515,'2006-02-15 05:05:03'),(52,517,'2006-02-15 05:05:03'),(52,584,'2006-02-15 05:05:03'),(52,596,'2006-02-15 05:05:03'),(52,664,'2006-02-15 05:05:03'),(52,675,'2006-02-15 05:05:03'),(52,689,'2006-02-15 05:05:03'),(52,714,'2006-02-15 05:05:03'),(52,812,'2006-02-15 05:05:03'),(52,878,'2006-02-15 05:05:03'),(52,879,'2006-02-15 05:05:03'),(52,915,'2006-02-15 05:05:03'),(52,951,'2006-02-15 05:05:03'),(52,999,'2006-02-15 05:05:03'),(53,1,'2006-02-15 05:05:03'),(53,9,'2006-02-15 05:05:03'),(53,51,'2006-02-15 05:05:03'),(53,58,'2006-02-15 05:05:03'),(53,109,'2006-02-15 05:05:03'),(53,122,'2006-02-15 05:05:03'),(53,126,'2006-02-15 05:05:03'),(53,181,'2006-02-15 05:05:03'),(53,256,'2006-02-15 05:05:03'),(53,268,'2006-02-15 05:05:03'),(53,285,'2006-02-15 05:05:03'),(53,307,'2006-02-15 05:05:03'),(53,358,'2006-02-15 05:05:03'),(53,386,'2006-02-15 05:05:03'),(53,447,'2006-02-15 05:05:03'),(53,465,'2006-02-15 05:05:03'),(53,490,'2006-02-15 05:05:03'),(53,492,'2006-02-15 05:05:03'),(53,508,'2006-02-15 05:05:03'),(53,518,'2006-02-15 05:05:03'),(53,573,'2006-02-15 05:05:03'),(53,576,'2006-02-15 05:05:03'),(53,577,'2006-02-15 05:05:03'),(53,697,'2006-02-15 05:05:03'),(53,725,'2006-02-15 05:05:03'),(53,727,'2006-02-15 05:05:03'),(53,937,'2006-02-15 05:05:03'),(53,947,'2006-02-15 05:05:03'),(53,961,'2006-02-15 05:05:03'),(53,980,'2006-02-15 05:05:03'),(54,84,'2006-02-15 05:05:03'),(54,129,'2006-02-15 05:05:03'),(54,150,'2006-02-15 05:05:03'),(54,184,'2006-02-15 05:05:03'),(54,285,'2006-02-15 05:05:03'),(54,292,'2006-02-15 05:05:03'),(54,301,'2006-02-15 05:05:03'),(54,348,'2006-02-15 05:05:03'),(54,489,'2006-02-15 05:05:03'),(54,510,'2006-02-15 05:05:03'),(54,524,'2006-02-15 05:05:03'),(54,546,'2006-02-15 05:05:03'),(54,600,'2006-02-15 05:05:03'),(54,636,'2006-02-15 05:05:03'),(54,649,'2006-02-15 05:05:03'),(54,658,'2006-02-15 05:05:03'),(54,754,'2006-02-15 05:05:03'),(54,764,'2006-02-15 05:05:03'),(54,842,'2006-02-15 05:05:03'),(54,858,'2006-02-15 05:05:03'),(54,861,'2006-02-15 05:05:03'),(54,913,'2006-02-15 05:05:03'),(54,970,'2006-02-15 05:05:03'),(54,988,'2006-02-15 05:05:03'),(54,990,'2006-02-15 05:05:03'),(55,8,'2006-02-15 05:05:03'),(55,27,'2006-02-15 05:05:03'),(55,75,'2006-02-15 05:05:03'),(55,197,'2006-02-15 05:05:03'),(55,307,'2006-02-15 05:05:03'),(55,320,'2006-02-15 05:05:03'),(55,340,'2006-02-15 05:05:03'),(55,403,'2006-02-15 05:05:03'),(55,485,'2006-02-15 05:05:03'),(55,486,'2006-02-15 05:05:03'),(55,603,'2006-02-15 05:05:03'),(55,612,'2006-02-15 05:05:03'),(55,620,'2006-02-15 05:05:03'),(55,709,'2006-02-15 05:05:03'),(55,776,'2006-02-15 05:05:03'),(55,790,'2006-02-15 05:05:03'),(55,815,'2006-02-15 05:05:03'),(55,827,'2006-02-15 05:05:03'),(55,930,'2006-02-15 05:05:03'),(55,963,'2006-02-15 05:05:03'),(56,63,'2006-02-15 05:05:03'),(56,87,'2006-02-15 05:05:03'),(56,226,'2006-02-15 05:05:03'),(56,236,'2006-02-15 05:05:03'),(56,298,'2006-02-15 05:05:03'),(56,307,'2006-02-15 05:05:03'),(56,354,'2006-02-15 05:05:03'),(56,383,'2006-02-15 05:05:03'),(56,417,'2006-02-15 05:05:03'),(56,421,'2006-02-15 05:05:03'),(56,457,'2006-02-15 05:05:03'),(56,462,'2006-02-15 05:05:03'),(56,474,'2006-02-15 05:05:03'),(56,521,'2006-02-15 05:05:03'),(56,593,'2006-02-15 05:05:03'),(56,728,'2006-02-15 05:05:03'),(56,750,'2006-02-15 05:05:03'),(56,769,'2006-02-15 05:05:03'),(56,781,'2006-02-15 05:05:03'),(56,795,'2006-02-15 05:05:03'),(56,844,'2006-02-15 05:05:03'),(56,851,'2006-02-15 05:05:03'),(56,862,'2006-02-15 05:05:03'),(56,868,'2006-02-15 05:05:03'),(56,892,'2006-02-15 05:05:03'),(56,893,'2006-02-15 05:05:03'),(56,936,'2006-02-15 05:05:03'),(56,965,'2006-02-15 05:05:03'),(57,16,'2006-02-15 05:05:03'),(57,34,'2006-02-15 05:05:03'),(57,101,'2006-02-15 05:05:03'),(57,114,'2006-02-15 05:05:03'),(57,122,'2006-02-15 05:05:03'),(57,134,'2006-02-15 05:05:03'),(57,144,'2006-02-15 05:05:03'),(57,153,'2006-02-15 05:05:03'),(57,192,'2006-02-15 05:05:03'),(57,213,'2006-02-15 05:05:03'),(57,258,'2006-02-15 05:05:03'),(57,267,'2006-02-15 05:05:03'),(57,317,'2006-02-15 05:05:03'),(57,340,'2006-02-15 05:05:03'),(57,393,'2006-02-15 05:05:03'),(57,437,'2006-02-15 05:05:03'),(57,447,'2006-02-15 05:05:03'),(57,502,'2006-02-15 05:05:03'),(57,592,'2006-02-15 05:05:03'),(57,605,'2006-02-15 05:05:03'),(57,637,'2006-02-15 05:05:03'),(57,685,'2006-02-15 05:05:03'),(57,707,'2006-02-15 05:05:03'),(57,714,'2006-02-15 05:05:03'),(57,717,'2006-02-15 05:05:03'),(57,737,'2006-02-15 05:05:03'),(57,767,'2006-02-15 05:05:03'),(57,852,'2006-02-15 05:05:03'),(57,891,'2006-02-15 05:05:03'),(57,918,'2006-02-15 05:05:03'),(58,48,'2006-02-15 05:05:03'),(58,68,'2006-02-15 05:05:03'),(58,119,'2006-02-15 05:05:03'),(58,128,'2006-02-15 05:05:03'),(58,135,'2006-02-15 05:05:03'),(58,175,'2006-02-15 05:05:03'),(58,199,'2006-02-15 05:05:03'),(58,235,'2006-02-15 05:05:03'),(58,242,'2006-02-15 05:05:03'),(58,243,'2006-02-15 05:05:03'),(58,254,'2006-02-15 05:05:03'),(58,306,'2006-02-15 05:05:03'),(58,316,'2006-02-15 05:05:03'),(58,417,'2006-02-15 05:05:03'),(58,426,'2006-02-15 05:05:03'),(58,460,'2006-02-15 05:05:03'),(58,477,'2006-02-15 05:05:03'),(58,541,'2006-02-15 05:05:03'),(58,549,'2006-02-15 05:05:03'),(58,551,'2006-02-15 05:05:03'),(58,553,'2006-02-15 05:05:03'),(58,578,'2006-02-15 05:05:03'),(58,602,'2006-02-15 05:05:03'),(58,632,'2006-02-15 05:05:03'),(58,635,'2006-02-15 05:05:03'),(58,638,'2006-02-15 05:05:03'),(58,698,'2006-02-15 05:05:03'),(58,726,'2006-02-15 05:05:03'),(58,755,'2006-02-15 05:05:03'),(58,800,'2006-02-15 05:05:03'),(58,856,'2006-02-15 05:05:03'),(58,858,'2006-02-15 05:05:03'),(59,5,'2006-02-15 05:05:03'),(59,46,'2006-02-15 05:05:03'),(59,54,'2006-02-15 05:05:03'),(59,72,'2006-02-15 05:05:03'),(59,88,'2006-02-15 05:05:03'),(59,121,'2006-02-15 05:05:03'),(59,129,'2006-02-15 05:05:03'),(59,130,'2006-02-15 05:05:03'),(59,183,'2006-02-15 05:05:03'),(59,210,'2006-02-15 05:05:03'),(59,241,'2006-02-15 05:05:03'),(59,295,'2006-02-15 05:05:03'),(59,418,'2006-02-15 05:05:03'),(59,572,'2006-02-15 05:05:03'),(59,644,'2006-02-15 05:05:03'),(59,650,'2006-02-15 05:05:03'),(59,689,'2006-02-15 05:05:03'),(59,694,'2006-02-15 05:05:03'),(59,702,'2006-02-15 05:05:03'),(59,713,'2006-02-15 05:05:03'),(59,749,'2006-02-15 05:05:03'),(59,772,'2006-02-15 05:05:03'),(59,853,'2006-02-15 05:05:03'),(59,862,'2006-02-15 05:05:03'),(59,943,'2006-02-15 05:05:03'),(59,946,'2006-02-15 05:05:03'),(59,984,'2006-02-15 05:05:03'),(60,31,'2006-02-15 05:05:03'),(60,85,'2006-02-15 05:05:03'),(60,133,'2006-02-15 05:05:03'),(60,142,'2006-02-15 05:05:03'),(60,177,'2006-02-15 05:05:03'),(60,179,'2006-02-15 05:05:03'),(60,186,'2006-02-15 05:05:03'),(60,222,'2006-02-15 05:05:03'),(60,235,'2006-02-15 05:05:03'),(60,239,'2006-02-15 05:05:03'),(60,253,'2006-02-15 05:05:03'),(60,262,'2006-02-15 05:05:03'),(60,297,'2006-02-15 05:05:03'),(60,299,'2006-02-15 05:05:03'),(60,334,'2006-02-15 05:05:03'),(60,376,'2006-02-15 05:05:03'),(60,423,'2006-02-15 05:05:03'),(60,436,'2006-02-15 05:05:03'),(60,493,'2006-02-15 05:05:03'),(60,534,'2006-02-15 05:05:03'),(60,551,'2006-02-15 05:05:03'),(60,658,'2006-02-15 05:05:03'),(60,665,'2006-02-15 05:05:03'),(60,679,'2006-02-15 05:05:03'),(60,754,'2006-02-15 05:05:03'),(60,771,'2006-02-15 05:05:03'),(60,783,'2006-02-15 05:05:03'),(60,784,'2006-02-15 05:05:03'),(60,805,'2006-02-15 05:05:03'),(60,830,'2006-02-15 05:05:03'),(60,835,'2006-02-15 05:05:03'),(60,928,'2006-02-15 05:05:03'),(60,952,'2006-02-15 05:05:03'),(60,971,'2006-02-15 05:05:03'),(60,986,'2006-02-15 05:05:03'),(61,235,'2006-02-15 05:05:03'),(61,237,'2006-02-15 05:05:03'),(61,307,'2006-02-15 05:05:03'),(61,362,'2006-02-15 05:05:03'),(61,372,'2006-02-15 05:05:03'),(61,374,'2006-02-15 05:05:03'),(61,423,'2006-02-15 05:05:03'),(61,433,'2006-02-15 05:05:03'),(61,508,'2006-02-15 05:05:03'),(61,518,'2006-02-15 05:05:03'),(61,519,'2006-02-15 05:05:03'),(61,535,'2006-02-15 05:05:03'),(61,537,'2006-02-15 05:05:03'),(61,585,'2006-02-15 05:05:03'),(61,639,'2006-02-15 05:05:03'),(61,648,'2006-02-15 05:05:03'),(61,649,'2006-02-15 05:05:03'),(61,703,'2006-02-15 05:05:03'),(61,752,'2006-02-15 05:05:03'),(61,766,'2006-02-15 05:05:03'),(61,767,'2006-02-15 05:05:03'),(61,780,'2006-02-15 05:05:03'),(61,831,'2006-02-15 05:05:03'),(61,832,'2006-02-15 05:05:03'),(61,990,'2006-02-15 05:05:03'),(62,6,'2006-02-15 05:05:03'),(62,42,'2006-02-15 05:05:03'),(62,54,'2006-02-15 05:05:03'),(62,100,'2006-02-15 05:05:03'),(62,101,'2006-02-15 05:05:03'),(62,129,'2006-02-15 05:05:03'),(62,198,'2006-02-15 05:05:03'),(62,211,'2006-02-15 05:05:03'),(62,231,'2006-02-15 05:05:03'),(62,272,'2006-02-15 05:05:03'),(62,295,'2006-02-15 05:05:03'),(62,337,'2006-02-15 05:05:03'),(62,375,'2006-02-15 05:05:03'),(62,385,'2006-02-15 05:05:03'),(62,393,'2006-02-15 05:05:03'),(62,398,'2006-02-15 05:05:03'),(62,406,'2006-02-15 05:05:03'),(62,413,'2006-02-15 05:05:03'),(62,428,'2006-02-15 05:05:03'),(62,445,'2006-02-15 05:05:03'),(62,457,'2006-02-15 05:05:03'),(62,465,'2006-02-15 05:05:03'),(62,688,'2006-02-15 05:05:03'),(62,707,'2006-02-15 05:05:03'),(62,719,'2006-02-15 05:05:03'),(62,951,'2006-02-15 05:05:03'),(62,981,'2006-02-15 05:05:03'),(62,988,'2006-02-15 05:05:03'),(62,990,'2006-02-15 05:05:03'),(63,73,'2006-02-15 05:05:03'),(63,134,'2006-02-15 05:05:03'),(63,167,'2006-02-15 05:05:03'),(63,208,'2006-02-15 05:05:03'),(63,225,'2006-02-15 05:05:03'),(63,248,'2006-02-15 05:05:03'),(63,249,'2006-02-15 05:05:03'),(63,278,'2006-02-15 05:05:03'),(63,392,'2006-02-15 05:05:03'),(63,517,'2006-02-15 05:05:03'),(63,633,'2006-02-15 05:05:03'),(63,763,'2006-02-15 05:05:03'),(63,781,'2006-02-15 05:05:03'),(63,809,'2006-02-15 05:05:03'),(63,893,'2006-02-15 05:05:03'),(63,932,'2006-02-15 05:05:03'),(63,944,'2006-02-15 05:05:03'),(63,945,'2006-02-15 05:05:03'),(63,981,'2006-02-15 05:05:03'),(64,3,'2006-02-15 05:05:03'),(64,10,'2006-02-15 05:05:03'),(64,37,'2006-02-15 05:05:03'),(64,87,'2006-02-15 05:05:03'),(64,88,'2006-02-15 05:05:03'),(64,124,'2006-02-15 05:05:03'),(64,197,'2006-02-15 05:05:03'),(64,280,'2006-02-15 05:05:03'),(64,291,'2006-02-15 05:05:03'),(64,307,'2006-02-15 05:05:03'),(64,335,'2006-02-15 05:05:03'),(64,345,'2006-02-15 05:05:03'),(64,448,'2006-02-15 05:05:03'),(64,469,'2006-02-15 05:05:03'),(64,471,'2006-02-15 05:05:03'),(64,506,'2006-02-15 05:05:03'),(64,543,'2006-02-15 05:05:03'),(64,557,'2006-02-15 05:05:03'),(64,569,'2006-02-15 05:05:03'),(64,572,'2006-02-15 05:05:03'),(64,597,'2006-02-15 05:05:03'),(64,616,'2006-02-15 05:05:03'),(64,646,'2006-02-15 05:05:03'),(64,694,'2006-02-15 05:05:03'),(64,832,'2006-02-15 05:05:03'),(64,852,'2006-02-15 05:05:03'),(64,860,'2006-02-15 05:05:03'),(64,921,'2006-02-15 05:05:03'),(64,925,'2006-02-15 05:05:03'),(64,980,'2006-02-15 05:05:03'),(65,39,'2006-02-15 05:05:03'),(65,46,'2006-02-15 05:05:03'),(65,97,'2006-02-15 05:05:03'),(65,106,'2006-02-15 05:05:03'),(65,117,'2006-02-15 05:05:03'),(65,125,'2006-02-15 05:05:03'),(65,158,'2006-02-15 05:05:03'),(65,276,'2006-02-15 05:05:03'),(65,305,'2006-02-15 05:05:03'),(65,338,'2006-02-15 05:05:03'),(65,347,'2006-02-15 05:05:03'),(65,371,'2006-02-15 05:05:03'),(65,398,'2006-02-15 05:05:03'),(65,471,'2006-02-15 05:05:03'),(65,475,'2006-02-15 05:05:03'),(65,476,'2006-02-15 05:05:03'),(65,491,'2006-02-15 05:05:03'),(65,496,'2006-02-15 05:05:03'),(65,516,'2006-02-15 05:05:03'),(65,517,'2006-02-15 05:05:03'),(65,541,'2006-02-15 05:05:03'),(65,556,'2006-02-15 05:05:03'),(65,571,'2006-02-15 05:05:03'),(65,577,'2006-02-15 05:05:03'),(65,615,'2006-02-15 05:05:03'),(65,658,'2006-02-15 05:05:03'),(65,683,'2006-02-15 05:05:03'),(65,694,'2006-02-15 05:05:03'),(65,714,'2006-02-15 05:05:03'),(65,735,'2006-02-15 05:05:03'),(65,852,'2006-02-15 05:05:03'),(65,938,'2006-02-15 05:05:03'),(65,951,'2006-02-15 05:05:03'),(65,965,'2006-02-15 05:05:03'),(66,55,'2006-02-15 05:05:03'),(66,143,'2006-02-15 05:05:03'),(66,207,'2006-02-15 05:05:03'),(66,226,'2006-02-15 05:05:03'),(66,229,'2006-02-15 05:05:03'),(66,230,'2006-02-15 05:05:03'),(66,283,'2006-02-15 05:05:03'),(66,300,'2006-02-15 05:05:03'),(66,342,'2006-02-15 05:05:03'),(66,350,'2006-02-15 05:05:03'),(66,361,'2006-02-15 05:05:03'),(66,376,'2006-02-15 05:05:03'),(66,424,'2006-02-15 05:05:03'),(66,434,'2006-02-15 05:05:03'),(66,553,'2006-02-15 05:05:03'),(66,608,'2006-02-15 05:05:03'),(66,676,'2006-02-15 05:05:03'),(66,697,'2006-02-15 05:05:03'),(66,706,'2006-02-15 05:05:03'),(66,725,'2006-02-15 05:05:03'),(66,769,'2006-02-15 05:05:03'),(66,793,'2006-02-15 05:05:03'),(66,829,'2006-02-15 05:05:03'),(66,871,'2006-02-15 05:05:03'),(66,909,'2006-02-15 05:05:03'),(66,915,'2006-02-15 05:05:03'),(66,928,'2006-02-15 05:05:03'),(66,951,'2006-02-15 05:05:03'),(66,957,'2006-02-15 05:05:03'),(66,960,'2006-02-15 05:05:03'),(66,999,'2006-02-15 05:05:03'),(67,24,'2006-02-15 05:05:03'),(67,57,'2006-02-15 05:05:03'),(67,67,'2006-02-15 05:05:03'),(67,144,'2006-02-15 05:05:03'),(67,242,'2006-02-15 05:05:03'),(67,244,'2006-02-15 05:05:03'),(67,256,'2006-02-15 05:05:03'),(67,408,'2006-02-15 05:05:03'),(67,477,'2006-02-15 05:05:03'),(67,496,'2006-02-15 05:05:03'),(67,512,'2006-02-15 05:05:03'),(67,576,'2006-02-15 05:05:03'),(67,601,'2006-02-15 05:05:03'),(67,725,'2006-02-15 05:05:03'),(67,726,'2006-02-15 05:05:03'),(67,731,'2006-02-15 05:05:03'),(67,766,'2006-02-15 05:05:03'),(67,861,'2006-02-15 05:05:03'),(67,870,'2006-02-15 05:05:03'),(67,915,'2006-02-15 05:05:03'),(67,945,'2006-02-15 05:05:03'),(67,972,'2006-02-15 05:05:03'),(67,981,'2006-02-15 05:05:03'),(68,9,'2006-02-15 05:05:03'),(68,45,'2006-02-15 05:05:03'),(68,133,'2006-02-15 05:05:03'),(68,161,'2006-02-15 05:05:03'),(68,205,'2006-02-15 05:05:03'),(68,213,'2006-02-15 05:05:03'),(68,215,'2006-02-15 05:05:03'),(68,255,'2006-02-15 05:05:03'),(68,296,'2006-02-15 05:05:03'),(68,315,'2006-02-15 05:05:03'),(68,325,'2006-02-15 05:05:03'),(68,331,'2006-02-15 05:05:03'),(68,347,'2006-02-15 05:05:03'),(68,357,'2006-02-15 05:05:03'),(68,378,'2006-02-15 05:05:03'),(68,380,'2006-02-15 05:05:03'),(68,386,'2006-02-15 05:05:03'),(68,396,'2006-02-15 05:05:03'),(68,435,'2006-02-15 05:05:03'),(68,497,'2006-02-15 05:05:03'),(68,607,'2006-02-15 05:05:03'),(68,654,'2006-02-15 05:05:03'),(68,665,'2006-02-15 05:05:03'),(68,671,'2006-02-15 05:05:03'),(68,706,'2006-02-15 05:05:03'),(68,747,'2006-02-15 05:05:03'),(68,834,'2006-02-15 05:05:03'),(68,839,'2006-02-15 05:05:03'),(68,840,'2006-02-15 05:05:03'),(68,971,'2006-02-15 05:05:03'),(69,15,'2006-02-15 05:05:03'),(69,88,'2006-02-15 05:05:03'),(69,111,'2006-02-15 05:05:03'),(69,202,'2006-02-15 05:05:03'),(69,236,'2006-02-15 05:05:03'),(69,292,'2006-02-15 05:05:03'),(69,300,'2006-02-15 05:05:03'),(69,306,'2006-02-15 05:05:03'),(69,374,'2006-02-15 05:05:03'),(69,396,'2006-02-15 05:05:03'),(69,452,'2006-02-15 05:05:03'),(69,466,'2006-02-15 05:05:03'),(69,529,'2006-02-15 05:05:03'),(69,612,'2006-02-15 05:05:03'),(69,720,'2006-02-15 05:05:03'),(69,722,'2006-02-15 05:05:03'),(69,761,'2006-02-15 05:05:03'),(69,791,'2006-02-15 05:05:03'),(69,864,'2006-02-15 05:05:03'),(69,877,'2006-02-15 05:05:03'),(69,914,'2006-02-15 05:05:03'),(70,50,'2006-02-15 05:05:03'),(70,53,'2006-02-15 05:05:03'),(70,92,'2006-02-15 05:05:03'),(70,202,'2006-02-15 05:05:03'),(70,227,'2006-02-15 05:05:03'),(70,249,'2006-02-15 05:05:03'),(70,290,'2006-02-15 05:05:03'),(70,304,'2006-02-15 05:05:03'),(70,343,'2006-02-15 05:05:03'),(70,414,'2006-02-15 05:05:03'),(70,453,'2006-02-15 05:05:03'),(70,466,'2006-02-15 05:05:03'),(70,504,'2006-02-15 05:05:03'),(70,584,'2006-02-15 05:05:03'),(70,628,'2006-02-15 05:05:03'),(70,654,'2006-02-15 05:05:03'),(70,725,'2006-02-15 05:05:03'),(70,823,'2006-02-15 05:05:03'),(70,834,'2006-02-15 05:05:03'),(70,856,'2006-02-15 05:05:03'),(70,869,'2006-02-15 05:05:03'),(70,953,'2006-02-15 05:05:03'),(70,964,'2006-02-15 05:05:03'),(71,26,'2006-02-15 05:05:03'),(71,52,'2006-02-15 05:05:03'),(71,233,'2006-02-15 05:05:03'),(71,317,'2006-02-15 05:05:03'),(71,359,'2006-02-15 05:05:03'),(71,362,'2006-02-15 05:05:03'),(71,385,'2006-02-15 05:05:03'),(71,399,'2006-02-15 05:05:03'),(71,450,'2006-02-15 05:05:03'),(71,532,'2006-02-15 05:05:03'),(71,560,'2006-02-15 05:05:03'),(71,574,'2006-02-15 05:05:03'),(71,638,'2006-02-15 05:05:03'),(71,773,'2006-02-15 05:05:03'),(71,833,'2006-02-15 05:05:03'),(71,874,'2006-02-15 05:05:03'),(71,918,'2006-02-15 05:05:03'),(71,956,'2006-02-15 05:05:03'),(72,34,'2006-02-15 05:05:03'),(72,144,'2006-02-15 05:05:03'),(72,237,'2006-02-15 05:05:03'),(72,249,'2006-02-15 05:05:03'),(72,286,'2006-02-15 05:05:03'),(72,296,'2006-02-15 05:05:03'),(72,325,'2006-02-15 05:05:03'),(72,331,'2006-02-15 05:05:03'),(72,405,'2006-02-15 05:05:03'),(72,450,'2006-02-15 05:05:03'),(72,550,'2006-02-15 05:05:03'),(72,609,'2006-02-15 05:05:03'),(72,623,'2006-02-15 05:05:03'),(72,636,'2006-02-15 05:05:03'),(72,640,'2006-02-15 05:05:03'),(72,665,'2006-02-15 05:05:03'),(72,718,'2006-02-15 05:05:03'),(72,743,'2006-02-15 05:05:03'),(72,757,'2006-02-15 05:05:03'),(72,773,'2006-02-15 05:05:03'),(72,854,'2006-02-15 05:05:03'),(72,865,'2006-02-15 05:05:03'),(72,938,'2006-02-15 05:05:03'),(72,956,'2006-02-15 05:05:03'),(72,964,'2006-02-15 05:05:03'),(72,969,'2006-02-15 05:05:03'),(73,36,'2006-02-15 05:05:03'),(73,45,'2006-02-15 05:05:03'),(73,51,'2006-02-15 05:05:03'),(73,77,'2006-02-15 05:05:03'),(73,148,'2006-02-15 05:05:03'),(73,245,'2006-02-15 05:05:03'),(73,275,'2006-02-15 05:05:03'),(73,322,'2006-02-15 05:05:03'),(73,374,'2006-02-15 05:05:03'),(73,379,'2006-02-15 05:05:03'),(73,467,'2006-02-15 05:05:03'),(73,548,'2006-02-15 05:05:03'),(73,561,'2006-02-15 05:05:03'),(73,562,'2006-02-15 05:05:03'),(73,565,'2006-02-15 05:05:03'),(73,627,'2006-02-15 05:05:03'),(73,666,'2006-02-15 05:05:03'),(73,667,'2006-02-15 05:05:03'),(73,707,'2006-02-15 05:05:03'),(73,748,'2006-02-15 05:05:03'),(73,772,'2006-02-15 05:05:03'),(73,823,'2006-02-15 05:05:03'),(73,936,'2006-02-15 05:05:03'),(73,946,'2006-02-15 05:05:03'),(73,950,'2006-02-15 05:05:03'),(73,998,'2006-02-15 05:05:03'),(74,28,'2006-02-15 05:05:03'),(74,44,'2006-02-15 05:05:03'),(74,117,'2006-02-15 05:05:03'),(74,185,'2006-02-15 05:05:03'),(74,192,'2006-02-15 05:05:03'),(74,203,'2006-02-15 05:05:03'),(74,263,'2006-02-15 05:05:03'),(74,321,'2006-02-15 05:05:03'),(74,415,'2006-02-15 05:05:03'),(74,484,'2006-02-15 05:05:03'),(74,503,'2006-02-15 05:05:03'),(74,537,'2006-02-15 05:05:03'),(74,543,'2006-02-15 05:05:03'),(74,617,'2006-02-15 05:05:03'),(74,626,'2006-02-15 05:05:03'),(74,637,'2006-02-15 05:05:03'),(74,663,'2006-02-15 05:05:03'),(74,704,'2006-02-15 05:05:03'),(74,720,'2006-02-15 05:05:03'),(74,747,'2006-02-15 05:05:03'),(74,780,'2006-02-15 05:05:03'),(74,804,'2006-02-15 05:05:03'),(74,834,'2006-02-15 05:05:03'),(74,836,'2006-02-15 05:05:03'),(74,848,'2006-02-15 05:05:03'),(74,872,'2006-02-15 05:05:03'),(74,902,'2006-02-15 05:05:03'),(74,956,'2006-02-15 05:05:03'),(75,12,'2006-02-15 05:05:03'),(75,34,'2006-02-15 05:05:03'),(75,143,'2006-02-15 05:05:03'),(75,170,'2006-02-15 05:05:03'),(75,222,'2006-02-15 05:05:03'),(75,301,'2006-02-15 05:05:03'),(75,347,'2006-02-15 05:05:03'),(75,372,'2006-02-15 05:05:03'),(75,436,'2006-02-15 05:05:03'),(75,445,'2006-02-15 05:05:03'),(75,446,'2006-02-15 05:05:03'),(75,492,'2006-02-15 05:05:03'),(75,498,'2006-02-15 05:05:03'),(75,508,'2006-02-15 05:05:03'),(75,541,'2006-02-15 05:05:03'),(75,547,'2006-02-15 05:05:03'),(75,579,'2006-02-15 05:05:03'),(75,645,'2006-02-15 05:05:03'),(75,667,'2006-02-15 05:05:03'),(75,744,'2006-02-15 05:05:03'),(75,764,'2006-02-15 05:05:03'),(75,780,'2006-02-15 05:05:03'),(75,870,'2006-02-15 05:05:03'),(75,920,'2006-02-15 05:05:03'),(76,60,'2006-02-15 05:05:03'),(76,66,'2006-02-15 05:05:03'),(76,68,'2006-02-15 05:05:03'),(76,95,'2006-02-15 05:05:03'),(76,122,'2006-02-15 05:05:03'),(76,187,'2006-02-15 05:05:03'),(76,223,'2006-02-15 05:05:03'),(76,234,'2006-02-15 05:05:03'),(76,251,'2006-02-15 05:05:03'),(76,348,'2006-02-15 05:05:03'),(76,444,'2006-02-15 05:05:03'),(76,464,'2006-02-15 05:05:03'),(76,474,'2006-02-15 05:05:03'),(76,498,'2006-02-15 05:05:03'),(76,568,'2006-02-15 05:05:03'),(76,604,'2006-02-15 05:05:03'),(76,606,'2006-02-15 05:05:03'),(76,642,'2006-02-15 05:05:03'),(76,648,'2006-02-15 05:05:03'),(76,650,'2006-02-15 05:05:03'),(76,709,'2006-02-15 05:05:03'),(76,760,'2006-02-15 05:05:03'),(76,765,'2006-02-15 05:05:03'),(76,781,'2006-02-15 05:05:03'),(76,850,'2006-02-15 05:05:03'),(76,862,'2006-02-15 05:05:03'),(76,866,'2006-02-15 05:05:03'),(76,870,'2006-02-15 05:05:03'),(76,912,'2006-02-15 05:05:03'),(76,935,'2006-02-15 05:05:03'),(76,958,'2006-02-15 05:05:03'),(77,13,'2006-02-15 05:05:03'),(77,22,'2006-02-15 05:05:03'),(77,40,'2006-02-15 05:05:03'),(77,73,'2006-02-15 05:05:03'),(77,78,'2006-02-15 05:05:03'),(77,153,'2006-02-15 05:05:03'),(77,224,'2006-02-15 05:05:03'),(77,240,'2006-02-15 05:05:03'),(77,245,'2006-02-15 05:05:03'),(77,261,'2006-02-15 05:05:03'),(77,343,'2006-02-15 05:05:03'),(77,442,'2006-02-15 05:05:03'),(77,458,'2006-02-15 05:05:03'),(77,538,'2006-02-15 05:05:03'),(77,566,'2006-02-15 05:05:03'),(77,612,'2006-02-15 05:05:03'),(77,635,'2006-02-15 05:05:03'),(77,694,'2006-02-15 05:05:03'),(77,749,'2006-02-15 05:05:03'),(77,938,'2006-02-15 05:05:03'),(77,943,'2006-02-15 05:05:03'),(77,963,'2006-02-15 05:05:03'),(77,969,'2006-02-15 05:05:03'),(77,993,'2006-02-15 05:05:03'),(78,86,'2006-02-15 05:05:03'),(78,239,'2006-02-15 05:05:03'),(78,260,'2006-02-15 05:05:03'),(78,261,'2006-02-15 05:05:03'),(78,265,'2006-02-15 05:05:03'),(78,301,'2006-02-15 05:05:03'),(78,387,'2006-02-15 05:05:03'),(78,393,'2006-02-15 05:05:03'),(78,428,'2006-02-15 05:05:03'),(78,457,'2006-02-15 05:05:03'),(78,505,'2006-02-15 05:05:03'),(78,520,'2006-02-15 05:05:03'),(78,530,'2006-02-15 05:05:03'),(78,549,'2006-02-15 05:05:03'),(78,552,'2006-02-15 05:05:03'),(78,599,'2006-02-15 05:05:03'),(78,670,'2006-02-15 05:05:03'),(78,674,'2006-02-15 05:05:03'),(78,689,'2006-02-15 05:05:03'),(78,762,'2006-02-15 05:05:03'),(78,767,'2006-02-15 05:05:03'),(78,811,'2006-02-15 05:05:03'),(78,852,'2006-02-15 05:05:03'),(78,880,'2006-02-15 05:05:03'),(78,963,'2006-02-15 05:05:03'),(78,968,'2006-02-15 05:05:03'),(79,32,'2006-02-15 05:05:03'),(79,33,'2006-02-15 05:05:03'),(79,40,'2006-02-15 05:05:03'),(79,141,'2006-02-15 05:05:03'),(79,205,'2006-02-15 05:05:03'),(79,230,'2006-02-15 05:05:03'),(79,242,'2006-02-15 05:05:03'),(79,262,'2006-02-15 05:05:03'),(79,267,'2006-02-15 05:05:03'),(79,269,'2006-02-15 05:05:03'),(79,299,'2006-02-15 05:05:03'),(79,367,'2006-02-15 05:05:03'),(79,428,'2006-02-15 05:05:03'),(79,430,'2006-02-15 05:05:03'),(79,473,'2006-02-15 05:05:03'),(79,607,'2006-02-15 05:05:03'),(79,628,'2006-02-15 05:05:03'),(79,634,'2006-02-15 05:05:03'),(79,646,'2006-02-15 05:05:03'),(79,727,'2006-02-15 05:05:03'),(79,750,'2006-02-15 05:05:03'),(79,753,'2006-02-15 05:05:03'),(79,769,'2006-02-15 05:05:03'),(79,776,'2006-02-15 05:05:03'),(79,788,'2006-02-15 05:05:03'),(79,840,'2006-02-15 05:05:03'),(79,853,'2006-02-15 05:05:03'),(79,916,'2006-02-15 05:05:03'),(80,69,'2006-02-15 05:05:03'),(80,118,'2006-02-15 05:05:03'),(80,124,'2006-02-15 05:05:03'),(80,175,'2006-02-15 05:05:03'),(80,207,'2006-02-15 05:05:03'),(80,212,'2006-02-15 05:05:03'),(80,260,'2006-02-15 05:05:03'),(80,262,'2006-02-15 05:05:03'),(80,280,'2006-02-15 05:05:03'),(80,341,'2006-02-15 05:05:03'),(80,342,'2006-02-15 05:05:03'),(80,343,'2006-02-15 05:05:03'),(80,362,'2006-02-15 05:05:03'),(80,436,'2006-02-15 05:05:03'),(80,475,'2006-02-15 05:05:03'),(80,553,'2006-02-15 05:05:03'),(80,619,'2006-02-15 05:05:03'),(80,622,'2006-02-15 05:05:03'),(80,680,'2006-02-15 05:05:03'),(80,687,'2006-02-15 05:05:03'),(80,688,'2006-02-15 05:05:03'),(80,709,'2006-02-15 05:05:03'),(80,788,'2006-02-15 05:05:03'),(80,807,'2006-02-15 05:05:03'),(80,858,'2006-02-15 05:05:03'),(80,888,'2006-02-15 05:05:03'),(80,941,'2006-02-15 05:05:03'),(80,979,'2006-02-15 05:05:03'),(81,4,'2006-02-15 05:05:03'),(81,11,'2006-02-15 05:05:03'),(81,59,'2006-02-15 05:05:03'),(81,89,'2006-02-15 05:05:03'),(81,178,'2006-02-15 05:05:03'),(81,186,'2006-02-15 05:05:03'),(81,194,'2006-02-15 05:05:03'),(81,215,'2006-02-15 05:05:03'),(81,219,'2006-02-15 05:05:03'),(81,232,'2006-02-15 05:05:03'),(81,260,'2006-02-15 05:05:03'),(81,267,'2006-02-15 05:05:03'),(81,268,'2006-02-15 05:05:03'),(81,304,'2006-02-15 05:05:03'),(81,332,'2006-02-15 05:05:03'),(81,389,'2006-02-15 05:05:03'),(81,398,'2006-02-15 05:05:03'),(81,453,'2006-02-15 05:05:03'),(81,458,'2006-02-15 05:05:03'),(81,465,'2006-02-15 05:05:03'),(81,505,'2006-02-15 05:05:03'),(81,508,'2006-02-15 05:05:03'),(81,527,'2006-02-15 05:05:03'),(81,545,'2006-02-15 05:05:03'),(81,564,'2006-02-15 05:05:03'),(81,578,'2006-02-15 05:05:03'),(81,579,'2006-02-15 05:05:03'),(81,613,'2006-02-15 05:05:03'),(81,619,'2006-02-15 05:05:03'),(81,643,'2006-02-15 05:05:03'),(81,692,'2006-02-15 05:05:03'),(81,710,'2006-02-15 05:05:03'),(81,729,'2006-02-15 05:05:03'),(81,761,'2006-02-15 05:05:03'),(81,827,'2006-02-15 05:05:03'),(81,910,'2006-02-15 05:05:03'),(82,17,'2006-02-15 05:05:03'),(82,33,'2006-02-15 05:05:03'),(82,104,'2006-02-15 05:05:03'),(82,143,'2006-02-15 05:05:03'),(82,188,'2006-02-15 05:05:03'),(82,242,'2006-02-15 05:05:03'),(82,247,'2006-02-15 05:05:03'),(82,290,'2006-02-15 05:05:03'),(82,306,'2006-02-15 05:05:03'),(82,316,'2006-02-15 05:05:03'),(82,344,'2006-02-15 05:05:03'),(82,453,'2006-02-15 05:05:03'),(82,468,'2006-02-15 05:05:03'),(82,480,'2006-02-15 05:05:03'),(82,497,'2006-02-15 05:05:03'),(82,503,'2006-02-15 05:05:03'),(82,527,'2006-02-15 05:05:03'),(82,551,'2006-02-15 05:05:03'),(82,561,'2006-02-15 05:05:03'),(82,750,'2006-02-15 05:05:03'),(82,787,'2006-02-15 05:05:03'),(82,802,'2006-02-15 05:05:03'),(82,838,'2006-02-15 05:05:03'),(82,839,'2006-02-15 05:05:03'),(82,870,'2006-02-15 05:05:03'),(82,877,'2006-02-15 05:05:03'),(82,893,'2006-02-15 05:05:03'),(82,911,'2006-02-15 05:05:03'),(82,954,'2006-02-15 05:05:03'),(82,978,'2006-02-15 05:05:03'),(82,985,'2006-02-15 05:05:03'),(83,49,'2006-02-15 05:05:03'),(83,52,'2006-02-15 05:05:03'),(83,58,'2006-02-15 05:05:03'),(83,110,'2006-02-15 05:05:03'),(83,120,'2006-02-15 05:05:03'),(83,121,'2006-02-15 05:05:03'),(83,135,'2006-02-15 05:05:03'),(83,165,'2006-02-15 05:05:03'),(83,217,'2006-02-15 05:05:03'),(83,247,'2006-02-15 05:05:03'),(83,249,'2006-02-15 05:05:03'),(83,263,'2006-02-15 05:05:03'),(83,268,'2006-02-15 05:05:03'),(83,279,'2006-02-15 05:05:03'),(83,281,'2006-02-15 05:05:03'),(83,339,'2006-02-15 05:05:03'),(83,340,'2006-02-15 05:05:03'),(83,369,'2006-02-15 05:05:03'),(83,412,'2006-02-15 05:05:03'),(83,519,'2006-02-15 05:05:03'),(83,529,'2006-02-15 05:05:03'),(83,615,'2006-02-15 05:05:03'),(83,631,'2006-02-15 05:05:03'),(83,655,'2006-02-15 05:05:03'),(83,672,'2006-02-15 05:05:03'),(83,686,'2006-02-15 05:05:03'),(83,719,'2006-02-15 05:05:03'),(83,764,'2006-02-15 05:05:03'),(83,777,'2006-02-15 05:05:03'),(83,784,'2006-02-15 05:05:03'),(83,833,'2006-02-15 05:05:03'),(83,873,'2006-02-15 05:05:03'),(83,932,'2006-02-15 05:05:03'),(84,19,'2006-02-15 05:05:03'),(84,39,'2006-02-15 05:05:03'),(84,46,'2006-02-15 05:05:03'),(84,175,'2006-02-15 05:05:03'),(84,238,'2006-02-15 05:05:03'),(84,281,'2006-02-15 05:05:03'),(84,290,'2006-02-15 05:05:03'),(84,312,'2006-02-15 05:05:03'),(84,317,'2006-02-15 05:05:03'),(84,413,'2006-02-15 05:05:03'),(84,414,'2006-02-15 05:05:03'),(84,460,'2006-02-15 05:05:03'),(84,479,'2006-02-15 05:05:03'),(84,491,'2006-02-15 05:05:03'),(84,529,'2006-02-15 05:05:03'),(84,540,'2006-02-15 05:05:03'),(84,566,'2006-02-15 05:05:03'),(84,574,'2006-02-15 05:05:03'),(84,589,'2006-02-15 05:05:03'),(84,616,'2006-02-15 05:05:03'),(84,646,'2006-02-15 05:05:03'),(84,703,'2006-02-15 05:05:03'),(84,729,'2006-02-15 05:05:03'),(84,764,'2006-02-15 05:05:03'),(84,782,'2006-02-15 05:05:03'),(84,809,'2006-02-15 05:05:03'),(84,830,'2006-02-15 05:05:03'),(84,843,'2006-02-15 05:05:03'),(84,887,'2006-02-15 05:05:03'),(84,975,'2006-02-15 05:05:03'),(84,996,'2006-02-15 05:05:03'),(85,2,'2006-02-15 05:05:03'),(85,14,'2006-02-15 05:05:03'),(85,72,'2006-02-15 05:05:03'),(85,85,'2006-02-15 05:05:03'),(85,92,'2006-02-15 05:05:03'),(85,148,'2006-02-15 05:05:03'),(85,216,'2006-02-15 05:05:03'),(85,290,'2006-02-15 05:05:03'),(85,296,'2006-02-15 05:05:03'),(85,297,'2006-02-15 05:05:03'),(85,337,'2006-02-15 05:05:03'),(85,383,'2006-02-15 05:05:03'),(85,421,'2006-02-15 05:05:03'),(85,446,'2006-02-15 05:05:03'),(85,461,'2006-02-15 05:05:03'),(85,475,'2006-02-15 05:05:03'),(85,478,'2006-02-15 05:05:03'),(85,522,'2006-02-15 05:05:03'),(85,543,'2006-02-15 05:05:03'),(85,558,'2006-02-15 05:05:03'),(85,591,'2006-02-15 05:05:03'),(85,630,'2006-02-15 05:05:03'),(85,678,'2006-02-15 05:05:03'),(85,711,'2006-02-15 05:05:03'),(85,761,'2006-02-15 05:05:03'),(85,812,'2006-02-15 05:05:03'),(85,869,'2006-02-15 05:05:03'),(85,875,'2006-02-15 05:05:03'),(85,895,'2006-02-15 05:05:03'),(85,957,'2006-02-15 05:05:03'),(85,960,'2006-02-15 05:05:03'),(86,137,'2006-02-15 05:05:03'),(86,163,'2006-02-15 05:05:03'),(86,196,'2006-02-15 05:05:03'),(86,216,'2006-02-15 05:05:03'),(86,249,'2006-02-15 05:05:03'),(86,303,'2006-02-15 05:05:03'),(86,331,'2006-02-15 05:05:03'),(86,364,'2006-02-15 05:05:03'),(86,391,'2006-02-15 05:05:03'),(86,432,'2006-02-15 05:05:03'),(86,482,'2006-02-15 05:05:03'),(86,486,'2006-02-15 05:05:03'),(86,519,'2006-02-15 05:05:03'),(86,520,'2006-02-15 05:05:03'),(86,548,'2006-02-15 05:05:03'),(86,623,'2006-02-15 05:05:03'),(86,631,'2006-02-15 05:05:03'),(86,636,'2006-02-15 05:05:03'),(86,752,'2006-02-15 05:05:03'),(86,760,'2006-02-15 05:05:03'),(86,808,'2006-02-15 05:05:03'),(86,857,'2006-02-15 05:05:03'),(86,878,'2006-02-15 05:05:03'),(86,893,'2006-02-15 05:05:03'),(86,905,'2006-02-15 05:05:03'),(86,923,'2006-02-15 05:05:03'),(86,929,'2006-02-15 05:05:03'),(87,48,'2006-02-15 05:05:03'),(87,157,'2006-02-15 05:05:03'),(87,161,'2006-02-15 05:05:03'),(87,199,'2006-02-15 05:05:03'),(87,207,'2006-02-15 05:05:03'),(87,250,'2006-02-15 05:05:03'),(87,253,'2006-02-15 05:05:03'),(87,312,'2006-02-15 05:05:03'),(87,421,'2006-02-15 05:05:03'),(87,570,'2006-02-15 05:05:03'),(87,599,'2006-02-15 05:05:03'),(87,606,'2006-02-15 05:05:03'),(87,654,'2006-02-15 05:05:03'),(87,679,'2006-02-15 05:05:03'),(87,706,'2006-02-15 05:05:03'),(87,718,'2006-02-15 05:05:03'),(87,721,'2006-02-15 05:05:03'),(87,830,'2006-02-15 05:05:03'),(87,870,'2006-02-15 05:05:03'),(87,952,'2006-02-15 05:05:03'),(87,961,'2006-02-15 05:05:03'),(88,4,'2006-02-15 05:05:03'),(88,76,'2006-02-15 05:05:03'),(88,87,'2006-02-15 05:05:03'),(88,128,'2006-02-15 05:05:03'),(88,170,'2006-02-15 05:05:03'),(88,193,'2006-02-15 05:05:03'),(88,234,'2006-02-15 05:05:03'),(88,304,'2006-02-15 05:05:03'),(88,602,'2006-02-15 05:05:03'),(88,620,'2006-02-15 05:05:03'),(88,668,'2006-02-15 05:05:03'),(88,717,'2006-02-15 05:05:03'),(88,785,'2006-02-15 05:05:03'),(88,819,'2006-02-15 05:05:03'),(88,839,'2006-02-15 05:05:03'),(88,881,'2006-02-15 05:05:03'),(88,908,'2006-02-15 05:05:03'),(88,929,'2006-02-15 05:05:03'),(88,940,'2006-02-15 05:05:03'),(88,968,'2006-02-15 05:05:03'),(89,47,'2006-02-15 05:05:03'),(89,103,'2006-02-15 05:05:03'),(89,117,'2006-02-15 05:05:03'),(89,162,'2006-02-15 05:05:03'),(89,182,'2006-02-15 05:05:03'),(89,187,'2006-02-15 05:05:03'),(89,212,'2006-02-15 05:05:03'),(89,254,'2006-02-15 05:05:03'),(89,266,'2006-02-15 05:05:03'),(89,306,'2006-02-15 05:05:03'),(89,342,'2006-02-15 05:05:03'),(89,406,'2006-02-15 05:05:03'),(89,410,'2006-02-15 05:05:03'),(89,446,'2006-02-15 05:05:03'),(89,473,'2006-02-15 05:05:03'),(89,488,'2006-02-15 05:05:03'),(89,529,'2006-02-15 05:05:03'),(89,542,'2006-02-15 05:05:03'),(89,564,'2006-02-15 05:05:03'),(89,697,'2006-02-15 05:05:03'),(89,833,'2006-02-15 05:05:03'),(89,864,'2006-02-15 05:05:03'),(89,970,'2006-02-15 05:05:03'),(89,976,'2006-02-15 05:05:03'),(90,2,'2006-02-15 05:05:03'),(90,11,'2006-02-15 05:05:03'),(90,100,'2006-02-15 05:05:03'),(90,197,'2006-02-15 05:05:03'),(90,212,'2006-02-15 05:05:03'),(90,262,'2006-02-15 05:05:03'),(90,303,'2006-02-15 05:05:03'),(90,330,'2006-02-15 05:05:03'),(90,363,'2006-02-15 05:05:03'),(90,374,'2006-02-15 05:05:03'),(90,384,'2006-02-15 05:05:03'),(90,385,'2006-02-15 05:05:03'),(90,391,'2006-02-15 05:05:03'),(90,406,'2006-02-15 05:05:03'),(90,433,'2006-02-15 05:05:03'),(90,442,'2006-02-15 05:05:03'),(90,451,'2006-02-15 05:05:03'),(90,520,'2006-02-15 05:05:03'),(90,529,'2006-02-15 05:05:03'),(90,542,'2006-02-15 05:05:03'),(90,586,'2006-02-15 05:05:03'),(90,633,'2006-02-15 05:05:03'),(90,663,'2006-02-15 05:05:03'),(90,676,'2006-02-15 05:05:03'),(90,771,'2006-02-15 05:05:03'),(90,817,'2006-02-15 05:05:03'),(90,838,'2006-02-15 05:05:03'),(90,855,'2006-02-15 05:05:03'),(90,858,'2006-02-15 05:05:03'),(90,868,'2006-02-15 05:05:03'),(90,880,'2006-02-15 05:05:03'),(90,901,'2006-02-15 05:05:03'),(90,925,'2006-02-15 05:05:03'),(91,13,'2006-02-15 05:05:03'),(91,25,'2006-02-15 05:05:03'),(91,48,'2006-02-15 05:05:03'),(91,176,'2006-02-15 05:05:03'),(91,181,'2006-02-15 05:05:03'),(91,190,'2006-02-15 05:05:03'),(91,335,'2006-02-15 05:05:03'),(91,416,'2006-02-15 05:05:03'),(91,447,'2006-02-15 05:05:03'),(91,480,'2006-02-15 05:05:03'),(91,493,'2006-02-15 05:05:03'),(91,509,'2006-02-15 05:05:03'),(91,511,'2006-02-15 05:05:03'),(91,608,'2006-02-15 05:05:03'),(91,807,'2006-02-15 05:05:03'),(91,829,'2006-02-15 05:05:03'),(91,849,'2006-02-15 05:05:03'),(91,859,'2006-02-15 05:05:03'),(91,941,'2006-02-15 05:05:03'),(91,982,'2006-02-15 05:05:03'),(92,90,'2006-02-15 05:05:03'),(92,94,'2006-02-15 05:05:03'),(92,103,'2006-02-15 05:05:03'),(92,104,'2006-02-15 05:05:03'),(92,123,'2006-02-15 05:05:03'),(92,137,'2006-02-15 05:05:03'),(92,207,'2006-02-15 05:05:03'),(92,229,'2006-02-15 05:05:03'),(92,338,'2006-02-15 05:05:03'),(92,381,'2006-02-15 05:05:03'),(92,436,'2006-02-15 05:05:03'),(92,443,'2006-02-15 05:05:03'),(92,453,'2006-02-15 05:05:03'),(92,470,'2006-02-15 05:05:03'),(92,505,'2006-02-15 05:05:03'),(92,512,'2006-02-15 05:05:03'),(92,543,'2006-02-15 05:05:03'),(92,545,'2006-02-15 05:05:03'),(92,547,'2006-02-15 05:05:03'),(92,553,'2006-02-15 05:05:03'),(92,564,'2006-02-15 05:05:03'),(92,568,'2006-02-15 05:05:03'),(92,618,'2006-02-15 05:05:03'),(92,662,'2006-02-15 05:05:03'),(92,686,'2006-02-15 05:05:03'),(92,699,'2006-02-15 05:05:03'),(92,712,'2006-02-15 05:05:03'),(92,728,'2006-02-15 05:05:03'),(92,802,'2006-02-15 05:05:03'),(92,825,'2006-02-15 05:05:03'),(92,838,'2006-02-15 05:05:03'),(92,889,'2006-02-15 05:05:03'),(92,929,'2006-02-15 05:05:03'),(92,991,'2006-02-15 05:05:03'),(93,71,'2006-02-15 05:05:03'),(93,120,'2006-02-15 05:05:03'),(93,124,'2006-02-15 05:05:03'),(93,280,'2006-02-15 05:05:03'),(93,325,'2006-02-15 05:05:03'),(93,339,'2006-02-15 05:05:03'),(93,427,'2006-02-15 05:05:03'),(93,445,'2006-02-15 05:05:03'),(93,453,'2006-02-15 05:05:03'),(93,473,'2006-02-15 05:05:03'),(93,573,'2006-02-15 05:05:03'),(93,621,'2006-02-15 05:05:03'),(93,644,'2006-02-15 05:05:03'),(93,678,'2006-02-15 05:05:03'),(93,680,'2006-02-15 05:05:03'),(93,699,'2006-02-15 05:05:03'),(93,744,'2006-02-15 05:05:03'),(93,768,'2006-02-15 05:05:03'),(93,777,'2006-02-15 05:05:03'),(93,835,'2006-02-15 05:05:03'),(93,856,'2006-02-15 05:05:03'),(93,874,'2006-02-15 05:05:03'),(93,909,'2006-02-15 05:05:03'),(93,916,'2006-02-15 05:05:03'),(93,982,'2006-02-15 05:05:03'),(94,13,'2006-02-15 05:05:03'),(94,60,'2006-02-15 05:05:03'),(94,76,'2006-02-15 05:05:03'),(94,122,'2006-02-15 05:05:03'),(94,153,'2006-02-15 05:05:03'),(94,193,'2006-02-15 05:05:03'),(94,206,'2006-02-15 05:05:03'),(94,228,'2006-02-15 05:05:03'),(94,270,'2006-02-15 05:05:03'),(94,275,'2006-02-15 05:05:03'),(94,320,'2006-02-15 05:05:03'),(94,322,'2006-02-15 05:05:03'),(94,337,'2006-02-15 05:05:03'),(94,354,'2006-02-15 05:05:03'),(94,402,'2006-02-15 05:05:03'),(94,428,'2006-02-15 05:05:03'),(94,457,'2006-02-15 05:05:03'),(94,473,'2006-02-15 05:05:03'),(94,475,'2006-02-15 05:05:03'),(94,512,'2006-02-15 05:05:03'),(94,517,'2006-02-15 05:05:03'),(94,521,'2006-02-15 05:05:03'),(94,533,'2006-02-15 05:05:03'),(94,540,'2006-02-15 05:05:03'),(94,548,'2006-02-15 05:05:03'),(94,551,'2006-02-15 05:05:03'),(94,712,'2006-02-15 05:05:03'),(94,713,'2006-02-15 05:05:03'),(94,724,'2006-02-15 05:05:03'),(94,775,'2006-02-15 05:05:03'),(94,788,'2006-02-15 05:05:03'),(94,950,'2006-02-15 05:05:03'),(94,989,'2006-02-15 05:05:03'),(95,22,'2006-02-15 05:05:03'),(95,35,'2006-02-15 05:05:03'),(95,47,'2006-02-15 05:05:03'),(95,52,'2006-02-15 05:05:03'),(95,65,'2006-02-15 05:05:03'),(95,74,'2006-02-15 05:05:03'),(95,126,'2006-02-15 05:05:03'),(95,207,'2006-02-15 05:05:03'),(95,245,'2006-02-15 05:05:03'),(95,294,'2006-02-15 05:05:03'),(95,301,'2006-02-15 05:05:03'),(95,312,'2006-02-15 05:05:03'),(95,329,'2006-02-15 05:05:03'),(95,353,'2006-02-15 05:05:03'),(95,375,'2006-02-15 05:05:03'),(95,420,'2006-02-15 05:05:03'),(95,424,'2006-02-15 05:05:03'),(95,431,'2006-02-15 05:05:03'),(95,498,'2006-02-15 05:05:03'),(95,522,'2006-02-15 05:05:03'),(95,546,'2006-02-15 05:05:03'),(95,551,'2006-02-15 05:05:03'),(95,619,'2006-02-15 05:05:03'),(95,627,'2006-02-15 05:05:03'),(95,690,'2006-02-15 05:05:03'),(95,748,'2006-02-15 05:05:03'),(95,813,'2006-02-15 05:05:03'),(95,828,'2006-02-15 05:05:03'),(95,855,'2006-02-15 05:05:03'),(95,903,'2006-02-15 05:05:03'),(95,923,'2006-02-15 05:05:03'),(96,8,'2006-02-15 05:05:03'),(96,36,'2006-02-15 05:05:03'),(96,40,'2006-02-15 05:05:03'),(96,54,'2006-02-15 05:05:03'),(96,58,'2006-02-15 05:05:03'),(96,66,'2006-02-15 05:05:03'),(96,134,'2006-02-15 05:05:03'),(96,209,'2006-02-15 05:05:03'),(96,244,'2006-02-15 05:05:03'),(96,320,'2006-02-15 05:05:03'),(96,430,'2006-02-15 05:05:03'),(96,452,'2006-02-15 05:05:03'),(96,486,'2006-02-15 05:05:03'),(96,572,'2006-02-15 05:05:03'),(96,590,'2006-02-15 05:05:03'),(96,661,'2006-02-15 05:05:03'),(96,778,'2006-02-15 05:05:03'),(96,832,'2006-02-15 05:05:03'),(96,846,'2006-02-15 05:05:03'),(96,874,'2006-02-15 05:05:03'),(96,945,'2006-02-15 05:05:03'),(96,968,'2006-02-15 05:05:03'),(96,987,'2006-02-15 05:05:03'),(97,143,'2006-02-15 05:05:03'),(97,177,'2006-02-15 05:05:03'),(97,188,'2006-02-15 05:05:03'),(97,197,'2006-02-15 05:05:03'),(97,256,'2006-02-15 05:05:03'),(97,312,'2006-02-15 05:05:03'),(97,342,'2006-02-15 05:05:03'),(97,348,'2006-02-15 05:05:03'),(97,358,'2006-02-15 05:05:03'),(97,370,'2006-02-15 05:05:03'),(97,437,'2006-02-15 05:05:03'),(97,446,'2006-02-15 05:05:03'),(97,466,'2006-02-15 05:05:03'),(97,518,'2006-02-15 05:05:03'),(97,553,'2006-02-15 05:05:03'),(97,561,'2006-02-15 05:05:03'),(97,641,'2006-02-15 05:05:03'),(97,656,'2006-02-15 05:05:03'),(97,728,'2006-02-15 05:05:03'),(97,755,'2006-02-15 05:05:03'),(97,757,'2006-02-15 05:05:03'),(97,826,'2006-02-15 05:05:03'),(97,862,'2006-02-15 05:05:03'),(97,930,'2006-02-15 05:05:03'),(97,933,'2006-02-15 05:05:03'),(97,947,'2006-02-15 05:05:03'),(97,951,'2006-02-15 05:05:03'),(98,66,'2006-02-15 05:05:03'),(98,72,'2006-02-15 05:05:03'),(98,81,'2006-02-15 05:05:03'),(98,87,'2006-02-15 05:05:03'),(98,107,'2006-02-15 05:05:03'),(98,120,'2006-02-15 05:05:03'),(98,183,'2006-02-15 05:05:03'),(98,194,'2006-02-15 05:05:03'),(98,212,'2006-02-15 05:05:03'),(98,297,'2006-02-15 05:05:03'),(98,607,'2006-02-15 05:05:03'),(98,634,'2006-02-15 05:05:03'),(98,686,'2006-02-15 05:05:03'),(98,705,'2006-02-15 05:05:03'),(98,710,'2006-02-15 05:05:03'),(98,721,'2006-02-15 05:05:03'),(98,725,'2006-02-15 05:05:03'),(98,734,'2006-02-15 05:05:03'),(98,738,'2006-02-15 05:05:03'),(98,765,'2006-02-15 05:05:03'),(98,782,'2006-02-15 05:05:03'),(98,824,'2006-02-15 05:05:03'),(98,829,'2006-02-15 05:05:03'),(98,912,'2006-02-15 05:05:03'),(98,955,'2006-02-15 05:05:03'),(98,985,'2006-02-15 05:05:03'),(98,990,'2006-02-15 05:05:03'),(99,7,'2006-02-15 05:05:03'),(99,27,'2006-02-15 05:05:03'),(99,84,'2006-02-15 05:05:03'),(99,250,'2006-02-15 05:05:03'),(99,322,'2006-02-15 05:05:03'),(99,325,'2006-02-15 05:05:03'),(99,381,'2006-02-15 05:05:03'),(99,414,'2006-02-15 05:05:03'),(99,475,'2006-02-15 05:05:03'),(99,490,'2006-02-15 05:05:03'),(99,512,'2006-02-15 05:05:03'),(99,540,'2006-02-15 05:05:03'),(99,572,'2006-02-15 05:05:03'),(99,600,'2006-02-15 05:05:03'),(99,618,'2006-02-15 05:05:03'),(99,620,'2006-02-15 05:05:03'),(99,622,'2006-02-15 05:05:03'),(99,636,'2006-02-15 05:05:03'),(99,672,'2006-02-15 05:05:03'),(99,726,'2006-02-15 05:05:03'),(99,741,'2006-02-15 05:05:03'),(99,796,'2006-02-15 05:05:03'),(99,835,'2006-02-15 05:05:03'),(99,967,'2006-02-15 05:05:03'),(99,978,'2006-02-15 05:05:03'),(99,982,'2006-02-15 05:05:03'),(100,17,'2006-02-15 05:05:03'),(100,118,'2006-02-15 05:05:03'),(100,250,'2006-02-15 05:05:03'),(100,411,'2006-02-15 05:05:03'),(100,414,'2006-02-15 05:05:03'),(100,513,'2006-02-15 05:05:03'),(100,563,'2006-02-15 05:05:03'),(100,642,'2006-02-15 05:05:03'),(100,714,'2006-02-15 05:05:03'),(100,718,'2006-02-15 05:05:03'),(100,759,'2006-02-15 05:05:03'),(100,779,'2006-02-15 05:05:03'),(100,815,'2006-02-15 05:05:03'),(100,846,'2006-02-15 05:05:03'),(100,850,'2006-02-15 05:05:03'),(100,872,'2006-02-15 05:05:03'),(100,877,'2006-02-15 05:05:03'),(100,909,'2006-02-15 05:05:03'),(100,919,'2006-02-15 05:05:03'),(100,944,'2006-02-15 05:05:03'),(100,967,'2006-02-15 05:05:03'),(100,979,'2006-02-15 05:05:03'),(100,991,'2006-02-15 05:05:03'),(100,992,'2006-02-15 05:05:03'),(101,60,'2006-02-15 05:05:03'),(101,66,'2006-02-15 05:05:03'),(101,85,'2006-02-15 05:05:03'),(101,146,'2006-02-15 05:05:03'),(101,189,'2006-02-15 05:05:03'),(101,250,'2006-02-15 05:05:03'),(101,255,'2006-02-15 05:05:03'),(101,263,'2006-02-15 05:05:03'),(101,275,'2006-02-15 05:05:03'),(101,289,'2006-02-15 05:05:03'),(101,491,'2006-02-15 05:05:03'),(101,494,'2006-02-15 05:05:03'),(101,511,'2006-02-15 05:05:03'),(101,568,'2006-02-15 05:05:03'),(101,608,'2006-02-15 05:05:03'),(101,617,'2006-02-15 05:05:03'),(101,655,'2006-02-15 05:05:03'),(101,662,'2006-02-15 05:05:03'),(101,700,'2006-02-15 05:05:03'),(101,702,'2006-02-15 05:05:03'),(101,758,'2006-02-15 05:05:03'),(101,774,'2006-02-15 05:05:03'),(101,787,'2006-02-15 05:05:03'),(101,828,'2006-02-15 05:05:03'),(101,841,'2006-02-15 05:05:03'),(101,928,'2006-02-15 05:05:03'),(101,932,'2006-02-15 05:05:03'),(101,936,'2006-02-15 05:05:03'),(101,941,'2006-02-15 05:05:03'),(101,978,'2006-02-15 05:05:03'),(101,980,'2006-02-15 05:05:03'),(101,984,'2006-02-15 05:05:03'),(101,988,'2006-02-15 05:05:03'),(102,20,'2006-02-15 05:05:03'),(102,34,'2006-02-15 05:05:03'),(102,53,'2006-02-15 05:05:03'),(102,123,'2006-02-15 05:05:03'),(102,124,'2006-02-15 05:05:03'),(102,194,'2006-02-15 05:05:03'),(102,200,'2006-02-15 05:05:03'),(102,205,'2006-02-15 05:05:03'),(102,268,'2006-02-15 05:05:03'),(102,326,'2006-02-15 05:05:03'),(102,329,'2006-02-15 05:05:03'),(102,334,'2006-02-15 05:05:03'),(102,351,'2006-02-15 05:05:03'),(102,418,'2006-02-15 05:05:03'),(102,431,'2006-02-15 05:05:03'),(102,446,'2006-02-15 05:05:03'),(102,485,'2006-02-15 05:05:03'),(102,508,'2006-02-15 05:05:03'),(102,517,'2006-02-15 05:05:03'),(102,521,'2006-02-15 05:05:03'),(102,526,'2006-02-15 05:05:03'),(102,529,'2006-02-15 05:05:03'),(102,544,'2006-02-15 05:05:03'),(102,600,'2006-02-15 05:05:03'),(102,605,'2006-02-15 05:05:03'),(102,606,'2006-02-15 05:05:03'),(102,624,'2006-02-15 05:05:03'),(102,631,'2006-02-15 05:05:03'),(102,712,'2006-02-15 05:05:03'),(102,728,'2006-02-15 05:05:03'),(102,744,'2006-02-15 05:05:03'),(102,796,'2006-02-15 05:05:03'),(102,802,'2006-02-15 05:05:03'),(102,810,'2006-02-15 05:05:03'),(102,828,'2006-02-15 05:05:03'),(102,837,'2006-02-15 05:05:03'),(102,845,'2006-02-15 05:05:03'),(102,852,'2006-02-15 05:05:03'),(102,958,'2006-02-15 05:05:03'),(102,979,'2006-02-15 05:05:03'),(102,980,'2006-02-15 05:05:03'),(103,5,'2006-02-15 05:05:03'),(103,118,'2006-02-15 05:05:03'),(103,130,'2006-02-15 05:05:03'),(103,197,'2006-02-15 05:05:03'),(103,199,'2006-02-15 05:05:03'),(103,206,'2006-02-15 05:05:03'),(103,215,'2006-02-15 05:05:03'),(103,221,'2006-02-15 05:05:03'),(103,271,'2006-02-15 05:05:03'),(103,285,'2006-02-15 05:05:03'),(103,315,'2006-02-15 05:05:03'),(103,318,'2006-02-15 05:05:03'),(103,333,'2006-02-15 05:05:03'),(103,347,'2006-02-15 05:05:03'),(103,356,'2006-02-15 05:05:03'),(103,360,'2006-02-15 05:05:03'),(103,378,'2006-02-15 05:05:03'),(103,437,'2006-02-15 05:05:03'),(103,585,'2006-02-15 05:05:03'),(103,609,'2006-02-15 05:05:03'),(103,639,'2006-02-15 05:05:03'),(103,643,'2006-02-15 05:05:03'),(103,692,'2006-02-15 05:05:03'),(103,735,'2006-02-15 05:05:03'),(103,822,'2006-02-15 05:05:03'),(103,895,'2006-02-15 05:05:03'),(103,903,'2006-02-15 05:05:03'),(103,912,'2006-02-15 05:05:03'),(103,942,'2006-02-15 05:05:03'),(103,956,'2006-02-15 05:05:03'),(104,19,'2006-02-15 05:05:03'),(104,39,'2006-02-15 05:05:03'),(104,40,'2006-02-15 05:05:03'),(104,59,'2006-02-15 05:05:03'),(104,70,'2006-02-15 05:05:03'),(104,136,'2006-02-15 05:05:03'),(104,156,'2006-02-15 05:05:03'),(104,184,'2006-02-15 05:05:03'),(104,198,'2006-02-15 05:05:03'),(104,233,'2006-02-15 05:05:03'),(104,259,'2006-02-15 05:05:03'),(104,287,'2006-02-15 05:05:03'),(104,309,'2006-02-15 05:05:03'),(104,313,'2006-02-15 05:05:03'),(104,394,'2006-02-15 05:05:03'),(104,401,'2006-02-15 05:05:03'),(104,463,'2006-02-15 05:05:03'),(104,506,'2006-02-15 05:05:03'),(104,516,'2006-02-15 05:05:03'),(104,583,'2006-02-15 05:05:03'),(104,600,'2006-02-15 05:05:03'),(104,607,'2006-02-15 05:05:03'),(104,657,'2006-02-15 05:05:03'),(104,677,'2006-02-15 05:05:03'),(104,739,'2006-02-15 05:05:03'),(104,892,'2006-02-15 05:05:03'),(104,904,'2006-02-15 05:05:03'),(104,926,'2006-02-15 05:05:03'),(104,945,'2006-02-15 05:05:03'),(104,984,'2006-02-15 05:05:03'),(104,999,'2006-02-15 05:05:03'),(105,12,'2006-02-15 05:05:03'),(105,15,'2006-02-15 05:05:03'),(105,21,'2006-02-15 05:05:03'),(105,29,'2006-02-15 05:05:03'),(105,42,'2006-02-15 05:05:03'),(105,116,'2006-02-15 05:05:03'),(105,158,'2006-02-15 05:05:03'),(105,239,'2006-02-15 05:05:03'),(105,280,'2006-02-15 05:05:03'),(105,283,'2006-02-15 05:05:03'),(105,315,'2006-02-15 05:05:03'),(105,333,'2006-02-15 05:05:03'),(105,372,'2006-02-15 05:05:03'),(105,377,'2006-02-15 05:05:03'),(105,530,'2006-02-15 05:05:03'),(105,558,'2006-02-15 05:05:03'),(105,561,'2006-02-15 05:05:03'),(105,606,'2006-02-15 05:05:03'),(105,649,'2006-02-15 05:05:03'),(105,686,'2006-02-15 05:05:03'),(105,750,'2006-02-15 05:05:03'),(105,795,'2006-02-15 05:05:03'),(105,831,'2006-02-15 05:05:03'),(105,835,'2006-02-15 05:05:03'),(105,858,'2006-02-15 05:05:03'),(105,864,'2006-02-15 05:05:03'),(105,893,'2006-02-15 05:05:03'),(105,906,'2006-02-15 05:05:03'),(105,910,'2006-02-15 05:05:03'),(105,915,'2006-02-15 05:05:03'),(105,954,'2006-02-15 05:05:03'),(105,990,'2006-02-15 05:05:03'),(105,993,'2006-02-15 05:05:03'),(105,994,'2006-02-15 05:05:03'),(106,44,'2006-02-15 05:05:03'),(106,83,'2006-02-15 05:05:03'),(106,108,'2006-02-15 05:05:03'),(106,126,'2006-02-15 05:05:03'),(106,136,'2006-02-15 05:05:03'),(106,166,'2006-02-15 05:05:03'),(106,189,'2006-02-15 05:05:03'),(106,194,'2006-02-15 05:05:03'),(106,204,'2006-02-15 05:05:03'),(106,229,'2006-02-15 05:05:03'),(106,241,'2006-02-15 05:05:03'),(106,345,'2006-02-15 05:05:03'),(106,365,'2006-02-15 05:05:03'),(106,399,'2006-02-15 05:05:03'),(106,439,'2006-02-15 05:05:03'),(106,457,'2006-02-15 05:05:03'),(106,469,'2006-02-15 05:05:03'),(106,500,'2006-02-15 05:05:03'),(106,505,'2006-02-15 05:05:03'),(106,559,'2006-02-15 05:05:03'),(106,566,'2006-02-15 05:05:03'),(106,585,'2006-02-15 05:05:03'),(106,639,'2006-02-15 05:05:03'),(106,654,'2006-02-15 05:05:03'),(106,659,'2006-02-15 05:05:03'),(106,675,'2006-02-15 05:05:03'),(106,687,'2006-02-15 05:05:03'),(106,752,'2006-02-15 05:05:03'),(106,763,'2006-02-15 05:05:03'),(106,780,'2006-02-15 05:05:03'),(106,858,'2006-02-15 05:05:03'),(106,866,'2006-02-15 05:05:03'),(106,881,'2006-02-15 05:05:03'),(106,894,'2006-02-15 05:05:03'),(106,934,'2006-02-15 05:05:03'),(107,62,'2006-02-15 05:05:03'),(107,112,'2006-02-15 05:05:03'),(107,133,'2006-02-15 05:05:03'),(107,136,'2006-02-15 05:05:03'),(107,138,'2006-02-15 05:05:03'),(107,162,'2006-02-15 05:05:03'),(107,165,'2006-02-15 05:05:03'),(107,172,'2006-02-15 05:05:03'),(107,209,'2006-02-15 05:05:03'),(107,220,'2006-02-15 05:05:03'),(107,239,'2006-02-15 05:05:03'),(107,277,'2006-02-15 05:05:03'),(107,292,'2006-02-15 05:05:03'),(107,338,'2006-02-15 05:05:03'),(107,348,'2006-02-15 05:05:03'),(107,369,'2006-02-15 05:05:03'),(107,388,'2006-02-15 05:05:03'),(107,392,'2006-02-15 05:05:03'),(107,409,'2006-02-15 05:05:03'),(107,430,'2006-02-15 05:05:03'),(107,445,'2006-02-15 05:05:03'),(107,454,'2006-02-15 05:05:03'),(107,458,'2006-02-15 05:05:03'),(107,467,'2006-02-15 05:05:03'),(107,520,'2006-02-15 05:05:03'),(107,534,'2006-02-15 05:05:03'),(107,548,'2006-02-15 05:05:03'),(107,571,'2006-02-15 05:05:03'),(107,574,'2006-02-15 05:05:03'),(107,603,'2006-02-15 05:05:03'),(107,606,'2006-02-15 05:05:03'),(107,637,'2006-02-15 05:05:03'),(107,774,'2006-02-15 05:05:03'),(107,781,'2006-02-15 05:05:03'),(107,796,'2006-02-15 05:05:03'),(107,831,'2006-02-15 05:05:03'),(107,849,'2006-02-15 05:05:03'),(107,859,'2006-02-15 05:05:03'),(107,879,'2006-02-15 05:05:03'),(107,905,'2006-02-15 05:05:03'),(107,973,'2006-02-15 05:05:03'),(107,977,'2006-02-15 05:05:03'),(108,1,'2006-02-15 05:05:03'),(108,6,'2006-02-15 05:05:03'),(108,9,'2006-02-15 05:05:03'),(108,137,'2006-02-15 05:05:03'),(108,208,'2006-02-15 05:05:03'),(108,219,'2006-02-15 05:05:03'),(108,242,'2006-02-15 05:05:03'),(108,278,'2006-02-15 05:05:03'),(108,302,'2006-02-15 05:05:03'),(108,350,'2006-02-15 05:05:03'),(108,378,'2006-02-15 05:05:03'),(108,379,'2006-02-15 05:05:03'),(108,495,'2006-02-15 05:05:03'),(108,507,'2006-02-15 05:05:03'),(108,517,'2006-02-15 05:05:03'),(108,561,'2006-02-15 05:05:03'),(108,567,'2006-02-15 05:05:03'),(108,648,'2006-02-15 05:05:03'),(108,652,'2006-02-15 05:05:03'),(108,655,'2006-02-15 05:05:03'),(108,673,'2006-02-15 05:05:03'),(108,693,'2006-02-15 05:05:03'),(108,696,'2006-02-15 05:05:03'),(108,702,'2006-02-15 05:05:03'),(108,721,'2006-02-15 05:05:03'),(108,733,'2006-02-15 05:05:03'),(108,741,'2006-02-15 05:05:03'),(108,744,'2006-02-15 05:05:03'),(108,887,'2006-02-15 05:05:03'),(108,892,'2006-02-15 05:05:03'),(108,894,'2006-02-15 05:05:03'),(108,920,'2006-02-15 05:05:03'),(108,958,'2006-02-15 05:05:03'),(108,966,'2006-02-15 05:05:03'),(109,12,'2006-02-15 05:05:03'),(109,48,'2006-02-15 05:05:03'),(109,77,'2006-02-15 05:05:03'),(109,157,'2006-02-15 05:05:03'),(109,174,'2006-02-15 05:05:03'),(109,190,'2006-02-15 05:05:03'),(109,243,'2006-02-15 05:05:03'),(109,281,'2006-02-15 05:05:03'),(109,393,'2006-02-15 05:05:03'),(109,463,'2006-02-15 05:05:03'),(109,622,'2006-02-15 05:05:03'),(109,657,'2006-02-15 05:05:03'),(109,694,'2006-02-15 05:05:03'),(109,700,'2006-02-15 05:05:03'),(109,732,'2006-02-15 05:05:03'),(109,753,'2006-02-15 05:05:03'),(109,785,'2006-02-15 05:05:03'),(109,786,'2006-02-15 05:05:03'),(109,863,'2006-02-15 05:05:03'),(109,885,'2006-02-15 05:05:03'),(109,955,'2006-02-15 05:05:03'),(109,967,'2006-02-15 05:05:03'),(110,8,'2006-02-15 05:05:03'),(110,27,'2006-02-15 05:05:03'),(110,62,'2006-02-15 05:05:03'),(110,120,'2006-02-15 05:05:03'),(110,126,'2006-02-15 05:05:03'),(110,156,'2006-02-15 05:05:03'),(110,292,'2006-02-15 05:05:03'),(110,343,'2006-02-15 05:05:03'),(110,360,'2006-02-15 05:05:03'),(110,369,'2006-02-15 05:05:03'),(110,435,'2006-02-15 05:05:03'),(110,513,'2006-02-15 05:05:03'),(110,525,'2006-02-15 05:05:03'),(110,539,'2006-02-15 05:05:03'),(110,545,'2006-02-15 05:05:03'),(110,625,'2006-02-15 05:05:03'),(110,650,'2006-02-15 05:05:03'),(110,801,'2006-02-15 05:05:03'),(110,912,'2006-02-15 05:05:03'),(110,961,'2006-02-15 05:05:03'),(110,987,'2006-02-15 05:05:03'),(111,61,'2006-02-15 05:05:03'),(111,78,'2006-02-15 05:05:03'),(111,98,'2006-02-15 05:05:03'),(111,162,'2006-02-15 05:05:03'),(111,179,'2006-02-15 05:05:03'),(111,194,'2006-02-15 05:05:03'),(111,325,'2006-02-15 05:05:03'),(111,359,'2006-02-15 05:05:03'),(111,382,'2006-02-15 05:05:03'),(111,403,'2006-02-15 05:05:03'),(111,407,'2006-02-15 05:05:03'),(111,414,'2006-02-15 05:05:03'),(111,474,'2006-02-15 05:05:03'),(111,489,'2006-02-15 05:05:03'),(111,508,'2006-02-15 05:05:03'),(111,555,'2006-02-15 05:05:03'),(111,603,'2006-02-15 05:05:03'),(111,608,'2006-02-15 05:05:03'),(111,643,'2006-02-15 05:05:03'),(111,669,'2006-02-15 05:05:03'),(111,679,'2006-02-15 05:05:03'),(111,680,'2006-02-15 05:05:03'),(111,699,'2006-02-15 05:05:03'),(111,731,'2006-02-15 05:05:03'),(111,732,'2006-02-15 05:05:03'),(111,737,'2006-02-15 05:05:03'),(111,744,'2006-02-15 05:05:03'),(111,777,'2006-02-15 05:05:03'),(111,847,'2006-02-15 05:05:03'),(111,894,'2006-02-15 05:05:03'),(111,919,'2006-02-15 05:05:03'),(111,962,'2006-02-15 05:05:03'),(111,973,'2006-02-15 05:05:03'),(112,34,'2006-02-15 05:05:03'),(112,37,'2006-02-15 05:05:03'),(112,151,'2006-02-15 05:05:03'),(112,173,'2006-02-15 05:05:03'),(112,188,'2006-02-15 05:05:03'),(112,231,'2006-02-15 05:05:03'),(112,312,'2006-02-15 05:05:03'),(112,322,'2006-02-15 05:05:03'),(112,443,'2006-02-15 05:05:03'),(112,450,'2006-02-15 05:05:03'),(112,565,'2006-02-15 05:05:03'),(112,603,'2006-02-15 05:05:03'),(112,606,'2006-02-15 05:05:03'),(112,654,'2006-02-15 05:05:03'),(112,666,'2006-02-15 05:05:03'),(112,700,'2006-02-15 05:05:03'),(112,728,'2006-02-15 05:05:03'),(112,772,'2006-02-15 05:05:03'),(112,796,'2006-02-15 05:05:03'),(112,817,'2006-02-15 05:05:03'),(112,829,'2006-02-15 05:05:03'),(112,856,'2006-02-15 05:05:03'),(112,865,'2006-02-15 05:05:03'),(112,869,'2006-02-15 05:05:03'),(112,988,'2006-02-15 05:05:03'),(113,35,'2006-02-15 05:05:03'),(113,84,'2006-02-15 05:05:03'),(113,116,'2006-02-15 05:05:03'),(113,181,'2006-02-15 05:05:03'),(113,218,'2006-02-15 05:05:03'),(113,249,'2006-02-15 05:05:03'),(113,258,'2006-02-15 05:05:03'),(113,292,'2006-02-15 05:05:03'),(113,322,'2006-02-15 05:05:03'),(113,353,'2006-02-15 05:05:03'),(113,403,'2006-02-15 05:05:03'),(113,525,'2006-02-15 05:05:03'),(113,642,'2006-02-15 05:05:03'),(113,656,'2006-02-15 05:05:03'),(113,674,'2006-02-15 05:05:03'),(113,680,'2006-02-15 05:05:03'),(113,700,'2006-02-15 05:05:03'),(113,719,'2006-02-15 05:05:03'),(113,723,'2006-02-15 05:05:03'),(113,726,'2006-02-15 05:05:03'),(113,732,'2006-02-15 05:05:03'),(113,748,'2006-02-15 05:05:03'),(113,838,'2006-02-15 05:05:03'),(113,890,'2006-02-15 05:05:03'),(113,921,'2006-02-15 05:05:03'),(113,969,'2006-02-15 05:05:03'),(113,981,'2006-02-15 05:05:03'),(114,13,'2006-02-15 05:05:03'),(114,68,'2006-02-15 05:05:03'),(114,90,'2006-02-15 05:05:03'),(114,162,'2006-02-15 05:05:03'),(114,188,'2006-02-15 05:05:03'),(114,194,'2006-02-15 05:05:03'),(114,210,'2006-02-15 05:05:03'),(114,237,'2006-02-15 05:05:03'),(114,254,'2006-02-15 05:05:03'),(114,305,'2006-02-15 05:05:03'),(114,339,'2006-02-15 05:05:03'),(114,420,'2006-02-15 05:05:03'),(114,425,'2006-02-15 05:05:03'),(114,452,'2006-02-15 05:05:03'),(114,538,'2006-02-15 05:05:03'),(114,619,'2006-02-15 05:05:03'),(114,757,'2006-02-15 05:05:03'),(114,807,'2006-02-15 05:05:03'),(114,827,'2006-02-15 05:05:03'),(114,841,'2006-02-15 05:05:03'),(114,861,'2006-02-15 05:05:03'),(114,866,'2006-02-15 05:05:03'),(114,913,'2006-02-15 05:05:03'),(114,961,'2006-02-15 05:05:03'),(114,993,'2006-02-15 05:05:03'),(115,49,'2006-02-15 05:05:03'),(115,52,'2006-02-15 05:05:03'),(115,245,'2006-02-15 05:05:03'),(115,246,'2006-02-15 05:05:03'),(115,277,'2006-02-15 05:05:03'),(115,302,'2006-02-15 05:05:03'),(115,379,'2006-02-15 05:05:03'),(115,383,'2006-02-15 05:05:03'),(115,391,'2006-02-15 05:05:03'),(115,428,'2006-02-15 05:05:03'),(115,506,'2006-02-15 05:05:03'),(115,531,'2006-02-15 05:05:03'),(115,607,'2006-02-15 05:05:03'),(115,615,'2006-02-15 05:05:03'),(115,661,'2006-02-15 05:05:03'),(115,671,'2006-02-15 05:05:03'),(115,686,'2006-02-15 05:05:03'),(115,703,'2006-02-15 05:05:03'),(115,714,'2006-02-15 05:05:03'),(115,740,'2006-02-15 05:05:03'),(115,754,'2006-02-15 05:05:03'),(115,846,'2006-02-15 05:05:03'),(115,887,'2006-02-15 05:05:03'),(115,952,'2006-02-15 05:05:03'),(115,955,'2006-02-15 05:05:03'),(115,966,'2006-02-15 05:05:03'),(115,985,'2006-02-15 05:05:03'),(115,994,'2006-02-15 05:05:03'),(116,36,'2006-02-15 05:05:03'),(116,48,'2006-02-15 05:05:03'),(116,88,'2006-02-15 05:05:03'),(116,90,'2006-02-15 05:05:03'),(116,105,'2006-02-15 05:05:03'),(116,128,'2006-02-15 05:05:03'),(116,336,'2006-02-15 05:05:03'),(116,338,'2006-02-15 05:05:03'),(116,384,'2006-02-15 05:05:03'),(116,412,'2006-02-15 05:05:03'),(116,420,'2006-02-15 05:05:03'),(116,451,'2006-02-15 05:05:03'),(116,481,'2006-02-15 05:05:03'),(116,492,'2006-02-15 05:05:03'),(116,584,'2006-02-15 05:05:03'),(116,606,'2006-02-15 05:05:03'),(116,622,'2006-02-15 05:05:03'),(116,647,'2006-02-15 05:05:03'),(116,653,'2006-02-15 05:05:03'),(116,742,'2006-02-15 05:05:03'),(116,784,'2006-02-15 05:05:03'),(116,844,'2006-02-15 05:05:03'),(116,939,'2006-02-15 05:05:03'),(116,956,'2006-02-15 05:05:03'),(117,10,'2006-02-15 05:05:03'),(117,15,'2006-02-15 05:05:03'),(117,42,'2006-02-15 05:05:03'),(117,167,'2006-02-15 05:05:03'),(117,178,'2006-02-15 05:05:03'),(117,190,'2006-02-15 05:05:03'),(117,197,'2006-02-15 05:05:03'),(117,224,'2006-02-15 05:05:03'),(117,246,'2006-02-15 05:05:03'),(117,273,'2006-02-15 05:05:03'),(117,298,'2006-02-15 05:05:03'),(117,316,'2006-02-15 05:05:03'),(117,337,'2006-02-15 05:05:03'),(117,395,'2006-02-15 05:05:03'),(117,423,'2006-02-15 05:05:03'),(117,432,'2006-02-15 05:05:03'),(117,459,'2006-02-15 05:05:03'),(117,468,'2006-02-15 05:05:03'),(117,550,'2006-02-15 05:05:03'),(117,578,'2006-02-15 05:05:03'),(117,707,'2006-02-15 05:05:03'),(117,710,'2006-02-15 05:05:03'),(117,738,'2006-02-15 05:05:03'),(117,739,'2006-02-15 05:05:03'),(117,778,'2006-02-15 05:05:03'),(117,783,'2006-02-15 05:05:03'),(117,785,'2006-02-15 05:05:03'),(117,797,'2006-02-15 05:05:03'),(117,812,'2006-02-15 05:05:03'),(117,831,'2006-02-15 05:05:03'),(117,864,'2006-02-15 05:05:03'),(117,887,'2006-02-15 05:05:03'),(117,926,'2006-02-15 05:05:03'),(118,35,'2006-02-15 05:05:03'),(118,39,'2006-02-15 05:05:03'),(118,41,'2006-02-15 05:05:03'),(118,49,'2006-02-15 05:05:03'),(118,55,'2006-02-15 05:05:03'),(118,136,'2006-02-15 05:05:03'),(118,141,'2006-02-15 05:05:03'),(118,151,'2006-02-15 05:05:03'),(118,311,'2006-02-15 05:05:03'),(118,384,'2006-02-15 05:05:03'),(118,399,'2006-02-15 05:05:03'),(118,499,'2006-02-15 05:05:03'),(118,517,'2006-02-15 05:05:03'),(118,553,'2006-02-15 05:05:03'),(118,558,'2006-02-15 05:05:03'),(118,572,'2006-02-15 05:05:03'),(118,641,'2006-02-15 05:05:03'),(118,656,'2006-02-15 05:05:03'),(118,695,'2006-02-15 05:05:03'),(118,735,'2006-02-15 05:05:03'),(118,788,'2006-02-15 05:05:03'),(118,852,'2006-02-15 05:05:03'),(118,938,'2006-02-15 05:05:03'),(118,957,'2006-02-15 05:05:03'),(118,969,'2006-02-15 05:05:03'),(119,21,'2006-02-15 05:05:03'),(119,49,'2006-02-15 05:05:03'),(119,64,'2006-02-15 05:05:03'),(119,87,'2006-02-15 05:05:03'),(119,143,'2006-02-15 05:05:03'),(119,171,'2006-02-15 05:05:03'),(119,172,'2006-02-15 05:05:03'),(119,173,'2006-02-15 05:05:03'),(119,381,'2006-02-15 05:05:03'),(119,394,'2006-02-15 05:05:03'),(119,412,'2006-02-15 05:05:03'),(119,418,'2006-02-15 05:05:03'),(119,454,'2006-02-15 05:05:03'),(119,509,'2006-02-15 05:05:03'),(119,521,'2006-02-15 05:05:03'),(119,567,'2006-02-15 05:05:03'),(119,570,'2006-02-15 05:05:03'),(119,592,'2006-02-15 05:05:03'),(119,614,'2006-02-15 05:05:03'),(119,636,'2006-02-15 05:05:03'),(119,649,'2006-02-15 05:05:03'),(119,693,'2006-02-15 05:05:03'),(119,738,'2006-02-15 05:05:03'),(119,751,'2006-02-15 05:05:03'),(119,782,'2006-02-15 05:05:03'),(119,786,'2006-02-15 05:05:03'),(119,788,'2006-02-15 05:05:03'),(119,802,'2006-02-15 05:05:03'),(119,858,'2006-02-15 05:05:03'),(119,868,'2006-02-15 05:05:03'),(119,900,'2006-02-15 05:05:03'),(119,939,'2006-02-15 05:05:03'),(120,57,'2006-02-15 05:05:03'),(120,63,'2006-02-15 05:05:03'),(120,144,'2006-02-15 05:05:03'),(120,149,'2006-02-15 05:05:03'),(120,208,'2006-02-15 05:05:03'),(120,231,'2006-02-15 05:05:03'),(120,238,'2006-02-15 05:05:03'),(120,255,'2006-02-15 05:05:03'),(120,414,'2006-02-15 05:05:03'),(120,424,'2006-02-15 05:05:03'),(120,489,'2006-02-15 05:05:03'),(120,513,'2006-02-15 05:05:03'),(120,590,'2006-02-15 05:05:03'),(120,641,'2006-02-15 05:05:03'),(120,642,'2006-02-15 05:05:03'),(120,659,'2006-02-15 05:05:03'),(120,682,'2006-02-15 05:05:03'),(120,691,'2006-02-15 05:05:03'),(120,715,'2006-02-15 05:05:03'),(120,717,'2006-02-15 05:05:03'),(120,722,'2006-02-15 05:05:03'),(120,746,'2006-02-15 05:05:03'),(120,830,'2006-02-15 05:05:03'),(120,894,'2006-02-15 05:05:03'),(120,898,'2006-02-15 05:05:03'),(120,911,'2006-02-15 05:05:03'),(120,994,'2006-02-15 05:05:03'),(121,141,'2006-02-15 05:05:03'),(121,154,'2006-02-15 05:05:03'),(121,161,'2006-02-15 05:05:03'),(121,170,'2006-02-15 05:05:03'),(121,186,'2006-02-15 05:05:03'),(121,198,'2006-02-15 05:05:03'),(121,220,'2006-02-15 05:05:03'),(121,222,'2006-02-15 05:05:03'),(121,284,'2006-02-15 05:05:03'),(121,297,'2006-02-15 05:05:03'),(121,338,'2006-02-15 05:05:03'),(121,353,'2006-02-15 05:05:03'),(121,449,'2006-02-15 05:05:03'),(121,479,'2006-02-15 05:05:03'),(121,517,'2006-02-15 05:05:03'),(121,633,'2006-02-15 05:05:03'),(121,654,'2006-02-15 05:05:03'),(121,658,'2006-02-15 05:05:03'),(121,666,'2006-02-15 05:05:03'),(121,771,'2006-02-15 05:05:03'),(121,780,'2006-02-15 05:05:03'),(121,847,'2006-02-15 05:05:03'),(121,884,'2006-02-15 05:05:03'),(121,885,'2006-02-15 05:05:03'),(121,966,'2006-02-15 05:05:03'),(122,22,'2006-02-15 05:05:03'),(122,29,'2006-02-15 05:05:03'),(122,76,'2006-02-15 05:05:03'),(122,83,'2006-02-15 05:05:03'),(122,157,'2006-02-15 05:05:03'),(122,158,'2006-02-15 05:05:03'),(122,166,'2006-02-15 05:05:03'),(122,227,'2006-02-15 05:05:03'),(122,238,'2006-02-15 05:05:03'),(122,300,'2006-02-15 05:05:03'),(122,307,'2006-02-15 05:05:03'),(122,363,'2006-02-15 05:05:03'),(122,470,'2006-02-15 05:05:03'),(122,489,'2006-02-15 05:05:03'),(122,491,'2006-02-15 05:05:03'),(122,542,'2006-02-15 05:05:03'),(122,620,'2006-02-15 05:05:03'),(122,649,'2006-02-15 05:05:03'),(122,654,'2006-02-15 05:05:03'),(122,673,'2006-02-15 05:05:03'),(122,718,'2006-02-15 05:05:03'),(122,795,'2006-02-15 05:05:03'),(122,957,'2006-02-15 05:05:03'),(122,961,'2006-02-15 05:05:03'),(122,998,'2006-02-15 05:05:03'),(123,3,'2006-02-15 05:05:03'),(123,43,'2006-02-15 05:05:03'),(123,67,'2006-02-15 05:05:03'),(123,105,'2006-02-15 05:05:03'),(123,148,'2006-02-15 05:05:03'),(123,151,'2006-02-15 05:05:03'),(123,185,'2006-02-15 05:05:03'),(123,223,'2006-02-15 05:05:03'),(123,234,'2006-02-15 05:05:03'),(123,245,'2006-02-15 05:05:03'),(123,246,'2006-02-15 05:05:03'),(123,266,'2006-02-15 05:05:03'),(123,286,'2006-02-15 05:05:03'),(123,429,'2006-02-15 05:05:03'),(123,442,'2006-02-15 05:05:03'),(123,446,'2006-02-15 05:05:03'),(123,479,'2006-02-15 05:05:03'),(123,480,'2006-02-15 05:05:03'),(123,494,'2006-02-15 05:05:03'),(123,503,'2006-02-15 05:05:03'),(123,530,'2006-02-15 05:05:03'),(123,576,'2006-02-15 05:05:03'),(123,577,'2006-02-15 05:05:03'),(123,589,'2006-02-15 05:05:03'),(123,593,'2006-02-15 05:05:03'),(123,725,'2006-02-15 05:05:03'),(123,730,'2006-02-15 05:05:03'),(123,786,'2006-02-15 05:05:03'),(123,860,'2006-02-15 05:05:03'),(123,892,'2006-02-15 05:05:03'),(123,926,'2006-02-15 05:05:03'),(123,988,'2006-02-15 05:05:03'),(124,22,'2006-02-15 05:05:03'),(124,64,'2006-02-15 05:05:03'),(124,106,'2006-02-15 05:05:03'),(124,113,'2006-02-15 05:05:03'),(124,190,'2006-02-15 05:05:03'),(124,246,'2006-02-15 05:05:03'),(124,260,'2006-02-15 05:05:03'),(124,263,'2006-02-15 05:05:03'),(124,289,'2006-02-15 05:05:03'),(124,306,'2006-02-15 05:05:03'),(124,312,'2006-02-15 05:05:03'),(124,322,'2006-02-15 05:05:03'),(124,343,'2006-02-15 05:05:03'),(124,449,'2006-02-15 05:05:03'),(124,468,'2006-02-15 05:05:03'),(124,539,'2006-02-15 05:05:03'),(124,601,'2006-02-15 05:05:03'),(124,726,'2006-02-15 05:05:03'),(124,742,'2006-02-15 05:05:03'),(124,775,'2006-02-15 05:05:03'),(124,785,'2006-02-15 05:05:03'),(124,814,'2006-02-15 05:05:03'),(124,858,'2006-02-15 05:05:03'),(124,882,'2006-02-15 05:05:03'),(124,987,'2006-02-15 05:05:03'),(124,997,'2006-02-15 05:05:03'),(125,62,'2006-02-15 05:05:03'),(125,98,'2006-02-15 05:05:03'),(125,100,'2006-02-15 05:05:03'),(125,114,'2006-02-15 05:05:03'),(125,175,'2006-02-15 05:05:03'),(125,188,'2006-02-15 05:05:03'),(125,204,'2006-02-15 05:05:03'),(125,238,'2006-02-15 05:05:03'),(125,250,'2006-02-15 05:05:03'),(125,324,'2006-02-15 05:05:03'),(125,338,'2006-02-15 05:05:03'),(125,361,'2006-02-15 05:05:03'),(125,367,'2006-02-15 05:05:03'),(125,395,'2006-02-15 05:05:03'),(125,414,'2006-02-15 05:05:03'),(125,428,'2006-02-15 05:05:03'),(125,429,'2006-02-15 05:05:03'),(125,450,'2006-02-15 05:05:03'),(125,497,'2006-02-15 05:05:03'),(125,557,'2006-02-15 05:05:03'),(125,568,'2006-02-15 05:05:03'),(125,584,'2006-02-15 05:05:03'),(125,602,'2006-02-15 05:05:03'),(125,623,'2006-02-15 05:05:03'),(125,664,'2006-02-15 05:05:03'),(125,683,'2006-02-15 05:05:03'),(125,710,'2006-02-15 05:05:03'),(125,877,'2006-02-15 05:05:03'),(125,908,'2006-02-15 05:05:03'),(125,949,'2006-02-15 05:05:03'),(125,965,'2006-02-15 05:05:03'),(126,21,'2006-02-15 05:05:03'),(126,34,'2006-02-15 05:05:03'),(126,43,'2006-02-15 05:05:03'),(126,58,'2006-02-15 05:05:03'),(126,85,'2006-02-15 05:05:03'),(126,96,'2006-02-15 05:05:03'),(126,193,'2006-02-15 05:05:03'),(126,194,'2006-02-15 05:05:03'),(126,199,'2006-02-15 05:05:03'),(126,256,'2006-02-15 05:05:03'),(126,263,'2006-02-15 05:05:03'),(126,288,'2006-02-15 05:05:03'),(126,317,'2006-02-15 05:05:03'),(126,347,'2006-02-15 05:05:03'),(126,369,'2006-02-15 05:05:03'),(126,370,'2006-02-15 05:05:03'),(126,419,'2006-02-15 05:05:03'),(126,468,'2006-02-15 05:05:03'),(126,469,'2006-02-15 05:05:03'),(126,545,'2006-02-15 05:05:03'),(126,685,'2006-02-15 05:05:03'),(126,836,'2006-02-15 05:05:03'),(126,860,'2006-02-15 05:05:03'),(127,36,'2006-02-15 05:05:03'),(127,47,'2006-02-15 05:05:03'),(127,48,'2006-02-15 05:05:03'),(127,79,'2006-02-15 05:05:03'),(127,119,'2006-02-15 05:05:03'),(127,141,'2006-02-15 05:05:03'),(127,157,'2006-02-15 05:05:03'),(127,202,'2006-02-15 05:05:03'),(127,286,'2006-02-15 05:05:03'),(127,333,'2006-02-15 05:05:03'),(127,354,'2006-02-15 05:05:03'),(127,366,'2006-02-15 05:05:03'),(127,382,'2006-02-15 05:05:03'),(127,388,'2006-02-15 05:05:03'),(127,411,'2006-02-15 05:05:03'),(127,459,'2006-02-15 05:05:03'),(127,553,'2006-02-15 05:05:03'),(127,573,'2006-02-15 05:05:03'),(127,613,'2006-02-15 05:05:03'),(127,617,'2006-02-15 05:05:03'),(127,641,'2006-02-15 05:05:03'),(127,710,'2006-02-15 05:05:03'),(127,727,'2006-02-15 05:05:03'),(127,749,'2006-02-15 05:05:03'),(127,763,'2006-02-15 05:05:03'),(127,771,'2006-02-15 05:05:03'),(127,791,'2006-02-15 05:05:03'),(127,819,'2006-02-15 05:05:03'),(127,839,'2006-02-15 05:05:03'),(127,846,'2006-02-15 05:05:03'),(127,911,'2006-02-15 05:05:03'),(127,953,'2006-02-15 05:05:03'),(127,970,'2006-02-15 05:05:03'),(128,26,'2006-02-15 05:05:03'),(128,82,'2006-02-15 05:05:03'),(128,119,'2006-02-15 05:05:03'),(128,168,'2006-02-15 05:05:03'),(128,212,'2006-02-15 05:05:03'),(128,238,'2006-02-15 05:05:03'),(128,299,'2006-02-15 05:05:03'),(128,312,'2006-02-15 05:05:03'),(128,326,'2006-02-15 05:05:03'),(128,336,'2006-02-15 05:05:03'),(128,345,'2006-02-15 05:05:03'),(128,407,'2006-02-15 05:05:03'),(128,462,'2006-02-15 05:05:03'),(128,485,'2006-02-15 05:05:03'),(128,516,'2006-02-15 05:05:03'),(128,564,'2006-02-15 05:05:03'),(128,614,'2006-02-15 05:05:03'),(128,650,'2006-02-15 05:05:03'),(128,665,'2006-02-15 05:05:03'),(128,671,'2006-02-15 05:05:03'),(128,693,'2006-02-15 05:05:03'),(128,696,'2006-02-15 05:05:03'),(128,759,'2006-02-15 05:05:03'),(128,774,'2006-02-15 05:05:03'),(128,814,'2006-02-15 05:05:03'),(128,899,'2006-02-15 05:05:03'),(128,912,'2006-02-15 05:05:03'),(128,944,'2006-02-15 05:05:03'),(128,949,'2006-02-15 05:05:03'),(128,965,'2006-02-15 05:05:03'),(129,56,'2006-02-15 05:05:03'),(129,89,'2006-02-15 05:05:03'),(129,101,'2006-02-15 05:05:03'),(129,166,'2006-02-15 05:05:03'),(129,202,'2006-02-15 05:05:03'),(129,230,'2006-02-15 05:05:03'),(129,247,'2006-02-15 05:05:03'),(129,249,'2006-02-15 05:05:03'),(129,348,'2006-02-15 05:05:03'),(129,367,'2006-02-15 05:05:03'),(129,391,'2006-02-15 05:05:03'),(129,418,'2006-02-15 05:05:03'),(129,431,'2006-02-15 05:05:03'),(129,452,'2006-02-15 05:05:03'),(129,471,'2006-02-15 05:05:03'),(129,520,'2006-02-15 05:05:03'),(129,597,'2006-02-15 05:05:03'),(129,602,'2006-02-15 05:05:03'),(129,640,'2006-02-15 05:05:03'),(129,669,'2006-02-15 05:05:03'),(129,684,'2006-02-15 05:05:03'),(129,705,'2006-02-15 05:05:03'),(129,805,'2006-02-15 05:05:03'),(129,826,'2006-02-15 05:05:03'),(129,834,'2006-02-15 05:05:03'),(129,857,'2006-02-15 05:05:03'),(129,910,'2006-02-15 05:05:03'),(129,920,'2006-02-15 05:05:03'),(129,938,'2006-02-15 05:05:03'),(129,962,'2006-02-15 05:05:03'),(130,9,'2006-02-15 05:05:03'),(130,26,'2006-02-15 05:05:03'),(130,37,'2006-02-15 05:05:03'),(130,43,'2006-02-15 05:05:03'),(130,49,'2006-02-15 05:05:03'),(130,57,'2006-02-15 05:05:03'),(130,107,'2006-02-15 05:05:03'),(130,112,'2006-02-15 05:05:03'),(130,208,'2006-02-15 05:05:03'),(130,326,'2006-02-15 05:05:03'),(130,375,'2006-02-15 05:05:03'),(130,416,'2006-02-15 05:05:03'),(130,431,'2006-02-15 05:05:03'),(130,452,'2006-02-15 05:05:03'),(130,453,'2006-02-15 05:05:03'),(130,478,'2006-02-15 05:05:03'),(130,507,'2006-02-15 05:05:03'),(130,525,'2006-02-15 05:05:03'),(130,549,'2006-02-15 05:05:03'),(130,592,'2006-02-15 05:05:03'),(130,702,'2006-02-15 05:05:03'),(130,725,'2006-02-15 05:05:03'),(130,764,'2006-02-15 05:05:03'),(130,809,'2006-02-15 05:05:03'),(130,869,'2006-02-15 05:05:03'),(130,930,'2006-02-15 05:05:03'),(130,981,'2006-02-15 05:05:03'),(131,48,'2006-02-15 05:05:03'),(131,66,'2006-02-15 05:05:03'),(131,94,'2006-02-15 05:05:03'),(131,120,'2006-02-15 05:05:03'),(131,147,'2006-02-15 05:05:03'),(131,206,'2006-02-15 05:05:03'),(131,320,'2006-02-15 05:05:03'),(131,383,'2006-02-15 05:05:03'),(131,432,'2006-02-15 05:05:03'),(131,436,'2006-02-15 05:05:03'),(131,450,'2006-02-15 05:05:03'),(131,479,'2006-02-15 05:05:03'),(131,494,'2006-02-15 05:05:03'),(131,515,'2006-02-15 05:05:03'),(131,539,'2006-02-15 05:05:03'),(131,590,'2006-02-15 05:05:03'),(131,647,'2006-02-15 05:05:03'),(131,693,'2006-02-15 05:05:03'),(131,713,'2006-02-15 05:05:03'),(131,770,'2006-02-15 05:05:03'),(131,798,'2006-02-15 05:05:03'),(131,809,'2006-02-15 05:05:03'),(131,875,'2006-02-15 05:05:03'),(131,881,'2006-02-15 05:05:03'),(131,921,'2006-02-15 05:05:03'),(132,81,'2006-02-15 05:05:03'),(132,82,'2006-02-15 05:05:03'),(132,133,'2006-02-15 05:05:03'),(132,156,'2006-02-15 05:05:03'),(132,162,'2006-02-15 05:05:03'),(132,311,'2006-02-15 05:05:03'),(132,345,'2006-02-15 05:05:03'),(132,377,'2006-02-15 05:05:03'),(132,410,'2006-02-15 05:05:03'),(132,538,'2006-02-15 05:05:03'),(132,562,'2006-02-15 05:05:03'),(132,586,'2006-02-15 05:05:03'),(132,626,'2006-02-15 05:05:03'),(132,637,'2006-02-15 05:05:03'),(132,698,'2006-02-15 05:05:03'),(132,756,'2006-02-15 05:05:03'),(132,806,'2006-02-15 05:05:03'),(132,897,'2006-02-15 05:05:03'),(132,899,'2006-02-15 05:05:03'),(132,904,'2006-02-15 05:05:03'),(132,930,'2006-02-15 05:05:03'),(132,987,'2006-02-15 05:05:03'),(133,7,'2006-02-15 05:05:03'),(133,51,'2006-02-15 05:05:03'),(133,133,'2006-02-15 05:05:03'),(133,172,'2006-02-15 05:05:03'),(133,210,'2006-02-15 05:05:03'),(133,270,'2006-02-15 05:05:03'),(133,280,'2006-02-15 05:05:03'),(133,286,'2006-02-15 05:05:03'),(133,338,'2006-02-15 05:05:03'),(133,342,'2006-02-15 05:05:03'),(133,351,'2006-02-15 05:05:03'),(133,368,'2006-02-15 05:05:03'),(133,385,'2006-02-15 05:05:03'),(133,390,'2006-02-15 05:05:03'),(133,397,'2006-02-15 05:05:03'),(133,410,'2006-02-15 05:05:03'),(133,452,'2006-02-15 05:05:03'),(133,463,'2006-02-15 05:05:03'),(133,514,'2006-02-15 05:05:03'),(133,588,'2006-02-15 05:05:03'),(133,594,'2006-02-15 05:05:03'),(133,635,'2006-02-15 05:05:03'),(133,652,'2006-02-15 05:05:03'),(133,727,'2006-02-15 05:05:03'),(133,806,'2006-02-15 05:05:03'),(133,868,'2006-02-15 05:05:03'),(133,882,'2006-02-15 05:05:03'),(133,894,'2006-02-15 05:05:03'),(133,933,'2006-02-15 05:05:03'),(133,952,'2006-02-15 05:05:03'),(134,132,'2006-02-15 05:05:03'),(134,145,'2006-02-15 05:05:03'),(134,161,'2006-02-15 05:05:03'),(134,219,'2006-02-15 05:05:03'),(134,243,'2006-02-15 05:05:03'),(134,250,'2006-02-15 05:05:03'),(134,278,'2006-02-15 05:05:03'),(134,341,'2006-02-15 05:05:03'),(134,386,'2006-02-15 05:05:03'),(134,413,'2006-02-15 05:05:03'),(134,558,'2006-02-15 05:05:03'),(134,588,'2006-02-15 05:05:03'),(134,624,'2006-02-15 05:05:03'),(134,655,'2006-02-15 05:05:03'),(134,683,'2006-02-15 05:05:03'),(134,690,'2006-02-15 05:05:03'),(134,861,'2006-02-15 05:05:03'),(134,896,'2006-02-15 05:05:03'),(134,897,'2006-02-15 05:05:03'),(134,915,'2006-02-15 05:05:03'),(134,927,'2006-02-15 05:05:03'),(134,936,'2006-02-15 05:05:03'),(135,35,'2006-02-15 05:05:03'),(135,41,'2006-02-15 05:05:03'),(135,65,'2006-02-15 05:05:03'),(135,88,'2006-02-15 05:05:03'),(135,170,'2006-02-15 05:05:03'),(135,269,'2006-02-15 05:05:03'),(135,320,'2006-02-15 05:05:03'),(135,353,'2006-02-15 05:05:03'),(135,357,'2006-02-15 05:05:03'),(135,364,'2006-02-15 05:05:03'),(135,455,'2006-02-15 05:05:03'),(135,458,'2006-02-15 05:05:03'),(135,484,'2006-02-15 05:05:03'),(135,541,'2006-02-15 05:05:03'),(135,553,'2006-02-15 05:05:03'),(135,616,'2006-02-15 05:05:03'),(135,628,'2006-02-15 05:05:03'),(135,719,'2006-02-15 05:05:03'),(135,814,'2006-02-15 05:05:03'),(135,905,'2006-02-15 05:05:03'),(136,20,'2006-02-15 05:05:03'),(136,25,'2006-02-15 05:05:03'),(136,33,'2006-02-15 05:05:03'),(136,56,'2006-02-15 05:05:03'),(136,61,'2006-02-15 05:05:03'),(136,193,'2006-02-15 05:05:03'),(136,214,'2006-02-15 05:05:03'),(136,229,'2006-02-15 05:05:03'),(136,243,'2006-02-15 05:05:03'),(136,256,'2006-02-15 05:05:03'),(136,262,'2006-02-15 05:05:03'),(136,271,'2006-02-15 05:05:03'),(136,288,'2006-02-15 05:05:03'),(136,300,'2006-02-15 05:05:03'),(136,364,'2006-02-15 05:05:03'),(136,401,'2006-02-15 05:05:03'),(136,414,'2006-02-15 05:05:03'),(136,420,'2006-02-15 05:05:03'),(136,474,'2006-02-15 05:05:03'),(136,485,'2006-02-15 05:05:03'),(136,542,'2006-02-15 05:05:03'),(136,552,'2006-02-15 05:05:03'),(136,620,'2006-02-15 05:05:03'),(136,649,'2006-02-15 05:05:03'),(136,686,'2006-02-15 05:05:03'),(136,781,'2006-02-15 05:05:03'),(136,806,'2006-02-15 05:05:03'),(136,808,'2006-02-15 05:05:03'),(136,818,'2006-02-15 05:05:03'),(136,842,'2006-02-15 05:05:03'),(136,933,'2006-02-15 05:05:03'),(136,993,'2006-02-15 05:05:03'),(137,6,'2006-02-15 05:05:03'),(137,14,'2006-02-15 05:05:03'),(137,56,'2006-02-15 05:05:03'),(137,96,'2006-02-15 05:05:03'),(137,160,'2006-02-15 05:05:03'),(137,224,'2006-02-15 05:05:03'),(137,249,'2006-02-15 05:05:03'),(137,254,'2006-02-15 05:05:03'),(137,263,'2006-02-15 05:05:03'),(137,268,'2006-02-15 05:05:03'),(137,304,'2006-02-15 05:05:03'),(137,390,'2006-02-15 05:05:03'),(137,410,'2006-02-15 05:05:03'),(137,433,'2006-02-15 05:05:03'),(137,446,'2006-02-15 05:05:03'),(137,489,'2006-02-15 05:05:03'),(137,530,'2006-02-15 05:05:03'),(137,564,'2006-02-15 05:05:03'),(137,603,'2006-02-15 05:05:03'),(137,610,'2006-02-15 05:05:03'),(137,688,'2006-02-15 05:05:03'),(137,703,'2006-02-15 05:05:03'),(137,745,'2006-02-15 05:05:03'),(137,758,'2006-02-15 05:05:03'),(137,832,'2006-02-15 05:05:03'),(137,841,'2006-02-15 05:05:03'),(137,917,'2006-02-15 05:05:03'),(138,8,'2006-02-15 05:05:03'),(138,52,'2006-02-15 05:05:03'),(138,61,'2006-02-15 05:05:03'),(138,125,'2006-02-15 05:05:03'),(138,157,'2006-02-15 05:05:03'),(138,214,'2006-02-15 05:05:03'),(138,258,'2006-02-15 05:05:03'),(138,376,'2006-02-15 05:05:03'),(138,403,'2006-02-15 05:05:03'),(138,446,'2006-02-15 05:05:03'),(138,453,'2006-02-15 05:05:03'),(138,508,'2006-02-15 05:05:03'),(138,553,'2006-02-15 05:05:03'),(138,561,'2006-02-15 05:05:03'),(138,583,'2006-02-15 05:05:03'),(138,627,'2006-02-15 05:05:03'),(138,639,'2006-02-15 05:05:03'),(138,695,'2006-02-15 05:05:03'),(138,747,'2006-02-15 05:05:03'),(138,879,'2006-02-15 05:05:03'),(138,885,'2006-02-15 05:05:03'),(138,923,'2006-02-15 05:05:03'),(138,970,'2006-02-15 05:05:03'),(138,989,'2006-02-15 05:05:03'),(139,20,'2006-02-15 05:05:03'),(139,35,'2006-02-15 05:05:03'),(139,57,'2006-02-15 05:05:03'),(139,74,'2006-02-15 05:05:03'),(139,90,'2006-02-15 05:05:03'),(139,107,'2006-02-15 05:05:03'),(139,155,'2006-02-15 05:05:03'),(139,170,'2006-02-15 05:05:03'),(139,181,'2006-02-15 05:05:03'),(139,200,'2006-02-15 05:05:03'),(139,229,'2006-02-15 05:05:03'),(139,233,'2006-02-15 05:05:03'),(139,261,'2006-02-15 05:05:03'),(139,262,'2006-02-15 05:05:03'),(139,266,'2006-02-15 05:05:03'),(139,282,'2006-02-15 05:05:03'),(139,284,'2006-02-15 05:05:03'),(139,373,'2006-02-15 05:05:03'),(139,447,'2006-02-15 05:05:03'),(139,489,'2006-02-15 05:05:03'),(139,529,'2006-02-15 05:05:03'),(139,540,'2006-02-15 05:05:03'),(139,570,'2006-02-15 05:05:03'),(139,602,'2006-02-15 05:05:03'),(139,605,'2006-02-15 05:05:03'),(139,636,'2006-02-15 05:05:03'),(139,691,'2006-02-15 05:05:03'),(139,706,'2006-02-15 05:05:03'),(139,719,'2006-02-15 05:05:03'),(139,744,'2006-02-15 05:05:03'),(139,746,'2006-02-15 05:05:03'),(139,862,'2006-02-15 05:05:03'),(139,892,'2006-02-15 05:05:03'),(140,27,'2006-02-15 05:05:03'),(140,77,'2006-02-15 05:05:03'),(140,112,'2006-02-15 05:05:03'),(140,135,'2006-02-15 05:05:03'),(140,185,'2006-02-15 05:05:03'),(140,258,'2006-02-15 05:05:03'),(140,370,'2006-02-15 05:05:03'),(140,373,'2006-02-15 05:05:03'),(140,498,'2006-02-15 05:05:03'),(140,509,'2006-02-15 05:05:03'),(140,576,'2006-02-15 05:05:03'),(140,587,'2006-02-15 05:05:03'),(140,599,'2006-02-15 05:05:03'),(140,608,'2006-02-15 05:05:03'),(140,647,'2006-02-15 05:05:03'),(140,665,'2006-02-15 05:05:03'),(140,670,'2006-02-15 05:05:03'),(140,693,'2006-02-15 05:05:03'),(140,702,'2006-02-15 05:05:03'),(140,729,'2006-02-15 05:05:03'),(140,730,'2006-02-15 05:05:03'),(140,731,'2006-02-15 05:05:03'),(140,736,'2006-02-15 05:05:03'),(140,742,'2006-02-15 05:05:03'),(140,778,'2006-02-15 05:05:03'),(140,820,'2006-02-15 05:05:03'),(140,830,'2006-02-15 05:05:03'),(140,835,'2006-02-15 05:05:03'),(140,857,'2006-02-15 05:05:03'),(140,923,'2006-02-15 05:05:03'),(140,934,'2006-02-15 05:05:03'),(140,999,'2006-02-15 05:05:03'),(141,43,'2006-02-15 05:05:03'),(141,67,'2006-02-15 05:05:03'),(141,188,'2006-02-15 05:05:03'),(141,191,'2006-02-15 05:05:03'),(141,207,'2006-02-15 05:05:03'),(141,223,'2006-02-15 05:05:03'),(141,341,'2006-02-15 05:05:03'),(141,358,'2006-02-15 05:05:03'),(141,380,'2006-02-15 05:05:03'),(141,395,'2006-02-15 05:05:03'),(141,467,'2006-02-15 05:05:03'),(141,491,'2006-02-15 05:05:03'),(141,589,'2006-02-15 05:05:03'),(141,607,'2006-02-15 05:05:03'),(141,673,'2006-02-15 05:05:03'),(141,740,'2006-02-15 05:05:03'),(141,752,'2006-02-15 05:05:03'),(141,768,'2006-02-15 05:05:03'),(141,772,'2006-02-15 05:05:03'),(141,787,'2006-02-15 05:05:03'),(141,821,'2006-02-15 05:05:03'),(141,829,'2006-02-15 05:05:03'),(141,840,'2006-02-15 05:05:03'),(141,849,'2006-02-15 05:05:03'),(141,862,'2006-02-15 05:05:03'),(141,863,'2006-02-15 05:05:03'),(141,909,'2006-02-15 05:05:03'),(141,992,'2006-02-15 05:05:03'),(142,10,'2006-02-15 05:05:03'),(142,18,'2006-02-15 05:05:03'),(142,107,'2006-02-15 05:05:03'),(142,139,'2006-02-15 05:05:03'),(142,186,'2006-02-15 05:05:03'),(142,199,'2006-02-15 05:05:03'),(142,248,'2006-02-15 05:05:03'),(142,328,'2006-02-15 05:05:03'),(142,350,'2006-02-15 05:05:03'),(142,371,'2006-02-15 05:05:03'),(142,470,'2006-02-15 05:05:03'),(142,481,'2006-02-15 05:05:03'),(142,494,'2006-02-15 05:05:03'),(142,501,'2006-02-15 05:05:03'),(142,504,'2006-02-15 05:05:03'),(142,540,'2006-02-15 05:05:03'),(142,554,'2006-02-15 05:05:03'),(142,575,'2006-02-15 05:05:03'),(142,608,'2006-02-15 05:05:03'),(142,710,'2006-02-15 05:05:03'),(142,712,'2006-02-15 05:05:03'),(142,735,'2006-02-15 05:05:03'),(142,759,'2006-02-15 05:05:03'),(142,794,'2006-02-15 05:05:03'),(142,842,'2006-02-15 05:05:03'),(142,859,'2006-02-15 05:05:03'),(142,863,'2006-02-15 05:05:03'),(142,875,'2006-02-15 05:05:03'),(142,906,'2006-02-15 05:05:03'),(142,914,'2006-02-15 05:05:03'),(142,999,'2006-02-15 05:05:03'),(143,47,'2006-02-15 05:05:03'),(143,79,'2006-02-15 05:05:03'),(143,141,'2006-02-15 05:05:03'),(143,175,'2006-02-15 05:05:03'),(143,232,'2006-02-15 05:05:03'),(143,239,'2006-02-15 05:05:03'),(143,316,'2006-02-15 05:05:03'),(143,339,'2006-02-15 05:05:03'),(143,361,'2006-02-15 05:05:03'),(143,386,'2006-02-15 05:05:03'),(143,404,'2006-02-15 05:05:03'),(143,457,'2006-02-15 05:05:03'),(143,485,'2006-02-15 05:05:03'),(143,497,'2006-02-15 05:05:03'),(143,560,'2006-02-15 05:05:03'),(143,576,'2006-02-15 05:05:03'),(143,603,'2006-02-15 05:05:03'),(143,613,'2006-02-15 05:05:03'),(143,659,'2006-02-15 05:05:03'),(143,660,'2006-02-15 05:05:03'),(143,680,'2006-02-15 05:05:03'),(143,687,'2006-02-15 05:05:03'),(143,690,'2006-02-15 05:05:03'),(143,706,'2006-02-15 05:05:03'),(143,792,'2006-02-15 05:05:03'),(143,821,'2006-02-15 05:05:03'),(143,830,'2006-02-15 05:05:03'),(143,872,'2006-02-15 05:05:03'),(143,878,'2006-02-15 05:05:03'),(143,906,'2006-02-15 05:05:03'),(143,958,'2006-02-15 05:05:03'),(144,18,'2006-02-15 05:05:03'),(144,67,'2006-02-15 05:05:03'),(144,79,'2006-02-15 05:05:03'),(144,90,'2006-02-15 05:05:03'),(144,99,'2006-02-15 05:05:03'),(144,105,'2006-02-15 05:05:03'),(144,123,'2006-02-15 05:05:03'),(144,125,'2006-02-15 05:05:03'),(144,127,'2006-02-15 05:05:03'),(144,130,'2006-02-15 05:05:03'),(144,135,'2006-02-15 05:05:03'),(144,164,'2006-02-15 05:05:03'),(144,184,'2006-02-15 05:05:03'),(144,216,'2006-02-15 05:05:03'),(144,228,'2006-02-15 05:05:03'),(144,260,'2006-02-15 05:05:03'),(144,272,'2006-02-15 05:05:03'),(144,291,'2006-02-15 05:05:03'),(144,293,'2006-02-15 05:05:03'),(144,312,'2006-02-15 05:05:03'),(144,393,'2006-02-15 05:05:03'),(144,396,'2006-02-15 05:05:03'),(144,473,'2006-02-15 05:05:03'),(144,504,'2006-02-15 05:05:03'),(144,540,'2006-02-15 05:05:03'),(144,599,'2006-02-15 05:05:03'),(144,668,'2006-02-15 05:05:03'),(144,702,'2006-02-15 05:05:03'),(144,753,'2006-02-15 05:05:03'),(144,762,'2006-02-15 05:05:03'),(144,776,'2006-02-15 05:05:03'),(144,785,'2006-02-15 05:05:03'),(144,845,'2006-02-15 05:05:03'),(144,894,'2006-02-15 05:05:03'),(144,953,'2006-02-15 05:05:03'),(145,39,'2006-02-15 05:05:03'),(145,109,'2006-02-15 05:05:03'),(145,120,'2006-02-15 05:05:03'),(145,154,'2006-02-15 05:05:03'),(145,155,'2006-02-15 05:05:03'),(145,243,'2006-02-15 05:05:03'),(145,293,'2006-02-15 05:05:03'),(145,402,'2006-02-15 05:05:03'),(145,409,'2006-02-15 05:05:03'),(145,457,'2006-02-15 05:05:03'),(145,475,'2006-02-15 05:05:03'),(145,487,'2006-02-15 05:05:03'),(145,494,'2006-02-15 05:05:03'),(145,527,'2006-02-15 05:05:03'),(145,592,'2006-02-15 05:05:03'),(145,625,'2006-02-15 05:05:03'),(145,629,'2006-02-15 05:05:03'),(145,641,'2006-02-15 05:05:03'),(145,661,'2006-02-15 05:05:03'),(145,664,'2006-02-15 05:05:03'),(145,692,'2006-02-15 05:05:03'),(145,713,'2006-02-15 05:05:03'),(145,726,'2006-02-15 05:05:03'),(145,748,'2006-02-15 05:05:03'),(145,822,'2006-02-15 05:05:03'),(145,893,'2006-02-15 05:05:03'),(145,923,'2006-02-15 05:05:03'),(145,953,'2006-02-15 05:05:03'),(146,12,'2006-02-15 05:05:03'),(146,16,'2006-02-15 05:05:03'),(146,33,'2006-02-15 05:05:03'),(146,117,'2006-02-15 05:05:03'),(146,177,'2006-02-15 05:05:03'),(146,191,'2006-02-15 05:05:03'),(146,197,'2006-02-15 05:05:03'),(146,207,'2006-02-15 05:05:03'),(146,218,'2006-02-15 05:05:03'),(146,278,'2006-02-15 05:05:03'),(146,296,'2006-02-15 05:05:03'),(146,314,'2006-02-15 05:05:03'),(146,320,'2006-02-15 05:05:03'),(146,372,'2006-02-15 05:05:03'),(146,384,'2006-02-15 05:05:03'),(146,402,'2006-02-15 05:05:03'),(146,410,'2006-02-15 05:05:03'),(146,427,'2006-02-15 05:05:03'),(146,429,'2006-02-15 05:05:03'),(146,512,'2006-02-15 05:05:03'),(146,514,'2006-02-15 05:05:03'),(146,571,'2006-02-15 05:05:03'),(146,591,'2006-02-15 05:05:03'),(146,720,'2006-02-15 05:05:03'),(146,731,'2006-02-15 05:05:03'),(146,734,'2006-02-15 05:05:03'),(146,871,'2006-02-15 05:05:03'),(146,909,'2006-02-15 05:05:03'),(146,922,'2006-02-15 05:05:03'),(146,945,'2006-02-15 05:05:03'),(146,955,'2006-02-15 05:05:03'),(146,966,'2006-02-15 05:05:03'),(146,969,'2006-02-15 05:05:03'),(147,4,'2006-02-15 05:05:03'),(147,85,'2006-02-15 05:05:03'),(147,131,'2006-02-15 05:05:03'),(147,139,'2006-02-15 05:05:03'),(147,145,'2006-02-15 05:05:03'),(147,178,'2006-02-15 05:05:03'),(147,251,'2006-02-15 05:05:03'),(147,254,'2006-02-15 05:05:03'),(147,295,'2006-02-15 05:05:03'),(147,298,'2006-02-15 05:05:03'),(147,305,'2006-02-15 05:05:03'),(147,310,'2006-02-15 05:05:03'),(147,318,'2006-02-15 05:05:03'),(147,333,'2006-02-15 05:05:03'),(147,341,'2006-02-15 05:05:03'),(147,351,'2006-02-15 05:05:03'),(147,394,'2006-02-15 05:05:03'),(147,402,'2006-02-15 05:05:03'),(147,405,'2006-02-15 05:05:03'),(147,410,'2006-02-15 05:05:03'),(147,431,'2006-02-15 05:05:03'),(147,443,'2006-02-15 05:05:03'),(147,508,'2006-02-15 05:05:03'),(147,554,'2006-02-15 05:05:03'),(147,563,'2006-02-15 05:05:03'),(147,649,'2006-02-15 05:05:03'),(147,688,'2006-02-15 05:05:03'),(147,708,'2006-02-15 05:05:03'),(147,864,'2006-02-15 05:05:03'),(147,957,'2006-02-15 05:05:03'),(147,987,'2006-02-15 05:05:03'),(148,27,'2006-02-15 05:05:03'),(148,57,'2006-02-15 05:05:03'),(148,133,'2006-02-15 05:05:03'),(148,149,'2006-02-15 05:05:03'),(148,226,'2006-02-15 05:05:03'),(148,342,'2006-02-15 05:05:03'),(148,368,'2006-02-15 05:05:03'),(148,422,'2006-02-15 05:05:03'),(148,468,'2006-02-15 05:05:03'),(148,633,'2006-02-15 05:05:03'),(148,718,'2006-02-15 05:05:03'),(148,768,'2006-02-15 05:05:03'),(148,772,'2006-02-15 05:05:03'),(148,792,'2006-02-15 05:05:03'),(149,53,'2006-02-15 05:05:03'),(149,72,'2006-02-15 05:05:03'),(149,95,'2006-02-15 05:05:03'),(149,118,'2006-02-15 05:05:03'),(149,139,'2006-02-15 05:05:03'),(149,146,'2006-02-15 05:05:03'),(149,153,'2006-02-15 05:05:03'),(149,159,'2006-02-15 05:05:03'),(149,169,'2006-02-15 05:05:03'),(149,178,'2006-02-15 05:05:03'),(149,188,'2006-02-15 05:05:03'),(149,193,'2006-02-15 05:05:03'),(149,339,'2006-02-15 05:05:03'),(149,354,'2006-02-15 05:05:03'),(149,362,'2006-02-15 05:05:03'),(149,365,'2006-02-15 05:05:03'),(149,458,'2006-02-15 05:05:03'),(149,631,'2006-02-15 05:05:03'),(149,670,'2006-02-15 05:05:03'),(149,685,'2006-02-15 05:05:03'),(149,761,'2006-02-15 05:05:03'),(149,782,'2006-02-15 05:05:03'),(149,810,'2006-02-15 05:05:03'),(149,811,'2006-02-15 05:05:03'),(149,899,'2006-02-15 05:05:03'),(149,905,'2006-02-15 05:05:03'),(149,913,'2006-02-15 05:05:03'),(149,921,'2006-02-15 05:05:03'),(149,947,'2006-02-15 05:05:03'),(149,949,'2006-02-15 05:05:03'),(149,992,'2006-02-15 05:05:03'),(150,23,'2006-02-15 05:05:03'),(150,63,'2006-02-15 05:05:03'),(150,75,'2006-02-15 05:05:03'),(150,94,'2006-02-15 05:05:03'),(150,105,'2006-02-15 05:05:03'),(150,168,'2006-02-15 05:05:03'),(150,190,'2006-02-15 05:05:03'),(150,206,'2006-02-15 05:05:03'),(150,233,'2006-02-15 05:05:03'),(150,270,'2006-02-15 05:05:03'),(150,285,'2006-02-15 05:05:03'),(150,306,'2006-02-15 05:05:03'),(150,386,'2006-02-15 05:05:03'),(150,433,'2006-02-15 05:05:03'),(150,446,'2006-02-15 05:05:03'),(150,447,'2006-02-15 05:05:03'),(150,468,'2006-02-15 05:05:03'),(150,508,'2006-02-15 05:05:03'),(150,542,'2006-02-15 05:05:03'),(150,551,'2006-02-15 05:05:03'),(150,629,'2006-02-15 05:05:03'),(150,647,'2006-02-15 05:05:03'),(150,672,'2006-02-15 05:05:03'),(150,697,'2006-02-15 05:05:03'),(150,728,'2006-02-15 05:05:03'),(150,777,'2006-02-15 05:05:03'),(150,854,'2006-02-15 05:05:03'),(150,873,'2006-02-15 05:05:03'),(150,880,'2006-02-15 05:05:03'),(150,887,'2006-02-15 05:05:03'),(150,889,'2006-02-15 05:05:03'),(150,892,'2006-02-15 05:05:03'),(150,953,'2006-02-15 05:05:03'),(150,962,'2006-02-15 05:05:03'),(151,131,'2006-02-15 05:05:03'),(151,144,'2006-02-15 05:05:03'),(151,167,'2006-02-15 05:05:03'),(151,170,'2006-02-15 05:05:03'),(151,217,'2006-02-15 05:05:03'),(151,232,'2006-02-15 05:05:03'),(151,342,'2006-02-15 05:05:03'),(151,367,'2006-02-15 05:05:03'),(151,370,'2006-02-15 05:05:03'),(151,382,'2006-02-15 05:05:03'),(151,451,'2006-02-15 05:05:03'),(151,463,'2006-02-15 05:05:03'),(151,482,'2006-02-15 05:05:03'),(151,501,'2006-02-15 05:05:03'),(151,527,'2006-02-15 05:05:03'),(151,539,'2006-02-15 05:05:03'),(151,570,'2006-02-15 05:05:03'),(151,574,'2006-02-15 05:05:03'),(151,634,'2006-02-15 05:05:03'),(151,658,'2006-02-15 05:05:03'),(151,665,'2006-02-15 05:05:03'),(151,703,'2006-02-15 05:05:03'),(151,880,'2006-02-15 05:05:03'),(151,892,'2006-02-15 05:05:03'),(151,895,'2006-02-15 05:05:03'),(151,989,'2006-02-15 05:05:03'),(152,59,'2006-02-15 05:05:03'),(152,153,'2006-02-15 05:05:03'),(152,217,'2006-02-15 05:05:03'),(152,248,'2006-02-15 05:05:03'),(152,318,'2006-02-15 05:05:03'),(152,332,'2006-02-15 05:05:03'),(152,475,'2006-02-15 05:05:03'),(152,476,'2006-02-15 05:05:03'),(152,578,'2006-02-15 05:05:03'),(152,607,'2006-02-15 05:05:03'),(152,611,'2006-02-15 05:05:03'),(152,615,'2006-02-15 05:05:03'),(152,674,'2006-02-15 05:05:03'),(152,680,'2006-02-15 05:05:03'),(152,729,'2006-02-15 05:05:03'),(152,768,'2006-02-15 05:05:03'),(152,821,'2006-02-15 05:05:03'),(152,846,'2006-02-15 05:05:03'),(152,891,'2006-02-15 05:05:03'),(152,898,'2006-02-15 05:05:03'),(152,927,'2006-02-15 05:05:03'),(152,964,'2006-02-15 05:05:03'),(152,968,'2006-02-15 05:05:03'),(153,47,'2006-02-15 05:05:03'),(153,64,'2006-02-15 05:05:03'),(153,136,'2006-02-15 05:05:03'),(153,180,'2006-02-15 05:05:03'),(153,203,'2006-02-15 05:05:03'),(153,231,'2006-02-15 05:05:03'),(153,444,'2006-02-15 05:05:03'),(153,476,'2006-02-15 05:05:03'),(153,480,'2006-02-15 05:05:03'),(153,486,'2006-02-15 05:05:03'),(153,536,'2006-02-15 05:05:03'),(153,627,'2006-02-15 05:05:03'),(153,732,'2006-02-15 05:05:03'),(153,756,'2006-02-15 05:05:03'),(153,766,'2006-02-15 05:05:03'),(153,817,'2006-02-15 05:05:03'),(153,847,'2006-02-15 05:05:03'),(153,919,'2006-02-15 05:05:03'),(153,938,'2006-02-15 05:05:03'),(153,988,'2006-02-15 05:05:03'),(154,27,'2006-02-15 05:05:03'),(154,111,'2006-02-15 05:05:03'),(154,141,'2006-02-15 05:05:03'),(154,158,'2006-02-15 05:05:03'),(154,169,'2006-02-15 05:05:03'),(154,170,'2006-02-15 05:05:03'),(154,193,'2006-02-15 05:05:03'),(154,208,'2006-02-15 05:05:03'),(154,274,'2006-02-15 05:05:03'),(154,276,'2006-02-15 05:05:03'),(154,282,'2006-02-15 05:05:03'),(154,299,'2006-02-15 05:05:03'),(154,314,'2006-02-15 05:05:03'),(154,396,'2006-02-15 05:05:03'),(154,399,'2006-02-15 05:05:03'),(154,421,'2006-02-15 05:05:03'),(154,440,'2006-02-15 05:05:03'),(154,467,'2006-02-15 05:05:03'),(154,474,'2006-02-15 05:05:03'),(154,489,'2006-02-15 05:05:03'),(154,588,'2006-02-15 05:05:03'),(154,602,'2006-02-15 05:05:03'),(154,680,'2006-02-15 05:05:03'),(154,698,'2006-02-15 05:05:03'),(154,802,'2006-02-15 05:05:03'),(154,842,'2006-02-15 05:05:03'),(154,954,'2006-02-15 05:05:03'),(154,988,'2006-02-15 05:05:03'),(155,20,'2006-02-15 05:05:03'),(155,67,'2006-02-15 05:05:03'),(155,128,'2006-02-15 05:05:03'),(155,153,'2006-02-15 05:05:03'),(155,220,'2006-02-15 05:05:03'),(155,249,'2006-02-15 05:05:03'),(155,303,'2006-02-15 05:05:03'),(155,312,'2006-02-15 05:05:03'),(155,359,'2006-02-15 05:05:03'),(155,361,'2006-02-15 05:05:03'),(155,383,'2006-02-15 05:05:03'),(155,387,'2006-02-15 05:05:03'),(155,407,'2006-02-15 05:05:03'),(155,427,'2006-02-15 05:05:03'),(155,459,'2006-02-15 05:05:03'),(155,513,'2006-02-15 05:05:03'),(155,584,'2006-02-15 05:05:03'),(155,590,'2006-02-15 05:05:03'),(155,630,'2006-02-15 05:05:03'),(155,688,'2006-02-15 05:05:03'),(155,757,'2006-02-15 05:05:03'),(155,768,'2006-02-15 05:05:03'),(155,785,'2006-02-15 05:05:03'),(155,849,'2006-02-15 05:05:03'),(155,885,'2006-02-15 05:05:03'),(155,890,'2006-02-15 05:05:03'),(155,941,'2006-02-15 05:05:03'),(155,966,'2006-02-15 05:05:03'),(155,987,'2006-02-15 05:05:03'),(155,997,'2006-02-15 05:05:03'),(155,1000,'2006-02-15 05:05:03'),(156,53,'2006-02-15 05:05:03'),(156,155,'2006-02-15 05:05:03'),(156,198,'2006-02-15 05:05:03'),(156,244,'2006-02-15 05:05:03'),(156,262,'2006-02-15 05:05:03'),(156,263,'2006-02-15 05:05:03'),(156,285,'2006-02-15 05:05:03'),(156,297,'2006-02-15 05:05:03'),(156,301,'2006-02-15 05:05:03'),(156,349,'2006-02-15 05:05:03'),(156,379,'2006-02-15 05:05:03'),(156,448,'2006-02-15 05:05:03'),(156,462,'2006-02-15 05:05:03'),(156,467,'2006-02-15 05:05:03'),(156,504,'2006-02-15 05:05:03'),(156,518,'2006-02-15 05:05:03'),(156,593,'2006-02-15 05:05:03'),(156,646,'2006-02-15 05:05:03'),(156,705,'2006-02-15 05:05:03'),(156,754,'2006-02-15 05:05:03'),(156,775,'2006-02-15 05:05:03'),(156,844,'2006-02-15 05:05:03'),(157,10,'2006-02-15 05:05:03'),(157,24,'2006-02-15 05:05:03'),(157,34,'2006-02-15 05:05:03'),(157,122,'2006-02-15 05:05:03'),(157,159,'2006-02-15 05:05:03'),(157,183,'2006-02-15 05:05:03'),(157,210,'2006-02-15 05:05:03'),(157,217,'2006-02-15 05:05:03'),(157,291,'2006-02-15 05:05:03'),(157,303,'2006-02-15 05:05:03'),(157,321,'2006-02-15 05:05:03'),(157,326,'2006-02-15 05:05:03'),(157,353,'2006-02-15 05:05:03'),(157,400,'2006-02-15 05:05:03'),(157,406,'2006-02-15 05:05:03'),(157,431,'2006-02-15 05:05:03'),(157,496,'2006-02-15 05:05:03'),(157,535,'2006-02-15 05:05:03'),(157,573,'2006-02-15 05:05:03'),(157,574,'2006-02-15 05:05:03'),(157,604,'2006-02-15 05:05:03'),(157,616,'2006-02-15 05:05:03'),(157,642,'2006-02-15 05:05:03'),(157,661,'2006-02-15 05:05:03'),(157,696,'2006-02-15 05:05:03'),(157,713,'2006-02-15 05:05:03'),(157,802,'2006-02-15 05:05:03'),(157,835,'2006-02-15 05:05:03'),(157,874,'2006-02-15 05:05:03'),(157,913,'2006-02-15 05:05:03'),(157,967,'2006-02-15 05:05:03'),(157,973,'2006-02-15 05:05:03'),(158,32,'2006-02-15 05:05:03'),(158,47,'2006-02-15 05:05:03'),(158,64,'2006-02-15 05:05:03'),(158,66,'2006-02-15 05:05:03'),(158,102,'2006-02-15 05:05:03'),(158,121,'2006-02-15 05:05:03'),(158,177,'2006-02-15 05:05:03'),(158,178,'2006-02-15 05:05:03'),(158,188,'2006-02-15 05:05:03'),(158,215,'2006-02-15 05:05:03'),(158,241,'2006-02-15 05:05:03'),(158,293,'2006-02-15 05:05:03'),(158,437,'2006-02-15 05:05:03'),(158,473,'2006-02-15 05:05:03'),(158,483,'2006-02-15 05:05:03'),(158,532,'2006-02-15 05:05:03'),(158,555,'2006-02-15 05:05:03'),(158,581,'2006-02-15 05:05:03'),(158,601,'2006-02-15 05:05:03'),(158,616,'2006-02-15 05:05:03'),(158,626,'2006-02-15 05:05:03'),(158,637,'2006-02-15 05:05:03'),(158,799,'2006-02-15 05:05:03'),(158,812,'2006-02-15 05:05:03'),(158,824,'2006-02-15 05:05:03'),(158,830,'2006-02-15 05:05:03'),(158,840,'2006-02-15 05:05:03'),(158,869,'2006-02-15 05:05:03'),(158,879,'2006-02-15 05:05:03'),(158,880,'2006-02-15 05:05:03'),(158,894,'2006-02-15 05:05:03'),(158,896,'2006-02-15 05:05:03'),(158,967,'2006-02-15 05:05:03'),(158,968,'2006-02-15 05:05:03'),(158,990,'2006-02-15 05:05:03'),(159,20,'2006-02-15 05:05:03'),(159,82,'2006-02-15 05:05:03'),(159,127,'2006-02-15 05:05:03'),(159,187,'2006-02-15 05:05:03'),(159,206,'2006-02-15 05:05:03'),(159,208,'2006-02-15 05:05:03'),(159,223,'2006-02-15 05:05:03'),(159,248,'2006-02-15 05:05:03'),(159,342,'2006-02-15 05:05:03'),(159,343,'2006-02-15 05:05:03'),(159,344,'2006-02-15 05:05:03'),(159,364,'2006-02-15 05:05:03'),(159,418,'2006-02-15 05:05:03'),(159,549,'2006-02-15 05:05:03'),(159,561,'2006-02-15 05:05:03'),(159,600,'2006-02-15 05:05:03'),(159,674,'2006-02-15 05:05:03'),(159,680,'2006-02-15 05:05:03'),(159,784,'2006-02-15 05:05:03'),(159,789,'2006-02-15 05:05:03'),(159,800,'2006-02-15 05:05:03'),(159,802,'2006-02-15 05:05:03'),(159,818,'2006-02-15 05:05:03'),(159,876,'2006-02-15 05:05:03'),(159,907,'2006-02-15 05:05:03'),(159,978,'2006-02-15 05:05:03'),(160,2,'2006-02-15 05:05:03'),(160,17,'2006-02-15 05:05:03'),(160,43,'2006-02-15 05:05:03'),(160,242,'2006-02-15 05:05:03'),(160,267,'2006-02-15 05:05:03'),(160,275,'2006-02-15 05:05:03'),(160,368,'2006-02-15 05:05:03'),(160,455,'2006-02-15 05:05:03'),(160,469,'2006-02-15 05:05:03'),(160,484,'2006-02-15 05:05:03'),(160,579,'2006-02-15 05:05:03'),(160,660,'2006-02-15 05:05:03'),(160,755,'2006-02-15 05:05:03'),(160,767,'2006-02-15 05:05:03'),(160,769,'2006-02-15 05:05:03'),(160,794,'2006-02-15 05:05:03'),(160,826,'2006-02-15 05:05:03'),(160,883,'2006-02-15 05:05:03'),(160,950,'2006-02-15 05:05:03'),(160,954,'2006-02-15 05:05:03'),(161,43,'2006-02-15 05:05:03'),(161,58,'2006-02-15 05:05:03'),(161,89,'2006-02-15 05:05:03'),(161,90,'2006-02-15 05:05:03'),(161,120,'2006-02-15 05:05:03'),(161,188,'2006-02-15 05:05:03'),(161,247,'2006-02-15 05:05:03'),(161,269,'2006-02-15 05:05:03'),(161,281,'2006-02-15 05:05:03'),(161,340,'2006-02-15 05:05:03'),(161,353,'2006-02-15 05:05:03'),(161,401,'2006-02-15 05:05:03'),(161,414,'2006-02-15 05:05:03'),(161,425,'2006-02-15 05:05:03'),(161,469,'2006-02-15 05:05:03'),(161,526,'2006-02-15 05:05:03'),(161,588,'2006-02-15 05:05:03'),(161,644,'2006-02-15 05:05:03'),(161,653,'2006-02-15 05:05:03'),(161,655,'2006-02-15 05:05:03'),(161,669,'2006-02-15 05:05:03'),(161,684,'2006-02-15 05:05:03'),(161,714,'2006-02-15 05:05:03'),(161,749,'2006-02-15 05:05:03'),(161,807,'2006-02-15 05:05:03'),(161,825,'2006-02-15 05:05:03'),(161,850,'2006-02-15 05:05:03'),(161,880,'2006-02-15 05:05:03'),(161,920,'2006-02-15 05:05:03'),(161,921,'2006-02-15 05:05:03'),(161,924,'2006-02-15 05:05:03'),(161,927,'2006-02-15 05:05:03'),(162,1,'2006-02-15 05:05:03'),(162,4,'2006-02-15 05:05:03'),(162,7,'2006-02-15 05:05:03'),(162,18,'2006-02-15 05:05:03'),(162,28,'2006-02-15 05:05:03'),(162,32,'2006-02-15 05:05:03'),(162,33,'2006-02-15 05:05:03'),(162,41,'2006-02-15 05:05:03'),(162,85,'2006-02-15 05:05:03'),(162,121,'2006-02-15 05:05:03'),(162,164,'2006-02-15 05:05:03'),(162,274,'2006-02-15 05:05:03'),(162,279,'2006-02-15 05:05:03'),(162,409,'2006-02-15 05:05:03'),(162,410,'2006-02-15 05:05:03'),(162,415,'2006-02-15 05:05:03'),(162,500,'2006-02-15 05:05:03'),(162,574,'2006-02-15 05:05:03'),(162,612,'2006-02-15 05:05:03'),(162,636,'2006-02-15 05:05:03'),(162,659,'2006-02-15 05:05:03'),(162,786,'2006-02-15 05:05:03'),(162,844,'2006-02-15 05:05:03'),(162,909,'2006-02-15 05:05:03'),(162,968,'2006-02-15 05:05:03'),(163,30,'2006-02-15 05:05:03'),(163,45,'2006-02-15 05:05:03'),(163,166,'2006-02-15 05:05:03'),(163,180,'2006-02-15 05:05:03'),(163,239,'2006-02-15 05:05:03'),(163,283,'2006-02-15 05:05:03'),(163,303,'2006-02-15 05:05:03'),(163,304,'2006-02-15 05:05:03'),(163,307,'2006-02-15 05:05:03'),(163,394,'2006-02-15 05:05:03'),(163,409,'2006-02-15 05:05:03'),(163,434,'2006-02-15 05:05:03'),(163,444,'2006-02-15 05:05:03'),(163,522,'2006-02-15 05:05:03'),(163,719,'2006-02-15 05:05:03'),(163,785,'2006-02-15 05:05:03'),(163,833,'2006-02-15 05:05:03'),(163,881,'2006-02-15 05:05:03'),(163,891,'2006-02-15 05:05:03'),(163,947,'2006-02-15 05:05:03'),(163,996,'2006-02-15 05:05:03'),(164,15,'2006-02-15 05:05:03'),(164,23,'2006-02-15 05:05:03'),(164,148,'2006-02-15 05:05:03'),(164,169,'2006-02-15 05:05:03'),(164,252,'2006-02-15 05:05:03'),(164,324,'2006-02-15 05:05:03'),(164,347,'2006-02-15 05:05:03'),(164,367,'2006-02-15 05:05:03'),(164,431,'2006-02-15 05:05:03'),(164,448,'2006-02-15 05:05:03'),(164,469,'2006-02-15 05:05:03'),(164,545,'2006-02-15 05:05:03'),(164,610,'2006-02-15 05:05:03'),(164,613,'2006-02-15 05:05:03'),(164,673,'2006-02-15 05:05:03'),(164,681,'2006-02-15 05:05:03'),(164,698,'2006-02-15 05:05:03'),(164,801,'2006-02-15 05:05:03'),(164,820,'2006-02-15 05:05:03'),(164,832,'2006-02-15 05:05:03'),(164,834,'2006-02-15 05:05:03'),(164,851,'2006-02-15 05:05:03'),(164,884,'2006-02-15 05:05:03'),(164,908,'2006-02-15 05:05:03'),(164,957,'2006-02-15 05:05:03'),(164,984,'2006-02-15 05:05:03'),(165,72,'2006-02-15 05:05:03'),(165,95,'2006-02-15 05:05:03'),(165,146,'2006-02-15 05:05:03'),(165,204,'2006-02-15 05:05:03'),(165,253,'2006-02-15 05:05:03'),(165,286,'2006-02-15 05:05:03'),(165,360,'2006-02-15 05:05:03'),(165,375,'2006-02-15 05:05:03'),(165,395,'2006-02-15 05:05:03'),(165,421,'2006-02-15 05:05:03'),(165,437,'2006-02-15 05:05:03'),(165,473,'2006-02-15 05:05:03'),(165,607,'2006-02-15 05:05:03'),(165,644,'2006-02-15 05:05:03'),(165,659,'2006-02-15 05:05:03'),(165,693,'2006-02-15 05:05:03'),(165,737,'2006-02-15 05:05:03'),(165,779,'2006-02-15 05:05:03'),(165,798,'2006-02-15 05:05:03'),(165,807,'2006-02-15 05:05:03'),(165,809,'2006-02-15 05:05:03'),(165,832,'2006-02-15 05:05:03'),(165,833,'2006-02-15 05:05:03'),(165,947,'2006-02-15 05:05:03'),(165,948,'2006-02-15 05:05:03'),(165,962,'2006-02-15 05:05:03'),(166,25,'2006-02-15 05:05:03'),(166,38,'2006-02-15 05:05:03'),(166,55,'2006-02-15 05:05:03'),(166,61,'2006-02-15 05:05:03'),(166,68,'2006-02-15 05:05:03'),(166,86,'2006-02-15 05:05:03'),(166,146,'2006-02-15 05:05:03'),(166,255,'2006-02-15 05:05:03'),(166,297,'2006-02-15 05:05:03'),(166,306,'2006-02-15 05:05:03'),(166,326,'2006-02-15 05:05:03'),(166,361,'2006-02-15 05:05:03'),(166,366,'2006-02-15 05:05:03'),(166,426,'2006-02-15 05:05:03'),(166,580,'2006-02-15 05:05:03'),(166,622,'2006-02-15 05:05:03'),(166,674,'2006-02-15 05:05:03'),(166,714,'2006-02-15 05:05:03'),(166,788,'2006-02-15 05:05:03'),(166,867,'2006-02-15 05:05:03'),(166,944,'2006-02-15 05:05:03'),(166,1000,'2006-02-15 05:05:03'),(167,17,'2006-02-15 05:05:03'),(167,25,'2006-02-15 05:05:03'),(167,63,'2006-02-15 05:05:03'),(167,72,'2006-02-15 05:05:03'),(167,107,'2006-02-15 05:05:03'),(167,120,'2006-02-15 05:05:03'),(167,191,'2006-02-15 05:05:03'),(167,294,'2006-02-15 05:05:03'),(167,319,'2006-02-15 05:05:03'),(167,339,'2006-02-15 05:05:03'),(167,341,'2006-02-15 05:05:03'),(167,496,'2006-02-15 05:05:03'),(167,554,'2006-02-15 05:05:03'),(167,626,'2006-02-15 05:05:03'),(167,628,'2006-02-15 05:05:03'),(167,672,'2006-02-15 05:05:03'),(167,692,'2006-02-15 05:05:03'),(167,717,'2006-02-15 05:05:03'),(167,734,'2006-02-15 05:05:03'),(167,794,'2006-02-15 05:05:03'),(167,800,'2006-02-15 05:05:03'),(167,802,'2006-02-15 05:05:03'),(167,856,'2006-02-15 05:05:03'),(167,864,'2006-02-15 05:05:03'),(167,882,'2006-02-15 05:05:03'),(167,923,'2006-02-15 05:05:03'),(168,32,'2006-02-15 05:05:03'),(168,56,'2006-02-15 05:05:03'),(168,92,'2006-02-15 05:05:03'),(168,115,'2006-02-15 05:05:03'),(168,188,'2006-02-15 05:05:03'),(168,196,'2006-02-15 05:05:03'),(168,208,'2006-02-15 05:05:03'),(168,237,'2006-02-15 05:05:03'),(168,241,'2006-02-15 05:05:03'),(168,255,'2006-02-15 05:05:03'),(168,305,'2006-02-15 05:05:03'),(168,336,'2006-02-15 05:05:03'),(168,387,'2006-02-15 05:05:03'),(168,433,'2006-02-15 05:05:03'),(168,438,'2006-02-15 05:05:03'),(168,519,'2006-02-15 05:05:03'),(168,602,'2006-02-15 05:05:03'),(168,619,'2006-02-15 05:05:03'),(168,626,'2006-02-15 05:05:03'),(168,652,'2006-02-15 05:05:03'),(168,678,'2006-02-15 05:05:03'),(168,685,'2006-02-15 05:05:03'),(168,804,'2006-02-15 05:05:03'),(168,807,'2006-02-15 05:05:03'),(168,826,'2006-02-15 05:05:03'),(168,841,'2006-02-15 05:05:03'),(168,886,'2006-02-15 05:05:03'),(168,889,'2006-02-15 05:05:03'),(168,892,'2006-02-15 05:05:03'),(168,927,'2006-02-15 05:05:03'),(168,959,'2006-02-15 05:05:03'),(169,6,'2006-02-15 05:05:03'),(169,78,'2006-02-15 05:05:03'),(169,93,'2006-02-15 05:05:03'),(169,246,'2006-02-15 05:05:03'),(169,248,'2006-02-15 05:05:03'),(169,289,'2006-02-15 05:05:03'),(169,301,'2006-02-15 05:05:03'),(169,326,'2006-02-15 05:05:03'),(169,349,'2006-02-15 05:05:03'),(169,372,'2006-02-15 05:05:03'),(169,398,'2006-02-15 05:05:03'),(169,434,'2006-02-15 05:05:03'),(169,505,'2006-02-15 05:05:03'),(169,564,'2006-02-15 05:05:03'),(169,571,'2006-02-15 05:05:03'),(169,634,'2006-02-15 05:05:03'),(169,642,'2006-02-15 05:05:03'),(169,673,'2006-02-15 05:05:03'),(169,694,'2006-02-15 05:05:03'),(169,727,'2006-02-15 05:05:03'),(169,778,'2006-02-15 05:05:03'),(169,815,'2006-02-15 05:05:03'),(169,847,'2006-02-15 05:05:03'),(169,849,'2006-02-15 05:05:03'),(169,894,'2006-02-15 05:05:03'),(169,897,'2006-02-15 05:05:03'),(169,954,'2006-02-15 05:05:03'),(169,992,'2006-02-15 05:05:03'),(169,998,'2006-02-15 05:05:03'),(170,7,'2006-02-15 05:05:03'),(170,15,'2006-02-15 05:05:03'),(170,27,'2006-02-15 05:05:03'),(170,33,'2006-02-15 05:05:03'),(170,102,'2006-02-15 05:05:03'),(170,139,'2006-02-15 05:05:03'),(170,180,'2006-02-15 05:05:03'),(170,184,'2006-02-15 05:05:03'),(170,212,'2006-02-15 05:05:03'),(170,299,'2006-02-15 05:05:03'),(170,322,'2006-02-15 05:05:03'),(170,358,'2006-02-15 05:05:03'),(170,416,'2006-02-15 05:05:03'),(170,508,'2006-02-15 05:05:03'),(170,537,'2006-02-15 05:05:03'),(170,705,'2006-02-15 05:05:03'),(170,758,'2006-02-15 05:05:03'),(170,764,'2006-02-15 05:05:03'),(170,868,'2006-02-15 05:05:03'),(170,877,'2006-02-15 05:05:03'),(170,886,'2006-02-15 05:05:03'),(170,925,'2006-02-15 05:05:03'),(170,993,'2006-02-15 05:05:03'),(170,996,'2006-02-15 05:05:03'),(171,49,'2006-02-15 05:05:03'),(171,146,'2006-02-15 05:05:03'),(171,166,'2006-02-15 05:05:03'),(171,181,'2006-02-15 05:05:03'),(171,219,'2006-02-15 05:05:03'),(171,273,'2006-02-15 05:05:03'),(171,296,'2006-02-15 05:05:03'),(171,318,'2006-02-15 05:05:03'),(171,342,'2006-02-15 05:05:03'),(171,397,'2006-02-15 05:05:03'),(171,447,'2006-02-15 05:05:03'),(171,450,'2006-02-15 05:05:03'),(171,466,'2006-02-15 05:05:03'),(171,549,'2006-02-15 05:05:03'),(171,560,'2006-02-15 05:05:03'),(171,566,'2006-02-15 05:05:03'),(171,608,'2006-02-15 05:05:03'),(171,625,'2006-02-15 05:05:03'),(171,645,'2006-02-15 05:05:03'),(171,701,'2006-02-15 05:05:03'),(171,761,'2006-02-15 05:05:03'),(171,779,'2006-02-15 05:05:03'),(171,849,'2006-02-15 05:05:03'),(171,872,'2006-02-15 05:05:03'),(171,892,'2006-02-15 05:05:03'),(171,898,'2006-02-15 05:05:03'),(171,903,'2006-02-15 05:05:03'),(171,953,'2006-02-15 05:05:03'),(172,57,'2006-02-15 05:05:03'),(172,100,'2006-02-15 05:05:03'),(172,148,'2006-02-15 05:05:03'),(172,215,'2006-02-15 05:05:03'),(172,302,'2006-02-15 05:05:03'),(172,345,'2006-02-15 05:05:03'),(172,368,'2006-02-15 05:05:03'),(172,385,'2006-02-15 05:05:03'),(172,423,'2006-02-15 05:05:03'),(172,487,'2006-02-15 05:05:03'),(172,493,'2006-02-15 05:05:03'),(172,529,'2006-02-15 05:05:03'),(172,538,'2006-02-15 05:05:03'),(172,567,'2006-02-15 05:05:03'),(172,609,'2006-02-15 05:05:03'),(172,639,'2006-02-15 05:05:03'),(172,649,'2006-02-15 05:05:03'),(172,661,'2006-02-15 05:05:03'),(172,667,'2006-02-15 05:05:03'),(172,710,'2006-02-15 05:05:03'),(172,744,'2006-02-15 05:05:03'),(172,758,'2006-02-15 05:05:03'),(172,771,'2006-02-15 05:05:03'),(172,833,'2006-02-15 05:05:03'),(172,959,'2006-02-15 05:05:03'),(173,49,'2006-02-15 05:05:03'),(173,55,'2006-02-15 05:05:03'),(173,74,'2006-02-15 05:05:03'),(173,80,'2006-02-15 05:05:03'),(173,106,'2006-02-15 05:05:03'),(173,154,'2006-02-15 05:05:03'),(173,162,'2006-02-15 05:05:03'),(173,188,'2006-02-15 05:05:03'),(173,235,'2006-02-15 05:05:03'),(173,313,'2006-02-15 05:05:03'),(173,379,'2006-02-15 05:05:03'),(173,405,'2006-02-15 05:05:03'),(173,491,'2006-02-15 05:05:03'),(173,496,'2006-02-15 05:05:03'),(173,529,'2006-02-15 05:05:03'),(173,550,'2006-02-15 05:05:03'),(173,564,'2006-02-15 05:05:03'),(173,571,'2006-02-15 05:05:03'),(173,592,'2006-02-15 05:05:03'),(173,688,'2006-02-15 05:05:03'),(173,753,'2006-02-15 05:05:03'),(173,757,'2006-02-15 05:05:03'),(173,852,'2006-02-15 05:05:03'),(173,857,'2006-02-15 05:05:03'),(173,921,'2006-02-15 05:05:03'),(173,928,'2006-02-15 05:05:03'),(173,933,'2006-02-15 05:05:03'),(174,11,'2006-02-15 05:05:03'),(174,61,'2006-02-15 05:05:03'),(174,168,'2006-02-15 05:05:03'),(174,298,'2006-02-15 05:05:03'),(174,352,'2006-02-15 05:05:03'),(174,442,'2006-02-15 05:05:03'),(174,451,'2006-02-15 05:05:03'),(174,496,'2006-02-15 05:05:03'),(174,610,'2006-02-15 05:05:03'),(174,618,'2006-02-15 05:05:03'),(174,622,'2006-02-15 05:05:03'),(174,659,'2006-02-15 05:05:03'),(174,677,'2006-02-15 05:05:03'),(174,705,'2006-02-15 05:05:03'),(174,722,'2006-02-15 05:05:03'),(174,780,'2006-02-15 05:05:03'),(174,797,'2006-02-15 05:05:03'),(174,809,'2006-02-15 05:05:03'),(174,827,'2006-02-15 05:05:03'),(174,830,'2006-02-15 05:05:03'),(174,852,'2006-02-15 05:05:03'),(174,853,'2006-02-15 05:05:03'),(174,879,'2006-02-15 05:05:03'),(174,982,'2006-02-15 05:05:03'),(175,9,'2006-02-15 05:05:03'),(175,29,'2006-02-15 05:05:03'),(175,67,'2006-02-15 05:05:03'),(175,129,'2006-02-15 05:05:03'),(175,155,'2006-02-15 05:05:03'),(175,190,'2006-02-15 05:05:03'),(175,191,'2006-02-15 05:05:03'),(175,362,'2006-02-15 05:05:03'),(175,405,'2006-02-15 05:05:03'),(175,424,'2006-02-15 05:05:03'),(175,439,'2006-02-15 05:05:03'),(175,442,'2006-02-15 05:05:03'),(175,483,'2006-02-15 05:05:03'),(175,591,'2006-02-15 05:05:03'),(175,596,'2006-02-15 05:05:03'),(175,616,'2006-02-15 05:05:03'),(175,719,'2006-02-15 05:05:03'),(175,729,'2006-02-15 05:05:03'),(175,772,'2006-02-15 05:05:03'),(175,778,'2006-02-15 05:05:03'),(175,828,'2006-02-15 05:05:03'),(175,842,'2006-02-15 05:05:03'),(175,890,'2006-02-15 05:05:03'),(175,908,'2006-02-15 05:05:03'),(175,977,'2006-02-15 05:05:03'),(175,978,'2006-02-15 05:05:03'),(175,998,'2006-02-15 05:05:03'),(176,13,'2006-02-15 05:05:03'),(176,73,'2006-02-15 05:05:03'),(176,89,'2006-02-15 05:05:03'),(176,150,'2006-02-15 05:05:03'),(176,162,'2006-02-15 05:05:03'),(176,238,'2006-02-15 05:05:03'),(176,252,'2006-02-15 05:05:03'),(176,303,'2006-02-15 05:05:03'),(176,320,'2006-02-15 05:05:03'),(176,401,'2006-02-15 05:05:03'),(176,417,'2006-02-15 05:05:03'),(176,441,'2006-02-15 05:05:03'),(176,458,'2006-02-15 05:05:03'),(176,461,'2006-02-15 05:05:03'),(176,517,'2006-02-15 05:05:03'),(176,521,'2006-02-15 05:05:03'),(176,543,'2006-02-15 05:05:03'),(176,573,'2006-02-15 05:05:03'),(176,699,'2006-02-15 05:05:03'),(176,726,'2006-02-15 05:05:03'),(176,740,'2006-02-15 05:05:03'),(176,746,'2006-02-15 05:05:03'),(176,758,'2006-02-15 05:05:03'),(176,802,'2006-02-15 05:05:03'),(176,827,'2006-02-15 05:05:03'),(176,839,'2006-02-15 05:05:03'),(176,859,'2006-02-15 05:05:03'),(176,872,'2006-02-15 05:05:03'),(176,946,'2006-02-15 05:05:03'),(177,12,'2006-02-15 05:05:03'),(177,39,'2006-02-15 05:05:03'),(177,52,'2006-02-15 05:05:03'),(177,55,'2006-02-15 05:05:03'),(177,86,'2006-02-15 05:05:03'),(177,175,'2006-02-15 05:05:03'),(177,188,'2006-02-15 05:05:03'),(177,235,'2006-02-15 05:05:03'),(177,237,'2006-02-15 05:05:03'),(177,289,'2006-02-15 05:05:03'),(177,363,'2006-02-15 05:05:03'),(177,401,'2006-02-15 05:05:03'),(177,433,'2006-02-15 05:05:03'),(177,458,'2006-02-15 05:05:03'),(177,522,'2006-02-15 05:05:03'),(177,543,'2006-02-15 05:05:03'),(177,563,'2006-02-15 05:05:03'),(177,649,'2006-02-15 05:05:03'),(177,683,'2006-02-15 05:05:03'),(177,684,'2006-02-15 05:05:03'),(177,726,'2006-02-15 05:05:03'),(177,751,'2006-02-15 05:05:03'),(177,763,'2006-02-15 05:05:03'),(177,764,'2006-02-15 05:05:03'),(177,827,'2006-02-15 05:05:03'),(177,910,'2006-02-15 05:05:03'),(177,956,'2006-02-15 05:05:03'),(178,30,'2006-02-15 05:05:03'),(178,34,'2006-02-15 05:05:03'),(178,109,'2006-02-15 05:05:03'),(178,146,'2006-02-15 05:05:03'),(178,160,'2006-02-15 05:05:03'),(178,164,'2006-02-15 05:05:03'),(178,194,'2006-02-15 05:05:03'),(178,197,'2006-02-15 05:05:03'),(178,273,'2006-02-15 05:05:03'),(178,311,'2006-02-15 05:05:03'),(178,397,'2006-02-15 05:05:03'),(178,483,'2006-02-15 05:05:03'),(178,517,'2006-02-15 05:05:03'),(178,537,'2006-02-15 05:05:03'),(178,587,'2006-02-15 05:05:03'),(178,708,'2006-02-15 05:05:03'),(178,733,'2006-02-15 05:05:03'),(178,744,'2006-02-15 05:05:03'),(178,762,'2006-02-15 05:05:03'),(178,930,'2006-02-15 05:05:03'),(178,974,'2006-02-15 05:05:03'),(178,983,'2006-02-15 05:05:03'),(178,1000,'2006-02-15 05:05:03'),(179,24,'2006-02-15 05:05:03'),(179,27,'2006-02-15 05:05:03'),(179,65,'2006-02-15 05:05:03'),(179,85,'2006-02-15 05:05:03'),(179,109,'2006-02-15 05:05:03'),(179,131,'2006-02-15 05:05:03'),(179,159,'2006-02-15 05:05:03'),(179,193,'2006-02-15 05:05:03'),(179,250,'2006-02-15 05:05:03'),(179,291,'2006-02-15 05:05:03'),(179,353,'2006-02-15 05:05:03'),(179,415,'2006-02-15 05:05:03'),(179,463,'2006-02-15 05:05:03'),(179,468,'2006-02-15 05:05:03'),(179,489,'2006-02-15 05:05:03'),(179,566,'2006-02-15 05:05:03'),(179,588,'2006-02-15 05:05:03'),(179,650,'2006-02-15 05:05:03'),(179,698,'2006-02-15 05:05:03'),(179,732,'2006-02-15 05:05:03'),(179,737,'2006-02-15 05:05:03'),(179,769,'2006-02-15 05:05:03'),(179,811,'2006-02-15 05:05:03'),(179,817,'2006-02-15 05:05:03'),(179,852,'2006-02-15 05:05:03'),(179,924,'2006-02-15 05:05:03'),(179,931,'2006-02-15 05:05:03'),(179,960,'2006-02-15 05:05:03'),(179,976,'2006-02-15 05:05:03'),(180,12,'2006-02-15 05:05:03'),(180,33,'2006-02-15 05:05:03'),(180,144,'2006-02-15 05:05:03'),(180,195,'2006-02-15 05:05:03'),(180,258,'2006-02-15 05:05:03'),(180,441,'2006-02-15 05:05:03'),(180,506,'2006-02-15 05:05:03'),(180,561,'2006-02-15 05:05:03'),(180,609,'2006-02-15 05:05:03'),(180,622,'2006-02-15 05:05:03'),(180,628,'2006-02-15 05:05:03'),(180,657,'2006-02-15 05:05:03'),(180,724,'2006-02-15 05:05:03'),(180,729,'2006-02-15 05:05:03'),(180,732,'2006-02-15 05:05:03'),(180,777,'2006-02-15 05:05:03'),(180,809,'2006-02-15 05:05:03'),(180,811,'2006-02-15 05:05:03'),(180,820,'2006-02-15 05:05:03'),(180,824,'2006-02-15 05:05:03'),(180,847,'2006-02-15 05:05:03'),(180,869,'2006-02-15 05:05:03'),(180,874,'2006-02-15 05:05:03'),(180,955,'2006-02-15 05:05:03'),(180,963,'2006-02-15 05:05:03'),(181,5,'2006-02-15 05:05:03'),(181,40,'2006-02-15 05:05:03'),(181,74,'2006-02-15 05:05:03'),(181,78,'2006-02-15 05:05:03'),(181,83,'2006-02-15 05:05:03'),(181,152,'2006-02-15 05:05:03'),(181,195,'2006-02-15 05:05:03'),(181,233,'2006-02-15 05:05:03'),(181,286,'2006-02-15 05:05:03'),(181,301,'2006-02-15 05:05:03'),(181,311,'2006-02-15 05:05:03'),(181,381,'2006-02-15 05:05:03'),(181,387,'2006-02-15 05:05:03'),(181,403,'2006-02-15 05:05:03'),(181,409,'2006-02-15 05:05:03'),(181,420,'2006-02-15 05:05:03'),(181,437,'2006-02-15 05:05:03'),(181,456,'2006-02-15 05:05:03'),(181,507,'2006-02-15 05:05:03'),(181,522,'2006-02-15 05:05:03'),(181,539,'2006-02-15 05:05:03'),(181,542,'2006-02-15 05:05:03'),(181,546,'2006-02-15 05:05:03'),(181,579,'2006-02-15 05:05:03'),(181,596,'2006-02-15 05:05:03'),(181,604,'2006-02-15 05:05:03'),(181,609,'2006-02-15 05:05:03'),(181,625,'2006-02-15 05:05:03'),(181,744,'2006-02-15 05:05:03'),(181,816,'2006-02-15 05:05:03'),(181,836,'2006-02-15 05:05:03'),(181,868,'2006-02-15 05:05:03'),(181,870,'2006-02-15 05:05:03'),(181,874,'2006-02-15 05:05:03'),(181,892,'2006-02-15 05:05:03'),(181,907,'2006-02-15 05:05:03'),(181,911,'2006-02-15 05:05:03'),(181,921,'2006-02-15 05:05:03'),(181,991,'2006-02-15 05:05:03'),(182,33,'2006-02-15 05:05:03'),(182,160,'2006-02-15 05:05:03'),(182,301,'2006-02-15 05:05:03'),(182,324,'2006-02-15 05:05:03'),(182,346,'2006-02-15 05:05:03'),(182,362,'2006-02-15 05:05:03'),(182,391,'2006-02-15 05:05:03'),(182,413,'2006-02-15 05:05:03'),(182,421,'2006-02-15 05:05:03'),(182,437,'2006-02-15 05:05:03'),(182,590,'2006-02-15 05:05:03'),(182,639,'2006-02-15 05:05:03'),(182,668,'2006-02-15 05:05:03'),(182,677,'2006-02-15 05:05:03'),(182,679,'2006-02-15 05:05:03'),(182,695,'2006-02-15 05:05:03'),(182,714,'2006-02-15 05:05:03'),(182,720,'2006-02-15 05:05:03'),(182,819,'2006-02-15 05:05:03'),(182,828,'2006-02-15 05:05:03'),(182,845,'2006-02-15 05:05:03'),(182,864,'2006-02-15 05:05:03'),(182,940,'2006-02-15 05:05:03'),(182,990,'2006-02-15 05:05:03'),(183,32,'2006-02-15 05:05:03'),(183,40,'2006-02-15 05:05:03'),(183,71,'2006-02-15 05:05:03'),(183,113,'2006-02-15 05:05:03'),(183,313,'2006-02-15 05:05:03'),(183,388,'2006-02-15 05:05:03'),(183,389,'2006-02-15 05:05:03'),(183,390,'2006-02-15 05:05:03'),(183,495,'2006-02-15 05:05:03'),(183,520,'2006-02-15 05:05:03'),(183,576,'2006-02-15 05:05:03'),(183,636,'2006-02-15 05:05:03'),(183,715,'2006-02-15 05:05:03'),(183,850,'2006-02-15 05:05:03'),(183,862,'2006-02-15 05:05:03'),(183,914,'2006-02-15 05:05:03'),(183,941,'2006-02-15 05:05:03'),(183,949,'2006-02-15 05:05:03'),(183,983,'2006-02-15 05:05:03'),(184,35,'2006-02-15 05:05:03'),(184,87,'2006-02-15 05:05:03'),(184,146,'2006-02-15 05:05:03'),(184,169,'2006-02-15 05:05:03'),(184,221,'2006-02-15 05:05:03'),(184,336,'2006-02-15 05:05:03'),(184,371,'2006-02-15 05:05:03'),(184,452,'2006-02-15 05:05:03'),(184,486,'2006-02-15 05:05:03'),(184,492,'2006-02-15 05:05:03'),(184,500,'2006-02-15 05:05:03'),(184,574,'2006-02-15 05:05:03'),(184,580,'2006-02-15 05:05:03'),(184,597,'2006-02-15 05:05:03'),(184,615,'2006-02-15 05:05:03'),(184,640,'2006-02-15 05:05:03'),(184,642,'2006-02-15 05:05:03'),(184,650,'2006-02-15 05:05:03'),(184,661,'2006-02-15 05:05:03'),(184,684,'2006-02-15 05:05:03'),(184,745,'2006-02-15 05:05:03'),(184,772,'2006-02-15 05:05:03'),(184,787,'2006-02-15 05:05:03'),(184,867,'2006-02-15 05:05:03'),(184,959,'2006-02-15 05:05:03'),(184,966,'2006-02-15 05:05:03'),(184,967,'2006-02-15 05:05:03'),(184,969,'2006-02-15 05:05:03'),(184,985,'2006-02-15 05:05:03'),(185,7,'2006-02-15 05:05:03'),(185,95,'2006-02-15 05:05:03'),(185,138,'2006-02-15 05:05:03'),(185,265,'2006-02-15 05:05:03'),(185,286,'2006-02-15 05:05:03'),(185,360,'2006-02-15 05:05:03'),(185,411,'2006-02-15 05:05:03'),(185,427,'2006-02-15 05:05:03'),(185,437,'2006-02-15 05:05:03'),(185,448,'2006-02-15 05:05:03'),(185,494,'2006-02-15 05:05:03'),(185,510,'2006-02-15 05:05:03'),(185,518,'2006-02-15 05:05:03'),(185,554,'2006-02-15 05:05:03'),(185,560,'2006-02-15 05:05:03'),(185,571,'2006-02-15 05:05:03'),(185,584,'2006-02-15 05:05:03'),(185,631,'2006-02-15 05:05:03'),(185,665,'2006-02-15 05:05:03'),(185,694,'2006-02-15 05:05:03'),(185,730,'2006-02-15 05:05:03'),(185,761,'2006-02-15 05:05:03'),(185,818,'2006-02-15 05:05:03'),(185,845,'2006-02-15 05:05:03'),(185,880,'2006-02-15 05:05:03'),(185,882,'2006-02-15 05:05:03'),(185,919,'2006-02-15 05:05:03'),(185,920,'2006-02-15 05:05:03'),(185,965,'2006-02-15 05:05:03'),(185,973,'2006-02-15 05:05:03'),(186,95,'2006-02-15 05:05:03'),(186,187,'2006-02-15 05:05:03'),(186,208,'2006-02-15 05:05:03'),(186,228,'2006-02-15 05:05:03'),(186,237,'2006-02-15 05:05:03'),(186,422,'2006-02-15 05:05:03'),(186,482,'2006-02-15 05:05:03'),(186,508,'2006-02-15 05:05:03'),(186,552,'2006-02-15 05:05:03'),(186,579,'2006-02-15 05:05:03'),(186,637,'2006-02-15 05:05:03'),(186,648,'2006-02-15 05:05:03'),(186,654,'2006-02-15 05:05:03'),(186,729,'2006-02-15 05:05:03'),(186,983,'2006-02-15 05:05:03'),(186,994,'2006-02-15 05:05:03'),(187,17,'2006-02-15 05:05:03'),(187,25,'2006-02-15 05:05:03'),(187,29,'2006-02-15 05:05:03'),(187,51,'2006-02-15 05:05:03'),(187,73,'2006-02-15 05:05:03'),(187,76,'2006-02-15 05:05:03'),(187,98,'2006-02-15 05:05:03'),(187,110,'2006-02-15 05:05:03'),(187,127,'2006-02-15 05:05:03'),(187,168,'2006-02-15 05:05:03'),(187,222,'2006-02-15 05:05:03'),(187,224,'2006-02-15 05:05:03'),(187,297,'2006-02-15 05:05:03'),(187,354,'2006-02-15 05:05:03'),(187,379,'2006-02-15 05:05:03'),(187,417,'2006-02-15 05:05:03'),(187,435,'2006-02-15 05:05:03'),(187,441,'2006-02-15 05:05:03'),(187,474,'2006-02-15 05:05:03'),(187,499,'2006-02-15 05:05:03'),(187,538,'2006-02-15 05:05:03'),(187,548,'2006-02-15 05:05:03'),(187,561,'2006-02-15 05:05:03'),(187,617,'2006-02-15 05:05:03'),(187,625,'2006-02-15 05:05:03'),(187,664,'2006-02-15 05:05:03'),(187,671,'2006-02-15 05:05:03'),(187,768,'2006-02-15 05:05:03'),(187,779,'2006-02-15 05:05:03'),(187,906,'2006-02-15 05:05:03'),(187,914,'2006-02-15 05:05:03'),(187,923,'2006-02-15 05:05:03'),(187,976,'2006-02-15 05:05:03'),(188,1,'2006-02-15 05:05:03'),(188,10,'2006-02-15 05:05:03'),(188,14,'2006-02-15 05:05:03'),(188,51,'2006-02-15 05:05:03'),(188,102,'2006-02-15 05:05:03'),(188,111,'2006-02-15 05:05:03'),(188,146,'2006-02-15 05:05:03'),(188,206,'2006-02-15 05:05:03'),(188,223,'2006-02-15 05:05:03'),(188,289,'2006-02-15 05:05:03'),(188,311,'2006-02-15 05:05:03'),(188,322,'2006-02-15 05:05:03'),(188,338,'2006-02-15 05:05:03'),(188,396,'2006-02-15 05:05:03'),(188,412,'2006-02-15 05:05:03'),(188,506,'2006-02-15 05:05:03'),(188,517,'2006-02-15 05:05:03'),(188,529,'2006-02-15 05:05:03'),(188,566,'2006-02-15 05:05:03'),(188,593,'2006-02-15 05:05:03'),(188,606,'2006-02-15 05:05:03'),(188,662,'2006-02-15 05:05:03'),(188,770,'2006-02-15 05:05:03'),(188,773,'2006-02-15 05:05:03'),(188,774,'2006-02-15 05:05:03'),(188,815,'2006-02-15 05:05:03'),(188,849,'2006-02-15 05:05:03'),(188,925,'2006-02-15 05:05:03'),(188,988,'2006-02-15 05:05:03'),(188,989,'2006-02-15 05:05:03'),(189,43,'2006-02-15 05:05:03'),(189,82,'2006-02-15 05:05:03'),(189,171,'2006-02-15 05:05:03'),(189,266,'2006-02-15 05:05:03'),(189,272,'2006-02-15 05:05:03'),(189,315,'2006-02-15 05:05:03'),(189,378,'2006-02-15 05:05:03'),(189,492,'2006-02-15 05:05:03'),(189,509,'2006-02-15 05:05:03'),(189,512,'2006-02-15 05:05:03'),(189,519,'2006-02-15 05:05:03'),(189,533,'2006-02-15 05:05:03'),(189,548,'2006-02-15 05:05:03'),(189,560,'2006-02-15 05:05:03'),(189,628,'2006-02-15 05:05:03'),(189,734,'2006-02-15 05:05:03'),(189,748,'2006-02-15 05:05:03'),(189,788,'2006-02-15 05:05:03'),(189,820,'2006-02-15 05:05:03'),(189,853,'2006-02-15 05:05:03'),(189,882,'2006-02-15 05:05:03'),(189,896,'2006-02-15 05:05:03'),(189,899,'2006-02-15 05:05:03'),(189,940,'2006-02-15 05:05:03'),(190,38,'2006-02-15 05:05:03'),(190,54,'2006-02-15 05:05:03'),(190,62,'2006-02-15 05:05:03'),(190,87,'2006-02-15 05:05:03'),(190,173,'2006-02-15 05:05:03'),(190,234,'2006-02-15 05:05:03'),(190,253,'2006-02-15 05:05:03'),(190,278,'2006-02-15 05:05:03'),(190,310,'2006-02-15 05:05:03'),(190,374,'2006-02-15 05:05:03'),(190,411,'2006-02-15 05:05:03'),(190,426,'2006-02-15 05:05:03'),(190,472,'2006-02-15 05:05:03'),(190,549,'2006-02-15 05:05:03'),(190,562,'2006-02-15 05:05:03'),(190,606,'2006-02-15 05:05:03'),(190,623,'2006-02-15 05:05:03'),(190,679,'2006-02-15 05:05:03'),(190,682,'2006-02-15 05:05:03'),(190,693,'2006-02-15 05:05:03'),(190,695,'2006-02-15 05:05:03'),(190,705,'2006-02-15 05:05:03'),(190,708,'2006-02-15 05:05:03'),(190,802,'2006-02-15 05:05:03'),(190,806,'2006-02-15 05:05:03'),(190,874,'2006-02-15 05:05:03'),(190,959,'2006-02-15 05:05:03'),(191,16,'2006-02-15 05:05:03'),(191,39,'2006-02-15 05:05:03'),(191,84,'2006-02-15 05:05:03'),(191,185,'2006-02-15 05:05:03'),(191,219,'2006-02-15 05:05:03'),(191,293,'2006-02-15 05:05:03'),(191,296,'2006-02-15 05:05:03'),(191,378,'2006-02-15 05:05:03'),(191,410,'2006-02-15 05:05:03'),(191,420,'2006-02-15 05:05:03'),(191,461,'2006-02-15 05:05:03'),(191,544,'2006-02-15 05:05:03'),(191,551,'2006-02-15 05:05:03'),(191,596,'2006-02-15 05:05:03'),(191,638,'2006-02-15 05:05:03'),(191,668,'2006-02-15 05:05:03'),(191,692,'2006-02-15 05:05:03'),(191,775,'2006-02-15 05:05:03'),(191,801,'2006-02-15 05:05:03'),(191,819,'2006-02-15 05:05:03'),(191,827,'2006-02-15 05:05:03'),(191,830,'2006-02-15 05:05:03'),(191,834,'2006-02-15 05:05:03'),(191,849,'2006-02-15 05:05:03'),(191,858,'2006-02-15 05:05:03'),(191,914,'2006-02-15 05:05:03'),(191,958,'2006-02-15 05:05:03'),(191,969,'2006-02-15 05:05:03'),(191,971,'2006-02-15 05:05:03'),(191,993,'2006-02-15 05:05:03'),(192,16,'2006-02-15 05:05:03'),(192,69,'2006-02-15 05:05:03'),(192,117,'2006-02-15 05:05:03'),(192,155,'2006-02-15 05:05:03'),(192,166,'2006-02-15 05:05:03'),(192,179,'2006-02-15 05:05:03'),(192,214,'2006-02-15 05:05:03'),(192,361,'2006-02-15 05:05:03'),(192,367,'2006-02-15 05:05:03'),(192,426,'2006-02-15 05:05:03'),(192,465,'2006-02-15 05:05:03'),(192,470,'2006-02-15 05:05:03'),(192,475,'2006-02-15 05:05:03'),(192,485,'2006-02-15 05:05:03'),(192,541,'2006-02-15 05:05:03'),(192,578,'2006-02-15 05:05:03'),(192,592,'2006-02-15 05:05:03'),(192,614,'2006-02-15 05:05:03'),(192,618,'2006-02-15 05:05:03'),(192,622,'2006-02-15 05:05:03'),(192,674,'2006-02-15 05:05:03'),(192,677,'2006-02-15 05:05:03'),(192,680,'2006-02-15 05:05:03'),(192,682,'2006-02-15 05:05:03'),(192,708,'2006-02-15 05:05:03'),(192,711,'2006-02-15 05:05:03'),(192,747,'2006-02-15 05:05:03'),(192,763,'2006-02-15 05:05:03'),(192,819,'2006-02-15 05:05:03'),(193,44,'2006-02-15 05:05:03'),(193,80,'2006-02-15 05:05:03'),(193,103,'2006-02-15 05:05:03'),(193,109,'2006-02-15 05:05:03'),(193,119,'2006-02-15 05:05:03'),(193,141,'2006-02-15 05:05:03'),(193,164,'2006-02-15 05:05:03'),(193,291,'2006-02-15 05:05:03'),(193,352,'2006-02-15 05:05:03'),(193,358,'2006-02-15 05:05:03'),(193,376,'2006-02-15 05:05:03'),(193,412,'2006-02-15 05:05:03'),(193,462,'2006-02-15 05:05:03'),(193,689,'2006-02-15 05:05:03'),(193,709,'2006-02-15 05:05:03'),(193,745,'2006-02-15 05:05:03'),(193,807,'2006-02-15 05:05:03'),(193,828,'2006-02-15 05:05:03'),(193,834,'2006-02-15 05:05:03'),(193,851,'2006-02-15 05:05:03'),(193,937,'2006-02-15 05:05:03'),(193,953,'2006-02-15 05:05:03'),(193,960,'2006-02-15 05:05:03'),(194,9,'2006-02-15 05:05:03'),(194,42,'2006-02-15 05:05:03'),(194,67,'2006-02-15 05:05:03'),(194,86,'2006-02-15 05:05:03'),(194,88,'2006-02-15 05:05:03'),(194,98,'2006-02-15 05:05:03'),(194,135,'2006-02-15 05:05:03'),(194,161,'2006-02-15 05:05:03'),(194,163,'2006-02-15 05:05:03'),(194,215,'2006-02-15 05:05:03'),(194,232,'2006-02-15 05:05:03'),(194,352,'2006-02-15 05:05:03'),(194,415,'2006-02-15 05:05:03'),(194,486,'2006-02-15 05:05:03'),(194,498,'2006-02-15 05:05:03'),(194,531,'2006-02-15 05:05:03'),(194,719,'2006-02-15 05:05:03'),(194,738,'2006-02-15 05:05:03'),(194,786,'2006-02-15 05:05:03'),(194,872,'2006-02-15 05:05:03'),(194,938,'2006-02-15 05:05:03'),(194,940,'2006-02-15 05:05:03'),(195,129,'2006-02-15 05:05:03'),(195,130,'2006-02-15 05:05:03'),(195,141,'2006-02-15 05:05:03'),(195,144,'2006-02-15 05:05:03'),(195,298,'2006-02-15 05:05:03'),(195,359,'2006-02-15 05:05:03'),(195,361,'2006-02-15 05:05:03'),(195,392,'2006-02-15 05:05:03'),(195,403,'2006-02-15 05:05:03'),(195,494,'2006-02-15 05:05:03'),(195,520,'2006-02-15 05:05:03'),(195,534,'2006-02-15 05:05:03'),(195,560,'2006-02-15 05:05:03'),(195,592,'2006-02-15 05:05:03'),(195,649,'2006-02-15 05:05:03'),(195,658,'2006-02-15 05:05:03'),(195,673,'2006-02-15 05:05:03'),(195,677,'2006-02-15 05:05:03'),(195,706,'2006-02-15 05:05:03'),(195,738,'2006-02-15 05:05:03'),(195,769,'2006-02-15 05:05:03'),(195,781,'2006-02-15 05:05:03'),(195,794,'2006-02-15 05:05:03'),(195,813,'2006-02-15 05:05:03'),(195,869,'2006-02-15 05:05:03'),(195,885,'2006-02-15 05:05:03'),(195,962,'2006-02-15 05:05:03'),(196,64,'2006-02-15 05:05:03'),(196,122,'2006-02-15 05:05:03'),(196,156,'2006-02-15 05:05:03'),(196,169,'2006-02-15 05:05:03'),(196,276,'2006-02-15 05:05:03'),(196,284,'2006-02-15 05:05:03'),(196,303,'2006-02-15 05:05:03'),(196,324,'2006-02-15 05:05:03'),(196,423,'2006-02-15 05:05:03'),(196,473,'2006-02-15 05:05:03'),(196,484,'2006-02-15 05:05:03'),(196,515,'2006-02-15 05:05:03'),(196,524,'2006-02-15 05:05:03'),(196,541,'2006-02-15 05:05:03'),(196,560,'2006-02-15 05:05:03'),(196,575,'2006-02-15 05:05:03'),(196,576,'2006-02-15 05:05:03'),(196,587,'2006-02-15 05:05:03'),(196,615,'2006-02-15 05:05:03'),(196,635,'2006-02-15 05:05:03'),(196,684,'2006-02-15 05:05:03'),(196,795,'2006-02-15 05:05:03'),(196,815,'2006-02-15 05:05:03'),(196,833,'2006-02-15 05:05:03'),(196,837,'2006-02-15 05:05:03'),(196,906,'2006-02-15 05:05:03'),(196,908,'2006-02-15 05:05:03'),(196,919,'2006-02-15 05:05:03'),(196,939,'2006-02-15 05:05:03'),(196,972,'2006-02-15 05:05:03'),(197,6,'2006-02-15 05:05:03'),(197,29,'2006-02-15 05:05:03'),(197,63,'2006-02-15 05:05:03'),(197,123,'2006-02-15 05:05:03'),(197,129,'2006-02-15 05:05:03'),(197,147,'2006-02-15 05:05:03'),(197,164,'2006-02-15 05:05:03'),(197,189,'2006-02-15 05:05:03'),(197,243,'2006-02-15 05:05:03'),(197,249,'2006-02-15 05:05:03'),(197,258,'2006-02-15 05:05:03'),(197,364,'2006-02-15 05:05:03'),(197,369,'2006-02-15 05:05:03'),(197,370,'2006-02-15 05:05:03'),(197,418,'2006-02-15 05:05:03'),(197,522,'2006-02-15 05:05:03'),(197,531,'2006-02-15 05:05:03'),(197,554,'2006-02-15 05:05:03'),(197,598,'2006-02-15 05:05:03'),(197,628,'2006-02-15 05:05:03'),(197,691,'2006-02-15 05:05:03'),(197,724,'2006-02-15 05:05:03'),(197,746,'2006-02-15 05:05:03'),(197,752,'2006-02-15 05:05:03'),(197,758,'2006-02-15 05:05:03'),(197,769,'2006-02-15 05:05:03'),(197,815,'2006-02-15 05:05:03'),(197,916,'2006-02-15 05:05:03'),(197,950,'2006-02-15 05:05:03'),(197,967,'2006-02-15 05:05:03'),(197,974,'2006-02-15 05:05:03'),(197,979,'2006-02-15 05:05:03'),(197,995,'2006-02-15 05:05:03'),(198,1,'2006-02-15 05:05:03'),(198,109,'2006-02-15 05:05:03'),(198,125,'2006-02-15 05:05:03'),(198,186,'2006-02-15 05:05:03'),(198,262,'2006-02-15 05:05:03'),(198,264,'2006-02-15 05:05:03'),(198,303,'2006-02-15 05:05:03'),(198,309,'2006-02-15 05:05:03'),(198,311,'2006-02-15 05:05:03'),(198,329,'2006-02-15 05:05:03'),(198,347,'2006-02-15 05:05:03'),(198,379,'2006-02-15 05:05:03'),(198,395,'2006-02-15 05:05:03'),(198,406,'2006-02-15 05:05:03'),(198,450,'2006-02-15 05:05:03'),(198,464,'2006-02-15 05:05:03'),(198,482,'2006-02-15 05:05:03'),(198,499,'2006-02-15 05:05:03'),(198,536,'2006-02-15 05:05:03'),(198,541,'2006-02-15 05:05:03'),(198,545,'2006-02-15 05:05:03'),(198,555,'2006-02-15 05:05:03'),(198,568,'2006-02-15 05:05:03'),(198,570,'2006-02-15 05:05:03'),(198,588,'2006-02-15 05:05:03'),(198,597,'2006-02-15 05:05:03'),(198,628,'2006-02-15 05:05:03'),(198,745,'2006-02-15 05:05:03'),(198,758,'2006-02-15 05:05:03'),(198,796,'2006-02-15 05:05:03'),(198,806,'2006-02-15 05:05:03'),(198,817,'2006-02-15 05:05:03'),(198,843,'2006-02-15 05:05:03'),(198,858,'2006-02-15 05:05:03'),(198,871,'2006-02-15 05:05:03'),(198,886,'2006-02-15 05:05:03'),(198,892,'2006-02-15 05:05:03'),(198,924,'2006-02-15 05:05:03'),(198,952,'2006-02-15 05:05:03'),(198,997,'2006-02-15 05:05:03'),(199,67,'2006-02-15 05:05:03'),(199,84,'2006-02-15 05:05:03'),(199,145,'2006-02-15 05:05:03'),(199,159,'2006-02-15 05:05:03'),(199,216,'2006-02-15 05:05:03'),(199,432,'2006-02-15 05:05:03'),(199,541,'2006-02-15 05:05:03'),(199,604,'2006-02-15 05:05:03'),(199,640,'2006-02-15 05:05:03'),(199,689,'2006-02-15 05:05:03'),(199,730,'2006-02-15 05:05:03'),(199,784,'2006-02-15 05:05:03'),(199,785,'2006-02-15 05:05:03'),(199,886,'2006-02-15 05:05:03'),(199,953,'2006-02-15 05:05:03'),(200,5,'2006-02-15 05:05:03'),(200,49,'2006-02-15 05:05:03'),(200,80,'2006-02-15 05:05:03'),(200,116,'2006-02-15 05:05:03'),(200,121,'2006-02-15 05:05:03'),(200,149,'2006-02-15 05:05:03'),(200,346,'2006-02-15 05:05:03'),(200,419,'2006-02-15 05:05:03'),(200,462,'2006-02-15 05:05:03'),(200,465,'2006-02-15 05:05:03'),(200,474,'2006-02-15 05:05:03'),(200,537,'2006-02-15 05:05:03'),(200,538,'2006-02-15 05:05:03'),(200,544,'2006-02-15 05:05:03'),(200,714,'2006-02-15 05:05:03'),(200,879,'2006-02-15 05:05:03'),(200,912,'2006-02-15 05:05:03'),(200,945,'2006-02-15 05:05:03'),(200,958,'2006-02-15 05:05:03'),(200,993,'2006-02-15 05:05:03'); +COMMIT; + +-- +-- Dumping data for table film_category +-- + +SET AUTOCOMMIT=0; +INSERT INTO film_category VALUES (1,6,'2006-02-15 05:07:09'),(2,11,'2006-02-15 05:07:09'),(3,6,'2006-02-15 05:07:09'),(4,11,'2006-02-15 05:07:09'),(5,8,'2006-02-15 05:07:09'),(6,9,'2006-02-15 05:07:09'),(7,5,'2006-02-15 05:07:09'),(8,11,'2006-02-15 05:07:09'),(9,11,'2006-02-15 05:07:09'),(10,15,'2006-02-15 05:07:09'),(11,9,'2006-02-15 05:07:09'),(12,12,'2006-02-15 05:07:09'),(13,11,'2006-02-15 05:07:09'),(14,4,'2006-02-15 05:07:09'),(15,9,'2006-02-15 05:07:09'),(16,9,'2006-02-15 05:07:09'),(17,12,'2006-02-15 05:07:09'),(18,2,'2006-02-15 05:07:09'),(19,1,'2006-02-15 05:07:09'),(20,12,'2006-02-15 05:07:09'),(21,1,'2006-02-15 05:07:09'),(22,13,'2006-02-15 05:07:09'),(23,2,'2006-02-15 05:07:09'),(24,11,'2006-02-15 05:07:09'),(25,13,'2006-02-15 05:07:09'),(26,14,'2006-02-15 05:07:09'),(27,15,'2006-02-15 05:07:09'),(28,5,'2006-02-15 05:07:09'),(29,1,'2006-02-15 05:07:09'),(30,11,'2006-02-15 05:07:09'),(31,8,'2006-02-15 05:07:09'),(32,13,'2006-02-15 05:07:09'),(33,7,'2006-02-15 05:07:09'),(34,11,'2006-02-15 05:07:09'),(35,11,'2006-02-15 05:07:09'),(36,2,'2006-02-15 05:07:09'),(37,4,'2006-02-15 05:07:09'),(38,1,'2006-02-15 05:07:09'),(39,14,'2006-02-15 05:07:09'),(40,6,'2006-02-15 05:07:09'),(41,16,'2006-02-15 05:07:09'),(42,15,'2006-02-15 05:07:09'),(43,8,'2006-02-15 05:07:09'),(44,14,'2006-02-15 05:07:09'),(45,13,'2006-02-15 05:07:09'),(46,10,'2006-02-15 05:07:09'),(47,9,'2006-02-15 05:07:09'),(48,3,'2006-02-15 05:07:09'),(49,14,'2006-02-15 05:07:09'),(50,8,'2006-02-15 05:07:09'),(51,12,'2006-02-15 05:07:09'),(52,9,'2006-02-15 05:07:09'),(53,8,'2006-02-15 05:07:09'),(54,12,'2006-02-15 05:07:09'),(55,14,'2006-02-15 05:07:09'),(56,1,'2006-02-15 05:07:09'),(57,16,'2006-02-15 05:07:09'),(58,6,'2006-02-15 05:07:09'),(59,3,'2006-02-15 05:07:09'),(60,4,'2006-02-15 05:07:09'),(61,7,'2006-02-15 05:07:09'),(62,6,'2006-02-15 05:07:09'),(63,8,'2006-02-15 05:07:09'),(64,7,'2006-02-15 05:07:09'),(65,11,'2006-02-15 05:07:09'),(66,3,'2006-02-15 05:07:09'),(67,1,'2006-02-15 05:07:09'),(68,3,'2006-02-15 05:07:09'),(69,14,'2006-02-15 05:07:09'),(70,2,'2006-02-15 05:07:09'),(71,8,'2006-02-15 05:07:09'),(72,6,'2006-02-15 05:07:09'),(73,14,'2006-02-15 05:07:09'),(74,12,'2006-02-15 05:07:09'),(75,16,'2006-02-15 05:07:09'),(76,12,'2006-02-15 05:07:09'),(77,13,'2006-02-15 05:07:09'),(78,2,'2006-02-15 05:07:09'),(79,7,'2006-02-15 05:07:09'),(80,8,'2006-02-15 05:07:09'),(81,14,'2006-02-15 05:07:09'),(82,8,'2006-02-15 05:07:09'),(83,8,'2006-02-15 05:07:09'),(84,16,'2006-02-15 05:07:09'),(85,6,'2006-02-15 05:07:09'),(86,12,'2006-02-15 05:07:09'),(87,16,'2006-02-15 05:07:09'),(88,16,'2006-02-15 05:07:09'),(89,2,'2006-02-15 05:07:09'),(90,13,'2006-02-15 05:07:09'),(91,4,'2006-02-15 05:07:09'),(92,11,'2006-02-15 05:07:09'),(93,13,'2006-02-15 05:07:09'),(94,8,'2006-02-15 05:07:09'),(95,13,'2006-02-15 05:07:09'),(96,13,'2006-02-15 05:07:09'),(97,1,'2006-02-15 05:07:09'),(98,7,'2006-02-15 05:07:09'),(99,5,'2006-02-15 05:07:09'),(100,9,'2006-02-15 05:07:09'),(101,6,'2006-02-15 05:07:09'),(102,15,'2006-02-15 05:07:09'),(103,16,'2006-02-15 05:07:09'),(104,9,'2006-02-15 05:07:09'),(105,1,'2006-02-15 05:07:09'),(106,10,'2006-02-15 05:07:09'),(107,7,'2006-02-15 05:07:09'),(108,13,'2006-02-15 05:07:09'),(109,13,'2006-02-15 05:07:09'),(110,3,'2006-02-15 05:07:09'),(111,1,'2006-02-15 05:07:09'),(112,9,'2006-02-15 05:07:09'),(113,15,'2006-02-15 05:07:09'),(114,14,'2006-02-15 05:07:09'),(115,1,'2006-02-15 05:07:09'),(116,4,'2006-02-15 05:07:09'),(117,10,'2006-02-15 05:07:09'),(118,2,'2006-02-15 05:07:09'),(119,5,'2006-02-15 05:07:09'),(120,15,'2006-02-15 05:07:09'),(121,2,'2006-02-15 05:07:09'),(122,11,'2006-02-15 05:07:09'),(123,16,'2006-02-15 05:07:09'),(124,3,'2006-02-15 05:07:09'),(125,16,'2006-02-15 05:07:09'),(126,1,'2006-02-15 05:07:09'),(127,5,'2006-02-15 05:07:09'),(128,9,'2006-02-15 05:07:09'),(129,6,'2006-02-15 05:07:09'),(130,1,'2006-02-15 05:07:09'),(131,4,'2006-02-15 05:07:09'),(132,14,'2006-02-15 05:07:09'),(133,12,'2006-02-15 05:07:09'),(134,2,'2006-02-15 05:07:09'),(135,15,'2006-02-15 05:07:09'),(136,13,'2006-02-15 05:07:09'),(137,14,'2006-02-15 05:07:09'),(138,14,'2006-02-15 05:07:09'),(139,8,'2006-02-15 05:07:09'),(140,14,'2006-02-15 05:07:09'),(141,10,'2006-02-15 05:07:09'),(142,6,'2006-02-15 05:07:09'),(143,7,'2006-02-15 05:07:09'),(144,13,'2006-02-15 05:07:09'),(145,8,'2006-02-15 05:07:09'),(146,7,'2006-02-15 05:07:09'),(147,8,'2006-02-15 05:07:09'),(148,9,'2006-02-15 05:07:09'),(149,3,'2006-02-15 05:07:09'),(150,6,'2006-02-15 05:07:09'),(151,14,'2006-02-15 05:07:09'),(152,3,'2006-02-15 05:07:09'),(153,14,'2006-02-15 05:07:09'),(154,2,'2006-02-15 05:07:09'),(155,13,'2006-02-15 05:07:09'),(156,6,'2006-02-15 05:07:09'),(157,3,'2006-02-15 05:07:09'),(158,12,'2006-02-15 05:07:09'),(159,5,'2006-02-15 05:07:09'),(160,2,'2006-02-15 05:07:09'),(161,12,'2006-02-15 05:07:09'),(162,1,'2006-02-15 05:07:09'),(163,13,'2006-02-15 05:07:09'),(164,6,'2006-02-15 05:07:09'),(165,14,'2006-02-15 05:07:09'),(166,4,'2006-02-15 05:07:09'),(167,16,'2006-02-15 05:07:09'),(168,3,'2006-02-15 05:07:09'),(169,16,'2006-02-15 05:07:09'),(170,9,'2006-02-15 05:07:09'),(171,11,'2006-02-15 05:07:09'),(172,7,'2006-02-15 05:07:09'),(173,7,'2006-02-15 05:07:09'),(174,12,'2006-02-15 05:07:09'),(175,8,'2006-02-15 05:07:09'),(176,15,'2006-02-15 05:07:09'),(177,14,'2006-02-15 05:07:09'),(178,5,'2006-02-15 05:07:09'),(179,7,'2006-02-15 05:07:09'),(180,4,'2006-02-15 05:07:09'),(181,16,'2006-02-15 05:07:09'),(182,5,'2006-02-15 05:07:09'),(183,8,'2006-02-15 05:07:09'),(184,4,'2006-02-15 05:07:09'),(185,9,'2006-02-15 05:07:09'),(186,7,'2006-02-15 05:07:09'),(187,15,'2006-02-15 05:07:09'),(188,5,'2006-02-15 05:07:09'),(189,10,'2006-02-15 05:07:09'),(190,4,'2006-02-15 05:07:09'),(191,3,'2006-02-15 05:07:09'),(192,9,'2006-02-15 05:07:09'),(193,2,'2006-02-15 05:07:09'),(194,1,'2006-02-15 05:07:09'),(195,14,'2006-02-15 05:07:09'),(196,4,'2006-02-15 05:07:09'),(197,15,'2006-02-15 05:07:09'),(198,9,'2006-02-15 05:07:09'),(199,6,'2006-02-15 05:07:09'),(200,10,'2006-02-15 05:07:09'),(201,9,'2006-02-15 05:07:09'),(202,5,'2006-02-15 05:07:09'),(203,14,'2006-02-15 05:07:09'),(204,7,'2006-02-15 05:07:09'),(205,1,'2006-02-15 05:07:09'),(206,6,'2006-02-15 05:07:09'),(207,9,'2006-02-15 05:07:09'),(208,2,'2006-02-15 05:07:09'),(209,7,'2006-02-15 05:07:09'),(210,1,'2006-02-15 05:07:09'),(211,10,'2006-02-15 05:07:09'),(212,1,'2006-02-15 05:07:09'),(213,8,'2006-02-15 05:07:09'),(214,3,'2006-02-15 05:07:09'),(215,10,'2006-02-15 05:07:09'),(216,13,'2006-02-15 05:07:09'),(217,10,'2006-02-15 05:07:09'),(218,7,'2006-02-15 05:07:09'),(219,6,'2006-02-15 05:07:09'),(220,12,'2006-02-15 05:07:09'),(221,6,'2006-02-15 05:07:09'),(222,11,'2006-02-15 05:07:09'),(223,2,'2006-02-15 05:07:09'),(224,16,'2006-02-15 05:07:09'),(225,7,'2006-02-15 05:07:09'),(226,13,'2006-02-15 05:07:09'),(227,10,'2006-02-15 05:07:09'),(228,4,'2006-02-15 05:07:09'),(229,1,'2006-02-15 05:07:09'),(230,7,'2006-02-15 05:07:09'),(231,8,'2006-02-15 05:07:09'),(232,10,'2006-02-15 05:07:09'),(233,16,'2006-02-15 05:07:09'),(234,14,'2006-02-15 05:07:09'),(235,14,'2006-02-15 05:07:09'),(236,10,'2006-02-15 05:07:09'),(237,15,'2006-02-15 05:07:09'),(238,3,'2006-02-15 05:07:09'),(239,2,'2006-02-15 05:07:09'),(240,14,'2006-02-15 05:07:09'),(241,2,'2006-02-15 05:07:09'),(242,5,'2006-02-15 05:07:09'),(243,2,'2006-02-15 05:07:09'),(244,12,'2006-02-15 05:07:09'),(245,2,'2006-02-15 05:07:09'),(246,9,'2006-02-15 05:07:09'),(247,5,'2006-02-15 05:07:09'),(248,6,'2006-02-15 05:07:09'),(249,4,'2006-02-15 05:07:09'),(250,1,'2006-02-15 05:07:09'),(251,13,'2006-02-15 05:07:09'),(252,1,'2006-02-15 05:07:09'),(253,1,'2006-02-15 05:07:09'),(254,15,'2006-02-15 05:07:09'),(255,12,'2006-02-15 05:07:09'),(256,15,'2006-02-15 05:07:09'),(257,16,'2006-02-15 05:07:09'),(258,11,'2006-02-15 05:07:09'),(259,2,'2006-02-15 05:07:09'),(260,15,'2006-02-15 05:07:09'),(261,6,'2006-02-15 05:07:09'),(262,8,'2006-02-15 05:07:09'),(263,15,'2006-02-15 05:07:09'),(264,10,'2006-02-15 05:07:09'),(265,5,'2006-02-15 05:07:09'),(266,4,'2006-02-15 05:07:09'),(267,13,'2006-02-15 05:07:09'),(268,2,'2006-02-15 05:07:09'),(269,8,'2006-02-15 05:07:09'),(270,13,'2006-02-15 05:07:09'),(271,1,'2006-02-15 05:07:09'),(272,7,'2006-02-15 05:07:09'),(273,8,'2006-02-15 05:07:09'),(274,6,'2006-02-15 05:07:09'),(275,11,'2006-02-15 05:07:09'),(276,5,'2006-02-15 05:07:09'),(277,11,'2006-02-15 05:07:09'),(278,12,'2006-02-15 05:07:09'),(279,15,'2006-02-15 05:07:09'),(280,3,'2006-02-15 05:07:09'),(281,10,'2006-02-15 05:07:09'),(282,7,'2006-02-15 05:07:09'),(283,13,'2006-02-15 05:07:09'),(284,12,'2006-02-15 05:07:09'),(285,14,'2006-02-15 05:07:09'),(286,16,'2006-02-15 05:07:09'),(287,1,'2006-02-15 05:07:09'),(288,16,'2006-02-15 05:07:09'),(289,13,'2006-02-15 05:07:09'),(290,9,'2006-02-15 05:07:09'),(291,15,'2006-02-15 05:07:09'),(292,1,'2006-02-15 05:07:09'),(293,15,'2006-02-15 05:07:09'),(294,16,'2006-02-15 05:07:09'),(295,6,'2006-02-15 05:07:09'),(296,14,'2006-02-15 05:07:09'),(297,4,'2006-02-15 05:07:09'),(298,14,'2006-02-15 05:07:09'),(299,16,'2006-02-15 05:07:09'),(300,2,'2006-02-15 05:07:09'),(301,11,'2006-02-15 05:07:09'),(302,10,'2006-02-15 05:07:09'),(303,1,'2006-02-15 05:07:09'),(304,3,'2006-02-15 05:07:09'),(305,13,'2006-02-15 05:07:09'),(306,10,'2006-02-15 05:07:09'),(307,16,'2006-02-15 05:07:09'),(308,5,'2006-02-15 05:07:09'),(309,8,'2006-02-15 05:07:09'),(310,10,'2006-02-15 05:07:09'),(311,9,'2006-02-15 05:07:09'),(312,14,'2006-02-15 05:07:09'),(313,11,'2006-02-15 05:07:09'),(314,2,'2006-02-15 05:07:09'),(315,8,'2006-02-15 05:07:09'),(316,10,'2006-02-15 05:07:09'),(317,5,'2006-02-15 05:07:09'),(318,1,'2006-02-15 05:07:09'),(319,14,'2006-02-15 05:07:09'),(320,13,'2006-02-15 05:07:09'),(321,13,'2006-02-15 05:07:09'),(322,15,'2006-02-15 05:07:09'),(323,15,'2006-02-15 05:07:09'),(324,5,'2006-02-15 05:07:09'),(325,2,'2006-02-15 05:07:09'),(326,2,'2006-02-15 05:07:09'),(327,1,'2006-02-15 05:07:09'),(328,3,'2006-02-15 05:07:09'),(329,1,'2006-02-15 05:07:09'),(330,2,'2006-02-15 05:07:09'),(331,10,'2006-02-15 05:07:09'),(332,5,'2006-02-15 05:07:09'),(333,12,'2006-02-15 05:07:09'),(334,11,'2006-02-15 05:07:09'),(335,5,'2006-02-15 05:07:09'),(336,6,'2006-02-15 05:07:09'),(337,9,'2006-02-15 05:07:09'),(338,14,'2006-02-15 05:07:09'),(339,16,'2006-02-15 05:07:09'),(340,13,'2006-02-15 05:07:09'),(341,4,'2006-02-15 05:07:09'),(342,16,'2006-02-15 05:07:09'),(343,3,'2006-02-15 05:07:09'),(344,3,'2006-02-15 05:07:09'),(345,8,'2006-02-15 05:07:09'),(346,4,'2006-02-15 05:07:09'),(347,16,'2006-02-15 05:07:09'),(348,8,'2006-02-15 05:07:09'),(349,2,'2006-02-15 05:07:09'),(350,14,'2006-02-15 05:07:09'),(351,11,'2006-02-15 05:07:09'),(352,10,'2006-02-15 05:07:09'),(353,9,'2006-02-15 05:07:09'),(354,3,'2006-02-15 05:07:09'),(355,2,'2006-02-15 05:07:09'),(356,3,'2006-02-15 05:07:09'),(357,4,'2006-02-15 05:07:09'),(358,4,'2006-02-15 05:07:09'),(359,8,'2006-02-15 05:07:09'),(360,1,'2006-02-15 05:07:09'),(361,15,'2006-02-15 05:07:09'),(362,10,'2006-02-15 05:07:09'),(363,12,'2006-02-15 05:07:09'),(364,13,'2006-02-15 05:07:09'),(365,5,'2006-02-15 05:07:09'),(366,7,'2006-02-15 05:07:09'),(367,14,'2006-02-15 05:07:09'),(368,7,'2006-02-15 05:07:09'),(369,14,'2006-02-15 05:07:09'),(370,3,'2006-02-15 05:07:09'),(371,1,'2006-02-15 05:07:09'),(372,15,'2006-02-15 05:07:09'),(373,3,'2006-02-15 05:07:09'),(374,14,'2006-02-15 05:07:09'),(375,1,'2006-02-15 05:07:09'),(376,9,'2006-02-15 05:07:09'),(377,8,'2006-02-15 05:07:09'),(378,12,'2006-02-15 05:07:09'),(379,7,'2006-02-15 05:07:09'),(380,9,'2006-02-15 05:07:09'),(381,10,'2006-02-15 05:07:09'),(382,10,'2006-02-15 05:07:09'),(383,15,'2006-02-15 05:07:09'),(384,12,'2006-02-15 05:07:09'),(385,5,'2006-02-15 05:07:09'),(386,16,'2006-02-15 05:07:09'),(387,10,'2006-02-15 05:07:09'),(388,5,'2006-02-15 05:07:09'),(389,15,'2006-02-15 05:07:09'),(390,14,'2006-02-15 05:07:09'),(391,8,'2006-02-15 05:07:09'),(392,3,'2006-02-15 05:07:09'),(393,6,'2006-02-15 05:07:09'),(394,14,'2006-02-15 05:07:09'),(395,1,'2006-02-15 05:07:09'),(396,7,'2006-02-15 05:07:09'),(397,14,'2006-02-15 05:07:09'),(398,12,'2006-02-15 05:07:09'),(399,9,'2006-02-15 05:07:09'),(400,6,'2006-02-15 05:07:09'),(401,7,'2006-02-15 05:07:09'),(402,2,'2006-02-15 05:07:09'),(403,7,'2006-02-15 05:07:09'),(404,5,'2006-02-15 05:07:09'),(405,16,'2006-02-15 05:07:09'),(406,10,'2006-02-15 05:07:09'),(407,6,'2006-02-15 05:07:09'),(408,10,'2006-02-15 05:07:09'),(409,3,'2006-02-15 05:07:09'),(410,5,'2006-02-15 05:07:09'),(411,12,'2006-02-15 05:07:09'),(412,6,'2006-02-15 05:07:09'),(413,5,'2006-02-15 05:07:09'),(414,9,'2006-02-15 05:07:09'),(415,11,'2006-02-15 05:07:09'),(416,9,'2006-02-15 05:07:09'),(417,1,'2006-02-15 05:07:09'),(418,7,'2006-02-15 05:07:09'),(419,8,'2006-02-15 05:07:09'),(420,15,'2006-02-15 05:07:09'),(421,9,'2006-02-15 05:07:09'),(422,14,'2006-02-15 05:07:09'),(423,3,'2006-02-15 05:07:09'),(424,3,'2006-02-15 05:07:09'),(425,4,'2006-02-15 05:07:09'),(426,12,'2006-02-15 05:07:09'),(427,6,'2006-02-15 05:07:09'),(428,8,'2006-02-15 05:07:09'),(429,15,'2006-02-15 05:07:09'),(430,2,'2006-02-15 05:07:09'),(431,9,'2006-02-15 05:07:09'),(432,4,'2006-02-15 05:07:09'),(433,2,'2006-02-15 05:07:09'),(434,16,'2006-02-15 05:07:09'),(435,9,'2006-02-15 05:07:09'),(436,13,'2006-02-15 05:07:09'),(437,8,'2006-02-15 05:07:09'),(438,10,'2006-02-15 05:07:09'),(439,7,'2006-02-15 05:07:09'),(440,9,'2006-02-15 05:07:09'),(441,6,'2006-02-15 05:07:09'),(442,8,'2006-02-15 05:07:09'),(443,5,'2006-02-15 05:07:09'),(444,5,'2006-02-15 05:07:09'),(445,4,'2006-02-15 05:07:09'),(446,15,'2006-02-15 05:07:09'),(447,10,'2006-02-15 05:07:09'),(448,13,'2006-02-15 05:07:09'),(449,14,'2006-02-15 05:07:09'),(450,3,'2006-02-15 05:07:09'),(451,16,'2006-02-15 05:07:09'),(452,9,'2006-02-15 05:07:09'),(453,15,'2006-02-15 05:07:09'),(454,12,'2006-02-15 05:07:09'),(455,9,'2006-02-15 05:07:09'),(456,2,'2006-02-15 05:07:09'),(457,6,'2006-02-15 05:07:09'),(458,8,'2006-02-15 05:07:09'),(459,9,'2006-02-15 05:07:09'),(460,9,'2006-02-15 05:07:09'),(461,2,'2006-02-15 05:07:09'),(462,12,'2006-02-15 05:07:09'),(463,15,'2006-02-15 05:07:09'),(464,2,'2006-02-15 05:07:09'),(465,13,'2006-02-15 05:07:09'),(466,6,'2006-02-15 05:07:09'),(467,9,'2006-02-15 05:07:09'),(468,3,'2006-02-15 05:07:09'),(469,4,'2006-02-15 05:07:09'),(470,2,'2006-02-15 05:07:09'),(471,4,'2006-02-15 05:07:09'),(472,16,'2006-02-15 05:07:09'),(473,7,'2006-02-15 05:07:09'),(474,15,'2006-02-15 05:07:09'),(475,11,'2006-02-15 05:07:09'),(476,8,'2006-02-15 05:07:09'),(477,12,'2006-02-15 05:07:09'),(478,5,'2006-02-15 05:07:09'),(479,8,'2006-02-15 05:07:09'),(480,4,'2006-02-15 05:07:09'),(481,13,'2006-02-15 05:07:09'),(482,4,'2006-02-15 05:07:09'),(483,10,'2006-02-15 05:07:09'),(484,4,'2006-02-15 05:07:09'),(485,3,'2006-02-15 05:07:09'),(486,9,'2006-02-15 05:07:09'),(487,4,'2006-02-15 05:07:09'),(488,15,'2006-02-15 05:07:09'),(489,2,'2006-02-15 05:07:09'),(490,13,'2006-02-15 05:07:09'),(491,3,'2006-02-15 05:07:09'),(492,13,'2006-02-15 05:07:09'),(493,9,'2006-02-15 05:07:09'),(494,11,'2006-02-15 05:07:09'),(495,11,'2006-02-15 05:07:09'),(496,16,'2006-02-15 05:07:09'),(497,6,'2006-02-15 05:07:09'),(498,8,'2006-02-15 05:07:09'),(499,8,'2006-02-15 05:07:09'),(500,9,'2006-02-15 05:07:09'),(501,1,'2006-02-15 05:07:09'),(502,5,'2006-02-15 05:07:09'),(503,15,'2006-02-15 05:07:09'),(504,7,'2006-02-15 05:07:09'),(505,3,'2006-02-15 05:07:09'),(506,11,'2006-02-15 05:07:09'),(507,10,'2006-02-15 05:07:09'),(508,10,'2006-02-15 05:07:09'),(509,3,'2006-02-15 05:07:09'),(510,2,'2006-02-15 05:07:09'),(511,1,'2006-02-15 05:07:09'),(512,4,'2006-02-15 05:07:09'),(513,16,'2006-02-15 05:07:09'),(514,7,'2006-02-15 05:07:09'),(515,3,'2006-02-15 05:07:09'),(516,12,'2006-02-15 05:07:09'),(517,15,'2006-02-15 05:07:09'),(518,16,'2006-02-15 05:07:09'),(519,15,'2006-02-15 05:07:09'),(520,14,'2006-02-15 05:07:09'),(521,7,'2006-02-15 05:07:09'),(522,5,'2006-02-15 05:07:09'),(523,4,'2006-02-15 05:07:09'),(524,5,'2006-02-15 05:07:09'),(525,4,'2006-02-15 05:07:09'),(526,16,'2006-02-15 05:07:09'),(527,11,'2006-02-15 05:07:09'),(528,8,'2006-02-15 05:07:09'),(529,5,'2006-02-15 05:07:09'),(530,1,'2006-02-15 05:07:09'),(531,9,'2006-02-15 05:07:09'),(532,15,'2006-02-15 05:07:09'),(533,9,'2006-02-15 05:07:09'),(534,8,'2006-02-15 05:07:09'),(535,11,'2006-02-15 05:07:09'),(536,4,'2006-02-15 05:07:09'),(537,4,'2006-02-15 05:07:09'),(538,13,'2006-02-15 05:07:09'),(539,7,'2006-02-15 05:07:09'),(540,12,'2006-02-15 05:07:09'),(541,2,'2006-02-15 05:07:09'),(542,1,'2006-02-15 05:07:09'),(543,16,'2006-02-15 05:07:09'),(544,6,'2006-02-15 05:07:09'),(545,9,'2006-02-15 05:07:09'),(546,10,'2006-02-15 05:07:09'),(547,3,'2006-02-15 05:07:09'),(548,4,'2006-02-15 05:07:09'),(549,1,'2006-02-15 05:07:09'),(550,8,'2006-02-15 05:07:09'),(551,13,'2006-02-15 05:07:09'),(552,6,'2006-02-15 05:07:09'),(553,3,'2006-02-15 05:07:09'),(554,4,'2006-02-15 05:07:09'),(555,5,'2006-02-15 05:07:09'),(556,10,'2006-02-15 05:07:09'),(557,8,'2006-02-15 05:07:09'),(558,13,'2006-02-15 05:07:09'),(559,14,'2006-02-15 05:07:09'),(560,10,'2006-02-15 05:07:09'),(561,13,'2006-02-15 05:07:09'),(562,12,'2006-02-15 05:07:09'),(563,10,'2006-02-15 05:07:09'),(564,2,'2006-02-15 05:07:09'),(565,9,'2006-02-15 05:07:09'),(566,9,'2006-02-15 05:07:09'),(567,9,'2006-02-15 05:07:09'),(568,5,'2006-02-15 05:07:09'),(569,2,'2006-02-15 05:07:09'),(570,15,'2006-02-15 05:07:09'),(571,6,'2006-02-15 05:07:09'),(572,14,'2006-02-15 05:07:09'),(573,3,'2006-02-15 05:07:09'),(574,1,'2006-02-15 05:07:09'),(575,6,'2006-02-15 05:07:09'),(576,6,'2006-02-15 05:07:09'),(577,15,'2006-02-15 05:07:09'),(578,4,'2006-02-15 05:07:09'),(579,1,'2006-02-15 05:07:09'),(580,13,'2006-02-15 05:07:09'),(581,12,'2006-02-15 05:07:09'),(582,2,'2006-02-15 05:07:09'),(583,2,'2006-02-15 05:07:09'),(584,9,'2006-02-15 05:07:09'),(585,7,'2006-02-15 05:07:09'),(586,1,'2006-02-15 05:07:09'),(587,6,'2006-02-15 05:07:09'),(588,3,'2006-02-15 05:07:09'),(589,6,'2006-02-15 05:07:09'),(590,13,'2006-02-15 05:07:09'),(591,10,'2006-02-15 05:07:09'),(592,12,'2006-02-15 05:07:09'),(593,11,'2006-02-15 05:07:09'),(594,1,'2006-02-15 05:07:09'),(595,9,'2006-02-15 05:07:09'),(596,10,'2006-02-15 05:07:09'),(597,10,'2006-02-15 05:07:09'),(598,15,'2006-02-15 05:07:09'),(599,15,'2006-02-15 05:07:09'),(600,11,'2006-02-15 05:07:09'),(601,16,'2006-02-15 05:07:09'),(602,14,'2006-02-15 05:07:09'),(603,8,'2006-02-15 05:07:09'),(604,5,'2006-02-15 05:07:09'),(605,9,'2006-02-15 05:07:09'),(606,15,'2006-02-15 05:07:09'),(607,9,'2006-02-15 05:07:09'),(608,3,'2006-02-15 05:07:09'),(609,16,'2006-02-15 05:07:09'),(610,8,'2006-02-15 05:07:09'),(611,4,'2006-02-15 05:07:09'),(612,15,'2006-02-15 05:07:09'),(613,5,'2006-02-15 05:07:09'),(614,10,'2006-02-15 05:07:09'),(615,2,'2006-02-15 05:07:09'),(616,6,'2006-02-15 05:07:09'),(617,8,'2006-02-15 05:07:09'),(618,7,'2006-02-15 05:07:09'),(619,15,'2006-02-15 05:07:09'),(620,14,'2006-02-15 05:07:09'),(621,8,'2006-02-15 05:07:09'),(622,6,'2006-02-15 05:07:09'),(623,9,'2006-02-15 05:07:09'),(624,10,'2006-02-15 05:07:09'),(625,14,'2006-02-15 05:07:09'),(626,3,'2006-02-15 05:07:09'),(627,6,'2006-02-15 05:07:09'),(628,15,'2006-02-15 05:07:09'),(629,6,'2006-02-15 05:07:09'),(630,7,'2006-02-15 05:07:09'),(631,15,'2006-02-15 05:07:09'),(632,13,'2006-02-15 05:07:09'),(633,4,'2006-02-15 05:07:09'),(634,8,'2006-02-15 05:07:09'),(635,13,'2006-02-15 05:07:09'),(636,12,'2006-02-15 05:07:09'),(637,14,'2006-02-15 05:07:09'),(638,5,'2006-02-15 05:07:09'),(639,8,'2006-02-15 05:07:09'),(640,9,'2006-02-15 05:07:09'),(641,9,'2006-02-15 05:07:09'),(642,16,'2006-02-15 05:07:09'),(643,7,'2006-02-15 05:07:09'),(644,2,'2006-02-15 05:07:09'),(645,16,'2006-02-15 05:07:09'),(646,10,'2006-02-15 05:07:09'),(647,12,'2006-02-15 05:07:09'),(648,16,'2006-02-15 05:07:09'),(649,2,'2006-02-15 05:07:09'),(650,6,'2006-02-15 05:07:09'),(651,2,'2006-02-15 05:07:09'),(652,4,'2006-02-15 05:07:09'),(653,11,'2006-02-15 05:07:09'),(654,10,'2006-02-15 05:07:09'),(655,14,'2006-02-15 05:07:09'),(656,16,'2006-02-15 05:07:09'),(657,5,'2006-02-15 05:07:09'),(658,11,'2006-02-15 05:07:09'),(659,1,'2006-02-15 05:07:09'),(660,5,'2006-02-15 05:07:09'),(661,9,'2006-02-15 05:07:09'),(662,7,'2006-02-15 05:07:09'),(663,4,'2006-02-15 05:07:09'),(664,1,'2006-02-15 05:07:09'),(665,11,'2006-02-15 05:07:09'),(666,7,'2006-02-15 05:07:09'),(667,15,'2006-02-15 05:07:09'),(668,15,'2006-02-15 05:07:09'),(669,9,'2006-02-15 05:07:09'),(670,6,'2006-02-15 05:07:09'),(671,15,'2006-02-15 05:07:09'),(672,5,'2006-02-15 05:07:09'),(673,12,'2006-02-15 05:07:09'),(674,9,'2006-02-15 05:07:09'),(675,13,'2006-02-15 05:07:09'),(676,15,'2006-02-15 05:07:09'),(677,13,'2006-02-15 05:07:09'),(678,15,'2006-02-15 05:07:09'),(679,8,'2006-02-15 05:07:09'),(680,5,'2006-02-15 05:07:09'),(681,15,'2006-02-15 05:07:09'),(682,8,'2006-02-15 05:07:09'),(683,7,'2006-02-15 05:07:09'),(684,10,'2006-02-15 05:07:09'),(685,13,'2006-02-15 05:07:09'),(686,13,'2006-02-15 05:07:09'),(687,6,'2006-02-15 05:07:09'),(688,3,'2006-02-15 05:07:09'),(689,9,'2006-02-15 05:07:09'),(690,2,'2006-02-15 05:07:09'),(691,15,'2006-02-15 05:07:09'),(692,2,'2006-02-15 05:07:09'),(693,2,'2006-02-15 05:07:09'),(694,4,'2006-02-15 05:07:09'),(695,8,'2006-02-15 05:07:09'),(696,2,'2006-02-15 05:07:09'),(697,1,'2006-02-15 05:07:09'),(698,6,'2006-02-15 05:07:09'),(699,10,'2006-02-15 05:07:09'),(700,8,'2006-02-15 05:07:09'),(701,10,'2006-02-15 05:07:09'),(702,11,'2006-02-15 05:07:09'),(703,2,'2006-02-15 05:07:09'),(704,5,'2006-02-15 05:07:09'),(705,9,'2006-02-15 05:07:09'),(706,7,'2006-02-15 05:07:09'),(707,1,'2006-02-15 05:07:09'),(708,6,'2006-02-15 05:07:09'),(709,7,'2006-02-15 05:07:09'),(710,8,'2006-02-15 05:07:09'),(711,14,'2006-02-15 05:07:09'),(712,6,'2006-02-15 05:07:09'),(713,6,'2006-02-15 05:07:09'),(714,14,'2006-02-15 05:07:09'),(715,8,'2006-02-15 05:07:09'),(716,11,'2006-02-15 05:07:09'),(717,1,'2006-02-15 05:07:09'),(718,12,'2006-02-15 05:07:09'),(719,15,'2006-02-15 05:07:09'),(720,13,'2006-02-15 05:07:09'),(721,12,'2006-02-15 05:07:09'),(722,11,'2006-02-15 05:07:09'),(723,14,'2006-02-15 05:07:09'),(724,8,'2006-02-15 05:07:09'),(725,4,'2006-02-15 05:07:09'),(726,9,'2006-02-15 05:07:09'),(727,8,'2006-02-15 05:07:09'),(728,7,'2006-02-15 05:07:09'),(729,15,'2006-02-15 05:07:09'),(730,13,'2006-02-15 05:07:09'),(731,4,'2006-02-15 05:07:09'),(732,1,'2006-02-15 05:07:09'),(733,15,'2006-02-15 05:07:09'),(734,6,'2006-02-15 05:07:09'),(735,3,'2006-02-15 05:07:09'),(736,8,'2006-02-15 05:07:09'),(737,11,'2006-02-15 05:07:09'),(738,9,'2006-02-15 05:07:09'),(739,7,'2006-02-15 05:07:09'),(740,11,'2006-02-15 05:07:09'),(741,12,'2006-02-15 05:07:09'),(742,10,'2006-02-15 05:07:09'),(743,2,'2006-02-15 05:07:09'),(744,4,'2006-02-15 05:07:09'),(745,15,'2006-02-15 05:07:09'),(746,10,'2006-02-15 05:07:09'),(747,10,'2006-02-15 05:07:09'),(748,1,'2006-02-15 05:07:09'),(749,11,'2006-02-15 05:07:09'),(750,13,'2006-02-15 05:07:09'),(751,13,'2006-02-15 05:07:09'),(752,12,'2006-02-15 05:07:09'),(753,8,'2006-02-15 05:07:09'),(754,5,'2006-02-15 05:07:09'),(755,3,'2006-02-15 05:07:09'),(756,5,'2006-02-15 05:07:09'),(757,6,'2006-02-15 05:07:09'),(758,7,'2006-02-15 05:07:09'),(759,13,'2006-02-15 05:07:09'),(760,13,'2006-02-15 05:07:09'),(761,3,'2006-02-15 05:07:09'),(762,10,'2006-02-15 05:07:09'),(763,15,'2006-02-15 05:07:09'),(764,15,'2006-02-15 05:07:09'),(765,5,'2006-02-15 05:07:09'),(766,7,'2006-02-15 05:07:09'),(767,12,'2006-02-15 05:07:09'),(768,3,'2006-02-15 05:07:09'),(769,9,'2006-02-15 05:07:09'),(770,9,'2006-02-15 05:07:09'),(771,7,'2006-02-15 05:07:09'),(772,7,'2006-02-15 05:07:09'),(773,15,'2006-02-15 05:07:09'),(774,5,'2006-02-15 05:07:09'),(775,7,'2006-02-15 05:07:09'),(776,6,'2006-02-15 05:07:09'),(777,15,'2006-02-15 05:07:09'),(778,8,'2006-02-15 05:07:09'),(779,15,'2006-02-15 05:07:09'),(780,8,'2006-02-15 05:07:09'),(781,10,'2006-02-15 05:07:09'),(782,15,'2006-02-15 05:07:09'),(783,16,'2006-02-15 05:07:09'),(784,16,'2006-02-15 05:07:09'),(785,16,'2006-02-15 05:07:09'),(786,3,'2006-02-15 05:07:09'),(787,16,'2006-02-15 05:07:09'),(788,6,'2006-02-15 05:07:09'),(789,9,'2006-02-15 05:07:09'),(790,7,'2006-02-15 05:07:09'),(791,6,'2006-02-15 05:07:09'),(792,9,'2006-02-15 05:07:09'),(793,1,'2006-02-15 05:07:09'),(794,1,'2006-02-15 05:07:09'),(795,8,'2006-02-15 05:07:09'),(796,15,'2006-02-15 05:07:09'),(797,12,'2006-02-15 05:07:09'),(798,14,'2006-02-15 05:07:09'),(799,11,'2006-02-15 05:07:09'),(800,11,'2006-02-15 05:07:09'),(801,3,'2006-02-15 05:07:09'),(802,1,'2006-02-15 05:07:09'),(803,7,'2006-02-15 05:07:09'),(804,11,'2006-02-15 05:07:09'),(805,2,'2006-02-15 05:07:09'),(806,13,'2006-02-15 05:07:09'),(807,10,'2006-02-15 05:07:09'),(808,4,'2006-02-15 05:07:09'),(809,15,'2006-02-15 05:07:09'),(810,8,'2006-02-15 05:07:09'),(811,16,'2006-02-15 05:07:09'),(812,6,'2006-02-15 05:07:09'),(813,15,'2006-02-15 05:07:09'),(814,5,'2006-02-15 05:07:09'),(815,4,'2006-02-15 05:07:09'),(816,2,'2006-02-15 05:07:09'),(817,14,'2006-02-15 05:07:09'),(818,7,'2006-02-15 05:07:09'),(819,12,'2006-02-15 05:07:09'),(820,2,'2006-02-15 05:07:09'),(821,9,'2006-02-15 05:07:09'),(822,8,'2006-02-15 05:07:09'),(823,1,'2006-02-15 05:07:09'),(824,8,'2006-02-15 05:07:09'),(825,1,'2006-02-15 05:07:09'),(826,16,'2006-02-15 05:07:09'),(827,7,'2006-02-15 05:07:09'),(828,4,'2006-02-15 05:07:09'),(829,8,'2006-02-15 05:07:09'),(830,11,'2006-02-15 05:07:09'),(831,14,'2006-02-15 05:07:09'),(832,8,'2006-02-15 05:07:09'),(833,3,'2006-02-15 05:07:09'),(834,6,'2006-02-15 05:07:09'),(835,10,'2006-02-15 05:07:09'),(836,15,'2006-02-15 05:07:09'),(837,5,'2006-02-15 05:07:09'),(838,1,'2006-02-15 05:07:09'),(839,14,'2006-02-15 05:07:09'),(840,10,'2006-02-15 05:07:09'),(841,15,'2006-02-15 05:07:09'),(842,10,'2006-02-15 05:07:09'),(843,4,'2006-02-15 05:07:09'),(844,15,'2006-02-15 05:07:09'),(845,9,'2006-02-15 05:07:09'),(846,13,'2006-02-15 05:07:09'),(847,13,'2006-02-15 05:07:09'),(848,16,'2006-02-15 05:07:09'),(849,2,'2006-02-15 05:07:09'),(850,1,'2006-02-15 05:07:09'),(851,15,'2006-02-15 05:07:09'),(852,3,'2006-02-15 05:07:09'),(853,3,'2006-02-15 05:07:09'),(854,11,'2006-02-15 05:07:09'),(855,6,'2006-02-15 05:07:09'),(856,11,'2006-02-15 05:07:09'),(857,5,'2006-02-15 05:07:09'),(858,5,'2006-02-15 05:07:09'),(859,2,'2006-02-15 05:07:09'),(860,14,'2006-02-15 05:07:09'),(861,10,'2006-02-15 05:07:09'),(862,4,'2006-02-15 05:07:09'),(863,14,'2006-02-15 05:07:09'),(864,3,'2006-02-15 05:07:09'),(865,2,'2006-02-15 05:07:09'),(866,8,'2006-02-15 05:07:09'),(867,8,'2006-02-15 05:07:09'),(868,16,'2006-02-15 05:07:09'),(869,1,'2006-02-15 05:07:09'),(870,11,'2006-02-15 05:07:09'),(871,5,'2006-02-15 05:07:09'),(872,16,'2006-02-15 05:07:09'),(873,3,'2006-02-15 05:07:09'),(874,4,'2006-02-15 05:07:09'),(875,15,'2006-02-15 05:07:09'),(876,11,'2006-02-15 05:07:09'),(877,12,'2006-02-15 05:07:09'),(878,16,'2006-02-15 05:07:09'),(879,12,'2006-02-15 05:07:09'),(880,2,'2006-02-15 05:07:09'),(881,11,'2006-02-15 05:07:09'),(882,7,'2006-02-15 05:07:09'),(883,3,'2006-02-15 05:07:09'),(884,12,'2006-02-15 05:07:09'),(885,11,'2006-02-15 05:07:09'),(886,2,'2006-02-15 05:07:09'),(887,2,'2006-02-15 05:07:09'),(888,6,'2006-02-15 05:07:09'),(889,3,'2006-02-15 05:07:09'),(890,15,'2006-02-15 05:07:09'),(891,4,'2006-02-15 05:07:09'),(892,2,'2006-02-15 05:07:09'),(893,14,'2006-02-15 05:07:09'),(894,16,'2006-02-15 05:07:09'),(895,4,'2006-02-15 05:07:09'),(896,3,'2006-02-15 05:07:09'),(897,7,'2006-02-15 05:07:09'),(898,15,'2006-02-15 05:07:09'),(899,4,'2006-02-15 05:07:09'),(900,9,'2006-02-15 05:07:09'),(901,2,'2006-02-15 05:07:09'),(902,15,'2006-02-15 05:07:09'),(903,16,'2006-02-15 05:07:09'),(904,11,'2006-02-15 05:07:09'),(905,5,'2006-02-15 05:07:09'),(906,5,'2006-02-15 05:07:09'),(907,7,'2006-02-15 05:07:09'),(908,9,'2006-02-15 05:07:09'),(909,11,'2006-02-15 05:07:09'),(910,7,'2006-02-15 05:07:09'),(911,1,'2006-02-15 05:07:09'),(912,14,'2006-02-15 05:07:09'),(913,13,'2006-02-15 05:07:09'),(914,16,'2006-02-15 05:07:09'),(915,1,'2006-02-15 05:07:09'),(916,2,'2006-02-15 05:07:09'),(917,15,'2006-02-15 05:07:09'),(918,3,'2006-02-15 05:07:09'),(919,10,'2006-02-15 05:07:09'),(920,13,'2006-02-15 05:07:09'),(921,12,'2006-02-15 05:07:09'),(922,11,'2006-02-15 05:07:09'),(923,7,'2006-02-15 05:07:09'),(924,14,'2006-02-15 05:07:09'),(925,6,'2006-02-15 05:07:09'),(926,6,'2006-02-15 05:07:09'),(927,1,'2006-02-15 05:07:09'),(928,3,'2006-02-15 05:07:09'),(929,9,'2006-02-15 05:07:09'),(930,14,'2006-02-15 05:07:09'),(931,16,'2006-02-15 05:07:09'),(932,5,'2006-02-15 05:07:09'),(933,13,'2006-02-15 05:07:09'),(934,10,'2006-02-15 05:07:09'),(935,13,'2006-02-15 05:07:09'),(936,12,'2006-02-15 05:07:09'),(937,13,'2006-02-15 05:07:09'),(938,5,'2006-02-15 05:07:09'),(939,5,'2006-02-15 05:07:09'),(940,15,'2006-02-15 05:07:09'),(941,10,'2006-02-15 05:07:09'),(942,7,'2006-02-15 05:07:09'),(943,6,'2006-02-15 05:07:09'),(944,7,'2006-02-15 05:07:09'),(945,6,'2006-02-15 05:07:09'),(946,8,'2006-02-15 05:07:09'),(947,9,'2006-02-15 05:07:09'),(948,13,'2006-02-15 05:07:09'),(949,10,'2006-02-15 05:07:09'),(950,4,'2006-02-15 05:07:09'),(951,4,'2006-02-15 05:07:09'),(952,6,'2006-02-15 05:07:09'),(953,2,'2006-02-15 05:07:09'),(954,13,'2006-02-15 05:07:09'),(955,3,'2006-02-15 05:07:09'),(956,10,'2006-02-15 05:07:09'),(957,9,'2006-02-15 05:07:09'),(958,7,'2006-02-15 05:07:09'),(959,3,'2006-02-15 05:07:09'),(960,6,'2006-02-15 05:07:09'),(961,9,'2006-02-15 05:07:09'),(962,4,'2006-02-15 05:07:09'),(963,2,'2006-02-15 05:07:09'),(964,1,'2006-02-15 05:07:09'),(965,11,'2006-02-15 05:07:09'),(966,6,'2006-02-15 05:07:09'),(967,14,'2006-02-15 05:07:09'),(968,1,'2006-02-15 05:07:09'),(969,7,'2006-02-15 05:07:09'),(970,4,'2006-02-15 05:07:09'),(971,9,'2006-02-15 05:07:09'),(972,14,'2006-02-15 05:07:09'),(973,6,'2006-02-15 05:07:09'),(974,13,'2006-02-15 05:07:09'),(975,8,'2006-02-15 05:07:09'),(976,10,'2006-02-15 05:07:09'),(977,16,'2006-02-15 05:07:09'),(978,5,'2006-02-15 05:07:09'),(979,7,'2006-02-15 05:07:09'),(980,12,'2006-02-15 05:07:09'),(981,16,'2006-02-15 05:07:09'),(982,1,'2006-02-15 05:07:09'),(983,12,'2006-02-15 05:07:09'),(984,9,'2006-02-15 05:07:09'),(985,14,'2006-02-15 05:07:09'),(986,2,'2006-02-15 05:07:09'),(987,12,'2006-02-15 05:07:09'),(988,16,'2006-02-15 05:07:09'),(989,16,'2006-02-15 05:07:09'),(990,11,'2006-02-15 05:07:09'),(991,1,'2006-02-15 05:07:09'),(992,6,'2006-02-15 05:07:09'),(993,3,'2006-02-15 05:07:09'),(994,13,'2006-02-15 05:07:09'),(995,11,'2006-02-15 05:07:09'),(996,6,'2006-02-15 05:07:09'),(997,12,'2006-02-15 05:07:09'),(998,11,'2006-02-15 05:07:09'),(999,3,'2006-02-15 05:07:09'),(1000,5,'2006-02-15 05:07:09'); +COMMIT; + +-- +-- Dumping data for table inventory +-- + +SET AUTOCOMMIT=0; +INSERT INTO inventory VALUES (1,1,1,'2006-02-15 05:09:17'),(2,1,1,'2006-02-15 05:09:17'),(3,1,1,'2006-02-15 05:09:17'),(4,1,1,'2006-02-15 05:09:17'),(5,1,2,'2006-02-15 05:09:17'),(6,1,2,'2006-02-15 05:09:17'),(7,1,2,'2006-02-15 05:09:17'),(8,1,2,'2006-02-15 05:09:17'),(9,2,2,'2006-02-15 05:09:17'),(10,2,2,'2006-02-15 05:09:17'),(11,2,2,'2006-02-15 05:09:17'),(12,3,2,'2006-02-15 05:09:17'),(13,3,2,'2006-02-15 05:09:17'),(14,3,2,'2006-02-15 05:09:17'),(15,3,2,'2006-02-15 05:09:17'),(16,4,1,'2006-02-15 05:09:17'),(17,4,1,'2006-02-15 05:09:17'),(18,4,1,'2006-02-15 05:09:17'),(19,4,1,'2006-02-15 05:09:17'),(20,4,2,'2006-02-15 05:09:17'),(21,4,2,'2006-02-15 05:09:17'),(22,4,2,'2006-02-15 05:09:17'),(23,5,2,'2006-02-15 05:09:17'),(24,5,2,'2006-02-15 05:09:17'),(25,5,2,'2006-02-15 05:09:17'),(26,6,1,'2006-02-15 05:09:17'),(27,6,1,'2006-02-15 05:09:17'),(28,6,1,'2006-02-15 05:09:17'),(29,6,2,'2006-02-15 05:09:17'),(30,6,2,'2006-02-15 05:09:17'),(31,6,2,'2006-02-15 05:09:17'),(32,7,1,'2006-02-15 05:09:17'),(33,7,1,'2006-02-15 05:09:17'),(34,7,2,'2006-02-15 05:09:17'),(35,7,2,'2006-02-15 05:09:17'),(36,7,2,'2006-02-15 05:09:17'),(37,8,2,'2006-02-15 05:09:17'),(38,8,2,'2006-02-15 05:09:17'),(39,8,2,'2006-02-15 05:09:17'),(40,8,2,'2006-02-15 05:09:17'),(41,9,1,'2006-02-15 05:09:17'),(42,9,1,'2006-02-15 05:09:17'),(43,9,1,'2006-02-15 05:09:17'),(44,9,2,'2006-02-15 05:09:17'),(45,9,2,'2006-02-15 05:09:17'),(46,10,1,'2006-02-15 05:09:17'),(47,10,1,'2006-02-15 05:09:17'),(48,10,1,'2006-02-15 05:09:17'),(49,10,1,'2006-02-15 05:09:17'),(50,10,2,'2006-02-15 05:09:17'),(51,10,2,'2006-02-15 05:09:17'),(52,10,2,'2006-02-15 05:09:17'),(53,11,1,'2006-02-15 05:09:17'),(54,11,1,'2006-02-15 05:09:17'),(55,11,1,'2006-02-15 05:09:17'),(56,11,1,'2006-02-15 05:09:17'),(57,11,2,'2006-02-15 05:09:17'),(58,11,2,'2006-02-15 05:09:17'),(59,11,2,'2006-02-15 05:09:17'),(60,12,1,'2006-02-15 05:09:17'),(61,12,1,'2006-02-15 05:09:17'),(62,12,1,'2006-02-15 05:09:17'),(63,12,2,'2006-02-15 05:09:17'),(64,12,2,'2006-02-15 05:09:17'),(65,12,2,'2006-02-15 05:09:17'),(66,12,2,'2006-02-15 05:09:17'),(67,13,2,'2006-02-15 05:09:17'),(68,13,2,'2006-02-15 05:09:17'),(69,13,2,'2006-02-15 05:09:17'),(70,13,2,'2006-02-15 05:09:17'),(71,15,1,'2006-02-15 05:09:17'),(72,15,1,'2006-02-15 05:09:17'),(73,15,2,'2006-02-15 05:09:17'),(74,15,2,'2006-02-15 05:09:17'),(75,15,2,'2006-02-15 05:09:17'),(76,15,2,'2006-02-15 05:09:17'),(77,16,1,'2006-02-15 05:09:17'),(78,16,1,'2006-02-15 05:09:17'),(79,16,2,'2006-02-15 05:09:17'),(80,16,2,'2006-02-15 05:09:17'),(81,17,1,'2006-02-15 05:09:17'),(82,17,1,'2006-02-15 05:09:17'),(83,17,1,'2006-02-15 05:09:17'),(84,17,2,'2006-02-15 05:09:17'),(85,17,2,'2006-02-15 05:09:17'),(86,17,2,'2006-02-15 05:09:17'),(87,18,1,'2006-02-15 05:09:17'),(88,18,1,'2006-02-15 05:09:17'),(89,18,1,'2006-02-15 05:09:17'),(90,18,2,'2006-02-15 05:09:17'),(91,18,2,'2006-02-15 05:09:17'),(92,18,2,'2006-02-15 05:09:17'),(93,19,1,'2006-02-15 05:09:17'),(94,19,1,'2006-02-15 05:09:17'),(95,19,1,'2006-02-15 05:09:17'),(96,19,1,'2006-02-15 05:09:17'),(97,19,2,'2006-02-15 05:09:17'),(98,19,2,'2006-02-15 05:09:17'),(99,20,1,'2006-02-15 05:09:17'),(100,20,1,'2006-02-15 05:09:17'),(101,20,1,'2006-02-15 05:09:17'),(102,21,1,'2006-02-15 05:09:17'),(103,21,1,'2006-02-15 05:09:17'),(104,21,2,'2006-02-15 05:09:17'),(105,21,2,'2006-02-15 05:09:17'),(106,21,2,'2006-02-15 05:09:17'),(107,21,2,'2006-02-15 05:09:17'),(108,22,1,'2006-02-15 05:09:17'),(109,22,1,'2006-02-15 05:09:17'),(110,22,1,'2006-02-15 05:09:17'),(111,22,1,'2006-02-15 05:09:17'),(112,22,2,'2006-02-15 05:09:17'),(113,22,2,'2006-02-15 05:09:17'),(114,22,2,'2006-02-15 05:09:17'),(115,23,1,'2006-02-15 05:09:17'),(116,23,1,'2006-02-15 05:09:17'),(117,23,1,'2006-02-15 05:09:17'),(118,23,2,'2006-02-15 05:09:17'),(119,23,2,'2006-02-15 05:09:17'),(120,24,1,'2006-02-15 05:09:17'),(121,24,1,'2006-02-15 05:09:17'),(122,24,1,'2006-02-15 05:09:17'),(123,24,1,'2006-02-15 05:09:17'),(124,25,1,'2006-02-15 05:09:17'),(125,25,1,'2006-02-15 05:09:17'),(126,25,1,'2006-02-15 05:09:17'),(127,25,1,'2006-02-15 05:09:17'),(128,25,2,'2006-02-15 05:09:17'),(129,25,2,'2006-02-15 05:09:17'),(130,26,1,'2006-02-15 05:09:17'),(131,26,1,'2006-02-15 05:09:17'),(132,26,2,'2006-02-15 05:09:17'),(133,26,2,'2006-02-15 05:09:17'),(134,26,2,'2006-02-15 05:09:17'),(135,27,1,'2006-02-15 05:09:17'),(136,27,1,'2006-02-15 05:09:17'),(137,27,1,'2006-02-15 05:09:17'),(138,27,1,'2006-02-15 05:09:17'),(139,28,1,'2006-02-15 05:09:17'),(140,28,1,'2006-02-15 05:09:17'),(141,28,1,'2006-02-15 05:09:17'),(142,29,1,'2006-02-15 05:09:17'),(143,29,1,'2006-02-15 05:09:17'),(144,30,1,'2006-02-15 05:09:17'),(145,30,1,'2006-02-15 05:09:17'),(146,31,1,'2006-02-15 05:09:17'),(147,31,1,'2006-02-15 05:09:17'),(148,31,1,'2006-02-15 05:09:17'),(149,31,1,'2006-02-15 05:09:17'),(150,31,2,'2006-02-15 05:09:17'),(151,31,2,'2006-02-15 05:09:17'),(152,31,2,'2006-02-15 05:09:17'),(153,31,2,'2006-02-15 05:09:17'),(154,32,2,'2006-02-15 05:09:17'),(155,32,2,'2006-02-15 05:09:17'),(156,34,2,'2006-02-15 05:09:17'),(157,34,2,'2006-02-15 05:09:17'),(158,34,2,'2006-02-15 05:09:17'),(159,34,2,'2006-02-15 05:09:17'),(160,35,1,'2006-02-15 05:09:17'),(161,35,1,'2006-02-15 05:09:17'),(162,35,1,'2006-02-15 05:09:17'),(163,35,1,'2006-02-15 05:09:17'),(164,35,2,'2006-02-15 05:09:17'),(165,35,2,'2006-02-15 05:09:17'),(166,35,2,'2006-02-15 05:09:17'),(167,37,1,'2006-02-15 05:09:17'),(168,37,1,'2006-02-15 05:09:17'),(169,37,1,'2006-02-15 05:09:17'),(170,37,1,'2006-02-15 05:09:17'),(171,37,2,'2006-02-15 05:09:17'),(172,37,2,'2006-02-15 05:09:17'),(173,37,2,'2006-02-15 05:09:17'),(174,39,1,'2006-02-15 05:09:17'),(175,39,1,'2006-02-15 05:09:17'),(176,39,1,'2006-02-15 05:09:17'),(177,39,2,'2006-02-15 05:09:17'),(178,39,2,'2006-02-15 05:09:17'),(179,39,2,'2006-02-15 05:09:17'),(180,39,2,'2006-02-15 05:09:17'),(181,40,2,'2006-02-15 05:09:17'),(182,40,2,'2006-02-15 05:09:17'),(183,40,2,'2006-02-15 05:09:17'),(184,40,2,'2006-02-15 05:09:17'),(185,42,2,'2006-02-15 05:09:17'),(186,42,2,'2006-02-15 05:09:17'),(187,42,2,'2006-02-15 05:09:17'),(188,42,2,'2006-02-15 05:09:17'),(189,43,1,'2006-02-15 05:09:17'),(190,43,1,'2006-02-15 05:09:17'),(191,43,1,'2006-02-15 05:09:17'),(192,43,2,'2006-02-15 05:09:17'),(193,43,2,'2006-02-15 05:09:17'),(194,43,2,'2006-02-15 05:09:17'),(195,43,2,'2006-02-15 05:09:17'),(196,44,1,'2006-02-15 05:09:17'),(197,44,1,'2006-02-15 05:09:17'),(198,44,2,'2006-02-15 05:09:17'),(199,44,2,'2006-02-15 05:09:17'),(200,44,2,'2006-02-15 05:09:17'),(201,45,1,'2006-02-15 05:09:17'),(202,45,1,'2006-02-15 05:09:17'),(203,45,1,'2006-02-15 05:09:17'),(204,45,1,'2006-02-15 05:09:17'),(205,45,2,'2006-02-15 05:09:17'),(206,45,2,'2006-02-15 05:09:17'),(207,46,2,'2006-02-15 05:09:17'),(208,46,2,'2006-02-15 05:09:17'),(209,46,2,'2006-02-15 05:09:17'),(210,47,2,'2006-02-15 05:09:17'),(211,47,2,'2006-02-15 05:09:17'),(212,48,1,'2006-02-15 05:09:17'),(213,48,1,'2006-02-15 05:09:17'),(214,48,2,'2006-02-15 05:09:17'),(215,48,2,'2006-02-15 05:09:17'),(216,49,1,'2006-02-15 05:09:17'),(217,49,1,'2006-02-15 05:09:17'),(218,49,1,'2006-02-15 05:09:17'),(219,49,2,'2006-02-15 05:09:17'),(220,49,2,'2006-02-15 05:09:17'),(221,49,2,'2006-02-15 05:09:17'),(222,50,1,'2006-02-15 05:09:17'),(223,50,1,'2006-02-15 05:09:17'),(224,50,1,'2006-02-15 05:09:17'),(225,50,2,'2006-02-15 05:09:17'),(226,50,2,'2006-02-15 05:09:17'),(227,51,1,'2006-02-15 05:09:17'),(228,51,1,'2006-02-15 05:09:17'),(229,51,2,'2006-02-15 05:09:17'),(230,51,2,'2006-02-15 05:09:17'),(231,51,2,'2006-02-15 05:09:17'),(232,51,2,'2006-02-15 05:09:17'),(233,52,2,'2006-02-15 05:09:17'),(234,52,2,'2006-02-15 05:09:17'),(235,53,1,'2006-02-15 05:09:17'),(236,53,1,'2006-02-15 05:09:17'),(237,54,1,'2006-02-15 05:09:17'),(238,54,1,'2006-02-15 05:09:17'),(239,54,1,'2006-02-15 05:09:17'),(240,54,2,'2006-02-15 05:09:17'),(241,54,2,'2006-02-15 05:09:17'),(242,55,1,'2006-02-15 05:09:17'),(243,55,1,'2006-02-15 05:09:17'),(244,55,1,'2006-02-15 05:09:17'),(245,55,1,'2006-02-15 05:09:17'),(246,55,2,'2006-02-15 05:09:17'),(247,55,2,'2006-02-15 05:09:17'),(248,56,1,'2006-02-15 05:09:17'),(249,56,1,'2006-02-15 05:09:17'),(250,56,1,'2006-02-15 05:09:17'),(251,56,2,'2006-02-15 05:09:17'),(252,56,2,'2006-02-15 05:09:17'),(253,57,1,'2006-02-15 05:09:17'),(254,57,1,'2006-02-15 05:09:17'),(255,57,1,'2006-02-15 05:09:17'),(256,57,1,'2006-02-15 05:09:17'),(257,57,2,'2006-02-15 05:09:17'),(258,57,2,'2006-02-15 05:09:17'),(259,57,2,'2006-02-15 05:09:17'),(260,58,2,'2006-02-15 05:09:17'),(261,58,2,'2006-02-15 05:09:17'),(262,58,2,'2006-02-15 05:09:17'),(263,58,2,'2006-02-15 05:09:17'),(264,59,1,'2006-02-15 05:09:17'),(265,59,1,'2006-02-15 05:09:17'),(266,59,1,'2006-02-15 05:09:17'),(267,59,2,'2006-02-15 05:09:17'),(268,59,2,'2006-02-15 05:09:17'),(269,60,1,'2006-02-15 05:09:17'),(270,60,1,'2006-02-15 05:09:17'),(271,60,1,'2006-02-15 05:09:17'),(272,61,1,'2006-02-15 05:09:17'),(273,61,1,'2006-02-15 05:09:17'),(274,61,1,'2006-02-15 05:09:17'),(275,61,1,'2006-02-15 05:09:17'),(276,61,2,'2006-02-15 05:09:17'),(277,61,2,'2006-02-15 05:09:17'),(278,62,2,'2006-02-15 05:09:17'),(279,62,2,'2006-02-15 05:09:17'),(280,63,1,'2006-02-15 05:09:17'),(281,63,1,'2006-02-15 05:09:17'),(282,63,2,'2006-02-15 05:09:17'),(283,63,2,'2006-02-15 05:09:17'),(284,64,2,'2006-02-15 05:09:17'),(285,64,2,'2006-02-15 05:09:17'),(286,64,2,'2006-02-15 05:09:17'),(287,65,2,'2006-02-15 05:09:17'),(288,65,2,'2006-02-15 05:09:17'),(289,65,2,'2006-02-15 05:09:17'),(290,65,2,'2006-02-15 05:09:17'),(291,66,1,'2006-02-15 05:09:17'),(292,66,1,'2006-02-15 05:09:17'),(293,66,1,'2006-02-15 05:09:17'),(294,67,1,'2006-02-15 05:09:17'),(295,67,1,'2006-02-15 05:09:17'),(296,67,2,'2006-02-15 05:09:17'),(297,67,2,'2006-02-15 05:09:17'),(298,67,2,'2006-02-15 05:09:17'),(299,67,2,'2006-02-15 05:09:17'),(300,68,1,'2006-02-15 05:09:17'),(301,68,1,'2006-02-15 05:09:17'),(302,68,2,'2006-02-15 05:09:17'),(303,68,2,'2006-02-15 05:09:17'),(304,69,1,'2006-02-15 05:09:17'),(305,69,1,'2006-02-15 05:09:17'),(306,69,1,'2006-02-15 05:09:17'),(307,69,1,'2006-02-15 05:09:17'),(308,69,2,'2006-02-15 05:09:17'),(309,69,2,'2006-02-15 05:09:17'),(310,69,2,'2006-02-15 05:09:17'),(311,69,2,'2006-02-15 05:09:17'),(312,70,1,'2006-02-15 05:09:17'),(313,70,1,'2006-02-15 05:09:17'),(314,70,2,'2006-02-15 05:09:17'),(315,70,2,'2006-02-15 05:09:17'),(316,71,2,'2006-02-15 05:09:17'),(317,71,2,'2006-02-15 05:09:17'),(318,71,2,'2006-02-15 05:09:17'),(319,71,2,'2006-02-15 05:09:17'),(320,72,1,'2006-02-15 05:09:17'),(321,72,1,'2006-02-15 05:09:17'),(322,72,1,'2006-02-15 05:09:17'),(323,72,1,'2006-02-15 05:09:17'),(324,72,2,'2006-02-15 05:09:17'),(325,72,2,'2006-02-15 05:09:17'),(326,73,1,'2006-02-15 05:09:17'),(327,73,1,'2006-02-15 05:09:17'),(328,73,1,'2006-02-15 05:09:17'),(329,73,1,'2006-02-15 05:09:17'),(330,73,2,'2006-02-15 05:09:17'),(331,73,2,'2006-02-15 05:09:17'),(332,73,2,'2006-02-15 05:09:17'),(333,73,2,'2006-02-15 05:09:17'),(334,74,1,'2006-02-15 05:09:17'),(335,74,1,'2006-02-15 05:09:17'),(336,74,1,'2006-02-15 05:09:17'),(337,74,2,'2006-02-15 05:09:17'),(338,74,2,'2006-02-15 05:09:17'),(339,75,2,'2006-02-15 05:09:17'),(340,75,2,'2006-02-15 05:09:17'),(341,75,2,'2006-02-15 05:09:17'),(342,76,1,'2006-02-15 05:09:17'),(343,76,1,'2006-02-15 05:09:17'),(344,76,1,'2006-02-15 05:09:17'),(345,77,1,'2006-02-15 05:09:17'),(346,77,1,'2006-02-15 05:09:17'),(347,77,1,'2006-02-15 05:09:17'),(348,77,1,'2006-02-15 05:09:17'),(349,77,2,'2006-02-15 05:09:17'),(350,77,2,'2006-02-15 05:09:17'),(351,78,1,'2006-02-15 05:09:17'),(352,78,1,'2006-02-15 05:09:17'),(353,78,1,'2006-02-15 05:09:17'),(354,78,2,'2006-02-15 05:09:17'),(355,78,2,'2006-02-15 05:09:17'),(356,78,2,'2006-02-15 05:09:17'),(357,78,2,'2006-02-15 05:09:17'),(358,79,1,'2006-02-15 05:09:17'),(359,79,1,'2006-02-15 05:09:17'),(360,79,1,'2006-02-15 05:09:17'),(361,79,2,'2006-02-15 05:09:17'),(362,79,2,'2006-02-15 05:09:17'),(363,79,2,'2006-02-15 05:09:17'),(364,80,1,'2006-02-15 05:09:17'),(365,80,1,'2006-02-15 05:09:17'),(366,80,1,'2006-02-15 05:09:17'),(367,80,1,'2006-02-15 05:09:17'),(368,81,1,'2006-02-15 05:09:17'),(369,81,1,'2006-02-15 05:09:17'),(370,81,1,'2006-02-15 05:09:17'),(371,81,1,'2006-02-15 05:09:17'),(372,82,1,'2006-02-15 05:09:17'),(373,82,1,'2006-02-15 05:09:17'),(374,83,1,'2006-02-15 05:09:17'),(375,83,1,'2006-02-15 05:09:17'),(376,83,1,'2006-02-15 05:09:17'),(377,83,2,'2006-02-15 05:09:17'),(378,83,2,'2006-02-15 05:09:17'),(379,84,1,'2006-02-15 05:09:17'),(380,84,1,'2006-02-15 05:09:17'),(381,84,1,'2006-02-15 05:09:17'),(382,84,1,'2006-02-15 05:09:17'),(383,85,2,'2006-02-15 05:09:17'),(384,85,2,'2006-02-15 05:09:17'),(385,85,2,'2006-02-15 05:09:17'),(386,85,2,'2006-02-15 05:09:17'),(387,86,1,'2006-02-15 05:09:17'),(388,86,1,'2006-02-15 05:09:17'),(389,86,1,'2006-02-15 05:09:17'),(390,86,1,'2006-02-15 05:09:17'),(391,86,2,'2006-02-15 05:09:17'),(392,86,2,'2006-02-15 05:09:17'),(393,86,2,'2006-02-15 05:09:17'),(394,86,2,'2006-02-15 05:09:17'),(395,88,2,'2006-02-15 05:09:17'),(396,88,2,'2006-02-15 05:09:17'),(397,88,2,'2006-02-15 05:09:17'),(398,88,2,'2006-02-15 05:09:17'),(399,89,1,'2006-02-15 05:09:17'),(400,89,1,'2006-02-15 05:09:17'),(401,89,1,'2006-02-15 05:09:17'),(402,89,2,'2006-02-15 05:09:17'),(403,89,2,'2006-02-15 05:09:17'),(404,89,2,'2006-02-15 05:09:17'),(405,90,1,'2006-02-15 05:09:17'),(406,90,1,'2006-02-15 05:09:17'),(407,90,1,'2006-02-15 05:09:17'),(408,90,2,'2006-02-15 05:09:17'),(409,90,2,'2006-02-15 05:09:17'),(410,90,2,'2006-02-15 05:09:17'),(411,91,1,'2006-02-15 05:09:17'),(412,91,1,'2006-02-15 05:09:17'),(413,91,1,'2006-02-15 05:09:17'),(414,91,1,'2006-02-15 05:09:17'),(415,91,2,'2006-02-15 05:09:17'),(416,91,2,'2006-02-15 05:09:17'),(417,91,2,'2006-02-15 05:09:17'),(418,91,2,'2006-02-15 05:09:17'),(419,92,1,'2006-02-15 05:09:17'),(420,92,1,'2006-02-15 05:09:17'),(421,92,2,'2006-02-15 05:09:17'),(422,92,2,'2006-02-15 05:09:17'),(423,93,2,'2006-02-15 05:09:17'),(424,93,2,'2006-02-15 05:09:17'),(425,93,2,'2006-02-15 05:09:17'),(426,94,1,'2006-02-15 05:09:17'),(427,94,1,'2006-02-15 05:09:17'),(428,95,1,'2006-02-15 05:09:17'),(429,95,1,'2006-02-15 05:09:17'),(430,95,2,'2006-02-15 05:09:17'),(431,95,2,'2006-02-15 05:09:17'),(432,95,2,'2006-02-15 05:09:17'),(433,96,1,'2006-02-15 05:09:17'),(434,96,1,'2006-02-15 05:09:17'),(435,96,1,'2006-02-15 05:09:17'),(436,97,1,'2006-02-15 05:09:17'),(437,97,1,'2006-02-15 05:09:17'),(438,97,1,'2006-02-15 05:09:17'),(439,97,1,'2006-02-15 05:09:17'),(440,97,2,'2006-02-15 05:09:17'),(441,97,2,'2006-02-15 05:09:17'),(442,98,1,'2006-02-15 05:09:17'),(443,98,1,'2006-02-15 05:09:17'),(444,98,1,'2006-02-15 05:09:17'),(445,99,1,'2006-02-15 05:09:17'),(446,99,1,'2006-02-15 05:09:17'),(447,99,1,'2006-02-15 05:09:17'),(448,99,2,'2006-02-15 05:09:17'),(449,99,2,'2006-02-15 05:09:17'),(450,99,2,'2006-02-15 05:09:17'),(451,100,1,'2006-02-15 05:09:17'),(452,100,1,'2006-02-15 05:09:17'),(453,100,1,'2006-02-15 05:09:17'),(454,100,1,'2006-02-15 05:09:17'),(455,100,2,'2006-02-15 05:09:17'),(456,100,2,'2006-02-15 05:09:17'),(457,101,1,'2006-02-15 05:09:17'),(458,101,1,'2006-02-15 05:09:17'),(459,101,1,'2006-02-15 05:09:17'),(460,101,1,'2006-02-15 05:09:17'),(461,101,2,'2006-02-15 05:09:17'),(462,101,2,'2006-02-15 05:09:17'),(463,102,2,'2006-02-15 05:09:17'),(464,102,2,'2006-02-15 05:09:17'),(465,103,1,'2006-02-15 05:09:17'),(466,103,1,'2006-02-15 05:09:17'),(467,103,1,'2006-02-15 05:09:17'),(468,103,1,'2006-02-15 05:09:17'),(469,103,2,'2006-02-15 05:09:17'),(470,103,2,'2006-02-15 05:09:17'),(471,103,2,'2006-02-15 05:09:17'),(472,103,2,'2006-02-15 05:09:17'),(473,104,2,'2006-02-15 05:09:17'),(474,104,2,'2006-02-15 05:09:17'),(475,104,2,'2006-02-15 05:09:17'),(476,105,1,'2006-02-15 05:09:17'),(477,105,1,'2006-02-15 05:09:17'),(478,105,2,'2006-02-15 05:09:17'),(479,105,2,'2006-02-15 05:09:17'),(480,105,2,'2006-02-15 05:09:17'),(481,106,1,'2006-02-15 05:09:17'),(482,106,1,'2006-02-15 05:09:17'),(483,107,2,'2006-02-15 05:09:17'),(484,107,2,'2006-02-15 05:09:17'),(485,109,1,'2006-02-15 05:09:17'),(486,109,1,'2006-02-15 05:09:17'),(487,109,1,'2006-02-15 05:09:17'),(488,109,1,'2006-02-15 05:09:17'),(489,109,2,'2006-02-15 05:09:17'),(490,109,2,'2006-02-15 05:09:17'),(491,109,2,'2006-02-15 05:09:17'),(492,109,2,'2006-02-15 05:09:17'),(493,110,1,'2006-02-15 05:09:17'),(494,110,1,'2006-02-15 05:09:17'),(495,110,1,'2006-02-15 05:09:17'),(496,110,1,'2006-02-15 05:09:17'),(497,111,2,'2006-02-15 05:09:17'),(498,111,2,'2006-02-15 05:09:17'),(499,111,2,'2006-02-15 05:09:17'),(500,111,2,'2006-02-15 05:09:17'),(501,112,1,'2006-02-15 05:09:17'),(502,112,1,'2006-02-15 05:09:17'),(503,112,1,'2006-02-15 05:09:17'),(504,112,1,'2006-02-15 05:09:17'),(505,112,2,'2006-02-15 05:09:17'),(506,112,2,'2006-02-15 05:09:17'),(507,112,2,'2006-02-15 05:09:17'),(508,113,2,'2006-02-15 05:09:17'),(509,113,2,'2006-02-15 05:09:17'),(510,113,2,'2006-02-15 05:09:17'),(511,113,2,'2006-02-15 05:09:17'),(512,114,1,'2006-02-15 05:09:17'),(513,114,1,'2006-02-15 05:09:17'),(514,114,1,'2006-02-15 05:09:17'),(515,114,1,'2006-02-15 05:09:17'),(516,114,2,'2006-02-15 05:09:17'),(517,114,2,'2006-02-15 05:09:17'),(518,114,2,'2006-02-15 05:09:17'),(519,115,1,'2006-02-15 05:09:17'),(520,115,1,'2006-02-15 05:09:17'),(521,115,1,'2006-02-15 05:09:17'),(522,115,2,'2006-02-15 05:09:17'),(523,115,2,'2006-02-15 05:09:17'),(524,115,2,'2006-02-15 05:09:17'),(525,115,2,'2006-02-15 05:09:17'),(526,116,1,'2006-02-15 05:09:17'),(527,116,1,'2006-02-15 05:09:17'),(528,116,2,'2006-02-15 05:09:17'),(529,116,2,'2006-02-15 05:09:17'),(530,116,2,'2006-02-15 05:09:17'),(531,116,2,'2006-02-15 05:09:17'),(532,117,1,'2006-02-15 05:09:17'),(533,117,1,'2006-02-15 05:09:17'),(534,117,1,'2006-02-15 05:09:17'),(535,117,1,'2006-02-15 05:09:17'),(536,117,2,'2006-02-15 05:09:17'),(537,117,2,'2006-02-15 05:09:17'),(538,118,1,'2006-02-15 05:09:17'),(539,118,1,'2006-02-15 05:09:17'),(540,118,1,'2006-02-15 05:09:17'),(541,118,1,'2006-02-15 05:09:17'),(542,118,2,'2006-02-15 05:09:17'),(543,118,2,'2006-02-15 05:09:17'),(544,119,1,'2006-02-15 05:09:17'),(545,119,1,'2006-02-15 05:09:17'),(546,119,1,'2006-02-15 05:09:17'),(547,119,2,'2006-02-15 05:09:17'),(548,119,2,'2006-02-15 05:09:17'),(549,119,2,'2006-02-15 05:09:17'),(550,119,2,'2006-02-15 05:09:17'),(551,120,1,'2006-02-15 05:09:17'),(552,120,1,'2006-02-15 05:09:17'),(553,120,1,'2006-02-15 05:09:17'),(554,121,1,'2006-02-15 05:09:17'),(555,121,1,'2006-02-15 05:09:17'),(556,121,1,'2006-02-15 05:09:17'),(557,121,2,'2006-02-15 05:09:17'),(558,121,2,'2006-02-15 05:09:17'),(559,121,2,'2006-02-15 05:09:17'),(560,122,1,'2006-02-15 05:09:17'),(561,122,1,'2006-02-15 05:09:17'),(562,122,1,'2006-02-15 05:09:17'),(563,122,1,'2006-02-15 05:09:17'),(564,122,2,'2006-02-15 05:09:17'),(565,122,2,'2006-02-15 05:09:17'),(566,122,2,'2006-02-15 05:09:17'),(567,123,1,'2006-02-15 05:09:17'),(568,123,1,'2006-02-15 05:09:17'),(569,123,2,'2006-02-15 05:09:17'),(570,123,2,'2006-02-15 05:09:17'),(571,123,2,'2006-02-15 05:09:17'),(572,124,2,'2006-02-15 05:09:17'),(573,124,2,'2006-02-15 05:09:17'),(574,124,2,'2006-02-15 05:09:17'),(575,125,2,'2006-02-15 05:09:17'),(576,125,2,'2006-02-15 05:09:17'),(577,126,2,'2006-02-15 05:09:17'),(578,126,2,'2006-02-15 05:09:17'),(579,126,2,'2006-02-15 05:09:17'),(580,127,1,'2006-02-15 05:09:17'),(581,127,1,'2006-02-15 05:09:17'),(582,127,1,'2006-02-15 05:09:17'),(583,127,1,'2006-02-15 05:09:17'),(584,127,2,'2006-02-15 05:09:17'),(585,127,2,'2006-02-15 05:09:17'),(586,127,2,'2006-02-15 05:09:17'),(587,127,2,'2006-02-15 05:09:17'),(588,129,1,'2006-02-15 05:09:17'),(589,129,1,'2006-02-15 05:09:17'),(590,129,1,'2006-02-15 05:09:17'),(591,129,2,'2006-02-15 05:09:17'),(592,129,2,'2006-02-15 05:09:17'),(593,129,2,'2006-02-15 05:09:17'),(594,130,1,'2006-02-15 05:09:17'),(595,130,1,'2006-02-15 05:09:17'),(596,130,2,'2006-02-15 05:09:17'),(597,130,2,'2006-02-15 05:09:17'),(598,130,2,'2006-02-15 05:09:17'),(599,130,2,'2006-02-15 05:09:17'),(600,131,1,'2006-02-15 05:09:17'),(601,131,1,'2006-02-15 05:09:17'),(602,131,1,'2006-02-15 05:09:17'),(603,131,1,'2006-02-15 05:09:17'),(604,131,2,'2006-02-15 05:09:17'),(605,131,2,'2006-02-15 05:09:17'),(606,132,1,'2006-02-15 05:09:17'),(607,132,1,'2006-02-15 05:09:17'),(608,132,1,'2006-02-15 05:09:17'),(609,132,1,'2006-02-15 05:09:17'),(610,132,2,'2006-02-15 05:09:17'),(611,132,2,'2006-02-15 05:09:17'),(612,133,1,'2006-02-15 05:09:17'),(613,133,1,'2006-02-15 05:09:17'),(614,133,2,'2006-02-15 05:09:17'),(615,133,2,'2006-02-15 05:09:17'),(616,134,2,'2006-02-15 05:09:17'),(617,134,2,'2006-02-15 05:09:17'),(618,134,2,'2006-02-15 05:09:17'),(619,135,1,'2006-02-15 05:09:17'),(620,135,1,'2006-02-15 05:09:17'),(621,135,1,'2006-02-15 05:09:17'),(622,135,2,'2006-02-15 05:09:17'),(623,135,2,'2006-02-15 05:09:17'),(624,135,2,'2006-02-15 05:09:17'),(625,135,2,'2006-02-15 05:09:17'),(626,136,1,'2006-02-15 05:09:17'),(627,136,1,'2006-02-15 05:09:17'),(628,136,1,'2006-02-15 05:09:17'),(629,137,2,'2006-02-15 05:09:17'),(630,137,2,'2006-02-15 05:09:17'),(631,137,2,'2006-02-15 05:09:17'),(632,137,2,'2006-02-15 05:09:17'),(633,138,1,'2006-02-15 05:09:17'),(634,138,1,'2006-02-15 05:09:17'),(635,138,2,'2006-02-15 05:09:17'),(636,138,2,'2006-02-15 05:09:17'),(637,138,2,'2006-02-15 05:09:17'),(638,139,1,'2006-02-15 05:09:17'),(639,139,1,'2006-02-15 05:09:17'),(640,139,1,'2006-02-15 05:09:17'),(641,139,1,'2006-02-15 05:09:17'),(642,139,2,'2006-02-15 05:09:17'),(643,139,2,'2006-02-15 05:09:17'),(644,140,1,'2006-02-15 05:09:17'),(645,140,1,'2006-02-15 05:09:17'),(646,140,2,'2006-02-15 05:09:17'),(647,140,2,'2006-02-15 05:09:17'),(648,140,2,'2006-02-15 05:09:17'),(649,141,1,'2006-02-15 05:09:17'),(650,141,1,'2006-02-15 05:09:17'),(651,141,1,'2006-02-15 05:09:17'),(652,141,2,'2006-02-15 05:09:17'),(653,141,2,'2006-02-15 05:09:17'),(654,142,1,'2006-02-15 05:09:17'),(655,142,1,'2006-02-15 05:09:17'),(656,142,1,'2006-02-15 05:09:17'),(657,142,2,'2006-02-15 05:09:17'),(658,142,2,'2006-02-15 05:09:17'),(659,143,1,'2006-02-15 05:09:17'),(660,143,1,'2006-02-15 05:09:17'),(661,143,1,'2006-02-15 05:09:17'),(662,143,1,'2006-02-15 05:09:17'),(663,143,2,'2006-02-15 05:09:17'),(664,143,2,'2006-02-15 05:09:17'),(665,143,2,'2006-02-15 05:09:17'),(666,145,2,'2006-02-15 05:09:17'),(667,145,2,'2006-02-15 05:09:17'),(668,145,2,'2006-02-15 05:09:17'),(669,146,1,'2006-02-15 05:09:17'),(670,146,1,'2006-02-15 05:09:17'),(671,146,1,'2006-02-15 05:09:17'),(672,147,1,'2006-02-15 05:09:17'),(673,147,1,'2006-02-15 05:09:17'),(674,147,1,'2006-02-15 05:09:17'),(675,147,2,'2006-02-15 05:09:17'),(676,147,2,'2006-02-15 05:09:17'),(677,147,2,'2006-02-15 05:09:17'),(678,149,1,'2006-02-15 05:09:17'),(679,149,1,'2006-02-15 05:09:17'),(680,149,1,'2006-02-15 05:09:17'),(681,149,2,'2006-02-15 05:09:17'),(682,149,2,'2006-02-15 05:09:17'),(683,149,2,'2006-02-15 05:09:17'),(684,150,1,'2006-02-15 05:09:17'),(685,150,1,'2006-02-15 05:09:17'),(686,150,2,'2006-02-15 05:09:17'),(687,150,2,'2006-02-15 05:09:17'),(688,150,2,'2006-02-15 05:09:17'),(689,150,2,'2006-02-15 05:09:17'),(690,151,1,'2006-02-15 05:09:17'),(691,151,1,'2006-02-15 05:09:17'),(692,151,2,'2006-02-15 05:09:17'),(693,151,2,'2006-02-15 05:09:17'),(694,152,1,'2006-02-15 05:09:17'),(695,152,1,'2006-02-15 05:09:17'),(696,152,1,'2006-02-15 05:09:17'),(697,152,1,'2006-02-15 05:09:17'),(698,153,1,'2006-02-15 05:09:17'),(699,153,1,'2006-02-15 05:09:17'),(700,153,1,'2006-02-15 05:09:17'),(701,153,1,'2006-02-15 05:09:17'),(702,154,1,'2006-02-15 05:09:17'),(703,154,1,'2006-02-15 05:09:17'),(704,154,1,'2006-02-15 05:09:17'),(705,154,2,'2006-02-15 05:09:17'),(706,154,2,'2006-02-15 05:09:17'),(707,154,2,'2006-02-15 05:09:17'),(708,154,2,'2006-02-15 05:09:17'),(709,155,1,'2006-02-15 05:09:17'),(710,155,1,'2006-02-15 05:09:17'),(711,155,2,'2006-02-15 05:09:17'),(712,155,2,'2006-02-15 05:09:17'),(713,155,2,'2006-02-15 05:09:17'),(714,156,2,'2006-02-15 05:09:17'),(715,156,2,'2006-02-15 05:09:17'),(716,157,2,'2006-02-15 05:09:17'),(717,157,2,'2006-02-15 05:09:17'),(718,157,2,'2006-02-15 05:09:17'),(719,158,1,'2006-02-15 05:09:17'),(720,158,1,'2006-02-15 05:09:17'),(721,158,2,'2006-02-15 05:09:17'),(722,158,2,'2006-02-15 05:09:17'),(723,158,2,'2006-02-15 05:09:17'),(724,159,1,'2006-02-15 05:09:17'),(725,159,1,'2006-02-15 05:09:17'),(726,159,1,'2006-02-15 05:09:17'),(727,159,1,'2006-02-15 05:09:17'),(728,159,2,'2006-02-15 05:09:17'),(729,159,2,'2006-02-15 05:09:17'),(730,159,2,'2006-02-15 05:09:17'),(731,160,1,'2006-02-15 05:09:17'),(732,160,1,'2006-02-15 05:09:17'),(733,160,2,'2006-02-15 05:09:17'),(734,160,2,'2006-02-15 05:09:17'),(735,160,2,'2006-02-15 05:09:17'),(736,161,1,'2006-02-15 05:09:17'),(737,161,1,'2006-02-15 05:09:17'),(738,162,1,'2006-02-15 05:09:17'),(739,162,1,'2006-02-15 05:09:17'),(740,162,1,'2006-02-15 05:09:17'),(741,162,2,'2006-02-15 05:09:17'),(742,162,2,'2006-02-15 05:09:17'),(743,162,2,'2006-02-15 05:09:17'),(744,162,2,'2006-02-15 05:09:17'),(745,163,2,'2006-02-15 05:09:17'),(746,163,2,'2006-02-15 05:09:17'),(747,163,2,'2006-02-15 05:09:17'),(748,164,1,'2006-02-15 05:09:17'),(749,164,1,'2006-02-15 05:09:17'),(750,164,2,'2006-02-15 05:09:17'),(751,164,2,'2006-02-15 05:09:17'),(752,164,2,'2006-02-15 05:09:17'),(753,165,1,'2006-02-15 05:09:17'),(754,165,1,'2006-02-15 05:09:17'),(755,165,1,'2006-02-15 05:09:17'),(756,165,2,'2006-02-15 05:09:17'),(757,165,2,'2006-02-15 05:09:17'),(758,166,1,'2006-02-15 05:09:17'),(759,166,1,'2006-02-15 05:09:17'),(760,166,1,'2006-02-15 05:09:17'),(761,166,1,'2006-02-15 05:09:17'),(762,166,2,'2006-02-15 05:09:17'),(763,166,2,'2006-02-15 05:09:17'),(764,167,1,'2006-02-15 05:09:17'),(765,167,1,'2006-02-15 05:09:17'),(766,167,1,'2006-02-15 05:09:17'),(767,167,1,'2006-02-15 05:09:17'),(768,167,2,'2006-02-15 05:09:17'),(769,167,2,'2006-02-15 05:09:17'),(770,167,2,'2006-02-15 05:09:17'),(771,168,1,'2006-02-15 05:09:17'),(772,168,1,'2006-02-15 05:09:17'),(773,169,1,'2006-02-15 05:09:17'),(774,169,1,'2006-02-15 05:09:17'),(775,169,2,'2006-02-15 05:09:17'),(776,169,2,'2006-02-15 05:09:17'),(777,170,1,'2006-02-15 05:09:17'),(778,170,1,'2006-02-15 05:09:17'),(779,170,2,'2006-02-15 05:09:17'),(780,170,2,'2006-02-15 05:09:17'),(781,170,2,'2006-02-15 05:09:17'),(782,170,2,'2006-02-15 05:09:17'),(783,172,1,'2006-02-15 05:09:17'),(784,172,1,'2006-02-15 05:09:17'),(785,172,1,'2006-02-15 05:09:17'),(786,172,1,'2006-02-15 05:09:17'),(787,172,2,'2006-02-15 05:09:17'),(788,172,2,'2006-02-15 05:09:17'),(789,172,2,'2006-02-15 05:09:17'),(790,173,1,'2006-02-15 05:09:17'),(791,173,1,'2006-02-15 05:09:17'),(792,173,1,'2006-02-15 05:09:17'),(793,173,2,'2006-02-15 05:09:17'),(794,173,2,'2006-02-15 05:09:17'),(795,174,1,'2006-02-15 05:09:17'),(796,174,1,'2006-02-15 05:09:17'),(797,174,1,'2006-02-15 05:09:17'),(798,174,1,'2006-02-15 05:09:17'),(799,174,2,'2006-02-15 05:09:17'),(800,174,2,'2006-02-15 05:09:17'),(801,174,2,'2006-02-15 05:09:17'),(802,174,2,'2006-02-15 05:09:17'),(803,175,1,'2006-02-15 05:09:17'),(804,175,1,'2006-02-15 05:09:17'),(805,175,2,'2006-02-15 05:09:17'),(806,175,2,'2006-02-15 05:09:17'),(807,175,2,'2006-02-15 05:09:17'),(808,176,1,'2006-02-15 05:09:17'),(809,176,1,'2006-02-15 05:09:17'),(810,176,2,'2006-02-15 05:09:17'),(811,176,2,'2006-02-15 05:09:17'),(812,176,2,'2006-02-15 05:09:17'),(813,176,2,'2006-02-15 05:09:17'),(814,177,2,'2006-02-15 05:09:17'),(815,177,2,'2006-02-15 05:09:17'),(816,177,2,'2006-02-15 05:09:17'),(817,178,1,'2006-02-15 05:09:17'),(818,178,1,'2006-02-15 05:09:17'),(819,179,1,'2006-02-15 05:09:17'),(820,179,1,'2006-02-15 05:09:17'),(821,179,1,'2006-02-15 05:09:17'),(822,179,1,'2006-02-15 05:09:17'),(823,180,2,'2006-02-15 05:09:17'),(824,180,2,'2006-02-15 05:09:17'),(825,181,1,'2006-02-15 05:09:17'),(826,181,1,'2006-02-15 05:09:17'),(827,181,1,'2006-02-15 05:09:17'),(828,181,2,'2006-02-15 05:09:17'),(829,181,2,'2006-02-15 05:09:17'),(830,181,2,'2006-02-15 05:09:17'),(831,181,2,'2006-02-15 05:09:17'),(832,182,1,'2006-02-15 05:09:17'),(833,182,1,'2006-02-15 05:09:17'),(834,183,1,'2006-02-15 05:09:17'),(835,183,1,'2006-02-15 05:09:17'),(836,183,1,'2006-02-15 05:09:17'),(837,183,2,'2006-02-15 05:09:17'),(838,183,2,'2006-02-15 05:09:17'),(839,183,2,'2006-02-15 05:09:17'),(840,184,1,'2006-02-15 05:09:17'),(841,184,1,'2006-02-15 05:09:17'),(842,184,2,'2006-02-15 05:09:17'),(843,184,2,'2006-02-15 05:09:17'),(844,184,2,'2006-02-15 05:09:17'),(845,185,1,'2006-02-15 05:09:17'),(846,185,1,'2006-02-15 05:09:17'),(847,186,1,'2006-02-15 05:09:17'),(848,186,1,'2006-02-15 05:09:17'),(849,186,2,'2006-02-15 05:09:17'),(850,186,2,'2006-02-15 05:09:17'),(851,187,2,'2006-02-15 05:09:17'),(852,187,2,'2006-02-15 05:09:17'),(853,187,2,'2006-02-15 05:09:17'),(854,188,1,'2006-02-15 05:09:17'),(855,188,1,'2006-02-15 05:09:17'),(856,188,1,'2006-02-15 05:09:17'),(857,189,1,'2006-02-15 05:09:17'),(858,189,1,'2006-02-15 05:09:17'),(859,189,2,'2006-02-15 05:09:17'),(860,189,2,'2006-02-15 05:09:17'),(861,189,2,'2006-02-15 05:09:17'),(862,189,2,'2006-02-15 05:09:17'),(863,190,2,'2006-02-15 05:09:17'),(864,190,2,'2006-02-15 05:09:17'),(865,190,2,'2006-02-15 05:09:17'),(866,190,2,'2006-02-15 05:09:17'),(867,191,1,'2006-02-15 05:09:17'),(868,191,1,'2006-02-15 05:09:17'),(869,191,1,'2006-02-15 05:09:17'),(870,191,2,'2006-02-15 05:09:17'),(871,191,2,'2006-02-15 05:09:17'),(872,191,2,'2006-02-15 05:09:17'),(873,193,1,'2006-02-15 05:09:17'),(874,193,1,'2006-02-15 05:09:17'),(875,193,1,'2006-02-15 05:09:17'),(876,193,1,'2006-02-15 05:09:17'),(877,193,2,'2006-02-15 05:09:17'),(878,193,2,'2006-02-15 05:09:17'),(879,193,2,'2006-02-15 05:09:17'),(880,193,2,'2006-02-15 05:09:17'),(881,194,1,'2006-02-15 05:09:17'),(882,194,1,'2006-02-15 05:09:17'),(883,194,2,'2006-02-15 05:09:17'),(884,194,2,'2006-02-15 05:09:17'),(885,196,1,'2006-02-15 05:09:17'),(886,196,1,'2006-02-15 05:09:17'),(887,197,1,'2006-02-15 05:09:17'),(888,197,1,'2006-02-15 05:09:17'),(889,199,1,'2006-02-15 05:09:17'),(890,199,1,'2006-02-15 05:09:17'),(891,199,1,'2006-02-15 05:09:17'),(892,199,1,'2006-02-15 05:09:17'),(893,199,2,'2006-02-15 05:09:17'),(894,199,2,'2006-02-15 05:09:17'),(895,199,2,'2006-02-15 05:09:17'),(896,199,2,'2006-02-15 05:09:17'),(897,200,1,'2006-02-15 05:09:17'),(898,200,1,'2006-02-15 05:09:17'),(899,200,1,'2006-02-15 05:09:17'),(900,200,1,'2006-02-15 05:09:17'),(901,200,2,'2006-02-15 05:09:17'),(902,200,2,'2006-02-15 05:09:17'),(903,200,2,'2006-02-15 05:09:17'),(904,200,2,'2006-02-15 05:09:17'),(905,201,1,'2006-02-15 05:09:17'),(906,201,1,'2006-02-15 05:09:17'),(907,201,1,'2006-02-15 05:09:17'),(908,201,1,'2006-02-15 05:09:17'),(909,202,1,'2006-02-15 05:09:17'),(910,202,1,'2006-02-15 05:09:17'),(911,202,1,'2006-02-15 05:09:17'),(912,203,2,'2006-02-15 05:09:17'),(913,203,2,'2006-02-15 05:09:17'),(914,203,2,'2006-02-15 05:09:17'),(915,203,2,'2006-02-15 05:09:17'),(916,204,1,'2006-02-15 05:09:17'),(917,204,1,'2006-02-15 05:09:17'),(918,204,1,'2006-02-15 05:09:17'),(919,204,1,'2006-02-15 05:09:17'),(920,204,2,'2006-02-15 05:09:17'),(921,204,2,'2006-02-15 05:09:17'),(922,205,1,'2006-02-15 05:09:17'),(923,205,1,'2006-02-15 05:09:17'),(924,205,1,'2006-02-15 05:09:17'),(925,205,1,'2006-02-15 05:09:17'),(926,206,1,'2006-02-15 05:09:17'),(927,206,1,'2006-02-15 05:09:17'),(928,206,1,'2006-02-15 05:09:17'),(929,206,1,'2006-02-15 05:09:17'),(930,206,2,'2006-02-15 05:09:17'),(931,206,2,'2006-02-15 05:09:17'),(932,206,2,'2006-02-15 05:09:17'),(933,206,2,'2006-02-15 05:09:17'),(934,207,1,'2006-02-15 05:09:17'),(935,207,1,'2006-02-15 05:09:17'),(936,207,1,'2006-02-15 05:09:17'),(937,207,1,'2006-02-15 05:09:17'),(938,208,1,'2006-02-15 05:09:17'),(939,208,1,'2006-02-15 05:09:17'),(940,208,1,'2006-02-15 05:09:17'),(941,209,1,'2006-02-15 05:09:17'),(942,209,1,'2006-02-15 05:09:17'),(943,209,1,'2006-02-15 05:09:17'),(944,209,1,'2006-02-15 05:09:17'),(945,210,2,'2006-02-15 05:09:17'),(946,210,2,'2006-02-15 05:09:17'),(947,210,2,'2006-02-15 05:09:17'),(948,211,1,'2006-02-15 05:09:17'),(949,211,1,'2006-02-15 05:09:17'),(950,212,1,'2006-02-15 05:09:17'),(951,212,1,'2006-02-15 05:09:17'),(952,212,1,'2006-02-15 05:09:17'),(953,212,2,'2006-02-15 05:09:17'),(954,212,2,'2006-02-15 05:09:17'),(955,213,1,'2006-02-15 05:09:17'),(956,213,1,'2006-02-15 05:09:17'),(957,213,1,'2006-02-15 05:09:17'),(958,213,1,'2006-02-15 05:09:17'),(959,214,2,'2006-02-15 05:09:17'),(960,214,2,'2006-02-15 05:09:17'),(961,214,2,'2006-02-15 05:09:17'),(962,214,2,'2006-02-15 05:09:17'),(963,215,1,'2006-02-15 05:09:17'),(964,215,1,'2006-02-15 05:09:17'),(965,215,1,'2006-02-15 05:09:17'),(966,215,2,'2006-02-15 05:09:17'),(967,215,2,'2006-02-15 05:09:17'),(968,215,2,'2006-02-15 05:09:17'),(969,216,1,'2006-02-15 05:09:17'),(970,216,1,'2006-02-15 05:09:17'),(971,216,2,'2006-02-15 05:09:17'),(972,216,2,'2006-02-15 05:09:17'),(973,216,2,'2006-02-15 05:09:17'),(974,218,1,'2006-02-15 05:09:17'),(975,218,1,'2006-02-15 05:09:17'),(976,218,1,'2006-02-15 05:09:17'),(977,218,1,'2006-02-15 05:09:17'),(978,218,2,'2006-02-15 05:09:17'),(979,218,2,'2006-02-15 05:09:17'),(980,218,2,'2006-02-15 05:09:17'),(981,219,1,'2006-02-15 05:09:17'),(982,219,1,'2006-02-15 05:09:17'),(983,219,1,'2006-02-15 05:09:17'),(984,219,1,'2006-02-15 05:09:17'),(985,220,1,'2006-02-15 05:09:17'),(986,220,1,'2006-02-15 05:09:17'),(987,220,1,'2006-02-15 05:09:17'),(988,220,1,'2006-02-15 05:09:17'),(989,220,2,'2006-02-15 05:09:17'),(990,220,2,'2006-02-15 05:09:17'),(991,220,2,'2006-02-15 05:09:17'),(992,220,2,'2006-02-15 05:09:17'),(993,222,1,'2006-02-15 05:09:17'),(994,222,1,'2006-02-15 05:09:17'),(995,222,2,'2006-02-15 05:09:17'),(996,222,2,'2006-02-15 05:09:17'),(997,222,2,'2006-02-15 05:09:17'),(998,222,2,'2006-02-15 05:09:17'),(999,223,2,'2006-02-15 05:09:17'),(1000,223,2,'2006-02-15 05:09:17'),(1001,224,1,'2006-02-15 05:09:17'),(1002,224,1,'2006-02-15 05:09:17'),(1003,225,1,'2006-02-15 05:09:17'),(1004,225,1,'2006-02-15 05:09:17'),(1005,225,1,'2006-02-15 05:09:17'),(1006,226,1,'2006-02-15 05:09:17'),(1007,226,1,'2006-02-15 05:09:17'),(1008,226,2,'2006-02-15 05:09:17'),(1009,226,2,'2006-02-15 05:09:17'),(1010,226,2,'2006-02-15 05:09:17'),(1011,227,1,'2006-02-15 05:09:17'),(1012,227,1,'2006-02-15 05:09:17'),(1013,227,1,'2006-02-15 05:09:17'),(1014,227,2,'2006-02-15 05:09:17'),(1015,227,2,'2006-02-15 05:09:17'),(1016,228,1,'2006-02-15 05:09:17'),(1017,228,1,'2006-02-15 05:09:17'),(1018,228,1,'2006-02-15 05:09:17'),(1019,228,2,'2006-02-15 05:09:17'),(1020,228,2,'2006-02-15 05:09:17'),(1021,228,2,'2006-02-15 05:09:17'),(1022,228,2,'2006-02-15 05:09:17'),(1023,229,1,'2006-02-15 05:09:17'),(1024,229,1,'2006-02-15 05:09:17'),(1025,229,2,'2006-02-15 05:09:17'),(1026,229,2,'2006-02-15 05:09:17'),(1027,230,1,'2006-02-15 05:09:17'),(1028,230,1,'2006-02-15 05:09:17'),(1029,231,1,'2006-02-15 05:09:17'),(1030,231,1,'2006-02-15 05:09:17'),(1031,231,1,'2006-02-15 05:09:17'),(1032,231,1,'2006-02-15 05:09:17'),(1033,231,2,'2006-02-15 05:09:17'),(1034,231,2,'2006-02-15 05:09:17'),(1035,231,2,'2006-02-15 05:09:17'),(1036,231,2,'2006-02-15 05:09:17'),(1037,232,1,'2006-02-15 05:09:17'),(1038,232,1,'2006-02-15 05:09:17'),(1039,232,1,'2006-02-15 05:09:17'),(1040,232,2,'2006-02-15 05:09:17'),(1041,232,2,'2006-02-15 05:09:17'),(1042,233,1,'2006-02-15 05:09:17'),(1043,233,1,'2006-02-15 05:09:17'),(1044,233,1,'2006-02-15 05:09:17'),(1045,233,1,'2006-02-15 05:09:17'),(1046,233,2,'2006-02-15 05:09:17'),(1047,233,2,'2006-02-15 05:09:17'),(1048,234,1,'2006-02-15 05:09:17'),(1049,234,1,'2006-02-15 05:09:17'),(1050,234,1,'2006-02-15 05:09:17'),(1051,234,1,'2006-02-15 05:09:17'),(1052,234,2,'2006-02-15 05:09:17'),(1053,234,2,'2006-02-15 05:09:17'),(1054,234,2,'2006-02-15 05:09:17'),(1055,235,1,'2006-02-15 05:09:17'),(1056,235,1,'2006-02-15 05:09:17'),(1057,235,2,'2006-02-15 05:09:17'),(1058,235,2,'2006-02-15 05:09:17'),(1059,235,2,'2006-02-15 05:09:17'),(1060,235,2,'2006-02-15 05:09:17'),(1061,236,2,'2006-02-15 05:09:17'),(1062,236,2,'2006-02-15 05:09:17'),(1063,236,2,'2006-02-15 05:09:17'),(1064,236,2,'2006-02-15 05:09:17'),(1065,237,1,'2006-02-15 05:09:17'),(1066,237,1,'2006-02-15 05:09:17'),(1067,238,1,'2006-02-15 05:09:17'),(1068,238,1,'2006-02-15 05:09:17'),(1069,239,1,'2006-02-15 05:09:17'),(1070,239,1,'2006-02-15 05:09:17'),(1071,239,1,'2006-02-15 05:09:17'),(1072,239,1,'2006-02-15 05:09:17'),(1073,239,2,'2006-02-15 05:09:17'),(1074,239,2,'2006-02-15 05:09:17'),(1075,239,2,'2006-02-15 05:09:17'),(1076,239,2,'2006-02-15 05:09:17'),(1077,240,2,'2006-02-15 05:09:17'),(1078,240,2,'2006-02-15 05:09:17'),(1079,240,2,'2006-02-15 05:09:17'),(1080,241,1,'2006-02-15 05:09:17'),(1081,241,1,'2006-02-15 05:09:17'),(1082,241,1,'2006-02-15 05:09:17'),(1083,241,1,'2006-02-15 05:09:17'),(1084,242,1,'2006-02-15 05:09:17'),(1085,242,1,'2006-02-15 05:09:17'),(1086,242,2,'2006-02-15 05:09:17'),(1087,242,2,'2006-02-15 05:09:17'),(1088,242,2,'2006-02-15 05:09:17'),(1089,243,1,'2006-02-15 05:09:17'),(1090,243,1,'2006-02-15 05:09:17'),(1091,243,2,'2006-02-15 05:09:17'),(1092,243,2,'2006-02-15 05:09:17'),(1093,243,2,'2006-02-15 05:09:17'),(1094,243,2,'2006-02-15 05:09:17'),(1095,244,1,'2006-02-15 05:09:17'),(1096,244,1,'2006-02-15 05:09:17'),(1097,244,1,'2006-02-15 05:09:17'),(1098,244,1,'2006-02-15 05:09:17'),(1099,244,2,'2006-02-15 05:09:17'),(1100,244,2,'2006-02-15 05:09:17'),(1101,244,2,'2006-02-15 05:09:17'),(1102,245,1,'2006-02-15 05:09:17'),(1103,245,1,'2006-02-15 05:09:17'),(1104,245,1,'2006-02-15 05:09:17'),(1105,245,2,'2006-02-15 05:09:17'),(1106,245,2,'2006-02-15 05:09:17'),(1107,245,2,'2006-02-15 05:09:17'),(1108,245,2,'2006-02-15 05:09:17'),(1109,246,2,'2006-02-15 05:09:17'),(1110,246,2,'2006-02-15 05:09:17'),(1111,246,2,'2006-02-15 05:09:17'),(1112,247,1,'2006-02-15 05:09:17'),(1113,247,1,'2006-02-15 05:09:17'),(1114,247,1,'2006-02-15 05:09:17'),(1115,247,2,'2006-02-15 05:09:17'),(1116,247,2,'2006-02-15 05:09:17'),(1117,247,2,'2006-02-15 05:09:17'),(1118,247,2,'2006-02-15 05:09:17'),(1119,248,2,'2006-02-15 05:09:17'),(1120,248,2,'2006-02-15 05:09:17'),(1121,249,1,'2006-02-15 05:09:17'),(1122,249,1,'2006-02-15 05:09:17'),(1123,249,2,'2006-02-15 05:09:17'),(1124,249,2,'2006-02-15 05:09:17'),(1125,249,2,'2006-02-15 05:09:17'),(1126,249,2,'2006-02-15 05:09:17'),(1127,250,2,'2006-02-15 05:09:17'),(1128,250,2,'2006-02-15 05:09:17'),(1129,250,2,'2006-02-15 05:09:17'),(1130,250,2,'2006-02-15 05:09:17'),(1131,251,1,'2006-02-15 05:09:17'),(1132,251,1,'2006-02-15 05:09:17'),(1133,251,2,'2006-02-15 05:09:17'),(1134,251,2,'2006-02-15 05:09:17'),(1135,251,2,'2006-02-15 05:09:17'),(1136,252,1,'2006-02-15 05:09:17'),(1137,252,1,'2006-02-15 05:09:17'),(1138,252,1,'2006-02-15 05:09:17'),(1139,252,2,'2006-02-15 05:09:17'),(1140,252,2,'2006-02-15 05:09:17'),(1141,252,2,'2006-02-15 05:09:17'),(1142,253,1,'2006-02-15 05:09:17'),(1143,253,1,'2006-02-15 05:09:17'),(1144,253,1,'2006-02-15 05:09:17'),(1145,253,1,'2006-02-15 05:09:17'),(1146,253,2,'2006-02-15 05:09:17'),(1147,253,2,'2006-02-15 05:09:17'),(1148,254,1,'2006-02-15 05:09:17'),(1149,254,1,'2006-02-15 05:09:17'),(1150,254,2,'2006-02-15 05:09:17'),(1151,254,2,'2006-02-15 05:09:17'),(1152,254,2,'2006-02-15 05:09:17'),(1153,255,1,'2006-02-15 05:09:17'),(1154,255,1,'2006-02-15 05:09:17'),(1155,255,1,'2006-02-15 05:09:17'),(1156,255,1,'2006-02-15 05:09:17'),(1157,255,2,'2006-02-15 05:09:17'),(1158,255,2,'2006-02-15 05:09:17'),(1159,256,2,'2006-02-15 05:09:17'),(1160,256,2,'2006-02-15 05:09:17'),(1161,256,2,'2006-02-15 05:09:17'),(1162,257,2,'2006-02-15 05:09:17'),(1163,257,2,'2006-02-15 05:09:17'),(1164,257,2,'2006-02-15 05:09:17'),(1165,258,2,'2006-02-15 05:09:17'),(1166,258,2,'2006-02-15 05:09:17'),(1167,258,2,'2006-02-15 05:09:17'),(1168,258,2,'2006-02-15 05:09:17'),(1169,259,1,'2006-02-15 05:09:17'),(1170,259,1,'2006-02-15 05:09:17'),(1171,260,2,'2006-02-15 05:09:17'),(1172,260,2,'2006-02-15 05:09:17'),(1173,260,2,'2006-02-15 05:09:17'),(1174,260,2,'2006-02-15 05:09:17'),(1175,261,1,'2006-02-15 05:09:17'),(1176,261,1,'2006-02-15 05:09:17'),(1177,262,2,'2006-02-15 05:09:17'),(1178,262,2,'2006-02-15 05:09:17'),(1179,263,1,'2006-02-15 05:09:17'),(1180,263,1,'2006-02-15 05:09:17'),(1181,263,1,'2006-02-15 05:09:17'),(1182,263,1,'2006-02-15 05:09:17'),(1183,263,2,'2006-02-15 05:09:17'),(1184,263,2,'2006-02-15 05:09:17'),(1185,263,2,'2006-02-15 05:09:17'),(1186,264,2,'2006-02-15 05:09:17'),(1187,264,2,'2006-02-15 05:09:17'),(1188,265,1,'2006-02-15 05:09:17'),(1189,265,1,'2006-02-15 05:09:17'),(1190,265,1,'2006-02-15 05:09:17'),(1191,265,1,'2006-02-15 05:09:17'),(1192,266,1,'2006-02-15 05:09:17'),(1193,266,1,'2006-02-15 05:09:17'),(1194,266,1,'2006-02-15 05:09:17'),(1195,266,1,'2006-02-15 05:09:17'),(1196,266,2,'2006-02-15 05:09:17'),(1197,266,2,'2006-02-15 05:09:17'),(1198,266,2,'2006-02-15 05:09:17'),(1199,266,2,'2006-02-15 05:09:17'),(1200,267,1,'2006-02-15 05:09:17'),(1201,267,1,'2006-02-15 05:09:17'),(1202,267,1,'2006-02-15 05:09:17'),(1203,267,1,'2006-02-15 05:09:17'),(1204,267,2,'2006-02-15 05:09:17'),(1205,267,2,'2006-02-15 05:09:17'),(1206,268,2,'2006-02-15 05:09:17'),(1207,268,2,'2006-02-15 05:09:17'),(1208,269,1,'2006-02-15 05:09:17'),(1209,269,1,'2006-02-15 05:09:17'),(1210,269,2,'2006-02-15 05:09:17'),(1211,269,2,'2006-02-15 05:09:17'),(1212,269,2,'2006-02-15 05:09:17'),(1213,269,2,'2006-02-15 05:09:17'),(1214,270,1,'2006-02-15 05:09:17'),(1215,270,1,'2006-02-15 05:09:17'),(1216,270,1,'2006-02-15 05:09:17'),(1217,270,2,'2006-02-15 05:09:17'),(1218,270,2,'2006-02-15 05:09:17'),(1219,270,2,'2006-02-15 05:09:17'),(1220,270,2,'2006-02-15 05:09:17'),(1221,271,1,'2006-02-15 05:09:17'),(1222,271,1,'2006-02-15 05:09:17'),(1223,271,1,'2006-02-15 05:09:17'),(1224,271,2,'2006-02-15 05:09:17'),(1225,271,2,'2006-02-15 05:09:17'),(1226,272,1,'2006-02-15 05:09:17'),(1227,272,1,'2006-02-15 05:09:17'),(1228,272,1,'2006-02-15 05:09:17'),(1229,272,1,'2006-02-15 05:09:17'),(1230,273,1,'2006-02-15 05:09:17'),(1231,273,1,'2006-02-15 05:09:17'),(1232,273,1,'2006-02-15 05:09:17'),(1233,273,1,'2006-02-15 05:09:17'),(1234,273,2,'2006-02-15 05:09:17'),(1235,273,2,'2006-02-15 05:09:17'),(1236,273,2,'2006-02-15 05:09:17'),(1237,274,1,'2006-02-15 05:09:17'),(1238,274,1,'2006-02-15 05:09:17'),(1239,274,1,'2006-02-15 05:09:17'),(1240,274,2,'2006-02-15 05:09:17'),(1241,274,2,'2006-02-15 05:09:17'),(1242,274,2,'2006-02-15 05:09:17'),(1243,274,2,'2006-02-15 05:09:17'),(1244,275,1,'2006-02-15 05:09:17'),(1245,275,1,'2006-02-15 05:09:17'),(1246,275,1,'2006-02-15 05:09:17'),(1247,275,2,'2006-02-15 05:09:17'),(1248,275,2,'2006-02-15 05:09:17'),(1249,276,1,'2006-02-15 05:09:17'),(1250,276,1,'2006-02-15 05:09:17'),(1251,276,1,'2006-02-15 05:09:17'),(1252,276,1,'2006-02-15 05:09:17'),(1253,277,1,'2006-02-15 05:09:17'),(1254,277,1,'2006-02-15 05:09:17'),(1255,277,1,'2006-02-15 05:09:17'),(1256,278,1,'2006-02-15 05:09:17'),(1257,278,1,'2006-02-15 05:09:17'),(1258,279,1,'2006-02-15 05:09:17'),(1259,279,1,'2006-02-15 05:09:17'),(1260,280,1,'2006-02-15 05:09:17'),(1261,280,1,'2006-02-15 05:09:17'),(1262,280,1,'2006-02-15 05:09:17'),(1263,280,1,'2006-02-15 05:09:17'),(1264,280,2,'2006-02-15 05:09:17'),(1265,280,2,'2006-02-15 05:09:17'),(1266,281,1,'2006-02-15 05:09:17'),(1267,281,1,'2006-02-15 05:09:17'),(1268,281,2,'2006-02-15 05:09:17'),(1269,281,2,'2006-02-15 05:09:17'),(1270,281,2,'2006-02-15 05:09:17'),(1271,281,2,'2006-02-15 05:09:17'),(1272,282,1,'2006-02-15 05:09:17'),(1273,282,1,'2006-02-15 05:09:17'),(1274,282,1,'2006-02-15 05:09:17'),(1275,282,2,'2006-02-15 05:09:17'),(1276,282,2,'2006-02-15 05:09:17'),(1277,282,2,'2006-02-15 05:09:17'),(1278,283,1,'2006-02-15 05:09:17'),(1279,283,1,'2006-02-15 05:09:17'),(1280,283,1,'2006-02-15 05:09:17'),(1281,284,1,'2006-02-15 05:09:17'),(1282,284,1,'2006-02-15 05:09:17'),(1283,284,1,'2006-02-15 05:09:17'),(1284,284,2,'2006-02-15 05:09:17'),(1285,284,2,'2006-02-15 05:09:17'),(1286,284,2,'2006-02-15 05:09:17'),(1287,284,2,'2006-02-15 05:09:17'),(1288,285,1,'2006-02-15 05:09:17'),(1289,285,1,'2006-02-15 05:09:17'),(1290,285,1,'2006-02-15 05:09:17'),(1291,285,2,'2006-02-15 05:09:17'),(1292,285,2,'2006-02-15 05:09:17'),(1293,285,2,'2006-02-15 05:09:17'),(1294,285,2,'2006-02-15 05:09:17'),(1295,286,1,'2006-02-15 05:09:17'),(1296,286,1,'2006-02-15 05:09:17'),(1297,286,2,'2006-02-15 05:09:17'),(1298,286,2,'2006-02-15 05:09:17'),(1299,286,2,'2006-02-15 05:09:17'),(1300,287,1,'2006-02-15 05:09:17'),(1301,287,1,'2006-02-15 05:09:17'),(1302,287,2,'2006-02-15 05:09:17'),(1303,287,2,'2006-02-15 05:09:17'),(1304,288,1,'2006-02-15 05:09:17'),(1305,288,1,'2006-02-15 05:09:17'),(1306,288,2,'2006-02-15 05:09:17'),(1307,288,2,'2006-02-15 05:09:17'),(1308,288,2,'2006-02-15 05:09:17'),(1309,288,2,'2006-02-15 05:09:17'),(1310,289,1,'2006-02-15 05:09:17'),(1311,289,1,'2006-02-15 05:09:17'),(1312,290,1,'2006-02-15 05:09:17'),(1313,290,1,'2006-02-15 05:09:17'),(1314,290,1,'2006-02-15 05:09:17'),(1315,291,1,'2006-02-15 05:09:17'),(1316,291,1,'2006-02-15 05:09:17'),(1317,291,1,'2006-02-15 05:09:17'),(1318,291,1,'2006-02-15 05:09:17'),(1319,292,1,'2006-02-15 05:09:17'),(1320,292,1,'2006-02-15 05:09:17'),(1321,292,1,'2006-02-15 05:09:17'),(1322,292,2,'2006-02-15 05:09:17'),(1323,292,2,'2006-02-15 05:09:17'),(1324,292,2,'2006-02-15 05:09:17'),(1325,293,1,'2006-02-15 05:09:17'),(1326,293,1,'2006-02-15 05:09:17'),(1327,293,2,'2006-02-15 05:09:17'),(1328,293,2,'2006-02-15 05:09:17'),(1329,293,2,'2006-02-15 05:09:17'),(1330,294,1,'2006-02-15 05:09:17'),(1331,294,1,'2006-02-15 05:09:17'),(1332,294,2,'2006-02-15 05:09:17'),(1333,294,2,'2006-02-15 05:09:17'),(1334,294,2,'2006-02-15 05:09:17'),(1335,295,1,'2006-02-15 05:09:17'),(1336,295,1,'2006-02-15 05:09:17'),(1337,295,1,'2006-02-15 05:09:17'),(1338,295,1,'2006-02-15 05:09:17'),(1339,295,2,'2006-02-15 05:09:17'),(1340,295,2,'2006-02-15 05:09:17'),(1341,295,2,'2006-02-15 05:09:17'),(1342,295,2,'2006-02-15 05:09:17'),(1343,296,1,'2006-02-15 05:09:17'),(1344,296,1,'2006-02-15 05:09:17'),(1345,296,1,'2006-02-15 05:09:17'),(1346,296,1,'2006-02-15 05:09:17'),(1347,297,2,'2006-02-15 05:09:17'),(1348,297,2,'2006-02-15 05:09:17'),(1349,298,1,'2006-02-15 05:09:17'),(1350,298,1,'2006-02-15 05:09:17'),(1351,298,2,'2006-02-15 05:09:17'),(1352,298,2,'2006-02-15 05:09:17'),(1353,298,2,'2006-02-15 05:09:17'),(1354,299,1,'2006-02-15 05:09:17'),(1355,299,1,'2006-02-15 05:09:17'),(1356,299,1,'2006-02-15 05:09:17'),(1357,299,1,'2006-02-15 05:09:17'),(1358,300,1,'2006-02-15 05:09:17'),(1359,300,1,'2006-02-15 05:09:17'),(1360,300,2,'2006-02-15 05:09:17'),(1361,300,2,'2006-02-15 05:09:17'),(1362,300,2,'2006-02-15 05:09:17'),(1363,300,2,'2006-02-15 05:09:17'),(1364,301,1,'2006-02-15 05:09:17'),(1365,301,1,'2006-02-15 05:09:17'),(1366,301,1,'2006-02-15 05:09:17'),(1367,301,1,'2006-02-15 05:09:17'),(1368,301,2,'2006-02-15 05:09:17'),(1369,301,2,'2006-02-15 05:09:17'),(1370,301,2,'2006-02-15 05:09:17'),(1371,301,2,'2006-02-15 05:09:17'),(1372,302,1,'2006-02-15 05:09:17'),(1373,302,1,'2006-02-15 05:09:17'),(1374,302,2,'2006-02-15 05:09:17'),(1375,302,2,'2006-02-15 05:09:17'),(1376,302,2,'2006-02-15 05:09:17'),(1377,302,2,'2006-02-15 05:09:17'),(1378,303,1,'2006-02-15 05:09:17'),(1379,303,1,'2006-02-15 05:09:17'),(1380,303,1,'2006-02-15 05:09:17'),(1381,303,1,'2006-02-15 05:09:17'),(1382,303,2,'2006-02-15 05:09:17'),(1383,303,2,'2006-02-15 05:09:17'),(1384,304,1,'2006-02-15 05:09:17'),(1385,304,1,'2006-02-15 05:09:17'),(1386,304,1,'2006-02-15 05:09:17'),(1387,304,1,'2006-02-15 05:09:17'),(1388,304,2,'2006-02-15 05:09:17'),(1389,304,2,'2006-02-15 05:09:17'),(1390,305,1,'2006-02-15 05:09:17'),(1391,305,1,'2006-02-15 05:09:17'),(1392,305,1,'2006-02-15 05:09:17'),(1393,305,1,'2006-02-15 05:09:17'),(1394,305,2,'2006-02-15 05:09:17'),(1395,305,2,'2006-02-15 05:09:17'),(1396,305,2,'2006-02-15 05:09:17'),(1397,306,1,'2006-02-15 05:09:17'),(1398,306,1,'2006-02-15 05:09:17'),(1399,306,1,'2006-02-15 05:09:17'),(1400,307,1,'2006-02-15 05:09:17'),(1401,307,1,'2006-02-15 05:09:17'),(1402,307,1,'2006-02-15 05:09:17'),(1403,307,2,'2006-02-15 05:09:17'),(1404,307,2,'2006-02-15 05:09:17'),(1405,307,2,'2006-02-15 05:09:17'),(1406,308,1,'2006-02-15 05:09:17'),(1407,308,1,'2006-02-15 05:09:17'),(1408,308,2,'2006-02-15 05:09:17'),(1409,308,2,'2006-02-15 05:09:17'),(1410,309,1,'2006-02-15 05:09:17'),(1411,309,1,'2006-02-15 05:09:17'),(1412,309,2,'2006-02-15 05:09:17'),(1413,309,2,'2006-02-15 05:09:17'),(1414,309,2,'2006-02-15 05:09:17'),(1415,309,2,'2006-02-15 05:09:17'),(1416,310,1,'2006-02-15 05:09:17'),(1417,310,1,'2006-02-15 05:09:17'),(1418,311,1,'2006-02-15 05:09:17'),(1419,311,1,'2006-02-15 05:09:17'),(1420,311,1,'2006-02-15 05:09:17'),(1421,311,2,'2006-02-15 05:09:17'),(1422,311,2,'2006-02-15 05:09:17'),(1423,311,2,'2006-02-15 05:09:17'),(1424,311,2,'2006-02-15 05:09:17'),(1425,312,2,'2006-02-15 05:09:17'),(1426,312,2,'2006-02-15 05:09:17'),(1427,312,2,'2006-02-15 05:09:17'),(1428,313,1,'2006-02-15 05:09:17'),(1429,313,1,'2006-02-15 05:09:17'),(1430,313,1,'2006-02-15 05:09:17'),(1431,313,1,'2006-02-15 05:09:17'),(1432,313,2,'2006-02-15 05:09:17'),(1433,313,2,'2006-02-15 05:09:17'),(1434,314,1,'2006-02-15 05:09:17'),(1435,314,1,'2006-02-15 05:09:17'),(1436,314,2,'2006-02-15 05:09:17'),(1437,314,2,'2006-02-15 05:09:17'),(1438,314,2,'2006-02-15 05:09:17'),(1439,314,2,'2006-02-15 05:09:17'),(1440,315,2,'2006-02-15 05:09:17'),(1441,315,2,'2006-02-15 05:09:17'),(1442,315,2,'2006-02-15 05:09:17'),(1443,316,2,'2006-02-15 05:09:17'),(1444,316,2,'2006-02-15 05:09:17'),(1445,317,1,'2006-02-15 05:09:17'),(1446,317,1,'2006-02-15 05:09:17'),(1447,317,1,'2006-02-15 05:09:17'),(1448,317,1,'2006-02-15 05:09:17'),(1449,317,2,'2006-02-15 05:09:17'),(1450,317,2,'2006-02-15 05:09:17'),(1451,317,2,'2006-02-15 05:09:17'),(1452,319,1,'2006-02-15 05:09:17'),(1453,319,1,'2006-02-15 05:09:17'),(1454,319,1,'2006-02-15 05:09:17'),(1455,319,2,'2006-02-15 05:09:17'),(1456,319,2,'2006-02-15 05:09:17'),(1457,319,2,'2006-02-15 05:09:17'),(1458,319,2,'2006-02-15 05:09:17'),(1459,320,1,'2006-02-15 05:09:17'),(1460,320,1,'2006-02-15 05:09:17'),(1461,320,1,'2006-02-15 05:09:17'),(1462,320,2,'2006-02-15 05:09:17'),(1463,320,2,'2006-02-15 05:09:17'),(1464,320,2,'2006-02-15 05:09:17'),(1465,320,2,'2006-02-15 05:09:17'),(1466,321,1,'2006-02-15 05:09:17'),(1467,321,1,'2006-02-15 05:09:17'),(1468,321,1,'2006-02-15 05:09:17'),(1469,321,1,'2006-02-15 05:09:17'),(1470,322,1,'2006-02-15 05:09:17'),(1471,322,1,'2006-02-15 05:09:17'),(1472,322,1,'2006-02-15 05:09:17'),(1473,322,1,'2006-02-15 05:09:17'),(1474,322,2,'2006-02-15 05:09:17'),(1475,322,2,'2006-02-15 05:09:17'),(1476,323,2,'2006-02-15 05:09:17'),(1477,323,2,'2006-02-15 05:09:17'),(1478,323,2,'2006-02-15 05:09:17'),(1479,323,2,'2006-02-15 05:09:17'),(1480,324,1,'2006-02-15 05:09:17'),(1481,324,1,'2006-02-15 05:09:17'),(1482,324,1,'2006-02-15 05:09:17'),(1483,324,2,'2006-02-15 05:09:17'),(1484,324,2,'2006-02-15 05:09:17'),(1485,326,1,'2006-02-15 05:09:17'),(1486,326,1,'2006-02-15 05:09:17'),(1487,326,2,'2006-02-15 05:09:17'),(1488,326,2,'2006-02-15 05:09:17'),(1489,326,2,'2006-02-15 05:09:17'),(1490,326,2,'2006-02-15 05:09:17'),(1491,327,1,'2006-02-15 05:09:17'),(1492,327,1,'2006-02-15 05:09:17'),(1493,327,1,'2006-02-15 05:09:17'),(1494,327,1,'2006-02-15 05:09:17'),(1495,327,2,'2006-02-15 05:09:17'),(1496,327,2,'2006-02-15 05:09:17'),(1497,328,2,'2006-02-15 05:09:17'),(1498,328,2,'2006-02-15 05:09:17'),(1499,328,2,'2006-02-15 05:09:17'),(1500,328,2,'2006-02-15 05:09:17'),(1501,329,1,'2006-02-15 05:09:17'),(1502,329,1,'2006-02-15 05:09:17'),(1503,329,1,'2006-02-15 05:09:17'),(1504,329,2,'2006-02-15 05:09:17'),(1505,329,2,'2006-02-15 05:09:17'),(1506,329,2,'2006-02-15 05:09:17'),(1507,330,1,'2006-02-15 05:09:17'),(1508,330,1,'2006-02-15 05:09:17'),(1509,330,1,'2006-02-15 05:09:17'),(1510,330,1,'2006-02-15 05:09:17'),(1511,330,2,'2006-02-15 05:09:17'),(1512,330,2,'2006-02-15 05:09:17'),(1513,330,2,'2006-02-15 05:09:17'),(1514,331,1,'2006-02-15 05:09:17'),(1515,331,1,'2006-02-15 05:09:17'),(1516,331,1,'2006-02-15 05:09:17'),(1517,331,1,'2006-02-15 05:09:17'),(1518,331,2,'2006-02-15 05:09:17'),(1519,331,2,'2006-02-15 05:09:17'),(1520,331,2,'2006-02-15 05:09:17'),(1521,331,2,'2006-02-15 05:09:17'),(1522,333,1,'2006-02-15 05:09:17'),(1523,333,1,'2006-02-15 05:09:17'),(1524,333,2,'2006-02-15 05:09:17'),(1525,333,2,'2006-02-15 05:09:17'),(1526,334,1,'2006-02-15 05:09:17'),(1527,334,1,'2006-02-15 05:09:17'),(1528,334,2,'2006-02-15 05:09:17'),(1529,334,2,'2006-02-15 05:09:17'),(1530,334,2,'2006-02-15 05:09:17'),(1531,334,2,'2006-02-15 05:09:17'),(1532,335,1,'2006-02-15 05:09:17'),(1533,335,1,'2006-02-15 05:09:17'),(1534,336,1,'2006-02-15 05:09:17'),(1535,336,1,'2006-02-15 05:09:17'),(1536,336,1,'2006-02-15 05:09:17'),(1537,336,2,'2006-02-15 05:09:17'),(1538,336,2,'2006-02-15 05:09:17'),(1539,337,1,'2006-02-15 05:09:17'),(1540,337,1,'2006-02-15 05:09:17'),(1541,337,2,'2006-02-15 05:09:17'),(1542,337,2,'2006-02-15 05:09:17'),(1543,338,2,'2006-02-15 05:09:17'),(1544,338,2,'2006-02-15 05:09:17'),(1545,338,2,'2006-02-15 05:09:17'),(1546,339,2,'2006-02-15 05:09:17'),(1547,339,2,'2006-02-15 05:09:17'),(1548,339,2,'2006-02-15 05:09:17'),(1549,340,1,'2006-02-15 05:09:17'),(1550,340,1,'2006-02-15 05:09:17'),(1551,341,1,'2006-02-15 05:09:17'),(1552,341,1,'2006-02-15 05:09:17'),(1553,341,1,'2006-02-15 05:09:17'),(1554,341,1,'2006-02-15 05:09:17'),(1555,341,2,'2006-02-15 05:09:17'),(1556,341,2,'2006-02-15 05:09:17'),(1557,341,2,'2006-02-15 05:09:17'),(1558,341,2,'2006-02-15 05:09:17'),(1559,342,1,'2006-02-15 05:09:17'),(1560,342,1,'2006-02-15 05:09:17'),(1561,342,1,'2006-02-15 05:09:17'),(1562,342,1,'2006-02-15 05:09:17'),(1563,343,1,'2006-02-15 05:09:17'),(1564,343,1,'2006-02-15 05:09:17'),(1565,344,1,'2006-02-15 05:09:17'),(1566,344,1,'2006-02-15 05:09:17'),(1567,344,1,'2006-02-15 05:09:17'),(1568,344,2,'2006-02-15 05:09:17'),(1569,344,2,'2006-02-15 05:09:17'),(1570,345,1,'2006-02-15 05:09:17'),(1571,345,1,'2006-02-15 05:09:17'),(1572,345,1,'2006-02-15 05:09:17'),(1573,345,2,'2006-02-15 05:09:17'),(1574,345,2,'2006-02-15 05:09:17'),(1575,346,1,'2006-02-15 05:09:17'),(1576,346,1,'2006-02-15 05:09:17'),(1577,346,2,'2006-02-15 05:09:17'),(1578,346,2,'2006-02-15 05:09:17'),(1579,346,2,'2006-02-15 05:09:17'),(1580,346,2,'2006-02-15 05:09:17'),(1581,347,1,'2006-02-15 05:09:17'),(1582,347,1,'2006-02-15 05:09:17'),(1583,347,1,'2006-02-15 05:09:17'),(1584,347,1,'2006-02-15 05:09:17'),(1585,348,2,'2006-02-15 05:09:17'),(1586,348,2,'2006-02-15 05:09:17'),(1587,348,2,'2006-02-15 05:09:17'),(1588,348,2,'2006-02-15 05:09:17'),(1589,349,1,'2006-02-15 05:09:17'),(1590,349,1,'2006-02-15 05:09:17'),(1591,349,1,'2006-02-15 05:09:17'),(1592,349,1,'2006-02-15 05:09:17'),(1593,349,2,'2006-02-15 05:09:17'),(1594,349,2,'2006-02-15 05:09:17'),(1595,349,2,'2006-02-15 05:09:17'),(1596,350,1,'2006-02-15 05:09:17'),(1597,350,1,'2006-02-15 05:09:17'),(1598,350,1,'2006-02-15 05:09:17'),(1599,350,1,'2006-02-15 05:09:17'),(1600,350,2,'2006-02-15 05:09:17'),(1601,350,2,'2006-02-15 05:09:17'),(1602,350,2,'2006-02-15 05:09:17'),(1603,350,2,'2006-02-15 05:09:17'),(1604,351,1,'2006-02-15 05:09:17'),(1605,351,1,'2006-02-15 05:09:17'),(1606,351,1,'2006-02-15 05:09:17'),(1607,351,2,'2006-02-15 05:09:17'),(1608,351,2,'2006-02-15 05:09:17'),(1609,351,2,'2006-02-15 05:09:17'),(1610,352,2,'2006-02-15 05:09:17'),(1611,352,2,'2006-02-15 05:09:17'),(1612,352,2,'2006-02-15 05:09:17'),(1613,352,2,'2006-02-15 05:09:17'),(1614,353,1,'2006-02-15 05:09:17'),(1615,353,1,'2006-02-15 05:09:17'),(1616,353,2,'2006-02-15 05:09:17'),(1617,353,2,'2006-02-15 05:09:17'),(1618,353,2,'2006-02-15 05:09:17'),(1619,353,2,'2006-02-15 05:09:17'),(1620,354,1,'2006-02-15 05:09:17'),(1621,354,1,'2006-02-15 05:09:17'),(1622,354,1,'2006-02-15 05:09:17'),(1623,354,2,'2006-02-15 05:09:17'),(1624,354,2,'2006-02-15 05:09:17'),(1625,355,2,'2006-02-15 05:09:17'),(1626,355,2,'2006-02-15 05:09:17'),(1627,356,1,'2006-02-15 05:09:17'),(1628,356,1,'2006-02-15 05:09:17'),(1629,356,1,'2006-02-15 05:09:17'),(1630,356,1,'2006-02-15 05:09:17'),(1631,356,2,'2006-02-15 05:09:17'),(1632,356,2,'2006-02-15 05:09:17'),(1633,356,2,'2006-02-15 05:09:17'),(1634,356,2,'2006-02-15 05:09:17'),(1635,357,2,'2006-02-15 05:09:17'),(1636,357,2,'2006-02-15 05:09:17'),(1637,357,2,'2006-02-15 05:09:17'),(1638,357,2,'2006-02-15 05:09:17'),(1639,358,1,'2006-02-15 05:09:17'),(1640,358,1,'2006-02-15 05:09:17'),(1641,358,1,'2006-02-15 05:09:17'),(1642,358,1,'2006-02-15 05:09:17'),(1643,358,2,'2006-02-15 05:09:17'),(1644,358,2,'2006-02-15 05:09:17'),(1645,358,2,'2006-02-15 05:09:17'),(1646,358,2,'2006-02-15 05:09:17'),(1647,360,1,'2006-02-15 05:09:17'),(1648,360,1,'2006-02-15 05:09:17'),(1649,360,1,'2006-02-15 05:09:17'),(1650,360,1,'2006-02-15 05:09:17'),(1651,361,1,'2006-02-15 05:09:17'),(1652,361,1,'2006-02-15 05:09:17'),(1653,361,1,'2006-02-15 05:09:17'),(1654,361,1,'2006-02-15 05:09:17'),(1655,361,2,'2006-02-15 05:09:17'),(1656,361,2,'2006-02-15 05:09:17'),(1657,361,2,'2006-02-15 05:09:17'),(1658,361,2,'2006-02-15 05:09:17'),(1659,362,1,'2006-02-15 05:09:17'),(1660,362,1,'2006-02-15 05:09:17'),(1661,363,1,'2006-02-15 05:09:17'),(1662,363,1,'2006-02-15 05:09:17'),(1663,363,1,'2006-02-15 05:09:17'),(1664,363,2,'2006-02-15 05:09:17'),(1665,363,2,'2006-02-15 05:09:17'),(1666,363,2,'2006-02-15 05:09:17'),(1667,364,1,'2006-02-15 05:09:17'),(1668,364,1,'2006-02-15 05:09:17'),(1669,364,1,'2006-02-15 05:09:17'),(1670,365,1,'2006-02-15 05:09:17'),(1671,365,1,'2006-02-15 05:09:17'),(1672,365,2,'2006-02-15 05:09:17'),(1673,365,2,'2006-02-15 05:09:17'),(1674,366,1,'2006-02-15 05:09:17'),(1675,366,1,'2006-02-15 05:09:17'),(1676,366,1,'2006-02-15 05:09:17'),(1677,366,1,'2006-02-15 05:09:17'),(1678,366,2,'2006-02-15 05:09:17'),(1679,366,2,'2006-02-15 05:09:17'),(1680,366,2,'2006-02-15 05:09:17'),(1681,367,1,'2006-02-15 05:09:17'),(1682,367,1,'2006-02-15 05:09:17'),(1683,367,1,'2006-02-15 05:09:17'),(1684,367,1,'2006-02-15 05:09:17'),(1685,367,2,'2006-02-15 05:09:17'),(1686,367,2,'2006-02-15 05:09:17'),(1687,367,2,'2006-02-15 05:09:17'),(1688,368,1,'2006-02-15 05:09:17'),(1689,368,1,'2006-02-15 05:09:17'),(1690,369,1,'2006-02-15 05:09:17'),(1691,369,1,'2006-02-15 05:09:17'),(1692,369,1,'2006-02-15 05:09:17'),(1693,369,1,'2006-02-15 05:09:17'),(1694,369,2,'2006-02-15 05:09:17'),(1695,369,2,'2006-02-15 05:09:17'),(1696,369,2,'2006-02-15 05:09:17'),(1697,369,2,'2006-02-15 05:09:17'),(1698,370,1,'2006-02-15 05:09:17'),(1699,370,1,'2006-02-15 05:09:17'),(1700,370,1,'2006-02-15 05:09:17'),(1701,370,2,'2006-02-15 05:09:17'),(1702,370,2,'2006-02-15 05:09:17'),(1703,371,1,'2006-02-15 05:09:17'),(1704,371,1,'2006-02-15 05:09:17'),(1705,371,1,'2006-02-15 05:09:17'),(1706,372,1,'2006-02-15 05:09:17'),(1707,372,1,'2006-02-15 05:09:17'),(1708,373,1,'2006-02-15 05:09:17'),(1709,373,1,'2006-02-15 05:09:17'),(1710,373,1,'2006-02-15 05:09:17'),(1711,373,2,'2006-02-15 05:09:17'),(1712,373,2,'2006-02-15 05:09:17'),(1713,374,1,'2006-02-15 05:09:17'),(1714,374,1,'2006-02-15 05:09:17'),(1715,374,1,'2006-02-15 05:09:17'),(1716,374,2,'2006-02-15 05:09:17'),(1717,374,2,'2006-02-15 05:09:17'),(1718,374,2,'2006-02-15 05:09:17'),(1719,374,2,'2006-02-15 05:09:17'),(1720,375,1,'2006-02-15 05:09:17'),(1721,375,1,'2006-02-15 05:09:17'),(1722,376,1,'2006-02-15 05:09:17'),(1723,376,1,'2006-02-15 05:09:17'),(1724,376,1,'2006-02-15 05:09:17'),(1725,376,1,'2006-02-15 05:09:17'),(1726,376,2,'2006-02-15 05:09:17'),(1727,376,2,'2006-02-15 05:09:17'),(1728,376,2,'2006-02-15 05:09:17'),(1729,377,1,'2006-02-15 05:09:17'),(1730,377,1,'2006-02-15 05:09:17'),(1731,377,1,'2006-02-15 05:09:17'),(1732,377,2,'2006-02-15 05:09:17'),(1733,377,2,'2006-02-15 05:09:17'),(1734,377,2,'2006-02-15 05:09:17'),(1735,378,1,'2006-02-15 05:09:17'),(1736,378,1,'2006-02-15 05:09:17'),(1737,378,1,'2006-02-15 05:09:17'),(1738,378,1,'2006-02-15 05:09:17'),(1739,378,2,'2006-02-15 05:09:17'),(1740,378,2,'2006-02-15 05:09:17'),(1741,378,2,'2006-02-15 05:09:17'),(1742,378,2,'2006-02-15 05:09:17'),(1743,379,2,'2006-02-15 05:09:17'),(1744,379,2,'2006-02-15 05:09:17'),(1745,379,2,'2006-02-15 05:09:17'),(1746,379,2,'2006-02-15 05:09:17'),(1747,380,1,'2006-02-15 05:09:17'),(1748,380,1,'2006-02-15 05:09:17'),(1749,380,2,'2006-02-15 05:09:17'),(1750,380,2,'2006-02-15 05:09:17'),(1751,380,2,'2006-02-15 05:09:17'),(1752,381,1,'2006-02-15 05:09:17'),(1753,381,1,'2006-02-15 05:09:17'),(1754,381,2,'2006-02-15 05:09:17'),(1755,381,2,'2006-02-15 05:09:17'),(1756,381,2,'2006-02-15 05:09:17'),(1757,382,1,'2006-02-15 05:09:17'),(1758,382,1,'2006-02-15 05:09:17'),(1759,382,1,'2006-02-15 05:09:17'),(1760,382,1,'2006-02-15 05:09:17'),(1761,382,2,'2006-02-15 05:09:17'),(1762,382,2,'2006-02-15 05:09:17'),(1763,382,2,'2006-02-15 05:09:17'),(1764,382,2,'2006-02-15 05:09:17'),(1765,383,1,'2006-02-15 05:09:17'),(1766,383,1,'2006-02-15 05:09:17'),(1767,383,1,'2006-02-15 05:09:17'),(1768,383,2,'2006-02-15 05:09:17'),(1769,383,2,'2006-02-15 05:09:17'),(1770,384,2,'2006-02-15 05:09:17'),(1771,384,2,'2006-02-15 05:09:17'),(1772,384,2,'2006-02-15 05:09:17'),(1773,385,1,'2006-02-15 05:09:17'),(1774,385,1,'2006-02-15 05:09:17'),(1775,385,2,'2006-02-15 05:09:17'),(1776,385,2,'2006-02-15 05:09:17'),(1777,385,2,'2006-02-15 05:09:17'),(1778,387,1,'2006-02-15 05:09:17'),(1779,387,1,'2006-02-15 05:09:17'),(1780,387,1,'2006-02-15 05:09:17'),(1781,387,2,'2006-02-15 05:09:17'),(1782,387,2,'2006-02-15 05:09:17'),(1783,387,2,'2006-02-15 05:09:17'),(1784,388,1,'2006-02-15 05:09:17'),(1785,388,1,'2006-02-15 05:09:17'),(1786,388,1,'2006-02-15 05:09:17'),(1787,388,2,'2006-02-15 05:09:17'),(1788,388,2,'2006-02-15 05:09:17'),(1789,388,2,'2006-02-15 05:09:17'),(1790,389,1,'2006-02-15 05:09:17'),(1791,389,1,'2006-02-15 05:09:17'),(1792,389,2,'2006-02-15 05:09:17'),(1793,389,2,'2006-02-15 05:09:17'),(1794,390,1,'2006-02-15 05:09:17'),(1795,390,1,'2006-02-15 05:09:17'),(1796,390,1,'2006-02-15 05:09:17'),(1797,391,1,'2006-02-15 05:09:17'),(1798,391,1,'2006-02-15 05:09:17'),(1799,391,1,'2006-02-15 05:09:17'),(1800,391,1,'2006-02-15 05:09:17'),(1801,391,2,'2006-02-15 05:09:17'),(1802,391,2,'2006-02-15 05:09:17'),(1803,391,2,'2006-02-15 05:09:17'),(1804,392,1,'2006-02-15 05:09:17'),(1805,392,1,'2006-02-15 05:09:17'),(1806,392,1,'2006-02-15 05:09:17'),(1807,392,1,'2006-02-15 05:09:17'),(1808,392,2,'2006-02-15 05:09:17'),(1809,392,2,'2006-02-15 05:09:17'),(1810,393,1,'2006-02-15 05:09:17'),(1811,393,1,'2006-02-15 05:09:17'),(1812,394,1,'2006-02-15 05:09:17'),(1813,394,1,'2006-02-15 05:09:17'),(1814,394,1,'2006-02-15 05:09:17'),(1815,394,1,'2006-02-15 05:09:17'),(1816,395,1,'2006-02-15 05:09:17'),(1817,395,1,'2006-02-15 05:09:17'),(1818,395,1,'2006-02-15 05:09:17'),(1819,395,2,'2006-02-15 05:09:17'),(1820,395,2,'2006-02-15 05:09:17'),(1821,395,2,'2006-02-15 05:09:17'),(1822,396,2,'2006-02-15 05:09:17'),(1823,396,2,'2006-02-15 05:09:17'),(1824,396,2,'2006-02-15 05:09:17'),(1825,396,2,'2006-02-15 05:09:17'),(1826,397,1,'2006-02-15 05:09:17'),(1827,397,1,'2006-02-15 05:09:17'),(1828,397,1,'2006-02-15 05:09:17'),(1829,397,2,'2006-02-15 05:09:17'),(1830,397,2,'2006-02-15 05:09:17'),(1831,397,2,'2006-02-15 05:09:17'),(1832,397,2,'2006-02-15 05:09:17'),(1833,398,2,'2006-02-15 05:09:17'),(1834,398,2,'2006-02-15 05:09:17'),(1835,398,2,'2006-02-15 05:09:17'),(1836,398,2,'2006-02-15 05:09:17'),(1837,399,2,'2006-02-15 05:09:17'),(1838,399,2,'2006-02-15 05:09:17'),(1839,400,1,'2006-02-15 05:09:17'),(1840,400,1,'2006-02-15 05:09:17'),(1841,401,1,'2006-02-15 05:09:17'),(1842,401,1,'2006-02-15 05:09:17'),(1843,402,1,'2006-02-15 05:09:17'),(1844,402,1,'2006-02-15 05:09:17'),(1845,402,1,'2006-02-15 05:09:17'),(1846,402,2,'2006-02-15 05:09:17'),(1847,402,2,'2006-02-15 05:09:17'),(1848,402,2,'2006-02-15 05:09:17'),(1849,403,1,'2006-02-15 05:09:17'),(1850,403,1,'2006-02-15 05:09:17'),(1851,403,1,'2006-02-15 05:09:17'),(1852,403,1,'2006-02-15 05:09:17'),(1853,403,2,'2006-02-15 05:09:17'),(1854,403,2,'2006-02-15 05:09:17'),(1855,403,2,'2006-02-15 05:09:17'),(1856,403,2,'2006-02-15 05:09:17'),(1857,405,2,'2006-02-15 05:09:17'),(1858,405,2,'2006-02-15 05:09:17'),(1859,406,1,'2006-02-15 05:09:17'),(1860,406,1,'2006-02-15 05:09:17'),(1861,406,2,'2006-02-15 05:09:17'),(1862,406,2,'2006-02-15 05:09:17'),(1863,406,2,'2006-02-15 05:09:17'),(1864,406,2,'2006-02-15 05:09:17'),(1865,407,1,'2006-02-15 05:09:17'),(1866,407,1,'2006-02-15 05:09:17'),(1867,408,1,'2006-02-15 05:09:17'),(1868,408,1,'2006-02-15 05:09:17'),(1869,408,1,'2006-02-15 05:09:17'),(1870,408,1,'2006-02-15 05:09:17'),(1871,408,2,'2006-02-15 05:09:17'),(1872,408,2,'2006-02-15 05:09:17'),(1873,408,2,'2006-02-15 05:09:17'),(1874,409,1,'2006-02-15 05:09:17'),(1875,409,1,'2006-02-15 05:09:17'),(1876,409,1,'2006-02-15 05:09:17'),(1877,409,1,'2006-02-15 05:09:17'),(1878,409,2,'2006-02-15 05:09:17'),(1879,409,2,'2006-02-15 05:09:17'),(1880,409,2,'2006-02-15 05:09:17'),(1881,410,1,'2006-02-15 05:09:17'),(1882,410,1,'2006-02-15 05:09:17'),(1883,410,1,'2006-02-15 05:09:17'),(1884,410,2,'2006-02-15 05:09:17'),(1885,410,2,'2006-02-15 05:09:17'),(1886,411,1,'2006-02-15 05:09:17'),(1887,411,1,'2006-02-15 05:09:17'),(1888,412,1,'2006-02-15 05:09:17'),(1889,412,1,'2006-02-15 05:09:17'),(1890,412,1,'2006-02-15 05:09:17'),(1891,412,1,'2006-02-15 05:09:17'),(1892,412,2,'2006-02-15 05:09:17'),(1893,412,2,'2006-02-15 05:09:17'),(1894,412,2,'2006-02-15 05:09:17'),(1895,412,2,'2006-02-15 05:09:17'),(1896,413,1,'2006-02-15 05:09:17'),(1897,413,1,'2006-02-15 05:09:17'),(1898,413,1,'2006-02-15 05:09:17'),(1899,414,1,'2006-02-15 05:09:17'),(1900,414,1,'2006-02-15 05:09:17'),(1901,414,1,'2006-02-15 05:09:17'),(1902,414,2,'2006-02-15 05:09:17'),(1903,414,2,'2006-02-15 05:09:17'),(1904,414,2,'2006-02-15 05:09:17'),(1905,415,1,'2006-02-15 05:09:17'),(1906,415,1,'2006-02-15 05:09:17'),(1907,415,1,'2006-02-15 05:09:17'),(1908,415,2,'2006-02-15 05:09:17'),(1909,415,2,'2006-02-15 05:09:17'),(1910,415,2,'2006-02-15 05:09:17'),(1911,416,1,'2006-02-15 05:09:17'),(1912,416,1,'2006-02-15 05:09:17'),(1913,416,2,'2006-02-15 05:09:17'),(1914,416,2,'2006-02-15 05:09:17'),(1915,416,2,'2006-02-15 05:09:17'),(1916,416,2,'2006-02-15 05:09:17'),(1917,417,1,'2006-02-15 05:09:17'),(1918,417,1,'2006-02-15 05:09:17'),(1919,417,1,'2006-02-15 05:09:17'),(1920,417,1,'2006-02-15 05:09:17'),(1921,417,2,'2006-02-15 05:09:17'),(1922,417,2,'2006-02-15 05:09:17'),(1923,418,1,'2006-02-15 05:09:17'),(1924,418,1,'2006-02-15 05:09:17'),(1925,418,1,'2006-02-15 05:09:17'),(1926,418,1,'2006-02-15 05:09:17'),(1927,418,2,'2006-02-15 05:09:17'),(1928,418,2,'2006-02-15 05:09:17'),(1929,418,2,'2006-02-15 05:09:17'),(1930,418,2,'2006-02-15 05:09:17'),(1931,420,1,'2006-02-15 05:09:17'),(1932,420,1,'2006-02-15 05:09:17'),(1933,420,2,'2006-02-15 05:09:17'),(1934,420,2,'2006-02-15 05:09:17'),(1935,420,2,'2006-02-15 05:09:17'),(1936,421,2,'2006-02-15 05:09:17'),(1937,421,2,'2006-02-15 05:09:17'),(1938,421,2,'2006-02-15 05:09:17'),(1939,421,2,'2006-02-15 05:09:17'),(1940,422,2,'2006-02-15 05:09:17'),(1941,422,2,'2006-02-15 05:09:17'),(1942,423,1,'2006-02-15 05:09:17'),(1943,423,1,'2006-02-15 05:09:17'),(1944,423,2,'2006-02-15 05:09:17'),(1945,423,2,'2006-02-15 05:09:17'),(1946,424,1,'2006-02-15 05:09:17'),(1947,424,1,'2006-02-15 05:09:17'),(1948,424,1,'2006-02-15 05:09:17'),(1949,424,2,'2006-02-15 05:09:17'),(1950,424,2,'2006-02-15 05:09:17'),(1951,425,2,'2006-02-15 05:09:17'),(1952,425,2,'2006-02-15 05:09:17'),(1953,426,2,'2006-02-15 05:09:17'),(1954,426,2,'2006-02-15 05:09:17'),(1955,426,2,'2006-02-15 05:09:17'),(1956,427,1,'2006-02-15 05:09:17'),(1957,427,1,'2006-02-15 05:09:17'),(1958,427,1,'2006-02-15 05:09:17'),(1959,427,1,'2006-02-15 05:09:17'),(1960,428,1,'2006-02-15 05:09:17'),(1961,428,1,'2006-02-15 05:09:17'),(1962,428,1,'2006-02-15 05:09:17'),(1963,428,1,'2006-02-15 05:09:17'),(1964,428,2,'2006-02-15 05:09:17'),(1965,428,2,'2006-02-15 05:09:17'),(1966,429,1,'2006-02-15 05:09:17'),(1967,429,1,'2006-02-15 05:09:17'),(1968,429,2,'2006-02-15 05:09:17'),(1969,429,2,'2006-02-15 05:09:17'),(1970,429,2,'2006-02-15 05:09:17'),(1971,429,2,'2006-02-15 05:09:17'),(1972,430,2,'2006-02-15 05:09:17'),(1973,430,2,'2006-02-15 05:09:17'),(1974,430,2,'2006-02-15 05:09:17'),(1975,430,2,'2006-02-15 05:09:17'),(1976,431,2,'2006-02-15 05:09:17'),(1977,431,2,'2006-02-15 05:09:17'),(1978,431,2,'2006-02-15 05:09:17'),(1979,432,1,'2006-02-15 05:09:17'),(1980,432,1,'2006-02-15 05:09:17'),(1981,432,1,'2006-02-15 05:09:17'),(1982,432,2,'2006-02-15 05:09:17'),(1983,432,2,'2006-02-15 05:09:17'),(1984,433,1,'2006-02-15 05:09:17'),(1985,433,1,'2006-02-15 05:09:17'),(1986,433,1,'2006-02-15 05:09:17'),(1987,433,1,'2006-02-15 05:09:17'),(1988,433,2,'2006-02-15 05:09:17'),(1989,433,2,'2006-02-15 05:09:17'),(1990,434,1,'2006-02-15 05:09:17'),(1991,434,1,'2006-02-15 05:09:17'),(1992,434,1,'2006-02-15 05:09:17'),(1993,434,1,'2006-02-15 05:09:17'),(1994,434,2,'2006-02-15 05:09:17'),(1995,434,2,'2006-02-15 05:09:17'),(1996,434,2,'2006-02-15 05:09:17'),(1997,434,2,'2006-02-15 05:09:17'),(1998,435,1,'2006-02-15 05:09:17'),(1999,435,1,'2006-02-15 05:09:17'),(2000,436,1,'2006-02-15 05:09:17'),(2001,436,1,'2006-02-15 05:09:17'),(2002,436,1,'2006-02-15 05:09:17'),(2003,436,2,'2006-02-15 05:09:17'),(2004,436,2,'2006-02-15 05:09:17'),(2005,436,2,'2006-02-15 05:09:17'),(2006,437,1,'2006-02-15 05:09:17'),(2007,437,1,'2006-02-15 05:09:17'),(2008,437,2,'2006-02-15 05:09:17'),(2009,437,2,'2006-02-15 05:09:17'),(2010,437,2,'2006-02-15 05:09:17'),(2011,437,2,'2006-02-15 05:09:17'),(2012,438,1,'2006-02-15 05:09:17'),(2013,438,1,'2006-02-15 05:09:17'),(2014,438,2,'2006-02-15 05:09:17'),(2015,438,2,'2006-02-15 05:09:17'),(2016,438,2,'2006-02-15 05:09:17'),(2017,439,1,'2006-02-15 05:09:17'),(2018,439,1,'2006-02-15 05:09:17'),(2019,439,1,'2006-02-15 05:09:17'),(2020,439,1,'2006-02-15 05:09:17'),(2021,439,2,'2006-02-15 05:09:17'),(2022,439,2,'2006-02-15 05:09:17'),(2023,440,1,'2006-02-15 05:09:17'),(2024,440,1,'2006-02-15 05:09:17'),(2025,440,2,'2006-02-15 05:09:17'),(2026,440,2,'2006-02-15 05:09:17'),(2027,441,1,'2006-02-15 05:09:17'),(2028,441,1,'2006-02-15 05:09:17'),(2029,442,1,'2006-02-15 05:09:17'),(2030,442,1,'2006-02-15 05:09:17'),(2031,442,1,'2006-02-15 05:09:17'),(2032,443,1,'2006-02-15 05:09:17'),(2033,443,1,'2006-02-15 05:09:17'),(2034,443,1,'2006-02-15 05:09:17'),(2035,443,2,'2006-02-15 05:09:17'),(2036,443,2,'2006-02-15 05:09:17'),(2037,443,2,'2006-02-15 05:09:17'),(2038,443,2,'2006-02-15 05:09:17'),(2039,444,1,'2006-02-15 05:09:17'),(2040,444,1,'2006-02-15 05:09:17'),(2041,444,1,'2006-02-15 05:09:17'),(2042,444,1,'2006-02-15 05:09:17'),(2043,444,2,'2006-02-15 05:09:17'),(2044,444,2,'2006-02-15 05:09:17'),(2045,444,2,'2006-02-15 05:09:17'),(2046,444,2,'2006-02-15 05:09:17'),(2047,445,1,'2006-02-15 05:09:17'),(2048,445,1,'2006-02-15 05:09:17'),(2049,445,1,'2006-02-15 05:09:17'),(2050,445,2,'2006-02-15 05:09:17'),(2051,445,2,'2006-02-15 05:09:17'),(2052,445,2,'2006-02-15 05:09:17'),(2053,446,1,'2006-02-15 05:09:17'),(2054,446,1,'2006-02-15 05:09:17'),(2055,446,2,'2006-02-15 05:09:17'),(2056,446,2,'2006-02-15 05:09:17'),(2057,447,1,'2006-02-15 05:09:17'),(2058,447,1,'2006-02-15 05:09:17'),(2059,447,1,'2006-02-15 05:09:17'),(2060,447,1,'2006-02-15 05:09:17'),(2061,447,2,'2006-02-15 05:09:17'),(2062,447,2,'2006-02-15 05:09:17'),(2063,447,2,'2006-02-15 05:09:17'),(2064,448,1,'2006-02-15 05:09:17'),(2065,448,1,'2006-02-15 05:09:17'),(2066,448,2,'2006-02-15 05:09:17'),(2067,448,2,'2006-02-15 05:09:17'),(2068,448,2,'2006-02-15 05:09:17'),(2069,449,2,'2006-02-15 05:09:17'),(2070,449,2,'2006-02-15 05:09:17'),(2071,449,2,'2006-02-15 05:09:17'),(2072,449,2,'2006-02-15 05:09:17'),(2073,450,1,'2006-02-15 05:09:17'),(2074,450,1,'2006-02-15 05:09:17'),(2075,450,1,'2006-02-15 05:09:17'),(2076,450,2,'2006-02-15 05:09:17'),(2077,450,2,'2006-02-15 05:09:17'),(2078,450,2,'2006-02-15 05:09:17'),(2079,450,2,'2006-02-15 05:09:17'),(2080,451,1,'2006-02-15 05:09:17'),(2081,451,1,'2006-02-15 05:09:17'),(2082,451,2,'2006-02-15 05:09:17'),(2083,451,2,'2006-02-15 05:09:17'),(2084,451,2,'2006-02-15 05:09:17'),(2085,452,2,'2006-02-15 05:09:17'),(2086,452,2,'2006-02-15 05:09:17'),(2087,452,2,'2006-02-15 05:09:17'),(2088,452,2,'2006-02-15 05:09:17'),(2089,453,1,'2006-02-15 05:09:17'),(2090,453,1,'2006-02-15 05:09:17'),(2091,453,1,'2006-02-15 05:09:17'),(2092,453,2,'2006-02-15 05:09:17'),(2093,453,2,'2006-02-15 05:09:17'),(2094,454,1,'2006-02-15 05:09:17'),(2095,454,1,'2006-02-15 05:09:17'),(2096,455,1,'2006-02-15 05:09:17'),(2097,455,1,'2006-02-15 05:09:17'),(2098,455,1,'2006-02-15 05:09:17'),(2099,455,1,'2006-02-15 05:09:17'),(2100,456,1,'2006-02-15 05:09:17'),(2101,456,1,'2006-02-15 05:09:17'),(2102,456,2,'2006-02-15 05:09:17'),(2103,456,2,'2006-02-15 05:09:17'),(2104,456,2,'2006-02-15 05:09:17'),(2105,456,2,'2006-02-15 05:09:17'),(2106,457,1,'2006-02-15 05:09:17'),(2107,457,1,'2006-02-15 05:09:17'),(2108,457,2,'2006-02-15 05:09:17'),(2109,457,2,'2006-02-15 05:09:17'),(2110,457,2,'2006-02-15 05:09:17'),(2111,457,2,'2006-02-15 05:09:17'),(2112,458,1,'2006-02-15 05:09:17'),(2113,458,1,'2006-02-15 05:09:17'),(2114,458,2,'2006-02-15 05:09:17'),(2115,458,2,'2006-02-15 05:09:17'),(2116,458,2,'2006-02-15 05:09:17'),(2117,458,2,'2006-02-15 05:09:17'),(2118,459,2,'2006-02-15 05:09:17'),(2119,459,2,'2006-02-15 05:09:17'),(2120,460,1,'2006-02-15 05:09:17'),(2121,460,1,'2006-02-15 05:09:17'),(2122,460,1,'2006-02-15 05:09:17'),(2123,460,1,'2006-02-15 05:09:17'),(2124,460,2,'2006-02-15 05:09:17'),(2125,460,2,'2006-02-15 05:09:17'),(2126,460,2,'2006-02-15 05:09:17'),(2127,460,2,'2006-02-15 05:09:17'),(2128,461,1,'2006-02-15 05:09:17'),(2129,461,1,'2006-02-15 05:09:17'),(2130,461,2,'2006-02-15 05:09:17'),(2131,461,2,'2006-02-15 05:09:17'),(2132,461,2,'2006-02-15 05:09:17'),(2133,461,2,'2006-02-15 05:09:17'),(2134,462,1,'2006-02-15 05:09:17'),(2135,462,1,'2006-02-15 05:09:17'),(2136,462,2,'2006-02-15 05:09:17'),(2137,462,2,'2006-02-15 05:09:17'),(2138,462,2,'2006-02-15 05:09:17'),(2139,463,1,'2006-02-15 05:09:17'),(2140,463,1,'2006-02-15 05:09:17'),(2141,463,1,'2006-02-15 05:09:17'),(2142,463,2,'2006-02-15 05:09:17'),(2143,463,2,'2006-02-15 05:09:17'),(2144,464,1,'2006-02-15 05:09:17'),(2145,464,1,'2006-02-15 05:09:17'),(2146,464,1,'2006-02-15 05:09:17'),(2147,464,1,'2006-02-15 05:09:17'),(2148,464,2,'2006-02-15 05:09:17'),(2149,464,2,'2006-02-15 05:09:17'),(2150,464,2,'2006-02-15 05:09:17'),(2151,465,1,'2006-02-15 05:09:17'),(2152,465,1,'2006-02-15 05:09:17'),(2153,465,2,'2006-02-15 05:09:17'),(2154,465,2,'2006-02-15 05:09:17'),(2155,465,2,'2006-02-15 05:09:17'),(2156,466,1,'2006-02-15 05:09:17'),(2157,466,1,'2006-02-15 05:09:17'),(2158,467,1,'2006-02-15 05:09:17'),(2159,467,1,'2006-02-15 05:09:17'),(2160,467,1,'2006-02-15 05:09:17'),(2161,467,1,'2006-02-15 05:09:17'),(2162,467,2,'2006-02-15 05:09:17'),(2163,467,2,'2006-02-15 05:09:17'),(2164,467,2,'2006-02-15 05:09:17'),(2165,468,1,'2006-02-15 05:09:17'),(2166,468,1,'2006-02-15 05:09:17'),(2167,468,1,'2006-02-15 05:09:17'),(2168,468,1,'2006-02-15 05:09:17'),(2169,468,2,'2006-02-15 05:09:17'),(2170,468,2,'2006-02-15 05:09:17'),(2171,468,2,'2006-02-15 05:09:17'),(2172,468,2,'2006-02-15 05:09:17'),(2173,469,2,'2006-02-15 05:09:17'),(2174,469,2,'2006-02-15 05:09:17'),(2175,469,2,'2006-02-15 05:09:17'),(2176,470,1,'2006-02-15 05:09:17'),(2177,470,1,'2006-02-15 05:09:17'),(2178,471,1,'2006-02-15 05:09:17'),(2179,471,1,'2006-02-15 05:09:17'),(2180,471,1,'2006-02-15 05:09:17'),(2181,471,2,'2006-02-15 05:09:17'),(2182,471,2,'2006-02-15 05:09:17'),(2183,471,2,'2006-02-15 05:09:17'),(2184,471,2,'2006-02-15 05:09:17'),(2185,472,2,'2006-02-15 05:09:17'),(2186,472,2,'2006-02-15 05:09:17'),(2187,473,1,'2006-02-15 05:09:17'),(2188,473,1,'2006-02-15 05:09:17'),(2189,473,2,'2006-02-15 05:09:17'),(2190,473,2,'2006-02-15 05:09:17'),(2191,473,2,'2006-02-15 05:09:17'),(2192,474,2,'2006-02-15 05:09:17'),(2193,474,2,'2006-02-15 05:09:17'),(2194,474,2,'2006-02-15 05:09:17'),(2195,474,2,'2006-02-15 05:09:17'),(2196,475,2,'2006-02-15 05:09:17'),(2197,475,2,'2006-02-15 05:09:17'),(2198,476,1,'2006-02-15 05:09:17'),(2199,476,1,'2006-02-15 05:09:17'),(2200,476,1,'2006-02-15 05:09:17'),(2201,476,2,'2006-02-15 05:09:17'),(2202,476,2,'2006-02-15 05:09:17'),(2203,476,2,'2006-02-15 05:09:17'),(2204,476,2,'2006-02-15 05:09:17'),(2205,477,2,'2006-02-15 05:09:17'),(2206,477,2,'2006-02-15 05:09:17'),(2207,477,2,'2006-02-15 05:09:17'),(2208,478,1,'2006-02-15 05:09:17'),(2209,478,1,'2006-02-15 05:09:17'),(2210,478,2,'2006-02-15 05:09:17'),(2211,478,2,'2006-02-15 05:09:17'),(2212,478,2,'2006-02-15 05:09:17'),(2213,479,1,'2006-02-15 05:09:17'),(2214,479,1,'2006-02-15 05:09:17'),(2215,479,2,'2006-02-15 05:09:17'),(2216,479,2,'2006-02-15 05:09:17'),(2217,479,2,'2006-02-15 05:09:17'),(2218,480,1,'2006-02-15 05:09:17'),(2219,480,1,'2006-02-15 05:09:17'),(2220,480,2,'2006-02-15 05:09:17'),(2221,480,2,'2006-02-15 05:09:17'),(2222,481,1,'2006-02-15 05:09:17'),(2223,481,1,'2006-02-15 05:09:17'),(2224,481,1,'2006-02-15 05:09:17'),(2225,481,2,'2006-02-15 05:09:17'),(2226,481,2,'2006-02-15 05:09:17'),(2227,481,2,'2006-02-15 05:09:17'),(2228,482,1,'2006-02-15 05:09:17'),(2229,482,1,'2006-02-15 05:09:17'),(2230,482,1,'2006-02-15 05:09:17'),(2231,483,1,'2006-02-15 05:09:17'),(2232,483,1,'2006-02-15 05:09:17'),(2233,483,1,'2006-02-15 05:09:17'),(2234,483,2,'2006-02-15 05:09:17'),(2235,483,2,'2006-02-15 05:09:17'),(2236,484,1,'2006-02-15 05:09:17'),(2237,484,1,'2006-02-15 05:09:17'),(2238,484,1,'2006-02-15 05:09:17'),(2239,484,1,'2006-02-15 05:09:17'),(2240,484,2,'2006-02-15 05:09:17'),(2241,484,2,'2006-02-15 05:09:17'),(2242,484,2,'2006-02-15 05:09:17'),(2243,485,2,'2006-02-15 05:09:17'),(2244,485,2,'2006-02-15 05:09:17'),(2245,485,2,'2006-02-15 05:09:17'),(2246,486,1,'2006-02-15 05:09:17'),(2247,486,1,'2006-02-15 05:09:17'),(2248,486,1,'2006-02-15 05:09:17'),(2249,486,1,'2006-02-15 05:09:17'),(2250,486,2,'2006-02-15 05:09:17'),(2251,486,2,'2006-02-15 05:09:17'),(2252,487,2,'2006-02-15 05:09:17'),(2253,487,2,'2006-02-15 05:09:17'),(2254,487,2,'2006-02-15 05:09:17'),(2255,488,1,'2006-02-15 05:09:17'),(2256,488,1,'2006-02-15 05:09:17'),(2257,488,2,'2006-02-15 05:09:17'),(2258,488,2,'2006-02-15 05:09:17'),(2259,488,2,'2006-02-15 05:09:17'),(2260,489,1,'2006-02-15 05:09:17'),(2261,489,1,'2006-02-15 05:09:17'),(2262,489,1,'2006-02-15 05:09:17'),(2263,489,1,'2006-02-15 05:09:17'),(2264,489,2,'2006-02-15 05:09:17'),(2265,489,2,'2006-02-15 05:09:17'),(2266,489,2,'2006-02-15 05:09:17'),(2267,489,2,'2006-02-15 05:09:17'),(2268,490,1,'2006-02-15 05:09:17'),(2269,490,1,'2006-02-15 05:09:17'),(2270,491,1,'2006-02-15 05:09:17'),(2271,491,1,'2006-02-15 05:09:17'),(2272,491,2,'2006-02-15 05:09:17'),(2273,491,2,'2006-02-15 05:09:17'),(2274,491,2,'2006-02-15 05:09:17'),(2275,491,2,'2006-02-15 05:09:17'),(2276,492,1,'2006-02-15 05:09:17'),(2277,492,1,'2006-02-15 05:09:17'),(2278,493,2,'2006-02-15 05:09:17'),(2279,493,2,'2006-02-15 05:09:17'),(2280,493,2,'2006-02-15 05:09:17'),(2281,494,1,'2006-02-15 05:09:17'),(2282,494,1,'2006-02-15 05:09:17'),(2283,494,1,'2006-02-15 05:09:17'),(2284,494,1,'2006-02-15 05:09:17'),(2285,494,2,'2006-02-15 05:09:17'),(2286,494,2,'2006-02-15 05:09:17'),(2287,496,1,'2006-02-15 05:09:17'),(2288,496,1,'2006-02-15 05:09:17'),(2289,496,2,'2006-02-15 05:09:17'),(2290,496,2,'2006-02-15 05:09:17'),(2291,496,2,'2006-02-15 05:09:17'),(2292,498,1,'2006-02-15 05:09:17'),(2293,498,1,'2006-02-15 05:09:17'),(2294,499,1,'2006-02-15 05:09:17'),(2295,499,1,'2006-02-15 05:09:17'),(2296,500,1,'2006-02-15 05:09:17'),(2297,500,1,'2006-02-15 05:09:17'),(2298,500,1,'2006-02-15 05:09:17'),(2299,500,1,'2006-02-15 05:09:17'),(2300,500,2,'2006-02-15 05:09:17'),(2301,500,2,'2006-02-15 05:09:17'),(2302,500,2,'2006-02-15 05:09:17'),(2303,500,2,'2006-02-15 05:09:17'),(2304,501,1,'2006-02-15 05:09:17'),(2305,501,1,'2006-02-15 05:09:17'),(2306,501,1,'2006-02-15 05:09:17'),(2307,501,2,'2006-02-15 05:09:17'),(2308,501,2,'2006-02-15 05:09:17'),(2309,502,1,'2006-02-15 05:09:17'),(2310,502,1,'2006-02-15 05:09:17'),(2311,502,1,'2006-02-15 05:09:17'),(2312,502,1,'2006-02-15 05:09:17'),(2313,502,2,'2006-02-15 05:09:17'),(2314,502,2,'2006-02-15 05:09:17'),(2315,502,2,'2006-02-15 05:09:17'),(2316,503,1,'2006-02-15 05:09:17'),(2317,503,1,'2006-02-15 05:09:17'),(2318,503,1,'2006-02-15 05:09:17'),(2319,504,1,'2006-02-15 05:09:17'),(2320,504,1,'2006-02-15 05:09:17'),(2321,504,1,'2006-02-15 05:09:17'),(2322,504,1,'2006-02-15 05:09:17'),(2323,504,2,'2006-02-15 05:09:17'),(2324,504,2,'2006-02-15 05:09:17'),(2325,505,2,'2006-02-15 05:09:17'),(2326,505,2,'2006-02-15 05:09:17'),(2327,505,2,'2006-02-15 05:09:17'),(2328,505,2,'2006-02-15 05:09:17'),(2329,506,1,'2006-02-15 05:09:17'),(2330,506,1,'2006-02-15 05:09:17'),(2331,506,1,'2006-02-15 05:09:17'),(2332,506,1,'2006-02-15 05:09:17'),(2333,506,2,'2006-02-15 05:09:17'),(2334,506,2,'2006-02-15 05:09:17'),(2335,507,2,'2006-02-15 05:09:17'),(2336,507,2,'2006-02-15 05:09:17'),(2337,508,2,'2006-02-15 05:09:17'),(2338,508,2,'2006-02-15 05:09:17'),(2339,508,2,'2006-02-15 05:09:17'),(2340,509,2,'2006-02-15 05:09:17'),(2341,509,2,'2006-02-15 05:09:17'),(2342,509,2,'2006-02-15 05:09:17'),(2343,510,1,'2006-02-15 05:09:17'),(2344,510,1,'2006-02-15 05:09:17'),(2345,510,1,'2006-02-15 05:09:17'),(2346,510,1,'2006-02-15 05:09:17'),(2347,511,1,'2006-02-15 05:09:17'),(2348,511,1,'2006-02-15 05:09:17'),(2349,511,2,'2006-02-15 05:09:17'),(2350,511,2,'2006-02-15 05:09:17'),(2351,511,2,'2006-02-15 05:09:17'),(2352,512,1,'2006-02-15 05:09:17'),(2353,512,1,'2006-02-15 05:09:17'),(2354,512,2,'2006-02-15 05:09:17'),(2355,512,2,'2006-02-15 05:09:17'),(2356,512,2,'2006-02-15 05:09:17'),(2357,512,2,'2006-02-15 05:09:17'),(2358,513,2,'2006-02-15 05:09:17'),(2359,513,2,'2006-02-15 05:09:17'),(2360,514,1,'2006-02-15 05:09:17'),(2361,514,1,'2006-02-15 05:09:17'),(2362,514,2,'2006-02-15 05:09:17'),(2363,514,2,'2006-02-15 05:09:17'),(2364,514,2,'2006-02-15 05:09:17'),(2365,514,2,'2006-02-15 05:09:17'),(2366,515,2,'2006-02-15 05:09:17'),(2367,515,2,'2006-02-15 05:09:17'),(2368,516,2,'2006-02-15 05:09:17'),(2369,516,2,'2006-02-15 05:09:17'),(2370,516,2,'2006-02-15 05:09:17'),(2371,517,2,'2006-02-15 05:09:17'),(2372,517,2,'2006-02-15 05:09:17'),(2373,518,1,'2006-02-15 05:09:17'),(2374,518,1,'2006-02-15 05:09:17'),(2375,518,2,'2006-02-15 05:09:17'),(2376,518,2,'2006-02-15 05:09:17'),(2377,518,2,'2006-02-15 05:09:17'),(2378,518,2,'2006-02-15 05:09:17'),(2379,519,2,'2006-02-15 05:09:17'),(2380,519,2,'2006-02-15 05:09:17'),(2381,519,2,'2006-02-15 05:09:17'),(2382,519,2,'2006-02-15 05:09:17'),(2383,520,1,'2006-02-15 05:09:17'),(2384,520,1,'2006-02-15 05:09:17'),(2385,521,1,'2006-02-15 05:09:17'),(2386,521,1,'2006-02-15 05:09:17'),(2387,521,1,'2006-02-15 05:09:17'),(2388,521,1,'2006-02-15 05:09:17'),(2389,521,2,'2006-02-15 05:09:17'),(2390,521,2,'2006-02-15 05:09:17'),(2391,521,2,'2006-02-15 05:09:17'),(2392,522,2,'2006-02-15 05:09:17'),(2393,522,2,'2006-02-15 05:09:17'),(2394,523,1,'2006-02-15 05:09:17'),(2395,523,1,'2006-02-15 05:09:17'),(2396,524,1,'2006-02-15 05:09:17'),(2397,524,1,'2006-02-15 05:09:17'),(2398,524,2,'2006-02-15 05:09:17'),(2399,524,2,'2006-02-15 05:09:17'),(2400,524,2,'2006-02-15 05:09:17'),(2401,524,2,'2006-02-15 05:09:17'),(2402,525,1,'2006-02-15 05:09:17'),(2403,525,1,'2006-02-15 05:09:17'),(2404,525,1,'2006-02-15 05:09:17'),(2405,525,1,'2006-02-15 05:09:17'),(2406,525,2,'2006-02-15 05:09:17'),(2407,525,2,'2006-02-15 05:09:17'),(2408,525,2,'2006-02-15 05:09:17'),(2409,525,2,'2006-02-15 05:09:17'),(2410,526,2,'2006-02-15 05:09:17'),(2411,526,2,'2006-02-15 05:09:17'),(2412,526,2,'2006-02-15 05:09:17'),(2413,526,2,'2006-02-15 05:09:17'),(2414,527,1,'2006-02-15 05:09:17'),(2415,527,1,'2006-02-15 05:09:17'),(2416,527,2,'2006-02-15 05:09:17'),(2417,527,2,'2006-02-15 05:09:17'),(2418,527,2,'2006-02-15 05:09:17'),(2419,527,2,'2006-02-15 05:09:17'),(2420,528,1,'2006-02-15 05:09:17'),(2421,528,1,'2006-02-15 05:09:17'),(2422,528,1,'2006-02-15 05:09:17'),(2423,529,1,'2006-02-15 05:09:17'),(2424,529,1,'2006-02-15 05:09:17'),(2425,529,1,'2006-02-15 05:09:17'),(2426,529,1,'2006-02-15 05:09:17'),(2427,530,1,'2006-02-15 05:09:17'),(2428,530,1,'2006-02-15 05:09:17'),(2429,530,1,'2006-02-15 05:09:17'),(2430,531,1,'2006-02-15 05:09:17'),(2431,531,1,'2006-02-15 05:09:17'),(2432,531,1,'2006-02-15 05:09:17'),(2433,531,1,'2006-02-15 05:09:17'),(2434,531,2,'2006-02-15 05:09:17'),(2435,531,2,'2006-02-15 05:09:17'),(2436,531,2,'2006-02-15 05:09:17'),(2437,531,2,'2006-02-15 05:09:17'),(2438,532,2,'2006-02-15 05:09:17'),(2439,532,2,'2006-02-15 05:09:17'),(2440,532,2,'2006-02-15 05:09:17'),(2441,532,2,'2006-02-15 05:09:17'),(2442,533,1,'2006-02-15 05:09:17'),(2443,533,1,'2006-02-15 05:09:17'),(2444,533,1,'2006-02-15 05:09:17'),(2445,534,1,'2006-02-15 05:09:17'),(2446,534,1,'2006-02-15 05:09:17'),(2447,534,2,'2006-02-15 05:09:17'),(2448,534,2,'2006-02-15 05:09:17'),(2449,534,2,'2006-02-15 05:09:17'),(2450,535,1,'2006-02-15 05:09:17'),(2451,535,1,'2006-02-15 05:09:17'),(2452,535,1,'2006-02-15 05:09:17'),(2453,535,1,'2006-02-15 05:09:17'),(2454,536,1,'2006-02-15 05:09:17'),(2455,536,1,'2006-02-15 05:09:17'),(2456,536,1,'2006-02-15 05:09:17'),(2457,536,2,'2006-02-15 05:09:17'),(2458,536,2,'2006-02-15 05:09:17'),(2459,537,2,'2006-02-15 05:09:17'),(2460,537,2,'2006-02-15 05:09:17'),(2461,537,2,'2006-02-15 05:09:17'),(2462,538,2,'2006-02-15 05:09:17'),(2463,538,2,'2006-02-15 05:09:17'),(2464,538,2,'2006-02-15 05:09:17'),(2465,539,1,'2006-02-15 05:09:17'),(2466,539,1,'2006-02-15 05:09:17'),(2467,540,1,'2006-02-15 05:09:17'),(2468,540,1,'2006-02-15 05:09:17'),(2469,540,1,'2006-02-15 05:09:17'),(2470,541,2,'2006-02-15 05:09:17'),(2471,541,2,'2006-02-15 05:09:17'),(2472,542,1,'2006-02-15 05:09:17'),(2473,542,1,'2006-02-15 05:09:17'),(2474,542,1,'2006-02-15 05:09:17'),(2475,542,1,'2006-02-15 05:09:17'),(2476,542,2,'2006-02-15 05:09:17'),(2477,542,2,'2006-02-15 05:09:17'),(2478,543,1,'2006-02-15 05:09:17'),(2479,543,1,'2006-02-15 05:09:17'),(2480,544,1,'2006-02-15 05:09:17'),(2481,544,1,'2006-02-15 05:09:17'),(2482,544,2,'2006-02-15 05:09:17'),(2483,544,2,'2006-02-15 05:09:17'),(2484,545,1,'2006-02-15 05:09:17'),(2485,545,1,'2006-02-15 05:09:17'),(2486,545,1,'2006-02-15 05:09:17'),(2487,545,1,'2006-02-15 05:09:17'),(2488,545,2,'2006-02-15 05:09:17'),(2489,545,2,'2006-02-15 05:09:17'),(2490,546,2,'2006-02-15 05:09:17'),(2491,546,2,'2006-02-15 05:09:17'),(2492,546,2,'2006-02-15 05:09:17'),(2493,546,2,'2006-02-15 05:09:17'),(2494,547,2,'2006-02-15 05:09:17'),(2495,547,2,'2006-02-15 05:09:17'),(2496,548,1,'2006-02-15 05:09:17'),(2497,548,1,'2006-02-15 05:09:17'),(2498,549,1,'2006-02-15 05:09:17'),(2499,549,1,'2006-02-15 05:09:17'),(2500,549,2,'2006-02-15 05:09:17'),(2501,549,2,'2006-02-15 05:09:17'),(2502,550,1,'2006-02-15 05:09:17'),(2503,550,1,'2006-02-15 05:09:17'),(2504,550,1,'2006-02-15 05:09:17'),(2505,551,1,'2006-02-15 05:09:17'),(2506,551,1,'2006-02-15 05:09:17'),(2507,551,1,'2006-02-15 05:09:17'),(2508,551,2,'2006-02-15 05:09:17'),(2509,551,2,'2006-02-15 05:09:17'),(2510,551,2,'2006-02-15 05:09:17'),(2511,552,2,'2006-02-15 05:09:17'),(2512,552,2,'2006-02-15 05:09:17'),(2513,552,2,'2006-02-15 05:09:17'),(2514,552,2,'2006-02-15 05:09:17'),(2515,553,2,'2006-02-15 05:09:17'),(2516,553,2,'2006-02-15 05:09:17'),(2517,553,2,'2006-02-15 05:09:17'),(2518,554,1,'2006-02-15 05:09:17'),(2519,554,1,'2006-02-15 05:09:17'),(2520,554,1,'2006-02-15 05:09:17'),(2521,554,1,'2006-02-15 05:09:17'),(2522,554,2,'2006-02-15 05:09:17'),(2523,554,2,'2006-02-15 05:09:17'),(2524,554,2,'2006-02-15 05:09:17'),(2525,555,1,'2006-02-15 05:09:17'),(2526,555,1,'2006-02-15 05:09:17'),(2527,555,1,'2006-02-15 05:09:17'),(2528,555,2,'2006-02-15 05:09:17'),(2529,555,2,'2006-02-15 05:09:17'),(2530,555,2,'2006-02-15 05:09:17'),(2531,555,2,'2006-02-15 05:09:17'),(2532,556,1,'2006-02-15 05:09:17'),(2533,556,1,'2006-02-15 05:09:17'),(2534,556,1,'2006-02-15 05:09:17'),(2535,556,2,'2006-02-15 05:09:17'),(2536,556,2,'2006-02-15 05:09:17'),(2537,556,2,'2006-02-15 05:09:17'),(2538,556,2,'2006-02-15 05:09:17'),(2539,557,1,'2006-02-15 05:09:17'),(2540,557,1,'2006-02-15 05:09:17'),(2541,557,2,'2006-02-15 05:09:17'),(2542,557,2,'2006-02-15 05:09:17'),(2543,557,2,'2006-02-15 05:09:17'),(2544,558,2,'2006-02-15 05:09:17'),(2545,558,2,'2006-02-15 05:09:17'),(2546,559,1,'2006-02-15 05:09:17'),(2547,559,1,'2006-02-15 05:09:17'),(2548,559,1,'2006-02-15 05:09:17'),(2549,559,1,'2006-02-15 05:09:17'),(2550,559,2,'2006-02-15 05:09:17'),(2551,559,2,'2006-02-15 05:09:17'),(2552,559,2,'2006-02-15 05:09:17'),(2553,559,2,'2006-02-15 05:09:17'),(2554,560,1,'2006-02-15 05:09:17'),(2555,560,1,'2006-02-15 05:09:17'),(2556,560,1,'2006-02-15 05:09:17'),(2557,560,2,'2006-02-15 05:09:17'),(2558,560,2,'2006-02-15 05:09:17'),(2559,561,1,'2006-02-15 05:09:17'),(2560,561,1,'2006-02-15 05:09:17'),(2561,561,1,'2006-02-15 05:09:17'),(2562,561,1,'2006-02-15 05:09:17'),(2563,562,1,'2006-02-15 05:09:17'),(2564,562,1,'2006-02-15 05:09:17'),(2565,562,1,'2006-02-15 05:09:17'),(2566,562,1,'2006-02-15 05:09:17'),(2567,562,2,'2006-02-15 05:09:17'),(2568,562,2,'2006-02-15 05:09:17'),(2569,563,1,'2006-02-15 05:09:17'),(2570,563,1,'2006-02-15 05:09:17'),(2571,563,1,'2006-02-15 05:09:17'),(2572,563,1,'2006-02-15 05:09:17'),(2573,563,2,'2006-02-15 05:09:17'),(2574,563,2,'2006-02-15 05:09:17'),(2575,563,2,'2006-02-15 05:09:17'),(2576,564,2,'2006-02-15 05:09:17'),(2577,564,2,'2006-02-15 05:09:17'),(2578,564,2,'2006-02-15 05:09:17'),(2579,565,1,'2006-02-15 05:09:17'),(2580,565,1,'2006-02-15 05:09:17'),(2581,566,1,'2006-02-15 05:09:17'),(2582,566,1,'2006-02-15 05:09:17'),(2583,567,1,'2006-02-15 05:09:17'),(2584,567,1,'2006-02-15 05:09:17'),(2585,567,2,'2006-02-15 05:09:17'),(2586,567,2,'2006-02-15 05:09:17'),(2587,568,1,'2006-02-15 05:09:17'),(2588,568,1,'2006-02-15 05:09:17'),(2589,568,2,'2006-02-15 05:09:17'),(2590,568,2,'2006-02-15 05:09:17'),(2591,569,1,'2006-02-15 05:09:17'),(2592,569,1,'2006-02-15 05:09:17'),(2593,570,1,'2006-02-15 05:09:17'),(2594,570,1,'2006-02-15 05:09:17'),(2595,570,2,'2006-02-15 05:09:17'),(2596,570,2,'2006-02-15 05:09:17'),(2597,570,2,'2006-02-15 05:09:17'),(2598,571,1,'2006-02-15 05:09:17'),(2599,571,1,'2006-02-15 05:09:17'),(2600,571,2,'2006-02-15 05:09:17'),(2601,571,2,'2006-02-15 05:09:17'),(2602,571,2,'2006-02-15 05:09:17'),(2603,571,2,'2006-02-15 05:09:17'),(2604,572,1,'2006-02-15 05:09:17'),(2605,572,1,'2006-02-15 05:09:17'),(2606,572,1,'2006-02-15 05:09:17'),(2607,572,1,'2006-02-15 05:09:17'),(2608,572,2,'2006-02-15 05:09:17'),(2609,572,2,'2006-02-15 05:09:17'),(2610,572,2,'2006-02-15 05:09:17'),(2611,572,2,'2006-02-15 05:09:17'),(2612,573,1,'2006-02-15 05:09:17'),(2613,573,1,'2006-02-15 05:09:17'),(2614,573,1,'2006-02-15 05:09:17'),(2615,573,1,'2006-02-15 05:09:17'),(2616,574,1,'2006-02-15 05:09:17'),(2617,574,1,'2006-02-15 05:09:17'),(2618,574,2,'2006-02-15 05:09:17'),(2619,574,2,'2006-02-15 05:09:17'),(2620,574,2,'2006-02-15 05:09:17'),(2621,575,1,'2006-02-15 05:09:17'),(2622,575,1,'2006-02-15 05:09:17'),(2623,575,2,'2006-02-15 05:09:17'),(2624,575,2,'2006-02-15 05:09:17'),(2625,575,2,'2006-02-15 05:09:17'),(2626,575,2,'2006-02-15 05:09:17'),(2627,576,2,'2006-02-15 05:09:17'),(2628,576,2,'2006-02-15 05:09:17'),(2629,576,2,'2006-02-15 05:09:17'),(2630,577,1,'2006-02-15 05:09:17'),(2631,577,1,'2006-02-15 05:09:17'),(2632,577,1,'2006-02-15 05:09:17'),(2633,578,1,'2006-02-15 05:09:17'),(2634,578,1,'2006-02-15 05:09:17'),(2635,578,2,'2006-02-15 05:09:17'),(2636,578,2,'2006-02-15 05:09:17'),(2637,578,2,'2006-02-15 05:09:17'),(2638,579,1,'2006-02-15 05:09:17'),(2639,579,1,'2006-02-15 05:09:17'),(2640,579,1,'2006-02-15 05:09:17'),(2641,579,1,'2006-02-15 05:09:17'),(2642,579,2,'2006-02-15 05:09:17'),(2643,579,2,'2006-02-15 05:09:17'),(2644,579,2,'2006-02-15 05:09:17'),(2645,580,1,'2006-02-15 05:09:17'),(2646,580,1,'2006-02-15 05:09:17'),(2647,580,1,'2006-02-15 05:09:17'),(2648,580,1,'2006-02-15 05:09:17'),(2649,580,2,'2006-02-15 05:09:17'),(2650,580,2,'2006-02-15 05:09:17'),(2651,581,1,'2006-02-15 05:09:17'),(2652,581,1,'2006-02-15 05:09:17'),(2653,581,1,'2006-02-15 05:09:17'),(2654,582,2,'2006-02-15 05:09:17'),(2655,582,2,'2006-02-15 05:09:17'),(2656,583,1,'2006-02-15 05:09:17'),(2657,583,1,'2006-02-15 05:09:17'),(2658,583,1,'2006-02-15 05:09:17'),(2659,583,2,'2006-02-15 05:09:17'),(2660,583,2,'2006-02-15 05:09:17'),(2661,584,1,'2006-02-15 05:09:17'),(2662,584,1,'2006-02-15 05:09:17'),(2663,585,2,'2006-02-15 05:09:17'),(2664,585,2,'2006-02-15 05:09:17'),(2665,585,2,'2006-02-15 05:09:17'),(2666,585,2,'2006-02-15 05:09:17'),(2667,586,1,'2006-02-15 05:09:17'),(2668,586,1,'2006-02-15 05:09:17'),(2669,586,1,'2006-02-15 05:09:17'),(2670,586,1,'2006-02-15 05:09:17'),(2671,586,2,'2006-02-15 05:09:17'),(2672,586,2,'2006-02-15 05:09:17'),(2673,586,2,'2006-02-15 05:09:17'),(2674,586,2,'2006-02-15 05:09:17'),(2675,587,1,'2006-02-15 05:09:17'),(2676,587,1,'2006-02-15 05:09:17'),(2677,587,1,'2006-02-15 05:09:17'),(2678,588,2,'2006-02-15 05:09:17'),(2679,588,2,'2006-02-15 05:09:17'),(2680,588,2,'2006-02-15 05:09:17'),(2681,588,2,'2006-02-15 05:09:17'),(2682,589,2,'2006-02-15 05:09:17'),(2683,589,2,'2006-02-15 05:09:17'),(2684,589,2,'2006-02-15 05:09:17'),(2685,589,2,'2006-02-15 05:09:17'),(2686,590,1,'2006-02-15 05:09:17'),(2687,590,1,'2006-02-15 05:09:17'),(2688,590,1,'2006-02-15 05:09:17'),(2689,590,2,'2006-02-15 05:09:17'),(2690,590,2,'2006-02-15 05:09:17'),(2691,590,2,'2006-02-15 05:09:17'),(2692,590,2,'2006-02-15 05:09:17'),(2693,591,2,'2006-02-15 05:09:17'),(2694,591,2,'2006-02-15 05:09:17'),(2695,591,2,'2006-02-15 05:09:17'),(2696,592,1,'2006-02-15 05:09:17'),(2697,592,1,'2006-02-15 05:09:17'),(2698,592,2,'2006-02-15 05:09:17'),(2699,592,2,'2006-02-15 05:09:17'),(2700,593,2,'2006-02-15 05:09:17'),(2701,593,2,'2006-02-15 05:09:17'),(2702,593,2,'2006-02-15 05:09:17'),(2703,593,2,'2006-02-15 05:09:17'),(2704,594,1,'2006-02-15 05:09:17'),(2705,594,1,'2006-02-15 05:09:17'),(2706,594,1,'2006-02-15 05:09:17'),(2707,595,1,'2006-02-15 05:09:17'),(2708,595,1,'2006-02-15 05:09:17'),(2709,595,1,'2006-02-15 05:09:17'),(2710,595,1,'2006-02-15 05:09:17'),(2711,595,2,'2006-02-15 05:09:17'),(2712,595,2,'2006-02-15 05:09:17'),(2713,595,2,'2006-02-15 05:09:17'),(2714,595,2,'2006-02-15 05:09:17'),(2715,596,1,'2006-02-15 05:09:17'),(2716,596,1,'2006-02-15 05:09:17'),(2717,596,2,'2006-02-15 05:09:17'),(2718,596,2,'2006-02-15 05:09:17'),(2719,596,2,'2006-02-15 05:09:17'),(2720,596,2,'2006-02-15 05:09:17'),(2721,597,2,'2006-02-15 05:09:17'),(2722,597,2,'2006-02-15 05:09:17'),(2723,597,2,'2006-02-15 05:09:17'),(2724,597,2,'2006-02-15 05:09:17'),(2725,598,1,'2006-02-15 05:09:17'),(2726,598,1,'2006-02-15 05:09:17'),(2727,598,1,'2006-02-15 05:09:17'),(2728,598,1,'2006-02-15 05:09:17'),(2729,599,1,'2006-02-15 05:09:17'),(2730,599,1,'2006-02-15 05:09:17'),(2731,599,1,'2006-02-15 05:09:17'),(2732,599,2,'2006-02-15 05:09:17'),(2733,599,2,'2006-02-15 05:09:17'),(2734,600,1,'2006-02-15 05:09:17'),(2735,600,1,'2006-02-15 05:09:17'),(2736,600,2,'2006-02-15 05:09:17'),(2737,600,2,'2006-02-15 05:09:17'),(2738,601,1,'2006-02-15 05:09:17'),(2739,601,1,'2006-02-15 05:09:17'),(2740,601,1,'2006-02-15 05:09:17'),(2741,601,2,'2006-02-15 05:09:17'),(2742,601,2,'2006-02-15 05:09:17'),(2743,602,1,'2006-02-15 05:09:17'),(2744,602,1,'2006-02-15 05:09:17'),(2745,602,2,'2006-02-15 05:09:17'),(2746,602,2,'2006-02-15 05:09:17'),(2747,602,2,'2006-02-15 05:09:17'),(2748,603,1,'2006-02-15 05:09:17'),(2749,603,1,'2006-02-15 05:09:17'),(2750,603,1,'2006-02-15 05:09:17'),(2751,603,1,'2006-02-15 05:09:17'),(2752,603,2,'2006-02-15 05:09:17'),(2753,603,2,'2006-02-15 05:09:17'),(2754,604,2,'2006-02-15 05:09:17'),(2755,604,2,'2006-02-15 05:09:17'),(2756,604,2,'2006-02-15 05:09:17'),(2757,605,2,'2006-02-15 05:09:17'),(2758,605,2,'2006-02-15 05:09:17'),(2759,606,1,'2006-02-15 05:09:17'),(2760,606,1,'2006-02-15 05:09:17'),(2761,606,2,'2006-02-15 05:09:17'),(2762,606,2,'2006-02-15 05:09:17'),(2763,606,2,'2006-02-15 05:09:17'),(2764,606,2,'2006-02-15 05:09:17'),(2765,608,1,'2006-02-15 05:09:17'),(2766,608,1,'2006-02-15 05:09:17'),(2767,608,2,'2006-02-15 05:09:17'),(2768,608,2,'2006-02-15 05:09:17'),(2769,608,2,'2006-02-15 05:09:17'),(2770,608,2,'2006-02-15 05:09:17'),(2771,609,1,'2006-02-15 05:09:17'),(2772,609,1,'2006-02-15 05:09:17'),(2773,609,1,'2006-02-15 05:09:17'),(2774,609,1,'2006-02-15 05:09:17'),(2775,609,2,'2006-02-15 05:09:17'),(2776,609,2,'2006-02-15 05:09:17'),(2777,609,2,'2006-02-15 05:09:17'),(2778,609,2,'2006-02-15 05:09:17'),(2779,610,1,'2006-02-15 05:09:17'),(2780,610,1,'2006-02-15 05:09:17'),(2781,610,2,'2006-02-15 05:09:17'),(2782,610,2,'2006-02-15 05:09:17'),(2783,610,2,'2006-02-15 05:09:17'),(2784,611,1,'2006-02-15 05:09:17'),(2785,611,1,'2006-02-15 05:09:17'),(2786,611,1,'2006-02-15 05:09:17'),(2787,611,1,'2006-02-15 05:09:17'),(2788,611,2,'2006-02-15 05:09:17'),(2789,611,2,'2006-02-15 05:09:17'),(2790,612,2,'2006-02-15 05:09:17'),(2791,612,2,'2006-02-15 05:09:17'),(2792,613,1,'2006-02-15 05:09:17'),(2793,613,1,'2006-02-15 05:09:17'),(2794,614,1,'2006-02-15 05:09:17'),(2795,614,1,'2006-02-15 05:09:17'),(2796,614,1,'2006-02-15 05:09:17'),(2797,614,2,'2006-02-15 05:09:17'),(2798,614,2,'2006-02-15 05:09:17'),(2799,614,2,'2006-02-15 05:09:17'),(2800,615,2,'2006-02-15 05:09:17'),(2801,615,2,'2006-02-15 05:09:17'),(2802,615,2,'2006-02-15 05:09:17'),(2803,615,2,'2006-02-15 05:09:17'),(2804,616,1,'2006-02-15 05:09:17'),(2805,616,1,'2006-02-15 05:09:17'),(2806,616,2,'2006-02-15 05:09:17'),(2807,616,2,'2006-02-15 05:09:17'),(2808,616,2,'2006-02-15 05:09:17'),(2809,616,2,'2006-02-15 05:09:17'),(2810,617,1,'2006-02-15 05:09:17'),(2811,617,1,'2006-02-15 05:09:17'),(2812,617,1,'2006-02-15 05:09:17'),(2813,618,2,'2006-02-15 05:09:17'),(2814,618,2,'2006-02-15 05:09:17'),(2815,618,2,'2006-02-15 05:09:17'),(2816,618,2,'2006-02-15 05:09:17'),(2817,619,1,'2006-02-15 05:09:17'),(2818,619,1,'2006-02-15 05:09:17'),(2819,619,2,'2006-02-15 05:09:17'),(2820,619,2,'2006-02-15 05:09:17'),(2821,619,2,'2006-02-15 05:09:17'),(2822,619,2,'2006-02-15 05:09:17'),(2823,620,1,'2006-02-15 05:09:17'),(2824,620,1,'2006-02-15 05:09:17'),(2825,620,2,'2006-02-15 05:09:17'),(2826,620,2,'2006-02-15 05:09:17'),(2827,620,2,'2006-02-15 05:09:17'),(2828,621,1,'2006-02-15 05:09:17'),(2829,621,1,'2006-02-15 05:09:17'),(2830,621,1,'2006-02-15 05:09:17'),(2831,621,1,'2006-02-15 05:09:17'),(2832,621,2,'2006-02-15 05:09:17'),(2833,621,2,'2006-02-15 05:09:17'),(2834,621,2,'2006-02-15 05:09:17'),(2835,621,2,'2006-02-15 05:09:17'),(2836,622,2,'2006-02-15 05:09:17'),(2837,622,2,'2006-02-15 05:09:17'),(2838,623,1,'2006-02-15 05:09:17'),(2839,623,1,'2006-02-15 05:09:17'),(2840,623,2,'2006-02-15 05:09:17'),(2841,623,2,'2006-02-15 05:09:17'),(2842,623,2,'2006-02-15 05:09:17'),(2843,624,1,'2006-02-15 05:09:17'),(2844,624,1,'2006-02-15 05:09:17'),(2845,624,1,'2006-02-15 05:09:17'),(2846,624,2,'2006-02-15 05:09:17'),(2847,624,2,'2006-02-15 05:09:17'),(2848,624,2,'2006-02-15 05:09:17'),(2849,624,2,'2006-02-15 05:09:17'),(2850,625,1,'2006-02-15 05:09:17'),(2851,625,1,'2006-02-15 05:09:17'),(2852,625,1,'2006-02-15 05:09:17'),(2853,625,2,'2006-02-15 05:09:17'),(2854,625,2,'2006-02-15 05:09:17'),(2855,625,2,'2006-02-15 05:09:17'),(2856,625,2,'2006-02-15 05:09:17'),(2857,626,2,'2006-02-15 05:09:17'),(2858,626,2,'2006-02-15 05:09:17'),(2859,626,2,'2006-02-15 05:09:17'),(2860,626,2,'2006-02-15 05:09:17'),(2861,627,2,'2006-02-15 05:09:17'),(2862,627,2,'2006-02-15 05:09:17'),(2863,627,2,'2006-02-15 05:09:17'),(2864,628,1,'2006-02-15 05:09:17'),(2865,628,1,'2006-02-15 05:09:17'),(2866,628,1,'2006-02-15 05:09:17'),(2867,628,2,'2006-02-15 05:09:17'),(2868,628,2,'2006-02-15 05:09:17'),(2869,629,2,'2006-02-15 05:09:17'),(2870,629,2,'2006-02-15 05:09:17'),(2871,629,2,'2006-02-15 05:09:17'),(2872,629,2,'2006-02-15 05:09:17'),(2873,630,2,'2006-02-15 05:09:17'),(2874,630,2,'2006-02-15 05:09:17'),(2875,630,2,'2006-02-15 05:09:17'),(2876,631,1,'2006-02-15 05:09:17'),(2877,631,1,'2006-02-15 05:09:17'),(2878,631,1,'2006-02-15 05:09:17'),(2879,631,2,'2006-02-15 05:09:17'),(2880,631,2,'2006-02-15 05:09:17'),(2881,632,1,'2006-02-15 05:09:17'),(2882,632,1,'2006-02-15 05:09:17'),(2883,632,1,'2006-02-15 05:09:17'),(2884,633,2,'2006-02-15 05:09:17'),(2885,633,2,'2006-02-15 05:09:17'),(2886,633,2,'2006-02-15 05:09:17'),(2887,634,2,'2006-02-15 05:09:17'),(2888,634,2,'2006-02-15 05:09:17'),(2889,634,2,'2006-02-15 05:09:17'),(2890,634,2,'2006-02-15 05:09:17'),(2891,635,2,'2006-02-15 05:09:17'),(2892,635,2,'2006-02-15 05:09:17'),(2893,636,1,'2006-02-15 05:09:17'),(2894,636,1,'2006-02-15 05:09:17'),(2895,636,1,'2006-02-15 05:09:17'),(2896,637,1,'2006-02-15 05:09:17'),(2897,637,1,'2006-02-15 05:09:17'),(2898,637,2,'2006-02-15 05:09:17'),(2899,637,2,'2006-02-15 05:09:17'),(2900,637,2,'2006-02-15 05:09:17'),(2901,638,1,'2006-02-15 05:09:17'),(2902,638,1,'2006-02-15 05:09:17'),(2903,638,1,'2006-02-15 05:09:17'),(2904,638,1,'2006-02-15 05:09:17'),(2905,638,2,'2006-02-15 05:09:17'),(2906,638,2,'2006-02-15 05:09:17'),(2907,638,2,'2006-02-15 05:09:17'),(2908,638,2,'2006-02-15 05:09:17'),(2909,639,2,'2006-02-15 05:09:17'),(2910,639,2,'2006-02-15 05:09:17'),(2911,639,2,'2006-02-15 05:09:17'),(2912,640,2,'2006-02-15 05:09:17'),(2913,640,2,'2006-02-15 05:09:17'),(2914,640,2,'2006-02-15 05:09:17'),(2915,641,1,'2006-02-15 05:09:17'),(2916,641,1,'2006-02-15 05:09:17'),(2917,641,1,'2006-02-15 05:09:17'),(2918,641,2,'2006-02-15 05:09:17'),(2919,641,2,'2006-02-15 05:09:17'),(2920,641,2,'2006-02-15 05:09:17'),(2921,641,2,'2006-02-15 05:09:17'),(2922,643,1,'2006-02-15 05:09:17'),(2923,643,1,'2006-02-15 05:09:17'),(2924,643,1,'2006-02-15 05:09:17'),(2925,643,2,'2006-02-15 05:09:17'),(2926,643,2,'2006-02-15 05:09:17'),(2927,643,2,'2006-02-15 05:09:17'),(2928,644,1,'2006-02-15 05:09:17'),(2929,644,1,'2006-02-15 05:09:17'),(2930,644,1,'2006-02-15 05:09:17'),(2931,644,2,'2006-02-15 05:09:17'),(2932,644,2,'2006-02-15 05:09:17'),(2933,644,2,'2006-02-15 05:09:17'),(2934,644,2,'2006-02-15 05:09:17'),(2935,645,1,'2006-02-15 05:09:17'),(2936,645,1,'2006-02-15 05:09:17'),(2937,645,1,'2006-02-15 05:09:17'),(2938,645,2,'2006-02-15 05:09:17'),(2939,645,2,'2006-02-15 05:09:17'),(2940,645,2,'2006-02-15 05:09:17'),(2941,646,1,'2006-02-15 05:09:17'),(2942,646,1,'2006-02-15 05:09:17'),(2943,646,1,'2006-02-15 05:09:17'),(2944,646,2,'2006-02-15 05:09:17'),(2945,646,2,'2006-02-15 05:09:17'),(2946,647,1,'2006-02-15 05:09:17'),(2947,647,1,'2006-02-15 05:09:17'),(2948,647,1,'2006-02-15 05:09:17'),(2949,647,2,'2006-02-15 05:09:17'),(2950,647,2,'2006-02-15 05:09:17'),(2951,647,2,'2006-02-15 05:09:17'),(2952,648,1,'2006-02-15 05:09:17'),(2953,648,1,'2006-02-15 05:09:17'),(2954,648,1,'2006-02-15 05:09:17'),(2955,648,1,'2006-02-15 05:09:17'),(2956,648,2,'2006-02-15 05:09:17'),(2957,648,2,'2006-02-15 05:09:17'),(2958,649,1,'2006-02-15 05:09:17'),(2959,649,1,'2006-02-15 05:09:17'),(2960,649,2,'2006-02-15 05:09:17'),(2961,649,2,'2006-02-15 05:09:17'),(2962,649,2,'2006-02-15 05:09:17'),(2963,649,2,'2006-02-15 05:09:17'),(2964,650,1,'2006-02-15 05:09:17'),(2965,650,1,'2006-02-15 05:09:17'),(2966,650,2,'2006-02-15 05:09:17'),(2967,650,2,'2006-02-15 05:09:17'),(2968,650,2,'2006-02-15 05:09:17'),(2969,650,2,'2006-02-15 05:09:17'),(2970,651,1,'2006-02-15 05:09:17'),(2971,651,1,'2006-02-15 05:09:17'),(2972,651,2,'2006-02-15 05:09:17'),(2973,651,2,'2006-02-15 05:09:17'),(2974,651,2,'2006-02-15 05:09:17'),(2975,651,2,'2006-02-15 05:09:17'),(2976,652,1,'2006-02-15 05:09:17'),(2977,652,1,'2006-02-15 05:09:17'),(2978,652,1,'2006-02-15 05:09:17'),(2979,652,1,'2006-02-15 05:09:17'),(2980,653,1,'2006-02-15 05:09:17'),(2981,653,1,'2006-02-15 05:09:17'),(2982,654,1,'2006-02-15 05:09:17'),(2983,654,1,'2006-02-15 05:09:17'),(2984,654,2,'2006-02-15 05:09:17'),(2985,654,2,'2006-02-15 05:09:17'),(2986,655,1,'2006-02-15 05:09:17'),(2987,655,1,'2006-02-15 05:09:17'),(2988,655,1,'2006-02-15 05:09:17'),(2989,655,2,'2006-02-15 05:09:17'),(2990,655,2,'2006-02-15 05:09:17'),(2991,655,2,'2006-02-15 05:09:17'),(2992,656,2,'2006-02-15 05:09:17'),(2993,656,2,'2006-02-15 05:09:17'),(2994,657,1,'2006-02-15 05:09:17'),(2995,657,1,'2006-02-15 05:09:17'),(2996,657,1,'2006-02-15 05:09:17'),(2997,657,1,'2006-02-15 05:09:17'),(2998,657,2,'2006-02-15 05:09:17'),(2999,657,2,'2006-02-15 05:09:17'),(3000,658,2,'2006-02-15 05:09:17'),(3001,658,2,'2006-02-15 05:09:17'),(3002,658,2,'2006-02-15 05:09:17'),(3003,658,2,'2006-02-15 05:09:17'),(3004,659,2,'2006-02-15 05:09:17'),(3005,659,2,'2006-02-15 05:09:17'),(3006,660,1,'2006-02-15 05:09:17'),(3007,660,1,'2006-02-15 05:09:17'),(3008,660,2,'2006-02-15 05:09:17'),(3009,660,2,'2006-02-15 05:09:17'),(3010,661,1,'2006-02-15 05:09:17'),(3011,661,1,'2006-02-15 05:09:17'),(3012,661,1,'2006-02-15 05:09:17'),(3013,661,1,'2006-02-15 05:09:17'),(3014,662,1,'2006-02-15 05:09:17'),(3015,662,1,'2006-02-15 05:09:17'),(3016,662,2,'2006-02-15 05:09:17'),(3017,662,2,'2006-02-15 05:09:17'),(3018,663,1,'2006-02-15 05:09:17'),(3019,663,1,'2006-02-15 05:09:17'),(3020,663,1,'2006-02-15 05:09:17'),(3021,663,2,'2006-02-15 05:09:17'),(3022,663,2,'2006-02-15 05:09:17'),(3023,664,1,'2006-02-15 05:09:17'),(3024,664,1,'2006-02-15 05:09:17'),(3025,664,2,'2006-02-15 05:09:17'),(3026,664,2,'2006-02-15 05:09:17'),(3027,664,2,'2006-02-15 05:09:17'),(3028,665,1,'2006-02-15 05:09:17'),(3029,665,1,'2006-02-15 05:09:17'),(3030,665,1,'2006-02-15 05:09:17'),(3031,665,1,'2006-02-15 05:09:17'),(3032,665,2,'2006-02-15 05:09:17'),(3033,665,2,'2006-02-15 05:09:17'),(3034,665,2,'2006-02-15 05:09:17'),(3035,666,1,'2006-02-15 05:09:17'),(3036,666,1,'2006-02-15 05:09:17'),(3037,666,1,'2006-02-15 05:09:17'),(3038,666,2,'2006-02-15 05:09:17'),(3039,666,2,'2006-02-15 05:09:17'),(3040,667,1,'2006-02-15 05:09:17'),(3041,667,1,'2006-02-15 05:09:17'),(3042,667,2,'2006-02-15 05:09:17'),(3043,667,2,'2006-02-15 05:09:17'),(3044,668,1,'2006-02-15 05:09:17'),(3045,668,1,'2006-02-15 05:09:17'),(3046,668,2,'2006-02-15 05:09:17'),(3047,668,2,'2006-02-15 05:09:17'),(3048,668,2,'2006-02-15 05:09:17'),(3049,670,1,'2006-02-15 05:09:17'),(3050,670,1,'2006-02-15 05:09:17'),(3051,670,1,'2006-02-15 05:09:17'),(3052,670,1,'2006-02-15 05:09:17'),(3053,670,2,'2006-02-15 05:09:17'),(3054,670,2,'2006-02-15 05:09:17'),(3055,670,2,'2006-02-15 05:09:17'),(3056,672,1,'2006-02-15 05:09:17'),(3057,672,1,'2006-02-15 05:09:17'),(3058,672,2,'2006-02-15 05:09:17'),(3059,672,2,'2006-02-15 05:09:17'),(3060,672,2,'2006-02-15 05:09:17'),(3061,672,2,'2006-02-15 05:09:17'),(3062,673,1,'2006-02-15 05:09:17'),(3063,673,1,'2006-02-15 05:09:17'),(3064,673,2,'2006-02-15 05:09:17'),(3065,673,2,'2006-02-15 05:09:17'),(3066,674,1,'2006-02-15 05:09:17'),(3067,674,1,'2006-02-15 05:09:17'),(3068,674,1,'2006-02-15 05:09:17'),(3069,675,1,'2006-02-15 05:09:17'),(3070,675,1,'2006-02-15 05:09:17'),(3071,676,1,'2006-02-15 05:09:17'),(3072,676,1,'2006-02-15 05:09:17'),(3073,676,2,'2006-02-15 05:09:17'),(3074,676,2,'2006-02-15 05:09:17'),(3075,676,2,'2006-02-15 05:09:17'),(3076,676,2,'2006-02-15 05:09:17'),(3077,677,1,'2006-02-15 05:09:17'),(3078,677,1,'2006-02-15 05:09:17'),(3079,677,1,'2006-02-15 05:09:17'),(3080,677,2,'2006-02-15 05:09:17'),(3081,677,2,'2006-02-15 05:09:17'),(3082,677,2,'2006-02-15 05:09:17'),(3083,677,2,'2006-02-15 05:09:17'),(3084,678,1,'2006-02-15 05:09:17'),(3085,678,1,'2006-02-15 05:09:17'),(3086,678,1,'2006-02-15 05:09:17'),(3087,678,1,'2006-02-15 05:09:17'),(3088,679,1,'2006-02-15 05:09:17'),(3089,679,1,'2006-02-15 05:09:17'),(3090,679,2,'2006-02-15 05:09:17'),(3091,679,2,'2006-02-15 05:09:17'),(3092,680,1,'2006-02-15 05:09:17'),(3093,680,1,'2006-02-15 05:09:17'),(3094,680,2,'2006-02-15 05:09:17'),(3095,680,2,'2006-02-15 05:09:17'),(3096,680,2,'2006-02-15 05:09:17'),(3097,680,2,'2006-02-15 05:09:17'),(3098,681,1,'2006-02-15 05:09:17'),(3099,681,1,'2006-02-15 05:09:17'),(3100,681,1,'2006-02-15 05:09:17'),(3101,681,2,'2006-02-15 05:09:17'),(3102,681,2,'2006-02-15 05:09:17'),(3103,681,2,'2006-02-15 05:09:17'),(3104,682,1,'2006-02-15 05:09:17'),(3105,682,1,'2006-02-15 05:09:17'),(3106,682,1,'2006-02-15 05:09:17'),(3107,683,1,'2006-02-15 05:09:17'),(3108,683,1,'2006-02-15 05:09:17'),(3109,683,1,'2006-02-15 05:09:17'),(3110,683,1,'2006-02-15 05:09:17'),(3111,683,2,'2006-02-15 05:09:17'),(3112,683,2,'2006-02-15 05:09:17'),(3113,683,2,'2006-02-15 05:09:17'),(3114,683,2,'2006-02-15 05:09:17'),(3115,684,2,'2006-02-15 05:09:17'),(3116,684,2,'2006-02-15 05:09:17'),(3117,685,2,'2006-02-15 05:09:17'),(3118,685,2,'2006-02-15 05:09:17'),(3119,686,1,'2006-02-15 05:09:17'),(3120,686,1,'2006-02-15 05:09:17'),(3121,686,1,'2006-02-15 05:09:17'),(3122,686,1,'2006-02-15 05:09:17'),(3123,687,1,'2006-02-15 05:09:17'),(3124,687,1,'2006-02-15 05:09:17'),(3125,687,1,'2006-02-15 05:09:17'),(3126,687,2,'2006-02-15 05:09:17'),(3127,687,2,'2006-02-15 05:09:17'),(3128,687,2,'2006-02-15 05:09:17'),(3129,687,2,'2006-02-15 05:09:17'),(3130,688,2,'2006-02-15 05:09:17'),(3131,688,2,'2006-02-15 05:09:17'),(3132,688,2,'2006-02-15 05:09:17'),(3133,688,2,'2006-02-15 05:09:17'),(3134,689,1,'2006-02-15 05:09:17'),(3135,689,1,'2006-02-15 05:09:17'),(3136,689,1,'2006-02-15 05:09:17'),(3137,689,1,'2006-02-15 05:09:17'),(3138,689,2,'2006-02-15 05:09:17'),(3139,689,2,'2006-02-15 05:09:17'),(3140,690,1,'2006-02-15 05:09:17'),(3141,690,1,'2006-02-15 05:09:17'),(3142,690,1,'2006-02-15 05:09:17'),(3143,690,1,'2006-02-15 05:09:17'),(3144,690,2,'2006-02-15 05:09:17'),(3145,690,2,'2006-02-15 05:09:17'),(3146,691,1,'2006-02-15 05:09:17'),(3147,691,1,'2006-02-15 05:09:17'),(3148,691,1,'2006-02-15 05:09:17'),(3149,691,2,'2006-02-15 05:09:17'),(3150,691,2,'2006-02-15 05:09:17'),(3151,692,2,'2006-02-15 05:09:17'),(3152,692,2,'2006-02-15 05:09:17'),(3153,692,2,'2006-02-15 05:09:17'),(3154,693,1,'2006-02-15 05:09:17'),(3155,693,1,'2006-02-15 05:09:17'),(3156,693,2,'2006-02-15 05:09:17'),(3157,693,2,'2006-02-15 05:09:17'),(3158,693,2,'2006-02-15 05:09:17'),(3159,694,1,'2006-02-15 05:09:17'),(3160,694,1,'2006-02-15 05:09:17'),(3161,694,1,'2006-02-15 05:09:17'),(3162,694,1,'2006-02-15 05:09:17'),(3163,694,2,'2006-02-15 05:09:17'),(3164,694,2,'2006-02-15 05:09:17'),(3165,695,1,'2006-02-15 05:09:17'),(3166,695,1,'2006-02-15 05:09:17'),(3167,696,1,'2006-02-15 05:09:17'),(3168,696,1,'2006-02-15 05:09:17'),(3169,696,2,'2006-02-15 05:09:17'),(3170,696,2,'2006-02-15 05:09:17'),(3171,696,2,'2006-02-15 05:09:17'),(3172,697,1,'2006-02-15 05:09:17'),(3173,697,1,'2006-02-15 05:09:17'),(3174,697,1,'2006-02-15 05:09:17'),(3175,697,1,'2006-02-15 05:09:17'),(3176,697,2,'2006-02-15 05:09:17'),(3177,697,2,'2006-02-15 05:09:17'),(3178,697,2,'2006-02-15 05:09:17'),(3179,697,2,'2006-02-15 05:09:17'),(3180,698,1,'2006-02-15 05:09:17'),(3181,698,1,'2006-02-15 05:09:17'),(3182,698,1,'2006-02-15 05:09:17'),(3183,698,1,'2006-02-15 05:09:17'),(3184,698,2,'2006-02-15 05:09:17'),(3185,698,2,'2006-02-15 05:09:17'),(3186,698,2,'2006-02-15 05:09:17'),(3187,699,1,'2006-02-15 05:09:17'),(3188,699,1,'2006-02-15 05:09:17'),(3189,700,2,'2006-02-15 05:09:17'),(3190,700,2,'2006-02-15 05:09:17'),(3191,700,2,'2006-02-15 05:09:17'),(3192,702,1,'2006-02-15 05:09:17'),(3193,702,1,'2006-02-15 05:09:17'),(3194,702,1,'2006-02-15 05:09:17'),(3195,702,1,'2006-02-15 05:09:17'),(3196,702,2,'2006-02-15 05:09:17'),(3197,702,2,'2006-02-15 05:09:17'),(3198,702,2,'2006-02-15 05:09:17'),(3199,702,2,'2006-02-15 05:09:17'),(3200,703,2,'2006-02-15 05:09:17'),(3201,703,2,'2006-02-15 05:09:17'),(3202,704,1,'2006-02-15 05:09:17'),(3203,704,1,'2006-02-15 05:09:17'),(3204,704,2,'2006-02-15 05:09:17'),(3205,704,2,'2006-02-15 05:09:17'),(3206,704,2,'2006-02-15 05:09:17'),(3207,705,1,'2006-02-15 05:09:17'),(3208,705,1,'2006-02-15 05:09:17'),(3209,705,1,'2006-02-15 05:09:17'),(3210,705,1,'2006-02-15 05:09:17'),(3211,706,1,'2006-02-15 05:09:17'),(3212,706,1,'2006-02-15 05:09:17'),(3213,706,2,'2006-02-15 05:09:17'),(3214,706,2,'2006-02-15 05:09:17'),(3215,706,2,'2006-02-15 05:09:17'),(3216,706,2,'2006-02-15 05:09:17'),(3217,707,1,'2006-02-15 05:09:17'),(3218,707,1,'2006-02-15 05:09:17'),(3219,707,2,'2006-02-15 05:09:17'),(3220,707,2,'2006-02-15 05:09:17'),(3221,707,2,'2006-02-15 05:09:17'),(3222,707,2,'2006-02-15 05:09:17'),(3223,708,1,'2006-02-15 05:09:17'),(3224,708,1,'2006-02-15 05:09:17'),(3225,708,2,'2006-02-15 05:09:17'),(3226,708,2,'2006-02-15 05:09:17'),(3227,709,1,'2006-02-15 05:09:17'),(3228,709,1,'2006-02-15 05:09:17'),(3229,709,2,'2006-02-15 05:09:17'),(3230,709,2,'2006-02-15 05:09:17'),(3231,709,2,'2006-02-15 05:09:17'),(3232,709,2,'2006-02-15 05:09:17'),(3233,710,1,'2006-02-15 05:09:17'),(3234,710,1,'2006-02-15 05:09:17'),(3235,710,1,'2006-02-15 05:09:17'),(3236,710,1,'2006-02-15 05:09:17'),(3237,710,2,'2006-02-15 05:09:17'),(3238,710,2,'2006-02-15 05:09:17'),(3239,711,2,'2006-02-15 05:09:17'),(3240,711,2,'2006-02-15 05:09:17'),(3241,711,2,'2006-02-15 05:09:17'),(3242,711,2,'2006-02-15 05:09:17'),(3243,714,2,'2006-02-15 05:09:17'),(3244,714,2,'2006-02-15 05:09:17'),(3245,714,2,'2006-02-15 05:09:17'),(3246,715,1,'2006-02-15 05:09:17'),(3247,715,1,'2006-02-15 05:09:17'),(3248,715,1,'2006-02-15 05:09:17'),(3249,715,1,'2006-02-15 05:09:17'),(3250,715,2,'2006-02-15 05:09:17'),(3251,715,2,'2006-02-15 05:09:17'),(3252,715,2,'2006-02-15 05:09:17'),(3253,716,1,'2006-02-15 05:09:17'),(3254,716,1,'2006-02-15 05:09:17'),(3255,716,2,'2006-02-15 05:09:17'),(3256,716,2,'2006-02-15 05:09:17'),(3257,716,2,'2006-02-15 05:09:17'),(3258,717,1,'2006-02-15 05:09:17'),(3259,717,1,'2006-02-15 05:09:17'),(3260,717,2,'2006-02-15 05:09:17'),(3261,717,2,'2006-02-15 05:09:17'),(3262,718,2,'2006-02-15 05:09:17'),(3263,718,2,'2006-02-15 05:09:17'),(3264,719,1,'2006-02-15 05:09:17'),(3265,719,1,'2006-02-15 05:09:17'),(3266,720,1,'2006-02-15 05:09:17'),(3267,720,1,'2006-02-15 05:09:17'),(3268,720,1,'2006-02-15 05:09:17'),(3269,720,2,'2006-02-15 05:09:17'),(3270,720,2,'2006-02-15 05:09:17'),(3271,720,2,'2006-02-15 05:09:17'),(3272,720,2,'2006-02-15 05:09:17'),(3273,721,1,'2006-02-15 05:09:17'),(3274,721,1,'2006-02-15 05:09:17'),(3275,722,1,'2006-02-15 05:09:17'),(3276,722,1,'2006-02-15 05:09:17'),(3277,722,2,'2006-02-15 05:09:17'),(3278,722,2,'2006-02-15 05:09:17'),(3279,723,1,'2006-02-15 05:09:17'),(3280,723,1,'2006-02-15 05:09:17'),(3281,723,1,'2006-02-15 05:09:17'),(3282,723,1,'2006-02-15 05:09:17'),(3283,723,2,'2006-02-15 05:09:17'),(3284,723,2,'2006-02-15 05:09:17'),(3285,723,2,'2006-02-15 05:09:17'),(3286,724,1,'2006-02-15 05:09:17'),(3287,724,1,'2006-02-15 05:09:17'),(3288,724,2,'2006-02-15 05:09:17'),(3289,724,2,'2006-02-15 05:09:17'),(3290,724,2,'2006-02-15 05:09:17'),(3291,724,2,'2006-02-15 05:09:17'),(3292,725,1,'2006-02-15 05:09:17'),(3293,725,1,'2006-02-15 05:09:17'),(3294,725,1,'2006-02-15 05:09:17'),(3295,725,2,'2006-02-15 05:09:17'),(3296,725,2,'2006-02-15 05:09:17'),(3297,725,2,'2006-02-15 05:09:17'),(3298,726,2,'2006-02-15 05:09:17'),(3299,726,2,'2006-02-15 05:09:17'),(3300,726,2,'2006-02-15 05:09:17'),(3301,727,1,'2006-02-15 05:09:17'),(3302,727,1,'2006-02-15 05:09:17'),(3303,727,2,'2006-02-15 05:09:17'),(3304,727,2,'2006-02-15 05:09:17'),(3305,727,2,'2006-02-15 05:09:17'),(3306,728,1,'2006-02-15 05:09:17'),(3307,728,1,'2006-02-15 05:09:17'),(3308,728,1,'2006-02-15 05:09:17'),(3309,728,2,'2006-02-15 05:09:17'),(3310,728,2,'2006-02-15 05:09:17'),(3311,729,2,'2006-02-15 05:09:17'),(3312,729,2,'2006-02-15 05:09:17'),(3313,729,2,'2006-02-15 05:09:17'),(3314,729,2,'2006-02-15 05:09:17'),(3315,730,1,'2006-02-15 05:09:17'),(3316,730,1,'2006-02-15 05:09:17'),(3317,730,1,'2006-02-15 05:09:17'),(3318,730,1,'2006-02-15 05:09:17'),(3319,730,2,'2006-02-15 05:09:17'),(3320,730,2,'2006-02-15 05:09:17'),(3321,730,2,'2006-02-15 05:09:17'),(3322,730,2,'2006-02-15 05:09:17'),(3323,731,2,'2006-02-15 05:09:17'),(3324,731,2,'2006-02-15 05:09:17'),(3325,731,2,'2006-02-15 05:09:17'),(3326,732,1,'2006-02-15 05:09:17'),(3327,732,1,'2006-02-15 05:09:17'),(3328,732,1,'2006-02-15 05:09:17'),(3329,732,1,'2006-02-15 05:09:17'),(3330,733,1,'2006-02-15 05:09:17'),(3331,733,1,'2006-02-15 05:09:17'),(3332,733,1,'2006-02-15 05:09:17'),(3333,733,1,'2006-02-15 05:09:17'),(3334,733,2,'2006-02-15 05:09:17'),(3335,733,2,'2006-02-15 05:09:17'),(3336,733,2,'2006-02-15 05:09:17'),(3337,734,1,'2006-02-15 05:09:17'),(3338,734,1,'2006-02-15 05:09:17'),(3339,734,2,'2006-02-15 05:09:17'),(3340,734,2,'2006-02-15 05:09:17'),(3341,734,2,'2006-02-15 05:09:17'),(3342,734,2,'2006-02-15 05:09:17'),(3343,735,1,'2006-02-15 05:09:17'),(3344,735,1,'2006-02-15 05:09:17'),(3345,735,1,'2006-02-15 05:09:17'),(3346,735,2,'2006-02-15 05:09:17'),(3347,735,2,'2006-02-15 05:09:17'),(3348,735,2,'2006-02-15 05:09:17'),(3349,735,2,'2006-02-15 05:09:17'),(3350,736,1,'2006-02-15 05:09:17'),(3351,736,1,'2006-02-15 05:09:17'),(3352,736,1,'2006-02-15 05:09:17'),(3353,736,1,'2006-02-15 05:09:17'),(3354,737,1,'2006-02-15 05:09:17'),(3355,737,1,'2006-02-15 05:09:17'),(3356,737,2,'2006-02-15 05:09:17'),(3357,737,2,'2006-02-15 05:09:17'),(3358,737,2,'2006-02-15 05:09:17'),(3359,737,2,'2006-02-15 05:09:17'),(3360,738,1,'2006-02-15 05:09:17'),(3361,738,1,'2006-02-15 05:09:17'),(3362,738,1,'2006-02-15 05:09:17'),(3363,738,1,'2006-02-15 05:09:17'),(3364,738,2,'2006-02-15 05:09:17'),(3365,738,2,'2006-02-15 05:09:17'),(3366,738,2,'2006-02-15 05:09:17'),(3367,738,2,'2006-02-15 05:09:17'),(3368,739,1,'2006-02-15 05:09:17'),(3369,739,1,'2006-02-15 05:09:17'),(3370,739,2,'2006-02-15 05:09:17'),(3371,739,2,'2006-02-15 05:09:17'),(3372,739,2,'2006-02-15 05:09:17'),(3373,740,2,'2006-02-15 05:09:17'),(3374,740,2,'2006-02-15 05:09:17'),(3375,740,2,'2006-02-15 05:09:17'),(3376,741,1,'2006-02-15 05:09:17'),(3377,741,1,'2006-02-15 05:09:17'),(3378,741,1,'2006-02-15 05:09:17'),(3379,741,1,'2006-02-15 05:09:17'),(3380,741,2,'2006-02-15 05:09:17'),(3381,741,2,'2006-02-15 05:09:17'),(3382,743,1,'2006-02-15 05:09:17'),(3383,743,1,'2006-02-15 05:09:17'),(3384,743,2,'2006-02-15 05:09:17'),(3385,743,2,'2006-02-15 05:09:17'),(3386,743,2,'2006-02-15 05:09:17'),(3387,743,2,'2006-02-15 05:09:17'),(3388,744,1,'2006-02-15 05:09:17'),(3389,744,1,'2006-02-15 05:09:17'),(3390,744,2,'2006-02-15 05:09:17'),(3391,744,2,'2006-02-15 05:09:17'),(3392,744,2,'2006-02-15 05:09:17'),(3393,745,1,'2006-02-15 05:09:17'),(3394,745,1,'2006-02-15 05:09:17'),(3395,745,1,'2006-02-15 05:09:17'),(3396,745,1,'2006-02-15 05:09:17'),(3397,745,2,'2006-02-15 05:09:17'),(3398,745,2,'2006-02-15 05:09:17'),(3399,745,2,'2006-02-15 05:09:17'),(3400,745,2,'2006-02-15 05:09:17'),(3401,746,1,'2006-02-15 05:09:17'),(3402,746,1,'2006-02-15 05:09:17'),(3403,746,2,'2006-02-15 05:09:17'),(3404,746,2,'2006-02-15 05:09:17'),(3405,746,2,'2006-02-15 05:09:17'),(3406,747,1,'2006-02-15 05:09:17'),(3407,747,1,'2006-02-15 05:09:17'),(3408,747,2,'2006-02-15 05:09:17'),(3409,747,2,'2006-02-15 05:09:17'),(3410,747,2,'2006-02-15 05:09:17'),(3411,748,1,'2006-02-15 05:09:17'),(3412,748,1,'2006-02-15 05:09:17'),(3413,748,1,'2006-02-15 05:09:17'),(3414,748,1,'2006-02-15 05:09:17'),(3415,748,2,'2006-02-15 05:09:17'),(3416,748,2,'2006-02-15 05:09:17'),(3417,748,2,'2006-02-15 05:09:17'),(3418,748,2,'2006-02-15 05:09:17'),(3419,749,1,'2006-02-15 05:09:17'),(3420,749,1,'2006-02-15 05:09:17'),(3421,749,2,'2006-02-15 05:09:17'),(3422,749,2,'2006-02-15 05:09:17'),(3423,750,1,'2006-02-15 05:09:17'),(3424,750,1,'2006-02-15 05:09:17'),(3425,750,1,'2006-02-15 05:09:17'),(3426,751,2,'2006-02-15 05:09:17'),(3427,751,2,'2006-02-15 05:09:17'),(3428,752,2,'2006-02-15 05:09:17'),(3429,752,2,'2006-02-15 05:09:17'),(3430,752,2,'2006-02-15 05:09:17'),(3431,753,1,'2006-02-15 05:09:17'),(3432,753,1,'2006-02-15 05:09:17'),(3433,753,1,'2006-02-15 05:09:17'),(3434,753,1,'2006-02-15 05:09:17'),(3435,753,2,'2006-02-15 05:09:17'),(3436,753,2,'2006-02-15 05:09:17'),(3437,753,2,'2006-02-15 05:09:17'),(3438,753,2,'2006-02-15 05:09:17'),(3439,754,2,'2006-02-15 05:09:17'),(3440,754,2,'2006-02-15 05:09:17'),(3441,755,1,'2006-02-15 05:09:17'),(3442,755,1,'2006-02-15 05:09:17'),(3443,755,1,'2006-02-15 05:09:17'),(3444,755,1,'2006-02-15 05:09:17'),(3445,755,2,'2006-02-15 05:09:17'),(3446,755,2,'2006-02-15 05:09:17'),(3447,755,2,'2006-02-15 05:09:17'),(3448,756,2,'2006-02-15 05:09:17'),(3449,756,2,'2006-02-15 05:09:17'),(3450,756,2,'2006-02-15 05:09:17'),(3451,757,1,'2006-02-15 05:09:17'),(3452,757,1,'2006-02-15 05:09:17'),(3453,757,1,'2006-02-15 05:09:17'),(3454,757,2,'2006-02-15 05:09:17'),(3455,757,2,'2006-02-15 05:09:17'),(3456,758,2,'2006-02-15 05:09:17'),(3457,758,2,'2006-02-15 05:09:17'),(3458,758,2,'2006-02-15 05:09:17'),(3459,759,1,'2006-02-15 05:09:17'),(3460,759,1,'2006-02-15 05:09:17'),(3461,759,2,'2006-02-15 05:09:17'),(3462,759,2,'2006-02-15 05:09:17'),(3463,759,2,'2006-02-15 05:09:17'),(3464,759,2,'2006-02-15 05:09:17'),(3465,760,1,'2006-02-15 05:09:17'),(3466,760,1,'2006-02-15 05:09:17'),(3467,760,1,'2006-02-15 05:09:17'),(3468,760,2,'2006-02-15 05:09:17'),(3469,760,2,'2006-02-15 05:09:17'),(3470,760,2,'2006-02-15 05:09:17'),(3471,760,2,'2006-02-15 05:09:17'),(3472,761,2,'2006-02-15 05:09:17'),(3473,761,2,'2006-02-15 05:09:17'),(3474,761,2,'2006-02-15 05:09:17'),(3475,762,2,'2006-02-15 05:09:17'),(3476,762,2,'2006-02-15 05:09:17'),(3477,762,2,'2006-02-15 05:09:17'),(3478,762,2,'2006-02-15 05:09:17'),(3479,763,1,'2006-02-15 05:09:17'),(3480,763,1,'2006-02-15 05:09:17'),(3481,763,1,'2006-02-15 05:09:17'),(3482,763,2,'2006-02-15 05:09:17'),(3483,763,2,'2006-02-15 05:09:17'),(3484,764,1,'2006-02-15 05:09:17'),(3485,764,1,'2006-02-15 05:09:17'),(3486,764,1,'2006-02-15 05:09:17'),(3487,764,1,'2006-02-15 05:09:17'),(3488,764,2,'2006-02-15 05:09:17'),(3489,764,2,'2006-02-15 05:09:17'),(3490,764,2,'2006-02-15 05:09:17'),(3491,764,2,'2006-02-15 05:09:17'),(3492,765,1,'2006-02-15 05:09:17'),(3493,765,1,'2006-02-15 05:09:17'),(3494,765,1,'2006-02-15 05:09:17'),(3495,765,1,'2006-02-15 05:09:17'),(3496,766,1,'2006-02-15 05:09:17'),(3497,766,1,'2006-02-15 05:09:17'),(3498,766,1,'2006-02-15 05:09:17'),(3499,767,1,'2006-02-15 05:09:17'),(3500,767,1,'2006-02-15 05:09:17'),(3501,767,1,'2006-02-15 05:09:17'),(3502,767,1,'2006-02-15 05:09:17'),(3503,767,2,'2006-02-15 05:09:17'),(3504,767,2,'2006-02-15 05:09:17'),(3505,767,2,'2006-02-15 05:09:17'),(3506,767,2,'2006-02-15 05:09:17'),(3507,768,1,'2006-02-15 05:09:17'),(3508,768,1,'2006-02-15 05:09:17'),(3509,768,1,'2006-02-15 05:09:17'),(3510,768,2,'2006-02-15 05:09:17'),(3511,768,2,'2006-02-15 05:09:17'),(3512,768,2,'2006-02-15 05:09:17'),(3513,769,2,'2006-02-15 05:09:17'),(3514,769,2,'2006-02-15 05:09:17'),(3515,770,2,'2006-02-15 05:09:17'),(3516,770,2,'2006-02-15 05:09:17'),(3517,770,2,'2006-02-15 05:09:17'),(3518,771,1,'2006-02-15 05:09:17'),(3519,771,1,'2006-02-15 05:09:17'),(3520,771,1,'2006-02-15 05:09:17'),(3521,771,2,'2006-02-15 05:09:17'),(3522,771,2,'2006-02-15 05:09:17'),(3523,771,2,'2006-02-15 05:09:17'),(3524,771,2,'2006-02-15 05:09:17'),(3525,772,1,'2006-02-15 05:09:17'),(3526,772,1,'2006-02-15 05:09:17'),(3527,772,1,'2006-02-15 05:09:17'),(3528,772,1,'2006-02-15 05:09:17'),(3529,772,2,'2006-02-15 05:09:17'),(3530,772,2,'2006-02-15 05:09:17'),(3531,773,1,'2006-02-15 05:09:17'),(3532,773,1,'2006-02-15 05:09:17'),(3533,773,1,'2006-02-15 05:09:17'),(3534,773,1,'2006-02-15 05:09:17'),(3535,773,2,'2006-02-15 05:09:17'),(3536,773,2,'2006-02-15 05:09:17'),(3537,773,2,'2006-02-15 05:09:17'),(3538,773,2,'2006-02-15 05:09:17'),(3539,774,1,'2006-02-15 05:09:17'),(3540,774,1,'2006-02-15 05:09:17'),(3541,774,1,'2006-02-15 05:09:17'),(3542,774,1,'2006-02-15 05:09:17'),(3543,775,1,'2006-02-15 05:09:17'),(3544,775,1,'2006-02-15 05:09:17'),(3545,775,1,'2006-02-15 05:09:17'),(3546,775,2,'2006-02-15 05:09:17'),(3547,775,2,'2006-02-15 05:09:17'),(3548,776,1,'2006-02-15 05:09:17'),(3549,776,1,'2006-02-15 05:09:17'),(3550,776,2,'2006-02-15 05:09:17'),(3551,776,2,'2006-02-15 05:09:17'),(3552,776,2,'2006-02-15 05:09:17'),(3553,777,1,'2006-02-15 05:09:17'),(3554,777,1,'2006-02-15 05:09:17'),(3555,777,1,'2006-02-15 05:09:17'),(3556,777,2,'2006-02-15 05:09:17'),(3557,777,2,'2006-02-15 05:09:17'),(3558,777,2,'2006-02-15 05:09:17'),(3559,778,1,'2006-02-15 05:09:17'),(3560,778,1,'2006-02-15 05:09:17'),(3561,778,1,'2006-02-15 05:09:17'),(3562,778,1,'2006-02-15 05:09:17'),(3563,778,2,'2006-02-15 05:09:17'),(3564,778,2,'2006-02-15 05:09:17'),(3565,779,2,'2006-02-15 05:09:17'),(3566,779,2,'2006-02-15 05:09:17'),(3567,780,2,'2006-02-15 05:09:17'),(3568,780,2,'2006-02-15 05:09:17'),(3569,780,2,'2006-02-15 05:09:17'),(3570,781,2,'2006-02-15 05:09:17'),(3571,781,2,'2006-02-15 05:09:17'),(3572,782,1,'2006-02-15 05:09:17'),(3573,782,1,'2006-02-15 05:09:17'),(3574,782,1,'2006-02-15 05:09:17'),(3575,782,2,'2006-02-15 05:09:17'),(3576,782,2,'2006-02-15 05:09:17'),(3577,782,2,'2006-02-15 05:09:17'),(3578,783,1,'2006-02-15 05:09:17'),(3579,783,1,'2006-02-15 05:09:17'),(3580,783,1,'2006-02-15 05:09:17'),(3581,783,1,'2006-02-15 05:09:17'),(3582,784,1,'2006-02-15 05:09:17'),(3583,784,1,'2006-02-15 05:09:17'),(3584,784,1,'2006-02-15 05:09:17'),(3585,784,2,'2006-02-15 05:09:17'),(3586,784,2,'2006-02-15 05:09:17'),(3587,784,2,'2006-02-15 05:09:17'),(3588,785,1,'2006-02-15 05:09:17'),(3589,785,1,'2006-02-15 05:09:17'),(3590,785,1,'2006-02-15 05:09:17'),(3591,785,1,'2006-02-15 05:09:17'),(3592,785,2,'2006-02-15 05:09:17'),(3593,785,2,'2006-02-15 05:09:17'),(3594,786,1,'2006-02-15 05:09:17'),(3595,786,1,'2006-02-15 05:09:17'),(3596,786,1,'2006-02-15 05:09:17'),(3597,786,2,'2006-02-15 05:09:17'),(3598,786,2,'2006-02-15 05:09:17'),(3599,786,2,'2006-02-15 05:09:17'),(3600,786,2,'2006-02-15 05:09:17'),(3601,787,1,'2006-02-15 05:09:17'),(3602,787,1,'2006-02-15 05:09:17'),(3603,787,1,'2006-02-15 05:09:17'),(3604,788,1,'2006-02-15 05:09:17'),(3605,788,1,'2006-02-15 05:09:17'),(3606,788,2,'2006-02-15 05:09:17'),(3607,788,2,'2006-02-15 05:09:17'),(3608,789,1,'2006-02-15 05:09:17'),(3609,789,1,'2006-02-15 05:09:17'),(3610,789,1,'2006-02-15 05:09:17'),(3611,789,1,'2006-02-15 05:09:17'),(3612,789,2,'2006-02-15 05:09:17'),(3613,789,2,'2006-02-15 05:09:17'),(3614,789,2,'2006-02-15 05:09:17'),(3615,789,2,'2006-02-15 05:09:17'),(3616,790,1,'2006-02-15 05:09:17'),(3617,790,1,'2006-02-15 05:09:17'),(3618,790,1,'2006-02-15 05:09:17'),(3619,790,1,'2006-02-15 05:09:17'),(3620,790,2,'2006-02-15 05:09:17'),(3621,790,2,'2006-02-15 05:09:17'),(3622,790,2,'2006-02-15 05:09:17'),(3623,791,1,'2006-02-15 05:09:17'),(3624,791,1,'2006-02-15 05:09:17'),(3625,791,2,'2006-02-15 05:09:17'),(3626,791,2,'2006-02-15 05:09:17'),(3627,791,2,'2006-02-15 05:09:17'),(3628,791,2,'2006-02-15 05:09:17'),(3629,792,2,'2006-02-15 05:09:17'),(3630,792,2,'2006-02-15 05:09:17'),(3631,792,2,'2006-02-15 05:09:17'),(3632,793,1,'2006-02-15 05:09:17'),(3633,793,1,'2006-02-15 05:09:17'),(3634,793,1,'2006-02-15 05:09:17'),(3635,793,1,'2006-02-15 05:09:17'),(3636,794,1,'2006-02-15 05:09:17'),(3637,794,1,'2006-02-15 05:09:17'),(3638,794,2,'2006-02-15 05:09:17'),(3639,794,2,'2006-02-15 05:09:17'),(3640,795,1,'2006-02-15 05:09:17'),(3641,795,1,'2006-02-15 05:09:17'),(3642,795,1,'2006-02-15 05:09:17'),(3643,795,1,'2006-02-15 05:09:17'),(3644,796,1,'2006-02-15 05:09:17'),(3645,796,1,'2006-02-15 05:09:17'),(3646,796,2,'2006-02-15 05:09:17'),(3647,796,2,'2006-02-15 05:09:17'),(3648,796,2,'2006-02-15 05:09:17'),(3649,797,1,'2006-02-15 05:09:17'),(3650,797,1,'2006-02-15 05:09:17'),(3651,797,2,'2006-02-15 05:09:17'),(3652,797,2,'2006-02-15 05:09:17'),(3653,797,2,'2006-02-15 05:09:17'),(3654,798,1,'2006-02-15 05:09:17'),(3655,798,1,'2006-02-15 05:09:17'),(3656,798,2,'2006-02-15 05:09:17'),(3657,798,2,'2006-02-15 05:09:17'),(3658,799,1,'2006-02-15 05:09:17'),(3659,799,1,'2006-02-15 05:09:17'),(3660,800,1,'2006-02-15 05:09:17'),(3661,800,1,'2006-02-15 05:09:17'),(3662,800,2,'2006-02-15 05:09:17'),(3663,800,2,'2006-02-15 05:09:17'),(3664,800,2,'2006-02-15 05:09:17'),(3665,800,2,'2006-02-15 05:09:17'),(3666,803,1,'2006-02-15 05:09:17'),(3667,803,1,'2006-02-15 05:09:17'),(3668,803,1,'2006-02-15 05:09:17'),(3669,803,1,'2006-02-15 05:09:17'),(3670,803,2,'2006-02-15 05:09:17'),(3671,803,2,'2006-02-15 05:09:17'),(3672,804,1,'2006-02-15 05:09:17'),(3673,804,1,'2006-02-15 05:09:17'),(3674,804,1,'2006-02-15 05:09:17'),(3675,804,1,'2006-02-15 05:09:17'),(3676,804,2,'2006-02-15 05:09:17'),(3677,804,2,'2006-02-15 05:09:17'),(3678,804,2,'2006-02-15 05:09:17'),(3679,805,1,'2006-02-15 05:09:17'),(3680,805,1,'2006-02-15 05:09:17'),(3681,805,2,'2006-02-15 05:09:17'),(3682,805,2,'2006-02-15 05:09:17'),(3683,805,2,'2006-02-15 05:09:17'),(3684,806,1,'2006-02-15 05:09:17'),(3685,806,1,'2006-02-15 05:09:17'),(3686,806,1,'2006-02-15 05:09:17'),(3687,806,2,'2006-02-15 05:09:17'),(3688,806,2,'2006-02-15 05:09:17'),(3689,807,1,'2006-02-15 05:09:17'),(3690,807,1,'2006-02-15 05:09:17'),(3691,807,1,'2006-02-15 05:09:17'),(3692,807,2,'2006-02-15 05:09:17'),(3693,807,2,'2006-02-15 05:09:17'),(3694,808,2,'2006-02-15 05:09:17'),(3695,808,2,'2006-02-15 05:09:17'),(3696,809,2,'2006-02-15 05:09:17'),(3697,809,2,'2006-02-15 05:09:17'),(3698,809,2,'2006-02-15 05:09:17'),(3699,809,2,'2006-02-15 05:09:17'),(3700,810,1,'2006-02-15 05:09:17'),(3701,810,1,'2006-02-15 05:09:17'),(3702,810,1,'2006-02-15 05:09:17'),(3703,810,1,'2006-02-15 05:09:17'),(3704,810,2,'2006-02-15 05:09:17'),(3705,810,2,'2006-02-15 05:09:17'),(3706,810,2,'2006-02-15 05:09:17'),(3707,811,1,'2006-02-15 05:09:17'),(3708,811,1,'2006-02-15 05:09:17'),(3709,811,1,'2006-02-15 05:09:17'),(3710,812,1,'2006-02-15 05:09:17'),(3711,812,1,'2006-02-15 05:09:17'),(3712,812,1,'2006-02-15 05:09:17'),(3713,812,2,'2006-02-15 05:09:17'),(3714,812,2,'2006-02-15 05:09:17'),(3715,812,2,'2006-02-15 05:09:17'),(3716,813,2,'2006-02-15 05:09:17'),(3717,813,2,'2006-02-15 05:09:17'),(3718,813,2,'2006-02-15 05:09:17'),(3719,813,2,'2006-02-15 05:09:17'),(3720,814,1,'2006-02-15 05:09:17'),(3721,814,1,'2006-02-15 05:09:17'),(3722,814,1,'2006-02-15 05:09:17'),(3723,814,2,'2006-02-15 05:09:17'),(3724,814,2,'2006-02-15 05:09:17'),(3725,814,2,'2006-02-15 05:09:17'),(3726,814,2,'2006-02-15 05:09:17'),(3727,815,1,'2006-02-15 05:09:17'),(3728,815,1,'2006-02-15 05:09:17'),(3729,815,1,'2006-02-15 05:09:17'),(3730,816,1,'2006-02-15 05:09:17'),(3731,816,1,'2006-02-15 05:09:17'),(3732,816,1,'2006-02-15 05:09:17'),(3733,816,1,'2006-02-15 05:09:17'),(3734,816,2,'2006-02-15 05:09:17'),(3735,816,2,'2006-02-15 05:09:17'),(3736,816,2,'2006-02-15 05:09:17'),(3737,817,1,'2006-02-15 05:09:17'),(3738,817,1,'2006-02-15 05:09:17'),(3739,818,1,'2006-02-15 05:09:17'),(3740,818,1,'2006-02-15 05:09:17'),(3741,818,1,'2006-02-15 05:09:17'),(3742,818,2,'2006-02-15 05:09:17'),(3743,818,2,'2006-02-15 05:09:17'),(3744,819,1,'2006-02-15 05:09:17'),(3745,819,1,'2006-02-15 05:09:17'),(3746,819,1,'2006-02-15 05:09:17'),(3747,820,1,'2006-02-15 05:09:17'),(3748,820,1,'2006-02-15 05:09:17'),(3749,820,1,'2006-02-15 05:09:17'),(3750,820,1,'2006-02-15 05:09:17'),(3751,820,2,'2006-02-15 05:09:17'),(3752,820,2,'2006-02-15 05:09:17'),(3753,821,2,'2006-02-15 05:09:17'),(3754,821,2,'2006-02-15 05:09:17'),(3755,821,2,'2006-02-15 05:09:17'),(3756,821,2,'2006-02-15 05:09:17'),(3757,822,2,'2006-02-15 05:09:17'),(3758,822,2,'2006-02-15 05:09:17'),(3759,823,1,'2006-02-15 05:09:17'),(3760,823,1,'2006-02-15 05:09:17'),(3761,823,1,'2006-02-15 05:09:17'),(3762,823,2,'2006-02-15 05:09:17'),(3763,823,2,'2006-02-15 05:09:17'),(3764,823,2,'2006-02-15 05:09:17'),(3765,823,2,'2006-02-15 05:09:17'),(3766,824,2,'2006-02-15 05:09:17'),(3767,824,2,'2006-02-15 05:09:17'),(3768,824,2,'2006-02-15 05:09:17'),(3769,824,2,'2006-02-15 05:09:17'),(3770,825,1,'2006-02-15 05:09:17'),(3771,825,1,'2006-02-15 05:09:17'),(3772,825,1,'2006-02-15 05:09:17'),(3773,826,2,'2006-02-15 05:09:17'),(3774,826,2,'2006-02-15 05:09:17'),(3775,827,1,'2006-02-15 05:09:17'),(3776,827,1,'2006-02-15 05:09:17'),(3777,827,2,'2006-02-15 05:09:17'),(3778,827,2,'2006-02-15 05:09:17'),(3779,827,2,'2006-02-15 05:09:17'),(3780,827,2,'2006-02-15 05:09:17'),(3781,828,2,'2006-02-15 05:09:17'),(3782,828,2,'2006-02-15 05:09:17'),(3783,828,2,'2006-02-15 05:09:17'),(3784,828,2,'2006-02-15 05:09:17'),(3785,829,1,'2006-02-15 05:09:17'),(3786,829,1,'2006-02-15 05:09:17'),(3787,829,2,'2006-02-15 05:09:17'),(3788,829,2,'2006-02-15 05:09:17'),(3789,829,2,'2006-02-15 05:09:17'),(3790,830,2,'2006-02-15 05:09:17'),(3791,830,2,'2006-02-15 05:09:17'),(3792,830,2,'2006-02-15 05:09:17'),(3793,830,2,'2006-02-15 05:09:17'),(3794,831,1,'2006-02-15 05:09:17'),(3795,831,1,'2006-02-15 05:09:17'),(3796,831,1,'2006-02-15 05:09:17'),(3797,832,1,'2006-02-15 05:09:17'),(3798,832,1,'2006-02-15 05:09:17'),(3799,832,1,'2006-02-15 05:09:17'),(3800,832,1,'2006-02-15 05:09:17'),(3801,833,1,'2006-02-15 05:09:17'),(3802,833,1,'2006-02-15 05:09:17'),(3803,833,1,'2006-02-15 05:09:17'),(3804,833,2,'2006-02-15 05:09:17'),(3805,833,2,'2006-02-15 05:09:17'),(3806,833,2,'2006-02-15 05:09:17'),(3807,833,2,'2006-02-15 05:09:17'),(3808,834,2,'2006-02-15 05:09:17'),(3809,834,2,'2006-02-15 05:09:17'),(3810,834,2,'2006-02-15 05:09:17'),(3811,835,1,'2006-02-15 05:09:17'),(3812,835,1,'2006-02-15 05:09:17'),(3813,835,1,'2006-02-15 05:09:17'),(3814,835,1,'2006-02-15 05:09:17'),(3815,835,2,'2006-02-15 05:09:17'),(3816,835,2,'2006-02-15 05:09:17'),(3817,835,2,'2006-02-15 05:09:17'),(3818,835,2,'2006-02-15 05:09:17'),(3819,836,1,'2006-02-15 05:09:17'),(3820,836,1,'2006-02-15 05:09:17'),(3821,836,1,'2006-02-15 05:09:17'),(3822,837,2,'2006-02-15 05:09:17'),(3823,837,2,'2006-02-15 05:09:17'),(3824,837,2,'2006-02-15 05:09:17'),(3825,838,1,'2006-02-15 05:09:17'),(3826,838,1,'2006-02-15 05:09:17'),(3827,838,2,'2006-02-15 05:09:17'),(3828,838,2,'2006-02-15 05:09:17'),(3829,838,2,'2006-02-15 05:09:17'),(3830,838,2,'2006-02-15 05:09:17'),(3831,839,2,'2006-02-15 05:09:17'),(3832,839,2,'2006-02-15 05:09:17'),(3833,840,1,'2006-02-15 05:09:17'),(3834,840,1,'2006-02-15 05:09:17'),(3835,840,1,'2006-02-15 05:09:17'),(3836,840,1,'2006-02-15 05:09:17'),(3837,841,1,'2006-02-15 05:09:17'),(3838,841,1,'2006-02-15 05:09:17'),(3839,841,1,'2006-02-15 05:09:17'),(3840,841,2,'2006-02-15 05:09:17'),(3841,841,2,'2006-02-15 05:09:17'),(3842,841,2,'2006-02-15 05:09:17'),(3843,841,2,'2006-02-15 05:09:17'),(3844,842,1,'2006-02-15 05:09:17'),(3845,842,1,'2006-02-15 05:09:17'),(3846,842,2,'2006-02-15 05:09:17'),(3847,842,2,'2006-02-15 05:09:17'),(3848,843,1,'2006-02-15 05:09:17'),(3849,843,1,'2006-02-15 05:09:17'),(3850,843,1,'2006-02-15 05:09:17'),(3851,843,1,'2006-02-15 05:09:17'),(3852,843,2,'2006-02-15 05:09:17'),(3853,843,2,'2006-02-15 05:09:17'),(3854,843,2,'2006-02-15 05:09:17'),(3855,844,1,'2006-02-15 05:09:17'),(3856,844,1,'2006-02-15 05:09:17'),(3857,844,2,'2006-02-15 05:09:17'),(3858,844,2,'2006-02-15 05:09:17'),(3859,845,1,'2006-02-15 05:09:17'),(3860,845,1,'2006-02-15 05:09:17'),(3861,845,1,'2006-02-15 05:09:17'),(3862,845,1,'2006-02-15 05:09:17'),(3863,845,2,'2006-02-15 05:09:17'),(3864,845,2,'2006-02-15 05:09:17'),(3865,845,2,'2006-02-15 05:09:17'),(3866,846,1,'2006-02-15 05:09:17'),(3867,846,1,'2006-02-15 05:09:17'),(3868,846,1,'2006-02-15 05:09:17'),(3869,846,1,'2006-02-15 05:09:17'),(3870,846,2,'2006-02-15 05:09:17'),(3871,846,2,'2006-02-15 05:09:17'),(3872,846,2,'2006-02-15 05:09:17'),(3873,846,2,'2006-02-15 05:09:17'),(3874,847,2,'2006-02-15 05:09:17'),(3875,847,2,'2006-02-15 05:09:17'),(3876,847,2,'2006-02-15 05:09:17'),(3877,847,2,'2006-02-15 05:09:17'),(3878,848,1,'2006-02-15 05:09:17'),(3879,848,1,'2006-02-15 05:09:17'),(3880,848,1,'2006-02-15 05:09:17'),(3881,849,1,'2006-02-15 05:09:17'),(3882,849,1,'2006-02-15 05:09:17'),(3883,849,1,'2006-02-15 05:09:17'),(3884,849,1,'2006-02-15 05:09:17'),(3885,849,2,'2006-02-15 05:09:17'),(3886,849,2,'2006-02-15 05:09:17'),(3887,849,2,'2006-02-15 05:09:17'),(3888,849,2,'2006-02-15 05:09:17'),(3889,850,1,'2006-02-15 05:09:17'),(3890,850,1,'2006-02-15 05:09:17'),(3891,850,1,'2006-02-15 05:09:17'),(3892,850,2,'2006-02-15 05:09:17'),(3893,850,2,'2006-02-15 05:09:17'),(3894,850,2,'2006-02-15 05:09:17'),(3895,850,2,'2006-02-15 05:09:17'),(3896,851,1,'2006-02-15 05:09:17'),(3897,851,1,'2006-02-15 05:09:17'),(3898,851,1,'2006-02-15 05:09:17'),(3899,851,2,'2006-02-15 05:09:17'),(3900,851,2,'2006-02-15 05:09:17'),(3901,851,2,'2006-02-15 05:09:17'),(3902,852,1,'2006-02-15 05:09:17'),(3903,852,1,'2006-02-15 05:09:17'),(3904,852,1,'2006-02-15 05:09:17'),(3905,852,1,'2006-02-15 05:09:17'),(3906,852,2,'2006-02-15 05:09:17'),(3907,852,2,'2006-02-15 05:09:17'),(3908,852,2,'2006-02-15 05:09:17'),(3909,853,1,'2006-02-15 05:09:17'),(3910,853,1,'2006-02-15 05:09:17'),(3911,853,1,'2006-02-15 05:09:17'),(3912,854,2,'2006-02-15 05:09:17'),(3913,854,2,'2006-02-15 05:09:17'),(3914,854,2,'2006-02-15 05:09:17'),(3915,854,2,'2006-02-15 05:09:17'),(3916,855,1,'2006-02-15 05:09:17'),(3917,855,1,'2006-02-15 05:09:17'),(3918,855,2,'2006-02-15 05:09:17'),(3919,855,2,'2006-02-15 05:09:17'),(3920,856,1,'2006-02-15 05:09:17'),(3921,856,1,'2006-02-15 05:09:17'),(3922,856,1,'2006-02-15 05:09:17'),(3923,856,1,'2006-02-15 05:09:17'),(3924,856,2,'2006-02-15 05:09:17'),(3925,856,2,'2006-02-15 05:09:17'),(3926,856,2,'2006-02-15 05:09:17'),(3927,856,2,'2006-02-15 05:09:17'),(3928,857,1,'2006-02-15 05:09:17'),(3929,857,1,'2006-02-15 05:09:17'),(3930,857,1,'2006-02-15 05:09:17'),(3931,857,2,'2006-02-15 05:09:17'),(3932,857,2,'2006-02-15 05:09:17'),(3933,857,2,'2006-02-15 05:09:17'),(3934,857,2,'2006-02-15 05:09:17'),(3935,858,2,'2006-02-15 05:09:17'),(3936,858,2,'2006-02-15 05:09:17'),(3937,858,2,'2006-02-15 05:09:17'),(3938,858,2,'2006-02-15 05:09:17'),(3939,859,1,'2006-02-15 05:09:17'),(3940,859,1,'2006-02-15 05:09:17'),(3941,859,1,'2006-02-15 05:09:17'),(3942,859,2,'2006-02-15 05:09:17'),(3943,859,2,'2006-02-15 05:09:17'),(3944,859,2,'2006-02-15 05:09:17'),(3945,861,1,'2006-02-15 05:09:17'),(3946,861,1,'2006-02-15 05:09:17'),(3947,861,1,'2006-02-15 05:09:17'),(3948,861,2,'2006-02-15 05:09:17'),(3949,861,2,'2006-02-15 05:09:17'),(3950,861,2,'2006-02-15 05:09:17'),(3951,862,1,'2006-02-15 05:09:17'),(3952,862,1,'2006-02-15 05:09:17'),(3953,862,1,'2006-02-15 05:09:17'),(3954,862,2,'2006-02-15 05:09:17'),(3955,862,2,'2006-02-15 05:09:17'),(3956,863,1,'2006-02-15 05:09:17'),(3957,863,1,'2006-02-15 05:09:17'),(3958,863,1,'2006-02-15 05:09:17'),(3959,863,1,'2006-02-15 05:09:17'),(3960,863,2,'2006-02-15 05:09:17'),(3961,863,2,'2006-02-15 05:09:17'),(3962,863,2,'2006-02-15 05:09:17'),(3963,864,1,'2006-02-15 05:09:17'),(3964,864,1,'2006-02-15 05:09:17'),(3965,864,1,'2006-02-15 05:09:17'),(3966,864,1,'2006-02-15 05:09:17'),(3967,864,2,'2006-02-15 05:09:17'),(3968,864,2,'2006-02-15 05:09:17'),(3969,865,1,'2006-02-15 05:09:17'),(3970,865,1,'2006-02-15 05:09:17'),(3971,865,1,'2006-02-15 05:09:17'),(3972,865,1,'2006-02-15 05:09:17'),(3973,865,2,'2006-02-15 05:09:17'),(3974,865,2,'2006-02-15 05:09:17'),(3975,866,2,'2006-02-15 05:09:17'),(3976,866,2,'2006-02-15 05:09:17'),(3977,867,1,'2006-02-15 05:09:17'),(3978,867,1,'2006-02-15 05:09:17'),(3979,867,1,'2006-02-15 05:09:17'),(3980,867,1,'2006-02-15 05:09:17'),(3981,868,1,'2006-02-15 05:09:17'),(3982,868,1,'2006-02-15 05:09:17'),(3983,868,1,'2006-02-15 05:09:17'),(3984,869,1,'2006-02-15 05:09:17'),(3985,869,1,'2006-02-15 05:09:17'),(3986,869,1,'2006-02-15 05:09:17'),(3987,869,1,'2006-02-15 05:09:17'),(3988,869,2,'2006-02-15 05:09:17'),(3989,869,2,'2006-02-15 05:09:17'),(3990,869,2,'2006-02-15 05:09:17'),(3991,870,1,'2006-02-15 05:09:17'),(3992,870,1,'2006-02-15 05:09:17'),(3993,870,1,'2006-02-15 05:09:17'),(3994,870,1,'2006-02-15 05:09:17'),(3995,870,2,'2006-02-15 05:09:17'),(3996,870,2,'2006-02-15 05:09:17'),(3997,870,2,'2006-02-15 05:09:17'),(3998,870,2,'2006-02-15 05:09:17'),(3999,871,1,'2006-02-15 05:09:17'),(4000,871,1,'2006-02-15 05:09:17'),(4001,871,2,'2006-02-15 05:09:17'),(4002,871,2,'2006-02-15 05:09:17'),(4003,871,2,'2006-02-15 05:09:17'),(4004,872,2,'2006-02-15 05:09:17'),(4005,872,2,'2006-02-15 05:09:17'),(4006,872,2,'2006-02-15 05:09:17'),(4007,873,1,'2006-02-15 05:09:17'),(4008,873,1,'2006-02-15 05:09:17'),(4009,873,1,'2006-02-15 05:09:17'),(4010,873,1,'2006-02-15 05:09:17'),(4011,873,2,'2006-02-15 05:09:17'),(4012,873,2,'2006-02-15 05:09:17'),(4013,873,2,'2006-02-15 05:09:17'),(4014,873,2,'2006-02-15 05:09:17'),(4015,875,1,'2006-02-15 05:09:17'),(4016,875,1,'2006-02-15 05:09:17'),(4017,875,1,'2006-02-15 05:09:17'),(4018,875,2,'2006-02-15 05:09:17'),(4019,875,2,'2006-02-15 05:09:17'),(4020,875,2,'2006-02-15 05:09:17'),(4021,875,2,'2006-02-15 05:09:17'),(4022,876,1,'2006-02-15 05:09:17'),(4023,876,1,'2006-02-15 05:09:17'),(4024,877,1,'2006-02-15 05:09:17'),(4025,877,1,'2006-02-15 05:09:17'),(4026,877,1,'2006-02-15 05:09:17'),(4027,877,2,'2006-02-15 05:09:17'),(4028,877,2,'2006-02-15 05:09:17'),(4029,878,2,'2006-02-15 05:09:17'),(4030,878,2,'2006-02-15 05:09:17'),(4031,878,2,'2006-02-15 05:09:17'),(4032,878,2,'2006-02-15 05:09:17'),(4033,879,1,'2006-02-15 05:09:17'),(4034,879,1,'2006-02-15 05:09:17'),(4035,879,1,'2006-02-15 05:09:17'),(4036,879,1,'2006-02-15 05:09:17'),(4037,879,2,'2006-02-15 05:09:17'),(4038,879,2,'2006-02-15 05:09:17'),(4039,879,2,'2006-02-15 05:09:17'),(4040,880,1,'2006-02-15 05:09:17'),(4041,880,1,'2006-02-15 05:09:17'),(4042,880,1,'2006-02-15 05:09:17'),(4043,880,1,'2006-02-15 05:09:17'),(4044,880,2,'2006-02-15 05:09:17'),(4045,880,2,'2006-02-15 05:09:17'),(4046,880,2,'2006-02-15 05:09:17'),(4047,880,2,'2006-02-15 05:09:17'),(4048,881,2,'2006-02-15 05:09:17'),(4049,881,2,'2006-02-15 05:09:17'),(4050,881,2,'2006-02-15 05:09:17'),(4051,881,2,'2006-02-15 05:09:17'),(4052,882,1,'2006-02-15 05:09:17'),(4053,882,1,'2006-02-15 05:09:17'),(4054,882,1,'2006-02-15 05:09:17'),(4055,882,1,'2006-02-15 05:09:17'),(4056,883,2,'2006-02-15 05:09:17'),(4057,883,2,'2006-02-15 05:09:17'),(4058,884,2,'2006-02-15 05:09:17'),(4059,884,2,'2006-02-15 05:09:17'),(4060,884,2,'2006-02-15 05:09:17'),(4061,885,1,'2006-02-15 05:09:17'),(4062,885,1,'2006-02-15 05:09:17'),(4063,886,1,'2006-02-15 05:09:17'),(4064,886,1,'2006-02-15 05:09:17'),(4065,886,1,'2006-02-15 05:09:17'),(4066,886,1,'2006-02-15 05:09:17'),(4067,887,1,'2006-02-15 05:09:17'),(4068,887,1,'2006-02-15 05:09:17'),(4069,887,1,'2006-02-15 05:09:17'),(4070,887,1,'2006-02-15 05:09:17'),(4071,887,2,'2006-02-15 05:09:17'),(4072,887,2,'2006-02-15 05:09:17'),(4073,888,1,'2006-02-15 05:09:17'),(4074,888,1,'2006-02-15 05:09:17'),(4075,888,1,'2006-02-15 05:09:17'),(4076,888,1,'2006-02-15 05:09:17'),(4077,889,1,'2006-02-15 05:09:17'),(4078,889,1,'2006-02-15 05:09:17'),(4079,889,1,'2006-02-15 05:09:17'),(4080,890,1,'2006-02-15 05:09:17'),(4081,890,1,'2006-02-15 05:09:17'),(4082,890,1,'2006-02-15 05:09:17'),(4083,890,2,'2006-02-15 05:09:17'),(4084,890,2,'2006-02-15 05:09:17'),(4085,890,2,'2006-02-15 05:09:17'),(4086,890,2,'2006-02-15 05:09:17'),(4087,891,1,'2006-02-15 05:09:17'),(4088,891,1,'2006-02-15 05:09:17'),(4089,891,1,'2006-02-15 05:09:17'),(4090,891,2,'2006-02-15 05:09:17'),(4091,891,2,'2006-02-15 05:09:17'),(4092,891,2,'2006-02-15 05:09:17'),(4093,891,2,'2006-02-15 05:09:17'),(4094,892,1,'2006-02-15 05:09:17'),(4095,892,1,'2006-02-15 05:09:17'),(4096,892,1,'2006-02-15 05:09:17'),(4097,892,2,'2006-02-15 05:09:17'),(4098,892,2,'2006-02-15 05:09:17'),(4099,892,2,'2006-02-15 05:09:17'),(4100,892,2,'2006-02-15 05:09:17'),(4101,893,1,'2006-02-15 05:09:17'),(4102,893,1,'2006-02-15 05:09:17'),(4103,893,1,'2006-02-15 05:09:17'),(4104,893,1,'2006-02-15 05:09:17'),(4105,893,2,'2006-02-15 05:09:17'),(4106,893,2,'2006-02-15 05:09:17'),(4107,893,2,'2006-02-15 05:09:17'),(4108,893,2,'2006-02-15 05:09:17'),(4109,894,1,'2006-02-15 05:09:17'),(4110,894,1,'2006-02-15 05:09:17'),(4111,894,1,'2006-02-15 05:09:17'),(4112,894,2,'2006-02-15 05:09:17'),(4113,894,2,'2006-02-15 05:09:17'),(4114,895,1,'2006-02-15 05:09:17'),(4115,895,1,'2006-02-15 05:09:17'),(4116,895,1,'2006-02-15 05:09:17'),(4117,895,1,'2006-02-15 05:09:17'),(4118,895,2,'2006-02-15 05:09:17'),(4119,895,2,'2006-02-15 05:09:17'),(4120,895,2,'2006-02-15 05:09:17'),(4121,896,1,'2006-02-15 05:09:17'),(4122,896,1,'2006-02-15 05:09:17'),(4123,896,2,'2006-02-15 05:09:17'),(4124,896,2,'2006-02-15 05:09:17'),(4125,897,1,'2006-02-15 05:09:17'),(4126,897,1,'2006-02-15 05:09:17'),(4127,897,1,'2006-02-15 05:09:17'),(4128,897,1,'2006-02-15 05:09:17'),(4129,897,2,'2006-02-15 05:09:17'),(4130,897,2,'2006-02-15 05:09:17'),(4131,897,2,'2006-02-15 05:09:17'),(4132,897,2,'2006-02-15 05:09:17'),(4133,898,1,'2006-02-15 05:09:17'),(4134,898,1,'2006-02-15 05:09:17'),(4135,898,1,'2006-02-15 05:09:17'),(4136,898,2,'2006-02-15 05:09:17'),(4137,898,2,'2006-02-15 05:09:17'),(4138,899,1,'2006-02-15 05:09:17'),(4139,899,1,'2006-02-15 05:09:17'),(4140,899,1,'2006-02-15 05:09:17'),(4141,900,1,'2006-02-15 05:09:17'),(4142,900,1,'2006-02-15 05:09:17'),(4143,900,2,'2006-02-15 05:09:17'),(4144,900,2,'2006-02-15 05:09:17'),(4145,901,1,'2006-02-15 05:09:17'),(4146,901,1,'2006-02-15 05:09:17'),(4147,901,1,'2006-02-15 05:09:17'),(4148,901,1,'2006-02-15 05:09:17'),(4149,901,2,'2006-02-15 05:09:17'),(4150,901,2,'2006-02-15 05:09:17'),(4151,901,2,'2006-02-15 05:09:17'),(4152,902,1,'2006-02-15 05:09:17'),(4153,902,1,'2006-02-15 05:09:17'),(4154,902,1,'2006-02-15 05:09:17'),(4155,902,1,'2006-02-15 05:09:17'),(4156,902,2,'2006-02-15 05:09:17'),(4157,902,2,'2006-02-15 05:09:17'),(4158,902,2,'2006-02-15 05:09:17'),(4159,903,2,'2006-02-15 05:09:17'),(4160,903,2,'2006-02-15 05:09:17'),(4161,904,1,'2006-02-15 05:09:17'),(4162,904,1,'2006-02-15 05:09:17'),(4163,905,1,'2006-02-15 05:09:17'),(4164,905,1,'2006-02-15 05:09:17'),(4165,905,1,'2006-02-15 05:09:17'),(4166,906,1,'2006-02-15 05:09:17'),(4167,906,1,'2006-02-15 05:09:17'),(4168,906,2,'2006-02-15 05:09:17'),(4169,906,2,'2006-02-15 05:09:17'),(4170,906,2,'2006-02-15 05:09:17'),(4171,907,1,'2006-02-15 05:09:17'),(4172,907,1,'2006-02-15 05:09:17'),(4173,907,1,'2006-02-15 05:09:17'),(4174,907,1,'2006-02-15 05:09:17'),(4175,908,1,'2006-02-15 05:09:17'),(4176,908,1,'2006-02-15 05:09:17'),(4177,908,2,'2006-02-15 05:09:17'),(4178,908,2,'2006-02-15 05:09:17'),(4179,910,2,'2006-02-15 05:09:17'),(4180,910,2,'2006-02-15 05:09:17'),(4181,911,1,'2006-02-15 05:09:17'),(4182,911,1,'2006-02-15 05:09:17'),(4183,911,1,'2006-02-15 05:09:17'),(4184,911,1,'2006-02-15 05:09:17'),(4185,911,2,'2006-02-15 05:09:17'),(4186,911,2,'2006-02-15 05:09:17'),(4187,911,2,'2006-02-15 05:09:17'),(4188,911,2,'2006-02-15 05:09:17'),(4189,912,1,'2006-02-15 05:09:17'),(4190,912,1,'2006-02-15 05:09:17'),(4191,912,1,'2006-02-15 05:09:17'),(4192,912,2,'2006-02-15 05:09:17'),(4193,912,2,'2006-02-15 05:09:17'),(4194,912,2,'2006-02-15 05:09:17'),(4195,913,1,'2006-02-15 05:09:17'),(4196,913,1,'2006-02-15 05:09:17'),(4197,913,1,'2006-02-15 05:09:17'),(4198,913,1,'2006-02-15 05:09:17'),(4199,913,2,'2006-02-15 05:09:17'),(4200,913,2,'2006-02-15 05:09:17'),(4201,914,1,'2006-02-15 05:09:17'),(4202,914,1,'2006-02-15 05:09:17'),(4203,914,2,'2006-02-15 05:09:17'),(4204,914,2,'2006-02-15 05:09:17'),(4205,914,2,'2006-02-15 05:09:17'),(4206,914,2,'2006-02-15 05:09:17'),(4207,915,1,'2006-02-15 05:09:17'),(4208,915,1,'2006-02-15 05:09:17'),(4209,915,1,'2006-02-15 05:09:17'),(4210,915,1,'2006-02-15 05:09:17'),(4211,915,2,'2006-02-15 05:09:17'),(4212,915,2,'2006-02-15 05:09:17'),(4213,916,1,'2006-02-15 05:09:17'),(4214,916,1,'2006-02-15 05:09:17'),(4215,916,2,'2006-02-15 05:09:17'),(4216,916,2,'2006-02-15 05:09:17'),(4217,917,1,'2006-02-15 05:09:17'),(4218,917,1,'2006-02-15 05:09:17'),(4219,917,1,'2006-02-15 05:09:17'),(4220,917,2,'2006-02-15 05:09:17'),(4221,917,2,'2006-02-15 05:09:17'),(4222,918,2,'2006-02-15 05:09:17'),(4223,918,2,'2006-02-15 05:09:17'),(4224,918,2,'2006-02-15 05:09:17'),(4225,918,2,'2006-02-15 05:09:17'),(4226,919,1,'2006-02-15 05:09:17'),(4227,919,1,'2006-02-15 05:09:17'),(4228,919,1,'2006-02-15 05:09:17'),(4229,919,1,'2006-02-15 05:09:17'),(4230,920,1,'2006-02-15 05:09:17'),(4231,920,1,'2006-02-15 05:09:17'),(4232,920,1,'2006-02-15 05:09:17'),(4233,920,2,'2006-02-15 05:09:17'),(4234,920,2,'2006-02-15 05:09:17'),(4235,921,1,'2006-02-15 05:09:17'),(4236,921,1,'2006-02-15 05:09:17'),(4237,921,2,'2006-02-15 05:09:17'),(4238,921,2,'2006-02-15 05:09:17'),(4239,922,1,'2006-02-15 05:09:17'),(4240,922,1,'2006-02-15 05:09:17'),(4241,922,1,'2006-02-15 05:09:17'),(4242,922,2,'2006-02-15 05:09:17'),(4243,922,2,'2006-02-15 05:09:17'),(4244,922,2,'2006-02-15 05:09:17'),(4245,922,2,'2006-02-15 05:09:17'),(4246,923,2,'2006-02-15 05:09:17'),(4247,923,2,'2006-02-15 05:09:17'),(4248,923,2,'2006-02-15 05:09:17'),(4249,924,1,'2006-02-15 05:09:17'),(4250,924,1,'2006-02-15 05:09:17'),(4251,924,2,'2006-02-15 05:09:17'),(4252,924,2,'2006-02-15 05:09:17'),(4253,924,2,'2006-02-15 05:09:17'),(4254,925,1,'2006-02-15 05:09:17'),(4255,925,1,'2006-02-15 05:09:17'),(4256,925,1,'2006-02-15 05:09:17'),(4257,925,2,'2006-02-15 05:09:17'),(4258,925,2,'2006-02-15 05:09:17'),(4259,926,2,'2006-02-15 05:09:17'),(4260,926,2,'2006-02-15 05:09:17'),(4261,927,1,'2006-02-15 05:09:17'),(4262,927,1,'2006-02-15 05:09:17'),(4263,927,1,'2006-02-15 05:09:17'),(4264,927,1,'2006-02-15 05:09:17'),(4265,928,1,'2006-02-15 05:09:17'),(4266,928,1,'2006-02-15 05:09:17'),(4267,928,1,'2006-02-15 05:09:17'),(4268,929,1,'2006-02-15 05:09:17'),(4269,929,1,'2006-02-15 05:09:17'),(4270,929,1,'2006-02-15 05:09:17'),(4271,929,1,'2006-02-15 05:09:17'),(4272,930,1,'2006-02-15 05:09:17'),(4273,930,1,'2006-02-15 05:09:17'),(4274,930,1,'2006-02-15 05:09:17'),(4275,930,2,'2006-02-15 05:09:17'),(4276,930,2,'2006-02-15 05:09:17'),(4277,930,2,'2006-02-15 05:09:17'),(4278,931,2,'2006-02-15 05:09:17'),(4279,931,2,'2006-02-15 05:09:17'),(4280,931,2,'2006-02-15 05:09:17'),(4281,932,1,'2006-02-15 05:09:17'),(4282,932,1,'2006-02-15 05:09:17'),(4283,932,2,'2006-02-15 05:09:17'),(4284,932,2,'2006-02-15 05:09:17'),(4285,933,1,'2006-02-15 05:09:17'),(4286,933,1,'2006-02-15 05:09:17'),(4287,933,1,'2006-02-15 05:09:17'),(4288,934,2,'2006-02-15 05:09:17'),(4289,934,2,'2006-02-15 05:09:17'),(4290,934,2,'2006-02-15 05:09:17'),(4291,935,2,'2006-02-15 05:09:17'),(4292,935,2,'2006-02-15 05:09:17'),(4293,936,1,'2006-02-15 05:09:17'),(4294,936,1,'2006-02-15 05:09:17'),(4295,936,2,'2006-02-15 05:09:17'),(4296,936,2,'2006-02-15 05:09:17'),(4297,936,2,'2006-02-15 05:09:17'),(4298,936,2,'2006-02-15 05:09:17'),(4299,937,1,'2006-02-15 05:09:17'),(4300,937,1,'2006-02-15 05:09:17'),(4301,937,2,'2006-02-15 05:09:17'),(4302,937,2,'2006-02-15 05:09:17'),(4303,937,2,'2006-02-15 05:09:17'),(4304,938,1,'2006-02-15 05:09:17'),(4305,938,1,'2006-02-15 05:09:17'),(4306,938,1,'2006-02-15 05:09:17'),(4307,938,1,'2006-02-15 05:09:17'),(4308,938,2,'2006-02-15 05:09:17'),(4309,938,2,'2006-02-15 05:09:17'),(4310,939,2,'2006-02-15 05:09:17'),(4311,939,2,'2006-02-15 05:09:17'),(4312,939,2,'2006-02-15 05:09:17'),(4313,939,2,'2006-02-15 05:09:17'),(4314,940,1,'2006-02-15 05:09:17'),(4315,940,1,'2006-02-15 05:09:17'),(4316,940,1,'2006-02-15 05:09:17'),(4317,941,1,'2006-02-15 05:09:17'),(4318,941,1,'2006-02-15 05:09:17'),(4319,941,1,'2006-02-15 05:09:17'),(4320,941,1,'2006-02-15 05:09:17'),(4321,941,2,'2006-02-15 05:09:17'),(4322,941,2,'2006-02-15 05:09:17'),(4323,941,2,'2006-02-15 05:09:17'),(4324,942,1,'2006-02-15 05:09:17'),(4325,942,1,'2006-02-15 05:09:17'),(4326,942,2,'2006-02-15 05:09:17'),(4327,942,2,'2006-02-15 05:09:17'),(4328,944,1,'2006-02-15 05:09:17'),(4329,944,1,'2006-02-15 05:09:17'),(4330,944,2,'2006-02-15 05:09:17'),(4331,944,2,'2006-02-15 05:09:17'),(4332,944,2,'2006-02-15 05:09:17'),(4333,945,1,'2006-02-15 05:09:17'),(4334,945,1,'2006-02-15 05:09:17'),(4335,945,1,'2006-02-15 05:09:17'),(4336,945,1,'2006-02-15 05:09:17'),(4337,945,2,'2006-02-15 05:09:17'),(4338,945,2,'2006-02-15 05:09:17'),(4339,945,2,'2006-02-15 05:09:17'),(4340,945,2,'2006-02-15 05:09:17'),(4341,946,2,'2006-02-15 05:09:17'),(4342,946,2,'2006-02-15 05:09:17'),(4343,946,2,'2006-02-15 05:09:17'),(4344,946,2,'2006-02-15 05:09:17'),(4345,947,1,'2006-02-15 05:09:17'),(4346,947,1,'2006-02-15 05:09:17'),(4347,948,1,'2006-02-15 05:09:17'),(4348,948,1,'2006-02-15 05:09:17'),(4349,948,2,'2006-02-15 05:09:17'),(4350,948,2,'2006-02-15 05:09:17'),(4351,948,2,'2006-02-15 05:09:17'),(4352,948,2,'2006-02-15 05:09:17'),(4353,949,1,'2006-02-15 05:09:17'),(4354,949,1,'2006-02-15 05:09:17'),(4355,949,1,'2006-02-15 05:09:17'),(4356,949,1,'2006-02-15 05:09:17'),(4357,949,2,'2006-02-15 05:09:17'),(4358,949,2,'2006-02-15 05:09:17'),(4359,951,1,'2006-02-15 05:09:17'),(4360,951,1,'2006-02-15 05:09:17'),(4361,951,1,'2006-02-15 05:09:17'),(4362,951,2,'2006-02-15 05:09:17'),(4363,951,2,'2006-02-15 05:09:17'),(4364,951,2,'2006-02-15 05:09:17'),(4365,951,2,'2006-02-15 05:09:17'),(4366,952,1,'2006-02-15 05:09:17'),(4367,952,1,'2006-02-15 05:09:17'),(4368,952,1,'2006-02-15 05:09:17'),(4369,953,1,'2006-02-15 05:09:17'),(4370,953,1,'2006-02-15 05:09:17'),(4371,953,1,'2006-02-15 05:09:17'),(4372,953,1,'2006-02-15 05:09:17'),(4373,953,2,'2006-02-15 05:09:17'),(4374,953,2,'2006-02-15 05:09:17'),(4375,956,1,'2006-02-15 05:09:17'),(4376,956,1,'2006-02-15 05:09:17'),(4377,956,1,'2006-02-15 05:09:17'),(4378,956,1,'2006-02-15 05:09:17'),(4379,957,1,'2006-02-15 05:09:17'),(4380,957,1,'2006-02-15 05:09:17'),(4381,957,1,'2006-02-15 05:09:17'),(4382,957,2,'2006-02-15 05:09:17'),(4383,957,2,'2006-02-15 05:09:17'),(4384,958,1,'2006-02-15 05:09:17'),(4385,958,1,'2006-02-15 05:09:17'),(4386,958,1,'2006-02-15 05:09:17'),(4387,958,2,'2006-02-15 05:09:17'),(4388,958,2,'2006-02-15 05:09:17'),(4389,958,2,'2006-02-15 05:09:17'),(4390,959,1,'2006-02-15 05:09:17'),(4391,959,1,'2006-02-15 05:09:17'),(4392,960,2,'2006-02-15 05:09:17'),(4393,960,2,'2006-02-15 05:09:17'),(4394,960,2,'2006-02-15 05:09:17'),(4395,961,1,'2006-02-15 05:09:17'),(4396,961,1,'2006-02-15 05:09:17'),(4397,961,1,'2006-02-15 05:09:17'),(4398,961,2,'2006-02-15 05:09:17'),(4399,961,2,'2006-02-15 05:09:17'),(4400,962,1,'2006-02-15 05:09:17'),(4401,962,1,'2006-02-15 05:09:17'),(4402,962,1,'2006-02-15 05:09:17'),(4403,962,1,'2006-02-15 05:09:17'),(4404,963,1,'2006-02-15 05:09:17'),(4405,963,1,'2006-02-15 05:09:17'),(4406,963,2,'2006-02-15 05:09:17'),(4407,963,2,'2006-02-15 05:09:17'),(4408,963,2,'2006-02-15 05:09:17'),(4409,964,1,'2006-02-15 05:09:17'),(4410,964,1,'2006-02-15 05:09:17'),(4411,964,1,'2006-02-15 05:09:17'),(4412,964,2,'2006-02-15 05:09:17'),(4413,964,2,'2006-02-15 05:09:17'),(4414,965,1,'2006-02-15 05:09:17'),(4415,965,1,'2006-02-15 05:09:17'),(4416,966,1,'2006-02-15 05:09:17'),(4417,966,1,'2006-02-15 05:09:17'),(4418,966,2,'2006-02-15 05:09:17'),(4419,966,2,'2006-02-15 05:09:17'),(4420,966,2,'2006-02-15 05:09:17'),(4421,966,2,'2006-02-15 05:09:17'),(4422,967,1,'2006-02-15 05:09:17'),(4423,967,1,'2006-02-15 05:09:17'),(4424,967,1,'2006-02-15 05:09:17'),(4425,967,2,'2006-02-15 05:09:17'),(4426,967,2,'2006-02-15 05:09:17'),(4427,968,1,'2006-02-15 05:09:17'),(4428,968,1,'2006-02-15 05:09:17'),(4429,968,1,'2006-02-15 05:09:17'),(4430,969,1,'2006-02-15 05:09:17'),(4431,969,1,'2006-02-15 05:09:17'),(4432,969,1,'2006-02-15 05:09:17'),(4433,969,1,'2006-02-15 05:09:17'),(4434,970,1,'2006-02-15 05:09:17'),(4435,970,1,'2006-02-15 05:09:17'),(4436,970,1,'2006-02-15 05:09:17'),(4437,970,2,'2006-02-15 05:09:17'),(4438,970,2,'2006-02-15 05:09:17'),(4439,970,2,'2006-02-15 05:09:17'),(4440,970,2,'2006-02-15 05:09:17'),(4441,971,1,'2006-02-15 05:09:17'),(4442,971,1,'2006-02-15 05:09:17'),(4443,971,1,'2006-02-15 05:09:17'),(4444,971,1,'2006-02-15 05:09:17'),(4445,972,1,'2006-02-15 05:09:17'),(4446,972,1,'2006-02-15 05:09:17'),(4447,972,1,'2006-02-15 05:09:17'),(4448,972,2,'2006-02-15 05:09:17'),(4449,972,2,'2006-02-15 05:09:17'),(4450,972,2,'2006-02-15 05:09:17'),(4451,973,1,'2006-02-15 05:09:17'),(4452,973,1,'2006-02-15 05:09:17'),(4453,973,1,'2006-02-15 05:09:17'),(4454,973,1,'2006-02-15 05:09:17'),(4455,973,2,'2006-02-15 05:09:17'),(4456,973,2,'2006-02-15 05:09:17'),(4457,973,2,'2006-02-15 05:09:17'),(4458,973,2,'2006-02-15 05:09:17'),(4459,974,1,'2006-02-15 05:09:17'),(4460,974,1,'2006-02-15 05:09:17'),(4461,975,1,'2006-02-15 05:09:17'),(4462,975,1,'2006-02-15 05:09:17'),(4463,975,2,'2006-02-15 05:09:17'),(4464,975,2,'2006-02-15 05:09:17'),(4465,975,2,'2006-02-15 05:09:17'),(4466,976,1,'2006-02-15 05:09:17'),(4467,976,1,'2006-02-15 05:09:17'),(4468,976,2,'2006-02-15 05:09:17'),(4469,976,2,'2006-02-15 05:09:17'),(4470,976,2,'2006-02-15 05:09:17'),(4471,976,2,'2006-02-15 05:09:17'),(4472,977,2,'2006-02-15 05:09:17'),(4473,977,2,'2006-02-15 05:09:17'),(4474,977,2,'2006-02-15 05:09:17'),(4475,978,1,'2006-02-15 05:09:17'),(4476,978,1,'2006-02-15 05:09:17'),(4477,978,1,'2006-02-15 05:09:17'),(4478,979,1,'2006-02-15 05:09:17'),(4479,979,1,'2006-02-15 05:09:17'),(4480,979,1,'2006-02-15 05:09:17'),(4481,979,1,'2006-02-15 05:09:17'),(4482,979,2,'2006-02-15 05:09:17'),(4483,979,2,'2006-02-15 05:09:17'),(4484,979,2,'2006-02-15 05:09:17'),(4485,980,1,'2006-02-15 05:09:17'),(4486,980,1,'2006-02-15 05:09:17'),(4487,980,1,'2006-02-15 05:09:17'),(4488,980,2,'2006-02-15 05:09:17'),(4489,980,2,'2006-02-15 05:09:17'),(4490,981,1,'2006-02-15 05:09:17'),(4491,981,1,'2006-02-15 05:09:17'),(4492,981,1,'2006-02-15 05:09:17'),(4493,981,2,'2006-02-15 05:09:17'),(4494,981,2,'2006-02-15 05:09:17'),(4495,981,2,'2006-02-15 05:09:17'),(4496,982,1,'2006-02-15 05:09:17'),(4497,982,1,'2006-02-15 05:09:17'),(4498,982,1,'2006-02-15 05:09:17'),(4499,982,2,'2006-02-15 05:09:17'),(4500,982,2,'2006-02-15 05:09:17'),(4501,982,2,'2006-02-15 05:09:17'),(4502,982,2,'2006-02-15 05:09:17'),(4503,983,1,'2006-02-15 05:09:17'),(4504,983,1,'2006-02-15 05:09:17'),(4505,983,1,'2006-02-15 05:09:17'),(4506,984,1,'2006-02-15 05:09:17'),(4507,984,1,'2006-02-15 05:09:17'),(4508,985,1,'2006-02-15 05:09:17'),(4509,985,1,'2006-02-15 05:09:17'),(4510,985,1,'2006-02-15 05:09:17'),(4511,985,1,'2006-02-15 05:09:17'),(4512,985,2,'2006-02-15 05:09:17'),(4513,985,2,'2006-02-15 05:09:17'),(4514,985,2,'2006-02-15 05:09:17'),(4515,986,1,'2006-02-15 05:09:17'),(4516,986,1,'2006-02-15 05:09:17'),(4517,986,1,'2006-02-15 05:09:17'),(4518,986,1,'2006-02-15 05:09:17'),(4519,986,2,'2006-02-15 05:09:17'),(4520,986,2,'2006-02-15 05:09:17'),(4521,987,1,'2006-02-15 05:09:17'),(4522,987,1,'2006-02-15 05:09:17'),(4523,987,2,'2006-02-15 05:09:17'),(4524,987,2,'2006-02-15 05:09:17'),(4525,988,1,'2006-02-15 05:09:17'),(4526,988,1,'2006-02-15 05:09:17'),(4527,988,1,'2006-02-15 05:09:17'),(4528,988,2,'2006-02-15 05:09:17'),(4529,988,2,'2006-02-15 05:09:17'),(4530,989,1,'2006-02-15 05:09:17'),(4531,989,1,'2006-02-15 05:09:17'),(4532,989,1,'2006-02-15 05:09:17'),(4533,989,1,'2006-02-15 05:09:17'),(4534,989,2,'2006-02-15 05:09:17'),(4535,989,2,'2006-02-15 05:09:17'),(4536,990,2,'2006-02-15 05:09:17'),(4537,990,2,'2006-02-15 05:09:17'),(4538,991,1,'2006-02-15 05:09:17'),(4539,991,1,'2006-02-15 05:09:17'),(4540,991,2,'2006-02-15 05:09:17'),(4541,991,2,'2006-02-15 05:09:17'),(4542,991,2,'2006-02-15 05:09:17'),(4543,992,2,'2006-02-15 05:09:17'),(4544,992,2,'2006-02-15 05:09:17'),(4545,992,2,'2006-02-15 05:09:17'),(4546,992,2,'2006-02-15 05:09:17'),(4547,993,1,'2006-02-15 05:09:17'),(4548,993,1,'2006-02-15 05:09:17'),(4549,993,1,'2006-02-15 05:09:17'),(4550,993,1,'2006-02-15 05:09:17'),(4551,993,2,'2006-02-15 05:09:17'),(4552,993,2,'2006-02-15 05:09:17'),(4553,993,2,'2006-02-15 05:09:17'),(4554,994,1,'2006-02-15 05:09:17'),(4555,994,1,'2006-02-15 05:09:17'),(4556,994,1,'2006-02-15 05:09:17'),(4557,995,1,'2006-02-15 05:09:17'),(4558,995,1,'2006-02-15 05:09:17'),(4559,995,1,'2006-02-15 05:09:17'),(4560,995,1,'2006-02-15 05:09:17'),(4561,995,2,'2006-02-15 05:09:17'),(4562,995,2,'2006-02-15 05:09:17'),(4563,996,1,'2006-02-15 05:09:17'),(4564,996,1,'2006-02-15 05:09:17'),(4565,997,1,'2006-02-15 05:09:17'),(4566,997,1,'2006-02-15 05:09:17'),(4567,998,2,'2006-02-15 05:09:17'),(4568,998,2,'2006-02-15 05:09:17'),(4569,999,1,'2006-02-15 05:09:17'),(4570,999,1,'2006-02-15 05:09:17'),(4571,999,2,'2006-02-15 05:09:17'),(4572,999,2,'2006-02-15 05:09:17'),(4573,999,2,'2006-02-15 05:09:17'),(4574,1000,1,'2006-02-15 05:09:17'),(4575,1000,1,'2006-02-15 05:09:17'),(4576,1000,1,'2006-02-15 05:09:17'),(4577,1000,1,'2006-02-15 05:09:17'),(4578,1000,2,'2006-02-15 05:09:17'),(4579,1000,2,'2006-02-15 05:09:17'),(4580,1000,2,'2006-02-15 05:09:17'),(4581,1000,2,'2006-02-15 05:09:17'); +COMMIT; + +-- +-- Dumping data for table language +-- + +SET AUTOCOMMIT=0; +INSERT INTO language VALUES (1,'English','2006-02-15 05:02:19'),(2,'Italian','2006-02-15 05:02:19'),(3,'Japanese','2006-02-15 05:02:19'),(4,'Mandarin','2006-02-15 05:02:19'),(5,'French','2006-02-15 05:02:19'),(6,'German','2006-02-15 05:02:19'); +COMMIT; + +-- +-- Dumping data for table payment +-- + +SET AUTOCOMMIT=0; +INSERT INTO payment VALUES (1,1,1,76,'2.99','2005-05-25 11:30:37','2006-02-15 22:12:30'),(2,1,1,573,'0.99','2005-05-28 10:35:23','2006-02-15 22:12:30'),(3,1,1,1185,'5.99','2005-06-15 00:54:12','2006-02-15 22:12:30'),(4,1,2,1422,'0.99','2005-06-15 18:02:53','2006-02-15 22:12:30'),(5,1,2,1476,'9.99','2005-06-15 21:08:46','2006-02-15 22:12:30'),(6,1,1,1725,'4.99','2005-06-16 15:18:57','2006-02-15 22:12:30'),(7,1,1,2308,'4.99','2005-06-18 08:41:48','2006-02-15 22:12:30'),(8,1,2,2363,'0.99','2005-06-18 13:33:59','2006-02-15 22:12:30'),(9,1,1,3284,'3.99','2005-06-21 06:24:45','2006-02-15 22:12:30'),(10,1,2,4526,'5.99','2005-07-08 03:17:05','2006-02-15 22:12:30'),(11,1,1,4611,'5.99','2005-07-08 07:33:56','2006-02-15 22:12:30'),(12,1,1,5244,'4.99','2005-07-09 13:24:07','2006-02-15 22:12:30'),(13,1,1,5326,'4.99','2005-07-09 16:38:01','2006-02-15 22:12:30'),(14,1,1,6163,'7.99','2005-07-11 10:13:46','2006-02-15 22:12:30'),(15,1,2,7273,'2.99','2005-07-27 11:31:22','2006-02-15 22:12:30'),(16,1,1,7841,'4.99','2005-07-28 09:04:45','2006-02-15 22:12:30'),(17,1,2,8033,'4.99','2005-07-28 16:18:23','2006-02-15 22:12:30'),(18,1,1,8074,'0.99','2005-07-28 17:33:39','2006-02-15 22:12:30'),(19,1,2,8116,'0.99','2005-07-28 19:20:07','2006-02-15 22:12:30'),(20,1,2,8326,'2.99','2005-07-29 03:58:49','2006-02-15 22:12:30'),(21,1,2,9571,'2.99','2005-07-31 02:42:18','2006-02-15 22:12:30'),(22,1,2,10437,'4.99','2005-08-01 08:51:04','2006-02-15 22:12:30'),(23,1,2,11299,'3.99','2005-08-02 15:36:52','2006-02-15 22:12:30'),(24,1,1,11367,'0.99','2005-08-02 18:01:38','2006-02-15 22:12:30'),(25,1,2,11824,'4.99','2005-08-17 12:37:54','2006-02-15 22:12:30'),(26,1,1,12250,'0.99','2005-08-18 03:57:29','2006-02-15 22:12:30'),(27,1,2,13068,'0.99','2005-08-19 09:55:16','2006-02-15 22:12:30'),(28,1,2,13176,'2.99','2005-08-19 13:56:54','2006-02-15 22:12:30'),(29,1,1,14762,'0.99','2005-08-21 23:33:57','2006-02-15 22:12:30'),(30,1,1,14825,'1.99','2005-08-22 01:27:57','2006-02-15 22:12:30'),(31,1,2,15298,'2.99','2005-08-22 19:41:37','2006-02-15 22:12:30'),(32,1,1,15315,'5.99','2005-08-22 20:03:46','2006-02-15 22:12:30'),(33,2,1,320,'4.99','2005-05-27 00:09:24','2006-02-15 22:12:30'),(34,2,1,2128,'2.99','2005-06-17 20:54:58','2006-02-15 22:12:30'),(35,2,1,5636,'2.99','2005-07-10 06:31:24','2006-02-15 22:12:30'),(36,2,1,5755,'6.99','2005-07-10 12:38:56','2006-02-15 22:12:30'),(37,2,2,7346,'4.99','2005-07-27 14:30:42','2006-02-15 22:12:30'),(38,2,1,7376,'5.99','2005-07-27 15:23:02','2006-02-15 22:12:30'),(39,2,2,7459,'5.99','2005-07-27 18:40:20','2006-02-15 22:12:30'),(40,2,2,8230,'5.99','2005-07-29 00:12:59','2006-02-15 22:12:30'),(41,2,1,8598,'2.99','2005-07-29 12:56:59','2006-02-15 22:12:30'),(42,2,2,8705,'5.99','2005-07-29 17:14:29','2006-02-15 22:12:30'),(43,2,1,9031,'4.99','2005-07-30 06:06:10','2006-02-15 22:12:30'),(44,2,2,9236,'10.99','2005-07-30 13:47:43','2006-02-15 22:12:30'),(45,2,2,9248,'0.99','2005-07-30 14:14:11','2006-02-15 22:12:30'),(46,2,2,9296,'6.99','2005-07-30 16:21:13','2006-02-15 22:12:30'),(47,2,2,9465,'6.99','2005-07-30 22:39:53','2006-02-15 22:12:30'),(48,2,1,10136,'2.99','2005-07-31 21:58:56','2006-02-15 22:12:30'),(49,2,1,10466,'0.99','2005-08-01 09:45:26','2006-02-15 22:12:30'),(50,2,1,10918,'0.99','2005-08-02 02:10:56','2006-02-15 22:12:30'),(51,2,1,11087,'5.99','2005-08-02 07:41:41','2006-02-15 22:12:30'),(52,2,1,11177,'6.99','2005-08-02 10:43:48','2006-02-15 22:12:30'),(53,2,2,11256,'2.99','2005-08-02 13:44:53','2006-02-15 22:12:30'),(54,2,1,11614,'2.99','2005-08-17 03:52:18','2006-02-15 22:12:30'),(55,2,1,12963,'2.99','2005-08-19 06:26:04','2006-02-15 22:12:30'),(56,2,1,14475,'4.99','2005-08-21 13:24:32','2006-02-15 22:12:30'),(57,2,2,14743,'5.99','2005-08-21 22:41:56','2006-02-15 22:12:30'),(58,2,2,15145,'4.99','2005-08-22 13:53:04','2006-02-15 22:12:30'),(59,2,2,15907,'4.99','2005-08-23 17:39:35','2006-02-15 22:12:30'),(60,3,1,435,'1.99','2005-05-27 17:17:09','2006-02-15 22:12:30'),(61,3,1,830,'2.99','2005-05-29 22:43:55','2006-02-15 22:12:30'),(62,3,1,1546,'8.99','2005-06-16 01:34:05','2006-02-15 22:12:30'),(63,3,1,1726,'6.99','2005-06-16 15:19:10','2006-02-15 22:12:30'),(64,3,2,1911,'6.99','2005-06-17 05:15:15','2006-02-15 22:12:30'),(65,3,1,2628,'2.99','2005-06-19 08:34:53','2006-02-15 22:12:30'),(66,3,1,4180,'4.99','2005-07-07 10:23:25','2006-02-15 22:12:30'),(67,3,1,4725,'4.99','2005-07-08 12:47:11','2006-02-15 22:12:30'),(68,3,1,7096,'5.99','2005-07-27 04:54:42','2006-02-15 22:12:30'),(69,3,2,7503,'10.99','2005-07-27 20:23:12','2006-02-15 22:12:30'),(70,3,2,7703,'7.99','2005-07-28 03:59:21','2006-02-15 22:12:30'),(71,3,2,7724,'6.99','2005-07-28 04:46:30','2006-02-15 22:12:30'),(72,3,1,7911,'4.99','2005-07-28 11:46:45','2006-02-15 22:12:30'),(73,3,2,8086,'4.99','2005-07-28 18:17:14','2006-02-15 22:12:30'),(74,3,1,8545,'2.99','2005-07-29 11:07:04','2006-02-15 22:12:30'),(75,3,1,9226,'1.99','2005-07-30 13:31:20','2006-02-15 22:12:30'),(76,3,2,9443,'3.99','2005-07-30 21:45:46','2006-02-15 22:12:30'),(77,3,1,9595,'2.99','2005-07-31 03:27:58','2006-02-15 22:12:30'),(78,3,2,9816,'4.99','2005-07-31 11:32:58','2006-02-15 22:12:30'),(79,3,2,10597,'5.99','2005-08-01 14:19:48','2006-02-15 22:12:30'),(80,3,2,12556,'4.99','2005-08-18 14:49:55','2006-02-15 22:12:30'),(81,3,1,13403,'8.99','2005-08-19 22:18:07','2006-02-15 22:12:30'),(82,3,2,13610,'2.99','2005-08-20 06:14:12','2006-02-15 22:12:30'),(83,3,2,14699,'8.99','2005-08-21 20:50:48','2006-02-15 22:12:30'),(84,3,2,15038,'0.99','2005-08-22 09:37:27','2006-02-15 22:12:30'),(85,3,1,15619,'2.99','2005-08-23 07:10:14','2006-02-15 22:12:30'),(86,4,1,1297,'4.99','2005-06-15 09:31:28','2006-02-15 22:12:30'),(87,4,1,1633,'0.99','2005-06-16 08:08:40','2006-02-15 22:12:30'),(88,4,2,1707,'2.99','2005-06-16 14:01:27','2006-02-15 22:12:30'),(89,4,2,1735,'0.99','2005-06-16 15:51:52','2006-02-15 22:12:30'),(90,4,2,2043,'0.99','2005-06-17 14:31:12','2006-02-15 22:12:30'),(91,4,1,2642,'5.99','2005-06-19 09:39:01','2006-02-15 22:12:30'),(92,4,1,7660,'2.99','2005-07-28 02:10:10','2006-02-15 22:12:30'),(93,4,2,7718,'2.99','2005-07-28 04:37:59','2006-02-15 22:12:30'),(94,4,1,8741,'3.99','2005-07-29 18:44:57','2006-02-15 22:12:30'),(95,4,1,9100,'5.99','2005-07-30 08:46:09','2006-02-15 22:12:30'),(96,4,1,9371,'5.99','2005-07-30 18:58:00','2006-02-15 22:12:30'),(97,4,2,11069,'0.99','2005-08-02 07:09:34','2006-02-15 22:12:30'),(98,4,1,11110,'2.99','2005-08-02 08:20:31','2006-02-15 22:12:30'),(99,4,2,11529,'4.99','2005-08-17 00:28:01','2006-02-15 22:12:30'),(100,4,1,12151,'2.99','2005-08-18 00:14:03','2006-02-15 22:12:30'),(101,4,2,12294,'8.99','2005-08-18 05:14:44','2006-02-15 22:12:30'),(102,4,2,12856,'1.99','2005-08-19 02:19:13','2006-02-15 22:12:30'),(103,4,1,13704,'2.99','2005-08-20 09:32:04','2006-02-15 22:12:30'),(104,4,1,13807,'6.99','2005-08-20 12:55:40','2006-02-15 22:12:30'),(105,4,2,14225,'4.99','2005-08-21 04:53:37','2006-02-15 22:12:30'),(106,4,1,15147,'2.99','2005-08-22 13:58:23','2006-02-15 22:12:30'),(107,4,2,15635,'1.99','2005-08-23 07:43:00','2006-02-15 22:12:30'),(108,5,1,731,'0.99','2005-05-29 07:25:16','2006-02-15 22:12:30'),(109,5,1,1085,'6.99','2005-05-31 11:15:43','2006-02-15 22:12:30'),(110,5,1,1142,'1.99','2005-05-31 19:46:38','2006-02-15 22:12:30'),(111,5,1,1502,'3.99','2005-06-15 22:03:14','2006-02-15 22:12:30'),(112,5,2,1631,'2.99','2005-06-16 08:01:02','2006-02-15 22:12:30'),(113,5,2,2063,'4.99','2005-06-17 15:56:53','2006-02-15 22:12:30'),(114,5,2,2570,'2.99','2005-06-19 04:20:13','2006-02-15 22:12:30'),(115,5,2,3126,'4.99','2005-06-20 18:38:22','2006-02-15 22:12:30'),(116,5,2,3677,'4.99','2005-07-06 09:11:58','2006-02-15 22:12:30'),(117,5,2,4889,'2.99','2005-07-08 20:04:43','2006-02-15 22:12:30'),(118,5,1,5016,'4.99','2005-07-09 01:57:57','2006-02-15 22:12:30'),(119,5,2,5118,'5.99','2005-07-09 07:13:52','2006-02-15 22:12:30'),(120,5,2,5156,'1.99','2005-07-09 08:51:42','2006-02-15 22:12:30'),(121,5,2,5721,'0.99','2005-07-10 11:09:35','2006-02-15 22:12:30'),(122,5,1,6042,'8.99','2005-07-11 03:17:04','2006-02-15 22:12:30'),(123,5,1,6663,'3.99','2005-07-12 11:27:35','2006-02-15 22:12:30'),(124,5,2,6685,'4.99','2005-07-12 12:16:28','2006-02-15 22:12:30'),(125,5,2,7293,'0.99','2005-07-27 12:37:28','2006-02-15 22:12:30'),(126,5,2,7652,'0.99','2005-07-28 01:50:29','2006-02-15 22:12:30'),(127,5,2,7829,'3.99','2005-07-28 08:43:39','2006-02-15 22:12:30'),(128,5,1,8263,'2.99','2005-07-29 01:11:23','2006-02-15 22:12:30'),(129,5,1,8978,'1.99','2005-07-30 04:14:28','2006-02-15 22:12:30'),(130,5,1,9493,'4.99','2005-07-30 23:52:30','2006-02-15 22:12:30'),(131,5,1,9888,'3.99','2005-07-31 14:00:53','2006-02-15 22:12:30'),(132,5,2,10609,'4.99','2005-08-01 14:48:45','2006-02-15 22:12:30'),(133,5,1,10625,'0.99','2005-08-01 15:27:10','2006-02-15 22:12:30'),(134,5,2,11001,'4.99','2005-08-02 04:56:45','2006-02-15 22:12:30'),(135,5,1,11179,'4.99','2005-08-02 10:50:06','2006-02-15 22:12:30'),(136,5,2,11930,'3.99','2005-08-17 16:28:53','2006-02-15 22:12:30'),(137,5,1,12145,'9.99','2005-08-18 00:10:04','2006-02-15 22:12:30'),(138,5,1,12797,'2.99','2005-08-19 00:24:08','2006-02-15 22:12:30'),(139,5,1,13063,'1.99','2005-08-19 09:45:41','2006-02-15 22:12:30'),(140,5,2,13877,'0.99','2005-08-20 15:16:18','2006-02-15 22:12:30'),(141,5,2,14053,'6.99','2005-08-20 22:13:59','2006-02-15 22:12:30'),(142,5,1,14430,'6.99','2005-08-21 11:31:11','2006-02-15 22:12:30'),(143,5,2,14494,'2.99','2005-08-21 14:02:50','2006-02-15 22:12:30'),(144,5,2,15232,'0.99','2005-08-22 17:37:02','2006-02-15 22:12:30'),(145,5,2,13209,'0.99','2006-02-14 15:16:03','2006-02-15 22:12:30'),(146,6,2,57,'4.99','2005-05-25 08:43:32','2006-02-15 22:12:30'),(147,6,1,577,'2.99','2005-05-28 11:09:14','2006-02-15 22:12:30'),(148,6,2,916,'0.99','2005-05-30 11:25:01','2006-02-15 22:12:30'),(149,6,1,1575,'3.99','2005-06-16 03:41:38','2006-02-15 22:12:30'),(150,6,2,1841,'2.99','2005-06-16 23:44:13','2006-02-15 22:12:30'),(151,6,1,1966,'0.99','2005-06-17 09:19:45','2006-02-15 22:12:30'),(152,6,1,2345,'0.99','2005-06-18 12:03:23','2006-02-15 22:12:30'),(153,6,2,3983,'0.99','2005-07-06 23:14:21','2006-02-15 22:12:30'),(154,6,2,4278,'2.99','2005-07-07 14:53:24','2006-02-15 22:12:30'),(155,6,1,5553,'0.99','2005-07-10 03:03:35','2006-02-15 22:12:30'),(156,6,2,6211,'5.99','2005-07-11 12:39:01','2006-02-15 22:12:30'),(157,6,1,6248,'7.99','2005-07-11 15:01:54','2006-02-15 22:12:30'),(158,6,2,6686,'0.99','2005-07-12 12:18:38','2006-02-15 22:12:30'),(159,6,2,7099,'2.99','2005-07-27 05:03:44','2006-02-15 22:12:30'),(160,6,2,7136,'2.99','2005-07-27 06:38:25','2006-02-15 22:12:30'),(161,6,1,8101,'0.99','2005-07-28 18:47:23','2006-02-15 22:12:30'),(162,6,1,10271,'2.99','2005-08-01 03:13:39','2006-02-15 22:12:30'),(163,6,1,11023,'2.99','2005-08-02 05:36:38','2006-02-15 22:12:30'),(164,6,1,11398,'3.99','2005-08-02 18:55:15','2006-02-15 22:12:30'),(165,6,1,11591,'6.99','2005-08-17 02:29:41','2006-02-15 22:12:30'),(166,6,1,11727,'0.99','2005-08-17 08:12:20','2006-02-15 22:12:30'),(167,6,1,11853,'0.99','2005-08-17 13:39:32','2006-02-15 22:12:30'),(168,6,2,12254,'2.99','2005-08-18 04:05:29','2006-02-15 22:12:30'),(169,6,2,13451,'6.99','2005-08-20 00:18:25','2006-02-15 22:12:30'),(170,6,1,14329,'7.99','2005-08-21 08:22:56','2006-02-15 22:12:30'),(171,6,1,14377,'4.99','2005-08-21 09:49:28','2006-02-15 22:12:30'),(172,6,1,15509,'5.99','2005-08-23 02:51:24','2006-02-15 22:12:30'),(173,6,2,15603,'0.99','2005-08-23 06:41:32','2006-02-15 22:12:30'),(174,7,2,46,'5.99','2005-05-25 06:04:08','2006-02-15 22:12:30'),(175,7,2,117,'0.99','2005-05-25 19:30:46','2006-02-15 22:12:30'),(176,7,2,748,'2.99','2005-05-29 09:27:00','2006-02-15 22:12:30'),(177,7,1,975,'4.99','2005-05-30 21:07:15','2006-02-15 22:12:30'),(178,7,1,1063,'5.99','2005-05-31 08:44:29','2006-02-15 22:12:30'),(179,7,2,1810,'0.99','2005-06-16 21:06:00','2006-02-15 22:12:30'),(180,7,1,2250,'2.99','2005-06-18 05:03:36','2006-02-15 22:12:31'),(181,7,1,2709,'0.99','2005-06-19 14:00:26','2006-02-15 22:12:31'),(182,7,1,2888,'4.99','2005-06-20 01:50:56','2006-02-15 22:12:31'),(183,7,1,3007,'0.99','2005-06-20 10:11:53','2006-02-15 22:12:31'),(184,7,2,3639,'5.99','2005-07-06 07:09:17','2006-02-15 22:12:31'),(185,7,2,4238,'2.99','2005-07-07 13:22:20','2006-02-15 22:12:31'),(186,7,2,4787,'5.99','2005-07-08 16:16:04','2006-02-15 22:12:31'),(187,7,1,4856,'4.99','2005-07-08 18:47:38','2006-02-15 22:12:31'),(188,7,1,5441,'8.99','2005-07-09 21:52:05','2006-02-15 22:12:31'),(189,7,1,5921,'7.99','2005-07-10 21:35:12','2006-02-15 22:12:31'),(190,7,1,6174,'1.99','2005-07-11 10:36:28','2006-02-15 22:12:31'),(191,7,1,6295,'2.99','2005-07-11 17:30:58','2006-02-15 22:12:31'),(192,7,2,6761,'3.99','2005-07-12 15:17:42','2006-02-15 22:12:31'),(193,7,2,8422,'5.99','2005-07-29 07:02:55','2006-02-15 22:12:31'),(194,7,2,9624,'7.99','2005-07-31 04:30:03','2006-02-15 22:12:31'),(195,7,2,10330,'6.99','2005-08-01 04:57:04','2006-02-15 22:12:31'),(196,7,1,10423,'5.99','2005-08-01 08:19:53','2006-02-15 22:12:31'),(197,7,1,10514,'4.99','2005-08-01 11:39:26','2006-02-15 22:12:31'),(198,7,2,10644,'4.99','2005-08-01 15:52:00','2006-02-15 22:12:31'),(199,7,2,10989,'3.99','2005-08-02 04:40:54','2006-02-15 22:12:31'),(200,7,2,11542,'7.99','2005-08-17 00:51:32','2006-02-15 22:12:31'),(201,7,1,12367,'8.99','2005-08-18 07:57:14','2006-02-15 22:12:31'),(202,7,1,12730,'2.99','2005-08-18 21:55:01','2006-02-15 22:12:31'),(203,7,2,13373,'2.99','2005-08-19 21:23:31','2006-02-15 22:12:31'),(204,7,1,13476,'2.99','2005-08-20 01:06:04','2006-02-15 22:12:31'),(205,7,1,13594,'0.99','2005-08-20 05:53:31','2006-02-15 22:12:31'),(206,7,1,14222,'5.99','2005-08-21 04:49:48','2006-02-15 22:12:31'),(207,8,2,866,'6.99','2005-05-30 03:43:54','2006-02-15 22:12:31'),(208,8,2,1305,'2.99','2005-06-15 09:59:16','2006-02-15 22:12:31'),(209,8,1,2095,'5.99','2005-06-17 18:21:35','2006-02-15 22:12:31'),(210,8,2,3114,'4.99','2005-06-20 17:57:47','2006-02-15 22:12:31'),(211,8,1,3475,'5.99','2005-07-05 23:01:21','2006-02-15 22:12:31'),(212,8,1,4003,'0.99','2005-07-07 00:09:02','2006-02-15 22:12:31'),(213,8,2,4175,'2.99','2005-07-07 10:02:03','2006-02-15 22:12:31'),(214,8,2,4409,'3.99','2005-07-07 21:47:29','2006-02-15 22:12:31'),(215,8,1,4503,'3.99','2005-07-08 02:17:12','2006-02-15 22:12:31'),(216,8,1,5300,'2.99','2005-07-09 15:40:46','2006-02-15 22:12:31'),(217,8,2,5341,'2.99','2005-07-09 17:13:23','2006-02-15 22:12:31'),(218,8,1,6375,'4.99','2005-07-11 21:39:46','2006-02-15 22:12:31'),(219,8,1,6647,'0.99','2005-07-12 10:43:53','2006-02-15 22:12:31'),(220,8,1,8809,'1.99','2005-07-29 21:42:49','2006-02-15 22:12:31'),(221,8,2,9629,'2.99','2005-07-31 04:54:43','2006-02-15 22:12:31'),(222,8,2,10141,'0.99','2005-07-31 22:08:29','2006-02-15 22:12:31'),(223,8,2,10561,'2.99','2005-08-01 13:05:35','2006-02-15 22:12:31'),(224,8,1,11232,'9.99','2005-08-02 13:04:12','2006-02-15 22:12:31'),(225,8,2,11284,'2.99','2005-08-02 14:42:45','2006-02-15 22:12:31'),(226,8,1,12613,'2.99','2005-08-18 17:16:01','2006-02-15 22:12:31'),(227,8,1,14114,'0.99','2005-08-21 01:07:11','2006-02-15 22:12:31'),(228,8,1,15374,'7.99','2005-08-22 22:09:09','2006-02-15 22:12:31'),(229,8,1,15764,'2.99','2005-08-23 13:05:10','2006-02-15 22:12:31'),(230,8,1,15805,'4.99','2005-08-23 14:31:19','2006-02-15 22:12:31'),(231,9,2,350,'4.99','2005-05-27 05:01:28','2006-02-15 22:12:31'),(232,9,2,877,'0.99','2005-05-30 05:48:59','2006-02-15 22:12:31'),(233,9,2,1075,'4.99','2005-05-31 10:13:34','2006-02-15 22:12:31'),(234,9,2,3142,'7.99','2005-06-20 19:59:28','2006-02-15 22:12:31'),(235,9,2,3262,'4.99','2005-06-21 04:08:43','2006-02-15 22:12:31'),(236,9,1,4454,'2.99','2005-07-07 23:37:00','2006-02-15 22:12:31'),(237,9,2,4748,'0.99','2005-07-08 13:59:38','2006-02-15 22:12:31'),(238,9,1,4796,'1.99','2005-07-08 16:35:44','2006-02-15 22:12:31'),(239,9,1,5659,'2.99','2005-07-10 07:45:40','2006-02-15 22:12:31'),(240,9,2,6019,'4.99','2005-07-11 02:08:29','2006-02-15 22:12:31'),(241,9,1,6165,'5.99','2005-07-11 10:17:29','2006-02-15 22:12:31'),(242,9,2,7616,'0.99','2005-07-28 00:15:26','2006-02-15 22:12:31'),(243,9,1,7801,'2.99','2005-07-28 07:51:56','2006-02-15 22:12:31'),(244,9,1,9043,'4.99','2005-07-30 06:34:07','2006-02-15 22:12:31'),(245,9,1,10451,'0.99','2005-08-01 09:11:25','2006-02-15 22:12:31'),(246,9,1,10454,'4.99','2005-08-01 09:14:00','2006-02-15 22:12:31'),(247,9,2,11400,'5.99','2005-08-02 19:00:52','2006-02-15 22:12:31'),(248,9,1,11556,'0.99','2005-08-17 01:11:53','2006-02-15 22:12:31'),(249,9,1,12228,'2.99','2005-08-18 03:08:10','2006-02-15 22:12:31'),(250,9,1,12309,'2.99','2005-08-18 05:58:40','2006-02-15 22:12:31'),(251,9,2,12652,'4.99','2005-08-18 18:48:58','2006-02-15 22:12:31'),(252,9,2,14489,'7.99','2005-08-21 13:53:59','2006-02-15 22:12:31'),(253,9,1,15813,'4.99','2006-02-14 15:16:03','2006-02-15 22:12:31'),(254,10,2,1140,'4.99','2005-05-31 19:36:30','2006-02-15 22:12:31'),(255,10,1,1801,'4.99','2005-06-16 20:21:53','2006-02-15 22:12:31'),(256,10,1,1995,'4.99','2005-06-17 11:11:14','2006-02-15 22:12:31'),(257,10,2,2222,'3.99','2005-06-18 03:26:23','2006-02-15 22:12:31'),(258,10,1,2814,'0.99','2005-06-19 20:01:59','2006-02-15 22:12:31'),(259,10,1,2865,'0.99','2005-06-20 00:00:55','2006-02-15 22:12:31'),(260,10,2,3790,'3.99','2005-07-06 14:13:45','2006-02-15 22:12:31'),(261,10,2,4042,'4.99','2005-07-07 03:06:40','2006-02-15 22:12:31'),(262,10,1,4255,'1.99','2005-07-07 14:14:13','2006-02-15 22:12:31'),(263,10,1,5038,'7.99','2005-07-09 03:12:52','2006-02-15 22:12:31'),(264,10,2,5068,'2.99','2005-07-09 04:53:18','2006-02-15 22:12:31'),(265,10,1,5444,'0.99','2005-07-09 21:58:57','2006-02-15 22:12:31'),(266,10,1,5905,'2.99','2005-07-10 20:41:09','2006-02-15 22:12:31'),(267,10,1,7738,'2.99','2005-07-28 05:21:42','2006-02-15 22:12:31'),(268,10,2,8001,'6.99','2005-07-28 15:10:55','2006-02-15 22:12:31'),(269,10,2,8188,'4.99','2005-07-28 22:34:12','2006-02-15 22:12:31'),(270,10,1,9935,'4.99','2005-07-31 15:27:07','2006-02-15 22:12:31'),(271,10,2,10671,'8.99','2005-08-01 17:09:59','2006-02-15 22:12:31'),(272,10,2,11289,'2.99','2005-08-02 14:55:00','2006-02-15 22:12:31'),(273,10,1,11405,'0.99','2005-08-02 19:13:39','2006-02-15 22:12:31'),(274,10,2,12031,'2.99','2005-08-17 20:11:35','2006-02-15 22:12:31'),(275,10,2,12400,'2.99','2005-08-18 09:19:12','2006-02-15 22:12:31'),(276,10,2,13316,'4.99','2005-08-19 19:23:30','2006-02-15 22:12:31'),(277,10,2,13917,'2.99','2005-08-20 16:43:28','2006-02-15 22:12:31'),(278,10,1,15370,'5.99','2005-08-22 21:59:29','2006-02-15 22:12:31'),(279,11,1,987,'6.99','2005-05-30 22:59:12','2006-02-15 22:12:31'),(280,11,1,1470,'6.99','2005-06-15 20:53:07','2006-02-15 22:12:31'),(281,11,1,1939,'7.99','2005-06-17 07:26:45','2006-02-15 22:12:31'),(282,11,1,3192,'0.99','2005-06-20 23:49:12','2006-02-15 22:12:31'),(283,11,2,4608,'2.99','2005-07-08 07:19:11','2006-02-15 22:12:31'),(284,11,1,4943,'4.99','2005-07-08 22:43:05','2006-02-15 22:12:31'),(285,11,2,5835,'5.99','2005-07-10 16:44:58','2006-02-15 22:12:31'),(286,11,2,6146,'6.99','2005-07-11 09:09:59','2006-02-15 22:12:31'),(287,11,1,7314,'4.99','2005-07-27 13:13:32','2006-02-15 22:12:31'),(288,11,1,8014,'4.99','2005-07-28 15:32:07','2006-02-15 22:12:31'),(289,11,2,8100,'2.99','2005-07-28 18:43:11','2006-02-15 22:12:31'),(290,11,2,8447,'1.99','2005-07-29 07:38:14','2006-02-15 22:12:31'),(291,11,1,8715,'0.99','2005-07-29 17:33:45','2006-02-15 22:12:31'),(292,11,1,8950,'9.99','2005-07-30 03:17:13','2006-02-15 22:12:31'),(293,11,2,9292,'6.99','2005-07-30 16:08:21','2006-02-15 22:12:31'),(294,11,1,10812,'4.99','2005-08-01 22:41:16','2006-02-15 22:12:31'),(295,11,2,11166,'6.99','2005-08-02 10:14:58','2006-02-15 22:12:31'),(296,11,2,11502,'0.99','2005-08-16 23:06:30','2006-02-15 22:12:31'),(297,11,2,12015,'5.99','2005-08-17 19:32:44','2006-02-15 22:12:31'),(298,11,2,13572,'0.99','2005-08-20 05:07:27','2006-02-15 22:12:31'),(299,11,1,13790,'4.99','2005-08-20 12:17:27','2006-02-15 22:12:31'),(300,11,1,15120,'0.99','2005-08-22 12:42:47','2006-02-15 22:12:31'),(301,11,2,15240,'2.99','2005-08-22 17:46:41','2006-02-15 22:12:31'),(302,11,1,11646,'0.99','2006-02-14 15:16:03','2006-02-15 22:12:31'),(303,12,1,988,'4.99','2005-05-30 23:08:03','2006-02-15 22:12:31'),(304,12,1,1084,'4.99','2005-05-31 11:10:17','2006-02-15 22:12:31'),(305,12,2,1752,'5.99','2005-06-16 17:02:55','2006-02-15 22:12:31'),(306,12,2,2434,'5.99','2005-06-18 18:11:51','2006-02-15 22:12:31'),(307,12,2,2500,'5.99','2005-06-18 23:07:12','2006-02-15 22:12:31'),(308,12,2,2623,'4.99','2005-06-19 08:11:51','2006-02-15 22:12:31'),(309,12,2,3135,'2.99','2005-06-20 19:33:52','2006-02-15 22:12:31'),(310,12,1,3411,'0.99','2005-06-21 16:31:27','2006-02-15 22:12:31'),(311,12,1,3870,'3.99','2005-07-06 17:57:54','2006-02-15 22:12:31'),(312,12,1,5071,'0.99','2005-07-09 05:00:39','2006-02-15 22:12:31'),(313,12,1,5074,'0.99','2005-07-09 05:06:24','2006-02-15 22:12:31'),(314,12,2,5111,'0.99','2005-07-09 07:02:19','2006-02-15 22:12:31'),(315,12,2,5242,'3.99','2005-07-09 13:20:25','2006-02-15 22:12:31'),(316,12,1,6773,'2.99','2005-07-12 15:55:39','2006-02-15 22:12:31'),(317,12,2,7008,'0.99','2005-07-27 01:44:03','2006-02-15 22:12:31'),(318,12,2,7279,'0.99','2005-07-27 11:50:47','2006-02-15 22:12:31'),(319,12,2,8985,'0.99','2005-07-30 04:34:51','2006-02-15 22:12:31'),(320,12,2,9166,'4.99','2005-07-30 11:26:28','2006-02-15 22:12:31'),(321,12,2,9238,'5.99','2005-07-30 13:49:43','2006-02-15 22:12:31'),(322,12,1,9627,'5.99','2005-07-31 04:42:46','2006-02-15 22:12:31'),(323,12,2,9708,'5.99','2005-07-31 07:45:33','2006-02-15 22:12:31'),(324,12,2,10392,'10.99','2005-08-01 06:50:26','2006-02-15 22:12:31'),(325,12,2,11497,'0.99','2005-08-16 22:52:30','2006-02-15 22:12:31'),(326,12,1,12604,'4.99','2005-08-18 16:58:48','2006-02-15 22:12:31'),(327,12,2,13519,'0.99','2005-08-20 02:37:07','2006-02-15 22:12:31'),(328,12,2,13895,'2.99','2005-08-20 15:58:28','2006-02-15 22:12:31'),(329,12,2,14240,'4.99','2005-08-21 05:19:39','2006-02-15 22:12:31'),(330,12,1,15993,'0.99','2005-08-23 20:28:44','2006-02-15 22:12:31'),(331,13,1,1933,'2.99','2005-06-17 06:54:42','2006-02-15 22:12:31'),(332,13,1,2209,'4.99','2005-06-18 02:24:01','2006-02-15 22:12:31'),(333,13,1,2952,'2.99','2005-06-20 06:26:57','2006-02-15 22:12:31'),(334,13,1,3047,'8.99','2005-06-20 12:45:33','2006-02-15 22:12:31'),(335,13,2,3946,'2.99','2005-07-06 21:39:24','2006-02-15 22:12:31'),(336,13,1,6118,'8.99','2005-07-11 07:43:08','2006-02-15 22:12:31'),(337,13,1,6568,'2.99','2005-07-12 05:45:47','2006-02-15 22:12:31'),(338,13,1,6870,'0.99','2005-07-12 20:13:45','2006-02-15 22:12:31'),(339,13,1,6897,'2.99','2005-07-12 21:30:41','2006-02-15 22:12:31'),(340,13,1,7916,'2.99','2005-07-28 11:49:53','2006-02-15 22:12:31'),(341,13,1,8277,'2.99','2005-07-29 01:38:53','2006-02-15 22:12:31'),(342,13,2,8831,'11.99','2005-07-29 22:37:41','2006-02-15 22:12:31'),(343,13,2,9260,'9.99','2005-07-30 14:38:22','2006-02-15 22:12:31'),(344,13,2,9434,'0.99','2005-07-30 21:29:41','2006-02-15 22:12:32'),(345,13,1,9664,'0.99','2005-07-31 06:12:08','2006-02-15 22:12:32'),(346,13,1,9736,'7.99','2005-07-31 08:58:40','2006-02-15 22:12:32'),(347,13,1,10003,'4.99','2005-07-31 17:48:51','2006-02-15 22:12:32'),(348,13,1,11292,'4.99','2005-08-02 14:58:41','2006-02-15 22:12:32'),(349,13,2,11315,'0.99','2005-08-02 16:05:17','2006-02-15 22:12:32'),(350,13,2,11761,'5.99','2005-08-17 09:44:59','2006-02-15 22:12:32'),(351,13,2,12918,'7.99','2005-08-19 04:31:36','2006-02-15 22:12:32'),(352,13,2,13096,'4.99','2005-08-19 10:49:03','2006-02-15 22:12:32'),(353,13,2,13213,'0.99','2005-08-19 15:25:48','2006-02-15 22:12:32'),(354,13,1,13456,'0.99','2005-08-20 00:33:19','2006-02-15 22:12:32'),(355,13,1,14252,'9.99','2005-08-21 05:44:07','2006-02-15 22:12:32'),(356,13,2,14545,'7.99','2005-08-21 15:44:23','2006-02-15 22:12:32'),(357,13,1,15338,'4.99','2005-08-22 20:51:24','2006-02-15 22:12:32'),(358,14,1,151,'0.99','2005-05-26 00:37:28','2006-02-15 22:12:32'),(359,14,1,346,'9.99','2005-05-27 04:34:41','2006-02-15 22:12:32'),(360,14,1,525,'5.99','2005-05-28 04:25:33','2006-02-15 22:12:32'),(361,14,1,671,'2.99','2005-05-28 22:04:30','2006-02-15 22:12:32'),(362,14,2,815,'0.99','2005-05-29 20:24:28','2006-02-15 22:12:32'),(363,14,2,1360,'4.99','2005-06-15 13:32:15','2006-02-15 22:12:32'),(364,14,1,3707,'2.99','2005-07-06 10:21:49','2006-02-15 22:12:32'),(365,14,1,4952,'0.99','2005-07-08 23:00:07','2006-02-15 22:12:32'),(366,14,1,5104,'0.99','2005-07-09 06:37:07','2006-02-15 22:12:32'),(367,14,2,5317,'7.99','2005-07-09 16:10:25','2006-02-15 22:12:32'),(368,14,1,5383,'4.99','2005-07-09 19:14:32','2006-02-15 22:12:32'),(369,14,1,5565,'7.99','2005-07-10 03:29:48','2006-02-15 22:12:32'),(370,14,1,8035,'6.99','2005-07-28 16:23:01','2006-02-15 22:12:32'),(371,14,1,8042,'0.99','2005-07-28 16:45:11','2006-02-15 22:12:32'),(372,14,1,8548,'3.99','2005-07-29 11:11:33','2006-02-15 22:12:32'),(373,14,2,8836,'4.99','2005-07-29 22:46:08','2006-02-15 22:12:32'),(374,14,2,9438,'4.99','2005-07-30 21:36:15','2006-02-15 22:12:32'),(375,14,1,9592,'2.99','2005-07-31 03:21:16','2006-02-15 22:12:32'),(376,14,1,10348,'2.99','2005-08-01 05:23:00','2006-02-15 22:12:32'),(377,14,2,10526,'6.99','2005-08-01 11:55:33','2006-02-15 22:12:32'),(378,14,1,11480,'4.99','2005-08-02 22:18:24','2006-02-15 22:12:32'),(379,14,2,11528,'3.99','2005-08-17 00:27:23','2006-02-15 22:12:32'),(380,14,1,12668,'2.99','2005-08-18 19:16:47','2006-02-15 22:12:32'),(381,14,1,13757,'4.99','2005-08-20 11:20:12','2006-02-15 22:12:32'),(382,14,2,15015,'6.99','2005-08-22 08:43:50','2006-02-15 22:12:32'),(383,14,1,15373,'0.99','2005-08-22 22:08:11','2006-02-15 22:12:32'),(384,14,1,16045,'0.99','2005-08-23 22:25:26','2006-02-15 22:12:32'),(385,14,1,13780,'4.99','2006-02-14 15:16:03','2006-02-15 22:12:32'),(386,15,1,2486,'2.99','2005-06-18 21:26:56','2006-02-15 22:12:32'),(387,15,1,2937,'5.99','2005-06-20 05:15:37','2006-02-15 22:12:32'),(388,15,2,3182,'0.99','2005-06-20 22:52:18','2006-02-15 22:12:32'),(389,15,1,3550,'7.99','2005-07-06 02:29:21','2006-02-15 22:12:32'),(390,15,1,4127,'5.99','2005-07-07 07:26:19','2006-02-15 22:12:32'),(391,15,1,5717,'2.99','2005-07-10 11:02:03','2006-02-15 22:12:32'),(392,15,2,5975,'2.99','2005-07-11 00:14:19','2006-02-15 22:12:32'),(393,15,1,7105,'4.99','2005-07-27 05:15:37','2006-02-15 22:12:32'),(394,15,1,8193,'0.99','2005-07-28 22:50:50','2006-02-15 22:12:32'),(395,15,2,8615,'6.99','2005-07-29 13:36:01','2006-02-15 22:12:32'),(396,15,2,8927,'4.99','2005-07-30 02:13:31','2006-02-15 22:12:32'),(397,15,1,9987,'2.99','2005-07-31 17:22:35','2006-02-15 22:12:32'),(398,15,1,11118,'2.99','2005-08-02 08:44:18','2006-02-15 22:12:32'),(399,15,1,11141,'2.99','2005-08-02 09:29:11','2006-02-15 22:12:32'),(400,15,2,11307,'2.99','2005-08-02 15:48:08','2006-02-15 22:12:32'),(401,15,2,11341,'2.99','2005-08-02 17:09:24','2006-02-15 22:12:32'),(402,15,1,11922,'7.99','2005-08-17 16:20:37','2006-02-15 22:12:32'),(403,15,2,12272,'2.99','2005-08-18 04:39:10','2006-02-15 22:12:32'),(404,15,2,12551,'2.99','2005-08-18 14:46:26','2006-02-15 22:12:32'),(405,15,1,12635,'2.99','2005-08-18 18:00:23','2006-02-15 22:12:32'),(406,15,2,13339,'8.99','2005-08-19 20:18:36','2006-02-15 22:12:32'),(407,15,1,13393,'5.99','2005-08-19 22:03:46','2006-02-15 22:12:32'),(408,15,2,13503,'5.99','2005-08-20 02:00:33','2006-02-15 22:12:32'),(409,15,1,13541,'4.99','2005-08-20 03:41:41','2006-02-15 22:12:32'),(410,15,2,13677,'3.99','2005-08-20 08:34:41','2006-02-15 22:12:32'),(411,15,2,14569,'0.99','2005-08-21 16:31:22','2006-02-15 22:12:32'),(412,15,2,14776,'4.99','2005-08-21 23:53:35','2006-02-15 22:12:32'),(413,15,2,14872,'8.99','2005-08-22 03:23:41','2006-02-15 22:12:32'),(414,15,1,15178,'0.99','2005-08-22 15:36:04','2006-02-15 22:12:32'),(415,15,1,15897,'4.99','2005-08-23 17:12:31','2006-02-15 22:12:32'),(416,15,1,13798,'3.98','2006-02-14 15:16:03','2006-02-15 22:12:32'),(417,15,2,13968,'0.00','2006-02-14 15:16:03','2006-02-15 22:12:32'),(418,16,1,335,'3.99','2005-05-27 03:07:10','2006-02-15 22:12:32'),(419,16,1,593,'2.99','2005-05-28 13:33:23','2006-02-15 22:12:32'),(420,16,2,887,'0.99','2005-05-30 07:10:00','2006-02-15 22:12:32'),(421,16,1,1017,'2.99','2005-05-31 02:53:36','2006-02-15 22:12:32'),(422,16,2,1934,'6.99','2005-06-17 07:04:57','2006-02-15 22:12:32'),(423,16,1,1944,'7.99','2005-06-17 07:50:53','2006-02-15 22:12:32'),(424,16,1,NULL,'1.99','2005-06-18 04:56:12','2006-02-15 22:12:32'),(425,16,1,2960,'7.99','2005-06-20 07:10:09','2006-02-15 22:12:32'),(426,16,2,3348,'0.99','2005-06-21 11:16:42','2006-02-15 22:12:32'),(427,16,1,3548,'0.99','2005-07-06 02:23:39','2006-02-15 22:12:32'),(428,16,2,4219,'2.99','2005-07-07 12:11:22','2006-02-15 22:12:32'),(429,16,2,4263,'3.99','2005-07-07 14:24:44','2006-02-15 22:12:32'),(430,16,2,4517,'4.99','2005-07-08 02:45:19','2006-02-15 22:12:32'),(431,16,1,6100,'4.99','2005-07-11 06:40:31','2006-02-15 22:12:32'),(432,16,2,7489,'0.99','2005-07-27 19:39:38','2006-02-15 22:12:32'),(433,16,2,7552,'2.99','2005-07-27 22:03:41','2006-02-15 22:12:32'),(434,16,2,8452,'5.99','2005-07-29 07:45:00','2006-02-15 22:12:32'),(435,16,2,9158,'0.99','2005-07-30 11:12:03','2006-02-15 22:12:32'),(436,16,2,9610,'5.99','2005-07-31 03:54:05','2006-02-15 22:12:32'),(437,16,2,10687,'2.99','2005-08-01 17:53:02','2006-02-15 22:12:32'),(438,16,2,10727,'2.99','2005-08-01 19:15:08','2006-02-15 22:12:32'),(439,16,2,11308,'0.99','2005-08-02 15:50:44','2006-02-15 22:12:32'),(440,16,2,12104,'2.99','2005-08-17 22:53:00','2006-02-15 22:12:32'),(441,16,1,12358,'4.99','2005-08-18 07:41:43','2006-02-15 22:12:32'),(442,16,1,12577,'7.99','2005-08-18 15:39:46','2006-02-15 22:12:32'),(443,16,2,13151,'4.99','2005-08-19 13:08:23','2006-02-15 22:12:32'),(444,16,1,13391,'4.99','2005-08-19 22:01:42','2006-02-15 22:12:32'),(445,16,1,13480,'6.99','2005-08-20 01:10:27','2006-02-15 22:12:32'),(446,16,1,14511,'8.99','2005-08-21 14:45:34','2006-02-15 22:12:32'),(447,17,2,287,'2.99','2005-05-26 19:44:54','2006-02-15 22:12:32'),(448,17,1,580,'2.99','2005-05-28 11:19:53','2006-02-15 22:12:32'),(449,17,2,884,'4.99','2005-05-30 06:41:32','2006-02-15 22:12:32'),(450,17,2,2175,'5.99','2005-06-18 00:17:58','2006-02-15 22:12:32'),(451,17,1,2684,'8.99','2005-06-19 12:29:08','2006-02-15 22:12:32'),(452,17,2,3269,'5.99','2005-06-21 05:06:30','2006-02-15 22:12:32'),(453,17,1,5714,'3.99','2005-07-10 10:46:57','2006-02-15 22:12:32'),(454,17,1,5883,'3.99','2005-07-10 19:25:21','2006-02-15 22:12:32'),(455,17,2,6884,'1.99','2005-07-12 20:52:41','2006-02-15 22:12:32'),(456,17,2,8076,'8.99','2005-07-28 17:45:58','2006-02-15 22:12:32'),(457,17,1,8213,'2.99','2005-07-28 23:37:33','2006-02-15 22:12:32'),(458,17,2,9092,'8.99','2005-07-30 08:30:56','2006-02-15 22:12:32'),(459,17,1,9138,'2.99','2005-07-30 10:11:52','2006-02-15 22:12:32'),(460,17,2,9382,'8.99','2005-07-30 19:23:44','2006-02-15 22:12:32'),(461,17,1,9489,'0.99','2005-07-30 23:43:32','2006-02-15 22:12:32'),(462,17,2,11990,'4.99','2005-08-17 18:26:22','2006-02-15 22:12:32'),(463,17,1,13732,'2.99','2005-08-20 10:24:41','2006-02-15 22:12:32'),(464,17,1,14040,'2.99','2005-08-20 21:43:44','2006-02-15 22:12:32'),(465,17,2,14326,'2.99','2005-08-21 08:15:41','2006-02-15 22:12:32'),(466,17,1,14346,'2.99','2005-08-21 08:42:26','2006-02-15 22:12:32'),(467,17,2,15752,'5.99','2005-08-23 12:41:38','2006-02-15 22:12:32'),(468,18,1,50,'2.99','2005-05-25 06:44:53','2006-02-15 22:12:32'),(469,18,1,116,'4.99','2005-05-25 19:27:51','2006-02-15 22:12:32'),(470,18,1,692,'4.99','2005-05-29 01:32:10','2006-02-15 22:12:32'),(471,18,2,1451,'5.99','2005-06-15 19:30:18','2006-02-15 22:12:32'),(472,18,2,1783,'4.99','2005-06-16 19:23:23','2006-02-15 22:12:32'),(473,18,2,2112,'5.99','2005-06-17 19:52:42','2006-02-15 22:12:32'),(474,18,1,2990,'8.99','2005-06-20 09:02:51','2006-02-15 22:12:32'),(475,18,2,4672,'3.99','2005-07-08 10:15:38','2006-02-15 22:12:32'),(476,18,2,4724,'3.99','2005-07-08 12:46:30','2006-02-15 22:12:32'),(477,18,2,4923,'3.99','2005-07-08 21:44:39','2006-02-15 22:12:32'),(478,18,2,6128,'2.99','2005-07-11 08:15:08','2006-02-15 22:12:32'),(479,18,1,6846,'0.99','2005-07-12 19:20:45','2006-02-15 22:12:32'),(480,18,2,8122,'2.99','2005-07-28 19:27:37','2006-02-15 22:12:32'),(481,18,1,8555,'4.99','2005-07-29 11:18:01','2006-02-15 22:12:32'),(482,18,1,9036,'4.99','2005-07-30 06:18:38','2006-02-15 22:12:32'),(483,18,2,9114,'4.99','2005-07-30 09:13:21','2006-02-15 22:12:32'),(484,18,1,10682,'4.99','2005-08-01 17:32:53','2006-02-15 22:12:32'),(485,18,2,10721,'1.99','2005-08-01 19:05:18','2006-02-15 22:12:32'),(486,18,2,11094,'4.99','2005-08-02 08:03:02','2006-02-15 22:12:33'),(487,18,2,11439,'4.99','2005-08-02 20:22:45','2006-02-15 22:12:33'),(488,18,2,12333,'0.99','2005-08-18 06:51:39','2006-02-15 22:12:33'),(489,18,2,13490,'0.99','2005-08-20 01:29:29','2006-02-15 22:12:33'),(490,19,2,18,'0.99','2005-05-25 01:10:47','2006-02-15 22:12:33'),(491,19,2,110,'9.99','2005-05-25 18:43:49','2006-02-15 22:12:33'),(492,19,1,179,'6.99','2005-05-26 04:26:06','2006-02-15 22:12:33'),(493,19,1,337,'2.99','2005-05-27 03:22:30','2006-02-15 22:12:33'),(494,19,2,591,'2.99','2005-05-28 13:11:04','2006-02-15 22:12:33'),(495,19,2,696,'2.99','2005-05-29 01:59:10','2006-02-15 22:12:33'),(496,19,1,2657,'2.99','2005-06-19 10:42:59','2006-02-15 22:12:33'),(497,19,1,2848,'2.99','2005-06-19 22:55:37','2006-02-15 22:12:33'),(498,19,2,3423,'2.99','2005-06-21 17:38:02','2006-02-15 22:12:33'),(499,19,2,3549,'4.99','2005-07-06 02:24:55','2006-02-15 22:12:33'),(500,19,2,6495,'4.99','2005-07-12 02:57:02','2006-02-15 22:12:33'),(501,19,1,9157,'5.99','2005-07-30 11:06:23','2006-02-15 22:12:33'),(502,19,1,9256,'0.99','2005-07-30 14:29:29','2006-02-15 22:12:33'),(503,19,2,10077,'9.99','2005-07-31 20:01:06','2006-02-15 22:12:33'),(504,19,1,10176,'7.99','2005-07-31 23:40:35','2006-02-15 22:12:33'),(505,19,2,11508,'8.99','2005-08-16 23:27:36','2006-02-15 22:12:33'),(506,19,1,11869,'5.99','2005-08-17 14:10:22','2006-02-15 22:12:33'),(507,19,1,12211,'9.99','2005-08-18 02:31:18','2006-02-15 22:12:33'),(508,19,2,12357,'2.99','2005-08-18 07:40:52','2006-02-15 22:12:33'),(509,19,1,13718,'8.99','2005-08-20 09:53:44','2006-02-15 22:12:33'),(510,19,2,13804,'8.99','2005-08-20 12:46:32','2006-02-15 22:12:33'),(511,19,1,14101,'4.99','2005-08-21 00:33:03','2006-02-15 22:12:33'),(512,19,1,15047,'2.99','2005-08-22 09:57:16','2006-02-15 22:12:33'),(513,19,2,15529,'0.99','2005-08-23 03:46:47','2006-02-15 22:12:33'),(514,20,2,202,'2.99','2005-05-26 07:27:36','2006-02-15 22:12:33'),(515,20,2,497,'6.99','2005-05-28 00:54:39','2006-02-15 22:12:33'),(516,20,2,546,'1.99','2005-05-28 07:16:25','2006-02-15 22:12:33'),(517,20,2,1558,'0.99','2005-06-16 02:33:53','2006-02-15 22:12:33'),(518,20,2,2136,'3.99','2005-06-17 21:16:41','2006-02-15 22:12:33'),(519,20,2,2343,'4.99','2005-06-18 11:46:26','2006-02-15 22:12:33'),(520,20,1,3350,'4.99','2005-06-21 11:21:38','2006-02-15 22:12:33'),(521,20,2,4011,'3.99','2005-07-07 00:48:25','2006-02-15 22:12:33'),(522,20,1,4407,'2.99','2005-07-07 21:39:45','2006-02-15 22:12:33'),(523,20,1,5718,'2.99','2005-07-10 11:03:20','2006-02-15 22:12:33'),(524,20,1,6254,'2.99','2005-07-11 15:10:18','2006-02-15 22:12:33'),(525,20,2,6267,'6.99','2005-07-11 15:53:00','2006-02-15 22:12:33'),(526,20,2,7217,'4.99','2005-07-27 09:31:44','2006-02-15 22:12:33'),(527,20,2,7864,'5.99','2005-07-28 10:06:10','2006-02-15 22:12:33'),(528,20,2,8127,'2.99','2005-07-28 19:45:19','2006-02-15 22:12:33'),(529,20,2,9075,'4.99','2005-07-30 07:55:14','2006-02-15 22:12:33'),(530,20,2,9468,'3.99','2005-07-30 22:53:52','2006-02-15 22:12:33'),(531,20,2,10284,'4.99','2005-08-01 03:33:19','2006-02-15 22:12:33'),(532,20,1,10616,'7.99','2005-08-01 14:59:50','2006-02-15 22:12:33'),(533,20,1,10954,'1.99','2005-08-02 03:30:24','2006-02-15 22:12:33'),(534,20,1,11821,'0.99','2005-08-17 12:27:55','2006-02-15 22:12:33'),(535,20,1,12180,'0.99','2005-08-18 01:28:15','2006-02-15 22:12:33'),(536,20,2,13036,'4.99','2005-08-19 08:48:37','2006-02-15 22:12:33'),(537,20,1,13137,'4.99','2005-08-19 12:26:32','2006-02-15 22:12:33'),(538,20,2,13317,'2.99','2005-08-19 19:25:42','2006-02-15 22:12:33'),(539,20,2,14613,'2.99','2005-08-21 18:03:20','2006-02-15 22:12:33'),(540,20,2,15057,'6.99','2005-08-22 10:19:58','2006-02-15 22:12:33'),(541,20,1,15161,'1.99','2005-08-22 14:37:22','2006-02-15 22:12:33'),(542,20,2,15248,'0.99','2005-08-22 17:53:06','2006-02-15 22:12:33'),(543,20,1,15460,'2.99','2005-08-23 01:10:42','2006-02-15 22:12:33'),(544,21,1,260,'3.99','2005-05-26 15:42:20','2006-02-15 22:12:33'),(545,21,2,463,'3.99','2005-05-27 20:11:47','2006-02-15 22:12:33'),(546,21,1,570,'0.99','2005-05-28 10:15:04','2006-02-15 22:12:33'),(547,21,2,2235,'7.99','2005-06-18 04:08:50','2006-02-15 22:12:33'),(548,21,1,2268,'4.99','2005-06-18 06:13:41','2006-02-15 22:12:33'),(549,21,1,2393,'2.99','2005-06-18 15:37:55','2006-02-15 22:12:33'),(550,21,2,2830,'4.99','2005-06-19 21:14:33','2006-02-15 22:12:33'),(551,21,1,3212,'10.99','2005-06-21 01:04:35','2006-02-15 22:12:33'),(552,21,2,5107,'4.99','2005-07-09 06:42:32','2006-02-15 22:12:33'),(553,21,1,5772,'3.99','2005-07-10 13:27:40','2006-02-15 22:12:33'),(554,21,1,5961,'2.99','2005-07-10 23:43:23','2006-02-15 22:12:33'),(555,21,2,6943,'1.99','2005-07-26 23:28:13','2006-02-15 22:12:33'),(556,21,1,7994,'0.99','2005-07-28 14:56:54','2006-02-15 22:12:33'),(557,21,2,8196,'6.99','2005-07-28 22:56:11','2006-02-15 22:12:33'),(558,21,2,8862,'2.99','2005-07-29 23:49:23','2006-02-15 22:12:33'),(559,21,2,9149,'0.99','2005-07-30 10:45:12','2006-02-15 22:12:33'),(560,21,1,9699,'5.99','2005-07-31 07:29:25','2006-02-15 22:12:33'),(561,21,2,10570,'4.99','2005-08-01 13:23:06','2006-02-15 22:12:33'),(562,21,1,10734,'0.99','2005-08-01 19:28:47','2006-02-15 22:12:33'),(563,21,2,11072,'0.99','2005-08-02 07:10:57','2006-02-15 22:12:33'),(564,21,2,11970,'0.99','2005-08-17 17:53:09','2006-02-15 22:12:33'),(565,21,2,12131,'2.99','2005-08-17 23:34:16','2006-02-15 22:12:33'),(566,21,2,12660,'4.99','2005-08-18 19:07:23','2006-02-15 22:12:33'),(567,21,1,12774,'6.99','2005-08-18 23:34:22','2006-02-15 22:12:33'),(568,21,1,13381,'2.99','2005-08-19 21:37:57','2006-02-15 22:12:33'),(569,21,2,13399,'4.99','2005-08-19 22:09:28','2006-02-15 22:12:33'),(570,21,1,13411,'4.99','2005-08-19 22:43:38','2006-02-15 22:12:33'),(571,21,1,13463,'8.99','2005-08-20 00:50:54','2006-02-15 22:12:33'),(572,21,1,13699,'9.99','2005-08-20 09:26:14','2006-02-15 22:12:33'),(573,21,1,13740,'4.99','2005-08-20 10:48:43','2006-02-15 22:12:33'),(574,21,2,14077,'8.99','2005-08-20 23:24:07','2006-02-15 22:12:33'),(575,21,2,14161,'2.99','2005-08-21 02:51:59','2006-02-15 22:12:33'),(576,21,2,14446,'2.99','2005-08-21 12:10:41','2006-02-15 22:12:33'),(577,21,1,14869,'4.99','2005-08-22 03:20:26','2006-02-15 22:12:33'),(578,21,1,14933,'2.99','2006-02-14 15:16:03','2006-02-15 22:12:33'),(579,22,1,370,'4.99','2005-05-27 07:49:43','2006-02-15 22:12:33'),(580,22,1,556,'4.99','2005-05-28 08:31:36','2006-02-15 22:12:33'),(581,22,2,820,'8.99','2005-05-29 21:07:22','2006-02-15 22:12:33'),(582,22,1,3419,'2.99','2005-06-21 17:18:01','2006-02-15 22:12:33'),(583,22,2,4215,'2.99','2005-07-07 12:00:52','2006-02-15 22:12:33'),(584,22,1,5294,'6.99','2005-07-09 15:23:42','2006-02-15 22:12:33'),(585,22,1,5815,'2.99','2005-07-10 15:48:19','2006-02-15 22:12:33'),(586,22,1,7087,'4.99','2005-07-27 04:42:08','2006-02-15 22:12:33'),(587,22,1,7705,'7.99','2005-07-28 04:02:58','2006-02-15 22:12:33'),(588,22,2,9410,'0.99','2005-07-30 20:38:05','2006-02-15 22:12:33'),(589,22,1,9580,'4.99','2005-07-31 03:01:11','2006-02-15 22:12:33'),(590,22,1,12023,'5.99','2005-08-17 19:54:54','2006-02-15 22:12:33'),(591,22,1,12124,'2.99','2005-08-17 23:22:46','2006-02-15 22:12:33'),(592,22,2,12809,'0.99','2005-08-19 00:42:24','2006-02-15 22:12:33'),(593,22,2,13060,'9.99','2005-08-19 09:43:25','2006-02-15 22:12:33'),(594,22,1,14056,'2.99','2005-08-20 22:18:53','2006-02-15 22:12:33'),(595,22,1,14564,'6.99','2005-08-21 16:24:43','2006-02-15 22:12:33'),(596,22,1,15134,'7.99','2005-08-22 13:18:25','2006-02-15 22:12:33'),(597,22,1,15589,'6.99','2005-08-23 06:03:31','2006-02-15 22:12:33'),(598,22,1,15658,'4.99','2005-08-23 08:48:43','2006-02-15 22:12:33'),(599,22,1,15793,'4.99','2005-08-23 14:06:19','2006-02-15 22:12:33'),(600,22,1,12222,'4.99','2006-02-14 15:16:03','2006-02-15 22:12:33'),(601,23,1,129,'8.99','2005-05-25 21:20:03','2006-02-15 22:12:33'),(602,23,1,654,'2.99','2005-05-28 20:15:30','2006-02-15 22:12:33'),(603,23,2,1090,'0.99','2005-05-31 12:03:44','2006-02-15 22:12:33'),(604,23,1,2753,'1.99','2005-06-19 16:44:35','2006-02-15 22:12:33'),(605,23,1,2827,'0.99','2005-06-19 20:50:01','2006-02-15 22:12:33'),(606,23,1,3015,'5.99','2005-06-20 10:48:56','2006-02-15 22:12:33'),(607,23,1,3055,'4.99','2005-06-20 13:19:58','2006-02-15 22:12:33'),(608,23,1,3461,'2.99','2005-06-21 21:49:18','2006-02-15 22:12:34'),(609,23,2,3736,'3.99','2005-07-06 11:43:44','2006-02-15 22:12:34'),(610,23,2,3781,'2.99','2005-07-06 13:53:41','2006-02-15 22:12:34'),(611,23,2,4853,'2.99','2005-07-08 18:43:18','2006-02-15 22:12:34'),(612,23,1,6213,'2.99','2005-07-11 12:43:07','2006-02-15 22:12:34'),(613,23,1,6238,'2.99','2005-07-11 14:20:18','2006-02-15 22:12:34'),(614,23,2,6917,'5.99','2005-07-12 22:30:15','2006-02-15 22:12:34'),(615,23,1,7155,'7.99','2005-07-27 07:18:46','2006-02-15 22:12:34'),(616,23,1,8015,'2.99','2005-07-28 15:33:03','2006-02-15 22:12:34'),(617,23,2,8718,'0.99','2005-07-29 17:41:14','2006-02-15 22:12:34'),(618,23,2,9209,'5.99','2005-07-30 12:55:36','2006-02-15 22:12:34'),(619,23,2,9255,'9.99','2005-07-30 14:26:46','2006-02-15 22:12:34'),(620,23,2,9718,'3.99','2005-07-31 08:25:03','2006-02-15 22:12:34'),(621,23,1,10132,'6.99','2005-07-31 21:50:24','2006-02-15 22:12:34'),(622,23,1,10898,'2.99','2005-08-02 01:29:57','2006-02-15 22:12:34'),(623,23,2,11501,'2.99','2005-08-16 23:04:53','2006-02-15 22:12:34'),(624,23,2,13290,'2.99','2005-08-19 18:31:50','2006-02-15 22:12:34'),(625,23,2,13331,'4.99','2005-08-19 20:00:25','2006-02-15 22:12:34'),(626,23,2,13429,'6.99','2005-08-19 23:25:37','2006-02-15 22:12:34'),(627,23,2,13511,'0.99','2005-08-20 02:21:40','2006-02-15 22:12:34'),(628,23,2,13557,'0.99','2005-08-20 04:12:41','2006-02-15 22:12:34'),(629,23,2,14482,'2.99','2005-08-21 13:42:45','2006-02-15 22:12:34'),(630,23,2,15532,'2.99','2006-02-14 15:16:03','2006-02-15 22:12:34'),(631,24,2,1007,'6.99','2005-05-31 01:02:28','2006-02-15 22:12:34'),(632,24,2,1077,'2.99','2005-05-31 10:22:54','2006-02-15 22:12:34'),(633,24,1,1716,'2.99','2005-06-16 14:39:31','2006-02-15 22:12:34'),(634,24,1,2070,'2.99','2005-06-17 16:27:51','2006-02-15 22:12:34'),(635,24,2,2116,'4.99','2005-06-17 20:16:12','2006-02-15 22:12:34'),(636,24,1,2451,'5.99','2005-06-18 19:28:02','2006-02-15 22:12:34'),(637,24,2,2963,'7.99','2005-06-20 07:33:09','2006-02-15 22:12:34'),(638,24,2,3649,'7.99','2005-07-06 07:32:42','2006-02-15 22:12:34'),(639,24,2,4378,'2.99','2005-07-07 20:29:08','2006-02-15 22:12:34'),(640,24,1,5310,'0.99','2005-07-09 16:00:34','2006-02-15 22:12:34'),(641,24,2,5648,'0.99','2005-07-10 07:09:21','2006-02-15 22:12:34'),(642,24,1,6855,'4.99','2005-07-12 19:46:29','2006-02-15 22:12:34'),(643,24,1,7266,'1.99','2005-07-27 11:22:17','2006-02-15 22:12:34'),(644,24,1,8947,'4.99','2005-07-30 03:15:37','2006-02-15 22:12:34'),(645,24,1,9723,'0.99','2005-07-31 08:31:18','2006-02-15 22:12:34'),(646,24,2,9925,'0.99','2005-07-31 15:08:47','2006-02-15 22:12:34'),(647,24,2,10491,'2.99','2005-08-01 10:38:27','2006-02-15 22:12:34'),(648,24,1,11209,'2.99','2005-08-02 12:09:45','2006-02-15 22:12:34'),(649,24,2,11546,'2.99','2005-08-17 00:57:36','2006-02-15 22:12:34'),(650,24,2,12165,'8.99','2005-08-18 00:53:37','2006-02-15 22:12:34'),(651,24,1,12745,'2.99','2005-08-18 22:22:45','2006-02-15 22:12:34'),(652,24,1,12999,'1.99','2005-08-19 07:34:53','2006-02-15 22:12:34'),(653,24,2,13058,'4.99','2005-08-19 09:40:53','2006-02-15 22:12:34'),(654,24,1,13247,'0.99','2005-08-19 16:45:59','2006-02-15 22:12:34'),(655,24,2,15357,'4.99','2005-08-22 21:28:59','2006-02-15 22:12:34'),(656,25,1,90,'7.99','2005-05-25 14:31:25','2006-02-15 22:12:34'),(657,25,2,1033,'2.99','2005-05-31 04:50:07','2006-02-15 22:12:34'),(658,25,1,1338,'4.99','2005-06-15 12:17:34','2006-02-15 22:12:34'),(659,25,1,1365,'2.99','2005-06-15 14:09:55','2006-02-15 22:12:34'),(660,25,2,1754,'6.99','2005-06-16 17:13:23','2006-02-15 22:12:34'),(661,25,2,2625,'8.99','2005-06-19 08:23:11','2006-02-15 22:12:34'),(662,25,1,2901,'4.99','2005-06-20 02:41:28','2006-02-15 22:12:34'),(663,25,1,3447,'4.99','2005-06-21 20:53:31','2006-02-15 22:12:34'),(664,25,1,4282,'2.99','2005-07-07 15:26:31','2006-02-15 22:12:34'),(665,25,1,4319,'0.99','2005-07-07 17:50:27','2006-02-15 22:12:34'),(666,25,2,4404,'2.99','2005-07-07 21:31:53','2006-02-15 22:12:34'),(667,25,1,5881,'2.99','2005-07-10 19:19:43','2006-02-15 22:12:34'),(668,25,1,6653,'4.99','2005-07-12 11:06:17','2006-02-15 22:12:34'),(669,25,2,6905,'2.99','2005-07-12 22:02:18','2006-02-15 22:12:34'),(670,25,2,8667,'2.99','2005-07-29 15:40:57','2006-02-15 22:12:34'),(671,25,2,8878,'0.99','2005-07-30 00:15:57','2006-02-15 22:12:34'),(672,25,1,9140,'8.99','2005-07-30 10:12:01','2006-02-15 22:12:34'),(673,25,2,9334,'2.99','2005-07-30 17:56:38','2006-02-15 22:12:34'),(674,25,2,9922,'2.99','2005-07-31 14:59:37','2006-02-15 22:12:34'),(675,25,2,10103,'2.99','2005-07-31 20:49:13','2006-02-15 22:12:34'),(676,25,1,10324,'5.99','2005-08-01 04:49:06','2006-02-15 22:12:34'),(677,25,2,10860,'2.99','2005-08-02 00:12:32','2006-02-15 22:12:34'),(678,25,1,10916,'2.99','2005-08-02 02:05:59','2006-02-15 22:12:34'),(679,25,1,11642,'0.99','2005-08-17 04:48:05','2006-02-15 22:12:34'),(680,25,1,12922,'0.99','2005-08-19 04:48:48','2006-02-15 22:12:34'),(681,25,1,14193,'4.99','2005-08-21 03:38:27','2006-02-15 22:12:34'),(682,25,1,14236,'4.99','2005-08-21 05:13:16','2006-02-15 22:12:34'),(683,25,1,15512,'0.99','2005-08-23 02:57:30','2006-02-15 22:12:34'),(684,25,1,15972,'5.99','2005-08-23 20:00:30','2006-02-15 22:12:34'),(685,26,1,796,'2.99','2005-05-29 16:59:44','2006-02-15 22:12:34'),(686,26,2,1105,'2.99','2005-05-31 14:33:56','2006-02-15 22:12:34'),(687,26,1,1440,'5.99','2005-06-15 18:53:14','2006-02-15 22:12:34'),(688,26,2,1706,'4.99','2005-06-16 14:01:02','2006-02-15 22:12:34'),(689,26,1,2093,'9.99','2005-06-17 18:14:08','2006-02-15 22:12:34'),(690,26,2,2416,'3.99','2005-06-18 17:07:34','2006-02-15 22:12:34'),(691,26,2,2421,'6.99','2005-06-18 17:25:05','2006-02-15 22:12:34'),(692,26,1,2532,'4.99','2005-06-19 01:27:46','2006-02-15 22:12:34'),(693,26,1,2745,'4.99','2005-06-19 16:21:19','2006-02-15 22:12:34'),(694,26,1,4065,'2.99','2005-07-07 04:32:28','2006-02-15 22:12:34'),(695,26,1,4274,'4.99','2005-07-07 14:42:04','2006-02-15 22:12:34'),(696,26,1,4382,'4.99','2005-07-07 20:41:03','2006-02-15 22:12:34'),(697,26,2,4402,'0.99','2005-07-07 21:28:46','2006-02-15 22:12:34'),(698,26,1,4431,'6.99','2005-07-07 22:39:02','2006-02-15 22:12:34'),(699,26,1,4536,'3.99','2005-07-08 03:43:22','2006-02-15 22:12:34'),(700,26,1,4641,'6.99','2005-07-08 09:09:46','2006-02-15 22:12:34'),(701,26,1,5437,'2.99','2005-07-09 21:32:29','2006-02-15 22:12:34'),(702,26,1,6149,'1.99','2005-07-11 09:19:31','2006-02-15 22:12:34'),(703,26,2,6243,'2.99','2005-07-11 14:53:25','2006-02-15 22:12:34'),(704,26,2,7328,'0.99','2005-07-27 13:55:18','2006-02-15 22:12:34'),(705,26,1,8241,'4.99','2005-07-29 00:33:36','2006-02-15 22:12:34'),(706,26,1,9484,'0.99','2005-07-30 23:31:40','2006-02-15 22:12:34'),(707,26,1,10386,'3.99','2005-08-01 06:42:20','2006-02-15 22:12:34'),(708,26,1,10996,'3.99','2005-08-02 04:48:11','2006-02-15 22:12:34'),(709,26,2,11314,'2.99','2005-08-02 16:04:08','2006-02-15 22:12:34'),(710,26,1,11338,'0.99','2005-08-02 17:00:12','2006-02-15 22:12:34'),(711,26,1,11744,'5.99','2005-08-17 08:54:30','2006-02-15 22:12:34'),(712,26,2,13111,'4.99','2005-08-19 11:25:10','2006-02-15 22:12:34'),(713,26,2,14183,'4.99','2005-08-21 03:24:29','2006-02-15 22:12:34'),(714,26,2,14192,'8.99','2005-08-21 03:37:42','2006-02-15 22:12:34'),(715,26,2,14603,'1.99','2005-08-21 17:51:06','2006-02-15 22:12:34'),(716,26,1,14677,'7.99','2005-08-21 20:12:30','2006-02-15 22:12:34'),(717,26,1,15384,'2.99','2005-08-22 22:34:44','2006-02-15 22:12:34'),(718,26,1,15722,'7.99','2005-08-23 11:16:29','2006-02-15 22:12:34'),(719,27,2,787,'2.99','2005-05-29 16:03:03','2006-02-15 22:12:34'),(720,27,1,1310,'4.99','2005-06-15 10:11:42','2006-02-15 22:12:35'),(721,27,2,1480,'4.99','2005-06-15 21:17:17','2006-02-15 22:12:35'),(722,27,2,1699,'2.99','2005-06-16 13:05:09','2006-02-15 22:12:35'),(723,27,2,1960,'3.99','2005-06-17 08:59:57','2006-02-15 22:12:35'),(724,27,2,2512,'2.99','2005-06-18 23:48:47','2006-02-15 22:12:35'),(725,27,1,2815,'4.99','2005-06-19 20:03:29','2006-02-15 22:12:35'),(726,27,1,3038,'1.99','2005-06-20 12:28:59','2006-02-15 22:12:35'),(727,27,2,3420,'3.99','2005-06-21 17:22:36','2006-02-15 22:12:35'),(728,27,2,4038,'0.99','2005-07-07 02:52:53','2006-02-15 22:12:35'),(729,27,1,4510,'5.99','2005-07-08 02:34:51','2006-02-15 22:12:35'),(730,27,1,5552,'0.99','2005-07-10 03:01:19','2006-02-15 22:12:35'),(731,27,1,5736,'4.99','2005-07-10 11:45:48','2006-02-15 22:12:35'),(732,27,2,6115,'0.99','2005-07-11 07:36:50','2006-02-15 22:12:35'),(733,27,2,6562,'5.99','2005-07-12 05:26:26','2006-02-15 22:12:35'),(734,27,2,6658,'4.99','2005-07-12 11:13:21','2006-02-15 22:12:35'),(735,27,1,7927,'1.99','2005-07-28 12:13:42','2006-02-15 22:12:35'),(736,27,2,9244,'0.99','2005-07-30 14:06:53','2006-02-15 22:12:35'),(737,27,2,9636,'5.99','2005-07-31 05:12:59','2006-02-15 22:12:35'),(738,27,1,9673,'7.99','2005-07-31 06:34:55','2006-02-15 22:12:35'),(739,27,1,9908,'4.99','2005-07-31 14:39:52','2006-02-15 22:12:35'),(740,27,1,10794,'7.99','2005-08-01 21:51:15','2006-02-15 22:12:35'),(741,27,1,10852,'4.99','2005-08-02 00:00:33','2006-02-15 22:12:35'),(742,27,1,11234,'0.99','2005-08-02 13:12:17','2006-02-15 22:12:35'),(743,27,1,11661,'8.99','2005-08-17 05:25:57','2006-02-15 22:12:35'),(744,27,2,11740,'6.99','2005-08-17 08:48:31','2006-02-15 22:12:35'),(745,27,2,12021,'5.99','2005-08-17 19:52:43','2006-02-15 22:12:35'),(746,27,2,12461,'0.99','2005-08-18 11:28:14','2006-02-15 22:12:35'),(747,27,1,12531,'2.99','2005-08-18 13:57:50','2006-02-15 22:12:35'),(748,27,2,13816,'4.99','2005-08-20 13:13:56','2006-02-15 22:12:35'),(749,27,1,15048,'0.99','2005-08-22 10:00:04','2006-02-15 22:12:35'),(750,28,2,388,'2.99','2005-05-27 10:37:27','2006-02-15 22:12:35'),(751,28,1,868,'2.99','2005-05-30 04:19:55','2006-02-15 22:12:35'),(752,28,2,1240,'2.99','2005-06-15 04:58:07','2006-02-15 22:12:35'),(753,28,1,1543,'4.99','2005-06-16 01:24:08','2006-02-15 22:12:35'),(754,28,2,2299,'3.99','2005-06-18 08:18:52','2006-02-15 22:12:35'),(755,28,2,2604,'0.99','2005-06-19 06:30:10','2006-02-15 22:12:35'),(756,28,1,3231,'0.99','2005-06-21 02:25:00','2006-02-15 22:12:35'),(757,28,1,3845,'0.99','2005-07-06 16:38:14','2006-02-15 22:12:35'),(758,28,2,4704,'0.99','2005-07-08 11:45:35','2006-02-15 22:12:35'),(759,28,2,4951,'4.99','2005-07-08 22:58:21','2006-02-15 22:12:35'),(760,28,2,5653,'2.99','2005-07-10 07:21:27','2006-02-15 22:12:35'),(761,28,1,5817,'5.99','2005-07-10 15:49:12','2006-02-15 22:12:35'),(762,28,2,6032,'0.99','2005-07-11 02:49:01','2006-02-15 22:12:35'),(763,28,2,6476,'0.99','2005-07-12 01:37:48','2006-02-15 22:12:35'),(764,28,1,7580,'9.99','2005-07-27 23:07:40','2006-02-15 22:12:35'),(765,28,1,8464,'4.99','2005-07-29 08:18:20','2006-02-15 22:12:35'),(766,28,1,8901,'2.99','2005-07-30 01:07:12','2006-02-15 22:12:35'),(767,28,2,9544,'2.99','2005-07-31 01:44:51','2006-02-15 22:12:35'),(768,28,2,9593,'4.99','2005-07-31 03:22:30','2006-02-15 22:12:35'),(769,28,2,9705,'4.99','2005-07-31 07:40:33','2006-02-15 22:12:35'),(770,28,2,10116,'2.99','2005-07-31 21:14:02','2006-02-15 22:12:35'),(771,28,2,10294,'6.99','2005-08-01 03:48:12','2006-02-15 22:12:35'),(772,28,1,11444,'2.99','2005-08-02 20:32:55','2006-02-15 22:12:35'),(773,28,1,11856,'3.99','2005-08-17 13:44:49','2006-02-15 22:12:35'),(774,28,2,12190,'2.99','2005-08-18 01:54:44','2006-02-15 22:12:35'),(775,28,1,12359,'0.99','2005-08-18 07:44:05','2006-02-15 22:12:35'),(776,28,1,12708,'2.99','2005-08-18 20:59:17','2006-02-15 22:12:35'),(777,28,2,13783,'4.99','2005-08-20 12:11:03','2006-02-15 22:12:35'),(778,28,2,14540,'2.99','2005-08-21 15:34:23','2006-02-15 22:12:35'),(779,28,1,15445,'4.99','2005-08-23 00:48:29','2006-02-15 22:12:35'),(780,28,1,15491,'2.99','2005-08-23 02:08:40','2006-02-15 22:12:35'),(781,28,2,12938,'2.99','2006-02-14 15:16:03','2006-02-15 22:12:35'),(782,29,2,194,'1.99','2005-05-26 06:52:33','2006-02-15 22:12:35'),(783,29,1,2655,'0.99','2005-06-19 10:38:42','2006-02-15 22:12:35'),(784,29,1,2673,'0.99','2005-06-19 11:42:20','2006-02-15 22:12:35'),(785,29,1,2701,'7.99','2005-06-19 13:33:06','2006-02-15 22:12:35'),(786,29,1,2735,'2.99','2005-06-19 15:42:07','2006-02-15 22:12:35'),(787,29,2,2801,'2.99','2005-06-19 19:18:09','2006-02-15 22:12:35'),(788,29,2,2923,'2.99','2005-06-20 04:16:07','2006-02-15 22:12:35'),(789,29,1,3324,'2.99','2005-06-21 08:49:16','2006-02-15 22:12:35'),(790,29,2,4262,'6.99','2005-07-07 14:24:30','2006-02-15 22:12:35'),(791,29,1,4313,'0.99','2005-07-07 17:36:56','2006-02-15 22:12:35'),(792,29,2,4535,'0.99','2005-07-08 03:40:46','2006-02-15 22:12:35'),(793,29,2,5442,'10.99','2005-07-09 21:55:19','2006-02-15 22:12:35'),(794,29,1,5857,'1.99','2005-07-10 17:59:29','2006-02-15 22:12:35'),(795,29,2,7237,'3.99','2005-07-27 10:12:36','2006-02-15 22:12:35'),(796,29,1,7451,'6.99','2005-07-27 18:18:41','2006-02-15 22:12:35'),(797,29,1,7453,'0.99','2005-07-27 18:27:13','2006-02-15 22:12:35'),(798,29,2,8673,'2.99','2005-07-29 15:50:14','2006-02-15 22:12:35'),(799,29,2,9392,'4.99','2005-07-30 19:50:13','2006-02-15 22:12:35'),(800,29,1,9946,'4.99','2005-07-31 15:48:54','2006-02-15 22:12:35'),(801,29,1,10543,'5.99','2005-08-01 12:36:09','2006-02-15 22:12:35'),(802,29,2,10899,'1.99','2005-08-02 01:30:21','2006-02-15 22:12:35'),(803,29,1,11079,'4.99','2005-08-02 07:29:10','2006-02-15 22:12:35'),(804,29,2,11962,'2.99','2005-08-17 17:34:38','2006-02-15 22:12:35'),(805,29,1,12488,'4.99','2005-08-18 12:48:22','2006-02-15 22:12:35'),(806,29,1,12508,'2.99','2005-08-18 13:20:13','2006-02-15 22:12:35'),(807,29,2,12569,'6.99','2005-08-18 15:20:46','2006-02-15 22:12:35'),(808,29,2,12615,'6.99','2005-08-18 17:16:07','2006-02-15 22:12:35'),(809,29,2,13173,'2.99','2005-08-19 13:50:36','2006-02-15 22:12:35'),(810,29,1,13436,'0.99','2005-08-19 23:36:25','2006-02-15 22:12:35'),(811,29,2,13777,'2.99','2005-08-20 12:03:35','2006-02-15 22:12:35'),(812,29,1,13832,'3.99','2005-08-20 14:00:25','2006-02-15 22:12:35'),(813,29,1,14174,'0.99','2005-08-21 03:01:45','2006-02-15 22:12:35'),(814,29,1,14703,'4.99','2005-08-21 21:01:19','2006-02-15 22:12:35'),(815,29,1,14985,'7.99','2005-08-22 07:35:56','2006-02-15 22:12:35'),(816,29,1,14997,'5.99','2005-08-22 07:53:00','2006-02-15 22:12:35'),(817,29,2,15577,'0.99','2006-02-14 15:16:03','2006-02-15 22:12:35'),(818,30,2,1874,'1.99','2005-06-17 02:39:20','2006-02-15 22:12:35'),(819,30,2,1895,'2.99','2005-06-17 04:25:12','2006-02-15 22:12:35'),(820,30,2,2154,'4.99','2005-06-17 22:59:42','2006-02-15 22:12:35'),(821,30,2,2730,'2.99','2005-06-19 15:10:09','2006-02-15 22:12:35'),(822,30,1,3964,'4.99','2005-07-06 22:23:02','2006-02-15 22:12:35'),(823,30,2,4471,'2.99','2005-07-08 00:21:29','2006-02-15 22:12:35'),(824,30,2,4642,'2.99','2005-07-08 09:13:28','2006-02-15 22:12:35'),(825,30,2,5028,'5.99','2005-07-09 02:34:45','2006-02-15 22:12:36'),(826,30,1,5108,'9.99','2005-07-09 06:44:30','2006-02-15 22:12:36'),(827,30,1,5289,'0.99','2005-07-09 15:14:08','2006-02-15 22:12:36'),(828,30,2,5972,'7.99','2005-07-11 00:08:54','2006-02-15 22:12:36'),(829,30,1,6249,'0.99','2005-07-11 15:02:02','2006-02-15 22:12:36'),(830,30,2,6359,'2.99','2005-07-11 21:06:17','2006-02-15 22:12:36'),(831,30,2,7394,'2.99','2005-07-27 16:03:08','2006-02-15 22:12:36'),(832,30,2,7769,'4.99','2005-07-28 06:45:23','2006-02-15 22:12:36'),(833,30,1,8030,'4.99','2005-07-28 16:12:53','2006-02-15 22:12:36'),(834,30,2,8038,'4.99','2005-07-28 16:32:55','2006-02-15 22:12:36'),(835,30,1,8083,'4.99','2005-07-28 18:09:48','2006-02-15 22:12:36'),(836,30,1,8641,'2.99','2005-07-29 14:37:30','2006-02-15 22:12:36'),(837,30,2,9309,'2.99','2005-07-30 16:55:53','2006-02-15 22:12:36'),(838,30,2,9551,'0.99','2005-07-31 02:04:58','2006-02-15 22:12:36'),(839,30,1,9641,'0.99','2005-07-31 05:33:48','2006-02-15 22:12:36'),(840,30,1,9998,'2.99','2005-07-31 17:40:35','2006-02-15 22:12:36'),(841,30,1,10235,'6.99','2005-08-01 01:57:48','2006-02-15 22:12:36'),(842,30,1,12240,'2.99','2005-08-18 03:27:11','2006-02-15 22:12:36'),(843,30,1,12546,'2.99','2005-08-18 14:29:37','2006-02-15 22:12:36'),(844,30,2,12758,'0.99','2005-08-18 22:58:34','2006-02-15 22:12:36'),(845,30,1,13435,'0.99','2005-08-19 23:35:44','2006-02-15 22:12:36'),(846,30,1,13682,'4.99','2005-08-20 08:50:39','2006-02-15 22:12:36'),(847,30,1,14339,'0.99','2005-08-21 08:37:15','2006-02-15 22:12:36'),(848,30,1,14585,'2.99','2005-08-21 17:18:33','2006-02-15 22:12:36'),(849,30,1,15063,'4.99','2005-08-22 10:39:51','2006-02-15 22:12:36'),(850,30,1,15544,'4.99','2005-08-23 04:17:56','2006-02-15 22:12:36'),(851,30,2,15829,'2.99','2005-08-23 15:17:14','2006-02-15 22:12:36'),(852,31,2,1656,'4.99','2005-06-16 10:05:40','2006-02-15 22:12:36'),(853,31,1,1838,'1.99','2005-06-16 23:20:16','2006-02-15 22:12:36'),(854,31,1,2233,'0.99','2005-06-18 03:57:36','2006-02-15 22:12:36'),(855,31,2,2341,'6.99','2005-06-18 11:35:30','2006-02-15 22:12:36'),(856,31,1,2396,'7.99','2005-06-18 15:49:48','2006-02-15 22:12:36'),(857,31,2,2438,'0.99','2005-06-18 18:34:21','2006-02-15 22:12:36'),(858,31,1,2530,'0.99','2005-06-19 01:20:00','2006-02-15 22:12:36'),(859,31,2,2648,'4.99','2005-06-19 10:06:20','2006-02-15 22:12:36'),(860,31,2,3117,'2.99','2005-06-20 18:05:15','2006-02-15 22:12:36'),(861,31,2,3172,'1.99','2005-06-20 22:19:25','2006-02-15 22:12:36'),(862,31,1,3205,'0.99','2005-06-21 00:38:47','2006-02-15 22:12:36'),(863,31,1,3701,'4.99','2005-07-06 10:12:45','2006-02-15 22:12:36'),(864,31,2,3967,'4.99','2005-07-06 22:45:10','2006-02-15 22:12:36'),(865,31,1,4122,'6.99','2005-07-07 07:15:35','2006-02-15 22:12:36'),(866,31,2,4738,'9.99','2005-07-08 13:24:58','2006-02-15 22:12:36'),(867,31,1,6208,'3.99','2005-07-11 12:34:56','2006-02-15 22:12:36'),(868,31,2,6580,'4.99','2005-07-12 06:26:10','2006-02-15 22:12:36'),(869,31,1,7000,'1.99','2005-07-27 01:23:24','2006-02-15 22:12:36'),(870,31,2,7138,'3.99','2005-07-27 06:47:13','2006-02-15 22:12:36'),(871,31,2,7178,'2.99','2005-07-27 08:09:25','2006-02-15 22:12:36'),(872,31,2,7464,'2.99','2005-07-27 18:49:42','2006-02-15 22:12:36'),(873,31,2,8997,'0.99','2005-07-30 04:53:56','2006-02-15 22:12:36'),(874,31,2,12085,'4.99','2005-08-17 22:17:09','2006-02-15 22:12:36'),(875,31,1,12377,'0.99','2005-08-18 08:26:05','2006-02-15 22:12:36'),(876,31,2,15682,'6.99','2005-08-23 09:37:34','2006-02-15 22:12:36'),(877,31,2,15816,'6.99','2005-08-23 14:58:06','2006-02-15 22:12:36'),(878,32,2,483,'4.99','2005-05-27 23:00:25','2006-02-15 22:12:36'),(879,32,2,803,'4.99','2005-05-29 17:52:30','2006-02-15 22:12:36'),(880,32,2,1067,'4.99','2005-05-31 09:12:13','2006-02-15 22:12:36'),(881,32,2,1887,'6.99','2005-06-17 03:53:18','2006-02-15 22:12:36'),(882,32,2,2160,'0.99','2005-06-17 23:39:11','2006-02-15 22:12:36'),(883,32,2,2624,'5.99','2005-06-19 08:22:09','2006-02-15 22:12:36'),(884,32,2,2891,'1.99','2005-06-20 02:02:05','2006-02-15 22:12:36'),(885,32,1,3500,'2.99','2005-07-06 00:11:13','2006-02-15 22:12:36'),(886,32,1,4434,'2.99','2005-07-07 22:48:34','2006-02-15 22:12:36'),(887,32,2,4771,'2.99','2005-07-08 15:33:32','2006-02-15 22:12:36'),(888,32,2,4899,'0.99','2005-07-08 20:37:11','2006-02-15 22:12:36'),(889,32,1,5307,'9.99','2005-07-09 15:57:15','2006-02-15 22:12:36'),(890,32,1,5767,'0.99','2005-07-10 13:13:18','2006-02-15 22:12:36'),(891,32,1,5954,'2.99','2005-07-10 23:22:01','2006-02-15 22:12:36'),(892,32,1,6122,'3.99','2005-07-11 07:58:07','2006-02-15 22:12:36'),(893,32,2,6450,'2.99','2005-07-12 00:49:05','2006-02-15 22:12:36'),(894,32,1,7084,'6.99','2005-07-27 04:34:07','2006-02-15 22:12:36'),(895,32,1,7589,'5.99','2005-07-27 23:23:36','2006-02-15 22:12:36'),(896,32,1,7793,'2.99','2005-07-28 07:26:14','2006-02-15 22:12:36'),(897,32,2,8390,'5.99','2005-07-29 05:52:26','2006-02-15 22:12:36'),(898,32,2,8453,'2.99','2005-07-29 07:46:29','2006-02-15 22:12:36'),(899,32,2,8914,'2.99','2005-07-30 01:42:03','2006-02-15 22:12:36'),(900,32,1,11135,'4.99','2005-08-02 09:22:25','2006-02-15 22:12:36'),(901,32,2,11831,'4.99','2005-08-17 12:54:47','2006-02-15 22:12:36'),(902,32,2,12414,'9.99','2005-08-18 09:50:40','2006-02-15 22:12:36'),(903,32,1,13736,'8.99','2005-08-20 10:31:23','2006-02-15 22:12:36'),(904,32,1,13931,'1.99','2005-08-20 17:16:10','2006-02-15 22:12:36'),(905,32,1,14075,'0.99','2005-08-20 23:18:54','2006-02-15 22:12:36'),(906,32,2,14570,'5.99','2005-08-21 16:32:32','2006-02-15 22:12:36'),(907,33,1,165,'2.99','2005-05-26 02:28:36','2006-02-15 22:12:36'),(908,33,1,1301,'10.99','2005-06-15 09:46:33','2006-02-15 22:12:36'),(909,33,2,3173,'8.99','2005-06-20 22:21:10','2006-02-15 22:12:36'),(910,33,1,4095,'5.99','2005-07-07 06:01:48','2006-02-15 22:12:36'),(911,33,1,5421,'0.99','2005-07-09 20:49:12','2006-02-15 22:12:36'),(912,33,1,5723,'4.99','2005-07-10 11:14:48','2006-02-15 22:12:36'),(913,33,2,6280,'0.99','2005-07-11 16:36:17','2006-02-15 22:12:36'),(914,33,1,7992,'4.99','2005-07-28 14:53:06','2006-02-15 22:12:36'),(915,33,1,9040,'4.99','2005-07-30 06:31:45','2006-02-15 22:12:36'),(916,33,2,9085,'4.99','2005-07-30 08:17:24','2006-02-15 22:12:36'),(917,33,1,9254,'1.99','2005-07-30 14:26:11','2006-02-15 22:12:36'),(918,33,2,10335,'2.99','2005-08-01 04:59:30','2006-02-15 22:12:36'),(919,33,1,10870,'4.99','2005-08-02 00:27:12','2006-02-15 22:12:36'),(920,33,1,13241,'7.99','2005-08-19 16:25:00','2006-02-15 22:12:36'),(921,33,1,13858,'2.99','2005-08-20 14:50:57','2006-02-15 22:12:36'),(922,33,1,13958,'7.99','2005-08-20 18:11:44','2006-02-15 22:12:36'),(923,33,1,14002,'0.99','2005-08-20 20:12:19','2006-02-15 22:12:36'),(924,33,1,14623,'0.99','2005-08-21 18:29:13','2006-02-15 22:12:36'),(925,33,1,15096,'5.99','2005-08-22 11:43:04','2006-02-15 22:12:36'),(926,33,2,15115,'2.99','2005-08-22 12:28:01','2006-02-15 22:12:36'),(927,33,1,12277,'0.99','2006-02-14 15:16:03','2006-02-15 22:12:36'),(928,34,1,1900,'4.99','2005-06-17 04:29:58','2006-02-15 22:12:36'),(929,34,2,2257,'5.99','2005-06-18 05:29:52','2006-02-15 22:12:36'),(930,34,1,3150,'0.99','2005-06-20 20:35:28','2006-02-15 22:12:36'),(931,34,2,3508,'3.99','2005-07-06 00:24:25','2006-02-15 22:12:36'),(932,34,1,3911,'2.99','2005-07-06 20:09:11','2006-02-15 22:12:36'),(933,34,1,5188,'4.99','2005-07-09 10:22:31','2006-02-15 22:12:36'),(934,34,2,5643,'4.99','2005-07-10 06:49:00','2006-02-15 22:12:36'),(935,34,2,5918,'5.99','2005-07-10 21:32:06','2006-02-15 22:12:36'),(936,34,2,7015,'2.99','2005-07-27 02:15:01','2006-02-15 22:12:36'),(937,34,2,7124,'2.99','2005-07-27 06:09:30','2006-02-15 22:12:36'),(938,34,1,7532,'0.99','2005-07-27 21:20:52','2006-02-15 22:12:36'),(939,34,1,9160,'3.99','2005-07-30 11:17:33','2006-02-15 22:12:37'),(940,34,1,10523,'0.99','2005-08-01 11:52:32','2006-02-15 22:12:37'),(941,34,1,10615,'4.99','2005-08-01 14:58:14','2006-02-15 22:12:37'),(942,34,2,11096,'0.99','2005-08-02 08:05:19','2006-02-15 22:12:37'),(943,34,1,11505,'2.99','2005-08-16 23:18:47','2006-02-15 22:12:37'),(944,34,2,11701,'4.99','2005-08-17 07:15:47','2006-02-15 22:12:37'),(945,34,2,12286,'2.99','2005-08-18 04:57:59','2006-02-15 22:12:37'),(946,34,1,12599,'2.99','2005-08-18 16:42:45','2006-02-15 22:12:37'),(947,34,1,12651,'0.99','2005-08-18 18:36:16','2006-02-15 22:12:37'),(948,34,1,13371,'4.99','2005-08-19 21:21:47','2006-02-15 22:12:37'),(949,34,2,13949,'2.99','2005-08-20 17:55:13','2006-02-15 22:12:37'),(950,34,1,14686,'5.99','2005-08-21 20:32:08','2006-02-15 22:12:37'),(951,34,2,14701,'7.99','2005-08-21 20:54:32','2006-02-15 22:12:37'),(952,35,2,47,'3.99','2005-05-25 06:05:20','2006-02-15 22:12:37'),(953,35,1,424,'6.99','2005-05-27 15:34:01','2006-02-15 22:12:37'),(954,35,1,1579,'0.99','2005-06-16 04:09:08','2006-02-15 22:12:37'),(955,35,1,1989,'2.99','2005-06-17 10:47:24','2006-02-15 22:12:37'),(956,35,1,2229,'4.99','2005-06-18 03:50:18','2006-02-15 22:12:37'),(957,35,1,2231,'0.99','2005-06-18 03:52:14','2006-02-15 22:12:37'),(958,35,1,2743,'2.99','2005-06-19 16:15:56','2006-02-15 22:12:37'),(959,35,2,3112,'4.99','2005-06-20 17:53:30','2006-02-15 22:12:37'),(960,35,2,3597,'2.99','2005-07-06 05:03:59','2006-02-15 22:12:37'),(961,35,2,4098,'4.99','2005-07-07 06:14:51','2006-02-15 22:12:37'),(962,35,2,4990,'0.99','2005-07-09 00:48:49','2006-02-15 22:12:37'),(963,35,1,5013,'2.99','2005-07-09 01:46:45','2006-02-15 22:12:37'),(964,35,2,5323,'0.99','2005-07-09 16:34:07','2006-02-15 22:12:37'),(965,35,1,5916,'5.99','2005-07-10 21:26:31','2006-02-15 22:12:37'),(966,35,1,5963,'0.99','2005-07-10 23:47:08','2006-02-15 22:12:37'),(967,35,1,6147,'5.99','2005-07-11 09:13:08','2006-02-15 22:12:37'),(968,35,1,6401,'4.99','2005-07-11 22:44:34','2006-02-15 22:12:37'),(969,35,1,6565,'4.99','2005-07-12 05:39:50','2006-02-15 22:12:37'),(970,35,1,6572,'4.99','2005-07-12 05:56:38','2006-02-15 22:12:37'),(971,35,1,7140,'4.99','2005-07-27 06:54:12','2006-02-15 22:12:37'),(972,35,1,8822,'6.99','2005-07-29 22:20:21','2006-02-15 22:12:37'),(973,35,1,8971,'5.99','2005-07-30 04:03:58','2006-02-15 22:12:37'),(974,35,2,9033,'2.99','2005-07-30 06:07:42','2006-02-15 22:12:37'),(975,35,1,9579,'6.99','2005-07-31 02:59:20','2006-02-15 22:12:37'),(976,35,1,11298,'1.99','2005-08-02 15:32:32','2006-02-15 22:12:37'),(977,35,1,11452,'7.99','2005-08-02 20:59:52','2006-02-15 22:12:37'),(978,35,1,11645,'4.99','2005-08-17 04:50:56','2006-02-15 22:12:37'),(979,35,1,12055,'4.99','2005-08-17 21:02:19','2006-02-15 22:12:37'),(980,35,1,13735,'2.99','2005-08-20 10:31:01','2006-02-15 22:12:37'),(981,35,1,14110,'0.99','2005-08-21 00:53:09','2006-02-15 22:12:37'),(982,35,2,14124,'2.99','2005-08-21 01:31:51','2006-02-15 22:12:37'),(983,35,2,14735,'4.99','2005-08-21 22:25:09','2006-02-15 22:12:37'),(984,36,1,349,'0.99','2005-05-27 04:53:11','2006-02-15 22:12:37'),(985,36,1,716,'0.99','2005-05-29 04:35:29','2006-02-15 22:12:37'),(986,36,2,2741,'0.99','2005-06-19 16:05:41','2006-02-15 22:12:37'),(987,36,2,4135,'0.99','2005-07-07 08:15:03','2006-02-15 22:12:37'),(988,36,2,4560,'4.99','2005-07-08 04:58:48','2006-02-15 22:12:37'),(989,36,2,4762,'4.99','2005-07-08 14:54:42','2006-02-15 22:12:37'),(990,36,1,5403,'0.99','2005-07-09 20:07:09','2006-02-15 22:12:37'),(991,36,2,6030,'0.99','2005-07-11 02:37:51','2006-02-15 22:12:37'),(992,36,1,7205,'6.99','2005-07-27 09:06:13','2006-02-15 22:12:37'),(993,36,1,7647,'0.99','2005-07-28 01:35:17','2006-02-15 22:12:37'),(994,36,2,7919,'6.99','2005-07-28 11:59:45','2006-02-15 22:12:37'),(995,36,2,8099,'0.99','2005-07-28 18:35:12','2006-02-15 22:12:37'),(996,36,1,8391,'2.99','2005-07-29 05:52:50','2006-02-15 22:12:37'),(997,36,1,8952,'4.99','2005-07-30 03:20:38','2006-02-15 22:12:37'),(998,36,1,9369,'2.99','2005-07-30 18:52:19','2006-02-15 22:12:37'),(999,36,2,9805,'0.99','2005-07-31 11:11:10','2006-02-15 22:12:37'),(1000,36,2,10525,'2.99','2005-08-01 11:53:17','2006-02-15 22:12:37'),(1001,36,2,10761,'2.99','2005-08-01 20:25:35','2006-02-15 22:12:37'),(1002,36,1,10963,'0.99','2005-08-02 03:48:17','2006-02-15 22:12:37'),(1003,36,2,10964,'6.99','2005-08-02 03:56:23','2006-02-15 22:12:37'),(1004,36,2,11616,'4.99','2005-08-17 04:00:01','2006-02-15 22:12:37'),(1005,36,1,11813,'4.99','2005-08-17 12:06:54','2006-02-15 22:12:37'),(1006,36,2,13562,'2.99','2005-08-20 04:31:45','2006-02-15 22:12:37'),(1007,36,2,13564,'1.99','2005-08-20 04:34:46','2006-02-15 22:12:37'),(1008,36,1,13674,'4.99','2005-08-20 08:30:54','2006-02-15 22:12:37'),(1009,36,1,14647,'9.99','2005-08-21 19:15:33','2006-02-15 22:12:37'),(1010,36,2,15657,'4.99','2005-08-23 08:42:40','2006-02-15 22:12:37'),(1011,37,1,25,'0.99','2005-05-25 03:21:20','2006-02-15 22:12:37'),(1012,37,1,923,'2.99','2005-05-30 11:58:50','2006-02-15 22:12:37'),(1013,37,1,1583,'4.99','2005-06-16 04:44:23','2006-02-15 22:12:37'),(1014,37,2,1812,'1.99','2005-06-16 21:08:46','2006-02-15 22:12:37'),(1015,37,2,1854,'3.99','2005-06-17 00:43:57','2006-02-15 22:12:37'),(1016,37,2,3472,'7.99','2005-07-05 22:56:33','2006-02-15 22:12:37'),(1017,37,1,3734,'5.99','2005-07-06 11:40:27','2006-02-15 22:12:37'),(1018,37,1,5425,'5.99','2005-07-09 21:02:26','2006-02-15 22:12:37'),(1019,37,2,7939,'0.99','2005-07-28 12:45:47','2006-02-15 22:12:37'),(1020,37,1,8419,'9.99','2005-07-29 06:54:48','2006-02-15 22:12:37'),(1021,37,1,9567,'5.99','2005-07-31 02:36:11','2006-02-15 22:12:37'),(1022,37,1,10538,'2.99','2005-08-01 12:22:41','2006-02-15 22:12:37'),(1023,37,1,11176,'3.99','2005-08-02 10:39:43','2006-02-15 22:12:37'),(1024,37,1,13046,'7.99','2005-08-19 09:21:10','2006-02-15 22:12:37'),(1025,37,2,13147,'4.99','2005-08-19 12:55:09','2006-02-15 22:12:37'),(1026,37,2,13444,'0.99','2005-08-20 00:00:24','2006-02-15 22:12:37'),(1027,37,2,13493,'3.99','2005-08-20 01:33:36','2006-02-15 22:12:37'),(1028,37,2,14025,'8.99','2005-08-20 21:19:36','2006-02-15 22:12:37'),(1029,37,1,14084,'0.99','2005-08-20 23:42:46','2006-02-15 22:12:37'),(1030,37,2,14532,'2.99','2005-08-21 15:15:03','2006-02-15 22:12:37'),(1031,37,1,15028,'3.99','2005-08-22 09:03:44','2006-02-15 22:12:37'),(1032,37,1,15904,'0.99','2005-08-23 17:32:19','2006-02-15 22:12:37'),(1033,37,2,16035,'0.99','2005-08-23 22:08:04','2006-02-15 22:12:37'),(1034,38,2,1250,'2.99','2005-06-15 05:55:40','2006-02-15 22:12:37'),(1035,38,1,2550,'1.99','2005-06-19 02:49:55','2006-02-15 22:12:37'),(1036,38,2,2605,'1.99','2005-06-19 06:48:01','2006-02-15 22:12:37'),(1037,38,2,3003,'4.99','2005-06-20 10:00:51','2006-02-15 22:12:37'),(1038,38,2,3392,'3.99','2005-06-21 15:12:44','2006-02-15 22:12:37'),(1039,38,1,4202,'5.99','2005-07-07 11:23:48','2006-02-15 22:12:37'),(1040,38,2,4228,'1.99','2005-07-07 12:42:02','2006-02-15 22:12:37'),(1041,38,1,4300,'4.99','2005-07-07 16:36:16','2006-02-15 22:12:37'),(1042,38,2,4644,'4.99','2005-07-08 09:14:29','2006-02-15 22:12:37'),(1043,38,1,5273,'2.99','2005-07-09 14:31:24','2006-02-15 22:12:37'),(1044,38,2,5460,'2.99','2005-07-09 22:46:14','2006-02-15 22:12:37'),(1045,38,1,5822,'2.99','2005-07-10 16:10:39','2006-02-15 22:12:37'),(1046,38,1,6864,'5.99','2005-07-12 19:59:25','2006-02-15 22:12:38'),(1047,38,1,6961,'0.99','2005-07-27 00:10:49','2006-02-15 22:12:38'),(1048,38,2,7158,'4.99','2005-07-27 07:23:58','2006-02-15 22:12:38'),(1049,38,2,7163,'5.99','2005-07-27 07:36:11','2006-02-15 22:12:38'),(1050,38,2,7321,'5.99','2005-07-27 13:33:38','2006-02-15 22:12:38'),(1051,38,1,7795,'0.99','2005-07-28 07:28:16','2006-02-15 22:12:38'),(1052,38,2,8924,'3.99','2005-07-30 02:08:58','2006-02-15 22:12:38'),(1053,38,2,9216,'0.99','2005-07-30 13:11:19','2006-02-15 22:12:38'),(1054,38,1,9284,'0.99','2005-07-30 15:25:19','2006-02-15 22:12:38'),(1055,38,1,9621,'4.99','2005-07-31 04:21:08','2006-02-15 22:12:38'),(1056,38,2,10111,'2.99','2005-07-31 21:08:33','2006-02-15 22:12:38'),(1057,38,2,10524,'6.99','2005-08-01 11:53:12','2006-02-15 22:12:38'),(1058,38,2,11049,'3.99','2005-08-02 06:15:40','2006-02-15 22:12:38'),(1059,38,1,11344,'2.99','2005-08-02 17:13:26','2006-02-15 22:12:38'),(1060,38,1,11817,'4.99','2005-08-17 12:20:01','2006-02-15 22:12:38'),(1061,38,2,12092,'0.99','2005-08-17 22:28:15','2006-02-15 22:12:38'),(1062,38,2,12187,'1.99','2005-08-18 01:45:50','2006-02-15 22:12:38'),(1063,38,1,14554,'4.99','2005-08-21 16:03:01','2006-02-15 22:12:38'),(1064,38,2,14632,'2.99','2005-08-21 18:48:06','2006-02-15 22:12:38'),(1065,38,1,14787,'6.99','2005-08-22 00:25:59','2006-02-15 22:12:38'),(1066,38,1,15668,'2.99','2005-08-23 09:02:04','2006-02-15 22:12:38'),(1067,38,1,15738,'5.99','2005-08-23 11:55:50','2006-02-15 22:12:38'),(1068,39,1,1625,'5.99','2005-06-16 07:49:08','2006-02-15 22:12:38'),(1069,39,1,1905,'4.99','2005-06-17 04:51:43','2006-02-15 22:12:38'),(1070,39,2,2135,'0.99','2005-06-17 21:14:02','2006-02-15 22:12:38'),(1071,39,2,2439,'4.99','2005-06-18 18:35:04','2006-02-15 22:12:38'),(1072,39,1,2631,'4.99','2005-06-19 08:49:53','2006-02-15 22:12:38'),(1073,39,1,2876,'4.99','2005-06-20 01:06:34','2006-02-15 22:12:38'),(1074,39,1,4419,'5.99','2005-07-07 22:06:24','2006-02-15 22:12:38'),(1075,39,2,4695,'8.99','2005-07-08 11:07:59','2006-02-15 22:12:38'),(1076,39,2,4712,'6.99','2005-07-08 12:10:50','2006-02-15 22:12:38'),(1077,39,2,4727,'7.99','2005-07-08 12:54:15','2006-02-15 22:12:38'),(1078,39,1,5451,'4.99','2005-07-09 22:22:10','2006-02-15 22:12:38'),(1079,39,2,5515,'2.99','2005-07-10 01:12:44','2006-02-15 22:12:38'),(1080,39,1,6045,'2.99','2005-07-11 03:21:05','2006-02-15 22:12:38'),(1081,39,2,8307,'6.99','2005-07-29 03:18:34','2006-02-15 22:12:38'),(1082,39,2,8366,'1.99','2005-07-29 05:11:14','2006-02-15 22:12:38'),(1083,39,2,8723,'7.99','2005-07-29 18:03:47','2006-02-15 22:12:38'),(1084,39,1,8805,'2.99','2005-07-29 21:29:58','2006-02-15 22:12:38'),(1085,39,1,9431,'1.99','2005-07-30 21:24:22','2006-02-15 22:12:38'),(1086,39,1,9656,'4.99','2005-07-31 06:00:21','2006-02-15 22:12:38'),(1087,39,2,10052,'4.99','2005-07-31 19:15:13','2006-02-15 22:12:38'),(1088,39,1,10126,'0.99','2005-07-31 21:36:07','2006-02-15 22:12:38'),(1089,39,1,10251,'4.99','2005-08-01 02:39:12','2006-02-15 22:12:38'),(1090,39,2,10269,'4.99','2005-08-01 03:09:26','2006-02-15 22:12:38'),(1091,39,2,10630,'0.99','2005-08-01 15:34:46','2006-02-15 22:12:38'),(1092,39,1,10639,'9.99','2005-08-01 15:44:43','2006-02-15 22:12:38'),(1093,39,2,12268,'0.99','2005-08-18 04:26:54','2006-02-15 22:12:38'),(1094,39,2,12459,'4.99','2005-08-18 11:25:11','2006-02-15 22:12:38'),(1095,39,2,13101,'7.99','2005-08-19 11:01:54','2006-02-15 22:12:38'),(1096,39,2,15124,'5.99','2005-08-22 12:51:38','2006-02-15 22:12:38'),(1097,40,1,128,'4.99','2005-05-25 21:19:53','2006-02-15 22:12:38'),(1098,40,2,2470,'7.99','2005-06-18 20:28:31','2006-02-15 22:12:38'),(1099,40,2,2896,'2.99','2005-06-20 02:33:42','2006-02-15 22:12:38'),(1100,40,1,2993,'4.99','2005-06-20 09:12:12','2006-02-15 22:12:38'),(1101,40,1,3428,'0.99','2005-06-21 18:39:34','2006-02-15 22:12:38'),(1102,40,2,5001,'1.99','2005-07-09 01:17:04','2006-02-15 22:12:38'),(1103,40,2,5777,'2.99','2005-07-10 13:38:41','2006-02-15 22:12:38'),(1104,40,1,5869,'5.99','2005-07-10 18:40:09','2006-02-15 22:12:38'),(1105,40,1,6502,'0.99','2005-07-12 03:15:45','2006-02-15 22:12:38'),(1106,40,2,7684,'0.99','2005-07-28 03:11:54','2006-02-15 22:12:38'),(1107,40,2,8031,'0.99','2005-07-28 16:15:49','2006-02-15 22:12:38'),(1108,40,2,8170,'3.99','2005-07-28 21:32:29','2006-02-15 22:12:38'),(1109,40,1,9050,'8.99','2005-07-30 06:59:55','2006-02-15 22:12:38'),(1110,40,2,9700,'4.99','2005-07-31 07:29:59','2006-02-15 22:12:38'),(1111,40,2,9961,'6.99','2005-07-31 16:07:50','2006-02-15 22:12:38'),(1112,40,1,9975,'1.99','2005-07-31 16:53:43','2006-02-15 22:12:38'),(1113,40,1,10442,'2.99','2005-08-01 08:58:08','2006-02-15 22:12:38'),(1114,40,2,11919,'0.99','2005-08-17 16:08:49','2006-02-15 22:12:38'),(1115,40,2,11948,'3.99','2005-08-17 17:11:05','2006-02-15 22:12:38'),(1116,40,2,12396,'9.99','2005-08-18 09:11:23','2006-02-15 22:12:38'),(1117,40,2,12877,'2.99','2005-08-19 03:16:58','2006-02-15 22:12:38'),(1118,40,1,13149,'6.99','2005-08-19 13:07:12','2006-02-15 22:12:38'),(1119,40,1,13376,'0.99','2005-08-19 21:31:45','2006-02-15 22:12:38'),(1120,40,1,13840,'5.99','2005-08-20 14:23:20','2006-02-15 22:12:38'),(1121,40,1,13951,'2.99','2005-08-20 17:58:11','2006-02-15 22:12:38'),(1122,40,1,14260,'6.99','2005-08-21 06:01:08','2006-02-15 22:12:38'),(1123,40,1,15193,'2.99','2005-08-22 16:06:49','2006-02-15 22:12:38'),(1124,41,1,2563,'4.99','2005-06-19 03:24:17','2006-02-15 22:12:38'),(1125,41,2,3246,'7.99','2005-06-21 03:10:01','2006-02-15 22:12:38'),(1126,41,2,3827,'2.99','2005-07-06 15:52:03','2006-02-15 22:12:38'),(1127,41,2,4294,'9.99','2005-07-07 15:56:23','2006-02-15 22:12:38'),(1128,41,1,4543,'4.99','2005-07-08 04:06:55','2006-02-15 22:12:38'),(1129,41,1,4575,'2.99','2005-07-08 05:49:14','2006-02-15 22:12:38'),(1130,41,1,6976,'4.99','2005-07-27 00:40:01','2006-02-15 22:12:38'),(1131,41,2,7153,'4.99','2005-07-27 07:15:38','2006-02-15 22:12:38'),(1132,41,1,7517,'1.99','2005-07-27 20:57:07','2006-02-15 22:12:38'),(1133,41,2,8008,'6.99','2005-07-28 15:25:55','2006-02-15 22:12:38'),(1134,41,1,8098,'0.99','2005-07-28 18:34:20','2006-02-15 22:12:38'),(1135,41,1,8134,'6.99','2005-07-28 20:01:23','2006-02-15 22:12:38'),(1136,41,2,8225,'2.99','2005-07-28 23:59:29','2006-02-15 22:12:38'),(1137,41,1,8712,'2.99','2005-07-29 17:30:06','2006-02-15 22:12:38'),(1138,41,2,9313,'5.99','2005-07-30 16:59:43','2006-02-15 22:12:38'),(1139,41,1,10064,'2.99','2005-07-31 19:27:02','2006-02-15 22:12:38'),(1140,41,1,10170,'7.99','2005-07-31 23:27:31','2006-02-15 22:12:38'),(1141,41,2,10495,'4.99','2005-08-01 10:45:51','2006-02-15 22:12:38'),(1142,41,1,10853,'5.99','2005-08-02 00:00:54','2006-02-15 22:12:38'),(1143,41,2,12147,'2.99','2005-08-18 00:10:20','2006-02-15 22:12:38'),(1144,41,2,12173,'3.99','2005-08-18 01:08:34','2006-02-15 22:12:38'),(1145,41,2,12821,'0.99','2005-08-19 01:07:02','2006-02-15 22:12:38'),(1146,41,2,14539,'7.99','2005-08-21 15:29:47','2006-02-15 22:12:38'),(1147,41,2,15860,'4.99','2005-08-23 16:08:40','2006-02-15 22:12:38'),(1148,41,1,15875,'2.99','2006-02-14 15:16:03','2006-02-15 22:12:39'),(1149,42,1,635,'5.99','2005-05-28 17:46:57','2006-02-15 22:12:39'),(1150,42,2,1534,'0.99','2005-06-16 00:49:32','2006-02-15 22:12:39'),(1151,42,2,2056,'2.99','2005-06-17 15:27:33','2006-02-15 22:12:39'),(1152,42,1,2170,'3.99','2005-06-17 23:57:34','2006-02-15 22:12:39'),(1153,42,1,2302,'4.99','2005-06-18 08:27:33','2006-02-15 22:12:39'),(1154,42,2,4391,'2.99','2005-07-07 21:09:38','2006-02-15 22:12:39'),(1155,42,2,5199,'4.99','2005-07-09 10:50:56','2006-02-15 22:12:39'),(1156,42,2,5517,'5.99','2005-07-10 01:15:00','2006-02-15 22:12:39'),(1157,42,2,5652,'3.99','2005-07-10 07:18:58','2006-02-15 22:12:39'),(1158,42,1,6179,'2.99','2005-07-11 10:59:59','2006-02-15 22:12:39'),(1159,42,1,6799,'2.99','2005-07-12 16:52:13','2006-02-15 22:12:39'),(1160,42,1,6925,'0.99','2005-07-26 22:52:32','2006-02-15 22:12:39'),(1161,42,1,7405,'3.99','2005-07-27 16:25:11','2006-02-15 22:12:39'),(1162,42,1,8049,'0.99','2005-07-28 16:51:58','2006-02-15 22:12:39'),(1163,42,1,8095,'6.99','2005-07-28 18:32:40','2006-02-15 22:12:39'),(1164,42,1,8166,'2.99','2005-07-28 21:23:33','2006-02-15 22:12:39'),(1165,42,1,8499,'3.99','2005-07-29 09:10:41','2006-02-15 22:12:39'),(1166,42,2,8785,'2.99','2005-07-29 20:36:26','2006-02-15 22:12:39'),(1167,42,2,8852,'3.99','2005-07-29 23:30:03','2006-02-15 22:12:39'),(1168,42,2,8915,'3.99','2005-07-30 01:42:09','2006-02-15 22:12:39'),(1169,42,2,10060,'6.99','2005-07-31 19:23:00','2006-02-15 22:12:39'),(1170,42,2,10345,'2.99','2005-08-01 05:18:56','2006-02-15 22:12:39'),(1171,42,2,10845,'2.99','2005-08-01 23:47:03','2006-02-15 22:12:39'),(1172,42,1,10935,'5.99','2005-08-02 02:54:53','2006-02-15 22:12:39'),(1173,42,1,12478,'4.99','2005-08-18 12:25:16','2006-02-15 22:12:39'),(1174,42,2,12499,'2.99','2005-08-18 13:05:37','2006-02-15 22:12:39'),(1175,42,1,14461,'7.99','2005-08-21 12:50:33','2006-02-15 22:12:39'),(1176,42,1,15442,'2.99','2005-08-23 00:42:49','2006-02-15 22:12:39'),(1177,42,1,13351,'5.98','2006-02-14 15:16:03','2006-02-15 22:12:39'),(1178,42,1,15407,'0.00','2006-02-14 15:16:03','2006-02-15 22:12:39'),(1179,43,2,123,'4.99','2005-05-25 20:26:42','2006-02-15 22:12:39'),(1180,43,1,652,'4.99','2005-05-28 20:08:47','2006-02-15 22:12:39'),(1181,43,2,1544,'4.99','2005-06-16 01:28:22','2006-02-15 22:12:39'),(1182,43,2,3683,'1.99','2005-07-06 09:25:56','2006-02-15 22:12:39'),(1183,43,1,4498,'2.99','2005-07-08 02:07:50','2006-02-15 22:12:39'),(1184,43,1,5162,'4.99','2005-07-09 09:00:11','2006-02-15 22:12:39'),(1185,43,1,5401,'4.99','2005-07-09 19:59:10','2006-02-15 22:12:39'),(1186,43,1,5831,'2.99','2005-07-10 16:34:02','2006-02-15 22:12:39'),(1187,43,2,5941,'4.99','2005-07-10 22:40:47','2006-02-15 22:12:39'),(1188,43,1,6474,'3.99','2005-07-12 01:36:46','2006-02-15 22:12:39'),(1189,43,2,6680,'0.99','2005-07-12 12:01:56','2006-02-15 22:12:39'),(1190,43,1,7348,'4.99','2005-07-27 14:32:32','2006-02-15 22:12:39'),(1191,43,2,7868,'4.99','2005-07-28 10:08:55','2006-02-15 22:12:39'),(1192,43,2,8376,'4.99','2005-07-29 05:25:32','2006-02-15 22:12:39'),(1193,43,1,9204,'4.99','2005-07-30 12:43:58','2006-02-15 22:12:39'),(1194,43,1,11753,'4.99','2005-08-17 09:11:52','2006-02-15 22:12:39'),(1195,43,1,14244,'2.99','2005-08-21 05:29:55','2006-02-15 22:12:39'),(1196,43,1,14649,'4.99','2005-08-21 19:19:21','2006-02-15 22:12:39'),(1197,43,2,14837,'4.99','2005-08-22 01:54:52','2006-02-15 22:12:39'),(1198,43,2,15155,'4.99','2005-08-22 14:27:46','2006-02-15 22:12:39'),(1199,43,2,15800,'6.99','2005-08-23 14:23:44','2006-02-15 22:12:39'),(1200,43,2,15945,'2.99','2005-08-23 18:51:41','2006-02-15 22:12:39'),(1201,43,2,15644,'3.98','2006-02-14 15:16:03','2006-02-15 22:12:39'),(1202,43,1,15745,'0.00','2006-02-14 15:16:03','2006-02-15 22:12:39'),(1203,44,1,29,'0.99','2005-05-25 03:47:12','2006-02-15 22:12:39'),(1204,44,1,99,'4.99','2005-05-25 16:50:20','2006-02-15 22:12:39'),(1205,44,1,407,'2.99','2005-05-27 13:57:38','2006-02-15 22:12:39'),(1206,44,2,721,'0.99','2005-05-29 05:28:47','2006-02-15 22:12:39'),(1207,44,1,904,'2.99','2005-05-30 10:19:42','2006-02-15 22:12:39'),(1208,44,1,1497,'3.99','2005-06-15 21:56:39','2006-02-15 22:12:39'),(1209,44,1,2369,'2.99','2005-06-18 14:25:29','2006-02-15 22:12:39'),(1210,44,1,2809,'3.99','2005-06-19 19:40:27','2006-02-15 22:12:39'),(1211,44,2,2866,'4.99','2005-06-20 00:01:36','2006-02-15 22:12:39'),(1212,44,2,4390,'0.99','2005-07-07 20:59:06','2006-02-15 22:12:39'),(1213,44,2,4723,'9.99','2005-07-08 12:44:59','2006-02-15 22:12:39'),(1214,44,1,5551,'3.99','2005-07-10 03:01:09','2006-02-15 22:12:39'),(1215,44,1,5787,'8.99','2005-07-10 14:08:49','2006-02-15 22:12:39'),(1216,44,2,5849,'6.99','2005-07-10 17:32:33','2006-02-15 22:12:39'),(1217,44,2,5909,'4.99','2005-07-10 20:46:13','2006-02-15 22:12:39'),(1218,44,1,7514,'0.99','2005-07-27 20:51:49','2006-02-15 22:12:39'),(1219,44,2,7526,'6.99','2005-07-27 21:13:47','2006-02-15 22:12:39'),(1220,44,2,8775,'4.99','2005-07-29 20:05:38','2006-02-15 22:12:39'),(1221,44,1,8866,'4.99','2005-07-29 23:58:19','2006-02-15 22:12:39'),(1222,44,1,11364,'2.99','2005-08-02 17:53:36','2006-02-15 22:12:39'),(1223,44,2,12345,'3.99','2005-08-18 07:16:58','2006-02-15 22:12:39'),(1224,44,1,12504,'4.99','2005-08-18 13:17:07','2006-02-15 22:12:39'),(1225,44,1,12790,'6.99','2005-08-19 00:16:54','2006-02-15 22:12:39'),(1226,44,2,12982,'4.99','2005-08-19 07:06:34','2006-02-15 22:12:39'),(1227,44,2,15054,'2.99','2005-08-22 10:14:33','2006-02-15 22:12:39'),(1228,44,2,13428,'4.99','2006-02-14 15:16:03','2006-02-15 22:12:39'),(1229,45,2,277,'2.99','2005-05-26 17:32:11','2006-02-15 22:12:39'),(1230,45,1,1806,'4.99','2005-06-16 20:41:57','2006-02-15 22:12:39'),(1231,45,2,1979,'2.99','2005-06-17 09:45:30','2006-02-15 22:12:39'),(1232,45,2,2722,'4.99','2005-06-19 14:55:17','2006-02-15 22:12:39'),(1233,45,1,3391,'3.99','2005-06-21 15:11:02','2006-02-15 22:12:39'),(1234,45,2,3444,'0.99','2005-06-21 20:39:39','2006-02-15 22:12:39'),(1235,45,1,4843,'0.99','2005-07-08 18:27:28','2006-02-15 22:12:39'),(1236,45,1,5181,'6.99','2005-07-09 10:07:27','2006-02-15 22:12:39'),(1237,45,1,5405,'7.99','2005-07-09 20:11:49','2006-02-15 22:12:39'),(1238,45,1,5637,'0.99','2005-07-10 06:31:37','2006-02-15 22:12:39'),(1239,45,2,6001,'0.99','2005-07-11 01:24:44','2006-02-15 22:12:39'),(1240,45,2,6002,'2.99','2005-07-11 01:27:49','2006-02-15 22:12:39'),(1241,45,1,6966,'9.99','2005-07-27 00:15:35','2006-02-15 22:12:39'),(1242,45,1,7436,'2.99','2005-07-27 17:39:12','2006-02-15 22:12:39'),(1243,45,1,7961,'3.99','2005-07-28 13:47:21','2006-02-15 22:12:39'),(1244,45,1,10507,'2.99','2005-08-01 11:22:20','2006-02-15 22:12:39'),(1245,45,2,10878,'6.99','2005-08-02 00:33:12','2006-02-15 22:12:39'),(1246,45,1,11004,'8.99','2005-08-02 05:04:18','2006-02-15 22:12:39'),(1247,45,1,11029,'4.99','2005-08-02 05:51:10','2006-02-15 22:12:40'),(1248,45,2,11483,'2.99','2005-08-02 22:28:22','2006-02-15 22:12:40'),(1249,45,2,11488,'3.99','2005-08-02 22:35:15','2006-02-15 22:12:40'),(1250,45,1,11725,'2.99','2005-08-17 08:09:00','2006-02-15 22:12:40'),(1251,45,1,13340,'3.99','2005-08-19 20:18:39','2006-02-15 22:12:40'),(1252,45,2,13394,'4.99','2005-08-19 22:05:19','2006-02-15 22:12:40'),(1253,45,1,14576,'6.99','2005-08-21 16:52:03','2006-02-15 22:12:40'),(1254,45,1,15812,'10.99','2005-08-23 14:47:26','2006-02-15 22:12:40'),(1255,45,2,16037,'7.99','2005-08-23 22:13:04','2006-02-15 22:12:40'),(1256,46,2,401,'2.99','2005-05-27 12:57:55','2006-02-15 22:12:40'),(1257,46,2,432,'4.99','2005-05-27 16:40:29','2006-02-15 22:12:40'),(1258,46,1,938,'2.99','2005-05-30 14:47:31','2006-02-15 22:12:40'),(1259,46,1,1166,'4.99','2005-06-14 23:17:03','2006-02-15 22:12:40'),(1260,46,2,1214,'4.99','2005-06-15 03:18:40','2006-02-15 22:12:40'),(1261,46,2,2144,'0.99','2005-06-17 22:05:40','2006-02-15 22:12:40'),(1262,46,1,2203,'2.99','2005-06-18 02:10:42','2006-02-15 22:12:40'),(1263,46,2,2965,'8.99','2005-06-20 07:33:38','2006-02-15 22:12:40'),(1264,46,2,2975,'4.99','2005-06-20 08:06:18','2006-02-15 22:12:40'),(1265,46,2,3439,'4.99','2005-06-21 19:36:15','2006-02-15 22:12:40'),(1266,46,2,3855,'2.99','2005-07-06 17:03:48','2006-02-15 22:12:40'),(1267,46,1,3916,'4.99','2005-07-06 20:18:50','2006-02-15 22:12:40'),(1268,46,2,5698,'4.99','2005-07-10 09:47:00','2006-02-15 22:12:40'),(1269,46,1,7336,'0.99','2005-07-27 14:11:45','2006-02-15 22:12:40'),(1270,46,2,8152,'3.99','2005-07-28 20:53:05','2006-02-15 22:12:40'),(1271,46,2,9045,'8.99','2005-07-30 06:36:57','2006-02-15 22:12:40'),(1272,46,2,9806,'2.99','2005-07-31 11:13:49','2006-02-15 22:12:40'),(1273,46,1,10088,'2.99','2005-07-31 20:16:21','2006-02-15 22:12:40'),(1274,46,2,10428,'4.99','2005-08-01 08:30:11','2006-02-15 22:12:40'),(1275,46,1,10803,'4.99','2005-08-01 22:22:07','2006-02-15 22:12:40'),(1276,46,1,10827,'5.99','2005-08-01 23:13:00','2006-02-15 22:12:40'),(1277,46,1,11721,'0.99','2005-08-17 07:49:17','2006-02-15 22:12:40'),(1278,46,2,12095,'4.99','2005-08-17 22:32:37','2006-02-15 22:12:40'),(1279,46,2,12238,'2.99','2005-08-18 03:25:08','2006-02-15 22:12:40'),(1280,46,2,12280,'4.99','2005-08-18 04:49:27','2006-02-15 22:12:40'),(1281,46,1,12298,'2.99','2005-08-18 05:30:31','2006-02-15 22:12:40'),(1282,46,2,12455,'4.99','2005-08-18 11:19:47','2006-02-15 22:12:40'),(1283,46,1,13226,'0.99','2005-08-19 16:05:36','2006-02-15 22:12:40'),(1284,46,2,14144,'4.99','2005-08-21 02:10:57','2006-02-15 22:12:40'),(1285,46,2,14528,'6.99','2005-08-21 15:08:05','2006-02-15 22:12:40'),(1286,46,1,14940,'4.99','2005-08-22 05:54:03','2006-02-15 22:12:40'),(1287,46,1,15438,'2.99','2005-08-23 00:31:57','2006-02-15 22:12:40'),(1288,46,1,15708,'0.99','2005-08-23 10:35:51','2006-02-15 22:12:40'),(1289,46,1,15758,'5.99','2005-08-23 12:47:26','2006-02-15 22:12:40'),(1290,47,2,175,'3.99','2005-05-26 03:46:26','2006-02-15 22:12:40'),(1291,47,2,207,'4.99','2005-05-26 08:04:38','2006-02-15 22:12:40'),(1292,47,1,300,'6.99','2005-05-26 20:57:00','2006-02-15 22:12:40'),(1293,47,1,1882,'4.99','2005-06-17 03:17:21','2006-02-15 22:12:40'),(1294,47,1,2307,'6.99','2005-06-18 08:34:59','2006-02-15 22:12:40'),(1295,47,2,3320,'5.99','2005-06-21 08:29:41','2006-02-15 22:12:40'),(1296,47,1,3631,'4.99','2005-07-06 06:36:53','2006-02-15 22:12:40'),(1297,47,2,4064,'5.99','2005-07-07 04:29:20','2006-02-15 22:12:40'),(1298,47,1,5174,'0.99','2005-07-09 09:31:59','2006-02-15 22:12:40'),(1299,47,2,6153,'9.99','2005-07-11 09:31:04','2006-02-15 22:12:40'),(1300,47,2,6164,'0.99','2005-07-11 10:16:23','2006-02-15 22:12:40'),(1301,47,1,6337,'3.99','2005-07-11 19:30:47','2006-02-15 22:12:40'),(1302,47,2,8159,'4.99','2005-07-28 21:09:28','2006-02-15 22:12:40'),(1303,47,2,8402,'6.99','2005-07-29 06:25:45','2006-02-15 22:12:40'),(1304,47,1,8863,'3.99','2005-07-29 23:52:01','2006-02-15 22:12:40'),(1305,47,2,9274,'4.99','2005-07-30 15:07:04','2006-02-15 22:12:40'),(1306,47,1,11126,'0.99','2005-08-02 08:59:04','2006-02-15 22:12:40'),(1307,47,2,11477,'5.99','2005-08-02 22:09:01','2006-02-15 22:12:40'),(1308,47,1,12215,'7.99','2005-08-18 02:35:39','2006-02-15 22:12:40'),(1309,47,2,12274,'7.99','2005-08-18 04:41:47','2006-02-15 22:12:40'),(1310,47,1,14397,'0.99','2005-08-21 10:25:56','2006-02-15 22:12:40'),(1311,47,2,15846,'2.99','2005-08-23 15:39:18','2006-02-15 22:12:40'),(1312,48,2,72,'0.99','2005-05-25 10:52:13','2006-02-15 22:12:40'),(1313,48,1,297,'2.99','2005-05-26 20:48:48','2006-02-15 22:12:40'),(1314,48,1,390,'4.99','2005-05-27 11:02:26','2006-02-15 22:12:40'),(1315,48,2,1689,'9.99','2005-06-16 12:18:41','2006-02-15 22:12:40'),(1316,48,2,2822,'0.99','2005-06-19 20:29:24','2006-02-15 22:12:40'),(1317,48,2,3758,'4.99','2005-07-06 12:43:11','2006-02-15 22:12:40'),(1318,48,1,4367,'2.99','2005-07-07 19:52:01','2006-02-15 22:12:40'),(1319,48,2,5148,'6.99','2005-07-09 08:22:46','2006-02-15 22:12:40'),(1320,48,2,6498,'3.99','2005-07-12 03:05:38','2006-02-15 22:12:40'),(1321,48,1,7920,'2.99','2005-07-28 12:01:19','2006-02-15 22:12:40'),(1322,48,1,8716,'6.99','2005-07-29 17:39:09','2006-02-15 22:12:40'),(1323,48,1,9402,'7.99','2005-07-30 20:18:27','2006-02-15 22:12:40'),(1324,48,2,9742,'7.99','2005-07-31 09:10:20','2006-02-15 22:12:40'),(1325,48,2,10276,'2.99','2005-08-01 03:22:23','2006-02-15 22:12:40'),(1326,48,2,14450,'1.99','2005-08-21 12:21:25','2006-02-15 22:12:40'),(1327,48,2,14536,'2.99','2005-08-21 15:22:50','2006-02-15 22:12:40'),(1328,48,1,15228,'3.99','2005-08-22 17:27:23','2006-02-15 22:12:40'),(1329,49,2,96,'1.99','2005-05-25 16:32:19','2006-02-15 22:12:40'),(1330,49,1,239,'3.99','2005-05-26 12:30:26','2006-02-15 22:12:40'),(1331,49,2,846,'2.99','2005-05-30 01:17:45','2006-02-15 22:12:40'),(1332,49,2,1010,'4.99','2005-05-31 01:57:32','2006-02-15 22:12:40'),(1333,49,1,1164,'0.99','2005-06-14 23:16:26','2006-02-15 22:12:40'),(1334,49,2,1237,'9.99','2005-06-15 04:44:10','2006-02-15 22:12:40'),(1335,49,2,1688,'0.99','2005-06-16 12:11:20','2006-02-15 22:12:40'),(1336,49,2,1777,'6.99','2005-06-16 18:52:12','2006-02-15 22:12:40'),(1337,49,2,3235,'4.99','2005-06-21 02:46:17','2006-02-15 22:12:40'),(1338,49,2,3575,'4.99','2005-07-06 03:36:19','2006-02-15 22:12:40'),(1339,49,2,3615,'0.99','2005-07-06 05:47:47','2006-02-15 22:12:40'),(1340,49,1,5491,'2.99','2005-07-10 00:09:45','2006-02-15 22:12:41'),(1341,49,1,6214,'4.99','2005-07-11 12:49:48','2006-02-15 22:12:41'),(1342,49,1,6279,'6.99','2005-07-11 16:26:07','2006-02-15 22:12:41'),(1343,49,1,6521,'7.99','2005-07-12 04:06:11','2006-02-15 22:12:41'),(1344,49,2,6759,'4.99','2005-07-12 15:14:48','2006-02-15 22:12:41'),(1345,49,2,7209,'4.99','2005-07-27 09:16:53','2006-02-15 22:12:41'),(1346,49,2,7742,'8.99','2005-07-28 05:33:16','2006-02-15 22:12:41'),(1347,49,2,8553,'10.99','2005-07-29 11:15:36','2006-02-15 22:12:41'),(1348,49,2,9006,'0.99','2005-07-30 05:06:32','2006-02-15 22:12:41'),(1349,49,1,9851,'4.99','2005-07-31 12:50:24','2006-02-15 22:12:41'),(1350,49,1,10144,'4.99','2005-07-31 22:13:52','2006-02-15 22:12:41'),(1351,49,1,10266,'0.99','2005-08-01 03:05:59','2006-02-15 22:12:41'),(1352,49,1,10588,'2.99','2005-08-01 14:10:21','2006-02-15 22:12:41'),(1353,49,1,10814,'2.99','2005-08-01 22:43:12','2006-02-15 22:12:41'),(1354,49,2,14168,'5.99','2005-08-21 03:00:03','2006-02-15 22:12:41'),(1355,49,1,14627,'6.99','2005-08-21 18:35:54','2006-02-15 22:12:41'),(1356,49,1,14676,'2.99','2005-08-21 20:02:18','2006-02-15 22:12:41'),(1357,50,1,763,'4.99','2005-05-29 11:32:15','2006-02-15 22:12:41'),(1358,50,1,794,'4.99','2005-05-29 16:44:11','2006-02-15 22:12:41'),(1359,50,1,905,'4.99','2005-05-30 10:25:00','2006-02-15 22:12:41'),(1360,50,1,1029,'4.99','2005-05-31 03:52:02','2006-02-15 22:12:41'),(1361,50,2,1136,'4.99','2005-05-31 19:19:36','2006-02-15 22:12:41'),(1362,50,1,1223,'2.99','2005-06-15 03:38:53','2006-02-15 22:12:41'),(1363,50,1,1785,'4.99','2005-06-16 19:27:12','2006-02-15 22:12:41'),(1364,50,2,3000,'0.99','2005-06-20 09:32:33','2006-02-15 22:12:41'),(1365,50,2,3169,'2.99','2005-06-20 21:55:54','2006-02-15 22:12:41'),(1366,50,2,4149,'2.99','2005-07-07 08:40:17','2006-02-15 22:12:41'),(1367,50,2,5290,'4.99','2005-07-09 15:14:47','2006-02-15 22:12:41'),(1368,50,2,5641,'4.99','2005-07-10 06:43:43','2006-02-15 22:12:41'),(1369,50,2,5681,'9.99','2005-07-10 08:48:39','2006-02-15 22:12:41'),(1370,50,1,5928,'6.99','2005-07-10 21:58:30','2006-02-15 22:12:41'),(1371,50,2,6634,'0.99','2005-07-12 09:37:18','2006-02-15 22:12:41'),(1372,50,1,6667,'8.99','2005-07-12 11:36:22','2006-02-15 22:12:41'),(1373,50,1,7383,'4.99','2005-07-27 15:46:53','2006-02-15 22:12:41'),(1374,50,1,8089,'0.99','2005-07-28 18:26:47','2006-02-15 22:12:41'),(1375,50,1,8261,'0.99','2005-07-29 01:11:05','2006-02-15 22:12:41'),(1376,50,1,8619,'5.99','2005-07-29 13:50:08','2006-02-15 22:12:41'),(1377,50,2,9179,'0.99','2005-07-30 12:02:41','2006-02-15 22:12:41'),(1378,50,1,9615,'4.99','2005-07-31 03:59:56','2006-02-15 22:12:41'),(1379,50,2,9691,'10.99','2005-07-31 07:09:55','2006-02-15 22:12:41'),(1380,50,2,10046,'2.99','2005-07-31 19:07:11','2006-02-15 22:12:41'),(1381,50,2,10165,'0.99','2005-07-31 23:21:23','2006-02-15 22:12:41'),(1382,50,2,10180,'6.99','2005-07-31 23:57:43','2006-02-15 22:12:41'),(1383,50,2,10261,'4.99','2005-08-01 02:58:27','2006-02-15 22:12:41'),(1384,50,2,10485,'7.99','2005-08-01 10:20:34','2006-02-15 22:12:41'),(1385,50,2,11053,'3.99','2005-08-02 06:27:13','2006-02-15 22:12:41'),(1386,50,1,12766,'6.99','2005-08-18 23:25:20','2006-02-15 22:12:41'),(1387,50,2,13136,'7.99','2005-08-19 12:24:23','2006-02-15 22:12:41'),(1388,50,1,14054,'4.99','2005-08-20 22:17:01','2006-02-15 22:12:41'),(1389,50,2,15138,'2.99','2005-08-22 13:36:30','2006-02-15 22:12:41'),(1390,50,2,15388,'6.99','2005-08-22 22:49:23','2006-02-15 22:12:41'),(1391,50,1,16015,'4.99','2005-08-23 21:25:03','2006-02-15 22:12:41'),(1392,51,2,119,'4.99','2005-05-25 19:37:02','2006-02-15 22:12:41'),(1393,51,1,661,'4.99','2005-05-28 21:01:25','2006-02-15 22:12:41'),(1394,51,2,1028,'4.99','2005-05-31 03:48:05','2006-02-15 22:12:41'),(1395,51,2,1373,'1.99','2005-06-15 14:48:04','2006-02-15 22:12:41'),(1396,51,1,1477,'0.99','2005-06-15 21:11:18','2006-02-15 22:12:41'),(1397,51,1,3525,'9.99','2005-07-06 01:02:39','2006-02-15 22:12:41'),(1398,51,1,5230,'2.99','2005-07-09 12:30:23','2006-02-15 22:12:41'),(1399,51,2,5304,'5.99','2005-07-09 15:48:06','2006-02-15 22:12:41'),(1400,51,1,5473,'7.99','2005-07-09 23:19:11','2006-02-15 22:12:41'),(1401,51,1,5606,'4.99','2005-07-10 05:07:55','2006-02-15 22:12:41'),(1402,51,1,7207,'5.99','2005-07-27 09:13:26','2006-02-15 22:12:41'),(1403,51,1,7398,'6.99','2005-07-27 16:07:22','2006-02-15 22:12:41'),(1404,51,1,7636,'5.99','2005-07-28 01:08:36','2006-02-15 22:12:41'),(1405,51,1,8495,'4.99','2005-07-29 09:05:06','2006-02-15 22:12:41'),(1406,51,1,8693,'0.99','2005-07-29 16:44:13','2006-02-15 22:12:41'),(1407,51,1,8880,'0.99','2005-07-30 00:16:55','2006-02-15 22:12:41'),(1408,51,2,9649,'0.99','2005-07-31 05:46:54','2006-02-15 22:12:41'),(1409,51,2,10244,'4.99','2005-08-01 02:20:01','2006-02-15 22:12:41'),(1410,51,1,10780,'2.99','2005-08-01 21:14:24','2006-02-15 22:12:41'),(1411,51,1,10894,'0.99','2005-08-02 01:12:35','2006-02-15 22:12:41'),(1412,51,1,11302,'2.99','2005-08-02 15:38:03','2006-02-15 22:12:41'),(1413,51,2,11685,'4.99','2005-08-17 06:39:16','2006-02-15 22:12:41'),(1414,51,2,11751,'6.99','2005-08-17 09:07:56','2006-02-15 22:12:41'),(1415,51,1,12184,'0.99','2005-08-18 01:36:00','2006-02-15 22:12:41'),(1416,51,1,12725,'4.99','2005-08-18 21:43:09','2006-02-15 22:12:41'),(1417,51,2,13098,'2.99','2005-08-19 10:51:59','2006-02-15 22:12:41'),(1418,51,1,13302,'2.99','2005-08-19 18:54:26','2006-02-15 22:12:41'),(1419,51,1,13868,'0.99','2005-08-20 15:06:26','2006-02-15 22:12:41'),(1420,51,2,13882,'2.99','2005-08-20 15:23:26','2006-02-15 22:12:41'),(1421,51,2,14221,'6.99','2005-08-21 04:49:41','2006-02-15 22:12:41'),(1422,51,2,14512,'4.99','2005-08-21 14:47:09','2006-02-15 22:12:41'),(1423,51,1,14617,'4.99','2005-08-21 18:07:40','2006-02-15 22:12:41'),(1424,51,1,14903,'4.99','2005-08-22 04:31:50','2006-02-15 22:12:41'),(1425,52,1,874,'0.99','2005-05-30 05:36:21','2006-02-15 22:12:41'),(1426,52,1,1196,'4.99','2005-06-15 01:38:31','2006-02-15 22:12:41'),(1427,52,2,2232,'0.99','2005-06-18 03:54:31','2006-02-15 22:12:41'),(1428,52,1,2862,'2.99','2005-06-19 23:47:24','2006-02-15 22:12:41'),(1429,52,2,3196,'4.99','2005-06-21 00:02:28','2006-02-15 22:12:42'),(1430,52,1,3997,'1.99','2005-07-06 23:46:52','2006-02-15 22:12:42'),(1431,52,1,5308,'0.99','2005-07-09 15:58:38','2006-02-15 22:12:42'),(1432,52,2,5313,'3.99','2005-07-09 16:04:45','2006-02-15 22:12:42'),(1433,52,1,5607,'2.99','2005-07-10 05:08:10','2006-02-15 22:12:42'),(1434,52,1,6394,'7.99','2005-07-11 22:29:15','2006-02-15 22:12:42'),(1435,52,2,7284,'0.99','2005-07-27 12:12:04','2006-02-15 22:12:42'),(1436,52,2,7438,'5.99','2005-07-27 17:40:40','2006-02-15 22:12:42'),(1437,52,2,7627,'4.99','2005-07-28 00:56:47','2006-02-15 22:12:42'),(1438,52,1,8686,'4.99','2005-07-29 16:17:49','2006-02-15 22:12:42'),(1439,52,1,9029,'4.99','2005-07-30 06:03:11','2006-02-15 22:12:42'),(1440,52,2,9749,'3.99','2005-07-31 09:18:33','2006-02-15 22:12:42'),(1441,52,2,9797,'4.99','2005-07-31 10:53:44','2006-02-15 22:12:42'),(1442,52,2,10591,'0.99','2005-08-01 14:12:29','2006-02-15 22:12:42'),(1443,52,1,10635,'0.99','2005-08-01 15:37:58','2006-02-15 22:12:42'),(1444,52,1,11068,'0.99','2005-08-02 07:08:07','2006-02-15 22:12:42'),(1445,52,1,11731,'3.99','2005-08-17 08:24:35','2006-02-15 22:12:42'),(1446,52,2,12200,'2.99','2005-08-18 02:12:33','2006-02-15 22:12:42'),(1447,52,2,12520,'0.99','2005-08-18 13:42:45','2006-02-15 22:12:42'),(1448,52,2,13090,'5.99','2005-08-19 10:39:54','2006-02-15 22:12:42'),(1449,52,2,14820,'2.99','2005-08-22 01:18:37','2006-02-15 22:12:42'),(1450,52,1,14822,'5.99','2005-08-22 01:21:14','2006-02-15 22:12:42'),(1451,52,2,14961,'6.99','2005-08-22 06:35:50','2006-02-15 22:12:42'),(1452,52,2,15891,'5.99','2005-08-23 17:00:12','2006-02-15 22:12:42'),(1453,52,1,12001,'4.99','2006-02-14 15:16:03','2006-02-15 22:12:42'),(1454,53,1,88,'3.99','2005-05-25 14:13:54','2006-02-15 22:12:42'),(1455,53,1,378,'2.99','2005-05-27 09:23:22','2006-02-15 22:12:42'),(1456,53,1,751,'0.99','2005-05-29 09:55:43','2006-02-15 22:12:42'),(1457,53,2,783,'5.99','2005-05-29 14:41:18','2006-02-15 22:12:42'),(1458,53,2,856,'9.99','2005-05-30 02:01:21','2006-02-15 22:12:42'),(1459,53,1,1107,'2.99','2005-05-31 15:04:05','2006-02-15 22:12:42'),(1460,53,1,1964,'0.99','2005-06-17 09:10:09','2006-02-15 22:12:42'),(1461,53,1,2388,'2.99','2005-06-18 15:26:30','2006-02-15 22:12:42'),(1462,53,1,2903,'2.99','2005-06-20 02:49:01','2006-02-15 22:12:42'),(1463,53,2,3140,'2.99','2005-06-20 19:47:12','2006-02-15 22:12:42'),(1464,53,2,3244,'0.99','2005-06-21 03:01:10','2006-02-15 22:12:42'),(1465,53,2,3591,'2.99','2005-07-06 04:37:10','2006-02-15 22:12:42'),(1466,53,2,3898,'4.99','2005-07-06 19:12:37','2006-02-15 22:12:42'),(1467,53,2,5185,'2.99','2005-07-09 10:14:39','2006-02-15 22:12:42'),(1468,53,2,7466,'2.99','2005-07-27 18:51:17','2006-02-15 22:12:42'),(1469,53,1,7699,'4.99','2005-07-28 03:52:21','2006-02-15 22:12:42'),(1470,53,1,9343,'4.99','2005-07-30 18:13:13','2006-02-15 22:12:42'),(1471,53,1,9928,'7.99','2005-07-31 15:13:57','2006-02-15 22:12:42'),(1472,53,1,10594,'3.99','2005-08-01 14:14:59','2006-02-15 22:12:42'),(1473,53,1,12054,'5.99','2005-08-17 20:59:56','2006-02-15 22:12:42'),(1474,53,1,12580,'2.99','2005-08-18 15:49:08','2006-02-15 22:12:42'),(1475,53,1,13049,'5.99','2005-08-19 09:25:40','2006-02-15 22:12:42'),(1476,53,2,13789,'2.99','2005-08-20 12:16:38','2006-02-15 22:12:42'),(1477,53,1,14061,'2.99','2005-08-20 22:32:11','2006-02-15 22:12:42'),(1478,53,2,14091,'0.99','2005-08-21 00:11:17','2006-02-15 22:12:42'),(1479,53,2,14119,'5.99','2005-08-21 01:15:59','2006-02-15 22:12:42'),(1480,53,1,14671,'4.99','2005-08-21 19:59:30','2006-02-15 22:12:42'),(1481,53,2,14811,'0.99','2005-08-22 01:09:04','2006-02-15 22:12:42'),(1482,53,2,11657,'7.98','2006-02-14 15:16:03','2006-02-15 22:12:42'),(1483,53,1,14137,'0.00','2006-02-14 15:16:03','2006-02-15 22:12:42'),(1484,54,2,198,'4.99','2005-05-26 07:03:49','2006-02-15 22:12:42'),(1485,54,2,441,'4.99','2005-05-27 18:11:05','2006-02-15 22:12:42'),(1486,54,2,545,'3.99','2005-05-28 07:10:20','2006-02-15 22:12:42'),(1487,54,1,1556,'4.99','2005-06-16 02:19:02','2006-02-15 22:12:42'),(1488,54,1,1571,'2.99','2005-06-16 03:22:00','2006-02-15 22:12:42'),(1489,54,2,2323,'6.99','2005-06-18 09:55:02','2006-02-15 22:12:42'),(1490,54,1,2647,'4.99','2005-06-19 09:57:56','2006-02-15 22:12:42'),(1491,54,2,4657,'4.99','2005-07-08 09:51:02','2006-02-15 22:12:42'),(1492,54,2,5055,'1.99','2005-07-09 04:05:28','2006-02-15 22:12:42'),(1493,54,1,5929,'2.99','2005-07-10 21:59:29','2006-02-15 22:12:42'),(1494,54,1,5992,'2.99','2005-07-11 01:06:21','2006-02-15 22:12:42'),(1495,54,1,6338,'7.99','2005-07-11 19:39:41','2006-02-15 22:12:42'),(1496,54,2,6560,'2.99','2005-07-12 05:22:06','2006-02-15 22:12:42'),(1497,54,1,6813,'0.99','2005-07-12 18:03:50','2006-02-15 22:12:42'),(1498,54,2,8992,'4.99','2005-07-30 04:44:18','2006-02-15 22:12:42'),(1499,54,2,10489,'5.99','2005-08-01 10:27:42','2006-02-15 22:12:42'),(1500,54,2,10882,'5.99','2005-08-02 00:47:16','2006-02-15 22:12:42'),(1501,54,1,10956,'4.99','2005-08-02 03:33:14','2006-02-15 22:12:42'),(1502,54,1,11182,'4.99','2005-08-02 10:55:14','2006-02-15 22:12:42'),(1503,54,2,11887,'2.99','2005-08-17 15:03:13','2006-02-15 22:12:42'),(1504,54,1,12526,'2.99','2005-08-18 13:48:43','2006-02-15 22:12:42'),(1505,54,2,12775,'5.99','2005-08-18 23:35:56','2006-02-15 22:12:43'),(1506,54,1,12811,'4.99','2005-08-19 00:51:28','2006-02-15 22:12:43'),(1507,54,2,12872,'0.99','2005-08-19 02:57:37','2006-02-15 22:12:43'),(1508,54,2,13315,'2.99','2005-08-19 19:16:18','2006-02-15 22:12:43'),(1509,54,1,13890,'0.99','2005-08-20 15:41:00','2006-02-15 22:12:43'),(1510,54,1,14215,'4.99','2005-08-21 04:34:11','2006-02-15 22:12:43'),(1511,54,1,15226,'10.99','2005-08-22 17:20:17','2006-02-15 22:12:43'),(1512,54,1,15567,'4.99','2005-08-23 05:20:36','2006-02-15 22:12:43'),(1513,55,1,555,'4.99','2005-05-28 08:31:14','2006-02-15 22:12:43'),(1514,55,1,1027,'9.99','2005-05-31 03:46:19','2006-02-15 22:12:43'),(1515,55,1,1048,'0.99','2005-05-31 06:49:53','2006-02-15 22:12:43'),(1516,55,2,1825,'2.99','2005-06-16 21:53:05','2006-02-15 22:12:43'),(1517,55,2,2062,'2.99','2005-06-17 15:56:43','2006-02-15 22:12:43'),(1518,55,1,2904,'2.99','2005-06-20 02:54:06','2006-02-15 22:12:43'),(1519,55,1,2976,'4.99','2005-06-20 08:09:11','2006-02-15 22:12:43'),(1520,55,1,3149,'4.99','2005-06-20 20:34:55','2006-02-15 22:12:43'),(1521,55,1,4671,'4.99','2005-07-08 10:15:32','2006-02-15 22:12:43'),(1522,55,2,6314,'7.99','2005-07-11 18:32:44','2006-02-15 22:12:43'),(1523,55,2,7050,'4.99','2005-07-27 03:33:17','2006-02-15 22:12:43'),(1524,55,2,8288,'6.99','2005-07-29 02:04:22','2006-02-15 22:12:43'),(1525,55,1,9302,'2.99','2005-07-30 16:34:57','2006-02-15 22:12:43'),(1526,55,2,9596,'5.99','2005-07-31 03:28:47','2006-02-15 22:12:43'),(1527,55,2,9798,'2.99','2005-07-31 10:55:18','2006-02-15 22:12:43'),(1528,55,2,11287,'1.99','2005-08-02 14:49:51','2006-02-15 22:12:43'),(1529,55,1,12776,'4.99','2005-08-18 23:37:33','2006-02-15 22:12:43'),(1530,55,1,12808,'4.99','2005-08-19 00:40:41','2006-02-15 22:12:43'),(1531,55,2,12972,'1.99','2005-08-19 06:43:28','2006-02-15 22:12:43'),(1532,55,1,13345,'6.99','2005-08-19 20:25:24','2006-02-15 22:12:43'),(1533,55,1,14667,'2.99','2005-08-21 19:51:11','2006-02-15 22:12:43'),(1534,55,1,15296,'4.99','2005-08-22 19:37:20','2006-02-15 22:12:43'),(1535,56,1,130,'3.99','2005-05-25 21:21:56','2006-02-15 22:12:43'),(1536,56,1,341,'5.99','2005-05-27 04:01:42','2006-02-15 22:12:43'),(1537,56,1,496,'2.99','2005-05-28 00:43:41','2006-02-15 22:12:43'),(1538,56,1,569,'6.99','2005-05-28 10:12:41','2006-02-15 22:12:43'),(1539,56,2,1795,'6.99','2005-06-16 20:09:01','2006-02-15 22:12:43'),(1540,56,1,2140,'0.99','2005-06-17 21:40:29','2006-02-15 22:12:43'),(1541,56,1,2485,'4.99','2005-06-18 21:26:03','2006-02-15 22:12:43'),(1542,56,1,2989,'0.99','2005-06-20 08:59:37','2006-02-15 22:12:43'),(1543,56,1,3718,'7.99','2005-07-06 10:57:56','2006-02-15 22:12:43'),(1544,56,2,3771,'2.99','2005-07-06 13:19:34','2006-02-15 22:12:43'),(1545,56,1,4097,'3.99','2005-07-07 06:10:55','2006-02-15 22:12:43'),(1546,56,2,4702,'4.99','2005-07-08 11:41:36','2006-02-15 22:12:43'),(1547,56,1,5142,'4.99','2005-07-09 08:05:23','2006-02-15 22:12:43'),(1548,56,1,7385,'2.99','2005-07-27 15:49:46','2006-02-15 22:12:43'),(1549,56,1,7696,'7.99','2005-07-28 03:41:35','2006-02-15 22:12:43'),(1550,56,2,7942,'0.99','2005-07-28 12:49:44','2006-02-15 22:12:43'),(1551,56,1,8285,'0.99','2005-07-29 02:00:18','2006-02-15 22:12:43'),(1552,56,2,10356,'6.99','2005-08-01 05:49:17','2006-02-15 22:12:43'),(1553,56,2,10678,'0.99','2005-08-01 17:26:24','2006-02-15 22:12:43'),(1554,56,1,10946,'4.99','2005-08-02 03:20:39','2006-02-15 22:12:43'),(1555,56,1,11358,'5.99','2005-08-02 17:45:02','2006-02-15 22:12:43'),(1556,56,1,11656,'4.99','2005-08-17 05:11:09','2006-02-15 22:12:43'),(1557,56,2,12537,'1.99','2005-08-18 14:06:39','2006-02-15 22:12:43'),(1558,56,2,12713,'4.99','2005-08-18 21:07:28','2006-02-15 22:12:43'),(1559,56,2,13560,'8.99','2005-08-20 04:17:16','2006-02-15 22:12:43'),(1560,56,1,13769,'5.99','2005-08-20 11:43:52','2006-02-15 22:12:43'),(1561,56,2,14291,'3.99','2005-08-21 07:03:05','2006-02-15 22:12:43'),(1562,56,2,14534,'0.99','2005-08-21 15:16:29','2006-02-15 22:12:43'),(1563,56,2,15702,'7.99','2005-08-23 10:23:28','2006-02-15 22:12:43'),(1564,56,2,15714,'4.99','2006-02-14 15:16:03','2006-02-15 22:12:43'),(1565,57,2,152,'9.99','2005-05-26 00:41:10','2006-02-15 22:12:43'),(1566,57,2,943,'4.99','2005-05-30 15:20:19','2006-02-15 22:12:43'),(1567,57,1,2058,'5.99','2005-06-17 15:34:41','2006-02-15 22:12:43'),(1568,57,1,2105,'0.99','2005-06-17 19:15:45','2006-02-15 22:12:43'),(1569,57,1,2360,'4.99','2005-06-18 13:11:13','2006-02-15 22:12:43'),(1570,57,2,2910,'7.99','2005-06-20 03:31:18','2006-02-15 22:12:43'),(1571,57,1,3357,'0.99','2005-06-21 11:55:42','2006-02-15 22:12:43'),(1572,57,1,3727,'4.99','2005-07-06 11:16:43','2006-02-15 22:12:43'),(1573,57,2,4226,'4.99','2005-07-07 12:37:56','2006-02-15 22:12:43'),(1574,57,1,5060,'4.99','2005-07-09 04:28:03','2006-02-15 22:12:43'),(1575,57,1,5694,'0.99','2005-07-10 09:40:38','2006-02-15 22:12:43'),(1576,57,2,5948,'2.99','2005-07-10 23:12:08','2006-02-15 22:12:43'),(1577,57,2,6482,'4.99','2005-07-12 01:50:21','2006-02-15 22:12:43'),(1578,57,1,6494,'1.99','2005-07-12 02:42:51','2006-02-15 22:12:43'),(1579,57,2,6649,'4.99','2005-07-12 10:51:09','2006-02-15 22:12:43'),(1580,57,2,8249,'5.99','2005-07-29 00:48:44','2006-02-15 22:12:43'),(1581,57,1,9086,'0.99','2005-07-30 08:18:46','2006-02-15 22:12:43'),(1582,57,2,9136,'0.99','2005-07-30 10:07:20','2006-02-15 22:12:43'),(1583,57,1,9211,'1.99','2005-07-30 12:59:45','2006-02-15 22:12:43'),(1584,57,1,9703,'0.99','2005-07-31 07:34:52','2006-02-15 22:12:43'),(1585,57,2,9812,'2.99','2005-07-31 11:28:07','2006-02-15 22:12:43'),(1586,57,2,10169,'4.99','2005-07-31 23:27:13','2006-02-15 22:12:43'),(1587,57,2,12925,'5.99','2005-08-19 04:59:01','2006-02-15 22:12:43'),(1588,57,2,13163,'0.99','2005-08-19 13:29:46','2006-02-15 22:12:43'),(1589,57,2,13743,'0.99','2005-08-20 10:51:27','2006-02-15 22:12:44'),(1590,57,2,13929,'9.99','2005-08-20 17:13:48','2006-02-15 22:12:44'),(1591,57,2,15571,'0.99','2005-08-23 05:26:30','2006-02-15 22:12:44'),(1592,57,2,15871,'9.99','2005-08-23 16:24:24','2006-02-15 22:12:44'),(1593,58,1,230,'0.99','2005-05-26 11:31:50','2006-02-15 22:12:44'),(1594,58,2,276,'7.99','2005-05-26 17:16:07','2006-02-15 22:12:44'),(1595,58,2,761,'0.99','2005-05-29 11:09:01','2006-02-15 22:12:44'),(1596,58,1,2191,'4.99','2005-06-18 01:33:09','2006-02-15 22:12:44'),(1597,58,2,2543,'0.99','2005-06-19 02:14:11','2006-02-15 22:12:44'),(1598,58,1,2906,'0.99','2005-06-20 03:04:56','2006-02-15 22:12:44'),(1599,58,1,3685,'4.99','2005-07-06 09:30:45','2006-02-15 22:12:44'),(1600,58,2,4131,'4.99','2005-07-07 07:53:18','2006-02-15 22:12:44'),(1601,58,2,5439,'1.99','2005-07-09 21:39:35','2006-02-15 22:12:44'),(1602,58,1,7063,'9.99','2005-07-27 03:52:27','2006-02-15 22:12:44'),(1603,58,2,7487,'4.99','2005-07-27 19:32:45','2006-02-15 22:12:44'),(1604,58,1,8853,'0.99','2005-07-29 23:34:21','2006-02-15 22:12:44'),(1605,58,2,9561,'2.99','2005-07-31 02:22:13','2006-02-15 22:12:44'),(1606,58,2,10037,'2.99','2005-07-31 18:48:08','2006-02-15 22:12:44'),(1607,58,1,10068,'4.99','2005-07-31 19:39:38','2006-02-15 22:12:44'),(1608,58,2,10256,'4.99','2005-08-01 02:47:11','2006-02-15 22:12:44'),(1609,58,1,10668,'0.99','2005-08-01 17:00:27','2006-02-15 22:12:44'),(1610,58,1,11416,'6.99','2005-08-02 19:44:04','2006-02-15 22:12:44'),(1611,58,2,12292,'8.99','2005-08-18 05:08:54','2006-02-15 22:12:44'),(1612,58,1,13194,'6.99','2005-08-19 14:34:12','2006-02-15 22:12:44'),(1613,58,1,13207,'3.99','2005-08-19 15:14:38','2006-02-15 22:12:44'),(1614,58,1,13930,'2.99','2005-08-20 17:15:06','2006-02-15 22:12:44'),(1615,58,2,13973,'4.99','2005-08-20 18:52:43','2006-02-15 22:12:44'),(1616,58,2,14305,'5.99','2005-08-21 07:29:05','2006-02-15 22:12:44'),(1617,58,1,14665,'6.99','2005-08-21 19:49:46','2006-02-15 22:12:44'),(1618,58,1,14989,'4.99','2005-08-22 07:47:07','2006-02-15 22:12:44'),(1619,58,2,15326,'0.99','2006-02-14 15:16:03','2006-02-15 22:12:44'),(1620,59,2,212,'4.99','2005-05-26 08:34:41','2006-02-15 22:12:44'),(1621,59,2,951,'2.99','2005-05-30 16:10:35','2006-02-15 22:12:44'),(1622,59,1,1154,'5.99','2005-05-31 21:42:09','2006-02-15 22:12:44'),(1623,59,1,1269,'2.99','2005-06-15 07:29:59','2006-02-15 22:12:44'),(1624,59,1,1728,'3.99','2005-06-16 15:29:29','2006-02-15 22:12:44'),(1625,59,1,2921,'3.99','2005-06-20 04:13:04','2006-02-15 22:12:44'),(1626,59,2,4148,'2.99','2005-07-07 08:36:58','2006-02-15 22:12:44'),(1627,59,1,4384,'4.99','2005-07-07 20:46:45','2006-02-15 22:12:44'),(1628,59,1,4631,'4.99','2005-07-08 08:38:22','2006-02-15 22:12:44'),(1629,59,1,4891,'3.99','2005-07-08 20:06:19','2006-02-15 22:12:44'),(1630,59,2,5195,'8.99','2005-07-09 10:39:31','2006-02-15 22:12:44'),(1631,59,1,5207,'3.99','2005-07-09 11:15:44','2006-02-15 22:12:44'),(1632,59,1,5830,'4.99','2005-07-10 16:34:00','2006-02-15 22:12:44'),(1633,59,1,7991,'4.99','2005-07-28 14:45:45','2006-02-15 22:12:44'),(1634,59,2,8643,'4.99','2005-07-29 14:45:23','2006-02-15 22:12:44'),(1635,59,1,9469,'8.99','2005-07-30 22:56:34','2006-02-15 22:12:44'),(1636,59,2,9573,'6.99','2005-07-31 02:45:38','2006-02-15 22:12:44'),(1637,59,2,11396,'4.99','2005-08-02 18:48:29','2006-02-15 22:12:44'),(1638,59,1,12833,'5.99','2005-08-19 01:42:28','2006-02-15 22:12:44'),(1639,59,2,13282,'2.99','2005-08-19 18:08:18','2006-02-15 22:12:44'),(1640,59,1,13573,'2.99','2005-08-20 05:10:14','2006-02-15 22:12:44'),(1641,59,2,13921,'4.99','2005-08-20 16:57:11','2006-02-15 22:12:44'),(1642,59,1,14135,'5.99','2005-08-21 01:53:54','2006-02-15 22:12:44'),(1643,59,1,14977,'5.99','2005-08-22 07:12:53','2006-02-15 22:12:44'),(1644,59,2,15271,'5.99','2005-08-22 18:48:48','2006-02-15 22:12:44'),(1645,59,2,15744,'4.99','2005-08-23 12:15:51','2006-02-15 22:12:44'),(1646,59,2,15905,'2.99','2005-08-23 17:33:04','2006-02-15 22:12:44'),(1647,60,1,318,'4.99','2005-05-26 23:37:39','2006-02-15 22:12:44'),(1648,60,2,706,'1.99','2005-05-29 03:05:49','2006-02-15 22:12:44'),(1649,60,2,934,'2.99','2005-05-30 13:24:46','2006-02-15 22:12:44'),(1650,60,2,1482,'4.99','2005-06-15 21:18:16','2006-02-15 22:12:44'),(1651,60,2,2394,'4.99','2005-06-18 15:42:30','2006-02-15 22:12:44'),(1652,60,2,3473,'2.99','2005-07-05 22:57:34','2006-02-15 22:12:44'),(1653,60,1,3849,'2.99','2005-07-06 16:49:43','2006-02-15 22:12:44'),(1654,60,1,6282,'5.99','2005-07-11 16:46:22','2006-02-15 22:12:44'),(1655,60,2,7067,'0.99','2005-07-27 03:55:10','2006-02-15 22:12:44'),(1656,60,1,7331,'3.99','2005-07-27 13:57:50','2006-02-15 22:12:44'),(1657,60,1,7494,'0.99','2005-07-27 19:56:31','2006-02-15 22:12:44'),(1658,60,1,9356,'4.99','2005-07-30 18:36:24','2006-02-15 22:12:44'),(1659,60,1,9761,'4.99','2005-07-31 09:31:54','2006-02-15 22:12:44'),(1660,60,2,10680,'0.99','2005-08-01 17:28:05','2006-02-15 22:12:44'),(1661,60,1,11092,'4.99','2005-08-02 07:58:50','2006-02-15 22:12:44'),(1662,60,1,11404,'8.99','2005-08-02 19:12:40','2006-02-15 22:12:44'),(1663,60,1,12084,'1.99','2005-08-17 22:16:49','2006-02-15 22:12:44'),(1664,60,2,12614,'7.99','2005-08-18 17:16:03','2006-02-15 22:12:45'),(1665,60,1,15093,'2.99','2005-08-22 11:39:03','2006-02-15 22:12:45'),(1666,60,1,15318,'2.99','2005-08-22 20:15:16','2006-02-15 22:12:45'),(1667,60,1,15618,'5.99','2005-08-23 07:07:58','2006-02-15 22:12:45'),(1668,60,1,15632,'0.99','2005-08-23 07:30:26','2006-02-15 22:12:45'),(1669,60,1,15649,'2.99','2005-08-23 08:28:03','2006-02-15 22:12:45'),(1670,60,2,12489,'9.98','2006-02-14 15:16:03','2006-02-15 22:12:45'),(1671,60,2,14741,'0.00','2006-02-14 15:16:03','2006-02-15 22:12:45'),(1672,61,1,1157,'0.99','2005-05-31 22:47:45','2006-02-15 22:12:45'),(1673,61,1,7027,'7.99','2005-07-27 02:50:15','2006-02-15 22:12:45'),(1674,61,2,7071,'1.99','2005-07-27 04:01:15','2006-02-15 22:12:45'),(1675,61,2,8029,'6.99','2005-07-28 16:11:21','2006-02-15 22:12:45'),(1676,61,2,8075,'4.99','2005-07-28 17:37:28','2006-02-15 22:12:45'),(1677,61,1,8651,'3.99','2005-07-29 15:02:18','2006-02-15 22:12:45'),(1678,61,2,9597,'6.99','2005-07-31 03:29:07','2006-02-15 22:12:45'),(1679,61,2,10549,'0.99','2005-08-01 12:46:39','2006-02-15 22:12:45'),(1680,61,2,11379,'2.99','2005-08-02 18:16:55','2006-02-15 22:12:45'),(1681,61,1,12072,'9.99','2005-08-17 21:50:25','2006-02-15 22:12:45'),(1682,61,1,13450,'0.99','2005-08-20 00:18:15','2006-02-15 22:12:45'),(1683,61,1,13830,'0.99','2005-08-20 13:57:59','2006-02-15 22:12:45'),(1684,61,2,15089,'6.99','2005-08-22 11:34:06','2006-02-15 22:12:45'),(1685,61,1,15681,'1.99','2005-08-23 09:35:34','2006-02-15 22:12:45'),(1686,62,2,885,'0.99','2005-05-30 06:54:28','2006-02-15 22:12:45'),(1687,62,1,947,'4.99','2005-05-30 15:36:57','2006-02-15 22:12:45'),(1688,62,2,1241,'6.99','2005-06-15 04:59:43','2006-02-15 22:12:45'),(1689,62,1,1486,'0.99','2005-06-15 21:25:30','2006-02-15 22:12:45'),(1690,62,1,1587,'0.99','2005-06-16 04:52:28','2006-02-15 22:12:45'),(1691,62,2,3021,'4.99','2005-06-20 11:13:01','2006-02-15 22:12:45'),(1692,62,1,3035,'5.99','2005-06-20 12:17:03','2006-02-15 22:12:45'),(1693,62,1,3287,'0.99','2005-06-21 06:32:39','2006-02-15 22:12:45'),(1694,62,1,3327,'3.99','2005-06-21 09:04:50','2006-02-15 22:12:45'),(1695,62,2,3843,'2.99','2005-07-06 16:35:40','2006-02-15 22:12:45'),(1696,62,2,4159,'4.99','2005-07-07 09:10:57','2006-02-15 22:12:45'),(1697,62,2,5292,'2.99','2005-07-09 15:16:54','2006-02-15 22:12:45'),(1698,62,2,8360,'4.99','2005-07-29 05:08:00','2006-02-15 22:12:45'),(1699,62,2,10080,'0.99','2005-07-31 20:07:10','2006-02-15 22:12:45'),(1700,62,1,10815,'2.99','2005-08-01 22:46:21','2006-02-15 22:12:45'),(1701,62,1,11297,'5.99','2005-08-02 15:22:47','2006-02-15 22:12:45'),(1702,62,1,11988,'0.99','2005-08-17 18:23:50','2006-02-15 22:12:45'),(1703,62,2,13512,'8.99','2005-08-20 02:27:13','2006-02-15 22:12:45'),(1704,62,2,14574,'1.99','2005-08-21 16:50:34','2006-02-15 22:12:45'),(1705,62,2,14594,'2.99','2005-08-21 17:34:24','2006-02-15 22:12:45'),(1706,62,2,14821,'4.99','2005-08-22 01:20:19','2006-02-15 22:12:45'),(1707,62,1,15464,'6.99','2005-08-23 01:15:18','2006-02-15 22:12:45'),(1708,62,1,15591,'0.99','2005-08-23 06:11:52','2006-02-15 22:12:45'),(1709,63,2,1818,'0.99','2005-06-16 21:30:34','2006-02-15 22:12:45'),(1710,63,2,3923,'8.99','2005-07-06 20:34:10','2006-02-15 22:12:45'),(1711,63,1,4587,'4.99','2005-07-08 06:16:26','2006-02-15 22:12:45'),(1712,63,1,5585,'6.99','2005-07-10 04:15:43','2006-02-15 22:12:45'),(1713,63,2,5788,'4.99','2005-07-10 14:10:22','2006-02-15 22:12:45'),(1714,63,2,5832,'4.99','2005-07-10 16:34:48','2006-02-15 22:12:45'),(1715,63,2,6769,'3.99','2005-07-12 15:48:54','2006-02-15 22:12:45'),(1716,63,2,6847,'8.99','2005-07-12 19:22:37','2006-02-15 22:12:45'),(1717,63,2,8311,'5.99','2005-07-29 03:26:07','2006-02-15 22:12:45'),(1718,63,2,9007,'0.99','2005-07-30 05:09:32','2006-02-15 22:12:45'),(1719,63,1,9546,'4.99','2005-07-31 01:47:40','2006-02-15 22:12:45'),(1720,63,2,9549,'3.99','2005-07-31 01:57:04','2006-02-15 22:12:45'),(1721,63,1,9795,'0.99','2005-07-31 10:47:19','2006-02-15 22:12:45'),(1722,63,2,9938,'2.99','2005-07-31 15:28:47','2006-02-15 22:12:45'),(1723,63,2,10148,'0.99','2005-07-31 22:19:16','2006-02-15 22:12:45'),(1724,63,1,10288,'6.99','2005-08-01 03:38:42','2006-02-15 22:12:45'),(1725,63,1,11902,'4.99','2005-08-17 15:37:34','2006-02-15 22:12:45'),(1726,63,2,12342,'2.99','2005-08-18 07:12:46','2006-02-15 22:12:45'),(1727,63,2,12515,'0.99','2005-08-18 13:39:26','2006-02-15 22:12:45'),(1728,63,1,12954,'7.99','2005-08-19 06:04:34','2006-02-15 22:12:45'),(1729,63,1,13089,'0.99','2005-08-19 10:38:56','2006-02-15 22:12:45'),(1730,63,1,13624,'8.99','2005-08-20 06:51:02','2006-02-15 22:12:45'),(1731,63,1,14931,'3.99','2005-08-22 05:38:55','2006-02-15 22:12:45'),(1732,63,1,15060,'5.99','2005-08-22 10:24:32','2006-02-15 22:12:45'),(1733,63,1,15229,'2.99','2005-08-22 17:30:25','2006-02-15 22:12:45'),(1734,64,1,494,'4.99','2005-05-28 00:39:31','2006-02-15 22:12:45'),(1735,64,1,587,'0.99','2005-05-28 12:05:33','2006-02-15 22:12:45'),(1736,64,1,1001,'2.99','2005-05-31 00:46:31','2006-02-15 22:12:45'),(1737,64,2,1335,'0.99','2005-06-15 11:51:30','2006-02-15 22:12:45'),(1738,64,1,2060,'2.99','2005-06-17 15:42:42','2006-02-15 22:12:45'),(1739,64,2,3982,'0.99','2005-07-06 23:14:16','2006-02-15 22:12:45'),(1740,64,1,4288,'4.99','2005-07-07 15:38:25','2006-02-15 22:12:45'),(1741,64,1,4690,'1.99','2005-07-08 11:04:02','2006-02-15 22:12:45'),(1742,64,2,4819,'5.99','2005-07-08 17:19:15','2006-02-15 22:12:45'),(1743,64,2,4971,'5.99','2005-07-08 23:54:49','2006-02-15 22:12:45'),(1744,64,1,5114,'3.99','2005-07-09 07:07:05','2006-02-15 22:12:46'),(1745,64,2,5279,'2.99','2005-07-09 14:46:36','2006-02-15 22:12:46'),(1746,64,1,5432,'0.99','2005-07-09 21:21:25','2006-02-15 22:12:46'),(1747,64,2,6372,'2.99','2005-07-11 21:35:06','2006-02-15 22:12:46'),(1748,64,2,6457,'0.99','2005-07-12 01:06:35','2006-02-15 22:12:46'),(1749,64,2,6698,'1.99','2005-07-12 12:45:00','2006-02-15 22:12:46'),(1750,64,2,6744,'0.99','2005-07-12 14:30:28','2006-02-15 22:12:46'),(1751,64,2,7045,'0.99','2005-07-27 03:27:35','2006-02-15 22:12:46'),(1752,64,1,7082,'2.99','2005-07-27 04:27:32','2006-02-15 22:12:46'),(1753,64,1,7476,'1.99','2005-07-27 19:08:56','2006-02-15 22:12:46'),(1754,64,2,8602,'4.99','2005-07-29 13:04:27','2006-02-15 22:12:46'),(1755,64,1,9832,'2.99','2005-07-31 12:01:49','2006-02-15 22:12:46'),(1756,64,1,9880,'6.99','2005-07-31 13:49:02','2006-02-15 22:12:46'),(1757,64,1,9924,'3.99','2005-07-31 15:04:57','2006-02-15 22:12:46'),(1758,64,2,10185,'0.99','2005-08-01 00:12:11','2006-02-15 22:12:46'),(1759,64,2,10714,'4.99','2005-08-01 18:51:29','2006-02-15 22:12:46'),(1760,64,1,10889,'4.99','2005-08-02 00:54:33','2006-02-15 22:12:46'),(1761,64,1,12409,'0.99','2005-08-18 09:43:58','2006-02-15 22:12:46'),(1762,64,1,13773,'2.99','2005-08-20 11:50:14','2006-02-15 22:12:46'),(1763,64,1,13971,'0.99','2005-08-20 18:44:53','2006-02-15 22:12:46'),(1764,64,1,14167,'5.99','2005-08-21 02:59:48','2006-02-15 22:12:46'),(1765,64,2,14316,'0.99','2005-08-21 07:59:47','2006-02-15 22:12:46'),(1766,64,2,13333,'4.99','2006-02-14 15:16:03','2006-02-15 22:12:46'),(1767,65,1,295,'4.99','2005-05-26 20:33:20','2006-02-15 22:12:46'),(1768,65,2,657,'0.99','2005-05-28 20:23:09','2006-02-15 22:12:46'),(1769,65,1,2173,'7.99','2005-06-18 00:08:20','2006-02-15 22:12:46'),(1770,65,1,3051,'4.99','2005-06-20 13:06:52','2006-02-15 22:12:46'),(1771,65,1,3535,'4.99','2005-07-06 01:32:46','2006-02-15 22:12:46'),(1772,65,1,4240,'4.99','2005-07-07 13:33:12','2006-02-15 22:12:46'),(1773,65,2,4635,'3.99','2005-07-08 08:42:40','2006-02-15 22:12:46'),(1774,65,1,5735,'3.99','2005-07-10 11:39:15','2006-02-15 22:12:46'),(1775,65,2,6527,'0.99','2005-07-12 04:23:06','2006-02-15 22:12:46'),(1776,65,1,7877,'6.99','2005-07-28 10:25:36','2006-02-15 22:12:46'),(1777,65,2,8392,'1.99','2005-07-29 06:00:27','2006-02-15 22:12:46'),(1778,65,2,8404,'5.99','2005-07-29 06:27:01','2006-02-15 22:12:46'),(1779,65,1,9293,'3.99','2005-07-30 16:12:28','2006-02-15 22:12:46'),(1780,65,2,11100,'5.99','2005-08-02 08:08:00','2006-02-15 22:12:46'),(1781,65,1,11227,'8.99','2005-08-02 12:48:05','2006-02-15 22:12:46'),(1782,65,2,11461,'4.99','2005-08-02 21:35:00','2006-02-15 22:12:46'),(1783,65,2,11845,'2.99','2005-08-17 13:16:38','2006-02-15 22:12:46'),(1784,65,1,12114,'7.99','2005-08-17 23:02:00','2006-02-15 22:12:46'),(1785,65,1,12688,'6.99','2005-08-18 19:59:54','2006-02-15 22:12:46'),(1786,65,2,13692,'0.99','2005-08-20 09:07:52','2006-02-15 22:12:46'),(1787,65,2,14140,'6.99','2005-08-21 02:04:57','2006-02-15 22:12:46'),(1788,65,1,14356,'0.99','2005-08-21 09:08:51','2006-02-15 22:12:46'),(1789,66,2,933,'4.99','2005-05-30 13:08:45','2006-02-15 22:12:46'),(1790,66,1,1236,'2.99','2005-06-15 04:34:27','2006-02-15 22:12:46'),(1791,66,1,1907,'2.99','2005-06-17 05:08:27','2006-02-15 22:12:46'),(1792,66,1,2106,'4.99','2005-06-17 19:29:03','2006-02-15 22:12:46'),(1793,66,2,2571,'2.99','2005-06-19 04:20:14','2006-02-15 22:12:46'),(1794,66,1,2577,'4.99','2005-06-19 04:36:03','2006-02-15 22:12:46'),(1795,66,1,3334,'3.99','2005-06-21 10:04:33','2006-02-15 22:12:46'),(1796,66,2,3395,'6.99','2005-06-21 15:19:19','2006-02-15 22:12:46'),(1797,66,1,3573,'4.99','2005-07-06 03:33:48','2006-02-15 22:12:46'),(1798,66,2,3757,'2.99','2005-07-06 12:42:26','2006-02-15 22:12:46'),(1799,66,2,4088,'2.99','2005-07-07 05:31:55','2006-02-15 22:12:46'),(1800,66,1,4108,'4.99','2005-07-07 06:38:31','2006-02-15 22:12:46'),(1801,66,2,4165,'6.99','2005-07-07 09:23:27','2006-02-15 22:12:46'),(1802,66,2,4911,'5.99','2005-07-08 21:20:26','2006-02-15 22:12:46'),(1803,66,2,5915,'0.99','2005-07-10 21:12:16','2006-02-15 22:12:46'),(1804,66,1,6290,'8.99','2005-07-11 17:12:42','2006-02-15 22:12:46'),(1805,66,2,6348,'5.99','2005-07-11 20:21:18','2006-02-15 22:12:46'),(1806,66,1,6402,'3.99','2005-07-11 22:46:10','2006-02-15 22:12:46'),(1807,66,1,6995,'2.99','2005-07-27 01:12:13','2006-02-15 22:12:46'),(1808,66,1,7872,'2.99','2005-07-28 10:18:16','2006-02-15 22:12:46'),(1809,66,1,9091,'5.99','2005-07-30 08:30:45','2006-02-15 22:12:46'),(1810,66,1,10419,'0.99','2005-08-01 08:13:22','2006-02-15 22:12:46'),(1811,66,2,11028,'5.99','2005-08-02 05:48:20','2006-02-15 22:12:46'),(1812,66,2,11360,'2.99','2005-08-02 17:46:04','2006-02-15 22:12:46'),(1813,66,1,11683,'5.99','2005-08-17 06:15:17','2006-02-15 22:12:46'),(1814,66,1,11935,'0.99','2005-08-17 16:42:13','2006-02-15 22:12:46'),(1815,66,1,12699,'0.99','2005-08-18 20:20:59','2006-02-15 22:12:46'),(1816,66,1,13900,'2.99','2005-08-20 16:05:41','2006-02-15 22:12:46'),(1817,66,2,14123,'2.99','2005-08-21 01:31:25','2006-02-15 22:12:46'),(1818,66,1,14217,'6.99','2005-08-21 04:37:56','2006-02-15 22:12:46'),(1819,66,2,14351,'2.99','2005-08-21 09:04:20','2006-02-15 22:12:46'),(1820,66,2,14429,'0.99','2005-08-21 11:29:43','2006-02-15 22:12:46'),(1821,66,2,15026,'4.99','2005-08-22 09:01:52','2006-02-15 22:12:47'),(1822,66,1,15598,'8.99','2005-08-23 06:23:26','2006-02-15 22:12:47'),(1823,67,2,331,'9.99','2005-05-27 02:22:26','2006-02-15 22:12:47'),(1824,67,1,767,'2.99','2005-05-29 12:20:19','2006-02-15 22:12:47'),(1825,67,1,2064,'3.99','2005-06-17 15:57:56','2006-02-15 22:12:47'),(1826,67,1,2542,'3.99','2005-06-19 02:08:39','2006-02-15 22:12:47'),(1827,67,2,2810,'0.99','2005-06-19 19:44:12','2006-02-15 22:12:47'),(1828,67,1,3359,'4.99','2005-06-21 12:08:18','2006-02-15 22:12:47'),(1829,67,2,4090,'4.99','2005-07-07 05:47:33','2006-02-15 22:12:47'),(1830,67,2,5399,'2.99','2005-07-09 19:52:44','2006-02-15 22:12:47'),(1831,67,2,5510,'2.99','2005-07-10 00:58:37','2006-02-15 22:12:47'),(1832,67,1,6137,'2.99','2005-07-11 08:34:20','2006-02-15 22:12:47'),(1833,67,2,7277,'5.99','2005-07-27 11:48:37','2006-02-15 22:12:47'),(1834,67,2,7895,'0.99','2005-07-28 10:57:15','2006-02-15 22:12:47'),(1835,67,2,8563,'1.99','2005-07-29 11:32:58','2006-02-15 22:12:47'),(1836,67,1,9640,'7.99','2005-07-31 05:33:25','2006-02-15 22:12:47'),(1837,67,1,11295,'8.99','2005-08-02 15:10:06','2006-02-15 22:12:47'),(1838,67,1,11894,'8.99','2005-08-17 15:15:01','2006-02-15 22:12:47'),(1839,67,2,13437,'4.99','2005-08-19 23:37:52','2006-02-15 22:12:47'),(1840,67,1,13652,'2.99','2005-08-20 07:52:34','2006-02-15 22:12:47'),(1841,67,2,13791,'4.99','2005-08-20 12:21:05','2006-02-15 22:12:47'),(1842,67,2,13837,'2.99','2005-08-20 14:19:03','2006-02-15 22:12:47'),(1843,67,2,14967,'4.99','2005-08-22 06:46:03','2006-02-15 22:12:47'),(1844,67,2,15085,'2.99','2005-08-22 11:19:22','2006-02-15 22:12:47'),(1845,68,2,1828,'5.99','2005-06-16 22:04:34','2006-02-15 22:12:47'),(1846,68,2,1957,'8.99','2005-06-17 08:50:58','2006-02-15 22:12:47'),(1847,68,2,2633,'2.99','2005-06-19 08:53:10','2006-02-15 22:12:47'),(1848,68,2,2662,'4.99','2005-06-19 10:53:42','2006-02-15 22:12:47'),(1849,68,1,2686,'2.99','2005-06-19 12:44:20','2006-02-15 22:12:47'),(1850,68,1,3598,'0.99','2005-07-06 05:11:04','2006-02-15 22:12:47'),(1851,68,2,3801,'4.99','2005-07-06 15:05:50','2006-02-15 22:12:47'),(1852,68,1,3864,'0.99','2005-07-06 17:41:42','2006-02-15 22:12:47'),(1853,68,2,4555,'6.99','2005-07-08 04:48:36','2006-02-15 22:12:47'),(1854,68,1,4925,'3.99','2005-07-08 21:56:00','2006-02-15 22:12:47'),(1855,68,1,6512,'4.99','2005-07-12 03:42:49','2006-02-15 22:12:47'),(1856,68,2,9339,'3.99','2005-07-30 18:03:28','2006-02-15 22:12:47'),(1857,68,1,9538,'3.99','2005-07-31 01:25:22','2006-02-15 22:12:47'),(1858,68,2,9642,'4.99','2005-07-31 05:33:57','2006-02-15 22:12:47'),(1859,68,1,10115,'7.99','2005-07-31 21:13:47','2006-02-15 22:12:47'),(1860,68,1,11277,'2.99','2005-08-02 14:28:50','2006-02-15 22:12:47'),(1861,68,2,12742,'2.99','2005-08-18 22:22:03','2006-02-15 22:12:47'),(1862,68,2,13475,'4.99','2005-08-20 01:05:05','2006-02-15 22:12:47'),(1863,68,2,14242,'0.99','2005-08-21 05:25:59','2006-02-15 22:12:47'),(1864,68,2,14455,'5.99','2005-08-21 12:36:11','2006-02-15 22:12:47'),(1865,68,1,14947,'1.99','2005-08-22 06:07:52','2006-02-15 22:12:47'),(1866,68,1,15524,'4.99','2005-08-23 03:36:26','2006-02-15 22:12:47'),(1867,69,2,584,'4.99','2005-05-28 11:49:00','2006-02-15 22:12:47'),(1868,69,2,765,'1.99','2005-05-29 11:38:34','2006-02-15 22:12:47'),(1869,69,1,1549,'2.99','2005-06-16 01:57:15','2006-02-15 22:12:47'),(1870,69,1,3358,'4.99','2005-06-21 11:56:40','2006-02-15 22:12:47'),(1871,69,1,3883,'8.99','2005-07-06 18:39:38','2006-02-15 22:12:47'),(1872,69,1,4265,'0.99','2005-07-07 14:27:51','2006-02-15 22:12:47'),(1873,69,1,4427,'0.99','2005-07-07 22:28:51','2006-02-15 22:12:47'),(1874,69,2,5569,'3.99','2005-07-10 03:38:32','2006-02-15 22:12:47'),(1875,69,2,6297,'4.99','2005-07-11 17:37:22','2006-02-15 22:12:47'),(1876,69,1,6385,'6.99','2005-07-11 22:07:32','2006-02-15 22:12:47'),(1877,69,2,6785,'6.99','2005-07-12 16:30:57','2006-02-15 22:12:47'),(1878,69,2,8649,'6.99','2005-07-29 14:57:33','2006-02-15 22:12:47'),(1879,69,2,9193,'2.99','2005-07-30 12:28:42','2006-02-15 22:12:47'),(1880,69,1,9612,'2.99','2005-07-31 03:58:31','2006-02-15 22:12:47'),(1881,69,2,10074,'0.99','2005-07-31 19:57:16','2006-02-15 22:12:47'),(1882,69,1,11943,'3.99','2005-08-17 17:00:42','2006-02-15 22:12:47'),(1883,69,1,12012,'2.99','2005-08-17 19:20:48','2006-02-15 22:12:47'),(1884,69,1,12121,'2.99','2005-08-17 23:20:40','2006-02-15 22:12:47'),(1885,69,1,12966,'5.99','2005-08-19 06:37:48','2006-02-15 22:12:47'),(1886,69,1,13023,'5.99','2005-08-19 08:13:54','2006-02-15 22:12:47'),(1887,69,2,14311,'3.99','2005-08-21 07:45:47','2006-02-15 22:12:47'),(1888,69,2,14685,'0.99','2005-08-21 20:31:25','2006-02-15 22:12:47'),(1889,69,2,14767,'2.99','2005-08-21 23:43:00','2006-02-15 22:12:47'),(1890,69,1,15547,'2.99','2005-08-23 04:25:50','2006-02-15 22:12:47'),(1891,69,2,11995,'0.99','2006-02-14 15:16:03','2006-02-15 22:12:47'),(1892,70,2,1044,'4.99','2005-05-31 06:24:44','2006-02-15 22:12:47'),(1893,70,1,2472,'4.99','2005-06-18 20:32:40','2006-02-15 22:12:47'),(1894,70,1,4061,'0.99','2005-07-07 04:13:35','2006-02-15 22:12:47'),(1895,70,1,5927,'5.99','2005-07-10 21:57:14','2006-02-15 22:12:47'),(1896,70,2,7036,'4.99','2005-07-27 03:06:12','2006-02-15 22:12:47'),(1897,70,2,7421,'7.99','2005-07-27 17:10:05','2006-02-15 22:12:47'),(1898,70,1,7714,'2.99','2005-07-28 04:32:30','2006-02-15 22:12:47'),(1899,70,2,8550,'0.99','2005-07-29 11:12:37','2006-02-15 22:12:48'),(1900,70,1,8747,'2.99','2005-07-29 19:07:57','2006-02-15 22:12:48'),(1901,70,1,11274,'9.99','2005-08-02 14:24:08','2006-02-15 22:12:48'),(1902,70,1,11901,'2.99','2005-08-17 15:35:47','2006-02-15 22:12:48'),(1903,70,1,12003,'4.99','2005-08-17 18:56:05','2006-02-15 22:12:48'),(1904,70,2,12218,'4.99','2005-08-18 02:48:14','2006-02-15 22:12:48'),(1905,70,1,12581,'6.99','2005-08-18 15:49:15','2006-02-15 22:12:48'),(1906,70,1,12951,'3.99','2005-08-19 05:56:44','2006-02-15 22:12:48'),(1907,70,2,13680,'4.99','2005-08-20 08:44:06','2006-02-15 22:12:48'),(1908,70,2,15238,'0.99','2005-08-22 17:46:12','2006-02-15 22:12:48'),(1909,70,1,15616,'3.99','2005-08-23 07:06:38','2006-02-15 22:12:48'),(1910,71,1,199,'2.99','2005-05-26 07:11:58','2006-02-15 22:12:48'),(1911,71,1,272,'9.99','2005-05-26 16:27:11','2006-02-15 22:12:48'),(1912,71,2,1873,'2.99','2005-06-17 02:38:28','2006-02-15 22:12:48'),(1913,71,1,2374,'4.99','2005-06-18 14:44:06','2006-02-15 22:12:48'),(1914,71,2,3345,'5.99','2005-06-21 11:05:07','2006-02-15 22:12:48'),(1915,71,2,4614,'4.99','2005-07-08 07:45:17','2006-02-15 22:12:48'),(1916,71,2,5281,'1.99','2005-07-09 14:55:07','2006-02-15 22:12:48'),(1917,71,2,5358,'3.99','2005-07-09 18:09:21','2006-02-15 22:12:48'),(1918,71,1,5543,'8.99','2005-07-10 02:48:03','2006-02-15 22:12:48'),(1919,71,1,5770,'4.99','2005-07-10 13:21:28','2006-02-15 22:12:48'),(1920,71,2,5814,'4.99','2005-07-10 15:46:50','2006-02-15 22:12:48'),(1921,71,2,6020,'0.99','2005-07-11 02:08:55','2006-02-15 22:12:48'),(1922,71,1,6739,'5.99','2005-07-12 14:22:08','2006-02-15 22:12:48'),(1923,71,2,7160,'0.99','2005-07-27 07:26:06','2006-02-15 22:12:48'),(1924,71,1,7550,'4.99','2005-07-27 21:55:07','2006-02-15 22:12:48'),(1925,71,2,7982,'4.99','2005-07-28 14:19:59','2006-02-15 22:12:48'),(1926,71,2,8128,'2.99','2005-07-28 19:46:06','2006-02-15 22:12:48'),(1927,71,1,8293,'2.99','2005-07-29 02:30:50','2006-02-15 22:12:48'),(1928,71,1,8574,'1.99','2005-07-29 11:51:53','2006-02-15 22:12:48'),(1929,71,1,8668,'4.99','2005-07-29 15:41:31','2006-02-15 22:12:48'),(1930,71,1,8783,'3.99','2005-07-29 20:31:28','2006-02-15 22:12:48'),(1931,71,1,8789,'4.99','2005-07-29 20:47:27','2006-02-15 22:12:48'),(1932,71,1,8956,'0.99','2005-07-30 03:32:29','2006-02-15 22:12:48'),(1933,71,1,12417,'4.99','2005-08-18 09:57:00','2006-02-15 22:12:48'),(1934,71,1,14105,'7.99','2005-08-21 00:44:34','2006-02-15 22:12:48'),(1935,71,1,14228,'3.99','2005-08-21 04:57:08','2006-02-15 22:12:48'),(1936,71,2,14781,'4.99','2005-08-22 00:15:12','2006-02-15 22:12:48'),(1937,71,2,14904,'3.99','2005-08-22 04:32:01','2006-02-15 22:12:48'),(1938,71,1,15704,'4.99','2005-08-23 10:25:45','2006-02-15 22:12:48'),(1939,71,1,16000,'0.99','2005-08-23 20:44:36','2006-02-15 22:12:48'),(1940,72,2,785,'4.99','2005-05-29 15:08:41','2006-02-15 22:12:48'),(1941,72,2,845,'4.99','2005-05-30 01:17:25','2006-02-15 22:12:48'),(1942,72,2,1047,'0.99','2005-05-31 06:45:57','2006-02-15 22:12:48'),(1943,72,2,2294,'4.99','2005-06-18 07:46:34','2006-02-15 22:12:48'),(1944,72,1,3700,'0.99','2005-07-06 10:12:19','2006-02-15 22:12:48'),(1945,72,2,5223,'4.99','2005-07-09 12:06:03','2006-02-15 22:12:48'),(1946,72,1,5302,'4.99','2005-07-09 15:42:36','2006-02-15 22:12:48'),(1947,72,1,5424,'0.99','2005-07-09 20:59:09','2006-02-15 22:12:48'),(1948,72,1,5840,'4.99','2005-07-10 17:09:09','2006-02-15 22:12:48'),(1949,72,2,6081,'0.99','2005-07-11 05:11:09','2006-02-15 22:12:48'),(1950,72,2,8228,'4.99','2005-07-29 00:08:58','2006-02-15 22:12:48'),(1951,72,1,9027,'2.99','2005-07-30 05:58:27','2006-02-15 22:12:48'),(1952,72,2,9420,'5.99','2005-07-30 21:05:18','2006-02-15 22:12:48'),(1953,72,2,9648,'4.99','2005-07-31 05:46:03','2006-02-15 22:12:48'),(1954,72,2,10267,'0.99','2005-08-01 03:07:26','2006-02-15 22:12:48'),(1955,72,2,11206,'6.99','2005-08-02 11:58:03','2006-02-15 22:12:48'),(1956,72,2,11422,'5.99','2005-08-02 19:52:08','2006-02-15 22:12:48'),(1957,72,1,11630,'2.99','2005-08-17 04:27:46','2006-02-15 22:12:48'),(1958,72,1,11679,'4.99','2005-08-17 06:08:54','2006-02-15 22:12:48'),(1959,72,1,11923,'2.99','2005-08-17 16:21:47','2006-02-15 22:12:48'),(1960,72,2,12020,'2.99','2005-08-17 19:50:33','2006-02-15 22:12:48'),(1961,72,1,12448,'0.99','2005-08-18 10:59:04','2006-02-15 22:12:48'),(1962,72,2,12593,'0.99','2005-08-18 16:17:54','2006-02-15 22:12:48'),(1963,72,1,13145,'0.99','2005-08-19 12:53:53','2006-02-15 22:12:48'),(1964,72,2,13327,'4.99','2005-08-19 19:55:45','2006-02-15 22:12:48'),(1965,72,2,13597,'0.99','2005-08-20 05:59:05','2006-02-15 22:12:48'),(1966,72,2,13660,'4.99','2005-08-20 08:05:56','2006-02-15 22:12:48'),(1967,72,1,14020,'0.99','2005-08-20 20:59:43','2006-02-15 22:12:48'),(1968,72,2,15110,'0.99','2005-08-22 12:16:46','2006-02-15 22:12:48'),(1969,72,2,15146,'2.99','2005-08-22 13:57:55','2006-02-15 22:12:48'),(1970,73,1,70,'2.99','2005-05-25 10:15:23','2006-02-15 22:12:48'),(1971,73,2,1133,'4.99','2005-05-31 19:12:21','2006-02-15 22:12:48'),(1972,73,1,1669,'0.99','2005-06-16 10:20:20','2006-02-15 22:12:48'),(1973,73,2,2940,'4.99','2005-06-20 05:20:01','2006-02-15 22:12:48'),(1974,73,2,4327,'2.99','2005-07-07 18:01:39','2006-02-15 22:12:48'),(1975,73,1,4789,'4.99','2005-07-08 16:22:01','2006-02-15 22:12:49'),(1976,73,2,5021,'4.99','2005-07-09 02:09:41','2006-02-15 22:12:49'),(1977,73,1,6514,'9.99','2005-07-12 03:47:44','2006-02-15 22:12:49'),(1978,73,1,6645,'2.99','2005-07-12 10:39:55','2006-02-15 22:12:49'),(1979,73,1,7590,'4.99','2005-07-27 23:24:24','2006-02-15 22:12:49'),(1980,73,1,7683,'4.99','2005-07-28 03:11:29','2006-02-15 22:12:49'),(1981,73,1,8377,'4.99','2005-07-29 05:27:40','2006-02-15 22:12:49'),(1982,73,1,9212,'2.99','2005-07-30 13:03:13','2006-02-15 22:12:49'),(1983,73,1,9776,'2.99','2005-07-31 10:01:03','2006-02-15 22:12:49'),(1984,73,2,10434,'4.99','2005-08-01 08:47:00','2006-02-15 22:12:49'),(1985,73,1,11102,'4.99','2005-08-02 08:08:30','2006-02-15 22:12:49'),(1986,73,2,11155,'0.99','2005-08-02 09:55:28','2006-02-15 22:12:49'),(1987,73,2,11349,'4.99','2005-08-02 17:21:49','2006-02-15 22:12:49'),(1988,73,2,11609,'3.99','2005-08-17 03:41:11','2006-02-15 22:12:49'),(1989,73,2,12291,'4.99','2005-08-18 05:08:37','2006-02-15 22:12:49'),(1990,73,1,13886,'4.99','2005-08-20 15:34:43','2006-02-15 22:12:49'),(1991,73,1,15667,'0.99','2005-08-23 09:02:03','2006-02-15 22:12:49'),(1992,73,2,16002,'2.99','2005-08-23 20:47:12','2006-02-15 22:12:49'),(1993,73,2,13108,'2.99','2006-02-14 15:16:03','2006-02-15 22:12:49'),(1994,74,2,1121,'6.99','2005-05-31 16:37:36','2006-02-15 22:12:49'),(1995,74,1,2498,'1.99','2005-06-18 22:56:26','2006-02-15 22:12:49'),(1996,74,2,2517,'0.99','2005-06-19 00:11:26','2006-02-15 22:12:49'),(1997,74,1,3020,'1.99','2005-06-20 11:12:04','2006-02-15 22:12:49'),(1998,74,2,3445,'7.99','2005-06-21 20:40:28','2006-02-15 22:12:49'),(1999,74,2,3819,'3.99','2005-07-06 15:35:06','2006-02-15 22:12:49'),(2000,74,1,5530,'2.99','2005-07-10 02:13:49','2006-02-15 22:12:49'),(2001,74,2,5603,'2.99','2005-07-10 05:04:54','2006-02-15 22:12:49'),(2002,74,2,5917,'4.99','2005-07-10 21:30:22','2006-02-15 22:12:49'),(2003,74,1,6241,'7.99','2005-07-11 14:40:48','2006-02-15 22:12:49'),(2004,74,1,6475,'2.99','2005-07-12 01:36:57','2006-02-15 22:12:49'),(2005,74,1,7304,'6.99','2005-07-27 12:56:56','2006-02-15 22:12:49'),(2006,74,2,8796,'5.99','2005-07-29 21:09:11','2006-02-15 22:12:49'),(2007,74,2,9112,'4.99','2005-07-30 09:06:31','2006-02-15 22:12:49'),(2008,74,2,10051,'3.99','2005-07-31 19:14:20','2006-02-15 22:12:49'),(2009,74,1,10624,'0.99','2005-08-01 15:27:05','2006-02-15 22:12:49'),(2010,74,2,12374,'3.99','2005-08-18 08:07:45','2006-02-15 22:12:49'),(2011,74,2,12477,'3.99','2005-08-18 12:25:01','2006-02-15 22:12:49'),(2012,74,2,13335,'0.99','2005-08-19 20:03:18','2006-02-15 22:12:49'),(2013,74,2,13520,'0.99','2005-08-20 02:41:46','2006-02-15 22:12:49'),(2014,74,1,13583,'1.99','2005-08-20 05:29:45','2006-02-15 22:12:49'),(2015,74,2,13747,'5.99','2005-08-20 10:56:06','2006-02-15 22:12:49'),(2016,74,1,15286,'4.99','2005-08-22 19:17:56','2006-02-15 22:12:49'),(2017,74,2,15325,'4.99','2005-08-22 20:27:38','2006-02-15 22:12:49'),(2018,74,2,15500,'0.99','2005-08-23 02:39:37','2006-02-15 22:12:49'),(2019,74,2,15739,'4.99','2005-08-23 11:56:22','2006-02-15 22:12:49'),(2020,74,1,16046,'0.99','2005-08-23 22:26:47','2006-02-15 22:12:49'),(2021,75,1,180,'4.99','2005-05-26 04:46:23','2006-02-15 22:12:49'),(2022,75,2,268,'0.99','2005-05-26 16:19:08','2006-02-15 22:12:49'),(2023,75,1,1920,'4.99','2005-06-17 06:00:23','2006-02-15 22:12:49'),(2024,75,1,2161,'7.99','2005-06-17 23:39:50','2006-02-15 22:12:49'),(2025,75,2,2738,'4.99','2005-06-19 15:56:30','2006-02-15 22:12:49'),(2026,75,2,3062,'6.99','2005-06-20 13:50:00','2006-02-15 22:12:49'),(2027,75,1,3210,'4.99','2005-06-21 01:00:25','2006-02-15 22:12:49'),(2028,75,1,3711,'0.99','2005-07-06 10:46:15','2006-02-15 22:12:49'),(2029,75,2,4179,'2.99','2005-07-07 10:17:15','2006-02-15 22:12:49'),(2030,75,2,4511,'0.99','2005-07-08 02:36:21','2006-02-15 22:12:49'),(2031,75,1,4639,'5.99','2005-07-08 08:57:21','2006-02-15 22:12:49'),(2032,75,2,5260,'2.99','2005-07-09 14:05:45','2006-02-15 22:12:49'),(2033,75,2,6052,'0.99','2005-07-11 03:51:27','2006-02-15 22:12:49'),(2034,75,1,6092,'3.99','2005-07-11 05:51:31','2006-02-15 22:12:49'),(2035,75,1,6486,'0.99','2005-07-12 02:09:36','2006-02-15 22:12:49'),(2036,75,2,6530,'0.99','2005-07-12 04:33:19','2006-02-15 22:12:49'),(2037,75,2,6852,'2.99','2005-07-12 19:33:49','2006-02-15 22:12:49'),(2038,75,1,7052,'2.99','2005-07-27 03:36:38','2006-02-15 22:12:49'),(2039,75,1,7454,'4.99','2005-07-27 18:27:26','2006-02-15 22:12:49'),(2040,75,1,7843,'0.99','2005-07-28 09:10:22','2006-02-15 22:12:49'),(2041,75,2,7897,'2.99','2005-07-28 11:01:51','2006-02-15 22:12:49'),(2042,75,2,8202,'1.99','2005-07-28 23:11:45','2006-02-15 22:12:49'),(2043,75,1,8823,'6.99','2005-07-29 22:22:12','2006-02-15 22:12:49'),(2044,75,2,9168,'5.99','2005-07-30 11:31:17','2006-02-15 22:12:49'),(2045,75,2,9442,'4.99','2005-07-30 21:44:31','2006-02-15 22:12:49'),(2046,75,2,9501,'4.99','2005-07-30 23:59:21','2006-02-15 22:12:49'),(2047,75,1,9783,'9.99','2005-07-31 10:15:46','2006-02-15 22:12:49'),(2048,75,2,10653,'5.99','2005-08-01 16:28:07','2006-02-15 22:12:49'),(2049,75,1,10726,'3.99','2005-08-01 19:14:53','2006-02-15 22:12:50'),(2050,75,1,10871,'4.99','2005-08-02 00:27:24','2006-02-15 22:12:50'),(2051,75,1,11330,'0.99','2005-08-02 16:45:33','2006-02-15 22:12:50'),(2052,75,1,12002,'2.99','2005-08-17 18:56:02','2006-02-15 22:12:50'),(2053,75,2,12239,'0.99','2005-08-18 03:26:42','2006-02-15 22:12:50'),(2054,75,1,12336,'1.99','2005-08-18 06:59:41','2006-02-15 22:12:50'),(2055,75,1,12412,'5.99','2005-08-18 09:49:52','2006-02-15 22:12:50'),(2056,75,1,12426,'4.99','2005-08-18 10:24:11','2006-02-15 22:12:50'),(2057,75,1,12662,'0.99','2005-08-18 19:10:41','2006-02-15 22:12:50'),(2058,75,2,15928,'5.99','2005-08-23 18:23:24','2006-02-15 22:12:50'),(2059,75,2,13534,'8.97','2006-02-14 15:16:03','2006-02-15 22:12:50'),(2060,75,1,14488,'0.00','2006-02-14 15:16:03','2006-02-15 22:12:50'),(2061,75,2,15191,'0.00','2006-02-14 15:16:03','2006-02-15 22:12:50'),(2062,76,2,574,'1.99','2005-05-28 10:44:28','2006-02-15 22:12:50'),(2063,76,1,926,'0.99','2005-05-30 12:15:54','2006-02-15 22:12:50'),(2064,76,2,1487,'0.99','2005-06-15 21:27:42','2006-02-15 22:12:50'),(2065,76,1,1791,'6.99','2005-06-16 20:04:28','2006-02-15 22:12:50'),(2066,76,2,2111,'0.99','2005-06-17 19:47:21','2006-02-15 22:12:50'),(2067,76,2,2397,'1.99','2005-06-18 15:51:25','2006-02-15 22:12:50'),(2068,76,1,2894,'0.99','2005-06-20 02:22:42','2006-02-15 22:12:50'),(2069,76,2,3416,'0.99','2005-06-21 17:05:29','2006-02-15 22:12:50'),(2070,76,2,4099,'4.99','2005-07-07 06:20:33','2006-02-15 22:12:50'),(2071,76,2,5571,'0.99','2005-07-10 03:48:20','2006-02-15 22:12:50'),(2072,76,2,6789,'0.99','2005-07-12 16:34:40','2006-02-15 22:12:50'),(2073,76,2,8253,'6.99','2005-07-29 00:57:06','2006-02-15 22:12:50'),(2074,76,2,8357,'2.99','2005-07-29 04:59:44','2006-02-15 22:12:50'),(2075,76,2,8405,'3.99','2005-07-29 06:28:19','2006-02-15 22:12:50'),(2076,76,1,8935,'0.99','2005-07-30 02:38:45','2006-02-15 22:12:50'),(2077,76,2,9312,'2.99','2005-07-30 16:59:17','2006-02-15 22:12:50'),(2078,76,2,10082,'0.99','2005-07-31 20:09:32','2006-02-15 22:12:50'),(2079,76,2,10795,'4.99','2005-08-01 21:56:37','2006-02-15 22:12:50'),(2080,76,2,11172,'7.99','2005-08-02 10:27:52','2006-02-15 22:12:50'),(2081,76,2,13697,'3.99','2005-08-20 09:21:08','2006-02-15 22:12:50'),(2082,76,1,14637,'2.99','2005-08-21 19:01:00','2006-02-15 22:12:50'),(2083,76,2,15169,'4.99','2005-08-22 15:21:56','2006-02-15 22:12:50'),(2084,76,1,15566,'10.99','2005-08-23 05:17:23','2006-02-15 22:12:50'),(2085,77,2,319,'2.99','2005-05-26 23:52:13','2006-02-15 22:12:50'),(2086,77,1,419,'1.99','2005-05-27 15:15:11','2006-02-15 22:12:50'),(2087,77,2,561,'2.99','2005-05-28 08:54:06','2006-02-15 22:12:50'),(2088,77,1,586,'0.99','2005-05-28 12:03:00','2006-02-15 22:12:50'),(2089,77,1,760,'5.99','2005-05-29 11:07:25','2006-02-15 22:12:50'),(2090,77,1,1710,'4.99','2005-06-16 14:11:24','2006-02-15 22:12:50'),(2091,77,1,2354,'3.99','2005-06-18 12:54:18','2006-02-15 22:12:50'),(2092,77,2,2452,'8.99','2005-06-18 19:29:21','2006-02-15 22:12:50'),(2093,77,1,3151,'2.99','2005-06-20 20:36:53','2006-02-15 22:12:50'),(2094,77,2,3238,'0.99','2005-06-21 02:48:21','2006-02-15 22:12:50'),(2095,77,2,4928,'0.99','2005-07-08 22:05:41','2006-02-15 22:12:50'),(2096,77,2,6168,'0.99','2005-07-11 10:21:38','2006-02-15 22:12:50'),(2097,77,2,6390,'2.99','2005-07-11 22:19:23','2006-02-15 22:12:50'),(2098,77,1,7406,'3.99','2005-07-27 16:25:45','2006-02-15 22:12:50'),(2099,77,1,7710,'0.99','2005-07-28 04:24:07','2006-02-15 22:12:50'),(2100,77,2,8942,'4.99','2005-07-30 03:01:07','2006-02-15 22:12:50'),(2101,77,1,9811,'0.99','2005-07-31 11:23:45','2006-02-15 22:12:50'),(2102,77,2,10184,'4.99','2005-08-01 00:09:33','2006-02-15 22:12:50'),(2103,77,1,10886,'2.99','2005-08-02 00:52:34','2006-02-15 22:12:50'),(2104,77,1,10895,'0.99','2005-08-02 01:16:59','2006-02-15 22:12:50'),(2105,77,2,10991,'0.99','2005-08-02 04:41:12','2006-02-15 22:12:50'),(2106,77,1,11469,'2.99','2005-08-02 21:48:09','2006-02-15 22:12:50'),(2107,77,2,11767,'7.99','2005-08-17 10:00:40','2006-02-15 22:12:50'),(2108,77,1,12065,'6.99','2005-08-17 21:31:46','2006-02-15 22:12:50'),(2109,77,2,12328,'1.99','2005-08-18 06:43:56','2006-02-15 22:12:50'),(2110,77,2,13752,'9.99','2005-08-20 11:17:45','2006-02-15 22:12:50'),(2111,77,2,14530,'4.99','2005-08-21 15:10:50','2006-02-15 22:12:50'),(2112,77,2,15359,'2.99','2005-08-22 21:34:00','2006-02-15 22:12:50'),(2113,78,1,2207,'2.99','2005-06-18 02:19:21','2006-02-15 22:12:50'),(2114,78,2,2949,'6.99','2005-06-20 06:05:53','2006-02-15 22:12:50'),(2115,78,2,3248,'7.99','2005-06-21 03:12:21','2006-02-15 22:12:50'),(2116,78,1,3593,'4.99','2005-07-06 04:39:52','2006-02-15 22:12:50'),(2117,78,2,4227,'5.99','2005-07-07 12:41:36','2006-02-15 22:12:50'),(2118,78,2,4627,'2.99','2005-07-08 08:24:39','2006-02-15 22:12:50'),(2119,78,2,4778,'0.99','2005-07-08 15:51:51','2006-02-15 22:12:50'),(2120,78,1,5078,'1.99','2005-07-09 05:20:24','2006-02-15 22:12:50'),(2121,78,2,5604,'0.99','2005-07-10 05:05:00','2006-02-15 22:12:51'),(2122,78,1,6005,'0.99','2005-07-11 01:36:42','2006-02-15 22:12:51'),(2123,78,1,6344,'4.99','2005-07-11 20:04:43','2006-02-15 22:12:51'),(2124,78,2,7200,'1.99','2005-07-27 08:57:38','2006-02-15 22:12:51'),(2125,78,2,7747,'4.99','2005-07-28 05:50:11','2006-02-15 22:12:51'),(2126,78,2,7926,'3.99','2005-07-28 12:13:02','2006-02-15 22:12:51'),(2127,78,1,7957,'6.99','2005-07-28 13:34:08','2006-02-15 22:12:51'),(2128,78,2,8920,'4.99','2005-07-30 01:59:24','2006-02-15 22:12:51'),(2129,78,1,9068,'5.99','2005-07-30 07:31:45','2006-02-15 22:12:51'),(2130,78,2,10350,'3.99','2005-08-01 05:30:05','2006-02-15 22:12:51'),(2131,78,1,10590,'2.99','2005-08-01 14:11:53','2006-02-15 22:12:51'),(2132,78,1,10831,'7.99','2005-08-01 23:22:45','2006-02-15 22:12:51'),(2133,78,1,10942,'10.99','2005-08-02 03:16:31','2006-02-15 22:12:51'),(2134,78,2,12474,'8.99','2005-08-18 12:10:03','2006-02-15 22:12:51'),(2135,78,2,12653,'4.99','2005-08-18 18:53:17','2006-02-15 22:12:51'),(2136,78,2,13124,'5.99','2005-08-19 11:55:59','2006-02-15 22:12:51'),(2137,78,1,13432,'0.99','2005-08-19 23:29:06','2006-02-15 22:12:51'),(2138,78,2,13792,'5.99','2005-08-20 12:21:37','2006-02-15 22:12:51'),(2139,78,2,14620,'2.99','2005-08-21 18:10:43','2006-02-15 22:12:51'),(2140,78,1,14716,'0.99','2005-08-21 21:29:55','2006-02-15 22:12:51'),(2141,78,1,14810,'2.99','2005-08-22 01:08:34','2006-02-15 22:12:51'),(2142,78,2,14862,'7.99','2005-08-22 02:51:41','2006-02-15 22:12:51'),(2143,78,2,16039,'2.99','2005-08-23 22:18:51','2006-02-15 22:12:51'),(2144,79,1,840,'4.99','2005-05-30 00:28:41','2006-02-15 22:12:51'),(2145,79,1,859,'2.99','2005-05-30 02:36:20','2006-02-15 22:12:51'),(2146,79,1,928,'2.99','2005-05-30 12:27:14','2006-02-15 22:12:51'),(2147,79,2,3096,'4.99','2005-06-20 16:17:56','2006-02-15 22:12:51'),(2148,79,2,3178,'2.99','2005-06-20 22:35:12','2006-02-15 22:12:51'),(2149,79,1,3641,'0.99','2005-07-06 07:17:09','2006-02-15 22:12:51'),(2150,79,1,3748,'2.99','2005-07-06 12:11:22','2006-02-15 22:12:51'),(2151,79,2,4049,'4.99','2005-07-07 03:34:53','2006-02-15 22:12:51'),(2152,79,1,4530,'4.99','2005-07-08 03:27:05','2006-02-15 22:12:51'),(2153,79,2,4736,'4.99','2005-07-08 13:22:55','2006-02-15 22:12:51'),(2154,79,2,5205,'2.99','2005-07-09 10:56:37','2006-02-15 22:12:51'),(2155,79,1,5555,'2.99','2005-07-10 03:08:55','2006-02-15 22:12:51'),(2156,79,2,6162,'5.99','2005-07-11 10:12:30','2006-02-15 22:12:51'),(2157,79,1,7220,'9.99','2005-07-27 09:35:54','2006-02-15 22:12:51'),(2158,79,1,8849,'2.99','2005-07-29 23:21:01','2006-02-15 22:12:51'),(2159,79,1,9814,'1.99','2005-07-31 11:29:46','2006-02-15 22:12:51'),(2160,79,2,9845,'6.99','2005-07-31 12:28:05','2006-02-15 22:12:51'),(2161,79,1,9989,'0.99','2005-07-31 17:22:39','2006-02-15 22:12:51'),(2162,79,1,10676,'2.99','2005-08-01 17:14:15','2006-02-15 22:12:51'),(2163,79,2,11641,'4.99','2005-08-17 04:45:39','2006-02-15 22:12:51'),(2164,79,2,13026,'2.99','2005-08-19 08:22:45','2006-02-15 22:12:51'),(2165,79,1,14179,'0.99','2005-08-21 03:14:27','2006-02-15 22:12:51'),(2166,80,1,2596,'2.99','2005-06-19 05:48:26','2006-02-15 22:12:51'),(2167,80,2,2805,'8.99','2005-06-19 19:29:17','2006-02-15 22:12:51'),(2168,80,1,3367,'3.99','2005-06-21 13:08:21','2006-02-15 22:12:51'),(2169,80,2,3623,'4.99','2005-07-06 06:05:23','2006-02-15 22:12:51'),(2170,80,2,4268,'8.99','2005-07-07 14:36:05','2006-02-15 22:12:51'),(2171,80,2,4299,'3.99','2005-07-07 16:33:48','2006-02-15 22:12:51'),(2172,80,1,4688,'5.99','2005-07-08 11:03:29','2006-02-15 22:12:51'),(2173,80,2,5420,'3.99','2005-07-09 20:48:42','2006-02-15 22:12:51'),(2174,80,2,5452,'4.99','2005-07-09 22:23:21','2006-02-15 22:12:51'),(2175,80,1,6199,'5.99','2005-07-11 12:16:03','2006-02-15 22:12:51'),(2176,80,2,6417,'6.99','2005-07-11 23:35:11','2006-02-15 22:12:51'),(2177,80,2,6707,'1.99','2005-07-12 13:07:55','2006-02-15 22:12:51'),(2178,80,2,7558,'0.99','2005-07-27 22:19:08','2006-02-15 22:12:51'),(2179,80,1,8509,'5.99','2005-07-29 09:38:19','2006-02-15 22:12:51'),(2180,80,1,8884,'6.99','2005-07-30 00:26:22','2006-02-15 22:12:51'),(2181,80,1,10313,'0.99','2005-08-01 04:29:29','2006-02-15 22:12:51'),(2182,80,1,10656,'6.99','2005-08-01 16:38:04','2006-02-15 22:12:51'),(2183,80,1,10690,'8.99','2005-08-01 18:05:54','2006-02-15 22:12:51'),(2184,80,2,11101,'5.99','2005-08-02 08:08:24','2006-02-15 22:12:51'),(2185,80,2,11839,'0.99','2005-08-17 13:08:45','2006-02-15 22:12:51'),(2186,80,1,11850,'1.99','2005-08-17 13:30:15','2006-02-15 22:12:51'),(2187,80,2,12468,'2.99','2005-08-18 11:41:47','2006-02-15 22:12:51'),(2188,80,1,13352,'4.99','2005-08-19 20:51:40','2006-02-15 22:12:51'),(2189,80,2,13395,'0.99','2005-08-19 22:05:40','2006-02-15 22:12:51'),(2190,80,1,13724,'4.99','2005-08-20 10:07:28','2006-02-15 22:12:51'),(2191,80,2,13851,'0.99','2005-08-20 14:44:22','2006-02-15 22:12:51'),(2192,80,1,14916,'0.99','2005-08-22 04:56:57','2006-02-15 22:12:52'),(2193,80,1,15648,'8.99','2005-08-23 08:27:57','2006-02-15 22:12:52'),(2194,80,1,16012,'5.99','2005-08-23 21:13:39','2006-02-15 22:12:52'),(2195,80,2,12457,'2.99','2006-02-14 15:16:03','2006-02-15 22:12:52'),(2196,81,1,289,'0.99','2005-05-26 20:01:09','2006-02-15 22:12:52'),(2197,81,1,2714,'1.99','2005-06-19 14:26:09','2006-02-15 22:12:52'),(2198,81,1,2854,'5.99','2005-06-19 23:11:48','2006-02-15 22:12:52'),(2199,81,1,3229,'4.99','2005-06-21 02:20:41','2006-02-15 22:12:52'),(2200,81,1,3879,'2.99','2005-07-06 18:31:20','2006-02-15 22:12:52'),(2201,81,2,4983,'9.99','2005-07-09 00:34:16','2006-02-15 22:12:52'),(2202,81,1,5468,'0.99','2005-07-09 23:06:09','2006-02-15 22:12:52'),(2203,81,2,7130,'4.99','2005-07-27 06:23:36','2006-02-15 22:12:52'),(2204,81,1,7709,'0.99','2005-07-28 04:22:14','2006-02-15 22:12:52'),(2205,81,2,9454,'3.99','2005-07-30 22:20:09','2006-02-15 22:12:52'),(2206,81,2,10456,'0.99','2005-08-01 09:17:21','2006-02-15 22:12:52'),(2207,81,1,11837,'5.99','2005-08-17 13:04:41','2006-02-15 22:12:52'),(2208,81,2,12181,'4.99','2005-08-18 01:28:18','2006-02-15 22:12:52'),(2209,81,2,13820,'5.99','2005-08-20 13:26:37','2006-02-15 22:12:52'),(2210,81,1,14128,'4.99','2005-08-21 01:35:58','2006-02-15 22:12:52'),(2211,81,1,14642,'3.99','2005-08-21 19:09:40','2006-02-15 22:12:52'),(2212,81,2,14748,'7.99','2005-08-21 23:02:02','2006-02-15 22:12:52'),(2213,81,1,15224,'5.99','2005-08-22 17:18:05','2006-02-15 22:12:52'),(2214,81,1,15602,'4.99','2005-08-23 06:41:07','2006-02-15 22:12:52'),(2215,81,1,15823,'4.99','2005-08-23 15:08:00','2006-02-15 22:12:52'),(2216,81,1,15858,'2.99','2005-08-23 16:07:15','2006-02-15 22:12:52'),(2217,81,2,15884,'1.99','2005-08-23 16:45:28','2006-02-15 22:12:52'),(2218,82,2,145,'2.99','2005-05-25 23:59:03','2006-02-15 22:12:52'),(2219,82,2,288,'8.99','2005-05-26 19:47:49','2006-02-15 22:12:52'),(2220,82,1,1438,'0.99','2005-06-15 18:38:51','2006-02-15 22:12:52'),(2221,82,2,1570,'0.99','2005-06-16 03:21:33','2006-02-15 22:12:52'),(2222,82,1,2506,'8.99','2005-06-18 23:29:53','2006-02-15 22:12:52'),(2223,82,1,2819,'8.99','2005-06-19 20:13:33','2006-02-15 22:12:52'),(2224,82,2,3332,'0.99','2005-06-21 09:55:12','2006-02-15 22:12:52'),(2225,82,1,3680,'2.99','2005-07-06 09:16:10','2006-02-15 22:12:52'),(2226,82,1,4598,'6.99','2005-07-08 06:46:26','2006-02-15 22:12:52'),(2227,82,2,5746,'4.99','2005-07-10 12:15:12','2006-02-15 22:12:52'),(2228,82,2,6082,'6.99','2005-07-11 05:12:41','2006-02-15 22:12:52'),(2229,82,2,6708,'6.99','2005-07-12 13:10:55','2006-02-15 22:12:52'),(2230,82,2,7733,'9.99','2005-07-28 05:04:47','2006-02-15 22:12:52'),(2231,82,2,7873,'0.99','2005-07-28 10:19:46','2006-02-15 22:12:52'),(2232,82,1,8487,'4.99','2005-07-29 08:53:49','2006-02-15 22:12:52'),(2233,82,2,9277,'3.99','2005-07-30 15:13:45','2006-02-15 22:12:52'),(2234,82,1,9305,'8.99','2005-07-30 16:45:56','2006-02-15 22:12:52'),(2235,82,1,9447,'6.99','2005-07-30 21:54:22','2006-02-15 22:12:52'),(2236,82,1,11093,'4.99','2005-08-02 07:59:49','2006-02-15 22:12:52'),(2237,82,2,11688,'5.99','2005-08-17 06:41:58','2006-02-15 22:12:52'),(2238,82,1,12470,'3.99','2005-08-18 11:55:42','2006-02-15 22:12:52'),(2239,82,1,13032,'0.99','2005-08-19 08:31:50','2006-02-15 22:12:52'),(2240,82,2,13847,'6.99','2005-08-20 14:33:59','2006-02-15 22:12:52'),(2241,82,2,14518,'0.99','2005-08-21 14:58:58','2006-02-15 22:12:52'),(2242,82,2,14892,'4.99','2005-08-22 04:15:05','2006-02-15 22:12:52'),(2243,82,2,15516,'3.99','2005-08-23 03:12:54','2006-02-15 22:12:52'),(2244,83,2,222,'0.99','2005-05-26 10:14:38','2006-02-15 22:12:52'),(2245,83,2,950,'0.99','2005-05-30 16:06:08','2006-02-15 22:12:52'),(2246,83,2,989,'2.99','2005-05-30 23:11:51','2006-02-15 22:12:52'),(2247,83,1,1354,'5.99','2005-06-15 13:13:49','2006-02-15 22:12:52'),(2248,83,1,1591,'5.99','2005-06-16 05:12:37','2006-02-15 22:12:52'),(2249,83,2,1617,'3.99','2005-06-16 07:06:06','2006-02-15 22:12:52'),(2250,83,2,3230,'4.99','2005-06-21 02:23:16','2006-02-15 22:12:52'),(2251,83,2,3722,'6.99','2005-07-06 11:10:27','2006-02-15 22:12:52'),(2252,83,1,3754,'2.99','2005-07-06 12:35:44','2006-02-15 22:12:52'),(2253,83,1,5218,'0.99','2005-07-09 11:57:12','2006-02-15 22:12:52'),(2254,83,2,5394,'6.99','2005-07-09 19:36:15','2006-02-15 22:12:52'),(2255,83,2,6194,'2.99','2005-07-11 11:51:00','2006-02-15 22:12:52'),(2256,83,2,6861,'2.99','2005-07-12 19:56:52','2006-02-15 22:12:52'),(2257,83,2,7721,'0.99','2005-07-28 04:42:58','2006-02-15 22:12:52'),(2258,83,2,8729,'4.99','2005-07-29 18:23:02','2006-02-15 22:12:52'),(2259,83,1,9867,'1.99','2005-07-31 13:17:04','2006-02-15 22:12:53'),(2260,83,1,11408,'0.99','2005-08-02 19:25:13','2006-02-15 22:12:53'),(2261,83,1,11565,'5.99','2005-08-17 01:28:05','2006-02-15 22:12:53'),(2262,83,2,11777,'4.99','2005-08-17 10:27:19','2006-02-15 22:12:53'),(2263,83,1,12258,'4.99','2005-08-18 04:11:13','2006-02-15 22:12:53'),(2264,83,2,12985,'5.99','2005-08-19 07:08:05','2006-02-15 22:12:53'),(2265,83,1,13875,'4.99','2005-08-20 15:13:11','2006-02-15 22:12:53'),(2266,83,2,15498,'4.99','2005-08-23 02:33:27','2006-02-15 22:12:53'),(2267,83,2,15737,'5.99','2005-08-23 11:52:18','2006-02-15 22:12:53'),(2268,83,2,11563,'4.99','2006-02-14 15:16:03','2006-02-15 22:12:53'),(2269,84,2,408,'0.99','2005-05-27 13:57:39','2006-02-15 22:12:53'),(2270,84,1,739,'6.99','2005-05-29 08:28:18','2006-02-15 22:12:53'),(2271,84,1,834,'4.99','2005-05-29 23:24:30','2006-02-15 22:12:53'),(2272,84,2,1195,'0.99','2005-06-15 01:37:38','2006-02-15 22:12:53'),(2273,84,2,1320,'4.99','2005-06-15 10:42:13','2006-02-15 22:12:53'),(2274,84,2,1815,'0.99','2005-06-16 21:16:07','2006-02-15 22:12:53'),(2275,84,1,2012,'5.99','2005-06-17 11:57:15','2006-02-15 22:12:53'),(2276,84,2,2042,'0.99','2005-06-17 14:31:02','2006-02-15 22:12:53'),(2277,84,2,2409,'0.99','2005-06-18 16:53:33','2006-02-15 22:12:53'),(2278,84,2,4079,'6.99','2005-07-07 05:06:27','2006-02-15 22:12:53'),(2279,84,2,4838,'6.99','2005-07-08 18:11:00','2006-02-15 22:12:53'),(2280,84,1,5221,'5.99','2005-07-09 12:02:23','2006-02-15 22:12:53'),(2281,84,1,5237,'0.99','2005-07-09 12:56:58','2006-02-15 22:12:53'),(2282,84,1,5971,'5.99','2005-07-11 00:05:58','2006-02-15 22:12:53'),(2283,84,2,6259,'2.99','2005-07-11 15:25:52','2006-02-15 22:12:53'),(2284,84,2,6415,'9.99','2005-07-11 23:27:52','2006-02-15 22:12:53'),(2285,84,1,7854,'2.99','2005-07-28 09:42:31','2006-02-15 22:12:53'),(2286,84,2,8019,'4.99','2005-07-28 15:37:43','2006-02-15 22:12:53'),(2287,84,1,8654,'8.99','2005-07-29 15:04:27','2006-02-15 22:12:53'),(2288,84,2,9074,'2.99','2005-07-30 07:50:10','2006-02-15 22:12:53'),(2289,84,2,9680,'4.99','2005-07-31 06:41:46','2006-02-15 22:12:53'),(2290,84,2,10540,'0.99','2005-08-01 12:24:42','2006-02-15 22:12:53'),(2291,84,1,10872,'2.99','2005-08-02 00:27:50','2006-02-15 22:12:53'),(2292,84,2,11220,'4.99','2005-08-02 12:31:41','2006-02-15 22:12:53'),(2293,84,2,11424,'3.99','2005-08-02 19:57:42','2006-02-15 22:12:53'),(2294,84,2,11453,'7.99','2005-08-02 21:00:05','2006-02-15 22:12:53'),(2295,84,2,11899,'0.99','2005-08-17 15:29:12','2006-02-15 22:12:53'),(2296,84,2,11960,'4.99','2005-08-17 17:24:30','2006-02-15 22:12:53'),(2297,84,2,12364,'4.99','2005-08-18 07:55:09','2006-02-15 22:12:53'),(2298,84,2,13115,'2.99','2005-08-19 11:27:43','2006-02-15 22:12:53'),(2299,84,1,14330,'5.99','2005-08-21 08:29:20','2006-02-15 22:12:53'),(2300,84,1,15190,'4.99','2005-08-22 15:57:38','2006-02-15 22:12:53'),(2301,84,1,15255,'2.99','2005-08-22 18:16:50','2006-02-15 22:12:53'),(2302,85,1,690,'9.99','2005-05-29 00:54:53','2006-02-15 22:12:53'),(2303,85,2,908,'4.99','2005-05-30 10:38:37','2006-02-15 22:12:53'),(2304,85,1,1685,'1.99','2005-06-16 12:06:57','2006-02-15 22:12:53'),(2305,85,1,2131,'5.99','2005-06-17 21:02:25','2006-02-15 22:12:53'),(2306,85,2,2794,'0.99','2005-06-19 18:53:05','2006-02-15 22:12:53'),(2307,85,1,3165,'4.99','2005-06-20 21:29:17','2006-02-15 22:12:53'),(2308,85,1,3307,'1.99','2005-06-21 07:52:30','2006-02-15 22:12:53'),(2309,85,2,3418,'3.99','2005-06-21 17:06:38','2006-02-15 22:12:53'),(2310,85,2,4451,'0.99','2005-07-07 23:29:54','2006-02-15 22:12:53'),(2311,85,1,4705,'2.99','2005-07-08 11:50:38','2006-02-15 22:12:53'),(2312,85,1,5051,'4.99','2005-07-09 03:57:53','2006-02-15 22:12:53'),(2313,85,1,5519,'0.99','2005-07-10 01:18:32','2006-02-15 22:12:53'),(2314,85,2,7906,'0.99','2005-07-28 11:31:42','2006-02-15 22:12:53'),(2315,85,2,9427,'7.99','2005-07-30 21:16:33','2006-02-15 22:12:53'),(2316,85,2,9957,'4.99','2005-07-31 16:03:55','2006-02-15 22:12:53'),(2317,85,1,9985,'2.99','2005-07-31 17:14:47','2006-02-15 22:12:53'),(2318,85,1,10328,'4.99','2005-08-01 04:56:10','2006-02-15 22:12:53'),(2319,85,1,10548,'0.99','2005-08-01 12:44:32','2006-02-15 22:12:53'),(2320,85,2,11067,'8.99','2005-08-02 07:03:24','2006-02-15 22:12:53'),(2321,85,2,12036,'0.99','2005-08-17 20:19:06','2006-02-15 22:12:53'),(2322,85,1,12456,'4.99','2005-08-18 11:21:51','2006-02-15 22:12:53'),(2323,85,1,13727,'3.99','2005-08-20 10:08:53','2006-02-15 22:12:53'),(2324,85,2,13733,'0.99','2005-08-20 10:25:12','2006-02-15 22:12:53'),(2325,86,1,66,'1.99','2005-05-25 09:35:12','2006-02-15 22:12:53'),(2326,86,2,1640,'4.99','2005-06-16 08:35:39','2006-02-15 22:12:54'),(2327,86,2,1822,'0.99','2005-06-16 21:43:45','2006-02-15 22:12:54'),(2328,86,2,1924,'2.99','2005-06-17 06:13:34','2006-02-15 22:12:54'),(2329,86,1,2141,'4.99','2005-06-17 21:41:34','2006-02-15 22:12:54'),(2330,86,1,2518,'4.99','2005-06-19 00:16:23','2006-02-15 22:12:54'),(2331,86,1,3207,'0.99','2005-06-21 00:43:16','2006-02-15 22:12:54'),(2332,86,2,3270,'4.99','2005-06-21 05:07:31','2006-02-15 22:12:54'),(2333,86,1,3611,'0.99','2005-07-06 05:37:18','2006-02-15 22:12:54'),(2334,86,2,3945,'4.99','2005-07-06 21:35:00','2006-02-15 22:12:54'),(2335,86,1,4235,'2.99','2005-07-07 13:05:52','2006-02-15 22:12:54'),(2336,86,1,4571,'9.99','2005-07-08 05:34:41','2006-02-15 22:12:54'),(2337,86,2,5295,'0.99','2005-07-09 15:25:06','2006-02-15 22:12:54'),(2338,86,1,5752,'8.99','2005-07-10 12:27:38','2006-02-15 22:12:54'),(2339,86,2,6872,'7.99','2005-07-12 20:15:04','2006-02-15 22:12:54'),(2340,86,1,7231,'2.99','2005-07-27 10:01:51','2006-02-15 22:12:54'),(2341,86,1,7874,'10.99','2005-07-28 10:21:52','2006-02-15 22:12:54'),(2342,86,2,8803,'5.99','2005-07-29 21:26:24','2006-02-15 22:12:54'),(2343,86,1,8850,'2.99','2005-07-29 23:24:20','2006-02-15 22:12:54'),(2344,86,2,9376,'4.99','2005-07-30 19:11:49','2006-02-15 22:12:54'),(2345,86,2,10252,'8.99','2005-08-01 02:39:39','2006-02-15 22:12:54'),(2346,86,2,10536,'4.99','2005-08-01 12:21:53','2006-02-15 22:12:54'),(2347,86,2,10584,'6.99','2005-08-01 13:58:47','2006-02-15 22:12:54'),(2348,86,2,11916,'0.99','2005-08-17 16:05:51','2006-02-15 22:12:54'),(2349,86,1,12198,'2.99','2005-08-18 02:09:20','2006-02-15 22:12:54'),(2350,86,2,12870,'3.99','2005-08-19 02:54:38','2006-02-15 22:12:54'),(2351,86,2,13338,'4.99','2005-08-19 20:09:59','2006-02-15 22:12:54'),(2352,86,1,13535,'4.99','2005-08-20 03:30:25','2006-02-15 22:12:54'),(2353,86,1,13874,'2.99','2005-08-20 15:11:48','2006-02-15 22:12:54'),(2354,86,2,14122,'1.99','2005-08-21 01:29:01','2006-02-15 22:12:54'),(2355,86,2,15099,'4.99','2005-08-22 11:49:16','2006-02-15 22:12:54'),(2356,86,1,15715,'1.99','2005-08-23 10:57:40','2006-02-15 22:12:54'),(2357,86,2,15940,'5.99','2005-08-23 18:45:06','2006-02-15 22:12:54'),(2358,87,2,451,'4.99','2005-05-27 19:27:54','2006-02-15 22:12:54'),(2359,87,1,674,'2.99','2005-05-28 22:11:35','2006-02-15 22:12:54'),(2360,87,2,1580,'4.99','2005-06-16 04:12:25','2006-02-15 22:12:54'),(2361,87,1,1904,'2.99','2005-06-17 04:45:41','2006-02-15 22:12:54'),(2362,87,2,2408,'2.99','2005-06-18 16:50:44','2006-02-15 22:12:54'),(2363,87,1,2516,'4.99','2005-06-19 00:03:28','2006-02-15 22:12:54'),(2364,87,2,3122,'9.99','2005-06-20 18:25:57','2006-02-15 22:12:54'),(2365,87,1,5084,'7.99','2005-07-09 05:33:27','2006-02-15 22:12:54'),(2366,87,1,5628,'3.99','2005-07-10 05:56:40','2006-02-15 22:12:54'),(2367,87,2,5700,'4.99','2005-07-10 09:49:42','2006-02-15 22:12:54'),(2368,87,1,6638,'4.99','2005-07-12 09:58:02','2006-02-15 22:12:54'),(2369,87,2,7599,'2.99','2005-07-27 23:38:46','2006-02-15 22:12:54'),(2370,87,2,8187,'7.99','2005-07-28 22:33:53','2006-02-15 22:12:54'),(2371,87,1,8286,'5.99','2005-07-29 02:02:46','2006-02-15 22:12:54'),(2372,87,2,8323,'4.99','2005-07-29 03:52:59','2006-02-15 22:12:54'),(2373,87,2,9060,'0.99','2005-07-30 07:20:36','2006-02-15 22:12:54'),(2374,87,1,9348,'2.99','2005-07-30 18:17:09','2006-02-15 22:12:54'),(2375,87,2,9364,'8.99','2005-07-30 18:44:44','2006-02-15 22:12:54'),(2376,87,2,10205,'4.99','2005-08-01 00:48:24','2006-02-15 22:12:54'),(2377,87,1,10387,'4.99','2005-08-01 06:42:31','2006-02-15 22:12:54'),(2378,87,1,12232,'0.99','2005-08-18 03:14:14','2006-02-15 22:12:54'),(2379,87,1,12257,'8.99','2005-08-18 04:11:03','2006-02-15 22:12:54'),(2380,87,1,12264,'5.99','2005-08-18 04:17:33','2006-02-15 22:12:54'),(2381,87,1,13479,'0.99','2005-08-20 01:09:11','2006-02-15 22:12:54'),(2382,87,1,13906,'0.99','2005-08-20 16:16:03','2006-02-15 22:12:54'),(2383,87,2,14024,'10.99','2005-08-20 21:13:58','2006-02-15 22:12:54'),(2384,87,1,14566,'2.99','2005-08-21 16:25:05','2006-02-15 22:12:54'),(2385,87,1,15876,'2.99','2005-08-23 16:32:10','2006-02-15 22:12:54'),(2386,87,2,15890,'4.99','2005-08-23 16:58:12','2006-02-15 22:12:54'),(2387,87,2,12719,'4.99','2006-02-14 15:16:03','2006-02-15 22:12:54'),(2388,88,2,36,'2.99','2005-05-25 04:36:26','2006-02-15 22:12:54'),(2389,88,1,1433,'2.99','2005-06-15 18:30:00','2006-02-15 22:12:54'),(2390,88,1,2483,'7.99','2005-06-18 21:22:23','2006-02-15 22:12:54'),(2391,88,1,2878,'2.99','2005-06-20 01:09:14','2006-02-15 22:12:55'),(2392,88,2,3524,'0.99','2005-07-06 01:01:51','2006-02-15 22:12:55'),(2393,88,2,3620,'0.99','2005-07-06 06:01:50','2006-02-15 22:12:55'),(2394,88,2,3673,'5.99','2005-07-06 09:02:09','2006-02-15 22:12:55'),(2395,88,1,3846,'5.99','2005-07-06 16:43:10','2006-02-15 22:12:55'),(2396,88,1,6643,'1.99','2005-07-12 10:39:22','2006-02-15 22:12:55'),(2397,88,1,6916,'4.99','2005-07-12 22:29:18','2006-02-15 22:12:55'),(2398,88,1,7088,'5.99','2005-07-27 04:42:28','2006-02-15 22:12:55'),(2399,88,1,7621,'8.99','2005-07-28 00:34:06','2006-02-15 22:12:55'),(2400,88,1,8296,'2.99','2005-07-29 02:43:25','2006-02-15 22:12:55'),(2401,88,2,8526,'2.99','2005-07-29 10:20:48','2006-02-15 22:12:55'),(2402,88,1,8692,'2.99','2005-07-29 16:43:39','2006-02-15 22:12:55'),(2403,88,1,10424,'0.99','2005-08-01 08:22:54','2006-02-15 22:12:55'),(2404,88,1,11056,'6.99','2005-08-02 06:36:27','2006-02-15 22:12:55'),(2405,88,2,14097,'2.99','2005-08-21 00:28:48','2006-02-15 22:12:55'),(2406,88,2,14827,'5.99','2005-08-22 01:32:32','2006-02-15 22:12:55'),(2407,88,2,15098,'3.99','2005-08-22 11:48:19','2006-02-15 22:12:55'),(2408,88,1,15898,'4.99','2005-08-23 17:13:01','2006-02-15 22:12:55'),(2409,89,2,141,'2.99','2005-05-25 23:34:53','2006-02-15 22:12:55'),(2410,89,2,588,'0.99','2005-05-28 12:08:37','2006-02-15 22:12:55'),(2411,89,1,740,'5.99','2005-05-29 08:30:36','2006-02-15 22:12:55'),(2412,89,1,1252,'8.99','2005-06-15 06:05:18','2006-02-15 22:12:55'),(2413,89,2,1407,'7.99','2005-06-15 16:45:07','2006-02-15 22:12:55'),(2414,89,1,1948,'4.99','2005-06-17 08:06:53','2006-02-15 22:12:55'),(2415,89,1,2523,'0.99','2005-06-19 00:45:56','2006-02-15 22:12:55'),(2416,89,1,2835,'7.99','2005-06-19 21:44:11','2006-02-15 22:12:55'),(2417,89,2,4152,'4.99','2005-07-07 08:50:33','2006-02-15 22:12:55'),(2418,89,1,4488,'0.99','2005-07-08 01:22:23','2006-02-15 22:12:55'),(2419,89,1,4764,'8.99','2005-07-08 15:01:25','2006-02-15 22:12:55'),(2420,89,2,5144,'7.99','2005-07-09 08:09:53','2006-02-15 22:12:55'),(2421,89,2,5436,'2.99','2005-07-09 21:31:11','2006-02-15 22:12:55'),(2422,89,1,5483,'2.99','2005-07-09 23:54:09','2006-02-15 22:12:55'),(2423,89,1,6772,'2.99','2005-07-12 15:55:35','2006-02-15 22:12:55'),(2424,89,2,7370,'7.99','2005-07-27 15:15:53','2006-02-15 22:12:55'),(2425,89,2,7729,'4.99','2005-07-28 04:57:57','2006-02-15 22:12:55'),(2426,89,2,7995,'4.99','2005-07-28 15:00:09','2006-02-15 22:12:55'),(2427,89,1,8003,'2.99','2005-07-28 15:11:27','2006-02-15 22:12:55'),(2428,89,2,8070,'2.99','2005-07-28 17:26:56','2006-02-15 22:12:55'),(2429,89,2,8972,'0.99','2005-07-30 04:06:25','2006-02-15 22:12:55'),(2430,89,1,9328,'2.99','2005-07-30 17:32:11','2006-02-15 22:12:55'),(2431,89,2,9646,'2.99','2005-07-31 05:43:28','2006-02-15 22:12:55'),(2432,89,2,9767,'0.99','2005-07-31 09:46:49','2006-02-15 22:12:55'),(2433,89,2,10164,'4.99','2005-07-31 23:17:57','2006-02-15 22:12:55'),(2434,89,2,10806,'4.99','2005-08-01 22:25:29','2006-02-15 22:12:55'),(2435,89,1,11090,'3.99','2005-08-02 07:56:40','2006-02-15 22:12:55'),(2436,89,1,12118,'3.99','2005-08-17 23:14:25','2006-02-15 22:12:55'),(2437,89,2,12431,'2.99','2005-08-18 10:34:59','2006-02-15 22:12:55'),(2438,89,1,12756,'2.99','2005-08-18 22:52:13','2006-02-15 22:12:55'),(2439,89,1,13823,'2.99','2005-08-20 13:42:10','2006-02-15 22:12:55'),(2440,89,1,15845,'2.99','2005-08-23 15:38:34','2006-02-15 22:12:55'),(2441,90,2,2033,'0.99','2005-06-17 13:24:43','2006-02-15 22:12:55'),(2442,90,2,2584,'6.99','2005-06-19 05:02:36','2006-02-15 22:12:55'),(2443,90,2,3132,'0.99','2005-06-20 19:09:46','2006-02-15 22:12:55'),(2444,90,2,3729,'3.99','2005-07-06 11:30:29','2006-02-15 22:12:55'),(2445,90,2,4371,'4.99','2005-07-07 20:06:45','2006-02-15 22:12:55'),(2446,90,2,5272,'0.99','2005-07-09 14:26:01','2006-02-15 22:12:55'),(2447,90,2,5539,'3.99','2005-07-10 02:42:58','2006-02-15 22:12:55'),(2448,90,2,7035,'5.99','2005-07-27 03:06:09','2006-02-15 22:12:55'),(2449,90,2,7058,'1.99','2005-07-27 03:50:46','2006-02-15 22:12:55'),(2450,90,1,7428,'5.99','2005-07-27 17:21:52','2006-02-15 22:12:55'),(2451,90,1,7946,'6.99','2005-07-28 13:01:22','2006-02-15 22:12:55'),(2452,90,1,8024,'2.99','2005-07-28 15:55:40','2006-02-15 22:12:55'),(2453,90,1,8408,'0.99','2005-07-29 06:40:40','2006-02-15 22:12:56'),(2454,90,2,8870,'9.99','2005-07-30 00:08:08','2006-02-15 22:12:56'),(2455,90,2,9337,'2.99','2005-07-30 18:02:25','2006-02-15 22:12:56'),(2456,90,2,10206,'7.99','2005-08-01 00:52:40','2006-02-15 22:12:56'),(2457,90,1,10722,'4.99','2005-08-01 19:07:08','2006-02-15 22:12:56'),(2458,90,1,10835,'4.99','2005-08-01 23:28:49','2006-02-15 22:12:56'),(2459,90,2,11231,'4.99','2005-08-02 13:02:11','2006-02-15 22:12:56'),(2460,90,1,11516,'0.99','2005-08-16 23:54:47','2006-02-15 22:12:56'),(2461,90,2,12019,'0.99','2005-08-17 19:48:55','2006-02-15 22:12:56'),(2462,90,1,12788,'2.99','2005-08-19 00:15:09','2006-02-15 22:12:56'),(2463,90,1,13051,'4.99','2005-08-19 09:31:33','2006-02-15 22:12:56'),(2464,90,1,14608,'1.99','2005-08-21 17:57:22','2006-02-15 22:12:56'),(2465,90,1,14807,'4.99','2005-08-22 00:57:43','2006-02-15 22:12:56'),(2466,90,2,15061,'0.99','2005-08-22 10:29:44','2006-02-15 22:12:56'),(2467,90,2,15217,'0.99','2005-08-22 16:58:31','2006-02-15 22:12:56'),(2468,90,1,15674,'7.99','2005-08-23 09:16:39','2006-02-15 22:12:56'),(2469,91,2,216,'5.99','2005-05-26 09:17:43','2006-02-15 22:12:56'),(2470,91,1,1299,'4.99','2005-06-15 09:34:50','2006-02-15 22:12:56'),(2471,91,1,2457,'3.99','2005-06-18 19:38:20','2006-02-15 22:12:56'),(2472,91,1,2908,'0.99','2005-06-20 03:16:52','2006-02-15 22:12:56'),(2473,91,2,3384,'2.99','2005-06-21 14:07:35','2006-02-15 22:12:56'),(2474,91,2,3802,'0.99','2005-07-06 15:06:09','2006-02-15 22:12:56'),(2475,91,2,4103,'2.99','2005-07-07 06:25:28','2006-02-15 22:12:56'),(2476,91,1,4245,'4.99','2005-07-07 13:48:33','2006-02-15 22:12:56'),(2477,91,1,4321,'4.99','2005-07-07 17:52:38','2006-02-15 22:12:56'),(2478,91,1,4673,'4.99','2005-07-08 10:16:00','2006-02-15 22:12:56'),(2479,91,2,5025,'4.99','2005-07-09 02:28:24','2006-02-15 22:12:56'),(2480,91,2,5187,'1.99','2005-07-09 10:19:51','2006-02-15 22:12:56'),(2481,91,2,5701,'0.99','2005-07-10 09:56:24','2006-02-15 22:12:56'),(2482,91,1,6078,'4.99','2005-07-11 05:06:52','2006-02-15 22:12:56'),(2483,91,1,6178,'2.99','2005-07-11 10:59:09','2006-02-15 22:12:56'),(2484,91,2,6860,'2.99','2005-07-12 19:54:17','2006-02-15 22:12:56'),(2485,91,2,7143,'0.99','2005-07-27 06:56:31','2006-02-15 22:12:56'),(2486,91,2,7637,'0.99','2005-07-28 01:12:25','2006-02-15 22:12:56'),(2487,91,1,7966,'4.99','2005-07-28 13:53:54','2006-02-15 22:12:56'),(2488,91,1,8313,'0.99','2005-07-29 03:34:21','2006-02-15 22:12:56'),(2489,91,2,8873,'0.99','2005-07-30 00:14:32','2006-02-15 22:12:56'),(2490,91,2,9228,'2.99','2005-07-30 13:36:57','2006-02-15 22:12:56'),(2491,91,2,9396,'4.99','2005-07-30 20:07:24','2006-02-15 22:12:56'),(2492,91,2,10008,'4.99','2005-07-31 17:59:36','2006-02-15 22:12:56'),(2493,91,2,11418,'0.99','2005-08-02 19:45:33','2006-02-15 22:12:56'),(2494,91,1,12847,'0.99','2005-08-19 02:04:07','2006-02-15 22:12:56'),(2495,91,2,13222,'4.99','2005-08-19 15:47:58','2006-02-15 22:12:56'),(2496,91,2,13309,'4.99','2005-08-19 19:04:00','2006-02-15 22:12:56'),(2497,91,1,14132,'0.99','2005-08-21 01:43:58','2006-02-15 22:12:56'),(2498,91,2,14888,'2.99','2005-08-22 04:09:18','2006-02-15 22:12:56'),(2499,91,1,15122,'1.99','2005-08-22 12:47:45','2006-02-15 22:12:56'),(2500,91,1,15341,'4.99','2005-08-22 20:56:31','2006-02-15 22:12:56'),(2501,91,1,15707,'1.99','2005-08-23 10:35:45','2006-02-15 22:12:56'),(2502,91,2,15886,'4.99','2005-08-23 16:50:53','2006-02-15 22:12:56'),(2503,91,1,12902,'4.99','2006-02-14 15:16:03','2006-02-15 22:12:56'),(2504,92,1,271,'5.99','2005-05-26 16:22:01','2006-02-15 22:12:56'),(2505,92,1,456,'4.99','2005-05-27 19:50:06','2006-02-15 22:12:56'),(2506,92,2,2084,'4.99','2005-06-17 17:17:19','2006-02-15 22:12:56'),(2507,92,1,2521,'0.99','2005-06-19 00:41:08','2006-02-15 22:12:56'),(2508,92,1,2740,'8.99','2005-06-19 15:59:04','2006-02-15 22:12:56'),(2509,92,2,3595,'8.99','2005-07-06 04:59:49','2006-02-15 22:12:56'),(2510,92,2,3716,'7.99','2005-07-06 10:52:32','2006-02-15 22:12:56'),(2511,92,1,4360,'2.99','2005-07-07 19:31:12','2006-02-15 22:12:56'),(2512,92,2,4828,'4.99','2005-07-08 17:52:29','2006-02-15 22:12:56'),(2513,92,2,5497,'5.99','2005-07-10 00:23:23','2006-02-15 22:12:56'),(2514,92,2,5620,'7.99','2005-07-10 05:30:52','2006-02-15 22:12:56'),(2515,92,1,5792,'6.99','2005-07-10 14:22:19','2006-02-15 22:12:57'),(2516,92,2,5919,'2.99','2005-07-10 21:32:14','2006-02-15 22:12:57'),(2517,92,1,6158,'0.99','2005-07-11 09:50:24','2006-02-15 22:12:57'),(2518,92,2,6277,'6.99','2005-07-11 16:19:01','2006-02-15 22:12:57'),(2519,92,1,7073,'4.99','2005-07-27 04:03:26','2006-02-15 22:12:57'),(2520,92,1,7832,'1.99','2005-07-28 08:46:11','2006-02-15 22:12:57'),(2521,92,1,8494,'4.99','2005-07-29 09:04:32','2006-02-15 22:12:57'),(2522,92,1,8938,'4.99','2005-07-30 02:56:08','2006-02-15 22:12:57'),(2523,92,1,9240,'4.99','2005-07-30 13:57:54','2006-02-15 22:12:57'),(2524,92,2,11203,'4.99','2005-08-02 11:52:41','2006-02-15 22:12:57'),(2525,92,2,11245,'2.99','2005-08-02 13:33:50','2006-02-15 22:12:57'),(2526,92,1,11849,'4.99','2005-08-17 13:24:55','2006-02-15 22:12:57'),(2527,92,2,13020,'5.99','2005-08-19 08:07:50','2006-02-15 22:12:57'),(2528,92,1,13495,'0.99','2005-08-20 01:40:25','2006-02-15 22:12:57'),(2529,92,1,13620,'2.99','2005-08-20 06:41:27','2006-02-15 22:12:57'),(2530,92,1,14798,'0.99','2005-08-22 00:44:08','2006-02-15 22:12:57'),(2531,92,2,14998,'4.99','2005-08-22 07:53:14','2006-02-15 22:12:57'),(2532,93,2,113,'2.99','2005-05-25 19:07:40','2006-02-15 22:12:57'),(2533,93,2,420,'6.99','2005-05-27 15:19:38','2006-02-15 22:12:57'),(2534,93,1,1025,'4.99','2005-05-31 03:41:37','2006-02-15 22:12:57'),(2535,93,2,2256,'4.99','2005-06-18 05:21:56','2006-02-15 22:12:57'),(2536,93,1,3109,'0.99','2005-06-20 17:33:55','2006-02-15 22:12:57'),(2537,93,1,4733,'2.99','2005-07-08 13:12:07','2006-02-15 22:12:57'),(2538,93,2,5130,'4.99','2005-07-09 07:29:45','2006-02-15 22:12:57'),(2539,93,2,6287,'4.99','2005-07-11 17:00:04','2006-02-15 22:12:57'),(2540,93,1,6586,'4.99','2005-07-12 06:56:24','2006-02-15 22:12:57'),(2541,93,1,7301,'2.99','2005-07-27 12:50:23','2006-02-15 22:12:57'),(2542,93,1,8233,'0.99','2005-07-29 00:16:23','2006-02-15 22:12:57'),(2543,93,2,11271,'5.99','2005-08-02 14:18:22','2006-02-15 22:12:57'),(2544,93,1,12704,'4.99','2005-08-18 20:43:00','2006-02-15 22:12:57'),(2545,93,1,13555,'2.99','2005-08-20 04:09:50','2006-02-15 22:12:57'),(2546,93,2,13904,'2.99','2005-08-20 16:11:34','2006-02-15 22:12:57'),(2547,93,1,13950,'8.99','2005-08-20 17:58:00','2006-02-15 22:12:57'),(2548,93,1,13993,'4.99','2005-08-20 19:32:29','2006-02-15 22:12:57'),(2549,93,1,14195,'0.99','2005-08-21 03:40:35','2006-02-15 22:12:57'),(2550,93,2,14333,'4.99','2005-08-21 08:31:03','2006-02-15 22:12:57'),(2551,93,2,15324,'5.99','2005-08-22 20:23:13','2006-02-15 22:12:57'),(2552,93,2,15631,'2.99','2005-08-23 07:30:23','2006-02-15 22:12:57'),(2553,93,1,15696,'0.99','2005-08-23 10:04:17','2006-02-15 22:12:57'),(2554,93,2,15913,'1.99','2005-08-23 17:48:30','2006-02-15 22:12:57'),(2555,94,1,127,'2.99','2005-05-25 21:10:40','2006-02-15 22:12:57'),(2556,94,2,629,'4.99','2005-05-28 17:19:15','2006-02-15 22:12:57'),(2557,94,2,1213,'2.99','2005-06-15 03:14:05','2006-02-15 22:12:57'),(2558,94,1,1367,'4.99','2005-06-15 14:25:17','2006-02-15 22:12:57'),(2559,94,2,1734,'3.99','2005-06-16 15:49:30','2006-02-15 22:12:57'),(2560,94,2,2620,'4.99','2005-06-19 08:06:29','2006-02-15 22:12:57'),(2561,94,1,2816,'2.99','2005-06-19 20:04:23','2006-02-15 22:12:57'),(2562,94,2,4044,'0.99','2005-07-07 03:22:23','2006-02-15 22:12:57'),(2563,94,1,4287,'8.99','2005-07-07 15:37:31','2006-02-15 22:12:57'),(2564,94,2,5719,'4.99','2005-07-10 11:07:40','2006-02-15 22:12:57'),(2565,94,2,5970,'4.99','2005-07-11 00:04:50','2006-02-15 22:12:57'),(2566,94,2,7809,'2.99','2005-07-28 07:59:46','2006-02-15 22:12:57'),(2567,94,2,7979,'0.99','2005-07-28 14:16:30','2006-02-15 22:12:57'),(2568,94,1,9605,'4.99','2005-07-31 03:50:07','2006-02-15 22:12:57'),(2569,94,1,12316,'2.99','2005-08-18 06:16:09','2006-02-15 22:12:57'),(2570,94,1,13786,'5.99','2005-08-20 12:13:24','2006-02-15 22:12:57'),(2571,94,2,14804,'1.99','2005-08-22 00:51:25','2006-02-15 22:12:57'),(2572,94,1,14865,'4.99','2005-08-22 03:06:38','2006-02-15 22:12:57'),(2573,94,1,14978,'0.99','2005-08-22 07:13:15','2006-02-15 22:12:57'),(2574,94,1,15693,'0.99','2005-08-23 10:00:24','2006-02-15 22:12:58'),(2575,94,1,15371,'4.99','2006-02-14 15:16:03','2006-02-15 22:12:58'),(2576,95,1,490,'4.99','2005-05-28 00:09:56','2006-02-15 22:12:58'),(2577,95,2,1174,'2.99','2005-06-15 00:12:51','2006-02-15 22:12:58'),(2578,95,2,1261,'1.99','2005-06-15 06:52:57','2006-02-15 22:12:58'),(2579,95,2,3056,'2.99','2005-06-20 13:20:58','2006-02-15 22:12:58'),(2580,95,2,3426,'0.99','2005-06-21 18:12:10','2006-02-15 22:12:58'),(2581,95,1,3633,'1.99','2005-07-06 06:43:26','2006-02-15 22:12:58'),(2582,95,2,4000,'4.99','2005-07-06 23:58:37','2006-02-15 22:12:58'),(2583,95,1,4835,'5.99','2005-07-08 18:08:13','2006-02-15 22:12:58'),(2584,95,2,7245,'5.99','2005-07-27 10:29:06','2006-02-15 22:12:58'),(2585,95,1,7471,'4.99','2005-07-27 19:02:19','2006-02-15 22:12:58'),(2586,95,1,9222,'6.99','2005-07-30 13:21:08','2006-02-15 22:12:58'),(2587,95,1,9695,'6.99','2005-07-31 07:13:30','2006-02-15 22:12:58'),(2588,95,1,9951,'4.99','2005-07-31 15:51:16','2006-02-15 22:12:58'),(2589,95,1,10130,'0.99','2005-07-31 21:44:30','2006-02-15 22:12:58'),(2590,95,2,10446,'0.99','2005-08-01 09:02:17','2006-02-15 22:12:58'),(2591,95,2,12351,'5.99','2005-08-18 07:32:12','2006-02-15 22:12:58'),(2592,95,2,13516,'7.99','2005-08-20 02:32:45','2006-02-15 22:12:58'),(2593,95,2,14203,'4.99','2005-08-21 03:51:52','2006-02-15 22:12:58'),(2594,96,1,1266,'3.99','2005-06-15 07:11:39','2006-02-15 22:12:58'),(2595,96,2,1413,'7.99','2005-06-15 17:25:07','2006-02-15 22:12:58'),(2596,96,2,1437,'0.99','2005-06-15 18:37:04','2006-02-15 22:12:58'),(2597,96,1,2372,'0.99','2005-06-18 14:37:37','2006-02-15 22:12:58'),(2598,96,2,2973,'5.99','2005-06-20 07:59:27','2006-02-15 22:12:58'),(2599,96,1,3308,'0.99','2005-06-21 07:58:36','2006-02-15 22:12:58'),(2600,96,2,3463,'0.99','2005-06-21 22:00:00','2006-02-15 22:12:58'),(2601,96,1,3720,'2.99','2005-07-06 11:06:57','2006-02-15 22:12:58'),(2602,96,2,3742,'2.99','2005-07-06 12:01:38','2006-02-15 22:12:58'),(2603,96,1,4961,'4.99','2005-07-08 23:35:53','2006-02-15 22:12:58'),(2604,96,1,5558,'0.99','2005-07-10 03:12:08','2006-02-15 22:12:58'),(2605,96,1,5678,'4.99','2005-07-10 08:42:42','2006-02-15 22:12:58'),(2606,96,1,5696,'2.99','2005-07-10 09:44:32','2006-02-15 22:12:58'),(2607,96,2,8125,'4.99','2005-07-28 19:31:48','2006-02-15 22:12:58'),(2608,96,1,8437,'6.99','2005-07-29 07:23:43','2006-02-15 22:12:58'),(2609,96,2,9093,'3.99','2005-07-30 08:33:24','2006-02-15 22:12:58'),(2610,96,1,9315,'4.99','2005-07-30 17:05:29','2006-02-15 22:12:58'),(2611,96,1,9662,'3.99','2005-07-31 06:09:53','2006-02-15 22:12:58'),(2612,96,2,10031,'4.99','2005-07-31 18:40:15','2006-02-15 22:12:58'),(2613,96,2,11864,'4.99','2005-08-17 14:02:01','2006-02-15 22:12:58'),(2614,96,1,11984,'3.99','2005-08-17 18:16:30','2006-02-15 22:12:58'),(2615,96,1,12199,'4.99','2005-08-18 02:09:23','2006-02-15 22:12:58'),(2616,96,2,12525,'4.99','2005-08-18 13:48:31','2006-02-15 22:12:58'),(2617,96,1,13514,'0.99','2005-08-20 02:28:09','2006-02-15 22:12:58'),(2618,96,1,13855,'4.99','2005-08-20 14:48:55','2006-02-15 22:12:58'),(2619,96,1,14462,'3.99','2005-08-21 12:50:57','2006-02-15 22:12:58'),(2620,96,2,15989,'4.99','2005-08-23 20:24:36','2006-02-15 22:12:58'),(2621,97,2,2083,'2.99','2005-06-17 17:14:00','2006-02-15 22:12:58'),(2622,97,2,2790,'4.99','2005-06-19 18:49:45','2006-02-15 22:12:58'),(2623,97,1,3459,'0.99','2005-06-21 21:45:47','2006-02-15 22:12:59'),(2624,97,1,3540,'2.99','2005-07-06 01:47:20','2006-02-15 22:12:59'),(2625,97,2,3565,'0.99','2005-07-06 03:02:58','2006-02-15 22:12:59'),(2626,97,2,3818,'4.99','2005-07-06 15:33:31','2006-02-15 22:12:59'),(2627,97,2,4312,'4.99','2005-07-07 17:34:59','2006-02-15 22:12:59'),(2628,97,1,4508,'4.99','2005-07-08 02:28:41','2006-02-15 22:12:59'),(2629,97,2,5454,'4.99','2005-07-09 22:24:25','2006-02-15 22:12:59'),(2630,97,1,6544,'0.99','2005-07-12 04:56:15','2006-02-15 22:12:59'),(2631,97,1,6726,'0.99','2005-07-12 13:48:14','2006-02-15 22:12:59'),(2632,97,2,7182,'5.99','2005-07-27 08:15:38','2006-02-15 22:12:59'),(2633,97,2,7924,'0.99','2005-07-28 12:08:53','2006-02-15 22:12:59'),(2634,97,2,8438,'2.99','2005-07-29 07:25:42','2006-02-15 22:12:59'),(2635,97,1,9591,'4.99','2005-07-31 03:19:28','2006-02-15 22:12:59'),(2636,97,1,10820,'2.99','2005-08-01 22:53:40','2006-02-15 22:12:59'),(2637,97,2,14323,'4.99','2005-08-21 08:08:43','2006-02-15 22:12:59'),(2638,97,1,15006,'0.99','2005-08-22 08:20:15','2006-02-15 22:12:59'),(2639,98,2,214,'3.99','2005-05-26 08:48:49','2006-02-15 22:12:59'),(2640,98,1,1362,'3.99','2005-06-15 13:53:32','2006-02-15 22:12:59'),(2641,98,2,1590,'5.99','2005-06-16 05:11:41','2006-02-15 22:12:59'),(2642,98,1,2213,'4.99','2005-06-18 02:36:47','2006-02-15 22:12:59'),(2643,98,1,2445,'0.99','2005-06-18 19:02:11','2006-02-15 22:12:59'),(2644,98,2,2601,'4.99','2005-06-19 06:09:44','2006-02-15 22:12:59'),(2645,98,2,3399,'4.99','2005-06-21 15:47:48','2006-02-15 22:12:59'),(2646,98,2,3682,'7.99','2005-07-06 09:22:48','2006-02-15 22:12:59'),(2647,98,1,4549,'4.99','2005-07-08 04:25:03','2006-02-15 22:12:59'),(2648,98,2,6951,'2.99','2005-07-26 23:47:31','2006-02-15 22:12:59'),(2649,98,2,7120,'3.99','2005-07-27 05:56:39','2006-02-15 22:12:59'),(2650,98,1,7530,'0.99','2005-07-27 21:18:58','2006-02-15 22:12:59'),(2651,98,1,8324,'5.99','2005-07-29 03:56:05','2006-02-15 22:12:59'),(2652,98,2,8622,'4.99','2005-07-29 13:53:28','2006-02-15 22:12:59'),(2653,98,2,8818,'5.99','2005-07-29 22:14:04','2006-02-15 22:12:59'),(2654,98,1,9753,'2.99','2005-07-31 09:22:38','2006-02-15 22:12:59'),(2655,98,2,10694,'3.99','2005-08-01 18:15:07','2006-02-15 22:12:59'),(2656,98,1,10925,'2.99','2005-08-02 02:24:38','2006-02-15 22:12:59'),(2657,98,2,11007,'0.99','2005-08-02 05:05:53','2006-02-15 22:12:59'),(2658,98,2,11200,'2.99','2005-08-02 11:48:36','2006-02-15 22:12:59'),(2659,98,1,11635,'5.99','2005-08-17 04:33:17','2006-02-15 22:12:59'),(2660,98,1,11730,'2.99','2005-08-17 08:22:00','2006-02-15 22:12:59'),(2661,98,2,12221,'5.99','2005-08-18 02:50:51','2006-02-15 22:12:59'),(2662,98,2,14459,'1.99','2005-08-21 12:48:08','2006-02-15 22:12:59'),(2663,98,1,15536,'7.99','2005-08-23 03:58:28','2006-02-15 22:12:59'),(2664,99,2,867,'0.99','2005-05-30 03:54:43','2006-02-15 22:12:59'),(2665,99,1,1858,'4.99','2005-06-17 01:13:11','2006-02-15 22:12:59'),(2666,99,1,2368,'2.99','2005-06-18 14:10:27','2006-02-15 22:12:59'),(2667,99,2,3780,'6.99','2005-07-06 13:52:02','2006-02-15 22:12:59'),(2668,99,2,4170,'2.99','2005-07-07 09:44:36','2006-02-15 22:12:59'),(2669,99,2,4344,'4.99','2005-07-07 18:50:47','2006-02-15 22:12:59'),(2670,99,1,4589,'0.99','2005-07-08 06:26:04','2006-02-15 22:12:59'),(2671,99,2,4800,'4.99','2005-07-08 16:51:08','2006-02-15 22:12:59'),(2672,99,2,4954,'2.99','2005-07-08 23:14:16','2006-02-15 22:12:59'),(2673,99,2,5035,'2.99','2005-07-09 02:51:34','2006-02-15 22:12:59'),(2674,99,1,5748,'2.99','2005-07-10 12:19:59','2006-02-15 22:12:59'),(2675,99,1,6289,'2.99','2005-07-11 17:06:39','2006-02-15 22:12:59'),(2676,99,1,6370,'3.99','2005-07-11 21:28:32','2006-02-15 22:12:59'),(2677,99,2,6662,'4.99','2005-07-12 11:21:06','2006-02-15 22:12:59'),(2678,99,1,7039,'4.99','2005-07-27 03:11:48','2006-02-15 22:12:59'),(2679,99,1,8072,'0.99','2005-07-28 17:27:59','2006-02-15 22:12:59'),(2680,99,2,8242,'7.99','2005-07-29 00:34:27','2006-02-15 22:12:59'),(2681,99,2,8514,'0.99','2005-07-29 09:53:33','2006-02-15 22:12:59'),(2682,99,2,10388,'7.99','2005-08-01 06:42:44','2006-02-15 22:12:59'),(2683,99,1,10455,'1.99','2005-08-01 09:15:00','2006-02-15 22:13:00'),(2684,99,2,11266,'4.99','2005-08-02 14:07:35','2006-02-15 22:13:00'),(2685,99,2,12379,'0.99','2005-08-18 08:26:48','2006-02-15 22:13:00'),(2686,99,2,12869,'8.99','2005-08-19 02:50:36','2006-02-15 22:13:00'),(2687,99,1,11593,'0.99','2006-02-14 15:16:03','2006-02-15 22:13:00'),(2688,100,1,71,'0.99','2005-05-25 10:26:39','2006-02-15 22:13:00'),(2689,100,2,1216,'4.99','2005-06-15 03:23:48','2006-02-15 22:13:00'),(2690,100,1,1340,'3.99','2005-06-15 12:24:15','2006-02-15 22:13:00'),(2691,100,1,1427,'2.99','2005-06-15 18:17:28','2006-02-15 22:13:00'),(2692,100,2,3468,'6.99','2005-06-21 22:43:45','2006-02-15 22:13:00'),(2693,100,2,3602,'5.99','2005-07-06 05:23:10','2006-02-15 22:13:00'),(2694,100,1,3800,'8.99','2005-07-06 15:01:27','2006-02-15 22:13:00'),(2695,100,1,4209,'2.99','2005-07-07 11:35:08','2006-02-15 22:13:00'),(2696,100,1,4970,'8.99','2005-07-08 23:54:29','2006-02-15 22:13:00'),(2697,100,2,4980,'6.99','2005-07-09 00:26:59','2006-02-15 22:13:00'),(2698,100,2,5238,'4.99','2005-07-09 13:11:14','2006-02-15 22:13:00'),(2699,100,2,5355,'6.99','2005-07-09 18:07:17','2006-02-15 22:13:00'),(2700,100,1,6655,'4.99','2005-07-12 11:08:32','2006-02-15 22:13:00'),(2701,100,2,7819,'4.99','2005-07-28 08:27:14','2006-02-15 22:13:00'),(2702,100,1,7921,'1.99','2005-07-28 12:02:46','2006-02-15 22:13:00'),(2703,100,2,8203,'0.99','2005-07-28 23:14:56','2006-02-15 22:13:00'),(2704,100,2,9048,'5.99','2005-07-30 06:57:07','2006-02-15 22:13:00'),(2705,100,1,9271,'4.99','2005-07-30 15:04:31','2006-02-15 22:13:00'),(2706,100,1,11143,'0.99','2005-08-02 09:32:54','2006-02-15 22:13:00'),(2707,100,2,11346,'4.99','2005-08-02 17:15:38','2006-02-15 22:13:00'),(2708,100,1,12657,'0.99','2005-08-18 19:02:16','2006-02-15 22:13:00'),(2709,100,1,15163,'0.99','2005-08-22 14:43:13','2006-02-15 22:13:00'),(2710,100,2,15246,'3.99','2005-08-22 17:50:49','2006-02-15 22:13:00'),(2711,100,2,15021,'0.99','2006-02-14 15:16:03','2006-02-15 22:13:00'),(2712,101,1,468,'9.99','2005-05-27 21:13:10','2006-02-15 22:13:00'),(2713,101,1,4975,'2.99','2005-07-09 00:02:46','2006-02-15 22:13:00'),(2714,101,2,5100,'2.99','2005-07-09 06:16:03','2006-02-15 22:13:00'),(2715,101,1,5132,'5.99','2005-07-09 07:40:32','2006-02-15 22:13:00'),(2716,101,2,5198,'2.99','2005-07-09 10:49:10','2006-02-15 22:13:00'),(2717,101,1,5757,'2.99','2005-07-10 12:40:17','2006-02-15 22:13:00'),(2718,101,2,6433,'5.99','2005-07-12 00:12:02','2006-02-15 22:13:00'),(2719,101,2,7112,'5.99','2005-07-27 05:38:42','2006-02-15 22:13:00'),(2720,101,2,7866,'8.99','2005-07-28 10:08:01','2006-02-15 22:13:00'),(2721,101,1,8301,'0.99','2005-07-29 03:00:08','2006-02-15 22:13:00'),(2722,101,2,8825,'1.99','2005-07-29 22:24:16','2006-02-15 22:13:00'),(2723,101,2,8833,'4.99','2005-07-29 22:39:36','2006-02-15 22:13:00'),(2724,101,2,9965,'6.99','2005-07-31 16:19:32','2006-02-15 22:13:00'),(2725,101,2,10218,'0.99','2005-08-01 01:09:44','2006-02-15 22:13:00'),(2726,101,1,10253,'6.99','2005-08-01 02:39:49','2006-02-15 22:13:00'),(2727,101,1,10407,'0.99','2005-08-01 07:38:07','2006-02-15 22:13:00'),(2728,101,2,11959,'4.99','2005-08-17 17:23:35','2006-02-15 22:13:00'),(2729,101,2,12174,'2.99','2005-08-18 01:08:53','2006-02-15 22:13:00'),(2730,101,1,12471,'4.99','2005-08-18 11:57:00','2006-02-15 22:13:00'),(2731,101,2,13370,'1.99','2005-08-19 21:20:11','2006-02-15 22:13:00'),(2732,101,1,14476,'0.99','2005-08-21 13:31:07','2006-02-15 22:13:00'),(2733,101,2,14542,'3.99','2005-08-21 15:36:34','2006-02-15 22:13:00'),(2734,101,2,15103,'2.99','2005-08-22 12:01:06','2006-02-15 22:13:00'),(2735,101,2,12141,'0.99','2006-02-14 15:16:03','2006-02-15 22:13:00'),(2736,102,1,247,'4.99','2005-05-26 14:01:05','2006-02-15 22:13:00'),(2737,102,1,358,'0.99','2005-05-27 06:43:59','2006-02-15 22:13:00'),(2738,102,2,562,'1.99','2005-05-28 09:01:21','2006-02-15 22:13:00'),(2739,102,2,1215,'2.99','2005-06-15 03:21:00','2006-02-15 22:13:00'),(2740,102,2,2419,'8.99','2005-06-18 17:21:24','2006-02-15 22:13:00'),(2741,102,2,3520,'1.99','2005-07-06 00:58:27','2006-02-15 22:13:00'),(2742,102,2,3630,'1.99','2005-07-06 06:27:15','2006-02-15 22:13:01'),(2743,102,2,3665,'4.99','2005-07-06 08:23:08','2006-02-15 22:13:01'),(2744,102,1,4089,'6.99','2005-07-07 05:45:59','2006-02-15 22:13:01'),(2745,102,2,4777,'3.99','2005-07-08 15:48:34','2006-02-15 22:13:01'),(2746,102,1,4997,'6.99','2005-07-09 01:06:03','2006-02-15 22:13:01'),(2747,102,1,5009,'5.99','2005-07-09 01:32:17','2006-02-15 22:13:01'),(2748,102,1,5109,'4.99','2005-07-09 06:48:49','2006-02-15 22:13:01'),(2749,102,2,5509,'5.99','2005-07-10 00:54:46','2006-02-15 22:13:01'),(2750,102,1,5716,'2.99','2005-07-10 10:59:23','2006-02-15 22:13:01'),(2751,102,2,6434,'5.99','2005-07-12 00:14:25','2006-02-15 22:13:01'),(2752,102,2,7119,'0.99','2005-07-27 05:55:32','2006-02-15 22:13:01'),(2753,102,2,7247,'0.99','2005-07-27 10:32:58','2006-02-15 22:13:01'),(2754,102,2,7439,'6.99','2005-07-27 17:42:31','2006-02-15 22:13:01'),(2755,102,1,8186,'0.99','2005-07-28 22:30:27','2006-02-15 22:13:01'),(2756,102,1,8664,'5.99','2005-07-29 15:36:27','2006-02-15 22:13:01'),(2757,102,2,9151,'3.99','2005-07-30 10:50:53','2006-02-15 22:13:01'),(2758,102,1,9192,'2.99','2005-07-30 12:26:26','2006-02-15 22:13:01'),(2759,102,2,9295,'0.99','2005-07-30 16:18:39','2006-02-15 22:13:01'),(2760,102,2,9617,'2.99','2005-07-31 04:15:38','2006-02-15 22:13:01'),(2761,102,1,9780,'4.99','2005-07-31 10:10:22','2006-02-15 22:13:01'),(2762,102,2,10841,'1.99','2005-08-01 23:39:21','2006-02-15 22:13:01'),(2763,102,2,11099,'4.99','2005-08-02 08:07:12','2006-02-15 22:13:01'),(2764,102,1,11183,'4.99','2005-08-02 11:00:32','2006-02-15 22:13:01'),(2765,102,2,12495,'4.99','2005-08-18 12:56:37','2006-02-15 22:13:01'),(2766,102,1,13420,'9.99','2005-08-19 22:57:25','2006-02-15 22:13:01'),(2767,102,1,15049,'1.99','2005-08-22 10:06:28','2006-02-15 22:13:01'),(2768,102,2,16031,'3.99','2005-08-23 21:59:26','2006-02-15 22:13:01'),(2769,103,1,240,'7.99','2005-05-26 12:40:23','2006-02-15 22:13:01'),(2770,103,1,658,'9.99','2005-05-28 20:23:23','2006-02-15 22:13:01'),(2771,103,2,1396,'4.99','2005-06-15 16:22:38','2006-02-15 22:13:01'),(2772,103,1,2118,'0.99','2005-06-17 20:28:29','2006-02-15 22:13:01'),(2773,103,1,2197,'0.99','2005-06-18 01:50:27','2006-02-15 22:13:01'),(2774,103,1,2724,'0.99','2005-06-19 14:57:54','2006-02-15 22:13:01'),(2775,103,2,3750,'6.99','2005-07-06 12:19:28','2006-02-15 22:13:01'),(2776,103,1,3850,'4.99','2005-07-06 16:51:21','2006-02-15 22:13:01'),(2777,103,2,4040,'6.99','2005-07-07 03:02:40','2006-02-15 22:13:01'),(2778,103,1,4213,'2.99','2005-07-07 11:53:49','2006-02-15 22:13:01'),(2779,103,1,4357,'1.99','2005-07-07 19:24:39','2006-02-15 22:13:01'),(2780,103,2,4872,'4.99','2005-07-08 19:23:16','2006-02-15 22:13:01'),(2781,103,2,5163,'4.99','2005-07-09 09:00:28','2006-02-15 22:13:01'),(2782,103,1,6525,'5.99','2005-07-12 04:17:15','2006-02-15 22:13:01'),(2783,103,2,6697,'6.99','2005-07-12 12:44:57','2006-02-15 22:13:01'),(2784,103,2,6949,'2.99','2005-07-26 23:44:12','2006-02-15 22:13:01'),(2785,103,1,7310,'0.99','2005-07-27 13:00:55','2006-02-15 22:13:01'),(2786,103,2,7472,'6.99','2005-07-27 19:04:19','2006-02-15 22:13:01'),(2787,103,1,8302,'0.99','2005-07-29 03:01:24','2006-02-15 22:13:01'),(2788,103,1,8520,'4.99','2005-07-29 10:10:02','2006-02-15 22:13:01'),(2789,103,2,9390,'4.99','2005-07-30 19:42:07','2006-02-15 22:13:01'),(2790,103,2,12942,'7.99','2005-08-19 05:40:36','2006-02-15 22:13:01'),(2791,103,1,13676,'0.99','2005-08-20 08:33:21','2006-02-15 22:13:01'),(2792,103,2,14064,'2.99','2005-08-20 22:39:16','2006-02-15 22:13:01'),(2793,103,2,14289,'4.99','2005-08-21 06:58:49','2006-02-15 22:13:01'),(2794,103,2,15401,'8.99','2005-08-22 23:13:10','2006-02-15 22:13:01'),(2795,103,1,15461,'5.99','2005-08-23 01:13:52','2006-02-15 22:13:01'),(2796,103,1,15467,'3.99','2005-08-23 01:22:12','2006-02-15 22:13:01'),(2797,103,1,15599,'5.99','2005-08-23 06:25:07','2006-02-15 22:13:01'),(2798,103,2,15679,'0.99','2005-08-23 09:27:29','2006-02-15 22:13:02'),(2799,103,2,16048,'8.99','2005-08-23 22:43:07','2006-02-15 22:13:02'),(2800,104,1,163,'10.99','2005-05-26 02:26:23','2006-02-15 22:13:02'),(2801,104,2,808,'3.99','2005-05-29 19:08:20','2006-02-15 22:13:02'),(2802,104,2,1287,'3.99','2005-06-15 08:41:38','2006-02-15 22:13:02'),(2803,104,1,2107,'0.99','2005-06-17 19:31:16','2006-02-15 22:13:02'),(2804,104,2,2928,'0.99','2005-06-20 04:43:45','2006-02-15 22:13:02'),(2805,104,2,3273,'2.99','2005-06-21 05:24:17','2006-02-15 22:13:02'),(2806,104,2,4012,'4.99','2005-07-07 00:56:09','2006-02-15 22:13:02'),(2807,104,2,4438,'6.99','2005-07-07 22:56:17','2006-02-15 22:13:02'),(2808,104,2,4520,'4.99','2005-07-08 02:53:46','2006-02-15 22:13:02'),(2809,104,1,4529,'7.99','2005-07-08 03:26:20','2006-02-15 22:13:02'),(2810,104,1,4917,'2.99','2005-07-08 21:32:30','2006-02-15 22:13:02'),(2811,104,1,5376,'1.99','2005-07-09 18:54:08','2006-02-15 22:13:02'),(2812,104,2,7107,'2.99','2005-07-27 05:22:04','2006-02-15 22:13:02'),(2813,104,1,8413,'1.99','2005-07-29 06:47:39','2006-02-15 22:13:02'),(2814,104,1,9090,'3.99','2005-07-30 08:24:42','2006-02-15 22:13:02'),(2815,104,2,9996,'5.99','2005-07-31 17:32:03','2006-02-15 22:13:02'),(2816,104,1,11700,'2.99','2005-08-17 07:12:31','2006-02-15 22:13:02'),(2817,104,1,12453,'3.99','2005-08-18 11:17:07','2006-02-15 22:13:02'),(2818,104,1,13005,'0.99','2005-08-19 07:45:42','2006-02-15 22:13:02'),(2819,104,1,13017,'1.99','2005-08-19 08:02:24','2006-02-15 22:13:02'),(2820,104,1,13179,'4.99','2005-08-19 13:59:53','2006-02-15 22:13:02'),(2821,104,1,13410,'3.99','2005-08-19 22:41:44','2006-02-15 22:13:02'),(2822,104,1,14218,'3.99','2005-08-21 04:43:59','2006-02-15 22:13:02'),(2823,104,2,15186,'0.99','2005-08-22 15:52:57','2006-02-15 22:13:02'),(2824,105,1,327,'8.99','2005-05-27 01:18:57','2006-02-15 22:13:02'),(2825,105,2,473,'7.99','2005-05-27 21:36:34','2006-02-15 22:13:02'),(2826,105,1,485,'2.99','2005-05-27 23:40:52','2006-02-15 22:13:02'),(2827,105,1,779,'6.99','2005-05-29 14:17:17','2006-02-15 22:13:02'),(2828,105,2,1789,'3.99','2005-06-16 19:49:18','2006-02-15 22:13:02'),(2829,105,2,1991,'3.99','2005-06-17 10:49:23','2006-02-15 22:13:02'),(2830,105,2,2635,'3.99','2005-06-19 09:08:45','2006-02-15 22:13:02'),(2831,105,2,5261,'4.99','2005-07-09 14:06:56','2006-02-15 22:13:02'),(2832,105,1,5429,'4.99','2005-07-09 21:14:03','2006-02-15 22:13:02'),(2833,105,2,5542,'2.99','2005-07-10 02:45:53','2006-02-15 22:13:02'),(2834,105,2,5677,'4.99','2005-07-10 08:41:28','2006-02-15 22:13:02'),(2835,105,2,6546,'4.99','2005-07-12 04:57:17','2006-02-15 22:13:02'),(2836,105,1,7442,'2.99','2005-07-27 17:47:00','2006-02-15 22:13:02'),(2837,105,2,8980,'2.99','2005-07-30 04:22:15','2006-02-15 22:13:02'),(2838,105,2,9124,'3.99','2005-07-30 09:43:12','2006-02-15 22:13:02'),(2839,105,2,9198,'5.99','2005-07-30 12:37:08','2006-02-15 22:13:02'),(2840,105,2,9210,'9.99','2005-07-30 12:56:44','2006-02-15 22:13:02'),(2841,105,1,10513,'4.99','2005-08-01 11:37:34','2006-02-15 22:13:02'),(2842,105,1,12217,'0.99','2005-08-18 02:44:44','2006-02-15 22:13:02'),(2843,105,2,12899,'2.99','2005-08-19 04:03:34','2006-02-15 22:13:02'),(2844,105,1,13057,'6.99','2005-08-19 09:40:05','2006-02-15 22:13:02'),(2845,105,1,13751,'2.99','2005-08-20 11:17:03','2006-02-15 22:13:02'),(2846,105,2,14048,'0.99','2005-08-20 22:03:18','2006-02-15 22:13:02'),(2847,105,2,15624,'4.99','2005-08-23 07:24:27','2006-02-15 22:13:02'),(2848,105,2,15688,'4.99','2005-08-23 09:48:45','2006-02-15 22:13:02'),(2849,105,2,15803,'2.99','2005-08-23 14:27:07','2006-02-15 22:13:02'),(2850,106,2,552,'3.99','2005-05-28 07:53:38','2006-02-15 22:13:03'),(2851,106,2,1156,'0.99','2005-05-31 22:37:34','2006-02-15 22:13:03'),(2852,106,1,2295,'4.99','2005-06-18 07:56:18','2006-02-15 22:13:03'),(2853,106,1,3023,'4.99','2005-06-20 11:18:11','2006-02-15 22:13:03'),(2854,106,1,4229,'4.99','2005-07-07 12:43:23','2006-02-15 22:13:03'),(2855,106,2,4277,'2.99','2005-07-07 14:52:12','2006-02-15 22:13:03'),(2856,106,1,4665,'3.99','2005-07-08 10:04:24','2006-02-15 22:13:03'),(2857,106,2,5453,'3.99','2005-07-09 22:24:11','2006-02-15 22:13:03'),(2858,106,2,6992,'0.99','2005-07-27 01:04:45','2006-02-15 22:13:03'),(2859,106,1,7224,'3.99','2005-07-27 09:44:26','2006-02-15 22:13:03'),(2860,106,1,7483,'4.99','2005-07-27 19:25:00','2006-02-15 22:13:03'),(2861,106,1,8115,'4.99','2005-07-28 19:14:17','2006-02-15 22:13:03'),(2862,106,2,9072,'2.99','2005-07-30 07:45:49','2006-02-15 22:13:03'),(2863,106,2,9747,'7.99','2005-07-31 09:16:57','2006-02-15 22:13:03'),(2864,106,2,10213,'8.99','2005-08-01 01:03:18','2006-02-15 22:13:03'),(2865,106,1,10228,'2.99','2005-08-01 01:43:18','2006-02-15 22:13:03'),(2866,106,1,10444,'8.99','2005-08-01 09:01:40','2006-02-15 22:13:03'),(2867,106,2,11436,'0.99','2005-08-02 20:16:06','2006-02-15 22:13:03'),(2868,106,1,12159,'7.99','2005-08-18 00:36:09','2006-02-15 22:13:03'),(2869,106,1,12845,'2.99','2005-08-19 02:02:37','2006-02-15 22:13:03'),(2870,106,2,14431,'2.99','2005-08-21 11:31:15','2006-02-15 22:13:03'),(2871,106,1,14920,'0.99','2005-08-22 05:08:58','2006-02-15 22:13:03'),(2872,106,1,15154,'6.99','2005-08-22 14:27:37','2006-02-15 22:13:03'),(2873,107,1,170,'5.99','2005-05-26 03:11:12','2006-02-15 22:13:03'),(2874,107,1,1026,'5.99','2005-05-31 03:45:26','2006-02-15 22:13:03'),(2875,107,2,1243,'2.99','2005-06-15 05:07:32','2006-02-15 22:13:03'),(2876,107,2,2693,'6.99','2005-06-19 13:11:47','2006-02-15 22:13:03'),(2877,107,2,2860,'4.99','2005-06-19 23:20:40','2006-02-15 22:13:03'),(2878,107,2,2897,'3.99','2005-06-20 02:34:23','2006-02-15 22:13:03'),(2879,107,1,3033,'3.99','2005-06-20 12:02:05','2006-02-15 22:13:03'),(2880,107,2,3120,'0.99','2005-06-20 18:19:29','2006-02-15 22:13:03'),(2881,107,2,3174,'0.99','2005-06-20 22:24:00','2006-02-15 22:13:03'),(2882,107,2,3824,'6.99','2005-07-06 15:43:15','2006-02-15 22:13:03'),(2883,107,2,5311,'4.99','2005-07-09 16:02:54','2006-02-15 22:13:03'),(2884,107,2,5575,'2.99','2005-07-10 03:55:50','2006-02-15 22:13:03'),(2885,107,2,5798,'3.99','2005-07-10 14:45:09','2006-02-15 22:13:03'),(2886,107,2,6131,'2.99','2005-07-11 08:22:05','2006-02-15 22:13:03'),(2887,107,2,6133,'0.99','2005-07-11 08:25:22','2006-02-15 22:13:03'),(2888,107,1,6811,'5.99','2005-07-12 17:54:33','2006-02-15 22:13:03'),(2889,107,2,6934,'6.99','2005-07-26 23:11:03','2006-02-15 22:13:03'),(2890,107,2,7447,'4.99','2005-07-27 18:02:08','2006-02-15 22:13:03'),(2891,107,1,7600,'7.99','2005-07-27 23:41:18','2006-02-15 22:13:03'),(2892,107,1,8162,'4.99','2005-07-28 21:11:46','2006-02-15 22:13:03'),(2893,107,2,8704,'1.99','2005-07-29 17:13:45','2006-02-15 22:13:03'),(2894,107,1,9155,'2.99','2005-07-30 11:00:00','2006-02-15 22:13:03'),(2895,107,2,9351,'2.99','2005-07-30 18:28:30','2006-02-15 22:13:03'),(2896,107,1,10226,'4.99','2005-08-01 01:40:04','2006-02-15 22:13:03'),(2897,107,2,13361,'4.99','2005-08-19 21:07:22','2006-02-15 22:13:03'),(2898,107,1,13510,'6.99','2005-08-20 02:18:30','2006-02-15 22:13:03'),(2899,107,1,14562,'4.99','2005-08-21 16:22:59','2006-02-15 22:13:03'),(2900,107,1,15560,'3.99','2005-08-23 05:01:13','2006-02-15 22:13:03'),(2901,107,1,13079,'1.98','2006-02-14 15:16:03','2006-02-15 22:13:03'),(2902,107,1,15497,'0.00','2006-02-14 15:16:03','2006-02-15 22:13:03'),(2903,108,1,105,'4.99','2005-05-25 17:54:12','2006-02-15 22:13:03'),(2904,108,2,1055,'0.99','2005-05-31 07:47:18','2006-02-15 22:13:03'),(2905,108,2,1372,'4.99','2005-06-15 14:45:48','2006-02-15 22:13:03'),(2906,108,1,1425,'2.99','2005-06-15 18:13:46','2006-02-15 22:13:03'),(2907,108,1,2061,'8.99','2005-06-17 15:47:00','2006-02-15 22:13:03'),(2908,108,1,2210,'2.99','2005-06-18 02:27:01','2006-02-15 22:13:04'),(2909,108,2,3116,'4.99','2005-06-20 18:04:55','2006-02-15 22:13:04'),(2910,108,1,3875,'0.99','2005-07-06 18:15:39','2006-02-15 22:13:04'),(2911,108,2,4082,'2.99','2005-07-07 05:11:53','2006-02-15 22:13:04'),(2912,108,1,4303,'1.99','2005-07-07 16:57:32','2006-02-15 22:13:04'),(2913,108,1,4650,'4.99','2005-07-08 09:32:08','2006-02-15 22:13:04'),(2914,108,1,4754,'0.99','2005-07-08 14:20:01','2006-02-15 22:13:04'),(2915,108,2,5274,'6.99','2005-07-09 14:34:09','2006-02-15 22:13:04'),(2916,108,1,5661,'5.99','2005-07-10 07:53:51','2006-02-15 22:13:04'),(2917,108,2,5806,'4.99','2005-07-10 15:11:54','2006-02-15 22:13:04'),(2918,108,1,6841,'0.99','2005-07-12 19:04:24','2006-02-15 22:13:04'),(2919,108,2,8329,'5.99','2005-07-29 04:06:33','2006-02-15 22:13:04'),(2920,108,2,8587,'4.99','2005-07-29 12:18:40','2006-02-15 22:13:04'),(2921,108,1,8846,'4.99','2005-07-29 23:10:28','2006-02-15 22:13:04'),(2922,108,2,9755,'4.99','2005-07-31 09:24:55','2006-02-15 22:13:04'),(2923,108,1,11316,'5.99','2005-08-02 16:07:49','2006-02-15 22:13:04'),(2924,108,2,11445,'6.99','2005-08-02 20:33:35','2006-02-15 22:13:04'),(2925,108,2,11759,'2.99','2005-08-17 09:41:23','2006-02-15 22:13:04'),(2926,108,1,12583,'2.99','2005-08-18 15:51:36','2006-02-15 22:13:04'),(2927,108,2,12625,'6.99','2005-08-18 17:36:19','2006-02-15 22:13:04'),(2928,108,2,13754,'2.99','2005-08-20 11:18:08','2006-02-15 22:13:04'),(2929,108,2,14635,'3.99','2005-08-21 18:51:43','2006-02-15 22:13:04'),(2930,108,2,15556,'8.99','2005-08-23 04:52:16','2006-02-15 22:13:04'),(2931,108,1,16001,'2.99','2005-08-23 20:45:53','2006-02-15 22:13:04'),(2932,108,1,15294,'4.99','2006-02-14 15:16:03','2006-02-15 22:13:04'),(2933,109,1,203,'5.99','2005-05-26 07:27:57','2006-02-15 22:13:04'),(2934,109,1,386,'0.99','2005-05-27 10:26:31','2006-02-15 22:13:04'),(2935,109,2,622,'3.99','2005-05-28 15:58:22','2006-02-15 22:13:04'),(2936,109,1,698,'0.99','2005-05-29 02:10:52','2006-02-15 22:13:04'),(2937,109,1,1061,'7.99','2005-05-31 08:27:58','2006-02-15 22:13:04'),(2938,109,1,1106,'4.99','2005-05-31 14:36:52','2006-02-15 22:13:04'),(2939,109,1,1115,'2.99','2005-05-31 16:07:09','2006-02-15 22:13:04'),(2940,109,2,1581,'2.99','2005-06-16 04:28:45','2006-02-15 22:13:04'),(2941,109,2,1891,'3.99','2005-06-17 04:16:44','2006-02-15 22:13:04'),(2942,109,2,2198,'6.99','2005-06-18 01:51:22','2006-02-15 22:13:04'),(2943,109,2,2679,'5.99','2005-06-19 12:12:30','2006-02-15 22:13:04'),(2944,109,2,3076,'5.99','2005-06-20 15:01:19','2006-02-15 22:13:04'),(2945,109,1,4921,'4.99','2005-07-08 21:43:21','2006-02-15 22:13:04'),(2946,109,1,5027,'2.99','2005-07-09 02:32:37','2006-02-15 22:13:04'),(2947,109,2,5296,'2.99','2005-07-09 15:26:27','2006-02-15 22:13:04'),(2948,109,2,6920,'6.99','2005-07-12 22:32:58','2006-02-15 22:13:04'),(2949,109,2,7145,'0.99','2005-07-27 07:01:00','2006-02-15 22:13:04'),(2950,109,1,8006,'3.99','2005-07-28 15:15:41','2006-02-15 22:13:04'),(2951,109,1,9230,'0.99','2005-07-30 13:39:42','2006-02-15 22:13:04'),(2952,109,1,9871,'2.99','2005-07-31 13:25:46','2006-02-15 22:13:04'),(2953,109,2,10240,'0.99','2005-08-01 02:09:33','2006-02-15 22:13:04'),(2954,109,2,10892,'3.99','2005-08-02 01:12:06','2006-02-15 22:13:04'),(2955,109,2,12137,'6.99','2005-08-17 23:52:26','2006-02-15 22:13:04'),(2956,109,1,13264,'3.99','2005-08-19 17:27:10','2006-02-15 22:13:04'),(2957,109,2,15398,'7.99','2005-08-22 23:10:49','2006-02-15 22:13:04'),(2958,109,2,15677,'2.99','2005-08-23 09:23:36','2006-02-15 22:13:04'),(2959,110,1,515,'7.99','2005-05-28 03:10:10','2006-02-15 22:13:04'),(2960,110,2,538,'1.99','2005-05-28 06:21:05','2006-02-15 22:13:04'),(2961,110,2,1528,'8.99','2005-06-16 00:32:52','2006-02-15 22:13:04'),(2962,110,1,3587,'4.99','2005-07-06 04:27:52','2006-02-15 22:13:04'),(2963,110,1,4317,'2.99','2005-07-07 17:44:49','2006-02-15 22:13:05'),(2964,110,2,4827,'4.99','2005-07-08 17:46:30','2006-02-15 22:13:05'),(2965,110,1,6160,'4.99','2005-07-11 10:08:13','2006-02-15 22:13:05'),(2966,110,1,7474,'0.99','2005-07-27 19:07:17','2006-02-15 22:13:05'),(2967,110,2,7542,'0.99','2005-07-27 21:43:04','2006-02-15 22:13:05'),(2968,110,1,7570,'2.99','2005-07-27 22:40:06','2006-02-15 22:13:05'),(2969,110,1,11647,'7.99','2005-08-17 04:54:14','2006-02-15 22:13:05'),(2970,110,2,12585,'3.99','2005-08-18 15:52:12','2006-02-15 22:13:05'),(2971,110,1,13723,'2.99','2005-08-20 10:05:30','2006-02-15 22:13:05'),(2972,110,2,15381,'2.99','2005-08-22 22:28:36','2006-02-15 22:13:05'),(2973,111,2,505,'2.99','2005-05-28 02:06:37','2006-02-15 22:13:05'),(2974,111,1,1593,'6.99','2005-06-16 05:14:52','2006-02-15 22:13:05'),(2975,111,2,1974,'2.99','2005-06-17 09:30:05','2006-02-15 22:13:05'),(2976,111,2,1999,'1.99','2005-06-17 11:30:08','2006-02-15 22:13:05'),(2977,111,2,2297,'4.99','2005-06-18 08:17:41','2006-02-15 22:13:05'),(2978,111,2,3087,'2.99','2005-06-20 15:53:59','2006-02-15 22:13:05'),(2979,111,2,3333,'2.99','2005-06-21 10:01:36','2006-02-15 22:13:05'),(2980,111,2,3485,'1.99','2005-07-05 23:25:54','2006-02-15 22:13:05'),(2981,111,1,3551,'3.99','2005-07-06 02:33:48','2006-02-15 22:13:05'),(2982,111,2,3963,'9.99','2005-07-06 22:19:17','2006-02-15 22:13:05'),(2983,111,1,4249,'4.99','2005-07-07 14:05:17','2006-02-15 22:13:05'),(2984,111,2,4286,'0.99','2005-07-07 15:36:44','2006-02-15 22:13:05'),(2985,111,1,6896,'2.99','2005-07-12 21:25:37','2006-02-15 22:13:05'),(2986,111,2,8525,'0.99','2005-07-29 10:20:19','2006-02-15 22:13:05'),(2987,111,2,9933,'0.99','2005-07-31 15:24:46','2006-02-15 22:13:05'),(2988,111,2,10039,'2.99','2005-07-31 18:50:40','2006-02-15 22:13:05'),(2989,111,2,10602,'4.99','2005-08-01 14:30:23','2006-02-15 22:13:05'),(2990,111,1,10952,'4.99','2005-08-02 03:28:21','2006-02-15 22:13:05'),(2991,111,2,10990,'4.99','2005-08-02 04:41:06','2006-02-15 22:13:05'),(2992,111,2,11239,'2.99','2005-08-02 13:27:11','2006-02-15 22:13:05'),(2993,111,2,12196,'3.99','2005-08-18 02:08:48','2006-02-15 22:13:05'),(2994,111,2,13251,'2.99','2005-08-19 16:48:37','2006-02-15 22:13:05'),(2995,111,2,13525,'5.99','2005-08-20 02:50:44','2006-02-15 22:13:05'),(2996,111,1,14949,'0.99','2005-08-22 06:12:16','2006-02-15 22:13:05'),(2997,111,2,15174,'6.99','2005-08-22 15:26:36','2006-02-15 22:13:05'),(2998,111,2,15542,'2.99','2006-02-14 15:16:03','2006-02-15 22:13:05'),(2999,112,1,396,'0.99','2005-05-27 11:47:04','2006-02-15 22:13:05'),(3000,112,2,701,'2.99','2005-05-29 02:26:27','2006-02-15 22:13:05'),(3001,112,1,1835,'4.99','2005-06-16 23:05:36','2006-02-15 22:13:05'),(3002,112,2,1930,'2.99','2005-06-17 06:50:46','2006-02-15 22:13:05'),(3003,112,1,2193,'4.99','2005-06-18 01:38:45','2006-02-15 22:13:05'),(3004,112,2,3018,'2.99','2005-06-20 11:10:35','2006-02-15 22:13:05'),(3005,112,1,5351,'4.99','2005-07-09 17:40:52','2006-02-15 22:13:05'),(3006,112,1,5385,'2.99','2005-07-09 19:18:11','2006-02-15 22:13:05'),(3007,112,2,6550,'2.99','2005-07-12 05:03:14','2006-02-15 22:13:05'),(3008,112,2,7691,'4.99','2005-07-28 03:30:09','2006-02-15 22:13:05'),(3009,112,2,7761,'4.99','2005-07-28 06:31:45','2006-02-15 22:13:05'),(3010,112,1,9217,'4.99','2005-07-30 13:13:55','2006-02-15 22:13:05'),(3011,112,2,9321,'6.99','2005-07-30 17:19:44','2006-02-15 22:13:05'),(3012,112,2,9609,'4.99','2005-07-31 03:53:24','2006-02-15 22:13:05'),(3013,112,1,9830,'5.99','2005-07-31 11:59:05','2006-02-15 22:13:05'),(3014,112,2,9911,'3.99','2005-07-31 14:48:01','2006-02-15 22:13:05'),(3015,112,1,10038,'2.99','2005-07-31 18:49:12','2006-02-15 22:13:05'),(3016,112,2,10596,'5.99','2005-08-01 14:18:57','2006-02-15 22:13:06'),(3017,112,1,11019,'2.99','2005-08-02 05:29:31','2006-02-15 22:13:06'),(3018,112,1,11599,'7.99','2005-08-17 03:08:10','2006-02-15 22:13:06'),(3019,112,2,11659,'4.99','2005-08-17 05:20:45','2006-02-15 22:13:06'),(3020,112,2,11863,'3.99','2005-08-17 13:56:01','2006-02-15 22:13:06'),(3021,112,2,13611,'8.99','2005-08-20 06:20:42','2006-02-15 22:13:06'),(3022,112,2,13879,'2.99','2005-08-20 15:18:10','2006-02-15 22:13:06'),(3023,112,2,14049,'5.99','2005-08-20 22:08:55','2006-02-15 22:13:06'),(3024,112,1,14358,'0.99','2005-08-21 09:14:28','2006-02-15 22:13:06'),(3025,112,2,15304,'4.99','2005-08-22 19:45:57','2006-02-15 22:13:06'),(3026,112,1,15671,'0.99','2005-08-23 09:08:16','2006-02-15 22:13:06'),(3027,112,1,15687,'8.99','2005-08-23 09:46:33','2006-02-15 22:13:06'),(3028,112,1,15756,'2.99','2005-08-23 12:47:05','2006-02-15 22:13:06'),(3029,113,1,510,'0.99','2005-05-28 02:52:14','2006-02-15 22:13:06'),(3030,113,2,776,'0.99','2005-05-29 13:35:35','2006-02-15 22:13:06'),(3031,113,2,2077,'4.99','2005-06-17 16:46:11','2006-02-15 22:13:06'),(3032,113,1,2282,'2.99','2005-06-18 06:48:23','2006-02-15 22:13:06'),(3033,113,1,2783,'2.99','2005-06-19 18:29:10','2006-02-15 22:13:06'),(3034,113,2,3004,'0.99','2005-06-20 10:04:36','2006-02-15 22:13:06'),(3035,113,1,3124,'8.99','2005-06-20 18:28:19','2006-02-15 22:13:06'),(3036,113,1,3162,'6.99','2005-06-20 21:21:15','2006-02-15 22:13:06'),(3037,113,2,3657,'5.99','2005-07-06 07:55:30','2006-02-15 22:13:06'),(3038,113,1,4333,'2.99','2005-07-07 18:31:50','2006-02-15 22:13:06'),(3039,113,2,5189,'2.99','2005-07-09 10:23:21','2006-02-15 22:13:06'),(3040,113,2,5324,'2.99','2005-07-09 16:34:18','2006-02-15 22:13:06'),(3041,113,2,5655,'4.99','2005-07-10 07:31:06','2006-02-15 22:13:06'),(3042,113,1,5774,'5.99','2005-07-10 13:31:56','2006-02-15 22:13:06'),(3043,113,1,6025,'0.99','2005-07-11 02:18:13','2006-02-15 22:13:06'),(3044,113,1,6836,'0.99','2005-07-12 18:58:05','2006-02-15 22:13:06'),(3045,113,2,7468,'5.99','2005-07-27 18:52:27','2006-02-15 22:13:06'),(3046,113,2,7587,'2.99','2005-07-27 23:23:03','2006-02-15 22:13:06'),(3047,113,2,9221,'6.99','2005-07-30 13:20:06','2006-02-15 22:13:06'),(3048,113,2,10181,'4.99','2005-08-01 00:00:44','2006-02-15 22:13:06'),(3049,113,1,10378,'0.99','2005-08-01 06:30:04','2006-02-15 22:13:06'),(3050,113,2,10578,'1.99','2005-08-01 13:48:02','2006-02-15 22:13:06'),(3051,113,2,11655,'7.99','2005-08-17 05:11:07','2006-02-15 22:13:06'),(3052,113,1,11872,'5.99','2005-08-17 14:11:45','2006-02-15 22:13:06'),(3053,113,1,12392,'5.99','2005-08-18 08:57:58','2006-02-15 22:13:06'),(3054,113,2,12817,'3.99','2005-08-19 01:04:35','2006-02-15 22:13:06'),(3055,113,2,13406,'2.99','2005-08-19 22:22:01','2006-02-15 22:13:06'),(3056,113,1,15600,'1.99','2005-08-23 06:31:24','2006-02-15 22:13:06'),(3057,113,1,15770,'2.99','2005-08-23 13:18:16','2006-02-15 22:13:06'),(3058,114,1,205,'4.99','2005-05-26 07:59:37','2006-02-15 22:13:06'),(3059,114,1,255,'4.99','2005-05-26 14:52:15','2006-02-15 22:13:06'),(3060,114,2,889,'2.99','2005-05-30 07:14:53','2006-02-15 22:13:06'),(3061,114,1,2059,'2.99','2005-06-17 15:36:12','2006-02-15 22:13:06'),(3062,114,2,2680,'7.99','2005-06-19 12:13:37','2006-02-15 22:13:07'),(3063,114,1,3094,'2.99','2005-06-20 16:06:51','2006-02-15 22:13:07'),(3064,114,2,3144,'5.99','2005-06-20 20:14:20','2006-02-15 22:13:07'),(3065,114,1,3484,'4.99','2005-07-05 23:23:11','2006-02-15 22:13:07'),(3066,114,1,3924,'2.99','2005-07-06 20:38:02','2006-02-15 22:13:07'),(3067,114,1,4025,'0.99','2005-07-07 02:13:24','2006-02-15 22:13:07'),(3068,114,1,5418,'0.99','2005-07-09 20:41:35','2006-02-15 22:13:07'),(3069,114,2,5624,'4.99','2005-07-10 05:43:16','2006-02-15 22:13:07'),(3070,114,1,5625,'2.99','2005-07-10 05:44:02','2006-02-15 22:13:07'),(3071,114,1,6188,'2.99','2005-07-11 11:31:47','2006-02-15 22:13:07'),(3072,114,1,6754,'4.99','2005-07-12 14:59:24','2006-02-15 22:13:07'),(3073,114,2,7316,'2.99','2005-07-27 13:19:03','2006-02-15 22:13:07'),(3074,114,2,7462,'2.99','2005-07-27 18:47:47','2006-02-15 22:13:07'),(3075,114,2,7565,'2.99','2005-07-27 22:33:59','2006-02-15 22:13:07'),(3076,114,2,7938,'5.99','2005-07-28 12:39:11','2006-02-15 22:13:07'),(3077,114,2,8496,'4.99','2005-07-29 09:05:33','2006-02-15 22:13:07'),(3078,114,1,8590,'10.99','2005-07-29 12:32:20','2006-02-15 22:13:07'),(3079,114,1,9717,'4.99','2005-07-31 08:24:41','2006-02-15 22:13:07'),(3080,114,1,11547,'4.99','2005-08-17 00:59:24','2006-02-15 22:13:07'),(3081,114,2,12326,'0.99','2005-08-18 06:41:59','2006-02-15 22:13:07'),(3082,114,1,12685,'6.99','2005-08-18 19:51:29','2006-02-15 22:13:07'),(3083,114,2,13459,'6.99','2005-08-20 00:45:40','2006-02-15 22:13:07'),(3084,114,2,14158,'5.99','2005-08-21 02:43:20','2006-02-15 22:13:07'),(3085,114,1,14867,'4.99','2005-08-22 03:14:46','2006-02-15 22:13:07'),(3086,114,1,15485,'0.99','2005-08-23 02:04:57','2006-02-15 22:13:07'),(3087,114,1,15528,'2.99','2005-08-23 03:45:40','2006-02-15 22:13:07'),(3088,114,2,15646,'3.99','2005-08-23 08:19:55','2006-02-15 22:13:07'),(3089,114,1,16047,'0.99','2005-08-23 22:42:48','2006-02-15 22:13:07'),(3090,114,2,12506,'4.99','2006-02-14 15:16:03','2006-02-15 22:13:07'),(3091,115,1,915,'0.99','2005-05-30 11:20:27','2006-02-15 22:13:07'),(3092,115,1,983,'0.99','2005-05-30 22:15:51','2006-02-15 22:13:07'),(3093,115,1,1102,'2.99','2005-05-31 14:20:29','2006-02-15 22:13:07'),(3094,115,2,1361,'0.99','2005-06-15 13:37:38','2006-02-15 22:13:07'),(3095,115,2,1515,'2.99','2005-06-15 23:07:50','2006-02-15 22:13:07'),(3096,115,1,3289,'6.99','2005-06-21 06:41:48','2006-02-15 22:13:07'),(3097,115,2,3544,'0.99','2005-07-06 02:06:32','2006-02-15 22:13:07'),(3098,115,1,3624,'0.99','2005-07-06 06:06:27','2006-02-15 22:13:07'),(3099,115,1,4780,'1.99','2005-07-08 16:06:51','2006-02-15 22:13:07'),(3100,115,1,5245,'4.99','2005-07-09 13:24:14','2006-02-15 22:13:07'),(3101,115,1,6080,'2.99','2005-07-11 05:08:11','2006-02-15 22:13:07'),(3102,115,2,6113,'2.99','2005-07-11 07:31:08','2006-02-15 22:13:07'),(3103,115,1,6373,'0.99','2005-07-11 21:35:20','2006-02-15 22:13:07'),(3104,115,1,6574,'5.99','2005-07-12 06:04:22','2006-02-15 22:13:07'),(3105,115,1,6798,'6.99','2005-07-12 16:49:11','2006-02-15 22:13:07'),(3106,115,2,7355,'1.99','2005-07-27 14:45:59','2006-02-15 22:13:07'),(3107,115,2,7465,'4.99','2005-07-27 18:50:30','2006-02-15 22:13:07'),(3108,115,1,7983,'4.99','2005-07-28 14:23:01','2006-02-15 22:13:07'),(3109,115,1,8594,'4.99','2005-07-29 12:42:13','2006-02-15 22:13:07'),(3110,115,2,9578,'0.99','2005-07-31 02:54:31','2006-02-15 22:13:07'),(3111,115,2,10022,'3.99','2005-07-31 18:25:30','2006-02-15 22:13:07'),(3112,115,2,10475,'4.99','2005-08-01 10:03:17','2006-02-15 22:13:07'),(3113,115,2,10647,'2.99','2005-08-01 16:08:46','2006-02-15 22:13:07'),(3114,115,2,10919,'0.99','2005-08-02 02:11:03','2006-02-15 22:13:07'),(3115,115,1,11891,'2.99','2005-08-17 15:11:55','2006-02-15 22:13:07'),(3116,115,2,12366,'0.99','2005-08-18 07:55:14','2006-02-15 22:13:07'),(3117,115,2,13977,'0.99','2005-08-20 19:02:34','2006-02-15 22:13:08'),(3118,115,1,15176,'6.99','2005-08-22 15:30:25','2006-02-15 22:13:08'),(3119,115,2,15452,'0.99','2005-08-23 00:57:12','2006-02-15 22:13:08'),(3120,115,2,13056,'2.99','2006-02-14 15:16:03','2006-02-15 22:13:08'),(3121,116,1,1058,'4.99','2005-05-31 08:04:17','2006-02-15 22:13:08'),(3122,116,2,1332,'0.99','2005-06-15 11:36:01','2006-02-15 22:13:08'),(3123,116,2,1533,'0.99','2005-06-16 00:46:02','2006-02-15 22:13:08'),(3124,116,2,1762,'4.99','2005-06-16 17:50:19','2006-02-15 22:13:08'),(3125,116,2,1913,'4.99','2005-06-17 05:19:47','2006-02-15 22:13:08'),(3126,116,1,2639,'4.99','2005-06-19 09:24:02','2006-02-15 22:13:08'),(3127,116,1,2861,'3.99','2005-06-19 23:21:34','2006-02-15 22:13:08'),(3128,116,2,3908,'6.99','2005-07-06 19:47:26','2006-02-15 22:13:08'),(3129,116,2,3940,'2.99','2005-07-06 21:16:59','2006-02-15 22:13:08'),(3130,116,1,4027,'0.99','2005-07-07 02:19:01','2006-02-15 22:13:08'),(3131,116,2,4737,'4.99','2005-07-08 13:23:53','2006-02-15 22:13:08'),(3132,116,2,5169,'2.99','2005-07-09 09:22:25','2006-02-15 22:13:08'),(3133,116,1,6557,'4.99','2005-07-12 05:12:03','2006-02-15 22:13:08'),(3134,116,1,7238,'0.99','2005-07-27 10:13:41','2006-02-15 22:13:08'),(3135,116,2,7763,'5.99','2005-07-28 06:35:16','2006-02-15 22:13:08'),(3136,116,2,9245,'6.99','2005-07-30 14:07:50','2006-02-15 22:13:08'),(3137,116,1,9562,'3.99','2005-07-31 02:23:20','2006-02-15 22:13:08'),(3138,116,2,10250,'1.99','2005-08-01 02:38:42','2006-02-15 22:13:08'),(3139,116,1,10801,'1.99','2005-08-01 22:09:35','2006-02-15 22:13:08'),(3140,116,2,11016,'4.99','2005-08-02 05:19:13','2006-02-15 22:13:08'),(3141,116,2,12376,'2.99','2005-08-18 08:20:29','2006-02-15 22:13:08'),(3142,116,2,13146,'7.99','2005-08-19 12:54:42','2006-02-15 22:13:08'),(3143,116,1,13369,'0.99','2005-08-19 21:19:47','2006-02-15 22:13:08'),(3144,116,1,13474,'0.99','2005-08-20 01:04:32','2006-02-15 22:13:08'),(3145,116,1,13775,'6.99','2005-08-20 11:56:30','2006-02-15 22:13:08'),(3146,116,2,14763,'11.99','2005-08-21 23:34:00','2006-02-15 22:13:08'),(3147,116,1,14907,'2.99','2005-08-22 04:44:09','2006-02-15 22:13:08'),(3148,117,1,700,'0.99','2005-05-29 02:18:54','2006-02-15 22:13:08'),(3149,117,2,1114,'0.99','2005-05-31 16:00:33','2006-02-15 22:13:08'),(3150,117,1,1755,'2.99','2005-06-16 17:18:44','2006-02-15 22:13:08'),(3151,117,2,3218,'2.99','2005-06-21 01:38:09','2006-02-15 22:13:08'),(3152,117,2,5506,'5.99','2005-07-10 00:45:48','2006-02-15 22:13:08'),(3153,117,1,5673,'0.99','2005-07-10 08:21:54','2006-02-15 22:13:08'),(3154,117,1,6093,'9.99','2005-07-11 05:52:50','2006-02-15 22:13:08'),(3155,117,1,6449,'6.99','2005-07-12 00:48:58','2006-02-15 22:13:08'),(3156,117,1,8687,'2.99','2005-07-29 16:19:17','2006-02-15 22:13:08'),(3157,117,2,10556,'2.99','2005-08-01 12:58:42','2006-02-15 22:13:08'),(3158,117,1,10558,'4.99','2005-08-01 13:00:20','2006-02-15 22:13:08'),(3159,117,2,11467,'3.99','2005-08-02 21:47:07','2006-02-15 22:13:08'),(3160,117,1,12143,'2.99','2005-08-18 00:06:26','2006-02-15 22:13:08'),(3161,117,1,12337,'2.99','2005-08-18 07:02:24','2006-02-15 22:13:08'),(3162,117,1,12575,'6.99','2005-08-18 15:37:42','2006-02-15 22:13:08'),(3163,117,1,12618,'4.99','2005-08-18 17:24:02','2006-02-15 22:13:08'),(3164,117,1,14784,'0.99','2005-08-22 00:23:13','2006-02-15 22:13:08'),(3165,117,2,14854,'2.99','2005-08-22 02:26:47','2006-02-15 22:13:08'),(3166,117,1,15432,'2.99','2005-08-23 00:26:52','2006-02-15 22:13:09'),(3167,118,2,351,'5.99','2005-05-27 05:39:03','2006-02-15 22:13:09'),(3168,118,2,1766,'4.99','2005-06-16 17:59:37','2006-02-15 22:13:09'),(3169,118,2,2217,'0.99','2005-06-18 03:12:29','2006-02-15 22:13:09'),(3170,118,1,3263,'4.99','2005-06-21 04:15:52','2006-02-15 22:13:09'),(3171,118,1,4966,'0.99','2005-07-08 23:47:25','2006-02-15 22:13:09'),(3172,118,1,5829,'1.99','2005-07-10 16:29:41','2006-02-15 22:13:09'),(3173,118,1,6377,'0.99','2005-07-11 21:41:16','2006-02-15 22:13:09'),(3174,118,1,6507,'1.99','2005-07-12 03:33:12','2006-02-15 22:13:09'),(3175,118,1,7196,'2.99','2005-07-27 08:49:08','2006-02-15 22:13:09'),(3176,118,1,7850,'4.99','2005-07-28 09:31:13','2006-02-15 22:13:09'),(3177,118,2,7956,'4.99','2005-07-28 13:32:17','2006-02-15 22:13:09'),(3178,118,1,8314,'3.99','2005-07-29 03:35:04','2006-02-15 22:13:09'),(3179,118,2,8760,'7.99','2005-07-29 19:22:40','2006-02-15 22:13:09'),(3180,118,1,8881,'4.99','2005-07-30 00:22:31','2006-02-15 22:13:09'),(3181,118,2,10045,'1.99','2005-07-31 19:04:35','2006-02-15 22:13:09'),(3182,118,2,12538,'2.99','2005-08-18 14:09:09','2006-02-15 22:13:09'),(3183,118,2,13193,'6.99','2005-08-19 14:33:45','2006-02-15 22:13:09'),(3184,118,2,14394,'5.99','2005-08-21 10:23:10','2006-02-15 22:13:09'),(3185,118,2,14595,'7.99','2005-08-21 17:35:17','2006-02-15 22:13:09'),(3186,118,1,14924,'2.99','2005-08-22 05:15:17','2006-02-15 22:13:09'),(3187,118,1,15731,'0.99','2005-08-23 11:33:25','2006-02-15 22:13:09'),(3188,119,2,67,'0.99','2005-05-25 09:41:01','2006-02-15 22:13:09'),(3189,119,1,235,'5.99','2005-05-26 11:51:09','2006-02-15 22:13:09'),(3190,119,2,540,'6.99','2005-05-28 06:40:25','2006-02-15 22:13:09'),(3191,119,1,1179,'7.99','2005-06-15 00:36:50','2006-02-15 22:13:09'),(3192,119,2,2009,'2.99','2005-06-17 11:48:31','2006-02-15 22:13:09'),(3193,119,2,3388,'5.99','2005-06-21 14:34:51','2006-02-15 22:13:09'),(3194,119,2,4840,'8.99','2005-07-08 18:18:16','2006-02-15 22:13:09'),(3195,119,1,5176,'5.99','2005-07-09 09:39:31','2006-02-15 22:13:09'),(3196,119,1,5268,'0.99','2005-07-09 14:22:43','2006-02-15 22:13:09'),(3197,119,1,6079,'7.99','2005-07-11 05:07:14','2006-02-15 22:13:09'),(3198,119,2,6330,'0.99','2005-07-11 19:15:42','2006-02-15 22:13:09'),(3199,119,2,8140,'4.99','2005-07-28 20:17:50','2006-02-15 22:13:09'),(3200,119,1,8183,'5.99','2005-07-28 22:21:07','2006-02-15 22:13:09'),(3201,119,1,8304,'4.99','2005-07-29 03:08:30','2006-02-15 22:13:09'),(3202,119,2,9028,'2.99','2005-07-30 06:00:35','2006-02-15 22:13:09'),(3203,119,1,10101,'0.99','2005-07-31 20:47:29','2006-02-15 22:13:09'),(3204,119,1,10366,'3.99','2005-08-01 06:09:37','2006-02-15 22:13:09'),(3205,119,2,10552,'2.99','2005-08-01 12:49:44','2006-02-15 22:13:09'),(3206,119,1,10681,'4.99','2005-08-01 17:30:35','2006-02-15 22:13:09'),(3207,119,2,11377,'2.99','2005-08-02 18:16:47','2006-02-15 22:13:09'),(3208,119,1,11520,'5.99','2005-08-17 00:04:28','2006-02-15 22:13:09'),(3209,119,2,12576,'2.99','2005-08-18 15:38:31','2006-02-15 22:13:10'),(3210,119,2,12603,'3.99','2005-08-18 16:56:20','2006-02-15 22:13:10'),(3211,119,2,12842,'6.99','2005-08-19 01:57:21','2006-02-15 22:13:10'),(3212,119,1,13581,'4.99','2005-08-20 05:26:15','2006-02-15 22:13:10'),(3213,119,2,14349,'3.99','2005-08-21 08:54:53','2006-02-15 22:13:10'),(3214,119,2,14382,'2.99','2005-08-21 10:01:03','2006-02-15 22:13:10'),(3215,119,2,14643,'6.99','2005-08-21 19:11:58','2006-02-15 22:13:10'),(3216,119,2,14659,'0.99','2005-08-21 19:42:36','2006-02-15 22:13:10'),(3217,119,1,15111,'4.99','2005-08-22 12:21:43','2006-02-15 22:13:10'),(3218,119,2,15131,'3.99','2005-08-22 13:06:26','2006-02-15 22:13:10'),(3219,119,2,15171,'6.99','2005-08-22 15:23:59','2006-02-15 22:13:10'),(3220,119,1,15844,'2.99','2005-08-23 15:38:12','2006-02-15 22:13:10'),(3221,119,2,16028,'3.99','2005-08-23 21:52:56','2006-02-15 22:13:10'),(3222,120,2,68,'7.99','2005-05-25 09:47:31','2006-02-15 22:13:10'),(3223,120,2,532,'0.99','2005-05-28 05:36:58','2006-02-15 22:13:10'),(3224,120,1,1374,'3.99','2005-06-15 14:49:54','2006-02-15 22:13:10'),(3225,120,1,1820,'4.99','2005-06-16 21:34:50','2006-02-15 22:13:10'),(3226,120,2,1932,'2.99','2005-06-17 06:54:41','2006-02-15 22:13:10'),(3227,120,1,2169,'4.99','2005-06-17 23:57:23','2006-02-15 22:13:10'),(3228,120,1,2803,'9.99','2005-06-19 19:18:27','2006-02-15 22:13:10'),(3229,120,1,3133,'2.99','2005-06-20 19:18:32','2006-02-15 22:13:10'),(3230,120,1,4001,'5.99','2005-07-07 00:07:00','2006-02-15 22:13:10'),(3231,120,2,4272,'3.99','2005-07-07 14:39:20','2006-02-15 22:13:10'),(3232,120,2,4342,'0.99','2005-07-07 18:47:03','2006-02-15 22:13:10'),(3233,120,2,4666,'9.99','2005-07-08 10:05:02','2006-02-15 22:13:10'),(3234,120,1,4942,'1.99','2005-07-08 22:42:47','2006-02-15 22:13:10'),(3235,120,2,5288,'1.99','2005-07-09 15:13:07','2006-02-15 22:13:10'),(3236,120,2,6503,'0.99','2005-07-12 03:18:07','2006-02-15 22:13:10'),(3237,120,1,6989,'4.99','2005-07-27 01:00:34','2006-02-15 22:13:10'),(3238,120,2,8046,'0.99','2005-07-28 16:49:41','2006-02-15 22:13:10'),(3239,120,2,8756,'1.99','2005-07-29 19:18:57','2006-02-15 22:13:10'),(3240,120,1,8998,'6.99','2005-07-30 04:54:14','2006-02-15 22:13:10'),(3241,120,2,9907,'6.99','2005-07-31 14:39:50','2006-02-15 22:13:10'),(3242,120,2,10161,'0.99','2005-07-31 23:09:41','2006-02-15 22:13:10'),(3243,120,2,10696,'4.99','2005-08-01 18:18:13','2006-02-15 22:13:10'),(3244,120,1,10940,'3.99','2005-08-02 03:08:29','2006-02-15 22:13:10'),(3245,120,2,11133,'0.99','2005-08-02 09:15:45','2006-02-15 22:13:10'),(3246,120,2,13167,'2.99','2005-08-19 13:36:41','2006-02-15 22:13:10'),(3247,120,2,13375,'7.99','2005-08-19 21:31:31','2006-02-15 22:13:10'),(3248,120,1,14001,'2.99','2005-08-20 20:07:15','2006-02-15 22:13:10'),(3249,120,1,14153,'4.99','2005-08-21 02:24:33','2006-02-15 22:13:10'),(3250,120,1,14246,'4.99','2005-08-21 05:34:09','2006-02-15 22:13:10'),(3251,120,2,14460,'9.99','2005-08-21 12:48:48','2006-02-15 22:13:10'),(3252,120,2,14969,'6.99','2005-08-22 06:49:15','2006-02-15 22:13:10'),(3253,120,1,15780,'4.99','2006-02-14 15:16:03','2006-02-15 22:13:10'),(3254,121,1,217,'4.99','2005-05-26 09:24:26','2006-02-15 22:13:10'),(3255,121,1,1634,'2.99','2005-06-16 08:16:05','2006-02-15 22:13:10'),(3256,121,1,1833,'1.99','2005-06-16 22:45:03','2006-02-15 22:13:10'),(3257,121,2,5670,'0.99','2005-07-10 08:14:52','2006-02-15 22:13:10'),(3258,121,2,6780,'4.99','2005-07-12 16:18:12','2006-02-15 22:13:11'),(3259,121,2,7114,'0.99','2005-07-27 05:42:13','2006-02-15 22:13:11'),(3260,121,1,7185,'0.99','2005-07-27 08:23:54','2006-02-15 22:13:11'),(3261,121,2,7298,'2.99','2005-07-27 12:45:14','2006-02-15 22:13:11'),(3262,121,1,8370,'6.99','2005-07-29 05:16:21','2006-02-15 22:13:11'),(3263,121,2,8788,'1.99','2005-07-29 20:46:44','2006-02-15 22:13:11'),(3264,121,2,8875,'2.99','2005-07-30 00:15:09','2006-02-15 22:13:11'),(3265,121,2,8969,'8.99','2005-07-30 04:00:19','2006-02-15 22:13:11'),(3266,121,2,10457,'5.99','2005-08-01 09:17:34','2006-02-15 22:13:11'),(3267,121,2,11720,'8.99','2005-08-17 07:46:54','2006-02-15 22:13:11'),(3268,121,2,12242,'1.99','2005-08-18 03:37:31','2006-02-15 22:13:11'),(3269,121,2,12428,'3.99','2005-08-18 10:24:21','2006-02-15 22:13:11'),(3270,121,2,12734,'1.99','2005-08-18 22:04:52','2006-02-15 22:13:11'),(3271,121,1,12881,'5.99','2005-08-19 03:28:13','2006-02-15 22:13:11'),(3272,121,2,12892,'0.99','2005-08-19 03:46:34','2006-02-15 22:13:11'),(3273,121,1,14138,'7.99','2005-08-21 01:59:37','2006-02-15 22:13:11'),(3274,121,1,14177,'4.99','2005-08-21 03:11:33','2006-02-15 22:13:11'),(3275,121,2,14412,'9.99','2005-08-21 11:02:09','2006-02-15 22:13:11'),(3276,121,1,14464,'2.99','2005-08-21 12:52:54','2006-02-15 22:13:11'),(3277,121,2,15114,'7.99','2005-08-22 12:24:55','2006-02-15 22:13:11'),(3278,121,1,15369,'0.99','2005-08-22 21:58:06','2006-02-15 22:13:11'),(3279,121,1,16041,'2.99','2005-08-23 22:20:26','2006-02-15 22:13:11'),(3280,122,2,853,'0.99','2005-05-30 01:43:31','2006-02-15 22:13:11'),(3281,122,2,1135,'4.99','2005-05-31 19:15:11','2006-02-15 22:13:11'),(3282,122,1,1211,'0.99','2005-06-15 03:01:20','2006-02-15 22:13:11'),(3283,122,2,1442,'7.99','2005-06-15 18:55:34','2006-02-15 22:13:11'),(3284,122,2,2240,'3.99','2005-06-18 04:28:27','2006-02-15 22:13:11'),(3285,122,1,2253,'0.99','2005-06-18 05:11:43','2006-02-15 22:13:11'),(3286,122,1,2482,'4.99','2005-06-18 21:10:44','2006-02-15 22:13:11'),(3287,122,2,2595,'4.99','2005-06-19 05:43:55','2006-02-15 22:13:11'),(3288,122,2,2834,'1.99','2005-06-19 21:41:46','2006-02-15 22:13:11'),(3289,122,1,3778,'2.99','2005-07-06 13:44:48','2006-02-15 22:13:11'),(3290,122,2,3986,'4.99','2005-07-06 23:25:13','2006-02-15 22:13:11'),(3291,122,1,4239,'7.99','2005-07-07 13:23:17','2006-02-15 22:13:11'),(3292,122,1,4568,'4.99','2005-07-08 05:23:59','2006-02-15 22:13:11'),(3293,122,2,5235,'6.99','2005-07-09 12:54:25','2006-02-15 22:13:11'),(3294,122,2,6231,'0.99','2005-07-11 14:02:36','2006-02-15 22:13:11'),(3295,122,1,6427,'0.99','2005-07-11 23:57:34','2006-02-15 22:13:11'),(3296,122,1,6436,'0.99','2005-07-12 00:18:42','2006-02-15 22:13:11'),(3297,122,2,6974,'7.99','2005-07-27 00:39:16','2006-02-15 22:13:11'),(3298,122,1,7267,'2.99','2005-07-27 11:22:55','2006-02-15 22:13:11'),(3299,122,2,7950,'4.99','2005-07-28 13:21:00','2006-02-15 22:13:11'),(3300,122,1,8077,'2.99','2005-07-28 17:54:35','2006-02-15 22:13:11'),(3301,122,2,8177,'0.99','2005-07-28 21:43:54','2006-02-15 22:13:11'),(3302,122,1,8772,'5.99','2005-07-29 19:55:25','2006-02-15 22:13:11'),(3303,122,2,9910,'4.99','2005-07-31 14:47:57','2006-02-15 22:13:11'),(3304,122,1,10626,'1.99','2005-08-01 15:32:41','2006-02-15 22:13:11'),(3305,122,2,11044,'3.99','2005-08-02 06:05:27','2006-02-15 22:13:12'),(3306,122,2,11197,'2.99','2005-08-02 11:45:07','2006-02-15 22:13:12'),(3307,122,2,12476,'4.99','2005-08-18 12:22:40','2006-02-15 22:13:12'),(3308,122,2,12711,'4.99','2005-08-18 21:03:32','2006-02-15 22:13:12'),(3309,122,1,13171,'2.99','2005-08-19 13:48:54','2006-02-15 22:13:12'),(3310,122,1,13812,'4.99','2005-08-20 13:01:43','2006-02-15 22:13:12'),(3311,122,2,14666,'5.99','2005-08-21 19:51:09','2006-02-15 22:13:12'),(3312,123,1,992,'2.99','2005-05-30 23:47:56','2006-02-15 22:13:12'),(3313,123,2,1490,'4.99','2005-06-15 21:42:17','2006-02-15 22:13:12'),(3314,123,1,1751,'0.99','2005-06-16 17:00:14','2006-02-15 22:13:12'),(3315,123,2,1775,'4.99','2005-06-16 18:28:19','2006-02-15 22:13:12'),(3316,123,2,1951,'0.99','2005-06-17 08:30:35','2006-02-15 22:13:12'),(3317,123,1,2594,'2.99','2005-06-19 05:43:43','2006-02-15 22:13:12'),(3318,123,1,4442,'3.99','2005-07-07 23:05:30','2006-02-15 22:13:12'),(3319,123,1,4860,'8.99','2005-07-08 18:54:07','2006-02-15 22:13:12'),(3320,123,2,7535,'4.99','2005-07-27 21:32:39','2006-02-15 22:13:12'),(3321,123,1,7727,'2.99','2005-07-28 04:52:43','2006-02-15 22:13:12'),(3322,123,2,7768,'0.99','2005-07-28 06:44:03','2006-02-15 22:13:12'),(3323,123,1,7852,'2.99','2005-07-28 09:34:29','2006-02-15 22:13:12'),(3324,123,1,7969,'5.99','2005-07-28 13:57:37','2006-02-15 22:13:12'),(3325,123,2,8699,'4.99','2005-07-29 16:53:00','2006-02-15 22:13:12'),(3326,123,2,9529,'4.99','2005-07-31 01:05:26','2006-02-15 22:13:12'),(3327,123,1,10066,'4.99','2005-07-31 19:30:01','2006-02-15 22:13:12'),(3328,123,2,10295,'8.99','2005-08-01 03:53:49','2006-02-15 22:13:12'),(3329,123,1,12360,'2.99','2005-08-18 07:46:35','2006-02-15 22:13:12'),(3330,123,1,12402,'3.99','2005-08-18 09:27:34','2006-02-15 22:13:12'),(3331,123,1,13668,'2.99','2005-08-20 08:26:06','2006-02-15 22:13:12'),(3332,123,2,15152,'7.99','2005-08-22 14:25:21','2006-02-15 22:13:12'),(3333,123,2,15525,'4.99','2005-08-23 03:43:32','2006-02-15 22:13:12'),(3334,123,1,15621,'1.99','2005-08-23 07:13:43','2006-02-15 22:13:12'),(3335,123,2,15787,'2.99','2005-08-23 13:51:57','2006-02-15 22:13:12'),(3336,124,1,775,'0.99','2005-05-29 13:23:26','2006-02-15 22:13:12'),(3337,124,2,1039,'4.99','2005-05-31 05:32:29','2006-02-15 22:13:12'),(3338,124,2,1057,'3.99','2005-05-31 07:58:06','2006-02-15 22:13:12'),(3339,124,2,1130,'5.99','2005-05-31 18:13:57','2006-02-15 22:13:12'),(3340,124,2,2336,'1.99','2005-06-18 11:00:05','2006-02-15 22:13:12'),(3341,124,1,4341,'7.99','2005-07-07 18:44:23','2006-02-15 22:13:12'),(3342,124,2,4709,'2.99','2005-07-08 12:04:34','2006-02-15 22:13:12'),(3343,124,1,5566,'2.99','2005-07-10 03:30:17','2006-02-15 22:13:12'),(3344,124,1,6411,'2.99','2005-07-11 23:10:50','2006-02-15 22:13:12'),(3345,124,1,7519,'6.99','2005-07-27 21:01:41','2006-02-15 22:13:12'),(3346,124,2,7700,'8.99','2005-07-28 03:54:14','2006-02-15 22:13:12'),(3347,124,2,8524,'0.99','2005-07-29 10:20:07','2006-02-15 22:13:12'),(3348,124,1,9986,'3.99','2005-07-31 17:16:50','2006-02-15 22:13:12'),(3349,124,2,11493,'5.99','2005-08-02 22:47:00','2006-02-15 22:13:12'),(3350,124,1,12835,'4.99','2005-08-19 01:47:45','2006-02-15 22:13:12'),(3351,124,2,14737,'0.99','2005-08-21 22:27:11','2006-02-15 22:13:13'),(3352,124,2,15266,'4.99','2005-08-22 18:37:24','2006-02-15 22:13:13'),(3353,124,2,16023,'0.99','2005-08-23 21:45:02','2006-02-15 22:13:13'),(3354,125,2,185,'3.99','2005-05-26 05:30:03','2006-02-15 22:13:13'),(3355,125,1,1481,'2.99','2005-06-15 21:17:58','2006-02-15 22:13:13'),(3356,125,1,2355,'3.99','2005-06-18 12:57:06','2006-02-15 22:13:13'),(3357,125,1,2826,'7.99','2005-06-19 20:41:35','2006-02-15 22:13:13'),(3358,125,1,3118,'4.99','2005-06-20 18:05:57','2006-02-15 22:13:13'),(3359,125,1,3617,'4.99','2005-07-06 05:58:06','2006-02-15 22:13:13'),(3360,125,1,5200,'2.99','2005-07-09 10:52:09','2006-02-15 22:13:13'),(3361,125,2,5523,'7.99','2005-07-10 01:47:55','2006-02-15 22:13:13'),(3362,125,1,6055,'0.99','2005-07-11 03:59:08','2006-02-15 22:13:13'),(3363,125,2,6268,'6.99','2005-07-11 15:55:34','2006-02-15 22:13:13'),(3364,125,1,7323,'4.99','2005-07-27 13:39:40','2006-02-15 22:13:13'),(3365,125,2,7879,'0.99','2005-07-28 10:27:46','2006-02-15 22:13:13'),(3366,125,2,7922,'0.99','2005-07-28 12:05:25','2006-02-15 22:13:13'),(3367,125,2,8375,'2.99','2005-07-29 05:25:30','2006-02-15 22:13:13'),(3368,125,1,8433,'2.99','2005-07-29 07:19:16','2006-02-15 22:13:13'),(3369,125,1,8832,'4.99','2005-07-29 22:37:49','2006-02-15 22:13:13'),(3370,125,1,9129,'9.99','2005-07-30 09:51:21','2006-02-15 22:13:13'),(3371,125,1,9496,'4.99','2005-07-30 23:55:20','2006-02-15 22:13:13'),(3372,125,2,9504,'0.99','2005-07-31 00:09:07','2006-02-15 22:13:13'),(3373,125,1,9722,'4.99','2005-07-31 08:29:48','2006-02-15 22:13:13'),(3374,125,2,9734,'2.99','2005-07-31 08:57:45','2006-02-15 22:13:13'),(3375,125,1,10583,'2.99','2005-08-01 13:54:35','2006-02-15 22:13:13'),(3376,125,1,10699,'2.99','2005-08-01 18:24:51','2006-02-15 22:13:13'),(3377,125,2,11279,'7.99','2005-08-02 14:30:03','2006-02-15 22:13:13'),(3378,125,1,11806,'4.99','2005-08-17 11:49:28','2006-02-15 22:13:13'),(3379,125,1,11832,'4.99','2005-08-17 12:55:31','2006-02-15 22:13:13'),(3380,125,1,11999,'0.99','2005-08-17 18:47:07','2006-02-15 22:13:13'),(3381,125,1,12075,'4.99','2005-08-17 21:54:55','2006-02-15 22:13:13'),(3382,125,2,12262,'2.99','2005-08-18 04:16:15','2006-02-15 22:13:13'),(3383,125,2,13441,'6.99','2005-08-19 23:48:23','2006-02-15 22:13:13'),(3384,125,2,14456,'2.99','2005-08-21 12:38:09','2006-02-15 22:13:13'),(3385,125,1,15055,'2.99','2005-08-22 10:14:39','2006-02-15 22:13:13'),(3386,126,1,9,'4.99','2005-05-25 00:00:40','2006-02-15 22:13:13'),(3387,126,1,752,'4.99','2005-05-29 10:14:15','2006-02-15 22:13:13'),(3388,126,2,1054,'4.99','2005-05-31 07:33:25','2006-02-15 22:13:13'),(3389,126,1,3450,'2.99','2005-06-21 21:01:57','2006-02-15 22:13:13'),(3390,126,2,3502,'5.99','2005-07-06 00:15:06','2006-02-15 22:13:13'),(3391,126,1,3725,'4.99','2005-07-06 11:15:04','2006-02-15 22:13:13'),(3392,126,1,3804,'7.99','2005-07-06 15:08:08','2006-02-15 22:13:13'),(3393,126,1,4691,'0.99','2005-07-08 11:04:53','2006-02-15 22:13:13'),(3394,126,2,4730,'2.99','2005-07-08 12:59:49','2006-02-15 22:13:13'),(3395,126,2,5137,'0.99','2005-07-09 08:00:34','2006-02-15 22:13:13'),(3396,126,1,5865,'0.99','2005-07-10 18:31:05','2006-02-15 22:13:13'),(3397,126,1,6747,'0.99','2005-07-12 14:33:21','2006-02-15 22:13:14'),(3398,126,2,6755,'6.99','2005-07-12 15:07:49','2006-02-15 22:13:14'),(3399,126,1,7962,'0.99','2005-07-28 13:48:09','2006-02-15 22:13:14'),(3400,126,1,8091,'2.99','2005-07-28 18:27:29','2006-02-15 22:13:14'),(3401,126,1,9492,'6.99','2005-07-30 23:52:21','2006-02-15 22:13:14'),(3402,126,2,10032,'4.99','2005-07-31 18:41:55','2006-02-15 22:13:14'),(3403,126,1,11196,'9.99','2005-08-02 11:42:40','2006-02-15 22:13:14'),(3404,126,2,11613,'4.99','2005-08-17 03:50:33','2006-02-15 22:13:14'),(3405,126,1,11779,'3.99','2005-08-17 10:31:58','2006-02-15 22:13:14'),(3406,126,1,11801,'0.99','2005-08-17 11:30:11','2006-02-15 22:13:14'),(3407,126,2,12991,'2.99','2005-08-19 07:21:24','2006-02-15 22:13:14'),(3408,126,2,13015,'7.99','2005-08-19 07:56:51','2006-02-15 22:13:14'),(3409,126,2,13177,'0.99','2005-08-19 13:56:58','2006-02-15 22:13:14'),(3410,126,2,14477,'2.99','2005-08-21 13:32:38','2006-02-15 22:13:14'),(3411,126,2,14577,'2.99','2005-08-21 16:52:29','2006-02-15 22:13:14'),(3412,126,2,15741,'4.99','2005-08-23 12:10:54','2006-02-15 22:13:14'),(3413,126,1,16007,'7.99','2005-08-23 21:02:43','2006-02-15 22:13:14'),(3414,127,1,452,'0.99','2005-05-27 19:30:33','2006-02-15 22:13:14'),(3415,127,1,708,'0.99','2005-05-29 03:23:47','2006-02-15 22:13:14'),(3416,127,1,1293,'4.99','2005-06-15 09:06:24','2006-02-15 22:13:14'),(3417,127,2,1803,'2.99','2005-06-16 20:32:47','2006-02-15 22:13:14'),(3418,127,2,2412,'3.99','2005-06-18 16:58:58','2006-02-15 22:13:14'),(3419,127,1,4652,'5.99','2005-07-08 09:47:51','2006-02-15 22:13:14'),(3420,127,2,4811,'5.99','2005-07-08 17:04:24','2006-02-15 22:13:14'),(3421,127,2,5499,'2.99','2005-07-10 00:27:45','2006-02-15 22:13:14'),(3422,127,2,5983,'2.99','2005-07-11 00:34:11','2006-02-15 22:13:14'),(3423,127,1,7912,'4.99','2005-07-28 11:46:58','2006-02-15 22:13:14'),(3424,127,2,8209,'6.99','2005-07-28 23:29:28','2006-02-15 22:13:14'),(3425,127,1,9859,'6.99','2005-07-31 13:02:55','2006-02-15 22:13:14'),(3426,127,1,10197,'2.99','2005-08-01 00:35:25','2006-02-15 22:13:14'),(3427,127,1,10787,'10.99','2005-08-01 21:35:01','2006-02-15 22:13:14'),(3428,127,1,10973,'7.99','2005-08-02 04:09:42','2006-02-15 22:13:14'),(3429,127,1,11235,'0.99','2005-08-02 13:13:21','2006-02-15 22:13:14'),(3430,127,2,12060,'4.99','2005-08-17 21:11:57','2006-02-15 22:13:14'),(3431,127,2,12820,'2.99','2005-08-19 01:05:08','2006-02-15 22:13:14'),(3432,127,2,13043,'4.99','2005-08-19 09:07:13','2006-02-15 22:13:14'),(3433,127,1,13091,'2.99','2005-08-19 10:40:10','2006-02-15 22:13:14'),(3434,127,2,14030,'2.99','2005-08-20 21:23:54','2006-02-15 22:13:14'),(3435,127,1,14189,'2.99','2005-08-21 03:32:17','2006-02-15 22:13:14'),(3436,127,1,15463,'5.99','2005-08-23 01:15:07','2006-02-15 22:13:14'),(3437,127,2,15736,'5.99','2005-08-23 11:40:30','2006-02-15 22:13:14'),(3438,128,2,888,'5.99','2005-05-30 07:13:14','2006-02-15 22:13:14'),(3439,128,2,1131,'2.99','2005-05-31 18:44:19','2006-02-15 22:13:14'),(3440,128,2,2519,'7.99','2005-06-19 00:19:21','2006-02-15 22:13:14'),(3441,128,1,2565,'0.99','2005-06-19 03:44:03','2006-02-15 22:13:14'),(3442,128,1,3751,'0.99','2005-07-06 12:23:41','2006-02-15 22:13:14'),(3443,128,2,3995,'5.99','2005-07-06 23:43:03','2006-02-15 22:13:14'),(3444,128,1,5270,'2.99','2005-07-09 14:23:46','2006-02-15 22:13:14'),(3445,128,1,5647,'4.99','2005-07-10 07:08:40','2006-02-15 22:13:15'),(3446,128,2,5997,'4.99','2005-07-11 01:19:50','2006-02-15 22:13:15'),(3447,128,2,6186,'2.99','2005-07-11 11:26:41','2006-02-15 22:13:15'),(3448,128,2,6481,'6.99','2005-07-12 01:50:15','2006-02-15 22:13:15'),(3449,128,2,6687,'2.99','2005-07-12 12:19:23','2006-02-15 22:13:15'),(3450,128,2,7582,'4.99','2005-07-27 23:15:14','2006-02-15 22:13:15'),(3451,128,2,8415,'2.99','2005-07-29 06:52:27','2006-02-15 22:13:15'),(3452,128,2,9215,'5.99','2005-07-30 13:11:11','2006-02-15 22:13:15'),(3453,128,2,9234,'2.99','2005-07-30 13:45:54','2006-02-15 22:13:15'),(3454,128,1,9433,'5.99','2005-07-30 21:28:17','2006-02-15 22:13:15'),(3455,128,2,9858,'2.99','2005-07-31 13:02:07','2006-02-15 22:13:15'),(3456,128,1,9952,'3.99','2005-07-31 15:52:37','2006-02-15 22:13:15'),(3457,128,1,10011,'2.99','2005-07-31 18:02:41','2006-02-15 22:13:15'),(3458,128,1,10394,'2.99','2005-08-01 06:58:17','2006-02-15 22:13:15'),(3459,128,2,12731,'2.99','2005-08-18 21:55:38','2006-02-15 22:13:15'),(3460,128,2,12843,'2.99','2005-08-19 01:58:54','2006-02-15 22:13:15'),(3461,128,2,12910,'0.99','2005-08-19 04:23:13','2006-02-15 22:13:15'),(3462,128,2,13027,'0.99','2005-08-19 08:25:16','2006-02-15 22:13:15'),(3463,128,2,13181,'5.99','2005-08-19 14:00:56','2006-02-15 22:13:15'),(3464,128,1,13509,'0.99','2005-08-20 02:14:16','2006-02-15 22:13:15'),(3465,128,2,13964,'2.99','2005-08-20 18:24:26','2006-02-15 22:13:15'),(3466,128,2,14157,'0.99','2005-08-21 02:43:15','2006-02-15 22:13:15'),(3467,128,1,14925,'8.99','2005-08-22 05:16:16','2006-02-15 22:13:15'),(3468,128,1,15220,'3.99','2005-08-22 17:02:23','2006-02-15 22:13:15'),(3469,128,1,15835,'8.99','2005-08-23 15:25:27','2006-02-15 22:13:15'),(3470,129,2,1732,'0.99','2005-06-16 15:34:41','2006-02-15 22:13:15'),(3471,129,1,2727,'3.99','2005-06-19 15:02:39','2006-02-15 22:13:15'),(3472,129,2,2768,'0.99','2005-06-19 17:46:52','2006-02-15 22:13:15'),(3473,129,2,2795,'4.99','2005-06-19 18:58:53','2006-02-15 22:13:15'),(3474,129,1,3183,'4.99','2005-06-20 22:55:55','2006-02-15 22:13:15'),(3475,129,1,3219,'3.99','2005-06-21 01:43:26','2006-02-15 22:13:15'),(3476,129,1,3689,'0.99','2005-07-06 09:43:01','2006-02-15 22:13:15'),(3477,129,2,3900,'4.99','2005-07-06 19:21:28','2006-02-15 22:13:15'),(3478,129,2,3936,'0.99','2005-07-06 21:15:03','2006-02-15 22:13:15'),(3479,129,2,4256,'2.99','2005-07-07 14:14:36','2006-02-15 22:13:15'),(3480,129,1,4602,'0.99','2005-07-08 06:52:40','2006-02-15 22:13:15'),(3481,129,1,4896,'2.99','2005-07-08 20:23:15','2006-02-15 22:13:15'),(3482,129,1,4996,'0.99','2005-07-09 00:59:46','2006-02-15 22:13:15'),(3483,129,1,5127,'0.99','2005-07-09 07:25:47','2006-02-15 22:13:15'),(3484,129,2,5350,'4.99','2005-07-09 17:39:30','2006-02-15 22:13:15'),(3485,129,1,8339,'4.99','2005-07-29 04:41:13','2006-02-15 22:13:15'),(3486,129,1,8345,'2.99','2005-07-29 04:47:37','2006-02-15 22:13:15'),(3487,129,2,9823,'4.99','2005-07-31 11:49:00','2006-02-15 22:13:15'),(3488,129,1,9983,'7.99','2005-07-31 17:09:36','2006-02-15 22:13:15'),(3489,129,1,10024,'7.99','2005-07-31 18:26:36','2006-02-15 22:13:15'),(3490,129,2,10167,'5.99','2005-07-31 23:24:31','2006-02-15 22:13:15'),(3491,129,2,10395,'2.99','2005-08-01 07:08:22','2006-02-15 22:13:15'),(3492,129,1,10468,'0.99','2005-08-01 09:48:29','2006-02-15 22:13:15'),(3493,129,1,10483,'2.99','2005-08-01 10:19:45','2006-02-15 22:13:16'),(3494,129,2,10550,'2.99','2005-08-01 12:46:52','2006-02-15 22:13:16'),(3495,129,2,10816,'4.99','2005-08-01 22:48:57','2006-02-15 22:13:16'),(3496,129,2,12612,'3.99','2005-08-18 17:10:05','2006-02-15 22:13:16'),(3497,129,2,12728,'4.99','2005-08-18 21:47:48','2006-02-15 22:13:16'),(3498,129,2,13653,'10.99','2005-08-20 07:54:54','2006-02-15 22:13:16'),(3499,129,1,13915,'4.99','2005-08-20 16:42:53','2006-02-15 22:13:16'),(3500,129,1,13919,'4.99','2005-08-20 16:47:34','2006-02-15 22:13:16'),(3501,129,1,13961,'0.99','2005-08-20 18:16:34','2006-02-15 22:13:16'),(3502,129,1,14353,'0.99','2005-08-21 09:07:50','2006-02-15 22:13:16'),(3503,129,2,14968,'1.99','2005-08-22 06:46:59','2006-02-15 22:13:16'),(3504,130,1,1,'2.99','2005-05-24 22:53:30','2006-02-15 22:13:16'),(3505,130,1,746,'2.99','2005-05-29 09:25:10','2006-02-15 22:13:16'),(3506,130,1,1630,'2.99','2005-06-16 07:55:01','2006-02-15 22:13:16'),(3507,130,2,1864,'2.99','2005-06-17 01:39:47','2006-02-15 22:13:16'),(3508,130,2,2163,'2.99','2005-06-17 23:46:16','2006-02-15 22:13:16'),(3509,130,2,2292,'2.99','2005-06-18 07:37:48','2006-02-15 22:13:16'),(3510,130,1,2535,'2.99','2005-06-19 01:39:04','2006-02-15 22:13:16'),(3511,130,1,2982,'6.99','2005-06-20 08:38:29','2006-02-15 22:13:16'),(3512,130,2,4339,'4.99','2005-07-07 18:41:42','2006-02-15 22:13:16'),(3513,130,2,4485,'4.99','2005-07-08 01:07:54','2006-02-15 22:13:16'),(3514,130,1,6353,'3.99','2005-07-11 20:48:56','2006-02-15 22:13:16'),(3515,130,1,7181,'4.99','2005-07-27 08:14:34','2006-02-15 22:13:16'),(3516,130,1,7728,'0.99','2005-07-28 04:56:33','2006-02-15 22:13:16'),(3517,130,1,9452,'0.99','2005-07-30 22:19:16','2006-02-15 22:13:16'),(3518,130,2,9637,'4.99','2005-07-31 05:18:54','2006-02-15 22:13:16'),(3519,130,2,9724,'5.99','2005-07-31 08:33:08','2006-02-15 22:13:16'),(3520,130,2,10568,'2.99','2005-08-01 13:17:28','2006-02-15 22:13:16'),(3521,130,2,10645,'5.99','2005-08-01 15:52:01','2006-02-15 22:13:16'),(3522,130,1,11811,'2.99','2005-08-17 11:59:18','2006-02-15 22:13:16'),(3523,130,1,12094,'2.99','2005-08-17 22:31:04','2006-02-15 22:13:16'),(3524,130,1,12777,'6.99','2005-08-18 23:39:22','2006-02-15 22:13:16'),(3525,130,2,14111,'0.99','2005-08-21 00:59:01','2006-02-15 22:13:16'),(3526,130,2,15574,'5.99','2005-08-23 05:29:32','2006-02-15 22:13:16'),(3527,130,1,15777,'4.99','2005-08-23 13:29:08','2006-02-15 22:13:16'),(3528,131,2,55,'2.99','2005-05-25 08:26:13','2006-02-15 22:13:16'),(3529,131,1,83,'4.99','2005-05-25 12:30:15','2006-02-15 22:13:16'),(3530,131,2,944,'7.99','2005-05-30 15:26:24','2006-02-15 22:13:16'),(3531,131,1,1646,'9.99','2005-06-16 09:12:53','2006-02-15 22:13:16'),(3532,131,2,1768,'4.99','2005-06-16 18:02:06','2006-02-15 22:13:16'),(3533,131,1,3515,'2.99','2005-07-06 00:48:55','2006-02-15 22:13:16'),(3534,131,1,5233,'4.99','2005-07-09 12:44:26','2006-02-15 22:13:16'),(3535,131,1,5395,'4.99','2005-07-09 19:42:37','2006-02-15 22:13:16'),(3536,131,1,5610,'2.99','2005-07-10 05:09:52','2006-02-15 22:13:16'),(3537,131,2,5726,'2.99','2005-07-10 11:22:08','2006-02-15 22:13:16'),(3538,131,1,5874,'3.99','2005-07-10 19:02:51','2006-02-15 22:13:16'),(3539,131,1,7557,'2.99','2005-07-27 22:18:19','2006-02-15 22:13:16'),(3540,131,2,8071,'0.99','2005-07-28 17:27:48','2006-02-15 22:13:16'),(3541,131,1,8267,'6.99','2005-07-29 01:21:02','2006-02-15 22:13:17'),(3542,131,1,8570,'8.99','2005-07-29 11:40:08','2006-02-15 22:13:17'),(3543,131,1,9323,'3.99','2005-07-30 17:21:44','2006-02-15 22:13:17'),(3544,131,1,10179,'2.99','2005-07-31 23:49:54','2006-02-15 22:13:17'),(3545,131,1,10459,'4.99','2005-08-01 09:20:09','2006-02-15 22:13:17'),(3546,131,1,10861,'1.99','2005-08-02 00:12:46','2006-02-15 22:13:17'),(3547,131,2,11971,'0.99','2005-08-17 17:53:42','2006-02-15 22:13:17'),(3548,131,1,11973,'2.99','2005-08-17 17:55:58','2006-02-15 22:13:17'),(3549,131,1,12216,'0.99','2005-08-18 02:37:07','2006-02-15 22:13:17'),(3550,131,2,12263,'0.99','2005-08-18 04:16:18','2006-02-15 22:13:17'),(3551,131,1,12372,'9.99','2005-08-18 08:04:35','2006-02-15 22:13:17'),(3552,131,2,13050,'6.99','2005-08-19 09:31:23','2006-02-15 22:13:17'),(3553,131,2,13346,'7.99','2005-08-19 20:28:21','2006-02-15 22:13:17'),(3554,131,2,13353,'2.99','2005-08-19 20:53:43','2006-02-15 22:13:17'),(3555,131,1,13407,'0.99','2005-08-19 22:26:26','2006-02-15 22:13:17'),(3556,131,2,15659,'2.99','2005-08-23 08:48:43','2006-02-15 22:13:17'),(3557,131,1,16042,'2.99','2005-08-23 22:20:40','2006-02-15 22:13:17'),(3558,132,1,1843,'0.99','2005-06-16 23:53:42','2006-02-15 22:13:17'),(3559,132,1,2208,'4.99','2005-06-18 02:22:07','2006-02-15 22:13:17'),(3560,132,1,2384,'0.99','2005-06-18 15:18:49','2006-02-15 22:13:17'),(3561,132,2,2608,'2.99','2005-06-19 07:10:36','2006-02-15 22:13:17'),(3562,132,2,2924,'4.99','2005-06-20 04:20:14','2006-02-15 22:13:17'),(3563,132,1,3121,'4.99','2005-06-20 18:23:30','2006-02-15 22:13:17'),(3564,132,1,3706,'0.99','2005-07-06 10:18:01','2006-02-15 22:13:17'),(3565,132,2,3825,'2.99','2005-07-06 15:50:03','2006-02-15 22:13:17'),(3566,132,1,4168,'4.99','2005-07-07 09:37:24','2006-02-15 22:13:17'),(3567,132,1,4534,'4.99','2005-07-08 03:36:55','2006-02-15 22:13:17'),(3568,132,1,4557,'5.99','2005-07-08 04:49:15','2006-02-15 22:13:17'),(3569,132,2,4903,'0.99','2005-07-08 20:50:05','2006-02-15 22:13:17'),(3570,132,1,5391,'2.99','2005-07-09 19:28:34','2006-02-15 22:13:17'),(3571,132,2,5684,'5.99','2005-07-10 08:59:03','2006-02-15 22:13:17'),(3572,132,1,5703,'0.99','2005-07-10 10:04:15','2006-02-15 22:13:17'),(3573,132,2,5715,'1.99','2005-07-10 10:48:03','2006-02-15 22:13:17'),(3574,132,1,6239,'6.99','2005-07-11 14:20:48','2006-02-15 22:13:17'),(3575,132,1,6978,'1.99','2005-07-27 00:47:40','2006-02-15 22:13:17'),(3576,132,2,7432,'0.99','2005-07-27 17:31:40','2006-02-15 22:13:17'),(3577,132,1,7631,'1.99','2005-07-28 01:01:15','2006-02-15 22:13:17'),(3578,132,2,10243,'4.99','2005-08-01 02:18:46','2006-02-15 22:13:17'),(3579,132,1,10400,'6.99','2005-08-01 07:18:24','2006-02-15 22:13:17'),(3580,132,2,10619,'3.99','2005-08-01 15:07:04','2006-02-15 22:13:17'),(3581,132,1,10638,'6.99','2005-08-01 15:44:20','2006-02-15 22:13:17'),(3582,132,2,11140,'0.99','2005-08-02 09:27:45','2006-02-15 22:13:17'),(3583,132,2,11812,'0.99','2005-08-17 12:00:54','2006-02-15 22:13:17'),(3584,132,2,12133,'0.99','2005-08-17 23:47:16','2006-02-15 22:13:17'),(3585,132,1,15874,'4.99','2005-08-23 16:30:55','2006-02-15 22:13:17'),(3586,133,1,275,'6.99','2005-05-26 17:09:53','2006-02-15 22:13:17'),(3587,133,2,447,'2.99','2005-05-27 18:57:02','2006-02-15 22:13:17'),(3588,133,2,1522,'3.99','2005-06-16 00:17:39','2006-02-15 22:13:17'),(3589,133,2,2665,'7.99','2005-06-19 11:12:35','2006-02-15 22:13:18'),(3590,133,1,3006,'0.99','2005-06-20 10:10:29','2006-02-15 22:13:18'),(3591,133,2,3365,'0.99','2005-06-21 12:55:48','2006-02-15 22:13:18'),(3592,133,2,4506,'6.99','2005-07-08 02:22:18','2006-02-15 22:13:18'),(3593,133,2,4566,'2.99','2005-07-08 05:18:50','2006-02-15 22:13:18'),(3594,133,1,4681,'6.99','2005-07-08 10:36:03','2006-02-15 22:13:18'),(3595,133,2,4829,'2.99','2005-07-08 17:54:18','2006-02-15 22:13:18'),(3596,133,2,5063,'2.99','2005-07-09 04:37:31','2006-02-15 22:13:18'),(3597,133,1,6157,'4.99','2005-07-11 09:48:16','2006-02-15 22:13:18'),(3598,133,1,6609,'3.99','2005-07-12 08:19:41','2006-02-15 22:13:18'),(3599,133,1,7177,'2.99','2005-07-27 08:07:39','2006-02-15 22:13:18'),(3600,133,1,7400,'0.99','2005-07-27 16:16:37','2006-02-15 22:13:18'),(3601,133,2,8389,'6.99','2005-07-29 05:50:09','2006-02-15 22:13:18'),(3602,133,2,9139,'2.99','2005-07-30 10:11:52','2006-02-15 22:13:18'),(3603,133,1,9175,'0.99','2005-07-30 11:47:48','2006-02-15 22:13:18'),(3604,133,2,9671,'0.99','2005-07-31 06:33:41','2006-02-15 22:13:18'),(3605,133,1,10665,'0.99','2005-08-01 16:56:17','2006-02-15 22:13:18'),(3606,133,1,12419,'4.99','2005-08-18 10:01:48','2006-02-15 22:13:18'),(3607,133,1,12834,'4.99','2005-08-19 01:47:30','2006-02-15 22:13:18'),(3608,133,2,13323,'2.99','2005-08-19 19:48:07','2006-02-15 22:13:18'),(3609,133,1,13455,'1.99','2005-08-20 00:32:17','2006-02-15 22:13:18'),(3610,133,2,13910,'2.99','2005-08-20 16:30:49','2006-02-15 22:13:18'),(3611,133,2,15080,'0.99','2005-08-22 11:11:51','2006-02-15 22:13:18'),(3612,133,1,16009,'6.99','2005-08-23 21:07:59','2006-02-15 22:13:18'),(3613,134,1,366,'3.99','2005-05-27 07:33:54','2006-02-15 22:13:18'),(3614,134,2,798,'0.99','2005-05-29 17:23:43','2006-02-15 22:13:18'),(3615,134,1,814,'6.99','2005-05-29 20:16:12','2006-02-15 22:13:18'),(3616,134,2,1124,'4.99','2005-05-31 16:49:34','2006-02-15 22:13:18'),(3617,134,1,1618,'9.99','2005-06-16 07:08:38','2006-02-15 22:13:18'),(3618,134,2,1784,'0.99','2005-06-16 19:25:32','2006-02-15 22:13:18'),(3619,134,2,1881,'0.99','2005-06-17 03:09:56','2006-02-15 22:13:18'),(3620,134,1,3267,'5.99','2005-06-21 04:55:21','2006-02-15 22:13:18'),(3621,134,1,5315,'4.99','2005-07-09 16:09:19','2006-02-15 22:13:18'),(3622,134,2,6226,'2.99','2005-07-11 13:48:11','2006-02-15 22:13:18'),(3623,134,1,6659,'0.99','2005-07-12 11:18:05','2006-02-15 22:13:18'),(3624,134,2,7516,'2.99','2005-07-27 20:55:28','2006-02-15 22:13:18'),(3625,134,2,7965,'4.99','2005-07-28 13:52:57','2006-02-15 22:13:18'),(3626,134,2,8650,'1.99','2005-07-29 14:59:04','2006-02-15 22:13:18'),(3627,134,1,10864,'6.99','2005-08-02 00:18:59','2006-02-15 22:13:18'),(3628,134,1,11280,'3.99','2005-08-02 14:34:33','2006-02-15 22:13:18'),(3629,134,1,11283,'4.99','2005-08-02 14:39:46','2006-02-15 22:13:18'),(3630,134,2,11482,'4.99','2005-08-02 22:24:31','2006-02-15 22:13:18'),(3631,134,1,12754,'7.99','2005-08-18 22:37:41','2006-02-15 22:13:18'),(3632,134,2,12987,'2.99','2005-08-19 07:11:44','2006-02-15 22:13:19'),(3633,134,2,13006,'2.99','2005-08-19 07:47:16','2006-02-15 22:13:19'),(3634,134,2,14265,'2.99','2005-08-21 06:20:14','2006-02-15 22:13:19'),(3635,134,2,15963,'2.99','2005-08-23 19:42:46','2006-02-15 22:13:19'),(3636,135,1,78,'5.99','2005-05-25 11:35:18','2006-02-15 22:13:19'),(3637,135,2,753,'3.99','2005-05-29 10:16:42','2006-02-15 22:13:19'),(3638,135,2,1272,'0.99','2005-06-15 07:42:58','2006-02-15 22:13:19'),(3639,135,2,1671,'1.99','2005-06-16 10:30:22','2006-02-15 22:13:19'),(3640,135,2,2941,'2.99','2005-06-20 05:22:18','2006-02-15 22:13:19'),(3641,135,1,4102,'0.99','2005-07-07 06:25:19','2006-02-15 22:13:19'),(3642,135,2,5054,'7.99','2005-07-09 04:01:02','2006-02-15 22:13:19'),(3643,135,1,5541,'0.99','2005-07-10 02:44:27','2006-02-15 22:13:19'),(3644,135,1,6117,'3.99','2005-07-11 07:39:38','2006-02-15 22:13:19'),(3645,135,1,6461,'3.99','2005-07-12 01:14:03','2006-02-15 22:13:19'),(3646,135,1,6817,'3.99','2005-07-12 18:19:57','2006-02-15 22:13:19'),(3647,135,2,7297,'4.99','2005-07-27 12:39:48','2006-02-15 22:13:19'),(3648,135,1,7437,'0.99','2005-07-27 17:39:18','2006-02-15 22:13:19'),(3649,135,1,7554,'7.99','2005-07-27 22:12:41','2006-02-15 22:13:19'),(3650,135,1,7734,'0.99','2005-07-28 05:08:44','2006-02-15 22:13:19'),(3651,135,1,8315,'0.99','2005-07-29 03:37:07','2006-02-15 22:13:19'),(3652,135,2,8885,'7.99','2005-07-30 00:36:26','2006-02-15 22:13:19'),(3653,135,1,8987,'6.99','2005-07-30 04:37:36','2006-02-15 22:13:19'),(3654,135,2,10091,'4.99','2005-07-31 20:23:13','2006-02-15 22:13:19'),(3655,135,2,10471,'0.99','2005-08-01 09:52:37','2006-02-15 22:13:19'),(3656,135,1,10611,'2.99','2005-08-01 14:53:52','2006-02-15 22:13:19'),(3657,135,1,10698,'3.99','2005-08-01 18:24:41','2006-02-15 22:13:19'),(3658,135,2,11194,'5.99','2005-08-02 11:35:53','2006-02-15 22:13:19'),(3659,135,1,11704,'7.99','2005-08-17 07:21:22','2006-02-15 22:13:19'),(3660,135,1,12249,'2.99','2005-08-18 03:53:34','2006-02-15 22:13:19'),(3661,135,1,13035,'0.99','2005-08-19 08:46:45','2006-02-15 22:13:19'),(3662,135,1,14005,'0.99','2005-08-20 20:19:05','2006-02-15 22:13:19'),(3663,135,2,14136,'5.99','2005-08-21 01:57:26','2006-02-15 22:13:19'),(3664,135,2,15908,'2.99','2005-08-23 17:42:00','2006-02-15 22:13:19'),(3665,135,1,13390,'0.99','2006-02-14 15:16:03','2006-02-15 22:13:19'),(3666,136,2,1150,'2.99','2005-05-31 21:20:09','2006-02-15 22:13:19'),(3667,136,2,2104,'2.99','2005-06-17 19:14:30','2006-02-15 22:13:19'),(3668,136,1,4927,'0.99','2005-07-08 22:05:35','2006-02-15 22:13:19'),(3669,136,1,5627,'3.99','2005-07-10 05:51:12','2006-02-15 22:13:19'),(3670,136,2,6142,'3.99','2005-07-11 08:54:09','2006-02-15 22:13:19'),(3671,136,1,6585,'8.99','2005-07-12 06:50:52','2006-02-15 22:13:19'),(3672,136,2,9319,'0.99','2005-07-30 17:15:27','2006-02-15 22:13:19'),(3673,136,2,9764,'5.99','2005-07-31 09:42:58','2006-02-15 22:13:19'),(3674,136,2,11992,'10.99','2005-08-17 18:27:22','2006-02-15 22:13:19'),(3675,136,1,12287,'5.99','2005-08-18 04:58:06','2006-02-15 22:13:19'),(3676,136,2,12539,'0.99','2005-08-18 14:10:09','2006-02-15 22:13:19'),(3677,136,2,13992,'4.99','2005-08-20 19:30:35','2006-02-15 22:13:19'),(3678,136,2,14379,'0.99','2005-08-21 09:53:03','2006-02-15 22:13:19'),(3679,136,1,14437,'2.99','2005-08-21 11:48:32','2006-02-15 22:13:19'),(3680,136,1,15439,'4.99','2005-08-23 00:34:28','2006-02-15 22:13:20'),(3681,137,1,925,'2.99','2005-05-30 12:13:52','2006-02-15 22:13:20'),(3682,137,1,2469,'6.99','2005-06-18 20:24:23','2006-02-15 22:13:20'),(3683,137,1,2785,'2.99','2005-06-19 18:43:57','2006-02-15 22:13:20'),(3684,137,2,3058,'3.99','2005-06-20 13:28:35','2006-02-15 22:13:20'),(3685,137,1,3436,'5.99','2005-06-21 19:16:09','2006-02-15 22:13:20'),(3686,137,2,3589,'4.99','2005-07-06 04:30:18','2006-02-15 22:13:20'),(3687,137,2,3676,'5.99','2005-07-06 09:10:37','2006-02-15 22:13:20'),(3688,137,2,3874,'6.99','2005-07-06 18:06:12','2006-02-15 22:13:20'),(3689,137,1,4332,'6.99','2005-07-07 18:25:26','2006-02-15 22:13:20'),(3690,137,2,4474,'3.99','2005-07-08 00:26:56','2006-02-15 22:13:20'),(3691,137,1,5106,'2.99','2005-07-09 06:40:24','2006-02-15 22:13:20'),(3692,137,1,5443,'3.99','2005-07-09 21:56:09','2006-02-15 22:13:20'),(3693,137,1,5804,'2.99','2005-07-10 15:06:31','2006-02-15 22:13:20'),(3694,137,1,6039,'6.99','2005-07-11 03:12:19','2006-02-15 22:13:20'),(3695,137,2,6200,'0.99','2005-07-11 12:16:42','2006-02-15 22:13:20'),(3696,137,1,8028,'8.99','2005-07-28 16:11:15','2006-02-15 22:13:20'),(3697,137,1,8106,'4.99','2005-07-28 19:02:46','2006-02-15 22:13:20'),(3698,137,2,8954,'2.99','2005-07-30 03:25:51','2006-02-15 22:13:20'),(3699,137,1,9002,'4.99','2005-07-30 05:02:21','2006-02-15 22:13:20'),(3700,137,2,9200,'4.99','2005-07-30 12:39:52','2006-02-15 22:13:20'),(3701,137,2,9466,'7.99','2005-07-30 22:44:36','2006-02-15 22:13:20'),(3702,137,1,9709,'4.99','2005-07-31 08:04:55','2006-02-15 22:13:20'),(3703,137,1,9789,'2.99','2005-07-31 10:30:25','2006-02-15 22:13:20'),(3704,137,1,10175,'6.99','2005-07-31 23:40:11','2006-02-15 22:13:20'),(3705,137,2,10595,'4.99','2005-08-01 14:16:28','2006-02-15 22:13:20'),(3706,137,2,10842,'5.99','2005-08-01 23:41:24','2006-02-15 22:13:20'),(3707,137,2,11057,'4.99','2005-08-02 06:38:19','2006-02-15 22:13:20'),(3708,137,1,11281,'3.99','2005-08-02 14:35:01','2006-02-15 22:13:20'),(3709,137,2,11732,'3.99','2005-08-17 08:29:46','2006-02-15 22:13:20'),(3710,137,1,12078,'2.99','2005-08-17 22:00:22','2006-02-15 22:13:20'),(3711,137,1,13148,'0.99','2005-08-19 12:55:30','2006-02-15 22:13:20'),(3712,137,1,13472,'5.99','2005-08-20 01:03:31','2006-02-15 22:13:20'),(3713,137,1,13776,'5.99','2005-08-20 11:57:06','2006-02-15 22:13:20'),(3714,137,1,14754,'7.99','2005-08-21 23:17:26','2006-02-15 22:13:20'),(3715,137,2,15082,'7.99','2005-08-22 11:17:06','2006-02-15 22:13:20'),(3716,137,1,15133,'0.99','2005-08-22 13:17:43','2006-02-15 22:13:20'),(3717,137,2,15537,'2.99','2005-08-23 04:00:30','2006-02-15 22:13:20'),(3718,137,2,15889,'4.99','2005-08-23 16:57:43','2006-02-15 22:13:20'),(3719,137,1,16030,'9.99','2005-08-23 21:56:04','2006-02-15 22:13:20'),(3720,138,1,523,'2.99','2005-05-28 03:53:26','2006-02-15 22:13:20'),(3721,138,1,1020,'0.99','2005-05-31 03:06:08','2006-02-15 22:13:20'),(3722,138,2,1316,'0.99','2005-06-15 10:26:23','2006-02-15 22:13:20'),(3723,138,2,2038,'0.99','2005-06-17 14:00:51','2006-02-15 22:13:20'),(3724,138,1,2731,'7.99','2005-06-19 15:14:55','2006-02-15 22:13:20'),(3725,138,2,3481,'2.99','2005-07-05 23:13:07','2006-02-15 22:13:20'),(3726,138,1,5378,'0.99','2005-07-09 19:05:56','2006-02-15 22:13:20'),(3727,138,1,5600,'1.99','2005-07-10 04:55:45','2006-02-15 22:13:20'),(3728,138,1,5679,'4.99','2005-07-10 08:44:02','2006-02-15 22:13:21'),(3729,138,1,6458,'2.99','2005-07-12 01:08:52','2006-02-15 22:13:21'),(3730,138,1,6892,'0.99','2005-07-12 21:10:04','2006-02-15 22:13:21'),(3731,138,1,7208,'2.99','2005-07-27 09:16:28','2006-02-15 22:13:21'),(3732,138,1,7754,'2.99','2005-07-28 06:10:55','2006-02-15 22:13:21'),(3733,138,2,8123,'4.99','2005-07-28 19:28:23','2006-02-15 22:13:21'),(3734,138,2,8160,'3.99','2005-07-28 21:10:30','2006-02-15 22:13:21'),(3735,138,1,8424,'3.99','2005-07-29 07:06:03','2006-02-15 22:13:21'),(3736,138,2,9259,'1.99','2005-07-30 14:37:44','2006-02-15 22:13:21'),(3737,138,1,9619,'0.99','2005-07-31 04:17:02','2006-02-15 22:13:21'),(3738,138,1,9947,'9.99','2005-07-31 15:49:40','2006-02-15 22:13:21'),(3739,138,1,10110,'0.99','2005-07-31 21:06:12','2006-02-15 22:13:21'),(3740,138,2,10190,'4.99','2005-08-01 00:27:53','2006-02-15 22:13:21'),(3741,138,1,10268,'3.99','2005-08-01 03:08:56','2006-02-15 22:13:21'),(3742,138,1,10431,'5.99','2005-08-01 08:41:54','2006-02-15 22:13:21'),(3743,138,1,11015,'4.99','2005-08-02 05:13:00','2006-02-15 22:13:21'),(3744,138,1,11088,'0.99','2005-08-02 07:48:31','2006-02-15 22:13:21'),(3745,138,1,11463,'0.99','2005-08-02 21:37:36','2006-02-15 22:13:21'),(3746,138,2,12550,'2.99','2005-08-18 14:40:38','2006-02-15 22:13:21'),(3747,138,2,12873,'2.99','2005-08-19 03:05:41','2006-02-15 22:13:21'),(3748,138,1,14194,'1.99','2005-08-21 03:40:11','2006-02-15 22:13:21'),(3749,138,2,14432,'4.99','2005-08-21 11:36:15','2006-02-15 22:13:21'),(3750,138,2,14486,'4.99','2005-08-21 13:52:54','2006-02-15 22:13:21'),(3751,138,1,14987,'4.99','2005-08-22 07:41:08','2006-02-15 22:13:21'),(3752,138,1,15424,'2.99','2005-08-23 00:03:01','2006-02-15 22:13:21'),(3753,138,1,15501,'0.99','2005-08-23 02:39:56','2006-02-15 22:13:21'),(3754,139,2,1169,'2.99','2005-06-14 23:42:56','2006-02-15 22:13:21'),(3755,139,1,1736,'2.99','2005-06-16 15:52:32','2006-02-15 22:13:21'),(3756,139,1,2659,'0.99','2005-06-19 10:47:42','2006-02-15 22:13:21'),(3757,139,2,2718,'7.99','2005-06-19 14:49:42','2006-02-15 22:13:21'),(3758,139,2,4660,'0.99','2005-07-08 09:54:47','2006-02-15 22:13:21'),(3759,139,2,4663,'2.99','2005-07-08 09:59:18','2006-02-15 22:13:21'),(3760,139,2,5092,'2.99','2005-07-09 05:57:39','2006-02-15 22:13:21'),(3761,139,2,5265,'7.99','2005-07-09 14:15:01','2006-02-15 22:13:21'),(3762,139,1,5390,'6.99','2005-07-09 19:26:22','2006-02-15 22:13:21'),(3763,139,1,5494,'6.99','2005-07-10 00:15:00','2006-02-15 22:13:21'),(3764,139,1,6496,'6.99','2005-07-12 02:57:39','2006-02-15 22:13:21'),(3765,139,2,6740,'0.99','2005-07-12 14:22:08','2006-02-15 22:13:21'),(3766,139,1,7369,'0.99','2005-07-27 15:07:58','2006-02-15 22:13:21'),(3767,139,2,7767,'5.99','2005-07-28 06:42:02','2006-02-15 22:13:21'),(3768,139,2,9415,'2.99','2005-07-30 20:48:31','2006-02-15 22:13:21'),(3769,139,2,9920,'4.99','2005-07-31 14:57:13','2006-02-15 22:13:21'),(3770,139,1,10900,'2.99','2005-08-02 01:34:26','2006-02-15 22:13:21'),(3771,139,1,12859,'6.99','2005-08-19 02:23:23','2006-02-15 22:13:21'),(3772,139,2,13401,'3.99','2005-08-19 22:16:16','2006-02-15 22:13:21'),(3773,139,2,14736,'5.99','2005-08-21 22:25:53','2006-02-15 22:13:21'),(3774,139,1,14788,'2.99','2005-08-22 00:27:59','2006-02-15 22:13:21'),(3775,139,1,15024,'2.99','2005-08-22 08:57:10','2006-02-15 22:13:22'),(3776,139,2,15029,'2.99','2005-08-22 09:04:53','2006-02-15 22:13:22'),(3777,139,1,15062,'2.99','2005-08-22 10:34:39','2006-02-15 22:13:22'),(3778,139,1,15218,'9.99','2005-08-22 16:59:05','2006-02-15 22:13:22'),(3779,139,1,15471,'3.99','2005-08-23 01:38:48','2006-02-15 22:13:22'),(3780,139,1,15743,'0.99','2005-08-23 12:12:05','2006-02-15 22:13:22'),(3781,140,1,1586,'4.99','2005-06-16 04:51:18','2006-02-15 22:13:22'),(3782,140,1,1687,'2.99','2005-06-16 12:09:20','2006-02-15 22:13:22'),(3783,140,2,2332,'6.99','2005-06-18 10:53:51','2006-02-15 22:13:22'),(3784,140,2,3171,'0.99','2005-06-20 22:15:47','2006-02-15 22:13:22'),(3785,140,1,6286,'4.99','2005-07-11 16:55:35','2006-02-15 22:13:22'),(3786,140,1,6407,'9.99','2005-07-11 23:02:19','2006-02-15 22:13:22'),(3787,140,2,6571,'0.99','2005-07-12 05:51:47','2006-02-15 22:13:22'),(3788,140,1,6918,'2.99','2005-07-12 22:30:29','2006-02-15 22:13:22'),(3789,140,1,7170,'4.99','2005-07-27 07:58:26','2006-02-15 22:13:22'),(3790,140,1,9094,'4.99','2005-07-30 08:35:10','2006-02-15 22:13:22'),(3791,140,1,9404,'0.99','2005-07-30 20:21:35','2006-02-15 22:13:22'),(3792,140,1,10342,'6.99','2005-08-01 05:11:11','2006-02-15 22:13:22'),(3793,140,2,11430,'3.99','2005-08-02 20:04:36','2006-02-15 22:13:22'),(3794,140,1,12086,'4.99','2005-08-17 22:20:01','2006-02-15 22:13:22'),(3795,140,1,12675,'4.99','2005-08-18 19:34:02','2006-02-15 22:13:22'),(3796,140,2,13053,'10.99','2005-08-19 09:31:48','2006-02-15 22:13:22'),(3797,140,1,15261,'2.99','2005-08-22 18:24:34','2006-02-15 22:13:22'),(3798,140,1,15852,'2.99','2005-08-23 15:47:02','2006-02-15 22:13:22'),(3799,141,2,930,'2.99','2005-05-30 12:44:57','2006-02-15 22:13:22'),(3800,141,2,1242,'7.99','2005-06-15 05:05:07','2006-02-15 22:13:22'),(3801,141,2,2895,'7.99','2005-06-20 02:26:31','2006-02-15 22:13:22'),(3802,141,1,3434,'4.99','2005-06-21 19:08:28','2006-02-15 22:13:22'),(3803,141,1,4057,'1.99','2005-07-07 04:00:20','2006-02-15 22:13:22'),(3804,141,2,4297,'0.99','2005-07-07 16:24:09','2006-02-15 22:13:22'),(3805,141,1,4656,'5.99','2005-07-08 09:50:10','2006-02-15 22:13:22'),(3806,141,2,5062,'2.99','2005-07-09 04:36:49','2006-02-15 22:13:22'),(3807,141,1,5769,'0.99','2005-07-10 13:17:58','2006-02-15 22:13:22'),(3808,141,2,6979,'4.99','2005-07-27 00:49:53','2006-02-15 22:13:22'),(3809,141,2,7878,'2.99','2005-07-28 10:27:10','2006-02-15 22:13:22'),(3810,141,1,8434,'4.99','2005-07-29 07:20:14','2006-02-15 22:13:22'),(3811,141,2,9073,'7.99','2005-07-30 07:49:56','2006-02-15 22:13:22'),(3812,141,1,9584,'4.99','2005-07-31 03:05:48','2006-02-15 22:13:22'),(3813,141,2,9683,'2.99','2005-07-31 06:47:13','2006-02-15 22:13:22'),(3814,141,1,10287,'3.99','2005-08-01 03:37:01','2006-02-15 22:13:22'),(3815,141,1,10379,'1.99','2005-08-01 06:34:29','2006-02-15 22:13:22'),(3816,141,1,10798,'4.99','2005-08-01 22:03:10','2006-02-15 22:13:22'),(3817,141,1,11411,'2.99','2005-08-02 19:29:47','2006-02-15 22:13:22'),(3818,141,1,11412,'5.99','2005-08-02 19:32:51','2006-02-15 22:13:22'),(3819,141,1,12032,'5.99','2005-08-17 20:14:26','2006-02-15 22:13:23'),(3820,141,1,12093,'2.99','2005-08-17 22:28:40','2006-02-15 22:13:23'),(3821,141,2,12107,'3.99','2005-08-17 22:56:24','2006-02-15 22:13:23'),(3822,141,2,12353,'2.99','2005-08-18 07:33:08','2006-02-15 22:13:23'),(3823,141,1,13000,'0.99','2005-08-19 07:36:42','2006-02-15 22:13:23'),(3824,141,2,13169,'2.99','2005-08-19 13:43:35','2006-02-15 22:13:23'),(3825,141,2,13470,'4.99','2005-08-20 01:01:16','2006-02-15 22:13:23'),(3826,141,2,14059,'7.99','2005-08-20 22:24:44','2006-02-15 22:13:23'),(3827,141,1,14112,'2.99','2005-08-21 01:00:46','2006-02-15 22:13:23'),(3828,141,1,15013,'4.99','2005-08-22 08:42:45','2006-02-15 22:13:23'),(3829,141,1,15309,'0.99','2005-08-22 19:54:52','2006-02-15 22:13:23'),(3830,141,1,15964,'2.99','2005-08-23 19:45:25','2006-02-15 22:13:23'),(3831,142,2,11,'8.99','2005-05-25 00:09:02','2006-02-15 22:13:23'),(3832,142,1,148,'0.99','2005-05-26 00:25:23','2006-02-15 22:13:23'),(3833,142,1,575,'9.99','2005-05-28 10:56:09','2006-02-15 22:13:23'),(3834,142,1,1268,'1.99','2005-06-15 07:29:30','2006-02-15 22:13:23'),(3835,142,1,3214,'2.99','2005-06-21 01:08:26','2006-02-15 22:13:23'),(3836,142,2,3492,'2.99','2005-07-05 23:44:37','2006-02-15 22:13:23'),(3837,142,2,4497,'4.99','2005-07-08 01:51:32','2006-02-15 22:13:23'),(3838,142,1,4531,'4.99','2005-07-08 03:27:59','2006-02-15 22:13:23'),(3839,142,1,6522,'0.99','2005-07-12 04:11:58','2006-02-15 22:13:23'),(3840,142,1,7764,'2.99','2005-07-28 06:40:05','2006-02-15 22:13:23'),(3841,142,2,8513,'2.99','2005-07-29 09:52:59','2006-02-15 22:13:23'),(3842,142,2,8623,'4.99','2005-07-29 13:55:11','2006-02-15 22:13:23'),(3843,142,1,9020,'7.99','2005-07-30 05:31:27','2006-02-15 22:13:23'),(3844,142,1,9131,'2.99','2005-07-30 09:55:57','2006-02-15 22:13:23'),(3845,142,1,9419,'5.99','2005-07-30 21:04:59','2006-02-15 22:13:23'),(3846,142,2,10934,'5.99','2005-08-02 02:52:18','2006-02-15 22:13:23'),(3847,142,2,11244,'5.99','2005-08-02 13:33:24','2006-02-15 22:13:23'),(3848,142,1,12964,'0.99','2005-08-19 06:29:13','2006-02-15 22:13:23'),(3849,142,1,13044,'0.99','2005-08-19 09:14:31','2006-02-15 22:13:23'),(3850,142,2,13745,'0.99','2005-08-20 10:53:49','2006-02-15 22:13:23'),(3851,142,1,13959,'0.99','2005-08-20 18:16:21','2006-02-15 22:13:23'),(3852,142,2,14116,'4.99','2005-08-21 01:11:17','2006-02-15 22:13:23'),(3853,142,2,14813,'0.99','2005-08-22 01:11:37','2006-02-15 22:13:23'),(3854,142,2,15333,'2.99','2005-08-22 20:44:06','2006-02-15 22:13:23'),(3855,142,1,15477,'1.99','2005-08-23 01:46:35','2006-02-15 22:13:23'),(3856,142,1,15454,'0.99','2006-02-14 15:16:03','2006-02-15 22:13:23'),(3857,143,1,221,'2.99','2005-05-26 10:14:09','2006-02-15 22:13:23'),(3858,143,1,312,'2.99','2005-05-26 22:52:19','2006-02-15 22:13:23'),(3859,143,2,1898,'1.99','2005-06-17 04:28:11','2006-02-15 22:13:23'),(3860,143,1,1942,'4.99','2005-06-17 07:43:39','2006-02-15 22:13:23'),(3861,143,2,2251,'3.99','2005-06-18 05:05:08','2006-02-15 22:13:24'),(3862,143,1,2574,'0.99','2005-06-19 04:23:52','2006-02-15 22:13:24'),(3863,143,1,2588,'4.99','2005-06-19 05:20:31','2006-02-15 22:13:24'),(3864,143,1,4031,'7.99','2005-07-07 02:32:07','2006-02-15 22:13:24'),(3865,143,2,4221,'0.99','2005-07-07 12:18:57','2006-02-15 22:13:24'),(3866,143,1,4585,'7.99','2005-07-08 06:11:58','2006-02-15 22:13:24'),(3867,143,2,6076,'6.99','2005-07-11 05:05:30','2006-02-15 22:13:24'),(3868,143,2,6207,'4.99','2005-07-11 12:34:24','2006-02-15 22:13:24'),(3869,143,1,8312,'0.99','2005-07-29 03:32:38','2006-02-15 22:13:24'),(3870,143,1,8335,'0.99','2005-07-29 04:18:25','2006-02-15 22:13:24'),(3871,143,2,9889,'1.99','2005-07-31 14:02:50','2006-02-15 22:13:24'),(3872,143,1,10118,'0.99','2005-07-31 21:16:31','2006-02-15 22:13:24'),(3873,143,1,11278,'6.99','2005-08-02 14:29:43','2006-02-15 22:13:24'),(3874,143,2,11651,'6.99','2005-08-17 05:02:25','2006-02-15 22:13:24'),(3875,143,1,12408,'2.99','2005-08-18 09:40:38','2006-02-15 22:13:24'),(3876,143,2,13835,'4.99','2005-08-20 14:06:33','2006-02-15 22:13:24'),(3877,143,1,15250,'5.99','2005-08-22 18:03:11','2006-02-15 22:13:24'),(3878,143,1,16029,'4.99','2005-08-23 21:54:02','2006-02-15 22:13:24'),(3879,144,1,323,'2.99','2005-05-27 00:49:27','2006-02-15 22:13:24'),(3880,144,2,345,'2.99','2005-05-27 04:32:25','2006-02-15 22:13:24'),(3881,144,1,1814,'5.99','2005-06-16 21:15:22','2006-02-15 22:13:24'),(3882,144,1,1943,'0.99','2005-06-17 07:49:17','2006-02-15 22:13:24'),(3883,144,1,2756,'4.99','2005-06-19 16:57:42','2006-02-15 22:13:24'),(3884,144,2,3019,'4.99','2005-06-20 11:11:52','2006-02-15 22:13:24'),(3885,144,1,3145,'2.99','2005-06-20 20:21:17','2006-02-15 22:13:24'),(3886,144,1,3321,'2.99','2005-06-21 08:33:26','2006-02-15 22:13:24'),(3887,144,1,4726,'6.99','2005-07-08 12:50:54','2006-02-15 22:13:24'),(3888,144,2,4818,'3.99','2005-07-08 17:18:22','2006-02-15 22:13:24'),(3889,144,2,5049,'0.99','2005-07-09 03:54:12','2006-02-15 22:13:24'),(3890,144,2,5374,'8.99','2005-07-09 18:52:08','2006-02-15 22:13:24'),(3891,144,2,5408,'7.99','2005-07-09 20:16:51','2006-02-15 22:13:24'),(3892,144,2,5526,'7.99','2005-07-10 02:04:03','2006-02-15 22:13:24'),(3893,144,2,6614,'7.99','2005-07-12 08:33:49','2006-02-15 22:13:24'),(3894,144,2,6791,'9.99','2005-07-12 16:35:07','2006-02-15 22:13:24'),(3895,144,2,7378,'5.99','2005-07-27 15:31:33','2006-02-15 22:13:24'),(3896,144,2,7566,'2.99','2005-07-27 22:34:45','2006-02-15 22:13:24'),(3897,144,1,7830,'0.99','2005-07-28 08:43:49','2006-02-15 22:13:24'),(3898,144,1,7858,'3.99','2005-07-28 09:50:18','2006-02-15 22:13:24'),(3899,144,2,8459,'5.99','2005-07-29 08:05:40','2006-02-15 22:13:24'),(3900,144,1,8983,'0.99','2005-07-30 04:31:08','2006-02-15 22:13:24'),(3901,144,1,9034,'7.99','2005-07-30 06:10:58','2006-02-15 22:13:24'),(3902,144,1,9098,'3.99','2005-07-30 08:44:21','2006-02-15 22:13:25'),(3903,144,2,9174,'4.99','2005-07-30 11:42:10','2006-02-15 22:13:25'),(3904,144,2,9714,'0.99','2005-07-31 08:15:32','2006-02-15 22:13:25'),(3905,144,1,10302,'0.99','2005-08-01 04:12:08','2006-02-15 22:13:25'),(3906,144,1,10593,'4.99','2005-08-01 14:13:19','2006-02-15 22:13:25'),(3907,144,1,10740,'5.99','2005-08-01 19:50:32','2006-02-15 22:13:25'),(3908,144,1,10951,'4.99','2005-08-02 03:26:35','2006-02-15 22:13:25'),(3909,144,1,11228,'2.99','2005-08-02 12:55:23','2006-02-15 22:13:25'),(3910,144,2,11476,'6.99','2005-08-02 22:03:47','2006-02-15 22:13:25'),(3911,144,1,11534,'7.99','2005-08-17 00:35:27','2006-02-15 22:13:25'),(3912,144,1,11859,'4.99','2005-08-17 13:51:20','2006-02-15 22:13:25'),(3913,144,2,12087,'2.99','2005-08-17 22:20:12','2006-02-15 22:13:25'),(3914,144,2,12733,'2.99','2005-08-18 21:59:00','2006-02-15 22:13:25'),(3915,144,1,12858,'3.99','2005-08-19 02:22:16','2006-02-15 22:13:25'),(3916,144,2,12980,'6.99','2005-08-19 07:03:14','2006-02-15 22:13:25'),(3917,144,2,13881,'2.99','2005-08-20 15:18:55','2006-02-15 22:13:25'),(3918,144,2,14159,'2.99','2005-08-21 02:45:58','2006-02-15 22:13:25'),(3919,144,1,15017,'1.99','2005-08-22 08:47:44','2006-02-15 22:13:25'),(3920,144,1,15753,'7.99','2005-08-23 12:43:30','2006-02-15 22:13:25'),(3921,145,1,500,'0.99','2005-05-28 01:05:25','2006-02-15 22:13:25'),(3922,145,2,2271,'4.99','2005-06-18 06:29:52','2006-02-15 22:13:25'),(3923,145,2,2614,'0.99','2005-06-19 07:28:11','2006-02-15 22:13:25'),(3924,145,1,3647,'5.99','2005-07-06 07:29:17','2006-02-15 22:13:25'),(3925,145,2,4201,'8.99','2005-07-07 11:19:51','2006-02-15 22:13:25'),(3926,145,1,4364,'4.99','2005-07-07 19:46:51','2006-02-15 22:13:25'),(3927,145,2,4405,'6.99','2005-07-07 21:33:16','2006-02-15 22:13:26'),(3928,145,1,4470,'2.99','2005-07-08 00:20:57','2006-02-15 22:13:26'),(3929,145,2,4817,'2.99','2005-07-08 17:17:31','2006-02-15 22:13:26'),(3930,145,2,6056,'2.99','2005-07-11 04:01:27','2006-02-15 22:13:26'),(3931,145,1,6339,'1.99','2005-07-11 19:45:32','2006-02-15 22:13:26'),(3932,145,2,6378,'0.99','2005-07-11 21:45:23','2006-02-15 22:13:26'),(3933,145,2,7061,'2.99','2005-07-27 03:51:10','2006-02-15 22:13:26'),(3934,145,1,7529,'7.99','2005-07-27 21:18:08','2006-02-15 22:13:26'),(3935,145,2,7954,'0.99','2005-07-28 13:25:05','2006-02-15 22:13:26'),(3936,145,1,8380,'0.99','2005-07-29 05:31:29','2006-02-15 22:13:26'),(3937,145,1,9156,'2.99','2005-07-30 11:04:55','2006-02-15 22:13:26'),(3938,145,2,9576,'0.99','2005-07-31 02:52:59','2006-02-15 22:13:26'),(3939,145,2,10799,'4.99','2005-08-01 22:03:31','2006-02-15 22:13:26'),(3940,145,2,11904,'5.99','2005-08-17 15:39:26','2006-02-15 22:13:26'),(3941,145,2,11954,'2.99','2005-08-17 17:18:36','2006-02-15 22:13:26'),(3942,145,1,12637,'2.99','2005-08-18 18:06:53','2006-02-15 22:13:26'),(3943,145,2,12785,'2.99','2005-08-19 00:05:49','2006-02-15 22:13:26'),(3944,145,2,13012,'7.99','2005-08-19 07:54:59','2006-02-15 22:13:26'),(3945,145,1,13164,'3.99','2005-08-19 13:30:55','2006-02-15 22:13:26'),(3946,145,2,13272,'0.99','2005-08-19 17:49:13','2006-02-15 22:13:26'),(3947,145,2,14044,'5.99','2005-08-20 21:48:38','2006-02-15 22:13:26'),(3948,145,2,14389,'6.99','2005-08-21 10:15:20','2006-02-15 22:13:26'),(3949,146,2,762,'7.99','2005-05-29 11:15:51','2006-02-15 22:13:26'),(3950,146,1,1073,'4.99','2005-05-31 09:55:04','2006-02-15 22:13:26'),(3951,146,2,1209,'7.99','2005-06-15 02:31:12','2006-02-15 22:13:26'),(3952,146,2,1724,'1.99','2005-06-16 15:15:43','2006-02-15 22:13:26'),(3953,146,2,2099,'2.99','2005-06-17 18:47:26','2006-02-15 22:13:26'),(3954,146,1,2242,'3.99','2005-06-18 04:32:28','2006-02-15 22:13:26'),(3955,146,1,2342,'2.99','2005-06-18 11:42:40','2006-02-15 22:13:26'),(3956,146,1,2800,'0.99','2005-06-19 19:15:56','2006-02-15 22:13:26'),(3957,146,1,3131,'4.99','2005-06-20 19:08:00','2006-02-15 22:13:26'),(3958,146,1,4849,'6.99','2005-07-08 18:34:34','2006-02-15 22:13:26'),(3959,146,2,5000,'4.99','2005-07-09 01:16:13','2006-02-15 22:13:26'),(3960,146,1,6102,'7.99','2005-07-11 06:53:09','2006-02-15 22:13:26'),(3961,146,2,6184,'6.99','2005-07-11 11:19:21','2006-02-15 22:13:26'),(3962,146,1,6327,'4.99','2005-07-11 19:07:29','2006-02-15 22:13:26'),(3963,146,1,6990,'0.99','2005-07-27 01:02:46','2006-02-15 22:13:26'),(3964,146,2,8246,'3.99','2005-07-29 00:38:41','2006-02-15 22:13:26'),(3965,146,2,11173,'7.99','2005-08-02 10:28:00','2006-02-15 22:13:26'),(3966,146,1,11221,'2.99','2005-08-02 12:32:12','2006-02-15 22:13:26'),(3967,146,2,11370,'0.99','2005-08-02 18:06:01','2006-02-15 22:13:26'),(3968,146,2,11392,'5.99','2005-08-02 18:41:11','2006-02-15 22:13:26'),(3969,146,1,11573,'4.99','2005-08-17 01:38:18','2006-02-15 22:13:27'),(3970,146,1,11857,'4.99','2005-08-17 13:48:30','2006-02-15 22:13:27'),(3971,146,1,12129,'7.99','2005-08-17 23:31:25','2006-02-15 22:13:27'),(3972,146,1,12385,'2.99','2005-08-18 08:39:33','2006-02-15 22:13:27'),(3973,146,1,12888,'4.99','2005-08-19 03:41:09','2006-02-15 22:13:27'),(3974,146,1,13606,'4.99','2005-08-20 06:07:01','2006-02-15 22:13:27'),(3975,146,2,13829,'4.99','2005-08-20 13:50:17','2006-02-15 22:13:27'),(3976,146,2,14143,'2.99','2005-08-21 02:10:32','2006-02-15 22:13:27'),(3977,146,1,15842,'6.99','2005-08-23 15:36:05','2006-02-15 22:13:27'),(3978,147,1,362,'0.99','2005-05-27 07:10:25','2006-02-15 22:13:27'),(3979,147,1,509,'0.99','2005-05-28 02:51:12','2006-02-15 22:13:27'),(3980,147,1,2171,'0.99','2005-06-18 00:06:04','2006-02-15 22:13:27'),(3981,147,1,2456,'6.99','2005-06-18 19:36:50','2006-02-15 22:13:27'),(3982,147,2,2859,'2.99','2005-06-19 23:18:42','2006-02-15 22:13:27'),(3983,147,2,3011,'5.99','2005-06-20 10:39:10','2006-02-15 22:13:27'),(3984,147,2,3919,'7.99','2005-07-06 20:26:21','2006-02-15 22:13:27'),(3985,147,2,3956,'2.99','2005-07-06 22:01:51','2006-02-15 22:13:27'),(3986,147,2,4792,'0.99','2005-07-08 16:29:38','2006-02-15 22:13:27'),(3987,147,2,5044,'0.99','2005-07-09 03:30:25','2006-02-15 22:13:27'),(3988,147,1,5567,'2.99','2005-07-10 03:36:46','2006-02-15 22:13:27'),(3989,147,1,5844,'0.99','2005-07-10 17:14:43','2006-02-15 22:13:27'),(3990,147,2,6343,'0.99','2005-07-11 19:51:35','2006-02-15 22:13:27'),(3991,147,2,6469,'4.99','2005-07-12 01:29:27','2006-02-15 22:13:27'),(3992,147,2,6753,'2.99','2005-07-12 14:55:42','2006-02-15 22:13:27'),(3993,147,2,7044,'0.99','2005-07-27 03:27:29','2006-02-15 22:13:27'),(3994,147,1,7723,'0.99','2005-07-28 04:45:37','2006-02-15 22:13:27'),(3995,147,1,8893,'2.99','2005-07-30 00:48:19','2006-02-15 22:13:27'),(3996,147,2,9772,'0.99','2005-07-31 09:56:07','2006-02-15 22:13:27'),(3997,147,1,10706,'7.99','2005-08-01 18:41:28','2006-02-15 22:13:27'),(3998,147,2,10752,'8.99','2005-08-01 20:08:49','2006-02-15 22:13:27'),(3999,147,1,12284,'4.99','2005-08-18 04:55:49','2006-02-15 22:13:27'),(4000,147,1,12757,'4.99','2005-08-18 22:57:45','2006-02-15 22:13:27'),(4001,147,2,13542,'4.99','2005-08-20 03:41:57','2006-02-15 22:13:27'),(4002,147,2,13670,'3.99','2005-08-20 08:27:01','2006-02-15 22:13:27'),(4003,147,2,14021,'4.99','2005-08-20 21:02:12','2006-02-15 22:13:27'),(4004,147,1,14156,'0.99','2005-08-21 02:35:16','2006-02-15 22:13:27'),(4005,147,2,14641,'0.99','2005-08-21 19:05:23','2006-02-15 22:13:27'),(4006,147,2,14960,'4.99','2005-08-22 06:31:36','2006-02-15 22:13:27'),(4007,147,1,15052,'2.99','2005-08-22 10:09:19','2006-02-15 22:13:27'),(4008,147,2,15331,'4.99','2005-08-22 20:37:57','2006-02-15 22:13:28'),(4009,147,2,15513,'4.99','2005-08-23 03:01:56','2006-02-15 22:13:28'),(4010,147,1,15730,'8.99','2005-08-23 11:32:35','2006-02-15 22:13:28'),(4011,147,2,16004,'6.99','2005-08-23 20:53:20','2006-02-15 22:13:28'),(4012,148,1,682,'4.99','2005-05-28 23:53:18','2006-02-15 22:13:28'),(4013,148,1,1501,'1.99','2005-06-15 22:02:35','2006-02-15 22:13:28'),(4014,148,2,1517,'6.99','2005-06-15 23:20:26','2006-02-15 22:13:28'),(4015,148,2,2751,'3.99','2005-06-19 16:39:23','2006-02-15 22:13:28'),(4016,148,2,2843,'3.99','2005-06-19 22:36:39','2006-02-15 22:13:28'),(4017,148,2,2847,'5.99','2005-06-19 22:54:01','2006-02-15 22:13:28'),(4018,148,1,3653,'0.99','2005-07-06 07:45:13','2006-02-15 22:13:28'),(4019,148,1,4080,'0.99','2005-07-07 05:09:54','2006-02-15 22:13:28'),(4020,148,1,4746,'2.99','2005-07-08 13:47:55','2006-02-15 22:13:28'),(4021,148,1,4950,'2.99','2005-07-08 22:58:07','2006-02-15 22:13:28'),(4022,148,1,5034,'4.99','2005-07-09 02:48:15','2006-02-15 22:13:28'),(4023,148,1,5372,'4.99','2005-07-09 18:48:39','2006-02-15 22:13:28'),(4024,148,1,6169,'1.99','2005-07-11 10:25:56','2006-02-15 22:13:28'),(4025,148,1,6640,'8.99','2005-07-12 10:27:19','2006-02-15 22:13:28'),(4026,148,2,6793,'10.99','2005-07-12 16:37:55','2006-02-15 22:13:28'),(4027,148,1,7656,'0.99','2005-07-28 02:07:19','2006-02-15 22:13:28'),(4028,148,2,7693,'4.99','2005-07-28 03:31:22','2006-02-15 22:13:28'),(4029,148,1,7865,'9.99','2005-07-28 10:07:04','2006-02-15 22:13:28'),(4030,148,2,8111,'4.99','2005-07-28 19:10:03','2006-02-15 22:13:28'),(4031,148,2,8331,'3.99','2005-07-29 04:13:29','2006-02-15 22:13:28'),(4032,148,1,8394,'4.99','2005-07-29 06:02:14','2006-02-15 22:13:28'),(4033,148,2,8578,'4.99','2005-07-29 11:58:14','2006-02-15 22:13:28'),(4034,148,2,8626,'4.99','2005-07-29 14:03:20','2006-02-15 22:13:28'),(4035,148,1,9023,'5.99','2005-07-30 05:36:40','2006-02-15 22:13:28'),(4036,148,1,9106,'2.99','2005-07-30 08:52:34','2006-02-15 22:13:28'),(4037,148,1,9530,'1.99','2005-07-31 01:09:06','2006-02-15 22:13:28'),(4038,148,1,9594,'4.99','2005-07-31 03:23:52','2006-02-15 22:13:28'),(4039,148,2,10067,'4.99','2005-07-31 19:37:58','2006-02-15 22:13:28'),(4040,148,2,10830,'6.99','2005-08-01 23:18:06','2006-02-15 22:13:28'),(4041,148,1,11357,'10.99','2005-08-02 17:42:49','2006-02-15 22:13:28'),(4042,148,1,12029,'2.99','2005-08-17 20:07:01','2006-02-15 22:13:28'),(4043,148,2,12038,'0.99','2005-08-17 20:28:26','2006-02-15 22:13:28'),(4044,148,2,12512,'3.99','2005-08-18 13:28:27','2006-02-15 22:13:28'),(4045,148,1,12944,'6.99','2005-08-19 05:48:12','2006-02-15 22:13:28'),(4046,148,1,12983,'6.99','2005-08-19 07:06:51','2006-02-15 22:13:29'),(4047,148,1,14055,'0.99','2005-08-20 22:18:00','2006-02-15 22:13:29'),(4048,148,1,14155,'4.99','2005-08-21 02:31:35','2006-02-15 22:13:29'),(4049,148,2,14184,'6.99','2005-08-21 03:24:50','2006-02-15 22:13:29'),(4050,148,2,14629,'2.99','2005-08-21 18:39:52','2006-02-15 22:13:29'),(4051,148,2,14713,'0.99','2005-08-21 21:27:24','2006-02-15 22:13:29'),(4052,148,2,14879,'5.99','2005-08-22 03:42:12','2006-02-15 22:13:29'),(4053,148,2,14965,'2.99','2005-08-22 06:45:53','2006-02-15 22:13:29'),(4054,148,2,15237,'4.99','2005-08-22 17:44:30','2006-02-15 22:13:29'),(4055,148,2,15379,'8.99','2005-08-22 22:26:13','2006-02-15 22:13:29'),(4056,148,1,15541,'3.99','2005-08-23 04:13:53','2006-02-15 22:13:29'),(4057,148,2,15586,'3.99','2005-08-23 05:57:04','2006-02-15 22:13:29'),(4058,149,1,764,'4.99','2005-05-29 11:37:35','2006-02-15 22:13:29'),(4059,149,2,1521,'2.99','2005-06-15 23:58:53','2006-02-15 22:13:29'),(4060,149,1,1800,'2.99','2005-06-16 20:18:46','2006-02-15 22:13:29'),(4061,149,2,1996,'6.99','2005-06-17 11:17:45','2006-02-15 22:13:29'),(4062,149,2,2194,'4.99','2005-06-18 01:41:37','2006-02-15 22:13:29'),(4063,149,1,2305,'5.99','2005-06-18 08:31:18','2006-02-15 22:13:29'),(4064,149,2,2383,'7.99','2005-06-18 15:17:59','2006-02-15 22:13:29'),(4065,149,1,2752,'0.99','2005-06-19 16:44:18','2006-02-15 22:13:29'),(4066,149,1,3894,'2.99','2005-07-06 19:01:39','2006-02-15 22:13:29'),(4067,149,1,3939,'6.99','2005-07-06 21:16:32','2006-02-15 22:13:29'),(4068,149,1,4766,'3.99','2005-07-08 15:16:04','2006-02-15 22:13:29'),(4069,149,1,4837,'0.99','2005-07-08 18:09:12','2006-02-15 22:13:29'),(4070,149,1,5091,'2.99','2005-07-09 05:52:54','2006-02-15 22:13:29'),(4071,149,1,5298,'10.99','2005-07-09 15:36:17','2006-02-15 22:13:29'),(4072,149,1,6356,'4.99','2005-07-11 20:57:48','2006-02-15 22:13:29'),(4073,149,2,6940,'5.99','2005-07-26 23:18:35','2006-02-15 22:13:29'),(4074,149,2,7559,'4.99','2005-07-27 22:20:03','2006-02-15 22:13:29'),(4075,149,1,7989,'6.99','2005-07-28 14:39:05','2006-02-15 22:13:29'),(4076,149,2,10154,'2.99','2005-07-31 22:30:49','2006-02-15 22:13:29'),(4077,149,2,10737,'7.99','2005-08-01 19:31:24','2006-02-15 22:13:29'),(4078,149,2,10967,'0.99','2005-08-02 04:02:16','2006-02-15 22:13:29'),(4079,149,1,11561,'2.99','2005-08-17 01:23:09','2006-02-15 22:13:29'),(4080,149,1,12000,'4.99','2005-08-17 18:49:44','2006-02-15 22:13:29'),(4081,149,1,14771,'3.99','2005-08-21 23:50:15','2006-02-15 22:13:29'),(4082,149,2,15479,'4.99','2005-08-23 01:50:53','2006-02-15 22:13:29'),(4083,149,2,15562,'2.99','2005-08-23 05:04:33','2006-02-15 22:13:29'),(4084,150,1,422,'3.99','2005-05-27 15:31:55','2006-02-15 22:13:29'),(4085,150,1,609,'2.99','2005-05-28 15:04:02','2006-02-15 22:13:29'),(4086,150,1,995,'3.99','2005-05-31 00:06:02','2006-02-15 22:13:29'),(4087,150,2,3187,'1.99','2005-06-20 23:06:07','2006-02-15 22:13:29'),(4088,150,1,3456,'5.99','2005-06-21 21:19:47','2006-02-15 22:13:29'),(4089,150,1,4271,'6.99','2005-07-07 14:38:52','2006-02-15 22:13:29'),(4090,150,1,6633,'2.99','2005-07-12 09:35:42','2006-02-15 22:13:29'),(4091,150,2,7690,'4.99','2005-07-28 03:26:21','2006-02-15 22:13:30'),(4092,150,1,9121,'2.99','2005-07-30 09:36:26','2006-02-15 22:13:30'),(4093,150,1,10686,'2.99','2005-08-01 17:51:21','2006-02-15 22:13:30'),(4094,150,2,11123,'2.99','2005-08-02 08:54:17','2006-02-15 22:13:30'),(4095,150,2,11789,'6.99','2005-08-17 10:59:24','2006-02-15 22:13:30'),(4096,150,2,12260,'6.99','2005-08-18 04:15:43','2006-02-15 22:13:30'),(4097,150,2,12335,'2.99','2005-08-18 06:59:15','2006-02-15 22:13:30'),(4098,150,2,12627,'2.99','2005-08-18 17:37:11','2006-02-15 22:13:30'),(4099,150,1,12887,'1.99','2005-08-19 03:38:54','2006-02-15 22:13:30'),(4100,150,2,12890,'0.99','2005-08-19 03:42:08','2006-02-15 22:13:30'),(4101,150,1,13116,'6.99','2005-08-19 11:31:41','2006-02-15 22:13:30'),(4102,150,2,13255,'8.99','2005-08-19 16:54:12','2006-02-15 22:13:30'),(4103,150,1,13372,'2.99','2005-08-19 21:23:19','2006-02-15 22:13:30'),(4104,150,2,13599,'5.99','2005-08-20 06:00:03','2006-02-15 22:13:30'),(4105,150,2,14165,'0.99','2005-08-21 02:59:17','2006-02-15 22:13:30'),(4106,150,2,14454,'2.99','2005-08-21 12:35:49','2006-02-15 22:13:30'),(4107,150,2,14520,'9.99','2005-08-21 15:00:49','2006-02-15 22:13:30'),(4108,150,1,14663,'0.99','2005-08-21 19:47:55','2006-02-15 22:13:30'),(4109,151,2,164,'4.99','2005-05-26 02:26:49','2006-02-15 22:13:30'),(4110,151,2,418,'5.99','2005-05-27 15:13:17','2006-02-15 22:13:30'),(4111,151,2,2474,'2.99','2005-06-18 20:51:34','2006-02-15 22:13:30'),(4112,151,2,2947,'2.99','2005-06-20 06:00:21','2006-02-15 22:13:30'),(4113,151,1,3017,'3.99','2005-06-20 11:08:56','2006-02-15 22:13:30'),(4114,151,2,3089,'0.99','2005-06-20 15:57:01','2006-02-15 22:13:30'),(4115,151,2,3390,'2.99','2005-06-21 15:10:50','2006-02-15 22:13:30'),(4116,151,1,4376,'2.99','2005-07-07 20:24:33','2006-02-15 22:13:30'),(4117,151,2,6720,'0.99','2005-07-12 13:41:16','2006-02-15 22:13:30'),(4118,151,2,6768,'3.99','2005-07-12 15:47:51','2006-02-15 22:13:30'),(4119,151,2,6854,'0.99','2005-07-12 19:38:57','2006-02-15 22:13:30'),(4120,151,1,7189,'0.99','2005-07-27 08:35:02','2006-02-15 22:13:30'),(4121,151,2,7332,'3.99','2005-07-27 13:58:57','2006-02-15 22:13:30'),(4122,151,1,9253,'4.99','2005-07-30 14:20:12','2006-02-15 22:13:30'),(4123,151,1,9890,'4.99','2005-07-31 14:04:44','2006-02-15 22:13:30'),(4124,151,1,9969,'2.99','2005-07-31 16:38:12','2006-02-15 22:13:30'),(4125,151,1,10078,'2.99','2005-07-31 20:02:02','2006-02-15 22:13:30'),(4126,151,1,10311,'4.99','2005-08-01 04:27:59','2006-02-15 22:13:30'),(4127,151,1,10662,'2.99','2005-08-01 16:50:57','2006-02-15 22:13:30'),(4128,151,2,11714,'2.99','2005-08-17 07:34:55','2006-02-15 22:13:30'),(4129,151,2,13230,'0.99','2005-08-19 16:12:07','2006-02-15 22:13:30'),(4130,151,1,13568,'5.99','2005-08-20 05:02:46','2006-02-15 22:13:30'),(4131,151,1,14856,'4.99','2005-08-22 02:31:51','2006-02-15 22:13:30'),(4132,151,2,14922,'3.99','2005-08-22 05:13:05','2006-02-15 22:13:30'),(4133,151,1,15227,'4.99','2005-08-22 17:22:41','2006-02-15 22:13:30'),(4134,151,1,15926,'2.99','2005-08-23 18:20:56','2006-02-15 22:13:31'),(4135,151,2,15996,'2.99','2005-08-23 20:31:38','2006-02-15 22:13:31'),(4136,152,2,359,'4.99','2005-05-27 06:48:33','2006-02-15 22:13:31'),(4137,152,1,745,'4.99','2005-05-29 09:22:57','2006-02-15 22:13:31'),(4138,152,1,2882,'4.99','2005-06-20 01:26:26','2006-02-15 22:13:31'),(4139,152,2,3577,'2.99','2005-07-06 03:40:36','2006-02-15 22:13:31'),(4140,152,1,3786,'7.99','2005-07-06 14:00:41','2006-02-15 22:13:31'),(4141,152,1,4974,'4.99','2005-07-09 00:00:36','2006-02-15 22:13:31'),(4142,152,1,6273,'0.99','2005-07-11 16:08:41','2006-02-15 22:13:31'),(4143,152,1,6612,'2.99','2005-07-12 08:28:33','2006-02-15 22:13:31'),(4144,152,1,9010,'5.99','2005-07-30 05:12:04','2006-02-15 22:13:31'),(4145,152,1,10320,'6.99','2005-08-01 04:39:26','2006-02-15 22:13:31'),(4146,152,2,11638,'6.99','2005-08-17 04:39:09','2006-02-15 22:13:31'),(4147,152,2,11783,'0.99','2005-08-17 10:39:24','2006-02-15 22:13:31'),(4148,152,1,12697,'2.99','2005-08-18 20:14:56','2006-02-15 22:13:31'),(4149,152,1,12917,'4.99','2005-08-19 04:27:11','2006-02-15 22:13:31'),(4150,152,2,12960,'1.99','2005-08-19 06:21:52','2006-02-15 22:13:31'),(4151,152,1,13204,'4.99','2005-08-19 15:02:48','2006-02-15 22:13:31'),(4152,152,2,13484,'0.99','2005-08-20 01:16:52','2006-02-15 22:13:31'),(4153,152,1,13986,'0.99','2005-08-20 19:13:23','2006-02-15 22:13:31'),(4154,152,1,14173,'0.99','2005-08-21 03:01:01','2006-02-15 22:13:31'),(4155,152,2,14668,'4.99','2005-08-21 19:51:30','2006-02-15 22:13:31'),(4156,152,2,11848,'4.99','2006-02-14 15:16:03','2006-02-15 22:13:31'),(4157,153,1,2224,'0.99','2005-06-18 03:33:58','2006-02-15 22:13:31'),(4158,153,1,2649,'0.99','2005-06-19 10:20:09','2006-02-15 22:13:31'),(4159,153,1,2893,'4.99','2005-06-20 02:22:08','2006-02-15 22:13:31'),(4160,153,1,2945,'5.99','2005-06-20 05:49:27','2006-02-15 22:13:31'),(4161,153,1,3795,'0.99','2005-07-06 14:37:41','2006-02-15 22:13:31'),(4162,153,1,3949,'0.99','2005-07-06 21:46:36','2006-02-15 22:13:31'),(4163,153,1,4194,'5.99','2005-07-07 10:59:39','2006-02-15 22:13:31'),(4164,153,2,4670,'5.99','2005-07-08 10:14:18','2006-02-15 22:13:31'),(4165,153,2,5676,'0.99','2005-07-10 08:38:32','2006-02-15 22:13:31'),(4166,153,2,5771,'0.99','2005-07-10 13:26:45','2006-02-15 22:13:31'),(4167,153,2,6818,'9.99','2005-07-12 18:20:54','2006-02-15 22:13:31'),(4168,153,2,7824,'7.99','2005-07-28 08:34:47','2006-02-15 22:13:31'),(4169,153,2,9936,'0.99','2005-07-31 15:27:41','2006-02-15 22:13:31'),(4170,153,2,10015,'4.99','2005-07-31 18:11:17','2006-02-15 22:13:31'),(4171,153,2,11368,'4.99','2005-08-02 18:03:05','2006-02-15 22:13:31'),(4172,153,1,12103,'1.99','2005-08-17 22:49:09','2006-02-15 22:13:31'),(4173,153,1,12439,'3.99','2005-08-18 10:44:57','2006-02-15 22:13:31'),(4174,153,1,12882,'4.99','2005-08-19 03:33:46','2006-02-15 22:13:31'),(4175,153,1,14664,'4.99','2005-08-21 19:48:47','2006-02-15 22:13:31'),(4176,153,1,14747,'4.99','2005-08-21 23:00:02','2006-02-15 22:13:31'),(4177,153,1,14944,'4.99','2005-08-22 06:01:26','2006-02-15 22:13:31'),(4178,153,2,15267,'0.99','2005-08-22 18:37:48','2006-02-15 22:13:31'),(4179,153,2,15444,'7.99','2005-08-23 00:46:52','2006-02-15 22:13:32'),(4180,153,1,15593,'1.99','2005-08-23 06:15:09','2006-02-15 22:13:32'),(4181,154,1,469,'5.99','2005-05-27 21:14:26','2006-02-15 22:13:32'),(4182,154,2,865,'7.99','2005-05-30 03:39:44','2006-02-15 22:13:32'),(4183,154,2,978,'5.99','2005-05-30 21:30:52','2006-02-15 22:13:32'),(4184,154,1,1963,'0.99','2005-06-17 09:09:31','2006-02-15 22:13:32'),(4185,154,1,2886,'4.99','2005-06-20 01:38:39','2006-02-15 22:13:32'),(4186,154,1,2985,'2.99','2005-06-20 08:45:08','2006-02-15 22:13:32'),(4187,154,2,3806,'7.99','2005-07-06 15:09:41','2006-02-15 22:13:32'),(4188,154,2,3912,'0.99','2005-07-06 20:10:03','2006-02-15 22:13:32'),(4189,154,2,4132,'4.99','2005-07-07 08:06:07','2006-02-15 22:13:32'),(4190,154,1,4252,'2.99','2005-07-07 14:13:05','2006-02-15 22:13:32'),(4191,154,1,4850,'5.99','2005-07-08 18:39:31','2006-02-15 22:13:32'),(4192,154,1,5101,'0.99','2005-07-09 06:21:29','2006-02-15 22:13:32'),(4193,154,2,5760,'2.99','2005-07-10 12:44:48','2006-02-15 22:13:32'),(4194,154,1,6048,'0.99','2005-07-11 03:32:23','2006-02-15 22:13:32'),(4195,154,2,6993,'4.99','2005-07-27 01:05:24','2006-02-15 22:13:32'),(4196,154,1,7055,'4.99','2005-07-27 03:45:42','2006-02-15 22:13:32'),(4197,154,1,7156,'4.99','2005-07-27 07:19:34','2006-02-15 22:13:32'),(4198,154,2,7900,'1.99','2005-07-28 11:11:33','2006-02-15 22:13:32'),(4199,154,2,8334,'7.99','2005-07-29 04:18:25','2006-02-15 22:13:32'),(4200,154,2,9286,'2.99','2005-07-30 15:32:28','2006-02-15 22:13:32'),(4201,154,1,10278,'6.99','2005-08-01 03:25:27','2006-02-15 22:13:32'),(4202,154,1,10851,'4.99','2005-08-01 23:58:45','2006-02-15 22:13:32'),(4203,154,1,11296,'5.99','2005-08-02 15:15:27','2006-02-15 22:13:32'),(4204,154,1,12341,'0.99','2005-08-18 07:09:27','2006-02-15 22:13:32'),(4205,154,2,13861,'4.99','2005-08-20 14:56:53','2006-02-15 22:13:32'),(4206,154,2,14731,'2.99','2005-08-21 22:21:49','2006-02-15 22:13:32'),(4207,154,2,14793,'7.99','2005-08-22 00:37:57','2006-02-15 22:13:32'),(4208,154,1,14918,'6.99','2005-08-22 05:06:38','2006-02-15 22:13:32'),(4209,154,1,15351,'0.99','2005-08-22 21:15:46','2006-02-15 22:13:32'),(4210,154,1,15721,'2.99','2005-08-23 11:16:16','2006-02-15 22:13:32'),(4211,155,1,568,'2.99','2005-05-28 09:57:36','2006-02-15 22:13:32'),(4212,155,2,1519,'1.99','2005-06-15 23:55:27','2006-02-15 22:13:32'),(4213,155,1,1554,'7.99','2005-06-16 02:16:47','2006-02-15 22:13:32'),(4214,155,1,2028,'7.99','2005-06-17 13:08:08','2006-02-15 22:13:32'),(4215,155,1,2869,'4.99','2005-06-20 00:09:25','2006-02-15 22:13:32'),(4216,155,2,3405,'4.99','2005-06-21 15:58:25','2006-02-15 22:13:32'),(4217,155,1,5128,'1.99','2005-07-09 07:25:54','2006-02-15 22:13:32'),(4218,155,1,6066,'5.99','2005-07-11 04:32:42','2006-02-15 22:13:32'),(4219,155,1,6085,'4.99','2005-07-11 05:24:36','2006-02-15 22:13:32'),(4220,155,2,6087,'4.99','2005-07-11 05:29:22','2006-02-15 22:13:32'),(4221,155,1,6443,'2.99','2005-07-12 00:35:51','2006-02-15 22:13:32'),(4222,155,1,7077,'3.99','2005-07-27 04:13:02','2006-02-15 22:13:33'),(4223,155,1,7492,'2.99','2005-07-27 19:54:18','2006-02-15 22:13:33'),(4224,155,2,7730,'5.99','2005-07-28 04:59:48','2006-02-15 22:13:33'),(4225,155,2,9781,'7.99','2005-07-31 10:13:02','2006-02-15 22:13:33'),(4226,155,1,10098,'0.99','2005-07-31 20:41:17','2006-02-15 22:13:33'),(4227,155,1,11033,'4.99','2005-08-02 05:54:17','2006-02-15 22:13:33'),(4228,155,2,11951,'5.99','2005-08-17 17:14:02','2006-02-15 22:13:33'),(4229,155,1,14324,'8.99','2005-08-21 08:10:56','2006-02-15 22:13:33'),(4230,155,2,14549,'2.99','2005-08-21 15:54:21','2006-02-15 22:13:33'),(4231,155,1,14753,'2.99','2005-08-21 23:11:43','2006-02-15 22:13:33'),(4232,155,2,14909,'0.99','2005-08-22 04:48:44','2006-02-15 22:13:33'),(4233,155,1,15106,'0.99','2005-08-22 12:01:48','2006-02-15 22:13:33'),(4234,155,2,11496,'7.98','2006-02-14 15:16:03','2006-02-15 22:13:33'),(4235,155,1,12352,'0.00','2006-02-14 15:16:03','2006-02-15 22:13:33'),(4236,156,2,899,'6.99','2005-05-30 09:29:30','2006-02-15 22:13:33'),(4237,156,1,1052,'4.99','2005-05-31 07:07:03','2006-02-15 22:13:33'),(4238,156,2,2089,'9.99','2005-06-17 17:45:09','2006-02-15 22:13:33'),(4239,156,2,2221,'0.99','2005-06-18 03:24:56','2006-02-15 22:13:33'),(4240,156,1,2658,'4.99','2005-06-19 10:43:42','2006-02-15 22:13:33'),(4241,156,1,2782,'0.99','2005-06-19 18:25:07','2006-02-15 22:13:33'),(4242,156,2,4394,'2.99','2005-07-07 21:12:45','2006-02-15 22:13:33'),(4243,156,2,5534,'4.99','2005-07-10 02:26:49','2006-02-15 22:13:33'),(4244,156,1,5828,'2.99','2005-07-10 16:27:25','2006-02-15 22:13:33'),(4245,156,2,5908,'0.99','2005-07-10 20:44:14','2006-02-15 22:13:33'),(4246,156,2,6540,'6.99','2005-07-12 04:51:13','2006-02-15 22:13:33'),(4247,156,2,7389,'2.99','2005-07-27 15:56:15','2006-02-15 22:13:33'),(4248,156,2,7822,'4.99','2005-07-28 08:31:45','2006-02-15 22:13:33'),(4249,156,1,9409,'6.99','2005-07-30 20:33:53','2006-02-15 22:13:33'),(4250,156,1,9696,'0.99','2005-07-31 07:13:46','2006-02-15 22:13:33'),(4251,156,2,10309,'6.99','2005-08-01 04:24:18','2006-02-15 22:13:33'),(4252,156,2,11490,'2.99','2005-08-02 22:36:00','2006-02-15 22:13:33'),(4253,156,1,11587,'5.99','2005-08-17 02:21:03','2006-02-15 22:13:33'),(4254,156,2,13530,'0.99','2005-08-20 03:12:43','2006-02-15 22:13:33'),(4255,156,2,13531,'2.99','2005-08-20 03:26:10','2006-02-15 22:13:33'),(4256,156,2,13802,'2.99','2005-08-20 12:44:53','2006-02-15 22:13:33'),(4257,156,1,14794,'1.99','2005-08-22 00:39:31','2006-02-15 22:13:33'),(4258,156,2,14831,'4.99','2005-08-22 01:40:49','2006-02-15 22:13:33'),(4259,156,1,14914,'0.99','2005-08-22 04:53:35','2006-02-15 22:13:33'),(4260,156,1,15408,'6.99','2005-08-22 23:26:32','2006-02-15 22:13:33'),(4261,157,2,352,'0.99','2005-05-27 05:48:19','2006-02-15 22:13:33'),(4262,157,1,642,'4.99','2005-05-28 18:49:12','2006-02-15 22:13:33'),(4263,157,2,2340,'0.99','2005-06-18 11:30:56','2006-02-15 22:13:33'),(4264,157,1,3739,'0.99','2005-07-06 11:54:18','2006-02-15 22:13:33'),(4265,157,1,4253,'5.99','2005-07-07 14:13:13','2006-02-15 22:13:33'),(4266,157,2,4435,'3.99','2005-07-07 22:51:04','2006-02-15 22:13:34'),(4267,157,1,4919,'0.99','2005-07-08 21:41:54','2006-02-15 22:13:34'),(4268,157,1,5862,'4.99','2005-07-10 18:20:48','2006-02-15 22:13:34'),(4269,157,1,7110,'2.99','2005-07-27 05:30:48','2006-02-15 22:13:34'),(4270,157,2,7195,'2.99','2005-07-27 08:47:01','2006-02-15 22:13:34'),(4271,157,2,7499,'4.99','2005-07-27 20:10:28','2006-02-15 22:13:34'),(4272,157,2,8163,'0.99','2005-07-28 21:11:48','2006-02-15 22:13:34'),(4273,157,2,8337,'0.99','2005-07-29 04:31:55','2006-02-15 22:13:34'),(4274,157,2,8347,'0.99','2005-07-29 04:49:25','2006-02-15 22:13:34'),(4275,157,2,8576,'4.99','2005-07-29 11:55:01','2006-02-15 22:13:34'),(4276,157,1,8707,'0.99','2005-07-29 17:21:58','2006-02-15 22:13:34'),(4277,157,1,8827,'4.99','2005-07-29 22:31:24','2006-02-15 22:13:34'),(4278,157,2,9237,'2.99','2005-07-30 13:48:17','2006-02-15 22:13:34'),(4279,157,2,9264,'4.99','2005-07-30 14:51:36','2006-02-15 22:13:34'),(4280,157,1,9958,'2.99','2005-07-31 16:03:56','2006-02-15 22:13:34'),(4281,157,1,10203,'4.99','2005-08-01 00:45:27','2006-02-15 22:13:34'),(4282,157,2,11249,'4.99','2005-08-02 13:35:40','2006-02-15 22:13:34'),(4283,157,2,11335,'4.99','2005-08-02 16:57:37','2006-02-15 22:13:34'),(4284,157,1,12213,'5.99','2005-08-18 02:33:55','2006-02-15 22:13:34'),(4285,157,1,12464,'6.99','2005-08-18 11:33:34','2006-02-15 22:13:34'),(4286,157,1,12916,'0.99','2005-08-19 04:27:05','2006-02-15 22:13:34'),(4287,157,1,13097,'4.99','2005-08-19 10:50:43','2006-02-15 22:13:34'),(4288,157,1,13214,'4.99','2005-08-19 15:31:06','2006-02-15 22:13:34'),(4289,157,1,13481,'6.99','2005-08-20 01:11:12','2006-02-15 22:13:34'),(4290,157,1,13728,'2.99','2005-08-20 10:11:07','2006-02-15 22:13:34'),(4291,157,2,14974,'4.99','2005-08-22 07:04:25','2006-02-15 22:13:34'),(4292,158,2,245,'4.99','2005-05-26 13:46:59','2006-02-15 22:13:34'),(4293,158,1,293,'5.99','2005-05-26 20:27:02','2006-02-15 22:13:34'),(4294,158,1,1380,'0.99','2005-06-15 15:13:10','2006-02-15 22:13:34'),(4295,158,2,1790,'4.99','2005-06-16 19:58:40','2006-02-15 22:13:34'),(4296,158,2,2035,'6.99','2005-06-17 13:45:09','2006-02-15 22:13:34'),(4297,158,2,3203,'8.99','2005-06-21 00:34:56','2006-02-15 22:13:34'),(4298,158,1,4117,'8.99','2005-07-07 06:58:14','2006-02-15 22:13:34'),(4299,158,1,5672,'2.99','2005-07-10 08:19:38','2006-02-15 22:13:34'),(4300,158,1,5988,'4.99','2005-07-11 00:55:38','2006-02-15 22:13:34'),(4301,158,1,6416,'2.99','2005-07-11 23:29:14','2006-02-15 22:13:34'),(4302,158,2,6901,'5.99','2005-07-12 21:46:33','2006-02-15 22:13:34'),(4303,158,2,7159,'2.99','2005-07-27 07:24:00','2006-02-15 22:13:34'),(4304,158,1,7732,'0.99','2005-07-28 05:03:32','2006-02-15 22:13:34'),(4305,158,2,7952,'2.99','2005-07-28 13:23:49','2006-02-15 22:13:34'),(4306,158,1,8750,'2.99','2005-07-29 19:14:21','2006-02-15 22:13:34'),(4307,158,1,8957,'1.99','2005-07-30 03:34:10','2006-02-15 22:13:34'),(4308,158,1,9393,'2.99','2005-07-30 20:04:48','2006-02-15 22:13:34'),(4309,158,1,9713,'1.99','2005-07-31 08:13:28','2006-02-15 22:13:35'),(4310,158,1,9801,'2.99','2005-07-31 11:03:13','2006-02-15 22:13:35'),(4311,158,2,11077,'4.99','2005-08-02 07:26:43','2006-02-15 22:13:35'),(4312,158,1,11103,'6.99','2005-08-02 08:09:54','2006-02-15 22:13:35'),(4313,158,1,11272,'0.99','2005-08-02 14:20:27','2006-02-15 22:13:35'),(4314,158,1,11420,'2.99','2005-08-02 19:47:56','2006-02-15 22:13:35'),(4315,158,2,12070,'1.99','2005-08-17 21:46:47','2006-02-15 22:13:35'),(4316,158,2,12421,'5.99','2005-08-18 10:04:06','2006-02-15 22:13:35'),(4317,158,2,13212,'1.99','2005-08-19 15:24:07','2006-02-15 22:13:35'),(4318,158,2,13854,'2.99','2005-08-20 14:48:42','2006-02-15 22:13:35'),(4319,158,1,13926,'2.99','2005-08-20 17:09:27','2006-02-15 22:13:35'),(4320,158,2,14028,'0.99','2005-08-20 21:23:03','2006-02-15 22:13:35'),(4321,158,1,15763,'2.99','2005-08-23 13:02:59','2006-02-15 22:13:35'),(4322,158,1,15796,'5.99','2005-08-23 14:12:22','2006-02-15 22:13:35'),(4323,158,1,15802,'5.99','2005-08-23 14:26:51','2006-02-15 22:13:35'),(4324,159,2,475,'2.99','2005-05-27 22:16:26','2006-02-15 22:13:35'),(4325,159,2,549,'1.99','2005-05-28 07:35:37','2006-02-15 22:13:35'),(4326,159,1,598,'0.99','2005-05-28 14:04:50','2006-02-15 22:13:35'),(4327,159,1,832,'3.99','2005-05-29 22:51:20','2006-02-15 22:13:35'),(4328,159,1,1695,'0.99','2005-06-16 12:40:28','2006-02-15 22:13:35'),(4329,159,1,2572,'0.99','2005-06-19 04:21:26','2006-02-15 22:13:35'),(4330,159,2,3914,'5.99','2005-07-06 20:11:10','2006-02-15 22:13:35'),(4331,159,2,4273,'4.99','2005-07-07 14:40:22','2006-02-15 22:13:35'),(4332,159,2,5656,'0.99','2005-07-10 07:31:07','2006-02-15 22:13:35'),(4333,159,2,6885,'4.99','2005-07-12 20:56:04','2006-02-15 22:13:35'),(4334,159,2,8212,'2.99','2005-07-28 23:37:23','2006-02-15 22:13:35'),(4335,159,1,8470,'0.99','2005-07-29 08:28:50','2006-02-15 22:13:35'),(4336,159,2,9022,'3.99','2005-07-30 05:34:45','2006-02-15 22:13:35'),(4337,159,2,9132,'0.99','2005-07-30 09:56:00','2006-02-15 22:13:35'),(4338,159,1,9559,'7.99','2005-07-31 02:15:53','2006-02-15 22:13:35'),(4339,159,1,9917,'4.99','2005-07-31 14:55:11','2006-02-15 22:13:35'),(4340,159,2,11225,'4.99','2005-08-02 12:43:27','2006-02-15 22:13:35'),(4341,159,2,13270,'1.99','2005-08-19 17:41:16','2006-02-15 22:13:35'),(4342,159,1,13933,'0.99','2005-08-20 17:17:07','2006-02-15 22:13:35'),(4343,159,2,14575,'8.99','2005-08-21 16:51:34','2006-02-15 22:13:35'),(4344,159,1,15197,'0.99','2005-08-22 16:14:25','2006-02-15 22:13:35'),(4345,160,2,2314,'4.99','2005-06-18 09:03:19','2006-02-15 22:13:35'),(4346,160,1,2465,'2.99','2005-06-18 20:07:02','2006-02-15 22:13:35'),(4347,160,2,2873,'2.99','2005-06-20 00:41:25','2006-02-15 22:13:35'),(4348,160,1,4842,'0.99','2005-07-08 18:21:30','2006-02-15 22:13:35'),(4349,160,1,4908,'5.99','2005-07-08 21:05:44','2006-02-15 22:13:35'),(4350,160,2,6364,'6.99','2005-07-11 21:14:48','2006-02-15 22:13:35'),(4351,160,2,6448,'1.99','2005-07-12 00:45:59','2006-02-15 22:13:36'),(4352,160,2,7500,'0.99','2005-07-27 20:16:03','2006-02-15 22:13:36'),(4353,160,1,8184,'4.99','2005-07-28 22:22:35','2006-02-15 22:13:36'),(4354,160,1,9681,'0.99','2005-07-31 06:42:09','2006-02-15 22:13:36'),(4355,160,2,9758,'2.99','2005-07-31 09:25:38','2006-02-15 22:13:36'),(4356,160,2,10089,'2.99','2005-07-31 20:17:09','2006-02-15 22:13:36'),(4357,160,1,10305,'2.99','2005-08-01 04:16:16','2006-02-15 22:13:36'),(4358,160,2,10788,'0.99','2005-08-01 21:37:10','2006-02-15 22:13:36'),(4359,160,2,10958,'4.99','2005-08-02 03:37:13','2006-02-15 22:13:36'),(4360,160,2,10979,'5.99','2005-08-02 04:16:37','2006-02-15 22:13:36'),(4361,160,2,11154,'2.99','2005-08-02 09:54:50','2006-02-15 22:13:36'),(4362,160,1,11803,'2.99','2005-08-17 11:42:08','2006-02-15 22:13:36'),(4363,160,1,11888,'7.99','2005-08-17 15:04:05','2006-02-15 22:13:36'),(4364,160,2,12334,'2.99','2005-08-18 06:52:36','2006-02-15 22:13:36'),(4365,160,1,12435,'7.99','2005-08-18 10:38:31','2006-02-15 22:13:36'),(4366,160,2,13093,'6.99','2005-08-19 10:46:16','2006-02-15 22:13:36'),(4367,160,1,14868,'4.99','2005-08-22 03:15:01','2006-02-15 22:13:36'),(4368,160,1,15112,'2.99','2005-08-22 12:21:49','2006-02-15 22:13:36'),(4369,160,2,15642,'2.99','2005-08-23 08:09:11','2006-02-15 22:13:36'),(4370,160,1,15962,'4.99','2005-08-23 19:42:04','2006-02-15 22:13:36'),(4371,160,1,16027,'3.99','2005-08-23 21:49:33','2006-02-15 22:13:36'),(4372,161,2,428,'2.99','2005-05-27 16:10:58','2006-02-15 22:13:36'),(4373,161,2,477,'3.99','2005-05-27 22:33:33','2006-02-15 22:13:36'),(4374,161,1,520,'5.99','2005-05-28 03:27:37','2006-02-15 22:13:36'),(4375,161,2,539,'0.99','2005-05-28 06:26:16','2006-02-15 22:13:36'),(4376,161,1,612,'2.99','2005-05-28 15:24:54','2006-02-15 22:13:36'),(4377,161,1,1003,'0.99','2005-05-31 00:48:20','2006-02-15 22:13:36'),(4378,161,1,1856,'2.99','2005-06-17 01:02:00','2006-02-15 22:13:36'),(4379,161,1,3075,'3.99','2005-06-20 14:52:19','2006-02-15 22:13:36'),(4380,161,1,3948,'4.99','2005-07-06 21:45:53','2006-02-15 22:13:36'),(4381,161,2,4187,'0.99','2005-07-07 10:41:31','2006-02-15 22:13:36'),(4382,161,2,4248,'6.99','2005-07-07 13:59:20','2006-02-15 22:13:36'),(4383,161,1,4490,'2.99','2005-07-08 01:26:32','2006-02-15 22:13:36'),(4384,161,2,5349,'6.99','2005-07-09 17:35:35','2006-02-15 22:13:36'),(4385,161,2,6873,'4.99','2005-07-12 20:20:50','2006-02-15 22:13:36'),(4386,161,1,7003,'2.99','2005-07-27 01:32:06','2006-02-15 22:13:36'),(4387,161,2,8774,'4.99','2005-07-29 20:05:04','2006-02-15 22:13:36'),(4388,161,1,9135,'4.99','2005-07-30 10:06:53','2006-02-15 22:13:36'),(4389,161,2,9421,'0.99','2005-07-30 21:08:32','2006-02-15 22:13:36'),(4390,161,1,10241,'5.99','2005-08-01 02:12:25','2006-02-15 22:13:36'),(4391,161,1,10355,'0.99','2005-08-01 05:47:37','2006-02-15 22:13:37'),(4392,161,1,10637,'2.99','2005-08-01 15:44:09','2006-02-15 22:13:37'),(4393,161,1,10863,'6.99','2005-08-02 00:18:07','2006-02-15 22:13:37'),(4394,161,2,10939,'0.99','2005-08-02 03:06:20','2006-02-15 22:13:37'),(4395,161,1,11838,'2.99','2005-08-17 13:06:00','2006-02-15 22:13:37'),(4396,161,2,14150,'0.99','2005-08-21 02:23:03','2006-02-15 22:13:37'),(4397,161,1,14370,'7.99','2005-08-21 09:35:14','2006-02-15 22:13:37'),(4398,161,1,15000,'0.99','2005-08-22 07:54:58','2006-02-15 22:13:37'),(4399,161,2,15045,'5.99','2005-08-22 09:53:23','2006-02-15 22:13:37'),(4400,161,2,15150,'2.99','2005-08-22 14:12:05','2006-02-15 22:13:37'),(4401,161,1,15420,'5.99','2005-08-22 23:55:51','2006-02-15 22:13:37'),(4402,162,1,285,'1.99','2005-05-26 19:41:40','2006-02-15 22:13:37'),(4403,162,1,501,'4.99','2005-05-28 01:09:36','2006-02-15 22:13:37'),(4404,162,1,688,'4.99','2005-05-29 00:45:24','2006-02-15 22:13:37'),(4405,162,2,1339,'4.99','2005-06-15 12:21:56','2006-02-15 22:13:37'),(4406,162,1,2366,'0.99','2005-06-18 13:46:39','2006-02-15 22:13:37'),(4407,162,1,2547,'4.99','2005-06-19 02:44:17','2006-02-15 22:13:37'),(4408,162,1,3040,'0.99','2005-06-20 12:34:13','2006-02-15 22:13:37'),(4409,162,2,3180,'0.99','2005-06-20 22:48:44','2006-02-15 22:13:37'),(4410,162,2,4982,'2.99','2005-07-09 00:30:52','2006-02-15 22:13:37'),(4411,162,2,8478,'4.99','2005-07-29 08:40:36','2006-02-15 22:13:37'),(4412,162,1,8582,'4.99','2005-07-29 12:03:27','2006-02-15 22:13:37'),(4413,162,2,9167,'4.99','2005-07-30 11:30:37','2006-02-15 22:13:37'),(4414,162,1,9726,'7.99','2005-07-31 08:37:07','2006-02-15 22:13:37'),(4415,162,1,9775,'0.99','2005-07-31 10:00:00','2006-02-15 22:13:37'),(4416,162,2,10093,'5.99','2005-07-31 20:30:32','2006-02-15 22:13:37'),(4417,162,2,11012,'0.99','2005-08-02 05:09:42','2006-02-15 22:13:37'),(4418,162,1,13288,'4.99','2005-08-19 18:30:10','2006-02-15 22:13:37'),(4419,162,2,14301,'1.99','2005-08-21 07:19:48','2006-02-15 22:13:37'),(4420,162,1,15332,'4.99','2005-08-22 20:41:53','2006-02-15 22:13:37'),(4421,162,1,14220,'0.99','2006-02-14 15:16:03','2006-02-15 22:13:37'),(4422,163,2,1265,'4.99','2005-06-15 07:00:50','2006-02-15 22:13:37'),(4423,163,2,2000,'2.99','2005-06-17 11:32:30','2006-02-15 22:13:37'),(4424,163,2,2110,'7.99','2005-06-17 19:45:49','2006-02-15 22:13:37'),(4425,163,2,2536,'5.99','2005-06-19 01:41:34','2006-02-15 22:13:37'),(4426,163,1,2994,'6.99','2005-06-20 09:17:05','2006-02-15 22:13:37'),(4427,163,1,3179,'0.99','2005-06-20 22:37:59','2006-02-15 22:13:37'),(4428,163,2,3915,'3.99','2005-07-06 20:16:46','2006-02-15 22:13:37'),(4429,163,1,4126,'1.99','2005-07-07 07:24:11','2006-02-15 22:13:37'),(4430,163,2,5549,'4.99','2005-07-10 02:58:29','2006-02-15 22:13:37'),(4431,163,1,5574,'10.99','2005-07-10 03:54:38','2006-02-15 22:13:37'),(4432,163,1,6109,'0.99','2005-07-11 07:20:57','2006-02-15 22:13:37'),(4433,163,1,6831,'1.99','2005-07-12 18:44:04','2006-02-15 22:13:38'),(4434,163,1,7303,'1.99','2005-07-27 12:54:39','2006-02-15 22:13:38'),(4435,163,1,7403,'2.99','2005-07-27 16:22:09','2006-02-15 22:13:38'),(4436,163,2,8040,'0.99','2005-07-28 16:39:43','2006-02-15 22:13:38'),(4437,163,2,8063,'4.99','2005-07-28 17:15:11','2006-02-15 22:13:38'),(4438,163,2,8403,'4.99','2005-07-29 06:26:39','2006-02-15 22:13:38'),(4439,163,2,10245,'0.99','2005-08-01 02:24:09','2006-02-15 22:13:38'),(4440,163,2,11623,'2.99','2005-08-17 04:15:47','2006-02-15 22:13:38'),(4441,163,2,11940,'4.99','2005-08-17 16:56:28','2006-02-15 22:13:38'),(4442,163,1,12154,'2.99','2005-08-18 00:23:56','2006-02-15 22:13:38'),(4443,163,2,12973,'2.99','2005-08-19 06:48:11','2006-02-15 22:13:38'),(4444,163,2,13543,'7.99','2005-08-20 03:43:13','2006-02-15 22:13:38'),(4445,163,2,14275,'4.99','2005-08-21 06:30:30','2006-02-15 22:13:38'),(4446,163,2,14427,'5.99','2005-08-21 11:26:06','2006-02-15 22:13:38'),(4447,163,1,15520,'8.99','2005-08-23 03:30:45','2006-02-15 22:13:38'),(4448,163,1,15847,'0.99','2005-08-23 15:39:38','2006-02-15 22:13:38'),(4449,163,2,11754,'7.98','2006-02-14 15:16:03','2006-02-15 22:13:38'),(4450,163,1,15282,'0.00','2006-02-14 15:16:03','2006-02-15 22:13:38'),(4451,164,2,1011,'1.99','2005-05-31 02:05:39','2006-02-15 22:13:38'),(4452,164,2,1713,'4.99','2005-06-16 14:28:33','2006-02-15 22:13:38'),(4453,164,2,2589,'2.99','2005-06-19 05:21:27','2006-02-15 22:13:38'),(4454,164,1,3082,'8.99','2005-06-20 15:32:11','2006-02-15 22:13:38'),(4455,164,2,4548,'4.99','2005-07-08 04:21:54','2006-02-15 22:13:38'),(4456,164,1,5895,'3.99','2005-07-10 20:13:19','2006-02-15 22:13:38'),(4457,164,1,6393,'0.99','2005-07-11 22:28:12','2006-02-15 22:13:38'),(4458,164,2,6558,'2.99','2005-07-12 05:16:07','2006-02-15 22:13:38'),(4459,164,1,6637,'4.99','2005-07-12 09:57:39','2006-02-15 22:13:38'),(4460,164,2,6702,'0.99','2005-07-12 12:48:03','2006-02-15 22:13:38'),(4461,164,1,6980,'3.99','2005-07-27 00:50:30','2006-02-15 22:13:38'),(4462,164,1,7227,'6.99','2005-07-27 09:53:43','2006-02-15 22:13:38'),(4463,164,2,8135,'3.99','2005-07-28 20:03:25','2006-02-15 22:13:38'),(4464,164,2,8824,'4.99','2005-07-29 22:22:58','2006-02-15 22:13:38'),(4465,164,2,11175,'2.99','2005-08-02 10:38:47','2006-02-15 22:13:38'),(4466,164,2,13453,'5.99','2005-08-20 00:30:51','2006-02-15 22:13:38'),(4467,165,2,338,'4.99','2005-05-27 03:42:52','2006-02-15 22:13:38'),(4468,165,1,2013,'3.99','2005-06-17 12:03:01','2006-02-15 22:13:38'),(4469,165,2,3195,'2.99','2005-06-21 00:02:10','2006-02-15 22:13:38'),(4470,165,2,3531,'4.99','2005-07-06 01:24:08','2006-02-15 22:13:38'),(4471,165,1,3784,'5.99','2005-07-06 13:57:56','2006-02-15 22:13:38'),(4472,165,2,4304,'0.99','2005-07-07 17:01:19','2006-02-15 22:13:38'),(4473,165,2,4945,'2.99','2005-07-08 22:45:02','2006-02-15 22:13:38'),(4474,165,1,5472,'4.99','2005-07-09 23:16:40','2006-02-15 22:13:38'),(4475,165,2,5658,'4.99','2005-07-10 07:34:08','2006-02-15 22:13:38'),(4476,165,2,5901,'6.99','2005-07-10 20:22:12','2006-02-15 22:13:39'),(4477,165,1,5973,'0.99','2005-07-11 00:09:17','2006-02-15 22:13:39'),(4478,165,1,7074,'2.99','2005-07-27 04:06:24','2006-02-15 22:13:39'),(4479,165,1,8608,'0.99','2005-07-29 13:18:52','2006-02-15 22:13:39'),(4480,165,2,9182,'7.99','2005-07-30 12:06:58','2006-02-15 22:13:39'),(4481,165,2,9685,'4.99','2005-07-31 06:49:18','2006-02-15 22:13:39'),(4482,165,1,10565,'4.99','2005-08-01 13:08:27','2006-02-15 22:13:39'),(4483,165,1,11484,'2.99','2005-08-02 22:28:23','2006-02-15 22:13:39'),(4484,165,2,12643,'4.99','2005-08-18 18:21:06','2006-02-15 22:13:39'),(4485,165,2,15007,'1.99','2005-08-22 08:21:21','2006-02-15 22:13:39'),(4486,165,1,15801,'3.99','2005-08-23 14:26:04','2006-02-15 22:13:39'),(4487,165,2,15834,'5.99','2005-08-23 15:23:50','2006-02-15 22:13:39'),(4488,166,1,662,'1.99','2005-05-28 21:09:31','2006-02-15 22:13:39'),(4489,166,2,1412,'2.99','2005-06-15 17:09:48','2006-02-15 22:13:39'),(4490,166,1,2211,'3.99','2005-06-18 02:29:10','2006-02-15 22:13:39'),(4491,166,1,2874,'5.99','2005-06-20 00:42:26','2006-02-15 22:13:39'),(4492,166,1,3085,'0.99','2005-06-20 15:42:33','2006-02-15 22:13:39'),(4493,166,2,3606,'2.99','2005-07-06 05:28:02','2006-02-15 22:13:39'),(4494,166,1,3642,'2.99','2005-07-06 07:18:20','2006-02-15 22:13:39'),(4495,166,2,4389,'6.99','2005-07-07 20:58:58','2006-02-15 22:13:39'),(4496,166,1,4658,'0.99','2005-07-08 09:51:11','2006-02-15 22:13:39'),(4497,166,1,5184,'4.99','2005-07-09 10:14:34','2006-02-15 22:13:39'),(4498,166,2,5380,'4.99','2005-07-09 19:08:44','2006-02-15 22:13:39'),(4499,166,1,5646,'2.99','2005-07-10 07:08:09','2006-02-15 22:13:39'),(4500,166,1,5855,'7.99','2005-07-10 17:54:06','2006-02-15 22:13:39'),(4501,166,2,6237,'0.99','2005-07-11 14:19:12','2006-02-15 22:13:39'),(4502,166,2,6882,'2.99','2005-07-12 20:50:39','2006-02-15 22:13:39'),(4503,166,1,7581,'2.99','2005-07-27 23:14:35','2006-02-15 22:13:39'),(4504,166,1,8052,'5.99','2005-07-28 16:57:31','2006-02-15 22:13:39'),(4505,166,1,9009,'8.99','2005-07-30 05:12:01','2006-02-15 22:13:39'),(4506,166,2,10422,'7.99','2005-08-01 08:17:11','2006-02-15 22:13:39'),(4507,166,2,12683,'4.99','2005-08-18 19:50:43','2006-02-15 22:13:39'),(4508,166,1,12968,'4.99','2005-08-19 06:38:18','2006-02-15 22:13:39'),(4509,166,2,13582,'4.99','2005-08-20 05:28:11','2006-02-15 22:13:39'),(4510,166,2,13901,'7.99','2005-08-20 16:06:53','2006-02-15 22:13:39'),(4511,166,2,14261,'5.99','2005-08-21 06:07:24','2006-02-15 22:13:39'),(4512,166,2,14281,'2.99','2005-08-21 06:40:48','2006-02-15 22:13:39'),(4513,166,1,15213,'5.99','2005-08-22 16:49:02','2006-02-15 22:13:39'),(4514,166,2,15216,'2.99','2005-08-22 16:57:02','2006-02-15 22:13:39'),(4515,166,2,15806,'1.99','2005-08-23 14:31:50','2006-02-15 22:13:39'),(4516,167,1,280,'2.99','2005-05-26 18:36:58','2006-02-15 22:13:39'),(4517,167,1,365,'2.99','2005-05-27 07:31:20','2006-02-15 22:13:39'),(4518,167,1,927,'4.99','2005-05-30 12:16:40','2006-02-15 22:13:40'),(4519,167,1,1416,'3.99','2005-06-15 17:44:57','2006-02-15 22:13:40'),(4520,167,1,1509,'5.99','2005-06-15 22:35:53','2006-02-15 22:13:40'),(4521,167,2,2381,'5.99','2005-06-18 15:00:30','2006-02-15 22:13:40'),(4522,167,2,3518,'4.99','2005-07-06 00:56:03','2006-02-15 22:13:40'),(4523,167,2,4493,'0.99','2005-07-08 01:40:24','2006-02-15 22:13:40'),(4524,167,2,5131,'0.99','2005-07-09 07:35:03','2006-02-15 22:13:40'),(4525,167,1,5178,'4.99','2005-07-09 09:59:52','2006-02-15 22:13:40'),(4526,167,1,5191,'0.99','2005-07-09 10:26:48','2006-02-15 22:13:40'),(4527,167,1,5413,'4.99','2005-07-09 20:28:42','2006-02-15 22:13:40'),(4528,167,1,5781,'2.99','2005-07-10 13:49:30','2006-02-15 22:13:40'),(4529,167,2,6269,'4.99','2005-07-11 15:58:43','2006-02-15 22:13:40'),(4530,167,1,7608,'4.99','2005-07-28 00:08:36','2006-02-15 22:13:40'),(4531,167,1,8092,'2.99','2005-07-28 18:28:07','2006-02-15 22:13:40'),(4532,167,2,8227,'4.99','2005-07-29 00:02:22','2006-02-15 22:13:40'),(4533,167,1,8318,'2.99','2005-07-29 03:44:30','2006-02-15 22:13:40'),(4534,167,1,8793,'0.99','2005-07-29 20:57:22','2006-02-15 22:13:40'),(4535,167,2,8864,'0.99','2005-07-29 23:52:12','2006-02-15 22:13:40'),(4536,167,2,9563,'4.99','2005-07-31 02:28:39','2006-02-15 22:13:40'),(4537,167,2,10285,'3.99','2005-08-01 03:35:11','2006-02-15 22:13:40'),(4538,167,1,12642,'4.99','2005-08-18 18:19:16','2006-02-15 22:13:40'),(4539,167,2,12717,'4.99','2005-08-18 21:15:40','2006-02-15 22:13:40'),(4540,167,1,12978,'4.99','2005-08-19 06:57:27','2006-02-15 22:13:40'),(4541,167,1,13825,'6.99','2005-08-20 13:43:22','2006-02-15 22:13:40'),(4542,167,1,13870,'1.99','2005-08-20 15:09:16','2006-02-15 22:13:40'),(4543,167,1,15003,'3.99','2005-08-22 08:11:24','2006-02-15 22:13:40'),(4544,167,1,15050,'0.99','2005-08-22 10:07:52','2006-02-15 22:13:40'),(4545,167,2,15478,'0.99','2005-08-23 01:50:31','2006-02-15 22:13:40'),(4546,167,2,15530,'4.99','2005-08-23 03:50:48','2006-02-15 22:13:40'),(4547,167,2,15915,'4.99','2005-08-23 17:52:01','2006-02-15 22:13:40'),(4548,168,2,404,'0.99','2005-05-27 13:31:51','2006-02-15 22:13:40'),(4549,168,1,488,'4.99','2005-05-28 00:07:50','2006-02-15 22:13:40'),(4550,168,2,1222,'4.99','2005-06-15 03:38:49','2006-02-15 22:13:40'),(4551,168,1,3530,'2.99','2005-07-06 01:22:45','2006-02-15 22:13:40'),(4552,168,1,4308,'5.99','2005-07-07 17:29:16','2006-02-15 22:13:40'),(4553,168,2,4363,'5.99','2005-07-07 19:43:28','2006-02-15 22:13:40'),(4554,168,2,4953,'2.99','2005-07-08 23:09:48','2006-02-15 22:13:40'),(4555,168,1,5459,'0.99','2005-07-09 22:43:56','2006-02-15 22:13:40'),(4556,168,1,5907,'5.99','2005-07-10 20:41:41','2006-02-15 22:13:40'),(4557,168,1,6334,'5.99','2005-07-11 19:20:44','2006-02-15 22:13:40'),(4558,168,2,6444,'0.99','2005-07-12 00:36:02','2006-02-15 22:13:40'),(4559,168,2,6809,'3.99','2005-07-12 17:51:54','2006-02-15 22:13:41'),(4560,168,2,8352,'1.99','2005-07-29 04:52:01','2006-02-15 22:13:41'),(4561,168,1,8527,'1.99','2005-07-29 10:21:00','2006-02-15 22:13:41'),(4562,168,2,8659,'6.99','2005-07-29 15:26:31','2006-02-15 22:13:41'),(4563,168,2,8883,'1.99','2005-07-30 00:24:48','2006-02-15 22:13:41'),(4564,168,2,9197,'4.99','2005-07-30 12:31:36','2006-02-15 22:13:41'),(4565,168,1,9418,'4.99','2005-07-30 21:00:52','2006-02-15 22:13:41'),(4566,168,2,9857,'6.99','2005-07-31 13:00:53','2006-02-15 22:13:41'),(4567,168,2,9899,'4.99','2005-07-31 14:12:36','2006-02-15 22:13:41'),(4568,168,2,10270,'0.99','2005-08-01 03:10:24','2006-02-15 22:13:41'),(4569,168,1,11551,'0.99','2005-08-17 01:03:49','2006-02-15 22:13:41'),(4570,168,1,11627,'10.99','2005-08-17 04:25:47','2006-02-15 22:13:41'),(4571,168,1,11631,'1.99','2005-08-17 04:28:56','2006-02-15 22:13:41'),(4572,168,1,12545,'6.99','2005-08-18 14:28:00','2006-02-15 22:13:41'),(4573,168,1,12781,'2.99','2005-08-18 23:50:24','2006-02-15 22:13:41'),(4574,168,1,13018,'8.99','2005-08-19 08:04:50','2006-02-15 22:13:41'),(4575,168,2,13532,'4.99','2005-08-20 03:29:28','2006-02-15 22:13:41'),(4576,168,2,13811,'0.99','2005-08-20 13:00:30','2006-02-15 22:13:41'),(4577,168,1,14090,'2.99','2005-08-21 00:11:16','2006-02-15 22:13:41'),(4578,168,1,15033,'3.99','2005-08-22 09:25:24','2006-02-15 22:13:41'),(4579,168,1,15165,'2.99','2005-08-22 14:59:30','2006-02-15 22:13:41'),(4580,168,2,15683,'2.99','2005-08-23 09:38:17','2006-02-15 22:13:41'),(4581,168,1,15894,'0.99','2006-02-14 15:16:03','2006-02-15 22:13:41'),(4582,169,2,527,'3.99','2005-05-28 04:28:38','2006-02-15 22:13:41'),(4583,169,1,1087,'4.99','2005-05-31 11:18:08','2006-02-15 22:13:41'),(4584,169,1,2023,'4.99','2005-06-17 12:52:58','2006-02-15 22:13:41'),(4585,169,1,3261,'2.99','2005-06-21 04:07:41','2006-02-15 22:13:41'),(4586,169,1,3493,'8.99','2005-07-05 23:46:19','2006-02-15 22:13:41'),(4587,169,1,4687,'4.99','2005-07-08 10:54:19','2006-02-15 22:13:41'),(4588,169,1,5066,'2.99','2005-07-09 04:48:50','2006-02-15 22:13:41'),(4589,169,1,6143,'3.99','2005-07-11 09:02:37','2006-02-15 22:13:41'),(4590,169,2,6453,'4.99','2005-07-12 00:59:53','2006-02-15 22:13:41'),(4591,169,2,6488,'9.99','2005-07-12 02:20:09','2006-02-15 22:13:41'),(4592,169,2,7187,'6.99','2005-07-27 08:27:58','2006-02-15 22:13:41'),(4593,169,1,7597,'0.99','2005-07-27 23:35:49','2006-02-15 22:13:41'),(4594,169,2,8558,'4.99','2005-07-29 11:24:49','2006-02-15 22:13:41'),(4595,169,2,9203,'0.99','2005-07-30 12:43:40','2006-02-15 22:13:41'),(4596,169,2,11687,'5.99','2005-08-17 06:39:59','2006-02-15 22:13:41'),(4597,169,1,11898,'5.99','2005-08-17 15:24:12','2006-02-15 22:13:41'),(4598,169,2,13198,'2.99','2005-08-19 14:47:18','2006-02-15 22:13:41'),(4599,169,2,13237,'1.99','2005-08-19 16:18:36','2006-02-15 22:13:41'),(4600,169,2,14435,'0.99','2005-08-21 11:44:37','2006-02-15 22:13:42'),(4601,169,2,14805,'4.99','2005-08-22 00:52:01','2006-02-15 22:13:42'),(4602,169,2,15534,'0.99','2005-08-23 03:55:54','2006-02-15 22:13:42'),(4603,169,2,15680,'4.99','2005-08-23 09:33:22','2006-02-15 22:13:42'),(4604,170,1,211,'2.99','2005-05-26 08:33:10','2006-02-15 22:13:42'),(4605,170,1,377,'5.99','2005-05-27 09:04:05','2006-02-15 22:13:42'),(4606,170,2,504,'0.99','2005-05-28 02:05:34','2006-02-15 22:13:42'),(4607,170,2,2117,'0.99','2005-06-17 20:24:00','2006-02-15 22:13:42'),(4608,170,2,2413,'8.99','2005-06-18 16:59:34','2006-02-15 22:13:42'),(4609,170,2,3651,'4.99','2005-07-06 07:40:31','2006-02-15 22:13:42'),(4610,170,1,3749,'4.99','2005-07-06 12:18:03','2006-02-15 22:13:42'),(4611,170,2,4113,'4.99','2005-07-07 06:49:52','2006-02-15 22:13:42'),(4612,170,2,4468,'0.99','2005-07-08 00:17:59','2006-02-15 22:13:42'),(4613,170,2,5075,'0.99','2005-07-09 05:12:07','2006-02-15 22:13:42'),(4614,170,1,5573,'4.99','2005-07-10 03:50:47','2006-02-15 22:13:42'),(4615,170,2,5685,'7.99','2005-07-10 09:01:38','2006-02-15 22:13:42'),(4616,170,2,5808,'2.99','2005-07-10 15:17:33','2006-02-15 22:13:42'),(4617,170,1,7999,'7.99','2005-07-28 15:10:14','2006-02-15 22:13:42'),(4618,170,2,9517,'2.99','2005-07-31 00:41:23','2006-02-15 22:13:42'),(4619,170,1,9817,'2.99','2005-07-31 11:33:31','2006-02-15 22:13:42'),(4620,170,1,10102,'9.99','2005-07-31 20:49:10','2006-02-15 22:13:42'),(4621,170,2,10481,'5.99','2005-08-01 10:17:26','2006-02-15 22:13:42'),(4622,170,1,11039,'0.99','2005-08-02 06:00:53','2006-02-15 22:13:42'),(4623,170,2,12706,'3.99','2005-08-18 20:44:34','2006-02-15 22:13:42'),(4624,170,1,12967,'3.99','2005-08-19 06:37:51','2006-02-15 22:13:42'),(4625,170,1,13081,'0.99','2005-08-19 10:19:06','2006-02-15 22:13:42'),(4626,170,2,13862,'6.99','2005-08-20 14:57:01','2006-02-15 22:13:42'),(4627,170,2,14022,'8.99','2005-08-20 21:08:49','2006-02-15 22:13:42'),(4628,170,2,14675,'2.99','2005-08-21 20:01:51','2006-02-15 22:13:42'),(4629,170,1,15549,'7.99','2005-08-23 04:27:06','2006-02-15 22:13:42'),(4630,171,2,804,'9.99','2005-05-29 18:10:24','2006-02-15 22:13:42'),(4631,171,2,1676,'0.99','2005-06-16 11:06:09','2006-02-15 22:13:42'),(4632,171,2,2004,'4.99','2005-06-17 11:43:38','2006-02-15 22:13:42'),(4633,171,2,2199,'5.99','2005-06-18 01:57:56','2006-02-15 22:13:42'),(4634,171,1,2497,'4.99','2005-06-18 22:50:40','2006-02-15 22:13:42'),(4635,171,2,2599,'5.99','2005-06-19 06:06:07','2006-02-15 22:13:42'),(4636,171,2,2788,'2.99','2005-06-19 18:48:11','2006-02-15 22:13:42'),(4637,171,2,3338,'6.99','2005-06-21 10:27:31','2006-02-15 22:13:42'),(4638,171,1,3621,'0.99','2005-07-06 06:03:55','2006-02-15 22:13:42'),(4639,171,2,3745,'2.99','2005-07-06 12:10:32','2006-02-15 22:13:42'),(4640,171,1,5660,'5.99','2005-07-10 07:46:12','2006-02-15 22:13:42'),(4641,171,1,5986,'4.99','2005-07-11 00:54:56','2006-02-15 22:13:43'),(4642,171,1,6766,'2.99','2005-07-12 15:32:01','2006-02-15 22:13:43'),(4643,171,2,6774,'0.99','2005-07-12 15:56:08','2006-02-15 22:13:43'),(4644,171,1,7037,'3.99','2005-07-27 03:06:44','2006-02-15 22:13:43'),(4645,171,2,9066,'4.99','2005-07-30 07:28:54','2006-02-15 22:13:43'),(4646,171,2,9084,'5.99','2005-07-30 08:14:29','2006-02-15 22:13:43'),(4647,171,2,10622,'4.99','2005-08-01 15:12:00','2006-02-15 22:13:43'),(4648,171,1,12600,'4.99','2005-08-18 16:44:24','2006-02-15 22:13:43'),(4649,171,1,12962,'5.99','2005-08-19 06:22:48','2006-02-15 22:13:43'),(4650,171,2,13087,'6.99','2005-08-19 10:33:52','2006-02-15 22:13:43'),(4651,171,2,13292,'0.99','2005-08-19 18:35:32','2006-02-15 22:13:43'),(4652,171,2,13433,'0.99','2005-08-19 23:30:53','2006-02-15 22:13:43'),(4653,171,1,14270,'1.99','2005-08-21 06:22:18','2006-02-15 22:13:43'),(4654,171,2,14615,'9.99','2005-08-21 18:06:32','2006-02-15 22:13:43'),(4655,171,2,15810,'0.99','2005-08-23 14:43:15','2006-02-15 22:13:43'),(4656,172,2,449,'3.99','2005-05-27 19:13:15','2006-02-15 22:13:43'),(4657,172,1,685,'6.99','2005-05-29 00:17:51','2006-02-15 22:13:43'),(4658,172,1,837,'0.99','2005-05-30 00:02:08','2006-02-15 22:13:43'),(4659,172,2,1507,'0.99','2005-06-15 22:25:26','2006-02-15 22:13:43'),(4660,172,1,2052,'0.99','2005-06-17 15:14:43','2006-02-15 22:13:43'),(4661,172,2,3032,'1.99','2005-06-20 11:58:30','2006-02-15 22:13:43'),(4662,172,1,4820,'5.99','2005-07-08 17:25:23','2006-02-15 22:13:43'),(4663,172,1,4821,'4.99','2005-07-08 17:28:08','2006-02-15 22:13:43'),(4664,172,2,4878,'6.99','2005-07-08 19:33:49','2006-02-15 22:13:43'),(4665,172,2,6246,'7.99','2005-07-11 14:57:51','2006-02-15 22:13:43'),(4666,172,1,6380,'0.99','2005-07-11 21:55:40','2006-02-15 22:13:43'),(4667,172,1,6875,'5.99','2005-07-12 20:23:05','2006-02-15 22:13:43'),(4668,172,1,7122,'6.99','2005-07-27 06:03:18','2006-02-15 22:13:43'),(4669,172,1,7135,'2.99','2005-07-27 06:34:32','2006-02-15 22:13:43'),(4670,172,1,7194,'3.99','2005-07-27 08:39:58','2006-02-15 22:13:43'),(4671,172,2,7261,'2.99','2005-07-27 11:15:01','2006-02-15 22:13:43'),(4672,172,1,7638,'4.99','2005-07-28 01:13:26','2006-02-15 22:13:43'),(4673,172,2,8944,'6.99','2005-07-30 03:11:44','2006-02-15 22:13:43'),(4674,172,1,9118,'2.99','2005-07-30 09:24:18','2006-02-15 22:13:43'),(4675,172,2,9218,'5.99','2005-07-30 13:14:35','2006-02-15 22:13:43'),(4676,172,1,10312,'3.99','2005-08-01 04:29:06','2006-02-15 22:13:43'),(4677,172,2,10621,'0.99','2005-08-01 15:10:26','2006-02-15 22:13:43'),(4678,172,2,11499,'6.99','2005-08-16 22:54:12','2006-02-15 22:13:43'),(4679,172,2,12350,'4.99','2005-08-18 07:29:46','2006-02-15 22:13:43'),(4680,172,2,12638,'8.99','2005-08-18 18:11:39','2006-02-15 22:13:43'),(4681,172,2,13067,'5.99','2005-08-19 09:51:17','2006-02-15 22:13:43'),(4682,172,2,13320,'4.99','2005-08-19 19:35:33','2006-02-15 22:13:44'),(4683,172,1,13342,'0.99','2005-08-19 20:21:36','2006-02-15 22:13:44'),(4684,172,2,13937,'4.99','2005-08-20 17:22:51','2006-02-15 22:13:44'),(4685,172,1,14991,'4.99','2005-08-22 07:50:44','2006-02-15 22:13:44'),(4686,172,2,15637,'2.99','2005-08-23 07:53:38','2006-02-15 22:13:44'),(4687,172,1,15902,'3.99','2005-08-23 17:28:03','2006-02-15 22:13:44'),(4688,172,2,16038,'3.99','2005-08-23 22:14:31','2006-02-15 22:13:44'),(4689,173,2,578,'2.99','2005-05-28 11:15:48','2006-02-15 22:13:44'),(4690,173,1,628,'4.99','2005-05-28 17:05:46','2006-02-15 22:13:44'),(4691,173,2,1188,'2.99','2005-06-15 01:04:07','2006-02-15 22:13:44'),(4692,173,2,2435,'4.99','2005-06-18 18:12:26','2006-02-15 22:13:44'),(4693,173,1,2602,'2.99','2005-06-19 06:10:08','2006-02-15 22:13:44'),(4694,173,2,3224,'0.99','2005-06-21 02:11:36','2006-02-15 22:13:44'),(4695,173,1,3336,'4.99','2005-06-21 10:14:27','2006-02-15 22:13:44'),(4696,173,2,3717,'0.99','2005-07-06 10:53:34','2006-02-15 22:13:44'),(4697,173,1,4904,'7.99','2005-07-08 20:53:27','2006-02-15 22:13:44'),(4698,173,2,5430,'2.99','2005-07-09 21:19:54','2006-02-15 22:13:44'),(4699,173,2,5485,'4.99','2005-07-09 23:55:25','2006-02-15 22:13:44'),(4700,173,1,5488,'2.99','2005-07-10 00:02:06','2006-02-15 22:13:44'),(4701,173,2,5531,'2.99','2005-07-10 02:13:59','2006-02-15 22:13:44'),(4702,173,1,5615,'3.99','2005-07-10 05:18:51','2006-02-15 22:13:44'),(4703,173,2,6021,'4.99','2005-07-11 02:10:18','2006-02-15 22:13:44'),(4704,173,1,7644,'0.99','2005-07-28 01:27:33','2006-02-15 22:13:44'),(4705,173,2,8299,'2.99','2005-07-29 02:56:00','2006-02-15 22:13:44'),(4706,173,2,8808,'4.99','2005-07-29 21:39:07','2006-02-15 22:13:44'),(4707,173,2,8829,'8.99','2005-07-29 22:33:34','2006-02-15 22:13:44'),(4708,173,1,9097,'4.99','2005-07-30 08:40:35','2006-02-15 22:13:44'),(4709,173,2,9512,'2.99','2005-07-31 00:26:30','2006-02-15 22:13:44'),(4710,173,1,10351,'5.99','2005-08-01 05:32:13','2006-02-15 22:13:44'),(4711,173,2,12073,'2.99','2005-08-17 21:50:39','2006-02-15 22:13:44'),(4712,173,1,12282,'6.99','2005-08-18 04:54:20','2006-02-15 22:13:44'),(4713,173,2,12501,'4.99','2005-08-18 13:13:13','2006-02-15 22:13:44'),(4714,173,1,14654,'2.99','2005-08-21 19:36:59','2006-02-15 22:13:44'),(4715,173,2,15483,'0.99','2005-08-23 02:02:53','2006-02-15 22:13:44'),(4716,173,1,15775,'8.99','2005-08-23 13:25:44','2006-02-15 22:13:44'),(4717,173,1,16010,'2.99','2005-08-23 21:10:24','2006-02-15 22:13:44'),(4718,174,1,41,'5.99','2005-05-25 05:12:29','2006-02-15 22:13:44'),(4719,174,2,1071,'4.99','2005-05-31 09:48:56','2006-02-15 22:13:44'),(4720,174,2,1566,'7.99','2005-06-16 03:13:20','2006-02-15 22:13:44'),(4721,174,1,1609,'0.99','2005-06-16 06:34:59','2006-02-15 22:13:44'),(4722,174,1,2326,'5.99','2005-06-18 10:14:22','2006-02-15 22:13:44'),(4723,174,2,3446,'1.99','2005-06-21 20:45:51','2006-02-15 22:13:45'),(4724,174,2,4803,'1.99','2005-07-08 16:56:34','2006-02-15 22:13:45'),(4725,174,2,5414,'4.99','2005-07-09 20:29:36','2006-02-15 22:13:45'),(4726,174,1,6909,'4.99','2005-07-12 22:09:30','2006-02-15 22:13:45'),(4727,174,2,8348,'7.99','2005-07-29 04:49:26','2006-02-15 22:13:45'),(4728,174,1,8754,'4.99','2005-07-29 19:18:30','2006-02-15 22:13:45'),(4729,174,1,9301,'4.99','2005-07-30 16:34:29','2006-02-15 22:13:45'),(4730,174,1,9847,'2.99','2005-07-31 12:33:43','2006-02-15 22:13:45'),(4731,174,1,10363,'2.99','2005-08-01 06:01:52','2006-02-15 22:13:45'),(4732,174,2,10398,'4.99','2005-08-01 07:11:49','2006-02-15 22:13:45'),(4733,174,1,10559,'8.99','2005-08-01 13:02:58','2006-02-15 22:13:45'),(4734,174,1,11525,'0.99','2005-08-17 00:15:31','2006-02-15 22:13:45'),(4735,174,2,12886,'5.99','2005-08-19 03:38:32','2006-02-15 22:13:45'),(4736,174,1,13185,'0.99','2005-08-19 14:22:30','2006-02-15 22:13:45'),(4737,174,1,15892,'1.99','2005-08-23 17:01:00','2006-02-15 22:13:45'),(4738,174,1,15975,'4.99','2005-08-23 20:06:23','2006-02-15 22:13:45'),(4739,175,2,1495,'0.99','2005-06-15 21:54:31','2006-02-15 22:13:45'),(4740,175,2,3266,'4.99','2005-06-21 04:49:07','2006-02-15 22:13:45'),(4741,175,1,3625,'4.99','2005-07-06 06:12:52','2006-02-15 22:13:45'),(4742,175,2,4167,'5.99','2005-07-07 09:37:08','2006-02-15 22:13:45'),(4743,175,1,5232,'1.99','2005-07-09 12:35:08','2006-02-15 22:13:45'),(4744,175,2,6865,'7.99','2005-07-12 20:02:40','2006-02-15 22:13:45'),(4745,175,1,7448,'2.99','2005-07-27 18:06:30','2006-02-15 22:13:45'),(4746,175,1,7771,'0.99','2005-07-28 06:52:12','2006-02-15 22:13:45'),(4747,175,1,8244,'2.99','2005-07-29 00:35:34','2006-02-15 22:13:45'),(4748,175,1,8264,'4.99','2005-07-29 01:18:50','2006-02-15 22:13:45'),(4749,175,1,8440,'3.99','2005-07-29 07:31:26','2006-02-15 22:13:45'),(4750,175,1,8817,'4.99','2005-07-29 22:09:08','2006-02-15 22:13:45'),(4751,175,2,9941,'4.99','2005-07-31 15:31:25','2006-02-15 22:13:45'),(4752,175,2,10229,'7.99','2005-08-01 01:45:26','2006-02-15 22:13:45'),(4753,175,1,10875,'0.99','2005-08-02 00:31:44','2006-02-15 22:13:45'),(4754,175,2,11618,'4.99','2005-08-17 04:01:36','2006-02-15 22:13:45'),(4755,175,1,12509,'0.99','2005-08-18 13:21:52','2006-02-15 22:13:45'),(4756,175,1,13016,'4.99','2005-08-19 07:57:14','2006-02-15 22:13:45'),(4757,175,2,13833,'6.99','2005-08-20 14:00:29','2006-02-15 22:13:45'),(4758,175,2,13997,'6.99','2005-08-20 19:51:28','2006-02-15 22:13:45'),(4759,175,2,14507,'4.99','2005-08-21 14:32:45','2006-02-15 22:13:45'),(4760,175,2,14897,'2.99','2005-08-22 04:22:31','2006-02-15 22:13:45'),(4761,175,2,14060,'3.98','2006-02-14 15:16:03','2006-02-15 22:13:45'),(4762,175,2,13161,'0.00','2006-02-14 15:16:03','2006-02-15 22:13:46'),(4763,176,1,172,'0.99','2005-05-26 03:17:42','2006-02-15 22:13:46'),(4764,176,2,380,'6.99','2005-05-27 09:34:39','2006-02-15 22:13:46'),(4765,176,1,553,'3.99','2005-05-28 08:14:44','2006-02-15 22:13:46'),(4766,176,1,663,'1.99','2005-05-28 21:23:02','2006-02-15 22:13:46'),(4767,176,1,1062,'7.99','2005-05-31 08:38:20','2006-02-15 22:13:46'),(4768,176,1,1291,'5.99','2005-06-15 08:55:01','2006-02-15 22:13:46'),(4769,176,1,1741,'7.99','2005-06-16 16:31:37','2006-02-15 22:13:46'),(4770,176,1,1836,'6.99','2005-06-16 23:13:05','2006-02-15 22:13:46'),(4771,176,1,2181,'8.99','2005-06-18 00:48:31','2006-02-15 22:13:46'),(4772,176,1,2218,'2.99','2005-06-18 03:13:13','2006-02-15 22:13:46'),(4773,176,2,2427,'2.99','2005-06-18 17:45:00','2006-02-15 22:13:46'),(4774,176,2,2503,'1.99','2005-06-18 23:17:19','2006-02-15 22:13:46'),(4775,176,1,2922,'4.99','2005-06-20 04:13:47','2006-02-15 22:13:46'),(4776,176,1,3643,'4.99','2005-07-06 07:20:08','2006-02-15 22:13:46'),(4777,176,2,3931,'6.99','2005-07-06 21:03:46','2006-02-15 22:13:46'),(4778,176,2,4121,'3.99','2005-07-07 07:13:50','2006-02-15 22:13:46'),(4779,176,1,6035,'2.99','2005-07-11 03:01:45','2006-02-15 22:13:46'),(4780,176,1,6354,'6.99','2005-07-11 20:54:27','2006-02-15 22:13:46'),(4781,176,1,7017,'4.99','2005-07-27 02:16:03','2006-02-15 22:13:46'),(4782,176,1,7025,'2.99','2005-07-27 02:40:29','2006-02-15 22:13:46'),(4783,176,1,7210,'2.99','2005-07-27 09:19:05','2006-02-15 22:13:46'),(4784,176,2,7521,'2.99','2005-07-27 21:04:42','2006-02-15 22:13:46'),(4785,176,1,7751,'5.99','2005-07-28 05:56:13','2006-02-15 22:13:46'),(4786,176,1,8279,'2.99','2005-07-29 01:43:37','2006-02-15 22:13:46'),(4787,176,2,9145,'6.99','2005-07-30 10:27:55','2006-02-15 22:13:46'),(4788,176,1,10277,'2.99','2005-08-01 03:22:41','2006-02-15 22:13:46'),(4789,176,2,10441,'0.99','2005-08-01 08:55:56','2006-02-15 22:13:46'),(4790,176,1,10862,'2.99','2005-08-02 00:17:34','2006-02-15 22:13:46'),(4791,176,1,11678,'5.99','2005-08-17 06:07:39','2006-02-15 22:13:46'),(4792,176,1,12299,'2.99','2005-08-18 05:32:32','2006-02-15 22:13:46'),(4793,176,1,12718,'2.99','2005-08-18 21:21:44','2006-02-15 22:13:46'),(4794,176,1,13170,'7.99','2005-08-19 13:45:48','2006-02-15 22:13:46'),(4795,176,2,13186,'5.99','2005-08-19 14:23:19','2006-02-15 22:13:46'),(4796,176,1,14083,'7.99','2005-08-20 23:42:31','2006-02-15 22:13:46'),(4797,176,2,14232,'1.99','2005-08-21 05:07:02','2006-02-15 22:13:46'),(4798,176,2,15311,'4.99','2005-08-22 19:56:52','2006-02-15 22:13:46'),(4799,176,1,15933,'4.99','2005-08-23 18:36:44','2006-02-15 22:13:46'),(4800,177,1,1393,'2.99','2005-06-15 16:12:50','2006-02-15 22:13:46'),(4801,177,1,1524,'2.99','2005-06-16 00:25:52','2006-02-15 22:13:46'),(4802,177,2,1621,'4.99','2005-06-16 07:24:12','2006-02-15 22:13:47'),(4803,177,1,1738,'0.99','2005-06-16 16:07:27','2006-02-15 22:13:47'),(4804,177,2,2467,'2.99','2005-06-18 20:20:05','2006-02-15 22:13:47'),(4805,177,1,4760,'0.99','2005-07-08 14:48:07','2006-02-15 22:13:47'),(4806,177,2,6217,'9.99','2005-07-11 13:13:45','2006-02-15 22:13:47'),(4807,177,1,6284,'2.99','2005-07-11 16:51:39','2006-02-15 22:13:47'),(4808,177,1,7493,'3.99','2005-07-27 19:55:46','2006-02-15 22:13:47'),(4809,177,2,7674,'1.99','2005-07-28 02:54:30','2006-02-15 22:13:47'),(4810,177,1,8139,'0.99','2005-07-28 20:16:30','2006-02-15 22:13:47'),(4811,177,2,9190,'1.99','2005-07-30 12:24:17','2006-02-15 22:13:47'),(4812,177,2,10321,'4.99','2005-08-01 04:40:02','2006-02-15 22:13:47'),(4813,177,1,10661,'2.99','2005-08-01 16:48:31','2006-02-15 22:13:47'),(4814,177,1,10710,'0.99','2005-08-01 18:44:36','2006-02-15 22:13:47'),(4815,177,1,11195,'0.99','2005-08-02 11:42:23','2006-02-15 22:13:47'),(4816,177,1,11376,'5.99','2005-08-02 18:16:00','2006-02-15 22:13:47'),(4817,177,2,11662,'6.99','2005-08-17 05:27:37','2006-02-15 22:13:47'),(4818,177,1,12623,'4.99','2005-08-18 17:34:19','2006-02-15 22:13:47'),(4819,177,2,14093,'0.99','2005-08-21 00:21:29','2006-02-15 22:13:47'),(4820,177,2,14310,'0.99','2005-08-21 07:44:32','2006-02-15 22:13:47'),(4821,177,2,14849,'2.99','2005-08-22 02:15:26','2006-02-15 22:13:47'),(4822,177,2,14883,'0.99','2005-08-22 03:55:02','2006-02-15 22:13:47'),(4823,178,1,1292,'6.99','2005-06-15 09:03:52','2006-02-15 22:13:47'),(4824,178,2,1458,'6.99','2005-06-15 20:24:05','2006-02-15 22:13:47'),(4825,178,2,1568,'2.99','2005-06-16 03:14:01','2006-02-15 22:13:47'),(4826,178,2,1745,'3.99','2005-06-16 16:41:16','2006-02-15 22:13:47'),(4827,178,2,2124,'1.99','2005-06-17 20:49:14','2006-02-15 22:13:47'),(4828,178,1,2293,'4.99','2005-06-18 07:45:03','2006-02-15 22:13:47'),(4829,178,2,2844,'6.99','2005-06-19 22:40:12','2006-02-15 22:13:47'),(4830,178,1,2898,'9.99','2005-06-20 02:38:06','2006-02-15 22:13:47'),(4831,178,1,4915,'2.99','2005-07-08 21:31:22','2006-02-15 22:13:47'),(4832,178,1,5015,'2.99','2005-07-09 01:54:24','2006-02-15 22:13:47'),(4833,178,1,5057,'4.99','2005-07-09 04:20:29','2006-02-15 22:13:47'),(4834,178,1,5094,'10.99','2005-07-09 05:59:47','2006-02-15 22:13:47'),(4835,178,1,5984,'2.99','2005-07-11 00:44:36','2006-02-15 22:13:47'),(4836,178,2,6347,'4.99','2005-07-11 20:18:53','2006-02-15 22:13:48'),(4837,178,1,6554,'5.99','2005-07-12 05:07:26','2006-02-15 22:13:48'),(4838,178,1,6566,'6.99','2005-07-12 05:42:53','2006-02-15 22:13:48'),(4839,178,2,6606,'2.99','2005-07-12 08:03:40','2006-02-15 22:13:48'),(4840,178,1,7959,'4.99','2005-07-28 13:43:20','2006-02-15 22:13:48'),(4841,178,2,8069,'0.99','2005-07-28 17:23:46','2006-02-15 22:13:48'),(4842,178,1,8287,'3.99','2005-07-29 02:03:58','2006-02-15 22:13:48'),(4843,178,2,8388,'5.99','2005-07-29 05:48:15','2006-02-15 22:13:48'),(4844,178,2,8696,'4.99','2005-07-29 16:45:18','2006-02-15 22:13:48'),(4845,178,2,9004,'4.99','2005-07-30 05:04:27','2006-02-15 22:13:48'),(4846,178,1,9311,'7.99','2005-07-30 16:58:31','2006-02-15 22:13:48'),(4847,178,2,9879,'4.99','2005-07-31 13:45:32','2006-02-15 22:13:48'),(4848,178,2,10125,'0.99','2005-07-31 21:33:03','2006-02-15 22:13:48'),(4849,178,2,10562,'0.99','2005-08-01 13:05:52','2006-02-15 22:13:48'),(4850,178,1,10802,'5.99','2005-08-01 22:18:32','2006-02-15 22:13:48'),(4851,178,2,11319,'6.99','2005-08-02 16:10:09','2006-02-15 22:13:48'),(4852,178,2,11884,'6.99','2005-08-17 14:43:23','2006-02-15 22:13:48'),(4853,178,2,11927,'3.99','2005-08-17 16:25:03','2006-02-15 22:13:48'),(4854,178,2,12049,'6.99','2005-08-17 20:53:27','2006-02-15 22:13:48'),(4855,178,2,12727,'2.99','2005-08-18 21:45:15','2006-02-15 22:13:48'),(4856,178,1,13127,'2.99','2005-08-19 12:04:03','2006-02-15 22:13:48'),(4857,178,1,14104,'4.99','2005-08-21 00:37:44','2006-02-15 22:13:48'),(4858,178,1,14257,'7.99','2005-08-21 05:52:57','2006-02-15 22:13:48'),(4859,178,2,14314,'2.99','2005-08-21 07:50:14','2006-02-15 22:13:48'),(4860,178,1,15323,'4.99','2005-08-22 20:22:40','2006-02-15 22:13:48'),(4861,178,1,12897,'4.99','2006-02-14 15:16:03','2006-02-15 22:13:48'),(4862,179,1,502,'0.99','2005-05-28 01:34:43','2006-02-15 22:13:48'),(4863,179,1,759,'6.99','2005-05-29 10:57:57','2006-02-15 22:13:48'),(4864,179,1,1046,'4.99','2005-05-31 06:42:30','2006-02-15 22:13:48'),(4865,179,2,1286,'7.99','2005-06-15 08:41:13','2006-02-15 22:13:48'),(4866,179,1,2613,'4.99','2005-06-19 07:25:50','2006-02-15 22:13:48'),(4867,179,1,3671,'6.99','2005-07-06 09:01:29','2006-02-15 22:13:48'),(4868,179,1,3844,'0.99','2005-07-06 16:37:58','2006-02-15 22:13:48'),(4869,179,1,4618,'2.99','2005-07-08 08:00:20','2006-02-15 22:13:48'),(4870,179,2,6071,'6.99','2005-07-11 04:50:03','2006-02-15 22:13:48'),(4871,179,1,6616,'7.99','2005-07-12 08:37:30','2006-02-15 22:13:48'),(4872,179,1,6806,'2.99','2005-07-12 17:31:43','2006-02-15 22:13:48'),(4873,179,1,7028,'6.99','2005-07-27 02:54:25','2006-02-15 22:13:48'),(4874,179,1,7054,'4.99','2005-07-27 03:43:28','2006-02-15 22:13:48'),(4875,179,1,7609,'4.99','2005-07-28 00:11:00','2006-02-15 22:13:48'),(4876,179,1,8573,'2.99','2005-07-29 11:51:25','2006-02-15 22:13:49'),(4877,179,1,8731,'8.99','2005-07-29 18:23:57','2006-02-15 22:13:49'),(4878,179,2,9491,'4.99','2005-07-30 23:45:23','2006-02-15 22:13:49'),(4879,179,2,9893,'0.99','2005-07-31 14:07:21','2006-02-15 22:13:49'),(4880,179,1,10156,'4.99','2005-07-31 22:36:00','2006-02-15 22:13:49'),(4881,179,1,10385,'4.99','2005-08-01 06:39:55','2006-02-15 22:13:49'),(4882,179,2,10569,'3.99','2005-08-01 13:18:23','2006-02-15 22:13:49'),(4883,179,1,11342,'0.99','2005-08-02 17:11:35','2006-02-15 22:13:49'),(4884,179,2,13240,'0.99','2005-08-19 16:22:14','2006-02-15 22:13:49'),(4885,179,1,13400,'4.99','2005-08-19 22:11:44','2006-02-15 22:13:49'),(4886,179,2,13844,'7.99','2005-08-20 14:30:26','2006-02-15 22:13:49'),(4887,179,2,13957,'0.99','2005-08-20 18:09:04','2006-02-15 22:13:49'),(4888,179,2,14082,'7.99','2005-08-20 23:42:00','2006-02-15 22:13:49'),(4889,179,1,14589,'0.99','2005-08-21 17:28:55','2006-02-15 22:13:49'),(4890,179,1,15985,'4.99','2005-08-23 20:20:23','2006-02-15 22:13:49'),(4891,180,1,1122,'2.99','2005-05-31 16:39:33','2006-02-15 22:13:49'),(4892,180,2,2700,'2.99','2005-06-19 13:31:52','2006-02-15 22:13:49'),(4893,180,1,2798,'2.99','2005-06-19 19:07:48','2006-02-15 22:13:49'),(4894,180,2,4826,'7.99','2005-07-08 17:44:25','2006-02-15 22:13:49'),(4895,180,1,4924,'9.99','2005-07-08 21:55:25','2006-02-15 22:13:49'),(4896,180,2,5384,'0.99','2005-07-09 19:17:46','2006-02-15 22:13:49'),(4897,180,2,5773,'0.99','2005-07-10 13:31:09','2006-02-15 22:13:49'),(4898,180,1,5860,'3.99','2005-07-10 18:08:49','2006-02-15 22:13:49'),(4899,180,1,7274,'2.99','2005-07-27 11:35:34','2006-02-15 22:13:49'),(4900,180,2,8540,'2.99','2005-07-29 10:52:51','2006-02-15 22:13:49'),(4901,180,2,8720,'5.99','2005-07-29 17:48:32','2006-02-15 22:13:49'),(4902,180,1,9373,'0.99','2005-07-30 19:05:36','2006-02-15 22:13:49'),(4903,180,2,9995,'3.99','2005-07-31 17:30:47','2006-02-15 22:13:49'),(4904,180,1,10576,'5.99','2005-08-01 13:46:02','2006-02-15 22:13:49'),(4905,180,1,10992,'8.99','2005-08-02 04:41:17','2006-02-15 22:13:49'),(4906,180,1,12313,'8.99','2005-08-18 06:07:31','2006-02-15 22:13:49'),(4907,180,1,13283,'2.99','2005-08-19 18:10:19','2006-02-15 22:13:49'),(4908,180,2,13842,'4.99','2005-08-20 14:29:37','2006-02-15 22:13:49'),(4909,180,1,13994,'2.99','2005-08-20 19:33:21','2006-02-15 22:13:49'),(4910,180,1,14109,'0.99','2005-08-21 00:52:58','2006-02-15 22:13:49'),(4911,180,1,14851,'2.99','2005-08-22 02:20:44','2006-02-15 22:13:49'),(4912,180,1,15039,'4.99','2005-08-22 09:37:54','2006-02-15 22:13:49'),(4913,180,1,12901,'4.99','2006-02-14 15:16:03','2006-02-15 22:13:49'),(4914,181,2,579,'6.99','2005-05-28 11:19:23','2006-02-15 22:13:49'),(4915,181,1,1638,'2.99','2005-06-16 08:32:36','2006-02-15 22:13:50'),(4916,181,1,2645,'5.99','2005-06-19 09:50:35','2006-02-15 22:13:50'),(4917,181,2,3449,'5.99','2005-06-21 21:01:27','2006-02-15 22:13:50'),(4918,181,2,3469,'4.99','2005-06-21 22:48:59','2006-02-15 22:13:50'),(4919,181,1,3862,'6.99','2005-07-06 17:35:22','2006-02-15 22:13:50'),(4920,181,2,4428,'4.99','2005-07-07 22:29:40','2006-02-15 22:13:50'),(4921,181,2,6477,'4.99','2005-07-12 01:38:42','2006-02-15 22:13:50'),(4922,181,1,6946,'8.99','2005-07-26 23:40:07','2006-02-15 22:13:50'),(4923,181,1,7393,'0.99','2005-07-27 16:02:52','2006-02-15 22:13:50'),(4924,181,1,7632,'4.99','2005-07-28 01:02:40','2006-02-15 22:13:50'),(4925,181,1,8593,'5.99','2005-07-29 12:38:14','2006-02-15 22:13:50'),(4926,181,1,8601,'9.99','2005-07-29 13:03:31','2006-02-15 22:13:50'),(4927,181,2,9214,'4.99','2005-07-30 13:10:14','2006-02-15 22:13:50'),(4928,181,2,9235,'5.99','2005-07-30 13:47:17','2006-02-15 22:13:50'),(4929,181,1,9357,'8.99','2005-07-30 18:37:00','2006-02-15 22:13:50'),(4930,181,1,9844,'4.99','2005-07-31 12:26:31','2006-02-15 22:13:50'),(4931,181,2,10262,'4.99','2005-08-01 03:01:26','2006-02-15 22:13:50'),(4932,181,2,10362,'6.99','2005-08-01 05:55:13','2006-02-15 22:13:50'),(4933,181,2,10703,'2.99','2005-08-01 18:37:39','2006-02-15 22:13:50'),(4934,181,1,10748,'4.99','2005-08-01 20:01:24','2006-02-15 22:13:50'),(4935,181,1,10773,'6.99','2005-08-01 20:53:45','2006-02-15 22:13:50'),(4936,181,2,11224,'4.99','2005-08-02 12:40:38','2006-02-15 22:13:50'),(4937,181,1,12363,'7.99','2005-08-18 07:52:49','2006-02-15 22:13:50'),(4938,181,1,12411,'0.99','2005-08-18 09:47:57','2006-02-15 22:13:50'),(4939,181,1,12678,'2.99','2005-08-18 19:41:27','2006-02-15 22:13:50'),(4940,181,2,12939,'2.99','2005-08-19 05:38:25','2006-02-15 22:13:50'),(4941,181,2,13118,'4.99','2005-08-19 11:39:58','2006-02-15 22:13:50'),(4942,181,2,13405,'4.99','2005-08-19 22:20:49','2006-02-15 22:13:50'),(4943,181,2,13415,'2.99','2005-08-19 22:48:09','2006-02-15 22:13:50'),(4944,181,2,14406,'3.99','2005-08-21 10:46:35','2006-02-15 22:13:50'),(4945,181,2,15196,'2.99','2005-08-22 16:11:32','2006-02-15 22:13:50'),(4946,181,2,15482,'4.99','2005-08-23 02:01:20','2006-02-15 22:13:50'),(4947,181,2,13008,'2.99','2006-02-14 15:16:03','2006-02-15 22:13:50'),(4948,182,2,161,'0.99','2005-05-26 01:51:48','2006-02-15 22:13:50'),(4949,182,2,425,'3.99','2005-05-27 15:51:30','2006-02-15 22:13:50'),(4950,182,2,1542,'3.99','2005-06-16 01:20:05','2006-02-15 22:13:50'),(4951,182,1,2049,'2.99','2005-06-17 14:58:36','2006-02-15 22:13:50'),(4952,182,2,2120,'5.99','2005-06-17 20:36:50','2006-02-15 22:13:51'),(4953,182,1,2234,'0.99','2005-06-18 04:01:28','2006-02-15 22:13:51'),(4954,182,1,3509,'2.99','2005-07-06 00:24:57','2006-02-15 22:13:51'),(4955,182,1,3697,'6.99','2005-07-06 10:07:22','2006-02-15 22:13:51'),(4956,182,1,4174,'2.99','2005-07-07 09:59:49','2006-02-15 22:13:51'),(4957,182,1,4349,'0.99','2005-07-07 19:02:37','2006-02-15 22:13:51'),(4958,182,2,4513,'1.99','2005-07-08 02:39:59','2006-02-15 22:13:51'),(4959,182,2,4591,'3.99','2005-07-08 06:29:43','2006-02-15 22:13:51'),(4960,182,2,4784,'0.99','2005-07-08 16:09:56','2006-02-15 22:13:51'),(4961,182,1,5521,'2.99','2005-07-10 01:31:22','2006-02-15 22:13:51'),(4962,182,2,7229,'0.99','2005-07-27 10:00:54','2006-02-15 22:13:51'),(4963,182,2,7863,'0.99','2005-07-28 10:05:46','2006-02-15 22:13:51'),(4964,182,2,7880,'4.99','2005-07-28 10:30:37','2006-02-15 22:13:51'),(4965,182,2,8048,'8.99','2005-07-28 16:50:26','2006-02-15 22:13:51'),(4966,182,1,11055,'4.99','2005-08-02 06:36:05','2006-02-15 22:13:51'),(4967,182,2,11785,'3.99','2005-08-17 10:54:46','2006-02-15 22:13:51'),(4968,182,1,12573,'4.99','2005-08-18 15:32:57','2006-02-15 22:13:51'),(4969,182,1,12840,'6.99','2005-08-19 01:54:11','2006-02-15 22:13:51'),(4970,182,1,13285,'2.99','2005-08-19 18:18:44','2006-02-15 22:13:51'),(4971,182,1,14586,'5.99','2005-08-21 17:19:09','2006-02-15 22:13:51'),(4972,182,1,14953,'6.99','2005-08-22 06:23:54','2006-02-15 22:13:51'),(4973,182,1,15043,'1.99','2005-08-22 09:49:32','2006-02-15 22:13:51'),(4974,183,1,382,'0.99','2005-05-27 10:12:00','2006-02-15 22:13:51'),(4975,183,1,1279,'0.99','2005-06-15 08:13:57','2006-02-15 22:13:51'),(4976,183,2,2188,'1.99','2005-06-18 01:19:04','2006-02-15 22:13:51'),(4977,183,2,2471,'5.99','2005-06-18 20:31:00','2006-02-15 22:13:51'),(4978,183,1,3381,'5.99','2005-06-21 14:02:59','2006-02-15 22:13:51'),(4979,183,1,3869,'2.99','2005-07-06 17:56:46','2006-02-15 22:13:51'),(4980,183,2,4134,'0.99','2005-07-07 08:14:24','2006-02-15 22:13:51'),(4981,183,2,4157,'2.99','2005-07-07 09:04:26','2006-02-15 22:13:51'),(4982,183,1,5069,'1.99','2005-07-09 04:56:30','2006-02-15 22:13:51'),(4983,183,2,5756,'0.99','2005-07-10 12:39:28','2006-02-15 22:13:51'),(4984,183,1,6472,'4.99','2005-07-12 01:33:25','2006-02-15 22:13:51'),(4985,183,1,6569,'4.99','2005-07-12 05:47:40','2006-02-15 22:13:51'),(4986,183,2,7359,'0.99','2005-07-27 14:51:04','2006-02-15 22:13:51'),(4987,183,2,9672,'5.99','2005-07-31 06:34:06','2006-02-15 22:13:51'),(4988,183,1,9818,'4.99','2005-07-31 11:34:32','2006-02-15 22:13:51'),(4989,183,2,9931,'2.99','2005-07-31 15:18:19','2006-02-15 22:13:52'),(4990,183,2,10620,'5.99','2005-08-01 15:09:17','2006-02-15 22:13:52'),(4991,183,2,11386,'2.99','2005-08-02 18:24:03','2006-02-15 22:13:52'),(4992,183,2,12451,'0.99','2005-08-18 11:04:42','2006-02-15 22:13:52'),(4993,183,2,12764,'3.99','2005-08-18 23:14:15','2006-02-15 22:13:52'),(4994,183,2,12831,'3.99','2005-08-19 01:40:43','2006-02-15 22:13:52'),(4995,183,1,13482,'2.99','2005-08-20 01:14:30','2006-02-15 22:13:52'),(4996,183,1,13536,'4.99','2005-08-20 03:35:16','2006-02-15 22:13:52'),(4997,184,1,196,'2.99','2005-05-26 06:55:58','2006-02-15 22:13:52'),(4998,184,2,534,'4.99','2005-05-28 06:15:25','2006-02-15 22:13:52'),(4999,184,1,567,'1.99','2005-05-28 09:56:20','2006-02-15 22:13:52'),(5000,184,2,1976,'2.99','2005-06-17 09:38:08','2006-02-15 22:13:52'),(5001,184,1,2312,'0.99','2005-06-18 08:55:46','2006-02-15 22:13:52'),(5002,184,1,4314,'0.99','2005-07-07 17:38:31','2006-02-15 22:13:52'),(5003,184,2,4882,'6.99','2005-07-08 19:42:03','2006-02-15 22:13:52'),(5004,184,1,5891,'0.99','2005-07-10 20:01:17','2006-02-15 22:13:52'),(5005,184,2,6493,'2.99','2005-07-12 02:40:41','2006-02-15 22:13:52'),(5006,184,2,6700,'6.99','2005-07-12 12:47:22','2006-02-15 22:13:52'),(5007,184,2,7051,'4.99','2005-07-27 03:34:37','2006-02-15 22:13:52'),(5008,184,2,7686,'6.99','2005-07-28 03:19:23','2006-02-15 22:13:52'),(5009,184,1,8892,'4.99','2005-07-30 00:47:03','2006-02-15 22:13:52'),(5010,184,1,9162,'0.99','2005-07-30 11:21:56','2006-02-15 22:13:52'),(5011,184,2,12166,'9.99','2005-08-18 00:57:06','2006-02-15 22:13:52'),(5012,184,2,12454,'2.99','2005-08-18 11:19:02','2006-02-15 22:13:52'),(5013,184,1,12532,'2.99','2005-08-18 13:57:58','2006-02-15 22:13:52'),(5014,184,1,13134,'0.99','2005-08-19 12:14:14','2006-02-15 22:13:52'),(5015,184,1,13262,'5.99','2005-08-19 17:20:15','2006-02-15 22:13:52'),(5016,184,1,13303,'4.99','2005-08-19 18:55:21','2006-02-15 22:13:52'),(5017,184,2,14472,'4.99','2005-08-21 13:13:57','2006-02-15 22:13:52'),(5018,184,1,14801,'5.99','2005-08-22 00:46:54','2006-02-15 22:13:53'),(5019,184,2,15611,'0.99','2005-08-23 06:56:18','2006-02-15 22:13:53'),(5020,185,2,20,'2.99','2005-05-25 01:48:41','2006-02-15 22:13:53'),(5021,185,2,154,'0.99','2005-05-26 00:55:56','2006-02-15 22:13:53'),(5022,185,1,646,'0.99','2005-05-28 19:16:14','2006-02-15 22:13:53'),(5023,185,1,2459,'4.99','2005-06-18 19:44:08','2006-02-15 22:13:53'),(5024,185,1,3314,'4.99','2005-06-21 08:17:00','2006-02-15 22:13:53'),(5025,185,1,3325,'4.99','2005-06-21 08:51:44','2006-02-15 22:13:53'),(5026,185,1,4186,'9.99','2005-07-07 10:32:25','2006-02-15 22:13:53'),(5027,185,1,4524,'2.99','2005-07-08 03:10:48','2006-02-15 22:13:53'),(5028,185,2,4822,'7.99','2005-07-08 17:28:47','2006-02-15 22:13:53'),(5029,185,2,6106,'2.99','2005-07-11 07:05:06','2006-02-15 22:13:53'),(5030,185,1,6418,'1.99','2005-07-11 23:36:27','2006-02-15 22:13:53'),(5031,185,1,6965,'2.99','2005-07-27 00:15:18','2006-02-15 22:13:53'),(5032,185,1,7066,'4.99','2005-07-27 03:53:52','2006-02-15 22:13:53'),(5033,185,1,8200,'2.99','2005-07-28 23:10:46','2006-02-15 22:13:53'),(5034,185,2,8442,'0.99','2005-07-29 07:33:07','2006-02-15 22:13:53'),(5035,185,1,8684,'8.99','2005-07-29 16:16:33','2006-02-15 22:13:53'),(5036,185,2,9246,'0.99','2005-07-30 14:12:31','2006-02-15 22:13:53'),(5037,185,2,9473,'2.99','2005-07-30 23:04:13','2006-02-15 22:13:53'),(5038,185,2,11355,'0.99','2005-08-02 17:37:43','2006-02-15 22:13:53'),(5039,185,1,12312,'2.99','2005-08-18 06:07:26','2006-02-15 22:13:53'),(5040,185,1,12674,'5.99','2005-08-18 19:24:56','2006-02-15 22:13:53'),(5041,185,1,12885,'0.99','2005-08-19 03:37:25','2006-02-15 22:13:53'),(5042,185,2,14513,'2.99','2005-08-21 14:51:35','2006-02-15 22:13:53'),(5043,186,1,581,'1.99','2005-05-28 11:20:29','2006-02-15 22:13:53'),(5044,186,2,958,'0.99','2005-05-30 17:58:03','2006-02-15 22:13:53'),(5045,186,1,1192,'4.99','2005-06-15 01:18:39','2006-02-15 22:13:53'),(5046,186,1,1300,'2.99','2005-06-15 09:36:19','2006-02-15 22:13:53'),(5047,186,1,1663,'2.99','2005-06-16 10:14:15','2006-02-15 22:13:53'),(5048,186,2,2132,'4.99','2005-06-17 21:05:06','2006-02-15 22:13:53'),(5049,186,2,2875,'4.99','2005-06-20 00:47:18','2006-02-15 22:13:53'),(5050,186,1,3039,'4.99','2005-06-20 12:32:30','2006-02-15 22:13:53'),(5051,186,2,6067,'4.99','2005-07-11 04:34:49','2006-02-15 22:13:53'),(5052,186,2,7739,'0.99','2005-07-28 05:21:51','2006-02-15 22:13:54'),(5053,186,1,7915,'3.99','2005-07-28 11:49:46','2006-02-15 22:13:54'),(5054,186,1,8483,'4.99','2005-07-29 08:50:18','2006-02-15 22:13:54'),(5055,186,2,8872,'0.99','2005-07-30 00:13:54','2006-02-15 22:13:54'),(5056,186,2,9303,'2.99','2005-07-30 16:35:59','2006-02-15 22:13:54'),(5057,186,2,9360,'5.99','2005-07-30 18:39:43','2006-02-15 22:13:54'),(5058,186,1,10104,'1.99','2005-07-31 20:49:14','2006-02-15 22:13:54'),(5059,186,1,10985,'0.99','2005-08-02 04:30:19','2006-02-15 22:13:54'),(5060,186,1,11982,'0.99','2005-08-17 18:13:07','2006-02-15 22:13:54'),(5061,186,1,12348,'5.99','2005-08-18 07:21:47','2006-02-15 22:13:54'),(5062,186,1,12438,'8.99','2005-08-18 10:42:52','2006-02-15 22:13:54'),(5063,186,1,13168,'6.99','2005-08-19 13:37:28','2006-02-15 22:13:54'),(5064,186,2,13517,'4.99','2005-08-20 02:33:17','2006-02-15 22:13:54'),(5065,186,1,13853,'3.99','2005-08-20 14:47:02','2006-02-15 22:13:54'),(5066,186,1,14006,'2.99','2005-08-20 20:21:36','2006-02-15 22:13:54'),(5067,186,2,14229,'4.99','2005-08-21 04:57:15','2006-02-15 22:13:54'),(5068,186,2,14646,'4.99','2005-08-21 19:14:48','2006-02-15 22:13:54'),(5069,186,2,14988,'3.99','2005-08-22 07:46:05','2006-02-15 22:13:54'),(5070,186,2,15001,'0.99','2005-08-22 08:00:49','2006-02-15 22:13:54'),(5071,186,2,15295,'3.99','2005-08-22 19:36:21','2006-02-15 22:13:54'),(5072,186,1,15596,'0.99','2005-08-23 06:19:51','2006-02-15 22:13:54'),(5073,186,1,14216,'2.99','2006-02-14 15:16:03','2006-02-15 22:13:54'),(5074,187,1,252,'7.99','2005-05-26 14:39:53','2006-02-15 22:13:54'),(5075,187,2,1323,'6.99','2005-06-15 10:55:17','2006-02-15 22:13:54'),(5076,187,2,1462,'4.99','2005-06-15 20:37:40','2006-02-15 22:13:54'),(5077,187,2,1592,'0.99','2005-06-16 05:14:37','2006-02-15 22:13:54'),(5078,187,2,2127,'0.99','2005-06-17 20:54:48','2006-02-15 22:13:54'),(5079,187,2,2533,'0.99','2005-06-19 01:34:26','2006-02-15 22:13:54'),(5080,187,1,2742,'5.99','2005-06-19 16:05:47','2006-02-15 22:13:54'),(5081,187,1,3402,'2.99','2005-06-21 15:54:37','2006-02-15 22:13:54'),(5082,187,2,3709,'10.99','2005-07-06 10:26:56','2006-02-15 22:13:54'),(5083,187,1,4429,'4.99','2005-07-07 22:32:47','2006-02-15 22:13:54'),(5084,187,2,5366,'0.99','2005-07-09 18:28:37','2006-02-15 22:13:54'),(5085,187,1,5738,'8.99','2005-07-10 11:50:51','2006-02-15 22:13:54'),(5086,187,2,5833,'6.99','2005-07-10 16:39:24','2006-02-15 22:13:54'),(5087,187,1,6057,'3.99','2005-07-11 04:03:40','2006-02-15 22:13:54'),(5088,187,2,6428,'2.99','2005-07-12 00:01:51','2006-02-15 22:13:54'),(5089,187,2,7289,'4.99','2005-07-27 12:26:51','2006-02-15 22:13:55'),(5090,187,2,7844,'7.99','2005-07-28 09:16:19','2006-02-15 22:13:55'),(5091,187,2,7967,'7.99','2005-07-28 13:56:51','2006-02-15 22:13:55'),(5092,187,1,9241,'2.99','2005-07-30 13:58:41','2006-02-15 22:13:55'),(5093,187,1,11843,'2.99','2005-08-17 13:14:50','2006-02-15 22:13:55'),(5094,187,2,12307,'8.99','2005-08-18 05:48:23','2006-02-15 22:13:55'),(5095,187,2,12490,'9.99','2005-08-18 12:48:45','2006-02-15 22:13:55'),(5096,187,1,12534,'7.99','2005-08-18 14:04:41','2006-02-15 22:13:55'),(5097,187,2,13940,'8.99','2005-08-20 17:28:57','2006-02-15 22:13:55'),(5098,187,2,14855,'8.99','2005-08-22 02:27:32','2006-02-15 22:13:55'),(5099,187,2,15231,'4.99','2005-08-22 17:32:57','2006-02-15 22:13:55'),(5100,187,2,15517,'2.99','2005-08-23 03:13:01','2006-02-15 22:13:55'),(5101,187,2,15971,'7.99','2005-08-23 19:59:33','2006-02-15 22:13:55'),(5102,188,2,1527,'2.99','2005-06-16 00:31:40','2006-02-15 22:13:55'),(5103,188,2,1927,'0.99','2005-06-17 06:48:19','2006-02-15 22:13:55'),(5104,188,1,2515,'4.99','2005-06-18 23:57:31','2006-02-15 22:13:55'),(5105,188,2,2733,'4.99','2005-06-19 15:21:53','2006-02-15 22:13:55'),(5106,188,2,3848,'3.99','2005-07-06 16:47:32','2006-02-15 22:13:55'),(5107,188,2,4150,'2.99','2005-07-07 08:43:22','2006-02-15 22:13:55'),(5108,188,2,5356,'2.99','2005-07-09 18:08:28','2006-02-15 22:13:55'),(5109,188,2,5729,'5.99','2005-07-10 11:27:25','2006-02-15 22:13:55'),(5110,188,2,6555,'4.99','2005-07-12 05:08:16','2006-02-15 22:13:55'),(5111,188,2,7042,'0.99','2005-07-27 03:20:18','2006-02-15 22:13:55'),(5112,188,1,7556,'4.99','2005-07-27 22:17:17','2006-02-15 22:13:55'),(5113,188,2,9613,'4.99','2005-07-31 03:58:53','2006-02-15 22:13:55'),(5114,188,2,10453,'5.99','2005-08-01 09:13:27','2006-02-15 22:13:55'),(5115,188,1,10494,'0.99','2005-08-01 10:45:21','2006-02-15 22:13:55'),(5116,188,2,10719,'4.99','2005-08-01 19:00:28','2006-02-15 22:13:55'),(5117,188,2,10757,'4.99','2005-08-01 20:22:44','2006-02-15 22:13:55'),(5118,188,2,11378,'2.99','2005-08-02 18:16:52','2006-02-15 22:13:55'),(5119,188,1,13570,'2.99','2005-08-20 05:04:57','2006-02-15 22:13:55'),(5120,188,1,13787,'5.99','2005-08-20 12:15:23','2006-02-15 22:13:55'),(5121,188,1,14399,'2.99','2005-08-21 10:33:23','2006-02-15 22:13:55'),(5122,188,2,14809,'2.99','2005-08-22 01:00:42','2006-02-15 22:13:55'),(5123,188,2,15319,'2.99','2005-08-22 20:17:17','2006-02-15 22:13:55'),(5124,188,2,15409,'0.99','2005-08-22 23:26:32','2006-02-15 22:13:55'),(5125,188,2,15474,'4.99','2005-08-23 01:39:10','2006-02-15 22:13:55'),(5126,188,1,14503,'2.99','2006-02-14 15:16:03','2006-02-15 22:13:56'),(5127,189,2,1117,'5.99','2005-05-31 16:15:31','2006-02-15 22:13:56'),(5128,189,1,1541,'0.99','2005-06-16 01:15:59','2006-02-15 22:13:56'),(5129,189,1,1834,'0.99','2005-06-16 22:49:08','2006-02-15 22:13:56'),(5130,189,2,2905,'1.99','2005-06-20 02:56:16','2006-02-15 22:13:56'),(5131,189,1,3108,'6.99','2005-06-20 17:28:43','2006-02-15 22:13:56'),(5132,189,1,3346,'2.99','2005-06-21 11:06:53','2006-02-15 22:13:56'),(5133,189,1,3763,'0.99','2005-07-06 12:56:31','2006-02-15 22:13:56'),(5134,189,2,3813,'4.99','2005-07-06 15:23:34','2006-02-15 22:13:56'),(5135,189,2,4203,'0.99','2005-07-07 11:24:14','2006-02-15 22:13:56'),(5136,189,1,6193,'5.99','2005-07-11 11:46:57','2006-02-15 22:13:56'),(5137,189,1,7469,'4.99','2005-07-27 18:57:40','2006-02-15 22:13:56'),(5138,189,1,7675,'4.99','2005-07-28 02:55:20','2006-02-15 22:13:56'),(5139,189,2,7790,'2.99','2005-07-28 07:22:35','2006-02-15 22:13:56'),(5140,189,2,9171,'5.99','2005-07-30 11:36:24','2006-02-15 22:13:56'),(5141,189,2,9386,'0.99','2005-07-30 19:26:21','2006-02-15 22:13:56'),(5142,189,1,9506,'4.99','2005-07-31 00:19:01','2006-02-15 22:13:56'),(5143,189,1,10247,'9.99','2005-08-01 02:34:06','2006-02-15 22:13:56'),(5144,189,2,11059,'6.99','2005-08-02 06:41:38','2006-02-15 22:13:56'),(5145,189,2,13601,'6.99','2005-08-20 06:01:15','2006-02-15 22:13:56'),(5146,189,1,13766,'3.99','2005-08-20 11:42:01','2006-02-15 22:13:56'),(5147,189,1,15773,'1.99','2005-08-23 13:24:57','2006-02-15 22:13:56'),(5148,189,1,16008,'5.99','2005-08-23 21:04:51','2006-02-15 22:13:56'),(5149,190,2,430,'4.99','2005-05-27 16:22:10','2006-02-15 22:13:56'),(5150,190,1,693,'2.99','2005-05-29 01:42:31','2006-02-15 22:13:56'),(5151,190,1,1319,'2.99','2005-06-15 10:39:05','2006-02-15 22:13:56'),(5152,190,1,1347,'2.99','2005-06-15 12:43:43','2006-02-15 22:13:56'),(5153,190,1,2057,'4.99','2005-06-17 15:31:58','2006-02-15 22:13:56'),(5154,190,1,2568,'3.99','2005-06-19 04:09:03','2006-02-15 22:13:56'),(5155,190,1,3386,'4.99','2005-06-21 14:21:06','2006-02-15 22:13:56'),(5156,190,2,4005,'5.99','2005-07-07 00:22:26','2006-02-15 22:13:56'),(5157,190,1,4140,'2.99','2005-07-07 08:19:10','2006-02-15 22:13:56'),(5158,190,2,6867,'3.99','2005-07-12 20:06:47','2006-02-15 22:13:56'),(5159,190,1,7175,'4.99','2005-07-27 08:03:22','2006-02-15 22:13:56'),(5160,190,1,7386,'5.99','2005-07-27 15:52:10','2006-02-15 22:13:56'),(5161,190,2,7404,'2.99','2005-07-27 16:24:43','2006-02-15 22:13:56'),(5162,190,1,8498,'0.99','2005-07-29 09:07:38','2006-02-15 22:13:57'),(5163,190,1,11082,'5.99','2005-08-02 07:30:19','2006-02-15 22:13:57'),(5164,190,2,11158,'6.99','2005-08-02 09:58:28','2006-02-15 22:13:57'),(5165,190,2,11276,'4.99','2005-08-02 14:28:46','2006-02-15 22:13:57'),(5166,190,2,11312,'6.99','2005-08-02 15:56:51','2006-02-15 22:13:57'),(5167,190,2,11750,'0.99','2005-08-17 09:07:00','2006-02-15 22:13:57'),(5168,190,2,11950,'9.99','2005-08-17 17:13:16','2006-02-15 22:13:57'),(5169,190,1,12270,'2.99','2005-08-18 04:32:05','2006-02-15 22:13:57'),(5170,190,2,12381,'0.99','2005-08-18 08:31:43','2006-02-15 22:13:57'),(5171,190,2,14065,'0.99','2005-08-20 22:40:47','2006-02-15 22:13:57'),(5172,190,2,14141,'4.99','2005-08-21 02:07:22','2006-02-15 22:13:57'),(5173,190,2,14166,'2.99','2005-08-21 02:59:31','2006-02-15 22:13:57'),(5174,190,2,14650,'0.99','2005-08-21 19:24:51','2006-02-15 22:13:57'),(5175,190,2,15167,'4.99','2006-02-14 15:16:03','2006-02-15 22:13:57'),(5176,191,1,1134,'2.99','2005-05-31 19:14:15','2006-02-15 22:13:57'),(5177,191,2,1152,'4.99','2005-05-31 21:32:17','2006-02-15 22:13:57'),(5178,191,2,1173,'2.99','2005-06-14 23:54:46','2006-02-15 22:13:57'),(5179,191,1,1278,'0.99','2005-06-15 08:09:12','2006-02-15 22:13:57'),(5180,191,1,1677,'2.99','2005-06-16 11:07:11','2006-02-15 22:13:57'),(5181,191,2,1870,'2.99','2005-06-17 02:24:36','2006-02-15 22:13:57'),(5182,191,1,2051,'4.99','2005-06-17 15:10:16','2006-02-15 22:13:57'),(5183,191,2,2555,'2.99','2005-06-19 03:07:02','2006-02-15 22:13:57'),(5184,191,1,5338,'2.99','2005-07-09 17:07:07','2006-02-15 22:13:57'),(5185,191,2,5397,'5.99','2005-07-09 19:43:51','2006-02-15 22:13:57'),(5186,191,1,5924,'5.99','2005-07-10 21:41:23','2006-02-15 22:13:57'),(5187,191,1,7150,'6.99','2005-07-27 07:11:14','2006-02-15 22:13:57'),(5188,191,1,7450,'3.99','2005-07-27 18:18:35','2006-02-15 22:13:57'),(5189,191,1,7520,'2.99','2005-07-27 21:02:02','2006-02-15 22:13:57'),(5190,191,2,8583,'0.99','2005-07-29 12:04:50','2006-02-15 22:13:57'),(5191,191,1,9297,'4.99','2005-07-30 16:26:29','2006-02-15 22:13:57'),(5192,191,1,9964,'4.99','2005-07-31 16:17:39','2006-02-15 22:13:57'),(5193,191,2,10532,'2.99','2005-08-01 12:06:35','2006-02-15 22:13:57'),(5194,191,2,15375,'4.99','2005-08-22 22:12:02','2006-02-15 22:13:57'),(5195,191,1,14361,'0.99','2006-02-14 15:16:03','2006-02-15 22:13:57'),(5196,192,1,895,'1.99','2005-05-30 08:50:43','2006-02-15 22:13:57'),(5197,192,1,2760,'3.99','2005-06-19 17:16:33','2006-02-15 22:13:57'),(5198,192,1,3902,'2.99','2005-07-06 19:25:18','2006-02-15 22:13:57'),(5199,192,1,4469,'4.99','2005-07-08 00:18:32','2006-02-15 22:13:57'),(5200,192,1,5400,'2.99','2005-07-09 19:56:40','2006-02-15 22:13:58'),(5201,192,2,6223,'0.99','2005-07-11 13:27:09','2006-02-15 22:13:58'),(5202,192,2,6691,'0.99','2005-07-12 12:26:38','2006-02-15 22:13:58'),(5203,192,2,7147,'2.99','2005-07-27 07:02:34','2006-02-15 22:13:58'),(5204,192,2,8051,'0.99','2005-07-28 16:56:16','2006-02-15 22:13:58'),(5205,192,2,8292,'7.99','2005-07-29 02:29:36','2006-02-15 22:13:58'),(5206,192,1,9462,'7.99','2005-07-30 22:30:44','2006-02-15 22:13:58'),(5207,192,1,9831,'2.99','2005-07-31 11:59:32','2006-02-15 22:13:58'),(5208,192,2,10238,'0.99','2005-08-01 02:08:05','2006-02-15 22:13:58'),(5209,192,1,10843,'7.99','2005-08-01 23:43:03','2006-02-15 22:13:58'),(5210,192,1,11385,'4.99','2005-08-02 18:23:11','2006-02-15 22:13:58'),(5211,192,1,11815,'4.99','2005-08-17 12:13:26','2006-02-15 22:13:58'),(5212,192,1,13125,'5.99','2005-08-19 11:57:49','2006-02-15 22:13:58'),(5213,192,2,14146,'4.99','2005-08-21 02:13:31','2006-02-15 22:13:58'),(5214,192,2,14238,'7.99','2005-08-21 05:16:40','2006-02-15 22:13:58'),(5215,192,1,14404,'4.99','2005-08-21 10:43:04','2006-02-15 22:13:58'),(5216,192,2,14692,'6.99','2005-08-21 20:43:21','2006-02-15 22:13:58'),(5217,192,2,15855,'2.99','2005-08-23 15:59:01','2006-02-15 22:13:58'),(5218,192,1,11611,'4.99','2006-02-14 15:16:03','2006-02-15 22:13:58'),(5219,193,2,273,'2.99','2005-05-26 16:29:36','2006-02-15 22:13:58'),(5220,193,2,464,'0.99','2005-05-27 20:42:44','2006-02-15 22:13:58'),(5221,193,1,1325,'4.99','2005-06-15 11:03:24','2006-02-15 22:13:58'),(5222,193,2,2377,'6.99','2005-06-18 14:56:23','2006-02-15 22:13:58'),(5223,193,2,2841,'6.99','2005-06-19 22:21:06','2006-02-15 22:13:58'),(5224,193,2,2846,'4.99','2005-06-19 22:52:14','2006-02-15 22:13:58'),(5225,193,2,2880,'2.99','2005-06-20 01:24:54','2006-02-15 22:13:58'),(5226,193,1,3297,'8.99','2005-06-21 07:08:19','2006-02-15 22:13:58'),(5227,193,1,4892,'6.99','2005-07-08 20:06:25','2006-02-15 22:13:58'),(5228,193,1,8211,'2.99','2005-07-28 23:34:22','2006-02-15 22:13:58'),(5229,193,1,8379,'4.99','2005-07-29 05:29:40','2006-02-15 22:13:58'),(5230,193,1,8431,'4.99','2005-07-29 07:12:48','2006-02-15 22:13:58'),(5231,193,1,9079,'2.99','2005-07-30 08:02:00','2006-02-15 22:13:58'),(5232,193,1,9575,'4.99','2005-07-31 02:51:53','2006-02-15 22:13:58'),(5233,193,2,10462,'2.99','2005-08-01 09:38:28','2006-02-15 22:13:58'),(5234,193,2,12384,'0.99','2005-08-18 08:36:58','2006-02-15 22:13:58'),(5235,193,2,12658,'4.99','2005-08-18 19:05:42','2006-02-15 22:13:58'),(5236,193,1,13529,'2.99','2005-08-20 03:07:47','2006-02-15 22:13:58'),(5237,193,1,13608,'0.99','2005-08-20 06:10:44','2006-02-15 22:13:59'),(5238,193,1,14679,'2.99','2005-08-21 20:14:58','2006-02-15 22:13:59'),(5239,193,1,14927,'4.99','2005-08-22 05:31:53','2006-02-15 22:13:59'),(5240,193,2,15164,'4.99','2005-08-22 14:47:53','2006-02-15 22:13:59'),(5241,193,2,15344,'6.99','2005-08-22 21:01:48','2006-02-15 22:13:59'),(5242,193,2,15495,'5.99','2005-08-23 02:26:10','2006-02-15 22:13:59'),(5243,193,2,15729,'2.99','2006-02-14 15:16:03','2006-02-15 22:13:59'),(5244,194,2,334,'4.99','2005-05-27 03:03:07','2006-02-15 22:13:59'),(5245,194,2,677,'7.99','2005-05-28 23:00:08','2006-02-15 22:13:59'),(5246,194,1,1430,'0.99','2005-06-15 18:24:55','2006-02-15 22:13:59'),(5247,194,1,2245,'7.99','2005-06-18 04:52:59','2006-02-15 22:13:59'),(5248,194,1,2347,'2.99','2005-06-18 12:12:29','2006-02-15 22:13:59'),(5249,194,1,2463,'3.99','2005-06-18 20:01:43','2006-02-15 22:13:59'),(5250,194,1,2807,'3.99','2005-06-19 19:32:53','2006-02-15 22:13:59'),(5251,194,2,4231,'7.99','2005-07-07 12:48:19','2006-02-15 22:13:59'),(5252,194,2,5146,'2.99','2005-07-09 08:14:58','2006-02-15 22:13:59'),(5253,194,1,5291,'2.99','2005-07-09 15:15:02','2006-02-15 22:13:59'),(5254,194,2,5894,'3.99','2005-07-10 20:09:34','2006-02-15 22:13:59'),(5255,194,1,9064,'7.99','2005-07-30 07:24:55','2006-02-15 22:13:59'),(5256,194,2,11475,'5.99','2005-08-02 21:55:09','2006-02-15 22:13:59'),(5257,194,2,12851,'3.99','2005-08-19 02:12:12','2006-02-15 22:13:59'),(5258,194,1,13515,'0.99','2005-08-20 02:29:47','2006-02-15 22:13:59'),(5259,194,2,13616,'7.99','2005-08-20 06:30:33','2006-02-15 22:13:59'),(5260,194,1,14440,'4.99','2005-08-21 11:59:04','2006-02-15 22:13:59'),(5261,194,2,15937,'4.99','2005-08-23 18:43:22','2006-02-15 22:13:59'),(5262,195,1,4234,'6.99','2005-07-07 13:01:35','2006-02-15 22:13:59'),(5263,195,1,4315,'2.99','2005-07-07 17:40:26','2006-02-15 22:13:59'),(5264,195,1,5228,'4.99','2005-07-09 12:26:01','2006-02-15 22:13:59'),(5265,195,1,5536,'0.99','2005-07-10 02:29:42','2006-02-15 22:13:59'),(5266,195,2,6175,'4.99','2005-07-11 10:44:37','2006-02-15 22:13:59'),(5267,195,1,7349,'2.99','2005-07-27 14:33:00','2006-02-15 22:13:59'),(5268,195,2,8280,'4.99','2005-07-29 01:45:51','2006-02-15 22:13:59'),(5269,195,2,8479,'0.99','2005-07-29 08:42:04','2006-02-15 22:13:59'),(5270,195,2,9188,'6.99','2005-07-30 12:19:54','2006-02-15 22:13:59'),(5271,195,1,9870,'5.99','2005-07-31 13:22:51','2006-02-15 22:13:59'),(5272,195,1,9994,'4.99','2005-07-31 17:30:31','2006-02-15 22:13:59'),(5273,195,2,10911,'4.99','2005-08-02 01:58:36','2006-02-15 22:14:00'),(5274,195,1,11201,'7.99','2005-08-02 11:49:16','2006-02-15 22:14:00'),(5275,195,2,11787,'2.99','2005-08-17 10:59:00','2006-02-15 22:14:00'),(5276,195,2,12099,'0.99','2005-08-17 22:38:54','2006-02-15 22:14:00'),(5277,195,2,12941,'0.99','2005-08-19 05:39:26','2006-02-15 22:14:00'),(5278,195,2,13741,'0.99','2005-08-20 10:48:47','2006-02-15 22:14:00'),(5279,195,2,14751,'7.99','2005-08-21 23:11:23','2006-02-15 22:14:00'),(5280,195,2,16040,'11.99','2005-08-23 22:19:33','2006-02-15 22:14:00'),(5281,196,2,106,'11.99','2005-05-25 18:18:19','2006-02-15 22:14:00'),(5282,196,2,178,'5.99','2005-05-26 04:21:46','2006-02-15 22:14:00'),(5283,196,2,491,'2.99','2005-05-28 00:13:35','2006-02-15 22:14:00'),(5284,196,1,1053,'1.99','2005-05-31 07:12:44','2006-02-15 22:14:00'),(5285,196,1,1182,'5.99','2005-06-15 00:45:21','2006-02-15 22:14:00'),(5286,196,1,1348,'2.99','2005-06-15 12:45:30','2006-02-15 22:14:00'),(5287,196,2,1600,'0.99','2005-06-16 06:04:12','2006-02-15 22:14:00'),(5288,196,1,2681,'0.99','2005-06-19 12:15:27','2006-02-15 22:14:00'),(5289,196,2,2912,'4.99','2005-06-20 03:32:45','2006-02-15 22:14:00'),(5290,196,1,3104,'4.99','2005-06-20 17:06:46','2006-02-15 22:14:00'),(5291,196,2,3271,'5.99','2005-06-21 05:16:10','2006-02-15 22:14:00'),(5292,196,2,3342,'4.99','2005-06-21 10:46:36','2006-02-15 22:14:00'),(5293,196,1,4879,'2.99','2005-07-08 19:34:55','2006-02-15 22:14:00'),(5294,196,2,4999,'4.99','2005-07-09 01:12:57','2006-02-15 22:14:00'),(5295,196,2,5143,'4.99','2005-07-09 08:07:07','2006-02-15 22:14:00'),(5296,196,2,5353,'3.99','2005-07-09 18:04:29','2006-02-15 22:14:00'),(5297,196,2,5768,'4.99','2005-07-10 13:15:26','2006-02-15 22:14:00'),(5298,196,2,6857,'4.99','2005-07-12 19:53:30','2006-02-15 22:14:00'),(5299,196,2,7666,'3.99','2005-07-28 02:35:12','2006-02-15 22:14:00'),(5300,196,2,8266,'0.99','2005-07-29 01:20:16','2006-02-15 22:14:00'),(5301,196,2,8472,'1.99','2005-07-29 08:36:22','2006-02-15 22:14:00'),(5302,196,2,8700,'0.99','2005-07-29 16:56:01','2006-02-15 22:14:00'),(5303,196,1,9346,'5.99','2005-07-30 18:13:52','2006-02-15 22:14:00'),(5304,196,1,9721,'6.99','2005-07-31 08:28:46','2006-02-15 22:14:00'),(5305,196,1,9804,'4.99','2005-07-31 11:07:39','2006-02-15 22:14:00'),(5306,196,2,10122,'10.99','2005-07-31 21:29:28','2006-02-15 22:14:00'),(5307,196,1,10191,'4.99','2005-08-01 00:28:38','2006-02-15 22:14:00'),(5308,196,1,11104,'2.99','2005-08-02 08:09:58','2006-02-15 22:14:01'),(5309,196,2,12430,'0.99','2005-08-18 10:32:41','2006-02-15 22:14:01'),(5310,196,2,12684,'0.99','2005-08-18 19:51:27','2006-02-15 22:14:01'),(5311,196,2,12836,'0.99','2005-08-19 01:48:33','2006-02-15 22:14:01'),(5312,196,1,13799,'8.99','2005-08-20 12:36:42','2006-02-15 22:14:01'),(5313,196,2,14410,'5.99','2005-08-21 10:54:49','2006-02-15 22:14:01'),(5314,196,1,14698,'5.99','2005-08-21 20:49:58','2006-02-15 22:14:01'),(5315,196,2,15980,'0.99','2005-08-23 20:10:13','2006-02-15 22:14:01'),(5316,197,2,94,'2.99','2005-05-25 16:03:42','2006-02-15 22:14:01'),(5317,197,1,215,'0.99','2005-05-26 09:02:47','2006-02-15 22:14:01'),(5318,197,1,391,'2.99','2005-05-27 11:03:55','2006-02-15 22:14:01'),(5319,197,2,649,'1.99','2005-05-28 19:35:45','2006-02-15 22:14:01'),(5320,197,1,683,'2.99','2005-05-29 00:09:48','2006-02-15 22:14:01'),(5321,197,2,730,'3.99','2005-05-29 07:00:59','2006-02-15 22:14:01'),(5322,197,1,903,'3.99','2005-05-30 10:11:29','2006-02-15 22:14:01'),(5323,197,1,918,'0.99','2005-05-30 11:32:24','2006-02-15 22:14:01'),(5324,197,2,1175,'2.99','2005-06-15 00:15:15','2006-02-15 22:14:01'),(5325,197,1,1363,'0.99','2005-06-15 14:05:11','2006-02-15 22:14:01'),(5326,197,1,1503,'2.99','2005-06-15 22:07:09','2006-02-15 22:14:01'),(5327,197,2,1605,'8.99','2005-06-16 06:17:55','2006-02-15 22:14:01'),(5328,197,2,1919,'4.99','2005-06-17 05:40:52','2006-02-15 22:14:01'),(5329,197,1,2090,'2.99','2005-06-17 18:06:14','2006-02-15 22:14:01'),(5330,197,1,2750,'4.99','2005-06-19 16:37:24','2006-02-15 22:14:01'),(5331,197,2,2781,'2.99','2005-06-19 18:24:42','2006-02-15 22:14:01'),(5332,197,1,4486,'8.99','2005-07-08 01:09:09','2006-02-15 22:14:01'),(5333,197,2,4739,'4.99','2005-07-08 13:25:57','2006-02-15 22:14:01'),(5334,197,2,5182,'6.99','2005-07-09 10:08:10','2006-02-15 22:14:01'),(5335,197,2,5344,'0.99','2005-07-09 17:27:05','2006-02-15 22:14:01'),(5336,197,1,8165,'2.99','2005-07-28 21:23:06','2006-02-15 22:14:01'),(5337,197,2,9378,'4.99','2005-07-30 19:12:54','2006-02-15 22:14:01'),(5338,197,1,9476,'0.99','2005-07-30 23:06:40','2006-02-15 22:14:01'),(5339,197,2,9585,'4.99','2005-07-31 03:05:55','2006-02-15 22:14:01'),(5340,197,2,10460,'3.99','2005-08-01 09:31:00','2006-02-15 22:14:01'),(5341,197,2,10666,'0.99','2005-08-01 16:56:36','2006-02-15 22:14:01'),(5342,197,2,10739,'4.99','2005-08-01 19:46:11','2006-02-15 22:14:01'),(5343,197,1,10743,'2.99','2005-08-01 19:55:09','2006-02-15 22:14:01'),(5344,197,1,11018,'4.99','2005-08-02 05:27:53','2006-02-15 22:14:02'),(5345,197,1,11215,'4.99','2005-08-02 12:20:42','2006-02-15 22:14:02'),(5346,197,1,11311,'4.99','2005-08-02 15:53:48','2006-02-15 22:14:02'),(5347,197,1,11478,'2.99','2005-08-02 22:09:05','2006-02-15 22:14:02'),(5348,197,1,11643,'1.99','2005-08-17 04:49:35','2006-02-15 22:14:02'),(5349,197,1,12799,'0.99','2005-08-19 00:27:01','2006-02-15 22:14:02'),(5350,197,2,13913,'3.99','2005-08-20 16:37:35','2006-02-15 22:14:02'),(5351,197,1,14069,'9.99','2005-08-20 22:51:25','2006-02-15 22:14:02'),(5352,197,2,14951,'4.99','2005-08-22 06:19:37','2006-02-15 22:14:02'),(5353,197,1,15078,'2.99','2005-08-22 11:09:31','2006-02-15 22:14:02'),(5354,197,2,15233,'0.99','2005-08-22 17:41:53','2006-02-15 22:14:02'),(5355,197,1,15540,'8.99','2005-08-23 04:12:52','2006-02-15 22:14:02'),(5356,198,1,357,'0.99','2005-05-27 06:37:15','2006-02-15 22:14:02'),(5357,198,1,582,'4.99','2005-05-28 11:33:46','2006-02-15 22:14:02'),(5358,198,2,639,'2.99','2005-05-28 18:25:02','2006-02-15 22:14:02'),(5359,198,1,932,'2.99','2005-05-30 12:55:36','2006-02-15 22:14:02'),(5360,198,2,1132,'4.99','2005-05-31 18:44:53','2006-02-15 22:14:02'),(5361,198,2,2185,'0.99','2005-06-18 01:12:22','2006-02-15 22:14:02'),(5362,198,2,3770,'2.99','2005-07-06 13:14:28','2006-02-15 22:14:02'),(5363,198,2,4588,'2.99','2005-07-08 06:18:01','2006-02-15 22:14:02'),(5364,198,2,4750,'0.99','2005-07-08 14:07:03','2006-02-15 22:14:02'),(5365,198,2,5794,'4.99','2005-07-10 14:34:53','2006-02-15 22:14:02'),(5366,198,2,6567,'4.99','2005-07-12 05:43:09','2006-02-15 22:14:02'),(5367,198,1,6819,'4.99','2005-07-12 18:21:01','2006-02-15 22:14:02'),(5368,198,2,6889,'4.99','2005-07-12 21:01:22','2006-02-15 22:14:02'),(5369,198,1,7287,'0.99','2005-07-27 12:24:12','2006-02-15 22:14:02'),(5370,198,1,7441,'5.99','2005-07-27 17:46:53','2006-02-15 22:14:02'),(5371,198,1,7583,'2.99','2005-07-27 23:15:22','2006-02-15 22:14:02'),(5372,198,2,7622,'0.99','2005-07-28 00:37:34','2006-02-15 22:14:02'),(5373,198,1,8145,'5.99','2005-07-28 20:34:41','2006-02-15 22:14:02'),(5374,198,2,9389,'0.99','2005-07-30 19:27:59','2006-02-15 22:14:02'),(5375,198,1,10112,'4.99','2005-07-31 21:08:56','2006-02-15 22:14:02'),(5376,198,1,10147,'2.99','2005-07-31 22:18:43','2006-02-15 22:14:02'),(5377,198,1,10679,'0.99','2005-08-01 17:27:58','2006-02-15 22:14:02'),(5378,198,1,11351,'3.99','2005-08-02 17:28:07','2006-02-15 22:14:02'),(5379,198,1,11594,'6.99','2005-08-17 02:47:02','2006-02-15 22:14:02'),(5380,198,1,11756,'2.99','2005-08-17 09:29:22','2006-02-15 22:14:03'),(5381,198,1,11836,'4.99','2005-08-17 13:03:36','2006-02-15 22:14:03'),(5382,198,2,11949,'2.99','2005-08-17 17:12:26','2006-02-15 22:14:03'),(5383,198,1,11957,'1.99','2005-08-17 17:22:29','2006-02-15 22:14:03'),(5384,198,2,11985,'2.99','2005-08-17 18:19:44','2006-02-15 22:14:03'),(5385,198,2,12594,'4.99','2005-08-18 16:24:24','2006-02-15 22:14:03'),(5386,198,1,12862,'5.99','2005-08-19 02:31:59','2006-02-15 22:14:03'),(5387,198,1,13768,'5.99','2005-08-20 11:43:43','2006-02-15 22:14:03'),(5388,198,1,14214,'5.99','2005-08-21 04:30:49','2006-02-15 22:14:03'),(5389,198,2,14380,'2.99','2005-08-21 09:53:52','2006-02-15 22:14:03'),(5390,198,2,14990,'4.99','2005-08-22 07:48:01','2006-02-15 22:14:03'),(5391,198,1,15256,'6.99','2005-08-22 18:20:07','2006-02-15 22:14:03'),(5392,198,1,15433,'4.99','2005-08-23 00:27:18','2006-02-15 22:14:03'),(5393,199,1,499,'7.99','2005-05-28 01:05:07','2006-02-15 22:14:03'),(5394,199,1,1406,'4.99','2005-06-15 16:44:00','2006-02-15 22:14:03'),(5395,199,1,1910,'2.99','2005-06-17 05:11:27','2006-02-15 22:14:03'),(5396,199,1,3299,'0.99','2005-06-21 07:23:34','2006-02-15 22:14:03'),(5397,199,1,4499,'2.99','2005-07-08 02:08:48','2006-02-15 22:14:03'),(5398,199,2,4580,'8.99','2005-07-08 06:04:23','2006-02-15 22:14:03'),(5399,199,1,4976,'4.99','2005-07-09 00:03:30','2006-02-15 22:14:03'),(5400,199,2,5398,'2.99','2005-07-09 19:44:58','2006-02-15 22:14:03'),(5401,199,2,5680,'5.99','2005-07-10 08:47:36','2006-02-15 22:14:03'),(5402,199,2,6668,'2.99','2005-07-12 11:37:45','2006-02-15 22:14:03'),(5403,199,2,6782,'4.99','2005-07-12 16:23:25','2006-02-15 22:14:03'),(5404,199,1,7782,'4.99','2005-07-28 07:13:40','2006-02-15 22:14:03'),(5405,199,1,8709,'0.99','2005-07-29 17:25:54','2006-02-15 22:14:03'),(5406,199,1,9752,'2.99','2005-07-31 09:22:02','2006-02-15 22:14:03'),(5407,199,2,9894,'4.99','2005-07-31 14:07:44','2006-02-15 22:14:03'),(5408,199,1,9959,'4.99','2005-07-31 16:04:22','2006-02-15 22:14:03'),(5409,199,1,10196,'2.99','2005-08-01 00:34:51','2006-02-15 22:14:03'),(5410,199,2,10517,'4.99','2005-08-01 11:41:57','2006-02-15 22:14:03'),(5411,199,1,10850,'8.99','2005-08-01 23:53:45','2006-02-15 22:14:03'),(5412,199,1,11454,'2.99','2005-08-02 21:04:39','2006-02-15 22:14:03'),(5413,199,1,12386,'0.99','2005-08-18 08:45:57','2006-02-15 22:14:03'),(5414,199,2,14320,'4.99','2005-08-21 08:04:40','2006-02-15 22:14:03'),(5415,199,2,15412,'0.99','2005-08-22 23:37:11','2006-02-15 22:14:03'),(5416,199,2,15751,'3.99','2005-08-23 12:41:07','2006-02-15 22:14:04'),(5417,199,2,13952,'2.99','2006-02-14 15:16:03','2006-02-15 22:14:04'),(5418,200,2,270,'9.99','2005-05-26 16:20:56','2006-02-15 22:14:04'),(5419,200,2,1296,'1.99','2005-06-15 09:23:59','2006-02-15 22:14:04'),(5420,200,2,1309,'4.99','2005-06-15 10:10:49','2006-02-15 22:14:04'),(5421,200,2,1899,'6.99','2005-06-17 04:29:15','2006-02-15 22:14:04'),(5422,200,1,2227,'4.99','2005-06-18 03:43:23','2006-02-15 22:14:04'),(5423,200,2,2667,'3.99','2005-06-19 11:28:46','2006-02-15 22:14:04'),(5424,200,2,2717,'4.99','2005-06-19 14:46:10','2006-02-15 22:14:04'),(5425,200,1,3190,'3.99','2005-06-20 23:27:15','2006-02-15 22:14:04'),(5426,200,1,3580,'4.99','2005-07-06 03:48:44','2006-02-15 22:14:04'),(5427,200,1,5110,'2.99','2005-07-09 06:57:25','2006-02-15 22:14:04'),(5428,200,1,6123,'0.99','2005-07-11 08:02:27','2006-02-15 22:14:04'),(5429,200,2,6167,'2.99','2005-07-11 10:21:21','2006-02-15 22:14:04'),(5430,200,1,6181,'4.99','2005-07-11 11:10:11','2006-02-15 22:14:04'),(5431,200,1,6947,'3.99','2005-07-26 23:42:03','2006-02-15 22:14:04'),(5432,200,1,7574,'2.99','2005-07-27 22:53:00','2006-02-15 22:14:04'),(5433,200,2,8368,'3.99','2005-07-29 05:15:41','2006-02-15 22:14:04'),(5434,200,2,8462,'2.99','2005-07-29 08:15:42','2006-02-15 22:14:04'),(5435,200,1,9527,'6.99','2005-07-31 01:02:24','2006-02-15 22:14:04'),(5436,200,1,10685,'2.99','2005-08-01 17:49:38','2006-02-15 22:14:04'),(5437,200,1,11356,'8.99','2005-08-02 17:42:40','2006-02-15 22:14:04'),(5438,200,1,13737,'5.99','2005-08-20 10:41:50','2006-02-15 22:14:04'),(5439,200,1,14034,'10.99','2005-08-20 21:31:52','2006-02-15 22:14:04'),(5440,200,2,14521,'6.99','2005-08-21 15:01:32','2006-02-15 22:14:04'),(5441,200,2,15691,'4.99','2005-08-23 09:53:54','2006-02-15 22:14:04'),(5442,200,2,15742,'5.99','2005-08-23 12:11:37','2006-02-15 22:14:04'),(5443,200,1,15961,'6.99','2005-08-23 19:35:42','2006-02-15 22:14:04'),(5444,200,2,11866,'2.99','2006-02-14 15:16:03','2006-02-15 22:14:04'),(5445,201,1,311,'3.99','2005-05-26 22:51:37','2006-02-15 22:14:04'),(5446,201,1,670,'6.99','2005-05-28 22:04:03','2006-02-15 22:14:04'),(5447,201,2,756,'5.99','2005-05-29 10:28:45','2006-02-15 22:14:04'),(5448,201,1,2047,'1.99','2005-06-17 14:40:58','2006-02-15 22:14:04'),(5449,201,1,2157,'3.99','2005-06-17 23:30:52','2006-02-15 22:14:04'),(5450,201,2,2359,'6.99','2005-06-18 13:04:42','2006-02-15 22:14:04'),(5451,201,1,3106,'4.99','2005-06-20 17:18:06','2006-02-15 22:14:04'),(5452,201,1,3364,'7.99','2005-06-21 12:37:46','2006-02-15 22:14:05'),(5453,201,2,3528,'4.99','2005-07-06 01:13:27','2006-02-15 22:14:05'),(5454,201,2,3708,'6.99','2005-07-06 10:23:27','2006-02-15 22:14:05'),(5455,201,1,7106,'0.99','2005-07-27 05:21:24','2006-02-15 22:14:05'),(5456,201,2,7606,'2.99','2005-07-28 00:02:15','2006-02-15 22:14:05'),(5457,201,2,9355,'0.99','2005-07-30 18:35:25','2006-02-15 22:14:05'),(5458,201,2,10750,'5.99','2005-08-01 20:06:00','2006-02-15 22:14:05'),(5459,201,2,10865,'3.99','2005-08-02 00:22:46','2006-02-15 22:14:05'),(5460,201,1,10891,'0.99','2005-08-02 01:09:55','2006-02-15 22:14:05'),(5461,201,2,11807,'0.99','2005-08-17 11:51:15','2006-02-15 22:14:05'),(5462,201,2,13076,'4.99','2005-08-19 10:10:26','2006-02-15 22:14:05'),(5463,201,2,13613,'9.99','2005-08-20 06:23:53','2006-02-15 22:14:05'),(5464,201,2,13671,'3.99','2005-08-20 08:27:03','2006-02-15 22:14:05'),(5465,201,2,13672,'2.99','2005-08-20 08:27:27','2006-02-15 22:14:05'),(5466,201,2,14656,'2.99','2005-08-21 19:39:28','2006-02-15 22:14:05'),(5467,201,1,14973,'2.99','2005-08-22 06:59:28','2006-02-15 22:14:05'),(5468,201,1,15887,'2.99','2005-08-23 16:54:09','2006-02-15 22:14:05'),(5469,201,2,15974,'5.99','2005-08-23 20:06:04','2006-02-15 22:14:05'),(5470,202,1,1474,'2.99','2005-06-15 20:55:42','2006-02-15 22:14:05'),(5471,202,1,1535,'4.99','2005-06-16 00:52:04','2006-02-15 22:14:05'),(5472,202,1,3008,'0.99','2005-06-20 10:23:25','2006-02-15 22:14:05'),(5473,202,2,3148,'0.99','2005-06-20 20:27:18','2006-02-15 22:14:05'),(5474,202,1,3861,'8.99','2005-07-06 17:24:49','2006-02-15 22:14:05'),(5475,202,2,4567,'4.99','2005-07-08 05:20:04','2006-02-15 22:14:05'),(5476,202,2,5194,'2.99','2005-07-09 10:31:34','2006-02-15 22:14:05'),(5477,202,1,5297,'2.99','2005-07-09 15:32:29','2006-02-15 22:14:05'),(5478,202,2,5838,'2.99','2005-07-10 17:04:56','2006-02-15 22:14:05'),(5479,202,1,7613,'2.99','2005-07-28 00:13:58','2006-02-15 22:14:05'),(5480,202,1,8351,'2.99','2005-07-29 04:50:53','2006-02-15 22:14:05'),(5481,202,1,8779,'2.99','2005-07-29 20:15:00','2006-02-15 22:14:05'),(5482,202,1,8830,'2.99','2005-07-29 22:34:35','2006-02-15 22:14:05'),(5483,202,2,8930,'0.99','2005-07-30 02:28:38','2006-02-15 22:14:05'),(5484,202,2,9057,'2.99','2005-07-30 07:14:18','2006-02-15 22:14:05'),(5485,202,2,9467,'8.99','2005-07-30 22:45:34','2006-02-15 22:14:05'),(5486,202,2,9751,'4.99','2005-07-31 09:20:50','2006-02-15 22:14:05'),(5487,202,1,10375,'2.99','2005-08-01 06:26:22','2006-02-15 22:14:05'),(5488,202,1,11210,'4.99','2005-08-02 12:15:54','2006-02-15 22:14:06'),(5489,202,2,11924,'4.99','2005-08-17 16:22:05','2006-02-15 22:14:06'),(5490,202,2,12801,'8.99','2005-08-19 00:27:19','2006-02-15 22:14:06'),(5491,202,1,13196,'4.99','2005-08-19 14:40:32','2006-02-15 22:14:06'),(5492,202,1,13528,'3.99','2005-08-20 03:03:31','2006-02-15 22:14:06'),(5493,202,1,14019,'3.99','2005-08-20 20:59:15','2006-02-15 22:14:06'),(5494,202,1,15095,'0.99','2005-08-22 11:41:35','2006-02-15 22:14:06'),(5495,202,2,15772,'4.99','2005-08-23 13:22:56','2006-02-15 22:14:06'),(5496,203,1,314,'0.99','2005-05-26 23:09:41','2006-02-15 22:14:06'),(5497,203,1,1217,'4.99','2005-06-15 03:24:14','2006-02-15 22:14:06'),(5498,203,1,1715,'2.99','2005-06-16 14:37:12','2006-02-15 22:14:06'),(5499,203,2,2939,'7.99','2005-06-20 05:18:16','2006-02-15 22:14:06'),(5500,203,2,3406,'2.99','2005-06-21 16:00:18','2006-02-15 22:14:06'),(5501,203,2,4136,'2.99','2005-07-07 08:15:52','2006-02-15 22:14:06'),(5502,203,2,5579,'5.99','2005-07-10 04:04:29','2006-02-15 22:14:06'),(5503,203,2,7787,'6.99','2005-07-28 07:19:02','2006-02-15 22:14:06'),(5504,203,1,8039,'0.99','2005-07-28 16:35:16','2006-02-15 22:14:06'),(5505,203,1,8463,'4.99','2005-07-29 08:17:51','2006-02-15 22:14:06'),(5506,203,1,8792,'7.99','2005-07-29 20:56:14','2006-02-15 22:14:06'),(5507,203,2,9015,'10.99','2005-07-30 05:21:32','2006-02-15 22:14:06'),(5508,203,2,10700,'3.99','2005-08-01 18:26:31','2006-02-15 22:14:06'),(5509,203,2,10805,'2.99','2005-08-01 22:23:37','2006-02-15 22:14:06'),(5510,203,1,11712,'2.99','2005-08-17 07:32:51','2006-02-15 22:14:06'),(5511,203,1,12519,'0.99','2005-08-18 13:42:14','2006-02-15 22:14:06'),(5512,203,2,13841,'4.99','2005-08-20 14:25:18','2006-02-15 22:14:06'),(5513,203,2,14505,'5.99','2005-08-21 14:26:28','2006-02-15 22:14:06'),(5514,203,2,15798,'2.99','2005-08-23 14:23:03','2006-02-15 22:14:06'),(5515,203,2,15991,'2.99','2005-08-23 20:27:34','2006-02-15 22:14:06'),(5516,204,2,251,'0.99','2005-05-26 14:35:40','2006-02-15 22:14:06'),(5517,204,2,399,'4.99','2005-05-27 12:48:38','2006-02-15 22:14:06'),(5518,204,2,857,'4.99','2005-05-30 02:01:23','2006-02-15 22:14:06'),(5519,204,1,1016,'1.99','2005-05-31 02:49:43','2006-02-15 22:14:06'),(5520,204,1,1321,'2.99','2005-06-15 10:49:17','2006-02-15 22:14:06'),(5521,204,1,1616,'7.99','2005-06-16 07:04:52','2006-02-15 22:14:06'),(5522,204,1,1871,'4.99','2005-06-17 02:25:12','2006-02-15 22:14:06'),(5523,204,2,1894,'7.99','2005-06-17 04:18:48','2006-02-15 22:14:06'),(5524,204,2,2186,'2.99','2005-06-18 01:15:27','2006-02-15 22:14:07'),(5525,204,2,2734,'4.99','2005-06-19 15:36:27','2006-02-15 22:14:07'),(5526,204,1,4043,'0.99','2005-07-07 03:09:50','2006-02-15 22:14:07'),(5527,204,1,4979,'4.99','2005-07-09 00:24:34','2006-02-15 22:14:07'),(5528,204,2,5145,'0.99','2005-07-09 08:13:25','2006-02-15 22:14:07'),(5529,204,1,5619,'2.99','2005-07-10 05:29:33','2006-02-15 22:14:07'),(5530,204,2,6004,'4.99','2005-07-11 01:34:25','2006-02-15 22:14:07'),(5531,204,2,6225,'2.99','2005-07-11 13:45:14','2006-02-15 22:14:07'),(5532,204,2,6631,'0.99','2005-07-12 09:31:43','2006-02-15 22:14:07'),(5533,204,1,6694,'6.99','2005-07-12 12:39:23','2006-02-15 22:14:07'),(5534,204,2,6871,'2.99','2005-07-12 20:13:49','2006-02-15 22:14:07'),(5535,204,1,7392,'4.99','2005-07-27 16:01:05','2006-02-15 22:14:07'),(5536,204,2,9005,'0.99','2005-07-30 05:04:58','2006-02-15 22:14:07'),(5537,204,1,9394,'5.99','2005-07-30 20:06:24','2006-02-15 22:14:07'),(5538,204,2,9906,'4.99','2005-07-31 14:38:12','2006-02-15 22:14:07'),(5539,204,2,10042,'2.99','2005-07-31 19:01:25','2006-02-15 22:14:07'),(5540,204,2,10399,'5.99','2005-08-01 07:13:39','2006-02-15 22:14:07'),(5541,204,1,11261,'7.99','2005-08-02 13:54:26','2006-02-15 22:14:07'),(5542,204,2,11886,'0.99','2005-08-17 14:58:51','2006-02-15 22:14:07'),(5543,204,1,12737,'6.99','2005-08-18 22:11:37','2006-02-15 22:14:07'),(5544,204,1,13084,'0.99','2005-08-19 10:27:25','2006-02-15 22:14:07'),(5545,204,1,13416,'4.99','2005-08-19 22:48:48','2006-02-15 22:14:07'),(5546,204,2,13899,'2.99','2005-08-20 16:05:11','2006-02-15 22:14:07'),(5547,204,2,14163,'4.99','2005-08-21 02:56:52','2006-02-15 22:14:07'),(5548,204,1,14871,'0.99','2005-08-22 03:23:24','2006-02-15 22:14:07'),(5549,204,1,15364,'4.99','2005-08-22 21:41:41','2006-02-15 22:14:07'),(5550,204,2,15415,'11.99','2005-08-22 23:48:56','2006-02-15 22:14:07'),(5551,205,1,1238,'2.99','2005-06-15 04:49:08','2006-02-15 22:14:07'),(5552,205,1,1357,'4.99','2005-06-15 13:26:23','2006-02-15 22:14:07'),(5553,205,1,1767,'0.99','2005-06-16 18:01:36','2006-02-15 22:14:07'),(5554,205,2,2237,'5.99','2005-06-18 04:17:44','2006-02-15 22:14:07'),(5555,205,1,3601,'7.99','2005-07-06 05:20:25','2006-02-15 22:14:07'),(5556,205,2,4230,'3.99','2005-07-07 12:46:47','2006-02-15 22:14:07'),(5557,205,2,4377,'7.99','2005-07-07 20:28:57','2006-02-15 22:14:07'),(5558,205,1,4729,'4.99','2005-07-08 12:59:40','2006-02-15 22:14:07'),(5559,205,1,7736,'2.99','2005-07-28 05:12:04','2006-02-15 22:14:08'),(5560,205,2,7976,'7.99','2005-07-28 14:13:24','2006-02-15 22:14:08'),(5561,205,2,8896,'4.99','2005-07-30 00:51:21','2006-02-15 22:14:08'),(5562,205,2,10086,'4.99','2005-07-31 20:14:08','2006-02-15 22:14:08'),(5563,205,1,13935,'2.99','2005-08-20 17:20:49','2006-02-15 22:14:08'),(5564,205,1,14338,'0.99','2005-08-21 08:36:03','2006-02-15 22:14:08'),(5565,205,2,14391,'4.99','2005-08-21 10:16:27','2006-02-15 22:14:08'),(5566,205,1,14442,'2.99','2005-08-21 12:00:21','2006-02-15 22:14:08'),(5567,205,2,14490,'6.99','2005-08-21 13:54:15','2006-02-15 22:14:08'),(5568,205,2,15418,'0.99','2005-08-22 23:54:14','2006-02-15 22:14:08'),(5569,206,2,1872,'0.99','2005-06-17 02:27:03','2006-02-15 22:14:08'),(5570,206,2,2477,'5.99','2005-06-18 20:58:46','2006-02-15 22:14:08'),(5571,206,2,3012,'4.99','2005-06-20 10:43:13','2006-02-15 22:14:08'),(5572,206,1,3533,'5.99','2005-07-06 01:26:44','2006-02-15 22:14:08'),(5573,206,2,3831,'0.99','2005-07-06 16:06:35','2006-02-15 22:14:08'),(5574,206,1,3847,'4.99','2005-07-06 16:44:41','2006-02-15 22:14:08'),(5575,206,2,4068,'4.99','2005-07-07 04:34:38','2006-02-15 22:14:08'),(5576,206,2,4107,'4.99','2005-07-07 06:36:32','2006-02-15 22:14:08'),(5577,206,2,4823,'4.99','2005-07-08 17:28:54','2006-02-15 22:14:08'),(5578,206,1,6139,'3.99','2005-07-11 08:39:33','2006-02-15 22:14:08'),(5579,206,1,6420,'6.99','2005-07-11 23:38:49','2006-02-15 22:14:08'),(5580,206,1,7222,'4.99','2005-07-27 09:38:43','2006-02-15 22:14:08'),(5581,206,2,7541,'4.99','2005-07-27 21:40:05','2006-02-15 22:14:08'),(5582,206,1,8217,'5.99','2005-07-28 23:44:13','2006-02-15 22:14:08'),(5583,206,1,8549,'3.99','2005-07-29 11:12:13','2006-02-15 22:14:08'),(5584,206,2,9474,'2.99','2005-07-30 23:05:44','2006-02-15 22:14:08'),(5585,206,2,10930,'3.99','2005-08-02 02:38:07','2006-02-15 22:14:08'),(5586,206,1,11022,'2.99','2005-08-02 05:35:03','2006-02-15 22:14:08'),(5587,206,2,11634,'2.99','2005-08-17 04:31:49','2006-02-15 22:14:08'),(5588,206,1,13128,'4.99','2005-08-19 12:04:16','2006-02-15 22:14:08'),(5589,206,2,13232,'2.99','2005-08-19 16:13:32','2006-02-15 22:14:08'),(5590,206,2,13263,'10.99','2005-08-19 17:26:55','2006-02-15 22:14:08'),(5591,206,2,13550,'9.99','2005-08-20 03:58:51','2006-02-15 22:14:08'),(5592,206,2,13696,'0.99','2005-08-20 09:16:15','2006-02-15 22:14:08'),(5593,206,2,14695,'0.99','2005-08-21 20:46:47','2006-02-15 22:14:08'),(5594,206,2,15686,'7.99','2005-08-23 09:42:21','2006-02-15 22:14:09'),(5595,206,1,15709,'4.99','2005-08-23 10:36:00','2006-02-15 22:14:09'),(5596,207,1,39,'0.99','2005-05-25 04:51:46','2006-02-15 22:14:09'),(5597,207,1,44,'0.99','2005-05-25 05:53:23','2006-02-15 22:14:09'),(5598,207,1,659,'0.99','2005-05-28 20:27:53','2006-02-15 22:14:09'),(5599,207,2,826,'6.99','2005-05-29 21:56:15','2006-02-15 22:14:09'),(5600,207,2,896,'3.99','2005-05-30 09:03:52','2006-02-15 22:14:09'),(5601,207,2,1144,'3.99','2005-05-31 20:04:10','2006-02-15 22:14:09'),(5602,207,2,1945,'3.99','2005-06-17 07:51:26','2006-02-15 22:14:09'),(5603,207,2,3584,'2.99','2005-07-06 04:16:43','2006-02-15 22:14:09'),(5604,207,2,3687,'9.99','2005-07-06 09:38:33','2006-02-15 22:14:09'),(5605,207,1,4018,'2.99','2005-07-07 01:10:33','2006-02-15 22:14:09'),(5606,207,2,4713,'5.99','2005-07-08 12:12:33','2006-02-15 22:14:09'),(5607,207,1,4816,'0.99','2005-07-08 17:14:14','2006-02-15 22:14:09'),(5608,207,2,5007,'0.99','2005-07-09 01:26:22','2006-02-15 22:14:09'),(5609,207,1,5258,'0.99','2005-07-09 13:56:56','2006-02-15 22:14:09'),(5610,207,1,5259,'4.99','2005-07-09 14:02:50','2006-02-15 22:14:09'),(5611,207,2,5939,'0.99','2005-07-10 22:30:05','2006-02-15 22:14:09'),(5612,207,2,6465,'5.99','2005-07-12 01:17:11','2006-02-15 22:14:09'),(5613,207,1,6537,'0.99','2005-07-12 04:46:30','2006-02-15 22:14:09'),(5614,207,2,7306,'5.99','2005-07-27 12:57:26','2006-02-15 22:14:09'),(5615,207,1,7540,'5.99','2005-07-27 21:39:55','2006-02-15 22:14:09'),(5616,207,1,8800,'5.99','2005-07-29 21:18:59','2006-02-15 22:14:09'),(5617,207,2,9652,'2.99','2005-07-31 05:49:53','2006-02-15 22:14:09'),(5618,207,2,10234,'3.99','2005-08-01 01:56:20','2006-02-15 22:14:09'),(5619,207,2,10300,'0.99','2005-08-01 04:08:11','2006-02-15 22:14:09'),(5620,207,1,11112,'2.99','2005-08-02 08:25:14','2006-02-15 22:14:09'),(5621,207,2,11260,'0.99','2005-08-02 13:52:19','2006-02-15 22:14:09'),(5622,207,2,11286,'5.99','2005-08-02 14:44:22','2006-02-15 22:14:09'),(5623,207,1,11724,'6.99','2005-08-17 08:04:44','2006-02-15 22:14:09'),(5624,207,2,12108,'6.99','2005-08-17 22:56:39','2006-02-15 22:14:09'),(5625,207,2,13655,'2.99','2005-08-20 07:59:13','2006-02-15 22:14:09'),(5626,207,2,13809,'8.99','2005-08-20 12:56:03','2006-02-15 22:14:09'),(5627,207,2,13912,'9.99','2005-08-20 16:32:10','2006-02-15 22:14:09'),(5628,207,2,13954,'3.99','2005-08-20 18:02:41','2006-02-15 22:14:09'),(5629,207,1,15625,'1.99','2005-08-23 07:25:29','2006-02-15 22:14:10'),(5630,208,1,100,'4.99','2005-05-25 16:50:28','2006-02-15 22:14:10'),(5631,208,1,1805,'0.99','2005-06-16 20:36:00','2006-02-15 22:14:10'),(5632,208,1,1949,'5.99','2005-06-17 08:19:22','2006-02-15 22:14:10'),(5633,208,2,2592,'0.99','2005-06-19 05:36:54','2006-02-15 22:14:10'),(5634,208,1,2695,'2.99','2005-06-19 13:25:53','2006-02-15 22:14:10'),(5635,208,2,2907,'0.99','2005-06-20 03:15:09','2006-02-15 22:14:10'),(5636,208,2,3811,'2.99','2005-07-06 15:20:37','2006-02-15 22:14:10'),(5637,208,1,4354,'5.99','2005-07-07 19:21:02','2006-02-15 22:14:10'),(5638,208,2,4985,'4.99','2005-07-09 00:36:02','2006-02-15 22:14:10'),(5639,208,1,5117,'2.99','2005-07-09 07:11:22','2006-02-15 22:14:10'),(5640,208,2,5693,'2.99','2005-07-10 09:35:43','2006-02-15 22:14:10'),(5641,208,2,6306,'6.99','2005-07-11 18:04:26','2006-02-15 22:14:10'),(5642,208,1,6767,'1.99','2005-07-12 15:46:55','2006-02-15 22:14:10'),(5643,208,1,7315,'0.99','2005-07-27 13:14:56','2006-02-15 22:14:10'),(5644,208,1,7861,'2.99','2005-07-28 10:02:01','2006-02-15 22:14:10'),(5645,208,2,7984,'2.99','2005-07-28 14:27:51','2006-02-15 22:14:10'),(5646,208,1,8742,'1.99','2005-07-29 18:56:12','2006-02-15 22:14:10'),(5647,208,2,9298,'3.99','2005-07-30 16:27:53','2006-02-15 22:14:10'),(5648,208,1,9838,'4.99','2005-07-31 12:18:49','2006-02-15 22:14:10'),(5649,208,2,10762,'4.99','2005-08-01 20:28:39','2006-02-15 22:14:10'),(5650,208,2,10784,'5.99','2005-08-01 21:24:28','2006-02-15 22:14:10'),(5651,208,2,11442,'2.99','2005-08-02 20:26:19','2006-02-15 22:14:10'),(5652,208,2,11805,'6.99','2005-08-17 11:48:47','2006-02-15 22:14:10'),(5653,208,2,11819,'0.99','2005-08-17 12:25:17','2006-02-15 22:14:10'),(5654,208,1,13719,'5.98','2006-02-14 15:16:03','2006-02-15 22:14:10'),(5655,208,1,15717,'0.00','2006-02-14 15:16:03','2006-02-15 22:14:10'),(5656,209,2,340,'9.99','2005-05-27 03:55:25','2006-02-15 22:14:10'),(5657,209,1,471,'0.99','2005-05-27 21:32:42','2006-02-15 22:14:10'),(5658,209,2,1143,'2.99','2005-05-31 19:53:03','2006-02-15 22:14:10'),(5659,209,2,1201,'4.99','2005-06-15 02:06:28','2006-02-15 22:14:10'),(5660,209,1,1657,'4.99','2005-06-16 10:06:49','2006-02-15 22:14:10'),(5661,209,1,2650,'4.99','2005-06-19 10:21:45','2006-02-15 22:14:10'),(5662,209,1,2796,'4.99','2005-06-19 19:00:37','2006-02-15 22:14:10'),(5663,209,2,3504,'2.99','2005-07-06 00:18:29','2006-02-15 22:14:10'),(5664,209,2,4071,'5.99','2005-07-07 04:37:26','2006-02-15 22:14:11'),(5665,209,1,4309,'5.99','2005-07-07 17:29:41','2006-02-15 22:14:11'),(5666,209,2,4810,'4.99','2005-07-08 17:04:06','2006-02-15 22:14:11'),(5667,209,1,4907,'4.99','2005-07-08 21:01:41','2006-02-15 22:14:11'),(5668,209,2,5170,'3.99','2005-07-09 09:24:19','2006-02-15 22:14:11'),(5669,209,2,5219,'5.99','2005-07-09 11:57:55','2006-02-15 22:14:11'),(5670,209,1,6210,'0.99','2005-07-11 12:36:43','2006-02-15 22:14:11'),(5671,209,1,7116,'6.99','2005-07-27 05:46:43','2006-02-15 22:14:11'),(5672,209,1,7269,'3.99','2005-07-27 11:23:47','2006-02-15 22:14:11'),(5673,209,1,7505,'4.99','2005-07-27 20:28:03','2006-02-15 22:14:11'),(5674,209,2,7752,'5.99','2005-07-28 06:01:00','2006-02-15 22:14:11'),(5675,209,1,8067,'4.99','2005-07-28 17:20:17','2006-02-15 22:14:11'),(5676,209,2,8759,'8.99','2005-07-29 19:22:37','2006-02-15 22:14:11'),(5677,209,2,8816,'2.99','2005-07-29 21:53:00','2006-02-15 22:14:11'),(5678,209,2,9054,'6.99','2005-07-30 07:11:44','2006-02-15 22:14:11'),(5679,209,1,9923,'0.99','2005-07-31 15:00:15','2006-02-15 22:14:11'),(5680,209,2,10554,'2.99','2005-08-01 12:56:19','2006-02-15 22:14:11'),(5681,209,1,10646,'4.99','2005-08-01 15:57:55','2006-02-15 22:14:11'),(5682,209,2,10811,'6.99','2005-08-01 22:41:15','2006-02-15 22:14:11'),(5683,209,1,12025,'0.99','2005-08-17 19:59:06','2006-02-15 22:14:11'),(5684,209,1,13796,'8.99','2005-08-20 12:32:32','2006-02-15 22:14:11'),(5685,209,2,14631,'6.99','2005-08-21 18:47:49','2006-02-15 22:14:11'),(5686,209,1,15254,'2.99','2005-08-22 18:13:07','2006-02-15 22:14:11'),(5687,209,2,15510,'9.99','2005-08-23 02:51:27','2006-02-15 22:14:11'),(5688,210,1,953,'2.99','2005-05-30 16:34:02','2006-02-15 22:14:11'),(5689,210,2,1177,'2.99','2005-06-15 00:33:04','2006-02-15 22:14:11'),(5690,210,2,2856,'0.99','2005-06-19 23:13:04','2006-02-15 22:14:11'),(5691,210,2,3563,'4.99','2005-07-06 02:57:01','2006-02-15 22:14:11'),(5692,210,2,3884,'4.99','2005-07-06 18:41:33','2006-02-15 22:14:11'),(5693,210,2,4270,'0.99','2005-07-07 14:38:41','2006-02-15 22:14:11'),(5694,210,1,4306,'2.99','2005-07-07 17:12:32','2006-02-15 22:14:11'),(5695,210,1,4334,'0.99','2005-07-07 18:32:04','2006-02-15 22:14:11'),(5696,210,2,4388,'7.99','2005-07-07 20:58:03','2006-02-15 22:14:11'),(5697,210,1,4620,'5.99','2005-07-08 08:01:44','2006-02-15 22:14:11'),(5698,210,1,4871,'6.99','2005-07-08 19:19:52','2006-02-15 22:14:12'),(5699,210,1,4893,'4.99','2005-07-08 20:19:55','2006-02-15 22:14:12'),(5700,210,1,4989,'3.99','2005-07-09 00:46:56','2006-02-15 22:14:12'),(5701,210,2,5957,'0.99','2005-07-10 23:24:02','2006-02-15 22:14:12'),(5702,210,2,6227,'4.99','2005-07-11 13:56:46','2006-02-15 22:14:12'),(5703,210,1,6564,'1.99','2005-07-12 05:34:44','2006-02-15 22:14:12'),(5704,210,1,7743,'5.99','2005-07-28 05:36:13','2006-02-15 22:14:12'),(5705,210,2,7909,'0.99','2005-07-28 11:38:08','2006-02-15 22:14:12'),(5706,210,2,8336,'8.99','2005-07-29 04:20:42','2006-02-15 22:14:12'),(5707,210,2,8678,'3.99','2005-07-29 16:04:00','2006-02-15 22:14:12'),(5708,210,2,8738,'0.99','2005-07-29 18:32:47','2006-02-15 22:14:12'),(5709,210,2,10890,'4.99','2005-08-02 00:58:46','2006-02-15 22:14:12'),(5710,210,2,12410,'8.99','2005-08-18 09:45:33','2006-02-15 22:14:12'),(5711,210,1,12879,'4.99','2005-08-19 03:22:55','2006-02-15 22:14:12'),(5712,210,2,12909,'2.99','2005-08-19 04:20:25','2006-02-15 22:14:12'),(5713,210,2,12986,'4.99','2005-08-19 07:09:36','2006-02-15 22:14:12'),(5714,210,1,14181,'7.99','2005-08-21 03:16:30','2006-02-15 22:14:12'),(5715,210,2,14639,'6.99','2005-08-21 19:01:39','2006-02-15 22:14:12'),(5716,210,2,14876,'4.99','2005-08-22 03:39:29','2006-02-15 22:14:12'),(5717,210,2,15672,'0.99','2005-08-23 09:09:18','2006-02-15 22:14:12'),(5718,210,2,15942,'8.99','2005-08-23 18:48:40','2006-02-15 22:14:12'),(5719,211,1,238,'4.99','2005-05-26 12:30:22','2006-02-15 22:14:12'),(5720,211,2,2812,'8.99','2005-06-19 19:58:16','2006-02-15 22:14:12'),(5721,211,2,3437,'6.99','2005-06-21 19:20:17','2006-02-15 22:14:12'),(5722,211,2,3937,'8.99','2005-07-06 21:15:38','2006-02-15 22:14:12'),(5723,211,2,4060,'2.99','2005-07-07 04:10:13','2006-02-15 22:14:12'),(5724,211,2,4441,'5.99','2005-07-07 23:04:23','2006-02-15 22:14:12'),(5725,211,2,4479,'2.99','2005-07-08 00:52:35','2006-02-15 22:14:12'),(5726,211,1,4857,'2.99','2005-07-08 18:52:07','2006-02-15 22:14:12'),(5727,211,1,5668,'5.99','2005-07-10 08:11:05','2006-02-15 22:14:12'),(5728,211,2,5699,'3.99','2005-07-10 09:48:04','2006-02-15 22:14:12'),(5729,211,2,5785,'4.99','2005-07-10 14:06:03','2006-02-15 22:14:12'),(5730,211,2,6438,'0.99','2005-07-12 00:23:01','2006-02-15 22:14:12'),(5731,211,1,6628,'4.99','2005-07-12 09:18:08','2006-02-15 22:14:13'),(5732,211,1,6722,'1.99','2005-07-12 13:44:03','2006-02-15 22:14:13'),(5733,211,2,7484,'0.99','2005-07-27 19:28:17','2006-02-15 22:14:13'),(5734,211,1,7975,'2.99','2005-07-28 14:12:47','2006-02-15 22:14:13'),(5735,211,2,8961,'6.99','2005-07-30 03:43:35','2006-02-15 22:14:13'),(5736,211,1,9111,'3.99','2005-07-30 09:05:44','2006-02-15 22:14:13'),(5737,211,1,9953,'0.99','2005-07-31 15:56:35','2006-02-15 22:14:13'),(5738,211,1,10445,'2.99','2005-08-01 09:02:15','2006-02-15 22:14:13'),(5739,211,2,10928,'4.99','2005-08-02 02:34:12','2006-02-15 22:14:13'),(5740,211,2,11076,'8.99','2005-08-02 07:24:47','2006-02-15 22:14:13'),(5741,211,2,11963,'3.99','2005-08-17 17:35:47','2006-02-15 22:14:13'),(5742,211,2,12311,'0.99','2005-08-18 06:07:00','2006-02-15 22:14:13'),(5743,211,2,12565,'4.99','2005-08-18 15:12:17','2006-02-15 22:14:13'),(5744,211,2,12570,'5.99','2005-08-18 15:23:31','2006-02-15 22:14:13'),(5745,211,2,13942,'2.99','2005-08-20 17:30:52','2006-02-15 22:14:13'),(5746,211,1,13979,'2.99','2005-08-20 19:03:49','2006-02-15 22:14:13'),(5747,211,2,14782,'0.99','2005-08-22 00:17:20','2006-02-15 22:14:13'),(5748,211,2,14812,'1.99','2005-08-22 01:10:32','2006-02-15 22:14:13'),(5749,211,1,15404,'7.99','2005-08-22 23:19:44','2006-02-15 22:14:13'),(5750,211,2,15538,'6.99','2005-08-23 04:07:37','2006-02-15 22:14:13'),(5751,211,2,15670,'5.99','2005-08-23 09:07:11','2006-02-15 22:14:13'),(5752,211,2,12746,'4.99','2006-02-14 15:16:03','2006-02-15 22:14:13'),(5753,212,1,1356,'0.99','2005-06-15 13:17:01','2006-02-15 22:14:13'),(5754,212,2,1379,'0.99','2005-06-15 15:05:10','2006-02-15 22:14:13'),(5755,212,1,1637,'2.99','2005-06-16 08:29:58','2006-02-15 22:14:13'),(5756,212,2,2739,'9.99','2005-06-19 15:58:38','2006-02-15 22:14:13'),(5757,212,2,4708,'10.99','2005-07-08 11:59:19','2006-02-15 22:14:13'),(5758,212,2,4798,'3.99','2005-07-08 16:45:16','2006-02-15 22:14:13'),(5759,212,2,4916,'6.99','2005-07-08 21:32:17','2006-02-15 22:14:13'),(5760,212,1,5115,'6.99','2005-07-09 07:07:18','2006-02-15 22:14:13'),(5761,212,2,7828,'2.99','2005-07-28 08:40:46','2006-02-15 22:14:13'),(5762,212,2,8000,'4.99','2005-07-28 15:10:25','2006-02-15 22:14:13'),(5763,212,1,8940,'3.99','2005-07-30 02:57:26','2006-02-15 22:14:13'),(5764,212,2,10273,'4.99','2005-08-01 03:14:47','2006-02-15 22:14:13'),(5765,212,2,10567,'0.99','2005-08-01 13:16:01','2006-02-15 22:14:14'),(5766,212,1,12156,'7.99','2005-08-18 00:27:33','2006-02-15 22:14:14'),(5767,212,2,12467,'0.99','2005-08-18 11:40:09','2006-02-15 22:14:14'),(5768,212,2,12562,'3.99','2005-08-18 15:00:03','2006-02-15 22:14:14'),(5769,212,1,14563,'2.99','2005-08-21 16:23:53','2006-02-15 22:14:14'),(5770,212,2,14681,'5.99','2005-08-21 20:25:13','2006-02-15 22:14:14'),(5771,212,1,15872,'4.99','2005-08-23 16:27:24','2006-02-15 22:14:14'),(5772,212,2,15920,'2.99','2005-08-23 18:05:10','2006-02-15 22:14:14'),(5773,213,2,385,'0.99','2005-05-27 10:23:25','2006-02-15 22:14:14'),(5774,213,1,1489,'0.99','2005-06-15 21:41:38','2006-02-15 22:14:14'),(5775,213,2,1936,'4.99','2005-06-17 07:15:41','2006-02-15 22:14:14'),(5776,213,1,2322,'5.99','2005-06-18 09:44:21','2006-02-15 22:14:14'),(5777,213,1,2509,'0.99','2005-06-18 23:44:08','2006-02-15 22:14:14'),(5778,213,2,2569,'6.99','2005-06-19 04:19:04','2006-02-15 22:14:14'),(5779,213,1,2889,'4.99','2005-06-20 01:54:08','2006-02-15 22:14:14'),(5780,213,2,2946,'4.99','2005-06-20 05:50:40','2006-02-15 22:14:14'),(5781,213,1,3252,'2.99','2005-06-21 03:25:26','2006-02-15 22:14:14'),(5782,213,1,3313,'2.99','2005-06-21 08:11:18','2006-02-15 22:14:14'),(5783,213,2,3989,'4.99','2005-07-06 23:30:54','2006-02-15 22:14:14'),(5784,213,2,4236,'4.99','2005-07-07 13:12:07','2006-02-15 22:14:14'),(5785,213,1,4655,'8.99','2005-07-08 09:49:22','2006-02-15 22:14:14'),(5786,213,2,5159,'4.99','2005-07-09 08:55:52','2006-02-15 22:14:14'),(5787,213,1,5431,'0.99','2005-07-09 21:21:11','2006-02-15 22:14:14'),(5788,213,2,6725,'2.99','2005-07-12 13:47:17','2006-02-15 22:14:14'),(5789,213,2,7528,'0.99','2005-07-27 21:15:25','2006-02-15 22:14:14'),(5790,213,2,8444,'2.99','2005-07-29 07:36:13','2006-02-15 22:14:14'),(5791,213,2,8542,'4.99','2005-07-29 11:01:50','2006-02-15 22:14:14'),(5792,213,2,9150,'6.99','2005-07-30 10:49:32','2006-02-15 22:14:14'),(5793,213,2,9340,'2.99','2005-07-30 18:07:16','2006-02-15 22:14:14'),(5794,213,1,9477,'4.99','2005-07-30 23:07:22','2006-02-15 22:14:14'),(5795,213,1,10449,'2.99','2005-08-01 09:09:59','2006-02-15 22:14:14'),(5796,213,2,11778,'3.99','2005-08-17 10:31:40','2006-02-15 22:14:14'),(5797,213,1,13354,'4.99','2005-08-19 20:55:23','2006-02-15 22:14:14'),(5798,213,2,13426,'0.99','2005-08-19 23:15:00','2006-02-15 22:14:14'),(5799,213,1,14744,'6.99','2005-08-21 22:45:21','2006-02-15 22:14:15'),(5800,213,2,14374,'2.99','2006-02-14 15:16:03','2006-02-15 22:14:15'),(5801,214,1,242,'1.99','2005-05-26 13:05:08','2006-02-15 22:14:15'),(5802,214,1,278,'3.99','2005-05-26 17:40:58','2006-02-15 22:14:15'),(5803,214,1,1076,'2.99','2005-05-31 10:14:31','2006-02-15 22:14:15'),(5804,214,2,1093,'2.99','2005-05-31 12:32:26','2006-02-15 22:14:15'),(5805,214,2,1112,'0.99','2005-05-31 15:51:39','2006-02-15 22:14:15'),(5806,214,2,1275,'4.99','2005-06-15 07:55:43','2006-02-15 22:14:15'),(5807,214,2,2085,'2.99','2005-06-17 17:30:56','2006-02-15 22:14:15'),(5808,214,2,2868,'2.99','2005-06-20 00:08:58','2006-02-15 22:14:15'),(5809,214,2,4211,'0.99','2005-07-07 11:50:41','2006-02-15 22:14:15'),(5810,214,1,4783,'3.99','2005-07-08 16:09:24','2006-02-15 22:14:15'),(5811,214,2,4984,'3.99','2005-07-09 00:35:31','2006-02-15 22:14:15'),(5812,214,2,5172,'2.99','2005-07-09 09:31:27','2006-02-15 22:14:15'),(5813,214,1,6602,'7.99','2005-07-12 07:50:24','2006-02-15 22:14:15'),(5814,214,2,7417,'4.99','2005-07-27 16:58:33','2006-02-15 22:14:15'),(5815,214,2,7826,'5.99','2005-07-28 08:35:51','2006-02-15 22:14:15'),(5816,214,1,8663,'4.99','2005-07-29 15:33:18','2006-02-15 22:14:15'),(5817,214,1,10563,'3.99','2005-08-01 13:06:03','2006-02-15 22:14:15'),(5818,214,2,10749,'4.99','2005-08-01 20:02:01','2006-02-15 22:14:15'),(5819,214,2,11450,'2.99','2005-08-02 20:45:54','2006-02-15 22:14:15'),(5820,214,2,11474,'4.99','2005-08-02 21:53:08','2006-02-15 22:14:15'),(5821,214,2,12463,'4.99','2005-08-18 11:31:34','2006-02-15 22:14:15'),(5822,214,2,13138,'2.99','2005-08-19 12:30:01','2006-02-15 22:14:15'),(5823,214,2,13350,'9.99','2005-08-19 20:44:00','2006-02-15 22:14:15'),(5824,214,1,13409,'2.99','2005-08-19 22:36:26','2006-02-15 22:14:15'),(5825,214,1,13565,'0.99','2005-08-20 04:38:52','2006-02-15 22:14:15'),(5826,214,1,13726,'0.99','2005-08-20 10:08:40','2006-02-15 22:14:15'),(5827,214,1,13864,'4.99','2005-08-20 14:59:55','2006-02-15 22:14:15'),(5828,214,2,14347,'4.99','2005-08-21 08:42:31','2006-02-15 22:14:15'),(5829,214,1,14567,'0.99','2005-08-21 16:27:25','2006-02-15 22:14:15'),(5830,214,2,15639,'2.99','2005-08-23 08:03:25','2006-02-15 22:14:15'),(5831,214,2,15645,'2.99','2006-02-14 15:16:03','2006-02-15 22:14:15'),(5832,215,1,711,'4.99','2005-05-29 03:49:03','2006-02-15 22:14:16'),(5833,215,2,1080,'4.99','2005-05-31 10:55:26','2006-02-15 22:14:16'),(5834,215,2,1376,'4.99','2005-06-15 14:59:06','2006-02-15 22:14:16'),(5835,215,2,1599,'4.99','2005-06-16 06:03:33','2006-02-15 22:14:16'),(5836,215,2,1845,'4.99','2005-06-16 23:56:11','2006-02-15 22:14:16'),(5837,215,2,2006,'2.99','2005-06-17 11:47:03','2006-02-15 22:14:16'),(5838,215,2,2918,'2.99','2005-06-20 04:09:04','2006-02-15 22:14:16'),(5839,215,1,3143,'2.99','2005-06-20 20:01:52','2006-02-15 22:14:16'),(5840,215,2,4940,'8.99','2005-07-08 22:36:06','2006-02-15 22:14:16'),(5841,215,1,5886,'2.99','2005-07-10 19:36:25','2006-02-15 22:14:16'),(5842,215,2,5967,'8.99','2005-07-11 00:02:19','2006-02-15 22:14:16'),(5843,215,1,7180,'1.99','2005-07-27 08:14:34','2006-02-15 22:14:16'),(5844,215,2,9046,'2.99','2005-07-30 06:46:55','2006-02-15 22:14:16'),(5845,215,1,9518,'0.99','2005-07-31 00:43:26','2006-02-15 22:14:16'),(5846,215,2,9611,'4.99','2005-07-31 03:54:43','2006-02-15 22:14:16'),(5847,215,1,11729,'2.99','2005-08-17 08:14:41','2006-02-15 22:14:16'),(5848,215,2,12285,'2.99','2005-08-18 04:56:43','2006-02-15 22:14:16'),(5849,215,1,12380,'1.99','2005-08-18 08:27:28','2006-02-15 22:14:16'),(5850,215,2,13085,'0.99','2005-08-19 10:28:22','2006-02-15 22:14:16'),(5851,215,2,14126,'0.99','2005-08-21 01:32:17','2006-02-15 22:14:16'),(5852,215,2,14817,'4.99','2005-08-22 01:17:16','2006-02-15 22:14:16'),(5853,215,1,15583,'2.99','2005-08-23 05:47:55','2006-02-15 22:14:16'),(5854,215,2,15610,'2.99','2005-08-23 06:56:15','2006-02-15 22:14:16'),(5855,215,2,15799,'2.99','2005-08-23 14:23:23','2006-02-15 22:14:16'),(5856,215,1,15843,'0.99','2005-08-23 15:37:31','2006-02-15 22:14:16'),(5857,215,2,15862,'0.99','2006-02-14 15:16:03','2006-02-15 22:14:16'),(5858,216,1,997,'4.99','2005-05-31 00:08:25','2006-02-15 22:14:16'),(5859,216,2,1461,'6.99','2005-06-15 20:32:08','2006-02-15 22:14:16'),(5860,216,1,1664,'0.99','2005-06-16 10:15:20','2006-02-15 22:14:16'),(5861,216,1,1672,'3.99','2005-06-16 10:37:34','2006-02-15 22:14:16'),(5862,216,2,2351,'0.99','2005-06-18 12:27:57','2006-02-15 22:14:16'),(5863,216,1,3432,'2.99','2005-06-21 19:02:03','2006-02-15 22:14:16'),(5864,216,2,4161,'2.99','2005-07-07 09:15:11','2006-02-15 22:14:16'),(5865,216,1,6008,'6.99','2005-07-11 01:51:29','2006-02-15 22:14:16'),(5866,216,2,6349,'7.99','2005-07-11 20:25:05','2006-02-15 22:14:17'),(5867,216,1,8068,'4.99','2005-07-28 17:22:28','2006-02-15 22:14:17'),(5868,216,2,8859,'8.99','2005-07-29 23:44:43','2006-02-15 22:14:17'),(5869,216,1,9096,'0.99','2005-07-30 08:39:23','2006-02-15 22:14:17'),(5870,216,1,10506,'4.99','2005-08-01 11:16:05','2006-02-15 22:14:17'),(5871,216,1,11005,'0.99','2005-08-02 05:05:23','2006-02-15 22:14:17'),(5872,216,2,11621,'7.99','2005-08-17 04:13:45','2006-02-15 22:14:17'),(5873,216,2,13424,'0.99','2005-08-19 23:10:09','2006-02-15 22:14:17'),(5874,216,2,14638,'2.99','2005-08-21 19:01:36','2006-02-15 22:14:17'),(5875,216,2,14726,'4.99','2005-08-21 22:08:52','2006-02-15 22:14:17'),(5876,216,1,15192,'4.99','2005-08-22 16:06:23','2006-02-15 22:14:17'),(5877,216,2,15199,'2.99','2005-08-22 16:17:49','2006-02-15 22:14:17'),(5878,216,2,15934,'4.99','2005-08-23 18:40:41','2006-02-15 22:14:17'),(5879,216,1,12970,'5.98','2006-02-14 15:16:03','2006-02-15 22:14:17'),(5880,216,1,11676,'0.00','2006-02-14 15:16:03','2006-02-15 22:14:17'),(5881,217,2,828,'2.99','2005-05-29 22:14:55','2006-02-15 22:14:17'),(5882,217,2,1141,'8.99','2005-05-31 19:42:02','2006-02-15 22:14:17'),(5883,217,1,1322,'2.99','2005-06-15 10:55:09','2006-02-15 22:14:17'),(5884,217,1,2076,'6.99','2005-06-17 16:43:47','2006-02-15 22:14:17'),(5885,217,1,2842,'4.99','2005-06-19 22:34:20','2006-02-15 22:14:17'),(5886,217,2,5576,'2.99','2005-07-10 03:57:05','2006-02-15 22:14:17'),(5887,217,2,5762,'3.99','2005-07-10 12:48:01','2006-02-15 22:14:17'),(5888,217,2,6570,'4.99','2005-07-12 05:50:31','2006-02-15 22:14:17'),(5889,217,2,7104,'2.99','2005-07-27 05:15:25','2006-02-15 22:14:17'),(5890,217,2,8332,'4.99','2005-07-29 04:16:00','2006-02-15 22:14:17'),(5891,217,1,9159,'0.99','2005-07-30 11:16:37','2006-02-15 22:14:17'),(5892,217,2,9317,'2.99','2005-07-30 17:13:37','2006-02-15 22:14:17'),(5893,217,2,9632,'6.99','2005-07-31 05:02:23','2006-02-15 22:14:17'),(5894,217,2,9745,'2.99','2005-07-31 09:16:14','2006-02-15 22:14:17'),(5895,217,1,10581,'5.99','2005-08-01 13:52:30','2006-02-15 22:14:17'),(5896,217,1,10836,'6.99','2005-08-01 23:29:58','2006-02-15 22:14:17'),(5897,217,1,11347,'2.99','2005-08-02 17:18:07','2006-02-15 22:14:17'),(5898,217,1,11649,'2.99','2005-08-17 04:59:26','2006-02-15 22:14:17'),(5899,217,1,11958,'4.99','2005-08-17 17:23:20','2006-02-15 22:14:17'),(5900,217,2,12210,'4.99','2005-08-18 02:27:29','2006-02-15 22:14:18'),(5901,217,1,12871,'4.99','2005-08-19 02:55:36','2006-02-15 22:14:18'),(5902,217,2,15116,'0.99','2005-08-22 12:35:40','2006-02-15 22:14:18'),(5903,217,2,15277,'2.99','2005-08-22 19:02:48','2006-02-15 22:14:18'),(5904,218,1,1459,'2.99','2005-06-15 20:25:53','2006-02-15 22:14:18'),(5905,218,1,2262,'0.99','2005-06-18 05:49:46','2006-02-15 22:14:18'),(5906,218,1,2267,'0.99','2005-06-18 06:10:23','2006-02-15 22:14:18'),(5907,218,1,4898,'6.99','2005-07-08 20:31:43','2006-02-15 22:14:18'),(5908,218,1,5226,'0.99','2005-07-09 12:10:44','2006-02-15 22:14:18'),(5909,218,2,5737,'0.99','2005-07-10 11:50:04','2006-02-15 22:14:18'),(5910,218,2,7090,'4.99','2005-07-27 04:43:53','2006-02-15 22:14:18'),(5911,218,1,7236,'8.99','2005-07-27 10:09:39','2006-02-15 22:14:18'),(5912,218,2,9018,'6.99','2005-07-30 05:28:40','2006-02-15 22:14:18'),(5913,218,2,9902,'6.99','2005-07-31 14:24:33','2006-02-15 22:14:18'),(5914,218,1,10114,'0.99','2005-07-31 21:12:58','2006-02-15 22:14:18'),(5915,218,1,11654,'2.99','2005-08-17 05:06:19','2006-02-15 22:14:18'),(5916,218,2,12481,'2.99','2005-08-18 12:31:34','2006-02-15 22:14:18'),(5917,218,1,12974,'0.99','2005-08-19 06:51:02','2006-02-15 22:14:18'),(5918,218,2,13708,'5.99','2005-08-20 09:34:07','2006-02-15 22:14:18'),(5919,218,2,13947,'5.99','2005-08-20 17:46:06','2006-02-15 22:14:18'),(5920,218,2,14848,'4.99','2005-08-22 02:14:19','2006-02-15 22:14:18'),(5921,218,2,15575,'0.99','2005-08-23 05:30:19','2006-02-15 22:14:18'),(5922,219,1,414,'0.99','2005-05-27 14:48:20','2006-02-15 22:14:18'),(5923,219,2,2417,'3.99','2005-06-18 17:12:01','2006-02-15 22:14:18'),(5924,219,2,2580,'0.99','2005-06-19 04:44:30','2006-02-15 22:14:18'),(5925,219,2,4678,'0.99','2005-07-08 10:30:40','2006-02-15 22:14:18'),(5926,219,2,4910,'7.99','2005-07-08 21:13:56','2006-02-15 22:14:18'),(5927,219,2,5123,'0.99','2005-07-09 07:20:30','2006-02-15 22:14:18'),(5928,219,2,5416,'4.99','2005-07-09 20:33:50','2006-02-15 22:14:18'),(5929,219,2,5475,'4.99','2005-07-09 23:31:38','2006-02-15 22:14:18'),(5930,219,2,5739,'7.99','2005-07-10 11:51:50','2006-02-15 22:14:18'),(5931,219,2,6172,'4.99','2005-07-11 10:32:09','2006-02-15 22:14:18'),(5932,219,1,6209,'2.99','2005-07-11 12:36:05','2006-02-15 22:14:18'),(5933,219,2,6501,'1.99','2005-07-12 03:11:55','2006-02-15 22:14:19'),(5934,219,2,7335,'2.99','2005-07-27 14:06:50','2006-02-15 22:14:19'),(5935,219,1,7726,'5.99','2005-07-28 04:52:19','2006-02-15 22:14:19'),(5936,219,1,8430,'0.99','2005-07-29 07:12:17','2006-02-15 22:14:19'),(5937,219,2,8536,'4.99','2005-07-29 10:37:23','2006-02-15 22:14:19'),(5938,219,1,8652,'6.99','2005-07-29 15:02:54','2006-02-15 22:14:19'),(5939,219,1,9712,'4.99','2005-07-31 08:13:11','2006-02-15 22:14:19'),(5940,219,1,11328,'2.99','2005-08-02 16:42:38','2006-02-15 22:14:19'),(5941,219,2,11791,'0.99','2005-08-17 11:01:11','2006-02-15 22:14:19'),(5942,219,1,13765,'4.99','2005-08-20 11:39:00','2006-02-15 22:14:19'),(5943,219,2,14029,'0.99','2005-08-20 21:23:11','2006-02-15 22:14:19'),(5944,219,1,14588,'5.99','2005-08-21 17:25:53','2006-02-15 22:14:19'),(5945,219,1,14688,'4.99','2005-08-21 20:32:37','2006-02-15 22:14:19'),(5946,219,1,15283,'4.99','2005-08-22 19:16:04','2006-02-15 22:14:19'),(5947,219,1,11577,'4.99','2006-02-14 15:16:03','2006-02-15 22:14:19'),(5948,220,2,409,'0.99','2005-05-27 14:10:58','2006-02-15 22:14:19'),(5949,220,1,480,'3.99','2005-05-27 22:47:39','2006-02-15 22:14:19'),(5950,220,1,1832,'0.99','2005-06-16 22:35:20','2006-02-15 22:14:19'),(5951,220,2,4918,'2.99','2005-07-08 21:37:31','2006-02-15 22:14:19'),(5952,220,2,5613,'2.99','2005-07-10 05:15:43','2006-02-15 22:14:19'),(5953,220,2,5847,'2.99','2005-07-10 17:27:42','2006-02-15 22:14:19'),(5954,220,2,5859,'0.99','2005-07-10 18:02:02','2006-02-15 22:14:19'),(5955,220,2,6412,'0.99','2005-07-11 23:19:21','2006-02-15 22:14:19'),(5956,220,2,6832,'8.99','2005-07-12 18:51:41','2006-02-15 22:14:19'),(5957,220,2,7750,'9.99','2005-07-28 05:55:30','2006-02-15 22:14:19'),(5958,220,1,8065,'2.99','2005-07-28 17:15:48','2006-02-15 22:14:19'),(5959,220,1,8398,'4.99','2005-07-29 06:12:40','2006-02-15 22:14:19'),(5960,220,2,9384,'7.99','2005-07-30 19:25:35','2006-02-15 22:14:19'),(5961,220,2,9455,'10.99','2005-07-30 22:20:29','2006-02-15 22:14:19'),(5962,220,1,10099,'2.99','2005-07-31 20:47:14','2006-02-15 22:14:19'),(5963,220,2,10778,'4.99','2005-08-01 21:11:39','2006-02-15 22:14:19'),(5964,220,1,10948,'4.99','2005-08-02 03:23:23','2006-02-15 22:14:19'),(5965,220,1,11037,'0.99','2005-08-02 05:58:12','2006-02-15 22:14:19'),(5966,220,1,11153,'3.99','2005-08-02 09:54:19','2006-02-15 22:14:20'),(5967,220,1,11622,'4.99','2005-08-17 04:15:46','2006-02-15 22:14:20'),(5968,220,2,11947,'2.99','2005-08-17 17:08:13','2006-02-15 22:14:20'),(5969,220,1,12407,'4.99','2005-08-18 09:39:26','2006-02-15 22:14:20'),(5970,220,1,12896,'4.99','2005-08-19 03:52:44','2006-02-15 22:14:20'),(5971,220,2,13123,'2.99','2005-08-19 11:55:13','2006-02-15 22:14:20'),(5972,220,1,13281,'2.99','2005-08-19 18:07:47','2006-02-15 22:14:20'),(5973,220,2,14016,'4.99','2005-08-20 20:52:03','2006-02-15 22:14:20'),(5974,220,2,15706,'4.99','2005-08-23 10:32:52','2006-02-15 22:14:20'),(5975,221,2,226,'4.99','2005-05-26 10:44:04','2006-02-15 22:14:20'),(5976,221,1,1369,'0.99','2005-06-15 14:29:14','2006-02-15 22:14:20'),(5977,221,1,2331,'2.99','2005-06-18 10:50:09','2006-02-15 22:14:20'),(5978,221,2,2473,'2.99','2005-06-18 20:42:45','2006-02-15 22:14:20'),(5979,221,1,2660,'10.99','2005-06-19 10:50:02','2006-02-15 22:14:20'),(5980,221,1,3200,'5.99','2005-06-21 00:22:47','2006-02-15 22:14:20'),(5981,221,1,4293,'4.99','2005-07-07 15:53:47','2006-02-15 22:14:20'),(5982,221,2,4649,'4.99','2005-07-08 09:32:05','2006-02-15 22:14:20'),(5983,221,1,4693,'6.99','2005-07-08 11:07:36','2006-02-15 22:14:20'),(5984,221,1,5058,'5.99','2005-07-09 04:20:35','2006-02-15 22:14:20'),(5985,221,2,5920,'5.99','2005-07-10 21:33:58','2006-02-15 22:14:20'),(5986,221,1,7101,'2.99','2005-07-27 05:06:34','2006-02-15 22:14:20'),(5987,221,1,7129,'0.99','2005-07-27 06:18:01','2006-02-15 22:14:20'),(5988,221,2,7531,'8.99','2005-07-27 21:19:34','2006-02-15 22:14:20'),(5989,221,2,8486,'0.99','2005-07-29 08:53:38','2006-02-15 22:14:20'),(5990,221,1,9320,'6.99','2005-07-30 17:16:39','2006-02-15 22:14:20'),(5991,221,1,9453,'7.99','2005-07-30 22:20:04','2006-02-15 22:14:20'),(5992,221,2,9853,'0.99','2005-07-31 12:58:20','2006-02-15 22:14:20'),(5993,221,2,11680,'4.99','2005-08-17 06:12:27','2006-02-15 22:14:20'),(5994,221,1,11693,'4.99','2005-08-17 06:56:56','2006-02-15 22:14:20'),(5995,221,1,11802,'2.99','2005-08-17 11:32:51','2006-02-15 22:14:20'),(5996,221,1,12324,'0.99','2005-08-18 06:38:20','2006-02-15 22:14:20'),(5997,221,2,12620,'3.99','2005-08-18 17:26:38','2006-02-15 22:14:20'),(5998,221,2,13434,'2.99','2005-08-19 23:34:26','2006-02-15 22:14:20'),(5999,221,2,14322,'5.99','2005-08-21 08:06:30','2006-02-15 22:14:21'),(6000,221,2,14371,'0.99','2005-08-21 09:37:16','2006-02-15 22:14:21'),(6001,221,1,14419,'7.99','2005-08-21 11:15:46','2006-02-15 22:14:21'),(6002,221,1,15125,'8.99','2005-08-22 12:53:22','2006-02-15 22:14:21'),(6003,222,1,5,'6.99','2005-05-24 23:05:21','2006-02-15 22:14:21'),(6004,222,1,134,'4.99','2005-05-25 21:48:41','2006-02-15 22:14:21'),(6005,222,2,416,'0.99','2005-05-27 15:02:10','2006-02-15 22:14:21'),(6006,222,2,809,'3.99','2005-05-29 19:10:20','2006-02-15 22:14:21'),(6007,222,2,1006,'2.99','2005-05-31 00:57:08','2006-02-15 22:14:21'),(6008,222,1,1368,'8.99','2005-06-15 14:27:47','2006-02-15 22:14:21'),(6009,222,2,2603,'6.99','2005-06-19 06:21:25','2006-02-15 22:14:21'),(6010,222,2,5209,'8.99','2005-07-09 11:22:39','2006-02-15 22:14:21'),(6011,222,1,5266,'3.99','2005-07-09 14:17:40','2006-02-15 22:14:21'),(6012,222,2,5592,'6.99','2005-07-10 04:26:13','2006-02-15 22:14:21'),(6013,222,2,5635,'5.99','2005-07-10 06:28:39','2006-02-15 22:14:21'),(6014,222,2,6129,'2.99','2005-07-11 08:15:09','2006-02-15 22:14:21'),(6015,222,1,6497,'0.99','2005-07-12 03:04:29','2006-02-15 22:14:21'),(6016,222,2,7786,'0.99','2005-07-28 07:18:26','2006-02-15 22:14:21'),(6017,222,1,8300,'1.99','2005-07-29 02:57:59','2006-02-15 22:14:21'),(6018,222,2,8597,'6.99','2005-07-29 12:55:55','2006-02-15 22:14:21'),(6019,222,1,8787,'4.99','2005-07-29 20:43:49','2006-02-15 22:14:21'),(6020,222,2,10043,'1.99','2005-07-31 19:02:07','2006-02-15 22:14:21'),(6021,222,2,12179,'2.99','2005-08-18 01:21:21','2006-02-15 22:14:21'),(6022,222,1,13477,'2.99','2005-08-20 01:07:00','2006-02-15 22:14:21'),(6023,222,2,14350,'2.99','2005-08-21 08:58:38','2006-02-15 22:14:21'),(6024,223,2,524,'2.99','2005-05-28 03:57:28','2006-02-15 22:14:21'),(6025,223,2,1839,'5.99','2005-06-16 23:22:22','2006-02-15 22:14:21'),(6026,223,1,2334,'4.99','2005-06-18 10:56:24','2006-02-15 22:14:21'),(6027,223,1,3513,'5.99','2005-07-06 00:45:57','2006-02-15 22:14:21'),(6028,223,1,3705,'0.99','2005-07-06 10:17:59','2006-02-15 22:14:21'),(6029,223,1,4874,'4.99','2005-07-08 19:23:38','2006-02-15 22:14:21'),(6030,223,2,5996,'2.99','2005-07-11 01:18:33','2006-02-15 22:14:21'),(6031,223,2,7085,'5.99','2005-07-27 04:35:44','2006-02-15 22:14:22'),(6032,223,2,8362,'3.99','2005-07-29 05:09:11','2006-02-15 22:14:22'),(6033,223,2,10053,'7.99','2005-07-31 19:15:39','2006-02-15 22:14:22'),(6034,223,2,11040,'4.99','2005-08-02 06:03:22','2006-02-15 22:14:22'),(6035,223,1,12927,'5.99','2005-08-19 05:02:46','2006-02-15 22:14:22'),(6036,223,1,13576,'0.99','2005-08-20 05:19:56','2006-02-15 22:14:22'),(6037,223,2,14496,'4.99','2005-08-21 14:07:35','2006-02-15 22:14:22'),(6038,223,1,15257,'7.99','2005-08-22 18:21:04','2006-02-15 22:14:22'),(6039,223,2,15546,'5.99','2005-08-23 04:20:38','2006-02-15 22:14:22'),(6040,223,1,15662,'2.99','2005-08-23 08:52:50','2006-02-15 22:14:22'),(6041,224,1,1424,'7.99','2005-06-15 18:08:14','2006-02-15 22:14:22'),(6042,224,1,2277,'2.99','2005-06-18 06:35:03','2006-02-15 22:14:22'),(6043,224,2,3282,'4.99','2005-06-21 06:18:42','2006-02-15 22:14:22'),(6044,224,1,4118,'2.99','2005-07-07 07:03:30','2006-02-15 22:14:22'),(6045,224,2,4411,'3.99','2005-07-07 21:54:58','2006-02-15 22:14:22'),(6046,224,1,4697,'2.99','2005-07-08 11:19:14','2006-02-15 22:14:22'),(6047,224,1,6031,'4.99','2005-07-11 02:42:14','2006-02-15 22:14:22'),(6048,224,2,6999,'2.99','2005-07-27 01:21:19','2006-02-15 22:14:22'),(6049,224,2,8255,'0.99','2005-07-29 01:02:30','2006-02-15 22:14:22'),(6050,224,2,8439,'2.99','2005-07-29 07:28:43','2006-02-15 22:14:23'),(6051,224,1,8605,'4.99','2005-07-29 13:13:34','2006-02-15 22:14:23'),(6052,224,1,9181,'0.99','2005-07-30 12:05:58','2006-02-15 22:14:23'),(6053,224,1,11816,'0.99','2005-08-17 12:14:16','2006-02-15 22:14:23'),(6054,224,1,12492,'4.99','2005-08-18 12:49:04','2006-02-15 22:14:23'),(6055,224,1,12969,'2.99','2005-08-19 06:38:59','2006-02-15 22:14:23'),(6056,224,2,13075,'4.99','2005-08-19 10:10:10','2006-02-15 22:14:23'),(6057,224,2,14099,'0.99','2005-08-21 00:31:03','2006-02-15 22:14:23'),(6058,224,2,14271,'5.99','2005-08-21 06:23:29','2006-02-15 22:14:23'),(6059,224,2,14468,'5.99','2005-08-21 13:07:10','2006-02-15 22:14:23'),(6060,224,2,14880,'2.99','2005-08-22 03:44:36','2006-02-15 22:14:23'),(6061,224,1,15225,'0.99','2005-08-22 17:18:32','2006-02-15 22:14:23'),(6062,224,1,15952,'1.99','2005-08-23 19:11:29','2006-02-15 22:14:23'),(6063,225,1,812,'4.99','2005-05-29 20:00:30','2006-02-15 22:14:23'),(6064,225,1,963,'3.99','2005-05-30 18:52:53','2006-02-15 22:14:23'),(6065,225,2,2226,'7.99','2005-06-18 03:39:56','2006-02-15 22:14:23'),(6066,225,2,3574,'4.99','2005-07-06 03:36:01','2006-02-15 22:14:23'),(6067,225,1,4345,'7.99','2005-07-07 18:52:57','2006-02-15 22:14:23'),(6068,225,1,4824,'7.99','2005-07-08 17:37:39','2006-02-15 22:14:23'),(6069,225,2,4955,'2.99','2005-07-08 23:16:21','2006-02-15 22:14:24'),(6070,225,1,5067,'4.99','2005-07-09 04:52:35','2006-02-15 22:14:24'),(6071,225,1,6159,'2.99','2005-07-11 09:55:34','2006-02-15 22:14:24'),(6072,225,1,6317,'2.99','2005-07-11 18:47:41','2006-02-15 22:14:24'),(6073,225,2,6350,'2.99','2005-07-11 20:30:15','2006-02-15 22:14:24'),(6074,225,1,6526,'3.99','2005-07-12 04:21:20','2006-02-15 22:14:24'),(6075,225,2,6532,'2.99','2005-07-12 04:38:32','2006-02-15 22:14:24'),(6076,225,2,7347,'4.99','2005-07-27 14:31:24','2006-02-15 22:14:24'),(6077,225,1,7524,'6.99','2005-07-27 21:11:44','2006-02-15 22:14:24'),(6078,225,1,8054,'7.99','2005-07-28 17:02:18','2006-02-15 22:14:25'),(6079,225,2,8110,'4.99','2005-07-28 19:07:45','2006-02-15 22:14:25'),(6080,225,1,9980,'4.99','2005-07-31 17:02:00','2006-02-15 22:14:25'),(6081,225,2,9993,'2.99','2005-07-31 17:30:20','2006-02-15 22:14:25'),(6082,225,2,10138,'2.99','2005-07-31 22:02:09','2006-02-15 22:14:25'),(6083,225,1,10793,'2.99','2005-08-01 21:48:03','2006-02-15 22:14:25'),(6084,225,2,11333,'1.99','2005-08-02 16:53:00','2006-02-15 22:14:25'),(6085,225,2,11384,'0.99','2005-08-02 18:23:01','2006-02-15 22:14:25'),(6086,225,2,11395,'5.99','2005-08-02 18:47:44','2006-02-15 22:14:25'),(6087,225,2,11437,'4.99','2005-08-02 20:20:06','2006-02-15 22:14:25'),(6088,225,2,14444,'5.99','2005-08-21 12:07:25','2006-02-15 22:14:25'),(6089,226,2,3414,'2.99','2005-06-21 16:58:50','2006-02-15 22:14:25'),(6090,226,1,3466,'4.99','2005-06-21 22:13:33','2006-02-15 22:14:25'),(6091,226,1,3721,'4.99','2005-07-06 11:10:09','2006-02-15 22:14:25'),(6092,226,1,4324,'4.99','2005-07-07 17:57:56','2006-02-15 22:14:25'),(6093,226,1,5282,'2.99','2005-07-09 15:01:23','2006-02-15 22:14:25'),(6094,226,1,5419,'2.99','2005-07-09 20:47:36','2006-02-15 22:14:25'),(6095,226,1,6712,'9.99','2005-07-12 13:24:47','2006-02-15 22:14:25'),(6096,226,2,7288,'5.99','2005-07-27 12:24:59','2006-02-15 22:14:25'),(6097,226,1,7329,'3.99','2005-07-27 13:55:34','2006-02-15 22:14:25'),(6098,226,2,8600,'2.99','2005-07-29 13:01:19','2006-02-15 22:14:25'),(6099,226,1,8627,'2.99','2005-07-29 14:05:12','2006-02-15 22:14:25'),(6100,226,1,12172,'1.99','2005-08-18 01:07:00','2006-02-15 22:14:25'),(6101,226,1,14491,'6.99','2005-08-21 13:55:39','2006-02-15 22:14:25'),(6102,226,1,14708,'4.99','2005-08-21 21:07:23','2006-02-15 22:14:26'),(6103,226,1,14712,'0.99','2005-08-21 21:22:56','2006-02-15 22:14:26'),(6104,226,2,14739,'0.99','2005-08-21 22:33:22','2006-02-15 22:14:26'),(6105,226,2,14934,'4.99','2005-08-22 05:47:15','2006-02-15 22:14:26'),(6106,226,2,15472,'2.99','2005-08-23 01:39:05','2006-02-15 22:14:26'),(6107,226,1,15901,'4.99','2005-08-23 17:19:17','2006-02-15 22:14:26'),(6108,226,1,15986,'2.99','2005-08-23 20:20:37','2006-02-15 22:14:26'),(6109,226,1,16033,'5.99','2005-08-23 22:06:15','2006-02-15 22:14:26'),(6110,227,1,111,'4.99','2005-05-25 18:45:19','2006-02-15 22:14:26'),(6111,227,1,1023,'3.99','2005-05-31 03:26:50','2006-02-15 22:14:26'),(6112,227,1,1679,'2.99','2005-06-16 11:11:01','2006-02-15 22:14:26'),(6113,227,2,2155,'1.99','2005-06-17 23:07:29','2006-02-15 22:14:26'),(6114,227,1,2164,'6.99','2005-06-17 23:46:21','2006-02-15 22:14:26'),(6115,227,2,3065,'0.99','2005-06-20 13:53:53','2006-02-15 22:14:26'),(6116,227,1,3576,'5.99','2005-07-06 03:40:01','2006-02-15 22:14:26'),(6117,227,2,4340,'2.99','2005-07-07 18:41:46','2006-02-15 22:14:26'),(6118,227,2,4459,'4.99','2005-07-07 23:48:52','2006-02-15 22:14:26'),(6119,227,1,4680,'2.99','2005-07-08 10:35:28','2006-02-15 22:14:26'),(6120,227,1,5046,'3.99','2005-07-09 03:34:57','2006-02-15 22:14:26'),(6121,227,1,7132,'7.99','2005-07-27 06:28:34','2006-02-15 22:14:26'),(6122,227,1,8219,'2.99','2005-07-28 23:46:31','2006-02-15 22:14:26'),(6123,227,1,8234,'0.99','2005-07-29 00:19:20','2006-02-15 22:14:26'),(6124,227,1,8384,'0.99','2005-07-29 05:38:43','2006-02-15 22:14:26'),(6125,227,2,8417,'4.99','2005-07-29 06:53:36','2006-02-15 22:14:26'),(6126,227,1,8936,'2.99','2005-07-30 02:47:13','2006-02-15 22:14:26'),(6127,227,2,9521,'2.99','2005-07-31 00:52:24','2006-02-15 22:14:26'),(6128,227,2,10999,'3.99','2005-08-02 04:53:13','2006-02-15 22:14:26'),(6129,227,2,11892,'0.99','2005-08-17 15:13:21','2006-02-15 22:14:26'),(6130,227,2,13379,'4.99','2005-08-19 21:33:39','2006-02-15 22:14:26'),(6131,227,2,15406,'0.99','2005-08-22 23:21:22','2006-02-15 22:14:26'),(6132,227,2,15976,'4.99','2005-08-23 20:07:08','2006-02-15 22:14:27'),(6133,227,2,13374,'4.99','2006-02-14 15:16:03','2006-02-15 22:14:27'),(6134,228,2,492,'4.99','2005-05-28 00:24:58','2006-02-15 22:14:27'),(6135,228,2,1070,'0.99','2005-05-31 09:39:56','2006-02-15 22:14:27'),(6136,228,2,2284,'3.99','2005-06-18 06:59:51','2006-02-15 22:14:27'),(6137,228,2,2863,'2.99','2005-06-19 23:58:38','2006-02-15 22:14:27'),(6138,228,2,2934,'2.99','2005-06-20 05:05:53','2006-02-15 22:14:27'),(6139,228,2,3433,'3.99','2005-06-21 19:07:19','2006-02-15 22:14:27'),(6140,228,2,3538,'0.99','2005-07-06 01:37:07','2006-02-15 22:14:27'),(6141,228,2,3710,'8.99','2005-07-06 10:28:53','2006-02-15 22:14:27'),(6142,228,1,3715,'6.99','2005-07-06 10:51:48','2006-02-15 22:14:27'),(6143,228,2,3796,'0.99','2005-07-06 14:45:22','2006-02-15 22:14:27'),(6144,228,1,4217,'3.99','2005-07-07 12:08:59','2006-02-15 22:14:27'),(6145,228,1,4636,'4.99','2005-07-08 08:44:32','2006-02-15 22:14:27'),(6146,228,1,4909,'0.99','2005-07-08 21:07:24','2006-02-15 22:14:27'),(6147,228,1,5151,'2.99','2005-07-09 08:31:03','2006-02-15 22:14:28'),(6148,228,1,5320,'4.99','2005-07-09 16:23:32','2006-02-15 22:14:28'),(6149,228,2,5902,'0.99','2005-07-10 20:31:24','2006-02-15 22:14:28'),(6150,228,2,6141,'1.99','2005-07-11 08:52:16','2006-02-15 22:14:28'),(6151,228,1,6948,'2.99','2005-07-26 23:43:49','2006-02-15 22:14:28'),(6152,228,2,7509,'8.99','2005-07-27 20:37:19','2006-02-15 22:14:28'),(6153,228,1,7601,'0.99','2005-07-27 23:48:15','2006-02-15 22:14:28'),(6154,228,1,8147,'2.99','2005-07-28 20:37:56','2006-02-15 22:14:28'),(6155,228,1,10585,'4.99','2005-08-01 14:00:42','2006-02-15 22:14:28'),(6156,228,1,12304,'0.99','2005-08-18 05:44:29','2006-02-15 22:14:28'),(6157,228,2,12952,'2.99','2005-08-19 06:00:52','2006-02-15 22:14:28'),(6158,228,2,13458,'4.99','2005-08-20 00:35:30','2006-02-15 22:14:28'),(6159,228,2,12672,'3.98','2006-02-14 15:16:03','2006-02-15 22:14:28'),(6160,228,1,15234,'0.00','2006-02-14 15:16:03','2006-02-15 22:14:28'),(6161,229,1,2200,'4.99','2005-06-18 01:59:16','2006-02-15 22:14:28'),(6162,229,1,3208,'0.99','2005-06-21 00:50:03','2006-02-15 22:14:28'),(6163,229,1,3277,'7.99','2005-06-21 05:36:37','2006-02-15 22:14:28'),(6164,229,2,3280,'0.99','2005-06-21 06:08:12','2006-02-15 22:14:28'),(6165,229,2,3933,'4.99','2005-07-06 21:06:37','2006-02-15 22:14:28'),(6166,229,2,4458,'2.99','2005-07-07 23:47:47','2006-02-15 22:14:28'),(6167,229,1,4515,'4.99','2005-07-08 02:42:03','2006-02-15 22:14:28'),(6168,229,2,4694,'0.99','2005-07-08 11:07:37','2006-02-15 22:14:28'),(6169,229,1,5623,'2.99','2005-07-10 05:41:38','2006-02-15 22:14:29'),(6170,229,2,6155,'4.99','2005-07-11 09:45:31','2006-02-15 22:14:29'),(6171,229,2,6578,'4.99','2005-07-12 06:15:41','2006-02-15 22:14:29'),(6172,229,1,6880,'2.99','2005-07-12 20:41:35','2006-02-15 22:14:29'),(6173,229,2,7305,'0.99','2005-07-27 12:57:06','2006-02-15 22:14:29'),(6174,229,2,7308,'5.99','2005-07-27 13:00:25','2006-02-15 22:14:29'),(6175,229,2,7629,'0.99','2005-07-28 01:00:09','2006-02-15 22:14:29'),(6176,229,2,7640,'7.99','2005-07-28 01:14:49','2006-02-15 22:14:29'),(6177,229,2,9913,'3.99','2005-07-31 14:51:04','2006-02-15 22:14:29'),(6178,229,1,11521,'4.99','2005-08-17 00:04:54','2006-02-15 22:14:29'),(6179,229,1,12866,'2.99','2005-08-19 02:39:47','2006-02-15 22:14:29'),(6180,229,2,13306,'0.99','2005-08-19 18:57:29','2006-02-15 22:14:29'),(6181,229,2,13431,'4.99','2005-08-19 23:28:15','2006-02-15 22:14:29'),(6182,229,1,13679,'5.99','2005-08-20 08:39:34','2006-02-15 22:14:29'),(6183,229,1,15740,'4.99','2005-08-23 12:07:51','2006-02-15 22:14:29'),(6184,229,2,15912,'2.99','2005-08-23 17:47:40','2006-02-15 22:14:29'),(6185,229,2,13295,'0.99','2006-02-14 15:16:03','2006-02-15 22:14:29'),(6186,230,1,32,'0.99','2005-05-25 04:06:21','2006-02-15 22:14:29'),(6187,230,1,1078,'4.99','2005-05-31 10:28:33','2006-02-15 22:14:29'),(6188,230,2,1468,'3.99','2005-06-15 20:48:22','2006-02-15 22:14:30'),(6189,230,1,1744,'4.99','2005-06-16 16:39:58','2006-02-15 22:14:30'),(6190,230,2,1793,'0.99','2005-06-16 20:07:27','2006-02-15 22:14:30'),(6191,230,2,2450,'8.99','2005-06-18 19:25:47','2006-02-15 22:14:30'),(6192,230,2,2675,'0.99','2005-06-19 11:52:15','2006-02-15 22:14:30'),(6193,230,1,2777,'0.99','2005-06-19 18:16:26','2006-02-15 22:14:30'),(6194,230,1,4509,'3.99','2005-07-08 02:32:38','2006-02-15 22:14:30'),(6195,230,1,4935,'0.99','2005-07-08 22:20:56','2006-02-15 22:14:30'),(6196,230,1,5045,'4.99','2005-07-09 03:33:32','2006-02-15 22:14:30'),(6197,230,1,5061,'0.99','2005-07-09 04:30:50','2006-02-15 22:14:30'),(6198,230,2,5269,'2.99','2005-07-09 14:23:05','2006-02-15 22:14:30'),(6199,230,2,6126,'4.99','2005-07-11 08:06:56','2006-02-15 22:14:30'),(6200,230,1,6251,'2.99','2005-07-11 15:06:20','2006-02-15 22:14:30'),(6201,230,2,7333,'4.99','2005-07-27 13:59:11','2006-02-15 22:14:30'),(6202,230,2,7390,'4.99','2005-07-27 15:59:19','2006-02-15 22:14:30'),(6203,230,2,8032,'4.99','2005-07-28 16:17:00','2006-02-15 22:14:30'),(6204,230,2,8653,'0.99','2005-07-29 15:04:23','2006-02-15 22:14:30'),(6205,230,1,8815,'2.99','2005-07-29 21:51:26','2006-02-15 22:14:30'),(6206,230,2,9778,'3.99','2005-07-31 10:02:04','2006-02-15 22:14:30'),(6207,230,2,10050,'3.99','2005-07-31 19:13:29','2006-02-15 22:14:30'),(6208,230,1,10057,'9.99','2005-07-31 19:20:18','2006-02-15 22:14:30'),(6209,230,2,10874,'2.99','2005-08-02 00:31:00','2006-02-15 22:14:30'),(6210,230,2,11148,'5.99','2005-08-02 09:47:08','2006-02-15 22:14:30'),(6211,230,1,11552,'5.99','2005-08-17 01:04:29','2006-02-15 22:14:30'),(6212,230,2,11914,'2.99','2005-08-17 16:04:42','2006-02-15 22:14:30'),(6213,230,1,12079,'1.99','2005-08-17 22:04:17','2006-02-15 22:14:30'),(6214,230,2,12523,'7.99','2005-08-18 13:45:41','2006-02-15 22:14:30'),(6215,230,2,12542,'0.99','2005-08-18 14:21:11','2006-02-15 22:14:31'),(6216,230,2,14017,'0.99','2005-08-20 20:55:32','2006-02-15 22:14:31'),(6217,230,1,14073,'5.99','2005-08-20 23:12:57','2006-02-15 22:14:31'),(6218,230,1,14340,'2.99','2005-08-21 08:38:21','2006-02-15 22:14:31'),(6219,231,1,329,'5.99','2005-05-27 01:57:14','2006-02-15 22:14:31'),(6220,231,1,479,'6.99','2005-05-27 22:39:10','2006-02-15 22:14:31'),(6221,231,1,512,'8.99','2005-05-28 03:07:50','2006-02-15 22:14:31'),(6222,231,2,2423,'0.99','2005-06-18 17:32:08','2006-02-15 22:14:31'),(6223,231,2,3561,'9.99','2005-07-06 02:54:33','2006-02-15 22:14:31'),(6224,231,1,3839,'2.99','2005-07-06 16:30:30','2006-02-15 22:14:31'),(6225,231,2,4289,'0.99','2005-07-07 15:45:58','2006-02-15 22:14:31'),(6226,231,2,4969,'0.99','2005-07-08 23:51:26','2006-02-15 22:14:31'),(6227,231,1,5096,'2.99','2005-07-09 06:08:23','2006-02-15 22:14:31'),(6228,231,1,5560,'5.99','2005-07-10 03:13:24','2006-02-15 22:14:31'),(6229,231,1,6862,'0.99','2005-07-12 19:58:09','2006-02-15 22:14:31'),(6230,231,1,6877,'1.99','2005-07-12 20:32:58','2006-02-15 22:14:31'),(6231,231,1,8556,'0.99','2005-07-29 11:18:27','2006-02-15 22:14:31'),(6232,231,2,8949,'5.99','2005-07-30 03:17:02','2006-02-15 22:14:31'),(6233,231,2,9711,'2.99','2005-07-31 08:06:41','2006-02-15 22:14:31'),(6234,231,2,11113,'2.99','2005-08-02 08:26:24','2006-02-15 22:14:31'),(6235,231,1,11202,'7.99','2005-08-02 11:51:57','2006-02-15 22:14:31'),(6236,231,1,11581,'5.99','2005-08-17 02:03:02','2006-02-15 22:14:32'),(6237,231,1,12214,'0.99','2005-08-18 02:34:22','2006-02-15 22:14:32'),(6238,231,2,12230,'8.99','2005-08-18 03:11:04','2006-02-15 22:14:32'),(6239,231,1,12231,'3.99','2005-08-18 03:11:44','2006-02-15 22:14:32'),(6240,231,2,13983,'6.99','2005-08-20 19:08:32','2006-02-15 22:14:32'),(6241,231,1,14026,'0.99','2005-08-20 21:21:08','2006-02-15 22:14:32'),(6242,231,1,14478,'4.99','2005-08-21 13:33:28','2006-02-15 22:14:32'),(6243,231,2,14806,'2.99','2005-08-22 00:53:08','2006-02-15 22:14:32'),(6244,231,1,15389,'3.99','2005-08-22 22:51:13','2006-02-15 22:14:33'),(6245,232,1,28,'4.99','2005-05-25 03:42:37','2006-02-15 22:14:33'),(6246,232,1,805,'3.99','2005-05-29 18:18:18','2006-02-15 22:14:33'),(6247,232,2,1619,'0.99','2005-06-16 07:14:13','2006-02-15 22:14:33'),(6248,232,1,2833,'8.99','2005-06-19 21:34:54','2006-02-15 22:14:33'),(6249,232,2,6234,'5.99','2005-07-11 14:16:10','2006-02-15 22:14:33'),(6250,232,1,6309,'2.99','2005-07-11 18:13:24','2006-02-15 22:14:33'),(6251,232,1,7123,'5.99','2005-07-27 06:08:48','2006-02-15 22:14:33'),(6252,232,2,7653,'4.99','2005-07-28 01:58:30','2006-02-15 22:14:33'),(6253,232,2,7707,'0.99','2005-07-28 04:07:47','2006-02-15 22:14:33'),(6254,232,1,7749,'2.99','2005-07-28 05:53:36','2006-02-15 22:14:33'),(6255,232,1,7990,'2.99','2005-07-28 14:43:08','2006-02-15 22:14:33'),(6256,232,1,8306,'2.99','2005-07-29 03:12:26','2006-02-15 22:14:33'),(6257,232,2,8401,'4.99','2005-07-29 06:25:08','2006-02-15 22:14:33'),(6258,232,2,8655,'4.99','2005-07-29 15:04:42','2006-02-15 22:14:33'),(6259,232,2,9270,'0.99','2005-07-30 15:03:16','2006-02-15 22:14:33'),(6260,232,2,9330,'10.99','2005-07-30 17:44:24','2006-02-15 22:14:33'),(6261,232,2,9365,'2.99','2005-07-30 18:46:02','2006-02-15 22:14:33'),(6262,232,2,10157,'2.99','2005-07-31 22:38:48','2006-02-15 22:14:33'),(6263,232,1,10539,'6.99','2005-08-01 12:23:00','2006-02-15 22:14:33'),(6264,232,2,11861,'0.99','2005-08-17 13:53:47','2006-02-15 22:14:33'),(6265,232,2,12853,'2.99','2005-08-19 02:15:32','2006-02-15 22:14:33'),(6266,232,2,13707,'2.99','2005-08-20 09:33:58','2006-02-15 22:14:33'),(6267,232,2,14527,'0.99','2005-08-21 15:07:42','2006-02-15 22:14:33'),(6268,232,2,14857,'0.99','2005-08-22 02:42:39','2006-02-15 22:14:33'),(6269,232,2,15553,'2.99','2005-08-23 04:33:39','2006-02-15 22:14:33'),(6270,233,2,1992,'2.99','2005-06-17 10:58:53','2006-02-15 22:14:33'),(6271,233,2,2244,'2.99','2005-06-18 04:46:33','2006-02-15 22:14:33'),(6272,233,1,2424,'2.99','2005-06-18 17:35:08','2006-02-15 22:14:33'),(6273,233,2,2443,'4.99','2005-06-18 18:52:30','2006-02-15 22:14:33'),(6274,233,1,3832,'2.99','2005-07-06 16:12:23','2006-02-15 22:14:34'),(6275,233,1,4015,'5.99','2005-07-07 00:59:46','2006-02-15 22:14:34'),(6276,233,1,4885,'4.99','2005-07-08 19:51:17','2006-02-15 22:14:34'),(6277,233,2,5267,'5.99','2005-07-09 14:21:10','2006-02-15 22:14:34'),(6278,233,1,5846,'2.99','2005-07-10 17:25:24','2006-02-15 22:14:34'),(6279,233,1,6319,'4.99','2005-07-11 18:50:45','2006-02-15 22:14:34'),(6280,233,1,6794,'2.99','2005-07-12 16:38:23','2006-02-15 22:14:34'),(6281,233,1,7056,'8.99','2005-07-27 03:46:27','2006-02-15 22:14:34'),(6282,233,2,7387,'4.99','2005-07-27 15:54:19','2006-02-15 22:14:34'),(6283,233,2,8385,'5.99','2005-07-29 05:39:16','2006-02-15 22:14:34'),(6284,233,2,8530,'2.99','2005-07-29 10:26:14','2006-02-15 22:14:34'),(6285,233,2,8596,'0.99','2005-07-29 12:48:54','2006-02-15 22:14:34'),(6286,233,1,9574,'0.99','2005-07-31 02:49:20','2006-02-15 22:14:34'),(6287,233,1,10582,'4.99','2005-08-01 13:54:22','2006-02-15 22:14:34'),(6288,233,1,12443,'5.99','2005-08-18 10:50:59','2006-02-15 22:14:34'),(6289,233,2,14357,'2.99','2005-08-21 09:13:09','2006-02-15 22:14:34'),(6290,233,2,15285,'2.99','2005-08-22 19:17:24','2006-02-15 22:14:34'),(6291,233,1,15790,'1.99','2005-08-23 14:01:07','2006-02-15 22:14:34'),(6292,233,2,15821,'0.99','2005-08-23 15:03:58','2006-02-15 22:14:34'),(6293,234,2,1125,'4.99','2005-05-31 17:23:44','2006-02-15 22:14:34'),(6294,234,2,1245,'3.99','2005-06-15 05:09:01','2006-02-15 22:14:34'),(6295,234,2,1645,'0.99','2005-06-16 09:10:06','2006-02-15 22:14:34'),(6296,234,1,1674,'2.99','2005-06-16 10:57:00','2006-02-15 22:14:34'),(6297,234,2,1993,'5.99','2005-06-17 10:59:24','2006-02-15 22:14:34'),(6298,234,1,2005,'4.99','2005-06-17 11:44:54','2006-02-15 22:14:34'),(6299,234,2,2511,'5.99','2005-06-18 23:45:30','2006-02-15 22:14:34'),(6300,234,2,3185,'6.99','2005-06-20 22:58:01','2006-02-15 22:14:34'),(6301,234,2,3199,'4.99','2005-06-21 00:12:40','2006-02-15 22:14:34'),(6302,234,2,4686,'0.99','2005-07-08 10:53:39','2006-02-15 22:14:34'),(6303,234,1,4721,'7.99','2005-07-08 12:39:31','2006-02-15 22:14:34'),(6304,234,2,10133,'5.99','2005-07-31 21:55:07','2006-02-15 22:14:34'),(6305,234,2,10541,'0.99','2005-08-01 12:24:54','2006-02-15 22:14:35'),(6306,234,2,10580,'6.99','2005-08-01 13:51:14','2006-02-15 22:14:35'),(6307,234,2,10968,'7.99','2005-08-02 04:03:13','2006-02-15 22:14:35'),(6308,234,1,11050,'4.99','2005-08-02 06:17:16','2006-02-15 22:14:35'),(6309,234,1,11073,'0.99','2005-08-02 07:13:03','2006-02-15 22:14:35'),(6310,234,1,11481,'3.99','2005-08-02 22:18:41','2006-02-15 22:14:35'),(6311,234,1,11882,'3.99','2005-08-17 14:33:41','2006-02-15 22:14:35'),(6312,234,1,12226,'0.99','2005-08-18 03:00:48','2006-02-15 22:14:35'),(6313,234,2,12863,'4.99','2005-08-19 02:35:59','2006-02-15 22:14:35'),(6314,234,1,12921,'5.99','2005-08-19 04:47:48','2006-02-15 22:14:35'),(6315,234,2,13349,'2.99','2005-08-19 20:43:16','2006-02-15 22:14:35'),(6316,234,2,15037,'5.99','2005-08-22 09:36:33','2006-02-15 22:14:35'),(6317,234,1,15129,'2.99','2005-08-22 13:03:52','2006-02-15 22:14:35'),(6318,234,1,15778,'0.99','2006-02-14 15:16:03','2006-02-15 22:14:35'),(6319,235,2,807,'2.99','2005-05-29 18:50:50','2006-02-15 22:14:35'),(6320,235,1,1148,'0.99','2005-05-31 20:38:40','2006-02-15 22:14:35'),(6321,235,1,1493,'4.99','2005-06-15 21:50:32','2006-02-15 22:14:35'),(6322,235,2,1811,'0.99','2005-06-16 21:06:20','2006-02-15 22:14:35'),(6323,235,2,3581,'2.99','2005-07-06 03:57:35','2006-02-15 22:14:35'),(6324,235,1,3752,'6.99','2005-07-06 12:30:12','2006-02-15 22:14:35'),(6325,235,1,3968,'4.99','2005-07-06 22:47:09','2006-02-15 22:14:35'),(6326,235,2,4592,'2.99','2005-07-08 06:31:28','2006-02-15 22:14:35'),(6327,235,1,5790,'4.99','2005-07-10 14:15:21','2006-02-15 22:14:35'),(6328,235,1,6047,'2.99','2005-07-11 03:27:01','2006-02-15 22:14:35'),(6329,235,2,6352,'4.99','2005-07-11 20:34:13','2006-02-15 22:14:35'),(6330,235,2,6466,'4.99','2005-07-12 01:21:03','2006-02-15 22:14:35'),(6331,235,1,8120,'0.99','2005-07-28 19:24:24','2006-02-15 22:14:35'),(6332,235,2,8446,'6.99','2005-07-29 07:38:10','2006-02-15 22:14:35'),(6333,235,2,8781,'0.99','2005-07-29 20:20:16','2006-02-15 22:14:35'),(6334,235,1,9019,'5.99','2005-07-30 05:28:53','2006-02-15 22:14:35'),(6335,235,2,9519,'6.99','2005-07-31 00:45:57','2006-02-15 22:14:35'),(6336,235,1,9587,'3.99','2005-07-31 03:10:30','2006-02-15 22:14:36'),(6337,235,2,10155,'0.99','2005-07-31 22:31:43','2006-02-15 22:14:36'),(6338,235,2,12332,'2.99','2005-08-18 06:51:05','2006-02-15 22:14:36'),(6339,235,1,12502,'4.99','2005-08-18 13:16:31','2006-02-15 22:14:36'),(6340,235,2,13070,'0.99','2005-08-19 09:56:23','2006-02-15 22:14:36'),(6341,235,1,13469,'0.99','2005-08-20 00:59:36','2006-02-15 22:14:36'),(6342,235,2,14749,'3.99','2005-08-21 23:08:33','2006-02-15 22:14:36'),(6343,235,1,15034,'6.99','2005-08-22 09:33:08','2006-02-15 22:14:36'),(6344,236,2,262,'2.99','2005-05-26 15:46:56','2006-02-15 22:14:36'),(6345,236,2,344,'2.99','2005-05-27 04:30:22','2006-02-15 22:14:36'),(6346,236,1,1032,'2.99','2005-05-31 04:28:43','2006-02-15 22:14:36'),(6347,236,1,1262,'0.99','2005-06-15 06:54:53','2006-02-15 22:14:36'),(6348,236,2,1308,'5.99','2005-06-15 10:07:48','2006-02-15 22:14:36'),(6349,236,2,2139,'8.99','2005-06-17 21:29:34','2006-02-15 22:14:36'),(6350,236,2,2311,'6.99','2005-06-18 08:51:29','2006-02-15 22:14:36'),(6351,236,1,2630,'2.99','2005-06-19 08:47:21','2006-02-15 22:14:36'),(6352,236,2,2840,'3.99','2005-06-19 22:17:44','2006-02-15 22:14:36'),(6353,236,1,3353,'4.99','2005-06-21 11:29:23','2006-02-15 22:14:36'),(6354,236,2,3460,'2.99','2005-06-21 21:46:56','2006-02-15 22:14:36'),(6355,236,1,3645,'0.99','2005-07-06 07:22:09','2006-02-15 22:14:36'),(6356,236,2,3857,'4.99','2005-07-06 17:07:54','2006-02-15 22:14:36'),(6357,236,2,4749,'4.99','2005-07-08 14:05:58','2006-02-15 22:14:36'),(6358,236,1,4959,'0.99','2005-07-08 23:22:23','2006-02-15 22:14:36'),(6359,236,1,5404,'2.99','2005-07-09 20:10:43','2006-02-15 22:14:36'),(6360,236,1,5545,'3.99','2005-07-10 02:50:29','2006-02-15 22:14:36'),(6361,236,2,5938,'3.99','2005-07-10 22:17:42','2006-02-15 22:14:36'),(6362,236,2,6049,'0.99','2005-07-11 03:32:32','2006-02-15 22:14:36'),(6363,236,2,6281,'4.99','2005-07-11 16:38:16','2006-02-15 22:14:36'),(6364,236,1,6303,'2.99','2005-07-11 17:55:43','2006-02-15 22:14:36'),(6365,236,2,6996,'4.99','2005-07-27 01:13:45','2006-02-15 22:14:36'),(6366,236,2,7047,'4.99','2005-07-27 03:31:11','2006-02-15 22:14:36'),(6367,236,2,7253,'0.99','2005-07-27 10:46:37','2006-02-15 22:14:37'),(6368,236,1,7780,'5.99','2005-07-28 07:11:55','2006-02-15 22:14:37'),(6369,236,1,7792,'4.99','2005-07-28 07:24:02','2006-02-15 22:14:37'),(6370,236,2,7798,'2.99','2005-07-28 07:41:59','2006-02-15 22:14:37'),(6371,236,1,8657,'2.99','2005-07-29 15:09:25','2006-02-15 22:14:37'),(6372,236,1,9011,'5.99','2005-07-30 05:16:29','2006-02-15 22:14:37'),(6373,236,1,9934,'2.99','2005-07-31 15:25:26','2006-02-15 22:14:37'),(6374,236,2,10137,'4.99','2005-07-31 22:01:41','2006-02-15 22:14:37'),(6375,236,2,11139,'6.99','2005-08-02 09:27:36','2006-02-15 22:14:37'),(6376,236,2,11486,'3.99','2005-08-02 22:34:06','2006-02-15 22:14:37'),(6377,236,2,11507,'5.99','2005-08-16 23:26:43','2006-02-15 22:14:37'),(6378,236,1,11895,'4.99','2005-08-17 15:15:07','2006-02-15 22:14:37'),(6379,236,1,12975,'2.99','2005-08-19 06:51:19','2006-02-15 22:14:37'),(6380,236,1,13364,'2.99','2005-08-19 21:09:30','2006-02-15 22:14:37'),(6381,236,1,13443,'7.99','2005-08-19 23:53:42','2006-02-15 22:14:37'),(6382,236,2,14321,'4.99','2005-08-21 08:05:12','2006-02-15 22:14:37'),(6383,236,1,14364,'7.99','2005-08-21 09:25:11','2006-02-15 22:14:37'),(6384,236,2,14722,'4.99','2005-08-21 21:50:53','2006-02-15 22:14:37'),(6385,236,1,12988,'0.99','2006-02-14 15:16:03','2006-02-15 22:14:37'),(6386,237,2,133,'0.99','2005-05-25 21:48:30','2006-02-15 22:14:37'),(6387,237,1,182,'4.99','2005-05-26 04:49:17','2006-02-15 22:14:37'),(6388,237,1,1500,'0.99','2005-06-15 22:00:45','2006-02-15 22:14:37'),(6389,237,2,1518,'0.99','2005-06-15 23:36:37','2006-02-15 22:14:37'),(6390,237,1,2156,'4.99','2005-06-17 23:08:12','2006-02-15 22:14:37'),(6391,237,1,2492,'2.99','2005-06-18 22:04:15','2006-02-15 22:14:37'),(6392,237,2,3069,'2.99','2005-06-20 14:13:00','2006-02-15 22:14:37'),(6393,237,1,4844,'4.99','2005-07-08 18:28:13','2006-02-15 22:14:37'),(6394,237,2,6053,'4.99','2005-07-11 03:51:59','2006-02-15 22:14:37'),(6395,237,1,7193,'2.99','2005-07-27 08:37:00','2006-02-15 22:14:37'),(6396,237,2,7330,'3.99','2005-07-27 13:56:46','2006-02-15 22:14:37'),(6397,237,1,7812,'4.99','2005-07-28 08:06:52','2006-02-15 22:14:37'),(6398,237,2,7951,'8.99','2005-07-28 13:21:16','2006-02-15 22:14:38'),(6399,237,2,8102,'2.99','2005-07-28 18:49:43','2006-02-15 22:14:38'),(6400,237,2,8748,'2.99','2005-07-29 19:08:37','2006-02-15 22:14:38'),(6401,237,2,8799,'6.99','2005-07-29 21:16:47','2006-02-15 22:14:38'),(6402,237,1,8835,'3.99','2005-07-29 22:44:35','2006-02-15 22:14:38'),(6403,237,1,9276,'5.99','2005-07-30 15:09:28','2006-02-15 22:14:38'),(6404,237,1,9661,'4.99','2005-07-31 06:06:37','2006-02-15 22:14:38'),(6405,237,2,9715,'1.99','2005-07-31 08:16:58','2006-02-15 22:14:38'),(6406,237,2,10056,'0.99','2005-07-31 19:19:13','2006-02-15 22:14:38'),(6407,237,2,10058,'2.99','2005-07-31 19:20:21','2006-02-15 22:14:38'),(6408,237,2,11125,'4.99','2005-08-02 08:55:35','2006-02-15 22:14:38'),(6409,237,2,11479,'11.99','2005-08-02 22:18:13','2006-02-15 22:14:38'),(6410,237,2,11772,'5.99','2005-08-17 10:18:57','2006-02-15 22:14:38'),(6411,237,1,12469,'0.99','2005-08-18 11:53:07','2006-02-15 22:14:38'),(6412,237,2,13914,'6.99','2005-08-20 16:38:57','2006-02-15 22:14:38'),(6413,237,2,13922,'6.99','2005-08-20 17:02:37','2006-02-15 22:14:38'),(6414,237,2,13969,'6.99','2005-08-20 18:42:40','2006-02-15 22:14:38'),(6415,237,2,14453,'3.99','2005-08-21 12:33:34','2006-02-15 22:14:38'),(6416,237,2,15139,'8.99','2005-08-22 13:38:11','2006-02-15 22:14:38'),(6417,237,1,15337,'0.99','2005-08-22 20:49:51','2006-02-15 22:14:38'),(6418,237,2,15931,'1.99','2005-08-23 18:28:09','2006-02-15 22:14:38'),(6419,238,2,315,'4.99','2005-05-26 23:12:55','2006-02-15 22:14:38'),(6420,238,1,842,'2.99','2005-05-30 00:32:04','2006-02-15 22:14:38'),(6421,238,1,1199,'2.99','2005-06-15 01:58:50','2006-02-15 22:14:38'),(6422,238,1,1660,'4.99','2005-06-16 10:12:55','2006-02-15 22:14:38'),(6423,238,1,3181,'2.99','2005-06-20 22:51:02','2006-02-15 22:14:38'),(6424,238,1,4143,'0.99','2005-07-07 08:22:07','2006-02-15 22:14:38'),(6425,238,1,5616,'5.99','2005-07-10 05:21:11','2006-02-15 22:14:38'),(6426,238,2,6403,'0.99','2005-07-11 22:46:25','2006-02-15 22:14:38'),(6427,238,2,7243,'4.99','2005-07-27 10:26:11','2006-02-15 22:14:38'),(6428,238,1,8310,'8.99','2005-07-29 03:25:56','2006-02-15 22:14:38'),(6429,238,1,8382,'6.99','2005-07-29 05:33:21','2006-02-15 22:14:39'),(6430,238,1,8465,'0.99','2005-07-29 08:20:49','2006-02-15 22:14:39'),(6431,238,1,9065,'4.99','2005-07-30 07:25:09','2006-02-15 22:14:39'),(6432,238,2,9841,'7.99','2005-07-31 12:24:19','2006-02-15 22:14:39'),(6433,238,1,10659,'5.99','2005-08-01 16:40:34','2006-02-15 22:14:39'),(6434,238,2,11543,'5.99','2005-08-17 00:54:28','2006-02-15 22:14:39'),(6435,238,2,11632,'2.99','2005-08-17 04:29:32','2006-02-15 22:14:39'),(6436,238,1,11897,'2.99','2005-08-17 15:24:06','2006-02-15 22:14:39'),(6437,238,1,14312,'4.99','2005-08-21 07:48:34','2006-02-15 22:14:39'),(6438,238,1,14343,'8.99','2005-08-21 08:40:21','2006-02-15 22:14:39'),(6439,238,1,15455,'0.99','2005-08-23 01:05:00','2006-02-15 22:14:39'),(6440,239,2,8,'4.99','2005-05-24 23:31:46','2006-02-15 22:14:39'),(6441,239,1,444,'2.99','2005-05-27 18:39:15','2006-02-15 22:14:39'),(6442,239,1,621,'4.99','2005-05-28 15:58:12','2006-02-15 22:14:39'),(6443,239,1,636,'6.99','2005-05-28 17:47:58','2006-02-15 22:14:39'),(6444,239,1,1022,'7.99','2005-05-31 03:16:45','2006-02-15 22:14:39'),(6445,239,2,1082,'5.99','2005-05-31 11:02:01','2006-02-15 22:14:39'),(6446,239,1,1160,'4.99','2005-06-14 23:00:34','2006-02-15 22:14:39'),(6447,239,2,1560,'4.99','2005-06-16 02:36:43','2006-02-15 22:14:39'),(6448,239,2,2215,'2.99','2005-06-18 02:48:21','2006-02-15 22:14:39'),(6449,239,1,2390,'4.99','2005-06-18 15:29:26','2006-02-15 22:14:39'),(6450,239,1,3383,'5.99','2005-06-21 14:07:19','2006-02-15 22:14:39'),(6451,239,2,3547,'0.99','2005-07-06 02:18:06','2006-02-15 22:14:39'),(6452,239,1,3552,'5.99','2005-07-06 02:34:09','2006-02-15 22:14:39'),(6453,239,2,4920,'7.99','2005-07-08 21:42:10','2006-02-15 22:14:39'),(6454,239,2,5651,'4.99','2005-07-10 07:17:13','2006-02-15 22:14:39'),(6455,239,1,5960,'0.99','2005-07-10 23:38:34','2006-02-15 22:14:39'),(6456,239,1,6573,'0.99','2005-07-12 06:03:40','2006-02-15 22:14:39'),(6457,239,2,7012,'8.99','2005-07-27 02:01:03','2006-02-15 22:14:39'),(6458,239,1,7426,'0.99','2005-07-27 17:19:46','2006-02-15 22:14:39'),(6459,239,2,7491,'2.99','2005-07-27 19:53:23','2006-02-15 22:14:39'),(6460,239,1,8457,'6.99','2005-07-29 07:59:03','2006-02-15 22:14:40'),(6461,239,2,9676,'0.99','2005-07-31 06:39:13','2006-02-15 22:14:40'),(6462,239,1,9863,'5.99','2005-07-31 13:05:29','2006-02-15 22:14:40'),(6463,239,1,10755,'0.99','2005-08-01 20:14:14','2006-02-15 22:14:40'),(6464,239,2,10923,'2.99','2005-08-02 02:15:01','2006-02-15 22:14:40'),(6465,239,1,11487,'2.99','2005-08-02 22:35:05','2006-02-15 22:14:40'),(6466,239,2,11900,'4.99','2005-08-17 15:30:44','2006-02-15 22:14:40'),(6467,239,1,11968,'0.99','2005-08-17 17:47:34','2006-02-15 22:14:40'),(6468,239,1,12340,'4.99','2005-08-18 07:07:01','2006-02-15 22:14:40'),(6469,239,1,12721,'1.99','2005-08-18 21:30:12','2006-02-15 22:14:40'),(6470,239,1,13175,'4.99','2005-08-19 13:54:53','2006-02-15 22:14:40'),(6471,239,2,13427,'4.99','2005-08-19 23:19:02','2006-02-15 22:14:40'),(6472,239,2,13999,'3.99','2005-08-20 19:53:32','2006-02-15 22:14:40'),(6473,239,2,14062,'1.99','2005-08-20 22:34:34','2006-02-15 22:14:40'),(6474,240,1,246,'2.99','2005-05-26 13:57:07','2006-02-15 22:14:40'),(6475,240,1,460,'2.99','2005-05-27 20:02:03','2006-02-15 22:14:40'),(6476,240,1,643,'4.99','2005-05-28 18:52:11','2006-02-15 22:14:40'),(6477,240,2,2196,'3.99','2005-06-18 01:47:07','2006-02-15 22:14:40'),(6478,240,1,2264,'4.99','2005-06-18 05:58:45','2006-02-15 22:14:40'),(6479,240,2,2872,'5.99','2005-06-20 00:38:21','2006-02-15 22:14:40'),(6480,240,2,4305,'4.99','2005-07-07 17:07:11','2006-02-15 22:14:40'),(6481,240,2,5262,'4.99','2005-07-09 14:08:01','2006-02-15 22:14:40'),(6482,240,1,5596,'0.99','2005-07-10 04:43:14','2006-02-15 22:14:40'),(6483,240,1,6272,'0.99','2005-07-11 16:03:49','2006-02-15 22:14:40'),(6484,240,2,6470,'0.99','2005-07-12 01:29:41','2006-02-15 22:14:40'),(6485,240,1,6956,'4.99','2005-07-26 23:55:57','2006-02-15 22:14:40'),(6486,240,1,7001,'4.99','2005-07-27 01:25:34','2006-02-15 22:14:40'),(6487,240,1,7467,'8.99','2005-07-27 18:51:54','2006-02-15 22:14:40'),(6488,240,2,7481,'4.99','2005-07-27 19:20:25','2006-02-15 22:14:40'),(6489,240,1,7870,'4.99','2005-07-28 10:16:03','2006-02-15 22:14:40'),(6490,240,2,8503,'3.99','2005-07-29 09:16:50','2006-02-15 22:14:41'),(6491,240,2,8905,'5.99','2005-07-30 01:11:11','2006-02-15 22:14:41'),(6492,240,1,10308,'7.99','2005-08-01 04:22:49','2006-02-15 22:14:41'),(6493,240,1,11745,'3.99','2005-08-17 09:00:01','2006-02-15 22:14:41'),(6494,240,2,12283,'6.99','2005-08-18 04:54:25','2006-02-15 22:14:41'),(6495,240,2,13030,'2.99','2005-08-19 08:28:11','2006-02-15 22:14:41'),(6496,240,2,13119,'4.99','2005-08-19 11:44:59','2006-02-15 22:14:41'),(6497,240,1,13663,'8.99','2005-08-20 08:12:33','2006-02-15 22:14:41'),(6498,240,2,14573,'2.99','2005-08-21 16:44:32','2006-02-15 22:14:41'),(6499,240,2,15641,'0.99','2005-08-23 08:06:49','2006-02-15 22:14:41'),(6500,241,1,627,'7.99','2005-05-28 17:04:43','2006-02-15 22:14:41'),(6501,241,1,1059,'3.99','2005-05-31 08:20:43','2006-02-15 22:14:41'),(6502,241,2,2428,'0.99','2005-06-18 17:47:34','2006-02-15 22:14:41'),(6503,241,1,2455,'0.99','2005-06-18 19:33:06','2006-02-15 22:14:41'),(6504,241,2,2478,'5.99','2005-06-18 21:01:21','2006-02-15 22:14:41'),(6505,241,2,2683,'2.99','2005-06-19 12:27:19','2006-02-15 22:14:41'),(6506,241,2,3258,'0.99','2005-06-21 03:53:58','2006-02-15 22:14:41'),(6507,241,2,3822,'0.99','2005-07-06 15:41:15','2006-02-15 22:14:41'),(6508,241,1,4731,'0.99','2005-07-08 13:08:18','2006-02-15 22:14:41'),(6509,241,2,5017,'2.99','2005-07-09 02:00:16','2006-02-15 22:14:41'),(6510,241,1,5211,'0.99','2005-07-09 11:26:50','2006-02-15 22:14:41'),(6511,241,1,5438,'4.99','2005-07-09 21:34:32','2006-02-15 22:14:41'),(6512,241,2,5525,'3.99','2005-07-10 02:03:08','2006-02-15 22:14:41'),(6513,241,1,5981,'4.99','2005-07-11 00:19:04','2006-02-15 22:14:41'),(6514,241,2,6090,'6.99','2005-07-11 05:47:08','2006-02-15 22:14:41'),(6515,241,2,6245,'2.99','2005-07-11 14:56:57','2006-02-15 22:14:41'),(6516,241,1,7320,'0.99','2005-07-27 13:33:35','2006-02-15 22:14:41'),(6517,241,1,7434,'2.99','2005-07-27 17:34:40','2006-02-15 22:14:41'),(6518,241,1,7860,'2.99','2005-07-28 09:58:02','2006-02-15 22:14:41'),(6519,241,1,9500,'6.99','2005-07-30 23:58:36','2006-02-15 22:14:41'),(6520,241,1,9528,'3.99','2005-07-31 01:05:04','2006-02-15 22:14:42'),(6521,241,1,9944,'5.99','2005-07-31 15:44:43','2006-02-15 22:14:42'),(6522,241,2,10447,'3.99','2005-08-01 09:04:58','2006-02-15 22:14:42'),(6523,241,1,10652,'2.99','2005-08-01 16:24:08','2006-02-15 22:14:42'),(6524,241,1,11423,'1.99','2005-08-02 19:57:13','2006-02-15 22:14:42'),(6525,241,2,12418,'4.99','2005-08-18 09:59:36','2006-02-15 22:14:42'),(6526,241,1,12956,'4.99','2005-08-19 06:06:26','2006-02-15 22:14:42'),(6527,241,2,13077,'2.99','2005-08-19 10:15:19','2006-02-15 22:14:42'),(6528,241,2,14269,'7.99','2005-08-21 06:22:07','2006-02-15 22:14:42'),(6529,241,2,14485,'2.99','2005-08-21 13:52:07','2006-02-15 22:14:42'),(6530,241,1,14936,'0.99','2005-08-22 05:51:26','2006-02-15 22:14:42'),(6531,241,2,15137,'2.99','2005-08-22 13:20:28','2006-02-15 22:14:42'),(6532,241,1,15429,'2.99','2005-08-23 00:20:31','2006-02-15 22:14:42'),(6533,241,1,15767,'4.99','2005-08-23 13:14:15','2006-02-15 22:14:42'),(6534,242,1,108,'2.99','2005-05-25 18:30:05','2006-02-15 22:14:42'),(6535,242,2,283,'3.99','2005-05-26 19:05:05','2006-02-15 22:14:42'),(6536,242,2,881,'4.99','2005-05-30 06:15:36','2006-02-15 22:14:42'),(6537,242,2,1304,'4.99','2005-06-15 09:56:02','2006-02-15 22:14:42'),(6538,242,1,1384,'4.99','2005-06-15 15:22:03','2006-02-15 22:14:42'),(6539,242,1,1483,'4.99','2005-06-15 21:21:58','2006-02-15 22:14:42'),(6540,242,2,1702,'4.99','2005-06-16 13:21:05','2006-02-15 22:14:42'),(6541,242,1,2691,'4.99','2005-06-19 13:06:50','2006-02-15 22:14:42'),(6542,242,2,2942,'4.99','2005-06-20 05:27:31','2006-02-15 22:14:42'),(6543,242,1,3471,'4.99','2005-07-05 22:51:44','2006-02-15 22:14:42'),(6544,242,2,3604,'0.99','2005-07-06 05:25:22','2006-02-15 22:14:42'),(6545,242,1,4426,'4.99','2005-07-07 22:28:32','2006-02-15 22:14:42'),(6546,242,2,4895,'1.99','2005-07-08 20:22:05','2006-02-15 22:14:42'),(6547,242,2,5666,'5.99','2005-07-10 08:10:29','2006-02-15 22:14:42'),(6548,242,2,7149,'3.99','2005-07-27 07:10:40','2006-02-15 22:14:42'),(6549,242,1,8491,'4.99','2005-07-29 09:02:13','2006-02-15 22:14:42'),(6550,242,1,9423,'3.99','2005-07-30 21:10:14','2006-02-15 22:14:42'),(6551,242,1,9730,'6.99','2005-07-31 08:50:08','2006-02-15 22:14:43'),(6552,242,2,10367,'0.99','2005-08-01 06:12:19','2006-02-15 22:14:43'),(6553,242,2,10382,'4.99','2005-08-01 06:36:45','2006-02-15 22:14:43'),(6554,242,2,10650,'9.99','2005-08-01 16:18:45','2006-02-15 22:14:43'),(6555,242,2,11020,'0.99','2005-08-02 05:29:48','2006-02-15 22:14:43'),(6556,242,1,11258,'4.99','2005-08-02 13:45:39','2006-02-15 22:14:43'),(6557,242,2,11607,'0.99','2005-08-17 03:36:06','2006-02-15 22:14:43'),(6558,242,1,11931,'4.99','2005-08-17 16:35:14','2006-02-15 22:14:43'),(6559,242,2,12724,'7.99','2005-08-18 21:37:20','2006-02-15 22:14:43'),(6560,242,1,12855,'4.99','2005-08-19 02:18:58','2006-02-15 22:14:43'),(6561,242,1,13271,'9.99','2005-08-19 17:42:06','2006-02-15 22:14:43'),(6562,242,2,13567,'0.99','2005-08-20 04:49:21','2006-02-15 22:14:43'),(6563,242,2,13646,'5.99','2005-08-20 07:47:08','2006-02-15 22:14:43'),(6564,242,1,14515,'0.99','2005-08-21 14:52:14','2006-02-15 22:14:43'),(6565,242,1,15002,'0.99','2005-08-22 08:06:00','2006-02-15 22:14:43'),(6566,243,1,188,'4.99','2005-05-26 05:47:12','2006-02-15 22:14:43'),(6567,243,1,1405,'5.99','2005-06-15 16:41:26','2006-02-15 22:14:43'),(6568,243,1,1452,'0.99','2005-06-15 19:32:52','2006-02-15 22:14:43'),(6569,243,2,2757,'5.99','2005-06-19 17:01:14','2006-02-15 22:14:43'),(6570,243,2,3854,'5.99','2005-07-06 17:02:33','2006-02-15 22:14:43'),(6571,243,1,3965,'4.99','2005-07-06 22:36:20','2006-02-15 22:14:43'),(6572,243,1,4831,'0.99','2005-07-08 18:00:14','2006-02-15 22:14:43'),(6573,243,1,5502,'0.99','2005-07-10 00:34:15','2006-02-15 22:14:43'),(6574,243,2,6038,'3.99','2005-07-11 03:10:37','2006-02-15 22:14:43'),(6575,243,2,6820,'2.99','2005-07-12 18:21:30','2006-02-15 22:14:43'),(6576,243,2,7022,'2.99','2005-07-27 02:31:15','2006-02-15 22:14:43'),(6577,243,2,7165,'0.99','2005-07-27 07:36:46','2006-02-15 22:14:43'),(6578,243,1,8834,'4.99','2005-07-29 22:41:48','2006-02-15 22:14:43'),(6579,243,2,9035,'2.99','2005-07-30 06:16:07','2006-02-15 22:14:43'),(6580,243,2,9514,'4.99','2005-07-31 00:29:44','2006-02-15 22:14:43'),(6581,243,2,9675,'2.99','2005-07-31 06:37:07','2006-02-15 22:14:44'),(6582,243,2,9988,'5.99','2005-07-31 17:22:36','2006-02-15 22:14:44'),(6583,243,1,12209,'2.99','2005-08-18 02:27:20','2006-02-15 22:14:44'),(6584,243,1,13291,'2.99','2005-08-19 18:32:11','2006-02-15 22:14:44'),(6585,243,1,14033,'2.99','2005-08-20 21:30:53','2006-02-15 22:14:44'),(6586,243,1,14108,'0.99','2005-08-21 00:52:45','2006-02-15 22:14:44'),(6587,243,1,14272,'3.99','2005-08-21 06:24:55','2006-02-15 22:14:44'),(6588,243,2,14581,'1.99','2005-08-21 17:07:08','2006-02-15 22:14:44'),(6589,243,2,14705,'2.99','2005-08-21 21:02:55','2006-02-15 22:14:44'),(6590,244,2,592,'4.99','2005-05-28 13:21:08','2006-02-15 22:14:44'),(6591,244,1,797,'1.99','2005-05-29 17:12:17','2006-02-15 22:14:44'),(6592,244,2,1189,'6.99','2005-06-15 01:04:22','2006-02-15 22:14:44'),(6593,244,1,1595,'5.99','2005-06-16 05:23:46','2006-02-15 22:14:44'),(6594,244,2,2955,'3.99','2005-06-20 06:46:35','2006-02-15 22:14:44'),(6595,244,1,4814,'4.99','2005-07-08 17:11:09','2006-02-15 22:14:44'),(6596,244,2,5387,'4.99','2005-07-09 19:25:14','2006-02-15 22:14:44'),(6597,244,2,5461,'0.99','2005-07-09 22:48:04','2006-02-15 22:14:44'),(6598,244,2,5692,'0.99','2005-07-10 09:32:22','2006-02-15 22:14:44'),(6599,244,1,5779,'4.99','2005-07-10 13:45:54','2006-02-15 22:14:44'),(6600,244,1,5803,'3.99','2005-07-10 15:05:42','2006-02-15 22:14:44'),(6601,244,2,6374,'4.99','2005-07-11 21:36:10','2006-02-15 22:14:44'),(6602,244,2,6608,'2.99','2005-07-12 08:16:50','2006-02-15 22:14:44'),(6603,244,2,6683,'2.99','2005-07-12 12:14:05','2006-02-15 22:14:44'),(6604,244,2,8454,'0.99','2005-07-29 07:49:04','2006-02-15 22:14:44'),(6605,244,2,8844,'5.99','2005-07-29 23:05:08','2006-02-15 22:14:44'),(6606,244,1,10001,'4.99','2005-07-31 17:46:18','2006-02-15 22:14:44'),(6607,244,2,10047,'4.99','2005-07-31 19:07:43','2006-02-15 22:14:44'),(6608,244,1,10152,'5.99','2005-07-31 22:28:05','2006-02-15 22:14:44'),(6609,244,2,10684,'6.99','2005-08-01 17:47:00','2006-02-15 22:14:44'),(6610,244,2,10969,'2.99','2005-08-02 04:04:32','2006-02-15 22:14:44'),(6611,244,2,11157,'0.99','2005-08-02 09:58:15','2006-02-15 22:14:45'),(6612,244,1,11267,'9.99','2005-08-02 14:09:08','2006-02-15 22:14:45'),(6613,244,1,11762,'9.99','2005-08-17 09:48:06','2006-02-15 22:14:45'),(6614,244,1,13630,'4.99','2005-08-20 07:05:56','2006-02-15 22:14:45'),(6615,244,2,13774,'0.99','2005-08-20 11:54:01','2006-02-15 22:14:45'),(6616,244,1,13928,'0.99','2005-08-20 17:12:28','2006-02-15 22:14:45'),(6617,244,1,14367,'0.99','2005-08-21 09:31:44','2006-02-15 22:14:45'),(6618,244,2,14657,'0.99','2005-08-21 19:39:43','2006-02-15 22:14:45'),(6619,244,1,14919,'1.99','2005-08-22 05:07:17','2006-02-15 22:14:45'),(6620,244,1,14975,'3.99','2005-08-22 07:07:50','2006-02-15 22:14:45'),(6621,244,2,12736,'4.99','2006-02-14 15:16:03','2006-02-15 22:14:45'),(6622,245,2,79,'4.99','2005-05-25 12:11:07','2006-02-15 22:14:45'),(6623,245,1,241,'0.99','2005-05-26 12:49:01','2006-02-15 22:14:45'),(6624,245,1,519,'7.99','2005-05-28 03:22:33','2006-02-15 22:14:45'),(6625,245,1,719,'2.99','2005-05-29 05:16:05','2006-02-15 22:14:45'),(6626,245,2,725,'2.99','2005-05-29 06:03:41','2006-02-15 22:14:45'),(6627,245,2,948,'8.99','2005-05-30 15:44:27','2006-02-15 22:14:45'),(6628,245,1,1377,'2.99','2005-06-15 15:02:03','2006-02-15 22:14:45'),(6629,245,1,2122,'2.99','2005-06-17 20:48:27','2006-02-15 22:14:45'),(6630,245,1,3157,'2.99','2005-06-20 21:07:54','2006-02-15 22:14:45'),(6631,245,1,3634,'2.99','2005-07-06 06:51:14','2006-02-15 22:14:45'),(6632,245,2,5321,'2.99','2005-07-09 16:26:33','2006-02-15 22:14:45'),(6633,245,1,5764,'4.99','2005-07-10 12:58:16','2006-02-15 22:14:45'),(6634,245,2,6242,'2.99','2005-07-11 14:45:04','2006-02-15 22:14:45'),(6635,245,1,6795,'5.99','2005-07-12 16:41:00','2006-02-15 22:14:45'),(6636,245,2,6962,'0.99','2005-07-27 00:10:58','2006-02-15 22:14:45'),(6637,245,1,7230,'4.99','2005-07-27 10:01:41','2006-02-15 22:14:45'),(6638,245,2,7233,'5.99','2005-07-27 10:08:36','2006-02-15 22:14:45'),(6639,245,1,7358,'0.99','2005-07-27 14:49:44','2006-02-15 22:14:45'),(6640,245,2,7397,'4.99','2005-07-27 16:05:00','2006-02-15 22:14:45'),(6641,245,2,8701,'6.99','2005-07-29 17:02:35','2006-02-15 22:14:46'),(6642,245,1,8811,'10.99','2005-07-29 21:46:21','2006-02-15 22:14:46'),(6643,245,2,9088,'0.99','2005-07-30 08:21:02','2006-02-15 22:14:46'),(6644,245,2,9169,'4.99','2005-07-30 11:35:00','2006-02-15 22:14:46'),(6645,245,1,9813,'6.99','2005-07-31 11:29:23','2006-02-15 22:14:46'),(6646,245,1,10087,'3.99','2005-07-31 20:15:22','2006-02-15 22:14:46'),(6647,245,2,11061,'0.99','2005-08-02 06:50:18','2006-02-15 22:14:46'),(6648,245,1,11105,'0.99','2005-08-02 08:13:31','2006-02-15 22:14:46'),(6649,245,1,11211,'0.99','2005-08-02 12:16:48','2006-02-15 22:14:46'),(6650,245,1,12303,'7.99','2005-08-18 05:43:22','2006-02-15 22:14:46'),(6651,245,1,13286,'0.99','2005-08-19 18:28:07','2006-02-15 22:14:46'),(6652,245,1,15782,'6.99','2005-08-23 13:43:26','2006-02-15 22:14:46'),(6653,245,2,12682,'2.99','2006-02-14 15:16:03','2006-02-15 22:14:46'),(6654,246,1,124,'6.99','2005-05-25 20:46:11','2006-02-15 22:14:46'),(6655,246,2,421,'8.99','2005-05-27 15:30:13','2006-02-15 22:14:46'),(6656,246,2,434,'5.99','2005-05-27 16:54:27','2006-02-15 22:14:46'),(6657,246,1,699,'3.99','2005-05-29 02:11:44','2006-02-15 22:14:46'),(6658,246,1,1051,'4.99','2005-05-31 07:02:09','2006-02-15 22:14:46'),(6659,246,2,1448,'1.99','2005-06-15 19:17:16','2006-02-15 22:14:46'),(6660,246,1,1968,'2.99','2005-06-17 09:20:36','2006-02-15 22:14:46'),(6661,246,2,2704,'1.99','2005-06-19 13:50:10','2006-02-15 22:14:46'),(6662,246,1,2725,'0.99','2005-06-19 15:01:23','2006-02-15 22:14:46'),(6663,246,1,3152,'4.99','2005-06-20 20:42:41','2006-02-15 22:14:46'),(6664,246,1,4092,'7.99','2005-07-07 05:54:18','2006-02-15 22:14:46'),(6665,246,2,4905,'4.99','2005-07-08 20:56:00','2006-02-15 22:14:46'),(6666,246,2,4994,'2.99','2005-07-09 00:54:13','2006-02-15 22:14:46'),(6667,246,2,5347,'0.99','2005-07-09 17:31:32','2006-02-15 22:14:46'),(6668,246,1,6688,'4.99','2005-07-12 12:22:12','2006-02-15 22:14:46'),(6669,246,2,9525,'5.99','2005-07-31 01:02:18','2006-02-15 22:14:46'),(6670,246,2,10208,'4.99','2005-08-01 00:54:51','2006-02-15 22:14:46'),(6671,246,2,10683,'2.99','2005-08-01 17:33:03','2006-02-15 22:14:47'),(6672,246,2,13418,'5.99','2005-08-19 22:53:56','2006-02-15 22:14:47'),(6673,246,1,13750,'6.99','2005-08-20 11:11:42','2006-02-15 22:14:47'),(6674,246,1,13987,'4.99','2005-08-20 19:19:30','2006-02-15 22:14:47'),(6675,246,1,14360,'6.99','2005-08-21 09:16:40','2006-02-15 22:14:47'),(6676,246,1,15746,'2.99','2005-08-23 12:26:19','2006-02-15 22:14:47'),(6677,247,1,189,'4.99','2005-05-26 06:01:41','2006-02-15 22:14:47'),(6678,247,2,448,'3.99','2005-05-27 19:03:08','2006-02-15 22:14:47'),(6679,247,1,450,'6.99','2005-05-27 19:18:54','2006-02-15 22:14:47'),(6680,247,1,2288,'5.99','2005-06-18 07:23:17','2006-02-15 22:14:47'),(6681,247,2,3955,'2.99','2005-07-06 21:58:08','2006-02-15 22:14:47'),(6682,247,2,4198,'6.99','2005-07-07 11:08:11','2006-02-15 22:14:47'),(6683,247,1,4492,'2.99','2005-07-08 01:32:04','2006-02-15 22:14:47'),(6684,247,2,4995,'2.99','2005-07-09 00:57:46','2006-02-15 22:14:47'),(6685,247,1,5328,'6.99','2005-07-09 16:48:29','2006-02-15 22:14:47'),(6686,247,1,5842,'4.99','2005-07-10 17:11:37','2006-02-15 22:14:47'),(6687,247,1,7963,'5.99','2005-07-28 13:48:38','2006-02-15 22:14:47'),(6688,247,1,10279,'1.99','2005-08-01 03:26:44','2006-02-15 22:14:47'),(6689,247,1,10410,'6.99','2005-08-01 07:53:29','2006-02-15 22:14:47'),(6690,247,2,11204,'2.99','2005-08-02 11:56:31','2006-02-15 22:14:47'),(6691,247,2,11306,'2.99','2005-08-02 15:45:10','2006-02-15 22:14:47'),(6692,247,1,11495,'0.99','2005-08-16 22:51:20','2006-02-15 22:14:47'),(6693,247,2,12265,'4.99','2005-08-18 04:22:01','2006-02-15 22:14:47'),(6694,247,1,12482,'7.99','2005-08-18 12:37:36','2006-02-15 22:14:47'),(6695,247,1,12491,'4.99','2005-08-18 12:48:45','2006-02-15 22:14:47'),(6696,247,1,12824,'4.99','2005-08-19 01:18:00','2006-02-15 22:14:47'),(6697,247,1,14041,'4.99','2005-08-20 21:45:23','2006-02-15 22:14:47'),(6698,247,1,15783,'4.99','2005-08-23 13:45:44','2006-02-15 22:14:47'),(6699,248,2,330,'7.99','2005-05-27 02:15:30','2006-02-15 22:14:47'),(6700,248,1,618,'4.99','2005-05-28 15:50:07','2006-02-15 22:14:47'),(6701,248,1,2066,'3.99','2005-06-17 16:07:08','2006-02-15 22:14:48'),(6702,248,2,2371,'0.99','2005-06-18 14:35:29','2006-02-15 22:14:48'),(6703,248,1,3910,'0.99','2005-07-06 20:05:18','2006-02-15 22:14:48'),(6704,248,2,4541,'4.99','2005-07-08 04:04:19','2006-02-15 22:14:48'),(6705,248,1,4841,'0.99','2005-07-08 18:18:23','2006-02-15 22:14:48'),(6706,248,1,5370,'2.99','2005-07-09 18:43:19','2006-02-15 22:14:48'),(6707,248,2,6617,'2.99','2005-07-12 08:39:56','2006-02-15 22:14:48'),(6708,248,2,7778,'5.99','2005-07-28 07:10:11','2006-02-15 22:14:48'),(6709,248,2,10418,'4.99','2005-08-01 08:11:07','2006-02-15 22:14:48'),(6710,248,1,12241,'0.99','2005-08-18 03:33:17','2006-02-15 22:14:48'),(6711,248,1,13918,'0.99','2005-08-20 16:47:32','2006-02-15 22:14:48'),(6712,248,2,14704,'0.99','2005-08-21 21:02:22','2006-02-15 22:14:48'),(6713,248,2,14885,'5.99','2005-08-22 03:58:29','2006-02-15 22:14:48'),(6714,249,2,316,'4.99','2005-05-26 23:22:55','2006-02-15 22:14:48'),(6715,249,2,400,'2.99','2005-05-27 12:51:44','2006-02-15 22:14:48'),(6716,249,1,438,'6.99','2005-05-27 17:52:34','2006-02-15 22:14:48'),(6717,249,1,597,'3.99','2005-05-28 14:01:02','2006-02-15 22:14:48'),(6718,249,1,1204,'0.99','2005-06-15 02:21:46','2006-02-15 22:14:48'),(6719,249,1,1473,'5.99','2005-06-15 20:55:20','2006-02-15 22:14:48'),(6720,249,2,1753,'2.99','2005-06-16 17:08:17','2006-02-15 22:14:48'),(6721,249,2,2129,'1.99','2005-06-17 20:58:32','2006-02-15 22:14:48'),(6722,249,2,3175,'7.99','2005-06-20 22:30:23','2006-02-15 22:14:48'),(6723,249,1,4352,'9.99','2005-07-07 19:15:58','2006-02-15 22:14:48'),(6724,249,1,5011,'4.99','2005-07-09 01:44:40','2006-02-15 22:14:48'),(6725,249,1,5275,'4.99','2005-07-09 14:34:18','2006-02-15 22:14:48'),(6726,249,2,5639,'3.99','2005-07-10 06:33:39','2006-02-15 22:14:48'),(6727,249,2,6670,'7.99','2005-07-12 11:44:33','2006-02-15 22:14:48'),(6728,249,1,7544,'7.99','2005-07-27 21:47:37','2006-02-15 22:14:48'),(6729,249,1,7804,'2.99','2005-07-28 07:56:00','2006-02-15 22:14:48'),(6730,249,2,7881,'4.99','2005-07-28 10:33:22','2006-02-15 22:14:48'),(6731,249,1,11124,'1.99','2005-08-02 08:55:25','2006-02-15 22:14:49'),(6732,249,1,11159,'4.99','2005-08-02 10:00:55','2006-02-15 22:14:49'),(6733,249,2,11668,'0.99','2005-08-17 05:47:32','2006-02-15 22:14:49'),(6734,249,2,13981,'4.99','2005-08-20 19:07:20','2006-02-15 22:14:49'),(6735,249,2,14285,'0.99','2005-08-21 06:50:48','2006-02-15 22:14:49'),(6736,249,1,15160,'6.99','2005-08-22 14:33:50','2006-02-15 22:14:49'),(6737,250,1,61,'5.99','2005-05-25 09:01:57','2006-02-15 22:14:49'),(6738,250,1,176,'3.99','2005-05-26 03:47:39','2006-02-15 22:14:49'),(6739,250,1,637,'4.99','2005-05-28 18:14:29','2006-02-15 22:14:49'),(6740,250,2,687,'0.99','2005-05-29 00:32:09','2006-02-15 22:14:49'),(6741,250,1,1146,'2.99','2005-05-31 20:34:45','2006-02-15 22:14:49'),(6742,250,1,2432,'4.99','2005-06-18 17:59:18','2006-02-15 22:14:49'),(6743,250,1,3635,'4.99','2005-07-06 06:55:36','2006-02-15 22:14:49'),(6744,250,1,3951,'3.99','2005-07-06 21:50:41','2006-02-15 22:14:49'),(6745,250,1,5479,'2.99','2005-07-09 23:47:33','2006-02-15 22:14:49'),(6746,250,1,5540,'0.99','2005-07-10 02:44:21','2006-02-15 22:14:49'),(6747,250,1,5998,'2.99','2005-07-11 01:20:46','2006-02-15 22:14:49'),(6748,250,1,8579,'2.99','2005-07-29 11:59:22','2006-02-15 22:14:49'),(6749,250,2,9099,'0.99','2005-07-30 08:45:48','2006-02-15 22:14:49'),(6750,250,2,10604,'4.99','2005-08-01 14:35:08','2006-02-15 22:14:49'),(6751,250,1,12361,'0.99','2005-08-18 07:47:31','2006-02-15 22:14:49'),(6752,250,1,12810,'0.99','2005-08-19 00:44:10','2006-02-15 22:14:49'),(6753,250,2,14565,'4.99','2005-08-21 16:24:45','2006-02-15 22:14:49'),(6754,250,1,14587,'5.99','2005-08-21 17:20:55','2006-02-15 22:14:49'),(6755,250,2,14814,'4.99','2005-08-22 01:12:14','2006-02-15 22:14:49'),(6756,250,2,15247,'6.99','2005-08-22 17:52:05','2006-02-15 22:14:49'),(6757,251,1,264,'2.99','2005-05-26 16:00:49','2006-02-15 22:14:49'),(6758,251,1,309,'1.99','2005-05-26 22:38:10','2006-02-15 22:14:49'),(6759,251,2,393,'2.99','2005-05-27 11:18:25','2006-02-15 22:14:49'),(6760,251,2,1069,'3.99','2005-05-31 09:32:31','2006-02-15 22:14:49'),(6761,251,1,1091,'4.99','2005-05-31 12:11:04','2006-02-15 22:14:50'),(6762,251,2,1155,'2.99','2005-05-31 22:17:11','2006-02-15 22:14:50'),(6763,251,1,2238,'6.99','2005-06-18 04:22:06','2006-02-15 22:14:50'),(6764,251,2,3422,'7.99','2005-06-21 17:24:40','2006-02-15 22:14:50'),(6765,251,1,3464,'2.99','2005-06-21 22:08:58','2006-02-15 22:14:50'),(6766,251,1,3799,'4.99','2005-07-06 15:00:14','2006-02-15 22:14:50'),(6767,251,2,4026,'3.99','2005-07-07 02:15:48','2006-02-15 22:14:50'),(6768,251,2,4848,'2.99','2005-07-08 18:30:16','2006-02-15 22:14:50'),(6769,251,2,5012,'2.99','2005-07-09 01:45:04','2006-02-15 22:14:50'),(6770,251,2,5979,'2.99','2005-07-11 00:17:09','2006-02-15 22:14:50'),(6771,251,2,6413,'6.99','2005-07-11 23:26:11','2006-02-15 22:14:50'),(6772,251,2,7338,'8.99','2005-07-27 14:13:34','2006-02-15 22:14:50'),(6773,251,2,8443,'2.99','2005-07-29 07:33:12','2006-02-15 22:14:50'),(6774,251,2,8982,'0.99','2005-07-30 04:31:02','2006-02-15 22:14:50'),(6775,251,1,9196,'2.99','2005-07-30 12:30:19','2006-02-15 22:14:50'),(6776,251,1,9892,'0.99','2005-07-31 14:06:25','2006-02-15 22:14:50'),(6777,251,1,10575,'7.99','2005-08-01 13:41:41','2006-02-15 22:14:50'),(6778,251,1,11733,'0.99','2005-08-17 08:31:03','2006-02-15 22:14:50'),(6779,251,2,12047,'3.99','2005-08-17 20:48:32','2006-02-15 22:14:50'),(6780,251,2,12666,'4.99','2005-08-18 19:11:41','2006-02-15 22:14:50'),(6781,251,2,13121,'2.99','2005-08-19 11:51:39','2006-02-15 22:14:50'),(6782,251,1,13243,'2.99','2005-08-19 16:33:16','2006-02-15 22:14:50'),(6783,251,2,13260,'6.99','2005-08-19 17:09:22','2006-02-15 22:14:50'),(6784,251,1,14292,'0.99','2005-08-21 07:06:20','2006-02-15 22:14:50'),(6785,251,2,15647,'2.99','2005-08-23 08:23:56','2006-02-15 22:14:50'),(6786,251,2,15870,'4.99','2005-08-23 16:23:08','2006-02-15 22:14:50'),(6787,251,1,14107,'0.99','2006-02-14 15:16:03','2006-02-15 22:14:50'),(6788,252,1,707,'4.99','2005-05-29 03:18:19','2006-02-15 22:14:50'),(6789,252,1,1095,'0.99','2005-05-31 13:15:41','2006-02-15 22:14:50'),(6790,252,1,1395,'5.99','2005-06-15 16:21:04','2006-02-15 22:14:51'),(6791,252,2,2716,'4.99','2005-06-19 14:40:17','2006-02-15 22:14:51'),(6792,252,1,2968,'0.99','2005-06-20 07:41:47','2006-02-15 22:14:51'),(6793,252,2,4372,'0.99','2005-07-07 20:09:01','2006-02-15 22:14:51'),(6794,252,2,5554,'2.99','2005-07-10 03:03:38','2006-02-15 22:14:51'),(6795,252,1,6357,'0.99','2005-07-11 20:58:51','2006-02-15 22:14:51'),(6796,252,2,6369,'0.99','2005-07-11 21:23:36','2006-02-15 22:14:51'),(6797,252,1,7024,'4.99','2005-07-27 02:36:40','2006-02-15 22:14:51'),(6798,252,2,7121,'0.99','2005-07-27 05:58:32','2006-02-15 22:14:51'),(6799,252,2,7168,'0.99','2005-07-27 07:51:11','2006-02-15 22:14:51'),(6800,252,1,7670,'0.99','2005-07-28 02:44:25','2006-02-15 22:14:51'),(6801,252,1,8636,'5.99','2005-07-29 14:24:13','2006-02-15 22:14:51'),(6802,252,1,8899,'0.99','2005-07-30 01:05:30','2006-02-15 22:14:51'),(6803,252,2,10314,'0.99','2005-08-01 04:31:18','2006-02-15 22:14:51'),(6804,252,2,10834,'2.99','2005-08-01 23:28:00','2006-02-15 22:14:51'),(6805,252,2,11764,'0.99','2005-08-17 09:51:54','2006-02-15 22:14:51'),(6806,252,1,13385,'4.99','2005-08-19 21:39:35','2006-02-15 22:14:51'),(6807,252,2,13989,'5.99','2005-08-20 19:27:50','2006-02-15 22:14:51'),(6808,252,1,14774,'4.99','2005-08-21 23:52:32','2006-02-15 22:14:51'),(6809,252,2,13756,'4.99','2006-02-14 15:16:03','2006-02-15 22:14:51'),(6810,253,1,566,'6.99','2005-05-28 09:51:39','2006-02-15 22:14:51'),(6811,253,1,648,'0.99','2005-05-28 19:25:54','2006-02-15 22:14:51'),(6812,253,1,986,'2.99','2005-05-30 22:22:52','2006-02-15 22:14:51'),(6813,253,2,1378,'1.99','2005-06-15 15:03:15','2006-02-15 22:14:51'),(6814,253,2,1606,'6.99','2005-06-16 06:18:31','2006-02-15 22:14:51'),(6815,253,2,2081,'5.99','2005-06-17 17:05:02','2006-02-15 22:14:51'),(6816,253,1,2142,'4.99','2005-06-17 21:55:43','2006-02-15 22:14:51'),(6817,253,1,2454,'4.99','2005-06-18 19:32:51','2006-02-15 22:14:51'),(6818,253,2,2636,'4.99','2005-06-19 09:13:06','2006-02-15 22:14:51'),(6819,253,1,3658,'7.99','2005-07-06 08:01:08','2006-02-15 22:14:52'),(6820,253,1,5505,'2.99','2005-07-10 00:38:48','2006-02-15 22:14:52'),(6821,253,1,5602,'4.99','2005-07-10 05:02:22','2006-02-15 22:14:52'),(6822,253,2,7689,'2.99','2005-07-28 03:21:24','2006-02-15 22:14:52'),(6823,253,2,7851,'0.99','2005-07-28 09:31:58','2006-02-15 22:14:52'),(6824,253,2,7887,'2.99','2005-07-28 10:40:12','2006-02-15 22:14:52'),(6825,253,2,8752,'2.99','2005-07-29 19:15:07','2006-02-15 22:14:52'),(6826,253,2,9606,'0.99','2005-07-31 03:50:46','2006-02-15 22:14:52'),(6827,253,2,9618,'6.99','2005-07-31 04:16:14','2006-02-15 22:14:52'),(6828,253,2,10404,'4.99','2005-08-01 07:31:25','2006-02-15 22:14:52'),(6829,253,1,10660,'2.99','2005-08-01 16:48:01','2006-02-15 22:14:52'),(6830,253,2,10881,'6.99','2005-08-02 00:38:14','2006-02-15 22:14:52'),(6831,253,1,12572,'0.99','2005-08-18 15:32:54','2006-02-15 22:14:52'),(6832,253,2,12827,'5.99','2005-08-19 01:27:23','2006-02-15 22:14:52'),(6833,253,1,13126,'5.99','2005-08-19 12:00:28','2006-02-15 22:14:52'),(6834,253,2,14086,'3.99','2005-08-20 23:47:54','2006-02-15 22:14:52'),(6835,253,2,14283,'4.99','2005-08-21 06:44:14','2006-02-15 22:14:52'),(6836,253,1,14640,'7.99','2005-08-21 19:03:19','2006-02-15 22:14:52'),(6837,253,2,14655,'4.99','2005-08-21 19:37:10','2006-02-15 22:14:52'),(6838,253,2,15221,'2.99','2005-08-22 17:12:29','2006-02-15 22:14:52'),(6839,254,1,183,'2.99','2005-05-26 05:01:18','2006-02-15 22:14:52'),(6840,254,1,1108,'5.99','2005-05-31 15:05:12','2006-02-15 22:14:52'),(6841,254,1,1285,'2.99','2005-06-15 08:33:06','2006-02-15 22:14:52'),(6842,254,2,1390,'0.99','2005-06-15 16:06:29','2006-02-15 22:14:52'),(6843,254,1,2082,'2.99','2005-06-17 17:13:32','2006-02-15 22:14:52'),(6844,254,1,2138,'2.99','2005-06-17 21:28:14','2006-02-15 22:14:52'),(6845,254,2,2687,'3.99','2005-06-19 12:46:52','2006-02-15 22:14:52'),(6846,254,1,3882,'4.99','2005-07-06 18:38:21','2006-02-15 22:14:52'),(6847,254,2,5042,'2.99','2005-07-09 03:20:30','2006-02-15 22:14:52'),(6848,254,1,5072,'3.99','2005-07-09 05:01:58','2006-02-15 22:14:52'),(6849,254,2,5080,'2.99','2005-07-09 05:23:55','2006-02-15 22:14:53'),(6850,254,1,5537,'0.99','2005-07-10 02:35:41','2006-02-15 22:14:53'),(6851,254,1,5550,'5.99','2005-07-10 02:58:35','2006-02-15 22:14:53'),(6852,254,1,5826,'7.99','2005-07-10 16:21:02','2006-02-15 22:14:53'),(6853,254,2,5930,'4.99','2005-07-10 21:59:32','2006-02-15 22:14:53'),(6854,254,2,7011,'0.99','2005-07-27 01:58:34','2006-02-15 22:14:53'),(6855,254,1,7413,'4.99','2005-07-27 16:45:40','2006-02-15 22:14:53'),(6856,254,2,8216,'7.99','2005-07-28 23:43:59','2006-02-15 22:14:53'),(6857,254,2,8581,'4.99','2005-07-29 12:02:06','2006-02-15 22:14:53'),(6858,254,2,9494,'1.99','2005-07-30 23:52:46','2006-02-15 22:14:53'),(6859,254,1,10522,'4.99','2005-08-01 11:48:51','2006-02-15 22:14:53'),(6860,254,1,11190,'0.99','2005-08-02 11:21:34','2006-02-15 22:14:53'),(6861,254,1,11665,'6.99','2005-08-17 05:36:57','2006-02-15 22:14:53'),(6862,254,2,12148,'0.99','2005-08-18 00:13:15','2006-02-15 22:14:53'),(6863,254,1,12206,'0.99','2005-08-18 02:22:20','2006-02-15 22:14:53'),(6864,254,1,12247,'2.99','2005-08-18 03:51:51','2006-02-15 22:14:53'),(6865,254,1,12874,'0.99','2005-08-19 03:07:57','2006-02-15 22:14:53'),(6866,254,2,13001,'4.99','2005-08-19 07:36:44','2006-02-15 22:14:53'),(6867,254,1,13045,'4.99','2005-08-19 09:17:35','2006-02-15 22:14:53'),(6868,254,2,13130,'2.99','2005-08-19 12:06:42','2006-02-15 22:14:53'),(6869,254,2,14497,'4.99','2005-08-21 14:09:47','2006-02-15 22:14:53'),(6870,254,1,15774,'0.99','2005-08-23 13:25:08','2006-02-15 22:14:53'),(6871,255,1,1235,'2.99','2005-06-15 04:31:28','2006-02-15 22:14:53'),(6872,255,1,1420,'6.99','2005-06-15 17:56:14','2006-02-15 22:14:53'),(6873,255,2,1681,'2.99','2005-06-16 11:38:17','2006-02-15 22:14:53'),(6874,255,2,3442,'2.99','2005-06-21 20:06:51','2006-02-15 22:14:53'),(6875,255,1,4547,'0.99','2005-07-08 04:20:19','2006-02-15 22:14:53'),(6876,255,1,5706,'1.99','2005-07-10 10:21:46','2006-02-15 22:14:53'),(6877,255,1,5943,'0.99','2005-07-10 22:48:13','2006-02-15 22:14:53'),(6878,255,2,7475,'8.99','2005-07-27 19:07:43','2006-02-15 22:14:54'),(6879,255,1,7646,'2.99','2005-07-28 01:31:45','2006-02-15 22:14:54'),(6880,255,1,8562,'0.99','2005-07-29 11:32:13','2006-02-15 22:14:54'),(6881,255,1,9061,'6.99','2005-07-30 07:21:52','2006-02-15 22:14:54'),(6882,255,2,11979,'4.99','2005-08-17 18:07:13','2006-02-15 22:14:54'),(6883,255,2,12176,'7.99','2005-08-18 01:10:33','2006-02-15 22:14:54'),(6884,255,2,13154,'2.99','2005-08-19 13:09:54','2006-02-15 22:14:54'),(6885,255,1,13268,'0.99','2005-08-19 17:33:50','2006-02-15 22:14:54'),(6886,255,2,13683,'0.99','2005-08-20 08:54:55','2006-02-15 22:14:54'),(6887,255,1,13758,'8.99','2005-08-20 11:21:26','2006-02-15 22:14:54'),(6888,255,2,14600,'3.99','2005-08-21 17:45:21','2006-02-15 22:14:54'),(6889,256,1,51,'4.99','2005-05-25 06:49:10','2006-02-15 22:14:54'),(6890,256,1,232,'0.99','2005-05-26 11:38:05','2006-02-15 22:14:54'),(6891,256,2,738,'4.99','2005-05-29 08:20:08','2006-02-15 22:14:54'),(6892,256,1,935,'2.99','2005-05-30 13:29:36','2006-02-15 22:14:54'),(6893,256,1,1116,'0.99','2005-05-31 16:10:46','2006-02-15 22:14:54'),(6894,256,1,1555,'2.99','2005-06-16 02:17:07','2006-02-15 22:14:54'),(6895,256,2,1965,'0.99','2005-06-17 09:17:39','2006-02-15 22:14:54'),(6896,256,2,1973,'4.99','2005-06-17 09:26:15','2006-02-15 22:14:54'),(6897,256,2,2230,'4.99','2005-06-18 03:50:49','2006-02-15 22:14:54'),(6898,256,1,2380,'6.99','2005-06-18 15:00:04','2006-02-15 22:14:54'),(6899,256,2,2561,'4.99','2005-06-19 03:14:52','2006-02-15 22:14:54'),(6900,256,1,2839,'4.99','2005-06-19 22:07:24','2006-02-15 22:14:54'),(6901,256,1,4130,'0.99','2005-07-07 07:51:53','2006-02-15 22:14:54'),(6902,256,2,4182,'0.99','2005-07-07 10:28:00','2006-02-15 22:14:54'),(6903,256,1,5179,'2.99','2005-07-09 10:00:44','2006-02-15 22:14:54'),(6904,256,1,6298,'0.99','2005-07-11 17:42:33','2006-02-15 22:14:54'),(6905,256,1,7661,'3.99','2005-07-28 02:10:27','2006-02-15 22:14:54'),(6906,256,2,9424,'2.99','2005-07-30 21:10:56','2006-02-15 22:14:54'),(6907,256,2,10759,'4.99','2005-08-01 20:22:51','2006-02-15 22:14:55'),(6908,256,2,11011,'2.99','2005-08-02 05:07:07','2006-02-15 22:14:55'),(6909,256,2,11628,'8.99','2005-08-17 04:27:18','2006-02-15 22:14:55'),(6910,256,2,13457,'0.99','2005-08-20 00:33:22','2006-02-15 22:14:55'),(6911,256,1,13651,'0.99','2005-08-20 07:50:08','2006-02-15 22:14:55'),(6912,256,1,14003,'6.99','2005-08-20 20:16:06','2006-02-15 22:14:55'),(6913,256,2,14036,'4.99','2005-08-20 21:35:27','2006-02-15 22:14:55'),(6914,256,2,14445,'2.99','2005-08-21 12:07:42','2006-02-15 22:14:55'),(6915,256,2,14458,'3.99','2005-08-21 12:47:53','2006-02-15 22:14:55'),(6916,256,2,15609,'2.99','2005-08-23 06:56:04','2006-02-15 22:14:55'),(6917,256,2,15861,'4.99','2005-08-23 16:15:45','2006-02-15 22:14:55'),(6918,256,1,15864,'7.99','2005-08-23 16:18:12','2006-02-15 22:14:55'),(6919,257,2,139,'2.99','2005-05-25 23:00:21','2006-02-15 22:14:55'),(6920,257,2,244,'2.99','2005-05-26 13:40:40','2006-02-15 22:14:55'),(6921,257,2,705,'2.99','2005-05-29 02:48:52','2006-02-15 22:14:55'),(6922,257,1,2557,'0.99','2005-06-19 03:08:51','2006-02-15 22:14:55'),(6923,257,2,3083,'4.99','2005-06-20 15:33:47','2006-02-15 22:14:55'),(6924,257,2,4462,'6.99','2005-07-08 00:02:49','2006-02-15 22:14:55'),(6925,257,2,4574,'4.99','2005-07-08 05:39:42','2006-02-15 22:14:55'),(6926,257,1,5495,'6.99','2005-07-10 00:16:54','2006-02-15 22:14:55'),(6927,257,1,5858,'4.99','2005-07-10 18:00:07','2006-02-15 22:14:55'),(6928,257,1,6422,'5.99','2005-07-11 23:46:19','2006-02-15 22:14:55'),(6929,257,2,6711,'5.99','2005-07-12 13:23:40','2006-02-15 22:14:55'),(6930,257,2,7007,'4.99','2005-07-27 01:43:39','2006-02-15 22:14:55'),(6931,257,1,7176,'2.99','2005-07-27 08:04:28','2006-02-15 22:14:55'),(6932,257,1,7496,'1.99','2005-07-27 20:04:05','2006-02-15 22:14:55'),(6933,257,2,7510,'2.99','2005-07-27 20:37:57','2006-02-15 22:14:55'),(6934,257,2,7518,'5.99','2005-07-27 21:01:16','2006-02-15 22:14:55'),(6935,257,2,8156,'3.99','2005-07-28 20:59:04','2006-02-15 22:14:56'),(6936,257,2,8252,'2.99','2005-07-29 00:54:17','2006-02-15 22:14:56'),(6937,257,1,8344,'4.99','2005-07-29 04:45:25','2006-02-15 22:14:56'),(6938,257,1,8640,'4.99','2005-07-29 14:34:17','2006-02-15 22:14:56'),(6939,257,2,8946,'6.99','2005-07-30 03:14:53','2006-02-15 22:14:56'),(6940,257,1,9800,'4.99','2005-07-31 11:00:58','2006-02-15 22:14:56'),(6941,257,2,10142,'4.99','2005-07-31 22:10:54','2006-02-15 22:14:56'),(6942,257,1,11230,'4.99','2005-08-02 12:59:08','2006-02-15 22:14:56'),(6943,257,1,11394,'0.99','2005-08-02 18:44:45','2006-02-15 22:14:56'),(6944,257,2,11545,'6.99','2005-08-17 00:56:06','2006-02-15 22:14:56'),(6945,257,2,11860,'1.99','2005-08-17 13:52:26','2006-02-15 22:14:56'),(6946,257,2,12841,'2.99','2005-08-19 01:55:55','2006-02-15 22:14:56'),(6947,257,1,12904,'5.99','2005-08-19 04:10:50','2006-02-15 22:14:56'),(6948,257,2,13203,'7.99','2005-08-19 15:00:58','2006-02-15 22:14:56'),(6949,257,2,13218,'0.99','2005-08-19 15:39:39','2006-02-15 22:14:56'),(6950,257,1,13389,'2.99','2005-08-19 21:52:51','2006-02-15 22:14:56'),(6951,257,2,13846,'5.99','2005-08-20 14:32:31','2006-02-15 22:14:56'),(6952,257,2,14115,'0.99','2005-08-21 01:10:29','2006-02-15 22:14:56'),(6953,257,1,15025,'0.99','2005-08-22 08:57:24','2006-02-15 22:14:56'),(6954,257,1,15967,'2.99','2005-08-23 19:50:06','2006-02-15 22:14:56'),(6955,257,2,15968,'0.99','2005-08-23 19:51:29','2006-02-15 22:14:56'),(6956,258,1,1743,'2.99','2005-06-16 16:38:10','2006-02-15 22:14:56'),(6957,258,2,2678,'0.99','2005-06-19 12:12:23','2006-02-15 22:14:56'),(6958,258,2,2931,'8.99','2005-06-20 04:50:45','2006-02-15 22:14:56'),(6959,258,2,4408,'2.99','2005-07-07 21:41:06','2006-02-15 22:14:56'),(6960,258,1,4677,'5.99','2005-07-08 10:30:36','2006-02-15 22:14:56'),(6961,258,2,4897,'0.99','2005-07-08 20:25:11','2006-02-15 22:14:56'),(6962,258,2,5312,'5.99','2005-07-09 16:03:09','2006-02-15 22:14:56'),(6963,258,1,5674,'0.99','2005-07-10 08:26:26','2006-02-15 22:14:57'),(6964,258,1,5935,'9.99','2005-07-10 22:11:04','2006-02-15 22:14:57'),(6965,258,2,6012,'4.99','2005-07-11 02:00:12','2006-02-15 22:14:57'),(6966,258,1,7814,'2.99','2005-07-28 08:09:48','2006-02-15 22:14:57'),(6967,258,1,8675,'4.99','2005-07-29 15:56:18','2006-02-15 22:14:57'),(6968,258,2,9069,'4.99','2005-07-30 07:39:59','2006-02-15 22:14:57'),(6969,258,2,10293,'1.99','2005-08-01 03:44:26','2006-02-15 22:14:57'),(6970,258,2,10315,'4.99','2005-08-01 04:34:45','2006-02-15 22:14:57'),(6971,258,1,10325,'5.99','2005-08-01 04:52:12','2006-02-15 22:14:57'),(6972,258,2,10332,'6.99','2005-08-01 04:57:32','2006-02-15 22:14:57'),(6973,258,1,10393,'0.99','2005-08-01 06:52:50','2006-02-15 22:14:57'),(6974,258,1,12246,'5.99','2005-08-18 03:48:41','2006-02-15 22:14:57'),(6975,258,2,12296,'3.99','2005-08-18 05:16:28','2006-02-15 22:14:57'),(6976,258,1,13491,'4.99','2005-08-20 01:30:56','2006-02-15 22:14:57'),(6977,258,1,13695,'6.99','2005-08-20 09:13:25','2006-02-15 22:14:57'),(6978,258,2,13897,'2.99','2005-08-20 16:02:28','2006-02-15 22:14:57'),(6979,258,2,14901,'6.99','2005-08-22 04:31:37','2006-02-15 22:14:57'),(6980,259,2,722,'6.99','2005-05-29 05:30:31','2006-02-15 22:14:57'),(6981,259,2,901,'2.99','2005-05-30 09:40:40','2006-02-15 22:14:57'),(6982,259,1,1147,'5.99','2005-05-31 20:37:52','2006-02-15 22:14:57'),(6983,259,1,1641,'7.99','2005-06-16 08:46:26','2006-02-15 22:14:57'),(6984,259,2,1723,'7.99','2005-06-16 15:14:18','2006-02-15 22:14:57'),(6985,259,2,1813,'2.99','2005-06-16 21:11:00','2006-02-15 22:14:57'),(6986,259,2,2375,'5.99','2005-06-18 14:47:29','2006-02-15 22:14:57'),(6987,259,2,4199,'5.99','2005-07-07 11:13:07','2006-02-15 22:14:57'),(6988,259,2,4489,'4.99','2005-07-08 01:23:58','2006-02-15 22:14:57'),(6989,259,1,6074,'0.99','2005-07-11 04:59:56','2006-02-15 22:14:57'),(6990,259,2,6539,'3.99','2005-07-12 04:50:49','2006-02-15 22:14:57'),(6991,259,2,7188,'2.99','2005-07-27 08:32:08','2006-02-15 22:14:57'),(6992,259,2,7774,'7.99','2005-07-28 07:03:25','2006-02-15 22:14:58'),(6993,259,1,7817,'4.99','2005-07-28 08:20:55','2006-02-15 22:14:58'),(6994,259,2,9205,'6.99','2005-07-30 12:46:40','2006-02-15 22:14:58'),(6995,259,1,9282,'6.99','2005-07-30 15:17:31','2006-02-15 22:14:58'),(6996,259,1,9444,'7.99','2005-07-30 21:48:44','2006-02-15 22:14:58'),(6997,259,1,10510,'3.99','2005-08-01 11:28:30','2006-02-15 22:14:58'),(6998,259,1,10781,'2.99','2005-08-01 21:22:41','2006-02-15 22:14:58'),(6999,259,1,11184,'3.99','2005-08-02 11:01:26','2006-02-15 22:14:58'),(7000,259,2,12680,'6.99','2005-08-18 19:43:46','2006-02-15 22:14:58'),(7001,259,1,13109,'4.99','2005-08-19 11:23:20','2006-02-15 22:14:58'),(7002,259,2,13112,'2.99','2005-08-19 11:27:10','2006-02-15 22:14:58'),(7003,259,2,13366,'4.99','2005-08-19 21:14:45','2006-02-15 22:14:58'),(7004,259,1,13598,'5.99','2005-08-20 05:59:17','2006-02-15 22:14:58'),(7005,259,2,13649,'4.99','2005-08-20 07:48:38','2006-02-15 22:14:58'),(7006,259,2,14067,'6.99','2005-08-20 22:49:23','2006-02-15 22:14:58'),(7007,259,2,14170,'4.99','2005-08-21 03:00:39','2006-02-15 22:14:58'),(7008,259,2,14966,'2.99','2005-08-22 06:45:57','2006-02-15 22:14:58'),(7009,259,1,15425,'10.99','2005-08-23 00:05:57','2006-02-15 22:14:58'),(7010,259,1,15473,'2.99','2005-08-23 01:39:10','2006-02-15 22:14:58'),(7011,259,2,NULL,'1.99','2005-08-23 06:13:16','2006-02-15 22:14:58'),(7012,259,1,15689,'2.99','2005-08-23 09:52:55','2006-02-15 22:14:58'),(7013,260,1,1101,'8.99','2005-05-31 14:13:59','2006-02-15 22:14:58'),(7014,260,1,1626,'3.99','2005-06-16 07:49:47','2006-02-15 22:14:58'),(7015,260,2,2001,'2.99','2005-06-17 11:35:09','2006-02-15 22:14:58'),(7016,260,2,2040,'2.99','2005-06-17 14:18:37','2006-02-15 22:14:58'),(7017,260,1,2091,'10.99','2005-06-17 18:09:04','2006-02-15 22:14:58'),(7018,260,1,2178,'0.99','2005-06-18 00:38:35','2006-02-15 22:14:58'),(7019,260,1,2823,'7.99','2005-06-19 20:30:21','2006-02-15 22:14:58'),(7020,260,2,2958,'3.99','2005-06-20 06:56:20','2006-02-15 22:14:58'),(7021,260,1,3193,'0.99','2005-06-20 23:52:30','2006-02-15 22:14:59'),(7022,260,2,4054,'0.99','2005-07-07 03:42:07','2006-02-15 22:14:59'),(7023,260,2,4741,'6.99','2005-07-08 13:31:23','2006-02-15 22:14:59'),(7024,260,1,4870,'2.99','2005-07-08 19:14:45','2006-02-15 22:14:59'),(7025,260,2,6328,'2.99','2005-07-11 19:09:33','2006-02-15 22:14:59'),(7026,260,2,7072,'0.99','2005-07-27 04:02:33','2006-02-15 22:14:59'),(7027,260,1,7268,'1.99','2005-07-27 11:23:09','2006-02-15 22:14:59'),(7028,260,1,7885,'7.99','2005-07-28 10:37:41','2006-02-15 22:14:59'),(7029,260,1,8475,'1.99','2005-07-29 08:37:41','2006-02-15 22:14:59'),(7030,260,1,8484,'2.99','2005-07-29 08:51:59','2006-02-15 22:14:59'),(7031,260,1,8717,'0.99','2005-07-29 17:40:45','2006-02-15 22:14:59'),(7032,260,1,8933,'0.99','2005-07-30 02:36:06','2006-02-15 22:14:59'),(7033,260,2,9176,'4.99','2005-07-30 11:50:54','2006-02-15 22:14:59'),(7034,260,2,10970,'8.99','2005-08-02 04:06:46','2006-02-15 22:14:59'),(7035,260,1,12852,'0.99','2005-08-19 02:12:40','2006-02-15 22:14:59'),(7036,260,2,13440,'2.99','2005-08-19 23:42:52','2006-02-15 22:14:59'),(7037,260,1,13685,'3.99','2005-08-20 08:57:11','2006-02-15 22:14:59'),(7038,260,1,13966,'2.99','2005-08-20 18:28:28','2006-02-15 22:14:59'),(7039,260,2,13978,'0.99','2005-08-20 19:03:25','2006-02-15 22:14:59'),(7040,260,2,14035,'2.99','2005-08-20 21:31:58','2006-02-15 22:14:59'),(7041,260,2,14441,'2.99','2005-08-21 11:59:38','2006-02-15 22:14:59'),(7042,260,1,14579,'7.99','2005-08-21 16:54:47','2006-02-15 22:14:59'),(7043,260,1,14610,'6.99','2005-08-21 17:59:09','2006-02-15 22:14:59'),(7044,261,1,12,'4.99','2005-05-25 00:19:27','2006-02-15 22:14:59'),(7045,261,2,465,'3.99','2005-05-27 20:44:36','2006-02-15 22:14:59'),(7046,261,2,542,'6.99','2005-05-28 06:42:13','2006-02-15 22:14:59'),(7047,261,1,792,'0.99','2005-05-29 16:32:10','2006-02-15 22:14:59'),(7048,261,1,1760,'2.99','2005-06-16 17:48:37','2006-02-15 22:14:59'),(7049,261,1,1877,'5.99','2005-06-17 02:54:16','2006-02-15 22:15:00'),(7050,261,2,1988,'8.99','2005-06-17 10:42:34','2006-02-15 22:15:00'),(7051,261,2,2072,'3.99','2005-06-17 16:33:32','2006-02-15 22:15:00'),(7052,261,2,2392,'0.99','2005-06-18 15:34:18','2006-02-15 22:15:00'),(7053,261,1,3363,'0.99','2005-06-21 12:25:07','2006-02-15 22:15:00'),(7054,261,1,5122,'3.99','2005-07-09 07:19:35','2006-02-15 22:15:00'),(7055,261,1,5449,'5.99','2005-07-09 22:12:01','2006-02-15 22:15:00'),(7056,261,2,6515,'2.99','2005-07-12 03:50:32','2006-02-15 22:15:00'),(7057,261,1,6743,'0.99','2005-07-12 14:29:25','2006-02-15 22:15:00'),(7058,261,2,9552,'4.99','2005-07-31 02:05:32','2006-02-15 22:15:00'),(7059,261,1,9842,'4.99','2005-07-31 12:24:58','2006-02-15 22:15:00'),(7060,261,1,9869,'4.99','2005-07-31 13:21:54','2006-02-15 22:15:00'),(7061,261,2,10246,'1.99','2005-08-01 02:29:50','2006-02-15 22:15:00'),(7062,261,1,11834,'1.99','2005-08-17 13:00:40','2006-02-15 22:15:00'),(7063,261,2,11928,'2.99','2005-08-17 16:28:24','2006-02-15 22:15:00'),(7064,261,1,12327,'6.99','2005-08-18 06:43:22','2006-02-15 22:15:00'),(7065,261,2,13245,'4.99','2005-08-19 16:43:41','2006-02-15 22:15:00'),(7066,261,2,13506,'5.99','2005-08-20 02:07:06','2006-02-15 22:15:00'),(7067,261,1,13669,'2.99','2005-08-20 08:26:32','2006-02-15 22:15:00'),(7068,261,1,13849,'4.99','2005-08-20 14:42:34','2006-02-15 22:15:00'),(7069,261,2,15397,'4.99','2005-08-22 23:08:46','2006-02-15 22:15:00'),(7070,262,2,984,'4.99','2005-05-30 22:17:17','2006-02-15 22:15:00'),(7071,262,1,1563,'2.99','2005-06-16 02:46:28','2006-02-15 22:15:00'),(7072,262,1,2771,'6.99','2005-06-19 17:54:48','2006-02-15 22:15:00'),(7073,262,2,2850,'8.99','2005-06-19 23:06:28','2006-02-15 22:15:00'),(7074,262,1,2915,'1.99','2005-06-20 03:57:17','2006-02-15 22:15:00'),(7075,262,1,3521,'1.99','2005-07-06 01:00:11','2006-02-15 22:15:00'),(7076,262,1,3699,'3.99','2005-07-06 10:11:25','2006-02-15 22:15:01'),(7077,262,1,4501,'0.99','2005-07-08 02:12:00','2006-02-15 22:15:01'),(7078,262,2,5503,'0.99','2005-07-10 00:35:37','2006-02-15 22:15:01'),(7079,262,1,6291,'0.99','2005-07-11 17:16:40','2006-02-15 22:15:01'),(7080,262,2,6547,'7.99','2005-07-12 04:57:46','2006-02-15 22:15:01'),(7081,262,1,6724,'3.99','2005-07-12 13:45:15','2006-02-15 22:15:01'),(7082,262,2,6762,'7.99','2005-07-12 15:25:33','2006-02-15 22:15:01'),(7083,262,1,6805,'6.99','2005-07-12 17:23:01','2006-02-15 22:15:01'),(7084,262,1,6986,'4.99','2005-07-27 00:59:05','2006-02-15 22:15:01'),(7085,262,1,9105,'6.99','2005-07-30 08:50:25','2006-02-15 22:15:01'),(7086,262,2,10421,'0.99','2005-08-01 08:14:10','2006-02-15 22:15:01'),(7087,262,2,10770,'0.99','2005-08-01 20:45:39','2006-02-15 22:15:01'),(7088,262,2,13466,'2.99','2005-08-20 00:55:16','2006-02-15 22:15:01'),(7089,262,1,13808,'5.99','2005-08-20 12:55:43','2006-02-15 22:15:01'),(7090,262,1,14180,'4.99','2005-08-21 03:16:15','2006-02-15 22:15:01'),(7091,262,2,14465,'3.99','2005-08-21 12:54:22','2006-02-15 22:15:01'),(7092,262,2,14834,'6.99','2005-08-22 01:45:58','2006-02-15 22:15:01'),(7093,262,2,15270,'3.99','2005-08-22 18:48:42','2006-02-15 22:15:01'),(7094,262,1,15456,'0.99','2005-08-23 01:07:01','2006-02-15 22:15:01'),(7095,262,1,15640,'4.99','2005-08-23 08:04:40','2006-02-15 22:15:01'),(7096,262,2,15771,'4.99','2005-08-23 13:18:46','2006-02-15 22:15:01'),(7097,262,1,15918,'3.99','2005-08-23 17:57:35','2006-02-15 22:15:01'),(7098,263,1,97,'4.99','2005-05-25 16:34:24','2006-02-15 22:15:01'),(7099,263,1,266,'0.99','2005-05-26 16:08:05','2006-02-15 22:15:01'),(7100,263,2,2126,'8.99','2005-06-17 20:54:36','2006-02-15 22:15:01'),(7101,263,2,3257,'1.99','2005-06-21 03:47:19','2006-02-15 22:15:01'),(7102,263,1,3578,'4.99','2005-07-06 03:47:05','2006-02-15 22:15:01'),(7103,263,2,3773,'2.99','2005-07-06 13:23:34','2006-02-15 22:15:02'),(7104,263,2,4637,'0.99','2005-07-08 08:49:54','2006-02-15 22:15:02'),(7105,263,2,4682,'2.99','2005-07-08 10:38:27','2006-02-15 22:15:02'),(7106,263,2,5125,'2.99','2005-07-09 07:25:28','2006-02-15 22:15:02'),(7107,263,2,5254,'1.99','2005-07-09 13:50:11','2006-02-15 22:15:02'),(7108,263,2,6376,'4.99','2005-07-11 21:40:23','2006-02-15 22:15:02'),(7109,263,1,6483,'2.99','2005-07-12 01:59:20','2006-02-15 22:15:02'),(7110,263,1,6808,'1.99','2005-07-12 17:36:42','2006-02-15 22:15:02'),(7111,263,2,7291,'4.99','2005-07-27 12:30:47','2006-02-15 22:15:02'),(7112,263,1,7425,'4.99','2005-07-27 17:18:35','2006-02-15 22:15:02'),(7113,263,1,7706,'4.99','2005-07-28 04:03:17','2006-02-15 22:15:02'),(7114,263,2,7833,'1.99','2005-07-28 08:46:14','2006-02-15 22:15:02'),(7115,263,1,10476,'6.99','2005-08-01 10:03:20','2006-02-15 22:15:02'),(7116,263,1,10775,'2.99','2005-08-01 20:59:52','2006-02-15 22:15:02'),(7117,263,1,11339,'2.99','2005-08-02 17:02:06','2006-02-15 22:15:02'),(7118,263,1,11822,'0.99','2005-08-17 12:32:39','2006-02-15 22:15:02'),(7119,263,2,12057,'9.99','2005-08-17 21:04:35','2006-02-15 22:15:02'),(7120,263,2,12432,'5.99','2005-08-18 10:35:13','2006-02-15 22:15:02'),(7121,263,2,12919,'6.99','2005-08-19 04:32:15','2006-02-15 22:15:02'),(7122,263,1,14335,'3.99','2005-08-21 08:33:07','2006-02-15 22:15:02'),(7123,263,2,14448,'6.99','2005-08-21 12:13:10','2006-02-15 22:15:02'),(7124,263,1,15322,'4.99','2005-08-22 20:20:30','2006-02-15 22:15:02'),(7125,263,2,15922,'7.99','2005-08-23 18:07:31','2006-02-15 22:15:02'),(7126,263,1,15293,'0.99','2006-02-14 15:16:03','2006-02-15 22:15:02'),(7127,264,2,1165,'3.99','2005-06-14 23:16:27','2006-02-15 22:15:02'),(7128,264,1,1206,'4.99','2005-06-15 02:27:07','2006-02-15 22:15:02'),(7129,264,1,3028,'0.99','2005-06-20 11:50:52','2006-02-15 22:15:02'),(7130,264,1,3403,'3.99','2005-06-21 15:55:06','2006-02-15 22:15:02'),(7131,264,1,3618,'6.99','2005-07-06 05:58:45','2006-02-15 22:15:03'),(7132,264,1,4328,'4.99','2005-07-07 18:03:17','2006-02-15 22:15:03'),(7133,264,1,4539,'0.99','2005-07-08 04:01:02','2006-02-15 22:15:03'),(7134,264,1,6340,'8.99','2005-07-11 19:46:05','2006-02-15 22:15:03'),(7135,264,2,6391,'0.99','2005-07-11 22:23:09','2006-02-15 22:15:03'),(7136,264,1,6395,'2.99','2005-07-11 22:29:29','2006-02-15 22:15:03'),(7137,264,1,6543,'0.99','2005-07-12 04:54:32','2006-02-15 22:15:03'),(7138,264,1,7006,'8.99','2005-07-27 01:42:20','2006-02-15 22:15:03'),(7139,264,2,9380,'2.99','2005-07-30 19:17:31','2006-02-15 22:15:03'),(7140,264,2,9515,'0.99','2005-07-31 00:35:05','2006-02-15 22:15:03'),(7141,264,1,9861,'5.99','2005-07-31 13:04:14','2006-02-15 22:15:03'),(7142,264,1,9932,'5.99','2005-07-31 15:19:48','2006-02-15 22:15:03'),(7143,264,2,10792,'2.99','2005-08-01 21:44:24','2006-02-15 22:15:03'),(7144,264,1,11527,'3.99','2005-08-17 00:25:06','2006-02-15 22:15:03'),(7145,264,2,11533,'0.99','2005-08-17 00:34:53','2006-02-15 22:15:03'),(7146,264,1,11539,'2.99','2005-08-17 00:45:41','2006-02-15 22:15:03'),(7147,264,1,12518,'4.99','2005-08-18 13:41:32','2006-02-15 22:15:03'),(7148,264,2,13590,'2.99','2005-08-20 05:48:59','2006-02-15 22:15:03'),(7149,264,1,13664,'5.99','2005-08-20 08:18:36','2006-02-15 22:15:03'),(7150,264,1,15595,'4.99','2005-08-23 06:19:12','2006-02-15 22:15:03'),(7151,264,2,14243,'2.99','2006-02-14 15:16:03','2006-02-15 22:15:03'),(7152,265,2,74,'0.99','2005-05-25 11:09:48','2006-02-15 22:15:03'),(7153,265,2,2027,'7.99','2005-06-17 13:06:56','2006-02-15 22:15:03'),(7154,265,2,2562,'4.99','2005-06-19 03:15:05','2006-02-15 22:15:03'),(7155,265,1,2598,'2.99','2005-06-19 05:59:57','2006-02-15 22:15:03'),(7156,265,1,3823,'2.99','2005-07-06 15:41:27','2006-02-15 22:15:03'),(7157,265,1,4610,'0.99','2005-07-08 07:28:05','2006-02-15 22:15:03'),(7158,265,1,4797,'2.99','2005-07-08 16:39:05','2006-02-15 22:15:03'),(7159,265,2,5029,'7.99','2005-07-09 02:35:32','2006-02-15 22:15:03'),(7160,265,1,5417,'4.99','2005-07-09 20:34:09','2006-02-15 22:15:04'),(7161,265,1,5710,'9.99','2005-07-10 10:32:52','2006-02-15 22:15:04'),(7162,265,1,6068,'4.99','2005-07-11 04:41:09','2006-02-15 22:15:04'),(7163,265,2,6371,'4.99','2005-07-11 21:31:51','2006-02-15 22:15:04'),(7164,265,2,6553,'5.99','2005-07-12 05:06:39','2006-02-15 22:15:04'),(7165,265,2,6921,'6.99','2005-07-12 22:39:03','2006-02-15 22:15:04'),(7166,265,2,7414,'1.99','2005-07-27 16:46:07','2006-02-15 22:15:04'),(7167,265,1,7704,'2.99','2005-07-28 04:02:13','2006-02-15 22:15:04'),(7168,265,1,8278,'5.99','2005-07-29 01:42:55','2006-02-15 22:15:04'),(7169,265,2,8489,'2.99','2005-07-29 08:58:03','2006-02-15 22:15:04'),(7170,265,2,8665,'0.99','2005-07-29 15:39:29','2006-02-15 22:15:04'),(7171,265,1,9416,'2.99','2005-07-30 20:52:45','2006-02-15 22:15:04'),(7172,265,2,10592,'3.99','2005-08-01 14:13:00','2006-02-15 22:15:04'),(7173,265,2,11000,'3.99','2005-08-02 04:56:14','2006-02-15 22:15:04'),(7174,265,1,12207,'1.99','2005-08-18 02:24:07','2006-02-15 22:15:04'),(7175,265,2,12346,'4.99','2005-08-18 07:17:55','2006-02-15 22:15:04'),(7176,265,2,13700,'8.99','2005-08-20 09:26:17','2006-02-15 22:15:04'),(7177,265,2,14125,'4.99','2005-08-21 01:32:16','2006-02-15 22:15:04'),(7178,265,1,14547,'6.99','2005-08-21 15:51:38','2006-02-15 22:15:04'),(7179,265,2,14556,'6.99','2005-08-21 16:03:27','2006-02-15 22:15:04'),(7180,265,1,14943,'2.99','2005-08-22 05:59:59','2006-02-15 22:15:04'),(7181,266,1,86,'1.99','2005-05-25 13:36:12','2006-02-15 22:15:04'),(7182,266,2,651,'2.99','2005-05-28 19:46:50','2006-02-15 22:15:04'),(7183,266,2,1280,'5.99','2005-06-15 08:16:06','2006-02-15 22:15:04'),(7184,266,2,2065,'4.99','2005-06-17 16:03:46','2006-02-15 22:15:04'),(7185,266,2,3002,'4.99','2005-06-20 09:56:12','2006-02-15 22:15:04'),(7186,266,1,3059,'4.99','2005-06-20 13:38:41','2006-02-15 22:15:04'),(7187,266,2,3585,'0.99','2005-07-06 04:22:36','2006-02-15 22:15:04'),(7188,266,2,5362,'5.99','2005-07-09 18:16:08','2006-02-15 22:15:05'),(7189,266,1,5577,'4.99','2005-07-10 03:58:40','2006-02-15 22:15:05'),(7190,266,1,8492,'2.99','2005-07-29 09:04:17','2006-02-15 22:15:05'),(7191,266,2,9109,'5.99','2005-07-30 08:58:24','2006-02-15 22:15:05'),(7192,266,2,10747,'4.99','2005-08-01 19:59:41','2006-02-15 22:15:05'),(7193,266,2,10910,'5.99','2005-08-02 01:54:34','2006-02-15 22:15:05'),(7194,266,2,11233,'5.99','2005-08-02 13:06:11','2006-02-15 22:15:05'),(7195,266,1,11321,'4.99','2005-08-02 16:15:07','2006-02-15 22:15:05'),(7196,266,2,11626,'0.99','2005-08-17 04:25:42','2006-02-15 22:15:05'),(7197,266,1,11726,'0.99','2005-08-17 08:11:10','2006-02-15 22:15:05'),(7198,266,1,12255,'4.99','2005-08-18 04:07:20','2006-02-15 22:15:05'),(7199,266,2,12378,'0.99','2005-08-18 08:26:13','2006-02-15 22:15:05'),(7200,266,1,12405,'6.99','2005-08-18 09:37:30','2006-02-15 22:15:05'),(7201,266,1,12715,'4.99','2005-08-18 21:09:38','2006-02-15 22:15:05'),(7202,266,1,13468,'8.99','2005-08-20 00:56:44','2006-02-15 22:15:05'),(7203,266,1,13556,'6.99','2005-08-20 04:10:26','2006-02-15 22:15:05'),(7204,266,1,14080,'1.99','2005-08-20 23:29:50','2006-02-15 22:15:05'),(7205,266,1,14492,'2.99','2005-08-21 13:59:08','2006-02-15 22:15:05'),(7206,266,1,14877,'0.99','2005-08-22 03:39:56','2006-02-15 22:15:05'),(7207,266,1,15181,'2.99','2005-08-22 15:46:20','2006-02-15 22:15:05'),(7208,266,1,15346,'4.99','2005-08-22 21:06:00','2006-02-15 22:15:05'),(7209,267,2,91,'6.99','2005-05-25 14:57:22','2006-02-15 22:15:05'),(7210,267,1,436,'4.99','2005-05-27 17:21:04','2006-02-15 22:15:05'),(7211,267,2,1030,'4.99','2005-05-31 04:06:47','2006-02-15 22:15:05'),(7212,267,2,1257,'4.99','2005-06-15 06:15:36','2006-02-15 22:15:05'),(7213,267,2,1349,'4.99','2005-06-15 12:49:02','2006-02-15 22:15:05'),(7214,267,2,2265,'2.99','2005-06-18 06:03:27','2006-02-15 22:15:05'),(7215,267,2,2578,'7.99','2005-06-19 04:40:06','2006-02-15 22:15:05'),(7216,267,1,2582,'6.99','2005-06-19 04:56:27','2006-02-15 22:15:05'),(7217,267,2,2699,'2.99','2005-06-19 13:29:28','2006-02-15 22:15:06'),(7218,267,2,2754,'4.99','2005-06-19 16:55:59','2006-02-15 22:15:06'),(7219,267,1,2877,'1.99','2005-06-20 01:07:16','2006-02-15 22:15:06'),(7220,267,2,3090,'0.99','2005-06-20 16:00:19','2006-02-15 22:15:06'),(7221,267,1,3817,'2.99','2005-07-06 15:31:45','2006-02-15 22:15:06'),(7222,267,1,5340,'6.99','2005-07-09 17:11:35','2006-02-15 22:15:06'),(7223,267,1,6070,'0.99','2005-07-11 04:47:42','2006-02-15 22:15:06'),(7224,267,1,6706,'3.99','2005-07-12 12:59:16','2006-02-15 22:15:06'),(7225,267,1,8190,'4.99','2005-07-28 22:47:06','2006-02-15 22:15:06'),(7226,267,1,8572,'1.99','2005-07-29 11:51:24','2006-02-15 22:15:06'),(7227,267,2,9059,'3.99','2005-07-30 07:18:44','2006-02-15 22:15:06'),(7228,267,1,9308,'6.99','2005-07-30 16:53:21','2006-02-15 22:15:06'),(7229,267,2,9403,'4.99','2005-07-30 20:18:53','2006-02-15 22:15:06'),(7230,267,2,9807,'2.99','2005-07-31 11:13:52','2006-02-15 22:15:06'),(7231,267,2,10048,'4.99','2005-07-31 19:08:56','2006-02-15 22:15:06'),(7232,267,1,10343,'2.99','2005-08-01 05:15:47','2006-02-15 22:15:06'),(7233,267,2,11373,'0.99','2005-08-02 18:14:12','2006-02-15 22:15:06'),(7234,267,1,11690,'6.99','2005-08-17 06:44:22','2006-02-15 22:15:06'),(7235,267,1,12320,'4.99','2005-08-18 06:26:51','2006-02-15 22:15:06'),(7236,267,1,12979,'4.99','2005-08-19 07:00:35','2006-02-15 22:15:06'),(7237,267,2,13236,'9.99','2005-08-19 16:18:24','2006-02-15 22:15:06'),(7238,267,1,14131,'5.99','2005-08-21 01:43:40','2006-02-15 22:15:06'),(7239,267,2,15020,'3.99','2005-08-22 08:54:12','2006-02-15 22:15:06'),(7240,267,1,15208,'3.99','2005-08-22 16:35:47','2006-02-15 22:15:06'),(7241,267,1,15768,'0.99','2005-08-23 13:14:47','2006-02-15 22:15:06'),(7242,267,1,15903,'3.99','2005-08-23 17:30:40','2006-02-15 22:15:06'),(7243,267,2,12066,'7.98','2006-02-14 15:16:03','2006-02-15 22:15:06'),(7244,267,2,13713,'0.00','2006-02-14 15:16:03','2006-02-15 22:15:07'),(7245,268,1,1394,'2.99','2005-06-15 16:17:21','2006-02-15 22:15:07'),(7246,268,2,1450,'4.99','2005-06-15 19:22:08','2006-02-15 22:15:07'),(7247,268,2,1551,'3.99','2005-06-16 02:01:15','2006-02-15 22:15:07'),(7248,268,1,2133,'0.99','2005-06-17 21:10:05','2006-02-15 22:15:07'),(7249,268,2,2324,'4.99','2005-06-18 10:00:33','2006-02-15 22:15:07'),(7250,268,2,2858,'2.99','2005-06-19 23:17:11','2006-02-15 22:15:07'),(7251,268,1,3066,'3.99','2005-06-20 13:55:41','2006-02-15 22:15:07'),(7252,268,1,3361,'1.99','2005-06-21 12:14:23','2006-02-15 22:15:07'),(7253,268,2,3670,'4.99','2005-07-06 08:56:43','2006-02-15 22:15:07'),(7254,268,2,4626,'4.99','2005-07-08 08:18:21','2006-02-15 22:15:07'),(7255,268,1,5039,'7.99','2005-07-09 03:14:45','2006-02-15 22:15:07'),(7256,268,2,5671,'2.99','2005-07-10 08:18:22','2006-02-15 22:15:07'),(7257,268,2,5793,'2.99','2005-07-10 14:33:00','2006-02-15 22:15:07'),(7258,268,2,5888,'6.99','2005-07-10 19:52:17','2006-02-15 22:15:07'),(7259,268,1,6120,'3.99','2005-07-11 07:49:53','2006-02-15 22:15:07'),(7260,268,2,6489,'1.99','2005-07-12 02:22:46','2006-02-15 22:15:07'),(7261,268,1,8931,'2.99','2005-07-30 02:30:07','2006-02-15 22:15:07'),(7262,268,2,9436,'7.99','2005-07-30 21:33:01','2006-02-15 22:15:07'),(7263,268,2,9531,'3.99','2005-07-31 01:11:53','2006-02-15 22:15:07'),(7264,268,1,10040,'1.99','2005-07-31 18:54:15','2006-02-15 22:15:07'),(7265,268,2,11462,'7.99','2005-08-02 21:36:46','2006-02-15 22:15:07'),(7266,268,2,11828,'6.99','2005-08-17 12:48:28','2006-02-15 22:15:07'),(7267,268,2,12007,'2.99','2005-08-17 19:10:34','2006-02-15 22:15:07'),(7268,268,2,12694,'4.99','2005-08-18 20:10:39','2006-02-15 22:15:07'),(7269,268,2,13880,'5.99','2005-08-20 15:18:20','2006-02-15 22:15:07'),(7270,268,2,14249,'4.99','2005-08-21 05:38:05','2006-02-15 22:15:07'),(7271,268,2,14373,'4.99','2005-08-21 09:44:53','2006-02-15 22:15:08'),(7272,268,1,14874,'0.99','2005-08-22 03:32:05','2006-02-15 22:15:08'),(7273,268,2,15183,'2.99','2005-08-22 15:49:54','2006-02-15 22:15:08'),(7274,269,2,7,'1.99','2005-05-24 23:11:53','2006-02-15 22:15:08'),(7275,269,1,98,'0.99','2005-05-25 16:48:24','2006-02-15 22:15:08'),(7276,269,2,678,'6.99','2005-05-28 23:15:48','2006-02-15 22:15:08'),(7277,269,2,703,'0.99','2005-05-29 02:29:36','2006-02-15 22:15:08'),(7278,269,1,750,'4.99','2005-05-29 09:41:40','2006-02-15 22:15:08'),(7279,269,2,1099,'2.99','2005-05-31 13:54:48','2006-02-15 22:15:08'),(7280,269,1,1334,'3.99','2005-06-15 11:43:09','2006-02-15 22:15:08'),(7281,269,2,1909,'2.99','2005-06-17 05:11:04','2006-02-15 22:15:08'),(7282,269,2,2493,'6.99','2005-06-18 22:12:09','2006-02-15 22:15:08'),(7283,269,1,4125,'9.99','2005-07-07 07:20:29','2006-02-15 22:15:08'),(7284,269,2,4804,'0.99','2005-07-08 16:57:30','2006-02-15 22:15:08'),(7285,269,2,4880,'6.99','2005-07-08 19:36:17','2006-02-15 22:15:08'),(7286,269,1,6440,'2.99','2005-07-12 00:25:04','2006-02-15 22:15:08'),(7287,269,1,6626,'5.99','2005-07-12 09:16:24','2006-02-15 22:15:08'),(7288,269,2,6804,'4.99','2005-07-12 17:22:06','2006-02-15 22:15:08'),(7289,269,1,7032,'4.99','2005-07-27 03:03:09','2006-02-15 22:15:08'),(7290,269,1,7537,'6.99','2005-07-27 21:36:09','2006-02-15 22:15:08'),(7291,269,1,7972,'2.99','2005-07-28 14:07:46','2006-02-15 22:15:08'),(7292,269,2,10566,'2.99','2005-08-01 13:12:11','2006-02-15 22:15:08'),(7293,269,1,10908,'4.99','2005-08-02 01:53:06','2006-02-15 22:15:08'),(7294,269,1,11014,'4.99','2005-08-02 05:12:22','2006-02-15 22:15:08'),(7295,269,1,11915,'3.99','2005-08-17 16:05:28','2006-02-15 22:15:08'),(7296,269,1,12344,'4.99','2005-08-18 07:15:19','2006-02-15 22:15:09'),(7297,269,2,13142,'5.99','2005-08-19 12:42:28','2006-02-15 22:15:09'),(7298,269,2,13759,'2.99','2005-08-20 11:24:48','2006-02-15 22:15:09'),(7299,269,1,14266,'4.99','2005-08-21 06:20:51','2006-02-15 22:15:09'),(7300,269,2,14693,'6.99','2005-08-21 20:44:19','2006-02-15 22:15:09'),(7301,269,2,15788,'2.99','2005-08-23 13:54:39','2006-02-15 22:15:09'),(7302,269,1,13025,'3.98','2006-02-14 15:16:03','2006-02-15 22:15:09'),(7303,269,2,12610,'0.00','2006-02-14 15:16:03','2006-02-15 22:15:09'),(7304,270,1,193,'1.99','2005-05-26 06:41:48','2006-02-15 22:15:09'),(7305,270,1,1040,'4.99','2005-05-31 05:35:16','2006-02-15 22:15:09'),(7306,270,1,1345,'4.99','2005-06-15 12:32:13','2006-02-15 22:15:09'),(7307,270,1,1896,'6.99','2005-06-17 04:25:46','2006-02-15 22:15:09'),(7308,270,1,2115,'3.99','2005-06-17 20:02:16','2006-02-15 22:15:09'),(7309,270,2,3164,'5.99','2005-06-20 21:29:00','2006-02-15 22:15:09'),(7310,270,1,3501,'3.99','2005-07-06 00:11:28','2006-02-15 22:15:09'),(7311,270,1,3987,'9.99','2005-07-06 23:28:24','2006-02-15 22:15:09'),(7312,270,2,5533,'0.99','2005-07-10 02:19:28','2006-02-15 22:15:09'),(7313,270,2,6520,'4.99','2005-07-12 04:05:16','2006-02-15 22:15:09'),(7314,270,1,8355,'2.99','2005-07-29 04:57:43','2006-02-15 22:15:09'),(7315,270,2,8618,'3.99','2005-07-29 13:48:20','2006-02-15 22:15:09'),(7316,270,1,10069,'3.99','2005-07-31 19:43:18','2006-02-15 22:15:09'),(7317,270,1,10461,'7.99','2005-08-01 09:32:53','2006-02-15 22:15:09'),(7318,270,2,10579,'5.99','2005-08-01 13:48:22','2006-02-15 22:15:09'),(7319,270,2,10648,'4.99','2005-08-01 16:08:52','2006-02-15 22:15:09'),(7320,270,1,11389,'2.99','2005-08-02 18:39:12','2006-02-15 22:15:09'),(7321,270,1,11810,'0.99','2005-08-17 11:56:48','2006-02-15 22:15:09'),(7322,270,2,11841,'2.99','2005-08-17 13:12:20','2006-02-15 22:15:09'),(7323,270,1,11917,'2.99','2005-08-17 16:08:17','2006-02-15 22:15:09'),(7324,270,1,12192,'2.99','2005-08-18 02:01:40','2006-02-15 22:15:10'),(7325,270,1,12442,'2.99','2005-08-18 10:50:07','2006-02-15 22:15:10'),(7326,270,2,13945,'1.99','2005-08-20 17:43:56','2006-02-15 22:15:10'),(7327,270,1,14618,'0.99','2005-08-21 18:09:51','2006-02-15 22:15:10'),(7328,270,2,15620,'6.99','2005-08-23 07:10:22','2006-02-15 22:15:10'),(7329,271,1,1096,'8.99','2005-05-31 13:30:49','2006-02-15 22:15:10'),(7330,271,2,1852,'2.99','2005-06-17 00:38:20','2006-02-15 22:15:10'),(7331,271,1,3640,'1.99','2005-07-06 07:12:26','2006-02-15 22:15:10'),(7332,271,2,4545,'2.99','2005-07-08 04:17:47','2006-02-15 22:15:10'),(7333,271,2,5878,'1.99','2005-07-10 19:09:57','2006-02-15 22:15:10'),(7334,271,1,5922,'2.99','2005-07-10 21:36:53','2006-02-15 22:15:10'),(7335,271,1,6024,'2.99','2005-07-11 02:16:47','2006-02-15 22:15:10'),(7336,271,1,7618,'3.99','2005-07-28 00:24:14','2006-02-15 22:15:10'),(7337,271,1,8592,'0.99','2005-07-29 12:33:58','2006-02-15 22:15:10'),(7338,271,1,9821,'4.99','2005-07-31 11:47:54','2006-02-15 22:15:10'),(7339,271,2,10143,'7.99','2005-07-31 22:11:43','2006-02-15 22:15:10'),(7340,271,2,10310,'4.99','2005-08-01 04:24:47','2006-02-15 22:15:10'),(7341,271,1,10599,'3.99','2005-08-01 14:23:58','2006-02-15 22:15:10'),(7342,271,1,11431,'2.99','2005-08-02 20:05:16','2006-02-15 22:15:10'),(7343,271,1,12219,'4.99','2005-08-18 02:49:54','2006-02-15 22:15:10'),(7344,271,2,14234,'0.99','2005-08-21 05:07:12','2006-02-15 22:15:10'),(7345,271,2,14355,'4.99','2005-08-21 09:08:29','2006-02-15 22:15:10'),(7346,271,1,15244,'2.99','2005-08-22 17:48:42','2006-02-15 22:15:10'),(7347,272,1,33,'0.99','2005-05-25 04:18:51','2006-02-15 22:15:10'),(7348,272,1,405,'6.99','2005-05-27 13:32:39','2006-02-15 22:15:10'),(7349,272,1,1041,'6.99','2005-05-31 05:46:23','2006-02-15 22:15:10'),(7350,272,1,1072,'0.99','2005-05-31 09:52:50','2006-02-15 22:15:10'),(7351,272,2,1604,'4.99','2005-06-16 06:14:25','2006-02-15 22:15:10'),(7352,272,2,2546,'5.99','2005-06-19 02:39:39','2006-02-15 22:15:11'),(7353,272,1,3323,'5.99','2005-06-21 08:45:33','2006-02-15 22:15:11'),(7354,272,2,5047,'3.99','2005-07-09 03:44:15','2006-02-15 22:15:11'),(7355,272,2,5158,'2.99','2005-07-09 08:53:09','2006-02-15 22:15:11'),(7356,272,2,7300,'7.99','2005-07-27 12:50:17','2006-02-15 22:15:11'),(7357,272,2,7658,'2.99','2005-07-28 02:09:12','2006-02-15 22:15:11'),(7358,272,1,8248,'7.99','2005-07-29 00:41:56','2006-02-15 22:15:11'),(7359,272,2,9787,'10.99','2005-07-31 10:26:19','2006-02-15 22:15:11'),(7360,272,1,10736,'2.99','2005-08-01 19:30:21','2006-02-15 22:15:11'),(7361,272,2,11003,'2.99','2005-08-02 05:03:05','2006-02-15 22:15:11'),(7362,272,2,11597,'8.99','2005-08-17 03:02:56','2006-02-15 22:15:11'),(7363,272,1,11881,'0.99','2005-08-17 14:31:56','2006-02-15 22:15:11'),(7364,272,2,12006,'6.99','2005-08-17 19:09:12','2006-02-15 22:15:11'),(7365,272,2,13274,'2.99','2005-08-19 17:50:03','2006-02-15 22:15:11'),(7366,272,1,13903,'2.99','2005-08-20 16:07:55','2006-02-15 22:15:11'),(7367,273,2,122,'3.99','2005-05-25 19:46:21','2006-02-15 22:15:11'),(7368,273,2,980,'0.99','2005-05-30 21:45:19','2006-02-15 22:15:11'),(7369,273,2,1391,'6.99','2005-06-15 16:11:21','2006-02-15 22:15:11'),(7370,273,2,1747,'6.99','2005-06-16 16:53:33','2006-02-15 22:15:11'),(7371,273,2,1765,'4.99','2005-06-16 17:56:10','2006-02-15 22:15:11'),(7372,273,1,2301,'1.99','2005-06-18 08:24:03','2006-02-15 22:15:11'),(7373,273,1,3202,'0.99','2005-06-21 00:33:47','2006-02-15 22:15:11'),(7374,273,2,3556,'2.99','2005-07-06 02:46:13','2006-02-15 22:15:11'),(7375,273,1,4937,'5.99','2005-07-08 22:29:59','2006-02-15 22:15:11'),(7376,273,1,5256,'7.99','2005-07-09 13:55:45','2006-02-15 22:15:12'),(7377,273,2,5435,'7.99','2005-07-09 21:28:07','2006-02-15 22:15:12'),(7378,273,1,5605,'2.99','2005-07-10 05:06:45','2006-02-15 22:15:12'),(7379,273,1,6592,'8.99','2005-07-12 07:19:35','2006-02-15 22:15:12'),(7380,273,1,6635,'1.99','2005-07-12 09:47:58','2006-02-15 22:15:12'),(7381,273,2,6696,'2.99','2005-07-12 12:44:04','2006-02-15 22:15:12'),(7382,273,1,6717,'5.99','2005-07-12 13:35:02','2006-02-15 22:15:12'),(7383,273,1,8449,'2.99','2005-07-29 07:42:25','2006-02-15 22:15:12'),(7384,273,1,9186,'4.99','2005-07-30 12:13:48','2006-02-15 22:15:12'),(7385,273,2,9285,'5.99','2005-07-30 15:26:08','2006-02-15 22:15:12'),(7386,273,2,9391,'0.99','2005-07-30 19:48:41','2006-02-15 22:15:12'),(7387,273,2,9693,'3.99','2005-07-31 07:11:50','2006-02-15 22:15:12'),(7388,273,2,9729,'0.99','2005-07-31 08:43:43','2006-02-15 22:15:12'),(7389,273,1,10272,'8.99','2005-08-01 03:14:34','2006-02-15 22:15:12'),(7390,273,1,10753,'3.99','2005-08-01 20:09:24','2006-02-15 22:15:12'),(7391,273,1,10768,'6.99','2005-08-01 20:39:32','2006-02-15 22:15:12'),(7392,273,1,11282,'4.99','2005-08-02 14:35:03','2006-02-15 22:15:12'),(7393,273,2,11509,'4.99','2005-08-16 23:29:53','2006-02-15 22:15:12'),(7394,273,1,12692,'0.99','2005-08-18 20:09:19','2006-02-15 22:15:12'),(7395,273,2,13738,'4.99','2005-08-20 10:42:42','2006-02-15 22:15:12'),(7396,273,1,13955,'5.99','2005-08-20 18:05:12','2006-02-15 22:15:12'),(7397,273,2,14092,'4.99','2005-08-21 00:14:32','2006-02-15 22:15:12'),(7398,273,2,14558,'2.99','2005-08-21 16:10:50','2006-02-15 22:15:12'),(7399,273,2,14911,'2.99','2005-08-22 04:51:42','2006-02-15 22:15:12'),(7400,273,2,15372,'2.99','2005-08-22 21:59:51','2006-02-15 22:15:12'),(7401,273,1,15760,'6.99','2005-08-23 12:50:00','2006-02-15 22:15:12'),(7402,274,1,147,'2.99','2005-05-26 00:17:50','2006-02-15 22:15:12'),(7403,274,1,208,'4.99','2005-05-26 08:10:22','2006-02-15 22:15:13'),(7404,274,2,301,'2.99','2005-05-26 21:06:14','2006-02-15 22:15:13'),(7405,274,1,394,'5.99','2005-05-27 11:26:11','2006-02-15 22:15:13'),(7406,274,2,474,'2.99','2005-05-27 22:11:56','2006-02-15 22:15:13'),(7407,274,1,892,'4.99','2005-05-30 08:02:56','2006-02-15 22:15:13'),(7408,274,1,2098,'0.99','2005-06-17 18:42:09','2006-02-15 22:15:13'),(7409,274,2,3291,'9.99','2005-06-21 06:55:36','2006-02-15 22:15:13'),(7410,274,2,3532,'5.99','2005-07-06 01:24:38','2006-02-15 22:15:13'),(7411,274,1,4147,'2.99','2005-07-07 08:32:12','2006-02-15 22:15:13'),(7412,274,2,4582,'2.99','2005-07-08 06:09:09','2006-02-15 22:15:13'),(7413,274,2,6389,'3.99','2005-07-11 22:18:20','2006-02-15 22:15:13'),(7414,274,2,8259,'0.99','2005-07-29 01:05:16','2006-02-15 22:15:13'),(7415,274,2,8406,'5.99','2005-07-29 06:34:45','2006-02-15 22:15:13'),(7416,274,2,8517,'7.99','2005-07-29 10:00:48','2006-02-15 22:15:13'),(7417,274,1,9331,'4.99','2005-07-30 17:46:50','2006-02-15 22:15:13'),(7418,274,1,9677,'4.99','2005-07-31 06:39:45','2006-02-15 22:15:13'),(7419,274,2,10059,'4.99','2005-07-31 19:20:49','2006-02-15 22:15:13'),(7420,274,1,10790,'1.99','2005-08-01 21:38:37','2006-02-15 22:15:13'),(7421,274,2,10855,'0.99','2005-08-02 00:06:37','2006-02-15 22:15:13'),(7422,274,1,11058,'3.99','2005-08-02 06:38:44','2006-02-15 22:15:13'),(7423,274,2,11363,'2.99','2005-08-02 17:48:39','2006-02-15 22:15:13'),(7424,274,1,12321,'3.99','2005-08-18 06:27:05','2006-02-15 22:15:13'),(7425,274,1,13103,'2.99','2005-08-19 11:05:51','2006-02-15 22:15:13'),(7426,274,2,13129,'8.99','2005-08-19 12:05:04','2006-02-15 22:15:13'),(7427,274,1,13549,'8.99','2005-08-20 03:58:41','2006-02-15 22:15:13'),(7428,274,1,14012,'0.99','2005-08-20 20:42:12','2006-02-15 22:15:13'),(7429,274,1,14066,'7.99','2005-08-20 22:45:58','2006-02-15 22:15:13'),(7430,274,2,14164,'7.99','2005-08-21 02:58:02','2006-02-15 22:15:14'),(7431,274,1,14388,'4.99','2005-08-21 10:15:13','2006-02-15 22:15:14'),(7432,274,2,15143,'2.99','2005-08-22 13:46:24','2006-02-15 22:15:14'),(7433,274,1,15260,'2.99','2005-08-22 18:24:16','2006-02-15 22:15:14'),(7434,274,2,15328,'2.99','2005-08-22 20:31:38','2006-02-15 22:15:14'),(7435,274,2,15819,'3.99','2005-08-23 15:01:54','2006-02-15 22:15:14'),(7436,274,1,13486,'0.99','2006-02-14 15:16:03','2006-02-15 22:15:14'),(7437,275,2,336,'2.99','2005-05-27 03:15:23','2006-02-15 22:15:14'),(7438,275,2,1797,'3.99','2005-06-16 20:13:03','2006-02-15 22:15:14'),(7439,275,2,2414,'0.99','2005-06-18 17:01:55','2006-02-15 22:15:14'),(7440,275,1,2646,'4.99','2005-06-19 09:56:01','2006-02-15 22:15:14'),(7441,275,1,3355,'2.99','2005-06-21 11:30:47','2006-02-15 22:15:14'),(7442,275,2,4396,'0.99','2005-07-07 21:14:19','2006-02-15 22:15:14'),(7443,275,1,4634,'0.99','2005-07-08 08:40:02','2006-02-15 22:15:14'),(7444,275,2,4912,'9.99','2005-07-08 21:26:11','2006-02-15 22:15:14'),(7445,275,2,6301,'5.99','2005-07-11 17:54:09','2006-02-15 22:15:14'),(7446,275,2,6856,'0.99','2005-07-12 19:50:16','2006-02-15 22:15:14'),(7447,275,1,7553,'2.99','2005-07-27 22:11:36','2006-02-15 22:15:14'),(7448,275,2,7596,'4.99','2005-07-27 23:33:57','2006-02-15 22:15:14'),(7449,275,1,8746,'2.99','2005-07-29 19:03:15','2006-02-15 22:15:15'),(7450,275,2,9258,'2.99','2005-07-30 14:31:31','2006-02-15 22:15:15'),(7451,275,1,10479,'6.99','2005-08-01 10:11:25','2006-02-15 22:15:15'),(7452,275,2,11309,'1.99','2005-08-02 15:50:55','2006-02-15 22:15:15'),(7453,275,1,11610,'4.99','2005-08-17 03:43:37','2006-02-15 22:15:15'),(7454,275,2,12589,'5.99','2005-08-18 16:06:31','2006-02-15 22:15:15'),(7455,275,1,12606,'1.99','2005-08-18 17:02:21','2006-02-15 22:15:15'),(7456,275,1,13037,'3.99','2005-08-19 08:53:57','2006-02-15 22:15:15'),(7457,275,2,13860,'2.99','2005-08-20 14:55:09','2006-02-15 22:15:15'),(7458,275,2,13865,'1.99','2005-08-20 15:04:09','2006-02-15 22:15:15'),(7459,275,2,13902,'0.99','2005-08-20 16:07:08','2006-02-15 22:15:15'),(7460,275,2,14063,'0.99','2005-08-20 22:36:40','2006-02-15 22:15:15'),(7461,275,1,14187,'5.99','2005-08-21 03:32:03','2006-02-15 22:15:15'),(7462,275,1,14296,'2.99','2005-08-21 07:13:23','2006-02-15 22:15:15'),(7463,275,2,14483,'5.99','2005-08-21 13:43:59','2006-02-15 22:15:15'),(7464,275,2,14727,'4.99','2005-08-21 22:12:45','2006-02-15 22:15:15'),(7465,275,2,15269,'2.99','2005-08-22 18:39:44','2006-02-15 22:15:15'),(7466,275,2,15496,'3.99','2005-08-23 02:30:23','2006-02-15 22:15:15'),(7467,276,1,736,'3.99','2005-05-29 08:10:07','2006-02-15 22:15:15'),(7468,276,1,860,'10.99','2005-05-30 02:45:16','2006-02-15 22:15:15'),(7469,276,1,1352,'0.99','2005-06-15 12:58:27','2006-02-15 22:15:15'),(7470,276,2,2763,'4.99','2005-06-19 17:23:34','2006-02-15 22:15:16'),(7471,276,2,3064,'6.99','2005-06-20 13:53:13','2006-02-15 22:15:16'),(7472,276,2,3714,'2.99','2005-07-06 10:51:28','2006-02-15 22:15:16'),(7473,276,1,4715,'0.99','2005-07-08 12:15:37','2006-02-15 22:15:16'),(7474,276,2,5186,'4.99','2005-07-09 10:18:40','2006-02-15 22:15:16'),(7475,276,2,5246,'4.99','2005-07-09 13:25:18','2006-02-15 22:15:16'),(7476,276,2,7282,'5.99','2005-07-27 12:00:19','2006-02-15 22:15:16'),(7477,276,2,7842,'2.99','2005-07-28 09:10:06','2006-02-15 22:15:16'),(7478,276,1,9070,'0.99','2005-07-30 07:40:39','2006-02-15 22:15:16'),(7479,276,1,9080,'1.99','2005-07-30 08:02:39','2006-02-15 22:15:16'),(7480,276,1,9102,'4.99','2005-07-30 08:48:20','2006-02-15 22:15:16'),(7481,276,1,9229,'8.99','2005-07-30 13:38:17','2006-02-15 22:15:16'),(7482,276,2,10149,'5.99','2005-07-31 22:20:46','2006-02-15 22:15:16'),(7483,276,2,10691,'0.99','2005-08-01 18:09:53','2006-02-15 22:15:16'),(7484,276,1,10763,'2.99','2005-08-01 20:32:27','2006-02-15 22:15:16'),(7485,276,2,11085,'2.99','2005-08-02 07:36:44','2006-02-15 22:15:16'),(7486,276,1,11636,'4.99','2005-08-17 04:36:31','2006-02-15 22:15:16'),(7487,276,2,11961,'3.99','2005-08-17 17:28:01','2006-02-15 22:15:16'),(7488,276,2,12178,'5.99','2005-08-18 01:17:32','2006-02-15 22:15:16'),(7489,276,2,12251,'4.99','2005-08-18 03:59:02','2006-02-15 22:15:16'),(7490,276,1,12650,'4.99','2005-08-18 18:33:20','2006-02-15 22:15:16'),(7491,276,1,14000,'4.99','2005-08-20 20:06:05','2006-02-15 22:15:16'),(7492,276,2,15718,'2.99','2005-08-23 11:05:17','2006-02-15 22:15:16'),(7493,276,1,15769,'3.99','2005-08-23 13:16:15','2006-02-15 22:15:16'),(7494,276,2,15923,'4.99','2005-08-23 18:08:19','2006-02-15 22:15:17'),(7495,277,2,308,'6.99','2005-05-26 22:01:39','2006-02-15 22:15:17'),(7496,277,1,1331,'2.99','2005-06-15 11:34:33','2006-02-15 22:15:17'),(7497,277,2,1717,'2.99','2005-06-16 14:47:16','2006-02-15 22:15:17'),(7498,277,2,2162,'3.99','2005-06-17 23:45:47','2006-02-15 22:15:17'),(7499,277,2,2723,'4.99','2005-06-19 14:55:23','2006-02-15 22:15:17'),(7500,277,1,3247,'5.99','2005-06-21 03:12:15','2006-02-15 22:15:17'),(7501,277,2,3274,'4.99','2005-06-21 05:30:36','2006-02-15 22:15:17'),(7502,277,1,3344,'2.99','2005-06-21 10:57:27','2006-02-15 22:15:17'),(7503,277,2,3740,'5.99','2005-07-06 11:55:35','2006-02-15 22:15:17'),(7504,277,2,3897,'2.99','2005-07-06 19:11:43','2006-02-15 22:15:17'),(7505,277,1,4290,'4.99','2005-07-07 15:47:10','2006-02-15 22:15:17'),(7506,277,2,4987,'5.99','2005-07-09 00:45:41','2006-02-15 22:15:17'),(7507,277,1,5861,'0.99','2005-07-10 18:14:22','2006-02-15 22:15:17'),(7508,277,1,5913,'2.99','2005-07-10 20:58:55','2006-02-15 22:15:17'),(7509,277,2,6455,'2.99','2005-07-12 01:01:58','2006-02-15 22:15:17'),(7510,277,1,6487,'5.99','2005-07-12 02:17:00','2006-02-15 22:15:17'),(7511,277,2,7423,'4.99','2005-07-27 17:11:47','2006-02-15 22:15:17'),(7512,277,2,8410,'2.99','2005-07-29 06:41:36','2006-02-15 22:15:17'),(7513,277,2,9669,'4.99','2005-07-31 06:31:36','2006-02-15 22:15:17'),(7514,277,1,9901,'0.99','2005-07-31 14:20:59','2006-02-15 22:15:17'),(7515,277,2,11074,'3.99','2005-08-02 07:21:43','2006-02-15 22:15:17'),(7516,277,2,11162,'4.99','2005-08-02 10:07:54','2006-02-15 22:15:17'),(7517,277,2,11574,'0.99','2005-08-17 01:38:19','2006-02-15 22:15:17'),(7518,277,2,12149,'3.99','2005-08-18 00:13:51','2006-02-15 22:15:17'),(7519,277,1,12458,'5.99','2005-08-18 11:22:53','2006-02-15 22:15:17'),(7520,277,1,13122,'4.99','2005-08-19 11:53:49','2006-02-15 22:15:17'),(7521,277,2,13526,'4.99','2005-08-20 02:58:42','2006-02-15 22:15:18'),(7522,277,1,13714,'4.99','2005-08-20 09:41:09','2006-02-15 22:15:18'),(7523,277,2,14227,'4.99','2005-08-21 04:56:31','2006-02-15 22:15:18'),(7524,277,2,14745,'4.99','2005-08-21 22:53:01','2006-02-15 22:15:18'),(7525,277,1,15008,'10.99','2005-08-22 08:24:32','2006-02-15 22:15:18'),(7526,277,1,15345,'5.99','2005-08-22 21:05:50','2006-02-15 22:15:18'),(7527,278,1,1092,'4.99','2005-05-31 12:15:57','2006-02-15 22:15:18'),(7528,278,2,1387,'0.99','2005-06-15 15:40:56','2006-02-15 22:15:18'),(7529,278,1,1978,'2.99','2005-06-17 09:42:34','2006-02-15 22:15:18'),(7530,278,2,2078,'4.99','2005-06-17 16:48:55','2006-02-15 22:15:18'),(7531,278,1,3453,'2.99','2005-06-21 21:12:11','2006-02-15 22:15:18'),(7532,278,1,3776,'2.99','2005-07-06 13:31:37','2006-02-15 22:15:18'),(7533,278,1,4430,'4.99','2005-07-07 22:35:24','2006-02-15 22:15:18'),(7534,278,2,4866,'8.99','2005-07-08 19:09:59','2006-02-15 22:15:18'),(7535,278,2,6869,'4.99','2005-07-12 20:12:06','2006-02-15 22:15:18'),(7536,278,1,7239,'0.99','2005-07-27 10:20:27','2006-02-15 22:15:18'),(7537,278,2,7834,'0.99','2005-07-28 08:46:43','2006-02-15 22:15:18'),(7538,278,2,8222,'5.99','2005-07-28 23:51:53','2006-02-15 22:15:18'),(7539,278,1,8953,'4.99','2005-07-30 03:21:05','2006-02-15 22:15:18'),(7540,278,2,9448,'2.99','2005-07-30 21:56:13','2006-02-15 22:15:18'),(7541,278,1,10649,'2.99','2005-08-01 16:11:40','2006-02-15 22:15:18'),(7542,278,1,10731,'2.99','2005-08-01 19:21:48','2006-02-15 22:15:18'),(7543,278,2,10849,'3.99','2005-08-01 23:51:00','2006-02-15 22:15:18'),(7544,278,1,11095,'5.99','2005-08-02 08:03:20','2006-02-15 22:15:18'),(7545,278,2,11531,'0.99','2005-08-17 00:30:04','2006-02-15 22:15:18'),(7546,278,1,12787,'0.99','2005-08-19 00:07:58','2006-02-15 22:15:18'),(7547,278,1,13896,'0.99','2005-08-20 15:59:56','2006-02-15 22:15:18'),(7548,278,2,13976,'0.99','2005-08-20 19:02:16','2006-02-15 22:15:19'),(7549,278,1,14268,'2.99','2005-08-21 06:21:24','2006-02-15 22:15:19'),(7550,278,2,14803,'0.99','2005-08-22 00:49:10','2006-02-15 22:15:19'),(7551,278,1,14986,'4.99','2005-08-22 07:37:24','2006-02-15 22:15:19'),(7552,278,1,16019,'4.99','2005-08-23 21:30:45','2006-02-15 22:15:19'),(7553,279,1,979,'2.99','2005-05-30 21:37:11','2006-02-15 22:15:19'),(7554,279,2,1019,'0.99','2005-05-31 03:05:07','2006-02-15 22:15:19'),(7555,279,1,1178,'2.99','2005-06-15 00:36:40','2006-02-15 22:15:19'),(7556,279,1,2147,'4.99','2005-06-17 22:28:13','2006-02-15 22:15:19'),(7557,279,1,3215,'0.99','2005-06-21 01:11:32','2006-02-15 22:15:19'),(7558,279,1,3374,'2.99','2005-06-21 13:36:30','2006-02-15 22:15:19'),(7559,279,1,3375,'4.99','2005-06-21 13:37:18','2006-02-15 22:15:19'),(7560,279,1,4476,'4.99','2005-07-08 00:34:25','2006-02-15 22:15:19'),(7561,279,1,4978,'7.99','2005-07-09 00:22:02','2006-02-15 22:15:19'),(7562,279,2,5248,'2.99','2005-07-09 13:29:44','2006-02-15 22:15:19'),(7563,279,1,5361,'9.99','2005-07-09 18:15:32','2006-02-15 22:15:19'),(7564,279,1,6176,'0.99','2005-07-11 10:48:21','2006-02-15 22:15:19'),(7565,279,1,7947,'2.99','2005-07-28 13:05:50','2006-02-15 22:15:19'),(7566,279,2,8559,'3.99','2005-07-29 11:25:54','2006-02-15 22:15:19'),(7567,279,2,9820,'5.99','2005-07-31 11:46:57','2006-02-15 22:15:19'),(7568,279,2,10177,'2.99','2005-07-31 23:42:33','2006-02-15 22:15:19'),(7569,279,2,11250,'6.99','2005-08-02 13:35:42','2006-02-15 22:15:19'),(7570,279,1,11515,'2.99','2005-08-16 23:54:34','2006-02-15 22:15:19'),(7571,279,1,11703,'4.99','2005-08-17 07:19:29','2006-02-15 22:15:19'),(7572,279,2,12935,'2.99','2005-08-19 05:20:25','2006-02-15 22:15:19'),(7573,279,1,12949,'4.99','2005-08-19 05:55:52','2006-02-15 22:15:19'),(7574,279,1,13105,'7.99','2005-08-19 11:06:16','2006-02-15 22:15:20'),(7575,279,1,13233,'2.99','2005-08-19 16:14:41','2006-02-15 22:15:20'),(7576,279,2,13588,'4.99','2005-08-20 05:47:11','2006-02-15 22:15:20'),(7577,279,2,14206,'2.99','2005-08-21 03:59:26','2006-02-15 22:15:20'),(7578,279,1,14714,'3.99','2005-08-21 21:27:43','2006-02-15 22:15:20'),(7579,279,1,14779,'5.99','2005-08-22 00:00:56','2006-02-15 22:15:20'),(7580,279,1,14789,'4.99','2005-08-22 00:29:39','2006-02-15 22:15:20'),(7581,279,2,15580,'6.99','2005-08-23 05:39:06','2006-02-15 22:15:20'),(7582,279,1,15606,'2.99','2005-08-23 06:50:27','2006-02-15 22:15:20'),(7583,279,2,13538,'4.99','2006-02-14 15:16:03','2006-02-15 22:15:20'),(7584,280,1,1014,'4.99','2005-05-31 02:39:16','2006-02-15 22:15:20'),(7585,280,1,2656,'3.99','2005-06-19 10:42:33','2006-02-15 22:15:20'),(7586,280,2,3009,'4.99','2005-06-20 10:24:44','2006-02-15 22:15:20'),(7587,280,2,3097,'0.99','2005-06-20 16:26:14','2006-02-15 22:15:20'),(7588,280,1,4616,'4.99','2005-07-08 07:48:12','2006-02-15 22:15:20'),(7589,280,2,6851,'0.99','2005-07-12 19:32:14','2006-02-15 22:15:20'),(7590,280,1,7070,'4.99','2005-07-27 04:01:08','2006-02-15 22:15:20'),(7591,280,2,7901,'0.99','2005-07-28 11:12:12','2006-02-15 22:15:20'),(7592,280,2,8319,'0.99','2005-07-29 03:44:52','2006-02-15 22:15:20'),(7593,280,1,8365,'0.99','2005-07-29 05:11:00','2006-02-15 22:15:20'),(7594,280,1,8565,'7.99','2005-07-29 11:35:23','2006-02-15 22:15:20'),(7595,280,2,8695,'6.99','2005-07-29 16:44:55','2006-02-15 22:15:21'),(7596,280,2,8744,'3.99','2005-07-29 18:58:24','2006-02-15 22:15:21'),(7597,280,1,8912,'0.99','2005-07-30 01:31:25','2006-02-15 22:15:21'),(7598,280,2,9103,'0.99','2005-07-30 08:49:26','2006-02-15 22:15:21'),(7599,280,1,10847,'9.99','2005-08-01 23:49:33','2006-02-15 22:15:21'),(7600,280,1,11366,'4.99','2005-08-02 18:01:25','2006-02-15 22:15:21'),(7601,280,1,11517,'2.99','2005-08-16 23:56:28','2006-02-15 22:15:21'),(7602,280,1,12053,'4.99','2005-08-17 20:57:27','2006-02-15 22:15:21'),(7603,280,1,12849,'5.99','2005-08-19 02:05:37','2006-02-15 22:15:21'),(7604,280,2,13231,'9.99','2005-08-19 16:12:49','2006-02-15 22:15:21'),(7605,280,1,13321,'4.99','2005-08-19 19:40:37','2006-02-15 22:15:21'),(7606,280,1,13667,'4.99','2005-08-20 08:25:34','2006-02-15 22:15:21'),(7607,280,2,15036,'2.99','2005-08-22 09:36:00','2006-02-15 22:15:21'),(7608,280,1,15312,'4.99','2005-08-22 19:58:15','2006-02-15 22:15:21'),(7609,280,2,15554,'5.99','2005-08-23 04:48:12','2006-02-15 22:15:21'),(7610,280,2,15950,'5.99','2005-08-23 19:09:39','2006-02-15 22:15:22'),(7611,281,2,650,'2.99','2005-05-28 19:45:40','2006-02-15 22:15:22'),(7612,281,2,754,'2.99','2005-05-29 10:18:59','2006-02-15 22:15:22'),(7613,281,2,1485,'5.99','2005-06-15 21:24:10','2006-02-15 22:15:22'),(7614,281,1,2254,'5.99','2005-06-18 05:15:14','2006-02-15 22:15:22'),(7615,281,1,4607,'0.99','2005-07-08 07:15:14','2006-02-15 22:15:22'),(7616,281,2,4864,'6.99','2005-07-08 19:05:34','2006-02-15 22:15:22'),(7617,281,2,5410,'5.99','2005-07-09 20:21:10','2006-02-15 22:15:22'),(7618,281,2,6825,'0.99','2005-07-12 18:28:12','2006-02-15 22:15:22'),(7619,281,2,7034,'2.99','2005-07-27 03:03:37','2006-02-15 22:15:22'),(7620,281,1,7525,'3.99','2005-07-27 21:13:28','2006-02-15 22:15:22'),(7621,281,2,8131,'0.99','2005-07-28 19:55:21','2006-02-15 22:15:22'),(7622,281,2,8180,'4.99','2005-07-28 22:05:24','2006-02-15 22:15:22'),(7623,281,1,13641,'2.99','2005-08-20 07:34:42','2006-02-15 22:15:22'),(7624,281,1,14196,'1.99','2005-08-21 03:40:40','2006-02-15 22:15:22'),(7625,282,2,48,'1.99','2005-05-25 06:20:46','2006-02-15 22:15:22'),(7626,282,2,282,'6.99','2005-05-26 18:56:26','2006-02-15 22:15:22'),(7627,282,2,564,'0.99','2005-05-28 09:12:09','2006-02-15 22:15:22'),(7628,282,1,2016,'2.99','2005-06-17 12:18:36','2006-02-15 22:15:22'),(7629,282,2,2176,'2.99','2005-06-18 00:29:51','2006-02-15 22:15:22'),(7630,282,2,3408,'4.99','2005-06-21 16:15:11','2006-02-15 22:15:22'),(7631,282,1,3417,'2.99','2005-06-21 17:06:20','2006-02-15 22:15:22'),(7632,282,2,3675,'2.99','2005-07-06 09:09:19','2006-02-15 22:15:22'),(7633,282,1,3885,'2.99','2005-07-06 18:43:43','2006-02-15 22:15:22'),(7634,282,1,4359,'2.99','2005-07-07 19:30:20','2006-02-15 22:15:22'),(7635,282,2,4412,'4.99','2005-07-07 21:56:53','2006-02-15 22:15:22'),(7636,282,1,5113,'0.99','2005-07-09 07:06:18','2006-02-15 22:15:23'),(7637,282,2,5319,'8.99','2005-07-09 16:17:44','2006-02-15 22:15:23'),(7638,282,1,5926,'6.99','2005-07-10 21:53:42','2006-02-15 22:15:23'),(7639,282,1,7433,'2.99','2005-07-27 17:32:20','2006-02-15 22:15:23'),(7640,282,2,7534,'3.99','2005-07-27 21:26:17','2006-02-15 22:15:23'),(7641,282,1,8223,'6.99','2005-07-28 23:56:01','2006-02-15 22:15:23'),(7642,282,2,8270,'4.99','2005-07-29 01:27:22','2006-02-15 22:15:23'),(7643,282,2,8468,'1.99','2005-07-29 08:26:04','2006-02-15 22:15:23'),(7644,282,2,8743,'0.99','2005-07-29 18:57:01','2006-02-15 22:15:23'),(7645,282,2,8973,'1.99','2005-07-30 04:09:13','2006-02-15 22:15:23'),(7646,282,2,9658,'9.99','2005-07-31 06:00:52','2006-02-15 22:15:23'),(7647,282,2,11226,'2.99','2005-08-02 12:47:30','2006-02-15 22:15:23'),(7648,282,1,13278,'2.99','2005-08-19 17:57:53','2006-02-15 22:15:23'),(7649,282,2,13749,'2.99','2005-08-20 11:00:37','2006-02-15 22:15:23'),(7650,282,2,15543,'4.99','2005-08-23 04:15:41','2006-02-15 22:15:23'),(7651,282,2,15430,'0.99','2006-02-14 15:16:03','2006-02-15 22:15:23'),(7652,283,1,1749,'0.99','2005-06-16 16:56:00','2006-02-15 22:15:23'),(7653,283,2,1796,'2.99','2005-06-16 20:10:43','2006-02-15 22:15:23'),(7654,283,2,2333,'2.99','2005-06-18 10:55:54','2006-02-15 22:15:23'),(7655,283,1,2685,'2.99','2005-06-19 12:35:21','2006-02-15 22:15:23'),(7656,283,2,2849,'7.99','2005-06-19 23:06:00','2006-02-15 22:15:23'),(7657,283,1,3534,'4.99','2005-07-06 01:32:27','2006-02-15 22:15:23'),(7658,283,1,3568,'6.99','2005-07-06 03:11:57','2006-02-15 22:15:23'),(7659,283,2,3590,'4.99','2005-07-06 04:35:12','2006-02-15 22:15:23'),(7660,283,2,3672,'0.99','2005-07-06 09:01:56','2006-02-15 22:15:23'),(7661,283,2,4683,'2.99','2005-07-08 10:38:28','2006-02-15 22:15:23'),(7662,283,2,4876,'1.99','2005-07-08 19:27:50','2006-02-15 22:15:24'),(7663,283,2,5989,'2.99','2005-07-11 00:57:53','2006-02-15 22:15:24'),(7664,283,1,6075,'0.99','2005-07-11 05:03:03','2006-02-15 22:15:24'),(7665,283,1,6300,'1.99','2005-07-11 17:50:09','2006-02-15 22:15:24'),(7666,283,2,6313,'0.99','2005-07-11 18:29:52','2006-02-15 22:15:24'),(7667,283,1,6827,'4.99','2005-07-12 18:33:45','2006-02-15 22:15:24'),(7668,283,1,7504,'0.99','2005-07-27 20:24:31','2006-02-15 22:15:24'),(7669,283,1,7816,'0.99','2005-07-28 08:14:12','2006-02-15 22:15:24'),(7670,283,2,9353,'4.99','2005-07-30 18:30:37','2006-02-15 22:15:24'),(7671,283,2,9478,'2.99','2005-07-30 23:12:53','2006-02-15 22:15:24'),(7672,283,2,9572,'2.99','2005-07-31 02:44:10','2006-02-15 22:15:24'),(7673,283,2,9918,'2.99','2005-07-31 14:55:22','2006-02-15 22:15:24'),(7674,283,1,11637,'0.99','2005-08-17 04:36:39','2006-02-15 22:15:24'),(7675,283,2,11846,'2.99','2005-08-17 13:18:29','2006-02-15 22:15:24'),(7676,283,2,11966,'0.99','2005-08-17 17:40:04','2006-02-15 22:15:24'),(7677,283,1,12290,'6.99','2005-08-18 05:08:03','2006-02-15 22:15:24'),(7678,283,1,13229,'2.99','2005-08-19 16:08:33','2006-02-15 22:15:24'),(7679,283,1,15837,'2.99','2005-08-23 15:29:41','2006-02-15 22:15:24'),(7680,284,2,423,'0.99','2005-05-27 15:32:57','2006-02-15 22:15:24'),(7681,284,2,791,'0.99','2005-05-29 16:30:42','2006-02-15 22:15:24'),(7682,284,1,1145,'6.99','2005-05-31 20:13:45','2006-02-15 22:15:24'),(7683,284,1,1171,'0.99','2005-06-14 23:50:11','2006-02-15 22:15:24'),(7684,284,2,2813,'6.99','2005-06-19 20:01:47','2006-02-15 22:15:24'),(7685,284,2,3296,'0.99','2005-06-21 07:04:53','2006-02-15 22:15:24'),(7686,284,1,3572,'0.99','2005-07-06 03:33:23','2006-02-15 22:15:24'),(7687,284,2,4081,'2.99','2005-07-07 05:10:08','2006-02-15 22:15:24'),(7688,284,1,4759,'7.99','2005-07-08 14:39:22','2006-02-15 22:15:24'),(7689,284,2,4931,'7.99','2005-07-08 22:16:18','2006-02-15 22:15:25'),(7690,284,1,5161,'6.99','2005-07-09 08:57:56','2006-02-15 22:15:25'),(7691,284,1,6276,'5.99','2005-07-11 16:15:50','2006-02-15 22:15:25'),(7692,284,2,6982,'2.99','2005-07-27 00:53:41','2006-02-15 22:15:25'),(7693,284,1,7164,'6.99','2005-07-27 07:36:34','2006-02-15 22:15:25'),(7694,284,1,7463,'4.99','2005-07-27 18:48:32','2006-02-15 22:15:25'),(7695,284,2,7716,'8.99','2005-07-28 04:33:15','2006-02-15 22:15:25'),(7696,284,1,8888,'2.99','2005-07-30 00:39:36','2006-02-15 22:15:25'),(7697,284,1,9790,'0.99','2005-07-31 10:34:08','2006-02-15 22:15:25'),(7698,284,1,10396,'7.99','2005-08-01 07:08:46','2006-02-15 22:15:25'),(7699,284,1,10535,'4.99','2005-08-01 12:21:13','2006-02-15 22:15:25'),(7700,284,2,12162,'3.99','2005-08-18 00:44:30','2006-02-15 22:15:25'),(7701,284,1,14007,'5.99','2005-08-20 20:22:47','2006-02-15 22:15:25'),(7702,284,1,14648,'4.99','2005-08-21 19:18:01','2006-02-15 22:15:25'),(7703,284,2,14746,'4.99','2005-08-21 22:54:02','2006-02-15 22:15:25'),(7704,284,1,14921,'4.99','2005-08-22 05:12:24','2006-02-15 22:15:25'),(7705,284,2,15135,'3.99','2005-08-22 13:19:19','2006-02-15 22:15:25'),(7706,284,1,12064,'5.98','2006-02-14 15:16:03','2006-02-15 22:15:25'),(7707,284,2,12959,'0.00','2006-02-14 15:16:03','2006-02-15 22:15:25'),(7708,285,2,1161,'7.99','2005-06-14 23:07:08','2006-02-15 22:15:25'),(7709,285,2,1302,'3.99','2005-06-15 09:48:37','2006-02-15 22:15:25'),(7710,285,1,2249,'5.99','2005-06-18 05:03:08','2006-02-15 22:15:25'),(7711,285,2,4007,'6.99','2005-07-07 00:26:05','2006-02-15 22:15:25'),(7712,285,2,5112,'2.99','2005-07-09 07:04:04','2006-02-15 22:15:25'),(7713,285,1,5683,'9.99','2005-07-10 08:52:13','2006-02-15 22:15:25'),(7714,285,1,6010,'0.99','2005-07-11 01:52:28','2006-02-15 22:15:25'),(7715,285,2,6083,'3.99','2005-07-11 05:12:49','2006-02-15 22:15:26'),(7716,285,1,6094,'4.99','2005-07-11 05:54:42','2006-02-15 22:15:26'),(7717,285,2,6333,'4.99','2005-07-11 19:20:16','2006-02-15 22:15:26'),(7718,285,2,6644,'0.99','2005-07-12 10:39:39','2006-02-15 22:15:26'),(7719,285,1,7211,'6.99','2005-07-27 09:20:00','2006-02-15 22:15:26'),(7720,285,1,7452,'9.99','2005-07-27 18:26:39','2006-02-15 22:15:26'),(7721,285,1,7745,'9.99','2005-07-28 05:46:28','2006-02-15 22:15:26'),(7722,285,1,8154,'4.99','2005-07-28 20:56:18','2006-02-15 22:15:26'),(7723,285,2,8466,'0.99','2005-07-29 08:24:47','2006-02-15 22:15:26'),(7724,285,1,10493,'5.99','2005-08-01 10:43:12','2006-02-15 22:15:26'),(7725,285,2,10628,'2.99','2005-08-01 15:33:19','2006-02-15 22:15:26'),(7726,285,1,10641,'4.99','2005-08-01 15:44:57','2006-02-15 22:15:26'),(7727,285,1,12027,'8.99','2005-08-17 20:01:12','2006-02-15 22:15:26'),(7728,285,1,12444,'0.99','2005-08-18 10:53:12','2006-02-15 22:15:26'),(7729,285,1,12449,'0.99','2005-08-18 11:03:04','2006-02-15 22:15:26'),(7730,285,2,12687,'9.99','2005-08-18 19:57:39','2006-02-15 22:15:26'),(7731,285,2,13102,'7.99','2005-08-19 11:02:03','2006-02-15 22:15:26'),(7732,285,2,15251,'0.99','2005-08-22 18:03:57','2006-02-15 22:15:26'),(7733,285,1,15489,'4.99','2005-08-23 02:06:41','2006-02-15 22:15:26'),(7734,286,2,81,'6.99','2005-05-25 12:15:19','2006-02-15 22:15:26'),(7735,286,1,1690,'8.99','2005-06-16 12:24:18','2006-02-15 22:15:26'),(7736,286,1,2195,'4.99','2005-06-18 01:44:46','2006-02-15 22:15:26'),(7737,286,2,3592,'4.99','2005-07-06 04:38:50','2006-02-15 22:15:26'),(7738,286,2,3692,'3.99','2005-07-06 09:54:12','2006-02-15 22:15:26'),(7739,286,2,4242,'6.99','2005-07-07 13:39:01','2006-02-15 22:15:26'),(7740,286,2,4461,'9.99','2005-07-07 23:59:43','2006-02-15 22:15:26'),(7741,286,1,4707,'4.99','2005-07-08 11:57:28','2006-02-15 22:15:26'),(7742,286,1,4894,'2.99','2005-07-08 20:21:31','2006-02-15 22:15:27'),(7743,286,1,5796,'4.99','2005-07-10 14:42:54','2006-02-15 22:15:27'),(7744,286,2,6611,'2.99','2005-07-12 08:20:23','2006-02-15 22:15:27'),(7745,286,1,7254,'2.99','2005-07-27 10:48:50','2006-02-15 22:15:27'),(7746,286,1,7299,'2.99','2005-07-27 12:49:56','2006-02-15 22:15:27'),(7747,286,1,7368,'0.99','2005-07-27 15:06:05','2006-02-15 22:15:27'),(7748,286,1,7422,'2.99','2005-07-27 17:10:42','2006-02-15 22:15:27'),(7749,286,1,7719,'6.99','2005-07-28 04:39:09','2006-02-15 22:15:27'),(7750,286,2,8399,'0.99','2005-07-29 06:20:18','2006-02-15 22:15:27'),(7751,286,2,9280,'6.99','2005-07-30 15:15:38','2006-02-15 22:15:27'),(7752,286,1,9809,'3.99','2005-07-31 11:19:21','2006-02-15 22:15:27'),(7753,286,2,10105,'5.99','2005-07-31 20:54:20','2006-02-15 22:15:27'),(7754,286,2,11670,'0.99','2005-08-17 05:48:59','2006-02-15 22:15:27'),(7755,286,2,12595,'0.99','2005-08-18 16:27:08','2006-02-15 22:15:27'),(7756,286,1,12656,'0.99','2005-08-18 18:58:35','2006-02-15 22:15:27'),(7757,286,2,13635,'5.99','2005-08-20 07:17:35','2006-02-15 22:15:27'),(7758,286,1,13975,'4.99','2005-08-20 18:58:23','2006-02-15 22:15:27'),(7759,286,1,14905,'0.99','2005-08-22 04:34:22','2006-02-15 22:15:27'),(7760,286,2,15629,'4.99','2005-08-23 07:28:22','2006-02-15 22:15:27'),(7761,287,2,498,'0.99','2005-05-28 01:01:21','2006-02-15 22:15:27'),(7762,287,1,655,'2.99','2005-05-28 20:16:20','2006-02-15 22:15:27'),(7763,287,2,964,'2.99','2005-05-30 18:53:21','2006-02-15 22:15:27'),(7764,287,1,1247,'7.99','2005-06-15 05:16:40','2006-02-15 22:15:27'),(7765,287,2,1642,'2.99','2005-06-16 08:54:15','2006-02-15 22:15:27'),(7766,287,2,2286,'9.99','2005-06-18 07:02:32','2006-02-15 22:15:27'),(7767,287,2,2612,'6.99','2005-06-19 07:19:41','2006-02-15 22:15:27'),(7768,287,2,4877,'4.99','2005-07-08 19:31:02','2006-02-15 22:15:28'),(7769,287,2,5346,'1.99','2005-07-09 17:29:01','2006-02-15 22:15:28'),(7770,287,1,5593,'3.99','2005-07-10 04:33:13','2006-02-15 22:15:28'),(7771,287,2,5761,'0.99','2005-07-10 12:45:36','2006-02-15 22:15:28'),(7772,287,2,6379,'3.99','2005-07-11 21:51:25','2006-02-15 22:15:28'),(7773,287,1,6397,'2.99','2005-07-11 22:34:02','2006-02-15 22:15:28'),(7774,287,2,7402,'2.99','2005-07-27 16:19:40','2006-02-15 22:15:28'),(7775,287,2,7777,'2.99','2005-07-28 07:04:42','2006-02-15 22:15:28'),(7776,287,2,8994,'6.99','2005-07-30 04:51:32','2006-02-15 22:15:28'),(7777,287,2,9716,'1.99','2005-07-31 08:23:53','2006-02-15 22:15:28'),(7778,287,1,10027,'6.99','2005-07-31 18:33:51','2006-02-15 22:15:28'),(7779,287,2,10574,'2.99','2005-08-01 13:36:51','2006-02-15 22:15:28'),(7780,287,2,10807,'4.99','2005-08-01 22:26:10','2006-02-15 22:15:28'),(7781,287,2,11106,'4.99','2005-08-02 08:17:38','2006-02-15 22:15:28'),(7782,287,1,11716,'4.99','2005-08-17 07:40:55','2006-02-15 22:15:28'),(7783,287,2,12861,'2.99','2005-08-19 02:30:24','2006-02-15 22:15:28'),(7784,287,2,14715,'6.99','2005-08-21 21:28:18','2006-02-15 22:15:28'),(7785,287,2,15076,'1.99','2005-08-22 11:05:34','2006-02-15 22:15:28'),(7786,287,1,15084,'4.99','2005-08-22 11:17:59','2006-02-15 22:15:28'),(7787,287,2,15127,'0.99','2005-08-22 12:56:29','2006-02-15 22:15:28'),(7788,287,1,15614,'2.99','2005-08-23 07:05:15','2006-02-15 22:15:28'),(7789,287,2,14204,'0.99','2006-02-14 15:16:03','2006-02-15 22:15:28'),(7790,288,2,93,'3.99','2005-05-25 15:54:16','2006-02-15 22:15:28'),(7791,288,2,427,'6.99','2005-05-27 16:10:04','2006-02-15 22:15:28'),(7792,288,1,503,'4.99','2005-05-28 01:35:25','2006-02-15 22:15:28'),(7793,288,2,565,'5.99','2005-05-28 09:26:31','2006-02-15 22:15:28'),(7794,288,1,1466,'5.99','2005-06-15 20:46:04','2006-02-15 22:15:29'),(7795,288,1,3958,'3.99','2005-07-06 22:07:33','2006-02-15 22:15:29'),(7796,288,1,4692,'2.99','2005-07-08 11:07:06','2006-02-15 22:15:29'),(7797,288,2,4758,'0.99','2005-07-08 14:38:02','2006-02-15 22:15:29'),(7798,288,1,6399,'2.99','2005-07-11 22:39:05','2006-02-15 22:15:29'),(7799,288,2,6518,'3.99','2005-07-12 03:59:42','2006-02-15 22:15:29'),(7800,288,2,7744,'0.99','2005-07-28 05:38:20','2006-02-15 22:15:29'),(7801,288,2,7855,'2.99','2005-07-28 09:43:02','2006-02-15 22:15:29'),(7802,288,2,9429,'2.99','2005-07-30 21:19:26','2006-02-15 22:15:29'),(7803,288,1,9732,'0.99','2005-07-31 08:56:08','2006-02-15 22:15:29'),(7804,288,1,10927,'9.99','2005-08-02 02:31:15','2006-02-15 22:15:29'),(7805,288,2,11952,'2.99','2005-08-17 17:14:57','2006-02-15 22:15:29'),(7806,288,1,12134,'1.99','2005-08-17 23:49:43','2006-02-15 22:15:29'),(7807,288,1,13219,'2.99','2005-08-19 15:40:28','2006-02-15 22:15:29'),(7808,288,1,13227,'0.99','2005-08-19 16:05:38','2006-02-15 22:15:29'),(7809,288,2,13363,'2.99','2005-08-19 21:07:59','2006-02-15 22:15:29'),(7810,288,2,14113,'0.99','2005-08-21 01:03:30','2006-02-15 22:15:29'),(7811,288,2,14756,'0.99','2005-08-21 23:21:23','2006-02-15 22:15:29'),(7812,288,2,15058,'2.99','2005-08-22 10:20:55','2006-02-15 22:15:29'),(7813,288,1,15119,'2.99','2005-08-22 12:41:33','2006-02-15 22:15:29'),(7814,289,2,1880,'4.99','2005-06-17 03:08:59','2006-02-15 22:15:29'),(7815,289,2,2316,'0.99','2005-06-18 09:04:59','2006-02-15 22:15:29'),(7816,289,1,2387,'6.99','2005-06-18 15:24:19','2006-02-15 22:15:29'),(7817,289,1,2784,'10.99','2005-06-19 18:40:29','2006-02-15 22:15:29'),(7818,289,2,2948,'6.99','2005-06-20 06:02:35','2006-02-15 22:15:29'),(7819,289,2,3123,'6.99','2005-06-20 18:26:14','2006-02-15 22:15:29'),(7820,289,1,3588,'2.99','2005-07-06 04:29:13','2006-02-15 22:15:30'),(7821,289,2,4622,'0.99','2005-07-08 08:02:42','2006-02-15 22:15:30'),(7822,289,1,5089,'4.99','2005-07-09 05:45:40','2006-02-15 22:15:30'),(7823,289,2,5342,'8.99','2005-07-09 17:20:03','2006-02-15 22:15:30'),(7824,289,2,5584,'4.99','2005-07-10 04:15:25','2006-02-15 22:15:30'),(7825,289,2,5724,'0.99','2005-07-10 11:18:12','2006-02-15 22:15:30'),(7826,289,2,6007,'3.99','2005-07-11 01:43:06','2006-02-15 22:15:30'),(7827,289,2,6536,'7.99','2005-07-12 04:44:25','2006-02-15 22:15:30'),(7828,289,1,7151,'4.99','2005-07-27 07:14:31','2006-02-15 22:15:30'),(7829,289,1,7162,'4.99','2005-07-27 07:32:45','2006-02-15 22:15:30'),(7830,289,2,7325,'0.99','2005-07-27 13:46:55','2006-02-15 22:15:30'),(7831,289,1,9498,'2.99','2005-07-30 23:56:55','2006-02-15 22:15:30'),(7832,289,2,10297,'7.99','2005-08-01 04:05:04','2006-02-15 22:15:30'),(7833,289,1,12158,'1.99','2005-08-18 00:34:20','2006-02-15 22:15:30'),(7834,289,1,12170,'0.99','2005-08-18 01:06:10','2006-02-15 22:15:30'),(7835,289,2,12558,'7.99','2005-08-18 14:52:35','2006-02-15 22:15:30'),(7836,289,2,13165,'0.99','2005-08-19 13:34:10','2006-02-15 22:15:30'),(7837,289,2,13211,'0.99','2005-08-19 15:23:41','2006-02-15 22:15:30'),(7838,289,2,13256,'9.99','2005-08-19 16:54:12','2006-02-15 22:15:30'),(7839,289,2,13336,'5.99','2005-08-19 20:03:22','2006-02-15 22:15:30'),(7840,289,2,13891,'6.99','2005-08-20 15:42:05','2006-02-15 22:15:30'),(7841,289,1,14087,'0.99','2005-08-20 23:53:40','2006-02-15 22:15:30'),(7842,289,2,14729,'4.99','2005-08-21 22:16:57','2006-02-15 22:15:30'),(7843,289,2,14917,'4.99','2005-08-22 05:03:59','2006-02-15 22:15:30'),(7844,290,1,160,'2.99','2005-05-26 01:46:20','2006-02-15 22:15:30'),(7845,290,1,1220,'6.99','2005-06-15 03:26:15','2006-02-15 22:15:30'),(7846,290,2,1336,'8.99','2005-06-15 12:01:34','2006-02-15 22:15:31'),(7847,290,2,1496,'4.99','2005-06-15 21:55:58','2006-02-15 22:15:31'),(7848,290,2,1532,'0.99','2005-06-16 00:41:31','2006-02-15 22:15:31'),(7849,290,1,3013,'3.99','2005-06-20 10:45:09','2006-02-15 22:15:31'),(7850,290,2,4039,'4.99','2005-07-07 02:57:59','2006-02-15 22:15:31'),(7851,290,1,4073,'0.99','2005-07-07 04:49:13','2006-02-15 22:15:31'),(7852,290,2,4416,'0.99','2005-07-07 22:04:36','2006-02-15 22:15:31'),(7853,290,1,5105,'2.99','2005-07-09 06:38:59','2006-02-15 22:15:31'),(7854,290,2,5214,'5.99','2005-07-09 11:43:08','2006-02-15 22:15:31'),(7855,290,2,5827,'2.99','2005-07-10 16:22:20','2006-02-15 22:15:31'),(7856,290,2,6816,'4.99','2005-07-12 18:18:50','2006-02-15 22:15:31'),(7857,290,1,6952,'4.99','2005-07-26 23:51:27','2006-02-15 22:15:31'),(7858,290,2,7265,'2.99','2005-07-27 11:19:01','2006-02-15 22:15:31'),(7859,290,1,7650,'1.99','2005-07-28 01:47:20','2006-02-15 22:15:31'),(7860,290,1,8639,'4.99','2005-07-29 14:30:31','2006-02-15 22:15:31'),(7861,290,1,9000,'7.99','2005-07-30 04:58:55','2006-02-15 22:15:31'),(7862,290,1,9413,'0.99','2005-07-30 20:44:39','2006-02-15 22:15:31'),(7863,290,2,10096,'3.99','2005-07-31 20:38:58','2006-02-15 22:15:31'),(7864,290,1,10194,'1.99','2005-08-01 00:33:52','2006-02-15 22:15:31'),(7865,290,1,10901,'2.99','2005-08-02 01:35:44','2006-02-15 22:15:31'),(7866,290,1,11596,'6.99','2005-08-17 02:53:55','2006-02-15 22:15:31'),(7867,290,2,12193,'3.99','2005-08-18 02:03:59','2006-02-15 22:15:31'),(7868,290,2,12778,'4.99','2005-08-18 23:40:23','2006-02-15 22:15:31'),(7869,290,2,13190,'1.99','2005-08-19 14:27:59','2006-02-15 22:15:31'),(7870,290,1,13367,'2.99','2005-08-19 21:19:27','2006-02-15 22:15:31'),(7871,290,2,13687,'2.99','2005-08-20 08:57:51','2006-02-15 22:15:31'),(7872,291,1,54,'4.99','2005-05-25 07:23:25','2006-02-15 22:15:32'),(7873,291,2,747,'4.99','2005-05-29 09:26:34','2006-02-15 22:15:32'),(7874,291,1,1012,'2.99','2005-05-31 02:18:05','2006-02-15 22:15:32'),(7875,291,1,1191,'2.99','2005-06-15 01:10:35','2006-02-15 22:15:32'),(7876,291,1,2300,'2.99','2005-06-18 08:22:34','2006-02-15 22:15:32'),(7877,291,2,3042,'2.99','2005-06-20 12:38:27','2006-02-15 22:15:32'),(7878,291,2,3512,'4.99','2005-07-06 00:43:06','2006-02-15 22:15:32'),(7879,291,2,4862,'3.99','2005-07-08 19:02:46','2006-02-15 22:15:32'),(7880,291,2,5754,'2.99','2005-07-10 12:32:43','2006-02-15 22:15:32'),(7881,291,2,6516,'4.99','2005-07-12 03:51:54','2006-02-15 22:15:32'),(7882,291,1,6796,'2.99','2005-07-12 16:44:16','2006-02-15 22:15:32'),(7883,291,1,7561,'5.99','2005-07-27 22:21:05','2006-02-15 22:15:32'),(7884,291,2,7564,'0.99','2005-07-27 22:31:17','2006-02-15 22:15:32'),(7885,291,1,8690,'0.99','2005-07-29 16:39:28','2006-02-15 22:15:32'),(7886,291,2,8697,'4.99','2005-07-29 16:46:07','2006-02-15 22:15:32'),(7887,291,1,9165,'5.99','2005-07-30 11:24:28','2006-02-15 22:15:32'),(7888,291,2,9201,'5.99','2005-07-30 12:42:21','2006-02-15 22:15:32'),(7889,291,2,9919,'7.99','2005-07-31 14:55:46','2006-02-15 22:15:32'),(7890,291,1,10463,'4.99','2005-08-01 09:39:43','2006-02-15 22:15:32'),(7891,291,2,11145,'0.99','2005-08-02 09:43:24','2006-02-15 22:15:32'),(7892,291,1,13665,'5.99','2005-08-20 08:19:20','2006-02-15 22:15:32'),(7893,291,2,14241,'4.99','2005-08-21 05:24:55','2006-02-15 22:15:32'),(7894,291,2,15663,'3.99','2005-08-23 08:54:26','2006-02-15 22:15:32'),(7895,292,1,324,'0.99','2005-05-27 01:00:04','2006-02-15 22:15:32'),(7896,292,1,1901,'3.99','2005-06-17 04:35:19','2006-02-15 22:15:32'),(7897,292,2,2258,'3.99','2005-06-18 05:30:36','2006-02-15 22:15:32'),(7898,292,1,2838,'3.99','2005-06-19 22:06:06','2006-02-15 22:15:33'),(7899,292,2,3328,'2.99','2005-06-21 09:08:44','2006-02-15 22:15:33'),(7900,292,2,3557,'0.99','2005-07-06 02:48:39','2006-02-15 22:15:33'),(7901,292,1,4200,'4.99','2005-07-07 11:15:11','2006-02-15 22:15:33'),(7902,292,2,5095,'4.99','2005-07-09 06:08:22','2006-02-15 22:15:33'),(7903,292,2,5257,'0.99','2005-07-09 13:56:43','2006-02-15 22:15:33'),(7904,292,1,5940,'4.99','2005-07-10 22:31:01','2006-02-15 22:15:33'),(7905,292,1,6270,'8.99','2005-07-11 15:59:10','2006-02-15 22:15:33'),(7906,292,1,6900,'6.99','2005-07-12 21:45:25','2006-02-15 22:15:33'),(7907,292,2,7199,'5.99','2005-07-27 08:53:23','2006-02-15 22:15:33'),(7908,292,1,7216,'2.99','2005-07-27 09:27:45','2006-02-15 22:15:33'),(7909,292,1,7545,'2.99','2005-07-27 21:48:03','2006-02-15 22:15:33'),(7910,292,1,7766,'4.99','2005-07-28 06:41:57','2006-02-15 22:15:33'),(7911,292,1,8047,'2.99','2005-07-28 16:49:43','2006-02-15 22:15:33'),(7912,292,2,8842,'4.99','2005-07-29 23:03:40','2006-02-15 22:15:33'),(7913,292,1,8990,'8.99','2005-07-30 04:41:42','2006-02-15 22:15:33'),(7914,292,1,9792,'5.99','2005-07-31 10:43:41','2006-02-15 22:15:33'),(7915,292,2,9819,'1.99','2005-07-31 11:39:13','2006-02-15 22:15:33'),(7916,292,1,11193,'4.99','2005-08-02 11:31:33','2006-02-15 22:15:33'),(7917,292,1,12739,'10.99','2005-08-18 22:15:18','2006-02-15 22:15:33'),(7918,292,1,13715,'2.99','2005-08-20 09:43:06','2006-02-15 22:15:33'),(7919,292,1,14499,'0.99','2005-08-21 14:11:19','2006-02-15 22:15:33'),(7920,292,2,14845,'4.99','2005-08-22 02:12:44','2006-02-15 22:15:33'),(7921,292,1,15117,'2.99','2005-08-22 12:38:20','2006-02-15 22:15:33'),(7922,293,2,445,'0.99','2005-05-27 18:42:57','2006-02-15 22:15:33'),(7923,293,1,924,'4.99','2005-05-30 12:10:59','2006-02-15 22:15:33'),(7924,293,2,1034,'8.99','2005-05-31 04:53:40','2006-02-15 22:15:34'),(7925,293,1,1589,'9.99','2005-06-16 04:58:03','2006-02-15 22:15:34'),(7926,293,1,1829,'5.99','2005-06-16 22:14:21','2006-02-15 22:15:34'),(7927,293,2,1860,'4.99','2005-06-17 01:17:12','2006-02-15 22:15:34'),(7928,293,1,2386,'4.99','2005-06-18 15:22:51','2006-02-15 22:15:34'),(7929,293,2,3025,'2.99','2005-06-20 11:46:48','2006-02-15 22:15:34'),(7930,293,1,3290,'1.99','2005-06-21 06:45:34','2006-02-15 22:15:34'),(7931,293,2,3452,'4.99','2005-06-21 21:11:27','2006-02-15 22:15:34'),(7932,293,1,3906,'3.99','2005-07-06 19:35:55','2006-02-15 22:15:34'),(7933,293,2,4343,'0.99','2005-07-07 18:48:54','2006-02-15 22:15:34'),(7934,293,2,4542,'4.99','2005-07-08 04:06:30','2006-02-15 22:15:34'),(7935,293,2,4944,'6.99','2005-07-08 22:44:28','2006-02-15 22:15:34'),(7936,293,2,5765,'3.99','2005-07-10 13:03:02','2006-02-15 22:15:34'),(7937,293,1,6432,'9.99','2005-07-12 00:09:41','2006-02-15 22:15:34'),(7938,293,2,7607,'4.99','2005-07-28 00:05:53','2006-02-15 22:15:34'),(7939,293,1,8589,'4.99','2005-07-29 12:28:17','2006-02-15 22:15:34'),(7940,293,1,8745,'2.99','2005-07-29 19:03:05','2006-02-15 22:15:34'),(7941,293,2,9123,'2.99','2005-07-30 09:39:15','2006-02-15 22:15:34'),(7942,293,2,11131,'1.99','2005-08-02 09:10:04','2006-02-15 22:15:34'),(7943,293,1,11576,'2.99','2005-08-17 01:53:20','2006-02-15 22:15:34'),(7944,293,2,13013,'6.99','2005-08-19 07:55:51','2006-02-15 22:15:34'),(7945,293,1,13029,'2.99','2005-08-19 08:28:04','2006-02-15 22:15:34'),(7946,293,2,13504,'5.99','2005-08-20 02:01:48','2006-02-15 22:15:34'),(7947,293,1,13817,'4.99','2005-08-20 13:15:30','2006-02-15 22:15:34'),(7948,293,1,14248,'6.99','2005-08-21 05:35:57','2006-02-15 22:15:34'),(7949,293,1,15258,'4.99','2005-08-22 18:22:44','2006-02-15 22:15:35'),(7950,293,1,15402,'8.99','2005-08-22 23:17:41','2006-02-15 22:15:35'),(7951,293,1,15508,'7.99','2005-08-23 02:49:04','2006-02-15 22:15:35'),(7952,293,2,15675,'5.99','2005-08-23 09:18:52','2006-02-15 22:15:35'),(7953,294,1,595,'1.99','2005-05-28 13:59:54','2006-02-15 22:15:35'),(7954,294,1,2900,'2.99','2005-06-20 02:40:04','2006-02-15 22:15:35'),(7955,294,2,3330,'2.99','2005-06-21 09:22:37','2006-02-15 22:15:35'),(7956,294,1,3681,'4.99','2005-07-06 09:19:30','2006-02-15 22:15:35'),(7957,294,2,4019,'4.99','2005-07-07 01:27:44','2006-02-15 22:15:35'),(7958,294,1,4786,'7.99','2005-07-08 16:13:05','2006-02-15 22:15:35'),(7959,294,2,6185,'5.99','2005-07-11 11:25:09','2006-02-15 22:15:35'),(7960,294,2,7415,'6.99','2005-07-27 16:50:59','2006-02-15 22:15:35'),(7961,294,1,7765,'4.99','2005-07-28 06:40:33','2006-02-15 22:15:35'),(7962,294,2,8843,'4.99','2005-07-29 23:04:25','2006-02-15 22:15:35'),(7963,294,2,9194,'2.99','2005-07-30 12:28:45','2006-02-15 22:15:35'),(7964,294,1,9522,'2.99','2005-07-31 00:55:11','2006-02-15 22:15:35'),(7965,294,2,9607,'0.99','2005-07-31 03:51:06','2006-02-15 22:15:35'),(7966,294,2,10186,'0.99','2005-08-01 00:12:36','2006-02-15 22:15:35'),(7967,294,2,10220,'4.99','2005-08-01 01:13:22','2006-02-15 22:15:35'),(7968,294,1,10551,'6.99','2005-08-01 12:48:55','2006-02-15 22:15:35'),(7969,294,2,10600,'2.99','2005-08-01 14:25:21','2006-02-15 22:15:35'),(7970,294,2,10642,'4.99','2005-08-01 15:45:11','2006-02-15 22:15:35'),(7971,294,2,11071,'2.99','2005-08-02 07:10:53','2006-02-15 22:15:35'),(7972,294,1,11390,'2.99','2005-08-02 18:39:16','2006-02-15 22:15:35'),(7973,294,2,11875,'4.99','2005-08-17 14:16:48','2006-02-15 22:15:35'),(7974,294,2,11981,'2.99','2005-08-17 18:10:40','2006-02-15 22:15:35'),(7975,294,1,12278,'5.99','2005-08-18 04:46:45','2006-02-15 22:15:36'),(7976,294,1,14474,'2.99','2005-08-21 13:22:48','2006-02-15 22:15:36'),(7977,294,2,14630,'7.99','2005-08-21 18:43:44','2006-02-15 22:15:36'),(7978,294,1,15839,'5.99','2005-08-23 15:34:46','2006-02-15 22:15:36'),(7979,295,2,371,'3.99','2005-05-27 08:08:18','2006-02-15 22:15:36'),(7980,295,1,1184,'5.99','2005-06-15 00:49:36','2006-02-15 22:15:36'),(7981,295,1,1328,'2.99','2005-06-15 11:23:27','2006-02-15 22:15:36'),(7982,295,2,1935,'2.99','2005-06-17 07:14:15','2006-02-15 22:15:36'),(7983,295,1,2054,'2.99','2005-06-17 15:26:37','2006-02-15 22:15:36'),(7984,295,1,2431,'1.99','2005-06-18 17:53:03','2006-02-15 22:15:36'),(7985,295,1,2638,'1.99','2005-06-19 09:23:30','2006-02-15 22:15:36'),(7986,295,1,2999,'2.99','2005-06-20 09:30:34','2006-02-15 22:15:36'),(7987,295,1,3198,'1.99','2005-06-21 00:08:54','2006-02-15 22:15:36'),(7988,295,2,3394,'8.99','2005-06-21 15:17:39','2006-02-15 22:15:36'),(7989,295,2,3496,'1.99','2005-07-05 23:59:15','2006-02-15 22:15:36'),(7990,295,1,3876,'9.99','2005-07-06 18:21:13','2006-02-15 22:15:36'),(7991,295,1,4164,'1.99','2005-07-07 09:20:11','2006-02-15 22:15:36'),(7992,295,1,4432,'1.99','2005-07-07 22:40:02','2006-02-15 22:15:36'),(7993,295,1,5019,'2.99','2005-07-09 02:04:32','2006-02-15 22:15:36'),(7994,295,2,5053,'4.99','2005-07-09 03:59:46','2006-02-15 22:15:36'),(7995,295,2,5283,'2.99','2005-07-09 15:07:17','2006-02-15 22:15:36'),(7996,295,2,5994,'4.99','2005-07-11 01:14:10','2006-02-15 22:15:36'),(7997,295,1,6252,'2.99','2005-07-11 15:06:29','2006-02-15 22:15:36'),(7998,295,2,6331,'3.99','2005-07-11 19:17:21','2006-02-15 22:15:36'),(7999,295,2,8087,'0.99','2005-07-28 18:21:16','2006-02-15 22:15:36'),(8000,295,1,8108,'7.99','2005-07-28 19:07:38','2006-02-15 22:15:36'),(8001,295,1,8840,'9.99','2005-07-29 22:55:38','2006-02-15 22:15:37'),(8002,295,2,8932,'2.99','2005-07-30 02:31:26','2006-02-15 22:15:37'),(8003,295,1,9425,'7.99','2005-07-30 21:11:21','2006-02-15 22:15:37'),(8004,295,2,9692,'8.99','2005-07-31 07:11:04','2006-02-15 22:15:37'),(8005,295,2,9793,'4.99','2005-07-31 10:45:11','2006-02-15 22:15:37'),(8006,295,2,10160,'4.99','2005-07-31 23:07:40','2006-02-15 22:15:37'),(8007,295,2,10222,'0.99','2005-08-01 01:17:42','2006-02-15 22:15:37'),(8008,295,1,10349,'3.99','2005-08-01 05:27:13','2006-02-15 22:15:37'),(8009,295,2,11083,'4.99','2005-08-02 07:32:01','2006-02-15 22:15:37'),(8010,295,2,11913,'5.99','2005-08-17 15:53:17','2006-02-15 22:15:37'),(8011,295,2,12041,'4.99','2005-08-17 20:34:33','2006-02-15 22:15:37'),(8012,295,1,12383,'0.99','2005-08-18 08:36:03','2006-02-15 22:15:37'),(8013,295,1,14264,'0.99','2005-08-21 06:18:22','2006-02-15 22:15:37'),(8014,295,1,14387,'6.99','2005-08-21 10:10:01','2006-02-15 22:15:37'),(8015,295,1,14514,'6.99','2005-08-21 14:51:52','2006-02-15 22:15:37'),(8016,295,2,15735,'0.99','2006-02-14 15:16:03','2006-02-15 22:15:37'),(8017,296,2,162,'4.99','2005-05-26 02:02:05','2006-02-15 22:15:37'),(8018,296,1,511,'5.99','2005-05-28 03:04:04','2006-02-15 22:15:37'),(8019,296,1,869,'4.99','2005-05-30 04:22:06','2006-02-15 22:15:37'),(8020,296,2,956,'2.99','2005-05-30 17:30:28','2006-02-15 22:15:37'),(8021,296,2,1659,'4.99','2005-06-16 10:11:46','2006-02-15 22:15:37'),(8022,296,1,3034,'0.99','2005-06-20 12:15:50','2006-02-15 22:15:37'),(8023,296,2,3119,'0.99','2005-06-20 18:11:44','2006-02-15 22:15:37'),(8024,296,2,3486,'7.99','2005-07-05 23:29:55','2006-02-15 22:15:37'),(8025,296,1,3810,'2.99','2005-07-06 15:18:44','2006-02-15 22:15:37'),(8026,296,1,4480,'4.99','2005-07-08 00:56:30','2006-02-15 22:15:38'),(8027,296,2,5090,'0.99','2005-07-09 05:48:22','2006-02-15 22:15:38'),(8028,296,1,5589,'4.99','2005-07-10 04:22:58','2006-02-15 22:15:38'),(8029,296,2,6016,'4.99','2005-07-11 02:04:45','2006-02-15 22:15:38'),(8030,296,1,6398,'5.99','2005-07-11 22:34:49','2006-02-15 22:15:38'),(8031,296,1,6967,'6.99','2005-07-27 00:16:31','2006-02-15 22:15:38'),(8032,296,2,7568,'4.99','2005-07-27 22:38:53','2006-02-15 22:15:38'),(8033,296,2,8171,'0.99','2005-07-28 21:32:57','2006-02-15 22:15:38'),(8034,296,1,9249,'5.99','2005-07-30 14:15:02','2006-02-15 22:15:38'),(8035,296,1,9304,'2.99','2005-07-30 16:41:34','2006-02-15 22:15:38'),(8036,296,2,11571,'4.99','2005-08-17 01:37:51','2006-02-15 22:15:38'),(8037,296,2,11825,'4.99','2005-08-17 12:43:30','2006-02-15 22:15:38'),(8038,296,2,12689,'3.99','2005-08-18 20:06:34','2006-02-15 22:15:38'),(8039,296,2,13471,'2.99','2005-08-20 01:02:26','2006-02-15 22:15:38'),(8040,296,1,13702,'2.99','2005-08-20 09:27:20','2006-02-15 22:15:38'),(8041,296,1,13819,'4.99','2005-08-20 13:23:15','2006-02-15 22:15:38'),(8042,296,1,13991,'1.99','2005-08-20 19:29:44','2006-02-15 22:15:38'),(8043,296,2,14571,'7.99','2005-08-21 16:40:26','2006-02-15 22:15:38'),(8044,296,2,15023,'2.99','2005-08-22 08:56:48','2006-02-15 22:15:38'),(8045,296,2,15866,'7.99','2005-08-23 16:19:02','2006-02-15 22:15:38'),(8046,296,1,12009,'2.99','2006-02-14 15:16:03','2006-02-15 22:15:38'),(8047,297,2,143,'0.99','2005-05-25 23:45:52','2006-02-15 22:15:38'),(8048,297,1,954,'3.99','2005-05-30 16:57:29','2006-02-15 22:15:38'),(8049,297,1,1409,'3.99','2005-06-15 16:58:12','2006-02-15 22:15:38'),(8050,297,1,2067,'2.99','2005-06-17 16:11:08','2006-02-15 22:15:38'),(8051,297,1,2202,'8.99','2005-06-18 02:09:24','2006-02-15 22:15:38'),(8052,297,1,2260,'2.99','2005-06-18 05:38:36','2006-02-15 22:15:39'),(8053,297,2,2339,'4.99','2005-06-18 11:29:22','2006-02-15 22:15:39'),(8054,297,1,3582,'0.99','2005-07-06 04:10:35','2006-02-15 22:15:39'),(8055,297,2,4621,'2.99','2005-07-08 08:02:18','2006-02-15 22:15:39'),(8056,297,1,4929,'5.99','2005-07-08 22:06:18','2006-02-15 22:15:39'),(8057,297,1,5743,'8.99','2005-07-10 11:57:38','2006-02-15 22:15:39'),(8058,297,2,6036,'2.99','2005-07-11 03:02:28','2006-02-15 22:15:39'),(8059,297,1,6064,'6.99','2005-07-11 04:23:18','2006-02-15 22:15:39'),(8060,297,1,6156,'4.99','2005-07-11 09:45:48','2006-02-15 22:15:39'),(8061,297,1,6984,'2.99','2005-07-27 00:56:30','2006-02-15 22:15:39'),(8062,297,2,7867,'0.99','2005-07-28 10:08:54','2006-02-15 22:15:39'),(8063,297,1,7933,'0.99','2005-07-28 12:27:27','2006-02-15 22:15:39'),(8064,297,2,9014,'2.99','2005-07-30 05:19:27','2006-02-15 22:15:39'),(8065,297,2,9674,'5.99','2005-07-31 06:36:53','2006-02-15 22:15:39'),(8066,297,1,10153,'0.99','2005-07-31 22:30:10','2006-02-15 22:15:39'),(8067,297,2,10264,'4.99','2005-08-01 03:03:12','2006-02-15 22:15:39'),(8068,297,2,11269,'0.99','2005-08-02 14:11:41','2006-02-15 22:15:39'),(8069,297,2,11413,'0.99','2005-08-02 19:35:19','2006-02-15 22:15:39'),(8070,297,2,11585,'4.99','2005-08-17 02:14:36','2006-02-15 22:15:39'),(8071,297,1,11780,'2.99','2005-08-17 10:34:24','2006-02-15 22:15:39'),(8072,297,1,11784,'0.99','2005-08-17 10:48:05','2006-02-15 22:15:39'),(8073,297,1,12472,'10.99','2005-08-18 11:58:48','2006-02-15 22:15:39'),(8074,297,1,13330,'2.99','2005-08-19 19:59:21','2006-02-15 22:15:39'),(8075,297,2,13721,'4.99','2005-08-20 10:02:59','2006-02-15 22:15:39'),(8076,297,1,13888,'1.99','2005-08-20 15:39:42','2006-02-15 22:15:39'),(8077,297,1,14403,'5.99','2005-08-21 10:40:34','2006-02-15 22:15:40'),(8078,297,2,15582,'2.99','2005-08-23 05:45:44','2006-02-15 22:15:40'),(8079,297,1,15711,'4.99','2005-08-23 10:43:00','2006-02-15 22:15:40'),(8080,298,1,383,'3.99','2005-05-27 10:12:20','2006-02-15 22:15:40'),(8081,298,2,1454,'4.99','2005-06-15 19:49:41','2006-02-15 22:15:40'),(8082,298,2,2385,'3.99','2005-06-18 15:22:40','2006-02-15 22:15:40'),(8083,298,2,3095,'4.99','2005-06-20 16:16:53','2006-02-15 22:15:40'),(8084,298,2,3400,'4.99','2005-06-21 15:50:30','2006-02-15 22:15:40'),(8085,298,2,3479,'0.99','2005-07-05 23:08:53','2006-02-15 22:15:40'),(8086,298,1,3728,'2.99','2005-07-06 11:29:00','2006-02-15 22:15:40'),(8087,298,2,4291,'2.99','2005-07-07 15:47:47','2006-02-15 22:15:40'),(8088,298,1,4936,'3.99','2005-07-08 22:24:50','2006-02-15 22:15:40'),(8089,298,2,5166,'2.99','2005-07-09 09:15:48','2006-02-15 22:15:40'),(8090,298,1,5247,'2.99','2005-07-09 13:26:28','2006-02-15 22:15:40'),(8091,298,2,6802,'0.99','2005-07-12 17:14:17','2006-02-15 22:15:40'),(8092,298,2,7802,'0.99','2005-07-28 07:51:57','2006-02-15 22:15:40'),(8093,298,1,7869,'7.99','2005-07-28 10:13:15','2006-02-15 22:15:40'),(8094,298,2,8737,'5.99','2005-07-29 18:32:13','2006-02-15 22:15:40'),(8095,298,2,10248,'6.99','2005-08-01 02:35:28','2006-02-15 22:15:40'),(8096,298,1,11070,'0.99','2005-08-02 07:10:39','2006-02-15 22:15:40'),(8097,298,2,11288,'6.99','2005-08-02 14:54:08','2006-02-15 22:15:40'),(8098,298,2,12076,'0.99','2005-08-17 21:58:19','2006-02-15 22:15:40'),(8099,298,1,12765,'8.99','2005-08-18 23:21:50','2006-02-15 22:15:40'),(8100,298,1,13172,'0.99','2005-08-19 13:49:07','2006-02-15 22:15:40'),(8101,298,1,13244,'4.99','2005-08-19 16:43:04','2006-02-15 22:15:40'),(8102,298,2,14473,'0.99','2005-08-21 13:19:03','2006-02-15 22:15:41'),(8103,298,1,15245,'3.99','2005-08-22 17:49:35','2006-02-15 22:15:41'),(8104,298,2,15262,'4.99','2005-08-22 18:25:21','2006-02-15 22:15:41'),(8105,298,1,15643,'4.99','2005-08-23 08:13:26','2006-02-15 22:15:41'),(8106,299,1,332,'5.99','2005-05-27 02:27:10','2006-02-15 22:15:41'),(8107,299,2,606,'8.99','2005-05-28 14:48:39','2006-02-15 22:15:41'),(8108,299,1,1650,'8.99','2005-06-16 09:23:20','2006-02-15 22:15:41'),(8109,299,2,2664,'4.99','2005-06-19 11:11:23','2006-02-15 22:15:41'),(8110,299,1,2774,'2.99','2005-06-19 18:05:11','2006-02-15 22:15:41'),(8111,299,2,2791,'4.99','2005-06-19 18:51:27','2006-02-15 22:15:41'),(8112,299,1,3074,'0.99','2005-06-20 14:41:41','2006-02-15 22:15:41'),(8113,299,2,3223,'2.99','2005-06-21 02:06:45','2006-02-15 22:15:41'),(8114,299,1,3288,'5.99','2005-06-21 06:36:59','2006-02-15 22:15:41'),(8115,299,2,3497,'0.99','2005-07-06 00:00:03','2006-02-15 22:15:41'),(8116,299,2,4153,'5.99','2005-07-07 08:53:08','2006-02-15 22:15:41'),(8117,299,1,4350,'2.99','2005-07-07 19:02:41','2006-02-15 22:15:41'),(8118,299,2,5033,'1.99','2005-07-09 02:42:01','2006-02-15 22:15:41'),(8119,299,1,5642,'2.99','2005-07-10 06:46:08','2006-02-15 22:15:41'),(8120,299,2,6732,'0.99','2005-07-12 13:58:51','2006-02-15 22:15:41'),(8121,299,1,6853,'7.99','2005-07-12 19:38:11','2006-02-15 22:15:41'),(8122,299,1,7264,'4.99','2005-07-27 11:18:58','2006-02-15 22:15:41'),(8123,299,1,7746,'2.99','2005-07-28 05:48:56','2006-02-15 22:15:41'),(8124,299,2,7862,'9.99','2005-07-28 10:02:25','2006-02-15 22:15:41'),(8125,299,1,9520,'2.99','2005-07-31 00:50:54','2006-02-15 22:15:41'),(8126,299,1,10201,'0.99','2005-08-01 00:42:18','2006-02-15 22:15:41'),(8127,299,2,10440,'2.99','2005-08-01 08:54:32','2006-02-15 22:15:41'),(8128,299,1,11629,'6.99','2005-08-17 04:27:24','2006-02-15 22:15:42'),(8129,299,1,11746,'5.99','2005-08-17 09:03:24','2006-02-15 22:15:42'),(8130,299,1,11998,'0.99','2005-08-17 18:46:21','2006-02-15 22:15:42'),(8131,299,1,13069,'4.99','2005-08-19 09:55:20','2006-02-15 22:15:42'),(8132,299,2,14208,'0.99','2005-08-21 04:09:18','2006-02-15 22:15:42'),(8133,299,1,14548,'3.99','2005-08-21 15:53:52','2006-02-15 22:15:42'),(8134,299,2,14889,'4.99','2005-08-22 04:10:10','2006-02-15 22:15:42'),(8135,299,2,14898,'6.99','2005-08-22 04:26:34','2006-02-15 22:15:42'),(8136,300,2,457,'0.99','2005-05-27 19:52:29','2006-02-15 22:15:42'),(8137,300,1,780,'3.99','2005-05-29 14:18:32','2006-02-15 22:15:42'),(8138,300,1,1111,'4.99','2005-05-31 15:24:19','2006-02-15 22:15:42'),(8139,300,2,1381,'0.99','2005-06-15 15:17:21','2006-02-15 22:15:42'),(8140,300,1,3177,'2.99','2005-06-20 22:32:44','2006-02-15 22:15:42'),(8141,300,1,3775,'0.99','2005-07-06 13:27:33','2006-02-15 22:15:42'),(8142,300,1,4030,'0.99','2005-07-07 02:25:42','2006-02-15 22:15:42'),(8143,300,2,5562,'2.99','2005-07-10 03:17:42','2006-02-15 22:15:42'),(8144,300,1,5705,'10.99','2005-07-10 10:09:17','2006-02-15 22:15:42'),(8145,300,2,6111,'4.99','2005-07-11 07:26:57','2006-02-15 22:15:42'),(8146,300,1,6822,'5.99','2005-07-12 18:23:39','2006-02-15 22:15:42'),(8147,300,1,6998,'4.99','2005-07-27 01:16:29','2006-02-15 22:15:42'),(8148,300,1,7815,'4.99','2005-07-28 08:14:11','2006-02-15 22:15:42'),(8149,300,1,8117,'6.99','2005-07-28 19:20:16','2006-02-15 22:15:42'),(8150,300,1,8210,'6.99','2005-07-28 23:31:05','2006-02-15 22:15:42'),(8151,300,1,8283,'3.99','2005-07-29 01:52:22','2006-02-15 22:15:42'),(8152,300,1,9078,'0.99','2005-07-30 08:01:00','2006-02-15 22:15:42'),(8153,300,2,9127,'2.99','2005-07-30 09:46:36','2006-02-15 22:15:43'),(8154,300,2,9791,'0.99','2005-07-31 10:35:22','2006-02-15 22:15:43'),(8155,300,1,10977,'4.99','2005-08-02 04:12:17','2006-02-15 22:15:43'),(8156,300,2,12484,'2.99','2005-08-18 12:39:37','2006-02-15 22:15:43'),(8157,300,2,12644,'5.99','2005-08-18 18:22:27','2006-02-15 22:15:43'),(8158,300,2,13257,'3.99','2005-08-19 17:01:20','2006-02-15 22:15:43'),(8159,300,1,13296,'0.99','2005-08-19 18:43:53','2006-02-15 22:15:43'),(8160,300,2,13499,'6.99','2005-08-20 01:52:30','2006-02-15 22:15:43'),(8161,300,1,13717,'5.99','2005-08-20 09:50:52','2006-02-15 22:15:43'),(8162,300,1,14674,'7.99','2005-08-21 20:01:34','2006-02-15 22:15:43'),(8163,300,1,14709,'9.99','2005-08-21 21:07:59','2006-02-15 22:15:43'),(8164,300,2,15051,'2.99','2005-08-22 10:08:50','2006-02-15 22:15:43'),(8165,300,2,15811,'5.99','2005-08-23 14:43:46','2006-02-15 22:15:43'),(8166,300,1,15695,'4.99','2006-02-14 15:16:03','2006-02-15 22:15:43'),(8167,301,2,27,'4.99','2005-05-25 03:41:50','2006-02-15 22:15:43'),(8168,301,2,227,'5.99','2005-05-26 10:51:46','2006-02-15 22:15:43'),(8169,301,1,955,'0.99','2005-05-30 16:59:03','2006-02-15 22:15:43'),(8170,301,1,1853,'0.99','2005-06-17 00:39:54','2006-02-15 22:15:43'),(8171,301,1,2611,'4.99','2005-06-19 07:18:17','2006-02-15 22:15:43'),(8172,301,2,2925,'2.99','2005-06-20 04:23:49','2006-02-15 22:15:43'),(8173,301,2,4316,'4.99','2005-07-07 17:44:22','2006-02-15 22:15:43'),(8174,301,2,4834,'3.99','2005-07-08 18:07:45','2006-02-15 22:15:43'),(8175,301,1,5119,'6.99','2005-07-09 07:14:18','2006-02-15 22:15:43'),(8176,301,2,5511,'4.99','2005-07-10 01:00:00','2006-02-15 22:15:43'),(8177,301,2,5730,'2.99','2005-07-10 11:28:32','2006-02-15 22:15:43'),(8178,301,2,5807,'2.99','2005-07-10 15:16:30','2006-02-15 22:15:43'),(8179,301,2,6833,'6.99','2005-07-12 18:53:34','2006-02-15 22:15:44'),(8180,301,2,7318,'4.99','2005-07-27 13:25:31','2006-02-15 22:15:44'),(8181,301,2,7818,'4.99','2005-07-28 08:25:00','2006-02-15 22:15:44'),(8182,301,2,9435,'4.99','2005-07-30 21:31:02','2006-02-15 22:15:44'),(8183,301,1,10883,'0.99','2005-08-02 00:47:19','2006-02-15 22:15:44'),(8184,301,2,13183,'5.99','2005-08-19 14:09:26','2006-02-15 22:15:44'),(8185,301,2,13633,'2.99','2005-08-20 07:13:47','2006-02-15 22:15:44'),(8186,301,1,15201,'10.99','2005-08-22 16:24:42','2006-02-15 22:15:44'),(8187,301,1,15268,'1.99','2005-08-22 18:39:11','2006-02-15 22:15:44'),(8188,302,2,38,'4.99','2005-05-25 04:47:44','2006-02-15 22:15:44'),(8189,302,2,92,'5.99','2005-05-25 15:38:46','2006-02-15 22:15:44'),(8190,302,1,1231,'2.99','2005-06-15 04:04:41','2006-02-15 22:15:44'),(8191,302,2,4676,'4.99','2005-07-08 10:26:02','2006-02-15 22:15:44'),(8192,302,2,5498,'0.99','2005-07-10 00:27:21','2006-02-15 22:15:44'),(8193,302,2,5682,'2.99','2005-07-10 08:51:39','2006-02-15 22:15:44'),(8194,302,2,5709,'0.99','2005-07-10 10:31:52','2006-02-15 22:15:44'),(8195,302,2,5821,'4.99','2005-07-10 16:07:16','2006-02-15 22:15:44'),(8196,302,2,6623,'7.99','2005-07-12 09:05:34','2006-02-15 22:15:44'),(8197,302,1,7183,'0.99','2005-07-27 08:18:38','2006-02-15 22:15:44'),(8198,302,1,7411,'6.99','2005-07-27 16:42:30','2006-02-15 22:15:44'),(8199,302,1,8363,'6.99','2005-07-29 05:10:08','2006-02-15 22:15:44'),(8200,302,2,8646,'0.99','2005-07-29 14:48:48','2006-02-15 22:15:44'),(8201,302,1,8795,'2.99','2005-07-29 21:04:14','2006-02-15 22:15:44'),(8202,302,1,9146,'7.99','2005-07-30 10:32:08','2006-02-15 22:15:44'),(8203,302,2,9358,'2.99','2005-07-30 18:37:24','2006-02-15 22:15:44'),(8204,302,1,9374,'8.99','2005-07-30 19:10:03','2006-02-15 22:15:45'),(8205,302,2,9581,'5.99','2005-07-31 03:03:07','2006-02-15 22:15:45'),(8206,302,2,10329,'0.99','2005-08-01 04:56:13','2006-02-15 22:15:45'),(8207,302,1,12126,'7.99','2005-08-17 23:25:21','2006-02-15 22:15:45'),(8208,302,2,12516,'4.99','2005-08-18 13:39:53','2006-02-15 22:15:45'),(8209,302,1,12903,'2.99','2005-08-19 04:09:38','2006-02-15 22:15:45'),(8210,302,1,13916,'2.99','2005-08-20 16:43:02','2006-02-15 22:15:45'),(8211,302,1,14120,'4.99','2005-08-21 01:25:00','2006-02-15 22:15:45'),(8212,302,2,14247,'3.99','2005-08-21 05:35:17','2006-02-15 22:15:45'),(8213,302,2,15578,'2.99','2005-08-23 05:37:13','2006-02-15 22:15:45'),(8214,302,1,15622,'5.99','2005-08-23 07:22:02','2006-02-15 22:15:45'),(8215,302,2,15734,'0.99','2005-08-23 11:40:08','2006-02-15 22:15:45'),(8216,302,2,15987,'6.99','2005-08-23 20:22:17','2006-02-15 22:15:45'),(8217,303,1,265,'0.99','2005-05-26 16:07:38','2006-02-15 22:15:45'),(8218,303,1,871,'2.99','2005-05-30 05:01:30','2006-02-15 22:15:45'),(8219,303,2,1050,'4.99','2005-05-31 07:01:27','2006-02-15 22:15:45'),(8220,303,2,1970,'4.99','2005-06-17 09:23:16','2006-02-15 22:15:45'),(8221,303,1,2223,'8.99','2005-06-18 03:27:03','2006-02-15 22:15:45'),(8222,303,1,3077,'3.99','2005-06-20 15:05:18','2006-02-15 22:15:45'),(8223,303,1,3107,'2.99','2005-06-20 17:26:05','2006-02-15 22:15:45'),(8224,303,1,5140,'4.99','2005-07-09 08:04:59','2006-02-15 22:15:45'),(8225,303,1,6205,'4.99','2005-07-11 12:31:24','2006-02-15 22:15:45'),(8226,303,2,6219,'4.99','2005-07-11 13:18:37','2006-02-15 22:15:45'),(8227,303,1,6464,'4.99','2005-07-12 01:16:40','2006-02-15 22:15:45'),(8228,303,1,7023,'4.99','2005-07-27 02:32:44','2006-02-15 22:15:45'),(8229,303,2,7502,'2.99','2005-07-27 20:19:08','2006-02-15 22:15:46'),(8230,303,1,8409,'0.99','2005-07-29 06:41:22','2006-02-15 22:15:46'),(8231,303,2,8734,'6.99','2005-07-29 18:28:15','2006-02-15 22:15:46'),(8232,303,2,8764,'0.99','2005-07-29 19:39:04','2006-02-15 22:15:46'),(8233,303,2,10209,'2.99','2005-08-01 00:56:47','2006-02-15 22:15:46'),(8234,303,1,11253,'4.99','2005-08-02 13:42:44','2006-02-15 22:15:46'),(8235,303,2,11673,'2.99','2005-08-17 05:54:15','2006-02-15 22:15:46'),(8236,303,2,11993,'2.99','2005-08-17 18:27:49','2006-02-15 22:15:46'),(8237,303,2,12117,'0.99','2005-08-17 23:11:12','2006-02-15 22:15:46'),(8238,303,1,12365,'0.99','2005-08-18 07:55:09','2006-02-15 22:15:46'),(8239,303,2,12473,'2.99','2005-08-18 11:59:44','2006-02-15 22:15:46'),(8240,303,1,14750,'5.99','2005-08-21 23:09:32','2006-02-15 22:15:46'),(8241,303,2,14795,'4.99','2005-08-22 00:40:22','2006-02-15 22:15:46'),(8242,303,1,15511,'3.99','2005-08-23 02:55:42','2006-02-15 22:15:46'),(8243,304,1,135,'10.99','2005-05-25 21:58:58','2006-02-15 22:15:46'),(8244,304,1,415,'0.99','2005-05-27 14:51:45','2006-02-15 22:15:46'),(8245,304,2,937,'2.99','2005-05-30 14:47:31','2006-02-15 22:15:46'),(8246,304,1,1414,'6.99','2005-06-15 17:26:32','2006-02-15 22:15:46'),(8247,304,2,1525,'4.99','2005-06-16 00:26:07','2006-02-15 22:15:46'),(8248,304,1,2039,'3.99','2005-06-17 14:03:43','2006-02-15 22:15:46'),(8249,304,2,2902,'4.99','2005-06-20 02:45:35','2006-02-15 22:15:46'),(8250,304,1,4466,'6.99','2005-07-08 00:12:53','2006-02-15 22:15:46'),(8251,304,2,4812,'8.99','2005-07-08 17:07:11','2006-02-15 22:15:46'),(8252,304,1,5411,'2.99','2005-07-09 20:23:38','2006-02-15 22:15:46'),(8253,304,1,5712,'4.99','2005-07-10 10:40:32','2006-02-15 22:15:46'),(8254,304,2,5749,'3.99','2005-07-10 12:20:36','2006-02-15 22:15:47'),(8255,304,2,5795,'0.99','2005-07-10 14:36:29','2006-02-15 22:15:47'),(8256,304,2,6107,'0.99','2005-07-11 07:07:09','2006-02-15 22:15:47'),(8257,304,1,6737,'4.99','2005-07-12 14:16:52','2006-02-15 22:15:47'),(8258,304,2,7551,'4.99','2005-07-27 21:59:15','2006-02-15 22:15:47'),(8259,304,2,8055,'4.99','2005-07-28 17:02:32','2006-02-15 22:15:47'),(8260,304,1,9930,'0.99','2005-07-31 15:18:03','2006-02-15 22:15:47'),(8261,304,1,9992,'6.99','2005-07-31 17:29:48','2006-02-15 22:15:47'),(8262,304,1,10631,'0.99','2005-08-01 15:35:14','2006-02-15 22:15:47'),(8263,304,2,11983,'4.99','2005-08-17 18:13:55','2006-02-15 22:15:47'),(8264,304,1,12540,'5.99','2005-08-18 14:17:30','2006-02-15 22:15:47'),(8265,304,2,13911,'3.99','2005-08-20 16:31:33','2006-02-15 22:15:47'),(8266,304,1,14023,'0.99','2005-08-20 21:10:32','2006-02-15 22:15:47'),(8267,304,1,14899,'4.99','2005-08-22 04:26:38','2006-02-15 22:15:47'),(8268,304,1,14945,'4.99','2005-08-22 06:05:38','2006-02-15 22:15:47'),(8269,305,2,69,'2.99','2005-05-25 10:10:14','2006-02-15 22:15:47'),(8270,305,1,1574,'4.99','2005-06-16 03:39:56','2006-02-15 22:15:47'),(8271,305,2,1884,'0.99','2005-06-17 03:19:20','2006-02-15 22:15:47'),(8272,305,1,2166,'11.99','2005-06-17 23:51:21','2006-02-15 22:15:47'),(8273,305,1,3387,'0.99','2005-06-21 14:21:49','2006-02-15 22:15:47'),(8274,305,2,4260,'4.99','2005-07-07 14:22:45','2006-02-15 22:15:47'),(8275,305,1,4638,'2.99','2005-07-08 08:57:20','2006-02-15 22:15:47'),(8276,305,2,5041,'0.99','2005-07-09 03:18:51','2006-02-15 22:15:47'),(8277,305,1,5052,'2.99','2005-07-09 03:59:43','2006-02-15 22:15:47'),(8278,305,2,5582,'4.99','2005-07-10 04:08:25','2006-02-15 22:15:47'),(8279,305,1,5745,'8.99','2005-07-10 12:10:11','2006-02-15 22:15:47'),(8280,305,1,6134,'7.99','2005-07-11 08:28:19','2006-02-15 22:15:48'),(8281,305,2,6619,'0.99','2005-07-12 08:50:48','2006-02-15 22:15:48'),(8282,305,2,8865,'4.99','2005-07-29 23:54:54','2006-02-15 22:15:48'),(8283,305,2,9119,'4.99','2005-07-30 09:25:56','2006-02-15 22:15:48'),(8284,305,2,10426,'4.99','2005-08-01 08:26:08','2006-02-15 22:15:48'),(8285,305,2,10929,'4.99','2005-08-02 02:35:44','2006-02-15 22:15:48'),(8286,305,1,10981,'2.99','2005-08-02 04:17:53','2006-02-15 22:15:48'),(8287,305,2,11035,'5.99','2005-08-02 05:55:39','2006-02-15 22:15:48'),(8288,305,2,11809,'3.99','2005-08-17 11:51:39','2006-02-15 22:15:48'),(8289,305,2,12592,'3.99','2005-08-18 16:17:50','2006-02-15 22:15:48'),(8290,305,2,12846,'0.99','2005-08-19 02:03:26','2006-02-15 22:15:48'),(8291,305,1,13782,'4.99','2005-08-20 12:09:26','2006-02-15 22:15:48'),(8292,305,2,15417,'2.99','2005-08-22 23:54:04','2006-02-15 22:15:48'),(8293,305,1,15612,'6.99','2005-08-23 06:59:07','2006-02-15 22:15:48'),(8294,306,2,375,'3.99','2005-05-27 08:49:21','2006-02-15 22:15:48'),(8295,306,2,672,'6.99','2005-05-28 22:05:29','2006-02-15 22:15:48'),(8296,306,2,1172,'0.99','2005-06-14 23:54:34','2006-02-15 22:15:48'),(8297,306,2,2836,'6.99','2005-06-19 21:58:21','2006-02-15 22:15:48'),(8298,306,1,3814,'6.99','2005-07-06 15:23:56','2006-02-15 22:15:48'),(8299,306,2,4484,'5.99','2005-07-08 01:05:57','2006-02-15 22:15:48'),(8300,306,2,4596,'1.99','2005-07-08 06:41:25','2006-02-15 22:15:48'),(8301,306,2,5581,'2.99','2005-07-10 04:06:06','2006-02-15 22:15:48'),(8302,306,2,6868,'2.99','2005-07-12 20:10:17','2006-02-15 22:15:48'),(8303,306,1,6953,'4.99','2005-07-26 23:52:47','2006-02-15 22:15:48'),(8304,306,1,7225,'6.99','2005-07-27 09:47:12','2006-02-15 22:15:49'),(8305,306,1,7232,'4.99','2005-07-27 10:04:19','2006-02-15 22:15:49'),(8306,306,2,7701,'2.99','2005-07-28 03:54:28','2006-02-15 22:15:49'),(8307,306,2,8620,'0.99','2005-07-29 13:51:20','2006-02-15 22:15:49'),(8308,306,1,8702,'0.99','2005-07-29 17:04:37','2006-02-15 22:15:49'),(8309,306,2,9242,'4.99','2005-07-30 14:03:58','2006-02-15 22:15:49'),(8310,306,2,9395,'4.99','2005-07-30 20:07:06','2006-02-15 22:15:49'),(8311,306,1,9774,'0.99','2005-07-31 09:57:51','2006-02-15 22:15:49'),(8312,306,1,10202,'6.99','2005-08-01 00:43:18','2006-02-15 22:15:49'),(8313,306,2,10893,'5.99','2005-08-02 01:12:13','2006-02-15 22:15:49'),(8314,306,2,11142,'4.99','2005-08-02 09:30:11','2006-02-15 22:15:49'),(8315,306,1,11440,'0.99','2005-08-02 20:24:02','2006-02-15 22:15:49'),(8316,306,2,11674,'6.99','2005-08-17 05:56:27','2006-02-15 22:15:49'),(8317,306,2,11776,'0.99','2005-08-17 10:27:19','2006-02-15 22:15:49'),(8318,306,1,12225,'7.99','2005-08-18 03:00:11','2006-02-15 22:15:49'),(8319,306,1,12989,'2.99','2005-08-19 07:19:04','2006-02-15 22:15:49'),(8320,306,1,13686,'4.99','2005-08-20 08:57:28','2006-02-15 22:15:49'),(8321,306,2,13725,'5.99','2005-08-20 10:08:27','2006-02-15 22:15:49'),(8322,306,1,13873,'0.99','2005-08-20 15:11:11','2006-02-15 22:15:49'),(8323,306,1,13996,'4.99','2005-08-20 19:45:43','2006-02-15 22:15:49'),(8324,306,1,15457,'2.99','2005-08-23 01:07:37','2006-02-15 22:15:49'),(8325,306,2,15868,'7.99','2005-08-23 16:19:14','2006-02-15 22:15:49'),(8326,307,2,413,'4.99','2005-05-27 14:45:37','2006-02-15 22:15:49'),(8327,307,1,535,'4.99','2005-05-28 06:16:32','2006-02-15 22:15:49'),(8328,307,1,614,'1.99','2005-05-28 15:33:28','2006-02-15 22:15:49'),(8329,307,1,970,'6.99','2005-05-30 19:50:28','2006-02-15 22:15:50'),(8330,307,2,2152,'2.99','2005-06-17 22:53:27','2006-02-15 22:15:50'),(8331,307,1,2167,'0.99','2005-06-17 23:51:28','2006-02-15 22:15:50'),(8332,307,1,2787,'4.99','2005-06-19 18:47:00','2006-02-15 22:15:50'),(8333,307,1,2881,'2.99','2005-06-20 01:26:18','2006-02-15 22:15:50'),(8334,307,2,3057,'5.99','2005-06-20 13:22:48','2006-02-15 22:15:50'),(8335,307,1,3209,'4.99','2005-06-21 00:51:06','2006-02-15 22:15:50'),(8336,307,1,3962,'6.99','2005-07-06 22:13:45','2006-02-15 22:15:50'),(8337,307,1,3985,'4.99','2005-07-06 23:24:03','2006-02-15 22:15:50'),(8338,307,1,4522,'2.99','2005-07-08 03:03:12','2006-02-15 22:15:50'),(8339,307,1,4868,'4.99','2005-07-08 19:13:50','2006-02-15 22:15:50'),(8340,307,1,5871,'3.99','2005-07-10 18:46:08','2006-02-15 22:15:50'),(8341,307,2,6125,'6.99','2005-07-11 08:03:35','2006-02-15 22:15:50'),(8342,307,1,6256,'0.99','2005-07-11 15:19:22','2006-02-15 22:15:50'),(8343,307,1,6991,'10.99','2005-07-27 01:03:06','2006-02-15 22:15:50'),(8344,307,1,7536,'2.99','2005-07-27 21:34:09','2006-02-15 22:15:50'),(8345,307,1,7760,'3.99','2005-07-28 06:29:45','2006-02-15 22:15:50'),(8346,307,1,7929,'0.99','2005-07-28 12:16:40','2006-02-15 22:15:50'),(8347,307,1,8647,'6.99','2005-07-29 14:52:59','2006-02-15 22:15:50'),(8348,307,1,10135,'4.99','2005-07-31 21:57:32','2006-02-15 22:15:50'),(8349,307,1,10374,'0.99','2005-08-01 06:25:27','2006-02-15 22:15:50'),(8350,307,1,10745,'2.99','2005-08-01 19:57:06','2006-02-15 22:15:50'),(8351,307,1,11491,'7.99','2005-08-02 22:44:50','2006-02-15 22:15:50'),(8352,307,2,12391,'4.99','2005-08-18 08:52:53','2006-02-15 22:15:50'),(8353,307,2,13365,'6.99','2005-08-19 21:12:37','2006-02-15 22:15:51'),(8354,307,1,14231,'0.99','2005-08-21 05:04:34','2006-02-15 22:15:51'),(8355,307,2,15515,'4.99','2005-08-23 03:03:53','2006-02-15 22:15:51'),(8356,308,2,589,'3.99','2005-05-28 12:27:50','2006-02-15 22:15:51'),(8357,308,1,2037,'0.99','2005-06-17 13:54:20','2006-02-15 22:15:51'),(8358,308,1,2094,'0.99','2005-06-17 18:18:56','2006-02-15 22:15:51'),(8359,308,2,2168,'4.99','2005-06-17 23:53:24','2006-02-15 22:15:51'),(8360,308,1,2346,'7.99','2005-06-18 12:08:16','2006-02-15 22:15:51'),(8361,308,2,2448,'4.99','2005-06-18 19:13:45','2006-02-15 22:15:51'),(8362,308,1,4002,'3.99','2005-07-07 00:08:18','2006-02-15 22:15:51'),(8363,308,1,4285,'8.99','2005-07-07 15:34:35','2006-02-15 22:15:51'),(8364,308,1,5946,'2.99','2005-07-10 22:57:29','2006-02-15 22:15:51'),(8365,308,2,8869,'0.99','2005-07-30 00:06:32','2006-02-15 22:15:51'),(8366,308,1,9479,'2.99','2005-07-30 23:22:09','2006-02-15 22:15:51'),(8367,308,1,9746,'7.99','2005-07-31 09:16:48','2006-02-15 22:15:51'),(8368,308,1,10571,'2.99','2005-08-01 13:25:30','2006-02-15 22:15:51'),(8369,308,2,10797,'0.99','2005-08-01 22:02:51','2006-02-15 22:15:51'),(8370,308,1,10819,'4.99','2005-08-01 22:52:57','2006-02-15 22:15:51'),(8371,308,1,11765,'2.99','2005-08-17 09:55:28','2006-02-15 22:15:51'),(8372,308,1,11972,'4.99','2005-08-17 17:55:46','2006-02-15 22:15:51'),(8373,308,2,12567,'3.99','2005-08-18 15:14:36','2006-02-15 22:15:51'),(8374,308,1,12590,'6.99','2005-08-18 16:11:35','2006-02-15 22:15:51'),(8375,308,2,12838,'6.99','2005-08-19 01:51:50','2006-02-15 22:15:51'),(8376,308,1,13843,'2.99','2005-08-20 14:30:01','2006-02-15 22:15:51'),(8377,308,2,14946,'2.99','2005-08-22 06:07:10','2006-02-15 22:15:51'),(8378,308,1,15243,'4.99','2005-08-22 17:48:28','2006-02-15 22:15:52'),(8379,308,2,15493,'4.99','2005-08-23 02:20:53','2006-02-15 22:15:52'),(8380,308,2,15820,'2.99','2005-08-23 15:03:13','2006-02-15 22:15:52'),(8381,309,2,218,'6.99','2005-05-26 09:27:09','2006-02-15 22:15:52'),(8382,309,2,723,'0.99','2005-05-29 05:34:44','2006-02-15 22:15:52'),(8383,309,1,1837,'4.99','2005-06-16 23:16:15','2006-02-15 22:15:52'),(8384,309,2,2560,'9.99','2005-06-19 03:12:42','2006-02-15 22:15:52'),(8385,309,2,2644,'3.99','2005-06-19 09:42:30','2006-02-15 22:15:52'),(8386,309,2,2688,'6.99','2005-06-19 12:50:56','2006-02-15 22:15:52'),(8387,309,2,3837,'4.99','2005-07-06 16:27:43','2006-02-15 22:15:52'),(8388,309,2,3896,'7.99','2005-07-06 19:09:15','2006-02-15 22:15:52'),(8389,309,2,4172,'4.99','2005-07-07 09:49:09','2006-02-15 22:15:52'),(8390,309,1,4540,'4.99','2005-07-08 04:03:28','2006-02-15 22:15:52'),(8391,309,2,5305,'8.99','2005-07-09 15:55:36','2006-02-15 22:15:52'),(8392,309,1,5980,'4.99','2005-07-11 00:18:21','2006-02-15 22:15:52'),(8393,309,2,6480,'4.99','2005-07-12 01:49:29','2006-02-15 22:15:52'),(8394,309,2,7214,'5.99','2005-07-27 09:23:33','2006-02-15 22:15:52'),(8395,309,2,7722,'4.99','2005-07-28 04:44:58','2006-02-15 22:15:52'),(8396,309,1,7846,'5.99','2005-07-28 09:21:18','2006-02-15 22:15:52'),(8397,309,1,8341,'4.99','2005-07-29 04:42:01','2006-02-15 22:15:52'),(8398,309,1,8501,'2.99','2005-07-29 09:12:51','2006-02-15 22:15:52'),(8399,309,1,8681,'2.99','2005-07-29 16:12:01','2006-02-15 22:15:52'),(8400,309,1,8917,'2.99','2005-07-30 01:47:02','2006-02-15 22:15:52'),(8401,309,2,9945,'2.99','2005-07-31 15:47:51','2006-02-15 22:15:52'),(8402,309,1,9949,'0.99','2005-07-31 15:50:10','2006-02-15 22:15:53'),(8403,309,1,10458,'2.99','2005-08-01 09:19:48','2006-02-15 22:15:53'),(8404,309,1,10728,'0.99','2005-08-01 19:15:09','2006-02-15 22:15:53'),(8405,309,1,10818,'2.99','2005-08-01 22:52:45','2006-02-15 22:15:53'),(8406,309,2,11964,'6.99','2005-08-17 17:37:03','2006-02-15 22:15:53'),(8407,309,2,13021,'5.99','2005-08-19 08:08:04','2006-02-15 22:15:53'),(8408,309,2,13502,'0.99','2005-08-20 01:58:15','2006-02-15 22:15:53'),(8409,309,2,13909,'4.99','2005-08-20 16:26:36','2006-02-15 22:15:53'),(8410,309,2,14846,'5.99','2005-08-22 02:13:48','2006-02-15 22:15:53'),(8411,309,2,15422,'4.99','2005-08-22 23:58:09','2006-02-15 22:15:53'),(8412,310,2,104,'0.99','2005-05-25 17:46:33','2006-02-15 22:15:53'),(8413,310,2,1162,'4.99','2005-06-14 23:09:38','2006-02-15 22:15:53'),(8414,310,2,1333,'2.99','2005-06-15 11:37:08','2006-02-15 22:15:53'),(8415,310,2,1918,'3.99','2005-06-17 05:40:14','2006-02-15 22:15:53'),(8416,310,2,2088,'6.99','2005-06-17 17:35:30','2006-02-15 22:15:53'),(8417,310,1,2480,'5.99','2005-06-18 21:04:09','2006-02-15 22:15:53'),(8418,310,1,2618,'2.99','2005-06-19 08:03:01','2006-02-15 22:15:53'),(8419,310,2,3830,'10.99','2005-07-06 16:01:16','2006-02-15 22:15:53'),(8420,310,1,4072,'0.99','2005-07-07 04:48:02','2006-02-15 22:15:53'),(8421,310,1,5621,'5.99','2005-07-10 05:34:10','2006-02-15 22:15:53'),(8422,310,2,5836,'0.99','2005-07-10 16:49:02','2006-02-15 22:15:53'),(8423,310,1,7648,'5.99','2005-07-28 01:35:33','2006-02-15 22:15:53'),(8424,310,2,8637,'5.99','2005-07-29 14:30:11','2006-02-15 22:15:53'),(8425,310,1,8981,'7.99','2005-07-30 04:25:30','2006-02-15 22:15:53'),(8426,310,1,9536,'2.99','2005-07-31 01:19:02','2006-02-15 22:15:53'),(8427,310,2,11137,'2.99','2005-08-02 09:25:31','2006-02-15 22:15:54'),(8428,310,2,12500,'4.99','2005-08-18 13:05:51','2006-02-15 22:15:54'),(8429,310,2,12710,'7.99','2005-08-18 21:02:50','2006-02-15 22:15:54'),(8430,310,1,12929,'4.99','2005-08-19 05:05:23','2006-02-15 22:15:54'),(8431,310,1,14972,'5.99','2005-08-22 06:53:21','2006-02-15 22:15:54'),(8432,311,2,274,'5.99','2005-05-26 16:48:51','2006-02-15 22:15:54'),(8433,311,2,544,'6.99','2005-05-28 07:03:00','2006-02-15 22:15:54'),(8434,311,1,952,'2.99','2005-05-30 16:28:07','2006-02-15 22:15:54'),(8435,311,2,990,'3.99','2005-05-30 23:25:14','2006-02-15 22:15:54'),(8436,311,2,1128,'6.99','2005-05-31 17:49:26','2006-02-15 22:15:54'),(8437,311,1,1622,'4.99','2005-06-16 07:33:18','2006-02-15 22:15:54'),(8438,311,2,1955,'0.99','2005-06-17 08:40:22','2006-02-15 22:15:54'),(8439,311,2,2967,'6.99','2005-06-20 07:40:35','2006-02-15 22:15:54'),(8440,311,2,4836,'3.99','2005-07-08 18:09:08','2006-02-15 22:15:54'),(8441,311,2,5224,'5.99','2005-07-09 12:07:27','2006-02-15 22:15:54'),(8442,311,2,6419,'4.99','2005-07-11 23:36:38','2006-02-15 22:15:54'),(8443,311,2,8167,'6.99','2005-07-28 21:25:45','2006-02-15 22:15:54'),(8444,311,1,8473,'2.99','2005-07-29 08:36:53','2006-02-15 22:15:54'),(8445,311,1,9503,'6.99','2005-07-31 00:02:38','2006-02-15 22:15:54'),(8446,311,2,9882,'8.99','2005-07-31 13:53:33','2006-02-15 22:15:54'),(8447,311,1,10134,'4.99','2005-07-31 21:56:10','2006-02-15 22:15:54'),(8448,311,2,10448,'4.99','2005-08-01 09:09:31','2006-02-15 22:15:54'),(8449,311,1,12997,'2.99','2005-08-19 07:31:46','2006-02-15 22:15:54'),(8450,311,2,13310,'0.99','2005-08-19 19:05:16','2006-02-15 22:15:54'),(8451,311,2,13423,'1.99','2005-08-19 23:07:42','2006-02-15 22:15:55'),(8452,311,2,14517,'4.99','2005-08-21 14:57:03','2006-02-15 22:15:55'),(8453,311,2,15826,'9.99','2005-08-23 15:15:02','2006-02-15 22:15:55'),(8454,311,1,16020,'8.99','2005-08-23 21:34:33','2006-02-15 22:15:55'),(8455,312,2,229,'4.99','2005-05-26 11:19:20','2006-02-15 22:15:55'),(8456,312,1,530,'0.99','2005-05-28 05:13:01','2006-02-15 22:15:55'),(8457,312,2,1049,'4.99','2005-05-31 06:57:04','2006-02-15 22:15:55'),(8458,312,2,1079,'6.99','2005-05-31 10:48:17','2006-02-15 22:15:55'),(8459,312,2,1419,'0.99','2005-06-15 17:54:50','2006-02-15 22:15:55'),(8460,312,2,3457,'3.99','2005-06-21 21:42:33','2006-02-15 22:15:55'),(8461,312,1,3766,'2.99','2005-07-06 13:04:35','2006-02-15 22:15:55'),(8462,312,1,3792,'1.99','2005-07-06 14:26:38','2006-02-15 22:15:55'),(8463,312,1,4647,'3.99','2005-07-08 09:27:36','2006-02-15 22:15:55'),(8464,312,1,5031,'5.99','2005-07-09 02:36:37','2006-02-15 22:15:55'),(8465,312,2,6751,'2.99','2005-07-12 14:50:34','2006-02-15 22:15:55'),(8466,312,1,6866,'2.99','2005-07-12 20:03:44','2006-02-15 22:15:55'),(8467,312,1,8137,'4.99','2005-07-28 20:07:18','2006-02-15 22:15:55'),(8468,312,1,8412,'6.99','2005-07-29 06:44:50','2006-02-15 22:15:55'),(8469,312,1,8721,'4.99','2005-07-29 17:56:21','2006-02-15 22:15:55'),(8470,312,1,9016,'6.99','2005-07-30 05:26:13','2006-02-15 22:15:55'),(8471,312,1,9154,'3.99','2005-07-30 10:59:54','2006-02-15 22:15:55'),(8472,312,2,10858,'2.99','2005-08-02 00:08:39','2006-02-15 22:15:55'),(8473,312,2,11248,'0.99','2005-08-02 13:35:34','2006-02-15 22:15:55'),(8474,312,2,11879,'5.99','2005-08-17 14:25:09','2006-02-15 22:15:55'),(8475,312,1,12186,'2.99','2005-08-18 01:43:36','2006-02-15 22:15:56'),(8476,312,1,12945,'0.99','2005-08-19 05:51:46','2006-02-15 22:15:56'),(8477,312,2,14362,'2.99','2005-08-21 09:19:49','2006-02-15 22:15:56'),(8478,312,1,14504,'3.99','2005-08-21 14:23:01','2006-02-15 22:15:56'),(8479,312,1,15100,'4.99','2005-08-22 11:55:03','2006-02-15 22:15:56'),(8480,312,1,15882,'6.99','2005-08-23 16:44:31','2006-02-15 22:15:56'),(8481,313,2,669,'4.99','2005-05-28 22:03:25','2006-02-15 22:15:56'),(8482,313,2,712,'2.99','2005-05-29 04:02:24','2006-02-15 22:15:56'),(8483,313,2,781,'0.99','2005-05-29 14:23:58','2006-02-15 22:15:56'),(8484,313,2,843,'0.99','2005-05-30 00:44:24','2006-02-15 22:15:56'),(8485,313,2,1312,'2.99','2005-06-15 10:16:27','2006-02-15 22:15:56'),(8486,313,1,2617,'7.99','2005-06-19 07:48:31','2006-02-15 22:15:56'),(8487,313,2,2711,'4.99','2005-06-19 14:12:22','2006-02-15 22:15:56'),(8488,313,2,4552,'2.99','2005-07-08 04:36:35','2006-02-15 22:15:56'),(8489,313,1,5255,'5.99','2005-07-09 13:51:08','2006-02-15 22:15:56'),(8490,313,1,6384,'2.99','2005-07-11 22:07:26','2006-02-15 22:15:56'),(8491,313,2,7294,'0.99','2005-07-27 12:38:14','2006-02-15 22:15:56'),(8492,313,2,8381,'4.99','2005-07-29 05:31:44','2006-02-15 22:15:56'),(8493,313,1,8970,'3.99','2005-07-30 04:02:05','2006-02-15 22:15:56'),(8494,313,2,9836,'2.99','2005-07-31 12:12:00','2006-02-15 22:15:56'),(8495,313,2,10237,'5.99','2005-08-01 02:07:32','2006-02-15 22:15:56'),(8496,313,2,10933,'7.99','2005-08-02 02:50:49','2006-02-15 22:15:56'),(8497,313,2,11854,'2.99','2005-08-17 13:42:52','2006-02-15 22:15:56'),(8498,313,2,12011,'2.99','2005-08-17 19:19:44','2006-02-15 22:15:56'),(8499,313,2,14250,'2.99','2005-08-21 05:39:35','2006-02-15 22:15:56'),(8500,313,1,14325,'4.99','2005-08-21 08:15:38','2006-02-15 22:15:57'),(8501,313,2,15081,'2.99','2005-08-22 11:14:31','2006-02-15 22:15:57'),(8502,313,1,15340,'0.99','2005-08-22 20:55:56','2006-02-15 22:15:57'),(8503,313,2,15569,'6.99','2005-08-23 05:24:29','2006-02-15 22:15:57'),(8504,314,1,80,'5.99','2005-05-25 12:12:07','2006-02-15 22:15:57'),(8505,314,1,440,'4.99','2005-05-27 18:00:35','2006-02-15 22:15:57'),(8506,314,1,1598,'3.99','2005-06-16 06:02:39','2006-02-15 22:15:57'),(8507,314,1,1624,'2.99','2005-06-16 07:48:57','2006-02-15 22:15:57'),(8508,314,1,3517,'0.99','2005-07-06 00:52:35','2006-02-15 22:15:57'),(8509,314,1,3656,'2.99','2005-07-06 07:55:22','2006-02-15 22:15:57'),(8510,314,1,3808,'0.99','2005-07-06 15:15:35','2006-02-15 22:15:57'),(8511,314,2,4386,'0.99','2005-07-07 20:55:19','2006-02-15 22:15:57'),(8512,314,2,5241,'4.99','2005-07-09 13:19:14','2006-02-15 22:15:57'),(8513,314,2,5856,'0.99','2005-07-10 17:57:32','2006-02-15 22:15:57'),(8514,314,1,6192,'5.99','2005-07-11 11:44:41','2006-02-15 22:15:57'),(8515,314,1,6666,'2.99','2005-07-12 11:32:15','2006-02-15 22:15:57'),(8516,314,1,6763,'3.99','2005-07-12 15:26:34','2006-02-15 22:15:57'),(8517,314,2,7004,'4.99','2005-07-27 01:36:05','2006-02-15 22:15:57'),(8518,314,1,7276,'2.99','2005-07-27 11:41:57','2006-02-15 22:15:57'),(8519,314,2,8022,'6.99','2005-07-28 15:48:56','2006-02-15 22:15:57'),(8520,314,1,8073,'3.99','2005-07-28 17:29:02','2006-02-15 22:15:57'),(8521,314,2,8105,'0.99','2005-07-28 18:59:46','2006-02-15 22:15:57'),(8522,314,2,8328,'6.99','2005-07-29 04:06:24','2006-02-15 22:15:57'),(8523,314,2,8644,'4.99','2005-07-29 14:45:45','2006-02-15 22:15:57'),(8524,314,2,9191,'3.99','2005-07-30 12:25:51','2006-02-15 22:15:58'),(8525,314,2,9318,'6.99','2005-07-30 17:14:30','2006-02-15 22:15:58'),(8526,314,2,11908,'3.99','2005-08-17 15:43:09','2006-02-15 22:15:58'),(8527,314,1,12434,'0.99','2005-08-18 10:38:08','2006-02-15 22:15:58'),(8528,314,2,13120,'3.99','2005-08-19 11:47:38','2006-02-15 22:15:58'),(8529,314,1,13265,'2.99','2005-08-19 17:29:00','2006-02-15 22:15:58'),(8530,314,2,13553,'3.99','2005-08-20 04:07:21','2006-02-15 22:15:58'),(8531,314,2,14145,'4.99','2005-08-21 02:11:38','2006-02-15 22:15:58'),(8532,314,1,14409,'4.99','2005-08-21 10:53:35','2006-02-15 22:15:58'),(8533,314,2,14682,'4.99','2005-08-21 20:25:57','2006-02-15 22:15:58'),(8534,314,2,14815,'4.99','2005-08-22 01:12:44','2006-02-15 22:15:58'),(8535,314,2,14873,'5.99','2005-08-22 03:31:06','2006-02-15 22:15:58'),(8536,314,2,16021,'3.99','2005-08-23 21:37:59','2006-02-15 22:15:58'),(8537,315,1,537,'8.99','2005-05-28 06:20:55','2006-02-15 22:15:58'),(8538,315,1,551,'4.99','2005-05-28 07:44:18','2006-02-15 22:15:58'),(8539,315,1,1701,'2.99','2005-06-16 13:18:48','2006-02-15 22:15:58'),(8540,315,1,4021,'2.99','2005-07-07 01:46:44','2006-02-15 22:15:58'),(8541,315,1,4992,'4.99','2005-07-09 00:49:37','2006-02-15 22:15:58'),(8542,315,2,5126,'6.99','2005-07-09 07:25:35','2006-02-15 22:15:58'),(8543,315,1,6661,'4.99','2005-07-12 11:20:39','2006-02-15 22:15:58'),(8544,315,1,6894,'4.99','2005-07-12 21:20:50','2006-02-15 22:15:58'),(8545,315,1,8416,'5.99','2005-07-29 06:52:54','2006-02-15 22:15:58'),(8546,315,2,8677,'6.99','2005-07-29 16:01:13','2006-02-15 22:15:58'),(8547,315,2,9735,'9.99','2005-07-31 08:57:49','2006-02-15 22:15:58'),(8548,315,2,11254,'0.99','2005-08-02 13:43:49','2006-02-15 22:15:59'),(8549,315,2,12155,'2.99','2005-08-18 00:24:30','2006-02-15 22:15:59'),(8550,315,1,14106,'2.99','2005-08-21 00:46:01','2006-02-15 22:15:59'),(8551,315,2,14162,'2.99','2005-08-21 02:55:34','2006-02-15 22:15:59'),(8552,315,1,15504,'6.99','2005-08-23 02:45:21','2006-02-15 22:15:59'),(8553,315,2,14426,'2.99','2006-02-14 15:16:03','2006-02-15 22:15:59'),(8554,316,1,16,'4.99','2005-05-25 00:43:11','2006-02-15 22:15:59'),(8555,316,1,644,'8.99','2005-05-28 18:59:12','2006-02-15 22:15:59'),(8556,316,1,1065,'1.99','2005-05-31 08:54:56','2006-02-15 22:15:59'),(8557,316,1,1317,'4.99','2005-06-15 10:30:19','2006-02-15 22:15:59'),(8558,316,2,1350,'4.99','2005-06-15 12:50:25','2006-02-15 22:15:59'),(8559,316,1,2032,'4.99','2005-06-17 13:24:07','2006-02-15 22:15:59'),(8560,316,2,2338,'4.99','2005-06-18 11:24:54','2006-02-15 22:15:59'),(8561,316,2,2491,'1.99','2005-06-18 22:01:31','2006-02-15 22:15:59'),(8562,316,1,2820,'4.99','2005-06-19 20:20:33','2006-02-15 22:15:59'),(8563,316,2,3373,'8.99','2005-06-21 13:35:32','2006-02-15 22:15:59'),(8564,316,1,4379,'2.99','2005-07-07 20:32:30','2006-02-15 22:15:59'),(8565,316,2,5102,'3.99','2005-07-09 06:25:48','2006-02-15 22:15:59'),(8566,316,2,5544,'7.99','2005-07-10 02:48:07','2006-02-15 22:15:59'),(8567,316,1,5618,'5.99','2005-07-10 05:28:58','2006-02-15 22:15:59'),(8568,316,2,6988,'4.99','2005-07-27 01:00:08','2006-02-15 22:15:59'),(8569,316,2,7339,'2.99','2005-07-27 14:17:48','2006-02-15 22:15:59'),(8570,316,2,7586,'2.99','2005-07-27 23:19:29','2006-02-15 22:15:59'),(8571,316,1,7592,'4.99','2005-07-27 23:26:04','2006-02-15 22:15:59'),(8572,316,1,7945,'1.99','2005-07-28 12:53:58','2006-02-15 22:15:59'),(8573,316,1,8564,'4.99','2005-07-29 11:33:00','2006-02-15 22:16:00'),(8574,316,1,9508,'4.99','2005-07-31 00:22:39','2006-02-15 22:16:00'),(8575,316,2,9903,'6.99','2005-07-31 14:31:44','2006-02-15 22:16:00'),(8576,316,1,10438,'7.99','2005-08-01 08:53:04','2006-02-15 22:16:00'),(8577,316,1,12028,'0.99','2005-08-17 20:03:47','2006-02-15 22:16:00'),(8578,316,2,12191,'0.99','2005-08-18 01:57:11','2006-02-15 22:16:00'),(8579,316,2,12823,'2.99','2005-08-19 01:15:47','2006-02-15 22:16:00'),(8580,316,2,13277,'5.99','2005-08-19 17:57:35','2006-02-15 22:16:00'),(8581,316,1,14226,'2.99','2005-08-21 04:55:37','2006-02-15 22:16:00'),(8582,316,2,15840,'2.99','2005-08-23 15:34:49','2006-02-15 22:16:00'),(8583,317,1,107,'6.99','2005-05-25 18:28:09','2006-02-15 22:16:00'),(8584,317,2,2287,'6.99','2005-06-18 07:04:36','2006-02-15 22:16:00'),(8585,317,2,3029,'2.99','2005-06-20 11:51:30','2006-02-15 22:16:00'),(8586,317,1,3251,'0.99','2005-06-21 03:20:37','2006-02-15 22:16:00'),(8587,317,1,4138,'0.99','2005-07-07 08:17:13','2006-02-15 22:16:00'),(8588,317,1,4177,'8.99','2005-07-07 10:12:36','2006-02-15 22:16:00'),(8589,317,2,4700,'0.99','2005-07-08 11:37:21','2006-02-15 22:16:00'),(8590,317,1,5548,'0.99','2005-07-10 02:56:45','2006-02-15 22:16:00'),(8591,317,2,5942,'7.99','2005-07-10 22:47:17','2006-02-15 22:16:00'),(8592,317,1,7309,'2.99','2005-07-27 13:00:29','2006-02-15 22:16:00'),(8593,317,2,8062,'2.99','2005-07-28 17:15:06','2006-02-15 22:16:00'),(8594,317,1,8327,'2.99','2005-07-29 04:00:52','2006-02-15 22:16:00'),(8595,317,1,8458,'4.99','2005-07-29 08:05:09','2006-02-15 22:16:00'),(8596,317,1,9110,'2.99','2005-07-30 09:05:42','2006-02-15 22:16:01'),(8597,317,2,9513,'4.99','2005-07-31 00:28:30','2006-02-15 22:16:01'),(8598,317,1,9770,'8.99','2005-07-31 09:52:40','2006-02-15 22:16:01'),(8599,317,1,10364,'2.99','2005-08-01 06:06:49','2006-02-15 22:16:01'),(8600,317,2,12111,'2.99','2005-08-17 22:59:55','2006-02-15 22:16:01'),(8601,317,2,12138,'7.99','2005-08-17 23:55:54','2006-02-15 22:16:01'),(8602,317,2,12301,'2.99','2005-08-18 05:36:20','2006-02-15 22:16:01'),(8603,317,1,13388,'4.99','2005-08-19 21:46:49','2006-02-15 22:16:01'),(8604,317,1,14032,'5.99','2005-08-20 21:26:55','2006-02-15 22:16:01'),(8605,317,2,14385,'0.99','2005-08-21 10:02:55','2006-02-15 22:16:01'),(8606,317,2,14669,'2.99','2005-08-21 19:54:06','2006-02-15 22:16:01'),(8607,317,1,14791,'4.99','2005-08-22 00:35:55','2006-02-15 22:16:01'),(8608,317,1,15204,'2.99','2005-08-22 16:30:43','2006-02-15 22:16:01'),(8609,317,1,15280,'4.99','2005-08-22 19:09:52','2006-02-15 22:16:01'),(8610,317,1,12574,'0.99','2006-02-14 15:16:03','2006-02-15 22:16:01'),(8611,318,1,224,'9.99','2005-05-26 10:18:27','2006-02-15 22:16:01'),(8612,318,1,2634,'2.99','2005-06-19 08:55:17','2006-02-15 22:16:01'),(8613,318,1,2643,'2.99','2005-06-19 09:39:27','2006-02-15 22:16:01'),(8614,318,2,3337,'0.99','2005-06-21 10:24:35','2006-02-15 22:16:01'),(8615,318,2,3376,'7.99','2005-06-21 13:43:02','2006-02-15 22:16:01'),(8616,318,1,3732,'4.99','2005-07-06 11:33:37','2006-02-15 22:16:01'),(8617,318,2,3974,'2.99','2005-07-06 22:59:16','2006-02-15 22:16:01'),(8618,318,1,4356,'8.99','2005-07-07 19:21:22','2006-02-15 22:16:01'),(8619,318,1,7649,'0.99','2005-07-28 01:37:26','2006-02-15 22:16:01'),(8620,318,2,7853,'0.99','2005-07-28 09:36:38','2006-02-15 22:16:02'),(8621,318,2,10023,'5.99','2005-07-31 18:25:51','2006-02-15 22:16:02'),(8622,318,1,14276,'2.99','2005-08-21 06:34:05','2006-02-15 22:16:02'),(8623,319,1,15,'9.99','2005-05-25 00:39:22','2006-02-15 22:16:02'),(8624,319,1,149,'3.99','2005-05-26 00:28:05','2006-02-15 22:16:02'),(8625,319,1,439,'2.99','2005-05-27 17:54:48','2006-02-15 22:16:02'),(8626,319,1,1632,'2.99','2005-06-16 08:03:42','2006-02-15 22:16:02'),(8627,319,1,1892,'4.99','2005-06-17 04:17:33','2006-02-15 22:16:02'),(8628,319,2,2021,'3.99','2005-06-17 12:41:18','2006-02-15 22:16:02'),(8629,319,2,2703,'4.99','2005-06-19 13:36:06','2006-02-15 22:16:02'),(8630,319,2,2884,'0.99','2005-06-20 01:31:16','2006-02-15 22:16:02'),(8631,319,2,3256,'3.99','2005-06-21 03:45:42','2006-02-15 22:16:02'),(8632,319,2,4119,'3.99','2005-07-07 07:06:03','2006-02-15 22:16:02'),(8633,319,2,4295,'2.99','2005-07-07 16:08:51','2006-02-15 22:16:02'),(8634,319,1,4630,'4.99','2005-07-08 08:33:38','2006-02-15 22:16:02'),(8635,319,1,5791,'8.99','2005-07-10 14:16:22','2006-02-15 22:16:02'),(8636,319,1,5882,'2.99','2005-07-10 19:20:34','2006-02-15 22:16:02'),(8637,319,2,6132,'2.99','2005-07-11 08:24:44','2006-02-15 22:16:02'),(8638,319,1,6195,'4.99','2005-07-11 12:00:32','2006-02-15 22:16:02'),(8639,319,1,6255,'4.99','2005-07-11 15:11:33','2006-02-15 22:16:02'),(8640,319,1,6485,'6.99','2005-07-12 02:07:59','2006-02-15 22:16:02'),(8641,319,2,7953,'2.99','2005-07-28 13:24:32','2006-02-15 22:16:02'),(8642,319,2,9017,'4.99','2005-07-30 05:26:20','2006-02-15 22:16:02'),(8643,319,2,9044,'0.99','2005-07-30 06:35:21','2006-02-15 22:16:02'),(8644,319,1,11575,'0.99','2005-08-17 01:50:26','2006-02-15 22:16:03'),(8645,319,2,11598,'0.99','2005-08-17 03:03:07','2006-02-15 22:16:03'),(8646,319,1,11955,'6.99','2005-08-17 17:21:35','2006-02-15 22:16:03'),(8647,319,2,11994,'2.99','2005-08-17 18:29:35','2006-02-15 22:16:03'),(8648,319,1,12018,'4.99','2005-08-17 19:44:46','2006-02-15 22:16:03'),(8649,319,2,12424,'8.99','2005-08-18 10:16:57','2006-02-15 22:16:03'),(8650,319,1,13548,'3.99','2005-08-20 03:53:20','2006-02-15 22:16:03'),(8651,319,2,14828,'4.99','2005-08-22 01:34:05','2006-02-15 22:16:03'),(8652,319,2,15396,'5.99','2005-08-22 23:07:57','2006-02-15 22:16:03'),(8653,320,2,1258,'4.99','2005-06-15 06:21:30','2006-02-15 22:16:03'),(8654,320,2,1484,'3.99','2005-06-15 21:22:35','2006-02-15 22:16:03'),(8655,320,2,1567,'1.99','2005-06-16 03:13:30','2006-02-15 22:16:03'),(8656,320,1,2216,'4.99','2005-06-18 03:08:17','2006-02-15 22:16:03'),(8657,320,2,2883,'7.99','2005-06-20 01:29:10','2006-02-15 22:16:03'),(8658,320,2,3519,'0.99','2005-07-06 00:57:29','2006-02-15 22:16:03'),(8659,320,2,3756,'4.99','2005-07-06 12:40:38','2006-02-15 22:16:03'),(8660,320,2,4173,'2.99','2005-07-07 09:57:26','2006-02-15 22:16:03'),(8661,320,2,7057,'4.99','2005-07-27 03:50:03','2006-02-15 22:16:03'),(8662,320,2,7064,'3.99','2005-07-27 03:53:29','2006-02-15 22:16:03'),(8663,320,2,7930,'4.99','2005-07-28 12:21:08','2006-02-15 22:16:03'),(8664,320,2,8144,'4.99','2005-07-28 20:30:55','2006-02-15 22:16:03'),(8665,320,2,8235,'4.99','2005-07-29 00:22:56','2006-02-15 22:16:03'),(8666,320,1,8238,'0.99','2005-07-29 00:30:06','2006-02-15 22:16:03'),(8667,320,2,8794,'4.99','2005-07-29 20:59:38','2006-02-15 22:16:03'),(8668,320,1,9509,'0.99','2005-07-31 00:22:42','2006-02-15 22:16:04'),(8669,320,1,11208,'0.99','2005-08-02 12:02:37','2006-02-15 22:16:04'),(8670,320,2,11560,'2.99','2005-08-17 01:20:30','2006-02-15 22:16:04'),(8671,320,2,14171,'0.99','2005-08-21 03:00:42','2006-02-15 22:16:04'),(8672,320,1,15302,'2.99','2005-08-22 19:44:53','2006-02-15 22:16:04'),(8673,321,2,200,'4.99','2005-05-26 07:12:21','2006-02-15 22:16:04'),(8674,321,1,620,'5.99','2005-05-28 15:54:45','2006-02-15 22:16:04'),(8675,321,2,818,'4.99','2005-05-29 20:47:53','2006-02-15 22:16:04'),(8676,321,2,1750,'5.99','2005-06-16 16:57:36','2006-02-15 22:16:04'),(8677,321,1,3410,'0.99','2005-06-21 16:20:47','2006-02-15 22:16:04'),(8678,321,2,3901,'5.99','2005-07-06 19:24:55','2006-02-15 22:16:04'),(8679,321,1,3920,'4.99','2005-07-06 20:26:40','2006-02-15 22:16:04'),(8680,321,2,4281,'4.99','2005-07-07 15:17:50','2006-02-15 22:16:04'),(8681,321,1,4318,'5.99','2005-07-07 17:47:50','2006-02-15 22:16:04'),(8682,321,2,5202,'2.99','2005-07-09 10:53:48','2006-02-15 22:16:04'),(8683,321,2,5867,'8.99','2005-07-10 18:39:01','2006-02-15 22:16:04'),(8684,321,2,6190,'2.99','2005-07-11 11:36:18','2006-02-15 22:16:04'),(8685,321,1,6859,'5.99','2005-07-12 19:53:57','2006-02-15 22:16:04'),(8686,321,2,8685,'6.99','2005-07-29 16:17:05','2006-02-15 22:16:04'),(8687,321,1,9981,'0.99','2005-07-31 17:08:31','2006-02-15 22:16:04'),(8688,321,1,11722,'2.99','2005-08-17 07:53:03','2006-02-15 22:16:04'),(8689,321,1,12033,'6.99','2005-08-17 20:14:34','2006-02-15 22:16:04'),(8690,321,2,12034,'7.99','2005-08-17 20:15:31','2006-02-15 22:16:04'),(8691,321,1,12398,'4.99','2005-08-18 09:13:24','2006-02-15 22:16:04'),(8692,321,2,13623,'6.99','2005-08-20 06:49:46','2006-02-15 22:16:05'),(8693,321,1,15673,'6.99','2005-08-23 09:12:50','2006-02-15 22:16:05'),(8694,321,2,15888,'5.99','2005-08-23 16:56:14','2006-02-15 22:16:05'),(8695,322,2,166,'0.99','2005-05-26 02:49:11','2006-02-15 22:16:05'),(8696,322,1,269,'4.99','2005-05-26 16:19:46','2006-02-15 22:16:05'),(8697,322,1,1386,'2.99','2005-06-15 15:38:58','2006-02-15 22:16:05'),(8698,322,1,1588,'8.99','2005-06-16 04:53:21','2006-02-15 22:16:05'),(8699,322,2,2481,'4.99','2005-06-18 21:08:30','2006-02-15 22:16:05'),(8700,322,1,2554,'0.99','2005-06-19 03:05:38','2006-02-15 22:16:05'),(8701,322,1,2983,'7.99','2005-06-20 08:41:42','2006-02-15 22:16:05'),(8702,322,2,3054,'5.99','2005-06-20 13:16:41','2006-02-15 22:16:05'),(8703,322,2,3413,'8.99','2005-06-21 16:57:07','2006-02-15 22:16:05'),(8704,322,1,3478,'0.99','2005-07-05 23:05:44','2006-02-15 22:16:05'),(8705,322,2,3627,'1.99','2005-07-06 06:19:25','2006-02-15 22:16:05'),(8706,322,1,3646,'4.99','2005-07-06 07:28:59','2006-02-15 22:16:05'),(8707,322,2,6033,'2.99','2005-07-11 02:59:34','2006-02-15 22:16:05'),(8708,322,1,6511,'3.99','2005-07-12 03:39:29','2006-02-15 22:16:05'),(8709,322,2,6673,'0.99','2005-07-12 11:50:56','2006-02-15 22:16:05'),(8710,322,2,6709,'4.99','2005-07-12 13:20:41','2006-02-15 22:16:05'),(8711,322,1,7091,'4.99','2005-07-27 04:44:10','2006-02-15 22:16:05'),(8712,322,2,8142,'4.99','2005-07-28 20:21:54','2006-02-15 22:16:05'),(8713,322,1,9104,'7.99','2005-07-30 08:49:55','2006-02-15 22:16:05'),(8714,322,1,9115,'4.99','2005-07-30 09:13:55','2006-02-15 22:16:05'),(8715,322,1,9252,'1.99','2005-07-30 14:19:59','2006-02-15 22:16:05'),(8716,322,2,11120,'4.99','2005-08-02 08:47:04','2006-02-15 22:16:06'),(8717,322,2,11456,'0.99','2005-08-02 21:14:04','2006-02-15 22:16:06'),(8718,322,2,13180,'4.99','2005-08-19 14:00:38','2006-02-15 22:16:06'),(8719,322,1,13650,'9.99','2005-08-20 07:49:06','2006-02-15 22:16:06'),(8720,322,2,14042,'4.99','2005-08-20 21:45:51','2006-02-15 22:16:06'),(8721,322,1,15450,'0.99','2005-08-23 00:56:01','2006-02-15 22:16:06'),(8722,322,2,15703,'8.99','2005-08-23 10:23:48','2006-02-15 22:16:06'),(8723,323,1,58,'4.99','2005-05-25 08:53:14','2006-02-15 22:16:06'),(8724,323,2,729,'2.99','2005-05-29 06:35:13','2006-02-15 22:16:06'),(8725,323,1,878,'5.99','2005-05-30 05:49:13','2006-02-15 22:16:06'),(8726,323,2,1167,'0.99','2005-06-14 23:25:58','2006-02-15 22:16:06'),(8727,323,2,1786,'2.99','2005-06-16 19:30:54','2006-02-15 22:16:06'),(8728,323,1,2933,'4.99','2005-06-20 04:52:23','2006-02-15 22:16:06'),(8729,323,2,3704,'6.99','2005-07-06 10:16:45','2006-02-15 22:16:06'),(8730,323,2,4572,'1.99','2005-07-08 05:36:59','2006-02-15 22:16:06'),(8731,323,2,5669,'4.99','2005-07-10 08:12:53','2006-02-15 22:16:06'),(8732,323,2,5906,'1.99','2005-07-10 20:41:41','2006-02-15 22:16:06'),(8733,323,1,6840,'3.99','2005-07-12 19:03:22','2006-02-15 22:16:06'),(8734,323,2,7146,'7.99','2005-07-27 07:02:30','2006-02-15 22:16:06'),(8735,323,2,7275,'2.99','2005-07-27 11:39:08','2006-02-15 22:16:06'),(8736,323,2,7695,'5.99','2005-07-28 03:41:13','2006-02-15 22:16:06'),(8737,323,1,7847,'1.99','2005-07-28 09:23:14','2006-02-15 22:16:06'),(8738,323,2,7937,'4.99','2005-07-28 12:38:22','2006-02-15 22:16:06'),(8739,323,2,8474,'0.99','2005-07-29 08:36:56','2006-02-15 22:16:07'),(8740,323,1,8790,'0.99','2005-07-29 20:51:41','2006-02-15 22:16:07'),(8741,323,1,9363,'2.99','2005-07-30 18:44:23','2006-02-15 22:16:07'),(8742,323,2,10002,'4.99','2005-07-31 17:48:16','2006-02-15 22:16:07'),(8743,323,1,10028,'4.99','2005-07-31 18:35:54','2006-02-15 22:16:07'),(8744,323,1,10298,'0.99','2005-08-01 04:06:03','2006-02-15 22:16:07'),(8745,323,1,10994,'3.99','2005-08-02 04:46:53','2006-02-15 22:16:07'),(8746,323,2,11548,'0.99','2005-08-17 00:59:47','2006-02-15 22:16:07'),(8747,323,1,12120,'4.99','2005-08-17 23:16:46','2006-02-15 22:16:07'),(8748,323,1,12169,'2.99','2005-08-18 01:05:54','2006-02-15 22:16:07'),(8749,323,1,13140,'5.99','2005-08-19 12:35:56','2006-02-15 22:16:07'),(8750,323,1,14224,'2.99','2005-08-21 04:53:08','2006-02-15 22:16:07'),(8751,323,1,14957,'3.99','2005-08-22 06:29:34','2006-02-15 22:16:07'),(8752,323,1,15387,'4.99','2005-08-22 22:49:13','2006-02-15 22:16:07'),(8753,323,1,15728,'0.99','2005-08-23 11:30:32','2006-02-15 22:16:07'),(8754,324,2,563,'3.99','2005-05-28 09:10:49','2006-02-15 22:16:07'),(8755,324,1,1740,'0.99','2005-06-16 16:29:00','2006-02-15 22:16:07'),(8756,324,2,2590,'2.99','2005-06-19 05:31:40','2006-02-15 22:16:07'),(8757,324,1,3947,'4.99','2005-07-06 21:42:21','2006-02-15 22:16:07'),(8758,324,1,4197,'0.99','2005-07-07 11:07:52','2006-02-15 22:16:07'),(8759,324,2,4368,'4.99','2005-07-07 19:55:19','2006-02-15 22:16:07'),(8760,324,2,5702,'2.99','2005-07-10 10:00:01','2006-02-15 22:16:07'),(8761,324,1,5778,'0.99','2005-07-10 13:41:37','2006-02-15 22:16:07'),(8762,324,1,6034,'2.99','2005-07-11 03:00:50','2006-02-15 22:16:07'),(8763,324,2,6299,'4.99','2005-07-11 17:45:08','2006-02-15 22:16:08'),(8764,324,2,7240,'3.99','2005-07-27 10:21:15','2006-02-15 22:16:08'),(8765,324,1,7263,'7.99','2005-07-27 11:17:22','2006-02-15 22:16:08'),(8766,324,2,7960,'6.99','2005-07-28 13:47:08','2006-02-15 22:16:08'),(8767,324,1,8698,'3.99','2005-07-29 16:52:17','2006-02-15 22:16:08'),(8768,324,1,9651,'4.99','2005-07-31 05:48:49','2006-02-15 22:16:08'),(8769,324,2,10212,'2.99','2005-08-01 01:01:35','2006-02-15 22:16:08'),(8770,324,1,11617,'2.99','2005-08-17 04:00:40','2006-02-15 22:16:08'),(8771,324,1,11771,'6.99','2005-08-17 10:17:09','2006-02-15 22:16:08'),(8772,324,2,12543,'2.99','2005-08-18 14:23:55','2006-02-15 22:16:08'),(8773,324,2,13356,'0.99','2005-08-19 21:02:21','2006-02-15 22:16:08'),(8774,324,1,13386,'2.99','2005-08-19 21:43:58','2006-02-15 22:16:08'),(8775,324,1,14262,'8.99','2005-08-21 06:08:13','2006-02-15 22:16:08'),(8776,324,2,14479,'7.99','2005-08-21 13:35:54','2006-02-15 22:16:08'),(8777,324,1,15263,'4.99','2005-08-22 18:27:33','2006-02-15 22:16:08'),(8778,324,2,13965,'2.99','2006-02-14 15:16:03','2006-02-15 22:16:08'),(8779,325,1,131,'5.99','2005-05-25 21:42:46','2006-02-15 22:16:08'),(8780,325,2,2502,'4.99','2005-06-18 23:12:13','2006-02-15 22:16:08'),(8781,325,2,2507,'4.99','2005-06-18 23:39:22','2006-02-15 22:16:08'),(8782,325,2,2808,'2.99','2005-06-19 19:34:45','2006-02-15 22:16:08'),(8783,325,1,5470,'5.99','2005-07-09 23:10:49','2006-02-15 22:16:08'),(8784,325,2,5740,'2.99','2005-07-10 11:51:58','2006-02-15 22:16:08'),(8785,325,1,5775,'4.99','2005-07-10 13:34:26','2006-02-15 22:16:08'),(8786,325,2,6135,'4.99','2005-07-11 08:32:23','2006-02-15 22:16:08'),(8787,325,2,6622,'0.99','2005-07-12 09:04:11','2006-02-15 22:16:09'),(8788,325,2,7223,'9.99','2005-07-27 09:42:27','2006-02-15 22:16:09'),(8789,325,2,7687,'2.99','2005-07-28 03:20:26','2006-02-15 22:16:09'),(8790,325,2,8539,'0.99','2005-07-29 10:48:24','2006-02-15 22:16:09'),(8791,325,2,10030,'2.99','2005-07-31 18:39:36','2006-02-15 22:16:09'),(8792,325,1,10070,'4.99','2005-07-31 19:46:29','2006-02-15 22:16:09'),(8793,325,2,10326,'4.99','2005-08-01 04:55:34','2006-02-15 22:16:09'),(8794,325,1,10412,'0.99','2005-08-01 07:57:16','2006-02-15 22:16:09'),(8795,325,2,12097,'4.99','2005-08-17 22:35:24','2006-02-15 22:16:09'),(8796,325,1,12779,'3.99','2005-08-18 23:44:00','2006-02-15 22:16:09'),(8797,325,2,13054,'4.99','2005-08-19 09:34:02','2006-02-15 22:16:09'),(8798,325,2,14452,'3.99','2005-08-21 12:23:20','2006-02-15 22:16:09'),(8799,325,1,14672,'5.99','2005-08-21 19:59:33','2006-02-15 22:16:09'),(8800,325,2,15009,'0.99','2005-08-22 08:27:27','2006-02-15 22:16:09'),(8801,326,1,875,'6.99','2005-05-30 05:38:24','2006-02-15 22:16:09'),(8802,326,2,981,'4.99','2005-05-30 21:52:42','2006-02-15 22:16:09'),(8803,326,2,1149,'3.99','2005-05-31 21:03:17','2006-02-15 22:16:09'),(8804,326,1,1311,'4.99','2005-06-15 10:11:59','2006-02-15 22:16:09'),(8805,326,2,2086,'0.99','2005-06-17 17:32:07','2006-02-15 22:16:09'),(8806,326,2,2317,'4.99','2005-06-18 09:12:18','2006-02-15 22:16:09'),(8807,326,1,3441,'4.99','2005-06-21 20:00:12','2006-02-15 22:16:09'),(8808,326,2,3886,'0.99','2005-07-06 18:44:24','2006-02-15 22:16:09'),(8809,326,1,4160,'7.99','2005-07-07 09:13:17','2006-02-15 22:16:09'),(8810,326,1,5147,'5.99','2005-07-09 08:17:41','2006-02-15 22:16:09'),(8811,326,1,7117,'2.99','2005-07-27 05:48:36','2006-02-15 22:16:10'),(8812,326,2,7725,'2.99','2005-07-28 04:47:14','2006-02-15 22:16:10'),(8813,326,2,7931,'4.99','2005-07-28 12:23:41','2006-02-15 22:16:10'),(8814,326,1,8467,'5.99','2005-07-29 08:25:35','2006-02-15 22:16:10'),(8815,326,1,8604,'4.99','2005-07-29 13:07:13','2006-02-15 22:16:10'),(8816,326,2,8739,'2.99','2005-07-29 18:34:33','2006-02-15 22:16:10'),(8817,326,2,9855,'0.99','2005-07-31 13:00:33','2006-02-15 22:16:10'),(8818,326,1,10108,'0.99','2005-07-31 21:02:14','2006-02-15 22:16:10'),(8819,326,2,10173,'4.99','2005-07-31 23:36:59','2006-02-15 22:16:10'),(8820,326,2,10720,'0.99','2005-08-01 19:04:33','2006-02-15 22:16:10'),(8821,326,2,10976,'4.99','2005-08-02 04:11:48','2006-02-15 22:16:10'),(8822,326,2,11010,'0.99','2005-08-02 05:06:27','2006-02-15 22:16:10'),(8823,326,2,11428,'2.99','2005-08-02 20:03:10','2006-02-15 22:16:10'),(8824,326,2,11485,'4.99','2005-08-02 22:33:25','2006-02-15 22:16:10'),(8825,326,2,12829,'2.99','2005-08-19 01:38:18','2006-02-15 22:16:10'),(8826,327,1,653,'6.99','2005-05-28 20:12:20','2006-02-15 22:16:10'),(8827,327,1,1294,'4.99','2005-06-15 09:09:27','2006-02-15 22:16:10'),(8828,327,2,1577,'3.99','2005-06-16 04:03:28','2006-02-15 22:16:10'),(8829,327,2,1929,'6.99','2005-06-17 06:49:30','2006-02-15 22:16:10'),(8830,327,1,2273,'4.99','2005-06-18 06:30:02','2006-02-15 22:16:10'),(8831,327,2,2304,'5.99','2005-06-18 08:30:15','2006-02-15 22:16:10'),(8832,327,2,2637,'3.99','2005-06-19 09:20:56','2006-02-15 22:16:10'),(8833,327,1,4445,'4.99','2005-07-07 23:08:22','2006-02-15 22:16:10'),(8834,327,1,4521,'0.99','2005-07-08 02:57:56','2006-02-15 22:16:11'),(8835,327,1,6618,'2.99','2005-07-12 08:41:42','2006-02-15 22:16:11'),(8836,327,2,7458,'1.99','2005-07-27 18:36:17','2006-02-15 22:16:11'),(8837,327,2,7808,'1.99','2005-07-28 07:58:56','2006-02-15 22:16:11'),(8838,327,1,10371,'0.99','2005-08-01 06:20:29','2006-02-15 22:16:11'),(8839,327,1,11372,'4.99','2005-08-02 18:10:50','2006-02-15 22:16:11'),(8840,327,2,11929,'6.99','2005-08-17 16:28:51','2006-02-15 22:16:11'),(8841,327,1,12016,'0.99','2005-08-17 19:33:24','2006-02-15 22:16:11'),(8842,327,2,13158,'2.99','2005-08-19 13:18:10','2006-02-15 22:16:11'),(8843,327,1,13360,'4.99','2005-08-19 21:05:11','2006-02-15 22:16:11'),(8844,327,1,13448,'0.99','2005-08-20 00:12:43','2006-02-15 22:16:11'),(8845,327,1,14847,'4.99','2005-08-22 02:13:51','2006-02-15 22:16:11'),(8846,327,2,15365,'3.99','2005-08-22 21:42:17','2006-02-15 22:16:11'),(8847,327,1,15386,'2.99','2005-08-22 22:41:14','2006-02-15 22:16:11'),(8848,327,1,15828,'5.99','2005-08-23 15:16:32','2006-02-15 22:16:11'),(8849,327,1,15916,'9.99','2005-08-23 17:56:01','2006-02-15 22:16:11'),(8850,327,2,15969,'7.99','2005-08-23 19:51:30','2006-02-15 22:16:11'),(8851,327,1,15297,'2.99','2006-02-14 15:16:03','2006-02-15 22:16:11'),(8852,328,2,862,'2.99','2005-05-30 03:09:11','2006-02-15 22:16:11'),(8853,328,2,1670,'2.99','2005-06-16 10:26:33','2006-02-15 22:16:11'),(8854,328,2,1980,'6.99','2005-06-17 09:48:05','2006-02-15 22:16:11'),(8855,328,2,2243,'5.99','2005-06-18 04:33:03','2006-02-15 22:16:11'),(8856,328,1,3024,'4.99','2005-06-20 11:29:17','2006-02-15 22:16:11'),(8857,328,1,3239,'0.99','2005-06-21 02:48:40','2006-02-15 22:16:11'),(8858,328,1,5450,'4.99','2005-07-09 22:13:25','2006-02-15 22:16:12'),(8859,328,1,8017,'1.99','2005-07-28 15:35:41','2006-02-15 22:16:12'),(8860,328,1,8577,'6.99','2005-07-29 11:56:30','2006-02-15 22:16:12'),(8861,328,2,8780,'4.99','2005-07-29 20:19:45','2006-02-15 22:16:12'),(8862,328,2,9557,'2.99','2005-07-31 02:14:01','2006-02-15 22:16:12'),(8863,328,1,9835,'2.99','2005-07-31 12:07:35','2006-02-15 22:16:12'),(8864,328,1,11174,'2.99','2005-08-02 10:32:11','2006-02-15 22:16:12'),(8865,328,1,12175,'4.99','2005-08-18 01:10:17','2006-02-15 22:16:12'),(8866,328,2,12825,'0.99','2005-08-19 01:23:58','2006-02-15 22:16:12'),(8867,328,1,13609,'2.99','2005-08-20 06:11:51','2006-02-15 22:16:12'),(8868,328,2,13681,'7.99','2005-08-20 08:47:37','2006-02-15 22:16:12'),(8869,328,1,13907,'3.99','2005-08-20 16:17:27','2006-02-15 22:16:12'),(8870,328,2,14307,'3.99','2005-08-21 07:34:52','2006-02-15 22:16:12'),(8871,328,1,14755,'3.99','2005-08-21 23:18:08','2006-02-15 22:16:12'),(8872,328,2,14939,'2.99','2005-08-22 05:53:52','2006-02-15 22:16:12'),(8873,328,1,15179,'4.99','2005-08-22 15:36:22','2006-02-15 22:16:12'),(8874,328,1,15863,'0.99','2005-08-23 16:17:09','2006-02-15 22:16:12'),(8875,329,1,1183,'2.99','2005-06-15 00:49:19','2006-02-15 22:16:12'),(8876,329,1,2010,'5.99','2005-06-17 11:54:15','2006-02-15 22:16:12'),(8877,329,2,2024,'0.99','2005-06-17 13:00:51','2006-02-15 22:16:12'),(8878,329,1,2151,'0.99','2005-06-17 22:52:37','2006-02-15 22:16:12'),(8879,329,1,2303,'2.99','2005-06-18 08:27:59','2006-02-15 22:16:12'),(8880,329,2,2702,'2.99','2005-06-19 13:35:56','2006-02-15 22:16:12'),(8881,329,1,3052,'5.99','2005-06-20 13:09:19','2006-02-15 22:16:13'),(8882,329,2,3053,'0.99','2005-06-20 13:10:30','2006-02-15 22:16:13'),(8883,329,2,3268,'4.99','2005-06-21 04:55:49','2006-02-15 22:16:13'),(8884,329,2,3976,'2.99','2005-07-06 23:00:20','2006-02-15 22:16:13'),(8885,329,2,4076,'4.99','2005-07-07 04:52:15','2006-02-15 22:16:13'),(8886,329,1,4415,'4.99','2005-07-07 22:01:43','2006-02-15 22:16:13'),(8887,329,1,4465,'1.99','2005-07-08 00:07:45','2006-02-15 22:16:13'),(8888,329,2,4674,'2.99','2005-07-08 10:19:28','2006-02-15 22:16:13'),(8889,329,1,7980,'4.99','2005-07-28 14:16:49','2006-02-15 22:16:13'),(8890,329,2,8172,'7.99','2005-07-28 21:34:36','2006-02-15 22:16:13'),(8891,329,1,8460,'6.99','2005-07-29 08:08:03','2006-02-15 22:16:13'),(8892,329,2,8941,'0.99','2005-07-30 02:59:21','2006-02-15 22:16:13'),(8893,329,2,9024,'4.99','2005-07-30 05:44:42','2006-02-15 22:16:13'),(8894,329,2,9219,'0.99','2005-07-30 13:15:21','2006-02-15 22:16:13'),(8895,329,1,9381,'0.99','2005-07-30 19:23:04','2006-02-15 22:16:13'),(8896,329,1,9827,'6.99','2005-07-31 11:56:55','2006-02-15 22:16:13'),(8897,329,1,10473,'7.99','2005-08-01 09:56:24','2006-02-15 22:16:13'),(8898,329,2,10490,'0.99','2005-08-01 10:37:11','2006-02-15 22:16:13'),(8899,329,1,11130,'2.99','2005-08-02 09:08:59','2006-02-15 22:16:13'),(8900,329,2,11169,'3.99','2005-08-02 10:19:42','2006-02-15 22:16:13'),(8901,329,2,11697,'0.99','2005-08-17 07:09:19','2006-02-15 22:16:13'),(8902,329,1,12659,'6.99','2005-08-18 19:05:49','2006-02-15 22:16:13'),(8903,329,1,13627,'8.99','2005-08-20 06:59:00','2006-02-15 22:16:13'),(8904,329,1,14900,'4.99','2005-08-22 04:27:48','2006-02-15 22:16:13'),(8905,329,2,15011,'4.99','2005-08-22 08:31:07','2006-02-15 22:16:14'),(8906,329,1,15308,'2.99','2005-08-22 19:54:31','2006-02-15 22:16:14'),(8907,330,1,704,'3.99','2005-05-29 02:44:43','2006-02-15 22:16:14'),(8908,330,2,967,'7.99','2005-05-30 19:12:06','2006-02-15 22:16:14'),(8909,330,1,1219,'6.99','2005-06-15 03:25:59','2006-02-15 22:16:14'),(8910,330,2,1511,'5.99','2005-06-15 22:45:06','2006-02-15 22:16:14'),(8911,330,2,2885,'0.99','2005-06-20 01:33:42','2006-02-15 22:16:14'),(8912,330,1,2936,'4.99','2005-06-20 05:09:27','2006-02-15 22:16:14'),(8913,330,2,3061,'2.99','2005-06-20 13:48:21','2006-02-15 22:16:14'),(8914,330,2,3603,'4.99','2005-07-06 05:25:03','2006-02-15 22:16:14'),(8915,330,2,3659,'2.99','2005-07-06 08:03:14','2006-02-15 22:16:14'),(8916,330,2,3760,'2.99','2005-07-06 12:49:28','2006-02-15 22:16:14'),(8917,330,1,4124,'1.99','2005-07-07 07:19:54','2006-02-15 22:16:14'),(8918,330,2,5149,'2.99','2005-07-09 08:28:23','2006-02-15 22:16:14'),(8919,330,1,5750,'5.99','2005-07-10 12:20:41','2006-02-15 22:16:14'),(8920,330,1,6656,'0.99','2005-07-12 11:09:47','2006-02-15 22:16:14'),(8921,330,2,6678,'2.99','2005-07-12 11:58:36','2006-02-15 22:16:14'),(8922,330,1,6719,'2.99','2005-07-12 13:40:37','2006-02-15 22:16:14'),(8923,330,2,7894,'2.99','2005-07-28 10:53:58','2006-02-15 22:16:14'),(8924,330,1,8680,'4.99','2005-07-29 16:08:03','2006-02-15 22:16:14'),(8925,330,2,10100,'4.99','2005-07-31 20:47:18','2006-02-15 22:16:14'),(8926,330,2,11259,'3.99','2005-08-02 13:46:30','2006-02-15 22:16:14'),(8927,330,1,12062,'2.99','2005-08-17 21:24:47','2006-02-15 22:16:14'),(8928,330,1,12394,'2.99','2005-08-18 09:05:15','2006-02-15 22:16:15'),(8929,330,1,12740,'4.99','2005-08-18 22:17:04','2006-02-15 22:16:15'),(8930,330,1,12867,'0.99','2005-08-19 02:40:11','2006-02-15 22:16:15'),(8931,330,2,11709,'2.99','2006-02-14 15:16:03','2006-02-15 22:16:15'),(8932,331,2,87,'0.99','2005-05-25 13:52:43','2006-02-15 22:16:15'),(8933,331,1,996,'2.99','2005-05-31 00:06:20','2006-02-15 22:16:15'),(8934,331,1,1415,'2.99','2005-06-15 17:31:57','2006-02-15 22:16:15'),(8935,331,2,2528,'6.99','2005-06-19 01:14:12','2006-02-15 22:16:15'),(8936,331,1,2587,'2.99','2005-06-19 05:06:14','2006-02-15 22:16:15'),(8937,331,1,3505,'4.99','2005-07-06 00:19:32','2006-02-15 22:16:15'),(8938,331,1,3613,'4.99','2005-07-06 05:45:53','2006-02-15 22:16:15'),(8939,331,2,3871,'8.99','2005-07-06 17:58:51','2006-02-15 22:16:15'),(8940,331,1,4051,'4.99','2005-07-07 03:37:28','2006-02-15 22:16:15'),(8941,331,2,4063,'5.99','2005-07-07 04:23:57','2006-02-15 22:16:15'),(8942,331,1,4326,'10.99','2005-07-07 18:01:22','2006-02-15 22:16:15'),(8943,331,1,5152,'2.99','2005-07-09 08:34:44','2006-02-15 22:16:15'),(8944,331,1,5885,'1.99','2005-07-10 19:33:50','2006-02-15 22:16:15'),(8945,331,1,5947,'5.99','2005-07-10 23:07:42','2006-02-15 22:16:15'),(8946,331,1,8231,'0.99','2005-07-29 00:14:37','2006-02-15 22:16:15'),(8947,331,2,8995,'4.99','2005-07-30 04:53:11','2006-02-15 22:16:15'),(8948,331,1,9401,'5.99','2005-07-30 20:18:19','2006-02-15 22:16:15'),(8949,331,2,10188,'6.99','2005-08-01 00:19:41','2006-02-15 22:16:16'),(8950,331,1,11052,'5.99','2005-08-02 06:26:19','2006-02-15 22:16:16'),(8951,331,1,11362,'2.99','2005-08-02 17:47:25','2006-02-15 22:16:16'),(8952,331,2,12533,'4.99','2005-08-18 14:01:40','2006-02-15 22:16:16'),(8953,331,1,13795,'0.99','2005-08-20 12:32:09','2006-02-15 22:16:16'),(8954,331,1,14256,'7.99','2005-08-21 05:52:27','2006-02-15 22:16:16'),(8955,331,1,14628,'1.99','2005-08-21 18:37:24','2006-02-15 22:16:16'),(8956,331,1,15339,'2.99','2005-08-22 20:52:12','2006-02-15 22:16:16'),(8957,331,2,15447,'3.99','2005-08-23 00:53:57','2006-02-15 22:16:16'),(8958,331,1,15521,'2.99','2005-08-23 03:30:51','2006-02-15 22:16:16'),(8959,332,2,600,'3.99','2005-05-28 14:08:19','2006-02-15 22:16:16'),(8960,332,1,1000,'6.99','2005-05-31 00:25:56','2006-02-15 22:16:16'),(8961,332,1,4100,'6.99','2005-07-07 06:20:52','2006-02-15 22:16:16'),(8962,332,1,4302,'6.99','2005-07-07 16:47:53','2006-02-15 22:16:16'),(8963,332,2,5116,'2.99','2005-07-09 07:10:12','2006-02-15 22:16:16'),(8964,332,1,5277,'1.99','2005-07-09 14:40:42','2006-02-15 22:16:16'),(8965,332,2,5381,'2.99','2005-07-09 19:11:11','2006-02-15 22:16:16'),(8966,332,2,5388,'0.99','2005-07-09 19:25:25','2006-02-15 22:16:16'),(8967,332,1,5440,'0.99','2005-07-09 21:45:17','2006-02-15 22:16:16'),(8968,332,2,7049,'7.99','2005-07-27 03:32:41','2006-02-15 22:16:16'),(8969,332,2,7418,'2.99','2005-07-27 16:59:09','2006-02-15 22:16:16'),(8970,332,2,7577,'8.99','2005-07-27 22:56:07','2006-02-15 22:16:16'),(8971,332,2,7578,'4.99','2005-07-27 22:58:17','2006-02-15 22:16:17'),(8972,332,2,7934,'8.99','2005-07-28 12:33:10','2006-02-15 22:16:17'),(8973,332,2,8173,'6.99','2005-07-28 21:35:44','2006-02-15 22:16:17'),(8974,332,1,9324,'1.99','2005-07-30 17:28:52','2006-02-15 22:16:17'),(8975,332,1,9388,'5.99','2005-07-30 19:27:22','2006-02-15 22:16:17'),(8976,332,1,9921,'0.99','2005-07-31 14:59:21','2006-02-15 22:16:17'),(8977,332,1,10026,'4.99','2005-07-31 18:31:51','2006-02-15 22:16:17'),(8978,332,1,10307,'0.99','2005-08-01 04:21:54','2006-02-15 22:16:17'),(8979,332,2,10439,'0.99','2005-08-01 08:54:26','2006-02-15 22:16:17'),(8980,332,1,11229,'5.99','2005-08-02 12:56:37','2006-02-15 22:16:17'),(8981,332,2,11564,'2.99','2005-08-17 01:27:49','2006-02-15 22:16:17'),(8982,332,2,12318,'4.99','2005-08-18 06:21:56','2006-02-15 22:16:17'),(8983,332,2,13673,'2.99','2005-08-20 08:27:30','2006-02-15 22:16:17'),(8984,332,2,14783,'4.99','2005-08-22 00:21:57','2006-02-15 22:16:17'),(8985,332,2,15194,'0.99','2005-08-22 16:07:34','2006-02-15 22:16:17'),(8986,332,1,15210,'3.99','2005-08-22 16:37:36','2006-02-15 22:16:17'),(8987,333,1,4,'4.99','2005-05-24 23:04:41','2006-02-15 22:16:17'),(8988,333,1,1667,'2.99','2005-06-16 10:18:59','2006-02-15 22:16:17'),(8989,333,1,2149,'6.99','2005-06-17 22:50:00','2006-02-15 22:16:17'),(8990,333,1,2929,'1.99','2005-06-20 04:47:39','2006-02-15 22:16:17'),(8991,333,1,3110,'2.99','2005-06-20 17:40:12','2006-02-15 22:16:17'),(8992,333,2,5032,'0.99','2005-07-09 02:39:47','2006-02-15 22:16:17'),(8993,333,1,5645,'1.99','2005-07-10 06:58:21','2006-02-15 22:16:17'),(8994,333,2,5892,'4.99','2005-07-10 20:02:42','2006-02-15 22:16:17'),(8995,333,2,6275,'0.99','2005-07-11 16:12:11','2006-02-15 22:16:18'),(8996,333,2,6931,'4.99','2005-07-26 23:02:57','2006-02-15 22:16:18'),(8997,333,2,6958,'0.99','2005-07-27 00:02:41','2006-02-15 22:16:18'),(8998,333,2,7076,'6.99','2005-07-27 04:12:14','2006-02-15 22:16:18'),(8999,333,2,7246,'0.99','2005-07-27 10:30:41','2006-02-15 22:16:18'),(9000,333,1,8719,'4.99','2005-07-29 17:45:45','2006-02-15 22:16:18'),(9001,333,2,9148,'4.99','2005-07-30 10:39:10','2006-02-15 22:16:18'),(9002,333,2,9338,'10.99','2005-07-30 18:03:13','2006-02-15 22:16:18'),(9003,333,2,10035,'4.99','2005-07-31 18:46:46','2006-02-15 22:16:18'),(9004,333,1,10062,'2.99','2005-07-31 19:24:55','2006-02-15 22:16:18'),(9005,333,2,10844,'4.99','2005-08-01 23:46:58','2006-02-15 22:16:18'),(9006,333,1,12427,'6.99','2005-08-18 10:24:17','2006-02-15 22:16:18'),(9007,333,2,12661,'0.99','2005-08-18 19:10:10','2006-02-15 22:16:18'),(9008,333,1,13579,'3.99','2005-08-20 05:22:06','2006-02-15 22:16:18'),(9009,333,2,13710,'4.99','2005-08-20 09:35:20','2006-02-15 22:16:18'),(9010,333,1,14057,'4.99','2005-08-20 22:22:59','2006-02-15 22:16:18'),(9011,333,1,14740,'2.99','2005-08-21 22:35:33','2006-02-15 22:16:18'),(9012,333,2,15253,'2.99','2005-08-22 18:05:21','2006-02-15 22:16:18'),(9013,333,1,15313,'4.99','2005-08-22 19:59:42','2006-02-15 22:16:18'),(9014,334,1,13,'6.99','2005-05-25 00:22:55','2006-02-15 22:16:18'),(9015,334,1,431,'8.99','2005-05-27 16:31:05','2006-02-15 22:16:18'),(9016,334,2,1187,'4.99','2005-06-15 00:58:50','2006-02-15 22:16:18'),(9017,334,1,1298,'4.99','2005-06-15 09:32:53','2006-02-15 22:16:19'),(9018,334,2,2476,'0.99','2005-06-18 20:57:12','2006-02-15 22:16:19'),(9019,334,1,3662,'4.99','2005-07-06 08:11:48','2006-02-15 22:16:19'),(9020,334,1,4603,'6.99','2005-07-08 06:57:07','2006-02-15 22:16:19'),(9021,334,2,5014,'4.99','2005-07-09 01:51:49','2006-02-15 22:16:19'),(9022,334,2,5434,'0.99','2005-07-09 21:25:20','2006-02-15 22:16:19'),(9023,334,2,5818,'5.99','2005-07-10 15:51:12','2006-02-15 22:16:19'),(9024,334,1,5845,'4.99','2005-07-10 17:23:14','2006-02-15 22:16:19'),(9025,334,2,6641,'5.99','2005-07-12 10:33:14','2006-02-15 22:16:19'),(9026,334,2,6749,'4.99','2005-07-12 14:43:05','2006-02-15 22:16:19'),(9027,334,1,6987,'2.99','2005-07-27 00:59:50','2006-02-15 22:16:19'),(9028,334,1,8977,'7.99','2005-07-30 04:14:07','2006-02-15 22:16:19'),(9029,334,1,9633,'2.99','2005-07-31 05:04:08','2006-02-15 22:16:19'),(9030,334,1,10207,'3.99','2005-08-01 00:53:01','2006-02-15 22:16:19'),(9031,334,1,10408,'4.99','2005-08-01 07:42:10','2006-02-15 22:16:19'),(9032,334,1,10492,'2.99','2005-08-01 10:42:28','2006-02-15 22:16:19'),(9033,334,1,10879,'1.99','2005-08-02 00:33:20','2006-02-15 22:16:19'),(9034,334,2,10997,'7.99','2005-08-02 04:49:02','2006-02-15 22:16:19'),(9035,334,2,12677,'4.99','2005-08-18 19:36:05','2006-02-15 22:16:19'),(9036,334,2,13325,'4.99','2005-08-19 19:52:02','2006-02-15 22:16:19'),(9037,334,1,13876,'2.99','2005-08-20 15:15:28','2006-02-15 22:16:19'),(9038,334,1,14645,'0.99','2005-08-21 19:12:47','2006-02-15 22:16:19'),(9039,334,1,14984,'7.99','2005-08-22 07:35:31','2006-02-15 22:16:19'),(9040,334,2,15548,'0.99','2005-08-23 04:26:20','2006-02-15 22:16:20'),(9041,334,2,15656,'4.99','2005-08-23 08:38:58','2006-02-15 22:16:20'),(9042,334,1,15669,'3.99','2005-08-23 09:06:17','2006-02-15 22:16:20'),(9043,334,1,14219,'0.99','2006-02-14 15:16:03','2006-02-15 22:16:20'),(9044,335,1,3329,'4.99','2005-06-21 09:20:31','2006-02-15 22:16:20'),(9045,335,1,3607,'0.99','2005-07-06 05:30:09','2006-02-15 22:16:20'),(9046,335,2,4016,'0.99','2005-07-07 01:05:50','2006-02-15 22:16:20'),(9047,335,2,4032,'2.99','2005-07-07 02:34:13','2006-02-15 22:16:20'),(9048,335,1,4279,'4.99','2005-07-07 15:01:53','2006-02-15 22:16:20'),(9049,335,1,4387,'8.99','2005-07-07 20:56:47','2006-02-15 22:16:20'),(9050,335,1,5024,'4.99','2005-07-09 02:25:12','2006-02-15 22:16:20'),(9051,335,1,5252,'0.99','2005-07-09 13:40:44','2006-02-15 22:16:20'),(9052,335,2,5728,'2.99','2005-07-10 11:26:14','2006-02-15 22:16:20'),(9053,335,1,6624,'7.99','2005-07-12 09:05:50','2006-02-15 22:16:20'),(9054,335,1,6906,'0.99','2005-07-12 22:03:02','2006-02-15 22:16:20'),(9055,335,2,8634,'3.99','2005-07-29 14:19:57','2006-02-15 22:16:20'),(9056,335,1,8855,'2.99','2005-07-29 23:40:10','2006-02-15 22:16:20'),(9057,335,1,9125,'5.99','2005-07-30 09:43:39','2006-02-15 22:16:20'),(9058,335,2,9361,'4.99','2005-07-30 18:43:49','2006-02-15 22:16:20'),(9059,335,1,9428,'0.99','2005-07-30 21:18:37','2006-02-15 22:16:20'),(9060,335,2,10606,'4.99','2005-08-01 14:39:15','2006-02-15 22:16:21'),(9061,335,2,13267,'0.99','2005-08-19 17:31:36','2006-02-15 22:16:21'),(9062,335,1,13622,'1.99','2005-08-20 06:45:32','2006-02-15 22:16:21'),(9063,335,1,14014,'2.99','2005-08-20 20:47:09','2006-02-15 22:16:21'),(9064,335,2,15005,'4.99','2005-08-22 08:15:44','2006-02-15 22:16:21'),(9065,335,2,15101,'0.99','2005-08-22 11:56:02','2006-02-15 22:16:21'),(9066,335,2,11541,'0.99','2006-02-14 15:16:03','2006-02-15 22:16:21'),(9067,336,1,1478,'2.99','2005-06-15 21:12:13','2006-02-15 22:16:21'),(9068,336,2,2212,'2.99','2005-06-18 02:36:10','2006-02-15 22:16:21'),(9069,336,2,2475,'2.99','2005-06-18 20:52:46','2006-02-15 22:16:21'),(9070,336,1,2575,'2.99','2005-06-19 04:32:52','2006-02-15 22:16:21'),(9071,336,2,2719,'4.99','2005-06-19 14:50:19','2006-02-15 22:16:21'),(9072,336,1,2954,'2.99','2005-06-20 06:45:00','2006-02-15 22:16:21'),(9073,336,2,3204,'4.99','2005-06-21 00:37:50','2006-02-15 22:16:21'),(9074,336,2,3349,'0.99','2005-06-21 11:17:35','2006-02-15 22:16:21'),(9075,336,2,4323,'5.99','2005-07-07 17:55:53','2006-02-15 22:16:21'),(9076,336,1,4595,'2.99','2005-07-08 06:40:25','2006-02-15 22:16:21'),(9077,336,2,5649,'2.99','2005-07-10 07:15:07','2006-02-15 22:16:21'),(9078,336,2,5667,'0.99','2005-07-10 08:11:03','2006-02-15 22:16:21'),(9079,336,2,6263,'4.99','2005-07-11 15:33:50','2006-02-15 22:16:22'),(9080,336,2,6382,'6.99','2005-07-11 21:58:53','2006-02-15 22:16:22'),(9081,336,2,8275,'4.99','2005-07-29 01:35:47','2006-02-15 22:16:22'),(9082,336,1,8407,'6.99','2005-07-29 06:37:02','2006-02-15 22:16:22'),(9083,336,2,8607,'4.99','2005-07-29 13:18:00','2006-02-15 22:16:22'),(9084,336,2,8951,'8.99','2005-07-30 03:18:24','2006-02-15 22:16:22'),(9085,336,2,9306,'0.99','2005-07-30 16:47:17','2006-02-15 22:16:22'),(9086,336,1,10055,'0.99','2005-07-31 19:15:58','2006-02-15 22:16:22'),(9087,336,2,11743,'2.99','2005-08-17 08:49:05','2006-02-15 22:16:22'),(9088,336,1,12323,'8.99','2005-08-18 06:36:22','2006-02-15 22:16:22'),(9089,336,2,12794,'0.99','2005-08-19 00:20:37','2006-02-15 22:16:22'),(9090,336,2,12926,'3.99','2005-08-19 05:00:16','2006-02-15 22:16:22'),(9091,336,2,13066,'0.99','2005-08-19 09:50:39','2006-02-15 22:16:22'),(9092,336,2,13689,'4.99','2005-08-20 09:04:30','2006-02-15 22:16:22'),(9093,336,1,14295,'2.99','2005-08-21 07:09:27','2006-02-15 22:16:22'),(9094,336,1,15073,'10.99','2005-08-22 11:01:15','2006-02-15 22:16:22'),(9095,336,2,15848,'2.99','2005-08-23 15:41:12','2006-02-15 22:16:22'),(9096,336,1,13022,'0.99','2006-02-14 15:16:03','2006-02-15 22:16:22'),(9097,337,1,374,'6.99','2005-05-27 08:26:30','2006-02-15 22:16:23'),(9098,337,1,572,'4.99','2005-05-28 10:30:13','2006-02-15 22:16:23'),(9099,337,1,839,'8.99','2005-05-30 00:28:12','2006-02-15 22:16:23'),(9100,337,2,1969,'4.99','2005-06-17 09:22:22','2006-02-15 22:16:23'),(9101,337,1,2014,'5.99','2005-06-17 12:03:28','2006-02-15 22:16:23'),(9102,337,1,3626,'5.99','2005-07-06 06:15:35','2006-02-15 22:16:23'),(9103,337,1,4091,'6.99','2005-07-07 05:53:38','2006-02-15 22:16:23'),(9104,337,2,4093,'4.99','2005-07-07 05:54:50','2006-02-15 22:16:23'),(9105,337,2,4855,'4.99','2005-07-08 18:45:50','2006-02-15 22:16:23'),(9106,337,1,5050,'2.99','2005-07-09 03:54:38','2006-02-15 22:16:23'),(9107,337,1,6212,'0.99','2005-07-11 12:40:48','2006-02-15 22:16:23'),(9108,337,2,6305,'7.99','2005-07-11 18:02:25','2006-02-15 22:16:23'),(9109,337,1,6620,'2.99','2005-07-12 08:51:03','2006-02-15 22:16:23'),(9110,337,1,7410,'4.99','2005-07-27 16:41:59','2006-02-15 22:16:23'),(9111,337,1,8516,'4.99','2005-07-29 10:00:03','2006-02-15 22:16:23'),(9112,337,2,8919,'8.99','2005-07-30 01:57:03','2006-02-15 22:16:24'),(9113,337,2,9051,'5.99','2005-07-30 07:05:54','2006-02-15 22:16:24'),(9114,337,1,10664,'0.99','2005-08-01 16:51:15','2006-02-15 22:16:24'),(9115,337,2,10765,'0.99','2005-08-01 20:34:51','2006-02-15 22:16:24'),(9116,337,2,11252,'2.99','2005-08-02 13:42:13','2006-02-15 22:16:24'),(9117,337,1,11734,'3.99','2005-08-17 08:34:22','2006-02-15 22:16:24'),(9118,337,1,12369,'6.99','2005-08-18 07:57:43','2006-02-15 22:16:24'),(9119,337,2,13305,'6.99','2005-08-19 18:57:05','2006-02-15 22:16:24'),(9120,337,1,13678,'4.99','2005-08-20 08:38:24','2006-02-15 22:16:24'),(9121,337,2,13892,'3.99','2005-08-20 15:50:17','2006-02-15 22:16:24'),(9122,337,2,14118,'5.99','2005-08-21 01:13:37','2006-02-15 22:16:24'),(9123,337,2,15241,'4.99','2005-08-22 17:47:40','2006-02-15 22:16:24'),(9124,337,1,15292,'4.99','2005-08-22 19:28:56','2006-02-15 22:16:24'),(9125,337,2,11847,'0.99','2006-02-14 15:16:03','2006-02-15 22:16:24'),(9126,338,1,675,'0.99','2005-05-28 22:22:44','2006-02-15 22:16:24'),(9127,338,2,1510,'4.99','2005-06-15 22:39:34','2006-02-15 22:16:24'),(9128,338,1,1807,'5.99','2005-06-16 20:58:59','2006-02-15 22:16:24'),(9129,338,2,1952,'4.99','2005-06-17 08:33:02','2006-02-15 22:16:24'),(9130,338,1,2148,'6.99','2005-06-17 22:44:35','2006-02-15 22:16:24'),(9131,338,1,2179,'0.99','2005-06-18 00:41:36','2006-02-15 22:16:24'),(9132,338,1,2495,'4.99','2005-06-18 22:15:42','2006-02-15 22:16:24'),(9133,338,1,3458,'5.99','2005-06-21 21:42:49','2006-02-15 22:16:25'),(9134,338,1,3516,'0.99','2005-07-06 00:50:30','2006-02-15 22:16:25'),(9135,338,2,3772,'2.99','2005-07-06 13:22:53','2006-02-15 22:16:25'),(9136,338,2,4104,'5.99','2005-07-07 06:25:41','2006-02-15 22:16:25'),(9137,338,2,4779,'4.99','2005-07-08 15:53:41','2006-02-15 22:16:25'),(9138,338,1,5309,'4.99','2005-07-09 16:00:16','2006-02-15 22:16:25'),(9139,338,1,6236,'2.99','2005-07-11 14:18:17','2006-02-15 22:16:25'),(9140,338,1,6360,'4.99','2005-07-11 21:07:40','2006-02-15 22:16:25'),(9141,338,2,7584,'3.99','2005-07-27 23:15:46','2006-02-15 22:16:25'),(9142,338,1,8766,'0.99','2005-07-29 19:41:04','2006-02-15 22:16:25'),(9143,338,1,9485,'7.99','2005-07-30 23:32:40','2006-02-15 22:16:25'),(9144,338,2,10791,'2.99','2005-08-01 21:41:52','2006-02-15 22:16:25'),(9145,338,1,10897,'0.99','2005-08-02 01:23:42','2006-02-15 22:16:25'),(9146,338,2,11064,'4.99','2005-08-02 06:55:17','2006-02-15 22:16:25'),(9147,338,2,11671,'4.99','2005-08-17 05:50:21','2006-02-15 22:16:25'),(9148,338,2,11719,'5.99','2005-08-17 07:46:05','2006-02-15 22:16:25'),(9149,338,1,12167,'2.99','2005-08-18 01:00:02','2006-02-15 22:16:25'),(9150,338,1,13284,'3.99','2005-08-19 18:12:31','2006-02-15 22:16:25'),(9151,338,1,14619,'2.99','2005-08-21 18:10:03','2006-02-15 22:16:26'),(9152,338,2,15105,'0.99','2005-08-22 12:01:33','2006-02-15 22:16:26'),(9153,338,2,15173,'6.99','2005-08-22 15:26:29','2006-02-15 22:16:26'),(9154,339,1,876,'5.99','2005-05-30 05:41:22','2006-02-15 22:16:26'),(9155,339,2,1432,'3.99','2005-06-15 18:27:24','2006-02-15 22:16:26'),(9156,339,1,1536,'4.99','2005-06-16 00:52:22','2006-02-15 22:16:26'),(9157,339,2,1629,'4.99','2005-06-16 07:53:47','2006-02-15 22:16:26'),(9158,339,1,3146,'6.99','2005-06-20 20:21:48','2006-02-15 22:16:26'),(9159,339,1,3335,'4.99','2005-06-21 10:09:08','2006-02-15 22:16:26'),(9160,339,2,3536,'2.99','2005-07-06 01:36:11','2006-02-15 22:16:26'),(9161,339,1,4243,'4.99','2005-07-07 13:39:58','2006-02-15 22:16:26'),(9162,339,1,4467,'0.99','2005-07-08 00:13:52','2006-02-15 22:16:26'),(9163,339,2,4967,'3.99','2005-07-08 23:48:03','2006-02-15 22:16:26'),(9164,339,1,5720,'3.99','2005-07-10 11:09:12','2006-02-15 22:16:26'),(9165,339,1,6072,'6.99','2005-07-11 04:52:40','2006-02-15 22:16:26'),(9166,339,1,6425,'0.99','2005-07-11 23:54:52','2006-02-15 22:16:26'),(9167,339,2,6682,'7.99','2005-07-12 12:12:43','2006-02-15 22:16:26'),(9168,339,2,7244,'2.99','2005-07-27 10:27:33','2006-02-15 22:16:26'),(9169,339,2,7973,'4.99','2005-07-28 14:10:06','2006-02-15 22:16:27'),(9170,339,1,8968,'0.99','2005-07-30 03:57:32','2006-02-15 22:16:27'),(9171,339,2,9208,'5.99','2005-07-30 12:54:03','2006-02-15 22:16:27'),(9172,339,1,9663,'4.99','2005-07-31 06:10:48','2006-02-15 22:16:27'),(9173,339,2,10338,'3.99','2005-08-01 05:03:03','2006-02-15 22:16:27'),(9174,339,2,11171,'4.99','2005-08-02 10:23:41','2006-02-15 22:16:27'),(9175,339,1,11550,'2.99','2005-08-17 01:02:06','2006-02-15 22:16:27'),(9176,339,2,11582,'3.99','2005-08-17 02:03:49','2006-02-15 22:16:27'),(9177,339,2,11699,'5.99','2005-08-17 07:11:58','2006-02-15 22:16:27'),(9178,339,1,12631,'0.99','2005-08-18 17:52:51','2006-02-15 22:16:27'),(9179,339,1,13199,'3.99','2005-08-19 14:53:22','2006-02-15 22:16:27'),(9180,339,1,13575,'5.99','2005-08-20 05:15:20','2006-02-15 22:16:27'),(9181,339,1,13985,'0.99','2005-08-20 19:13:06','2006-02-15 22:16:27'),(9182,339,1,14636,'4.99','2005-08-21 18:59:17','2006-02-15 22:16:27'),(9183,339,2,14758,'3.99','2005-08-21 23:24:52','2006-02-15 22:16:27'),(9184,340,2,1205,'4.99','2005-06-15 02:25:56','2006-02-15 22:16:27'),(9185,340,1,1697,'3.99','2005-06-16 12:55:20','2006-02-15 22:16:27'),(9186,340,1,2177,'5.99','2005-06-18 00:34:45','2006-02-15 22:16:27'),(9187,340,2,2183,'4.99','2005-06-18 01:06:01','2006-02-15 22:16:28'),(9188,340,2,2607,'5.99','2005-06-19 06:55:01','2006-02-15 22:16:28'),(9189,340,1,2653,'5.99','2005-06-19 10:36:53','2006-02-15 22:16:28'),(9190,340,1,3264,'0.99','2005-06-21 04:19:03','2006-02-15 22:16:28'),(9191,340,1,3455,'2.99','2005-06-21 21:17:51','2006-02-15 22:16:28'),(9192,340,2,4475,'2.99','2005-07-08 00:27:30','2006-02-15 22:16:28'),(9193,340,1,4742,'0.99','2005-07-08 13:35:23','2006-02-15 22:16:28'),(9194,340,2,6381,'4.99','2005-07-11 21:58:48','2006-02-15 22:16:28'),(9195,340,2,7617,'2.99','2005-07-28 00:18:40','2006-02-15 22:16:28'),(9196,340,2,8274,'4.99','2005-07-29 01:34:32','2006-02-15 22:16:28'),(9197,340,1,8541,'0.99','2005-07-29 10:55:01','2006-02-15 22:16:28'),(9198,340,2,8551,'4.99','2005-07-29 11:13:11','2006-02-15 22:16:28'),(9199,340,1,8606,'4.99','2005-07-29 13:14:24','2006-02-15 22:16:28'),(9200,340,1,9834,'2.99','2005-07-31 12:05:42','2006-02-15 22:16:28'),(9201,340,1,10292,'2.99','2005-08-01 03:42:40','2006-02-15 22:16:28'),(9202,340,1,10667,'8.99','2005-08-01 16:58:22','2006-02-15 22:16:28'),(9203,340,2,10674,'3.99','2005-08-01 17:11:52','2006-02-15 22:16:28'),(9204,340,1,10809,'0.99','2005-08-01 22:39:27','2006-02-15 22:16:28'),(9205,340,1,10995,'0.99','2005-08-02 04:48:00','2006-02-15 22:16:28'),(9206,340,2,12598,'4.99','2005-08-18 16:34:03','2006-02-15 22:16:29'),(9207,340,2,12908,'1.99','2005-08-19 04:19:05','2006-02-15 22:16:29'),(9208,340,2,12940,'2.99','2005-08-19 05:38:29','2006-02-15 22:16:29'),(9209,340,1,13425,'2.99','2005-08-19 23:11:44','2006-02-15 22:16:29'),(9210,340,1,14457,'4.99','2005-08-21 12:47:38','2006-02-15 22:16:29'),(9211,340,2,14718,'0.99','2005-08-21 21:39:25','2006-02-15 22:16:29'),(9212,340,1,14895,'2.99','2005-08-22 04:19:23','2006-02-15 22:16:29'),(9213,340,2,15306,'2.99','2005-08-22 19:46:36','2006-02-15 22:16:29'),(9214,340,1,15378,'9.99','2005-08-22 22:25:17','2006-02-15 22:16:29'),(9215,341,1,1318,'2.99','2005-06-15 10:34:26','2006-02-15 22:16:29'),(9216,341,2,1520,'7.99','2005-06-15 23:57:20','2006-02-15 22:16:29'),(9217,341,1,1778,'1.99','2005-06-16 18:54:48','2006-02-15 22:16:29'),(9218,341,1,1849,'7.99','2005-06-17 00:13:19','2006-02-15 22:16:29'),(9219,341,2,2829,'2.99','2005-06-19 21:11:30','2006-02-15 22:16:29'),(9220,341,2,3130,'7.99','2005-06-20 19:03:22','2006-02-15 22:16:29'),(9221,341,1,3382,'5.99','2005-06-21 14:05:23','2006-02-15 22:16:29'),(9222,341,2,3938,'4.99','2005-07-06 21:15:45','2006-02-15 22:16:29'),(9223,341,1,4624,'2.99','2005-07-08 08:12:17','2006-02-15 22:16:29'),(9224,341,2,5487,'4.99','2005-07-10 00:01:50','2006-02-15 22:16:30'),(9225,341,2,5931,'0.99','2005-07-10 22:04:19','2006-02-15 22:16:30'),(9226,341,2,7473,'2.99','2005-07-27 19:05:40','2006-02-15 22:16:30'),(9227,341,1,8661,'2.99','2005-07-29 15:28:24','2006-02-15 22:16:30'),(9228,341,1,8728,'9.99','2005-07-29 18:12:49','2006-02-15 22:16:30'),(9229,341,2,10605,'0.99','2005-08-01 14:36:26','2006-02-15 22:16:30'),(9230,341,1,11305,'6.99','2005-08-02 15:44:55','2006-02-15 22:16:30'),(9231,341,1,11723,'2.99','2005-08-17 07:56:22','2006-02-15 22:16:30'),(9232,341,2,13059,'0.99','2005-08-19 09:42:01','2006-02-15 22:16:30'),(9233,341,2,13074,'8.99','2005-08-19 10:06:53','2006-02-15 22:16:30'),(9234,341,2,13806,'4.99','2005-08-20 12:53:46','2006-02-15 22:16:30'),(9235,341,2,14344,'4.99','2005-08-21 08:40:56','2006-02-15 22:16:30'),(9236,341,2,15030,'0.99','2005-08-22 09:10:21','2006-02-15 22:16:30'),(9237,341,2,15938,'6.99','2005-08-23 18:43:31','2006-02-15 22:16:30'),(9238,342,2,2190,'5.99','2005-06-18 01:29:51','2006-02-15 22:16:30'),(9239,342,1,2914,'5.99','2005-06-20 03:43:18','2006-02-15 22:16:30'),(9240,342,1,3081,'2.99','2005-06-20 15:29:13','2006-02-15 22:16:30'),(9241,342,1,5617,'0.99','2005-07-10 05:28:50','2006-02-15 22:16:30'),(9242,342,2,6060,'4.99','2005-07-11 04:06:17','2006-02-15 22:16:31'),(9243,342,2,6429,'8.99','2005-07-12 00:02:50','2006-02-15 22:16:31'),(9244,342,1,6736,'2.99','2005-07-12 14:16:50','2006-02-15 22:16:31'),(9245,342,2,6787,'7.99','2005-07-12 16:33:28','2006-02-15 22:16:31'),(9246,342,2,6997,'0.99','2005-07-27 01:14:02','2006-02-15 22:16:31'),(9247,342,2,7280,'2.99','2005-07-27 11:50:52','2006-02-15 22:16:31'),(9248,342,1,9164,'2.99','2005-07-30 11:24:14','2006-02-15 22:16:31'),(9249,342,1,9526,'0.99','2005-07-31 01:02:22','2006-02-15 22:16:31'),(9250,342,2,9948,'5.99','2005-07-31 15:49:41','2006-02-15 22:16:31'),(9251,342,1,9955,'0.99','2005-07-31 16:01:26','2006-02-15 22:16:32'),(9252,342,2,9956,'4.99','2005-07-31 16:03:47','2006-02-15 22:16:32'),(9253,342,1,10242,'4.99','2005-08-01 02:18:12','2006-02-15 22:16:32'),(9254,342,2,11178,'2.99','2005-08-02 10:48:10','2006-02-15 22:16:32'),(9255,342,2,11446,'0.99','2005-08-02 20:33:37','2006-02-15 22:16:32'),(9256,342,1,11568,'0.99','2005-08-17 01:30:01','2006-02-15 22:16:32'),(9257,342,1,12139,'6.99','2005-08-17 23:57:13','2006-02-15 22:16:32'),(9258,342,1,12404,'4.99','2005-08-18 09:36:34','2006-02-15 22:16:32'),(9259,342,1,12522,'2.99','2005-08-18 13:45:40','2006-02-15 22:16:32'),(9260,342,2,12816,'4.99','2005-08-19 01:04:05','2006-02-15 22:16:32'),(9261,342,2,13368,'4.99','2005-08-19 21:19:35','2006-02-15 22:16:32'),(9262,342,2,13637,'4.99','2005-08-20 07:21:15','2006-02-15 22:16:32'),(9263,342,1,13755,'2.99','2005-08-20 11:18:53','2006-02-15 22:16:32'),(9264,342,2,13827,'4.99','2005-08-20 13:47:19','2006-02-15 22:16:32'),(9265,342,2,14096,'2.99','2005-08-21 00:27:46','2006-02-15 22:16:32'),(9266,342,2,14299,'0.99','2005-08-21 07:18:57','2006-02-15 22:16:32'),(9267,342,2,14683,'8.99','2005-08-21 20:27:44','2006-02-15 22:16:32'),(9268,342,1,15484,'4.99','2005-08-23 02:04:49','2006-02-15 22:16:32'),(9269,342,1,15895,'3.99','2005-08-23 17:09:31','2006-02-15 22:16:32'),(9270,343,2,102,'3.99','2005-05-25 17:22:10','2006-02-15 22:16:32'),(9271,343,1,455,'3.99','2005-05-27 19:43:29','2006-02-15 22:16:32'),(9272,343,2,1547,'4.99','2005-06-16 01:42:24','2006-02-15 22:16:33'),(9273,343,1,1564,'6.99','2005-06-16 02:47:07','2006-02-15 22:16:33'),(9274,343,2,1879,'0.99','2005-06-17 02:57:34','2006-02-15 22:16:33'),(9275,343,2,1922,'0.99','2005-06-17 06:04:25','2006-02-15 22:16:33'),(9276,343,2,2461,'6.99','2005-06-18 19:58:12','2006-02-15 22:16:33'),(9277,343,1,2980,'8.99','2005-06-20 08:35:03','2006-02-15 22:16:33'),(9278,343,1,3407,'0.99','2005-06-21 16:14:02','2006-02-15 22:16:33'),(9279,343,1,3978,'5.99','2005-07-06 23:04:33','2006-02-15 22:16:33'),(9280,343,1,4472,'7.99','2005-07-08 00:22:06','2006-02-15 22:16:33'),(9281,343,2,5097,'4.99','2005-07-09 06:09:51','2006-02-15 22:16:33'),(9282,343,1,5337,'3.99','2005-07-09 17:03:50','2006-02-15 22:16:33'),(9283,343,1,7069,'6.99','2005-07-27 03:59:35','2006-02-15 22:16:33'),(9284,343,2,8012,'5.99','2005-07-28 15:29:00','2006-02-15 22:16:33'),(9285,343,2,8088,'9.99','2005-07-28 18:23:49','2006-02-15 22:16:33'),(9286,343,2,9458,'5.99','2005-07-30 22:24:34','2006-02-15 22:16:33'),(9287,343,2,9739,'2.99','2005-07-31 09:08:03','2006-02-15 22:16:33'),(9288,343,1,10822,'0.99','2005-08-01 22:54:28','2006-02-15 22:16:33'),(9289,343,1,11212,'0.99','2005-08-02 12:18:29','2006-02-15 22:16:33'),(9290,343,2,11570,'2.99','2005-08-17 01:34:32','2006-02-15 22:16:33'),(9291,343,2,13279,'4.99','2005-08-19 18:02:18','2006-02-15 22:16:33'),(9292,343,2,13522,'3.99','2005-08-20 02:44:06','2006-02-15 22:16:33'),(9293,343,2,13866,'0.99','2005-08-20 15:05:29','2006-02-15 22:16:33'),(9294,343,2,15973,'5.99','2005-08-23 20:04:41','2006-02-15 22:16:34'),(9295,344,2,157,'2.99','2005-05-26 01:25:21','2006-02-15 22:16:34'),(9296,344,2,813,'5.99','2005-05-29 20:14:34','2006-02-15 22:16:34'),(9297,344,1,1341,'3.99','2005-06-15 12:26:18','2006-02-15 22:16:34'),(9298,344,2,1475,'4.99','2005-06-15 21:08:01','2006-02-15 22:16:34'),(9299,344,1,1731,'0.99','2005-06-16 15:32:12','2006-02-15 22:16:34'),(9300,344,2,4028,'5.99','2005-07-07 02:19:14','2006-02-15 22:16:34'),(9301,344,2,4347,'3.99','2005-07-07 18:58:57','2006-02-15 22:16:34'),(9302,344,2,6363,'5.99','2005-07-11 21:13:19','2006-02-15 22:16:34'),(9303,344,2,7480,'4.99','2005-07-27 19:19:53','2006-02-15 22:16:34'),(9304,344,2,8561,'2.99','2005-07-29 11:29:12','2006-02-15 22:16:34'),(9305,344,2,9788,'4.99','2005-07-31 10:28:21','2006-02-15 22:16:34'),(9306,344,2,11116,'5.99','2005-08-02 08:34:40','2006-02-15 22:16:34'),(9307,344,2,12183,'5.99','2005-08-18 01:34:13','2006-02-15 22:16:34'),(9308,344,2,13014,'4.99','2005-08-19 07:56:08','2006-02-15 22:16:34'),(9309,344,1,13033,'3.99','2005-08-19 08:34:39','2006-02-15 22:16:34'),(9310,344,1,14621,'0.99','2005-08-21 18:17:59','2006-02-15 22:16:34'),(9311,344,2,14624,'0.99','2005-08-21 18:32:42','2006-02-15 22:16:34'),(9312,344,1,15215,'2.99','2005-08-22 16:55:26','2006-02-15 22:16:34'),(9313,345,1,206,'0.99','2005-05-26 08:01:54','2006-02-15 22:16:34'),(9314,345,1,363,'0.99','2005-05-27 07:14:00','2006-02-15 22:16:34'),(9315,345,2,1210,'0.99','2005-06-15 02:57:51','2006-02-15 22:16:34'),(9316,345,1,1457,'4.99','2005-06-15 20:05:49','2006-02-15 22:16:34'),(9317,345,2,1550,'0.99','2005-06-16 01:58:35','2006-02-15 22:16:35'),(9318,345,2,2766,'4.99','2005-06-19 17:45:15','2006-02-15 22:16:35'),(9319,345,2,4422,'2.99','2005-07-07 22:09:45','2006-02-15 22:16:35'),(9320,345,1,4425,'2.99','2005-07-07 22:22:44','2006-02-15 22:16:35'),(9321,345,2,4450,'4.99','2005-07-07 23:20:05','2006-02-15 22:16:35'),(9322,345,2,5508,'3.99','2005-07-10 00:50:01','2006-02-15 22:16:35'),(9323,345,1,6307,'7.99','2005-07-11 18:04:29','2006-02-15 22:16:35'),(9324,345,1,7092,'6.99','2005-07-27 04:46:00','2006-02-15 22:16:35'),(9325,345,2,8129,'2.99','2005-07-28 19:47:02','2006-02-15 22:16:35'),(9326,345,2,8694,'8.99','2005-07-29 16:44:48','2006-02-15 22:16:35'),(9327,345,1,9163,'4.99','2005-07-30 11:23:22','2006-02-15 22:16:35'),(9328,345,2,9207,'2.99','2005-07-30 12:49:57','2006-02-15 22:16:35'),(9329,345,2,10215,'8.99','2005-08-01 01:04:28','2006-02-15 22:16:35'),(9330,345,2,10982,'4.99','2005-08-02 04:19:11','2006-02-15 22:16:35'),(9331,345,1,11865,'2.99','2005-08-17 14:03:46','2006-02-15 22:16:35'),(9332,345,1,12485,'4.99','2005-08-18 12:41:41','2006-02-15 22:16:35'),(9333,345,2,12805,'4.99','2005-08-19 00:36:34','2006-02-15 22:16:35'),(9334,345,1,14702,'10.99','2005-08-21 21:00:03','2006-02-15 22:16:35'),(9335,345,1,15551,'4.99','2005-08-23 04:28:25','2006-02-15 22:16:35'),(9336,346,1,65,'4.99','2005-05-25 09:32:03','2006-02-15 22:16:35'),(9337,346,1,810,'4.99','2005-05-29 19:12:04','2006-02-15 22:16:35'),(9338,346,1,1994,'5.99','2005-06-17 11:07:06','2006-02-15 22:16:35'),(9339,346,2,3372,'2.99','2005-06-21 13:34:19','2006-02-15 22:16:36'),(9340,346,1,3421,'2.99','2005-06-21 17:22:58','2006-02-15 22:16:36'),(9341,346,2,4420,'4.99','2005-07-07 22:07:31','2006-02-15 22:16:36'),(9342,346,1,4958,'8.99','2005-07-08 23:19:52','2006-02-15 22:16:36'),(9343,346,1,5428,'4.99','2005-07-09 21:12:50','2006-02-15 22:16:36'),(9344,346,2,5557,'4.99','2005-07-10 03:10:21','2006-02-15 22:16:36'),(9345,346,2,6136,'4.99','2005-07-11 08:34:09','2006-02-15 22:16:36'),(9346,346,2,6323,'2.99','2005-07-11 19:02:19','2006-02-15 22:16:36'),(9347,346,2,6881,'8.99','2005-07-12 20:46:35','2006-02-15 22:16:36'),(9348,346,2,7943,'6.99','2005-07-28 12:50:55','2006-02-15 22:16:36'),(9349,346,2,8272,'5.99','2005-07-29 01:29:51','2006-02-15 22:16:36'),(9350,346,1,8505,'6.99','2005-07-29 09:22:52','2006-02-15 22:16:36'),(9351,346,2,8543,'0.99','2005-07-29 11:01:57','2006-02-15 22:16:36'),(9352,346,2,8732,'8.99','2005-07-29 18:25:03','2006-02-15 22:16:36'),(9353,346,2,9566,'4.99','2005-07-31 02:32:10','2006-02-15 22:16:36'),(9354,346,1,9848,'4.99','2005-07-31 12:44:33','2006-02-15 22:16:36'),(9355,346,1,9927,'2.99','2005-07-31 15:12:13','2006-02-15 22:16:36'),(9356,346,1,10304,'5.99','2005-08-01 04:14:12','2006-02-15 22:16:36'),(9357,346,2,10389,'3.99','2005-08-01 06:46:43','2006-02-15 22:16:36'),(9358,346,2,10521,'0.99','2005-08-01 11:46:17','2006-02-15 22:16:36'),(9359,346,2,11062,'4.99','2005-08-02 06:52:54','2006-02-15 22:16:36'),(9360,346,1,11375,'4.99','2005-08-02 18:14:56','2006-02-15 22:16:36'),(9361,346,2,11470,'2.99','2005-08-02 21:48:28','2006-02-15 22:16:37'),(9362,346,1,14890,'5.99','2005-08-22 04:10:49','2006-02-15 22:16:37'),(9363,346,2,15459,'2.99','2005-08-23 01:09:48','2006-02-15 22:16:37'),(9364,346,1,15535,'0.99','2005-08-23 03:58:02','2006-02-15 22:16:37'),(9365,346,1,15661,'8.99','2005-08-23 08:52:03','2006-02-15 22:16:37'),(9366,346,2,15825,'5.99','2005-08-23 15:10:42','2006-02-15 22:16:37'),(9367,346,1,15827,'0.99','2005-08-23 15:15:19','2006-02-15 22:16:37'),(9368,347,2,1711,'8.99','2005-06-16 14:11:52','2006-02-15 22:16:37'),(9369,347,2,2274,'0.99','2005-06-18 06:31:15','2006-02-15 22:16:37'),(9370,347,1,3026,'4.99','2005-06-20 11:48:00','2006-02-15 22:16:37'),(9371,347,1,3092,'8.99','2005-06-20 16:04:42','2006-02-15 22:16:37'),(9372,347,1,3326,'7.99','2005-06-21 09:04:50','2006-02-15 22:16:37'),(9373,347,2,3605,'0.99','2005-07-06 05:27:15','2006-02-15 22:16:37'),(9374,347,2,3666,'4.99','2005-07-06 08:27:43','2006-02-15 22:16:37'),(9375,347,1,4232,'5.99','2005-07-07 12:49:12','2006-02-15 22:16:37'),(9376,347,1,4523,'6.99','2005-07-08 03:06:59','2006-02-15 22:16:37'),(9377,347,2,5471,'0.99','2005-07-09 23:11:52','2006-02-15 22:16:37'),(9378,347,1,5819,'2.99','2005-07-10 15:56:20','2006-02-15 22:16:37'),(9379,347,2,6121,'1.99','2005-07-11 07:55:27','2006-02-15 22:16:37'),(9380,347,1,7811,'0.99','2005-07-28 08:06:01','2006-02-15 22:16:37'),(9381,347,2,8148,'4.99','2005-07-28 20:39:47','2006-02-15 22:16:37'),(9382,347,2,8153,'4.99','2005-07-28 20:55:49','2006-02-15 22:16:37'),(9383,347,2,8176,'4.99','2005-07-28 21:42:08','2006-02-15 22:16:37'),(9384,347,2,8378,'4.99','2005-07-29 05:28:35','2006-02-15 22:16:38'),(9385,347,2,8771,'2.99','2005-07-29 19:54:41','2006-02-15 22:16:38'),(9386,347,1,9013,'4.99','2005-07-30 05:19:20','2006-02-15 22:16:38'),(9387,347,1,9582,'4.99','2005-07-31 03:05:19','2006-02-15 22:16:38'),(9388,347,1,9856,'3.99','2005-07-31 13:00:35','2006-02-15 22:16:38'),(9389,347,1,9876,'2.99','2005-07-31 13:37:51','2006-02-15 22:16:38'),(9390,347,2,11738,'8.99','2005-08-17 08:45:55','2006-02-15 22:16:38'),(9391,347,1,12195,'2.99','2005-08-18 02:07:49','2006-02-15 22:16:38'),(9392,347,2,12399,'10.99','2005-08-18 09:13:42','2006-02-15 22:16:38'),(9393,347,2,13314,'5.99','2005-08-19 19:12:43','2006-02-15 22:16:38'),(9394,347,2,14894,'4.99','2005-08-22 04:16:56','2006-02-15 22:16:38'),(9395,347,2,14958,'2.99','2005-08-22 06:30:10','2006-02-15 22:16:38'),(9396,347,2,15426,'2.99','2005-08-23 00:07:19','2006-02-15 22:16:38'),(9397,347,2,15555,'4.99','2005-08-23 04:51:52','2006-02-15 22:16:38'),(9398,348,2,153,'0.99','2005-05-26 00:47:47','2006-02-15 22:16:38'),(9399,348,2,821,'0.99','2005-05-29 21:31:12','2006-02-15 22:16:38'),(9400,348,1,1654,'2.99','2005-06-16 09:42:48','2006-02-15 22:16:38'),(9401,348,1,2041,'8.99','2005-06-17 14:19:00','2006-02-15 22:16:38'),(9402,348,2,2499,'0.99','2005-06-18 23:01:36','2006-02-15 22:16:38'),(9403,348,2,3494,'4.99','2005-07-05 23:47:30','2006-02-15 22:16:38'),(9404,348,2,3610,'4.99','2005-07-06 05:36:59','2006-02-15 22:16:38'),(9405,348,2,4556,'9.99','2005-07-08 04:48:41','2006-02-15 22:16:38'),(9406,348,2,4633,'0.99','2005-07-08 08:39:39','2006-02-15 22:16:39'),(9407,348,1,4699,'0.99','2005-07-08 11:36:56','2006-02-15 22:16:39'),(9408,348,1,4807,'8.99','2005-07-08 17:01:48','2006-02-15 22:16:39'),(9409,348,1,5345,'4.99','2005-07-09 17:28:18','2006-02-15 22:16:39'),(9410,348,2,5965,'0.99','2005-07-10 23:51:52','2006-02-15 22:16:39'),(9411,348,2,6776,'2.99','2005-07-12 16:02:09','2006-02-15 22:16:39'),(9412,348,2,7380,'2.99','2005-07-27 15:37:01','2006-02-15 22:16:39'),(9413,348,1,7482,'6.99','2005-07-27 19:24:16','2006-02-15 22:16:39'),(9414,348,2,7825,'4.99','2005-07-28 08:34:57','2006-02-15 22:16:39'),(9415,348,1,8500,'2.99','2005-07-29 09:12:01','2006-02-15 22:16:39'),(9416,348,1,8569,'4.99','2005-07-29 11:39:17','2006-02-15 22:16:39'),(9417,348,2,8682,'4.99','2005-07-29 16:15:26','2006-02-15 22:16:39'),(9418,348,2,9482,'2.99','2005-07-30 23:29:16','2006-02-15 22:16:39'),(9419,348,1,10769,'2.99','2005-08-01 20:43:02','2006-02-15 22:16:39'),(9420,348,2,10972,'2.99','2005-08-02 04:08:25','2006-02-15 22:16:39'),(9421,348,1,11262,'2.99','2005-08-02 13:58:55','2006-02-15 22:16:39'),(9422,348,1,11429,'7.99','2005-08-02 20:03:52','2006-02-15 22:16:39'),(9423,348,2,12564,'2.99','2005-08-18 15:11:35','2006-02-15 22:16:39'),(9424,348,2,12884,'5.99','2005-08-19 03:34:04','2006-02-15 22:16:39'),(9425,348,2,12937,'4.99','2005-08-19 05:25:30','2006-02-15 22:16:39'),(9426,348,2,13238,'2.99','2005-08-19 16:20:56','2006-02-15 22:16:39'),(9427,348,2,13602,'5.99','2005-08-20 06:02:02','2006-02-15 22:16:39'),(9428,348,2,13684,'0.99','2005-08-20 08:55:53','2006-02-15 22:16:40'),(9429,348,1,13962,'1.99','2005-08-20 18:18:06','2006-02-15 22:16:40'),(9430,348,2,14079,'3.99','2005-08-20 23:29:25','2006-02-15 22:16:40'),(9431,348,2,14937,'7.99','2005-08-22 05:51:59','2006-02-15 22:16:40'),(9432,348,2,15817,'0.99','2005-08-23 14:59:51','2006-02-15 22:16:40'),(9433,348,1,15944,'4.99','2005-08-23 18:50:54','2006-02-15 22:16:40'),(9434,349,1,890,'4.99','2005-05-30 07:43:04','2006-02-15 22:16:40'),(9435,349,1,1197,'2.99','2005-06-15 01:42:46','2006-02-15 22:16:40'),(9436,349,1,1523,'0.99','2005-06-16 00:18:40','2006-02-15 22:16:40'),(9437,349,2,2987,'6.99','2005-06-20 08:55:50','2006-02-15 22:16:40'),(9438,349,1,3067,'8.99','2005-06-20 13:59:21','2006-02-15 22:16:40'),(9439,349,2,3488,'3.99','2005-07-05 23:32:49','2006-02-15 22:16:40'),(9440,349,1,4190,'2.99','2005-07-07 10:52:39','2006-02-15 22:16:40'),(9441,349,2,4494,'5.99','2005-07-08 01:42:45','2006-02-15 22:16:40'),(9442,349,1,4881,'0.99','2005-07-08 19:40:34','2006-02-15 22:16:40'),(9443,349,1,5433,'4.99','2005-07-09 21:22:00','2006-02-15 22:16:40'),(9444,349,1,7002,'4.99','2005-07-27 01:26:14','2006-02-15 22:16:40'),(9445,349,1,7046,'4.99','2005-07-27 03:27:56','2006-02-15 22:16:40'),(9446,349,2,7702,'2.99','2005-07-28 03:56:05','2006-02-15 22:16:40'),(9447,349,2,8297,'4.99','2005-07-29 02:45:46','2006-02-15 22:16:40'),(9448,349,1,9262,'1.99','2005-07-30 14:45:02','2006-02-15 22:16:40'),(9449,349,1,9670,'5.99','2005-07-31 06:33:33','2006-02-15 22:16:40'),(9450,349,1,9731,'0.99','2005-07-31 08:54:47','2006-02-15 22:16:41'),(9451,349,1,10987,'4.99','2005-08-02 04:36:52','2006-02-15 22:16:41'),(9452,349,2,11192,'4.99','2005-08-02 11:29:41','2006-02-15 22:16:41'),(9453,349,2,11492,'8.99','2005-08-02 22:46:47','2006-02-15 22:16:41'),(9454,349,1,11905,'3.99','2005-08-17 15:40:18','2006-02-15 22:16:41'),(9455,349,1,13258,'4.99','2005-08-19 17:05:37','2006-02-15 22:16:41'),(9456,349,2,13636,'4.99','2005-08-20 07:20:09','2006-02-15 22:16:41'),(9457,349,2,14200,'6.99','2005-08-21 03:51:27','2006-02-15 22:16:41'),(9458,349,2,14721,'6.99','2005-08-21 21:50:51','2006-02-15 22:16:41'),(9459,349,2,14908,'4.99','2005-08-22 04:44:10','2006-02-15 22:16:41'),(9460,349,1,15833,'6.99','2005-08-23 15:22:15','2006-02-15 22:16:41'),(9461,349,1,15955,'5.99','2005-08-23 19:19:06','2006-02-15 22:16:41'),(9462,349,1,14915,'2.99','2006-02-14 15:16:03','2006-02-15 22:16:41'),(9463,350,1,24,'4.99','2005-05-25 02:53:02','2006-02-15 22:16:41'),(9464,350,1,802,'4.99','2005-05-29 17:38:59','2006-02-15 22:16:41'),(9465,350,2,2011,'3.99','2005-06-17 11:56:09','2006-02-15 22:16:41'),(9466,350,1,2619,'0.99','2005-06-19 08:03:12','2006-02-15 22:16:41'),(9467,350,1,3079,'2.99','2005-06-20 15:13:40','2006-02-15 22:16:41'),(9468,350,2,3206,'0.99','2005-06-21 00:39:39','2006-02-15 22:16:41'),(9469,350,1,3529,'0.99','2005-07-06 01:15:26','2006-02-15 22:16:41'),(9470,350,1,3893,'5.99','2005-07-06 18:59:31','2006-02-15 22:16:41'),(9471,350,1,4767,'2.99','2005-07-08 15:18:53','2006-02-15 22:16:41'),(9472,350,1,5240,'0.99','2005-07-09 13:14:48','2006-02-15 22:16:42'),(9473,350,1,5303,'2.99','2005-07-09 15:44:09','2006-02-15 22:16:42'),(9474,350,1,5786,'1.99','2005-07-10 14:06:44','2006-02-15 22:16:42'),(9475,350,2,6408,'3.99','2005-07-11 23:03:02','2006-02-15 22:16:42'),(9476,350,2,7416,'4.99','2005-07-27 16:55:25','2006-02-15 22:16:42'),(9477,350,2,11504,'0.99','2005-08-16 23:16:46','2006-02-15 22:16:42'),(9478,350,2,11595,'6.99','2005-08-17 02:53:14','2006-02-15 22:16:42'),(9479,350,2,11692,'6.99','2005-08-17 06:52:41','2006-02-15 22:16:42'),(9480,350,1,11800,'0.99','2005-08-17 11:29:52','2006-02-15 22:16:42'),(9481,350,2,12252,'6.99','2005-08-18 03:59:51','2006-02-15 22:16:42'),(9482,350,2,12445,'2.99','2005-08-18 10:56:20','2006-02-15 22:16:42'),(9483,350,2,13086,'0.99','2005-08-19 10:32:28','2006-02-15 22:16:42'),(9484,350,2,15789,'1.99','2005-08-23 13:56:40','2006-02-15 22:16:42'),(9485,350,1,15807,'0.99','2005-08-23 14:35:10','2006-02-15 22:16:42'),(9486,351,1,1137,'1.99','2005-05-31 19:20:14','2006-02-15 22:16:42'),(9487,351,2,1792,'5.99','2005-06-16 20:04:50','2006-02-15 22:16:42'),(9488,351,1,1869,'0.99','2005-06-17 02:08:00','2006-02-15 22:16:42'),(9489,351,1,2759,'2.99','2005-06-19 17:10:24','2006-02-15 22:16:42'),(9490,351,1,3836,'2.99','2005-07-06 16:26:04','2006-02-15 22:16:42'),(9491,351,1,4544,'0.99','2005-07-08 04:11:04','2006-02-15 22:16:42'),(9492,351,1,4756,'1.99','2005-07-08 14:24:00','2006-02-15 22:16:42'),(9493,351,2,4761,'5.99','2005-07-08 14:51:45','2006-02-15 22:16:42'),(9494,351,1,5280,'0.99','2005-07-09 14:55:07','2006-02-15 22:16:43'),(9495,351,1,5912,'3.99','2005-07-10 20:58:22','2006-02-15 22:16:43'),(9496,351,2,6180,'3.99','2005-07-11 11:06:50','2006-02-15 22:16:43'),(9497,351,1,6664,'4.99','2005-07-12 11:28:22','2006-02-15 22:16:43'),(9498,351,2,6777,'5.99','2005-07-12 16:04:40','2006-02-15 22:16:43'),(9499,351,2,7630,'4.99','2005-07-28 01:01:03','2006-02-15 22:16:43'),(9500,351,2,8512,'4.99','2005-07-29 09:48:03','2006-02-15 22:16:43'),(9501,351,1,9707,'7.99','2005-07-31 07:44:18','2006-02-15 22:16:43'),(9502,351,2,10119,'0.99','2005-07-31 21:20:59','2006-02-15 22:16:43'),(9503,351,2,10501,'2.99','2005-08-01 11:04:46','2006-02-15 22:16:43'),(9504,351,2,11127,'0.99','2005-08-02 09:00:59','2006-02-15 22:16:43'),(9505,351,1,14368,'6.99','2005-08-21 09:31:47','2006-02-15 22:16:43'),(9506,351,2,15142,'4.99','2005-08-22 13:44:32','2006-02-15 22:16:43'),(9507,351,1,15664,'4.99','2005-08-23 08:57:11','2006-02-15 22:16:43'),(9508,351,2,15712,'2.99','2005-08-23 10:43:56','2006-02-15 22:16:43'),(9509,351,1,15762,'2.99','2005-08-23 13:01:43','2006-02-15 22:16:43'),(9510,352,1,784,'2.99','2005-05-29 14:44:22','2006-02-15 22:16:43'),(9511,352,1,1498,'0.99','2005-06-15 21:58:00','2006-02-15 22:16:43'),(9512,352,1,1649,'4.99','2005-06-16 09:20:33','2006-02-15 22:16:43'),(9513,352,1,1678,'4.99','2005-06-16 11:08:28','2006-02-15 22:16:43'),(9514,352,1,1780,'4.99','2005-06-16 19:11:45','2006-02-15 22:16:43'),(9515,352,2,3331,'4.99','2005-06-21 09:37:53','2006-02-15 22:16:43'),(9516,352,2,4116,'4.99','2005-07-07 06:56:13','2006-02-15 22:16:44'),(9517,352,2,6329,'5.99','2005-07-11 19:10:38','2006-02-15 22:16:44'),(9518,352,1,7033,'2.99','2005-07-27 03:03:25','2006-02-15 22:16:44'),(9519,352,1,7419,'7.99','2005-07-27 17:04:15','2006-02-15 22:16:44'),(9520,352,2,7512,'6.99','2005-07-27 20:40:40','2006-02-15 22:16:44'),(9521,352,1,7579,'4.99','2005-07-27 23:06:41','2006-02-15 22:16:44'),(9522,352,1,7845,'5.99','2005-07-28 09:18:07','2006-02-15 22:16:44'),(9523,352,1,7886,'2.99','2005-07-28 10:37:55','2006-02-15 22:16:44'),(9524,352,1,9463,'0.99','2005-07-30 22:30:57','2006-02-15 22:16:44'),(9525,352,1,11793,'5.99','2005-08-17 11:05:53','2006-02-15 22:16:44'),(9526,352,1,11823,'6.99','2005-08-17 12:36:37','2006-02-15 22:16:44'),(9527,352,2,11986,'0.99','2005-08-17 18:21:58','2006-02-15 22:16:44'),(9528,352,2,12234,'5.99','2005-08-18 03:17:33','2006-02-15 22:16:44'),(9529,352,1,12751,'2.99','2005-08-18 22:33:22','2006-02-15 22:16:44'),(9530,352,1,14130,'4.99','2005-08-21 01:43:11','2006-02-15 22:16:44'),(9531,352,2,14852,'0.99','2005-08-22 02:25:53','2006-02-15 22:16:44'),(9532,352,2,13578,'2.99','2006-02-14 15:16:03','2006-02-15 22:16:44'),(9533,353,2,1103,'6.99','2005-05-31 14:24:18','2006-02-15 22:16:44'),(9534,353,2,1359,'2.99','2005-06-15 13:30:30','2006-02-15 22:16:44'),(9535,353,2,1928,'7.99','2005-06-17 06:48:31','2006-02-15 22:16:44'),(9536,353,2,3233,'6.99','2005-06-21 02:39:31','2006-02-15 22:16:44'),(9537,353,2,4380,'5.99','2005-07-07 20:35:00','2006-02-15 22:16:44'),(9538,353,2,6559,'1.99','2005-07-12 05:20:35','2006-02-15 22:16:45'),(9539,353,1,6610,'3.99','2005-07-12 08:20:02','2006-02-15 22:16:45'),(9540,353,2,7993,'3.99','2005-07-28 14:56:41','2006-02-15 22:16:45'),(9541,353,2,10071,'2.99','2005-07-31 19:49:35','2006-02-15 22:16:45'),(9542,353,1,11186,'0.99','2005-08-02 11:12:08','2006-02-15 22:16:45'),(9543,353,2,11414,'4.99','2005-08-02 19:43:07','2006-02-15 22:16:45'),(9544,353,2,11698,'4.99','2005-08-17 07:09:59','2006-02-15 22:16:45'),(9545,353,1,12928,'5.99','2005-08-19 05:04:09','2006-02-15 22:16:45'),(9546,353,2,13604,'0.99','2005-08-20 06:03:33','2006-02-15 22:16:45'),(9547,353,1,14396,'4.99','2005-08-21 10:24:54','2006-02-15 22:16:45'),(9548,353,1,15564,'1.99','2005-08-23 05:10:42','2006-02-15 22:16:45'),(9549,353,2,15650,'0.99','2005-08-23 08:29:53','2006-02-15 22:16:45'),(9550,353,2,15676,'2.99','2005-08-23 09:23:08','2006-02-15 22:16:45'),(9551,354,1,140,'0.99','2005-05-25 23:34:22','2006-02-15 22:16:45'),(9552,354,2,158,'1.99','2005-05-26 01:27:11','2006-02-15 22:16:45'),(9553,354,2,402,'0.99','2005-05-27 13:17:18','2006-02-15 22:16:45'),(9554,354,1,1491,'0.99','2005-06-15 21:48:18','2006-02-15 22:16:45'),(9555,354,1,2275,'4.99','2005-06-18 06:31:29','2006-02-15 22:16:45'),(9556,354,1,2769,'6.99','2005-06-19 17:52:14','2006-02-15 22:16:45'),(9557,354,1,3139,'2.99','2005-06-20 19:44:45','2006-02-15 22:16:45'),(9558,354,2,3821,'2.99','2005-07-06 15:36:20','2006-02-15 22:16:45'),(9559,354,2,4034,'0.99','2005-07-07 02:36:33','2006-02-15 22:16:45'),(9560,354,1,4449,'5.99','2005-07-07 23:18:58','2006-02-15 22:16:46'),(9561,354,2,4745,'2.99','2005-07-08 13:45:09','2006-02-15 22:16:46'),(9562,354,1,5354,'4.99','2005-07-09 18:04:33','2006-02-15 22:16:46'),(9563,354,2,5556,'4.99','2005-07-10 03:10:17','2006-02-15 22:16:46'),(9564,354,1,5873,'3.99','2005-07-10 19:02:10','2006-02-15 22:16:46'),(9565,354,1,6054,'0.99','2005-07-11 03:58:39','2006-02-15 22:16:46'),(9566,354,1,6838,'4.99','2005-07-12 19:01:30','2006-02-15 22:16:46'),(9567,354,1,6926,'0.99','2005-07-26 22:52:45','2006-02-15 22:16:46'),(9568,354,1,6939,'5.99','2005-07-26 23:17:51','2006-02-15 22:16:46'),(9569,354,2,7148,'0.99','2005-07-27 07:04:09','2006-02-15 22:16:46'),(9570,354,2,7235,'2.99','2005-07-27 10:09:30','2006-02-15 22:16:46'),(9571,354,2,7241,'0.99','2005-07-27 10:25:49','2006-02-15 22:16:46'),(9572,354,2,8321,'4.99','2005-07-29 03:50:54','2006-02-15 22:16:46'),(9573,354,2,8477,'8.99','2005-07-29 08:40:36','2006-02-15 22:16:46'),(9574,354,1,8609,'4.99','2005-07-29 13:19:25','2006-02-15 22:16:46'),(9575,354,2,8921,'0.99','2005-07-30 02:04:02','2006-02-15 22:16:46'),(9576,354,1,9130,'2.99','2005-07-30 09:55:10','2006-02-15 22:16:46'),(9577,354,1,10420,'6.99','2005-08-01 08:13:53','2006-02-15 22:16:46'),(9578,354,2,12243,'6.99','2005-08-18 03:38:54','2006-02-15 22:16:46'),(9579,354,1,12544,'3.99','2005-08-18 14:25:51','2006-02-15 22:16:46'),(9580,354,1,12998,'4.99','2005-08-19 07:32:16','2006-02-15 22:16:46'),(9581,354,2,14212,'2.99','2005-08-21 04:29:26','2006-02-15 22:16:47'),(9582,354,2,14245,'0.99','2005-08-21 05:30:54','2006-02-15 22:16:47'),(9583,354,1,14840,'5.99','2005-08-22 01:58:42','2006-02-15 22:16:47'),(9584,354,2,15956,'0.99','2005-08-23 19:19:21','2006-02-15 22:16:47'),(9585,354,1,12759,'7.98','2006-02-14 15:16:03','2006-02-15 22:16:47'),(9586,354,1,11782,'0.00','2006-02-14 15:16:03','2006-02-15 22:16:47'),(9587,355,1,1110,'3.99','2005-05-31 15:22:51','2006-02-15 22:16:47'),(9588,355,2,1488,'0.99','2005-06-15 21:39:54','2006-02-15 22:16:47'),(9589,355,1,1612,'2.99','2005-06-16 06:52:05','2006-02-15 22:16:47'),(9590,355,1,3567,'5.99','2005-07-06 03:09:36','2006-02-15 22:16:47'),(9591,355,1,3730,'6.99','2005-07-06 11:31:24','2006-02-15 22:16:47'),(9592,355,1,5210,'4.99','2005-07-09 11:24:19','2006-02-15 22:16:47'),(9593,355,1,5564,'5.99','2005-07-10 03:23:05','2006-02-15 22:16:47'),(9594,355,1,6127,'0.99','2005-07-11 08:06:59','2006-02-15 22:16:47'),(9595,355,2,6262,'6.99','2005-07-11 15:33:24','2006-02-15 22:16:47'),(9596,355,1,6437,'2.99','2005-07-12 00:20:29','2006-02-15 22:16:47'),(9597,355,2,6669,'4.99','2005-07-12 11:39:55','2006-02-15 22:16:47'),(9598,355,2,7108,'4.99','2005-07-27 05:28:32','2006-02-15 22:16:47'),(9599,355,2,7477,'5.99','2005-07-27 19:11:03','2006-02-15 22:16:47'),(9600,355,2,8418,'1.99','2005-07-29 06:54:21','2006-02-15 22:16:47'),(9601,355,1,10498,'0.99','2005-08-01 10:56:48','2006-02-15 22:16:47'),(9602,355,2,11471,'0.99','2005-08-02 21:49:03','2006-02-15 22:16:47'),(9603,355,2,13821,'1.99','2005-08-20 13:33:47','2006-02-15 22:16:48'),(9604,355,1,15367,'3.99','2005-08-22 21:47:53','2006-02-15 22:16:48'),(9605,355,2,15531,'2.99','2005-08-23 03:52:36','2006-02-15 22:16:48'),(9606,355,1,14760,'0.99','2006-02-14 15:16:03','2006-02-15 22:16:48'),(9607,356,2,1088,'4.99','2005-05-31 11:35:13','2006-02-15 22:16:48'),(9608,356,1,1410,'0.99','2005-06-15 16:59:46','2006-02-15 22:16:48'),(9609,356,1,2405,'2.99','2005-06-18 16:36:38','2006-02-15 22:16:48'),(9610,356,1,2433,'4.99','2005-06-18 18:10:17','2006-02-15 22:16:48'),(9611,356,2,3829,'6.99','2005-07-06 15:59:40','2006-02-15 22:16:48'),(9612,356,2,4599,'4.99','2005-07-08 06:48:26','2006-02-15 22:16:48'),(9613,356,1,5513,'0.99','2005-07-10 01:05:41','2006-02-15 22:16:48'),(9614,356,1,6593,'4.99','2005-07-12 07:21:17','2006-02-15 22:16:48'),(9615,356,1,6648,'0.99','2005-07-12 10:46:30','2006-02-15 22:16:48'),(9616,356,1,7079,'2.99','2005-07-27 04:21:58','2006-02-15 22:16:48'),(9617,356,1,7758,'1.99','2005-07-28 06:23:41','2006-02-15 22:16:48'),(9618,356,1,7902,'0.99','2005-07-28 11:14:19','2006-02-15 22:16:48'),(9619,356,1,8198,'3.99','2005-07-28 23:08:05','2006-02-15 22:16:48'),(9620,356,1,8975,'5.99','2005-07-30 04:10:18','2006-02-15 22:16:48'),(9621,356,2,9037,'4.99','2005-07-30 06:23:14','2006-02-15 22:16:48'),(9622,356,2,9523,'3.99','2005-07-31 00:56:09','2006-02-15 22:16:48'),(9623,356,2,9883,'6.99','2005-07-31 13:53:37','2006-02-15 22:16:48'),(9624,356,1,10427,'3.99','2005-08-01 08:30:11','2006-02-15 22:16:48'),(9625,356,1,10854,'4.99','2005-08-02 00:02:06','2006-02-15 22:16:49'),(9626,356,1,11535,'3.99','2005-08-17 00:39:54','2006-02-15 22:16:49'),(9627,356,2,11579,'2.99','2005-08-17 01:57:49','2006-02-15 22:16:49'),(9628,356,2,12037,'4.99','2005-08-17 20:21:35','2006-02-15 22:16:49'),(9629,356,2,12876,'2.99','2005-08-19 03:12:19','2006-02-15 22:16:49'),(9630,356,1,12913,'0.99','2005-08-19 04:25:39','2006-02-15 22:16:49'),(9631,356,2,13107,'4.99','2005-08-19 11:13:58','2006-02-15 22:16:49'),(9632,356,2,13442,'5.99','2005-08-19 23:50:45','2006-02-15 22:16:49'),(9633,356,2,13703,'6.99','2005-08-20 09:29:35','2006-02-15 22:16:49'),(9634,356,1,15705,'4.99','2005-08-23 10:32:52','2006-02-15 22:16:49'),(9635,356,2,15754,'5.99','2005-08-23 12:43:42','2006-02-15 22:16:49'),(9636,356,1,15757,'2.99','2005-08-23 12:47:16','2006-02-15 22:16:49'),(9637,357,1,144,'2.99','2005-05-25 23:49:56','2006-02-15 22:16:49'),(9638,357,1,824,'4.99','2005-05-29 21:45:32','2006-02-15 22:16:49'),(9639,357,2,945,'0.99','2005-05-30 15:33:17','2006-02-15 22:16:49'),(9640,357,2,1246,'5.99','2005-06-15 05:11:19','2006-02-15 22:16:49'),(9641,357,1,1788,'1.99','2005-06-16 19:47:18','2006-02-15 22:16:49'),(9642,357,2,1971,'1.99','2005-06-17 09:23:59','2006-02-15 22:16:49'),(9643,357,2,2153,'6.99','2005-06-17 22:58:04','2006-02-15 22:16:49'),(9644,357,1,3865,'3.99','2005-07-06 17:46:57','2006-02-15 22:16:49'),(9645,357,1,4478,'0.99','2005-07-08 00:39:08','2006-02-15 22:16:49'),(9646,357,1,5896,'0.99','2005-07-10 20:15:56','2006-02-15 22:16:49'),(9647,357,1,6288,'8.99','2005-07-11 17:01:52','2006-02-15 22:16:50'),(9648,357,2,6367,'4.99','2005-07-11 21:18:29','2006-02-15 22:16:50'),(9649,357,2,6405,'2.99','2005-07-11 22:53:12','2006-02-15 22:16:50'),(9650,357,1,6839,'0.99','2005-07-12 19:03:19','2006-02-15 22:16:50'),(9651,357,1,7353,'2.99','2005-07-27 14:38:39','2006-02-15 22:16:50'),(9652,357,1,7366,'5.99','2005-07-27 15:01:17','2006-02-15 22:16:50'),(9653,357,2,8041,'2.99','2005-07-28 16:39:56','2006-02-15 22:16:50'),(9654,357,1,8124,'2.99','2005-07-28 19:28:58','2006-02-15 22:16:50'),(9655,357,2,9233,'3.99','2005-07-30 13:44:15','2006-02-15 22:16:50'),(9656,357,2,10391,'2.99','2005-08-01 06:49:05','2006-02-15 22:16:50'),(9657,357,1,10502,'2.99','2005-08-01 11:06:39','2006-02-15 22:16:50'),(9658,357,1,10503,'6.99','2005-08-01 11:07:44','2006-02-15 22:16:50'),(9659,357,2,10764,'0.99','2005-08-01 20:32:42','2006-02-15 22:16:50'),(9660,357,2,11065,'2.99','2005-08-02 06:57:55','2006-02-15 22:16:50'),(9661,357,1,14926,'0.99','2005-08-22 05:18:44','2006-02-15 22:16:50'),(9662,357,2,15869,'2.99','2005-08-23 16:22:20','2006-02-15 22:16:50'),(9663,358,2,858,'4.99','2005-05-30 02:10:32','2006-02-15 22:16:50'),(9664,358,1,1455,'2.99','2005-06-15 19:51:06','2006-02-15 22:16:50'),(9665,358,2,1908,'0.99','2005-06-17 05:10:36','2006-02-15 22:16:50'),(9666,358,1,2114,'5.99','2005-06-17 20:00:25','2006-02-15 22:16:50'),(9667,358,1,2721,'2.99','2005-06-19 14:53:24','2006-02-15 22:16:50'),(9668,358,1,2749,'2.99','2005-06-19 16:27:35','2006-02-15 22:16:51'),(9669,358,1,3245,'2.99','2005-06-21 03:06:11','2006-02-15 22:16:51'),(9670,358,1,3753,'2.99','2005-07-06 12:34:06','2006-02-15 22:16:51'),(9671,358,1,3809,'2.99','2005-07-06 15:16:37','2006-02-15 22:16:51'),(9672,358,2,5023,'5.99','2005-07-09 02:23:16','2006-02-15 22:16:51'),(9673,358,1,6362,'2.99','2005-07-11 21:09:31','2006-02-15 22:16:51'),(9674,358,1,8621,'2.99','2005-07-29 13:52:42','2006-02-15 22:16:51'),(9675,358,2,9062,'0.99','2005-07-30 07:23:17','2006-02-15 22:16:51'),(9676,358,1,9568,'0.99','2005-07-31 02:37:44','2006-02-15 22:16:51'),(9677,358,1,10193,'2.99','2005-08-01 00:33:27','2006-02-15 22:16:51'),(9678,358,1,10482,'4.99','2005-08-01 10:17:47','2006-02-15 22:16:51'),(9679,358,2,11149,'5.99','2005-08-02 09:51:43','2006-02-15 22:16:51'),(9680,358,2,11653,'4.99','2005-08-17 05:06:10','2006-02-15 22:16:51'),(9681,358,1,12452,'6.99','2005-08-18 11:14:35','2006-02-15 22:16:51'),(9682,358,1,13197,'2.99','2005-08-19 14:44:03','2006-02-15 22:16:51'),(9683,358,1,14004,'7.99','2005-08-20 20:16:35','2006-02-15 22:16:51'),(9684,359,1,284,'8.99','2005-05-26 19:21:44','2006-02-15 22:16:51'),(9685,359,2,392,'2.99','2005-05-27 11:14:42','2006-02-15 22:16:51'),(9686,359,1,528,'3.99','2005-05-28 04:30:05','2006-02-15 22:16:51'),(9687,359,2,1329,'4.99','2005-06-15 11:25:06','2006-02-15 22:16:51'),(9688,359,2,1770,'1.99','2005-06-16 18:07:55','2006-02-15 22:16:51'),(9689,359,1,2401,'0.99','2005-06-18 16:22:03','2006-02-15 22:16:51'),(9690,359,1,2736,'4.99','2005-06-19 15:43:20','2006-02-15 22:16:52'),(9691,359,2,4830,'7.99','2005-07-08 17:56:23','2006-02-15 22:16:52'),(9692,359,2,6424,'9.99','2005-07-11 23:49:37','2006-02-15 22:16:52'),(9693,359,1,6542,'2.99','2005-07-12 04:53:49','2006-02-15 22:16:52'),(9694,359,2,6741,'0.99','2005-07-12 14:24:16','2006-02-15 22:16:52'),(9695,359,2,7098,'0.99','2005-07-27 05:01:08','2006-02-15 22:16:52'),(9696,359,1,7115,'0.99','2005-07-27 05:42:58','2006-02-15 22:16:52'),(9697,359,1,8174,'4.99','2005-07-28 21:36:52','2006-02-15 22:16:52'),(9698,359,1,9898,'4.99','2005-07-31 14:12:03','2006-02-15 22:16:52'),(9699,359,2,10174,'5.99','2005-07-31 23:40:08','2006-02-15 22:16:52'),(9700,359,1,11032,'4.99','2005-08-02 05:53:35','2006-02-15 22:16:52'),(9701,359,1,12611,'1.99','2005-08-18 17:09:42','2006-02-15 22:16:52'),(9702,359,2,13297,'2.99','2005-08-19 18:45:49','2006-02-15 22:16:52'),(9703,359,1,14258,'1.99','2005-08-21 05:56:36','2006-02-15 22:16:52'),(9704,359,2,14598,'5.99','2005-08-21 17:40:05','2006-02-15 22:16:52'),(9705,359,1,15104,'2.99','2005-08-22 12:01:16','2006-02-15 22:16:52'),(9706,359,1,15148,'4.99','2005-08-22 13:59:19','2006-02-15 22:16:52'),(9707,359,1,15453,'1.99','2005-08-23 01:01:01','2006-02-15 22:16:52'),(9708,359,2,15655,'4.99','2006-02-14 15:16:03','2006-02-15 22:16:52'),(9709,360,1,633,'0.99','2005-05-28 17:37:59','2006-02-15 22:16:52'),(9710,360,2,777,'4.99','2005-05-29 14:07:58','2006-02-15 22:16:52'),(9711,360,2,1492,'0.99','2005-06-15 21:48:35','2006-02-15 22:16:53'),(9712,360,2,2402,'6.99','2005-06-18 16:24:45','2006-02-15 22:16:53'),(9713,360,2,2541,'3.99','2005-06-19 02:08:10','2006-02-15 22:16:53'),(9714,360,2,2780,'6.99','2005-06-19 18:19:33','2006-02-15 22:16:53'),(9715,360,1,4056,'4.99','2005-07-07 03:57:36','2006-02-15 22:16:53'),(9716,360,1,4487,'7.99','2005-07-08 01:20:22','2006-02-15 22:16:53'),(9717,360,2,5456,'2.99','2005-07-09 22:31:45','2006-02-15 22:16:53'),(9718,360,1,5834,'1.99','2005-07-10 16:44:12','2006-02-15 22:16:53'),(9719,360,1,5995,'3.99','2005-07-11 01:15:39','2006-02-15 22:16:53'),(9720,360,1,6442,'0.99','2005-07-12 00:29:45','2006-02-15 22:16:53'),(9721,360,2,6770,'5.99','2005-07-12 15:49:40','2006-02-15 22:16:53'),(9722,360,1,7251,'2.99','2005-07-27 10:44:55','2006-02-15 22:16:53'),(9723,360,2,7588,'9.99','2005-07-27 23:23:31','2006-02-15 22:16:53'),(9724,360,1,7654,'4.99','2005-07-28 02:00:14','2006-02-15 22:16:53'),(9725,360,2,7908,'3.99','2005-07-28 11:32:57','2006-02-15 22:16:53'),(9726,360,1,8220,'2.99','2005-07-28 23:46:41','2006-02-15 22:16:53'),(9727,360,2,8361,'2.99','2005-07-29 05:08:57','2006-02-15 22:16:53'),(9728,360,1,9283,'4.99','2005-07-30 15:25:19','2006-02-15 22:16:53'),(9729,360,2,9352,'0.99','2005-07-30 18:29:26','2006-02-15 22:16:53'),(9730,360,1,9623,'2.99','2005-07-31 04:30:02','2006-02-15 22:16:53'),(9731,360,2,9659,'3.99','2005-07-31 06:02:14','2006-02-15 22:16:53'),(9732,360,2,10857,'2.99','2005-08-02 00:07:20','2006-02-15 22:16:54'),(9733,360,2,11264,'6.99','2005-08-02 14:05:18','2006-02-15 22:16:54'),(9734,360,2,11553,'4.99','2005-08-17 01:04:31','2006-02-15 22:16:54'),(9735,360,2,12088,'5.99','2005-08-17 22:20:16','2006-02-15 22:16:54'),(9736,360,1,12773,'5.99','2005-08-18 23:32:19','2006-02-15 22:16:54'),(9737,360,2,12795,'0.99','2005-08-19 00:21:52','2006-02-15 22:16:54'),(9738,360,1,12839,'6.99','2005-08-19 01:53:43','2006-02-15 22:16:54'),(9739,360,1,12990,'4.99','2005-08-19 07:20:39','2006-02-15 22:16:54'),(9740,360,2,13894,'7.99','2005-08-20 15:55:20','2006-02-15 22:16:54'),(9741,360,1,14700,'4.99','2005-08-21 20:53:40','2006-02-15 22:16:54'),(9742,360,1,15310,'2.99','2005-08-22 19:56:41','2006-02-15 22:16:54'),(9743,361,1,368,'5.99','2005-05-27 07:42:29','2006-02-15 22:16:54'),(9744,361,2,1120,'4.99','2005-05-31 16:37:14','2006-02-15 22:16:54'),(9745,361,2,2353,'4.99','2005-06-18 12:53:25','2006-02-15 22:16:54'),(9746,361,2,2558,'1.99','2005-06-19 03:09:16','2006-02-15 22:16:54'),(9747,361,1,2851,'2.99','2005-06-19 23:07:03','2006-02-15 22:16:54'),(9748,361,2,3303,'2.99','2005-06-21 07:34:14','2006-02-15 22:16:54'),(9749,361,2,5154,'2.99','2005-07-09 08:46:18','2006-02-15 22:16:54'),(9750,361,1,6152,'0.99','2005-07-11 09:25:52','2006-02-15 22:16:54'),(9751,361,2,6829,'4.99','2005-07-12 18:38:59','2006-02-15 22:16:54'),(9752,361,2,6911,'0.99','2005-07-12 22:14:34','2006-02-15 22:16:54'),(9753,361,1,6914,'1.99','2005-07-12 22:26:56','2006-02-15 22:16:55'),(9754,361,1,7538,'2.99','2005-07-27 21:38:04','2006-02-15 22:16:55'),(9755,361,2,7712,'2.99','2005-07-28 04:29:53','2006-02-15 22:16:55'),(9756,361,2,8189,'4.99','2005-07-28 22:36:26','2006-02-15 22:16:55'),(9757,361,1,10145,'1.99','2005-07-31 22:15:13','2006-02-15 22:16:55'),(9758,361,1,10151,'4.99','2005-07-31 22:22:37','2006-02-15 22:16:55'),(9759,361,1,10414,'0.99','2005-08-01 08:03:55','2006-02-15 22:16:55'),(9760,361,2,10975,'0.99','2005-08-02 04:11:25','2006-02-15 22:16:55'),(9761,361,2,11031,'5.99','2005-08-02 05:52:58','2006-02-15 22:16:55'),(9762,361,2,11243,'5.99','2005-08-02 13:32:48','2006-02-15 22:16:55'),(9763,361,1,11327,'2.99','2005-08-02 16:40:47','2006-02-15 22:16:55'),(9764,361,1,11991,'3.99','2005-08-17 18:27:08','2006-02-15 22:16:55'),(9765,361,2,12626,'5.99','2005-08-18 17:36:45','2006-02-15 22:16:55'),(9766,361,2,12690,'2.99','2005-08-18 20:06:57','2006-02-15 22:16:55'),(9767,361,1,13135,'0.99','2005-08-19 12:22:52','2006-02-15 22:16:55'),(9768,361,2,14031,'0.99','2005-08-20 21:24:24','2006-02-15 22:16:55'),(9769,361,1,14422,'0.99','2005-08-21 11:21:46','2006-02-15 22:16:55'),(9770,361,1,15759,'6.99','2005-08-23 12:47:37','2006-02-15 22:16:55'),(9771,361,2,15935,'2.99','2005-08-23 18:41:11','2006-02-15 22:16:55'),(9772,361,1,13298,'3.98','2006-02-14 15:16:03','2006-02-15 22:16:55'),(9773,361,1,14769,'0.00','2006-02-14 15:16:03','2006-02-15 22:16:55'),(9774,362,2,1035,'4.99','2005-05-31 05:01:09','2006-02-15 22:16:56'),(9775,362,1,1429,'2.99','2005-06-15 18:24:10','2006-02-15 22:16:56'),(9776,362,1,1529,'2.99','2005-06-16 00:37:35','2006-02-15 22:16:56'),(9777,362,1,1615,'2.99','2005-06-16 07:00:28','2006-02-15 22:16:56'),(9778,362,2,3197,'2.99','2005-06-21 00:07:23','2006-02-15 22:16:56'),(9779,362,2,3393,'2.99','2005-06-21 15:14:27','2006-02-15 22:16:56'),(9780,362,2,4646,'8.99','2005-07-08 09:23:26','2006-02-15 22:16:56'),(9781,362,1,5227,'4.99','2005-07-09 12:16:39','2006-02-15 22:16:56'),(9782,362,2,5563,'1.99','2005-07-10 03:21:02','2006-02-15 22:16:56'),(9783,362,2,5690,'5.99','2005-07-10 09:26:49','2006-02-15 22:16:56'),(9784,362,1,6204,'4.99','2005-07-11 12:29:22','2006-02-15 22:16:56'),(9785,362,2,6576,'4.99','2005-07-12 06:13:41','2006-02-15 22:16:56'),(9786,362,1,6981,'4.99','2005-07-27 00:51:38','2006-02-15 22:16:56'),(9787,362,1,7172,'1.99','2005-07-27 07:59:16','2006-02-15 22:16:56'),(9788,362,1,7485,'2.99','2005-07-27 19:29:09','2006-02-15 22:16:56'),(9789,362,1,8081,'2.99','2005-07-28 18:06:46','2006-02-15 22:16:56'),(9790,362,2,8325,'2.99','2005-07-29 03:57:27','2006-02-15 22:16:56'),(9791,362,2,8364,'4.99','2005-07-29 05:10:31','2006-02-15 22:16:56'),(9792,362,1,8662,'0.99','2005-07-29 15:31:33','2006-02-15 22:16:56'),(9793,362,1,8714,'2.99','2005-07-29 17:31:40','2006-02-15 22:16:56'),(9794,362,1,9784,'4.99','2005-07-31 10:21:32','2006-02-15 22:16:56'),(9795,362,2,10546,'3.99','2005-08-01 12:44:17','2006-02-15 22:16:56'),(9796,362,2,12244,'4.99','2005-08-18 03:39:11','2006-02-15 22:16:57'),(9797,362,1,12854,'6.99','2005-08-19 02:18:51','2006-02-15 22:16:57'),(9798,362,1,13603,'6.99','2005-08-20 06:02:48','2006-02-15 22:16:57'),(9799,362,2,14051,'6.99','2005-08-20 22:09:51','2006-02-15 22:16:57'),(9800,362,2,14129,'2.99','2005-08-21 01:42:15','2006-02-15 22:16:57'),(9801,362,2,14336,'4.99','2005-08-21 08:33:42','2006-02-15 22:16:57'),(9802,362,1,14752,'5.99','2005-08-21 23:11:42','2006-02-15 22:16:57'),(9803,362,1,14759,'11.99','2005-08-21 23:28:58','2006-02-15 22:16:57'),(9804,362,1,14808,'4.99','2005-08-22 00:58:35','2006-02-15 22:16:57'),(9805,362,1,14950,'2.99','2005-08-22 06:17:12','2006-02-15 22:16:57'),(9806,363,1,733,'3.99','2005-05-29 07:35:21','2006-02-15 22:16:57'),(9807,363,2,1426,'4.99','2005-06-15 18:16:24','2006-02-15 22:16:57'),(9808,363,2,1569,'4.99','2005-06-16 03:19:09','2006-02-15 22:16:57'),(9809,363,1,1847,'4.99','2005-06-17 00:05:22','2006-02-15 22:16:57'),(9810,363,1,2540,'4.99','2005-06-19 02:04:48','2006-02-15 22:16:57'),(9811,363,2,3281,'2.99','2005-06-21 06:08:47','2006-02-15 22:16:57'),(9812,363,1,3726,'3.99','2005-07-06 11:15:49','2006-02-15 22:16:57'),(9813,363,2,5687,'3.99','2005-07-10 09:07:19','2006-02-15 22:16:57'),(9814,363,1,5758,'6.99','2005-07-10 12:42:43','2006-02-15 22:16:57'),(9815,363,2,6140,'4.99','2005-07-11 08:40:47','2006-02-15 22:16:57'),(9816,363,2,6705,'4.99','2005-07-12 12:53:11','2006-02-15 22:16:58'),(9817,363,2,6821,'2.99','2005-07-12 18:22:10','2006-02-15 22:16:58'),(9818,363,2,6878,'4.99','2005-07-12 20:37:13','2006-02-15 22:16:58'),(9819,363,1,7256,'2.99','2005-07-27 10:58:32','2006-02-15 22:16:58'),(9820,363,2,7708,'4.99','2005-07-28 04:19:15','2006-02-15 22:16:58'),(9821,363,2,8121,'2.99','2005-07-28 19:25:45','2006-02-15 22:16:58'),(9822,363,2,8522,'3.99','2005-07-29 10:16:19','2006-02-15 22:16:58'),(9823,363,2,8804,'2.99','2005-07-29 21:28:19','2006-02-15 22:16:58'),(9824,363,2,8841,'4.99','2005-07-29 22:56:07','2006-02-15 22:16:58'),(9825,363,1,9968,'4.99','2005-07-31 16:32:16','2006-02-15 22:16:58'),(9826,363,1,9977,'8.99','2005-07-31 16:58:42','2006-02-15 22:16:58'),(9827,363,1,10339,'6.99','2005-08-01 05:05:50','2006-02-15 22:16:58'),(9828,363,2,12189,'5.99','2005-08-18 01:51:44','2006-02-15 22:16:58'),(9829,363,2,12760,'4.99','2005-08-18 23:03:19','2006-02-15 22:16:58'),(9830,363,1,13706,'9.99','2005-08-20 09:32:56','2006-02-15 22:16:58'),(9831,363,1,14694,'2.99','2005-08-21 20:46:42','2006-02-15 22:16:58'),(9832,363,1,14983,'5.99','2005-08-22 07:32:23','2006-02-15 22:16:58'),(9833,363,2,15279,'4.99','2005-08-22 19:08:49','2006-02-15 22:16:58'),(9834,363,1,15335,'4.99','2005-08-22 20:44:55','2006-02-15 22:16:58'),(9835,364,1,462,'5.99','2005-05-27 20:10:36','2006-02-15 22:16:58'),(9836,364,1,1722,'2.99','2005-06-16 15:12:52','2006-02-15 22:16:59'),(9837,364,2,2442,'2.99','2005-06-18 18:49:18','2006-02-15 22:16:59'),(9838,364,2,2606,'4.99','2005-06-19 06:51:32','2006-02-15 22:16:59'),(9839,364,2,2857,'4.99','2005-06-19 23:15:15','2006-02-15 22:16:59'),(9840,364,2,2962,'3.99','2005-06-20 07:31:55','2006-02-15 22:16:59'),(9841,364,1,3678,'4.99','2005-07-06 09:15:15','2006-02-15 22:16:59'),(9842,364,2,3961,'4.99','2005-07-06 22:11:43','2006-02-15 22:16:59'),(9843,364,1,4047,'0.99','2005-07-07 03:28:49','2006-02-15 22:16:59'),(9844,364,2,4689,'4.99','2005-07-08 11:03:47','2006-02-15 22:16:59'),(9845,364,1,5872,'10.99','2005-07-10 18:54:05','2006-02-15 22:16:59'),(9846,364,1,7272,'2.99','2005-07-27 11:30:20','2006-02-15 22:16:59'),(9847,364,2,9266,'4.99','2005-07-30 14:59:01','2006-02-15 22:16:59'),(9848,364,1,10092,'0.99','2005-07-31 20:28:09','2006-02-15 22:16:59'),(9849,364,2,10290,'5.99','2005-08-01 03:39:50','2006-02-15 22:16:59'),(9850,364,2,11932,'4.99','2005-08-17 16:36:12','2006-02-15 22:16:59'),(9851,364,1,12557,'4.99','2005-08-18 14:51:03','2006-02-15 22:16:59'),(9852,364,1,12761,'1.99','2005-08-18 23:05:22','2006-02-15 22:16:59'),(9853,364,2,12912,'3.99','2005-08-19 04:24:35','2006-02-15 22:16:59'),(9854,364,1,13698,'4.99','2005-08-20 09:24:26','2006-02-15 22:16:59'),(9855,364,2,13936,'0.99','2005-08-20 17:22:35','2006-02-15 22:17:00'),(9856,364,2,14293,'4.99','2005-08-21 07:06:47','2006-02-15 22:17:00'),(9857,364,1,15242,'0.99','2005-08-22 17:48:10','2006-02-15 22:17:00'),(9858,365,2,120,'5.99','2005-05-25 19:37:47','2006-02-15 22:17:00'),(9859,365,1,231,'4.99','2005-05-26 11:31:59','2006-02-15 22:17:00'),(9860,365,1,1303,'1.99','2005-06-15 09:55:57','2006-02-15 22:17:00'),(9861,365,1,1578,'6.99','2005-06-16 04:08:16','2006-02-15 22:17:00'),(9862,365,1,1983,'4.99','2005-06-17 10:22:13','2006-02-15 22:17:00'),(9863,365,1,2525,'2.99','2005-06-19 00:48:22','2006-02-15 22:17:00'),(9864,365,2,3156,'0.99','2005-06-20 21:03:46','2006-02-15 22:17:00'),(9865,365,1,4583,'1.99','2005-07-08 06:09:44','2006-02-15 22:17:00'),(9866,365,1,6604,'4.99','2005-07-12 07:57:45','2006-02-15 22:17:00'),(9867,365,1,7488,'7.99','2005-07-27 19:36:15','2006-02-15 22:17:00'),(9868,365,2,7634,'4.99','2005-07-28 01:07:01','2006-02-15 22:17:00'),(9869,365,1,8168,'4.99','2005-07-28 21:28:32','2006-02-15 22:17:00'),(9870,365,2,8782,'4.99','2005-07-29 20:29:34','2006-02-15 22:17:00'),(9871,365,1,8856,'3.99','2005-07-29 23:42:00','2006-02-15 22:17:00'),(9872,365,1,9122,'2.99','2005-07-30 09:36:52','2006-02-15 22:17:00'),(9873,365,2,9184,'4.99','2005-07-30 12:10:19','2006-02-15 22:17:00'),(9874,365,2,9540,'2.99','2005-07-31 01:40:06','2006-02-15 22:17:01'),(9875,365,2,10717,'2.99','2005-08-01 18:53:53','2006-02-15 22:17:01'),(9876,365,2,12322,'2.99','2005-08-18 06:35:28','2006-02-15 22:17:01'),(9877,365,2,12375,'4.99','2005-08-18 08:20:08','2006-02-15 22:17:01'),(9878,365,1,12804,'8.99','2005-08-19 00:33:15','2006-02-15 22:17:01'),(9879,365,1,13619,'2.99','2005-08-20 06:39:26','2006-02-15 22:17:01'),(9880,365,2,14463,'6.99','2005-08-21 12:51:49','2006-02-15 22:17:01'),(9881,366,2,911,'6.99','2005-05-30 10:50:22','2006-02-15 22:17:01'),(9882,366,2,1401,'1.99','2005-06-15 16:30:22','2006-02-15 22:17:01'),(9883,366,2,2214,'0.99','2005-06-18 02:44:37','2006-02-15 22:17:01'),(9884,366,2,3632,'4.99','2005-07-06 06:38:21','2006-02-15 22:17:01'),(9885,366,1,3834,'2.99','2005-07-06 16:19:56','2006-02-15 22:17:01'),(9886,366,2,4276,'2.99','2005-07-07 14:50:59','2006-02-15 22:17:01'),(9887,366,1,4569,'5.99','2005-07-08 05:30:51','2006-02-15 22:17:01'),(9888,366,2,5364,'0.99','2005-07-09 18:24:48','2006-02-15 22:17:01'),(9889,366,1,6112,'6.99','2005-07-11 07:28:05','2006-02-15 22:17:01'),(9890,366,1,6366,'4.99','2005-07-11 21:18:16','2006-02-15 22:17:01'),(9891,366,2,6533,'6.99','2005-07-12 04:39:38','2006-02-15 22:17:01'),(9892,366,2,6738,'5.99','2005-07-12 14:17:55','2006-02-15 22:17:01'),(9893,366,1,6842,'0.99','2005-07-12 19:07:55','2006-02-15 22:17:02'),(9894,366,2,6971,'4.99','2005-07-27 00:26:17','2006-02-15 22:17:02'),(9895,366,1,7344,'1.99','2005-07-27 14:29:28','2006-02-15 22:17:02'),(9896,366,1,7562,'2.99','2005-07-27 22:25:15','2006-02-15 22:17:02'),(9897,366,2,7602,'4.99','2005-07-27 23:48:35','2006-02-15 22:17:02'),(9898,366,1,7805,'6.99','2005-07-28 07:56:41','2006-02-15 22:17:02'),(9899,366,2,8169,'4.99','2005-07-28 21:29:46','2006-02-15 22:17:02'),(9900,366,2,8260,'1.99','2005-07-29 01:11:00','2006-02-15 22:17:02'),(9901,366,2,8928,'2.99','2005-07-30 02:18:19','2006-02-15 22:17:02'),(9902,366,1,9316,'6.99','2005-07-30 17:11:58','2006-02-15 22:17:02'),(9903,366,1,10198,'2.99','2005-08-01 00:36:15','2006-02-15 22:17:02'),(9904,366,1,10384,'4.99','2005-08-01 06:39:14','2006-02-15 22:17:02'),(9905,366,2,11337,'2.99','2005-08-02 16:59:09','2006-02-15 22:17:02'),(9906,366,2,11340,'5.99','2005-08-02 17:05:43','2006-02-15 22:17:02'),(9907,366,2,12413,'2.99','2005-08-18 09:50:34','2006-02-15 22:17:02'),(9908,366,1,12608,'4.99','2005-08-18 17:05:15','2006-02-15 22:17:02'),(9909,366,2,13563,'0.99','2005-08-20 04:33:31','2006-02-15 22:17:02'),(9910,366,1,13857,'2.99','2005-08-20 14:50:06','2006-02-15 22:17:02'),(9911,366,1,14147,'4.99','2005-08-21 02:14:03','2006-02-15 22:17:02'),(9912,366,1,14290,'4.99','2005-08-21 07:02:59','2006-02-15 22:17:02'),(9913,366,1,14390,'2.99','2005-08-21 10:15:38','2006-02-15 22:17:02'),(9914,366,1,14717,'2.99','2005-08-21 21:30:39','2006-02-15 22:17:03'),(9915,366,1,14906,'6.99','2005-08-22 04:38:18','2006-02-15 22:17:03'),(9916,366,1,15514,'2.99','2005-08-23 03:03:40','2006-02-15 22:17:03'),(9917,366,1,13421,'4.99','2006-02-14 15:16:03','2006-02-15 22:17:03'),(9918,367,1,939,'0.99','2005-05-30 14:49:34','2006-02-15 22:17:03'),(9919,367,1,1089,'2.99','2005-05-31 11:38:29','2006-02-15 22:17:03'),(9920,367,1,3078,'0.99','2005-06-20 15:09:48','2006-02-15 22:17:03'),(9921,367,1,4251,'8.99','2005-07-07 14:11:55','2006-02-15 22:17:03'),(9922,367,2,5490,'4.99','2005-07-10 00:09:11','2006-02-15 22:17:03'),(9923,367,2,5538,'4.99','2005-07-10 02:39:40','2006-02-15 22:17:03'),(9924,367,2,5839,'2.99','2005-07-10 17:08:30','2006-02-15 22:17:03'),(9925,367,2,6228,'2.99','2005-07-11 13:58:36','2006-02-15 22:17:03'),(9926,367,1,6716,'0.99','2005-07-12 13:34:58','2006-02-15 22:17:03'),(9927,367,2,6835,'5.99','2005-07-12 18:58:03','2006-02-15 22:17:03'),(9928,367,2,8490,'0.99','2005-07-29 08:59:25','2006-02-15 22:17:03'),(9929,367,1,9030,'3.99','2005-07-30 06:05:38','2006-02-15 22:17:03'),(9930,367,1,9430,'4.99','2005-07-30 21:20:13','2006-02-15 22:17:03'),(9931,367,1,9912,'4.99','2005-07-31 14:49:04','2006-02-15 22:17:03'),(9932,367,2,10344,'4.99','2005-08-01 05:18:23','2006-02-15 22:17:03'),(9933,367,1,12152,'4.99','2005-08-18 00:21:35','2006-02-15 22:17:03'),(9934,367,2,12362,'0.99','2005-08-18 07:48:05','2006-02-15 22:17:03'),(9935,367,2,12373,'8.99','2005-08-18 08:07:25','2006-02-15 22:17:04'),(9936,367,2,12911,'6.99','2005-08-19 04:24:10','2006-02-15 22:17:04'),(9937,367,2,13235,'4.99','2005-08-19 16:17:53','2006-02-15 22:17:04'),(9938,367,1,14413,'6.99','2005-08-21 11:06:33','2006-02-15 22:17:04'),(9939,367,1,14481,'10.99','2005-08-21 13:41:14','2006-02-15 22:17:04'),(9940,368,1,64,'5.99','2005-05-25 09:21:29','2006-02-15 22:17:04'),(9941,368,1,125,'5.99','2005-05-25 20:48:50','2006-02-15 22:17:04'),(9942,368,1,836,'2.99','2005-05-29 23:56:42','2006-02-15 22:17:04'),(9943,368,1,949,'2.99','2005-05-30 15:50:39','2006-02-15 22:17:04'),(9944,368,1,1186,'0.99','2005-06-15 00:56:45','2006-02-15 22:17:04'),(9945,368,1,1513,'9.99','2005-06-15 22:53:30','2006-02-15 22:17:04'),(9946,368,1,2531,'4.99','2005-06-19 01:20:49','2006-02-15 22:17:04'),(9947,368,1,2694,'4.99','2005-06-19 13:17:21','2006-02-15 22:17:04'),(9948,368,1,2744,'4.99','2005-06-19 16:20:40','2006-02-15 22:17:04'),(9949,368,2,3275,'4.99','2005-06-21 05:33:04','2006-02-15 22:17:04'),(9950,368,2,3608,'4.99','2005-07-06 05:35:39','2006-02-15 22:17:04'),(9951,368,2,4066,'0.99','2005-07-07 04:34:09','2006-02-15 22:17:04'),(9952,368,1,4584,'0.99','2005-07-08 06:11:02','2006-02-15 22:17:04'),(9953,368,2,4913,'8.99','2005-07-08 21:27:48','2006-02-15 22:17:04'),(9954,368,1,6124,'4.99','2005-07-11 08:02:32','2006-02-15 22:17:04'),(9955,368,1,6154,'5.99','2005-07-11 09:32:19','2006-02-15 22:17:04'),(9956,368,1,6681,'2.99','2005-07-12 12:04:12','2006-02-15 22:17:04'),(9957,368,2,7571,'4.99','2005-07-27 22:43:42','2006-02-15 22:17:05'),(9958,368,1,8045,'0.99','2005-07-28 16:49:38','2006-02-15 22:17:05'),(9959,368,2,8226,'2.99','2005-07-29 00:01:04','2006-02-15 22:17:05'),(9960,368,1,9400,'5.99','2005-07-30 20:15:58','2006-02-15 22:17:05'),(9961,368,1,9833,'6.99','2005-07-31 12:05:01','2006-02-15 22:17:05'),(9962,368,2,10730,'8.99','2005-08-01 19:21:42','2006-02-15 22:17:05'),(9963,368,2,10848,'1.99','2005-08-01 23:50:22','2006-02-15 22:17:05'),(9964,368,1,11844,'0.99','2005-08-17 13:16:04','2006-02-15 22:17:05'),(9965,368,2,12319,'2.99','2005-08-18 06:26:45','2006-02-15 22:17:05'),(9966,368,1,12796,'4.99','2005-08-19 00:22:24','2006-02-15 22:17:05'),(9967,368,2,13189,'8.99','2005-08-19 14:27:16','2006-02-15 22:17:05'),(9968,368,2,13280,'2.99','2005-08-19 18:02:51','2006-02-15 22:17:05'),(9969,368,2,13378,'0.99','2005-08-19 21:33:35','2006-02-15 22:17:05'),(9970,368,2,13781,'7.99','2005-08-20 12:06:45','2006-02-15 22:17:05'),(9971,368,2,13963,'1.99','2005-08-20 18:20:18','2006-02-15 22:17:05'),(9972,368,1,14393,'7.99','2005-08-21 10:22:51','2006-02-15 22:17:05'),(9973,368,1,15353,'2.99','2005-08-22 21:18:08','2006-02-15 22:17:05'),(9974,368,1,15437,'2.99','2005-08-23 00:31:09','2006-02-15 22:17:05'),(9975,369,1,31,'4.99','2005-05-25 04:05:17','2006-02-15 22:17:05'),(9976,369,1,294,'4.99','2005-05-26 20:29:57','2006-02-15 22:17:05'),(9977,369,2,854,'0.99','2005-05-30 01:56:11','2006-02-15 22:17:05'),(9978,369,2,913,'7.99','2005-05-30 11:04:58','2006-02-15 22:17:06'),(9979,369,1,1224,'0.99','2005-06-15 03:44:25','2006-02-15 22:17:06'),(9980,369,1,3490,'6.99','2005-07-05 23:37:13','2006-02-15 22:17:06'),(9981,369,2,3903,'2.99','2005-07-06 19:27:32','2006-02-15 22:17:06'),(9982,369,2,4859,'4.99','2005-07-08 18:54:04','2006-02-15 22:17:06'),(9983,369,1,5043,'1.99','2005-07-09 03:25:18','2006-02-15 22:17:06'),(9984,369,2,5496,'7.99','2005-07-10 00:20:23','2006-02-15 22:17:06'),(9985,369,2,5561,'2.99','2005-07-10 03:15:24','2006-02-15 22:17:06'),(9986,369,1,8236,'2.99','2005-07-29 00:27:04','2006-02-15 22:17:06'),(9987,369,2,8826,'2.99','2005-07-29 22:30:16','2006-02-15 22:17:06'),(9988,369,2,9032,'4.99','2005-07-30 06:06:54','2006-02-15 22:17:06'),(9989,369,1,9089,'0.99','2005-07-30 08:23:39','2006-02-15 22:17:06'),(9990,369,2,9543,'0.99','2005-07-31 01:43:34','2006-02-15 22:17:06'),(9991,369,1,9973,'4.99','2005-07-31 16:49:31','2006-02-15 22:17:06'),(9992,369,1,10299,'0.99','2005-08-01 04:08:04','2006-02-15 22:17:06'),(9993,369,2,10359,'3.99','2005-08-01 05:52:21','2006-02-15 22:17:06'),(9994,369,2,10713,'2.99','2005-08-01 18:50:05','2006-02-15 22:17:06'),(9995,369,1,11084,'4.99','2005-08-02 07:34:19','2006-02-15 22:17:06'),(9996,369,2,11388,'1.99','2005-08-02 18:35:55','2006-02-15 22:17:06'),(9997,369,1,12521,'0.99','2005-08-18 13:43:07','2006-02-15 22:17:06'),(9998,369,2,14684,'5.99','2005-08-21 20:28:26','2006-02-15 22:17:06'),(9999,369,1,13898,'0.99','2006-02-14 15:16:03','2006-02-15 22:17:07'),(10000,370,2,1190,'6.99','2005-06-15 01:05:32','2006-02-15 22:17:07'),(10001,370,2,4400,'7.99','2005-07-07 21:22:26','2006-02-15 22:17:07'),(10002,370,2,6714,'0.99','2005-07-12 13:29:06','2006-02-15 22:17:07'),(10003,370,1,6968,'0.99','2005-07-27 00:16:45','2006-02-15 22:17:07'),(10004,370,2,7152,'7.99','2005-07-27 07:15:01','2006-02-15 22:17:07'),(10005,370,1,7226,'6.99','2005-07-27 09:47:53','2006-02-15 22:17:07'),(10006,370,2,7797,'0.99','2005-07-28 07:41:07','2006-02-15 22:17:07'),(10007,370,2,8258,'0.99','2005-07-29 01:03:42','2006-02-15 22:17:07'),(10008,370,2,10095,'0.99','2005-07-31 20:38:35','2006-02-15 22:17:07'),(10009,370,1,10336,'4.99','2005-08-01 04:59:53','2006-02-15 22:17:07'),(10010,370,1,11540,'1.99','2005-08-17 00:48:03','2006-02-15 22:17:07'),(10011,370,2,11925,'0.99','2005-08-17 16:23:04','2006-02-15 22:17:07'),(10012,370,1,12339,'4.99','2005-08-18 07:05:06','2006-02-15 22:17:07'),(10013,370,1,13039,'0.99','2005-08-19 08:55:19','2006-02-15 22:17:07'),(10014,370,1,14602,'3.99','2005-08-21 17:48:49','2006-02-15 22:17:07'),(10015,370,2,14786,'2.99','2005-08-22 00:24:42','2006-02-15 22:17:07'),(10016,370,2,15368,'3.99','2005-08-22 21:57:15','2006-02-15 22:17:07'),(10017,370,1,15626,'4.99','2005-08-23 07:25:34','2006-02-15 22:17:07'),(10018,370,1,15982,'5.99','2005-08-23 20:13:31','2006-02-15 22:17:08'),(10019,371,1,26,'3.99','2005-05-25 03:36:50','2006-02-15 22:17:08'),(10020,371,2,286,'6.99','2005-05-26 19:44:51','2006-02-15 22:17:08'),(10021,371,2,381,'4.99','2005-05-27 09:43:25','2006-02-15 22:17:08'),(10022,371,1,384,'5.99','2005-05-27 10:18:20','2006-02-15 22:17:08'),(10023,371,1,825,'0.99','2005-05-29 21:49:41','2006-02-15 22:17:08'),(10024,371,1,829,'2.99','2005-05-29 22:16:42','2006-02-15 22:17:08'),(10025,371,2,1212,'2.99','2005-06-15 03:03:33','2006-02-15 22:17:08'),(10026,371,1,1218,'1.99','2005-06-15 03:24:44','2006-02-15 22:17:08'),(10027,371,1,1573,'6.99','2005-06-16 03:31:39','2006-02-15 22:17:08'),(10028,371,2,1675,'5.99','2005-06-16 11:04:47','2006-02-15 22:17:08'),(10029,371,2,2837,'0.99','2005-06-19 22:03:50','2006-02-15 22:17:08'),(10030,371,1,3176,'3.99','2005-06-20 22:31:54','2006-02-15 22:17:08'),(10031,371,2,3396,'0.99','2005-06-21 15:23:08','2006-02-15 22:17:08'),(10032,371,2,4115,'8.99','2005-07-07 06:52:23','2006-02-15 22:17:08'),(10033,371,1,4612,'1.99','2005-07-08 07:40:44','2006-02-15 22:17:08'),(10034,371,1,5171,'4.99','2005-07-09 09:26:55','2006-02-15 22:17:08'),(10035,371,2,5614,'0.99','2005-07-10 05:16:56','2006-02-15 22:17:08'),(10036,371,1,6000,'2.99','2005-07-11 01:23:06','2006-02-15 22:17:08'),(10037,371,1,6460,'1.99','2005-07-12 01:13:44','2006-02-15 22:17:08'),(10038,371,1,6922,'0.99','2005-07-12 22:39:48','2006-02-15 22:17:08'),(10039,371,1,7408,'3.99','2005-07-27 16:31:40','2006-02-15 22:17:09'),(10040,371,1,8138,'4.99','2005-07-28 20:12:17','2006-02-15 22:17:09'),(10041,371,1,9008,'4.99','2005-07-30 05:10:26','2006-02-15 22:17:09'),(10042,371,1,9117,'8.99','2005-07-30 09:20:59','2006-02-15 22:17:09'),(10043,371,1,9635,'0.99','2005-07-31 05:12:27','2006-02-15 22:17:09'),(10044,371,1,11086,'10.99','2005-08-02 07:38:44','2006-02-15 22:17:09'),(10045,371,2,12397,'9.99','2005-08-18 09:12:52','2006-02-15 22:17:09'),(10046,371,2,12584,'7.99','2005-08-18 15:51:36','2006-02-15 22:17:09'),(10047,371,1,13028,'2.99','2005-08-19 08:27:23','2006-02-15 22:17:09'),(10048,371,2,13143,'3.99','2005-08-19 12:44:38','2006-02-15 22:17:09'),(10049,371,1,13191,'4.99','2005-08-19 14:28:48','2006-02-15 22:17:09'),(10050,371,2,13953,'4.99','2005-08-20 18:00:37','2006-02-15 22:17:09'),(10051,371,1,14384,'2.99','2005-08-21 10:02:37','2006-02-15 22:17:09'),(10052,371,1,15786,'0.99','2005-08-23 13:48:34','2006-02-15 22:17:09'),(10053,371,1,15824,'2.99','2005-08-23 15:09:17','2006-02-15 22:17:09'),(10054,372,1,617,'2.99','2005-05-28 15:49:14','2006-02-15 22:17:09'),(10055,372,1,638,'2.99','2005-05-28 18:24:43','2006-02-15 22:17:09'),(10056,372,1,2315,'2.99','2005-06-18 09:03:39','2006-02-15 22:17:09'),(10057,372,1,2959,'4.99','2005-06-20 07:07:54','2006-02-15 22:17:09'),(10058,372,1,3283,'3.99','2005-06-21 06:19:07','2006-02-15 22:17:09'),(10059,372,1,5229,'4.99','2005-07-09 12:30:18','2006-02-15 22:17:09'),(10060,372,1,5314,'2.99','2005-07-09 16:05:28','2006-02-15 22:17:10'),(10061,372,1,5352,'2.99','2005-07-09 17:54:58','2006-02-15 22:17:10'),(10062,372,1,5501,'6.99','2005-07-10 00:33:48','2006-02-15 22:17:10'),(10063,372,2,5914,'7.99','2005-07-10 21:01:12','2006-02-15 22:17:10'),(10064,372,2,6692,'4.99','2005-07-12 12:35:39','2006-02-15 22:17:10'),(10065,372,1,7190,'4.99','2005-07-27 08:36:01','2006-02-15 22:17:10'),(10066,372,2,7234,'5.99','2005-07-27 10:08:45','2006-02-15 22:17:10'),(10067,372,2,7735,'4.99','2005-07-28 05:09:56','2006-02-15 22:17:10'),(10068,372,2,8009,'7.99','2005-07-28 15:25:58','2006-02-15 22:17:10'),(10069,372,1,8059,'2.99','2005-07-28 17:09:59','2006-02-15 22:17:10'),(10070,372,1,8358,'0.99','2005-07-29 05:00:58','2006-02-15 22:17:10'),(10071,372,1,8724,'0.99','2005-07-29 18:05:21','2006-02-15 22:17:10'),(10072,372,1,8755,'2.99','2005-07-29 19:18:31','2006-02-15 22:17:10'),(10073,372,2,8837,'8.99','2005-07-29 22:49:00','2006-02-15 22:17:10'),(10074,372,1,9128,'5.99','2005-07-30 09:51:14','2006-02-15 22:17:10'),(10075,372,2,11134,'10.99','2005-08-02 09:19:22','2006-02-15 22:17:10'),(10076,372,2,11438,'3.99','2005-08-02 20:21:08','2006-02-15 22:17:10'),(10077,372,2,11555,'4.99','2005-08-17 01:08:59','2006-02-15 22:17:10'),(10078,372,1,12224,'0.99','2005-08-18 02:59:09','2006-02-15 22:17:10'),(10079,372,1,12714,'3.99','2005-08-18 21:08:01','2006-02-15 22:17:10'),(10080,372,2,13402,'4.99','2005-08-19 22:16:53','2006-02-15 22:17:11'),(10081,372,2,13871,'8.99','2005-08-20 15:10:13','2006-02-15 22:17:11'),(10082,372,2,14037,'9.99','2005-08-20 21:35:58','2006-02-15 22:17:11'),(10083,372,1,14211,'4.99','2005-08-21 04:29:11','2006-02-15 22:17:11'),(10084,372,1,14331,'2.99','2005-08-21 08:29:38','2006-02-15 22:17:11'),(10085,372,1,14770,'1.99','2005-08-21 23:47:16','2006-02-15 22:17:11'),(10086,372,2,15041,'0.99','2005-08-22 09:43:18','2006-02-15 22:17:11'),(10087,372,1,15563,'2.99','2005-08-23 05:08:58','2006-02-15 22:17:11'),(10088,373,2,257,'4.99','2005-05-26 15:27:05','2006-02-15 22:17:11'),(10089,373,1,1472,'6.99','2005-06-15 20:54:55','2006-02-15 22:17:11'),(10090,373,1,3161,'2.99','2005-06-20 21:21:01','2006-02-15 22:17:11'),(10091,373,2,3609,'2.99','2005-07-06 05:36:22','2006-02-15 22:17:11'),(10092,373,2,3667,'4.99','2005-07-06 08:36:34','2006-02-15 22:17:11'),(10093,373,1,4325,'7.99','2005-07-07 17:59:24','2006-02-15 22:17:11'),(10094,373,1,5120,'5.99','2005-07-09 07:14:23','2006-02-15 22:17:11'),(10095,373,1,6202,'3.99','2005-07-11 12:24:25','2006-02-15 22:17:11'),(10096,373,2,6311,'0.99','2005-07-11 18:18:52','2006-02-15 22:17:11'),(10097,373,1,6944,'4.99','2005-07-26 23:34:02','2006-02-15 22:17:11'),(10098,373,1,7094,'0.99','2005-07-27 04:47:33','2006-02-15 22:17:11'),(10099,373,2,7206,'3.99','2005-07-27 09:07:05','2006-02-15 22:17:11'),(10100,373,1,7615,'0.99','2005-07-28 00:15:24','2006-02-15 22:17:11'),(10101,373,1,8611,'3.99','2005-07-29 13:26:21','2006-02-15 22:17:12'),(10102,373,2,9327,'8.99','2005-07-30 17:31:03','2006-02-15 22:17:12'),(10103,373,1,9397,'4.99','2005-07-30 20:07:29','2006-02-15 22:17:12'),(10104,373,2,9480,'0.99','2005-07-30 23:26:03','2006-02-15 22:17:12'),(10105,373,1,9966,'4.99','2005-07-31 16:26:46','2006-02-15 22:17:12'),(10106,373,1,10010,'6.99','2005-07-31 18:01:36','2006-02-15 22:17:12'),(10107,373,1,10221,'4.99','2005-08-01 01:16:50','2006-02-15 22:17:12'),(10108,373,1,10758,'5.99','2005-08-01 20:22:51','2006-02-15 22:17:12'),(10109,373,2,11066,'7.99','2005-08-02 06:58:32','2006-02-15 22:17:12'),(10110,373,2,11512,'7.99','2005-08-16 23:51:06','2006-02-15 22:17:12'),(10111,373,2,11663,'3.99','2005-08-17 05:30:19','2006-02-15 22:17:12'),(10112,373,2,11976,'3.99','2005-08-17 17:59:19','2006-02-15 22:17:12'),(10113,373,1,12142,'5.99','2005-08-18 00:04:12','2006-02-15 22:17:12'),(10114,373,2,12536,'5.99','2005-08-18 14:06:06','2006-02-15 22:17:12'),(10115,373,1,12748,'7.99','2005-08-18 22:29:05','2006-02-15 22:17:12'),(10116,373,2,12780,'0.99','2005-08-18 23:48:16','2006-02-15 22:17:12'),(10117,373,2,13299,'2.99','2005-08-19 18:46:33','2006-02-15 22:17:12'),(10118,373,1,13329,'3.99','2005-08-19 19:56:55','2006-02-15 22:17:12'),(10119,373,2,13467,'2.99','2005-08-20 00:56:44','2006-02-15 22:17:12'),(10120,373,2,15014,'6.99','2005-08-22 08:43:11','2006-02-15 22:17:12'),(10121,373,1,15068,'3.99','2005-08-22 10:50:13','2006-02-15 22:17:13'),(10122,373,1,11739,'0.99','2006-02-14 15:16:03','2006-02-15 22:17:13'),(10123,374,1,521,'0.99','2005-05-28 03:32:22','2006-02-15 22:17:13'),(10124,374,2,910,'2.99','2005-05-30 10:46:16','2006-02-15 22:17:13'),(10125,374,2,919,'0.99','2005-05-30 11:35:06','2006-02-15 22:17:13'),(10126,374,1,1548,'1.99','2005-06-16 01:43:33','2006-02-15 22:17:13'),(10127,374,2,2046,'1.99','2005-06-17 14:39:50','2006-02-15 22:17:13'),(10128,374,2,2487,'4.99','2005-06-18 21:32:54','2006-02-15 22:17:13'),(10129,374,2,2641,'2.99','2005-06-19 09:38:33','2006-02-15 22:17:13'),(10130,374,1,3797,'1.99','2005-07-06 14:54:52','2006-02-15 22:17:13'),(10131,374,1,5463,'4.99','2005-07-09 22:57:02','2006-02-15 22:17:13'),(10132,374,1,5570,'6.99','2005-07-10 03:46:47','2006-02-15 22:17:13'),(10133,374,2,5591,'3.99','2005-07-10 04:25:03','2006-02-15 22:17:13'),(10134,374,2,5945,'2.99','2005-07-10 22:52:42','2006-02-15 22:17:13'),(10135,374,2,6315,'0.99','2005-07-11 18:42:49','2006-02-15 22:17:13'),(10136,374,2,7837,'0.99','2005-07-28 08:58:32','2006-02-15 22:17:13'),(10137,374,2,8586,'7.99','2005-07-29 12:16:34','2006-02-15 22:17:13'),(10138,374,2,9113,'0.99','2005-07-30 09:09:03','2006-02-15 22:17:13'),(10139,374,1,9866,'6.99','2005-07-31 13:13:50','2006-02-15 22:17:13'),(10140,374,1,10695,'2.99','2005-08-01 18:16:20','2006-02-15 22:17:13'),(10141,374,1,11619,'0.99','2005-08-17 04:03:26','2006-02-15 22:17:13'),(10142,374,2,12696,'2.99','2005-08-18 20:13:08','2006-02-15 22:17:14'),(10143,374,1,13337,'2.99','2005-08-19 20:06:57','2006-02-15 22:17:14'),(10144,374,2,13734,'4.99','2005-08-20 10:29:57','2006-02-15 22:17:14'),(10145,374,2,14524,'8.99','2005-08-21 15:05:27','2006-02-15 22:17:14'),(10146,374,2,15053,'5.99','2005-08-22 10:13:09','2006-02-15 22:17:14'),(10147,374,1,15200,'2.99','2005-08-22 16:22:53','2006-02-15 22:17:14'),(10148,374,2,15202,'4.99','2005-08-22 16:26:53','2006-02-15 22:17:14'),(10149,374,2,15366,'6.99','2005-08-22 21:45:57','2006-02-15 22:17:14'),(10150,374,2,15966,'2.99','2006-02-14 15:16:03','2006-02-15 22:17:14'),(10151,375,2,307,'8.99','2005-05-26 21:48:13','2006-02-15 22:17:14'),(10152,375,1,412,'4.99','2005-05-27 14:17:23','2006-02-15 22:17:14'),(10153,375,2,749,'4.99','2005-05-29 09:33:33','2006-02-15 22:17:14'),(10154,375,1,873,'2.99','2005-05-30 05:15:20','2006-02-15 22:17:14'),(10155,375,2,1404,'2.99','2005-06-15 16:38:53','2006-02-15 22:17:14'),(10156,375,1,1499,'5.99','2005-06-15 21:58:07','2006-02-15 22:17:14'),(10157,375,1,2236,'4.99','2005-06-18 04:12:33','2006-02-15 22:17:14'),(10158,375,1,3981,'6.99','2005-07-06 23:12:12','2006-02-15 22:17:14'),(10159,375,2,4335,'4.99','2005-07-07 18:33:57','2006-02-15 22:17:14'),(10160,375,2,5474,'2.99','2005-07-09 23:23:57','2006-02-15 22:17:14'),(10161,375,1,7856,'4.99','2005-07-28 09:48:24','2006-02-15 22:17:14'),(10162,375,2,8900,'2.99','2005-07-30 01:07:03','2006-02-15 22:17:14'),(10163,375,1,10274,'0.99','2005-08-01 03:16:51','2006-02-15 22:17:15'),(10164,375,2,10589,'1.99','2005-08-01 14:11:09','2006-02-15 22:17:15'),(10165,375,1,10640,'0.99','2005-08-01 15:44:51','2006-02-15 22:17:15'),(10166,375,1,10672,'4.99','2005-08-01 17:10:54','2006-02-15 22:17:15'),(10167,375,1,10859,'5.99','2005-08-02 00:11:39','2006-02-15 22:17:15'),(10168,375,1,10961,'6.99','2005-08-02 03:47:55','2006-02-15 22:17:15'),(10169,375,2,11008,'5.99','2005-08-02 05:06:17','2006-02-15 22:17:15'),(10170,375,2,12122,'9.99','2005-08-17 23:20:45','2006-02-15 22:17:15'),(10171,375,2,12663,'0.99','2005-08-18 19:10:52','2006-02-15 22:17:15'),(10172,375,1,13836,'4.99','2005-08-20 14:18:16','2006-02-15 22:17:15'),(10173,375,1,15004,'2.99','2005-08-22 08:15:21','2006-02-15 22:17:15'),(10174,375,1,15505,'4.99','2005-08-23 02:46:13','2006-02-15 22:17:15'),(10175,376,1,554,'0.99','2005-05-28 08:23:16','2006-02-15 22:17:15'),(10176,376,2,1208,'0.99','2005-06-15 02:30:03','2006-02-15 22:17:15'),(10177,376,1,2779,'0.99','2005-06-19 18:19:07','2006-02-15 22:17:15'),(10178,376,2,3719,'2.99','2005-07-06 11:05:55','2006-02-15 22:17:15'),(10179,376,1,4163,'0.99','2005-07-07 09:19:28','2006-02-15 22:17:15'),(10180,376,2,4166,'8.99','2005-07-07 09:33:30','2006-02-15 22:17:15'),(10181,376,1,4320,'3.99','2005-07-07 17:51:59','2006-02-15 22:17:15'),(10182,376,1,4554,'5.99','2005-07-08 04:48:03','2006-02-15 22:17:15'),(10183,376,1,4869,'4.99','2005-07-08 19:14:05','2006-02-15 22:17:16'),(10184,376,1,5675,'4.99','2005-07-10 08:31:06','2006-02-15 22:17:16'),(10185,376,1,6524,'6.99','2005-07-12 04:14:35','2006-02-15 22:17:16'),(10186,376,1,6545,'8.99','2005-07-12 04:56:30','2006-02-15 22:17:16'),(10187,376,2,6807,'2.99','2005-07-12 17:33:53','2006-02-15 22:17:16'),(10188,376,1,8269,'2.99','2005-07-29 01:26:54','2006-02-15 22:17:16'),(10189,376,1,8420,'5.99','2005-07-29 07:00:45','2006-02-15 22:17:16'),(10190,376,1,9773,'4.99','2005-07-31 09:56:56','2006-02-15 22:17:16'),(10191,376,1,9828,'2.99','2005-07-31 11:56:57','2006-02-15 22:17:16'),(10192,376,1,9872,'0.99','2005-07-31 13:27:55','2006-02-15 22:17:16'),(10193,376,2,10413,'3.99','2005-08-01 07:59:39','2006-02-15 22:17:16'),(10194,376,1,10810,'3.99','2005-08-01 22:40:39','2006-02-15 22:17:16'),(10195,376,1,11144,'4.99','2005-08-02 09:39:17','2006-02-15 22:17:16'),(10196,376,2,11792,'4.99','2005-08-17 11:03:53','2006-02-15 22:17:16'),(10197,376,1,11851,'4.99','2005-08-17 13:30:27','2006-02-15 22:17:16'),(10198,376,1,13009,'0.99','2005-08-19 07:50:35','2006-02-15 22:17:16'),(10199,376,1,13141,'0.99','2005-08-19 12:41:41','2006-02-15 22:17:16'),(10200,376,2,13761,'4.99','2005-08-20 11:28:50','2006-02-15 22:17:16'),(10201,376,1,15107,'4.99','2005-08-22 12:05:02','2006-02-15 22:17:16'),(10202,376,1,15382,'2.99','2005-08-22 22:30:50','2006-02-15 22:17:16'),(10203,377,2,2556,'3.99','2005-06-19 03:07:32','2006-02-15 22:17:16'),(10204,377,1,3080,'1.99','2005-06-20 15:22:32','2006-02-15 22:17:17'),(10205,377,2,3086,'0.99','2005-06-20 15:42:40','2006-02-15 22:17:17'),(10206,377,2,3136,'2.99','2005-06-20 19:39:08','2006-02-15 22:17:17'),(10207,377,2,3443,'4.99','2005-06-21 20:19:00','2006-02-15 22:17:17'),(10208,377,1,3858,'2.99','2005-07-06 17:17:57','2006-02-15 22:17:17'),(10209,377,2,4053,'0.99','2005-07-07 03:39:22','2006-02-15 22:17:17'),(10210,377,1,4077,'0.99','2005-07-07 04:53:40','2006-02-15 22:17:17'),(10211,377,1,4225,'0.99','2005-07-07 12:24:37','2006-02-15 22:17:17'),(10212,377,2,6893,'7.99','2005-07-12 21:20:11','2006-02-15 22:17:17'),(10213,377,1,7697,'1.99','2005-07-28 03:43:45','2006-02-15 22:17:17'),(10214,377,2,8018,'10.99','2005-07-28 15:36:48','2006-02-15 22:17:17'),(10215,377,2,8916,'4.99','2005-07-30 01:42:21','2006-02-15 22:17:17'),(10216,377,2,9461,'3.99','2005-07-30 22:29:13','2006-02-15 22:17:17'),(10217,377,1,9564,'0.99','2005-07-31 02:31:37','2006-02-15 22:17:17'),(10218,377,1,10013,'4.99','2005-07-31 18:08:21','2006-02-15 22:17:17'),(10219,377,1,10183,'8.99','2005-08-01 00:08:01','2006-02-15 22:17:17'),(10220,377,1,10738,'3.99','2005-08-01 19:39:08','2006-02-15 22:17:17'),(10221,377,1,10943,'2.99','2005-08-02 03:17:29','2006-02-15 22:17:17'),(10222,377,1,12390,'1.99','2005-08-18 08:51:42','2006-02-15 22:17:17'),(10223,377,1,12549,'4.99','2005-08-18 14:38:07','2006-02-15 22:17:17'),(10224,377,1,13249,'2.99','2005-08-19 16:47:41','2006-02-15 22:17:17'),(10225,377,1,13275,'0.99','2005-08-19 17:53:38','2006-02-15 22:17:18'),(10226,377,2,15088,'0.99','2005-08-22 11:28:26','2006-02-15 22:17:18'),(10227,377,1,15995,'0.99','2005-08-23 20:29:56','2006-02-15 22:17:18'),(10228,377,1,15999,'7.99','2005-08-23 20:44:10','2006-02-15 22:17:18'),(10229,378,1,347,'0.99','2005-05-27 04:40:33','2006-02-15 22:17:18'),(10230,378,2,1623,'4.99','2005-06-16 07:48:50','2006-02-15 22:17:18'),(10231,378,1,1662,'5.99','2005-06-16 10:13:35','2006-02-15 22:17:18'),(10232,378,2,2134,'7.99','2005-06-17 21:13:44','2006-02-15 22:17:18'),(10233,378,2,2713,'4.99','2005-06-19 14:23:09','2006-02-15 22:17:18'),(10234,378,1,3759,'4.99','2005-07-06 12:46:38','2006-02-15 22:17:18'),(10235,378,2,4755,'0.99','2005-07-08 14:23:41','2006-02-15 22:17:18'),(10236,378,1,5578,'1.99','2005-07-10 04:00:31','2006-02-15 22:17:18'),(10237,378,2,6233,'1.99','2005-07-11 14:10:47','2006-02-15 22:17:18'),(10238,378,1,7888,'0.99','2005-07-28 10:40:24','2006-02-15 22:17:18'),(10239,378,2,8740,'2.99','2005-07-29 18:41:31','2006-02-15 22:17:18'),(10240,378,2,9668,'3.99','2005-07-31 06:31:03','2006-02-15 22:17:18'),(10241,378,1,9868,'2.99','2005-07-31 13:20:08','2006-02-15 22:17:18'),(10242,378,1,10917,'4.99','2005-08-02 02:06:18','2006-02-15 22:17:18'),(10243,378,1,11111,'4.99','2005-08-02 08:21:27','2006-02-15 22:17:18'),(10244,378,1,12596,'2.99','2005-08-18 16:29:35','2006-02-15 22:17:18'),(10245,378,1,12828,'4.99','2005-08-19 01:37:47','2006-02-15 22:17:19'),(10246,378,2,14502,'4.99','2005-08-21 14:22:28','2006-02-15 22:17:19'),(10247,378,1,14971,'2.99','2005-08-22 06:52:49','2006-02-15 22:17:19'),(10248,379,2,209,'4.99','2005-05-26 08:14:01','2006-02-15 22:17:19'),(10249,379,1,863,'4.99','2005-05-30 03:14:59','2006-02-15 22:17:19'),(10250,379,1,1383,'8.99','2005-06-15 15:20:06','2006-02-15 22:17:19'),(10251,379,1,2313,'5.99','2005-06-18 08:56:45','2006-02-15 22:17:19'),(10252,379,1,2926,'2.99','2005-06-20 04:37:45','2006-02-15 22:17:19'),(10253,379,1,3788,'4.99','2005-07-06 14:02:02','2006-02-15 22:17:19'),(10254,379,2,4740,'2.99','2005-07-08 13:30:35','2006-02-15 22:17:19'),(10255,379,1,5402,'4.99','2005-07-09 20:01:58','2006-02-15 22:17:19'),(10256,379,1,6235,'7.99','2005-07-11 14:17:51','2006-02-15 22:17:19'),(10257,379,2,7041,'4.99','2005-07-27 03:18:32','2006-02-15 22:17:19'),(10258,379,1,10041,'4.99','2005-07-31 19:01:02','2006-02-15 22:17:19'),(10259,379,2,11457,'3.99','2005-08-02 21:14:16','2006-02-15 22:17:19'),(10260,379,1,12503,'4.99','2005-08-18 13:16:46','2006-02-15 22:17:19'),(10261,379,1,13334,'0.99','2005-08-19 20:02:33','2006-02-15 22:17:19'),(10262,379,2,13397,'7.99','2005-08-19 22:06:35','2006-02-15 22:17:19'),(10263,379,1,13485,'0.99','2005-08-20 01:20:14','2006-02-15 22:17:19'),(10264,379,1,14011,'5.99','2005-08-20 20:32:56','2006-02-15 22:17:19'),(10265,379,2,14152,'2.99','2005-08-21 02:23:50','2006-02-15 22:17:19'),(10266,379,1,14470,'0.99','2005-08-21 13:09:41','2006-02-15 22:17:20'),(10267,379,1,14886,'4.99','2005-08-22 03:59:01','2006-02-15 22:17:20'),(10268,379,2,15399,'4.99','2005-08-22 23:11:59','2006-02-15 22:17:20'),(10269,379,1,15446,'4.99','2005-08-23 00:49:24','2006-02-15 22:17:20'),(10270,379,2,15930,'3.99','2005-08-23 18:26:51','2006-02-15 22:17:20'),(10271,380,1,847,'3.99','2005-05-30 01:18:15','2006-02-15 22:17:20'),(10272,380,1,1868,'3.99','2005-06-17 02:03:22','2006-02-15 22:17:20'),(10273,380,1,1984,'2.99','2005-06-17 10:25:28','2006-02-15 22:17:20'),(10274,380,1,2018,'3.99','2005-06-17 12:35:58','2006-02-15 22:17:20'),(10275,380,1,2440,'2.99','2005-06-18 18:41:09','2006-02-15 22:17:20'),(10276,380,1,2464,'4.99','2005-06-18 20:06:05','2006-02-15 22:17:20'),(10277,380,2,2998,'1.99','2005-06-20 09:30:22','2006-02-15 22:17:20'),(10278,380,2,3099,'1.99','2005-06-20 16:44:33','2006-02-15 22:17:20'),(10279,380,1,3260,'4.99','2005-06-21 03:59:13','2006-02-15 22:17:20'),(10280,380,1,3637,'2.99','2005-07-06 07:06:31','2006-02-15 22:17:20'),(10281,380,1,3688,'4.99','2005-07-06 09:41:53','2006-02-15 22:17:20'),(10282,380,1,4675,'2.99','2005-07-08 10:24:22','2006-02-15 22:17:20'),(10283,380,2,4706,'4.99','2005-07-08 11:51:41','2006-02-15 22:17:20'),(10284,380,2,5339,'0.99','2005-07-09 17:09:17','2006-02-15 22:17:20'),(10285,380,2,7021,'8.99','2005-07-27 02:26:38','2006-02-15 22:17:20'),(10286,380,2,7167,'2.99','2005-07-27 07:37:26','2006-02-15 22:17:20'),(10287,380,2,7435,'0.99','2005-07-27 17:38:44','2006-02-15 22:17:21'),(10288,380,2,7443,'2.99','2005-07-27 17:47:43','2006-02-15 22:17:21'),(10289,380,1,7773,'2.99','2005-07-28 07:02:17','2006-02-15 22:17:21'),(10290,380,1,7974,'3.99','2005-07-28 14:11:57','2006-02-15 22:17:21'),(10291,380,1,9056,'0.99','2005-07-30 07:13:20','2006-02-15 22:17:21'),(10292,380,1,9261,'6.99','2005-07-30 14:39:35','2006-02-15 22:17:21'),(10293,380,1,9710,'10.99','2005-07-31 08:05:31','2006-02-15 22:17:21'),(10294,380,2,10450,'1.99','2005-08-01 09:10:03','2006-02-15 22:17:21'),(10295,380,1,10983,'3.99','2005-08-02 04:24:23','2006-02-15 22:17:21'),(10296,380,1,11936,'0.99','2005-08-17 16:45:34','2006-02-15 22:17:21'),(10297,380,2,11945,'0.99','2005-08-17 17:05:33','2006-02-15 22:17:21'),(10298,380,1,12636,'3.99','2005-08-18 18:00:29','2006-02-15 22:17:21'),(10299,380,1,12996,'6.99','2005-08-19 07:31:32','2006-02-15 22:17:21'),(10300,380,1,14529,'6.99','2005-08-21 15:08:31','2006-02-15 22:17:21'),(10301,380,1,14935,'1.99','2005-08-22 05:47:31','2006-02-15 22:17:21'),(10302,380,2,15175,'5.99','2005-08-22 15:29:15','2006-02-15 22:17:21'),(10303,380,1,15361,'2.99','2005-08-22 21:39:45','2006-02-15 22:17:21'),(10304,380,2,15636,'2.99','2005-08-23 07:50:46','2006-02-15 22:17:21'),(10305,380,1,15697,'2.99','2005-08-23 10:04:36','2006-02-15 22:17:21'),(10306,380,2,15748,'2.99','2005-08-23 12:33:00','2006-02-15 22:17:21'),(10307,381,2,169,'0.99','2005-05-26 03:09:30','2006-02-15 22:17:22'),(10308,381,2,406,'2.99','2005-05-27 13:46:46','2006-02-15 22:17:22'),(10309,381,1,835,'2.99','2005-05-29 23:37:00','2006-02-15 22:17:22'),(10310,381,1,1402,'3.99','2005-06-15 16:31:08','2006-02-15 22:17:22'),(10311,381,1,1878,'1.99','2005-06-17 02:55:32','2006-02-15 22:17:22'),(10312,381,2,2410,'2.99','2005-06-18 16:55:08','2006-02-15 22:17:22'),(10313,381,1,2418,'4.99','2005-06-18 17:14:42','2006-02-15 22:17:22'),(10314,381,2,3425,'2.99','2005-06-21 18:07:07','2006-02-15 22:17:22'),(10315,381,2,3812,'0.99','2005-07-06 15:22:19','2006-02-15 22:17:22'),(10316,381,2,3970,'2.99','2005-07-06 22:48:17','2006-02-15 22:17:22'),(10317,381,1,4735,'0.99','2005-07-08 13:12:27','2006-02-15 22:17:22'),(10318,381,2,5689,'0.99','2005-07-10 09:24:17','2006-02-15 22:17:22'),(10319,381,2,6116,'2.99','2005-07-11 07:37:38','2006-02-15 22:17:22'),(10320,381,2,6451,'4.99','2005-07-12 00:52:19','2006-02-15 22:17:22'),(10321,381,2,6778,'2.99','2005-07-12 16:06:00','2006-02-15 22:17:22'),(10322,381,1,7375,'2.99','2005-07-27 15:22:33','2006-02-15 22:17:22'),(10323,381,1,7645,'2.99','2005-07-28 01:27:42','2006-02-15 22:17:22'),(10324,381,2,8688,'0.99','2005-07-29 16:31:32','2006-02-15 22:17:22'),(10325,381,2,9144,'0.99','2005-07-30 10:22:15','2006-02-15 22:17:22'),(10326,381,2,9173,'4.99','2005-07-30 11:40:10','2006-02-15 22:17:22'),(10327,381,1,9822,'2.99','2005-07-31 11:48:25','2006-02-15 22:17:22'),(10328,381,2,10033,'4.99','2005-07-31 18:44:29','2006-02-15 22:17:23'),(10329,381,1,10608,'0.99','2005-08-01 14:48:41','2006-02-15 22:17:23'),(10330,381,2,10705,'0.99','2005-08-01 18:38:54','2006-02-15 22:17:23'),(10331,381,1,11519,'2.99','2005-08-17 00:01:27','2006-02-15 22:17:23'),(10332,381,2,12135,'2.99','2005-08-17 23:50:24','2006-02-15 22:17:23'),(10333,381,2,12237,'4.99','2005-08-18 03:24:38','2006-02-15 22:17:23'),(10334,381,2,12632,'2.99','2005-08-18 17:54:21','2006-02-15 22:17:23'),(10335,381,2,13202,'8.99','2005-08-19 14:58:30','2006-02-15 22:17:23'),(10336,381,2,13430,'0.99','2005-08-19 23:25:43','2006-02-15 22:17:23'),(10337,381,1,13614,'0.99','2005-08-20 06:28:37','2006-02-15 22:17:23'),(10338,381,2,13995,'2.99','2005-08-20 19:34:43','2006-02-15 22:17:23'),(10339,381,1,14198,'4.99','2005-08-21 03:48:31','2006-02-15 22:17:23'),(10340,381,2,15299,'4.99','2005-08-22 19:42:57','2006-02-15 22:17:23'),(10341,381,1,15747,'4.99','2005-08-23 12:29:24','2006-02-15 22:17:23'),(10342,382,2,356,'2.99','2005-05-27 06:32:30','2006-02-15 22:17:23'),(10343,382,1,522,'2.99','2005-05-28 03:33:20','2006-02-15 22:17:23'),(10344,382,1,2389,'0.99','2005-06-18 15:27:47','2006-02-15 22:17:23'),(10345,382,1,2468,'4.99','2005-06-18 20:23:52','2006-02-15 22:17:23'),(10346,382,1,2489,'1.99','2005-06-18 22:00:44','2006-02-15 22:17:23'),(10347,382,1,2514,'2.99','2005-06-18 23:56:44','2006-02-15 22:17:23'),(10348,382,2,3125,'4.99','2005-06-20 18:31:58','2006-02-15 22:17:24'),(10349,382,2,3480,'3.99','2005-07-05 23:11:43','2006-02-15 22:17:24'),(10350,382,2,4351,'4.99','2005-07-07 19:04:24','2006-02-15 22:17:24'),(10351,382,1,5004,'4.99','2005-07-09 01:20:50','2006-02-15 22:17:24'),(10352,382,1,5816,'0.99','2005-07-10 15:48:47','2006-02-15 22:17:24'),(10353,382,2,7625,'0.99','2005-07-28 00:47:56','2006-02-15 22:17:24'),(10354,382,2,8777,'0.99','2005-07-29 20:10:21','2006-02-15 22:17:24'),(10355,382,1,8871,'9.99','2005-07-30 00:12:41','2006-02-15 22:17:24'),(10356,382,1,8993,'4.99','2005-07-30 04:51:25','2006-02-15 22:17:24'),(10357,382,1,9067,'6.99','2005-07-30 07:31:01','2006-02-15 22:17:24'),(10358,382,2,9555,'0.99','2005-07-31 02:11:16','2006-02-15 22:17:24'),(10359,382,2,10327,'3.99','2005-08-01 04:55:35','2006-02-15 22:17:24'),(10360,382,2,12229,'0.99','2005-08-18 03:08:23','2006-02-15 22:17:24'),(10361,382,2,12529,'0.99','2005-08-18 13:53:36','2006-02-15 22:17:24'),(10362,382,1,14009,'4.99','2005-08-20 20:26:53','2006-02-15 22:17:24'),(10363,382,2,14300,'4.99','2005-08-21 07:19:37','2006-02-15 22:17:24'),(10364,382,2,14354,'5.99','2005-08-21 09:08:14','2006-02-15 22:17:24'),(10365,382,2,15939,'7.99','2005-08-23 18:44:21','2006-02-15 22:17:24'),(10366,383,2,63,'0.99','2005-05-25 09:19:16','2006-02-15 22:17:24'),(10367,383,1,766,'8.99','2005-05-29 11:47:02','2006-02-15 22:17:24'),(10368,383,1,1831,'7.99','2005-06-16 22:22:17','2006-02-15 22:17:25'),(10369,383,2,2228,'2.99','2005-06-18 03:44:50','2006-02-15 22:17:25'),(10370,383,1,2252,'2.99','2005-06-18 05:05:18','2006-02-15 22:17:25'),(10371,383,2,2318,'2.99','2005-06-18 09:13:54','2006-02-15 22:17:25'),(10372,383,1,2609,'7.99','2005-06-19 07:13:12','2006-02-15 22:17:25'),(10373,383,1,3091,'2.99','2005-06-20 16:02:59','2006-02-15 22:17:25'),(10374,383,2,4747,'5.99','2005-07-08 13:53:01','2006-02-15 22:17:25'),(10375,383,2,6091,'4.99','2005-07-11 05:49:18','2006-02-15 22:17:25'),(10376,383,2,6244,'0.99','2005-07-11 14:53:38','2006-02-15 22:17:25'),(10377,383,1,6775,'4.99','2005-07-12 16:01:44','2006-02-15 22:17:25'),(10378,383,1,7367,'3.99','2005-07-27 15:05:45','2006-02-15 22:17:25'),(10379,383,2,8367,'2.99','2005-07-29 05:11:19','2006-02-15 22:17:25'),(10380,383,1,8635,'0.99','2005-07-29 14:22:48','2006-02-15 22:17:25'),(10381,383,1,9653,'0.99','2005-07-31 05:55:38','2006-02-15 22:17:25'),(10382,383,1,9678,'0.99','2005-07-31 06:40:47','2006-02-15 22:17:25'),(10383,383,2,10515,'4.99','2005-08-01 11:41:33','2006-02-15 22:17:25'),(10384,383,1,10971,'4.99','2005-08-02 04:08:17','2006-02-15 22:17:25'),(10385,383,2,10993,'0.99','2005-08-02 04:45:01','2006-02-15 22:17:25'),(10386,383,2,11122,'0.99','2005-08-02 08:49:09','2006-02-15 22:17:25'),(10387,383,1,11592,'2.99','2005-08-17 02:36:04','2006-02-15 22:17:25'),(10388,383,1,12735,'4.99','2005-08-18 22:04:54','2006-02-15 22:17:25'),(10389,383,2,14039,'4.99','2005-08-20 21:39:43','2006-02-15 22:17:26'),(10390,383,2,14678,'4.99','2005-08-21 20:12:43','2006-02-15 22:17:26'),(10391,383,1,15416,'1.99','2005-08-22 23:51:23','2006-02-15 22:17:26'),(10392,383,1,15881,'6.99','2005-08-23 16:44:25','2006-02-15 22:17:26'),(10393,384,2,103,'4.99','2005-05-25 17:30:42','2006-02-15 22:17:26'),(10394,384,2,279,'2.99','2005-05-26 18:02:50','2006-02-15 22:17:26'),(10395,384,1,898,'0.99','2005-05-30 09:26:19','2006-02-15 22:17:26'),(10396,384,2,1013,'2.99','2005-05-31 02:37:00','2006-02-15 22:17:26'),(10397,384,1,1961,'0.99','2005-06-17 09:02:58','2006-02-15 22:17:26'),(10398,384,2,2020,'0.99','2005-06-17 12:39:50','2006-02-15 22:17:26'),(10399,384,1,2378,'7.99','2005-06-18 14:57:49','2006-02-15 22:17:26'),(10400,384,2,2510,'5.99','2005-06-18 23:44:21','2006-02-15 22:17:26'),(10401,384,2,2935,'3.99','2005-06-20 05:07:24','2006-02-15 22:17:26'),(10402,384,1,3088,'9.99','2005-06-20 15:56:05','2006-02-15 22:17:26'),(10403,384,2,3101,'4.99','2005-06-20 16:48:58','2006-02-15 22:17:26'),(10404,384,2,4424,'0.99','2005-07-07 22:14:43','2006-02-15 22:17:26'),(10405,384,2,5250,'0.99','2005-07-09 13:35:32','2006-02-15 22:17:26'),(10406,384,1,5608,'4.99','2005-07-10 05:08:26','2006-02-15 22:17:26'),(10407,384,2,5797,'4.99','2005-07-10 14:43:52','2006-02-15 22:17:26'),(10408,384,2,5966,'2.99','2005-07-10 23:59:27','2006-02-15 22:17:26'),(10409,384,2,6387,'0.99','2005-07-11 22:15:56','2006-02-15 22:17:27'),(10410,384,2,7799,'0.99','2005-07-28 07:42:09','2006-02-15 22:17:27'),(10411,384,1,8445,'1.99','2005-07-29 07:37:48','2006-02-15 22:17:27'),(10412,384,2,11773,'5.99','2005-08-17 10:19:51','2006-02-15 22:17:27'),(10413,384,2,13521,'2.99','2005-08-20 02:42:28','2006-02-15 22:17:27'),(10414,384,2,14416,'2.99','2005-08-21 11:11:46','2006-02-15 22:17:27'),(10415,384,1,14841,'0.99','2005-08-22 02:03:30','2006-02-15 22:17:27'),(10416,384,1,14963,'5.99','2005-08-22 06:38:10','2006-02-15 22:17:27'),(10417,384,2,15321,'4.99','2005-08-22 20:20:04','2006-02-15 22:17:27'),(10418,385,1,917,'2.99','2005-05-30 11:27:06','2006-02-15 22:17:27'),(10419,385,2,1038,'4.99','2005-05-31 05:23:47','2006-02-15 22:17:27'),(10420,385,1,1746,'2.99','2005-06-16 16:41:19','2006-02-15 22:17:27'),(10421,385,1,1937,'0.99','2005-06-17 07:16:46','2006-02-15 22:17:27'),(10422,385,1,3105,'0.99','2005-06-20 17:11:46','2006-02-15 22:17:27'),(10423,385,2,3878,'8.99','2005-07-06 18:27:09','2006-02-15 22:17:27'),(10424,385,2,3953,'0.99','2005-07-06 21:54:55','2006-02-15 22:17:27'),(10425,385,1,4714,'6.99','2005-07-08 12:12:48','2006-02-15 22:17:27'),(10426,385,1,5783,'2.99','2005-07-10 13:55:33','2006-02-15 22:17:27'),(10427,385,1,6445,'4.99','2005-07-12 00:37:02','2006-02-15 22:17:27'),(10428,385,2,6933,'4.99','2005-07-26 23:09:23','2006-02-15 22:17:27'),(10429,385,2,7776,'0.99','2005-07-28 07:04:36','2006-02-15 22:17:28'),(10430,385,1,8346,'2.99','2005-07-29 04:48:22','2006-02-15 22:17:28'),(10431,385,1,8518,'2.99','2005-07-29 10:05:27','2006-02-15 22:17:28'),(10432,385,1,9570,'2.99','2005-07-31 02:40:37','2006-02-15 22:17:28'),(10433,385,1,9704,'4.99','2005-07-31 07:39:32','2006-02-15 22:17:28'),(10434,385,1,10557,'0.99','2005-08-01 12:59:24','2006-02-15 22:17:28'),(10435,385,1,10636,'3.99','2005-08-01 15:40:35','2006-02-15 22:17:28'),(10436,385,1,10655,'4.99','2005-08-01 16:33:27','2006-02-15 22:17:28'),(10437,385,1,11021,'2.99','2005-08-02 05:30:11','2006-02-15 22:17:28'),(10438,385,1,11559,'2.99','2005-08-17 01:20:26','2006-02-15 22:17:28'),(10439,385,2,12310,'2.99','2005-08-18 06:02:34','2006-02-15 22:17:28'),(10440,385,2,12686,'8.99','2005-08-18 19:55:09','2006-02-15 22:17:28'),(10441,385,2,13062,'7.99','2005-08-19 09:44:17','2006-02-15 22:17:28'),(10442,385,1,13117,'0.99','2005-08-19 11:33:20','2006-02-15 22:17:28'),(10443,385,1,15488,'6.99','2005-08-23 02:06:01','2006-02-15 22:17:28'),(10444,386,1,583,'7.99','2005-05-28 11:48:55','2006-02-15 22:17:28'),(10445,386,2,1585,'3.99','2005-06-16 04:51:13','2006-02-15 22:17:28'),(10446,386,1,1608,'2.99','2005-06-16 06:28:57','2006-02-15 22:17:28'),(10447,386,2,1819,'5.99','2005-06-16 21:32:50','2006-02-15 22:17:28'),(10448,386,1,2732,'0.99','2005-06-19 15:19:39','2006-02-15 22:17:28'),(10449,386,1,3351,'2.99','2005-06-21 11:21:39','2006-02-15 22:17:29'),(10450,386,2,3783,'6.99','2005-07-06 13:57:31','2006-02-15 22:17:29'),(10451,386,1,4189,'8.99','2005-07-07 10:51:07','2006-02-15 22:17:29'),(10452,386,1,5524,'0.99','2005-07-10 01:49:24','2006-02-15 22:17:29'),(10453,386,1,5953,'2.99','2005-07-10 23:21:35','2006-02-15 22:17:29'),(10454,386,1,6037,'4.99','2005-07-11 03:06:54','2006-02-15 22:17:29'),(10455,386,1,6222,'2.99','2005-07-11 13:25:49','2006-02-15 22:17:29'),(10456,386,2,6261,'2.99','2005-07-11 15:28:34','2006-02-15 22:17:29'),(10457,386,1,6324,'3.99','2005-07-11 19:02:34','2006-02-15 22:17:29'),(10458,386,2,6715,'4.99','2005-07-12 13:32:28','2006-02-15 22:17:29'),(10459,386,2,8340,'4.99','2005-07-29 04:41:44','2006-02-15 22:17:29'),(10460,386,1,8751,'2.99','2005-07-29 19:14:39','2006-02-15 22:17:29'),(10461,386,2,9602,'0.99','2005-07-31 03:42:51','2006-02-15 22:17:29'),(10462,386,1,9686,'5.99','2005-07-31 06:50:06','2006-02-15 22:17:29'),(10463,386,1,10572,'4.99','2005-08-01 13:26:53','2006-02-15 22:17:29'),(10464,386,2,10618,'3.99','2005-08-01 15:06:38','2006-02-15 22:17:29'),(10465,386,1,10715,'2.99','2005-08-01 18:51:48','2006-02-15 22:17:29'),(10466,386,2,11128,'2.99','2005-08-02 09:03:25','2006-02-15 22:17:30'),(10467,386,2,11695,'4.99','2005-08-17 07:01:08','2006-02-15 22:17:30'),(10468,386,2,12961,'2.99','2005-08-19 06:22:37','2006-02-15 22:17:30'),(10469,386,1,13716,'3.99','2005-08-20 09:48:32','2006-02-15 22:17:30'),(10470,386,1,13764,'2.99','2005-08-20 11:38:16','2006-02-15 22:17:30'),(10471,386,2,13869,'6.99','2005-08-20 15:08:57','2006-02-15 22:17:30'),(10472,386,1,15949,'0.99','2005-08-23 19:06:04','2006-02-15 22:17:30'),(10473,387,2,302,'4.99','2005-05-26 21:13:46','2006-02-15 22:17:30'),(10474,387,1,697,'7.99','2005-05-29 02:04:04','2006-02-15 22:17:30'),(10475,387,1,841,'4.99','2005-05-30 00:31:17','2006-02-15 22:17:30'),(10476,387,1,1127,'3.99','2005-05-31 17:45:49','2006-02-15 22:17:30'),(10477,387,1,1464,'0.99','2005-06-15 20:38:14','2006-02-15 22:17:30'),(10478,387,2,1465,'0.99','2005-06-15 20:43:08','2006-02-15 22:17:30'),(10479,387,1,2068,'0.99','2005-06-17 16:11:46','2006-02-15 22:17:30'),(10480,387,2,2100,'0.99','2005-06-17 18:53:21','2006-02-15 22:17:30'),(10481,387,2,2981,'5.99','2005-06-20 08:35:17','2006-02-15 22:17:30'),(10482,387,2,3378,'4.99','2005-06-21 13:51:28','2006-02-15 22:17:30'),(10483,387,2,6216,'4.99','2005-07-11 12:57:05','2006-02-15 22:17:30'),(10484,387,2,6456,'6.99','2005-07-12 01:05:11','2006-02-15 22:17:31'),(10485,387,1,6517,'5.99','2005-07-12 03:52:39','2006-02-15 22:17:31'),(10486,387,1,7497,'0.99','2005-07-27 20:05:27','2006-02-15 22:17:31'),(10487,387,1,8090,'2.99','2005-07-28 18:27:29','2006-02-15 22:17:31'),(10488,387,1,10564,'0.99','2005-08-01 13:07:34','2006-02-15 22:17:31'),(10489,387,1,10838,'4.99','2005-08-01 23:36:10','2006-02-15 22:17:31'),(10490,387,2,11682,'2.99','2005-08-17 06:13:40','2006-02-15 22:17:31'),(10491,387,2,12153,'4.99','2005-08-18 00:22:30','2006-02-15 22:17:31'),(10492,387,1,12936,'6.99','2005-08-19 05:25:06','2006-02-15 22:17:31'),(10493,387,2,13034,'2.99','2005-08-19 08:41:29','2006-02-15 22:17:31'),(10494,387,1,13082,'5.99','2005-08-19 10:19:19','2006-02-15 22:17:31'),(10495,387,2,13645,'0.99','2005-08-20 07:47:05','2006-02-15 22:17:31'),(10496,387,2,13772,'4.99','2005-08-20 11:47:52','2006-02-15 22:17:31'),(10497,387,2,14279,'5.99','2005-08-21 06:39:08','2006-02-15 22:17:31'),(10498,387,2,14979,'0.99','2005-08-22 07:16:36','2006-02-15 22:17:31'),(10499,388,2,21,'4.99','2005-05-25 01:59:46','2006-02-15 22:17:31'),(10500,388,2,411,'4.99','2005-05-27 14:14:14','2006-02-15 22:17:31'),(10501,388,2,1276,'6.99','2005-06-15 08:00:13','2006-02-15 22:17:31'),(10502,388,1,2145,'0.99','2005-06-17 22:10:36','2006-02-15 22:17:31'),(10503,388,1,2537,'5.99','2005-06-19 01:52:21','2006-02-15 22:17:32'),(10504,388,1,2692,'4.99','2005-06-19 13:08:19','2006-02-15 22:17:32'),(10505,388,2,3159,'7.99','2005-06-20 21:11:50','2006-02-15 22:17:32'),(10506,388,2,4947,'5.99','2005-07-08 22:49:37','2006-02-15 22:17:32'),(10507,388,2,5899,'2.99','2005-07-10 20:21:52','2006-02-15 22:17:32'),(10508,388,2,6321,'2.99','2005-07-11 18:51:02','2006-02-15 22:17:32'),(10509,388,1,6452,'2.99','2005-07-12 00:57:31','2006-02-15 22:17:32'),(10510,388,2,7985,'5.99','2005-07-28 14:29:01','2006-02-15 22:17:32'),(10511,388,2,8456,'3.99','2005-07-29 07:58:31','2006-02-15 22:17:32'),(10512,388,2,9213,'0.99','2005-07-30 13:07:11','2006-02-15 22:17:32'),(10513,388,2,9368,'2.99','2005-07-30 18:50:53','2006-02-15 22:17:32'),(10514,388,2,9840,'2.99','2005-07-31 12:23:18','2006-02-15 22:17:32'),(10515,388,2,9940,'0.99','2005-07-31 15:29:06','2006-02-15 22:17:32'),(10516,388,2,10044,'2.99','2005-07-31 19:02:33','2006-02-15 22:17:32'),(10517,388,2,11604,'0.99','2005-08-17 03:28:27','2006-02-15 22:17:32'),(10518,388,2,12044,'0.99','2005-08-17 20:39:37','2006-02-15 22:17:32'),(10519,388,1,12068,'2.99','2005-08-17 21:37:08','2006-02-15 22:17:32'),(10520,388,2,12267,'6.99','2005-08-18 04:24:30','2006-02-15 22:17:32'),(10521,388,2,12497,'4.99','2005-08-18 12:58:40','2006-02-15 22:17:32'),(10522,388,2,12646,'2.99','2005-08-18 18:25:06','2006-02-15 22:17:32'),(10523,388,1,12749,'2.99','2005-08-18 22:31:21','2006-02-15 22:17:33'),(10524,388,1,12977,'4.99','2005-08-19 06:55:33','2006-02-15 22:17:33'),(10525,388,1,14273,'10.99','2005-08-21 06:26:48','2006-02-15 22:17:33'),(10526,388,2,14853,'5.99','2005-08-22 02:26:33','2006-02-15 22:17:33'),(10527,388,2,15660,'5.99','2005-08-23 08:51:21','2006-02-15 22:17:33'),(10528,388,1,12891,'0.99','2006-02-14 15:16:03','2006-02-15 22:17:33'),(10529,389,1,998,'4.99','2005-05-31 00:16:57','2006-02-15 22:17:33'),(10530,389,1,1763,'4.99','2005-06-16 17:51:01','2006-02-15 22:17:33'),(10531,389,1,1946,'4.99','2005-06-17 07:58:39','2006-02-15 22:17:33'),(10532,389,1,2552,'3.99','2005-06-19 03:01:29','2006-02-15 22:17:33'),(10533,389,2,3527,'0.99','2005-07-06 01:11:08','2006-02-15 22:17:33'),(10534,389,1,4443,'6.99','2005-07-07 23:05:53','2006-02-15 22:17:33'),(10535,389,1,5249,'0.99','2005-07-09 13:33:53','2006-02-15 22:17:33'),(10536,389,2,5626,'3.99','2005-07-10 05:49:35','2006-02-15 22:17:33'),(10537,389,2,6104,'2.99','2005-07-11 07:01:35','2006-02-15 22:17:33'),(10538,389,1,6600,'3.99','2005-07-12 07:41:48','2006-02-15 22:17:33'),(10539,389,1,7029,'4.99','2005-07-27 02:57:43','2006-02-15 22:17:33'),(10540,389,1,7896,'8.99','2005-07-28 11:00:58','2006-02-15 22:17:33'),(10541,389,2,7977,'4.99','2005-07-28 14:15:54','2006-02-15 22:17:33'),(10542,389,1,8338,'6.99','2005-07-29 04:40:39','2006-02-15 22:17:34'),(10543,389,1,8887,'4.99','2005-07-30 00:36:54','2006-02-15 22:17:34'),(10544,389,1,10217,'4.99','2005-08-01 01:07:27','2006-02-15 22:17:34'),(10545,389,1,10949,'2.99','2005-08-02 03:24:04','2006-02-15 22:17:34'),(10546,389,2,11348,'4.99','2005-08-02 17:18:38','2006-02-15 22:17:34'),(10547,389,2,11441,'2.99','2005-08-02 20:25:41','2006-02-15 22:17:34'),(10548,389,2,11944,'3.99','2005-08-17 17:02:42','2006-02-15 22:17:34'),(10549,389,2,12069,'4.99','2005-08-17 21:39:40','2006-02-15 22:17:34'),(10550,389,2,14493,'7.99','2005-08-21 14:01:44','2006-02-15 22:17:34'),(10551,389,1,14578,'2.99','2005-08-21 16:53:38','2006-02-15 22:17:34'),(10552,389,1,14777,'2.99','2005-08-21 23:55:50','2006-02-15 22:17:34'),(10553,389,1,15462,'5.99','2005-08-23 01:14:01','2006-02-15 22:17:34'),(10554,389,2,16011,'9.99','2005-08-23 21:11:33','2006-02-15 22:17:34'),(10555,390,1,254,'4.99','2005-05-26 14:43:48','2006-02-15 22:17:34'),(10556,390,2,912,'4.99','2005-05-30 10:58:33','2006-02-15 22:17:34'),(10557,390,2,1539,'5.99','2005-06-16 01:11:25','2006-02-15 22:17:34'),(10558,390,2,1730,'2.99','2005-06-16 15:30:01','2006-02-15 22:17:34'),(10559,390,2,1893,'2.99','2005-06-17 04:18:37','2006-02-15 22:17:34'),(10560,390,1,2330,'7.99','2005-06-18 10:41:19','2006-02-15 22:17:34'),(10561,390,1,3147,'5.99','2005-06-20 20:25:17','2006-02-15 22:17:34'),(10562,390,1,3999,'2.99','2005-07-06 23:50:54','2006-02-15 22:17:35'),(10563,390,1,4022,'4.99','2005-07-07 01:50:06','2006-02-15 22:17:35'),(10564,390,2,4191,'3.99','2005-07-07 10:56:14','2006-02-15 22:17:35'),(10565,390,2,4310,'2.99','2005-07-07 17:30:56','2006-02-15 22:17:35'),(10566,390,1,4968,'5.99','2005-07-08 23:49:19','2006-02-15 22:17:35'),(10567,390,1,6215,'4.99','2005-07-11 12:52:36','2006-02-15 22:17:35'),(10568,390,1,6430,'0.99','2005-07-12 00:03:34','2006-02-15 22:17:35'),(10569,390,2,7515,'3.99','2005-07-27 20:52:37','2006-02-15 22:17:35'),(10570,390,1,7595,'5.99','2005-07-27 23:32:23','2006-02-15 22:17:35'),(10571,390,1,8493,'0.99','2005-07-29 09:04:31','2006-02-15 22:17:35'),(10572,390,1,9251,'5.99','2005-07-30 14:19:25','2006-02-15 22:17:35'),(10573,390,2,9314,'2.99','2005-07-30 17:05:19','2006-02-15 22:17:35'),(10574,390,1,9825,'4.99','2005-07-31 11:50:51','2006-02-15 22:17:35'),(10575,390,1,10061,'4.99','2005-07-31 19:23:25','2006-02-15 22:17:35'),(10576,390,1,12105,'5.99','2005-08-17 22:54:45','2006-02-15 22:17:35'),(10577,390,2,12803,'2.99','2005-08-19 00:28:21','2006-02-15 22:17:35'),(10578,390,1,13413,'3.99','2005-08-19 22:46:46','2006-02-15 22:17:35'),(10579,390,1,13473,'4.99','2005-08-20 01:03:50','2006-02-15 22:17:35'),(10580,390,1,13501,'0.99','2005-08-20 01:56:20','2006-02-15 22:17:35'),(10581,390,2,13546,'3.99','2005-08-20 03:50:24','2006-02-15 22:17:36'),(10582,390,2,13591,'3.99','2005-08-20 05:50:05','2006-02-15 22:17:36'),(10583,390,2,13618,'7.99','2005-08-20 06:36:46','2006-02-15 22:17:36'),(10584,390,2,13893,'5.99','2005-08-20 15:52:52','2006-02-15 22:17:36'),(10585,390,2,15222,'4.99','2005-08-22 17:12:30','2006-02-15 22:17:36'),(10586,390,2,15303,'8.99','2005-08-22 19:44:59','2006-02-15 22:17:36'),(10587,390,2,15376,'4.99','2005-08-22 22:21:35','2006-02-15 22:17:36'),(10588,391,2,73,'4.99','2005-05-25 11:00:07','2006-02-15 22:17:36'),(10589,391,1,210,'2.99','2005-05-26 08:14:15','2006-02-15 22:17:36'),(10590,391,1,317,'5.99','2005-05-26 23:23:56','2006-02-15 22:17:36'),(10591,391,2,870,'2.99','2005-05-30 04:25:47','2006-02-15 22:17:36'),(10592,391,1,891,'7.99','2005-05-30 07:43:12','2006-02-15 22:17:36'),(10593,391,2,1232,'0.99','2005-06-15 04:18:10','2006-02-15 22:17:36'),(10594,391,2,1931,'0.99','2005-06-17 06:51:56','2006-02-15 22:17:36'),(10595,391,1,2045,'2.99','2005-06-17 14:38:11','2006-02-15 22:17:36'),(10596,391,1,2690,'2.99','2005-06-19 13:00:02','2006-02-15 22:17:36'),(10597,391,2,3163,'2.99','2005-06-20 21:22:13','2006-02-15 22:17:36'),(10598,391,1,4188,'5.99','2005-07-07 10:45:29','2006-02-15 22:17:36'),(10599,391,1,4716,'0.99','2005-07-08 12:18:51','2006-02-15 22:17:36'),(10600,391,2,4753,'0.99','2005-07-08 14:18:41','2006-02-15 22:17:37'),(10601,391,2,5583,'7.99','2005-07-10 04:08:48','2006-02-15 22:17:37'),(10602,391,1,5599,'4.99','2005-07-10 04:52:04','2006-02-15 22:17:37'),(10603,391,1,6302,'3.99','2005-07-11 17:55:38','2006-02-15 22:17:37'),(10604,391,1,6463,'2.99','2005-07-12 01:16:11','2006-02-15 22:17:37'),(10605,391,2,8016,'0.99','2005-07-28 15:35:41','2006-02-15 22:17:37'),(10606,391,1,8908,'0.99','2005-07-30 01:26:05','2006-02-15 22:17:37'),(10607,391,2,8913,'6.99','2005-07-30 01:35:01','2006-02-15 22:17:37'),(10608,391,1,9225,'0.99','2005-07-30 13:29:47','2006-02-15 22:17:37'),(10609,391,1,10210,'7.99','2005-08-01 00:58:52','2006-02-15 22:17:37'),(10610,391,2,10406,'2.99','2005-08-01 07:37:05','2006-02-15 22:17:37'),(10611,391,1,11151,'4.99','2005-08-02 09:52:44','2006-02-15 22:17:37'),(10612,391,2,11434,'2.99','2005-08-02 20:13:14','2006-02-15 22:17:37'),(10613,391,1,11602,'4.99','2005-08-17 03:21:19','2006-02-15 22:17:37'),(10614,391,1,12090,'0.99','2005-08-17 22:21:43','2006-02-15 22:17:37'),(10615,391,1,12100,'1.99','2005-08-17 22:41:10','2006-02-15 22:17:37'),(10616,391,1,13980,'2.99','2005-08-20 19:04:40','2006-02-15 22:17:37'),(10617,391,1,14381,'0.99','2005-08-21 09:55:47','2006-02-15 22:17:37'),(10618,392,2,1530,'6.99','2005-06-16 00:38:07','2006-02-15 22:17:37'),(10619,392,2,1764,'2.99','2005-06-16 17:51:54','2006-02-15 22:17:38'),(10620,392,2,2289,'2.99','2005-06-18 07:29:43','2006-02-15 22:17:38'),(10621,392,2,2890,'4.99','2005-06-20 02:00:45','2006-02-15 22:17:38'),(10622,392,1,3566,'2.99','2005-07-06 03:08:51','2006-02-15 22:17:38'),(10623,392,2,6061,'0.99','2005-07-11 04:06:25','2006-02-15 22:17:38'),(10624,392,2,6406,'2.99','2005-07-11 22:55:27','2006-02-15 22:17:38'),(10625,392,1,7692,'2.99','2005-07-28 03:30:21','2006-02-15 22:17:38'),(10626,392,1,7981,'1.99','2005-07-28 14:18:25','2006-02-15 22:17:38'),(10627,392,1,8254,'0.99','2005-07-29 00:59:31','2006-02-15 22:17:38'),(10628,392,2,8612,'9.99','2005-07-29 13:28:20','2006-02-15 22:17:38'),(10629,392,2,10085,'0.99','2005-07-31 20:12:02','2006-02-15 22:17:38'),(10630,392,1,10435,'4.99','2005-08-01 08:50:51','2006-02-15 22:17:38'),(10631,392,1,11459,'0.99','2005-08-02 21:25:25','2006-02-15 22:17:38'),(10632,392,1,11686,'2.99','2005-08-17 06:39:30','2006-02-15 22:17:38'),(10633,392,2,12102,'6.99','2005-08-17 22:45:26','2006-02-15 22:17:38'),(10634,392,1,12368,'6.99','2005-08-18 07:57:38','2006-02-15 22:17:38'),(10635,392,2,12561,'0.99','2005-08-18 14:58:51','2006-02-15 22:17:38'),(10636,392,1,13629,'4.99','2005-08-20 07:04:07','2006-02-15 22:17:38'),(10637,392,2,14081,'7.99','2005-08-20 23:35:13','2006-02-15 22:17:38'),(10638,392,1,14223,'5.99','2005-08-21 04:51:51','2006-02-15 22:17:39'),(10639,392,2,14369,'0.99','2005-08-21 09:33:44','2006-02-15 22:17:39'),(10640,392,2,14438,'5.99','2005-08-21 11:51:10','2006-02-15 22:17:39'),(10641,393,1,599,'4.99','2005-05-28 14:05:57','2006-02-15 22:17:39'),(10642,393,2,886,'0.99','2005-05-30 06:54:51','2006-02-15 22:17:39'),(10643,393,1,1611,'6.99','2005-06-16 06:41:35','2006-02-15 22:17:39'),(10644,393,2,1915,'1.99','2005-06-17 05:28:28','2006-02-15 22:17:39'),(10645,393,2,2219,'2.99','2005-06-18 03:16:54','2006-02-15 22:17:39'),(10646,393,1,2319,'4.99','2005-06-18 09:24:22','2006-02-15 22:17:39'),(10647,393,2,3001,'2.99','2005-06-20 09:50:16','2006-02-15 22:17:39'),(10648,393,2,4275,'2.99','2005-07-07 14:43:51','2006-02-15 22:17:39'),(10649,393,2,4546,'8.99','2005-07-08 04:18:36','2006-02-15 22:17:39'),(10650,393,2,4632,'5.99','2005-07-08 08:38:57','2006-02-15 22:17:39'),(10651,393,2,4791,'7.99','2005-07-08 16:27:24','2006-02-15 22:17:39'),(10652,393,1,5099,'4.99','2005-07-09 06:14:30','2006-02-15 22:17:39'),(10653,393,1,6221,'2.99','2005-07-11 13:24:27','2006-02-15 22:17:39'),(10654,393,2,6513,'0.99','2005-07-12 03:44:43','2006-02-15 22:17:39'),(10655,393,1,6930,'8.99','2005-07-26 23:00:01','2006-02-15 22:17:39'),(10656,393,2,7486,'0.99','2005-07-27 19:29:24','2006-02-15 22:17:39'),(10657,393,2,8004,'4.99','2005-07-28 15:14:07','2006-02-15 22:17:39'),(10658,393,2,8448,'0.99','2005-07-29 07:41:54','2006-02-15 22:17:40'),(10659,393,2,9763,'7.99','2005-07-31 09:34:03','2006-02-15 22:17:40'),(10660,393,1,10158,'1.99','2005-07-31 22:40:31','2006-02-15 22:17:40'),(10661,393,2,12059,'2.99','2005-08-17 21:09:23','2006-02-15 22:17:40'),(10662,393,1,12113,'1.99','2005-08-17 23:01:00','2006-02-15 22:17:40'),(10663,393,1,12563,'4.99','2005-08-18 15:08:29','2006-02-15 22:17:40'),(10664,393,1,12676,'0.99','2005-08-18 19:34:40','2006-02-15 22:17:40'),(10665,393,1,13184,'4.99','2005-08-19 14:16:18','2006-02-15 22:17:40'),(10666,393,2,13357,'4.99','2005-08-19 21:02:59','2006-02-15 22:17:40'),(10667,393,2,13788,'1.99','2005-08-20 12:15:41','2006-02-15 22:17:40'),(10668,393,1,15132,'2.99','2005-08-22 13:11:25','2006-02-15 22:17:40'),(10669,393,2,15284,'3.99','2005-08-22 19:17:08','2006-02-15 22:17:40'),(10670,393,2,15527,'0.99','2005-08-23 03:44:51','2006-02-15 22:17:40'),(10671,393,2,16049,'3.99','2005-08-23 22:50:12','2006-02-15 22:17:40'),(10672,394,1,213,'3.99','2005-05-26 08:44:08','2006-02-15 22:17:40'),(10673,394,1,977,'2.99','2005-05-30 21:22:26','2006-02-15 22:17:40'),(10674,394,2,1324,'4.99','2005-06-15 11:02:45','2006-02-15 22:17:40'),(10675,394,2,3543,'0.99','2005-07-06 02:01:08','2006-02-15 22:17:40'),(10676,394,1,3873,'6.99','2005-07-06 18:03:16','2006-02-15 22:17:40'),(10677,394,2,4009,'2.99','2005-07-07 00:28:55','2006-02-15 22:17:41'),(10678,394,1,4307,'6.99','2005-07-07 17:20:39','2006-02-15 22:17:41'),(10679,394,2,5183,'4.99','2005-07-09 10:13:45','2006-02-15 22:17:41'),(10680,394,1,5535,'4.99','2005-07-10 02:27:42','2006-02-15 22:17:41'),(10681,394,2,6059,'4.99','2005-07-11 04:03:54','2006-02-15 22:17:41'),(10682,394,2,7445,'3.99','2005-07-27 17:57:15','2006-02-15 22:17:41'),(10683,394,1,9147,'0.99','2005-07-30 10:38:59','2006-02-15 22:17:41'),(10684,394,2,9864,'0.99','2005-07-31 13:06:54','2006-02-15 22:17:41'),(10685,394,1,10319,'4.99','2005-08-01 04:37:19','2006-02-15 22:17:41'),(10686,394,1,10603,'0.99','2005-08-01 14:30:35','2006-02-15 22:17:41'),(10687,394,1,10718,'0.99','2005-08-01 18:55:38','2006-02-15 22:17:41'),(10688,394,1,12080,'4.99','2005-08-17 22:08:04','2006-02-15 22:17:41'),(10689,394,1,12389,'4.99','2005-08-18 08:48:36','2006-02-15 22:17:41'),(10690,394,2,12510,'9.99','2005-08-18 13:22:25','2006-02-15 22:17:41'),(10691,394,2,13047,'0.99','2005-08-19 09:24:49','2006-02-15 22:17:41'),(10692,394,1,14605,'0.99','2005-08-21 17:56:06','2006-02-15 22:17:41'),(10693,394,2,13178,'4.99','2006-02-14 15:16:03','2006-02-15 22:17:41'),(10694,395,1,1270,'0.99','2005-06-15 07:30:22','2006-02-15 22:17:41'),(10695,395,1,1562,'0.99','2005-06-16 02:46:27','2006-02-15 22:17:41'),(10696,395,2,1603,'0.99','2005-06-16 06:14:03','2006-02-15 22:17:42'),(10697,395,1,3030,'4.99','2005-06-20 11:51:59','2006-02-15 22:17:42'),(10698,395,1,3310,'0.99','2005-06-21 08:04:51','2006-02-15 22:17:42'),(10699,395,1,3389,'6.99','2005-06-21 14:37:55','2006-02-15 22:17:42'),(10700,395,2,3684,'0.99','2005-07-06 09:29:22','2006-02-15 22:17:42'),(10701,395,1,4185,'5.99','2005-07-07 10:31:05','2006-02-15 22:17:42'),(10702,395,1,4393,'4.99','2005-07-07 21:12:36','2006-02-15 22:17:42'),(10703,395,1,5087,'0.99','2005-07-09 05:44:28','2006-02-15 22:17:42'),(10704,395,2,5136,'0.99','2005-07-09 07:55:01','2006-02-15 22:17:42'),(10705,395,1,7740,'2.99','2005-07-28 05:23:36','2006-02-15 22:17:42'),(10706,395,2,7986,'7.99','2005-07-28 14:30:13','2006-02-15 22:17:42'),(10707,395,1,11889,'0.99','2005-08-17 15:08:27','2006-02-15 22:17:42'),(10708,395,1,14471,'5.99','2005-08-21 13:10:40','2006-02-15 22:17:42'),(10709,395,2,14720,'0.99','2005-08-21 21:43:53','2006-02-15 22:17:42'),(10710,395,1,15698,'2.99','2005-08-23 10:11:40','2006-02-15 22:17:42'),(10711,395,1,15856,'0.99','2005-08-23 15:59:12','2006-02-15 22:17:42'),(10712,395,1,15970,'4.99','2005-08-23 19:54:24','2006-02-15 22:17:42'),(10713,396,2,641,'5.99','2005-05-28 18:45:47','2006-02-15 22:17:42'),(10714,396,2,1370,'1.99','2005-06-15 14:31:05','2006-02-15 22:17:42'),(10715,396,2,1385,'4.99','2005-06-15 15:28:23','2006-02-15 22:17:43'),(10716,396,2,1408,'6.99','2005-06-15 16:57:58','2006-02-15 22:17:43'),(10717,396,2,3909,'6.99','2005-07-06 19:54:41','2006-02-15 22:17:43'),(10718,396,1,5059,'1.99','2005-07-09 04:28:01','2006-02-15 22:17:43'),(10719,396,2,6335,'2.99','2005-07-11 19:25:15','2006-02-15 22:17:43'),(10720,396,2,6764,'4.99','2005-07-12 15:29:27','2006-02-15 22:17:43'),(10721,396,2,6771,'2.99','2005-07-12 15:54:40','2006-02-15 22:17:43'),(10722,396,2,7142,'0.99','2005-07-27 06:55:39','2006-02-15 22:17:43'),(10723,396,2,7313,'2.99','2005-07-27 13:11:57','2006-02-15 22:17:43'),(10724,396,2,8371,'2.99','2005-07-29 05:16:35','2006-02-15 22:17:43'),(10725,396,2,8807,'2.99','2005-07-29 21:36:59','2006-02-15 22:17:43'),(10726,396,1,9344,'5.99','2005-07-30 18:13:45','2006-02-15 22:17:43'),(10727,396,2,10120,'2.99','2005-07-31 21:24:24','2006-02-15 22:17:43'),(10728,396,2,10124,'0.99','2005-07-31 21:31:49','2006-02-15 22:17:43'),(10729,396,2,10195,'6.99','2005-08-01 00:34:42','2006-02-15 22:17:43'),(10730,396,2,10610,'0.99','2005-08-01 14:49:41','2006-02-15 22:17:43'),(10731,396,2,12393,'5.99','2005-08-18 09:02:41','2006-02-15 22:17:43'),(10732,396,1,12895,'4.99','2005-08-19 03:50:48','2006-02-15 22:17:43'),(10733,396,2,13355,'4.99','2005-08-19 20:59:19','2006-02-15 22:17:43'),(10734,396,1,14078,'3.99','2005-08-20 23:26:40','2006-02-15 22:17:44'),(10735,396,1,14169,'4.99','2005-08-21 03:00:31','2006-02-15 22:17:44'),(10736,396,1,14508,'2.99','2005-08-21 14:33:58','2006-02-15 22:17:44'),(10737,396,2,14778,'5.99','2005-08-21 23:56:30','2006-02-15 22:17:44'),(10738,396,1,14792,'1.99','2005-08-22 00:36:41','2006-02-15 22:17:44'),(10739,396,2,15198,'7.99','2005-08-22 16:15:33','2006-02-15 22:17:44'),(10740,397,2,1002,'0.99','2005-05-31 00:47:56','2006-02-15 22:17:44'),(10741,397,1,1769,'5.99','2005-06-16 18:07:48','2006-02-15 22:17:44'),(10742,397,2,3027,'1.99','2005-06-20 11:50:30','2006-02-15 22:17:44'),(10743,397,1,3489,'5.99','2005-07-05 23:33:40','2006-02-15 22:17:44'),(10744,397,1,4036,'0.99','2005-07-07 02:48:00','2006-02-15 22:17:44'),(10745,397,2,5103,'4.99','2005-07-09 06:34:40','2006-02-15 22:17:44'),(10746,397,2,5598,'4.99','2005-07-10 04:48:29','2006-02-15 22:17:44'),(10747,397,2,5763,'4.99','2005-07-10 12:58:12','2006-02-15 22:17:44'),(10748,397,2,6014,'2.99','2005-07-11 02:02:55','2006-02-15 22:17:44'),(10749,397,2,6266,'2.99','2005-07-11 15:45:39','2006-02-15 22:17:44'),(10750,397,1,6471,'4.99','2005-07-12 01:31:06','2006-02-15 22:17:44'),(10751,397,2,7356,'2.99','2005-07-27 14:47:35','2006-02-15 22:17:44'),(10752,397,2,7892,'4.99','2005-07-28 10:46:58','2006-02-15 22:17:44'),(10753,397,1,8103,'6.99','2005-07-28 18:50:14','2006-02-15 22:17:44'),(10754,397,1,9495,'0.99','2005-07-30 23:54:26','2006-02-15 22:17:45'),(10755,397,2,9608,'1.99','2005-07-31 03:51:52','2006-02-15 22:17:45'),(10756,397,1,10534,'0.99','2005-08-01 12:15:11','2006-02-15 22:17:45'),(10757,397,2,10598,'4.99','2005-08-01 14:23:36','2006-02-15 22:17:45'),(10758,397,1,10785,'1.99','2005-08-01 21:24:55','2006-02-15 22:17:45'),(10759,397,2,11511,'4.99','2005-08-16 23:39:59','2006-02-15 22:17:45'),(10760,397,2,12223,'2.99','2005-08-18 02:58:40','2006-02-15 22:17:45'),(10761,397,1,12276,'0.99','2005-08-18 04:43:22','2006-02-15 22:17:45'),(10762,397,2,12329,'1.99','2005-08-18 06:44:30','2006-02-15 22:17:45'),(10763,397,2,12700,'0.99','2005-08-18 20:24:46','2006-02-15 22:17:45'),(10764,397,2,12726,'2.99','2005-08-18 21:44:46','2006-02-15 22:17:45'),(10765,397,1,12772,'4.99','2005-08-18 23:29:25','2006-02-15 22:17:45'),(10766,397,2,14100,'3.99','2005-08-21 00:31:07','2006-02-15 22:17:45'),(10767,397,1,14790,'6.99','2005-08-22 00:34:17','2006-02-15 22:17:45'),(10768,397,1,15083,'6.99','2005-08-22 11:17:37','2006-02-15 22:17:45'),(10769,398,1,486,'4.99','2005-05-27 23:51:12','2006-02-15 22:17:45'),(10770,398,2,1228,'2.99','2005-06-15 03:50:36','2006-02-15 22:17:45'),(10771,398,1,2087,'6.99','2005-06-17 17:35:10','2006-02-15 22:17:45'),(10772,398,2,3141,'9.99','2005-06-20 19:55:47','2006-02-15 22:17:45'),(10773,398,2,5234,'5.99','2005-07-09 12:44:47','2006-02-15 22:17:46'),(10774,398,2,8119,'3.99','2005-07-28 19:23:15','2006-02-15 22:17:46'),(10775,398,2,8204,'4.99','2005-07-28 23:18:29','2006-02-15 22:17:46'),(10776,398,1,8428,'7.99','2005-07-29 07:10:14','2006-02-15 22:17:46'),(10777,398,1,9042,'2.99','2005-07-30 06:33:55','2006-02-15 22:17:46'),(10778,398,2,9281,'5.99','2005-07-30 15:15:51','2006-02-15 22:17:46'),(10779,398,1,9771,'1.99','2005-07-31 09:55:36','2006-02-15 22:17:46'),(10780,398,1,10230,'2.99','2005-08-01 01:49:36','2006-02-15 22:17:46'),(10781,398,2,11132,'4.99','2005-08-02 09:14:09','2006-02-15 22:17:46'),(10782,398,2,12528,'2.99','2005-08-18 13:52:41','2006-02-15 22:17:46'),(10783,398,2,13643,'4.99','2005-08-20 07:42:24','2006-02-15 22:17:46'),(10784,398,1,15189,'3.99','2005-08-22 15:56:42','2006-02-15 22:17:46'),(10785,399,2,10,'5.99','2005-05-25 00:02:21','2006-02-15 22:17:46'),(10786,399,2,694,'6.99','2005-05-29 01:49:43','2006-02-15 22:17:46'),(10787,399,2,883,'4.99','2005-05-30 06:21:05','2006-02-15 22:17:46'),(10788,399,2,2961,'2.99','2005-06-20 07:29:15','2006-02-15 22:17:46'),(10789,399,1,3036,'5.99','2005-06-20 12:18:31','2006-02-15 22:17:46'),(10790,399,2,4957,'0.99','2005-07-08 23:18:48','2006-02-15 22:17:46'),(10791,399,2,4981,'4.99','2005-07-09 00:29:29','2006-02-15 22:17:46'),(10792,399,1,5507,'0.99','2005-07-10 00:49:04','2006-02-15 22:17:47'),(10793,399,2,6006,'2.99','2005-07-11 01:38:42','2006-02-15 22:17:47'),(10794,399,2,6229,'6.99','2005-07-11 13:59:50','2006-02-15 22:17:47'),(10795,399,2,6674,'4.99','2005-07-12 11:51:54','2006-02-15 22:17:47'),(10796,399,2,8461,'5.99','2005-07-29 08:11:31','2006-02-15 22:17:47'),(10797,399,2,9728,'2.99','2005-07-31 08:40:54','2006-02-15 22:17:47'),(10798,399,2,10654,'2.99','2005-08-01 16:31:35','2006-02-15 22:17:47'),(10799,399,2,10960,'5.99','2005-08-02 03:46:18','2006-02-15 22:17:47'),(10800,399,1,11329,'4.99','2005-08-02 16:42:52','2006-02-15 22:17:47'),(10801,399,1,11953,'3.99','2005-08-17 17:16:42','2006-02-15 22:17:47'),(10802,399,1,13253,'4.99','2005-08-19 16:53:56','2006-02-15 22:17:47'),(10803,399,2,13293,'4.99','2005-08-19 18:35:52','2006-02-15 22:17:47'),(10804,399,1,15300,'0.99','2005-08-22 19:44:00','2006-02-15 22:17:47'),(10805,399,1,15468,'4.99','2005-08-23 01:25:30','2006-02-15 22:17:47'),(10806,400,1,95,'3.99','2005-05-25 16:12:52','2006-02-15 22:17:47'),(10807,400,2,171,'6.99','2005-05-26 03:14:15','2006-02-15 22:17:47'),(10808,400,2,516,'1.99','2005-05-28 03:11:47','2006-02-15 22:17:47'),(10809,400,2,894,'5.99','2005-05-30 08:31:31','2006-02-15 22:17:48'),(10810,400,2,1364,'0.99','2005-06-15 14:05:32','2006-02-15 22:17:48'),(10811,400,1,1917,'3.99','2005-06-17 05:36:07','2006-02-15 22:17:48'),(10812,400,2,1923,'6.99','2005-06-17 06:06:10','2006-02-15 22:17:48'),(10813,400,1,4573,'6.99','2005-07-08 05:38:46','2006-02-15 22:17:48'),(10814,400,1,4645,'2.99','2005-07-08 09:20:09','2006-02-15 22:17:48'),(10815,400,2,5212,'6.99','2005-07-09 11:37:47','2006-02-15 22:17:48'),(10816,400,2,5222,'5.99','2005-07-09 12:05:45','2006-02-15 22:17:48'),(10817,400,2,6790,'5.99','2005-07-12 16:34:59','2006-02-15 22:17:48'),(10818,400,2,6994,'2.99','2005-07-27 01:08:26','2006-02-15 22:17:48'),(10819,400,2,7296,'2.99','2005-07-27 12:39:48','2006-02-15 22:17:48'),(10820,400,1,7682,'5.99','2005-07-28 03:07:29','2006-02-15 22:17:48'),(10821,400,2,9177,'5.99','2005-07-30 11:52:40','2006-02-15 22:17:48'),(10822,400,2,9756,'4.99','2005-07-31 09:25:00','2006-02-15 22:17:48'),(10823,400,1,10187,'2.99','2005-08-01 00:15:49','2006-02-15 22:17:48'),(10824,400,2,10484,'2.99','2005-08-01 10:19:53','2006-02-15 22:17:48'),(10825,400,1,10711,'0.99','2005-08-01 18:45:09','2006-02-15 22:17:48'),(10826,400,2,11510,'6.99','2005-08-16 23:30:07','2006-02-15 22:17:49'),(10827,400,2,11530,'2.99','2005-08-17 00:29:00','2006-02-15 22:17:49'),(10828,400,1,11600,'5.99','2005-08-17 03:12:04','2006-02-15 22:17:49'),(10829,400,1,12514,'2.99','2005-08-18 13:33:55','2006-02-15 22:17:49'),(10830,400,2,13449,'2.99','2005-08-20 00:17:01','2006-02-15 22:17:49'),(10831,400,1,14775,'2.99','2005-08-21 23:53:07','2006-02-15 22:17:49'),(10832,400,2,15533,'4.99','2005-08-23 03:54:39','2006-02-15 22:17:49'),(10833,400,2,15988,'4.99','2005-08-23 20:23:08','2006-02-15 22:17:49'),(10834,401,2,167,'4.99','2005-05-26 02:50:31','2006-02-15 22:17:49'),(10835,401,2,446,'4.99','2005-05-27 18:48:41','2006-02-15 22:17:49'),(10836,401,2,811,'1.99','2005-05-29 19:30:42','2006-02-15 22:17:49'),(10837,401,1,4059,'0.99','2005-07-07 04:04:26','2006-02-15 22:17:49'),(10838,401,2,4292,'7.99','2005-07-07 15:48:38','2006-02-15 22:17:49'),(10839,401,2,5923,'0.99','2005-07-10 21:40:06','2006-02-15 22:17:49'),(10840,401,1,NULL,'0.99','2005-07-12 06:26:10','2006-02-15 22:17:49'),(10841,401,2,7651,'4.99','2005-07-28 01:48:32','2006-02-15 22:17:49'),(10842,401,1,8450,'2.99','2005-07-29 07:44:05','2006-02-15 22:17:49'),(10843,401,2,8669,'2.99','2005-07-29 15:44:55','2006-02-15 22:17:49'),(10844,401,1,8722,'8.99','2005-07-29 17:58:58','2006-02-15 22:17:50'),(10845,401,2,9701,'4.99','2005-07-31 07:32:21','2006-02-15 22:17:50'),(10846,401,2,10171,'0.99','2005-07-31 23:29:05','2006-02-15 22:17:50'),(10847,401,1,11820,'2.99','2005-08-17 12:25:33','2006-02-15 22:17:50'),(10848,401,1,12475,'4.99','2005-08-18 12:14:21','2006-02-15 22:17:50'),(10849,401,2,12479,'4.99','2005-08-18 12:26:37','2006-02-15 22:17:50'),(10850,401,1,12906,'2.99','2005-08-19 04:13:43','2006-02-15 22:17:50'),(10851,401,1,13024,'4.99','2005-08-19 08:19:21','2006-02-15 22:17:50'),(10852,401,1,14359,'0.99','2005-08-21 09:16:19','2006-02-15 22:17:50'),(10853,401,2,14433,'1.99','2005-08-21 11:36:34','2006-02-15 22:17:50'),(10854,401,1,15831,'0.99','2005-08-23 15:21:19','2006-02-15 22:17:50'),(10855,401,1,15927,'0.99','2005-08-23 18:23:11','2006-02-15 22:17:50'),(10856,402,2,801,'1.99','2005-05-29 17:35:50','2006-02-15 22:17:50'),(10857,402,2,1194,'4.99','2005-06-15 01:25:08','2006-02-15 22:17:50'),(10858,402,2,2490,'4.99','2005-06-18 22:00:50','2006-02-15 22:17:50'),(10859,402,2,2913,'2.99','2005-06-20 03:42:27','2006-02-15 22:17:50'),(10860,402,2,3564,'6.99','2005-07-06 03:02:13','2006-02-15 22:17:50'),(10861,402,2,3612,'3.99','2005-07-06 05:37:26','2006-02-15 22:17:50'),(10862,402,2,3755,'5.99','2005-07-06 12:37:16','2006-02-15 22:17:51'),(10863,402,1,4399,'2.99','2005-07-07 21:20:28','2006-02-15 22:17:51'),(10864,402,2,4604,'3.99','2005-07-08 06:58:43','2006-02-15 22:17:51'),(10865,402,2,5329,'4.99','2005-07-09 16:49:46','2006-02-15 22:17:51'),(10866,402,2,6183,'2.99','2005-07-11 11:14:35','2006-02-15 22:17:51'),(10867,402,1,6283,'3.99','2005-07-11 16:47:32','2006-02-15 22:17:51'),(10868,402,1,7633,'0.99','2005-07-28 01:03:41','2006-02-15 22:17:51'),(10869,402,2,8521,'7.99','2005-07-29 10:12:45','2006-02-15 22:17:51'),(10870,402,1,9657,'6.99','2005-07-31 06:00:41','2006-02-15 22:17:51'),(10871,402,2,9779,'0.99','2005-07-31 10:08:33','2006-02-15 22:17:51'),(10872,402,2,11045,'0.99','2005-08-02 06:07:54','2006-02-15 22:17:51'),(10873,402,2,11549,'4.99','2005-08-17 01:01:48','2006-02-15 22:17:51'),(10874,402,2,11920,'0.99','2005-08-17 16:10:19','2006-02-15 22:17:51'),(10875,402,1,15428,'4.99','2005-08-23 00:11:52','2006-02-15 22:17:52'),(10876,403,1,442,'2.99','2005-05-27 18:12:13','2006-02-15 22:17:52'),(10877,403,1,517,'0.99','2005-05-28 03:17:57','2006-02-15 22:17:52'),(10878,403,2,1221,'4.99','2005-06-15 03:35:16','2006-02-15 22:17:52'),(10879,403,1,1249,'8.99','2005-06-15 05:38:09','2006-02-15 22:17:52'),(10880,403,2,2488,'3.99','2005-06-18 21:38:26','2006-02-15 22:17:52'),(10881,403,1,2927,'4.99','2005-06-20 04:41:41','2006-02-15 22:17:52'),(10882,403,2,3049,'6.99','2005-06-20 12:51:01','2006-02-15 22:17:52'),(10883,403,1,3356,'5.99','2005-06-21 11:38:45','2006-02-15 22:17:52'),(10884,403,1,3644,'6.99','2005-07-06 07:20:11','2006-02-15 22:17:52'),(10885,403,2,3737,'3.99','2005-07-06 11:45:53','2006-02-15 22:17:52'),(10886,403,2,4096,'4.99','2005-07-07 06:09:11','2006-02-15 22:17:52'),(10887,403,1,5982,'4.99','2005-07-11 00:24:44','2006-02-15 22:17:52'),(10888,403,2,6322,'2.99','2005-07-11 18:58:20','2006-02-15 22:17:52'),(10889,403,1,6342,'4.99','2005-07-11 19:48:24','2006-02-15 22:17:52'),(10890,403,1,7103,'4.99','2005-07-27 05:08:59','2006-02-15 22:17:52'),(10891,403,2,8013,'5.99','2005-07-28 15:30:26','2006-02-15 22:17:52'),(10892,403,1,9058,'2.99','2005-07-30 07:15:45','2006-02-15 22:17:52'),(10893,403,2,9486,'7.99','2005-07-30 23:35:42','2006-02-15 22:17:52'),(10894,403,2,9794,'4.99','2005-07-31 10:47:01','2006-02-15 22:17:53'),(10895,403,2,10109,'5.99','2005-07-31 21:04:49','2006-02-15 22:17:53'),(10896,403,1,10443,'2.99','2005-08-01 09:01:04','2006-02-15 22:17:53'),(10897,403,1,10547,'6.99','2005-08-01 12:44:17','2006-02-15 22:17:53'),(10898,403,2,10789,'2.99','2005-08-01 21:37:55','2006-02-15 22:17:53'),(10899,403,1,11038,'7.99','2005-08-02 05:59:42','2006-02-15 22:17:53'),(10900,403,2,11391,'9.99','2005-08-02 18:40:12','2006-02-15 22:17:53'),(10901,403,2,11427,'2.99','2005-08-02 20:02:39','2006-02-15 22:17:53'),(10902,403,2,11460,'0.99','2005-08-02 21:28:03','2006-02-15 22:17:53'),(10903,403,2,11558,'0.99','2005-08-17 01:19:52','2006-02-15 22:17:53'),(10904,403,2,12005,'5.99','2005-08-17 18:56:55','2006-02-15 22:17:53'),(10905,403,1,12132,'2.99','2005-08-17 23:37:03','2006-02-15 22:17:53'),(10906,403,1,12793,'5.99','2005-08-19 00:20:36','2006-02-15 22:17:53'),(10907,403,1,14519,'2.99','2005-08-21 14:59:29','2006-02-15 22:17:53'),(10908,403,1,14662,'0.99','2005-08-21 19:45:27','2006-02-15 22:17:53'),(10909,403,2,14725,'4.99','2005-08-21 22:02:08','2006-02-15 22:17:53'),(10910,403,1,15410,'4.99','2005-08-22 23:27:43','2006-02-15 22:17:53'),(10911,404,2,1081,'5.99','2005-05-31 10:56:32','2006-02-15 22:17:53'),(10912,404,2,1506,'2.99','2005-06-15 22:19:37','2006-02-15 22:17:53'),(10913,404,2,1840,'4.99','2005-06-16 23:39:34','2006-02-15 22:17:54'),(10914,404,1,2715,'4.99','2005-06-19 14:29:35','2006-02-15 22:17:54'),(10915,404,1,2951,'2.99','2005-06-20 06:23:01','2006-02-15 22:17:54'),(10916,404,1,3927,'2.99','2005-07-06 20:48:14','2006-02-15 22:17:54'),(10917,404,1,4495,'2.99','2005-07-08 01:43:46','2006-02-15 22:17:54'),(10918,404,2,4615,'8.99','2005-07-08 07:46:53','2006-02-15 22:17:54'),(10919,404,1,4653,'4.99','2005-07-08 09:48:01','2006-02-15 22:17:54'),(10920,404,1,4963,'4.99','2005-07-08 23:38:40','2006-02-15 22:17:54'),(10921,404,1,5632,'3.99','2005-07-10 06:17:06','2006-02-15 22:17:54'),(10922,404,1,6114,'1.99','2005-07-11 07:33:48','2006-02-15 22:17:54'),(10923,404,2,6779,'0.99','2005-07-12 16:10:50','2006-02-15 22:17:54'),(10924,404,1,6964,'4.99','2005-07-27 00:15:04','2006-02-15 22:17:54'),(10925,404,1,8058,'5.99','2005-07-28 17:07:49','2006-02-15 22:17:54'),(10926,404,1,8455,'3.99','2005-07-29 07:53:06','2006-02-15 22:17:54'),(10927,404,1,9206,'4.99','2005-07-30 12:46:59','2006-02-15 22:17:54'),(10928,404,1,9472,'4.99','2005-07-30 23:03:32','2006-02-15 22:17:54'),(10929,404,2,9824,'2.99','2005-07-31 11:49:55','2006-02-15 22:17:54'),(10930,404,1,10651,'2.99','2005-08-01 16:20:22','2006-02-15 22:17:54'),(10931,404,1,12325,'5.99','2005-08-18 06:41:30','2006-02-15 22:17:54'),(10932,404,1,12554,'8.99','2005-08-18 14:47:28','2006-02-15 22:17:54'),(10933,404,2,13412,'5.99','2005-08-19 22:46:35','2006-02-15 22:17:55'),(10934,404,1,13422,'4.99','2005-08-19 23:07:24','2006-02-15 22:17:55'),(10935,404,1,14691,'0.99','2005-08-21 20:42:29','2006-02-15 22:17:55'),(10936,404,2,14835,'5.99','2005-08-22 01:49:07','2006-02-15 22:17:55'),(10937,404,2,14838,'4.99','2005-08-22 01:57:34','2006-02-15 22:17:55'),(10938,404,2,14912,'4.99','2005-08-22 04:51:42','2006-02-15 22:17:55'),(10939,404,2,15087,'0.99','2005-08-22 11:24:09','2006-02-15 22:17:55'),(10940,404,2,15290,'10.99','2005-08-22 19:28:02','2006-02-15 22:17:55'),(10941,405,1,121,'2.99','2005-05-25 19:41:29','2006-02-15 22:17:55'),(10942,405,2,770,'4.99','2005-05-29 12:56:50','2006-02-15 22:17:55'),(10943,405,2,1315,'4.99','2005-06-15 10:23:08','2006-02-15 22:17:55'),(10944,405,1,1888,'0.99','2005-06-17 03:58:36','2006-02-15 22:17:55'),(10945,405,2,1953,'5.99','2005-06-17 08:34:57','2006-02-15 22:17:55'),(10946,405,2,2654,'3.99','2005-06-19 10:37:54','2006-02-15 22:17:55'),(10947,405,1,3240,'4.99','2005-06-21 02:53:17','2006-02-15 22:17:55'),(10948,405,1,3253,'5.99','2005-06-21 03:25:37','2006-02-15 22:17:55'),(10949,405,2,4223,'0.99','2005-07-07 12:23:54','2006-02-15 22:17:55'),(10950,405,2,4401,'0.99','2005-07-07 21:26:27','2006-02-15 22:17:55'),(10951,405,2,5040,'7.99','2005-07-09 03:16:34','2006-02-15 22:17:55'),(10952,405,1,5231,'0.99','2005-07-09 12:35:02','2006-02-15 22:17:56'),(10953,405,2,5512,'1.99','2005-07-10 01:05:38','2006-02-15 22:17:56'),(10954,405,1,6110,'2.99','2005-07-11 07:23:47','2006-02-15 22:17:56'),(10955,405,1,7455,'2.99','2005-07-27 18:34:41','2006-02-15 22:17:56'),(10956,405,1,7759,'0.99','2005-07-28 06:28:45','2006-02-15 22:17:56'),(10957,405,2,8482,'2.99','2005-07-29 08:46:33','2006-02-15 22:17:56'),(10958,405,1,8955,'5.99','2005-07-30 03:28:27','2006-02-15 22:17:56'),(10959,405,1,9569,'0.99','2005-07-31 02:39:38','2006-02-15 22:17:56'),(10960,405,1,10472,'4.99','2005-08-01 09:54:41','2006-02-15 22:17:56'),(10961,405,2,10823,'4.99','2005-08-01 22:59:10','2006-02-15 22:17:56'),(10962,405,1,11345,'7.99','2005-08-02 17:14:19','2006-02-15 22:17:56'),(10963,405,1,12050,'0.99','2005-08-17 20:55:25','2006-02-15 22:17:56'),(10964,405,2,12425,'5.99','2005-08-18 10:18:06','2006-02-15 22:17:56'),(10965,405,1,13304,'1.99','2005-08-19 18:56:32','2006-02-15 22:17:56'),(10966,405,1,13398,'0.99','2005-08-19 22:08:48','2006-02-15 22:17:56'),(10967,405,1,14274,'4.99','2005-08-21 06:29:20','2006-02-15 22:17:56'),(10968,405,2,14537,'0.99','2005-08-21 15:24:24','2006-02-15 22:17:56'),(10969,405,1,15072,'1.99','2005-08-22 10:58:45','2006-02-15 22:17:56'),(10970,405,2,15383,'2.99','2005-08-22 22:31:20','2006-02-15 22:17:57'),(10971,405,1,15932,'4.99','2005-08-23 18:31:40','2006-02-15 22:17:57'),(10972,405,1,12792,'0.99','2006-02-14 15:16:03','2006-02-15 22:17:57'),(10973,406,1,855,'0.99','2005-05-30 02:00:28','2006-02-15 22:17:57'),(10974,406,1,2113,'4.99','2005-06-17 19:57:46','2006-02-15 22:17:57'),(10975,406,2,2150,'3.99','2005-06-17 22:50:36','2006-02-15 22:17:57'),(10976,406,1,2241,'2.99','2005-06-18 04:31:41','2006-02-15 22:17:57'),(10977,406,2,2325,'0.99','2005-06-18 10:08:07','2006-02-15 22:17:57'),(10978,406,2,2585,'0.99','2005-06-19 05:05:03','2006-02-15 22:17:57'),(10979,406,1,3186,'7.99','2005-06-20 23:04:20','2006-02-15 22:17:57'),(10980,406,1,3306,'4.99','2005-06-21 07:46:58','2006-02-15 22:17:57'),(10981,406,2,4264,'4.99','2005-07-07 14:25:28','2006-02-15 22:17:57'),(10982,406,2,5098,'4.99','2005-07-09 06:13:54','2006-02-15 22:17:57'),(10983,406,2,5263,'0.99','2005-07-09 14:10:36','2006-02-15 22:17:57'),(10984,406,1,5766,'0.99','2005-07-10 13:07:31','2006-02-15 22:17:57'),(10985,406,2,6439,'2.99','2005-07-12 00:23:48','2006-02-15 22:17:57'),(10986,406,2,7109,'5.99','2005-07-27 05:28:57','2006-02-15 22:17:57'),(10987,406,1,7171,'4.99','2005-07-27 07:58:35','2006-02-15 22:17:57'),(10988,406,1,7259,'4.99','2005-07-27 11:06:00','2006-02-15 22:17:58'),(10989,406,2,7604,'7.99','2005-07-27 23:54:52','2006-02-15 22:17:58'),(10990,406,2,8080,'4.99','2005-07-28 18:05:06','2006-02-15 22:17:58'),(10991,406,2,8295,'2.99','2005-07-29 02:42:14','2006-02-15 22:17:58'),(10992,406,2,8630,'0.99','2005-07-29 14:07:59','2006-02-15 22:17:58'),(10993,406,1,8903,'0.99','2005-07-30 01:08:06','2006-02-15 22:17:58'),(10994,406,2,8962,'1.99','2005-07-30 03:43:45','2006-02-15 22:17:58'),(10995,406,2,9224,'0.99','2005-07-30 13:25:37','2006-02-15 22:17:58'),(10996,406,1,9291,'4.99','2005-07-30 16:03:39','2006-02-15 22:17:58'),(10997,406,2,9487,'2.99','2005-07-30 23:40:22','2006-02-15 22:17:58'),(10998,406,1,9660,'8.99','2005-07-31 06:03:17','2006-02-15 22:17:58'),(10999,406,1,10632,'1.99','2005-08-01 15:36:56','2006-02-15 22:17:58'),(11000,406,1,11603,'4.99','2005-08-17 03:22:10','2006-02-15 22:17:58'),(11001,406,2,12505,'5.99','2005-08-18 13:17:30','2006-02-15 22:17:58'),(11002,406,2,14205,'6.99','2005-08-21 03:57:15','2006-02-15 22:17:58'),(11003,406,2,14421,'2.99','2005-08-21 11:20:21','2006-02-15 22:17:58'),(11004,406,2,14601,'2.99','2005-08-21 17:45:52','2006-02-15 22:17:58'),(11005,407,1,619,'7.99','2005-05-28 15:52:26','2006-02-15 22:17:58'),(11006,407,1,1698,'2.99','2005-06-16 13:04:42','2006-02-15 22:17:59'),(11007,407,2,2597,'0.99','2005-06-19 05:53:46','2006-02-15 22:17:59'),(11008,407,1,4296,'0.99','2005-07-07 16:16:03','2006-02-15 22:17:59'),(11009,407,1,5070,'4.99','2005-07-09 04:58:26','2006-02-15 22:17:59'),(11010,407,2,5590,'9.99','2005-07-10 04:23:11','2006-02-15 22:17:59'),(11011,407,1,6727,'0.99','2005-07-12 13:54:25','2006-02-15 22:17:59'),(11012,407,1,7363,'5.99','2005-07-27 14:58:29','2006-02-15 22:17:59'),(11013,407,2,7643,'4.99','2005-07-28 01:19:44','2006-02-15 22:17:59'),(11014,407,1,8078,'2.99','2005-07-28 17:54:42','2006-02-15 22:17:59'),(11015,407,1,8109,'4.99','2005-07-28 19:07:44','2006-02-15 22:17:59'),(11016,407,1,8197,'9.99','2005-07-28 23:04:10','2006-02-15 22:17:59'),(11017,407,2,8571,'0.99','2005-07-29 11:48:39','2006-02-15 22:17:59'),(11018,407,1,8802,'2.99','2005-07-29 21:25:51','2006-02-15 22:17:59'),(11019,407,2,10774,'4.99','2005-08-01 20:54:33','2006-02-15 22:17:59'),(11020,407,1,11214,'8.99','2005-08-02 12:19:50','2006-02-15 22:17:59'),(11021,407,1,11222,'2.99','2005-08-02 12:32:28','2006-02-15 22:18:00'),(11022,407,2,11382,'5.99','2005-08-02 18:20:52','2006-02-15 22:18:00'),(11023,407,2,11518,'4.99','2005-08-16 23:59:49','2006-02-15 22:18:00'),(11024,407,1,11677,'0.99','2005-08-17 06:06:26','2006-02-15 22:18:00'),(11025,407,2,12566,'0.99','2005-08-18 15:13:04','2006-02-15 22:18:00'),(11026,407,2,12931,'2.99','2005-08-19 05:11:47','2006-02-15 22:18:00'),(11027,407,1,13800,'0.99','2005-08-20 12:40:48','2006-02-15 22:18:00'),(11028,407,2,13856,'6.99','2005-08-20 14:49:32','2006-02-15 22:18:00'),(11029,407,2,14401,'6.99','2005-08-21 10:36:20','2006-02-15 22:18:00'),(11030,407,2,15320,'0.99','2005-08-22 20:17:49','2006-02-15 22:18:00'),(11031,407,2,15334,'1.99','2005-08-22 20:44:35','2006-02-15 22:18:00'),(11032,408,2,3,'3.99','2005-05-24 23:03:39','2006-02-15 22:18:00'),(11033,408,2,59,'5.99','2005-05-25 08:56:42','2006-02-15 22:18:00'),(11034,408,1,526,'2.99','2005-05-28 04:27:37','2006-02-15 22:18:01'),(11035,408,2,2479,'4.99','2005-06-18 21:03:08','2006-02-15 22:18:01'),(11036,408,1,2564,'2.99','2005-06-19 03:41:10','2006-02-15 22:18:01'),(11037,408,2,2728,'2.99','2005-06-19 15:04:04','2006-02-15 22:18:01'),(11038,408,2,4330,'3.99','2005-07-07 18:09:41','2006-02-15 22:18:01'),(11039,408,2,5073,'0.99','2005-07-09 05:02:35','2006-02-15 22:18:01'),(11040,408,1,6062,'0.99','2005-07-11 04:11:58','2006-02-15 22:18:01'),(11041,408,2,6203,'4.99','2005-07-11 12:28:57','2006-02-15 22:18:01'),(11042,408,2,6826,'2.99','2005-07-12 18:32:02','2006-02-15 22:18:01'),(11043,408,1,7053,'4.99','2005-07-27 03:38:54','2006-02-15 22:18:01'),(11044,408,2,7996,'4.99','2005-07-28 15:00:49','2006-02-15 22:18:01'),(11045,408,2,8251,'4.99','2005-07-29 00:50:14','2006-02-15 22:18:01'),(11046,408,2,8469,'3.99','2005-07-29 08:26:27','2006-02-15 22:18:01'),(11047,408,2,8902,'6.99','2005-07-30 01:08:06','2006-02-15 22:18:01'),(11048,408,1,9052,'0.99','2005-07-30 07:06:08','2006-02-15 22:18:01'),(11049,408,2,9757,'4.99','2005-07-31 09:25:14','2006-02-15 22:18:01'),(11050,408,2,11115,'2.99','2005-08-02 08:31:06','2006-02-15 22:18:01'),(11051,408,1,12140,'2.99','2005-08-17 23:57:55','2006-02-15 22:18:01'),(11052,408,1,12338,'4.99','2005-08-18 07:04:24','2006-02-15 22:18:01'),(11053,408,1,12498,'2.99','2005-08-18 13:01:08','2006-02-15 22:18:02'),(11054,408,2,12900,'0.99','2005-08-19 04:03:49','2006-02-15 22:18:02'),(11055,408,1,13508,'7.99','2005-08-20 02:12:54','2006-02-15 22:18:02'),(11056,408,2,13744,'3.99','2005-08-20 10:51:45','2006-02-15 22:18:02'),(11057,408,1,13944,'2.99','2005-08-20 17:41:16','2006-02-15 22:18:02'),(11058,408,2,14733,'4.99','2005-08-21 22:22:33','2006-02-15 22:18:02'),(11059,408,1,15628,'2.99','2005-08-23 07:28:04','2006-02-15 22:18:02'),(11060,408,2,15716,'1.99','2005-08-23 11:02:00','2006-02-15 22:18:02'),(11061,408,1,15765,'6.99','2005-08-23 13:06:19','2006-02-15 22:18:03'),(11062,409,1,310,'6.99','2005-05-26 22:41:07','2006-02-15 22:18:03'),(11063,409,2,1226,'5.99','2005-06-15 03:46:10','2006-02-15 22:18:03'),(11064,409,2,2310,'8.99','2005-06-18 08:45:59','2006-02-15 22:18:03'),(11065,409,1,3866,'5.99','2005-07-06 17:47:20','2006-02-15 22:18:03'),(11066,409,2,4550,'4.99','2005-07-08 04:34:00','2006-02-15 22:18:03'),(11067,409,1,5175,'3.99','2005-07-09 09:34:28','2006-02-15 22:18:03'),(11068,409,2,5306,'5.99','2005-07-09 15:56:45','2006-02-15 22:18:03'),(11069,409,1,5422,'0.99','2005-07-09 20:55:47','2006-02-15 22:18:03'),(11070,409,1,5848,'2.99','2005-07-10 17:28:14','2006-02-15 22:18:04'),(11071,409,1,5955,'7.99','2005-07-10 23:22:10','2006-02-15 22:18:04'),(11072,409,2,6026,'4.99','2005-07-11 02:21:43','2006-02-15 22:18:04'),(11073,409,1,6596,'2.99','2005-07-12 07:32:59','2006-02-15 22:18:04'),(11074,409,2,7673,'2.99','2005-07-28 02:53:53','2006-02-15 22:18:04'),(11075,409,2,7940,'0.99','2005-07-28 12:46:47','2006-02-15 22:18:04'),(11076,409,1,8037,'4.99','2005-07-28 16:31:20','2006-02-15 22:18:04'),(11077,409,2,8265,'5.99','2005-07-29 01:20:15','2006-02-15 22:18:04'),(11078,409,1,8726,'1.99','2005-07-29 18:09:22','2006-02-15 22:18:04'),(11079,409,2,9267,'0.99','2005-07-30 14:59:05','2006-02-15 22:18:04'),(11080,409,2,12830,'0.99','2005-08-19 01:40:25','2006-02-15 22:18:04'),(11081,409,1,13392,'8.99','2005-08-19 22:03:22','2006-02-15 22:18:04'),(11082,409,2,13632,'6.99','2005-08-20 07:10:52','2006-02-15 22:18:04'),(11083,409,1,14103,'1.99','2005-08-21 00:37:00','2006-02-15 22:18:04'),(11084,409,1,14697,'4.99','2005-08-21 20:49:21','2006-02-15 22:18:05'),(11085,410,1,1514,'2.99','2005-06-15 22:57:34','2006-02-15 22:18:05'),(11086,410,1,2073,'2.99','2005-06-17 16:33:59','2006-02-15 22:18:05'),(11087,410,1,2255,'4.99','2005-06-18 05:21:12','2006-02-15 22:18:05'),(11088,410,2,2400,'5.99','2005-06-18 16:10:46','2006-02-15 22:18:05'),(11089,410,2,2971,'0.99','2005-06-20 07:56:00','2006-02-15 22:18:05'),(11090,410,1,3249,'4.99','2005-06-21 03:13:19','2006-02-15 22:18:05'),(11091,410,2,4062,'0.99','2005-07-07 04:22:27','2006-02-15 22:18:05'),(11092,410,1,4267,'0.99','2005-07-07 14:35:30','2006-02-15 22:18:05'),(11093,410,1,5150,'3.99','2005-07-09 08:28:40','2006-02-15 22:18:05'),(11094,410,1,5192,'4.99','2005-07-09 10:27:09','2006-02-15 22:18:05'),(11095,410,2,5330,'5.99','2005-07-09 16:53:57','2006-02-15 22:18:05'),(11096,410,1,5336,'2.99','2005-07-09 17:01:08','2006-02-15 22:18:05'),(11097,410,1,6148,'4.99','2005-07-11 09:14:22','2006-02-15 22:18:05'),(11098,410,2,6218,'5.99','2005-07-11 13:14:58','2006-02-15 22:18:05'),(11099,410,2,7350,'4.99','2005-07-27 14:34:14','2006-02-15 22:18:05'),(11100,410,2,7407,'5.99','2005-07-27 16:29:04','2006-02-15 22:18:05'),(11101,410,1,7523,'4.99','2005-07-27 21:11:23','2006-02-15 22:18:06'),(11102,410,2,8625,'3.99','2005-07-29 13:59:13','2006-02-15 22:18:06'),(11103,410,1,8882,'0.99','2005-07-30 00:24:05','2006-02-15 22:18:06'),(11104,410,1,9263,'2.99','2005-07-30 14:48:24','2006-02-15 22:18:06'),(11105,410,1,10402,'4.99','2005-08-01 07:27:19','2006-02-15 22:18:06'),(11106,410,1,10837,'2.99','2005-08-01 23:30:22','2006-02-15 22:18:06'),(11107,410,1,11107,'0.99','2005-08-02 08:19:38','2006-02-15 22:18:06'),(11108,410,1,11187,'10.99','2005-08-02 11:16:19','2006-02-15 22:18:06'),(11109,410,1,11472,'6.99','2005-08-02 21:49:06','2006-02-15 22:18:06'),(11110,410,1,11694,'6.99','2005-08-17 06:57:30','2006-02-15 22:18:06'),(11111,410,2,12955,'8.99','2005-08-19 06:05:58','2006-02-15 22:18:06'),(11112,410,1,13460,'4.99','2005-08-20 00:48:24','2006-02-15 22:18:06'),(11113,410,2,13748,'2.99','2005-08-20 10:59:54','2006-02-15 22:18:06'),(11114,410,2,13948,'6.99','2005-08-20 17:50:48','2006-02-15 22:18:06'),(11115,410,1,14237,'3.99','2005-08-21 05:15:00','2006-02-15 22:18:07'),(11116,410,2,14298,'4.99','2005-08-21 07:17:10','2006-02-15 22:18:07'),(11117,410,1,14319,'4.99','2005-08-21 08:00:55','2006-02-15 22:18:07'),(11118,410,2,14819,'2.99','2005-08-22 01:17:19','2006-02-15 22:18:07'),(11119,410,1,15211,'2.99','2005-08-22 16:40:21','2006-02-15 22:18:07'),(11120,410,2,15392,'3.99','2005-08-22 23:02:15','2006-02-15 22:18:07'),(11121,410,1,15518,'4.99','2005-08-23 03:19:34','2006-02-15 22:18:07'),(11122,410,1,12665,'2.99','2006-02-14 15:16:03','2006-02-15 22:18:08'),(11123,411,2,686,'4.99','2005-05-29 00:27:10','2006-02-15 22:18:08'),(11124,411,2,972,'1.99','2005-05-30 20:21:07','2006-02-15 22:18:08'),(11125,411,1,1985,'0.99','2005-06-17 10:31:37','2006-02-15 22:18:08'),(11126,411,2,1997,'2.99','2005-06-17 11:19:43','2006-02-15 22:18:08'),(11127,411,2,2712,'0.99','2005-06-19 14:20:13','2006-02-15 22:18:08'),(11128,411,1,3928,'2.99','2005-07-06 20:52:09','2006-02-15 22:18:08'),(11129,411,2,4146,'0.99','2005-07-07 08:30:16','2006-02-15 22:18:08'),(11130,411,1,4246,'2.99','2005-07-07 13:49:03','2006-02-15 22:18:08'),(11131,411,2,5357,'5.99','2005-07-09 18:08:59','2006-02-15 22:18:08'),(11132,411,1,5800,'2.99','2005-07-10 14:58:36','2006-02-15 22:18:08'),(11133,411,1,7102,'1.99','2005-07-27 05:07:21','2006-02-15 22:18:08'),(11134,411,2,7395,'0.99','2005-07-27 16:03:11','2006-02-15 22:18:08'),(11135,411,1,7513,'2.99','2005-07-27 20:51:04','2006-02-15 22:18:08'),(11136,411,1,7813,'2.99','2005-07-28 08:08:27','2006-02-15 22:18:08'),(11137,411,1,8023,'0.99','2005-07-28 15:53:29','2006-02-15 22:18:08'),(11138,411,2,8613,'5.99','2005-07-29 13:30:58','2006-02-15 22:18:09'),(11139,411,2,9622,'0.99','2005-07-31 04:21:45','2006-02-15 22:18:09'),(11140,411,2,11294,'2.99','2005-08-02 15:08:27','2006-02-15 22:18:09'),(11141,411,1,11997,'5.99','2005-08-17 18:34:38','2006-02-15 22:18:09'),(11142,411,2,13634,'0.99','2005-08-20 07:16:45','2006-02-15 22:18:09'),(11143,411,2,13656,'7.99','2005-08-20 08:01:07','2006-02-15 22:18:09'),(11144,411,2,14480,'2.99','2005-08-21 13:36:40','2006-02-15 22:18:09'),(11145,411,1,14772,'5.99','2005-08-21 23:50:39','2006-02-15 22:18:09'),(11146,411,2,14996,'2.99','2005-08-22 07:52:41','2006-02-15 22:18:09'),(11147,411,1,15936,'0.99','2005-08-23 18:43:11','2006-02-15 22:18:09'),(11148,411,2,13246,'4.99','2006-02-14 15:16:03','2006-02-15 22:18:09'),(11149,412,2,191,'0.99','2005-05-26 06:14:06','2006-02-15 22:18:09'),(11150,412,1,333,'4.99','2005-05-27 02:52:21','2006-02-15 22:18:09'),(11151,412,1,717,'0.99','2005-05-29 04:37:44','2006-02-15 22:18:09'),(11152,412,2,1043,'3.99','2005-05-31 06:11:40','2006-02-15 22:18:09'),(11153,412,1,3292,'2.99','2005-06-21 06:59:11','2006-02-15 22:18:09'),(11154,412,2,3888,'0.99','2005-07-06 18:54:20','2006-02-15 22:18:09'),(11155,412,2,4074,'0.99','2005-07-07 04:49:49','2006-02-15 22:18:09'),(11156,412,1,8036,'0.99','2005-07-28 16:27:43','2006-02-15 22:18:09'),(11157,412,2,8330,'8.99','2005-07-29 04:09:07','2006-02-15 22:18:10'),(11158,412,1,8411,'8.99','2005-07-29 06:44:23','2006-02-15 22:18:10'),(11159,412,1,8674,'0.99','2005-07-29 15:54:22','2006-02-15 22:18:10'),(11160,412,1,9881,'4.99','2005-07-31 13:50:38','2006-02-15 22:18:10'),(11161,412,2,10381,'2.99','2005-08-01 06:36:37','2006-02-15 22:18:10'),(11162,412,1,10467,'5.99','2005-08-01 09:45:58','2006-02-15 22:18:10'),(11163,412,2,11027,'4.99','2005-08-02 05:47:10','2006-02-15 22:18:10'),(11164,412,1,14068,'3.99','2005-08-20 22:50:59','2006-02-15 22:18:10'),(11165,412,1,14535,'6.99','2005-08-21 15:22:37','2006-02-15 22:18:10'),(11166,412,2,15354,'4.99','2005-08-22 21:18:59','2006-02-15 22:18:10'),(11167,412,2,15732,'4.99','2005-08-23 11:35:12','2006-02-15 22:18:10'),(11168,412,1,15781,'8.99','2005-08-23 13:41:05','2006-02-15 22:18:10'),(11169,412,1,15314,'0.99','2006-02-14 15:16:03','2006-02-15 22:18:10'),(11170,413,1,40,'4.99','2005-05-25 05:09:04','2006-02-15 22:18:10'),(11171,413,1,999,'4.99','2005-05-31 00:25:10','2006-02-15 22:18:10'),(11172,413,2,2130,'5.99','2005-06-17 21:00:44','2006-02-15 22:18:10'),(11173,413,2,2545,'4.99','2005-06-19 02:23:36','2006-02-15 22:18:10'),(11174,413,1,3762,'4.99','2005-07-06 12:52:49','2006-02-15 22:18:10'),(11175,413,2,4491,'0.99','2005-07-08 01:30:46','2006-02-15 22:18:10'),(11176,413,1,5897,'7.99','2005-07-10 20:16:14','2006-02-15 22:18:11'),(11177,413,2,7100,'4.99','2005-07-27 05:05:01','2006-02-15 22:18:11'),(11178,413,1,7635,'0.99','2005-07-28 01:08:11','2006-02-15 22:18:11'),(11179,413,2,7731,'0.99','2005-07-28 05:01:18','2006-02-15 22:18:11'),(11180,413,1,10909,'2.99','2005-08-02 01:53:59','2006-02-15 22:18:11'),(11181,413,2,11304,'2.99','2005-08-02 15:40:10','2006-02-15 22:18:11'),(11182,413,1,11468,'0.99','2005-08-02 21:47:26','2006-02-15 22:18:11'),(11183,413,1,11532,'0.99','2005-08-17 00:34:14','2006-02-15 22:18:11'),(11184,413,2,12552,'2.99','2005-08-18 14:46:34','2006-02-15 22:18:11'),(11185,413,1,13010,'3.99','2005-08-19 07:52:21','2006-02-15 22:18:11'),(11186,413,1,13318,'2.99','2005-08-19 19:33:57','2006-02-15 22:18:11'),(11187,413,2,13824,'4.99','2005-08-20 13:43:12','2006-02-15 22:18:11'),(11188,413,2,13887,'4.99','2005-08-20 15:39:00','2006-02-15 22:18:11'),(11189,413,1,14773,'2.99','2005-08-21 23:50:57','2006-02-15 22:18:11'),(11190,413,1,15678,'2.99','2005-08-23 09:23:45','2006-02-15 22:18:11'),(11191,414,1,85,'4.99','2005-05-25 13:05:34','2006-02-15 22:18:11'),(11192,414,1,261,'3.99','2005-05-26 15:44:23','2006-02-15 22:18:11'),(11193,414,1,2246,'4.99','2005-06-18 04:54:29','2006-02-15 22:18:11'),(11194,414,1,2559,'9.99','2005-06-19 03:09:46','2006-02-15 22:18:12'),(11195,414,1,3318,'5.99','2005-06-21 08:23:05','2006-02-15 22:18:12'),(11196,414,1,3957,'10.99','2005-07-06 22:05:47','2006-02-15 22:18:12'),(11197,414,1,4437,'3.99','2005-07-07 22:55:41','2006-02-15 22:18:12'),(11198,414,2,6462,'7.99','2005-07-12 01:15:24','2006-02-15 22:18:12'),(11199,414,2,6728,'0.99','2005-07-12 13:56:48','2006-02-15 22:18:12'),(11200,414,2,6845,'0.99','2005-07-12 19:20:41','2006-02-15 22:18:12'),(11201,414,1,7009,'0.99','2005-07-27 01:45:44','2006-02-15 22:18:12'),(11202,414,1,7779,'2.99','2005-07-28 07:11:11','2006-02-15 22:18:12'),(11203,414,1,9650,'2.99','2005-07-31 05:47:32','2006-02-15 22:18:12'),(11204,414,2,9991,'2.99','2005-07-31 17:26:27','2006-02-15 22:18:12'),(11205,414,2,10107,'5.99','2005-07-31 21:01:46','2006-02-15 22:18:12'),(11206,414,1,11706,'0.99','2005-08-17 07:23:46','2006-02-15 22:18:12'),(11207,414,2,12930,'4.99','2005-08-19 05:11:32','2006-02-15 22:18:12'),(11208,414,1,13042,'0.99','2005-08-19 09:06:08','2006-02-15 22:18:12'),(11209,414,1,13242,'2.99','2005-08-19 16:28:47','2006-02-15 22:18:12'),(11210,414,1,13308,'7.99','2005-08-19 18:59:42','2006-02-15 22:18:12'),(11211,414,1,13404,'0.99','2005-08-19 22:18:42','2006-02-15 22:18:12'),(11212,414,2,13494,'2.99','2005-08-20 01:36:34','2006-02-15 22:18:12'),(11213,414,2,13657,'4.99','2005-08-20 08:01:39','2006-02-15 22:18:12'),(11214,414,1,15140,'6.99','2005-08-22 13:39:20','2006-02-15 22:18:13'),(11215,414,2,15481,'0.99','2005-08-23 01:59:14','2006-02-15 22:18:13'),(11216,415,2,665,'4.99','2005-05-28 21:38:39','2006-02-15 22:18:13'),(11217,415,2,1867,'4.99','2005-06-17 02:01:37','2006-02-15 22:18:13'),(11218,415,1,3211,'2.99','2005-06-21 01:01:29','2006-02-15 22:18:13'),(11219,415,2,4926,'8.99','2005-07-08 22:01:48','2006-02-15 22:18:13'),(11220,415,2,5665,'0.99','2005-07-10 08:10:08','2006-02-15 22:18:13'),(11221,415,2,5733,'0.99','2005-07-10 11:37:24','2006-02-15 22:18:13'),(11222,415,2,6491,'5.99','2005-07-12 02:28:31','2006-02-15 22:18:13'),(11223,415,1,6505,'3.99','2005-07-12 03:27:37','2006-02-15 22:18:13'),(11224,415,1,7379,'4.99','2005-07-27 15:36:43','2006-02-15 22:18:13'),(11225,415,2,7624,'0.99','2005-07-28 00:37:44','2006-02-15 22:18:13'),(11226,415,1,7748,'4.99','2005-07-28 05:52:23','2006-02-15 22:18:13'),(11227,415,2,8317,'2.99','2005-07-29 03:39:07','2006-02-15 22:18:13'),(11228,415,2,9586,'2.99','2005-07-31 03:07:16','2006-02-15 22:18:13'),(11229,415,1,9852,'2.99','2005-07-31 12:52:17','2006-02-15 22:18:13'),(11230,415,1,10263,'5.99','2005-08-01 03:02:48','2006-02-15 22:18:13'),(11231,415,1,10553,'2.99','2005-08-01 12:54:06','2006-02-15 22:18:13'),(11232,415,2,11310,'1.99','2005-08-02 15:51:58','2006-02-15 22:18:13'),(11233,415,2,12128,'5.99','2005-08-17 23:31:09','2006-02-15 22:18:14'),(11234,415,2,12588,'2.99','2005-08-18 16:04:45','2006-02-15 22:18:14'),(11235,415,2,13729,'8.99','2005-08-20 10:17:08','2006-02-15 22:18:14'),(11236,415,1,14992,'4.99','2005-08-22 07:51:47','2006-02-15 22:18:14'),(11237,415,2,15121,'4.99','2005-08-22 12:46:37','2006-02-15 22:18:14'),(11238,415,1,15959,'0.99','2005-08-23 19:27:04','2006-02-15 22:18:14'),(11239,416,2,253,'0.99','2005-05-26 14:43:14','2006-02-15 22:18:14'),(11240,416,2,724,'3.99','2005-05-29 05:53:23','2006-02-15 22:18:14'),(11241,416,2,1031,'2.99','2005-05-31 04:23:01','2006-02-15 22:18:14'),(11242,416,2,1158,'2.99','2005-06-14 22:53:33','2006-02-15 22:18:14'),(11243,416,1,1343,'4.99','2005-06-15 12:27:19','2006-02-15 22:18:14'),(11244,416,2,1553,'0.99','2005-06-16 02:02:44','2006-02-15 22:18:14'),(11245,416,2,1596,'2.99','2005-06-16 05:30:58','2006-02-15 22:18:14'),(11246,416,2,1771,'0.99','2005-06-16 18:12:17','2006-02-15 22:18:14'),(11247,416,1,3833,'3.99','2005-07-06 16:18:28','2006-02-15 22:18:14'),(11248,416,1,3868,'2.99','2005-07-06 17:54:13','2006-02-15 22:18:14'),(11249,416,1,6097,'2.99','2005-07-11 06:21:43','2006-02-15 22:18:14'),(11250,416,1,6879,'7.99','2005-07-12 20:37:37','2006-02-15 22:18:14'),(11251,416,1,7889,'0.99','2005-07-28 10:43:21','2006-02-15 22:18:14'),(11252,416,1,7917,'2.99','2005-07-28 11:56:57','2006-02-15 22:18:15'),(11253,416,2,8349,'5.99','2005-07-29 04:50:22','2006-02-15 22:18:15'),(11254,416,2,8588,'2.99','2005-07-29 12:22:20','2006-02-15 22:18:15'),(11255,416,2,8648,'2.99','2005-07-29 14:56:21','2006-02-15 22:18:15'),(11256,416,2,9383,'2.99','2005-07-30 19:24:50','2006-02-15 22:18:15'),(11257,416,1,10254,'3.99','2005-08-01 02:42:03','2006-02-15 22:18:15'),(11258,416,1,10354,'2.99','2005-08-01 05:47:10','2006-02-15 22:18:15'),(11259,416,1,10742,'6.99','2005-08-01 19:53:13','2006-02-15 22:18:15'),(11260,416,1,10937,'6.99','2005-08-02 03:00:18','2006-02-15 22:18:15'),(11261,416,2,11047,'5.99','2005-08-02 06:09:20','2006-02-15 22:18:15'),(11262,416,1,11557,'6.99','2005-08-17 01:19:20','2006-02-15 22:18:15'),(11263,416,1,12722,'8.99','2005-08-18 21:33:53','2006-02-15 22:18:15'),(11264,416,1,12932,'4.99','2005-08-19 05:17:30','2006-02-15 22:18:15'),(11265,416,1,14239,'4.99','2005-08-21 05:18:57','2006-02-15 22:18:15'),(11266,416,1,15235,'1.99','2005-08-22 17:43:12','2006-02-15 22:18:15'),(11267,416,2,15470,'4.99','2005-08-23 01:35:12','2006-02-15 22:18:15'),(11268,416,1,15727,'2.99','2005-08-23 11:28:49','2006-02-15 22:18:15'),(11269,416,2,15761,'0.99','2005-08-23 12:55:51','2006-02-15 22:18:15'),(11270,417,1,267,'4.99','2005-05-26 16:16:21','2006-02-15 22:18:15'),(11271,417,2,630,'8.99','2005-05-28 17:24:51','2006-02-15 22:18:16'),(11272,417,2,833,'4.99','2005-05-29 23:21:56','2006-02-15 22:18:16'),(11273,417,1,1921,'3.99','2005-06-17 06:04:16','2006-02-15 22:18:16'),(11274,417,1,3952,'4.99','2005-07-06 21:51:31','2006-02-15 22:18:16'),(11275,417,1,4418,'2.99','2005-07-07 22:05:30','2006-02-15 22:18:16'),(11276,417,1,4421,'9.99','2005-07-07 22:07:55','2006-02-15 22:18:16'),(11277,417,2,6258,'6.99','2005-07-11 15:24:32','2006-02-15 22:18:16'),(11278,417,1,6312,'4.99','2005-07-11 18:19:02','2006-02-15 22:18:16'),(11279,417,1,8877,'2.99','2005-07-30 00:15:22','2006-02-15 22:18:16'),(11280,417,2,9049,'2.99','2005-07-30 06:57:28','2006-02-15 22:18:16'),(11281,417,1,10478,'0.99','2005-08-01 10:09:06','2006-02-15 22:18:16'),(11282,417,1,11217,'7.99','2005-08-02 12:26:31','2006-02-15 22:18:16'),(11283,417,1,11291,'6.99','2005-08-02 14:57:58','2006-02-15 22:18:16'),(11284,417,2,11303,'0.99','2005-08-02 15:39:18','2006-02-15 22:18:16'),(11285,417,2,12074,'0.99','2005-08-17 21:50:57','2006-02-15 22:18:16'),(11286,417,2,12281,'4.99','2005-08-18 04:50:32','2006-02-15 22:18:16'),(11287,417,1,13545,'4.99','2005-08-20 03:50:15','2006-02-15 22:18:16'),(11288,417,1,13927,'1.99','2005-08-20 17:11:58','2006-02-15 22:18:16'),(11289,417,2,14121,'4.99','2005-08-21 01:26:33','2006-02-15 22:18:16'),(11290,417,1,14304,'6.99','2005-08-21 07:23:10','2006-02-15 22:18:17'),(11291,417,1,14607,'2.99','2005-08-21 17:56:50','2006-02-15 22:18:17'),(11292,417,2,14882,'2.99','2005-08-22 03:52:21','2006-02-15 22:18:17'),(11293,417,1,15795,'0.99','2005-08-23 14:07:56','2006-02-15 22:18:17'),(11294,417,2,13261,'2.99','2006-02-14 15:16:03','2006-02-15 22:18:17'),(11295,418,1,2825,'2.99','2005-06-19 20:32:19','2006-02-15 22:18:17'),(11296,418,2,2943,'2.99','2005-06-20 05:43:05','2006-02-15 22:18:17'),(11297,418,2,2969,'2.99','2005-06-20 07:44:27','2006-02-15 22:18:17'),(11298,418,1,3805,'0.99','2005-07-06 15:08:42','2006-02-15 22:18:17'),(11299,418,2,4852,'7.99','2005-07-08 18:43:15','2006-02-15 22:18:17'),(11300,418,1,4865,'2.99','2005-07-08 19:09:04','2006-02-15 22:18:17'),(11301,418,1,4938,'0.99','2005-07-08 22:32:53','2006-02-15 22:18:17'),(11302,418,1,6150,'4.99','2005-07-11 09:23:56','2006-02-15 22:18:17'),(11303,418,1,6970,'4.99','2005-07-27 00:26:14','2006-02-15 22:18:17'),(11304,418,2,8546,'5.99','2005-07-29 11:08:48','2006-02-15 22:18:17'),(11305,418,2,8591,'0.99','2005-07-29 12:32:33','2006-02-15 22:18:17'),(11306,418,2,8886,'10.99','2005-07-30 00:36:31','2006-02-15 22:18:17'),(11307,418,1,9558,'4.99','2005-07-31 02:14:35','2006-02-15 22:18:17'),(11308,418,2,10537,'5.99','2005-08-01 12:22:28','2006-02-15 22:18:17'),(11309,418,1,10709,'0.99','2005-08-01 18:43:57','2006-02-15 22:18:18'),(11310,418,2,10915,'2.99','2005-08-02 02:05:04','2006-02-15 22:18:18'),(11311,418,1,11270,'2.99','2005-08-02 14:18:07','2006-02-15 22:18:18'),(11312,418,2,11322,'3.99','2005-08-02 16:23:17','2006-02-15 22:18:18'),(11313,418,2,11409,'1.99','2005-08-02 19:26:51','2006-02-15 22:18:18'),(11314,418,1,11650,'4.99','2005-08-17 05:00:03','2006-02-15 22:18:18'),(11315,418,1,11769,'2.99','2005-08-17 10:04:49','2006-02-15 22:18:18'),(11316,418,1,11910,'0.99','2005-08-17 15:44:37','2006-02-15 22:18:18'),(11317,418,2,13312,'0.99','2005-08-19 19:09:14','2006-02-15 22:18:18'),(11318,418,1,13537,'2.99','2005-08-20 03:39:15','2006-02-15 22:18:18'),(11319,418,1,13970,'0.99','2005-08-20 18:43:34','2006-02-15 22:18:18'),(11320,418,1,14484,'0.99','2005-08-21 13:47:29','2006-02-15 22:18:18'),(11321,418,1,14836,'4.99','2005-08-22 01:52:26','2006-02-15 22:18:18'),(11322,418,2,14860,'2.99','2005-08-22 02:47:07','2006-02-15 22:18:18'),(11323,418,1,15466,'4.99','2005-08-23 01:16:55','2006-02-15 22:18:18'),(11324,418,2,15957,'5.99','2005-08-23 19:21:22','2006-02-15 22:18:18'),(11325,419,1,62,'2.99','2005-05-25 09:18:52','2006-02-15 22:18:18'),(11326,419,2,2793,'2.99','2005-06-19 18:52:37','2006-02-15 22:18:18'),(11327,419,1,3596,'0.99','2005-07-06 05:03:11','2006-02-15 22:18:18'),(11328,419,1,3694,'4.99','2005-07-06 10:01:23','2006-02-15 22:18:19'),(11329,419,1,4224,'0.99','2005-07-07 12:24:21','2006-02-15 22:18:19'),(11330,419,2,5333,'5.99','2005-07-09 16:59:38','2006-02-15 22:18:19'),(11331,419,2,5863,'0.99','2005-07-10 18:25:23','2006-02-15 22:18:19'),(11332,419,1,5900,'3.99','2005-07-10 20:21:54','2006-02-15 22:18:19'),(11333,419,2,5933,'0.99','2005-07-10 22:06:48','2006-02-15 22:18:19'),(11334,419,2,6173,'0.99','2005-07-11 10:33:11','2006-02-15 22:18:19'),(11335,419,2,6587,'3.99','2005-07-12 06:56:26','2006-02-15 22:18:19'),(11336,419,1,7362,'4.99','2005-07-27 14:58:27','2006-02-15 22:18:19'),(11337,419,1,7619,'2.99','2005-07-28 00:25:41','2006-02-15 22:18:19'),(11338,419,1,7796,'4.99','2005-07-28 07:39:39','2006-02-15 22:18:19'),(11339,419,1,10150,'2.99','2005-07-31 22:22:00','2006-02-15 22:18:19'),(11340,419,1,10372,'2.99','2005-08-01 06:23:48','2006-02-15 22:18:19'),(11341,419,2,11025,'4.99','2005-08-02 05:39:12','2006-02-15 22:18:19'),(11342,419,1,11313,'2.99','2005-08-02 16:02:51','2006-02-15 22:18:19'),(11343,419,2,11323,'2.99','2005-08-02 16:29:57','2006-02-15 22:18:19'),(11344,419,1,11425,'2.99','2005-08-02 19:58:48','2006-02-15 22:18:19'),(11345,419,2,11689,'6.99','2005-08-17 06:42:08','2006-02-15 22:18:19'),(11346,419,1,12460,'7.99','2005-08-18 11:25:13','2006-02-15 22:18:19'),(11347,419,1,12720,'5.99','2005-08-18 21:28:42','2006-02-15 22:18:20'),(11348,419,2,14308,'0.99','2005-08-21 07:43:21','2006-02-15 22:18:20'),(11349,419,2,15779,'4.99','2005-08-23 13:33:46','2006-02-15 22:18:20'),(11350,420,2,744,'4.99','2005-05-29 09:13:08','2006-02-15 22:18:20'),(11351,420,2,2672,'3.99','2005-06-19 11:42:04','2006-02-15 22:18:20'),(11352,420,1,2698,'0.99','2005-06-19 13:29:11','2006-02-15 22:18:20'),(11353,420,1,2726,'0.99','2005-06-19 15:02:20','2006-02-15 22:18:20'),(11354,420,1,4176,'4.99','2005-07-07 10:03:34','2006-02-15 22:18:20'),(11355,420,2,5081,'4.99','2005-07-09 05:25:20','2006-02-15 22:18:20'),(11356,420,1,5168,'4.99','2005-07-09 09:20:01','2006-02-15 22:18:20'),(11357,420,2,5911,'0.99','2005-07-10 20:51:42','2006-02-15 22:18:20'),(11358,420,2,6086,'3.99','2005-07-11 05:29:03','2006-02-15 22:18:20'),(11359,420,2,6096,'4.99','2005-07-11 06:18:04','2006-02-15 22:18:20'),(11360,420,2,6582,'4.99','2005-07-12 06:28:12','2006-02-15 22:18:20'),(11361,420,1,6588,'4.99','2005-07-12 06:57:40','2006-02-15 22:18:20'),(11362,420,2,7081,'2.99','2005-07-27 04:25:59','2006-02-15 22:18:20'),(11363,420,2,8485,'0.99','2005-07-29 08:53:09','2006-02-15 22:18:20'),(11364,420,1,9362,'0.99','2005-07-30 18:44:16','2006-02-15 22:18:20'),(11365,420,2,10291,'4.99','2005-08-01 03:39:57','2006-02-15 22:18:20'),(11366,420,2,10601,'10.99','2005-08-01 14:25:40','2006-02-15 22:18:21'),(11367,420,1,10766,'4.99','2005-08-01 20:36:29','2006-02-15 22:18:21'),(11368,420,2,11236,'5.99','2005-08-02 13:17:21','2006-02-15 22:18:21'),(11369,420,2,14525,'0.99','2005-08-21 15:06:49','2006-02-15 22:18:21'),(11370,420,2,15597,'0.99','2005-08-23 06:21:20','2006-02-15 22:18:21'),(11371,421,1,507,'0.99','2005-05-28 02:31:19','2006-02-15 22:18:21'),(11372,421,1,931,'0.99','2005-05-30 12:53:01','2006-02-15 22:18:21'),(11373,421,1,1693,'4.99','2005-06-16 12:39:51','2006-02-15 22:18:21'),(11374,421,2,2407,'2.99','2005-06-18 16:50:41','2006-02-15 22:18:21'),(11375,421,1,3170,'4.99','2005-06-20 22:02:54','2006-02-15 22:18:21'),(11376,421,1,3491,'7.99','2005-07-05 23:41:08','2006-02-15 22:18:21'),(11377,421,2,3703,'5.99','2005-07-06 10:15:26','2006-02-15 22:18:21'),(11378,421,1,3988,'8.99','2005-07-06 23:30:42','2006-02-15 22:18:21'),(11379,421,2,4456,'5.99','2005-07-07 23:45:21','2006-02-15 22:18:21'),(11380,421,1,6220,'0.99','2005-07-11 13:22:06','2006-02-15 22:18:21'),(11381,421,2,6960,'3.99','2005-07-27 00:08:33','2006-02-15 22:18:21'),(11382,421,2,7449,'4.99','2005-07-27 18:17:41','2006-02-15 22:18:21'),(11383,421,2,8025,'2.99','2005-07-28 16:03:27','2006-02-15 22:18:21'),(11384,421,1,8268,'4.99','2005-07-29 01:23:23','2006-02-15 22:18:21'),(11385,421,1,8725,'4.99','2005-07-29 18:08:42','2006-02-15 22:18:22'),(11386,421,2,9377,'4.99','2005-07-30 19:12:18','2006-02-15 22:18:22'),(11387,421,2,9875,'0.99','2005-07-31 13:37:41','2006-02-15 22:18:22'),(11388,421,1,10200,'4.99','2005-08-01 00:39:05','2006-02-15 22:18:22'),(11389,421,2,11089,'2.99','2005-08-02 07:52:20','2006-02-15 22:18:22'),(11390,421,1,11263,'4.99','2005-08-02 14:02:19','2006-02-15 22:18:22'),(11391,421,1,11523,'3.99','2005-08-17 00:10:10','2006-02-15 22:18:22'),(11392,421,1,12279,'4.99','2005-08-18 04:47:30','2006-02-15 22:18:22'),(11393,421,2,13461,'9.99','2005-08-20 00:49:04','2006-02-15 22:18:22'),(11394,421,1,13872,'4.99','2005-08-20 15:10:30','2006-02-15 22:18:22'),(11395,421,1,14742,'4.99','2005-08-21 22:39:01','2006-02-15 22:18:22'),(11396,421,1,14887,'3.99','2005-08-22 04:04:31','2006-02-15 22:18:22'),(11397,421,2,15710,'0.99','2006-02-14 15:16:03','2006-02-15 22:18:22'),(11398,422,1,398,'0.99','2005-05-27 12:44:03','2006-02-15 22:18:22'),(11399,422,1,1846,'0.99','2005-06-17 00:02:44','2006-02-15 22:18:22'),(11400,422,1,1897,'4.99','2005-06-17 04:26:23','2006-02-15 22:18:22'),(11401,422,2,2747,'2.99','2005-06-19 16:22:07','2006-02-15 22:18:22'),(11402,422,1,2778,'5.99','2005-06-19 18:18:12','2006-02-15 22:18:22'),(11403,422,1,3553,'4.99','2005-07-06 02:35:41','2006-02-15 22:18:22'),(11404,422,2,4463,'2.99','2005-07-08 00:04:59','2006-02-15 22:18:23'),(11405,422,2,4504,'0.99','2005-07-08 02:19:27','2006-02-15 22:18:23'),(11406,422,1,5784,'1.99','2005-07-10 14:03:28','2006-02-15 22:18:23'),(11407,422,2,7827,'0.99','2005-07-28 08:37:22','2006-02-15 22:18:23'),(11408,422,2,8206,'4.99','2005-07-28 23:20:31','2006-02-15 22:18:23'),(11409,422,2,9541,'4.99','2005-07-31 01:40:14','2006-02-15 22:18:23'),(11410,422,2,10833,'6.99','2005-08-01 23:25:55','2006-02-15 22:18:23'),(11411,422,2,11325,'6.99','2005-08-02 16:33:11','2006-02-15 22:18:23'),(11412,422,1,11658,'2.99','2005-08-17 05:19:17','2006-02-15 22:18:23'),(11413,422,1,11842,'4.99','2005-08-17 13:13:37','2006-02-15 22:18:23'),(11414,422,1,12907,'9.99','2005-08-19 04:16:13','2006-02-15 22:18:23'),(11415,422,2,13216,'1.99','2005-08-19 15:36:05','2006-02-15 22:18:23'),(11416,422,2,13625,'1.99','2005-08-20 06:52:03','2006-02-15 22:18:23'),(11417,422,2,13709,'0.99','2005-08-20 09:34:51','2006-02-15 22:18:23'),(11418,422,2,13722,'4.99','2005-08-20 10:03:45','2006-02-15 22:18:23'),(11419,422,1,14861,'4.99','2005-08-22 02:48:05','2006-02-15 22:18:23'),(11420,422,1,15272,'3.99','2005-08-22 18:49:40','2006-02-15 22:18:23'),(11421,422,1,15273,'2.99','2005-08-22 18:53:28','2006-02-15 22:18:23'),(11422,422,2,15316,'2.99','2005-08-22 20:07:03','2006-02-15 22:18:23'),(11423,422,2,15441,'2.99','2006-02-14 15:16:03','2006-02-15 22:18:24'),(11424,423,1,1504,'3.99','2005-06-15 22:08:06','2006-02-15 22:18:24'),(11425,423,2,1827,'0.99','2005-06-16 21:54:40','2006-02-15 22:18:24'),(11426,423,1,2600,'6.99','2005-06-19 06:07:25','2006-02-15 22:18:24'),(11427,423,2,2758,'6.99','2005-06-19 17:04:35','2006-02-15 22:18:24'),(11428,423,1,3072,'8.99','2005-06-20 14:21:31','2006-02-15 22:18:24'),(11429,423,2,4105,'0.99','2005-07-07 06:31:00','2006-02-15 22:18:24'),(11430,423,1,4250,'0.99','2005-07-07 14:08:11','2006-02-15 22:18:24'),(11431,423,1,4679,'2.99','2005-07-08 10:33:14','2006-02-15 22:18:24'),(11432,423,1,6506,'1.99','2005-07-12 03:28:22','2006-02-15 22:18:24'),(11433,423,1,7016,'5.99','2005-07-27 02:15:16','2006-02-15 22:18:24'),(11434,423,2,7141,'2.99','2005-07-27 06:55:27','2006-02-15 22:18:24'),(11435,423,1,7157,'4.99','2005-07-27 07:20:28','2006-02-15 22:18:24'),(11436,423,1,7290,'0.99','2005-07-27 12:28:45','2006-02-15 22:18:24'),(11437,423,2,7539,'9.99','2005-07-27 21:39:42','2006-02-15 22:18:24'),(11438,423,1,7849,'9.99','2005-07-28 09:30:02','2006-02-15 22:18:24'),(11439,423,2,8082,'3.99','2005-07-28 18:08:02','2006-02-15 22:18:24'),(11440,423,2,8595,'9.99','2005-07-29 12:47:43','2006-02-15 22:18:24'),(11441,423,2,9026,'2.99','2005-07-30 05:55:31','2006-02-15 22:18:24'),(11442,423,1,10488,'2.99','2005-08-01 10:27:27','2006-02-15 22:18:25'),(11443,423,1,11091,'2.99','2005-08-02 07:56:41','2006-02-15 22:18:25'),(11444,423,2,11514,'4.99','2005-08-16 23:53:10','2006-02-15 22:18:25'),(11445,423,2,12806,'4.99','2005-08-19 00:37:26','2006-02-15 22:18:25'),(11446,423,2,14191,'6.99','2005-08-21 03:35:58','2006-02-15 22:18:25'),(11447,423,2,14902,'4.99','2005-08-22 04:31:50','2006-02-15 22:18:25'),(11448,423,1,15380,'0.99','2005-08-22 22:28:15','2006-02-15 22:18:25'),(11449,423,1,15755,'4.99','2005-08-23 12:46:38','2006-02-15 22:18:25'),(11450,424,2,403,'0.99','2005-05-27 13:28:52','2006-02-15 22:18:25'),(11451,424,2,3044,'4.99','2005-06-20 12:38:49','2006-02-15 22:18:25'),(11452,424,1,3166,'6.99','2005-06-20 21:32:32','2006-02-15 22:18:25'),(11453,424,2,3404,'0.99','2005-06-21 15:57:52','2006-02-15 22:18:25'),(11454,424,2,3746,'0.99','2005-07-06 12:10:51','2006-02-15 22:18:25'),(11455,424,2,4512,'0.99','2005-07-08 02:38:56','2006-02-15 22:18:25'),(11456,424,2,4559,'0.99','2005-07-08 04:56:49','2006-02-15 22:18:25'),(11457,424,2,4696,'5.99','2005-07-08 11:12:27','2006-02-15 22:18:25'),(11458,424,1,5568,'0.99','2005-07-10 03:36:56','2006-02-15 22:18:25'),(11459,424,1,5611,'3.99','2005-07-10 05:13:43','2006-02-15 22:18:25'),(11460,424,1,6589,'2.99','2005-07-12 07:06:29','2006-02-15 22:18:25'),(11461,424,1,7594,'2.99','2005-07-27 23:30:41','2006-02-15 22:18:26'),(11462,424,2,8194,'2.99','2005-07-28 22:51:44','2006-02-15 22:18:26'),(11463,424,1,8918,'4.99','2005-07-30 01:56:22','2006-02-15 22:18:26'),(11464,424,2,8964,'1.99','2005-07-30 03:49:35','2006-02-15 22:18:26'),(11465,424,2,8999,'2.99','2005-07-30 04:55:46','2006-02-15 22:18:26'),(11466,424,1,9471,'4.99','2005-07-30 23:02:36','2006-02-15 22:18:26'),(11467,424,1,9516,'8.99','2005-07-31 00:40:58','2006-02-15 22:18:26'),(11468,424,2,9878,'4.99','2005-07-31 13:42:02','2006-02-15 22:18:26'),(11469,424,1,10017,'6.99','2005-07-31 18:13:22','2006-02-15 22:18:26'),(11470,424,2,10369,'4.99','2005-08-01 06:13:44','2006-02-15 22:18:26'),(11471,424,1,10866,'2.99','2005-08-02 00:22:49','2006-02-15 22:18:26'),(11472,424,2,11374,'2.99','2005-08-02 18:14:54','2006-02-15 22:18:26'),(11473,424,2,11562,'6.99','2005-08-17 01:23:39','2006-02-15 22:18:26'),(11474,424,2,11833,'2.99','2005-08-17 13:00:33','2006-02-15 22:18:26'),(11475,424,2,12729,'0.99','2005-08-18 21:52:59','2006-02-15 22:18:26'),(11476,424,2,13793,'3.99','2005-08-20 12:22:04','2006-02-15 22:18:26'),(11477,424,2,15113,'0.99','2005-08-22 12:23:59','2006-02-15 22:18:26'),(11478,424,2,15941,'9.99','2005-08-23 18:46:44','2006-02-15 22:18:26'),(11479,424,1,15094,'0.99','2006-02-14 15:16:03','2006-02-15 22:18:27'),(11480,425,2,1098,'5.99','2005-05-31 13:51:48','2006-02-15 22:18:27'),(11481,425,1,3276,'6.99','2005-06-21 05:35:52','2006-02-15 22:18:27'),(11482,425,1,3807,'4.99','2005-07-06 15:11:44','2006-02-15 22:18:27'),(11483,425,2,4361,'2.99','2005-07-07 19:33:23','2006-02-15 22:18:27'),(11484,425,2,4362,'5.99','2005-07-07 19:35:30','2006-02-15 22:18:27'),(11485,425,2,4483,'8.99','2005-07-08 01:03:12','2006-02-15 22:18:27'),(11486,425,1,4659,'2.99','2005-07-08 09:53:28','2006-02-15 22:18:27'),(11487,425,1,4884,'7.99','2005-07-08 19:49:17','2006-02-15 22:18:27'),(11488,425,1,4939,'7.99','2005-07-08 22:35:30','2006-02-15 22:18:27'),(11489,425,2,5363,'2.99','2005-07-09 18:18:49','2006-02-15 22:18:27'),(11490,425,1,5371,'4.99','2005-07-09 18:47:48','2006-02-15 22:18:27'),(11491,425,2,6318,'2.99','2005-07-11 18:48:22','2006-02-15 22:18:27'),(11492,425,1,6603,'2.99','2005-07-12 07:52:55','2006-02-15 22:18:27'),(11493,425,1,7249,'4.99','2005-07-27 10:39:53','2006-02-15 22:18:27'),(11494,425,1,8974,'0.99','2005-07-30 04:09:16','2006-02-15 22:18:27'),(11495,425,1,9170,'0.99','2005-07-30 11:35:24','2006-02-15 22:18:27'),(11496,425,2,9682,'2.99','2005-07-31 06:47:10','2006-02-15 22:18:27'),(11497,425,1,10121,'0.99','2005-07-31 21:24:53','2006-02-15 22:18:27'),(11498,425,2,10163,'0.99','2005-07-31 23:12:34','2006-02-15 22:18:28'),(11499,425,1,10545,'0.99','2005-08-01 12:37:46','2006-02-15 22:18:28'),(11500,425,2,13040,'0.99','2005-08-19 09:04:24','2006-02-15 22:18:28'),(11501,425,2,14089,'5.99','2005-08-20 23:59:02','2006-02-15 22:18:28'),(11502,425,2,14881,'4.99','2005-08-22 03:47:39','2006-02-15 22:18:28'),(11503,425,1,15064,'0.99','2005-08-22 10:41:58','2006-02-15 22:18:28'),(11504,425,2,15784,'6.99','2005-08-23 13:46:00','2006-02-15 22:18:28'),(11505,425,2,16036,'2.99','2005-08-23 22:12:44','2006-02-15 22:18:28'),(11506,426,2,604,'0.99','2005-05-28 14:37:07','2006-02-15 22:18:28'),(11507,426,1,1709,'6.99','2005-06-16 14:10:15','2006-02-15 22:18:28'),(11508,426,1,1842,'7.99','2005-06-16 23:45:59','2006-02-15 22:18:28'),(11509,426,1,2204,'2.99','2005-06-18 02:11:38','2006-02-15 22:18:28'),(11510,426,1,2804,'0.99','2005-06-19 19:24:54','2006-02-15 22:18:28'),(11511,426,1,3243,'0.99','2005-06-21 03:00:11','2006-02-15 22:18:28'),(11512,426,2,4114,'2.99','2005-07-07 06:51:12','2006-02-15 22:18:28'),(11513,426,2,4398,'4.99','2005-07-07 21:18:44','2006-02-15 22:18:28'),(11514,426,1,4900,'4.99','2005-07-08 20:38:06','2006-02-15 22:18:28'),(11515,426,1,5725,'3.99','2005-07-10 11:21:21','2006-02-15 22:18:28'),(11516,426,1,7495,'4.99','2005-07-27 20:01:20','2006-02-15 22:18:28'),(11517,426,1,7527,'10.99','2005-07-27 21:14:28','2006-02-15 22:18:29'),(11518,426,1,7711,'4.99','2005-07-28 04:26:42','2006-02-15 22:18:29'),(11519,426,1,7789,'5.99','2005-07-28 07:22:07','2006-02-15 22:18:29'),(11520,426,1,9185,'5.99','2005-07-30 12:10:40','2006-02-15 22:18:29'),(11521,426,2,9247,'4.99','2005-07-30 14:13:56','2006-02-15 22:18:29'),(11522,426,2,10172,'10.99','2005-07-31 23:29:51','2006-02-15 22:18:29'),(11523,426,1,10505,'1.99','2005-08-01 11:13:59','2006-02-15 22:18:29'),(11524,426,2,11237,'0.99','2005-08-02 13:24:01','2006-02-15 22:18:29'),(11525,426,2,11876,'0.99','2005-08-17 14:18:21','2006-02-15 22:18:29'),(11526,426,2,11938,'6.99','2005-08-17 16:54:54','2006-02-15 22:18:29'),(11527,426,2,12548,'5.99','2005-08-18 14:35:26','2006-02-15 22:18:29'),(11528,426,2,12707,'4.99','2005-08-18 20:52:02','2006-02-15 22:18:29'),(11529,426,1,12822,'4.99','2005-08-19 01:15:24','2006-02-15 22:18:29'),(11530,426,2,13834,'2.99','2005-08-20 14:03:08','2006-02-15 22:18:29'),(11531,426,2,14151,'6.99','2005-08-21 02:23:25','2006-02-15 22:18:29'),(11532,426,2,14826,'2.99','2005-08-22 01:32:14','2006-02-15 22:18:29'),(11533,427,2,82,'6.99','2005-05-25 12:17:46','2006-02-15 22:18:29'),(11534,427,1,1342,'5.99','2005-06-15 12:26:21','2006-02-15 22:18:29'),(11535,427,2,1628,'3.99','2005-06-16 07:52:55','2006-02-15 22:18:30'),(11536,427,1,1648,'5.99','2005-06-16 09:17:07','2006-02-15 22:18:30'),(11537,427,1,1857,'1.99','2005-06-17 01:12:58','2006-02-15 22:18:30'),(11538,427,2,2466,'0.99','2005-06-18 20:18:42','2006-02-15 22:18:30'),(11539,427,1,4793,'3.99','2005-07-08 16:30:01','2006-02-15 22:18:30'),(11540,427,2,5476,'2.99','2005-07-09 23:37:09','2006-02-15 22:18:30'),(11541,427,2,5586,'5.99','2005-07-10 04:17:06','2006-02-15 22:18:30'),(11542,427,1,6423,'6.99','2005-07-11 23:47:31','2006-02-15 22:18:30'),(11543,427,1,6509,'2.99','2005-07-12 03:35:01','2006-02-15 22:18:30'),(11544,427,2,6938,'7.99','2005-07-26 23:16:04','2006-02-15 22:18:30'),(11545,427,2,8182,'3.99','2005-07-28 22:19:12','2006-02-15 22:18:30'),(11546,427,1,8531,'5.99','2005-07-29 10:26:15','2006-02-15 22:18:30'),(11547,427,2,8658,'5.99','2005-07-29 15:16:37','2006-02-15 22:18:30'),(11548,427,2,9978,'2.99','2005-07-31 16:59:51','2006-02-15 22:18:30'),(11549,427,1,10417,'4.99','2005-08-01 08:10:36','2006-02-15 22:18:30'),(11550,427,1,10464,'5.99','2005-08-01 09:43:14','2006-02-15 22:18:30'),(11551,427,2,10560,'4.99','2005-08-01 13:04:57','2006-02-15 22:18:30'),(11552,427,1,11024,'5.99','2005-08-02 05:38:31','2006-02-15 22:18:30'),(11553,427,1,13720,'1.99','2005-08-20 10:01:39','2006-02-15 22:18:30'),(11554,427,2,14201,'6.99','2005-08-21 03:51:34','2006-02-15 22:18:31'),(11555,427,1,14287,'3.99','2005-08-21 06:53:59','2006-02-15 22:18:31'),(11556,427,1,15330,'3.99','2005-08-22 20:35:30','2006-02-15 22:18:31'),(11557,428,2,634,'4.99','2005-05-28 17:40:35','2006-02-15 22:18:31'),(11558,428,1,1227,'3.99','2005-06-15 03:50:03','2006-02-15 22:18:31'),(11559,428,2,1471,'2.99','2005-06-15 20:53:26','2006-02-15 22:18:31'),(11560,428,1,1601,'3.99','2005-06-16 06:11:13','2006-02-15 22:18:31'),(11561,428,1,2677,'2.99','2005-06-19 12:01:59','2006-02-15 22:18:31'),(11562,428,2,3377,'0.99','2005-06-21 13:51:12','2006-02-15 22:18:31'),(11563,428,1,3702,'2.99','2005-07-06 10:13:56','2006-02-15 22:18:31'),(11564,428,1,3925,'5.99','2005-07-06 20:41:44','2006-02-15 22:18:31'),(11565,428,1,4151,'0.99','2005-07-07 08:49:02','2006-02-15 22:18:31'),(11566,428,1,5373,'4.99','2005-07-09 18:48:57','2006-02-15 22:18:31'),(11567,428,1,6735,'5.99','2005-07-12 14:08:20','2006-02-15 22:18:31'),(11568,428,1,7823,'6.99','2005-07-28 08:32:53','2006-02-15 22:18:31'),(11569,428,1,8155,'2.99','2005-07-28 20:57:06','2006-02-15 22:18:31'),(11570,428,2,8387,'4.99','2005-07-29 05:47:27','2006-02-15 22:18:31'),(11571,428,2,8528,'4.99','2005-07-29 10:24:22','2006-02-15 22:18:31'),(11572,428,1,9904,'5.99','2005-07-31 14:34:17','2006-02-15 22:18:31'),(11573,428,2,9982,'2.99','2005-07-31 17:09:02','2006-02-15 22:18:32'),(11574,428,2,10577,'4.99','2005-08-01 13:46:38','2006-02-15 22:18:32'),(11575,428,2,10888,'2.99','2005-08-02 00:52:45','2006-02-15 22:18:32'),(11576,428,2,11536,'0.99','2005-08-17 00:40:03','2006-02-15 22:18:32'),(11577,429,2,150,'5.99','2005-05-26 00:28:39','2006-02-15 22:18:32'),(11578,429,2,290,'2.99','2005-05-26 20:08:33','2006-02-15 22:18:32'),(11579,429,2,601,'7.99','2005-05-28 14:08:22','2006-02-15 22:18:32'),(11580,429,2,799,'4.99','2005-05-29 17:24:48','2006-02-15 22:18:32'),(11581,429,2,844,'4.99','2005-05-30 00:58:20','2006-02-15 22:18:32'),(11582,429,2,1781,'5.99','2005-06-16 19:20:24','2006-02-15 22:18:32'),(11583,429,2,1798,'2.99','2005-06-16 20:16:15','2006-02-15 22:18:32'),(11584,429,2,1916,'7.99','2005-06-17 05:29:59','2006-02-15 22:18:32'),(11585,429,1,3409,'2.99','2005-06-21 16:17:38','2006-02-15 22:18:32'),(11586,429,2,5868,'4.99','2005-07-10 18:39:16','2006-02-15 22:18:32'),(11587,429,2,6196,'7.99','2005-07-11 12:05:46','2006-02-15 22:18:32'),(11588,429,2,6886,'6.99','2005-07-12 20:58:04','2006-02-15 22:18:32'),(11589,429,1,6977,'6.99','2005-07-27 00:40:50','2006-02-15 22:18:32'),(11590,429,2,7352,'4.99','2005-07-27 14:38:29','2006-02-15 22:18:32'),(11591,429,2,8136,'1.99','2005-07-28 20:05:48','2006-02-15 22:18:33'),(11592,429,2,8143,'2.99','2005-07-28 20:23:11','2006-02-15 22:18:33'),(11593,429,2,8175,'7.99','2005-07-28 21:38:16','2006-02-15 22:18:33'),(11594,429,1,9849,'0.99','2005-07-31 12:44:34','2006-02-15 22:18:33'),(11595,429,1,12259,'2.99','2005-08-18 04:14:35','2006-02-15 22:18:33'),(11596,429,1,12953,'4.99','2005-08-19 06:04:07','2006-02-15 22:18:33'),(11597,429,2,14495,'4.99','2005-08-21 14:04:39','2006-02-15 22:18:33'),(11598,430,2,30,'2.99','2005-05-25 04:01:32','2006-02-15 22:18:33'),(11599,430,1,364,'4.99','2005-05-27 07:20:12','2006-02-15 22:18:33'),(11600,430,2,1207,'0.99','2005-06-15 02:27:08','2006-02-15 22:18:33'),(11601,430,1,1274,'2.99','2005-06-15 07:52:52','2006-02-15 22:18:33'),(11602,430,1,1538,'2.99','2005-06-16 01:05:50','2006-02-15 22:18:33'),(11603,430,1,1759,'6.99','2005-06-16 17:46:37','2006-02-15 22:18:33'),(11604,430,2,2892,'0.99','2005-06-20 02:06:39','2006-02-15 22:18:33'),(11605,430,2,3153,'0.99','2005-06-20 20:44:15','2006-02-15 22:18:33'),(11606,430,1,5002,'4.99','2005-07-09 01:17:08','2006-02-15 22:18:33'),(11607,430,1,5217,'5.99','2005-07-09 11:56:50','2006-02-15 22:18:33'),(11608,430,2,5879,'6.99','2005-07-10 19:12:47','2006-02-15 22:18:33'),(11609,430,1,5958,'6.99','2005-07-10 23:31:51','2006-02-15 22:18:33'),(11610,430,2,6043,'0.99','2005-07-11 03:18:10','2006-02-15 22:18:34'),(11611,430,1,8560,'4.99','2005-07-29 11:27:27','2006-02-15 22:18:34'),(11612,430,2,9450,'2.99','2005-07-30 22:04:04','2006-02-15 22:18:34'),(11613,430,1,12723,'0.99','2005-08-18 21:34:16','2006-02-15 22:18:34'),(11614,430,1,12965,'4.99','2005-08-19 06:33:00','2006-02-15 22:18:34'),(11615,430,1,13007,'0.99','2005-08-19 07:47:43','2006-02-15 22:18:34'),(11616,430,2,13452,'0.99','2005-08-20 00:20:07','2006-02-15 22:18:34'),(11617,430,2,13454,'2.99','2005-08-20 00:30:52','2006-02-15 22:18:34'),(11618,430,1,14058,'5.99','2005-08-20 22:24:35','2006-02-15 22:18:34'),(11619,430,1,15031,'4.99','2005-08-22 09:11:48','2006-02-15 22:18:34'),(11620,431,2,1126,'2.99','2005-05-31 17:27:45','2006-02-15 22:18:34'),(11621,431,2,1561,'2.99','2005-06-16 02:41:30','2006-02-15 22:18:34'),(11622,431,1,2096,'4.99','2005-06-17 18:33:04','2006-02-15 22:18:34'),(11623,431,1,2269,'3.99','2005-06-18 06:20:54','2006-02-15 22:18:34'),(11624,431,2,2281,'4.99','2005-06-18 06:47:29','2006-02-15 22:18:34'),(11625,431,2,2761,'2.99','2005-06-19 17:22:17','2006-02-15 22:18:34'),(11626,431,2,3304,'6.99','2005-06-21 07:43:40','2006-02-15 22:18:34'),(11627,431,2,3369,'8.99','2005-06-21 13:20:31','2006-02-15 22:18:34'),(11628,431,1,4144,'3.99','2005-07-07 08:25:44','2006-02-15 22:18:35'),(11629,431,1,4801,'2.99','2005-07-08 16:51:36','2006-02-15 22:18:35'),(11630,431,1,4863,'0.99','2005-07-08 19:03:15','2006-02-15 22:18:35'),(11631,431,2,7978,'4.99','2005-07-28 14:16:14','2006-02-15 22:18:35'),(11632,431,2,8810,'4.99','2005-07-29 21:45:19','2006-02-15 22:18:35'),(11633,431,2,10508,'0.99','2005-08-01 11:23:27','2006-02-15 22:18:35'),(11634,431,1,10527,'4.99','2005-08-01 11:55:54','2006-02-15 22:18:35'),(11635,431,2,10959,'6.99','2005-08-02 03:39:39','2006-02-15 22:18:35'),(11636,431,2,11538,'2.99','2005-08-17 00:44:04','2006-02-15 22:18:35'),(11637,431,1,12273,'6.99','2005-08-18 04:40:50','2006-02-15 22:18:35'),(11638,431,2,13153,'1.99','2005-08-19 13:09:47','2006-02-15 22:18:35'),(11639,431,1,13784,'4.99','2005-08-20 12:11:28','2006-02-15 22:18:35'),(11640,431,1,15809,'2.99','2005-08-23 14:42:07','2006-02-15 22:18:35'),(11641,431,1,15960,'2.99','2005-08-23 19:35:42','2006-02-15 22:18:35'),(11642,431,2,13587,'2.99','2006-02-14 15:16:03','2006-02-15 22:18:35'),(11643,432,2,326,'7.99','2005-05-27 01:10:11','2006-02-15 22:18:35'),(11644,432,1,550,'5.99','2005-05-28 07:39:16','2006-02-15 22:18:35'),(11645,432,1,897,'8.99','2005-05-30 09:10:01','2006-02-15 22:18:35'),(11646,432,2,1180,'5.99','2005-06-15 00:39:01','2006-02-15 22:18:35'),(11647,432,2,1597,'2.99','2005-06-16 05:47:03','2006-02-15 22:18:36'),(11648,432,2,3194,'4.99','2005-06-20 23:59:57','2006-02-15 22:18:36'),(11649,432,1,4965,'5.99','2005-07-08 23:46:57','2006-02-15 22:18:36'),(11650,432,1,4973,'4.99','2005-07-08 23:58:18','2006-02-15 22:18:36'),(11651,432,1,5204,'2.99','2005-07-09 10:54:14','2006-02-15 22:18:36'),(11652,432,1,5322,'6.99','2005-07-09 16:28:13','2006-02-15 22:18:36'),(11653,432,1,5944,'4.99','2005-07-10 22:51:44','2006-02-15 22:18:36'),(11654,432,1,5990,'4.99','2005-07-11 01:03:14','2006-02-15 22:18:36'),(11655,432,2,7326,'4.99','2005-07-27 13:50:40','2006-02-15 22:18:36'),(11656,432,2,7681,'0.99','2005-07-28 03:07:09','2006-02-15 22:18:36'),(11657,432,2,8079,'4.99','2005-07-28 17:58:36','2006-02-15 22:18:36'),(11658,432,2,8094,'6.99','2005-07-28 18:30:28','2006-02-15 22:18:36'),(11659,432,2,9916,'4.99','2005-07-31 14:54:52','2006-02-15 22:18:36'),(11660,432,2,9984,'2.99','2005-07-31 17:12:23','2006-02-15 22:18:36'),(11661,432,2,11870,'0.99','2005-08-17 14:11:28','2006-02-15 22:18:36'),(11662,432,1,12767,'6.99','2005-08-18 23:25:49','2006-02-15 22:18:36'),(11663,432,1,14027,'2.99','2005-08-20 21:21:34','2006-02-15 22:18:36'),(11664,432,1,15523,'4.99','2005-08-23 03:32:36','2006-02-15 22:18:36'),(11665,432,1,15713,'6.99','2005-08-23 10:56:15','2006-02-15 22:18:36'),(11666,433,2,146,'8.99','2005-05-26 00:07:11','2006-02-15 22:18:37'),(11667,433,1,691,'10.99','2005-05-29 01:01:26','2006-02-15 22:18:37'),(11668,433,2,4087,'6.99','2005-07-07 05:30:56','2006-02-15 22:18:37'),(11669,433,2,4158,'0.99','2005-07-07 09:05:42','2006-02-15 22:18:37'),(11670,433,2,4988,'7.99','2005-07-09 00:46:14','2006-02-15 22:18:37'),(11671,433,2,5457,'0.99','2005-07-09 22:33:14','2006-02-15 22:18:37'),(11672,433,1,5969,'8.99','2005-07-11 00:03:22','2006-02-15 22:18:37'),(11673,433,1,6765,'5.99','2005-07-12 15:30:47','2006-02-15 22:18:37'),(11674,433,1,6848,'0.99','2005-07-12 19:24:07','2006-02-15 22:18:37'),(11675,433,1,6850,'4.99','2005-07-12 19:30:42','2006-02-15 22:18:37'),(11676,433,1,7821,'4.99','2005-07-28 08:31:23','2006-02-15 22:18:37'),(11677,433,2,7907,'4.99','2005-07-28 11:32:00','2006-02-15 22:18:37'),(11678,433,1,8414,'5.99','2005-07-29 06:48:35','2006-02-15 22:18:37'),(11679,433,1,8713,'2.99','2005-07-29 17:31:19','2006-02-15 22:18:37'),(11680,433,2,9161,'4.99','2005-07-30 11:19:18','2006-02-15 22:18:37'),(11681,433,1,9294,'3.99','2005-07-30 16:14:37','2006-02-15 22:18:37'),(11682,433,1,10663,'4.99','2005-08-01 16:51:08','2006-02-15 22:18:37'),(11683,433,1,11664,'2.99','2005-08-17 05:35:52','2006-02-15 22:18:37'),(11684,433,2,12669,'6.99','2005-08-18 19:17:47','2006-02-15 22:18:38'),(11685,433,2,13273,'4.99','2005-08-19 17:49:13','2006-02-15 22:18:38'),(11686,433,1,13801,'4.99','2005-08-20 12:40:53','2006-02-15 22:18:38'),(11687,433,2,14523,'4.99','2005-08-21 15:03:45','2006-02-15 22:18:38'),(11688,433,1,14559,'6.99','2005-08-21 16:11:35','2006-02-15 22:18:38'),(11689,433,2,15476,'4.99','2005-08-23 01:45:07','2006-02-15 22:18:38'),(11690,433,1,15502,'5.99','2005-08-23 02:40:04','2006-02-15 22:18:38'),(11691,434,2,508,'5.99','2005-05-28 02:40:50','2006-02-15 22:18:38'),(11692,434,1,1225,'0.99','2005-06-15 03:45:35','2006-02-15 22:18:38'),(11693,434,2,1584,'5.99','2005-06-16 04:50:50','2006-02-15 22:18:38'),(11694,434,2,2415,'7.99','2005-06-18 17:02:42','2006-02-15 22:18:38'),(11695,434,1,2430,'3.99','2005-06-18 17:51:46','2006-02-15 22:18:38'),(11696,434,1,2494,'3.99','2005-06-18 22:15:09','2006-02-15 22:18:38'),(11697,434,1,3014,'2.99','2005-06-20 10:45:20','2006-02-15 22:18:38'),(11698,434,2,3037,'2.99','2005-06-20 12:28:03','2006-02-15 22:18:38'),(11699,434,1,4414,'2.99','2005-07-07 22:00:21','2006-02-15 22:18:38'),(11700,434,2,4654,'6.99','2005-07-08 09:48:03','2006-02-15 22:18:38'),(11701,434,2,4960,'10.99','2005-07-08 23:27:16','2006-02-15 22:18:38'),(11702,434,2,5464,'2.99','2005-07-09 22:58:14','2006-02-15 22:18:39'),(11703,434,2,6972,'0.99','2005-07-27 00:31:25','2006-02-15 22:18:39'),(11704,434,1,7260,'6.99','2005-07-27 11:09:28','2006-02-15 22:18:39'),(11705,434,2,7479,'2.99','2005-07-27 19:18:17','2006-02-15 22:18:39'),(11706,434,1,8205,'0.99','2005-07-28 23:18:48','2006-02-15 22:18:39'),(11707,434,1,9350,'4.99','2005-07-30 18:24:30','2006-02-15 22:18:39'),(11708,434,1,11242,'3.99','2005-08-02 13:32:00','2006-02-15 22:18:39'),(11709,434,1,11867,'2.99','2005-08-17 14:04:28','2006-02-15 22:18:39'),(11710,434,2,12030,'2.99','2005-08-17 20:10:48','2006-02-15 22:18:39'),(11711,434,2,12146,'2.99','2005-08-18 00:10:04','2006-02-15 22:18:39'),(11712,434,2,12624,'7.99','2005-08-18 17:35:00','2006-02-15 22:18:39'),(11713,434,2,13359,'9.99','2005-08-19 21:04:49','2006-02-15 22:18:39'),(11714,434,1,13383,'7.99','2005-08-19 21:38:44','2006-02-15 22:18:39'),(11715,434,2,14553,'4.99','2005-08-21 15:59:40','2006-02-15 22:18:39'),(11716,434,2,15016,'3.99','2005-08-22 08:47:35','2006-02-15 22:18:39'),(11717,434,2,15385,'4.99','2005-08-22 22:37:34','2006-02-15 22:18:39'),(11718,435,1,757,'7.99','2005-05-29 10:29:47','2006-02-15 22:18:39'),(11719,435,1,806,'4.99','2005-05-29 18:31:30','2006-02-15 22:18:39'),(11720,435,2,1443,'0.99','2005-06-15 18:57:51','2006-02-15 22:18:39'),(11721,435,1,2984,'0.99','2005-06-20 08:43:44','2006-02-15 22:18:40'),(11722,435,1,3690,'0.99','2005-07-06 09:46:03','2006-02-15 22:18:40'),(11723,435,1,3918,'8.99','2005-07-06 20:26:15','2006-02-15 22:18:40'),(11724,435,2,5220,'4.99','2005-07-09 11:59:04','2006-02-15 22:18:40'),(11725,435,2,6051,'4.99','2005-07-11 03:46:41','2006-02-15 22:18:40'),(11726,435,1,6935,'2.99','2005-07-26 23:13:10','2006-02-15 22:18:40'),(11727,435,1,8386,'5.99','2005-07-29 05:45:30','2006-02-15 22:18:40'),(11728,435,2,8891,'4.99','2005-07-30 00:46:55','2006-02-15 22:18:40'),(11729,435,2,9269,'0.99','2005-07-30 15:02:33','2006-02-15 22:18:40'),(11730,435,1,9655,'3.99','2005-07-31 05:57:54','2006-02-15 22:18:40'),(11731,435,2,9829,'4.99','2005-07-31 11:58:38','2006-02-15 22:18:40'),(11732,435,1,10998,'6.99','2005-08-02 04:50:55','2006-02-15 22:18:40'),(11733,435,1,11041,'2.99','2005-08-02 06:03:53','2006-02-15 22:18:40'),(11734,435,1,11786,'3.99','2005-08-17 10:57:40','2006-02-15 22:18:40'),(11735,435,1,11796,'0.99','2005-08-17 11:16:47','2006-02-15 22:18:40'),(11736,435,2,12046,'0.99','2005-08-17 20:47:46','2006-02-15 22:18:40'),(11737,435,1,12741,'4.99','2005-08-18 22:17:05','2006-02-15 22:18:40'),(11738,435,2,13208,'0.99','2005-08-19 15:18:55','2006-02-15 22:18:40'),(11739,435,1,14696,'4.99','2005-08-21 20:48:05','2006-02-15 22:18:41'),(11740,435,1,14765,'1.99','2005-08-21 23:40:28','2006-02-15 22:18:41'),(11741,435,1,14850,'0.99','2005-08-22 02:16:55','2006-02-15 22:18:41'),(11742,435,1,15136,'2.99','2005-08-22 13:19:25','2006-02-15 22:18:41'),(11743,436,1,45,'7.99','2005-05-25 05:59:39','2006-02-15 22:18:41'),(11744,436,1,256,'3.99','2005-05-26 15:20:58','2006-02-15 22:18:41'),(11745,436,1,848,'5.99','2005-05-30 01:19:53','2006-02-15 22:18:41'),(11746,436,1,2291,'9.99','2005-06-18 07:36:46','2006-02-15 22:18:41'),(11747,436,2,3851,'1.99','2005-07-06 16:54:12','2006-02-15 22:18:41'),(11748,436,2,3944,'2.99','2005-07-06 21:34:11','2006-02-15 22:18:41'),(11749,436,2,4643,'0.99','2005-07-08 09:13:56','2006-02-15 22:18:41'),(11750,436,2,4751,'2.99','2005-07-08 14:07:52','2006-02-15 22:18:41'),(11751,436,1,4782,'4.99','2005-07-08 16:08:51','2006-02-15 22:18:41'),(11752,436,1,5959,'0.99','2005-07-10 23:35:36','2006-02-15 22:18:41'),(11753,436,1,7593,'4.99','2005-07-27 23:28:47','2006-02-15 22:18:41'),(11754,436,2,8027,'5.99','2005-07-28 16:09:57','2006-02-15 22:18:41'),(11755,436,2,8097,'9.99','2005-07-28 18:32:49','2006-02-15 22:18:41'),(11756,436,1,9345,'9.99','2005-07-30 18:13:51','2006-02-15 22:18:41'),(11757,436,1,9539,'0.99','2005-07-31 01:36:19','2006-02-15 22:18:42'),(11758,436,1,9638,'5.99','2005-07-31 05:30:27','2006-02-15 22:18:42'),(11759,436,2,10216,'3.99','2005-08-01 01:06:27','2006-02-15 22:18:42'),(11760,436,2,11160,'0.99','2005-08-02 10:05:30','2006-02-15 22:18:42'),(11761,436,1,11580,'2.99','2005-08-17 01:59:07','2006-02-15 22:18:42'),(11762,436,2,11615,'4.99','2005-08-17 03:54:35','2006-02-15 22:18:42'),(11763,436,2,11896,'5.99','2005-08-17 15:19:54','2006-02-15 22:18:42'),(11764,436,2,12297,'0.99','2005-08-18 05:19:57','2006-02-15 22:18:42'),(11765,436,2,12429,'6.99','2005-08-18 10:26:46','2006-02-15 22:18:42'),(11766,436,2,13099,'9.99','2005-08-19 10:55:19','2006-02-15 22:18:42'),(11767,436,2,13382,'7.99','2005-08-19 21:38:41','2006-02-15 22:18:42'),(11768,436,1,13533,'3.99','2005-08-20 03:30:00','2006-02-15 22:18:42'),(11769,436,1,13760,'5.99','2005-08-20 11:26:33','2006-02-15 22:18:42'),(11770,436,1,13814,'0.99','2005-08-20 13:07:23','2006-02-15 22:18:42'),(11771,436,2,13826,'2.99','2005-08-20 13:46:38','2006-02-15 22:18:42'),(11772,436,2,15766,'4.99','2005-08-23 13:10:16','2006-02-15 22:18:42'),(11773,437,1,192,'2.99','2005-05-26 06:20:37','2006-02-15 22:18:42'),(11774,437,2,656,'4.99','2005-05-28 20:18:24','2006-02-15 22:18:42'),(11775,437,1,666,'5.99','2005-05-28 21:48:51','2006-02-15 22:18:42'),(11776,437,2,2239,'5.99','2005-06-18 04:23:54','2006-02-15 22:18:43'),(11777,437,1,2792,'2.99','2005-06-19 18:52:25','2006-02-15 22:18:43'),(11778,437,2,3265,'2.99','2005-06-21 04:23:13','2006-02-15 22:18:43'),(11779,437,1,3747,'4.99','2005-07-06 12:11:14','2006-02-15 22:18:43'),(11780,437,2,4765,'4.99','2005-07-08 15:08:45','2006-02-15 22:18:43'),(11781,437,2,5085,'4.99','2005-07-09 05:36:49','2006-02-15 22:18:43'),(11782,437,1,5167,'1.99','2005-07-09 09:18:43','2006-02-15 22:18:43'),(11783,437,2,5744,'2.99','2005-07-10 12:08:33','2006-02-15 22:18:43'),(11784,437,2,5864,'6.99','2005-07-10 18:29:57','2006-02-15 22:18:43'),(11785,437,2,8215,'2.99','2005-07-28 23:43:56','2006-02-15 22:18:43'),(11786,437,2,9172,'2.99','2005-07-30 11:36:38','2006-02-15 22:18:43'),(11787,437,2,9333,'2.99','2005-07-30 17:53:45','2006-02-15 22:18:43'),(11788,437,2,10009,'8.99','2005-07-31 18:00:28','2006-02-15 22:18:43'),(11789,437,2,10249,'0.99','2005-08-01 02:35:39','2006-02-15 22:18:43'),(11790,437,2,11417,'3.99','2005-08-02 19:44:46','2006-02-15 22:18:43'),(11791,437,1,12205,'8.99','2005-08-18 02:21:08','2006-02-15 22:18:43'),(11792,437,2,13838,'7.99','2005-08-20 14:22:46','2006-02-15 22:18:43'),(11793,437,1,13839,'2.99','2005-08-20 14:23:16','2006-02-15 22:18:43'),(11794,437,1,13905,'1.99','2005-08-20 16:12:48','2006-02-15 22:18:44'),(11795,437,1,14993,'1.99','2005-08-22 07:52:18','2006-02-15 22:18:44'),(11796,438,2,23,'4.99','2005-05-25 02:40:21','2006-02-15 22:18:44'),(11797,438,2,1036,'0.99','2005-05-31 05:21:10','2006-02-15 22:18:44'),(11798,438,1,1138,'6.99','2005-05-31 19:30:27','2006-02-15 22:18:44'),(11799,438,1,1431,'4.99','2005-06-15 18:26:29','2006-02-15 22:18:44'),(11800,438,2,1779,'0.99','2005-06-16 18:55:11','2006-02-15 22:18:44'),(11801,438,2,2206,'0.99','2005-06-18 02:14:45','2006-02-15 22:18:44'),(11802,438,1,2591,'4.99','2005-06-19 05:32:22','2006-02-15 22:18:44'),(11803,438,1,3315,'4.99','2005-06-21 08:17:04','2006-02-15 22:18:44'),(11804,438,2,3368,'0.99','2005-06-21 13:18:38','2006-02-15 22:18:44'),(11805,438,1,4355,'4.99','2005-07-07 19:21:19','2006-02-15 22:18:44'),(11806,438,2,4446,'2.99','2005-07-07 23:12:16','2006-02-15 22:18:44'),(11807,438,2,5316,'4.99','2005-07-09 16:09:42','2006-02-15 22:18:44'),(11808,438,2,5426,'4.99','2005-07-09 21:04:47','2006-02-15 22:18:44'),(11809,438,1,5870,'2.99','2005-07-10 18:40:25','2006-02-15 22:18:44'),(11810,438,2,6138,'4.99','2005-07-11 08:36:04','2006-02-15 22:18:44'),(11811,438,1,6563,'3.99','2005-07-12 05:34:09','2006-02-15 22:18:44'),(11812,438,2,6615,'4.99','2005-07-12 08:36:22','2006-02-15 22:18:45'),(11813,438,2,7357,'1.99','2005-07-27 14:48:31','2006-02-15 22:18:45'),(11814,438,2,7374,'8.99','2005-07-27 15:20:57','2006-02-15 22:18:45'),(11815,438,1,7598,'0.99','2005-07-27 23:36:01','2006-02-15 22:18:45'),(11816,438,2,8547,'2.99','2005-07-29 11:10:15','2006-02-15 22:18:45'),(11817,438,1,9082,'3.99','2005-07-30 08:11:22','2006-02-15 22:18:45'),(11818,438,2,9782,'0.99','2005-07-31 10:14:26','2006-02-15 22:18:45'),(11819,438,1,10512,'6.99','2005-08-01 11:36:19','2006-02-15 22:18:45'),(11820,438,1,10607,'4.99','2005-08-01 14:44:43','2006-02-15 22:18:45'),(11821,438,2,11644,'4.99','2005-08-17 04:49:46','2006-02-15 22:18:45'),(11822,438,2,11933,'4.99','2005-08-17 16:38:20','2006-02-15 22:18:45'),(11823,438,2,12654,'0.99','2005-08-18 18:56:40','2006-02-15 22:18:45'),(11824,438,2,13319,'7.99','2005-08-19 19:35:13','2006-02-15 22:18:45'),(11825,438,1,13414,'4.99','2005-08-19 22:47:34','2006-02-15 22:18:45'),(11826,438,2,14582,'5.99','2005-08-21 17:08:33','2006-02-15 22:18:45'),(11827,438,2,15893,'5.99','2005-08-23 17:02:00','2006-02-15 22:18:45'),(11828,438,2,12524,'0.99','2006-02-14 15:16:03','2006-02-15 22:18:45'),(11829,439,1,126,'2.99','2005-05-25 21:07:59','2006-02-15 22:18:45'),(11830,439,2,367,'0.99','2005-05-27 07:37:02','2006-02-15 22:18:46'),(11831,439,1,786,'9.99','2005-05-29 15:17:28','2006-02-15 22:18:46'),(11832,439,1,1264,'4.99','2005-06-15 06:59:39','2006-02-15 22:18:46'),(11833,439,2,1557,'0.99','2005-06-16 02:28:35','2006-02-15 22:18:46'),(11834,439,2,2097,'4.99','2005-06-17 18:40:04','2006-02-15 22:18:46'),(11835,439,1,2621,'2.99','2005-06-19 08:07:31','2006-02-15 22:18:46'),(11836,439,1,2992,'2.99','2005-06-20 09:11:51','2006-02-15 22:18:46'),(11837,439,1,3294,'6.99','2005-06-21 07:03:23','2006-02-15 22:18:46'),(11838,439,2,3774,'5.99','2005-07-06 13:25:07','2006-02-15 22:18:46'),(11839,439,1,4528,'2.99','2005-07-08 03:24:54','2006-02-15 22:18:46'),(11840,439,1,4813,'4.99','2005-07-08 17:09:56','2006-02-15 22:18:46'),(11841,439,2,5801,'5.99','2005-07-10 14:59:05','2006-02-15 22:18:46'),(11842,439,1,5893,'2.99','2005-07-10 20:05:30','2006-02-15 22:18:46'),(11843,439,1,6577,'2.99','2005-07-12 06:15:05','2006-02-15 22:18:46'),(11844,439,2,6672,'2.99','2005-07-12 11:49:16','2006-02-15 22:18:46'),(11845,439,1,8343,'2.99','2005-07-29 04:45:16','2006-02-15 22:18:46'),(11846,439,1,8624,'2.99','2005-07-29 13:55:36','2006-02-15 22:18:46'),(11847,439,2,8703,'2.99','2005-07-29 17:12:44','2006-02-15 22:18:46'),(11848,439,1,9275,'0.99','2005-07-30 15:09:15','2006-02-15 22:18:46'),(11849,439,1,9322,'6.99','2005-07-30 17:21:39','2006-02-15 22:18:47'),(11850,439,2,10744,'1.99','2005-08-01 19:56:49','2006-02-15 22:18:47'),(11851,439,1,10905,'2.99','2005-08-02 01:45:59','2006-02-15 22:18:47'),(11852,439,2,11042,'6.99','2005-08-02 06:04:33','2006-02-15 22:18:47'),(11853,439,2,11544,'5.99','2005-08-17 00:55:07','2006-02-15 22:18:47'),(11854,439,1,11989,'2.99','2005-08-17 18:23:58','2006-02-15 22:18:47'),(11855,439,1,12621,'2.99','2005-08-18 17:31:36','2006-02-15 22:18:47'),(11856,439,2,12755,'5.99','2005-08-18 22:38:47','2006-02-15 22:18:47'),(11857,439,2,12826,'3.99','2005-08-19 01:25:11','2006-02-15 22:18:47'),(11858,439,2,13358,'4.99','2005-08-19 21:04:20','2006-02-15 22:18:47'),(11859,439,2,14730,'5.99','2005-08-21 22:21:11','2006-02-15 22:18:47'),(11860,439,2,15044,'9.99','2005-08-22 09:51:54','2006-02-15 22:18:47'),(11861,439,2,15162,'4.99','2005-08-22 14:41:05','2006-02-15 22:18:47'),(11862,439,2,15653,'4.99','2005-08-23 08:34:42','2006-02-15 22:18:47'),(11863,439,1,15818,'1.99','2005-08-23 14:59:58','2006-02-15 22:18:47'),(11864,439,1,16018,'0.99','2005-08-23 21:27:35','2006-02-15 22:18:47'),(11865,440,2,957,'4.99','2005-05-30 17:53:29','2006-02-15 22:18:47'),(11866,440,1,4301,'2.99','2005-07-07 16:37:23','2006-02-15 22:18:47'),(11867,440,1,4946,'7.99','2005-07-08 22:46:23','2006-02-15 22:18:48'),(11868,440,2,5423,'2.99','2005-07-09 20:56:48','2006-02-15 22:18:48'),(11869,440,2,5594,'0.99','2005-07-10 04:33:36','2006-02-15 22:18:48'),(11870,440,2,5731,'2.99','2005-07-10 11:31:52','2006-02-15 22:18:48'),(11871,440,2,5782,'0.99','2005-07-10 13:52:56','2006-02-15 22:18:48'),(11872,440,2,7585,'4.99','2005-07-27 23:18:22','2006-02-15 22:18:48'),(11873,440,1,7614,'0.99','2005-07-28 00:14:38','2006-02-15 22:18:48'),(11874,440,1,7806,'9.99','2005-07-28 07:58:17','2006-02-15 22:18:48'),(11875,440,1,9001,'4.99','2005-07-30 04:59:41','2006-02-15 22:18:48'),(11876,440,1,9195,'2.99','2005-07-30 12:29:43','2006-02-15 22:18:48'),(11877,440,1,9547,'4.99','2005-07-31 01:52:34','2006-02-15 22:18:48'),(11878,440,2,12403,'6.99','2005-08-18 09:31:05','2006-02-15 22:18:48'),(11879,440,1,12850,'0.99','2005-08-19 02:08:06','2006-02-15 22:18:48'),(11880,440,2,13384,'4.99','2005-08-19 21:38:51','2006-02-15 22:18:48'),(11881,440,2,13779,'2.99','2005-08-20 12:03:54','2006-02-15 22:18:48'),(11882,440,1,14555,'0.99','2005-08-21 16:03:02','2006-02-15 22:18:48'),(11883,440,2,14863,'7.99','2005-08-22 02:57:04','2006-02-15 22:18:48'),(11884,440,2,15264,'0.99','2005-08-22 18:27:38','2006-02-15 22:18:48'),(11885,440,1,15925,'4.99','2005-08-23 18:15:06','2006-02-15 22:18:49'),(11886,440,1,13106,'4.99','2006-02-14 15:16:03','2006-02-15 22:18:49'),(11887,441,1,823,'4.99','2005-05-29 21:39:37','2006-02-15 22:18:49'),(11888,441,1,1602,'4.99','2005-06-16 06:12:40','2006-02-15 22:18:49'),(11889,441,2,2328,'4.99','2005-06-18 10:17:21','2006-02-15 22:18:49'),(11890,441,2,3629,'0.99','2005-07-06 06:23:22','2006-02-15 22:18:49'),(11891,441,2,3695,'2.99','2005-07-06 10:02:08','2006-02-15 22:18:49'),(11892,441,1,4084,'8.99','2005-07-07 05:16:00','2006-02-15 22:18:49'),(11893,441,2,4208,'0.99','2005-07-07 11:34:22','2006-02-15 22:18:49'),(11894,441,2,5129,'2.99','2005-07-09 07:28:33','2006-02-15 22:18:49'),(11895,441,1,5811,'0.99','2005-07-10 15:27:04','2006-02-15 22:18:49'),(11896,441,2,6636,'2.99','2005-07-12 09:49:46','2006-02-15 22:18:49'),(11897,441,1,6642,'4.99','2005-07-12 10:37:52','2006-02-15 22:18:49'),(11898,441,1,6941,'5.99','2005-07-26 23:18:49','2006-02-15 22:18:49'),(11899,441,2,8237,'2.99','2005-07-29 00:29:56','2006-02-15 22:18:49'),(11900,441,1,8281,'0.99','2005-07-29 01:46:00','2006-02-15 22:18:49'),(11901,441,1,8427,'4.99','2005-07-29 07:08:36','2006-02-15 22:18:49'),(11902,441,1,8575,'4.99','2005-07-29 11:52:47','2006-02-15 22:18:49'),(11903,441,2,8617,'4.99','2005-07-29 13:46:14','2006-02-15 22:18:49'),(11904,441,2,9644,'10.99','2005-07-31 05:40:35','2006-02-15 22:18:50'),(11905,441,2,9854,'2.99','2005-07-31 12:59:34','2006-02-15 22:18:50'),(11906,441,2,10139,'1.99','2005-07-31 22:02:20','2006-02-15 22:18:50'),(11907,441,1,10846,'1.99','2005-08-01 23:47:54','2006-02-15 22:18:50'),(11908,441,2,11247,'1.99','2005-08-02 13:34:08','2006-02-15 22:18:50'),(11909,441,2,13483,'2.99','2005-08-20 01:16:38','2006-02-15 22:18:50'),(11910,441,2,13739,'4.99','2005-08-20 10:45:10','2006-02-15 22:18:50'),(11911,441,1,13932,'4.99','2005-08-20 17:17:00','2006-02-15 22:18:50'),(11912,441,2,14796,'4.99','2005-08-22 00:40:49','2006-02-15 22:18:50'),(11913,441,2,15070,'3.99','2005-08-22 10:55:45','2006-02-15 22:18:50'),(11914,441,1,14878,'4.99','2006-02-14 15:16:03','2006-02-15 22:18:50'),(11915,442,2,466,'0.99','2005-05-27 20:57:07','2006-02-15 22:18:50'),(11916,442,2,558,'6.99','2005-05-28 08:38:43','2006-02-15 22:18:50'),(11917,442,1,632,'5.99','2005-05-28 17:37:50','2006-02-15 22:18:50'),(11918,442,1,1251,'5.99','2005-06-15 05:58:55','2006-02-15 22:18:50'),(11919,442,2,1358,'0.99','2005-06-15 13:28:48','2006-02-15 22:18:50'),(11920,442,2,1576,'8.99','2005-06-16 03:54:39','2006-02-15 22:18:50'),(11921,442,1,1774,'2.99','2005-06-16 18:27:52','2006-02-15 22:18:51'),(11922,442,2,3545,'4.99','2005-07-06 02:16:17','2006-02-15 22:18:51'),(11923,442,1,3661,'2.99','2005-07-06 08:10:02','2006-02-15 22:18:51'),(11924,442,1,4052,'5.99','2005-07-07 03:38:22','2006-02-15 22:18:51'),(11925,442,1,4058,'2.99','2005-07-07 04:02:50','2006-02-15 22:18:51'),(11926,442,2,4365,'2.99','2005-07-07 19:47:46','2006-02-15 22:18:51'),(11927,442,2,4577,'3.99','2005-07-08 05:59:00','2006-02-15 22:18:51'),(11928,442,2,6590,'4.99','2005-07-12 07:08:21','2006-02-15 22:18:51'),(11929,442,2,6632,'2.99','2005-07-12 09:33:10','2006-02-15 22:18:51'),(11930,442,2,7427,'2.99','2005-07-27 17:20:16','2006-02-15 22:18:51'),(11931,442,1,7460,'0.99','2005-07-27 18:41:35','2006-02-15 22:18:51'),(11932,442,1,7671,'2.99','2005-07-28 02:48:31','2006-02-15 22:18:51'),(11933,442,1,8044,'2.99','2005-07-28 16:49:12','2006-02-15 22:18:51'),(11934,442,1,8758,'4.99','2005-07-29 19:20:49','2006-02-15 22:18:51'),(11935,442,1,9180,'4.99','2005-07-30 12:03:15','2006-02-15 22:18:51'),(11936,442,2,9873,'5.99','2005-07-31 13:32:18','2006-02-15 22:18:51'),(11937,442,1,10034,'2.99','2005-07-31 18:45:30','2006-02-15 22:18:51'),(11938,442,2,10365,'6.99','2005-08-01 06:08:44','2006-02-15 22:18:51'),(11939,442,2,10452,'0.99','2005-08-01 09:11:36','2006-02-15 22:18:51'),(11940,442,1,12948,'0.99','2005-08-19 05:55:14','2006-02-15 22:18:52'),(11941,442,2,13004,'0.99','2005-08-19 07:40:08','2006-02-15 22:18:52'),(11942,442,1,13155,'7.99','2005-08-19 13:10:23','2006-02-15 22:18:52'),(11943,442,2,14199,'0.99','2005-08-21 03:48:43','2006-02-15 22:18:52'),(11944,442,1,14418,'1.99','2005-08-21 11:14:26','2006-02-15 22:18:52'),(11945,442,1,14466,'0.99','2005-08-21 13:03:13','2006-02-15 22:18:52'),(11946,442,2,15207,'2.99','2005-08-22 16:35:25','2006-02-15 22:18:52'),(11947,443,2,1068,'4.99','2005-05-31 09:32:15','2006-02-15 22:18:52'),(11948,443,1,2871,'2.99','2005-06-20 00:27:49','2006-02-15 22:18:52'),(11949,443,2,3510,'5.99','2005-07-06 00:27:41','2006-02-15 22:18:52'),(11950,443,2,6625,'5.99','2005-07-12 09:06:40','2006-02-15 22:18:52'),(11951,443,1,6913,'4.99','2005-07-12 22:18:12','2006-02-15 22:18:52'),(11952,443,2,6983,'2.99','2005-07-27 00:55:03','2006-02-15 22:18:52'),(11953,443,1,7317,'2.99','2005-07-27 13:19:41','2006-02-15 22:18:52'),(11954,443,1,7667,'8.99','2005-07-28 02:37:22','2006-02-15 22:18:52'),(11955,443,1,7987,'9.99','2005-07-28 14:36:52','2006-02-15 22:18:52'),(11956,443,2,9740,'1.99','2005-07-31 09:08:03','2006-02-15 22:18:52'),(11957,443,1,10014,'4.99','2005-07-31 18:10:56','2006-02-15 22:18:52'),(11958,443,2,10081,'5.99','2005-07-31 20:07:44','2006-02-15 22:18:53'),(11959,443,2,10360,'0.99','2005-08-01 05:52:53','2006-02-15 22:18:53'),(11960,443,1,11449,'4.99','2005-08-02 20:44:43','2006-02-15 22:18:53'),(11961,443,1,12415,'4.99','2005-08-18 09:54:01','2006-02-15 22:18:53'),(11962,443,2,12857,'4.99','2005-08-19 02:20:13','2006-02-15 22:18:53'),(11963,443,1,13489,'2.99','2005-08-20 01:29:06','2006-02-15 22:18:53'),(11964,443,1,14561,'2.99','2005-08-21 16:20:43','2006-02-15 22:18:53'),(11965,443,2,14611,'6.99','2005-08-21 18:01:41','2006-02-15 22:18:53'),(11966,443,1,15182,'0.99','2005-08-22 15:47:05','2006-02-15 22:18:53'),(11967,443,2,15393,'4.99','2005-08-22 23:04:09','2006-02-15 22:18:53'),(11968,443,1,15519,'0.99','2005-08-23 03:23:32','2006-02-15 22:18:53'),(11969,444,1,201,'8.99','2005-05-26 07:13:45','2006-02-15 22:18:53'),(11970,444,1,557,'0.99','2005-05-28 08:36:22','2006-02-15 22:18:53'),(11971,444,1,1239,'0.99','2005-06-15 04:53:01','2006-02-15 22:18:53'),(11972,444,2,1397,'3.99','2005-06-15 16:25:26','2006-02-15 22:18:53'),(11973,444,2,1441,'1.99','2005-06-15 18:54:21','2006-02-15 22:18:53'),(11974,444,1,2551,'4.99','2005-06-19 02:51:04','2006-02-15 22:18:53'),(11975,444,2,3301,'7.99','2005-06-21 07:32:25','2006-02-15 22:18:53'),(11976,444,2,3415,'5.99','2005-06-21 16:59:49','2006-02-15 22:18:54'),(11977,444,2,3498,'4.99','2005-07-06 00:02:08','2006-02-15 22:18:54'),(11978,444,1,3539,'0.99','2005-07-06 01:39:08','2006-02-15 22:18:54'),(11979,444,2,4648,'6.99','2005-07-08 09:31:27','2006-02-15 22:18:54'),(11980,444,1,5753,'2.99','2005-07-10 12:29:43','2006-02-15 22:18:54'),(11981,444,2,5825,'2.99','2005-07-10 16:20:30','2006-02-15 22:18:54'),(11982,444,2,6285,'2.99','2005-07-11 16:52:07','2006-02-15 22:18:54'),(11983,444,2,7679,'3.99','2005-07-28 02:58:39','2006-02-15 22:18:54'),(11984,444,2,9634,'1.99','2005-07-31 05:06:02','2006-02-15 22:18:54'),(11985,444,1,10529,'4.99','2005-08-01 12:00:02','2006-02-15 22:18:54'),(11986,444,1,10693,'4.99','2005-08-01 18:14:14','2006-02-15 22:18:54'),(11987,444,2,11353,'0.99','2005-08-02 17:34:45','2006-02-15 22:18:54'),(11988,444,2,11419,'6.99','2005-08-02 19:46:38','2006-02-15 22:18:54'),(11989,444,1,11728,'4.99','2005-08-17 08:12:26','2006-02-15 22:18:54'),(11990,444,1,12161,'6.99','2005-08-18 00:41:46','2006-02-15 22:18:54'),(11991,444,2,12712,'2.99','2005-08-18 21:04:13','2006-02-15 22:18:54'),(11992,444,2,12946,'2.99','2005-08-19 05:53:34','2006-02-15 22:18:54'),(11993,444,1,13488,'0.99','2005-08-20 01:28:42','2006-02-15 22:18:54'),(11994,444,2,13559,'2.99','2005-08-20 04:16:07','2006-02-15 22:18:55'),(11995,444,1,13924,'0.99','2005-08-20 17:05:18','2006-02-15 22:18:55'),(11996,444,1,15249,'4.99','2005-08-22 17:58:27','2006-02-15 22:18:55'),(11997,444,1,15557,'0.99','2005-08-23 04:52:17','2006-02-15 22:18:55'),(11998,444,2,15815,'4.99','2005-08-23 14:55:47','2006-02-15 22:18:55'),(11999,445,1,481,'2.99','2005-05-27 22:49:27','2006-02-15 22:18:55'),(12000,445,1,960,'2.99','2005-05-30 18:13:23','2006-02-15 22:18:55'),(12001,445,1,4041,'0.99','2005-07-07 03:03:33','2006-02-15 22:18:55'),(12002,445,1,4193,'0.99','2005-07-07 10:57:21','2006-02-15 22:18:55'),(12003,445,2,5225,'2.99','2005-07-09 12:10:16','2006-02-15 22:18:55'),(12004,445,1,6346,'0.99','2005-07-11 20:08:34','2006-02-15 22:18:55'),(12005,445,2,7351,'2.99','2005-07-27 14:37:36','2006-02-15 22:18:55'),(12006,445,2,7971,'4.99','2005-07-28 14:00:47','2006-02-15 22:18:55'),(12007,445,1,8851,'8.99','2005-07-29 23:26:19','2006-02-15 22:18:55'),(12008,445,2,8911,'0.99','2005-07-30 01:30:57','2006-02-15 22:18:55'),(12009,445,2,9625,'4.99','2005-07-31 04:30:48','2006-02-15 22:18:55'),(12010,445,1,10007,'0.99','2005-07-31 17:54:58','2006-02-15 22:18:55'),(12011,445,2,10334,'1.99','2005-08-01 04:58:42','2006-02-15 22:18:56'),(12012,445,2,10341,'0.99','2005-08-01 05:10:02','2006-02-15 22:18:56'),(12013,445,2,10936,'9.99','2005-08-02 02:55:04','2006-02-15 22:18:56'),(12014,445,1,11383,'7.99','2005-08-02 18:22:05','2006-02-15 22:18:56'),(12015,445,1,11868,'4.99','2005-08-17 14:05:34','2006-02-15 22:18:56'),(12016,445,1,11877,'3.99','2005-08-17 14:21:11','2006-02-15 22:18:56'),(12017,445,2,13586,'0.99','2005-08-20 05:40:33','2006-02-15 22:18:56'),(12018,445,1,14612,'6.99','2005-08-21 18:03:15','2006-02-15 22:18:56'),(12019,445,2,14673,'2.99','2005-08-21 20:01:18','2006-02-15 22:18:56'),(12020,445,1,14866,'6.99','2005-08-22 03:11:35','2006-02-15 22:18:56'),(12021,445,1,14955,'4.99','2005-08-22 06:25:52','2006-02-15 22:18:56'),(12022,445,1,15123,'3.99','2005-08-22 12:48:44','2006-02-15 22:18:56'),(12023,445,1,15791,'6.99','2005-08-23 14:02:13','2006-02-15 22:18:56'),(12024,445,2,15906,'2.99','2005-08-23 17:36:00','2006-02-15 22:18:56'),(12025,446,2,14,'0.99','2005-05-25 00:31:15','2006-02-15 22:18:56'),(12026,446,1,236,'0.99','2005-05-26 11:53:49','2006-02-15 22:18:56'),(12027,446,1,355,'4.99','2005-05-27 06:15:33','2006-02-15 22:18:56'),(12028,446,1,2248,'4.99','2005-06-18 04:59:48','2006-02-15 22:18:56'),(12029,446,2,2335,'3.99','2005-06-18 10:59:36','2006-02-15 22:18:57'),(12030,446,2,2520,'6.99','2005-06-19 00:29:00','2006-02-15 22:18:57'),(12031,446,2,2710,'0.99','2005-06-19 14:03:56','2006-02-15 22:18:57'),(12032,446,1,3060,'2.99','2005-06-20 13:47:20','2006-02-15 22:18:57'),(12033,446,2,3168,'0.99','2005-06-20 21:46:01','2006-02-15 22:18:57'),(12034,446,2,4358,'4.99','2005-07-07 19:27:04','2006-02-15 22:18:57'),(12035,446,2,5393,'4.99','2005-07-09 19:35:12','2006-02-15 22:18:57'),(12036,446,2,5409,'2.99','2005-07-09 20:17:19','2006-02-15 22:18:57'),(12037,446,2,6454,'0.99','2005-07-12 01:00:12','2006-02-15 22:18:57'),(12038,446,1,6510,'4.99','2005-07-12 03:35:39','2006-02-15 22:18:57'),(12039,446,1,6535,'0.99','2005-07-12 04:43:43','2006-02-15 22:18:57'),(12040,446,1,6734,'6.99','2005-07-12 14:04:24','2006-02-15 22:18:57'),(12041,446,1,7005,'5.99','2005-07-27 01:38:36','2006-02-15 22:18:57'),(12042,446,2,7089,'0.99','2005-07-27 04:43:42','2006-02-15 22:18:57'),(12043,446,1,7576,'4.99','2005-07-27 22:54:35','2006-02-15 22:18:57'),(12044,446,2,8284,'6.99','2005-07-29 01:56:40','2006-02-15 22:18:57'),(12045,446,1,8309,'4.99','2005-07-29 03:22:20','2006-02-15 22:18:57'),(12046,446,2,8670,'4.99','2005-07-29 15:49:03','2006-02-15 22:18:57'),(12047,446,2,8691,'0.99','2005-07-29 16:41:23','2006-02-15 22:18:58'),(12048,446,2,8922,'9.99','2005-07-30 02:08:25','2006-02-15 22:18:58'),(12049,446,1,8923,'3.99','2005-07-30 02:08:49','2006-02-15 22:18:58'),(12050,446,1,9116,'0.99','2005-07-30 09:19:41','2006-02-15 22:18:58'),(12051,446,1,11051,'3.99','2005-08-02 06:23:39','2006-02-15 22:18:58'),(12052,446,2,12253,'0.99','2005-08-18 04:00:50','2006-02-15 22:18:58'),(12053,446,2,12480,'8.99','2005-08-18 12:26:43','2006-02-15 22:18:58'),(12054,446,1,15808,'1.99','2005-08-23 14:38:37','2006-02-15 22:18:58'),(12055,446,2,15951,'0.99','2005-08-23 19:10:32','2006-02-15 22:18:58'),(12056,447,1,461,'2.99','2005-05-27 20:08:55','2006-02-15 22:18:58'),(12057,447,2,732,'0.99','2005-05-29 07:32:51','2006-02-15 22:18:58'),(12058,447,2,1230,'0.99','2005-06-15 04:04:09','2006-02-15 22:18:58'),(12059,447,2,1890,'2.99','2005-06-17 04:06:13','2006-02-15 22:18:58'),(12060,447,1,2025,'4.99','2005-06-17 13:04:00','2006-02-15 22:18:58'),(12061,447,2,2285,'4.99','2005-06-18 07:00:54','2006-02-15 22:18:58'),(12062,447,2,4403,'4.99','2005-07-07 21:29:40','2006-02-15 22:18:58'),(12063,447,1,4858,'6.99','2005-07-08 18:53:24','2006-02-15 22:18:58'),(12064,447,1,5331,'4.99','2005-07-09 16:54:06','2006-02-15 22:18:58'),(12065,447,1,5734,'0.99','2005-07-10 11:37:28','2006-02-15 22:18:59'),(12066,447,2,5987,'2.99','2005-07-11 00:55:31','2006-02-15 22:18:59'),(12067,447,1,6651,'0.99','2005-07-12 10:57:28','2006-02-15 22:18:59'),(12068,447,1,6690,'1.99','2005-07-12 12:23:02','2006-02-15 22:18:59'),(12069,447,1,8537,'8.99','2005-07-29 10:44:54','2006-02-15 22:18:59'),(12070,447,2,8945,'4.99','2005-07-30 03:11:48','2006-02-15 22:18:59'),(12071,447,2,9076,'5.99','2005-07-30 07:58:12','2006-02-15 22:18:59'),(12072,447,1,9288,'6.99','2005-07-30 15:56:39','2006-02-15 22:18:59'),(12073,447,1,10425,'2.99','2005-08-01 08:23:25','2006-02-15 22:18:59'),(12074,447,2,10957,'5.99','2005-08-02 03:33:30','2006-02-15 22:18:59'),(12075,447,2,11108,'0.99','2005-08-02 08:20:01','2006-02-15 22:18:59'),(12076,447,1,11465,'5.99','2005-08-02 21:43:52','2006-02-15 22:18:59'),(12077,447,2,12511,'0.99','2005-08-18 13:23:19','2006-02-15 22:18:59'),(12078,447,1,13072,'2.99','2005-08-19 10:03:30','2006-02-15 22:18:59'),(12079,447,2,13110,'0.99','2005-08-19 11:24:37','2006-02-15 22:18:59'),(12080,447,1,13848,'4.99','2005-08-20 14:37:49','2006-02-15 22:18:59'),(12081,447,2,14443,'5.99','2005-08-21 12:06:32','2006-02-15 22:18:59'),(12082,447,1,15108,'2.99','2005-08-22 12:10:07','2006-02-15 22:18:59'),(12083,447,1,15997,'4.99','2005-08-23 20:40:31','2006-02-15 22:19:00'),(12084,447,2,16032,'4.99','2005-08-23 21:59:57','2006-02-15 22:19:00'),(12085,448,1,299,'4.99','2005-05-26 20:55:36','2006-02-15 22:19:00'),(12086,448,2,1123,'2.99','2005-05-31 16:48:43','2006-02-15 22:19:00'),(12087,448,1,1313,'5.99','2005-06-15 10:18:34','2006-02-15 22:19:00'),(12088,448,2,1823,'7.99','2005-06-16 21:48:16','2006-02-15 22:19:00'),(12089,448,2,2697,'0.99','2005-06-19 13:29:08','2006-02-15 22:19:00'),(12090,448,2,3225,'3.99','2005-06-21 02:16:55','2006-02-15 22:19:00'),(12091,448,2,3347,'5.99','2005-06-21 11:08:32','2006-02-15 22:19:00'),(12092,448,2,3959,'5.99','2005-07-06 22:07:58','2006-02-15 22:19:00'),(12093,448,2,3992,'6.99','2005-07-06 23:36:56','2006-02-15 22:19:00'),(12094,448,2,4024,'0.99','2005-07-07 02:11:23','2006-02-15 22:19:00'),(12095,448,2,4206,'2.99','2005-07-07 11:32:16','2006-02-15 22:19:00'),(12096,448,1,4406,'1.99','2005-07-07 21:35:16','2006-02-15 22:19:00'),(12097,448,2,4537,'2.99','2005-07-08 03:48:40','2006-02-15 22:19:00'),(12098,448,2,4558,'2.99','2005-07-08 04:55:26','2006-02-15 22:19:00'),(12099,448,2,6341,'2.99','2005-07-11 19:48:02','2006-02-15 22:19:00'),(12100,448,2,6985,'4.99','2005-07-27 00:57:42','2006-02-15 22:19:00'),(12101,448,1,9178,'10.99','2005-07-30 11:58:50','2006-02-15 22:19:01'),(12102,448,2,11608,'8.99','2005-08-17 03:36:52','2006-02-15 22:19:01'),(12103,448,1,11798,'9.99','2005-08-17 11:21:43','2006-02-15 22:19:01'),(12104,448,1,12446,'2.99','2005-08-18 10:56:29','2006-02-15 22:19:01'),(12105,448,1,13220,'2.99','2005-08-19 15:42:32','2006-02-15 22:19:01'),(12106,448,2,13250,'3.99','2005-08-19 16:47:55','2006-02-15 22:19:01'),(12107,448,1,13982,'3.99','2005-08-20 19:08:25','2006-02-15 22:19:01'),(12108,448,1,14580,'3.99','2005-08-21 16:56:39','2006-02-15 22:19:01'),(12109,448,1,14711,'2.99','2005-08-21 21:22:07','2006-02-15 22:19:01'),(12110,448,2,15358,'9.99','2005-08-22 21:29:14','2006-02-15 22:19:01'),(12111,448,1,15427,'4.99','2005-08-23 00:07:53','2006-02-15 22:19:01'),(12112,448,2,14734,'3.98','2006-02-14 15:16:03','2006-02-15 22:19:01'),(12113,448,1,13577,'0.00','2006-02-14 15:16:03','2006-02-15 22:19:01'),(12114,449,2,263,'4.99','2005-05-26 15:47:40','2006-02-15 22:19:01'),(12115,449,2,325,'5.99','2005-05-27 01:09:55','2006-02-15 22:19:01'),(12116,449,1,849,'7.99','2005-05-30 01:23:07','2006-02-15 22:19:01'),(12117,449,2,1295,'4.99','2005-06-15 09:17:20','2006-02-15 22:19:01'),(12118,449,1,2348,'0.99','2005-06-18 12:15:43','2006-02-15 22:19:01'),(12119,449,2,2970,'2.99','2005-06-20 07:51:51','2006-02-15 22:19:02'),(12120,449,1,3503,'0.99','2005-07-06 00:17:24','2006-02-15 22:19:02'),(12121,449,1,3977,'8.99','2005-07-06 23:00:49','2006-02-15 22:19:02'),(12122,449,2,4433,'3.99','2005-07-07 22:45:41','2006-02-15 22:19:02'),(12123,449,1,5824,'2.99','2005-07-10 16:19:53','2006-02-15 22:19:02'),(12124,449,2,7755,'6.99','2005-07-28 06:22:18','2006-02-15 22:19:02'),(12125,449,2,7803,'3.99','2005-07-28 07:52:13','2006-02-15 22:19:02'),(12126,449,2,8002,'2.99','2005-07-28 15:11:00','2006-02-15 22:19:02'),(12127,449,2,10083,'5.99','2005-07-31 20:10:19','2006-02-15 22:19:02'),(12128,449,2,10409,'2.99','2005-08-01 07:49:15','2006-02-15 22:19:02'),(12129,449,1,10416,'4.99','2005-08-01 08:08:39','2006-02-15 22:19:02'),(12130,449,1,10516,'6.99','2005-08-01 11:41:55','2006-02-15 22:19:02'),(12131,449,2,10688,'6.99','2005-08-01 17:53:43','2006-02-15 22:19:02'),(12132,449,1,12212,'4.99','2005-08-18 02:33:29','2006-02-15 22:19:02'),(12133,449,2,14962,'7.99','2005-08-22 06:37:43','2006-02-15 22:19:02'),(12134,450,2,548,'3.99','2005-05-28 07:34:56','2006-02-15 22:19:02'),(12135,450,2,1639,'4.99','2005-06-16 08:33:39','2006-02-15 22:19:02'),(12136,450,1,1739,'0.99','2005-06-16 16:09:38','2006-02-15 22:19:02'),(12137,450,2,1914,'2.99','2005-06-17 05:25:54','2006-02-15 22:19:03'),(12138,450,2,2278,'0.99','2005-06-18 06:37:57','2006-02-15 22:19:03'),(12139,450,1,2501,'4.99','2005-06-18 23:10:11','2006-02-15 22:19:03'),(12140,450,1,2626,'2.99','2005-06-19 08:28:44','2006-02-15 22:19:03'),(12141,450,1,3155,'4.99','2005-06-20 21:02:38','2006-02-15 22:19:03'),(12142,450,1,3570,'3.99','2005-07-06 03:23:43','2006-02-15 22:19:03'),(12143,450,1,5999,'7.99','2005-07-11 01:21:22','2006-02-15 22:19:03'),(12144,450,1,6028,'4.99','2005-07-11 02:31:44','2006-02-15 22:19:03'),(12145,450,2,7365,'2.99','2005-07-27 15:00:20','2006-02-15 22:19:03'),(12146,450,1,7610,'0.99','2005-07-28 00:11:35','2006-02-15 22:19:03'),(12147,450,1,7626,'0.99','2005-07-28 00:49:01','2006-02-15 22:19:03'),(12148,450,2,8733,'4.99','2005-07-29 18:26:34','2006-02-15 22:19:03'),(12149,450,2,10432,'2.99','2005-08-01 08:43:21','2006-02-15 22:19:03'),(12150,450,1,10984,'3.99','2005-08-02 04:30:02','2006-02-15 22:19:03'),(12151,450,2,12812,'0.99','2005-08-19 00:54:02','2006-02-15 22:19:03'),(12152,450,2,13731,'4.99','2005-08-20 10:22:08','2006-02-15 22:19:03'),(12153,450,1,13810,'0.99','2005-08-20 12:59:38','2006-02-15 22:19:03'),(12154,450,1,13828,'4.99','2005-08-20 13:49:52','2006-02-15 22:19:03'),(12155,450,1,14282,'4.99','2005-08-21 06:41:29','2006-02-15 22:19:04'),(12156,450,2,15019,'0.99','2005-08-22 08:52:53','2006-02-15 22:19:04'),(12157,450,1,15327,'4.99','2005-08-22 20:31:24','2006-02-15 22:19:04'),(12158,450,2,15419,'4.99','2005-08-22 23:54:36','2006-02-15 22:19:04'),(12159,450,1,14172,'0.99','2006-02-14 15:16:03','2006-02-15 22:19:04'),(12160,451,2,77,'0.99','2005-05-25 11:31:59','2006-02-15 22:19:04'),(12161,451,2,328,'2.99','2005-05-27 01:29:31','2006-02-15 22:19:04'),(12162,451,2,1113,'2.99','2005-05-31 15:58:44','2006-02-15 22:19:04'),(12163,451,1,1202,'0.99','2005-06-15 02:08:04','2006-02-15 22:19:04'),(12164,451,1,1851,'0.99','2005-06-17 00:32:26','2006-02-15 22:19:04'),(12165,451,1,1940,'6.99','2005-06-17 07:42:22','2006-02-15 22:19:04'),(12166,451,1,2671,'1.99','2005-06-19 11:33:11','2006-02-15 22:19:04'),(12167,451,1,2909,'3.99','2005-06-20 03:19:10','2006-02-15 22:19:04'),(12168,451,2,2917,'0.99','2005-06-20 04:08:35','2006-02-15 22:19:04'),(12169,451,1,3316,'6.99','2005-06-21 08:20:18','2006-02-15 22:19:04'),(12170,451,2,3826,'4.99','2005-07-06 15:51:58','2006-02-15 22:19:04'),(12171,451,1,4538,'2.99','2005-07-08 03:56:29','2006-02-15 22:19:04'),(12172,451,1,4794,'8.99','2005-07-08 16:30:11','2006-02-15 22:19:04'),(12173,451,2,4930,'4.99','2005-07-08 22:15:48','2006-02-15 22:19:05'),(12174,451,1,5005,'3.99','2005-07-09 01:21:44','2006-02-15 22:19:05'),(12175,451,2,5518,'8.99','2005-07-10 01:15:11','2006-02-15 22:19:05'),(12176,451,1,7018,'2.99','2005-07-27 02:20:22','2006-02-15 22:19:05'),(12177,451,2,10337,'8.99','2005-08-01 05:01:46','2006-02-15 22:19:05'),(12178,451,1,10856,'2.99','2005-08-02 00:07:14','2006-02-15 22:19:05'),(12179,451,2,10950,'2.99','2005-08-02 03:25:08','2006-02-15 22:19:05'),(12180,451,2,11167,'6.99','2005-08-02 10:15:51','2006-02-15 22:19:05'),(12181,451,2,11381,'6.99','2005-08-02 18:19:29','2006-02-15 22:19:05'),(12182,451,1,11790,'2.99','2005-08-17 11:00:08','2006-02-15 22:19:05'),(12183,451,2,12371,'2.99','2005-08-18 08:02:46','2006-02-15 22:19:05'),(12184,451,1,12422,'4.99','2005-08-18 10:13:12','2006-02-15 22:19:05'),(12185,451,2,13003,'1.99','2005-08-19 07:39:29','2006-02-15 22:19:05'),(12186,451,2,13100,'2.99','2005-08-19 10:55:45','2006-02-15 22:19:05'),(12187,451,2,13252,'2.99','2005-08-19 16:50:50','2006-02-15 22:19:05'),(12188,451,2,13380,'0.99','2005-08-19 21:36:58','2006-02-15 22:19:05'),(12189,451,1,13666,'2.99','2005-08-20 08:20:19','2006-02-15 22:19:05'),(12190,451,1,13705,'2.99','2005-08-20 09:32:23','2006-02-15 22:19:06'),(12191,451,2,14500,'0.99','2005-08-21 14:11:30','2006-02-15 22:19:06'),(12192,451,1,15651,'4.99','2005-08-23 08:31:49','2006-02-15 22:19:06'),(12193,452,1,354,'2.99','2005-05-27 06:12:26','2006-02-15 22:19:06'),(12194,452,2,714,'2.99','2005-05-29 04:15:21','2006-02-15 22:19:06'),(12195,452,1,726,'1.99','2005-05-29 06:05:29','2006-02-15 22:19:06'),(12196,452,2,1203,'4.99','2005-06-15 02:09:02','2006-02-15 22:19:06'),(12197,452,1,1512,'5.99','2005-06-15 22:53:03','2006-02-15 22:19:06'),(12198,452,1,1794,'3.99','2005-06-16 20:08:37','2006-02-15 22:19:06'),(12199,452,1,2263,'0.99','2005-06-18 05:57:47','2006-02-15 22:19:06'),(12200,452,2,2266,'4.99','2005-06-18 06:05:02','2006-02-15 22:19:06'),(12201,452,1,2504,'0.99','2005-06-18 23:19:53','2006-02-15 22:19:06'),(12202,452,2,2661,'0.99','2005-06-19 10:50:52','2006-02-15 22:19:06'),(12203,452,2,3638,'3.99','2005-07-06 07:08:17','2006-02-15 22:19:06'),(12204,452,1,3791,'2.99','2005-07-06 14:24:56','2006-02-15 22:19:06'),(12205,452,2,3907,'6.99','2005-07-06 19:39:14','2006-02-15 22:19:06'),(12206,452,1,4348,'0.99','2005-07-07 19:02:05','2006-02-15 22:19:06'),(12207,452,2,4353,'4.99','2005-07-07 19:19:05','2006-02-15 22:19:06'),(12208,452,2,4417,'2.99','2005-07-07 22:05:05','2006-02-15 22:19:07'),(12209,452,1,4720,'0.99','2005-07-08 12:34:34','2006-02-15 22:19:07'),(12210,452,1,5177,'1.99','2005-07-09 09:43:21','2006-02-15 22:19:07'),(12211,452,2,5480,'0.99','2005-07-09 23:49:07','2006-02-15 22:19:07'),(12212,452,2,6959,'2.99','2005-07-27 00:07:51','2006-02-15 22:19:07'),(12213,452,2,7899,'6.99','2005-07-28 11:10:12','2006-02-15 22:19:07'),(12214,452,1,8898,'1.99','2005-07-30 01:02:20','2006-02-15 22:19:07'),(12215,452,2,9379,'6.99','2005-07-30 19:13:01','2006-02-15 22:19:07'),(12216,452,2,11715,'4.99','2005-08-17 07:40:55','2006-02-15 22:19:07'),(12217,452,1,11735,'3.99','2005-08-17 08:35:42','2006-02-15 22:19:07'),(12218,452,1,12355,'0.99','2005-08-18 07:36:23','2006-02-15 22:19:07'),(12219,452,1,12630,'4.99','2005-08-18 17:49:28','2006-02-15 22:19:07'),(12220,452,1,13080,'4.99','2005-08-19 10:18:00','2006-02-15 22:19:07'),(12221,452,1,13642,'3.99','2005-08-20 07:42:17','2006-02-15 22:19:07'),(12222,452,1,14660,'0.99','2005-08-21 19:43:21','2006-02-15 22:19:07'),(12223,452,1,15909,'0.99','2005-08-23 17:42:42','2006-02-15 22:19:07'),(12224,452,1,14175,'4.99','2006-02-14 15:16:03','2006-02-15 22:19:07'),(12225,453,2,2852,'5.99','2005-06-19 23:08:50','2006-02-15 22:19:07'),(12226,453,1,2853,'7.99','2005-06-19 23:09:41','2006-02-15 22:19:08'),(12227,453,2,2887,'4.99','2005-06-20 01:39:43','2006-02-15 22:19:08'),(12228,453,2,3929,'0.99','2005-07-06 20:52:39','2006-02-15 22:19:08'),(12229,453,2,4033,'8.99','2005-07-07 02:35:46','2006-02-15 22:19:08'),(12230,453,1,4717,'4.99','2005-07-08 12:22:43','2006-02-15 22:19:08'),(12231,453,2,4805,'2.99','2005-07-08 16:59:12','2006-02-15 22:19:08'),(12232,453,2,5359,'6.99','2005-07-09 18:10:52','2006-02-15 22:19:08'),(12233,453,1,6752,'4.99','2005-07-12 14:53:15','2006-02-15 22:19:08'),(12234,453,1,7563,'0.99','2005-07-27 22:25:36','2006-02-15 22:19:08'),(12235,453,2,9289,'6.99','2005-07-30 15:57:04','2006-02-15 22:19:08'),(12236,453,2,9406,'6.99','2005-07-30 20:24:00','2006-02-15 22:19:08'),(12237,453,2,9900,'1.99','2005-07-31 14:15:05','2006-02-15 22:19:08'),(12238,453,1,11794,'4.99','2005-08-17 11:08:48','2006-02-15 22:19:08'),(12239,453,1,12703,'2.99','2005-08-18 20:37:13','2006-02-15 22:19:08'),(12240,453,1,13711,'7.99','2005-08-20 09:35:20','2006-02-15 22:19:08'),(12241,453,1,13785,'4.99','2005-08-20 12:11:46','2006-02-15 22:19:08'),(12242,453,1,14133,'2.99','2005-08-21 01:44:14','2006-02-15 22:19:08'),(12243,453,2,14306,'5.99','2005-08-21 07:32:35','2006-02-15 22:19:09'),(12244,453,2,14644,'4.99','2005-08-21 19:12:12','2006-02-15 22:19:09'),(12245,453,1,14652,'4.99','2005-08-21 19:32:05','2006-02-15 22:19:09'),(12246,453,1,15252,'0.99','2005-08-22 18:04:22','2006-02-15 22:19:09'),(12247,453,2,15627,'4.99','2005-08-23 07:25:38','2006-02-15 22:19:09'),(12248,454,1,735,'7.99','2005-05-29 08:08:13','2006-02-15 22:19:09'),(12249,454,2,1647,'4.99','2005-06-16 09:14:58','2006-02-15 22:19:09'),(12250,454,2,1844,'7.99','2005-06-16 23:53:53','2006-02-15 22:19:09'),(12251,454,1,1861,'1.99','2005-06-17 01:17:31','2006-02-15 22:19:09'),(12252,454,1,1938,'4.99','2005-06-17 07:18:36','2006-02-15 22:19:09'),(12253,454,2,2048,'5.99','2005-06-17 14:55:29','2006-02-15 22:19:09'),(12254,454,2,2182,'5.99','2005-06-18 00:56:18','2006-02-15 22:19:09'),(12255,454,1,2437,'2.99','2005-06-18 18:30:26','2006-02-15 22:19:09'),(12256,454,2,2666,'9.99','2005-06-19 11:17:12','2006-02-15 22:19:09'),(12257,454,1,3221,'2.99','2005-06-21 01:49:47','2006-02-15 22:19:09'),(12258,454,1,3362,'4.99','2005-06-21 12:19:54','2006-02-15 22:19:09'),(12259,454,1,3622,'7.99','2005-07-06 06:05:04','2006-02-15 22:19:09'),(12260,454,2,4562,'4.99','2005-07-08 05:08:32','2006-02-15 22:19:09'),(12261,454,2,5088,'4.99','2005-07-09 05:45:16','2006-02-15 22:19:10'),(12262,454,2,5446,'2.99','2005-07-09 21:59:55','2006-02-15 22:19:10'),(12263,454,2,6260,'4.99','2005-07-11 15:26:29','2006-02-15 22:19:10'),(12264,454,2,6701,'0.99','2005-07-12 12:47:59','2006-02-15 22:19:10'),(12265,454,2,8481,'2.99','2005-07-29 08:45:57','2006-02-15 22:19:10'),(12266,454,1,8806,'0.99','2005-07-29 21:36:34','2006-02-15 22:19:10'),(12267,454,2,9041,'0.99','2005-07-30 06:32:36','2006-02-15 22:19:10'),(12268,454,1,9372,'9.99','2005-07-30 19:04:30','2006-02-15 22:19:10'),(12269,454,1,10005,'3.99','2005-07-31 17:53:51','2006-02-15 22:19:10'),(12270,454,2,12347,'0.99','2005-08-18 07:18:10','2006-02-15 22:19:10'),(12271,454,1,12553,'0.99','2005-08-18 14:46:54','2006-02-15 22:19:10'),(12272,454,2,13496,'8.99','2005-08-20 01:42:29','2006-02-15 22:19:10'),(12273,454,2,13513,'2.99','2005-08-20 02:27:53','2006-02-15 22:19:10'),(12274,454,2,13694,'8.99','2005-08-20 09:13:23','2006-02-15 22:19:10'),(12275,454,1,13805,'6.99','2005-08-20 12:53:12','2006-02-15 22:19:10'),(12276,454,1,14799,'0.99','2005-08-22 00:44:57','2006-02-15 22:19:10'),(12277,454,2,14843,'2.99','2005-08-22 02:05:25','2006-02-15 22:19:10'),(12278,454,2,15012,'4.99','2005-08-22 08:42:32','2006-02-15 22:19:10'),(12279,454,1,15301,'3.99','2005-08-22 19:44:16','2006-02-15 22:19:11'),(12280,454,2,15608,'1.99','2005-08-23 06:55:26','2006-02-15 22:19:11'),(12281,455,2,115,'0.99','2005-05-25 19:13:25','2006-02-15 22:19:11'),(12282,455,2,343,'0.99','2005-05-27 04:13:41','2006-02-15 22:19:11'),(12283,455,2,1382,'1.99','2005-06-15 15:18:08','2006-02-15 22:19:11'),(12284,455,1,1802,'1.99','2005-06-16 20:23:30','2006-02-15 22:19:11'),(12285,455,1,1906,'2.99','2005-06-17 04:53:35','2006-02-15 22:19:11'),(12286,455,2,2356,'0.99','2005-06-18 12:59:23','2006-02-15 22:19:11'),(12287,455,2,4195,'2.99','2005-07-07 11:00:02','2006-02-15 22:19:11'),(12288,455,1,4861,'8.99','2005-07-08 18:57:30','2006-02-15 22:19:11'),(12289,455,1,4964,'2.99','2005-07-08 23:46:38','2006-02-15 22:19:11'),(12290,455,1,5504,'6.99','2005-07-10 00:36:38','2006-02-15 22:19:11'),(12291,455,2,6729,'4.99','2005-07-12 13:58:23','2006-02-15 22:19:11'),(12292,455,1,7388,'4.99','2005-07-27 15:54:19','2006-02-15 22:19:11'),(12293,455,2,7498,'4.99','2005-07-27 20:09:31','2006-02-15 22:19:11'),(12294,455,2,7905,'5.99','2005-07-28 11:26:57','2006-02-15 22:19:11'),(12295,455,2,8291,'2.99','2005-07-29 02:28:25','2006-02-15 22:19:11'),(12296,455,1,10436,'0.99','2005-08-01 08:50:59','2006-02-15 22:19:11'),(12297,455,1,11605,'4.99','2005-08-17 03:30:57','2006-02-15 22:19:12'),(12298,455,1,12163,'2.99','2005-08-18 00:46:01','2006-02-15 22:19:12'),(12299,455,1,12314,'4.99','2005-08-18 06:10:02','2006-02-15 22:19:12'),(12300,455,2,13083,'2.99','2005-08-19 10:26:45','2006-02-15 22:19:12'),(12301,455,2,13813,'4.99','2005-08-20 13:03:26','2006-02-15 22:19:12'),(12302,455,1,14294,'2.99','2005-08-21 07:07:26','2006-02-15 22:19:12'),(12303,455,2,14583,'4.99','2005-08-21 17:11:47','2006-02-15 22:19:12'),(12304,455,1,15494,'1.99','2005-08-23 02:25:09','2006-02-15 22:19:12'),(12305,456,2,19,'4.99','2005-05-25 01:17:24','2006-02-15 22:19:12'),(12306,456,1,1288,'2.99','2005-06-15 08:41:52','2006-02-15 22:19:12'),(12307,456,1,1700,'0.99','2005-06-16 13:18:23','2006-02-15 22:19:12'),(12308,456,2,2103,'5.99','2005-06-17 19:13:10','2006-02-15 22:19:12'),(12309,456,2,2146,'6.99','2005-06-17 22:26:23','2006-02-15 22:19:12'),(12310,456,1,2192,'4.99','2005-06-18 01:35:47','2006-02-15 22:19:12'),(12311,456,1,2404,'0.99','2005-06-18 16:33:48','2006-02-15 22:19:12'),(12312,456,1,2581,'2.99','2005-06-19 04:54:13','2006-02-15 22:19:12'),(12313,456,1,3743,'7.99','2005-07-06 12:03:54','2006-02-15 22:19:12'),(12314,456,2,3881,'2.99','2005-07-06 18:35:37','2006-02-15 22:19:13'),(12315,456,1,4141,'3.99','2005-07-07 08:19:20','2006-02-15 22:19:13'),(12316,456,2,5964,'0.99','2005-07-10 23:47:18','2006-02-15 22:19:13'),(12317,456,2,6023,'0.99','2005-07-11 02:15:57','2006-02-15 22:19:13'),(12318,456,2,7248,'2.99','2005-07-27 10:37:45','2006-02-15 22:19:13'),(12319,456,1,8749,'4.99','2005-07-29 19:13:15','2006-02-15 22:19:13'),(12320,456,2,10519,'5.99','2005-08-01 11:44:13','2006-02-15 22:19:13'),(12321,456,1,10813,'2.99','2005-08-01 22:43:00','2006-02-15 22:19:13'),(12322,456,1,12188,'4.99','2005-08-18 01:51:43','2006-02-15 22:19:13'),(12323,456,1,13144,'8.99','2005-08-19 12:45:55','2006-02-15 22:19:13'),(12324,456,1,13348,'4.99','2005-08-19 20:31:48','2006-02-15 22:19:13'),(12325,456,1,13547,'4.99','2005-08-20 03:53:16','2006-02-15 22:19:13'),(12326,456,2,14253,'2.99','2005-08-21 05:47:52','2006-02-15 22:19:13'),(12327,456,2,14690,'1.99','2005-08-21 20:42:25','2006-02-15 22:19:13'),(12328,456,1,15720,'3.99','2005-08-23 11:15:20','2006-02-15 22:19:13'),(12329,456,1,15910,'2.99','2005-08-23 17:43:16','2006-02-15 22:19:13'),(12330,457,2,1024,'7.99','2005-05-31 03:30:19','2006-02-15 22:19:13'),(12331,457,2,1453,'4.99','2005-06-15 19:36:39','2006-02-15 22:19:13'),(12332,457,2,1727,'0.99','2005-06-16 15:21:47','2006-02-15 22:19:14'),(12333,457,1,2030,'0.99','2005-06-17 13:13:27','2006-02-15 22:19:14'),(12334,457,1,2172,'7.99','2005-06-18 00:06:16','2006-02-15 22:19:14'),(12335,457,1,2670,'4.99','2005-06-19 11:30:16','2006-02-15 22:19:14'),(12336,457,1,2762,'3.99','2005-06-19 17:22:31','2006-02-15 22:19:14'),(12337,457,1,2811,'0.99','2005-06-19 19:53:30','2006-02-15 22:19:14'),(12338,457,2,3115,'2.99','2005-06-20 17:59:05','2006-02-15 22:19:14'),(12339,457,2,3184,'2.99','2005-06-20 22:57:44','2006-02-15 22:19:14'),(12340,457,2,4600,'5.99','2005-07-08 06:48:37','2006-02-15 22:19:14'),(12341,457,1,5500,'0.99','2005-07-10 00:28:17','2006-02-15 22:19:14'),(12342,457,1,6467,'7.99','2005-07-12 01:22:03','2006-02-15 22:19:14'),(12343,457,1,7184,'1.99','2005-07-27 08:22:26','2006-02-15 22:19:14'),(12344,457,2,8373,'4.99','2005-07-29 05:19:53','2006-02-15 22:19:14'),(12345,457,1,8502,'2.99','2005-07-29 09:15:41','2006-02-15 22:19:14'),(12346,457,1,10049,'2.99','2005-07-31 19:11:11','2006-02-15 22:19:14'),(12347,457,2,11956,'6.99','2005-08-17 17:22:05','2006-02-15 22:19:14'),(12348,457,1,12115,'4.99','2005-08-17 23:04:15','2006-02-15 22:19:14'),(12349,457,1,12171,'4.99','2005-08-18 01:06:13','2006-02-15 22:19:15'),(12350,457,1,13088,'0.99','2005-08-19 10:36:11','2006-02-15 22:19:15'),(12351,457,1,13150,'2.99','2005-08-19 13:08:19','2006-02-15 22:19:15'),(12352,457,2,13934,'0.99','2005-08-20 17:18:48','2006-02-15 22:19:15'),(12353,457,2,14327,'10.99','2005-08-21 08:18:18','2006-02-15 22:19:15'),(12354,457,1,14365,'6.99','2005-08-21 09:25:13','2006-02-15 22:19:15'),(12355,457,1,15128,'3.99','2005-08-22 12:57:26','2006-02-15 22:19:15'),(12356,457,1,12645,'3.98','2006-02-14 15:16:03','2006-02-15 22:19:15'),(12357,457,2,14516,'0.00','2006-02-14 15:16:03','2006-02-15 22:19:15'),(12358,458,2,2629,'5.99','2005-06-19 08:42:12','2006-02-15 22:19:15'),(12359,458,2,3322,'0.99','2005-06-21 08:42:37','2006-02-15 22:19:15'),(12360,458,2,4525,'2.99','2005-07-08 03:15:00','2006-02-15 22:19:15'),(12361,458,1,5412,'2.99','2005-07-09 20:23:52','2006-02-15 22:19:15'),(12362,458,1,5572,'0.99','2005-07-10 03:49:00','2006-02-15 22:19:15'),(12363,458,2,6250,'3.99','2005-07-11 15:02:04','2006-02-15 22:19:15'),(12364,458,1,6431,'5.99','2005-07-12 00:03:57','2006-02-15 22:19:15'),(12365,458,2,6595,'7.99','2005-07-12 07:25:48','2006-02-15 22:19:15'),(12366,458,1,6654,'1.99','2005-07-12 11:06:28','2006-02-15 22:19:15'),(12367,458,2,7923,'3.99','2005-07-28 12:08:29','2006-02-15 22:19:16'),(12368,458,1,8158,'0.99','2005-07-28 21:08:46','2006-02-15 22:19:16'),(12369,458,2,11138,'2.99','2005-08-02 09:26:16','2006-02-15 22:19:16'),(12370,458,2,11975,'2.99','2005-08-17 17:58:39','2006-02-15 22:19:16'),(12371,458,2,12768,'0.99','2005-08-18 23:26:11','2006-02-15 22:19:16'),(12372,458,2,13259,'2.99','2005-08-19 17:08:53','2006-02-15 22:19:16'),(12373,458,2,13487,'2.99','2005-08-20 01:27:05','2006-02-15 22:19:16'),(12374,458,2,13571,'4.99','2005-08-20 05:05:14','2006-02-15 22:19:16'),(12375,458,2,14428,'4.99','2005-08-21 11:27:07','2006-02-15 22:19:16'),(12376,458,1,15604,'4.99','2005-08-23 06:44:19','2006-02-15 22:19:16'),(12377,459,2,2,'2.99','2005-05-24 22:54:33','2006-02-15 22:19:16'),(12378,459,2,1876,'0.99','2005-06-17 02:50:51','2006-02-15 22:19:16'),(12379,459,2,1977,'2.99','2005-06-17 09:38:22','2006-02-15 22:19:16'),(12380,459,2,2075,'4.99','2005-06-17 16:40:33','2006-02-15 22:19:16'),(12381,459,1,2899,'0.99','2005-06-20 02:39:21','2006-02-15 22:19:16'),(12382,459,2,3041,'4.99','2005-06-20 12:35:44','2006-02-15 22:19:16'),(12383,459,2,3045,'0.99','2005-06-20 12:42:00','2006-02-15 22:19:16'),(12384,459,2,3234,'9.99','2005-06-21 02:39:44','2006-02-15 22:19:16'),(12385,459,1,3506,'2.99','2005-07-06 00:22:29','2006-02-15 22:19:17'),(12386,459,2,4519,'2.99','2005-07-08 02:51:23','2006-02-15 22:19:17'),(12387,459,1,5301,'3.99','2005-07-09 15:42:10','2006-02-15 22:19:17'),(12388,459,1,5695,'0.99','2005-07-10 09:43:40','2006-02-15 22:19:17'),(12389,459,1,6206,'0.99','2005-07-11 12:32:14','2006-02-15 22:19:17'),(12390,459,2,6750,'3.99','2005-07-12 14:49:39','2006-02-15 22:19:17'),(12391,459,1,7623,'6.99','2005-07-28 00:37:41','2006-02-15 22:19:17'),(12392,459,2,7639,'4.99','2005-07-28 01:14:36','2006-02-15 22:19:17'),(12393,459,1,7717,'4.99','2005-07-28 04:33:54','2006-02-15 22:19:17'),(12394,459,1,7820,'5.99','2005-07-28 08:28:51','2006-02-15 22:19:17'),(12395,459,1,7913,'6.99','2005-07-28 11:47:23','2006-02-15 22:19:17'),(12396,459,1,8289,'9.99','2005-07-29 02:23:24','2006-02-15 22:19:17'),(12397,459,2,8557,'10.99','2005-07-29 11:19:59','2006-02-15 22:19:17'),(12398,459,1,8897,'2.99','2005-07-30 01:00:17','2006-02-15 22:19:17'),(12399,459,1,9137,'6.99','2005-07-30 10:09:24','2006-02-15 22:19:17'),(12400,459,2,9639,'2.99','2005-07-31 05:32:10','2006-02-15 22:19:17'),(12401,459,1,9744,'4.99','2005-07-31 09:15:38','2006-02-15 22:19:17'),(12402,459,2,10117,'4.99','2005-07-31 21:14:31','2006-02-15 22:19:18'),(12403,459,1,10233,'6.99','2005-08-01 01:54:23','2006-02-15 22:19:18'),(12404,459,2,10255,'4.99','2005-08-01 02:46:13','2006-02-15 22:19:18'),(12405,459,1,10499,'7.99','2005-08-01 11:00:20','2006-02-15 22:19:18'),(12406,459,1,10531,'2.99','2005-08-01 12:06:30','2006-02-15 22:19:18'),(12407,459,1,12527,'6.99','2005-08-18 13:48:46','2006-02-15 22:19:18'),(12408,459,1,12629,'7.99','2005-08-18 17:40:33','2006-02-15 22:19:18'),(12409,459,2,13960,'10.99','2005-08-20 18:16:26','2006-02-15 22:19:18'),(12410,459,1,13967,'4.99','2005-08-20 18:28:46','2006-02-15 22:19:18'),(12411,459,1,14315,'3.99','2005-08-21 07:56:39','2006-02-15 22:19:18'),(12412,459,1,15126,'5.99','2005-08-22 12:53:58','2006-02-15 22:19:18'),(12413,459,2,15342,'2.99','2005-08-22 20:56:41','2006-02-15 22:19:18'),(12414,459,1,15814,'0.99','2005-08-23 14:52:50','2006-02-15 22:19:18'),(12415,460,1,223,'4.99','2005-05-26 10:15:23','2006-02-15 22:19:18'),(12416,460,2,298,'0.99','2005-05-26 20:52:26','2006-02-15 22:19:18'),(12417,460,1,880,'0.99','2005-05-30 06:12:33','2006-02-15 22:19:18'),(12418,460,2,1064,'4.99','2005-05-31 08:50:07','2006-02-15 22:19:18'),(12419,460,2,1392,'0.99','2005-06-15 16:12:27','2006-02-15 22:19:19'),(12420,460,2,3820,'4.99','2005-07-06 15:35:26','2006-02-15 22:19:19'),(12421,460,1,4452,'7.99','2005-07-07 23:31:54','2006-02-15 22:19:19'),(12422,460,2,5482,'3.99','2005-07-09 23:53:04','2006-02-15 22:19:19'),(12423,460,1,6613,'4.99','2005-07-12 08:30:07','2006-02-15 22:19:19'),(12424,460,1,6788,'5.99','2005-07-12 16:33:44','2006-02-15 22:19:19'),(12425,460,1,7125,'6.99','2005-07-27 06:11:00','2006-02-15 22:19:19'),(12426,460,1,7785,'3.99','2005-07-28 07:16:11','2006-02-15 22:19:19'),(12427,460,2,8656,'2.99','2005-07-29 15:05:52','2006-02-15 22:19:19'),(12428,460,2,10754,'10.99','2005-08-01 20:12:33','2006-02-15 22:19:19'),(12429,460,1,10926,'1.99','2005-08-02 02:26:37','2006-02-15 22:19:19'),(12430,460,2,11554,'2.99','2005-08-17 01:05:17','2006-02-15 22:19:19'),(12431,460,1,12056,'5.99','2005-08-17 21:03:48','2006-02-15 22:19:19'),(12432,460,2,12586,'4.99','2005-08-18 15:54:39','2006-02-15 22:19:19'),(12433,460,1,12865,'0.99','2005-08-19 02:38:50','2006-02-15 22:19:19'),(12434,460,2,13215,'8.99','2005-08-19 15:35:38','2006-02-15 22:19:19'),(12435,460,1,13341,'3.99','2005-08-19 20:18:53','2006-02-15 22:19:19'),(12436,460,2,13920,'5.99','2005-08-20 16:51:18','2006-02-15 22:19:19'),(12437,460,2,14864,'0.99','2005-08-22 02:57:06','2006-02-15 22:19:20'),(12438,460,1,14923,'3.99','2005-08-22 05:13:33','2006-02-15 22:19:20'),(12439,460,2,15954,'2.99','2005-08-23 19:14:07','2006-02-15 22:19:20'),(12440,461,1,684,'6.99','2005-05-29 00:13:15','2006-02-15 22:19:20'),(12441,461,2,3127,'5.99','2005-06-20 18:39:43','2006-02-15 22:19:20'),(12442,461,2,3319,'4.99','2005-06-21 08:25:46','2006-02-15 22:19:20'),(12443,461,2,3698,'0.99','2005-07-06 10:09:20','2006-02-15 22:19:20'),(12444,461,2,4586,'2.99','2005-07-08 06:12:33','2006-02-15 22:19:20'),(12445,461,1,5650,'0.99','2005-07-10 07:17:01','2006-02-15 22:19:20'),(12446,461,1,5809,'2.99','2005-07-10 15:19:30','2006-02-15 22:19:20'),(12447,461,2,7334,'2.99','2005-07-27 13:59:58','2006-02-15 22:19:20'),(12448,461,2,7664,'2.99','2005-07-28 02:24:23','2006-02-15 22:19:20'),(12449,461,2,8133,'0.99','2005-07-28 20:01:06','2006-02-15 22:19:20'),(12450,461,2,8164,'0.99','2005-07-28 21:17:19','2006-02-15 22:19:20'),(12451,461,2,9499,'4.99','2005-07-30 23:58:30','2006-02-15 22:19:20'),(12452,461,1,9885,'0.99','2005-07-31 13:59:32','2006-02-15 22:19:20'),(12453,461,2,10113,'4.99','2005-07-31 21:10:03','2006-02-15 22:19:20'),(12454,461,1,10260,'2.99','2005-08-01 02:58:07','2006-02-15 22:19:21'),(12455,461,2,11063,'0.99','2005-08-02 06:53:48','2006-02-15 22:19:21'),(12456,461,2,11219,'0.99','2005-08-02 12:30:20','2006-02-15 22:19:21'),(12457,461,2,12022,'2.99','2005-08-17 19:52:45','2006-02-15 22:19:21'),(12458,461,1,13223,'2.99','2005-08-19 15:52:04','2006-02-15 22:19:21'),(12459,461,1,13269,'2.99','2005-08-19 17:34:00','2006-02-15 22:19:21'),(12460,461,1,14186,'4.99','2005-08-21 03:31:07','2006-02-15 22:19:21'),(12461,461,1,14893,'4.99','2005-08-22 04:15:48','2006-02-15 22:19:21'),(12462,461,1,15067,'2.99','2005-08-22 10:49:21','2006-02-15 22:19:21'),(12463,461,2,15187,'4.99','2005-08-22 15:53:32','2006-02-15 22:19:21'),(12464,461,1,15336,'6.99','2005-08-22 20:47:48','2006-02-15 22:19:21'),(12465,461,2,15411,'2.99','2005-08-22 23:35:41','2006-02-15 22:19:21'),(12466,461,2,15449,'2.99','2005-08-23 00:55:43','2006-02-15 22:19:21'),(12467,461,2,15613,'7.99','2005-08-23 07:03:19','2006-02-15 22:19:21'),(12468,462,2,156,'2.99','2005-05-26 01:19:05','2006-02-15 22:19:21'),(12469,462,2,590,'3.99','2005-05-28 13:06:50','2006-02-15 22:19:21'),(12470,462,2,1773,'5.99','2005-06-16 18:13:43','2006-02-15 22:19:21'),(12471,462,2,1926,'9.99','2005-06-17 06:24:30','2006-02-15 22:19:21'),(12472,462,1,3279,'4.99','2005-06-21 06:05:53','2006-02-15 22:19:22'),(12473,462,1,4500,'4.99','2005-07-08 02:10:01','2006-02-15 22:19:22'),(12474,462,2,4728,'3.99','2005-07-08 12:59:01','2006-02-15 22:19:22'),(12475,462,1,6583,'4.99','2005-07-12 06:42:31','2006-02-15 22:19:22'),(12476,462,1,6630,'0.99','2005-07-12 09:30:05','2006-02-15 22:19:22'),(12477,462,1,6710,'7.99','2005-07-12 13:23:09','2006-02-15 22:19:22'),(12478,462,1,6721,'6.99','2005-07-12 13:42:58','2006-02-15 22:19:22'),(12479,462,2,7295,'8.99','2005-07-27 12:38:47','2006-02-15 22:19:22'),(12480,462,1,7324,'6.99','2005-07-27 13:42:39','2006-02-15 22:19:22'),(12481,462,1,7762,'8.99','2005-07-28 06:34:23','2006-02-15 22:19:22'),(12482,462,1,7932,'4.99','2005-07-28 12:24:54','2006-02-15 22:19:22'),(12483,462,2,7935,'2.99','2005-07-28 12:33:17','2006-02-15 22:19:22'),(12484,462,1,8066,'2.99','2005-07-28 17:20:09','2006-02-15 22:19:22'),(12485,462,1,8282,'0.99','2005-07-29 01:49:04','2006-02-15 22:19:22'),(12486,462,1,8290,'3.99','2005-07-29 02:24:08','2006-02-15 22:19:22'),(12487,462,2,8757,'2.99','2005-07-29 19:19:10','2006-02-15 22:19:22'),(12488,462,1,9891,'0.99','2005-07-31 14:05:44','2006-02-15 22:19:22'),(12489,462,1,10283,'2.99','2005-08-01 03:29:45','2006-02-15 22:19:23'),(12490,462,2,11639,'6.99','2005-08-17 04:43:29','2006-02-15 22:19:23'),(12491,462,1,11808,'2.99','2005-08-17 11:51:16','2006-02-15 22:19:23'),(12492,462,1,12466,'4.99','2005-08-18 11:36:55','2006-02-15 22:19:23'),(12493,462,2,12582,'0.99','2005-08-18 15:51:12','2006-02-15 22:19:23'),(12494,462,1,12802,'8.99','2005-08-19 00:27:41','2006-02-15 22:19:23'),(12495,462,2,13041,'8.99','2005-08-19 09:05:38','2006-02-15 22:19:23'),(12496,462,1,13328,'4.99','2005-08-19 19:56:01','2006-02-15 22:19:23'),(12497,462,1,13492,'7.99','2005-08-20 01:32:04','2006-02-15 22:19:23'),(12498,462,2,15581,'2.99','2005-08-23 05:42:13','2006-02-15 22:19:23'),(12499,462,1,15943,'2.99','2005-08-23 18:49:32','2006-02-15 22:19:23'),(12500,462,1,16013,'0.99','2005-08-23 21:17:17','2006-02-15 22:19:23'),(12501,463,1,560,'1.99','2005-05-28 08:53:02','2006-02-15 22:19:23'),(12502,463,1,1284,'2.99','2005-06-15 08:27:33','2006-02-15 22:19:23'),(12503,463,2,2527,'4.99','2005-06-19 01:10:31','2006-02-15 22:19:23'),(12504,463,1,3217,'2.99','2005-06-21 01:28:12','2006-02-15 22:19:23'),(12505,463,1,3309,'4.99','2005-06-21 08:00:49','2006-02-15 22:19:23'),(12506,463,1,5026,'2.99','2005-07-09 02:32:34','2006-02-15 22:19:24'),(12507,463,1,5157,'2.99','2005-07-09 08:52:12','2006-02-15 22:19:24'),(12508,463,1,5448,'0.99','2005-07-09 22:11:14','2006-02-15 22:19:24'),(12509,463,2,6294,'0.99','2005-07-11 17:25:55','2006-02-15 22:19:24'),(12510,463,1,6932,'6.99','2005-07-26 23:08:04','2006-02-15 22:19:24'),(12511,463,1,7013,'0.99','2005-07-27 02:03:21','2006-02-15 22:19:24'),(12512,463,1,7361,'0.99','2005-07-27 14:53:55','2006-02-15 22:19:24'),(12513,463,1,8762,'2.99','2005-07-29 19:30:02','2006-02-15 22:19:24'),(12514,463,2,9405,'7.99','2005-07-30 20:22:17','2006-02-15 22:19:24'),(12515,463,1,9954,'2.99','2005-07-31 15:57:07','2006-02-15 22:19:24'),(12516,463,1,10275,'3.99','2005-08-01 03:20:08','2006-02-15 22:19:24'),(12517,463,2,10405,'0.99','2005-08-01 07:35:25','2006-02-15 22:19:24'),(12518,463,2,10906,'2.99','2005-08-02 01:47:04','2006-02-15 22:19:24'),(12519,463,2,12096,'7.99','2005-08-17 22:32:50','2006-02-15 22:19:24'),(12520,463,2,12679,'6.99','2005-08-18 19:42:11','2006-02-15 22:19:24'),(12521,463,1,12950,'2.99','2005-08-19 05:55:58','2006-02-15 22:19:24'),(12522,463,2,13938,'4.99','2005-08-20 17:24:45','2006-02-15 22:19:24'),(12523,463,1,14689,'0.99','2005-08-21 20:33:00','2006-02-15 22:19:24'),(12524,463,1,14859,'2.99','2005-08-22 02:46:35','2006-02-15 22:19:25'),(12525,463,2,15151,'7.99','2005-08-22 14:23:11','2006-02-15 22:19:25'),(12526,464,1,305,'3.99','2005-05-26 21:22:07','2006-02-15 22:19:25'),(12527,464,2,373,'1.99','2005-05-27 08:16:25','2006-02-15 22:19:25'),(12528,464,2,1277,'4.99','2005-06-15 08:01:29','2006-02-15 22:19:25'),(12529,464,1,3167,'2.99','2005-06-20 21:42:29','2006-02-15 22:19:25'),(12530,464,1,3761,'4.99','2005-07-06 12:52:44','2006-02-15 22:19:25'),(12531,464,1,4337,'5.99','2005-07-07 18:36:37','2006-02-15 22:19:25'),(12532,464,2,5455,'6.99','2005-07-09 22:28:45','2006-02-15 22:19:25'),(12533,464,1,5910,'4.99','2005-07-10 20:51:34','2006-02-15 22:19:25'),(12534,464,2,6601,'3.99','2005-07-12 07:44:49','2006-02-15 22:19:25'),(12535,464,1,9600,'5.99','2005-07-31 03:35:34','2006-02-15 22:19:25'),(12536,464,2,11275,'1.99','2005-08-02 14:25:58','2006-02-15 22:19:25'),(12537,464,1,13644,'8.99','2005-08-20 07:46:30','2006-02-15 22:19:25'),(12538,464,2,13943,'2.99','2005-08-20 17:31:18','2006-02-15 22:19:25'),(12539,464,1,15092,'6.99','2005-08-22 11:36:16','2006-02-15 22:19:25'),(12540,464,2,15854,'0.99','2005-08-23 15:58:05','2006-02-15 22:19:25'),(12541,464,1,15983,'4.99','2005-08-23 20:13:38','2006-02-15 22:19:26'),(12542,465,2,640,'0.99','2005-05-28 18:43:26','2006-02-15 22:19:26'),(12543,465,1,1337,'2.99','2005-06-15 12:12:42','2006-02-15 22:19:26'),(12544,465,1,2079,'4.99','2005-06-17 16:49:45','2006-02-15 22:19:26'),(12545,465,1,2159,'8.99','2005-06-17 23:37:29','2006-02-15 22:19:26'),(12546,465,2,2524,'0.99','2005-06-19 00:48:11','2006-02-15 22:19:26'),(12547,465,1,4763,'0.99','2005-07-08 14:57:32','2006-02-15 22:19:26'),(12548,465,2,6904,'3.99','2005-07-12 22:02:09','2006-02-15 22:19:26'),(12549,465,2,7508,'2.99','2005-07-27 20:33:08','2006-02-15 22:19:26'),(12550,465,1,10542,'3.99','2005-08-01 12:32:23','2006-02-15 22:19:26'),(12551,465,1,11156,'2.99','2005-08-02 09:56:06','2006-02-15 22:19:26'),(12552,465,1,11586,'4.99','2005-08-17 02:20:42','2006-02-15 22:19:26'),(12553,465,2,11648,'6.99','2005-08-17 04:56:16','2006-02-15 22:19:26'),(12554,465,2,12106,'4.99','2005-08-17 22:55:32','2006-02-15 22:19:26'),(12555,465,1,12814,'4.99','2005-08-19 00:58:24','2006-02-15 22:19:26'),(12556,465,1,12864,'4.99','2005-08-19 02:38:26','2006-02-15 22:19:26'),(12557,465,1,15550,'3.99','2005-08-23 04:27:54','2006-02-15 22:19:26'),(12558,465,2,15859,'4.99','2005-08-23 16:08:15','2006-02-15 22:19:27'),(12559,466,2,1104,'2.99','2005-05-31 14:30:01','2006-02-15 22:19:27'),(12560,466,2,1808,'7.99','2005-06-16 20:59:35','2006-02-15 22:19:27'),(12561,466,2,2446,'8.99','2005-06-18 19:04:41','2006-02-15 22:19:27'),(12562,466,1,3022,'3.99','2005-06-20 11:17:20','2006-02-15 22:19:27'),(12563,466,2,3237,'4.99','2005-06-21 02:47:56','2006-02-15 22:19:27'),(12564,466,2,3343,'2.99','2005-06-21 10:56:59','2006-02-15 22:19:27'),(12565,466,2,5048,'0.99','2005-07-09 03:46:33','2006-02-15 22:19:27'),(12566,466,1,5691,'4.99','2005-07-10 09:29:49','2006-02-15 22:19:27'),(12567,466,1,6073,'6.99','2005-07-11 04:54:31','2006-02-15 22:19:27'),(12568,466,2,7080,'2.99','2005-07-27 04:25:25','2006-02-15 22:19:27'),(12569,466,2,8276,'0.99','2005-07-29 01:38:43','2006-02-15 22:19:27'),(12570,466,1,9202,'3.99','2005-07-30 12:43:24','2006-02-15 22:19:27'),(12571,466,1,9257,'2.99','2005-07-30 14:30:38','2006-02-15 22:19:27'),(12572,466,1,10469,'4.99','2005-08-01 09:51:11','2006-02-15 22:19:27'),(12573,466,2,11343,'0.99','2005-08-02 17:12:30','2006-02-15 22:19:27'),(12574,466,1,11359,'4.99','2005-08-02 17:45:55','2006-02-15 22:19:27'),(12575,466,1,12048,'7.99','2005-08-17 20:49:24','2006-02-15 22:19:27'),(12576,466,1,13478,'2.99','2005-08-20 01:07:14','2006-02-15 22:19:28'),(12577,466,1,13884,'5.99','2005-08-20 15:30:51','2006-02-15 22:19:28'),(12578,466,1,13988,'4.99','2005-08-20 19:21:28','2006-02-15 22:19:28'),(12579,466,2,14546,'2.99','2005-08-21 15:50:50','2006-02-15 22:19:28'),(12580,466,2,15230,'4.99','2005-08-22 17:31:41','2006-02-15 22:19:28'),(12581,466,1,16005,'7.99','2005-08-23 21:00:22','2006-02-15 22:19:28'),(12582,467,2,225,'4.99','2005-05-26 10:27:50','2006-02-15 22:19:28'),(12583,467,1,1737,'8.99','2005-06-16 15:59:44','2006-02-15 22:19:28'),(12584,467,2,2121,'4.99','2005-06-17 20:38:54','2006-02-15 22:19:28'),(12585,467,2,2870,'9.99','2005-06-20 00:17:46','2006-02-15 22:19:28'),(12586,467,1,3250,'6.99','2005-06-21 03:16:36','2006-02-15 22:19:28'),(12587,467,1,4216,'0.99','2005-07-07 12:01:34','2006-02-15 22:19:28'),(12588,467,2,4222,'4.99','2005-07-07 12:20:21','2006-02-15 22:19:28'),(12589,467,1,4259,'4.99','2005-07-07 14:22:18','2006-02-15 22:19:28'),(12590,467,2,5160,'4.99','2005-07-09 08:57:07','2006-02-15 22:19:28'),(12591,467,2,6271,'6.99','2005-07-11 16:01:35','2006-02-15 22:19:28'),(12592,467,2,7360,'2.99','2005-07-27 14:52:06','2006-02-15 22:19:28'),(12593,467,2,7573,'5.99','2005-07-27 22:46:20','2006-02-15 22:19:29'),(12594,467,1,7611,'2.99','2005-07-28 00:11:47','2006-02-15 22:19:29'),(12595,467,1,8010,'7.99','2005-07-28 15:26:20','2006-02-15 22:19:29'),(12596,467,2,8061,'6.99','2005-07-28 17:12:53','2006-02-15 22:19:29'),(12597,467,2,8224,'2.99','2005-07-28 23:59:02','2006-02-15 22:19:29'),(12598,467,2,8480,'8.99','2005-07-29 08:44:46','2006-02-15 22:19:29'),(12599,467,1,8767,'4.99','2005-07-29 19:42:33','2006-02-15 22:19:29'),(12600,467,2,10239,'0.99','2005-08-01 02:09:22','2006-02-15 22:19:29'),(12601,467,2,11332,'2.99','2005-08-02 16:52:57','2006-02-15 22:19:29'),(12602,467,1,11874,'4.99','2005-08-17 14:16:40','2006-02-15 22:19:29'),(12603,467,1,12266,'2.99','2005-08-18 04:22:31','2006-02-15 22:19:29'),(12604,467,1,12437,'9.99','2005-08-18 10:42:43','2006-02-15 22:19:29'),(12605,467,1,12641,'2.99','2005-08-18 18:18:08','2006-02-15 22:19:29'),(12606,467,1,14402,'2.99','2005-08-21 10:38:17','2006-02-15 22:19:29'),(12607,467,1,14451,'0.99','2005-08-21 12:21:44','2006-02-15 22:19:29'),(12608,467,1,14842,'3.99','2005-08-22 02:04:38','2006-02-15 22:19:29'),(12609,467,1,15032,'0.99','2005-08-22 09:14:09','2006-02-15 22:19:29'),(12610,467,2,15830,'2.99','2005-08-23 15:19:15','2006-02-15 22:19:30'),(12611,468,2,101,'6.99','2005-05-25 17:17:04','2006-02-15 22:19:30'),(12612,468,1,186,'4.99','2005-05-26 05:32:52','2006-02-15 22:19:30'),(12613,468,2,296,'6.99','2005-05-26 20:35:19','2006-02-15 22:19:30'),(12614,468,2,459,'0.99','2005-05-27 20:00:04','2006-02-15 22:19:30'),(12615,468,1,673,'0.99','2005-05-28 22:07:30','2006-02-15 22:19:30'),(12616,468,2,1229,'2.99','2005-06-15 03:53:13','2006-02-15 22:19:30'),(12617,468,1,1627,'8.99','2005-06-16 07:51:09','2006-02-15 22:19:30'),(12618,468,1,1821,'2.99','2005-06-16 21:42:49','2006-02-15 22:19:30'),(12619,468,1,1975,'2.99','2005-06-17 09:32:10','2006-02-15 22:19:30'),(12620,468,2,2462,'4.99','2005-06-18 20:00:15','2006-02-15 22:19:30'),(12621,468,1,2831,'0.99','2005-06-19 21:17:06','2006-02-15 22:19:30'),(12622,468,2,3724,'2.99','2005-07-06 11:12:48','2006-02-15 22:19:30'),(12623,468,1,3840,'5.99','2005-07-06 16:30:59','2006-02-15 22:19:30'),(12624,468,2,4184,'3.99','2005-07-07 10:30:08','2006-02-15 22:19:30'),(12625,468,2,4527,'3.99','2005-07-08 03:20:10','2006-02-15 22:19:30'),(12626,468,1,5285,'2.99','2005-07-09 15:10:44','2006-02-15 22:19:30'),(12627,468,1,6392,'0.99','2005-07-11 22:25:19','2006-02-15 22:19:31'),(12628,468,1,6581,'4.99','2005-07-12 06:26:49','2006-02-15 22:19:31'),(12629,468,2,6815,'5.99','2005-07-12 18:14:10','2006-02-15 22:19:31'),(12630,468,2,7292,'4.99','2005-07-27 12:34:14','2006-02-15 22:19:31'),(12631,468,1,7685,'0.99','2005-07-28 03:13:00','2006-02-15 22:19:31'),(12632,468,2,8423,'5.99','2005-07-29 07:02:57','2006-02-15 22:19:31'),(12633,468,2,8768,'6.99','2005-07-29 19:43:02','2006-02-15 22:19:31'),(12634,468,1,9598,'0.99','2005-07-31 03:30:41','2006-02-15 22:19:31'),(12635,468,1,9690,'6.99','2005-07-31 07:06:29','2006-02-15 22:19:31'),(12636,468,2,11257,'10.99','2005-08-02 13:45:05','2006-02-15 22:19:31'),(12637,468,2,11633,'4.99','2005-08-17 04:30:09','2006-02-15 22:19:31'),(12638,468,2,12026,'6.99','2005-08-17 20:00:10','2006-02-15 22:19:31'),(12639,468,2,13221,'3.99','2005-08-19 15:45:47','2006-02-15 22:19:31'),(12640,468,1,13417,'0.99','2005-08-19 22:51:39','2006-02-15 22:19:31'),(12641,468,2,14154,'4.99','2005-08-21 02:30:00','2006-02-15 22:19:31'),(12642,468,2,14210,'4.99','2005-08-21 04:28:02','2006-02-15 22:19:31'),(12643,468,1,14309,'9.99','2005-08-21 07:44:17','2006-02-15 22:19:31'),(12644,468,1,14313,'2.99','2005-08-21 07:49:53','2006-02-15 22:19:32'),(12645,468,1,14614,'9.99','2005-08-21 18:03:51','2006-02-15 22:19:32'),(12646,468,2,15435,'4.99','2005-08-23 00:28:19','2006-02-15 22:19:32'),(12647,468,1,15522,'1.99','2005-08-23 03:32:31','2006-02-15 22:19:32'),(12648,468,1,15836,'2.99','2005-08-23 15:29:17','2006-02-15 22:19:32'),(12649,468,2,16044,'0.99','2005-08-23 22:24:39','2006-02-15 22:19:32'),(12650,469,1,168,'0.99','2005-05-26 03:07:43','2006-02-15 22:19:32'),(12651,469,2,506,'7.99','2005-05-28 02:09:19','2006-02-15 22:19:32'),(12652,469,2,529,'4.99','2005-05-28 04:34:17','2006-02-15 22:19:32'),(12653,469,2,936,'1.99','2005-05-30 13:52:49','2006-02-15 22:19:32'),(12654,469,1,1119,'2.99','2005-05-31 16:34:27','2006-02-15 22:19:32'),(12655,469,2,1399,'0.99','2005-06-15 16:29:51','2006-02-15 22:19:32'),(12656,469,1,1680,'9.99','2005-06-16 11:17:22','2006-02-15 22:19:32'),(12657,469,2,3522,'4.99','2005-07-06 01:00:21','2006-02-15 22:19:32'),(12658,469,1,3526,'10.99','2005-07-06 01:03:29','2006-02-15 22:19:32'),(12659,469,2,4067,'3.99','2005-07-07 04:34:23','2006-02-15 22:19:32'),(12660,469,2,4123,'0.99','2005-07-07 07:16:19','2006-02-15 22:19:32'),(12661,469,1,5133,'0.99','2005-07-09 07:43:22','2006-02-15 22:19:33'),(12662,469,1,5299,'3.99','2005-07-09 15:38:09','2006-02-15 22:19:33'),(12663,469,2,5664,'6.99','2005-07-10 08:04:41','2006-02-15 22:19:33'),(12664,469,2,6022,'0.99','2005-07-11 02:15:53','2006-02-15 22:19:33'),(12665,469,2,6099,'4.99','2005-07-11 06:24:44','2006-02-15 22:19:33'),(12666,469,1,6797,'4.99','2005-07-12 16:47:06','2006-02-15 22:19:33'),(12667,469,1,6955,'3.99','2005-07-26 23:55:48','2006-02-15 22:19:33'),(12668,469,2,7062,'6.99','2005-07-27 03:52:01','2006-02-15 22:19:33'),(12669,469,2,7271,'6.99','2005-07-27 11:29:11','2006-02-15 22:19:33'),(12670,469,2,7756,'4.99','2005-07-28 06:22:52','2006-02-15 22:19:33'),(12671,469,1,7914,'4.99','2005-07-28 11:48:08','2006-02-15 22:19:33'),(12672,469,2,8791,'0.99','2005-07-29 20:53:23','2006-02-15 22:19:33'),(12673,469,1,9187,'2.99','2005-07-30 12:14:03','2006-02-15 22:19:33'),(12674,469,2,10075,'4.99','2005-07-31 19:58:42','2006-02-15 22:19:33'),(12675,469,1,10258,'4.99','2005-08-01 02:51:09','2006-02-15 22:19:33'),(12676,469,1,10316,'4.99','2005-08-01 04:34:57','2006-02-15 22:19:33'),(12677,469,1,10658,'2.99','2005-08-01 16:39:18','2006-02-15 22:19:33'),(12678,469,1,10741,'2.99','2005-08-01 19:52:52','2006-02-15 22:19:34'),(12679,469,2,11185,'0.99','2005-08-02 11:04:35','2006-02-15 22:19:34'),(12680,469,2,12035,'0.99','2005-08-17 20:18:06','2006-02-15 22:19:34'),(12681,469,1,12447,'4.99','2005-08-18 10:57:01','2006-02-15 22:19:34'),(12682,469,1,12633,'6.99','2005-08-18 17:55:38','2006-02-15 22:19:34'),(12683,469,1,13654,'4.99','2005-08-20 07:58:21','2006-02-15 22:19:34'),(12684,469,1,13763,'2.99','2005-08-20 11:37:56','2006-02-15 22:19:34'),(12685,469,2,14197,'7.99','2005-08-21 03:47:25','2006-02-15 22:19:34'),(12686,469,2,14661,'2.99','2005-08-21 19:44:21','2006-02-15 22:19:34'),(12687,469,1,15487,'4.99','2005-08-23 02:05:51','2006-02-15 22:19:34'),(12688,469,1,15561,'9.99','2005-08-23 05:02:31','2006-02-15 22:19:34'),(12689,469,1,15851,'2.99','2005-08-23 15:46:33','2006-02-15 22:19:34'),(12690,470,2,60,'2.99','2005-05-25 08:58:25','2006-02-15 22:19:34'),(12691,470,2,1256,'0.99','2005-06-15 06:13:57','2006-02-15 22:19:34'),(12692,470,1,1283,'0.99','2005-06-15 08:27:30','2006-02-15 22:19:34'),(12693,470,2,1594,'7.99','2005-06-16 05:15:12','2006-02-15 22:19:34'),(12694,470,1,3764,'5.99','2005-07-06 13:01:03','2006-02-15 22:19:34'),(12695,470,1,3841,'4.99','2005-07-06 16:34:00','2006-02-15 22:19:35'),(12696,470,1,3922,'4.99','2005-07-06 20:32:27','2006-02-15 22:19:35'),(12697,470,1,4373,'4.99','2005-07-07 20:10:59','2006-02-15 22:19:35'),(12698,470,2,4502,'6.99','2005-07-08 02:12:04','2006-02-15 22:19:35'),(12699,470,2,5082,'4.99','2005-07-09 05:28:38','2006-02-15 22:19:35'),(12700,470,1,6009,'3.99','2005-07-11 01:51:58','2006-02-15 22:19:35'),(12701,470,1,6198,'2.99','2005-07-11 12:12:17','2006-02-15 22:19:35'),(12702,470,2,6703,'4.99','2005-07-12 12:50:19','2006-02-15 22:19:35'),(12703,470,1,6927,'10.99','2005-07-26 22:56:00','2006-02-15 22:19:35'),(12704,470,1,6942,'5.99','2005-07-26 23:27:40','2006-02-15 22:19:35'),(12705,470,1,7663,'4.99','2005-07-28 02:19:48','2006-02-15 22:19:35'),(12706,470,2,8476,'8.99','2005-07-29 08:39:12','2006-02-15 22:19:35'),(12707,470,1,8890,'6.99','2005-07-30 00:42:06','2006-02-15 22:19:35'),(12708,470,1,9422,'5.99','2005-07-30 21:08:41','2006-02-15 22:19:35'),(12709,470,1,9687,'2.99','2005-07-31 06:52:54','2006-02-15 22:19:35'),(12710,470,1,10006,'4.99','2005-07-31 17:54:35','2006-02-15 22:19:35'),(12711,470,1,10236,'0.99','2005-08-01 02:05:34','2006-02-15 22:19:35'),(12712,470,2,10944,'4.99','2005-08-02 03:20:03','2006-02-15 22:19:36'),(12713,470,2,11397,'1.99','2005-08-02 18:53:14','2006-02-15 22:19:36'),(12714,470,2,11711,'2.99','2005-08-17 07:30:55','2006-02-15 22:19:36'),(12715,470,1,11742,'0.99','2005-08-17 08:48:43','2006-02-15 22:19:36'),(12716,470,2,12177,'3.99','2005-08-18 01:15:47','2006-02-15 22:19:36'),(12717,470,2,12423,'8.99','2005-08-18 10:14:52','2006-02-15 22:19:36'),(12718,470,1,12753,'10.99','2005-08-18 22:37:39','2006-02-15 22:19:36'),(12719,470,2,13585,'4.99','2005-08-20 05:32:23','2006-02-15 22:19:36'),(12720,470,1,13592,'4.99','2005-08-20 05:50:35','2006-02-15 22:19:36'),(12721,470,2,14405,'4.99','2005-08-21 10:45:01','2006-02-15 22:19:36'),(12722,471,1,616,'2.99','2005-05-28 15:45:39','2006-02-15 22:19:36'),(12723,471,1,1447,'4.99','2005-06-15 19:13:51','2006-02-15 22:19:36'),(12724,471,2,1449,'2.99','2005-06-15 19:19:16','2006-02-15 22:19:36'),(12725,471,2,2165,'2.99','2005-06-17 23:51:10','2006-02-15 22:19:36'),(12726,471,2,2350,'4.99','2005-06-18 12:25:29','2006-02-15 22:19:36'),(12727,471,2,3073,'4.99','2005-06-20 14:33:26','2006-02-15 22:19:36'),(12728,471,1,3917,'0.99','2005-07-06 20:19:29','2006-02-15 22:19:36'),(12729,471,1,4020,'2.99','2005-07-07 01:42:22','2006-02-15 22:19:37'),(12730,471,2,6293,'2.99','2005-07-11 17:24:57','2006-02-15 22:19:37'),(12731,471,1,6336,'8.99','2005-07-11 19:30:13','2006-02-15 22:19:37'),(12732,471,1,6912,'5.99','2005-07-12 22:17:16','2006-02-15 22:19:37'),(12733,471,1,8199,'0.99','2005-07-28 23:10:25','2006-02-15 22:19:37'),(12734,471,1,9077,'2.99','2005-07-30 08:00:19','2006-02-15 22:19:37'),(12735,471,1,9502,'0.99','2005-07-31 00:02:10','2006-02-15 22:19:37'),(12736,471,2,9560,'2.99','2005-07-31 02:17:27','2006-02-15 22:19:37'),(12737,471,1,10430,'2.99','2005-08-01 08:37:06','2006-02-15 22:19:37'),(12738,471,2,10828,'3.99','2005-08-01 23:16:10','2006-02-15 22:19:37'),(12739,471,2,11601,'4.99','2005-08-17 03:14:47','2006-02-15 22:19:37'),(12740,471,1,12271,'4.99','2005-08-18 04:33:11','2006-02-15 22:19:37'),(12741,471,1,13661,'5.99','2005-08-20 08:05:59','2006-02-15 22:19:37'),(12742,471,1,14085,'7.99','2005-08-20 23:46:24','2006-02-15 22:19:37'),(12743,471,1,14094,'4.99','2005-08-21 00:21:35','2006-02-15 22:19:37'),(12744,471,1,14317,'5.99','2005-08-21 08:00:40','2006-02-15 22:19:37'),(12745,471,2,14538,'2.99','2005-08-21 15:28:15','2006-02-15 22:19:37'),(12746,471,2,14942,'7.99','2005-08-22 05:58:27','2006-02-15 22:19:38'),(12747,471,2,15184,'0.99','2005-08-22 15:51:12','2006-02-15 22:19:38'),(12748,471,1,15654,'1.99','2005-08-23 08:34:53','2006-02-15 22:19:38'),(12749,472,2,142,'0.99','2005-05-25 23:43:47','2006-02-15 22:19:38'),(12750,472,2,249,'2.99','2005-05-26 14:19:09','2006-02-15 22:19:38'),(12751,472,2,800,'0.99','2005-05-29 17:28:12','2006-02-15 22:19:38'),(12752,472,2,994,'4.99','2005-05-30 23:55:36','2006-02-15 22:19:38'),(12753,472,1,1389,'4.99','2005-06-15 15:49:01','2006-02-15 22:19:38'),(12754,472,2,1776,'6.99','2005-06-16 18:46:58','2006-02-15 22:19:38'),(12755,472,1,2538,'5.99','2005-06-19 01:56:59','2006-02-15 22:19:38'),(12756,472,1,2974,'0.99','2005-06-20 08:00:24','2006-02-15 22:19:38'),(12757,472,1,2991,'4.99','2005-06-20 09:10:43','2006-02-15 22:19:38'),(12758,472,1,3254,'0.99','2005-06-21 03:27:10','2006-02-15 22:19:38'),(12759,472,2,3815,'6.99','2005-07-06 15:26:36','2006-02-15 22:19:38'),(12760,472,2,5318,'2.99','2005-07-09 16:11:33','2006-02-15 22:19:38'),(12761,472,1,5612,'3.99','2005-07-10 05:15:12','2006-02-15 22:19:38'),(12762,472,1,6119,'6.99','2005-07-11 07:44:46','2006-02-15 22:19:38'),(12763,472,2,6274,'5.99','2005-07-11 16:09:42','2006-02-15 22:19:38'),(12764,472,1,6308,'5.99','2005-07-11 18:08:41','2006-02-15 22:19:39'),(12765,472,1,6584,'2.99','2005-07-12 06:43:36','2006-02-15 22:19:39'),(12766,472,2,8929,'5.99','2005-07-30 02:28:22','2006-02-15 22:19:39'),(12767,472,2,9926,'6.99','2005-07-31 15:11:51','2006-02-15 22:19:39'),(12768,472,1,10282,'6.99','2005-08-01 03:29:10','2006-02-15 22:19:39'),(12769,472,1,10627,'0.99','2005-08-01 15:33:03','2006-02-15 22:19:39'),(12770,472,1,11911,'6.99','2005-08-17 15:51:35','2006-02-15 22:19:39'),(12771,472,2,12763,'4.99','2005-08-18 23:07:01','2006-02-15 22:19:39'),(12772,472,2,13188,'8.99','2005-08-19 14:27:03','2006-02-15 22:19:39'),(12773,472,1,14209,'4.99','2005-08-21 04:17:56','2006-02-15 22:19:39'),(12774,472,2,14596,'4.99','2005-08-21 17:38:37','2006-02-15 22:19:39'),(12775,472,1,14597,'4.99','2005-08-21 17:39:41','2006-02-15 22:19:39'),(12776,472,2,15185,'5.99','2005-08-22 15:52:50','2006-02-15 22:19:39'),(12777,472,2,15278,'2.99','2005-08-22 19:06:47','2006-02-15 22:19:39'),(12778,472,2,14928,'4.99','2006-02-14 15:16:03','2006-02-15 22:19:39'),(12779,473,1,348,'4.99','2005-05-27 04:50:56','2006-02-15 22:19:39'),(12780,473,2,942,'2.99','2005-05-30 15:05:47','2006-02-15 22:19:39'),(12781,473,2,973,'3.99','2005-05-30 20:27:45','2006-02-15 22:19:40'),(12782,473,2,1748,'0.99','2005-06-16 16:54:03','2006-02-15 22:19:40'),(12783,473,1,2125,'2.99','2005-06-17 20:53:42','2006-02-15 22:19:40'),(12784,473,2,2553,'4.99','2005-06-19 03:04:59','2006-02-15 22:19:40'),(12785,473,2,2748,'4.99','2005-06-19 16:22:26','2006-02-15 22:19:40'),(12786,473,1,3971,'0.99','2005-07-06 22:50:40','2006-02-15 22:19:40'),(12787,473,2,4006,'4.99','2005-07-07 00:25:29','2006-02-15 22:19:40'),(12788,473,2,4625,'4.99','2005-07-08 08:14:26','2006-02-15 22:19:40'),(12789,473,1,4873,'0.99','2005-07-08 19:23:32','2006-02-15 22:19:40'),(12790,473,2,5447,'5.99','2005-07-09 22:09:28','2006-02-15 22:19:40'),(12791,473,1,6446,'2.99','2005-07-12 00:44:08','2006-02-15 22:19:40'),(12792,473,2,6890,'4.99','2005-07-12 21:03:03','2006-02-15 22:19:40'),(12793,473,1,7111,'4.99','2005-07-27 05:38:16','2006-02-15 22:19:40'),(12794,473,1,7215,'2.99','2005-07-27 09:24:00','2006-02-15 22:19:40'),(12795,473,2,7918,'1.99','2005-07-28 11:58:53','2006-02-15 22:19:40'),(12796,473,2,7928,'7.99','2005-07-28 12:15:51','2006-02-15 22:19:40'),(12797,473,1,9025,'4.99','2005-07-30 05:50:08','2006-02-15 22:19:40'),(12798,473,2,9120,'8.99','2005-07-30 09:26:08','2006-02-15 22:19:41'),(12799,473,1,10867,'2.99','2005-08-02 00:24:15','2006-02-15 22:19:41'),(12800,473,2,11006,'2.99','2005-08-02 05:05:52','2006-02-15 22:19:41'),(12801,473,1,11216,'4.99','2005-08-02 12:23:43','2006-02-15 22:19:41'),(12802,473,1,11336,'0.99','2005-08-02 16:58:56','2006-02-15 22:19:41'),(12803,473,2,11421,'7.99','2005-08-02 19:51:53','2006-02-15 22:19:41'),(12804,473,1,11741,'0.99','2005-08-17 08:48:39','2006-02-15 22:19:41'),(12805,473,2,13984,'4.99','2005-08-20 19:12:30','2006-02-15 22:19:41'),(12806,473,2,14202,'0.99','2005-08-21 03:51:52','2006-02-15 22:19:41'),(12807,473,2,14550,'0.99','2005-08-21 15:56:39','2006-02-15 22:19:41'),(12808,473,2,14658,'4.99','2005-08-21 19:41:50','2006-02-15 22:19:41'),(12809,473,2,14757,'4.99','2005-08-21 23:23:37','2006-02-15 22:19:41'),(12810,473,1,15118,'4.99','2005-08-22 12:38:37','2006-02-15 22:19:41'),(12811,473,2,15400,'2.99','2005-08-22 23:13:03','2006-02-15 22:19:41'),(12812,473,2,16024,'4.99','2005-08-23 21:46:47','2006-02-15 22:19:41'),(12813,474,1,816,'7.99','2005-05-29 20:26:39','2006-02-15 22:19:41'),(12814,474,1,1758,'8.99','2005-06-16 17:39:39','2006-02-15 22:19:41'),(12815,474,2,2944,'7.99','2005-06-20 05:43:42','2006-02-15 22:19:42'),(12816,474,2,3787,'4.99','2005-07-06 14:02:01','2006-02-15 22:19:42'),(12817,474,2,4048,'1.99','2005-07-07 03:30:52','2006-02-15 22:19:42'),(12818,474,1,4481,'2.99','2005-07-08 00:58:15','2006-02-15 22:19:42'),(12819,474,1,4533,'0.99','2005-07-08 03:32:01','2006-02-15 22:19:42'),(12820,474,2,4785,'0.99','2005-07-08 16:10:19','2006-02-15 22:19:42'),(12821,474,1,4809,'2.99','2005-07-08 17:03:22','2006-02-15 22:19:42'),(12822,474,2,4886,'4.99','2005-07-08 19:53:22','2006-02-15 22:19:42'),(12823,474,1,5251,'0.99','2005-07-09 13:36:10','2006-02-15 22:19:42'),(12824,474,1,6499,'7.99','2005-07-12 03:11:18','2006-02-15 22:19:42'),(12825,474,1,8991,'2.99','2005-07-30 04:42:54','2006-02-15 22:19:42'),(12826,474,2,10376,'5.99','2005-08-01 06:27:13','2006-02-15 22:19:42'),(12827,474,2,11117,'0.99','2005-08-02 08:36:03','2006-02-15 22:19:42'),(12828,474,1,11489,'2.99','2005-08-02 22:35:28','2006-02-15 22:19:42'),(12829,474,2,11537,'2.99','2005-08-17 00:41:08','2006-02-15 22:19:42'),(12830,474,1,12083,'2.99','2005-08-17 22:13:37','2006-02-15 22:19:42'),(12831,474,1,12236,'4.99','2005-08-18 03:19:29','2006-02-15 22:19:43'),(12832,474,1,12440,'0.99','2005-08-18 10:47:35','2006-02-15 22:19:43'),(12833,474,2,12597,'2.99','2005-08-18 16:34:02','2006-02-15 22:19:43'),(12834,474,1,12702,'4.99','2005-08-18 20:30:33','2006-02-15 22:19:43'),(12835,474,1,14728,'0.99','2005-08-21 22:15:36','2006-02-15 22:19:43'),(12836,474,2,15046,'4.99','2005-08-22 09:54:54','2006-02-15 22:19:43'),(12837,474,1,15558,'6.99','2005-08-23 04:52:22','2006-02-15 22:19:43'),(12838,474,1,11909,'0.99','2006-02-14 15:16:03','2006-02-15 22:19:43'),(12839,475,2,417,'4.99','2005-05-27 15:07:27','2006-02-15 22:19:43'),(12840,475,1,702,'0.99','2005-05-29 02:27:30','2006-02-15 22:19:43'),(12841,475,2,3980,'5.99','2005-07-06 23:11:11','2006-02-15 22:19:43'),(12842,475,1,4013,'6.99','2005-07-07 00:58:00','2006-02-15 22:19:43'),(12843,475,1,4617,'4.99','2005-07-08 07:55:08','2006-02-15 22:19:43'),(12844,475,2,5379,'0.99','2005-07-09 19:08:03','2006-02-15 22:19:43'),(12845,475,1,5407,'0.99','2005-07-09 20:16:07','2006-02-15 22:19:43'),(12846,475,2,5415,'9.99','2005-07-09 20:30:03','2006-02-15 22:19:43'),(12847,475,2,5469,'2.99','2005-07-09 23:08:07','2006-02-15 22:19:43'),(12848,475,1,6224,'4.99','2005-07-11 13:42:18','2006-02-15 22:19:44'),(12849,475,1,7641,'7.99','2005-07-28 01:15:45','2006-02-15 22:19:44'),(12850,475,1,7775,'1.99','2005-07-28 07:04:36','2006-02-15 22:19:44'),(12851,475,2,8207,'5.99','2005-07-28 23:26:31','2006-02-15 22:19:44'),(12852,475,1,9183,'7.99','2005-07-30 12:09:56','2006-02-15 22:19:44'),(12853,475,1,9647,'2.99','2005-07-31 05:45:15','2006-02-15 22:19:44'),(12854,475,1,9737,'2.99','2005-07-31 08:59:18','2006-02-15 22:19:44'),(12855,475,2,10162,'3.99','2005-07-31 23:11:01','2006-02-15 22:19:44'),(12856,475,1,10357,'0.99','2005-08-01 05:49:49','2006-02-15 22:19:44'),(12857,475,1,10633,'3.99','2005-08-01 15:37:17','2006-02-15 22:19:44'),(12858,475,1,11293,'5.99','2005-08-02 15:00:43','2006-02-15 22:19:44'),(12859,475,1,11770,'4.99','2005-08-17 10:05:05','2006-02-15 22:19:44'),(12860,475,2,14303,'2.99','2005-08-21 07:22:43','2006-02-15 22:19:44'),(12861,475,1,15097,'1.99','2005-08-22 11:43:42','2006-02-15 22:19:44'),(12862,475,1,15288,'4.99','2005-08-22 19:23:58','2006-02-15 22:19:44'),(12863,476,1,489,'4.99','2005-05-28 00:09:12','2006-02-15 22:19:44'),(12864,476,1,771,'2.99','2005-05-29 12:59:14','2006-02-15 22:19:44'),(12865,476,1,1682,'3.99','2005-06-16 11:54:25','2006-02-15 22:19:44'),(12866,476,1,2080,'0.99','2005-06-17 16:59:40','2006-02-15 22:19:45'),(12867,476,2,2508,'4.99','2005-06-18 23:43:58','2006-02-15 22:19:45'),(12868,476,2,3448,'2.99','2005-06-21 20:59:20','2006-02-15 22:19:45'),(12869,476,2,3477,'7.99','2005-07-05 23:05:17','2006-02-15 22:19:45'),(12870,476,1,4010,'5.99','2005-07-07 00:47:00','2006-02-15 22:19:45'),(12871,476,2,4171,'4.99','2005-07-07 09:49:04','2006-02-15 22:19:45'),(12872,476,2,5644,'4.99','2005-07-10 06:57:44','2006-02-15 22:19:45'),(12873,476,1,6151,'2.99','2005-07-11 09:25:17','2006-02-15 22:19:45'),(12874,476,1,7461,'0.99','2005-07-27 18:45:15','2006-02-15 22:19:45'),(12875,476,1,8146,'0.99','2005-07-28 20:37:36','2006-02-15 22:19:45'),(12876,476,2,9325,'6.99','2005-07-30 17:29:19','2006-02-15 22:19:45'),(12877,476,2,9743,'3.99','2005-07-31 09:12:42','2006-02-15 22:19:45'),(12878,476,1,10346,'4.99','2005-08-01 05:19:23','2006-02-15 22:19:45'),(12879,476,1,10617,'9.99','2005-08-01 15:05:52','2006-02-15 22:19:45'),(12880,476,1,10826,'6.99','2005-08-01 23:07:56','2006-02-15 22:19:45'),(12881,476,1,12616,'4.99','2005-08-18 17:22:41','2006-02-15 22:19:45'),(12882,476,2,12709,'5.99','2005-08-18 20:59:51','2006-02-15 22:19:46'),(12883,476,1,15413,'0.99','2005-08-22 23:38:01','2006-02-15 22:19:46'),(12884,476,1,13941,'0.99','2006-02-14 15:16:03','2006-02-15 22:19:46'),(12885,477,1,882,'2.99','2005-05-30 06:16:06','2006-02-15 22:19:46'),(12886,477,1,1714,'6.99','2005-06-16 14:29:59','2006-02-15 22:19:46'),(12887,477,1,2187,'2.99','2005-06-18 01:17:27','2006-02-15 22:19:46'),(12888,477,1,2306,'10.99','2005-06-18 08:33:23','2006-02-15 22:19:46'),(12889,477,2,2676,'4.99','2005-06-19 11:54:57','2006-02-15 22:19:46'),(12890,477,2,4237,'5.99','2005-07-07 13:16:55','2006-02-15 22:19:46'),(12891,477,1,4283,'2.99','2005-07-07 15:29:35','2006-02-15 22:19:46'),(12892,477,2,4956,'7.99','2005-07-08 23:17:10','2006-02-15 22:19:46'),(12893,477,2,6265,'2.99','2005-07-11 15:43:51','2006-02-15 22:19:46'),(12894,477,2,7302,'2.99','2005-07-27 12:52:13','2006-02-15 22:19:46'),(12895,477,2,7904,'10.99','2005-07-28 11:25:39','2006-02-15 22:19:46'),(12896,477,1,8515,'6.99','2005-07-29 09:55:20','2006-02-15 22:19:46'),(12897,477,1,8821,'5.99','2005-07-29 22:18:12','2006-02-15 22:19:46'),(12898,477,2,8857,'2.99','2005-07-29 23:44:22','2006-02-15 22:19:46'),(12899,477,2,9446,'8.99','2005-07-30 21:53:01','2006-02-15 22:19:46'),(12900,477,1,10500,'4.99','2005-08-01 11:01:01','2006-02-15 22:19:47'),(12901,477,2,10912,'0.99','2005-08-02 02:00:03','2006-02-15 22:19:47'),(12902,477,2,12420,'4.99','2005-08-18 10:01:50','2006-02-15 22:19:47'),(12903,477,1,13002,'0.99','2005-08-19 07:37:58','2006-02-15 22:19:47'),(12904,477,2,14552,'3.99','2005-08-21 15:59:27','2006-02-15 22:19:47'),(12905,477,2,15091,'2.99','2005-08-22 11:34:43','2006-02-15 22:19:47'),(12906,477,1,15929,'2.99','2005-08-23 18:23:30','2006-02-15 22:19:47'),(12907,478,1,1708,'0.99','2005-06-16 14:08:44','2006-02-15 22:19:47'),(12908,478,2,2358,'4.99','2005-06-18 13:00:51','2006-02-15 22:19:47'),(12909,478,1,2529,'6.99','2005-06-19 01:18:27','2006-02-15 22:19:47'),(12910,478,2,2616,'8.99','2005-06-19 07:33:00','2006-02-15 22:19:47'),(12911,478,2,2765,'4.99','2005-06-19 17:34:39','2006-02-15 22:19:47'),(12912,478,2,3259,'4.99','2005-06-21 03:57:15','2006-02-15 22:19:47'),(12913,478,1,3691,'4.99','2005-07-06 09:46:12','2006-02-15 22:19:47'),(12914,478,1,5837,'4.99','2005-07-10 16:57:50','2006-02-15 22:19:47'),(12915,478,1,7522,'2.99','2005-07-27 21:11:03','2006-02-15 22:19:47'),(12916,478,2,8488,'4.99','2005-07-29 08:57:38','2006-02-15 22:19:48'),(12917,478,1,9665,'4.99','2005-07-31 06:17:33','2006-02-15 22:19:48'),(12918,478,2,10016,'4.99','2005-07-31 18:13:06','2006-02-15 22:19:48'),(12919,478,2,10127,'0.99','2005-07-31 21:39:48','2006-02-15 22:19:48'),(12920,478,1,11906,'2.99','2005-08-17 15:40:46','2006-02-15 22:19:48'),(12921,478,2,13162,'2.99','2005-08-19 13:28:26','2006-02-15 22:19:48'),(12922,478,2,13507,'4.99','2005-08-20 02:10:27','2006-02-15 22:19:48'),(12923,478,1,15027,'4.99','2005-08-22 09:03:04','2006-02-15 22:19:48'),(12924,478,2,15188,'4.99','2005-08-22 15:55:48','2006-02-15 22:19:48'),(12925,478,1,15724,'4.99','2005-08-23 11:22:09','2006-02-15 22:19:48'),(12926,479,2,132,'3.99','2005-05-25 21:46:54','2006-02-15 22:19:48'),(12927,479,1,709,'7.99','2005-05-29 03:48:01','2006-02-15 22:19:48'),(12928,479,1,1902,'2.99','2005-06-17 04:35:52','2006-02-15 22:19:48'),(12929,479,2,1947,'3.99','2005-06-17 08:02:20','2006-02-15 22:19:48'),(12930,479,2,1987,'2.99','2005-06-17 10:40:36','2006-02-15 22:19:48'),(12931,479,2,2071,'3.99','2005-06-17 16:33:17','2006-02-15 22:19:48'),(12932,479,2,2376,'2.99','2005-06-18 14:55:30','2006-02-15 22:19:48'),(12933,479,2,2764,'6.99','2005-06-19 17:27:25','2006-02-15 22:19:49'),(12934,479,2,3537,'6.99','2005-07-06 01:36:53','2006-02-15 22:19:49'),(12935,479,1,3798,'0.99','2005-07-06 14:57:53','2006-02-15 22:19:49'),(12936,479,2,4183,'8.99','2005-07-07 10:28:33','2006-02-15 22:19:49'),(12937,479,1,5481,'0.99','2005-07-09 23:51:57','2006-02-15 22:19:49'),(12938,479,1,5751,'4.99','2005-07-10 12:25:11','2006-02-15 22:19:49'),(12939,479,2,6084,'7.99','2005-07-11 05:16:20','2006-02-15 22:19:49'),(12940,479,1,6421,'1.99','2005-07-11 23:45:25','2006-02-15 22:19:49'),(12941,479,1,6597,'0.99','2005-07-12 07:37:02','2006-02-15 22:19:49'),(12942,479,2,6849,'8.99','2005-07-12 19:29:19','2006-02-15 22:19:49'),(12943,479,1,7060,'7.99','2005-07-27 03:51:04','2006-02-15 22:19:49'),(12944,479,2,7893,'2.99','2005-07-28 10:49:27','2006-02-15 22:19:49'),(12945,479,1,9347,'5.99','2005-07-30 18:16:03','2006-02-15 22:19:49'),(12946,479,1,9439,'8.99','2005-07-30 21:38:12','2006-02-15 22:19:49'),(12947,479,2,9697,'2.99','2005-07-31 07:23:11','2006-02-15 22:19:49'),(12948,479,2,9754,'7.99','2005-07-31 09:23:43','2006-02-15 22:19:49'),(12949,479,2,10303,'4.99','2005-08-01 04:13:33','2006-02-15 22:19:49'),(12950,479,2,11109,'4.99','2005-08-02 08:20:29','2006-02-15 22:19:50'),(12951,479,2,11584,'1.99','2005-08-17 02:13:26','2006-02-15 22:19:50'),(12952,479,2,11835,'4.99','2005-08-17 13:03:13','2006-02-15 22:19:50'),(12953,479,2,12401,'0.99','2005-08-18 09:20:51','2006-02-15 22:19:50'),(12954,479,2,13078,'8.99','2005-08-19 10:16:43','2006-02-15 22:19:50'),(12955,479,1,13974,'2.99','2005-08-20 18:54:59','2006-02-15 22:19:50'),(12956,479,1,12101,'0.99','2006-02-14 15:16:03','2006-02-15 22:19:50'),(12957,480,1,518,'0.99','2005-05-28 03:18:02','2006-02-15 22:19:50'),(12958,480,1,720,'6.99','2005-05-29 05:17:30','2006-02-15 22:19:50'),(12959,480,2,822,'9.99','2005-05-29 21:36:00','2006-02-15 22:19:50'),(12960,480,1,1353,'0.99','2005-06-15 13:13:36','2006-02-15 22:19:50'),(12961,480,1,1733,'0.99','2005-06-16 15:37:07','2006-02-15 22:19:50'),(12962,480,2,3507,'7.99','2005-07-06 00:23:43','2006-02-15 22:19:50'),(12963,480,2,5633,'2.99','2005-07-10 06:22:24','2006-02-15 22:19:50'),(12964,480,1,6191,'2.99','2005-07-11 11:37:52','2006-02-15 22:19:50'),(12965,480,1,7257,'2.99','2005-07-27 11:04:17','2006-02-15 22:19:50'),(12966,480,2,7910,'9.99','2005-07-28 11:44:56','2006-02-15 22:19:50'),(12967,480,2,8847,'4.99','2005-07-29 23:13:41','2006-02-15 22:19:51'),(12968,480,1,8967,'6.99','2005-07-30 03:56:55','2006-02-15 22:19:51'),(12969,480,2,9332,'4.99','2005-07-30 17:53:39','2006-02-15 22:19:51'),(12970,480,2,10808,'1.99','2005-08-01 22:37:11','2006-02-15 22:19:51'),(12971,480,2,11017,'0.99','2005-08-02 05:19:51','2006-02-15 22:19:51'),(12972,480,1,11369,'5.99','2005-08-02 18:04:41','2006-02-15 22:19:51'),(12973,480,2,12905,'4.99','2005-08-19 04:13:37','2006-02-15 22:19:51'),(12974,480,2,13092,'0.99','2005-08-19 10:41:09','2006-02-15 22:19:51'),(12975,480,2,13131,'9.99','2005-08-19 12:08:13','2006-02-15 22:19:51'),(12976,480,1,13831,'4.99','2005-08-20 13:59:35','2006-02-15 22:19:51'),(12977,480,2,15363,'2.99','2005-08-22 21:41:40','2006-02-15 22:19:51'),(12978,480,2,15579,'4.99','2005-08-23 05:38:41','2006-02-15 22:19:51'),(12979,481,2,1109,'5.99','2005-05-31 15:12:15','2006-02-15 22:19:51'),(12980,481,2,1168,'2.99','2005-06-14 23:35:09','2006-02-15 22:19:51'),(12981,481,2,2296,'4.99','2005-06-18 08:10:42','2006-02-15 22:19:51'),(12982,481,2,3285,'4.99','2005-06-21 06:30:13','2006-02-15 22:19:51'),(12983,481,2,3293,'0.99','2005-06-21 06:59:33','2006-02-15 22:19:51'),(12984,481,1,3863,'0.99','2005-07-06 17:40:18','2006-02-15 22:19:52'),(12985,481,1,4473,'2.99','2005-07-08 00:22:10','2006-02-15 22:19:52'),(12986,481,1,4505,'1.99','2005-07-08 02:20:04','2006-02-15 22:19:52'),(12987,481,1,4532,'0.99','2005-07-08 03:30:39','2006-02-15 22:19:52'),(12988,481,1,4668,'10.99','2005-07-08 10:11:45','2006-02-15 22:19:52'),(12989,481,2,5711,'2.99','2005-07-10 10:37:20','2006-02-15 22:19:52'),(12990,481,1,6044,'0.99','2005-07-11 03:18:39','2006-02-15 22:19:52'),(12991,481,1,7228,'4.99','2005-07-27 09:55:33','2006-02-15 22:19:52'),(12992,481,2,7836,'7.99','2005-07-28 08:55:27','2006-02-15 22:19:52'),(12993,481,1,8243,'6.99','2005-07-29 00:35:33','2006-02-15 22:19:52'),(12994,481,2,8271,'6.99','2005-07-29 01:27:44','2006-02-15 22:19:52'),(12995,481,1,9481,'4.99','2005-07-30 23:26:05','2006-02-15 22:19:52'),(12996,481,1,10018,'3.99','2005-07-31 18:15:14','2006-02-15 22:19:52'),(12997,481,2,11207,'0.99','2005-08-02 12:01:30','2006-02-15 22:19:52'),(12998,481,2,11387,'2.99','2005-08-02 18:32:38','2006-02-15 22:19:52'),(12999,481,1,11752,'4.99','2005-08-17 09:10:55','2006-02-15 22:19:52'),(13000,481,1,11885,'4.99','2005-08-17 14:53:53','2006-02-15 22:19:53'),(13001,481,2,12160,'2.99','2005-08-18 00:37:59','2006-02-15 22:19:53'),(13002,481,1,12981,'4.99','2005-08-19 07:04:00','2006-02-15 22:19:53'),(13003,481,2,13497,'2.99','2005-08-20 01:46:38','2006-02-15 22:19:53'),(13004,481,2,13878,'4.99','2005-08-20 15:17:38','2006-02-15 22:19:53'),(13005,481,1,13990,'1.99','2005-08-20 19:29:23','2006-02-15 22:19:53'),(13006,481,2,14280,'4.99','2005-08-21 06:39:58','2006-02-15 22:19:53'),(13007,481,2,14584,'0.99','2005-08-21 17:15:33','2006-02-15 22:19:53'),(13008,482,1,259,'8.99','2005-05-26 15:32:46','2006-02-15 22:19:53'),(13009,482,2,680,'2.99','2005-05-28 23:27:26','2006-02-15 22:19:53'),(13010,482,2,879,'0.99','2005-05-30 05:49:42','2006-02-15 22:19:53'),(13011,482,2,3048,'2.99','2005-06-20 12:49:55','2006-02-15 22:19:53'),(13012,482,2,3255,'0.99','2005-06-21 03:39:52','2006-02-15 22:19:53'),(13013,482,2,3650,'2.99','2005-07-06 07:34:15','2006-02-15 22:19:53'),(13014,482,1,4768,'4.99','2005-07-08 15:28:20','2006-02-15 22:19:53'),(13015,482,1,5334,'4.99','2005-07-09 17:00:13','2006-02-15 22:19:53'),(13016,482,1,5466,'4.99','2005-07-09 23:03:21','2006-02-15 22:19:53'),(13017,482,2,5810,'8.99','2005-07-10 15:22:04','2006-02-15 22:19:54'),(13018,482,2,5880,'2.99','2005-07-10 19:14:58','2006-02-15 22:19:54'),(13019,482,1,6355,'8.99','2005-07-11 20:56:29','2006-02-15 22:19:54'),(13020,482,2,6447,'7.99','2005-07-12 00:45:17','2006-02-15 22:19:54'),(13021,482,2,6844,'5.99','2005-07-12 19:14:53','2006-02-15 22:19:54'),(13022,482,2,7840,'6.99','2005-07-28 09:03:02','2006-02-15 22:19:54'),(13023,482,2,8584,'2.99','2005-07-29 12:07:53','2006-02-15 22:19:54'),(13024,482,2,9874,'6.99','2005-07-31 13:32:31','2006-02-15 22:19:54'),(13025,482,2,10824,'4.99','2005-08-01 23:00:22','2006-02-15 22:19:54'),(13026,482,2,10839,'2.99','2005-08-01 23:37:39','2006-02-15 22:19:54'),(13027,482,2,11498,'6.99','2005-08-16 22:52:54','2006-02-15 22:19:54'),(13028,482,1,13174,'4.99','2005-08-19 13:52:50','2006-02-15 22:19:54'),(13029,482,2,14383,'4.99','2005-08-21 10:02:05','2006-02-15 22:19:54'),(13030,482,2,14732,'0.99','2005-08-21 22:22:29','2006-02-15 22:19:54'),(13031,482,2,14891,'6.99','2005-08-22 04:11:02','2006-02-15 22:19:54'),(13032,482,2,14995,'4.99','2005-08-22 07:52:31','2006-02-15 22:19:54'),(13033,482,1,15391,'0.99','2005-08-22 23:01:45','2006-02-15 22:19:54'),(13034,482,1,15849,'5.99','2005-08-23 15:41:20','2006-02-15 22:19:55'),(13035,482,2,15865,'2.99','2005-08-23 16:18:25','2006-02-15 22:19:55'),(13036,482,1,15879,'3.99','2005-08-23 16:42:53','2006-02-15 22:19:55'),(13037,483,2,742,'6.99','2005-05-29 08:36:30','2006-02-15 22:19:55'),(13038,483,1,2855,'4.99','2005-06-19 23:11:49','2006-02-15 22:19:55'),(13039,483,2,2867,'0.99','2005-06-20 00:08:38','2006-02-15 22:19:55'),(13040,483,1,3380,'8.99','2005-06-21 13:58:46','2006-02-15 22:19:55'),(13041,483,2,3559,'4.99','2005-07-06 02:49:42','2006-02-15 22:19:55'),(13042,483,1,5823,'4.99','2005-07-10 16:19:52','2006-02-15 22:19:55'),(13043,483,2,6478,'4.99','2005-07-12 01:41:44','2006-02-15 22:19:55'),(13044,483,2,6899,'9.99','2005-07-12 21:44:16','2006-02-15 22:19:55'),(13045,483,2,7137,'0.99','2005-07-27 06:40:41','2006-02-15 22:19:55'),(13046,483,1,7381,'4.99','2005-07-27 15:40:26','2006-02-15 22:19:55'),(13047,483,1,7669,'4.99','2005-07-28 02:44:07','2006-02-15 22:19:55'),(13048,483,1,8057,'7.99','2005-07-28 17:07:13','2006-02-15 22:19:55'),(13049,483,1,8356,'4.99','2005-07-29 04:58:56','2006-02-15 22:19:55'),(13050,483,2,10677,'0.99','2005-08-01 17:24:35','2006-02-15 22:19:55'),(13051,483,1,10953,'6.99','2005-08-02 03:28:38','2006-02-15 22:19:56'),(13052,483,2,12331,'3.99','2005-08-18 06:47:19','2006-02-15 22:19:56'),(13053,483,2,12695,'2.99','2005-08-18 20:11:35','2006-02-15 22:19:56'),(13054,483,2,12875,'2.99','2005-08-19 03:10:21','2006-02-15 22:19:56'),(13055,484,2,35,'4.99','2005-05-25 04:24:36','2006-02-15 22:19:56'),(13056,484,2,668,'2.99','2005-05-28 21:54:45','2006-02-15 22:19:56'),(13057,484,2,727,'2.99','2005-05-29 06:08:15','2006-02-15 22:19:56'),(13058,484,1,1351,'3.99','2005-06-15 12:51:03','2006-02-15 22:19:56'),(13059,484,2,1643,'3.99','2005-06-16 08:55:35','2006-02-15 22:19:56'),(13060,484,1,2015,'4.99','2005-06-17 12:16:29','2006-02-15 22:19:56'),(13061,484,1,2044,'5.99','2005-06-17 14:37:57','2006-02-15 22:19:56'),(13062,484,1,4214,'4.99','2005-07-07 11:54:33','2006-02-15 22:19:56'),(13063,484,1,5389,'2.99','2005-07-09 19:25:45','2006-02-15 22:19:56'),(13064,484,2,5708,'6.99','2005-07-10 10:29:19','2006-02-15 22:19:56'),(13065,484,1,5852,'0.99','2005-07-10 17:43:30','2006-02-15 22:19:56'),(13066,484,2,5866,'6.99','2005-07-10 18:35:14','2006-02-15 22:19:56'),(13067,484,2,5977,'5.99','2005-07-11 00:16:38','2006-02-15 22:19:56'),(13068,484,2,6296,'2.99','2005-07-11 17:34:04','2006-02-15 22:19:57'),(13069,484,1,6863,'6.99','2005-07-12 19:58:34','2006-02-15 22:19:57'),(13070,484,2,7440,'4.99','2005-07-27 17:43:27','2006-02-15 22:19:57'),(13071,484,2,7548,'2.99','2005-07-27 21:53:18','2006-02-15 22:19:57'),(13072,484,2,8508,'0.99','2005-07-29 09:34:38','2006-02-15 22:19:57'),(13073,484,2,9141,'5.99','2005-07-30 10:16:04','2006-02-15 22:19:57'),(13074,484,2,9414,'9.99','2005-07-30 20:46:02','2006-02-15 22:19:57'),(13075,484,1,9769,'4.99','2005-07-31 09:52:16','2006-02-15 22:19:57'),(13076,484,2,10166,'8.99','2005-07-31 23:22:20','2006-02-15 22:19:57'),(13077,484,2,11871,'4.99','2005-08-17 14:11:44','2006-02-15 22:19:57'),(13078,484,1,12024,'0.99','2005-08-17 19:57:34','2006-02-15 22:19:57'),(13079,484,1,12771,'4.99','2005-08-18 23:29:23','2006-02-15 22:19:57'),(13080,484,1,12993,'7.99','2005-08-19 07:24:03','2006-02-15 22:19:57'),(13081,484,2,13160,'0.99','2005-08-19 13:21:04','2006-02-15 22:19:57'),(13082,484,2,13956,'3.99','2005-08-20 18:08:19','2006-02-15 22:19:57'),(13083,484,1,15607,'2.99','2005-08-23 06:54:06','2006-02-15 22:19:57'),(13084,484,1,16026,'4.99','2005-08-23 21:49:22','2006-02-15 22:19:58'),(13085,485,1,1009,'2.99','2005-05-31 01:47:35','2006-02-15 22:19:58'),(13086,485,2,1684,'2.99','2005-06-16 11:57:34','2006-02-15 22:19:58'),(13087,485,1,1721,'8.99','2005-06-16 15:01:36','2006-02-15 22:19:58'),(13088,485,2,3579,'0.99','2005-07-06 03:47:47','2006-02-15 22:19:58'),(13089,485,1,3899,'1.99','2005-07-06 19:12:40','2006-02-15 22:19:58'),(13090,485,1,3904,'0.99','2005-07-06 19:30:57','2006-02-15 22:19:58'),(13091,485,2,4137,'3.99','2005-07-07 08:17:06','2006-02-15 22:19:58'),(13092,485,2,4667,'2.99','2005-07-08 10:06:26','2006-02-15 22:19:58'),(13093,485,1,5193,'2.99','2005-07-09 10:28:18','2006-02-15 22:19:58'),(13094,485,1,5343,'3.99','2005-07-09 17:23:43','2006-02-15 22:19:58'),(13095,485,1,5367,'3.99','2005-07-09 18:39:15','2006-02-15 22:19:58'),(13096,485,1,5820,'4.99','2005-07-10 16:04:59','2006-02-15 22:19:58'),(13097,485,2,6810,'4.99','2005-07-12 17:54:19','2006-02-15 22:19:58'),(13098,485,2,6902,'4.99','2005-07-12 21:57:16','2006-02-15 22:19:58'),(13099,485,1,7144,'4.99','2005-07-27 07:00:37','2006-02-15 22:19:58'),(13100,485,2,8984,'6.99','2005-07-30 04:31:50','2006-02-15 22:19:58'),(13101,485,2,9039,'2.99','2005-07-30 06:24:28','2006-02-15 22:19:59'),(13102,485,1,9053,'4.99','2005-07-30 07:07:39','2006-02-15 22:19:59'),(13103,485,2,9189,'2.99','2005-07-30 12:20:59','2006-02-15 22:19:59'),(13104,485,1,9535,'2.99','2005-07-31 01:18:53','2006-02-15 22:19:59'),(13105,485,1,9565,'0.99','2005-07-31 02:32:00','2006-02-15 22:19:59'),(13106,485,1,10771,'4.99','2005-08-01 20:49:35','2006-02-15 22:19:59'),(13107,485,2,10772,'6.99','2005-08-01 20:51:10','2006-02-15 22:19:59'),(13108,485,2,11188,'3.99','2005-08-02 11:17:11','2006-02-15 22:19:59'),(13109,485,1,11921,'4.99','2005-08-17 16:12:27','2006-02-15 22:19:59'),(13110,485,1,11974,'2.99','2005-08-17 17:56:48','2006-02-15 22:19:59'),(13111,485,2,12261,'8.99','2005-08-18 04:16:06','2006-02-15 22:19:59'),(13112,485,2,12487,'0.99','2005-08-18 12:45:24','2006-02-15 22:19:59'),(13113,485,2,13055,'2.99','2005-08-19 09:36:28','2006-02-15 22:19:59'),(13114,486,1,909,'8.99','2005-05-30 10:43:38','2006-02-15 22:19:59'),(13115,486,2,946,'2.99','2005-05-30 15:35:08','2006-02-15 22:19:59'),(13116,486,2,1129,'0.99','2005-05-31 18:00:48','2006-02-15 22:19:59'),(13117,486,1,2036,'4.99','2005-06-17 13:46:52','2006-02-15 22:20:00'),(13118,486,1,2102,'5.99','2005-06-17 19:05:22','2006-02-15 22:20:00'),(13119,486,2,2566,'2.99','2005-06-19 03:45:39','2006-02-15 22:20:00'),(13120,486,2,2797,'2.99','2005-06-19 19:04:32','2006-02-15 22:20:00'),(13121,486,1,3835,'4.99','2005-07-06 16:22:45','2006-02-15 22:20:00'),(13122,486,2,4110,'4.99','2005-07-07 06:44:27','2006-02-15 22:20:00'),(13123,486,1,4205,'4.99','2005-07-07 11:25:39','2006-02-15 22:20:00'),(13124,486,1,4381,'2.99','2005-07-07 20:37:53','2006-02-15 22:20:00'),(13125,486,1,4772,'7.99','2005-07-08 15:41:11','2006-02-15 22:20:00'),(13126,486,2,5006,'4.99','2005-07-09 01:24:07','2006-02-15 22:20:00'),(13127,486,2,6383,'4.99','2005-07-11 22:06:53','2006-02-15 22:20:00'),(13128,486,2,7127,'4.99','2005-07-27 06:13:48','2006-02-15 22:20:00'),(13129,486,2,7446,'4.99','2005-07-27 18:00:24','2006-02-15 22:20:00'),(13130,486,2,8425,'8.99','2005-07-29 07:06:21','2006-02-15 22:20:00'),(13131,486,2,9142,'0.99','2005-07-30 10:21:03','2006-02-15 22:20:00'),(13132,486,1,10079,'2.99','2005-07-31 20:05:45','2006-02-15 22:20:00'),(13133,486,2,10902,'4.99','2005-08-02 01:35:46','2006-02-15 22:20:00'),(13134,486,1,12465,'0.99','2005-08-18 11:35:02','2006-02-15 22:20:01'),(13135,486,2,12609,'2.99','2005-08-18 17:06:22','2006-02-15 22:20:01'),(13136,486,1,13048,'4.99','2005-08-19 09:25:06','2006-02-15 22:20:01'),(13137,486,2,13803,'0.99','2005-08-20 12:46:17','2006-02-15 22:20:01'),(13138,486,2,14251,'4.99','2005-08-21 05:42:20','2006-02-15 22:20:01'),(13139,486,2,14284,'4.99','2005-08-21 06:44:37','2006-02-15 22:20:01'),(13140,487,2,3100,'3.99','2005-06-20 16:47:57','2006-02-15 22:20:01'),(13141,487,2,3994,'1.99','2005-07-06 23:39:01','2006-02-15 22:20:01'),(13142,487,2,4854,'2.99','2005-07-08 18:44:44','2006-02-15 22:20:01'),(13143,487,1,5634,'3.99','2005-07-10 06:25:48','2006-02-15 22:20:01'),(13144,487,1,6928,'2.99','2005-07-26 22:56:21','2006-02-15 22:20:01'),(13145,487,1,7097,'2.99','2005-07-27 04:56:09','2006-02-15 22:20:01'),(13146,487,1,7788,'0.99','2005-07-28 07:21:55','2006-02-15 22:20:01'),(13147,487,2,7949,'4.99','2005-07-28 13:07:24','2006-02-15 22:20:01'),(13148,487,2,8510,'1.99','2005-07-29 09:41:38','2006-02-15 22:20:01'),(13149,487,2,8689,'2.99','2005-07-29 16:38:58','2006-02-15 22:20:01'),(13150,487,1,8814,'4.99','2005-07-29 21:49:43','2006-02-15 22:20:01'),(13151,487,1,8988,'7.99','2005-07-30 04:38:49','2006-02-15 22:20:02'),(13152,487,2,9457,'2.99','2005-07-30 22:23:05','2006-02-15 22:20:02'),(13153,487,1,9490,'3.99','2005-07-30 23:45:09','2006-02-15 22:20:02'),(13154,487,2,10123,'0.99','2005-07-31 21:30:46','2006-02-15 22:20:02'),(13155,487,2,10511,'2.99','2005-08-01 11:32:16','2006-02-15 22:20:02'),(13156,487,2,10555,'6.99','2005-08-01 12:56:38','2006-02-15 22:20:02'),(13157,487,1,10832,'6.99','2005-08-01 23:24:53','2006-02-15 22:20:02'),(13158,487,2,10877,'5.99','2005-08-02 00:32:04','2006-02-15 22:20:02'),(13159,487,1,10978,'9.99','2005-08-02 04:12:27','2006-02-15 22:20:02'),(13160,487,1,11669,'5.99','2005-08-17 05:48:51','2006-02-15 22:20:02'),(13161,487,2,11890,'5.99','2005-08-17 15:08:43','2006-02-15 22:20:02'),(13162,487,1,12493,'7.99','2005-08-18 12:53:38','2006-02-15 22:20:02'),(13163,487,2,13210,'4.99','2005-08-19 15:23:38','2006-02-15 22:20:02'),(13164,487,1,13658,'7.99','2005-08-20 08:02:22','2006-02-15 22:20:02'),(13165,487,2,15665,'2.99','2005-08-23 08:59:12','2006-02-15 22:20:02'),(13166,488,2,1655,'3.99','2005-06-16 09:51:39','2006-02-15 22:20:02'),(13167,488,2,1704,'5.99','2005-06-16 13:45:56','2006-02-15 22:20:02'),(13168,488,2,4133,'6.99','2005-07-07 08:12:26','2006-02-15 22:20:03'),(13169,488,2,4233,'5.99','2005-07-07 13:00:20','2006-02-15 22:20:03'),(13170,488,1,5141,'8.99','2005-07-09 08:05:14','2006-02-15 22:20:03'),(13171,488,2,6548,'5.99','2005-07-12 05:00:46','2006-02-15 22:20:03'),(13172,488,1,7373,'5.99','2005-07-27 15:19:33','2006-02-15 22:20:03'),(13173,488,1,8005,'2.99','2005-07-28 15:15:11','2006-02-15 22:20:03'),(13174,488,2,8050,'0.99','2005-07-28 16:55:47','2006-02-15 22:20:03'),(13175,488,2,8064,'2.99','2005-07-28 17:15:38','2006-02-15 22:20:03'),(13176,488,2,9083,'5.99','2005-07-30 08:14:27','2006-02-15 22:20:03'),(13177,488,1,9532,'2.99','2005-07-31 01:16:51','2006-02-15 22:20:03'),(13178,488,1,9537,'0.99','2005-07-31 01:23:00','2006-02-15 22:20:03'),(13179,488,2,10474,'5.99','2005-08-01 10:01:42','2006-02-15 22:20:03'),(13180,488,1,10767,'0.99','2005-08-01 20:37:23','2006-02-15 22:20:03'),(13181,488,1,11774,'3.99','2005-08-17 10:20:39','2006-02-15 22:20:03'),(13182,488,2,12483,'5.99','2005-08-18 12:38:37','2006-02-15 22:20:03'),(13183,488,2,13446,'4.99','2005-08-20 00:06:13','2006-02-15 22:20:03'),(13184,488,2,14948,'5.99','2005-08-22 06:10:53','2006-02-15 22:20:04'),(13185,488,2,15259,'0.99','2005-08-22 18:23:23','2006-02-15 22:20:04'),(13186,488,1,15350,'2.99','2005-08-22 21:15:29','2006-02-15 22:20:04'),(13187,488,2,15499,'2.99','2005-08-23 02:37:19','2006-02-15 22:20:04'),(13188,489,1,219,'4.99','2005-05-26 09:41:45','2006-02-15 22:20:04'),(13189,489,2,513,'2.99','2005-05-28 03:08:10','2006-02-15 22:20:04'),(13190,489,2,1614,'3.99','2005-06-16 06:58:02','2006-02-15 22:20:04'),(13191,489,1,2201,'0.99','2005-06-18 02:08:27','2006-02-15 22:20:04'),(13192,489,1,2370,'7.99','2005-06-18 14:29:54','2006-02-15 22:20:04'),(13193,489,1,2802,'4.99','2005-06-19 19:18:17','2006-02-15 22:20:04'),(13194,489,2,3816,'2.99','2005-07-06 15:27:04','2006-02-15 22:20:04'),(13195,489,1,4774,'3.99','2005-07-08 15:42:28','2006-02-15 22:20:04'),(13196,489,1,6963,'4.99','2005-07-27 00:13:02','2006-02-15 22:20:04'),(13197,489,2,9231,'0.99','2005-07-30 13:42:15','2006-02-15 22:20:04'),(13198,489,1,9459,'4.99','2005-07-30 22:24:46','2006-02-15 22:20:04'),(13199,489,2,11119,'9.99','2005-08-02 08:44:44','2006-02-15 22:20:04'),(13200,489,1,11705,'4.99','2005-08-17 07:22:25','2006-02-15 22:20:04'),(13201,489,1,12496,'6.99','2005-08-18 12:58:25','2006-02-15 22:20:05'),(13202,489,2,12701,'6.99','2005-08-18 20:26:47','2006-02-15 22:20:05'),(13203,489,1,13462,'4.99','2005-08-20 00:49:19','2006-02-15 22:20:05'),(13204,489,2,14095,'5.99','2005-08-21 00:25:45','2006-02-15 22:20:05'),(13205,489,2,14328,'2.99','2005-08-21 08:18:20','2006-02-15 22:20:05'),(13206,489,2,14424,'6.99','2005-08-21 11:24:11','2006-02-15 22:20:05'),(13207,489,1,15205,'0.99','2005-08-22 16:32:23','2006-02-15 22:20:05'),(13208,489,1,15981,'4.99','2005-08-23 20:12:17','2006-02-15 22:20:05'),(13209,490,2,585,'6.99','2005-05-28 11:50:45','2006-02-15 22:20:05'),(13210,490,2,676,'4.99','2005-05-28 22:27:51','2006-02-15 22:20:05'),(13211,490,1,1665,'3.99','2005-06-16 10:16:02','2006-02-15 22:20:05'),(13212,490,1,3476,'4.99','2005-07-05 23:02:37','2006-02-15 22:20:05'),(13213,490,2,3932,'4.99','2005-07-06 21:06:17','2006-02-15 22:20:05'),(13214,490,1,4083,'2.99','2005-07-07 05:13:15','2006-02-15 22:20:05'),(13215,490,1,4906,'5.99','2005-07-08 20:59:13','2006-02-15 22:20:05'),(13216,490,2,5173,'7.99','2005-07-09 09:31:44','2006-02-15 22:20:05'),(13217,490,2,5489,'0.99','2005-07-10 00:07:03','2006-02-15 22:20:06'),(13218,490,1,5654,'4.99','2005-07-10 07:24:46','2006-02-15 22:20:06'),(13219,490,2,6230,'2.99','2005-07-11 14:02:19','2006-02-15 22:20:06'),(13220,490,1,6803,'4.99','2005-07-12 17:21:49','2006-02-15 22:20:06'),(13221,490,2,6888,'2.99','2005-07-12 21:01:11','2006-02-15 22:20:06'),(13222,490,2,6923,'8.99','2005-07-12 22:40:48','2006-02-15 22:20:06'),(13223,490,1,8552,'5.99','2005-07-29 11:14:02','2006-02-15 22:20:06'),(13224,490,2,9108,'4.99','2005-07-30 08:56:36','2006-02-15 22:20:06'),(13225,490,1,9554,'0.99','2005-07-31 02:06:49','2006-02-15 22:20:06'),(13226,490,1,10786,'7.99','2005-08-01 21:29:34','2006-02-15 22:20:06'),(13227,490,1,10955,'7.99','2005-08-02 03:32:34','2006-02-15 22:20:06'),(13228,490,2,11965,'2.99','2005-08-17 17:39:45','2006-02-15 22:20:06'),(13229,490,2,14557,'4.99','2005-08-21 16:05:11','2006-02-15 22:20:06'),(13230,490,2,14761,'6.99','2005-08-21 23:30:28','2006-02-15 22:20:06'),(13231,490,2,15276,'2.99','2005-08-22 18:59:01','2006-02-15 22:20:06'),(13232,490,1,15448,'2.99','2005-08-23 00:55:24','2006-02-15 22:20:06'),(13233,491,1,484,'2.99','2005-05-27 23:26:45','2006-02-15 22:20:06'),(13234,491,2,1097,'0.99','2005-05-31 13:38:42','2006-02-15 22:20:07'),(13235,491,2,1198,'2.99','2005-06-15 01:48:58','2006-02-15 22:20:07'),(13236,491,1,1371,'4.99','2005-06-15 14:38:15','2006-02-15 22:20:07'),(13237,491,2,2026,'4.99','2005-06-17 13:05:38','2006-02-15 22:20:07'),(13238,491,1,2259,'4.99','2005-06-18 05:37:45','2006-02-15 22:20:07'),(13239,491,2,2391,'4.99','2005-06-18 15:33:30','2006-02-15 22:20:07'),(13240,491,2,3031,'4.99','2005-06-20 11:52:49','2006-02-15 22:20:07'),(13241,491,1,3440,'3.99','2005-06-21 19:58:18','2006-02-15 22:20:07'),(13242,491,1,4046,'8.99','2005-07-07 03:27:59','2006-02-15 22:20:07'),(13243,491,1,4392,'2.99','2005-07-07 21:11:02','2006-02-15 22:20:07'),(13244,491,2,5134,'6.99','2005-07-09 07:53:12','2006-02-15 22:20:07'),(13245,491,1,5889,'4.99','2005-07-10 19:54:41','2006-02-15 22:20:07'),(13246,491,2,6171,'2.99','2005-07-11 10:29:35','2006-02-15 22:20:07'),(13247,491,2,7019,'3.99','2005-07-27 02:20:26','2006-02-15 22:20:07'),(13248,491,2,7281,'6.99','2005-07-27 11:59:20','2006-02-15 22:20:07'),(13249,491,2,7688,'7.99','2005-07-28 03:20:47','2006-02-15 22:20:07'),(13250,491,1,7871,'6.99','2005-07-28 10:16:37','2006-02-15 22:20:08'),(13251,491,2,10036,'2.99','2005-07-31 18:47:20','2006-02-15 22:20:08'),(13252,491,2,10178,'4.99','2005-07-31 23:43:04','2006-02-15 22:20:08'),(13253,491,2,10974,'6.99','2005-08-02 04:10:52','2006-02-15 22:20:08'),(13254,491,1,11048,'4.99','2005-08-02 06:15:07','2006-02-15 22:20:08'),(13255,491,1,11590,'0.99','2005-08-17 02:28:33','2006-02-15 22:20:08'),(13256,491,1,11840,'4.99','2005-08-17 13:09:01','2006-02-15 22:20:08'),(13257,491,2,13607,'2.99','2005-08-20 06:08:42','2006-02-15 22:20:08'),(13258,491,1,14780,'0.99','2005-08-22 00:06:33','2006-02-15 22:20:08'),(13259,491,2,15685,'5.99','2005-08-23 09:41:28','2006-02-15 22:20:08'),(13260,492,1,84,'2.99','2005-05-25 12:36:30','2006-02-15 22:20:08'),(13261,492,2,1691,'1.99','2005-06-16 12:24:28','2006-02-15 22:20:08'),(13262,492,2,1855,'4.99','2005-06-17 00:54:58','2006-02-15 22:20:08'),(13263,492,2,1956,'4.99','2005-06-17 08:43:32','2006-02-15 22:20:08'),(13264,492,1,3298,'9.99','2005-06-21 07:09:44','2006-02-15 22:20:08'),(13265,492,2,4128,'8.99','2005-07-07 07:35:25','2006-02-15 22:20:08'),(13266,492,1,4142,'2.99','2005-07-07 08:19:45','2006-02-15 22:20:08'),(13267,492,2,4258,'6.99','2005-07-07 14:20:59','2006-02-15 22:20:09'),(13268,492,2,5325,'0.99','2005-07-09 16:35:47','2006-02-15 22:20:09'),(13269,492,1,5609,'0.99','2005-07-10 05:09:46','2006-02-15 22:20:09'),(13270,492,1,6257,'2.99','2005-07-11 15:23:46','2006-02-15 22:20:09'),(13271,492,2,7203,'2.99','2005-07-27 09:01:23','2006-02-15 22:20:09'),(13272,492,2,12971,'4.99','2005-08-19 06:42:43','2006-02-15 22:20:09'),(13273,492,1,14255,'2.99','2005-08-21 05:51:37','2006-02-15 22:20:09'),(13274,492,2,15822,'0.99','2005-08-23 15:05:59','2006-02-15 22:20:09'),(13275,492,1,15958,'4.99','2005-08-23 19:22:36','2006-02-15 22:20:09'),(13276,493,1,543,'7.99','2005-05-28 06:43:34','2006-02-15 22:20:09'),(13277,493,2,2109,'3.99','2005-06-17 19:41:42','2006-02-15 22:20:09'),(13278,493,1,2365,'4.99','2005-06-18 13:45:34','2006-02-15 22:20:09'),(13279,493,1,2579,'0.99','2005-06-19 04:40:44','2006-02-15 22:20:09'),(13280,493,1,2864,'2.99','2005-06-20 00:00:52','2006-02-15 22:20:09'),(13281,493,2,3586,'4.99','2005-07-06 04:24:42','2006-02-15 22:20:09'),(13282,493,1,3655,'5.99','2005-07-06 07:52:54','2006-02-15 22:20:09'),(13283,493,1,6549,'7.99','2005-07-12 05:02:01','2006-02-15 22:20:10'),(13284,493,1,6552,'4.99','2005-07-12 05:05:06','2006-02-15 22:20:10'),(13285,493,1,7026,'2.99','2005-07-27 02:48:58','2006-02-15 22:20:10'),(13286,493,2,7043,'7.99','2005-07-27 03:24:23','2006-02-15 22:20:10'),(13287,493,1,8298,'4.99','2005-07-29 02:47:36','2006-02-15 22:20:10'),(13288,493,1,8616,'2.99','2005-07-29 13:39:09','2006-02-15 22:20:10'),(13289,493,1,10777,'6.99','2005-08-01 21:03:50','2006-02-15 22:20:10'),(13290,493,2,10885,'7.99','2005-08-02 00:51:37','2006-02-15 22:20:10'),(13291,493,1,13638,'2.99','2005-08-20 07:21:15','2006-02-15 22:20:10'),(13292,493,2,13675,'6.99','2005-08-20 08:32:51','2006-02-15 22:20:10'),(13293,493,1,14117,'4.99','2005-08-21 01:11:59','2006-02-15 22:20:10'),(13294,493,2,15177,'4.99','2005-08-22 15:34:49','2006-02-15 22:20:10'),(13295,493,1,15355,'0.99','2005-08-22 21:19:24','2006-02-15 22:20:10'),(13296,493,1,15490,'6.99','2005-08-23 02:08:18','2006-02-15 22:20:10'),(13297,493,2,15878,'2.99','2005-08-23 16:34:31','2006-02-15 22:20:10'),(13298,493,2,14160,'2.99','2006-02-14 15:16:03','2006-02-15 22:20:10'),(13299,494,1,608,'4.99','2005-05-28 15:03:44','2006-02-15 22:20:10'),(13300,494,1,1683,'2.99','2005-06-16 11:54:55','2006-02-15 22:20:11'),(13301,494,1,3511,'0.99','2005-07-06 00:42:01','2006-02-15 22:20:11'),(13302,494,2,3803,'2.99','2005-07-06 15:06:55','2006-02-15 22:20:11'),(13303,494,2,3913,'0.99','2005-07-06 20:11:00','2006-02-15 22:20:11'),(13304,494,1,4086,'3.99','2005-07-07 05:26:06','2006-02-15 22:20:11'),(13305,494,2,4397,'5.99','2005-07-07 21:14:54','2006-02-15 22:20:11'),(13306,494,2,4551,'7.99','2005-07-08 04:36:21','2006-02-15 22:20:11'),(13307,494,2,5083,'4.99','2005-07-09 05:30:32','2006-02-15 22:20:11'),(13308,494,1,5180,'2.99','2005-07-09 10:06:53','2006-02-15 22:20:11'),(13309,494,2,7258,'3.99','2005-07-27 11:05:54','2006-02-15 22:20:11'),(13310,494,2,7546,'8.99','2005-07-27 21:50:09','2006-02-15 22:20:11'),(13311,494,2,7737,'1.99','2005-07-28 05:15:03','2006-02-15 22:20:11'),(13312,494,2,8333,'2.99','2005-07-29 04:16:40','2006-02-15 22:20:11'),(13313,494,2,8895,'2.99','2005-07-30 00:49:17','2006-02-15 22:20:11'),(13314,494,1,8934,'4.99','2005-07-30 02:37:05','2006-02-15 22:20:11'),(13315,494,2,9012,'4.99','2005-07-30 05:18:57','2006-02-15 22:20:11'),(13316,494,2,9510,'7.99','2005-07-31 00:24:17','2006-02-15 22:20:12'),(13317,494,1,9799,'2.99','2005-07-31 10:58:32','2006-02-15 22:20:12'),(13318,494,2,9943,'7.99','2005-07-31 15:37:29','2006-02-15 22:20:12'),(13319,494,1,10403,'0.99','2005-08-01 07:30:45','2006-02-15 22:20:12'),(13320,494,1,10623,'2.99','2005-08-01 15:22:38','2006-02-15 22:20:12'),(13321,494,2,11152,'3.99','2005-08-02 09:53:36','2006-02-15 22:20:12'),(13322,494,1,11987,'5.99','2005-08-17 18:21:59','2006-02-15 22:20:12'),(13323,494,2,13094,'0.99','2005-08-19 10:47:58','2006-02-15 22:20:12'),(13324,494,2,13301,'3.99','2005-08-19 18:53:15','2006-02-15 22:20:12'),(13325,494,2,14634,'5.99','2005-08-21 18:51:28','2006-02-15 22:20:12'),(13326,494,1,14832,'4.99','2005-08-22 01:43:29','2006-02-15 22:20:12'),(13327,494,1,15086,'6.99','2005-08-22 11:21:08','2006-02-15 22:20:12'),(13328,494,2,15156,'9.99','2005-08-22 14:29:11','2006-02-15 22:20:12'),(13329,494,2,15291,'4.99','2005-08-22 19:28:04','2006-02-15 22:20:12'),(13330,495,2,623,'4.99','2005-05-28 16:01:28','2006-02-15 22:20:12'),(13331,495,2,741,'4.99','2005-05-29 08:35:49','2006-02-15 22:20:12'),(13332,495,2,2074,'2.99','2005-06-17 16:40:03','2006-02-15 22:20:13'),(13333,495,1,2349,'4.99','2005-06-18 12:25:14','2006-02-15 22:20:13'),(13334,495,1,2549,'7.99','2005-06-19 02:46:39','2006-02-15 22:20:13'),(13335,495,1,3129,'3.99','2005-06-20 18:57:48','2006-02-15 22:20:13'),(13336,495,2,3966,'2.99','2005-07-06 22:38:49','2006-02-15 22:20:13'),(13337,495,2,5484,'7.99','2005-07-09 23:54:37','2006-02-15 22:20:13'),(13338,495,2,6426,'7.99','2005-07-11 23:56:38','2006-02-15 22:20:13'),(13339,495,2,7191,'2.99','2005-07-27 08:36:15','2006-02-15 22:20:13'),(13340,495,1,8151,'0.99','2005-07-28 20:50:52','2006-02-15 22:20:13'),(13341,495,1,8383,'1.99','2005-07-29 05:36:47','2006-02-15 22:20:13'),(13342,495,1,8451,'5.99','2005-07-29 07:44:56','2006-02-15 22:20:13'),(13343,495,1,8672,'5.99','2005-07-29 15:49:48','2006-02-15 22:20:13'),(13344,495,1,9387,'9.99','2005-07-30 19:27:05','2006-02-15 22:20:13'),(13345,495,1,9741,'4.99','2005-07-31 09:09:22','2006-02-15 22:20:13'),(13346,495,2,10065,'4.99','2005-07-31 19:27:34','2006-02-15 22:20:13'),(13347,495,2,10643,'5.99','2005-08-01 15:48:33','2006-02-15 22:20:13'),(13348,495,1,10783,'4.99','2005-08-01 21:23:37','2006-02-15 22:20:13'),(13349,495,1,12782,'5.99','2005-08-18 23:56:23','2006-02-15 22:20:14'),(13350,495,2,12837,'0.99','2005-08-19 01:51:09','2006-02-15 22:20:14'),(13351,495,2,13205,'3.99','2005-08-19 15:05:26','2006-02-15 22:20:14'),(13352,495,2,13445,'2.99','2005-08-20 00:05:33','2006-02-15 22:20:14'),(13353,495,2,13818,'4.99','2005-08-20 13:20:09','2006-02-15 22:20:14'),(13354,495,1,15984,'2.99','2005-08-23 20:16:27','2006-02-15 22:20:14'),(13355,495,2,13753,'0.99','2006-02-14 15:16:03','2006-02-15 22:20:14'),(13356,496,2,322,'4.99','2005-05-27 00:47:35','2006-02-15 22:20:14'),(13357,496,2,966,'0.99','2005-05-30 19:00:37','2006-02-15 22:20:14'),(13358,496,1,2567,'2.99','2005-06-19 04:04:46','2006-02-15 22:20:14'),(13359,496,2,3569,'3.99','2005-07-06 03:17:23','2006-02-15 22:20:14'),(13360,496,1,4070,'2.99','2005-07-07 04:37:09','2006-02-15 22:20:14'),(13361,496,1,4261,'4.99','2005-07-07 14:23:56','2006-02-15 22:20:14'),(13362,496,1,4269,'0.99','2005-07-07 14:38:33','2006-02-15 22:20:14'),(13363,496,1,5559,'5.99','2005-07-10 03:13:07','2006-02-15 22:20:14'),(13364,496,2,5949,'4.99','2005-07-10 23:13:00','2006-02-15 22:20:14'),(13365,496,1,7133,'2.99','2005-07-27 06:29:23','2006-02-15 22:20:15'),(13366,496,2,8221,'2.99','2005-07-28 23:47:19','2006-02-15 22:20:15'),(13367,496,1,11060,'7.99','2005-08-02 06:48:18','2006-02-15 22:20:15'),(13368,496,2,11448,'4.99','2005-08-02 20:44:33','2006-02-15 22:20:15'),(13369,496,1,11893,'3.99','2005-08-17 15:13:29','2006-02-15 22:20:15'),(13370,496,2,12605,'4.99','2005-08-18 16:59:37','2006-02-15 22:20:15'),(13371,496,1,13569,'5.99','2005-08-20 05:02:59','2006-02-15 22:20:15'),(13372,496,2,14013,'6.99','2005-08-20 20:42:50','2006-02-15 22:20:15'),(13373,496,1,14332,'7.99','2005-08-21 08:30:43','2006-02-15 22:20:15'),(13374,496,1,14348,'0.99','2005-08-21 08:54:26','2006-02-15 22:20:15'),(13375,496,2,15750,'2.99','2005-08-23 12:36:05','2006-02-15 22:20:15'),(13376,496,1,13182,'2.99','2006-02-14 15:16:03','2006-02-15 22:20:15'),(13377,497,1,1100,'7.99','2005-05-31 14:03:21','2006-02-15 22:20:15'),(13378,497,2,2180,'8.99','2005-06-18 00:47:43','2006-02-15 22:20:15'),(13379,497,1,2298,'5.99','2005-06-18 08:18:29','2006-02-15 22:20:15'),(13380,497,1,2406,'2.99','2005-06-18 16:39:37','2006-02-15 22:20:15'),(13381,497,2,2818,'4.99','2005-06-19 20:05:52','2006-02-15 22:20:16'),(13382,497,1,3696,'2.99','2005-07-06 10:04:55','2006-02-15 22:20:16'),(13383,497,2,4218,'7.99','2005-07-07 12:10:24','2006-02-15 22:20:16'),(13384,497,1,4516,'4.99','2005-07-08 02:43:41','2006-02-15 22:20:16'),(13385,497,1,4578,'0.99','2005-07-08 06:00:17','2006-02-15 22:20:16'),(13386,497,2,4795,'0.99','2005-07-08 16:32:54','2006-02-15 22:20:16'),(13387,497,1,5030,'4.99','2005-07-09 02:35:43','2006-02-15 22:20:16'),(13388,497,1,5239,'4.99','2005-07-09 13:12:35','2006-02-15 22:20:16'),(13389,497,2,7603,'2.99','2005-07-27 23:54:44','2006-02-15 22:20:16'),(13390,497,2,8011,'2.99','2005-07-28 15:26:39','2006-02-15 22:20:16'),(13391,497,1,8150,'6.99','2005-07-28 20:50:41','2006-02-15 22:20:16'),(13392,497,2,8813,'6.99','2005-07-29 21:47:55','2006-02-15 22:20:16'),(13393,497,2,8867,'4.99','2005-07-30 00:02:18','2006-02-15 22:20:16'),(13394,497,1,9273,'9.99','2005-07-30 15:05:36','2006-02-15 22:20:16'),(13395,497,2,9850,'4.99','2005-07-31 12:46:52','2006-02-15 22:20:16'),(13396,497,2,10760,'7.99','2005-08-01 20:25:20','2006-02-15 22:20:16'),(13397,497,1,12123,'0.99','2005-08-17 23:22:18','2006-02-15 22:20:16'),(13398,497,1,13159,'4.99','2005-08-19 13:19:59','2006-02-15 22:20:17'),(13399,497,1,13289,'2.99','2005-08-19 18:31:30','2006-02-15 22:20:17'),(13400,497,2,14134,'0.99','2005-08-21 01:45:54','2006-02-15 22:20:17'),(13401,497,1,15362,'5.99','2005-08-22 21:40:20','2006-02-15 22:20:17'),(13402,497,2,15633,'0.99','2005-08-23 07:31:10','2006-02-15 22:20:17'),(13403,497,1,15919,'0.99','2005-08-23 18:01:31','2006-02-15 22:20:17'),(13404,497,1,12698,'4.99','2006-02-14 15:16:03','2006-02-15 22:20:17'),(13405,498,2,49,'2.99','2005-05-25 06:39:35','2006-02-15 22:20:17'),(13406,498,1,429,'8.99','2005-05-27 16:21:26','2006-02-15 22:20:17'),(13407,498,2,718,'2.99','2005-05-29 04:52:23','2006-02-15 22:20:17'),(13408,498,1,1253,'6.99','2005-06-15 06:06:33','2006-02-15 22:20:17'),(13409,498,1,1782,'2.99','2005-06-16 19:21:12','2006-02-15 22:20:17'),(13410,498,1,2344,'2.99','2005-06-18 12:01:47','2006-02-15 22:20:17'),(13411,498,1,2449,'4.99','2005-06-18 19:18:36','2006-02-15 22:20:17'),(13412,498,1,3098,'0.99','2005-06-20 16:37:01','2006-02-15 22:20:17'),(13413,498,2,3360,'0.99','2005-06-21 12:12:41','2006-02-15 22:20:17'),(13414,498,2,3828,'0.99','2005-07-06 15:57:30','2006-02-15 22:20:18'),(13415,498,2,3856,'2.99','2005-07-06 17:04:46','2006-02-15 22:20:18'),(13416,498,1,4311,'4.99','2005-07-07 17:31:14','2006-02-15 22:20:18'),(13417,498,2,4972,'2.99','2005-07-08 23:56:09','2006-02-15 22:20:18'),(13418,498,1,5286,'2.99','2005-07-09 15:11:41','2006-02-15 22:20:18'),(13419,498,2,5884,'0.99','2005-07-10 19:31:38','2006-02-15 22:20:18'),(13420,498,1,6058,'2.99','2005-07-11 04:03:51','2006-02-15 22:20:18'),(13421,498,1,6088,'1.99','2005-07-11 05:40:35','2006-02-15 22:20:18'),(13422,498,1,7285,'4.99','2005-07-27 12:14:06','2006-02-15 22:20:18'),(13423,498,1,7286,'6.99','2005-07-27 12:23:49','2006-02-15 22:20:18'),(13424,498,1,7341,'4.99','2005-07-27 14:23:55','2006-02-15 22:20:18'),(13425,498,2,8020,'4.99','2005-07-28 15:43:32','2006-02-15 22:20:18'),(13426,498,1,8229,'2.99','2005-07-29 00:09:08','2006-02-15 22:20:18'),(13427,498,2,9021,'0.99','2005-07-30 05:34:24','2006-02-15 22:20:18'),(13428,498,2,9689,'4.99','2005-07-31 07:00:08','2006-02-15 22:20:18'),(13429,498,1,10225,'0.99','2005-08-01 01:38:40','2006-02-15 22:20:18'),(13430,498,1,11455,'6.99','2005-08-02 21:07:06','2006-02-15 22:20:18'),(13431,498,1,12893,'2.99','2005-08-19 03:46:43','2006-02-15 22:20:19'),(13432,499,2,89,'2.99','2005-05-25 14:28:29','2006-02-15 22:20:19'),(13433,499,1,1355,'2.99','2005-06-15 13:13:59','2006-02-15 22:20:19'),(13434,499,2,1526,'4.99','2005-06-16 00:27:51','2006-02-15 22:20:19'),(13435,499,2,1830,'4.99','2005-06-16 22:18:43','2006-02-15 22:20:19'),(13436,499,2,3241,'1.99','2005-06-21 02:54:32','2006-02-15 22:20:19'),(13437,499,1,3794,'4.99','2005-07-06 14:35:26','2006-02-15 22:20:19'),(13438,499,1,5022,'2.99','2005-07-09 02:10:54','2006-02-15 22:20:19'),(13439,499,2,5392,'2.99','2005-07-09 19:32:30','2006-02-15 22:20:19'),(13440,499,2,5427,'3.99','2005-07-09 21:12:26','2006-02-15 22:20:19'),(13441,499,1,5956,'4.99','2005-07-10 23:23:08','2006-02-15 22:20:19'),(13442,499,2,6723,'4.99','2005-07-12 13:44:57','2006-02-15 22:20:19'),(13443,499,1,7800,'0.99','2005-07-28 07:50:59','2006-02-15 22:20:19'),(13444,499,1,7831,'0.99','2005-07-28 08:44:21','2006-02-15 22:20:19'),(13445,499,1,7898,'6.99','2005-07-28 11:08:22','2006-02-15 22:20:19'),(13446,499,2,8130,'4.99','2005-07-28 19:48:15','2006-02-15 22:20:19'),(13447,499,1,8770,'3.99','2005-07-29 19:53:50','2006-02-15 22:20:20'),(13448,499,1,9588,'0.99','2005-07-31 03:13:13','2006-02-15 22:20:20'),(13449,499,2,10333,'0.99','2005-08-01 04:58:32','2006-02-15 22:20:20'),(13450,499,2,10497,'2.99','2005-08-01 10:55:59','2006-02-15 22:20:20'),(13451,499,1,11513,'7.99','2005-08-16 23:51:33','2006-02-15 22:20:20'),(13452,499,2,11606,'0.99','2005-08-17 03:32:43','2006-02-15 22:20:20'),(13453,499,2,11978,'4.99','2005-08-17 18:02:10','2006-02-15 22:20:20'),(13454,499,1,12004,'8.99','2005-08-17 18:56:53','2006-02-15 22:20:20'),(13455,499,1,12354,'7.99','2005-08-18 07:34:07','2006-02-15 22:20:20'),(13456,499,1,12436,'3.99','2005-08-18 10:41:05','2006-02-15 22:20:20'),(13457,499,1,12587,'1.99','2005-08-18 16:03:13','2006-02-15 22:20:20'),(13458,499,2,12947,'4.99','2005-08-19 05:54:21','2006-02-15 22:20:20'),(13459,499,2,13822,'3.99','2005-08-20 13:39:28','2006-02-15 22:20:20'),(13460,499,1,14858,'3.99','2005-08-22 02:46:18','2006-02-15 22:20:20'),(13461,499,1,15587,'7.99','2005-08-23 06:00:28','2006-02-15 22:20:20'),(13462,500,1,112,'8.99','2005-05-25 18:57:24','2006-02-15 22:20:20'),(13463,500,1,389,'8.99','2005-05-27 10:45:41','2006-02-15 22:20:21'),(13464,500,1,610,'0.99','2005-05-28 15:15:25','2006-02-15 22:20:21'),(13465,500,1,1375,'5.99','2005-06-15 14:54:56','2006-02-15 22:20:21'),(13466,500,2,1388,'5.99','2005-06-15 15:48:41','2006-02-15 22:20:21'),(13467,500,2,2189,'3.99','2005-06-18 01:20:26','2006-02-15 22:20:21'),(13468,500,2,2526,'6.99','2005-06-19 01:03:07','2006-02-15 22:20:21'),(13469,500,1,2996,'2.99','2005-06-20 09:20:29','2006-02-15 22:20:21'),(13470,500,2,3926,'4.99','2005-07-06 20:42:35','2006-02-15 22:20:21'),(13471,500,1,4561,'0.99','2005-07-08 05:02:43','2006-02-15 22:20:21'),(13472,500,2,4790,'4.99','2005-07-08 16:25:27','2006-02-15 22:20:21'),(13473,500,2,6018,'4.99','2005-07-11 02:06:36','2006-02-15 22:20:21'),(13474,500,2,6187,'2.99','2005-07-11 11:28:51','2006-02-15 22:20:21'),(13475,500,2,6801,'3.99','2005-07-12 17:09:08','2006-02-15 22:20:21'),(13476,500,1,7857,'0.99','2005-07-28 09:49:40','2006-02-15 22:20:21'),(13477,500,1,7925,'2.99','2005-07-28 12:10:02','2006-02-15 22:20:21'),(13478,500,1,8538,'6.99','2005-07-29 10:45:17','2006-02-15 22:20:21'),(13479,500,1,8925,'0.99','2005-07-30 02:09:14','2006-02-15 22:20:22'),(13480,500,2,9290,'3.99','2005-07-30 15:59:08','2006-02-15 22:20:22'),(13481,500,1,10947,'6.99','2005-08-02 03:23:17','2006-02-15 22:20:22'),(13482,500,2,11218,'1.99','2005-08-02 12:29:12','2006-02-15 22:20:22'),(13483,500,1,12639,'2.99','2005-08-18 18:13:05','2006-02-15 22:20:22'),(13484,500,2,12813,'2.99','2005-08-19 00:54:22','2006-02-15 22:20:22'),(13485,500,2,13628,'4.99','2005-08-20 07:03:53','2006-02-15 22:20:22'),(13486,500,1,14407,'0.99','2005-08-21 10:46:51','2006-02-15 22:20:22'),(13487,500,1,14964,'4.99','2005-08-22 06:39:24','2006-02-15 22:20:22'),(13488,500,1,15584,'2.99','2005-08-23 05:49:21','2006-02-15 22:20:22'),(13489,500,1,15853,'2.99','2005-08-23 15:54:20','2006-02-15 22:20:22'),(13490,501,1,493,'0.99','2005-05-28 00:34:11','2006-02-15 22:20:22'),(13491,501,1,605,'1.99','2005-05-28 14:39:10','2006-02-15 22:20:22'),(13492,501,2,3222,'5.99','2005-06-21 01:50:29','2006-02-15 22:20:22'),(13493,501,1,3412,'7.99','2005-06-21 16:44:31','2006-02-15 22:20:22'),(13494,501,2,3541,'6.99','2005-07-06 01:50:11','2006-02-15 22:20:22'),(13495,501,2,3723,'6.99','2005-07-06 11:12:02','2006-02-15 22:20:22'),(13496,501,2,4769,'2.99','2005-07-08 15:29:16','2006-02-15 22:20:23'),(13497,501,2,5520,'1.99','2005-07-10 01:30:41','2006-02-15 22:20:23'),(13498,501,2,6095,'7.99','2005-07-11 06:06:41','2006-02-15 22:20:23'),(13499,501,1,7456,'0.99','2005-07-27 18:34:53','2006-02-15 22:20:23'),(13500,501,1,8021,'2.99','2005-07-28 15:45:24','2006-02-15 22:20:23'),(13501,501,2,8529,'2.99','2005-07-29 10:24:31','2006-02-15 22:20:23'),(13502,501,1,9359,'2.99','2005-07-30 18:39:28','2006-02-15 22:20:23'),(13503,501,1,10817,'4.99','2005-08-01 22:51:08','2006-02-15 22:20:23'),(13504,501,2,11393,'4.99','2005-08-02 18:44:29','2006-02-15 22:20:23'),(13505,501,1,11640,'1.99','2005-08-17 04:44:33','2006-02-15 22:20:23'),(13506,501,2,11799,'6.99','2005-08-17 11:25:25','2006-02-15 22:20:23'),(13507,501,1,12914,'4.99','2005-08-19 04:25:59','2006-02-15 22:20:23'),(13508,501,2,13889,'0.99','2005-08-20 15:40:06','2006-02-15 22:20:23'),(13509,501,1,15239,'4.99','2005-08-22 17:46:17','2006-02-15 22:20:23'),(13510,501,1,15699,'5.99','2005-08-23 10:20:35','2006-02-15 22:20:23'),(13511,502,2,258,'2.99','2005-05-26 15:28:14','2006-02-15 22:20:23'),(13512,502,1,861,'0.99','2005-05-30 02:48:32','2006-02-15 22:20:24'),(13513,502,1,893,'2.99','2005-05-30 08:06:59','2006-02-15 22:20:24'),(13514,502,2,965,'0.99','2005-05-30 19:00:14','2006-02-15 22:20:24'),(13515,502,2,1696,'7.99','2005-06-16 12:50:01','2006-02-15 22:20:24'),(13516,502,2,2420,'0.99','2005-06-18 17:22:28','2006-02-15 22:20:24'),(13517,502,1,2911,'0.99','2005-06-20 03:32:37','2006-02-15 22:20:24'),(13518,502,2,3614,'2.99','2005-07-06 05:46:05','2006-02-15 22:20:24'),(13519,502,1,4606,'2.99','2005-07-08 07:05:50','2006-02-15 22:20:24'),(13520,502,2,5368,'5.99','2005-07-09 18:41:59','2006-02-15 22:20:24'),(13521,502,2,5662,'2.99','2005-07-10 07:59:24','2006-02-15 22:20:24'),(13522,502,2,6414,'7.99','2005-07-11 23:26:13','2006-02-15 22:20:24'),(13523,502,1,6760,'8.99','2005-07-12 15:16:00','2006-02-15 22:20:24'),(13524,502,2,6828,'2.99','2005-07-12 18:38:51','2006-02-15 22:20:24'),(13525,502,2,6924,'8.99','2005-07-26 22:51:53','2006-02-15 22:20:24'),(13526,502,2,7213,'3.99','2005-07-27 09:22:29','2006-02-15 22:20:24'),(13527,502,1,7255,'4.99','2005-07-27 10:49:54','2006-02-15 22:20:24'),(13528,502,1,7757,'4.99','2005-07-28 06:23:00','2006-02-15 22:20:25'),(13529,502,1,7884,'4.99','2005-07-28 10:37:24','2006-02-15 22:20:25'),(13530,502,2,8034,'4.99','2005-07-28 16:20:26','2006-02-15 22:20:25'),(13531,502,2,9232,'0.99','2005-07-30 13:43:00','2006-02-15 22:20:25'),(13532,502,1,9599,'4.99','2005-07-31 03:32:06','2006-02-15 22:20:25'),(13533,502,2,10390,'4.99','2005-08-01 06:46:48','2006-02-15 22:20:25'),(13534,502,1,10938,'0.99','2005-08-02 03:05:22','2006-02-15 22:20:25'),(13535,502,2,11036,'4.99','2005-08-02 05:56:29','2006-02-15 22:20:25'),(13536,502,1,11301,'0.99','2005-08-02 15:37:59','2006-02-15 22:20:25'),(13537,502,1,11317,'4.99','2005-08-02 16:08:52','2006-02-15 22:20:25'),(13538,502,1,11435,'0.99','2005-08-02 20:14:23','2006-02-15 22:20:25'),(13539,502,1,11620,'0.99','2005-08-17 04:06:22','2006-02-15 22:20:25'),(13540,502,1,12762,'4.99','2005-08-18 23:06:54','2006-02-15 22:20:25'),(13541,502,1,13052,'9.99','2005-08-19 09:31:42','2006-02-15 22:20:25'),(13542,502,1,14411,'4.99','2005-08-21 10:54:57','2006-02-15 22:20:25'),(13543,502,1,15486,'3.99','2005-08-23 02:05:20','2006-02-15 22:20:25'),(13544,502,1,16034,'3.99','2005-08-23 22:06:34','2006-02-15 22:20:26'),(13545,503,2,109,'1.99','2005-05-25 18:40:20','2006-02-15 22:20:26'),(13546,503,1,353,'5.99','2005-05-27 06:03:39','2006-02-15 22:20:26'),(13547,503,1,631,'2.99','2005-05-28 17:36:32','2006-02-15 22:20:26'),(13548,503,1,1074,'4.99','2005-05-31 10:04:42','2006-02-15 22:20:26'),(13549,503,2,2108,'4.99','2005-06-17 19:35:26','2006-02-15 22:20:26'),(13550,503,1,2225,'2.99','2005-06-18 03:35:40','2006-02-15 22:20:26'),(13551,503,2,3430,'0.99','2005-06-21 18:46:08','2006-02-15 22:20:26'),(13552,503,2,3935,'6.99','2005-07-06 21:08:29','2006-02-15 22:20:26'),(13553,503,2,4570,'2.99','2005-07-08 05:33:59','2006-02-15 22:20:26'),(13554,503,2,5465,'2.99','2005-07-09 23:01:13','2006-02-15 22:20:26'),(13555,503,1,5925,'6.99','2005-07-10 21:41:27','2006-02-15 22:20:26'),(13556,503,1,6166,'4.99','2005-07-11 10:19:05','2006-02-15 22:20:26'),(13557,503,1,6529,'2.99','2005-07-12 04:31:04','2006-02-15 22:20:26'),(13558,503,2,6950,'4.99','2005-07-26 23:45:33','2006-02-15 22:20:26'),(13559,503,1,8178,'2.99','2005-07-28 21:54:31','2006-02-15 22:20:26'),(13560,503,2,9725,'0.99','2005-07-31 08:35:18','2006-02-15 22:20:27'),(13561,503,1,9974,'4.99','2005-07-31 16:51:11','2006-02-15 22:20:27'),(13562,503,2,11075,'2.99','2005-08-02 07:24:23','2006-02-15 22:20:27'),(13563,503,1,11161,'1.99','2005-08-02 10:05:57','2006-02-15 22:20:27'),(13564,503,1,11858,'4.99','2005-08-17 13:50:31','2006-02-15 22:20:27'),(13565,503,2,12370,'2.99','2005-08-18 07:57:47','2006-02-15 22:20:27'),(13566,503,2,12783,'4.99','2005-08-19 00:01:14','2006-02-15 22:20:27'),(13567,503,1,13332,'2.99','2005-08-19 20:00:51','2006-02-15 22:20:27'),(13568,503,1,13551,'2.99','2005-08-20 04:00:30','2006-02-15 22:20:27'),(13569,503,1,14823,'0.99','2005-08-22 01:24:42','2006-02-15 22:20:27'),(13570,503,1,14913,'2.99','2005-08-22 04:52:13','2006-02-15 22:20:27'),(13571,503,2,15056,'4.99','2005-08-22 10:15:54','2006-02-15 22:20:27'),(13572,503,2,15077,'2.99','2005-08-22 11:09:18','2006-02-15 22:20:27'),(13573,503,1,15588,'3.99','2005-08-23 06:02:35','2006-02-15 22:20:27'),(13574,503,1,15692,'4.99','2005-08-23 10:00:02','2006-02-15 22:20:27'),(13575,503,1,15726,'2.99','2005-08-23 11:28:26','2006-02-15 22:20:27'),(13576,503,1,15797,'0.99','2005-08-23 14:13:47','2006-02-15 22:20:28'),(13577,504,2,136,'5.99','2005-05-25 22:02:30','2006-02-15 22:20:28'),(13578,504,2,470,'4.99','2005-05-27 21:17:08','2006-02-15 22:20:28'),(13579,504,1,838,'4.99','2005-05-30 00:27:57','2006-02-15 22:20:28'),(13580,504,1,2720,'1.99','2005-06-19 14:51:55','2006-02-15 22:20:28'),(13581,504,1,2938,'6.99','2005-06-20 05:17:22','2006-02-15 22:20:28'),(13582,504,2,3712,'9.99','2005-07-06 10:47:35','2006-02-15 22:20:28'),(13583,504,1,3713,'6.99','2005-07-06 10:49:30','2006-02-15 22:20:28'),(13584,504,1,4329,'5.99','2005-07-07 18:04:16','2006-02-15 22:20:28'),(13585,504,1,4757,'0.99','2005-07-08 14:36:51','2006-02-15 22:20:28'),(13586,504,2,5153,'6.99','2005-07-09 08:35:05','2006-02-15 22:20:28'),(13587,504,2,7342,'3.99','2005-07-27 14:25:17','2006-02-15 22:20:28'),(13588,504,1,7567,'2.99','2005-07-27 22:38:05','2006-02-15 22:20:28'),(13589,504,2,7807,'2.99','2005-07-28 07:58:27','2006-02-15 22:20:28'),(13590,504,2,7875,'1.99','2005-07-28 10:23:48','2006-02-15 22:20:28'),(13591,504,2,7944,'4.99','2005-07-28 12:51:22','2006-02-15 22:20:28'),(13592,504,1,8393,'9.99','2005-07-29 06:02:11','2006-02-15 22:20:28'),(13593,504,2,10397,'0.99','2005-08-01 07:11:27','2006-02-15 22:20:29'),(13594,504,2,10509,'3.99','2005-08-01 11:25:28','2006-02-15 22:20:29'),(13595,504,2,11569,'2.99','2005-08-17 01:31:04','2006-02-15 22:20:29'),(13596,504,1,12769,'1.99','2005-08-18 23:26:40','2006-02-15 22:20:29'),(13597,504,1,13166,'2.99','2005-08-19 13:36:28','2006-02-15 22:20:29'),(13598,504,2,13206,'2.99','2005-08-19 15:05:34','2006-02-15 22:20:29'),(13599,504,2,13387,'2.99','2005-08-19 21:46:10','2006-02-15 22:20:29'),(13600,504,2,13859,'5.99','2005-08-20 14:53:43','2006-02-15 22:20:29'),(13601,504,2,15018,'4.99','2005-08-22 08:52:38','2006-02-15 22:20:29'),(13602,504,1,15166,'6.99','2005-08-22 15:05:37','2006-02-15 22:20:29'),(13603,504,1,15723,'8.99','2005-08-23 11:17:26','2006-02-15 22:20:29'),(13604,504,2,16022,'4.99','2005-08-23 21:44:27','2006-02-15 22:20:29'),(13605,505,1,159,'2.99','2005-05-26 01:34:28','2006-02-15 22:20:29'),(13606,505,1,645,'2.99','2005-05-28 19:14:09','2006-02-15 22:20:29'),(13607,505,2,1799,'5.99','2005-06-16 20:17:20','2006-02-15 22:20:29'),(13608,505,2,1886,'4.99','2005-06-17 03:36:02','2006-02-15 22:20:29'),(13609,505,1,2773,'7.99','2005-06-19 18:04:18','2006-02-15 22:20:30'),(13610,505,1,3137,'5.99','2005-06-20 19:41:28','2006-02-15 22:20:30'),(13611,505,2,4008,'5.99','2005-07-07 00:26:43','2006-02-15 22:20:30'),(13612,505,1,4507,'6.99','2005-07-08 02:22:45','2006-02-15 22:20:30'),(13613,505,2,5976,'9.99','2005-07-11 00:16:35','2006-02-15 22:20:30'),(13614,505,2,6292,'4.99','2005-07-11 17:23:33','2006-02-15 22:20:30'),(13615,505,1,6441,'0.99','2005-07-12 00:27:08','2006-02-15 22:20:30'),(13616,505,1,7784,'4.99','2005-07-28 07:15:32','2006-02-15 22:20:30'),(13617,505,2,10219,'5.99','2005-08-01 01:10:33','2006-02-15 22:20:30'),(13618,505,1,10896,'2.99','2005-08-02 01:19:33','2006-02-15 22:20:30'),(13619,505,1,11163,'0.99','2005-08-02 10:08:40','2006-02-15 22:20:30'),(13620,505,1,11907,'2.99','2005-08-17 15:40:47','2006-02-15 22:20:30'),(13621,505,2,13612,'3.99','2005-08-20 06:22:08','2006-02-15 22:20:30'),(13622,505,1,14398,'2.99','2005-08-21 10:27:21','2006-02-15 22:20:30'),(13623,505,1,14802,'2.99','2005-08-22 00:48:23','2006-02-15 22:20:30'),(13624,505,1,15436,'4.99','2005-08-23 00:30:26','2006-02-15 22:20:30'),(13625,505,2,15867,'4.99','2006-02-14 15:16:03','2006-02-15 22:20:31'),(13626,506,1,114,'3.99','2005-05-25 19:12:42','2006-02-15 22:20:31'),(13627,506,2,387,'2.99','2005-05-27 10:35:27','2006-02-15 22:20:31'),(13628,506,2,410,'3.99','2005-05-27 14:11:22','2006-02-15 22:20:31'),(13629,506,1,547,'8.99','2005-05-28 07:24:28','2006-02-15 22:20:31'),(13630,506,2,907,'0.99','2005-05-30 10:37:27','2006-02-15 22:20:31'),(13631,506,1,1042,'2.99','2005-05-31 05:53:00','2006-02-15 22:20:31'),(13632,506,2,1153,'4.99','2005-05-31 21:36:44','2006-02-15 22:20:31'),(13633,506,1,1446,'6.99','2005-06-15 19:13:45','2006-02-15 22:20:31'),(13634,506,1,1467,'2.99','2005-06-15 20:47:10','2006-02-15 22:20:31'),(13635,506,2,1565,'0.99','2005-06-16 03:13:09','2006-02-15 22:20:31'),(13636,506,1,2755,'9.99','2005-06-19 16:56:31','2006-02-15 22:20:31'),(13637,506,2,2824,'6.99','2005-06-19 20:31:45','2006-02-15 22:20:31'),(13638,506,2,4594,'7.99','2005-07-08 06:40:06','2006-02-15 22:20:31'),(13639,506,2,4640,'6.99','2005-07-08 08:59:34','2006-02-15 22:20:31'),(13640,506,2,4806,'8.99','2005-07-08 17:01:02','2006-02-15 22:20:31'),(13641,506,2,5985,'0.99','2005-07-11 00:51:58','2006-02-15 22:20:32'),(13642,506,1,6783,'2.99','2005-07-12 16:27:56','2006-02-15 22:20:32'),(13643,506,1,7020,'0.99','2005-07-27 02:24:27','2006-02-15 22:20:32'),(13644,506,2,8096,'9.99','2005-07-28 18:32:46','2006-02-15 22:20:32'),(13645,506,2,8506,'0.99','2005-07-29 09:23:52','2006-02-15 22:20:32'),(13646,506,2,9654,'3.99','2005-07-31 05:57:42','2006-02-15 22:20:32'),(13647,506,2,9972,'2.99','2005-07-31 16:42:43','2006-02-15 22:20:32'),(13648,506,1,10477,'2.99','2005-08-01 10:04:17','2006-02-15 22:20:32'),(13649,506,1,10873,'4.99','2005-08-02 00:30:34','2006-02-15 22:20:32'),(13650,506,2,11238,'0.99','2005-08-02 13:25:50','2006-02-15 22:20:32'),(13651,506,2,11781,'4.99','2005-08-17 10:37:00','2006-02-15 22:20:32'),(13652,506,1,12994,'0.99','2005-08-19 07:26:10','2006-02-15 22:20:32'),(13653,506,2,13073,'2.99','2005-08-19 10:05:38','2006-02-15 22:20:32'),(13654,506,2,13767,'0.99','2005-08-20 11:43:36','2006-02-15 22:20:32'),(13655,506,1,14074,'1.99','2005-08-20 23:16:07','2006-02-15 22:20:32'),(13656,506,1,14337,'2.99','2005-08-21 08:34:26','2006-02-15 22:20:32'),(13657,506,2,14395,'6.99','2005-08-21 10:24:00','2006-02-15 22:20:33'),(13658,506,2,15022,'5.99','2005-08-22 08:55:43','2006-02-15 22:20:33'),(13659,506,2,15572,'1.99','2005-08-23 05:28:01','2006-02-15 22:20:33'),(13660,506,1,15694,'9.99','2005-08-23 10:02:46','2006-02-15 22:20:33'),(13661,507,1,52,'0.99','2005-05-25 06:51:29','2006-02-15 22:20:33'),(13662,507,2,713,'4.99','2005-05-29 04:10:17','2006-02-15 22:20:33'),(13663,507,2,1307,'4.99','2005-06-15 10:06:15','2006-02-15 22:20:33'),(13664,507,1,2143,'4.99','2005-06-17 21:58:13','2006-02-15 22:20:33'),(13665,507,2,2283,'4.99','2005-06-18 06:56:06','2006-02-15 22:20:33'),(13666,507,1,3660,'4.99','2005-07-06 08:07:29','2006-02-15 22:20:33'),(13667,507,1,3880,'2.99','2005-07-06 18:32:49','2006-02-15 22:20:33'),(13668,507,2,4440,'0.99','2005-07-07 23:00:58','2006-02-15 22:20:33'),(13669,507,2,4455,'2.99','2005-07-07 23:43:46','2006-02-15 22:20:33'),(13670,507,2,4744,'0.99','2005-07-08 13:43:57','2006-02-15 22:20:33'),(13671,507,2,4901,'2.99','2005-07-08 20:44:51','2006-02-15 22:20:33'),(13672,507,1,5962,'0.99','2005-07-10 23:45:22','2006-02-15 22:20:33'),(13673,507,1,6351,'6.99','2005-07-11 20:31:44','2006-02-15 22:20:34'),(13674,507,1,6396,'1.99','2005-07-11 22:31:08','2006-02-15 22:20:34'),(13675,507,1,6891,'2.99','2005-07-12 21:07:35','2006-02-15 22:20:34'),(13676,507,2,7770,'5.99','2005-07-28 06:49:35','2006-02-15 22:20:34'),(13677,507,1,7970,'5.99','2005-07-28 13:58:38','2006-02-15 22:20:34'),(13678,507,2,8369,'2.99','2005-07-29 05:15:42','2006-02-15 22:20:34'),(13679,507,2,8976,'2.99','2005-07-30 04:12:32','2006-02-15 22:20:34'),(13680,507,1,9003,'2.99','2005-07-30 05:02:52','2006-02-15 22:20:34'),(13681,507,2,12071,'6.99','2005-08-17 21:49:14','2006-02-15 22:20:34'),(13682,507,2,12275,'4.99','2005-08-18 04:42:02','2006-02-15 22:20:34'),(13683,507,1,12343,'4.99','2005-08-18 07:15:13','2006-02-15 22:20:34'),(13684,507,2,14625,'4.99','2005-08-21 18:34:21','2006-02-15 22:20:34'),(13685,507,1,15394,'2.99','2005-08-22 23:04:21','2006-02-15 22:20:34'),(13686,508,1,369,'2.99','2005-05-27 07:46:49','2006-02-15 22:20:34'),(13687,508,2,921,'2.99','2005-05-30 11:53:09','2006-02-15 22:20:34'),(13688,508,2,1661,'4.99','2005-06-16 10:12:57','2006-02-15 22:20:34'),(13689,508,2,5657,'9.99','2005-07-10 07:33:43','2006-02-15 22:20:35'),(13690,508,2,5978,'6.99','2005-07-11 00:16:54','2006-02-15 22:20:35'),(13691,508,1,6101,'4.99','2005-07-11 06:50:33','2006-02-15 22:20:35'),(13692,508,2,6646,'0.99','2005-07-12 10:41:34','2006-02-15 22:20:35'),(13693,508,2,6929,'8.99','2005-07-26 22:59:19','2006-02-15 22:20:35'),(13694,508,1,7283,'5.99','2005-07-27 12:02:41','2006-02-15 22:20:35'),(13695,508,2,7322,'3.99','2005-07-27 13:37:26','2006-02-15 22:20:35'),(13696,508,2,7327,'7.99','2005-07-27 13:53:26','2006-02-15 22:20:35'),(13697,508,2,7668,'2.99','2005-07-28 02:41:31','2006-02-15 22:20:35'),(13698,508,2,7676,'4.99','2005-07-28 02:55:27','2006-02-15 22:20:35'),(13699,508,2,8191,'4.99','2005-07-28 22:47:14','2006-02-15 22:20:35'),(13700,508,2,9694,'5.99','2005-07-31 07:13:16','2006-02-15 22:20:35'),(13701,508,1,9706,'2.99','2005-07-31 07:43:19','2006-02-15 22:20:35'),(13702,508,2,10128,'2.99','2005-07-31 21:40:04','2006-02-15 22:20:35'),(13703,508,1,10746,'8.99','2005-08-01 19:58:49','2006-02-15 22:20:35'),(13704,508,1,11365,'2.99','2005-08-02 18:00:09','2006-02-15 22:20:35'),(13705,508,2,11447,'6.99','2005-08-02 20:36:25','2006-02-15 22:20:36'),(13706,508,1,13095,'6.99','2005-08-19 10:48:10','2006-02-15 22:20:36'),(13707,508,2,13201,'2.99','2005-08-19 14:56:05','2006-02-15 22:20:36'),(13708,508,1,15010,'6.99','2005-08-22 08:30:17','2006-02-15 22:20:36'),(13709,508,1,15195,'4.99','2005-08-22 16:08:23','2006-02-15 22:20:36'),(13710,508,1,14318,'0.99','2006-02-14 15:16:03','2006-02-15 22:20:36'),(13711,509,1,22,'4.99','2005-05-25 02:19:23','2006-02-15 22:20:36'),(13712,509,1,831,'8.99','2005-05-29 22:50:25','2006-02-15 22:20:36'),(13713,509,1,1267,'2.99','2005-06-15 07:21:21','2006-02-15 22:20:36'),(13714,509,2,2919,'4.99','2005-06-20 04:10:16','2006-02-15 22:20:36'),(13715,509,2,4139,'1.99','2005-07-07 08:17:35','2006-02-15 22:20:36'),(13716,509,2,4266,'4.99','2005-07-07 14:34:50','2006-02-15 22:20:36'),(13717,509,2,4832,'2.99','2005-07-08 18:07:05','2006-02-15 22:20:36'),(13718,509,2,5008,'2.99','2005-07-09 01:31:42','2006-02-15 22:20:36'),(13719,509,1,6591,'5.99','2005-07-12 07:13:46','2006-02-15 22:20:36'),(13720,509,1,7848,'6.99','2005-07-28 09:24:31','2006-02-15 22:20:36'),(13721,509,1,8114,'8.99','2005-07-28 19:14:06','2006-02-15 22:20:37'),(13722,509,1,8214,'5.99','2005-07-28 23:37:57','2006-02-15 22:20:37'),(13723,509,2,8240,'0.99','2005-07-29 00:33:32','2006-02-15 22:20:37'),(13724,509,1,10189,'4.99','2005-08-01 00:25:00','2006-02-15 22:20:37'),(13725,509,2,10988,'5.99','2005-08-02 04:38:17','2006-02-15 22:20:37'),(13726,509,1,11814,'6.99','2005-08-17 12:09:20','2006-02-15 22:20:37'),(13727,509,2,12109,'4.99','2005-08-17 22:58:35','2006-02-15 22:20:37'),(13728,509,2,14045,'4.99','2005-08-20 21:50:11','2006-02-15 22:20:37'),(13729,509,2,14994,'5.99','2005-08-22 07:52:24','2006-02-15 22:20:37'),(13730,509,1,15965,'2.99','2005-08-23 19:46:39','2006-02-15 22:20:37'),(13731,510,1,75,'8.99','2005-05-25 11:13:34','2006-02-15 22:20:37'),(13732,510,1,372,'5.99','2005-05-27 08:13:58','2006-02-15 22:20:37'),(13733,510,2,1118,'4.99','2005-05-31 16:23:02','2006-02-15 22:20:37'),(13734,510,2,1435,'5.99','2005-06-15 18:32:30','2006-02-15 22:20:37'),(13735,510,2,1757,'0.99','2005-06-16 17:32:24','2006-02-15 22:20:37'),(13736,510,2,1925,'0.99','2005-06-17 06:16:47','2006-02-15 22:20:37'),(13737,510,1,2729,'8.99','2005-06-19 15:06:15','2006-02-15 22:20:38'),(13738,510,2,2806,'0.99','2005-06-19 19:30:48','2006-02-15 22:20:38'),(13739,510,2,2817,'0.99','2005-06-19 20:05:22','2006-02-15 22:20:38'),(13740,510,2,3352,'8.99','2005-06-21 11:26:29','2006-02-15 22:20:38'),(13741,510,2,3465,'5.99','2005-06-21 22:10:01','2006-02-15 22:20:38'),(13742,510,2,3744,'2.99','2005-07-06 12:10:02','2006-02-15 22:20:38'),(13743,510,1,4014,'4.99','2005-07-07 00:58:54','2006-02-15 22:20:38'),(13744,510,2,5851,'4.99','2005-07-10 17:40:47','2006-02-15 22:20:38'),(13745,510,1,6531,'1.99','2005-07-12 04:35:24','2006-02-15 22:20:38'),(13746,510,1,7457,'2.99','2005-07-27 18:35:17','2006-02-15 22:20:38'),(13747,510,1,7678,'8.99','2005-07-28 02:58:16','2006-02-15 22:20:38'),(13748,510,2,7794,'9.99','2005-07-28 07:28:03','2006-02-15 22:20:38'),(13749,510,2,8763,'3.99','2005-07-29 19:38:24','2006-02-15 22:20:38'),(13750,510,1,8926,'4.99','2005-07-30 02:10:31','2006-02-15 22:20:38'),(13751,510,1,10131,'0.99','2005-07-31 21:45:28','2006-02-15 22:20:38'),(13752,510,2,10265,'7.99','2005-08-01 03:05:04','2006-02-15 22:20:38'),(13753,510,2,11996,'4.99','2005-08-17 18:34:37','2006-02-15 22:20:39'),(13754,510,1,12317,'0.99','2005-08-18 06:17:06','2006-02-15 22:20:39'),(13755,510,2,12406,'2.99','2005-08-18 09:38:02','2006-02-15 22:20:39'),(13756,510,1,15065,'4.99','2005-08-22 10:46:44','2006-02-15 22:20:39'),(13757,511,1,56,'2.99','2005-05-25 08:28:11','2006-02-15 22:20:39'),(13758,511,1,819,'3.99','2005-05-29 21:00:32','2006-02-15 22:20:39'),(13759,511,2,1281,'2.99','2005-06-15 08:21:39','2006-02-15 22:20:39'),(13760,511,1,1508,'2.99','2005-06-15 22:33:24','2006-02-15 22:20:39'),(13761,511,2,2966,'10.99','2005-06-20 07:39:33','2006-02-15 22:20:39'),(13762,511,2,3366,'4.99','2005-06-21 13:03:37','2006-02-15 22:20:39'),(13763,511,2,3600,'4.99','2005-07-06 05:19:42','2006-02-15 22:20:39'),(13764,511,1,3852,'0.99','2005-07-06 16:57:49','2006-02-15 22:20:39'),(13765,511,1,4482,'4.99','2005-07-08 01:01:18','2006-02-15 22:20:39'),(13766,511,2,5164,'3.99','2005-07-09 09:03:14','2006-02-15 22:20:39'),(13767,511,1,5601,'0.99','2005-07-10 04:56:55','2006-02-15 22:20:39'),(13768,511,2,6040,'0.99','2005-07-11 03:14:26','2006-02-15 22:20:39'),(13769,511,1,6320,'0.99','2005-07-11 18:50:55','2006-02-15 22:20:40'),(13770,511,1,8026,'4.99','2005-07-28 16:05:38','2006-02-15 22:20:40'),(13771,511,1,9095,'0.99','2005-07-30 08:38:36','2006-02-15 22:20:40'),(13772,511,1,9143,'6.99','2005-07-30 10:22:11','2006-02-15 22:20:40'),(13773,511,1,9760,'4.99','2005-07-31 09:29:33','2006-02-15 22:20:40'),(13774,511,1,10231,'2.99','2005-08-01 01:50:49','2006-02-15 22:20:40'),(13775,511,2,10429,'2.99','2005-08-01 08:34:18','2006-02-15 22:20:40'),(13776,511,2,12110,'6.99','2005-08-17 22:59:46','2006-02-15 22:20:40'),(13777,511,1,12920,'4.99','2005-08-19 04:32:32','2006-02-15 22:20:40'),(13778,511,1,14213,'4.99','2005-08-21 04:30:47','2006-02-15 22:20:40'),(13779,511,1,14302,'6.99','2005-08-21 07:19:57','2006-02-15 22:20:40'),(13780,511,1,15172,'4.99','2005-08-22 15:25:33','2006-02-15 22:20:40'),(13781,512,1,1176,'6.99','2005-06-15 00:28:37','2006-02-15 22:20:40'),(13782,512,2,2029,'4.99','2005-06-17 13:10:59','2006-02-15 22:20:40'),(13783,512,1,2364,'2.99','2005-06-18 13:37:32','2006-02-15 22:20:40'),(13784,512,1,4752,'5.99','2005-07-08 14:15:20','2006-02-15 22:20:40'),(13785,512,1,4799,'0.99','2005-07-08 16:49:27','2006-02-15 22:20:41'),(13786,512,1,5064,'6.99','2005-07-09 04:38:51','2006-02-15 22:20:41'),(13787,512,2,5813,'3.99','2005-07-10 15:34:37','2006-02-15 22:20:41'),(13788,512,1,7219,'2.99','2005-07-27 09:35:36','2006-02-15 22:20:41'),(13789,512,1,7507,'0.99','2005-07-27 20:31:48','2006-02-15 22:20:41'),(13790,512,1,7715,'6.99','2005-07-28 04:32:38','2006-02-15 22:20:41'),(13791,512,2,8868,'4.99','2005-07-30 00:02:26','2006-02-15 22:20:41'),(13792,512,1,9055,'2.99','2005-07-30 07:13:07','2006-02-15 22:20:41'),(13793,512,2,10232,'4.99','2005-08-01 01:50:55','2006-02-15 22:20:41'),(13794,512,2,10670,'3.99','2005-08-01 17:07:16','2006-02-15 22:20:41'),(13795,512,2,11818,'9.99','2005-08-17 12:22:04','2006-02-15 22:20:41'),(13796,512,2,12957,'8.99','2005-08-19 06:12:44','2006-02-15 22:20:41'),(13797,512,2,13156,'4.99','2005-08-19 13:10:42','2006-02-15 22:20:41'),(13798,512,2,13771,'0.99','2005-08-20 11:47:21','2006-02-15 22:20:41'),(13799,512,1,14288,'4.99','2005-08-21 06:57:34','2006-02-15 22:20:41'),(13800,512,1,14870,'2.99','2005-08-22 03:23:20','2006-02-15 22:20:41'),(13801,512,1,15153,'2.99','2005-08-22 14:26:01','2006-02-15 22:20:42'),(13802,512,2,15265,'3.99','2005-08-22 18:35:59','2006-02-15 22:20:42'),(13803,512,1,15317,'3.99','2005-08-22 20:14:13','2006-02-15 22:20:42'),(13804,512,2,15733,'4.99','2005-08-23 11:37:32','2006-02-15 22:20:42'),(13805,512,2,15990,'4.99','2005-08-23 20:25:11','2006-02-15 22:20:42'),(13806,512,1,12786,'0.99','2006-02-14 15:16:03','2006-02-15 22:20:42'),(13807,513,2,993,'4.99','2005-05-30 23:54:19','2006-02-15 22:20:42'),(13808,513,1,1607,'2.99','2005-06-16 06:25:35','2006-02-15 22:20:42'),(13809,513,2,2290,'7.99','2005-06-18 07:34:37','2006-02-15 22:20:42'),(13810,513,2,2737,'1.99','2005-06-19 15:48:33','2006-02-15 22:20:42'),(13811,513,2,3872,'0.99','2005-07-06 18:00:19','2006-02-15 22:20:42'),(13812,513,2,4055,'2.99','2005-07-07 03:49:13','2006-02-15 22:20:42'),(13813,513,2,4178,'4.99','2005-07-07 10:14:31','2006-02-15 22:20:42'),(13814,513,2,4220,'4.99','2005-07-07 12:12:36','2006-02-15 22:20:42'),(13815,513,1,5741,'7.99','2005-07-10 11:55:40','2006-02-15 22:20:42'),(13816,513,1,6027,'4.99','2005-07-11 02:26:29','2006-02-15 22:20:42'),(13817,513,1,7655,'0.99','2005-07-28 02:01:11','2006-02-15 22:20:43'),(13818,513,2,8320,'4.99','2005-07-29 03:49:58','2006-02-15 22:20:43'),(13819,513,1,8350,'4.99','2005-07-29 04:50:39','2006-02-15 22:20:43'),(13820,513,2,8683,'9.99','2005-07-29 16:15:43','2006-02-15 22:20:43'),(13821,513,1,8798,'5.99','2005-07-29 21:15:38','2006-02-15 22:20:43'),(13822,513,2,9862,'2.99','2005-07-31 13:05:03','2006-02-15 22:20:43'),(13823,513,1,10012,'3.99','2005-07-31 18:06:06','2006-02-15 22:20:43'),(13824,513,2,11081,'2.99','2005-08-02 07:30:14','2006-02-15 22:20:43'),(13825,513,1,11165,'2.99','2005-08-02 10:12:17','2006-02-15 22:20:43'),(13826,513,1,11407,'3.99','2005-08-02 19:18:43','2006-02-15 22:20:43'),(13827,513,1,11755,'3.99','2005-08-17 09:15:35','2006-02-15 22:20:43'),(13828,513,1,12559,'5.99','2005-08-18 14:53:58','2006-02-15 22:20:43'),(13829,513,2,12784,'2.99','2005-08-19 00:02:46','2006-02-15 22:20:43'),(13830,513,2,12807,'4.99','2005-08-19 00:38:46','2006-02-15 22:20:43'),(13831,513,1,13596,'5.99','2005-08-20 05:58:58','2006-02-15 22:20:43'),(13832,513,1,13690,'4.99','2005-08-20 09:07:27','2006-02-15 22:20:43'),(13833,513,2,14844,'7.99','2005-08-22 02:09:12','2006-02-15 22:20:44'),(13834,513,1,14875,'4.99','2005-08-22 03:34:39','2006-02-15 22:20:44'),(13835,513,1,15035,'4.99','2005-08-22 09:34:32','2006-02-15 22:20:44'),(13836,513,2,15289,'6.99','2005-08-22 19:27:24','2006-02-15 22:20:44'),(13837,513,2,15545,'5.99','2005-08-23 04:20:16','2006-02-15 22:20:44'),(13838,514,2,536,'4.99','2005-05-28 06:17:33','2006-02-15 22:20:44'),(13839,514,2,1692,'4.99','2005-06-16 12:30:19','2006-02-15 22:20:44'),(13840,514,1,2002,'3.99','2005-06-17 11:39:58','2006-02-15 22:20:44'),(13841,514,2,2362,'0.99','2005-06-18 13:31:15','2006-02-15 22:20:44'),(13842,514,1,2789,'0.99','2005-06-19 18:48:21','2006-02-15 22:20:44'),(13843,514,2,3084,'2.99','2005-06-20 15:35:24','2006-02-15 22:20:44'),(13844,514,1,3385,'0.99','2005-06-21 14:16:48','2006-02-15 22:20:44'),(13845,514,2,3668,'5.99','2005-07-06 08:36:48','2006-02-15 22:20:44'),(13846,514,2,3860,'2.99','2005-07-06 17:20:24','2006-02-15 22:20:44'),(13847,514,1,7791,'4.99','2005-07-28 07:22:51','2006-02-15 22:20:44'),(13848,514,1,9038,'3.99','2005-07-30 06:23:35','2006-02-15 22:20:45'),(13849,514,1,11675,'1.99','2005-08-17 05:57:54','2006-02-15 22:20:45'),(13850,514,2,12067,'4.99','2005-08-17 21:36:47','2006-02-15 22:20:45'),(13851,514,1,12293,'4.99','2005-08-18 05:13:36','2006-02-15 22:20:45'),(13852,514,1,12302,'4.99','2005-08-18 05:41:39','2006-02-15 22:20:45'),(13853,514,2,12578,'0.99','2005-08-18 15:47:11','2006-02-15 22:20:45'),(13854,514,1,12752,'2.99','2005-08-18 22:33:36','2006-02-15 22:20:45'),(13855,514,2,13344,'3.99','2005-08-19 20:22:44','2006-02-15 22:20:45'),(13856,514,1,14052,'0.99','2005-08-20 22:11:46','2006-02-15 22:20:45'),(13857,514,1,14386,'1.99','2005-08-21 10:06:34','2006-02-15 22:20:45'),(13858,514,1,15451,'2.99','2005-08-23 00:56:27','2006-02-15 22:20:45'),(13859,514,1,15776,'5.99','2005-08-23 13:26:01','2006-02-15 22:20:45'),(13860,515,2,187,'8.99','2005-05-26 05:42:37','2006-02-15 22:20:45'),(13861,515,2,292,'6.99','2005-05-26 20:22:12','2006-02-15 22:20:45'),(13862,515,1,1244,'4.99','2005-06-15 05:08:40','2006-02-15 22:20:45'),(13863,515,2,1531,'5.99','2005-06-16 00:40:34','2006-02-15 22:20:45'),(13864,515,2,2003,'4.99','2005-06-17 11:40:35','2006-02-15 22:20:46'),(13865,515,2,2484,'4.99','2005-06-18 21:25:23','2006-02-15 22:20:46'),(13866,515,2,2513,'0.99','2005-06-18 23:53:15','2006-02-15 22:20:46'),(13867,515,2,3063,'3.99','2005-06-20 13:52:03','2006-02-15 22:20:46'),(13868,515,2,3782,'0.99','2005-07-06 13:57:03','2006-02-15 22:20:46'),(13869,515,2,4111,'6.99','2005-07-07 06:47:56','2006-02-15 22:20:46'),(13870,515,2,5216,'0.99','2005-07-09 11:54:58','2006-02-15 22:20:46'),(13871,515,2,5546,'2.99','2005-07-10 02:50:37','2006-02-15 22:20:46'),(13872,515,2,5697,'4.99','2005-07-10 09:44:44','2006-02-15 22:20:46'),(13873,515,2,7429,'3.99','2005-07-27 17:24:50','2006-02-15 22:20:46'),(13874,515,1,8706,'4.99','2005-07-29 17:19:15','2006-02-15 22:20:46'),(13875,515,1,10159,'4.99','2005-07-31 22:54:30','2006-02-15 22:20:46'),(13876,515,2,10716,'0.99','2005-08-01 18:53:48','2006-02-15 22:20:46'),(13877,515,1,11451,'3.99','2005-08-02 20:45:56','2006-02-15 22:20:46'),(13878,515,2,11572,'4.99','2005-08-17 01:37:55','2006-02-15 22:20:46'),(13879,515,1,11691,'3.99','2005-08-17 06:51:05','2006-02-15 22:20:47'),(13880,515,2,11937,'6.99','2005-08-17 16:48:36','2006-02-15 22:20:47'),(13881,515,2,12416,'2.99','2005-08-18 09:56:48','2006-02-15 22:20:47'),(13882,515,1,12486,'8.99','2005-08-18 12:42:50','2006-02-15 22:20:47'),(13883,515,1,12889,'5.99','2005-08-19 03:41:31','2006-02-15 22:20:47'),(13884,515,2,14072,'4.99','2005-08-20 23:07:10','2006-02-15 22:20:47'),(13885,515,2,14378,'3.99','2005-08-21 09:50:02','2006-02-15 22:20:47'),(13886,515,2,14414,'0.99','2005-08-21 11:08:17','2006-02-15 22:20:47'),(13887,515,2,15274,'4.99','2005-08-22 18:55:52','2006-02-15 22:20:47'),(13888,516,2,339,'3.99','2005-05-27 03:47:18','2006-02-15 22:20:47'),(13889,516,1,571,'1.99','2005-05-28 10:17:41','2006-02-15 22:20:47'),(13890,516,2,1159,'4.99','2005-06-14 22:55:13','2006-02-15 22:20:47'),(13891,516,1,1200,'1.99','2005-06-15 01:59:51','2006-02-15 22:20:47'),(13892,516,1,1718,'10.99','2005-06-16 14:52:02','2006-02-15 22:20:47'),(13893,516,1,2017,'0.99','2005-06-17 12:33:30','2006-02-15 22:20:47'),(13894,516,2,3068,'0.99','2005-06-20 14:02:22','2006-02-15 22:20:47'),(13895,516,1,3431,'2.99','2005-06-21 18:46:48','2006-02-15 22:20:48'),(13896,516,2,5780,'3.99','2005-07-10 13:46:23','2006-02-15 22:20:48'),(13897,516,2,6677,'6.99','2005-07-12 11:58:14','2006-02-15 22:20:48'),(13898,516,1,6858,'6.99','2005-07-12 19:53:51','2006-02-15 22:20:48'),(13899,516,1,7628,'4.99','2005-07-28 00:58:04','2006-02-15 22:20:48'),(13900,516,1,7882,'4.99','2005-07-28 10:33:42','2006-02-15 22:20:48'),(13901,516,2,8396,'4.99','2005-07-29 06:07:00','2006-02-15 22:20:48'),(13902,516,2,8534,'5.99','2005-07-29 10:30:13','2006-02-15 22:20:48'),(13903,516,2,8585,'2.99','2005-07-29 12:14:18','2006-02-15 22:20:48'),(13904,516,2,9243,'4.99','2005-07-30 14:06:27','2006-02-15 22:20:48'),(13905,516,2,11926,'0.99','2005-08-17 16:25:02','2006-02-15 22:20:48'),(13906,516,2,11939,'1.99','2005-08-17 16:55:57','2006-02-15 22:20:48'),(13907,516,1,12535,'1.99','2005-08-18 14:05:22','2006-02-15 22:20:48'),(13908,516,1,13276,'8.99','2005-08-19 17:53:42','2006-02-15 22:20:48'),(13909,516,1,14932,'0.99','2005-08-22 05:40:39','2006-02-15 22:20:48'),(13910,516,1,15526,'0.99','2005-08-23 03:44:30','2006-02-15 22:20:48'),(13911,516,1,15701,'0.99','2005-08-23 10:22:21','2006-02-15 22:20:49'),(13912,516,1,12130,'5.98','2006-02-14 15:16:03','2006-02-15 22:20:49'),(13913,516,1,12915,'0.00','2006-02-14 15:16:03','2006-02-15 22:20:49'),(13914,517,2,850,'4.99','2005-05-30 01:35:12','2006-02-15 22:20:49'),(13915,517,2,1653,'4.99','2005-06-16 09:34:45','2006-02-15 22:20:49'),(13916,517,1,1809,'8.99','2005-06-16 21:00:20','2006-02-15 22:20:49'),(13917,517,1,1850,'4.99','2005-06-17 00:31:35','2006-02-15 22:20:49'),(13918,517,2,2534,'2.99','2005-06-19 01:38:39','2006-02-15 22:20:49'),(13919,517,1,3113,'0.99','2005-06-20 17:56:40','2006-02-15 22:20:49'),(13920,517,2,4094,'2.99','2005-07-07 06:00:21','2006-02-15 22:20:49'),(13921,517,1,4109,'4.99','2005-07-07 06:39:43','2006-02-15 22:20:49'),(13922,517,1,4369,'4.99','2005-07-07 20:01:38','2006-02-15 22:20:49'),(13923,517,2,4374,'4.99','2005-07-07 20:13:58','2006-02-15 22:20:49'),(13924,517,2,4934,'0.99','2005-07-08 22:18:42','2006-02-15 22:20:49'),(13925,517,1,4993,'2.99','2005-07-09 00:49:47','2006-02-15 22:20:49'),(13926,517,1,5206,'7.99','2005-07-09 11:11:01','2006-02-15 22:20:49'),(13927,517,2,5974,'5.99','2005-07-11 00:10:37','2006-02-15 22:20:50'),(13928,517,2,6594,'4.99','2005-07-12 07:25:43','2006-02-15 22:20:50'),(13929,517,2,6903,'0.99','2005-07-12 21:58:15','2006-02-15 22:20:50'),(13930,517,2,7988,'3.99','2005-07-28 14:37:18','2006-02-15 22:20:50'),(13931,517,1,10063,'4.99','2005-07-31 19:25:13','2006-02-15 22:20:50'),(13932,517,2,10358,'4.99','2005-08-01 05:50:07','2006-02-15 22:20:50'),(13933,517,2,10433,'4.99','2005-08-01 08:45:56','2006-02-15 22:20:50'),(13934,517,1,11684,'3.99','2005-08-17 06:27:15','2006-02-15 22:20:50'),(13935,517,2,12705,'0.99','2005-08-18 20:44:14','2006-02-15 22:20:50'),(13936,517,1,13396,'0.99','2005-08-19 22:06:09','2006-02-15 22:20:50'),(13937,517,2,14190,'4.99','2005-08-21 03:35:21','2006-02-15 22:20:50'),(13938,517,1,15559,'5.99','2005-08-23 04:55:05','2006-02-15 22:20:50'),(13939,518,1,710,'2.99','2005-05-29 03:48:36','2006-02-15 22:20:50'),(13940,518,2,1552,'5.99','2005-06-16 02:01:37','2006-02-15 22:20:50'),(13941,518,2,3311,'0.99','2005-06-21 08:05:27','2006-02-15 22:20:50'),(13942,518,1,3652,'0.99','2005-07-06 07:44:30','2006-02-15 22:20:51'),(13943,518,2,4029,'7.99','2005-07-07 02:19:44','2006-02-15 22:20:51'),(13944,518,2,4661,'4.99','2005-07-08 09:55:06','2006-02-15 22:20:51'),(13945,518,2,4948,'6.99','2005-07-08 22:54:21','2006-02-15 22:20:51'),(13946,518,1,6652,'2.99','2005-07-12 10:59:38','2006-02-15 22:20:51'),(13947,518,1,6957,'2.99','2005-07-27 00:00:00','2006-02-15 22:20:51'),(13948,518,2,7038,'3.99','2005-07-27 03:07:29','2006-02-15 22:20:51'),(13949,518,2,7154,'4.99','2005-07-27 07:16:17','2006-02-15 22:20:51'),(13950,518,2,7382,'2.99','2005-07-27 15:43:15','2006-02-15 22:20:51'),(13951,518,1,7657,'2.99','2005-07-28 02:09:00','2006-02-15 22:20:51'),(13952,518,2,7839,'6.99','2005-07-28 09:01:13','2006-02-15 22:20:51'),(13953,518,1,8107,'3.99','2005-07-28 19:03:16','2006-02-15 22:20:51'),(13954,518,1,8397,'2.99','2005-07-29 06:09:35','2006-02-15 22:20:51'),(13955,518,1,10751,'5.99','2005-08-01 20:06:10','2006-02-15 22:20:51'),(13956,518,2,11433,'3.99','2005-08-02 20:13:10','2006-02-15 22:20:51'),(13957,518,2,12450,'2.99','2005-08-18 11:04:04','2006-02-15 22:20:51'),(13958,518,2,12681,'2.99','2005-08-18 19:48:06','2006-02-15 22:20:52'),(13959,518,1,13065,'4.99','2005-08-19 09:48:52','2006-02-15 22:20:52'),(13960,518,1,13539,'6.99','2005-08-20 03:40:27','2006-02-15 22:20:52'),(13961,518,1,14088,'6.99','2005-08-20 23:57:24','2006-02-15 22:20:52'),(13962,518,1,14149,'4.99','2005-08-21 02:22:47','2006-02-15 22:20:52'),(13963,518,2,14980,'0.99','2005-08-22 07:16:45','2006-02-15 22:20:52'),(13964,518,2,15434,'4.99','2005-08-23 00:28:16','2006-02-15 22:20:52'),(13965,519,1,1056,'3.99','2005-05-31 07:48:07','2006-02-15 22:20:52'),(13966,519,1,1941,'2.99','2005-06-17 07:42:45','2006-02-15 22:20:52'),(13967,519,2,2505,'8.99','2005-06-18 23:28:27','2006-02-15 22:20:52'),(13968,519,2,2997,'5.99','2005-06-20 09:23:45','2006-02-15 22:20:52'),(13969,519,2,4564,'0.99','2005-07-08 05:09:38','2006-02-15 22:20:52'),(13970,519,2,4773,'2.99','2005-07-08 15:41:39','2006-02-15 22:20:52'),(13971,519,2,5236,'0.99','2005-07-09 12:56:29','2006-02-15 22:20:52'),(13972,519,2,5547,'5.99','2005-07-10 02:52:47','2006-02-15 22:20:52'),(13973,519,2,6063,'0.99','2005-07-11 04:16:51','2006-02-15 22:20:52'),(13974,519,1,6599,'3.99','2005-07-12 07:41:14','2006-02-15 22:20:53'),(13975,519,1,9417,'6.99','2005-07-30 20:54:55','2006-02-15 22:20:53'),(13976,519,2,9441,'4.99','2005-07-30 21:43:28','2006-02-15 22:20:53'),(13977,519,2,9534,'7.99','2005-07-31 01:18:27','2006-02-15 22:20:53'),(13978,519,2,9645,'0.99','2005-07-31 05:42:49','2006-02-15 22:20:53'),(13979,519,2,9886,'7.99','2005-07-31 14:00:13','2006-02-15 22:20:53'),(13980,519,1,9905,'0.99','2005-07-31 14:37:03','2006-02-15 22:20:53'),(13981,519,1,10097,'5.99','2005-07-31 20:39:38','2006-02-15 22:20:53'),(13982,519,2,10697,'4.99','2005-08-01 18:20:23','2006-02-15 22:20:53'),(13983,519,2,12648,'7.99','2005-08-18 18:30:21','2006-02-15 22:20:53'),(13984,519,2,12924,'2.99','2005-08-19 04:51:47','2006-02-15 22:20:53'),(13985,519,1,13647,'7.99','2005-08-20 07:48:07','2006-02-15 22:20:53'),(13986,519,1,14182,'2.99','2005-08-21 03:17:10','2006-02-15 22:20:53'),(13987,519,2,15347,'2.99','2005-08-22 21:12:19','2006-02-15 22:20:53'),(13988,520,1,962,'6.99','2005-05-30 18:45:17','2006-02-15 22:20:53'),(13989,520,1,1411,'0.99','2005-06-15 17:05:36','2006-02-15 22:20:54'),(13990,520,2,2174,'6.99','2005-06-18 00:09:01','2006-02-15 22:20:54'),(13991,520,1,2772,'4.99','2005-06-19 17:59:27','2006-02-15 22:20:54'),(13992,520,2,3482,'4.99','2005-07-05 23:13:22','2006-02-15 22:20:54'),(13993,520,1,3499,'7.99','2005-07-06 00:04:20','2006-02-15 22:20:54'),(13994,520,2,4346,'2.99','2005-07-07 18:58:45','2006-02-15 22:20:54'),(13995,520,2,5799,'4.99','2005-07-10 14:53:35','2006-02-15 22:20:54'),(13996,520,1,5802,'10.99','2005-07-10 15:02:17','2006-02-15 22:20:54'),(13997,520,1,5853,'3.99','2005-07-10 17:45:13','2006-02-15 22:20:54'),(13998,520,1,6029,'2.99','2005-07-11 02:36:46','2006-02-15 22:20:54'),(13999,520,2,7198,'5.99','2005-07-27 08:50:07','2006-02-15 22:20:54'),(14000,520,1,7720,'4.99','2005-07-28 04:41:44','2006-02-15 22:20:54'),(14001,520,1,7936,'0.99','2005-07-28 12:33:21','2006-02-15 22:20:54'),(14002,520,1,8294,'2.99','2005-07-29 02:32:41','2006-02-15 22:20:54'),(14003,520,2,8435,'2.99','2005-07-29 07:20:16','2006-02-15 22:20:54'),(14004,520,1,9803,'2.99','2005-07-31 11:06:02','2006-02-15 22:20:54'),(14005,520,1,10072,'0.99','2005-07-31 19:50:37','2006-02-15 22:20:55'),(14006,520,2,10530,'4.99','2005-08-01 12:01:17','2006-02-15 22:20:55'),(14007,520,1,11566,'0.99','2005-08-17 01:28:35','2006-02-15 22:20:55'),(14008,520,1,12517,'4.99','2005-08-18 13:40:20','2006-02-15 22:20:55'),(14009,520,1,12628,'5.99','2005-08-18 17:40:25','2006-02-15 22:20:55'),(14010,520,1,12647,'5.99','2005-08-18 18:29:51','2006-02-15 22:20:55'),(14011,520,1,13311,'0.99','2005-08-19 19:07:09','2006-02-15 22:20:55'),(14012,520,2,13438,'2.99','2005-08-19 23:38:02','2006-02-15 22:20:55'),(14013,520,2,13659,'2.99','2005-08-20 08:05:52','2006-02-15 22:20:55'),(14014,520,2,13746,'5.99','2005-08-20 10:55:28','2006-02-15 22:20:55'),(14015,520,1,14372,'4.99','2005-08-21 09:39:50','2006-02-15 22:20:55'),(14016,520,1,14509,'0.99','2005-08-21 14:39:58','2006-02-15 22:20:55'),(14017,520,1,15465,'0.99','2005-08-23 01:16:33','2006-02-15 22:20:55'),(14018,520,2,15492,'2.99','2005-08-23 02:13:46','2006-02-15 22:20:55'),(14019,520,1,15948,'7.99','2005-08-23 18:59:33','2006-02-15 22:20:55'),(14020,521,1,1761,'0.99','2005-06-16 17:49:57','2006-02-15 22:20:55'),(14021,521,2,2053,'0.99','2005-06-17 15:19:34','2006-02-15 22:20:56'),(14022,521,2,4284,'0.99','2005-07-07 15:31:57','2006-02-15 22:20:56'),(14023,521,2,4439,'2.99','2005-07-07 22:57:30','2006-02-15 22:20:56'),(14024,521,1,5276,'2.99','2005-07-09 14:35:13','2006-02-15 22:20:56'),(14025,521,2,5458,'4.99','2005-07-09 22:35:49','2006-02-15 22:20:56'),(14026,521,2,5580,'6.99','2005-07-10 04:05:49','2006-02-15 22:20:56'),(14027,521,2,5686,'0.99','2005-07-10 09:06:03','2006-02-15 22:20:56'),(14028,521,1,7478,'1.99','2005-07-27 19:16:02','2006-02-15 22:20:56'),(14029,521,1,9556,'7.99','2005-07-31 02:13:30','2006-02-15 22:20:56'),(14030,521,2,9937,'1.99','2005-07-31 15:28:10','2006-02-15 22:20:56'),(14031,521,1,10587,'2.99','2005-08-01 14:03:38','2006-02-15 22:20:56'),(14032,521,2,11625,'2.99','2005-08-17 04:18:52','2006-02-15 22:20:56'),(14033,521,1,11967,'3.99','2005-08-17 17:45:00','2006-02-15 22:20:56'),(14034,521,2,12082,'4.99','2005-08-17 22:13:15','2006-02-15 22:20:56'),(14035,521,1,12530,'4.99','2005-08-18 13:54:48','2006-02-15 22:20:56'),(14036,521,1,13527,'2.99','2005-08-20 03:00:47','2006-02-15 22:20:57'),(14037,521,1,14423,'0.99','2005-08-21 11:23:59','2006-02-15 22:20:57'),(14038,521,2,14551,'3.99','2005-08-21 15:57:25','2006-02-15 22:20:57'),(14039,521,2,14738,'5.99','2005-08-21 22:29:13','2006-02-15 22:20:57'),(14040,521,2,15170,'4.99','2005-08-22 15:22:15','2006-02-15 22:20:57'),(14041,521,2,15329,'2.99','2005-08-22 20:32:39','2006-02-15 22:20:57'),(14042,521,2,11672,'4.99','2006-02-14 15:16:03','2006-02-15 22:20:57'),(14043,522,2,426,'5.99','2005-05-27 15:56:57','2006-02-15 22:20:57'),(14044,522,1,1289,'3.99','2005-06-15 08:44:09','2006-02-15 22:20:57'),(14045,522,2,3102,'8.99','2005-06-20 16:55:55','2006-02-15 22:20:57'),(14046,522,1,3188,'2.99','2005-06-20 23:10:27','2006-02-15 22:20:57'),(14047,522,2,3191,'0.99','2005-06-20 23:46:39','2006-02-15 22:20:57'),(14048,522,1,3594,'0.99','2005-07-06 04:42:47','2006-02-15 22:20:57'),(14049,522,2,4078,'4.99','2005-07-07 05:05:05','2006-02-15 22:20:57'),(14050,522,2,4563,'9.99','2005-07-08 05:08:55','2006-02-15 22:20:57'),(14051,522,2,4701,'4.99','2005-07-08 11:38:48','2006-02-15 22:20:57'),(14052,522,2,5271,'6.99','2005-07-09 14:25:01','2006-02-15 22:20:58'),(14053,522,2,5514,'6.99','2005-07-10 01:09:42','2006-02-15 22:20:58'),(14054,522,2,5532,'4.99','2005-07-10 02:17:31','2006-02-15 22:20:58'),(14055,522,2,5936,'0.99','2005-07-10 22:14:30','2006-02-15 22:20:58'),(14056,522,2,7262,'4.99','2005-07-27 11:15:36','2006-02-15 22:20:58'),(14057,522,1,7955,'2.99','2005-07-28 13:31:36','2006-02-15 22:20:58'),(14058,522,2,8181,'4.99','2005-07-28 22:18:38','2006-02-15 22:20:58'),(14059,522,1,8642,'6.99','2005-07-29 14:38:17','2006-02-15 22:20:58'),(14060,522,1,8966,'2.99','2005-07-30 03:54:12','2006-02-15 22:20:58'),(14061,522,1,9047,'7.99','2005-07-30 06:56:33','2006-02-15 22:20:58'),(14062,522,2,9227,'7.99','2005-07-30 13:36:13','2006-02-15 22:20:58'),(14063,522,1,9335,'4.99','2005-07-30 18:00:53','2006-02-15 22:20:58'),(14064,522,1,9412,'5.99','2005-07-30 20:44:10','2006-02-15 22:20:58'),(14065,522,2,9533,'5.99','2005-07-31 01:18:10','2006-02-15 22:20:58'),(14066,522,2,10223,'0.99','2005-08-01 01:23:15','2006-02-15 22:20:58'),(14067,522,1,10411,'3.99','2005-08-01 07:56:32','2006-02-15 22:20:59'),(14068,522,1,10675,'7.99','2005-08-01 17:11:57','2006-02-15 22:20:59'),(14069,522,2,10821,'5.99','2005-08-01 22:54:27','2006-02-15 22:20:59'),(14070,522,2,11696,'2.99','2005-08-17 07:01:09','2006-02-15 22:20:59'),(14071,522,2,11830,'1.99','2005-08-17 12:53:15','2006-02-15 22:20:59'),(14072,522,2,12494,'6.99','2005-08-18 12:53:49','2006-02-15 22:20:59'),(14073,522,2,13605,'6.99','2005-08-20 06:06:17','2006-02-15 22:20:59'),(14074,522,2,14467,'2.99','2005-08-21 13:03:33','2006-02-15 22:20:59'),(14075,522,1,15921,'6.99','2005-08-23 18:06:54','2006-02-15 22:20:59'),(14076,523,1,42,'4.99','2005-05-25 05:24:58','2006-02-15 22:20:59'),(14077,523,2,664,'0.99','2005-05-28 21:31:08','2006-02-15 22:20:59'),(14078,523,2,1729,'6.99','2005-06-16 15:29:47','2006-02-15 22:20:59'),(14079,523,1,2447,'8.99','2005-06-18 19:10:55','2006-02-15 22:20:59'),(14080,523,1,2583,'7.99','2005-06-19 05:01:40','2006-02-15 22:20:59'),(14081,523,2,2669,'0.99','2005-06-19 11:28:52','2006-02-15 22:20:59'),(14082,523,1,4605,'4.99','2005-07-08 07:00:14','2006-02-15 22:20:59'),(14083,523,2,5155,'2.99','2005-07-09 08:46:54','2006-02-15 22:21:00'),(14084,523,1,5287,'6.99','2005-07-09 15:11:54','2006-02-15 22:21:00'),(14085,523,2,5932,'2.99','2005-07-10 22:05:15','2006-02-15 22:21:00'),(14086,523,2,6675,'4.99','2005-07-12 11:53:06','2006-02-15 22:21:00'),(14087,523,2,7642,'1.99','2005-07-28 01:16:51','2006-02-15 22:21:00'),(14088,523,2,8141,'0.99','2005-07-28 20:21:19','2006-02-15 22:21:00'),(14089,523,1,8372,'5.99','2005-07-29 05:18:08','2006-02-15 22:21:00'),(14090,523,1,9071,'2.99','2005-07-30 07:40:58','2006-02-15 22:21:00'),(14091,523,2,9667,'6.99','2005-07-31 06:23:52','2006-02-15 22:21:00'),(14092,523,2,10470,'1.99','2005-08-01 09:52:26','2006-02-15 22:21:00'),(14093,523,1,11827,'4.99','2005-08-17 12:44:27','2006-02-15 22:21:00'),(14094,523,1,12288,'2.99','2005-08-18 05:01:20','2006-02-15 22:21:00'),(14095,523,1,13133,'2.99','2005-08-19 12:11:03','2006-02-15 22:21:00'),(14096,523,1,14766,'4.99','2005-08-21 23:42:20','2006-02-15 22:21:00'),(14097,523,1,15040,'2.99','2005-08-22 09:41:09','2006-02-15 22:21:00'),(14098,524,2,118,'0.99','2005-05-25 19:31:18','2006-02-15 22:21:00'),(14099,524,1,982,'4.99','2005-05-30 22:15:24','2006-02-15 22:21:01'),(14100,524,1,1306,'1.99','2005-06-15 09:59:24','2006-02-15 22:21:01'),(14101,524,2,1651,'4.99','2005-06-16 09:24:38','2006-02-15 22:21:01'),(14102,524,2,3454,'2.99','2005-06-21 21:12:13','2006-02-15 22:21:01'),(14103,524,1,4366,'5.99','2005-07-07 19:48:36','2006-02-15 22:21:01'),(14104,524,2,5037,'4.99','2005-07-09 02:59:10','2006-02-15 22:21:01'),(14105,524,2,6161,'4.99','2005-07-11 10:11:54','2006-02-15 22:21:01'),(14106,524,1,6240,'6.99','2005-07-11 14:32:41','2006-02-15 22:21:01'),(14107,524,2,6745,'4.99','2005-07-12 14:30:51','2006-02-15 22:21:01'),(14108,524,2,7014,'8.99','2005-07-27 02:14:40','2006-02-15 22:21:01'),(14109,524,1,7040,'4.99','2005-07-27 03:17:19','2006-02-15 22:21:01'),(14110,524,1,8507,'6.99','2005-07-29 09:29:44','2006-02-15 22:21:01'),(14111,524,2,13626,'2.99','2005-08-20 06:55:24','2006-02-15 22:21:01'),(14112,524,2,14046,'4.99','2005-08-20 21:53:21','2006-02-15 22:21:01'),(14113,524,1,14178,'2.99','2005-08-21 03:13:45','2006-02-15 22:21:01'),(14114,524,1,14366,'2.99','2005-08-21 09:31:39','2006-02-15 22:21:02'),(14115,524,2,14680,'1.99','2005-08-21 20:19:52','2006-02-15 22:21:02'),(14116,524,2,15206,'6.99','2005-08-22 16:33:39','2006-02-15 22:21:02'),(14117,525,1,437,'5.99','2005-05-27 17:47:22','2006-02-15 22:21:02'),(14118,525,2,1772,'2.99','2005-06-16 18:12:54','2006-02-15 22:21:02'),(14119,525,1,3993,'6.99','2005-07-06 23:37:06','2006-02-15 22:21:02'),(14120,525,1,5841,'2.99','2005-07-10 17:11:31','2006-02-15 22:21:02'),(14121,525,2,6098,'7.99','2005-07-11 06:23:28','2006-02-15 22:21:02'),(14122,525,2,6388,'6.99','2005-07-11 22:17:16','2006-02-15 22:21:02'),(14123,525,1,6689,'1.99','2005-07-12 12:22:13','2006-02-15 22:21:02'),(14124,525,2,7337,'4.99','2005-07-27 14:12:04','2006-02-15 22:21:02'),(14125,525,2,7591,'4.99','2005-07-27 23:25:54','2006-02-15 22:21:02'),(14126,525,1,8007,'0.99','2005-07-28 15:22:27','2006-02-15 22:21:02'),(14127,525,1,8960,'4.99','2005-07-30 03:36:31','2006-02-15 22:21:02'),(14128,525,2,9507,'5.99','2005-07-31 00:22:29','2006-02-15 22:21:02'),(14129,525,1,9702,'0.99','2005-07-31 07:34:07','2006-02-15 22:21:02'),(14130,525,1,10496,'2.99','2005-08-01 10:53:16','2006-02-15 22:21:03'),(14131,525,2,11406,'2.99','2005-08-02 19:16:10','2006-02-15 22:21:03'),(14132,525,1,11660,'1.99','2005-08-17 05:22:42','2006-02-15 22:21:03'),(14133,525,1,15159,'0.99','2005-08-22 14:32:25','2006-02-15 22:21:03'),(14134,525,2,15623,'3.99','2005-08-23 07:23:29','2006-02-15 22:21:03'),(14135,525,1,14954,'2.99','2006-02-14 15:16:03','2006-02-15 22:21:03'),(14136,526,1,495,'4.99','2005-05-28 00:40:48','2006-02-15 22:21:03'),(14137,526,2,679,'4.99','2005-05-28 23:24:57','2006-02-15 22:21:03'),(14138,526,2,1015,'2.99','2005-05-31 02:44:57','2006-02-15 22:21:03'),(14139,526,1,1255,'4.99','2005-06-15 06:13:45','2006-02-15 22:21:03'),(14140,526,2,1848,'0.99','2005-06-17 00:07:07','2006-02-15 22:21:03'),(14141,526,2,1865,'7.99','2005-06-17 01:49:36','2006-02-15 22:21:03'),(14142,526,2,1972,'2.99','2005-06-17 09:25:49','2006-02-15 22:21:03'),(14143,526,1,1981,'2.99','2005-06-17 10:03:34','2006-02-15 22:21:03'),(14144,526,2,2398,'4.99','2005-06-18 15:56:53','2006-02-15 22:21:03'),(14145,526,1,2828,'2.99','2005-06-19 20:51:33','2006-02-15 22:21:04'),(14146,526,2,2932,'6.99','2005-06-20 04:51:19','2006-02-15 22:21:04'),(14147,526,1,3339,'6.99','2005-06-21 10:37:11','2006-02-15 22:21:04'),(14148,526,1,3619,'1.99','2005-07-06 05:59:44','2006-02-15 22:21:04'),(14149,526,2,3905,'5.99','2005-07-06 19:33:34','2006-02-15 22:21:04'),(14150,526,1,4423,'6.99','2005-07-07 22:11:28','2006-02-15 22:21:04'),(14151,526,2,5056,'2.99','2005-07-09 04:13:45','2006-02-15 22:21:04'),(14152,526,2,5121,'3.99','2005-07-09 07:18:31','2006-02-15 22:21:04'),(14153,526,1,6316,'7.99','2005-07-11 18:44:52','2006-02-15 22:21:04'),(14154,526,1,6404,'4.99','2005-07-11 22:49:50','2006-02-15 22:21:04'),(14155,526,2,6650,'2.99','2005-07-12 10:57:10','2006-02-15 22:21:04'),(14156,526,1,6671,'3.99','2005-07-12 11:48:48','2006-02-15 22:21:04'),(14157,526,2,7270,'7.99','2005-07-27 11:29:02','2006-02-15 22:21:04'),(14158,526,2,7343,'0.99','2005-07-27 14:27:13','2006-02-15 22:21:04'),(14159,526,2,7399,'1.99','2005-07-27 16:16:02','2006-02-15 22:21:04'),(14160,526,2,7543,'5.99','2005-07-27 21:44:28','2006-02-15 22:21:04'),(14161,526,2,7883,'2.99','2005-07-28 10:37:20','2006-02-15 22:21:05'),(14162,526,1,8053,'4.99','2005-07-28 16:59:41','2006-02-15 22:21:05'),(14163,526,1,8232,'4.99','2005-07-29 00:14:37','2006-02-15 22:21:05'),(14164,526,1,8441,'2.99','2005-07-29 07:33:05','2006-02-15 22:21:05'),(14165,526,2,9577,'6.99','2005-07-31 02:53:33','2006-02-15 22:21:05'),(14166,526,2,10020,'4.99','2005-07-31 18:21:08','2006-02-15 22:21:05'),(14167,526,2,10199,'2.99','2005-08-01 00:38:55','2006-02-15 22:21:05'),(14168,526,2,11046,'4.99','2005-08-02 06:08:34','2006-02-15 22:21:05'),(14169,526,1,11503,'10.99','2005-08-16 23:10:34','2006-02-15 22:21:05'),(14170,526,1,11612,'2.99','2005-08-17 03:48:51','2006-02-15 22:21:05'),(14171,526,2,11702,'4.99','2005-08-17 07:18:56','2006-02-15 22:21:05'),(14172,526,1,12607,'0.99','2005-08-18 17:03:49','2006-02-15 22:21:05'),(14173,526,2,13224,'8.99','2005-08-19 15:52:13','2006-02-15 22:21:05'),(14174,526,2,13580,'0.99','2005-08-20 05:23:34','2006-02-15 22:21:05'),(14175,526,1,13617,'8.99','2005-08-20 06:35:30','2006-02-15 22:21:05'),(14176,526,2,14487,'6.99','2005-08-21 13:53:33','2006-02-15 22:21:06'),(14177,526,1,14590,'7.99','2005-08-21 17:29:10','2006-02-15 22:21:06'),(14178,526,1,15168,'2.99','2005-08-22 15:14:20','2006-02-15 22:21:06'),(14179,526,1,15395,'4.99','2005-08-22 23:06:25','2006-02-15 22:21:06'),(14180,526,1,16043,'9.99','2005-08-23 22:21:03','2006-02-15 22:21:06'),(14181,527,1,1398,'2.99','2005-06-15 16:28:42','2006-02-15 22:21:06'),(14182,527,1,2422,'0.99','2005-06-18 17:28:57','2006-02-15 22:21:06'),(14183,527,2,2496,'0.99','2005-06-18 22:20:11','2006-02-15 22:21:06'),(14184,527,1,2539,'2.99','2005-06-19 01:58:39','2006-02-15 22:21:06'),(14185,527,1,4888,'0.99','2005-07-08 20:04:27','2006-02-15 22:21:06'),(14186,527,1,5365,'0.99','2005-07-09 18:27:00','2006-02-15 22:21:06'),(14187,527,2,6003,'3.99','2005-07-11 01:28:33','2006-02-15 22:21:06'),(14188,527,2,6011,'4.99','2005-07-11 01:54:48','2006-02-15 22:21:06'),(14189,527,1,6050,'2.99','2005-07-11 03:34:29','2006-02-15 22:21:06'),(14190,527,2,6975,'1.99','2005-07-27 00:39:54','2006-02-15 22:21:06'),(14191,527,1,7506,'8.99','2005-07-27 20:28:34','2006-02-15 22:21:06'),(14192,527,1,8854,'0.99','2005-07-29 23:40:07','2006-02-15 22:21:07'),(14193,527,2,9750,'0.99','2005-07-31 09:19:46','2006-02-15 22:21:07'),(14194,527,2,10486,'3.99','2005-08-01 10:23:43','2006-02-15 22:21:07'),(14195,527,2,10613,'0.99','2005-08-01 14:56:14','2006-02-15 22:21:07'),(14196,527,1,11013,'5.99','2005-08-02 05:10:54','2006-02-15 22:21:07'),(14197,527,1,11150,'2.99','2005-08-02 09:51:46','2006-02-15 22:21:07'),(14198,527,1,11624,'0.99','2005-08-17 04:17:42','2006-02-15 22:21:07'),(14199,527,1,12136,'7.99','2005-08-17 23:51:30','2006-02-15 22:21:07'),(14200,527,1,12513,'6.99','2005-08-18 13:31:45','2006-02-15 22:21:07'),(14201,527,1,14352,'6.99','2005-08-21 09:06:29','2006-02-15 22:21:07'),(14202,527,1,15144,'2.99','2005-08-22 13:49:18','2006-02-15 22:21:07'),(14203,527,1,15552,'3.99','2005-08-23 04:33:23','2006-02-15 22:21:07'),(14204,527,1,14267,'2.99','2006-02-14 15:16:03','2006-02-15 22:21:07'),(14205,528,1,204,'0.99','2005-05-26 07:30:37','2006-02-15 22:21:07'),(14206,528,2,472,'0.99','2005-05-27 21:36:15','2006-02-15 22:21:07'),(14207,528,1,533,'5.99','2005-05-28 06:14:46','2006-02-15 22:21:08'),(14208,528,2,695,'3.99','2005-05-29 01:50:53','2006-02-15 22:21:08'),(14209,528,2,793,'5.99','2005-05-29 16:44:08','2006-02-15 22:21:08'),(14210,528,2,1875,'2.99','2005-06-17 02:45:10','2006-02-15 22:21:08'),(14211,528,1,2019,'4.99','2005-06-17 12:38:44','2006-02-15 22:21:08'),(14212,528,2,3654,'4.99','2005-07-06 07:45:31','2006-02-15 22:21:08'),(14213,528,1,3664,'0.99','2005-07-06 08:15:57','2006-02-15 22:21:08'),(14214,528,2,4050,'9.99','2005-07-07 03:35:33','2006-02-15 22:21:08'),(14215,528,1,4593,'5.99','2005-07-08 06:38:12','2006-02-15 22:21:08'),(14216,528,2,5215,'3.99','2005-07-09 11:47:58','2006-02-15 22:21:08'),(14217,528,2,6561,'0.99','2005-07-12 05:24:02','2006-02-15 22:21:08'),(14218,528,1,7569,'7.99','2005-07-27 22:38:53','2006-02-15 22:21:08'),(14219,528,2,8112,'4.99','2005-07-28 19:11:07','2006-02-15 22:21:08'),(14220,528,1,8727,'3.99','2005-07-29 18:09:57','2006-02-15 22:21:08'),(14221,528,2,9488,'8.99','2005-07-30 23:42:42','2006-02-15 22:21:08'),(14222,528,1,10084,'3.99','2005-07-31 20:11:29','2006-02-15 22:21:08'),(14223,528,1,10673,'0.99','2005-08-01 17:11:51','2006-02-15 22:21:09'),(14224,528,1,10880,'2.99','2005-08-02 00:34:12','2006-02-15 22:21:09'),(14225,528,1,12818,'3.99','2005-08-19 01:04:59','2006-02-15 22:21:09'),(14226,528,2,13518,'2.99','2005-08-20 02:36:17','2006-02-15 22:21:09'),(14227,528,1,13600,'7.99','2005-08-20 06:00:25','2006-02-15 22:21:09'),(14228,528,2,14148,'2.99','2005-08-21 02:17:49','2006-02-15 22:21:09'),(14229,528,2,15880,'6.99','2005-08-23 16:43:54','2006-02-15 22:21:09'),(14230,529,1,453,'2.99','2005-05-27 19:31:16','2006-02-15 22:21:09'),(14231,529,1,1234,'1.99','2005-06-15 04:21:52','2006-02-15 22:21:09'),(14232,529,2,1686,'0.99','2005-06-16 12:08:20','2006-02-15 22:21:09'),(14233,529,2,3354,'0.99','2005-06-21 11:29:49','2006-02-15 22:21:09'),(14234,529,2,4045,'0.99','2005-07-07 03:26:14','2006-02-15 22:21:09'),(14235,529,2,4254,'0.99','2005-07-07 14:13:52','2006-02-15 22:21:09'),(14236,529,2,4444,'5.99','2005-07-07 23:07:44','2006-02-15 22:21:09'),(14237,529,1,4553,'0.99','2005-07-08 04:43:41','2006-02-15 22:21:09'),(14238,529,1,5993,'4.99','2005-07-11 01:06:41','2006-02-15 22:21:10'),(14239,529,2,6538,'6.99','2005-07-12 04:50:26','2006-02-15 22:21:10'),(14240,529,2,6541,'5.99','2005-07-12 04:53:41','2006-02-15 22:21:10'),(14241,529,1,6908,'7.99','2005-07-12 22:08:46','2006-02-15 22:21:10'),(14242,529,1,7128,'3.99','2005-07-27 06:14:36','2006-02-15 22:21:10'),(14243,529,2,8708,'2.99','2005-07-29 17:24:13','2006-02-15 22:21:10'),(14244,529,1,8979,'5.99','2005-07-30 04:20:25','2006-02-15 22:21:10'),(14245,529,2,9310,'4.99','2005-07-30 16:57:09','2006-02-15 22:21:10'),(14246,529,2,9375,'0.99','2005-07-30 19:10:17','2006-02-15 22:21:10'),(14247,529,2,10361,'10.99','2005-08-01 05:53:49','2006-02-15 22:21:10'),(14248,529,1,11862,'2.99','2005-08-17 13:54:53','2006-02-15 22:21:10'),(14249,529,2,12356,'2.99','2005-08-18 07:37:05','2006-02-15 22:21:10'),(14250,529,1,12622,'3.99','2005-08-18 17:34:11','2006-02-15 22:21:10'),(14251,529,1,13011,'4.99','2005-08-19 07:53:58','2006-02-15 22:21:10'),(14252,529,2,13132,'3.99','2005-08-19 12:10:57','2006-02-15 22:21:10'),(14253,529,1,13797,'2.99','2005-08-20 12:33:36','2006-02-15 22:21:11'),(14254,529,2,13946,'9.99','2005-08-20 17:44:32','2006-02-15 22:21:11'),(14255,529,2,14449,'4.99','2005-08-21 12:13:18','2006-02-15 22:21:11'),(14256,529,2,14764,'0.99','2005-08-21 23:37:47','2006-02-15 22:21:11'),(14257,529,1,14970,'5.99','2005-08-22 06:49:29','2006-02-15 22:21:11'),(14258,529,2,15305,'2.99','2005-08-22 19:46:05','2006-02-15 22:21:11'),(14259,530,1,851,'0.99','2005-05-30 01:35:15','2006-02-15 22:21:11'),(14260,530,2,1273,'1.99','2005-06-15 07:52:35','2006-02-15 22:21:11'),(14261,530,1,1516,'0.99','2005-06-15 23:11:10','2006-02-15 22:21:11'),(14262,530,1,2158,'2.99','2005-06-17 23:36:27','2006-02-15 22:21:11'),(14263,530,2,3669,'2.99','2005-07-06 08:38:29','2006-02-15 22:21:11'),(14264,530,2,3887,'4.99','2005-07-06 18:46:34','2006-02-15 22:21:11'),(14265,530,2,5663,'0.99','2005-07-10 08:01:33','2006-02-15 22:21:11'),(14266,530,1,7031,'3.99','2005-07-27 03:02:07','2006-02-15 22:21:11'),(14267,530,2,7075,'1.99','2005-07-27 04:11:40','2006-02-15 22:21:11'),(14268,530,1,7218,'4.99','2005-07-27 09:34:24','2006-02-15 22:21:11'),(14269,530,2,8208,'4.99','2005-07-28 23:26:35','2006-02-15 22:21:12'),(14270,530,1,8736,'0.99','2005-07-29 18:31:15','2006-02-15 22:21:12'),(14271,530,1,9914,'4.99','2005-07-31 14:51:19','2006-02-15 22:21:12'),(14272,530,2,10211,'3.99','2005-08-01 01:01:16','2006-02-15 22:21:12'),(14273,530,2,10504,'4.99','2005-08-01 11:10:55','2006-02-15 22:21:12'),(14274,530,1,11326,'0.99','2005-08-02 16:34:29','2006-02-15 22:21:12'),(14275,530,1,12220,'4.99','2005-08-18 02:50:02','2006-02-15 22:21:12'),(14276,530,1,12387,'2.99','2005-08-18 08:46:24','2006-02-15 22:21:12'),(14277,530,1,12649,'4.99','2005-08-18 18:31:47','2006-02-15 22:21:12'),(14278,530,1,13998,'5.99','2005-08-20 19:52:38','2006-02-15 22:21:12'),(14279,530,2,14707,'5.99','2005-08-21 21:06:29','2006-02-15 22:21:12'),(14280,530,2,15066,'0.99','2005-08-22 10:49:06','2006-02-15 22:21:12'),(14281,530,1,13561,'2.99','2006-02-14 15:16:03','2006-02-15 22:21:12'),(14282,531,1,233,'4.99','2005-05-26 11:43:44','2006-02-15 22:21:12'),(14283,531,1,681,'2.99','2005-05-28 23:39:44','2006-02-15 22:21:12'),(14284,531,2,2972,'2.99','2005-06-20 07:57:54','2006-02-15 22:21:13'),(14285,531,2,3921,'5.99','2005-07-06 20:29:48','2006-02-15 22:21:13'),(14286,531,1,5587,'5.99','2005-07-10 04:17:25','2006-02-15 22:21:13'),(14287,531,2,5850,'0.99','2005-07-10 17:36:27','2006-02-15 22:21:13'),(14288,531,2,5904,'4.99','2005-07-10 20:39:44','2006-02-15 22:21:13'),(14289,531,1,6756,'4.99','2005-07-12 15:08:28','2006-02-15 22:21:13'),(14290,531,1,6876,'4.99','2005-07-12 20:32:50','2006-02-15 22:21:13'),(14291,531,2,7204,'2.99','2005-07-27 09:02:31','2006-02-15 22:21:13'),(14292,531,1,7391,'6.99','2005-07-27 16:00:00','2006-02-15 22:21:13'),(14293,531,2,7444,'2.99','2005-07-27 17:49:16','2006-02-15 22:21:13'),(14294,531,2,7753,'6.99','2005-07-28 06:09:19','2006-02-15 22:21:13'),(14295,531,2,8359,'5.99','2005-07-29 05:02:12','2006-02-15 22:21:13'),(14296,531,2,8860,'4.99','2005-07-29 23:45:57','2006-02-15 22:21:13'),(14297,531,2,8943,'0.99','2005-07-30 03:06:48','2006-02-15 22:21:13'),(14298,531,2,9107,'4.99','2005-07-30 08:52:45','2006-02-15 22:21:13'),(14299,531,2,10920,'4.99','2005-08-02 02:14:10','2006-02-15 22:21:14'),(14300,531,1,10941,'5.99','2005-08-02 03:11:33','2006-02-15 22:21:14'),(14301,531,2,11026,'4.99','2005-08-02 05:46:05','2006-02-15 22:21:14'),(14302,531,1,11265,'10.99','2005-08-02 14:05:42','2006-02-15 22:21:14'),(14303,531,1,11666,'2.99','2005-08-17 05:45:10','2006-02-15 22:21:14'),(14304,531,1,12923,'2.99','2005-08-19 04:50:20','2006-02-15 22:21:14'),(14305,531,2,13300,'8.99','2005-08-19 18:46:56','2006-02-15 22:21:14'),(14306,531,2,15360,'0.99','2005-08-22 21:36:51','2006-02-15 22:21:14'),(14307,532,1,43,'2.99','2005-05-25 05:39:25','2006-02-15 22:21:14'),(14308,532,1,1694,'4.99','2005-06-16 12:40:23','2006-02-15 22:21:14'),(14309,532,2,2821,'3.99','2005-06-19 20:26:52','2006-02-15 22:21:14'),(14310,532,1,4336,'2.99','2005-07-07 18:34:36','2006-02-15 22:21:14'),(14311,532,2,4962,'4.99','2005-07-08 23:36:13','2006-02-15 22:21:14'),(14312,532,2,5190,'2.99','2005-07-09 10:25:24','2006-02-15 22:21:14'),(14313,532,1,5253,'7.99','2005-07-09 13:41:17','2006-02-15 22:21:14'),(14314,532,2,5278,'4.99','2005-07-09 14:44:23','2006-02-15 22:21:14'),(14315,532,2,5805,'8.99','2005-07-10 15:08:41','2006-02-15 22:21:15'),(14316,532,1,5887,'2.99','2005-07-10 19:45:47','2006-02-15 22:21:15'),(14317,532,2,6345,'7.99','2005-07-11 20:05:18','2006-02-15 22:21:15'),(14318,532,2,6598,'4.99','2005-07-12 07:38:25','2006-02-15 22:21:15'),(14319,532,1,6730,'3.99','2005-07-12 13:58:25','2006-02-15 22:21:15'),(14320,532,1,7192,'4.99','2005-07-27 08:36:55','2006-02-15 22:21:15'),(14321,532,2,7572,'2.99','2005-07-27 22:44:29','2006-02-15 22:21:15'),(14322,532,1,8273,'5.99','2005-07-29 01:33:16','2006-02-15 22:21:15'),(14323,532,1,9843,'2.99','2005-07-31 12:25:28','2006-02-15 22:21:15'),(14324,532,2,10286,'6.99','2005-08-01 03:35:58','2006-02-15 22:21:15'),(14325,532,2,10712,'5.99','2005-08-01 18:47:56','2006-02-15 22:21:15'),(14326,532,1,10945,'5.99','2005-08-02 03:20:23','2006-02-15 22:21:15'),(14327,532,2,11251,'2.99','2005-08-02 13:40:49','2006-02-15 22:21:15'),(14328,532,2,11318,'4.99','2005-08-02 16:09:11','2006-02-15 22:21:15'),(14329,532,2,12061,'3.99','2005-08-17 21:13:35','2006-02-15 22:21:15'),(14330,532,2,12295,'5.99','2005-08-18 05:15:46','2006-02-15 22:21:16'),(14331,532,2,13038,'4.99','2005-08-19 08:55:16','2006-02-15 22:21:16'),(14332,532,1,13192,'8.99','2005-08-19 14:30:06','2006-02-15 22:21:16'),(14333,532,1,13254,'4.99','2005-08-19 16:54:01','2006-02-15 22:21:16'),(14334,532,1,13908,'4.99','2005-08-20 16:21:40','2006-02-15 22:21:16'),(14335,532,2,15180,'0.99','2005-08-22 15:42:57','2006-02-15 22:21:16'),(14336,532,2,15414,'1.99','2005-08-22 23:43:54','2006-02-15 22:21:16'),(14337,532,1,16014,'5.99','2005-08-23 21:18:31','2006-02-15 22:21:16'),(14338,532,1,14616,'0.99','2006-02-14 15:16:03','2006-02-15 22:21:16'),(14339,533,1,173,'0.99','2005-05-26 03:42:10','2006-02-15 22:21:16'),(14340,533,2,190,'1.99','2005-05-26 06:11:28','2006-02-15 22:21:16'),(14341,533,1,615,'5.99','2005-05-28 15:35:52','2006-02-15 22:21:16'),(14342,533,1,1421,'5.99','2005-06-15 17:57:04','2006-02-15 22:21:16'),(14343,533,1,1652,'0.99','2005-06-16 09:31:37','2006-02-15 22:21:16'),(14344,533,1,1859,'0.99','2005-06-17 01:13:38','2006-02-15 22:21:16'),(14345,533,1,1954,'2.99','2005-06-17 08:37:55','2006-02-15 22:21:17'),(14346,533,2,2770,'6.99','2005-06-19 17:54:22','2006-02-15 22:21:17'),(14347,533,1,2956,'0.99','2005-06-20 06:47:23','2006-02-15 22:21:17'),(14348,533,1,4112,'8.99','2005-07-07 06:49:09','2006-02-15 22:21:17'),(14349,533,1,4788,'4.99','2005-07-08 16:17:35','2006-02-15 22:21:17'),(14350,533,2,6781,'2.99','2005-07-12 16:21:47','2006-02-15 22:21:17'),(14351,533,2,6834,'0.99','2005-07-12 18:53:37','2006-02-15 22:21:17'),(14352,533,2,6837,'9.99','2005-07-12 18:59:45','2006-02-15 22:21:17'),(14353,533,2,7555,'4.99','2005-07-27 22:17:05','2006-02-15 22:21:17'),(14354,533,1,8093,'8.99','2005-07-28 18:29:16','2006-02-15 22:21:17'),(14355,533,2,8104,'2.99','2005-07-28 18:59:36','2006-02-15 22:21:17'),(14356,533,2,8250,'2.99','2005-07-29 00:49:15','2006-02-15 22:21:17'),(14357,533,1,8471,'2.99','2005-07-29 08:32:11','2006-02-15 22:21:17'),(14358,533,1,8676,'1.99','2005-07-29 15:59:06','2006-02-15 22:21:17'),(14359,533,2,8786,'1.99','2005-07-29 20:39:49','2006-02-15 22:21:17'),(14360,533,2,10090,'3.99','2005-07-31 20:22:01','2006-02-15 22:21:17'),(14361,533,1,10380,'2.99','2005-08-01 06:34:36','2006-02-15 22:21:18'),(14362,533,1,10614,'6.99','2005-08-01 14:57:00','2006-02-15 22:21:18'),(14363,533,2,11524,'7.99','2005-08-17 00:10:55','2006-02-15 22:21:18'),(14364,533,1,11758,'8.99','2005-08-17 09:33:02','2006-02-15 22:21:18'),(14365,533,1,11918,'2.99','2005-08-17 16:08:42','2006-02-15 22:21:18'),(14366,533,1,12602,'0.99','2005-08-18 16:49:50','2006-02-15 22:21:18'),(14367,533,1,12655,'6.99','2005-08-18 18:57:44','2006-02-15 22:21:18'),(14368,533,1,14263,'7.99','2005-08-21 06:08:15','2006-02-15 22:21:18'),(14369,533,1,14800,'4.99','2005-08-22 00:46:18','2006-02-15 22:21:18'),(14370,533,2,16006,'0.99','2005-08-23 21:01:09','2006-02-15 22:21:18'),(14371,533,2,14018,'2.99','2006-02-14 15:16:03','2006-02-15 22:21:18'),(14372,534,2,304,'5.99','2005-05-26 21:21:28','2006-02-15 22:21:18'),(14373,534,2,940,'0.99','2005-05-30 15:01:02','2006-02-15 22:21:18'),(14374,534,1,1610,'4.99','2005-06-16 06:36:33','2006-02-15 22:21:18'),(14375,534,1,1673,'2.99','2005-06-16 10:40:17','2006-02-15 22:21:18'),(14376,534,1,2436,'0.99','2005-06-18 18:13:32','2006-02-15 22:21:19'),(14377,534,2,3213,'1.99','2005-06-21 01:05:19','2006-02-15 22:21:19'),(14378,534,1,3216,'4.99','2005-06-21 01:19:37','2006-02-15 22:21:19'),(14379,534,1,3735,'2.99','2005-07-06 11:42:04','2006-02-15 22:21:19'),(14380,534,2,4998,'4.99','2005-07-09 01:07:21','2006-02-15 22:21:19'),(14381,534,2,7113,'2.99','2005-07-27 05:41:20','2006-02-15 22:21:19'),(14382,534,1,7662,'2.99','2005-07-28 02:16:08','2006-02-15 22:21:19'),(14383,534,2,8633,'0.99','2005-07-29 14:19:53','2006-02-15 22:21:19'),(14384,534,1,9456,'5.99','2005-07-30 22:22:16','2006-02-15 22:21:19'),(14385,534,2,9464,'4.99','2005-07-30 22:31:31','2006-02-15 22:21:19'),(14386,534,2,10465,'5.99','2005-08-01 09:45:25','2006-02-15 22:21:19'),(14387,534,2,10725,'6.99','2005-08-01 19:11:04','2006-02-15 22:21:19'),(14388,534,1,10796,'0.99','2005-08-01 21:56:41','2006-02-15 22:21:19'),(14389,534,2,11180,'5.99','2005-08-02 10:54:30','2006-02-15 22:21:19'),(14390,534,2,12305,'2.99','2005-08-18 05:46:29','2006-02-15 22:21:19'),(14391,534,1,12691,'5.99','2005-08-18 20:07:46','2006-02-15 22:21:20'),(14392,534,2,12798,'4.99','2005-08-19 00:24:33','2006-02-15 22:21:20'),(14393,534,2,13294,'0.99','2005-08-19 18:36:35','2006-02-15 22:21:20'),(14394,534,2,14816,'1.99','2005-08-22 01:15:51','2006-02-15 22:21:20'),(14395,534,1,14526,'2.99','2006-02-14 15:16:03','2006-02-15 22:21:20'),(14396,535,1,37,'0.99','2005-05-25 04:44:31','2006-02-15 22:21:20'),(14397,535,2,541,'2.99','2005-05-28 06:41:58','2006-02-15 22:21:20'),(14398,535,1,778,'3.99','2005-05-29 14:09:53','2006-02-15 22:21:20'),(14399,535,2,959,'4.99','2005-05-30 18:07:00','2006-02-15 22:21:20'),(14400,535,1,1712,'4.99','2005-06-16 14:25:09','2006-02-15 22:21:20'),(14401,535,1,3228,'4.99','2005-06-21 02:20:24','2006-02-15 22:21:20'),(14402,535,1,4331,'4.99','2005-07-07 18:22:30','2006-02-15 22:21:20'),(14403,535,1,4718,'6.99','2005-07-08 12:32:08','2006-02-15 22:21:20'),(14404,535,1,4743,'2.99','2005-07-08 13:42:36','2006-02-15 22:21:20'),(14405,535,2,4914,'6.99','2005-07-08 21:30:53','2006-02-15 22:21:20'),(14406,535,1,5588,'0.99','2005-07-10 04:21:10','2006-02-15 22:21:21'),(14407,535,2,5890,'8.99','2005-07-10 20:00:25','2006-02-15 22:21:21'),(14408,535,1,6504,'2.99','2005-07-12 03:19:14','2006-02-15 22:21:21'),(14409,535,1,8395,'2.99','2005-07-29 06:03:30','2006-02-15 22:21:21'),(14410,535,1,8645,'4.99','2005-07-29 14:47:45','2006-02-15 22:21:21'),(14411,535,2,9440,'0.99','2005-07-30 21:40:15','2006-02-15 22:21:21'),(14412,535,1,9524,'4.99','2005-07-31 01:01:06','2006-02-15 22:21:21'),(14413,535,2,10322,'5.99','2005-08-01 04:44:13','2006-02-15 22:21:21'),(14414,535,2,10353,'3.99','2005-08-01 05:46:33','2006-02-15 22:21:21'),(14415,535,2,11736,'8.99','2005-08-17 08:40:55','2006-02-15 22:21:21'),(14416,535,1,11855,'7.99','2005-08-17 13:43:07','2006-02-15 22:21:21'),(14417,535,2,12168,'2.99','2005-08-18 01:03:52','2006-02-15 22:21:21'),(14418,535,1,12233,'0.99','2005-08-18 03:16:54','2006-02-15 22:21:21'),(14419,535,2,12673,'4.99','2005-08-18 19:21:56','2006-02-15 22:21:21'),(14420,535,1,12732,'0.99','2005-08-18 21:57:50','2006-02-15 22:21:21'),(14421,535,2,12750,'1.99','2005-08-18 22:32:39','2006-02-15 22:21:21'),(14422,535,1,13631,'4.99','2005-08-20 07:07:37','2006-02-15 22:21:22'),(14423,535,1,13852,'0.99','2005-08-20 14:45:23','2006-02-15 22:21:22'),(14424,535,1,14522,'4.99','2005-08-21 15:01:34','2006-02-15 22:21:22'),(14425,535,2,15075,'5.99','2005-08-22 11:04:52','2006-02-15 22:21:22'),(14426,535,1,15287,'6.99','2005-08-22 19:19:37','2006-02-15 22:21:22'),(14427,535,1,16017,'0.99','2005-08-23 21:27:11','2006-02-15 22:21:22'),(14428,536,1,237,'0.99','2005-05-26 12:15:13','2006-02-15 22:21:22'),(14429,536,1,929,'6.99','2005-05-30 12:32:39','2006-02-15 22:21:22'),(14430,536,1,1582,'4.99','2005-06-16 04:31:57','2006-02-15 22:21:22'),(14431,536,2,1962,'2.99','2005-06-17 09:08:58','2006-02-15 22:21:22'),(14432,536,2,2403,'2.99','2005-06-18 16:33:22','2006-02-15 22:21:22'),(14433,536,1,3483,'4.99','2005-07-05 23:13:51','2006-02-15 22:21:22'),(14434,536,1,3514,'0.99','2005-07-06 00:46:54','2006-02-15 22:21:22'),(14435,536,1,4448,'2.99','2005-07-07 23:17:12','2006-02-15 22:21:22'),(14436,536,2,5196,'0.99','2005-07-09 10:43:34','2006-02-15 22:21:22'),(14437,536,1,6400,'5.99','2005-07-11 22:43:44','2006-02-15 22:21:23'),(14438,536,1,7065,'4.99','2005-07-27 03:53:43','2006-02-15 22:21:23'),(14439,536,2,8535,'4.99','2005-07-29 10:32:33','2006-02-15 22:21:23'),(14440,536,1,8679,'4.99','2005-07-29 16:07:47','2006-02-15 22:21:23'),(14441,536,1,8958,'2.99','2005-07-30 03:34:26','2006-02-15 22:21:23'),(14442,536,1,9411,'8.99','2005-07-30 20:38:22','2006-02-15 22:21:23'),(14443,536,1,9727,'4.99','2005-07-31 08:39:13','2006-02-15 22:21:23'),(14444,536,2,10019,'3.99','2005-07-31 18:20:56','2006-02-15 22:21:23'),(14445,536,1,11473,'6.99','2005-08-02 21:52:03','2006-02-15 22:21:23'),(14446,536,1,11826,'2.99','2005-08-17 12:43:46','2006-02-15 22:21:23'),(14447,536,2,11977,'4.99','2005-08-17 18:01:15','2006-02-15 22:21:23'),(14448,536,2,12052,'8.99','2005-08-17 20:57:02','2006-02-15 22:21:23'),(14449,536,2,13505,'4.99','2005-08-20 02:05:57','2006-02-15 22:21:23'),(14450,536,1,15130,'7.99','2005-08-22 13:04:32','2006-02-15 22:21:23'),(14451,536,1,15978,'8.99','2005-08-23 20:08:18','2006-02-15 22:21:23'),(14452,536,1,15979,'0.99','2005-08-23 20:08:26','2006-02-15 22:21:24'),(14453,537,2,603,'4.99','2005-05-28 14:27:51','2006-02-15 22:21:24'),(14454,537,1,1445,'2.99','2005-06-15 19:10:07','2006-02-15 22:21:24'),(14455,537,2,2184,'2.99','2005-06-18 01:10:36','2006-02-15 22:21:24'),(14456,537,1,2586,'8.99','2005-06-19 05:05:11','2006-02-15 22:21:24'),(14457,537,2,3134,'8.99','2005-06-20 19:29:09','2006-02-15 22:21:24'),(14458,537,1,3555,'0.99','2005-07-06 02:45:35','2006-02-15 22:21:24'),(14459,537,2,3853,'0.99','2005-07-06 16:59:20','2006-02-15 22:21:24'),(14460,537,1,5630,'2.99','2005-07-10 06:08:14','2006-02-15 22:21:24'),(14461,537,2,5877,'5.99','2005-07-10 19:08:51','2006-02-15 22:21:24'),(14462,537,2,6310,'2.99','2005-07-11 18:14:05','2006-02-15 22:21:24'),(14463,537,1,6409,'4.99','2005-07-11 23:05:49','2006-02-15 22:21:24'),(14464,537,1,6746,'0.99','2005-07-12 14:33:01','2006-02-15 22:21:24'),(14465,537,1,7179,'2.99','2005-07-27 08:10:29','2006-02-15 22:21:24'),(14466,537,2,7810,'4.99','2005-07-28 08:00:38','2006-02-15 22:21:24'),(14467,537,2,8126,'4.99','2005-07-28 19:32:41','2006-02-15 22:21:25'),(14468,537,2,8256,'4.99','2005-07-29 01:02:42','2006-02-15 22:21:25'),(14469,537,1,9967,'2.99','2005-07-31 16:31:17','2006-02-15 22:21:25'),(14470,537,2,12984,'4.99','2005-08-19 07:06:51','2006-02-15 22:21:25'),(14471,537,2,13885,'4.99','2005-08-20 15:32:09','2006-02-15 22:21:25'),(14472,537,1,14010,'4.99','2005-08-20 20:29:46','2006-02-15 22:21:25'),(14473,537,2,14506,'0.99','2005-08-21 14:32:27','2006-02-15 22:21:25'),(14474,537,1,14670,'0.99','2005-08-21 19:54:11','2006-02-15 22:21:25'),(14475,537,1,15149,'2.99','2005-08-22 14:08:06','2006-02-15 22:21:25'),(14476,537,1,15832,'8.99','2005-08-23 15:21:35','2006-02-15 22:21:25'),(14477,537,1,13419,'4.99','2006-02-14 15:16:03','2006-02-15 22:21:25'),(14478,538,2,594,'2.99','2005-05-28 13:41:56','2006-02-15 22:21:25'),(14479,538,2,734,'4.99','2005-05-29 07:38:52','2006-02-15 22:21:25'),(14480,538,1,1314,'5.99','2005-06-15 10:21:45','2006-02-15 22:21:25'),(14481,538,1,1912,'4.99','2005-06-17 05:18:32','2006-02-15 22:21:25'),(14482,538,1,2682,'4.99','2005-06-19 12:18:17','2006-02-15 22:21:26'),(14483,538,2,3189,'2.99','2005-06-20 23:19:33','2006-02-15 22:21:26'),(14484,538,2,3554,'4.99','2005-07-06 02:37:10','2006-02-15 22:21:26'),(14485,538,2,5135,'8.99','2005-07-09 07:53:22','2006-02-15 22:21:26'),(14486,538,1,5369,'4.99','2005-07-09 18:42:16','2006-02-15 22:21:26'),(14487,538,1,5486,'2.99','2005-07-09 23:57:44','2006-02-15 22:21:26'),(14488,538,1,5898,'2.99','2005-07-10 20:18:09','2006-02-15 22:21:26'),(14489,538,2,6130,'2.99','2005-07-11 08:19:56','2006-02-15 22:21:26'),(14490,538,1,6332,'0.99','2005-07-11 19:19:06','2006-02-15 22:21:26'),(14491,538,2,6936,'0.99','2005-07-26 23:13:34','2006-02-15 22:21:26'),(14492,538,1,7694,'0.99','2005-07-28 03:39:25','2006-02-15 22:21:26'),(14493,538,1,8765,'0.99','2005-07-29 19:40:08','2006-02-15 22:21:26'),(14494,538,1,9307,'0.99','2005-07-30 16:52:43','2006-02-15 22:21:26'),(14495,538,1,9643,'4.99','2005-07-31 05:35:48','2006-02-15 22:21:26'),(14496,538,2,9897,'4.99','2005-07-31 14:11:57','2006-02-15 22:21:26'),(14497,538,2,9939,'8.99','2005-07-31 15:29:00','2006-02-15 22:21:27'),(14498,538,2,10701,'3.99','2005-08-01 18:28:17','2006-02-15 22:21:27'),(14499,538,1,10732,'5.99','2005-08-01 19:25:18','2006-02-15 22:21:27'),(14500,538,1,10962,'4.99','2005-08-02 03:48:13','2006-02-15 22:21:27'),(14501,538,2,12089,'5.99','2005-08-17 22:20:29','2006-02-15 22:21:27'),(14502,538,1,13544,'1.99','2005-08-20 03:44:26','2006-02-15 22:21:27'),(14503,538,2,13770,'4.99','2005-08-20 11:45:54','2006-02-15 22:21:27'),(14504,538,2,14572,'2.99','2005-08-21 16:44:31','2006-02-15 22:21:27'),(14505,538,1,14591,'0.99','2005-08-21 17:30:09','2006-02-15 22:21:27'),(14506,538,1,15343,'6.99','2005-08-22 21:01:25','2006-02-15 22:21:27'),(14507,539,2,250,'4.99','2005-05-26 14:30:24','2006-02-15 22:21:27'),(14508,539,1,342,'0.99','2005-05-27 04:11:04','2006-02-15 22:21:27'),(14509,539,2,1282,'3.99','2005-06-15 08:25:33','2006-02-15 22:21:27'),(14510,539,1,1327,'0.99','2005-06-15 11:11:39','2006-02-15 22:21:27'),(14511,539,2,1444,'4.99','2005-06-15 19:08:16','2006-02-15 22:21:27'),(14512,539,1,4035,'2.99','2005-07-07 02:45:02','2006-02-15 22:21:27'),(14513,539,1,4247,'0.99','2005-07-07 13:51:54','2006-02-15 22:21:28'),(14514,539,2,5086,'4.99','2005-07-09 05:40:04','2006-02-15 22:21:28'),(14515,539,2,5139,'7.99','2005-07-09 08:01:51','2006-02-15 22:21:28'),(14516,539,2,5493,'2.99','2005-07-10 00:11:44','2006-02-15 22:21:28'),(14517,539,2,6874,'5.99','2005-07-12 20:20:53','2006-02-15 22:21:28'),(14518,539,1,7781,'2.99','2005-07-28 07:13:20','2006-02-15 22:21:28'),(14519,539,2,8247,'6.99','2005-07-29 00:41:38','2006-02-15 22:21:28'),(14520,539,2,8761,'5.99','2005-07-29 19:26:47','2006-02-15 22:21:28'),(14521,539,2,9250,'0.99','2005-07-30 14:18:16','2006-02-15 22:21:28'),(14522,539,1,9777,'7.99','2005-07-31 10:01:06','2006-02-15 22:21:28'),(14523,539,1,9796,'4.99','2005-07-31 10:52:43','2006-02-15 22:21:28'),(14524,539,2,10922,'3.99','2005-08-02 02:14:40','2006-02-15 22:21:28'),(14525,539,1,12848,'2.99','2005-08-19 02:05:11','2006-02-15 22:21:28'),(14526,539,2,13615,'2.99','2005-08-20 06:28:53','2006-02-15 22:21:28'),(14527,539,2,13778,'5.99','2005-08-20 12:03:44','2006-02-15 22:21:28'),(14528,539,1,15356,'2.99','2005-08-22 21:24:19','2006-02-15 22:21:29'),(14529,540,2,1263,'2.99','2005-06-15 06:56:39','2006-02-15 22:21:29'),(14530,540,2,1290,'4.99','2005-06-15 08:52:44','2006-02-15 22:21:29'),(14531,540,2,2640,'2.99','2005-06-19 09:26:13','2006-02-15 22:21:29'),(14532,540,1,2953,'3.99','2005-06-20 06:39:11','2006-02-15 22:21:29'),(14533,540,1,3340,'3.99','2005-06-21 10:37:23','2006-02-15 22:21:29'),(14534,540,2,4628,'4.99','2005-07-08 08:25:52','2006-02-15 22:21:29'),(14535,540,2,4991,'4.99','2005-07-09 00:49:03','2006-02-15 22:21:29'),(14536,540,1,6103,'2.99','2005-07-11 06:59:55','2006-02-15 22:21:29'),(14537,540,2,6145,'7.99','2005-07-11 09:07:01','2006-02-15 22:21:29'),(14538,540,2,6182,'2.99','2005-07-11 11:11:38','2006-02-15 22:21:29'),(14539,540,1,6748,'6.99','2005-07-12 14:39:27','2006-02-15 22:21:29'),(14540,540,1,6919,'0.99','2005-07-12 22:32:17','2006-02-15 22:21:29'),(14541,540,2,9762,'4.99','2005-07-31 09:32:54','2006-02-15 22:21:29'),(14542,540,2,9815,'2.99','2005-07-31 11:30:51','2006-02-15 22:21:29'),(14543,540,1,10924,'8.99','2005-08-02 02:20:19','2006-02-15 22:21:30'),(14544,540,1,11198,'3.99','2005-08-02 11:45:15','2006-02-15 22:21:30'),(14545,540,2,11324,'4.99','2005-08-02 16:31:17','2006-02-15 22:21:30'),(14546,540,2,11432,'6.99','2005-08-02 20:10:01','2006-02-15 22:21:30'),(14547,540,2,12058,'8.99','2005-08-17 21:07:41','2006-02-15 22:21:30'),(14548,540,2,12201,'4.99','2005-08-18 02:14:06','2006-02-15 22:21:30'),(14549,540,1,12300,'6.99','2005-08-18 05:36:14','2006-02-15 22:21:30'),(14550,540,2,14910,'0.99','2005-08-22 04:50:52','2006-02-15 22:21:30'),(14551,540,2,15079,'2.99','2005-08-22 11:09:56','2006-02-15 22:21:30'),(14552,540,2,15953,'3.99','2005-08-23 19:13:46','2006-02-15 22:21:30'),(14553,541,1,1021,'7.99','2005-05-31 03:16:15','2006-02-15 22:21:30'),(14554,541,1,1066,'4.99','2005-05-31 09:07:33','2006-02-15 22:21:30'),(14555,541,2,1986,'2.99','2005-06-17 10:34:59','2006-02-15 22:21:30'),(14556,541,1,2708,'6.99','2005-06-19 13:59:05','2006-02-15 22:21:30'),(14557,541,1,5018,'2.99','2005-07-09 02:01:05','2006-02-15 22:21:30'),(14558,541,2,5197,'4.99','2005-07-09 10:43:54','2006-02-15 22:21:31'),(14559,541,2,6468,'7.99','2005-07-12 01:27:09','2006-02-15 22:21:31'),(14560,541,2,6718,'2.99','2005-07-12 13:38:06','2006-02-15 22:21:31'),(14561,541,1,8113,'8.99','2005-07-28 19:14:00','2006-02-15 22:21:31'),(14562,541,1,8322,'4.99','2005-07-29 03:52:49','2006-02-15 22:21:31'),(14563,541,2,9603,'0.99','2005-07-31 03:43:43','2006-02-15 22:21:31'),(14564,541,1,10306,'5.99','2005-08-01 04:19:18','2006-02-15 22:21:31'),(14565,541,2,11273,'0.99','2005-08-02 14:20:55','2006-02-15 22:21:31'),(14566,541,1,12306,'4.99','2005-08-18 05:47:55','2006-02-15 22:21:31'),(14567,541,2,12395,'4.99','2005-08-18 09:06:30','2006-02-15 22:21:31'),(14568,541,1,12894,'7.99','2005-08-19 03:49:28','2006-02-15 22:21:31'),(14569,541,2,13239,'4.99','2005-08-19 16:22:13','2006-02-15 22:21:31'),(14570,541,2,13640,'0.99','2005-08-20 07:22:53','2006-02-15 22:21:31'),(14571,541,2,14938,'6.99','2005-08-22 05:52:39','2006-02-15 22:21:31'),(14572,541,1,15071,'4.99','2005-08-22 10:58:43','2006-02-15 22:21:31'),(14573,541,2,15141,'3.99','2005-08-22 13:41:49','2006-02-15 22:21:32'),(14574,541,1,15223,'1.99','2005-08-22 17:13:39','2006-02-15 22:21:32'),(14575,541,1,15421,'0.99','2005-08-22 23:56:37','2006-02-15 22:21:32'),(14576,541,2,15924,'1.99','2005-08-23 18:08:59','2006-02-15 22:21:32'),(14577,542,1,220,'4.99','2005-05-26 10:06:49','2006-02-15 22:21:32'),(14578,542,2,376,'4.99','2005-05-27 08:58:15','2006-02-15 22:21:32'),(14579,542,1,2610,'4.99','2005-06-19 07:16:20','2006-02-15 22:21:32'),(14580,542,2,2957,'10.99','2005-06-20 06:53:47','2006-02-15 22:21:32'),(14581,542,2,5293,'0.99','2005-07-09 15:17:23','2006-02-15 22:21:32'),(14582,542,1,5477,'6.99','2005-07-09 23:43:49','2006-02-15 22:21:32'),(14583,542,2,6077,'5.99','2005-07-11 05:06:08','2006-02-15 22:21:32'),(14584,542,2,6325,'5.99','2005-07-11 19:06:01','2006-02-15 22:21:32'),(14585,542,1,6887,'9.99','2005-07-12 21:00:23','2006-02-15 22:21:32'),(14586,542,2,7672,'8.99','2005-07-28 02:49:41','2006-02-15 22:21:32'),(14587,542,1,8533,'4.99','2005-07-29 10:29:16','2006-02-15 22:21:32'),(14588,542,2,8544,'3.99','2005-07-29 11:02:08','2006-02-15 22:21:33'),(14589,542,1,10280,'4.99','2005-08-01 03:27:15','2006-02-15 22:21:33'),(14590,542,2,11583,'0.99','2005-08-17 02:08:13','2006-02-15 22:21:33'),(14591,542,2,11903,'2.99','2005-08-17 15:37:45','2006-02-15 22:21:33'),(14592,542,1,12819,'0.99','2005-08-19 01:05:05','2006-02-15 22:21:33'),(14593,542,1,13447,'0.99','2005-08-20 00:09:36','2006-02-15 22:21:33'),(14594,542,2,14982,'9.99','2005-08-22 07:20:55','2006-02-15 22:21:33'),(14595,543,1,243,'6.99','2005-05-26 13:06:05','2006-02-15 22:21:33'),(14596,543,2,476,'1.99','2005-05-27 22:31:36','2006-02-15 22:21:33'),(14597,543,2,1720,'4.99','2005-06-16 15:00:14','2006-02-15 22:21:33'),(14598,543,1,2426,'2.99','2005-06-18 17:40:44','2006-02-15 22:21:33'),(14599,543,2,3070,'4.99','2005-06-20 14:15:39','2006-02-15 22:21:33'),(14600,543,1,3128,'2.99','2005-06-20 18:41:47','2006-02-15 22:21:33'),(14601,543,2,3467,'5.99','2005-06-21 22:19:25','2006-02-15 22:21:33'),(14602,543,1,4887,'2.99','2005-07-08 19:59:14','2006-02-15 22:21:33'),(14603,543,2,5467,'4.99','2005-07-09 23:05:47','2006-02-15 22:21:34'),(14604,543,2,6013,'4.99','2005-07-11 02:02:03','2006-02-15 22:21:34'),(14605,543,2,7312,'2.99','2005-07-27 13:03:14','2006-02-15 22:21:34'),(14606,543,1,8580,'2.99','2005-07-29 12:00:27','2006-02-15 22:21:34'),(14607,543,2,8845,'4.99','2005-07-29 23:06:13','2006-02-15 22:21:34'),(14608,543,1,9505,'2.99','2005-07-31 00:11:19','2006-02-15 22:21:34'),(14609,543,1,9999,'0.99','2005-07-31 17:40:53','2006-02-15 22:21:34'),(14610,543,2,10257,'0.99','2005-08-01 02:49:43','2006-02-15 22:21:34'),(14611,543,1,10520,'4.99','2005-08-01 11:45:58','2006-02-15 22:21:34'),(14612,543,2,11241,'9.99','2005-08-02 13:29:24','2006-02-15 22:21:34'),(14613,543,1,11681,'2.99','2005-08-17 06:13:30','2006-02-15 22:21:34'),(14614,543,1,13187,'0.99','2005-08-19 14:24:48','2006-02-15 22:21:34'),(14615,543,2,15281,'1.99','2005-08-22 19:10:26','2006-02-15 22:21:34'),(14616,543,1,15785,'1.99','2005-08-23 13:46:27','2006-02-15 22:21:34'),(14617,544,1,397,'2.99','2005-05-27 12:29:02','2006-02-15 22:21:34'),(14618,544,1,864,'2.99','2005-05-30 03:27:17','2006-02-15 22:21:35'),(14619,544,1,1248,'1.99','2005-06-15 05:33:52','2006-02-15 22:21:35'),(14620,544,2,1434,'10.99','2005-06-15 18:30:46','2006-02-15 22:21:35'),(14621,544,1,2373,'0.99','2005-06-18 14:37:57','2006-02-15 22:21:35'),(14622,544,1,2395,'2.99','2005-06-18 15:45:15','2006-02-15 22:21:35'),(14623,544,1,4395,'0.99','2005-07-07 21:13:22','2006-02-15 22:21:35'),(14624,544,1,4703,'2.99','2005-07-08 11:44:56','2006-02-15 22:21:35'),(14625,544,2,4847,'6.99','2005-07-08 18:29:13','2006-02-15 22:21:35'),(14626,544,2,8566,'2.99','2005-07-29 11:35:46','2006-02-15 22:21:35'),(14627,544,1,8937,'5.99','2005-07-30 02:53:21','2006-02-15 22:21:35'),(14628,544,1,8963,'9.99','2005-07-30 03:46:26','2006-02-15 22:21:35'),(14629,544,1,10735,'0.99','2005-08-01 19:29:45','2006-02-15 22:21:35'),(14630,544,1,11401,'3.99','2005-08-02 19:05:06','2006-02-15 22:21:35'),(14631,544,2,11766,'2.99','2005-08-17 09:58:40','2006-02-15 22:21:35'),(14632,544,2,12640,'3.99','2005-08-18 18:14:49','2006-02-15 22:21:36'),(14633,544,2,14142,'4.99','2005-08-21 02:07:43','2006-02-15 22:21:36'),(14634,544,1,14498,'4.99','2005-08-21 14:10:44','2006-02-15 22:21:36'),(14635,544,2,14651,'8.99','2005-08-21 19:31:09','2006-02-15 22:21:36'),(14636,544,1,14981,'2.99','2005-08-22 07:19:05','2006-02-15 22:21:36'),(14637,544,1,15219,'6.99','2005-08-22 17:00:31','2006-02-15 22:21:36'),(14638,544,1,15605,'4.99','2005-08-23 06:48:47','2006-02-15 22:21:36'),(14639,545,2,248,'0.99','2005-05-26 14:07:58','2006-02-15 22:21:36'),(14640,545,2,715,'3.99','2005-05-29 04:22:41','2006-02-15 22:21:36'),(14641,545,1,2123,'2.99','2005-06-17 20:48:30','2006-02-15 22:21:36'),(14642,545,2,3693,'8.99','2005-07-06 09:56:09','2006-02-15 22:21:36'),(14643,545,1,3975,'5.99','2005-07-06 23:00:09','2006-02-15 22:21:36'),(14644,545,1,4597,'5.99','2005-07-08 06:43:42','2006-02-15 22:21:36'),(14645,545,1,5264,'0.99','2005-07-09 14:11:28','2006-02-15 22:21:36'),(14646,545,1,7078,'5.99','2005-07-27 04:16:37','2006-02-15 22:21:36'),(14647,545,2,8599,'3.99','2005-07-29 12:58:52','2006-02-15 22:21:37'),(14648,545,2,8848,'2.99','2005-07-29 23:20:58','2006-02-15 22:21:37'),(14649,545,2,9810,'2.99','2005-07-31 11:22:41','2006-02-15 22:21:37'),(14650,545,2,9942,'4.99','2005-07-31 15:35:43','2006-02-15 22:21:37'),(14651,545,2,10931,'2.99','2005-08-02 02:44:59','2006-02-15 22:21:37'),(14652,545,2,11760,'2.99','2005-08-17 09:44:22','2006-02-15 22:21:37'),(14653,545,1,12098,'4.99','2005-08-17 22:38:31','2006-02-15 22:21:37'),(14654,545,1,12349,'2.99','2005-08-18 07:23:42','2006-02-15 22:21:37'),(14655,545,2,12667,'10.99','2005-08-18 19:11:45','2006-02-15 22:21:37'),(14656,545,1,12800,'2.99','2005-08-19 00:27:11','2006-02-15 22:21:37'),(14657,545,1,13595,'4.99','2005-08-20 05:54:27','2006-02-15 22:21:37'),(14658,545,1,15585,'0.99','2005-08-23 05:55:22','2006-02-15 22:21:37'),(14659,545,2,15998,'4.99','2005-08-23 20:41:09','2006-02-15 22:21:37'),(14660,546,1,197,'5.99','2005-05-26 06:59:21','2006-02-15 22:21:37'),(14661,546,1,482,'6.99','2005-05-27 22:53:02','2006-02-15 22:21:37'),(14662,546,1,1181,'1.99','2005-06-15 00:42:17','2006-02-15 22:21:38'),(14663,546,2,1403,'0.99','2005-06-15 16:31:59','2006-02-15 22:21:38'),(14664,546,1,1787,'3.99','2005-06-16 19:30:59','2006-02-15 22:21:38'),(14665,546,1,2361,'5.99','2005-06-18 13:19:05','2006-02-15 22:21:38'),(14666,546,1,3738,'4.99','2005-07-06 11:50:57','2006-02-15 22:21:38'),(14667,546,2,4664,'0.99','2005-07-08 10:01:28','2006-02-15 22:21:38'),(14668,546,1,4734,'0.99','2005-07-08 13:12:12','2006-02-15 22:21:38'),(14669,546,1,5629,'0.99','2005-07-10 06:02:25','2006-02-15 22:21:38'),(14670,546,2,6758,'9.99','2005-07-12 15:13:49','2006-02-15 22:21:38'),(14671,546,1,6786,'2.99','2005-07-12 16:32:33','2006-02-15 22:21:38'),(14672,546,2,6910,'6.99','2005-07-12 22:11:21','2006-02-15 22:21:38'),(14673,546,1,8532,'4.99','2005-07-29 10:26:56','2006-02-15 22:21:38'),(14674,546,1,9087,'4.99','2005-07-30 08:19:47','2006-02-15 22:21:38'),(14675,546,1,NULL,'3.99','2005-07-30 21:16:20','2006-02-15 22:21:38'),(14676,546,2,9626,'1.99','2005-07-31 04:37:41','2006-02-15 22:21:38'),(14677,546,2,10370,'0.99','2005-08-01 06:18:04','2006-02-15 22:21:39'),(14678,546,2,11352,'5.99','2005-08-02 17:29:39','2006-02-15 22:21:39'),(14679,546,1,11797,'4.99','2005-08-17 11:17:21','2006-02-15 22:21:39'),(14680,546,2,12591,'2.99','2005-08-18 16:16:41','2006-02-15 22:21:39'),(14681,546,2,13850,'5.99','2005-08-20 14:43:03','2006-02-15 22:21:39'),(14682,546,1,14797,'4.99','2005-08-22 00:41:24','2006-02-15 22:21:39'),(14683,546,1,14829,'2.99','2005-08-22 01:35:37','2006-02-15 22:21:39'),(14684,546,1,14929,'3.99','2005-08-22 05:32:38','2006-02-15 22:21:39'),(14685,546,2,15565,'4.99','2005-08-23 05:13:09','2006-02-15 22:21:39'),(14686,547,1,306,'0.99','2005-05-26 21:31:57','2006-02-15 22:21:39'),(14687,547,2,443,'8.99','2005-05-27 18:35:20','2006-02-15 22:21:39'),(14688,547,2,1094,'1.99','2005-05-31 13:03:49','2006-02-15 22:21:39'),(14689,547,2,2022,'8.99','2005-06-17 12:44:39','2006-02-15 22:21:39'),(14690,547,2,3679,'4.99','2005-07-06 09:15:57','2006-02-15 22:21:39'),(14691,547,1,3765,'4.99','2005-07-06 13:01:47','2006-02-15 22:21:40'),(14692,547,2,5327,'4.99','2005-07-09 16:39:49','2006-02-15 22:21:40'),(14693,547,2,5854,'4.99','2005-07-10 17:47:34','2006-02-15 22:21:40'),(14694,547,1,6605,'0.99','2005-07-12 08:01:07','2006-02-15 22:21:40'),(14695,547,2,7420,'4.99','2005-07-27 17:09:39','2006-02-15 22:21:40'),(14696,547,2,7547,'3.99','2005-07-27 21:51:48','2006-02-15 22:21:40'),(14697,547,1,7835,'4.99','2005-07-28 08:49:39','2006-02-15 22:21:40'),(14698,547,1,7859,'3.99','2005-07-28 09:57:17','2006-02-15 22:21:40'),(14699,547,1,8828,'2.99','2005-07-29 22:32:54','2006-02-15 22:21:40'),(14700,547,1,10903,'2.99','2005-08-02 01:41:59','2006-02-15 22:21:40'),(14701,547,1,10980,'4.99','2005-08-02 04:17:32','2006-02-15 22:21:40'),(14702,547,2,11170,'5.99','2005-08-02 10:21:53','2006-02-15 22:21:40'),(14703,547,2,11361,'0.99','2005-08-02 17:46:34','2006-02-15 22:21:40'),(14704,547,1,12579,'0.99','2005-08-18 15:47:49','2006-02-15 22:21:40'),(14705,547,2,12943,'2.99','2005-08-19 05:46:26','2006-02-15 22:21:40'),(14706,547,2,13307,'2.99','2005-08-19 18:58:44','2006-02-15 22:21:41'),(14707,547,1,14510,'9.99','2005-08-21 14:44:41','2006-02-15 22:21:41'),(14708,547,2,14884,'4.99','2005-08-22 03:57:08','2006-02-15 22:21:41'),(14709,548,2,177,'6.99','2005-05-26 04:14:29','2006-02-15 22:21:41'),(14710,548,1,743,'4.99','2005-05-29 08:39:02','2006-02-15 22:21:41'),(14711,548,2,872,'3.99','2005-05-30 05:03:04','2006-02-15 22:21:41'),(14712,548,1,1326,'1.99','2005-06-15 11:07:39','2006-02-15 22:21:41'),(14713,548,1,2280,'2.99','2005-06-18 06:46:54','2006-02-15 22:21:41'),(14714,548,2,2978,'0.99','2005-06-20 08:25:16','2006-02-15 22:21:41'),(14715,548,1,3686,'2.99','2005-07-06 09:37:50','2006-02-15 22:21:41'),(14716,548,2,3777,'2.99','2005-07-06 13:36:48','2006-02-15 22:21:41'),(14717,548,1,4155,'7.99','2005-07-07 09:00:49','2006-02-15 22:21:41'),(14718,548,2,5138,'4.99','2005-07-09 08:00:46','2006-02-15 22:21:41'),(14719,548,2,6490,'4.99','2005-07-12 02:28:03','2006-02-15 22:21:41'),(14720,548,1,9614,'5.99','2005-07-31 03:59:31','2006-02-15 22:21:41'),(14721,548,2,10318,'0.99','2005-08-01 04:36:53','2006-02-15 22:21:42'),(14722,548,1,12860,'5.99','2005-08-19 02:24:41','2006-02-15 22:21:42'),(14723,548,1,13691,'3.99','2005-08-20 09:07:39','2006-02-15 22:21:42'),(14724,548,2,13730,'7.99','2005-08-20 10:17:09','2006-02-15 22:21:42'),(14725,548,2,14188,'0.99','2005-08-21 03:32:04','2006-02-15 22:21:42'),(14726,548,2,14723,'6.99','2005-08-21 21:52:32','2006-02-15 22:21:42'),(14727,548,1,13584,'0.99','2006-02-14 15:16:03','2006-02-15 22:21:42'),(14728,549,1,6,'0.99','2005-05-24 23:08:07','2006-02-15 22:21:42'),(14729,549,2,852,'4.99','2005-05-30 01:36:57','2006-02-15 22:21:42'),(14730,549,1,906,'3.99','2005-05-30 10:30:38','2006-02-15 22:21:42'),(14731,549,2,1086,'4.99','2005-05-31 11:17:37','2006-02-15 22:21:42'),(14732,549,1,2050,'2.99','2005-06-17 15:07:30','2006-02-15 22:21:42'),(14733,549,2,3523,'2.99','2005-07-06 01:01:38','2006-02-15 22:21:42'),(14734,549,2,3892,'4.99','2005-07-06 18:58:58','2006-02-15 22:21:42'),(14735,549,1,4447,'0.99','2005-07-07 23:15:28','2006-02-15 22:21:42'),(14736,549,1,7252,'7.99','2005-07-27 10:45:28','2006-02-15 22:21:43'),(14737,549,2,8239,'0.99','2005-07-29 00:31:39','2006-02-15 22:21:43'),(14738,549,1,8316,'4.99','2005-07-29 03:38:49','2006-02-15 22:21:43'),(14739,549,2,9445,'7.99','2005-07-30 21:50:42','2006-02-15 22:21:43'),(14740,549,2,9511,'9.99','2005-07-31 00:25:05','2006-02-15 22:21:43'),(14741,549,2,9887,'0.99','2005-07-31 14:00:32','2006-02-15 22:21:43'),(14742,549,2,10281,'0.99','2005-08-01 03:28:33','2006-02-15 22:21:43'),(14743,549,2,11737,'4.99','2005-08-17 08:42:08','2006-02-15 22:21:43'),(14744,549,2,11878,'2.99','2005-08-17 14:23:52','2006-02-15 22:21:43'),(14745,549,2,12634,'2.99','2005-08-18 17:58:14','2006-02-15 22:21:43'),(14746,549,2,12747,'4.99','2005-08-18 22:28:22','2006-02-15 22:21:43'),(14747,549,1,14434,'0.99','2005-08-21 11:40:46','2006-02-15 22:21:43'),(14748,550,2,922,'7.99','2005-05-30 11:55:55','2006-02-15 22:21:43'),(14749,550,1,1233,'6.99','2005-06-15 04:18:37','2006-02-15 22:21:43'),(14750,550,1,1863,'3.99','2005-06-17 01:31:46','2006-02-15 22:21:43'),(14751,550,2,1883,'4.99','2005-06-17 03:18:51','2006-02-15 22:21:44'),(14752,550,1,3154,'2.99','2005-06-20 20:44:40','2006-02-15 22:21:44'),(14753,550,2,3236,'9.99','2005-06-21 02:47:43','2006-02-15 22:21:44'),(14754,550,1,3272,'10.99','2005-06-21 05:18:27','2006-02-15 22:21:44'),(14755,550,1,3979,'4.99','2005-07-06 23:04:35','2006-02-15 22:21:44'),(14756,550,1,5727,'4.99','2005-07-10 11:25:28','2006-02-15 22:21:44'),(14757,550,1,6695,'2.99','2005-07-12 12:39:39','2006-02-15 22:21:44'),(14758,550,1,7030,'0.99','2005-07-27 03:01:40','2006-02-15 22:21:44'),(14759,550,2,7838,'2.99','2005-07-28 09:00:21','2006-02-15 22:21:44'),(14760,550,1,8628,'6.99','2005-07-29 14:06:24','2006-02-15 22:21:44'),(14761,550,2,8838,'2.99','2005-07-29 22:52:23','2006-02-15 22:21:44'),(14762,550,1,8959,'8.99','2005-07-30 03:35:49','2006-02-15 22:21:44'),(14763,550,1,9616,'2.99','2005-07-31 04:05:01','2006-02-15 22:21:44'),(14764,550,1,9748,'0.99','2005-07-31 09:17:56','2006-02-15 22:21:44'),(14765,550,2,10140,'4.99','2005-07-31 22:03:20','2006-02-15 22:21:44'),(14766,550,1,11246,'2.99','2005-08-02 13:33:56','2006-02-15 22:21:45'),(14767,550,2,11320,'0.99','2005-08-02 16:13:28','2006-02-15 22:21:45'),(14768,550,1,11969,'4.99','2005-08-17 17:49:37','2006-02-15 22:21:45'),(14769,550,1,12063,'2.99','2005-08-17 21:24:48','2006-02-15 22:21:45'),(14770,550,2,12077,'4.99','2005-08-17 21:59:14','2006-02-15 22:21:45'),(14771,550,1,13114,'10.99','2005-08-19 11:27:32','2006-02-15 22:21:45'),(14772,550,2,14071,'2.99','2005-08-20 23:01:56','2006-02-15 22:21:45'),(14773,550,2,14127,'4.99','2005-08-21 01:33:32','2006-02-15 22:21:45'),(14774,550,2,14375,'6.99','2005-08-21 09:46:35','2006-02-15 22:21:45'),(14775,550,1,14687,'4.99','2005-08-21 20:32:16','2006-02-15 22:21:45'),(14776,550,2,15431,'9.99','2005-08-23 00:26:47','2006-02-15 22:21:45'),(14777,550,1,15883,'0.99','2005-08-23 16:44:56','2006-02-15 22:21:45'),(14778,550,2,15977,'4.99','2005-08-23 20:07:10','2006-02-15 22:21:45'),(14779,550,2,11757,'2.99','2006-02-14 15:16:03','2006-02-15 22:21:45'),(14780,551,2,155,'7.99','2005-05-26 01:15:05','2006-02-15 22:21:45'),(14781,551,1,728,'2.99','2005-05-29 06:12:38','2006-02-15 22:21:46'),(14782,551,1,795,'0.99','2005-05-29 16:57:39','2006-02-15 22:21:46'),(14783,551,2,969,'4.99','2005-05-30 19:23:48','2006-02-15 22:21:46'),(14784,551,2,1005,'3.99','2005-05-31 00:53:25','2006-02-15 22:21:46'),(14785,551,2,2069,'4.99','2005-06-17 16:19:39','2006-02-15 22:21:46'),(14786,551,1,2776,'3.99','2005-06-19 18:16:24','2006-02-15 22:21:46'),(14787,551,2,3996,'5.99','2005-07-06 23:46:43','2006-02-15 22:21:46'),(14788,551,1,5201,'1.99','2005-07-09 10:52:53','2006-02-15 22:21:46'),(14789,551,2,5528,'0.99','2005-07-10 02:09:21','2006-02-15 22:21:46'),(14790,551,1,6041,'0.99','2005-07-11 03:14:58','2006-02-15 22:21:46'),(14791,551,2,7095,'9.99','2005-07-27 04:51:15','2006-02-15 22:21:46'),(14792,551,1,8986,'0.99','2005-07-30 04:37:20','2006-02-15 22:21:46'),(14793,551,1,9287,'2.99','2005-07-30 15:35:39','2006-02-15 22:21:46'),(14794,551,2,9765,'4.99','2005-07-31 09:44:40','2006-02-15 22:21:46'),(14795,551,2,11380,'0.99','2005-08-02 18:17:32','2006-02-15 22:21:46'),(14796,551,2,11883,'2.99','2005-08-17 14:41:28','2006-02-15 22:21:47'),(14797,551,2,12208,'4.99','2005-08-18 02:25:25','2006-02-15 22:21:47'),(14798,551,2,12868,'0.99','2005-08-19 02:47:19','2006-02-15 22:21:47'),(14799,551,1,13439,'3.99','2005-08-19 23:42:16','2006-02-15 22:21:47'),(14800,551,1,14420,'0.99','2005-08-21 11:16:15','2006-02-15 22:21:47'),(14801,551,2,14609,'4.99','2005-08-21 17:57:26','2006-02-15 22:21:47'),(14802,551,2,14633,'2.99','2005-08-21 18:51:10','2006-02-15 22:21:47'),(14803,551,1,14833,'2.99','2005-08-22 01:45:18','2006-02-15 22:21:47'),(14804,551,1,15377,'4.99','2005-08-22 22:22:33','2006-02-15 22:21:47'),(14805,551,2,15390,'6.99','2005-08-22 22:57:25','2006-02-15 22:21:47'),(14806,552,2,174,'0.99','2005-05-26 03:44:10','2006-02-15 22:21:47'),(14807,552,2,2320,'0.99','2005-06-18 09:24:50','2006-02-15 22:21:47'),(14808,552,2,3397,'4.99','2005-06-21 15:30:11','2006-02-15 22:21:47'),(14809,552,1,4477,'6.99','2005-07-08 00:38:24','2006-02-15 22:21:47'),(14810,552,1,5213,'7.99','2005-07-09 11:39:43','2006-02-15 22:21:48'),(14811,552,2,6189,'4.99','2005-07-11 11:36:03','2006-02-15 22:21:48'),(14812,552,1,7772,'2.99','2005-07-28 06:59:09','2006-02-15 22:21:48'),(14813,552,1,8085,'2.99','2005-07-28 18:13:15','2006-02-15 22:21:48'),(14814,552,2,8192,'2.99','2005-07-28 22:49:11','2006-02-15 22:21:48'),(14815,552,2,8614,'5.99','2005-07-29 13:32:05','2006-02-15 22:21:48'),(14816,552,2,8894,'4.99','2005-07-30 00:48:31','2006-02-15 22:21:48'),(14817,552,1,9342,'8.99','2005-07-30 18:09:56','2006-02-15 22:21:48'),(14818,552,1,11146,'1.99','2005-08-02 09:45:32','2006-02-15 22:21:48'),(14819,552,2,11205,'4.99','2005-08-02 11:56:54','2006-02-15 22:21:48'),(14820,552,2,11300,'7.99','2005-08-02 15:37:42','2006-02-15 22:21:48'),(14821,552,2,12433,'4.99','2005-08-18 10:37:49','2006-02-15 22:21:48'),(14822,552,2,12880,'2.99','2005-08-19 03:27:17','2006-02-15 22:21:48'),(14823,552,2,13574,'2.99','2005-08-20 05:10:39','2006-02-15 22:21:48'),(14824,552,1,13693,'0.99','2005-08-20 09:11:42','2006-02-15 22:21:48'),(14825,552,2,14724,'4.99','2005-08-21 21:53:47','2006-02-15 22:21:49'),(14826,552,2,15700,'2.99','2005-08-23 10:21:21','2006-02-15 22:21:49'),(14827,553,2,789,'4.99','2005-05-29 16:17:07','2006-02-15 22:21:49'),(14828,553,2,1862,'3.99','2005-06-17 01:29:30','2006-02-15 22:21:49'),(14829,553,1,2460,'8.99','2005-06-18 19:54:13','2006-02-15 22:21:49'),(14830,553,2,3103,'6.99','2005-06-20 16:58:19','2006-02-15 22:21:49'),(14831,553,1,3495,'6.99','2005-07-05 23:50:04','2006-02-15 22:21:49'),(14832,553,2,3793,'4.99','2005-07-06 14:32:44','2006-02-15 22:21:49'),(14833,553,2,3859,'2.99','2005-07-06 17:18:15','2006-02-15 22:21:49'),(14834,553,1,3890,'4.99','2005-07-06 18:58:15','2006-02-15 22:21:49'),(14835,553,2,3891,'4.99','2005-07-06 18:58:25','2006-02-15 22:21:49'),(14836,553,2,3942,'4.99','2005-07-06 21:21:34','2006-02-15 22:21:49'),(14837,553,1,4257,'4.99','2005-07-07 14:18:41','2006-02-15 22:21:49'),(14838,553,2,4662,'0.99','2005-07-08 09:58:54','2006-02-15 22:21:49'),(14839,553,2,4845,'4.99','2005-07-08 18:28:20','2006-02-15 22:21:49'),(14840,553,2,4941,'3.99','2005-07-08 22:39:10','2006-02-15 22:21:50'),(14841,553,1,6069,'2.99','2005-07-11 04:44:59','2006-02-15 22:21:50'),(14842,553,2,6657,'0.99','2005-07-12 11:11:36','2006-02-15 22:21:50'),(14843,553,1,6812,'6.99','2005-07-12 18:03:25','2006-02-15 22:21:50'),(14844,553,1,7890,'4.99','2005-07-28 10:43:40','2006-02-15 22:21:50'),(14845,553,2,9272,'4.99','2005-07-30 15:05:22','2006-02-15 22:21:50'),(14846,553,2,9601,'2.99','2005-07-31 03:42:17','2006-02-15 22:21:50'),(14847,553,2,11710,'4.99','2005-08-17 07:29:44','2006-02-15 22:21:50'),(14848,553,1,13972,'2.99','2005-08-20 18:52:17','2006-02-15 22:21:50'),(14849,553,1,15042,'4.99','2005-08-22 09:47:37','2006-02-15 22:21:50'),(14850,553,1,15506,'0.99','2005-08-23 02:48:24','2006-02-15 22:21:50'),(14851,554,1,607,'2.99','2005-05-28 15:02:41','2006-02-15 22:21:50'),(14852,554,1,817,'2.99','2005-05-29 20:39:14','2006-02-15 22:21:50'),(14853,554,1,1959,'4.99','2005-06-17 08:54:10','2006-02-15 22:21:50'),(14854,554,1,2279,'6.99','2005-06-18 06:38:22','2006-02-15 22:21:50'),(14855,554,2,3278,'2.99','2005-06-21 05:41:30','2006-02-15 22:21:51'),(14856,554,1,3312,'6.99','2005-06-21 08:05:32','2006-02-15 22:21:51'),(14857,554,2,4902,'4.99','2005-07-08 20:49:30','2006-02-15 22:21:51'),(14858,554,1,5527,'2.99','2005-07-10 02:06:01','2006-02-15 22:21:51'),(14859,554,1,5968,'5.99','2005-07-11 00:03:11','2006-02-15 22:21:51'),(14860,554,1,6144,'2.99','2005-07-11 09:02:53','2006-02-15 22:21:51'),(14861,554,1,10612,'6.99','2005-08-01 14:55:31','2006-02-15 22:21:51'),(14862,554,2,10829,'7.99','2005-08-01 23:17:06','2006-02-15 22:21:51'),(14863,554,2,11589,'9.99','2005-08-17 02:28:22','2006-02-15 22:21:51'),(14864,554,1,11873,'0.99','2005-08-17 14:14:39','2006-02-15 22:21:51'),(14865,554,1,12010,'8.99','2005-08-17 19:17:54','2006-02-15 22:21:51'),(14866,554,1,12014,'0.99','2005-08-17 19:29:44','2006-02-15 22:21:51'),(14867,554,2,13139,'4.99','2005-08-19 12:32:10','2006-02-15 22:21:51'),(14868,554,2,14015,'2.99','2005-08-20 20:47:43','2006-02-15 22:21:51'),(14869,554,1,14098,'3.99','2005-08-21 00:30:32','2006-02-15 22:21:51'),(14870,554,1,14469,'0.99','2005-08-21 13:07:24','2006-02-15 22:21:52'),(14871,554,1,14626,'2.99','2005-08-21 18:35:44','2006-02-15 22:21:52'),(14872,554,2,15690,'4.99','2005-08-23 09:53:30','2006-02-15 22:21:52'),(14873,555,2,3232,'1.99','2005-06-21 02:30:37','2006-02-15 22:21:52'),(14874,555,2,4875,'2.99','2005-07-08 19:24:17','2006-02-15 22:21:52'),(14875,555,1,8161,'0.99','2005-07-28 21:11:00','2006-02-15 22:21:52'),(14876,555,1,8245,'3.99','2005-07-29 00:37:09','2006-02-15 22:21:52'),(14877,555,1,9299,'5.99','2005-07-30 16:32:51','2006-02-15 22:21:52'),(14878,555,2,9990,'7.99','2005-07-31 17:24:21','2006-02-15 22:21:52'),(14879,555,2,10076,'7.99','2005-07-31 20:00:34','2006-02-15 22:21:52'),(14880,555,1,10921,'3.99','2005-08-02 02:14:33','2006-02-15 22:21:52'),(14881,555,1,11168,'4.99','2005-08-02 10:19:42','2006-02-15 22:21:52'),(14882,555,1,11718,'4.99','2005-08-17 07:44:42','2006-02-15 22:21:52'),(14883,555,2,11747,'2.99','2005-08-17 09:03:31','2006-02-15 22:21:52'),(14884,555,2,12091,'4.99','2005-08-17 22:22:50','2006-02-15 22:21:52'),(14885,555,2,12150,'2.99','2005-08-18 00:13:55','2006-02-15 22:21:53'); +INSERT INTO payment VALUES (14886,555,2,12182,'2.99','2005-08-18 01:30:19','2006-02-15 22:21:53'),(14887,555,1,12388,'2.99','2005-08-18 08:48:09','2006-02-15 22:21:53'),(14888,555,1,12883,'4.99','2005-08-19 03:33:47','2006-02-15 22:21:53'),(14889,555,2,15102,'6.99','2005-08-22 11:58:58','2006-02-15 22:21:53'),(14890,556,1,184,'0.99','2005-05-26 05:29:49','2006-02-15 22:21:53'),(14891,556,2,772,'5.99','2005-05-29 13:08:06','2006-02-15 22:21:53'),(14892,556,1,1083,'3.99','2005-05-31 11:04:48','2006-02-15 22:21:53'),(14893,556,1,2092,'6.99','2005-06-17 18:12:16','2006-02-15 22:21:53'),(14894,556,2,2593,'5.99','2005-06-19 05:40:11','2006-02-15 22:21:53'),(14895,556,2,2986,'0.99','2005-06-20 08:50:28','2006-02-15 22:21:53'),(14896,556,1,3093,'4.99','2005-06-20 16:06:14','2006-02-15 22:21:53'),(14897,556,2,3438,'6.99','2005-06-21 19:31:40','2006-02-15 22:21:53'),(14898,556,2,4719,'2.99','2005-07-08 12:33:00','2006-02-15 22:21:53'),(14899,556,2,4839,'3.99','2005-07-08 18:13:10','2006-02-15 22:21:54'),(14900,556,1,4846,'0.99','2005-07-08 18:29:05','2006-02-15 22:21:54'),(14901,556,2,5722,'0.99','2005-07-10 11:10:04','2006-02-15 22:21:54'),(14902,556,2,6484,'2.99','2005-07-12 02:04:10','2006-02-15 22:21:54'),(14903,556,1,8909,'5.99','2005-07-30 01:28:03','2006-02-15 22:21:54'),(14904,556,2,10106,'4.99','2005-07-31 21:00:47','2006-02-15 22:21:54'),(14905,556,2,10518,'6.99','2005-08-01 11:44:08','2006-02-15 22:21:54'),(14906,556,1,11466,'1.99','2005-08-02 21:46:46','2006-02-15 22:21:54'),(14907,556,2,11804,'3.99','2005-08-17 11:42:45','2006-02-15 22:21:54'),(14908,556,1,12045,'4.99','2005-08-17 20:40:46','2006-02-15 22:21:54'),(14909,556,1,14176,'2.99','2005-08-21 03:09:23','2006-02-15 22:21:54'),(14910,556,1,15568,'2.99','2005-08-23 05:24:09','2006-02-15 22:21:54'),(14911,557,2,467,'4.99','2005-05-27 21:10:03','2006-02-15 22:21:54'),(14912,557,1,478,'4.99','2005-05-27 22:38:20','2006-02-15 22:21:54'),(14913,557,1,1666,'0.99','2005-06-16 10:17:19','2006-02-15 22:21:54'),(14914,557,2,2988,'6.99','2005-06-20 08:59:08','2006-02-15 22:21:55'),(14915,557,1,3050,'3.99','2005-06-20 13:03:03','2006-02-15 22:21:55'),(14916,557,1,4651,'0.99','2005-07-08 09:39:39','2006-02-15 22:21:55'),(14917,557,1,4851,'1.99','2005-07-08 18:40:05','2006-02-15 22:21:55'),(14918,557,1,6459,'0.99','2005-07-12 01:12:03','2006-02-15 22:21:55'),(14919,557,2,6713,'3.99','2005-07-12 13:27:36','2006-02-15 22:21:55'),(14920,557,2,6823,'4.99','2005-07-12 18:24:31','2006-02-15 22:21:55'),(14921,557,2,6898,'0.99','2005-07-12 21:39:04','2006-02-15 22:21:55'),(14922,557,1,9336,'0.99','2005-07-30 18:01:15','2006-02-15 22:21:55'),(14923,557,1,9341,'2.99','2005-07-30 18:07:58','2006-02-15 22:21:55'),(14924,557,2,9366,'1.99','2005-07-30 18:48:57','2006-02-15 22:21:55'),(14925,557,2,9367,'6.99','2005-07-30 18:49:58','2006-02-15 22:21:55'),(14926,557,1,11181,'0.99','2005-08-02 10:55:03','2006-02-15 22:21:55'),(14927,557,1,12555,'1.99','2005-08-18 14:49:22','2006-02-15 22:21:55'),(14928,557,1,12789,'2.99','2005-08-19 00:16:19','2006-02-15 22:21:55'),(14929,557,1,13540,'2.99','2005-08-20 03:41:23','2006-02-15 22:21:56'),(14930,557,2,13794,'2.99','2005-08-20 12:25:32','2006-02-15 22:21:56'),(14931,557,2,15236,'0.99','2005-08-22 17:44:27','2006-02-15 22:21:56'),(14932,557,2,15570,'5.99','2005-08-23 05:24:55','2006-02-15 22:21:56'),(14933,557,2,15914,'0.99','2005-08-23 17:49:26','2006-02-15 22:21:56'),(14934,557,1,14278,'4.99','2006-02-14 15:16:03','2006-02-15 22:21:56'),(14935,558,2,1967,'4.99','2005-06-17 09:19:52','2006-02-15 22:21:56'),(14936,558,1,2411,'1.99','2005-06-18 16:55:54','2006-02-15 22:21:56'),(14937,558,2,2544,'4.99','2005-06-19 02:16:17','2006-02-15 22:21:56'),(14938,558,2,3016,'4.99','2005-06-20 10:55:08','2006-02-15 22:21:56'),(14939,558,2,3451,'10.99','2005-06-21 21:10:39','2006-02-15 22:21:56'),(14940,558,1,3731,'9.99','2005-07-06 11:33:36','2006-02-15 22:21:56'),(14941,558,1,3954,'0.99','2005-07-06 21:57:44','2006-02-15 22:21:56'),(14942,558,1,3990,'3.99','2005-07-06 23:32:44','2006-02-15 22:21:56'),(14943,558,1,4192,'5.99','2005-07-07 10:57:06','2006-02-15 22:21:57'),(14944,558,1,4932,'2.99','2005-07-08 22:17:40','2006-02-15 22:21:57'),(14945,558,2,5375,'6.99','2005-07-09 18:52:55','2006-02-15 22:21:57'),(14946,558,1,5492,'3.99','2005-07-10 00:11:09','2006-02-15 22:21:57'),(14947,558,2,6278,'7.99','2005-07-11 16:20:02','2006-02-15 22:21:57'),(14948,558,2,6479,'9.99','2005-07-12 01:49:00','2006-02-15 22:21:57'),(14949,558,2,6742,'4.99','2005-07-12 14:25:31','2006-02-15 22:21:57'),(14950,558,1,6757,'0.99','2005-07-12 15:09:48','2006-02-15 22:21:57'),(14951,558,1,7424,'0.99','2005-07-27 17:14:19','2006-02-15 22:21:57'),(14952,558,1,8523,'2.99','2005-07-29 10:18:27','2006-02-15 22:21:57'),(14953,558,1,8858,'4.99','2005-07-29 23:44:35','2006-02-15 22:21:57'),(14954,558,1,8889,'2.99','2005-07-30 00:39:43','2006-02-15 22:21:57'),(14955,558,2,10707,'0.99','2005-08-01 18:41:34','2006-02-15 22:21:57'),(14956,558,1,11268,'0.99','2005-08-02 14:10:39','2006-02-15 22:21:57'),(14957,558,2,11567,'5.99','2005-08-17 01:28:43','2006-02-15 22:21:57'),(14958,558,2,12040,'6.99','2005-08-17 20:29:56','2006-02-15 22:21:58'),(14959,558,1,12194,'1.99','2005-08-18 02:04:47','2006-02-15 22:21:58'),(14960,558,2,13566,'5.99','2005-08-20 04:45:32','2006-02-15 22:21:58'),(14961,558,2,14235,'7.99','2005-08-21 05:08:42','2006-02-15 22:21:58'),(14962,558,1,14286,'5.99','2005-08-21 06:53:53','2006-02-15 22:21:58'),(14963,559,2,2576,'4.99','2005-06-19 04:34:15','2006-02-15 22:21:58'),(14964,559,1,2706,'0.99','2005-06-19 13:56:51','2006-02-15 22:21:58'),(14965,559,2,3046,'4.99','2005-06-20 12:42:59','2006-02-15 22:21:58'),(14966,559,1,3370,'1.99','2005-06-21 13:27:01','2006-02-15 22:21:58'),(14967,559,1,3674,'5.99','2005-07-06 09:03:13','2006-02-15 22:21:58'),(14968,559,1,4120,'4.99','2005-07-07 07:07:03','2006-02-15 22:21:58'),(14969,559,1,4370,'7.99','2005-07-07 20:05:36','2006-02-15 22:21:58'),(14970,559,2,5396,'1.99','2005-07-09 19:42:52','2006-02-15 22:21:58'),(14971,559,1,6201,'4.99','2005-07-11 12:18:07','2006-02-15 22:21:58'),(14972,559,1,6915,'2.99','2005-07-12 22:28:09','2006-02-15 22:21:58'),(14973,559,1,7169,'1.99','2005-07-27 07:51:39','2006-02-15 22:21:59'),(14974,559,1,7680,'1.99','2005-07-28 02:59:08','2006-02-15 22:21:59'),(14975,559,1,8631,'1.99','2005-07-29 14:08:06','2006-02-15 22:21:59'),(14976,559,2,9134,'0.99','2005-07-30 10:00:21','2006-02-15 22:21:59'),(14977,559,1,9877,'2.99','2005-07-31 13:41:57','2006-02-15 22:21:59'),(14978,559,2,10146,'2.99','2005-07-31 22:17:56','2006-02-15 22:21:59'),(14979,559,1,10377,'3.99','2005-08-01 06:28:28','2006-02-15 22:21:59'),(14980,559,1,10669,'8.99','2005-08-01 17:03:28','2006-02-15 22:21:59'),(14981,559,2,10876,'0.99','2005-08-02 00:31:58','2006-02-15 22:21:59'),(14982,559,2,11136,'1.99','2005-08-02 09:22:57','2006-02-15 22:21:59'),(14983,559,1,13234,'1.99','2005-08-19 16:17:15','2006-02-15 22:21:59'),(14984,559,2,13248,'6.99','2005-08-19 16:47:41','2006-02-15 22:21:59'),(14985,559,2,13322,'4.99','2005-08-19 19:43:08','2006-02-15 22:21:59'),(14986,559,1,13845,'5.99','2005-08-20 14:31:21','2006-02-15 22:21:59'),(14987,559,1,14342,'4.99','2005-08-21 08:39:26','2006-02-15 22:22:00'),(14988,559,2,14622,'4.99','2005-08-21 18:25:59','2006-02-15 22:22:00'),(14989,559,2,15440,'4.99','2005-08-23 00:37:21','2006-02-15 22:22:00'),(14990,559,1,15877,'4.99','2005-08-23 16:33:33','2006-02-15 22:22:00'),(14991,560,1,137,'2.99','2005-05-25 22:25:18','2006-02-15 22:22:00'),(14992,560,1,1271,'4.99','2005-06-15 07:32:24','2006-02-15 22:22:00'),(14993,560,2,1572,'1.99','2005-06-16 03:23:22','2006-02-15 22:22:00'),(14994,560,1,3941,'4.99','2005-07-06 21:20:37','2006-02-15 22:22:00'),(14995,560,1,4298,'2.99','2005-07-07 16:27:25','2006-02-15 22:22:00'),(14996,560,2,4375,'9.99','2005-07-07 20:20:29','2006-02-15 22:22:00'),(14997,560,1,4453,'0.99','2005-07-07 23:32:39','2006-02-15 22:22:00'),(14998,560,2,5208,'2.99','2005-07-09 11:16:56','2006-02-15 22:22:00'),(14999,560,1,6410,'4.99','2005-07-11 23:08:06','2006-02-15 22:22:00'),(15000,560,1,6945,'2.99','2005-07-26 23:35:29','2006-02-15 22:22:00'),(15001,560,2,7202,'4.99','2005-07-27 09:00:20','2006-02-15 22:22:00'),(15002,560,1,7891,'3.99','2005-07-28 10:43:56','2006-02-15 22:22:01'),(15003,560,1,8753,'2.99','2005-07-29 19:15:50','2006-02-15 22:22:01'),(15004,560,2,8861,'5.99','2005-07-29 23:47:29','2006-02-15 22:22:01'),(15005,560,2,8906,'4.99','2005-07-30 01:21:39','2006-02-15 22:22:01'),(15006,560,1,9265,'0.99','2005-07-30 14:55:25','2006-02-15 22:22:01'),(15007,560,2,9895,'5.99','2005-07-31 14:07:56','2006-02-15 22:22:01'),(15008,560,2,10480,'4.99','2005-08-01 10:13:41','2006-02-15 22:22:01'),(15009,560,1,10702,'4.99','2005-08-01 18:34:59','2006-02-15 22:22:01'),(15010,560,1,10733,'7.99','2005-08-01 19:28:01','2006-02-15 22:22:01'),(15011,560,1,11334,'7.99','2005-08-02 16:53:20','2006-02-15 22:22:01'),(15012,560,1,11788,'4.99','2005-08-17 10:59:18','2006-02-15 22:22:01'),(15013,560,2,14008,'5.99','2005-08-20 20:26:00','2006-02-15 22:22:01'),(15014,560,1,14341,'1.99','2005-08-21 08:38:24','2006-02-15 22:22:01'),(15015,560,2,14363,'4.99','2005-08-21 09:20:03','2006-02-15 22:22:01'),(15016,560,1,14436,'2.99','2005-08-21 11:48:27','2006-02-15 22:22:01'),(15017,560,2,14785,'2.99','2005-08-22 00:24:37','2006-02-15 22:22:02'),(15018,560,1,15352,'6.99','2005-08-22 21:16:54','2006-02-15 22:22:02'),(15019,560,2,12116,'5.98','2006-02-14 15:16:03','2006-02-15 22:22:02'),(15020,560,2,14425,'0.00','2006-02-14 15:16:03','2006-02-15 22:22:02'),(15021,561,1,902,'4.99','2005-05-30 09:53:36','2006-02-15 22:22:02'),(15022,561,2,971,'4.99','2005-05-30 20:10:52','2006-02-15 22:22:02'),(15023,561,2,1193,'2.99','2005-06-15 01:24:20','2006-02-15 22:22:02'),(15024,561,2,1505,'2.99','2005-06-15 22:12:50','2006-02-15 22:22:02'),(15025,561,2,1620,'4.99','2005-06-16 07:21:30','2006-02-15 22:22:02'),(15026,561,1,2119,'4.99','2005-06-17 20:34:42','2006-02-15 22:22:02'),(15027,561,1,2357,'5.99','2005-06-18 12:59:41','2006-02-15 22:22:02'),(15028,561,1,2548,'0.99','2005-06-19 02:45:35','2006-02-15 22:22:02'),(15029,561,1,2950,'4.99','2005-06-20 06:08:36','2006-02-15 22:22:02'),(15030,561,1,3160,'4.99','2005-06-20 21:20:51','2006-02-15 22:22:02'),(15031,561,1,3427,'0.99','2005-06-21 18:31:09','2006-02-15 22:22:03'),(15032,561,2,6361,'2.99','2005-07-11 21:09:14','2006-02-15 22:22:03'),(15033,561,1,6435,'0.99','2005-07-12 00:16:19','2006-02-15 22:22:03'),(15034,561,1,6621,'0.99','2005-07-12 08:57:30','2006-02-15 22:22:03'),(15035,561,1,6843,'4.99','2005-07-12 19:14:05','2006-02-15 22:22:03'),(15036,561,1,7698,'0.99','2005-07-28 03:44:14','2006-02-15 22:22:03'),(15037,561,1,8504,'10.99','2005-07-29 09:20:16','2006-02-15 22:22:03'),(15038,561,2,9839,'7.99','2005-07-31 12:21:16','2006-02-15 22:22:03'),(15039,561,2,10317,'2.99','2005-08-01 04:35:34','2006-02-15 22:22:03'),(15040,561,1,10907,'4.99','2005-08-02 01:51:48','2006-02-15 22:22:03'),(15041,561,1,11371,'2.99','2005-08-02 18:07:36','2006-02-15 22:22:03'),(15042,561,2,11402,'2.99','2005-08-02 19:07:21','2006-02-15 22:22:03'),(15043,561,2,12441,'2.99','2005-08-18 10:47:57','2006-02-15 22:22:03'),(15044,561,2,14139,'0.99','2005-08-21 02:04:33','2006-02-15 22:22:03'),(15045,561,1,15573,'0.99','2005-08-23 05:28:36','2006-02-15 22:22:03'),(15046,561,1,15946,'2.99','2005-08-23 18:54:07','2006-02-15 22:22:04'),(15047,561,1,14415,'0.99','2006-02-14 15:16:03','2006-02-15 22:22:04'),(15048,562,2,788,'2.99','2005-05-29 16:13:55','2006-02-15 22:22:04'),(15049,562,1,941,'2.99','2005-05-30 15:02:25','2006-02-15 22:22:04'),(15050,562,1,1139,'5.99','2005-05-31 19:34:52','2006-02-15 22:22:04'),(15051,562,1,1998,'3.99','2005-06-17 11:24:57','2006-02-15 22:22:04'),(15052,562,1,2705,'4.99','2005-06-19 13:54:30','2006-02-15 22:22:04'),(15053,562,1,2746,'3.99','2005-06-19 16:21:40','2006-02-15 22:22:04'),(15054,562,2,3242,'4.99','2005-06-21 02:56:24','2006-02-15 22:22:04'),(15055,562,2,4732,'5.99','2005-07-08 13:09:45','2006-02-15 22:22:04'),(15056,562,1,4802,'4.99','2005-07-08 16:55:17','2006-02-15 22:22:04'),(15057,562,2,5360,'0.99','2005-07-09 18:14:03','2006-02-15 22:22:04'),(15058,562,2,6065,'6.99','2005-07-11 04:25:51','2006-02-15 22:22:04'),(15059,562,1,6607,'8.99','2005-07-12 08:08:50','2006-02-15 22:22:04'),(15060,562,2,7166,'3.99','2005-07-27 07:36:56','2006-02-15 22:22:04'),(15061,562,1,7430,'2.99','2005-07-27 17:26:14','2006-02-15 22:22:05'),(15062,562,2,7560,'2.99','2005-07-27 22:20:17','2006-02-15 22:22:05'),(15063,562,2,8132,'0.99','2005-07-28 19:57:31','2006-02-15 22:22:05'),(15064,562,2,10868,'6.99','2005-08-02 00:25:15','2006-02-15 22:22:05'),(15065,562,2,12008,'4.99','2005-08-17 19:16:18','2006-02-15 22:22:05'),(15066,562,1,12248,'5.99','2005-08-18 03:53:18','2006-02-15 22:22:05'),(15067,562,2,13225,'2.99','2005-08-19 15:54:33','2006-02-15 22:22:05'),(15068,562,2,13347,'10.99','2005-08-19 20:28:48','2006-02-15 22:22:05'),(15069,562,2,13639,'0.99','2005-08-20 07:22:07','2006-02-15 22:22:05'),(15070,562,1,15212,'2.99','2005-08-22 16:44:26','2006-02-15 22:22:05'),(15071,562,2,15475,'2.99','2005-08-23 01:44:43','2006-02-15 22:22:05'),(15072,562,1,15900,'1.99','2005-08-23 17:16:30','2006-02-15 22:22:05'),(15073,563,1,758,'4.99','2005-05-29 10:31:56','2006-02-15 22:22:05'),(15074,563,2,773,'5.99','2005-05-29 13:18:05','2006-02-15 22:22:05'),(15075,563,2,1545,'4.99','2005-06-16 01:31:23','2006-02-15 22:22:06'),(15076,563,2,2573,'0.99','2005-06-19 04:23:18','2006-02-15 22:22:06'),(15077,563,1,4106,'1.99','2005-07-07 06:33:35','2006-02-15 22:22:06'),(15078,563,2,4436,'0.99','2005-07-07 22:52:04','2006-02-15 22:22:06'),(15079,563,1,4565,'3.99','2005-07-08 05:12:28','2006-02-15 22:22:06'),(15080,563,2,4629,'6.99','2005-07-08 08:31:26','2006-02-15 22:22:06'),(15081,563,2,4711,'2.99','2005-07-08 12:06:58','2006-02-15 22:22:06'),(15082,563,2,4776,'5.99','2005-07-08 15:44:20','2006-02-15 22:22:06'),(15083,563,2,4808,'3.99','2005-07-08 17:02:49','2006-02-15 22:22:06'),(15084,563,2,4825,'4.99','2005-07-08 17:43:01','2006-02-15 22:22:06'),(15085,563,1,4883,'0.99','2005-07-08 19:46:58','2006-02-15 22:22:06'),(15086,563,1,5406,'0.99','2005-07-09 20:13:23','2006-02-15 22:22:06'),(15087,563,2,6326,'2.99','2005-07-11 19:06:55','2006-02-15 22:22:06'),(15088,563,2,7612,'0.99','2005-07-28 00:11:55','2006-02-15 22:22:06'),(15089,563,1,8262,'1.99','2005-07-29 01:11:18','2006-02-15 22:22:06'),(15090,563,1,8610,'5.99','2005-07-29 13:25:02','2006-02-15 22:22:07'),(15091,563,2,8632,'6.99','2005-07-29 14:11:25','2006-02-15 22:22:07'),(15092,563,2,8812,'7.99','2005-07-29 21:47:40','2006-02-15 22:22:07'),(15093,563,2,11829,'0.99','2005-08-17 12:52:04','2006-02-15 22:22:07'),(15094,563,1,12039,'1.99','2005-08-17 20:29:08','2006-02-15 22:22:07'),(15095,563,1,12202,'1.99','2005-08-18 02:14:08','2006-02-15 22:22:07'),(15096,563,1,12832,'2.99','2005-08-19 01:41:44','2006-02-15 22:22:07'),(15097,563,2,13863,'9.99','2005-08-20 14:57:50','2006-02-15 22:22:07'),(15098,563,2,14592,'4.99','2005-08-21 17:30:17','2006-02-15 22:22:07'),(15099,563,2,15507,'0.99','2005-08-23 02:48:26','2006-02-15 22:22:07'),(15100,563,2,15638,'3.99','2005-08-23 07:54:54','2006-02-15 22:22:07'),(15101,563,1,15850,'4.99','2005-08-23 15:45:42','2006-02-15 22:22:07'),(15102,564,2,195,'5.99','2005-05-26 06:52:36','2006-02-15 22:22:07'),(15103,564,1,985,'2.99','2005-05-30 22:18:35','2006-02-15 22:22:07'),(15104,564,2,1705,'2.99','2005-06-16 13:59:42','2006-02-15 22:22:07'),(15105,564,1,4196,'2.99','2005-07-07 11:06:33','2006-02-15 22:22:08'),(15106,564,2,4385,'0.99','2005-07-07 20:48:38','2006-02-15 22:22:08'),(15107,564,1,6973,'2.99','2005-07-27 00:32:04','2006-02-15 22:22:08'),(15108,564,2,7470,'10.99','2005-07-27 19:01:03','2006-02-15 22:22:08'),(15109,564,2,8426,'4.99','2005-07-29 07:07:48','2006-02-15 22:22:08'),(15110,564,1,8874,'0.99','2005-07-30 00:14:45','2006-02-15 22:22:08'),(15111,564,2,9063,'3.99','2005-07-30 07:24:34','2006-02-15 22:22:08'),(15112,564,2,9929,'2.99','2005-07-31 15:17:24','2006-02-15 22:22:08'),(15113,564,1,10129,'6.99','2005-07-31 21:41:35','2006-02-15 22:22:08'),(15114,564,2,10352,'1.99','2005-08-01 05:44:36','2006-02-15 22:22:08'),(15115,564,2,10401,'4.99','2005-08-01 07:27:09','2006-02-15 22:22:08'),(15116,564,1,10528,'2.99','2005-08-01 11:56:22','2006-02-15 22:22:08'),(15117,564,2,11768,'2.99','2005-08-17 10:02:29','2006-02-15 22:22:08'),(15118,564,2,12197,'6.99','2005-08-18 02:08:58','2006-02-15 22:22:08'),(15119,564,2,12617,'2.99','2005-08-18 17:22:48','2006-02-15 22:22:09'),(15120,564,2,13324,'0.99','2005-08-19 19:51:00','2006-02-15 22:22:09'),(15121,564,2,13558,'0.99','2005-08-20 04:13:17','2006-02-15 22:22:09'),(15122,564,1,13701,'0.99','2005-08-20 09:27:05','2006-02-15 22:22:09'),(15123,564,2,14439,'5.99','2005-08-21 11:52:41','2006-02-15 22:22:09'),(15124,564,1,14593,'0.99','2005-08-21 17:33:18','2006-02-15 22:22:09'),(15125,564,2,15059,'8.99','2005-08-22 10:22:00','2006-02-15 22:22:09'),(15126,565,1,458,'6.99','2005-05-27 19:58:36','2006-02-15 22:22:09'),(15127,565,1,1004,'0.99','2005-05-31 00:48:36','2006-02-15 22:22:09'),(15128,565,2,1460,'4.99','2005-06-15 20:27:02','2006-02-15 22:22:09'),(15129,565,1,2321,'5.99','2005-06-18 09:42:42','2006-02-15 22:22:09'),(15130,565,1,3300,'5.99','2005-06-21 07:25:01','2006-02-15 22:22:09'),(15131,565,2,3470,'0.99','2005-07-05 22:49:24','2006-02-15 22:22:09'),(15132,565,1,3838,'2.99','2005-07-06 16:29:43','2006-02-15 22:22:09'),(15133,565,1,4413,'2.99','2005-07-07 22:00:04','2006-02-15 22:22:09'),(15134,565,2,5020,'0.99','2005-07-09 02:07:56','2006-02-15 22:22:10'),(15135,565,1,5124,'4.99','2005-07-09 07:25:19','2006-02-15 22:22:10'),(15136,565,1,6264,'2.99','2005-07-11 15:42:35','2006-02-15 22:22:10'),(15137,565,1,6627,'2.99','2005-07-12 09:16:46','2006-02-15 22:22:10'),(15138,565,1,6699,'0.99','2005-07-12 12:45:21','2006-02-15 22:22:10'),(15139,565,2,7242,'5.99','2005-07-27 10:25:51','2006-02-15 22:22:10'),(15140,565,1,9628,'2.99','2005-07-31 04:51:11','2006-02-15 22:22:10'),(15141,565,1,10025,'5.99','2005-07-31 18:29:09','2006-02-15 22:22:10'),(15142,565,2,10776,'10.99','2005-08-01 20:59:58','2006-02-15 22:22:10'),(15143,565,2,10913,'3.99','2005-08-02 02:04:03','2006-02-15 22:22:10'),(15144,565,2,11189,'6.99','2005-08-02 11:17:23','2006-02-15 22:22:10'),(15145,565,1,11399,'3.99','2005-08-02 18:56:28','2006-02-15 22:22:10'),(15146,565,2,11506,'4.99','2005-08-16 23:25:48','2006-02-15 22:22:10'),(15147,565,1,11588,'3.99','2005-08-17 02:26:23','2006-02-15 22:22:10'),(15148,565,1,11795,'2.99','2005-08-17 11:13:38','2006-02-15 22:22:10'),(15149,565,2,12743,'5.99','2005-08-18 22:22:31','2006-02-15 22:22:11'),(15150,565,2,13195,'4.99','2005-08-19 14:39:14','2006-02-15 22:22:11'),(15151,565,2,13217,'4.99','2005-08-19 15:38:39','2006-02-15 22:22:11'),(15152,565,1,13362,'0.99','2005-08-19 21:07:54','2006-02-15 22:22:11'),(15153,565,1,13925,'8.99','2005-08-20 17:05:34','2006-02-15 22:22:11'),(15154,565,1,15885,'2.99','2005-08-23 16:50:43','2006-02-15 22:22:11'),(15155,566,2,234,'5.99','2005-05-26 11:47:20','2006-02-15 22:22:11'),(15156,566,2,768,'4.99','2005-05-29 12:30:46','2006-02-15 22:22:11'),(15157,566,1,1635,'5.99','2005-06-16 08:26:56','2006-02-15 22:22:11'),(15158,566,2,1982,'4.99','2005-06-17 10:12:15','2006-02-15 22:22:11'),(15159,566,1,2367,'0.99','2005-06-18 14:00:31','2006-02-15 22:22:11'),(15160,566,1,3379,'4.99','2005-06-21 13:54:58','2006-02-15 22:22:11'),(15161,566,2,3663,'4.99','2005-07-06 08:15:47','2006-02-15 22:22:11'),(15162,566,1,3943,'0.99','2005-07-06 21:22:17','2006-02-15 22:22:11'),(15163,566,1,3998,'3.99','2005-07-06 23:49:20','2006-02-15 22:22:12'),(15164,566,1,5079,'9.99','2005-07-09 05:20:40','2006-02-15 22:22:12'),(15165,566,2,6365,'2.99','2005-07-11 21:17:40','2006-02-15 22:22:12'),(15166,566,1,7677,'2.99','2005-07-28 02:56:37','2006-02-15 22:22:12'),(15167,566,2,7941,'0.99','2005-07-28 12:47:20','2006-02-15 22:22:12'),(15168,566,2,8118,'2.99','2005-07-28 19:22:22','2006-02-15 22:22:12'),(15169,566,1,8157,'6.99','2005-07-28 21:06:45','2006-02-15 22:22:12'),(15170,566,1,8257,'2.99','2005-07-29 01:03:20','2006-02-15 22:22:12'),(15171,566,2,8305,'1.99','2005-07-29 03:08:47','2006-02-15 22:22:12'),(15172,566,2,8660,'6.99','2005-07-29 15:26:59','2006-02-15 22:22:12'),(15173,566,1,8710,'0.99','2005-07-29 17:26:03','2006-02-15 22:22:12'),(15174,566,1,8797,'4.99','2005-07-29 21:10:37','2006-02-15 22:22:12'),(15175,566,2,9101,'4.99','2005-07-30 08:47:13','2006-02-15 22:22:12'),(15176,566,2,9470,'4.99','2005-07-30 23:01:31','2006-02-15 22:22:12'),(15177,566,1,9688,'3.99','2005-07-31 06:56:08','2006-02-15 22:22:12'),(15178,566,2,9915,'2.99','2005-07-31 14:52:26','2006-02-15 22:22:13'),(15179,566,2,10259,'2.99','2005-08-01 02:52:05','2006-02-15 22:22:13'),(15180,566,2,10289,'6.99','2005-08-01 03:39:48','2006-02-15 22:22:13'),(15181,566,2,11129,'2.99','2005-08-02 09:08:44','2006-02-15 22:22:13'),(15182,566,1,11717,'0.99','2005-08-17 07:44:09','2006-02-15 22:22:13'),(15183,566,1,11941,'1.99','2005-08-17 16:56:57','2006-02-15 22:22:13'),(15184,566,2,12382,'8.99','2005-08-18 08:32:33','2006-02-15 22:22:13'),(15185,566,2,12995,'4.99','2005-08-19 07:26:30','2006-02-15 22:22:13'),(15186,566,2,13762,'4.99','2005-08-20 11:29:32','2006-02-15 22:22:13'),(15187,566,1,14277,'3.99','2005-08-21 06:34:41','2006-02-15 22:22:13'),(15188,566,1,14297,'2.99','2005-08-21 07:13:46','2006-02-15 22:22:13'),(15189,567,2,2689,'4.99','2005-06-19 12:58:53','2006-02-15 22:22:13'),(15190,567,1,3010,'2.99','2005-06-20 10:29:59','2006-02-15 22:22:13'),(15191,567,1,3769,'5.99','2005-07-06 13:11:33','2006-02-15 22:22:13'),(15192,567,2,4457,'0.99','2005-07-07 23:45:38','2006-02-15 22:22:14'),(15193,567,2,4576,'0.99','2005-07-08 05:51:19','2006-02-15 22:22:14'),(15194,567,1,4949,'4.99','2005-07-08 22:57:10','2006-02-15 22:22:14'),(15195,567,2,6358,'2.99','2005-07-11 21:03:12','2006-02-15 22:22:14'),(15196,567,2,6551,'0.99','2005-07-12 05:03:43','2006-02-15 22:22:14'),(15197,567,2,7340,'2.99','2005-07-27 14:18:10','2006-02-15 22:22:14'),(15198,567,1,8201,'2.99','2005-07-28 23:10:48','2006-02-15 22:22:14'),(15199,567,1,8629,'2.99','2005-07-29 14:06:35','2006-02-15 22:22:14'),(15200,567,1,9279,'7.99','2005-07-30 15:15:21','2006-02-15 22:22:14'),(15201,567,1,9475,'6.99','2005-07-30 23:06:33','2006-02-15 22:22:14'),(15202,567,2,10708,'7.99','2005-08-01 18:43:28','2006-02-15 22:22:14'),(15203,567,2,11749,'2.99','2005-08-17 09:04:03','2006-02-15 22:22:14'),(15204,567,1,12119,'2.99','2005-08-17 23:16:44','2006-02-15 22:22:14'),(15205,567,2,13031,'2.99','2005-08-19 08:30:04','2006-02-15 22:22:14'),(15206,567,2,14839,'2.99','2005-08-22 01:58:15','2006-02-15 22:22:14'),(15207,567,2,15074,'5.99','2005-08-22 11:02:52','2006-02-15 22:22:15'),(15208,567,2,15594,'10.99','2005-08-23 06:18:43','2006-02-15 22:22:15'),(15209,568,2,1658,'4.99','2005-06-16 10:07:10','2006-02-15 22:22:15'),(15210,568,2,2382,'4.99','2005-06-18 15:03:52','2006-02-15 22:22:15'),(15211,568,2,2668,'0.99','2005-06-19 11:28:47','2006-02-15 22:22:15'),(15212,568,1,3227,'4.99','2005-06-21 02:18:25','2006-02-15 22:22:15'),(15213,568,2,3462,'1.99','2005-06-21 21:52:52','2006-02-15 22:22:15'),(15214,568,1,4322,'2.99','2005-07-07 17:54:37','2006-02-15 22:22:15'),(15215,568,2,5332,'2.99','2005-07-09 16:59:23','2006-02-15 22:22:15'),(15216,568,1,5622,'0.99','2005-07-10 05:39:37','2006-02-15 22:22:15'),(15217,568,1,5776,'4.99','2005-07-10 13:35:22','2006-02-15 22:22:15'),(15218,568,2,7068,'2.99','2005-07-27 03:57:50','2006-02-15 22:22:15'),(15219,568,2,8185,'0.99','2005-07-28 22:23:49','2006-02-15 22:22:15'),(15220,568,2,9583,'6.99','2005-07-31 03:05:21','2006-02-15 22:22:15'),(15221,568,1,9738,'0.99','2005-07-31 09:04:14','2006-02-15 22:22:16'),(15222,568,1,10340,'2.99','2005-08-01 05:07:03','2006-02-15 22:22:16'),(15223,568,2,10689,'0.99','2005-08-01 18:04:18','2006-02-15 22:22:16'),(15224,568,2,10869,'0.99','2005-08-02 00:26:54','2006-02-15 22:22:16'),(15225,568,1,11331,'2.99','2005-08-02 16:49:01','2006-02-15 22:22:16'),(15226,568,1,13883,'4.99','2005-08-20 15:28:53','2006-02-15 22:22:16'),(15227,568,2,15069,'5.99','2005-08-22 10:55:42','2006-02-15 22:22:16'),(15228,568,1,15203,'2.99','2005-08-22 16:28:00','2006-02-15 22:22:16'),(15229,568,2,14531,'2.99','2006-02-14 15:16:03','2006-02-15 22:22:16'),(15230,569,2,53,'4.99','2005-05-25 07:19:16','2006-02-15 22:22:16'),(15231,569,1,487,'4.99','2005-05-28 00:00:30','2006-02-15 22:22:16'),(15232,569,1,624,'4.99','2005-05-28 16:13:22','2006-02-15 22:22:16'),(15233,569,1,647,'1.99','2005-05-28 19:22:52','2006-02-15 22:22:16'),(15234,569,2,1037,'3.99','2005-05-31 05:22:25','2006-02-15 22:22:16'),(15235,569,1,1463,'6.99','2005-06-15 20:37:51','2006-02-15 22:22:16'),(15236,569,2,1668,'5.99','2005-06-16 10:19:52','2006-02-15 22:22:17'),(15237,569,1,4204,'5.99','2005-07-07 11:24:18','2006-02-15 22:22:17'),(15238,569,2,5003,'0.99','2005-07-09 01:19:03','2006-02-15 22:22:17'),(15239,569,2,6046,'5.99','2005-07-11 03:21:49','2006-02-15 22:22:17'),(15240,569,1,8910,'2.99','2005-07-30 01:29:48','2006-02-15 22:22:17'),(15241,569,2,9220,'1.99','2005-07-30 13:17:27','2006-02-15 22:22:17'),(15242,569,1,9399,'4.99','2005-07-30 20:14:50','2006-02-15 22:22:17'),(15243,569,2,9960,'1.99','2005-07-31 16:05:52','2006-02-15 22:22:17'),(15244,569,2,10192,'2.99','2005-08-01 00:33:00','2006-02-15 22:22:17'),(15245,569,2,10884,'0.99','2005-08-02 00:47:33','2006-02-15 22:22:17'),(15246,569,1,11030,'1.99','2005-08-02 05:51:20','2006-02-15 22:22:17'),(15247,569,2,11255,'4.99','2005-08-02 13:44:30','2006-02-15 22:22:17'),(15248,569,1,11354,'6.99','2005-08-02 17:35:10','2006-02-15 22:22:17'),(15249,569,1,11946,'4.99','2005-08-17 17:05:53','2006-02-15 22:22:17'),(15250,569,1,12157,'2.99','2005-08-18 00:33:45','2006-02-15 22:22:18'),(15251,569,2,12308,'0.99','2005-08-18 05:48:53','2006-02-15 22:22:18'),(15252,569,1,12568,'3.99','2005-08-18 15:15:44','2006-02-15 22:22:18'),(15253,569,2,12958,'2.99','2005-08-19 06:19:21','2006-02-15 22:22:18'),(15254,569,1,13287,'7.99','2005-08-19 18:28:24','2006-02-15 22:22:18'),(15255,569,2,13554,'9.99','2005-08-20 04:08:39','2006-02-15 22:22:18'),(15256,569,2,14207,'4.99','2005-08-21 04:08:19','2006-02-15 22:22:18'),(15257,569,2,14400,'0.99','2005-08-21 10:33:45','2006-02-15 22:22:18'),(15258,569,1,14896,'8.99','2005-08-22 04:20:55','2006-02-15 22:22:18'),(15259,569,1,14959,'2.99','2005-08-22 06:30:28','2006-02-15 22:22:18'),(15260,569,2,15617,'0.99','2005-08-23 07:07:22','2006-02-15 22:22:18'),(15261,569,2,16025,'4.99','2005-08-23 21:48:54','2006-02-15 22:22:18'),(15262,570,2,1060,'7.99','2005-05-31 08:21:43','2006-02-15 22:22:18'),(15263,570,1,1259,'4.99','2005-06-15 06:37:55','2006-02-15 22:22:18'),(15264,570,2,1417,'4.99','2005-06-15 17:45:51','2006-02-15 22:22:18'),(15265,570,2,1804,'2.99','2005-06-16 20:33:15','2006-02-15 22:22:19'),(15266,570,2,2008,'5.99','2005-06-17 11:48:05','2006-02-15 22:22:19'),(15267,570,2,2031,'6.99','2005-06-17 13:14:03','2006-02-15 22:22:19'),(15268,570,2,2261,'3.99','2005-06-18 05:46:15','2006-02-15 22:22:19'),(15269,570,2,3138,'2.99','2005-06-20 19:43:45','2006-02-15 22:22:19'),(15270,570,2,3984,'0.99','2005-07-06 23:22:36','2006-02-15 22:22:19'),(15271,570,1,4069,'0.99','2005-07-07 04:35:06','2006-02-15 22:22:19'),(15272,570,1,4698,'0.99','2005-07-08 11:19:31','2006-02-15 22:22:19'),(15273,570,2,5638,'4.99','2005-07-10 06:32:49','2006-02-15 22:22:19'),(15274,570,1,6253,'4.99','2005-07-11 15:07:19','2006-02-15 22:22:19'),(15275,570,1,6556,'0.99','2005-07-12 05:10:16','2006-02-15 22:22:19'),(15276,570,2,7174,'4.99','2005-07-27 08:00:36','2006-02-15 22:22:19'),(15277,570,2,8735,'4.99','2005-07-29 18:28:54','2006-02-15 22:22:19'),(15278,570,1,9385,'7.99','2005-07-30 19:25:49','2006-02-15 22:22:19'),(15279,570,1,9398,'0.99','2005-07-30 20:09:00','2006-02-15 22:22:20'),(15280,570,2,9432,'2.99','2005-07-30 21:26:18','2006-02-15 22:22:20'),(15281,570,1,9766,'4.99','2005-07-31 09:46:29','2006-02-15 22:22:20'),(15282,570,1,10004,'0.99','2005-07-31 17:51:23','2006-02-15 22:22:20'),(15283,570,2,10168,'2.99','2005-07-31 23:25:24','2006-02-15 22:22:20'),(15284,570,1,11098,'3.99','2005-08-02 08:06:18','2006-02-15 22:22:20'),(15285,570,2,12042,'4.99','2005-08-17 20:36:37','2006-02-15 22:22:20'),(15286,570,2,14768,'3.99','2005-08-21 23:44:53','2006-02-15 22:22:20'),(15287,570,1,12716,'0.99','2006-02-14 15:16:03','2006-02-15 22:22:20'),(15288,571,1,228,'9.99','2005-05-26 10:54:28','2006-02-15 22:22:20'),(15289,571,2,689,'3.99','2005-05-29 00:46:53','2006-02-15 22:22:20'),(15290,571,1,1254,'4.99','2005-06-15 06:11:16','2006-02-15 22:22:20'),(15291,571,2,1400,'3.99','2005-06-15 16:29:56','2006-02-15 22:22:20'),(15292,571,1,1756,'4.99','2005-06-16 17:22:33','2006-02-15 22:22:20'),(15293,571,2,1990,'4.99','2005-06-17 10:48:44','2006-02-15 22:22:20'),(15294,571,1,2327,'2.99','2005-06-18 10:16:40','2006-02-15 22:22:21'),(15295,571,1,2977,'10.99','2005-06-20 08:15:27','2006-02-15 22:22:21'),(15296,571,2,3616,'2.99','2005-07-06 05:52:13','2006-02-15 22:22:21'),(15297,571,1,4162,'4.99','2005-07-07 09:17:26','2006-02-15 22:22:21'),(15298,571,2,5789,'4.99','2005-07-10 14:11:26','2006-02-15 22:22:21'),(15299,571,2,6676,'8.99','2005-07-12 11:53:40','2006-02-15 22:22:21'),(15300,571,1,6792,'8.99','2005-07-12 16:37:28','2006-02-15 22:22:21'),(15301,571,1,8084,'5.99','2005-07-28 18:11:58','2006-02-15 22:22:21'),(15302,571,1,8638,'4.99','2005-07-29 14:30:23','2006-02-15 22:22:21'),(15303,571,2,9300,'1.99','2005-07-30 16:33:12','2006-02-15 22:22:21'),(15304,571,1,9408,'4.99','2005-07-30 20:32:09','2006-02-15 22:22:21'),(15305,571,1,10227,'2.99','2005-08-01 01:42:22','2006-02-15 22:22:21'),(15306,571,2,11080,'2.99','2005-08-02 07:29:56','2006-02-15 22:22:21'),(15307,571,2,11191,'7.99','2005-08-02 11:24:07','2006-02-15 22:22:21'),(15308,571,1,13228,'2.99','2005-08-19 16:08:16','2006-02-15 22:22:22'),(15309,571,2,13266,'2.99','2005-08-19 17:31:20','2006-02-15 22:22:22'),(15310,571,1,14956,'0.99','2005-08-22 06:26:16','2006-02-15 22:22:22'),(15311,571,1,15841,'4.99','2005-08-23 15:35:59','2006-02-15 22:22:22'),(15312,572,2,559,'7.99','2005-05-28 08:39:02','2006-02-15 22:22:22'),(15313,572,2,1889,'10.99','2005-06-17 04:05:12','2006-02-15 22:22:22'),(15314,572,1,2007,'0.99','2005-06-17 11:47:17','2006-02-15 22:22:22'),(15315,572,1,2458,'0.99','2005-06-18 19:39:05','2006-02-15 22:22:22'),(15316,572,1,4601,'2.99','2005-07-08 06:49:10','2006-02-15 22:22:22'),(15317,572,1,5595,'4.99','2005-07-10 04:33:45','2006-02-15 22:22:22'),(15318,572,1,5713,'6.99','2005-07-10 10:46:15','2006-02-15 22:22:22'),(15319,572,2,6108,'2.99','2005-07-11 07:19:24','2006-02-15 22:22:22'),(15320,572,1,7161,'4.99','2005-07-27 07:26:32','2006-02-15 22:22:22'),(15321,572,1,7345,'4.99','2005-07-27 14:29:53','2006-02-15 22:22:22'),(15322,572,2,7713,'6.99','2005-07-28 04:32:14','2006-02-15 22:22:23'),(15323,572,2,8342,'0.99','2005-07-29 04:45:05','2006-02-15 22:22:23'),(15324,572,1,8432,'0.99','2005-07-29 07:13:33','2006-02-15 22:22:23'),(15325,572,1,9081,'3.99','2005-07-30 08:09:58','2006-02-15 22:22:23'),(15326,572,2,9950,'5.99','2005-07-31 15:50:22','2006-02-15 22:22:23'),(15327,572,2,10204,'4.99','2005-08-01 00:47:39','2006-02-15 22:22:23'),(15328,572,1,11114,'0.99','2005-08-02 08:26:45','2006-02-15 22:22:23'),(15329,572,1,11121,'4.99','2005-08-02 08:48:31','2006-02-15 22:22:23'),(15330,572,2,11415,'2.99','2005-08-02 19:43:38','2006-02-15 22:22:23'),(15331,572,1,11426,'4.99','2005-08-02 20:00:09','2006-02-15 22:22:23'),(15332,572,1,11526,'4.99','2005-08-17 00:17:38','2006-02-15 22:22:23'),(15333,572,1,12256,'1.99','2005-08-18 04:09:39','2006-02-15 22:22:23'),(15334,572,2,13377,'1.99','2005-08-19 21:32:23','2006-02-15 22:22:23'),(15335,572,2,13523,'6.99','2005-08-20 02:47:03','2006-02-15 22:22:23'),(15336,572,1,13688,'5.99','2005-08-20 08:59:38','2006-02-15 22:22:23'),(15337,573,2,827,'2.99','2005-05-29 21:58:43','2006-02-15 22:22:24'),(15338,573,1,1613,'4.99','2005-06-16 06:55:10','2006-02-15 22:22:24'),(15339,573,2,2622,'5.99','2005-06-19 08:10:41','2006-02-15 22:22:24'),(15340,573,1,2995,'1.99','2005-06-20 09:18:22','2006-02-15 22:22:24'),(15341,573,1,3295,'7.99','2005-06-21 07:04:17','2006-02-15 22:22:24'),(15342,573,2,3768,'0.99','2005-07-06 13:07:30','2006-02-15 22:22:24'),(15343,573,1,3930,'2.99','2005-07-06 20:54:07','2006-02-15 22:22:24'),(15344,573,2,4023,'4.99','2005-07-07 01:55:25','2006-02-15 22:22:24'),(15345,573,1,4085,'0.99','2005-07-07 05:25:39','2006-02-15 22:22:24'),(15346,573,1,4609,'0.99','2005-07-08 07:22:29','2006-02-15 22:22:24'),(15347,573,1,4770,'2.99','2005-07-08 15:29:46','2006-02-15 22:22:24'),(15348,573,1,5036,'5.99','2005-07-09 02:58:41','2006-02-15 22:22:24'),(15349,573,2,5522,'9.99','2005-07-10 01:46:29','2006-02-15 22:22:24'),(15350,573,2,5903,'2.99','2005-07-10 20:39:04','2006-02-15 22:22:24'),(15351,573,1,6693,'7.99','2005-07-12 12:37:00','2006-02-15 22:22:25'),(15352,573,1,8400,'4.99','2005-07-29 06:23:56','2006-02-15 22:22:25'),(15353,573,2,9837,'10.99','2005-07-31 12:14:19','2006-02-15 22:22:25'),(15354,573,2,9846,'4.99','2005-07-31 12:30:12','2006-02-15 22:22:25'),(15355,573,2,9963,'2.99','2005-07-31 16:16:46','2006-02-15 22:22:25'),(15356,573,2,9971,'5.99','2005-07-31 16:42:16','2006-02-15 22:22:25'),(15357,573,1,10296,'0.99','2005-08-01 04:04:37','2006-02-15 22:22:25'),(15358,573,1,10887,'2.99','2005-08-02 00:52:35','2006-02-15 22:22:25'),(15359,573,1,11043,'0.99','2005-08-02 06:04:44','2006-02-15 22:22:25'),(15360,573,2,11912,'5.99','2005-08-17 15:51:49','2006-02-15 22:22:25'),(15361,573,1,12017,'1.99','2005-08-17 19:33:49','2006-02-15 22:22:25'),(15362,573,1,12125,'1.99','2005-08-17 23:24:25','2006-02-15 22:22:25'),(15363,573,1,12269,'6.99','2005-08-18 04:27:54','2006-02-15 22:22:25'),(15364,573,1,12791,'0.99','2005-08-19 00:17:09','2006-02-15 22:22:25'),(15365,573,2,13113,'2.99','2005-08-19 11:27:20','2006-02-15 22:22:25'),(15366,574,2,433,'0.99','2005-05-27 16:40:40','2006-02-15 22:22:26'),(15367,574,1,1559,'0.99','2005-06-16 02:35:03','2006-02-15 22:22:26'),(15368,574,2,1636,'5.99','2005-06-16 08:28:54','2006-02-15 22:22:26'),(15369,574,1,1817,'0.99','2005-06-16 21:20:52','2006-02-15 22:22:26'),(15370,574,1,2632,'0.99','2005-06-19 08:51:47','2006-02-15 22:22:26'),(15371,574,1,3220,'6.99','2005-06-21 01:46:25','2006-02-15 22:22:26'),(15372,574,1,3583,'7.99','2005-07-06 04:10:43','2006-02-15 22:22:26'),(15373,574,1,4004,'4.99','2005-07-07 00:20:51','2006-02-15 22:22:26'),(15374,574,1,4212,'4.99','2005-07-07 11:53:14','2006-02-15 22:22:26'),(15375,574,2,4890,'2.99','2005-07-08 20:05:38','2006-02-15 22:22:26'),(15376,574,2,5010,'4.99','2005-07-09 01:33:23','2006-02-15 22:22:26'),(15377,574,1,5076,'3.99','2005-07-09 05:13:22','2006-02-15 22:22:26'),(15378,574,1,5077,'3.99','2005-07-09 05:18:01','2006-02-15 22:22:26'),(15379,574,1,5640,'2.99','2005-07-10 06:38:00','2006-02-15 22:22:26'),(15380,574,1,6523,'2.99','2005-07-12 04:14:19','2006-02-15 22:22:27'),(15381,574,1,7093,'1.99','2005-07-27 04:47:00','2006-02-15 22:22:27'),(15382,574,1,7134,'2.99','2005-07-27 06:33:06','2006-02-15 22:22:27'),(15383,574,1,7964,'2.99','2005-07-28 13:49:58','2006-02-15 22:22:27'),(15384,574,1,8303,'4.99','2005-07-29 03:05:56','2006-02-15 22:22:27'),(15385,574,1,9589,'7.99','2005-07-31 03:13:29','2006-02-15 22:22:27'),(15386,574,1,9759,'3.99','2005-07-31 09:25:57','2006-02-15 22:22:27'),(15387,574,1,10347,'4.99','2005-08-01 05:20:03','2006-02-15 22:22:27'),(15388,574,2,11775,'3.99','2005-08-17 10:25:53','2006-02-15 22:22:27'),(15389,574,1,12462,'2.99','2005-08-18 11:28:55','2006-02-15 22:22:27'),(15390,574,1,13589,'4.99','2005-08-20 05:47:25','2006-02-15 22:22:27'),(15391,574,1,14076,'4.99','2005-08-20 23:20:10','2006-02-15 22:22:27'),(15392,574,2,14941,'2.99','2005-08-22 05:58:23','2006-02-15 22:22:27'),(15393,574,2,15214,'2.99','2005-08-22 16:53:29','2006-02-15 22:22:27'),(15394,575,1,17,'2.99','2005-05-25 01:06:36','2006-02-15 22:22:27'),(15395,575,1,395,'0.99','2005-05-27 11:45:49','2006-02-15 22:22:28'),(15396,575,2,454,'4.99','2005-05-27 19:31:36','2006-02-15 22:22:28'),(15397,575,2,769,'2.99','2005-05-29 12:51:44','2006-02-15 22:22:28'),(15398,575,1,774,'4.99','2005-05-29 13:19:43','2006-02-15 22:22:28'),(15399,575,2,1494,'2.99','2005-06-15 21:54:20','2006-02-15 22:22:28'),(15400,575,1,1824,'2.99','2005-06-16 21:51:04','2006-02-15 22:22:28'),(15401,575,2,1866,'4.99','2005-06-17 01:53:19','2006-02-15 22:22:28'),(15402,575,1,3558,'6.99','2005-07-06 02:49:06','2006-02-15 22:22:28'),(15403,575,2,5875,'8.99','2005-07-10 19:06:47','2006-02-15 22:22:28'),(15404,575,2,6907,'2.99','2005-07-12 22:03:49','2006-02-15 22:22:28'),(15405,575,1,7083,'0.99','2005-07-27 04:28:39','2006-02-15 22:22:28'),(15406,575,1,7139,'2.99','2005-07-27 06:52:21','2006-02-15 22:22:28'),(15407,575,2,8711,'2.99','2005-07-29 17:27:15','2006-02-15 22:22:28'),(15408,575,2,8904,'0.99','2005-07-30 01:08:33','2006-02-15 22:22:28'),(15409,575,2,8989,'4.99','2005-07-30 04:39:19','2006-02-15 22:22:29'),(15410,575,1,9733,'4.99','2005-07-31 08:57:35','2006-02-15 22:22:29'),(15411,575,1,10331,'4.99','2005-08-01 04:57:14','2006-02-15 22:22:29'),(15412,575,2,10629,'7.99','2005-08-01 15:33:32','2006-02-15 22:22:29'),(15413,575,1,11097,'3.99','2005-08-02 08:05:46','2006-02-15 22:22:29'),(15414,575,1,11458,'4.99','2005-08-02 21:24:02','2006-02-15 22:22:29'),(15415,575,1,12204,'7.99','2005-08-18 02:20:35','2006-02-15 22:22:29'),(15416,575,2,12289,'8.99','2005-08-18 05:05:28','2006-02-15 22:22:29'),(15417,575,2,12770,'5.99','2005-08-18 23:29:00','2006-02-15 22:22:29'),(15418,575,2,13408,'4.99','2005-08-19 22:34:51','2006-02-15 22:22:29'),(15419,575,2,13465,'2.99','2005-08-20 00:54:14','2006-02-15 22:22:29'),(15420,575,2,14952,'2.99','2005-08-22 06:20:07','2006-02-15 22:22:29'),(15421,575,2,15749,'4.99','2005-08-23 12:33:41','2006-02-15 22:22:29'),(15422,575,2,15857,'0.99','2005-08-23 15:59:51','2006-02-15 22:22:29'),(15423,576,2,755,'2.99','2005-05-29 10:26:29','2006-02-15 22:22:30'),(15424,576,1,968,'0.99','2005-05-30 19:20:03','2006-02-15 22:22:30'),(15425,576,1,1366,'4.99','2005-06-15 14:21:00','2006-02-15 22:22:30'),(15426,576,2,1742,'2.99','2005-06-16 16:37:48','2006-02-15 22:22:30'),(15427,576,1,2309,'0.99','2005-06-18 08:43:24','2006-02-15 22:22:30'),(15428,576,2,2444,'8.99','2005-06-18 18:58:12','2006-02-15 22:22:30'),(15429,576,1,2651,'3.99','2005-06-19 10:22:56','2006-02-15 22:22:30'),(15430,576,2,2799,'4.99','2005-06-19 19:15:21','2006-02-15 22:22:30'),(15431,576,2,3226,'6.99','2005-06-21 02:18:14','2006-02-15 22:22:30'),(15432,576,1,3877,'4.99','2005-07-06 18:22:10','2006-02-15 22:22:30'),(15433,576,2,3889,'0.99','2005-07-06 18:56:25','2006-02-15 22:22:30'),(15434,576,2,3934,'4.99','2005-07-06 21:07:23','2006-02-15 22:22:30'),(15435,576,1,4514,'4.99','2005-07-08 02:41:25','2006-02-15 22:22:30'),(15436,576,2,5597,'3.99','2005-07-10 04:47:57','2006-02-15 22:22:30'),(15437,576,1,5934,'4.99','2005-07-10 22:07:59','2006-02-15 22:22:30'),(15438,576,2,7319,'1.99','2005-07-27 13:31:25','2006-02-15 22:22:31'),(15439,576,1,7605,'3.99','2005-07-27 23:57:01','2006-02-15 22:22:31'),(15440,576,1,8907,'4.99','2005-07-30 01:25:03','2006-02-15 22:22:31'),(15441,576,1,9133,'5.99','2005-07-30 09:59:00','2006-02-15 22:22:31'),(15442,576,2,9548,'5.99','2005-07-31 01:54:19','2006-02-15 22:22:31'),(15443,576,2,9620,'8.99','2005-07-31 04:19:18','2006-02-15 22:22:31'),(15444,576,2,9962,'0.99','2005-07-31 16:10:36','2006-02-15 22:22:31'),(15445,576,1,9979,'2.99','2005-07-31 17:00:07','2006-02-15 22:22:31'),(15446,576,1,10000,'2.99','2005-07-31 17:41:05','2006-02-15 22:22:31'),(15447,576,2,10724,'3.99','2005-08-01 19:10:59','2006-02-15 22:22:31'),(15448,576,2,12112,'5.99','2005-08-17 23:00:31','2006-02-15 22:22:31'),(15449,576,1,12245,'4.99','2005-08-18 03:46:40','2006-02-15 22:22:31'),(15450,576,1,13061,'4.99','2005-08-19 09:43:39','2006-02-15 22:22:31'),(15451,576,1,13326,'4.99','2005-08-19 19:52:52','2006-02-15 22:22:31'),(15452,576,1,14501,'4.99','2005-08-21 14:14:38','2006-02-15 22:22:32'),(15453,576,1,14541,'0.99','2005-08-21 15:34:32','2006-02-15 22:22:32'),(15454,576,1,15634,'0.99','2005-08-23 07:34:18','2006-02-15 22:22:32'),(15455,576,2,11942,'5.98','2006-02-14 15:16:03','2006-02-15 22:22:32'),(15456,576,1,13464,'0.00','2006-02-14 15:16:03','2006-02-15 22:22:32'),(15457,577,2,291,'5.99','2005-05-26 20:20:47','2006-02-15 22:22:32'),(15458,577,2,NULL,'0.99','2005-05-27 00:46:39','2006-02-15 22:22:32'),(15459,577,2,2399,'3.99','2005-06-18 16:06:14','2006-02-15 22:22:32'),(15460,577,2,3286,'2.99','2005-06-21 06:31:29','2006-02-15 22:22:32'),(15461,577,2,3401,'6.99','2005-06-21 15:52:43','2006-02-15 22:22:32'),(15462,577,2,3599,'0.99','2005-07-06 05:16:36','2006-02-15 22:22:32'),(15463,577,1,3785,'7.99','2005-07-06 14:00:13','2006-02-15 22:22:32'),(15464,577,1,4922,'2.99','2005-07-08 21:44:00','2006-02-15 22:22:32'),(15465,577,1,6500,'2.99','2005-07-12 03:11:23','2006-02-15 22:22:32'),(15466,577,2,6534,'2.99','2005-07-12 04:39:43','2006-02-15 22:22:33'),(15467,577,2,7197,'0.99','2005-07-27 08:49:32','2006-02-15 22:22:33'),(15468,577,1,7371,'4.99','2005-07-27 15:18:42','2006-02-15 22:22:33'),(15469,577,2,7876,'8.99','2005-07-28 10:24:22','2006-02-15 22:22:33'),(15470,577,1,8043,'5.99','2005-07-28 16:45:44','2006-02-15 22:22:33'),(15471,577,1,8060,'6.99','2005-07-28 17:10:02','2006-02-15 22:22:33'),(15472,577,2,8671,'6.99','2005-07-29 15:49:37','2006-02-15 22:22:33'),(15473,577,2,10323,'4.99','2005-08-01 04:44:58','2006-02-15 22:22:33'),(15474,577,1,10487,'0.99','2005-08-01 10:26:34','2006-02-15 22:22:33'),(15475,577,1,10782,'4.99','2005-08-01 21:23:25','2006-02-15 22:22:33'),(15476,577,1,11054,'7.99','2005-08-02 06:33:07','2006-02-15 22:22:33'),(15477,577,2,11464,'0.99','2005-08-02 21:42:07','2006-02-15 22:22:33'),(15478,577,1,12664,'4.99','2005-08-18 19:10:54','2006-02-15 22:22:33'),(15479,577,2,12671,'0.99','2005-08-18 19:19:59','2006-02-15 22:22:33'),(15480,577,2,13200,'3.99','2005-08-19 14:55:58','2006-02-15 22:22:33'),(15481,577,2,13500,'3.99','2005-08-20 01:54:39','2006-02-15 22:22:34'),(15482,577,2,15480,'2.99','2005-08-23 01:57:20','2006-02-15 22:22:34'),(15483,577,2,15873,'2.99','2005-08-23 16:27:59','2006-02-15 22:22:34'),(15484,577,2,16003,'4.99','2005-08-23 20:47:28','2006-02-15 22:22:34'),(15485,578,2,660,'0.99','2005-05-28 20:53:31','2006-02-15 22:22:34'),(15486,578,2,1826,'6.99','2005-06-16 21:53:52','2006-02-15 22:22:34'),(15487,578,2,2615,'4.99','2005-06-19 07:29:13','2006-02-15 22:22:34'),(15488,578,1,3305,'2.99','2005-06-21 07:46:57','2006-02-15 22:22:34'),(15489,578,2,4496,'4.99','2005-07-08 01:44:19','2006-02-15 22:22:34'),(15490,578,1,5377,'4.99','2005-07-09 19:04:30','2006-02-15 22:22:34'),(15491,578,1,5445,'0.99','2005-07-09 21:59:41','2006-02-15 22:22:34'),(15492,578,2,5876,'4.99','2005-07-10 19:07:15','2006-02-15 22:22:34'),(15493,578,1,6784,'4.99','2005-07-12 16:28:49','2006-02-15 22:22:34'),(15494,578,1,6830,'0.99','2005-07-12 18:42:55','2006-02-15 22:22:34'),(15495,578,2,7059,'5.99','2005-07-27 03:51:02','2006-02-15 22:22:35'),(15496,578,1,8179,'2.99','2005-07-28 22:05:13','2006-02-15 22:22:35'),(15497,578,1,8218,'2.99','2005-07-28 23:45:41','2006-02-15 22:22:35'),(15498,578,2,9970,'4.99','2005-07-31 16:38:24','2006-02-15 22:22:35'),(15499,578,1,10029,'6.99','2005-07-31 18:37:47','2006-02-15 22:22:35'),(15500,578,2,10182,'2.99','2005-08-01 00:08:01','2006-02-15 22:22:35'),(15501,578,1,10779,'7.99','2005-08-01 21:11:54','2006-02-15 22:22:35'),(15502,578,1,11199,'7.99','2005-08-02 11:47:40','2006-02-15 22:22:35'),(15503,578,2,13071,'5.99','2005-08-19 10:01:07','2006-02-15 22:22:35'),(15504,578,2,13498,'5.99','2005-08-20 01:51:23','2006-02-15 22:22:35'),(15505,578,2,13552,'2.99','2005-08-20 04:03:51','2006-02-15 22:22:35'),(15506,578,1,15652,'0.99','2005-08-23 08:34:10','2006-02-15 22:22:35'),(15507,579,2,2425,'5.99','2005-06-18 17:37:45','2006-02-15 22:22:35'),(15508,579,1,2522,'3.99','2005-06-19 00:43:42','2006-02-15 22:22:35'),(15509,579,1,3111,'2.99','2005-06-20 17:46:47','2006-02-15 22:22:36'),(15510,579,1,4619,'9.99','2005-07-08 08:01:09','2006-02-15 22:22:36'),(15511,579,1,4933,'2.99','2005-07-08 22:18:29','2006-02-15 22:22:36'),(15512,579,1,6304,'4.99','2005-07-11 18:02:16','2006-02-15 22:22:36'),(15513,579,2,6814,'1.99','2005-07-12 18:11:58','2006-02-15 22:22:36'),(15514,579,2,6824,'6.99','2005-07-12 18:26:46','2006-02-15 22:22:36'),(15515,579,2,6969,'8.99','2005-07-27 00:23:54','2006-02-15 22:22:36'),(15516,579,2,7221,'2.99','2005-07-27 09:37:35','2006-02-15 22:22:36'),(15517,579,1,8354,'0.99','2005-07-29 04:56:26','2006-02-15 22:22:36'),(15518,579,1,8876,'0.99','2005-07-30 00:15:09','2006-02-15 22:22:36'),(15519,579,1,8996,'0.99','2005-07-30 04:53:23','2006-02-15 22:22:36'),(15520,579,2,9349,'9.99','2005-07-30 18:20:08','2006-02-15 22:22:36'),(15521,579,2,9553,'5.99','2005-07-31 02:06:34','2006-02-15 22:22:36'),(15522,579,2,9976,'2.99','2005-07-31 16:57:49','2006-02-15 22:22:36'),(15523,579,2,9997,'4.99','2005-07-31 17:37:30','2006-02-15 22:22:37'),(15524,579,1,11494,'3.99','2005-08-02 22:51:23','2006-02-15 22:22:37'),(15525,579,2,12051,'6.99','2005-08-17 20:56:15','2006-02-15 22:22:37'),(15526,579,2,12315,'5.99','2005-08-18 06:15:06','2006-02-15 22:22:37'),(15527,579,2,14047,'2.99','2005-08-20 22:00:43','2006-02-15 22:22:37'),(15528,579,1,14185,'0.99','2005-08-21 03:28:37','2006-02-15 22:22:37'),(15529,579,1,14543,'1.99','2005-08-21 15:39:01','2006-02-15 22:22:37'),(15530,579,2,14560,'2.99','2005-08-21 16:13:47','2006-02-15 22:22:37'),(15531,579,2,15601,'0.99','2005-08-23 06:33:26','2006-02-15 22:22:37'),(15532,579,1,15838,'4.99','2005-08-23 15:30:48','2006-02-15 22:22:37'),(15533,579,2,15794,'0.99','2006-02-14 15:16:03','2006-02-15 22:22:37'),(15534,580,1,611,'0.99','2005-05-28 15:18:18','2006-02-15 22:22:37'),(15535,580,1,1469,'0.99','2005-06-15 20:52:36','2006-02-15 22:22:37'),(15536,580,2,3571,'1.99','2005-07-06 03:32:31','2006-02-15 22:22:37'),(15537,580,2,3867,'1.99','2005-07-06 17:52:19','2006-02-15 22:22:38'),(15538,580,2,4169,'1.99','2005-07-07 09:39:18','2006-02-15 22:22:38'),(15539,580,2,4590,'3.99','2005-07-08 06:27:48','2006-02-15 22:22:38'),(15540,580,1,5937,'6.99','2005-07-10 22:16:08','2006-02-15 22:22:38'),(15541,580,1,6089,'2.99','2005-07-11 05:45:59','2006-02-15 22:22:38'),(15542,580,2,6170,'2.99','2005-07-11 10:29:21','2006-02-15 22:22:38'),(15543,580,1,7620,'0.99','2005-07-28 00:27:17','2006-02-15 22:22:38'),(15544,580,2,8784,'4.99','2005-07-29 20:35:37','2006-02-15 22:22:38'),(15545,580,1,8839,'3.99','2005-07-29 22:52:34','2006-02-15 22:22:38'),(15546,580,1,9199,'0.99','2005-07-30 12:38:00','2006-02-15 22:22:38'),(15547,580,1,9239,'3.99','2005-07-30 13:50:52','2006-02-15 22:22:38'),(15548,580,1,9460,'5.99','2005-07-30 22:25:39','2006-02-15 22:22:38'),(15549,580,2,9604,'4.99','2005-07-31 03:47:12','2006-02-15 22:22:38'),(15550,580,2,9865,'0.99','2005-07-31 13:10:45','2006-02-15 22:22:38'),(15551,580,1,10723,'3.99','2005-08-01 19:10:49','2006-02-15 22:22:38'),(15552,580,2,10965,'3.99','2005-08-02 04:00:19','2006-02-15 22:22:39'),(15553,580,1,11164,'8.99','2005-08-02 10:10:56','2006-02-15 22:22:39'),(15554,580,2,12670,'2.99','2005-08-18 19:17:58','2006-02-15 22:22:39'),(15555,580,2,13313,'2.99','2005-08-19 19:11:41','2006-02-15 22:22:39'),(15556,580,2,13742,'2.99','2005-08-20 10:49:15','2006-02-15 22:22:39'),(15557,580,2,14818,'2.99','2005-08-22 01:17:18','2006-02-15 22:22:39'),(15558,580,1,15157,'6.99','2005-08-22 14:30:09','2006-02-15 22:22:39'),(15559,580,1,15630,'6.99','2005-08-23 07:29:13','2006-02-15 22:22:39'),(15560,580,1,15947,'4.99','2005-08-23 18:54:32','2006-02-15 22:22:39'),(15561,581,1,976,'4.99','2005-05-30 21:11:19','2006-02-15 22:22:39'),(15562,581,1,1151,'4.99','2005-05-31 21:29:00','2006-02-15 22:22:39'),(15563,581,2,1958,'3.99','2005-06-17 08:52:01','2006-02-15 22:22:39'),(15564,581,2,2101,'2.99','2005-06-17 18:57:02','2006-02-15 22:22:39'),(15565,581,1,2137,'4.99','2005-06-17 21:18:28','2006-02-15 22:22:39'),(15566,581,2,4210,'2.99','2005-07-07 11:36:20','2006-02-15 22:22:40'),(15567,581,2,4244,'2.99','2005-07-07 13:41:58','2006-02-15 22:22:40'),(15568,581,1,4338,'4.99','2005-07-07 18:39:56','2006-02-15 22:22:40'),(15569,581,2,4613,'0.99','2005-07-08 07:44:49','2006-02-15 22:22:40'),(15570,581,1,4669,'5.99','2005-07-08 10:13:08','2006-02-15 22:22:40'),(15571,581,1,4815,'8.99','2005-07-08 17:12:51','2006-02-15 22:22:40'),(15572,581,1,4833,'1.99','2005-07-08 18:07:35','2006-02-15 22:22:40'),(15573,581,1,5516,'4.99','2005-07-10 01:13:52','2006-02-15 22:22:40'),(15574,581,1,5707,'4.99','2005-07-10 10:26:14','2006-02-15 22:22:40'),(15575,581,2,5812,'2.99','2005-07-10 15:27:56','2006-02-15 22:22:40'),(15576,581,2,7048,'7.99','2005-07-27 03:31:48','2006-02-15 22:22:40'),(15577,581,1,7783,'2.99','2005-07-28 07:14:43','2006-02-15 22:22:40'),(15578,581,1,9278,'2.99','2005-07-30 15:15:19','2006-02-15 22:22:40'),(15579,581,1,9449,'1.99','2005-07-30 22:02:34','2006-02-15 22:22:40'),(15580,581,2,11443,'2.99','2005-08-02 20:29:30','2006-02-15 22:22:41'),(15581,581,2,11707,'2.99','2005-08-17 07:24:59','2006-02-15 22:22:41'),(15582,581,2,13621,'0.99','2005-08-20 06:43:44','2006-02-15 22:22:41'),(15583,581,2,13712,'2.99','2005-08-20 09:38:04','2006-02-15 22:22:41'),(15584,581,2,14070,'8.99','2005-08-20 22:56:34','2006-02-15 22:22:41'),(15585,581,1,14976,'2.99','2005-08-22 07:10:26','2006-02-15 22:22:41'),(15586,581,1,15403,'0.99','2005-08-22 23:18:10','2006-02-15 22:22:41'),(15587,581,2,15792,'4.99','2005-08-23 14:05:37','2006-02-15 22:22:41'),(15588,582,1,281,'0.99','2005-05-26 18:49:35','2006-02-15 22:22:41'),(15589,582,1,1719,'2.99','2005-06-16 14:55:53','2006-02-15 22:22:41'),(15590,582,1,2337,'7.99','2005-06-18 11:15:27','2006-02-15 22:22:41'),(15591,582,2,3071,'0.99','2005-06-20 14:20:42','2006-02-15 22:22:41'),(15592,582,1,3767,'0.99','2005-07-06 13:07:27','2006-02-15 22:22:41'),(15593,582,2,6629,'5.99','2005-07-12 09:18:35','2006-02-15 22:22:41'),(15594,582,2,7126,'4.99','2005-07-27 06:13:13','2006-02-15 22:22:42'),(15595,582,2,7311,'6.99','2005-07-27 13:02:54','2006-02-15 22:22:42'),(15596,582,2,7412,'5.99','2005-07-27 16:44:34','2006-02-15 22:22:42'),(15597,582,1,7575,'2.99','2005-07-27 22:53:52','2006-02-15 22:22:42'),(15598,582,2,8308,'5.99','2005-07-29 03:22:15','2006-02-15 22:22:42'),(15599,582,1,8554,'2.99','2005-07-29 11:16:29','2006-02-15 22:22:42'),(15600,582,1,8778,'6.99','2005-07-29 20:14:25','2006-02-15 22:22:42'),(15601,582,1,9768,'9.99','2005-07-31 09:48:41','2006-02-15 22:22:42'),(15602,582,2,11290,'7.99','2005-08-02 14:57:44','2006-02-15 22:22:42'),(15603,582,1,11667,'5.99','2005-08-17 05:46:55','2006-02-15 22:22:42'),(15604,582,1,11708,'2.99','2005-08-17 07:26:47','2006-02-15 22:22:42'),(15605,582,2,13815,'5.99','2005-08-20 13:08:53','2006-02-15 22:22:42'),(15606,582,1,14376,'4.99','2005-08-21 09:48:56','2006-02-15 22:22:42'),(15607,582,1,14568,'0.99','2005-08-21 16:30:48','2006-02-15 22:22:42'),(15608,582,1,15090,'5.99','2005-08-22 11:34:33','2006-02-15 22:22:43'),(15609,582,1,15503,'2.99','2005-08-23 02:44:49','2006-02-15 22:22:43'),(15610,582,1,15539,'0.99','2005-08-23 04:09:03','2006-02-15 22:22:43'),(15611,582,2,15911,'4.99','2005-08-23 17:44:53','2006-02-15 22:22:43'),(15612,582,2,12127,'2.99','2006-02-14 15:16:03','2006-02-15 22:22:43'),(15613,583,1,1428,'3.99','2005-06-15 18:19:30','2006-02-15 22:22:43'),(15614,583,1,2429,'9.99','2005-06-18 17:48:28','2006-02-15 22:22:43'),(15615,583,2,2663,'4.99','2005-06-19 10:54:00','2006-02-15 22:22:43'),(15616,583,2,2845,'5.99','2005-06-19 22:46:37','2006-02-15 22:22:43'),(15617,583,2,2879,'3.99','2005-06-20 01:24:10','2006-02-15 22:22:43'),(15618,583,1,3424,'0.99','2005-06-21 17:42:51','2006-02-15 22:22:43'),(15619,583,1,3779,'2.99','2005-07-06 13:46:36','2006-02-15 22:22:43'),(15620,583,1,3842,'4.99','2005-07-06 16:34:32','2006-02-15 22:22:43'),(15621,583,2,3991,'9.99','2005-07-06 23:33:41','2006-02-15 22:22:43'),(15622,583,1,4464,'4.99','2005-07-08 00:07:18','2006-02-15 22:22:43'),(15623,583,1,5462,'0.99','2005-07-09 22:56:53','2006-02-15 22:22:44'),(15624,583,1,5478,'5.99','2005-07-09 23:45:15','2006-02-15 22:22:44'),(15625,583,2,5747,'7.99','2005-07-10 12:15:33','2006-02-15 22:22:44'),(15626,583,2,6684,'6.99','2005-07-12 12:14:42','2006-02-15 22:22:44'),(15627,583,1,7401,'5.99','2005-07-27 16:17:55','2006-02-15 22:22:44'),(15628,583,2,8568,'7.99','2005-07-29 11:38:22','2006-02-15 22:22:44'),(15629,583,1,9550,'7.99','2005-07-31 01:57:34','2006-02-15 22:22:44'),(15630,583,2,9808,'1.99','2005-07-31 11:17:22','2006-02-15 22:22:44'),(15631,583,2,10301,'4.99','2005-08-01 04:09:37','2006-02-15 22:22:44'),(15632,583,2,10586,'2.99','2005-08-01 14:00:59','2006-02-15 22:22:44'),(15633,583,2,10800,'4.99','2005-08-01 22:07:44','2006-02-15 22:22:44'),(15634,583,2,11002,'4.99','2005-08-02 05:02:56','2006-02-15 22:22:44'),(15635,583,1,14259,'0.99','2005-08-21 06:00:22','2006-02-15 22:22:44'),(15636,584,2,379,'4.99','2005-05-27 09:25:32','2006-02-15 22:22:44'),(15637,584,1,626,'4.99','2005-05-28 16:58:09','2006-02-15 22:22:45'),(15638,584,1,920,'4.99','2005-05-30 11:44:01','2006-02-15 22:22:45'),(15639,584,2,1436,'3.99','2005-06-15 18:35:40','2006-02-15 22:22:45'),(15640,584,2,3317,'6.99','2005-06-21 08:22:32','2006-02-15 22:22:45'),(15641,584,2,3741,'2.99','2005-07-06 12:00:18','2006-02-15 22:22:45'),(15642,584,2,3895,'7.99','2005-07-06 19:04:24','2006-02-15 22:22:45'),(15643,584,1,4410,'0.99','2005-07-07 21:48:16','2006-02-15 22:22:45'),(15644,584,1,4977,'0.99','2005-07-09 00:15:50','2006-02-15 22:22:45'),(15645,584,2,6954,'0.99','2005-07-26 23:55:13','2006-02-15 22:22:45'),(15646,584,1,7186,'2.99','2005-07-27 08:26:12','2006-02-15 22:22:45'),(15647,584,1,7372,'4.99','2005-07-27 15:18:42','2006-02-15 22:22:45'),(15648,584,1,7659,'4.99','2005-07-28 02:09:45','2006-02-15 22:22:45'),(15649,584,2,8879,'4.99','2005-07-30 00:16:02','2006-02-15 22:22:45'),(15650,584,2,9451,'3.99','2005-07-30 22:10:17','2006-02-15 22:22:45'),(15651,584,1,9719,'5.99','2005-07-31 08:25:13','2006-02-15 22:22:46'),(15652,584,2,10073,'2.99','2005-07-31 19:53:15','2006-02-15 22:22:46'),(15653,584,1,10914,'4.99','2005-08-02 02:04:43','2006-02-15 22:22:46'),(15654,584,2,10966,'0.99','2005-08-02 04:00:47','2006-02-15 22:22:46'),(15655,584,1,11213,'4.99','2005-08-02 12:18:35','2006-02-15 22:22:46'),(15656,584,2,11500,'6.99','2005-08-16 23:01:22','2006-02-15 22:22:46'),(15657,584,2,12507,'8.99','2005-08-18 13:19:13','2006-02-15 22:22:46'),(15658,584,2,12541,'2.99','2005-08-18 14:18:30','2006-02-15 22:22:46'),(15659,584,2,12693,'5.99','2005-08-18 20:10:19','2006-02-15 22:22:46'),(15660,584,1,12844,'2.99','2005-08-19 01:59:08','2006-02-15 22:22:46'),(15661,584,2,14102,'5.99','2005-08-21 00:35:21','2006-02-15 22:22:46'),(15662,584,2,14230,'5.99','2005-08-21 04:57:29','2006-02-15 22:22:46'),(15663,584,2,14447,'4.99','2005-08-21 12:12:05','2006-02-15 22:22:46'),(15664,584,1,14930,'1.99','2005-08-22 05:38:32','2006-02-15 22:22:46'),(15665,584,1,15615,'0.99','2005-08-23 07:06:00','2006-02-15 22:22:47'),(15666,585,1,1344,'0.99','2005-06-15 12:29:41','2006-02-15 22:22:47'),(15667,585,2,1346,'7.99','2005-06-15 12:39:52','2006-02-15 22:22:47'),(15668,585,1,2674,'0.99','2005-06-19 11:47:59','2006-02-15 22:22:47'),(15669,585,1,2930,'3.99','2005-06-20 04:50:29','2006-02-15 22:22:47'),(15670,585,2,4156,'4.99','2005-07-07 09:03:51','2006-02-15 22:22:47'),(15671,585,2,4579,'4.99','2005-07-08 06:01:56','2006-02-15 22:22:47'),(15672,585,1,4684,'9.99','2005-07-08 10:41:06','2006-02-15 22:22:47'),(15673,585,2,5284,'2.99','2005-07-09 15:08:21','2006-02-15 22:22:47'),(15674,585,2,5950,'4.99','2005-07-10 23:13:45','2006-02-15 22:22:47'),(15675,585,2,6733,'6.99','2005-07-12 14:04:01','2006-02-15 22:22:47'),(15676,585,1,7131,'2.99','2005-07-27 06:25:06','2006-02-15 22:22:47'),(15677,585,1,7384,'4.99','2005-07-27 15:49:45','2006-02-15 22:22:47'),(15678,585,2,7409,'4.99','2005-07-27 16:38:24','2006-02-15 22:22:47'),(15679,585,2,8353,'2.99','2005-07-29 04:52:10','2006-02-15 22:22:48'),(15680,585,2,9407,'8.99','2005-07-30 20:25:24','2006-02-15 22:22:48'),(15681,585,1,9590,'3.99','2005-07-31 03:17:16','2006-02-15 22:22:48'),(15682,585,1,9860,'6.99','2005-07-31 13:03:24','2006-02-15 22:22:48'),(15683,585,2,10573,'0.99','2005-08-01 13:27:24','2006-02-15 22:22:48'),(15684,585,1,11285,'9.99','2005-08-02 14:44:02','2006-02-15 22:22:48'),(15685,585,2,13593,'3.99','2005-08-20 05:50:52','2006-02-15 22:22:48'),(15686,585,2,13939,'0.99','2005-08-20 17:28:01','2006-02-15 22:22:48'),(15687,585,1,15804,'4.99','2005-08-23 14:29:16','2006-02-15 22:22:48'),(15688,585,1,15896,'6.99','2005-08-23 17:09:56','2006-02-15 22:22:48'),(15689,585,2,14604,'4.99','2006-02-14 15:16:03','2006-02-15 22:22:48'),(15690,586,1,138,'4.99','2005-05-25 22:48:22','2006-02-15 22:22:48'),(15691,586,1,900,'8.99','2005-05-30 09:38:41','2006-02-15 22:22:48'),(15692,586,1,1260,'2.99','2005-06-15 06:42:25','2006-02-15 22:22:48'),(15693,586,2,1540,'0.99','2005-06-16 01:14:56','2006-02-15 22:22:49'),(15694,586,2,3487,'6.99','2005-07-05 23:30:36','2006-02-15 22:22:49'),(15695,586,2,3733,'4.99','2005-07-06 11:33:55','2006-02-15 22:22:49'),(15696,586,2,5382,'2.99','2005-07-09 19:12:57','2006-02-15 22:22:49'),(15697,586,1,6679,'2.99','2005-07-12 12:01:07','2006-02-15 22:22:49'),(15698,586,2,9786,'2.99','2005-07-31 10:25:21','2006-02-15 22:22:49'),(15699,586,2,9896,'2.99','2005-07-31 14:09:48','2006-02-15 22:22:49'),(15700,586,1,11034,'2.99','2005-08-02 05:54:53','2006-02-15 22:22:49'),(15701,586,1,11763,'0.99','2005-08-17 09:51:39','2006-02-15 22:22:49'),(15702,586,1,12013,'4.99','2005-08-17 19:23:02','2006-02-15 22:22:49'),(15703,586,1,12898,'0.99','2005-08-19 03:54:34','2006-02-15 22:22:50'),(15704,586,2,14043,'2.99','2005-08-20 21:46:43','2006-02-15 22:22:50'),(15705,586,1,14392,'1.99','2005-08-21 10:19:25','2006-02-15 22:22:50'),(15706,586,2,14533,'2.99','2005-08-21 15:15:19','2006-02-15 22:22:50'),(15707,586,1,15666,'3.99','2005-08-23 09:01:10','2006-02-15 22:22:51'),(15708,586,2,15684,'0.99','2005-08-23 09:40:04','2006-02-15 22:22:51'),(15709,587,1,181,'4.99','2005-05-26 04:47:06','2006-02-15 22:22:51'),(15710,587,1,361,'0.99','2005-05-27 07:03:28','2006-02-15 22:22:51'),(15711,587,2,1330,'2.99','2005-06-15 11:29:17','2006-02-15 22:22:52'),(15712,587,2,2034,'4.99','2005-06-17 13:27:16','2006-02-15 22:22:52'),(15713,587,1,2220,'2.99','2005-06-18 03:21:36','2006-02-15 22:22:52'),(15714,587,1,2329,'4.99','2005-06-18 10:22:52','2006-02-15 22:22:52'),(15715,587,2,3562,'2.99','2005-07-06 02:54:36','2006-02-15 22:22:53'),(15716,587,2,3969,'0.99','2005-07-06 22:47:59','2006-02-15 22:22:53'),(15717,587,2,5243,'3.99','2005-07-09 13:22:08','2006-02-15 22:22:53'),(15718,587,1,6639,'0.99','2005-07-12 10:00:44','2006-02-15 22:22:53'),(15719,587,2,6665,'6.99','2005-07-12 11:29:14','2006-02-15 22:22:53'),(15720,587,1,7501,'8.99','2005-07-27 20:16:59','2006-02-15 22:22:54'),(15721,587,2,8776,'5.99','2005-07-29 20:07:06','2006-02-15 22:22:54'),(15722,587,2,9720,'6.99','2005-07-31 08:25:21','2006-02-15 22:22:54'),(15723,587,2,9785,'4.99','2005-07-31 10:22:15','2006-02-15 22:22:54'),(15724,587,2,9909,'5.99','2005-07-31 14:43:34','2006-02-15 22:22:55'),(15725,587,2,10224,'4.99','2005-08-01 01:31:56','2006-02-15 22:22:55'),(15726,587,1,10825,'2.99','2005-08-01 23:05:33','2006-02-15 22:22:55'),(15727,587,1,11078,'2.99','2005-08-02 07:26:58','2006-02-15 22:22:55'),(15728,587,2,11403,'4.99','2005-08-02 19:10:21','2006-02-15 22:22:56'),(15729,587,2,12164,'4.99','2005-08-18 00:46:38','2006-02-15 22:22:56'),(15730,587,2,12330,'6.99','2005-08-18 06:46:33','2006-02-15 22:22:56'),(15731,587,2,14710,'4.99','2005-08-21 21:15:23','2006-02-15 22:22:56'),(15732,587,2,15348,'2.99','2005-08-22 21:13:46','2006-02-15 22:22:57'),(15733,587,2,15349,'0.99','2005-08-22 21:13:51','2006-02-15 22:22:57'),(15734,587,1,12144,'0.99','2006-02-14 15:16:03','2006-02-15 22:22:57'),(15735,588,1,576,'2.99','2005-05-28 10:56:10','2006-02-15 22:22:57'),(15736,588,1,961,'4.99','2005-05-30 18:16:44','2006-02-15 22:22:58'),(15737,588,2,1885,'2.99','2005-06-17 03:35:59','2006-02-15 22:22:58'),(15738,588,2,1903,'6.99','2005-06-17 04:37:20','2006-02-15 22:22:58'),(15739,588,2,2270,'7.99','2005-06-18 06:29:01','2006-02-15 22:22:58'),(15740,588,1,2453,'2.99','2005-06-18 19:30:53','2006-02-15 22:22:59'),(15741,588,2,2920,'3.99','2005-06-20 04:12:46','2006-02-15 22:22:59'),(15742,588,1,3628,'4.99','2005-07-06 06:19:43','2006-02-15 22:22:59'),(15743,588,1,4101,'0.99','2005-07-07 06:25:11','2006-02-15 22:22:59'),(15744,588,2,4207,'5.99','2005-07-07 11:32:45','2006-02-15 22:23:00'),(15745,588,2,5203,'2.99','2005-07-09 10:53:59','2006-02-15 22:23:00'),(15746,588,1,5335,'4.99','2005-07-09 17:00:49','2006-02-15 22:23:00'),(15747,588,1,6368,'4.99','2005-07-11 21:19:01','2006-02-15 22:23:00'),(15748,588,2,7377,'2.99','2005-07-27 15:31:28','2006-02-15 22:23:01'),(15749,588,2,7903,'2.99','2005-07-28 11:20:36','2006-02-15 22:23:01'),(15750,588,1,8421,'4.99','2005-07-29 07:00:47','2006-02-15 22:23:01'),(15751,588,1,8429,'2.99','2005-07-29 07:11:49','2006-02-15 22:23:01'),(15752,588,2,8519,'2.99','2005-07-29 10:09:43','2006-02-15 22:23:02'),(15753,588,1,8769,'2.99','2005-07-29 19:45:33','2006-02-15 22:23:02'),(15754,588,2,9326,'2.99','2005-07-30 17:30:03','2006-02-15 22:23:02'),(15755,588,2,9370,'4.99','2005-07-30 18:57:29','2006-02-15 22:23:02'),(15756,588,2,10373,'4.99','2005-08-01 06:24:26','2006-02-15 22:23:02'),(15757,588,1,12185,'2.99','2005-08-18 01:40:14','2006-02-15 22:23:03'),(15758,588,2,12815,'4.99','2005-08-19 00:59:42','2006-02-15 22:23:03'),(15759,588,1,13064,'4.99','2005-08-19 09:46:53','2006-02-15 22:23:03'),(15760,588,1,13923,'1.99','2005-08-20 17:05:02','2006-02-15 22:23:03'),(15761,588,1,15109,'1.99','2005-08-22 12:12:58','2006-02-15 22:23:04'),(15762,588,1,15158,'2.99','2005-08-22 14:30:39','2006-02-15 22:23:04'),(15763,588,1,15209,'4.99','2005-08-22 16:37:32','2006-02-15 22:23:04'),(15764,589,1,531,'0.99','2005-05-28 05:23:38','2006-02-15 22:23:04'),(15765,589,1,596,'4.99','2005-05-28 14:00:03','2006-02-15 22:23:05'),(15766,589,1,737,'4.99','2005-05-29 08:11:31','2006-02-15 22:23:05'),(15767,589,1,1439,'4.99','2005-06-15 18:45:32','2006-02-15 22:23:05'),(15768,589,2,1703,'4.99','2005-06-16 13:28:44','2006-02-15 22:23:05'),(15769,589,2,2652,'8.99','2005-06-19 10:35:26','2006-02-15 22:23:06'),(15770,589,1,2707,'8.99','2005-06-19 13:57:08','2006-02-15 22:23:06'),(15771,589,1,2979,'2.99','2005-06-20 08:31:05','2006-02-15 22:23:06'),(15772,589,2,4986,'2.99','2005-07-09 00:44:33','2006-02-15 22:23:06'),(15773,589,1,5951,'0.99','2005-07-10 23:14:29','2006-02-15 22:23:07'),(15774,589,2,6177,'4.99','2005-07-11 10:53:49','2006-02-15 22:23:07'),(15775,589,2,6247,'3.99','2005-07-11 15:00:05','2006-02-15 22:23:07'),(15776,589,2,7250,'0.99','2005-07-27 10:44:09','2006-02-15 22:23:07'),(15777,589,2,7431,'3.99','2005-07-27 17:27:27','2006-02-15 22:23:08'),(15778,589,2,7948,'9.99','2005-07-28 13:06:16','2006-02-15 22:23:08'),(15779,589,2,8056,'0.99','2005-07-28 17:04:15','2006-02-15 22:23:08'),(15780,589,1,8374,'3.99','2005-07-29 05:24:02','2006-02-15 22:23:08'),(15781,589,1,9153,'4.99','2005-07-30 10:58:16','2006-02-15 22:23:09'),(15782,589,2,10544,'4.99','2005-08-01 12:36:21','2006-02-15 22:23:09'),(15783,589,1,11980,'4.99','2005-08-17 18:10:18','2006-02-15 22:23:09'),(15784,589,1,12738,'7.99','2005-08-18 22:11:47','2006-02-15 22:23:09'),(15785,589,2,12933,'8.99','2005-08-19 05:18:20','2006-02-15 22:23:10'),(15786,589,1,14038,'6.99','2005-08-20 21:39:23','2006-02-15 22:23:10'),(15787,589,1,14254,'6.99','2005-08-21 05:51:28','2006-02-15 22:23:10'),(15788,589,1,14544,'0.99','2005-08-21 15:41:01','2006-02-15 22:23:10'),(15789,589,2,14706,'0.99','2005-08-21 21:04:42','2006-02-15 22:23:10'),(15790,589,2,15917,'5.99','2005-08-23 17:57:28','2006-02-15 22:23:11'),(15791,589,2,15992,'0.99','2005-08-23 20:28:32','2006-02-15 22:23:11'),(15792,590,1,602,'3.99','2005-05-28 14:15:54','2006-02-15 22:23:11'),(15793,590,2,1456,'7.99','2005-06-15 20:00:11','2006-02-15 22:23:11'),(15794,590,2,2352,'2.99','2005-06-18 12:40:15','2006-02-15 22:23:12'),(15795,590,2,2775,'2.99','2005-06-19 18:14:20','2006-02-15 22:23:12'),(15796,590,1,2916,'6.99','2005-06-20 04:01:04','2006-02-15 22:23:12'),(15797,590,1,2964,'9.99','2005-06-20 07:33:29','2006-02-15 22:23:12'),(15798,590,2,4685,'4.99','2005-07-08 10:45:13','2006-02-15 22:23:13'),(15799,590,1,4710,'2.99','2005-07-08 12:04:53','2006-02-15 22:23:13'),(15800,590,2,4722,'4.99','2005-07-08 12:42:27','2006-02-15 22:23:13'),(15801,590,1,5165,'0.99','2005-07-09 09:08:53','2006-02-15 22:23:13'),(15802,590,1,5529,'2.99','2005-07-10 02:11:13','2006-02-15 22:23:14'),(15803,590,1,5991,'4.99','2005-07-11 01:03:38','2006-02-15 22:23:14'),(15804,590,2,6232,'4.99','2005-07-11 14:08:27','2006-02-15 22:23:14'),(15805,590,2,6492,'4.99','2005-07-12 02:28:40','2006-02-15 22:23:14'),(15806,590,1,7010,'4.99','2005-07-27 01:56:01','2006-02-15 22:23:15'),(15807,590,2,7665,'2.99','2005-07-28 02:28:30','2006-02-15 22:23:15'),(15808,590,1,8195,'5.99','2005-07-28 22:52:58','2006-02-15 22:23:15'),(15809,590,1,8801,'4.99','2005-07-29 21:25:22','2006-02-15 22:23:15'),(15810,590,2,9126,'0.99','2005-07-30 09:44:15','2006-02-15 22:23:16'),(15811,590,1,9884,'4.99','2005-07-31 13:56:24','2006-02-15 22:23:16'),(15812,590,1,10657,'4.99','2005-08-01 16:38:44','2006-02-15 22:23:16'),(15813,590,2,11578,'5.99','2005-08-17 01:54:13','2006-02-15 22:23:16'),(15814,590,2,11713,'3.99','2005-08-17 07:34:05','2006-02-15 22:23:17'),(15815,590,1,14830,'2.99','2005-08-22 01:37:19','2006-02-15 22:23:17'),(15816,590,2,15458,'2.99','2006-02-14 15:16:03','2006-02-15 22:23:17'),(15817,591,1,1418,'0.99','2005-06-15 17:51:27','2006-02-15 22:23:17'),(15818,591,2,3341,'2.99','2005-06-21 10:37:25','2006-02-15 22:23:17'),(15819,591,2,3435,'4.99','2005-06-21 19:14:58','2006-02-15 22:23:18'),(15820,591,1,3636,'0.99','2005-07-06 07:03:52','2006-02-15 22:23:18'),(15821,591,2,4383,'11.99','2005-07-07 20:45:51','2006-02-15 22:23:18'),(15822,591,1,4581,'6.99','2005-07-08 06:05:06','2006-02-15 22:23:18'),(15823,591,1,5704,'5.99','2005-07-10 10:06:29','2006-02-15 22:23:19'),(15824,591,1,5759,'6.99','2005-07-10 12:43:22','2006-02-15 22:23:19'),(15825,591,1,7118,'8.99','2005-07-27 05:53:50','2006-02-15 22:23:19'),(15826,591,1,7212,'2.99','2005-07-27 09:21:22','2006-02-15 22:23:19'),(15827,591,2,7511,'4.99','2005-07-27 20:38:40','2006-02-15 22:23:20'),(15828,591,1,7549,'3.99','2005-07-27 21:53:21','2006-02-15 22:23:20'),(15829,591,2,7741,'0.99','2005-07-28 05:25:55','2006-02-15 22:23:20'),(15830,591,1,7997,'4.99','2005-07-28 15:02:25','2006-02-15 22:23:20'),(15831,591,1,8149,'3.99','2005-07-28 20:48:12','2006-02-15 22:23:21'),(15832,591,2,8666,'5.99','2005-07-29 15:39:38','2006-02-15 22:23:21'),(15833,591,2,8819,'4.99','2005-07-29 22:14:26','2006-02-15 22:23:21'),(15834,591,1,9684,'0.99','2005-07-31 06:48:33','2006-02-15 22:23:21'),(15835,591,1,10415,'4.99','2005-08-01 08:05:59','2006-02-15 22:23:22'),(15836,591,2,12203,'5.99','2005-08-18 02:18:52','2006-02-15 22:23:22'),(15837,591,2,12227,'4.99','2005-08-18 03:04:28','2006-02-15 22:23:22'),(15838,591,1,12547,'4.99','2005-08-18 14:29:39','2006-02-15 22:23:22'),(15839,591,1,12571,'5.99','2005-08-18 15:31:18','2006-02-15 22:23:23'),(15840,591,1,12934,'5.99','2005-08-19 05:18:42','2006-02-15 22:23:23'),(15841,591,2,13104,'2.99','2005-08-19 11:06:06','2006-02-15 22:23:23'),(15842,591,2,13343,'3.99','2005-08-19 20:22:08','2006-02-15 22:23:23'),(15843,591,1,13867,'9.99','2005-08-20 15:05:42','2006-02-15 22:23:23'),(15844,592,2,1163,'6.99','2005-06-14 23:12:46','2006-02-15 22:23:24'),(15845,592,2,1423,'5.99','2005-06-15 18:08:12','2006-02-15 22:23:24'),(15846,592,1,1479,'2.99','2005-06-15 21:13:38','2006-02-15 22:23:24'),(15847,592,1,2627,'0.99','2005-06-19 08:32:00','2006-02-15 22:23:24'),(15848,592,1,3158,'7.99','2005-06-20 21:08:19','2006-02-15 22:23:25'),(15849,592,2,3560,'2.99','2005-07-06 02:51:37','2006-02-15 22:23:25'),(15850,592,1,3973,'11.99','2005-07-06 22:58:31','2006-02-15 22:23:25'),(15851,592,1,4129,'1.99','2005-07-07 07:37:03','2006-02-15 22:23:25'),(15852,592,1,4145,'9.99','2005-07-07 08:26:39','2006-02-15 22:23:26'),(15853,592,1,4460,'0.99','2005-07-07 23:50:14','2006-02-15 22:23:26'),(15854,592,1,4518,'2.99','2005-07-08 02:48:36','2006-02-15 22:23:26'),(15855,592,1,6937,'0.99','2005-07-26 23:15:50','2006-02-15 22:23:26'),(15856,592,2,7173,'0.99','2005-07-27 07:59:24','2006-02-15 22:23:27'),(15857,592,1,7278,'3.99','2005-07-27 11:50:34','2006-02-15 22:23:27'),(15858,592,2,7364,'4.99','2005-07-27 14:58:40','2006-02-15 22:23:27'),(15859,592,1,8730,'2.99','2005-07-29 18:23:34','2006-02-15 22:23:27'),(15860,592,2,8773,'0.99','2005-07-29 19:55:34','2006-02-15 22:23:28'),(15861,592,1,9268,'4.99','2005-07-30 15:02:30','2006-02-15 22:23:28'),(15862,592,1,9437,'3.99','2005-07-30 21:36:04','2006-02-15 22:23:28'),(15863,592,2,9666,'6.99','2005-07-31 06:20:58','2006-02-15 22:23:28'),(15864,592,2,10383,'0.99','2005-08-01 06:37:16','2006-02-15 22:23:29'),(15865,592,2,10634,'2.99','2005-08-01 15:37:48','2006-02-15 22:23:29'),(15866,592,1,11410,'8.99','2005-08-02 19:29:01','2006-02-15 22:23:29'),(15867,592,2,12043,'0.99','2005-08-17 20:38:21','2006-02-15 22:23:29'),(15868,592,2,12619,'0.99','2005-08-18 17:24:15','2006-02-15 22:23:30'),(15869,592,1,12976,'1.99','2005-08-19 06:52:58','2006-02-15 22:23:30'),(15870,592,1,13157,'2.99','2005-08-19 13:12:28','2006-02-15 22:23:30'),(15871,592,2,13662,'3.99','2005-08-20 08:11:58','2006-02-15 22:23:30'),(15872,592,2,14606,'0.99','2006-02-14 15:16:03','2006-02-15 22:23:30'),(15873,593,1,790,'2.99','2005-05-29 16:19:29','2006-02-15 22:23:31'),(15874,593,1,991,'8.99','2005-05-30 23:29:22','2006-02-15 22:23:31'),(15875,593,2,2055,'5.99','2005-06-17 15:27:03','2006-02-15 22:23:31'),(15876,593,2,2205,'4.99','2005-06-18 02:14:34','2006-02-15 22:23:31'),(15877,593,1,2441,'4.99','2005-06-18 18:45:11','2006-02-15 22:23:32'),(15878,593,1,2832,'4.99','2005-06-19 21:21:53','2006-02-15 22:23:32'),(15879,593,2,3542,'2.99','2005-07-06 01:51:42','2006-02-15 22:23:32'),(15880,593,2,4075,'2.99','2005-07-07 04:51:44','2006-02-15 22:23:32'),(15881,593,2,4280,'3.99','2005-07-07 15:09:31','2006-02-15 22:23:33'),(15882,593,2,4623,'0.99','2005-07-08 08:03:22','2006-02-15 22:23:33'),(15883,593,2,4781,'4.99','2005-07-08 16:06:55','2006-02-15 22:23:33'),(15884,593,2,4867,'0.99','2005-07-08 19:10:52','2006-02-15 22:23:33'),(15885,593,1,6386,'2.99','2005-07-11 22:14:57','2006-02-15 22:23:34'),(15886,593,1,6731,'2.99','2005-07-12 13:58:27','2006-02-15 22:23:34'),(15887,593,2,7958,'4.99','2005-07-28 13:34:34','2006-02-15 22:23:34'),(15888,593,1,8497,'2.99','2005-07-29 09:07:03','2006-02-15 22:23:34'),(15889,593,2,9329,'6.99','2005-07-30 17:42:38','2006-02-15 22:23:35'),(15890,593,1,9483,'6.99','2005-07-30 23:31:31','2006-02-15 22:23:35'),(15891,593,1,10368,'3.99','2005-08-01 06:13:38','2006-02-15 22:23:35'),(15892,593,2,10533,'3.99','2005-08-01 12:14:16','2006-02-15 22:23:35'),(15893,593,1,10840,'5.99','2005-08-01 23:38:34','2006-02-15 22:23:36'),(15894,593,2,10904,'4.99','2005-08-02 01:43:02','2006-02-15 22:23:36'),(15895,593,2,12744,'2.99','2005-08-18 22:22:36','2006-02-15 22:23:36'),(15896,593,1,13524,'6.99','2005-08-20 02:48:43','2006-02-15 22:23:36'),(15897,593,1,14408,'5.99','2005-08-21 10:47:24','2006-02-15 22:23:36'),(15898,593,1,14653,'0.99','2005-08-21 19:35:59','2006-02-15 22:23:37'),(15899,594,1,313,'4.99','2005-05-26 22:56:19','2006-02-15 22:23:37'),(15900,594,1,360,'8.99','2005-05-27 06:51:14','2006-02-15 22:23:37'),(15901,594,2,1018,'0.99','2005-05-31 02:53:42','2006-02-15 22:23:37'),(15902,594,1,1045,'6.99','2005-05-31 06:29:01','2006-02-15 22:23:38'),(15903,594,2,1537,'5.99','2005-06-16 00:52:51','2006-02-15 22:23:38'),(15904,594,1,1816,'4.99','2005-06-16 21:20:41','2006-02-15 22:23:38'),(15905,594,1,1950,'2.99','2005-06-17 08:26:52','2006-02-15 22:23:38'),(15906,594,1,2276,'6.99','2005-06-18 06:33:48','2006-02-15 22:23:39'),(15907,594,2,2786,'0.99','2005-06-19 18:46:43','2006-02-15 22:23:39'),(15908,594,2,3302,'1.99','2005-06-21 07:33:40','2006-02-15 22:23:39'),(15909,594,2,3474,'0.99','2005-07-05 22:59:53','2006-02-15 22:23:39'),(15910,594,1,3546,'4.99','2005-07-06 02:17:54','2006-02-15 22:23:40'),(15911,594,2,3960,'2.99','2005-07-06 22:08:53','2006-02-15 22:23:40'),(15912,594,1,4037,'5.99','2005-07-07 02:52:52','2006-02-15 22:23:40'),(15913,594,1,4154,'3.99','2005-07-07 08:58:23','2006-02-15 22:23:40'),(15914,594,2,5386,'2.99','2005-07-09 19:19:09','2006-02-15 22:23:41'),(15915,594,1,6473,'6.99','2005-07-12 01:35:40','2006-02-15 22:23:41'),(15916,594,1,7533,'8.99','2005-07-27 21:24:33','2006-02-15 22:23:41'),(15917,594,1,8567,'1.99','2005-07-29 11:37:30','2006-02-15 22:23:41'),(15918,594,1,8603,'2.99','2005-07-29 13:07:07','2006-02-15 22:23:42'),(15919,594,2,8820,'5.99','2005-07-29 22:14:56','2006-02-15 22:23:42'),(15920,594,1,9545,'7.99','2005-07-31 01:46:24','2006-02-15 22:23:42'),(15921,594,1,9698,'3.99','2005-07-31 07:24:35','2006-02-15 22:23:42'),(15922,594,2,9802,'4.99','2005-07-31 11:04:20','2006-02-15 22:23:42'),(15923,594,2,10704,'8.99','2005-08-01 18:38:02','2006-02-15 22:23:43'),(15924,594,2,14824,'4.99','2005-08-22 01:27:51','2006-02-15 22:23:43'),(15925,594,1,14999,'4.99','2005-08-22 07:54:47','2006-02-15 22:23:43'),(15926,595,1,613,'6.99','2005-05-28 15:27:22','2006-02-15 22:23:43'),(15927,595,2,1170,'2.99','2005-06-14 23:47:35','2006-02-15 22:23:44'),(15928,595,2,3371,'4.99','2005-06-21 13:27:22','2006-02-15 22:23:44'),(15929,595,1,3789,'9.99','2005-07-06 14:02:26','2006-02-15 22:23:44'),(15930,595,1,4017,'4.99','2005-07-07 01:08:18','2006-02-15 22:23:44'),(15931,595,1,4241,'4.99','2005-07-07 13:39:00','2006-02-15 22:23:45'),(15932,595,2,4775,'2.99','2005-07-08 15:44:05','2006-02-15 22:23:45'),(15933,595,1,5631,'1.99','2005-07-10 06:15:45','2006-02-15 22:23:45'),(15934,595,1,5952,'1.99','2005-07-10 23:18:20','2006-02-15 22:23:45'),(15935,595,1,6105,'6.99','2005-07-11 07:03:19','2006-02-15 22:23:46'),(15936,595,1,6704,'6.99','2005-07-12 12:50:24','2006-02-15 22:23:46'),(15937,595,1,7086,'4.99','2005-07-27 04:39:46','2006-02-15 22:23:46'),(15938,595,2,7307,'0.99','2005-07-27 12:59:10','2006-02-15 22:23:46'),(15939,595,1,7396,'4.99','2005-07-27 16:03:53','2006-02-15 22:23:47'),(15940,595,2,7490,'3.99','2005-07-27 19:48:12','2006-02-15 22:23:47'),(15941,595,1,9152,'2.99','2005-07-30 10:51:27','2006-02-15 22:23:47'),(15942,595,2,9223,'2.99','2005-07-30 13:23:20','2006-02-15 22:23:47'),(15943,595,1,9354,'4.99','2005-07-30 18:32:51','2006-02-15 22:23:48'),(15944,595,2,9497,'0.99','2005-07-30 23:56:54','2006-02-15 22:23:48'),(15945,595,2,9542,'4.99','2005-07-31 01:41:48','2006-02-15 22:23:48'),(15946,595,1,9631,'2.99','2005-07-31 05:02:00','2006-02-15 22:23:48'),(15947,595,2,9826,'10.99','2005-07-31 11:51:46','2006-02-15 22:23:48'),(15948,595,1,10729,'2.99','2005-08-01 19:21:11','2006-02-15 22:23:49'),(15949,595,1,10932,'2.99','2005-08-02 02:46:22','2006-02-15 22:23:49'),(15950,595,2,11748,'0.99','2005-08-17 09:04:02','2006-02-15 22:23:49'),(15951,595,1,12235,'0.99','2005-08-18 03:17:50','2006-02-15 22:23:49'),(15952,595,1,14334,'0.99','2005-08-21 08:32:32','2006-02-15 22:23:50'),(15953,595,2,15576,'2.99','2005-08-23 05:32:03','2006-02-15 22:23:50'),(15954,595,2,15994,'0.99','2005-08-23 20:29:10','2006-02-15 22:23:50'),(15955,595,2,16016,'2.99','2005-08-23 21:26:35','2006-02-15 22:23:50'),(15956,596,2,303,'4.99','2005-05-26 21:16:52','2006-02-15 22:23:51'),(15957,596,2,625,'0.99','2005-05-28 16:35:46','2006-02-15 22:23:51'),(15958,596,2,667,'4.99','2005-05-28 21:49:02','2006-02-15 22:23:51'),(15959,596,2,782,'1.99','2005-05-29 14:38:57','2006-02-15 22:23:51'),(15960,596,1,914,'2.99','2005-05-30 11:06:00','2006-02-15 22:23:52'),(15961,596,1,974,'6.99','2005-05-30 20:28:42','2006-02-15 22:23:52'),(15962,596,1,1644,'1.99','2005-06-16 08:58:18','2006-02-15 22:23:52'),(15963,596,1,2767,'1.99','2005-06-19 17:46:35','2006-02-15 22:23:52'),(15964,596,2,5742,'3.99','2005-07-10 11:56:18','2006-02-15 22:23:53'),(15965,596,1,6015,'2.99','2005-07-11 02:04:12','2006-02-15 22:23:53'),(15966,596,1,6017,'0.99','2005-07-11 02:05:32','2006-02-15 22:23:53'),(15967,596,1,6197,'4.99','2005-07-11 12:09:51','2006-02-15 22:23:53'),(15968,596,2,6883,'4.99','2005-07-12 20:50:48','2006-02-15 22:23:53'),(15969,596,1,10094,'3.99','2005-07-31 20:31:18','2006-02-15 22:23:54'),(15970,596,2,10692,'4.99','2005-08-01 18:12:35','2006-02-15 22:23:54'),(15971,596,1,10756,'2.99','2005-08-01 20:17:03','2006-02-15 22:23:54'),(15972,596,2,10804,'0.99','2005-08-01 22:22:11','2006-02-15 22:23:54'),(15973,596,2,11009,'4.99','2005-08-02 05:06:23','2006-02-15 22:23:55'),(15974,596,2,11852,'3.99','2005-08-17 13:38:27','2006-02-15 22:23:55'),(15975,596,1,11934,'0.99','2005-08-17 16:40:00','2006-02-15 22:23:55'),(15976,596,2,12560,'4.99','2005-08-18 14:54:19','2006-02-15 22:23:55'),(15977,596,1,12878,'4.99','2005-08-19 03:17:08','2006-02-15 22:23:56'),(15978,596,1,13648,'4.99','2005-08-20 07:48:10','2006-02-15 22:23:56'),(15979,596,1,14050,'3.99','2005-08-20 22:09:04','2006-02-15 22:23:56'),(15980,596,1,14417,'0.99','2005-08-21 11:13:35','2006-02-15 22:23:56'),(15981,596,1,15405,'0.99','2005-08-22 23:20:41','2006-02-15 22:23:57'),(15982,596,1,15899,'6.99','2005-08-23 17:16:28','2006-02-15 22:23:57'),(15983,596,1,15423,'0.99','2006-02-14 15:16:03','2006-02-15 22:23:57'),(15984,597,2,34,'2.99','2005-05-25 04:19:28','2006-02-15 22:23:57'),(15985,597,2,514,'8.99','2005-05-28 03:09:28','2006-02-15 22:23:58'),(15986,597,1,2379,'0.99','2005-06-18 14:59:39','2006-02-15 22:23:58'),(15987,597,1,2696,'4.99','2005-06-19 13:28:42','2006-02-15 22:23:58'),(15988,597,1,3201,'1.99','2005-06-21 00:30:26','2006-02-15 22:23:58'),(15989,597,1,5093,'0.99','2005-07-09 05:59:12','2006-02-15 22:23:59'),(15990,597,1,5348,'4.99','2005-07-09 17:34:11','2006-02-15 22:23:59'),(15991,597,2,5732,'2.99','2005-07-10 11:36:32','2006-02-15 22:23:59'),(15992,597,1,6508,'2.99','2005-07-12 03:34:50','2006-02-15 22:23:59'),(15993,597,2,7968,'4.99','2005-07-28 13:57:35','2006-02-15 22:23:59'),(15994,597,2,8948,'4.99','2005-07-30 03:16:18','2006-02-15 22:24:00'),(15995,597,2,10021,'4.99','2005-07-31 18:24:39','2006-02-15 22:24:00'),(15996,597,1,10214,'0.99','2005-08-01 01:04:15','2006-02-15 22:24:00'),(15997,597,2,10986,'5.99','2005-08-02 04:35:24','2006-02-15 22:24:00'),(15998,597,2,11147,'4.99','2005-08-02 09:45:54','2006-02-15 22:24:01'),(15999,597,2,11223,'2.99','2005-08-02 12:34:27','2006-02-15 22:24:01'),(16000,597,1,11240,'2.99','2005-08-02 13:28:30','2006-02-15 22:24:01'),(16001,597,1,11880,'5.99','2005-08-17 14:28:28','2006-02-15 22:24:01'),(16002,597,1,12081,'4.99','2005-08-17 22:10:46','2006-02-15 22:24:02'),(16003,597,1,12992,'0.99','2005-08-19 07:23:06','2006-02-15 22:24:02'),(16004,597,2,13019,'2.99','2005-08-19 08:07:43','2006-02-15 22:24:02'),(16005,597,1,13152,'6.99','2005-08-19 13:09:32','2006-02-15 22:24:02'),(16006,597,2,15275,'2.99','2005-08-22 18:57:39','2006-02-15 22:24:03'),(16007,597,1,15469,'4.99','2005-08-23 01:29:59','2006-02-15 22:24:03'),(16008,597,1,11652,'4.99','2006-02-14 15:16:03','2006-02-15 22:24:03'),(16009,598,1,3005,'2.99','2005-06-20 10:10:29','2006-02-15 22:24:03'),(16010,598,1,3648,'0.99','2005-07-06 07:30:41','2006-02-15 22:24:04'),(16011,598,2,3950,'6.99','2005-07-06 21:48:44','2006-02-15 22:24:04'),(16012,598,1,3972,'4.99','2005-07-06 22:53:57','2006-02-15 22:24:04'),(16013,598,1,4181,'4.99','2005-07-07 10:27:54','2006-02-15 22:24:04'),(16014,598,2,5688,'5.99','2005-07-10 09:16:08','2006-02-15 22:24:04'),(16015,598,1,6519,'4.99','2005-07-12 04:00:36','2006-02-15 22:24:05'),(16016,598,2,6528,'4.99','2005-07-12 04:29:44','2006-02-15 22:24:05'),(16017,598,2,6575,'0.99','2005-07-12 06:12:53','2006-02-15 22:24:05'),(16018,598,2,6660,'3.99','2005-07-12 11:20:12','2006-02-15 22:24:05'),(16019,598,2,7201,'6.99','2005-07-27 08:57:40','2006-02-15 22:24:06'),(16020,598,2,7354,'0.99','2005-07-27 14:42:11','2006-02-15 22:24:06'),(16021,598,1,7998,'0.99','2005-07-28 15:08:48','2006-02-15 22:24:06'),(16022,598,2,8436,'0.99','2005-07-29 07:21:20','2006-02-15 22:24:06'),(16023,598,1,8511,'5.99','2005-07-29 09:42:42','2006-02-15 22:24:07'),(16024,598,1,8939,'4.99','2005-07-30 02:56:53','2006-02-15 22:24:07'),(16025,598,1,10054,'4.99','2005-07-31 19:15:52','2006-02-15 22:24:07'),(16026,598,2,11350,'0.99','2005-08-02 17:22:59','2006-02-15 22:24:07'),(16027,598,2,12601,'2.99','2005-08-18 16:47:52','2006-02-15 22:24:08'),(16028,598,2,14345,'0.99','2005-08-21 08:41:15','2006-02-15 22:24:08'),(16029,598,2,15307,'2.99','2005-08-22 19:54:26','2006-02-15 22:24:08'),(16030,598,1,15443,'7.99','2005-08-23 00:44:15','2006-02-15 22:24:08'),(16031,599,2,1008,'4.99','2005-05-31 01:18:56','2006-02-15 22:24:09'),(16032,599,1,2272,'1.99','2005-06-18 06:29:53','2006-02-15 22:24:09'),(16033,599,2,3043,'6.99','2005-06-20 12:38:35','2006-02-15 22:24:09'),(16034,599,2,3398,'4.99','2005-06-21 15:34:38','2006-02-15 22:24:09'),(16035,599,1,3429,'6.99','2005-06-21 18:46:05','2006-02-15 22:24:09'),(16036,599,1,5065,'0.99','2005-07-09 04:42:00','2006-02-15 22:24:10'),(16037,599,1,5843,'2.99','2005-07-10 17:14:27','2006-02-15 22:24:10'),(16038,599,2,6800,'9.99','2005-07-12 17:03:56','2006-02-15 22:24:10'),(16039,599,2,6895,'2.99','2005-07-12 21:23:59','2006-02-15 22:24:10'),(16040,599,1,8965,'6.99','2005-07-30 03:52:37','2006-02-15 22:24:11'),(16041,599,2,9630,'2.99','2005-07-31 04:57:07','2006-02-15 22:24:11'),(16042,599,2,9679,'2.99','2005-07-31 06:41:19','2006-02-15 22:24:11'),(16043,599,2,11522,'3.99','2005-08-17 00:05:05','2006-02-15 22:24:11'),(16044,599,1,14233,'1.99','2005-08-21 05:07:08','2006-02-15 22:24:12'),(16045,599,1,14599,'4.99','2005-08-21 17:43:42','2006-02-15 22:24:12'),(16046,599,1,14719,'1.99','2005-08-21 21:41:57','2006-02-15 22:24:12'),(16047,599,2,15590,'8.99','2005-08-23 06:09:44','2006-02-15 22:24:12'),(16048,599,2,15719,'2.99','2005-08-23 11:08:46','2006-02-15 22:24:13'),(16049,599,2,15725,'2.99','2005-08-23 11:25:00','2006-02-15 22:24:13'); +COMMIT; + +-- +-- Trigger to enforce payment_date during INSERT +-- + +CREATE TRIGGER payment_date BEFORE INSERT ON payment + FOR EACH ROW SET NEW.payment_date = NOW(); + +-- +-- Dumping data for table rental +-- + +SET AUTOCOMMIT=0; +INSERT INTO rental VALUES (1,'2005-05-24 22:53:30',367,130,'2005-05-26 22:04:30',1,'2006-02-15 21:30:53'),(2,'2005-05-24 22:54:33',1525,459,'2005-05-28 19:40:33',1,'2006-02-15 21:30:53'),(3,'2005-05-24 23:03:39',1711,408,'2005-06-01 22:12:39',1,'2006-02-15 21:30:53'),(4,'2005-05-24 23:04:41',2452,333,'2005-06-03 01:43:41',2,'2006-02-15 21:30:53'),(5,'2005-05-24 23:05:21',2079,222,'2005-06-02 04:33:21',1,'2006-02-15 21:30:53'),(6,'2005-05-24 23:08:07',2792,549,'2005-05-27 01:32:07',1,'2006-02-15 21:30:53'),(7,'2005-05-24 23:11:53',3995,269,'2005-05-29 20:34:53',2,'2006-02-15 21:30:53'),(8,'2005-05-24 23:31:46',2346,239,'2005-05-27 23:33:46',2,'2006-02-15 21:30:53'),(9,'2005-05-25 00:00:40',2580,126,'2005-05-28 00:22:40',1,'2006-02-15 21:30:53'),(10,'2005-05-25 00:02:21',1824,399,'2005-05-31 22:44:21',2,'2006-02-15 21:30:53'),(11,'2005-05-25 00:09:02',4443,142,'2005-06-02 20:56:02',2,'2006-02-15 21:30:53'),(12,'2005-05-25 00:19:27',1584,261,'2005-05-30 05:44:27',2,'2006-02-15 21:30:53'),(13,'2005-05-25 00:22:55',2294,334,'2005-05-30 04:28:55',1,'2006-02-15 21:30:53'),(14,'2005-05-25 00:31:15',2701,446,'2005-05-26 02:56:15',1,'2006-02-15 21:30:53'),(15,'2005-05-25 00:39:22',3049,319,'2005-06-03 03:30:22',1,'2006-02-15 21:30:53'),(16,'2005-05-25 00:43:11',389,316,'2005-05-26 04:42:11',2,'2006-02-15 21:30:53'),(17,'2005-05-25 01:06:36',830,575,'2005-05-27 00:43:36',1,'2006-02-15 21:30:53'),(18,'2005-05-25 01:10:47',3376,19,'2005-05-31 06:35:47',2,'2006-02-15 21:30:53'),(19,'2005-05-25 01:17:24',1941,456,'2005-05-31 06:00:24',1,'2006-02-15 21:30:53'),(20,'2005-05-25 01:48:41',3517,185,'2005-05-27 02:20:41',2,'2006-02-15 21:30:53'),(21,'2005-05-25 01:59:46',146,388,'2005-05-26 01:01:46',2,'2006-02-15 21:30:53'),(22,'2005-05-25 02:19:23',727,509,'2005-05-26 04:52:23',2,'2006-02-15 21:30:53'),(23,'2005-05-25 02:40:21',4441,438,'2005-05-29 06:34:21',1,'2006-02-15 21:30:53'),(24,'2005-05-25 02:53:02',3273,350,'2005-05-27 01:15:02',1,'2006-02-15 21:30:53'),(25,'2005-05-25 03:21:20',3961,37,'2005-05-27 21:25:20',2,'2006-02-15 21:30:53'),(26,'2005-05-25 03:36:50',4371,371,'2005-05-31 00:34:50',1,'2006-02-15 21:30:53'),(27,'2005-05-25 03:41:50',1225,301,'2005-05-30 01:13:50',2,'2006-02-15 21:30:53'),(28,'2005-05-25 03:42:37',4068,232,'2005-05-26 09:26:37',2,'2006-02-15 21:30:53'),(29,'2005-05-25 03:47:12',611,44,'2005-05-30 00:31:12',2,'2006-02-15 21:30:53'),(30,'2005-05-25 04:01:32',3744,430,'2005-05-30 03:12:32',1,'2006-02-15 21:30:53'),(31,'2005-05-25 04:05:17',4482,369,'2005-05-30 07:15:17',1,'2006-02-15 21:30:53'),(32,'2005-05-25 04:06:21',3832,230,'2005-05-25 23:55:21',1,'2006-02-15 21:30:53'),(33,'2005-05-25 04:18:51',1681,272,'2005-05-27 03:58:51',1,'2006-02-15 21:30:53'),(34,'2005-05-25 04:19:28',2613,597,'2005-05-29 00:10:28',2,'2006-02-15 21:30:53'),(35,'2005-05-25 04:24:36',1286,484,'2005-05-27 07:02:36',2,'2006-02-15 21:30:53'),(36,'2005-05-25 04:36:26',1308,88,'2005-05-29 00:31:26',1,'2006-02-15 21:30:53'),(37,'2005-05-25 04:44:31',403,535,'2005-05-29 01:03:31',1,'2006-02-15 21:30:53'),(38,'2005-05-25 04:47:44',2540,302,'2005-06-01 00:58:44',1,'2006-02-15 21:30:53'),(39,'2005-05-25 04:51:46',4466,207,'2005-05-31 03:14:46',2,'2006-02-15 21:30:53'),(40,'2005-05-25 05:09:04',2638,413,'2005-05-27 23:12:04',1,'2006-02-15 21:30:53'),(41,'2005-05-25 05:12:29',1761,174,'2005-06-02 00:28:29',1,'2006-02-15 21:30:53'),(42,'2005-05-25 05:24:58',380,523,'2005-05-31 02:47:58',2,'2006-02-15 21:30:53'),(43,'2005-05-25 05:39:25',2578,532,'2005-05-26 06:54:25',2,'2006-02-15 21:30:53'),(44,'2005-05-25 05:53:23',3098,207,'2005-05-29 10:56:23',2,'2006-02-15 21:30:53'),(45,'2005-05-25 05:59:39',1853,436,'2005-06-02 09:56:39',2,'2006-02-15 21:30:53'),(46,'2005-05-25 06:04:08',3318,7,'2005-06-02 08:18:08',2,'2006-02-15 21:30:53'),(47,'2005-05-25 06:05:20',2211,35,'2005-05-30 03:04:20',1,'2006-02-15 21:30:53'),(48,'2005-05-25 06:20:46',1780,282,'2005-06-02 05:42:46',1,'2006-02-15 21:30:53'),(49,'2005-05-25 06:39:35',2965,498,'2005-05-30 10:12:35',2,'2006-02-15 21:30:53'),(50,'2005-05-25 06:44:53',1983,18,'2005-05-28 11:28:53',2,'2006-02-15 21:30:53'),(51,'2005-05-25 06:49:10',1257,256,'2005-05-26 06:42:10',1,'2006-02-15 21:30:53'),(52,'2005-05-25 06:51:29',4017,507,'2005-05-31 01:27:29',2,'2006-02-15 21:30:53'),(53,'2005-05-25 07:19:16',1255,569,'2005-05-27 05:19:16',2,'2006-02-15 21:30:53'),(54,'2005-05-25 07:23:25',2787,291,'2005-06-01 05:05:25',2,'2006-02-15 21:30:53'),(55,'2005-05-25 08:26:13',1139,131,'2005-05-30 10:57:13',1,'2006-02-15 21:30:53'),(56,'2005-05-25 08:28:11',1352,511,'2005-05-26 14:21:11',1,'2006-02-15 21:30:53'),(57,'2005-05-25 08:43:32',3938,6,'2005-05-29 06:42:32',2,'2006-02-15 21:30:53'),(58,'2005-05-25 08:53:14',3050,323,'2005-05-28 14:40:14',1,'2006-02-15 21:30:53'),(59,'2005-05-25 08:56:42',2884,408,'2005-06-01 09:52:42',1,'2006-02-15 21:30:53'),(60,'2005-05-25 08:58:25',330,470,'2005-05-30 14:14:25',1,'2006-02-15 21:30:53'),(61,'2005-05-25 09:01:57',4210,250,'2005-06-02 07:22:57',2,'2006-02-15 21:30:53'),(62,'2005-05-25 09:18:52',261,419,'2005-05-30 10:55:52',1,'2006-02-15 21:30:53'),(63,'2005-05-25 09:19:16',4008,383,'2005-05-27 04:24:16',1,'2006-02-15 21:30:53'),(64,'2005-05-25 09:21:29',79,368,'2005-06-03 11:31:29',1,'2006-02-15 21:30:53'),(65,'2005-05-25 09:32:03',3552,346,'2005-05-29 14:21:03',1,'2006-02-15 21:30:53'),(66,'2005-05-25 09:35:12',1162,86,'2005-05-29 04:16:12',2,'2006-02-15 21:30:53'),(67,'2005-05-25 09:41:01',239,119,'2005-05-27 13:46:01',2,'2006-02-15 21:30:53'),(68,'2005-05-25 09:47:31',4029,120,'2005-05-31 10:20:31',2,'2006-02-15 21:30:53'),(69,'2005-05-25 10:10:14',3207,305,'2005-05-27 14:02:14',2,'2006-02-15 21:30:53'),(70,'2005-05-25 10:15:23',2168,73,'2005-05-27 05:56:23',2,'2006-02-15 21:30:53'),(71,'2005-05-25 10:26:39',2408,100,'2005-05-28 04:59:39',1,'2006-02-15 21:30:53'),(72,'2005-05-25 10:52:13',2260,48,'2005-05-28 05:52:13',2,'2006-02-15 21:30:53'),(73,'2005-05-25 11:00:07',517,391,'2005-06-01 13:56:07',2,'2006-02-15 21:30:53'),(74,'2005-05-25 11:09:48',1744,265,'2005-05-26 12:23:48',2,'2006-02-15 21:30:53'),(75,'2005-05-25 11:13:34',3393,510,'2005-06-03 12:58:34',1,'2006-02-15 21:30:53'),(76,'2005-05-25 11:30:37',3021,1,'2005-06-03 12:00:37',2,'2006-02-15 21:30:53'),(77,'2005-05-25 11:31:59',1303,451,'2005-05-26 16:53:59',2,'2006-02-15 21:30:53'),(78,'2005-05-25 11:35:18',4067,135,'2005-05-31 12:48:18',2,'2006-02-15 21:30:53'),(79,'2005-05-25 12:11:07',3299,245,'2005-06-03 10:54:07',2,'2006-02-15 21:30:53'),(80,'2005-05-25 12:12:07',2478,314,'2005-05-31 17:46:07',2,'2006-02-15 21:30:53'),(81,'2005-05-25 12:15:19',2610,286,'2005-06-02 14:08:19',2,'2006-02-15 21:30:53'),(82,'2005-05-25 12:17:46',1388,427,'2005-06-01 10:48:46',1,'2006-02-15 21:30:53'),(83,'2005-05-25 12:30:15',466,131,'2005-05-27 15:40:15',1,'2006-02-15 21:30:53'),(84,'2005-05-25 12:36:30',1829,492,'2005-05-29 18:33:30',1,'2006-02-15 21:30:53'),(85,'2005-05-25 13:05:34',470,414,'2005-05-29 16:53:34',1,'2006-02-15 21:30:53'),(86,'2005-05-25 13:36:12',2275,266,'2005-05-30 14:53:12',1,'2006-02-15 21:30:53'),(87,'2005-05-25 13:52:43',1586,331,'2005-05-29 11:12:43',2,'2006-02-15 21:30:53'),(88,'2005-05-25 14:13:54',2221,53,'2005-05-29 09:32:54',2,'2006-02-15 21:30:53'),(89,'2005-05-25 14:28:29',2181,499,'2005-05-29 14:33:29',1,'2006-02-15 21:30:53'),(90,'2005-05-25 14:31:25',2984,25,'2005-06-01 10:07:25',1,'2006-02-15 21:30:53'),(91,'2005-05-25 14:57:22',139,267,'2005-06-01 18:32:22',1,'2006-02-15 21:30:53'),(92,'2005-05-25 15:38:46',775,302,'2005-05-31 13:40:46',2,'2006-02-15 21:30:53'),(93,'2005-05-25 15:54:16',4360,288,'2005-06-03 20:18:16',1,'2006-02-15 21:30:53'),(94,'2005-05-25 16:03:42',1675,197,'2005-05-30 14:23:42',1,'2006-02-15 21:30:53'),(95,'2005-05-25 16:12:52',178,400,'2005-06-02 18:55:52',2,'2006-02-15 21:30:53'),(96,'2005-05-25 16:32:19',3418,49,'2005-05-30 10:47:19',2,'2006-02-15 21:30:53'),(97,'2005-05-25 16:34:24',1283,263,'2005-05-28 12:13:24',2,'2006-02-15 21:30:53'),(98,'2005-05-25 16:48:24',2970,269,'2005-05-27 11:29:24',2,'2006-02-15 21:30:53'),(99,'2005-05-25 16:50:20',535,44,'2005-05-28 18:52:20',1,'2006-02-15 21:30:53'),(100,'2005-05-25 16:50:28',2599,208,'2005-06-02 22:11:28',1,'2006-02-15 21:30:53'),(101,'2005-05-25 17:17:04',617,468,'2005-05-31 19:47:04',1,'2006-02-15 21:30:53'),(102,'2005-05-25 17:22:10',373,343,'2005-05-31 19:47:10',1,'2006-02-15 21:30:53'),(103,'2005-05-25 17:30:42',3343,384,'2005-06-03 22:36:42',1,'2006-02-15 21:30:53'),(104,'2005-05-25 17:46:33',4281,310,'2005-05-27 15:20:33',1,'2006-02-15 21:30:53'),(105,'2005-05-25 17:54:12',794,108,'2005-05-30 12:03:12',2,'2006-02-15 21:30:53'),(106,'2005-05-25 18:18:19',3627,196,'2005-06-04 00:01:19',2,'2006-02-15 21:30:53'),(107,'2005-05-25 18:28:09',2833,317,'2005-06-03 22:46:09',2,'2006-02-15 21:30:53'),(108,'2005-05-25 18:30:05',3289,242,'2005-05-30 19:40:05',1,'2006-02-15 21:30:53'),(109,'2005-05-25 18:40:20',1044,503,'2005-05-29 20:39:20',2,'2006-02-15 21:30:53'),(110,'2005-05-25 18:43:49',4108,19,'2005-06-03 18:13:49',2,'2006-02-15 21:30:53'),(111,'2005-05-25 18:45:19',3725,227,'2005-05-28 17:18:19',1,'2006-02-15 21:30:53'),(112,'2005-05-25 18:57:24',2153,500,'2005-06-02 20:44:24',1,'2006-02-15 21:30:53'),(113,'2005-05-25 19:07:40',2963,93,'2005-05-27 22:16:40',2,'2006-02-15 21:30:53'),(114,'2005-05-25 19:12:42',4502,506,'2005-06-01 23:10:42',1,'2006-02-15 21:30:53'),(115,'2005-05-25 19:13:25',749,455,'2005-05-29 20:17:25',1,'2006-02-15 21:30:53'),(116,'2005-05-25 19:27:51',4453,18,'2005-05-26 16:23:51',1,'2006-02-15 21:30:53'),(117,'2005-05-25 19:30:46',4278,7,'2005-05-31 23:59:46',2,'2006-02-15 21:30:53'),(118,'2005-05-25 19:31:18',872,524,'2005-05-31 15:00:18',1,'2006-02-15 21:30:53'),(119,'2005-05-25 19:37:02',1359,51,'2005-05-29 23:51:02',2,'2006-02-15 21:30:53'),(120,'2005-05-25 19:37:47',37,365,'2005-06-01 23:29:47',2,'2006-02-15 21:30:53'),(121,'2005-05-25 19:41:29',1053,405,'2005-05-29 21:31:29',1,'2006-02-15 21:30:53'),(122,'2005-05-25 19:46:21',2908,273,'2005-06-02 19:07:21',1,'2006-02-15 21:30:53'),(123,'2005-05-25 20:26:42',1795,43,'2005-05-26 19:41:42',1,'2006-02-15 21:30:53'),(124,'2005-05-25 20:46:11',212,246,'2005-05-30 00:47:11',2,'2006-02-15 21:30:53'),(125,'2005-05-25 20:48:50',952,368,'2005-06-02 21:39:50',1,'2006-02-15 21:30:53'),(126,'2005-05-25 21:07:59',2047,439,'2005-05-28 18:51:59',1,'2006-02-15 21:30:53'),(127,'2005-05-25 21:10:40',2026,94,'2005-06-02 21:38:40',1,'2006-02-15 21:30:53'),(128,'2005-05-25 21:19:53',4322,40,'2005-05-29 23:34:53',1,'2006-02-15 21:30:53'),(129,'2005-05-25 21:20:03',4154,23,'2005-06-04 01:25:03',2,'2006-02-15 21:30:53'),(130,'2005-05-25 21:21:56',3990,56,'2005-05-30 22:41:56',2,'2006-02-15 21:30:53'),(131,'2005-05-25 21:42:46',815,325,'2005-05-30 23:25:46',2,'2006-02-15 21:30:53'),(132,'2005-05-25 21:46:54',3367,479,'2005-05-31 21:02:54',1,'2006-02-15 21:30:53'),(133,'2005-05-25 21:48:30',399,237,'2005-05-30 00:26:30',2,'2006-02-15 21:30:53'),(134,'2005-05-25 21:48:41',2272,222,'2005-06-02 18:28:41',1,'2006-02-15 21:30:53'),(135,'2005-05-25 21:58:58',103,304,'2005-06-03 17:50:58',1,'2006-02-15 21:30:53'),(136,'2005-05-25 22:02:30',2296,504,'2005-05-31 18:06:30',1,'2006-02-15 21:30:53'),(137,'2005-05-25 22:25:18',2591,560,'2005-06-01 02:30:18',2,'2006-02-15 21:30:53'),(138,'2005-05-25 22:48:22',4134,586,'2005-05-29 20:21:22',2,'2006-02-15 21:30:53'),(139,'2005-05-25 23:00:21',327,257,'2005-05-29 17:12:21',1,'2006-02-15 21:30:53'),(140,'2005-05-25 23:34:22',655,354,'2005-05-27 01:10:22',1,'2006-02-15 21:30:53'),(141,'2005-05-25 23:34:53',811,89,'2005-06-02 01:57:53',1,'2006-02-15 21:30:53'),(142,'2005-05-25 23:43:47',4407,472,'2005-05-29 00:46:47',2,'2006-02-15 21:30:53'),(143,'2005-05-25 23:45:52',847,297,'2005-05-27 21:41:52',2,'2006-02-15 21:30:53'),(144,'2005-05-25 23:49:56',1689,357,'2005-06-01 21:41:56',2,'2006-02-15 21:30:53'),(145,'2005-05-25 23:59:03',3905,82,'2005-05-31 02:56:03',1,'2006-02-15 21:30:53'),(146,'2005-05-26 00:07:11',1431,433,'2005-06-04 00:20:11',2,'2006-02-15 21:30:53'),(147,'2005-05-26 00:17:50',633,274,'2005-05-29 23:21:50',2,'2006-02-15 21:30:53'),(148,'2005-05-26 00:25:23',4252,142,'2005-06-01 19:29:23',2,'2006-02-15 21:30:53'),(149,'2005-05-26 00:28:05',1084,319,'2005-06-02 21:30:05',2,'2006-02-15 21:30:53'),(150,'2005-05-26 00:28:39',909,429,'2005-06-01 02:10:39',2,'2006-02-15 21:30:53'),(151,'2005-05-26 00:37:28',2942,14,'2005-05-30 06:28:28',1,'2006-02-15 21:30:53'),(152,'2005-05-26 00:41:10',2622,57,'2005-06-03 06:05:10',1,'2006-02-15 21:30:53'),(153,'2005-05-26 00:47:47',3888,348,'2005-05-27 21:28:47',1,'2006-02-15 21:30:53'),(154,'2005-05-26 00:55:56',1354,185,'2005-05-29 23:18:56',2,'2006-02-15 21:30:53'),(155,'2005-05-26 01:15:05',288,551,'2005-06-01 00:03:05',1,'2006-02-15 21:30:53'),(156,'2005-05-26 01:19:05',3193,462,'2005-05-27 23:43:05',1,'2006-02-15 21:30:53'),(157,'2005-05-26 01:25:21',887,344,'2005-05-26 21:17:21',2,'2006-02-15 21:30:53'),(158,'2005-05-26 01:27:11',2395,354,'2005-06-03 00:30:11',2,'2006-02-15 21:30:53'),(159,'2005-05-26 01:34:28',3453,505,'2005-05-29 04:00:28',1,'2006-02-15 21:30:53'),(160,'2005-05-26 01:46:20',1885,290,'2005-06-01 05:45:20',1,'2006-02-15 21:30:53'),(161,'2005-05-26 01:51:48',2941,182,'2005-05-27 05:42:48',1,'2006-02-15 21:30:53'),(162,'2005-05-26 02:02:05',1229,296,'2005-05-27 03:38:05',2,'2006-02-15 21:30:53'),(163,'2005-05-26 02:26:23',2306,104,'2005-06-04 06:36:23',1,'2006-02-15 21:30:53'),(164,'2005-05-26 02:26:49',1070,151,'2005-05-28 00:32:49',1,'2006-02-15 21:30:53'),(165,'2005-05-26 02:28:36',2735,33,'2005-06-02 03:21:36',1,'2006-02-15 21:30:53'),(166,'2005-05-26 02:49:11',3894,322,'2005-05-31 01:28:11',1,'2006-02-15 21:30:53'),(167,'2005-05-26 02:50:31',865,401,'2005-05-27 03:07:31',1,'2006-02-15 21:30:53'),(168,'2005-05-26 03:07:43',2714,469,'2005-06-02 02:09:43',2,'2006-02-15 21:30:53'),(169,'2005-05-26 03:09:30',1758,381,'2005-05-27 01:37:30',2,'2006-02-15 21:30:53'),(170,'2005-05-26 03:11:12',3688,107,'2005-06-02 03:53:12',1,'2006-02-15 21:30:53'),(171,'2005-05-26 03:14:15',4483,400,'2005-06-03 00:24:15',2,'2006-02-15 21:30:53'),(172,'2005-05-26 03:17:42',2873,176,'2005-05-29 04:11:42',2,'2006-02-15 21:30:53'),(173,'2005-05-26 03:42:10',3596,533,'2005-05-28 01:37:10',2,'2006-02-15 21:30:53'),(174,'2005-05-26 03:44:10',3954,552,'2005-05-28 07:13:10',2,'2006-02-15 21:30:53'),(175,'2005-05-26 03:46:26',4346,47,'2005-06-03 06:01:26',2,'2006-02-15 21:30:53'),(176,'2005-05-26 03:47:39',851,250,'2005-06-01 02:36:39',2,'2006-02-15 21:30:53'),(177,'2005-05-26 04:14:29',3545,548,'2005-06-01 08:16:29',2,'2006-02-15 21:30:53'),(178,'2005-05-26 04:21:46',1489,196,'2005-06-04 07:09:46',2,'2006-02-15 21:30:53'),(179,'2005-05-26 04:26:06',2575,19,'2005-06-03 10:06:06',1,'2006-02-15 21:30:53'),(180,'2005-05-26 04:46:23',2752,75,'2005-06-01 09:58:23',1,'2006-02-15 21:30:53'),(181,'2005-05-26 04:47:06',2417,587,'2005-05-29 06:34:06',2,'2006-02-15 21:30:53'),(182,'2005-05-26 04:49:17',4396,237,'2005-06-01 05:43:17',2,'2006-02-15 21:30:53'),(183,'2005-05-26 05:01:18',2877,254,'2005-06-01 09:04:18',1,'2006-02-15 21:30:53'),(184,'2005-05-26 05:29:49',1970,556,'2005-05-28 10:10:49',1,'2006-02-15 21:30:53'),(185,'2005-05-26 05:30:03',2598,125,'2005-06-02 09:48:03',2,'2006-02-15 21:30:53'),(186,'2005-05-26 05:32:52',1799,468,'2005-06-03 07:19:52',2,'2006-02-15 21:30:53'),(187,'2005-05-26 05:42:37',4004,515,'2005-06-04 00:38:37',1,'2006-02-15 21:30:53'),(188,'2005-05-26 05:47:12',3342,243,'2005-05-26 23:48:12',1,'2006-02-15 21:30:53'),(189,'2005-05-26 06:01:41',984,247,'2005-05-27 06:11:41',1,'2006-02-15 21:30:53'),(190,'2005-05-26 06:11:28',3962,533,'2005-06-01 09:44:28',1,'2006-02-15 21:30:53'),(191,'2005-05-26 06:14:06',4365,412,'2005-05-28 05:33:06',1,'2006-02-15 21:30:53'),(192,'2005-05-26 06:20:37',1897,437,'2005-06-02 10:57:37',1,'2006-02-15 21:30:53'),(193,'2005-05-26 06:41:48',3900,270,'2005-05-30 06:21:48',2,'2006-02-15 21:30:53'),(194,'2005-05-26 06:52:33',1337,29,'2005-05-30 04:08:33',2,'2006-02-15 21:30:53'),(195,'2005-05-26 06:52:36',506,564,'2005-05-31 02:47:36',2,'2006-02-15 21:30:53'),(196,'2005-05-26 06:55:58',190,184,'2005-05-27 10:54:58',1,'2006-02-15 21:30:53'),(197,'2005-05-26 06:59:21',4212,546,'2005-06-03 05:04:21',2,'2006-02-15 21:30:53'),(198,'2005-05-26 07:03:49',1789,54,'2005-06-04 11:45:49',1,'2006-02-15 21:30:53'),(199,'2005-05-26 07:11:58',2135,71,'2005-05-28 09:06:58',1,'2006-02-15 21:30:53'),(200,'2005-05-26 07:12:21',3926,321,'2005-05-31 12:07:21',1,'2006-02-15 21:30:53'),(201,'2005-05-26 07:13:45',776,444,'2005-06-04 02:02:45',2,'2006-02-15 21:30:53'),(202,'2005-05-26 07:27:36',674,20,'2005-06-02 03:52:36',1,'2006-02-15 21:30:53'),(203,'2005-05-26 07:27:57',3374,109,'2005-06-03 12:52:57',1,'2006-02-15 21:30:53'),(204,'2005-05-26 07:30:37',1842,528,'2005-05-30 08:11:37',1,'2006-02-15 21:30:53'),(205,'2005-05-26 07:59:37',303,114,'2005-05-29 09:43:37',2,'2006-02-15 21:30:53'),(206,'2005-05-26 08:01:54',1717,345,'2005-05-27 06:26:54',1,'2006-02-15 21:30:53'),(207,'2005-05-26 08:04:38',102,47,'2005-05-27 09:32:38',2,'2006-02-15 21:30:53'),(208,'2005-05-26 08:10:22',3669,274,'2005-05-27 03:55:22',1,'2006-02-15 21:30:53'),(209,'2005-05-26 08:14:01',729,379,'2005-05-27 09:00:01',1,'2006-02-15 21:30:53'),(210,'2005-05-26 08:14:15',1801,391,'2005-05-27 12:12:15',2,'2006-02-15 21:30:53'),(211,'2005-05-26 08:33:10',4005,170,'2005-05-28 14:09:10',1,'2006-02-15 21:30:53'),(212,'2005-05-26 08:34:41',764,59,'2005-05-30 12:46:41',2,'2006-02-15 21:30:53'),(213,'2005-05-26 08:44:08',1505,394,'2005-05-31 12:33:08',2,'2006-02-15 21:30:53'),(214,'2005-05-26 08:48:49',1453,98,'2005-05-31 04:06:49',2,'2006-02-15 21:30:53'),(215,'2005-05-26 09:02:47',679,197,'2005-05-28 09:45:47',2,'2006-02-15 21:30:53'),(216,'2005-05-26 09:17:43',1398,91,'2005-06-03 08:21:43',1,'2006-02-15 21:30:53'),(217,'2005-05-26 09:24:26',4395,121,'2005-05-31 03:24:26',2,'2006-02-15 21:30:53'),(218,'2005-05-26 09:27:09',2291,309,'2005-06-04 11:53:09',2,'2006-02-15 21:30:53'),(219,'2005-05-26 09:41:45',3074,489,'2005-05-28 04:40:45',1,'2006-02-15 21:30:53'),(220,'2005-05-26 10:06:49',1259,542,'2005-06-01 07:43:49',1,'2006-02-15 21:30:53'),(221,'2005-05-26 10:14:09',3578,143,'2005-05-29 05:57:09',1,'2006-02-15 21:30:53'),(222,'2005-05-26 10:14:38',2745,83,'2005-05-31 08:36:38',2,'2006-02-15 21:30:53'),(223,'2005-05-26 10:15:23',3121,460,'2005-05-30 11:43:23',1,'2006-02-15 21:30:53'),(224,'2005-05-26 10:18:27',4285,318,'2005-06-04 06:59:27',1,'2006-02-15 21:30:53'),(225,'2005-05-26 10:27:50',651,467,'2005-06-01 07:01:50',2,'2006-02-15 21:30:53'),(226,'2005-05-26 10:44:04',4181,221,'2005-05-31 13:26:04',2,'2006-02-15 21:30:53'),(227,'2005-05-26 10:51:46',214,301,'2005-05-30 07:24:46',1,'2006-02-15 21:30:53'),(228,'2005-05-26 10:54:28',511,571,'2005-06-04 09:39:28',1,'2006-02-15 21:30:53'),(229,'2005-05-26 11:19:20',1131,312,'2005-05-31 11:56:20',2,'2006-02-15 21:30:53'),(230,'2005-05-26 11:31:50',1085,58,'2005-05-30 15:22:50',1,'2006-02-15 21:30:53'),(231,'2005-05-26 11:31:59',4032,365,'2005-05-27 07:27:59',1,'2006-02-15 21:30:53'),(232,'2005-05-26 11:38:05',2945,256,'2005-05-27 08:42:05',2,'2006-02-15 21:30:53'),(233,'2005-05-26 11:43:44',715,531,'2005-05-28 17:28:44',2,'2006-02-15 21:30:53'),(234,'2005-05-26 11:47:20',1321,566,'2005-06-03 10:39:20',2,'2006-02-15 21:30:53'),(235,'2005-05-26 11:51:09',3537,119,'2005-06-04 09:36:09',1,'2006-02-15 21:30:53'),(236,'2005-05-26 11:53:49',1265,446,'2005-05-28 13:55:49',1,'2006-02-15 21:30:53'),(237,'2005-05-26 12:15:13',241,536,'2005-05-29 18:10:13',1,'2006-02-15 21:30:53'),(238,'2005-05-26 12:30:22',503,211,'2005-05-27 06:49:22',1,'2006-02-15 21:30:53'),(239,'2005-05-26 12:30:26',131,49,'2005-06-01 13:26:26',2,'2006-02-15 21:30:53'),(240,'2005-05-26 12:40:23',3420,103,'2005-06-04 07:22:23',1,'2006-02-15 21:30:53'),(241,'2005-05-26 12:49:01',4438,245,'2005-05-28 11:43:01',2,'2006-02-15 21:30:53'),(242,'2005-05-26 13:05:08',2095,214,'2005-06-02 15:26:08',1,'2006-02-15 21:30:53'),(243,'2005-05-26 13:06:05',1721,543,'2005-06-03 17:28:05',2,'2006-02-15 21:30:53'),(244,'2005-05-26 13:40:40',1041,257,'2005-05-31 11:58:40',1,'2006-02-15 21:30:53'),(245,'2005-05-26 13:46:59',3045,158,'2005-05-27 09:58:59',2,'2006-02-15 21:30:53'),(246,'2005-05-26 13:57:07',2829,240,'2005-05-29 10:12:07',2,'2006-02-15 21:30:53'),(247,'2005-05-26 14:01:05',4095,102,'2005-05-28 13:38:05',2,'2006-02-15 21:30:53'),(248,'2005-05-26 14:07:58',1913,545,'2005-05-31 14:03:58',2,'2006-02-15 21:30:53'),(249,'2005-05-26 14:19:09',2428,472,'2005-05-28 17:47:09',2,'2006-02-15 21:30:53'),(250,'2005-05-26 14:30:24',368,539,'2005-05-27 08:50:24',1,'2006-02-15 21:30:53'),(251,'2005-05-26 14:35:40',4352,204,'2005-05-29 17:17:40',1,'2006-02-15 21:30:53'),(252,'2005-05-26 14:39:53',1203,187,'2005-06-02 14:48:53',1,'2006-02-15 21:30:53'),(253,'2005-05-26 14:43:14',2969,416,'2005-05-27 12:21:14',1,'2006-02-15 21:30:53'),(254,'2005-05-26 14:43:48',1835,390,'2005-05-31 09:19:48',2,'2006-02-15 21:30:53'),(255,'2005-05-26 14:52:15',3264,114,'2005-05-27 12:45:15',1,'2006-02-15 21:30:53'),(256,'2005-05-26 15:20:58',3194,436,'2005-05-31 15:58:58',1,'2006-02-15 21:30:53'),(257,'2005-05-26 15:27:05',2570,373,'2005-05-29 16:25:05',2,'2006-02-15 21:30:53'),(258,'2005-05-26 15:28:14',3534,502,'2005-05-30 18:38:14',2,'2006-02-15 21:30:53'),(259,'2005-05-26 15:32:46',30,482,'2005-06-04 15:27:46',2,'2006-02-15 21:30:53'),(260,'2005-05-26 15:42:20',435,21,'2005-05-31 13:21:20',2,'2006-02-15 21:30:53'),(261,'2005-05-26 15:44:23',1369,414,'2005-06-02 09:47:23',2,'2006-02-15 21:30:53'),(262,'2005-05-26 15:46:56',4261,236,'2005-05-28 15:49:56',2,'2006-02-15 21:30:53'),(263,'2005-05-26 15:47:40',1160,449,'2005-05-30 10:07:40',2,'2006-02-15 21:30:53'),(264,'2005-05-26 16:00:49',2069,251,'2005-05-27 10:12:49',2,'2006-02-15 21:30:53'),(265,'2005-05-26 16:07:38',2276,303,'2005-06-01 14:20:38',1,'2006-02-15 21:30:53'),(266,'2005-05-26 16:08:05',3303,263,'2005-05-27 10:55:05',2,'2006-02-15 21:30:53'),(267,'2005-05-26 16:16:21',1206,417,'2005-05-30 16:53:21',2,'2006-02-15 21:30:53'),(268,'2005-05-26 16:19:08',1714,75,'2005-05-27 14:35:08',1,'2006-02-15 21:30:53'),(269,'2005-05-26 16:19:46',3501,322,'2005-05-27 15:59:46',2,'2006-02-15 21:30:53'),(270,'2005-05-26 16:20:56',207,200,'2005-06-03 12:40:56',2,'2006-02-15 21:30:53'),(271,'2005-05-26 16:22:01',2388,92,'2005-06-03 17:30:01',2,'2006-02-15 21:30:53'),(272,'2005-05-26 16:27:11',971,71,'2005-06-03 13:10:11',2,'2006-02-15 21:30:53'),(273,'2005-05-26 16:29:36',1590,193,'2005-05-29 18:49:36',2,'2006-02-15 21:30:53'),(274,'2005-05-26 16:48:51',656,311,'2005-06-03 18:17:51',1,'2006-02-15 21:30:53'),(275,'2005-05-26 17:09:53',1718,133,'2005-06-04 22:35:53',1,'2006-02-15 21:30:53'),(276,'2005-05-26 17:16:07',1221,58,'2005-06-03 12:59:07',1,'2006-02-15 21:30:53'),(277,'2005-05-26 17:32:11',1409,45,'2005-05-28 22:54:11',1,'2006-02-15 21:30:53'),(278,'2005-05-26 17:40:58',182,214,'2005-06-02 16:43:58',2,'2006-02-15 21:30:53'),(279,'2005-05-26 18:02:50',661,384,'2005-06-03 18:48:50',2,'2006-02-15 21:30:53'),(280,'2005-05-26 18:36:58',1896,167,'2005-05-27 23:42:58',1,'2006-02-15 21:30:53'),(281,'2005-05-26 18:49:35',1208,582,'2005-05-27 18:11:35',2,'2006-02-15 21:30:53'),(282,'2005-05-26 18:56:26',4486,282,'2005-06-01 16:32:26',2,'2006-02-15 21:30:53'),(283,'2005-05-26 19:05:05',3530,242,'2005-05-31 19:19:05',1,'2006-02-15 21:30:53'),(284,'2005-05-26 19:21:44',350,359,'2005-06-04 14:18:44',2,'2006-02-15 21:30:53'),(285,'2005-05-26 19:41:40',2486,162,'2005-05-31 16:58:40',2,'2006-02-15 21:30:53'),(286,'2005-05-26 19:44:51',314,371,'2005-06-04 18:00:51',2,'2006-02-15 21:30:53'),(287,'2005-05-26 19:44:54',3631,17,'2005-06-02 01:10:54',1,'2006-02-15 21:30:53'),(288,'2005-05-26 19:47:49',3546,82,'2005-06-03 20:53:49',2,'2006-02-15 21:30:53'),(289,'2005-05-26 20:01:09',2449,81,'2005-05-28 15:09:09',1,'2006-02-15 21:30:53'),(290,'2005-05-26 20:08:33',2776,429,'2005-05-30 00:32:33',1,'2006-02-15 21:30:53'),(291,'2005-05-26 20:20:47',485,577,'2005-06-03 02:06:47',2,'2006-02-15 21:30:53'),(292,'2005-05-26 20:22:12',4264,515,'2005-06-05 00:58:12',1,'2006-02-15 21:30:53'),(293,'2005-05-26 20:27:02',1828,158,'2005-06-03 16:45:02',2,'2006-02-15 21:30:53'),(294,'2005-05-26 20:29:57',2751,369,'2005-05-28 17:20:57',1,'2006-02-15 21:30:53'),(295,'2005-05-26 20:33:20',4030,65,'2005-05-27 18:23:20',2,'2006-02-15 21:30:53'),(296,'2005-05-26 20:35:19',3878,468,'2005-06-04 02:31:19',2,'2006-02-15 21:30:53'),(297,'2005-05-26 20:48:48',1594,48,'2005-05-27 19:52:48',2,'2006-02-15 21:30:53'),(298,'2005-05-26 20:52:26',1083,460,'2005-05-29 22:08:26',2,'2006-02-15 21:30:53'),(299,'2005-05-26 20:55:36',4376,448,'2005-05-28 00:25:36',2,'2006-02-15 21:30:53'),(300,'2005-05-26 20:57:00',249,47,'2005-06-05 01:34:00',2,'2006-02-15 21:30:53'),(301,'2005-05-26 21:06:14',3448,274,'2005-06-01 01:54:14',2,'2006-02-15 21:30:53'),(302,'2005-05-26 21:13:46',2921,387,'2005-06-03 15:49:46',2,'2006-02-15 21:30:53'),(303,'2005-05-26 21:16:52',1111,596,'2005-05-27 23:41:52',2,'2006-02-15 21:30:53'),(304,'2005-05-26 21:21:28',1701,534,'2005-06-02 00:05:28',1,'2006-02-15 21:30:53'),(305,'2005-05-26 21:22:07',2665,464,'2005-06-02 22:33:07',2,'2006-02-15 21:30:53'),(306,'2005-05-26 21:31:57',2781,547,'2005-05-28 19:37:57',1,'2006-02-15 21:30:53'),(307,'2005-05-26 21:48:13',1097,375,'2005-06-04 22:24:13',1,'2006-02-15 21:30:53'),(308,'2005-05-26 22:01:39',187,277,'2005-06-04 20:24:39',2,'2006-02-15 21:30:53'),(309,'2005-05-26 22:38:10',1946,251,'2005-06-02 03:10:10',2,'2006-02-15 21:30:53'),(310,'2005-05-26 22:41:07',593,409,'2005-06-02 04:09:07',1,'2006-02-15 21:30:53'),(311,'2005-05-26 22:51:37',2830,201,'2005-06-01 00:02:37',1,'2006-02-15 21:30:53'),(312,'2005-05-26 22:52:19',2008,143,'2005-06-02 18:14:19',2,'2006-02-15 21:30:53'),(313,'2005-05-26 22:56:19',4156,594,'2005-05-29 01:29:19',2,'2006-02-15 21:30:53'),(314,'2005-05-26 23:09:41',2851,203,'2005-05-28 22:49:41',2,'2006-02-15 21:30:53'),(315,'2005-05-26 23:12:55',2847,238,'2005-05-29 23:33:55',1,'2006-02-15 21:30:53'),(316,'2005-05-26 23:22:55',3828,249,'2005-05-29 23:25:55',2,'2006-02-15 21:30:53'),(317,'2005-05-26 23:23:56',26,391,'2005-06-01 19:56:56',2,'2006-02-15 21:30:53'),(318,'2005-05-26 23:37:39',2559,60,'2005-06-03 04:31:39',2,'2006-02-15 21:30:53'),(319,'2005-05-26 23:52:13',3024,77,'2005-05-30 18:55:13',1,'2006-02-15 21:30:53'),(320,'2005-05-27 00:09:24',1090,2,'2005-05-28 04:30:24',2,'2006-02-15 21:30:53'),(322,'2005-05-27 00:47:35',4556,496,'2005-06-02 00:32:35',1,'2006-02-15 21:30:53'),(323,'2005-05-27 00:49:27',2362,144,'2005-05-30 03:12:27',1,'2006-02-15 21:30:53'),(324,'2005-05-27 01:00:04',3364,292,'2005-05-30 04:27:04',1,'2006-02-15 21:30:53'),(325,'2005-05-27 01:09:55',2510,449,'2005-05-31 07:01:55',2,'2006-02-15 21:30:53'),(326,'2005-05-27 01:10:11',3979,432,'2005-06-04 20:25:11',2,'2006-02-15 21:30:53'),(327,'2005-05-27 01:18:57',2678,105,'2005-06-04 04:06:57',1,'2006-02-15 21:30:53'),(328,'2005-05-27 01:29:31',2524,451,'2005-06-01 02:27:31',1,'2006-02-15 21:30:53'),(329,'2005-05-27 01:57:14',2659,231,'2005-05-31 04:19:14',2,'2006-02-15 21:30:53'),(330,'2005-05-27 02:15:30',1536,248,'2005-06-04 05:09:30',2,'2006-02-15 21:30:53'),(331,'2005-05-27 02:22:26',1872,67,'2005-06-05 00:25:26',1,'2006-02-15 21:30:53'),(332,'2005-05-27 02:27:10',1529,299,'2005-06-03 01:26:10',2,'2006-02-15 21:30:53'),(333,'2005-05-27 02:52:21',4001,412,'2005-06-01 00:55:21',2,'2006-02-15 21:30:53'),(334,'2005-05-27 03:03:07',3973,194,'2005-05-29 03:54:07',1,'2006-02-15 21:30:53'),(335,'2005-05-27 03:07:10',1411,16,'2005-06-05 00:15:10',2,'2006-02-15 21:30:53'),(336,'2005-05-27 03:15:23',1811,275,'2005-05-29 22:43:23',1,'2006-02-15 21:30:53'),(337,'2005-05-27 03:22:30',751,19,'2005-06-02 03:27:30',1,'2006-02-15 21:30:53'),(338,'2005-05-27 03:42:52',2596,165,'2005-06-01 05:23:52',2,'2006-02-15 21:30:53'),(339,'2005-05-27 03:47:18',2410,516,'2005-06-04 05:46:18',2,'2006-02-15 21:30:53'),(340,'2005-05-27 03:55:25',946,209,'2005-06-04 07:57:25',2,'2006-02-15 21:30:53'),(341,'2005-05-27 04:01:42',4168,56,'2005-06-05 08:51:42',1,'2006-02-15 21:30:53'),(342,'2005-05-27 04:11:04',4019,539,'2005-05-29 01:28:04',2,'2006-02-15 21:30:53'),(343,'2005-05-27 04:13:41',3301,455,'2005-05-28 08:34:41',1,'2006-02-15 21:30:53'),(344,'2005-05-27 04:30:22',2327,236,'2005-05-29 10:13:22',2,'2006-02-15 21:30:53'),(345,'2005-05-27 04:32:25',1396,144,'2005-05-31 09:50:25',1,'2006-02-15 21:30:53'),(346,'2005-05-27 04:34:41',4319,14,'2005-06-05 04:24:41',2,'2006-02-15 21:30:53'),(347,'2005-05-27 04:40:33',1625,378,'2005-05-28 09:56:33',2,'2006-02-15 21:30:53'),(348,'2005-05-27 04:50:56',1825,473,'2005-06-01 04:43:56',1,'2006-02-15 21:30:53'),(349,'2005-05-27 04:53:11',2920,36,'2005-05-28 06:33:11',2,'2006-02-15 21:30:53'),(350,'2005-05-27 05:01:28',2756,9,'2005-06-04 05:01:28',2,'2006-02-15 21:30:53'),(351,'2005-05-27 05:39:03',3371,118,'2005-06-01 11:10:03',1,'2006-02-15 21:30:53'),(352,'2005-05-27 05:48:19',4369,157,'2005-05-29 09:05:19',1,'2006-02-15 21:30:53'),(353,'2005-05-27 06:03:39',3989,503,'2005-06-03 04:39:39',2,'2006-02-15 21:30:53'),(354,'2005-05-27 06:12:26',2058,452,'2005-06-01 06:48:26',1,'2006-02-15 21:30:53'),(355,'2005-05-27 06:15:33',141,446,'2005-06-01 02:50:33',2,'2006-02-15 21:30:53'),(356,'2005-05-27 06:32:30',2868,382,'2005-05-30 06:24:30',2,'2006-02-15 21:30:53'),(357,'2005-05-27 06:37:15',4417,198,'2005-05-30 07:04:15',2,'2006-02-15 21:30:53'),(358,'2005-05-27 06:43:59',1925,102,'2005-05-29 11:28:59',2,'2006-02-15 21:30:53'),(359,'2005-05-27 06:48:33',1156,152,'2005-05-29 03:55:33',1,'2006-02-15 21:30:53'),(360,'2005-05-27 06:51:14',3489,594,'2005-06-03 01:58:14',1,'2006-02-15 21:30:53'),(361,'2005-05-27 07:03:28',6,587,'2005-05-31 08:01:28',1,'2006-02-15 21:30:53'),(362,'2005-05-27 07:10:25',2324,147,'2005-06-01 08:34:25',1,'2006-02-15 21:30:53'),(363,'2005-05-27 07:14:00',4282,345,'2005-05-28 12:22:00',2,'2006-02-15 21:30:53'),(364,'2005-05-27 07:20:12',833,430,'2005-05-31 10:44:12',2,'2006-02-15 21:30:53'),(365,'2005-05-27 07:31:20',2887,167,'2005-06-04 04:46:20',1,'2006-02-15 21:30:53'),(366,'2005-05-27 07:33:54',360,134,'2005-06-04 01:55:54',2,'2006-02-15 21:30:53'),(367,'2005-05-27 07:37:02',3437,439,'2005-05-30 05:43:02',2,'2006-02-15 21:30:53'),(368,'2005-05-27 07:42:29',1247,361,'2005-06-04 11:20:29',2,'2006-02-15 21:30:53'),(369,'2005-05-27 07:46:49',944,508,'2005-06-01 06:20:49',2,'2006-02-15 21:30:53'),(370,'2005-05-27 07:49:43',3347,22,'2005-06-05 06:39:43',2,'2006-02-15 21:30:53'),(371,'2005-05-27 08:08:18',1235,295,'2005-06-05 03:05:18',2,'2006-02-15 21:30:53'),(372,'2005-05-27 08:13:58',4089,510,'2005-06-04 03:50:58',2,'2006-02-15 21:30:53'),(373,'2005-05-27 08:16:25',1649,464,'2005-06-01 11:41:25',1,'2006-02-15 21:30:53'),(374,'2005-05-27 08:26:30',4420,337,'2005-06-05 07:13:30',1,'2006-02-15 21:30:53'),(375,'2005-05-27 08:49:21',1815,306,'2005-06-04 14:11:21',1,'2006-02-15 21:30:53'),(376,'2005-05-27 08:58:15',3197,542,'2005-06-02 04:48:15',1,'2006-02-15 21:30:53'),(377,'2005-05-27 09:04:05',3012,170,'2005-06-02 03:36:05',2,'2006-02-15 21:30:53'),(378,'2005-05-27 09:23:22',2242,53,'2005-05-29 15:20:22',1,'2006-02-15 21:30:53'),(379,'2005-05-27 09:25:32',3462,584,'2005-06-02 06:19:32',1,'2006-02-15 21:30:53'),(380,'2005-05-27 09:34:39',1777,176,'2005-06-04 11:45:39',1,'2006-02-15 21:30:53'),(381,'2005-05-27 09:43:25',2748,371,'2005-05-31 12:00:25',1,'2006-02-15 21:30:53'),(382,'2005-05-27 10:12:00',4358,183,'2005-05-31 15:03:00',1,'2006-02-15 21:30:53'),(383,'2005-05-27 10:12:20',955,298,'2005-06-03 10:37:20',1,'2006-02-15 21:30:53'),(384,'2005-05-27 10:18:20',910,371,'2005-06-02 09:21:20',2,'2006-02-15 21:30:53'),(385,'2005-05-27 10:23:25',1565,213,'2005-05-30 15:27:25',2,'2006-02-15 21:30:53'),(386,'2005-05-27 10:26:31',1288,109,'2005-05-30 08:32:31',1,'2006-02-15 21:30:53'),(387,'2005-05-27 10:35:27',2684,506,'2005-06-01 13:37:27',2,'2006-02-15 21:30:53'),(388,'2005-05-27 10:37:27',434,28,'2005-05-30 05:45:27',1,'2006-02-15 21:30:53'),(389,'2005-05-27 10:45:41',691,500,'2005-06-05 06:22:41',2,'2006-02-15 21:30:53'),(390,'2005-05-27 11:02:26',3759,48,'2005-06-02 16:09:26',2,'2006-02-15 21:30:53'),(391,'2005-05-27 11:03:55',2193,197,'2005-06-01 11:59:55',2,'2006-02-15 21:30:53'),(392,'2005-05-27 11:14:42',263,359,'2005-06-01 14:28:42',2,'2006-02-15 21:30:53'),(393,'2005-05-27 11:18:25',145,251,'2005-05-28 07:10:25',2,'2006-02-15 21:30:53'),(394,'2005-05-27 11:26:11',1890,274,'2005-06-03 16:44:11',2,'2006-02-15 21:30:53'),(395,'2005-05-27 11:45:49',752,575,'2005-05-31 13:42:49',1,'2006-02-15 21:30:53'),(396,'2005-05-27 11:47:04',1020,112,'2005-05-29 10:14:04',1,'2006-02-15 21:30:53'),(397,'2005-05-27 12:29:02',4193,544,'2005-05-28 17:36:02',2,'2006-02-15 21:30:53'),(398,'2005-05-27 12:44:03',1686,422,'2005-06-02 08:19:03',1,'2006-02-15 21:30:53'),(399,'2005-05-27 12:48:38',553,204,'2005-05-29 15:27:38',1,'2006-02-15 21:30:53'),(400,'2005-05-27 12:51:44',258,249,'2005-05-31 08:34:44',2,'2006-02-15 21:30:53'),(401,'2005-05-27 12:57:55',2179,46,'2005-05-29 17:55:55',2,'2006-02-15 21:30:53'),(402,'2005-05-27 13:17:18',461,354,'2005-05-30 08:53:18',2,'2006-02-15 21:30:53'),(403,'2005-05-27 13:28:52',3983,424,'2005-05-29 11:47:52',2,'2006-02-15 21:30:53'),(404,'2005-05-27 13:31:51',1293,168,'2005-05-30 16:58:51',1,'2006-02-15 21:30:53'),(405,'2005-05-27 13:32:39',4090,272,'2005-06-05 18:53:39',2,'2006-02-15 21:30:53'),(406,'2005-05-27 13:46:46',2136,381,'2005-05-30 12:43:46',1,'2006-02-15 21:30:53'),(407,'2005-05-27 13:57:38',1077,44,'2005-05-31 18:23:38',1,'2006-02-15 21:30:53'),(408,'2005-05-27 13:57:39',1438,84,'2005-05-28 11:57:39',1,'2006-02-15 21:30:53'),(409,'2005-05-27 14:10:58',3652,220,'2005-06-02 10:40:58',2,'2006-02-15 21:30:53'),(410,'2005-05-27 14:11:22',4010,506,'2005-06-02 20:06:22',2,'2006-02-15 21:30:53'),(411,'2005-05-27 14:14:14',1434,388,'2005-06-03 17:39:14',1,'2006-02-15 21:30:53'),(412,'2005-05-27 14:17:23',1400,375,'2005-05-29 15:07:23',2,'2006-02-15 21:30:53'),(413,'2005-05-27 14:45:37',3516,307,'2005-06-03 11:11:37',1,'2006-02-15 21:30:53'),(414,'2005-05-27 14:48:20',1019,219,'2005-05-31 14:39:20',2,'2006-02-15 21:30:53'),(415,'2005-05-27 14:51:45',3698,304,'2005-05-28 19:07:45',2,'2006-02-15 21:30:53'),(416,'2005-05-27 15:02:10',2371,222,'2005-05-29 10:34:10',2,'2006-02-15 21:30:53'),(417,'2005-05-27 15:07:27',2253,475,'2005-05-29 20:01:27',2,'2006-02-15 21:30:53'),(418,'2005-05-27 15:13:17',3063,151,'2005-06-04 12:05:17',2,'2006-02-15 21:30:53'),(419,'2005-05-27 15:15:11',2514,77,'2005-06-02 11:53:11',1,'2006-02-15 21:30:53'),(420,'2005-05-27 15:19:38',619,93,'2005-06-03 15:07:38',2,'2006-02-15 21:30:53'),(421,'2005-05-27 15:30:13',2985,246,'2005-06-04 13:19:13',2,'2006-02-15 21:30:53'),(422,'2005-05-27 15:31:55',1152,150,'2005-06-01 11:47:55',2,'2006-02-15 21:30:53'),(423,'2005-05-27 15:32:57',1783,284,'2005-06-02 19:03:57',1,'2006-02-15 21:30:53'),(424,'2005-05-27 15:34:01',2815,35,'2005-06-05 09:44:01',1,'2006-02-15 21:30:53'),(425,'2005-05-27 15:51:30',1518,182,'2005-06-03 16:52:30',2,'2006-02-15 21:30:53'),(426,'2005-05-27 15:56:57',1103,522,'2005-06-05 11:45:57',1,'2006-02-15 21:30:53'),(427,'2005-05-27 16:10:04',1677,288,'2005-06-05 13:22:04',2,'2006-02-15 21:30:53'),(428,'2005-05-27 16:10:58',3349,161,'2005-05-31 17:24:58',2,'2006-02-15 21:30:53'),(429,'2005-05-27 16:21:26',129,498,'2005-06-05 20:23:26',2,'2006-02-15 21:30:53'),(430,'2005-05-27 16:22:10',1920,190,'2005-06-05 13:10:10',1,'2006-02-15 21:30:53'),(431,'2005-05-27 16:31:05',4507,334,'2005-06-05 11:29:05',1,'2006-02-15 21:30:53'),(432,'2005-05-27 16:40:29',1119,46,'2005-05-29 16:20:29',1,'2006-02-15 21:30:53'),(433,'2005-05-27 16:40:40',4364,574,'2005-05-30 19:55:40',2,'2006-02-15 21:30:53'),(434,'2005-05-27 16:54:27',3360,246,'2005-06-04 22:26:27',1,'2006-02-15 21:30:53'),(435,'2005-05-27 17:17:09',3328,3,'2005-06-02 11:20:09',2,'2006-02-15 21:30:53'),(436,'2005-05-27 17:21:04',4317,267,'2005-05-30 21:26:04',2,'2006-02-15 21:30:53'),(437,'2005-05-27 17:47:22',1800,525,'2005-06-05 14:22:22',2,'2006-02-15 21:30:53'),(438,'2005-05-27 17:52:34',4260,249,'2005-06-05 22:23:34',2,'2006-02-15 21:30:53'),(439,'2005-05-27 17:54:48',354,319,'2005-06-02 23:01:48',2,'2006-02-15 21:30:53'),(440,'2005-05-27 18:00:35',4452,314,'2005-05-29 16:15:35',1,'2006-02-15 21:30:53'),(441,'2005-05-27 18:11:05',1578,54,'2005-05-30 22:45:05',1,'2006-02-15 21:30:53'),(442,'2005-05-27 18:12:13',1457,403,'2005-05-30 12:30:13',2,'2006-02-15 21:30:53'),(443,'2005-05-27 18:35:20',2021,547,'2005-06-04 18:58:20',1,'2006-02-15 21:30:53'),(444,'2005-05-27 18:39:15',723,239,'2005-06-01 15:56:15',1,'2006-02-15 21:30:53'),(445,'2005-05-27 18:42:57',1757,293,'2005-05-30 22:35:57',2,'2006-02-15 21:30:53'),(446,'2005-05-27 18:48:41',1955,401,'2005-06-03 16:42:41',2,'2006-02-15 21:30:53'),(447,'2005-05-27 18:57:02',3890,133,'2005-06-05 18:38:02',1,'2006-02-15 21:30:53'),(448,'2005-05-27 19:03:08',2671,247,'2005-06-03 20:28:08',2,'2006-02-15 21:30:53'),(449,'2005-05-27 19:13:15',2469,172,'2005-06-04 01:08:15',2,'2006-02-15 21:30:53'),(450,'2005-05-27 19:18:54',1343,247,'2005-06-05 23:52:54',1,'2006-02-15 21:30:53'),(451,'2005-05-27 19:27:54',205,87,'2005-05-29 01:07:54',2,'2006-02-15 21:30:53'),(452,'2005-05-27 19:30:33',2993,127,'2005-05-30 20:53:33',2,'2006-02-15 21:30:53'),(453,'2005-05-27 19:31:16',4425,529,'2005-05-29 23:06:16',1,'2006-02-15 21:30:53'),(454,'2005-05-27 19:31:36',3499,575,'2005-05-30 15:46:36',1,'2006-02-15 21:30:53'),(455,'2005-05-27 19:43:29',3344,343,'2005-06-04 23:40:29',2,'2006-02-15 21:30:53'),(456,'2005-05-27 19:50:06',1699,92,'2005-06-02 22:14:06',1,'2006-02-15 21:30:53'),(457,'2005-05-27 19:52:29',2368,300,'2005-06-02 17:17:29',2,'2006-02-15 21:30:53'),(458,'2005-05-27 19:58:36',3350,565,'2005-06-06 00:51:36',1,'2006-02-15 21:30:53'),(459,'2005-05-27 20:00:04',597,468,'2005-05-29 22:47:04',1,'2006-02-15 21:30:53'),(460,'2005-05-27 20:02:03',4238,240,'2005-05-28 16:14:03',1,'2006-02-15 21:30:53'),(461,'2005-05-27 20:08:55',2077,447,'2005-06-01 14:32:55',1,'2006-02-15 21:30:53'),(462,'2005-05-27 20:10:36',2314,364,'2005-06-03 21:12:36',2,'2006-02-15 21:30:53'),(463,'2005-05-27 20:11:47',826,21,'2005-06-04 21:18:47',1,'2006-02-15 21:30:53'),(464,'2005-05-27 20:42:44',1313,193,'2005-05-30 00:49:44',2,'2006-02-15 21:30:53'),(465,'2005-05-27 20:44:36',20,261,'2005-06-02 02:43:36',1,'2006-02-15 21:30:53'),(466,'2005-05-27 20:57:07',1786,442,'2005-05-29 15:52:07',1,'2006-02-15 21:30:53'),(467,'2005-05-27 21:10:03',339,557,'2005-06-01 16:08:03',1,'2006-02-15 21:30:53'),(468,'2005-05-27 21:13:10',2656,101,'2005-06-04 15:26:10',2,'2006-02-15 21:30:53'),(469,'2005-05-27 21:14:26',4463,154,'2005-06-05 21:51:26',1,'2006-02-15 21:30:53'),(470,'2005-05-27 21:17:08',1613,504,'2005-06-04 17:47:08',1,'2006-02-15 21:30:53'),(471,'2005-05-27 21:32:42',2872,209,'2005-05-31 00:39:42',2,'2006-02-15 21:30:53'),(472,'2005-05-27 21:36:15',1338,528,'2005-05-29 21:07:15',1,'2006-02-15 21:30:53'),(473,'2005-05-27 21:36:34',802,105,'2005-06-05 17:02:34',1,'2006-02-15 21:30:53'),(474,'2005-05-27 22:11:56',1474,274,'2005-05-31 19:07:56',1,'2006-02-15 21:30:53'),(475,'2005-05-27 22:16:26',2520,159,'2005-05-28 19:58:26',1,'2006-02-15 21:30:53'),(476,'2005-05-27 22:31:36',2451,543,'2005-06-03 19:12:36',1,'2006-02-15 21:30:53'),(477,'2005-05-27 22:33:33',2437,161,'2005-06-02 18:35:33',2,'2006-02-15 21:30:53'),(478,'2005-05-27 22:38:20',424,557,'2005-05-31 18:39:20',2,'2006-02-15 21:30:53'),(479,'2005-05-27 22:39:10',2060,231,'2005-06-05 22:46:10',2,'2006-02-15 21:30:53'),(480,'2005-05-27 22:47:39',2108,220,'2005-06-04 21:17:39',2,'2006-02-15 21:30:53'),(481,'2005-05-27 22:49:27',72,445,'2005-05-30 17:46:27',2,'2006-02-15 21:30:53'),(482,'2005-05-27 22:53:02',4178,546,'2005-06-01 22:53:02',2,'2006-02-15 21:30:53'),(483,'2005-05-27 23:00:25',1510,32,'2005-05-28 21:30:25',1,'2006-02-15 21:30:53'),(484,'2005-05-27 23:26:45',3115,491,'2005-05-29 21:16:45',2,'2006-02-15 21:30:53'),(485,'2005-05-27 23:40:52',2392,105,'2005-05-28 22:40:52',2,'2006-02-15 21:30:53'),(486,'2005-05-27 23:51:12',1822,398,'2005-05-28 20:26:12',1,'2006-02-15 21:30:53'),(487,'2005-05-28 00:00:30',3774,569,'2005-05-28 19:18:30',2,'2006-02-15 21:30:53'),(488,'2005-05-28 00:07:50',393,168,'2005-06-03 22:30:50',2,'2006-02-15 21:30:53'),(489,'2005-05-28 00:09:12',1940,476,'2005-05-31 04:44:12',2,'2006-02-15 21:30:53'),(490,'2005-05-28 00:09:56',3524,95,'2005-05-30 22:32:56',2,'2006-02-15 21:30:53'),(491,'2005-05-28 00:13:35',1326,196,'2005-05-29 00:11:35',2,'2006-02-15 21:30:53'),(492,'2005-05-28 00:24:58',1999,228,'2005-05-28 22:34:58',1,'2006-02-15 21:30:53'),(493,'2005-05-28 00:34:11',184,501,'2005-05-30 18:40:11',1,'2006-02-15 21:30:53'),(494,'2005-05-28 00:39:31',1850,64,'2005-06-02 19:35:31',1,'2006-02-15 21:30:53'),(495,'2005-05-28 00:40:48',1007,526,'2005-05-29 06:07:48',1,'2006-02-15 21:30:53'),(496,'2005-05-28 00:43:41',1785,56,'2005-06-04 03:56:41',1,'2006-02-15 21:30:53'),(497,'2005-05-28 00:54:39',2636,20,'2005-06-03 20:47:39',2,'2006-02-15 21:30:53'),(498,'2005-05-28 01:01:21',458,287,'2005-05-30 21:20:21',2,'2006-02-15 21:30:53'),(499,'2005-05-28 01:05:07',2381,199,'2005-06-05 19:54:07',2,'2006-02-15 21:30:53'),(500,'2005-05-28 01:05:25',4500,145,'2005-05-31 20:04:25',1,'2006-02-15 21:30:53'),(501,'2005-05-28 01:09:36',601,162,'2005-05-30 06:14:36',2,'2006-02-15 21:30:53'),(502,'2005-05-28 01:34:43',3131,179,'2005-05-31 01:02:43',2,'2006-02-15 21:30:53'),(503,'2005-05-28 01:35:25',3005,288,'2005-05-28 22:12:25',2,'2006-02-15 21:30:53'),(504,'2005-05-28 02:05:34',2086,170,'2005-05-30 23:03:34',1,'2006-02-15 21:30:53'),(505,'2005-05-28 02:06:37',71,111,'2005-05-29 06:57:37',1,'2006-02-15 21:30:53'),(506,'2005-05-28 02:09:19',667,469,'2005-06-05 20:34:19',1,'2006-02-15 21:30:53'),(507,'2005-05-28 02:31:19',3621,421,'2005-06-02 05:07:19',2,'2006-02-15 21:30:53'),(508,'2005-05-28 02:40:50',4179,434,'2005-06-05 03:05:50',1,'2006-02-15 21:30:53'),(509,'2005-05-28 02:51:12',3416,147,'2005-05-31 06:27:12',1,'2006-02-15 21:30:53'),(510,'2005-05-28 02:52:14',4338,113,'2005-05-30 21:20:14',2,'2006-02-15 21:30:53'),(511,'2005-05-28 03:04:04',3827,296,'2005-06-03 04:58:04',1,'2006-02-15 21:30:53'),(512,'2005-05-28 03:07:50',2176,231,'2005-06-05 02:12:50',2,'2006-02-15 21:30:53'),(513,'2005-05-28 03:08:10',225,489,'2005-05-29 07:22:10',1,'2006-02-15 21:30:53'),(514,'2005-05-28 03:09:28',1697,597,'2005-06-05 00:49:28',2,'2006-02-15 21:30:53'),(515,'2005-05-28 03:10:10',3369,110,'2005-06-04 02:18:10',2,'2006-02-15 21:30:53'),(516,'2005-05-28 03:11:47',4357,400,'2005-06-04 02:19:47',1,'2006-02-15 21:30:53'),(517,'2005-05-28 03:17:57',234,403,'2005-05-29 06:33:57',1,'2006-02-15 21:30:53'),(518,'2005-05-28 03:18:02',4087,480,'2005-05-30 05:32:02',1,'2006-02-15 21:30:53'),(519,'2005-05-28 03:22:33',3564,245,'2005-06-03 05:06:33',1,'2006-02-15 21:30:53'),(520,'2005-05-28 03:27:37',3845,161,'2005-06-04 05:47:37',1,'2006-02-15 21:30:53'),(521,'2005-05-28 03:32:22',2397,374,'2005-05-28 22:37:22',1,'2006-02-15 21:30:53'),(522,'2005-05-28 03:33:20',3195,382,'2005-05-31 04:23:20',1,'2006-02-15 21:30:53'),(523,'2005-05-28 03:53:26',1905,138,'2005-05-31 05:58:26',2,'2006-02-15 21:30:53'),(524,'2005-05-28 03:57:28',1962,223,'2005-05-31 05:20:28',1,'2006-02-15 21:30:53'),(525,'2005-05-28 04:25:33',1817,14,'2005-06-06 04:18:33',1,'2006-02-15 21:30:53'),(526,'2005-05-28 04:27:37',1387,408,'2005-05-30 07:52:37',1,'2006-02-15 21:30:53'),(527,'2005-05-28 04:28:38',266,169,'2005-06-02 08:19:38',1,'2006-02-15 21:30:53'),(528,'2005-05-28 04:30:05',1655,359,'2005-06-03 10:01:05',2,'2006-02-15 21:30:53'),(529,'2005-05-28 04:34:17',2624,469,'2005-05-30 00:35:17',1,'2006-02-15 21:30:53'),(530,'2005-05-28 05:13:01',3332,312,'2005-06-01 10:21:01',2,'2006-02-15 21:30:53'),(531,'2005-05-28 05:23:38',1113,589,'2005-05-29 08:00:38',2,'2006-02-15 21:30:53'),(532,'2005-05-28 05:36:58',2793,120,'2005-06-02 01:50:58',1,'2006-02-15 21:30:53'),(533,'2005-05-28 06:14:46',4306,528,'2005-06-01 06:26:46',2,'2006-02-15 21:30:53'),(534,'2005-05-28 06:15:25',992,184,'2005-06-06 07:51:25',1,'2006-02-15 21:30:53'),(535,'2005-05-28 06:16:32',4209,307,'2005-05-31 02:48:32',1,'2006-02-15 21:30:53'),(536,'2005-05-28 06:17:33',2962,514,'2005-06-03 10:02:33',2,'2006-02-15 21:30:53'),(537,'2005-05-28 06:20:55',3095,315,'2005-06-05 11:48:55',2,'2006-02-15 21:30:53'),(538,'2005-05-28 06:21:05',2262,110,'2005-06-02 01:22:05',2,'2006-02-15 21:30:53'),(539,'2005-05-28 06:26:16',3427,161,'2005-05-30 02:02:16',1,'2006-02-15 21:30:53'),(540,'2005-05-28 06:40:25',3321,119,'2005-06-06 00:47:25',1,'2006-02-15 21:30:53'),(541,'2005-05-28 06:41:58',1662,535,'2005-06-02 09:12:58',2,'2006-02-15 21:30:53'),(542,'2005-05-28 06:42:13',4444,261,'2005-06-03 09:05:13',1,'2006-02-15 21:30:53'),(543,'2005-05-28 06:43:34',530,493,'2005-06-06 07:16:34',2,'2006-02-15 21:30:53'),(544,'2005-05-28 07:03:00',2964,311,'2005-06-06 06:23:00',1,'2006-02-15 21:30:53'),(545,'2005-05-28 07:10:20',1086,54,'2005-06-04 01:47:20',2,'2006-02-15 21:30:53'),(546,'2005-05-28 07:16:25',487,20,'2005-06-01 08:36:25',1,'2006-02-15 21:30:53'),(547,'2005-05-28 07:24:28',2065,506,'2005-06-06 01:31:28',2,'2006-02-15 21:30:53'),(548,'2005-05-28 07:34:56',3704,450,'2005-06-05 03:14:56',2,'2006-02-15 21:30:53'),(549,'2005-05-28 07:35:37',1818,159,'2005-06-02 09:08:37',1,'2006-02-15 21:30:53'),(550,'2005-05-28 07:39:16',3632,432,'2005-06-06 12:20:16',2,'2006-02-15 21:30:53'),(551,'2005-05-28 07:44:18',3119,315,'2005-06-02 12:55:18',2,'2006-02-15 21:30:53'),(552,'2005-05-28 07:53:38',23,106,'2005-06-04 12:45:38',2,'2006-02-15 21:30:53'),(553,'2005-05-28 08:14:44',1349,176,'2005-06-02 03:01:44',2,'2006-02-15 21:30:53'),(554,'2005-05-28 08:23:16',1951,376,'2005-05-31 03:29:16',2,'2006-02-15 21:30:53'),(555,'2005-05-28 08:31:14',4397,55,'2005-05-30 07:34:14',2,'2006-02-15 21:30:53'),(556,'2005-05-28 08:31:36',1814,22,'2005-06-06 07:29:36',2,'2006-02-15 21:30:53'),(557,'2005-05-28 08:36:22',158,444,'2005-06-03 10:42:22',2,'2006-02-15 21:30:53'),(558,'2005-05-28 08:38:43',4163,442,'2005-06-06 13:52:43',1,'2006-02-15 21:30:53'),(559,'2005-05-28 08:39:02',1227,572,'2005-06-05 08:38:02',2,'2006-02-15 21:30:53'),(560,'2005-05-28 08:53:02',644,463,'2005-06-04 12:27:02',2,'2006-02-15 21:30:53'),(561,'2005-05-28 08:54:06',928,77,'2005-06-05 05:54:06',1,'2006-02-15 21:30:53'),(562,'2005-05-28 09:01:21',3390,102,'2005-06-02 05:26:21',2,'2006-02-15 21:30:53'),(563,'2005-05-28 09:10:49',53,324,'2005-06-06 11:32:49',1,'2006-02-15 21:30:53'),(564,'2005-05-28 09:12:09',2973,282,'2005-05-29 05:07:09',1,'2006-02-15 21:30:53'),(565,'2005-05-28 09:26:31',1494,288,'2005-06-01 07:28:31',1,'2006-02-15 21:30:53'),(566,'2005-05-28 09:51:39',4330,253,'2005-06-05 09:35:39',1,'2006-02-15 21:30:53'),(567,'2005-05-28 09:56:20',3308,184,'2005-06-01 06:41:20',2,'2006-02-15 21:30:53'),(568,'2005-05-28 09:57:36',2232,155,'2005-05-31 15:44:36',1,'2006-02-15 21:30:53'),(569,'2005-05-28 10:12:41',4534,56,'2005-06-03 10:08:41',2,'2006-02-15 21:30:53'),(570,'2005-05-28 10:15:04',1122,21,'2005-05-30 08:32:04',1,'2006-02-15 21:30:53'),(571,'2005-05-28 10:17:41',4250,516,'2005-06-05 07:56:41',1,'2006-02-15 21:30:53'),(572,'2005-05-28 10:30:13',1899,337,'2005-06-02 05:04:13',2,'2006-02-15 21:30:53'),(573,'2005-05-28 10:35:23',4020,1,'2005-06-03 06:32:23',1,'2006-02-15 21:30:53'),(574,'2005-05-28 10:44:28',3883,76,'2005-06-04 11:42:28',1,'2006-02-15 21:30:53'),(575,'2005-05-28 10:56:09',4451,142,'2005-06-05 15:39:09',1,'2006-02-15 21:30:53'),(576,'2005-05-28 10:56:10',1866,588,'2005-06-04 13:15:10',2,'2006-02-15 21:30:53'),(577,'2005-05-28 11:09:14',375,6,'2005-06-01 13:27:14',2,'2006-02-15 21:30:53'),(578,'2005-05-28 11:15:48',2938,173,'2005-06-02 09:59:48',1,'2006-02-15 21:30:53'),(579,'2005-05-28 11:19:23',3481,181,'2005-06-02 13:51:23',1,'2006-02-15 21:30:53'),(580,'2005-05-28 11:19:53',3515,17,'2005-06-01 10:44:53',2,'2006-02-15 21:30:53'),(581,'2005-05-28 11:20:29',1380,186,'2005-06-04 12:37:29',2,'2006-02-15 21:30:53'),(582,'2005-05-28 11:33:46',4579,198,'2005-05-29 08:33:46',1,'2006-02-15 21:30:53'),(583,'2005-05-28 11:48:55',2679,386,'2005-06-04 07:09:55',2,'2006-02-15 21:30:53'),(584,'2005-05-28 11:49:00',1833,69,'2005-06-01 11:54:00',1,'2006-02-15 21:30:53'),(585,'2005-05-28 11:50:45',3544,490,'2005-06-03 15:35:45',2,'2006-02-15 21:30:53'),(586,'2005-05-28 12:03:00',898,77,'2005-05-29 13:16:00',1,'2006-02-15 21:30:53'),(587,'2005-05-28 12:05:33',1413,64,'2005-05-30 13:45:33',2,'2006-02-15 21:30:53'),(588,'2005-05-28 12:08:37',95,89,'2005-05-29 16:25:37',2,'2006-02-15 21:30:53'),(589,'2005-05-28 12:27:50',4231,308,'2005-06-03 07:15:50',2,'2006-02-15 21:30:53'),(590,'2005-05-28 13:06:50',473,462,'2005-06-02 09:18:50',1,'2006-02-15 21:30:53'),(591,'2005-05-28 13:11:04',377,19,'2005-05-29 17:20:04',2,'2006-02-15 21:30:53'),(592,'2005-05-28 13:21:08',638,244,'2005-05-29 16:55:08',1,'2006-02-15 21:30:53'),(593,'2005-05-28 13:33:23',1810,16,'2005-05-30 17:10:23',2,'2006-02-15 21:30:53'),(594,'2005-05-28 13:41:56',2766,538,'2005-05-30 12:00:56',1,'2006-02-15 21:30:53'),(595,'2005-05-28 13:59:54',595,294,'2005-06-05 15:16:54',1,'2006-02-15 21:30:53'),(596,'2005-05-28 14:00:03',821,589,'2005-05-29 17:10:03',1,'2006-02-15 21:30:53'),(597,'2005-05-28 14:01:02',4469,249,'2005-06-06 19:06:02',2,'2006-02-15 21:30:53'),(598,'2005-05-28 14:04:50',599,159,'2005-06-03 18:00:50',2,'2006-02-15 21:30:53'),(599,'2005-05-28 14:05:57',4136,393,'2005-06-01 16:41:57',2,'2006-02-15 21:30:53'),(600,'2005-05-28 14:08:19',1567,332,'2005-06-03 11:57:19',2,'2006-02-15 21:30:53'),(601,'2005-05-28 14:08:22',3225,429,'2005-06-04 10:50:22',1,'2006-02-15 21:30:53'),(602,'2005-05-28 14:15:54',1300,590,'2005-06-05 15:16:54',2,'2006-02-15 21:30:53'),(603,'2005-05-28 14:27:51',3248,537,'2005-05-29 13:13:51',1,'2006-02-15 21:30:53'),(604,'2005-05-28 14:37:07',1585,426,'2005-06-03 11:03:07',2,'2006-02-15 21:30:53'),(605,'2005-05-28 14:39:10',4232,501,'2005-06-01 09:28:10',2,'2006-02-15 21:30:53'),(606,'2005-05-28 14:48:39',3509,299,'2005-06-04 09:44:39',2,'2006-02-15 21:30:53'),(607,'2005-05-28 15:02:41',2561,554,'2005-05-30 12:54:41',2,'2006-02-15 21:30:53'),(608,'2005-05-28 15:03:44',4254,494,'2005-06-04 17:14:44',2,'2006-02-15 21:30:53'),(609,'2005-05-28 15:04:02',2944,150,'2005-06-05 14:47:02',2,'2006-02-15 21:30:53'),(610,'2005-05-28 15:15:25',3642,500,'2005-06-02 12:30:25',2,'2006-02-15 21:30:53'),(611,'2005-05-28 15:18:18',1230,580,'2005-05-31 20:15:18',2,'2006-02-15 21:30:53'),(612,'2005-05-28 15:24:54',2180,161,'2005-05-30 14:22:54',2,'2006-02-15 21:30:53'),(613,'2005-05-28 15:27:22',270,595,'2005-06-02 20:01:22',1,'2006-02-15 21:30:53'),(614,'2005-05-28 15:33:28',280,307,'2005-06-04 12:27:28',2,'2006-02-15 21:30:53'),(615,'2005-05-28 15:35:52',3397,533,'2005-06-03 17:35:52',2,'2006-02-15 21:30:53'),(616,'2005-05-28 15:45:39',989,471,'2005-06-02 09:55:39',1,'2006-02-15 21:30:53'),(617,'2005-05-28 15:49:14',4142,372,'2005-05-31 14:29:14',2,'2006-02-15 21:30:53'),(618,'2005-05-28 15:50:07',4445,248,'2005-06-01 19:45:07',1,'2006-02-15 21:30:53'),(619,'2005-05-28 15:52:26',2482,407,'2005-06-06 17:55:26',2,'2006-02-15 21:30:53'),(620,'2005-05-28 15:54:45',2444,321,'2005-06-04 20:26:45',1,'2006-02-15 21:30:53'),(621,'2005-05-28 15:58:12',1144,239,'2005-05-30 21:54:12',1,'2006-02-15 21:30:53'),(622,'2005-05-28 15:58:22',2363,109,'2005-06-04 10:13:22',1,'2006-02-15 21:30:53'),(623,'2005-05-28 16:01:28',1222,495,'2005-05-30 11:19:28',1,'2006-02-15 21:30:53'),(624,'2005-05-28 16:13:22',3660,569,'2005-06-06 20:35:22',1,'2006-02-15 21:30:53'),(625,'2005-05-28 16:35:46',2889,596,'2005-06-01 14:19:46',1,'2006-02-15 21:30:53'),(626,'2005-05-28 16:58:09',452,584,'2005-06-01 14:02:09',2,'2006-02-15 21:30:53'),(627,'2005-05-28 17:04:43',425,241,'2005-06-04 19:58:43',2,'2006-02-15 21:30:53'),(628,'2005-05-28 17:05:46',2513,173,'2005-06-06 16:29:46',2,'2006-02-15 21:30:53'),(629,'2005-05-28 17:19:15',1527,94,'2005-06-02 20:01:15',2,'2006-02-15 21:30:53'),(630,'2005-05-28 17:24:51',1254,417,'2005-06-05 20:05:51',2,'2006-02-15 21:30:53'),(631,'2005-05-28 17:36:32',2465,503,'2005-06-03 14:56:32',2,'2006-02-15 21:30:53'),(632,'2005-05-28 17:37:50',1287,442,'2005-06-03 16:04:50',1,'2006-02-15 21:30:53'),(633,'2005-05-28 17:37:59',58,360,'2005-06-03 22:49:59',2,'2006-02-15 21:30:53'),(634,'2005-05-28 17:40:35',2630,428,'2005-06-05 16:18:35',2,'2006-02-15 21:30:53'),(635,'2005-05-28 17:46:57',1648,42,'2005-06-06 18:24:57',1,'2006-02-15 21:30:53'),(636,'2005-05-28 17:47:58',4213,239,'2005-06-04 16:32:58',1,'2006-02-15 21:30:53'),(637,'2005-05-28 18:14:29',1581,250,'2005-05-29 23:48:29',2,'2006-02-15 21:30:53'),(638,'2005-05-28 18:24:43',2685,372,'2005-06-02 19:03:43',2,'2006-02-15 21:30:53'),(639,'2005-05-28 18:25:02',4204,198,'2005-05-29 18:22:02',1,'2006-02-15 21:30:53'),(640,'2005-05-28 18:43:26',495,465,'2005-05-30 13:39:26',1,'2006-02-15 21:30:53'),(641,'2005-05-28 18:45:47',3548,396,'2005-06-04 15:24:47',1,'2006-02-15 21:30:53'),(642,'2005-05-28 18:49:12',140,157,'2005-06-01 20:50:12',2,'2006-02-15 21:30:53'),(643,'2005-05-28 18:52:11',3105,240,'2005-05-31 15:15:11',2,'2006-02-15 21:30:53'),(644,'2005-05-28 18:59:12',4304,316,'2005-06-04 18:06:12',1,'2006-02-15 21:30:53'),(645,'2005-05-28 19:14:09',3128,505,'2005-06-05 14:01:09',1,'2006-02-15 21:30:53'),(646,'2005-05-28 19:16:14',1922,185,'2005-05-31 16:50:14',2,'2006-02-15 21:30:53'),(647,'2005-05-28 19:22:52',3435,569,'2005-06-01 00:10:52',1,'2006-02-15 21:30:53'),(648,'2005-05-28 19:25:54',3476,253,'2005-06-03 15:57:54',2,'2006-02-15 21:30:53'),(649,'2005-05-28 19:35:45',1781,197,'2005-06-05 16:00:45',1,'2006-02-15 21:30:53'),(650,'2005-05-28 19:45:40',4384,281,'2005-05-29 21:02:40',1,'2006-02-15 21:30:53'),(651,'2005-05-28 19:46:50',739,266,'2005-05-30 16:29:50',1,'2006-02-15 21:30:53'),(652,'2005-05-28 20:08:47',1201,43,'2005-05-29 14:57:47',2,'2006-02-15 21:30:53'),(653,'2005-05-28 20:12:20',126,327,'2005-06-04 14:44:20',2,'2006-02-15 21:30:53'),(654,'2005-05-28 20:15:30',2312,23,'2005-05-30 22:02:30',2,'2006-02-15 21:30:53'),(655,'2005-05-28 20:16:20',331,287,'2005-05-31 16:46:20',2,'2006-02-15 21:30:53'),(656,'2005-05-28 20:18:24',2846,437,'2005-05-30 16:19:24',1,'2006-02-15 21:30:53'),(657,'2005-05-28 20:23:09',848,65,'2005-06-01 02:11:09',1,'2006-02-15 21:30:53'),(658,'2005-05-28 20:23:23',3226,103,'2005-06-06 19:31:23',2,'2006-02-15 21:30:53'),(659,'2005-05-28 20:27:53',1382,207,'2005-05-31 01:36:53',2,'2006-02-15 21:30:53'),(660,'2005-05-28 20:53:31',1414,578,'2005-05-30 15:26:31',1,'2006-02-15 21:30:53'),(661,'2005-05-28 21:01:25',2247,51,'2005-06-02 01:22:25',2,'2006-02-15 21:30:53'),(662,'2005-05-28 21:09:31',2968,166,'2005-06-01 19:00:31',2,'2006-02-15 21:30:53'),(663,'2005-05-28 21:23:02',3997,176,'2005-06-02 17:39:02',2,'2006-02-15 21:30:53'),(664,'2005-05-28 21:31:08',87,523,'2005-06-02 20:56:08',2,'2006-02-15 21:30:53'),(665,'2005-05-28 21:38:39',1012,415,'2005-05-29 21:37:39',1,'2006-02-15 21:30:53'),(666,'2005-05-28 21:48:51',3075,437,'2005-06-05 16:45:51',2,'2006-02-15 21:30:53'),(667,'2005-05-28 21:49:02',797,596,'2005-05-31 03:07:02',1,'2006-02-15 21:30:53'),(668,'2005-05-28 21:54:45',3528,484,'2005-05-29 22:32:45',1,'2006-02-15 21:30:53'),(669,'2005-05-28 22:03:25',3677,313,'2005-06-03 03:39:25',1,'2006-02-15 21:30:53'),(670,'2005-05-28 22:04:03',227,201,'2005-06-06 22:43:03',2,'2006-02-15 21:30:53'),(671,'2005-05-28 22:04:30',1027,14,'2005-06-03 01:21:30',2,'2006-02-15 21:30:53'),(672,'2005-05-28 22:05:29',697,306,'2005-06-06 02:10:29',2,'2006-02-15 21:30:53'),(673,'2005-05-28 22:07:30',1769,468,'2005-06-01 23:42:30',1,'2006-02-15 21:30:53'),(674,'2005-05-28 22:11:35',1150,87,'2005-06-01 23:58:35',2,'2006-02-15 21:30:53'),(675,'2005-05-28 22:22:44',1273,338,'2005-06-01 02:57:44',2,'2006-02-15 21:30:53'),(676,'2005-05-28 22:27:51',2329,490,'2005-05-29 20:36:51',2,'2006-02-15 21:30:53'),(677,'2005-05-28 23:00:08',4558,194,'2005-06-05 19:11:08',2,'2006-02-15 21:30:53'),(678,'2005-05-28 23:15:48',3741,269,'2005-06-03 04:43:48',2,'2006-02-15 21:30:53'),(679,'2005-05-28 23:24:57',907,526,'2005-06-06 21:59:57',2,'2006-02-15 21:30:53'),(680,'2005-05-28 23:27:26',4147,482,'2005-06-02 02:28:26',2,'2006-02-15 21:30:53'),(681,'2005-05-28 23:39:44',3346,531,'2005-06-01 01:42:44',1,'2006-02-15 21:30:53'),(682,'2005-05-28 23:53:18',3160,148,'2005-05-29 19:14:18',2,'2006-02-15 21:30:53'),(683,'2005-05-29 00:09:48',2038,197,'2005-06-02 04:27:48',1,'2006-02-15 21:30:53'),(684,'2005-05-29 00:13:15',3242,461,'2005-06-04 21:26:15',2,'2006-02-15 21:30:53'),(685,'2005-05-29 00:17:51',1385,172,'2005-06-05 05:32:51',2,'2006-02-15 21:30:53'),(686,'2005-05-29 00:27:10',2441,411,'2005-05-30 02:29:10',1,'2006-02-15 21:30:53'),(687,'2005-05-29 00:32:09',1731,250,'2005-05-31 23:53:09',1,'2006-02-15 21:30:53'),(688,'2005-05-29 00:45:24',4135,162,'2005-06-02 01:30:24',1,'2006-02-15 21:30:53'),(689,'2005-05-29 00:46:53',742,571,'2005-06-03 23:48:53',2,'2006-02-15 21:30:53'),(690,'2005-05-29 00:54:53',2646,85,'2005-06-06 00:45:53',1,'2006-02-15 21:30:53'),(691,'2005-05-29 01:01:26',4034,433,'2005-06-07 06:21:26',1,'2006-02-15 21:30:53'),(692,'2005-05-29 01:32:10',800,18,'2005-06-02 03:54:10',2,'2006-02-15 21:30:53'),(693,'2005-05-29 01:42:31',635,190,'2005-06-03 02:29:31',2,'2006-02-15 21:30:53'),(694,'2005-05-29 01:49:43',592,399,'2005-06-05 06:52:43',1,'2006-02-15 21:30:53'),(695,'2005-05-29 01:50:53',4276,528,'2005-06-03 02:28:53',1,'2006-02-15 21:30:53'),(696,'2005-05-29 01:59:10',2076,19,'2005-06-01 02:45:10',1,'2006-02-15 21:30:53'),(697,'2005-05-29 02:04:04',3949,387,'2005-06-04 00:47:04',2,'2006-02-15 21:30:53'),(698,'2005-05-29 02:10:52',1412,109,'2005-06-01 21:52:52',1,'2006-02-15 21:30:53'),(699,'2005-05-29 02:11:44',130,246,'2005-06-04 20:23:44',2,'2006-02-15 21:30:53'),(700,'2005-05-29 02:18:54',500,117,'2005-05-30 05:54:54',1,'2006-02-15 21:30:53'),(701,'2005-05-29 02:26:27',372,112,'2005-06-03 04:59:27',1,'2006-02-15 21:30:53'),(702,'2005-05-29 02:27:30',2556,475,'2005-05-30 01:52:30',2,'2006-02-15 21:30:53'),(703,'2005-05-29 02:29:36',1123,269,'2005-06-03 04:54:36',2,'2006-02-15 21:30:53'),(704,'2005-05-29 02:44:43',2628,330,'2005-06-06 01:51:43',2,'2006-02-15 21:30:53'),(705,'2005-05-29 02:48:52',2809,257,'2005-05-30 06:21:52',1,'2006-02-15 21:30:53'),(706,'2005-05-29 03:05:49',2278,60,'2005-06-04 22:48:49',1,'2006-02-15 21:30:53'),(707,'2005-05-29 03:18:19',819,252,'2005-05-30 02:45:19',1,'2006-02-15 21:30:53'),(708,'2005-05-29 03:23:47',3133,127,'2005-05-31 21:27:47',2,'2006-02-15 21:30:53'),(709,'2005-05-29 03:48:01',2459,479,'2005-06-06 05:21:01',1,'2006-02-15 21:30:53'),(710,'2005-05-29 03:48:36',194,518,'2005-06-03 05:03:36',1,'2006-02-15 21:30:53'),(711,'2005-05-29 03:49:03',4581,215,'2005-05-31 08:29:03',2,'2006-02-15 21:30:53'),(712,'2005-05-29 04:02:24',4191,313,'2005-05-30 03:09:24',2,'2006-02-15 21:30:53'),(713,'2005-05-29 04:10:17',3664,507,'2005-06-07 07:13:17',1,'2006-02-15 21:30:53'),(714,'2005-05-29 04:15:21',2010,452,'2005-06-01 23:05:21',2,'2006-02-15 21:30:53'),(715,'2005-05-29 04:22:41',2030,545,'2005-06-05 09:28:41',1,'2006-02-15 21:30:53'),(716,'2005-05-29 04:35:29',85,36,'2005-06-01 07:42:29',2,'2006-02-15 21:30:53'),(717,'2005-05-29 04:37:44',1383,412,'2005-05-30 05:48:44',2,'2006-02-15 21:30:53'),(718,'2005-05-29 04:52:23',1736,498,'2005-06-02 02:27:23',1,'2006-02-15 21:30:53'),(719,'2005-05-29 05:16:05',267,245,'2005-06-01 07:53:05',2,'2006-02-15 21:30:53'),(720,'2005-05-29 05:17:30',3687,480,'2005-06-06 02:47:30',2,'2006-02-15 21:30:53'),(721,'2005-05-29 05:28:47',1116,44,'2005-05-31 11:24:47',1,'2006-02-15 21:30:53'),(722,'2005-05-29 05:30:31',4540,259,'2005-06-06 04:51:31',1,'2006-02-15 21:30:53'),(723,'2005-05-29 05:34:44',3407,309,'2005-05-30 05:50:44',1,'2006-02-15 21:30:53'),(724,'2005-05-29 05:53:23',3770,416,'2005-06-05 04:01:23',2,'2006-02-15 21:30:53'),(725,'2005-05-29 06:03:41',4088,245,'2005-06-03 08:52:41',2,'2006-02-15 21:30:53'),(726,'2005-05-29 06:05:29',933,452,'2005-06-05 04:40:29',2,'2006-02-15 21:30:53'),(727,'2005-05-29 06:08:15',1629,484,'2005-05-30 07:16:15',1,'2006-02-15 21:30:53'),(728,'2005-05-29 06:12:38',242,551,'2005-06-03 07:41:38',1,'2006-02-15 21:30:53'),(729,'2005-05-29 06:35:13',1688,323,'2005-06-04 03:23:13',2,'2006-02-15 21:30:53'),(730,'2005-05-29 07:00:59',3473,197,'2005-06-06 01:17:59',1,'2006-02-15 21:30:53'),(731,'2005-05-29 07:25:16',4124,5,'2005-05-30 05:21:16',1,'2006-02-15 21:30:53'),(732,'2005-05-29 07:32:51',2530,447,'2005-05-30 10:08:51',2,'2006-02-15 21:30:53'),(733,'2005-05-29 07:35:21',2951,363,'2005-06-05 09:14:21',1,'2006-02-15 21:30:53'),(734,'2005-05-29 07:38:52',3084,538,'2005-06-03 10:17:52',2,'2006-02-15 21:30:53'),(735,'2005-05-29 08:08:13',3421,454,'2005-06-07 13:35:13',1,'2006-02-15 21:30:53'),(736,'2005-05-29 08:10:07',3689,276,'2005-06-05 10:21:07',2,'2006-02-15 21:30:53'),(737,'2005-05-29 08:11:31',769,589,'2005-06-04 11:18:31',2,'2006-02-15 21:30:53'),(738,'2005-05-29 08:20:08',2284,256,'2005-06-06 08:59:08',2,'2006-02-15 21:30:53'),(739,'2005-05-29 08:28:18',1183,84,'2005-06-06 09:21:18',2,'2006-02-15 21:30:53'),(740,'2005-05-29 08:30:36',600,89,'2005-06-04 12:47:36',2,'2006-02-15 21:30:53'),(741,'2005-05-29 08:35:49',3189,495,'2005-06-04 11:55:49',1,'2006-02-15 21:30:53'),(742,'2005-05-29 08:36:30',273,483,'2005-06-05 11:30:30',1,'2006-02-15 21:30:53'),(743,'2005-05-29 08:39:02',2528,548,'2005-06-06 08:42:02',2,'2006-02-15 21:30:53'),(744,'2005-05-29 09:13:08',3722,420,'2005-06-01 07:05:08',2,'2006-02-15 21:30:53'),(745,'2005-05-29 09:22:57',581,152,'2005-06-01 09:10:57',1,'2006-02-15 21:30:53'),(746,'2005-05-29 09:25:10',4272,130,'2005-06-02 04:20:10',2,'2006-02-15 21:30:53'),(747,'2005-05-29 09:26:34',1993,291,'2005-06-05 07:28:34',1,'2006-02-15 21:30:53'),(748,'2005-05-29 09:27:00',2803,7,'2005-06-03 04:25:00',1,'2006-02-15 21:30:53'),(749,'2005-05-29 09:33:33',1146,375,'2005-05-31 11:45:33',2,'2006-02-15 21:30:53'),(750,'2005-05-29 09:41:40',730,269,'2005-05-30 13:31:40',1,'2006-02-15 21:30:53'),(751,'2005-05-29 09:55:43',2711,53,'2005-06-02 04:54:43',1,'2006-02-15 21:30:53'),(752,'2005-05-29 10:14:15',1720,126,'2005-06-04 06:30:15',1,'2006-02-15 21:30:53'),(753,'2005-05-29 10:16:42',1021,135,'2005-06-05 08:52:42',2,'2006-02-15 21:30:53'),(754,'2005-05-29 10:18:59',734,281,'2005-06-04 05:03:59',2,'2006-02-15 21:30:53'),(755,'2005-05-29 10:26:29',3090,576,'2005-06-01 10:25:29',2,'2006-02-15 21:30:53'),(756,'2005-05-29 10:28:45',3152,201,'2005-06-04 12:50:45',1,'2006-02-15 21:30:53'),(757,'2005-05-29 10:29:47',1067,435,'2005-06-07 15:27:47',1,'2006-02-15 21:30:53'),(758,'2005-05-29 10:31:56',1191,563,'2005-06-01 14:53:56',2,'2006-02-15 21:30:53'),(759,'2005-05-29 10:57:57',2367,179,'2005-06-07 16:23:57',2,'2006-02-15 21:30:53'),(760,'2005-05-29 11:07:25',3250,77,'2005-06-02 14:16:25',1,'2006-02-15 21:30:53'),(761,'2005-05-29 11:09:01',2342,58,'2005-06-03 16:18:01',2,'2006-02-15 21:30:53'),(762,'2005-05-29 11:15:51',3683,146,'2005-06-06 07:48:51',1,'2006-02-15 21:30:53'),(763,'2005-05-29 11:32:15',2022,50,'2005-05-31 17:31:15',1,'2006-02-15 21:30:53'),(764,'2005-05-29 11:37:35',1069,149,'2005-05-31 16:47:35',1,'2006-02-15 21:30:53'),(765,'2005-05-29 11:38:34',515,69,'2005-06-02 17:04:34',1,'2006-02-15 21:30:53'),(766,'2005-05-29 11:47:02',2154,383,'2005-06-06 07:14:02',1,'2006-02-15 21:30:53'),(767,'2005-05-29 12:20:19',687,67,'2005-06-02 14:15:19',2,'2006-02-15 21:30:53'),(768,'2005-05-29 12:30:46',2895,566,'2005-06-07 09:00:46',2,'2006-02-15 21:30:53'),(769,'2005-05-29 12:51:44',1523,575,'2005-06-01 17:43:44',1,'2006-02-15 21:30:53'),(770,'2005-05-29 12:56:50',2491,405,'2005-06-07 15:54:50',2,'2006-02-15 21:30:53'),(771,'2005-05-29 12:59:14',353,476,'2005-06-01 16:05:14',2,'2006-02-15 21:30:53'),(772,'2005-05-29 13:08:06',3319,556,'2005-06-06 08:19:06',1,'2006-02-15 21:30:53'),(773,'2005-05-29 13:18:05',245,563,'2005-06-07 17:22:05',1,'2006-02-15 21:30:53'),(774,'2005-05-29 13:19:43',1188,575,'2005-06-01 18:51:43',1,'2006-02-15 21:30:53'),(775,'2005-05-29 13:23:26',1197,124,'2005-05-30 07:53:26',2,'2006-02-15 21:30:53'),(776,'2005-05-29 13:35:35',4339,113,'2005-06-03 17:33:35',1,'2006-02-15 21:30:53'),(777,'2005-05-29 14:07:58',451,360,'2005-06-03 08:41:58',2,'2006-02-15 21:30:53'),(778,'2005-05-29 14:09:53',1816,535,'2005-06-05 20:05:53',1,'2006-02-15 21:30:53'),(779,'2005-05-29 14:17:17',533,105,'2005-06-06 16:46:17',1,'2006-02-15 21:30:53'),(780,'2005-05-29 14:18:32',1919,300,'2005-06-06 20:14:32',1,'2006-02-15 21:30:53'),(781,'2005-05-29 14:23:58',88,313,'2005-05-30 17:44:58',1,'2006-02-15 21:30:53'),(782,'2005-05-29 14:38:57',2255,596,'2005-06-02 13:18:57',2,'2006-02-15 21:30:53'),(783,'2005-05-29 14:41:18',3046,53,'2005-06-06 10:39:18',2,'2006-02-15 21:30:53'),(784,'2005-05-29 14:44:22',2936,352,'2005-06-01 17:28:22',2,'2006-02-15 21:30:53'),(785,'2005-05-29 15:08:41',39,72,'2005-05-30 15:51:41',1,'2006-02-15 21:30:53'),(786,'2005-05-29 15:17:28',2637,439,'2005-06-07 10:07:28',2,'2006-02-15 21:30:53'),(787,'2005-05-29 16:03:03',3919,27,'2005-06-07 11:07:03',2,'2006-02-15 21:30:53'),(788,'2005-05-29 16:13:55',763,562,'2005-05-31 16:40:55',1,'2006-02-15 21:30:53'),(789,'2005-05-29 16:17:07',708,553,'2005-06-06 18:15:07',1,'2006-02-15 21:30:53'),(790,'2005-05-29 16:19:29',2858,593,'2005-06-02 17:22:29',2,'2006-02-15 21:30:53'),(791,'2005-05-29 16:30:42',1554,284,'2005-06-01 19:11:42',1,'2006-02-15 21:30:53'),(792,'2005-05-29 16:32:10',2841,261,'2005-05-31 18:01:10',1,'2006-02-15 21:30:53'),(793,'2005-05-29 16:44:08',379,528,'2005-06-06 19:21:08',2,'2006-02-15 21:30:53'),(794,'2005-05-29 16:44:11',1995,50,'2005-06-05 16:11:11',1,'2006-02-15 21:30:53'),(795,'2005-05-29 16:57:39',609,551,'2005-06-01 11:33:39',2,'2006-02-15 21:30:53'),(796,'2005-05-29 16:59:44',2697,26,'2005-06-03 16:22:44',2,'2006-02-15 21:30:53'),(797,'2005-05-29 17:12:17',1446,244,'2005-06-03 16:06:17',1,'2006-02-15 21:30:53'),(798,'2005-05-29 17:23:43',1102,134,'2005-06-01 13:06:43',2,'2006-02-15 21:30:53'),(799,'2005-05-29 17:24:48',1713,429,'2005-06-05 12:25:48',1,'2006-02-15 21:30:53'),(800,'2005-05-29 17:28:12',441,472,'2005-05-30 14:59:12',1,'2006-02-15 21:30:53'),(801,'2005-05-29 17:35:50',1642,402,'2005-06-04 17:05:50',2,'2006-02-15 21:30:53'),(802,'2005-05-29 17:38:59',785,350,'2005-05-31 22:42:59',2,'2006-02-15 21:30:53'),(803,'2005-05-29 17:52:30',1602,32,'2005-05-30 14:35:30',2,'2006-02-15 21:30:53'),(804,'2005-05-29 18:10:24',3909,171,'2005-06-06 22:53:24',1,'2006-02-15 21:30:53'),(805,'2005-05-29 18:18:18',3132,232,'2005-06-07 15:11:18',2,'2006-02-15 21:30:53'),(806,'2005-05-29 18:31:30',2386,435,'2005-05-31 00:18:30',2,'2006-02-15 21:30:53'),(807,'2005-05-29 18:50:50',2195,235,'2005-06-03 18:36:50',2,'2006-02-15 21:30:53'),(808,'2005-05-29 19:08:20',1928,104,'2005-06-06 20:32:20',2,'2006-02-15 21:30:53'),(809,'2005-05-29 19:10:20',2114,222,'2005-06-05 19:05:20',2,'2006-02-15 21:30:53'),(810,'2005-05-29 19:12:04',2533,346,'2005-06-04 21:12:04',2,'2006-02-15 21:30:53'),(811,'2005-05-29 19:30:42',4419,401,'2005-06-02 16:19:42',2,'2006-02-15 21:30:53'),(812,'2005-05-29 20:00:30',1099,225,'2005-05-30 19:43:30',2,'2006-02-15 21:30:53'),(813,'2005-05-29 20:14:34',4554,344,'2005-06-05 20:56:34',1,'2006-02-15 21:30:53'),(814,'2005-05-29 20:16:12',1572,134,'2005-06-07 17:47:12',1,'2006-02-15 21:30:53'),(815,'2005-05-29 20:24:28',3757,14,'2005-06-03 15:32:28',1,'2006-02-15 21:30:53'),(816,'2005-05-29 20:26:39',630,474,'2005-06-06 22:31:39',2,'2006-02-15 21:30:53'),(817,'2005-05-29 20:39:14',186,554,'2005-05-31 18:24:14',1,'2006-02-15 21:30:53'),(818,'2005-05-29 20:47:53',4106,321,'2005-06-02 23:18:53',2,'2006-02-15 21:30:53'),(819,'2005-05-29 21:00:32',623,511,'2005-06-02 15:15:32',2,'2006-02-15 21:30:53'),(820,'2005-05-29 21:07:22',2584,22,'2005-06-07 00:22:22',2,'2006-02-15 21:30:53'),(821,'2005-05-29 21:31:12',3380,348,'2005-06-04 22:49:12',1,'2006-02-15 21:30:53'),(822,'2005-05-29 21:36:00',2634,480,'2005-06-07 17:24:00',1,'2006-02-15 21:30:53'),(823,'2005-05-29 21:39:37',3249,441,'2005-05-30 22:06:37',1,'2006-02-15 21:30:53'),(824,'2005-05-29 21:45:32',3518,357,'2005-05-31 19:01:32',1,'2006-02-15 21:30:53'),(825,'2005-05-29 21:49:41',712,371,'2005-06-04 20:27:41',2,'2006-02-15 21:30:53'),(826,'2005-05-29 21:56:15',2263,207,'2005-06-08 03:18:15',1,'2006-02-15 21:30:53'),(827,'2005-05-29 21:58:43',62,573,'2005-06-06 00:54:43',1,'2006-02-15 21:30:53'),(828,'2005-05-29 22:14:55',2468,217,'2005-05-30 17:22:55',1,'2006-02-15 21:30:53'),(829,'2005-05-29 22:16:42',1684,371,'2005-06-06 01:38:42',1,'2006-02-15 21:30:53'),(830,'2005-05-29 22:43:55',3464,3,'2005-06-01 17:43:55',1,'2006-02-15 21:30:53'),(831,'2005-05-29 22:50:25',3912,509,'2005-06-06 02:27:25',1,'2006-02-15 21:30:53'),(832,'2005-05-29 22:51:20',1381,159,'2005-06-07 17:37:20',2,'2006-02-15 21:30:53'),(833,'2005-05-29 23:21:56',2898,417,'2005-06-02 18:40:56',1,'2006-02-15 21:30:53'),(834,'2005-05-29 23:24:30',3628,84,'2005-05-30 22:00:30',2,'2006-02-15 21:30:53'),(835,'2005-05-29 23:37:00',299,381,'2005-06-02 23:38:00',1,'2006-02-15 21:30:53'),(836,'2005-05-29 23:56:42',3140,368,'2005-05-31 04:11:42',2,'2006-02-15 21:30:53'),(837,'2005-05-30 00:02:08',977,172,'2005-06-02 05:31:08',2,'2006-02-15 21:30:53'),(838,'2005-05-30 00:27:57',2859,504,'2005-06-06 22:19:57',2,'2006-02-15 21:30:53'),(839,'2005-05-30 00:28:12',1886,337,'2005-06-08 02:43:12',1,'2006-02-15 21:30:53'),(840,'2005-05-30 00:28:41',4049,79,'2005-05-31 20:39:41',2,'2006-02-15 21:30:53'),(841,'2005-05-30 00:31:17',4318,387,'2005-06-02 19:14:17',1,'2006-02-15 21:30:53'),(842,'2005-05-30 00:32:04',2328,238,'2005-06-01 02:21:04',1,'2006-02-15 21:30:53'),(843,'2005-05-30 00:44:24',2214,313,'2005-05-31 00:58:24',2,'2006-02-15 21:30:53'),(844,'2005-05-30 00:58:20',536,429,'2005-06-01 00:38:20',1,'2006-02-15 21:30:53'),(845,'2005-05-30 01:17:25',2001,72,'2005-06-07 02:00:25',1,'2006-02-15 21:30:53'),(846,'2005-05-30 01:17:45',938,49,'2005-06-01 00:56:45',2,'2006-02-15 21:30:53'),(847,'2005-05-30 01:18:15',4387,380,'2005-06-06 20:20:15',2,'2006-02-15 21:30:53'),(848,'2005-05-30 01:19:53',1363,436,'2005-06-05 23:40:53',1,'2006-02-15 21:30:53'),(849,'2005-05-30 01:23:07',2424,449,'2005-06-07 01:50:07',1,'2006-02-15 21:30:53'),(850,'2005-05-30 01:35:12',2390,517,'2005-05-31 01:51:12',1,'2006-02-15 21:30:53'),(851,'2005-05-30 01:35:15',2780,530,'2005-06-06 07:27:15',1,'2006-02-15 21:30:53'),(852,'2005-05-30 01:36:57',1622,549,'2005-06-01 22:44:57',1,'2006-02-15 21:30:53'),(853,'2005-05-30 01:43:31',3693,122,'2005-06-01 02:05:31',1,'2006-02-15 21:30:53'),(854,'2005-05-30 01:56:11',921,369,'2005-06-01 06:34:11',2,'2006-02-15 21:30:53'),(855,'2005-05-30 02:00:28',2527,406,'2005-06-03 20:16:28',2,'2006-02-15 21:30:53'),(856,'2005-05-30 02:01:21',3969,53,'2005-06-07 03:25:21',1,'2006-02-15 21:30:53'),(857,'2005-05-30 02:01:23',2569,204,'2005-06-02 06:07:23',2,'2006-02-15 21:30:53'),(858,'2005-05-30 02:10:32',1258,358,'2005-06-01 04:42:32',1,'2006-02-15 21:30:53'),(859,'2005-05-30 02:36:20',3032,79,'2005-06-02 07:49:20',2,'2006-02-15 21:30:53'),(860,'2005-05-30 02:45:16',578,276,'2005-06-08 07:28:16',1,'2006-02-15 21:30:53'),(861,'2005-05-30 02:48:32',3711,502,'2005-06-06 05:43:32',1,'2006-02-15 21:30:53'),(862,'2005-05-30 03:09:11',1186,328,'2005-06-03 21:27:11',1,'2006-02-15 21:30:53'),(863,'2005-05-30 03:14:59',3999,379,'2005-06-05 04:34:59',2,'2006-02-15 21:30:53'),(864,'2005-05-30 03:27:17',2777,544,'2005-06-06 08:28:17',1,'2006-02-15 21:30:53'),(865,'2005-05-30 03:39:44',3183,154,'2005-06-07 08:10:44',2,'2006-02-15 21:30:53'),(866,'2005-05-30 03:43:54',2867,8,'2005-06-08 04:28:54',1,'2006-02-15 21:30:53'),(867,'2005-05-30 03:54:43',3389,99,'2005-06-01 22:59:43',1,'2006-02-15 21:30:53'),(868,'2005-05-30 04:19:55',3604,28,'2005-05-31 02:28:55',1,'2006-02-15 21:30:53'),(869,'2005-05-30 04:22:06',3399,296,'2005-06-03 09:18:06',2,'2006-02-15 21:30:53'),(870,'2005-05-30 04:25:47',2903,391,'2005-06-06 04:32:47',1,'2006-02-15 21:30:53'),(871,'2005-05-30 05:01:30',4573,303,'2005-06-04 06:22:30',2,'2006-02-15 21:30:53'),(872,'2005-05-30 05:03:04',3904,548,'2005-06-06 10:35:04',1,'2006-02-15 21:30:53'),(873,'2005-05-30 05:15:20',4568,375,'2005-06-07 00:49:20',2,'2006-02-15 21:30:53'),(874,'2005-05-30 05:36:21',363,52,'2005-06-01 09:32:21',1,'2006-02-15 21:30:53'),(875,'2005-05-30 05:38:24',1428,326,'2005-06-06 00:34:24',2,'2006-02-15 21:30:53'),(876,'2005-05-30 05:41:22',1471,339,'2005-06-07 09:06:22',2,'2006-02-15 21:30:53'),(877,'2005-05-30 05:48:59',886,9,'2005-06-02 09:30:59',1,'2006-02-15 21:30:53'),(878,'2005-05-30 05:49:13',4265,323,'2005-06-07 04:35:13',1,'2006-02-15 21:30:53'),(879,'2005-05-30 05:49:42',4021,482,'2005-06-05 01:45:42',2,'2006-02-15 21:30:53'),(880,'2005-05-30 06:12:33',1819,460,'2005-06-02 04:35:33',2,'2006-02-15 21:30:53'),(881,'2005-05-30 06:15:36',602,242,'2005-06-02 10:21:36',1,'2006-02-15 21:30:53'),(882,'2005-05-30 06:16:06',3841,477,'2005-06-02 11:57:06',1,'2006-02-15 21:30:53'),(883,'2005-05-30 06:21:05',2271,399,'2005-06-07 04:50:05',2,'2006-02-15 21:30:53'),(884,'2005-05-30 06:41:32',4079,17,'2005-05-31 07:39:32',1,'2006-02-15 21:30:53'),(885,'2005-05-30 06:54:28',646,62,'2005-06-03 07:03:28',2,'2006-02-15 21:30:53'),(886,'2005-05-30 06:54:51',4356,393,'2005-06-01 06:04:51',2,'2006-02-15 21:30:53'),(887,'2005-05-30 07:10:00',2727,16,'2005-06-01 06:48:00',2,'2006-02-15 21:30:53'),(888,'2005-05-30 07:13:14',387,128,'2005-06-06 09:50:14',1,'2006-02-15 21:30:53'),(889,'2005-05-30 07:14:53',1299,114,'2005-05-31 07:56:53',2,'2006-02-15 21:30:53'),(890,'2005-05-30 07:43:04',1464,349,'2005-06-01 11:26:04',1,'2006-02-15 21:30:53'),(891,'2005-05-30 07:43:12',2611,391,'2005-06-08 09:21:12',1,'2006-02-15 21:30:53'),(892,'2005-05-30 08:02:56',471,274,'2005-06-05 12:51:56',1,'2006-02-15 21:30:53'),(893,'2005-05-30 08:06:59',3260,502,'2005-06-07 08:23:59',2,'2006-02-15 21:30:53'),(894,'2005-05-30 08:31:31',1118,400,'2005-06-07 12:39:31',1,'2006-02-15 21:30:53'),(895,'2005-05-30 08:50:43',2744,192,'2005-06-05 10:58:43',1,'2006-02-15 21:30:53'),(896,'2005-05-30 09:03:52',2817,207,'2005-06-05 07:37:52',2,'2006-02-15 21:30:53'),(897,'2005-05-30 09:10:01',1334,432,'2005-06-08 03:43:01',1,'2006-02-15 21:30:53'),(898,'2005-05-30 09:26:19',3497,384,'2005-06-01 10:45:19',2,'2006-02-15 21:30:53'),(899,'2005-05-30 09:29:30',1096,156,'2005-06-06 12:39:30',2,'2006-02-15 21:30:53'),(900,'2005-05-30 09:38:41',3543,586,'2005-06-07 11:54:41',1,'2006-02-15 21:30:53'),(901,'2005-05-30 09:40:40',760,259,'2005-06-02 10:32:40',1,'2006-02-15 21:30:53'),(902,'2005-05-30 09:53:36',1514,561,'2005-06-07 12:10:36',1,'2006-02-15 21:30:53'),(903,'2005-05-30 10:11:29',2423,197,'2005-06-03 09:33:29',1,'2006-02-15 21:30:53'),(904,'2005-05-30 10:19:42',2466,44,'2005-06-05 04:58:42',2,'2006-02-15 21:30:53'),(905,'2005-05-30 10:25:00',4372,50,'2005-06-06 06:23:00',1,'2006-02-15 21:30:53'),(906,'2005-05-30 10:30:38',1862,549,'2005-06-07 06:44:38',2,'2006-02-15 21:30:53'),(907,'2005-05-30 10:37:27',3320,506,'2005-06-02 09:51:27',1,'2006-02-15 21:30:53'),(908,'2005-05-30 10:38:37',4427,85,'2005-06-03 09:56:37',1,'2006-02-15 21:30:53'),(909,'2005-05-30 10:43:38',3775,486,'2005-06-08 12:07:38',1,'2006-02-15 21:30:53'),(910,'2005-05-30 10:46:16',2601,374,'2005-06-04 13:32:16',1,'2006-02-15 21:30:53'),(911,'2005-05-30 10:50:22',1404,366,'2005-06-07 12:26:22',2,'2006-02-15 21:30:53'),(912,'2005-05-30 10:58:33',3200,390,'2005-05-31 09:31:33',2,'2006-02-15 21:30:53'),(913,'2005-05-30 11:04:58',3213,369,'2005-06-07 13:22:58',2,'2006-02-15 21:30:53'),(914,'2005-05-30 11:06:00',1393,596,'2005-06-04 06:07:00',2,'2006-02-15 21:30:53'),(915,'2005-05-30 11:20:27',1859,115,'2005-06-02 11:55:27',1,'2006-02-15 21:30:53'),(916,'2005-05-30 11:25:01',1290,6,'2005-05-31 09:06:01',1,'2006-02-15 21:30:53'),(917,'2005-05-30 11:27:06',3629,385,'2005-06-02 08:31:06',1,'2006-02-15 21:30:53'),(918,'2005-05-30 11:32:24',818,197,'2005-05-31 07:55:24',2,'2006-02-15 21:30:53'),(919,'2005-05-30 11:35:06',4052,374,'2005-06-02 13:16:06',2,'2006-02-15 21:30:53'),(920,'2005-05-30 11:44:01',3860,584,'2005-06-02 08:19:01',2,'2006-02-15 21:30:53'),(921,'2005-05-30 11:53:09',1827,508,'2005-06-03 10:00:09',2,'2006-02-15 21:30:53'),(922,'2005-05-30 11:55:55',2442,550,'2005-06-08 10:12:55',2,'2006-02-15 21:30:53'),(923,'2005-05-30 11:58:50',1884,37,'2005-06-05 09:57:50',1,'2006-02-15 21:30:53'),(924,'2005-05-30 12:10:59',3279,293,'2005-06-04 17:28:59',1,'2006-02-15 21:30:53'),(925,'2005-05-30 12:13:52',3203,137,'2005-06-02 14:41:52',2,'2006-02-15 21:30:53'),(926,'2005-05-30 12:15:54',4327,76,'2005-06-01 08:53:54',2,'2006-02-15 21:30:53'),(927,'2005-05-30 12:16:40',1158,167,'2005-05-31 16:20:40',2,'2006-02-15 21:30:53'),(928,'2005-05-30 12:27:14',246,79,'2005-06-05 13:56:14',2,'2006-02-15 21:30:53'),(929,'2005-05-30 12:32:39',4296,536,'2005-06-06 12:17:39',1,'2006-02-15 21:30:53'),(930,'2005-05-30 12:44:57',2835,141,'2005-06-04 10:53:57',2,'2006-02-15 21:30:53'),(931,'2005-05-30 12:53:01',3384,421,'2005-05-31 14:28:01',1,'2006-02-15 21:30:53'),(932,'2005-05-30 12:55:36',719,198,'2005-05-31 10:30:36',2,'2006-02-15 21:30:53'),(933,'2005-05-30 13:08:45',3672,66,'2005-06-01 18:56:45',1,'2006-02-15 21:30:53'),(934,'2005-05-30 13:24:46',3595,60,'2005-06-08 16:44:46',2,'2006-02-15 21:30:53'),(935,'2005-05-30 13:29:36',2421,256,'2005-06-02 11:08:36',1,'2006-02-15 21:30:53'),(936,'2005-05-30 13:52:49',901,469,'2005-06-07 16:56:49',1,'2006-02-15 21:30:53'),(937,'2005-05-30 14:47:31',1054,304,'2005-06-05 09:53:31',2,'2006-02-15 21:30:53'),(938,'2005-05-30 14:47:31',1521,46,'2005-06-04 10:10:31',2,'2006-02-15 21:30:53'),(939,'2005-05-30 14:49:34',1314,367,'2005-06-01 19:00:34',1,'2006-02-15 21:30:53'),(940,'2005-05-30 15:01:02',1278,534,'2005-06-01 18:26:02',1,'2006-02-15 21:30:53'),(941,'2005-05-30 15:02:25',3630,562,'2005-06-01 17:19:25',1,'2006-02-15 21:30:53'),(942,'2005-05-30 15:05:47',4279,473,'2005-06-08 15:59:47',2,'2006-02-15 21:30:53'),(943,'2005-05-30 15:20:19',3737,57,'2005-06-06 18:53:19',1,'2006-02-15 21:30:53'),(944,'2005-05-30 15:26:24',151,131,'2005-06-07 18:09:24',2,'2006-02-15 21:30:53'),(945,'2005-05-30 15:33:17',1441,357,'2005-06-02 15:02:17',2,'2006-02-15 21:30:53'),(946,'2005-05-30 15:35:08',1264,486,'2005-06-08 11:38:08',1,'2006-02-15 21:30:53'),(947,'2005-05-30 15:36:57',4478,62,'2005-06-04 18:48:57',1,'2006-02-15 21:30:53'),(948,'2005-05-30 15:44:27',585,245,'2005-06-08 17:30:27',2,'2006-02-15 21:30:53'),(949,'2005-05-30 15:50:39',2202,368,'2005-06-03 14:25:39',1,'2006-02-15 21:30:53'),(950,'2005-05-30 16:06:08',491,83,'2005-06-01 11:43:08',1,'2006-02-15 21:30:53'),(951,'2005-05-30 16:10:35',1395,59,'2005-05-31 19:01:35',2,'2006-02-15 21:30:53'),(952,'2005-05-30 16:28:07',4389,311,'2005-06-02 16:12:07',2,'2006-02-15 21:30:53'),(953,'2005-05-30 16:34:02',2194,210,'2005-05-31 20:34:02',1,'2006-02-15 21:30:53'),(954,'2005-05-30 16:57:29',1231,297,'2005-06-08 13:30:29',2,'2006-02-15 21:30:53'),(955,'2005-05-30 16:59:03',4140,301,'2005-05-31 11:58:03',2,'2006-02-15 21:30:53'),(956,'2005-05-30 17:30:28',647,296,'2005-06-07 13:54:28',2,'2006-02-15 21:30:53'),(957,'2005-05-30 17:53:29',4428,440,'2005-06-03 15:31:29',2,'2006-02-15 21:30:53'),(958,'2005-05-30 17:58:03',548,186,'2005-06-01 19:17:03',2,'2006-02-15 21:30:53'),(959,'2005-05-30 18:07:00',3108,535,'2005-06-02 14:37:00',2,'2006-02-15 21:30:53'),(960,'2005-05-30 18:13:23',1966,445,'2005-06-04 00:12:23',2,'2006-02-15 21:30:53'),(961,'2005-05-30 18:16:44',3293,588,'2005-06-04 23:40:44',2,'2006-02-15 21:30:53'),(962,'2005-05-30 18:45:17',4535,520,'2005-06-05 22:47:17',1,'2006-02-15 21:30:53'),(963,'2005-05-30 18:52:53',1921,225,'2005-06-07 16:19:53',2,'2006-02-15 21:30:53'),(964,'2005-05-30 18:53:21',657,287,'2005-06-04 22:32:21',2,'2006-02-15 21:30:53'),(965,'2005-05-30 19:00:14',3363,502,'2005-05-31 17:10:14',2,'2006-02-15 21:30:53'),(966,'2005-05-30 19:00:37',1294,496,'2005-05-31 23:51:37',1,'2006-02-15 21:30:53'),(967,'2005-05-30 19:12:06',1954,330,'2005-06-09 00:02:06',2,'2006-02-15 21:30:53'),(968,'2005-05-30 19:20:03',119,576,'2005-05-31 18:17:03',2,'2006-02-15 21:30:53'),(969,'2005-05-30 19:23:48',443,551,'2005-05-31 21:14:48',1,'2006-02-15 21:30:53'),(970,'2005-05-30 19:50:28',1520,307,'2005-06-09 01:19:28',1,'2006-02-15 21:30:53'),(971,'2005-05-30 20:10:52',2911,561,'2005-06-06 20:47:52',1,'2006-02-15 21:30:53'),(972,'2005-05-30 20:21:07',2,411,'2005-06-06 00:36:07',1,'2006-02-15 21:30:53'),(973,'2005-05-30 20:27:45',1914,473,'2005-06-08 22:47:45',2,'2006-02-15 21:30:53'),(974,'2005-05-30 20:28:42',2617,596,'2005-06-08 23:45:42',2,'2006-02-15 21:30:53'),(975,'2005-05-30 21:07:15',3109,7,'2005-06-03 01:48:15',2,'2006-02-15 21:30:53'),(976,'2005-05-30 21:11:19',2290,581,'2005-06-06 02:16:19',2,'2006-02-15 21:30:53'),(977,'2005-05-30 21:22:26',2029,394,'2005-06-04 22:32:26',2,'2006-02-15 21:30:53'),(978,'2005-05-30 21:30:52',407,154,'2005-06-07 16:22:52',1,'2006-02-15 21:30:53'),(979,'2005-05-30 21:37:11',3917,279,'2005-06-08 00:24:11',2,'2006-02-15 21:30:53'),(980,'2005-05-30 21:45:19',4169,273,'2005-06-01 20:32:19',1,'2006-02-15 21:30:53'),(981,'2005-05-30 21:52:42',2913,326,'2005-06-01 03:15:42',2,'2006-02-15 21:30:53'),(982,'2005-05-30 22:15:24',3560,524,'2005-06-02 16:18:24',1,'2006-02-15 21:30:53'),(983,'2005-05-30 22:15:51',63,115,'2005-06-02 22:56:51',1,'2006-02-15 21:30:53'),(984,'2005-05-30 22:17:17',2305,262,'2005-06-01 20:15:17',2,'2006-02-15 21:30:53'),(985,'2005-05-30 22:18:35',1573,564,'2005-06-04 23:36:35',1,'2006-02-15 21:30:53'),(986,'2005-05-30 22:22:52',4045,253,'2005-06-01 02:24:52',1,'2006-02-15 21:30:53'),(987,'2005-05-30 22:59:12',390,11,'2005-06-07 20:56:12',1,'2006-02-15 21:30:53'),(988,'2005-05-30 23:08:03',1364,12,'2005-06-07 00:22:03',1,'2006-02-15 21:30:53'),(989,'2005-05-30 23:11:51',4388,83,'2005-06-03 20:36:51',2,'2006-02-15 21:30:53'),(990,'2005-05-30 23:25:14',4171,311,'2005-06-06 18:41:14',2,'2006-02-15 21:30:53'),(991,'2005-05-30 23:29:22',2863,593,'2005-06-07 23:16:22',1,'2006-02-15 21:30:53'),(992,'2005-05-30 23:47:56',3572,123,'2005-06-05 19:01:56',1,'2006-02-15 21:30:53'),(993,'2005-05-30 23:54:19',2080,513,'2005-06-04 21:27:19',1,'2006-02-15 21:30:53'),(994,'2005-05-30 23:55:36',2798,472,'2005-06-04 01:00:36',2,'2006-02-15 21:30:53'),(995,'2005-05-31 00:06:02',17,150,'2005-06-06 02:30:02',2,'2006-02-15 21:30:53'),(996,'2005-05-31 00:06:20',2075,331,'2005-05-31 21:29:20',2,'2006-02-15 21:30:53'),(997,'2005-05-31 00:08:25',4243,216,'2005-06-02 00:17:25',2,'2006-02-15 21:30:53'),(998,'2005-05-31 00:16:57',3395,389,'2005-06-01 22:41:57',1,'2006-02-15 21:30:53'),(999,'2005-05-31 00:25:10',4433,413,'2005-06-03 06:05:10',2,'2006-02-15 21:30:53'),(1000,'2005-05-31 00:25:56',1774,332,'2005-06-08 19:42:56',2,'2006-02-15 21:30:53'),(1001,'2005-05-31 00:46:31',1498,64,'2005-06-06 06:14:31',2,'2006-02-15 21:30:53'),(1002,'2005-05-31 00:47:56',709,397,'2005-06-06 19:51:56',1,'2006-02-15 21:30:53'),(1003,'2005-05-31 00:48:20',133,161,'2005-06-02 04:53:20',2,'2006-02-15 21:30:53'),(1004,'2005-05-31 00:48:36',1588,565,'2005-06-01 20:56:36',1,'2006-02-15 21:30:53'),(1005,'2005-05-31 00:53:25',4006,551,'2005-06-04 01:21:25',2,'2006-02-15 21:30:53'),(1006,'2005-05-31 00:57:08',3461,222,'2005-06-02 22:35:08',1,'2006-02-15 21:30:53'),(1007,'2005-05-31 01:02:28',3185,24,'2005-06-07 01:36:28',2,'2006-02-15 21:30:53'),(1008,'2005-05-31 01:18:56',914,599,'2005-06-01 01:24:56',2,'2006-02-15 21:30:53'),(1009,'2005-05-31 01:47:35',2523,485,'2005-06-03 20:26:35',1,'2006-02-15 21:30:53'),(1010,'2005-05-31 01:57:32',4038,49,'2005-06-01 06:50:32',2,'2006-02-15 21:30:53'),(1011,'2005-05-31 02:05:39',118,164,'2005-06-04 21:27:39',2,'2006-02-15 21:30:53'),(1012,'2005-05-31 02:18:05',688,291,'2005-06-03 06:47:05',1,'2006-02-15 21:30:53'),(1013,'2005-05-31 02:37:00',4522,384,'2005-06-02 06:39:00',2,'2006-02-15 21:30:53'),(1014,'2005-05-31 02:39:16',766,280,'2005-06-01 06:03:16',2,'2006-02-15 21:30:53'),(1015,'2005-05-31 02:44:57',3702,526,'2005-06-07 23:01:57',2,'2006-02-15 21:30:53'),(1016,'2005-05-31 02:49:43',3423,204,'2005-06-04 03:48:43',1,'2006-02-15 21:30:53'),(1017,'2005-05-31 02:53:36',1242,16,'2005-06-03 05:04:36',1,'2006-02-15 21:30:53'),(1018,'2005-05-31 02:53:42',1930,594,'2005-06-03 00:47:42',2,'2006-02-15 21:30:53'),(1019,'2005-05-31 03:05:07',3975,279,'2005-06-03 08:34:07',1,'2006-02-15 21:30:53'),(1020,'2005-05-31 03:06:08',3402,138,'2005-06-02 08:57:08',2,'2006-02-15 21:30:53'),(1021,'2005-05-31 03:16:15',2724,541,'2005-06-08 06:43:15',2,'2006-02-15 21:30:53'),(1022,'2005-05-31 03:16:45',842,239,'2005-06-08 09:04:45',1,'2006-02-15 21:30:53'),(1023,'2005-05-31 03:26:50',2483,227,'2005-06-05 08:19:50',2,'2006-02-15 21:30:53'),(1024,'2005-05-31 03:30:19',2310,457,'2005-06-09 05:52:19',2,'2006-02-15 21:30:53'),(1025,'2005-05-31 03:41:37',1618,93,'2005-06-08 07:05:37',2,'2006-02-15 21:30:53'),(1026,'2005-05-31 03:45:26',632,107,'2005-06-06 22:30:26',2,'2006-02-15 21:30:53'),(1027,'2005-05-31 03:46:19',2718,55,'2005-06-09 03:50:19',1,'2006-02-15 21:30:53'),(1028,'2005-05-31 03:48:05',4479,51,'2005-06-01 03:51:05',1,'2006-02-15 21:30:53'),(1029,'2005-05-31 03:52:02',2082,50,'2005-06-06 08:10:02',1,'2006-02-15 21:30:53'),(1030,'2005-05-31 04:06:47',3948,267,'2005-06-02 02:59:47',1,'2006-02-15 21:30:53'),(1031,'2005-05-31 04:23:01',917,416,'2005-06-06 08:35:01',1,'2006-02-15 21:30:53'),(1032,'2005-05-31 04:28:43',2937,236,'2005-06-02 02:00:43',2,'2006-02-15 21:30:53'),(1033,'2005-05-31 04:50:07',14,25,'2005-06-02 01:53:07',1,'2006-02-15 21:30:53'),(1034,'2005-05-31 04:53:40',4117,293,'2005-06-09 08:25:40',2,'2006-02-15 21:30:53'),(1035,'2005-05-31 05:01:09',949,362,'2005-06-02 03:59:09',1,'2006-02-15 21:30:53'),(1036,'2005-05-31 05:21:10',2164,438,'2005-06-04 04:19:10',1,'2006-02-15 21:30:53'),(1037,'2005-05-31 05:22:25',810,569,'2005-06-09 04:52:25',1,'2006-02-15 21:30:53'),(1038,'2005-05-31 05:23:47',1253,385,'2005-06-02 03:57:47',2,'2006-02-15 21:30:53'),(1039,'2005-05-31 05:32:29',2479,124,'2005-06-01 06:04:29',2,'2006-02-15 21:30:53'),(1040,'2005-05-31 05:35:16',2546,270,'2005-06-09 04:14:16',1,'2006-02-15 21:30:53'),(1041,'2005-05-31 05:46:23',4432,272,'2005-06-06 09:50:23',2,'2006-02-15 21:30:53'),(1042,'2005-05-31 05:53:00',3155,506,'2005-06-01 05:24:00',1,'2006-02-15 21:30:53'),(1043,'2005-05-31 06:11:40',2322,412,'2005-06-08 09:15:40',2,'2006-02-15 21:30:53'),(1044,'2005-05-31 06:24:44',2574,70,'2005-06-03 04:51:44',1,'2006-02-15 21:30:53'),(1045,'2005-05-31 06:29:01',3470,594,'2005-06-09 04:31:01',1,'2006-02-15 21:30:53'),(1046,'2005-05-31 06:42:30',468,179,'2005-06-03 04:33:30',2,'2006-02-15 21:30:53'),(1047,'2005-05-31 06:45:57',1366,72,'2005-06-04 09:49:57',2,'2006-02-15 21:30:53'),(1048,'2005-05-31 06:49:53',2811,55,'2005-06-02 11:33:53',1,'2006-02-15 21:30:53'),(1049,'2005-05-31 06:57:04',3913,312,'2005-06-02 11:32:04',2,'2006-02-15 21:30:53'),(1050,'2005-05-31 07:01:27',726,303,'2005-06-03 07:50:27',2,'2006-02-15 21:30:53'),(1051,'2005-05-31 07:02:09',1025,246,'2005-06-03 01:32:09',1,'2006-02-15 21:30:53'),(1052,'2005-05-31 07:07:03',2157,156,'2005-06-05 09:38:03',1,'2006-02-15 21:30:53'),(1053,'2005-05-31 07:12:44',3734,196,'2005-06-04 12:33:44',1,'2006-02-15 21:30:53'),(1054,'2005-05-31 07:33:25',1575,126,'2005-06-02 01:40:25',2,'2006-02-15 21:30:53'),(1055,'2005-05-31 07:47:18',1639,108,'2005-06-03 01:57:18',1,'2006-02-15 21:30:53'),(1056,'2005-05-31 07:48:07',1591,519,'2005-06-05 08:51:07',2,'2006-02-15 21:30:53'),(1057,'2005-05-31 07:58:06',497,124,'2005-06-06 03:21:06',1,'2006-02-15 21:30:53'),(1058,'2005-05-31 08:04:17',40,116,'2005-06-03 11:12:17',2,'2006-02-15 21:30:53'),(1059,'2005-05-31 08:20:43',3041,241,'2005-06-04 09:05:43',2,'2006-02-15 21:30:53'),(1060,'2005-05-31 08:21:43',2676,570,'2005-06-09 04:02:43',2,'2006-02-15 21:30:53'),(1061,'2005-05-31 08:27:58',965,109,'2005-06-07 02:34:58',1,'2006-02-15 21:30:53'),(1062,'2005-05-31 08:38:20',2223,176,'2005-06-09 08:23:20',2,'2006-02-15 21:30:53'),(1063,'2005-05-31 08:44:29',2484,7,'2005-06-09 08:00:29',1,'2006-02-15 21:30:53'),(1064,'2005-05-31 08:50:07',2373,460,'2005-06-02 14:47:07',2,'2006-02-15 21:30:53'),(1065,'2005-05-31 08:54:56',3379,316,'2005-06-08 09:21:56',1,'2006-02-15 21:30:53'),(1066,'2005-05-31 09:07:33',2383,541,'2005-06-09 05:34:33',2,'2006-02-15 21:30:53'),(1067,'2005-05-31 09:12:13',2345,32,'2005-06-01 06:15:13',1,'2006-02-15 21:30:53'),(1068,'2005-05-31 09:32:15',150,443,'2005-06-01 11:20:15',1,'2006-02-15 21:30:53'),(1069,'2005-05-31 09:32:31',3057,251,'2005-06-08 10:19:31',2,'2006-02-15 21:30:53'),(1070,'2005-05-31 09:39:56',3170,228,'2005-06-05 10:23:56',1,'2006-02-15 21:30:53'),(1071,'2005-05-31 09:48:56',469,174,'2005-06-02 03:52:56',2,'2006-02-15 21:30:53'),(1072,'2005-05-31 09:52:50',2557,272,'2005-06-05 05:39:50',1,'2006-02-15 21:30:53'),(1073,'2005-05-31 09:55:04',522,146,'2005-06-07 03:55:04',1,'2006-02-15 21:30:53'),(1074,'2005-05-31 10:04:42',2508,503,'2005-06-02 15:27:42',2,'2006-02-15 21:30:53'),(1075,'2005-05-31 10:13:34',2279,9,'2005-06-09 08:11:34',1,'2006-02-15 21:30:53'),(1076,'2005-05-31 10:14:31',2551,214,'2005-06-05 10:13:31',2,'2006-02-15 21:30:53'),(1077,'2005-05-31 10:22:54',1986,24,'2005-06-02 12:21:54',1,'2006-02-15 21:30:53'),(1078,'2005-05-31 10:28:33',3682,230,'2005-06-03 14:45:33',2,'2006-02-15 21:30:53'),(1079,'2005-05-31 10:48:17',268,312,'2005-06-08 12:30:17',1,'2006-02-15 21:30:53'),(1080,'2005-05-31 10:55:26',3491,215,'2005-06-03 13:13:26',2,'2006-02-15 21:30:53'),(1081,'2005-05-31 10:56:32',4524,404,'2005-06-06 11:31:32',1,'2006-02-15 21:30:53'),(1082,'2005-05-31 11:02:01',4510,239,'2005-06-05 08:43:01',1,'2006-02-15 21:30:53'),(1083,'2005-05-31 11:04:48',2393,556,'2005-06-05 13:32:48',1,'2006-02-15 21:30:53'),(1084,'2005-05-31 11:10:17',4577,12,'2005-06-01 11:15:17',1,'2006-02-15 21:30:53'),(1085,'2005-05-31 11:15:43',301,5,'2005-06-07 12:02:43',1,'2006-02-15 21:30:53'),(1086,'2005-05-31 11:17:37',2909,549,'2005-06-06 13:58:37',2,'2006-02-15 21:30:53'),(1087,'2005-05-31 11:18:08',431,169,'2005-06-04 08:33:08',1,'2006-02-15 21:30:53'),(1088,'2005-05-31 11:35:13',3988,356,'2005-06-06 16:01:13',2,'2006-02-15 21:30:53'),(1089,'2005-05-31 11:38:29',3784,367,'2005-06-02 08:06:29',1,'2006-02-15 21:30:53'),(1090,'2005-05-31 12:03:44',3329,23,'2005-06-02 15:54:44',2,'2006-02-15 21:30:53'),(1091,'2005-05-31 12:11:04',3853,251,'2005-06-04 11:42:04',1,'2006-02-15 21:30:53'),(1092,'2005-05-31 12:15:57',4412,278,'2005-06-03 15:39:57',2,'2006-02-15 21:30:53'),(1093,'2005-05-31 12:32:26',2189,214,'2005-06-03 07:51:26',2,'2006-02-15 21:30:53'),(1094,'2005-05-31 13:03:49',3810,547,'2005-06-05 14:30:49',2,'2006-02-15 21:30:53'),(1095,'2005-05-31 13:15:41',4546,252,'2005-06-05 12:10:41',1,'2006-02-15 21:30:53'),(1096,'2005-05-31 13:30:49',1066,271,'2005-06-09 13:53:49',1,'2006-02-15 21:30:53'),(1097,'2005-05-31 13:38:42',2285,491,'2005-06-01 13:54:42',2,'2006-02-15 21:30:53'),(1098,'2005-05-31 13:51:48',1050,425,'2005-06-09 18:42:48',2,'2006-02-15 21:30:53'),(1099,'2005-05-31 13:54:48',924,269,'2005-06-05 13:04:48',2,'2006-02-15 21:30:53'),(1100,'2005-05-31 14:03:21',316,497,'2005-06-06 16:08:21',1,'2006-02-15 21:30:53'),(1101,'2005-05-31 14:13:59',1174,260,'2005-06-07 15:49:59',1,'2006-02-15 21:30:53'),(1102,'2005-05-31 14:20:29',2052,115,'2005-06-04 17:38:29',2,'2006-02-15 21:30:53'),(1103,'2005-05-31 14:24:18',3154,353,'2005-06-09 10:27:18',1,'2006-02-15 21:30:53'),(1104,'2005-05-31 14:30:01',1619,466,'2005-06-05 12:07:01',1,'2006-02-15 21:30:53'),(1105,'2005-05-31 14:33:56',1708,26,'2005-06-07 11:30:56',1,'2006-02-15 21:30:53'),(1106,'2005-05-31 14:36:52',4185,109,'2005-06-01 14:33:52',2,'2006-02-15 21:30:53'),(1107,'2005-05-31 15:04:05',3449,53,'2005-06-07 16:42:05',2,'2006-02-15 21:30:53'),(1108,'2005-05-31 15:05:12',2562,254,'2005-06-09 19:48:12',2,'2006-02-15 21:30:53'),(1109,'2005-05-31 15:12:15',2031,481,'2005-06-09 16:21:15',1,'2006-02-15 21:30:53'),(1110,'2005-05-31 15:22:51',2085,355,'2005-06-07 14:32:51',1,'2006-02-15 21:30:53'),(1111,'2005-05-31 15:24:19',1137,300,'2005-06-08 21:18:19',1,'2006-02-15 21:30:53'),(1112,'2005-05-31 15:51:39',2453,214,'2005-06-03 14:04:39',1,'2006-02-15 21:30:53'),(1113,'2005-05-31 15:58:44',2078,451,'2005-06-05 18:05:44',2,'2006-02-15 21:30:53'),(1114,'2005-05-31 16:00:33',2287,117,'2005-06-01 19:05:33',1,'2006-02-15 21:30:53'),(1115,'2005-05-31 16:07:09',2140,109,'2005-06-04 18:51:09',1,'2006-02-15 21:30:53'),(1116,'2005-05-31 16:10:46',1356,256,'2005-06-01 20:27:46',2,'2006-02-15 21:30:53'),(1117,'2005-05-31 16:15:31',4125,189,'2005-06-04 17:20:31',1,'2006-02-15 21:30:53'),(1118,'2005-05-31 16:23:02',213,510,'2005-06-03 20:00:02',1,'2006-02-15 21:30:53'),(1119,'2005-05-31 16:34:27',4401,469,'2005-06-02 10:54:27',1,'2006-02-15 21:30:53'),(1120,'2005-05-31 16:37:14',2897,361,'2005-06-04 12:53:14',1,'2006-02-15 21:30:53'),(1121,'2005-05-31 16:37:36',1691,74,'2005-06-06 21:02:36',1,'2006-02-15 21:30:53'),(1122,'2005-05-31 16:39:33',1392,180,'2005-06-04 17:25:33',1,'2006-02-15 21:30:53'),(1123,'2005-05-31 16:48:43',142,448,'2005-06-02 19:17:43',2,'2006-02-15 21:30:53'),(1124,'2005-05-31 16:49:34',4560,134,'2005-06-04 19:32:34',2,'2006-02-15 21:30:53'),(1125,'2005-05-31 17:23:44',1172,234,'2005-06-01 15:02:44',1,'2006-02-15 21:30:53'),(1126,'2005-05-31 17:27:45',2765,431,'2005-06-04 20:06:45',2,'2006-02-15 21:30:53'),(1127,'2005-05-31 17:45:49',2412,387,'2005-06-08 22:41:49',2,'2006-02-15 21:30:53'),(1128,'2005-05-31 17:49:26',1496,311,'2005-06-05 19:51:26',2,'2006-02-15 21:30:53'),(1129,'2005-05-31 18:00:48',386,486,'2005-06-04 23:05:48',1,'2006-02-15 21:30:53'),(1130,'2005-05-31 18:13:57',3186,124,'2005-06-06 22:50:57',2,'2006-02-15 21:30:53'),(1131,'2005-05-31 18:44:19',2654,128,'2005-06-01 20:13:19',1,'2006-02-15 21:30:53'),(1132,'2005-05-31 18:44:53',1763,198,'2005-06-07 22:02:53',2,'2006-02-15 21:30:53'),(1133,'2005-05-31 19:12:21',4271,73,'2005-06-02 20:12:21',1,'2006-02-15 21:30:53'),(1134,'2005-05-31 19:14:15',143,191,'2005-06-02 17:13:15',2,'2006-02-15 21:30:53'),(1135,'2005-05-31 19:15:11',3118,122,'2005-06-01 14:44:11',2,'2006-02-15 21:30:53'),(1136,'2005-05-31 19:19:36',3963,50,'2005-06-09 16:04:36',2,'2006-02-15 21:30:53'),(1137,'2005-05-31 19:20:14',3259,351,'2005-06-07 16:10:14',1,'2006-02-15 21:30:53'),(1138,'2005-05-31 19:30:27',3944,438,'2005-06-05 21:42:27',1,'2006-02-15 21:30:53'),(1139,'2005-05-31 19:34:52',666,562,'2005-06-06 17:40:52',1,'2006-02-15 21:30:53'),(1140,'2005-05-31 19:36:30',3731,10,'2005-06-07 18:33:30',2,'2006-02-15 21:30:53'),(1141,'2005-05-31 19:42:02',4128,217,'2005-06-07 00:59:02',2,'2006-02-15 21:30:53'),(1142,'2005-05-31 19:46:38',3998,5,'2005-06-05 14:03:38',1,'2006-02-15 21:30:53'),(1143,'2005-05-31 19:53:03',2632,209,'2005-06-06 20:56:03',2,'2006-02-15 21:30:53'),(1144,'2005-05-31 20:04:10',2450,207,'2005-06-09 16:34:10',1,'2006-02-15 21:30:53'),(1145,'2005-05-31 20:13:45',1133,284,'2005-06-08 02:10:45',1,'2006-02-15 21:30:53'),(1146,'2005-05-31 20:34:45',3134,250,'2005-06-03 18:12:45',2,'2006-02-15 21:30:53'),(1147,'2005-05-31 20:37:52',622,259,'2005-06-06 19:23:52',2,'2006-02-15 21:30:53'),(1148,'2005-05-31 20:38:40',3307,235,'2005-06-02 18:35:40',2,'2006-02-15 21:30:53'),(1149,'2005-05-31 21:03:17',352,326,'2005-06-08 19:58:17',2,'2006-02-15 21:30:53'),(1150,'2005-05-31 21:20:09',1632,136,'2005-06-03 19:15:09',2,'2006-02-15 21:30:53'),(1151,'2005-05-31 21:29:00',1281,581,'2005-06-03 23:24:00',1,'2006-02-15 21:30:53'),(1152,'2005-05-31 21:32:17',210,191,'2005-06-04 21:07:17',2,'2006-02-15 21:30:53'),(1153,'2005-05-31 21:36:44',2725,506,'2005-06-10 01:26:44',2,'2006-02-15 21:30:53'),(1154,'2005-05-31 21:42:09',2732,59,'2005-06-08 16:40:09',1,'2006-02-15 21:30:53'),(1155,'2005-05-31 22:17:11',2048,251,'2005-06-04 20:27:11',2,'2006-02-15 21:30:53'),(1156,'2005-05-31 22:37:34',460,106,'2005-06-01 23:02:34',2,'2006-02-15 21:30:53'),(1157,'2005-05-31 22:47:45',1449,61,'2005-06-02 18:01:45',1,'2006-02-15 21:30:53'),(1158,'2005-06-14 22:53:33',1632,416,'2005-06-18 21:37:33',2,'2006-02-15 21:30:53'),(1159,'2005-06-14 22:55:13',4395,516,'2005-06-17 02:11:13',1,'2006-02-15 21:30:53'),(1160,'2005-06-14 23:00:34',2795,239,'2005-06-18 01:58:34',2,'2006-02-15 21:30:53'),(1161,'2005-06-14 23:07:08',1690,285,'2005-06-21 17:12:08',1,'2006-02-15 21:30:53'),(1162,'2005-06-14 23:09:38',987,310,'2005-06-23 22:00:38',1,'2006-02-15 21:30:53'),(1163,'2005-06-14 23:12:46',4209,592,'2005-06-23 21:53:46',1,'2006-02-15 21:30:53'),(1164,'2005-06-14 23:16:26',3691,49,'2005-06-16 21:00:26',1,'2006-02-15 21:30:53'),(1165,'2005-06-14 23:16:27',2855,264,'2005-06-20 02:40:27',2,'2006-02-15 21:30:53'),(1166,'2005-06-14 23:17:03',2508,46,'2005-06-15 20:43:03',1,'2006-02-15 21:30:53'),(1167,'2005-06-14 23:25:58',4021,323,'2005-06-18 05:18:58',2,'2006-02-15 21:30:53'),(1168,'2005-06-14 23:35:09',4368,481,'2005-06-19 03:20:09',1,'2006-02-15 21:30:53'),(1169,'2005-06-14 23:42:56',1062,139,'2005-06-16 04:02:56',2,'2006-02-15 21:30:53'),(1170,'2005-06-14 23:47:35',2444,595,'2005-06-17 05:28:35',2,'2006-02-15 21:30:53'),(1171,'2005-06-14 23:50:11',4082,284,'2005-06-17 21:44:11',2,'2006-02-15 21:30:53'),(1172,'2005-06-14 23:54:34',2685,306,'2005-06-16 02:26:34',1,'2006-02-15 21:30:53'),(1173,'2005-06-14 23:54:46',1050,191,'2005-06-19 23:26:46',2,'2006-02-15 21:30:53'),(1174,'2005-06-15 00:12:51',2653,95,'2005-06-21 02:10:51',2,'2006-02-15 21:30:53'),(1175,'2005-06-15 00:15:15',3255,197,'2005-06-20 19:23:15',2,'2006-02-15 21:30:53'),(1176,'2005-06-15 00:28:37',2715,512,'2005-06-21 21:42:37',1,'2006-02-15 21:30:53'),(1177,'2005-06-15 00:33:04',1897,210,'2005-06-16 03:47:04',2,'2006-02-15 21:30:53'),(1178,'2005-06-15 00:36:40',2553,279,'2005-06-21 00:27:40',2,'2006-02-15 21:30:53'),(1179,'2005-06-15 00:36:50',816,119,'2005-06-22 22:09:50',1,'2006-02-15 21:30:53'),(1180,'2005-06-15 00:39:01',3119,432,'2005-06-21 22:44:01',2,'2006-02-15 21:30:53'),(1181,'2005-06-15 00:42:17',2973,546,'2005-06-19 03:36:17',2,'2006-02-15 21:30:53'),(1182,'2005-06-15 00:45:21',1061,196,'2005-06-22 03:52:21',1,'2006-02-15 21:30:53'),(1183,'2005-06-15 00:49:19',706,329,'2005-06-20 04:33:19',1,'2006-02-15 21:30:53'),(1184,'2005-06-15 00:49:36',473,295,'2005-06-22 23:39:36',2,'2006-02-15 21:30:53'),(1185,'2005-06-15 00:54:12',2785,1,'2005-06-23 02:42:12',2,'2006-02-15 21:30:53'),(1186,'2005-06-15 00:56:45',1556,368,'2005-06-16 02:23:45',1,'2006-02-15 21:30:53'),(1187,'2005-06-15 00:58:50',1108,334,'2005-06-23 02:19:50',1,'2006-02-15 21:30:53'),(1188,'2005-06-15 01:04:07',246,173,'2005-06-19 03:48:07',1,'2006-02-15 21:30:53'),(1189,'2005-06-15 01:04:22',142,244,'2005-06-24 06:48:22',1,'2006-02-15 21:30:53'),(1190,'2005-06-15 01:05:32',2572,370,'2005-06-23 02:34:32',2,'2006-02-15 21:30:53'),(1191,'2005-06-15 01:10:35',2221,291,'2005-06-17 20:36:35',2,'2006-02-15 21:30:53'),(1192,'2005-06-15 01:18:39',4134,186,'2005-06-19 22:46:39',1,'2006-02-15 21:30:53'),(1193,'2005-06-15 01:24:20',4504,561,'2005-06-21 02:29:20',2,'2006-02-15 21:30:53'),(1194,'2005-06-15 01:25:08',3774,402,'2005-06-21 01:16:08',2,'2006-02-15 21:30:53'),(1195,'2005-06-15 01:37:38',2272,84,'2005-06-17 21:50:38',1,'2006-02-15 21:30:53'),(1196,'2005-06-15 01:38:31',994,52,'2005-06-18 06:55:31',1,'2006-02-15 21:30:53'),(1197,'2005-06-15 01:42:46',3812,349,'2005-06-20 00:22:46',1,'2006-02-15 21:30:53'),(1198,'2005-06-15 01:48:58',1138,491,'2005-06-20 01:07:58',2,'2006-02-15 21:30:53'),(1199,'2005-06-15 01:58:50',253,238,'2005-06-16 20:30:50',2,'2006-02-15 21:30:53'),(1200,'2005-06-15 01:59:51',3329,516,'2005-06-21 21:33:51',1,'2006-02-15 21:30:53'),(1201,'2005-06-15 02:06:28',2679,209,'2005-06-16 21:38:28',2,'2006-02-15 21:30:53'),(1202,'2005-06-15 02:08:04',2821,451,'2005-06-16 21:56:04',1,'2006-02-15 21:30:53'),(1203,'2005-06-15 02:09:02',2223,452,'2005-06-21 00:04:02',1,'2006-02-15 21:30:53'),(1204,'2005-06-15 02:21:46',2450,249,'2005-06-20 07:14:46',2,'2006-02-15 21:30:53'),(1205,'2005-06-15 02:25:56',470,340,'2005-06-22 23:19:56',1,'2006-02-15 21:30:53'),(1206,'2005-06-15 02:27:07',1097,264,'2005-06-18 22:46:07',2,'2006-02-15 21:30:53'),(1207,'2005-06-15 02:27:08',2277,430,'2005-06-19 08:18:08',2,'2006-02-15 21:30:53'),(1208,'2005-06-15 02:30:03',750,376,'2005-06-18 00:04:03',1,'2006-02-15 21:30:53'),(1209,'2005-06-15 02:31:12',1494,146,'2005-06-21 07:39:12',1,'2006-02-15 21:30:53'),(1210,'2005-06-15 02:57:51',7,345,'2005-06-20 01:41:51',2,'2006-02-15 21:30:53'),(1211,'2005-06-15 03:01:20',3360,122,'2005-06-18 07:52:20',2,'2006-02-15 21:30:53'),(1212,'2005-06-15 03:03:33',3611,371,'2005-06-17 06:31:33',1,'2006-02-15 21:30:53'),(1213,'2005-06-15 03:14:05',3191,94,'2005-06-15 21:41:05',2,'2006-02-15 21:30:53'),(1214,'2005-06-15 03:18:40',4482,46,'2005-06-20 07:32:40',1,'2006-02-15 21:30:53'),(1215,'2005-06-15 03:21:00',242,102,'2005-06-19 03:39:00',1,'2006-02-15 21:30:53'),(1216,'2005-06-15 03:23:48',3973,100,'2005-06-18 03:35:48',1,'2006-02-15 21:30:53'),(1217,'2005-06-15 03:24:14',600,203,'2005-06-18 22:37:14',2,'2006-02-15 21:30:53'),(1218,'2005-06-15 03:24:44',239,371,'2005-06-21 22:45:44',2,'2006-02-15 21:30:53'),(1219,'2005-06-15 03:25:59',3005,330,'2005-06-20 00:37:59',1,'2006-02-15 21:30:53'),(1220,'2005-06-15 03:26:15',1621,290,'2005-06-23 08:17:15',1,'2006-02-15 21:30:53'),(1221,'2005-06-15 03:35:16',2124,403,'2005-06-18 03:11:16',1,'2006-02-15 21:30:53'),(1222,'2005-06-15 03:38:49',2799,168,'2005-06-17 22:30:49',1,'2006-02-15 21:30:53'),(1223,'2005-06-15 03:38:53',1299,50,'2005-06-20 01:00:53',2,'2006-02-15 21:30:53'),(1224,'2005-06-15 03:44:25',1572,369,'2005-06-17 03:49:25',2,'2006-02-15 21:30:53'),(1225,'2005-06-15 03:45:35',1929,434,'2005-06-19 02:03:35',1,'2006-02-15 21:30:53'),(1226,'2005-06-15 03:46:10',2290,409,'2005-06-23 02:00:10',1,'2006-02-15 21:30:53'),(1227,'2005-06-15 03:50:03',654,428,'2005-06-21 23:48:03',2,'2006-02-15 21:30:53'),(1228,'2005-06-15 03:50:36',4473,398,'2005-06-17 22:41:36',1,'2006-02-15 21:30:53'),(1229,'2005-06-15 03:53:13',2140,468,'2005-06-18 04:09:13',1,'2006-02-15 21:30:53'),(1230,'2005-06-15 04:04:09',2324,447,'2005-06-16 02:21:09',1,'2006-02-15 21:30:53'),(1231,'2005-06-15 04:04:41',3003,302,'2005-06-20 23:52:41',2,'2006-02-15 21:30:53'),(1232,'2005-06-15 04:18:10',2743,391,'2005-06-17 06:02:10',2,'2006-02-15 21:30:53'),(1233,'2005-06-15 04:18:37',4214,550,'2005-06-22 03:36:37',1,'2006-02-15 21:30:53'),(1234,'2005-06-15 04:21:52',709,529,'2005-06-22 03:25:52',1,'2006-02-15 21:30:53'),(1235,'2005-06-15 04:31:28',1000,255,'2005-06-22 10:08:28',1,'2006-02-15 21:30:53'),(1236,'2005-06-15 04:34:27',3182,66,'2005-06-18 08:15:27',1,'2006-02-15 21:30:53'),(1237,'2005-06-15 04:44:10',3249,49,'2005-06-23 07:00:10',2,'2006-02-15 21:30:53'),(1238,'2005-06-15 04:49:08',3534,205,'2005-06-20 00:06:08',1,'2006-02-15 21:30:53'),(1239,'2005-06-15 04:53:01',3731,444,'2005-06-16 07:03:01',1,'2006-02-15 21:30:53'),(1240,'2005-06-15 04:58:07',3841,28,'2005-06-17 23:56:07',1,'2006-02-15 21:30:53'),(1241,'2005-06-15 04:59:43',4377,62,'2005-06-24 03:32:43',2,'2006-02-15 21:30:53'),(1242,'2005-06-15 05:05:07',821,141,'2005-06-22 04:57:07',1,'2006-02-15 21:30:53'),(1243,'2005-06-15 05:07:32',2629,107,'2005-06-21 08:17:32',2,'2006-02-15 21:30:53'),(1244,'2005-06-15 05:08:40',1026,515,'2005-06-20 10:41:40',1,'2006-02-15 21:30:53'),(1245,'2005-06-15 05:09:01',1314,234,'2005-06-22 06:55:01',2,'2006-02-15 21:30:53'),(1246,'2005-06-15 05:11:19',431,357,'2005-06-21 02:21:19',1,'2006-02-15 21:30:53'),(1247,'2005-06-15 05:16:40',4049,287,'2005-06-23 11:01:40',1,'2006-02-15 21:30:53'),(1248,'2005-06-15 05:33:52',3878,544,'2005-06-19 06:56:52',2,'2006-02-15 21:30:53'),(1249,'2005-06-15 05:38:09',2120,403,'2005-06-22 10:29:09',1,'2006-02-15 21:30:53'),(1250,'2005-06-15 05:55:40',4360,38,'2005-06-23 03:11:40',2,'2006-02-15 21:30:53'),(1251,'2005-06-15 05:58:55',3307,442,'2005-06-23 02:45:55',2,'2006-02-15 21:30:53'),(1252,'2005-06-15 06:05:18',1147,89,'2005-06-24 07:40:18',1,'2006-02-15 21:30:53'),(1253,'2005-06-15 06:06:33',3242,498,'2005-06-21 04:13:33',2,'2006-02-15 21:30:53'),(1254,'2005-06-15 06:11:16',3986,571,'2005-06-21 06:40:16',2,'2006-02-15 21:30:53'),(1255,'2005-06-15 06:13:45',1433,526,'2005-06-16 03:59:45',2,'2006-02-15 21:30:53'),(1256,'2005-06-15 06:13:57',1437,470,'2005-06-16 06:54:57',2,'2006-02-15 21:30:53'),(1257,'2005-06-15 06:15:36',1938,267,'2005-06-21 01:04:36',2,'2006-02-15 21:30:53'),(1258,'2005-06-15 06:21:30',4530,320,'2005-06-18 05:43:30',2,'2006-02-15 21:30:53'),(1259,'2005-06-15 06:37:55',4460,570,'2005-06-23 04:02:55',2,'2006-02-15 21:30:53'),(1260,'2005-06-15 06:42:25',330,586,'2005-06-16 10:44:25',2,'2006-02-15 21:30:53'),(1261,'2005-06-15 06:52:57',2447,95,'2005-06-21 01:47:57',2,'2006-02-15 21:30:53'),(1262,'2005-06-15 06:54:53',4495,236,'2005-06-22 08:09:53',2,'2006-02-15 21:30:53'),(1263,'2005-06-15 06:56:39',4144,540,'2005-06-16 11:08:39',1,'2006-02-15 21:30:53'),(1264,'2005-06-15 06:59:39',4176,439,'2005-06-18 08:10:39',2,'2006-02-15 21:30:53'),(1265,'2005-06-15 07:00:50',982,163,'2005-06-19 12:27:50',1,'2006-02-15 21:30:53'),(1266,'2005-06-15 07:11:39',2230,96,'2005-06-21 02:59:39',2,'2006-02-15 21:30:53'),(1267,'2005-06-15 07:21:21',4246,509,'2005-06-17 08:12:21',2,'2006-02-15 21:30:53'),(1268,'2005-06-15 07:29:30',3641,142,'2005-06-23 12:36:30',1,'2006-02-15 21:30:53'),(1269,'2005-06-15 07:29:59',108,59,'2005-06-16 13:26:59',2,'2006-02-15 21:30:53'),(1270,'2005-06-15 07:30:22',62,395,'2005-06-18 11:31:22',2,'2006-02-15 21:30:53'),(1271,'2005-06-15 07:32:24',379,560,'2005-06-21 05:12:24',1,'2006-02-15 21:30:53'),(1272,'2005-06-15 07:42:58',3128,135,'2005-06-18 12:00:58',1,'2006-02-15 21:30:53'),(1273,'2005-06-15 07:52:35',361,530,'2005-06-21 04:55:35',1,'2006-02-15 21:30:53'),(1274,'2005-06-15 07:52:52',2765,430,'2005-06-20 10:01:52',1,'2006-02-15 21:30:53'),(1275,'2005-06-15 07:55:43',950,214,'2005-06-20 06:30:43',1,'2006-02-15 21:30:53'),(1276,'2005-06-15 08:00:13',1508,388,'2005-06-24 02:55:13',2,'2006-02-15 21:30:53'),(1277,'2005-06-15 08:01:29',76,464,'2005-06-22 07:16:29',2,'2006-02-15 21:30:53'),(1278,'2005-06-15 08:09:12',4471,191,'2005-06-17 04:05:12',2,'2006-02-15 21:30:53'),(1279,'2005-06-15 08:13:57',698,183,'2005-06-18 09:36:57',2,'2006-02-15 21:30:53'),(1280,'2005-06-15 08:16:06',2597,266,'2005-06-21 04:10:06',2,'2006-02-15 21:30:53'),(1281,'2005-06-15 08:21:39',2963,511,'2005-06-17 11:03:39',1,'2006-02-15 21:30:53'),(1282,'2005-06-15 08:25:33',186,539,'2005-06-21 04:02:33',1,'2006-02-15 21:30:53'),(1283,'2005-06-15 08:27:30',3177,470,'2005-06-16 09:46:30',2,'2006-02-15 21:30:53'),(1284,'2005-06-15 08:27:33',1387,463,'2005-06-17 03:58:33',1,'2006-02-15 21:30:53'),(1285,'2005-06-15 08:33:06',1054,254,'2005-06-19 07:36:06',1,'2006-02-15 21:30:53'),(1286,'2005-06-15 08:41:13',774,179,'2005-06-23 13:13:13',2,'2006-02-15 21:30:53'),(1287,'2005-06-15 08:41:38',4204,104,'2005-06-22 14:02:38',1,'2006-02-15 21:30:53'),(1288,'2005-06-15 08:41:52',830,456,'2005-06-19 05:30:52',2,'2006-02-15 21:30:53'),(1289,'2005-06-15 08:44:09',3154,522,'2005-06-21 06:04:09',1,'2006-02-15 21:30:53'),(1290,'2005-06-15 08:52:44',1921,540,'2005-06-24 13:36:44',2,'2006-02-15 21:30:53'),(1291,'2005-06-15 08:55:01',3090,176,'2005-06-24 04:22:01',1,'2006-02-15 21:30:53'),(1292,'2005-06-15 09:03:52',4535,178,'2005-06-21 07:53:52',1,'2006-02-15 21:30:53'),(1293,'2005-06-15 09:06:24',2882,127,'2005-06-18 06:58:24',1,'2006-02-15 21:30:53'),(1294,'2005-06-15 09:09:27',339,327,'2005-06-19 04:43:27',1,'2006-02-15 21:30:53'),(1295,'2005-06-15 09:17:20',2897,449,'2005-06-18 10:14:20',2,'2006-02-15 21:30:53'),(1296,'2005-06-15 09:23:59',1760,200,'2005-06-19 03:44:59',2,'2006-02-15 21:30:53'),(1297,'2005-06-15 09:31:28',1075,4,'2005-06-19 04:33:28',1,'2006-02-15 21:30:53'),(1298,'2005-06-15 09:32:53',4163,334,'2005-06-16 12:40:53',2,'2006-02-15 21:30:53'),(1299,'2005-06-15 09:34:50',1584,91,'2005-06-21 12:07:50',1,'2006-02-15 21:30:53'),(1300,'2005-06-15 09:36:19',2524,186,'2005-06-17 13:54:19',2,'2006-02-15 21:30:53'),(1301,'2005-06-15 09:46:33',1484,33,'2005-06-24 08:56:33',2,'2006-02-15 21:30:53'),(1302,'2005-06-15 09:48:37',324,285,'2005-06-22 06:18:37',1,'2006-02-15 21:30:53'),(1303,'2005-06-15 09:55:57',2001,365,'2005-06-20 14:26:57',2,'2006-02-15 21:30:53'),(1304,'2005-06-15 09:56:02',1304,242,'2005-06-24 07:00:02',1,'2006-02-15 21:30:53'),(1305,'2005-06-15 09:59:16',187,8,'2005-06-19 09:48:16',2,'2006-02-15 21:30:53'),(1306,'2005-06-15 09:59:24',2132,524,'2005-06-19 09:37:24',2,'2006-02-15 21:30:53'),(1307,'2005-06-15 10:06:15',368,507,'2005-06-20 04:50:15',2,'2006-02-15 21:30:53'),(1308,'2005-06-15 10:07:48',220,236,'2005-06-24 15:24:48',1,'2006-02-15 21:30:53'),(1309,'2005-06-15 10:10:49',2356,200,'2005-06-16 12:44:49',1,'2006-02-15 21:30:53'),(1310,'2005-06-15 10:11:42',2045,27,'2005-06-16 15:00:42',1,'2006-02-15 21:30:53'),(1311,'2005-06-15 10:11:59',3114,326,'2005-06-17 08:44:59',2,'2006-02-15 21:30:53'),(1312,'2005-06-15 10:16:27',3608,313,'2005-06-20 06:53:27',1,'2006-02-15 21:30:53'),(1313,'2005-06-15 10:18:34',1657,448,'2005-06-23 06:25:34',1,'2006-02-15 21:30:53'),(1314,'2005-06-15 10:21:45',1359,538,'2005-06-21 14:10:45',1,'2006-02-15 21:30:53'),(1315,'2005-06-15 10:23:08',3844,405,'2005-06-21 15:06:08',1,'2006-02-15 21:30:53'),(1316,'2005-06-15 10:26:23',3891,138,'2005-06-21 09:25:23',2,'2006-02-15 21:30:53'),(1317,'2005-06-15 10:30:19',3696,316,'2005-06-24 08:18:19',1,'2006-02-15 21:30:53'),(1318,'2005-06-15 10:34:26',2760,341,'2005-06-20 16:20:26',1,'2006-02-15 21:30:53'),(1319,'2005-06-15 10:39:05',4296,190,'2005-06-18 05:25:05',1,'2006-02-15 21:30:53'),(1320,'2005-06-15 10:42:13',4484,84,'2005-06-17 13:44:13',1,'2006-02-15 21:30:53'),(1321,'2005-06-15 10:49:17',3516,204,'2005-06-16 15:30:17',1,'2006-02-15 21:30:53'),(1322,'2005-06-15 10:55:09',2076,217,'2005-06-18 15:14:09',2,'2006-02-15 21:30:53'),(1323,'2005-06-15 10:55:17',3273,187,'2005-06-24 09:51:17',1,'2006-02-15 21:30:53'),(1324,'2005-06-15 11:02:45',764,394,'2005-06-17 07:14:45',1,'2006-02-15 21:30:53'),(1325,'2005-06-15 11:03:24',52,193,'2005-06-20 10:54:24',1,'2006-02-15 21:30:53'),(1326,'2005-06-15 11:07:39',59,548,'2005-06-22 05:55:39',2,'2006-02-15 21:30:53'),(1327,'2005-06-15 11:11:39',403,539,'2005-06-22 10:45:39',1,'2006-02-15 21:30:53'),(1328,'2005-06-15 11:23:27',3665,295,'2005-06-19 12:42:27',2,'2006-02-15 21:30:53'),(1329,'2005-06-15 11:25:06',1154,359,'2005-06-17 16:10:06',2,'2006-02-15 21:30:53'),(1330,'2005-06-15 11:29:17',1219,587,'2005-06-24 13:36:17',2,'2006-02-15 21:30:53'),(1331,'2005-06-15 11:34:33',3089,277,'2005-06-21 09:46:33',1,'2006-02-15 21:30:53'),(1332,'2005-06-15 11:36:01',1412,116,'2005-06-17 14:29:01',1,'2006-02-15 21:30:53'),(1333,'2005-06-15 11:37:08',448,310,'2005-06-16 10:13:08',2,'2006-02-15 21:30:53'),(1334,'2005-06-15 11:43:09',1242,269,'2005-06-20 15:45:09',2,'2006-02-15 21:30:53'),(1335,'2005-06-15 11:51:30',1713,64,'2005-06-16 16:42:30',2,'2006-02-15 21:30:53'),(1336,'2005-06-15 12:01:34',1696,290,'2005-06-23 12:05:34',1,'2006-02-15 21:30:53'),(1337,'2005-06-15 12:12:42',4014,465,'2005-06-20 12:38:42',2,'2006-02-15 21:30:53'),(1338,'2005-06-15 12:17:34',1206,25,'2005-06-19 07:40:34',2,'2006-02-15 21:30:53'),(1339,'2005-06-15 12:21:56',424,162,'2005-06-19 07:46:56',1,'2006-02-15 21:30:53'),(1340,'2005-06-15 12:24:15',251,100,'2005-06-22 13:02:15',1,'2006-02-15 21:30:53'),(1341,'2005-06-15 12:26:18',3363,344,'2005-06-21 07:26:18',2,'2006-02-15 21:30:53'),(1342,'2005-06-15 12:26:21',4429,427,'2005-06-22 11:23:21',1,'2006-02-15 21:30:53'),(1343,'2005-06-15 12:27:19',2393,416,'2005-06-21 16:57:19',1,'2006-02-15 21:30:53'),(1344,'2005-06-15 12:29:41',1625,585,'2005-06-22 12:45:41',2,'2006-02-15 21:30:53'),(1345,'2005-06-15 12:32:13',1041,270,'2005-06-24 14:02:13',1,'2006-02-15 21:30:53'),(1346,'2005-06-15 12:39:52',4540,585,'2005-06-24 17:43:52',1,'2006-02-15 21:30:53'),(1347,'2005-06-15 12:43:43',374,190,'2005-06-16 09:55:43',1,'2006-02-15 21:30:53'),(1348,'2005-06-15 12:45:30',2078,196,'2005-06-17 17:12:30',1,'2006-02-15 21:30:53'),(1349,'2005-06-15 12:49:02',1131,267,'2005-06-17 15:20:02',1,'2006-02-15 21:30:53'),(1350,'2005-06-15 12:50:25',4261,316,'2005-06-23 11:35:25',1,'2006-02-15 21:30:53'),(1351,'2005-06-15 12:51:03',2364,484,'2005-06-22 07:23:03',1,'2006-02-15 21:30:53'),(1352,'2005-06-15 12:58:27',4352,276,'2005-06-18 10:57:27',1,'2006-02-15 21:30:53'),(1353,'2005-06-15 13:13:36',2711,480,'2005-06-21 08:46:36',2,'2006-02-15 21:30:53'),(1354,'2005-06-15 13:13:49',1294,83,'2005-06-23 13:08:49',2,'2006-02-15 21:30:53'),(1355,'2005-06-15 13:13:59',4203,499,'2005-06-20 12:23:59',1,'2006-02-15 21:30:53'),(1356,'2005-06-15 13:17:01',1318,212,'2005-06-19 16:22:01',1,'2006-02-15 21:30:53'),(1357,'2005-06-15 13:26:23',2285,205,'2005-06-23 14:12:23',1,'2006-02-15 21:30:53'),(1358,'2005-06-15 13:28:48',2025,442,'2005-06-21 13:40:48',1,'2006-02-15 21:30:53'),(1359,'2005-06-15 13:30:30',3140,353,'2005-06-17 14:55:30',1,'2006-02-15 21:30:53'),(1360,'2005-06-15 13:32:15',4107,14,'2005-06-18 10:59:15',2,'2006-02-15 21:30:53'),(1361,'2005-06-15 13:37:38',4338,115,'2005-06-19 17:08:38',1,'2006-02-15 21:30:53'),(1362,'2005-06-15 13:53:32',4524,98,'2005-06-19 16:05:32',1,'2006-02-15 21:30:53'),(1363,'2005-06-15 14:05:11',771,197,'2005-06-17 19:53:11',2,'2006-02-15 21:30:53'),(1364,'2005-06-15 14:05:32',115,400,'2005-06-16 15:31:32',1,'2006-02-15 21:30:53'),(1365,'2005-06-15 14:09:55',3813,25,'2005-06-19 18:11:55',2,'2006-02-15 21:30:53'),(1366,'2005-06-15 14:21:00',4238,576,'2005-06-24 17:36:00',1,'2006-02-15 21:30:53'),(1367,'2005-06-15 14:25:17',1505,94,'2005-06-21 19:15:17',1,'2006-02-15 21:30:53'),(1368,'2005-06-15 14:27:47',2020,222,'2005-06-23 18:07:47',2,'2006-02-15 21:30:53'),(1369,'2005-06-15 14:29:14',679,221,'2005-06-16 13:01:14',1,'2006-02-15 21:30:53'),(1370,'2005-06-15 14:31:05',644,396,'2005-06-22 19:23:05',2,'2006-02-15 21:30:53'),(1371,'2005-06-15 14:38:15',760,491,'2005-06-23 15:36:15',1,'2006-02-15 21:30:53'),(1372,'2005-06-15 14:45:48',3740,108,'2005-06-17 18:02:48',2,'2006-02-15 21:30:53'),(1373,'2005-06-15 14:48:04',284,51,'2005-06-22 09:48:04',1,'2006-02-15 21:30:53'),(1374,'2005-06-15 14:49:54',3353,120,'2005-06-22 12:30:54',1,'2006-02-15 21:30:53'),(1375,'2005-06-15 14:54:56',3555,500,'2005-06-21 14:48:56',2,'2006-02-15 21:30:53'),(1376,'2005-06-15 14:59:06',4271,215,'2005-06-19 17:34:06',1,'2006-02-15 21:30:53'),(1377,'2005-06-15 15:02:03',3410,245,'2005-06-22 14:54:03',2,'2006-02-15 21:30:53'),(1378,'2005-06-15 15:03:15',4372,253,'2005-06-19 16:50:15',1,'2006-02-15 21:30:53'),(1379,'2005-06-15 15:05:10',810,212,'2005-06-18 12:11:10',1,'2006-02-15 21:30:53'),(1380,'2005-06-15 15:13:10',3376,158,'2005-06-18 12:42:10',2,'2006-02-15 21:30:53'),(1381,'2005-06-15 15:17:21',3262,300,'2005-06-20 17:07:21',2,'2006-02-15 21:30:53'),(1382,'2005-06-15 15:18:08',3133,455,'2005-06-22 09:22:08',2,'2006-02-15 21:30:53'),(1383,'2005-06-15 15:20:06',1281,379,'2005-06-24 18:42:06',2,'2006-02-15 21:30:53'),(1384,'2005-06-15 15:22:03',4242,242,'2005-06-18 18:11:03',1,'2006-02-15 21:30:53'),(1385,'2005-06-15 15:28:23',4073,396,'2005-06-18 18:37:23',1,'2006-02-15 21:30:53'),(1386,'2005-06-15 15:38:58',1296,322,'2005-06-20 16:28:58',2,'2006-02-15 21:30:53'),(1387,'2005-06-15 15:40:56',515,278,'2005-06-17 10:39:56',1,'2006-02-15 21:30:53'),(1388,'2005-06-15 15:48:41',3987,500,'2005-06-22 17:51:41',1,'2006-02-15 21:30:53'),(1389,'2005-06-15 15:49:01',965,472,'2005-06-19 11:08:01',2,'2006-02-15 21:30:53'),(1390,'2005-06-15 16:06:29',4502,254,'2005-06-19 13:11:29',1,'2006-02-15 21:30:53'),(1391,'2005-06-15 16:11:21',4213,273,'2005-06-22 21:32:21',1,'2006-02-15 21:30:53'),(1392,'2005-06-15 16:12:27',363,460,'2005-06-16 17:30:27',2,'2006-02-15 21:30:53'),(1393,'2005-06-15 16:12:50',2767,177,'2005-06-19 10:40:50',2,'2006-02-15 21:30:53'),(1394,'2005-06-15 16:17:21',2802,268,'2005-06-21 20:44:21',2,'2006-02-15 21:30:53'),(1395,'2005-06-15 16:21:04',753,252,'2005-06-23 12:52:04',2,'2006-02-15 21:30:53'),(1396,'2005-06-15 16:22:38',1007,103,'2005-06-17 15:53:38',2,'2006-02-15 21:30:53'),(1397,'2005-06-15 16:25:26',1830,444,'2005-06-21 20:45:26',1,'2006-02-15 21:30:53'),(1398,'2005-06-15 16:28:42',4402,527,'2005-06-16 12:11:42',1,'2006-02-15 21:30:53'),(1399,'2005-06-15 16:29:51',1435,469,'2005-06-18 14:06:51',1,'2006-02-15 21:30:53'),(1400,'2005-06-15 16:29:56',230,571,'2005-06-21 14:43:56',2,'2006-02-15 21:30:53'),(1401,'2005-06-15 16:30:22',4081,366,'2005-06-21 11:07:22',2,'2006-02-15 21:30:53'),(1402,'2005-06-15 16:31:08',1951,381,'2005-06-24 19:31:08',1,'2006-02-15 21:30:53'),(1403,'2005-06-15 16:31:59',3380,546,'2005-06-22 14:23:59',2,'2006-02-15 21:30:53'),(1404,'2005-06-15 16:38:53',2776,375,'2005-06-16 20:37:53',1,'2006-02-15 21:30:53'),(1405,'2005-06-15 16:41:26',3184,243,'2005-06-21 18:16:26',1,'2006-02-15 21:30:53'),(1406,'2005-06-15 16:44:00',3118,199,'2005-06-21 11:22:00',2,'2006-02-15 21:30:53'),(1407,'2005-06-15 16:45:07',1286,89,'2005-06-23 14:01:07',1,'2006-02-15 21:30:53'),(1408,'2005-06-15 16:57:58',2655,396,'2005-06-22 21:08:58',1,'2006-02-15 21:30:53'),(1409,'2005-06-15 16:58:12',1398,297,'2005-06-21 11:21:12',2,'2006-02-15 21:30:53'),(1410,'2005-06-15 16:59:46',809,356,'2005-06-21 16:38:46',1,'2006-02-15 21:30:53'),(1411,'2005-06-15 17:05:36',2276,520,'2005-06-21 14:05:36',1,'2006-02-15 21:30:53'),(1412,'2005-06-15 17:09:48',4236,166,'2005-06-18 17:05:48',2,'2006-02-15 21:30:53'),(1413,'2005-06-15 17:25:07',3625,96,'2005-06-21 17:17:07',2,'2006-02-15 21:30:53'),(1414,'2005-06-15 17:26:32',4005,304,'2005-06-22 22:30:32',1,'2006-02-15 21:30:53'),(1415,'2005-06-15 17:31:57',1885,331,'2005-06-16 22:22:57',2,'2006-02-15 21:30:53'),(1416,'2005-06-15 17:44:57',3816,167,'2005-06-22 20:53:57',2,'2006-02-15 21:30:53'),(1417,'2005-06-15 17:45:51',1334,570,'2005-06-19 14:00:51',2,'2006-02-15 21:30:53'),(1418,'2005-06-15 17:51:27',2974,591,'2005-06-18 23:20:27',2,'2006-02-15 21:30:53'),(1419,'2005-06-15 17:54:50',1208,312,'2005-06-17 19:44:50',2,'2006-02-15 21:30:53'),(1420,'2005-06-15 17:56:14',4149,255,'2005-06-24 15:45:14',2,'2006-02-15 21:30:53'),(1421,'2005-06-15 17:57:04',2439,533,'2005-06-21 20:38:04',2,'2006-02-15 21:30:53'),(1422,'2005-06-15 18:02:53',1021,1,'2005-06-19 15:54:53',2,'2006-02-15 21:30:53'),(1423,'2005-06-15 18:08:12',1396,592,'2005-06-24 19:13:12',1,'2006-02-15 21:30:53'),(1424,'2005-06-15 18:08:14',887,224,'2005-06-24 23:16:14',2,'2006-02-15 21:30:53'),(1425,'2005-06-15 18:13:46',1308,108,'2005-06-18 22:50:46',2,'2006-02-15 21:30:53'),(1426,'2005-06-15 18:16:24',4412,363,'2005-06-18 22:15:24',2,'2006-02-15 21:30:53'),(1427,'2005-06-15 18:17:28',14,100,'2005-06-16 15:47:28',1,'2006-02-15 21:30:53'),(1428,'2005-06-15 18:19:30',3689,583,'2005-06-22 23:05:30',2,'2006-02-15 21:30:53'),(1429,'2005-06-15 18:24:10',4116,362,'2005-06-18 16:30:10',1,'2006-02-15 21:30:53'),(1430,'2005-06-15 18:24:55',3412,194,'2005-06-16 12:26:55',1,'2006-02-15 21:30:53'),(1431,'2005-06-15 18:26:29',3193,438,'2005-06-21 17:33:29',1,'2006-02-15 21:30:53'),(1432,'2005-06-15 18:27:24',523,339,'2005-06-21 14:03:24',2,'2006-02-15 21:30:53'),(1433,'2005-06-15 18:30:00',2310,88,'2005-06-16 15:14:00',1,'2006-02-15 21:30:53'),(1434,'2005-06-15 18:30:46',4228,544,'2005-06-24 17:51:46',1,'2006-02-15 21:30:53'),(1435,'2005-06-15 18:32:30',2769,510,'2005-06-24 12:44:30',2,'2006-02-15 21:30:53'),(1436,'2005-06-15 18:35:40',924,584,'2005-06-21 15:04:40',1,'2006-02-15 21:30:53'),(1437,'2005-06-15 18:37:04',3263,96,'2005-06-20 12:56:04',1,'2006-02-15 21:30:53'),(1438,'2005-06-15 18:38:51',1816,82,'2005-06-17 23:50:51',1,'2006-02-15 21:30:53'),(1439,'2005-06-15 18:45:32',3155,589,'2005-06-22 15:57:32',2,'2006-02-15 21:30:53'),(1440,'2005-06-15 18:53:14',2921,26,'2005-06-24 15:28:14',1,'2006-02-15 21:30:53'),(1441,'2005-06-15 18:54:21',2095,444,'2005-06-22 22:48:21',2,'2006-02-15 21:30:53'),(1442,'2005-06-15 18:55:34',3912,122,'2005-06-22 20:41:34',2,'2006-02-15 21:30:53'),(1443,'2005-06-15 18:57:51',2485,435,'2005-06-18 14:18:51',2,'2006-02-15 21:30:53'),(1444,'2005-06-15 19:08:16',1303,539,'2005-06-24 15:20:16',2,'2006-02-15 21:30:53'),(1445,'2005-06-15 19:10:07',3189,537,'2005-06-19 20:27:07',2,'2006-02-15 21:30:53'),(1446,'2005-06-15 19:13:45',1989,506,'2005-06-23 19:43:45',2,'2006-02-15 21:30:53'),(1447,'2005-06-15 19:13:51',984,471,'2005-06-21 22:56:51',1,'2006-02-15 21:30:53'),(1448,'2005-06-15 19:17:16',2781,246,'2005-06-23 21:56:16',2,'2006-02-15 21:30:53'),(1449,'2005-06-15 19:19:16',1525,471,'2005-06-18 15:24:16',2,'2006-02-15 21:30:53'),(1450,'2005-06-15 19:22:08',4132,268,'2005-06-16 17:53:08',2,'2006-02-15 21:30:53'),(1451,'2005-06-15 19:30:18',3560,18,'2005-06-19 19:22:18',2,'2006-02-15 21:30:53'),(1452,'2005-06-15 19:32:52',4348,243,'2005-06-16 13:45:52',1,'2006-02-15 21:30:53'),(1453,'2005-06-15 19:36:39',3274,457,'2005-06-19 00:16:39',2,'2006-02-15 21:30:53'),(1454,'2005-06-15 19:49:41',102,298,'2005-06-17 15:17:41',2,'2006-02-15 21:30:53'),(1455,'2005-06-15 19:51:06',2194,358,'2005-06-18 21:54:06',2,'2006-02-15 21:30:53'),(1456,'2005-06-15 20:00:11',632,590,'2005-06-23 18:03:11',2,'2006-02-15 21:30:53'),(1457,'2005-06-15 20:05:49',730,345,'2005-06-19 15:35:49',1,'2006-02-15 21:30:53'),(1458,'2005-06-15 20:24:05',3546,178,'2005-06-21 01:22:05',1,'2006-02-15 21:30:53'),(1459,'2005-06-15 20:25:53',1862,218,'2005-06-22 23:34:53',2,'2006-02-15 21:30:53'),(1460,'2005-06-15 20:27:02',1405,565,'2005-06-16 16:21:02',1,'2006-02-15 21:30:53'),(1461,'2005-06-15 20:32:08',4479,216,'2005-06-23 01:08:08',1,'2006-02-15 21:30:53'),(1462,'2005-06-15 20:37:40',653,187,'2005-06-18 19:36:40',2,'2006-02-15 21:30:53'),(1463,'2005-06-15 20:37:51',2984,569,'2005-06-21 16:46:51',2,'2006-02-15 21:30:53'),(1464,'2005-06-15 20:38:14',4113,387,'2005-06-17 14:52:14',2,'2006-02-15 21:30:53'),(1465,'2005-06-15 20:43:08',609,387,'2005-06-18 23:00:08',1,'2006-02-15 21:30:53'),(1466,'2005-06-15 20:46:04',1057,288,'2005-06-24 22:46:04',1,'2006-02-15 21:30:53'),(1467,'2005-06-15 20:47:10',688,506,'2005-06-22 00:30:10',1,'2006-02-15 21:30:53'),(1468,'2005-06-15 20:48:22',228,230,'2005-06-21 19:48:22',1,'2006-02-15 21:30:53'),(1469,'2005-06-15 20:52:36',2451,580,'2005-06-21 19:55:36',1,'2006-02-15 21:30:53'),(1470,'2005-06-15 20:53:07',4044,11,'2005-06-25 02:12:07',1,'2006-02-15 21:30:53'),(1471,'2005-06-15 20:53:26',565,428,'2005-06-24 18:25:26',2,'2006-02-15 21:30:53'),(1472,'2005-06-15 20:54:55',4233,373,'2005-06-24 21:52:55',2,'2006-02-15 21:30:53'),(1473,'2005-06-15 20:55:20',2377,249,'2005-06-21 16:40:20',2,'2006-02-15 21:30:53'),(1474,'2005-06-15 20:55:42',164,202,'2005-06-19 02:41:42',2,'2006-02-15 21:30:53'),(1475,'2005-06-15 21:08:01',1834,344,'2005-06-18 22:33:01',2,'2006-02-15 21:30:53'),(1476,'2005-06-15 21:08:46',1407,1,'2005-06-25 02:26:46',1,'2006-02-15 21:30:53'),(1477,'2005-06-15 21:11:18',418,51,'2005-06-19 02:05:18',1,'2006-02-15 21:30:53'),(1478,'2005-06-15 21:12:13',435,336,'2005-06-18 21:43:13',2,'2006-02-15 21:30:53'),(1479,'2005-06-15 21:13:38',172,592,'2005-06-17 01:26:38',2,'2006-02-15 21:30:53'),(1480,'2005-06-15 21:17:17',2598,27,'2005-06-23 22:01:17',1,'2006-02-15 21:30:53'),(1481,'2005-06-15 21:17:58',3041,125,'2005-06-18 17:53:58',2,'2006-02-15 21:30:53'),(1482,'2005-06-15 21:18:16',3980,60,'2005-06-16 17:07:16',1,'2006-02-15 21:30:53'),(1483,'2005-06-15 21:21:58',1926,242,'2005-06-24 00:44:58',2,'2006-02-15 21:30:53'),(1484,'2005-06-15 21:22:35',1589,320,'2005-06-20 02:27:35',2,'2006-02-15 21:30:53'),(1485,'2005-06-15 21:24:10',194,281,'2005-06-24 23:03:10',1,'2006-02-15 21:30:53'),(1486,'2005-06-15 21:25:30',847,62,'2005-06-16 16:36:30',1,'2006-02-15 21:30:53'),(1487,'2005-06-15 21:27:42',3791,76,'2005-06-22 03:09:42',2,'2006-02-15 21:30:53'),(1488,'2005-06-15 21:39:54',1081,355,'2005-06-16 20:33:54',1,'2006-02-15 21:30:53'),(1489,'2005-06-15 21:41:38',699,213,'2005-06-22 17:00:38',1,'2006-02-15 21:30:53'),(1490,'2005-06-15 21:42:17',3515,123,'2005-06-22 02:01:17',2,'2006-02-15 21:30:53'),(1491,'2005-06-15 21:48:18',848,354,'2005-06-20 16:40:18',1,'2006-02-15 21:30:53'),(1492,'2005-06-15 21:48:35',4148,360,'2005-06-17 17:18:35',1,'2006-02-15 21:30:53'),(1493,'2005-06-15 21:50:32',4581,235,'2005-06-17 01:02:32',2,'2006-02-15 21:30:53'),(1494,'2005-06-15 21:54:20',244,575,'2005-06-19 18:46:20',1,'2006-02-15 21:30:53'),(1495,'2005-06-15 21:54:31',1842,175,'2005-06-19 00:08:31',2,'2006-02-15 21:30:53'),(1496,'2005-06-15 21:55:58',3915,290,'2005-06-17 02:28:58',2,'2006-02-15 21:30:53'),(1497,'2005-06-15 21:56:39',2958,44,'2005-06-20 20:32:39',1,'2006-02-15 21:30:53'),(1498,'2005-06-15 21:58:00',3690,352,'2005-06-17 21:50:00',1,'2006-02-15 21:30:53'),(1499,'2005-06-15 21:58:07',165,375,'2005-06-22 19:37:07',2,'2006-02-15 21:30:53'),(1500,'2005-06-15 22:00:45',2652,237,'2005-06-18 16:19:45',2,'2006-02-15 21:30:53'),(1501,'2005-06-15 22:02:35',1780,148,'2005-06-23 18:59:35',1,'2006-02-15 21:30:53'),(1502,'2005-06-15 22:03:14',3277,5,'2005-06-23 18:42:14',2,'2006-02-15 21:30:53'),(1503,'2005-06-15 22:07:09',763,197,'2005-06-20 23:15:09',1,'2006-02-15 21:30:53'),(1504,'2005-06-15 22:08:06',3621,423,'2005-06-24 01:16:06',2,'2006-02-15 21:30:53'),(1505,'2005-06-15 22:12:50',2961,561,'2005-06-17 21:37:50',2,'2006-02-15 21:30:53'),(1506,'2005-06-15 22:19:37',4085,404,'2005-06-22 18:28:37',1,'2006-02-15 21:30:53'),(1507,'2005-06-15 22:25:26',2514,172,'2005-06-19 17:00:26',1,'2006-02-15 21:30:53'),(1508,'2005-06-15 22:33:24',1141,511,'2005-06-18 02:27:24',2,'2006-02-15 21:30:53'),(1509,'2005-06-15 22:35:53',655,167,'2005-06-23 17:09:53',2,'2006-02-15 21:30:53'),(1510,'2005-06-15 22:39:34',989,338,'2005-06-24 19:21:34',2,'2006-02-15 21:30:53'),(1511,'2005-06-15 22:45:06',1135,330,'2005-06-22 22:48:06',1,'2006-02-15 21:30:53'),(1512,'2005-06-15 22:53:03',1628,452,'2005-06-23 18:56:03',1,'2006-02-15 21:30:53'),(1513,'2005-06-15 22:53:30',1173,368,'2005-06-23 01:00:30',1,'2006-02-15 21:30:53'),(1514,'2005-06-15 22:57:34',2937,410,'2005-06-19 20:27:34',1,'2006-02-15 21:30:53'),(1515,'2005-06-15 23:07:50',3244,115,'2005-06-20 02:33:50',2,'2006-02-15 21:30:53'),(1516,'2005-06-15 23:11:10',3702,530,'2005-06-17 20:37:10',1,'2006-02-15 21:30:53'),(1517,'2005-06-15 23:20:26',3728,148,'2005-06-23 23:23:26',1,'2006-02-15 21:30:53'),(1518,'2005-06-15 23:36:37',4537,237,'2005-06-16 18:24:37',2,'2006-02-15 21:30:53'),(1519,'2005-06-15 23:55:27',1553,155,'2005-06-21 04:06:27',2,'2006-02-15 21:30:53'),(1520,'2005-06-15 23:57:20',3419,341,'2005-06-24 23:46:20',1,'2006-02-15 21:30:53'),(1521,'2005-06-15 23:58:53',4299,149,'2005-06-18 03:10:53',1,'2006-02-15 21:30:53'),(1522,'2005-06-16 00:17:39',235,133,'2005-06-22 05:38:39',1,'2006-02-15 21:30:53'),(1523,'2005-06-16 00:18:40',681,349,'2005-06-17 02:50:40',2,'2006-02-15 21:30:53'),(1524,'2005-06-16 00:25:52',3439,177,'2005-06-19 03:32:52',1,'2006-02-15 21:30:53'),(1525,'2005-06-16 00:26:07',1467,304,'2005-06-19 22:37:07',2,'2006-02-15 21:30:53'),(1526,'2005-06-16 00:27:51',1940,499,'2005-06-19 00:19:51',1,'2006-02-15 21:30:53'),(1527,'2005-06-16 00:31:40',296,188,'2005-06-21 05:20:40',1,'2006-02-15 21:30:53'),(1528,'2005-06-16 00:32:52',4297,110,'2005-06-25 01:07:52',2,'2006-02-15 21:30:53'),(1529,'2005-06-16 00:37:35',1688,362,'2005-06-22 18:58:35',2,'2006-02-15 21:30:53'),(1530,'2005-06-16 00:38:07',2421,392,'2005-06-24 02:45:07',2,'2006-02-15 21:30:53'),(1531,'2005-06-16 00:40:34',1388,515,'2005-06-22 02:44:34',1,'2006-02-15 21:30:53'),(1532,'2005-06-16 00:41:31',3793,290,'2005-06-20 21:36:31',1,'2006-02-15 21:30:53'),(1533,'2005-06-16 00:46:02',2452,116,'2005-06-17 20:11:02',1,'2006-02-15 21:30:53'),(1534,'2005-06-16 00:49:32',3124,42,'2005-06-18 02:41:32',1,'2006-02-15 21:30:53'),(1535,'2005-06-16 00:52:04',1096,202,'2005-06-20 22:47:04',2,'2006-02-15 21:30:53'),(1536,'2005-06-16 00:52:22',3248,339,'2005-06-17 21:43:22',1,'2006-02-15 21:30:53'),(1537,'2005-06-16 00:52:51',4577,594,'2005-06-20 19:33:51',2,'2006-02-15 21:30:53'),(1538,'2005-06-16 01:05:50',708,430,'2005-06-18 19:48:50',1,'2006-02-15 21:30:53'),(1539,'2005-06-16 01:11:25',267,390,'2005-06-23 03:43:25',2,'2006-02-15 21:30:53'),(1540,'2005-06-16 01:14:56',2707,586,'2005-06-20 23:31:56',2,'2006-02-15 21:30:53'),(1541,'2005-06-16 01:15:59',1911,189,'2005-06-22 21:26:59',2,'2006-02-15 21:30:53'),(1542,'2005-06-16 01:20:05',1714,182,'2005-06-22 03:59:05',1,'2006-02-15 21:30:53'),(1543,'2005-06-16 01:24:08',1188,28,'2005-06-18 06:24:08',2,'2006-02-15 21:30:53'),(1544,'2005-06-16 01:28:22',269,43,'2005-06-17 06:57:22',2,'2006-02-15 21:30:53'),(1545,'2005-06-16 01:31:23',762,563,'2005-06-24 05:50:23',1,'2006-02-15 21:30:53'),(1546,'2005-06-16 01:34:05',3913,3,'2005-06-24 04:27:05',1,'2006-02-15 21:30:53'),(1547,'2005-06-16 01:42:24',2909,343,'2005-06-19 01:13:24',1,'2006-02-15 21:30:53'),(1548,'2005-06-16 01:43:33',2094,374,'2005-06-23 22:04:33',2,'2006-02-15 21:30:53'),(1549,'2005-06-16 01:57:15',266,69,'2005-06-18 23:30:15',1,'2006-02-15 21:30:53'),(1550,'2005-06-16 01:58:35',2003,345,'2005-06-18 23:56:35',1,'2006-02-15 21:30:53'),(1551,'2005-06-16 02:01:15',4088,268,'2005-06-22 07:33:15',1,'2006-02-15 21:30:53'),(1552,'2005-06-16 02:01:37',819,518,'2005-06-21 00:59:37',2,'2006-02-15 21:30:53'),(1553,'2005-06-16 02:02:44',4026,416,'2005-06-19 07:50:44',1,'2006-02-15 21:30:53'),(1554,'2005-06-16 02:16:47',715,155,'2005-06-22 05:15:47',1,'2006-02-15 21:30:53'),(1555,'2005-06-16 02:17:07',4168,256,'2005-06-22 06:28:07',1,'2006-02-15 21:30:53'),(1556,'2005-06-16 02:19:02',533,54,'2005-06-17 22:36:02',2,'2006-02-15 21:30:53'),(1557,'2005-06-16 02:28:35',2617,439,'2005-06-16 22:11:35',2,'2006-02-15 21:30:53'),(1558,'2005-06-16 02:33:53',4350,20,'2005-06-19 20:50:53',2,'2006-02-15 21:30:53'),(1559,'2005-06-16 02:35:03',716,574,'2005-06-19 21:22:03',1,'2006-02-15 21:30:53'),(1560,'2005-06-16 02:36:43',3418,239,'2005-06-24 23:10:43',2,'2006-02-15 21:30:53'),(1561,'2005-06-16 02:41:30',2263,431,'2005-06-22 05:19:30',1,'2006-02-15 21:30:53'),(1562,'2005-06-16 02:46:27',595,395,'2005-06-23 00:56:27',2,'2006-02-15 21:30:53'),(1563,'2005-06-16 02:46:28',1516,262,'2005-06-18 02:37:28',1,'2006-02-15 21:30:53'),(1564,'2005-06-16 02:47:07',145,343,'2005-06-24 03:12:07',1,'2006-02-15 21:30:53'),(1565,'2005-06-16 03:13:09',3833,506,'2005-06-16 22:42:09',2,'2006-02-15 21:30:53'),(1566,'2005-06-16 03:13:20',3215,174,'2005-06-24 01:59:20',2,'2006-02-15 21:30:53'),(1567,'2005-06-16 03:13:30',3098,320,'2005-06-21 23:56:30',1,'2006-02-15 21:30:53'),(1568,'2005-06-16 03:14:01',635,178,'2005-06-19 21:17:01',2,'2006-02-15 21:30:53'),(1569,'2005-06-16 03:19:09',3927,363,'2005-06-18 21:55:09',2,'2006-02-15 21:30:53'),(1570,'2005-06-16 03:21:33',3711,82,'2005-06-22 22:03:33',2,'2006-02-15 21:30:53'),(1571,'2005-06-16 03:22:00',1019,54,'2005-06-22 23:27:00',1,'2006-02-15 21:30:53'),(1572,'2005-06-16 03:23:22',4179,560,'2005-06-20 06:03:22',2,'2006-02-15 21:30:53'),(1573,'2005-06-16 03:31:39',4536,371,'2005-06-25 04:04:39',1,'2006-02-15 21:30:53'),(1574,'2005-06-16 03:39:56',161,305,'2005-06-22 05:40:56',2,'2006-02-15 21:30:53'),(1575,'2005-06-16 03:41:38',3317,6,'2005-06-22 03:01:38',2,'2006-02-15 21:30:53'),(1576,'2005-06-16 03:54:39',1014,442,'2005-06-24 21:55:39',2,'2006-02-15 21:30:53'),(1577,'2005-06-16 04:03:28',367,327,'2005-06-24 22:40:28',2,'2006-02-15 21:30:53'),(1578,'2005-06-16 04:08:16',3397,365,'2005-06-23 07:57:16',1,'2006-02-15 21:30:53'),(1579,'2005-06-16 04:09:08',158,35,'2005-06-21 05:21:08',2,'2006-02-15 21:30:53'),(1580,'2005-06-16 04:12:25',2479,87,'2005-06-20 06:53:25',1,'2006-02-15 21:30:53'),(1581,'2005-06-16 04:28:45',4004,109,'2005-06-18 07:07:45',1,'2006-02-15 21:30:53'),(1582,'2005-06-16 04:31:57',163,536,'2005-06-22 01:25:57',1,'2006-02-15 21:30:53'),(1583,'2005-06-16 04:44:23',270,37,'2005-06-18 03:44:23',1,'2006-02-15 21:30:53'),(1584,'2005-06-16 04:50:50',3545,434,'2005-06-21 22:51:50',2,'2006-02-15 21:30:53'),(1585,'2005-06-16 04:51:13',1708,386,'2005-06-24 00:23:13',2,'2006-02-15 21:30:53'),(1586,'2005-06-16 04:51:18',769,140,'2005-06-21 06:54:18',2,'2006-02-15 21:30:53'),(1587,'2005-06-16 04:52:28',1781,62,'2005-06-23 07:36:28',1,'2006-02-15 21:30:53'),(1588,'2005-06-16 04:53:21',4472,322,'2005-06-25 07:29:21',2,'2006-02-15 21:30:53'),(1589,'2005-06-16 04:58:03',4307,293,'2005-06-24 08:36:03',1,'2006-02-15 21:30:53'),(1590,'2005-06-16 05:11:41',3685,98,'2005-06-23 10:11:41',1,'2006-02-15 21:30:53'),(1591,'2005-06-16 05:12:37',1648,83,'2005-06-25 06:28:37',2,'2006-02-15 21:30:53'),(1592,'2005-06-16 05:14:37',3798,187,'2005-06-20 10:52:37',2,'2006-02-15 21:30:53'),(1593,'2005-06-16 05:14:52',766,111,'2005-06-24 08:00:52',2,'2006-02-15 21:30:53'),(1594,'2005-06-16 05:15:12',3858,470,'2005-06-25 00:38:12',1,'2006-02-15 21:30:53'),(1595,'2005-06-16 05:23:46',1481,244,'2005-06-20 00:37:46',1,'2006-02-15 21:30:53'),(1596,'2005-06-16 05:30:58',2552,416,'2005-06-21 04:18:58',2,'2006-02-15 21:30:53'),(1597,'2005-06-16 05:47:03',743,432,'2005-06-18 04:21:03',1,'2006-02-15 21:30:53'),(1598,'2005-06-16 06:02:39',4171,314,'2005-06-23 09:09:39',1,'2006-02-15 21:30:53'),(1599,'2005-06-16 06:03:33',1476,215,'2005-06-21 07:46:33',2,'2006-02-15 21:30:53'),(1600,'2005-06-16 06:04:12',2264,196,'2005-06-19 09:39:12',2,'2006-02-15 21:30:53'),(1601,'2005-06-16 06:11:13',3115,428,'2005-06-21 08:57:13',2,'2006-02-15 21:30:53'),(1602,'2005-06-16 06:12:40',1777,441,'2005-06-19 03:50:40',2,'2006-02-15 21:30:53'),(1603,'2005-06-16 06:14:03',3308,395,'2005-06-17 06:04:03',2,'2006-02-15 21:30:53'),(1604,'2005-06-16 06:14:25',3226,272,'2005-06-17 03:53:25',2,'2006-02-15 21:30:53'),(1605,'2005-06-16 06:17:55',593,197,'2005-06-25 01:25:55',1,'2006-02-15 21:30:53'),(1606,'2005-06-16 06:18:31',4290,253,'2005-06-25 09:15:31',1,'2006-02-15 21:30:53'),(1607,'2005-06-16 06:25:35',3289,513,'2005-06-20 02:50:35',2,'2006-02-15 21:30:53'),(1608,'2005-06-16 06:28:57',2581,386,'2005-06-24 05:20:57',2,'2006-02-15 21:30:53'),(1609,'2005-06-16 06:34:59',2279,174,'2005-06-17 09:41:59',2,'2006-02-15 21:30:53'),(1610,'2005-06-16 06:36:33',3551,534,'2005-06-19 07:12:33',1,'2006-02-15 21:30:53'),(1611,'2005-06-16 06:41:35',1739,393,'2005-06-25 06:13:35',2,'2006-02-15 21:30:53'),(1612,'2005-06-16 06:52:05',3025,355,'2005-06-19 01:51:05',1,'2006-02-15 21:30:53'),(1613,'2005-06-16 06:55:10',4462,573,'2005-06-24 12:08:10',1,'2006-02-15 21:30:53'),(1614,'2005-06-16 06:58:02',23,489,'2005-06-23 11:24:02',1,'2006-02-15 21:30:53'),(1615,'2005-06-16 07:00:28',3894,362,'2005-06-25 08:53:28',1,'2006-02-15 21:30:53'),(1616,'2005-06-16 07:04:52',2296,204,'2005-06-24 04:06:52',1,'2006-02-15 21:30:53'),(1617,'2005-06-16 07:06:06',1382,83,'2005-06-25 03:35:06',1,'2006-02-15 21:30:53'),(1618,'2005-06-16 07:08:38',3741,134,'2005-06-25 05:26:38',2,'2006-02-15 21:30:53'),(1619,'2005-06-16 07:14:13',4258,232,'2005-06-19 05:50:13',2,'2006-02-15 21:30:53'),(1620,'2005-06-16 07:21:30',389,561,'2005-06-17 09:46:30',1,'2006-02-15 21:30:53'),(1621,'2005-06-16 07:24:12',3677,177,'2005-06-19 02:35:12',1,'2006-02-15 21:30:53'),(1622,'2005-06-16 07:33:18',1774,311,'2005-06-21 07:23:18',1,'2006-02-15 21:30:53'),(1623,'2005-06-16 07:48:50',4485,378,'2005-06-17 03:53:50',2,'2006-02-15 21:30:53'),(1624,'2005-06-16 07:48:57',1066,314,'2005-06-17 05:52:57',1,'2006-02-15 21:30:53'),(1625,'2005-06-16 07:49:08',3367,39,'2005-06-24 09:08:08',2,'2006-02-15 21:30:53'),(1626,'2005-06-16 07:49:47',694,260,'2005-06-22 13:32:47',2,'2006-02-15 21:30:53'),(1627,'2005-06-16 07:51:09',4135,468,'2005-06-24 02:24:09',1,'2006-02-15 21:30:53'),(1628,'2005-06-16 07:52:55',868,427,'2005-06-25 11:09:55',1,'2006-02-15 21:30:53'),(1629,'2005-06-16 07:53:47',4375,339,'2005-06-22 13:03:47',1,'2006-02-15 21:30:53'),(1630,'2005-06-16 07:55:01',2413,130,'2005-06-19 06:38:01',1,'2006-02-15 21:30:53'),(1631,'2005-06-16 08:01:02',2466,5,'2005-06-19 09:04:02',1,'2006-02-15 21:30:53'),(1632,'2005-06-16 08:03:42',1518,319,'2005-06-17 03:40:42',1,'2006-02-15 21:30:53'),(1633,'2005-06-16 08:08:40',280,4,'2005-06-17 11:12:40',1,'2006-02-15 21:30:53'),(1634,'2005-06-16 08:16:05',3990,121,'2005-06-17 04:49:05',1,'2006-02-15 21:30:53'),(1635,'2005-06-16 08:26:56',1187,566,'2005-06-25 06:17:56',2,'2006-02-15 21:30:53'),(1636,'2005-06-16 08:28:54',2052,574,'2005-06-24 09:23:54',1,'2006-02-15 21:30:53'),(1637,'2005-06-16 08:29:58',906,212,'2005-06-23 04:55:58',2,'2006-02-15 21:30:53'),(1638,'2005-06-16 08:32:36',1905,181,'2005-06-18 07:11:36',2,'2006-02-15 21:30:53'),(1639,'2005-06-16 08:33:39',176,450,'2005-06-25 07:51:39',1,'2006-02-15 21:30:53'),(1640,'2005-06-16 08:35:39',443,86,'2005-06-17 05:37:39',2,'2006-02-15 21:30:53'),(1641,'2005-06-16 08:46:26',2925,259,'2005-06-24 14:39:26',2,'2006-02-15 21:30:53'),(1642,'2005-06-16 08:54:15',3875,287,'2005-06-18 12:36:15',1,'2006-02-15 21:30:53'),(1643,'2005-06-16 08:55:35',1352,484,'2005-06-21 05:36:35',2,'2006-02-15 21:30:53'),(1644,'2005-06-16 08:58:18',749,596,'2005-06-21 06:47:18',1,'2006-02-15 21:30:53'),(1645,'2005-06-16 09:10:06',4434,234,'2005-06-23 04:36:06',2,'2006-02-15 21:30:53'),(1646,'2005-06-16 09:12:53',4037,131,'2005-06-24 08:03:53',2,'2006-02-15 21:30:53'),(1647,'2005-06-16 09:14:58',1936,454,'2005-06-17 10:46:58',1,'2006-02-15 21:30:53'),(1648,'2005-06-16 09:17:07',457,427,'2005-06-24 06:31:07',2,'2006-02-15 21:30:53'),(1649,'2005-06-16 09:20:33',390,352,'2005-06-18 13:42:33',1,'2006-02-15 21:30:53'),(1650,'2005-06-16 09:23:20',4125,299,'2005-06-23 11:25:20',1,'2006-02-15 21:30:53'),(1651,'2005-06-16 09:24:38',4444,524,'2005-06-17 09:50:38',2,'2006-02-15 21:30:53'),(1652,'2005-06-16 09:31:37',3416,533,'2005-06-19 14:02:37',2,'2006-02-15 21:30:53'),(1653,'2005-06-16 09:34:45',2294,517,'2005-06-18 09:13:45',1,'2006-02-15 21:30:53'),(1654,'2005-06-16 09:42:48',1039,348,'2005-06-20 14:28:48',2,'2006-02-15 21:30:53'),(1655,'2005-06-16 09:51:39',3693,488,'2005-06-23 14:53:39',2,'2006-02-15 21:30:53'),(1656,'2005-06-16 10:05:40',2253,31,'2005-06-22 06:26:40',1,'2006-02-15 21:30:53'),(1657,'2005-06-16 10:06:49',953,209,'2005-06-22 10:34:49',2,'2006-02-15 21:30:53'),(1658,'2005-06-16 10:07:10',272,568,'2005-06-21 09:23:10',2,'2006-02-15 21:30:53'),(1659,'2005-06-16 10:11:46',1182,296,'2005-06-20 13:51:46',1,'2006-02-15 21:30:53'),(1660,'2005-06-16 10:12:55',2374,238,'2005-06-18 05:56:55',2,'2006-02-15 21:30:53'),(1661,'2005-06-16 10:12:57',2403,508,'2005-06-24 09:23:57',2,'2006-02-15 21:30:53'),(1662,'2005-06-16 10:13:35',3552,378,'2005-06-23 13:54:35',1,'2006-02-15 21:30:53'),(1663,'2005-06-16 10:14:15',1558,186,'2005-06-23 08:34:15',2,'2006-02-15 21:30:53'),(1664,'2005-06-16 10:15:20',2464,216,'2005-06-18 12:11:20',2,'2006-02-15 21:30:53'),(1665,'2005-06-16 10:16:02',2613,490,'2005-06-23 09:32:02',1,'2006-02-15 21:30:53'),(1666,'2005-06-16 10:17:19',4019,557,'2005-06-21 05:50:19',1,'2006-02-15 21:30:53'),(1667,'2005-06-16 10:18:59',2362,333,'2005-06-22 14:45:59',2,'2006-02-15 21:30:53'),(1668,'2005-06-16 10:19:52',2483,569,'2005-06-23 12:22:52',2,'2006-02-15 21:30:53'),(1669,'2005-06-16 10:20:20',360,73,'2005-06-18 04:26:20',1,'2006-02-15 21:30:53'),(1670,'2005-06-16 10:26:33',2066,328,'2005-06-19 07:15:33',1,'2006-02-15 21:30:53'),(1671,'2005-06-16 10:30:22',3805,135,'2005-06-22 11:08:22',2,'2006-02-15 21:30:53'),(1672,'2005-06-16 10:37:34',4206,216,'2005-06-23 05:30:34',1,'2006-02-15 21:30:53'),(1673,'2005-06-16 10:40:17',907,534,'2005-06-18 16:13:17',1,'2006-02-15 21:30:53'),(1674,'2005-06-16 10:57:00',3606,234,'2005-06-18 07:31:00',2,'2006-02-15 21:30:53'),(1675,'2005-06-16 11:04:47',3048,371,'2005-06-24 06:56:47',2,'2006-02-15 21:30:53'),(1676,'2005-06-16 11:06:09',931,171,'2005-06-21 05:17:09',1,'2006-02-15 21:30:53'),(1677,'2005-06-16 11:07:11',240,191,'2005-06-23 10:50:11',1,'2006-02-15 21:30:53'),(1678,'2005-06-16 11:08:28',1856,352,'2005-06-19 15:44:28',1,'2006-02-15 21:30:53'),(1679,'2005-06-16 11:11:01',3959,227,'2005-06-23 08:11:01',1,'2006-02-15 21:30:53'),(1680,'2005-06-16 11:17:22',4441,469,'2005-06-25 15:55:22',2,'2006-02-15 21:30:53'),(1681,'2005-06-16 11:38:17',530,255,'2005-06-19 13:05:17',1,'2006-02-15 21:30:53'),(1682,'2005-06-16 11:54:25',2165,476,'2005-06-22 11:09:25',2,'2006-02-15 21:30:53'),(1683,'2005-06-16 11:54:55',2361,494,'2005-06-18 08:51:55',2,'2006-02-15 21:30:53'),(1684,'2005-06-16 11:57:34',806,485,'2005-06-19 09:12:34',1,'2006-02-15 21:30:53'),(1685,'2005-06-16 12:06:57',2754,85,'2005-06-21 16:53:57',2,'2006-02-15 21:30:53'),(1686,'2005-06-16 12:08:20',3883,529,'2005-06-20 10:59:20',1,'2006-02-15 21:30:53'),(1687,'2005-06-16 12:09:20',3686,140,'2005-06-18 06:18:20',2,'2006-02-15 21:30:53'),(1688,'2005-06-16 12:11:20',383,49,'2005-06-18 08:39:20',2,'2006-02-15 21:30:53'),(1689,'2005-06-16 12:18:41',4036,48,'2005-06-24 13:33:41',2,'2006-02-15 21:30:53'),(1690,'2005-06-16 12:24:18',1099,286,'2005-06-25 15:00:18',1,'2006-02-15 21:30:53'),(1691,'2005-06-16 12:24:28',4438,492,'2005-06-24 08:24:28',1,'2006-02-15 21:30:53'),(1692,'2005-06-16 12:30:19',3544,514,'2005-06-17 17:31:19',2,'2006-02-15 21:30:53'),(1693,'2005-06-16 12:39:51',2386,421,'2005-06-19 16:19:51',2,'2006-02-15 21:30:53'),(1694,'2005-06-16 12:40:23',147,532,'2005-06-20 09:18:23',2,'2006-02-15 21:30:53'),(1695,'2005-06-16 12:40:28',4436,159,'2005-06-22 13:41:28',1,'2006-02-15 21:30:53'),(1696,'2005-06-16 12:50:01',3928,502,'2005-06-24 12:08:01',2,'2006-02-15 21:30:53'),(1697,'2005-06-16 12:55:20',1801,340,'2005-06-23 17:41:20',2,'2006-02-15 21:30:53'),(1698,'2005-06-16 13:04:42',1474,407,'2005-06-21 15:54:42',1,'2006-02-15 21:30:53'),(1699,'2005-06-16 13:05:09',4507,27,'2005-06-17 09:53:09',2,'2006-02-15 21:30:53'),(1700,'2005-06-16 13:18:23',4251,456,'2005-06-21 16:46:23',2,'2006-02-15 21:30:53'),(1701,'2005-06-16 13:18:48',3000,315,'2005-06-22 15:00:48',1,'2006-02-15 21:30:53'),(1702,'2005-06-16 13:21:05',1822,242,'2005-06-19 10:13:05',2,'2006-02-15 21:30:53'),(1703,'2005-06-16 13:28:44',2346,589,'2005-06-17 11:03:44',1,'2006-02-15 21:30:53'),(1704,'2005-06-16 13:45:56',4425,488,'2005-06-24 18:12:56',1,'2006-02-15 21:30:53'),(1705,'2005-06-16 13:59:42',123,564,'2005-06-18 19:54:42',2,'2006-02-15 21:30:53'),(1706,'2005-06-16 14:01:02',2935,26,'2005-06-25 19:29:02',1,'2006-02-15 21:30:53'),(1707,'2005-06-16 14:01:27',185,4,'2005-06-18 09:35:27',1,'2006-02-15 21:30:53'),(1708,'2005-06-16 14:08:44',2259,478,'2005-06-19 08:35:44',1,'2006-02-15 21:30:53'),(1709,'2005-06-16 14:10:15',3501,426,'2005-06-24 16:38:15',2,'2006-02-15 21:30:53'),(1710,'2005-06-16 14:11:24',144,77,'2005-06-22 15:26:24',1,'2006-02-15 21:30:53'),(1711,'2005-06-16 14:11:52',273,347,'2005-06-25 08:49:52',1,'2006-02-15 21:30:53'),(1712,'2005-06-16 14:25:09',1363,535,'2005-06-17 17:55:09',1,'2006-02-15 21:30:53'),(1713,'2005-06-16 14:28:33',2580,164,'2005-06-18 09:02:33',1,'2006-02-15 21:30:53'),(1714,'2005-06-16 14:29:59',535,477,'2005-06-24 17:27:59',2,'2006-02-15 21:30:53'),(1715,'2005-06-16 14:37:12',1594,203,'2005-06-20 19:36:12',1,'2006-02-15 21:30:53'),(1716,'2005-06-16 14:39:31',20,24,'2005-06-19 15:37:31',1,'2006-02-15 21:30:53'),(1717,'2005-06-16 14:47:16',3007,277,'2005-06-19 10:11:16',2,'2006-02-15 21:30:53'),(1718,'2005-06-16 14:52:02',288,516,'2005-06-25 10:53:02',2,'2006-02-15 21:30:53'),(1719,'2005-06-16 14:55:53',2699,582,'2005-06-18 14:12:53',1,'2006-02-15 21:30:53'),(1720,'2005-06-16 15:00:14',3500,543,'2005-06-21 13:57:14',2,'2006-02-15 21:30:53'),(1721,'2005-06-16 15:01:36',3521,485,'2005-06-23 10:48:36',1,'2006-02-15 21:30:53'),(1722,'2005-06-16 15:12:52',2142,364,'2005-06-19 13:01:52',2,'2006-02-15 21:30:53'),(1723,'2005-06-16 15:14:18',2417,259,'2005-06-23 15:45:18',2,'2006-02-15 21:30:53'),(1724,'2005-06-16 15:15:43',61,146,'2005-06-23 10:14:43',2,'2006-02-15 21:30:53'),(1725,'2005-06-16 15:18:57',726,1,'2005-06-17 21:05:57',1,'2006-02-15 21:30:53'),(1726,'2005-06-16 15:19:10',116,3,'2005-06-25 11:39:10',2,'2006-02-15 21:30:53'),(1727,'2005-06-16 15:21:47',2951,457,'2005-06-17 14:12:47',1,'2006-02-15 21:30:53'),(1728,'2005-06-16 15:29:29',1366,59,'2005-06-23 12:47:29',1,'2006-02-15 21:30:53'),(1729,'2005-06-16 15:29:47',3364,523,'2005-06-25 20:55:47',2,'2006-02-15 21:30:53'),(1730,'2005-06-16 15:30:01',1372,390,'2005-06-19 12:56:01',1,'2006-02-15 21:30:53'),(1731,'2005-06-16 15:32:12',3698,344,'2005-06-19 18:58:12',2,'2006-02-15 21:30:53'),(1732,'2005-06-16 15:34:41',2287,129,'2005-06-18 13:05:41',1,'2006-02-15 21:30:53'),(1733,'2005-06-16 15:37:07',542,480,'2005-06-23 15:53:07',2,'2006-02-15 21:30:53'),(1734,'2005-06-16 15:49:30',1113,94,'2005-06-22 13:52:30',2,'2006-02-15 21:30:53'),(1735,'2005-06-16 15:51:52',97,4,'2005-06-20 13:27:52',1,'2006-02-15 21:30:53'),(1736,'2005-06-16 15:52:32',3771,139,'2005-06-21 14:39:32',2,'2006-02-15 21:30:53'),(1737,'2005-06-16 15:59:44',4029,467,'2005-06-23 12:22:44',1,'2006-02-15 21:30:53'),(1738,'2005-06-16 16:07:27',3260,177,'2005-06-20 15:22:27',1,'2006-02-15 21:30:53'),(1739,'2005-06-16 16:09:38',2557,450,'2005-06-22 18:04:38',2,'2006-02-15 21:30:53'),(1740,'2005-06-16 16:29:00',2282,324,'2005-06-20 14:07:00',2,'2006-02-15 21:30:53'),(1741,'2005-06-16 16:31:37',3722,176,'2005-06-25 21:38:37',1,'2006-02-15 21:30:53'),(1742,'2005-06-16 16:37:48',2772,576,'2005-06-17 19:47:48',2,'2006-02-15 21:30:53'),(1743,'2005-06-16 16:38:10',2777,258,'2005-06-17 13:13:10',1,'2006-02-15 21:30:53'),(1744,'2005-06-16 16:39:58',3075,230,'2005-06-18 19:50:58',2,'2006-02-15 21:30:53'),(1745,'2005-06-16 16:41:16',2812,178,'2005-06-23 21:02:16',2,'2006-02-15 21:30:53'),(1746,'2005-06-16 16:41:19',4272,385,'2005-06-19 11:28:19',2,'2006-02-15 21:30:53'),(1747,'2005-06-16 16:53:33',1661,273,'2005-06-25 21:48:33',2,'2006-02-15 21:30:53'),(1748,'2005-06-16 16:54:03',2434,473,'2005-06-18 20:11:03',1,'2006-02-15 21:30:53'),(1749,'2005-06-16 16:56:00',1554,283,'2005-06-21 21:02:00',2,'2006-02-15 21:30:53'),(1750,'2005-06-16 16:57:36',1103,321,'2005-06-25 21:51:36',1,'2006-02-15 21:30:53'),(1751,'2005-06-16 17:00:14',138,123,'2005-06-17 12:12:14',2,'2006-02-15 21:30:53'),(1752,'2005-06-16 17:02:55',3529,12,'2005-06-23 19:09:55',2,'2006-02-15 21:30:53'),(1753,'2005-06-16 17:08:17',3817,249,'2005-06-21 21:47:17',2,'2006-02-15 21:30:53'),(1754,'2005-06-16 17:13:23',4106,25,'2005-06-22 20:46:23',1,'2006-02-15 21:30:53'),(1755,'2005-06-16 17:18:44',1721,117,'2005-06-17 16:54:44',1,'2006-02-15 21:30:53'),(1756,'2005-06-16 17:22:33',1401,571,'2005-06-21 16:52:33',1,'2006-02-15 21:30:53'),(1757,'2005-06-16 17:32:24',4491,510,'2005-06-18 13:12:24',1,'2006-02-15 21:30:53'),(1758,'2005-06-16 17:39:39',2654,474,'2005-06-25 13:06:39',1,'2006-02-15 21:30:53'),(1759,'2005-06-16 17:46:37',1402,430,'2005-06-24 19:40:37',2,'2006-02-15 21:30:53'),(1760,'2005-06-16 17:48:37',3929,261,'2005-06-18 16:01:37',2,'2006-02-15 21:30:53'),(1761,'2005-06-16 17:49:57',1570,521,'2005-06-17 21:03:57',2,'2006-02-15 21:30:53'),(1762,'2005-06-16 17:50:19',3050,116,'2005-06-19 21:35:19',2,'2006-02-15 21:30:53'),(1763,'2005-06-16 17:51:01',1941,389,'2005-06-20 17:27:01',1,'2006-02-15 21:30:53'),(1764,'2005-06-16 17:51:54',705,392,'2005-06-21 20:36:54',2,'2006-02-15 21:30:53'),(1765,'2005-06-16 17:56:10',822,273,'2005-06-19 23:40:10',2,'2006-02-15 21:30:53'),(1766,'2005-06-16 17:59:37',2041,118,'2005-06-18 16:32:37',2,'2006-02-15 21:30:53'),(1767,'2005-06-16 18:01:36',1162,205,'2005-06-18 12:39:36',2,'2006-02-15 21:30:53'),(1768,'2005-06-16 18:02:06',2131,131,'2005-06-23 17:19:06',2,'2006-02-15 21:30:53'),(1769,'2005-06-16 18:07:48',1229,397,'2005-06-22 12:39:48',1,'2006-02-15 21:30:53'),(1770,'2005-06-16 18:07:55',1681,359,'2005-06-23 23:49:55',2,'2006-02-15 21:30:53'),(1771,'2005-06-16 18:12:17',1769,416,'2005-06-18 16:11:17',1,'2006-02-15 21:30:53'),(1772,'2005-06-16 18:12:54',1269,525,'2005-06-24 19:55:54',1,'2006-02-15 21:30:53'),(1773,'2005-06-16 18:13:43',4396,462,'2005-06-24 17:43:43',2,'2006-02-15 21:30:53'),(1774,'2005-06-16 18:27:52',3058,442,'2005-06-21 13:35:52',2,'2006-02-15 21:30:53'),(1775,'2005-06-16 18:28:19',1922,123,'2005-06-25 13:09:19',2,'2006-02-15 21:30:53'),(1776,'2005-06-16 18:46:58',1404,472,'2005-06-24 16:01:58',1,'2006-02-15 21:30:53'),(1777,'2005-06-16 18:52:12',3325,49,'2005-06-25 13:55:12',1,'2006-02-15 21:30:53'),(1778,'2005-06-16 18:54:48',2512,341,'2005-06-22 16:08:48',2,'2006-02-15 21:30:53'),(1779,'2005-06-16 18:55:11',1044,438,'2005-06-17 20:11:11',1,'2006-02-15 21:30:53'),(1780,'2005-06-16 19:11:45',146,352,'2005-06-19 15:34:45',2,'2006-02-15 21:30:53'),(1781,'2005-06-16 19:20:24',2841,429,'2005-06-25 17:02:24',2,'2006-02-15 21:30:53'),(1782,'2005-06-16 19:21:12',1820,498,'2005-06-22 16:03:12',2,'2006-02-15 21:30:53'),(1783,'2005-06-16 19:23:23',50,18,'2005-06-18 00:57:23',1,'2006-02-15 21:30:53'),(1784,'2005-06-16 19:25:32',3792,134,'2005-06-20 00:00:32',2,'2006-02-15 21:30:53'),(1785,'2005-06-16 19:27:12',3413,50,'2005-06-24 19:25:12',1,'2006-02-15 21:30:53'),(1786,'2005-06-16 19:30:54',263,323,'2005-06-19 14:24:54',1,'2006-02-15 21:30:53'),(1787,'2005-06-16 19:30:59',3823,546,'2005-06-21 18:25:59',2,'2006-02-15 21:30:53'),(1788,'2005-06-16 19:47:18',3794,357,'2005-06-22 23:10:18',1,'2006-02-15 21:30:53'),(1789,'2005-06-16 19:49:18',4264,105,'2005-06-23 17:07:18',2,'2006-02-15 21:30:53'),(1790,'2005-06-16 19:58:40',1070,158,'2005-06-17 19:31:40',2,'2006-02-15 21:30:53'),(1791,'2005-06-16 20:04:28',301,76,'2005-06-23 22:30:28',1,'2006-02-15 21:30:53'),(1792,'2005-06-16 20:04:50',3800,351,'2005-06-26 00:57:50',1,'2006-02-15 21:30:53'),(1793,'2005-06-16 20:07:27',4356,230,'2005-06-19 20:55:27',1,'2006-02-15 21:30:53'),(1794,'2005-06-16 20:08:37',497,452,'2005-06-22 01:54:37',1,'2006-02-15 21:30:53'),(1795,'2005-06-16 20:09:01',536,56,'2005-06-24 17:50:01',2,'2006-02-15 21:30:53'),(1796,'2005-06-16 20:10:43',3229,283,'2005-06-20 19:12:43',1,'2006-02-15 21:30:53'),(1797,'2005-06-16 20:13:03',3435,275,'2005-06-22 22:56:03',1,'2006-02-15 21:30:53'),(1798,'2005-06-16 20:16:15',1654,429,'2005-06-20 22:23:15',2,'2006-02-15 21:30:53'),(1799,'2005-06-16 20:17:20',2847,505,'2005-06-20 23:55:20',1,'2006-02-15 21:30:53'),(1800,'2005-06-16 20:18:46',2058,149,'2005-06-20 17:12:46',1,'2006-02-15 21:30:53'),(1801,'2005-06-16 20:21:53',1015,10,'2005-06-18 23:18:53',1,'2006-02-15 21:30:53'),(1802,'2005-06-16 20:23:30',4174,455,'2005-06-21 20:02:30',1,'2006-02-15 21:30:53'),(1803,'2005-06-16 20:32:47',3784,127,'2005-06-21 02:03:47',1,'2006-02-15 21:30:53'),(1804,'2005-06-16 20:33:15',1152,570,'2005-06-18 02:31:15',2,'2006-02-15 21:30:53'),(1805,'2005-06-16 20:36:00',3962,208,'2005-06-17 16:27:00',1,'2006-02-15 21:30:53'),(1806,'2005-06-16 20:41:57',2053,45,'2005-06-18 19:25:57',2,'2006-02-15 21:30:53'),(1807,'2005-06-16 20:58:59',1174,338,'2005-06-20 21:31:59',2,'2006-02-15 21:30:53'),(1808,'2005-06-16 20:59:35',2424,466,'2005-06-24 15:31:35',1,'2006-02-15 21:30:53'),(1809,'2005-06-16 21:00:20',1071,517,'2005-06-25 20:25:20',1,'2006-02-15 21:30:53'),(1810,'2005-06-16 21:06:00',2368,7,'2005-06-21 21:24:00',1,'2006-02-15 21:30:53'),(1811,'2005-06-16 21:06:20',3700,235,'2005-06-21 21:59:20',2,'2006-02-15 21:30:53'),(1812,'2005-06-16 21:08:46',751,37,'2005-06-21 15:44:46',2,'2006-02-15 21:30:53'),(1813,'2005-06-16 21:11:00',1236,259,'2005-06-24 15:30:00',1,'2006-02-15 21:30:53'),(1814,'2005-06-16 21:15:22',39,144,'2005-06-23 17:00:22',1,'2006-02-15 21:30:53'),(1815,'2005-06-16 21:16:07',1551,84,'2005-06-17 16:37:07',2,'2006-02-15 21:30:53'),(1816,'2005-06-16 21:20:41',2861,594,'2005-06-18 02:21:41',1,'2006-02-15 21:30:53'),(1817,'2005-06-16 21:20:52',1354,574,'2005-06-19 16:24:52',2,'2006-02-15 21:30:53'),(1818,'2005-06-16 21:30:34',1218,63,'2005-06-20 03:27:34',2,'2006-02-15 21:30:53'),(1819,'2005-06-16 21:32:50',1689,386,'2005-06-26 01:11:50',1,'2006-02-15 21:30:53'),(1820,'2005-06-16 21:34:50',3672,120,'2005-06-20 16:50:50',1,'2006-02-15 21:30:53'),(1821,'2005-06-16 21:42:49',3207,468,'2005-06-20 16:25:49',2,'2006-02-15 21:30:53'),(1822,'2005-06-16 21:43:45',674,86,'2005-06-17 21:37:45',1,'2006-02-15 21:30:53'),(1823,'2005-06-16 21:48:16',3871,448,'2005-06-22 03:09:16',1,'2006-02-15 21:30:53'),(1824,'2005-06-16 21:51:04',2269,575,'2005-06-18 18:12:04',1,'2006-02-15 21:30:53'),(1825,'2005-06-16 21:53:05',2908,55,'2005-06-20 17:22:05',2,'2006-02-15 21:30:53'),(1826,'2005-06-16 21:53:52',421,578,'2005-06-25 18:46:52',2,'2006-02-15 21:30:53'),(1827,'2005-06-16 21:54:40',3804,423,'2005-06-19 21:28:40',2,'2006-02-15 21:30:53'),(1828,'2005-06-16 22:04:34',316,68,'2005-06-20 21:07:34',2,'2006-02-15 21:30:53'),(1829,'2005-06-16 22:14:21',617,293,'2005-06-21 16:51:21',1,'2006-02-15 21:30:53'),(1830,'2005-06-16 22:18:43',4010,499,'2005-06-23 21:14:43',2,'2006-02-15 21:30:53'),(1831,'2005-06-16 22:22:17',2610,383,'2005-06-25 23:23:17',2,'2006-02-15 21:30:53'),(1832,'2005-06-16 22:35:20',500,220,'2005-06-19 03:09:20',1,'2006-02-15 21:30:53'),(1833,'2005-06-16 22:45:03',1337,121,'2005-06-20 22:02:03',2,'2006-02-15 21:30:53'),(1834,'2005-06-16 22:49:08',4018,189,'2005-06-22 21:08:08',1,'2006-02-15 21:30:53'),(1835,'2005-06-16 23:05:36',1482,112,'2005-06-19 04:46:36',1,'2006-02-15 21:30:53'),(1836,'2005-06-16 23:13:05',2753,176,'2005-06-24 01:40:05',2,'2006-02-15 21:30:53'),(1837,'2005-06-16 23:16:15',1259,309,'2005-06-21 21:54:15',1,'2006-02-15 21:30:53'),(1838,'2005-06-16 23:20:16',513,31,'2005-06-20 02:34:16',1,'2006-02-15 21:30:53'),(1839,'2005-06-16 23:22:22',2750,223,'2005-06-23 00:33:22',1,'2006-02-15 21:30:53'),(1840,'2005-06-16 23:39:34',340,404,'2005-06-21 23:36:34',1,'2006-02-15 21:30:53'),(1841,'2005-06-16 23:44:13',2363,6,'2005-06-22 04:09:13',1,'2006-02-15 21:30:53'),(1842,'2005-06-16 23:45:59',1472,426,'2005-06-26 05:31:59',1,'2006-02-15 21:30:53'),(1843,'2005-06-16 23:53:42',2714,132,'2005-06-22 18:33:42',2,'2006-02-15 21:30:53'),(1844,'2005-06-16 23:53:53',2307,454,'2005-06-22 02:19:53',2,'2006-02-15 21:30:53'),(1845,'2005-06-16 23:56:11',3395,215,'2005-06-19 01:41:11',2,'2006-02-15 21:30:53'),(1846,'2005-06-17 00:02:44',1725,422,'2005-06-18 23:47:44',2,'2006-02-15 21:30:53'),(1847,'2005-06-17 00:05:22',1189,363,'2005-06-20 21:09:22',1,'2006-02-15 21:30:53'),(1848,'2005-06-17 00:07:07',3797,526,'2005-06-21 21:41:07',2,'2006-02-15 21:30:53'),(1849,'2005-06-17 00:13:19',2507,341,'2005-06-23 18:37:19',2,'2006-02-15 21:30:53'),(1850,'2005-06-17 00:31:35',761,517,'2005-06-25 05:19:35',1,'2006-02-15 21:30:53'),(1851,'2005-06-17 00:32:26',1121,451,'2005-06-22 19:54:26',2,'2006-02-15 21:30:53'),(1852,'2005-06-17 00:38:20',4122,271,'2005-06-22 20:04:20',2,'2006-02-15 21:30:53'),(1853,'2005-06-17 00:39:54',2949,301,'2005-06-19 00:22:54',2,'2006-02-15 21:30:53'),(1854,'2005-06-17 00:43:57',119,37,'2005-06-23 05:49:57',1,'2006-02-15 21:30:53'),(1855,'2005-06-17 00:54:58',4457,492,'2005-06-20 19:29:58',1,'2006-02-15 21:30:53'),(1856,'2005-06-17 01:02:00',3034,161,'2005-06-19 21:29:00',2,'2006-02-15 21:30:53'),(1857,'2005-06-17 01:12:58',4257,427,'2005-06-21 04:49:58',1,'2006-02-15 21:30:53'),(1858,'2005-06-17 01:13:11',3200,99,'2005-06-18 21:33:11',2,'2006-02-15 21:30:53'),(1859,'2005-06-17 01:13:38',3405,533,'2005-06-18 03:13:38',1,'2006-02-15 21:30:53'),(1860,'2005-06-17 01:17:12',1853,293,'2005-06-21 22:35:12',1,'2006-02-15 21:30:53'),(1861,'2005-06-17 01:17:31',135,454,'2005-06-25 02:11:31',1,'2006-02-15 21:30:53'),(1862,'2005-06-17 01:29:30',3299,553,'2005-06-25 20:43:30',1,'2006-02-15 21:30:53'),(1863,'2005-06-17 01:31:46',4466,550,'2005-06-26 02:09:46',2,'2006-02-15 21:30:53'),(1864,'2005-06-17 01:39:47',1815,130,'2005-06-24 19:39:47',2,'2006-02-15 21:30:53'),(1865,'2005-06-17 01:49:36',2657,526,'2005-06-23 21:13:36',1,'2006-02-15 21:30:53'),(1866,'2005-06-17 01:53:19',2579,575,'2005-06-19 06:14:19',2,'2006-02-15 21:30:53'),(1867,'2005-06-17 02:01:37',3537,415,'2005-06-25 04:52:37',2,'2006-02-15 21:30:53'),(1868,'2005-06-17 02:03:22',2412,380,'2005-06-25 04:38:22',1,'2006-02-15 21:30:53'),(1869,'2005-06-17 02:08:00',871,351,'2005-06-19 21:43:00',1,'2006-02-15 21:30:53'),(1870,'2005-06-17 02:24:36',895,191,'2005-06-17 23:04:36',2,'2006-02-15 21:30:53'),(1871,'2005-06-17 02:25:12',481,204,'2005-06-23 03:16:12',2,'2006-02-15 21:30:53'),(1872,'2005-06-17 02:27:03',3596,206,'2005-06-20 22:41:03',2,'2006-02-15 21:30:53'),(1873,'2005-06-17 02:38:28',2933,71,'2005-06-23 04:39:28',1,'2006-02-15 21:30:53'),(1874,'2005-06-17 02:39:20',3884,30,'2005-06-24 04:41:20',2,'2006-02-15 21:30:53'),(1875,'2005-06-17 02:45:10',1652,528,'2005-06-22 22:54:10',2,'2006-02-15 21:30:53'),(1876,'2005-06-17 02:50:51',384,459,'2005-06-18 07:21:51',1,'2006-02-15 21:30:53'),(1877,'2005-06-17 02:54:16',3404,261,'2005-06-25 21:51:16',2,'2006-02-15 21:30:53'),(1878,'2005-06-17 02:55:32',3319,381,'2005-06-21 03:44:32',1,'2006-02-15 21:30:53'),(1879,'2005-06-17 02:57:34',3983,343,'2005-06-19 00:00:34',1,'2006-02-15 21:30:53'),(1880,'2005-06-17 03:08:59',1133,289,'2005-06-19 07:16:59',1,'2006-02-15 21:30:53'),(1881,'2005-06-17 03:09:56',159,134,'2005-06-18 01:49:56',1,'2006-02-15 21:30:53'),(1882,'2005-06-17 03:17:21',1400,47,'2005-06-19 22:23:21',2,'2006-02-15 21:30:53'),(1883,'2005-06-17 03:18:51',3504,550,'2005-06-18 05:46:51',1,'2006-02-15 21:30:53'),(1884,'2005-06-17 03:19:20',4567,305,'2005-06-21 00:19:20',1,'2006-02-15 21:30:53'),(1885,'2005-06-17 03:35:59',740,588,'2005-06-21 05:57:59',2,'2006-02-15 21:30:53'),(1886,'2005-06-17 03:36:02',2367,505,'2005-06-19 08:12:02',2,'2006-02-15 21:30:53'),(1887,'2005-06-17 03:53:18',3591,32,'2005-06-25 07:37:18',2,'2006-02-15 21:30:53'),(1888,'2005-06-17 03:58:36',2872,405,'2005-06-22 09:28:36',1,'2006-02-15 21:30:53'),(1889,'2005-06-17 04:05:12',3909,572,'2005-06-26 04:13:12',1,'2006-02-15 21:30:53'),(1890,'2005-06-17 04:06:13',1764,447,'2005-06-22 07:46:13',2,'2006-02-15 21:30:53'),(1891,'2005-06-17 04:16:44',3576,109,'2005-06-24 07:20:44',1,'2006-02-15 21:30:53'),(1892,'2005-06-17 04:17:33',139,319,'2005-06-20 00:06:33',1,'2006-02-15 21:30:53'),(1893,'2005-06-17 04:18:37',3346,390,'2005-06-23 23:35:37',2,'2006-02-15 21:30:53'),(1894,'2005-06-17 04:18:48',3707,204,'2005-06-26 00:07:48',1,'2006-02-15 21:30:53'),(1895,'2005-06-17 04:25:12',680,30,'2005-06-26 08:44:12',1,'2006-02-15 21:30:53'),(1896,'2005-06-17 04:25:46',2077,270,'2005-06-26 09:37:46',1,'2006-02-15 21:30:53'),(1897,'2005-06-17 04:26:23',4142,422,'2005-06-25 09:32:23',2,'2006-02-15 21:30:53'),(1898,'2005-06-17 04:28:11',2873,143,'2005-06-25 07:04:11',2,'2006-02-15 21:30:53'),(1899,'2005-06-17 04:29:15',858,200,'2005-06-26 08:39:15',1,'2006-02-15 21:30:53'),(1900,'2005-06-17 04:29:58',1425,34,'2005-06-21 05:58:58',1,'2006-02-15 21:30:53'),(1901,'2005-06-17 04:35:19',2469,292,'2005-06-25 06:09:19',2,'2006-02-15 21:30:53'),(1902,'2005-06-17 04:35:52',2905,479,'2005-06-20 06:52:52',2,'2006-02-15 21:30:53'),(1903,'2005-06-17 04:37:20',1939,588,'2005-06-26 09:05:20',2,'2006-02-15 21:30:53'),(1904,'2005-06-17 04:45:41',2472,87,'2005-06-17 23:56:41',2,'2006-02-15 21:30:53'),(1905,'2005-06-17 04:51:43',1043,39,'2005-06-24 09:35:43',1,'2006-02-15 21:30:53'),(1906,'2005-06-17 04:53:35',1049,455,'2005-06-21 01:16:35',2,'2006-02-15 21:30:53'),(1907,'2005-06-17 05:08:27',988,66,'2005-06-23 09:13:27',1,'2006-02-15 21:30:53'),(1908,'2005-06-17 05:10:36',399,358,'2005-06-19 03:52:36',1,'2006-02-15 21:30:53'),(1909,'2005-06-17 05:11:04',2599,269,'2005-06-19 04:33:04',2,'2006-02-15 21:30:53'),(1910,'2005-06-17 05:11:27',3903,199,'2005-06-23 23:16:27',1,'2006-02-15 21:30:53'),(1911,'2005-06-17 05:15:15',910,3,'2005-06-24 11:05:15',2,'2006-02-15 21:30:53'),(1912,'2005-06-17 05:18:32',4136,538,'2005-06-20 10:01:32',2,'2006-02-15 21:30:53'),(1913,'2005-06-17 05:19:47',1825,116,'2005-06-21 03:39:47',1,'2006-02-15 21:30:53'),(1914,'2005-06-17 05:25:54',3406,450,'2005-06-24 04:25:54',2,'2006-02-15 21:30:53'),(1915,'2005-06-17 05:28:28',2620,393,'2005-06-21 07:12:28',2,'2006-02-15 21:30:53'),(1916,'2005-06-17 05:29:59',4428,429,'2005-06-26 05:35:59',2,'2006-02-15 21:30:53'),(1917,'2005-06-17 05:36:07',2667,400,'2005-06-24 01:44:07',1,'2006-02-15 21:30:53'),(1918,'2005-06-17 05:40:14',3749,310,'2005-06-21 08:53:14',2,'2006-02-15 21:30:53'),(1919,'2005-06-17 05:40:52',3855,197,'2005-06-23 05:58:52',1,'2006-02-15 21:30:53'),(1920,'2005-06-17 06:00:23',2199,75,'2005-06-24 04:49:23',1,'2006-02-15 21:30:53'),(1921,'2005-06-17 06:04:16',4369,417,'2005-06-23 05:26:16',2,'2006-02-15 21:30:53'),(1922,'2005-06-17 06:04:25',2484,343,'2005-06-18 09:15:25',2,'2006-02-15 21:30:53'),(1923,'2005-06-17 06:06:10',691,400,'2005-06-24 04:29:10',2,'2006-02-15 21:30:53'),(1924,'2005-06-17 06:13:34',2577,86,'2005-06-18 01:51:34',1,'2006-02-15 21:30:53'),(1925,'2005-06-17 06:16:47',3995,510,'2005-06-21 06:03:47',1,'2006-02-15 21:30:53'),(1926,'2005-06-17 06:24:30',3509,462,'2005-06-25 03:39:30',2,'2006-02-15 21:30:53'),(1927,'2005-06-17 06:48:19',3304,188,'2005-06-21 03:23:19',1,'2006-02-15 21:30:53'),(1928,'2005-06-17 06:48:31',3454,353,'2005-06-26 08:17:31',1,'2006-02-15 21:30:53'),(1929,'2005-06-17 06:49:30',573,327,'2005-06-22 12:07:30',2,'2006-02-15 21:30:53'),(1930,'2005-06-17 06:50:46',79,112,'2005-06-19 08:51:46',2,'2006-02-15 21:30:53'),(1931,'2005-06-17 06:51:56',1411,391,'2005-06-22 08:27:56',1,'2006-02-15 21:30:53'),(1932,'2005-06-17 06:54:41',3185,120,'2005-06-19 05:12:41',2,'2006-02-15 21:30:53'),(1933,'2005-06-17 06:54:42',980,13,'2005-06-26 02:00:42',1,'2006-02-15 21:30:53'),(1934,'2005-06-17 07:04:57',4000,16,'2005-06-25 12:21:57',2,'2006-02-15 21:30:53'),(1935,'2005-06-17 07:14:15',1962,295,'2005-06-20 05:59:15',1,'2006-02-15 21:30:53'),(1936,'2005-06-17 07:15:41',3037,213,'2005-06-18 11:37:41',2,'2006-02-15 21:30:53'),(1937,'2005-06-17 07:16:46',1266,385,'2005-06-21 04:22:46',2,'2006-02-15 21:30:53'),(1938,'2005-06-17 07:18:36',570,454,'2005-06-19 01:43:36',2,'2006-02-15 21:30:53'),(1939,'2005-06-17 07:26:45',605,11,'2005-06-25 13:06:45',2,'2006-02-15 21:30:53'),(1940,'2005-06-17 07:42:22',105,451,'2005-06-22 11:59:22',1,'2006-02-15 21:30:53'),(1941,'2005-06-17 07:42:45',1063,519,'2005-06-20 07:12:45',1,'2006-02-15 21:30:53'),(1942,'2005-06-17 07:43:39',261,143,'2005-06-25 02:24:39',1,'2006-02-15 21:30:53'),(1943,'2005-06-17 07:49:17',4327,144,'2005-06-20 03:47:17',1,'2006-02-15 21:30:53'),(1944,'2005-06-17 07:50:53',318,16,'2005-06-23 02:52:53',2,'2006-02-15 21:30:53'),(1945,'2005-06-17 07:51:26',3366,207,'2005-06-23 13:22:26',2,'2006-02-15 21:30:53'),(1946,'2005-06-17 07:58:39',2335,389,'2005-06-25 06:49:39',2,'2006-02-15 21:30:53'),(1947,'2005-06-17 08:02:20',3344,479,'2005-06-25 10:25:20',1,'2006-02-15 21:30:53'),(1948,'2005-06-17 08:06:53',46,89,'2005-06-21 05:00:53',1,'2006-02-15 21:30:53'),(1949,'2005-06-17 08:19:22',1478,208,'2005-06-25 08:43:22',1,'2006-02-15 21:30:53'),(1950,'2005-06-17 08:26:52',723,594,'2005-06-22 08:08:52',2,'2006-02-15 21:30:53'),(1951,'2005-06-17 08:30:35',955,123,'2005-06-20 10:43:35',2,'2006-02-15 21:30:53'),(1952,'2005-06-17 08:33:02',1823,338,'2005-06-21 14:00:02',2,'2006-02-15 21:30:53'),(1953,'2005-06-17 08:34:57',3549,405,'2005-06-24 09:38:57',2,'2006-02-15 21:30:53'),(1954,'2005-06-17 08:37:55',3203,533,'2005-06-20 02:55:55',2,'2006-02-15 21:30:53'),(1955,'2005-06-17 08:40:22',811,311,'2005-06-19 10:47:22',1,'2006-02-15 21:30:53'),(1956,'2005-06-17 08:43:32',1403,492,'2005-06-21 11:08:32',1,'2006-02-15 21:30:53'),(1957,'2005-06-17 08:50:58',2496,68,'2005-06-26 13:39:58',2,'2006-02-15 21:30:53'),(1958,'2005-06-17 08:52:01',1843,581,'2005-06-23 07:55:01',2,'2006-02-15 21:30:53'),(1959,'2005-06-17 08:54:10',1464,554,'2005-06-20 05:02:10',2,'2006-02-15 21:30:53'),(1960,'2005-06-17 08:59:57',2202,27,'2005-06-23 14:38:57',2,'2006-02-15 21:30:53'),(1961,'2005-06-17 09:02:58',2851,384,'2005-06-20 03:07:58',1,'2006-02-15 21:30:53'),(1962,'2005-06-17 09:08:58',4386,536,'2005-06-23 14:55:58',1,'2006-02-15 21:30:53'),(1963,'2005-06-17 09:09:31',1943,154,'2005-06-24 13:16:31',2,'2006-02-15 21:30:53'),(1964,'2005-06-17 09:10:09',3390,53,'2005-06-21 15:08:09',1,'2006-02-15 21:30:53'),(1965,'2005-06-17 09:17:39',480,256,'2005-06-18 12:35:39',2,'2006-02-15 21:30:53'),(1966,'2005-06-17 09:19:45',2085,6,'2005-06-20 11:19:45',1,'2006-02-15 21:30:53'),(1967,'2005-06-17 09:19:52',3225,558,'2005-06-21 03:35:52',1,'2006-02-15 21:30:53'),(1968,'2005-06-17 09:20:36',1139,246,'2005-06-18 11:06:36',2,'2006-02-15 21:30:53'),(1969,'2005-06-17 09:22:22',4450,337,'2005-06-21 05:31:22',2,'2006-02-15 21:30:53'),(1970,'2005-06-17 09:23:16',1358,303,'2005-06-22 09:40:16',2,'2006-02-15 21:30:53'),(1971,'2005-06-17 09:23:59',2870,357,'2005-06-25 13:20:59',2,'2006-02-15 21:30:53'),(1972,'2005-06-17 09:25:49',2758,526,'2005-06-24 09:59:49',2,'2006-02-15 21:30:53'),(1973,'2005-06-17 09:26:15',3669,256,'2005-06-21 10:18:15',1,'2006-02-15 21:30:53'),(1974,'2005-06-17 09:30:05',1979,111,'2005-06-21 12:10:05',1,'2006-02-15 21:30:53'),(1975,'2005-06-17 09:32:10',2520,468,'2005-06-23 03:50:10',2,'2006-02-15 21:30:53'),(1976,'2005-06-17 09:38:08',3631,184,'2005-06-23 07:23:08',2,'2006-02-15 21:30:53'),(1977,'2005-06-17 09:38:22',2468,459,'2005-06-23 14:19:22',2,'2006-02-15 21:30:53'),(1978,'2005-06-17 09:42:34',1590,278,'2005-06-20 09:13:34',2,'2006-02-15 21:30:53'),(1979,'2005-06-17 09:45:30',3470,45,'2005-06-20 10:52:30',1,'2006-02-15 21:30:53'),(1980,'2005-06-17 09:48:05',2985,328,'2005-06-23 14:43:05',1,'2006-02-15 21:30:53'),(1981,'2005-06-17 10:03:34',3186,526,'2005-06-20 13:14:34',2,'2006-02-15 21:30:53'),(1982,'2005-06-17 10:12:15',1091,566,'2005-06-20 13:56:15',1,'2006-02-15 21:30:53'),(1983,'2005-06-17 10:22:13',1955,365,'2005-06-24 05:04:13',1,'2006-02-15 21:30:53'),(1984,'2005-06-17 10:25:28',3417,380,'2005-06-23 08:18:28',2,'2006-02-15 21:30:53'),(1985,'2005-06-17 10:31:37',87,411,'2005-06-22 11:17:37',1,'2006-02-15 21:30:53'),(1986,'2005-06-17 10:34:59',2894,541,'2005-06-24 04:57:59',2,'2006-02-15 21:30:53'),(1987,'2005-06-17 10:40:36',110,479,'2005-06-23 14:23:36',1,'2006-02-15 21:30:53'),(1988,'2005-06-17 10:42:34',3054,261,'2005-06-25 11:47:34',2,'2006-02-15 21:30:53'),(1989,'2005-06-17 10:47:24',634,35,'2005-06-19 05:12:24',1,'2006-02-15 21:30:53'),(1990,'2005-06-17 10:48:44',1471,571,'2005-06-24 08:11:44',1,'2006-02-15 21:30:53'),(1991,'2005-06-17 10:49:23',3963,105,'2005-06-25 10:48:23',1,'2006-02-15 21:30:53'),(1992,'2005-06-17 10:58:53',636,233,'2005-06-19 08:42:53',2,'2006-02-15 21:30:53'),(1993,'2005-06-17 10:59:24',168,234,'2005-06-23 07:30:24',2,'2006-02-15 21:30:53'),(1994,'2005-06-17 11:07:06',2203,346,'2005-06-25 08:32:06',2,'2006-02-15 21:30:53'),(1995,'2005-06-17 11:11:14',1866,10,'2005-06-26 16:37:14',1,'2006-02-15 21:30:53'),(1996,'2005-06-17 11:17:45',3074,149,'2005-06-26 09:42:45',1,'2006-02-15 21:30:53'),(1997,'2005-06-17 11:19:43',846,411,'2005-06-19 14:18:43',1,'2006-02-15 21:30:53'),(1998,'2005-06-17 11:24:57',4365,562,'2005-06-26 09:48:57',1,'2006-02-15 21:30:53'),(1999,'2005-06-17 11:30:08',3704,111,'2005-06-23 08:36:08',1,'2006-02-15 21:30:53'),(2000,'2005-06-17 11:32:30',323,163,'2005-06-22 13:37:30',1,'2006-02-15 21:30:53'),(2001,'2005-06-17 11:35:09',2069,260,'2005-06-21 14:52:09',2,'2006-02-15 21:30:53'),(2002,'2005-06-17 11:39:58',2406,514,'2005-06-24 15:41:58',2,'2006-02-15 21:30:53'),(2003,'2005-06-17 11:40:35',1581,515,'2005-06-19 08:30:35',2,'2006-02-15 21:30:53'),(2004,'2005-06-17 11:43:38',1342,171,'2005-06-24 08:05:38',2,'2006-02-15 21:30:53'),(2005,'2005-06-17 11:44:54',4177,234,'2005-06-19 10:53:54',1,'2006-02-15 21:30:53'),(2006,'2005-06-17 11:47:03',992,215,'2005-06-19 13:47:03',2,'2006-02-15 21:30:53'),(2007,'2005-06-17 11:47:17',1123,572,'2005-06-21 07:19:17',1,'2006-02-15 21:30:53'),(2008,'2005-06-17 11:48:05',2081,570,'2005-06-25 13:16:05',1,'2006-02-15 21:30:53'),(2009,'2005-06-17 11:48:31',1902,119,'2005-06-18 09:34:31',2,'2006-02-15 21:30:53'),(2010,'2005-06-17 11:54:15',2845,329,'2005-06-21 05:55:15',1,'2006-02-15 21:30:53'),(2011,'2005-06-17 11:56:09',734,350,'2005-06-24 06:47:09',2,'2006-02-15 21:30:53'),(2012,'2005-06-17 11:57:15',3588,84,'2005-06-24 17:18:15',1,'2006-02-15 21:30:53'),(2013,'2005-06-17 12:03:01',3256,165,'2005-06-24 10:04:01',1,'2006-02-15 21:30:53'),(2014,'2005-06-17 12:03:28',2969,337,'2005-06-25 16:00:28',2,'2006-02-15 21:30:53'),(2015,'2005-06-17 12:16:29',3776,484,'2005-06-18 14:40:29',2,'2006-02-15 21:30:53'),(2016,'2005-06-17 12:18:36',4265,282,'2005-06-20 12:13:36',1,'2006-02-15 21:30:53'),(2017,'2005-06-17 12:33:30',1434,516,'2005-06-19 10:08:30',2,'2006-02-15 21:30:53'),(2018,'2005-06-17 12:35:58',1278,380,'2005-06-26 13:16:58',2,'2006-02-15 21:30:53'),(2019,'2005-06-17 12:38:44',2314,528,'2005-06-23 17:38:44',2,'2006-02-15 21:30:53'),(2020,'2005-06-17 12:39:50',1914,384,'2005-06-19 14:59:50',1,'2006-02-15 21:30:53'),(2021,'2005-06-17 12:41:18',2852,319,'2005-06-23 17:17:18',2,'2006-02-15 21:30:53'),(2022,'2005-06-17 12:44:39',3053,547,'2005-06-25 12:32:39',1,'2006-02-15 21:30:53'),(2023,'2005-06-17 12:52:58',787,169,'2005-06-23 11:07:58',1,'2006-02-15 21:30:53'),(2024,'2005-06-17 13:00:51',2566,329,'2005-06-22 07:03:51',1,'2006-02-15 21:30:53'),(2025,'2005-06-17 13:04:00',1203,447,'2005-06-18 18:45:00',2,'2006-02-15 21:30:53'),(2026,'2005-06-17 13:05:38',3681,491,'2005-06-21 17:19:38',1,'2006-02-15 21:30:53'),(2027,'2005-06-17 13:06:56',4309,265,'2005-06-23 13:46:56',1,'2006-02-15 21:30:53'),(2028,'2005-06-17 13:08:08',4451,155,'2005-06-23 10:54:08',1,'2006-02-15 21:30:53'),(2029,'2005-06-17 13:10:59',914,512,'2005-06-19 18:15:59',1,'2006-02-15 21:30:53'),(2030,'2005-06-17 13:13:27',4024,457,'2005-06-19 10:44:27',1,'2006-02-15 21:30:53'),(2031,'2005-06-17 13:14:03',4275,570,'2005-06-25 10:06:03',2,'2006-02-15 21:30:53'),(2032,'2005-06-17 13:24:07',425,316,'2005-06-18 18:18:07',1,'2006-02-15 21:30:53'),(2033,'2005-06-17 13:24:43',58,90,'2005-06-20 12:34:43',1,'2006-02-15 21:30:53'),(2034,'2005-06-17 13:27:16',1512,587,'2005-06-22 08:53:16',2,'2006-02-15 21:30:53'),(2035,'2005-06-17 13:45:09',4371,158,'2005-06-26 15:30:09',2,'2006-02-15 21:30:53'),(2036,'2005-06-17 13:46:52',100,486,'2005-06-18 15:42:52',2,'2006-02-15 21:30:53'),(2037,'2005-06-17 13:54:20',2582,308,'2005-06-20 14:49:20',2,'2006-02-15 21:30:53'),(2038,'2005-06-17 14:00:51',4231,138,'2005-06-19 11:54:51',2,'2006-02-15 21:30:53'),(2039,'2005-06-17 14:03:43',1514,304,'2005-06-24 09:21:43',1,'2006-02-15 21:30:53'),(2040,'2005-06-17 14:18:37',227,260,'2005-06-22 19:08:37',1,'2006-02-15 21:30:53'),(2041,'2005-06-17 14:19:00',782,348,'2005-06-26 08:38:00',2,'2006-02-15 21:30:53'),(2042,'2005-06-17 14:31:02',3102,84,'2005-06-18 14:43:02',1,'2006-02-15 21:30:53'),(2043,'2005-06-17 14:31:12',2495,4,'2005-06-19 11:04:12',2,'2006-02-15 21:30:53'),(2044,'2005-06-17 14:37:57',2418,484,'2005-06-22 17:15:57',2,'2006-02-15 21:30:53'),(2045,'2005-06-17 14:38:11',561,391,'2005-06-26 13:44:11',2,'2006-02-15 21:30:53'),(2046,'2005-06-17 14:39:50',872,374,'2005-06-24 16:02:50',1,'2006-02-15 21:30:53'),(2047,'2005-06-17 14:40:58',2371,201,'2005-06-21 08:52:58',1,'2006-02-15 21:30:53'),(2048,'2005-06-17 14:55:29',2055,454,'2005-06-23 16:29:29',2,'2006-02-15 21:30:53'),(2049,'2005-06-17 14:58:36',1053,182,'2005-06-22 14:53:36',2,'2006-02-15 21:30:53'),(2050,'2005-06-17 15:07:30',1963,549,'2005-06-18 14:43:30',1,'2006-02-15 21:30:53'),(2051,'2005-06-17 15:10:16',2366,191,'2005-06-19 20:45:16',1,'2006-02-15 21:30:53'),(2052,'2005-06-17 15:14:43',1686,172,'2005-06-21 11:08:43',1,'2006-02-15 21:30:53'),(2053,'2005-06-17 15:19:34',4279,521,'2005-06-19 10:06:34',2,'2006-02-15 21:30:53'),(2054,'2005-06-17 15:26:37',1588,295,'2005-06-26 14:22:37',1,'2006-02-15 21:30:53'),(2055,'2005-06-17 15:27:03',1399,593,'2005-06-25 13:44:03',1,'2006-02-15 21:30:53'),(2056,'2005-06-17 15:27:33',229,42,'2005-06-20 13:04:33',2,'2006-02-15 21:30:53'),(2057,'2005-06-17 15:31:58',2803,190,'2005-06-25 09:39:58',1,'2006-02-15 21:30:53'),(2058,'2005-06-17 15:34:41',1324,57,'2005-06-25 14:50:41',1,'2006-02-15 21:30:53'),(2059,'2005-06-17 15:36:12',739,114,'2005-06-18 19:01:12',2,'2006-02-15 21:30:53'),(2060,'2005-06-17 15:42:42',1523,64,'2005-06-22 16:39:42',1,'2006-02-15 21:30:53'),(2061,'2005-06-17 15:47:00',4575,108,'2005-06-24 16:36:00',2,'2006-02-15 21:30:53'),(2062,'2005-06-17 15:56:43',1749,55,'2005-06-20 21:37:43',2,'2006-02-15 21:30:53'),(2063,'2005-06-17 15:56:53',4323,5,'2005-06-21 14:19:53',1,'2006-02-15 21:30:53'),(2064,'2005-06-17 15:57:56',1970,67,'2005-06-23 21:04:56',2,'2006-02-15 21:30:53'),(2065,'2005-06-17 16:03:46',844,266,'2005-06-22 16:41:46',2,'2006-02-15 21:30:53'),(2066,'2005-06-17 16:07:08',2561,248,'2005-06-24 15:20:08',2,'2006-02-15 21:30:53'),(2067,'2005-06-17 16:11:08',1711,297,'2005-06-22 13:01:08',2,'2006-02-15 21:30:53'),(2068,'2005-06-17 16:11:46',4252,387,'2005-06-20 11:28:46',1,'2006-02-15 21:30:53'),(2069,'2005-06-17 16:19:39',2746,551,'2005-06-26 16:48:39',1,'2006-02-15 21:30:53'),(2070,'2005-06-17 16:27:51',2609,24,'2005-06-20 20:46:51',1,'2006-02-15 21:30:53'),(2071,'2005-06-17 16:33:17',2867,479,'2005-06-23 21:51:17',1,'2006-02-15 21:30:53'),(2072,'2005-06-17 16:33:32',86,261,'2005-06-23 13:22:32',1,'2006-02-15 21:30:53'),(2073,'2005-06-17 16:33:59',3530,410,'2005-06-19 11:57:59',1,'2006-02-15 21:30:53'),(2074,'2005-06-17 16:40:03',71,495,'2005-06-20 21:34:03',1,'2006-02-15 21:30:53'),(2075,'2005-06-17 16:40:33',2415,459,'2005-06-19 13:55:33',2,'2006-02-15 21:30:53'),(2076,'2005-06-17 16:43:47',2242,217,'2005-06-24 11:12:47',1,'2006-02-15 21:30:53'),(2077,'2005-06-17 16:46:11',4478,113,'2005-06-19 15:10:11',1,'2006-02-15 21:30:53'),(2078,'2005-06-17 16:48:55',2021,278,'2005-06-19 18:01:55',1,'2006-02-15 21:30:53'),(2079,'2005-06-17 16:49:45',3853,465,'2005-06-18 18:10:45',1,'2006-02-15 21:30:53'),(2080,'2005-06-17 16:59:40',1231,476,'2005-06-21 11:28:40',2,'2006-02-15 21:30:53'),(2081,'2005-06-17 17:05:02',917,253,'2005-06-26 20:26:02',1,'2006-02-15 21:30:53'),(2082,'2005-06-17 17:13:32',434,254,'2005-06-19 16:16:32',1,'2006-02-15 21:30:53'),(2083,'2005-06-17 17:14:00',2423,97,'2005-06-18 18:31:00',2,'2006-02-15 21:30:53'),(2084,'2005-06-17 17:17:19',428,92,'2005-06-22 14:57:19',1,'2006-02-15 21:30:53'),(2085,'2005-06-17 17:30:56',2275,214,'2005-06-23 12:13:56',1,'2006-02-15 21:30:53'),(2086,'2005-06-17 17:32:07',898,326,'2005-06-21 20:19:07',2,'2006-02-15 21:30:53'),(2087,'2005-06-17 17:35:10',466,398,'2005-06-26 13:52:10',1,'2006-02-15 21:30:53'),(2088,'2005-06-17 17:35:30',506,310,'2005-06-23 20:13:30',2,'2006-02-15 21:30:53'),(2089,'2005-06-17 17:45:09',4030,156,'2005-06-25 16:41:09',1,'2006-02-15 21:30:53'),(2090,'2005-06-17 18:06:14',17,197,'2005-06-22 23:52:14',1,'2006-02-15 21:30:53'),(2091,'2005-06-17 18:09:04',4033,260,'2005-06-26 12:11:04',1,'2006-02-15 21:30:53'),(2092,'2005-06-17 18:12:16',4427,556,'2005-06-25 15:06:16',2,'2006-02-15 21:30:53'),(2093,'2005-06-17 18:14:08',814,26,'2005-06-26 18:10:08',1,'2006-02-15 21:30:53'),(2094,'2005-06-17 18:18:56',2205,308,'2005-06-18 19:36:56',1,'2006-02-15 21:30:53'),(2095,'2005-06-17 18:21:35',1907,8,'2005-06-23 23:49:35',2,'2006-02-15 21:30:53'),(2096,'2005-06-17 18:33:04',1069,431,'2005-06-21 17:29:04',2,'2006-02-15 21:30:53'),(2097,'2005-06-17 18:40:04',569,439,'2005-06-23 13:49:04',1,'2006-02-15 21:30:53'),(2098,'2005-06-17 18:42:09',3951,274,'2005-06-19 20:40:09',1,'2006-02-15 21:30:53'),(2099,'2005-06-17 18:47:26',3660,146,'2005-06-24 22:31:26',2,'2006-02-15 21:30:53'),(2100,'2005-06-17 18:53:21',2267,387,'2005-06-19 21:49:21',2,'2006-02-15 21:30:53'),(2101,'2005-06-17 18:57:02',2137,581,'2005-06-20 15:38:02',2,'2006-02-15 21:30:53'),(2102,'2005-06-17 19:05:22',2316,486,'2005-06-23 23:21:22',2,'2006-02-15 21:30:53'),(2103,'2005-06-17 19:13:10',1469,456,'2005-06-21 21:32:10',2,'2006-02-15 21:30:53'),(2104,'2005-06-17 19:14:30',3084,136,'2005-06-19 16:26:30',1,'2006-02-15 21:30:53'),(2105,'2005-06-17 19:15:45',4090,57,'2005-06-20 16:00:45',1,'2006-02-15 21:30:53'),(2106,'2005-06-17 19:29:03',643,66,'2005-06-23 18:17:03',2,'2006-02-15 21:30:53'),(2107,'2005-06-17 19:31:16',1270,104,'2005-06-18 23:33:16',1,'2006-02-15 21:30:53'),(2108,'2005-06-17 19:35:26',1395,503,'2005-06-25 15:45:26',1,'2006-02-15 21:30:53'),(2109,'2005-06-17 19:41:42',2292,493,'2005-06-25 17:03:42',2,'2006-02-15 21:30:53'),(2110,'2005-06-17 19:45:49',3592,163,'2005-06-26 18:59:49',2,'2006-02-15 21:30:53'),(2111,'2005-06-17 19:47:21',2108,76,'2005-06-19 22:46:21',2,'2006-02-15 21:30:53'),(2112,'2005-06-17 19:52:42',1629,18,'2005-06-25 00:00:42',2,'2006-02-15 21:30:53'),(2113,'2005-06-17 19:57:46',1509,406,'2005-06-24 00:22:46',1,'2006-02-15 21:30:53'),(2114,'2005-06-17 20:00:25',3541,358,'2005-06-23 18:51:25',1,'2006-02-15 21:30:53'),(2115,'2005-06-17 20:02:16',3448,270,'2005-06-25 16:56:16',2,'2006-02-15 21:30:53'),(2116,'2005-06-17 20:16:12',2373,24,'2005-06-18 17:03:12',2,'2006-02-15 21:30:53'),(2117,'2005-06-17 20:24:00',2,170,'2005-06-23 17:45:00',2,'2006-02-15 21:30:53'),(2118,'2005-06-17 20:28:29',1261,103,'2005-06-23 22:47:29',1,'2006-02-15 21:30:53'),(2119,'2005-06-17 20:34:42',2104,561,'2005-06-22 00:05:42',1,'2006-02-15 21:30:53'),(2120,'2005-06-17 20:36:50',1498,182,'2005-06-27 01:18:50',2,'2006-02-15 21:30:53'),(2121,'2005-06-17 20:38:54',141,467,'2005-06-22 23:06:54',2,'2006-02-15 21:30:53'),(2122,'2005-06-17 20:48:27',2932,245,'2005-06-23 00:58:27',2,'2006-02-15 21:30:53'),(2123,'2005-06-17 20:48:30',2497,545,'2005-06-18 19:17:30',2,'2006-02-15 21:30:53'),(2124,'2005-06-17 20:49:14',1273,178,'2005-06-23 17:44:14',1,'2006-02-15 21:30:53'),(2125,'2005-06-17 20:53:42',4303,473,'2005-06-19 01:53:42',2,'2006-02-15 21:30:53'),(2126,'2005-06-17 20:54:36',4276,263,'2005-06-27 02:16:36',1,'2006-02-15 21:30:53'),(2127,'2005-06-17 20:54:48',3757,187,'2005-06-18 16:28:48',2,'2006-02-15 21:30:53'),(2128,'2005-06-17 20:54:58',352,2,'2005-06-24 00:41:58',2,'2006-02-15 21:30:53'),(2129,'2005-06-17 20:58:32',1930,249,'2005-06-23 22:22:32',1,'2006-02-15 21:30:53'),(2130,'2005-06-17 21:00:44',1369,413,'2005-06-26 00:05:44',2,'2006-02-15 21:30:53'),(2131,'2005-06-17 21:02:25',4424,85,'2005-06-25 18:45:25',1,'2006-02-15 21:30:53'),(2132,'2005-06-17 21:05:06',2636,186,'2005-06-20 18:10:06',1,'2006-02-15 21:30:53'),(2133,'2005-06-17 21:10:05',932,268,'2005-06-23 22:41:05',1,'2006-02-15 21:30:53'),(2134,'2005-06-17 21:13:44',1699,378,'2005-06-26 16:28:44',2,'2006-02-15 21:30:53'),(2135,'2005-06-17 21:14:02',4091,39,'2005-06-19 00:59:02',1,'2006-02-15 21:30:53'),(2136,'2005-06-17 21:16:41',2651,20,'2005-06-24 22:42:41',2,'2006-02-15 21:30:53'),(2137,'2005-06-17 21:18:28',1158,581,'2005-06-20 21:05:28',1,'2006-02-15 21:30:53'),(2138,'2005-06-17 21:28:14',512,254,'2005-06-22 01:16:14',2,'2006-02-15 21:30:53'),(2139,'2005-06-17 21:29:34',807,236,'2005-06-26 21:05:34',1,'2006-02-15 21:30:53'),(2140,'2005-06-17 21:40:29',2395,56,'2005-06-19 00:42:29',1,'2006-02-15 21:30:53'),(2141,'2005-06-17 21:41:34',2176,86,'2005-06-19 00:15:34',1,'2006-02-15 21:30:53'),(2142,'2005-06-17 21:55:43',1787,253,'2005-06-26 19:41:43',2,'2006-02-15 21:30:53'),(2143,'2005-06-17 21:58:13',1257,507,'2005-06-19 23:59:13',2,'2006-02-15 21:30:53'),(2144,'2005-06-17 22:05:40',3303,46,'2005-06-21 02:53:40',1,'2006-02-15 21:30:53'),(2145,'2005-06-17 22:10:36',238,388,'2005-06-18 21:07:36',2,'2006-02-15 21:30:53'),(2146,'2005-06-17 22:26:23',326,456,'2005-06-26 17:10:23',1,'2006-02-15 21:30:53'),(2147,'2005-06-17 22:28:13',2752,279,'2005-06-22 20:50:13',1,'2006-02-15 21:30:53'),(2148,'2005-06-17 22:44:35',315,338,'2005-06-26 19:43:35',1,'2006-02-15 21:30:53'),(2149,'2005-06-17 22:50:00',3365,333,'2005-06-26 18:40:00',1,'2006-02-15 21:30:53'),(2150,'2005-06-17 22:50:36',1910,406,'2005-06-21 19:33:36',1,'2006-02-15 21:30:53'),(2151,'2005-06-17 22:52:37',407,329,'2005-06-20 22:00:37',1,'2006-02-15 21:30:53'),(2152,'2005-06-17 22:53:27',2665,307,'2005-06-23 19:19:27',1,'2006-02-15 21:30:53'),(2153,'2005-06-17 22:58:04',2440,357,'2005-06-24 19:38:04',2,'2006-02-15 21:30:53'),(2154,'2005-06-17 22:59:42',1655,30,'2005-06-24 04:11:42',1,'2006-02-15 21:30:53'),(2155,'2005-06-17 23:07:29',3640,227,'2005-06-25 03:23:29',2,'2006-02-15 21:30:53'),(2156,'2005-06-17 23:08:12',623,237,'2005-06-22 19:44:12',2,'2006-02-15 21:30:53'),(2157,'2005-06-17 23:30:52',1619,201,'2005-06-24 01:56:52',2,'2006-02-15 21:30:53'),(2158,'2005-06-17 23:36:27',243,530,'2005-06-19 19:25:27',2,'2006-02-15 21:30:53'),(2159,'2005-06-17 23:37:29',3095,465,'2005-06-25 00:18:29',2,'2006-02-15 21:30:53'),(2160,'2005-06-17 23:39:11',1644,32,'2005-06-22 20:04:11',1,'2006-02-15 21:30:53'),(2161,'2005-06-17 23:39:50',3149,75,'2005-06-26 23:28:50',2,'2006-02-15 21:30:53'),(2162,'2005-06-17 23:45:47',1790,277,'2005-06-21 21:03:47',1,'2006-02-15 21:30:53'),(2163,'2005-06-17 23:46:16',2600,130,'2005-06-22 22:48:16',2,'2006-02-15 21:30:53'),(2164,'2005-06-17 23:46:21',3442,227,'2005-06-24 19:10:21',2,'2006-02-15 21:30:53'),(2165,'2005-06-17 23:51:10',2392,471,'2005-06-21 23:54:10',1,'2006-02-15 21:30:53'),(2166,'2005-06-17 23:51:21',4343,305,'2005-06-27 01:06:21',2,'2006-02-15 21:30:53'),(2167,'2005-06-17 23:51:28',3796,307,'2005-06-21 00:43:28',2,'2006-02-15 21:30:53'),(2168,'2005-06-17 23:53:24',802,308,'2005-06-20 01:11:24',1,'2006-02-15 21:30:53'),(2169,'2005-06-17 23:57:23',785,120,'2005-06-19 20:14:23',2,'2006-02-15 21:30:53'),(2170,'2005-06-17 23:57:34',3989,42,'2005-06-22 03:37:34',2,'2006-02-15 21:30:53'),(2171,'2005-06-18 00:06:04',1768,147,'2005-06-24 18:09:04',2,'2006-02-15 21:30:53'),(2172,'2005-06-18 00:06:16',2912,457,'2005-06-26 00:50:16',1,'2006-02-15 21:30:53'),(2173,'2005-06-18 00:08:20',995,65,'2005-06-25 05:30:20',1,'2006-02-15 21:30:53'),(2174,'2005-06-18 00:09:01',3279,520,'2005-06-25 23:14:01',1,'2006-02-15 21:30:53'),(2175,'2005-06-18 00:17:58',4038,17,'2005-06-22 23:18:58',2,'2006-02-15 21:30:53'),(2176,'2005-06-18 00:29:51',4201,282,'2005-06-21 01:41:51',1,'2006-02-15 21:30:53'),(2177,'2005-06-18 00:34:45',492,340,'2005-06-26 18:40:45',1,'2006-02-15 21:30:53'),(2178,'2005-06-18 00:38:35',2950,260,'2005-06-21 02:56:35',1,'2006-02-15 21:30:53'),(2179,'2005-06-18 00:41:36',4334,338,'2005-06-19 02:17:36',1,'2006-02-15 21:30:53'),(2180,'2005-06-18 00:47:43',3564,497,'2005-06-25 04:12:43',2,'2006-02-15 21:30:53'),(2181,'2005-06-18 00:48:31',3481,176,'2005-06-25 06:43:31',2,'2006-02-15 21:30:53'),(2182,'2005-06-18 00:56:18',3494,454,'2005-06-26 20:01:18',1,'2006-02-15 21:30:53'),(2183,'2005-06-18 01:06:01',1776,340,'2005-06-22 01:20:01',1,'2006-02-15 21:30:53'),(2184,'2005-06-18 01:10:36',3468,537,'2005-06-21 05:59:36',2,'2006-02-15 21:30:53'),(2185,'2005-06-18 01:12:22',4326,198,'2005-06-20 20:41:22',1,'2006-02-15 21:30:53'),(2186,'2005-06-18 01:15:27',2050,204,'2005-06-21 06:16:27',1,'2006-02-15 21:30:53'),(2187,'2005-06-18 01:17:27',1385,477,'2005-06-20 22:18:27',1,'2006-02-15 21:30:53'),(2188,'2005-06-18 01:19:04',712,183,'2005-06-25 03:59:04',2,'2006-02-15 21:30:53'),(2189,'2005-06-18 01:20:26',249,500,'2005-06-25 00:30:26',1,'2006-02-15 21:30:53'),(2190,'2005-06-18 01:29:51',4398,342,'2005-06-26 04:31:51',2,'2006-02-15 21:30:53'),(2191,'2005-06-18 01:33:09',3369,58,'2005-06-19 20:18:09',1,'2006-02-15 21:30:53'),(2192,'2005-06-18 01:35:47',1886,456,'2005-06-23 23:38:47',2,'2006-02-15 21:30:53'),(2193,'2005-06-18 01:38:45',1013,112,'2005-06-22 19:51:45',1,'2006-02-15 21:30:53'),(2194,'2005-06-18 01:41:37',1827,149,'2005-06-25 04:27:37',1,'2006-02-15 21:30:53'),(2195,'2005-06-18 01:44:46',2247,286,'2005-06-25 20:50:46',1,'2006-02-15 21:30:53'),(2196,'2005-06-18 01:47:07',1925,240,'2005-06-26 03:18:07',2,'2006-02-15 21:30:53'),(2197,'2005-06-18 01:50:27',3350,103,'2005-06-19 01:31:27',2,'2006-02-15 21:30:53'),(2198,'2005-06-18 01:51:22',1983,109,'2005-06-26 06:57:22',2,'2006-02-15 21:30:53'),(2199,'2005-06-18 01:57:56',99,171,'2005-06-23 20:34:56',2,'2006-02-15 21:30:53'),(2200,'2005-06-18 01:59:16',1085,229,'2005-06-26 23:25:16',2,'2006-02-15 21:30:53'),(2201,'2005-06-18 02:08:27',1864,489,'2005-06-23 01:40:27',1,'2006-02-15 21:30:53'),(2202,'2005-06-18 02:09:24',815,297,'2005-06-26 07:17:24',2,'2006-02-15 21:30:53'),(2203,'2005-06-18 02:10:42',1347,46,'2005-06-22 06:25:42',2,'2006-02-15 21:30:53'),(2204,'2005-06-18 02:11:38',1137,426,'2005-06-24 00:28:38',1,'2006-02-15 21:30:53'),(2205,'2005-06-18 02:14:34',1245,593,'2005-06-25 05:11:34',1,'2006-02-15 21:30:53'),(2206,'2005-06-18 02:14:45',3651,438,'2005-06-24 23:20:45',2,'2006-02-15 21:30:53'),(2207,'2005-06-18 02:19:21',182,78,'2005-06-24 02:25:21',2,'2006-02-15 21:30:53'),(2208,'2005-06-18 02:22:07',2345,132,'2005-06-23 07:24:07',2,'2006-02-15 21:30:53'),(2209,'2005-06-18 02:24:01',2441,13,'2005-06-22 04:13:01',2,'2006-02-15 21:30:53'),(2210,'2005-06-18 02:27:01',219,108,'2005-06-21 00:45:01',1,'2006-02-15 21:30:53'),(2211,'2005-06-18 02:29:10',4114,166,'2005-06-22 02:02:10',1,'2006-02-15 21:30:53'),(2212,'2005-06-18 02:36:10',2458,336,'2005-06-19 21:21:10',1,'2006-02-15 21:30:53'),(2213,'2005-06-18 02:36:47',949,98,'2005-06-23 05:02:47',1,'2006-02-15 21:30:53'),(2214,'2005-06-18 02:44:37',2430,366,'2005-06-18 23:37:37',2,'2006-02-15 21:30:53'),(2215,'2005-06-18 02:48:21',2060,239,'2005-06-22 01:03:21',2,'2006-02-15 21:30:53'),(2216,'2005-06-18 03:08:17',1428,320,'2005-06-19 08:13:17',1,'2006-02-15 21:30:53'),(2217,'2005-06-18 03:12:29',2260,118,'2005-06-20 06:08:29',1,'2006-02-15 21:30:53'),(2218,'2005-06-18 03:13:13',3577,176,'2005-06-18 21:16:13',1,'2006-02-15 21:30:53'),(2219,'2005-06-18 03:16:54',1881,393,'2005-06-22 01:29:54',1,'2006-02-15 21:30:53'),(2220,'2005-06-18 03:21:36',320,587,'2005-06-21 07:45:36',2,'2006-02-15 21:30:53'),(2221,'2005-06-18 03:24:56',3905,156,'2005-06-22 08:27:56',1,'2006-02-15 21:30:53'),(2222,'2005-06-18 03:26:23',3834,10,'2005-06-26 08:50:23',2,'2006-02-15 21:30:53'),(2223,'2005-06-18 03:27:03',4068,303,'2005-06-27 09:19:03',2,'2006-02-15 21:30:53'),(2224,'2005-06-18 03:33:58',1336,153,'2005-06-18 22:10:58',1,'2006-02-15 21:30:53'),(2225,'2005-06-18 03:35:40',2829,503,'2005-06-23 03:05:40',1,'2006-02-15 21:30:53'),(2226,'2005-06-18 03:39:56',3487,225,'2005-06-24 07:26:56',2,'2006-02-15 21:30:53'),(2227,'2005-06-18 03:43:23',3623,200,'2005-06-19 05:55:23',2,'2006-02-15 21:30:53'),(2228,'2005-06-18 03:44:50',490,383,'2005-06-23 00:28:50',1,'2006-02-15 21:30:53'),(2229,'2005-06-18 03:50:18',2840,35,'2005-06-26 07:16:18',2,'2006-02-15 21:30:53'),(2230,'2005-06-18 03:50:49',833,256,'2005-06-25 01:12:49',2,'2006-02-15 21:30:53'),(2231,'2005-06-18 03:52:14',2280,35,'2005-06-23 06:52:14',1,'2006-02-15 21:30:53'),(2232,'2005-06-18 03:54:31',2463,52,'2005-06-22 07:29:31',1,'2006-02-15 21:30:53'),(2233,'2005-06-18 03:57:36',3063,31,'2005-06-21 09:42:36',2,'2006-02-15 21:30:53'),(2234,'2005-06-18 04:01:28',234,182,'2005-06-24 04:55:28',2,'2006-02-15 21:30:53'),(2235,'2005-06-18 04:08:50',3463,21,'2005-06-27 07:58:50',1,'2006-02-15 21:30:53'),(2236,'2005-06-18 04:12:33',4001,375,'2005-06-23 04:07:33',1,'2006-02-15 21:30:53'),(2237,'2005-06-18 04:17:44',1821,205,'2005-06-27 09:08:44',1,'2006-02-15 21:30:53'),(2238,'2005-06-18 04:22:06',2859,251,'2005-06-27 03:29:06',2,'2006-02-15 21:30:53'),(2239,'2005-06-18 04:23:54',4419,437,'2005-06-26 00:12:54',2,'2006-02-15 21:30:53'),(2240,'2005-06-18 04:28:27',1409,122,'2005-06-22 07:48:27',2,'2006-02-15 21:30:53'),(2241,'2005-06-18 04:31:41',921,406,'2005-06-24 22:34:41',2,'2006-02-15 21:30:53'),(2242,'2005-06-18 04:32:28',1995,146,'2005-06-24 03:26:28',2,'2006-02-15 21:30:53'),(2243,'2005-06-18 04:33:03',1254,328,'2005-06-23 04:14:03',2,'2006-02-15 21:30:53'),(2244,'2005-06-18 04:46:33',3629,233,'2005-06-20 04:28:33',1,'2006-02-15 21:30:53'),(2245,'2005-06-18 04:52:59',1496,194,'2005-06-24 05:07:59',2,'2006-02-15 21:30:53'),(2246,'2005-06-18 04:54:29',4287,414,'2005-06-22 09:14:29',1,'2006-02-15 21:30:53'),(2248,'2005-06-18 04:59:48',1999,446,'2005-06-19 08:51:48',2,'2006-02-15 21:30:53'),(2249,'2005-06-18 05:03:08',117,285,'2005-06-26 05:43:08',2,'2006-02-15 21:30:53'),(2250,'2005-06-18 05:03:36',4042,7,'2005-06-22 02:25:36',2,'2006-02-15 21:30:53'),(2251,'2005-06-18 05:05:08',1458,143,'2005-06-23 08:34:08',1,'2006-02-15 21:30:53'),(2252,'2005-06-18 05:05:18',1987,383,'2005-06-21 08:19:18',1,'2006-02-15 21:30:53'),(2253,'2005-06-18 05:11:43',3719,122,'2005-06-25 03:30:43',2,'2006-02-15 21:30:53'),(2254,'2005-06-18 05:15:14',1084,281,'2005-06-27 04:10:14',2,'2006-02-15 21:30:53'),(2255,'2005-06-18 05:21:12',24,410,'2005-06-26 09:19:12',1,'2006-02-15 21:30:53'),(2256,'2005-06-18 05:21:56',1863,93,'2005-06-27 02:06:56',2,'2006-02-15 21:30:53'),(2257,'2005-06-18 05:29:52',2846,34,'2005-06-22 00:19:52',1,'2006-02-15 21:30:53'),(2258,'2005-06-18 05:30:36',4573,292,'2005-06-24 09:09:36',1,'2006-02-15 21:30:53'),(2259,'2005-06-18 05:37:45',4103,491,'2005-06-21 01:51:45',1,'2006-02-15 21:30:53'),(2260,'2005-06-18 05:38:36',2773,297,'2005-06-20 08:08:36',1,'2006-02-15 21:30:53'),(2261,'2005-06-18 05:46:15',1763,570,'2005-06-24 05:06:15',1,'2006-02-15 21:30:53'),(2262,'2005-06-18 05:49:46',4172,218,'2005-06-20 00:25:46',2,'2006-02-15 21:30:53'),(2263,'2005-06-18 05:57:47',3259,452,'2005-06-20 06:13:47',1,'2006-02-15 21:30:53'),(2264,'2005-06-18 05:58:45',150,240,'2005-06-19 00:57:45',1,'2006-02-15 21:30:53'),(2265,'2005-06-18 06:03:27',3069,267,'2005-06-20 01:16:27',1,'2006-02-15 21:30:53'),(2266,'2005-06-18 06:05:02',2596,452,'2005-06-20 06:54:02',1,'2006-02-15 21:30:53'),(2267,'2005-06-18 06:10:23',2086,218,'2005-06-20 00:39:23',2,'2006-02-15 21:30:53'),(2268,'2005-06-18 06:13:41',4380,21,'2005-06-22 08:53:41',2,'2006-02-15 21:30:53'),(2269,'2005-06-18 06:20:54',3088,431,'2005-06-25 04:51:54',2,'2006-02-15 21:30:53'),(2270,'2005-06-18 06:29:01',3447,588,'2005-06-26 07:21:01',2,'2006-02-15 21:30:53'),(2271,'2005-06-18 06:29:52',2416,145,'2005-06-21 09:46:52',2,'2006-02-15 21:30:53'),(2272,'2005-06-18 06:29:53',1364,599,'2005-06-23 10:58:53',1,'2006-02-15 21:30:53'),(2273,'2005-06-18 06:30:02',4456,327,'2005-06-20 07:07:02',1,'2006-02-15 21:30:53'),(2274,'2005-06-18 06:31:15',3021,347,'2005-06-21 01:24:15',2,'2006-02-15 21:30:53'),(2275,'2005-06-18 06:31:29',2805,354,'2005-06-24 10:04:29',2,'2006-02-15 21:30:53'),(2276,'2005-06-18 06:33:48',1145,594,'2005-06-25 00:50:48',2,'2006-02-15 21:30:53'),(2277,'2005-06-18 06:35:03',3770,224,'2005-06-19 01:26:03',1,'2006-02-15 21:30:53'),(2278,'2005-06-18 06:37:57',1166,450,'2005-06-22 10:57:57',1,'2006-02-15 21:30:53'),(2279,'2005-06-18 06:38:22',1953,554,'2005-06-27 07:16:22',1,'2006-02-15 21:30:53'),(2280,'2005-06-18 06:46:54',4568,548,'2005-06-26 09:48:54',2,'2006-02-15 21:30:53'),(2281,'2005-06-18 06:47:29',4212,431,'2005-06-20 10:27:29',2,'2006-02-15 21:30:53'),(2282,'2005-06-18 06:48:23',4388,113,'2005-06-24 11:04:23',2,'2006-02-15 21:30:53'),(2283,'2005-06-18 06:56:06',2056,507,'2005-06-19 05:11:06',2,'2006-02-15 21:30:53'),(2284,'2005-06-18 06:59:51',2682,228,'2005-06-24 04:58:51',2,'2006-02-15 21:30:53'),(2285,'2005-06-18 07:00:54',755,447,'2005-06-25 08:58:54',2,'2006-02-15 21:30:53'),(2286,'2005-06-18 07:02:32',618,287,'2005-06-27 12:33:32',1,'2006-02-15 21:30:53'),(2287,'2005-06-18 07:04:36',1473,317,'2005-06-27 03:00:36',2,'2006-02-15 21:30:53'),(2288,'2005-06-18 07:23:17',877,247,'2005-06-26 07:44:17',2,'2006-02-15 21:30:53'),(2289,'2005-06-18 07:29:43',2030,392,'2005-06-24 11:16:43',2,'2006-02-15 21:30:53'),(2290,'2005-06-18 07:34:37',200,513,'2005-06-26 11:45:37',1,'2006-02-15 21:30:53'),(2291,'2005-06-18 07:36:46',3949,436,'2005-06-26 04:57:46',2,'2006-02-15 21:30:53'),(2292,'2005-06-18 07:37:48',173,130,'2005-06-20 02:45:48',2,'2006-02-15 21:30:53'),(2293,'2005-06-18 07:45:03',3209,178,'2005-06-24 08:12:03',1,'2006-02-15 21:30:53'),(2294,'2005-06-18 07:46:34',2096,72,'2005-06-22 12:34:34',2,'2006-02-15 21:30:53'),(2295,'2005-06-18 07:56:18',3250,106,'2005-06-21 07:10:18',1,'2006-02-15 21:30:53'),(2296,'2005-06-18 08:10:42',4558,481,'2005-06-20 12:26:42',2,'2006-02-15 21:30:53'),(2297,'2005-06-18 08:17:41',2262,111,'2005-06-26 05:08:41',2,'2006-02-15 21:30:53'),(2298,'2005-06-18 08:18:29',1227,497,'2005-06-24 11:51:29',1,'2006-02-15 21:30:53'),(2299,'2005-06-18 08:18:52',4339,28,'2005-06-26 11:48:52',1,'2006-02-15 21:30:53'),(2300,'2005-06-18 08:22:34',1617,291,'2005-06-24 04:51:34',2,'2006-02-15 21:30:53'),(2301,'2005-06-18 08:24:03',869,273,'2005-06-25 10:31:03',2,'2006-02-15 21:30:53'),(2302,'2005-06-18 08:27:33',1852,42,'2005-06-22 02:46:33',2,'2006-02-15 21:30:53'),(2303,'2005-06-18 08:27:59',1524,329,'2005-06-22 10:58:59',1,'2006-02-15 21:30:53'),(2304,'2005-06-18 08:30:15',3543,327,'2005-06-23 06:17:15',1,'2006-02-15 21:30:53'),(2305,'2005-06-18 08:31:18',622,149,'2005-06-24 06:18:18',2,'2006-02-15 21:30:53'),(2306,'2005-06-18 08:33:23',208,477,'2005-06-27 10:01:23',2,'2006-02-15 21:30:53'),(2307,'2005-06-18 08:34:59',4576,47,'2005-06-23 04:42:59',1,'2006-02-15 21:30:53'),(2308,'2005-06-18 08:41:48',197,1,'2005-06-22 03:36:48',2,'2006-02-15 21:30:53'),(2309,'2005-06-18 08:43:24',611,576,'2005-06-20 03:56:24',1,'2006-02-15 21:30:53'),(2310,'2005-06-18 08:45:59',2590,409,'2005-06-26 05:06:59',2,'2006-02-15 21:30:53'),(2311,'2005-06-18 08:51:29',4506,236,'2005-06-25 07:51:29',1,'2006-02-15 21:30:53'),(2312,'2005-06-18 08:55:46',402,184,'2005-06-24 04:34:46',2,'2006-02-15 21:30:53'),(2313,'2005-06-18 08:56:45',3134,379,'2005-06-26 10:30:45',2,'2006-02-15 21:30:53'),(2314,'2005-06-18 09:03:19',2157,160,'2005-06-19 12:14:19',1,'2006-02-15 21:30:53'),(2315,'2005-06-18 09:03:39',2766,372,'2005-06-22 11:18:39',1,'2006-02-15 21:30:53'),(2316,'2005-06-18 09:04:59',372,289,'2005-06-20 09:39:59',2,'2006-02-15 21:30:53'),(2317,'2005-06-18 09:12:18',1602,326,'2005-06-21 05:50:18',2,'2006-02-15 21:30:53'),(2318,'2005-06-18 09:13:54',2328,383,'2005-06-23 07:19:54',1,'2006-02-15 21:30:53'),(2319,'2005-06-18 09:24:22',1521,393,'2005-06-26 14:12:22',2,'2006-02-15 21:30:53'),(2320,'2005-06-18 09:24:50',597,552,'2005-06-24 07:59:50',1,'2006-02-15 21:30:53'),(2321,'2005-06-18 09:42:42',1160,565,'2005-06-25 14:28:42',1,'2006-02-15 21:30:53'),(2322,'2005-06-18 09:44:21',1893,213,'2005-06-25 09:29:21',1,'2006-02-15 21:30:53'),(2323,'2005-06-18 09:55:02',207,54,'2005-06-23 07:19:02',1,'2006-02-15 21:30:53'),(2324,'2005-06-18 10:00:33',2987,268,'2005-06-23 14:10:33',1,'2006-02-15 21:30:53'),(2325,'2005-06-18 10:08:07',752,406,'2005-06-21 15:07:07',1,'2006-02-15 21:30:53'),(2326,'2005-06-18 10:14:22',3829,174,'2005-06-24 07:01:22',2,'2006-02-15 21:30:53'),(2327,'2005-06-18 10:16:40',1351,571,'2005-06-20 15:06:40',1,'2006-02-15 21:30:53'),(2328,'2005-06-18 10:17:21',2304,441,'2005-06-21 04:18:21',1,'2006-02-15 21:30:53'),(2329,'2005-06-18 10:22:52',4156,587,'2005-06-20 12:03:52',2,'2006-02-15 21:30:53'),(2330,'2005-06-18 10:41:19',4285,390,'2005-06-25 10:48:19',1,'2006-02-15 21:30:53'),(2331,'2005-06-18 10:50:09',1546,221,'2005-06-25 14:30:09',1,'2006-02-15 21:30:53'),(2332,'2005-06-18 10:53:51',2152,140,'2005-06-24 12:06:51',2,'2006-02-15 21:30:53'),(2333,'2005-06-18 10:55:54',2323,283,'2005-06-25 07:09:54',2,'2006-02-15 21:30:53'),(2334,'2005-06-18 10:56:24',3076,223,'2005-06-22 10:38:24',2,'2006-02-15 21:30:53'),(2335,'2005-06-18 10:59:36',3968,446,'2005-06-26 06:42:36',2,'2006-02-15 21:30:53'),(2336,'2005-06-18 11:00:05',3888,124,'2005-06-25 06:02:05',2,'2006-02-15 21:30:53'),(2337,'2005-06-18 11:15:27',4522,582,'2005-06-26 06:59:27',2,'2006-02-15 21:30:53'),(2338,'2005-06-18 11:24:54',3165,316,'2005-06-19 07:34:54',1,'2006-02-15 21:30:53'),(2339,'2005-06-18 11:29:22',313,297,'2005-06-21 10:29:22',1,'2006-02-15 21:30:53'),(2340,'2005-06-18 11:30:56',1913,157,'2005-06-23 06:00:56',1,'2006-02-15 21:30:53'),(2341,'2005-06-18 11:35:30',638,31,'2005-06-27 11:56:30',2,'2006-02-15 21:30:53'),(2342,'2005-06-18 11:42:40',2169,146,'2005-06-20 14:40:40',1,'2006-02-15 21:30:53'),(2343,'2005-06-18 11:46:26',4554,20,'2005-06-22 11:37:26',2,'2006-02-15 21:30:53'),(2344,'2005-06-18 12:01:47',2015,498,'2005-06-19 11:56:47',2,'2006-02-15 21:30:53'),(2345,'2005-06-18 12:03:23',1818,6,'2005-06-22 14:25:23',2,'2006-02-15 21:30:53'),(2346,'2005-06-18 12:08:16',2575,308,'2005-06-27 15:02:16',1,'2006-02-15 21:30:53'),(2347,'2005-06-18 12:12:29',4516,194,'2005-06-23 14:03:29',1,'2006-02-15 21:30:53'),(2348,'2005-06-18 12:15:43',3622,449,'2005-06-24 14:03:43',2,'2006-02-15 21:30:53'),(2349,'2005-06-18 12:25:14',1536,495,'2005-06-19 11:24:14',2,'2006-02-15 21:30:53'),(2350,'2005-06-18 12:25:29',1179,471,'2005-06-23 11:35:29',1,'2006-02-15 21:30:53'),(2351,'2005-06-18 12:27:57',2942,216,'2005-06-23 16:14:57',1,'2006-02-15 21:30:53'),(2352,'2005-06-18 12:40:15',2141,590,'2005-06-22 07:07:15',2,'2006-02-15 21:30:53'),(2353,'2005-06-18 12:53:25',3223,361,'2005-06-19 13:53:25',1,'2006-02-15 21:30:53'),(2354,'2005-06-18 12:54:18',2793,77,'2005-06-26 07:23:18',2,'2006-02-15 21:30:53'),(2355,'2005-06-18 12:57:06',3613,125,'2005-06-26 07:32:06',1,'2006-02-15 21:30:53'),(2356,'2005-06-18 12:59:23',2207,455,'2005-06-21 10:12:23',2,'2006-02-15 21:30:53'),(2357,'2005-06-18 12:59:41',1323,561,'2005-06-26 16:40:41',1,'2006-02-15 21:30:53'),(2358,'2005-06-18 13:00:51',1728,478,'2005-06-26 12:58:51',1,'2006-02-15 21:30:53'),(2359,'2005-06-18 13:04:42',3087,201,'2005-06-25 11:52:42',1,'2006-02-15 21:30:53'),(2360,'2005-06-18 13:11:13',37,57,'2005-06-23 15:32:13',2,'2006-02-15 21:30:53'),(2361,'2005-06-18 13:19:05',3547,546,'2005-06-23 07:59:05',1,'2006-02-15 21:30:53'),(2362,'2005-06-18 13:31:15',2815,514,'2005-06-19 12:35:15',1,'2006-02-15 21:30:53'),(2363,'2005-06-18 13:33:59',3497,1,'2005-06-19 17:40:59',1,'2006-02-15 21:30:53'),(2364,'2005-06-18 13:37:32',2856,512,'2005-06-23 14:18:32',1,'2006-02-15 21:30:53'),(2365,'2005-06-18 13:45:34',3109,493,'2005-06-21 12:12:34',2,'2006-02-15 21:30:53'),(2366,'2005-06-18 13:46:39',1413,162,'2005-06-23 18:49:39',2,'2006-02-15 21:30:53'),(2367,'2005-06-18 14:00:31',4086,566,'2005-06-22 14:45:31',2,'2006-02-15 21:30:53'),(2368,'2005-06-18 14:10:27',1058,99,'2005-06-23 10:49:27',1,'2006-02-15 21:30:53'),(2369,'2005-06-18 14:25:29',1515,44,'2005-06-23 18:45:29',2,'2006-02-15 21:30:53'),(2370,'2005-06-18 14:29:54',2656,489,'2005-06-24 10:23:54',1,'2006-02-15 21:30:53'),(2371,'2005-06-18 14:35:29',178,248,'2005-06-22 09:38:29',2,'2006-02-15 21:30:53'),(2372,'2005-06-18 14:37:37',1567,96,'2005-06-21 08:40:37',2,'2006-02-15 21:30:53'),(2373,'2005-06-18 14:37:57',2780,544,'2005-06-23 19:29:57',2,'2006-02-15 21:30:53'),(2374,'2005-06-18 14:44:06',2634,71,'2005-06-22 17:14:06',1,'2006-02-15 21:30:53'),(2375,'2005-06-18 14:47:29',2175,259,'2005-06-26 13:52:29',2,'2006-02-15 21:30:53'),(2376,'2005-06-18 14:55:30',3664,479,'2005-06-25 17:40:30',1,'2006-02-15 21:30:53'),(2377,'2005-06-18 14:56:23',3568,193,'2005-06-27 12:36:23',1,'2006-02-15 21:30:53'),(2378,'2005-06-18 14:57:49',2796,384,'2005-06-26 18:23:49',2,'2006-02-15 21:30:53'),(2379,'2005-06-18 14:59:39',2708,597,'2005-06-24 13:26:39',2,'2006-02-15 21:30:53'),(2380,'2005-06-18 15:00:04',4413,256,'2005-06-24 13:29:04',2,'2006-02-15 21:30:53'),(2381,'2005-06-18 15:00:30',1491,167,'2005-06-22 11:38:30',1,'2006-02-15 21:30:53'),(2382,'2005-06-18 15:03:52',915,568,'2005-06-20 10:16:52',2,'2006-02-15 21:30:53'),(2383,'2005-06-18 15:17:59',2459,149,'2005-06-26 18:42:59',2,'2006-02-15 21:30:53'),(2384,'2005-06-18 15:18:49',3378,132,'2005-06-21 18:10:49',1,'2006-02-15 21:30:53'),(2385,'2005-06-18 15:22:40',1641,298,'2005-06-26 10:02:40',1,'2006-02-15 21:30:53'),(2386,'2005-06-18 15:22:51',1361,293,'2005-06-22 20:01:51',1,'2006-02-15 21:30:53'),(2387,'2005-06-18 15:24:19',692,289,'2005-06-25 17:41:19',2,'2006-02-15 21:30:53'),(2388,'2005-06-18 15:26:30',2923,53,'2005-06-20 20:24:30',1,'2006-02-15 21:30:53'),(2389,'2005-06-18 15:27:47',731,382,'2005-06-21 12:26:47',1,'2006-02-15 21:30:53'),(2390,'2005-06-18 15:29:26',2748,239,'2005-06-23 17:50:26',1,'2006-02-15 21:30:53'),(2391,'2005-06-18 15:33:30',2850,491,'2005-06-25 14:30:30',1,'2006-02-15 21:30:53'),(2392,'2005-06-18 15:34:18',2213,261,'2005-06-19 16:22:18',1,'2006-02-15 21:30:53'),(2393,'2005-06-18 15:37:55',3143,21,'2005-06-25 17:11:55',1,'2006-02-15 21:30:53'),(2394,'2005-06-18 15:42:30',2669,60,'2005-06-26 16:12:30',1,'2006-02-15 21:30:53'),(2395,'2005-06-18 15:45:15',899,544,'2005-06-27 19:11:15',2,'2006-02-15 21:30:53'),(2396,'2005-06-18 15:49:48',1986,31,'2005-06-27 20:31:48',2,'2006-02-15 21:30:53'),(2397,'2005-06-18 15:51:25',2895,76,'2005-06-24 15:52:25',1,'2006-02-15 21:30:53'),(2398,'2005-06-18 15:56:53',3001,526,'2005-06-27 14:25:53',2,'2006-02-15 21:30:53'),(2399,'2005-06-18 16:06:14',2492,577,'2005-06-26 16:56:14',2,'2006-02-15 21:30:53'),(2400,'2005-06-18 16:10:46',3194,410,'2005-06-25 20:34:46',1,'2006-02-15 21:30:53'),(2401,'2005-06-18 16:22:03',85,359,'2005-06-19 13:49:03',2,'2006-02-15 21:30:53'),(2402,'2005-06-18 16:24:45',2833,360,'2005-06-27 14:39:45',1,'2006-02-15 21:30:53'),(2403,'2005-06-18 16:33:22',2697,536,'2005-06-23 19:25:22',1,'2006-02-15 21:30:53'),(2404,'2005-06-18 16:33:48',4138,456,'2005-06-23 20:39:48',2,'2006-02-15 21:30:53'),(2405,'2005-06-18 16:36:38',3604,356,'2005-06-21 19:15:38',1,'2006-02-15 21:30:53'),(2406,'2005-06-18 16:39:37',1321,497,'2005-06-23 12:04:37',1,'2006-02-15 21:30:53'),(2407,'2005-06-18 16:50:41',2547,421,'2005-06-24 15:29:41',2,'2006-02-15 21:30:53'),(2408,'2005-06-18 16:50:44',258,87,'2005-06-19 20:11:44',1,'2006-02-15 21:30:53'),(2409,'2005-06-18 16:53:33',656,84,'2005-06-20 18:23:33',1,'2006-02-15 21:30:53'),(2410,'2005-06-18 16:55:08',265,381,'2005-06-20 12:40:08',2,'2006-02-15 21:30:53'),(2411,'2005-06-18 16:55:54',3302,558,'2005-06-25 12:44:54',1,'2006-02-15 21:30:53'),(2412,'2005-06-18 16:58:58',1946,127,'2005-06-27 22:57:58',1,'2006-02-15 21:30:53'),(2413,'2005-06-18 16:59:34',1851,170,'2005-06-27 16:10:34',2,'2006-02-15 21:30:53'),(2414,'2005-06-18 17:01:55',4500,275,'2005-06-20 17:42:55',1,'2006-02-15 21:30:53'),(2415,'2005-06-18 17:02:42',3105,434,'2005-06-25 13:16:42',2,'2006-02-15 21:30:53'),(2416,'2005-06-18 17:07:34',2868,26,'2005-06-24 19:16:34',1,'2006-02-15 21:30:53'),(2417,'2005-06-18 17:12:01',1956,219,'2005-06-26 13:32:01',1,'2006-02-15 21:30:53'),(2418,'2005-06-18 17:14:42',2756,381,'2005-06-26 16:33:42',1,'2006-02-15 21:30:53'),(2419,'2005-06-18 17:21:24',1255,102,'2005-06-26 18:25:24',1,'2006-02-15 21:30:53'),(2420,'2005-06-18 17:22:28',241,502,'2005-06-23 17:45:28',1,'2006-02-15 21:30:53'),(2421,'2005-06-18 17:25:05',3524,26,'2005-06-23 21:09:05',2,'2006-02-15 21:30:53'),(2422,'2005-06-18 17:28:57',3170,527,'2005-06-23 15:22:57',1,'2006-02-15 21:30:53'),(2423,'2005-06-18 17:32:08',1744,231,'2005-06-21 11:58:08',1,'2006-02-15 21:30:53'),(2424,'2005-06-18 17:35:08',1884,233,'2005-06-23 15:33:08',1,'2006-02-15 21:30:53'),(2425,'2005-06-18 17:37:45',2630,579,'2005-06-27 18:40:45',2,'2006-02-15 21:30:53'),(2426,'2005-06-18 17:40:44',474,543,'2005-06-22 14:30:44',2,'2006-02-15 21:30:53'),(2427,'2005-06-18 17:45:00',4278,176,'2005-06-27 20:07:00',2,'2006-02-15 21:30:53'),(2428,'2005-06-18 17:47:34',3892,241,'2005-06-19 14:39:34',2,'2006-02-15 21:30:53'),(2429,'2005-06-18 17:48:28',3238,583,'2005-06-27 15:52:28',1,'2006-02-15 21:30:53'),(2430,'2005-06-18 17:51:46',1984,434,'2005-06-23 19:17:46',1,'2006-02-15 21:30:53'),(2431,'2005-06-18 17:53:03',1383,295,'2005-06-25 15:08:03',2,'2006-02-15 21:30:53'),(2432,'2005-06-18 17:59:18',4420,250,'2005-06-25 15:19:18',2,'2006-02-15 21:30:53'),(2433,'2005-06-18 18:10:17',937,356,'2005-06-23 14:46:17',2,'2006-02-15 21:30:53'),(2434,'2005-06-18 18:11:51',3739,12,'2005-06-23 12:52:51',2,'2006-02-15 21:30:53'),(2435,'2005-06-18 18:12:26',3548,173,'2005-06-22 13:43:26',2,'2006-02-15 21:30:53'),(2436,'2005-06-18 18:13:32',3328,534,'2005-06-21 13:33:32',2,'2006-02-15 21:30:53'),(2437,'2005-06-18 18:30:26',1799,454,'2005-06-21 18:36:26',1,'2006-02-15 21:30:53'),(2438,'2005-06-18 18:34:21',184,31,'2005-06-19 16:50:21',1,'2006-02-15 21:30:53'),(2439,'2005-06-18 18:35:04',909,39,'2005-06-21 19:47:04',2,'2006-02-15 21:30:53'),(2440,'2005-06-18 18:41:09',2866,380,'2005-06-22 12:46:09',1,'2006-02-15 21:30:53'),(2441,'2005-06-18 18:45:11',3148,593,'2005-06-20 00:42:11',1,'2006-02-15 21:30:53'),(2442,'2005-06-18 18:49:18',4045,364,'2005-06-22 16:18:18',1,'2006-02-15 21:30:53'),(2443,'2005-06-18 18:52:30',1622,233,'2005-06-24 21:27:30',1,'2006-02-15 21:30:53'),(2444,'2005-06-18 18:58:12',2233,576,'2005-06-27 20:48:12',1,'2006-02-15 21:30:53'),(2445,'2005-06-18 19:02:11',2887,98,'2005-06-23 22:25:11',1,'2006-02-15 21:30:53'),(2446,'2005-06-18 19:04:41',1283,466,'2005-06-27 17:10:41',2,'2006-02-15 21:30:53'),(2447,'2005-06-18 19:10:55',2353,523,'2005-06-27 16:35:55',1,'2006-02-15 21:30:53'),(2448,'2005-06-18 19:13:45',1642,308,'2005-06-27 14:43:45',1,'2006-02-15 21:30:53'),(2449,'2005-06-18 19:18:36',3630,498,'2005-06-27 23:49:36',1,'2006-02-15 21:30:53'),(2450,'2005-06-18 19:25:47',863,230,'2005-06-27 15:54:47',1,'2006-02-15 21:30:53'),(2451,'2005-06-18 19:28:02',835,24,'2005-06-23 16:41:02',1,'2006-02-15 21:30:53'),(2452,'2005-06-18 19:29:21',4318,77,'2005-06-26 22:27:21',1,'2006-02-15 21:30:53'),(2453,'2005-06-18 19:30:53',2562,588,'2005-06-20 17:22:53',1,'2006-02-15 21:30:53'),(2454,'2005-06-18 19:32:51',314,253,'2005-06-24 20:03:51',2,'2006-02-15 21:30:53'),(2455,'2005-06-18 19:33:06',870,241,'2005-06-21 15:21:06',1,'2006-02-15 21:30:53'),(2456,'2005-06-18 19:36:50',553,147,'2005-06-23 22:48:50',1,'2006-02-15 21:30:53'),(2457,'2005-06-18 19:38:20',1277,91,'2005-06-26 20:48:20',1,'2006-02-15 21:30:53'),(2458,'2005-06-18 19:39:05',599,572,'2005-06-21 13:54:05',2,'2006-02-15 21:30:53'),(2459,'2005-06-18 19:44:08',1024,185,'2005-06-23 19:14:08',2,'2006-02-15 21:30:53'),(2460,'2005-06-18 19:54:13',3933,553,'2005-06-27 22:36:13',2,'2006-02-15 21:30:53'),(2461,'2005-06-18 19:58:12',78,343,'2005-06-28 01:35:12',2,'2006-02-15 21:30:53'),(2462,'2005-06-18 20:00:15',2151,468,'2005-06-21 21:54:15',2,'2006-02-15 21:30:53'),(2463,'2005-06-18 20:01:43',1186,194,'2005-06-25 15:04:43',2,'2006-02-15 21:30:53'),(2464,'2005-06-18 20:06:05',463,380,'2005-06-20 19:22:05',1,'2006-02-15 21:30:53'),(2465,'2005-06-18 20:07:02',3783,160,'2005-06-25 20:55:02',1,'2006-02-15 21:30:53'),(2466,'2005-06-18 20:18:42',1356,427,'2005-06-20 01:32:42',1,'2006-02-15 21:30:53'),(2467,'2005-06-18 20:20:05',4387,177,'2005-06-20 17:01:05',1,'2006-02-15 21:30:53'),(2468,'2005-06-18 20:23:52',1833,382,'2005-06-23 14:34:52',1,'2006-02-15 21:30:53'),(2469,'2005-06-18 20:24:23',1993,137,'2005-06-27 15:39:23',1,'2006-02-15 21:30:53'),(2470,'2005-06-18 20:28:31',4319,40,'2005-06-25 18:48:31',1,'2006-02-15 21:30:53'),(2471,'2005-06-18 20:31:00',3399,183,'2005-06-24 18:01:00',2,'2006-02-15 21:30:53'),(2472,'2005-06-18 20:32:40',4556,70,'2005-06-20 00:40:40',2,'2006-02-15 21:30:53'),(2473,'2005-06-18 20:42:45',3876,221,'2005-06-19 20:17:45',1,'2006-02-15 21:30:53'),(2474,'2005-06-18 20:51:34',3450,151,'2005-06-25 01:39:34',1,'2006-02-15 21:30:53'),(2475,'2005-06-18 20:52:46',889,336,'2005-06-21 19:40:46',2,'2006-02-15 21:30:53'),(2476,'2005-06-18 20:57:12',3998,334,'2005-06-20 15:42:12',1,'2006-02-15 21:30:53'),(2477,'2005-06-18 20:58:46',2510,206,'2005-06-22 21:49:46',1,'2006-02-15 21:30:53'),(2478,'2005-06-18 21:01:21',2798,241,'2005-06-24 00:20:21',1,'2006-02-15 21:30:53'),(2479,'2005-06-18 21:03:08',1624,408,'2005-06-22 16:49:08',1,'2006-02-15 21:30:53'),(2480,'2005-06-18 21:04:09',4078,310,'2005-06-22 16:24:09',1,'2006-02-15 21:30:53'),(2481,'2005-06-18 21:08:30',800,322,'2005-06-23 02:35:30',2,'2006-02-15 21:30:53'),(2482,'2005-06-18 21:10:44',452,122,'2005-06-19 20:39:44',1,'2006-02-15 21:30:53'),(2483,'2005-06-18 21:22:23',4225,88,'2005-06-25 01:14:23',1,'2006-02-15 21:30:53'),(2484,'2005-06-18 21:25:23',1511,515,'2005-06-24 16:03:23',2,'2006-02-15 21:30:53'),(2485,'2005-06-18 21:26:03',1562,56,'2005-06-21 22:09:03',2,'2006-02-15 21:30:53'),(2486,'2005-06-18 21:26:56',268,15,'2005-06-22 23:42:56',1,'2006-02-15 21:30:53'),(2487,'2005-06-18 21:32:54',3683,374,'2005-06-23 21:11:54',2,'2006-02-15 21:30:53'),(2488,'2005-06-18 21:38:26',1338,403,'2005-06-24 02:08:26',2,'2006-02-15 21:30:53'),(2489,'2005-06-18 22:00:44',4012,382,'2005-06-22 02:06:44',2,'2006-02-15 21:30:53'),(2490,'2005-06-18 22:00:50',1934,402,'2005-06-19 23:45:50',2,'2006-02-15 21:30:53'),(2491,'2005-06-18 22:01:31',1779,316,'2005-06-26 02:46:31',1,'2006-02-15 21:30:53'),(2492,'2005-06-18 22:04:15',2858,237,'2005-06-23 21:58:15',1,'2006-02-15 21:30:53'),(2493,'2005-06-18 22:12:09',4121,269,'2005-06-27 23:44:09',1,'2006-02-15 21:30:53'),(2494,'2005-06-18 22:15:09',1313,434,'2005-06-25 17:23:09',1,'2006-02-15 21:30:53'),(2495,'2005-06-18 22:15:42',3826,338,'2005-06-21 23:21:42',1,'2006-02-15 21:30:53'),(2496,'2005-06-18 22:20:11',646,527,'2005-06-20 03:08:11',2,'2006-02-15 21:30:53'),(2497,'2005-06-18 22:50:40',2327,171,'2005-06-26 22:39:40',1,'2006-02-15 21:30:53'),(2498,'2005-06-18 22:56:26',2291,74,'2005-06-22 20:02:26',1,'2006-02-15 21:30:53'),(2499,'2005-06-18 23:01:36',3172,348,'2005-06-20 21:50:36',2,'2006-02-15 21:30:53'),(2500,'2005-06-18 23:07:12',4241,12,'2005-06-26 17:27:12',1,'2006-02-15 21:30:53'),(2501,'2005-06-18 23:10:11',1185,450,'2005-06-24 18:40:11',2,'2006-02-15 21:30:53'),(2502,'2005-06-18 23:12:13',2622,325,'2005-06-20 04:19:13',2,'2006-02-15 21:30:53'),(2503,'2005-06-18 23:17:19',2486,176,'2005-06-23 03:57:19',2,'2006-02-15 21:30:53'),(2504,'2005-06-18 23:19:53',1684,452,'2005-06-21 04:43:53',2,'2006-02-15 21:30:53'),(2505,'2005-06-18 23:28:27',1670,519,'2005-06-26 01:36:27',1,'2006-02-15 21:30:53'),(2506,'2005-06-18 23:29:53',2308,82,'2005-06-25 18:11:53',2,'2006-02-15 21:30:53'),(2507,'2005-06-18 23:39:22',3121,325,'2005-06-21 19:23:22',1,'2006-02-15 21:30:53'),(2508,'2005-06-18 23:43:58',4322,476,'2005-06-20 19:26:58',2,'2006-02-15 21:30:53'),(2509,'2005-06-18 23:44:08',4469,213,'2005-06-20 01:36:08',2,'2006-02-15 21:30:53'),(2510,'2005-06-18 23:44:21',3827,384,'2005-06-24 00:31:21',1,'2006-02-15 21:30:53'),(2511,'2005-06-18 23:45:30',1824,234,'2005-06-24 01:21:30',2,'2006-02-15 21:30:53'),(2512,'2005-06-18 23:48:47',4515,27,'2005-06-21 04:58:47',2,'2006-02-15 21:30:53'),(2513,'2005-06-18 23:53:15',3379,515,'2005-06-24 21:16:15',2,'2006-02-15 21:30:53'),(2514,'2005-06-18 23:56:44',2559,382,'2005-06-23 21:10:44',1,'2006-02-15 21:30:53'),(2515,'2005-06-18 23:57:31',3213,188,'2005-06-22 05:31:31',2,'2006-02-15 21:30:53'),(2516,'2005-06-19 00:03:28',2678,87,'2005-06-21 00:30:28',2,'2006-02-15 21:30:53'),(2517,'2005-06-19 00:11:26',53,74,'2005-06-25 02:19:26',1,'2006-02-15 21:30:53'),(2518,'2005-06-19 00:16:23',3503,86,'2005-06-25 19:28:23',2,'2006-02-15 21:30:53'),(2519,'2005-06-19 00:19:21',1172,128,'2005-06-25 01:46:21',1,'2006-02-15 21:30:53'),(2520,'2005-06-19 00:29:00',4181,446,'2005-06-28 04:36:00',1,'2006-02-15 21:30:53'),(2521,'2005-06-19 00:41:08',132,92,'2005-06-22 00:40:08',1,'2006-02-15 21:30:53'),(2522,'2005-06-19 00:43:42',550,579,'2005-06-28 04:26:42',1,'2006-02-15 21:30:53'),(2523,'2005-06-19 00:45:56',460,89,'2005-06-21 00:54:56',2,'2006-02-15 21:30:53'),(2524,'2005-06-19 00:48:11',441,465,'2005-06-25 01:46:11',2,'2006-02-15 21:30:53'),(2525,'2005-06-19 00:48:22',1307,365,'2005-06-24 19:10:22',2,'2006-02-15 21:30:53'),(2526,'2005-06-19 01:03:07',3309,500,'2005-06-28 06:57:07',1,'2006-02-15 21:30:53'),(2527,'2005-06-19 01:10:31',387,463,'2005-06-20 05:37:31',2,'2006-02-15 21:30:53'),(2528,'2005-06-19 01:14:12',1836,331,'2005-06-26 05:08:12',2,'2006-02-15 21:30:53'),(2529,'2005-06-19 01:18:27',2306,478,'2005-06-24 00:26:27',1,'2006-02-15 21:30:53'),(2530,'2005-06-19 01:20:00',4166,31,'2005-06-23 04:10:00',1,'2006-02-15 21:30:53'),(2531,'2005-06-19 01:20:49',768,368,'2005-06-22 01:50:49',2,'2006-02-15 21:30:53'),(2532,'2005-06-19 01:27:46',1870,26,'2005-06-20 02:15:46',1,'2006-02-15 21:30:53'),(2533,'2005-06-19 01:34:26',4564,187,'2005-06-22 20:19:26',1,'2006-02-15 21:30:53'),(2534,'2005-06-19 01:38:39',2540,517,'2005-06-23 00:16:39',1,'2006-02-15 21:30:53'),(2535,'2005-06-19 01:39:04',901,130,'2005-06-28 01:33:04',2,'2006-02-15 21:30:53'),(2536,'2005-06-19 01:41:34',4232,163,'2005-06-27 03:11:34',1,'2006-02-15 21:30:53'),(2537,'2005-06-19 01:52:21',3499,388,'2005-06-26 02:09:21',1,'2006-02-15 21:30:53'),(2538,'2005-06-19 01:56:59',1287,472,'2005-06-25 00:54:59',2,'2006-02-15 21:30:53'),(2539,'2005-06-19 01:58:39',4474,527,'2005-06-19 22:17:39',2,'2006-02-15 21:30:53'),(2540,'2005-06-19 02:04:48',4305,363,'2005-06-20 22:42:48',2,'2006-02-15 21:30:53'),(2541,'2005-06-19 02:08:10',129,360,'2005-06-23 23:32:10',1,'2006-02-15 21:30:53'),(2542,'2005-06-19 02:08:39',1446,67,'2005-06-26 20:25:39',1,'2006-02-15 21:30:53'),(2543,'2005-06-19 02:14:11',1729,58,'2005-06-21 00:40:11',2,'2006-02-15 21:30:53'),(2544,'2005-06-19 02:16:17',1465,558,'2005-06-22 21:45:17',1,'2006-02-15 21:30:53'),(2545,'2005-06-19 02:23:36',3237,413,'2005-06-20 03:17:36',2,'2006-02-15 21:30:53'),(2546,'2005-06-19 02:39:39',971,272,'2005-06-23 03:56:39',2,'2006-02-15 21:30:53'),(2547,'2005-06-19 02:44:17',4560,162,'2005-06-24 08:01:17',2,'2006-02-15 21:30:53'),(2548,'2005-06-19 02:45:35',4292,561,'2005-06-22 06:52:35',2,'2006-02-15 21:30:53'),(2549,'2005-06-19 02:46:39',3854,495,'2005-06-26 22:30:39',2,'2006-02-15 21:30:53'),(2550,'2005-06-19 02:49:55',1370,38,'2005-06-24 01:37:55',1,'2006-02-15 21:30:53'),(2551,'2005-06-19 02:51:04',2007,444,'2005-06-28 05:02:04',1,'2006-02-15 21:30:53'),(2552,'2005-06-19 03:01:29',664,389,'2005-06-28 04:13:29',1,'2006-02-15 21:30:53'),(2553,'2005-06-19 03:04:59',923,473,'2005-06-26 02:36:59',2,'2006-02-15 21:30:53'),(2554,'2005-06-19 03:05:38',3916,322,'2005-06-25 23:03:38',1,'2006-02-15 21:30:53'),(2555,'2005-06-19 03:07:02',260,191,'2005-06-25 05:25:02',2,'2006-02-15 21:30:53'),(2556,'2005-06-19 03:07:32',125,377,'2005-06-23 23:09:32',1,'2006-02-15 21:30:53'),(2557,'2005-06-19 03:08:51',4546,257,'2005-06-20 07:59:51',1,'2006-02-15 21:30:53'),(2558,'2005-06-19 03:09:16',2920,361,'2005-06-24 05:29:16',1,'2006-02-15 21:30:53'),(2559,'2005-06-19 03:09:46',4433,414,'2005-06-28 07:49:46',1,'2006-02-15 21:30:53'),(2560,'2005-06-19 03:12:42',3340,309,'2005-06-28 02:28:42',1,'2006-02-15 21:30:53'),(2561,'2005-06-19 03:14:52',4128,256,'2005-06-21 02:42:52',2,'2006-02-15 21:30:53'),(2562,'2005-06-19 03:15:05',51,265,'2005-06-21 08:26:05',2,'2006-02-15 21:30:53'),(2563,'2005-06-19 03:24:17',1935,41,'2005-06-23 04:08:17',2,'2006-02-15 21:30:53'),(2564,'2005-06-19 03:41:10',4008,408,'2005-06-24 03:10:10',1,'2006-02-15 21:30:53'),(2565,'2005-06-19 03:44:03',2347,128,'2005-06-24 01:26:03',2,'2006-02-15 21:30:53'),(2566,'2005-06-19 03:45:39',495,486,'2005-06-25 08:43:39',2,'2006-02-15 21:30:53'),(2567,'2005-06-19 04:04:46',216,496,'2005-06-19 23:39:46',2,'2006-02-15 21:30:53'),(2568,'2005-06-19 04:09:03',3032,190,'2005-06-24 23:24:03',1,'2006-02-15 21:30:53'),(2569,'2005-06-19 04:19:04',30,213,'2005-06-26 04:31:04',1,'2006-02-15 21:30:53'),(2570,'2005-06-19 04:20:13',1105,5,'2005-06-25 07:00:13',1,'2006-02-15 21:30:53'),(2571,'2005-06-19 04:20:14',1800,66,'2005-06-21 07:28:14',2,'2006-02-15 21:30:53'),(2572,'2005-06-19 04:21:26',2449,159,'2005-06-23 09:22:26',2,'2006-02-15 21:30:53'),(2573,'2005-06-19 04:23:18',3354,563,'2005-06-23 06:04:18',1,'2006-02-15 21:30:53'),(2574,'2005-06-19 04:23:52',3320,143,'2005-06-20 05:24:52',1,'2006-02-15 21:30:53'),(2575,'2005-06-19 04:32:52',354,336,'2005-06-24 09:37:52',1,'2006-02-15 21:30:53'),(2576,'2005-06-19 04:34:15',2928,559,'2005-06-28 10:02:15',2,'2006-02-15 21:30:53'),(2577,'2005-06-19 04:36:03',447,66,'2005-06-28 00:38:03',2,'2006-02-15 21:30:53'),(2578,'2005-06-19 04:40:06',1695,267,'2005-06-26 09:37:06',2,'2006-02-15 21:30:53'),(2579,'2005-06-19 04:40:44',3836,493,'2005-06-22 09:22:44',1,'2006-02-15 21:30:53'),(2580,'2005-06-19 04:44:30',2527,219,'2005-06-23 04:15:30',1,'2006-02-15 21:30:53'),(2581,'2005-06-19 04:54:13',376,456,'2005-06-23 23:28:13',2,'2006-02-15 21:30:53'),(2582,'2005-06-19 04:56:27',201,267,'2005-06-26 08:56:27',2,'2006-02-15 21:30:53'),(2583,'2005-06-19 05:01:40',3999,523,'2005-06-28 00:04:40',1,'2006-02-15 21:30:53'),(2584,'2005-06-19 05:02:36',3733,90,'2005-06-28 04:52:36',2,'2006-02-15 21:30:53'),(2585,'2005-06-19 05:05:03',91,406,'2005-06-20 09:28:03',1,'2006-02-15 21:30:53'),(2586,'2005-06-19 05:05:11',4104,537,'2005-06-27 00:23:11',1,'2006-02-15 21:30:53'),(2587,'2005-06-19 05:06:14',2188,331,'2005-06-24 10:50:14',2,'2006-02-15 21:30:53'),(2588,'2005-06-19 05:20:31',3626,143,'2005-06-22 04:20:31',2,'2006-02-15 21:30:53'),(2589,'2005-06-19 05:21:27',225,164,'2005-06-21 09:55:27',2,'2006-02-15 21:30:53'),(2590,'2005-06-19 05:31:40',3572,324,'2005-06-20 07:58:40',2,'2006-02-15 21:30:53'),(2591,'2005-06-19 05:32:22',4481,438,'2005-06-25 23:42:22',1,'2006-02-15 21:30:53'),(2592,'2005-06-19 05:36:54',282,208,'2005-06-21 08:44:54',1,'2006-02-15 21:30:53'),(2593,'2005-06-19 05:40:11',2031,556,'2005-06-28 08:11:11',1,'2006-02-15 21:30:53'),(2594,'2005-06-19 05:43:43',829,123,'2005-06-25 03:41:43',2,'2006-02-15 21:30:53'),(2595,'2005-06-19 05:43:55',3197,122,'2005-06-25 10:20:55',1,'2006-02-15 21:30:53'),(2596,'2005-06-19 05:48:26',2229,80,'2005-06-24 10:16:26',1,'2006-02-15 21:30:53'),(2597,'2005-06-19 05:53:46',2278,407,'2005-06-20 05:14:46',1,'2006-02-15 21:30:53'),(2598,'2005-06-19 05:59:57',2079,265,'2005-06-24 11:44:57',2,'2006-02-15 21:30:53'),(2599,'2005-06-19 06:06:07',461,171,'2005-06-27 01:10:07',1,'2006-02-15 21:30:53'),(2600,'2005-06-19 06:07:25',469,423,'2005-06-28 03:37:25',2,'2006-02-15 21:30:53'),(2601,'2005-06-19 06:09:44',2898,98,'2005-06-20 08:03:44',1,'2006-02-15 21:30:53'),(2602,'2005-06-19 06:10:08',4124,173,'2005-06-24 00:39:08',2,'2006-02-15 21:30:53'),(2603,'2005-06-19 06:21:25',587,222,'2005-06-26 03:19:25',1,'2006-02-15 21:30:53'),(2604,'2005-06-19 06:30:10',2889,28,'2005-06-25 11:16:10',2,'2006-02-15 21:30:53'),(2605,'2005-06-19 06:48:01',2342,38,'2005-06-25 07:00:01',1,'2006-02-15 21:30:53'),(2606,'2005-06-19 06:51:32',4133,364,'2005-06-21 03:15:32',2,'2006-02-15 21:30:53'),(2607,'2005-06-19 06:55:01',3922,340,'2005-06-25 03:21:01',2,'2006-02-15 21:30:53'),(2608,'2005-06-19 07:10:36',1618,132,'2005-06-24 13:09:36',1,'2006-02-15 21:30:53'),(2609,'2005-06-19 07:13:12',2254,383,'2005-06-28 12:30:12',2,'2006-02-15 21:30:53'),(2610,'2005-06-19 07:16:20',3845,542,'2005-06-25 09:39:20',2,'2006-02-15 21:30:53'),(2611,'2005-06-19 07:18:17',3682,301,'2005-06-21 10:19:17',1,'2006-02-15 21:30:53'),(2612,'2005-06-19 07:19:41',1691,287,'2005-06-25 11:10:41',1,'2006-02-15 21:30:53'),(2613,'2005-06-19 07:25:50',3830,179,'2005-06-21 03:04:50',1,'2006-02-15 21:30:53'),(2614,'2005-06-19 07:28:11',4147,145,'2005-06-22 12:33:11',1,'2006-02-15 21:30:53'),(2615,'2005-06-19 07:29:13',3810,578,'2005-06-27 12:50:13',1,'2006-02-15 21:30:53'),(2616,'2005-06-19 07:33:00',581,478,'2005-06-28 03:05:00',1,'2006-02-15 21:30:53'),(2617,'2005-06-19 07:48:31',204,313,'2005-06-27 11:56:31',1,'2006-02-15 21:30:53'),(2618,'2005-06-19 08:03:01',2465,310,'2005-06-24 03:23:01',2,'2006-02-15 21:30:53'),(2619,'2005-06-19 08:03:12',1848,350,'2005-06-21 05:02:12',2,'2006-02-15 21:30:53'),(2620,'2005-06-19 08:06:29',3183,94,'2005-06-24 11:42:29',1,'2006-02-15 21:30:53'),(2621,'2005-06-19 08:07:31',1746,439,'2005-06-28 05:36:31',1,'2006-02-15 21:30:53'),(2622,'2005-06-19 08:10:41',1393,573,'2005-06-28 10:44:41',2,'2006-02-15 21:30:53'),(2623,'2005-06-19 08:11:51',4477,12,'2005-06-26 12:28:51',2,'2006-02-15 21:30:53'),(2624,'2005-06-19 08:22:09',3071,32,'2005-06-27 11:13:09',1,'2006-02-15 21:30:53'),(2625,'2005-06-19 08:23:11',3946,25,'2005-06-26 09:52:11',2,'2006-02-15 21:30:53'),(2626,'2005-06-19 08:28:44',2816,450,'2005-06-24 03:58:44',1,'2006-02-15 21:30:53'),(2627,'2005-06-19 08:32:00',2779,592,'2005-06-24 04:31:00',2,'2006-02-15 21:30:53'),(2628,'2005-06-19 08:34:53',3917,3,'2005-06-28 04:19:53',2,'2006-02-15 21:30:53'),(2629,'2005-06-19 08:42:12',1810,458,'2005-06-28 03:38:12',2,'2006-02-15 21:30:53'),(2630,'2005-06-19 08:47:21',3904,236,'2005-06-25 09:31:21',1,'2006-02-15 21:30:53'),(2631,'2005-06-19 08:49:53',3471,39,'2005-06-26 03:25:53',1,'2006-02-15 21:30:53'),(2632,'2005-06-19 08:51:47',2274,574,'2005-06-23 07:13:47',2,'2006-02-15 21:30:53'),(2633,'2005-06-19 08:53:10',3462,68,'2005-06-20 07:56:10',1,'2006-02-15 21:30:53'),(2634,'2005-06-19 08:55:17',3687,318,'2005-06-20 11:44:17',2,'2006-02-15 21:30:53'),(2635,'2005-06-19 09:08:45',3332,105,'2005-06-26 09:20:45',1,'2006-02-15 21:30:53'),(2636,'2005-06-19 09:13:06',2102,253,'2005-06-25 07:47:06',2,'2006-02-15 21:30:53'),(2637,'2005-06-19 09:20:56',2736,327,'2005-06-27 10:09:56',2,'2006-02-15 21:30:53'),(2638,'2005-06-19 09:23:30',2944,295,'2005-06-26 14:56:30',1,'2006-02-15 21:30:53'),(2639,'2005-06-19 09:24:02',3971,116,'2005-06-21 14:16:02',2,'2006-02-15 21:30:53'),(2640,'2005-06-19 09:26:13',721,540,'2005-06-20 14:38:13',1,'2006-02-15 21:30:53'),(2641,'2005-06-19 09:38:33',231,374,'2005-06-22 09:55:33',1,'2006-02-15 21:30:53'),(2642,'2005-06-19 09:39:01',2065,4,'2005-06-25 08:33:01',1,'2006-02-15 21:30:53'),(2643,'2005-06-19 09:39:27',1928,318,'2005-06-26 10:27:27',2,'2006-02-15 21:30:53'),(2644,'2005-06-19 09:42:30',1923,309,'2005-06-27 07:23:30',2,'2006-02-15 21:30:53'),(2645,'2005-06-19 09:50:35',2284,181,'2005-06-28 06:47:35',2,'2006-02-15 21:30:53'),(2646,'2005-06-19 09:56:01',3511,275,'2005-06-21 04:15:01',2,'2006-02-15 21:30:53'),(2647,'2005-06-19 09:57:56',1954,54,'2005-06-22 15:55:56',1,'2006-02-15 21:30:53'),(2648,'2005-06-19 10:06:20',1620,31,'2005-06-21 04:30:20',2,'2006-02-15 21:30:53'),(2649,'2005-06-19 10:20:09',98,153,'2005-06-21 10:05:09',1,'2006-02-15 21:30:53'),(2650,'2005-06-19 10:21:45',4211,209,'2005-06-21 08:01:45',1,'2006-02-15 21:30:53'),(2651,'2005-06-19 10:22:56',2181,576,'2005-06-27 13:37:56',1,'2006-02-15 21:30:53'),(2652,'2005-06-19 10:35:26',3108,589,'2005-06-28 08:03:26',1,'2006-02-15 21:30:53'),(2653,'2005-06-19 10:36:53',3528,340,'2005-06-26 15:15:53',1,'2006-02-15 21:30:53'),(2654,'2005-06-19 10:37:54',3697,405,'2005-06-27 11:44:54',2,'2006-02-15 21:30:53'),(2655,'2005-06-19 10:38:42',1649,29,'2005-06-23 14:20:42',1,'2006-02-15 21:30:53'),(2656,'2005-06-19 10:42:33',559,280,'2005-06-24 08:31:33',2,'2006-02-15 21:30:53'),(2657,'2005-06-19 10:42:59',3595,19,'2005-06-28 12:37:59',1,'2006-02-15 21:30:53'),(2658,'2005-06-19 10:43:42',3281,156,'2005-06-24 16:23:42',1,'2006-02-15 21:30:53'),(2659,'2005-06-19 10:47:42',66,139,'2005-06-23 14:03:42',1,'2006-02-15 21:30:53'),(2660,'2005-06-19 10:50:02',4341,221,'2005-06-28 12:49:02',1,'2006-02-15 21:30:53'),(2661,'2005-06-19 10:50:52',3652,452,'2005-06-25 08:44:52',2,'2006-02-15 21:30:53'),(2662,'2005-06-19 10:53:42',3936,68,'2005-06-20 11:41:42',1,'2006-02-15 21:30:53'),(2663,'2005-06-19 10:54:00',1012,583,'2005-06-20 16:48:00',1,'2006-02-15 21:30:53'),(2664,'2005-06-19 11:11:23',3496,299,'2005-06-28 08:30:23',2,'2006-02-15 21:30:53'),(2665,'2005-06-19 11:12:35',4531,133,'2005-06-26 11:55:35',2,'2006-02-15 21:30:53'),(2666,'2005-06-19 11:17:12',1872,454,'2005-06-28 12:47:12',1,'2006-02-15 21:30:53'),(2667,'2005-06-19 11:28:46',1028,200,'2005-06-27 11:48:46',2,'2006-02-15 21:30:53'),(2668,'2005-06-19 11:28:47',3127,568,'2005-06-24 10:12:47',2,'2006-02-15 21:30:53'),(2669,'2005-06-19 11:28:52',2734,523,'2005-06-20 16:43:52',1,'2006-02-15 21:30:53'),(2670,'2005-06-19 11:30:16',3518,457,'2005-06-21 17:25:16',2,'2006-02-15 21:30:53'),(2671,'2005-06-19 11:33:11',2164,451,'2005-06-26 14:30:11',2,'2006-02-15 21:30:53'),(2672,'2005-06-19 11:42:04',1164,420,'2005-06-25 09:14:04',2,'2006-02-15 21:30:53'),(2673,'2005-06-19 11:42:20',2487,29,'2005-06-23 07:16:20',1,'2006-02-15 21:30:53'),(2674,'2005-06-19 11:47:59',3744,585,'2005-06-20 08:09:59',1,'2006-02-15 21:30:53'),(2675,'2005-06-19 11:52:15',3078,230,'2005-06-23 16:45:15',1,'2006-02-15 21:30:53'),(2676,'2005-06-19 11:54:57',3938,477,'2005-06-24 15:34:57',2,'2006-02-15 21:30:53'),(2677,'2005-06-19 12:01:59',4384,428,'2005-06-21 06:15:59',2,'2006-02-15 21:30:53'),(2678,'2005-06-19 12:12:23',4230,258,'2005-06-21 16:28:23',2,'2006-02-15 21:30:53'),(2679,'2005-06-19 12:12:30',1994,109,'2005-06-27 08:27:30',1,'2006-02-15 21:30:53'),(2680,'2005-06-19 12:13:37',865,114,'2005-06-27 15:15:37',1,'2006-02-15 21:30:53'),(2681,'2005-06-19 12:15:27',2704,196,'2005-06-21 16:48:27',2,'2006-02-15 21:30:53'),(2682,'2005-06-19 12:18:17',3609,538,'2005-06-28 14:09:17',1,'2006-02-15 21:30:53'),(2683,'2005-06-19 12:27:19',2860,241,'2005-06-21 16:26:19',2,'2006-02-15 21:30:53'),(2684,'2005-06-19 12:29:08',1225,17,'2005-06-28 08:50:08',2,'2006-02-15 21:30:53'),(2685,'2005-06-19 12:35:21',1170,283,'2005-06-22 16:58:21',1,'2006-02-15 21:30:53'),(2686,'2005-06-19 12:44:20',2686,68,'2005-06-20 16:00:20',1,'2006-02-15 21:30:53'),(2687,'2005-06-19 12:46:52',3152,254,'2005-06-23 06:58:52',2,'2006-02-15 21:30:53'),(2688,'2005-06-19 12:50:56',4281,309,'2005-06-28 17:58:56',2,'2006-02-15 21:30:53'),(2689,'2005-06-19 12:58:53',2478,567,'2005-06-24 17:35:53',1,'2006-02-15 21:30:53'),(2690,'2005-06-19 13:00:02',1381,391,'2005-06-27 14:29:02',1,'2006-02-15 21:30:53'),(2691,'2005-06-19 13:06:50',3469,242,'2005-06-26 15:56:50',1,'2006-02-15 21:30:53'),(2692,'2005-06-19 13:08:19',3162,388,'2005-06-21 16:45:19',1,'2006-02-15 21:30:53'),(2693,'2005-06-19 13:11:47',2570,107,'2005-06-27 11:17:47',1,'2006-02-15 21:30:53'),(2694,'2005-06-19 13:17:21',380,368,'2005-06-24 15:09:21',1,'2006-02-15 21:30:53'),(2695,'2005-06-19 13:25:53',190,208,'2005-06-24 17:12:53',2,'2006-02-15 21:30:53'),(2696,'2005-06-19 13:28:42',2110,597,'2005-06-28 14:06:42',2,'2006-02-15 21:30:53'),(2697,'2005-06-19 13:29:08',2271,448,'2005-06-23 13:21:08',1,'2006-02-15 21:30:53'),(2698,'2005-06-19 13:29:11',3900,420,'2005-06-20 07:31:11',2,'2006-02-15 21:30:53'),(2699,'2005-06-19 13:29:28',72,267,'2005-06-24 11:15:28',2,'2006-02-15 21:30:53'),(2700,'2005-06-19 13:31:52',928,180,'2005-06-27 19:30:52',1,'2006-02-15 21:30:53'),(2701,'2005-06-19 13:33:06',1623,29,'2005-06-28 15:11:06',2,'2006-02-15 21:30:53'),(2702,'2005-06-19 13:35:56',1736,329,'2005-06-20 14:07:56',2,'2006-02-15 21:30:53'),(2703,'2005-06-19 13:36:06',4080,319,'2005-06-28 08:26:06',2,'2006-02-15 21:30:53'),(2704,'2005-06-19 13:50:10',2026,246,'2005-06-26 18:25:10',2,'2006-02-15 21:30:53'),(2705,'2005-06-19 13:54:30',1191,562,'2005-06-20 12:31:30',1,'2006-02-15 21:30:53'),(2706,'2005-06-19 13:56:51',373,559,'2005-06-21 17:23:51',2,'2006-02-15 21:30:53'),(2707,'2005-06-19 13:57:08',4486,589,'2005-06-27 11:09:08',2,'2006-02-15 21:30:53'),(2708,'2005-06-19 13:59:05',2659,541,'2005-06-24 10:02:05',2,'2006-02-15 21:30:53'),(2709,'2005-06-19 14:00:26',2877,7,'2005-06-23 14:56:26',2,'2006-02-15 21:30:53'),(2710,'2005-06-19 14:03:56',2965,446,'2005-06-21 16:15:56',1,'2006-02-15 21:30:53'),(2711,'2005-06-19 14:12:22',3944,313,'2005-06-21 09:29:22',1,'2006-02-15 21:30:53'),(2712,'2005-06-19 14:20:13',3132,411,'2005-06-22 19:08:13',1,'2006-02-15 21:30:53'),(2713,'2005-06-19 14:23:09',3979,378,'2005-06-20 17:55:09',1,'2006-02-15 21:30:53'),(2714,'2005-06-19 14:26:09',2853,81,'2005-06-23 17:24:09',2,'2006-02-15 21:30:53'),(2715,'2005-06-19 14:29:35',2082,404,'2005-06-26 08:44:35',2,'2006-02-15 21:30:53'),(2716,'2005-06-19 14:40:17',944,252,'2005-06-27 17:45:17',2,'2006-02-15 21:30:53'),(2717,'2005-06-19 14:46:10',140,200,'2005-06-22 20:17:10',1,'2006-02-15 21:30:53'),(2718,'2005-06-19 14:49:42',4443,139,'2005-06-26 19:37:42',1,'2006-02-15 21:30:53'),(2719,'2005-06-19 14:50:19',1200,336,'2005-06-20 14:33:19',2,'2006-02-15 21:30:53'),(2720,'2005-06-19 14:51:55',3597,504,'2005-06-27 13:06:55',1,'2006-02-15 21:30:53'),(2721,'2005-06-19 14:53:24',3786,358,'2005-06-21 18:22:24',2,'2006-02-15 21:30:53'),(2722,'2005-06-19 14:55:17',952,45,'2005-06-25 13:11:17',2,'2006-02-15 21:30:53'),(2723,'2005-06-19 14:55:23',4317,277,'2005-06-20 14:28:23',1,'2006-02-15 21:30:53'),(2724,'2005-06-19 14:57:54',3879,103,'2005-06-22 16:31:54',2,'2006-02-15 21:30:53'),(2725,'2005-06-19 15:01:23',63,246,'2005-06-22 09:08:23',1,'2006-02-15 21:30:53'),(2726,'2005-06-19 15:02:20',2970,420,'2005-06-21 15:38:20',1,'2006-02-15 21:30:53'),(2727,'2005-06-19 15:02:39',3261,129,'2005-06-28 17:49:39',1,'2006-02-15 21:30:53'),(2728,'2005-06-19 15:04:04',775,408,'2005-06-22 12:22:04',2,'2006-02-15 21:30:53'),(2729,'2005-06-19 15:06:15',4449,510,'2005-06-27 17:58:15',2,'2006-02-15 21:30:53'),(2730,'2005-06-19 15:10:09',1264,30,'2005-06-28 13:05:09',1,'2006-02-15 21:30:53'),(2731,'2005-06-19 15:14:55',4218,138,'2005-06-27 14:30:55',2,'2006-02-15 21:30:53'),(2732,'2005-06-19 15:19:39',610,386,'2005-06-25 19:39:39',2,'2006-02-15 21:30:53'),(2733,'2005-06-19 15:21:53',1535,188,'2005-06-23 11:58:53',2,'2006-02-15 21:30:53'),(2734,'2005-06-19 15:36:27',794,204,'2005-06-20 13:44:27',2,'2006-02-15 21:30:53'),(2735,'2005-06-19 15:42:07',4550,29,'2005-06-22 17:28:07',1,'2006-02-15 21:30:53'),(2736,'2005-06-19 15:43:20',4510,359,'2005-06-21 13:03:20',1,'2006-02-15 21:30:53'),(2737,'2005-06-19 15:48:33',3131,513,'2005-06-26 18:44:33',2,'2006-02-15 21:30:53'),(2738,'2005-06-19 15:56:30',350,75,'2005-06-20 16:14:30',2,'2006-02-15 21:30:53'),(2739,'2005-06-19 15:58:38',213,212,'2005-06-27 15:01:38',2,'2006-02-15 21:30:53'),(2740,'2005-06-19 15:59:04',1534,92,'2005-06-28 12:18:04',2,'2006-02-15 21:30:53'),(2741,'2005-06-19 16:05:41',1662,36,'2005-06-20 20:48:41',1,'2006-02-15 21:30:53'),(2742,'2005-06-19 16:05:47',4154,187,'2005-06-26 21:34:47',1,'2006-02-15 21:30:53'),(2743,'2005-06-19 16:15:56',2611,35,'2005-06-23 12:30:56',1,'2006-02-15 21:30:53'),(2744,'2005-06-19 16:20:40',4511,368,'2005-06-22 11:44:40',2,'2006-02-15 21:30:53'),(2745,'2005-06-19 16:21:19',1253,26,'2005-06-21 22:07:19',2,'2006-02-15 21:30:53'),(2746,'2005-06-19 16:21:40',933,562,'2005-06-28 11:56:40',2,'2006-02-15 21:30:53'),(2747,'2005-06-19 16:22:07',1374,422,'2005-06-24 19:28:07',1,'2006-02-15 21:30:53'),(2748,'2005-06-19 16:22:26',511,473,'2005-06-21 21:55:26',1,'2006-02-15 21:30:53'),(2749,'2005-06-19 16:27:35',1540,358,'2005-06-25 21:06:35',2,'2006-02-15 21:30:53'),(2750,'2005-06-19 16:37:24',3775,197,'2005-06-20 13:55:24',2,'2006-02-15 21:30:53'),(2751,'2005-06-19 16:39:23',1291,148,'2005-06-25 13:57:23',1,'2006-02-15 21:30:53'),(2752,'2005-06-19 16:44:18',386,149,'2005-06-22 12:40:18',2,'2006-02-15 21:30:53'),(2753,'2005-06-19 16:44:35',2408,23,'2005-06-24 13:45:35',1,'2006-02-15 21:30:53'),(2754,'2005-06-19 16:55:59',1761,267,'2005-06-26 18:11:59',1,'2006-02-15 21:30:53'),(2755,'2005-06-19 16:56:31',946,506,'2005-06-27 12:02:31',2,'2006-02-15 21:30:53'),(2756,'2005-06-19 16:57:42',3264,144,'2005-06-26 15:30:42',2,'2006-02-15 21:30:53'),(2757,'2005-06-19 17:01:14',3814,243,'2005-06-28 11:38:14',1,'2006-02-15 21:30:53'),(2758,'2005-06-19 17:04:35',3558,423,'2005-06-26 14:45:35',2,'2006-02-15 21:30:53'),(2759,'2005-06-19 17:10:24',687,351,'2005-06-24 21:56:24',2,'2006-02-15 21:30:53'),(2760,'2005-06-19 17:16:33',2602,192,'2005-06-26 14:58:33',1,'2006-02-15 21:30:53'),(2761,'2005-06-19 17:22:17',2134,431,'2005-06-20 20:20:17',2,'2006-02-15 21:30:53'),(2762,'2005-06-19 17:22:31',3431,457,'2005-06-25 22:43:31',2,'2006-02-15 21:30:53'),(2763,'2005-06-19 17:23:34',3096,276,'2005-06-21 21:37:34',2,'2006-02-15 21:30:53'),(2764,'2005-06-19 17:27:25',1718,479,'2005-06-28 17:18:25',2,'2006-02-15 21:30:53'),(2765,'2005-06-19 17:34:39',1017,478,'2005-06-27 23:26:39',1,'2006-02-15 21:30:53'),(2766,'2005-06-19 17:45:15',3421,345,'2005-06-23 20:11:15',2,'2006-02-15 21:30:53'),(2767,'2005-06-19 17:46:35',4052,596,'2005-06-24 22:42:35',1,'2006-02-15 21:30:53'),(2768,'2005-06-19 17:46:52',3018,129,'2005-06-25 21:49:52',1,'2006-02-15 21:30:53'),(2769,'2005-06-19 17:52:14',1222,354,'2005-06-26 20:30:14',2,'2006-02-15 21:30:53'),(2770,'2005-06-19 17:54:22',3042,533,'2005-06-26 23:09:22',2,'2006-02-15 21:30:53'),(2771,'2005-06-19 17:54:48',40,262,'2005-06-27 17:14:48',1,'2006-02-15 21:30:53'),(2772,'2005-06-19 17:59:27',1221,520,'2005-06-23 17:52:27',1,'2006-02-15 21:30:53'),(2773,'2005-06-19 18:04:18',4155,505,'2005-06-28 23:52:18',1,'2006-02-15 21:30:53'),(2774,'2005-06-19 18:05:11',2809,299,'2005-06-21 16:21:11',2,'2006-02-15 21:30:53'),(2775,'2005-06-19 18:14:20',672,590,'2005-06-26 19:52:20',1,'2006-02-15 21:30:53'),(2776,'2005-06-19 18:16:24',1726,551,'2005-06-26 14:43:24',2,'2006-02-15 21:30:53'),(2777,'2005-06-19 18:16:26',4092,230,'2005-06-20 13:43:26',2,'2006-02-15 21:30:53'),(2778,'2005-06-19 18:18:12',3357,422,'2005-06-28 21:43:12',1,'2006-02-15 21:30:53'),(2779,'2005-06-19 18:19:07',1020,376,'2005-06-23 18:25:07',2,'2006-02-15 21:30:53'),(2780,'2005-06-19 18:19:33',1513,360,'2005-06-28 22:29:33',1,'2006-02-15 21:30:53'),(2781,'2005-06-19 18:24:42',1230,197,'2005-06-27 17:02:42',2,'2006-02-15 21:30:53'),(2782,'2005-06-19 18:25:07',3644,156,'2005-06-22 14:10:07',1,'2006-02-15 21:30:53'),(2783,'2005-06-19 18:29:10',2778,113,'2005-06-21 22:09:10',1,'2006-02-15 21:30:53'),(2784,'2005-06-19 18:40:29',2305,289,'2005-06-28 15:27:29',1,'2006-02-15 21:30:53'),(2785,'2005-06-19 18:43:57',826,137,'2005-06-24 15:36:57',2,'2006-02-15 21:30:53'),(2786,'2005-06-19 18:46:43',2255,594,'2005-06-22 16:52:43',1,'2006-02-15 21:30:53'),(2787,'2005-06-19 18:47:00',3371,307,'2005-06-22 20:22:00',2,'2006-02-15 21:30:53'),(2788,'2005-06-19 18:48:11',1457,171,'2005-06-21 13:32:11',1,'2006-02-15 21:30:53'),(2789,'2005-06-19 18:48:21',2398,514,'2005-06-21 21:50:21',1,'2006-02-15 21:30:53'),(2790,'2005-06-19 18:49:45',202,97,'2005-06-21 00:13:45',1,'2006-02-15 21:30:53'),(2791,'2005-06-19 18:51:27',2174,299,'2005-06-22 19:35:27',2,'2006-02-15 21:30:53'),(2792,'2005-06-19 18:52:25',3057,437,'2005-06-23 17:39:25',1,'2006-02-15 21:30:53'),(2793,'2005-06-19 18:52:37',732,419,'2005-06-25 19:45:37',2,'2006-02-15 21:30:53'),(2794,'2005-06-19 18:53:05',1957,85,'2005-06-22 13:15:05',1,'2006-02-15 21:30:53'),(2795,'2005-06-19 18:58:53',3694,129,'2005-06-28 18:56:53',1,'2006-02-15 21:30:53'),(2796,'2005-06-19 19:00:37',2337,209,'2005-06-25 17:18:37',2,'2006-02-15 21:30:53'),(2797,'2005-06-19 19:04:32',3222,486,'2005-06-20 22:43:32',1,'2006-02-15 21:30:53'),(2798,'2005-06-19 19:07:48',1343,180,'2005-06-23 00:09:48',2,'2006-02-15 21:30:53'),(2799,'2005-06-19 19:15:21',4579,576,'2005-06-21 21:35:21',1,'2006-02-15 21:30:53'),(2800,'2005-06-19 19:15:56',183,146,'2005-06-23 00:15:56',1,'2006-02-15 21:30:53'),(2801,'2005-06-19 19:18:09',4572,29,'2005-06-20 20:11:09',2,'2006-02-15 21:30:53'),(2802,'2005-06-19 19:18:17',4067,489,'2005-06-21 17:58:17',2,'2006-02-15 21:30:53'),(2803,'2005-06-19 19:18:27',103,120,'2005-06-27 21:48:27',1,'2006-02-15 21:30:53'),(2804,'2005-06-19 19:24:54',88,426,'2005-06-25 01:19:54',2,'2006-02-15 21:30:53'),(2805,'2005-06-19 19:29:17',2153,80,'2005-06-27 23:14:17',2,'2006-02-15 21:30:53'),(2806,'2005-06-19 19:30:48',2114,510,'2005-06-20 19:42:48',2,'2006-02-15 21:30:53'),(2807,'2005-06-19 19:32:53',2825,194,'2005-06-25 00:30:53',2,'2006-02-15 21:30:53'),(2808,'2005-06-19 19:34:45',65,325,'2005-06-27 14:49:45',1,'2006-02-15 21:30:53'),(2809,'2005-06-19 19:40:27',1786,44,'2005-06-27 15:28:27',2,'2006-02-15 21:30:53'),(2810,'2005-06-19 19:44:12',2558,67,'2005-06-20 19:41:12',2,'2006-02-15 21:30:53'),(2811,'2005-06-19 19:53:30',3890,457,'2005-06-22 23:21:30',2,'2006-02-15 21:30:53'),(2812,'2005-06-19 19:58:16',3016,211,'2005-06-26 15:26:16',1,'2006-02-15 21:30:53'),(2813,'2005-06-19 20:01:47',3420,284,'2005-06-27 01:51:47',1,'2006-02-15 21:30:53'),(2814,'2005-06-19 20:01:59',1783,10,'2005-06-26 01:28:59',2,'2006-02-15 21:30:53'),(2815,'2005-06-19 20:03:29',3046,27,'2005-06-25 22:50:29',2,'2006-02-15 21:30:53'),(2816,'2005-06-19 20:04:23',2180,94,'2005-06-20 21:09:23',2,'2006-02-15 21:30:53'),(2817,'2005-06-19 20:05:22',3476,510,'2005-06-24 23:29:22',1,'2006-02-15 21:30:53'),(2818,'2005-06-19 20:05:52',2376,497,'2005-06-22 01:01:52',2,'2006-02-15 21:30:53'),(2819,'2005-06-19 20:13:33',4100,82,'2005-06-26 16:44:33',1,'2006-02-15 21:30:53'),(2820,'2005-06-19 20:20:33',851,316,'2005-06-26 20:32:33',1,'2006-02-15 21:30:53'),(2821,'2005-06-19 20:26:52',2551,532,'2005-06-27 23:48:52',1,'2006-02-15 21:30:53'),(2822,'2005-06-19 20:29:24',3599,48,'2005-06-23 02:21:24',1,'2006-02-15 21:30:53'),(2823,'2005-06-19 20:30:21',3566,260,'2005-06-26 17:58:21',1,'2006-02-15 21:30:53'),(2824,'2005-06-19 20:31:45',2878,506,'2005-06-29 00:40:45',2,'2006-02-15 21:30:53'),(2825,'2005-06-19 20:32:19',2601,418,'2005-06-22 22:32:19',1,'2006-02-15 21:30:53'),(2826,'2005-06-19 20:41:35',2980,125,'2005-06-25 17:23:35',1,'2006-02-15 21:30:53'),(2827,'2005-06-19 20:50:01',2745,23,'2005-06-20 18:54:01',2,'2006-02-15 21:30:53'),(2828,'2005-06-19 20:51:33',3230,526,'2005-06-25 17:38:33',1,'2006-02-15 21:30:53'),(2829,'2005-06-19 21:11:30',2047,341,'2005-06-24 18:10:30',1,'2006-02-15 21:30:53'),(2830,'2005-06-19 21:14:33',2080,21,'2005-06-21 17:46:33',1,'2006-02-15 21:30:53'),(2831,'2005-06-19 21:17:06',4089,468,'2005-06-22 16:56:06',2,'2006-02-15 21:30:53'),(2832,'2005-06-19 21:21:53',828,593,'2005-06-28 23:00:53',1,'2006-02-15 21:30:53'),(2833,'2005-06-19 21:34:54',1976,232,'2005-06-28 16:21:54',1,'2006-02-15 21:30:53'),(2834,'2005-06-19 21:41:46',2876,122,'2005-06-24 20:47:46',1,'2006-02-15 21:30:53'),(2835,'2005-06-19 21:44:11',4411,89,'2005-06-26 16:46:11',2,'2006-02-15 21:30:53'),(2836,'2005-06-19 21:58:21',1453,306,'2005-06-27 00:41:21',2,'2006-02-15 21:30:53'),(2837,'2005-06-19 22:03:50',417,371,'2005-06-20 21:24:50',1,'2006-02-15 21:30:53'),(2838,'2005-06-19 22:06:06',143,292,'2005-06-25 22:30:06',1,'2006-02-15 21:30:53'),(2839,'2005-06-19 22:07:24',3856,256,'2005-06-23 16:37:24',2,'2006-02-15 21:30:53'),(2840,'2005-06-19 22:17:44',1102,236,'2005-06-26 00:36:44',2,'2006-02-15 21:30:53'),(2841,'2005-06-19 22:21:06',614,193,'2005-06-28 00:56:06',1,'2006-02-15 21:30:53'),(2842,'2005-06-19 22:34:20',4183,217,'2005-06-22 03:46:20',2,'2006-02-15 21:30:53'),(2843,'2005-06-19 22:36:39',1520,148,'2005-06-26 22:33:39',2,'2006-02-15 21:30:53'),(2844,'2005-06-19 22:40:12',4452,178,'2005-06-24 03:58:12',2,'2006-02-15 21:30:53'),(2845,'2005-06-19 22:46:37',3948,583,'2005-06-23 03:31:37',1,'2006-02-15 21:30:53'),(2846,'2005-06-19 22:52:14',651,193,'2005-06-22 17:12:14',1,'2006-02-15 21:30:53'),(2847,'2005-06-19 22:54:01',1247,148,'2005-06-27 23:05:01',2,'2006-02-15 21:30:53'),(2848,'2005-06-19 22:55:37',3449,19,'2005-06-25 23:10:37',1,'2006-02-15 21:30:53'),(2849,'2005-06-19 23:06:00',3628,283,'2005-06-25 18:36:00',1,'2006-02-15 21:30:53'),(2850,'2005-06-19 23:06:28',206,262,'2005-06-28 03:30:28',2,'2006-02-15 21:30:53'),(2851,'2005-06-19 23:07:03',2168,361,'2005-06-22 17:26:03',1,'2006-02-15 21:30:53'),(2852,'2005-06-19 23:08:50',2695,453,'2005-06-26 04:00:50',1,'2006-02-15 21:30:53'),(2853,'2005-06-19 23:09:41',2578,453,'2005-06-28 00:51:41',2,'2006-02-15 21:30:53'),(2854,'2005-06-19 23:11:48',4453,81,'2005-06-23 19:37:48',2,'2006-02-15 21:30:53'),(2855,'2005-06-19 23:11:49',3495,483,'2005-06-26 21:52:49',1,'2006-02-15 21:30:53'),(2856,'2005-06-19 23:13:04',1859,210,'2005-06-23 22:47:04',1,'2006-02-15 21:30:53'),(2857,'2005-06-19 23:15:15',2886,364,'2005-06-25 04:24:15',2,'2006-02-15 21:30:53'),(2858,'2005-06-19 23:17:11',2628,268,'2005-06-21 19:07:11',1,'2006-02-15 21:30:53'),(2859,'2005-06-19 23:18:42',126,147,'2005-06-20 22:38:42',1,'2006-02-15 21:30:53'),(2860,'2005-06-19 23:20:40',3045,107,'2005-06-21 04:59:40',1,'2006-02-15 21:30:53'),(2861,'2005-06-19 23:21:34',1489,116,'2005-06-26 17:32:34',1,'2006-02-15 21:30:53'),(2862,'2005-06-19 23:47:24',4260,52,'2005-06-23 03:39:24',2,'2006-02-15 21:30:53'),(2863,'2005-06-19 23:58:38',2410,228,'2005-06-23 23:27:38',2,'2006-02-15 21:30:53'),(2864,'2005-06-20 00:00:52',1056,493,'2005-06-26 04:21:52',2,'2006-02-15 21:30:53'),(2865,'2005-06-20 00:00:55',1569,10,'2005-06-21 02:20:55',1,'2006-02-15 21:30:53'),(2866,'2005-06-20 00:01:36',2718,44,'2005-06-20 21:39:36',1,'2006-02-15 21:30:53'),(2867,'2005-06-20 00:08:38',95,483,'2005-06-23 19:35:38',1,'2006-02-15 21:30:53'),(2868,'2005-06-20 00:08:58',1213,214,'2005-06-25 21:23:58',2,'2006-02-15 21:30:53'),(2869,'2005-06-20 00:09:25',1331,155,'2005-06-24 04:40:25',2,'2006-02-15 21:30:53'),(2870,'2005-06-20 00:17:46',214,467,'2005-06-28 20:21:46',1,'2006-02-15 21:30:53'),(2871,'2005-06-20 00:27:49',1731,443,'2005-06-29 01:36:49',1,'2006-02-15 21:30:53'),(2872,'2005-06-20 00:38:21',3779,240,'2005-06-26 19:56:21',1,'2006-02-15 21:30:53'),(2873,'2005-06-20 00:41:25',3321,160,'2005-06-25 02:06:25',1,'2006-02-15 21:30:53'),(2874,'2005-06-20 00:42:26',331,166,'2005-06-28 01:37:26',2,'2006-02-15 21:30:53'),(2875,'2005-06-20 00:47:18',3012,186,'2005-06-25 18:54:18',2,'2006-02-15 21:30:53'),(2876,'2005-06-20 01:06:34',3117,39,'2005-06-23 04:55:34',1,'2006-02-15 21:30:53'),(2877,'2005-06-20 01:07:16',485,267,'2005-06-24 01:05:16',1,'2006-02-15 21:30:53'),(2878,'2005-06-20 01:09:14',4120,88,'2005-06-21 21:40:14',2,'2006-02-15 21:30:53'),(2879,'2005-06-20 01:24:10',1920,583,'2005-06-28 20:12:10',2,'2006-02-15 21:30:53'),(2880,'2005-06-20 01:24:54',1700,193,'2005-06-23 02:42:54',2,'2006-02-15 21:30:53'),(2881,'2005-06-20 01:26:18',1391,307,'2005-06-26 23:42:18',1,'2006-02-15 21:30:53'),(2882,'2005-06-20 01:26:26',205,152,'2005-06-21 19:33:26',1,'2006-02-15 21:30:53'),(2883,'2005-06-20 01:29:10',585,320,'2005-06-28 06:12:10',1,'2006-02-15 21:30:53'),(2884,'2005-06-20 01:31:16',3384,319,'2005-06-21 04:03:16',2,'2006-02-15 21:30:53'),(2885,'2005-06-20 01:33:42',2701,330,'2005-06-22 22:23:42',1,'2006-02-15 21:30:53'),(2886,'2005-06-20 01:38:39',1755,154,'2005-06-23 04:28:39',2,'2006-02-15 21:30:53'),(2887,'2005-06-20 01:39:43',1073,453,'2005-06-25 05:22:43',2,'2006-02-15 21:30:53'),(2888,'2005-06-20 01:50:56',468,7,'2005-06-22 05:05:56',2,'2006-02-15 21:30:53'),(2889,'2005-06-20 01:54:08',151,213,'2005-06-23 06:33:08',1,'2006-02-15 21:30:53'),(2890,'2005-06-20 02:00:45',3437,392,'2005-06-27 21:12:45',1,'2006-02-15 21:30:53'),(2891,'2005-06-20 02:02:05',343,32,'2005-06-25 02:45:05',1,'2006-02-15 21:30:53'),(2892,'2005-06-20 02:06:39',2993,430,'2005-06-21 02:50:39',2,'2006-02-15 21:30:53'),(2893,'2005-06-20 02:22:08',397,153,'2005-06-26 21:01:08',2,'2006-02-15 21:30:53'),(2894,'2005-06-20 02:22:42',4316,76,'2005-06-22 00:38:42',1,'2006-02-15 21:30:53'),(2895,'2005-06-20 02:26:31',4445,141,'2005-06-27 23:42:31',2,'2006-02-15 21:30:53'),(2896,'2005-06-20 02:33:42',1086,40,'2005-06-26 05:29:42',2,'2006-02-15 21:30:53'),(2897,'2005-06-20 02:34:23',3464,107,'2005-06-25 05:29:23',1,'2006-02-15 21:30:53'),(2898,'2005-06-20 02:38:06',3106,178,'2005-06-29 08:18:06',2,'2006-02-15 21:30:53'),(2899,'2005-06-20 02:39:21',1919,459,'2005-06-23 06:47:21',1,'2006-02-15 21:30:53'),(2900,'2005-06-20 02:40:04',3407,294,'2005-06-27 20:47:04',2,'2006-02-15 21:30:53'),(2901,'2005-06-20 02:41:28',667,25,'2005-06-23 04:43:28',2,'2006-02-15 21:30:53'),(2902,'2005-06-20 02:45:35',2787,304,'2005-06-26 07:51:35',1,'2006-02-15 21:30:53'),(2903,'2005-06-20 02:49:01',3580,53,'2005-06-25 05:03:01',2,'2006-02-15 21:30:53'),(2904,'2005-06-20 02:54:06',2195,55,'2005-06-21 06:57:06',2,'2006-02-15 21:30:53'),(2905,'2005-06-20 02:56:16',3898,189,'2005-06-24 23:51:16',2,'2006-02-15 21:30:53'),(2906,'2005-06-20 03:04:56',1087,58,'2005-06-23 05:57:56',2,'2006-02-15 21:30:53'),(2907,'2005-06-20 03:15:09',2516,208,'2005-06-20 21:56:09',2,'2006-02-15 21:30:53'),(2908,'2005-06-20 03:16:52',517,91,'2005-06-22 08:46:52',1,'2006-02-15 21:30:53'),(2909,'2005-06-20 03:19:10',1701,451,'2005-06-25 06:06:10',2,'2006-02-15 21:30:53'),(2910,'2005-06-20 03:31:18',630,57,'2005-06-28 00:35:18',1,'2006-02-15 21:30:53'),(2911,'2005-06-20 03:32:37',3645,502,'2005-06-22 22:06:37',1,'2006-02-15 21:30:53'),(2912,'2005-06-20 03:32:45',1076,196,'2005-06-21 23:32:45',1,'2006-02-15 21:30:53'),(2913,'2005-06-20 03:42:27',3456,402,'2005-06-23 04:47:27',1,'2006-02-15 21:30:53'),(2914,'2005-06-20 03:43:18',2419,342,'2005-06-25 03:44:18',2,'2006-02-15 21:30:53'),(2915,'2005-06-20 03:57:17',1293,262,'2005-06-24 05:59:17',2,'2006-02-15 21:30:53'),(2916,'2005-06-20 04:01:04',3086,590,'2005-06-27 22:40:04',2,'2006-02-15 21:30:53'),(2917,'2005-06-20 04:08:35',647,451,'2005-06-24 01:17:35',1,'2006-02-15 21:30:53'),(2918,'2005-06-20 04:09:04',1985,215,'2005-06-21 10:07:04',1,'2006-02-15 21:30:53'),(2919,'2005-06-20 04:10:16',2835,509,'2005-06-27 06:34:16',1,'2006-02-15 21:30:53'),(2920,'2005-06-20 04:12:46',487,588,'2005-06-26 23:34:46',2,'2006-02-15 21:30:53'),(2921,'2005-06-20 04:13:04',1785,59,'2005-06-28 01:28:04',1,'2006-02-15 21:30:53'),(2922,'2005-06-20 04:13:47',1671,176,'2005-06-22 04:38:47',2,'2006-02-15 21:30:53'),(2923,'2005-06-20 04:16:07',109,29,'2005-06-21 05:04:07',1,'2006-02-15 21:30:53'),(2924,'2005-06-20 04:20:14',580,132,'2005-06-21 01:13:14',1,'2006-02-15 21:30:53'),(2925,'2005-06-20 04:23:49',804,301,'2005-06-22 04:37:49',2,'2006-02-15 21:30:53'),(2926,'2005-06-20 04:37:45',1055,379,'2005-06-26 02:17:45',1,'2006-02-15 21:30:53'),(2927,'2005-06-20 04:41:41',393,403,'2005-06-23 01:59:41',1,'2006-02-15 21:30:53'),(2928,'2005-06-20 04:43:45',1265,104,'2005-06-21 06:58:45',2,'2006-02-15 21:30:53'),(2929,'2005-06-20 04:47:39',3389,333,'2005-06-25 23:16:39',2,'2006-02-15 21:30:53'),(2930,'2005-06-20 04:50:29',3615,585,'2005-06-28 06:00:29',2,'2006-02-15 21:30:53'),(2931,'2005-06-20 04:50:45',3122,258,'2005-06-29 09:18:45',1,'2006-02-15 21:30:53'),(2932,'2005-06-20 04:51:19',4418,526,'2005-06-29 08:31:19',1,'2006-02-15 21:30:53'),(2933,'2005-06-20 04:52:23',4483,323,'2005-06-26 07:12:23',2,'2006-02-15 21:30:53'),(2934,'2005-06-20 05:05:53',697,228,'2005-06-22 02:44:53',1,'2006-02-15 21:30:53'),(2935,'2005-06-20 05:07:24',2735,384,'2005-06-28 09:17:24',2,'2006-02-15 21:30:53'),(2936,'2005-06-20 05:09:27',2675,330,'2005-06-26 10:16:27',2,'2006-02-15 21:30:53'),(2937,'2005-06-20 05:15:37',1998,15,'2005-06-27 02:45:37',1,'2006-02-15 21:30:53'),(2938,'2005-06-20 05:17:22',1795,504,'2005-06-26 09:38:22',1,'2006-02-15 21:30:53'),(2939,'2005-06-20 05:18:16',2638,203,'2005-06-26 06:56:16',1,'2006-02-15 21:30:53'),(2940,'2005-06-20 05:20:01',2504,73,'2005-06-28 06:11:01',2,'2006-02-15 21:30:53'),(2941,'2005-06-20 05:22:18',3632,135,'2005-06-26 07:40:18',2,'2006-02-15 21:30:53'),(2942,'2005-06-20 05:27:31',999,242,'2005-06-29 00:35:31',1,'2006-02-15 21:30:53'),(2943,'2005-06-20 05:43:05',2591,418,'2005-06-25 04:31:05',1,'2006-02-15 21:30:53'),(2944,'2005-06-20 05:43:42',1550,474,'2005-06-29 09:40:42',2,'2006-02-15 21:30:53'),(2945,'2005-06-20 05:49:27',4193,153,'2005-06-26 09:48:27',1,'2006-02-15 21:30:53'),(2946,'2005-06-20 05:50:40',3737,213,'2005-06-21 00:42:40',2,'2006-02-15 21:30:53'),(2947,'2005-06-20 06:00:21',4302,151,'2005-06-23 10:04:21',2,'2006-02-15 21:30:53'),(2948,'2005-06-20 06:02:35',4254,289,'2005-06-29 09:12:35',2,'2006-02-15 21:30:53'),(2949,'2005-06-20 06:05:53',375,78,'2005-06-29 03:19:53',2,'2006-02-15 21:30:53'),(2950,'2005-06-20 06:08:36',1438,561,'2005-06-27 07:45:36',2,'2006-02-15 21:30:53'),(2951,'2005-06-20 06:23:01',2903,404,'2005-06-24 00:26:01',2,'2006-02-15 21:30:53'),(2952,'2005-06-20 06:26:57',3759,13,'2005-06-22 11:51:57',1,'2006-02-15 21:30:53'),(2953,'2005-06-20 06:39:11',1829,540,'2005-06-26 06:19:11',1,'2006-02-15 21:30:53'),(2954,'2005-06-20 06:45:00',377,336,'2005-06-23 11:43:00',1,'2006-02-15 21:30:53'),(2955,'2005-06-20 06:46:35',2312,244,'2005-06-25 05:34:35',2,'2006-02-15 21:30:53'),(2956,'2005-06-20 06:47:23',2684,533,'2005-06-22 07:24:23',2,'2006-02-15 21:30:53'),(2957,'2005-06-20 06:53:47',4034,542,'2005-06-29 09:21:47',2,'2006-02-15 21:30:53'),(2958,'2005-06-20 06:56:20',1380,260,'2005-06-29 02:33:20',2,'2006-02-15 21:30:53'),(2959,'2005-06-20 07:07:54',4185,372,'2005-06-27 03:31:54',1,'2006-02-15 21:30:53'),(2960,'2005-06-20 07:10:09',3970,16,'2005-06-26 08:14:09',2,'2006-02-15 21:30:53'),(2961,'2005-06-20 07:29:15',4539,399,'2005-06-24 08:05:15',1,'2006-02-15 21:30:53'),(2962,'2005-06-20 07:31:55',2978,364,'2005-06-26 04:43:55',1,'2006-02-15 21:30:53'),(2963,'2005-06-20 07:33:09',1444,24,'2005-06-28 09:23:09',1,'2006-02-15 21:30:53'),(2964,'2005-06-20 07:33:29',1201,590,'2005-06-29 12:48:29',1,'2006-02-15 21:30:53'),(2965,'2005-06-20 07:33:38',27,46,'2005-06-29 11:45:38',1,'2006-02-15 21:30:53'),(2966,'2005-06-20 07:39:33',3483,511,'2005-06-29 07:48:33',1,'2006-02-15 21:30:53'),(2967,'2005-06-20 07:40:35',4243,311,'2005-06-29 05:50:35',2,'2006-02-15 21:30:53'),(2968,'2005-06-20 07:41:47',4415,252,'2005-06-23 04:27:47',1,'2006-02-15 21:30:53'),(2969,'2005-06-20 07:44:27',1748,418,'2005-06-22 06:12:27',2,'2006-02-15 21:30:53'),(2970,'2005-06-20 07:51:51',1167,449,'2005-06-28 10:14:51',2,'2006-02-15 21:30:53'),(2971,'2005-06-20 07:56:00',1585,410,'2005-06-27 11:38:00',2,'2006-02-15 21:30:53'),(2972,'2005-06-20 07:57:54',2232,531,'2005-06-21 12:48:54',1,'2006-02-15 21:30:53'),(2973,'2005-06-20 07:59:27',2626,96,'2005-06-24 12:31:27',1,'2006-02-15 21:30:53'),(2974,'2005-06-20 08:00:24',2322,472,'2005-06-25 05:10:24',2,'2006-02-15 21:30:53'),(2975,'2005-06-20 08:06:18',4534,46,'2005-06-21 08:01:18',1,'2006-02-15 21:30:53'),(2976,'2005-06-20 08:09:11',4210,55,'2005-06-21 10:45:11',1,'2006-02-15 21:30:53'),(2977,'2005-06-20 08:15:27',2645,571,'2005-06-29 04:30:27',2,'2006-02-15 21:30:53'),(2978,'2005-06-20 08:25:16',4364,548,'2005-06-23 05:42:16',1,'2006-02-15 21:30:53'),(2979,'2005-06-20 08:31:05',3961,589,'2005-06-27 12:25:05',1,'2006-02-15 21:30:53'),(2980,'2005-06-20 08:35:03',310,343,'2005-06-29 07:57:03',2,'2006-02-15 21:30:53'),(2981,'2005-06-20 08:35:17',522,387,'2005-06-28 09:14:17',1,'2006-02-15 21:30:53'),(2982,'2005-06-20 08:38:29',2574,130,'2005-06-28 13:21:29',1,'2006-02-15 21:30:53'),(2983,'2005-06-20 08:41:42',1349,322,'2005-06-29 04:02:42',2,'2006-02-15 21:30:53'),(2984,'2005-06-20 08:43:44',1819,435,'2005-06-22 03:08:44',2,'2006-02-15 21:30:53'),(2985,'2005-06-20 08:45:08',122,154,'2005-06-22 04:26:08',2,'2006-02-15 21:30:53'),(2986,'2005-06-20 08:50:28',478,556,'2005-06-26 05:24:28',2,'2006-02-15 21:30:53'),(2987,'2005-06-20 08:55:50',1531,349,'2005-06-28 13:02:50',2,'2006-02-15 21:30:53'),(2988,'2005-06-20 08:59:08',3160,557,'2005-06-28 04:31:08',2,'2006-02-15 21:30:53'),(2989,'2005-06-20 08:59:37',1586,56,'2005-06-22 03:27:37',2,'2006-02-15 21:30:53'),(2990,'2005-06-20 09:02:51',4559,18,'2005-06-29 13:19:51',2,'2006-02-15 21:30:53'),(2991,'2005-06-20 09:10:43',4308,472,'2005-06-23 13:04:43',1,'2006-02-15 21:30:53'),(2992,'2005-06-20 09:11:51',3347,439,'2005-06-24 05:59:51',1,'2006-02-15 21:30:53'),(2993,'2005-06-20 09:12:12',1527,40,'2005-06-22 13:36:12',2,'2006-02-15 21:30:53'),(2994,'2005-06-20 09:17:05',1290,163,'2005-06-29 04:41:05',1,'2006-02-15 21:30:53'),(2995,'2005-06-20 09:18:22',4544,573,'2005-06-26 14:31:22',1,'2006-02-15 21:30:53'),(2996,'2005-06-20 09:20:29',4064,500,'2005-06-27 09:18:29',1,'2006-02-15 21:30:53'),(2997,'2005-06-20 09:23:45',1449,519,'2005-06-29 08:15:45',1,'2006-02-15 21:30:53'),(2998,'2005-06-20 09:30:22',1288,380,'2005-06-24 06:31:22',2,'2006-02-15 21:30:53'),(2999,'2005-06-20 09:30:34',735,295,'2005-06-26 05:51:34',2,'2006-02-15 21:30:53'),(3000,'2005-06-20 09:32:33',549,50,'2005-06-22 07:45:33',1,'2006-02-15 21:30:53'),(3001,'2005-06-20 09:50:16',2941,393,'2005-06-28 05:13:16',2,'2006-02-15 21:30:53'),(3002,'2005-06-20 09:56:12',2749,266,'2005-06-24 12:15:12',2,'2006-02-15 21:30:53'),(3003,'2005-06-20 10:00:51',616,38,'2005-06-22 06:28:51',2,'2006-02-15 21:30:53'),(3004,'2005-06-20 10:04:36',2836,113,'2005-06-23 07:38:36',2,'2006-02-15 21:30:53'),(3005,'2005-06-20 10:10:29',286,598,'2005-06-28 15:48:29',2,'2006-02-15 21:30:53'),(3006,'2005-06-20 10:10:29',1677,133,'2005-06-22 07:26:29',2,'2006-02-15 21:30:53'),(3007,'2005-06-20 10:11:53',1950,7,'2005-06-25 04:51:53',2,'2006-02-15 21:30:53'),(3008,'2005-06-20 10:23:25',3383,202,'2005-06-26 11:00:25',2,'2006-02-15 21:30:53'),(3009,'2005-06-20 10:24:44',2721,280,'2005-06-23 13:39:44',1,'2006-02-15 21:30:53'),(3010,'2005-06-20 10:29:59',1298,567,'2005-06-27 06:52:59',1,'2006-02-15 21:30:53'),(3011,'2005-06-20 10:39:10',4376,147,'2005-06-28 07:02:10',2,'2006-02-15 21:30:53'),(3012,'2005-06-20 10:43:13',1392,206,'2005-06-28 10:07:13',2,'2006-02-15 21:30:53'),(3013,'2005-06-20 10:45:09',4146,290,'2005-06-26 04:55:09',1,'2006-02-15 21:30:53'),(3014,'2005-06-20 10:45:20',2179,434,'2005-06-23 06:29:20',1,'2006-02-15 21:30:53'),(3015,'2005-06-20 10:48:56',1311,23,'2005-06-26 11:30:56',2,'2006-02-15 21:30:53'),(3016,'2005-06-20 10:55:08',3514,558,'2005-06-24 14:05:08',1,'2006-02-15 21:30:53'),(3017,'2005-06-20 11:08:56',2513,151,'2005-06-28 16:26:56',1,'2006-02-15 21:30:53'),(3018,'2005-06-20 11:10:35',4150,112,'2005-06-25 07:17:35',2,'2006-02-15 21:30:53'),(3019,'2005-06-20 11:11:52',491,144,'2005-06-27 08:30:52',2,'2006-02-15 21:30:53'),(3020,'2005-06-20 11:12:04',4363,74,'2005-06-27 07:31:04',2,'2006-02-15 21:30:53'),(3021,'2005-06-20 11:13:01',120,62,'2005-06-28 16:15:01',2,'2006-02-15 21:30:53'),(3022,'2005-06-20 11:17:20',3745,466,'2005-06-26 13:15:20',2,'2006-02-15 21:30:53'),(3023,'2005-06-20 11:18:11',4304,106,'2005-06-21 12:43:11',1,'2006-02-15 21:30:53'),(3024,'2005-06-20 11:29:17',1966,328,'2005-06-27 12:51:17',2,'2006-02-15 21:30:53'),(3025,'2005-06-20 11:46:48',1309,293,'2005-06-22 08:43:48',1,'2006-02-15 21:30:53'),(3026,'2005-06-20 11:48:00',4032,347,'2005-06-21 12:51:00',2,'2006-02-15 21:30:53'),(3027,'2005-06-20 11:50:30',4028,397,'2005-06-25 15:58:30',2,'2006-02-15 21:30:53'),(3028,'2005-06-20 11:50:52',886,264,'2005-06-21 11:05:52',2,'2006-02-15 21:30:53'),(3029,'2005-06-20 11:51:30',327,317,'2005-06-25 16:42:30',1,'2006-02-15 21:30:53'),(3030,'2005-06-20 11:51:59',1543,395,'2005-06-24 10:51:59',1,'2006-02-15 21:30:53'),(3031,'2005-06-20 11:52:49',1184,491,'2005-06-22 07:00:49',1,'2006-02-15 21:30:53'),(3032,'2005-06-20 11:58:30',3734,172,'2005-06-24 09:49:30',1,'2006-02-15 21:30:53'),(3033,'2005-06-20 12:02:05',4422,107,'2005-06-26 15:58:05',1,'2006-02-15 21:30:53'),(3034,'2005-06-20 12:15:50',2755,296,'2005-06-24 06:21:50',2,'2006-02-15 21:30:53'),(3035,'2005-06-20 12:17:03',1223,62,'2005-06-26 17:42:03',2,'2006-02-15 21:30:53'),(3036,'2005-06-20 12:18:31',4463,399,'2005-06-29 09:52:31',1,'2006-02-15 21:30:53'),(3037,'2005-06-20 12:28:03',2033,434,'2005-06-21 08:21:03',1,'2006-02-15 21:30:53'),(3038,'2005-06-20 12:28:59',2919,27,'2005-06-25 07:48:59',1,'2006-02-15 21:30:53'),(3039,'2005-06-20 12:32:30',4098,186,'2005-06-21 07:38:30',1,'2006-02-15 21:30:53'),(3040,'2005-06-20 12:34:13',2568,162,'2005-06-21 12:33:13',1,'2006-02-15 21:30:53'),(3041,'2005-06-20 12:35:44',2676,459,'2005-06-23 18:28:44',2,'2006-02-15 21:30:53'),(3042,'2005-06-20 12:38:27',3103,291,'2005-06-26 11:18:27',1,'2006-02-15 21:30:53'),(3043,'2005-06-20 12:38:35',633,599,'2005-06-29 14:16:35',2,'2006-02-15 21:30:53'),(3044,'2005-06-20 12:38:49',3216,424,'2005-06-25 07:49:49',1,'2006-02-15 21:30:53'),(3045,'2005-06-20 12:42:00',3065,459,'2005-06-23 10:49:00',2,'2006-02-15 21:30:53'),(3046,'2005-06-20 12:42:59',471,559,'2005-06-26 17:40:59',2,'2006-02-15 21:30:53'),(3047,'2005-06-20 12:45:33',624,13,'2005-06-29 13:09:33',2,'2006-02-15 21:30:53'),(3048,'2005-06-20 12:49:55',4389,482,'2005-06-26 11:06:55',1,'2006-02-15 21:30:53'),(3049,'2005-06-20 12:51:01',518,403,'2005-06-29 10:53:01',1,'2006-02-15 21:30:53'),(3050,'2005-06-20 13:03:03',2397,557,'2005-06-29 07:22:03',1,'2006-02-15 21:30:53'),(3051,'2005-06-20 13:06:52',1408,65,'2005-06-25 13:03:52',2,'2006-02-15 21:30:53'),(3052,'2005-06-20 13:09:19',2359,329,'2005-06-29 11:55:19',2,'2006-02-15 21:30:53'),(3053,'2005-06-20 13:10:30',818,329,'2005-06-25 17:22:30',2,'2006-02-15 21:30:53'),(3054,'2005-06-20 13:16:41',2817,322,'2005-06-28 13:45:41',2,'2006-02-15 21:30:53'),(3055,'2005-06-20 13:19:58',1510,23,'2005-06-27 14:54:58',1,'2006-02-15 21:30:53'),(3056,'2005-06-20 13:20:58',2010,95,'2005-06-26 08:35:58',2,'2006-02-15 21:30:53'),(3057,'2005-06-20 13:22:48',1101,307,'2005-06-26 17:22:48',2,'2006-02-15 21:30:53'),(3058,'2005-06-20 13:28:35',938,137,'2005-06-28 13:57:35',2,'2006-02-15 21:30:53'),(3059,'2005-06-20 13:38:41',2911,266,'2005-06-21 10:13:41',2,'2006-02-15 21:30:53'),(3060,'2005-06-20 13:47:20',2075,446,'2005-06-25 16:00:20',2,'2006-02-15 21:30:53'),(3061,'2005-06-20 13:48:21',4202,330,'2005-06-22 17:36:21',2,'2006-02-15 21:30:53'),(3062,'2005-06-20 13:50:00',591,75,'2005-06-27 08:18:00',1,'2006-02-15 21:30:53'),(3063,'2005-06-20 13:52:03',3954,515,'2005-06-28 13:36:03',2,'2006-02-15 21:30:53'),(3064,'2005-06-20 13:53:13',2624,276,'2005-06-25 16:33:13',2,'2006-02-15 21:30:53'),(3065,'2005-06-20 13:53:53',1687,227,'2005-06-24 11:31:53',1,'2006-02-15 21:30:53'),(3066,'2005-06-20 13:55:41',1116,268,'2005-06-26 09:38:41',2,'2006-02-15 21:30:53'),(3067,'2005-06-20 13:59:21',3094,349,'2005-06-28 19:09:21',2,'2006-02-15 21:30:53'),(3068,'2005-06-20 14:02:22',1958,516,'2005-06-22 12:52:22',2,'2006-02-15 21:30:53'),(3069,'2005-06-20 14:13:00',1952,237,'2005-06-28 10:57:00',1,'2006-02-15 21:30:53'),(3070,'2005-06-20 14:15:39',3860,543,'2005-06-25 12:52:39',2,'2006-02-15 21:30:53'),(3071,'2005-06-20 14:20:42',1198,582,'2005-06-24 19:01:42',1,'2006-02-15 21:30:53'),(3072,'2005-06-20 14:21:31',4131,423,'2005-06-27 18:46:31',2,'2006-02-15 21:30:53'),(3073,'2005-06-20 14:33:26',3164,471,'2005-06-26 08:42:26',2,'2006-02-15 21:30:53'),(3074,'2005-06-20 14:41:41',1441,299,'2005-06-21 15:56:41',1,'2006-02-15 21:30:53'),(3075,'2005-06-20 14:52:19',4346,161,'2005-06-28 18:48:19',2,'2006-02-15 21:30:53'),(3076,'2005-06-20 15:01:19',1344,109,'2005-06-28 16:53:19',2,'2006-02-15 21:30:53'),(3077,'2005-06-20 15:05:18',1675,303,'2005-06-26 20:52:18',2,'2006-02-15 21:30:53'),(3078,'2005-06-20 15:09:48',3642,367,'2005-06-24 16:54:48',1,'2006-02-15 21:30:53'),(3079,'2005-06-20 15:13:40',2135,350,'2005-06-21 12:03:40',1,'2006-02-15 21:30:53'),(3080,'2005-06-20 15:22:32',118,377,'2005-06-24 11:08:32',1,'2006-02-15 21:30:53'),(3081,'2005-06-20 15:29:13',2071,342,'2005-06-24 21:00:13',2,'2006-02-15 21:30:53'),(3082,'2005-06-20 15:32:11',4431,164,'2005-06-28 13:08:11',1,'2006-02-15 21:30:53'),(3083,'2005-06-20 15:33:47',2896,257,'2005-06-26 16:14:47',2,'2006-02-15 21:30:53'),(3084,'2005-06-20 15:35:24',3578,514,'2005-06-23 19:11:24',1,'2006-02-15 21:30:53'),(3085,'2005-06-20 15:42:33',4282,166,'2005-06-21 16:51:33',2,'2006-02-15 21:30:53'),(3086,'2005-06-20 15:42:40',4437,377,'2005-06-25 19:21:40',1,'2006-02-15 21:30:53'),(3087,'2005-06-20 15:53:59',1305,111,'2005-06-27 10:54:59',2,'2006-02-15 21:30:53'),(3088,'2005-06-20 15:56:05',3049,384,'2005-06-29 13:02:05',1,'2006-02-15 21:30:53'),(3089,'2005-06-20 15:57:01',539,151,'2005-06-25 13:15:01',2,'2006-02-15 21:30:53'),(3090,'2005-06-20 16:00:19',3301,267,'2005-06-23 14:55:19',1,'2006-02-15 21:30:53'),(3091,'2005-06-20 16:02:59',854,383,'2005-06-22 21:30:59',2,'2006-02-15 21:30:53'),(3092,'2005-06-20 16:04:42',4344,347,'2005-06-27 19:54:42',1,'2006-02-15 21:30:53'),(3093,'2005-06-20 16:06:14',2534,556,'2005-06-22 13:22:14',2,'2006-02-15 21:30:53'),(3094,'2005-06-20 16:06:51',2048,114,'2005-06-24 13:23:51',1,'2006-02-15 21:30:53'),(3095,'2005-06-20 16:16:53',3937,298,'2005-06-22 10:35:53',2,'2006-02-15 21:30:53'),(3096,'2005-06-20 16:17:56',3851,79,'2005-06-24 10:17:56',2,'2006-02-15 21:30:53'),(3097,'2005-06-20 16:26:14',4337,280,'2005-06-23 14:46:14',1,'2006-02-15 21:30:53'),(3098,'2005-06-20 16:37:01',3409,498,'2005-06-22 22:24:01',1,'2006-02-15 21:30:53'),(3099,'2005-06-20 16:44:33',3756,380,'2005-06-27 12:17:33',2,'2006-02-15 21:30:53'),(3100,'2005-06-20 16:47:57',2428,487,'2005-06-26 16:59:57',1,'2006-02-15 21:30:53'),(3101,'2005-06-20 16:48:58',1738,384,'2005-06-27 18:13:58',2,'2006-02-15 21:30:53'),(3102,'2005-06-20 16:55:55',1144,522,'2005-06-29 13:49:55',1,'2006-02-15 21:30:53'),(3103,'2005-06-20 16:58:19',1877,553,'2005-06-25 21:18:19',1,'2006-02-15 21:30:53'),(3104,'2005-06-20 17:06:46',1490,196,'2005-06-28 13:18:46',2,'2006-02-15 21:30:53'),(3105,'2005-06-20 17:11:46',130,385,'2005-06-21 11:48:46',2,'2006-02-15 21:30:53'),(3106,'2005-06-20 17:18:06',2637,201,'2005-06-24 14:50:06',2,'2006-02-15 21:30:53'),(3107,'2005-06-20 17:26:05',4527,303,'2005-06-25 12:36:05',1,'2006-02-15 21:30:53'),(3108,'2005-06-20 17:28:43',2218,189,'2005-06-27 21:23:43',1,'2006-02-15 21:30:53'),(3109,'2005-06-20 17:33:55',977,93,'2005-06-22 23:09:55',1,'2006-02-15 21:30:53'),(3110,'2005-06-20 17:40:12',2008,333,'2005-06-24 17:09:12',1,'2006-02-15 21:30:53'),(3111,'2005-06-20 17:46:47',4494,579,'2005-06-29 19:45:47',1,'2006-02-15 21:30:53'),(3112,'2005-06-20 17:53:30',3725,35,'2005-06-26 16:03:30',1,'2006-02-15 21:30:53'),(3113,'2005-06-20 17:56:40',3620,517,'2005-06-23 14:45:40',1,'2006-02-15 21:30:53'),(3114,'2005-06-20 17:57:47',2388,8,'2005-06-21 19:18:47',2,'2006-02-15 21:30:53'),(3115,'2005-06-20 17:59:05',2193,457,'2005-06-26 13:28:05',1,'2006-02-15 21:30:53'),(3116,'2005-06-20 18:04:55',276,108,'2005-06-21 12:12:55',2,'2006-02-15 21:30:53'),(3117,'2005-06-20 18:05:15',2184,31,'2005-06-26 17:28:15',1,'2006-02-15 21:30:53'),(3118,'2005-06-20 18:05:57',1258,125,'2005-06-23 23:01:57',1,'2006-02-15 21:30:53'),(3119,'2005-06-20 18:11:44',683,296,'2005-06-27 16:14:44',2,'2006-02-15 21:30:53'),(3120,'2005-06-20 18:19:29',2530,107,'2005-06-23 23:40:29',1,'2006-02-15 21:30:53'),(3121,'2005-06-20 18:23:30',797,132,'2005-06-21 20:36:30',1,'2006-02-15 21:30:53'),(3122,'2005-06-20 18:25:57',2720,87,'2005-06-29 16:08:57',1,'2006-02-15 21:30:53'),(3123,'2005-06-20 18:26:14',1656,289,'2005-06-29 17:17:14',1,'2006-02-15 21:30:53'),(3124,'2005-06-20 18:28:19',3342,113,'2005-06-28 21:08:19',1,'2006-02-15 21:30:53'),(3125,'2005-06-20 18:31:58',3293,382,'2005-06-21 15:03:58',1,'2006-02-15 21:30:53'),(3126,'2005-06-20 18:38:22',1183,5,'2005-06-26 00:00:22',1,'2006-02-15 21:30:53'),(3127,'2005-06-20 18:39:43',1292,461,'2005-06-28 17:55:43',1,'2006-02-15 21:30:53'),(3128,'2005-06-20 18:41:47',189,543,'2005-06-24 20:54:47',2,'2006-02-15 21:30:53'),(3129,'2005-06-20 18:57:48',1789,495,'2005-06-28 13:45:48',1,'2006-02-15 21:30:53'),(3130,'2005-06-20 19:03:22',2569,341,'2005-06-29 18:05:22',2,'2006-02-15 21:30:53'),(3131,'2005-06-20 19:08:00',3678,146,'2005-06-24 20:59:00',2,'2006-02-15 21:30:53'),(3132,'2005-06-20 19:09:46',711,90,'2005-06-24 19:42:46',1,'2006-02-15 21:30:53'),(3133,'2005-06-20 19:18:32',4529,120,'2005-06-26 17:54:32',2,'2006-02-15 21:30:53'),(3134,'2005-06-20 19:29:09',1389,537,'2005-06-29 19:31:09',2,'2006-02-15 21:30:53'),(3135,'2005-06-20 19:33:52',1122,12,'2005-06-29 18:20:52',1,'2006-02-15 21:30:53'),(3136,'2005-06-20 19:39:08',3349,377,'2005-06-22 23:35:08',2,'2006-02-15 21:30:53'),(3137,'2005-06-20 19:41:28',786,505,'2005-06-28 00:32:28',1,'2006-02-15 21:30:53'),(3138,'2005-06-20 19:43:45',2265,570,'2005-06-26 20:41:45',1,'2006-02-15 21:30:53'),(3139,'2005-06-20 19:44:45',3474,354,'2005-06-23 16:24:45',1,'2006-02-15 21:30:53'),(3140,'2005-06-20 19:47:12',2936,53,'2005-06-24 23:24:12',1,'2006-02-15 21:30:53'),(3141,'2005-06-20 19:55:47',1806,398,'2005-06-30 00:31:47',1,'2006-02-15 21:30:53'),(3142,'2005-06-20 19:59:28',3926,9,'2005-06-28 19:51:28',2,'2006-02-15 21:30:53'),(3143,'2005-06-20 20:01:52',1355,215,'2005-06-26 19:26:52',2,'2006-02-15 21:30:53'),(3144,'2005-06-20 20:14:20',1300,114,'2005-06-30 01:46:20',1,'2006-02-15 21:30:53'),(3145,'2005-06-20 20:21:17',2211,144,'2005-06-22 14:44:17',1,'2006-02-15 21:30:53'),(3146,'2005-06-20 20:21:48',2249,339,'2005-06-29 22:57:48',2,'2006-02-15 21:30:53'),(3147,'2005-06-20 20:25:17',615,390,'2005-06-28 20:22:17',2,'2006-02-15 21:30:53'),(3148,'2005-06-20 20:27:18',4490,202,'2005-06-24 20:30:18',2,'2006-02-15 21:30:53'),(3149,'2005-06-20 20:34:55',3295,55,'2005-06-21 18:51:55',1,'2006-02-15 21:30:53'),(3150,'2005-06-20 20:35:28',94,34,'2005-06-26 01:01:28',1,'2006-02-15 21:30:53'),(3151,'2005-06-20 20:36:53',2976,77,'2005-06-25 18:56:53',1,'2006-02-15 21:30:53'),(3152,'2005-06-20 20:42:41',1022,246,'2005-06-28 21:12:41',1,'2006-02-15 21:30:53'),(3153,'2005-06-20 20:44:15',659,430,'2005-06-23 16:04:15',1,'2006-02-15 21:30:53'),(3154,'2005-06-20 20:44:40',3195,550,'2005-06-23 19:10:40',1,'2006-02-15 21:30:53'),(3155,'2005-06-20 21:02:38',458,450,'2005-06-27 19:34:38',1,'2006-02-15 21:30:53'),(3156,'2005-06-20 21:03:46',2217,365,'2005-06-21 23:32:46',2,'2006-02-15 21:30:53'),(3157,'2005-06-20 21:07:54',1899,245,'2005-06-23 16:01:54',1,'2006-02-15 21:30:53'),(3158,'2005-06-20 21:08:19',3461,592,'2005-06-29 18:59:19',1,'2006-02-15 21:30:53'),(3159,'2005-06-20 21:11:50',33,388,'2005-06-29 19:35:50',2,'2006-02-15 21:30:53'),(3160,'2005-06-20 21:20:51',4333,561,'2005-06-29 18:06:51',2,'2006-02-15 21:30:53'),(3161,'2005-06-20 21:21:01',1326,373,'2005-06-21 18:22:01',2,'2006-02-15 21:30:53'),(3162,'2005-06-20 21:21:15',3220,113,'2005-06-29 18:42:15',1,'2006-02-15 21:30:53'),(3163,'2005-06-20 21:22:13',2632,391,'2005-06-26 15:22:13',2,'2006-02-15 21:30:53'),(3164,'2005-06-20 21:29:00',155,270,'2005-06-27 15:50:00',1,'2006-02-15 21:30:53'),(3165,'2005-06-20 21:29:17',796,85,'2005-06-22 18:03:17',1,'2006-02-15 21:30:53'),(3166,'2005-06-20 21:32:32',1850,424,'2005-06-27 20:29:32',1,'2006-02-15 21:30:53'),(3167,'2005-06-20 21:42:29',353,464,'2005-06-22 00:36:29',2,'2006-02-15 21:30:53'),(3168,'2005-06-20 21:46:01',2407,446,'2005-06-22 20:40:01',1,'2006-02-15 21:30:53'),(3169,'2005-06-20 21:55:54',2437,50,'2005-06-25 19:45:54',1,'2006-02-15 21:30:53'),(3170,'2005-06-20 22:02:54',1306,421,'2005-06-29 00:41:54',2,'2006-02-15 21:30:53'),(3171,'2005-06-20 22:15:47',2838,140,'2005-06-24 18:14:47',1,'2006-02-15 21:30:53'),(3172,'2005-06-20 22:19:25',1758,31,'2005-06-24 17:18:25',2,'2006-02-15 21:30:53'),(3173,'2005-06-20 22:21:10',4306,33,'2005-06-27 19:41:10',2,'2006-02-15 21:30:53'),(3174,'2005-06-20 22:24:00',3331,107,'2005-06-22 21:22:00',2,'2006-02-15 21:30:53'),(3175,'2005-06-20 22:30:23',4093,249,'2005-06-30 03:28:23',2,'2006-02-15 21:30:53'),(3176,'2005-06-20 22:31:54',1982,371,'2005-06-25 02:58:54',1,'2006-02-15 21:30:53'),(3177,'2005-06-20 22:32:44',2546,300,'2005-06-22 23:01:44',1,'2006-02-15 21:30:53'),(3178,'2005-06-20 22:35:12',3517,79,'2005-06-23 19:39:12',1,'2006-02-15 21:30:53'),(3179,'2005-06-20 22:37:59',2214,163,'2005-06-26 22:26:59',2,'2006-02-15 21:30:53'),(3180,'2005-06-20 22:48:44',3997,162,'2005-06-21 21:25:44',1,'2006-02-15 21:30:53'),(3181,'2005-06-20 22:51:02',3473,238,'2005-06-27 21:21:02',1,'2006-02-15 21:30:53'),(3182,'2005-06-20 22:52:18',4017,15,'2005-06-21 21:00:18',2,'2006-02-15 21:30:53'),(3183,'2005-06-20 22:55:55',4397,129,'2005-06-23 17:22:55',1,'2006-02-15 21:30:53'),(3184,'2005-06-20 22:57:44',3179,457,'2005-06-29 20:57:44',1,'2006-02-15 21:30:53'),(3185,'2005-06-20 22:58:01',601,234,'2005-06-27 00:26:01',1,'2006-02-15 21:30:53'),(3186,'2005-06-20 23:04:20',3198,406,'2005-06-29 02:56:20',2,'2006-02-15 21:30:53'),(3187,'2005-06-20 23:06:07',4357,150,'2005-06-27 01:14:07',2,'2006-02-15 21:30:53'),(3188,'2005-06-20 23:10:27',2471,522,'2005-06-25 19:37:27',2,'2006-02-15 21:30:53'),(3189,'2005-06-20 23:19:33',1502,538,'2005-06-24 17:46:33',1,'2006-02-15 21:30:53'),(3190,'2005-06-20 23:27:15',351,200,'2005-06-28 01:22:15',2,'2006-02-15 21:30:53'),(3191,'2005-06-20 23:46:39',4358,522,'2005-06-25 03:21:39',2,'2006-02-15 21:30:53'),(3192,'2005-06-20 23:49:12',3713,11,'2005-06-24 03:00:12',1,'2006-02-15 21:30:53'),(3193,'2005-06-20 23:52:30',3176,260,'2005-06-22 21:21:30',1,'2006-02-15 21:30:53'),(3194,'2005-06-20 23:59:57',1835,432,'2005-06-24 19:21:57',1,'2006-02-15 21:30:53'),(3195,'2005-06-21 00:02:10',2383,165,'2005-06-21 23:11:10',2,'2006-02-15 21:30:53'),(3196,'2005-06-21 00:02:28',1575,52,'2005-06-22 23:08:28',1,'2006-02-15 21:30:53'),(3197,'2005-06-21 00:07:23',1811,362,'2005-06-23 00:53:23',2,'2006-02-15 21:30:53'),(3198,'2005-06-21 00:08:54',1626,295,'2005-06-29 02:11:54',2,'2006-02-15 21:30:53'),(3199,'2005-06-21 00:12:40',3824,234,'2005-06-27 23:26:40',1,'2006-02-15 21:30:53'),(3200,'2005-06-21 00:22:47',4117,221,'2005-06-27 05:52:47',2,'2006-02-15 21:30:53'),(3201,'2005-06-21 00:30:26',6,597,'2005-06-28 03:42:26',1,'2006-02-15 21:30:53'),(3202,'2005-06-21 00:33:47',2725,273,'2005-06-24 04:05:47',2,'2006-02-15 21:30:53'),(3203,'2005-06-21 00:34:56',442,158,'2005-06-29 23:30:56',1,'2006-02-15 21:30:53'),(3204,'2005-06-21 00:37:50',2848,336,'2005-06-22 23:46:50',1,'2006-02-15 21:30:53'),(3205,'2005-06-21 00:38:47',2964,31,'2005-06-21 22:49:47',1,'2006-02-15 21:30:53'),(3206,'2005-06-21 00:39:39',2196,350,'2005-06-22 05:12:39',1,'2006-02-15 21:30:53'),(3207,'2005-06-21 00:43:16',4020,86,'2005-06-24 22:13:16',1,'2006-02-15 21:30:53'),(3208,'2005-06-21 00:50:03',3169,229,'2005-06-24 06:15:03',2,'2006-02-15 21:30:53'),(3209,'2005-06-21 00:51:06',287,307,'2005-06-22 21:49:06',2,'2006-02-15 21:30:53'),(3210,'2005-06-21 01:00:25',467,75,'2005-06-23 06:10:25',2,'2006-02-15 21:30:53'),(3211,'2005-06-21 01:01:29',1150,415,'2005-06-23 04:05:29',1,'2006-02-15 21:30:53'),(3212,'2005-06-21 01:04:35',4178,21,'2005-06-30 00:10:35',2,'2006-02-15 21:30:53'),(3213,'2005-06-21 01:05:19',3832,534,'2005-06-27 21:55:19',2,'2006-02-15 21:30:53'),(3214,'2005-06-21 01:08:26',776,142,'2005-06-23 03:24:26',2,'2006-02-15 21:30:53'),(3215,'2005-06-21 01:11:32',4140,279,'2005-06-26 19:42:32',1,'2006-02-15 21:30:53'),(3216,'2005-06-21 01:19:37',719,534,'2005-06-29 06:45:37',2,'2006-02-15 21:30:53'),(3217,'2005-06-21 01:28:12',1027,463,'2005-06-25 02:51:12',2,'2006-02-15 21:30:53'),(3218,'2005-06-21 01:38:09',1828,117,'2005-06-23 02:00:09',1,'2006-02-15 21:30:53'),(3219,'2005-06-21 01:43:26',3024,129,'2005-06-28 23:50:26',2,'2006-02-15 21:30:53'),(3220,'2005-06-21 01:46:25',1880,574,'2005-06-26 07:44:25',2,'2006-02-15 21:30:53'),(3221,'2005-06-21 01:49:47',245,454,'2005-06-25 06:31:47',1,'2006-02-15 21:30:53'),(3222,'2005-06-21 01:50:29',4023,501,'2005-06-27 00:52:29',2,'2006-02-15 21:30:53'),(3223,'2005-06-21 02:06:45',1033,299,'2005-06-22 07:16:45',2,'2006-02-15 21:30:53'),(3224,'2005-06-21 02:11:36',3318,173,'2005-06-23 21:17:36',1,'2006-02-15 21:30:53'),(3225,'2005-06-21 02:16:55',1003,448,'2005-06-27 05:39:55',2,'2006-02-15 21:30:53'),(3226,'2005-06-21 02:18:14',4079,576,'2005-06-26 22:32:14',2,'2006-02-15 21:30:53'),(3227,'2005-06-21 02:18:25',1156,568,'2005-06-27 00:59:25',1,'2006-02-15 21:30:53'),(3228,'2005-06-21 02:20:24',2489,535,'2005-06-29 00:50:24',2,'2006-02-15 21:30:53'),(3229,'2005-06-21 02:20:41',2301,81,'2005-06-26 00:39:41',1,'2006-02-15 21:30:53'),(3230,'2005-06-21 02:23:16',215,83,'2005-06-22 01:37:16',2,'2006-02-15 21:30:53'),(3231,'2005-06-21 02:25:00',237,28,'2005-06-23 05:46:00',2,'2006-02-15 21:30:53'),(3232,'2005-06-21 02:30:37',1972,555,'2005-06-29 03:10:37',1,'2006-02-15 21:30:53'),(3233,'2005-06-21 02:39:31',3542,353,'2005-06-28 05:23:31',2,'2006-02-15 21:30:53'),(3234,'2005-06-21 02:39:44',3252,459,'2005-06-29 07:27:44',1,'2006-02-15 21:30:53'),(3235,'2005-06-21 02:46:17',212,49,'2005-06-22 20:58:17',1,'2006-02-15 21:30:53'),(3236,'2005-06-21 02:47:43',1492,550,'2005-06-29 08:04:43',2,'2006-02-15 21:30:53'),(3237,'2005-06-21 02:47:56',4399,466,'2005-06-27 03:16:56',2,'2006-02-15 21:30:53'),(3238,'2005-06-21 02:48:21',2732,77,'2005-06-23 04:43:21',1,'2006-02-15 21:30:53'),(3239,'2005-06-21 02:48:40',3402,328,'2005-06-22 02:49:40',2,'2006-02-15 21:30:53'),(3240,'2005-06-21 02:53:17',2938,405,'2005-06-30 03:25:17',2,'2006-02-15 21:30:53'),(3241,'2005-06-21 02:54:32',1442,499,'2005-06-26 21:56:32',2,'2006-02-15 21:30:53'),(3242,'2005-06-21 02:56:24',1421,562,'2005-06-29 21:41:24',2,'2006-02-15 21:30:53'),(3243,'2005-06-21 03:00:11',2556,426,'2005-06-25 21:53:11',1,'2006-02-15 21:30:53'),(3244,'2005-06-21 03:01:10',291,53,'2005-06-24 06:59:10',2,'2006-02-15 21:30:53'),(3245,'2005-06-21 03:06:11',2057,358,'2005-06-25 08:06:11',2,'2006-02-15 21:30:53'),(3246,'2005-06-21 03:10:01',4432,41,'2005-06-28 00:46:01',1,'2006-02-15 21:30:53'),(3247,'2005-06-21 03:12:15',1406,277,'2005-06-27 00:44:15',1,'2006-02-15 21:30:53'),(3248,'2005-06-21 03:12:21',3656,78,'2005-06-28 03:54:21',2,'2006-02-15 21:30:53'),(3249,'2005-06-21 03:13:19',703,410,'2005-06-29 04:04:19',2,'2006-02-15 21:30:53'),(3250,'2005-06-21 03:16:36',736,467,'2005-06-29 00:53:36',2,'2006-02-15 21:30:53'),(3251,'2005-06-21 03:20:37',1414,317,'2005-06-23 04:54:37',2,'2006-02-15 21:30:53'),(3252,'2005-06-21 03:25:26',2009,213,'2005-06-24 00:38:26',2,'2006-02-15 21:30:53'),(3253,'2005-06-21 03:25:37',1906,405,'2005-06-27 02:46:37',2,'2006-02-15 21:30:53'),(3254,'2005-06-21 03:27:10',3893,472,'2005-06-22 22:01:10',2,'2006-02-15 21:30:53'),(3255,'2005-06-21 03:39:52',2564,482,'2005-06-24 04:02:52',1,'2006-02-15 21:30:53'),(3256,'2005-06-21 03:45:42',1235,319,'2005-06-30 02:51:42',2,'2006-02-15 21:30:53'),(3257,'2005-06-21 03:47:19',3975,263,'2005-06-28 01:24:19',2,'2006-02-15 21:30:53'),(3258,'2005-06-21 03:53:58',4417,241,'2005-06-22 22:49:58',2,'2006-02-15 21:30:53'),(3259,'2005-06-21 03:57:15',2751,478,'2005-06-24 03:32:15',1,'2006-02-15 21:30:53'),(3260,'2005-06-21 03:59:13',3627,380,'2005-06-23 03:29:13',1,'2006-02-15 21:30:53'),(3261,'2005-06-21 04:07:41',2029,169,'2005-06-24 06:25:41',2,'2006-02-15 21:30:53'),(3262,'2005-06-21 04:08:43',3773,9,'2005-06-28 02:55:43',1,'2006-02-15 21:30:53'),(3263,'2005-06-21 04:15:52',3491,118,'2005-06-24 02:19:52',2,'2006-02-15 21:30:53'),(3264,'2005-06-21 04:19:03',1666,340,'2005-06-23 01:29:03',1,'2006-02-15 21:30:53'),(3265,'2005-06-21 04:23:13',3637,437,'2005-06-28 03:37:13',1,'2006-02-15 21:30:53'),(3266,'2005-06-21 04:49:07',2533,175,'2005-06-26 05:19:07',2,'2006-02-15 21:30:53'),(3267,'2005-06-21 04:55:21',1118,134,'2005-06-29 23:46:21',1,'2006-02-15 21:30:53'),(3268,'2005-06-21 04:55:49',4366,329,'2005-06-30 00:23:49',2,'2006-02-15 21:30:53'),(3269,'2005-06-21 05:06:30',3828,17,'2005-06-27 09:26:30',2,'2006-02-15 21:30:53'),(3270,'2005-06-21 05:07:31',1578,86,'2005-06-22 07:45:31',2,'2006-02-15 21:30:53'),(3271,'2005-06-21 05:16:10',4191,196,'2005-06-27 10:46:10',1,'2006-02-15 21:30:53'),(3272,'2005-06-21 05:18:27',1090,550,'2005-06-30 02:51:27',1,'2006-02-15 21:30:53'),(3273,'2005-06-21 05:24:17',3538,104,'2005-06-23 01:21:17',2,'2006-02-15 21:30:53'),(3274,'2005-06-21 05:30:36',2156,277,'2005-06-24 05:12:36',1,'2006-02-15 21:30:53'),(3275,'2005-06-21 05:33:04',2320,368,'2005-06-30 00:37:04',2,'2006-02-15 21:30:53'),(3276,'2005-06-21 05:35:52',1890,425,'2005-06-29 03:26:52',2,'2006-02-15 21:30:53'),(3277,'2005-06-21 05:36:37',1330,229,'2005-06-29 10:54:37',1,'2006-02-15 21:30:53'),(3278,'2005-06-21 05:41:30',2832,554,'2005-06-22 03:43:30',1,'2006-02-15 21:30:53'),(3279,'2005-06-21 06:05:53',1672,462,'2005-06-25 09:40:53',1,'2006-02-15 21:30:53'),(3280,'2005-06-21 06:08:12',661,229,'2005-06-24 09:34:12',1,'2006-02-15 21:30:53'),(3281,'2005-06-21 06:08:47',4006,363,'2005-06-24 11:22:47',1,'2006-02-15 21:30:53'),(3282,'2005-06-21 06:18:42',1676,224,'2005-06-28 09:18:42',1,'2006-02-15 21:30:53'),(3283,'2005-06-21 06:19:07',3988,372,'2005-06-26 10:59:07',2,'2006-02-15 21:30:53'),(3284,'2005-06-21 06:24:45',4566,1,'2005-06-28 03:28:45',1,'2006-02-15 21:30:53'),(3285,'2005-06-21 06:30:13',948,481,'2005-06-23 10:31:13',2,'2006-02-15 21:30:53'),(3286,'2005-06-21 06:31:29',742,577,'2005-06-25 00:46:29',2,'2006-02-15 21:30:53'),(3287,'2005-06-21 06:32:39',4406,62,'2005-06-24 09:29:39',2,'2006-02-15 21:30:53'),(3288,'2005-06-21 06:36:59',1961,299,'2005-06-30 06:50:59',1,'2006-02-15 21:30:53'),(3289,'2005-06-21 06:41:48',2248,115,'2005-06-30 00:54:48',1,'2006-02-15 21:30:53'),(3290,'2005-06-21 06:45:34',2727,293,'2005-06-28 09:44:34',1,'2006-02-15 21:30:53'),(3291,'2005-06-21 06:55:36',3866,274,'2005-06-29 03:41:36',1,'2006-02-15 21:30:53'),(3292,'2005-06-21 06:59:11',3288,412,'2005-06-23 07:11:11',1,'2006-02-15 21:30:53'),(3293,'2005-06-21 06:59:33',4407,481,'2005-06-25 06:54:33',2,'2006-02-15 21:30:53'),(3294,'2005-06-21 07:03:23',2390,439,'2005-06-30 02:22:23',2,'2006-02-15 21:30:53'),(3295,'2005-06-21 07:04:17',1703,573,'2005-06-29 01:52:17',1,'2006-02-15 21:30:53'),(3296,'2005-06-21 07:04:53',2453,284,'2005-06-25 08:36:53',1,'2006-02-15 21:30:53'),(3297,'2005-06-21 07:08:19',3969,193,'2005-06-28 11:53:19',2,'2006-02-15 21:30:53'),(3298,'2005-06-21 07:09:44',444,492,'2005-06-30 11:26:44',2,'2006-02-15 21:30:53'),(3299,'2005-06-21 07:23:34',3427,199,'2005-06-27 04:02:34',1,'2006-02-15 21:30:53'),(3300,'2005-06-21 07:25:01',2505,565,'2005-06-25 01:47:01',1,'2006-02-15 21:30:53'),(3301,'2005-06-21 07:32:25',503,444,'2005-06-28 06:26:25',2,'2006-02-15 21:30:53'),(3302,'2005-06-21 07:33:40',562,594,'2005-06-29 06:02:40',1,'2006-02-15 21:30:53'),(3303,'2005-06-21 07:34:14',1565,361,'2005-06-26 13:18:14',2,'2006-02-15 21:30:53'),(3304,'2005-06-21 07:43:40',2154,431,'2005-06-27 08:06:40',2,'2006-02-15 21:30:53'),(3305,'2005-06-21 07:46:57',2811,578,'2005-06-27 06:16:57',1,'2006-02-15 21:30:53'),(3306,'2005-06-21 07:46:58',1669,406,'2005-06-26 11:22:58',2,'2006-02-15 21:30:53'),(3307,'2005-06-21 07:52:30',462,85,'2005-06-25 02:36:30',2,'2006-02-15 21:30:53'),(3308,'2005-06-21 07:58:36',3129,96,'2005-06-23 05:23:36',2,'2006-02-15 21:30:53'),(3309,'2005-06-21 08:00:49',248,463,'2005-06-29 04:11:49',2,'2006-02-15 21:30:53'),(3310,'2005-06-21 08:04:51',1717,395,'2005-06-22 04:20:51',2,'2006-02-15 21:30:53'),(3311,'2005-06-21 08:05:27',3438,518,'2005-06-22 06:51:27',2,'2006-02-15 21:30:53'),(3312,'2005-06-21 08:05:32',1008,554,'2005-06-27 03:34:32',2,'2006-02-15 21:30:53'),(3313,'2005-06-21 08:11:18',4267,213,'2005-06-23 04:28:18',2,'2006-02-15 21:30:53'),(3314,'2005-06-21 08:17:00',4332,185,'2005-06-22 06:00:00',2,'2006-02-15 21:30:53'),(3315,'2005-06-21 08:17:04',4108,438,'2005-06-24 11:04:04',1,'2006-02-15 21:30:53'),(3316,'2005-06-21 08:20:18',3271,451,'2005-06-28 07:44:18',1,'2006-02-15 21:30:53'),(3317,'2005-06-21 08:22:32',4095,584,'2005-06-26 14:18:32',2,'2006-02-15 21:30:53'),(3318,'2005-06-21 08:23:05',1111,414,'2005-06-27 14:07:05',2,'2006-02-15 21:30:53'),(3319,'2005-06-21 08:25:46',2482,461,'2005-06-27 03:54:46',2,'2006-02-15 21:30:53'),(3320,'2005-06-21 08:29:41',860,47,'2005-06-29 13:54:41',2,'2006-02-15 21:30:53'),(3321,'2005-06-21 08:33:26',1750,144,'2005-06-24 10:09:26',2,'2006-02-15 21:30:53'),(3322,'2005-06-21 08:42:37',4324,458,'2005-06-22 13:17:37',1,'2006-02-15 21:30:53'),(3323,'2005-06-21 08:45:33',2252,272,'2005-06-28 08:17:33',2,'2006-02-15 21:30:53'),(3324,'2005-06-21 08:49:16',2830,29,'2005-06-22 12:31:16',1,'2006-02-15 21:30:53'),(3325,'2005-06-21 08:51:44',1720,185,'2005-06-27 06:16:44',1,'2006-02-15 21:30:53'),(3326,'2005-06-21 09:04:50',1025,347,'2005-06-30 12:10:50',2,'2006-02-15 21:30:53'),(3327,'2005-06-21 09:04:50',3083,62,'2005-06-30 05:45:50',1,'2006-02-15 21:30:53'),(3328,'2005-06-21 09:08:44',2462,292,'2005-06-30 12:28:44',1,'2006-02-15 21:30:53'),(3329,'2005-06-21 09:20:31',3506,335,'2005-06-22 10:00:31',2,'2006-02-15 21:30:53'),(3330,'2005-06-21 09:22:37',299,294,'2005-06-23 07:16:37',2,'2006-02-15 21:30:53'),(3331,'2005-06-21 09:37:53',2913,352,'2005-06-26 04:01:53',2,'2006-02-15 21:30:53'),(3332,'2005-06-21 09:55:12',1975,82,'2005-06-25 08:32:12',2,'2006-02-15 21:30:53'),(3333,'2005-06-21 10:01:36',3688,111,'2005-06-25 10:27:36',2,'2006-02-15 21:30:53'),(3334,'2005-06-21 10:04:33',2491,66,'2005-06-29 06:09:33',2,'2006-02-15 21:30:53'),(3335,'2005-06-21 10:09:08',3033,339,'2005-06-27 11:33:08',1,'2006-02-15 21:30:53'),(3336,'2005-06-21 10:14:27',2122,173,'2005-06-22 09:29:27',1,'2006-02-15 21:30:53'),(3337,'2005-06-21 10:24:35',1176,318,'2005-06-22 13:51:35',1,'2006-02-15 21:30:53'),(3338,'2005-06-21 10:27:31',2097,171,'2005-06-30 14:15:31',2,'2006-02-15 21:30:53'),(3339,'2005-06-21 10:37:11',312,526,'2005-06-30 05:04:11',2,'2006-02-15 21:30:53'),(3340,'2005-06-21 10:37:23',2962,540,'2005-06-26 07:21:23',2,'2006-02-15 21:30:53'),(3341,'2005-06-21 10:37:25',2189,591,'2005-06-26 15:38:25',1,'2006-02-15 21:30:53'),(3342,'2005-06-21 10:46:36',2884,196,'2005-06-23 09:46:36',2,'2006-02-15 21:30:53'),(3343,'2005-06-21 10:56:59',2038,466,'2005-06-25 16:41:59',1,'2006-02-15 21:30:53'),(3344,'2005-06-21 10:57:27',4401,277,'2005-06-28 10:53:27',1,'2006-02-15 21:30:53'),(3345,'2005-06-21 11:05:07',4442,71,'2005-06-26 15:14:07',2,'2006-02-15 21:30:53'),(3346,'2005-06-21 11:06:53',4393,189,'2005-06-22 15:19:53',2,'2006-02-15 21:30:53'),(3347,'2005-06-21 11:08:32',4330,448,'2005-06-28 09:59:32',1,'2006-02-15 21:30:53'),(3348,'2005-06-21 11:16:42',2945,16,'2005-06-27 13:50:42',2,'2006-02-15 21:30:53'),(3349,'2005-06-21 11:17:35',3885,336,'2005-06-22 12:51:35',2,'2006-02-15 21:30:53'),(3350,'2005-06-21 11:21:38',3221,20,'2005-06-28 15:37:38',2,'2006-02-15 21:30:53'),(3351,'2005-06-21 11:21:39',1591,386,'2005-06-23 07:23:39',2,'2006-02-15 21:30:53'),(3352,'2005-06-21 11:26:29',578,510,'2005-06-28 07:26:29',1,'2006-02-15 21:30:53'),(3353,'2005-06-21 11:29:23',3984,236,'2005-06-27 15:06:23',1,'2006-02-15 21:30:53'),(3354,'2005-06-21 11:29:49',1083,529,'2005-06-25 07:39:49',2,'2006-02-15 21:30:53'),(3355,'2005-06-21 11:30:47',1960,275,'2005-06-23 06:04:47',1,'2006-02-15 21:30:53'),(3356,'2005-06-21 11:38:45',4532,403,'2005-06-26 17:18:45',1,'2006-02-15 21:30:53'),(3357,'2005-06-21 11:55:42',2528,57,'2005-06-22 07:19:42',2,'2006-02-15 21:30:53'),(3358,'2005-06-21 11:56:40',1772,69,'2005-06-26 08:28:40',2,'2006-02-15 21:30:53'),(3359,'2005-06-21 12:08:18',3825,67,'2005-06-25 16:35:18',2,'2006-02-15 21:30:53'),(3360,'2005-06-21 12:12:41',2792,498,'2005-06-26 06:32:41',1,'2006-02-15 21:30:53'),(3361,'2005-06-21 12:14:23',2671,268,'2005-06-26 10:01:23',2,'2006-02-15 21:30:53'),(3362,'2005-06-21 12:19:54',1284,454,'2005-06-23 06:59:54',2,'2006-02-15 21:30:53'),(3363,'2005-06-21 12:25:07',538,261,'2005-06-27 11:52:07',2,'2006-02-15 21:30:53'),(3364,'2005-06-21 12:37:46',2329,201,'2005-06-28 07:18:46',2,'2006-02-15 21:30:53'),(3365,'2005-06-21 12:55:48',657,133,'2005-06-23 13:38:48',2,'2006-02-15 21:30:53'),(3366,'2005-06-21 13:03:37',2584,511,'2005-06-26 16:29:37',1,'2006-02-15 21:30:53'),(3367,'2005-06-21 13:08:21',2442,80,'2005-06-26 08:43:21',2,'2006-02-15 21:30:53'),(3368,'2005-06-21 13:18:38',548,438,'2005-06-23 11:13:38',1,'2006-02-15 21:30:53'),(3369,'2005-06-21 13:20:31',303,431,'2005-06-30 13:45:31',2,'2006-02-15 21:30:53'),(3370,'2005-06-21 13:27:01',1573,559,'2005-06-25 09:27:01',1,'2006-02-15 21:30:53'),(3371,'2005-06-21 13:27:22',2526,595,'2005-06-29 14:04:22',2,'2006-02-15 21:30:53'),(3372,'2005-06-21 13:34:19',4169,346,'2005-06-27 08:41:19',2,'2006-02-15 21:30:53'),(3373,'2005-06-21 13:35:32',2219,316,'2005-06-30 12:03:32',1,'2006-02-15 21:30:53'),(3374,'2005-06-21 13:36:30',1067,279,'2005-06-23 15:10:30',2,'2006-02-15 21:30:53'),(3375,'2005-06-21 13:37:18',912,279,'2005-06-22 11:26:18',2,'2006-02-15 21:30:53'),(3376,'2005-06-21 13:43:02',3055,318,'2005-06-28 18:07:02',1,'2006-02-15 21:30:53'),(3377,'2005-06-21 13:51:12',1845,428,'2005-06-22 18:16:12',1,'2006-02-15 21:30:53'),(3378,'2005-06-21 13:51:28',35,387,'2005-06-25 09:21:28',1,'2006-02-15 21:30:53'),(3379,'2005-06-21 13:54:58',2022,566,'2005-06-23 13:43:58',2,'2006-02-15 21:30:53'),(3380,'2005-06-21 13:58:46',3212,483,'2005-06-30 09:29:46',1,'2006-02-15 21:30:53'),(3381,'2005-06-21 14:02:59',1373,183,'2005-06-29 18:11:59',2,'2006-02-15 21:30:53'),(3382,'2005-06-21 14:05:23',131,341,'2005-06-29 19:13:23',2,'2006-02-15 21:30:53'),(3383,'2005-06-21 14:07:19',2968,239,'2005-06-29 17:00:19',2,'2006-02-15 21:30:53'),(3384,'2005-06-21 14:07:35',409,91,'2005-06-26 16:34:35',1,'2006-02-15 21:30:53'),(3385,'2005-06-21 14:16:48',2810,514,'2005-06-24 10:32:48',2,'2006-02-15 21:30:53'),(3386,'2005-06-21 14:21:06',1224,190,'2005-06-24 08:32:06',2,'2006-02-15 21:30:53'),(3387,'2005-06-21 14:21:49',2709,305,'2005-06-24 16:46:49',2,'2006-02-15 21:30:53'),(3388,'2005-06-21 14:34:51',556,119,'2005-06-28 18:19:51',1,'2006-02-15 21:30:53'),(3389,'2005-06-21 14:37:55',727,395,'2005-06-28 18:13:55',1,'2006-02-15 21:30:53'),(3390,'2005-06-21 15:10:50',2034,151,'2005-06-26 12:38:50',1,'2006-02-15 21:30:53'),(3391,'2005-06-21 15:11:02',26,45,'2005-06-25 14:12:02',1,'2006-02-15 21:30:53'),(3392,'2005-06-21 15:12:44',3343,38,'2005-06-29 18:19:44',1,'2006-02-15 21:30:53'),(3393,'2005-06-21 15:14:27',1631,362,'2005-06-25 19:54:27',2,'2006-02-15 21:30:53'),(3394,'2005-06-21 15:17:39',3393,295,'2005-06-30 13:55:39',2,'2006-02-15 21:30:53'),(3395,'2005-06-21 15:19:19',3764,66,'2005-06-29 14:23:19',2,'2006-02-15 21:30:53'),(3396,'2005-06-21 15:23:08',2744,371,'2005-06-23 10:25:08',1,'2006-02-15 21:30:53'),(3397,'2005-06-21 15:30:11',602,552,'2005-06-22 21:12:11',1,'2006-02-15 21:30:53'),(3398,'2005-06-21 15:34:38',221,599,'2005-06-29 11:23:38',1,'2006-02-15 21:30:53'),(3399,'2005-06-21 15:47:48',619,98,'2005-06-26 13:46:48',1,'2006-02-15 21:30:53'),(3400,'2005-06-21 15:50:30',1697,298,'2005-06-25 18:07:30',1,'2006-02-15 21:30:53'),(3401,'2005-06-21 15:52:43',3423,577,'2005-06-30 21:09:43',2,'2006-02-15 21:30:53'),(3402,'2005-06-21 15:54:37',596,187,'2005-06-30 13:43:37',1,'2006-02-15 21:30:53'),(3403,'2005-06-21 15:55:06',1741,264,'2005-06-27 12:34:06',1,'2006-02-15 21:30:53'),(3404,'2005-06-21 15:57:52',2005,424,'2005-06-24 20:58:52',2,'2006-02-15 21:30:53'),(3405,'2005-06-21 15:58:25',2344,155,'2005-06-23 10:58:25',1,'2006-02-15 21:30:53'),(3406,'2005-06-21 16:00:18',2049,203,'2005-06-23 18:25:18',1,'2006-02-15 21:30:53'),(3407,'2005-06-21 16:14:02',3919,343,'2005-06-24 15:38:02',2,'2006-02-15 21:30:53'),(3408,'2005-06-21 16:15:11',3453,282,'2005-06-27 14:55:11',1,'2006-02-15 21:30:53'),(3409,'2005-06-21 16:17:38',3374,429,'2005-06-22 14:16:38',1,'2006-02-15 21:30:53'),(3410,'2005-06-21 16:20:47',1197,321,'2005-06-24 19:09:47',2,'2006-02-15 21:30:53'),(3411,'2005-06-21 16:31:27',4250,12,'2005-06-28 12:27:27',2,'2006-02-15 21:30:53'),(3412,'2005-06-21 16:44:31',3036,501,'2005-06-28 16:15:31',2,'2006-02-15 21:30:53'),(3413,'2005-06-21 16:57:07',666,322,'2005-06-30 12:03:07',2,'2006-02-15 21:30:53'),(3414,'2005-06-21 16:58:50',2929,226,'2005-06-24 17:26:50',1,'2006-02-15 21:30:53'),(3415,'2005-06-21 16:59:49',3540,444,'2005-06-27 17:19:49',1,'2006-02-15 21:30:53'),(3416,'2005-06-21 17:05:29',1215,76,'2005-06-23 17:58:29',2,'2006-02-15 21:30:53'),(3417,'2005-06-21 17:06:20',874,282,'2005-06-23 17:00:20',2,'2006-02-15 21:30:53'),(3418,'2005-06-21 17:06:38',4115,85,'2005-06-25 19:43:38',1,'2006-02-15 21:30:53'),(3419,'2005-06-21 17:18:01',4022,22,'2005-06-22 15:08:01',1,'2006-02-15 21:30:53'),(3420,'2005-06-21 17:22:36',2523,27,'2005-06-28 12:34:36',1,'2006-02-15 21:30:53'),(3421,'2005-06-21 17:22:58',3930,346,'2005-06-24 18:57:58',1,'2006-02-15 21:30:53'),(3422,'2005-06-21 17:24:40',2724,251,'2005-06-29 13:59:40',2,'2006-02-15 21:30:53'),(3423,'2005-06-21 17:38:02',3612,19,'2005-06-23 19:47:02',1,'2006-02-15 21:30:53'),(3424,'2005-06-21 17:42:51',1279,583,'2005-06-24 23:22:51',2,'2006-02-15 21:30:53'),(3425,'2005-06-21 18:07:07',4548,381,'2005-06-27 22:59:07',2,'2006-02-15 21:30:53'),(3426,'2005-06-21 18:12:10',3019,95,'2005-06-23 18:22:10',1,'2006-02-15 21:30:53'),(3427,'2005-06-21 18:31:09',560,561,'2005-06-22 14:18:09',2,'2006-02-15 21:30:53'),(3428,'2005-06-21 18:39:34',1959,40,'2005-06-22 18:23:34',2,'2006-02-15 21:30:53'),(3429,'2005-06-21 18:46:05',456,599,'2005-06-30 17:28:05',1,'2006-02-15 21:30:53'),(3430,'2005-06-21 18:46:08',1613,503,'2005-06-22 13:49:08',2,'2006-02-15 21:30:53'),(3431,'2005-06-21 18:46:48',133,516,'2005-06-26 23:08:48',1,'2006-02-15 21:30:53'),(3432,'2005-06-21 19:02:03',1814,216,'2005-06-25 00:57:03',2,'2006-02-15 21:30:53'),(3433,'2005-06-21 19:07:19',1077,228,'2005-06-29 18:01:19',2,'2006-02-15 21:30:53'),(3434,'2005-06-21 19:08:28',2295,141,'2005-06-23 14:25:28',1,'2006-02-15 21:30:53'),(3435,'2005-06-21 19:14:58',451,591,'2005-06-24 19:58:58',1,'2006-02-15 21:30:53'),(3436,'2005-06-21 19:16:09',2740,137,'2005-06-30 13:58:09',2,'2006-02-15 21:30:53'),(3437,'2005-06-21 19:20:17',1798,211,'2005-07-01 01:09:17',2,'2006-02-15 21:30:53'),(3438,'2005-06-21 19:31:40',1757,556,'2005-06-30 19:08:40',1,'2006-02-15 21:30:53'),(3439,'2005-06-21 19:36:15',1529,46,'2005-06-23 14:54:15',2,'2006-02-15 21:30:53'),(3440,'2005-06-21 19:58:18',853,491,'2005-06-27 22:08:18',1,'2006-02-15 21:30:53'),(3441,'2005-06-21 20:00:12',2863,326,'2005-06-24 00:24:12',2,'2006-02-15 21:30:53'),(3442,'2005-06-21 20:06:51',1896,255,'2005-06-25 17:35:51',2,'2006-02-15 21:30:53'),(3443,'2005-06-21 20:19:00',1639,377,'2005-06-30 15:39:00',1,'2006-02-15 21:30:53'),(3444,'2005-06-21 20:39:39',493,45,'2005-06-25 23:44:39',2,'2006-02-15 21:30:53'),(3445,'2005-06-21 20:40:28',2381,74,'2005-06-29 00:47:28',2,'2006-02-15 21:30:53'),(3446,'2005-06-21 20:45:51',1817,174,'2005-06-26 17:02:51',1,'2006-02-15 21:30:53'),(3447,'2005-06-21 20:53:31',1146,25,'2005-06-24 02:20:31',2,'2006-02-15 21:30:53'),(3448,'2005-06-21 20:59:20',592,476,'2005-06-24 15:40:20',1,'2006-02-15 21:30:53'),(3449,'2005-06-21 21:01:27',210,181,'2005-06-27 21:20:27',1,'2006-02-15 21:30:53'),(3450,'2005-06-21 21:01:57',2268,126,'2005-06-25 23:57:57',1,'2006-02-15 21:30:53'),(3451,'2005-06-21 21:10:39',3489,558,'2005-06-30 19:03:39',2,'2006-02-15 21:30:53'),(3452,'2005-06-21 21:11:27',2646,293,'2005-06-24 16:31:27',1,'2006-02-15 21:30:53'),(3453,'2005-06-21 21:12:11',842,278,'2005-06-23 17:39:11',2,'2006-02-15 21:30:53'),(3454,'2005-06-21 21:12:13',3009,524,'2005-06-25 23:23:13',1,'2006-02-15 21:30:53'),(3455,'2005-06-21 21:17:51',4403,340,'2005-06-23 17:22:51',1,'2006-02-15 21:30:53'),(3456,'2005-06-21 21:19:47',1119,150,'2005-06-28 18:18:47',2,'2006-02-15 21:30:53'),(3457,'2005-06-21 21:42:33',883,312,'2005-06-30 19:54:33',2,'2006-02-15 21:30:53'),(3458,'2005-06-21 21:42:49',2136,338,'2005-06-29 01:26:49',1,'2006-02-15 21:30:53'),(3459,'2005-06-21 21:45:47',3080,97,'2005-06-25 00:46:47',1,'2006-02-15 21:30:53'),(3460,'2005-06-21 21:46:56',1765,236,'2005-06-29 20:08:56',1,'2006-02-15 21:30:53'),(3461,'2005-06-21 21:49:18',1715,23,'2005-06-26 19:51:18',1,'2006-02-15 21:30:53'),(3462,'2005-06-21 21:52:52',547,568,'2005-06-28 21:41:52',1,'2006-02-15 21:30:53'),(3463,'2005-06-21 22:00:00',3436,96,'2005-06-22 19:22:00',2,'2006-02-15 21:30:53'),(3464,'2005-06-21 22:08:58',2698,251,'2005-06-26 16:23:58',2,'2006-02-15 21:30:53'),(3465,'2005-06-21 22:10:01',1488,510,'2005-06-30 21:35:01',1,'2006-02-15 21:30:53'),(3466,'2005-06-21 22:13:33',371,226,'2005-06-25 21:01:33',2,'2006-02-15 21:30:53'),(3467,'2005-06-21 22:19:25',729,543,'2005-06-27 00:03:25',2,'2006-02-15 21:30:53'),(3468,'2005-06-21 22:43:45',2899,100,'2005-06-30 01:49:45',1,'2006-02-15 21:30:53'),(3469,'2005-06-21 22:48:59',4087,181,'2005-06-28 19:32:59',1,'2006-02-15 21:30:53'),(3470,'2005-07-05 22:49:24',883,565,'2005-07-07 19:36:24',1,'2006-02-15 21:30:53'),(3471,'2005-07-05 22:51:44',1724,242,'2005-07-13 01:38:44',2,'2006-02-15 21:30:53'),(3472,'2005-07-05 22:56:33',841,37,'2005-07-13 17:18:33',2,'2006-02-15 21:30:53'),(3473,'2005-07-05 22:57:34',2735,60,'2005-07-12 23:53:34',1,'2006-02-15 21:30:53'),(3474,'2005-07-05 22:59:53',97,594,'2005-07-08 20:32:53',1,'2006-02-15 21:30:53'),(3475,'2005-07-05 23:01:21',2189,8,'2005-07-13 23:07:21',2,'2006-02-15 21:30:53'),(3476,'2005-07-05 23:02:37',3011,490,'2005-07-10 22:17:37',2,'2006-02-15 21:30:53'),(3477,'2005-07-05 23:05:17',4289,476,'2005-07-15 02:20:17',2,'2006-02-15 21:30:53'),(3478,'2005-07-05 23:05:44',2528,322,'2005-07-07 00:14:44',2,'2006-02-15 21:30:53'),(3479,'2005-07-05 23:08:53',2277,298,'2005-07-11 21:42:53',1,'2006-02-15 21:30:53'),(3480,'2005-07-05 23:11:43',1488,382,'2005-07-12 02:01:43',2,'2006-02-15 21:30:53'),(3481,'2005-07-05 23:13:07',3575,138,'2005-07-07 20:36:07',2,'2006-02-15 21:30:53'),(3482,'2005-07-05 23:13:22',1291,520,'2005-07-12 19:02:22',2,'2006-02-15 21:30:53'),(3483,'2005-07-05 23:13:51',79,536,'2005-07-13 18:31:51',1,'2006-02-15 21:30:53'),(3484,'2005-07-05 23:23:11',1934,114,'2005-07-11 00:27:11',2,'2006-02-15 21:30:53'),(3485,'2005-07-05 23:25:54',117,111,'2005-07-09 17:38:54',1,'2006-02-15 21:30:53'),(3486,'2005-07-05 23:29:55',4067,296,'2005-07-13 19:54:55',1,'2006-02-15 21:30:53'),(3487,'2005-07-05 23:30:36',1575,586,'2005-07-11 04:00:36',1,'2006-02-15 21:30:53'),(3488,'2005-07-05 23:32:49',898,349,'2005-07-15 02:01:49',2,'2006-02-15 21:30:53'),(3489,'2005-07-05 23:33:40',2936,397,'2005-07-15 02:15:40',2,'2006-02-15 21:30:53'),(3490,'2005-07-05 23:37:13',3041,369,'2005-07-12 22:07:13',1,'2006-02-15 21:30:53'),(3491,'2005-07-05 23:41:08',1835,421,'2005-07-13 21:53:08',1,'2006-02-15 21:30:53'),(3492,'2005-07-05 23:44:37',980,142,'2005-07-14 03:54:37',1,'2006-02-15 21:30:53'),(3493,'2005-07-05 23:46:19',473,169,'2005-07-15 02:31:19',1,'2006-02-15 21:30:53'),(3494,'2005-07-05 23:47:30',3149,348,'2005-07-11 18:10:30',1,'2006-02-15 21:30:53'),(3495,'2005-07-05 23:50:04',2306,553,'2005-07-10 01:06:04',1,'2006-02-15 21:30:53'),(3496,'2005-07-05 23:59:15',2430,295,'2005-07-09 19:39:15',2,'2006-02-15 21:30:53'),(3497,'2005-07-06 00:00:03',1970,299,'2005-07-09 01:27:03',1,'2006-02-15 21:30:53'),(3498,'2005-07-06 00:02:08',1869,444,'2005-07-10 00:19:08',1,'2006-02-15 21:30:53'),(3499,'2005-07-06 00:04:20',1850,520,'2005-07-14 21:12:20',2,'2006-02-15 21:30:53'),(3500,'2005-07-06 00:11:13',2447,32,'2005-07-13 19:01:13',2,'2006-02-15 21:30:53'),(3501,'2005-07-06 00:11:28',2219,270,'2005-07-10 20:32:28',2,'2006-02-15 21:30:53'),(3502,'2005-07-06 00:15:06',1026,126,'2005-07-13 01:35:06',1,'2006-02-15 21:30:53'),(3503,'2005-07-06 00:17:24',2944,449,'2005-07-08 03:47:24',1,'2006-02-15 21:30:53'),(3504,'2005-07-06 00:18:29',268,209,'2005-07-10 00:24:29',2,'2006-02-15 21:30:53'),(3505,'2005-07-06 00:19:32',2630,331,'2005-07-14 20:14:32',2,'2006-02-15 21:30:53'),(3506,'2005-07-06 00:22:29',19,459,'2005-07-07 22:15:29',1,'2006-02-15 21:30:53'),(3507,'2005-07-06 00:23:43',166,480,'2005-07-15 04:19:43',1,'2006-02-15 21:30:53'),(3508,'2005-07-06 00:24:25',2381,34,'2005-07-10 05:38:25',2,'2006-02-15 21:30:53'),(3509,'2005-07-06 00:24:57',4394,182,'2005-07-09 18:48:57',2,'2006-02-15 21:30:53'),(3510,'2005-07-06 00:27:41',2250,443,'2005-07-14 23:20:41',2,'2006-02-15 21:30:53'),(3511,'2005-07-06 00:42:01',2128,494,'2005-07-09 23:08:01',1,'2006-02-15 21:30:53'),(3512,'2005-07-06 00:43:06',371,291,'2005-07-12 06:18:06',2,'2006-02-15 21:30:53'),(3513,'2005-07-06 00:45:57',4225,223,'2005-07-11 19:04:57',2,'2006-02-15 21:30:53'),(3514,'2005-07-06 00:46:54',4546,536,'2005-07-09 05:47:54',1,'2006-02-15 21:30:53'),(3515,'2005-07-06 00:48:55',3220,131,'2005-07-09 00:15:55',1,'2006-02-15 21:30:53'),(3516,'2005-07-06 00:50:30',385,338,'2005-07-09 19:12:30',2,'2006-02-15 21:30:53'),(3517,'2005-07-06 00:52:35',2762,314,'2005-07-08 20:10:35',2,'2006-02-15 21:30:53'),(3518,'2005-07-06 00:56:03',2502,167,'2005-07-14 02:27:03',1,'2006-02-15 21:30:53'),(3519,'2005-07-06 00:57:29',4314,320,'2005-07-10 21:12:29',2,'2006-02-15 21:30:53'),(3520,'2005-07-06 00:58:27',2872,102,'2005-07-14 05:56:27',1,'2006-02-15 21:30:53'),(3521,'2005-07-06 01:00:11',1440,262,'2005-07-11 19:15:11',2,'2006-02-15 21:30:53'),(3522,'2005-07-06 01:00:21',4522,469,'2005-07-11 01:18:21',1,'2006-02-15 21:30:53'),(3523,'2005-07-06 01:01:38',2171,549,'2005-07-10 20:24:38',2,'2006-02-15 21:30:53'),(3524,'2005-07-06 01:01:51',1626,88,'2005-07-11 19:52:51',2,'2006-02-15 21:30:53'),(3525,'2005-07-06 01:02:39',208,51,'2005-07-14 02:27:39',1,'2006-02-15 21:30:53'),(3526,'2005-07-06 01:03:29',3871,469,'2005-07-15 01:22:29',2,'2006-02-15 21:30:53'),(3527,'2005-07-06 01:11:08',4537,389,'2005-07-08 01:21:08',1,'2006-02-15 21:30:53'),(3528,'2005-07-06 01:13:27',1954,201,'2005-07-06 23:45:27',2,'2006-02-15 21:30:53'),(3529,'2005-07-06 01:15:26',4316,350,'2005-07-07 04:28:26',1,'2006-02-15 21:30:53'),(3530,'2005-07-06 01:22:45',4542,168,'2005-07-10 03:23:45',1,'2006-02-15 21:30:53'),(3531,'2005-07-06 01:24:08',1890,165,'2005-07-11 22:00:08',2,'2006-02-15 21:30:53'),(3532,'2005-07-06 01:24:38',2635,274,'2005-07-11 06:42:38',2,'2006-02-15 21:30:53'),(3533,'2005-07-06 01:26:44',2028,206,'2005-07-14 21:37:44',1,'2006-02-15 21:30:53'),(3534,'2005-07-06 01:32:27',2055,283,'2005-07-08 23:14:27',1,'2006-02-15 21:30:53'),(3535,'2005-07-06 01:32:46',4214,65,'2005-07-11 03:15:46',1,'2006-02-15 21:30:53'),(3536,'2005-07-06 01:36:11',2328,339,'2005-07-12 20:00:11',2,'2006-02-15 21:30:53'),(3537,'2005-07-06 01:36:53',4220,479,'2005-07-13 07:01:53',2,'2006-02-15 21:30:53'),(3538,'2005-07-06 01:37:07',4361,228,'2005-07-11 06:02:07',2,'2006-02-15 21:30:53'),(3539,'2005-07-06 01:39:08',4081,444,'2005-07-07 05:38:08',1,'2006-02-15 21:30:53'),(3540,'2005-07-06 01:47:20',1295,97,'2005-07-08 23:48:20',2,'2006-02-15 21:30:53'),(3541,'2005-07-06 01:50:11',1204,501,'2005-07-12 03:24:11',1,'2006-02-15 21:30:53'),(3542,'2005-07-06 01:51:42',4391,593,'2005-07-11 03:29:42',1,'2006-02-15 21:30:53'),(3543,'2005-07-06 02:01:08',3997,394,'2005-07-07 03:14:08',1,'2006-02-15 21:30:53'),(3544,'2005-07-06 02:06:32',3098,115,'2005-07-09 04:35:32',2,'2006-02-15 21:30:53'),(3545,'2005-07-06 02:16:17',3924,442,'2005-07-11 00:54:17',1,'2006-02-15 21:30:53'),(3546,'2005-07-06 02:17:54',959,594,'2005-07-07 00:19:54',1,'2006-02-15 21:30:53'),(3547,'2005-07-06 02:18:06',2730,239,'2005-07-08 05:24:06',1,'2006-02-15 21:30:53'),(3548,'2005-07-06 02:23:39',4498,16,'2005-07-08 07:53:39',2,'2006-02-15 21:30:53'),(3549,'2005-07-06 02:24:55',3921,19,'2005-07-06 21:40:55',2,'2006-02-15 21:30:53'),(3550,'2005-07-06 02:29:21',2417,15,'2005-07-13 05:26:21',2,'2006-02-15 21:30:53'),(3551,'2005-07-06 02:33:48',3602,111,'2005-07-13 04:38:48',1,'2006-02-15 21:30:53'),(3552,'2005-07-06 02:34:09',1099,239,'2005-07-12 05:31:09',1,'2006-02-15 21:30:53'),(3553,'2005-07-06 02:35:41',4510,422,'2005-07-08 06:38:41',2,'2006-02-15 21:30:53'),(3554,'2005-07-06 02:37:10',793,538,'2005-07-09 01:58:10',1,'2006-02-15 21:30:53'),(3555,'2005-07-06 02:45:35',869,537,'2005-07-10 07:17:35',1,'2006-02-15 21:30:53'),(3556,'2005-07-06 02:46:13',3142,273,'2005-07-06 22:08:13',1,'2006-02-15 21:30:53'),(3557,'2005-07-06 02:48:39',3832,292,'2005-07-08 22:52:39',2,'2006-02-15 21:30:53'),(3558,'2005-07-06 02:49:06',1742,575,'2005-07-15 01:38:06',2,'2006-02-15 21:30:53'),(3559,'2005-07-06 02:49:42',2211,483,'2005-07-12 04:44:42',1,'2006-02-15 21:30:53'),(3560,'2005-07-06 02:51:37',888,592,'2005-07-10 01:35:37',2,'2006-02-15 21:30:53'),(3561,'2005-07-06 02:54:33',213,231,'2005-07-14 07:44:33',2,'2006-02-15 21:30:53'),(3562,'2005-07-06 02:54:36',1660,587,'2005-07-11 05:48:36',1,'2006-02-15 21:30:53'),(3563,'2005-07-06 02:57:01',4261,210,'2005-07-14 02:25:01',2,'2006-02-15 21:30:53'),(3564,'2005-07-06 03:02:13',1096,402,'2005-07-13 01:41:13',2,'2006-02-15 21:30:53'),(3565,'2005-07-06 03:02:58',599,97,'2005-07-13 21:31:58',2,'2006-02-15 21:30:53'),(3566,'2005-07-06 03:08:51',2774,392,'2005-07-12 05:04:51',1,'2006-02-15 21:30:53'),(3567,'2005-07-06 03:09:36',27,355,'2005-07-12 02:15:36',1,'2006-02-15 21:30:53'),(3568,'2005-07-06 03:11:57',2084,283,'2005-07-15 03:14:57',1,'2006-02-15 21:30:53'),(3569,'2005-07-06 03:17:23',1929,496,'2005-07-14 03:58:23',1,'2006-02-15 21:30:53'),(3570,'2005-07-06 03:23:43',1300,450,'2005-07-14 07:28:43',2,'2006-02-15 21:30:53'),(3571,'2005-07-06 03:32:31',4166,580,'2005-07-11 06:15:31',1,'2006-02-15 21:30:53'),(3572,'2005-07-06 03:33:23',1915,284,'2005-07-08 07:54:23',1,'2006-02-15 21:30:53'),(3573,'2005-07-06 03:33:48',146,66,'2005-07-07 22:39:48',1,'2006-02-15 21:30:53'),(3574,'2005-07-06 03:36:01',2799,225,'2005-07-10 01:29:01',2,'2006-02-15 21:30:53'),(3575,'2005-07-06 03:36:19',3234,49,'2005-07-08 06:21:19',1,'2006-02-15 21:30:53'),(3576,'2005-07-06 03:40:01',324,227,'2005-07-15 07:22:01',1,'2006-02-15 21:30:53'),(3577,'2005-07-06 03:40:36',4390,152,'2005-07-10 05:54:36',2,'2006-02-15 21:30:53'),(3578,'2005-07-06 03:47:05',2954,263,'2005-07-08 02:26:05',1,'2006-02-15 21:30:53'),(3579,'2005-07-06 03:47:47',3309,485,'2005-07-08 02:16:47',2,'2006-02-15 21:30:53'),(3580,'2005-07-06 03:48:44',3837,200,'2005-07-13 01:15:44',2,'2006-02-15 21:30:53'),(3581,'2005-07-06 03:57:35',4520,235,'2005-07-07 08:07:35',2,'2006-02-15 21:30:53'),(3582,'2005-07-06 04:10:35',1866,297,'2005-07-11 01:29:35',2,'2006-02-15 21:30:53'),(3583,'2005-07-06 04:10:43',204,574,'2005-07-14 22:17:43',2,'2006-02-15 21:30:53'),(3584,'2005-07-06 04:16:43',367,207,'2005-07-13 07:08:43',1,'2006-02-15 21:30:53'),(3585,'2005-07-06 04:22:36',2726,266,'2005-07-09 06:16:36',2,'2006-02-15 21:30:53'),(3586,'2005-07-06 04:24:42',616,493,'2005-07-09 02:37:42',1,'2006-02-15 21:30:53'),(3587,'2005-07-06 04:27:52',462,110,'2005-07-13 08:19:52',1,'2006-02-15 21:30:53'),(3588,'2005-07-06 04:29:13',3154,289,'2005-07-07 23:49:13',1,'2006-02-15 21:30:53'),(3589,'2005-07-06 04:30:18',3740,137,'2005-07-10 09:18:18',1,'2006-02-15 21:30:53'),(3590,'2005-07-06 04:35:12',1510,283,'2005-07-10 05:14:12',2,'2006-02-15 21:30:53'),(3591,'2005-07-06 04:37:10',1241,53,'2005-07-09 23:32:10',1,'2006-02-15 21:30:53'),(3592,'2005-07-06 04:38:50',1272,286,'2005-07-15 06:36:50',2,'2006-02-15 21:30:53'),(3593,'2005-07-06 04:39:52',619,78,'2005-07-11 23:20:52',2,'2006-02-15 21:30:53'),(3594,'2005-07-06 04:42:47',4566,522,'2005-07-10 00:49:47',1,'2006-02-15 21:30:53'),(3595,'2005-07-06 04:59:49',1431,92,'2005-07-15 06:26:49',2,'2006-02-15 21:30:53'),(3596,'2005-07-06 05:03:11',594,419,'2005-07-07 05:30:11',2,'2006-02-15 21:30:53'),(3597,'2005-07-06 05:03:59',4080,35,'2005-07-13 06:49:59',2,'2006-02-15 21:30:53'),(3598,'2005-07-06 05:11:04',1317,68,'2005-07-09 02:03:04',2,'2006-02-15 21:30:53'),(3599,'2005-07-06 05:16:36',3262,577,'2005-07-13 07:14:36',2,'2006-02-15 21:30:53'),(3600,'2005-07-06 05:19:42',2748,511,'2005-07-11 00:34:42',2,'2006-02-15 21:30:53'),(3601,'2005-07-06 05:20:25',2806,205,'2005-07-15 03:13:25',1,'2006-02-15 21:30:53'),(3602,'2005-07-06 05:23:10',2192,100,'2005-07-15 03:22:10',2,'2006-02-15 21:30:53'),(3603,'2005-07-06 05:25:03',2442,330,'2005-07-12 08:14:03',1,'2006-02-15 21:30:53'),(3604,'2005-07-06 05:25:22',1380,242,'2005-07-07 23:52:22',1,'2006-02-15 21:30:53'),(3605,'2005-07-06 05:27:15',384,347,'2005-07-10 00:05:15',2,'2006-02-15 21:30:53'),(3606,'2005-07-06 05:28:02',1737,166,'2005-07-10 04:51:02',1,'2006-02-15 21:30:53'),(3607,'2005-07-06 05:30:09',542,335,'2005-07-08 01:36:09',2,'2006-02-15 21:30:53'),(3608,'2005-07-06 05:35:39',3095,368,'2005-07-10 07:46:39',2,'2006-02-15 21:30:53'),(3609,'2005-07-06 05:36:22',1064,373,'2005-07-10 05:55:22',1,'2006-02-15 21:30:53'),(3610,'2005-07-06 05:36:59',1509,348,'2005-07-13 07:07:59',1,'2006-02-15 21:30:53'),(3611,'2005-07-06 05:37:18',4502,86,'2005-07-10 05:14:18',1,'2006-02-15 21:30:53'),(3612,'2005-07-06 05:37:26',2465,402,'2005-07-14 01:51:26',1,'2006-02-15 21:30:53'),(3613,'2005-07-06 05:45:53',3776,331,'2005-07-07 10:02:53',1,'2006-02-15 21:30:53'),(3614,'2005-07-06 05:46:05',853,502,'2005-07-11 01:24:05',2,'2006-02-15 21:30:53'),(3615,'2005-07-06 05:47:47',711,49,'2005-07-11 05:01:47',1,'2006-02-15 21:30:53'),(3616,'2005-07-06 05:52:13',557,571,'2005-07-10 10:24:13',1,'2006-02-15 21:30:53'),(3617,'2005-07-06 05:58:06',1337,125,'2005-07-13 02:10:06',1,'2006-02-15 21:30:53'),(3618,'2005-07-06 05:58:45',330,264,'2005-07-15 09:13:45',2,'2006-02-15 21:30:53'),(3619,'2005-07-06 05:59:44',3350,526,'2005-07-11 08:58:44',2,'2006-02-15 21:30:53'),(3620,'2005-07-06 06:01:50',1661,88,'2005-07-08 05:04:50',1,'2006-02-15 21:30:53'),(3621,'2005-07-06 06:03:55',3132,171,'2005-07-11 09:25:55',2,'2006-02-15 21:30:53'),(3622,'2005-07-06 06:05:04',3489,454,'2005-07-12 03:14:04',2,'2006-02-15 21:30:53'),(3623,'2005-07-06 06:05:23',430,80,'2005-07-07 05:59:23',1,'2006-02-15 21:30:53'),(3624,'2005-07-06 06:06:27',1778,115,'2005-07-13 08:30:27',2,'2006-02-15 21:30:53'),(3625,'2005-07-06 06:12:52',1133,175,'2005-07-12 07:37:52',1,'2006-02-15 21:30:53'),(3626,'2005-07-06 06:15:35',1599,337,'2005-07-10 10:18:35',2,'2006-02-15 21:30:53'),(3627,'2005-07-06 06:19:25',1087,322,'2005-07-11 05:53:25',1,'2006-02-15 21:30:53'),(3628,'2005-07-06 06:19:43',3509,588,'2005-07-07 02:23:43',1,'2006-02-15 21:30:53'),(3629,'2005-07-06 06:23:22',4019,441,'2005-07-08 09:32:22',2,'2006-02-15 21:30:53'),(3630,'2005-07-06 06:27:15',2448,102,'2005-07-12 10:36:15',1,'2006-02-15 21:30:53'),(3631,'2005-07-06 06:36:53',4068,47,'2005-07-07 10:32:53',1,'2006-02-15 21:30:53'),(3632,'2005-07-06 06:38:21',2583,366,'2005-07-11 03:19:21',1,'2006-02-15 21:30:53'),(3633,'2005-07-06 06:43:26',2978,95,'2005-07-10 04:54:26',1,'2006-02-15 21:30:53'),(3634,'2005-07-06 06:51:14',3688,245,'2005-07-10 02:30:14',1,'2006-02-15 21:30:53'),(3635,'2005-07-06 06:55:36',421,250,'2005-07-09 07:57:36',2,'2006-02-15 21:30:53'),(3636,'2005-07-06 07:03:52',3379,591,'2005-07-08 03:14:52',2,'2006-02-15 21:30:53'),(3637,'2005-07-06 07:06:31',3823,380,'2005-07-10 02:11:31',2,'2006-02-15 21:30:53'),(3638,'2005-07-06 07:08:17',190,452,'2005-07-13 12:30:17',1,'2006-02-15 21:30:53'),(3639,'2005-07-06 07:09:17',2812,7,'2005-07-15 05:12:17',2,'2006-02-15 21:30:53'),(3640,'2005-07-06 07:12:26',3432,271,'2005-07-10 04:54:26',2,'2006-02-15 21:30:53'),(3641,'2005-07-06 07:17:09',3834,79,'2005-07-11 07:25:09',1,'2006-02-15 21:30:53'),(3642,'2005-07-06 07:18:20',4204,166,'2005-07-09 01:37:20',1,'2006-02-15 21:30:53'),(3643,'2005-07-06 07:20:08',845,176,'2005-07-11 07:01:08',1,'2006-02-15 21:30:53'),(3644,'2005-07-06 07:20:11',4309,403,'2005-07-11 10:26:11',2,'2006-02-15 21:30:53'),(3645,'2005-07-06 07:22:09',3390,236,'2005-07-10 11:45:09',1,'2006-02-15 21:30:53'),(3646,'2005-07-06 07:28:59',3591,322,'2005-07-11 05:19:59',1,'2006-02-15 21:30:53'),(3647,'2005-07-06 07:29:17',3762,145,'2005-07-13 08:32:17',1,'2006-02-15 21:30:53'),(3648,'2005-07-06 07:30:41',2810,598,'2005-07-10 06:00:41',2,'2006-02-15 21:30:53'),(3649,'2005-07-06 07:32:42',3564,24,'2005-07-12 09:37:42',1,'2006-02-15 21:30:53'),(3650,'2005-07-06 07:34:15',3606,482,'2005-07-08 01:50:15',2,'2006-02-15 21:30:53'),(3651,'2005-07-06 07:40:31',3323,170,'2005-07-08 03:39:31',2,'2006-02-15 21:30:53'),(3652,'2005-07-06 07:44:30',1231,518,'2005-07-08 04:41:30',1,'2006-02-15 21:30:53'),(3653,'2005-07-06 07:45:13',2513,148,'2005-07-10 11:51:13',2,'2006-02-15 21:30:53'),(3654,'2005-07-06 07:45:31',1621,528,'2005-07-12 09:59:31',2,'2006-02-15 21:30:53'),(3655,'2005-07-06 07:52:54',1540,493,'2005-07-15 10:49:54',2,'2006-02-15 21:30:53'),(3656,'2005-07-06 07:55:22',4544,314,'2005-07-13 10:36:22',2,'2006-02-15 21:30:53'),(3657,'2005-07-06 07:55:30',4134,113,'2005-07-11 07:18:30',1,'2006-02-15 21:30:53'),(3658,'2005-07-06 08:01:08',3453,253,'2005-07-15 06:36:08',1,'2006-02-15 21:30:53'),(3659,'2005-07-06 08:03:14',2271,330,'2005-07-12 09:50:14',1,'2006-02-15 21:30:53'),(3660,'2005-07-06 08:07:29',1129,507,'2005-07-14 08:46:29',1,'2006-02-15 21:30:53'),(3661,'2005-07-06 08:10:02',2600,442,'2005-07-10 10:17:02',1,'2006-02-15 21:30:53'),(3662,'2005-07-06 08:11:48',3827,334,'2005-07-09 12:25:48',2,'2006-02-15 21:30:53'),(3663,'2005-07-06 08:15:47',2646,566,'2005-07-07 08:57:47',1,'2006-02-15 21:30:53'),(3664,'2005-07-06 08:15:57',3366,528,'2005-07-08 06:11:57',1,'2006-02-15 21:30:53'),(3665,'2005-07-06 08:23:08',922,102,'2005-07-13 13:38:08',2,'2006-02-15 21:30:53'),(3666,'2005-07-06 08:27:43',4212,347,'2005-07-09 07:37:43',2,'2006-02-15 21:30:53'),(3667,'2005-07-06 08:36:34',447,373,'2005-07-15 04:25:34',2,'2006-02-15 21:30:53'),(3668,'2005-07-06 08:36:48',269,514,'2005-07-10 11:31:48',1,'2006-02-15 21:30:53'),(3669,'2005-07-06 08:38:29',1299,530,'2005-07-10 05:28:29',1,'2006-02-15 21:30:53'),(3670,'2005-07-06 08:56:43',4271,268,'2005-07-11 09:11:43',1,'2006-02-15 21:30:53'),(3671,'2005-07-06 09:01:29',2821,179,'2005-07-15 08:08:29',1,'2006-02-15 21:30:53'),(3672,'2005-07-06 09:01:56',3883,283,'2005-07-11 14:18:56',1,'2006-02-15 21:30:53'),(3673,'2005-07-06 09:02:09',1837,88,'2005-07-15 06:45:09',2,'2006-02-15 21:30:53'),(3674,'2005-07-06 09:03:13',3686,559,'2005-07-13 08:43:13',1,'2006-02-15 21:30:53'),(3675,'2005-07-06 09:09:19',3662,282,'2005-07-12 08:51:19',1,'2006-02-15 21:30:53'),(3676,'2005-07-06 09:10:37',1967,137,'2005-07-14 08:24:37',1,'2006-02-15 21:30:53'),(3677,'2005-07-06 09:11:58',600,5,'2005-07-08 10:50:58',2,'2006-02-15 21:30:53'),(3678,'2005-07-06 09:15:15',3861,364,'2005-07-10 05:01:15',1,'2006-02-15 21:30:53'),(3679,'2005-07-06 09:15:57',2186,547,'2005-07-08 03:20:57',1,'2006-02-15 21:30:53'),(3680,'2005-07-06 09:16:10',2427,82,'2005-07-08 07:52:10',2,'2006-02-15 21:30:53'),(3681,'2005-07-06 09:19:30',3325,294,'2005-07-11 09:40:30',1,'2006-02-15 21:30:53'),(3682,'2005-07-06 09:22:48',2597,98,'2005-07-14 11:17:48',2,'2006-02-15 21:30:53'),(3683,'2005-07-06 09:25:56',3020,43,'2005-07-14 12:10:56',1,'2006-02-15 21:30:53'),(3684,'2005-07-06 09:29:22',3261,395,'2005-07-12 08:19:22',1,'2006-02-15 21:30:53'),(3685,'2005-07-06 09:30:45',2015,58,'2005-07-11 15:16:45',2,'2006-02-15 21:30:53'),(3686,'2005-07-06 09:37:50',376,548,'2005-07-09 10:15:50',2,'2006-02-15 21:30:53'),(3687,'2005-07-06 09:38:33',2040,207,'2005-07-14 07:50:33',1,'2006-02-15 21:30:53'),(3688,'2005-07-06 09:41:53',1102,380,'2005-07-14 10:30:53',2,'2006-02-15 21:30:53'),(3689,'2005-07-06 09:43:01',3168,129,'2005-07-11 09:57:01',1,'2006-02-15 21:30:53'),(3690,'2005-07-06 09:46:03',4405,435,'2005-07-07 12:12:03',1,'2006-02-15 21:30:53'),(3691,'2005-07-06 09:46:12',1937,478,'2005-07-07 14:08:12',1,'2006-02-15 21:30:53'),(3692,'2005-07-06 09:54:12',1237,286,'2005-07-11 09:42:12',2,'2006-02-15 21:30:53'),(3693,'2005-07-06 09:56:09',2989,545,'2005-07-15 06:50:09',2,'2006-02-15 21:30:53'),(3694,'2005-07-06 10:01:23',3848,419,'2005-07-08 11:44:23',2,'2006-02-15 21:30:53'),(3695,'2005-07-06 10:02:08',2823,441,'2005-07-09 15:43:08',1,'2006-02-15 21:30:53'),(3696,'2005-07-06 10:04:55',3244,497,'2005-07-11 15:58:55',2,'2006-02-15 21:30:53'),(3697,'2005-07-06 10:07:22',1223,182,'2005-07-13 14:04:22',2,'2006-02-15 21:30:53'),(3698,'2005-07-06 10:09:20',1263,461,'2005-07-08 15:49:20',1,'2006-02-15 21:30:53'),(3699,'2005-07-06 10:11:25',418,262,'2005-07-14 05:18:25',1,'2006-02-15 21:30:53'),(3700,'2005-07-06 10:12:19',343,72,'2005-07-07 14:21:19',2,'2006-02-15 21:30:53'),(3701,'2005-07-06 10:12:45',3679,31,'2005-07-09 08:52:45',1,'2006-02-15 21:30:53'),(3702,'2005-07-06 10:13:56',2204,428,'2005-07-10 08:12:56',1,'2006-02-15 21:30:53'),(3703,'2005-07-06 10:15:26',4276,421,'2005-07-13 13:00:26',1,'2006-02-15 21:30:53'),(3704,'2005-07-06 10:16:45',2687,323,'2005-07-13 12:44:45',2,'2006-02-15 21:30:53'),(3705,'2005-07-06 10:17:59',65,223,'2005-07-10 15:31:59',1,'2006-02-15 21:30:53'),(3706,'2005-07-06 10:18:01',681,132,'2005-07-09 09:07:01',2,'2006-02-15 21:30:53'),(3707,'2005-07-06 10:21:49',1080,14,'2005-07-12 05:14:49',2,'2006-02-15 21:30:53'),(3708,'2005-07-06 10:23:27',2105,201,'2005-07-14 09:26:27',1,'2006-02-15 21:30:53'),(3709,'2005-07-06 10:26:56',4033,187,'2005-07-15 13:51:56',2,'2006-02-15 21:30:53'),(3710,'2005-07-06 10:28:53',2596,228,'2005-07-15 06:17:53',2,'2006-02-15 21:30:53'),(3711,'2005-07-06 10:46:15',1914,75,'2005-07-07 09:25:15',2,'2006-02-15 21:30:53'),(3712,'2005-07-06 10:47:35',3741,504,'2005-07-15 09:39:35',1,'2006-02-15 21:30:53'),(3713,'2005-07-06 10:49:30',1823,504,'2005-07-13 10:44:30',1,'2006-02-15 21:30:53'),(3714,'2005-07-06 10:51:28',1985,276,'2005-07-09 13:57:28',2,'2006-02-15 21:30:53'),(3715,'2005-07-06 10:51:48',4456,228,'2005-07-11 06:08:48',1,'2006-02-15 21:30:53'),(3716,'2005-07-06 10:52:32',3271,92,'2005-07-14 08:45:32',2,'2006-02-15 21:30:53'),(3717,'2005-07-06 10:53:34',1677,173,'2005-07-07 13:43:34',2,'2006-02-15 21:30:53'),(3718,'2005-07-06 10:57:56',2624,56,'2005-07-12 12:54:56',1,'2006-02-15 21:30:53'),(3719,'2005-07-06 11:05:55',3573,376,'2005-07-11 08:10:55',2,'2006-02-15 21:30:53'),(3720,'2005-07-06 11:06:57',2958,96,'2005-07-09 14:16:57',1,'2006-02-15 21:30:53'),(3721,'2005-07-06 11:10:09',2654,226,'2005-07-11 07:45:09',2,'2006-02-15 21:30:53'),(3722,'2005-07-06 11:10:27',604,83,'2005-07-13 12:56:27',2,'2006-02-15 21:30:53'),(3723,'2005-07-06 11:12:02',4554,501,'2005-07-14 16:45:02',2,'2006-02-15 21:30:53'),(3724,'2005-07-06 11:12:48',3622,468,'2005-07-14 14:41:48',1,'2006-02-15 21:30:53'),(3725,'2005-07-06 11:15:04',2789,126,'2005-07-09 06:39:04',1,'2006-02-15 21:30:53'),(3726,'2005-07-06 11:15:49',742,363,'2005-07-11 05:54:49',2,'2006-02-15 21:30:53'),(3727,'2005-07-06 11:16:43',2886,57,'2005-07-07 15:39:43',1,'2006-02-15 21:30:53'),(3728,'2005-07-06 11:29:00',1798,298,'2005-07-11 06:28:00',1,'2006-02-15 21:30:53'),(3729,'2005-07-06 11:30:29',3156,90,'2005-07-12 07:18:29',1,'2006-02-15 21:30:53'),(3730,'2005-07-06 11:31:24',1665,355,'2005-07-15 06:53:24',1,'2006-02-15 21:30:53'),(3731,'2005-07-06 11:33:36',4133,558,'2005-07-15 12:23:36',2,'2006-02-15 21:30:53'),(3732,'2005-07-06 11:33:37',106,318,'2005-07-08 08:31:37',1,'2006-02-15 21:30:53'),(3733,'2005-07-06 11:33:55',3242,586,'2005-07-09 10:08:55',2,'2006-02-15 21:30:53'),(3734,'2005-07-06 11:40:27',4569,37,'2005-07-14 12:08:27',1,'2006-02-15 21:30:53'),(3735,'2005-07-06 11:42:04',2262,534,'2005-07-12 14:33:04',2,'2006-02-15 21:30:53'),(3736,'2005-07-06 11:43:44',1515,23,'2005-07-13 07:55:44',2,'2006-02-15 21:30:53'),(3737,'2005-07-06 11:45:53',123,403,'2005-07-13 15:27:53',1,'2006-02-15 21:30:53'),(3738,'2005-07-06 11:50:57',578,546,'2005-07-09 08:07:57',1,'2006-02-15 21:30:53'),(3739,'2005-07-06 11:54:18',4333,157,'2005-07-09 10:48:18',1,'2006-02-15 21:30:53'),(3740,'2005-07-06 11:55:35',1829,277,'2005-07-14 09:44:35',2,'2006-02-15 21:30:53'),(3741,'2005-07-06 12:00:18',1449,584,'2005-07-12 09:02:18',2,'2006-02-15 21:30:53'),(3742,'2005-07-06 12:01:38',2873,96,'2005-07-15 10:46:38',1,'2006-02-15 21:30:53'),(3743,'2005-07-06 12:03:54',1012,456,'2005-07-13 10:56:54',2,'2006-02-15 21:30:53'),(3744,'2005-07-06 12:10:02',3343,510,'2005-07-08 11:49:02',2,'2006-02-15 21:30:53'),(3745,'2005-07-06 12:10:32',1518,171,'2005-07-12 15:20:32',1,'2006-02-15 21:30:53'),(3746,'2005-07-06 12:10:51',3387,424,'2005-07-07 11:36:51',2,'2006-02-15 21:30:53'),(3747,'2005-07-06 12:11:14',1093,437,'2005-07-09 17:14:14',2,'2006-02-15 21:30:53'),(3748,'2005-07-06 12:11:22',2920,79,'2005-07-12 07:22:22',1,'2006-02-15 21:30:53'),(3749,'2005-07-06 12:18:03',1531,170,'2005-07-11 07:25:03',1,'2006-02-15 21:30:53'),(3750,'2005-07-06 12:19:28',2422,103,'2005-07-14 13:16:28',2,'2006-02-15 21:30:53'),(3751,'2005-07-06 12:23:41',3652,128,'2005-07-10 06:58:41',1,'2006-02-15 21:30:53'),(3752,'2005-07-06 12:30:12',4561,235,'2005-07-13 12:13:12',1,'2006-02-15 21:30:53'),(3753,'2005-07-06 12:34:06',774,358,'2005-07-07 14:19:06',2,'2006-02-15 21:30:53'),(3754,'2005-07-06 12:35:44',4042,83,'2005-07-08 16:28:44',1,'2006-02-15 21:30:53'),(3755,'2005-07-06 12:37:16',3147,402,'2005-07-13 07:22:16',1,'2006-02-15 21:30:53'),(3756,'2005-07-06 12:40:38',30,320,'2005-07-11 09:29:38',1,'2006-02-15 21:30:53'),(3757,'2005-07-06 12:42:26',2816,66,'2005-07-11 10:30:26',1,'2006-02-15 21:30:53'),(3758,'2005-07-06 12:43:11',2498,48,'2005-07-14 12:52:11',2,'2006-02-15 21:30:53'),(3759,'2005-07-06 12:46:38',4165,378,'2005-07-10 11:31:38',1,'2006-02-15 21:30:53'),(3760,'2005-07-06 12:49:28',1306,330,'2005-07-09 16:29:28',1,'2006-02-15 21:30:53'),(3761,'2005-07-06 12:52:44',4304,464,'2005-07-08 17:22:44',1,'2006-02-15 21:30:53'),(3762,'2005-07-06 12:52:49',1941,413,'2005-07-12 11:41:49',1,'2006-02-15 21:30:53'),(3763,'2005-07-06 12:56:31',1573,189,'2005-07-09 14:49:31',1,'2006-02-15 21:30:53'),(3764,'2005-07-06 13:01:03',3115,470,'2005-07-13 15:26:03',1,'2006-02-15 21:30:53'),(3765,'2005-07-06 13:01:47',1805,547,'2005-07-09 07:10:47',1,'2006-02-15 21:30:53'),(3766,'2005-07-06 13:04:35',4504,312,'2005-07-07 15:46:35',1,'2006-02-15 21:30:53'),(3767,'2005-07-06 13:07:27',923,582,'2005-07-08 18:48:27',1,'2006-02-15 21:30:53'),(3768,'2005-07-06 13:07:30',3995,573,'2005-07-09 16:26:30',2,'2006-02-15 21:30:53'),(3769,'2005-07-06 13:11:33',467,567,'2005-07-14 17:54:33',2,'2006-02-15 21:30:53'),(3770,'2005-07-06 13:14:28',3836,198,'2005-07-13 09:23:28',1,'2006-02-15 21:30:53'),(3771,'2005-07-06 13:19:34',1373,56,'2005-07-10 10:27:34',2,'2006-02-15 21:30:53'),(3772,'2005-07-06 13:22:53',434,338,'2005-07-10 11:54:53',2,'2006-02-15 21:30:53'),(3773,'2005-07-06 13:23:34',2034,263,'2005-07-08 17:23:34',2,'2006-02-15 21:30:53'),(3774,'2005-07-06 13:25:07',4044,439,'2005-07-15 12:56:07',2,'2006-02-15 21:30:53'),(3775,'2005-07-06 13:27:33',3696,300,'2005-07-09 10:27:33',1,'2006-02-15 21:30:53'),(3776,'2005-07-06 13:31:37',4387,278,'2005-07-10 10:53:37',2,'2006-02-15 21:30:53'),(3777,'2005-07-06 13:36:48',2470,548,'2005-07-11 14:26:48',1,'2006-02-15 21:30:53'),(3778,'2005-07-06 13:44:48',2181,122,'2005-07-13 09:31:48',2,'2006-02-15 21:30:53'),(3779,'2005-07-06 13:46:36',634,583,'2005-07-10 15:49:36',2,'2006-02-15 21:30:53'),(3780,'2005-07-06 13:52:02',1209,99,'2005-07-15 08:41:02',2,'2006-02-15 21:30:53'),(3781,'2005-07-06 13:53:41',3894,23,'2005-07-15 10:03:41',1,'2006-02-15 21:30:53'),(3782,'2005-07-06 13:57:03',3365,515,'2005-07-09 11:13:03',2,'2006-02-15 21:30:53'),(3783,'2005-07-06 13:57:31',2345,386,'2005-07-14 10:44:31',2,'2006-02-15 21:30:53'),(3784,'2005-07-06 13:57:56',2287,165,'2005-07-14 17:24:56',2,'2006-02-15 21:30:53'),(3785,'2005-07-06 14:00:13',3279,577,'2005-07-14 10:13:13',2,'2006-02-15 21:30:53'),(3786,'2005-07-06 14:00:41',4508,152,'2005-07-13 16:49:41',1,'2006-02-15 21:30:53'),(3787,'2005-07-06 14:02:01',288,474,'2005-07-09 19:09:01',2,'2006-02-15 21:30:53'),(3788,'2005-07-06 14:02:02',1363,379,'2005-07-10 18:24:02',1,'2006-02-15 21:30:53'),(3789,'2005-07-06 14:02:26',3560,595,'2005-07-14 18:13:26',1,'2006-02-15 21:30:53'),(3790,'2005-07-06 14:13:45',1711,10,'2005-07-14 13:35:45',1,'2006-02-15 21:30:53'),(3791,'2005-07-06 14:24:56',3426,452,'2005-07-14 11:06:56',2,'2006-02-15 21:30:53'),(3792,'2005-07-06 14:26:38',2651,312,'2005-07-11 16:34:38',1,'2006-02-15 21:30:53'),(3793,'2005-07-06 14:32:44',4558,553,'2005-07-08 13:55:44',1,'2006-02-15 21:30:53'),(3794,'2005-07-06 14:35:26',584,499,'2005-07-11 14:40:26',2,'2006-02-15 21:30:53'),(3795,'2005-07-06 14:37:41',240,153,'2005-07-11 20:27:41',2,'2006-02-15 21:30:53'),(3796,'2005-07-06 14:45:22',1649,228,'2005-07-07 11:01:22',2,'2006-02-15 21:30:53'),(3797,'2005-07-06 14:54:52',1047,374,'2005-07-10 09:50:52',2,'2006-02-15 21:30:53'),(3798,'2005-07-06 14:57:53',1942,479,'2005-07-07 10:48:53',2,'2006-02-15 21:30:53'),(3799,'2005-07-06 15:00:14',4532,251,'2005-07-10 15:39:14',1,'2006-02-15 21:30:53'),(3800,'2005-07-06 15:01:27',4004,100,'2005-07-15 11:12:27',2,'2006-02-15 21:30:53'),(3801,'2005-07-06 15:05:50',4209,68,'2005-07-12 12:56:50',1,'2006-02-15 21:30:53'),(3802,'2005-07-06 15:06:09',1017,91,'2005-07-08 09:33:09',2,'2006-02-15 21:30:53'),(3803,'2005-07-06 15:06:55',2062,494,'2005-07-08 18:53:55',1,'2006-02-15 21:30:53'),(3804,'2005-07-06 15:08:08',537,126,'2005-07-15 14:01:08',2,'2006-02-15 21:30:53'),(3805,'2005-07-06 15:08:42',1716,418,'2005-07-07 14:34:42',1,'2006-02-15 21:30:53'),(3806,'2005-07-06 15:09:41',3555,154,'2005-07-14 09:14:41',2,'2006-02-15 21:30:53'),(3807,'2005-07-06 15:11:44',39,425,'2005-07-10 09:20:44',1,'2006-02-15 21:30:53'),(3808,'2005-07-06 15:15:35',4339,314,'2005-07-07 16:10:35',1,'2006-02-15 21:30:53'),(3809,'2005-07-06 15:16:37',2932,358,'2005-07-09 14:45:37',1,'2006-02-15 21:30:53'),(3810,'2005-07-06 15:18:44',342,296,'2005-07-12 09:52:44',2,'2006-02-15 21:30:53'),(3811,'2005-07-06 15:20:37',695,208,'2005-07-08 16:26:37',2,'2006-02-15 21:30:53'),(3812,'2005-07-06 15:22:19',4490,381,'2005-07-08 13:04:19',1,'2006-02-15 21:30:53'),(3813,'2005-07-06 15:23:34',4100,189,'2005-07-08 19:03:34',1,'2006-02-15 21:30:53'),(3814,'2005-07-06 15:23:56',3826,306,'2005-07-13 20:51:56',2,'2006-02-15 21:30:53'),(3815,'2005-07-06 15:26:36',4038,472,'2005-07-11 17:07:36',2,'2006-02-15 21:30:53'),(3816,'2005-07-06 15:27:04',2941,489,'2005-07-14 13:12:04',1,'2006-02-15 21:30:53'),(3817,'2005-07-06 15:31:45',2933,267,'2005-07-11 17:11:45',1,'2006-02-15 21:30:53'),(3818,'2005-07-06 15:33:31',653,97,'2005-07-11 16:35:31',1,'2006-02-15 21:30:53'),(3819,'2005-07-06 15:35:06',1814,74,'2005-07-14 19:08:06',1,'2006-02-15 21:30:53'),(3820,'2005-07-06 15:35:26',4192,460,'2005-07-11 12:22:26',2,'2006-02-15 21:30:53'),(3821,'2005-07-06 15:36:20',4385,354,'2005-07-11 20:04:20',1,'2006-02-15 21:30:53'),(3822,'2005-07-06 15:41:15',1314,241,'2005-07-07 16:41:15',1,'2006-02-15 21:30:53'),(3823,'2005-07-06 15:41:27',124,265,'2005-07-09 09:48:27',1,'2006-02-15 21:30:53'),(3824,'2005-07-06 15:43:15',3107,107,'2005-07-13 16:05:15',2,'2006-02-15 21:30:53'),(3825,'2005-07-06 15:50:03',630,132,'2005-07-09 19:20:03',1,'2006-02-15 21:30:53'),(3826,'2005-07-06 15:51:58',73,451,'2005-07-13 12:35:58',1,'2006-02-15 21:30:53'),(3827,'2005-07-06 15:52:03',2072,41,'2005-07-08 21:43:03',2,'2006-02-15 21:30:53'),(3828,'2005-07-06 15:57:30',4493,498,'2005-07-10 12:17:30',2,'2006-02-15 21:30:53'),(3829,'2005-07-06 15:59:40',4126,356,'2005-07-11 10:29:40',1,'2006-02-15 21:30:53'),(3830,'2005-07-06 16:01:16',553,310,'2005-07-15 19:35:16',2,'2006-02-15 21:30:53'),(3831,'2005-07-06 16:06:35',1338,206,'2005-07-08 15:14:35',2,'2006-02-15 21:30:53'),(3832,'2005-07-06 16:12:23',4499,233,'2005-07-12 21:29:23',1,'2006-02-15 21:30:53'),(3833,'2005-07-06 16:18:28',3232,416,'2005-07-14 20:09:28',2,'2006-02-15 21:30:53'),(3834,'2005-07-06 16:19:56',3001,366,'2005-07-13 11:38:56',2,'2006-02-15 21:30:53'),(3835,'2005-07-06 16:22:45',935,486,'2005-07-11 17:04:45',2,'2006-02-15 21:30:53'),(3836,'2005-07-06 16:26:04',1148,351,'2005-07-10 15:08:04',1,'2006-02-15 21:30:53'),(3837,'2005-07-06 16:27:43',3166,309,'2005-07-07 18:02:43',1,'2006-02-15 21:30:53'),(3838,'2005-07-06 16:29:43',3404,565,'2005-07-11 20:50:43',1,'2006-02-15 21:30:53'),(3839,'2005-07-06 16:30:30',3230,231,'2005-07-11 19:00:30',1,'2006-02-15 21:30:53'),(3840,'2005-07-06 16:30:59',4384,468,'2005-07-15 22:08:59',2,'2006-02-15 21:30:53'),(3841,'2005-07-06 16:34:00',4228,470,'2005-07-08 15:12:00',2,'2006-02-15 21:30:53'),(3842,'2005-07-06 16:34:32',3119,583,'2005-07-08 11:55:32',2,'2006-02-15 21:30:53'),(3843,'2005-07-06 16:35:40',3844,62,'2005-07-07 18:29:40',1,'2006-02-15 21:30:53'),(3844,'2005-07-06 16:37:58',2814,179,'2005-07-09 19:54:58',2,'2006-02-15 21:30:53'),(3845,'2005-07-06 16:38:14',4495,28,'2005-07-09 14:59:14',2,'2006-02-15 21:30:53'),(3846,'2005-07-06 16:43:10',2829,88,'2005-07-14 11:09:10',2,'2006-02-15 21:30:53'),(3847,'2005-07-06 16:44:41',782,206,'2005-07-07 21:54:41',2,'2006-02-15 21:30:53'),(3848,'2005-07-06 16:47:32',2906,188,'2005-07-14 15:00:32',1,'2006-02-15 21:30:53'),(3849,'2005-07-06 16:49:43',3660,60,'2005-07-12 17:20:43',1,'2006-02-15 21:30:53'),(3850,'2005-07-06 16:51:21',1700,103,'2005-07-12 13:58:21',1,'2006-02-15 21:30:53'),(3851,'2005-07-06 16:54:12',493,436,'2005-07-11 22:49:12',1,'2006-02-15 21:30:53'),(3852,'2005-07-06 16:57:49',3329,511,'2005-07-11 17:11:49',1,'2006-02-15 21:30:53'),(3853,'2005-07-06 16:59:20',1411,537,'2005-07-07 12:30:20',2,'2006-02-15 21:30:53'),(3854,'2005-07-06 17:02:33',2054,243,'2005-07-12 17:32:33',2,'2006-02-15 21:30:53'),(3855,'2005-07-06 17:03:48',2931,46,'2005-07-12 14:32:48',1,'2006-02-15 21:30:53'),(3856,'2005-07-06 17:04:46',3083,498,'2005-07-14 19:23:46',2,'2006-02-15 21:30:53'),(3857,'2005-07-06 17:07:54',1135,236,'2005-07-07 13:28:54',1,'2006-02-15 21:30:53'),(3858,'2005-07-06 17:17:57',829,377,'2005-07-10 23:10:57',2,'2006-02-15 21:30:53'),(3859,'2005-07-06 17:18:15',2548,553,'2005-07-09 16:48:15',1,'2006-02-15 21:30:53'),(3860,'2005-07-06 17:20:24',144,514,'2005-07-09 22:33:24',1,'2006-02-15 21:30:53'),(3861,'2005-07-06 17:24:49',4506,202,'2005-07-15 22:19:49',2,'2006-02-15 21:30:53'),(3862,'2005-07-06 17:35:22',471,181,'2005-07-15 17:13:22',1,'2006-02-15 21:30:53'),(3863,'2005-07-06 17:40:18',363,481,'2005-07-07 17:58:18',2,'2006-02-15 21:30:53'),(3864,'2005-07-06 17:41:42',2811,68,'2005-07-08 14:17:42',1,'2006-02-15 21:30:53'),(3865,'2005-07-06 17:46:57',3579,357,'2005-07-12 12:20:57',1,'2006-02-15 21:30:53'),(3866,'2005-07-06 17:47:20',194,409,'2005-07-15 18:12:20',1,'2006-02-15 21:30:53'),(3867,'2005-07-06 17:52:19',3620,580,'2005-07-13 21:48:19',1,'2006-02-15 21:30:53'),(3868,'2005-07-06 17:54:13',1606,416,'2005-07-10 14:51:13',1,'2006-02-15 21:30:53'),(3869,'2005-07-06 17:56:46',2540,183,'2005-07-10 20:44:46',1,'2006-02-15 21:30:53'),(3870,'2005-07-06 17:57:54',3357,12,'2005-07-13 12:30:54',1,'2006-02-15 21:30:53'),(3871,'2005-07-06 17:58:51',3114,331,'2005-07-15 22:18:51',2,'2006-02-15 21:30:53'),(3872,'2005-07-06 18:00:19',1785,513,'2005-07-07 17:26:19',1,'2006-02-15 21:30:53'),(3873,'2005-07-06 18:03:16',4148,394,'2005-07-15 23:58:16',2,'2006-02-15 21:30:53'),(3874,'2005-07-06 18:06:12',1870,137,'2005-07-12 16:55:12',1,'2006-02-15 21:30:53'),(3875,'2005-07-06 18:15:39',712,108,'2005-07-11 17:34:39',1,'2006-02-15 21:30:53'),(3876,'2005-07-06 18:21:13',4039,295,'2005-07-14 16:57:13',2,'2006-02-15 21:30:53'),(3877,'2005-07-06 18:22:10',2796,576,'2005-07-07 23:38:10',1,'2006-02-15 21:30:53'),(3878,'2005-07-06 18:27:09',4022,385,'2005-07-15 20:13:09',2,'2006-02-15 21:30:53'),(3879,'2005-07-06 18:31:20',1376,81,'2005-07-09 19:03:20',2,'2006-02-15 21:30:53'),(3880,'2005-07-06 18:32:49',42,507,'2005-07-07 20:46:49',2,'2006-02-15 21:30:53'),(3881,'2005-07-06 18:35:37',143,456,'2005-07-10 00:06:37',2,'2006-02-15 21:30:53'),(3882,'2005-07-06 18:38:21',788,254,'2005-07-09 14:55:21',1,'2006-02-15 21:30:53'),(3883,'2005-07-06 18:39:38',3238,69,'2005-07-14 15:59:38',2,'2006-02-15 21:30:53'),(3884,'2005-07-06 18:41:33',1806,210,'2005-07-07 22:06:33',1,'2006-02-15 21:30:53'),(3885,'2005-07-06 18:43:43',1820,282,'2005-07-12 19:48:43',2,'2006-02-15 21:30:53'),(3886,'2005-07-06 18:44:24',2368,326,'2005-07-08 15:11:24',1,'2006-02-15 21:30:53'),(3887,'2005-07-06 18:46:34',1695,530,'2005-07-07 13:15:34',1,'2006-02-15 21:30:53'),(3888,'2005-07-06 18:54:20',1945,412,'2005-07-12 17:13:20',2,'2006-02-15 21:30:53'),(3889,'2005-07-06 18:56:25',2005,576,'2005-07-08 21:22:25',2,'2006-02-15 21:30:53'),(3890,'2005-07-06 18:58:15',2570,553,'2005-07-10 18:51:15',1,'2006-02-15 21:30:53'),(3891,'2005-07-06 18:58:25',3216,553,'2005-07-09 23:20:25',2,'2006-02-15 21:30:53'),(3892,'2005-07-06 18:58:58',778,549,'2005-07-10 19:29:58',1,'2006-02-15 21:30:53'),(3893,'2005-07-06 18:59:31',1281,350,'2005-07-12 19:21:31',1,'2006-02-15 21:30:53'),(3894,'2005-07-06 19:01:39',2087,149,'2005-07-12 21:35:39',2,'2006-02-15 21:30:53'),(3895,'2005-07-06 19:04:24',145,584,'2005-07-15 17:48:24',2,'2006-02-15 21:30:53'),(3896,'2005-07-06 19:09:15',1755,309,'2005-07-16 00:52:15',2,'2006-02-15 21:30:53'),(3897,'2005-07-06 19:11:43',14,277,'2005-07-11 21:50:43',2,'2006-02-15 21:30:53'),(3898,'2005-07-06 19:12:37',3858,53,'2005-07-11 15:50:37',1,'2006-02-15 21:30:53'),(3899,'2005-07-06 19:12:40',4020,485,'2005-07-13 23:41:40',1,'2006-02-15 21:30:53'),(3900,'2005-07-06 19:21:28',1497,129,'2005-07-15 21:06:28',2,'2006-02-15 21:30:53'),(3901,'2005-07-06 19:24:55',3367,321,'2005-07-14 20:30:55',2,'2006-02-15 21:30:53'),(3902,'2005-07-06 19:25:18',2868,192,'2005-07-10 17:42:18',2,'2006-02-15 21:30:53'),(3903,'2005-07-06 19:27:32',3614,369,'2005-07-08 23:27:32',1,'2006-02-15 21:30:53'),(3904,'2005-07-06 19:30:57',3600,485,'2005-07-11 18:47:57',2,'2006-02-15 21:30:53'),(3905,'2005-07-06 19:33:34',3817,526,'2005-07-15 17:55:34',1,'2006-02-15 21:30:53'),(3906,'2005-07-06 19:35:55',1383,293,'2005-07-15 22:35:55',1,'2006-02-15 21:30:53'),(3907,'2005-07-06 19:39:14',2507,452,'2005-07-11 17:45:14',1,'2006-02-15 21:30:53'),(3908,'2005-07-06 19:47:26',3980,116,'2005-07-13 19:59:26',1,'2006-02-15 21:30:53'),(3909,'2005-07-06 19:54:41',3423,396,'2005-07-15 18:11:41',2,'2006-02-15 21:30:53'),(3910,'2005-07-06 20:05:18',2085,248,'2005-07-10 18:51:18',1,'2006-02-15 21:30:53'),(3911,'2005-07-06 20:09:11',4548,34,'2005-07-08 23:53:11',1,'2006-02-15 21:30:53'),(3912,'2005-07-06 20:10:03',2449,154,'2005-07-08 18:39:03',2,'2006-02-15 21:30:53'),(3913,'2005-07-06 20:11:00',752,494,'2005-07-08 14:42:00',1,'2006-02-15 21:30:53'),(3914,'2005-07-06 20:11:10',4092,159,'2005-07-14 14:42:10',2,'2006-02-15 21:30:53'),(3915,'2005-07-06 20:16:46',125,163,'2005-07-10 17:24:46',1,'2006-02-15 21:30:53'),(3916,'2005-07-06 20:18:50',3198,46,'2005-07-12 21:56:50',1,'2006-02-15 21:30:53'),(3917,'2005-07-06 20:19:29',2747,471,'2005-07-11 00:49:29',1,'2006-02-15 21:30:53'),(3918,'2005-07-06 20:26:15',1111,435,'2005-07-15 20:32:15',1,'2006-02-15 21:30:53'),(3919,'2005-07-06 20:26:21',2695,147,'2005-07-15 00:13:21',1,'2006-02-15 21:30:53'),(3920,'2005-07-06 20:26:40',1551,321,'2005-07-15 15:00:40',2,'2006-02-15 21:30:53'),(3921,'2005-07-06 20:29:48',949,531,'2005-07-14 01:44:48',1,'2006-02-15 21:30:53'),(3922,'2005-07-06 20:32:27',2878,470,'2005-07-14 19:00:27',1,'2006-02-15 21:30:53'),(3923,'2005-07-06 20:34:10',2039,63,'2005-07-13 19:20:10',1,'2006-02-15 21:30:53'),(3924,'2005-07-06 20:38:02',187,114,'2005-07-11 23:35:02',2,'2006-02-15 21:30:53'),(3925,'2005-07-06 20:41:44',2653,428,'2005-07-15 21:05:44',2,'2006-02-15 21:30:53'),(3926,'2005-07-06 20:42:35',4241,500,'2005-07-09 16:30:35',2,'2006-02-15 21:30:53'),(3927,'2005-07-06 20:48:14',2194,404,'2005-07-10 15:37:14',1,'2006-02-15 21:30:53'),(3928,'2005-07-06 20:52:09',1960,411,'2005-07-08 18:51:09',1,'2006-02-15 21:30:53'),(3929,'2005-07-06 20:52:39',1235,453,'2005-07-12 00:27:39',2,'2006-02-15 21:30:53'),(3930,'2005-07-06 20:54:07',165,573,'2005-07-10 18:31:07',1,'2006-02-15 21:30:53'),(3931,'2005-07-06 21:03:46',182,176,'2005-07-16 01:32:46',1,'2006-02-15 21:30:53'),(3932,'2005-07-06 21:06:17',4396,490,'2005-07-07 19:25:17',2,'2006-02-15 21:30:53'),(3933,'2005-07-06 21:06:37',1202,229,'2005-07-08 20:23:37',1,'2006-02-15 21:30:53'),(3934,'2005-07-06 21:07:23',3187,576,'2005-07-10 18:20:23',2,'2006-02-15 21:30:53'),(3935,'2005-07-06 21:08:29',3402,503,'2005-07-15 23:28:29',2,'2006-02-15 21:30:53'),(3936,'2005-07-06 21:15:03',4258,129,'2005-07-08 17:45:03',2,'2006-02-15 21:30:53'),(3937,'2005-07-06 21:15:38',2091,211,'2005-07-15 00:01:38',2,'2006-02-15 21:30:53'),(3938,'2005-07-06 21:15:45',1991,341,'2005-07-13 20:02:45',2,'2006-02-15 21:30:53'),(3939,'2005-07-06 21:16:32',3627,149,'2005-07-11 03:12:32',2,'2006-02-15 21:30:53'),(3940,'2005-07-06 21:16:59',1502,116,'2005-07-07 19:17:59',2,'2006-02-15 21:30:53'),(3941,'2005-07-06 21:20:37',382,560,'2005-07-09 01:35:37',2,'2006-02-15 21:30:53'),(3942,'2005-07-06 21:21:34',677,553,'2005-07-15 02:34:34',1,'2006-02-15 21:30:53'),(3943,'2005-07-06 21:22:17',1816,566,'2005-07-07 21:26:17',1,'2006-02-15 21:30:53'),(3944,'2005-07-06 21:34:11',4213,436,'2005-07-08 23:46:11',2,'2006-02-15 21:30:53'),(3945,'2005-07-06 21:35:00',754,86,'2005-07-08 00:31:00',2,'2006-02-15 21:30:53'),(3946,'2005-07-06 21:39:24',294,13,'2005-07-11 16:10:24',1,'2006-02-15 21:30:53'),(3947,'2005-07-06 21:42:21',4188,324,'2005-07-08 19:37:21',1,'2006-02-15 21:30:53'),(3948,'2005-07-06 21:45:53',2254,161,'2005-07-08 19:24:53',2,'2006-02-15 21:30:53'),(3949,'2005-07-06 21:46:36',1765,153,'2005-07-11 03:18:36',1,'2006-02-15 21:30:53'),(3950,'2005-07-06 21:48:44',4153,598,'2005-07-14 02:25:44',1,'2006-02-15 21:30:53'),(3951,'2005-07-06 21:50:41',2288,250,'2005-07-12 02:09:41',2,'2006-02-15 21:30:53'),(3952,'2005-07-06 21:51:31',1719,417,'2005-07-13 15:54:31',1,'2006-02-15 21:30:53'),(3953,'2005-07-06 21:54:55',3879,385,'2005-07-09 18:52:55',1,'2006-02-15 21:30:53'),(3954,'2005-07-06 21:57:44',4250,558,'2005-07-08 02:37:44',2,'2006-02-15 21:30:53'),(3955,'2005-07-06 21:58:08',2523,247,'2005-07-08 03:43:08',1,'2006-02-15 21:30:53'),(3956,'2005-07-06 22:01:51',15,147,'2005-07-12 21:35:51',2,'2006-02-15 21:30:53'),(3957,'2005-07-06 22:05:47',443,414,'2005-07-16 01:08:47',1,'2006-02-15 21:30:53'),(3958,'2005-07-06 22:07:33',4117,288,'2005-07-10 19:31:33',2,'2006-02-15 21:30:53'),(3959,'2005-07-06 22:07:58',40,448,'2005-07-13 02:30:58',1,'2006-02-15 21:30:53'),(3960,'2005-07-06 22:08:53',2090,594,'2005-07-07 23:21:53',2,'2006-02-15 21:30:53'),(3961,'2005-07-06 22:11:43',4320,364,'2005-07-09 03:14:43',1,'2006-02-15 21:30:53'),(3962,'2005-07-06 22:13:45',379,307,'2005-07-15 00:22:45',2,'2006-02-15 21:30:53'),(3963,'2005-07-06 22:19:17',3912,111,'2005-07-15 01:22:17',2,'2006-02-15 21:30:53'),(3964,'2005-07-06 22:23:02',1853,30,'2005-07-07 22:21:02',1,'2006-02-15 21:30:53'),(3965,'2005-07-06 22:36:20',2863,243,'2005-07-09 17:45:20',1,'2006-02-15 21:30:53'),(3966,'2005-07-06 22:38:49',556,495,'2005-07-07 23:33:49',1,'2006-02-15 21:30:53'),(3967,'2005-07-06 22:45:10',2510,31,'2005-07-09 23:54:10',2,'2006-02-15 21:30:53'),(3968,'2005-07-06 22:47:09',558,235,'2005-07-12 21:01:09',1,'2006-02-15 21:30:53'),(3969,'2005-07-06 22:47:59',383,587,'2005-07-08 02:11:59',1,'2006-02-15 21:30:53'),(3970,'2005-07-06 22:48:17',701,381,'2005-07-15 19:07:17',1,'2006-02-15 21:30:53'),(3971,'2005-07-06 22:50:40',4415,473,'2005-07-08 01:02:40',1,'2006-02-15 21:30:53'),(3972,'2005-07-06 22:53:57',1895,598,'2005-07-11 01:32:57',1,'2006-02-15 21:30:53'),(3973,'2005-07-06 22:58:31',2625,592,'2005-07-16 03:27:31',2,'2006-02-15 21:30:53'),(3974,'2005-07-06 22:59:16',4282,318,'2005-07-11 22:30:16',1,'2006-02-15 21:30:53'),(3975,'2005-07-06 23:00:09',4343,545,'2005-07-10 01:39:09',2,'2006-02-15 21:30:53'),(3976,'2005-07-06 23:00:20',2424,329,'2005-07-07 21:51:20',2,'2006-02-15 21:30:53'),(3977,'2005-07-06 23:00:49',1284,449,'2005-07-15 00:41:49',1,'2006-02-15 21:30:53'),(3978,'2005-07-06 23:04:33',4341,343,'2005-07-10 17:45:33',2,'2006-02-15 21:30:53'),(3979,'2005-07-06 23:04:35',794,550,'2005-07-13 01:38:35',2,'2006-02-15 21:30:53'),(3980,'2005-07-06 23:11:11',1845,475,'2005-07-14 18:22:11',1,'2006-02-15 21:30:53'),(3981,'2005-07-06 23:12:12',842,375,'2005-07-13 01:47:12',2,'2006-02-15 21:30:53'),(3982,'2005-07-06 23:14:16',4327,64,'2005-07-08 21:21:16',2,'2006-02-15 21:30:53'),(3983,'2005-07-06 23:14:21',1261,6,'2005-07-12 17:55:21',2,'2006-02-15 21:30:53'),(3984,'2005-07-06 23:22:36',2205,570,'2005-07-08 21:40:36',2,'2006-02-15 21:30:53'),(3985,'2005-07-06 23:24:03',2096,307,'2005-07-10 00:20:03',2,'2006-02-15 21:30:53'),(3986,'2005-07-06 23:25:13',3737,122,'2005-07-09 21:26:13',2,'2006-02-15 21:30:53'),(3987,'2005-07-06 23:28:24',3104,270,'2005-07-15 00:52:24',1,'2006-02-15 21:30:53'),(3988,'2005-07-06 23:30:42',2981,421,'2005-07-13 03:06:42',2,'2006-02-15 21:30:53'),(3989,'2005-07-06 23:30:54',2366,213,'2005-07-12 01:28:54',1,'2006-02-15 21:30:53'),(3990,'2005-07-06 23:32:44',2009,558,'2005-07-14 01:35:44',2,'2006-02-15 21:30:53'),(3991,'2005-07-06 23:33:41',587,583,'2005-07-16 01:31:41',1,'2006-02-15 21:30:53'),(3992,'2005-07-06 23:36:56',3219,448,'2005-07-15 03:13:56',1,'2006-02-15 21:30:53'),(3993,'2005-07-06 23:37:06',1061,525,'2005-07-14 19:31:06',1,'2006-02-15 21:30:53'),(3994,'2005-07-06 23:39:01',902,487,'2005-07-14 00:33:01',1,'2006-02-15 21:30:53'),(3995,'2005-07-06 23:43:03',3990,128,'2005-07-13 04:13:03',2,'2006-02-15 21:30:53'),(3996,'2005-07-06 23:46:43',2857,551,'2005-07-14 22:34:43',2,'2006-02-15 21:30:53'),(3997,'2005-07-06 23:46:52',3895,52,'2005-07-14 05:39:52',2,'2006-02-15 21:30:53'),(3998,'2005-07-06 23:49:20',1245,566,'2005-07-12 20:39:20',1,'2006-02-15 21:30:53'),(3999,'2005-07-06 23:50:54',707,390,'2005-07-09 22:09:54',1,'2006-02-15 21:30:53'),(4000,'2005-07-06 23:58:37',2122,95,'2005-07-08 21:43:37',1,'2006-02-15 21:30:53'),(4001,'2005-07-07 00:07:00',864,120,'2005-07-13 21:27:00',2,'2006-02-15 21:30:53'),(4002,'2005-07-07 00:08:18',2790,308,'2005-07-14 01:29:18',2,'2006-02-15 21:30:53'),(4003,'2005-07-07 00:09:02',4054,8,'2005-07-08 04:27:02',1,'2006-02-15 21:30:53'),(4004,'2005-07-07 00:20:51',667,574,'2005-07-11 18:55:51',2,'2006-02-15 21:30:53'),(4005,'2005-07-07 00:22:26',3677,190,'2005-07-15 04:34:26',2,'2006-02-15 21:30:53'),(4006,'2005-07-07 00:25:29',397,473,'2005-07-08 05:30:29',2,'2006-02-15 21:30:53'),(4007,'2005-07-07 00:26:05',2071,285,'2005-07-15 19:53:05',1,'2006-02-15 21:30:53'),(4008,'2005-07-07 00:26:43',1107,505,'2005-07-16 03:58:43',2,'2006-02-15 21:30:53'),(4009,'2005-07-07 00:28:55',3607,394,'2005-07-10 00:37:55',1,'2006-02-15 21:30:53'),(4010,'2005-07-07 00:47:00',4509,476,'2005-07-12 06:23:00',2,'2006-02-15 21:30:53'),(4011,'2005-07-07 00:48:25',2052,20,'2005-07-13 06:30:25',2,'2006-02-15 21:30:53'),(4012,'2005-07-07 00:56:09',1400,104,'2005-07-10 21:49:09',1,'2006-02-15 21:30:53'),(4013,'2005-07-07 00:58:00',2344,475,'2005-07-15 19:42:00',2,'2006-02-15 21:30:53'),(4014,'2005-07-07 00:58:54',583,510,'2005-07-12 02:40:54',1,'2006-02-15 21:30:53'),(4015,'2005-07-07 00:59:46',3032,233,'2005-07-14 03:16:46',2,'2006-02-15 21:30:53'),(4016,'2005-07-07 01:05:50',3318,335,'2005-07-09 05:59:50',1,'2006-02-15 21:30:53'),(4017,'2005-07-07 01:08:18',3117,595,'2005-07-09 01:47:18',2,'2006-02-15 21:30:53'),(4018,'2005-07-07 01:10:33',906,207,'2005-07-12 20:54:33',2,'2006-02-15 21:30:53'),(4019,'2005-07-07 01:27:44',3200,294,'2005-07-10 21:30:44',1,'2006-02-15 21:30:53'),(4020,'2005-07-07 01:42:22',3760,471,'2005-07-10 00:53:22',1,'2006-02-15 21:30:53'),(4021,'2005-07-07 01:46:44',1676,315,'2005-07-12 00:16:44',2,'2006-02-15 21:30:53'),(4022,'2005-07-07 01:50:06',3914,390,'2005-07-09 21:47:06',2,'2006-02-15 21:30:53'),(4023,'2005-07-07 01:55:25',274,573,'2005-07-08 02:43:25',2,'2006-02-15 21:30:53'),(4024,'2005-07-07 02:11:23',3976,448,'2005-07-11 02:00:23',1,'2006-02-15 21:30:53'),(4025,'2005-07-07 02:13:24',3908,114,'2005-07-08 00:47:24',1,'2006-02-15 21:30:53'),(4026,'2005-07-07 02:15:48',4142,251,'2005-07-14 04:15:48',2,'2006-02-15 21:30:53'),(4027,'2005-07-07 02:19:01',56,116,'2005-07-10 01:12:01',1,'2006-02-15 21:30:53'),(4028,'2005-07-07 02:19:14',1651,344,'2005-07-15 08:09:14',2,'2006-02-15 21:30:53'),(4029,'2005-07-07 02:19:44',4075,518,'2005-07-15 02:30:44',2,'2006-02-15 21:30:53'),(4030,'2005-07-07 02:25:42',1734,300,'2005-07-08 22:53:42',2,'2006-02-15 21:30:53'),(4031,'2005-07-07 02:32:07',3094,143,'2005-07-14 06:01:07',2,'2006-02-15 21:30:53'),(4032,'2005-07-07 02:34:13',2628,335,'2005-07-14 22:43:13',1,'2006-02-15 21:30:53'),(4033,'2005-07-07 02:35:46',203,453,'2005-07-16 01:12:46',1,'2006-02-15 21:30:53'),(4034,'2005-07-07 02:36:33',1666,354,'2005-07-09 08:32:33',2,'2006-02-15 21:30:53'),(4035,'2005-07-07 02:45:02',3611,539,'2005-07-14 01:41:02',1,'2006-02-15 21:30:53'),(4036,'2005-07-07 02:48:00',500,397,'2005-07-07 22:46:00',1,'2006-02-15 21:30:53'),(4037,'2005-07-07 02:52:52',3903,594,'2005-07-16 00:09:52',1,'2006-02-15 21:30:53'),(4038,'2005-07-07 02:52:53',1264,27,'2005-07-11 22:32:53',2,'2006-02-15 21:30:53'),(4039,'2005-07-07 02:57:59',4050,290,'2005-07-12 03:44:59',2,'2006-02-15 21:30:53'),(4040,'2005-07-07 03:02:40',3046,103,'2005-07-16 06:05:40',2,'2006-02-15 21:30:53'),(4041,'2005-07-07 03:03:33',2217,445,'2005-07-09 07:57:33',2,'2006-02-15 21:30:53'),(4042,'2005-07-07 03:06:40',50,10,'2005-07-10 02:37:40',1,'2006-02-15 21:30:53'),(4043,'2005-07-07 03:09:50',3427,204,'2005-07-10 07:49:50',2,'2006-02-15 21:30:53'),(4044,'2005-07-07 03:22:23',3263,94,'2005-07-13 03:23:23',1,'2006-02-15 21:30:53'),(4045,'2005-07-07 03:26:14',1422,529,'2005-07-11 06:52:14',1,'2006-02-15 21:30:53'),(4046,'2005-07-07 03:27:59',3518,491,'2005-07-14 01:14:59',1,'2006-02-15 21:30:53'),(4047,'2005-07-07 03:28:49',3475,364,'2005-07-09 02:42:49',2,'2006-02-15 21:30:53'),(4048,'2005-07-07 03:30:52',659,474,'2005-07-14 05:05:52',2,'2006-02-15 21:30:53'),(4049,'2005-07-07 03:34:53',4172,79,'2005-07-15 04:10:53',2,'2006-02-15 21:30:53'),(4050,'2005-07-07 03:35:33',104,528,'2005-07-15 03:11:33',1,'2006-02-15 21:30:53'),(4051,'2005-07-07 03:37:28',2715,331,'2005-07-09 01:40:28',1,'2006-02-15 21:30:53'),(4052,'2005-07-07 03:38:22',206,442,'2005-07-13 02:56:22',2,'2006-02-15 21:30:53'),(4053,'2005-07-07 03:39:22',2889,377,'2005-07-09 22:32:22',1,'2006-02-15 21:30:53'),(4054,'2005-07-07 03:42:07',3885,260,'2005-07-10 03:22:07',1,'2006-02-15 21:30:53'),(4055,'2005-07-07 03:49:13',2561,513,'2005-07-11 03:15:13',2,'2006-02-15 21:30:53'),(4056,'2005-07-07 03:57:36',4211,360,'2005-07-09 08:53:36',2,'2006-02-15 21:30:53'),(4057,'2005-07-07 04:00:20',2838,141,'2005-07-12 08:14:20',1,'2006-02-15 21:30:53'),(4058,'2005-07-07 04:02:50',3877,442,'2005-07-10 04:30:50',2,'2006-02-15 21:30:53'),(4059,'2005-07-07 04:04:26',292,401,'2005-07-10 22:35:26',1,'2006-02-15 21:30:53'),(4060,'2005-07-07 04:10:13',2697,211,'2005-07-13 07:44:13',1,'2006-02-15 21:30:53'),(4061,'2005-07-07 04:13:35',62,70,'2005-07-10 23:58:35',2,'2006-02-15 21:30:53'),(4062,'2005-07-07 04:22:27',1323,410,'2005-07-09 03:27:27',1,'2006-02-15 21:30:53'),(4063,'2005-07-07 04:23:57',1452,331,'2005-07-14 23:35:57',2,'2006-02-15 21:30:53'),(4064,'2005-07-07 04:29:20',1402,47,'2005-07-14 05:48:20',2,'2006-02-15 21:30:53'),(4065,'2005-07-07 04:32:28',1339,26,'2005-07-12 08:30:28',1,'2006-02-15 21:30:53'),(4066,'2005-07-07 04:34:09',1975,368,'2005-07-10 23:54:09',1,'2006-02-15 21:30:53'),(4067,'2005-07-07 04:34:23',2945,469,'2005-07-16 04:04:23',1,'2006-02-15 21:30:53'),(4068,'2005-07-07 04:34:38',4152,206,'2005-07-11 09:16:38',2,'2006-02-15 21:30:53'),(4069,'2005-07-07 04:35:06',3361,570,'2005-07-10 23:59:06',2,'2006-02-15 21:30:53'),(4070,'2005-07-07 04:37:09',2926,496,'2005-07-08 04:19:09',2,'2006-02-15 21:30:53'),(4071,'2005-07-07 04:37:26',2883,209,'2005-07-13 06:45:26',2,'2006-02-15 21:30:53'),(4072,'2005-07-07 04:48:02',3130,310,'2005-07-12 10:32:02',2,'2006-02-15 21:30:53'),(4073,'2005-07-07 04:49:13',647,290,'2005-07-10 03:20:13',2,'2006-02-15 21:30:53'),(4074,'2005-07-07 04:49:49',2347,412,'2005-07-12 04:51:49',2,'2006-02-15 21:30:53'),(4075,'2005-07-07 04:51:44',1989,593,'2005-07-09 03:07:44',2,'2006-02-15 21:30:53'),(4076,'2005-07-07 04:52:15',3148,329,'2005-07-13 23:22:15',1,'2006-02-15 21:30:53'),(4077,'2005-07-07 04:53:40',2445,377,'2005-07-09 09:56:40',2,'2006-02-15 21:30:53'),(4078,'2005-07-07 05:05:05',1671,522,'2005-07-10 05:39:05',1,'2006-02-15 21:30:53'),(4079,'2005-07-07 05:06:27',2202,84,'2005-07-16 08:46:27',1,'2006-02-15 21:30:53'),(4080,'2005-07-07 05:09:54',1364,148,'2005-07-11 23:58:54',1,'2006-02-15 21:30:53'),(4081,'2005-07-07 05:10:08',1138,284,'2005-07-12 00:47:08',1,'2006-02-15 21:30:53'),(4082,'2005-07-07 05:11:53',2904,108,'2005-07-12 00:55:53',1,'2006-02-15 21:30:53'),(4083,'2005-07-07 05:13:15',3454,490,'2005-07-08 09:11:15',1,'2006-02-15 21:30:53'),(4084,'2005-07-07 05:16:00',2588,441,'2005-07-15 09:23:00',1,'2006-02-15 21:30:53'),(4085,'2005-07-07 05:25:39',1683,573,'2005-07-12 04:30:39',1,'2006-02-15 21:30:53'),(4086,'2005-07-07 05:26:06',253,494,'2005-07-12 00:45:06',2,'2006-02-15 21:30:53'),(4087,'2005-07-07 05:30:56',3066,433,'2005-07-16 10:20:56',1,'2006-02-15 21:30:53'),(4088,'2005-07-07 05:31:55',234,66,'2005-07-15 07:35:55',1,'2006-02-15 21:30:53'),(4089,'2005-07-07 05:45:59',3431,102,'2005-07-16 07:34:59',2,'2006-02-15 21:30:53'),(4090,'2005-07-07 05:47:33',3096,67,'2005-07-08 04:25:33',2,'2006-02-15 21:30:53'),(4091,'2005-07-07 05:53:38',3928,337,'2005-07-14 03:12:38',2,'2006-02-15 21:30:53'),(4092,'2005-07-07 05:54:18',1721,246,'2005-07-16 09:14:18',1,'2006-02-15 21:30:53'),(4093,'2005-07-07 05:54:50',1534,337,'2005-07-12 00:34:50',1,'2006-02-15 21:30:53'),(4094,'2005-07-07 06:00:21',2412,517,'2005-07-10 03:24:21',2,'2006-02-15 21:30:53'),(4095,'2005-07-07 06:01:48',2900,33,'2005-07-15 02:52:48',2,'2006-02-15 21:30:53'),(4096,'2005-07-07 06:09:11',3911,403,'2005-07-08 09:17:11',2,'2006-02-15 21:30:53'),(4097,'2005-07-07 06:10:55',2454,56,'2005-07-11 02:45:55',1,'2006-02-15 21:30:53'),(4098,'2005-07-07 06:14:51',2865,35,'2005-07-14 06:51:51',2,'2006-02-15 21:30:53'),(4099,'2005-07-07 06:20:33',1930,76,'2005-07-16 08:39:33',1,'2006-02-15 21:30:53'),(4100,'2005-07-07 06:20:52',2346,332,'2005-07-15 05:58:52',2,'2006-02-15 21:30:53'),(4101,'2005-07-07 06:25:11',2891,588,'2005-07-12 07:44:11',2,'2006-02-15 21:30:53'),(4102,'2005-07-07 06:25:19',3998,135,'2005-07-11 00:50:19',2,'2006-02-15 21:30:53'),(4103,'2005-07-07 06:25:28',3632,91,'2005-07-12 11:18:28',1,'2006-02-15 21:30:53'),(4104,'2005-07-07 06:25:41',1066,338,'2005-07-13 04:18:41',2,'2006-02-15 21:30:53'),(4105,'2005-07-07 06:31:00',439,423,'2005-07-09 03:52:00',1,'2006-02-15 21:30:53'),(4106,'2005-07-07 06:33:35',4083,563,'2005-07-13 04:03:35',1,'2006-02-15 21:30:53'),(4107,'2005-07-07 06:36:32',4232,206,'2005-07-14 03:36:32',1,'2006-02-15 21:30:53'),(4108,'2005-07-07 06:38:31',4535,66,'2005-07-08 10:44:31',1,'2006-02-15 21:30:53'),(4109,'2005-07-07 06:39:43',532,517,'2005-07-10 06:30:43',1,'2006-02-15 21:30:53'),(4110,'2005-07-07 06:44:27',226,486,'2005-07-12 05:43:27',2,'2006-02-15 21:30:53'),(4111,'2005-07-07 06:47:56',1009,515,'2005-07-13 02:13:56',1,'2006-02-15 21:30:53'),(4112,'2005-07-07 06:49:09',3284,533,'2005-07-16 06:53:09',2,'2006-02-15 21:30:53'),(4113,'2005-07-07 06:49:52',915,170,'2005-07-12 04:00:52',1,'2006-02-15 21:30:53'),(4114,'2005-07-07 06:51:12',4109,426,'2005-07-15 01:36:12',1,'2006-02-15 21:30:53'),(4115,'2005-07-07 06:52:23',102,371,'2005-07-14 06:12:23',2,'2006-02-15 21:30:53'),(4116,'2005-07-07 06:56:13',666,352,'2005-07-11 11:13:13',2,'2006-02-15 21:30:53'),(4117,'2005-07-07 06:58:14',780,158,'2005-07-16 05:28:14',1,'2006-02-15 21:30:53'),(4118,'2005-07-07 07:03:30',355,224,'2005-07-08 09:20:30',1,'2006-02-15 21:30:53'),(4119,'2005-07-07 07:06:03',2078,319,'2005-07-13 01:56:03',2,'2006-02-15 21:30:53'),(4120,'2005-07-07 07:07:03',987,559,'2005-07-16 04:07:03',1,'2006-02-15 21:30:53'),(4121,'2005-07-07 07:13:50',2429,176,'2005-07-13 04:32:50',2,'2006-02-15 21:30:53'),(4122,'2005-07-07 07:15:35',273,31,'2005-07-14 12:10:35',1,'2006-02-15 21:30:53'),(4123,'2005-07-07 07:16:19',2707,469,'2005-07-10 05:23:19',1,'2006-02-15 21:30:53'),(4124,'2005-07-07 07:19:54',2856,330,'2005-07-11 05:54:54',1,'2006-02-15 21:30:53'),(4125,'2005-07-07 07:20:29',4131,269,'2005-07-15 06:41:29',2,'2006-02-15 21:30:53'),(4126,'2005-07-07 07:24:11',3018,163,'2005-07-15 07:31:11',1,'2006-02-15 21:30:53'),(4127,'2005-07-07 07:26:19',1774,15,'2005-07-14 07:50:19',2,'2006-02-15 21:30:53'),(4128,'2005-07-07 07:35:25',3563,492,'2005-07-14 08:13:25',1,'2006-02-15 21:30:53'),(4129,'2005-07-07 07:37:03',1413,592,'2005-07-14 13:31:03',1,'2006-02-15 21:30:53'),(4130,'2005-07-07 07:51:53',4170,256,'2005-07-11 12:41:53',2,'2006-02-15 21:30:53'),(4131,'2005-07-07 07:53:18',2621,58,'2005-07-08 04:48:18',1,'2006-02-15 21:30:53'),(4132,'2005-07-07 08:06:07',993,154,'2005-07-10 14:04:07',1,'2006-02-15 21:30:53'),(4133,'2005-07-07 08:12:26',3672,488,'2005-07-16 03:43:26',1,'2006-02-15 21:30:53'),(4134,'2005-07-07 08:14:24',2917,183,'2005-07-09 10:42:24',1,'2006-02-15 21:30:53'),(4135,'2005-07-07 08:15:03',3384,36,'2005-07-11 10:56:03',1,'2006-02-15 21:30:53'),(4136,'2005-07-07 08:15:52',3461,203,'2005-07-10 04:22:52',2,'2006-02-15 21:30:53'),(4137,'2005-07-07 08:17:06',2065,485,'2005-07-11 10:52:06',2,'2006-02-15 21:30:53'),(4138,'2005-07-07 08:17:13',1588,317,'2005-07-14 05:18:13',2,'2006-02-15 21:30:53'),(4139,'2005-07-07 08:17:35',2094,509,'2005-07-14 14:01:35',2,'2006-02-15 21:30:53'),(4140,'2005-07-07 08:19:10',1897,190,'2005-07-14 07:27:10',2,'2006-02-15 21:30:53'),(4141,'2005-07-07 08:19:20',1904,456,'2005-07-11 06:54:20',1,'2006-02-15 21:30:53'),(4142,'2005-07-07 08:19:45',4045,492,'2005-07-08 13:55:45',1,'2006-02-15 21:30:53'),(4143,'2005-07-07 08:22:07',597,238,'2005-07-13 11:42:07',1,'2006-02-15 21:30:53'),(4144,'2005-07-07 08:25:44',550,431,'2005-07-16 13:10:44',2,'2006-02-15 21:30:53'),(4145,'2005-07-07 08:26:39',3050,592,'2005-07-16 12:54:39',2,'2006-02-15 21:30:53'),(4146,'2005-07-07 08:30:16',176,411,'2005-07-12 07:52:16',1,'2006-02-15 21:30:53'),(4147,'2005-07-07 08:32:12',2776,274,'2005-07-12 10:10:12',2,'2006-02-15 21:30:53'),(4148,'2005-07-07 08:36:58',260,59,'2005-07-09 05:51:58',1,'2006-02-15 21:30:53'),(4149,'2005-07-07 08:40:17',3028,50,'2005-07-10 02:58:17',2,'2006-02-15 21:30:53'),(4150,'2005-07-07 08:43:22',4424,188,'2005-07-08 05:21:22',2,'2006-02-15 21:30:53'),(4151,'2005-07-07 08:49:02',4564,428,'2005-07-11 05:19:02',1,'2006-02-15 21:30:53'),(4152,'2005-07-07 08:50:33',1761,89,'2005-07-14 10:56:33',2,'2006-02-15 21:30:53'),(4153,'2005-07-07 08:53:08',2185,299,'2005-07-11 05:09:08',2,'2006-02-15 21:30:53'),(4154,'2005-07-07 08:58:23',191,594,'2005-07-14 03:16:23',2,'2006-02-15 21:30:53'),(4155,'2005-07-07 09:00:49',212,548,'2005-07-13 10:59:49',2,'2006-02-15 21:30:53'),(4156,'2005-07-07 09:03:51',1259,585,'2005-07-12 09:46:51',2,'2006-02-15 21:30:53'),(4157,'2005-07-07 09:04:26',304,183,'2005-07-08 09:55:26',1,'2006-02-15 21:30:53'),(4158,'2005-07-07 09:05:42',291,433,'2005-07-09 04:28:42',1,'2006-02-15 21:30:53'),(4159,'2005-07-07 09:10:57',3625,62,'2005-07-09 10:19:57',2,'2006-02-15 21:30:53'),(4160,'2005-07-07 09:13:17',1909,326,'2005-07-15 11:50:17',2,'2006-02-15 21:30:53'),(4161,'2005-07-07 09:15:11',4021,216,'2005-07-15 06:59:11',1,'2006-02-15 21:30:53'),(4162,'2005-07-07 09:17:26',745,571,'2005-07-15 10:15:26',2,'2006-02-15 21:30:53'),(4163,'2005-07-07 09:19:28',3176,376,'2005-07-10 06:47:28',2,'2006-02-15 21:30:53'),(4164,'2005-07-07 09:20:11',3133,295,'2005-07-14 09:35:11',1,'2006-02-15 21:30:53'),(4165,'2005-07-07 09:23:27',3845,66,'2005-07-15 06:00:27',1,'2006-02-15 21:30:53'),(4166,'2005-07-07 09:33:30',3267,376,'2005-07-16 06:06:30',1,'2006-02-15 21:30:53'),(4167,'2005-07-07 09:37:08',3771,175,'2005-07-16 06:16:08',2,'2006-02-15 21:30:53'),(4168,'2005-07-07 09:37:24',1872,132,'2005-07-09 14:32:24',2,'2006-02-15 21:30:53'),(4169,'2005-07-07 09:39:18',3360,580,'2005-07-11 13:43:18',1,'2006-02-15 21:30:53'),(4170,'2005-07-07 09:44:36',2665,99,'2005-07-13 14:10:36',1,'2006-02-15 21:30:53'),(4171,'2005-07-07 09:49:04',4199,476,'2005-07-14 03:58:04',2,'2006-02-15 21:30:53'),(4172,'2005-07-07 09:49:09',1158,309,'2005-07-11 15:14:09',2,'2006-02-15 21:30:53'),(4173,'2005-07-07 09:57:26',4272,320,'2005-07-10 04:05:26',1,'2006-02-15 21:30:53'),(4174,'2005-07-07 09:59:49',3814,182,'2005-07-11 13:34:49',1,'2006-02-15 21:30:53'),(4175,'2005-07-07 10:02:03',1979,8,'2005-07-10 06:09:03',2,'2006-02-15 21:30:53'),(4176,'2005-07-07 10:03:34',2745,420,'2005-07-16 08:43:34',1,'2006-02-15 21:30:53'),(4177,'2005-07-07 10:12:36',4106,317,'2005-07-15 15:48:36',2,'2006-02-15 21:30:53'),(4178,'2005-07-07 10:14:31',2898,513,'2005-07-12 09:38:31',2,'2006-02-15 21:30:53'),(4179,'2005-07-07 10:17:15',559,75,'2005-07-10 05:12:15',2,'2006-02-15 21:30:53'),(4180,'2005-07-07 10:23:25',1704,3,'2005-07-10 13:18:25',1,'2006-02-15 21:30:53'),(4181,'2005-07-07 10:27:54',3725,598,'2005-07-13 06:09:54',1,'2006-02-15 21:30:53'),(4182,'2005-07-07 10:28:00',3080,256,'2005-07-08 12:50:00',1,'2006-02-15 21:30:53'),(4183,'2005-07-07 10:28:33',3342,479,'2005-07-15 12:29:33',1,'2006-02-15 21:30:53'),(4184,'2005-07-07 10:30:08',1022,468,'2005-07-14 12:56:08',1,'2006-02-15 21:30:53'),(4185,'2005-07-07 10:31:05',2425,395,'2005-07-13 05:30:05',2,'2006-02-15 21:30:53'),(4186,'2005-07-07 10:32:25',3910,185,'2005-07-15 06:22:25',1,'2006-02-15 21:30:53'),(4187,'2005-07-07 10:41:31',2,161,'2005-07-11 06:25:31',1,'2006-02-15 21:30:53'),(4188,'2005-07-07 10:45:29',3243,391,'2005-07-16 09:39:29',1,'2006-02-15 21:30:53'),(4189,'2005-07-07 10:51:07',1492,386,'2005-07-14 14:46:07',2,'2006-02-15 21:30:53'),(4190,'2005-07-07 10:52:39',826,349,'2005-07-11 13:19:39',1,'2006-02-15 21:30:53'),(4191,'2005-07-07 10:56:14',2475,390,'2005-07-11 09:56:14',1,'2006-02-15 21:30:53'),(4192,'2005-07-07 10:57:06',624,558,'2005-07-13 16:30:06',1,'2006-02-15 21:30:53'),(4193,'2005-07-07 10:57:21',3791,445,'2005-07-09 07:33:21',2,'2006-02-15 21:30:53'),(4194,'2005-07-07 10:59:39',1753,153,'2005-07-15 09:34:39',1,'2006-02-15 21:30:53'),(4195,'2005-07-07 11:00:02',450,455,'2005-07-14 16:54:02',1,'2006-02-15 21:30:53'),(4196,'2005-07-07 11:06:33',3407,564,'2005-07-14 13:46:33',1,'2006-02-15 21:30:53'),(4197,'2005-07-07 11:07:52',2515,324,'2005-07-10 10:19:52',1,'2006-02-15 21:30:53'),(4198,'2005-07-07 11:08:11',333,247,'2005-07-16 15:29:11',1,'2006-02-15 21:30:53'),(4199,'2005-07-07 11:13:07',2120,259,'2005-07-11 07:17:07',1,'2006-02-15 21:30:53'),(4200,'2005-07-07 11:15:11',1097,292,'2005-07-11 11:46:11',2,'2006-02-15 21:30:53'),(4201,'2005-07-07 11:19:51',3682,145,'2005-07-16 08:48:51',1,'2006-02-15 21:30:53'),(4202,'2005-07-07 11:23:48',2274,38,'2005-07-16 16:32:48',1,'2006-02-15 21:30:53'),(4203,'2005-07-07 11:24:14',2743,189,'2005-07-11 16:26:14',1,'2006-02-15 21:30:53'),(4204,'2005-07-07 11:24:18',1513,569,'2005-07-15 12:42:18',1,'2006-02-15 21:30:53'),(4205,'2005-07-07 11:25:39',3922,486,'2005-07-11 06:12:39',1,'2006-02-15 21:30:53'),(4206,'2005-07-07 11:32:16',1557,448,'2005-07-14 13:07:16',2,'2006-02-15 21:30:53'),(4207,'2005-07-07 11:32:45',1119,588,'2005-07-14 05:49:45',2,'2006-02-15 21:30:53'),(4208,'2005-07-07 11:34:22',3617,441,'2005-07-09 08:25:22',1,'2006-02-15 21:30:53'),(4209,'2005-07-07 11:35:08',2010,100,'2005-07-10 10:58:08',1,'2006-02-15 21:30:53'),(4210,'2005-07-07 11:36:20',1972,581,'2005-07-16 12:38:20',1,'2006-02-15 21:30:53'),(4211,'2005-07-07 11:50:41',2001,214,'2005-07-09 13:58:41',2,'2006-02-15 21:30:53'),(4212,'2005-07-07 11:53:14',1825,574,'2005-07-09 07:12:14',1,'2006-02-15 21:30:53'),(4213,'2005-07-07 11:53:49',705,103,'2005-07-13 07:51:49',1,'2006-02-15 21:30:53'),(4214,'2005-07-07 11:54:33',2534,484,'2005-07-08 10:49:33',2,'2006-02-15 21:30:53'),(4215,'2005-07-07 12:00:52',1239,22,'2005-07-11 15:14:52',2,'2006-02-15 21:30:53'),(4216,'2005-07-07 12:01:34',1216,467,'2005-07-08 09:59:34',1,'2006-02-15 21:30:53'),(4217,'2005-07-07 12:08:59',3186,228,'2005-07-11 15:07:59',2,'2006-02-15 21:30:53'),(4218,'2005-07-07 12:10:24',152,497,'2005-07-15 16:09:24',1,'2006-02-15 21:30:53'),(4219,'2005-07-07 12:11:22',2800,16,'2005-07-11 11:05:22',1,'2006-02-15 21:30:53'),(4220,'2005-07-07 12:12:36',821,513,'2005-07-10 13:37:36',1,'2006-02-15 21:30:53'),(4221,'2005-07-07 12:18:57',4567,143,'2005-07-12 09:47:57',2,'2006-02-15 21:30:53'),(4222,'2005-07-07 12:20:21',2053,467,'2005-07-11 11:09:21',2,'2006-02-15 21:30:53'),(4223,'2005-07-07 12:23:54',2407,405,'2005-07-10 14:46:54',2,'2006-02-15 21:30:53'),(4224,'2005-07-07 12:24:21',3659,419,'2005-07-10 11:48:21',1,'2006-02-15 21:30:53'),(4225,'2005-07-07 12:24:37',1766,377,'2005-07-12 06:47:37',2,'2006-02-15 21:30:53'),(4226,'2005-07-07 12:37:56',1692,57,'2005-07-09 08:48:56',2,'2006-02-15 21:30:53'),(4227,'2005-07-07 12:41:36',4186,78,'2005-07-15 12:33:36',1,'2006-02-15 21:30:53'),(4228,'2005-07-07 12:42:02',1020,38,'2005-07-12 10:52:02',1,'2006-02-15 21:30:53'),(4229,'2005-07-07 12:43:23',953,106,'2005-07-13 15:00:23',2,'2006-02-15 21:30:53'),(4230,'2005-07-07 12:46:47',353,205,'2005-07-15 06:52:47',1,'2006-02-15 21:30:53'),(4231,'2005-07-07 12:48:19',3522,194,'2005-07-13 18:45:19',1,'2006-02-15 21:30:53'),(4232,'2005-07-07 12:49:12',3841,347,'2005-07-15 16:45:12',1,'2006-02-15 21:30:53'),(4233,'2005-07-07 13:00:20',1849,488,'2005-07-13 16:37:20',1,'2006-02-15 21:30:53'),(4234,'2005-07-07 13:01:35',1179,195,'2005-07-15 13:05:35',1,'2006-02-15 21:30:53'),(4235,'2005-07-07 13:05:52',3525,86,'2005-07-10 12:17:52',2,'2006-02-15 21:30:53'),(4236,'2005-07-07 13:12:07',642,213,'2005-07-08 15:00:07',2,'2006-02-15 21:30:53'),(4237,'2005-07-07 13:16:55',3773,477,'2005-07-15 16:33:55',1,'2006-02-15 21:30:53'),(4238,'2005-07-07 13:22:20',3024,7,'2005-07-10 07:44:20',2,'2006-02-15 21:30:53'),(4239,'2005-07-07 13:23:17',3866,122,'2005-07-13 17:49:17',1,'2006-02-15 21:30:53'),(4240,'2005-07-07 13:33:12',1024,65,'2005-07-13 12:28:12',1,'2006-02-15 21:30:53'),(4241,'2005-07-07 13:39:00',4154,595,'2005-07-12 17:49:00',2,'2006-02-15 21:30:53'),(4242,'2005-07-07 13:39:01',3626,286,'2005-07-12 18:29:01',1,'2006-02-15 21:30:53'),(4243,'2005-07-07 13:39:58',4559,339,'2005-07-12 19:27:58',1,'2006-02-15 21:30:53'),(4244,'2005-07-07 13:41:58',592,581,'2005-07-09 15:32:58',2,'2006-02-15 21:30:53'),(4245,'2005-07-07 13:48:33',3743,91,'2005-07-10 09:54:33',1,'2006-02-15 21:30:53'),(4246,'2005-07-07 13:49:03',1141,411,'2005-07-09 13:01:03',1,'2006-02-15 21:30:53'),(4247,'2005-07-07 13:51:54',808,539,'2005-07-10 09:43:54',2,'2006-02-15 21:30:53'),(4248,'2005-07-07 13:59:20',773,161,'2005-07-14 15:18:20',2,'2006-02-15 21:30:53'),(4249,'2005-07-07 14:05:17',4185,111,'2005-07-10 09:21:17',2,'2006-02-15 21:30:53'),(4250,'2005-07-07 14:08:11',2556,423,'2005-07-13 08:09:11',2,'2006-02-15 21:30:53'),(4251,'2005-07-07 14:11:55',3541,367,'2005-07-16 14:01:55',2,'2006-02-15 21:30:53'),(4252,'2005-07-07 14:13:05',474,154,'2005-07-09 14:17:05',1,'2006-02-15 21:30:53'),(4253,'2005-07-07 14:13:13',3355,157,'2005-07-16 18:55:13',2,'2006-02-15 21:30:53'),(4254,'2005-07-07 14:13:52',3957,529,'2005-07-12 10:39:52',2,'2006-02-15 21:30:53'),(4255,'2005-07-07 14:14:13',749,10,'2005-07-12 18:32:13',1,'2006-02-15 21:30:53'),(4256,'2005-07-07 14:14:36',1386,129,'2005-07-10 09:41:36',1,'2006-02-15 21:30:53'),(4257,'2005-07-07 14:18:41',3927,553,'2005-07-08 14:58:41',1,'2006-02-15 21:30:53'),(4258,'2005-07-07 14:20:59',1562,492,'2005-07-16 10:03:59',1,'2006-02-15 21:30:53'),(4259,'2005-07-07 14:22:18',4378,467,'2005-07-11 19:38:18',1,'2006-02-15 21:30:53'),(4260,'2005-07-07 14:22:45',4575,305,'2005-07-08 15:10:45',2,'2006-02-15 21:30:53'),(4261,'2005-07-07 14:23:56',1405,496,'2005-07-13 15:26:56',1,'2006-02-15 21:30:53'),(4262,'2005-07-07 14:24:30',3122,29,'2005-07-14 13:12:30',1,'2006-02-15 21:30:53'),(4263,'2005-07-07 14:24:44',2975,16,'2005-07-13 18:22:44',1,'2006-02-15 21:30:53'),(4264,'2005-07-07 14:25:28',3499,406,'2005-07-08 08:49:28',2,'2006-02-15 21:30:53'),(4265,'2005-07-07 14:27:51',1685,69,'2005-07-12 19:55:51',2,'2006-02-15 21:30:53'),(4266,'2005-07-07 14:34:50',1578,509,'2005-07-08 09:23:50',2,'2006-02-15 21:30:53'),(4267,'2005-07-07 14:35:30',136,410,'2005-07-11 10:41:30',1,'2006-02-15 21:30:53'),(4268,'2005-07-07 14:36:05',432,80,'2005-07-16 14:36:05',1,'2006-02-15 21:30:53'),(4269,'2005-07-07 14:38:33',415,496,'2005-07-09 10:27:33',1,'2006-02-15 21:30:53'),(4270,'2005-07-07 14:38:41',183,210,'2005-07-10 19:07:41',2,'2006-02-15 21:30:53'),(4271,'2005-07-07 14:38:52',533,150,'2005-07-15 12:05:52',1,'2006-02-15 21:30:53'),(4272,'2005-07-07 14:39:20',488,120,'2005-07-13 08:57:20',2,'2006-02-15 21:30:53'),(4273,'2005-07-07 14:40:22',4163,159,'2005-07-13 09:58:22',2,'2006-02-15 21:30:53'),(4274,'2005-07-07 14:42:04',787,26,'2005-07-13 20:23:04',1,'2006-02-15 21:30:53'),(4275,'2005-07-07 14:43:51',1167,393,'2005-07-15 18:04:51',2,'2006-02-15 21:30:53'),(4276,'2005-07-07 14:50:59',221,366,'2005-07-09 15:42:59',2,'2006-02-15 21:30:53'),(4277,'2005-07-07 14:52:12',1983,106,'2005-07-09 13:10:12',1,'2006-02-15 21:30:53'),(4278,'2005-07-07 14:53:24',3693,6,'2005-07-13 14:21:24',2,'2006-02-15 21:30:53'),(4279,'2005-07-07 15:01:53',581,335,'2005-07-08 09:43:53',1,'2006-02-15 21:30:53'),(4280,'2005-07-07 15:09:31',1115,593,'2005-07-13 14:47:31',1,'2006-02-15 21:30:53'),(4281,'2005-07-07 15:17:50',1182,321,'2005-07-08 11:42:50',2,'2006-02-15 21:30:53'),(4282,'2005-07-07 15:26:31',3134,25,'2005-07-11 14:27:31',1,'2006-02-15 21:30:53'),(4283,'2005-07-07 15:29:35',2807,477,'2005-07-11 17:12:35',1,'2006-02-15 21:30:53'),(4284,'2005-07-07 15:31:57',1313,521,'2005-07-09 10:20:57',2,'2006-02-15 21:30:53'),(4285,'2005-07-07 15:34:35',511,308,'2005-07-15 09:43:35',2,'2006-02-15 21:30:53'),(4286,'2005-07-07 15:36:44',4496,111,'2005-07-11 13:04:44',2,'2006-02-15 21:30:53'),(4287,'2005-07-07 15:37:31',3558,94,'2005-07-16 19:59:31',2,'2006-02-15 21:30:53'),(4288,'2005-07-07 15:38:25',1508,64,'2005-07-13 16:23:25',2,'2006-02-15 21:30:53'),(4289,'2005-07-07 15:45:58',3172,231,'2005-07-09 11:11:58',2,'2006-02-15 21:30:53'),(4290,'2005-07-07 15:47:10',4174,277,'2005-07-15 15:03:10',1,'2006-02-15 21:30:53'),(4291,'2005-07-07 15:47:47',2074,298,'2005-07-10 11:45:47',1,'2006-02-15 21:30:53'),(4292,'2005-07-07 15:48:38',3084,401,'2005-07-15 17:53:38',1,'2006-02-15 21:30:53'),(4293,'2005-07-07 15:53:47',984,221,'2005-07-10 18:11:47',1,'2006-02-15 21:30:53'),(4294,'2005-07-07 15:56:23',2845,41,'2005-07-15 14:50:23',2,'2006-02-15 21:30:53'),(4295,'2005-07-07 16:08:51',2490,319,'2005-07-13 13:06:51',2,'2006-02-15 21:30:53'),(4296,'2005-07-07 16:16:03',977,407,'2005-07-08 20:16:03',2,'2006-02-15 21:30:53'),(4297,'2005-07-07 16:24:09',882,141,'2005-07-13 15:08:09',2,'2006-02-15 21:30:53'),(4298,'2005-07-07 16:27:25',1055,560,'2005-07-12 18:20:25',1,'2006-02-15 21:30:53'),(4299,'2005-07-07 16:33:48',870,80,'2005-07-16 11:48:48',1,'2006-02-15 21:30:53'),(4300,'2005-07-07 16:36:16',1189,38,'2005-07-10 13:59:16',2,'2006-02-15 21:30:53'),(4301,'2005-07-07 16:37:23',1630,440,'2005-07-11 18:05:23',2,'2006-02-15 21:30:53'),(4302,'2005-07-07 16:47:53',3669,332,'2005-07-16 22:22:53',2,'2006-02-15 21:30:53'),(4303,'2005-07-07 16:57:32',818,108,'2005-07-14 17:42:32',2,'2006-02-15 21:30:53'),(4304,'2005-07-07 17:01:19',3382,165,'2005-07-12 22:47:19',2,'2006-02-15 21:30:53'),(4305,'2005-07-07 17:07:11',3926,240,'2005-07-08 16:15:11',2,'2006-02-15 21:30:53'),(4306,'2005-07-07 17:12:32',1219,210,'2005-07-16 11:24:32',2,'2006-02-15 21:30:53'),(4307,'2005-07-07 17:20:39',2827,394,'2005-07-16 14:42:39',1,'2006-02-15 21:30:53'),(4308,'2005-07-07 17:29:16',1482,168,'2005-07-11 21:47:16',1,'2006-02-15 21:30:53'),(4309,'2005-07-07 17:29:41',3549,209,'2005-07-14 22:22:41',2,'2006-02-15 21:30:53'),(4310,'2005-07-07 17:30:56',3842,390,'2005-07-12 13:19:56',2,'2006-02-15 21:30:53'),(4311,'2005-07-07 17:31:14',2985,498,'2005-07-11 19:21:14',2,'2006-02-15 21:30:53'),(4312,'2005-07-07 17:34:59',3870,97,'2005-07-09 17:45:59',2,'2006-02-15 21:30:53'),(4313,'2005-07-07 17:36:56',91,29,'2005-07-13 12:00:56',1,'2006-02-15 21:30:53'),(4314,'2005-07-07 17:38:31',539,184,'2005-07-09 20:24:31',1,'2006-02-15 21:30:53'),(4315,'2005-07-07 17:40:26',1472,195,'2005-07-09 22:58:26',2,'2006-02-15 21:30:53'),(4316,'2005-07-07 17:44:22',517,301,'2005-07-14 15:12:22',2,'2006-02-15 21:30:53'),(4317,'2005-07-07 17:44:49',2234,110,'2005-07-08 21:48:49',2,'2006-02-15 21:30:53'),(4318,'2005-07-07 17:47:50',1607,321,'2005-07-14 12:15:50',2,'2006-02-15 21:30:53'),(4319,'2005-07-07 17:50:27',3389,25,'2005-07-10 13:53:27',2,'2006-02-15 21:30:53'),(4320,'2005-07-07 17:51:59',3437,376,'2005-07-13 18:39:59',1,'2006-02-15 21:30:53'),(4321,'2005-07-07 17:52:38',612,91,'2005-07-11 23:37:38',1,'2006-02-15 21:30:53'),(4322,'2005-07-07 17:54:37',1522,568,'2005-07-14 13:56:37',1,'2006-02-15 21:30:53'),(4323,'2005-07-07 17:55:53',1287,336,'2005-07-13 16:43:53',2,'2006-02-15 21:30:53'),(4324,'2005-07-07 17:57:56',952,226,'2005-07-13 22:34:56',1,'2006-02-15 21:30:53'),(4325,'2005-07-07 17:59:24',3728,373,'2005-07-16 17:10:24',2,'2006-02-15 21:30:53'),(4326,'2005-07-07 18:01:22',4037,331,'2005-07-16 15:45:22',1,'2006-02-15 21:30:53'),(4327,'2005-07-07 18:01:39',860,73,'2005-07-12 22:40:39',1,'2006-02-15 21:30:53'),(4328,'2005-07-07 18:03:17',2174,264,'2005-07-14 16:14:17',1,'2006-02-15 21:30:53'),(4329,'2005-07-07 18:04:16',638,504,'2005-07-15 17:58:16',2,'2006-02-15 21:30:53'),(4330,'2005-07-07 18:09:41',2408,408,'2005-07-14 22:05:41',1,'2006-02-15 21:30:53'),(4331,'2005-07-07 18:22:30',419,535,'2005-07-13 18:20:30',1,'2006-02-15 21:30:53'),(4332,'2005-07-07 18:25:26',1714,137,'2005-07-16 15:05:26',1,'2006-02-15 21:30:53'),(4333,'2005-07-07 18:31:50',76,113,'2005-07-08 21:26:50',1,'2006-02-15 21:30:53'),(4334,'2005-07-07 18:32:04',3021,210,'2005-07-08 16:19:04',1,'2006-02-15 21:30:53'),(4335,'2005-07-07 18:33:57',1332,375,'2005-07-11 13:23:57',1,'2006-02-15 21:30:53'),(4336,'2005-07-07 18:34:36',482,532,'2005-07-10 17:58:36',2,'2006-02-15 21:30:53'),(4337,'2005-07-07 18:36:37',2313,464,'2005-07-14 14:59:37',2,'2006-02-15 21:30:53'),(4338,'2005-07-07 18:39:56',3152,581,'2005-07-12 21:03:56',1,'2006-02-15 21:30:53'),(4339,'2005-07-07 18:41:42',3215,130,'2005-07-08 13:00:42',1,'2006-02-15 21:30:53'),(4340,'2005-07-07 18:41:46',3919,227,'2005-07-16 21:27:46',1,'2006-02-15 21:30:53'),(4341,'2005-07-07 18:44:23',4523,124,'2005-07-15 18:13:23',1,'2006-02-15 21:30:53'),(4342,'2005-07-07 18:47:03',1355,120,'2005-07-09 21:59:03',2,'2006-02-15 21:30:53'),(4343,'2005-07-07 18:48:54',1926,293,'2005-07-12 15:19:54',1,'2006-02-15 21:30:53'),(4344,'2005-07-07 18:50:47',1185,99,'2005-07-12 16:38:47',2,'2006-02-15 21:30:53'),(4345,'2005-07-07 18:52:57',2235,225,'2005-07-15 21:24:57',2,'2006-02-15 21:30:53'),(4346,'2005-07-07 18:58:45',1906,520,'2005-07-10 16:37:45',1,'2006-02-15 21:30:53'),(4347,'2005-07-07 18:58:57',1964,344,'2005-07-14 16:35:57',2,'2006-02-15 21:30:53'),(4348,'2005-07-07 19:02:05',1948,452,'2005-07-09 20:51:05',2,'2006-02-15 21:30:53'),(4349,'2005-07-07 19:02:37',3430,182,'2005-07-09 17:25:37',2,'2006-02-15 21:30:53'),(4350,'2005-07-07 19:02:41',2223,299,'2005-07-09 15:27:41',1,'2006-02-15 21:30:53'),(4351,'2005-07-07 19:04:24',3567,382,'2005-07-14 00:03:24',2,'2006-02-15 21:30:53'),(4352,'2005-07-07 19:15:58',2636,249,'2005-07-16 20:22:58',2,'2006-02-15 21:30:53'),(4353,'2005-07-07 19:19:05',368,452,'2005-07-13 13:40:05',1,'2006-02-15 21:30:53'),(4354,'2005-07-07 19:21:02',4423,208,'2005-07-15 17:03:02',2,'2006-02-15 21:30:53'),(4355,'2005-07-07 19:21:19',4557,438,'2005-07-09 00:55:19',2,'2006-02-15 21:30:53'),(4356,'2005-07-07 19:21:22',1907,318,'2005-07-16 15:57:22',1,'2006-02-15 21:30:53'),(4357,'2005-07-07 19:24:39',3413,103,'2005-07-12 00:11:39',1,'2006-02-15 21:30:53'),(4358,'2005-07-07 19:27:04',3136,446,'2005-07-14 23:46:04',1,'2006-02-15 21:30:53'),(4359,'2005-07-07 19:30:20',3222,282,'2005-07-09 13:34:20',1,'2006-02-15 21:30:53'),(4360,'2005-07-07 19:31:12',1811,92,'2005-07-10 23:11:12',2,'2006-02-15 21:30:53'),(4361,'2005-07-07 19:33:23',116,425,'2005-07-12 22:36:23',1,'2006-02-15 21:30:53'),(4362,'2005-07-07 19:35:30',3759,425,'2005-07-14 14:59:30',1,'2006-02-15 21:30:53'),(4363,'2005-07-07 19:43:28',3202,168,'2005-07-13 00:15:28',2,'2006-02-15 21:30:53'),(4364,'2005-07-07 19:46:51',10,145,'2005-07-08 21:55:51',1,'2006-02-15 21:30:53'),(4365,'2005-07-07 19:47:46',3207,442,'2005-07-08 23:21:46',2,'2006-02-15 21:30:53'),(4366,'2005-07-07 19:48:36',2961,524,'2005-07-14 01:14:36',1,'2006-02-15 21:30:53'),(4367,'2005-07-07 19:52:01',4529,48,'2005-07-13 19:41:01',2,'2006-02-15 21:30:53'),(4368,'2005-07-07 19:55:19',736,324,'2005-07-09 00:11:19',1,'2006-02-15 21:30:53'),(4369,'2005-07-07 20:01:38',3552,517,'2005-07-13 01:19:38',2,'2006-02-15 21:30:53'),(4370,'2005-07-07 20:05:36',1591,559,'2005-07-16 23:58:36',1,'2006-02-15 21:30:53'),(4371,'2005-07-07 20:06:45',2533,90,'2005-07-08 18:50:45',1,'2006-02-15 21:30:53'),(4372,'2005-07-07 20:09:01',2207,252,'2005-07-09 18:24:01',1,'2006-02-15 21:30:53'),(4373,'2005-07-07 20:10:59',3593,470,'2005-07-12 21:30:59',2,'2006-02-15 21:30:53'),(4374,'2005-07-07 20:13:58',4377,517,'2005-07-11 18:11:58',2,'2006-02-15 21:30:53'),(4375,'2005-07-07 20:20:29',3035,560,'2005-07-16 19:29:29',2,'2006-02-15 21:30:53'),(4376,'2005-07-07 20:24:33',1344,151,'2005-07-11 18:32:33',1,'2006-02-15 21:30:53'),(4377,'2005-07-07 20:28:57',3294,205,'2005-07-16 02:13:57',2,'2006-02-15 21:30:53'),(4378,'2005-07-07 20:29:08',1244,24,'2005-07-12 19:17:08',2,'2006-02-15 21:30:53'),(4379,'2005-07-07 20:32:30',2773,316,'2005-07-11 20:40:30',2,'2006-02-15 21:30:53'),(4380,'2005-07-07 20:35:00',3164,353,'2005-07-14 17:06:00',1,'2006-02-15 21:30:53'),(4381,'2005-07-07 20:37:53',3727,486,'2005-07-10 16:54:53',1,'2006-02-15 21:30:53'),(4382,'2005-07-07 20:41:03',657,26,'2005-07-14 15:15:03',1,'2006-02-15 21:30:53'),(4383,'2005-07-07 20:45:51',2649,591,'2005-07-17 00:52:51',2,'2006-02-15 21:30:53'),(4384,'2005-07-07 20:46:45',1178,59,'2005-07-16 21:54:45',1,'2006-02-15 21:30:53'),(4385,'2005-07-07 20:48:38',849,564,'2005-07-11 17:03:38',2,'2006-02-15 21:30:53'),(4386,'2005-07-07 20:55:19',499,314,'2005-07-10 21:51:19',1,'2006-02-15 21:30:53'),(4387,'2005-07-07 20:56:47',591,335,'2005-07-16 00:51:47',1,'2006-02-15 21:30:53'),(4388,'2005-07-07 20:58:03',3150,210,'2005-07-16 20:05:03',2,'2006-02-15 21:30:53'),(4389,'2005-07-07 20:58:58',1672,166,'2005-07-13 19:57:58',2,'2006-02-15 21:30:53'),(4390,'2005-07-07 20:59:06',6,44,'2005-07-09 00:04:06',2,'2006-02-15 21:30:53'),(4391,'2005-07-07 21:09:38',2135,42,'2005-07-09 17:35:38',1,'2006-02-15 21:30:53'),(4392,'2005-07-07 21:11:02',4236,491,'2005-07-13 21:52:02',1,'2006-02-15 21:30:53'),(4393,'2005-07-07 21:12:36',4034,395,'2005-07-09 22:41:36',2,'2006-02-15 21:30:53'),(4394,'2005-07-07 21:12:45',563,156,'2005-07-16 18:24:45',2,'2006-02-15 21:30:53'),(4395,'2005-07-07 21:13:22',360,544,'2005-07-08 22:59:22',2,'2006-02-15 21:30:53'),(4396,'2005-07-07 21:14:19',750,275,'2005-07-10 19:22:19',1,'2006-02-15 21:30:53'),(4397,'2005-07-07 21:14:54',3085,494,'2005-07-13 19:24:54',2,'2006-02-15 21:30:53'),(4398,'2005-07-07 21:18:44',3628,426,'2005-07-10 22:45:44',1,'2006-02-15 21:30:53'),(4399,'2005-07-07 21:20:28',4515,402,'2005-07-12 20:57:28',2,'2006-02-15 21:30:53'),(4400,'2005-07-07 21:22:26',49,370,'2005-07-16 00:59:26',2,'2006-02-15 21:30:53'),(4401,'2005-07-07 21:26:27',2725,405,'2005-07-12 17:18:27',2,'2006-02-15 21:30:53'),(4402,'2005-07-07 21:28:46',1198,26,'2005-07-08 17:04:46',1,'2006-02-15 21:30:53'),(4403,'2005-07-07 21:29:40',3973,447,'2005-07-09 17:58:40',1,'2006-02-15 21:30:53'),(4404,'2005-07-07 21:31:53',944,25,'2005-07-13 19:00:53',1,'2006-02-15 21:30:53'),(4405,'2005-07-07 21:33:16',2102,145,'2005-07-15 00:33:16',2,'2006-02-15 21:30:53'),(4406,'2005-07-07 21:35:16',438,448,'2005-07-15 16:13:16',2,'2006-02-15 21:30:53'),(4407,'2005-07-07 21:39:45',267,20,'2005-07-11 23:40:45',1,'2006-02-15 21:30:53'),(4408,'2005-07-07 21:41:06',2482,258,'2005-07-11 00:32:06',1,'2006-02-15 21:30:53'),(4409,'2005-07-07 21:47:29',3153,8,'2005-07-11 20:14:29',2,'2006-02-15 21:30:53'),(4410,'2005-07-07 21:48:16',2754,584,'2005-07-09 03:15:16',1,'2006-02-15 21:30:53'),(4411,'2005-07-07 21:54:58',320,224,'2005-07-14 16:14:58',2,'2006-02-15 21:30:53'),(4412,'2005-07-07 21:56:53',1181,282,'2005-07-11 19:28:53',1,'2006-02-15 21:30:53'),(4413,'2005-07-07 22:00:04',1062,565,'2005-07-10 18:20:04',2,'2006-02-15 21:30:53'),(4414,'2005-07-07 22:00:21',991,434,'2005-07-12 02:51:21',1,'2006-02-15 21:30:53'),(4415,'2005-07-07 22:01:43',1403,329,'2005-07-13 03:09:43',2,'2006-02-15 21:30:53'),(4416,'2005-07-07 22:04:36',1247,290,'2005-07-09 02:44:36',2,'2006-02-15 21:30:53'),(4417,'2005-07-07 22:05:05',743,452,'2005-07-09 16:16:05',2,'2006-02-15 21:30:53'),(4418,'2005-07-07 22:05:30',4368,417,'2005-07-11 18:42:30',1,'2006-02-15 21:30:53'),(4419,'2005-07-07 22:06:24',783,39,'2005-07-15 23:59:24',1,'2006-02-15 21:30:53'),(4420,'2005-07-07 22:07:31',4427,346,'2005-07-12 19:14:31',2,'2006-02-15 21:30:53'),(4421,'2005-07-07 22:07:55',4103,417,'2005-07-16 20:21:55',1,'2006-02-15 21:30:53'),(4422,'2005-07-07 22:09:45',1741,345,'2005-07-10 01:43:45',1,'2006-02-15 21:30:53'),(4423,'2005-07-07 22:11:28',2721,526,'2005-07-14 18:49:28',2,'2006-02-15 21:30:53'),(4424,'2005-07-07 22:14:43',662,384,'2005-07-11 01:17:43',1,'2006-02-15 21:30:53'),(4425,'2005-07-07 22:22:44',877,345,'2005-07-08 22:23:44',2,'2006-02-15 21:30:53'),(4426,'2005-07-07 22:28:32',364,242,'2005-07-16 02:04:32',1,'2006-02-15 21:30:53'),(4427,'2005-07-07 22:28:51',1021,69,'2005-07-11 21:37:51',2,'2006-02-15 21:30:53'),(4428,'2005-07-07 22:29:40',2575,181,'2005-07-11 02:46:40',2,'2006-02-15 21:30:53'),(4429,'2005-07-07 22:32:47',2949,187,'2005-07-15 03:10:47',2,'2006-02-15 21:30:53'),(4430,'2005-07-07 22:35:24',3436,278,'2005-07-14 23:49:24',1,'2006-02-15 21:30:53'),(4431,'2005-07-07 22:39:02',936,26,'2005-07-16 19:24:02',1,'2006-02-15 21:30:53'),(4432,'2005-07-07 22:40:02',2779,295,'2005-07-15 01:46:02',1,'2006-02-15 21:30:53'),(4433,'2005-07-07 22:45:41',88,449,'2005-07-16 23:30:41',2,'2006-02-15 21:30:53'),(4434,'2005-07-07 22:48:34',1801,32,'2005-07-09 18:55:34',1,'2006-02-15 21:30:53'),(4435,'2005-07-07 22:51:04',3815,157,'2005-07-14 23:15:04',2,'2006-02-15 21:30:53'),(4436,'2005-07-07 22:52:04',4326,563,'2005-07-10 04:51:04',1,'2006-02-15 21:30:53'),(4437,'2005-07-07 22:55:41',3578,414,'2005-07-13 19:40:41',1,'2006-02-15 21:30:53'),(4438,'2005-07-07 22:56:17',4371,104,'2005-07-16 17:28:17',1,'2006-02-15 21:30:53'),(4439,'2005-07-07 22:57:30',2393,521,'2005-07-10 18:28:30',1,'2006-02-15 21:30:53'),(4440,'2005-07-07 23:00:58',1236,507,'2005-07-08 21:31:58',2,'2006-02-15 21:30:53'),(4441,'2005-07-07 23:04:23',3680,211,'2005-07-13 19:07:23',1,'2006-02-15 21:30:53'),(4442,'2005-07-07 23:05:30',461,123,'2005-07-13 22:20:30',2,'2006-02-15 21:30:53'),(4443,'2005-07-07 23:05:53',72,389,'2005-07-16 01:46:53',1,'2006-02-15 21:30:53'),(4444,'2005-07-07 23:07:44',764,529,'2005-07-14 02:51:44',2,'2006-02-15 21:30:53'),(4445,'2005-07-07 23:08:22',3328,327,'2005-07-16 03:49:22',1,'2006-02-15 21:30:53'),(4446,'2005-07-07 23:12:16',2629,438,'2005-07-13 19:42:16',1,'2006-02-15 21:30:53'),(4447,'2005-07-07 23:15:28',404,549,'2005-07-14 22:53:28',2,'2006-02-15 21:30:53'),(4448,'2005-07-07 23:17:12',2768,536,'2005-07-13 18:26:12',1,'2006-02-15 21:30:53'),(4449,'2005-07-07 23:18:58',2813,354,'2005-07-15 20:40:58',2,'2006-02-15 21:30:53'),(4450,'2005-07-07 23:20:05',1252,345,'2005-07-13 19:50:05',2,'2006-02-15 21:30:53'),(4451,'2005-07-07 23:29:54',179,85,'2005-07-10 23:29:54',2,'2006-02-15 21:30:53'),(4452,'2005-07-07 23:31:54',2414,460,'2005-07-14 04:05:54',1,'2006-02-15 21:30:53'),(4453,'2005-07-07 23:32:39',89,560,'2005-07-12 01:38:39',2,'2006-02-15 21:30:53'),(4454,'2005-07-07 23:37:00',1395,9,'2005-07-11 02:30:00',1,'2006-02-15 21:30:53'),(4455,'2005-07-07 23:43:46',1396,507,'2005-07-08 21:34:46',2,'2006-02-15 21:30:53'),(4456,'2005-07-07 23:45:21',3395,421,'2005-07-13 23:03:21',2,'2006-02-15 21:30:53'),(4457,'2005-07-07 23:45:38',407,567,'2005-07-09 20:02:38',1,'2006-02-15 21:30:53'),(4458,'2005-07-07 23:47:47',1307,229,'2005-07-09 19:17:47',2,'2006-02-15 21:30:53'),(4459,'2005-07-07 23:48:52',3987,227,'2005-07-13 19:37:52',2,'2006-02-15 21:30:53'),(4460,'2005-07-07 23:50:14',4121,592,'2005-07-09 21:55:14',1,'2006-02-15 21:30:53'),(4461,'2005-07-07 23:59:43',3656,286,'2005-07-16 19:44:43',2,'2006-02-15 21:30:53'),(4462,'2005-07-08 00:02:49',4120,257,'2005-07-15 20:48:49',2,'2006-02-15 21:30:53'),(4463,'2005-07-08 00:04:59',4356,422,'2005-07-16 01:19:59',1,'2006-02-15 21:30:53'),(4464,'2005-07-08 00:07:18',4484,583,'2005-07-08 22:14:18',2,'2006-02-15 21:30:53'),(4465,'2005-07-08 00:07:45',2877,329,'2005-07-13 18:08:45',2,'2006-02-15 21:30:53'),(4466,'2005-07-08 00:12:53',3320,304,'2005-07-17 03:49:53',2,'2006-02-15 21:30:53'),(4467,'2005-07-08 00:13:52',4466,339,'2005-07-09 00:52:52',1,'2006-02-15 21:30:53'),(4468,'2005-07-08 00:17:59',3302,170,'2005-07-12 05:51:59',2,'2006-02-15 21:30:53'),(4469,'2005-07-08 00:18:32',2173,192,'2005-07-12 21:17:32',2,'2006-02-15 21:30:53'),(4470,'2005-07-08 00:20:57',3605,145,'2005-07-10 02:31:57',1,'2006-02-15 21:30:53'),(4471,'2005-07-08 00:21:29',263,30,'2005-07-11 18:48:29',2,'2006-02-15 21:30:53'),(4472,'2005-07-08 00:22:06',2089,343,'2005-07-16 20:16:06',1,'2006-02-15 21:30:53'),(4473,'2005-07-08 00:22:10',1387,481,'2005-07-09 21:11:10',1,'2006-02-15 21:30:53'),(4474,'2005-07-08 00:26:56',4474,137,'2005-07-12 23:07:56',1,'2006-02-15 21:30:53'),(4475,'2005-07-08 00:27:30',3466,340,'2005-07-09 05:39:30',1,'2006-02-15 21:30:53'),(4476,'2005-07-08 00:34:25',395,279,'2005-07-08 22:55:25',1,'2006-02-15 21:30:53'),(4477,'2005-07-08 00:38:24',1602,552,'2005-07-13 05:14:24',1,'2006-02-15 21:30:53'),(4478,'2005-07-08 00:39:08',1764,357,'2005-07-11 21:57:08',2,'2006-02-15 21:30:53'),(4479,'2005-07-08 00:52:35',3516,211,'2005-07-09 20:19:35',2,'2006-02-15 21:30:53'),(4480,'2005-07-08 00:56:30',4457,296,'2005-07-10 20:52:30',2,'2006-02-15 21:30:53'),(4481,'2005-07-08 00:58:15',1669,474,'2005-07-11 23:22:15',2,'2006-02-15 21:30:53'),(4482,'2005-07-08 01:01:18',3500,511,'2005-07-11 01:18:18',1,'2006-02-15 21:30:53'),(4483,'2005-07-08 01:03:12',1222,425,'2005-07-17 00:20:12',1,'2006-02-15 21:30:53'),(4484,'2005-07-08 01:05:57',2867,306,'2005-07-16 00:41:57',2,'2006-02-15 21:30:53'),(4485,'2005-07-08 01:07:54',2614,130,'2005-07-16 03:19:54',2,'2006-02-15 21:30:53'),(4486,'2005-07-08 01:09:09',837,197,'2005-07-16 23:40:09',1,'2006-02-15 21:30:53'),(4487,'2005-07-08 01:20:22',2220,360,'2005-07-16 21:23:22',2,'2006-02-15 21:30:53'),(4488,'2005-07-08 01:22:23',2108,89,'2005-07-13 21:17:23',1,'2006-02-15 21:30:53'),(4489,'2005-07-08 01:23:58',4306,259,'2005-07-09 01:35:58',2,'2006-02-15 21:30:53'),(4490,'2005-07-08 01:26:32',2690,161,'2005-07-09 01:13:32',1,'2006-02-15 21:30:53'),(4491,'2005-07-08 01:30:46',1168,413,'2005-07-11 03:12:46',1,'2006-02-15 21:30:53'),(4492,'2005-07-08 01:32:04',1152,247,'2005-07-10 22:11:04',1,'2006-02-15 21:30:53'),(4493,'2005-07-08 01:40:24',1369,167,'2005-07-09 02:17:24',2,'2006-02-15 21:30:53'),(4494,'2005-07-08 01:42:45',1655,349,'2005-07-16 22:29:45',2,'2006-02-15 21:30:53'),(4495,'2005-07-08 01:43:46',3515,404,'2005-07-10 07:38:46',1,'2006-02-15 21:30:53'),(4496,'2005-07-08 01:44:19',150,578,'2005-07-08 20:34:19',2,'2006-02-15 21:30:53'),(4497,'2005-07-08 01:51:32',1995,142,'2005-07-15 22:56:32',1,'2006-02-15 21:30:53'),(4498,'2005-07-08 02:07:50',4299,43,'2005-07-12 23:54:50',2,'2006-02-15 21:30:53'),(4499,'2005-07-08 02:08:48',851,199,'2005-07-10 07:06:48',2,'2006-02-15 21:30:53'),(4500,'2005-07-08 02:10:01',398,462,'2005-07-15 05:49:01',2,'2006-02-15 21:30:53'),(4501,'2005-07-08 02:12:00',1412,262,'2005-07-10 02:16:00',2,'2006-02-15 21:30:53'),(4502,'2005-07-08 02:12:04',225,470,'2005-07-15 02:19:04',2,'2006-02-15 21:30:53'),(4503,'2005-07-08 02:17:12',1503,8,'2005-07-13 08:12:12',1,'2006-02-15 21:30:53'),(4504,'2005-07-08 02:19:27',361,422,'2005-07-12 21:15:27',1,'2006-02-15 21:30:53'),(4505,'2005-07-08 02:20:04',1864,481,'2005-07-14 20:28:04',2,'2006-02-15 21:30:53'),(4506,'2005-07-08 02:22:18',1484,133,'2005-07-13 04:54:18',2,'2006-02-15 21:30:53'),(4507,'2005-07-08 02:22:45',819,505,'2005-07-14 20:53:45',1,'2006-02-15 21:30:53'),(4508,'2005-07-08 02:28:41',3996,97,'2005-07-16 23:59:41',1,'2006-02-15 21:30:53'),(4509,'2005-07-08 02:32:38',1760,230,'2005-07-14 01:05:38',2,'2006-02-15 21:30:53'),(4510,'2005-07-08 02:34:51',1085,27,'2005-07-17 06:03:51',2,'2006-02-15 21:30:53'),(4511,'2005-07-08 02:36:21',4438,75,'2005-07-15 06:01:21',1,'2006-02-15 21:30:53'),(4512,'2005-07-08 02:38:56',1569,424,'2005-07-10 20:46:56',1,'2006-02-15 21:30:53'),(4513,'2005-07-08 02:39:59',3704,182,'2005-07-14 07:48:59',2,'2006-02-15 21:30:53'),(4514,'2005-07-08 02:41:25',1938,576,'2005-07-15 06:17:25',1,'2006-02-15 21:30:53'),(4515,'2005-07-08 02:42:03',1998,229,'2005-07-10 07:22:03',2,'2006-02-15 21:30:53'),(4516,'2005-07-08 02:43:41',2314,497,'2005-07-14 02:20:41',1,'2006-02-15 21:30:53'),(4517,'2005-07-08 02:45:19',453,16,'2005-07-12 03:04:19',2,'2006-02-15 21:30:53'),(4518,'2005-07-08 02:48:36',697,592,'2005-07-13 04:53:36',2,'2006-02-15 21:30:53'),(4519,'2005-07-08 02:51:23',4425,459,'2005-07-12 06:52:23',2,'2006-02-15 21:30:53'),(4520,'2005-07-08 02:53:46',3505,104,'2005-07-08 22:27:46',2,'2006-02-15 21:30:53'),(4521,'2005-07-08 02:57:56',2652,327,'2005-07-11 22:49:56',2,'2006-02-15 21:30:53'),(4522,'2005-07-08 03:03:12',4114,307,'2005-07-10 04:49:12',1,'2006-02-15 21:30:53'),(4523,'2005-07-08 03:06:59',2785,347,'2005-07-17 04:44:59',1,'2006-02-15 21:30:53'),(4524,'2005-07-08 03:10:48',2218,185,'2005-07-09 07:49:48',2,'2006-02-15 21:30:53'),(4525,'2005-07-08 03:15:00',3631,458,'2005-07-11 04:53:00',1,'2006-02-15 21:30:53'),(4526,'2005-07-08 03:17:05',1443,1,'2005-07-14 01:19:05',2,'2006-02-15 21:30:53'),(4527,'2005-07-08 03:20:10',2263,468,'2005-07-15 02:21:10',1,'2006-02-15 21:30:53'),(4528,'2005-07-08 03:24:54',3209,439,'2005-07-09 03:50:54',2,'2006-02-15 21:30:53'),(4529,'2005-07-08 03:26:20',1361,104,'2005-07-16 05:04:20',1,'2006-02-15 21:30:53'),(4530,'2005-07-08 03:27:05',3775,79,'2005-07-11 07:44:05',1,'2006-02-15 21:30:53'),(4531,'2005-07-08 03:27:59',3108,142,'2005-07-10 22:48:59',1,'2006-02-15 21:30:53'),(4532,'2005-07-08 03:30:39',4012,481,'2005-07-11 21:49:39',1,'2006-02-15 21:30:53'),(4533,'2005-07-08 03:32:01',1105,474,'2005-07-10 21:57:01',1,'2006-02-15 21:30:53'),(4534,'2005-07-08 03:36:55',2518,132,'2005-07-16 00:49:55',2,'2006-02-15 21:30:53'),(4535,'2005-07-08 03:40:46',561,29,'2005-07-13 06:53:46',2,'2006-02-15 21:30:53'),(4536,'2005-07-08 03:43:22',220,26,'2005-07-15 08:44:22',1,'2006-02-15 21:30:53'),(4537,'2005-07-08 03:48:40',1305,448,'2005-07-13 22:54:40',2,'2006-02-15 21:30:53'),(4538,'2005-07-08 03:56:29',3638,451,'2005-07-15 08:24:29',1,'2006-02-15 21:30:53'),(4539,'2005-07-08 04:01:02',2450,264,'2005-07-14 22:32:02',1,'2006-02-15 21:30:53'),(4540,'2005-07-08 04:03:28',4160,309,'2005-07-13 03:31:28',2,'2006-02-15 21:30:53'),(4541,'2005-07-08 04:04:19',1976,248,'2005-07-13 07:27:19',2,'2006-02-15 21:30:53'),(4542,'2005-07-08 04:06:30',4169,293,'2005-07-16 06:54:30',2,'2006-02-15 21:30:53'),(4543,'2005-07-08 04:06:55',913,41,'2005-07-12 23:17:55',2,'2006-02-15 21:30:53'),(4544,'2005-07-08 04:11:04',4471,351,'2005-07-09 22:48:04',1,'2006-02-15 21:30:53'),(4545,'2005-07-08 04:17:47',3658,271,'2005-07-13 07:19:47',1,'2006-02-15 21:30:53'),(4546,'2005-07-08 04:18:36',4507,393,'2005-07-17 08:23:36',1,'2006-02-15 21:30:53'),(4547,'2005-07-08 04:20:19',3386,255,'2005-07-09 00:28:19',2,'2006-02-15 21:30:53'),(4548,'2005-07-08 04:21:54',765,164,'2005-07-14 23:16:54',2,'2006-02-15 21:30:53'),(4549,'2005-07-08 04:25:03',2797,98,'2005-07-10 09:01:03',2,'2006-02-15 21:30:53'),(4550,'2005-07-08 04:34:00',615,409,'2005-07-14 23:45:00',2,'2006-02-15 21:30:53'),(4551,'2005-07-08 04:36:21',1160,494,'2005-07-17 10:23:21',2,'2006-02-15 21:30:53'),(4552,'2005-07-08 04:36:35',2549,313,'2005-07-14 05:48:35',2,'2006-02-15 21:30:53'),(4553,'2005-07-08 04:43:41',2114,529,'2005-07-09 23:55:41',1,'2006-02-15 21:30:53'),(4554,'2005-07-08 04:48:03',3878,376,'2005-07-16 04:34:03',1,'2006-02-15 21:30:53'),(4555,'2005-07-08 04:48:36',1757,68,'2005-07-17 07:57:36',1,'2006-02-15 21:30:53'),(4556,'2005-07-08 04:48:41',4099,348,'2005-07-16 08:51:41',2,'2006-02-15 21:30:53'),(4557,'2005-07-08 04:49:15',1191,132,'2005-07-14 00:00:15',2,'2006-02-15 21:30:53'),(4558,'2005-07-08 04:55:26',828,448,'2005-07-09 10:53:26',2,'2006-02-15 21:30:53'),(4559,'2005-07-08 04:56:49',1911,424,'2005-07-12 08:56:49',2,'2006-02-15 21:30:53'),(4560,'2005-07-08 04:58:48',303,36,'2005-07-10 04:27:48',1,'2006-02-15 21:30:53'),(4561,'2005-07-08 05:02:43',1643,500,'2005-07-11 04:56:43',1,'2006-02-15 21:30:53'),(4562,'2005-07-08 05:08:32',963,454,'2005-07-12 08:16:32',2,'2006-02-15 21:30:53'),(4563,'2005-07-08 05:08:55',287,522,'2005-07-16 05:44:55',2,'2006-02-15 21:30:53'),(4564,'2005-07-08 05:09:38',2494,519,'2005-07-11 05:37:38',2,'2006-02-15 21:30:53'),(4565,'2005-07-08 05:12:28',3755,563,'2005-07-17 03:38:28',2,'2006-02-15 21:30:53'),(4566,'2005-07-08 05:18:50',4302,133,'2005-07-15 01:53:50',1,'2006-02-15 21:30:53'),(4567,'2005-07-08 05:20:04',4073,202,'2005-07-10 01:35:04',1,'2006-02-15 21:30:53'),(4568,'2005-07-08 05:23:59',2626,122,'2005-07-09 06:07:59',1,'2006-02-15 21:30:53'),(4569,'2005-07-08 05:30:51',2925,366,'2005-07-14 04:14:51',2,'2006-02-15 21:30:53'),(4570,'2005-07-08 05:33:59',2612,503,'2005-07-14 09:27:59',1,'2006-02-15 21:30:53'),(4571,'2005-07-08 05:34:41',2416,86,'2005-07-17 02:15:41',1,'2006-02-15 21:30:53'),(4572,'2005-07-08 05:36:59',1324,323,'2005-07-12 04:46:59',2,'2006-02-15 21:30:53'),(4573,'2005-07-08 05:38:46',2478,400,'2005-07-15 07:07:46',1,'2006-02-15 21:30:53'),(4574,'2005-07-08 05:39:42',536,257,'2005-07-08 23:44:42',2,'2006-02-15 21:30:53'),(4575,'2005-07-08 05:49:14',231,41,'2005-07-11 04:08:14',2,'2006-02-15 21:30:53'),(4576,'2005-07-08 05:51:19',1920,567,'2005-07-10 11:36:19',1,'2006-02-15 21:30:53'),(4577,'2005-07-08 05:59:00',1688,442,'2005-07-16 06:23:00',2,'2006-02-15 21:30:53'),(4578,'2005-07-08 06:00:17',1533,497,'2005-07-10 06:58:17',2,'2006-02-15 21:30:53'),(4579,'2005-07-08 06:01:56',4290,585,'2005-07-13 11:24:56',1,'2006-02-15 21:30:53'),(4580,'2005-07-08 06:04:23',3512,199,'2005-07-15 05:42:23',2,'2006-02-15 21:30:53'),(4581,'2005-07-08 06:05:06',887,591,'2005-07-16 00:54:06',1,'2006-02-15 21:30:53'),(4582,'2005-07-08 06:09:09',688,274,'2005-07-14 02:23:09',1,'2006-02-15 21:30:53'),(4583,'2005-07-08 06:09:44',4151,365,'2005-07-12 03:44:44',1,'2006-02-15 21:30:53'),(4584,'2005-07-08 06:11:02',2322,368,'2005-07-11 05:14:02',1,'2006-02-15 21:30:53'),(4585,'2005-07-08 06:11:58',1622,143,'2005-07-17 01:58:58',1,'2006-02-15 21:30:53'),(4586,'2005-07-08 06:12:33',1374,461,'2005-07-13 11:06:33',2,'2006-02-15 21:30:53'),(4587,'2005-07-08 06:16:26',3502,63,'2005-07-13 00:59:26',1,'2006-02-15 21:30:53'),(4588,'2005-07-08 06:18:01',3629,198,'2005-07-10 08:59:01',1,'2006-02-15 21:30:53'),(4589,'2005-07-08 06:26:04',1192,99,'2005-07-09 10:31:04',2,'2006-02-15 21:30:53'),(4590,'2005-07-08 06:27:48',4233,580,'2005-07-14 07:46:48',1,'2006-02-15 21:30:53'),(4591,'2005-07-08 06:29:43',2276,182,'2005-07-17 07:20:43',1,'2006-02-15 21:30:53'),(4592,'2005-07-08 06:31:28',2141,235,'2005-07-10 06:08:28',2,'2006-02-15 21:30:53'),(4593,'2005-07-08 06:38:12',2897,528,'2005-07-16 10:48:12',2,'2006-02-15 21:30:53'),(4594,'2005-07-08 06:40:06',26,506,'2005-07-16 05:51:06',2,'2006-02-15 21:30:53'),(4595,'2005-07-08 06:40:25',760,336,'2005-07-14 08:54:25',1,'2006-02-15 21:30:53'),(4596,'2005-07-08 06:41:25',2280,306,'2005-07-14 01:36:25',1,'2006-02-15 21:30:53'),(4597,'2005-07-08 06:43:42',3767,545,'2005-07-13 01:32:42',1,'2006-02-15 21:30:53'),(4598,'2005-07-08 06:46:26',258,82,'2005-07-16 01:21:26',1,'2006-02-15 21:30:53'),(4599,'2005-07-08 06:48:26',2098,356,'2005-07-11 07:06:26',1,'2006-02-15 21:30:53'),(4600,'2005-07-08 06:48:37',1526,457,'2005-07-15 10:11:37',1,'2006-02-15 21:30:53'),(4601,'2005-07-08 06:49:10',3184,572,'2005-07-09 07:43:10',1,'2006-02-15 21:30:53'),(4602,'2005-07-08 06:52:40',3616,129,'2005-07-10 06:30:40',1,'2006-02-15 21:30:53'),(4603,'2005-07-08 06:57:07',755,334,'2005-07-17 04:32:07',1,'2006-02-15 21:30:53'),(4604,'2005-07-08 06:58:43',4230,402,'2005-07-14 06:41:43',1,'2006-02-15 21:30:53'),(4605,'2005-07-08 07:00:14',1139,523,'2005-07-16 08:38:14',1,'2006-02-15 21:30:53'),(4606,'2005-07-08 07:05:50',1946,502,'2005-07-16 09:11:50',2,'2006-02-15 21:30:53'),(4607,'2005-07-08 07:15:14',1193,281,'2005-07-11 01:32:14',1,'2006-02-15 21:30:53'),(4608,'2005-07-08 07:19:11',758,11,'2005-07-11 01:37:11',1,'2006-02-15 21:30:53'),(4609,'2005-07-08 07:22:29',3711,573,'2005-07-10 08:06:29',1,'2006-02-15 21:30:53'),(4610,'2005-07-08 07:28:05',1279,265,'2005-07-14 02:10:05',1,'2006-02-15 21:30:53'),(4611,'2005-07-08 07:33:56',3486,1,'2005-07-12 13:25:56',2,'2006-02-15 21:30:53'),(4612,'2005-07-08 07:40:44',82,371,'2005-07-12 03:48:44',1,'2006-02-15 21:30:53'),(4613,'2005-07-08 07:44:49',476,581,'2005-07-09 04:47:49',1,'2006-02-15 21:30:53'),(4614,'2005-07-08 07:45:17',2579,71,'2005-07-12 02:10:17',2,'2006-02-15 21:30:53'),(4615,'2005-07-08 07:46:53',1200,404,'2005-07-16 12:43:53',2,'2006-02-15 21:30:53'),(4616,'2005-07-08 07:48:12',2580,280,'2005-07-10 08:13:12',2,'2006-02-15 21:30:53'),(4617,'2005-07-08 07:55:08',3784,475,'2005-07-17 02:49:08',2,'2006-02-15 21:30:53'),(4618,'2005-07-08 08:00:20',3691,179,'2005-07-14 05:59:20',1,'2006-02-15 21:30:53'),(4619,'2005-07-08 08:01:09',2127,579,'2005-07-16 05:52:09',2,'2006-02-15 21:30:53'),(4620,'2005-07-08 08:01:44',3467,210,'2005-07-16 07:43:44',2,'2006-02-15 21:30:53'),(4621,'2005-07-08 08:02:18',1594,297,'2005-07-12 08:53:18',2,'2006-02-15 21:30:53'),(4622,'2005-07-08 08:02:42',2710,289,'2005-07-10 07:46:42',2,'2006-02-15 21:30:53'),(4623,'2005-07-08 08:03:22',4171,593,'2005-07-12 09:11:22',2,'2006-02-15 21:30:53'),(4624,'2005-07-08 08:12:17',1548,341,'2005-07-15 12:24:17',2,'2006-02-15 21:30:53'),(4625,'2005-07-08 08:14:26',318,473,'2005-07-09 03:45:26',1,'2006-02-15 21:30:53'),(4626,'2005-07-08 08:18:21',37,268,'2005-07-10 11:36:21',1,'2006-02-15 21:30:53'),(4627,'2005-07-08 08:24:39',2383,78,'2005-07-13 11:04:39',2,'2006-02-15 21:30:53'),(4628,'2005-07-08 08:25:52',1888,540,'2005-07-10 11:22:52',1,'2006-02-15 21:30:53'),(4629,'2005-07-08 08:31:26',228,563,'2005-07-17 12:07:26',1,'2006-02-15 21:30:53'),(4630,'2005-07-08 08:33:38',3446,319,'2005-07-09 13:09:38',2,'2006-02-15 21:30:53'),(4631,'2005-07-08 08:38:22',470,59,'2005-07-11 03:33:22',2,'2006-02-15 21:30:53'),(4632,'2005-07-08 08:38:57',4330,393,'2005-07-15 09:33:57',1,'2006-02-15 21:30:53'),(4633,'2005-07-08 08:39:39',3178,348,'2005-07-15 10:23:39',1,'2006-02-15 21:30:53'),(4634,'2005-07-08 08:40:02',811,275,'2005-07-12 04:45:02',2,'2006-02-15 21:30:53'),(4635,'2005-07-08 08:42:40',2434,65,'2005-07-14 10:31:40',1,'2006-02-15 21:30:53'),(4636,'2005-07-08 08:44:32',1858,228,'2005-07-10 08:59:32',2,'2006-02-15 21:30:53'),(4637,'2005-07-08 08:49:54',1917,263,'2005-07-11 13:12:54',2,'2006-02-15 21:30:53'),(4638,'2005-07-08 08:57:20',2240,305,'2005-07-10 05:08:20',2,'2006-02-15 21:30:53'),(4639,'2005-07-08 08:57:21',2459,75,'2005-07-14 11:22:21',2,'2006-02-15 21:30:53'),(4640,'2005-07-08 08:59:34',1147,506,'2005-07-15 03:31:34',1,'2006-02-15 21:30:53'),(4641,'2005-07-08 09:09:46',2436,26,'2005-07-17 03:54:46',2,'2006-02-15 21:30:53'),(4642,'2005-07-08 09:13:28',1962,30,'2005-07-10 06:17:28',2,'2006-02-15 21:30:53'),(4643,'2005-07-08 09:13:56',239,436,'2005-07-10 12:09:56',2,'2006-02-15 21:30:53'),(4644,'2005-07-08 09:14:29',3239,38,'2005-07-10 07:20:29',2,'2006-02-15 21:30:53'),(4645,'2005-07-08 09:20:09',687,400,'2005-07-09 06:07:09',2,'2006-02-15 21:30:53'),(4646,'2005-07-08 09:23:26',618,362,'2005-07-16 04:03:26',1,'2006-02-15 21:30:53'),(4647,'2005-07-08 09:27:36',674,312,'2005-07-16 14:56:36',2,'2006-02-15 21:30:53'),(4648,'2005-07-08 09:31:27',3490,444,'2005-07-13 03:55:27',2,'2006-02-15 21:30:53'),(4649,'2005-07-08 09:32:05',1116,221,'2005-07-15 08:37:05',2,'2006-02-15 21:30:53'),(4650,'2005-07-08 09:32:08',2850,108,'2005-07-15 15:20:08',1,'2006-02-15 21:30:53'),(4651,'2005-07-08 09:39:39',4064,557,'2005-07-09 12:14:39',2,'2006-02-15 21:30:53'),(4652,'2005-07-08 09:47:51',4198,127,'2005-07-16 04:09:51',2,'2006-02-15 21:30:53'),(4653,'2005-07-08 09:48:01',2511,404,'2005-07-17 05:18:01',1,'2006-02-15 21:30:53'),(4654,'2005-07-08 09:48:03',4210,434,'2005-07-17 13:17:03',1,'2006-02-15 21:30:53'),(4655,'2005-07-08 09:49:22',4078,213,'2005-07-15 13:08:22',1,'2006-02-15 21:30:53'),(4656,'2005-07-08 09:50:10',839,141,'2005-07-13 15:00:10',1,'2006-02-15 21:30:53'),(4657,'2005-07-08 09:51:02',1002,54,'2005-07-09 09:29:02',2,'2006-02-15 21:30:53'),(4658,'2005-07-08 09:51:11',3131,166,'2005-07-10 12:30:11',2,'2006-02-15 21:30:53'),(4659,'2005-07-08 09:53:28',4389,425,'2005-07-14 14:56:28',2,'2006-02-15 21:30:53'),(4660,'2005-07-08 09:54:47',1208,139,'2005-07-11 15:19:47',2,'2006-02-15 21:30:53'),(4661,'2005-07-08 09:55:06',2641,518,'2005-07-11 08:26:06',1,'2006-02-15 21:30:53'),(4662,'2005-07-08 09:58:54',1370,553,'2005-07-10 12:51:54',1,'2006-02-15 21:30:53'),(4663,'2005-07-08 09:59:18',2959,139,'2005-07-10 11:25:18',1,'2006-02-15 21:30:53'),(4664,'2005-07-08 10:01:28',1318,546,'2005-07-12 10:37:28',2,'2006-02-15 21:30:53'),(4665,'2005-07-08 10:04:24',575,106,'2005-07-14 15:13:24',1,'2006-02-15 21:30:53'),(4666,'2005-07-08 10:05:02',4576,120,'2005-07-16 07:28:02',1,'2006-02-15 21:30:53'),(4667,'2005-07-08 10:06:26',3348,485,'2005-07-14 04:48:26',1,'2006-02-15 21:30:53'),(4668,'2005-07-08 10:11:45',3971,481,'2005-07-17 13:01:45',2,'2006-02-15 21:30:53'),(4669,'2005-07-08 10:13:08',3494,581,'2005-07-16 07:52:08',1,'2006-02-15 21:30:53'),(4670,'2005-07-08 10:14:18',3317,153,'2005-07-16 15:10:18',2,'2006-02-15 21:30:53'),(4671,'2005-07-08 10:15:32',2139,55,'2005-07-14 08:19:32',2,'2006-02-15 21:30:53'),(4672,'2005-07-08 10:15:38',1922,18,'2005-07-16 05:06:38',1,'2006-02-15 21:30:53'),(4673,'2005-07-08 10:16:00',2792,91,'2005-07-17 10:03:00',2,'2006-02-15 21:30:53'),(4674,'2005-07-08 10:19:28',1617,329,'2005-07-12 12:54:28',2,'2006-02-15 21:30:53'),(4675,'2005-07-08 10:24:22',1309,380,'2005-07-14 11:09:22',1,'2006-02-15 21:30:53'),(4676,'2005-07-08 10:26:02',2590,302,'2005-07-10 13:38:02',2,'2006-02-15 21:30:53'),(4677,'2005-07-08 10:30:36',1226,258,'2005-07-14 12:40:36',1,'2006-02-15 21:30:53'),(4678,'2005-07-08 10:30:40',241,219,'2005-07-13 11:08:40',1,'2006-02-15 21:30:53'),(4679,'2005-07-08 10:33:14',3610,423,'2005-07-15 14:30:14',2,'2006-02-15 21:30:53'),(4680,'2005-07-08 10:35:28',4043,227,'2005-07-14 08:42:28',1,'2006-02-15 21:30:53'),(4681,'2005-07-08 10:36:03',1025,133,'2005-07-16 09:21:03',2,'2006-02-15 21:30:53'),(4682,'2005-07-08 10:38:27',873,263,'2005-07-11 06:29:27',2,'2006-02-15 21:30:53'),(4683,'2005-07-08 10:38:28',3464,283,'2005-07-09 12:07:28',1,'2006-02-15 21:30:53'),(4684,'2005-07-08 10:41:06',503,585,'2005-07-17 10:35:06',1,'2006-02-15 21:30:53'),(4685,'2005-07-08 10:45:13',602,590,'2005-07-12 08:29:13',1,'2006-02-15 21:30:53'),(4686,'2005-07-08 10:53:39',1398,234,'2005-07-10 05:34:39',2,'2006-02-15 21:30:53'),(4687,'2005-07-08 10:54:19',1156,169,'2005-07-10 08:00:19',2,'2006-02-15 21:30:53'),(4688,'2005-07-08 11:03:29',3574,80,'2005-07-17 15:41:29',2,'2006-02-15 21:30:53'),(4689,'2005-07-08 11:03:47',2519,364,'2005-07-16 06:07:47',2,'2006-02-15 21:30:53'),(4690,'2005-07-08 11:04:02',3304,64,'2005-07-15 10:27:02',2,'2006-02-15 21:30:53'),(4691,'2005-07-08 11:04:53',596,126,'2005-07-09 07:48:53',1,'2006-02-15 21:30:53'),(4692,'2005-07-08 11:07:06',1490,288,'2005-07-09 14:08:06',1,'2006-02-15 21:30:53'),(4693,'2005-07-08 11:07:36',1694,221,'2005-07-14 08:40:36',1,'2006-02-15 21:30:53'),(4694,'2005-07-08 11:07:37',3637,229,'2005-07-12 06:53:37',2,'2006-02-15 21:30:53'),(4695,'2005-07-08 11:07:59',805,39,'2005-07-17 16:35:59',1,'2006-02-15 21:30:53'),(4696,'2005-07-08 11:12:27',1358,424,'2005-07-14 05:41:27',1,'2006-02-15 21:30:53'),(4697,'2005-07-08 11:19:14',4143,224,'2005-07-12 07:14:14',2,'2006-02-15 21:30:53'),(4698,'2005-07-08 11:19:31',3963,570,'2005-07-13 13:45:31',2,'2006-02-15 21:30:53'),(4699,'2005-07-08 11:36:56',2462,348,'2005-07-14 11:35:56',2,'2006-02-15 21:30:53'),(4700,'2005-07-08 11:37:21',3889,317,'2005-07-12 15:41:21',1,'2006-02-15 21:30:53'),(4701,'2005-07-08 11:38:48',3012,522,'2005-07-13 15:59:48',2,'2006-02-15 21:30:53'),(4702,'2005-07-08 11:41:36',2593,56,'2005-07-10 06:55:36',1,'2006-02-15 21:30:53'),(4703,'2005-07-08 11:44:56',2859,544,'2005-07-13 09:17:56',1,'2006-02-15 21:30:53'),(4704,'2005-07-08 11:45:35',2291,28,'2005-07-10 09:46:35',1,'2006-02-15 21:30:53'),(4705,'2005-07-08 11:50:38',3709,85,'2005-07-12 15:58:38',2,'2006-02-15 21:30:53'),(4706,'2005-07-08 11:51:41',2512,380,'2005-07-17 12:58:41',1,'2006-02-15 21:30:53'),(4707,'2005-07-08 11:57:28',52,286,'2005-07-10 17:47:28',1,'2006-02-15 21:30:53'),(4708,'2005-07-08 11:59:19',3249,212,'2005-07-17 07:11:19',2,'2006-02-15 21:30:53'),(4709,'2005-07-08 12:04:34',3964,124,'2005-07-15 06:48:34',1,'2006-02-15 21:30:53'),(4710,'2005-07-08 12:04:53',248,590,'2005-07-13 11:28:53',2,'2006-02-15 21:30:53'),(4711,'2005-07-08 12:06:58',2327,563,'2005-07-12 08:37:58',1,'2006-02-15 21:30:53'),(4712,'2005-07-08 12:10:50',2371,39,'2005-07-17 14:54:50',2,'2006-02-15 21:30:53'),(4713,'2005-07-08 12:12:33',1399,207,'2005-07-16 17:13:33',1,'2006-02-15 21:30:53'),(4714,'2005-07-08 12:12:48',1932,385,'2005-07-17 08:43:48',2,'2006-02-15 21:30:53'),(4715,'2005-07-08 12:15:37',4010,276,'2005-07-10 10:37:37',2,'2006-02-15 21:30:53'),(4716,'2005-07-08 12:18:51',1923,391,'2005-07-11 11:06:51',2,'2006-02-15 21:30:53'),(4717,'2005-07-08 12:22:43',1491,453,'2005-07-11 10:24:43',2,'2006-02-15 21:30:53'),(4718,'2005-07-08 12:32:08',1653,535,'2005-07-17 17:34:08',2,'2006-02-15 21:30:53'),(4719,'2005-07-08 12:33:00',1315,556,'2005-07-15 12:30:00',1,'2006-02-15 21:30:53'),(4720,'2005-07-08 12:34:34',2669,452,'2005-07-09 10:28:34',1,'2006-02-15 21:30:53'),(4721,'2005-07-08 12:39:31',3105,234,'2005-07-15 18:07:31',1,'2006-02-15 21:30:53'),(4722,'2005-07-08 12:42:27',3738,590,'2005-07-09 09:14:27',2,'2006-02-15 21:30:53'),(4723,'2005-07-08 12:44:59',965,44,'2005-07-17 07:22:59',2,'2006-02-15 21:30:53'),(4724,'2005-07-08 12:46:30',3375,18,'2005-07-14 12:39:30',1,'2006-02-15 21:30:53'),(4725,'2005-07-08 12:47:11',2058,3,'2005-07-15 09:08:11',2,'2006-02-15 21:30:53'),(4726,'2005-07-08 12:50:54',4369,144,'2005-07-17 07:09:54',2,'2006-02-15 21:30:53'),(4727,'2005-07-08 12:54:15',1251,39,'2005-07-17 14:32:15',2,'2006-02-15 21:30:53'),(4728,'2005-07-08 12:59:01',3687,462,'2005-07-13 13:00:01',1,'2006-02-15 21:30:53'),(4729,'2005-07-08 12:59:40',1429,205,'2005-07-10 13:35:40',2,'2006-02-15 21:30:53'),(4730,'2005-07-08 12:59:49',1619,126,'2005-07-14 16:15:49',2,'2006-02-15 21:30:53'),(4731,'2005-07-08 13:08:18',4124,241,'2005-07-09 13:16:18',2,'2006-02-15 21:30:53'),(4732,'2005-07-08 13:09:45',308,562,'2005-07-14 10:10:45',1,'2006-02-15 21:30:53'),(4733,'2005-07-08 13:12:07',2230,93,'2005-07-13 07:34:07',1,'2006-02-15 21:30:53'),(4734,'2005-07-08 13:12:12',1928,546,'2005-07-10 09:01:12',2,'2006-02-15 21:30:53'),(4735,'2005-07-08 13:12:27',4324,381,'2005-07-13 10:06:27',2,'2006-02-15 21:30:53'),(4736,'2005-07-08 13:22:55',3009,79,'2005-07-17 07:27:55',1,'2006-02-15 21:30:53'),(4737,'2005-07-08 13:23:53',4286,116,'2005-07-12 18:49:53',1,'2006-02-15 21:30:53'),(4738,'2005-07-08 13:24:58',2021,31,'2005-07-17 17:44:58',2,'2006-02-15 21:30:53'),(4739,'2005-07-08 13:25:57',140,197,'2005-07-11 17:36:57',1,'2006-02-15 21:30:53'),(4740,'2005-07-08 13:30:35',2559,379,'2005-07-14 18:43:35',1,'2006-02-15 21:30:53'),(4741,'2005-07-08 13:31:23',516,260,'2005-07-17 12:02:23',2,'2006-02-15 21:30:53'),(4742,'2005-07-08 13:35:23',3022,340,'2005-07-11 10:24:23',2,'2006-02-15 21:30:53'),(4743,'2005-07-08 13:42:36',80,535,'2005-07-11 18:54:36',2,'2006-02-15 21:30:53'),(4744,'2005-07-08 13:43:57',2948,507,'2005-07-12 09:21:57',2,'2006-02-15 21:30:53'),(4745,'2005-07-08 13:45:09',1351,354,'2005-07-12 18:54:09',1,'2006-02-15 21:30:53'),(4746,'2005-07-08 13:47:55',173,148,'2005-07-11 09:06:55',2,'2006-02-15 21:30:53'),(4747,'2005-07-08 13:53:01',3942,383,'2005-07-12 17:10:01',2,'2006-02-15 21:30:53'),(4748,'2005-07-08 13:59:38',4279,9,'2005-07-15 16:51:38',1,'2006-02-15 21:30:53'),(4749,'2005-07-08 14:05:58',1190,236,'2005-07-10 18:35:58',2,'2006-02-15 21:30:53'),(4750,'2005-07-08 14:07:03',3383,198,'2005-07-13 18:05:03',1,'2006-02-15 21:30:53'),(4751,'2005-07-08 14:07:52',3469,436,'2005-07-13 10:37:52',2,'2006-02-15 21:30:53'),(4752,'2005-07-08 14:15:20',3250,512,'2005-07-12 13:22:20',1,'2006-02-15 21:30:53'),(4753,'2005-07-08 14:18:41',1642,391,'2005-07-09 10:00:41',2,'2006-02-15 21:30:53'),(4754,'2005-07-08 14:20:01',3177,108,'2005-07-11 11:50:01',1,'2006-02-15 21:30:53'),(4755,'2005-07-08 14:23:41',661,378,'2005-07-10 19:35:41',1,'2006-02-15 21:30:53'),(4756,'2005-07-08 14:24:00',3068,351,'2005-07-12 16:16:00',1,'2006-02-15 21:30:53'),(4757,'2005-07-08 14:36:51',1278,504,'2005-07-12 15:28:51',1,'2006-02-15 21:30:53'),(4758,'2005-07-08 14:38:02',3698,288,'2005-07-13 12:09:02',2,'2006-02-15 21:30:53'),(4759,'2005-07-08 14:39:22',3999,284,'2005-07-17 15:02:22',2,'2006-02-15 21:30:53'),(4760,'2005-07-08 14:48:07',3718,177,'2005-07-10 12:41:07',2,'2006-02-15 21:30:53'),(4761,'2005-07-08 14:51:45',3556,351,'2005-07-14 20:28:45',1,'2006-02-15 21:30:53'),(4762,'2005-07-08 14:54:42',390,36,'2005-07-12 18:08:42',1,'2006-02-15 21:30:53'),(4763,'2005-07-08 14:57:32',899,465,'2005-07-15 10:00:32',2,'2006-02-15 21:30:53'),(4764,'2005-07-08 15:01:25',1188,89,'2005-07-17 15:16:25',1,'2006-02-15 21:30:53'),(4765,'2005-07-08 15:08:45',469,437,'2005-07-13 10:44:45',1,'2006-02-15 21:30:53'),(4766,'2005-07-08 15:16:04',1057,149,'2005-07-15 11:04:04',2,'2006-02-15 21:30:53'),(4767,'2005-07-08 15:18:53',3744,350,'2005-07-13 15:48:53',1,'2006-02-15 21:30:53'),(4768,'2005-07-08 15:28:20',2787,482,'2005-07-09 11:46:20',1,'2006-02-15 21:30:53'),(4769,'2005-07-08 15:29:16',3462,501,'2005-07-09 18:42:16',2,'2006-02-15 21:30:53'),(4770,'2005-07-08 15:29:46',2406,573,'2005-07-14 13:31:46',1,'2006-02-15 21:30:53'),(4771,'2005-07-08 15:33:32',1060,32,'2005-07-10 12:38:32',1,'2006-02-15 21:30:53'),(4772,'2005-07-08 15:41:11',2156,486,'2005-07-17 15:25:11',1,'2006-02-15 21:30:53'),(4773,'2005-07-08 15:41:39',3025,519,'2005-07-13 18:16:39',1,'2006-02-15 21:30:53'),(4774,'2005-07-08 15:42:28',673,489,'2005-07-16 18:29:28',2,'2006-02-15 21:30:53'),(4775,'2005-07-08 15:44:05',4277,595,'2005-07-11 20:39:05',2,'2006-02-15 21:30:53'),(4776,'2005-07-08 15:44:20',2598,563,'2005-07-17 10:50:20',2,'2006-02-15 21:30:53'),(4777,'2005-07-08 15:48:34',449,102,'2005-07-16 15:25:34',1,'2006-02-15 21:30:53'),(4778,'2005-07-08 15:51:51',611,78,'2005-07-12 16:58:51',2,'2006-02-15 21:30:53'),(4779,'2005-07-08 15:53:41',1321,338,'2005-07-15 20:30:41',1,'2006-02-15 21:30:53'),(4780,'2005-07-08 16:06:51',2740,115,'2005-07-13 18:34:51',1,'2006-02-15 21:30:53'),(4781,'2005-07-08 16:06:55',1818,593,'2005-07-16 11:22:55',2,'2006-02-15 21:30:53'),(4782,'2005-07-08 16:08:51',445,436,'2005-07-17 17:56:51',1,'2006-02-15 21:30:53'),(4783,'2005-07-08 16:09:24',3952,214,'2005-07-16 21:53:24',2,'2006-02-15 21:30:53'),(4784,'2005-07-08 16:09:56',549,182,'2005-07-09 20:35:56',1,'2006-02-15 21:30:53'),(4785,'2005-07-08 16:10:19',58,474,'2005-07-11 18:52:19',1,'2006-02-15 21:30:53'),(4786,'2005-07-08 16:13:05',2724,294,'2005-07-16 15:29:05',1,'2006-02-15 21:30:53'),(4787,'2005-07-08 16:16:04',3929,7,'2005-07-14 18:02:04',2,'2006-02-15 21:30:53'),(4788,'2005-07-08 16:17:35',691,533,'2005-07-11 11:56:35',2,'2006-02-15 21:30:53'),(4789,'2005-07-08 16:22:01',20,73,'2005-07-15 18:29:01',2,'2006-02-15 21:30:53'),(4790,'2005-07-08 16:25:27',100,500,'2005-07-11 11:35:27',1,'2006-02-15 21:30:53'),(4791,'2005-07-08 16:27:24',2505,393,'2005-07-14 21:50:24',2,'2006-02-15 21:30:53'),(4792,'2005-07-08 16:29:38',2132,147,'2005-07-10 16:31:38',2,'2006-02-15 21:30:53'),(4793,'2005-07-08 16:30:01',3090,427,'2005-07-15 17:56:01',1,'2006-02-15 21:30:53'),(4794,'2005-07-08 16:30:11',2497,451,'2005-07-17 12:41:11',2,'2006-02-15 21:30:53'),(4795,'2005-07-08 16:32:54',3409,497,'2005-07-09 14:15:54',1,'2006-02-15 21:30:53'),(4796,'2005-07-08 16:35:44',2484,9,'2005-07-13 11:08:44',2,'2006-02-15 21:30:53'),(4797,'2005-07-08 16:39:05',1389,265,'2005-07-09 11:41:05',1,'2006-02-15 21:30:53'),(4798,'2005-07-08 16:45:16',3874,212,'2005-07-16 13:45:16',2,'2006-02-15 21:30:53'),(4799,'2005-07-08 16:49:27',4112,512,'2005-07-12 19:58:27',2,'2006-02-15 21:30:53'),(4800,'2005-07-08 16:51:08',1940,99,'2005-07-13 14:16:08',2,'2006-02-15 21:30:53'),(4801,'2005-07-08 16:51:36',761,431,'2005-07-13 17:23:36',1,'2006-02-15 21:30:53'),(4802,'2005-07-08 16:55:17',22,562,'2005-07-15 19:34:17',1,'2006-02-15 21:30:53'),(4803,'2005-07-08 16:56:34',1786,174,'2005-07-14 20:16:34',1,'2006-02-15 21:30:53'),(4804,'2005-07-08 16:57:30',3756,269,'2005-07-10 18:25:30',1,'2006-02-15 21:30:53'),(4805,'2005-07-08 16:59:12',377,453,'2005-07-09 15:02:12',1,'2006-02-15 21:30:53'),(4806,'2005-07-08 17:01:02',214,506,'2005-07-15 21:41:02',1,'2006-02-15 21:30:53'),(4807,'2005-07-08 17:01:48',4511,348,'2005-07-16 22:33:48',2,'2006-02-15 21:30:53'),(4808,'2005-07-08 17:02:49',2544,563,'2005-07-12 22:49:49',2,'2006-02-15 21:30:53'),(4809,'2005-07-08 17:03:22',4251,474,'2005-07-17 22:39:22',1,'2006-02-15 21:30:53'),(4810,'2005-07-08 17:04:06',4056,209,'2005-07-09 13:41:06',1,'2006-02-15 21:30:53'),(4811,'2005-07-08 17:04:24',4032,127,'2005-07-12 16:41:24',2,'2006-02-15 21:30:53'),(4812,'2005-07-08 17:07:11',3281,304,'2005-07-17 21:03:11',2,'2006-02-15 21:30:53'),(4813,'2005-07-08 17:09:56',2752,439,'2005-07-09 22:29:56',1,'2006-02-15 21:30:53'),(4814,'2005-07-08 17:11:09',3497,244,'2005-07-17 12:43:09',2,'2006-02-15 21:30:53'),(4815,'2005-07-08 17:12:51',840,581,'2005-07-17 13:14:51',1,'2006-02-15 21:30:53'),(4816,'2005-07-08 17:14:14',2700,207,'2005-07-11 15:03:14',1,'2006-02-15 21:30:53'),(4817,'2005-07-08 17:17:31',1608,145,'2005-07-09 22:32:31',2,'2006-02-15 21:30:53'),(4818,'2005-07-08 17:18:22',115,144,'2005-07-14 14:40:22',1,'2006-02-15 21:30:53'),(4819,'2005-07-08 17:19:15',1342,64,'2005-07-16 14:32:15',1,'2006-02-15 21:30:53'),(4820,'2005-07-08 17:25:23',2672,172,'2005-07-17 20:32:23',2,'2006-02-15 21:30:53'),(4821,'2005-07-08 17:28:08',1690,172,'2005-07-11 17:44:08',1,'2006-02-15 21:30:53'),(4822,'2005-07-08 17:28:47',3970,185,'2005-07-14 13:06:47',1,'2006-02-15 21:30:53'),(4823,'2005-07-08 17:28:54',155,206,'2005-07-11 23:10:54',1,'2006-02-15 21:30:53'),(4824,'2005-07-08 17:37:39',1855,225,'2005-07-16 18:27:39',1,'2006-02-15 21:30:53'),(4825,'2005-07-08 17:43:01',2419,563,'2005-07-11 20:58:01',1,'2006-02-15 21:30:53'),(4826,'2005-07-08 17:44:25',911,180,'2005-07-16 20:14:25',2,'2006-02-15 21:30:53'),(4827,'2005-07-08 17:46:30',4455,110,'2005-07-11 14:12:30',2,'2006-02-15 21:30:53'),(4828,'2005-07-08 17:52:29',1100,92,'2005-07-11 14:35:29',1,'2006-02-15 21:30:53'),(4829,'2005-07-08 17:54:18',2661,133,'2005-07-11 23:41:18',1,'2006-02-15 21:30:53'),(4830,'2005-07-08 17:56:23',1150,359,'2005-07-17 21:40:23',2,'2006-02-15 21:30:53'),(4831,'2005-07-08 18:00:14',2739,243,'2005-07-12 15:54:14',2,'2006-02-15 21:30:53'),(4832,'2005-07-08 18:07:05',1838,509,'2005-07-10 19:37:05',2,'2006-02-15 21:30:53'),(4833,'2005-07-08 18:07:35',2921,581,'2005-07-13 15:29:35',2,'2006-02-15 21:30:53'),(4834,'2005-07-08 18:07:45',1288,301,'2005-07-14 15:27:45',1,'2006-02-15 21:30:53'),(4835,'2005-07-08 18:08:13',2499,95,'2005-07-17 16:51:13',2,'2006-02-15 21:30:53'),(4836,'2005-07-08 18:09:08',2756,311,'2005-07-15 20:19:08',1,'2006-02-15 21:30:53'),(4837,'2005-07-08 18:09:12',1944,149,'2005-07-11 16:40:12',1,'2006-02-15 21:30:53'),(4838,'2005-07-08 18:11:00',3733,84,'2005-07-17 12:57:00',2,'2006-02-15 21:30:53'),(4839,'2005-07-08 18:13:10',1810,556,'2005-07-15 12:49:10',1,'2006-02-15 21:30:53'),(4840,'2005-07-08 18:18:16',1670,119,'2005-07-16 14:59:16',1,'2006-02-15 21:30:53'),(4841,'2005-07-08 18:18:23',518,248,'2005-07-11 16:51:23',2,'2006-02-15 21:30:53'),(4842,'2005-07-08 18:21:30',1438,160,'2005-07-10 22:25:30',2,'2006-02-15 21:30:53'),(4843,'2005-07-08 18:27:28',3640,45,'2005-07-15 00:26:28',2,'2006-02-15 21:30:53'),(4844,'2005-07-08 18:28:13',4057,237,'2005-07-09 21:17:13',2,'2006-02-15 21:30:53'),(4845,'2005-07-08 18:28:20',2337,553,'2005-07-09 14:38:20',2,'2006-02-15 21:30:53'),(4846,'2005-07-08 18:29:05',417,556,'2005-07-10 22:33:05',2,'2006-02-15 21:30:53'),(4847,'2005-07-08 18:29:13',3397,544,'2005-07-15 18:12:13',2,'2006-02-15 21:30:53'),(4848,'2005-07-08 18:30:16',2962,251,'2005-07-12 19:53:16',2,'2006-02-15 21:30:53'),(4849,'2005-07-08 18:34:34',4323,146,'2005-07-14 20:27:34',2,'2006-02-15 21:30:53'),(4850,'2005-07-08 18:39:31',3039,154,'2005-07-13 00:18:31',2,'2006-02-15 21:30:53'),(4851,'2005-07-08 18:40:05',134,557,'2005-07-12 21:46:05',1,'2006-02-15 21:30:53'),(4852,'2005-07-08 18:43:15',3545,418,'2005-07-15 18:48:15',2,'2006-02-15 21:30:53'),(4853,'2005-07-08 18:43:18',1454,23,'2005-07-12 14:28:18',2,'2006-02-15 21:30:53'),(4854,'2005-07-08 18:44:44',3644,487,'2005-07-13 13:37:44',1,'2006-02-15 21:30:53'),(4855,'2005-07-08 18:45:50',1146,337,'2005-07-11 18:23:50',2,'2006-02-15 21:30:53'),(4856,'2005-07-08 18:47:38',2441,7,'2005-07-13 15:02:38',2,'2006-02-15 21:30:53'),(4857,'2005-07-08 18:52:07',2069,211,'2005-07-11 22:06:07',1,'2006-02-15 21:30:53'),(4858,'2005-07-08 18:53:24',3424,447,'2005-07-17 20:32:24',2,'2006-02-15 21:30:53'),(4859,'2005-07-08 18:54:04',1939,369,'2005-07-13 13:04:04',1,'2006-02-15 21:30:53'),(4860,'2005-07-08 18:54:07',428,123,'2005-07-17 15:09:07',2,'2006-02-15 21:30:53'),(4861,'2005-07-08 18:57:30',2984,455,'2005-07-16 15:12:30',2,'2006-02-15 21:30:53'),(4862,'2005-07-08 19:02:46',293,291,'2005-07-17 20:17:46',1,'2006-02-15 21:30:53'),(4863,'2005-07-08 19:03:15',1,431,'2005-07-11 21:29:15',2,'2006-02-15 21:30:53'),(4864,'2005-07-08 19:05:34',2974,281,'2005-07-17 15:05:34',2,'2006-02-15 21:30:53'),(4865,'2005-07-08 19:09:04',1614,418,'2005-07-13 21:25:04',2,'2006-02-15 21:30:53'),(4866,'2005-07-08 19:09:59',4036,278,'2005-07-15 00:51:59',2,'2006-02-15 21:30:53'),(4867,'2005-07-08 19:10:52',4090,593,'2005-07-09 21:43:52',2,'2006-02-15 21:30:53'),(4868,'2005-07-08 19:13:50',1157,307,'2005-07-14 20:59:50',2,'2006-02-15 21:30:53'),(4869,'2005-07-08 19:14:05',2860,376,'2005-07-15 22:27:05',1,'2006-02-15 21:30:53'),(4870,'2005-07-08 19:14:45',3089,260,'2005-07-12 18:58:45',2,'2006-02-15 21:30:53'),(4871,'2005-07-08 19:19:52',2509,210,'2005-07-13 20:27:52',2,'2006-02-15 21:30:53'),(4872,'2005-07-08 19:23:16',1836,103,'2005-07-10 14:17:16',2,'2006-02-15 21:30:53'),(4873,'2005-07-08 19:23:32',4500,473,'2005-07-11 15:24:32',1,'2006-02-15 21:30:53'),(4874,'2005-07-08 19:23:38',2386,223,'2005-07-13 14:39:38',2,'2006-02-15 21:30:53'),(4875,'2005-07-08 19:24:17',843,555,'2005-07-11 19:15:17',2,'2006-02-15 21:30:53'),(4876,'2005-07-08 19:27:50',1959,283,'2005-07-14 15:42:50',1,'2006-02-15 21:30:53'),(4877,'2005-07-08 19:31:02',1846,287,'2005-07-15 19:05:02',1,'2006-02-15 21:30:53'),(4878,'2005-07-08 19:33:49',4009,172,'2005-07-17 17:47:49',1,'2006-02-15 21:30:53'),(4879,'2005-07-08 19:34:55',1406,196,'2005-07-09 15:53:55',1,'2006-02-15 21:30:53'),(4880,'2005-07-08 19:36:17',4178,269,'2005-07-13 00:01:17',1,'2006-02-15 21:30:53'),(4881,'2005-07-08 19:40:34',4346,349,'2005-07-09 17:08:34',2,'2006-02-15 21:30:53'),(4882,'2005-07-08 19:42:03',4540,184,'2005-07-16 22:24:03',1,'2006-02-15 21:30:53'),(4883,'2005-07-08 19:46:58',1366,563,'2005-07-10 15:48:58',1,'2006-02-15 21:30:53'),(4884,'2005-07-08 19:49:17',3543,425,'2005-07-15 23:14:17',2,'2006-02-15 21:30:53'),(4885,'2005-07-08 19:51:17',442,233,'2005-07-12 16:02:17',2,'2006-02-15 21:30:53'),(4886,'2005-07-08 19:53:22',3393,474,'2005-07-09 17:05:22',1,'2006-02-15 21:30:53'),(4887,'2005-07-08 19:59:14',3613,543,'2005-07-15 22:53:14',1,'2006-02-15 21:30:53'),(4888,'2005-07-08 20:04:27',1220,527,'2005-07-10 14:53:27',2,'2006-02-15 21:30:53'),(4889,'2005-07-08 20:04:43',4463,5,'2005-07-13 17:57:43',2,'2006-02-15 21:30:53'),(4890,'2005-07-08 20:05:38',3576,574,'2005-07-14 14:55:38',2,'2006-02-15 21:30:53'),(4891,'2005-07-08 20:06:19',1787,59,'2005-07-16 18:52:19',1,'2006-02-15 21:30:53'),(4892,'2005-07-08 20:06:25',3566,193,'2005-07-14 20:04:25',1,'2006-02-15 21:30:53'),(4893,'2005-07-08 20:19:55',2060,210,'2005-07-15 21:28:55',2,'2006-02-15 21:30:53'),(4894,'2005-07-08 20:21:31',1028,286,'2005-07-11 01:59:31',1,'2006-02-15 21:30:53'),(4895,'2005-07-08 20:22:05',2620,242,'2005-07-12 20:49:05',1,'2006-02-15 21:30:53'),(4896,'2005-07-08 20:23:15',3006,129,'2005-07-10 15:38:15',1,'2006-02-15 21:30:53'),(4897,'2005-07-08 20:25:11',2950,258,'2005-07-09 17:16:11',1,'2006-02-15 21:30:53'),(4898,'2005-07-08 20:31:43',3212,218,'2005-07-15 15:58:43',2,'2006-02-15 21:30:53'),(4899,'2005-07-08 20:37:11',414,32,'2005-07-10 21:53:11',1,'2006-02-15 21:30:53'),(4900,'2005-07-08 20:38:06',3487,426,'2005-07-09 22:45:06',2,'2006-02-15 21:30:53'),(4901,'2005-07-08 20:44:51',2187,507,'2005-07-10 01:04:51',1,'2006-02-15 21:30:53'),(4902,'2005-07-08 20:49:30',2238,554,'2005-07-13 16:54:30',2,'2006-02-15 21:30:53'),(4903,'2005-07-08 20:50:05',1769,132,'2005-07-13 15:27:05',1,'2006-02-15 21:30:53'),(4904,'2005-07-08 20:53:27',2051,173,'2005-07-18 01:16:27',1,'2006-02-15 21:30:53'),(4905,'2005-07-08 20:56:00',4101,246,'2005-07-12 00:19:00',2,'2006-02-15 21:30:53'),(4906,'2005-07-08 20:59:13',1527,490,'2005-07-15 01:12:13',2,'2006-02-15 21:30:53'),(4907,'2005-07-08 21:01:41',1206,209,'2005-07-13 02:23:41',2,'2006-02-15 21:30:53'),(4908,'2005-07-08 21:05:44',1963,160,'2005-07-17 21:33:44',2,'2006-02-15 21:30:53'),(4909,'2005-07-08 21:07:24',1451,228,'2005-07-10 22:34:24',1,'2006-02-15 21:30:53'),(4910,'2005-07-08 21:13:56',3675,219,'2005-07-18 02:39:56',2,'2006-02-15 21:30:53'),(4911,'2005-07-08 21:20:26',4479,66,'2005-07-15 03:11:26',1,'2006-02-15 21:30:53'),(4912,'2005-07-08 21:26:11',2012,275,'2005-07-18 02:19:11',1,'2006-02-15 21:30:53'),(4913,'2005-07-08 21:27:48',982,368,'2005-07-18 02:51:48',1,'2006-02-15 21:30:53'),(4914,'2005-07-08 21:30:53',298,535,'2005-07-17 01:29:53',1,'2006-02-15 21:30:53'),(4915,'2005-07-08 21:31:22',2772,178,'2005-07-13 16:45:22',2,'2006-02-15 21:30:53'),(4916,'2005-07-08 21:32:17',2680,212,'2005-07-14 20:55:17',2,'2006-02-15 21:30:53'),(4917,'2005-07-08 21:32:30',3231,104,'2005-07-09 15:34:30',1,'2006-02-15 21:30:53'),(4918,'2005-07-08 21:37:31',3819,220,'2005-07-11 20:16:31',2,'2006-02-15 21:30:53'),(4919,'2005-07-08 21:41:54',2106,157,'2005-07-11 23:14:54',1,'2006-02-15 21:30:53'),(4920,'2005-07-08 21:42:10',4285,239,'2005-07-15 03:08:10',1,'2006-02-15 21:30:53'),(4921,'2005-07-08 21:43:21',425,109,'2005-07-10 16:06:21',2,'2006-02-15 21:30:53'),(4922,'2005-07-08 21:44:00',2928,577,'2005-07-10 02:58:00',2,'2006-02-15 21:30:53'),(4923,'2005-07-08 21:44:39',932,18,'2005-07-17 15:50:39',2,'2006-02-15 21:30:53'),(4924,'2005-07-08 21:55:25',4344,180,'2005-07-16 16:52:25',1,'2006-02-15 21:30:53'),(4925,'2005-07-08 21:56:00',2169,68,'2005-07-14 17:17:00',2,'2006-02-15 21:30:53'),(4926,'2005-07-08 22:01:48',4155,415,'2005-07-18 03:27:48',1,'2006-02-15 21:30:53'),(4927,'2005-07-08 22:05:35',2566,136,'2005-07-14 23:22:35',2,'2006-02-15 21:30:53'),(4928,'2005-07-08 22:05:41',4363,77,'2005-07-09 23:09:41',2,'2006-02-15 21:30:53'),(4929,'2005-07-08 22:06:18',734,297,'2005-07-17 18:17:18',2,'2006-02-15 21:30:53'),(4930,'2005-07-08 22:15:48',2057,451,'2005-07-15 21:02:48',2,'2006-02-15 21:30:53'),(4931,'2005-07-08 22:16:18',2750,284,'2005-07-17 03:42:18',1,'2006-02-15 21:30:53'),(4932,'2005-07-08 22:17:40',4237,558,'2005-07-15 22:13:40',2,'2006-02-15 21:30:53'),(4933,'2005-07-08 22:18:29',322,579,'2005-07-13 03:47:29',2,'2006-02-15 21:30:53'),(4934,'2005-07-08 22:18:42',1744,517,'2005-07-10 20:44:42',2,'2006-02-15 21:30:53'),(4935,'2005-07-08 22:20:56',2708,230,'2005-07-12 01:01:56',2,'2006-02-15 21:30:53'),(4936,'2005-07-08 22:24:50',2033,298,'2005-07-15 03:14:50',2,'2006-02-15 21:30:53'),(4937,'2005-07-08 22:29:59',33,273,'2005-07-15 21:51:59',2,'2006-02-15 21:30:53'),(4938,'2005-07-08 22:32:53',2164,418,'2005-07-14 16:48:53',2,'2006-02-15 21:30:53'),(4939,'2005-07-08 22:35:30',3201,425,'2005-07-17 22:05:30',1,'2006-02-15 21:30:53'),(4940,'2005-07-08 22:36:06',971,215,'2005-07-15 04:28:06',1,'2006-02-15 21:30:53'),(4941,'2005-07-08 22:39:10',3816,553,'2005-07-15 17:49:10',2,'2006-02-15 21:30:53'),(4942,'2005-07-08 22:42:47',4467,120,'2005-07-15 04:36:47',2,'2006-02-15 21:30:53'),(4943,'2005-07-08 22:43:05',2732,11,'2005-07-15 18:17:05',2,'2006-02-15 21:30:53'),(4944,'2005-07-08 22:44:28',3648,293,'2005-07-17 21:51:28',2,'2006-02-15 21:30:53'),(4945,'2005-07-08 22:45:02',2079,165,'2005-07-11 23:59:02',2,'2006-02-15 21:30:53'),(4946,'2005-07-08 22:46:23',272,440,'2005-07-16 17:19:23',1,'2006-02-15 21:30:53'),(4947,'2005-07-08 22:49:37',3905,388,'2005-07-17 21:03:37',1,'2006-02-15 21:30:53'),(4948,'2005-07-08 22:54:21',2972,518,'2005-07-17 03:52:21',2,'2006-02-15 21:30:53'),(4949,'2005-07-08 22:57:10',1184,567,'2005-07-11 01:26:10',2,'2006-02-15 21:30:53'),(4950,'2005-07-08 22:58:07',3291,148,'2005-07-09 20:41:07',2,'2006-02-15 21:30:53'),(4951,'2005-07-08 22:58:21',2766,28,'2005-07-16 18:58:21',1,'2006-02-15 21:30:53'),(4952,'2005-07-08 23:00:07',459,14,'2005-07-09 21:47:07',1,'2006-02-15 21:30:53'),(4953,'2005-07-08 23:09:48',2460,168,'2005-07-11 02:08:48',2,'2006-02-15 21:30:53'),(4954,'2005-07-08 23:14:16',627,99,'2005-07-14 23:23:16',2,'2006-02-15 21:30:53'),(4955,'2005-07-08 23:16:21',1103,225,'2005-07-14 02:09:21',2,'2006-02-15 21:30:53'),(4956,'2005-07-08 23:17:10',1512,477,'2005-07-18 00:14:10',1,'2006-02-15 21:30:53'),(4957,'2005-07-08 23:18:48',4082,399,'2005-07-09 23:13:48',1,'2006-02-15 21:30:53'),(4958,'2005-07-08 23:19:52',2354,346,'2005-07-17 20:31:52',1,'2006-02-15 21:30:53'),(4959,'2005-07-08 23:22:23',3898,236,'2005-07-10 03:17:23',2,'2006-02-15 21:30:53'),(4960,'2005-07-08 23:27:16',2176,434,'2005-07-18 02:01:16',1,'2006-02-15 21:30:53'),(4961,'2005-07-08 23:35:53',3668,96,'2005-07-14 22:46:53',2,'2006-02-15 21:30:53'),(4962,'2005-07-08 23:36:13',4399,532,'2005-07-15 03:39:13',1,'2006-02-15 21:30:53'),(4963,'2005-07-08 23:38:40',737,404,'2005-07-12 05:33:40',2,'2006-02-15 21:30:53'),(4964,'2005-07-08 23:46:38',1033,455,'2005-07-09 22:19:38',2,'2006-02-15 21:30:53'),(4965,'2005-07-08 23:46:57',535,432,'2005-07-15 18:47:57',1,'2006-02-15 21:30:53'),(4966,'2005-07-08 23:47:25',4360,118,'2005-07-14 03:35:25',1,'2006-02-15 21:30:53'),(4967,'2005-07-08 23:48:03',108,339,'2005-07-15 23:51:03',2,'2006-02-15 21:30:53'),(4968,'2005-07-08 23:49:19',3204,390,'2005-07-14 02:46:19',1,'2006-02-15 21:30:53'),(4969,'2005-07-08 23:51:26',4563,231,'2005-07-12 03:21:26',2,'2006-02-15 21:30:53'),(4970,'2005-07-08 23:54:29',2983,100,'2005-07-16 22:47:29',1,'2006-02-15 21:30:53'),(4971,'2005-07-08 23:54:49',460,64,'2005-07-16 00:15:49',1,'2006-02-15 21:30:53'),(4972,'2005-07-08 23:56:09',2451,498,'2005-07-16 19:15:09',1,'2006-02-15 21:30:53'),(4973,'2005-07-08 23:58:18',391,432,'2005-07-14 21:42:18',1,'2006-02-15 21:30:53'),(4974,'2005-07-09 00:00:36',1071,152,'2005-07-13 21:03:36',1,'2006-02-15 21:30:53'),(4975,'2005-07-09 00:02:46',3730,101,'2005-07-14 18:05:46',2,'2006-02-15 21:30:53'),(4976,'2005-07-09 00:03:30',617,199,'2005-07-10 19:05:30',1,'2006-02-15 21:30:53'),(4977,'2005-07-09 00:15:50',3310,584,'2005-07-10 00:34:50',2,'2006-02-15 21:30:53'),(4978,'2005-07-09 00:22:02',2578,279,'2005-07-18 04:37:02',1,'2006-02-15 21:30:53'),(4979,'2005-07-09 00:24:34',3447,204,'2005-07-12 20:04:34',1,'2006-02-15 21:30:53'),(4980,'2005-07-09 00:26:59',2638,100,'2005-07-14 19:42:59',1,'2006-02-15 21:30:53'),(4981,'2005-07-09 00:29:29',3363,399,'2005-07-16 19:06:29',2,'2006-02-15 21:30:53'),(4982,'2005-07-09 00:30:52',249,162,'2005-07-15 23:50:52',1,'2006-02-15 21:30:53'),(4983,'2005-07-09 00:34:16',1469,81,'2005-07-17 03:21:16',2,'2006-02-15 21:30:53'),(4984,'2005-07-09 00:35:31',1303,214,'2005-07-17 03:44:31',1,'2006-02-15 21:30:53'),(4985,'2005-07-09 00:36:02',2146,208,'2005-07-14 04:06:02',2,'2006-02-15 21:30:53'),(4986,'2005-07-09 00:44:33',3517,589,'2005-07-09 19:45:33',2,'2006-02-15 21:30:53'),(4987,'2005-07-09 00:45:41',996,277,'2005-07-14 03:32:41',2,'2006-02-15 21:30:53'),(4988,'2005-07-09 00:46:14',2718,433,'2005-07-16 01:45:14',2,'2006-02-15 21:30:53'),(4989,'2005-07-09 00:46:56',3326,210,'2005-07-17 06:24:56',1,'2006-02-15 21:30:53'),(4990,'2005-07-09 00:48:49',3305,35,'2005-07-10 06:36:49',2,'2006-02-15 21:30:53'),(4991,'2005-07-09 00:49:03',1856,540,'2005-07-13 05:02:03',1,'2006-02-15 21:30:53'),(4992,'2005-07-09 00:49:37',2081,315,'2005-07-16 02:05:37',1,'2006-02-15 21:30:53'),(4993,'2005-07-09 00:49:47',1740,517,'2005-07-11 21:19:47',1,'2006-02-15 21:30:53'),(4994,'2005-07-09 00:54:13',2546,246,'2005-07-09 21:02:13',1,'2006-02-15 21:30:53'),(4995,'2005-07-09 00:57:46',2063,247,'2005-07-13 03:32:46',1,'2006-02-15 21:30:53'),(4996,'2005-07-09 00:59:46',4440,129,'2005-07-16 01:30:46',2,'2006-02-15 21:30:53'),(4997,'2005-07-09 01:06:03',186,102,'2005-07-18 04:21:03',2,'2006-02-15 21:30:53'),(4998,'2005-07-09 01:07:21',202,534,'2005-07-10 05:48:21',2,'2006-02-15 21:30:53'),(4999,'2005-07-09 01:12:57',1797,196,'2005-07-17 00:12:57',1,'2006-02-15 21:30:53'),(5000,'2005-07-09 01:16:13',668,146,'2005-07-14 21:55:13',1,'2006-02-15 21:30:53'),(5001,'2005-07-09 01:17:04',2025,40,'2005-07-16 03:25:04',2,'2006-02-15 21:30:53'),(5002,'2005-07-09 01:17:08',2388,430,'2005-07-15 21:53:08',1,'2006-02-15 21:30:53'),(5003,'2005-07-09 01:19:03',3438,569,'2005-07-10 04:28:03',2,'2006-02-15 21:30:53'),(5004,'2005-07-09 01:20:50',2637,382,'2005-07-09 19:56:50',1,'2006-02-15 21:30:53'),(5005,'2005-07-09 01:21:44',3034,451,'2005-07-14 20:27:44',1,'2006-02-15 21:30:53'),(5006,'2005-07-09 01:24:07',1277,486,'2005-07-18 03:56:07',1,'2006-02-15 21:30:53'),(5007,'2005-07-09 01:26:22',3079,207,'2005-07-12 20:48:22',1,'2006-02-15 21:30:53'),(5008,'2005-07-09 01:31:42',824,509,'2005-07-11 22:34:42',2,'2006-02-15 21:30:53'),(5009,'2005-07-09 01:32:17',1539,102,'2005-07-18 03:39:17',2,'2006-02-15 21:30:53'),(5010,'2005-07-09 01:33:23',1999,574,'2005-07-14 04:00:23',2,'2006-02-15 21:30:53'),(5011,'2005-07-09 01:44:40',463,249,'2005-07-11 00:58:40',2,'2006-02-15 21:30:53'),(5012,'2005-07-09 01:45:04',1456,251,'2005-07-12 02:13:04',1,'2006-02-15 21:30:53'),(5013,'2005-07-09 01:46:45',3000,35,'2005-07-16 06:57:45',1,'2006-02-15 21:30:53'),(5014,'2005-07-09 01:51:49',4095,334,'2005-07-10 04:48:49',1,'2006-02-15 21:30:53'),(5015,'2005-07-09 01:54:24',1564,178,'2005-07-12 20:07:24',1,'2006-02-15 21:30:53'),(5016,'2005-07-09 01:57:57',1871,5,'2005-07-09 22:07:57',1,'2006-02-15 21:30:53'),(5017,'2005-07-09 02:00:16',3745,241,'2005-07-14 06:28:16',1,'2006-02-15 21:30:53'),(5018,'2005-07-09 02:01:05',2317,541,'2005-07-10 04:09:05',1,'2006-02-15 21:30:53'),(5019,'2005-07-09 02:04:32',3534,295,'2005-07-15 07:01:32',2,'2006-02-15 21:30:53'),(5020,'2005-07-09 02:07:56',4113,565,'2005-07-09 23:59:56',1,'2006-02-15 21:30:53'),(5021,'2005-07-09 02:09:41',3445,73,'2005-07-13 05:47:41',1,'2006-02-15 21:30:53'),(5022,'2005-07-09 02:10:54',928,499,'2005-07-17 08:07:54',2,'2006-02-15 21:30:53'),(5023,'2005-07-09 02:23:16',3206,358,'2005-07-15 20:37:16',1,'2006-02-15 21:30:53'),(5024,'2005-07-09 02:25:12',2987,335,'2005-07-12 03:15:12',1,'2006-02-15 21:30:53'),(5025,'2005-07-09 02:28:24',153,91,'2005-07-12 04:43:24',2,'2006-02-15 21:30:53'),(5026,'2005-07-09 02:32:34',989,463,'2005-07-13 04:39:34',2,'2006-02-15 21:30:53'),(5027,'2005-07-09 02:32:37',2179,109,'2005-07-16 23:13:37',1,'2006-02-15 21:30:53'),(5028,'2005-07-09 02:34:45',4531,30,'2005-07-14 20:45:45',2,'2006-02-15 21:30:53'),(5029,'2005-07-09 02:35:32',3938,265,'2005-07-17 22:46:32',1,'2006-02-15 21:30:53'),(5030,'2005-07-09 02:35:43',25,497,'2005-07-17 02:05:43',1,'2006-02-15 21:30:53'),(5031,'2005-07-09 02:36:37',4224,312,'2005-07-14 03:09:37',2,'2006-02-15 21:30:53'),(5032,'2005-07-09 02:39:47',2257,333,'2005-07-10 07:45:47',1,'2006-02-15 21:30:53'),(5033,'2005-07-09 02:42:01',2841,299,'2005-07-14 00:29:01',1,'2006-02-15 21:30:53'),(5034,'2005-07-09 02:48:15',340,148,'2005-07-11 23:13:15',2,'2006-02-15 21:30:53'),(5035,'2005-07-09 02:51:34',3699,99,'2005-07-16 21:38:34',1,'2006-02-15 21:30:53'),(5036,'2005-07-09 02:58:41',75,573,'2005-07-17 04:09:41',1,'2006-02-15 21:30:53'),(5037,'2005-07-09 02:59:10',435,524,'2005-07-15 07:54:10',2,'2006-02-15 21:30:53'),(5038,'2005-07-09 03:12:52',3086,10,'2005-07-17 22:27:52',2,'2006-02-15 21:30:53'),(5039,'2005-07-09 03:14:45',2020,268,'2005-07-16 06:57:45',2,'2006-02-15 21:30:53'),(5040,'2005-07-09 03:16:34',2479,405,'2005-07-17 01:13:34',2,'2006-02-15 21:30:53'),(5041,'2005-07-09 03:18:51',2711,305,'2005-07-13 03:08:51',1,'2006-02-15 21:30:53'),(5042,'2005-07-09 03:20:30',3609,254,'2005-07-15 07:22:30',1,'2006-02-15 21:30:53'),(5043,'2005-07-09 03:25:18',2979,369,'2005-07-13 00:57:18',2,'2006-02-15 21:30:53'),(5044,'2005-07-09 03:30:25',1625,147,'2005-07-11 02:32:25',2,'2006-02-15 21:30:53'),(5045,'2005-07-09 03:33:32',1041,230,'2005-07-18 06:15:32',1,'2006-02-15 21:30:53'),(5046,'2005-07-09 03:34:57',1639,227,'2005-07-17 22:36:57',2,'2006-02-15 21:30:53'),(5047,'2005-07-09 03:44:15',230,272,'2005-07-15 09:07:15',2,'2006-02-15 21:30:53'),(5048,'2005-07-09 03:46:33',1271,466,'2005-07-15 01:14:33',1,'2006-02-15 21:30:53'),(5049,'2005-07-09 03:54:12',3336,144,'2005-07-11 22:39:12',2,'2006-02-15 21:30:53'),(5050,'2005-07-09 03:54:38',3876,337,'2005-07-10 02:23:38',2,'2006-02-15 21:30:53'),(5051,'2005-07-09 03:57:53',4091,85,'2005-07-16 08:22:53',2,'2006-02-15 21:30:53'),(5052,'2005-07-09 03:59:43',1884,305,'2005-07-12 05:48:43',1,'2006-02-15 21:30:53'),(5053,'2005-07-09 03:59:46',570,295,'2005-07-09 23:53:46',2,'2006-02-15 21:30:53'),(5054,'2005-07-09 04:01:02',4001,135,'2005-07-18 05:16:02',2,'2006-02-15 21:30:53'),(5055,'2005-07-09 04:05:28',751,54,'2005-07-14 04:26:28',2,'2006-02-15 21:30:53'),(5056,'2005-07-09 04:13:45',2599,526,'2005-07-10 06:17:45',2,'2006-02-15 21:30:53'),(5057,'2005-07-09 04:20:29',1076,178,'2005-07-14 23:59:29',1,'2006-02-15 21:30:53'),(5058,'2005-07-09 04:20:35',917,221,'2005-07-18 08:09:35',2,'2006-02-15 21:30:53'),(5059,'2005-07-09 04:28:01',3951,396,'2005-07-15 22:57:01',1,'2006-02-15 21:30:53'),(5060,'2005-07-09 04:28:03',4317,57,'2005-07-12 07:41:03',2,'2006-02-15 21:30:53'),(5061,'2005-07-09 04:30:50',3893,230,'2005-07-12 03:24:50',1,'2006-02-15 21:30:53'),(5062,'2005-07-09 04:36:49',2190,141,'2005-07-10 06:26:49',1,'2006-02-15 21:30:53'),(5063,'2005-07-09 04:37:31',1027,133,'2005-07-13 09:56:31',2,'2006-02-15 21:30:53'),(5064,'2005-07-09 04:38:51',373,512,'2005-07-18 00:33:51',2,'2006-02-15 21:30:53'),(5065,'2005-07-09 04:42:00',1788,599,'2005-07-12 08:55:00',1,'2006-02-15 21:30:53'),(5066,'2005-07-09 04:48:50',1702,169,'2005-07-12 22:54:50',2,'2006-02-15 21:30:53'),(5067,'2005-07-09 04:52:35',1480,225,'2005-07-11 23:33:35',2,'2006-02-15 21:30:53'),(5068,'2005-07-09 04:53:18',2937,10,'2005-07-13 09:21:18',1,'2006-02-15 21:30:53'),(5069,'2005-07-09 04:56:30',4417,183,'2005-07-13 23:53:30',2,'2006-02-15 21:30:53'),(5070,'2005-07-09 04:58:26',2305,407,'2005-07-09 23:00:26',2,'2006-02-15 21:30:53'),(5071,'2005-07-09 05:00:39',4358,12,'2005-07-09 23:08:39',1,'2006-02-15 21:30:53'),(5072,'2005-07-09 05:01:58',94,254,'2005-07-18 08:17:58',2,'2006-02-15 21:30:53'),(5073,'2005-07-09 05:02:35',546,408,'2005-07-15 01:22:35',2,'2006-02-15 21:30:53'),(5074,'2005-07-09 05:06:24',1379,12,'2005-07-12 04:37:24',1,'2006-02-15 21:30:53'),(5075,'2005-07-09 05:12:07',903,170,'2005-07-12 08:29:07',1,'2006-02-15 21:30:53'),(5076,'2005-07-09 05:13:22',4388,574,'2005-07-16 09:11:22',1,'2006-02-15 21:30:53'),(5077,'2005-07-09 05:18:01',686,574,'2005-07-17 10:39:01',2,'2006-02-15 21:30:53'),(5078,'2005-07-09 05:20:24',1994,78,'2005-07-13 06:41:24',2,'2006-02-15 21:30:53'),(5079,'2005-07-09 05:20:40',3948,566,'2005-07-17 00:06:40',1,'2006-02-15 21:30:53'),(5080,'2005-07-09 05:23:55',635,254,'2005-07-11 05:56:55',2,'2006-02-15 21:30:53'),(5081,'2005-07-09 05:25:20',1953,420,'2005-07-13 23:45:20',1,'2006-02-15 21:30:53'),(5082,'2005-07-09 05:28:38',1584,470,'2005-07-10 02:46:38',2,'2006-02-15 21:30:53'),(5083,'2005-07-09 05:30:32',148,494,'2005-07-11 02:20:32',1,'2006-02-15 21:30:53'),(5084,'2005-07-09 05:33:27',3113,87,'2005-07-17 08:54:27',2,'2006-02-15 21:30:53'),(5085,'2005-07-09 05:36:49',4164,437,'2005-07-13 09:26:49',1,'2006-02-15 21:30:53'),(5086,'2005-07-09 05:40:04',3072,539,'2005-07-16 07:51:04',1,'2006-02-15 21:30:53'),(5087,'2005-07-09 05:44:28',3716,395,'2005-07-10 02:25:28',2,'2006-02-15 21:30:53'),(5088,'2005-07-09 05:45:16',3324,454,'2005-07-15 00:41:16',2,'2006-02-15 21:30:53'),(5089,'2005-07-09 05:45:40',451,289,'2005-07-15 05:31:40',1,'2006-02-15 21:30:53'),(5090,'2005-07-09 05:48:22',1728,296,'2005-07-11 06:50:22',2,'2006-02-15 21:30:53'),(5091,'2005-07-09 05:52:54',4572,149,'2005-07-10 02:49:54',1,'2006-02-15 21:30:53'),(5092,'2005-07-09 05:57:39',3256,139,'2005-07-12 00:45:39',2,'2006-02-15 21:30:53'),(5093,'2005-07-09 05:59:12',2734,597,'2005-07-10 11:45:12',2,'2006-02-15 21:30:53'),(5094,'2005-07-09 05:59:47',4451,178,'2005-07-18 05:34:47',2,'2006-02-15 21:30:53'),(5095,'2005-07-09 06:08:22',2788,292,'2005-07-11 10:52:22',1,'2006-02-15 21:30:53'),(5096,'2005-07-09 06:08:23',490,231,'2005-07-14 11:36:23',1,'2006-02-15 21:30:53'),(5097,'2005-07-09 06:09:51',3252,343,'2005-07-10 03:55:51',2,'2006-02-15 21:30:53'),(5098,'2005-07-09 06:13:54',1772,406,'2005-07-10 04:27:54',1,'2006-02-15 21:30:53'),(5099,'2005-07-09 06:14:30',768,393,'2005-07-12 08:23:30',2,'2006-02-15 21:30:53'),(5100,'2005-07-09 06:16:03',3193,101,'2005-07-10 10:21:03',1,'2006-02-15 21:30:53'),(5101,'2005-07-09 06:21:29',2737,154,'2005-07-11 02:58:29',1,'2006-02-15 21:30:53'),(5102,'2005-07-09 06:25:48',242,316,'2005-07-16 11:32:48',2,'2006-02-15 21:30:53'),(5103,'2005-07-09 06:34:40',2390,397,'2005-07-10 03:44:40',2,'2006-02-15 21:30:53'),(5104,'2005-07-09 06:37:07',2109,14,'2005-07-14 12:32:07',1,'2006-02-15 21:30:53'),(5105,'2005-07-09 06:38:59',2555,290,'2005-07-17 03:06:59',2,'2006-02-15 21:30:53'),(5106,'2005-07-09 06:40:24',110,137,'2005-07-13 10:28:24',1,'2006-02-15 21:30:53'),(5107,'2005-07-09 06:42:32',1697,21,'2005-07-10 08:21:32',2,'2006-02-15 21:30:53'),(5108,'2005-07-09 06:44:30',4229,30,'2005-07-17 04:24:30',1,'2006-02-15 21:30:53'),(5109,'2005-07-09 06:48:49',2373,102,'2005-07-14 01:17:49',1,'2006-02-15 21:30:53'),(5110,'2005-07-09 06:57:25',195,200,'2005-07-12 05:39:25',2,'2006-02-15 21:30:53'),(5111,'2005-07-09 07:02:19',2875,12,'2005-07-10 06:27:19',2,'2006-02-15 21:30:53'),(5112,'2005-07-09 07:04:04',3529,285,'2005-07-13 08:42:04',1,'2006-02-15 21:30:53'),(5113,'2005-07-09 07:06:18',3618,282,'2005-07-13 07:10:18',2,'2006-02-15 21:30:53'),(5114,'2005-07-09 07:07:05',3734,64,'2005-07-15 03:06:05',1,'2006-02-15 21:30:53'),(5115,'2005-07-09 07:07:18',2296,212,'2005-07-16 03:28:18',2,'2006-02-15 21:30:53'),(5116,'2005-07-09 07:10:12',2491,332,'2005-07-14 09:16:12',2,'2006-02-15 21:30:53'),(5117,'2005-07-09 07:11:22',2284,208,'2005-07-15 08:44:22',1,'2006-02-15 21:30:53'),(5118,'2005-07-09 07:13:52',957,5,'2005-07-18 05:18:52',2,'2006-02-15 21:30:53'),(5119,'2005-07-09 07:14:18',2996,301,'2005-07-18 04:07:18',1,'2006-02-15 21:30:53'),(5120,'2005-07-09 07:14:23',4431,373,'2005-07-14 04:00:23',2,'2006-02-15 21:30:53'),(5121,'2005-07-09 07:18:31',3321,526,'2005-07-15 01:48:31',1,'2006-02-15 21:30:53'),(5122,'2005-07-09 07:19:35',1423,261,'2005-07-16 03:04:35',2,'2006-02-15 21:30:53'),(5123,'2005-07-09 07:20:30',4278,219,'2005-07-14 05:24:30',1,'2006-02-15 21:30:53'),(5124,'2005-07-09 07:25:19',1857,565,'2005-07-15 01:51:19',1,'2006-02-15 21:30:53'),(5125,'2005-07-09 07:25:28',990,263,'2005-07-12 12:34:28',1,'2006-02-15 21:30:53'),(5126,'2005-07-09 07:25:35',3312,315,'2005-07-18 05:05:35',1,'2006-02-15 21:30:53'),(5127,'2005-07-09 07:25:47',3649,129,'2005-07-13 11:44:47',2,'2006-02-15 21:30:53'),(5128,'2005-07-09 07:25:54',3757,155,'2005-07-16 04:04:54',2,'2006-02-15 21:30:53'),(5129,'2005-07-09 07:28:33',4516,441,'2005-07-14 05:12:33',2,'2006-02-15 21:30:53'),(5130,'2005-07-09 07:29:45',3264,93,'2005-07-13 05:56:45',1,'2006-02-15 21:30:53'),(5131,'2005-07-09 07:35:03',3179,167,'2005-07-10 06:05:03',1,'2006-02-15 21:30:53'),(5132,'2005-07-09 07:40:32',4158,101,'2005-07-16 02:16:32',2,'2006-02-15 21:30:53'),(5133,'2005-07-09 07:43:22',3403,469,'2005-07-12 04:52:22',1,'2006-02-15 21:30:53'),(5134,'2005-07-09 07:53:12',149,491,'2005-07-16 05:30:12',1,'2006-02-15 21:30:53'),(5135,'2005-07-09 07:53:22',3005,538,'2005-07-16 04:50:22',2,'2006-02-15 21:30:53'),(5136,'2005-07-09 07:55:01',3498,395,'2005-07-11 05:26:01',2,'2006-02-15 21:30:53'),(5137,'2005-07-09 08:00:34',409,126,'2005-07-12 05:34:34',1,'2006-02-15 21:30:53'),(5138,'2005-07-09 08:00:46',1283,548,'2005-07-12 09:31:46',2,'2006-02-15 21:30:53'),(5139,'2005-07-09 08:01:51',51,539,'2005-07-18 09:16:51',2,'2006-02-15 21:30:53'),(5140,'2005-07-09 08:04:59',947,303,'2005-07-11 08:28:59',2,'2006-02-15 21:30:53'),(5141,'2005-07-09 08:05:14',590,488,'2005-07-18 04:36:14',1,'2006-02-15 21:30:53'),(5142,'2005-07-09 08:05:23',369,56,'2005-07-13 12:37:23',2,'2006-02-15 21:30:53'),(5143,'2005-07-09 08:07:07',3803,196,'2005-07-18 10:17:07',1,'2006-02-15 21:30:53'),(5144,'2005-07-09 08:09:53',3530,89,'2005-07-18 07:11:53',2,'2006-02-15 21:30:53'),(5145,'2005-07-09 08:13:25',2397,204,'2005-07-10 03:56:25',2,'2006-02-15 21:30:53'),(5146,'2005-07-09 08:14:58',776,194,'2005-07-11 07:04:58',1,'2006-02-15 21:30:53'),(5147,'2005-07-09 08:17:41',2270,326,'2005-07-18 09:45:41',2,'2006-02-15 21:30:53'),(5148,'2005-07-09 08:22:46',456,48,'2005-07-18 04:36:46',1,'2006-02-15 21:30:53'),(5149,'2005-07-09 08:28:23',1500,330,'2005-07-16 06:19:23',2,'2006-02-15 21:30:53'),(5150,'2005-07-09 08:28:40',1961,410,'2005-07-16 04:47:40',1,'2006-02-15 21:30:53'),(5151,'2005-07-09 08:31:03',224,228,'2005-07-10 08:18:03',2,'2006-02-15 21:30:53'),(5152,'2005-07-09 08:34:44',4005,331,'2005-07-10 05:26:44',1,'2006-02-15 21:30:53'),(5153,'2005-07-09 08:35:05',2826,504,'2005-07-18 14:21:05',1,'2006-02-15 21:30:53'),(5154,'2005-07-09 08:46:18',3785,361,'2005-07-14 03:19:18',1,'2006-02-15 21:30:53'),(5155,'2005-07-09 08:46:54',988,523,'2005-07-14 04:13:54',1,'2006-02-15 21:30:53'),(5156,'2005-07-09 08:51:42',416,5,'2005-07-15 03:59:42',2,'2006-02-15 21:30:53'),(5157,'2005-07-09 08:52:12',637,463,'2005-07-12 04:32:12',2,'2006-02-15 21:30:53'),(5158,'2005-07-09 08:53:09',2825,272,'2005-07-10 11:05:09',1,'2006-02-15 21:30:53'),(5159,'2005-07-09 08:55:52',3479,213,'2005-07-10 04:32:52',1,'2006-02-15 21:30:53'),(5160,'2005-07-09 08:57:07',1925,467,'2005-07-18 06:01:07',1,'2006-02-15 21:30:53'),(5161,'2005-07-09 08:57:56',2617,284,'2005-07-18 07:41:56',2,'2006-02-15 21:30:53'),(5162,'2005-07-09 09:00:11',2765,43,'2005-07-17 07:26:11',1,'2006-02-15 21:30:53'),(5163,'2005-07-09 09:00:28',1486,103,'2005-07-17 08:07:28',2,'2006-02-15 21:30:53'),(5164,'2005-07-09 09:03:14',1170,511,'2005-07-14 04:20:14',1,'2006-02-15 21:30:53'),(5165,'2005-07-09 09:08:53',280,590,'2005-07-14 06:01:53',1,'2006-02-15 21:30:53'),(5166,'2005-07-09 09:15:48',2771,298,'2005-07-16 06:04:48',1,'2006-02-15 21:30:53'),(5167,'2005-07-09 09:18:43',2485,437,'2005-07-14 12:59:43',2,'2006-02-15 21:30:53'),(5168,'2005-07-09 09:20:01',4096,420,'2005-07-11 14:42:01',1,'2006-02-15 21:30:53'),(5169,'2005-07-09 09:22:25',2608,116,'2005-07-10 03:48:25',1,'2006-02-15 21:30:53'),(5170,'2005-07-09 09:24:19',66,209,'2005-07-18 04:02:19',1,'2006-02-15 21:30:53'),(5171,'2005-07-09 09:26:55',2099,371,'2005-07-10 10:34:55',1,'2006-02-15 21:30:53'),(5172,'2005-07-09 09:31:27',4046,214,'2005-07-13 04:03:27',1,'2006-02-15 21:30:53'),(5173,'2005-07-09 09:31:44',2848,490,'2005-07-15 04:20:44',2,'2006-02-15 21:30:53'),(5174,'2005-07-09 09:31:59',3621,47,'2005-07-15 03:49:59',1,'2006-02-15 21:30:53'),(5175,'2005-07-09 09:34:28',1003,409,'2005-07-15 15:19:28',2,'2006-02-15 21:30:53'),(5176,'2005-07-09 09:39:31',328,119,'2005-07-17 11:56:31',2,'2006-02-15 21:30:53'),(5177,'2005-07-09 09:43:21',1675,452,'2005-07-13 07:29:21',1,'2006-02-15 21:30:53'),(5178,'2005-07-09 09:59:52',1750,167,'2005-07-18 13:01:52',2,'2006-02-15 21:30:53'),(5179,'2005-07-09 10:00:44',2995,256,'2005-07-11 06:52:44',1,'2006-02-15 21:30:53'),(5180,'2005-07-09 10:06:53',3684,494,'2005-07-12 15:25:53',1,'2006-02-15 21:30:53'),(5181,'2005-07-09 10:07:27',2569,45,'2005-07-17 10:18:27',2,'2006-02-15 21:30:53'),(5182,'2005-07-09 10:08:10',725,197,'2005-07-16 14:36:10',2,'2006-02-15 21:30:53'),(5183,'2005-07-09 10:13:45',2866,394,'2005-07-16 15:55:45',2,'2006-02-15 21:30:53'),(5184,'2005-07-09 10:14:34',1101,166,'2005-07-14 16:05:34',2,'2006-02-15 21:30:53'),(5185,'2005-07-09 10:14:39',357,53,'2005-07-10 13:31:39',1,'2006-02-15 21:30:53'),(5186,'2005-07-09 10:18:40',2415,276,'2005-07-13 05:05:40',2,'2006-02-15 21:30:53'),(5187,'2005-07-09 10:19:51',2631,91,'2005-07-14 10:35:51',1,'2006-02-15 21:30:53'),(5188,'2005-07-09 10:22:31',3265,34,'2005-07-13 04:41:31',1,'2006-02-15 21:30:53'),(5189,'2005-07-09 10:23:21',2539,113,'2005-07-14 08:06:21',1,'2006-02-15 21:30:53'),(5190,'2005-07-09 10:25:24',2213,532,'2005-07-18 04:33:24',1,'2006-02-15 21:30:53'),(5191,'2005-07-09 10:26:48',2131,167,'2005-07-10 15:52:48',2,'2006-02-15 21:30:53'),(5192,'2005-07-09 10:27:09',1225,410,'2005-07-10 12:04:09',1,'2006-02-15 21:30:53'),(5193,'2005-07-09 10:28:18',2166,485,'2005-07-12 12:18:18',1,'2006-02-15 21:30:53'),(5194,'2005-07-09 10:31:34',3809,202,'2005-07-15 08:50:34',2,'2006-02-15 21:30:53'),(5195,'2005-07-09 10:39:31',3399,59,'2005-07-18 13:54:31',1,'2006-02-15 21:30:53'),(5196,'2005-07-09 10:43:34',2278,536,'2005-07-13 12:10:34',2,'2006-02-15 21:30:53'),(5197,'2005-07-09 10:43:54',1571,541,'2005-07-16 10:19:54',1,'2006-02-15 21:30:53'),(5198,'2005-07-09 10:49:10',218,101,'2005-07-13 04:52:10',1,'2006-02-15 21:30:53'),(5199,'2005-07-09 10:50:56',349,42,'2005-07-10 06:43:56',1,'2006-02-15 21:30:53'),(5200,'2005-07-09 10:52:09',4528,125,'2005-07-13 15:12:09',1,'2006-02-15 21:30:53'),(5201,'2005-07-09 10:52:53',2453,551,'2005-07-16 12:41:53',2,'2006-02-15 21:30:53'),(5202,'2005-07-09 10:53:48',3417,321,'2005-07-15 13:31:48',1,'2006-02-15 21:30:53'),(5203,'2005-07-09 10:53:59',3661,588,'2005-07-15 09:45:59',2,'2006-02-15 21:30:53'),(5204,'2005-07-09 10:54:14',1791,432,'2005-07-12 14:29:14',2,'2006-02-15 21:30:53'),(5205,'2005-07-09 10:56:37',161,79,'2005-07-13 05:45:37',1,'2006-02-15 21:30:53'),(5206,'2005-07-09 11:11:01',692,517,'2005-07-17 07:23:01',2,'2006-02-15 21:30:53'),(5207,'2005-07-09 11:15:44',3496,59,'2005-07-17 06:00:44',1,'2006-02-15 21:30:53'),(5208,'2005-07-09 11:16:56',1881,560,'2005-07-10 07:21:56',2,'2006-02-15 21:30:53'),(5209,'2005-07-09 11:22:39',4441,222,'2005-07-17 09:31:39',1,'2006-02-15 21:30:53'),(5210,'2005-07-09 11:24:19',4514,355,'2005-07-11 06:27:19',1,'2006-02-15 21:30:53'),(5211,'2005-07-09 11:26:50',2216,241,'2005-07-16 15:30:50',1,'2006-02-15 21:30:53'),(5212,'2005-07-09 11:37:47',3240,400,'2005-07-15 14:42:47',1,'2006-02-15 21:30:53'),(5213,'2005-07-09 11:39:43',3708,552,'2005-07-18 16:20:43',2,'2006-02-15 21:30:53'),(5214,'2005-07-09 11:43:08',1657,290,'2005-07-17 08:58:08',2,'2006-02-15 21:30:53'),(5215,'2005-07-09 11:47:58',3888,528,'2005-07-18 09:58:58',1,'2006-02-15 21:30:53'),(5216,'2005-07-09 11:54:58',1644,515,'2005-07-12 09:46:58',2,'2006-02-15 21:30:53'),(5217,'2005-07-09 11:56:50',4150,430,'2005-07-17 07:10:50',1,'2006-02-15 21:30:53'),(5218,'2005-07-09 11:57:12',1121,83,'2005-07-13 06:34:12',2,'2006-02-15 21:30:53'),(5219,'2005-07-09 11:57:55',3933,209,'2005-07-15 09:43:55',2,'2006-02-15 21:30:53'),(5220,'2005-07-09 11:59:04',2577,435,'2005-07-15 06:20:04',1,'2006-02-15 21:30:53'),(5221,'2005-07-09 12:02:23',2339,84,'2005-07-16 15:43:23',1,'2006-02-15 21:30:53'),(5222,'2005-07-09 12:05:45',2508,400,'2005-07-13 12:11:45',1,'2006-02-15 21:30:53'),(5223,'2005-07-09 12:06:03',2335,72,'2005-07-17 15:50:03',1,'2006-02-15 21:30:53'),(5224,'2005-07-09 12:07:27',279,311,'2005-07-17 08:59:27',1,'2006-02-15 21:30:53'),(5225,'2005-07-09 12:10:16',703,445,'2005-07-12 09:55:16',2,'2006-02-15 21:30:53'),(5226,'2005-07-09 12:10:44',3128,218,'2005-07-11 17:32:44',2,'2006-02-15 21:30:53'),(5227,'2005-07-09 12:16:39',1862,362,'2005-07-18 15:38:39',2,'2006-02-15 21:30:53'),(5228,'2005-07-09 12:26:01',622,195,'2005-07-14 13:31:01',2,'2006-02-15 21:30:53'),(5229,'2005-07-09 12:30:18',4472,372,'2005-07-14 15:31:18',2,'2006-02-15 21:30:53'),(5230,'2005-07-09 12:30:23',3707,51,'2005-07-13 08:41:23',1,'2006-02-15 21:30:53'),(5231,'2005-07-09 12:35:02',1275,405,'2005-07-10 09:22:02',1,'2006-02-15 21:30:53'),(5232,'2005-07-09 12:35:08',3353,175,'2005-07-14 14:55:08',1,'2006-02-15 21:30:53'),(5233,'2005-07-09 12:44:26',1401,131,'2005-07-15 12:31:26',1,'2006-02-15 21:30:53'),(5234,'2005-07-09 12:44:47',4182,398,'2005-07-17 10:02:47',1,'2006-02-15 21:30:53'),(5235,'2005-07-09 12:54:25',1044,122,'2005-07-18 16:28:25',1,'2006-02-15 21:30:53'),(5236,'2005-07-09 12:56:29',1215,519,'2005-07-13 08:26:29',1,'2006-02-15 21:30:53'),(5237,'2005-07-09 12:56:58',2341,84,'2005-07-11 15:41:58',1,'2006-02-15 21:30:53'),(5238,'2005-07-09 13:11:14',3297,100,'2005-07-10 07:27:14',2,'2006-02-15 21:30:53'),(5239,'2005-07-09 13:12:35',380,497,'2005-07-10 13:37:35',1,'2006-02-15 21:30:53'),(5240,'2005-07-09 13:14:48',1378,350,'2005-07-10 18:47:48',2,'2006-02-15 21:30:53'),(5241,'2005-07-09 13:19:14',4079,314,'2005-07-11 14:32:14',1,'2006-02-15 21:30:53'),(5242,'2005-07-09 13:20:25',848,12,'2005-07-18 07:38:25',1,'2006-02-15 21:30:53'),(5243,'2005-07-09 13:22:08',122,587,'2005-07-16 09:25:08',1,'2006-02-15 21:30:53'),(5244,'2005-07-09 13:24:07',3726,1,'2005-07-14 14:01:07',2,'2006-02-15 21:30:53'),(5245,'2005-07-09 13:24:14',3547,115,'2005-07-12 11:16:14',1,'2006-02-15 21:30:53'),(5246,'2005-07-09 13:25:18',3548,276,'2005-07-13 18:38:18',1,'2006-02-15 21:30:53'),(5247,'2005-07-09 13:26:28',1186,298,'2005-07-12 14:00:28',2,'2006-02-15 21:30:53'),(5248,'2005-07-09 13:29:44',246,279,'2005-07-12 18:12:44',1,'2006-02-15 21:30:53'),(5249,'2005-07-09 13:33:53',1950,389,'2005-07-11 12:55:53',2,'2006-02-15 21:30:53'),(5250,'2005-07-09 13:35:32',2162,384,'2005-07-13 12:19:32',1,'2006-02-15 21:30:53'),(5251,'2005-07-09 13:36:10',478,474,'2005-07-15 11:40:10',1,'2006-02-15 21:30:53'),(5252,'2005-07-09 13:40:44',2581,335,'2005-07-14 09:41:44',1,'2006-02-15 21:30:53'),(5253,'2005-07-09 13:41:17',2241,532,'2005-07-17 17:09:17',1,'2006-02-15 21:30:53'),(5254,'2005-07-09 13:50:11',654,263,'2005-07-13 09:07:11',1,'2006-02-15 21:30:53'),(5255,'2005-07-09 13:51:08',4418,313,'2005-07-17 13:58:08',2,'2006-02-15 21:30:53'),(5256,'2005-07-09 13:55:45',4226,273,'2005-07-15 17:02:45',1,'2006-02-15 21:30:53'),(5257,'2005-07-09 13:56:43',286,292,'2005-07-10 14:26:43',2,'2006-02-15 21:30:53'),(5258,'2005-07-09 13:56:56',3125,207,'2005-07-11 16:01:56',2,'2006-02-15 21:30:53'),(5259,'2005-07-09 14:02:50',1310,207,'2005-07-11 19:13:50',2,'2006-02-15 21:30:53'),(5260,'2005-07-09 14:05:45',3143,75,'2005-07-14 08:41:45',2,'2006-02-15 21:30:53'),(5261,'2005-07-09 14:06:56',2899,105,'2005-07-11 14:21:56',2,'2006-02-15 21:30:53'),(5262,'2005-07-09 14:08:01',1092,240,'2005-07-12 16:48:01',1,'2006-02-15 21:30:53'),(5263,'2005-07-09 14:10:36',119,406,'2005-07-12 15:07:36',1,'2006-02-15 21:30:53'),(5264,'2005-07-09 14:11:28',3307,545,'2005-07-12 18:24:28',2,'2006-02-15 21:30:53'),(5265,'2005-07-09 14:15:01',4482,139,'2005-07-18 14:43:01',2,'2006-02-15 21:30:53'),(5266,'2005-07-09 14:17:40',2409,222,'2005-07-16 10:42:40',1,'2006-02-15 21:30:53'),(5267,'2005-07-09 14:21:10',2242,233,'2005-07-15 12:02:10',1,'2006-02-15 21:30:53'),(5268,'2005-07-09 14:22:43',1083,119,'2005-07-12 08:27:43',1,'2006-02-15 21:30:53'),(5269,'2005-07-09 14:23:05',3886,230,'2005-07-17 14:03:05',1,'2006-02-15 21:30:53'),(5270,'2005-07-09 14:23:46',1523,128,'2005-07-13 15:04:46',1,'2006-02-15 21:30:53'),(5271,'2005-07-09 14:25:01',2691,522,'2005-07-16 17:28:01',1,'2006-02-15 21:30:53'),(5272,'2005-07-09 14:26:01',1547,90,'2005-07-12 20:20:01',1,'2006-02-15 21:30:53'),(5273,'2005-07-09 14:31:24',4570,38,'2005-07-14 13:27:24',2,'2006-02-15 21:30:53'),(5274,'2005-07-09 14:34:09',4579,108,'2005-07-14 13:02:09',1,'2006-02-15 21:30:53'),(5275,'2005-07-09 14:34:18',729,249,'2005-07-13 12:56:18',2,'2006-02-15 21:30:53'),(5276,'2005-07-09 14:35:13',2524,521,'2005-07-12 14:24:13',2,'2006-02-15 21:30:53'),(5277,'2005-07-09 14:40:42',2026,332,'2005-07-16 14:18:42',2,'2006-02-15 21:30:53'),(5278,'2005-07-09 14:44:23',2573,532,'2005-07-15 10:48:23',1,'2006-02-15 21:30:53'),(5279,'2005-07-09 14:46:36',709,64,'2005-07-17 10:04:36',2,'2006-02-15 21:30:53'),(5280,'2005-07-09 14:55:07',1177,351,'2005-07-12 10:05:07',2,'2006-02-15 21:30:53'),(5281,'2005-07-09 14:55:07',1966,71,'2005-07-13 15:24:07',2,'2006-02-15 21:30:53'),(5282,'2005-07-09 15:01:23',4386,226,'2005-07-13 11:06:23',2,'2006-02-15 21:30:53'),(5283,'2005-07-09 15:07:17',644,295,'2005-07-17 09:52:17',2,'2006-02-15 21:30:53'),(5284,'2005-07-09 15:08:21',1036,585,'2005-07-16 09:53:21',2,'2006-02-15 21:30:53'),(5285,'2005-07-09 15:10:44',676,468,'2005-07-16 13:02:44',2,'2006-02-15 21:30:53'),(5286,'2005-07-09 15:11:41',483,498,'2005-07-10 19:19:41',2,'2006-02-15 21:30:53'),(5287,'2005-07-09 15:11:54',3110,523,'2005-07-16 16:05:54',2,'2006-02-15 21:30:53'),(5288,'2005-07-09 15:13:07',850,120,'2005-07-16 12:39:07',1,'2006-02-15 21:30:53'),(5289,'2005-07-09 15:14:08',4336,30,'2005-07-12 12:51:08',2,'2006-02-15 21:30:53'),(5290,'2005-07-09 15:14:47',277,50,'2005-07-11 20:30:47',2,'2006-02-15 21:30:53'),(5291,'2005-07-09 15:15:02',1367,194,'2005-07-15 10:22:02',2,'2006-02-15 21:30:53'),(5292,'2005-07-09 15:16:54',3195,62,'2005-07-11 15:21:54',1,'2006-02-15 21:30:53'),(5293,'2005-07-09 15:17:23',2880,542,'2005-07-11 11:23:23',2,'2006-02-15 21:30:53'),(5294,'2005-07-09 15:23:42',3237,22,'2005-07-15 15:28:42',2,'2006-02-15 21:30:53'),(5295,'2005-07-09 15:25:06',4460,86,'2005-07-10 12:40:06',1,'2006-02-15 21:30:53'),(5296,'2005-07-09 15:26:27',495,109,'2005-07-15 10:03:27',2,'2006-02-15 21:30:53'),(5297,'2005-07-09 15:32:29',3434,202,'2005-07-14 14:58:29',1,'2006-02-15 21:30:53'),(5298,'2005-07-09 15:36:17',3491,149,'2005-07-18 19:07:17',2,'2006-02-15 21:30:53'),(5299,'2005-07-09 15:38:09',4416,469,'2005-07-15 16:39:09',2,'2006-02-15 21:30:53'),(5300,'2005-07-09 15:40:46',2520,8,'2005-07-15 13:46:46',1,'2006-02-15 21:30:53'),(5301,'2005-07-09 15:42:10',245,459,'2005-07-16 21:27:10',2,'2006-02-15 21:30:53'),(5302,'2005-07-09 15:42:36',4270,72,'2005-07-10 21:04:36',2,'2006-02-15 21:30:53'),(5303,'2005-07-09 15:44:09',3572,350,'2005-07-15 18:09:09',2,'2006-02-15 21:30:53'),(5304,'2005-07-09 15:48:06',4411,51,'2005-07-14 19:29:06',1,'2006-02-15 21:30:53'),(5305,'2005-07-09 15:55:36',625,309,'2005-07-18 15:59:36',1,'2006-02-15 21:30:53'),(5306,'2005-07-09 15:56:45',2221,409,'2005-07-15 19:02:45',2,'2006-02-15 21:30:53'),(5307,'2005-07-09 15:57:15',2847,32,'2005-07-17 13:42:15',2,'2006-02-15 21:30:53'),(5308,'2005-07-09 15:58:38',1684,52,'2005-07-15 13:55:38',2,'2006-02-15 21:30:53'),(5309,'2005-07-09 16:00:16',4026,338,'2005-07-17 17:56:16',1,'2006-02-15 21:30:53'),(5310,'2005-07-09 16:00:34',1565,24,'2005-07-12 12:45:34',2,'2006-02-15 21:30:53'),(5311,'2005-07-09 16:02:54',986,107,'2005-07-18 10:44:54',1,'2006-02-15 21:30:53'),(5312,'2005-07-09 16:03:09',2123,258,'2005-07-13 16:41:09',2,'2006-02-15 21:30:53'),(5313,'2005-07-09 16:04:45',1885,52,'2005-07-17 18:53:45',2,'2006-02-15 21:30:53'),(5314,'2005-07-09 16:05:28',3770,372,'2005-07-10 18:18:28',1,'2006-02-15 21:30:53'),(5315,'2005-07-09 16:09:19',585,134,'2005-07-14 21:10:19',1,'2006-02-15 21:30:53'),(5316,'2005-07-09 16:09:42',3856,438,'2005-07-11 15:20:42',1,'2006-02-15 21:30:53'),(5317,'2005-07-09 16:10:25',2693,14,'2005-07-18 17:10:25',2,'2006-02-15 21:30:53'),(5318,'2005-07-09 16:11:33',1738,472,'2005-07-14 12:49:33',2,'2006-02-15 21:30:53'),(5319,'2005-07-09 16:17:44',1899,282,'2005-07-18 16:35:44',1,'2006-02-15 21:30:53'),(5320,'2005-07-09 16:23:32',3140,228,'2005-07-18 18:16:32',1,'2006-02-15 21:30:53'),(5321,'2005-07-09 16:26:33',3347,245,'2005-07-15 15:05:33',2,'2006-02-15 21:30:53'),(5322,'2005-07-09 16:28:13',4420,432,'2005-07-18 14:53:13',1,'2006-02-15 21:30:53'),(5323,'2005-07-09 16:34:07',1302,35,'2005-07-13 21:37:07',1,'2006-02-15 21:30:53'),(5324,'2005-07-09 16:34:18',4024,113,'2005-07-15 12:35:18',2,'2006-02-15 21:30:53'),(5325,'2005-07-09 16:35:47',2703,492,'2005-07-10 11:52:47',1,'2006-02-15 21:30:53'),(5326,'2005-07-09 16:38:01',797,1,'2005-07-13 18:02:01',1,'2006-02-15 21:30:53'),(5327,'2005-07-09 16:39:49',3657,547,'2005-07-12 18:47:49',2,'2006-02-15 21:30:53'),(5328,'2005-07-09 16:48:29',2444,247,'2005-07-17 20:20:29',2,'2006-02-15 21:30:53'),(5329,'2005-07-09 16:49:46',1628,402,'2005-07-16 19:05:46',1,'2006-02-15 21:30:53'),(5330,'2005-07-09 16:53:57',3812,410,'2005-07-18 19:54:57',1,'2006-02-15 21:30:53'),(5331,'2005-07-09 16:54:06',4181,447,'2005-07-10 19:04:06',1,'2006-02-15 21:30:53'),(5332,'2005-07-09 16:59:23',3269,568,'2005-07-10 16:01:23',2,'2006-02-15 21:30:53'),(5333,'2005-07-09 16:59:38',2142,419,'2005-07-16 17:23:38',2,'2006-02-15 21:30:53'),(5334,'2005-07-09 17:00:13',3852,482,'2005-07-11 15:50:13',1,'2006-02-15 21:30:53'),(5335,'2005-07-09 17:00:49',2353,588,'2005-07-12 12:21:49',2,'2006-02-15 21:30:53'),(5336,'2005-07-09 17:01:08',4144,410,'2005-07-11 19:22:08',2,'2006-02-15 21:30:53'),(5337,'2005-07-09 17:03:50',4168,343,'2005-07-16 22:25:50',2,'2006-02-15 21:30:53'),(5338,'2005-07-09 17:07:07',3449,191,'2005-07-14 11:15:07',1,'2006-02-15 21:30:53'),(5339,'2005-07-09 17:09:17',698,380,'2005-07-10 21:07:17',2,'2006-02-15 21:30:53'),(5340,'2005-07-09 17:11:35',650,267,'2005-07-17 17:59:35',2,'2006-02-15 21:30:53'),(5341,'2005-07-09 17:13:23',2522,8,'2005-07-14 18:11:23',2,'2006-02-15 21:30:53'),(5342,'2005-07-09 17:20:03',3828,289,'2005-07-18 12:44:03',2,'2006-02-15 21:30:53'),(5343,'2005-07-09 17:23:43',92,485,'2005-07-18 22:14:43',1,'2006-02-15 21:30:53'),(5344,'2005-07-09 17:27:05',159,197,'2005-07-10 15:51:05',2,'2006-02-15 21:30:53'),(5345,'2005-07-09 17:28:18',3055,348,'2005-07-11 14:30:18',2,'2006-02-15 21:30:53'),(5346,'2005-07-09 17:29:01',2488,287,'2005-07-14 12:47:01',2,'2006-02-15 21:30:53'),(5347,'2005-07-09 17:31:32',1293,246,'2005-07-10 21:06:32',2,'2006-02-15 21:30:53'),(5348,'2005-07-09 17:34:11',3495,597,'2005-07-15 18:32:11',2,'2006-02-15 21:30:53'),(5349,'2005-07-09 17:35:35',3139,161,'2005-07-18 14:05:35',1,'2006-02-15 21:30:53'),(5350,'2005-07-09 17:39:30',724,129,'2005-07-11 16:43:30',2,'2006-02-15 21:30:53'),(5351,'2005-07-09 17:40:52',3722,112,'2005-07-14 16:55:52',2,'2006-02-15 21:30:53'),(5352,'2005-07-09 17:54:58',908,372,'2005-07-15 16:20:58',1,'2006-02-15 21:30:53'),(5353,'2005-07-09 18:04:29',2994,196,'2005-07-15 17:46:29',2,'2006-02-15 21:30:53'),(5354,'2005-07-09 18:04:33',951,354,'2005-07-15 18:19:33',1,'2006-02-15 21:30:53'),(5355,'2005-07-09 18:07:17',2458,100,'2005-07-16 20:33:17',2,'2006-02-15 21:30:53'),(5356,'2005-07-09 18:08:28',2905,188,'2005-07-14 14:11:28',2,'2006-02-15 21:30:53'),(5357,'2005-07-09 18:08:59',1988,411,'2005-07-16 17:28:59',2,'2006-02-15 21:30:53'),(5358,'2005-07-09 18:09:21',3764,71,'2005-07-14 23:59:21',2,'2006-02-15 21:30:53'),(5359,'2005-07-09 18:10:52',4392,453,'2005-07-18 13:34:52',2,'2006-02-15 21:30:53'),(5360,'2005-07-09 18:14:03',679,562,'2005-07-10 15:17:03',2,'2006-02-15 21:30:53'),(5361,'2005-07-09 18:15:32',2045,279,'2005-07-17 23:32:32',2,'2006-02-15 21:30:53'),(5362,'2005-07-09 18:16:08',24,266,'2005-07-18 18:27:08',1,'2006-02-15 21:30:53'),(5363,'2005-07-09 18:18:49',2180,425,'2005-07-14 22:16:49',1,'2006-02-15 21:30:53'),(5364,'2005-07-09 18:24:48',2746,366,'2005-07-10 12:30:48',1,'2006-02-15 21:30:53'),(5365,'2005-07-09 18:27:00',4469,527,'2005-07-11 14:18:00',1,'2006-02-15 21:30:53'),(5366,'2005-07-09 18:28:37',886,187,'2005-07-13 20:45:37',1,'2006-02-15 21:30:53'),(5367,'2005-07-09 18:39:15',1446,485,'2005-07-16 14:19:15',2,'2006-02-15 21:30:53'),(5368,'2005-07-09 18:41:59',4429,502,'2005-07-16 00:32:59',2,'2006-02-15 21:30:53'),(5369,'2005-07-09 18:42:16',1550,538,'2005-07-12 18:16:16',2,'2006-02-15 21:30:53'),(5370,'2005-07-09 18:43:19',2193,248,'2005-07-15 19:59:19',1,'2006-02-15 21:30:53'),(5371,'2005-07-09 18:47:48',789,425,'2005-07-14 14:39:48',2,'2006-02-15 21:30:53'),(5372,'2005-07-09 18:48:39',3551,148,'2005-07-11 17:40:39',1,'2006-02-15 21:30:53'),(5373,'2005-07-09 18:48:57',950,428,'2005-07-10 16:34:57',1,'2006-02-15 21:30:53'),(5374,'2005-07-09 18:52:08',946,144,'2005-07-16 16:34:08',1,'2006-02-15 21:30:53'),(5375,'2005-07-09 18:52:55',1407,558,'2005-07-16 15:32:55',2,'2006-02-15 21:30:53'),(5376,'2005-07-09 18:54:08',1730,104,'2005-07-17 22:01:08',1,'2006-02-15 21:30:53'),(5377,'2005-07-09 19:04:30',3118,578,'2005-07-11 14:42:30',1,'2006-02-15 21:30:53'),(5378,'2005-07-09 19:05:56',1570,138,'2005-07-10 18:03:56',2,'2006-02-15 21:30:53'),(5379,'2005-07-09 19:08:03',2110,475,'2005-07-10 17:58:03',1,'2006-02-15 21:30:53'),(5380,'2005-07-09 19:08:44',3047,166,'2005-07-11 20:09:44',1,'2006-02-15 21:30:53'),(5381,'2005-07-09 19:11:11',3033,332,'2005-07-13 17:10:11',2,'2006-02-15 21:30:53'),(5382,'2005-07-09 19:12:57',78,586,'2005-07-14 15:44:57',1,'2006-02-15 21:30:53'),(5383,'2005-07-09 19:14:32',573,14,'2005-07-11 19:57:32',1,'2006-02-15 21:30:53'),(5384,'2005-07-09 19:17:46',1729,180,'2005-07-12 13:50:46',1,'2006-02-15 21:30:53'),(5385,'2005-07-09 19:18:11',4291,112,'2005-07-16 18:50:11',2,'2006-02-15 21:30:53'),(5386,'2005-07-09 19:19:09',721,594,'2005-07-13 00:13:09',2,'2006-02-15 21:30:53'),(5387,'2005-07-09 19:25:14',4452,244,'2005-07-11 21:00:14',1,'2006-02-15 21:30:53'),(5388,'2005-07-09 19:25:25',1546,332,'2005-07-14 19:51:25',2,'2006-02-15 21:30:53'),(5389,'2005-07-09 19:25:45',3882,484,'2005-07-17 13:31:45',1,'2006-02-15 21:30:53'),(5390,'2005-07-09 19:26:22',715,139,'2005-07-14 22:46:22',1,'2006-02-15 21:30:53'),(5391,'2005-07-09 19:28:34',402,132,'2005-07-18 01:07:34',1,'2006-02-15 21:30:53'),(5392,'2005-07-09 19:32:30',2552,499,'2005-07-16 15:01:30',1,'2006-02-15 21:30:53'),(5393,'2005-07-09 19:35:12',1417,446,'2005-07-11 14:00:12',1,'2006-02-15 21:30:53'),(5394,'2005-07-09 19:36:15',1828,83,'2005-07-18 18:10:15',2,'2006-02-15 21:30:53'),(5395,'2005-07-09 19:42:37',4428,131,'2005-07-10 15:39:37',1,'2006-02-15 21:30:53'),(5396,'2005-07-09 19:42:52',3795,559,'2005-07-15 21:45:52',1,'2006-02-15 21:30:53'),(5397,'2005-07-09 19:43:51',4376,191,'2005-07-17 00:11:51',1,'2006-02-15 21:30:53'),(5398,'2005-07-09 19:44:58',4352,199,'2005-07-17 00:56:58',1,'2006-02-15 21:30:53'),(5399,'2005-07-09 19:52:44',261,67,'2005-07-10 18:31:44',2,'2006-02-15 21:30:53'),(5400,'2005-07-09 19:56:40',3435,192,'2005-07-14 20:43:40',2,'2006-02-15 21:30:53'),(5401,'2005-07-09 19:59:10',431,43,'2005-07-11 23:21:10',2,'2006-02-15 21:30:53'),(5402,'2005-07-09 20:01:58',4450,379,'2005-07-10 14:07:58',1,'2006-02-15 21:30:53'),(5403,'2005-07-09 20:07:09',3991,36,'2005-07-12 18:33:09',1,'2006-02-15 21:30:53'),(5404,'2005-07-09 20:10:43',3685,236,'2005-07-13 15:16:43',1,'2006-02-15 21:30:53'),(5405,'2005-07-09 20:11:49',799,45,'2005-07-18 18:37:49',2,'2006-02-15 21:30:53'),(5406,'2005-07-09 20:13:23',1322,563,'2005-07-11 22:05:23',2,'2006-02-15 21:30:53'),(5407,'2005-07-09 20:16:07',3641,475,'2005-07-14 21:41:07',2,'2006-02-15 21:30:53'),(5408,'2005-07-09 20:16:51',3162,144,'2005-07-18 22:19:51',1,'2006-02-15 21:30:53'),(5409,'2005-07-09 20:17:19',3538,446,'2005-07-13 23:30:19',1,'2006-02-15 21:30:53'),(5410,'2005-07-09 20:21:10',2261,281,'2005-07-18 21:43:10',2,'2006-02-15 21:30:53'),(5411,'2005-07-09 20:23:38',4292,304,'2005-07-16 01:17:38',2,'2006-02-15 21:30:53'),(5412,'2005-07-09 20:23:52',3174,458,'2005-07-18 18:40:52',1,'2006-02-15 21:30:53'),(5413,'2005-07-09 20:28:42',2056,167,'2005-07-10 19:23:42',2,'2006-02-15 21:30:53'),(5414,'2005-07-09 20:29:36',1201,174,'2005-07-13 01:55:36',2,'2006-02-15 21:30:53'),(5415,'2005-07-09 20:30:03',4413,475,'2005-07-18 00:20:03',1,'2006-02-15 21:30:53'),(5416,'2005-07-09 20:33:50',568,219,'2005-07-14 01:50:50',2,'2006-02-15 21:30:53'),(5417,'2005-07-09 20:34:09',3569,265,'2005-07-14 00:36:09',2,'2006-02-15 21:30:53'),(5418,'2005-07-09 20:41:35',55,114,'2005-07-14 00:15:35',1,'2006-02-15 21:30:53'),(5419,'2005-07-09 20:47:36',1516,226,'2005-07-12 01:36:36',1,'2006-02-15 21:30:53'),(5420,'2005-07-09 20:48:42',1739,80,'2005-07-15 21:35:42',2,'2006-02-15 21:30:53'),(5421,'2005-07-09 20:49:12',2437,33,'2005-07-10 16:30:12',1,'2006-02-15 21:30:53'),(5422,'2005-07-09 20:55:47',436,409,'2005-07-15 15:15:47',2,'2006-02-15 21:30:53'),(5423,'2005-07-09 20:56:48',1952,440,'2005-07-17 14:58:48',2,'2006-02-15 21:30:53'),(5424,'2005-07-09 20:59:09',3694,72,'2005-07-12 00:05:09',2,'2006-02-15 21:30:53'),(5425,'2005-07-09 21:02:26',531,37,'2005-07-16 23:38:26',2,'2006-02-15 21:30:53'),(5426,'2005-07-09 21:04:47',251,438,'2005-07-17 00:55:47',1,'2006-02-15 21:30:53'),(5427,'2005-07-09 21:12:26',3197,499,'2005-07-14 01:02:26',1,'2006-02-15 21:30:53'),(5428,'2005-07-09 21:12:50',3109,346,'2005-07-14 16:25:50',2,'2006-02-15 21:30:53'),(5429,'2005-07-09 21:14:03',2467,105,'2005-07-18 01:33:03',1,'2006-02-15 21:30:53'),(5430,'2005-07-09 21:19:54',1441,173,'2005-07-15 22:53:54',1,'2006-02-15 21:30:53'),(5431,'2005-07-09 21:21:11',2780,213,'2005-07-10 21:16:11',1,'2006-02-15 21:30:53'),(5432,'2005-07-09 21:21:25',1958,64,'2005-07-14 21:34:25',2,'2006-02-15 21:30:53'),(5433,'2005-07-09 21:22:00',2679,349,'2005-07-10 21:18:00',2,'2006-02-15 21:30:53'),(5434,'2005-07-09 21:25:20',3790,334,'2005-07-15 03:12:20',2,'2006-02-15 21:30:53'),(5435,'2005-07-09 21:28:07',2884,273,'2005-07-18 21:16:07',2,'2006-02-15 21:30:53'),(5436,'2005-07-09 21:31:11',2364,89,'2005-07-13 16:59:11',2,'2006-02-15 21:30:53'),(5437,'2005-07-09 21:32:29',3532,26,'2005-07-15 00:27:29',2,'2006-02-15 21:30:53'),(5438,'2005-07-09 21:34:32',487,241,'2005-07-16 02:21:32',2,'2006-02-15 21:30:53'),(5439,'2005-07-09 21:39:35',1993,58,'2005-07-13 17:45:35',2,'2006-02-15 21:30:53'),(5440,'2005-07-09 21:45:17',138,332,'2005-07-11 22:43:17',2,'2006-02-15 21:30:53'),(5441,'2005-07-09 21:52:05',3913,7,'2005-07-17 02:54:05',1,'2006-02-15 21:30:53'),(5442,'2005-07-09 21:55:19',3093,29,'2005-07-19 01:18:19',2,'2006-02-15 21:30:53'),(5443,'2005-07-09 21:56:09',2951,137,'2005-07-16 00:33:09',2,'2006-02-15 21:30:53'),(5444,'2005-07-09 21:58:57',2968,10,'2005-07-11 03:09:57',2,'2006-02-15 21:30:53'),(5445,'2005-07-09 21:59:41',565,578,'2005-07-15 00:40:41',1,'2006-02-15 21:30:53'),(5446,'2005-07-09 21:59:55',2769,454,'2005-07-11 01:45:55',2,'2006-02-15 21:30:53'),(5447,'2005-07-09 22:09:28',2530,473,'2005-07-18 20:03:28',2,'2006-02-15 21:30:53'),(5448,'2005-07-09 22:11:14',646,463,'2005-07-15 21:08:14',2,'2006-02-15 21:30:53'),(5449,'2005-07-09 22:12:01',921,261,'2005-07-18 01:18:01',2,'2006-02-15 21:30:53'),(5450,'2005-07-09 22:13:25',2356,328,'2005-07-13 23:28:25',1,'2006-02-15 21:30:53'),(5451,'2005-07-09 22:22:10',3484,39,'2005-07-11 02:43:10',1,'2006-02-15 21:30:53'),(5452,'2005-07-09 22:23:21',2036,80,'2005-07-17 00:20:21',1,'2006-02-15 21:30:53'),(5453,'2005-07-09 22:24:11',1780,106,'2005-07-19 04:08:11',1,'2006-02-15 21:30:53'),(5454,'2005-07-09 22:24:25',3049,97,'2005-07-11 01:52:25',1,'2006-02-15 21:30:53'),(5455,'2005-07-09 22:28:45',1955,464,'2005-07-18 02:50:45',2,'2006-02-15 21:30:53'),(5456,'2005-07-09 22:31:45',3003,360,'2005-07-12 03:53:45',1,'2006-02-15 21:30:53'),(5457,'2005-07-09 22:33:14',4179,433,'2005-07-12 02:30:14',1,'2006-02-15 21:30:53'),(5458,'2005-07-09 22:35:49',2203,521,'2005-07-16 22:55:49',1,'2006-02-15 21:30:53'),(5459,'2005-07-09 22:43:56',1847,168,'2005-07-12 18:05:56',1,'2006-02-15 21:30:53'),(5460,'2005-07-09 22:46:14',2410,38,'2005-07-12 21:26:14',2,'2006-02-15 21:30:53'),(5461,'2005-07-09 22:48:04',53,244,'2005-07-10 17:56:04',2,'2006-02-15 21:30:53'),(5462,'2005-07-09 22:56:53',871,583,'2005-07-11 21:50:53',2,'2006-02-15 21:30:53'),(5463,'2005-07-09 22:57:02',601,374,'2005-07-11 03:10:02',1,'2006-02-15 21:30:53'),(5464,'2005-07-09 22:58:14',3692,434,'2005-07-15 02:48:14',1,'2006-02-15 21:30:53'),(5465,'2005-07-09 23:01:13',723,503,'2005-07-13 01:03:13',1,'2006-02-15 21:30:53'),(5466,'2005-07-09 23:03:21',2302,482,'2005-07-10 20:11:21',2,'2006-02-15 21:30:53'),(5467,'2005-07-09 23:05:47',374,543,'2005-07-16 17:06:47',2,'2006-02-15 21:30:53'),(5468,'2005-07-09 23:06:09',2196,81,'2005-07-13 00:48:09',1,'2006-02-15 21:30:53'),(5469,'2005-07-09 23:08:07',2201,475,'2005-07-13 19:13:07',1,'2006-02-15 21:30:53'),(5470,'2005-07-09 23:10:49',3254,325,'2005-07-18 04:30:49',1,'2006-02-15 21:30:53'),(5471,'2005-07-09 23:11:52',4086,347,'2005-07-13 02:08:52',2,'2006-02-15 21:30:53'),(5472,'2005-07-09 23:16:40',865,165,'2005-07-10 18:43:40',2,'2006-02-15 21:30:53'),(5473,'2005-07-09 23:19:11',4283,51,'2005-07-19 02:30:11',2,'2006-02-15 21:30:53'),(5474,'2005-07-09 23:23:57',3608,375,'2005-07-15 03:11:57',1,'2006-02-15 21:30:53'),(5475,'2005-07-09 23:31:38',726,219,'2005-07-12 03:51:38',1,'2006-02-15 21:30:53'),(5476,'2005-07-09 23:37:09',1199,427,'2005-07-15 23:57:09',1,'2006-02-15 21:30:53'),(5477,'2005-07-09 23:43:49',994,542,'2005-07-15 05:03:49',2,'2006-02-15 21:30:53'),(5478,'2005-07-09 23:45:15',3213,583,'2005-07-15 22:48:15',1,'2006-02-15 21:30:53'),(5479,'2005-07-09 23:47:33',216,250,'2005-07-13 01:09:33',1,'2006-02-15 21:30:53'),(5480,'2005-07-09 23:49:07',847,452,'2005-07-12 00:15:07',1,'2006-02-15 21:30:53'),(5481,'2005-07-09 23:51:57',562,479,'2005-07-11 05:28:57',2,'2006-02-15 21:30:53'),(5482,'2005-07-09 23:53:04',2136,460,'2005-07-15 04:59:04',1,'2006-02-15 21:30:53'),(5483,'2005-07-09 23:54:09',4362,89,'2005-07-17 23:36:09',1,'2006-02-15 21:30:53'),(5484,'2005-07-09 23:54:37',3248,495,'2005-07-15 02:05:37',1,'2006-02-15 21:30:53'),(5485,'2005-07-09 23:55:25',3930,173,'2005-07-14 04:08:25',1,'2006-02-15 21:30:53'),(5486,'2005-07-09 23:57:44',2864,538,'2005-07-14 00:23:44',1,'2006-02-15 21:30:53'),(5487,'2005-07-10 00:01:50',1144,341,'2005-07-10 20:43:50',1,'2006-02-15 21:30:53'),(5488,'2005-07-10 00:02:06',4262,173,'2005-07-15 01:45:06',2,'2006-02-15 21:30:53'),(5489,'2005-07-10 00:07:03',2319,490,'2005-07-15 19:52:03',1,'2006-02-15 21:30:53'),(5490,'2005-07-10 00:09:11',3044,367,'2005-07-14 21:23:11',1,'2006-02-15 21:30:53'),(5491,'2005-07-10 00:09:45',2007,49,'2005-07-11 02:25:45',1,'2006-02-15 21:30:53'),(5492,'2005-07-10 00:11:09',4524,558,'2005-07-14 01:27:09',1,'2006-02-15 21:30:53'),(5493,'2005-07-10 00:11:44',2037,539,'2005-07-15 19:24:44',2,'2006-02-15 21:30:53'),(5494,'2005-07-10 00:15:00',3087,139,'2005-07-17 01:12:00',2,'2006-02-15 21:30:53'),(5495,'2005-07-10 00:16:54',2199,257,'2005-07-19 01:22:54',2,'2006-02-15 21:30:53'),(5496,'2005-07-10 00:20:23',3182,369,'2005-07-18 21:10:23',2,'2006-02-15 21:30:53'),(5497,'2005-07-10 00:23:23',4473,92,'2005-07-16 03:54:23',1,'2006-02-15 21:30:53'),(5498,'2005-07-10 00:27:21',63,302,'2005-07-13 20:11:21',2,'2006-02-15 21:30:53'),(5499,'2005-07-10 00:27:45',1525,127,'2005-07-17 06:11:45',1,'2006-02-15 21:30:53'),(5500,'2005-07-10 00:28:17',3380,457,'2005-07-15 19:09:17',1,'2006-02-15 21:30:53'),(5501,'2005-07-10 00:33:48',3979,372,'2005-07-17 02:58:48',1,'2006-02-15 21:30:53'),(5502,'2005-07-10 00:34:15',3712,243,'2005-07-11 21:44:15',1,'2006-02-15 21:30:53'),(5503,'2005-07-10 00:35:37',3892,262,'2005-07-12 20:29:37',1,'2006-02-15 21:30:53'),(5504,'2005-07-10 00:36:38',3053,455,'2005-07-16 19:36:38',1,'2006-02-15 21:30:53'),(5505,'2005-07-10 00:38:48',896,253,'2005-07-12 03:12:48',2,'2006-02-15 21:30:53'),(5506,'2005-07-10 00:45:48',2432,117,'2005-07-18 20:35:48',2,'2006-02-15 21:30:53'),(5507,'2005-07-10 00:49:04',716,399,'2005-07-15 22:06:04',2,'2006-02-15 21:30:53'),(5508,'2005-07-10 00:50:01',2977,345,'2005-07-16 19:07:01',1,'2006-02-15 21:30:53'),(5509,'2005-07-10 00:54:46',1142,102,'2005-07-16 05:10:46',1,'2006-02-15 21:30:53'),(5510,'2005-07-10 00:58:37',1298,67,'2005-07-17 22:02:37',2,'2006-02-15 21:30:53'),(5511,'2005-07-10 01:00:00',3678,301,'2005-07-12 20:44:00',1,'2006-02-15 21:30:53'),(5512,'2005-07-10 01:05:38',4470,405,'2005-07-17 20:47:38',1,'2006-02-15 21:30:53'),(5513,'2005-07-10 01:05:41',2558,356,'2005-07-11 02:05:41',2,'2006-02-15 21:30:53'),(5514,'2005-07-10 01:09:42',1824,522,'2005-07-17 05:47:42',1,'2006-02-15 21:30:53'),(5515,'2005-07-10 01:12:44',3772,39,'2005-07-13 00:39:44',1,'2006-02-15 21:30:53'),(5516,'2005-07-10 01:13:52',1902,581,'2005-07-15 22:56:52',1,'2006-02-15 21:30:53'),(5517,'2005-07-10 01:15:00',3689,42,'2005-07-19 01:59:00',1,'2006-02-15 21:30:53'),(5518,'2005-07-10 01:15:11',3340,451,'2005-07-18 19:28:11',2,'2006-02-15 21:30:53'),(5519,'2005-07-10 01:18:32',1312,85,'2005-07-11 20:39:32',1,'2006-02-15 21:30:53'),(5520,'2005-07-10 01:30:41',2527,501,'2005-07-15 21:37:41',2,'2006-02-15 21:30:53'),(5521,'2005-07-10 01:31:22',1956,182,'2005-07-17 05:42:22',2,'2006-02-15 21:30:53'),(5522,'2005-07-10 01:46:29',2622,573,'2005-07-18 00:41:29',2,'2006-02-15 21:30:53'),(5523,'2005-07-10 01:47:55',2233,125,'2005-07-18 22:25:55',1,'2006-02-15 21:30:53'),(5524,'2005-07-10 01:49:24',3596,386,'2005-07-14 22:55:24',1,'2006-02-15 21:30:53'),(5525,'2005-07-10 02:03:08',3141,241,'2005-07-18 07:32:08',1,'2006-02-15 21:30:53'),(5526,'2005-07-10 02:04:03',3909,144,'2005-07-16 22:15:03',2,'2006-02-15 21:30:53'),(5527,'2005-07-10 02:06:01',4462,554,'2005-07-15 00:55:01',2,'2006-02-15 21:30:53'),(5528,'2005-07-10 02:09:21',680,551,'2005-07-17 06:22:21',2,'2006-02-15 21:30:53'),(5529,'2005-07-10 02:11:13',1652,590,'2005-07-15 06:56:13',2,'2006-02-15 21:30:53'),(5530,'2005-07-10 02:13:49',2701,74,'2005-07-18 08:01:49',2,'2006-02-15 21:30:53'),(5531,'2005-07-10 02:13:59',2992,173,'2005-07-15 00:01:59',2,'2006-02-15 21:30:53'),(5532,'2005-07-10 02:17:31',983,522,'2005-07-16 02:57:31',2,'2006-02-15 21:30:53'),(5533,'2005-07-10 02:19:28',2567,270,'2005-07-11 01:37:28',1,'2006-02-15 21:30:53'),(5534,'2005-07-10 02:26:49',3251,156,'2005-07-11 07:13:49',1,'2006-02-15 21:30:53'),(5535,'2005-07-10 02:27:42',1623,394,'2005-07-12 21:13:42',1,'2006-02-15 21:30:53'),(5536,'2005-07-10 02:29:42',1919,195,'2005-07-13 04:06:42',2,'2006-02-15 21:30:53'),(5537,'2005-07-10 02:35:41',1781,254,'2005-07-13 07:11:41',2,'2006-02-15 21:30:53'),(5538,'2005-07-10 02:39:40',2119,367,'2005-07-12 01:39:40',2,'2006-02-15 21:30:53'),(5539,'2005-07-10 02:42:58',3217,90,'2005-07-16 02:27:58',2,'2006-02-15 21:30:53'),(5540,'2005-07-10 02:44:21',132,250,'2005-07-11 07:13:21',1,'2006-02-15 21:30:53'),(5541,'2005-07-10 02:44:27',1211,135,'2005-07-13 04:13:27',2,'2006-02-15 21:30:53'),(5542,'2005-07-10 02:45:53',1713,105,'2005-07-15 23:23:53',2,'2006-02-15 21:30:53'),(5543,'2005-07-10 02:48:03',1496,71,'2005-07-17 05:49:03',2,'2006-02-15 21:30:53'),(5544,'2005-07-10 02:48:07',1014,316,'2005-07-17 01:08:07',1,'2006-02-15 21:30:53'),(5545,'2005-07-10 02:50:29',118,236,'2005-07-16 02:11:29',1,'2006-02-15 21:30:53'),(5546,'2005-07-10 02:50:37',2918,515,'2005-07-16 08:22:37',1,'2006-02-15 21:30:53'),(5547,'2005-07-10 02:52:47',1432,519,'2005-07-16 02:10:47',1,'2006-02-15 21:30:53'),(5548,'2005-07-10 02:56:45',2973,317,'2005-07-13 01:33:45',2,'2006-02-15 21:30:53'),(5549,'2005-07-10 02:58:29',2685,163,'2005-07-17 05:24:29',2,'2006-02-15 21:30:53'),(5550,'2005-07-10 02:58:35',1905,254,'2005-07-16 02:38:35',2,'2006-02-15 21:30:53'),(5551,'2005-07-10 03:01:09',4238,44,'2005-07-18 02:04:09',2,'2006-02-15 21:30:53'),(5552,'2005-07-10 03:01:19',2879,27,'2005-07-13 06:53:19',2,'2006-02-15 21:30:53'),(5553,'2005-07-10 03:03:35',1686,6,'2005-07-14 07:49:35',2,'2006-02-15 21:30:53'),(5554,'2005-07-10 03:03:38',4084,252,'2005-07-17 00:00:38',2,'2006-02-15 21:30:53'),(5555,'2005-07-10 03:08:55',2551,79,'2005-07-11 01:36:55',2,'2006-02-15 21:30:53'),(5556,'2005-07-10 03:10:17',4483,354,'2005-07-14 02:47:17',1,'2006-02-15 21:30:53'),(5557,'2005-07-10 03:10:21',1433,346,'2005-07-11 21:34:21',1,'2006-02-15 21:30:53'),(5558,'2005-07-10 03:12:08',1123,96,'2005-07-14 03:09:08',2,'2006-02-15 21:30:53'),(5559,'2005-07-10 03:13:07',4122,496,'2005-07-18 08:33:07',1,'2006-02-15 21:30:53'),(5560,'2005-07-10 03:13:24',720,231,'2005-07-19 06:03:24',2,'2006-02-15 21:30:53'),(5561,'2005-07-10 03:15:24',1048,369,'2005-07-15 06:46:24',1,'2006-02-15 21:30:53'),(5562,'2005-07-10 03:17:42',3604,300,'2005-07-12 03:26:42',1,'2006-02-15 21:30:53'),(5563,'2005-07-10 03:21:02',2258,362,'2005-07-14 07:40:02',1,'2006-02-15 21:30:53'),(5564,'2005-07-10 03:23:05',196,355,'2005-07-16 07:46:05',2,'2006-02-15 21:30:53'),(5565,'2005-07-10 03:29:48',3368,14,'2005-07-17 04:43:48',1,'2006-02-15 21:30:53'),(5566,'2005-07-10 03:30:17',1343,124,'2005-07-13 06:32:17',1,'2006-02-15 21:30:53'),(5567,'2005-07-10 03:36:46',1616,147,'2005-07-15 23:22:46',2,'2006-02-15 21:30:53'),(5568,'2005-07-10 03:36:56',1130,424,'2005-07-11 08:35:56',2,'2006-02-15 21:30:53'),(5569,'2005-07-10 03:38:32',2835,69,'2005-07-16 00:02:32',2,'2006-02-15 21:30:53'),(5570,'2005-07-10 03:46:47',2013,374,'2005-07-17 09:28:47',1,'2006-02-15 21:30:53'),(5571,'2005-07-10 03:48:20',1084,76,'2005-07-11 02:09:20',2,'2006-02-15 21:30:53'),(5572,'2005-07-10 03:49:00',2709,458,'2005-07-14 01:25:00',1,'2006-02-15 21:30:53'),(5573,'2005-07-10 03:50:47',2957,170,'2005-07-17 06:40:47',2,'2006-02-15 21:30:53'),(5574,'2005-07-10 03:54:38',2307,163,'2005-07-19 07:20:38',2,'2006-02-15 21:30:53'),(5575,'2005-07-10 03:55:50',2316,107,'2005-07-12 08:40:50',1,'2006-02-15 21:30:53'),(5576,'2005-07-10 03:57:05',1453,217,'2005-07-13 02:16:05',2,'2006-02-15 21:30:53'),(5577,'2005-07-10 03:58:40',3779,266,'2005-07-14 03:36:40',1,'2006-02-15 21:30:53'),(5578,'2005-07-10 04:00:31',4543,378,'2005-07-16 08:06:31',2,'2006-02-15 21:30:53'),(5579,'2005-07-10 04:04:29',945,203,'2005-07-14 04:31:29',1,'2006-02-15 21:30:53'),(5580,'2005-07-10 04:05:49',2753,521,'2005-07-18 22:36:49',2,'2006-02-15 21:30:53'),(5581,'2005-07-10 04:06:06',3450,306,'2005-07-15 08:31:06',2,'2006-02-15 21:30:53'),(5582,'2005-07-10 04:08:25',3341,305,'2005-07-13 06:04:25',1,'2006-02-15 21:30:53'),(5583,'2005-07-10 04:08:48',1242,391,'2005-07-19 07:59:48',1,'2006-02-15 21:30:53'),(5584,'2005-07-10 04:15:25',2606,289,'2005-07-16 22:54:25',2,'2006-02-15 21:30:53'),(5585,'2005-07-10 04:15:43',3524,63,'2005-07-15 08:24:43',1,'2006-02-15 21:30:53'),(5586,'2005-07-10 04:17:06',2965,427,'2005-07-18 07:11:06',1,'2006-02-15 21:30:53'),(5587,'2005-07-10 04:17:25',4485,531,'2005-07-15 01:41:25',1,'2006-02-15 21:30:53'),(5588,'2005-07-10 04:21:10',1166,535,'2005-07-16 02:58:10',2,'2006-02-15 21:30:53'),(5589,'2005-07-10 04:22:58',3673,296,'2005-07-10 23:13:58',1,'2006-02-15 21:30:53'),(5590,'2005-07-10 04:23:11',4442,407,'2005-07-19 09:03:11',1,'2006-02-15 21:30:53'),(5591,'2005-07-10 04:25:03',378,374,'2005-07-16 04:21:03',1,'2006-02-15 21:30:53'),(5592,'2005-07-10 04:26:13',2471,222,'2005-07-19 02:32:13',2,'2006-02-15 21:30:53'),(5593,'2005-07-10 04:33:13',702,287,'2005-07-17 08:44:13',2,'2006-02-15 21:30:53'),(5594,'2005-07-10 04:33:36',61,440,'2005-07-12 08:13:36',2,'2006-02-15 21:30:53'),(5595,'2005-07-10 04:33:45',264,572,'2005-07-16 04:04:45',1,'2006-02-15 21:30:53'),(5596,'2005-07-10 04:43:14',1662,240,'2005-07-11 22:58:14',2,'2006-02-15 21:30:53'),(5597,'2005-07-10 04:47:57',4264,576,'2005-07-17 01:54:57',2,'2006-02-15 21:30:53'),(5598,'2005-07-10 04:48:29',3412,397,'2005-07-18 10:33:29',2,'2006-02-15 21:30:53'),(5599,'2005-07-10 04:52:04',3054,391,'2005-07-13 05:19:04',1,'2006-02-15 21:30:53'),(5600,'2005-07-10 04:55:45',3713,138,'2005-07-18 03:10:45',2,'2006-02-15 21:30:53'),(5601,'2005-07-10 04:56:55',3062,511,'2005-07-11 00:14:55',1,'2006-02-15 21:30:53'),(5602,'2005-07-10 05:02:22',3544,253,'2005-07-14 23:40:22',2,'2006-02-15 21:30:53'),(5603,'2005-07-10 05:04:54',1308,74,'2005-07-12 01:54:54',2,'2006-02-15 21:30:53'),(5604,'2005-07-10 05:05:00',3702,78,'2005-07-12 08:04:00',1,'2006-02-15 21:30:53'),(5605,'2005-07-10 05:06:45',2964,273,'2005-07-15 02:51:45',2,'2006-02-15 21:30:53'),(5606,'2005-07-10 05:07:55',2896,51,'2005-07-15 00:14:55',2,'2006-02-15 21:30:53'),(5607,'2005-07-10 05:08:10',4257,52,'2005-07-15 00:40:10',2,'2006-02-15 21:30:53'),(5608,'2005-07-10 05:08:26',3854,384,'2005-07-10 23:24:26',1,'2006-02-15 21:30:53'),(5609,'2005-07-10 05:09:46',1553,492,'2005-07-12 10:38:46',1,'2006-02-15 21:30:53'),(5610,'2005-07-10 05:09:52',481,131,'2005-07-13 07:08:52',2,'2006-02-15 21:30:53'),(5611,'2005-07-10 05:13:43',2832,424,'2005-07-16 05:56:43',1,'2006-02-15 21:30:53'),(5612,'2005-07-10 05:15:12',2363,472,'2005-07-17 09:50:12',2,'2006-02-15 21:30:53'),(5613,'2005-07-10 05:15:43',4517,220,'2005-07-13 05:17:43',2,'2006-02-15 21:30:53'),(5614,'2005-07-10 05:16:56',133,371,'2005-07-13 02:03:56',1,'2006-02-15 21:30:53'),(5615,'2005-07-10 05:18:51',1521,173,'2005-07-17 11:05:51',2,'2006-02-15 21:30:53'),(5616,'2005-07-10 05:21:11',4014,238,'2005-07-18 08:42:11',2,'2006-02-15 21:30:53'),(5617,'2005-07-10 05:28:50',2324,342,'2005-07-12 00:02:50',2,'2006-02-15 21:30:53'),(5618,'2005-07-10 05:28:58',757,316,'2005-07-18 01:38:58',1,'2006-02-15 21:30:53'),(5619,'2005-07-10 05:29:33',113,204,'2005-07-15 00:40:33',1,'2006-02-15 21:30:53'),(5620,'2005-07-10 05:30:52',2980,92,'2005-07-16 04:13:52',1,'2006-02-15 21:30:53'),(5621,'2005-07-10 05:34:10',552,310,'2005-07-14 02:49:10',1,'2006-02-15 21:30:53'),(5622,'2005-07-10 05:39:37',1783,568,'2005-07-15 00:48:37',2,'2006-02-15 21:30:53'),(5623,'2005-07-10 05:41:38',4464,229,'2005-07-14 01:01:38',2,'2006-02-15 21:30:53'),(5624,'2005-07-10 05:43:16',1015,114,'2005-07-12 05:33:16',1,'2006-02-15 21:30:53'),(5625,'2005-07-10 05:44:02',1751,114,'2005-07-12 00:03:02',2,'2006-02-15 21:30:53'),(5626,'2005-07-10 05:49:35',3029,389,'2005-07-15 08:05:35',1,'2006-02-15 21:30:53'),(5627,'2005-07-10 05:51:12',244,136,'2005-07-17 09:56:12',2,'2006-02-15 21:30:53'),(5628,'2005-07-10 05:56:40',4040,87,'2005-07-17 11:13:40',1,'2006-02-15 21:30:53'),(5629,'2005-07-10 06:02:25',400,546,'2005-07-16 07:33:25',1,'2006-02-15 21:30:53'),(5630,'2005-07-10 06:08:14',1151,537,'2005-07-14 03:37:14',2,'2006-02-15 21:30:53'),(5631,'2005-07-10 06:15:45',2095,595,'2005-07-17 09:53:45',2,'2006-02-15 21:30:53'),(5632,'2005-07-10 06:17:06',2632,404,'2005-07-17 02:32:06',2,'2006-02-15 21:30:53'),(5633,'2005-07-10 06:22:24',1056,480,'2005-07-11 05:59:24',2,'2006-02-15 21:30:53'),(5634,'2005-07-10 06:25:48',323,487,'2005-07-17 09:07:48',2,'2006-02-15 21:30:53'),(5635,'2005-07-10 06:28:39',1457,222,'2005-07-17 08:35:39',2,'2006-02-15 21:30:53'),(5636,'2005-07-10 06:31:24',4116,2,'2005-07-13 02:36:24',1,'2006-02-15 21:30:53'),(5637,'2005-07-10 06:31:37',4436,45,'2005-07-17 01:16:37',1,'2006-02-15 21:30:53'),(5638,'2005-07-10 06:32:49',1528,570,'2005-07-13 04:32:49',2,'2006-02-15 21:30:53'),(5639,'2005-07-10 06:33:39',2452,249,'2005-07-19 07:47:39',1,'2006-02-15 21:30:53'),(5640,'2005-07-10 06:38:00',2706,574,'2005-07-18 08:56:00',2,'2006-02-15 21:30:53'),(5641,'2005-07-10 06:43:43',3568,50,'2005-07-15 06:33:43',1,'2006-02-15 21:30:53'),(5642,'2005-07-10 06:46:08',3630,299,'2005-07-13 10:03:08',1,'2006-02-15 21:30:53'),(5643,'2005-07-10 06:49:00',796,34,'2005-07-14 01:53:00',1,'2006-02-15 21:30:53'),(5644,'2005-07-10 06:57:44',4069,476,'2005-07-15 03:52:44',2,'2006-02-15 21:30:53'),(5645,'2005-07-10 06:58:21',1586,333,'2005-07-18 04:19:21',2,'2006-02-15 21:30:53'),(5646,'2005-07-10 07:08:09',1471,166,'2005-07-14 03:48:09',2,'2006-02-15 21:30:53'),(5647,'2005-07-10 07:08:40',1466,128,'2005-07-13 05:19:40',2,'2006-02-15 21:30:53'),(5648,'2005-07-10 07:09:21',4359,24,'2005-07-16 07:23:21',2,'2006-02-15 21:30:53'),(5649,'2005-07-10 07:15:07',1349,336,'2005-07-12 11:57:07',2,'2006-02-15 21:30:53'),(5650,'2005-07-10 07:17:01',2793,461,'2005-07-15 11:59:01',1,'2006-02-15 21:30:53'),(5651,'2005-07-10 07:17:13',301,239,'2005-07-15 12:13:13',2,'2006-02-15 21:30:53'),(5652,'2005-07-10 07:18:58',927,42,'2005-07-19 07:52:58',1,'2006-02-15 21:30:53'),(5653,'2005-07-10 07:21:27',919,28,'2005-07-16 01:58:27',1,'2006-02-15 21:30:53'),(5654,'2005-07-10 07:24:46',3419,490,'2005-07-14 07:39:46',2,'2006-02-15 21:30:53'),(5655,'2005-07-10 07:31:06',3470,113,'2005-07-17 08:22:06',1,'2006-02-15 21:30:53'),(5656,'2005-07-10 07:31:07',4138,159,'2005-07-15 04:44:07',1,'2006-02-15 21:30:53'),(5657,'2005-07-10 07:33:43',4342,508,'2005-07-18 01:55:43',2,'2006-02-15 21:30:53'),(5658,'2005-07-10 07:34:08',4402,165,'2005-07-19 04:21:08',2,'2006-02-15 21:30:53'),(5659,'2005-07-10 07:45:40',4265,9,'2005-07-15 05:20:40',1,'2006-02-15 21:30:53'),(5660,'2005-07-10 07:46:12',1404,171,'2005-07-17 07:48:12',1,'2006-02-15 21:30:53'),(5661,'2005-07-10 07:53:51',1878,108,'2005-07-14 12:57:51',2,'2006-02-15 21:30:53'),(5662,'2005-07-10 07:59:24',219,502,'2005-07-14 13:06:24',1,'2006-02-15 21:30:53'),(5663,'2005-07-10 08:01:33',3078,530,'2005-07-15 03:36:33',2,'2006-02-15 21:30:53'),(5664,'2005-07-10 08:04:41',2375,469,'2005-07-17 10:29:41',1,'2006-02-15 21:30:53'),(5665,'2005-07-10 08:10:08',1175,415,'2005-07-11 05:22:08',2,'2006-02-15 21:30:53'),(5666,'2005-07-10 08:10:29',2225,242,'2005-07-17 04:54:29',2,'2006-02-15 21:30:53'),(5667,'2005-07-10 08:11:03',683,336,'2005-07-15 08:23:03',2,'2006-02-15 21:30:53'),(5668,'2005-07-10 08:11:05',309,211,'2005-07-16 13:15:05',1,'2006-02-15 21:30:53'),(5669,'2005-07-10 08:12:53',1173,323,'2005-07-11 05:48:53',2,'2006-02-15 21:30:53'),(5670,'2005-07-10 08:14:52',610,121,'2005-07-14 04:13:52',2,'2006-02-15 21:30:53'),(5671,'2005-07-10 08:18:22',1304,268,'2005-07-11 07:03:22',2,'2006-02-15 21:30:53'),(5672,'2005-07-10 08:19:38',2326,158,'2005-07-16 06:28:38',2,'2006-02-15 21:30:53'),(5673,'2005-07-10 08:21:54',4018,117,'2005-07-11 05:54:54',2,'2006-02-15 21:30:53'),(5674,'2005-07-10 08:26:26',548,258,'2005-07-16 02:43:26',1,'2006-02-15 21:30:53'),(5675,'2005-07-10 08:31:06',2134,376,'2005-07-17 11:48:06',1,'2006-02-15 21:30:53'),(5676,'2005-07-10 08:38:32',3595,153,'2005-07-13 10:11:32',1,'2006-02-15 21:30:53'),(5677,'2005-07-10 08:41:28',2647,105,'2005-07-12 09:05:28',2,'2006-02-15 21:30:53'),(5678,'2005-07-10 08:42:42',4366,96,'2005-07-19 03:48:42',1,'2006-02-15 21:30:53'),(5679,'2005-07-10 08:44:02',389,138,'2005-07-14 05:30:02',1,'2006-02-15 21:30:53'),(5680,'2005-07-10 08:47:36',3503,199,'2005-07-17 06:10:36',1,'2006-02-15 21:30:53'),(5681,'2005-07-10 08:48:39',4176,50,'2005-07-18 07:17:39',1,'2006-02-15 21:30:53'),(5682,'2005-07-10 08:51:39',17,302,'2005-07-12 14:44:39',2,'2006-02-15 21:30:53'),(5683,'2005-07-10 08:52:13',4433,285,'2005-07-19 10:25:13',1,'2006-02-15 21:30:53'),(5684,'2005-07-10 08:59:03',99,132,'2005-07-15 07:21:03',1,'2006-02-15 21:30:53'),(5685,'2005-07-10 09:01:38',1462,170,'2005-07-17 10:58:38',1,'2006-02-15 21:30:53'),(5686,'2005-07-10 09:06:03',717,521,'2005-07-11 10:59:03',2,'2006-02-15 21:30:53'),(5687,'2005-07-10 09:07:19',2170,363,'2005-07-16 11:17:19',2,'2006-02-15 21:30:53'),(5688,'2005-07-10 09:16:08',3036,598,'2005-07-15 09:44:08',1,'2006-02-15 21:30:53'),(5689,'2005-07-10 09:24:17',1731,381,'2005-07-15 05:36:17',1,'2006-02-15 21:30:53'),(5690,'2005-07-10 09:26:49',1326,362,'2005-07-19 07:17:49',2,'2006-02-15 21:30:53'),(5691,'2005-07-10 09:29:49',3526,466,'2005-07-16 13:37:49',1,'2006-02-15 21:30:53'),(5692,'2005-07-10 09:32:22',59,244,'2005-07-15 15:20:22',2,'2006-02-15 21:30:53'),(5693,'2005-07-10 09:35:43',2167,208,'2005-07-12 08:05:43',2,'2006-02-15 21:30:53'),(5694,'2005-07-10 09:40:38',3476,57,'2005-07-14 09:16:38',1,'2006-02-15 21:30:53'),(5695,'2005-07-10 09:43:40',440,459,'2005-07-13 15:04:40',2,'2006-02-15 21:30:53'),(5696,'2005-07-10 09:44:32',128,96,'2005-07-12 13:38:32',2,'2006-02-15 21:30:53'),(5697,'2005-07-10 09:44:44',934,515,'2005-07-12 12:13:44',2,'2006-02-15 21:30:53'),(5698,'2005-07-10 09:47:00',639,46,'2005-07-16 06:26:00',1,'2006-02-15 21:30:53'),(5699,'2005-07-10 09:48:04',958,211,'2005-07-17 09:07:04',1,'2006-02-15 21:30:53'),(5700,'2005-07-10 09:49:42',3961,87,'2005-07-19 04:20:42',1,'2006-02-15 21:30:53'),(5701,'2005-07-10 09:56:24',2395,91,'2005-07-16 15:11:24',2,'2006-02-15 21:30:53'),(5702,'2005-07-10 10:00:01',3349,324,'2005-07-11 15:29:01',1,'2006-02-15 21:30:53'),(5703,'2005-07-10 10:04:15',1585,132,'2005-07-16 07:43:15',1,'2006-02-15 21:30:53'),(5704,'2005-07-10 10:06:29',2104,591,'2005-07-17 10:48:29',1,'2006-02-15 21:30:53'),(5705,'2005-07-10 10:09:17',4030,300,'2005-07-19 07:24:17',2,'2006-02-15 21:30:53'),(5706,'2005-07-10 10:21:46',3701,255,'2005-07-16 04:37:46',2,'2006-02-15 21:30:53'),(5707,'2005-07-10 10:26:14',708,581,'2005-07-18 06:19:14',1,'2006-02-15 21:30:53'),(5708,'2005-07-10 10:29:19',571,484,'2005-07-18 06:50:19',1,'2006-02-15 21:30:53'),(5709,'2005-07-10 10:31:52',732,302,'2005-07-12 10:47:52',1,'2006-02-15 21:30:53'),(5710,'2005-07-10 10:32:52',2843,265,'2005-07-18 06:28:52',1,'2006-02-15 21:30:53'),(5711,'2005-07-10 10:37:20',3988,481,'2005-07-13 11:20:20',1,'2006-02-15 21:30:53'),(5712,'2005-07-10 10:40:32',3480,304,'2005-07-12 11:45:32',1,'2006-02-15 21:30:53'),(5713,'2005-07-10 10:46:15',1213,572,'2005-07-19 14:34:15',1,'2006-02-15 21:30:53'),(5714,'2005-07-10 10:46:57',3706,17,'2005-07-18 14:07:57',1,'2006-02-15 21:30:53'),(5715,'2005-07-10 10:48:03',1638,132,'2005-07-18 11:27:03',1,'2006-02-15 21:30:53'),(5716,'2005-07-10 10:59:23',3416,102,'2005-07-16 12:25:23',2,'2006-02-15 21:30:53'),(5717,'2005-07-10 11:02:03',529,15,'2005-07-13 13:00:03',1,'2006-02-15 21:30:53'),(5718,'2005-07-10 11:03:20',3719,20,'2005-07-19 15:38:20',2,'2006-02-15 21:30:53'),(5719,'2005-07-10 11:07:40',2100,94,'2005-07-15 14:14:40',2,'2006-02-15 21:30:53'),(5720,'2005-07-10 11:09:12',576,339,'2005-07-16 07:31:12',1,'2006-02-15 21:30:53'),(5721,'2005-07-10 11:09:35',2348,5,'2005-07-17 16:41:35',2,'2006-02-15 21:30:53'),(5722,'2005-07-10 11:10:04',2890,556,'2005-07-12 16:31:04',2,'2006-02-15 21:30:53'),(5723,'2005-07-10 11:14:48',605,33,'2005-07-11 15:46:48',2,'2006-02-15 21:30:53'),(5724,'2005-07-10 11:18:12',3597,289,'2005-07-16 14:53:12',2,'2006-02-15 21:30:53'),(5725,'2005-07-10 11:21:21',4293,426,'2005-07-14 05:34:21',2,'2006-02-15 21:30:53'),(5726,'2005-07-10 11:22:08',3582,131,'2005-07-13 05:55:08',1,'2006-02-15 21:30:53'),(5727,'2005-07-10 11:25:28',3338,550,'2005-07-11 11:03:28',2,'2006-02-15 21:30:53'),(5728,'2005-07-10 11:26:14',636,335,'2005-07-15 12:55:14',1,'2006-02-15 21:30:53'),(5729,'2005-07-10 11:27:25',4137,188,'2005-07-15 06:13:25',2,'2006-02-15 21:30:53'),(5730,'2005-07-10 11:28:32',1903,301,'2005-07-11 11:45:32',2,'2006-02-15 21:30:53'),(5731,'2005-07-10 11:31:52',2960,440,'2005-07-14 11:44:52',1,'2006-02-15 21:30:53'),(5732,'2005-07-10 11:36:32',2833,597,'2005-07-12 13:09:32',2,'2006-02-15 21:30:53'),(5733,'2005-07-10 11:37:24',3806,415,'2005-07-11 12:34:24',2,'2006-02-15 21:30:53'),(5734,'2005-07-10 11:37:28',399,447,'2005-07-16 11:10:28',1,'2006-02-15 21:30:53'),(5735,'2005-07-10 11:39:15',3259,65,'2005-07-19 09:52:15',1,'2006-02-15 21:30:53'),(5736,'2005-07-10 11:45:48',1172,27,'2005-07-13 16:40:48',1,'2006-02-15 21:30:53'),(5737,'2005-07-10 11:50:04',1118,218,'2005-07-13 10:37:04',1,'2006-02-15 21:30:53'),(5738,'2005-07-10 11:50:51',200,187,'2005-07-19 17:46:51',1,'2006-02-15 21:30:53'),(5739,'2005-07-10 11:51:50',163,219,'2005-07-19 17:40:50',1,'2006-02-15 21:30:53'),(5740,'2005-07-10 11:51:58',2147,325,'2005-07-12 07:53:58',2,'2006-02-15 21:30:53'),(5741,'2005-07-10 11:55:40',2041,513,'2005-07-16 15:02:40',2,'2006-02-15 21:30:53'),(5742,'2005-07-10 11:56:18',3975,596,'2005-07-19 06:59:18',2,'2006-02-15 21:30:53'),(5743,'2005-07-10 11:57:38',593,297,'2005-07-19 15:38:38',2,'2006-02-15 21:30:53'),(5744,'2005-07-10 12:08:33',1372,437,'2005-07-14 12:34:33',2,'2006-02-15 21:30:53'),(5745,'2005-07-10 12:10:11',41,305,'2005-07-19 06:56:11',1,'2006-02-15 21:30:53'),(5746,'2005-07-10 12:15:12',3071,82,'2005-07-16 07:02:12',1,'2006-02-15 21:30:53'),(5747,'2005-07-10 12:15:33',4562,583,'2005-07-18 10:11:33',1,'2006-02-15 21:30:53'),(5748,'2005-07-10 12:19:59',1618,99,'2005-07-12 12:59:59',1,'2006-02-15 21:30:53'),(5749,'2005-07-10 12:20:36',1768,304,'2005-07-19 10:39:36',1,'2006-02-15 21:30:53'),(5750,'2005-07-10 12:20:41',3855,330,'2005-07-17 08:25:41',2,'2006-02-15 21:30:53'),(5751,'2005-07-10 12:25:11',387,479,'2005-07-11 15:23:11',1,'2006-02-15 21:30:53'),(5752,'2005-07-10 12:27:38',4444,86,'2005-07-18 09:22:38',2,'2006-02-15 21:30:53'),(5753,'2005-07-10 12:29:43',3639,444,'2005-07-17 12:50:43',2,'2006-02-15 21:30:53'),(5754,'2005-07-10 12:32:43',162,291,'2005-07-12 13:11:43',2,'2006-02-15 21:30:53'),(5755,'2005-07-10 12:38:56',2760,2,'2005-07-19 17:02:56',1,'2006-02-15 21:30:53'),(5756,'2005-07-10 12:39:28',130,183,'2005-07-11 14:08:28',2,'2006-02-15 21:30:53'),(5757,'2005-07-10 12:40:17',1827,101,'2005-07-12 14:02:17',1,'2006-02-15 21:30:53'),(5758,'2005-07-10 12:42:43',502,363,'2005-07-16 10:18:43',2,'2006-02-15 21:30:53'),(5759,'2005-07-10 12:43:22',816,591,'2005-07-16 16:42:22',1,'2006-02-15 21:30:53'),(5760,'2005-07-10 12:44:48',1050,154,'2005-07-14 12:25:48',1,'2006-02-15 21:30:53'),(5761,'2005-07-10 12:45:36',1763,287,'2005-07-13 10:05:36',2,'2006-02-15 21:30:53'),(5762,'2005-07-10 12:48:01',1815,217,'2005-07-18 16:43:01',1,'2006-02-15 21:30:53'),(5763,'2005-07-10 12:58:12',753,397,'2005-07-14 08:52:12',1,'2006-02-15 21:30:53'),(5764,'2005-07-10 12:58:16',1556,245,'2005-07-19 07:28:16',1,'2006-02-15 21:30:53'),(5765,'2005-07-10 13:03:02',2619,293,'2005-07-16 09:31:02',1,'2006-02-15 21:30:53'),(5766,'2005-07-10 13:07:31',7,406,'2005-07-16 13:03:31',1,'2006-02-15 21:30:53'),(5767,'2005-07-10 13:13:18',2871,32,'2005-07-17 14:41:18',2,'2006-02-15 21:30:53'),(5768,'2005-07-10 13:15:26',345,196,'2005-07-15 09:42:26',1,'2006-02-15 21:30:53'),(5769,'2005-07-10 13:17:58',4052,141,'2005-07-11 11:32:58',1,'2006-02-15 21:30:53'),(5770,'2005-07-10 13:21:28',914,71,'2005-07-11 08:59:28',2,'2006-02-15 21:30:53'),(5771,'2005-07-10 13:26:45',3275,153,'2005-07-14 15:43:45',1,'2006-02-15 21:30:53'),(5772,'2005-07-10 13:27:40',3635,21,'2005-07-17 08:24:40',1,'2006-02-15 21:30:53'),(5773,'2005-07-10 13:31:09',3277,180,'2005-07-15 08:21:09',2,'2006-02-15 21:30:53'),(5774,'2005-07-10 13:31:56',326,113,'2005-07-18 07:32:56',1,'2006-02-15 21:30:53'),(5775,'2005-07-10 13:34:26',2175,325,'2005-07-15 10:01:26',1,'2006-02-15 21:30:53'),(5776,'2005-07-10 13:35:22',3592,568,'2005-07-12 17:58:22',1,'2006-02-15 21:30:53'),(5777,'2005-07-10 13:38:41',3959,40,'2005-07-17 15:48:41',2,'2006-02-15 21:30:53'),(5778,'2005-07-10 13:41:37',4435,324,'2005-07-14 16:26:37',1,'2006-02-15 21:30:53'),(5779,'2005-07-10 13:45:54',3266,244,'2005-07-15 18:13:54',1,'2006-02-15 21:30:53'),(5780,'2005-07-10 13:46:23',168,516,'2005-07-14 17:19:23',2,'2006-02-15 21:30:53'),(5781,'2005-07-10 13:49:30',3191,167,'2005-07-11 12:11:30',2,'2006-02-15 21:30:53'),(5782,'2005-07-10 13:52:56',2514,440,'2005-07-15 09:32:56',2,'2006-02-15 21:30:53'),(5783,'2005-07-10 13:55:33',3331,385,'2005-07-16 12:13:33',1,'2006-02-15 21:30:53'),(5784,'2005-07-10 14:03:28',2323,422,'2005-07-16 16:22:28',1,'2006-02-15 21:30:53'),(5785,'2005-07-10 14:06:03',142,211,'2005-07-17 17:59:03',2,'2006-02-15 21:30:53'),(5786,'2005-07-10 14:06:44',2290,350,'2005-07-14 19:55:44',2,'2006-02-15 21:30:53'),(5787,'2005-07-10 14:08:49',1075,44,'2005-07-19 18:29:49',1,'2006-02-15 21:30:53'),(5788,'2005-07-10 14:10:22',1707,63,'2005-07-14 19:46:22',2,'2006-02-15 21:30:53'),(5789,'2005-07-10 14:11:26',2601,571,'2005-07-18 16:19:26',1,'2006-02-15 21:30:53'),(5790,'2005-07-10 14:15:21',1696,235,'2005-07-14 08:53:21',2,'2006-02-15 21:30:53'),(5791,'2005-07-10 14:16:22',2795,319,'2005-07-19 13:38:22',2,'2006-02-15 21:30:53'),(5792,'2005-07-10 14:22:19',4234,92,'2005-07-19 09:08:19',1,'2006-02-15 21:30:53'),(5793,'2005-07-10 14:33:00',2927,268,'2005-07-13 19:27:00',1,'2006-02-15 21:30:53'),(5794,'2005-07-10 14:34:53',1164,198,'2005-07-17 11:50:53',2,'2006-02-15 21:30:53'),(5795,'2005-07-10 14:36:29',3958,304,'2005-07-14 13:26:29',1,'2006-02-15 21:30:53'),(5796,'2005-07-10 14:42:54',1631,286,'2005-07-17 08:47:54',2,'2006-02-15 21:30:53'),(5797,'2005-07-10 14:43:52',1880,384,'2005-07-13 16:12:52',2,'2006-02-15 21:30:53'),(5798,'2005-07-10 14:45:09',331,107,'2005-07-16 13:43:09',1,'2006-02-15 21:30:53'),(5799,'2005-07-10 14:53:35',3045,520,'2005-07-14 16:18:35',2,'2006-02-15 21:30:53'),(5800,'2005-07-10 14:58:36',2466,411,'2005-07-11 19:50:36',2,'2006-02-15 21:30:53'),(5801,'2005-07-10 14:59:05',3511,439,'2005-07-14 17:55:05',2,'2006-02-15 21:30:53'),(5802,'2005-07-10 15:02:17',2295,520,'2005-07-19 15:43:17',2,'2006-02-15 21:30:53'),(5803,'2005-07-10 15:05:42',1982,244,'2005-07-15 10:19:42',1,'2006-02-15 21:30:53'),(5804,'2005-07-10 15:06:31',2168,137,'2005-07-14 11:00:31',1,'2006-02-15 21:30:53'),(5805,'2005-07-10 15:08:41',3553,532,'2005-07-19 16:35:41',2,'2006-02-15 21:30:53'),(5806,'2005-07-10 15:11:54',29,108,'2005-07-15 11:51:54',2,'2006-02-15 21:30:53'),(5807,'2005-07-10 15:16:30',2092,301,'2005-07-11 14:02:30',2,'2006-02-15 21:30:53'),(5808,'2005-07-10 15:17:33',2310,170,'2005-07-14 12:14:33',2,'2006-02-15 21:30:53'),(5809,'2005-07-10 15:19:30',1748,461,'2005-07-13 12:31:30',2,'2006-02-15 21:30:53'),(5810,'2005-07-10 15:22:04',1426,482,'2005-07-18 21:05:04',2,'2006-02-15 21:30:53'),(5811,'2005-07-10 15:27:04',4007,441,'2005-07-12 17:20:04',1,'2006-02-15 21:30:53'),(5812,'2005-07-10 15:27:56',1681,581,'2005-07-18 15:37:56',2,'2006-02-15 21:30:53'),(5813,'2005-07-10 15:34:37',942,512,'2005-07-17 16:14:37',2,'2006-02-15 21:30:53'),(5814,'2005-07-10 15:46:50',2537,71,'2005-07-13 15:28:50',2,'2006-02-15 21:30:53'),(5815,'2005-07-10 15:48:19',2934,22,'2005-07-13 12:09:19',1,'2006-02-15 21:30:53'),(5816,'2005-07-10 15:48:47',1746,382,'2005-07-13 11:51:47',2,'2006-02-15 21:30:53'),(5817,'2005-07-10 15:49:12',2993,28,'2005-07-18 19:30:12',2,'2006-02-15 21:30:53'),(5818,'2005-07-10 15:51:12',3940,334,'2005-07-14 14:10:12',2,'2006-02-15 21:30:53'),(5819,'2005-07-10 15:56:20',3439,347,'2005-07-12 19:59:20',2,'2006-02-15 21:30:53'),(5820,'2005-07-10 16:04:59',1511,485,'2005-07-16 12:10:59',1,'2006-02-15 21:30:53'),(5821,'2005-07-10 16:07:16',147,302,'2005-07-14 19:48:16',1,'2006-02-15 21:30:53'),(5822,'2005-07-10 16:10:39',1385,38,'2005-07-13 19:05:39',2,'2006-02-15 21:30:53'),(5823,'2005-07-10 16:19:52',1879,483,'2005-07-11 12:33:52',2,'2006-02-15 21:30:53'),(5824,'2005-07-10 16:19:53',1980,449,'2005-07-12 11:17:53',2,'2006-02-15 21:30:53'),(5825,'2005-07-10 16:20:30',3843,444,'2005-07-11 18:58:30',1,'2006-02-15 21:30:53'),(5826,'2005-07-10 16:21:02',4104,254,'2005-07-17 21:08:02',1,'2006-02-15 21:30:53'),(5827,'2005-07-10 16:22:20',1296,290,'2005-07-15 21:13:20',2,'2006-02-15 21:30:53'),(5828,'2005-07-10 16:27:25',2999,156,'2005-07-11 18:42:25',1,'2006-02-15 21:30:53'),(5829,'2005-07-10 16:29:41',3405,118,'2005-07-14 22:03:41',1,'2006-02-15 21:30:53'),(5830,'2005-07-10 16:34:00',2358,59,'2005-07-18 16:42:00',1,'2006-02-15 21:30:53'),(5831,'2005-07-10 16:34:02',830,43,'2005-07-11 14:27:02',2,'2006-02-15 21:30:53'),(5832,'2005-07-10 16:34:48',2387,63,'2005-07-17 17:25:48',1,'2006-02-15 21:30:53'),(5833,'2005-07-10 16:39:24',3829,187,'2005-07-17 12:52:24',1,'2006-02-15 21:30:53'),(5834,'2005-07-10 16:44:12',85,360,'2005-07-14 11:34:12',2,'2006-02-15 21:30:53'),(5835,'2005-07-10 16:44:58',800,11,'2005-07-17 16:03:58',2,'2006-02-15 21:30:53'),(5836,'2005-07-10 16:49:02',1842,310,'2005-07-11 22:35:02',2,'2006-02-15 21:30:53'),(5837,'2005-07-10 16:57:50',1648,478,'2005-07-18 14:07:50',2,'2006-02-15 21:30:53'),(5838,'2005-07-10 17:04:56',1627,202,'2005-07-11 15:15:56',1,'2006-02-15 21:30:53'),(5839,'2005-07-10 17:08:30',252,367,'2005-07-13 21:21:30',2,'2006-02-15 21:30:53'),(5840,'2005-07-10 17:09:09',1073,72,'2005-07-15 22:52:09',1,'2006-02-15 21:30:53'),(5841,'2005-07-10 17:11:31',1230,525,'2005-07-18 15:50:31',2,'2006-02-15 21:30:53'),(5842,'2005-07-10 17:11:37',139,247,'2005-07-14 21:43:37',1,'2006-02-15 21:30:53'),(5843,'2005-07-10 17:14:27',1615,599,'2005-07-15 21:18:27',2,'2006-02-15 21:30:53'),(5844,'2005-07-10 17:14:43',609,147,'2005-07-12 19:27:43',1,'2006-02-15 21:30:53'),(5845,'2005-07-10 17:23:14',2882,334,'2005-07-12 16:29:14',2,'2006-02-15 21:30:53'),(5846,'2005-07-10 17:25:24',938,233,'2005-07-12 13:41:24',2,'2006-02-15 21:30:53'),(5847,'2005-07-10 17:27:42',4403,220,'2005-07-12 14:51:42',2,'2006-02-15 21:30:53'),(5848,'2005-07-10 17:28:14',4549,409,'2005-07-14 11:54:14',1,'2006-02-15 21:30:53'),(5849,'2005-07-10 17:32:33',1632,44,'2005-07-19 22:39:33',1,'2006-02-15 21:30:53'),(5850,'2005-07-10 17:36:27',4015,531,'2005-07-15 16:44:27',2,'2006-02-15 21:30:53'),(5851,'2005-07-10 17:40:47',3944,510,'2005-07-11 19:24:47',2,'2006-02-15 21:30:53'),(5852,'2005-07-10 17:43:30',3890,484,'2005-07-15 15:05:30',2,'2006-02-15 21:30:53'),(5853,'2005-07-10 17:45:13',3026,520,'2005-07-17 21:37:13',1,'2006-02-15 21:30:53'),(5854,'2005-07-10 17:47:34',997,547,'2005-07-13 20:14:34',2,'2006-02-15 21:30:53'),(5855,'2005-07-10 17:54:06',2457,166,'2005-07-18 15:41:06',2,'2006-02-15 21:30:53'),(5856,'2005-07-10 17:57:32',497,314,'2005-07-11 13:57:32',1,'2006-02-15 21:30:53'),(5857,'2005-07-10 17:59:29',1265,29,'2005-07-18 18:13:29',1,'2006-02-15 21:30:53'),(5858,'2005-07-10 18:00:07',2913,257,'2005-07-11 20:01:07',2,'2006-02-15 21:30:53'),(5859,'2005-07-10 18:02:02',131,220,'2005-07-11 23:24:02',1,'2006-02-15 21:30:53'),(5860,'2005-07-10 18:08:49',3897,180,'2005-07-16 16:43:49',2,'2006-02-15 21:30:53'),(5861,'2005-07-10 18:14:22',3881,277,'2005-07-14 15:32:22',1,'2006-02-15 21:30:53'),(5862,'2005-07-10 18:20:48',2075,157,'2005-07-17 00:09:48',1,'2006-02-15 21:30:53'),(5863,'2005-07-10 18:25:23',2557,419,'2005-07-15 23:49:23',1,'2006-02-15 21:30:53'),(5864,'2005-07-10 18:29:57',4380,437,'2005-07-19 14:27:57',2,'2006-02-15 21:30:53'),(5865,'2005-07-10 18:31:05',1382,126,'2005-07-12 18:29:05',2,'2006-02-15 21:30:53'),(5866,'2005-07-10 18:35:14',457,484,'2005-07-19 19:41:14',2,'2006-02-15 21:30:53'),(5867,'2005-07-10 18:39:01',730,321,'2005-07-19 21:56:01',2,'2006-02-15 21:30:53'),(5868,'2005-07-10 18:39:16',452,429,'2005-07-15 21:19:16',1,'2006-02-15 21:30:53'),(5869,'2005-07-10 18:40:09',2157,40,'2005-07-17 18:42:09',1,'2006-02-15 21:30:53'),(5870,'2005-07-10 18:40:25',1524,438,'2005-07-12 15:39:25',2,'2006-02-15 21:30:53'),(5871,'2005-07-10 18:46:08',3288,307,'2005-07-16 17:32:08',1,'2006-02-15 21:30:53'),(5872,'2005-07-10 18:54:05',270,364,'2005-07-19 15:41:05',1,'2006-02-15 21:30:53'),(5873,'2005-07-10 19:02:10',3151,354,'2005-07-14 19:13:10',2,'2006-02-15 21:30:53'),(5874,'2005-07-10 19:02:51',2255,131,'2005-07-16 13:14:51',1,'2006-02-15 21:30:53'),(5875,'2005-07-10 19:06:47',964,575,'2005-07-18 17:33:47',2,'2006-02-15 21:30:53'),(5876,'2005-07-10 19:07:15',4445,578,'2005-07-14 17:29:15',2,'2006-02-15 21:30:53'),(5877,'2005-07-10 19:08:51',1520,537,'2005-07-19 19:48:51',1,'2006-02-15 21:30:53'),(5878,'2005-07-10 19:09:57',3805,271,'2005-07-16 17:22:57',1,'2006-02-15 21:30:53'),(5879,'2005-07-10 19:12:47',3851,430,'2005-07-16 16:32:47',1,'2006-02-15 21:30:53'),(5880,'2005-07-10 19:14:58',359,482,'2005-07-17 01:13:58',1,'2006-02-15 21:30:53'),(5881,'2005-07-10 19:19:43',236,25,'2005-07-12 20:11:43',1,'2006-02-15 21:30:53'),(5882,'2005-07-10 19:20:34',2830,319,'2005-07-11 18:39:34',2,'2006-02-15 21:30:53'),(5883,'2005-07-10 19:25:21',2820,17,'2005-07-16 20:50:21',2,'2006-02-15 21:30:53'),(5884,'2005-07-10 19:31:38',916,498,'2005-07-11 20:30:38',1,'2006-02-15 21:30:53'),(5885,'2005-07-10 19:33:50',3129,331,'2005-07-17 00:26:50',2,'2006-02-15 21:30:53'),(5886,'2005-07-10 19:36:25',907,215,'2005-07-11 22:24:25',2,'2006-02-15 21:30:53'),(5887,'2005-07-10 19:45:47',2602,532,'2005-07-15 22:15:47',1,'2006-02-15 21:30:53'),(5888,'2005-07-10 19:52:17',1620,268,'2005-07-18 20:32:17',2,'2006-02-15 21:30:53'),(5889,'2005-07-10 19:54:41',1706,491,'2005-07-12 20:08:41',2,'2006-02-15 21:30:53'),(5890,'2005-07-10 20:00:25',1463,535,'2005-07-18 17:57:25',2,'2006-02-15 21:30:53'),(5891,'2005-07-10 20:01:17',4355,184,'2005-07-12 00:15:17',1,'2006-02-15 21:30:53'),(5892,'2005-07-10 20:02:42',4322,333,'2005-07-11 20:02:42',1,'2006-02-15 21:30:53'),(5893,'2005-07-10 20:05:30',1689,439,'2005-07-14 23:05:30',1,'2006-02-15 21:30:53'),(5894,'2005-07-10 20:09:34',2264,194,'2005-07-17 15:39:34',1,'2006-02-15 21:30:53'),(5895,'2005-07-10 20:13:19',2272,164,'2005-07-17 17:51:19',1,'2006-02-15 21:30:53'),(5896,'2005-07-10 20:15:56',731,357,'2005-07-12 00:39:56',1,'2006-02-15 21:30:53'),(5897,'2005-07-10 20:16:14',740,413,'2005-07-19 15:49:14',2,'2006-02-15 21:30:53'),(5898,'2005-07-10 20:18:09',3257,538,'2005-07-16 14:44:09',1,'2006-02-15 21:30:53'),(5899,'2005-07-10 20:21:52',1391,388,'2005-07-13 00:46:52',1,'2006-02-15 21:30:53'),(5900,'2005-07-10 20:21:54',1081,419,'2005-07-17 00:26:54',1,'2006-02-15 21:30:53'),(5901,'2005-07-10 20:22:12',86,165,'2005-07-19 16:43:12',2,'2006-02-15 21:30:53'),(5902,'2005-07-10 20:31:24',2727,228,'2005-07-11 20:50:24',1,'2006-02-15 21:30:53'),(5903,'2005-07-10 20:39:04',1388,573,'2005-07-11 17:41:04',1,'2006-02-15 21:30:53'),(5904,'2005-07-10 20:39:44',350,531,'2005-07-13 17:57:44',2,'2006-02-15 21:30:53'),(5905,'2005-07-10 20:41:09',3891,10,'2005-07-19 14:49:09',1,'2006-02-15 21:30:53'),(5906,'2005-07-10 20:41:41',514,323,'2005-07-14 00:12:41',2,'2006-02-15 21:30:53'),(5907,'2005-07-10 20:41:41',4432,168,'2005-07-15 21:18:41',2,'2006-02-15 21:30:53'),(5908,'2005-07-10 20:44:14',810,156,'2005-07-13 15:05:14',2,'2006-02-15 21:30:53'),(5909,'2005-07-10 20:46:13',2333,44,'2005-07-14 18:01:13',2,'2006-02-15 21:30:53'),(5910,'2005-07-10 20:51:34',1039,464,'2005-07-19 14:54:34',1,'2006-02-15 21:30:53'),(5911,'2005-07-10 20:51:42',4140,420,'2005-07-14 21:58:42',2,'2006-02-15 21:30:53'),(5912,'2005-07-10 20:58:22',1187,351,'2005-07-17 01:15:22',2,'2006-02-15 21:30:53'),(5913,'2005-07-10 20:58:55',2767,277,'2005-07-13 15:18:55',1,'2006-02-15 21:30:53'),(5914,'2005-07-10 21:01:12',2639,372,'2005-07-16 18:27:12',2,'2006-02-15 21:30:53'),(5915,'2005-07-10 21:12:16',2464,66,'2005-07-15 16:59:16',2,'2006-02-15 21:30:53'),(5916,'2005-07-10 21:26:31',2267,35,'2005-07-19 20:23:31',1,'2006-02-15 21:30:53'),(5917,'2005-07-10 21:30:22',2910,74,'2005-07-12 18:54:22',2,'2006-02-15 21:30:53'),(5918,'2005-07-10 21:32:06',120,34,'2005-07-19 21:35:06',1,'2006-02-15 21:30:53'),(5919,'2005-07-10 21:32:14',164,92,'2005-07-12 16:47:14',1,'2006-02-15 21:30:53'),(5920,'2005-07-10 21:33:58',1893,221,'2005-07-17 19:41:58',2,'2006-02-15 21:30:53'),(5921,'2005-07-10 21:35:12',3920,7,'2005-07-18 19:59:12',1,'2006-02-15 21:30:53'),(5922,'2005-07-10 21:36:53',1392,271,'2005-07-16 02:51:53',1,'2006-02-15 21:30:53'),(5923,'2005-07-10 21:40:06',1817,401,'2005-07-13 00:01:06',1,'2006-02-15 21:30:53'),(5924,'2005-07-10 21:41:23',629,191,'2005-07-16 21:33:23',1,'2006-02-15 21:30:53'),(5925,'2005-07-10 21:41:27',3724,503,'2005-07-18 18:35:27',2,'2006-02-15 21:30:53'),(5926,'2005-07-10 21:53:42',2840,282,'2005-07-20 01:04:42',1,'2006-02-15 21:30:53'),(5927,'2005-07-10 21:57:14',807,70,'2005-07-16 19:32:14',1,'2006-02-15 21:30:53'),(5928,'2005-07-10 21:58:30',4132,50,'2005-07-15 19:41:30',1,'2006-02-15 21:30:53'),(5929,'2005-07-10 21:59:29',4303,54,'2005-07-14 20:20:29',2,'2006-02-15 21:30:53'),(5930,'2005-07-10 21:59:32',2338,254,'2005-07-11 18:40:32',2,'2006-02-15 21:30:53'),(5931,'2005-07-10 22:04:19',2259,341,'2005-07-13 00:45:19',2,'2006-02-15 21:30:53'),(5932,'2005-07-10 22:05:15',2269,523,'2005-07-12 17:04:15',2,'2006-02-15 21:30:53'),(5933,'2005-07-10 22:06:48',4372,419,'2005-07-12 23:58:48',2,'2006-02-15 21:30:53'),(5934,'2005-07-10 22:07:59',3825,576,'2005-07-15 21:07:59',2,'2006-02-15 21:30:53'),(5935,'2005-07-10 22:11:04',3371,258,'2005-07-19 18:12:04',2,'2006-02-15 21:30:53'),(5936,'2005-07-10 22:14:30',1951,522,'2005-07-15 01:32:30',1,'2006-02-15 21:30:53'),(5937,'2005-07-10 22:16:08',1579,580,'2005-07-16 03:08:08',2,'2006-02-15 21:30:53'),(5938,'2005-07-10 22:17:42',2834,236,'2005-07-16 22:38:42',2,'2006-02-15 21:30:53'),(5939,'2005-07-10 22:30:05',4491,207,'2005-07-14 00:02:05',2,'2006-02-15 21:30:53'),(5940,'2005-07-10 22:31:01',3295,292,'2005-07-14 00:52:01',1,'2006-02-15 21:30:53'),(5941,'2005-07-10 22:40:47',492,43,'2005-07-17 00:19:47',2,'2006-02-15 21:30:53'),(5942,'2005-07-10 22:47:17',2861,317,'2005-07-17 01:54:17',2,'2006-02-15 21:30:53'),(5943,'2005-07-10 22:48:13',3019,255,'2005-07-16 01:33:13',1,'2006-02-15 21:30:53'),(5944,'2005-07-10 22:51:44',3904,432,'2005-07-18 17:54:44',2,'2006-02-15 21:30:53'),(5945,'2005-07-10 22:52:42',427,374,'2005-07-11 21:52:42',1,'2006-02-15 21:30:53'),(5946,'2005-07-10 22:57:29',1629,308,'2005-07-12 00:08:29',1,'2006-02-15 21:30:53'),(5947,'2005-07-10 23:07:42',327,331,'2005-07-18 23:13:42',1,'2006-02-15 21:30:53'),(5948,'2005-07-10 23:12:08',3260,57,'2005-07-18 19:06:08',2,'2006-02-15 21:30:53'),(5949,'2005-07-10 23:13:00',4397,496,'2005-07-14 01:10:00',2,'2006-02-15 21:30:53'),(5950,'2005-07-10 23:13:45',4319,585,'2005-07-13 02:35:45',1,'2006-02-15 21:30:53'),(5951,'2005-07-10 23:14:29',2501,589,'2005-07-13 01:01:29',1,'2006-02-15 21:30:53'),(5952,'2005-07-10 23:18:20',3406,595,'2005-07-16 17:42:20',1,'2006-02-15 21:30:53'),(5953,'2005-07-10 23:21:35',992,386,'2005-07-14 20:48:35',2,'2006-02-15 21:30:53'),(5954,'2005-07-10 23:22:01',2627,32,'2005-07-14 04:42:01',2,'2006-02-15 21:30:53'),(5955,'2005-07-10 23:22:10',834,409,'2005-07-17 17:55:10',2,'2006-02-15 21:30:53'),(5956,'2005-07-10 23:23:08',2536,499,'2005-07-13 17:36:08',1,'2006-02-15 21:30:53'),(5957,'2005-07-10 23:24:02',2517,210,'2005-07-12 20:28:02',1,'2006-02-15 21:30:53'),(5958,'2005-07-10 23:31:51',3468,430,'2005-07-19 00:36:51',2,'2006-02-15 21:30:53'),(5959,'2005-07-10 23:35:36',3169,436,'2005-07-13 02:19:36',1,'2006-02-15 21:30:53'),(5960,'2005-07-10 23:38:34',3884,239,'2005-07-11 19:21:34',1,'2006-02-15 21:30:53'),(5961,'2005-07-10 23:43:23',3537,21,'2005-07-15 05:21:23',2,'2006-02-15 21:30:53'),(5962,'2005-07-10 23:45:22',1292,507,'2005-07-13 03:49:22',2,'2006-02-15 21:30:53'),(5963,'2005-07-10 23:47:08',4434,35,'2005-07-12 04:27:08',1,'2006-02-15 21:30:53'),(5964,'2005-07-10 23:47:18',3981,456,'2005-07-12 03:55:18',2,'2006-02-15 21:30:53'),(5965,'2005-07-10 23:51:52',4476,348,'2005-07-11 23:29:52',1,'2006-02-15 21:30:53'),(5966,'2005-07-10 23:59:27',2076,384,'2005-07-14 23:38:27',2,'2006-02-15 21:30:53'),(5967,'2005-07-11 00:02:19',2125,215,'2005-07-18 23:08:19',1,'2006-02-15 21:30:53'),(5968,'2005-07-11 00:03:11',3273,554,'2005-07-19 18:46:11',1,'2006-02-15 21:30:53'),(5969,'2005-07-11 00:03:22',4177,433,'2005-07-18 01:28:22',2,'2006-02-15 21:30:53'),(5970,'2005-07-11 00:04:50',1514,94,'2005-07-19 03:36:50',1,'2006-02-15 21:30:53'),(5971,'2005-07-11 00:05:58',2191,84,'2005-07-19 04:50:58',2,'2006-02-15 21:30:53'),(5972,'2005-07-11 00:08:54',4577,30,'2005-07-17 21:01:54',1,'2006-02-15 21:30:53'),(5973,'2005-07-11 00:09:17',1194,165,'2005-07-14 19:18:17',1,'2006-02-15 21:30:53'),(5974,'2005-07-11 00:10:37',3984,517,'2005-07-18 18:48:37',2,'2006-02-15 21:30:53'),(5975,'2005-07-11 00:14:19',2997,15,'2005-07-16 04:21:19',1,'2006-02-15 21:30:53'),(5976,'2005-07-11 00:16:35',1693,505,'2005-07-20 01:30:35',2,'2006-02-15 21:30:53'),(5977,'2005-07-11 00:16:38',4011,484,'2005-07-19 21:00:38',1,'2006-02-15 21:30:53'),(5978,'2005-07-11 00:16:54',1720,508,'2005-07-19 18:55:54',1,'2006-02-15 21:30:53'),(5979,'2005-07-11 00:17:09',1736,251,'2005-07-14 00:38:09',1,'2006-02-15 21:30:53'),(5980,'2005-07-11 00:18:21',1777,309,'2005-07-14 21:26:21',1,'2006-02-15 21:30:53'),(5981,'2005-07-11 00:19:04',2151,241,'2005-07-13 19:10:04',1,'2006-02-15 21:30:53'),(5982,'2005-07-11 00:24:44',2329,403,'2005-07-14 04:42:44',2,'2006-02-15 21:30:53'),(5983,'2005-07-11 00:34:11',351,127,'2005-07-15 05:37:11',1,'2006-02-15 21:30:53'),(5984,'2005-07-11 00:44:36',2801,178,'2005-07-15 00:04:36',1,'2006-02-15 21:30:53'),(5985,'2005-07-11 00:51:58',1108,506,'2005-07-14 22:02:58',2,'2006-02-15 21:30:53'),(5986,'2005-07-11 00:54:56',1624,171,'2005-07-13 22:52:56',2,'2006-02-15 21:30:53'),(5987,'2005-07-11 00:55:31',1000,447,'2005-07-16 06:28:31',2,'2006-02-15 21:30:53'),(5988,'2005-07-11 00:55:38',151,158,'2005-07-13 21:36:38',2,'2006-02-15 21:30:53'),(5989,'2005-07-11 00:57:53',696,283,'2005-07-15 02:24:53',1,'2006-02-15 21:30:53'),(5990,'2005-07-11 01:03:14',1561,432,'2005-07-15 19:32:14',1,'2006-02-15 21:30:53'),(5991,'2005-07-11 01:03:38',3623,590,'2005-07-12 22:32:38',2,'2006-02-15 21:30:53'),(5992,'2005-07-11 01:06:21',4216,54,'2005-07-13 19:15:21',2,'2006-02-15 21:30:53'),(5993,'2005-07-11 01:06:41',3588,529,'2005-07-14 19:19:41',1,'2006-02-15 21:30:53'),(5994,'2005-07-11 01:14:10',4287,295,'2005-07-12 00:42:10',2,'2006-02-15 21:30:53'),(5995,'2005-07-11 01:15:39',4357,360,'2005-07-20 05:01:39',2,'2006-02-15 21:30:53'),(5996,'2005-07-11 01:18:33',4263,223,'2005-07-17 04:18:33',1,'2006-02-15 21:30:53'),(5997,'2005-07-11 01:19:50',3542,128,'2005-07-16 06:29:50',1,'2006-02-15 21:30:53'),(5998,'2005-07-11 01:20:46',1458,250,'2005-07-15 21:41:46',1,'2006-02-15 21:30:53'),(5999,'2005-07-11 01:21:22',211,450,'2005-07-19 01:35:22',1,'2006-02-15 21:30:53'),(6000,'2005-07-11 01:23:06',1986,371,'2005-07-12 04:39:06',2,'2006-02-15 21:30:53'),(6001,'2005-07-11 01:24:44',1779,45,'2005-07-11 22:55:44',1,'2006-02-15 21:30:53'),(6002,'2005-07-11 01:27:49',4422,45,'2005-07-12 06:02:49',1,'2006-02-15 21:30:53'),(6003,'2005-07-11 01:28:33',296,527,'2005-07-17 21:24:33',1,'2006-02-15 21:30:53'),(6004,'2005-07-11 01:34:25',1756,204,'2005-07-18 00:48:25',2,'2006-02-15 21:30:53'),(6005,'2005-07-11 01:36:42',809,78,'2005-07-14 04:47:42',2,'2006-02-15 21:30:53'),(6006,'2005-07-11 01:38:42',4201,399,'2005-07-17 05:18:42',2,'2006-02-15 21:30:53'),(6007,'2005-07-11 01:43:06',4393,289,'2005-07-17 04:46:06',1,'2006-02-15 21:30:53'),(6008,'2005-07-11 01:51:29',1227,216,'2005-07-18 01:39:29',1,'2006-02-15 21:30:53'),(6009,'2005-07-11 01:51:58',494,470,'2005-07-18 07:12:58',2,'2006-02-15 21:30:53'),(6010,'2005-07-11 01:52:28',771,285,'2005-07-13 03:13:28',1,'2006-02-15 21:30:53'),(6011,'2005-07-11 01:54:48',3899,527,'2005-07-18 07:17:48',2,'2006-02-15 21:30:53'),(6012,'2005-07-11 02:00:12',2609,258,'2005-07-17 02:49:12',2,'2006-02-15 21:30:53'),(6013,'2005-07-11 02:02:03',3774,543,'2005-07-14 02:07:03',1,'2006-02-15 21:30:53'),(6014,'2005-07-11 02:02:55',3748,397,'2005-07-12 23:49:55',1,'2006-02-15 21:30:53'),(6015,'2005-07-11 02:04:12',295,596,'2005-07-13 02:43:12',2,'2006-02-15 21:30:53'),(6016,'2005-07-11 02:04:45',651,296,'2005-07-17 22:22:45',1,'2006-02-15 21:30:53'),(6017,'2005-07-11 02:05:32',4088,596,'2005-07-14 22:50:32',1,'2006-02-15 21:30:53'),(6018,'2005-07-11 02:06:36',4555,500,'2005-07-12 02:16:36',2,'2006-02-15 21:30:53'),(6019,'2005-07-11 02:08:29',3483,9,'2005-07-13 02:19:29',2,'2006-02-15 21:30:53'),(6020,'2005-07-11 02:08:55',1974,71,'2005-07-16 22:07:55',1,'2006-02-15 21:30:53'),(6021,'2005-07-11 02:10:18',3949,173,'2005-07-13 05:19:18',1,'2006-02-15 21:30:53'),(6022,'2005-07-11 02:15:53',2435,469,'2005-07-13 03:40:53',2,'2006-02-15 21:30:53'),(6023,'2005-07-11 02:15:57',3794,456,'2005-07-15 21:30:57',2,'2006-02-15 21:30:53'),(6024,'2005-07-11 02:16:47',2923,271,'2005-07-12 05:54:47',1,'2006-02-15 21:30:53'),(6025,'2005-07-11 02:18:13',3306,113,'2005-07-11 23:30:13',1,'2006-02-15 21:30:53'),(6026,'2005-07-11 02:21:43',3936,409,'2005-07-13 03:49:43',1,'2006-02-15 21:30:53'),(6027,'2005-07-11 02:26:29',4536,513,'2005-07-18 23:05:29',1,'2006-02-15 21:30:53'),(6028,'2005-07-11 02:31:44',784,450,'2005-07-14 03:18:44',1,'2006-02-15 21:30:53'),(6029,'2005-07-11 02:36:46',2030,520,'2005-07-14 20:51:46',2,'2006-02-15 21:30:53'),(6030,'2005-07-11 02:37:51',95,36,'2005-07-16 22:34:51',2,'2006-02-15 21:30:53'),(6031,'2005-07-11 02:42:14',1530,224,'2005-07-14 03:24:14',2,'2006-02-15 21:30:53'),(6032,'2005-07-11 02:49:01',3792,28,'2005-07-18 05:05:01',2,'2006-02-15 21:30:53'),(6033,'2005-07-11 02:59:34',2819,322,'2005-07-16 03:48:34',2,'2006-02-15 21:30:53'),(6034,'2005-07-11 03:00:50',1735,324,'2005-07-16 06:19:50',1,'2006-02-15 21:30:53'),(6035,'2005-07-11 03:01:45',3474,176,'2005-07-14 01:04:45',2,'2006-02-15 21:30:53'),(6036,'2005-07-11 03:02:28',2553,297,'2005-07-15 22:12:28',2,'2006-02-15 21:30:53'),(6037,'2005-07-11 03:06:54',1886,386,'2005-07-12 22:46:54',2,'2006-02-15 21:30:53'),(6038,'2005-07-11 03:10:37',1555,243,'2005-07-19 05:14:37',2,'2006-02-15 21:30:53'),(6039,'2005-07-11 03:12:19',1776,137,'2005-07-19 05:46:19',1,'2006-02-15 21:30:53'),(6040,'2005-07-11 03:14:26',2161,511,'2005-07-14 01:12:26',2,'2006-02-15 21:30:53'),(6041,'2005-07-11 03:14:58',2815,551,'2005-07-13 00:48:58',2,'2006-02-15 21:30:53'),(6042,'2005-07-11 03:17:04',2153,5,'2005-07-19 07:08:04',1,'2006-02-15 21:30:53'),(6043,'2005-07-11 03:18:10',3303,430,'2005-07-12 05:50:10',1,'2006-02-15 21:30:53'),(6044,'2005-07-11 03:18:39',1270,481,'2005-07-13 06:58:39',2,'2006-02-15 21:30:53'),(6045,'2005-07-11 03:21:05',2003,39,'2005-07-17 23:10:05',1,'2006-02-15 21:30:53'),(6046,'2005-07-11 03:21:49',1935,569,'2005-07-19 23:58:49',1,'2006-02-15 21:30:53'),(6047,'2005-07-11 03:27:01',4147,235,'2005-07-16 06:42:01',2,'2006-02-15 21:30:53'),(6048,'2005-07-11 03:32:23',975,154,'2005-07-14 07:39:23',1,'2006-02-15 21:30:53'),(6049,'2005-07-11 03:32:32',2582,236,'2005-07-15 06:57:32',2,'2006-02-15 21:30:53'),(6050,'2005-07-11 03:34:29',825,527,'2005-07-15 02:55:29',1,'2006-02-15 21:30:53'),(6051,'2005-07-11 03:46:41',2675,435,'2005-07-11 22:36:41',2,'2006-02-15 21:30:53'),(6052,'2005-07-11 03:51:27',881,75,'2005-07-16 02:55:27',2,'2006-02-15 21:30:53'),(6053,'2005-07-11 03:51:59',2836,237,'2005-07-19 09:13:59',2,'2006-02-15 21:30:53'),(6054,'2005-07-11 03:58:39',1176,354,'2005-07-13 23:08:39',1,'2006-02-15 21:30:53'),(6055,'2005-07-11 03:59:08',595,125,'2005-07-18 05:35:08',2,'2006-02-15 21:30:53'),(6056,'2005-07-11 04:01:27',3069,145,'2005-07-12 04:14:27',1,'2006-02-15 21:30:53'),(6057,'2005-07-11 04:03:40',1340,187,'2005-07-17 01:34:40',2,'2006-02-15 21:30:53'),(6058,'2005-07-11 04:03:51',3761,498,'2005-07-14 03:52:51',1,'2006-02-15 21:30:53'),(6059,'2005-07-11 04:03:54',1437,394,'2005-07-18 01:35:54',1,'2006-02-15 21:30:53'),(6060,'2005-07-11 04:06:17',3146,342,'2005-07-12 03:05:17',1,'2006-02-15 21:30:53'),(6061,'2005-07-11 04:06:25',1859,392,'2005-07-11 23:11:25',1,'2006-02-15 21:30:53'),(6062,'2005-07-11 04:11:58',3301,408,'2005-07-15 05:00:58',1,'2006-02-15 21:30:53'),(6063,'2005-07-11 04:16:51',1715,519,'2005-07-13 08:35:51',2,'2006-02-15 21:30:53'),(6064,'2005-07-11 04:23:18',265,297,'2005-07-19 02:21:18',1,'2006-02-15 21:30:53'),(6065,'2005-07-11 04:25:51',1007,562,'2005-07-17 08:19:51',1,'2006-02-15 21:30:53'),(6066,'2005-07-11 04:32:42',1877,155,'2005-07-15 03:56:42',2,'2006-02-15 21:30:53'),(6067,'2005-07-11 04:34:49',2097,186,'2005-07-16 09:33:49',1,'2006-02-15 21:30:53'),(6068,'2005-07-11 04:41:09',2331,265,'2005-07-14 04:45:09',1,'2006-02-15 21:30:53'),(6069,'2005-07-11 04:44:59',256,553,'2005-07-13 01:00:59',1,'2006-02-15 21:30:53'),(6070,'2005-07-11 04:47:42',1679,267,'2005-07-13 01:49:42',2,'2006-02-15 21:30:53'),(6071,'2005-07-11 04:50:03',889,179,'2005-07-19 23:52:03',1,'2006-02-15 21:30:53'),(6072,'2005-07-11 04:52:40',1790,339,'2005-07-18 01:02:40',1,'2006-02-15 21:30:53'),(6073,'2005-07-11 04:54:31',4243,466,'2005-07-20 07:23:31',1,'2006-02-15 21:30:53'),(6074,'2005-07-11 04:59:56',2876,259,'2005-07-13 23:31:56',1,'2006-02-15 21:30:53'),(6075,'2005-07-11 05:03:03',2160,283,'2005-07-12 01:28:03',1,'2006-02-15 21:30:53'),(6076,'2005-07-11 05:05:30',1792,143,'2005-07-18 04:22:30',1,'2006-02-15 21:30:53'),(6077,'2005-07-11 05:06:08',2154,542,'2005-07-16 10:29:08',1,'2006-02-15 21:30:53'),(6078,'2005-07-11 05:06:52',3985,91,'2005-07-17 06:13:52',2,'2006-02-15 21:30:53'),(6079,'2005-07-11 05:07:14',1494,119,'2005-07-17 08:45:14',1,'2006-02-15 21:30:53'),(6080,'2005-07-11 05:08:11',2682,115,'2005-07-16 09:54:11',2,'2006-02-15 21:30:53'),(6081,'2005-07-11 05:11:09',2286,72,'2005-07-13 05:33:09',2,'2006-02-15 21:30:53'),(6082,'2005-07-11 05:12:41',1091,82,'2005-07-16 03:40:41',2,'2006-02-15 21:30:53'),(6083,'2005-07-11 05:12:49',3183,285,'2005-07-15 00:46:49',2,'2006-02-15 21:30:53'),(6084,'2005-07-11 05:16:20',1334,479,'2005-07-19 01:38:20',2,'2006-02-15 21:30:53'),(6085,'2005-07-11 05:24:36',312,155,'2005-07-16 03:49:36',2,'2006-02-15 21:30:53'),(6086,'2005-07-11 05:29:03',1505,420,'2005-07-16 01:17:03',1,'2006-02-15 21:30:53'),(6087,'2005-07-11 05:29:22',198,155,'2005-07-12 23:33:22',2,'2006-02-15 21:30:53'),(6088,'2005-07-11 05:40:35',3796,498,'2005-07-17 07:14:35',2,'2006-02-15 21:30:53'),(6089,'2005-07-11 05:45:59',3298,580,'2005-07-17 11:04:59',2,'2006-02-15 21:30:53'),(6090,'2005-07-11 05:47:08',71,241,'2005-07-20 07:52:08',2,'2006-02-15 21:30:53'),(6091,'2005-07-11 05:49:18',580,383,'2005-07-15 07:26:18',1,'2006-02-15 21:30:53'),(6092,'2005-07-11 05:51:31',2129,75,'2005-07-17 03:42:31',1,'2006-02-15 21:30:53'),(6093,'2005-07-11 05:52:50',1868,117,'2005-07-20 11:45:50',1,'2006-02-15 21:30:53'),(6094,'2005-07-11 05:54:42',2684,285,'2005-07-18 08:19:42',2,'2006-02-15 21:30:53'),(6095,'2005-07-11 06:06:41',727,501,'2005-07-19 06:14:41',1,'2006-02-15 21:30:53'),(6096,'2005-07-11 06:18:04',2720,420,'2005-07-14 01:15:04',1,'2006-02-15 21:30:53'),(6097,'2005-07-11 06:21:43',297,416,'2005-07-16 10:04:43',1,'2006-02-15 21:30:53'),(6098,'2005-07-11 06:23:28',3016,525,'2005-07-17 04:05:28',1,'2006-02-15 21:30:53'),(6099,'2005-07-11 06:24:44',3865,469,'2005-07-15 08:03:44',2,'2006-02-15 21:30:53'),(6100,'2005-07-11 06:40:31',3485,16,'2005-07-14 10:59:31',2,'2006-02-15 21:30:53'),(6101,'2005-07-11 06:50:33',2618,508,'2005-07-18 01:52:33',2,'2006-02-15 21:30:53'),(6102,'2005-07-11 06:53:09',4305,146,'2005-07-17 07:05:09',1,'2006-02-15 21:30:53'),(6103,'2005-07-11 06:59:55',262,540,'2005-07-16 09:30:55',1,'2006-02-15 21:30:53'),(6104,'2005-07-11 07:01:35',3531,389,'2005-07-17 02:29:35',1,'2006-02-15 21:30:53'),(6105,'2005-07-11 07:03:19',3501,595,'2005-07-19 06:46:19',1,'2006-02-15 21:30:53'),(6106,'2005-07-11 07:05:06',2714,185,'2005-07-20 09:27:06',1,'2006-02-15 21:30:53'),(6107,'2005-07-11 07:07:09',3798,304,'2005-07-14 07:32:09',2,'2006-02-15 21:30:53'),(6108,'2005-07-11 07:19:24',4296,572,'2005-07-13 12:38:24',2,'2006-02-15 21:30:53'),(6109,'2005-07-11 07:20:57',3603,163,'2005-07-13 07:29:57',2,'2006-02-15 21:30:53'),(6110,'2005-07-11 07:23:47',541,405,'2005-07-20 03:17:47',2,'2006-02-15 21:30:53'),(6111,'2005-07-11 07:26:57',3504,300,'2005-07-13 10:43:57',2,'2006-02-15 21:30:53'),(6112,'2005-07-11 07:28:05',1311,366,'2005-07-18 07:29:05',1,'2006-02-15 21:30:53'),(6113,'2005-07-11 07:31:08',4437,115,'2005-07-20 11:01:08',2,'2006-02-15 21:30:53'),(6114,'2005-07-11 07:33:48',479,404,'2005-07-18 06:13:48',2,'2006-02-15 21:30:53'),(6115,'2005-07-11 07:36:50',3415,27,'2005-07-13 11:30:50',1,'2006-02-15 21:30:53'),(6116,'2005-07-11 07:37:38',247,381,'2005-07-14 11:53:38',2,'2006-02-15 21:30:53'),(6117,'2005-07-11 07:39:38',2613,135,'2005-07-18 12:07:38',2,'2006-02-15 21:30:53'),(6118,'2005-07-11 07:43:08',3013,13,'2005-07-20 03:17:08',1,'2006-02-15 21:30:53'),(6119,'2005-07-11 07:44:46',4281,472,'2005-07-20 04:41:46',2,'2006-02-15 21:30:53'),(6120,'2005-07-11 07:49:53',3299,268,'2005-07-19 04:56:53',2,'2006-02-15 21:30:53'),(6121,'2005-07-11 07:55:27',1613,347,'2005-07-16 03:43:27',2,'2006-02-15 21:30:53'),(6122,'2005-07-11 07:58:07',2212,32,'2005-07-16 09:52:07',1,'2006-02-15 21:30:53'),(6123,'2005-07-11 08:02:27',1354,200,'2005-07-15 08:58:27',2,'2006-02-15 21:30:53'),(6124,'2005-07-11 08:02:32',2022,368,'2005-07-12 05:58:32',2,'2006-02-15 21:30:53'),(6125,'2005-07-11 08:03:35',2439,307,'2005-07-18 12:46:35',1,'2006-02-15 21:30:53'),(6126,'2005-07-11 08:06:56',1069,230,'2005-07-16 11:42:56',1,'2006-02-15 21:30:53'),(6127,'2005-07-11 08:06:59',285,355,'2005-07-12 09:01:59',1,'2006-02-15 21:30:53'),(6128,'2005-07-11 08:15:08',2050,18,'2005-07-13 03:36:08',1,'2006-02-15 21:30:53'),(6129,'2005-07-11 08:15:09',3875,222,'2005-07-18 13:00:09',1,'2006-02-15 21:30:53'),(6130,'2005-07-11 08:19:56',2547,538,'2005-07-16 12:02:56',2,'2006-02-15 21:30:53'),(6131,'2005-07-11 08:22:05',3313,107,'2005-07-14 07:40:05',1,'2006-02-15 21:30:53'),(6132,'2005-07-11 08:24:44',3229,319,'2005-07-13 06:41:44',1,'2006-02-15 21:30:53'),(6133,'2005-07-11 08:25:22',1992,107,'2005-07-13 13:17:22',1,'2006-02-15 21:30:53'),(6134,'2005-07-11 08:28:19',3225,305,'2005-07-18 09:20:19',2,'2006-02-15 21:30:53'),(6135,'2005-07-11 08:32:23',833,325,'2005-07-17 08:43:23',1,'2006-02-15 21:30:53'),(6136,'2005-07-11 08:34:09',205,346,'2005-07-14 06:11:09',1,'2006-02-15 21:30:53'),(6137,'2005-07-11 08:34:20',2029,67,'2005-07-13 03:31:20',2,'2006-02-15 21:30:53'),(6138,'2005-07-11 08:36:04',1808,438,'2005-07-13 10:30:04',2,'2006-02-15 21:30:53'),(6139,'2005-07-11 08:39:33',3065,206,'2005-07-17 08:00:33',2,'2006-02-15 21:30:53'),(6140,'2005-07-11 08:40:47',2749,363,'2005-07-14 07:26:47',1,'2006-02-15 21:30:53'),(6141,'2005-07-11 08:52:16',2279,228,'2005-07-17 03:00:16',1,'2006-02-15 21:30:53'),(6142,'2005-07-11 08:54:09',1722,136,'2005-07-18 05:23:09',2,'2006-02-15 21:30:53'),(6143,'2005-07-11 09:02:37',1030,169,'2005-07-19 05:57:37',2,'2006-02-15 21:30:53'),(6144,'2005-07-11 09:02:53',1077,554,'2005-07-15 10:58:53',2,'2006-02-15 21:30:53'),(6145,'2005-07-11 09:07:01',1359,540,'2005-07-19 08:21:01',1,'2006-02-15 21:30:53'),(6146,'2005-07-11 09:09:59',3374,11,'2005-07-20 11:42:59',2,'2006-02-15 21:30:53'),(6147,'2005-07-11 09:13:08',910,35,'2005-07-17 03:48:08',1,'2006-02-15 21:30:53'),(6148,'2005-07-11 09:14:22',4318,410,'2005-07-12 08:01:22',1,'2006-02-15 21:30:53'),(6149,'2005-07-11 09:19:31',4337,26,'2005-07-17 14:45:31',2,'2006-02-15 21:30:53'),(6150,'2005-07-11 09:23:56',1110,418,'2005-07-15 10:56:56',2,'2006-02-15 21:30:53'),(6151,'2005-07-11 09:25:17',352,476,'2005-07-12 05:11:17',1,'2006-02-15 21:30:53'),(6152,'2005-07-11 09:25:52',560,361,'2005-07-17 07:40:52',2,'2006-02-15 21:30:53'),(6153,'2005-07-11 09:31:04',105,47,'2005-07-19 03:41:04',1,'2006-02-15 21:30:53'),(6154,'2005-07-11 09:32:19',2717,368,'2005-07-16 15:10:19',1,'2006-02-15 21:30:53'),(6155,'2005-07-11 09:45:31',785,229,'2005-07-18 08:09:31',1,'2006-02-15 21:30:53'),(6156,'2005-07-11 09:45:48',302,297,'2005-07-15 04:51:48',1,'2006-02-15 21:30:53'),(6157,'2005-07-11 09:48:16',4481,133,'2005-07-16 05:00:16',2,'2006-02-15 21:30:53'),(6158,'2005-07-11 09:50:24',3954,92,'2005-07-13 04:49:24',2,'2006-02-15 21:30:53'),(6159,'2005-07-11 09:55:34',126,225,'2005-07-13 10:01:34',2,'2006-02-15 21:30:53'),(6160,'2005-07-11 10:08:13',2716,110,'2005-07-14 08:18:13',1,'2006-02-15 21:30:53'),(6161,'2005-07-11 10:11:54',3681,524,'2005-07-15 12:12:54',2,'2006-02-15 21:30:53'),(6162,'2005-07-11 10:12:30',786,79,'2005-07-19 06:02:30',2,'2006-02-15 21:30:53'),(6163,'2005-07-11 10:13:46',1330,1,'2005-07-19 13:15:46',2,'2006-02-15 21:30:53'),(6164,'2005-07-11 10:16:23',2755,47,'2005-07-14 11:21:23',1,'2006-02-15 21:30:53'),(6165,'2005-07-11 10:17:29',3540,9,'2005-07-17 07:27:29',1,'2006-02-15 21:30:53'),(6166,'2005-07-11 10:19:05',967,503,'2005-07-12 14:30:05',1,'2006-02-15 21:30:53'),(6167,'2005-07-11 10:21:21',3255,200,'2005-07-14 15:38:21',1,'2006-02-15 21:30:53'),(6168,'2005-07-11 10:21:38',284,77,'2005-07-14 09:55:38',2,'2006-02-15 21:30:53'),(6169,'2005-07-11 10:25:56',2781,148,'2005-07-19 07:18:56',2,'2006-02-15 21:30:53'),(6170,'2005-07-11 10:29:21',278,580,'2005-07-16 05:13:21',2,'2006-02-15 21:30:53'),(6171,'2005-07-11 10:29:35',448,491,'2005-07-16 12:01:35',1,'2006-02-15 21:30:53'),(6172,'2005-07-11 10:32:09',3514,219,'2005-07-14 16:23:09',1,'2006-02-15 21:30:53'),(6173,'2005-07-11 10:33:11',4252,419,'2005-07-15 10:57:11',1,'2006-02-15 21:30:53'),(6174,'2005-07-11 10:36:28',3123,7,'2005-07-18 16:19:28',2,'2006-02-15 21:30:53'),(6175,'2005-07-11 10:44:37',3037,195,'2005-07-15 08:13:37',1,'2006-02-15 21:30:53'),(6176,'2005-07-11 10:48:21',2969,279,'2005-07-12 15:54:21',2,'2006-02-15 21:30:53'),(6177,'2005-07-11 10:53:49',313,589,'2005-07-17 14:54:49',1,'2006-02-15 21:30:53'),(6178,'2005-07-11 10:59:09',2777,91,'2005-07-16 11:19:09',2,'2006-02-15 21:30:53'),(6179,'2005-07-11 10:59:59',3665,42,'2005-07-17 06:02:59',1,'2006-02-15 21:30:53'),(6180,'2005-07-11 11:06:50',4401,351,'2005-07-19 09:03:50',2,'2006-02-15 21:30:53'),(6181,'2005-07-11 11:10:11',4398,200,'2005-07-15 09:33:11',1,'2006-02-15 21:30:53'),(6182,'2005-07-11 11:11:38',2562,540,'2005-07-17 08:33:38',2,'2006-02-15 21:30:53'),(6183,'2005-07-11 11:14:35',856,402,'2005-07-16 15:35:35',1,'2006-02-15 21:30:53'),(6184,'2005-07-11 11:19:21',1131,146,'2005-07-19 07:35:21',1,'2006-02-15 21:30:53'),(6185,'2005-07-11 11:25:09',4331,294,'2005-07-18 12:09:09',2,'2006-02-15 21:30:53'),(6186,'2005-07-11 11:26:41',2086,128,'2005-07-17 12:02:41',2,'2006-02-15 21:30:53'),(6187,'2005-07-11 11:28:51',3344,500,'2005-07-12 15:44:51',1,'2006-02-15 21:30:53'),(6188,'2005-07-11 11:31:47',189,114,'2005-07-15 09:28:47',1,'2006-02-15 21:30:53'),(6189,'2005-07-11 11:36:03',3800,552,'2005-07-20 15:33:03',2,'2006-02-15 21:30:53'),(6190,'2005-07-11 11:36:18',2564,321,'2005-07-19 17:05:18',2,'2006-02-15 21:30:53'),(6191,'2005-07-11 11:37:52',3448,480,'2005-07-17 12:45:52',1,'2006-02-15 21:30:53'),(6192,'2005-07-11 11:44:41',4573,314,'2005-07-19 10:12:41',1,'2006-02-15 21:30:53'),(6193,'2005-07-11 11:46:57',465,189,'2005-07-19 14:11:57',2,'2006-02-15 21:30:53'),(6194,'2005-07-11 11:51:00',1049,83,'2005-07-15 12:34:00',2,'2006-02-15 21:30:53'),(6195,'2005-07-11 12:00:32',4193,319,'2005-07-16 15:00:32',2,'2006-02-15 21:30:53'),(6196,'2005-07-11 12:05:46',995,429,'2005-07-18 08:27:46',2,'2006-02-15 21:30:53'),(6197,'2005-07-11 12:09:51',4156,596,'2005-07-12 06:15:51',1,'2006-02-15 21:30:53'),(6198,'2005-07-11 12:12:17',3345,470,'2005-07-18 07:40:17',2,'2006-02-15 21:30:53'),(6199,'2005-07-11 12:16:03',4329,80,'2005-07-18 15:33:03',2,'2006-02-15 21:30:53'),(6200,'2005-07-11 12:16:42',3258,137,'2005-07-17 09:27:42',2,'2006-02-15 21:30:53'),(6201,'2005-07-11 12:18:07',4530,559,'2005-07-12 12:11:07',2,'2006-02-15 21:30:53'),(6202,'2005-07-11 12:24:25',1424,373,'2005-07-18 08:13:25',1,'2006-02-15 21:30:53'),(6203,'2005-07-11 12:28:57',1001,408,'2005-07-15 14:10:57',1,'2006-02-15 21:30:53'),(6204,'2005-07-11 12:29:22',2572,362,'2005-07-13 10:41:22',2,'2006-02-15 21:30:53'),(6205,'2005-07-11 12:31:24',3442,303,'2005-07-13 11:31:24',2,'2006-02-15 21:30:53'),(6206,'2005-07-11 12:32:14',1368,459,'2005-07-15 15:01:14',2,'2006-02-15 21:30:53'),(6207,'2005-07-11 12:34:24',3226,143,'2005-07-14 10:15:24',2,'2006-02-15 21:30:53'),(6208,'2005-07-11 12:34:56',672,31,'2005-07-19 15:17:56',1,'2006-02-15 21:30:53'),(6209,'2005-07-11 12:36:05',3091,219,'2005-07-17 14:48:05',2,'2006-02-15 21:30:53'),(6210,'2005-07-11 12:36:43',931,209,'2005-07-17 17:45:43',2,'2006-02-15 21:30:53'),(6211,'2005-07-11 12:39:01',2699,6,'2005-07-20 15:59:01',2,'2006-02-15 21:30:53'),(6212,'2005-07-11 12:40:48',3962,337,'2005-07-15 17:49:48',2,'2006-02-15 21:30:53'),(6213,'2005-07-11 12:43:07',485,23,'2005-07-16 07:23:07',2,'2006-02-15 21:30:53'),(6214,'2005-07-11 12:49:48',1258,49,'2005-07-18 07:41:48',2,'2006-02-15 21:30:53'),(6215,'2005-07-11 12:52:36',316,390,'2005-07-12 08:33:36',1,'2006-02-15 21:30:53'),(6216,'2005-07-11 12:57:05',3571,387,'2005-07-13 12:31:05',1,'2006-02-15 21:30:53'),(6217,'2005-07-11 13:13:45',1090,177,'2005-07-19 16:37:45',2,'2006-02-15 21:30:53'),(6218,'2005-07-11 13:14:58',815,410,'2005-07-16 08:13:58',2,'2006-02-15 21:30:53'),(6219,'2005-07-11 13:18:37',38,303,'2005-07-13 13:18:37',2,'2006-02-15 21:30:53'),(6220,'2005-07-11 13:22:06',1717,421,'2005-07-12 17:46:06',2,'2006-02-15 21:30:53'),(6221,'2005-07-11 13:24:27',1699,393,'2005-07-15 17:51:27',1,'2006-02-15 21:30:53'),(6222,'2005-07-11 13:25:49',2066,386,'2005-07-13 14:32:49',1,'2006-02-15 21:30:53'),(6223,'2005-07-11 13:27:09',3754,192,'2005-07-12 14:02:09',1,'2006-02-15 21:30:53'),(6224,'2005-07-11 13:42:18',3274,475,'2005-07-16 09:28:18',1,'2006-02-15 21:30:53'),(6225,'2005-07-11 13:45:14',2483,204,'2005-07-14 10:23:14',1,'2006-02-15 21:30:53'),(6226,'2005-07-11 13:48:11',2758,134,'2005-07-15 17:18:11',2,'2006-02-15 21:30:53'),(6227,'2005-07-11 13:56:46',1654,210,'2005-07-18 12:53:46',1,'2006-02-15 21:30:53'),(6228,'2005-07-11 13:58:36',2281,367,'2005-07-17 19:03:36',2,'2006-02-15 21:30:53'),(6229,'2005-07-11 13:59:50',3137,399,'2005-07-20 09:26:50',1,'2006-02-15 21:30:53'),(6230,'2005-07-11 14:02:19',2260,490,'2005-07-17 08:11:19',2,'2006-02-15 21:30:53'),(6231,'2005-07-11 14:02:36',2526,122,'2005-07-13 19:04:36',2,'2006-02-15 21:30:53'),(6232,'2005-07-11 14:08:27',2492,590,'2005-07-20 19:34:27',2,'2006-02-15 21:30:53'),(6233,'2005-07-11 14:10:47',3731,378,'2005-07-15 15:13:47',2,'2006-02-15 21:30:53'),(6234,'2005-07-11 14:16:10',2911,232,'2005-07-19 19:55:10',1,'2006-02-15 21:30:53'),(6235,'2005-07-11 14:17:51',2659,379,'2005-07-17 11:14:51',2,'2006-02-15 21:30:53'),(6236,'2005-07-11 14:18:17',3813,338,'2005-07-14 08:47:17',2,'2006-02-15 21:30:53'),(6237,'2005-07-11 14:19:12',2215,166,'2005-07-15 15:05:12',1,'2006-02-15 21:30:53'),(6238,'2005-07-11 14:20:18',3749,23,'2005-07-14 18:34:18',1,'2006-02-15 21:30:53'),(6239,'2005-07-11 14:20:48',4107,132,'2005-07-17 13:41:48',2,'2006-02-15 21:30:53'),(6240,'2005-07-11 14:32:41',640,524,'2005-07-20 18:38:41',1,'2006-02-15 21:30:53'),(6241,'2005-07-11 14:40:48',4449,74,'2005-07-18 09:51:48',1,'2006-02-15 21:30:53'),(6242,'2005-07-11 14:45:04',670,245,'2005-07-12 18:34:04',2,'2006-02-15 21:30:53'),(6243,'2005-07-11 14:53:25',3456,26,'2005-07-15 09:26:25',2,'2006-02-15 21:30:53'),(6244,'2005-07-11 14:53:38',1558,383,'2005-07-12 16:42:38',1,'2006-02-15 21:30:53'),(6245,'2005-07-11 14:56:57',512,241,'2005-07-16 14:35:57',1,'2006-02-15 21:30:53'),(6246,'2005-07-11 14:57:51',2376,172,'2005-07-19 19:10:51',2,'2006-02-15 21:30:53'),(6247,'2005-07-11 15:00:05',2504,589,'2005-07-18 13:47:05',1,'2006-02-15 21:30:53'),(6248,'2005-07-11 15:01:54',2686,6,'2005-07-19 16:58:54',1,'2006-02-15 21:30:53'),(6249,'2005-07-11 15:02:02',4334,30,'2005-07-14 11:37:02',2,'2006-02-15 21:30:53'),(6250,'2005-07-11 15:02:04',4087,458,'2005-07-17 10:54:04',1,'2006-02-15 21:30:53'),(6251,'2005-07-11 15:06:20',3956,230,'2005-07-18 20:11:20',2,'2006-02-15 21:30:53'),(6252,'2005-07-11 15:06:29',1294,295,'2005-07-16 14:07:29',1,'2006-02-15 21:30:53'),(6253,'2005-07-11 15:07:19',1425,570,'2005-07-13 11:00:19',1,'2006-02-15 21:30:53'),(6254,'2005-07-11 15:10:18',2038,20,'2005-07-17 14:20:18',2,'2006-02-15 21:30:53'),(6255,'2005-07-11 15:11:33',1459,319,'2005-07-15 19:55:33',2,'2006-02-15 21:30:53'),(6256,'2005-07-11 15:19:22',480,307,'2005-07-13 12:43:22',1,'2006-02-15 21:30:53'),(6257,'2005-07-11 15:23:46',3253,492,'2005-07-14 17:26:46',2,'2006-02-15 21:30:53'),(6258,'2005-07-11 15:24:32',632,417,'2005-07-18 18:29:32',1,'2006-02-15 21:30:53'),(6259,'2005-07-11 15:25:52',3007,84,'2005-07-13 11:54:52',2,'2006-02-15 21:30:53'),(6260,'2005-07-11 15:26:29',4308,454,'2005-07-13 17:37:29',2,'2006-02-15 21:30:53'),(6261,'2005-07-11 15:28:34',694,386,'2005-07-14 17:54:34',1,'2006-02-15 21:30:53'),(6262,'2005-07-11 15:33:24',4136,355,'2005-07-17 12:40:24',1,'2006-02-15 21:30:53'),(6263,'2005-07-11 15:33:50',2391,336,'2005-07-17 12:49:50',2,'2006-02-15 21:30:53'),(6264,'2005-07-11 15:42:35',4246,565,'2005-07-12 11:29:35',2,'2006-02-15 21:30:53'),(6265,'2005-07-11 15:43:51',3931,477,'2005-07-12 12:51:51',2,'2006-02-15 21:30:53'),(6266,'2005-07-11 15:45:39',941,397,'2005-07-15 18:29:39',1,'2006-02-15 21:30:53'),(6267,'2005-07-11 15:53:00',2152,20,'2005-07-17 18:09:00',2,'2006-02-15 21:30:53'),(6268,'2005-07-11 15:55:34',1154,125,'2005-07-19 17:25:34',1,'2006-02-15 21:30:53'),(6269,'2005-07-11 15:58:43',3915,167,'2005-07-13 13:25:43',1,'2006-02-15 21:30:53'),(6270,'2005-07-11 15:59:10',2308,292,'2005-07-18 10:29:10',2,'2006-02-15 21:30:53'),(6271,'2005-07-11 16:01:35',1246,467,'2005-07-20 12:07:35',2,'2006-02-15 21:30:53'),(6272,'2005-07-11 16:03:49',3103,240,'2005-07-15 19:54:49',1,'2006-02-15 21:30:53'),(6273,'2005-07-11 16:08:41',2403,152,'2005-07-14 16:41:41',2,'2006-02-15 21:30:53'),(6274,'2005-07-11 16:09:42',2998,472,'2005-07-19 20:46:42',1,'2006-02-15 21:30:53'),(6275,'2005-07-11 16:12:11',3599,333,'2005-07-17 20:19:11',2,'2006-02-15 21:30:53'),(6276,'2005-07-11 16:15:50',1826,284,'2005-07-19 20:50:50',2,'2006-02-15 21:30:53'),(6277,'2005-07-11 16:19:01',4023,92,'2005-07-18 21:00:01',2,'2006-02-15 21:30:53'),(6278,'2005-07-11 16:20:02',2232,558,'2005-07-19 19:29:02',2,'2006-02-15 21:30:53'),(6279,'2005-07-11 16:26:07',1254,49,'2005-07-17 21:05:07',2,'2006-02-15 21:30:53'),(6280,'2005-07-11 16:36:17',4055,33,'2005-07-13 14:04:17',2,'2006-02-15 21:30:53'),(6281,'2005-07-11 16:38:16',835,236,'2005-07-13 10:57:16',2,'2006-02-15 21:30:53'),(6282,'2005-07-11 16:46:22',4453,60,'2005-07-15 13:19:22',1,'2006-02-15 21:30:53'),(6283,'2005-07-11 16:47:32',3319,402,'2005-07-17 21:46:32',1,'2006-02-15 21:30:53'),(6284,'2005-07-11 16:51:39',2938,177,'2005-07-15 19:59:39',1,'2006-02-15 21:30:53'),(6285,'2005-07-11 16:52:07',2140,444,'2005-07-13 21:33:07',2,'2006-02-15 21:30:53'),(6286,'2005-07-11 16:55:35',1070,140,'2005-07-13 22:51:35',1,'2006-02-15 21:30:53'),(6287,'2005-07-11 17:00:04',35,93,'2005-07-12 13:16:04',1,'2006-02-15 21:30:53'),(6288,'2005-07-11 17:01:52',3235,357,'2005-07-19 15:11:52',1,'2006-02-15 21:30:53'),(6289,'2005-07-11 17:06:39',3185,99,'2005-07-12 15:54:39',2,'2006-02-15 21:30:53'),(6290,'2005-07-11 17:12:42',2634,66,'2005-07-19 21:53:42',2,'2006-02-15 21:30:53'),(6291,'2005-07-11 17:16:40',3126,262,'2005-07-13 18:24:40',2,'2006-02-15 21:30:53'),(6292,'2005-07-11 17:23:33',4375,505,'2005-07-12 16:27:33',2,'2006-02-15 21:30:53'),(6293,'2005-07-11 17:24:57',4260,471,'2005-07-13 18:45:57',2,'2006-02-15 21:30:53'),(6294,'2005-07-11 17:25:55',1732,463,'2005-07-15 17:48:55',1,'2006-02-15 21:30:53'),(6295,'2005-07-11 17:30:58',1393,7,'2005-07-15 15:50:58',1,'2006-02-15 21:30:53'),(6296,'2005-07-11 17:34:04',4202,484,'2005-07-17 21:12:04',1,'2006-02-15 21:30:53'),(6297,'2005-07-11 17:37:22',2738,69,'2005-07-19 13:54:22',2,'2006-02-15 21:30:53'),(6298,'2005-07-11 17:42:33',3906,256,'2005-07-13 18:14:33',2,'2006-02-15 21:30:53'),(6299,'2005-07-11 17:45:08',4125,324,'2005-07-13 16:36:08',2,'2006-02-15 21:30:53'),(6300,'2005-07-11 17:50:09',1269,283,'2005-07-18 13:11:09',1,'2006-02-15 21:30:53'),(6301,'2005-07-11 17:54:09',3528,275,'2005-07-18 20:42:09',2,'2006-02-15 21:30:53'),(6302,'2005-07-11 17:55:38',3221,391,'2005-07-17 22:11:38',1,'2006-02-15 21:30:53'),(6303,'2005-07-11 17:55:43',846,236,'2005-07-13 12:50:43',1,'2006-02-15 21:30:53'),(6304,'2005-07-11 18:02:16',4183,579,'2005-07-14 14:01:16',1,'2006-02-15 21:30:53'),(6305,'2005-07-11 18:02:25',1544,337,'2005-07-20 13:29:25',1,'2006-02-15 21:30:53'),(6306,'2005-07-11 18:04:26',486,208,'2005-07-20 14:22:26',2,'2006-02-15 21:30:53'),(6307,'2005-07-11 18:04:29',4029,345,'2005-07-17 23:40:29',2,'2006-02-15 21:30:53'),(6308,'2005-07-11 18:08:41',3155,472,'2005-07-19 15:48:41',2,'2006-02-15 21:30:53'),(6309,'2005-07-11 18:13:24',1054,232,'2005-07-13 23:11:24',1,'2006-02-15 21:30:53'),(6310,'2005-07-11 18:14:05',3064,537,'2005-07-16 15:39:05',2,'2006-02-15 21:30:53'),(6311,'2005-07-11 18:18:52',1789,373,'2005-07-16 17:52:52',2,'2006-02-15 21:30:53'),(6312,'2005-07-11 18:19:02',2188,417,'2005-07-18 00:00:02',1,'2006-02-15 21:30:53'),(6313,'2005-07-11 18:29:52',2976,283,'2005-07-14 21:34:52',1,'2006-02-15 21:30:53'),(6314,'2005-07-11 18:32:44',4128,55,'2005-07-17 23:58:44',1,'2006-02-15 21:30:53'),(6315,'2005-07-11 18:42:49',608,374,'2005-07-12 23:19:49',2,'2006-02-15 21:30:53'),(6316,'2005-07-11 18:44:52',1910,526,'2005-07-19 23:35:52',2,'2006-02-15 21:30:53'),(6317,'2005-07-11 18:47:41',4206,225,'2005-07-14 18:18:41',1,'2006-02-15 21:30:53'),(6318,'2005-07-11 18:48:22',2048,425,'2005-07-12 13:39:22',1,'2006-02-15 21:30:53'),(6319,'2005-07-11 18:50:45',3739,233,'2005-07-12 15:26:45',1,'2006-02-15 21:30:53'),(6320,'2005-07-11 18:50:55',441,511,'2005-07-13 22:46:55',2,'2006-02-15 21:30:53'),(6321,'2005-07-11 18:51:02',2655,388,'2005-07-14 20:57:02',2,'2006-02-15 21:30:53'),(6322,'2005-07-11 18:58:20',4115,403,'2005-07-14 16:41:20',2,'2006-02-15 21:30:53'),(6323,'2005-07-11 19:02:19',1352,346,'2005-07-14 15:54:19',1,'2006-02-15 21:30:53'),(6324,'2005-07-11 19:02:34',655,386,'2005-07-17 15:57:34',1,'2006-02-15 21:30:53'),(6325,'2005-07-11 19:06:01',4556,542,'2005-07-18 18:25:01',2,'2006-02-15 21:30:53'),(6326,'2005-07-11 19:06:55',2137,563,'2005-07-12 20:41:55',1,'2006-02-15 21:30:53'),(6327,'2005-07-11 19:07:29',909,146,'2005-07-15 16:09:29',1,'2006-02-15 21:30:53'),(6328,'2005-07-11 19:09:33',999,260,'2005-07-12 20:16:33',2,'2006-02-15 21:30:53'),(6329,'2005-07-11 19:10:38',2763,352,'2005-07-19 14:46:38',2,'2006-02-15 21:30:53'),(6330,'2005-07-11 19:15:42',3917,119,'2005-07-17 19:10:42',1,'2006-02-15 21:30:53'),(6331,'2005-07-11 19:17:21',1356,295,'2005-07-18 18:35:21',2,'2006-02-15 21:30:53'),(6332,'2005-07-11 19:19:06',1733,538,'2005-07-13 13:51:06',2,'2006-02-15 21:30:53'),(6333,'2005-07-11 19:20:16',2610,285,'2005-07-17 15:33:16',1,'2006-02-15 21:30:53'),(6334,'2005-07-11 19:20:44',948,168,'2005-07-19 18:49:44',2,'2006-02-15 21:30:53'),(6335,'2005-07-11 19:25:15',2757,396,'2005-07-16 17:02:15',1,'2006-02-15 21:30:53'),(6336,'2005-07-11 19:30:13',1229,471,'2005-07-20 21:27:13',2,'2006-02-15 21:30:53'),(6337,'2005-07-11 19:30:47',3967,47,'2005-07-19 20:27:47',2,'2006-02-15 21:30:53'),(6338,'2005-07-11 19:39:41',1691,54,'2005-07-18 01:13:41',2,'2006-02-15 21:30:53'),(6339,'2005-07-11 19:45:32',2401,145,'2005-07-18 22:34:32',2,'2006-02-15 21:30:53'),(6340,'2005-07-11 19:46:05',2374,264,'2005-07-20 16:51:05',2,'2006-02-15 21:30:53'),(6341,'2005-07-11 19:48:02',3580,448,'2005-07-15 01:31:02',1,'2006-02-15 21:30:53'),(6342,'2005-07-11 19:48:24',1851,403,'2005-07-13 14:09:24',2,'2006-02-15 21:30:53'),(6343,'2005-07-11 19:51:35',513,147,'2005-07-12 19:13:35',1,'2006-02-15 21:30:53'),(6344,'2005-07-11 20:04:43',3074,78,'2005-07-18 14:35:43',2,'2006-02-15 21:30:53'),(6345,'2005-07-11 20:05:18',4332,532,'2005-07-20 17:28:18',1,'2006-02-15 21:30:53'),(6346,'2005-07-11 20:08:34',4066,445,'2005-07-16 16:35:34',2,'2006-02-15 21:30:53'),(6347,'2005-07-11 20:18:53',3160,178,'2005-07-16 20:45:53',1,'2006-02-15 21:30:53'),(6348,'2005-07-11 20:21:18',21,66,'2005-07-19 15:56:18',2,'2006-02-15 21:30:53'),(6349,'2005-07-11 20:25:05',1581,216,'2005-07-21 00:35:05',2,'2006-02-15 21:30:53'),(6350,'2005-07-11 20:30:15',2853,225,'2005-07-16 21:30:15',1,'2006-02-15 21:30:53'),(6351,'2005-07-11 20:31:44',1852,507,'2005-07-18 17:16:44',2,'2006-02-15 21:30:53'),(6352,'2005-07-11 20:34:13',1143,235,'2005-07-13 19:49:13',1,'2006-02-15 21:30:53'),(6353,'2005-07-11 20:48:56',699,130,'2005-07-21 00:11:56',1,'2006-02-15 21:30:53'),(6354,'2005-07-11 20:54:27',3203,176,'2005-07-18 23:46:27',2,'2006-02-15 21:30:53'),(6355,'2005-07-11 20:56:29',2472,482,'2005-07-20 01:50:29',2,'2006-02-15 21:30:53'),(6356,'2005-07-11 20:57:48',2645,149,'2005-07-12 22:40:48',2,'2006-02-15 21:30:53'),(6357,'2005-07-11 20:58:51',658,252,'2005-07-12 15:06:51',1,'2006-02-15 21:30:53'),(6358,'2005-07-11 21:03:12',4527,567,'2005-07-15 20:06:12',2,'2006-02-15 21:30:53'),(6359,'2005-07-11 21:06:17',1656,30,'2005-07-16 02:51:17',2,'2006-02-15 21:30:53'),(6360,'2005-07-11 21:07:40',3075,338,'2005-07-16 15:11:40',1,'2006-02-15 21:30:53'),(6361,'2005-07-11 21:09:14',2903,561,'2005-07-14 18:26:14',2,'2006-02-15 21:30:53'),(6362,'2005-07-11 21:09:31',4259,358,'2005-07-13 23:08:31',1,'2006-02-15 21:30:53'),(6363,'2005-07-11 21:13:19',4167,344,'2005-07-20 15:44:19',1,'2006-02-15 21:30:53'),(6364,'2005-07-11 21:14:48',4146,160,'2005-07-20 23:20:48',2,'2006-02-15 21:30:53'),(6365,'2005-07-11 21:17:40',4550,566,'2005-07-14 20:53:40',1,'2006-02-15 21:30:53'),(6366,'2005-07-11 21:18:16',3989,366,'2005-07-17 00:21:16',1,'2006-02-15 21:30:53'),(6367,'2005-07-11 21:18:29',1465,357,'2005-07-15 01:05:29',1,'2006-02-15 21:30:53'),(6368,'2005-07-11 21:19:01',3666,588,'2005-07-13 17:56:01',2,'2006-02-15 21:30:53'),(6369,'2005-07-11 21:23:36',1086,252,'2005-07-13 22:23:36',2,'2006-02-15 21:30:53'),(6370,'2005-07-11 21:28:32',1410,99,'2005-07-20 02:51:32',2,'2006-02-15 21:30:53'),(6371,'2005-07-11 21:31:51',4297,265,'2005-07-16 23:10:51',1,'2006-02-15 21:30:53'),(6372,'2005-07-11 21:35:06',741,64,'2005-07-15 02:30:06',2,'2006-02-15 21:30:53'),(6373,'2005-07-11 21:35:20',1042,115,'2005-07-13 23:22:20',2,'2006-02-15 21:30:53'),(6374,'2005-07-11 21:36:10',266,244,'2005-07-17 15:50:10',2,'2006-02-15 21:30:53'),(6375,'2005-07-11 21:39:46',1936,8,'2005-07-18 02:12:46',2,'2006-02-15 21:30:53'),(6376,'2005-07-11 21:40:23',1834,263,'2005-07-13 23:16:23',1,'2006-02-15 21:30:53'),(6377,'2005-07-11 21:41:16',4017,118,'2005-07-15 20:05:16',1,'2006-02-15 21:30:53'),(6378,'2005-07-11 21:45:23',3170,145,'2005-07-14 16:56:23',1,'2006-02-15 21:30:53'),(6379,'2005-07-11 21:51:25',522,287,'2005-07-17 03:38:25',2,'2006-02-15 21:30:53'),(6380,'2005-07-11 21:55:40',3378,172,'2005-07-17 20:42:40',1,'2006-02-15 21:30:53'),(6381,'2005-07-11 21:58:48',2584,340,'2005-07-16 16:18:48',1,'2006-02-15 21:30:53'),(6382,'2005-07-11 21:58:53',3223,336,'2005-07-17 21:18:53',2,'2006-02-15 21:30:53'),(6383,'2005-07-11 22:06:53',4275,486,'2005-07-17 16:09:53',1,'2006-02-15 21:30:53'),(6384,'2005-07-11 22:07:26',491,313,'2005-07-16 22:39:26',1,'2006-02-15 21:30:53'),(6385,'2005-07-11 22:07:32',1830,69,'2005-07-20 16:57:32',1,'2006-02-15 21:30:53'),(6386,'2005-07-11 22:14:57',633,593,'2005-07-15 16:41:57',2,'2006-02-15 21:30:53'),(6387,'2005-07-11 22:15:56',1726,384,'2005-07-14 20:20:56',2,'2006-02-15 21:30:53'),(6388,'2005-07-11 22:17:16',3506,525,'2005-07-19 23:50:16',2,'2006-02-15 21:30:53'),(6389,'2005-07-11 22:18:20',2268,274,'2005-07-16 16:57:20',2,'2006-02-15 21:30:53'),(6390,'2005-07-11 22:19:23',3057,77,'2005-07-15 20:10:23',2,'2006-02-15 21:30:53'),(6391,'2005-07-11 22:23:09',1745,264,'2005-07-15 23:02:09',1,'2006-02-15 21:30:53'),(6392,'2005-07-11 22:25:19',4406,468,'2005-07-16 04:24:19',1,'2006-02-15 21:30:53'),(6393,'2005-07-11 22:28:12',3802,164,'2005-07-14 18:03:12',1,'2006-02-15 21:30:53'),(6394,'2005-07-11 22:29:15',2574,52,'2005-07-20 02:19:15',2,'2006-02-15 21:30:53'),(6395,'2005-07-11 22:29:29',3058,264,'2005-07-18 00:50:29',1,'2006-02-15 21:30:53'),(6396,'2005-07-11 22:31:08',2394,507,'2005-07-19 17:19:08',2,'2006-02-15 21:30:53'),(6397,'2005-07-11 22:34:02',2423,287,'2005-07-13 23:01:02',1,'2006-02-15 21:30:53'),(6398,'2005-07-11 22:34:49',1409,296,'2005-07-17 17:58:49',2,'2006-02-15 21:30:53'),(6399,'2005-07-11 22:39:05',2031,288,'2005-07-16 01:12:05',1,'2006-02-15 21:30:53'),(6400,'2005-07-11 22:43:44',3289,536,'2005-07-19 03:58:44',2,'2006-02-15 21:30:53'),(6401,'2005-07-11 22:44:34',1427,35,'2005-07-12 22:18:34',2,'2006-02-15 21:30:53'),(6402,'2005-07-11 22:46:10',2576,66,'2005-07-16 04:02:10',1,'2006-02-15 21:30:53'),(6403,'2005-07-11 22:46:25',1019,238,'2005-07-13 22:15:25',1,'2006-02-15 21:30:53'),(6404,'2005-07-11 22:49:50',1183,526,'2005-07-14 18:29:50',2,'2006-02-15 21:30:53'),(6405,'2005-07-11 22:53:12',3983,357,'2005-07-18 23:02:12',2,'2006-02-15 21:30:53'),(6406,'2005-07-11 22:55:27',4439,392,'2005-07-20 04:50:27',2,'2006-02-15 21:30:53'),(6407,'2005-07-11 23:02:19',775,140,'2005-07-21 00:30:19',1,'2006-02-15 21:30:53'),(6408,'2005-07-11 23:03:02',2008,350,'2005-07-19 23:09:02',2,'2006-02-15 21:30:53'),(6409,'2005-07-11 23:05:49',3859,537,'2005-07-13 00:13:49',2,'2006-02-15 21:30:53'),(6410,'2005-07-11 23:08:06',1127,560,'2005-07-19 19:57:06',2,'2006-02-15 21:30:53'),(6411,'2005-07-11 23:10:50',4347,124,'2005-07-19 17:15:50',1,'2006-02-15 21:30:53'),(6412,'2005-07-11 23:19:21',3797,220,'2005-07-16 19:48:21',1,'2006-02-15 21:30:53'),(6413,'2005-07-11 23:26:11',4446,251,'2005-07-17 21:58:11',2,'2006-02-15 21:30:53'),(6414,'2005-07-11 23:26:13',814,502,'2005-07-18 17:29:13',1,'2006-02-15 21:30:53'),(6415,'2005-07-11 23:27:52',4175,84,'2005-07-19 22:29:52',2,'2006-02-15 21:30:53'),(6416,'2005-07-11 23:29:14',1063,158,'2005-07-13 20:20:14',1,'2006-02-15 21:30:53'),(6417,'2005-07-11 23:35:11',3042,80,'2005-07-18 20:00:11',2,'2006-02-15 21:30:53'),(6418,'2005-07-11 23:36:27',3101,185,'2005-07-16 18:42:27',1,'2006-02-15 21:30:53'),(6419,'2005-07-11 23:36:38',3683,311,'2005-07-13 03:23:38',1,'2006-02-15 21:30:53'),(6420,'2005-07-11 23:38:49',4443,206,'2005-07-17 17:46:49',2,'2006-02-15 21:30:53'),(6421,'2005-07-11 23:45:25',4477,479,'2005-07-15 20:45:25',2,'2006-02-15 21:30:53'),(6422,'2005-07-11 23:46:19',762,257,'2005-07-20 22:12:19',1,'2006-02-15 21:30:53'),(6423,'2005-07-11 23:47:31',892,427,'2005-07-19 18:16:31',1,'2006-02-15 21:30:53'),(6424,'2005-07-11 23:49:37',3040,359,'2005-07-21 00:53:37',1,'2006-02-15 21:30:53'),(6425,'2005-07-11 23:54:52',2487,339,'2005-07-13 18:37:52',1,'2006-02-15 21:30:53'),(6426,'2005-07-11 23:56:38',498,495,'2005-07-21 05:22:38',1,'2006-02-15 21:30:53'),(6427,'2005-07-11 23:57:34',1043,122,'2005-07-14 18:05:34',2,'2006-02-15 21:30:53'),(6428,'2005-07-12 00:01:51',4365,187,'2005-07-20 22:02:51',2,'2006-02-15 21:30:53'),(6429,'2005-07-12 00:02:50',141,342,'2005-07-21 02:08:50',1,'2006-02-15 21:30:53'),(6430,'2005-07-12 00:03:34',178,390,'2005-07-15 03:11:34',1,'2006-02-15 21:30:53'),(6431,'2005-07-12 00:03:57',3471,458,'2005-07-20 03:47:57',1,'2006-02-15 21:30:53'),(6432,'2005-07-12 00:09:41',970,293,'2005-07-20 20:06:41',1,'2006-02-15 21:30:53'),(6433,'2005-07-12 00:12:02',1357,101,'2005-07-21 04:25:02',2,'2006-02-15 21:30:53'),(6434,'2005-07-12 00:14:25',1478,102,'2005-07-20 19:54:25',2,'2006-02-15 21:30:53'),(6435,'2005-07-12 00:16:19',1957,561,'2005-07-17 19:15:19',1,'2006-02-15 21:30:53'),(6436,'2005-07-12 00:18:42',3758,122,'2005-07-13 03:57:42',2,'2006-02-15 21:30:53'),(6437,'2005-07-12 00:20:29',4539,355,'2005-07-12 22:26:29',1,'2006-02-15 21:30:53'),(6438,'2005-07-12 00:23:01',412,211,'2005-07-17 22:45:01',1,'2006-02-15 21:30:53'),(6439,'2005-07-12 00:23:48',3463,406,'2005-07-13 00:54:48',2,'2006-02-15 21:30:53'),(6440,'2005-07-12 00:25:04',2148,269,'2005-07-13 04:52:04',2,'2006-02-15 21:30:53'),(6441,'2005-07-12 00:27:08',2489,505,'2005-07-14 03:12:08',1,'2006-02-15 21:30:53'),(6442,'2005-07-12 00:29:45',1273,360,'2005-07-15 19:37:45',2,'2006-02-15 21:30:53'),(6443,'2005-07-12 00:35:51',895,155,'2005-07-16 04:50:51',1,'2006-02-15 21:30:53'),(6444,'2005-07-12 00:36:02',2214,168,'2005-07-18 05:53:02',1,'2006-02-15 21:30:53'),(6445,'2005-07-12 00:37:02',582,385,'2005-07-17 22:05:02',2,'2006-02-15 21:30:53'),(6446,'2005-07-12 00:44:08',3634,473,'2005-07-14 20:39:08',2,'2006-02-15 21:30:53'),(6447,'2005-07-12 00:45:17',3945,482,'2005-07-18 05:56:17',2,'2006-02-15 21:30:53'),(6448,'2005-07-12 00:45:59',2663,160,'2005-07-17 00:34:59',1,'2006-02-15 21:30:53'),(6449,'2005-07-12 00:48:58',4395,117,'2005-07-21 02:57:58',1,'2006-02-15 21:30:53'),(6450,'2005-07-12 00:49:05',2413,32,'2005-07-13 01:54:05',2,'2006-02-15 21:30:53'),(6451,'2005-07-12 00:52:19',1008,381,'2005-07-16 21:30:19',2,'2006-02-15 21:30:53'),(6452,'2005-07-12 00:57:31',109,388,'2005-07-14 20:41:31',1,'2006-02-15 21:30:53'),(6453,'2005-07-12 00:59:53',2506,169,'2005-07-14 19:17:53',2,'2006-02-15 21:30:53'),(6454,'2005-07-12 01:00:12',4028,446,'2005-07-16 22:12:12',1,'2006-02-15 21:30:53'),(6455,'2005-07-12 01:01:58',4267,277,'2005-07-16 02:42:58',2,'2006-02-15 21:30:53'),(6456,'2005-07-12 01:05:11',259,387,'2005-07-20 23:26:11',2,'2006-02-15 21:30:53'),(6457,'2005-07-12 01:06:35',2970,64,'2005-07-14 03:27:35',1,'2006-02-15 21:30:53'),(6458,'2005-07-12 01:08:52',2809,138,'2005-07-16 20:22:52',1,'2006-02-15 21:30:53'),(6459,'2005-07-12 01:12:03',4025,557,'2005-07-15 23:48:03',1,'2006-02-15 21:30:53'),(6460,'2005-07-12 01:13:44',2402,371,'2005-07-17 04:51:44',2,'2006-02-15 21:30:53'),(6461,'2005-07-12 01:14:03',1799,135,'2005-07-19 21:12:03',1,'2006-02-15 21:30:53'),(6462,'2005-07-12 01:15:24',4534,414,'2005-07-19 05:11:24',2,'2006-02-15 21:30:53'),(6463,'2005-07-12 01:16:11',2930,391,'2005-07-13 01:37:11',1,'2006-02-15 21:30:53'),(6464,'2005-07-12 01:16:40',3100,303,'2005-07-20 00:53:40',1,'2006-02-15 21:30:53'),(6465,'2005-07-12 01:17:11',2047,207,'2005-07-20 00:29:11',2,'2006-02-15 21:30:53'),(6466,'2005-07-12 01:21:03',3369,235,'2005-07-14 04:05:03',1,'2006-02-15 21:30:53'),(6467,'2005-07-12 01:22:03',2067,457,'2005-07-20 04:37:03',2,'2006-02-15 21:30:53'),(6468,'2005-07-12 01:27:09',4560,541,'2005-07-20 00:37:09',2,'2006-02-15 21:30:53'),(6469,'2005-07-12 01:29:27',3830,147,'2005-07-16 20:22:27',2,'2006-02-15 21:30:53'),(6470,'2005-07-12 01:29:41',1680,240,'2005-07-15 21:33:41',2,'2006-02-15 21:30:53'),(6471,'2005-07-12 01:31:06',2253,397,'2005-07-13 05:26:06',1,'2006-02-15 21:30:53'),(6472,'2005-07-12 01:33:25',3780,183,'2005-07-15 20:26:25',1,'2006-02-15 21:30:53'),(6473,'2005-07-12 01:35:40',527,594,'2005-07-20 20:11:40',1,'2006-02-15 21:30:53'),(6474,'2005-07-12 01:36:46',310,43,'2005-07-16 07:24:46',2,'2006-02-15 21:30:53'),(6475,'2005-07-12 01:36:57',2035,74,'2005-07-17 21:22:57',1,'2006-02-15 21:30:53'),(6476,'2005-07-12 01:37:48',978,28,'2005-07-12 20:21:48',2,'2006-02-15 21:30:53'),(6477,'2005-07-12 01:38:42',804,181,'2005-07-17 05:19:42',2,'2006-02-15 21:30:53'),(6478,'2005-07-12 01:41:44',2589,483,'2005-07-15 20:48:44',1,'2006-02-15 21:30:53'),(6479,'2005-07-12 01:49:00',2587,558,'2005-07-21 04:26:00',1,'2006-02-15 21:30:53'),(6480,'2005-07-12 01:49:29',3076,309,'2005-07-17 01:00:29',1,'2006-02-15 21:30:53'),(6481,'2005-07-12 01:50:15',2392,128,'2005-07-20 03:03:15',1,'2006-02-15 21:30:53'),(6482,'2005-07-12 01:50:21',4135,57,'2005-07-14 06:49:21',2,'2006-02-15 21:30:53'),(6483,'2005-07-12 01:59:20',1053,263,'2005-07-12 22:22:20',2,'2006-02-15 21:30:53'),(6484,'2005-07-12 02:04:10',4093,556,'2005-07-17 23:18:10',2,'2006-02-15 21:30:53'),(6485,'2005-07-12 02:07:59',1224,319,'2005-07-19 22:56:59',1,'2006-02-15 21:30:53'),(6486,'2005-07-12 02:09:36',4008,75,'2005-07-14 03:04:36',2,'2006-02-15 21:30:53'),(6487,'2005-07-12 02:17:00',4000,277,'2005-07-19 00:57:00',2,'2006-02-15 21:30:53'),(6488,'2005-07-12 02:20:09',3974,169,'2005-07-20 00:53:09',2,'2006-02-15 21:30:53'),(6489,'2005-07-12 02:22:46',1821,268,'2005-07-17 06:16:46',2,'2006-02-15 21:30:53'),(6490,'2005-07-12 02:28:03',2249,548,'2005-07-19 03:06:03',2,'2006-02-15 21:30:53'),(6491,'2005-07-12 02:28:31',2803,415,'2005-07-21 00:38:31',1,'2006-02-15 21:30:53'),(6492,'2005-07-12 02:28:40',466,590,'2005-07-17 05:58:40',2,'2006-02-15 21:30:53'),(6493,'2005-07-12 02:40:41',16,184,'2005-07-16 04:56:41',1,'2006-02-15 21:30:53'),(6494,'2005-07-12 02:42:51',1124,57,'2005-07-20 06:57:51',1,'2006-02-15 21:30:53'),(6495,'2005-07-12 02:57:02',2440,19,'2005-07-14 08:35:02',1,'2006-02-15 21:30:53'),(6496,'2005-07-12 02:57:39',3550,139,'2005-07-20 01:43:39',1,'2006-02-15 21:30:53'),(6497,'2005-07-12 03:04:29',933,222,'2005-07-17 21:36:29',2,'2006-02-15 21:30:53'),(6498,'2005-07-12 03:05:38',243,48,'2005-07-19 07:12:38',1,'2006-02-15 21:30:53'),(6499,'2005-07-12 03:11:18',3165,474,'2005-07-21 07:50:18',2,'2006-02-15 21:30:53'),(6500,'2005-07-12 03:11:23',4521,577,'2005-07-13 00:51:23',2,'2006-02-15 21:30:53'),(6501,'2005-07-12 03:11:55',2851,219,'2005-07-16 02:08:55',2,'2006-02-15 21:30:53'),(6502,'2005-07-12 03:15:45',1641,40,'2005-07-17 08:47:45',2,'2006-02-15 21:30:53'),(6503,'2005-07-12 03:18:07',1319,120,'2005-07-15 00:05:07',1,'2006-02-15 21:30:53'),(6504,'2005-07-12 03:19:14',3786,535,'2005-07-17 01:13:14',2,'2006-02-15 21:30:53'),(6505,'2005-07-12 03:27:37',3986,415,'2005-07-17 22:42:37',2,'2006-02-15 21:30:53'),(6506,'2005-07-12 03:28:22',386,423,'2005-07-17 22:43:22',1,'2006-02-15 21:30:53'),(6507,'2005-07-12 03:33:12',2463,118,'2005-07-20 03:56:12',1,'2006-02-15 21:30:53'),(6508,'2005-07-12 03:34:50',1474,597,'2005-07-17 02:57:50',2,'2006-02-15 21:30:53'),(6509,'2005-07-12 03:35:01',2468,427,'2005-07-13 06:50:01',2,'2006-02-15 21:30:53'),(6510,'2005-07-12 03:35:39',905,446,'2005-07-21 01:41:39',1,'2006-02-15 21:30:53'),(6511,'2005-07-12 03:39:29',1350,322,'2005-07-17 01:01:29',2,'2006-02-15 21:30:53'),(6512,'2005-07-12 03:42:49',1703,68,'2005-07-13 05:01:49',2,'2006-02-15 21:30:53'),(6513,'2005-07-12 03:44:43',2671,393,'2005-07-13 05:54:43',1,'2006-02-15 21:30:53'),(6514,'2005-07-12 03:47:44',3562,73,'2005-07-20 00:11:44',1,'2006-02-15 21:30:53'),(6515,'2005-07-12 03:50:32',706,261,'2005-07-15 03:54:32',2,'2006-02-15 21:30:53'),(6516,'2005-07-12 03:51:54',863,291,'2005-07-14 03:41:54',2,'2006-02-15 21:30:53'),(6517,'2005-07-12 03:52:39',185,387,'2005-07-20 08:00:39',1,'2006-02-15 21:30:53'),(6518,'2005-07-12 03:59:42',2698,288,'2005-07-19 22:21:42',2,'2006-02-15 21:30:53'),(6519,'2005-07-12 04:00:36',4149,598,'2005-07-19 01:15:36',1,'2006-02-15 21:30:53'),(6520,'2005-07-12 04:05:16',1535,270,'2005-07-15 08:26:16',1,'2006-02-15 21:30:53'),(6521,'2005-07-12 04:06:11',3293,49,'2005-07-21 05:50:11',1,'2006-02-15 21:30:53'),(6522,'2005-07-12 04:11:58',3916,142,'2005-07-15 08:32:58',1,'2006-02-15 21:30:53'),(6523,'2005-07-12 04:14:19',1848,574,'2005-07-17 00:38:19',1,'2006-02-15 21:30:53'),(6524,'2005-07-12 04:14:35',1467,376,'2005-07-17 03:59:35',2,'2006-02-15 21:30:53'),(6525,'2005-07-12 04:17:15',1408,103,'2005-07-18 23:11:15',1,'2006-02-15 21:30:53'),(6526,'2005-07-12 04:21:20',1718,225,'2005-07-18 23:45:20',2,'2006-02-15 21:30:53'),(6527,'2005-07-12 04:23:06',538,65,'2005-07-17 00:20:06',1,'2006-02-15 21:30:53'),(6528,'2005-07-12 04:29:44',3824,598,'2005-07-18 02:39:44',2,'2006-02-15 21:30:53'),(6529,'2005-07-12 04:31:04',1058,503,'2005-07-17 07:09:04',2,'2006-02-15 21:30:53'),(6530,'2005-07-12 04:33:19',3410,75,'2005-07-15 08:26:19',1,'2006-02-15 21:30:53'),(6531,'2005-07-12 04:35:24',4231,510,'2005-07-16 05:37:24',2,'2006-02-15 21:30:53'),(6532,'2005-07-12 04:38:32',2361,225,'2005-07-13 03:54:32',1,'2006-02-15 21:30:53'),(6533,'2005-07-12 04:39:38',3853,366,'2005-07-18 05:29:38',1,'2006-02-15 21:30:53'),(6534,'2005-07-12 04:39:43',2359,577,'2005-07-16 06:33:43',1,'2006-02-15 21:30:53'),(6535,'2005-07-12 04:43:43',1921,446,'2005-07-17 04:52:43',1,'2006-02-15 21:30:53'),(6536,'2005-07-12 04:44:25',3521,289,'2005-07-18 01:52:25',2,'2006-02-15 21:30:53'),(6537,'2005-07-12 04:46:30',3381,207,'2005-07-19 03:04:30',2,'2006-02-15 21:30:53'),(6538,'2005-07-12 04:50:26',1987,529,'2005-07-20 23:44:26',2,'2006-02-15 21:30:53'),(6539,'2005-07-12 04:50:49',2275,259,'2005-07-19 03:23:49',1,'2006-02-15 21:30:53'),(6540,'2005-07-12 04:51:13',937,156,'2005-07-21 03:38:13',1,'2006-02-15 21:30:53'),(6541,'2005-07-12 04:53:41',1795,529,'2005-07-17 23:17:41',2,'2006-02-15 21:30:53'),(6542,'2005-07-12 04:53:49',2421,359,'2005-07-13 01:48:49',1,'2006-02-15 21:30:53'),(6543,'2005-07-12 04:54:32',2568,264,'2005-07-15 09:50:32',2,'2006-02-15 21:30:53'),(6544,'2005-07-12 04:56:15',1218,97,'2005-07-17 08:28:15',1,'2006-02-15 21:30:53'),(6545,'2005-07-12 04:56:30',4447,376,'2005-07-20 05:41:30',1,'2006-02-15 21:30:53'),(6546,'2005-07-12 04:57:17',393,105,'2005-07-17 09:29:17',2,'2006-02-15 21:30:53'),(6547,'2005-07-12 04:57:46',2656,262,'2005-07-18 08:36:46',2,'2006-02-15 21:30:53'),(6548,'2005-07-12 05:00:46',2480,488,'2005-07-19 04:40:46',2,'2006-02-15 21:30:53'),(6549,'2005-07-12 05:02:01',2688,493,'2005-07-20 06:19:01',2,'2006-02-15 21:30:53'),(6550,'2005-07-12 05:03:14',2184,112,'2005-07-19 04:06:14',1,'2006-02-15 21:30:53'),(6551,'2005-07-12 05:03:43',282,567,'2005-07-13 10:44:43',1,'2006-02-15 21:30:53'),(6552,'2005-07-12 05:05:06',766,493,'2005-07-13 05:12:06',2,'2006-02-15 21:30:53'),(6553,'2005-07-12 05:06:39',1137,265,'2005-07-21 10:37:39',1,'2006-02-15 21:30:53'),(6554,'2005-07-12 05:07:26',2741,178,'2005-07-21 06:06:26',2,'2006-02-15 21:30:53'),(6555,'2005-07-12 05:08:16',1282,188,'2005-07-14 04:09:16',1,'2006-02-15 21:30:53'),(6556,'2005-07-12 05:10:16',3901,570,'2005-07-13 04:16:16',2,'2006-02-15 21:30:53'),(6557,'2005-07-12 05:12:03',1442,116,'2005-07-20 06:49:03',1,'2006-02-15 21:30:53'),(6558,'2005-07-12 05:16:07',2195,164,'2005-07-13 05:32:07',2,'2006-02-15 21:30:53'),(6559,'2005-07-12 05:20:35',458,353,'2005-07-16 08:44:35',2,'2006-02-15 21:30:53'),(6560,'2005-07-12 05:22:06',433,54,'2005-07-15 00:04:06',2,'2006-02-15 21:30:53'),(6561,'2005-07-12 05:24:02',4568,528,'2005-07-16 03:43:02',2,'2006-02-15 21:30:53'),(6562,'2005-07-12 05:26:26',3969,27,'2005-07-16 05:10:26',2,'2006-02-15 21:30:53'),(6563,'2005-07-12 05:34:09',87,438,'2005-07-21 07:37:09',1,'2006-02-15 21:30:53'),(6564,'2005-07-12 05:34:44',2320,210,'2005-07-18 06:12:44',2,'2006-02-15 21:30:53'),(6565,'2005-07-12 05:39:50',2751,35,'2005-07-13 01:07:50',2,'2006-02-15 21:30:53'),(6566,'2005-07-12 05:42:53',1822,178,'2005-07-19 01:23:53',2,'2006-02-15 21:30:53'),(6567,'2005-07-12 05:43:09',1336,198,'2005-07-19 08:18:09',2,'2006-02-15 21:30:53'),(6568,'2005-07-12 05:45:47',4203,13,'2005-07-15 05:18:47',2,'2006-02-15 21:30:53'),(6569,'2005-07-12 05:47:40',759,183,'2005-07-20 06:23:40',2,'2006-02-15 21:30:53'),(6570,'2005-07-12 05:50:31',2082,217,'2005-07-13 09:58:31',1,'2006-02-15 21:30:53'),(6571,'2005-07-12 05:51:47',3700,140,'2005-07-15 11:31:47',1,'2006-02-15 21:30:53'),(6572,'2005-07-12 05:56:38',3121,35,'2005-07-16 10:41:38',1,'2006-02-15 21:30:53'),(6573,'2005-07-12 06:03:40',3308,239,'2005-07-13 11:49:40',2,'2006-02-15 21:30:53'),(6574,'2005-07-12 06:04:22',621,115,'2005-07-18 03:19:22',2,'2006-02-15 21:30:53'),(6575,'2005-07-12 06:12:53',1414,598,'2005-07-18 07:55:53',2,'2006-02-15 21:30:53'),(6576,'2005-07-12 06:13:41',339,362,'2005-07-16 03:22:41',1,'2006-02-15 21:30:53'),(6577,'2005-07-12 06:15:05',4191,439,'2005-07-15 06:23:05',1,'2006-02-15 21:30:53'),(6578,'2005-07-12 06:15:41',2304,229,'2005-07-15 10:43:41',1,'2006-02-15 21:30:53'),(6580,'2005-07-12 06:26:10',1543,31,'2005-07-13 06:44:10',1,'2006-02-15 21:30:53'),(6581,'2005-07-12 06:26:49',2121,468,'2005-07-14 05:07:49',2,'2006-02-15 21:30:53'),(6582,'2005-07-12 06:28:12',2077,420,'2005-07-19 06:19:12',1,'2006-02-15 21:30:53'),(6583,'2005-07-12 06:42:31',2343,462,'2005-07-15 07:51:31',1,'2006-02-15 21:30:53'),(6584,'2005-07-12 06:43:36',1800,472,'2005-07-16 12:18:36',2,'2006-02-15 21:30:53'),(6585,'2005-07-12 06:50:52',2064,136,'2005-07-21 06:51:52',1,'2006-02-15 21:30:53'),(6586,'2005-07-12 06:56:24',3860,93,'2005-07-17 09:36:24',1,'2006-02-15 21:30:53'),(6587,'2005-07-12 06:56:26',238,419,'2005-07-20 05:53:26',2,'2006-02-15 21:30:53'),(6588,'2005-07-12 06:57:40',1257,420,'2005-07-16 04:27:40',1,'2006-02-15 21:30:53'),(6589,'2005-07-12 07:06:29',1595,424,'2005-07-14 12:06:29',2,'2006-02-15 21:30:53'),(6590,'2005-07-12 07:08:21',1067,442,'2005-07-18 06:16:21',2,'2006-02-15 21:30:53'),(6591,'2005-07-12 07:13:46',2846,509,'2005-07-16 05:15:46',2,'2006-02-15 21:30:53'),(6592,'2005-07-12 07:19:35',3481,273,'2005-07-19 07:15:35',1,'2006-02-15 21:30:53'),(6593,'2005-07-12 07:21:17',3441,356,'2005-07-14 02:35:17',2,'2006-02-15 21:30:53'),(6594,'2005-07-12 07:25:43',4458,517,'2005-07-13 07:59:43',1,'2006-02-15 21:30:53'),(6595,'2005-07-12 07:25:48',1286,458,'2005-07-20 02:24:48',2,'2006-02-15 21:30:53'),(6596,'2005-07-12 07:32:59',890,409,'2005-07-13 02:47:59',1,'2006-02-15 21:30:53'),(6597,'2005-07-12 07:37:02',979,479,'2005-07-16 10:24:02',2,'2006-02-15 21:30:53'),(6598,'2005-07-12 07:38:25',2049,532,'2005-07-19 07:58:25',1,'2006-02-15 21:30:53'),(6599,'2005-07-12 07:41:14',4348,519,'2005-07-21 02:45:14',2,'2006-02-15 21:30:53'),(6600,'2005-07-12 07:41:48',3315,389,'2005-07-18 12:36:48',2,'2006-02-15 21:30:53'),(6601,'2005-07-12 07:44:49',1640,464,'2005-07-20 03:22:49',2,'2006-02-15 21:30:53'),(6602,'2005-07-12 07:50:24',2382,214,'2005-07-20 03:25:24',2,'2006-02-15 21:30:53'),(6603,'2005-07-12 07:52:55',3583,425,'2005-07-16 13:19:55',2,'2006-02-15 21:30:53'),(6604,'2005-07-12 07:57:45',822,365,'2005-07-16 05:41:45',2,'2006-02-15 21:30:53'),(6605,'2005-07-12 08:01:07',2892,547,'2005-07-19 03:12:07',1,'2006-02-15 21:30:53'),(6606,'2005-07-12 08:03:40',2805,178,'2005-07-13 09:05:40',1,'2006-02-15 21:30:53'),(6607,'2005-07-12 08:08:50',337,562,'2005-07-20 09:17:50',1,'2006-02-15 21:30:53'),(6608,'2005-07-12 08:16:50',3577,244,'2005-07-18 07:08:50',2,'2006-02-15 21:30:53'),(6609,'2005-07-12 08:19:41',3332,133,'2005-07-19 08:19:41',2,'2006-02-15 21:30:53'),(6610,'2005-07-12 08:20:02',645,353,'2005-07-21 09:16:02',2,'2006-02-15 21:30:53'),(6611,'2005-07-12 08:20:23',1604,286,'2005-07-16 07:19:23',1,'2006-02-15 21:30:53'),(6612,'2005-07-12 08:28:33',235,152,'2005-07-17 06:25:33',1,'2006-02-15 21:30:53'),(6613,'2005-07-12 08:30:07',3421,460,'2005-07-14 10:25:07',2,'2006-02-15 21:30:53'),(6614,'2005-07-12 08:33:49',3004,144,'2005-07-18 07:28:49',2,'2006-02-15 21:30:53'),(6615,'2005-07-12 08:36:22',23,438,'2005-07-20 09:03:22',1,'2006-02-15 21:30:53'),(6616,'2005-07-12 08:37:30',1833,179,'2005-07-20 10:33:30',1,'2006-02-15 21:30:53'),(6617,'2005-07-12 08:39:56',2292,248,'2005-07-14 09:32:56',2,'2006-02-15 21:30:53'),(6618,'2005-07-12 08:41:42',4266,327,'2005-07-14 05:34:42',1,'2006-02-15 21:30:53'),(6619,'2005-07-12 08:50:48',4062,305,'2005-07-14 11:54:48',1,'2006-02-15 21:30:53'),(6620,'2005-07-12 08:51:03',2362,337,'2005-07-16 03:59:03',2,'2006-02-15 21:30:53'),(6621,'2005-07-12 08:57:30',2229,561,'2005-07-14 09:47:30',1,'2006-02-15 21:30:53'),(6622,'2005-07-12 09:04:11',4350,325,'2005-07-13 04:27:11',1,'2006-02-15 21:30:53'),(6623,'2005-07-12 09:05:34',4412,302,'2005-07-19 13:54:34',2,'2006-02-15 21:30:53'),(6624,'2005-07-12 09:05:50',3946,335,'2005-07-18 13:59:50',2,'2006-02-15 21:30:53'),(6625,'2005-07-12 09:06:40',735,443,'2005-07-21 04:57:40',2,'2006-02-15 21:30:53'),(6626,'2005-07-12 09:16:24',2418,269,'2005-07-17 04:06:24',2,'2006-02-15 21:30:53'),(6627,'2005-07-12 09:16:46',626,565,'2005-07-17 10:58:46',1,'2006-02-15 21:30:53'),(6628,'2005-07-12 09:18:08',2894,211,'2005-07-21 04:27:08',2,'2006-02-15 21:30:53'),(6629,'2005-07-12 09:18:35',2855,582,'2005-07-20 11:34:35',2,'2006-02-15 21:30:53'),(6630,'2005-07-12 09:30:05',1843,462,'2005-07-14 08:29:05',2,'2006-02-15 21:30:53'),(6631,'2005-07-12 09:31:43',2340,204,'2005-07-15 05:00:43',2,'2006-02-15 21:30:53'),(6632,'2005-07-12 09:33:10',2929,442,'2005-07-15 11:36:10',1,'2006-02-15 21:30:53'),(6633,'2005-07-12 09:35:42',2908,150,'2005-07-13 12:56:42',2,'2006-02-15 21:30:53'),(6634,'2005-07-12 09:37:18',2943,50,'2005-07-13 09:28:18',1,'2006-02-15 21:30:53'),(6635,'2005-07-12 09:47:58',515,273,'2005-07-16 15:43:58',1,'2006-02-15 21:30:53'),(6636,'2005-07-12 09:49:46',3270,441,'2005-07-14 12:15:46',1,'2006-02-15 21:30:53'),(6637,'2005-07-12 09:57:39',2852,164,'2005-07-19 08:40:39',1,'2006-02-15 21:30:53'),(6638,'2005-07-12 09:58:02',207,87,'2005-07-13 09:40:02',1,'2006-02-15 21:30:53'),(6639,'2005-07-12 10:00:44',3385,587,'2005-07-19 04:56:44',1,'2006-02-15 21:30:53'),(6640,'2005-07-12 10:27:19',2794,148,'2005-07-21 06:28:19',2,'2006-02-15 21:30:53'),(6641,'2005-07-12 10:33:14',2165,334,'2005-07-20 08:24:14',2,'2006-02-15 21:30:53'),(6642,'2005-07-12 10:37:52',201,441,'2005-07-13 15:13:52',1,'2006-02-15 21:30:53'),(6643,'2005-07-12 10:39:22',174,88,'2005-07-18 13:52:22',1,'2006-02-15 21:30:53'),(6644,'2005-07-12 10:39:39',2667,285,'2005-07-14 11:50:39',1,'2006-02-15 21:30:53'),(6645,'2005-07-12 10:39:55',2858,73,'2005-07-17 07:41:55',1,'2006-02-15 21:30:53'),(6646,'2005-07-12 10:41:34',4061,508,'2005-07-15 05:31:34',1,'2006-02-15 21:30:53'),(6647,'2005-07-12 10:43:53',1841,8,'2005-07-14 05:37:53',1,'2006-02-15 21:30:53'),(6648,'2005-07-12 10:46:30',718,356,'2005-07-14 16:15:30',1,'2006-02-15 21:30:53'),(6649,'2005-07-12 10:51:09',70,57,'2005-07-14 16:05:09',2,'2006-02-15 21:30:53'),(6650,'2005-07-12 10:57:10',1589,526,'2005-07-14 07:24:10',1,'2006-02-15 21:30:53'),(6651,'2005-07-12 10:57:28',98,447,'2005-07-15 06:06:28',2,'2006-02-15 21:30:53'),(6652,'2005-07-12 10:59:38',2200,518,'2005-07-13 13:52:38',1,'2006-02-15 21:30:53'),(6653,'2005-07-12 11:06:17',614,25,'2005-07-19 16:52:17',2,'2006-02-15 21:30:53'),(6654,'2005-07-12 11:06:28',2870,458,'2005-07-20 10:27:28',1,'2006-02-15 21:30:53'),(6655,'2005-07-12 11:08:32',3937,100,'2005-07-15 15:17:32',1,'2006-02-15 21:30:53'),(6656,'2005-07-12 11:09:47',2282,330,'2005-07-14 05:50:47',1,'2006-02-15 21:30:53'),(6657,'2005-07-12 11:11:36',3697,553,'2005-07-16 15:56:36',1,'2006-02-15 21:30:53'),(6658,'2005-07-12 11:13:21',172,27,'2005-07-17 09:10:21',2,'2006-02-15 21:30:53'),(6659,'2005-07-12 11:18:05',2285,134,'2005-07-16 16:45:05',2,'2006-02-15 21:30:53'),(6660,'2005-07-12 11:20:12',446,598,'2005-07-20 12:58:12',2,'2006-02-15 21:30:53'),(6661,'2005-07-12 11:20:39',2367,315,'2005-07-16 08:17:39',2,'2006-02-15 21:30:53'),(6662,'2005-07-12 11:21:06',1464,99,'2005-07-13 13:00:06',1,'2006-02-15 21:30:53'),(6663,'2005-07-12 11:27:35',4364,5,'2005-07-21 16:35:35',1,'2006-02-15 21:30:53'),(6664,'2005-07-12 11:28:22',4578,351,'2005-07-15 09:30:22',1,'2006-02-15 21:30:53'),(6665,'2005-07-12 11:29:14',2912,587,'2005-07-19 11:26:14',2,'2006-02-15 21:30:53'),(6666,'2005-07-12 11:32:15',3194,314,'2005-07-14 16:09:15',2,'2006-02-15 21:30:53'),(6667,'2005-07-12 11:36:22',215,50,'2005-07-19 12:53:22',1,'2006-02-15 21:30:53'),(6668,'2005-07-12 11:37:45',1498,199,'2005-07-14 13:28:45',2,'2006-02-15 21:30:53'),(6669,'2005-07-12 11:39:55',1420,355,'2005-07-20 05:56:55',1,'2006-02-15 21:30:53'),(6670,'2005-07-12 11:44:33',3106,249,'2005-07-19 07:54:33',2,'2006-02-15 21:30:53'),(6671,'2005-07-12 11:48:48',955,526,'2005-07-19 16:55:48',2,'2006-02-15 21:30:53'),(6672,'2005-07-12 11:49:16',375,439,'2005-07-13 07:03:16',2,'2006-02-15 21:30:53'),(6673,'2005-07-12 11:50:56',1997,322,'2005-07-13 14:27:56',1,'2006-02-15 21:30:53'),(6674,'2005-07-12 11:51:54',2385,399,'2005-07-13 16:57:54',1,'2006-02-15 21:30:53'),(6675,'2005-07-12 11:53:06',2124,523,'2005-07-13 06:09:06',1,'2006-02-15 21:30:53'),(6676,'2005-07-12 11:53:40',2294,571,'2005-07-19 09:15:40',1,'2006-02-15 21:30:53'),(6677,'2005-07-12 11:58:14',2389,516,'2005-07-21 06:05:14',2,'2006-02-15 21:30:53'),(6678,'2005-07-12 11:58:36',3473,330,'2005-07-15 17:50:36',2,'2006-02-15 21:30:53'),(6679,'2005-07-12 12:01:07',3664,586,'2005-07-14 11:36:07',1,'2006-02-15 21:30:53'),(6680,'2005-07-12 12:01:56',2887,43,'2005-07-16 17:32:56',1,'2006-02-15 21:30:53'),(6681,'2005-07-12 12:04:12',854,368,'2005-07-19 11:01:12',2,'2006-02-15 21:30:53'),(6682,'2005-07-12 12:12:43',1984,339,'2005-07-21 10:49:43',2,'2006-02-15 21:30:53'),(6683,'2005-07-12 12:14:05',3433,244,'2005-07-17 14:02:05',2,'2006-02-15 21:30:53'),(6684,'2005-07-12 12:14:42',2817,583,'2005-07-21 11:07:42',2,'2006-02-15 21:30:53'),(6685,'2005-07-12 12:16:28',1434,5,'2005-07-19 17:03:28',1,'2006-02-15 21:30:53'),(6686,'2005-07-12 12:18:38',3804,6,'2005-07-13 17:56:38',2,'2006-02-15 21:30:53'),(6687,'2005-07-12 12:19:23',2736,128,'2005-07-19 17:12:23',1,'2006-02-15 21:30:53'),(6688,'2005-07-12 12:22:12',2377,246,'2005-07-14 14:05:12',1,'2006-02-15 21:30:53'),(6689,'2005-07-12 12:22:13',1568,525,'2005-07-16 07:44:13',1,'2006-02-15 21:30:53'),(6690,'2005-07-12 12:23:02',4254,447,'2005-07-16 15:39:02',2,'2006-02-15 21:30:53'),(6691,'2005-07-12 12:26:38',403,192,'2005-07-18 13:26:38',2,'2006-02-15 21:30:53'),(6692,'2005-07-12 12:35:39',2837,372,'2005-07-20 11:20:39',2,'2006-02-15 21:30:53'),(6693,'2005-07-12 12:37:00',2014,573,'2005-07-20 09:36:00',1,'2006-02-15 21:30:53'),(6694,'2005-07-12 12:39:23',586,204,'2005-07-19 14:47:23',1,'2006-02-15 21:30:53'),(6695,'2005-07-12 12:39:39',3088,550,'2005-07-17 13:36:39',2,'2006-02-15 21:30:53'),(6696,'2005-07-12 12:44:04',299,273,'2005-07-16 14:17:04',1,'2006-02-15 21:30:53'),(6697,'2005-07-12 12:44:57',210,103,'2005-07-19 13:02:57',1,'2006-02-15 21:30:53'),(6698,'2005-07-12 12:45:00',4419,64,'2005-07-16 11:16:00',2,'2006-02-15 21:30:53'),(6699,'2005-07-12 12:45:21',3411,565,'2005-07-15 12:59:21',1,'2006-02-15 21:30:53'),(6700,'2005-07-12 12:47:22',3063,184,'2005-07-21 16:04:22',1,'2006-02-15 21:30:53'),(6701,'2005-07-12 12:47:59',3428,454,'2005-07-13 10:28:59',1,'2006-02-15 21:30:53'),(6702,'2005-07-12 12:48:03',233,164,'2005-07-13 11:55:03',1,'2006-02-15 21:30:53'),(6703,'2005-07-12 12:50:19',46,470,'2005-07-16 13:41:19',1,'2006-02-15 21:30:53'),(6704,'2005-07-12 12:50:24',1590,595,'2005-07-20 16:41:24',2,'2006-02-15 21:30:53'),(6705,'2005-07-12 12:53:11',4268,363,'2005-07-13 07:17:11',1,'2006-02-15 21:30:53'),(6706,'2005-07-12 12:59:16',4552,267,'2005-07-19 10:37:16',1,'2006-02-15 21:30:53'),(6707,'2005-07-12 13:07:55',406,80,'2005-07-16 16:26:55',2,'2006-02-15 21:30:53'),(6708,'2005-07-12 13:10:55',372,82,'2005-07-21 07:36:55',1,'2006-02-15 21:30:53'),(6709,'2005-07-12 13:20:41',4049,322,'2005-07-16 10:37:41',2,'2006-02-15 21:30:53'),(6710,'2005-07-12 13:23:09',806,462,'2005-07-20 10:10:09',2,'2006-02-15 21:30:53'),(6711,'2005-07-12 13:23:40',2247,257,'2005-07-20 11:45:40',2,'2006-02-15 21:30:53'),(6712,'2005-07-12 13:24:47',4581,226,'2005-07-20 09:35:47',2,'2006-02-15 21:30:53'),(6713,'2005-07-12 13:27:36',4218,557,'2005-07-16 11:14:36',1,'2006-02-15 21:30:53'),(6714,'2005-07-12 13:29:06',1947,370,'2005-07-18 16:02:06',2,'2006-02-15 21:30:53'),(6715,'2005-07-12 13:32:28',643,386,'2005-07-15 17:01:28',2,'2006-02-15 21:30:53'),(6716,'2005-07-12 13:34:58',2783,367,'2005-07-19 15:09:58',1,'2006-02-15 21:30:53'),(6717,'2005-07-12 13:35:02',523,273,'2005-07-20 15:03:02',1,'2006-02-15 21:30:53'),(6718,'2005-07-12 13:38:06',2283,541,'2005-07-18 09:05:06',1,'2006-02-15 21:30:53'),(6719,'2005-07-12 13:40:37',739,330,'2005-07-15 15:23:37',2,'2006-02-15 21:30:53'),(6720,'2005-07-12 13:41:16',2704,151,'2005-07-13 14:41:16',2,'2006-02-15 21:30:53'),(6721,'2005-07-12 13:42:58',2798,462,'2005-07-19 16:39:58',2,'2006-02-15 21:30:53'),(6722,'2005-07-12 13:44:03',3124,211,'2005-07-19 12:43:03',2,'2006-02-15 21:30:53'),(6723,'2005-07-12 13:44:57',2678,499,'2005-07-14 15:57:57',2,'2006-02-15 21:30:53'),(6724,'2005-07-12 13:45:15',2486,262,'2005-07-19 19:18:15',1,'2006-02-15 21:30:53'),(6725,'2005-07-12 13:47:17',831,213,'2005-07-17 13:31:17',1,'2006-02-15 21:30:53'),(6726,'2005-07-12 13:48:14',4494,97,'2005-07-16 11:11:14',1,'2006-02-15 21:30:53'),(6727,'2005-07-12 13:54:25',3793,407,'2005-07-14 17:29:25',1,'2006-02-15 21:30:53'),(6728,'2005-07-12 13:56:48',2113,414,'2005-07-15 18:49:48',1,'2006-02-15 21:30:53'),(6729,'2005-07-12 13:58:23',2495,455,'2005-07-19 09:34:23',2,'2006-02-15 21:30:53'),(6730,'2005-07-12 13:58:25',1552,532,'2005-07-20 13:01:25',1,'2006-02-15 21:30:53'),(6731,'2005-07-12 13:58:27',844,593,'2005-07-15 10:04:27',2,'2006-02-15 21:30:53'),(6732,'2005-07-12 13:58:51',1913,299,'2005-07-17 17:42:51',1,'2006-02-15 21:30:53'),(6733,'2005-07-12 14:04:01',1476,585,'2005-07-21 18:57:01',2,'2006-02-15 21:30:53'),(6734,'2005-07-12 14:04:24',2248,446,'2005-07-21 19:47:24',1,'2006-02-15 21:30:53'),(6735,'2005-07-12 14:08:20',276,428,'2005-07-18 09:41:20',2,'2006-02-15 21:30:53'),(6736,'2005-07-12 14:16:50',530,342,'2005-07-15 16:26:50',1,'2006-02-15 21:30:53'),(6737,'2005-07-12 14:16:52',315,304,'2005-07-18 19:48:52',1,'2006-02-15 21:30:53'),(6738,'2005-07-12 14:17:55',1197,366,'2005-07-21 10:11:55',2,'2006-02-15 21:30:53'),(6739,'2005-07-12 14:22:08',1221,71,'2005-07-18 16:57:08',2,'2006-02-15 21:30:53'),(6740,'2005-07-12 14:22:08',2431,139,'2005-07-14 14:35:08',1,'2006-02-15 21:30:53'),(6741,'2005-07-12 14:24:16',237,359,'2005-07-15 08:31:16',1,'2006-02-15 21:30:53'),(6742,'2005-07-12 14:25:31',4242,558,'2005-07-17 08:50:31',2,'2006-02-15 21:30:53'),(6743,'2005-07-12 14:29:25',158,261,'2005-07-13 13:13:25',1,'2006-02-15 21:30:53'),(6744,'2005-07-12 14:30:28',2565,64,'2005-07-14 16:20:28',1,'2006-02-15 21:30:53'),(6745,'2005-07-12 14:30:51',1331,524,'2005-07-13 13:42:51',2,'2006-02-15 21:30:53'),(6746,'2005-07-12 14:33:01',3127,537,'2005-07-17 19:52:01',2,'2006-02-15 21:30:53'),(6747,'2005-07-12 14:33:21',3651,126,'2005-07-13 09:59:21',2,'2006-02-15 21:30:53'),(6748,'2005-07-12 14:39:27',3655,540,'2005-07-18 13:40:27',2,'2006-02-15 21:30:53'),(6749,'2005-07-12 14:43:05',2895,334,'2005-07-21 15:13:05',2,'2006-02-15 21:30:53'),(6750,'2005-07-12 14:49:39',3838,459,'2005-07-18 18:43:39',2,'2006-02-15 21:30:53'),(6751,'2005-07-12 14:50:34',1749,312,'2005-07-15 19:39:34',2,'2006-02-15 21:30:53'),(6752,'2005-07-12 14:53:15',3392,453,'2005-07-20 09:23:15',1,'2006-02-15 21:30:53'),(6753,'2005-07-12 14:55:42',2591,147,'2005-07-18 19:16:42',1,'2006-02-15 21:30:53'),(6754,'2005-07-12 14:59:24',1460,114,'2005-07-14 11:04:24',2,'2006-02-15 21:30:53'),(6755,'2005-07-12 15:07:49',2542,126,'2005-07-21 18:43:49',2,'2006-02-15 21:30:53'),(6756,'2005-07-12 15:08:28',1174,531,'2005-07-13 14:25:28',2,'2006-02-15 21:30:53'),(6757,'2005-07-12 15:09:48',547,558,'2005-07-17 15:04:48',2,'2006-02-15 21:30:53'),(6758,'2005-07-12 15:13:49',4098,546,'2005-07-20 09:31:49',2,'2006-02-15 21:30:53'),(6759,'2005-07-12 15:14:48',3624,49,'2005-07-15 11:29:48',1,'2006-02-15 21:30:53'),(6760,'2005-07-12 15:16:00',501,502,'2005-07-20 13:20:00',2,'2006-02-15 21:30:53'),(6761,'2005-07-12 15:17:42',3645,7,'2005-07-18 17:59:42',2,'2006-02-15 21:30:53'),(6762,'2005-07-12 15:25:33',3857,262,'2005-07-21 18:57:33',1,'2006-02-15 21:30:53'),(6763,'2005-07-12 15:26:34',3364,314,'2005-07-18 16:38:34',2,'2006-02-15 21:30:53'),(6764,'2005-07-12 15:29:27',4407,396,'2005-07-21 20:00:27',2,'2006-02-15 21:30:53'),(6765,'2005-07-12 15:30:47',2571,433,'2005-07-19 14:19:47',2,'2006-02-15 21:30:53'),(6766,'2005-07-12 15:32:01',3615,171,'2005-07-18 14:03:01',2,'2006-02-15 21:30:53'),(6767,'2005-07-12 15:46:55',1819,208,'2005-07-17 17:36:55',2,'2006-02-15 21:30:53'),(6768,'2005-07-12 15:47:51',3418,151,'2005-07-19 21:17:51',2,'2006-02-15 21:30:53'),(6769,'2005-07-12 15:48:54',1687,63,'2005-07-21 14:39:54',2,'2006-02-15 21:30:53'),(6770,'2005-07-12 15:49:40',2080,360,'2005-07-20 10:14:40',2,'2006-02-15 21:30:53'),(6771,'2005-07-12 15:54:40',1113,396,'2005-07-17 15:56:40',2,'2006-02-15 21:30:53'),(6772,'2005-07-12 15:55:35',3810,89,'2005-07-18 10:47:35',1,'2006-02-15 21:30:53'),(6773,'2005-07-12 15:55:39',3346,12,'2005-07-18 17:52:39',2,'2006-02-15 21:30:53'),(6774,'2005-07-12 15:56:08',868,171,'2005-07-13 18:42:08',1,'2006-02-15 21:30:53'),(6775,'2005-07-12 16:01:44',2909,383,'2005-07-19 14:11:44',1,'2006-02-15 21:30:53'),(6776,'2005-07-12 16:02:09',2398,348,'2005-07-20 16:31:09',1,'2006-02-15 21:30:53'),(6777,'2005-07-12 16:04:40',4089,351,'2005-07-20 15:05:40',2,'2006-02-15 21:30:53'),(6778,'2005-07-12 16:06:00',4503,381,'2005-07-14 21:57:00',2,'2006-02-15 21:30:53'),(6779,'2005-07-12 16:10:50',4468,404,'2005-07-17 14:51:50',2,'2006-02-15 21:30:53'),(6780,'2005-07-12 16:18:12',1255,121,'2005-07-13 17:56:12',2,'2006-02-15 21:30:53'),(6781,'2005-07-12 16:21:47',3783,533,'2005-07-15 19:52:47',1,'2006-02-15 21:30:53'),(6782,'2005-07-12 16:23:25',2742,199,'2005-07-20 18:46:25',2,'2006-02-15 21:30:53'),(6783,'2005-07-12 16:27:56',3633,506,'2005-07-13 12:11:56',2,'2006-02-15 21:30:53'),(6784,'2005-07-12 16:28:49',197,578,'2005-07-15 17:27:49',1,'2006-02-15 21:30:53'),(6785,'2005-07-12 16:30:57',4448,69,'2005-07-18 20:46:57',1,'2006-02-15 21:30:53'),(6786,'2005-07-12 16:32:33',2011,546,'2005-07-16 12:42:33',2,'2006-02-15 21:30:53'),(6787,'2005-07-12 16:33:28',1481,342,'2005-07-18 21:48:28',2,'2006-02-15 21:30:53'),(6788,'2005-07-12 16:33:44',1162,460,'2005-07-20 15:38:44',2,'2006-02-15 21:30:53'),(6789,'2005-07-12 16:34:40',1973,76,'2005-07-14 17:02:40',2,'2006-02-15 21:30:53'),(6790,'2005-07-12 16:34:59',4486,400,'2005-07-17 21:43:59',2,'2006-02-15 21:30:53'),(6791,'2005-07-12 16:35:07',1495,144,'2005-07-20 15:32:07',2,'2006-02-15 21:30:53'),(6792,'2005-07-12 16:37:28',510,571,'2005-07-20 11:20:28',2,'2006-02-15 21:30:53'),(6793,'2005-07-12 16:37:55',103,148,'2005-07-21 16:04:55',2,'2006-02-15 21:30:53'),(6794,'2005-07-12 16:38:23',813,233,'2005-07-20 17:36:23',2,'2006-02-15 21:30:53'),(6795,'2005-07-12 16:41:00',1489,245,'2005-07-21 20:52:00',1,'2006-02-15 21:30:53'),(6796,'2005-07-12 16:44:16',227,291,'2005-07-16 14:48:16',2,'2006-02-15 21:30:53'),(6797,'2005-07-12 16:47:06',1536,469,'2005-07-14 14:38:06',2,'2006-02-15 21:30:53'),(6798,'2005-07-12 16:49:11',275,115,'2005-07-19 12:11:11',2,'2006-02-15 21:30:53'),(6799,'2005-07-12 16:52:13',2778,42,'2005-07-14 15:11:13',2,'2006-02-15 21:30:53'),(6800,'2005-07-12 17:03:56',3742,599,'2005-07-21 20:32:56',2,'2006-02-15 21:30:53'),(6801,'2005-07-12 17:09:08',872,500,'2005-07-21 22:25:08',1,'2006-02-15 21:30:53'),(6802,'2005-07-12 17:14:17',2942,298,'2005-07-17 11:54:17',2,'2006-02-15 21:30:53'),(6803,'2005-07-12 17:21:49',2676,490,'2005-07-14 18:01:49',2,'2006-02-15 21:30:53'),(6804,'2005-07-12 17:22:06',1554,269,'2005-07-21 11:37:06',1,'2006-02-15 21:30:53'),(6805,'2005-07-12 17:23:01',1758,262,'2005-07-21 19:38:01',2,'2006-02-15 21:30:53'),(6806,'2005-07-12 17:31:43',656,179,'2005-07-17 14:36:43',1,'2006-02-15 21:30:53'),(6807,'2005-07-12 17:33:53',669,376,'2005-07-18 16:28:53',2,'2006-02-15 21:30:53'),(6808,'2005-07-12 17:36:42',362,263,'2005-07-18 23:33:42',2,'2006-02-15 21:30:53'),(6809,'2005-07-12 17:51:54',3455,168,'2005-07-17 15:10:54',1,'2006-02-15 21:30:53'),(6810,'2005-07-12 17:54:19',2802,485,'2005-07-20 16:58:19',2,'2006-02-15 21:30:53'),(6811,'2005-07-12 17:54:33',1572,107,'2005-07-20 17:39:33',1,'2006-02-15 21:30:53'),(6812,'2005-07-12 18:03:25',2227,553,'2005-07-20 18:33:25',2,'2006-02-15 21:30:53'),(6813,'2005-07-12 18:03:50',135,54,'2005-07-16 16:30:50',1,'2006-02-15 21:30:53'),(6814,'2005-07-12 18:11:58',1863,579,'2005-07-18 20:37:58',2,'2006-02-15 21:30:53'),(6815,'2005-07-12 18:14:10',3236,468,'2005-07-17 14:16:10',1,'2006-02-15 21:30:53'),(6816,'2005-07-12 18:18:50',2963,290,'2005-07-18 21:09:50',2,'2006-02-15 21:30:53'),(6817,'2005-07-12 18:19:57',184,135,'2005-07-19 22:53:57',1,'2006-02-15 21:30:53'),(6818,'2005-07-12 18:20:54',1013,153,'2005-07-21 00:03:54',2,'2006-02-15 21:30:53'),(6819,'2005-07-12 18:21:01',1253,198,'2005-07-13 21:14:01',1,'2006-02-15 21:30:53'),(6820,'2005-07-12 18:21:30',223,243,'2005-07-14 15:14:30',1,'2006-02-15 21:30:53'),(6821,'2005-07-12 18:22:10',623,363,'2005-07-14 13:25:10',2,'2006-02-15 21:30:53'),(6822,'2005-07-12 18:23:39',1592,300,'2005-07-19 21:06:39',1,'2006-02-15 21:30:53'),(6823,'2005-07-12 18:24:31',795,557,'2005-07-17 23:13:31',1,'2006-02-15 21:30:53'),(6824,'2005-07-12 18:26:46',858,579,'2005-07-21 15:23:46',1,'2006-02-15 21:30:53'),(6825,'2005-07-12 18:28:12',2342,281,'2005-07-15 19:24:12',1,'2006-02-15 21:30:53'),(6826,'2005-07-12 18:32:02',1708,408,'2005-07-16 23:21:02',1,'2006-02-15 21:30:53'),(6827,'2005-07-12 18:33:45',1529,283,'2005-07-13 19:09:45',1,'2006-02-15 21:30:53'),(6828,'2005-07-12 18:38:51',874,502,'2005-07-14 20:10:51',1,'2006-02-15 21:30:53'),(6829,'2005-07-12 18:38:59',4184,361,'2005-07-16 23:25:59',1,'2006-02-15 21:30:53'),(6830,'2005-07-12 18:42:55',1943,578,'2005-07-17 17:58:55',1,'2006-02-15 21:30:53'),(6831,'2005-07-12 18:44:04',924,163,'2005-07-16 21:39:04',2,'2006-02-15 21:30:53'),(6832,'2005-07-12 18:51:41',444,220,'2005-07-20 13:29:41',2,'2006-02-15 21:30:53'),(6833,'2005-07-12 18:53:34',912,301,'2005-07-19 22:21:34',2,'2006-02-15 21:30:53'),(6834,'2005-07-12 18:53:37',897,533,'2005-07-19 13:42:37',1,'2006-02-15 21:30:53'),(6835,'2005-07-12 18:58:03',1444,367,'2005-07-18 00:41:03',1,'2006-02-15 21:30:53'),(6836,'2005-07-12 18:58:05',2744,113,'2005-07-15 17:45:05',1,'2006-02-15 21:30:53'),(6837,'2005-07-12 18:59:45',1203,533,'2005-07-21 22:47:45',2,'2006-02-15 21:30:53'),(6838,'2005-07-12 19:01:30',3492,354,'2005-07-17 23:42:30',1,'2006-02-15 21:30:53'),(6839,'2005-07-12 19:03:19',3900,357,'2005-07-15 23:48:19',1,'2006-02-15 21:30:53'),(6840,'2005-07-12 19:03:22',1381,323,'2005-07-21 18:34:22',2,'2006-02-15 21:30:53'),(6841,'2005-07-12 19:04:24',2265,108,'2005-07-14 23:58:24',1,'2006-02-15 21:30:53'),(6842,'2005-07-12 19:07:55',3376,366,'2005-07-19 22:47:55',1,'2006-02-15 21:30:53'),(6843,'2005-07-12 19:14:05',746,561,'2005-07-20 23:15:05',1,'2006-02-15 21:30:53'),(6844,'2005-07-12 19:14:53',3211,482,'2005-07-18 16:07:53',2,'2006-02-15 21:30:53'),(6845,'2005-07-12 19:20:41',3833,414,'2005-07-14 15:27:41',1,'2006-02-15 21:30:53'),(6846,'2005-07-12 19:20:45',1214,18,'2005-07-17 00:06:45',1,'2006-02-15 21:30:53'),(6847,'2005-07-12 19:22:37',346,63,'2005-07-21 18:53:37',2,'2006-02-15 21:30:53'),(6848,'2005-07-12 19:24:07',1782,433,'2005-07-14 17:03:07',1,'2006-02-15 21:30:53'),(6849,'2005-07-12 19:29:19',4307,479,'2005-07-19 22:03:19',1,'2006-02-15 21:30:53'),(6850,'2005-07-12 19:30:42',1145,433,'2005-07-17 21:26:42',2,'2006-02-15 21:30:53'),(6851,'2005-07-12 19:32:14',664,280,'2005-07-17 21:03:14',1,'2006-02-15 21:30:53'),(6852,'2005-07-12 19:33:49',2182,75,'2005-07-13 20:01:49',2,'2006-02-15 21:30:53'),(6853,'2005-07-12 19:38:11',4006,299,'2005-07-20 00:14:11',1,'2006-02-15 21:30:53'),(6854,'2005-07-12 19:38:57',3173,151,'2005-07-16 16:28:57',1,'2006-02-15 21:30:53'),(6855,'2005-07-12 19:46:29',2657,24,'2005-07-15 16:56:29',2,'2006-02-15 21:30:53'),(6856,'2005-07-12 19:50:16',4338,275,'2005-07-14 22:25:16',1,'2006-02-15 21:30:53'),(6857,'2005-07-12 19:53:30',424,196,'2005-07-13 15:22:30',1,'2006-02-15 21:30:53'),(6858,'2005-07-12 19:53:51',1095,516,'2005-07-19 14:12:51',1,'2006-02-15 21:30:53'),(6859,'2005-07-12 19:53:57',4108,321,'2005-07-17 19:48:57',2,'2006-02-15 21:30:53'),(6860,'2005-07-12 19:54:17',2907,91,'2005-07-18 13:59:17',1,'2006-02-15 21:30:53'),(6861,'2005-07-12 19:56:52',354,83,'2005-07-13 16:02:52',1,'2006-02-15 21:30:53'),(6862,'2005-07-12 19:58:09',3477,231,'2005-07-18 15:48:09',2,'2006-02-15 21:30:53'),(6863,'2005-07-12 19:58:34',229,484,'2005-07-21 16:57:34',1,'2006-02-15 21:30:53'),(6864,'2005-07-12 19:59:25',2252,38,'2005-07-19 15:52:25',2,'2006-02-15 21:30:53'),(6865,'2005-07-12 20:02:40',1428,175,'2005-07-20 00:39:40',2,'2006-02-15 21:30:53'),(6866,'2005-07-12 20:03:44',2481,312,'2005-07-15 01:55:44',1,'2006-02-15 21:30:53'),(6867,'2005-07-12 20:06:47',3354,190,'2005-07-19 16:59:47',1,'2006-02-15 21:30:53'),(6868,'2005-07-12 20:10:17',719,306,'2005-07-15 22:34:17',2,'2006-02-15 21:30:53'),(6869,'2005-07-12 20:12:06',3546,278,'2005-07-13 18:37:06',1,'2006-02-15 21:30:53'),(6870,'2005-07-12 20:13:45',3102,13,'2005-07-16 22:09:45',2,'2006-02-15 21:30:53'),(6871,'2005-07-12 20:13:49',3612,204,'2005-07-14 20:11:49',2,'2006-02-15 21:30:53'),(6872,'2005-07-12 20:15:04',3246,86,'2005-07-18 18:19:04',1,'2006-02-15 21:30:53'),(6873,'2005-07-12 20:20:50',802,161,'2005-07-17 01:51:50',1,'2006-02-15 21:30:53'),(6874,'2005-07-12 20:20:53',4478,539,'2005-07-19 19:41:53',1,'2006-02-15 21:30:53'),(6875,'2005-07-12 20:23:05',3420,172,'2005-07-19 00:09:05',2,'2006-02-15 21:30:53'),(6876,'2005-07-12 20:32:50',34,531,'2005-07-16 21:12:50',1,'2006-02-15 21:30:53'),(6877,'2005-07-12 20:32:58',3968,231,'2005-07-18 18:01:58',1,'2006-02-15 21:30:53'),(6878,'2005-07-12 20:37:13',2428,363,'2005-07-19 20:13:13',2,'2006-02-15 21:30:53'),(6879,'2005-07-12 20:37:37',1901,416,'2005-07-20 15:40:37',2,'2006-02-15 21:30:53'),(6880,'2005-07-12 20:41:35',1473,229,'2005-07-17 02:22:35',1,'2006-02-15 21:30:53'),(6881,'2005-07-12 20:46:35',2496,346,'2005-07-21 00:26:35',2,'2006-02-15 21:30:53'),(6882,'2005-07-12 20:50:39',2469,166,'2005-07-14 21:01:39',1,'2006-02-15 21:30:53'),(6883,'2005-07-12 20:50:48',468,596,'2005-07-19 16:00:48',2,'2006-02-15 21:30:53'),(6884,'2005-07-12 20:52:41',3642,17,'2005-07-20 23:13:41',1,'2006-02-15 21:30:53'),(6885,'2005-07-12 20:56:04',3972,159,'2005-07-15 19:21:04',2,'2006-02-15 21:30:53'),(6886,'2005-07-12 20:58:04',4533,429,'2005-07-18 16:56:04',2,'2006-02-15 21:30:53'),(6887,'2005-07-12 21:00:23',4487,542,'2005-07-21 17:46:23',1,'2006-02-15 21:30:53'),(6888,'2005-07-12 21:01:11',1896,490,'2005-07-17 21:49:11',2,'2006-02-15 21:30:53'),(6889,'2005-07-12 21:01:22',2919,198,'2005-07-20 20:16:22',2,'2006-02-15 21:30:53'),(6890,'2005-07-12 21:03:03',2538,473,'2005-07-14 00:47:03',1,'2006-02-15 21:30:53'),(6891,'2005-07-12 21:07:35',3189,507,'2005-07-14 16:59:35',2,'2006-02-15 21:30:53'),(6892,'2005-07-12 21:10:04',1567,138,'2005-07-13 23:03:04',2,'2006-02-15 21:30:53'),(6893,'2005-07-12 21:20:11',2611,377,'2005-07-21 18:55:11',2,'2006-02-15 21:30:53'),(6894,'2005-07-12 21:20:50',1347,315,'2005-07-20 23:42:50',2,'2006-02-15 21:30:53'),(6895,'2005-07-12 21:23:59',2935,599,'2005-07-19 20:47:59',2,'2006-02-15 21:30:53'),(6896,'2005-07-12 21:25:37',1266,111,'2005-07-20 23:51:37',1,'2006-02-15 21:30:53'),(6897,'2005-07-12 21:30:41',170,13,'2005-07-15 03:19:41',1,'2006-02-15 21:30:53'),(6898,'2005-07-12 21:39:04',1725,557,'2005-07-15 20:30:04',1,'2006-02-15 21:30:53'),(6899,'2005-07-12 21:44:16',3565,483,'2005-07-21 22:21:16',2,'2006-02-15 21:30:53'),(6900,'2005-07-12 21:45:25',129,292,'2005-07-19 21:19:25',1,'2006-02-15 21:30:53'),(6901,'2005-07-12 21:46:33',4574,158,'2005-07-16 21:36:33',1,'2006-02-15 21:30:53'),(6902,'2005-07-12 21:57:16',314,485,'2005-07-14 20:56:16',1,'2006-02-15 21:30:53'),(6903,'2005-07-12 21:58:15',3690,517,'2005-07-14 01:38:15',2,'2006-02-15 21:30:53'),(6904,'2005-07-12 22:02:09',2312,465,'2005-07-17 16:42:09',1,'2006-02-15 21:30:53'),(6905,'2005-07-12 22:02:18',763,25,'2005-07-18 23:30:18',1,'2006-02-15 21:30:53'),(6906,'2005-07-12 22:03:02',1435,335,'2005-07-15 00:35:02',1,'2006-02-15 21:30:53'),(6907,'2005-07-12 22:03:49',2516,575,'2005-07-18 19:18:49',1,'2006-02-15 21:30:53'),(6908,'2005-07-12 22:08:46',3161,529,'2005-07-21 00:21:46',2,'2006-02-15 21:30:53'),(6909,'2005-07-12 22:09:30',769,174,'2005-07-17 02:05:30',2,'2006-02-15 21:30:53'),(6910,'2005-07-12 22:11:21',1290,546,'2005-07-21 02:35:21',1,'2006-02-15 21:30:53'),(6911,'2005-07-12 22:14:34',901,361,'2005-07-18 20:17:34',1,'2006-02-15 21:30:53'),(6912,'2005-07-12 22:17:16',1701,471,'2005-07-19 18:18:16',1,'2006-02-15 21:30:53'),(6913,'2005-07-12 22:18:12',569,443,'2005-07-14 23:03:12',2,'2006-02-15 21:30:53'),(6914,'2005-07-12 22:26:56',496,361,'2005-07-17 20:03:56',1,'2006-02-15 21:30:53'),(6915,'2005-07-12 22:28:09',1243,559,'2005-07-14 00:53:09',1,'2006-02-15 21:30:53'),(6916,'2005-07-12 22:29:18',3311,88,'2005-07-19 16:46:18',1,'2006-02-15 21:30:53'),(6917,'2005-07-12 22:30:15',3048,23,'2005-07-20 03:20:15',1,'2006-02-15 21:30:53'),(6918,'2005-07-12 22:30:29',4085,140,'2005-07-19 22:51:29',1,'2006-02-15 21:30:53'),(6919,'2005-07-12 22:32:17',1122,540,'2005-07-18 20:09:17',1,'2006-02-15 21:30:53'),(6920,'2005-07-12 22:32:58',2301,109,'2005-07-19 20:29:58',2,'2006-02-15 21:30:53'),(6921,'2005-07-12 22:39:03',3322,265,'2005-07-21 18:54:03',2,'2006-02-15 21:30:53'),(6922,'2005-07-12 22:39:48',1114,371,'2005-07-14 18:35:48',1,'2006-02-15 21:30:53'),(6923,'2005-07-12 22:40:48',2642,490,'2005-07-19 23:07:48',2,'2006-02-15 21:30:53'),(6924,'2005-07-26 22:51:53',1257,502,'2005-08-03 19:04:53',2,'2006-02-15 21:30:53'),(6925,'2005-07-26 22:52:32',2919,42,'2005-07-29 21:22:32',1,'2006-02-15 21:30:53'),(6926,'2005-07-26 22:52:45',1276,354,'2005-07-28 18:32:45',1,'2006-02-15 21:30:53'),(6927,'2005-07-26 22:56:00',4511,470,'2005-08-05 03:16:00',2,'2006-02-15 21:30:53'),(6928,'2005-07-26 22:56:21',3605,487,'2005-07-30 04:46:21',1,'2006-02-15 21:30:53'),(6929,'2005-07-26 22:59:19',3339,508,'2005-08-03 22:40:19',1,'2006-02-15 21:30:53'),(6930,'2005-07-26 23:00:01',2989,393,'2005-08-04 01:57:01',2,'2006-02-15 21:30:53'),(6931,'2005-07-26 23:02:57',2794,333,'2005-07-28 04:48:57',2,'2006-02-15 21:30:53'),(6932,'2005-07-26 23:08:04',4517,463,'2005-08-05 01:35:04',1,'2006-02-15 21:30:53'),(6933,'2005-07-26 23:09:23',1334,385,'2005-07-31 20:50:23',1,'2006-02-15 21:30:53'),(6934,'2005-07-26 23:11:03',455,107,'2005-08-04 19:18:03',1,'2006-02-15 21:30:53'),(6935,'2005-07-26 23:13:10',2771,435,'2005-07-27 18:09:10',1,'2006-02-15 21:30:53'),(6936,'2005-07-26 23:13:34',60,538,'2005-07-30 19:14:34',1,'2006-02-15 21:30:53'),(6937,'2005-07-26 23:15:50',1768,592,'2005-07-27 19:14:50',1,'2006-02-15 21:30:53'),(6938,'2005-07-26 23:16:04',2058,427,'2005-08-05 00:59:04',2,'2006-02-15 21:30:53'),(6939,'2005-07-26 23:17:51',278,354,'2005-08-03 21:12:51',2,'2006-02-15 21:30:53'),(6940,'2005-07-26 23:18:35',3876,149,'2005-08-05 01:44:35',2,'2006-02-15 21:30:53'),(6941,'2005-07-26 23:18:49',1575,441,'2005-07-31 00:23:49',2,'2006-02-15 21:30:53'),(6942,'2005-07-26 23:27:40',1203,470,'2005-07-31 03:17:40',2,'2006-02-15 21:30:53'),(6943,'2005-07-26 23:28:13',2436,21,'2005-07-30 02:22:13',2,'2006-02-15 21:30:53'),(6944,'2005-07-26 23:34:02',1168,373,'2005-08-05 01:27:02',1,'2006-02-15 21:30:53'),(6945,'2005-07-26 23:35:29',1627,560,'2005-07-28 00:12:29',1,'2006-02-15 21:30:53'),(6946,'2005-07-26 23:40:07',1854,181,'2005-08-04 01:18:07',2,'2006-02-15 21:30:53'),(6947,'2005-07-26 23:42:03',760,200,'2005-08-02 05:06:03',2,'2006-02-15 21:30:53'),(6948,'2005-07-26 23:43:49',3088,228,'2005-07-27 21:24:49',2,'2006-02-15 21:30:53'),(6949,'2005-07-26 23:44:12',1594,103,'2005-07-30 05:39:12',2,'2006-02-15 21:30:53'),(6950,'2005-07-26 23:45:33',197,503,'2005-07-31 04:40:33',2,'2006-02-15 21:30:53'),(6951,'2005-07-26 23:47:31',3348,98,'2005-07-31 22:17:31',1,'2006-02-15 21:30:53'),(6952,'2005-07-26 23:51:27',4288,290,'2005-07-30 02:45:27',2,'2006-02-15 21:30:53'),(6953,'2005-07-26 23:52:47',2910,306,'2005-07-30 23:07:47',1,'2006-02-15 21:30:53'),(6954,'2005-07-26 23:55:13',1112,584,'2005-07-28 19:01:13',2,'2006-02-15 21:30:53'),(6955,'2005-07-26 23:55:48',1104,469,'2005-08-02 03:25:48',2,'2006-02-15 21:30:53'),(6956,'2005-07-26 23:55:57',2499,240,'2005-08-03 21:41:57',1,'2006-02-15 21:30:53'),(6957,'2005-07-27 00:00:00',2231,518,'2005-07-29 19:32:00',2,'2006-02-15 21:30:53'),(6958,'2005-07-27 00:02:41',657,333,'2005-07-28 00:53:41',2,'2006-02-15 21:30:53'),(6959,'2005-07-27 00:07:51',1618,452,'2005-07-27 20:45:51',2,'2006-02-15 21:30:53'),(6960,'2005-07-27 00:08:33',192,421,'2005-08-03 20:58:33',2,'2006-02-15 21:30:53'),(6961,'2005-07-27 00:10:49',2205,38,'2005-07-30 00:26:49',2,'2006-02-15 21:30:53'),(6962,'2005-07-27 00:10:58',4500,245,'2005-07-30 02:11:58',2,'2006-02-15 21:30:53'),(6963,'2005-07-27 00:13:02',4284,489,'2005-08-03 18:13:02',1,'2006-02-15 21:30:53'),(6964,'2005-07-27 00:15:04',1537,404,'2005-07-31 00:04:04',2,'2006-02-15 21:30:53'),(6965,'2005-07-27 00:15:18',74,185,'2005-07-28 04:30:18',2,'2006-02-15 21:30:53'),(6966,'2005-07-27 00:15:35',1577,45,'2005-08-05 03:04:35',2,'2006-02-15 21:30:53'),(6967,'2005-07-27 00:16:31',1145,296,'2005-08-03 22:19:31',1,'2006-02-15 21:30:53'),(6968,'2005-07-27 00:16:45',1662,370,'2005-07-30 23:16:45',2,'2006-02-15 21:30:53'),(6969,'2005-07-27 00:23:54',2650,579,'2005-08-03 04:34:54',1,'2006-02-15 21:30:53'),(6970,'2005-07-27 00:26:14',17,418,'2005-08-03 20:00:14',2,'2006-02-15 21:30:53'),(6971,'2005-07-27 00:26:17',3493,366,'2005-08-01 03:59:17',2,'2006-02-15 21:30:53'),(6972,'2005-07-27 00:31:25',1716,434,'2005-07-28 22:15:25',2,'2006-02-15 21:30:53'),(6973,'2005-07-27 00:32:04',4572,564,'2005-07-29 01:05:04',2,'2006-02-15 21:30:53'),(6974,'2005-07-27 00:39:16',2924,122,'2005-08-04 01:59:16',2,'2006-02-15 21:30:53'),(6975,'2005-07-27 00:39:54',3328,527,'2005-08-02 19:49:54',1,'2006-02-15 21:30:53'),(6976,'2005-07-27 00:40:01',3096,41,'2005-07-31 22:30:01',2,'2006-02-15 21:30:53'),(6977,'2005-07-27 00:40:50',3545,429,'2005-08-02 19:08:50',2,'2006-02-15 21:30:53'),(6978,'2005-07-27 00:47:40',3645,132,'2005-07-31 04:32:40',2,'2006-02-15 21:30:53'),(6979,'2005-07-27 00:49:53',1001,141,'2005-07-31 03:59:53',2,'2006-02-15 21:30:53'),(6980,'2005-07-27 00:50:30',1127,164,'2005-08-03 23:35:30',1,'2006-02-15 21:30:53'),(6981,'2005-07-27 00:51:38',154,362,'2005-07-28 01:06:38',2,'2006-02-15 21:30:53'),(6982,'2005-07-27 00:53:41',3843,284,'2005-07-31 06:19:41',2,'2006-02-15 21:30:53'),(6983,'2005-07-27 00:55:03',1758,443,'2005-08-01 21:19:03',2,'2006-02-15 21:30:53'),(6984,'2005-07-27 00:56:30',2407,297,'2005-08-02 01:14:30',2,'2006-02-15 21:30:53'),(6985,'2005-07-27 00:57:42',1834,448,'2005-07-31 00:53:42',1,'2006-02-15 21:30:53'),(6986,'2005-07-27 00:59:05',2104,262,'2005-07-29 00:31:05',1,'2006-02-15 21:30:53'),(6987,'2005-07-27 00:59:50',3134,334,'2005-07-28 01:47:50',1,'2006-02-15 21:30:53'),(6988,'2005-07-27 01:00:08',756,316,'2005-07-31 04:35:08',2,'2006-02-15 21:30:53'),(6989,'2005-07-27 01:00:34',4036,120,'2005-07-30 23:53:34',1,'2006-02-15 21:30:53'),(6990,'2005-07-27 01:02:46',4065,146,'2005-07-31 00:22:46',1,'2006-02-15 21:30:53'),(6991,'2005-07-27 01:03:06',319,307,'2005-08-05 04:18:06',2,'2006-02-15 21:30:53'),(6992,'2005-07-27 01:04:45',3411,106,'2005-07-28 02:34:45',2,'2006-02-15 21:30:53'),(6993,'2005-07-27 01:05:24',3114,154,'2005-07-30 06:23:24',2,'2006-02-15 21:30:53'),(6994,'2005-07-27 01:08:26',4316,400,'2005-08-04 22:58:26',2,'2006-02-15 21:30:53'),(6995,'2005-07-27 01:12:13',1630,66,'2005-07-29 21:26:13',1,'2006-02-15 21:30:53'),(6996,'2005-07-27 01:13:45',3237,236,'2005-07-28 20:43:45',1,'2006-02-15 21:30:53'),(6997,'2005-07-27 01:14:02',2130,342,'2005-07-29 01:12:02',2,'2006-02-15 21:30:53'),(6998,'2005-07-27 01:16:29',788,300,'2005-07-30 05:50:29',2,'2006-02-15 21:30:53'),(6999,'2005-07-27 01:21:19',12,224,'2005-07-29 20:33:19',2,'2006-02-15 21:30:53'),(7000,'2005-07-27 01:23:24',2024,31,'2005-08-03 02:10:24',2,'2006-02-15 21:30:53'),(7001,'2005-07-27 01:25:34',1460,240,'2005-07-31 23:30:34',2,'2006-02-15 21:30:53'),(7002,'2005-07-27 01:26:14',4157,349,'2005-08-01 20:10:14',1,'2006-02-15 21:30:53'),(7003,'2005-07-27 01:32:06',636,161,'2005-07-30 21:33:06',2,'2006-02-15 21:30:53'),(7004,'2005-07-27 01:36:05',4416,314,'2005-08-03 23:46:05',1,'2006-02-15 21:30:53'),(7005,'2005-07-27 01:38:36',2438,446,'2005-08-02 05:56:36',2,'2006-02-15 21:30:53'),(7006,'2005-07-27 01:42:20',3522,264,'2005-08-03 03:19:20',1,'2006-02-15 21:30:53'),(7007,'2005-07-27 01:43:39',4186,257,'2005-07-31 21:04:39',1,'2006-02-15 21:30:53'),(7008,'2005-07-27 01:44:03',3659,12,'2005-07-28 21:19:03',2,'2006-02-15 21:30:53'),(7009,'2005-07-27 01:45:44',1585,414,'2005-07-28 05:50:44',1,'2006-02-15 21:30:53'),(7010,'2005-07-27 01:56:01',3016,590,'2005-07-30 04:40:01',1,'2006-02-15 21:30:53'),(7011,'2005-07-27 01:58:34',4082,254,'2005-07-28 06:11:34',1,'2006-02-15 21:30:53'),(7012,'2005-07-27 02:01:03',779,239,'2005-08-05 07:34:03',2,'2006-02-15 21:30:53'),(7013,'2005-07-27 02:03:21',3919,463,'2005-07-31 22:12:21',1,'2006-02-15 21:30:53'),(7014,'2005-07-27 02:14:40',714,524,'2005-08-03 00:32:40',2,'2006-02-15 21:30:53'),(7015,'2005-07-27 02:15:01',376,34,'2005-07-28 07:46:01',2,'2006-02-15 21:30:53'),(7016,'2005-07-27 02:15:16',1425,423,'2005-08-01 23:08:16',2,'2006-02-15 21:30:53'),(7017,'2005-07-27 02:16:03',753,176,'2005-07-31 07:49:03',1,'2006-02-15 21:30:53'),(7018,'2005-07-27 02:20:22',1078,451,'2005-08-02 05:04:22',2,'2006-02-15 21:30:53'),(7019,'2005-07-27 02:20:26',3837,491,'2005-08-02 22:48:26',1,'2006-02-15 21:30:53'),(7020,'2005-07-27 02:24:27',3965,506,'2005-07-29 01:27:27',2,'2006-02-15 21:30:53'),(7021,'2005-07-27 02:26:38',2690,380,'2005-08-05 01:18:38',1,'2006-02-15 21:30:53'),(7022,'2005-07-27 02:31:15',1711,243,'2005-07-29 02:52:15',1,'2006-02-15 21:30:53'),(7023,'2005-07-27 02:32:44',4196,303,'2005-08-03 04:06:44',1,'2006-02-15 21:30:53'),(7024,'2005-07-27 02:36:40',3113,252,'2005-07-28 06:58:40',1,'2006-02-15 21:30:53'),(7025,'2005-07-27 02:40:29',3530,176,'2005-07-29 23:02:29',2,'2006-02-15 21:30:53'),(7026,'2005-07-27 02:48:58',3456,493,'2005-07-29 03:41:58',2,'2006-02-15 21:30:53'),(7027,'2005-07-27 02:50:15',3280,61,'2005-08-04 02:58:15',1,'2006-02-15 21:30:53'),(7028,'2005-07-27 02:54:25',834,179,'2005-08-02 06:16:25',2,'2006-02-15 21:30:53'),(7029,'2005-07-27 02:57:43',2862,389,'2005-07-30 08:24:43',1,'2006-02-15 21:30:53'),(7030,'2005-07-27 03:01:40',1277,550,'2005-07-31 07:01:40',1,'2006-02-15 21:30:53'),(7031,'2005-07-27 03:02:07',1435,530,'2005-08-02 07:14:07',1,'2006-02-15 21:30:53'),(7032,'2005-07-27 03:03:09',3397,269,'2005-07-28 22:57:09',1,'2006-02-15 21:30:53'),(7033,'2005-07-27 03:03:25',2803,352,'2005-07-28 01:57:25',2,'2006-02-15 21:30:53'),(7034,'2005-07-27 03:03:37',1712,281,'2005-07-28 23:18:37',1,'2006-02-15 21:30:53'),(7035,'2005-07-27 03:06:09',2439,90,'2005-08-02 21:59:09',2,'2006-02-15 21:30:53'),(7036,'2005-07-27 03:06:12',2569,70,'2005-07-28 23:26:12',2,'2006-02-15 21:30:53'),(7037,'2005-07-27 03:06:44',3155,171,'2005-08-02 04:51:44',2,'2006-02-15 21:30:53'),(7038,'2005-07-27 03:07:29',1909,518,'2005-07-31 04:55:29',2,'2006-02-15 21:30:53'),(7039,'2005-07-27 03:11:48',1906,99,'2005-08-01 23:55:48',1,'2006-02-15 21:30:53'),(7040,'2005-07-27 03:17:19',470,524,'2005-07-29 07:03:19',2,'2006-02-15 21:30:53'),(7041,'2005-07-27 03:18:32',4212,379,'2005-07-30 06:40:32',2,'2006-02-15 21:30:53'),(7042,'2005-07-27 03:20:18',399,188,'2005-08-01 02:23:18',1,'2006-02-15 21:30:53'),(7043,'2005-07-27 03:24:23',3422,493,'2005-08-05 02:55:23',2,'2006-02-15 21:30:53'),(7044,'2005-07-27 03:27:29',88,147,'2005-08-01 07:00:29',2,'2006-02-15 21:30:53'),(7045,'2005-07-27 03:27:35',1788,64,'2005-08-01 06:31:35',2,'2006-02-15 21:30:53'),(7046,'2005-07-27 03:27:56',3740,349,'2005-07-30 00:54:56',2,'2006-02-15 21:30:53'),(7047,'2005-07-27 03:31:11',2866,236,'2005-08-03 23:40:11',1,'2006-02-15 21:30:53'),(7048,'2005-07-27 03:31:48',3707,581,'2005-08-05 07:30:48',2,'2006-02-15 21:30:53'),(7049,'2005-07-27 03:32:41',3043,332,'2005-08-04 08:32:41',2,'2006-02-15 21:30:53'),(7050,'2005-07-27 03:33:17',1135,55,'2005-08-02 03:12:17',1,'2006-02-15 21:30:53'),(7051,'2005-07-27 03:34:37',1310,184,'2005-07-31 03:48:37',2,'2006-02-15 21:30:53'),(7052,'2005-07-27 03:36:38',3798,75,'2005-08-03 21:51:38',1,'2006-02-15 21:30:53'),(7053,'2005-07-27 03:38:54',149,408,'2005-07-31 01:13:54',1,'2006-02-15 21:30:53'),(7054,'2005-07-27 03:43:28',2661,179,'2005-08-04 09:15:28',1,'2006-02-15 21:30:53'),(7055,'2005-07-27 03:45:42',4305,154,'2005-07-30 05:11:42',1,'2006-02-15 21:30:53'),(7056,'2005-07-27 03:46:27',805,233,'2005-08-05 07:46:27',1,'2006-02-15 21:30:53'),(7057,'2005-07-27 03:50:03',1196,320,'2005-08-04 04:36:03',1,'2006-02-15 21:30:53'),(7058,'2005-07-27 03:50:46',716,90,'2005-08-04 07:40:46',2,'2006-02-15 21:30:53'),(7059,'2005-07-27 03:51:02',129,578,'2005-08-02 22:04:02',1,'2006-02-15 21:30:53'),(7060,'2005-07-27 03:51:04',3912,479,'2005-08-03 07:53:04',1,'2006-02-15 21:30:53'),(7061,'2005-07-27 03:51:10',880,145,'2005-07-31 05:36:10',1,'2006-02-15 21:30:53'),(7062,'2005-07-27 03:52:01',226,469,'2005-08-03 08:26:01',1,'2006-02-15 21:30:53'),(7063,'2005-07-27 03:52:27',2125,58,'2005-08-04 07:53:27',1,'2006-02-15 21:30:53'),(7064,'2005-07-27 03:53:29',4204,320,'2005-08-03 06:32:29',1,'2006-02-15 21:30:53'),(7065,'2005-07-27 03:53:43',3570,536,'2005-07-30 23:41:43',2,'2006-02-15 21:30:53'),(7066,'2005-07-27 03:53:52',1862,185,'2005-08-05 03:32:52',1,'2006-02-15 21:30:53'),(7067,'2005-07-27 03:55:10',870,60,'2005-08-01 02:56:10',1,'2006-02-15 21:30:53'),(7068,'2005-07-27 03:57:50',4465,568,'2005-07-30 04:27:50',1,'2006-02-15 21:30:53'),(7069,'2005-07-27 03:59:35',2073,343,'2005-08-05 03:33:35',1,'2006-02-15 21:30:53'),(7070,'2005-07-27 04:01:08',4182,280,'2005-07-30 08:10:08',2,'2006-02-15 21:30:53'),(7071,'2005-07-27 04:01:15',4361,61,'2005-08-03 05:18:15',2,'2006-02-15 21:30:53'),(7072,'2005-07-27 04:02:33',3899,260,'2005-07-28 09:26:33',2,'2006-02-15 21:30:53'),(7073,'2005-07-27 04:03:26',3859,92,'2005-08-03 05:50:26',1,'2006-02-15 21:30:53'),(7074,'2005-07-27 04:06:24',1390,165,'2005-07-28 02:04:24',1,'2006-02-15 21:30:53'),(7075,'2005-07-27 04:11:40',4414,530,'2005-08-03 08:16:40',2,'2006-02-15 21:30:53'),(7076,'2005-07-27 04:12:14',2821,333,'2005-08-05 00:44:14',1,'2006-02-15 21:30:53'),(7077,'2005-07-27 04:13:02',3186,155,'2005-07-31 23:15:02',1,'2006-02-15 21:30:53'),(7078,'2005-07-27 04:16:37',4518,545,'2005-08-05 02:34:37',1,'2006-02-15 21:30:53'),(7079,'2005-07-27 04:21:58',4356,356,'2005-08-04 08:08:58',1,'2006-02-15 21:30:53'),(7080,'2005-07-27 04:25:25',710,466,'2005-08-04 04:22:25',2,'2006-02-15 21:30:53'),(7081,'2005-07-27 04:25:59',462,420,'2005-08-01 00:14:59',1,'2006-02-15 21:30:53'),(7082,'2005-07-27 04:27:32',2032,64,'2005-07-30 06:06:32',2,'2006-02-15 21:30:53'),(7083,'2005-07-27 04:28:39',2663,575,'2005-07-30 04:35:39',2,'2006-02-15 21:30:53'),(7084,'2005-07-27 04:34:07',785,32,'2005-08-05 00:21:07',2,'2006-02-15 21:30:53'),(7085,'2005-07-27 04:35:44',2603,223,'2005-08-05 07:10:44',2,'2006-02-15 21:30:53'),(7086,'2005-07-27 04:39:46',2938,595,'2005-08-05 00:32:46',2,'2006-02-15 21:30:53'),(7087,'2005-07-27 04:42:08',1159,22,'2005-08-02 00:53:08',1,'2006-02-15 21:30:53'),(7088,'2005-07-27 04:42:28',373,88,'2005-08-04 07:09:28',2,'2006-02-15 21:30:53'),(7089,'2005-07-27 04:43:42',1380,446,'2005-07-30 10:04:42',1,'2006-02-15 21:30:53'),(7090,'2005-07-27 04:43:53',3495,218,'2005-07-29 07:33:53',2,'2006-02-15 21:30:53'),(7091,'2005-07-27 04:44:10',2593,322,'2005-07-31 07:14:10',1,'2006-02-15 21:30:53'),(7092,'2005-07-27 04:46:00',1433,345,'2005-08-03 07:22:00',2,'2006-02-15 21:30:53'),(7093,'2005-07-27 04:47:00',3065,574,'2005-07-31 10:15:00',1,'2006-02-15 21:30:53'),(7094,'2005-07-27 04:47:33',867,373,'2005-07-31 04:07:33',2,'2006-02-15 21:30:53'),(7095,'2005-07-27 04:51:15',1008,551,'2005-08-05 10:25:15',2,'2006-02-15 21:30:53'),(7096,'2005-07-27 04:54:42',2575,3,'2005-08-03 01:42:42',2,'2006-02-15 21:30:53'),(7097,'2005-07-27 04:56:09',258,487,'2005-07-31 05:47:09',1,'2006-02-15 21:30:53'),(7098,'2005-07-27 05:01:08',2555,359,'2005-08-02 07:49:08',2,'2006-02-15 21:30:53'),(7099,'2005-07-27 05:03:44',3136,6,'2005-07-29 00:12:44',2,'2006-02-15 21:30:53'),(7100,'2005-07-27 05:05:01',4224,413,'2005-07-28 23:12:01',2,'2006-02-15 21:30:53'),(7101,'2005-07-27 05:06:34',2006,221,'2005-07-29 06:12:34',1,'2006-02-15 21:30:53'),(7102,'2005-07-27 05:07:21',1081,411,'2005-08-01 09:41:21',2,'2006-02-15 21:30:53'),(7103,'2005-07-27 05:08:59',1697,403,'2005-07-29 03:42:59',2,'2006-02-15 21:30:53'),(7104,'2005-07-27 05:15:25',118,217,'2005-08-01 05:36:25',2,'2006-02-15 21:30:53'),(7105,'2005-07-27 05:15:37',864,15,'2005-07-28 05:49:37',2,'2006-02-15 21:30:53'),(7106,'2005-07-27 05:21:24',1415,201,'2005-08-02 01:58:24',2,'2006-02-15 21:30:53'),(7107,'2005-07-27 05:22:04',1883,104,'2005-08-02 06:38:04',1,'2006-02-15 21:30:53'),(7108,'2005-07-27 05:28:32',2720,355,'2005-07-31 07:52:32',1,'2006-02-15 21:30:53'),(7109,'2005-07-27 05:28:57',1658,406,'2005-08-04 10:41:57',2,'2006-02-15 21:30:53'),(7110,'2005-07-27 05:30:48',3289,157,'2005-07-28 01:43:48',1,'2006-02-15 21:30:53'),(7111,'2005-07-27 05:38:16',1252,473,'2005-07-29 04:28:16',2,'2006-02-15 21:30:53'),(7112,'2005-07-27 05:38:42',4056,101,'2005-08-03 05:35:42',1,'2006-02-15 21:30:53'),(7113,'2005-07-27 05:41:20',1963,534,'2005-07-30 04:50:20',1,'2006-02-15 21:30:53'),(7114,'2005-07-27 05:42:13',3892,121,'2005-07-29 01:59:13',1,'2006-02-15 21:30:53'),(7115,'2005-07-27 05:42:58',3620,359,'2005-08-02 05:35:58',2,'2006-02-15 21:30:53'),(7116,'2005-07-27 05:46:43',1755,209,'2005-08-05 05:54:43',1,'2006-02-15 21:30:53'),(7117,'2005-07-27 05:48:36',2772,326,'2005-08-01 00:33:36',1,'2006-02-15 21:30:53'),(7118,'2005-07-27 05:53:50',582,591,'2005-08-05 04:19:50',2,'2006-02-15 21:30:53'),(7119,'2005-07-27 05:55:32',1732,102,'2005-07-29 03:19:32',1,'2006-02-15 21:30:53'),(7120,'2005-07-27 05:56:39',416,98,'2005-08-04 10:57:39',1,'2006-02-15 21:30:53'),(7121,'2005-07-27 05:58:32',1264,252,'2005-07-29 06:14:32',1,'2006-02-15 21:30:53'),(7122,'2005-07-27 06:03:18',1699,172,'2005-08-04 10:43:18',2,'2006-02-15 21:30:53'),(7123,'2005-07-27 06:08:48',134,232,'2005-08-04 05:26:48',1,'2006-02-15 21:30:53'),(7124,'2005-07-27 06:09:30',3449,34,'2005-08-02 09:31:30',1,'2006-02-15 21:30:53'),(7125,'2005-07-27 06:11:00',801,460,'2005-08-04 09:41:00',2,'2006-02-15 21:30:53'),(7126,'2005-07-27 06:13:13',3240,582,'2005-07-28 08:22:13',2,'2006-02-15 21:30:53'),(7127,'2005-07-27 06:13:48',273,486,'2005-08-01 02:50:48',2,'2006-02-15 21:30:53'),(7128,'2005-07-27 06:14:36',143,529,'2005-08-02 05:18:36',1,'2006-02-15 21:30:53'),(7129,'2005-07-27 06:18:01',1930,221,'2005-07-28 02:38:01',1,'2006-02-15 21:30:53'),(7130,'2005-07-27 06:23:36',420,81,'2005-07-28 10:23:36',1,'2006-02-15 21:30:53'),(7131,'2005-07-27 06:25:06',2832,585,'2005-07-31 09:07:06',1,'2006-02-15 21:30:53'),(7132,'2005-07-27 06:28:34',3201,227,'2005-08-05 06:02:34',2,'2006-02-15 21:30:53'),(7133,'2005-07-27 06:29:23',2995,496,'2005-07-29 03:20:23',2,'2006-02-15 21:30:53'),(7134,'2005-07-27 06:33:06',1058,574,'2005-07-28 06:15:06',1,'2006-02-15 21:30:53'),(7135,'2005-07-27 06:34:32',2959,172,'2005-07-28 03:01:32',1,'2006-02-15 21:30:53'),(7136,'2005-07-27 06:38:25',1929,6,'2005-08-03 05:13:25',1,'2006-02-15 21:30:53'),(7137,'2005-07-27 06:40:41',3957,483,'2005-07-29 09:05:41',2,'2006-02-15 21:30:53'),(7138,'2005-07-27 06:47:13',1418,31,'2005-08-03 01:12:13',2,'2006-02-15 21:30:53'),(7139,'2005-07-27 06:52:21',846,575,'2005-07-30 01:45:21',1,'2006-02-15 21:30:53'),(7140,'2005-07-27 06:54:12',2028,35,'2005-08-03 10:36:12',2,'2006-02-15 21:30:53'),(7141,'2005-07-27 06:55:27',3579,423,'2005-08-01 11:10:27',1,'2006-02-15 21:30:53'),(7142,'2005-07-27 06:55:39',1743,396,'2005-07-28 01:41:39',2,'2006-02-15 21:30:53'),(7143,'2005-07-27 06:56:31',2877,91,'2005-07-31 04:38:31',2,'2006-02-15 21:30:53'),(7144,'2005-07-27 07:00:37',4506,485,'2005-08-01 06:57:37',1,'2006-02-15 21:30:53'),(7145,'2005-07-27 07:01:00',3653,109,'2005-07-31 02:31:00',1,'2006-02-15 21:30:53'),(7146,'2005-07-27 07:02:30',2245,323,'2005-08-05 10:29:30',1,'2006-02-15 21:30:53'),(7147,'2005-07-27 07:02:34',990,192,'2005-08-01 02:16:34',1,'2006-02-15 21:30:53'),(7148,'2005-07-27 07:04:09',1783,354,'2005-08-03 10:20:09',2,'2006-02-15 21:30:53'),(7149,'2005-07-27 07:10:40',3902,242,'2005-08-03 07:37:40',2,'2006-02-15 21:30:53'),(7150,'2005-07-27 07:11:14',457,191,'2005-08-05 06:55:14',2,'2006-02-15 21:30:53'),(7151,'2005-07-27 07:14:31',1259,289,'2005-08-01 01:35:31',2,'2006-02-15 21:30:53'),(7152,'2005-07-27 07:15:01',2338,370,'2005-08-05 04:50:01',1,'2006-02-15 21:30:53'),(7153,'2005-07-27 07:15:38',2657,41,'2005-07-28 09:56:38',1,'2006-02-15 21:30:53'),(7154,'2005-07-27 07:16:17',2019,518,'2005-07-28 04:04:17',2,'2006-02-15 21:30:53'),(7155,'2005-07-27 07:18:46',171,23,'2005-08-04 10:28:46',1,'2006-02-15 21:30:53'),(7156,'2005-07-27 07:19:34',34,154,'2005-07-31 04:31:34',1,'2006-02-15 21:30:53'),(7157,'2005-07-27 07:20:28',1353,423,'2005-08-02 07:19:28',1,'2006-02-15 21:30:53'),(7158,'2005-07-27 07:23:58',2432,38,'2005-08-03 06:00:58',2,'2006-02-15 21:30:53'),(7159,'2005-07-27 07:24:00',1220,158,'2005-08-05 11:13:00',1,'2006-02-15 21:30:53'),(7160,'2005-07-27 07:26:06',3905,71,'2005-07-31 04:54:06',2,'2006-02-15 21:30:53'),(7161,'2005-07-27 07:26:32',378,572,'2005-08-03 01:26:32',2,'2006-02-15 21:30:53'),(7162,'2005-07-27 07:32:45',2251,289,'2005-07-30 03:48:45',1,'2006-02-15 21:30:53'),(7163,'2005-07-27 07:36:11',3666,38,'2005-08-04 06:03:11',2,'2006-02-15 21:30:53'),(7164,'2005-07-27 07:36:34',527,284,'2005-08-04 05:05:34',2,'2006-02-15 21:30:53'),(7165,'2005-07-27 07:36:46',497,243,'2005-07-30 09:22:46',2,'2006-02-15 21:30:53'),(7166,'2005-07-27 07:36:56',1375,562,'2005-08-02 03:46:56',1,'2006-02-15 21:30:53'),(7167,'2005-07-27 07:37:26',238,380,'2005-08-03 06:39:26',1,'2006-02-15 21:30:53'),(7168,'2005-07-27 07:51:11',6,252,'2005-08-01 04:08:11',2,'2006-02-15 21:30:53'),(7169,'2005-07-27 07:51:39',735,559,'2005-08-01 06:42:39',1,'2006-02-15 21:30:53'),(7170,'2005-07-27 07:58:26',370,140,'2005-07-28 02:30:26',1,'2006-02-15 21:30:53'),(7171,'2005-07-27 07:58:35',4381,406,'2005-08-03 07:45:35',1,'2006-02-15 21:30:53'),(7172,'2005-07-27 07:59:16',2405,362,'2005-08-01 04:46:16',1,'2006-02-15 21:30:53'),(7173,'2005-07-27 07:59:24',177,592,'2005-07-28 02:23:24',2,'2006-02-15 21:30:53'),(7174,'2005-07-27 08:00:36',46,570,'2005-08-01 03:11:36',1,'2006-02-15 21:30:53'),(7175,'2005-07-27 08:03:22',568,190,'2005-08-01 02:47:22',2,'2006-02-15 21:30:53'),(7176,'2005-07-27 08:04:28',227,257,'2005-07-29 14:00:28',2,'2006-02-15 21:30:53'),(7177,'2005-07-27 08:07:39',3818,133,'2005-07-30 03:17:39',2,'2006-02-15 21:30:53'),(7178,'2005-07-27 08:09:25',1899,31,'2005-07-29 13:00:25',2,'2006-02-15 21:30:53'),(7179,'2005-07-27 08:10:29',2365,537,'2005-07-28 12:24:29',2,'2006-02-15 21:30:53'),(7180,'2005-07-27 08:14:34',460,215,'2005-07-31 05:24:34',1,'2006-02-15 21:30:53'),(7181,'2005-07-27 08:14:34',2788,130,'2005-07-28 03:09:34',1,'2006-02-15 21:30:53'),(7182,'2005-07-27 08:15:38',3209,97,'2005-08-03 12:48:38',2,'2006-02-15 21:30:53'),(7183,'2005-07-27 08:18:38',3384,302,'2005-08-01 03:24:38',1,'2006-02-15 21:30:53'),(7184,'2005-07-27 08:22:26',2324,457,'2005-08-02 09:34:26',2,'2006-02-15 21:30:53'),(7185,'2005-07-27 08:23:54',2340,121,'2005-07-30 09:50:54',1,'2006-02-15 21:30:53'),(7186,'2005-07-27 08:26:12',4005,584,'2005-07-28 12:21:12',1,'2006-02-15 21:30:53'),(7187,'2005-07-27 08:27:58',2733,169,'2005-08-05 09:05:58',1,'2006-02-15 21:30:53'),(7188,'2005-07-27 08:32:08',2199,259,'2005-07-28 08:02:08',1,'2006-02-15 21:30:53'),(7189,'2005-07-27 08:35:02',4419,151,'2005-07-30 14:00:02',2,'2006-02-15 21:30:53'),(7190,'2005-07-27 08:36:01',1330,372,'2005-07-30 08:32:01',2,'2006-02-15 21:30:53'),(7191,'2005-07-27 08:36:15',4292,495,'2005-08-03 08:54:15',1,'2006-02-15 21:30:53'),(7192,'2005-07-27 08:36:55',4329,532,'2005-07-30 11:58:55',2,'2006-02-15 21:30:53'),(7193,'2005-07-27 08:37:00',1801,237,'2005-07-30 12:51:00',2,'2006-02-15 21:30:53'),(7194,'2005-07-27 08:39:58',254,172,'2005-08-01 03:12:58',1,'2006-02-15 21:30:53'),(7195,'2005-07-27 08:47:01',721,157,'2005-07-30 08:40:01',2,'2006-02-15 21:30:53'),(7196,'2005-07-27 08:49:08',2998,118,'2005-07-29 03:54:08',1,'2006-02-15 21:30:53'),(7197,'2005-07-27 08:49:32',2109,577,'2005-07-31 13:50:32',1,'2006-02-15 21:30:53'),(7198,'2005-07-27 08:50:07',4283,520,'2005-08-04 09:46:07',2,'2006-02-15 21:30:53'),(7199,'2005-07-27 08:53:23',3685,292,'2005-08-03 10:01:23',1,'2006-02-15 21:30:53'),(7200,'2005-07-27 08:57:38',4406,78,'2005-08-02 12:29:38',2,'2006-02-15 21:30:53'),(7201,'2005-07-27 08:57:40',482,598,'2005-08-04 09:55:40',2,'2006-02-15 21:30:53'),(7202,'2005-07-27 09:00:20',109,560,'2005-08-04 03:09:20',1,'2006-02-15 21:30:53'),(7203,'2005-07-27 09:01:23',1685,492,'2005-08-04 14:14:23',1,'2006-02-15 21:30:53'),(7204,'2005-07-27 09:02:31',2512,531,'2005-08-03 08:56:31',2,'2006-02-15 21:30:53'),(7205,'2005-07-27 09:06:13',2828,36,'2005-08-05 07:11:13',1,'2006-02-15 21:30:53'),(7206,'2005-07-27 09:07:05',3752,373,'2005-07-31 03:13:05',2,'2006-02-15 21:30:53'),(7207,'2005-07-27 09:13:26',336,51,'2005-08-01 10:24:26',1,'2006-02-15 21:30:53'),(7208,'2005-07-27 09:16:28',1523,138,'2005-07-28 09:40:28',1,'2006-02-15 21:30:53'),(7209,'2005-07-27 09:16:53',3766,49,'2005-07-30 08:09:53',2,'2006-02-15 21:30:53'),(7210,'2005-07-27 09:19:05',1984,176,'2005-07-28 04:35:05',1,'2006-02-15 21:30:53'),(7211,'2005-07-27 09:20:00',4445,285,'2005-08-02 14:53:00',1,'2006-02-15 21:30:53'),(7212,'2005-07-27 09:21:22',2905,591,'2005-08-01 04:47:22',2,'2006-02-15 21:30:53'),(7213,'2005-07-27 09:22:29',2836,502,'2005-08-03 13:53:29',2,'2006-02-15 21:30:53'),(7214,'2005-07-27 09:23:33',802,309,'2005-08-03 13:14:33',2,'2006-02-15 21:30:53'),(7215,'2005-07-27 09:24:00',2713,473,'2005-08-05 07:37:00',2,'2006-02-15 21:30:53'),(7216,'2005-07-27 09:27:45',1812,292,'2005-08-03 13:08:45',1,'2006-02-15 21:30:53'),(7217,'2005-07-27 09:31:44',2646,20,'2005-07-29 10:48:44',1,'2006-02-15 21:30:53'),(7218,'2005-07-27 09:34:24',2458,530,'2005-08-01 07:00:24',1,'2006-02-15 21:30:53'),(7219,'2005-07-27 09:35:36',4046,512,'2005-07-29 04:44:36',1,'2006-02-15 21:30:53'),(7220,'2005-07-27 09:35:54',3867,79,'2005-08-04 06:00:54',2,'2006-02-15 21:30:53'),(7221,'2005-07-27 09:37:35',3820,579,'2005-07-28 11:25:35',1,'2006-02-15 21:30:53'),(7222,'2005-07-27 09:38:43',2330,206,'2005-07-28 06:25:43',1,'2006-02-15 21:30:53'),(7223,'2005-07-27 09:42:27',2623,325,'2005-08-04 04:02:27',1,'2006-02-15 21:30:53'),(7224,'2005-07-27 09:44:26',2701,106,'2005-08-05 12:46:26',2,'2006-02-15 21:30:53'),(7225,'2005-07-27 09:47:12',632,306,'2005-08-03 13:19:12',2,'2006-02-15 21:30:53'),(7226,'2005-07-27 09:47:53',3507,370,'2005-08-01 08:24:53',1,'2006-02-15 21:30:53'),(7227,'2005-07-27 09:53:43',791,164,'2005-08-05 09:36:43',2,'2006-02-15 21:30:53'),(7228,'2005-07-27 09:55:33',1693,481,'2005-07-29 04:33:33',2,'2006-02-15 21:30:53'),(7229,'2005-07-27 10:00:54',978,182,'2005-07-28 13:58:54',2,'2006-02-15 21:30:53'),(7230,'2005-07-27 10:01:41',1152,245,'2005-08-02 11:00:41',1,'2006-02-15 21:30:53'),(7231,'2005-07-27 10:01:51',1638,86,'2005-08-05 13:38:51',2,'2006-02-15 21:30:53'),(7232,'2005-07-27 10:04:19',1147,306,'2005-07-28 09:43:19',2,'2006-02-15 21:30:53'),(7233,'2005-07-27 10:08:36',213,245,'2005-07-31 16:00:36',1,'2006-02-15 21:30:53'),(7234,'2005-07-27 10:08:45',3873,372,'2005-07-31 13:58:45',1,'2006-02-15 21:30:53'),(7235,'2005-07-27 10:09:30',1261,354,'2005-08-05 11:44:30',2,'2006-02-15 21:30:53'),(7236,'2005-07-27 10:09:39',3004,218,'2005-08-03 16:05:39',1,'2006-02-15 21:30:53'),(7237,'2005-07-27 10:12:36',1904,29,'2005-07-31 08:40:36',2,'2006-02-15 21:30:53'),(7238,'2005-07-27 10:13:41',1197,116,'2005-07-29 11:07:41',1,'2006-02-15 21:30:53'),(7239,'2005-07-27 10:20:27',1786,278,'2005-07-29 10:15:27',1,'2006-02-15 21:30:53'),(7240,'2005-07-27 10:21:15',4565,324,'2005-08-03 05:04:15',1,'2006-02-15 21:30:53'),(7241,'2005-07-27 10:25:49',2433,354,'2005-07-28 05:30:49',2,'2006-02-15 21:30:53'),(7242,'2005-07-27 10:25:51',1966,565,'2005-08-04 16:02:51',2,'2006-02-15 21:30:53'),(7243,'2005-07-27 10:26:11',1287,238,'2005-07-29 11:43:11',2,'2006-02-15 21:30:53'),(7244,'2005-07-27 10:27:33',1329,339,'2005-07-30 13:09:33',1,'2006-02-15 21:30:53'),(7245,'2005-07-27 10:29:06',260,95,'2005-08-05 12:09:06',2,'2006-02-15 21:30:53'),(7246,'2005-07-27 10:30:41',2003,333,'2005-07-30 05:44:41',1,'2006-02-15 21:30:53'),(7247,'2005-07-27 10:32:58',1445,102,'2005-07-29 05:00:58',2,'2006-02-15 21:30:53'),(7248,'2005-07-27 10:37:45',4256,456,'2005-08-01 13:13:45',1,'2006-02-15 21:30:53'),(7249,'2005-07-27 10:39:53',2441,425,'2005-07-28 14:48:53',2,'2006-02-15 21:30:53'),(7250,'2005-07-27 10:44:09',3410,589,'2005-07-28 11:47:09',1,'2006-02-15 21:30:53'),(7251,'2005-07-27 10:44:55',1737,360,'2005-08-01 16:12:55',1,'2006-02-15 21:30:53'),(7252,'2005-07-27 10:45:28',3107,549,'2005-08-04 06:24:28',2,'2006-02-15 21:30:53'),(7253,'2005-07-27 10:46:37',1950,236,'2005-07-28 11:18:37',1,'2006-02-15 21:30:53'),(7254,'2005-07-27 10:48:50',2697,286,'2005-07-28 10:34:50',1,'2006-02-15 21:30:53'),(7255,'2005-07-27 10:49:54',2101,502,'2005-07-31 10:40:54',2,'2006-02-15 21:30:53'),(7256,'2005-07-27 10:58:32',4275,363,'2005-07-29 08:58:32',2,'2006-02-15 21:30:53'),(7257,'2005-07-27 11:04:17',3302,480,'2005-08-04 12:32:17',2,'2006-02-15 21:30:53'),(7258,'2005-07-27 11:05:54',2079,494,'2005-08-02 11:36:54',1,'2006-02-15 21:30:53'),(7259,'2005-07-27 11:06:00',2345,406,'2005-08-02 06:44:00',2,'2006-02-15 21:30:53'),(7260,'2005-07-27 11:09:28',3827,434,'2005-08-03 09:41:28',1,'2006-02-15 21:30:53'),(7261,'2005-07-27 11:15:01',942,172,'2005-07-28 09:42:01',2,'2006-02-15 21:30:53'),(7262,'2005-07-27 11:15:36',4097,522,'2005-07-30 10:49:36',2,'2006-02-15 21:30:53'),(7263,'2005-07-27 11:17:22',725,324,'2005-08-04 10:59:22',1,'2006-02-15 21:30:53'),(7264,'2005-07-27 11:18:58',2391,299,'2005-08-03 07:43:58',2,'2006-02-15 21:30:53'),(7265,'2005-07-27 11:19:01',3465,290,'2005-08-01 09:29:01',1,'2006-02-15 21:30:53'),(7266,'2005-07-27 11:22:17',3379,24,'2005-08-04 05:45:17',1,'2006-02-15 21:30:53'),(7267,'2005-07-27 11:22:55',3661,122,'2005-08-01 08:13:55',1,'2006-02-15 21:30:53'),(7268,'2005-07-27 11:23:09',2740,260,'2005-08-01 12:42:09',2,'2006-02-15 21:30:53'),(7269,'2005-07-27 11:23:47',2089,209,'2005-07-31 13:10:47',1,'2006-02-15 21:30:53'),(7270,'2005-07-27 11:29:02',1888,526,'2005-08-05 08:04:02',1,'2006-02-15 21:30:53'),(7271,'2005-07-27 11:29:11',858,469,'2005-08-05 15:33:11',1,'2006-02-15 21:30:53'),(7272,'2005-07-27 11:30:20',250,364,'2005-07-29 17:16:20',2,'2006-02-15 21:30:53'),(7273,'2005-07-27 11:31:22',2465,1,'2005-07-31 06:50:22',1,'2006-02-15 21:30:53'),(7274,'2005-07-27 11:35:34',4087,180,'2005-08-01 07:10:34',1,'2006-02-15 21:30:53'),(7275,'2005-07-27 11:39:08',775,323,'2005-07-30 13:37:08',2,'2006-02-15 21:30:53'),(7276,'2005-07-27 11:41:57',1665,314,'2005-08-01 10:39:57',1,'2006-02-15 21:30:53'),(7277,'2005-07-27 11:48:37',1544,67,'2005-08-03 07:20:37',1,'2006-02-15 21:30:53'),(7278,'2005-07-27 11:50:34',531,592,'2005-08-01 10:22:34',1,'2006-02-15 21:30:53'),(7279,'2005-07-27 11:50:47',1424,12,'2005-07-30 11:19:47',2,'2006-02-15 21:30:53'),(7280,'2005-07-27 11:50:52',236,342,'2005-07-30 15:53:52',2,'2006-02-15 21:30:53'),(7281,'2005-07-27 11:59:20',1350,491,'2005-08-04 12:48:20',1,'2006-02-15 21:30:53'),(7282,'2005-07-27 12:00:19',4418,276,'2005-08-04 14:48:19',2,'2006-02-15 21:30:53'),(7283,'2005-07-27 12:02:41',3101,508,'2005-08-05 07:25:41',1,'2006-02-15 21:30:53'),(7284,'2005-07-27 12:12:04',2336,52,'2005-07-31 11:17:04',2,'2006-02-15 21:30:53'),(7285,'2005-07-27 12:14:06',2855,498,'2005-08-03 14:57:06',2,'2006-02-15 21:30:53'),(7286,'2005-07-27 12:23:49',3452,498,'2005-08-04 07:57:49',1,'2006-02-15 21:30:53'),(7287,'2005-07-27 12:24:12',926,198,'2005-07-31 15:34:12',1,'2006-02-15 21:30:53'),(7288,'2005-07-27 12:24:59',45,226,'2005-08-02 15:52:59',2,'2006-02-15 21:30:53'),(7289,'2005-07-27 12:26:51',2157,187,'2005-08-02 18:20:51',2,'2006-02-15 21:30:53'),(7290,'2005-07-27 12:28:45',3652,423,'2005-08-01 16:18:45',1,'2006-02-15 21:30:53'),(7291,'2005-07-27 12:30:47',310,263,'2005-08-01 12:45:47',1,'2006-02-15 21:30:53'),(7292,'2005-07-27 12:34:14',795,468,'2005-08-01 18:16:14',2,'2006-02-15 21:30:53'),(7293,'2005-07-27 12:37:28',3333,5,'2005-07-30 15:12:28',2,'2006-02-15 21:30:53'),(7294,'2005-07-27 12:38:14',487,313,'2005-07-30 13:01:14',1,'2006-02-15 21:30:53'),(7295,'2005-07-27 12:38:47',3396,462,'2005-08-05 10:12:47',1,'2006-02-15 21:30:53'),(7296,'2005-07-27 12:39:48',1681,400,'2005-08-04 18:24:48',2,'2006-02-15 21:30:53'),(7297,'2005-07-27 12:39:48',1855,135,'2005-07-29 17:50:48',2,'2006-02-15 21:30:53'),(7298,'2005-07-27 12:45:14',1653,121,'2005-07-30 07:02:14',1,'2006-02-15 21:30:53'),(7299,'2005-07-27 12:49:56',3002,286,'2005-08-03 12:25:56',1,'2006-02-15 21:30:53'),(7300,'2005-07-27 12:50:17',4561,272,'2005-08-04 18:43:17',1,'2006-02-15 21:30:53'),(7301,'2005-07-27 12:50:23',3367,93,'2005-08-01 09:43:23',2,'2006-02-15 21:30:53'),(7302,'2005-07-27 12:52:13',4539,477,'2005-07-29 15:13:13',2,'2006-02-15 21:30:53'),(7303,'2005-07-27 12:54:39',1398,163,'2005-07-31 09:26:39',2,'2006-02-15 21:30:53'),(7304,'2005-07-27 12:56:56',1162,74,'2005-08-05 09:19:56',2,'2006-02-15 21:30:53'),(7305,'2005-07-27 12:57:06',2464,229,'2005-07-30 13:13:06',2,'2006-02-15 21:30:53'),(7306,'2005-07-27 12:57:26',2269,207,'2005-08-03 09:35:26',2,'2006-02-15 21:30:53'),(7307,'2005-07-27 12:59:10',3882,595,'2005-07-29 11:35:10',1,'2006-02-15 21:30:53'),(7308,'2005-07-27 13:00:25',1452,229,'2005-08-03 16:04:25',1,'2006-02-15 21:30:53'),(7309,'2005-07-27 13:00:29',633,317,'2005-07-29 12:15:29',2,'2006-02-15 21:30:53'),(7310,'2005-07-27 13:00:55',3711,103,'2005-07-28 17:54:55',1,'2006-02-15 21:30:53'),(7311,'2005-07-27 13:02:54',2807,582,'2005-08-04 09:52:54',1,'2006-02-15 21:30:53'),(7312,'2005-07-27 13:03:14',228,543,'2005-07-31 07:56:14',2,'2006-02-15 21:30:53'),(7313,'2005-07-27 13:11:57',1884,396,'2005-08-02 07:31:57',1,'2006-02-15 21:30:53'),(7314,'2005-07-27 13:13:32',1376,11,'2005-08-03 09:24:32',2,'2006-02-15 21:30:53'),(7315,'2005-07-27 13:14:56',974,208,'2005-08-03 08:44:56',2,'2006-02-15 21:30:53'),(7316,'2005-07-27 13:19:03',3344,114,'2005-07-28 07:43:03',2,'2006-02-15 21:30:53'),(7317,'2005-07-27 13:19:41',1518,443,'2005-07-29 16:16:41',2,'2006-02-15 21:30:53'),(7318,'2005-07-27 13:25:31',1954,301,'2005-07-31 11:44:31',2,'2006-02-15 21:30:53'),(7319,'2005-07-27 13:31:25',2370,576,'2005-08-04 07:31:25',1,'2006-02-15 21:30:53'),(7320,'2005-07-27 13:33:35',4348,241,'2005-07-31 13:22:35',2,'2006-02-15 21:30:53'),(7321,'2005-07-27 13:33:38',3525,38,'2005-08-03 07:35:38',2,'2006-02-15 21:30:53'),(7322,'2005-07-27 13:37:26',1810,508,'2005-08-03 18:00:26',2,'2006-02-15 21:30:53'),(7323,'2005-07-27 13:39:40',3830,125,'2005-07-29 08:45:40',2,'2006-02-15 21:30:53'),(7324,'2005-07-27 13:42:39',2572,462,'2005-08-04 10:33:39',2,'2006-02-15 21:30:53'),(7325,'2005-07-27 13:46:55',1727,289,'2005-07-28 14:21:55',1,'2006-02-15 21:30:53'),(7326,'2005-07-27 13:50:40',2844,432,'2005-07-30 08:16:40',1,'2006-02-15 21:30:53'),(7327,'2005-07-27 13:53:26',4074,508,'2005-08-04 17:58:26',2,'2006-02-15 21:30:53'),(7328,'2005-07-27 13:55:18',663,26,'2005-08-01 19:52:18',1,'2006-02-15 21:30:53'),(7329,'2005-07-27 13:55:34',906,226,'2005-08-04 15:15:34',1,'2006-02-15 21:30:53'),(7330,'2005-07-27 13:56:46',3705,237,'2005-08-04 07:56:46',1,'2006-02-15 21:30:53'),(7331,'2005-07-27 13:57:50',2090,60,'2005-07-31 08:59:50',1,'2006-02-15 21:30:53'),(7332,'2005-07-27 13:58:57',1761,151,'2005-08-02 12:40:57',1,'2006-02-15 21:30:53'),(7333,'2005-07-27 13:59:11',1331,230,'2005-07-30 16:04:11',1,'2006-02-15 21:30:53'),(7334,'2005-07-27 13:59:58',3006,461,'2005-07-29 11:33:58',1,'2006-02-15 21:30:53'),(7335,'2005-07-27 14:06:50',1219,219,'2005-08-05 18:27:50',2,'2006-02-15 21:30:53'),(7336,'2005-07-27 14:11:45',2706,46,'2005-07-28 11:00:45',2,'2006-02-15 21:30:53'),(7337,'2005-07-27 14:12:04',3314,525,'2005-08-03 14:57:04',2,'2006-02-15 21:30:53'),(7338,'2005-07-27 14:13:34',107,251,'2005-08-03 18:36:34',2,'2006-02-15 21:30:53'),(7339,'2005-07-27 14:17:48',3343,316,'2005-07-31 12:47:48',2,'2006-02-15 21:30:53'),(7340,'2005-07-27 14:18:10',1344,567,'2005-07-30 09:57:10',1,'2006-02-15 21:30:53'),(7341,'2005-07-27 14:23:55',3567,498,'2005-07-28 14:11:55',2,'2006-02-15 21:30:53'),(7342,'2005-07-27 14:25:17',4083,504,'2005-08-04 10:02:17',2,'2006-02-15 21:30:53'),(7343,'2005-07-27 14:27:13',1177,526,'2005-07-30 09:27:13',2,'2006-02-15 21:30:53'),(7344,'2005-07-27 14:29:28',1714,366,'2005-07-31 15:36:28',1,'2006-02-15 21:30:53'),(7345,'2005-07-27 14:29:53',2434,572,'2005-08-03 18:38:53',2,'2006-02-15 21:30:53'),(7346,'2005-07-27 14:30:42',741,2,'2005-08-02 16:48:42',1,'2006-02-15 21:30:53'),(7347,'2005-07-27 14:31:24',3779,225,'2005-07-31 16:19:24',1,'2006-02-15 21:30:53'),(7348,'2005-07-27 14:32:32',3238,43,'2005-07-28 17:05:32',1,'2006-02-15 21:30:53'),(7349,'2005-07-27 14:33:00',861,195,'2005-08-01 15:01:00',2,'2006-02-15 21:30:53'),(7350,'2005-07-27 14:34:14',737,410,'2005-08-02 19:19:14',2,'2006-02-15 21:30:53'),(7351,'2005-07-27 14:37:36',2147,445,'2005-07-30 09:58:36',2,'2006-02-15 21:30:53'),(7352,'2005-07-27 14:38:29',35,429,'2005-07-28 14:24:29',1,'2006-02-15 21:30:53'),(7353,'2005-07-27 14:38:39',1308,357,'2005-07-31 19:50:39',1,'2006-02-15 21:30:53'),(7354,'2005-07-27 14:42:11',2395,598,'2005-08-03 18:19:11',2,'2006-02-15 21:30:53'),(7355,'2005-07-27 14:45:59',3803,115,'2005-08-02 17:23:59',2,'2006-02-15 21:30:53'),(7356,'2005-07-27 14:47:35',309,397,'2005-07-28 18:10:35',2,'2006-02-15 21:30:53'),(7357,'2005-07-27 14:48:31',1917,438,'2005-08-02 18:07:31',2,'2006-02-15 21:30:53'),(7358,'2005-07-27 14:49:44',175,245,'2005-07-28 20:00:44',1,'2006-02-15 21:30:53'),(7359,'2005-07-27 14:51:04',174,183,'2005-07-31 16:03:04',2,'2006-02-15 21:30:53'),(7360,'2005-07-27 14:52:06',1312,467,'2005-08-02 12:24:06',2,'2006-02-15 21:30:53'),(7361,'2005-07-27 14:53:55',4567,463,'2005-07-31 19:48:55',2,'2006-02-15 21:30:53'),(7362,'2005-07-27 14:58:27',1902,419,'2005-08-01 11:51:27',1,'2006-02-15 21:30:53'),(7363,'2005-07-27 14:58:29',1649,407,'2005-08-05 09:02:29',1,'2006-02-15 21:30:53'),(7364,'2005-07-27 14:58:40',3046,592,'2005-08-03 09:01:40',2,'2006-02-15 21:30:53'),(7365,'2005-07-27 15:00:20',3283,450,'2005-07-30 12:58:20',1,'2006-02-15 21:30:53'),(7366,'2005-07-27 15:01:17',461,357,'2005-08-04 20:28:17',1,'2006-02-15 21:30:53'),(7367,'2005-07-27 15:05:45',1738,383,'2005-08-02 13:46:45',1,'2006-02-15 21:30:53'),(7368,'2005-07-27 15:06:05',2265,286,'2005-07-31 14:10:05',2,'2006-02-15 21:30:53'),(7369,'2005-07-27 15:07:58',3889,139,'2005-07-30 09:16:58',2,'2006-02-15 21:30:53'),(7370,'2005-07-27 15:15:53',2022,89,'2005-08-03 19:53:53',2,'2006-02-15 21:30:53'),(7371,'2005-07-27 15:18:42',1807,577,'2005-08-01 09:58:42',1,'2006-02-15 21:30:53'),(7372,'2005-07-27 15:18:42',3202,584,'2005-08-01 15:18:42',2,'2006-02-15 21:30:53'),(7373,'2005-07-27 15:19:33',3074,488,'2005-08-04 10:45:33',1,'2006-02-15 21:30:53'),(7374,'2005-07-27 15:20:57',3184,438,'2005-08-05 13:09:57',2,'2006-02-15 21:30:53'),(7375,'2005-07-27 15:22:33',2970,381,'2005-08-01 20:06:33',1,'2006-02-15 21:30:53'),(7376,'2005-07-27 15:23:02',488,2,'2005-08-04 10:35:02',2,'2006-02-15 21:30:53'),(7377,'2005-07-27 15:31:28',1369,588,'2005-08-02 19:59:28',2,'2006-02-15 21:30:53'),(7378,'2005-07-27 15:31:33',3297,144,'2005-08-03 17:15:33',2,'2006-02-15 21:30:53'),(7379,'2005-07-27 15:36:43',424,415,'2005-07-30 16:37:43',2,'2006-02-15 21:30:53'),(7380,'2005-07-27 15:37:01',988,348,'2005-08-03 19:24:01',1,'2006-02-15 21:30:53'),(7381,'2005-07-27 15:40:26',1595,483,'2005-08-02 17:26:26',2,'2006-02-15 21:30:53'),(7382,'2005-07-27 15:43:15',356,518,'2005-07-28 11:18:15',2,'2006-02-15 21:30:53'),(7383,'2005-07-27 15:46:53',3860,50,'2005-08-03 11:10:53',1,'2006-02-15 21:30:53'),(7384,'2005-07-27 15:49:45',3573,585,'2005-08-04 15:17:45',1,'2006-02-15 21:30:53'),(7385,'2005-07-27 15:49:46',2996,56,'2005-07-28 13:50:46',2,'2006-02-15 21:30:53'),(7386,'2005-07-27 15:52:10',3569,190,'2005-08-04 15:13:10',1,'2006-02-15 21:30:53'),(7387,'2005-07-27 15:54:19',3274,233,'2005-08-03 14:46:19',1,'2006-02-15 21:30:53'),(7388,'2005-07-27 15:54:19',4559,455,'2005-08-01 17:02:19',2,'2006-02-15 21:30:53'),(7389,'2005-07-27 15:56:15',3822,156,'2005-07-30 21:28:15',2,'2006-02-15 21:30:53'),(7390,'2005-07-27 15:59:19',1723,230,'2005-08-04 10:09:19',2,'2006-02-15 21:30:53'),(7391,'2005-07-27 16:00:00',1153,531,'2005-08-04 18:07:00',2,'2006-02-15 21:30:53'),(7392,'2005-07-27 16:01:05',3159,204,'2005-08-01 17:23:05',2,'2006-02-15 21:30:53'),(7393,'2005-07-27 16:02:52',2369,181,'2005-08-02 13:24:52',1,'2006-02-15 21:30:53'),(7394,'2005-07-27 16:03:08',2399,30,'2005-08-04 11:27:08',2,'2006-02-15 21:30:53'),(7395,'2005-07-27 16:03:11',2888,411,'2005-07-31 20:26:11',2,'2006-02-15 21:30:53'),(7396,'2005-07-27 16:03:53',3346,595,'2005-08-05 10:36:53',2,'2006-02-15 21:30:53'),(7397,'2005-07-27 16:05:00',4474,245,'2005-08-01 20:29:00',1,'2006-02-15 21:30:53'),(7398,'2005-07-27 16:07:22',1572,51,'2005-08-05 16:16:22',1,'2006-02-15 21:30:53'),(7399,'2005-07-27 16:16:02',1682,526,'2005-08-03 18:02:02',2,'2006-02-15 21:30:53'),(7400,'2005-07-27 16:16:37',2874,133,'2005-07-31 12:34:37',2,'2006-02-15 21:30:53'),(7401,'2005-07-27 16:17:55',2759,583,'2005-08-04 15:48:55',1,'2006-02-15 21:30:53'),(7402,'2005-07-27 16:19:40',2707,287,'2005-08-05 14:48:40',2,'2006-02-15 21:30:53'),(7403,'2005-07-27 16:22:09',2551,163,'2005-08-01 15:32:09',1,'2006-02-15 21:30:53'),(7404,'2005-07-27 16:24:43',2359,190,'2005-07-29 11:40:43',2,'2006-02-15 21:30:53'),(7405,'2005-07-27 16:25:11',2312,42,'2005-08-01 12:33:11',2,'2006-02-15 21:30:53'),(7406,'2005-07-27 16:25:45',1412,77,'2005-08-05 20:39:45',1,'2006-02-15 21:30:53'),(7407,'2005-07-27 16:29:04',3093,410,'2005-08-01 17:47:04',2,'2006-02-15 21:30:53'),(7408,'2005-07-27 16:31:40',625,371,'2005-07-31 11:56:40',2,'2006-02-15 21:30:53'),(7409,'2005-07-27 16:38:24',2352,585,'2005-07-30 18:06:24',1,'2006-02-15 21:30:53'),(7410,'2005-07-27 16:41:59',1559,337,'2005-07-29 22:11:59',1,'2006-02-15 21:30:53'),(7411,'2005-07-27 16:42:30',515,302,'2005-08-05 17:38:30',1,'2006-02-15 21:30:53'),(7412,'2005-07-27 16:44:34',950,582,'2005-08-04 15:06:34',2,'2006-02-15 21:30:53'),(7413,'2005-07-27 16:45:40',2909,254,'2005-07-31 12:02:40',1,'2006-02-15 21:30:53'),(7414,'2005-07-27 16:46:07',3276,265,'2005-08-02 20:04:07',1,'2006-02-15 21:30:53'),(7415,'2005-07-27 16:50:59',4410,294,'2005-08-02 11:21:59',1,'2006-02-15 21:30:53'),(7416,'2005-07-27 16:55:25',653,350,'2005-07-29 11:27:25',1,'2006-02-15 21:30:53'),(7417,'2005-07-27 16:58:33',2952,214,'2005-07-30 22:17:33',1,'2006-02-15 21:30:53'),(7418,'2005-07-27 16:59:09',3029,332,'2005-07-29 15:08:09',2,'2006-02-15 21:30:53'),(7419,'2005-07-27 17:04:15',3454,352,'2005-08-05 21:54:15',2,'2006-02-15 21:30:53'),(7420,'2005-07-27 17:09:39',3505,547,'2005-07-30 12:30:39',2,'2006-02-15 21:30:53'),(7421,'2005-07-27 17:10:05',3548,70,'2005-08-05 17:55:05',1,'2006-02-15 21:30:53'),(7422,'2005-07-27 17:10:42',3954,286,'2005-08-03 19:32:42',1,'2006-02-15 21:30:53'),(7423,'2005-07-27 17:11:47',666,277,'2005-07-29 12:29:47',2,'2006-02-15 21:30:53'),(7424,'2005-07-27 17:14:19',660,558,'2005-08-01 19:21:19',2,'2006-02-15 21:30:53'),(7425,'2005-07-27 17:18:35',435,263,'2005-08-02 11:18:35',1,'2006-02-15 21:30:53'),(7426,'2005-07-27 17:19:46',4420,239,'2005-07-29 21:41:46',1,'2006-02-15 21:30:53'),(7427,'2005-07-27 17:20:16',2548,442,'2005-08-03 20:38:16',2,'2006-02-15 21:30:53'),(7428,'2005-07-27 17:21:52',243,90,'2005-08-05 17:13:52',2,'2006-02-15 21:30:53'),(7429,'2005-07-27 17:24:50',2160,515,'2005-08-05 23:02:50',1,'2006-02-15 21:30:53'),(7430,'2005-07-27 17:26:14',4205,562,'2005-08-01 13:02:14',2,'2006-02-15 21:30:53'),(7431,'2005-07-27 17:27:27',3931,589,'2005-07-31 18:40:27',1,'2006-02-15 21:30:53'),(7432,'2005-07-27 17:31:40',3169,132,'2005-07-28 17:44:40',2,'2006-02-15 21:30:53'),(7433,'2005-07-27 17:32:20',1748,282,'2005-08-01 18:49:20',1,'2006-02-15 21:30:53'),(7434,'2005-07-27 17:34:40',2927,241,'2005-07-29 15:01:40',1,'2006-02-15 21:30:53'),(7435,'2005-07-27 17:38:44',1574,380,'2005-07-30 16:57:44',1,'2006-02-15 21:30:53'),(7436,'2005-07-27 17:39:12',299,45,'2005-08-01 12:40:12',2,'2006-02-15 21:30:53'),(7437,'2005-07-27 17:39:18',2617,135,'2005-07-28 18:33:18',2,'2006-02-15 21:30:53'),(7438,'2005-07-27 17:40:40',1364,52,'2005-08-05 15:25:40',1,'2006-02-15 21:30:53'),(7439,'2005-07-27 17:42:31',4091,102,'2005-08-05 16:34:31',1,'2006-02-15 21:30:53'),(7440,'2005-07-27 17:43:27',1476,484,'2005-08-03 22:12:27',1,'2006-02-15 21:30:53'),(7441,'2005-07-27 17:46:53',4039,198,'2005-07-31 23:05:53',1,'2006-02-15 21:30:53'),(7442,'2005-07-27 17:47:00',2471,105,'2005-07-28 21:37:00',1,'2006-02-15 21:30:53'),(7443,'2005-07-27 17:47:43',703,380,'2005-07-29 13:15:43',1,'2006-02-15 21:30:53'),(7444,'2005-07-27 17:49:16',120,531,'2005-07-28 15:05:16',1,'2006-02-15 21:30:53'),(7445,'2005-07-27 17:57:15',4115,394,'2005-07-31 20:24:15',1,'2006-02-15 21:30:53'),(7446,'2005-07-27 18:00:24',2337,486,'2005-07-29 13:40:24',1,'2006-02-15 21:30:53'),(7447,'2005-07-27 18:02:08',1795,107,'2005-07-29 21:15:08',1,'2006-02-15 21:30:53'),(7448,'2005-07-27 18:06:30',3584,175,'2005-07-29 15:43:30',1,'2006-02-15 21:30:53'),(7449,'2005-07-27 18:17:41',2084,421,'2005-08-01 18:52:41',1,'2006-02-15 21:30:53'),(7450,'2005-07-27 18:18:35',3496,191,'2005-08-04 15:18:35',1,'2006-02-15 21:30:53'),(7451,'2005-07-27 18:18:41',2382,29,'2005-08-03 13:55:41',2,'2006-02-15 21:30:53'),(7452,'2005-07-27 18:26:39',3482,285,'2005-08-04 17:35:39',2,'2006-02-15 21:30:53'),(7453,'2005-07-27 18:27:13',2992,29,'2005-07-29 23:52:13',1,'2006-02-15 21:30:53'),(7454,'2005-07-27 18:27:26',3248,75,'2005-07-30 23:50:26',1,'2006-02-15 21:30:53'),(7455,'2005-07-27 18:34:41',3815,405,'2005-07-31 17:32:41',1,'2006-02-15 21:30:53'),(7456,'2005-07-27 18:34:53',1959,501,'2005-07-29 17:46:53',2,'2006-02-15 21:30:53'),(7457,'2005-07-27 18:35:17',3635,510,'2005-07-30 12:41:17',2,'2006-02-15 21:30:53'),(7458,'2005-07-27 18:36:17',2964,327,'2005-07-31 22:43:17',1,'2006-02-15 21:30:53'),(7459,'2005-07-27 18:40:20',2053,2,'2005-08-02 21:07:20',2,'2006-02-15 21:30:53'),(7460,'2005-07-27 18:41:35',919,442,'2005-07-29 15:16:35',2,'2006-02-15 21:30:53'),(7461,'2005-07-27 18:45:15',1236,476,'2005-07-29 17:19:15',1,'2006-02-15 21:30:53'),(7462,'2005-07-27 18:47:47',878,114,'2005-07-29 20:46:47',2,'2006-02-15 21:30:53'),(7463,'2005-07-27 18:48:32',3676,284,'2005-07-29 23:54:32',2,'2006-02-15 21:30:53'),(7464,'2005-07-27 18:49:42',845,31,'2005-07-28 20:45:42',2,'2006-02-15 21:30:53'),(7465,'2005-07-27 18:50:30',2357,115,'2005-07-30 20:55:30',1,'2006-02-15 21:30:53'),(7466,'2005-07-27 18:51:17',2791,53,'2005-07-31 16:58:17',1,'2006-02-15 21:30:53'),(7467,'2005-07-27 18:51:54',3869,240,'2005-08-03 23:27:54',2,'2006-02-15 21:30:53'),(7468,'2005-07-27 18:52:27',3166,113,'2005-08-03 19:29:27',2,'2006-02-15 21:30:53'),(7469,'2005-07-27 18:57:40',3723,189,'2005-07-31 00:17:40',1,'2006-02-15 21:30:53'),(7470,'2005-07-27 19:01:03',289,564,'2005-08-05 19:16:03',2,'2006-02-15 21:30:53'),(7471,'2005-07-27 19:02:19',1776,95,'2005-07-30 15:12:19',1,'2006-02-15 21:30:53'),(7472,'2005-07-27 19:04:19',1535,103,'2005-08-03 00:08:19',2,'2006-02-15 21:30:53'),(7473,'2005-07-27 19:05:40',401,341,'2005-08-05 14:47:40',1,'2006-02-15 21:30:53'),(7474,'2005-07-27 19:07:17',2971,110,'2005-07-30 00:37:17',1,'2006-02-15 21:30:53'),(7475,'2005-07-27 19:07:43',1670,255,'2005-08-04 22:12:43',2,'2006-02-15 21:30:53'),(7476,'2005-07-27 19:08:56',2288,64,'2005-07-31 16:36:56',2,'2006-02-15 21:30:53'),(7477,'2005-07-27 19:11:03',2692,355,'2005-08-02 19:25:03',1,'2006-02-15 21:30:53'),(7478,'2005-07-27 19:16:02',3791,521,'2005-08-04 22:30:02',2,'2006-02-15 21:30:53'),(7479,'2005-07-27 19:18:17',218,434,'2005-07-30 18:55:17',1,'2006-02-15 21:30:53'),(7480,'2005-07-27 19:19:53',452,344,'2005-08-02 01:01:53',1,'2006-02-15 21:30:53'),(7481,'2005-07-27 19:20:25',1804,240,'2005-07-29 19:07:25',2,'2006-02-15 21:30:53'),(7482,'2005-07-27 19:24:16',485,348,'2005-08-05 18:49:16',2,'2006-02-15 21:30:53'),(7483,'2005-07-27 19:25:00',3678,106,'2005-07-29 21:19:00',2,'2006-02-15 21:30:53'),(7484,'2005-07-27 19:28:17',2746,211,'2005-07-31 20:05:17',2,'2006-02-15 21:30:53'),(7485,'2005-07-27 19:29:09',631,362,'2005-07-30 16:28:09',1,'2006-02-15 21:30:53'),(7486,'2005-07-27 19:29:24',4362,393,'2005-08-02 20:46:24',2,'2006-02-15 21:30:53'),(7487,'2005-07-27 19:32:45',4451,58,'2005-07-28 15:11:45',1,'2006-02-15 21:30:53'),(7488,'2005-07-27 19:36:15',554,365,'2005-08-05 14:14:15',1,'2006-02-15 21:30:53'),(7489,'2005-07-27 19:39:38',3732,16,'2005-07-30 23:10:38',2,'2006-02-15 21:30:53'),(7490,'2005-07-27 19:48:12',4503,595,'2005-08-04 17:15:12',1,'2006-02-15 21:30:53'),(7491,'2005-07-27 19:53:23',4261,239,'2005-07-28 23:25:23',2,'2006-02-15 21:30:53'),(7492,'2005-07-27 19:54:18',908,155,'2005-07-31 15:36:18',2,'2006-02-15 21:30:53'),(7493,'2005-07-27 19:55:46',2868,177,'2005-08-02 19:46:46',2,'2006-02-15 21:30:53'),(7494,'2005-07-27 19:56:31',2259,60,'2005-07-30 14:28:31',1,'2006-02-15 21:30:53'),(7495,'2005-07-27 20:01:20',3446,426,'2005-07-30 16:40:20',1,'2006-02-15 21:30:53'),(7496,'2005-07-27 20:04:05',2449,257,'2005-08-02 20:12:05',1,'2006-02-15 21:30:53'),(7497,'2005-07-27 20:05:27',286,387,'2005-07-30 22:47:27',1,'2006-02-15 21:30:53'),(7498,'2005-07-27 20:09:31',1144,455,'2005-07-29 23:38:31',1,'2006-02-15 21:30:53'),(7499,'2005-07-27 20:10:28',3503,157,'2005-07-30 16:24:28',1,'2006-02-15 21:30:53'),(7500,'2005-07-27 20:16:03',609,160,'2005-07-29 18:50:03',1,'2006-02-15 21:30:53'),(7501,'2005-07-27 20:16:59',1464,587,'2005-08-04 00:11:59',2,'2006-02-15 21:30:53'),(7502,'2005-07-27 20:19:08',3229,303,'2005-07-28 18:32:08',2,'2006-02-15 21:30:53'),(7503,'2005-07-27 20:23:12',579,3,'2005-08-05 18:46:12',2,'2006-02-15 21:30:53'),(7504,'2005-07-27 20:24:31',3354,283,'2005-07-30 21:25:31',2,'2006-02-15 21:30:53'),(7505,'2005-07-27 20:28:03',1342,209,'2005-08-03 17:04:03',1,'2006-02-15 21:30:53'),(7506,'2005-07-27 20:28:34',2091,527,'2005-08-05 18:14:34',1,'2006-02-15 21:30:53'),(7507,'2005-07-27 20:31:48',3618,512,'2005-08-02 17:27:48',1,'2006-02-15 21:30:53'),(7508,'2005-07-27 20:33:08',3401,465,'2005-08-01 01:29:08',1,'2006-02-15 21:30:53'),(7509,'2005-07-27 20:37:19',4134,228,'2005-08-04 19:35:19',2,'2006-02-15 21:30:53'),(7510,'2005-07-27 20:37:57',1617,257,'2005-08-01 17:14:57',2,'2006-02-15 21:30:53'),(7511,'2005-07-27 20:38:40',4044,591,'2005-08-04 22:36:40',2,'2006-02-15 21:30:53'),(7512,'2005-07-27 20:40:40',1343,352,'2005-08-05 01:44:40',1,'2006-02-15 21:30:53'),(7513,'2005-07-27 20:51:04',939,411,'2005-08-03 20:15:04',2,'2006-02-15 21:30:53'),(7514,'2005-07-27 20:51:49',400,44,'2005-07-29 18:21:49',2,'2006-02-15 21:30:53'),(7515,'2005-07-27 20:52:37',1211,390,'2005-08-02 20:17:37',2,'2006-02-15 21:30:53'),(7516,'2005-07-27 20:55:28',2178,134,'2005-07-30 00:50:28',1,'2006-02-15 21:30:53'),(7517,'2005-07-27 20:57:07',3177,41,'2005-08-04 15:08:07',1,'2006-02-15 21:30:53'),(7518,'2005-07-27 21:01:16',2676,257,'2005-08-03 15:26:16',1,'2006-02-15 21:30:53'),(7519,'2005-07-27 21:01:41',4009,124,'2005-08-05 19:15:41',1,'2006-02-15 21:30:53'),(7520,'2005-07-27 21:02:02',3875,191,'2005-07-28 18:18:02',1,'2006-02-15 21:30:53'),(7521,'2005-07-27 21:04:42',3144,176,'2005-08-03 16:06:42',1,'2006-02-15 21:30:53'),(7522,'2005-07-27 21:11:03',2038,478,'2005-08-02 16:40:03',1,'2006-02-15 21:30:53'),(7523,'2005-07-27 21:11:23',4153,410,'2005-07-28 16:37:23',1,'2006-02-15 21:30:53'),(7524,'2005-07-27 21:11:44',4295,225,'2005-08-03 02:17:44',1,'2006-02-15 21:30:53'),(7525,'2005-07-27 21:13:28',4084,281,'2005-08-04 19:44:28',2,'2006-02-15 21:30:53'),(7526,'2005-07-27 21:13:47',696,44,'2005-08-05 15:23:47',2,'2006-02-15 21:30:53'),(7527,'2005-07-27 21:14:28',2124,426,'2005-08-05 21:08:28',1,'2006-02-15 21:30:53'),(7528,'2005-07-27 21:15:25',1218,213,'2005-08-03 19:12:25',1,'2006-02-15 21:30:53'),(7529,'2005-07-27 21:18:08',3644,145,'2005-08-06 00:59:08',1,'2006-02-15 21:30:53'),(7530,'2005-07-27 21:18:58',3810,98,'2005-07-31 01:51:58',2,'2006-02-15 21:30:53'),(7531,'2005-07-27 21:19:34',2393,221,'2005-08-06 01:07:34',2,'2006-02-15 21:30:53'),(7532,'2005-07-27 21:20:52',677,34,'2005-07-30 21:38:52',1,'2006-02-15 21:30:53'),(7533,'2005-07-27 21:24:33',1791,594,'2005-08-05 16:33:33',2,'2006-02-15 21:30:53'),(7534,'2005-07-27 21:26:17',2276,282,'2005-08-05 00:23:17',2,'2006-02-15 21:30:53'),(7535,'2005-07-27 21:32:39',772,123,'2005-08-05 23:42:39',1,'2006-02-15 21:30:53'),(7536,'2005-07-27 21:34:09',3417,307,'2005-08-02 03:26:09',1,'2006-02-15 21:30:53'),(7537,'2005-07-27 21:36:09',4456,269,'2005-08-01 01:51:09',1,'2006-02-15 21:30:53'),(7538,'2005-07-27 21:38:04',2486,361,'2005-08-02 03:14:04',1,'2006-02-15 21:30:53'),(7539,'2005-07-27 21:39:42',1849,423,'2005-08-06 00:12:42',1,'2006-02-15 21:30:53'),(7540,'2005-07-27 21:39:55',2198,207,'2005-08-04 18:10:55',2,'2006-02-15 21:30:53'),(7541,'2005-07-27 21:40:05',4100,206,'2005-07-29 16:13:05',1,'2006-02-15 21:30:53'),(7542,'2005-07-27 21:43:04',1912,110,'2005-07-30 00:02:04',1,'2006-02-15 21:30:53'),(7543,'2005-07-27 21:44:28',1289,526,'2005-08-04 21:42:28',2,'2006-02-15 21:30:53'),(7544,'2005-07-27 21:47:37',766,249,'2005-08-05 02:29:37',2,'2006-02-15 21:30:53'),(7545,'2005-07-27 21:48:03',2541,292,'2005-08-01 22:23:03',2,'2006-02-15 21:30:53'),(7546,'2005-07-27 21:50:09',3683,494,'2005-08-05 03:07:09',2,'2006-02-15 21:30:53'),(7547,'2005-07-27 21:51:48',1733,547,'2005-08-06 01:05:48',2,'2006-02-15 21:30:53'),(7548,'2005-07-27 21:53:18',2194,484,'2005-08-02 17:50:18',1,'2006-02-15 21:30:53'),(7549,'2005-07-27 21:53:21',1765,591,'2005-08-05 18:53:21',1,'2006-02-15 21:30:53'),(7550,'2005-07-27 21:55:07',4488,71,'2005-07-28 23:34:07',2,'2006-02-15 21:30:53'),(7551,'2005-07-27 21:59:15',2635,304,'2005-07-31 19:54:15',2,'2006-02-15 21:30:53'),(7552,'2005-07-27 22:03:41',2166,16,'2005-07-28 22:24:41',1,'2006-02-15 21:30:53'),(7553,'2005-07-27 22:11:36',1643,275,'2005-08-03 17:52:36',1,'2006-02-15 21:30:53'),(7554,'2005-07-27 22:12:41',1805,135,'2005-08-04 01:34:41',2,'2006-02-15 21:30:53'),(7555,'2005-07-27 22:17:05',3421,533,'2005-08-02 02:50:05',2,'2006-02-15 21:30:53'),(7556,'2005-07-27 22:17:17',794,188,'2005-07-28 19:17:17',2,'2006-02-15 21:30:53'),(7557,'2005-07-27 22:18:19',3152,131,'2005-07-29 00:24:19',1,'2006-02-15 21:30:53'),(7558,'2005-07-27 22:19:08',550,80,'2005-07-30 21:31:08',1,'2006-02-15 21:30:53'),(7559,'2005-07-27 22:20:03',661,149,'2005-08-06 00:26:03',2,'2006-02-15 21:30:53'),(7560,'2005-07-27 22:20:17',3574,562,'2005-08-02 23:00:17',2,'2006-02-15 21:30:53'),(7561,'2005-07-27 22:21:05',3433,291,'2005-08-04 01:02:05',1,'2006-02-15 21:30:53'),(7562,'2005-07-27 22:25:15',4417,366,'2005-08-01 01:21:15',2,'2006-02-15 21:30:53'),(7563,'2005-07-27 22:25:36',2709,453,'2005-08-01 03:59:36',2,'2006-02-15 21:30:53'),(7564,'2005-07-27 22:31:17',2887,291,'2005-08-01 01:05:17',2,'2006-02-15 21:30:53'),(7565,'2005-07-27 22:33:59',1028,114,'2005-07-30 03:03:59',2,'2006-02-15 21:30:53'),(7566,'2005-07-27 22:34:45',1802,144,'2005-08-01 22:20:45',1,'2006-02-15 21:30:53'),(7567,'2005-07-27 22:38:05',1066,504,'2005-07-30 17:20:05',1,'2006-02-15 21:30:53'),(7568,'2005-07-27 22:38:53',1578,296,'2005-07-29 00:51:53',1,'2006-02-15 21:30:53'),(7569,'2005-07-27 22:38:53',2315,528,'2005-08-05 19:03:53',2,'2006-02-15 21:30:53'),(7570,'2005-07-27 22:40:06',3189,110,'2005-07-28 23:14:06',1,'2006-02-15 21:30:53'),(7571,'2005-07-27 22:43:42',3850,368,'2005-07-30 22:17:42',1,'2006-02-15 21:30:53'),(7572,'2005-07-27 22:44:29',3068,532,'2005-08-01 03:04:29',1,'2006-02-15 21:30:53'),(7573,'2005-07-27 22:46:20',314,467,'2005-08-04 01:55:20',1,'2006-02-15 21:30:53'),(7574,'2005-07-27 22:53:00',298,200,'2005-07-29 18:39:00',2,'2006-02-15 21:30:53'),(7575,'2005-07-27 22:53:52',702,582,'2005-07-29 02:02:52',1,'2006-02-15 21:30:53'),(7576,'2005-07-27 22:54:35',3374,446,'2005-08-03 03:53:35',2,'2006-02-15 21:30:53'),(7577,'2005-07-27 22:56:07',2723,332,'2005-08-05 21:23:07',2,'2006-02-15 21:30:53'),(7578,'2005-07-27 22:58:17',4210,332,'2005-07-29 23:14:17',1,'2006-02-15 21:30:53'),(7579,'2005-07-27 23:06:41',501,352,'2005-07-31 20:08:41',2,'2006-02-15 21:30:53'),(7580,'2005-07-27 23:07:40',338,28,'2005-08-05 02:17:40',1,'2006-02-15 21:30:53'),(7581,'2005-07-27 23:14:35',2051,166,'2005-07-29 21:30:35',1,'2006-02-15 21:30:53'),(7582,'2005-07-27 23:15:14',3941,128,'2005-07-29 03:18:14',2,'2006-02-15 21:30:53'),(7583,'2005-07-27 23:15:22',2890,198,'2005-08-04 04:39:22',2,'2006-02-15 21:30:53'),(7584,'2005-07-27 23:15:46',4390,338,'2005-08-03 02:18:46',2,'2006-02-15 21:30:53'),(7585,'2005-07-27 23:18:22',467,440,'2005-07-30 23:08:22',1,'2006-02-15 21:30:53'),(7586,'2005-07-27 23:19:29',15,316,'2005-07-29 23:04:29',1,'2006-02-15 21:30:53'),(7587,'2005-07-27 23:23:03',655,113,'2005-08-01 17:34:03',1,'2006-02-15 21:30:53'),(7588,'2005-07-27 23:23:31',4033,360,'2005-08-04 02:54:31',1,'2006-02-15 21:30:53'),(7589,'2005-07-27 23:23:36',1569,32,'2005-08-04 00:16:36',1,'2006-02-15 21:30:53'),(7590,'2005-07-27 23:24:24',2152,73,'2005-07-28 19:53:24',2,'2006-02-15 21:30:53'),(7591,'2005-07-27 23:25:54',651,525,'2005-08-02 22:54:54',1,'2006-02-15 21:30:53'),(7592,'2005-07-27 23:26:04',4105,316,'2005-07-29 23:48:04',2,'2006-02-15 21:30:53'),(7593,'2005-07-27 23:28:47',1158,436,'2005-08-02 19:51:47',1,'2006-02-15 21:30:53'),(7594,'2005-07-27 23:30:41',3230,424,'2005-08-02 04:29:41',1,'2006-02-15 21:30:53'),(7595,'2005-07-27 23:32:23',4313,390,'2005-08-03 05:28:23',1,'2006-02-15 21:30:53'),(7596,'2005-07-27 23:33:57',2097,275,'2005-08-01 20:46:57',2,'2006-02-15 21:30:53'),(7597,'2005-07-27 23:35:49',2856,169,'2005-07-30 21:38:49',1,'2006-02-15 21:30:53'),(7598,'2005-07-27 23:36:01',4545,438,'2005-07-29 23:35:01',2,'2006-02-15 21:30:53'),(7599,'2005-07-27 23:38:46',3272,87,'2005-07-28 22:52:46',1,'2006-02-15 21:30:53'),(7600,'2005-07-27 23:41:18',3492,107,'2005-08-06 04:40:18',1,'2006-02-15 21:30:53'),(7601,'2005-07-27 23:48:15',903,228,'2005-07-29 02:45:15',1,'2006-02-15 21:30:53'),(7602,'2005-07-27 23:48:35',2516,366,'2005-08-04 17:58:35',1,'2006-02-15 21:30:53'),(7603,'2005-07-27 23:54:44',124,497,'2005-07-29 01:24:44',1,'2006-02-15 21:30:53'),(7604,'2005-07-27 23:54:52',3720,406,'2005-08-05 03:04:52',2,'2006-02-15 21:30:53'),(7605,'2005-07-27 23:57:01',1391,576,'2005-08-03 04:11:01',1,'2006-02-15 21:30:53'),(7606,'2005-07-28 00:02:15',637,201,'2005-07-29 03:14:15',2,'2006-02-15 21:30:53'),(7607,'2005-07-28 00:05:53',3914,293,'2005-07-31 04:13:53',1,'2006-02-15 21:30:53'),(7608,'2005-07-28 00:08:36',1256,167,'2005-07-28 18:13:36',1,'2006-02-15 21:30:53'),(7609,'2005-07-28 00:11:00',3655,179,'2005-07-31 03:04:00',1,'2006-02-15 21:30:53'),(7610,'2005-07-28 00:11:35',1279,450,'2005-07-31 00:33:35',1,'2006-02-15 21:30:53'),(7611,'2005-07-28 00:11:47',3347,467,'2005-07-28 18:35:47',1,'2006-02-15 21:30:53'),(7612,'2005-07-28 00:11:55',1411,563,'2005-07-30 00:47:55',1,'2006-02-15 21:30:53'),(7613,'2005-07-28 00:13:58',4253,202,'2005-08-06 05:36:58',2,'2006-02-15 21:30:53'),(7614,'2005-07-28 00:14:38',3475,440,'2005-07-29 18:18:38',1,'2006-02-15 21:30:53'),(7615,'2005-07-28 00:15:24',3884,373,'2005-07-31 02:00:24',1,'2006-02-15 21:30:53'),(7616,'2005-07-28 00:15:26',3790,9,'2005-07-30 21:52:26',1,'2006-02-15 21:30:53'),(7617,'2005-07-28 00:18:40',2904,340,'2005-08-01 01:17:40',1,'2006-02-15 21:30:53'),(7618,'2005-07-28 00:24:14',774,271,'2005-08-01 04:35:14',1,'2006-02-15 21:30:53'),(7619,'2005-07-28 00:25:41',1057,419,'2005-07-30 04:35:41',2,'2006-02-15 21:30:53'),(7620,'2005-07-28 00:27:17',931,580,'2005-07-31 02:04:17',1,'2006-02-15 21:30:53'),(7621,'2005-07-28 00:34:06',1833,88,'2005-08-06 00:13:06',1,'2006-02-15 21:30:53'),(7622,'2005-07-28 00:37:34',4014,198,'2005-07-31 23:27:34',2,'2006-02-15 21:30:53'),(7623,'2005-07-28 00:37:41',1146,459,'2005-08-04 19:38:41',2,'2006-02-15 21:30:53'),(7624,'2005-07-28 00:37:44',2756,415,'2005-07-30 21:26:44',1,'2006-02-15 21:30:53'),(7625,'2005-07-28 00:47:56',3129,382,'2005-08-02 23:34:56',1,'2006-02-15 21:30:53'),(7626,'2005-07-28 00:49:01',4200,450,'2005-07-31 00:43:01',1,'2006-02-15 21:30:53'),(7627,'2005-07-28 00:56:47',782,52,'2005-08-02 04:16:47',1,'2006-02-15 21:30:53'),(7628,'2005-07-28 00:58:04',1240,516,'2005-08-03 19:16:04',1,'2006-02-15 21:30:53'),(7629,'2005-07-28 01:00:09',2453,229,'2005-07-30 06:49:09',1,'2006-02-15 21:30:53'),(7630,'2005-07-28 01:01:03',2798,351,'2005-07-31 01:08:03',2,'2006-02-15 21:30:53'),(7631,'2005-07-28 01:01:15',2437,132,'2005-08-01 06:16:15',2,'2006-02-15 21:30:53'),(7632,'2005-07-28 01:02:40',3233,181,'2005-07-30 05:31:40',2,'2006-02-15 21:30:53'),(7633,'2005-07-28 01:03:41',4171,402,'2005-08-01 23:54:41',2,'2006-02-15 21:30:53'),(7634,'2005-07-28 01:07:01',4487,365,'2005-07-31 05:00:01',1,'2006-02-15 21:30:53'),(7635,'2005-07-28 01:08:11',55,413,'2005-08-01 03:32:11',2,'2006-02-15 21:30:53'),(7636,'2005-07-28 01:08:36',202,51,'2005-08-03 21:36:36',1,'2006-02-15 21:30:53'),(7637,'2005-07-28 01:12:25',87,91,'2005-08-02 03:48:25',1,'2006-02-15 21:30:53'),(7638,'2005-07-28 01:13:26',1890,172,'2005-07-28 20:34:26',1,'2006-02-15 21:30:53'),(7639,'2005-07-28 01:14:36',767,459,'2005-07-29 00:19:36',1,'2006-02-15 21:30:53'),(7640,'2005-07-28 01:14:49',3014,229,'2005-08-03 21:50:49',1,'2006-02-15 21:30:53'),(7641,'2005-07-28 01:15:45',1868,475,'2005-08-04 23:50:45',1,'2006-02-15 21:30:53'),(7642,'2005-07-28 01:16:51',3995,523,'2005-08-02 00:45:51',2,'2006-02-15 21:30:53'),(7643,'2005-07-28 01:19:44',4369,407,'2005-08-04 21:16:44',1,'2006-02-15 21:30:53'),(7644,'2005-07-28 01:27:33',882,173,'2005-07-31 22:58:33',2,'2006-02-15 21:30:53'),(7645,'2005-07-28 01:27:42',830,381,'2005-08-03 07:16:42',2,'2006-02-15 21:30:53'),(7646,'2005-07-28 01:31:45',1615,255,'2005-07-31 07:16:45',1,'2006-02-15 21:30:53'),(7647,'2005-07-28 01:35:17',3079,36,'2005-08-01 00:14:17',1,'2006-02-15 21:30:53'),(7648,'2005-07-28 01:35:33',797,310,'2005-08-04 06:21:33',2,'2006-02-15 21:30:53'),(7649,'2005-07-28 01:37:26',2704,318,'2005-07-28 21:18:26',1,'2006-02-15 21:30:53'),(7650,'2005-07-28 01:47:20',701,290,'2005-08-05 06:00:20',2,'2006-02-15 21:30:53'),(7651,'2005-07-28 01:48:32',2753,401,'2005-08-03 03:10:32',2,'2006-02-15 21:30:53'),(7652,'2005-07-28 01:50:29',92,5,'2005-07-30 22:23:29',2,'2006-02-15 21:30:53'),(7653,'2005-07-28 01:58:30',814,232,'2005-07-28 23:32:30',2,'2006-02-15 21:30:53'),(7654,'2005-07-28 02:00:14',1009,360,'2005-07-31 20:50:14',2,'2006-02-15 21:30:53'),(7655,'2005-07-28 02:01:11',2665,513,'2005-07-30 23:12:11',2,'2006-02-15 21:30:53'),(7656,'2005-07-28 02:07:19',178,148,'2005-07-31 04:05:19',1,'2006-02-15 21:30:53'),(7657,'2005-07-28 02:09:00',2319,518,'2005-08-04 21:44:00',1,'2006-02-15 21:30:53'),(7658,'2005-07-28 02:09:12',1798,272,'2005-07-30 00:54:12',2,'2006-02-15 21:30:53'),(7659,'2005-07-28 02:09:45',1622,584,'2005-08-02 05:34:45',2,'2006-02-15 21:30:53'),(7660,'2005-07-28 02:10:10',4385,4,'2005-07-30 04:29:10',2,'2006-02-15 21:30:53'),(7661,'2005-07-28 02:10:27',3060,256,'2005-08-05 03:45:27',2,'2006-02-15 21:30:53'),(7662,'2005-07-28 02:16:08',1017,534,'2005-08-03 21:51:08',1,'2006-02-15 21:30:53'),(7663,'2005-07-28 02:19:48',832,470,'2005-07-30 21:43:48',2,'2006-02-15 21:30:53'),(7664,'2005-07-28 02:24:23',1989,461,'2005-07-29 23:01:23',1,'2006-02-15 21:30:53'),(7665,'2005-07-28 02:28:30',1455,590,'2005-07-31 20:42:30',1,'2006-02-15 21:30:53'),(7666,'2005-07-28 02:35:12',688,196,'2005-08-05 05:43:12',2,'2006-02-15 21:30:53'),(7667,'2005-07-28 02:37:22',2415,443,'2005-08-05 21:37:22',1,'2006-02-15 21:30:53'),(7668,'2005-07-28 02:41:31',3880,508,'2005-08-02 06:08:31',1,'2006-02-15 21:30:53'),(7669,'2005-07-28 02:44:07',2624,483,'2005-07-29 00:54:07',1,'2006-02-15 21:30:53'),(7670,'2005-07-28 02:44:25',1356,252,'2005-07-29 21:55:25',2,'2006-02-15 21:30:53'),(7671,'2005-07-28 02:48:31',3464,442,'2005-07-30 23:04:31',1,'2006-02-15 21:30:53'),(7672,'2005-07-28 02:49:41',573,542,'2005-08-04 02:38:41',1,'2006-02-15 21:30:53'),(7673,'2005-07-28 02:53:53',2368,409,'2005-08-06 00:07:53',1,'2006-02-15 21:30:53'),(7674,'2005-07-28 02:54:30',682,177,'2005-08-05 23:09:30',1,'2006-02-15 21:30:53'),(7675,'2005-07-28 02:55:20',153,189,'2005-07-31 05:27:20',1,'2006-02-15 21:30:53'),(7676,'2005-07-28 02:55:27',1110,508,'2005-08-01 03:50:27',2,'2006-02-15 21:30:53'),(7677,'2005-07-28 02:56:37',4464,566,'2005-07-31 02:21:37',1,'2006-02-15 21:30:53'),(7678,'2005-07-28 02:58:16',3398,510,'2005-08-06 04:22:16',1,'2006-02-15 21:30:53'),(7679,'2005-07-28 02:58:39',1063,444,'2005-08-02 04:58:39',1,'2006-02-15 21:30:53'),(7680,'2005-07-28 02:59:08',1784,559,'2005-08-03 03:37:08',2,'2006-02-15 21:30:53'),(7681,'2005-07-28 03:07:09',1176,432,'2005-07-29 08:30:09',2,'2006-02-15 21:30:53'),(7682,'2005-07-28 03:07:29',3296,400,'2005-08-04 08:48:29',2,'2006-02-15 21:30:53'),(7683,'2005-07-28 03:11:29',1760,73,'2005-08-04 00:14:29',1,'2006-02-15 21:30:53'),(7684,'2005-07-28 03:11:54',3365,40,'2005-07-31 04:40:54',2,'2006-02-15 21:30:53'),(7685,'2005-07-28 03:13:00',2213,468,'2005-08-01 00:29:00',2,'2006-02-15 21:30:53'),(7686,'2005-07-28 03:19:23',2144,184,'2005-08-04 05:17:23',2,'2006-02-15 21:30:53'),(7687,'2005-07-28 03:20:26',689,325,'2005-08-02 05:48:26',2,'2006-02-15 21:30:53'),(7688,'2005-07-28 03:20:47',1179,491,'2005-08-06 06:07:47',2,'2006-02-15 21:30:53'),(7689,'2005-07-28 03:21:24',1803,253,'2005-07-31 08:01:24',2,'2006-02-15 21:30:53'),(7690,'2005-07-28 03:26:21',1076,150,'2005-07-29 00:08:21',1,'2006-02-15 21:30:53'),(7691,'2005-07-28 03:30:09',1579,112,'2005-07-29 21:31:09',1,'2006-02-15 21:30:53'),(7692,'2005-07-28 03:30:21',267,392,'2005-07-30 22:25:21',1,'2006-02-15 21:30:53'),(7693,'2005-07-28 03:31:22',2479,148,'2005-07-31 06:42:22',2,'2006-02-15 21:30:53'),(7694,'2005-07-28 03:39:25',2892,538,'2005-07-31 05:47:25',1,'2006-02-15 21:30:53'),(7695,'2005-07-28 03:41:13',2742,323,'2005-08-06 05:06:13',2,'2006-02-15 21:30:53'),(7696,'2005-07-28 03:41:35',3463,56,'2005-08-06 05:48:35',2,'2006-02-15 21:30:53'),(7697,'2005-07-28 03:43:45',3966,377,'2005-08-03 07:55:45',2,'2006-02-15 21:30:53'),(7698,'2005-07-28 03:44:14',3650,561,'2005-08-04 03:44:14',2,'2006-02-15 21:30:53'),(7699,'2005-07-28 03:52:21',4332,53,'2005-08-01 05:00:21',2,'2006-02-15 21:30:53'),(7700,'2005-07-28 03:54:14',3546,124,'2005-08-05 06:20:14',2,'2006-02-15 21:30:53'),(7701,'2005-07-28 03:54:28',1604,306,'2005-08-01 08:39:28',2,'2006-02-15 21:30:53'),(7702,'2005-07-28 03:56:05',253,349,'2005-07-31 03:29:05',1,'2006-02-15 21:30:53'),(7703,'2005-07-28 03:59:21',2150,3,'2005-08-05 08:52:21',1,'2006-02-15 21:30:53'),(7704,'2005-07-28 04:02:13',2342,265,'2005-08-04 00:51:13',1,'2006-02-15 21:30:53'),(7705,'2005-07-28 04:02:58',1072,22,'2005-08-05 01:19:58',2,'2006-02-15 21:30:53'),(7706,'2005-07-28 04:03:17',994,263,'2005-07-29 22:16:17',2,'2006-02-15 21:30:53'),(7707,'2005-07-28 04:07:47',2563,232,'2005-07-29 02:02:47',1,'2006-02-15 21:30:53'),(7708,'2005-07-28 04:19:15',398,363,'2005-08-04 04:41:15',1,'2006-02-15 21:30:53'),(7709,'2005-07-28 04:22:14',3800,81,'2005-07-31 09:18:14',2,'2006-02-15 21:30:53'),(7710,'2005-07-28 04:24:07',3716,77,'2005-08-03 22:49:07',2,'2006-02-15 21:30:53'),(7711,'2005-07-28 04:26:42',2695,426,'2005-07-29 07:30:42',2,'2006-02-15 21:30:53'),(7712,'2005-07-28 04:29:53',3256,361,'2005-08-02 00:57:53',2,'2006-02-15 21:30:53'),(7713,'2005-07-28 04:32:14',2018,572,'2005-08-03 04:30:14',2,'2006-02-15 21:30:53'),(7714,'2005-07-28 04:32:30',940,70,'2005-08-02 07:10:30',2,'2006-02-15 21:30:53'),(7715,'2005-07-28 04:32:38',3210,512,'2005-08-05 00:37:38',2,'2006-02-15 21:30:53'),(7716,'2005-07-28 04:33:15',1493,284,'2005-08-04 00:08:15',2,'2006-02-15 21:30:53'),(7717,'2005-07-28 04:33:54',730,459,'2005-07-30 02:46:54',2,'2006-02-15 21:30:53'),(7718,'2005-07-28 04:37:59',3587,4,'2005-07-29 09:20:59',2,'2006-02-15 21:30:53'),(7719,'2005-07-28 04:39:09',2481,286,'2005-08-05 03:15:09',1,'2006-02-15 21:30:53'),(7720,'2005-07-28 04:41:44',185,520,'2005-08-04 06:51:44',2,'2006-02-15 21:30:53'),(7721,'2005-07-28 04:42:58',2228,83,'2005-07-31 07:52:58',1,'2006-02-15 21:30:53'),(7722,'2005-07-28 04:44:58',3828,309,'2005-07-30 01:29:58',1,'2006-02-15 21:30:53'),(7723,'2005-07-28 04:45:37',3263,147,'2005-07-30 09:03:37',2,'2006-02-15 21:30:53'),(7724,'2005-07-28 04:46:30',346,3,'2005-08-04 08:41:30',1,'2006-02-15 21:30:53'),(7725,'2005-07-28 04:47:14',1922,326,'2005-08-04 09:03:14',1,'2006-02-15 21:30:53'),(7726,'2005-07-28 04:52:19',2578,219,'2005-08-04 09:05:19',1,'2006-02-15 21:30:53'),(7727,'2005-07-28 04:52:43',2274,123,'2005-08-03 01:12:43',2,'2006-02-15 21:30:53'),(7728,'2005-07-28 04:56:33',492,130,'2005-07-31 07:54:33',1,'2006-02-15 21:30:53'),(7729,'2005-07-28 04:57:57',1491,89,'2005-07-30 09:38:57',1,'2006-02-15 21:30:53'),(7730,'2005-07-28 04:59:48',3118,155,'2005-08-04 04:35:48',2,'2006-02-15 21:30:53'),(7731,'2005-07-28 05:01:18',1533,413,'2005-07-29 02:22:18',1,'2006-02-15 21:30:53'),(7732,'2005-07-28 05:03:32',3597,158,'2005-07-29 10:20:32',1,'2006-02-15 21:30:53'),(7733,'2005-07-28 05:04:47',10,82,'2005-08-05 05:12:47',2,'2006-02-15 21:30:53'),(7734,'2005-07-28 05:08:44',2726,135,'2005-07-30 09:42:44',2,'2006-02-15 21:30:53'),(7735,'2005-07-28 05:09:56',3949,372,'2005-07-31 23:34:56',2,'2006-02-15 21:30:53'),(7736,'2005-07-28 05:12:04',4466,205,'2005-08-05 02:28:04',2,'2006-02-15 21:30:53'),(7737,'2005-07-28 05:15:03',1235,494,'2005-08-04 01:24:03',1,'2006-02-15 21:30:53'),(7738,'2005-07-28 05:21:42',80,10,'2005-08-03 09:46:42',2,'2006-02-15 21:30:53'),(7739,'2005-07-28 05:21:51',1554,186,'2005-07-30 02:06:51',2,'2006-02-15 21:30:53'),(7740,'2005-07-28 05:23:36',3613,395,'2005-08-01 02:20:36',2,'2006-02-15 21:30:53'),(7741,'2005-07-28 05:25:55',3917,591,'2005-08-02 02:40:55',1,'2006-02-15 21:30:53'),(7742,'2005-07-28 05:33:16',1808,49,'2005-08-06 01:04:16',2,'2006-02-15 21:30:53'),(7743,'2005-07-28 05:36:13',2883,210,'2005-08-03 11:28:13',2,'2006-02-15 21:30:53'),(7744,'2005-07-28 05:38:20',1863,288,'2005-07-31 11:00:20',1,'2006-02-15 21:30:53'),(7745,'2005-07-28 05:46:28',1014,285,'2005-08-06 07:44:28',2,'2006-02-15 21:30:53'),(7746,'2005-07-28 05:48:56',176,299,'2005-08-04 07:33:56',1,'2006-02-15 21:30:53'),(7747,'2005-07-28 05:50:11',1775,78,'2005-08-03 09:51:11',1,'2006-02-15 21:30:53'),(7748,'2005-07-28 05:52:23',3523,415,'2005-07-31 01:35:23',2,'2006-02-15 21:30:53'),(7749,'2005-07-28 05:53:36',3585,232,'2005-08-01 03:49:36',1,'2006-02-15 21:30:53'),(7750,'2005-07-28 05:55:30',820,220,'2005-08-06 04:32:30',2,'2006-02-15 21:30:53'),(7751,'2005-07-28 05:56:13',4425,176,'2005-08-05 08:08:13',1,'2006-02-15 21:30:53'),(7752,'2005-07-28 06:01:00',2218,209,'2005-08-03 06:09:00',1,'2006-02-15 21:30:53'),(7753,'2005-07-28 06:09:19',3071,531,'2005-08-06 06:17:19',1,'2006-02-15 21:30:53'),(7754,'2005-07-28 06:10:55',1981,138,'2005-07-29 02:46:55',1,'2006-02-15 21:30:53'),(7755,'2005-07-28 06:22:18',1247,449,'2005-08-06 11:38:18',2,'2006-02-15 21:30:53'),(7756,'2005-07-28 06:22:52',1611,469,'2005-08-05 11:55:52',2,'2006-02-15 21:30:53'),(7757,'2005-07-28 06:23:00',3445,502,'2005-07-30 12:02:00',1,'2006-02-15 21:30:53'),(7758,'2005-07-28 06:23:41',4333,356,'2005-08-03 06:06:41',2,'2006-02-15 21:30:53'),(7759,'2005-07-28 06:28:45',3381,405,'2005-08-03 11:38:45',1,'2006-02-15 21:30:53'),(7760,'2005-07-28 06:29:45',409,307,'2005-08-03 01:36:45',1,'2006-02-15 21:30:53'),(7761,'2005-07-28 06:31:45',3568,112,'2005-07-30 01:36:45',2,'2006-02-15 21:30:53'),(7762,'2005-07-28 06:34:23',3234,462,'2005-08-05 09:55:23',2,'2006-02-15 21:30:53'),(7763,'2005-07-28 06:35:16',2461,116,'2005-08-03 02:46:16',2,'2006-02-15 21:30:53'),(7764,'2005-07-28 06:40:05',3537,142,'2005-07-30 02:51:05',2,'2006-02-15 21:30:53'),(7765,'2005-07-28 06:40:33',4098,294,'2005-07-31 01:25:33',1,'2006-02-15 21:30:53'),(7766,'2005-07-28 06:41:57',2774,292,'2005-08-06 11:21:57',2,'2006-02-15 21:30:53'),(7767,'2005-07-28 06:42:02',329,139,'2005-08-05 11:19:02',2,'2006-02-15 21:30:53'),(7768,'2005-07-28 06:44:03',2450,123,'2005-07-29 09:46:03',1,'2006-02-15 21:30:53'),(7769,'2005-07-28 06:45:23',3250,30,'2005-07-30 12:18:23',1,'2006-02-15 21:30:53'),(7770,'2005-07-28 06:49:35',1486,507,'2005-08-06 08:16:35',1,'2006-02-15 21:30:53'),(7771,'2005-07-28 06:52:12',1003,175,'2005-07-30 12:48:12',1,'2006-02-15 21:30:53'),(7772,'2005-07-28 06:59:09',986,552,'2005-08-01 10:49:09',1,'2006-02-15 21:30:53'),(7773,'2005-07-28 07:02:17',4143,380,'2005-07-30 04:16:17',2,'2006-02-15 21:30:53'),(7774,'2005-07-28 07:03:25',3483,259,'2005-08-03 02:05:25',1,'2006-02-15 21:30:53'),(7775,'2005-07-28 07:04:36',3795,475,'2005-08-03 06:36:36',2,'2006-02-15 21:30:53'),(7776,'2005-07-28 07:04:36',4170,385,'2005-08-01 09:32:36',1,'2006-02-15 21:30:53'),(7777,'2005-07-28 07:04:42',4422,287,'2005-07-29 01:57:42',1,'2006-02-15 21:30:53'),(7778,'2005-07-28 07:10:11',1044,248,'2005-08-05 05:09:11',1,'2006-02-15 21:30:53'),(7779,'2005-07-28 07:11:11',3663,414,'2005-07-30 11:12:11',1,'2006-02-15 21:30:53'),(7780,'2005-07-28 07:11:55',3069,236,'2005-08-06 05:41:55',1,'2006-02-15 21:30:53'),(7781,'2005-07-28 07:13:20',541,539,'2005-08-06 05:43:20',2,'2006-02-15 21:30:53'),(7782,'2005-07-28 07:13:40',3770,199,'2005-08-05 06:50:40',1,'2006-02-15 21:30:53'),(7783,'2005-07-28 07:14:43',3817,581,'2005-08-01 05:03:43',2,'2006-02-15 21:30:53'),(7784,'2005-07-28 07:15:32',3611,505,'2005-08-06 05:00:32',1,'2006-02-15 21:30:53'),(7785,'2005-07-28 07:16:11',4277,460,'2005-08-02 03:43:11',1,'2006-02-15 21:30:53'),(7786,'2005-07-28 07:18:26',2285,222,'2005-07-29 03:00:26',1,'2006-02-15 21:30:53'),(7787,'2005-07-28 07:19:02',2191,203,'2005-08-06 02:38:02',2,'2006-02-15 21:30:53'),(7788,'2005-07-28 07:21:55',95,487,'2005-08-03 06:33:55',1,'2006-02-15 21:30:53'),(7789,'2005-07-28 07:22:07',2837,426,'2005-08-06 10:47:07',1,'2006-02-15 21:30:53'),(7790,'2005-07-28 07:22:35',2327,189,'2005-07-30 02:59:35',1,'2006-02-15 21:30:53'),(7791,'2005-07-28 07:22:51',822,514,'2005-07-30 03:09:51',1,'2006-02-15 21:30:53'),(7792,'2005-07-28 07:24:02',3736,236,'2005-08-04 11:13:02',1,'2006-02-15 21:30:53'),(7793,'2005-07-28 07:26:14',24,32,'2005-08-03 07:45:14',1,'2006-02-15 21:30:53'),(7794,'2005-07-28 07:28:03',4509,510,'2005-08-06 12:32:03',2,'2006-02-15 21:30:53'),(7795,'2005-07-28 07:28:16',1278,38,'2005-07-31 12:03:16',1,'2006-02-15 21:30:53'),(7796,'2005-07-28 07:39:39',622,419,'2005-08-02 05:34:39',2,'2006-02-15 21:30:53'),(7797,'2005-07-28 07:41:07',4180,370,'2005-07-31 04:13:07',1,'2006-02-15 21:30:53'),(7798,'2005-07-28 07:41:59',3281,236,'2005-07-31 12:36:59',1,'2006-02-15 21:30:53'),(7799,'2005-07-28 07:42:09',2163,384,'2005-08-02 10:02:09',2,'2006-02-15 21:30:53'),(7800,'2005-07-28 07:50:59',3386,499,'2005-07-29 07:31:59',2,'2006-02-15 21:30:53'),(7801,'2005-07-28 07:51:56',2052,9,'2005-07-30 12:18:56',1,'2006-02-15 21:30:53'),(7802,'2005-07-28 07:51:57',1108,298,'2005-07-29 09:32:57',1,'2006-02-15 21:30:53'),(7803,'2005-07-28 07:52:13',3438,449,'2005-08-03 13:35:13',1,'2006-02-15 21:30:53'),(7804,'2005-07-28 07:56:00',592,249,'2005-07-30 10:33:00',2,'2006-02-15 21:30:53'),(7805,'2005-07-28 07:56:41',3204,366,'2005-08-04 06:53:41',1,'2006-02-15 21:30:53'),(7806,'2005-07-28 07:58:17',4317,440,'2005-08-06 10:15:17',1,'2006-02-15 21:30:53'),(7807,'2005-07-28 07:58:27',2204,504,'2005-08-01 02:48:27',2,'2006-02-15 21:30:53'),(7808,'2005-07-28 07:58:56',4052,327,'2005-08-02 10:49:56',1,'2006-02-15 21:30:53'),(7809,'2005-07-28 07:59:46',4150,94,'2005-08-02 02:56:46',1,'2006-02-15 21:30:53'),(7810,'2005-07-28 08:00:38',30,537,'2005-08-02 06:14:38',2,'2006-02-15 21:30:53'),(7811,'2005-07-28 08:06:01',3891,347,'2005-07-30 10:08:01',2,'2006-02-15 21:30:53'),(7812,'2005-07-28 08:06:52',4556,237,'2005-07-31 09:57:52',2,'2006-02-15 21:30:53'),(7813,'2005-07-28 08:08:27',4216,411,'2005-07-30 03:08:27',2,'2006-02-15 21:30:53'),(7814,'2005-07-28 08:09:48',2662,258,'2005-08-01 13:14:48',2,'2006-02-15 21:30:53'),(7815,'2005-07-28 08:14:11',3551,300,'2005-07-30 02:34:11',2,'2006-02-15 21:30:53'),(7816,'2005-07-28 08:14:12',1422,283,'2005-07-30 08:00:12',2,'2006-02-15 21:30:53'),(7817,'2005-07-28 08:20:55',600,259,'2005-07-30 11:55:55',1,'2006-02-15 21:30:53'),(7818,'2005-07-28 08:25:00',1672,301,'2005-07-29 14:07:00',1,'2006-02-15 21:30:53'),(7819,'2005-07-28 08:27:14',3182,100,'2005-08-02 12:34:14',2,'2006-02-15 21:30:53'),(7820,'2005-07-28 08:28:51',4475,459,'2005-08-05 10:00:51',1,'2006-02-15 21:30:53'),(7821,'2005-07-28 08:31:23',1184,433,'2005-08-03 05:08:23',2,'2006-02-15 21:30:53'),(7822,'2005-07-28 08:31:45',1428,156,'2005-07-31 11:06:45',1,'2006-02-15 21:30:53'),(7823,'2005-07-28 08:32:53',84,428,'2005-08-06 11:59:53',1,'2006-02-15 21:30:53'),(7824,'2005-07-28 08:34:47',2241,153,'2005-08-05 09:43:47',2,'2006-02-15 21:30:53'),(7825,'2005-07-28 08:34:57',4340,348,'2005-08-06 02:45:57',1,'2006-02-15 21:30:53'),(7826,'2005-07-28 08:35:51',1473,214,'2005-08-05 07:57:51',2,'2006-02-15 21:30:53'),(7827,'2005-07-28 08:37:22',659,422,'2005-07-31 04:27:22',1,'2006-02-15 21:30:53'),(7828,'2005-07-28 08:40:46',1710,212,'2005-07-30 14:22:46',1,'2006-02-15 21:30:53'),(7829,'2005-07-28 08:43:39',111,5,'2005-08-04 14:33:39',1,'2006-02-15 21:30:53'),(7830,'2005-07-28 08:43:49',4492,144,'2005-08-04 09:30:49',2,'2006-02-15 21:30:53'),(7831,'2005-07-28 08:44:21',4436,499,'2005-07-30 03:25:21',2,'2006-02-15 21:30:53'),(7832,'2005-07-28 08:46:11',284,92,'2005-08-04 06:55:11',1,'2006-02-15 21:30:53'),(7833,'2005-07-28 08:46:14',1166,263,'2005-08-04 06:13:14',1,'2006-02-15 21:30:53'),(7834,'2005-07-28 08:46:43',4124,278,'2005-07-31 07:09:43',2,'2006-02-15 21:30:53'),(7835,'2005-07-28 08:49:39',43,547,'2005-08-02 07:16:39',2,'2006-02-15 21:30:53'),(7836,'2005-07-28 08:55:27',1770,481,'2005-08-05 09:35:27',1,'2006-02-15 21:30:53'),(7837,'2005-07-28 08:58:32',115,374,'2005-07-29 14:11:32',1,'2006-02-15 21:30:53'),(7838,'2005-07-28 09:00:21',2222,550,'2005-07-29 05:52:21',1,'2006-02-15 21:30:53'),(7839,'2005-07-28 09:01:13',914,518,'2005-08-04 11:46:13',1,'2006-02-15 21:30:53'),(7840,'2005-07-28 09:03:02',2899,482,'2005-08-06 06:15:02',1,'2006-02-15 21:30:53'),(7841,'2005-07-28 09:04:45',1092,1,'2005-07-30 12:37:45',2,'2006-02-15 21:30:53'),(7842,'2005-07-28 09:10:06',2447,276,'2005-08-04 06:52:06',2,'2006-02-15 21:30:53'),(7843,'2005-07-28 09:10:22',3962,75,'2005-08-01 11:27:22',2,'2006-02-15 21:30:53'),(7844,'2005-07-28 09:16:19',4220,187,'2005-08-05 14:06:19',2,'2006-02-15 21:30:53'),(7845,'2005-07-28 09:18:07',38,352,'2005-08-04 10:23:07',2,'2006-02-15 21:30:53'),(7846,'2005-07-28 09:21:18',4201,309,'2005-08-06 07:10:18',2,'2006-02-15 21:30:53'),(7847,'2005-07-28 09:23:14',3602,323,'2005-08-02 11:02:14',2,'2006-02-15 21:30:53'),(7848,'2005-07-28 09:24:31',162,509,'2005-08-05 05:11:31',2,'2006-02-15 21:30:53'),(7849,'2005-07-28 09:30:02',996,423,'2005-08-06 12:41:02',2,'2006-02-15 21:30:53'),(7850,'2005-07-28 09:31:13',2913,118,'2005-08-02 14:06:13',2,'2006-02-15 21:30:53'),(7851,'2005-07-28 09:31:58',3596,253,'2005-08-04 09:58:58',2,'2006-02-15 21:30:53'),(7852,'2005-07-28 09:34:29',3462,123,'2005-07-30 05:48:29',1,'2006-02-15 21:30:53'),(7853,'2005-07-28 09:36:38',4053,318,'2005-07-29 15:01:38',1,'2006-02-15 21:30:53'),(7854,'2005-07-28 09:42:31',3531,84,'2005-08-02 09:25:31',1,'2006-02-15 21:30:53'),(7855,'2005-07-28 09:43:02',2474,288,'2005-07-30 12:57:02',2,'2006-02-15 21:30:53'),(7856,'2005-07-28 09:48:24',2376,375,'2005-07-29 09:49:24',2,'2006-02-15 21:30:53'),(7857,'2005-07-28 09:49:40',4027,500,'2005-08-01 05:34:40',2,'2006-02-15 21:30:53'),(7858,'2005-07-28 09:50:18',992,144,'2005-08-05 14:33:18',1,'2006-02-15 21:30:53'),(7859,'2005-07-28 09:57:17',3392,547,'2005-08-04 06:04:17',1,'2006-02-15 21:30:53'),(7860,'2005-07-28 09:58:02',2400,241,'2005-08-05 06:04:02',1,'2006-02-15 21:30:53'),(7861,'2005-07-28 10:02:01',1781,208,'2005-08-06 13:17:01',1,'2006-02-15 21:30:53'),(7862,'2005-07-28 10:02:25',2507,299,'2005-08-05 13:10:25',1,'2006-02-15 21:30:53'),(7863,'2005-07-28 10:05:46',1212,182,'2005-07-29 14:42:46',1,'2006-02-15 21:30:53'),(7864,'2005-07-28 10:06:10',1238,20,'2005-08-04 08:38:10',1,'2006-02-15 21:30:53'),(7865,'2005-07-28 10:07:04',2334,148,'2005-08-06 08:16:04',2,'2006-02-15 21:30:53'),(7866,'2005-07-28 10:08:01',1602,101,'2005-08-04 09:29:01',2,'2006-02-15 21:30:53'),(7867,'2005-07-28 10:08:54',713,297,'2005-07-30 10:26:54',2,'2006-02-15 21:30:53'),(7868,'2005-07-28 10:08:55',3589,43,'2005-07-30 11:52:55',1,'2006-02-15 21:30:53'),(7869,'2005-07-28 10:13:15',3005,298,'2005-08-03 12:58:15',1,'2006-02-15 21:30:53'),(7870,'2005-07-28 10:16:03',970,240,'2005-07-31 16:06:03',1,'2006-02-15 21:30:53'),(7871,'2005-07-28 10:16:37',3990,491,'2005-08-05 11:24:37',2,'2006-02-15 21:30:53'),(7872,'2005-07-28 10:18:16',826,66,'2005-07-31 10:57:16',1,'2006-02-15 21:30:53'),(7873,'2005-07-28 10:19:46',2947,82,'2005-07-31 04:43:46',2,'2006-02-15 21:30:53'),(7874,'2005-07-28 10:21:52',2981,86,'2005-08-06 16:19:52',1,'2006-02-15 21:30:53'),(7875,'2005-07-28 10:23:48',3693,504,'2005-08-02 12:09:48',1,'2006-02-15 21:30:53'),(7876,'2005-07-28 10:24:22',3563,577,'2005-08-04 07:15:22',1,'2006-02-15 21:30:53'),(7877,'2005-07-28 10:25:36',2576,65,'2005-08-05 12:46:36',1,'2006-02-15 21:30:53'),(7878,'2005-07-28 10:27:10',1564,141,'2005-07-29 11:22:10',1,'2006-02-15 21:30:53'),(7879,'2005-07-28 10:27:46',1969,125,'2005-07-31 07:48:46',1,'2006-02-15 21:30:53'),(7880,'2005-07-28 10:30:37',3670,182,'2005-08-03 08:05:37',2,'2006-02-15 21:30:53'),(7881,'2005-07-28 10:33:22',533,249,'2005-08-02 12:10:22',1,'2006-02-15 21:30:53'),(7882,'2005-07-28 10:33:42',3922,516,'2005-07-29 13:49:42',1,'2006-02-15 21:30:53'),(7883,'2005-07-28 10:37:20',447,526,'2005-08-02 05:08:20',1,'2006-02-15 21:30:53'),(7884,'2005-07-28 10:37:24',3871,502,'2005-07-31 10:31:24',1,'2006-02-15 21:30:53'),(7885,'2005-07-28 10:37:41',4294,260,'2005-08-05 07:56:41',1,'2006-02-15 21:30:53'),(7886,'2005-07-28 10:37:55',237,352,'2005-08-04 13:22:55',2,'2006-02-15 21:30:53'),(7887,'2005-07-28 10:40:12',2820,253,'2005-08-02 06:09:12',1,'2006-02-15 21:30:53'),(7888,'2005-07-28 10:40:24',545,378,'2005-08-01 16:18:24',1,'2006-02-15 21:30:53'),(7889,'2005-07-28 10:43:21',3123,416,'2005-07-30 09:11:21',1,'2006-02-15 21:30:53'),(7890,'2005-07-28 10:43:40',3443,553,'2005-07-31 06:07:40',1,'2006-02-15 21:30:53'),(7891,'2005-07-28 10:43:56',3637,560,'2005-08-05 14:04:56',2,'2006-02-15 21:30:53'),(7892,'2005-07-28 10:46:58',2717,397,'2005-07-30 16:03:58',1,'2006-02-15 21:30:53'),(7893,'2005-07-28 10:49:27',3058,479,'2005-08-02 06:46:27',1,'2006-02-15 21:30:53'),(7894,'2005-07-28 10:53:58',3532,330,'2005-08-02 13:42:58',2,'2006-02-15 21:30:53'),(7895,'2005-07-28 10:57:15',900,67,'2005-08-02 15:10:15',2,'2006-02-15 21:30:53'),(7896,'2005-07-28 11:00:58',3561,389,'2005-08-04 14:30:58',2,'2006-02-15 21:30:53'),(7897,'2005-07-28 11:01:51',1396,75,'2005-07-31 13:13:51',1,'2006-02-15 21:30:53'),(7898,'2005-07-28 11:08:22',2680,499,'2005-08-03 12:28:22',1,'2006-02-15 21:30:53'),(7899,'2005-07-28 11:10:12',4130,452,'2005-08-02 13:20:12',2,'2006-02-15 21:30:53'),(7900,'2005-07-28 11:11:33',2781,154,'2005-08-05 06:29:33',2,'2006-02-15 21:30:53'),(7901,'2005-07-28 11:12:12',4435,280,'2005-08-01 08:13:12',1,'2006-02-15 21:30:53'),(7902,'2005-07-28 11:14:19',3066,356,'2005-07-30 09:01:19',2,'2006-02-15 21:30:53'),(7903,'2005-07-28 11:20:36',2767,588,'2005-07-31 09:16:36',1,'2006-02-15 21:30:53'),(7904,'2005-07-28 11:25:39',316,477,'2005-08-06 08:22:39',2,'2006-02-15 21:30:53'),(7905,'2005-07-28 11:26:57',4287,455,'2005-08-02 06:14:57',1,'2006-02-15 21:30:53'),(7906,'2005-07-28 11:31:42',1216,85,'2005-08-01 11:56:42',2,'2006-02-15 21:30:53'),(7907,'2005-07-28 11:32:00',3252,433,'2005-07-30 15:27:00',1,'2006-02-15 21:30:53'),(7908,'2005-07-28 11:32:57',3646,360,'2005-08-03 13:30:57',2,'2006-02-15 21:30:53'),(7909,'2005-07-28 11:38:08',3355,210,'2005-07-29 13:54:08',1,'2006-02-15 21:30:53'),(7910,'2005-07-28 11:44:56',2044,480,'2005-08-05 14:37:56',2,'2006-02-15 21:30:53'),(7911,'2005-07-28 11:46:45',390,3,'2005-07-29 07:19:45',1,'2006-02-15 21:30:53'),(7912,'2005-07-28 11:46:58',745,127,'2005-08-05 12:50:58',1,'2006-02-15 21:30:53'),(7913,'2005-07-28 11:47:23',4001,459,'2005-08-05 06:36:23',1,'2006-02-15 21:30:53'),(7914,'2005-07-28 11:48:08',2796,469,'2005-07-30 14:14:08',1,'2006-02-15 21:30:53'),(7915,'2005-07-28 11:49:46',2088,186,'2005-08-04 12:21:46',2,'2006-02-15 21:30:53'),(7916,'2005-07-28 11:49:53',3877,13,'2005-07-29 15:01:53',1,'2006-02-15 21:30:53'),(7917,'2005-07-28 11:56:57',2071,416,'2005-07-29 14:06:57',1,'2006-02-15 21:30:53'),(7918,'2005-07-28 11:58:53',63,473,'2005-08-04 12:08:53',2,'2006-02-15 21:30:53'),(7919,'2005-07-28 11:59:45',2138,36,'2005-08-06 11:19:45',1,'2006-02-15 21:30:53'),(7920,'2005-07-28 12:01:19',66,48,'2005-08-05 07:08:19',1,'2006-02-15 21:30:53'),(7921,'2005-07-28 12:02:46',116,100,'2005-08-01 12:08:46',2,'2006-02-15 21:30:53'),(7922,'2005-07-28 12:05:25',817,125,'2005-08-02 12:13:25',2,'2006-02-15 21:30:53'),(7923,'2005-07-28 12:08:29',2273,458,'2005-08-04 12:30:29',1,'2006-02-15 21:30:53'),(7924,'2005-07-28 12:08:53',656,97,'2005-07-30 06:45:53',2,'2006-02-15 21:30:53'),(7925,'2005-07-28 12:10:02',1763,500,'2005-08-02 15:50:02',1,'2006-02-15 21:30:53'),(7926,'2005-07-28 12:13:02',180,78,'2005-08-05 08:54:02',1,'2006-02-15 21:30:53'),(7927,'2005-07-28 12:13:42',1263,27,'2005-08-05 12:02:42',1,'2006-02-15 21:30:53'),(7928,'2005-07-28 12:15:51',912,473,'2005-08-05 06:34:51',1,'2006-02-15 21:30:53'),(7929,'2005-07-28 12:16:40',2652,307,'2005-07-31 13:09:40',2,'2006-02-15 21:30:53'),(7930,'2005-07-28 12:21:08',4181,320,'2005-07-30 11:56:08',1,'2006-02-15 21:30:53'),(7931,'2005-07-28 12:23:41',1923,326,'2005-08-06 09:49:41',2,'2006-02-15 21:30:53'),(7932,'2005-07-28 12:24:54',3738,462,'2005-07-30 11:33:54',1,'2006-02-15 21:30:53'),(7933,'2005-07-28 12:27:27',3175,297,'2005-07-29 10:34:27',2,'2006-02-15 21:30:53'),(7934,'2005-07-28 12:33:10',2642,332,'2005-08-04 07:40:10',2,'2006-02-15 21:30:53'),(7935,'2005-07-28 12:33:17',3664,462,'2005-08-04 14:40:17',2,'2006-02-15 21:30:53'),(7936,'2005-07-28 12:33:21',563,520,'2005-07-30 13:31:21',2,'2006-02-15 21:30:53'),(7937,'2005-07-28 12:38:22',3944,323,'2005-07-29 09:19:22',1,'2006-02-15 21:30:53'),(7938,'2005-07-28 12:39:11',2579,114,'2005-08-04 16:56:11',1,'2006-02-15 21:30:53'),(7939,'2005-07-28 12:45:47',2004,37,'2005-07-30 18:32:47',2,'2006-02-15 21:30:53'),(7940,'2005-07-28 12:46:47',901,409,'2005-07-29 06:46:47',2,'2006-02-15 21:30:53'),(7941,'2005-07-28 12:47:20',439,566,'2005-08-01 08:46:20',1,'2006-02-15 21:30:53'),(7942,'2005-07-28 12:49:44',1636,56,'2005-07-31 18:07:44',2,'2006-02-15 21:30:53'),(7943,'2005-07-28 12:50:55',2914,346,'2005-08-04 11:29:55',2,'2006-02-15 21:30:53'),(7944,'2005-07-28 12:51:22',3148,504,'2005-07-30 12:19:22',1,'2006-02-15 21:30:53'),(7945,'2005-07-28 12:53:58',3326,316,'2005-08-03 14:04:58',1,'2006-02-15 21:30:53'),(7946,'2005-07-28 13:01:22',99,90,'2005-08-03 15:27:22',2,'2006-02-15 21:30:53'),(7947,'2005-07-28 13:05:50',2504,279,'2005-08-02 11:16:50',2,'2006-02-15 21:30:53'),(7948,'2005-07-28 13:06:16',215,589,'2005-08-05 08:38:16',1,'2006-02-15 21:30:53'),(7949,'2005-07-28 13:07:24',2145,487,'2005-08-02 09:41:24',1,'2006-02-15 21:30:53'),(7950,'2005-07-28 13:21:00',2286,122,'2005-08-05 18:47:00',2,'2006-02-15 21:30:53'),(7951,'2005-07-28 13:21:16',3979,237,'2005-08-06 08:21:16',1,'2006-02-15 21:30:53'),(7952,'2005-07-28 13:23:49',3313,158,'2005-08-01 08:50:49',1,'2006-02-15 21:30:53'),(7953,'2005-07-28 13:24:32',4471,319,'2005-08-05 16:09:32',2,'2006-02-15 21:30:53'),(7954,'2005-07-28 13:25:05',3735,145,'2005-07-29 18:50:05',2,'2006-02-15 21:30:53'),(7955,'2005-07-28 13:31:36',1519,522,'2005-07-30 10:03:36',1,'2006-02-15 21:30:53'),(7956,'2005-07-28 13:32:17',4335,118,'2005-08-06 14:51:17',2,'2006-02-15 21:30:53'),(7957,'2005-07-28 13:34:08',1623,78,'2005-08-05 07:58:08',1,'2006-02-15 21:30:53'),(7958,'2005-07-28 13:34:34',421,593,'2005-07-29 16:03:34',1,'2006-02-15 21:30:53'),(7959,'2005-07-28 13:43:20',1549,178,'2005-08-02 12:13:20',2,'2006-02-15 21:30:53'),(7960,'2005-07-28 13:47:08',2718,324,'2005-08-03 15:17:08',1,'2006-02-15 21:30:53'),(7961,'2005-07-28 13:47:21',3284,45,'2005-08-01 09:33:21',1,'2006-02-15 21:30:53'),(7962,'2005-07-28 13:48:09',1746,126,'2005-08-03 19:21:09',1,'2006-02-15 21:30:53'),(7963,'2005-07-28 13:48:38',921,247,'2005-08-06 19:37:38',2,'2006-02-15 21:30:53'),(7964,'2005-07-28 13:49:58',2528,574,'2005-08-03 10:03:58',2,'2006-02-15 21:30:53'),(7965,'2005-07-28 13:52:57',3671,134,'2005-07-29 14:54:57',1,'2006-02-15 21:30:53'),(7966,'2005-07-28 13:53:54',2514,91,'2005-08-06 15:32:54',1,'2006-02-15 21:30:53'),(7967,'2005-07-28 13:56:51',2040,187,'2005-08-03 19:38:51',1,'2006-02-15 21:30:53'),(7968,'2005-07-28 13:57:35',3865,597,'2005-08-04 13:40:35',1,'2006-02-15 21:30:53'),(7969,'2005-07-28 13:57:37',2224,123,'2005-08-04 19:31:37',1,'2006-02-15 21:30:53'),(7970,'2005-07-28 13:58:38',998,507,'2005-08-02 12:27:38',1,'2006-02-15 21:30:53'),(7971,'2005-07-28 14:00:47',1910,445,'2005-08-02 10:01:47',1,'2006-02-15 21:30:53'),(7972,'2005-07-28 14:07:46',2930,269,'2005-08-01 11:28:46',2,'2006-02-15 21:30:53'),(7973,'2005-07-28 14:10:06',3936,339,'2005-07-29 11:26:06',2,'2006-02-15 21:30:53'),(7974,'2005-07-28 14:11:57',2442,380,'2005-08-02 19:25:57',2,'2006-02-15 21:30:53'),(7975,'2005-07-28 14:12:47',2565,211,'2005-08-05 09:18:47',1,'2006-02-15 21:30:53'),(7976,'2005-07-28 14:13:24',2296,205,'2005-08-05 09:01:24',1,'2006-02-15 21:30:53'),(7977,'2005-07-28 14:15:54',3162,389,'2005-08-01 18:58:54',2,'2006-02-15 21:30:53'),(7978,'2005-07-28 14:16:14',508,431,'2005-08-01 12:53:14',2,'2006-02-15 21:30:53'),(7979,'2005-07-28 14:16:30',3303,94,'2005-08-03 09:39:30',2,'2006-02-15 21:30:53'),(7980,'2005-07-28 14:16:49',1019,329,'2005-08-05 09:20:49',1,'2006-02-15 21:30:53'),(7981,'2005-07-28 14:18:25',90,392,'2005-08-04 15:21:25',2,'2006-02-15 21:30:53'),(7982,'2005-07-28 14:19:59',668,71,'2005-07-29 14:09:59',2,'2006-02-15 21:30:53'),(7983,'2005-07-28 14:23:01',1836,115,'2005-07-29 11:51:01',1,'2006-02-15 21:30:53'),(7984,'2005-07-28 14:27:51',2893,208,'2005-08-04 17:34:51',1,'2006-02-15 21:30:53'),(7985,'2005-07-28 14:29:01',4022,388,'2005-08-03 17:20:01',2,'2006-02-15 21:30:53'),(7986,'2005-07-28 14:30:13',1283,395,'2005-08-05 09:35:13',1,'2006-02-15 21:30:53'),(7987,'2005-07-28 14:36:52',288,443,'2005-08-05 16:49:52',2,'2006-02-15 21:30:53'),(7988,'2005-07-28 14:37:18',2906,517,'2005-08-05 10:53:18',1,'2006-02-15 21:30:53'),(7989,'2005-07-28 14:39:05',3196,149,'2005-08-05 13:58:05',2,'2006-02-15 21:30:53'),(7990,'2005-07-28 14:43:08',188,232,'2005-08-01 10:51:08',2,'2006-02-15 21:30:53'),(7991,'2005-07-28 14:45:45',1133,59,'2005-07-29 15:05:45',2,'2006-02-15 21:30:53'),(7992,'2005-07-28 14:53:06',1851,33,'2005-07-29 18:17:06',1,'2006-02-15 21:30:53'),(7993,'2005-07-28 14:56:41',2926,353,'2005-08-01 17:01:41',2,'2006-02-15 21:30:53'),(7994,'2005-07-28 14:56:54',2431,21,'2005-07-30 09:56:54',2,'2006-02-15 21:30:53'),(7995,'2005-07-28 15:00:09',536,89,'2005-08-01 12:33:09',2,'2006-02-15 21:30:53'),(7996,'2005-07-28 15:00:49',2171,408,'2005-08-04 20:58:49',2,'2006-02-15 21:30:53'),(7997,'2005-07-28 15:02:25',1845,591,'2005-08-04 14:35:25',1,'2006-02-15 21:30:53'),(7998,'2005-07-28 15:08:48',1397,598,'2005-07-31 16:14:48',2,'2006-02-15 21:30:53'),(7999,'2005-07-28 15:10:14',2750,170,'2005-08-06 17:08:14',2,'2006-02-15 21:30:53'),(8000,'2005-07-28 15:10:25',1644,212,'2005-08-06 19:15:25',1,'2006-02-15 21:30:53'),(8001,'2005-07-28 15:10:55',2570,10,'2005-08-05 18:23:55',1,'2006-02-15 21:30:53'),(8002,'2005-07-28 15:11:00',22,449,'2005-07-31 15:46:00',2,'2006-02-15 21:30:53'),(8003,'2005-07-28 15:11:27',2775,89,'2005-08-04 18:35:27',1,'2006-02-15 21:30:53'),(8004,'2005-07-28 15:14:07',4428,393,'2005-07-30 19:32:07',2,'2006-02-15 21:30:53'),(8005,'2005-07-28 15:15:11',670,488,'2005-07-29 14:54:11',1,'2006-02-15 21:30:53'),(8006,'2005-07-28 15:15:41',3959,109,'2005-08-05 19:29:41',2,'2006-02-15 21:30:53'),(8007,'2005-07-28 15:22:27',1942,525,'2005-07-30 13:06:27',2,'2006-02-15 21:30:53'),(8008,'2005-07-28 15:25:55',2093,41,'2005-08-04 13:16:55',1,'2006-02-15 21:30:53'),(8009,'2005-07-28 15:25:58',337,372,'2005-08-04 10:16:58',2,'2006-02-15 21:30:53'),(8010,'2005-07-28 15:26:20',68,467,'2005-08-04 18:39:20',2,'2006-02-15 21:30:53'),(8011,'2005-07-28 15:26:39',4274,497,'2005-07-30 13:59:39',1,'2006-02-15 21:30:53'),(8012,'2005-07-28 15:29:00',1513,343,'2005-08-05 12:28:00',2,'2006-02-15 21:30:53'),(8013,'2005-07-28 15:30:26',2074,403,'2005-08-05 16:29:26',1,'2006-02-15 21:30:53'),(8014,'2005-07-28 15:32:07',2339,11,'2005-07-31 20:52:07',1,'2006-02-15 21:30:53'),(8015,'2005-07-28 15:33:03',1814,23,'2005-07-30 15:32:03',2,'2006-02-15 21:30:53'),(8016,'2005-07-28 15:35:41',516,391,'2005-07-30 20:06:41',2,'2006-02-15 21:30:53'),(8017,'2005-07-28 15:35:41',1764,328,'2005-08-01 19:12:41',1,'2006-02-15 21:30:53'),(8018,'2005-07-28 15:36:48',4129,377,'2005-08-06 20:04:48',1,'2006-02-15 21:30:53'),(8019,'2005-07-28 15:37:43',1844,84,'2005-08-04 15:40:43',2,'2006-02-15 21:30:53'),(8020,'2005-07-28 15:43:32',4459,498,'2005-08-05 12:19:32',1,'2006-02-15 21:30:53'),(8021,'2005-07-28 15:45:24',1920,501,'2005-08-04 10:49:24',1,'2006-02-15 21:30:53'),(8022,'2005-07-28 15:48:56',294,314,'2005-08-06 13:40:56',1,'2006-02-15 21:30:53'),(8023,'2005-07-28 15:53:29',2133,411,'2005-07-31 12:26:29',1,'2006-02-15 21:30:53'),(8024,'2005-07-28 15:55:40',1735,90,'2005-08-02 09:56:40',1,'2006-02-15 21:30:53'),(8025,'2005-07-28 16:03:27',2932,421,'2005-08-03 21:58:27',2,'2006-02-15 21:30:53'),(8026,'2005-07-28 16:05:38',4225,511,'2005-07-29 21:28:38',2,'2006-02-15 21:30:53'),(8027,'2005-07-28 16:09:57',1335,436,'2005-08-05 18:17:57',1,'2006-02-15 21:30:53'),(8028,'2005-07-28 16:11:15',2715,137,'2005-08-05 15:11:15',1,'2006-02-15 21:30:53'),(8029,'2005-07-28 16:11:21',4273,61,'2005-08-05 13:52:21',1,'2006-02-15 21:30:53'),(8030,'2005-07-28 16:12:53',2633,30,'2005-07-31 17:15:53',1,'2006-02-15 21:30:53'),(8031,'2005-07-28 16:15:49',2196,40,'2005-08-02 18:27:49',2,'2006-02-15 21:30:53'),(8032,'2005-07-28 16:17:00',431,230,'2005-07-29 13:32:00',1,'2006-02-15 21:30:53'),(8033,'2005-07-28 16:18:23',4268,1,'2005-07-30 17:56:23',1,'2006-02-15 21:30:53'),(8034,'2005-07-28 16:20:26',1997,502,'2005-08-04 19:11:26',2,'2006-02-15 21:30:53'),(8035,'2005-07-28 16:23:01',1503,14,'2005-08-05 10:52:01',1,'2006-02-15 21:30:53'),(8036,'2005-07-28 16:27:43',2741,412,'2005-08-01 13:41:43',2,'2006-02-15 21:30:53'),(8037,'2005-07-28 16:31:20',3973,409,'2005-07-31 12:18:20',2,'2006-02-15 21:30:53'),(8038,'2005-07-28 16:32:55',1225,30,'2005-07-30 21:08:55',1,'2006-02-15 21:30:53'),(8039,'2005-07-28 16:35:16',1996,203,'2005-07-30 14:49:16',1,'2006-02-15 21:30:53'),(8040,'2005-07-28 16:39:43',4543,163,'2005-08-02 20:00:43',2,'2006-02-15 21:30:53'),(8041,'2005-07-28 16:39:56',763,357,'2005-07-30 18:44:56',1,'2006-02-15 21:30:53'),(8042,'2005-07-28 16:45:11',4325,14,'2005-08-04 17:16:11',2,'2006-02-15 21:30:53'),(8043,'2005-07-28 16:45:44',208,577,'2005-08-01 12:26:44',1,'2006-02-15 21:30:53'),(8044,'2005-07-28 16:49:12',879,442,'2005-08-02 22:41:12',1,'2006-02-15 21:30:53'),(8045,'2005-07-28 16:49:38',3427,368,'2005-08-03 15:42:38',1,'2006-02-15 21:30:53'),(8046,'2005-07-28 16:49:41',2873,120,'2005-07-31 21:33:41',1,'2006-02-15 21:30:53'),(8047,'2005-07-28 16:49:43',2936,292,'2005-08-03 14:48:43',2,'2006-02-15 21:30:53'),(8048,'2005-07-28 16:50:26',2721,182,'2005-08-06 19:20:26',1,'2006-02-15 21:30:53'),(8049,'2005-07-28 16:51:58',673,42,'2005-07-31 22:18:58',1,'2006-02-15 21:30:53'),(8050,'2005-07-28 16:55:47',1864,488,'2005-08-02 13:20:47',1,'2006-02-15 21:30:53'),(8051,'2005-07-28 16:56:16',4405,192,'2005-07-29 22:48:16',1,'2006-02-15 21:30:53'),(8052,'2005-07-28 16:57:31',2460,166,'2005-08-03 18:03:31',2,'2006-02-15 21:30:53'),(8053,'2005-07-28 16:59:41',1511,526,'2005-08-03 22:28:41',2,'2006-02-15 21:30:53'),(8054,'2005-07-28 17:02:18',1062,225,'2005-08-06 11:55:18',1,'2006-02-15 21:30:53'),(8055,'2005-07-28 17:02:32',4162,304,'2005-07-31 22:05:32',2,'2006-02-15 21:30:53'),(8056,'2005-07-28 17:04:15',4018,589,'2005-08-03 19:11:15',2,'2006-02-15 21:30:53'),(8057,'2005-07-28 17:07:13',4177,483,'2005-08-03 16:25:13',1,'2006-02-15 21:30:53'),(8058,'2005-07-28 17:07:49',2148,404,'2005-08-03 22:57:49',1,'2006-02-15 21:30:53'),(8059,'2005-07-28 17:09:59',2611,372,'2005-07-31 15:42:59',2,'2006-02-15 21:30:53'),(8060,'2005-07-28 17:10:02',3765,577,'2005-08-05 17:11:02',1,'2006-02-15 21:30:53'),(8061,'2005-07-28 17:12:53',650,467,'2005-08-05 13:56:53',2,'2006-02-15 21:30:53'),(8062,'2005-07-28 17:15:06',1384,317,'2005-07-30 16:56:06',2,'2006-02-15 21:30:53'),(8063,'2005-07-28 17:15:11',935,163,'2005-08-04 16:45:11',1,'2006-02-15 21:30:53'),(8064,'2005-07-28 17:15:38',3788,488,'2005-08-04 18:04:38',2,'2006-02-15 21:30:53'),(8065,'2005-07-28 17:15:48',413,220,'2005-08-04 15:49:48',2,'2006-02-15 21:30:53'),(8066,'2005-07-28 17:20:09',3208,462,'2005-07-31 18:36:09',2,'2006-02-15 21:30:53'),(8067,'2005-07-28 17:20:17',3923,209,'2005-07-29 21:55:17',1,'2006-02-15 21:30:53'),(8068,'2005-07-28 17:22:28',209,216,'2005-07-29 12:24:28',2,'2006-02-15 21:30:53'),(8069,'2005-07-28 17:23:46',2822,178,'2005-07-30 16:19:46',1,'2006-02-15 21:30:53'),(8070,'2005-07-28 17:26:56',1606,89,'2005-08-01 17:33:56',1,'2006-02-15 21:30:53'),(8071,'2005-07-28 17:27:48',2582,131,'2005-08-03 11:48:48',2,'2006-02-15 21:30:53'),(8072,'2005-07-28 17:27:59',2347,99,'2005-07-30 19:08:59',1,'2006-02-15 21:30:53'),(8073,'2005-07-28 17:29:02',630,314,'2005-08-01 22:17:02',2,'2006-02-15 21:30:53'),(8074,'2005-07-28 17:33:39',1558,1,'2005-07-29 20:17:39',1,'2006-02-15 21:30:53'),(8075,'2005-07-28 17:37:28',2175,61,'2005-07-29 11:56:28',2,'2006-02-15 21:30:53'),(8076,'2005-07-28 17:45:58',214,17,'2005-08-04 18:07:58',2,'2006-02-15 21:30:53'),(8077,'2005-07-28 17:54:35',3253,122,'2005-07-29 19:28:35',2,'2006-02-15 21:30:53'),(8078,'2005-07-28 17:54:42',3839,407,'2005-07-30 18:18:42',2,'2006-02-15 21:30:53'),(8079,'2005-07-28 17:58:36',3564,432,'2005-07-29 14:48:36',2,'2006-02-15 21:30:53'),(8080,'2005-07-28 18:05:06',3035,406,'2005-07-29 22:44:06',2,'2006-02-15 21:30:53'),(8081,'2005-07-28 18:06:46',4404,362,'2005-08-04 18:54:46',1,'2006-02-15 21:30:53'),(8082,'2005-07-28 18:08:02',3089,423,'2005-08-04 14:33:02',2,'2006-02-15 21:30:53'),(8083,'2005-07-28 18:09:48',2187,30,'2005-08-04 21:47:48',2,'2006-02-15 21:30:53'),(8084,'2005-07-28 18:11:58',911,571,'2005-08-03 23:41:58',2,'2006-02-15 21:30:53'),(8085,'2005-07-28 18:13:15',3059,552,'2005-08-04 13:45:15',2,'2006-02-15 21:30:53'),(8086,'2005-07-28 18:17:14',1182,3,'2005-07-30 18:22:14',2,'2006-02-15 21:30:53'),(8087,'2005-07-28 18:21:16',1913,295,'2005-08-03 12:38:16',2,'2006-02-15 21:30:53'),(8088,'2005-07-28 18:23:49',2590,343,'2005-08-06 23:25:49',2,'2006-02-15 21:30:53'),(8089,'2005-07-28 18:26:47',1414,50,'2005-08-03 21:28:47',1,'2006-02-15 21:30:53'),(8090,'2005-07-28 18:27:29',1336,387,'2005-08-02 14:08:29',2,'2006-02-15 21:30:53'),(8091,'2005-07-28 18:27:29',3025,126,'2005-08-01 19:45:29',2,'2006-02-15 21:30:53'),(8092,'2005-07-28 18:28:07',2034,167,'2005-07-30 19:17:07',2,'2006-02-15 21:30:53'),(8093,'2005-07-28 18:29:16',1427,533,'2005-08-05 21:49:16',1,'2006-02-15 21:30:53'),(8094,'2005-07-28 18:30:28',4276,432,'2005-08-05 17:37:28',2,'2006-02-15 21:30:53'),(8095,'2005-07-28 18:32:40',2685,42,'2005-08-06 23:45:40',1,'2006-02-15 21:30:53'),(8096,'2005-07-28 18:32:46',502,506,'2005-08-06 15:00:46',1,'2006-02-15 21:30:53'),(8097,'2005-07-28 18:32:49',2719,436,'2005-08-06 16:09:49',1,'2006-02-15 21:30:53'),(8098,'2005-07-28 18:34:20',1757,41,'2005-07-31 19:07:20',2,'2006-02-15 21:30:53'),(8099,'2005-07-28 18:35:12',3694,36,'2005-07-30 15:44:12',2,'2006-02-15 21:30:53'),(8100,'2005-07-28 18:43:11',2859,11,'2005-08-02 15:56:11',2,'2006-02-15 21:30:53'),(8101,'2005-07-28 18:47:23',731,6,'2005-07-31 16:23:23',1,'2006-02-15 21:30:53'),(8102,'2005-07-28 18:49:43',4505,237,'2005-08-03 23:04:43',2,'2006-02-15 21:30:53'),(8103,'2005-07-28 18:50:14',4472,397,'2005-08-04 16:53:14',1,'2006-02-15 21:30:53'),(8104,'2005-07-28 18:59:36',1080,533,'2005-08-03 22:05:36',2,'2006-02-15 21:30:53'),(8105,'2005-07-28 18:59:46',1316,314,'2005-07-29 22:51:46',1,'2006-02-15 21:30:53'),(8106,'2005-07-28 19:02:46',963,137,'2005-07-30 20:48:46',2,'2006-02-15 21:30:53'),(8107,'2005-07-28 19:03:16',1318,518,'2005-08-05 17:18:16',2,'2006-02-15 21:30:53'),(8108,'2005-07-28 19:07:38',1600,295,'2005-08-03 15:13:38',2,'2006-02-15 21:30:53'),(8109,'2005-07-28 19:07:44',652,407,'2005-07-31 14:59:44',1,'2006-02-15 21:30:53'),(8110,'2005-07-28 19:07:45',1244,225,'2005-08-04 22:12:45',1,'2006-02-15 21:30:53'),(8111,'2005-07-28 19:10:03',3226,148,'2005-07-29 22:25:03',1,'2006-02-15 21:30:53'),(8112,'2005-07-28 19:11:07',2444,528,'2005-08-03 18:41:07',1,'2006-02-15 21:30:53'),(8113,'2005-07-28 19:14:00',4269,541,'2005-08-06 00:05:00',2,'2006-02-15 21:30:53'),(8114,'2005-07-28 19:14:06',815,509,'2005-08-05 13:16:06',1,'2006-02-15 21:30:53'),(8115,'2005-07-28 19:14:17',2080,106,'2005-08-03 14:58:17',2,'2006-02-15 21:30:53'),(8116,'2005-07-28 19:20:07',4497,1,'2005-07-29 22:54:07',1,'2006-02-15 21:30:53'),(8117,'2005-07-28 19:20:16',1502,300,'2005-08-05 23:55:16',1,'2006-02-15 21:30:53'),(8118,'2005-07-28 19:22:22',331,566,'2005-08-01 22:13:22',1,'2006-02-15 21:30:53'),(8119,'2005-07-28 19:23:15',1542,398,'2005-08-04 15:53:15',2,'2006-02-15 21:30:53'),(8120,'2005-07-28 19:24:24',3993,235,'2005-07-31 14:31:24',2,'2006-02-15 21:30:53'),(8121,'2005-07-28 19:25:45',2229,363,'2005-08-02 13:30:45',2,'2006-02-15 21:30:53'),(8122,'2005-07-28 19:27:37',2141,18,'2005-07-29 19:48:37',2,'2006-02-15 21:30:53'),(8123,'2005-07-28 19:28:23',2256,138,'2005-08-04 19:41:23',1,'2006-02-15 21:30:53'),(8124,'2005-07-28 19:28:58',1187,357,'2005-07-31 00:45:58',1,'2006-02-15 21:30:53'),(8125,'2005-07-28 19:31:48',4330,96,'2005-07-30 01:09:48',1,'2006-02-15 21:30:53'),(8126,'2005-07-28 19:32:41',719,537,'2005-08-05 00:33:41',2,'2006-02-15 21:30:53'),(8127,'2005-07-28 19:45:19',4265,20,'2005-07-31 22:07:19',2,'2006-02-15 21:30:53'),(8128,'2005-07-28 19:46:06',2872,71,'2005-08-06 16:10:06',2,'2006-02-15 21:30:53'),(8129,'2005-07-28 19:47:02',2546,345,'2005-07-31 21:33:02',2,'2006-02-15 21:30:53'),(8130,'2005-07-28 19:48:15',4055,499,'2005-08-05 14:18:15',2,'2006-02-15 21:30:53'),(8131,'2005-07-28 19:55:21',437,281,'2005-08-02 21:52:21',2,'2006-02-15 21:30:53'),(8132,'2005-07-28 19:57:31',1303,562,'2005-08-02 22:16:31',2,'2006-02-15 21:30:53'),(8133,'2005-07-28 20:01:06',849,461,'2005-08-01 20:01:06',1,'2006-02-15 21:30:53'),(8134,'2005-07-28 20:01:23',1695,41,'2005-08-03 01:00:23',2,'2006-02-15 21:30:53'),(8135,'2005-07-28 20:03:25',1339,164,'2005-08-03 01:28:25',2,'2006-02-15 21:30:53'),(8136,'2005-07-28 20:05:48',3434,429,'2005-08-01 20:31:48',2,'2006-02-15 21:30:53'),(8137,'2005-07-28 20:07:18',3188,312,'2005-08-03 17:41:18',1,'2006-02-15 21:30:53'),(8138,'2005-07-28 20:12:17',1258,371,'2005-08-01 15:21:17',2,'2006-02-15 21:30:53'),(8139,'2005-07-28 20:16:30',3651,177,'2005-08-03 18:00:30',2,'2006-02-15 21:30:53'),(8140,'2005-07-28 20:17:50',4270,119,'2005-07-30 18:07:50',1,'2006-02-15 21:30:53'),(8141,'2005-07-28 20:21:19',361,523,'2005-07-30 19:16:19',2,'2006-02-15 21:30:53'),(8142,'2005-07-28 20:21:54',1075,322,'2005-07-31 18:39:54',2,'2006-02-15 21:30:53'),(8143,'2005-07-28 20:23:11',3629,429,'2005-08-01 18:17:11',1,'2006-02-15 21:30:53'),(8144,'2005-07-28 20:30:55',3556,320,'2005-07-31 18:10:55',2,'2006-02-15 21:30:53'),(8145,'2005-07-28 20:34:41',937,198,'2005-08-05 15:28:41',2,'2006-02-15 21:30:53'),(8146,'2005-07-28 20:37:36',2430,476,'2005-07-31 16:03:36',2,'2006-02-15 21:30:53'),(8147,'2005-07-28 20:37:56',628,228,'2005-07-30 18:26:56',1,'2006-02-15 21:30:53'),(8148,'2005-07-28 20:39:47',537,347,'2005-08-02 16:29:47',1,'2006-02-15 21:30:53'),(8149,'2005-07-28 20:48:12',1790,591,'2005-08-01 20:07:12',2,'2006-02-15 21:30:53'),(8150,'2005-07-28 20:50:41',3489,497,'2005-08-02 00:43:41',1,'2006-02-15 21:30:53'),(8151,'2005-07-28 20:50:52',4370,495,'2005-07-31 14:50:52',1,'2006-02-15 21:30:53'),(8152,'2005-07-28 20:53:05',2557,46,'2005-08-06 20:03:05',2,'2006-02-15 21:30:53'),(8153,'2005-07-28 20:55:49',2173,347,'2005-08-01 15:56:49',2,'2006-02-15 21:30:53'),(8154,'2005-07-28 20:56:18',1180,285,'2005-08-01 21:56:18',2,'2006-02-15 21:30:53'),(8155,'2005-07-28 20:57:06',3023,428,'2005-08-02 18:40:06',2,'2006-02-15 21:30:53'),(8156,'2005-07-28 20:59:04',1977,257,'2005-08-01 01:52:04',1,'2006-02-15 21:30:53'),(8157,'2005-07-28 21:06:45',915,566,'2005-08-04 16:06:45',1,'2006-02-15 21:30:53'),(8158,'2005-07-28 21:08:46',4327,458,'2005-08-01 21:50:46',2,'2006-02-15 21:30:53'),(8159,'2005-07-28 21:09:28',1118,47,'2005-08-04 15:34:28',1,'2006-02-15 21:30:53'),(8160,'2005-07-28 21:10:30',2446,138,'2005-08-05 16:52:30',2,'2006-02-15 21:30:53'),(8161,'2005-07-28 21:11:00',848,555,'2005-08-03 23:32:00',1,'2006-02-15 21:30:53'),(8162,'2005-07-28 21:11:46',4393,107,'2005-08-04 18:26:46',1,'2006-02-15 21:30:53'),(8163,'2005-07-28 21:11:48',1919,157,'2005-07-31 18:30:48',1,'2006-02-15 21:30:53'),(8164,'2005-07-28 21:17:19',1674,461,'2005-07-30 21:12:19',2,'2006-02-15 21:30:53'),(8165,'2005-07-28 21:23:06',3460,197,'2005-08-01 21:32:06',1,'2006-02-15 21:30:53'),(8166,'2005-07-28 21:23:33',3906,42,'2005-08-03 21:07:33',2,'2006-02-15 21:30:53'),(8167,'2005-07-28 21:25:45',3181,311,'2005-08-04 18:04:45',1,'2006-02-15 21:30:53'),(8168,'2005-07-28 21:28:32',1120,365,'2005-07-30 02:10:32',1,'2006-02-15 21:30:53'),(8169,'2005-07-28 21:29:46',4086,366,'2005-08-06 22:29:46',1,'2006-02-15 21:30:53'),(8170,'2005-07-28 21:32:29',2495,40,'2005-08-03 22:02:29',1,'2006-02-15 21:30:53'),(8171,'2005-07-28 21:32:57',3380,296,'2005-07-30 21:19:57',1,'2006-02-15 21:30:53'),(8172,'2005-07-28 21:34:36',1237,329,'2005-08-06 23:53:36',1,'2006-02-15 21:30:53'),(8173,'2005-07-28 21:35:44',4377,332,'2005-08-06 19:15:44',2,'2006-02-15 21:30:53'),(8174,'2005-07-28 21:36:52',465,359,'2005-08-04 00:32:52',1,'2006-02-15 21:30:53'),(8175,'2005-07-28 21:38:16',641,429,'2005-08-07 01:34:16',2,'2006-02-15 21:30:53'),(8176,'2005-07-28 21:42:08',3527,347,'2005-08-03 22:59:08',2,'2006-02-15 21:30:53'),(8177,'2005-07-28 21:43:54',3696,122,'2005-08-02 22:38:54',2,'2006-02-15 21:30:53'),(8178,'2005-07-28 21:54:31',2825,503,'2005-08-02 23:56:31',2,'2006-02-15 21:30:53'),(8179,'2005-07-28 22:05:13',2902,578,'2005-07-30 21:57:13',2,'2006-02-15 21:30:53'),(8180,'2005-07-28 22:05:24',3236,281,'2005-08-01 19:09:24',1,'2006-02-15 21:30:53'),(8181,'2005-07-28 22:18:38',357,522,'2005-08-06 02:43:38',2,'2006-02-15 21:30:53'),(8182,'2005-07-28 22:19:12',4120,427,'2005-08-01 22:40:12',2,'2006-02-15 21:30:53'),(8183,'2005-07-28 22:21:07',1545,119,'2005-08-04 19:20:07',2,'2006-02-15 21:30:53'),(8184,'2005-07-28 22:22:35',1249,160,'2005-07-31 19:30:35',1,'2006-02-15 21:30:53'),(8185,'2005-07-28 22:23:49',2452,568,'2005-07-31 00:07:49',1,'2006-02-15 21:30:53'),(8186,'2005-07-28 22:30:27',4255,102,'2005-07-31 21:08:27',1,'2006-02-15 21:30:53'),(8187,'2005-07-28 22:33:53',945,87,'2005-08-03 03:54:53',1,'2006-02-15 21:30:53'),(8188,'2005-07-28 22:34:12',3826,10,'2005-08-01 02:32:12',2,'2006-02-15 21:30:53'),(8189,'2005-07-28 22:36:26',3515,361,'2005-08-04 00:12:26',2,'2006-02-15 21:30:53'),(8190,'2005-07-28 22:47:06',2290,267,'2005-08-04 21:51:06',1,'2006-02-15 21:30:53'),(8191,'2005-07-28 22:47:14',1777,508,'2005-07-31 23:13:14',2,'2006-02-15 21:30:53'),(8192,'2005-07-28 22:49:11',255,552,'2005-07-30 04:13:11',1,'2006-02-15 21:30:53'),(8193,'2005-07-28 22:50:50',2402,15,'2005-08-01 04:14:50',2,'2006-02-15 21:30:53'),(8194,'2005-07-28 22:51:44',1148,424,'2005-07-29 17:13:44',1,'2006-02-15 21:30:53'),(8195,'2005-07-28 22:52:58',3989,590,'2005-08-04 02:12:58',1,'2006-02-15 21:30:53'),(8196,'2005-07-28 22:56:11',3435,21,'2005-08-06 04:53:11',1,'2006-02-15 21:30:53'),(8197,'2005-07-28 23:04:10',4126,407,'2005-08-05 00:06:10',2,'2006-02-15 21:30:53'),(8198,'2005-07-28 23:08:05',1767,356,'2005-08-06 00:43:05',2,'2006-02-15 21:30:53'),(8199,'2005-07-28 23:10:25',404,471,'2005-08-04 23:30:25',1,'2006-02-15 21:30:53'),(8200,'2005-07-28 23:10:46',353,185,'2005-07-29 18:35:46',1,'2006-02-15 21:30:53'),(8201,'2005-07-28 23:10:48',220,567,'2005-08-01 00:50:48',2,'2006-02-15 21:30:53'),(8202,'2005-07-28 23:11:45',3802,75,'2005-08-03 21:57:45',2,'2006-02-15 21:30:53'),(8203,'2005-07-28 23:14:56',3878,100,'2005-07-31 04:19:56',2,'2006-02-15 21:30:53'),(8204,'2005-07-28 23:18:29',2472,398,'2005-08-02 04:49:29',1,'2006-02-15 21:30:53'),(8205,'2005-07-28 23:18:48',2944,434,'2005-07-30 00:37:48',2,'2006-02-15 21:30:53'),(8206,'2005-07-28 23:20:31',2979,422,'2005-08-04 21:36:31',1,'2006-02-15 21:30:53'),(8207,'2005-07-28 23:26:31',1195,475,'2005-08-06 03:26:31',1,'2006-02-15 21:30:53'),(8208,'2005-07-28 23:26:35',1362,530,'2005-08-01 23:00:35',2,'2006-02-15 21:30:53'),(8209,'2005-07-28 23:29:28',2484,127,'2005-08-07 04:22:28',2,'2006-02-15 21:30:53'),(8210,'2005-07-28 23:31:05',3424,300,'2005-08-06 17:36:05',1,'2006-02-15 21:30:53'),(8211,'2005-07-28 23:34:22',1859,193,'2005-08-04 21:18:22',1,'2006-02-15 21:30:53'),(8212,'2005-07-28 23:37:23',1305,159,'2005-08-04 04:33:23',2,'2006-02-15 21:30:53'),(8213,'2005-07-28 23:37:33',3816,17,'2005-07-31 00:32:33',2,'2006-02-15 21:30:53'),(8214,'2005-07-28 23:37:57',352,509,'2005-08-07 00:29:57',2,'2006-02-15 21:30:53'),(8215,'2005-07-28 23:43:56',2921,437,'2005-08-03 19:30:56',2,'2006-02-15 21:30:53'),(8216,'2005-07-28 23:43:59',2211,254,'2005-08-06 05:05:59',1,'2006-02-15 21:30:53'),(8217,'2005-07-28 23:44:13',3747,206,'2005-08-03 21:27:13',2,'2006-02-15 21:30:53'),(8218,'2005-07-28 23:45:41',2769,578,'2005-08-02 00:14:41',1,'2006-02-15 21:30:53'),(8219,'2005-07-28 23:46:31',3609,227,'2005-08-03 00:11:31',2,'2006-02-15 21:30:53'),(8220,'2005-07-28 23:46:41',1061,360,'2005-07-31 22:14:41',2,'2006-02-15 21:30:53'),(8221,'2005-07-28 23:47:19',3138,496,'2005-08-02 20:42:19',1,'2006-02-15 21:30:53'),(8222,'2005-07-28 23:51:53',2999,278,'2005-08-05 22:48:53',1,'2006-02-15 21:30:53'),(8223,'2005-07-28 23:56:01',4508,282,'2005-08-03 22:27:01',1,'2006-02-15 21:30:53'),(8224,'2005-07-28 23:59:02',1995,467,'2005-08-02 04:54:02',1,'2006-02-15 21:30:53'),(8225,'2005-07-28 23:59:29',3631,41,'2005-07-30 03:27:29',2,'2006-02-15 21:30:53'),(8226,'2005-07-29 00:01:04',3541,368,'2005-08-01 19:08:04',2,'2006-02-15 21:30:53'),(8227,'2005-07-29 00:02:22',269,167,'2005-07-31 04:05:22',1,'2006-02-15 21:30:53'),(8228,'2005-07-29 00:08:58',1955,72,'2005-08-03 00:12:58',2,'2006-02-15 21:30:53'),(8229,'2005-07-29 00:09:08',4272,498,'2005-07-31 19:29:08',2,'2006-02-15 21:30:53'),(8230,'2005-07-29 00:12:59',1937,2,'2005-08-06 19:52:59',2,'2006-02-15 21:30:53'),(8231,'2005-07-29 00:14:37',1083,331,'2005-07-31 19:12:37',1,'2006-02-15 21:30:53'),(8232,'2005-07-29 00:14:37',3255,526,'2005-08-06 00:57:37',1,'2006-02-15 21:30:53'),(8233,'2005-07-29 00:16:23',1640,93,'2005-08-03 05:17:23',2,'2006-02-15 21:30:53'),(8234,'2005-07-29 00:19:20',644,227,'2005-08-03 19:16:20',2,'2006-02-15 21:30:53'),(8235,'2005-07-29 00:22:56',1581,320,'2005-08-03 04:03:56',2,'2006-02-15 21:30:53'),(8236,'2005-07-29 00:27:04',1901,369,'2005-07-31 05:02:04',2,'2006-02-15 21:30:53'),(8237,'2005-07-29 00:29:56',608,441,'2005-08-06 03:10:56',1,'2006-02-15 21:30:53'),(8238,'2005-07-29 00:30:06',2941,320,'2005-08-02 22:52:06',2,'2006-02-15 21:30:53'),(8239,'2005-07-29 00:31:39',3951,549,'2005-07-29 19:33:39',1,'2006-02-15 21:30:53'),(8240,'2005-07-29 00:33:32',1975,509,'2005-08-05 21:25:32',2,'2006-02-15 21:30:53'),(8241,'2005-07-29 00:33:36',4297,26,'2005-08-03 01:31:36',1,'2006-02-15 21:30:53'),(8242,'2005-07-29 00:34:27',509,99,'2005-08-05 23:13:27',2,'2006-02-15 21:30:53'),(8243,'2005-07-29 00:35:33',1873,481,'2005-08-04 06:02:33',2,'2006-02-15 21:30:53'),(8244,'2005-07-29 00:35:34',1552,175,'2005-08-05 04:18:34',2,'2006-02-15 21:30:53'),(8245,'2005-07-29 00:37:09',3330,555,'2005-08-05 05:48:09',2,'2006-02-15 21:30:53'),(8246,'2005-07-29 00:38:41',1724,146,'2005-08-05 06:28:41',2,'2006-02-15 21:30:53'),(8247,'2005-07-29 00:41:38',2607,539,'2005-08-06 20:29:38',2,'2006-02-15 21:30:53'),(8248,'2005-07-29 00:41:56',2017,272,'2005-08-05 18:53:56',2,'2006-02-15 21:30:53'),(8249,'2005-07-29 00:48:44',3331,57,'2005-08-07 04:25:44',2,'2006-02-15 21:30:53'),(8250,'2005-07-29 00:49:15',4519,533,'2005-08-04 02:53:15',1,'2006-02-15 21:30:53'),(8251,'2005-07-29 00:50:14',2317,408,'2005-08-03 23:52:14',2,'2006-02-15 21:30:53'),(8252,'2005-07-29 00:54:17',3312,257,'2005-07-31 20:34:17',1,'2006-02-15 21:30:53'),(8253,'2005-07-29 00:57:06',2388,76,'2005-08-07 01:46:06',1,'2006-02-15 21:30:53'),(8254,'2005-07-29 00:59:31',1787,392,'2005-08-03 23:43:31',2,'2006-02-15 21:30:53'),(8255,'2005-07-29 01:02:30',3715,224,'2005-08-01 22:39:30',1,'2006-02-15 21:30:53'),(8256,'2005-07-29 01:02:42',1483,537,'2005-07-31 22:29:42',2,'2006-02-15 21:30:53'),(8257,'2005-07-29 01:03:20',3024,566,'2005-08-04 21:54:20',1,'2006-02-15 21:30:53'),(8258,'2005-07-29 01:03:42',1379,370,'2005-08-04 22:08:42',2,'2006-02-15 21:30:53'),(8259,'2005-07-29 01:05:16',343,274,'2005-08-01 23:27:16',2,'2006-02-15 21:30:53'),(8260,'2005-07-29 01:11:00',4249,366,'2005-08-06 00:36:00',1,'2006-02-15 21:30:53'),(8261,'2005-07-29 01:11:05',1915,50,'2005-08-04 03:13:05',2,'2006-02-15 21:30:53'),(8262,'2005-07-29 01:11:18',1341,563,'2005-08-02 05:17:18',2,'2006-02-15 21:30:53'),(8263,'2005-07-29 01:11:23',28,5,'2005-07-31 01:53:23',2,'2006-02-15 21:30:53'),(8264,'2005-07-29 01:18:50',2987,175,'2005-08-03 05:31:50',2,'2006-02-15 21:30:53'),(8265,'2005-07-29 01:20:15',2389,409,'2005-08-06 19:32:15',2,'2006-02-15 21:30:53'),(8266,'2005-07-29 01:20:16',1972,196,'2005-07-30 04:31:16',1,'2006-02-15 21:30:53'),(8267,'2005-07-29 01:21:02',4107,131,'2005-08-04 19:34:02',2,'2006-02-15 21:30:53'),(8268,'2005-07-29 01:23:23',4239,421,'2005-08-05 01:36:23',1,'2006-02-15 21:30:53'),(8269,'2005-07-29 01:26:54',2778,376,'2005-08-04 22:42:54',1,'2006-02-15 21:30:53'),(8270,'2005-07-29 01:27:22',3565,282,'2005-07-29 20:55:22',1,'2006-02-15 21:30:53'),(8271,'2005-07-29 01:27:44',83,481,'2005-08-07 05:01:44',2,'2006-02-15 21:30:53'),(8272,'2005-07-29 01:29:51',70,346,'2005-08-03 21:56:51',2,'2006-02-15 21:30:53'),(8273,'2005-07-29 01:33:16',4244,532,'2005-08-06 04:26:16',2,'2006-02-15 21:30:53'),(8274,'2005-07-29 01:34:32',2634,340,'2005-08-01 20:15:32',2,'2006-02-15 21:30:53'),(8275,'2005-07-29 01:35:47',4432,336,'2005-07-30 02:16:47',1,'2006-02-15 21:30:53'),(8276,'2005-07-29 01:38:43',2451,466,'2005-08-03 23:00:43',1,'2006-02-15 21:30:53'),(8277,'2005-07-29 01:38:53',1296,13,'2005-08-04 07:09:53',2,'2006-02-15 21:30:53'),(8278,'2005-07-29 01:42:55',768,265,'2005-08-05 01:55:55',2,'2006-02-15 21:30:53'),(8279,'2005-07-29 01:43:37',3838,176,'2005-08-03 02:36:37',1,'2006-02-15 21:30:53'),(8280,'2005-07-29 01:45:51',1208,195,'2005-08-05 22:51:51',2,'2006-02-15 21:30:53'),(8281,'2005-07-29 01:46:00',899,441,'2005-08-04 23:09:00',1,'2006-02-15 21:30:53'),(8282,'2005-07-29 01:49:04',980,462,'2005-08-05 01:51:04',2,'2006-02-15 21:30:53'),(8283,'2005-07-29 01:52:22',2002,300,'2005-08-05 03:22:22',2,'2006-02-15 21:30:53'),(8284,'2005-07-29 01:56:40',4371,446,'2005-08-07 07:15:40',2,'2006-02-15 21:30:53'),(8285,'2005-07-29 02:00:18',678,56,'2005-08-03 20:43:18',2,'2006-02-15 21:30:53'),(8286,'2005-07-29 02:02:46',4092,87,'2005-08-06 06:00:46',1,'2006-02-15 21:30:53'),(8287,'2005-07-29 02:03:58',812,178,'2005-08-07 02:11:58',1,'2006-02-15 21:30:53'),(8288,'2005-07-29 02:04:22',1822,55,'2005-08-05 04:21:22',2,'2006-02-15 21:30:53'),(8289,'2005-07-29 02:23:24',4579,459,'2005-08-06 03:23:24',2,'2006-02-15 21:30:53'),(8290,'2005-07-29 02:24:08',3823,462,'2005-08-03 01:02:08',2,'2006-02-15 21:30:53'),(8291,'2005-07-29 02:28:25',2817,455,'2005-08-03 20:57:25',2,'2006-02-15 21:30:53'),(8292,'2005-07-29 02:29:36',4003,192,'2005-08-07 08:06:36',1,'2006-02-15 21:30:53'),(8293,'2005-07-29 02:30:50',831,71,'2005-08-04 03:09:50',2,'2006-02-15 21:30:53'),(8294,'2005-07-29 02:32:41',1811,520,'2005-08-02 06:28:41',1,'2006-02-15 21:30:53'),(8295,'2005-07-29 02:42:14',2065,406,'2005-07-30 22:22:14',1,'2006-02-15 21:30:53'),(8296,'2005-07-29 02:43:25',2543,88,'2005-08-01 00:23:25',1,'2006-02-15 21:30:53'),(8297,'2005-07-29 02:45:46',3774,349,'2005-07-31 20:49:46',1,'2006-02-15 21:30:53'),(8298,'2005-07-29 02:47:36',952,493,'2005-08-05 07:58:36',2,'2006-02-15 21:30:53'),(8299,'2005-07-29 02:56:00',1797,173,'2005-07-30 22:35:00',2,'2006-02-15 21:30:53'),(8300,'2005-07-29 02:57:59',4364,222,'2005-08-05 01:12:59',2,'2006-02-15 21:30:53'),(8301,'2005-07-29 03:00:08',562,101,'2005-08-01 04:26:08',2,'2006-02-15 21:30:53'),(8302,'2005-07-29 03:01:24',1314,103,'2005-07-30 01:08:24',2,'2006-02-15 21:30:53'),(8303,'2005-07-29 03:05:56',1620,574,'2005-08-04 06:13:56',1,'2006-02-15 21:30:53'),(8304,'2005-07-29 03:08:30',4431,119,'2005-08-02 03:04:30',2,'2006-02-15 21:30:53'),(8305,'2005-07-29 03:08:47',3916,566,'2005-08-06 07:49:47',2,'2006-02-15 21:30:53'),(8306,'2005-07-29 03:12:26',1708,232,'2005-08-01 23:26:26',1,'2006-02-15 21:30:53'),(8307,'2005-07-29 03:18:34',3197,39,'2005-08-06 05:51:34',2,'2006-02-15 21:30:53'),(8308,'2005-07-29 03:22:15',601,582,'2005-08-04 21:38:15',2,'2006-02-15 21:30:53'),(8309,'2005-07-29 03:22:20',2250,446,'2005-08-01 06:30:20',1,'2006-02-15 21:30:53'),(8310,'2005-07-29 03:25:56',2637,238,'2005-08-06 23:18:56',2,'2006-02-15 21:30:53'),(8311,'2005-07-29 03:26:07',3623,63,'2005-08-02 01:46:07',1,'2006-02-15 21:30:53'),(8312,'2005-07-29 03:32:38',3996,143,'2005-07-31 02:12:38',1,'2006-02-15 21:30:53'),(8313,'2005-07-29 03:34:21',2736,91,'2005-08-02 01:32:21',1,'2006-02-15 21:30:53'),(8314,'2005-07-29 03:35:04',2182,118,'2005-08-06 08:43:04',2,'2006-02-15 21:30:53'),(8315,'2005-07-29 03:37:07',1420,135,'2005-07-29 23:22:07',2,'2006-02-15 21:30:53'),(8316,'2005-07-29 03:38:49',4118,549,'2005-08-03 07:41:49',1,'2006-02-15 21:30:53'),(8317,'2005-07-29 03:39:07',3898,415,'2005-08-03 00:14:07',1,'2006-02-15 21:30:53'),(8318,'2005-07-29 03:44:30',4524,167,'2005-07-30 05:03:30',2,'2006-02-15 21:30:53'),(8319,'2005-07-29 03:44:52',747,280,'2005-08-01 00:35:52',2,'2006-02-15 21:30:53'),(8320,'2005-07-29 03:49:58',1285,513,'2005-08-03 01:00:58',1,'2006-02-15 21:30:53'),(8321,'2005-07-29 03:50:54',1875,354,'2005-08-01 02:08:54',1,'2006-02-15 21:30:53'),(8322,'2005-07-29 03:52:49',301,541,'2005-08-02 22:53:49',1,'2006-02-15 21:30:53'),(8323,'2005-07-29 03:52:59',2766,87,'2005-08-06 01:49:59',2,'2006-02-15 21:30:53'),(8324,'2005-07-29 03:56:05',1467,98,'2005-08-02 01:41:05',1,'2006-02-15 21:30:53'),(8325,'2005-07-29 03:57:27',932,362,'2005-08-06 22:30:27',1,'2006-02-15 21:30:53'),(8326,'2005-07-29 03:58:49',108,1,'2005-08-01 05:16:49',2,'2006-02-15 21:30:53'),(8327,'2005-07-29 04:00:52',2928,317,'2005-07-31 08:27:52',1,'2006-02-15 21:30:53'),(8328,'2005-07-29 04:06:24',4454,314,'2005-08-03 22:24:24',1,'2006-02-15 21:30:53'),(8329,'2005-07-29 04:06:33',3468,108,'2005-08-06 01:46:33',1,'2006-02-15 21:30:53'),(8330,'2005-07-29 04:09:07',2294,412,'2005-08-05 05:00:07',2,'2006-02-15 21:30:53'),(8331,'2005-07-29 04:13:29',18,148,'2005-08-04 07:09:29',1,'2006-02-15 21:30:53'),(8332,'2005-07-29 04:16:00',1142,217,'2005-08-03 03:34:00',1,'2006-02-15 21:30:53'),(8333,'2005-07-29 04:16:40',823,494,'2005-08-02 10:10:40',2,'2006-02-15 21:30:53'),(8334,'2005-07-29 04:18:25',982,154,'2005-08-07 07:18:25',2,'2006-02-15 21:30:53'),(8335,'2005-07-29 04:18:25',1719,143,'2005-07-31 08:12:25',2,'2006-02-15 21:30:53'),(8336,'2005-07-29 04:20:42',2120,210,'2005-08-05 10:17:42',1,'2006-02-15 21:30:53'),(8337,'2005-07-29 04:31:55',752,157,'2005-08-02 02:38:55',2,'2006-02-15 21:30:53'),(8338,'2005-07-29 04:40:39',2257,389,'2005-08-07 04:40:39',2,'2006-02-15 21:30:53'),(8339,'2005-07-29 04:41:13',1870,129,'2005-07-30 09:01:13',2,'2006-02-15 21:30:53'),(8340,'2005-07-29 04:41:44',1553,386,'2005-08-07 10:33:44',1,'2006-02-15 21:30:53'),(8341,'2005-07-29 04:42:01',4208,309,'2005-08-04 00:58:01',1,'2006-02-15 21:30:53'),(8342,'2005-07-29 04:45:05',3301,572,'2005-08-01 07:20:05',1,'2006-02-15 21:30:53'),(8343,'2005-07-29 04:45:16',4267,439,'2005-08-02 03:37:16',1,'2006-02-15 21:30:53'),(8344,'2005-07-29 04:45:25',221,257,'2005-08-06 01:53:25',1,'2006-02-15 21:30:53'),(8345,'2005-07-29 04:47:37',1034,129,'2005-08-02 07:25:37',1,'2006-02-15 21:30:53'),(8346,'2005-07-29 04:48:22',2475,385,'2005-08-01 04:22:22',1,'2006-02-15 21:30:53'),(8347,'2005-07-29 04:49:25',4407,157,'2005-07-31 00:57:25',2,'2006-02-15 21:30:53'),(8348,'2005-07-29 04:49:26',4533,174,'2005-08-05 03:26:26',2,'2006-02-15 21:30:53'),(8349,'2005-07-29 04:50:22',534,416,'2005-08-05 08:50:22',1,'2006-02-15 21:30:53'),(8350,'2005-07-29 04:50:39',3726,513,'2005-07-31 05:36:39',2,'2006-02-15 21:30:53'),(8351,'2005-07-29 04:50:53',2963,202,'2005-07-30 07:28:53',2,'2006-02-15 21:30:53'),(8352,'2005-07-29 04:52:01',2710,168,'2005-08-06 07:39:01',2,'2006-02-15 21:30:53'),(8353,'2005-07-29 04:52:10',26,585,'2005-07-30 04:01:10',1,'2006-02-15 21:30:53'),(8354,'2005-07-29 04:56:26',4476,579,'2005-08-01 08:04:26',2,'2006-02-15 21:30:53'),(8355,'2005-07-29 04:57:43',4569,270,'2005-08-03 06:25:43',1,'2006-02-15 21:30:53'),(8356,'2005-07-29 04:58:56',2951,483,'2005-08-06 03:07:56',1,'2006-02-15 21:30:53'),(8357,'2005-07-29 04:59:44',892,76,'2005-08-01 04:26:44',1,'2006-02-15 21:30:53'),(8358,'2005-07-29 05:00:58',1449,372,'2005-08-01 02:49:58',2,'2006-02-15 21:30:53'),(8359,'2005-07-29 05:02:12',140,531,'2005-08-04 08:52:12',1,'2006-02-15 21:30:53'),(8360,'2005-07-29 05:08:00',4135,62,'2005-08-02 00:40:00',1,'2006-02-15 21:30:53'),(8361,'2005-07-29 05:08:57',3404,360,'2005-08-03 02:49:57',1,'2006-02-15 21:30:53'),(8362,'2005-07-29 05:09:11',2287,223,'2005-08-04 00:08:11',2,'2006-02-15 21:30:53'),(8363,'2005-07-29 05:10:08',1607,302,'2005-08-06 00:11:08',1,'2006-02-15 21:30:53'),(8364,'2005-07-29 05:10:31',1361,362,'2005-07-30 04:02:31',2,'2006-02-15 21:30:53'),(8365,'2005-07-29 05:11:00',53,280,'2005-07-30 05:30:00',2,'2006-02-15 21:30:53'),(8366,'2005-07-29 05:11:14',479,39,'2005-08-05 01:48:14',1,'2006-02-15 21:30:53'),(8367,'2005-07-29 05:11:19',4551,383,'2005-08-02 00:35:19',1,'2006-02-15 21:30:53'),(8368,'2005-07-29 05:15:41',1410,200,'2005-08-07 01:35:41',1,'2006-02-15 21:30:53'),(8369,'2005-07-29 05:15:42',1456,507,'2005-08-01 03:36:42',2,'2006-02-15 21:30:53'),(8370,'2005-07-29 05:16:21',1206,121,'2005-08-06 23:16:21',1,'2006-02-15 21:30:53'),(8371,'2005-07-29 05:16:35',2466,396,'2005-07-31 01:49:35',1,'2006-02-15 21:30:53'),(8372,'2005-07-29 05:18:08',754,523,'2005-08-06 09:39:08',1,'2006-02-15 21:30:53'),(8373,'2005-07-29 05:19:53',2070,457,'2005-08-04 04:39:53',1,'2006-02-15 21:30:53'),(8374,'2005-07-29 05:24:02',1084,589,'2005-08-05 03:55:02',1,'2006-02-15 21:30:53'),(8375,'2005-07-29 05:25:30',3634,125,'2005-08-04 01:43:30',2,'2006-02-15 21:30:53'),(8376,'2005-07-29 05:25:32',3588,43,'2005-08-01 07:42:32',2,'2006-02-15 21:30:53'),(8377,'2005-07-29 05:27:40',270,73,'2005-07-30 02:52:40',2,'2006-02-15 21:30:53'),(8378,'2005-07-29 05:28:35',3500,347,'2005-08-02 05:55:35',1,'2006-02-15 21:30:53'),(8379,'2005-07-29 05:29:40',3907,193,'2005-08-06 05:56:40',2,'2006-02-15 21:30:53'),(8380,'2005-07-29 05:31:29',2279,145,'2005-08-02 01:27:29',1,'2006-02-15 21:30:53'),(8381,'2005-07-29 05:31:44',865,313,'2005-07-31 09:20:44',1,'2006-02-15 21:30:53'),(8382,'2005-07-29 05:33:21',317,238,'2005-08-03 03:38:21',1,'2006-02-15 21:30:53'),(8383,'2005-07-29 05:36:47',3809,495,'2005-08-03 05:53:47',2,'2006-02-15 21:30:53'),(8384,'2005-07-29 05:38:43',3807,227,'2005-08-01 07:31:43',2,'2006-02-15 21:30:53'),(8385,'2005-07-29 05:39:16',4108,233,'2005-08-03 00:30:16',1,'2006-02-15 21:30:53'),(8386,'2005-07-29 05:45:30',388,435,'2005-08-05 03:56:30',2,'2006-02-15 21:30:53'),(8387,'2005-07-29 05:47:27',910,428,'2005-07-31 06:26:27',1,'2006-02-15 21:30:53'),(8388,'2005-07-29 05:48:15',770,178,'2005-08-05 06:24:15',2,'2006-02-15 21:30:53'),(8389,'2005-07-29 05:50:09',1241,133,'2005-08-06 05:15:09',2,'2006-02-15 21:30:53'),(8390,'2005-07-29 05:52:26',581,32,'2005-08-04 08:12:26',2,'2006-02-15 21:30:53'),(8391,'2005-07-29 05:52:50',2134,36,'2005-08-03 04:45:50',2,'2006-02-15 21:30:53'),(8392,'2005-07-29 06:00:27',1323,65,'2005-08-02 00:30:27',2,'2006-02-15 21:30:53'),(8393,'2005-07-29 06:02:11',3369,504,'2005-08-07 03:23:11',1,'2006-02-15 21:30:53'),(8394,'2005-07-29 06:02:14',3933,148,'2005-08-03 08:15:14',1,'2006-02-15 21:30:53'),(8395,'2005-07-29 06:03:30',1471,535,'2005-07-31 09:08:30',2,'2006-02-15 21:30:53'),(8396,'2005-07-29 06:07:00',3911,516,'2005-07-30 05:32:00',2,'2006-02-15 21:30:53'),(8397,'2005-07-29 06:09:35',3542,518,'2005-08-01 02:08:35',1,'2006-02-15 21:30:53'),(8398,'2005-07-29 06:12:40',348,220,'2005-08-02 05:01:40',2,'2006-02-15 21:30:53'),(8399,'2005-07-29 06:20:18',233,286,'2005-08-04 01:26:18',1,'2006-02-15 21:30:53'),(8400,'2005-07-29 06:23:56',3680,573,'2005-07-31 02:41:56',2,'2006-02-15 21:30:53'),(8401,'2005-07-29 06:25:08',3121,232,'2005-08-01 06:49:08',1,'2006-02-15 21:30:53'),(8402,'2005-07-29 06:25:45',186,47,'2005-08-07 10:48:45',1,'2006-02-15 21:30:53'),(8403,'2005-07-29 06:26:39',1360,163,'2005-08-02 05:37:39',1,'2006-02-15 21:30:53'),(8404,'2005-07-29 06:27:01',2086,65,'2005-08-07 04:33:01',1,'2006-02-15 21:30:53'),(8405,'2005-07-29 06:28:19',2164,76,'2005-08-07 08:14:19',2,'2006-02-15 21:30:53'),(8406,'2005-07-29 06:34:45',2047,274,'2005-08-06 02:28:45',1,'2006-02-15 21:30:53'),(8407,'2005-07-29 06:37:02',2985,336,'2005-08-04 03:13:02',1,'2006-02-15 21:30:53'),(8408,'2005-07-29 06:40:40',1841,90,'2005-07-30 10:02:40',2,'2006-02-15 21:30:53'),(8409,'2005-07-29 06:41:22',4314,303,'2005-07-31 11:21:22',1,'2006-02-15 21:30:53'),(8410,'2005-07-29 06:41:36',3448,277,'2005-08-02 08:38:36',1,'2006-02-15 21:30:53'),(8411,'2005-07-29 06:44:23',3085,412,'2005-08-07 03:56:23',1,'2006-02-15 21:30:53'),(8412,'2005-07-29 06:44:50',743,312,'2005-08-06 05:04:50',1,'2006-02-15 21:30:53'),(8413,'2005-07-29 06:47:39',2762,104,'2005-08-02 09:15:39',2,'2006-02-15 21:30:53'),(8414,'2005-07-29 06:48:35',1337,433,'2005-08-06 10:54:35',2,'2006-02-15 21:30:53'),(8415,'2005-07-29 06:52:27',2903,128,'2005-08-02 10:40:27',1,'2006-02-15 21:30:53'),(8416,'2005-07-29 06:52:54',1999,315,'2005-08-05 09:50:54',2,'2006-02-15 21:30:53'),(8417,'2005-07-29 06:53:36',750,227,'2005-08-06 09:31:36',2,'2006-02-15 21:30:53'),(8418,'2005-07-29 06:54:21',3081,355,'2005-08-05 06:50:21',2,'2006-02-15 21:30:53'),(8419,'2005-07-29 06:54:48',4574,37,'2005-08-06 05:02:48',1,'2006-02-15 21:30:53'),(8420,'2005-07-29 07:00:45',4184,376,'2005-08-06 02:20:45',1,'2006-02-15 21:30:53'),(8421,'2005-07-29 07:00:47',3399,588,'2005-08-02 08:03:47',2,'2006-02-15 21:30:53'),(8422,'2005-07-29 07:02:55',3104,7,'2005-08-03 12:35:55',1,'2006-02-15 21:30:53'),(8423,'2005-07-29 07:02:57',187,468,'2005-08-06 04:59:57',1,'2006-02-15 21:30:53'),(8424,'2005-07-29 07:06:03',366,138,'2005-08-06 12:00:03',2,'2006-02-15 21:30:53'),(8425,'2005-07-29 07:06:21',3491,486,'2005-08-05 07:57:21',2,'2006-02-15 21:30:53'),(8426,'2005-07-29 07:07:48',1840,564,'2005-08-07 08:56:48',2,'2006-02-15 21:30:53'),(8427,'2005-07-29 07:08:36',1624,441,'2005-07-30 11:54:36',2,'2006-02-15 21:30:53'),(8428,'2005-07-29 07:10:14',2545,398,'2005-08-06 02:29:14',2,'2006-02-15 21:30:53'),(8429,'2005-07-29 07:11:49',2456,588,'2005-07-31 02:45:49',1,'2006-02-15 21:30:53'),(8430,'2005-07-29 07:12:17',3377,219,'2005-08-03 09:53:17',2,'2006-02-15 21:30:53'),(8431,'2005-07-29 07:12:48',1583,193,'2005-08-01 10:03:48',1,'2006-02-15 21:30:53'),(8432,'2005-07-29 07:13:33',3896,572,'2005-07-30 03:14:33',1,'2006-02-15 21:30:53'),(8433,'2005-07-29 07:19:16',1957,125,'2005-08-05 03:29:16',1,'2006-02-15 21:30:53'),(8434,'2005-07-29 07:20:14',40,141,'2005-07-30 08:50:14',2,'2006-02-15 21:30:53'),(8435,'2005-07-29 07:20:16',4462,520,'2005-08-02 09:54:16',2,'2006-02-15 21:30:53'),(8436,'2005-07-29 07:21:20',2702,598,'2005-07-31 12:56:20',2,'2006-02-15 21:30:53'),(8437,'2005-07-29 07:23:43',2118,96,'2005-08-04 10:52:43',1,'2006-02-15 21:30:53'),(8438,'2005-07-29 07:25:42',720,97,'2005-08-04 07:39:42',1,'2006-02-15 21:30:53'),(8439,'2005-07-29 07:28:43',182,224,'2005-08-04 11:22:43',1,'2006-02-15 21:30:53'),(8440,'2005-07-29 07:31:26',489,175,'2005-08-04 07:04:26',1,'2006-02-15 21:30:53'),(8441,'2005-07-29 07:33:05',1000,526,'2005-08-04 04:00:05',2,'2006-02-15 21:30:53'),(8442,'2005-07-29 07:33:07',4345,185,'2005-08-03 03:09:07',2,'2006-02-15 21:30:53'),(8443,'2005-07-29 07:33:12',1059,251,'2005-08-02 01:36:12',2,'2006-02-15 21:30:53'),(8444,'2005-07-29 07:36:13',3329,213,'2005-08-05 04:55:13',1,'2006-02-15 21:30:53'),(8445,'2005-07-29 07:37:48',2792,384,'2005-08-04 10:43:48',1,'2006-02-15 21:30:53'),(8446,'2005-07-29 07:38:10',1593,235,'2005-08-06 04:39:10',2,'2006-02-15 21:30:53'),(8447,'2005-07-29 07:38:14',930,11,'2005-08-05 02:27:14',2,'2006-02-15 21:30:53'),(8448,'2005-07-29 07:41:54',4349,393,'2005-08-02 13:12:54',1,'2006-02-15 21:30:53'),(8449,'2005-07-29 07:42:25',2610,273,'2005-07-30 06:07:25',2,'2006-02-15 21:30:53'),(8450,'2005-07-29 07:44:05',484,401,'2005-08-01 12:23:05',1,'2006-02-15 21:30:53'),(8451,'2005-07-29 07:44:56',3309,495,'2005-08-06 02:29:56',1,'2006-02-15 21:30:53'),(8452,'2005-07-29 07:45:00',4312,16,'2005-08-05 09:46:00',2,'2006-02-15 21:30:53'),(8453,'2005-07-29 07:46:29',2907,32,'2005-07-30 07:07:29',1,'2006-02-15 21:30:53'),(8454,'2005-07-29 07:49:04',159,244,'2005-08-03 04:43:04',2,'2006-02-15 21:30:53'),(8455,'2005-07-29 07:53:06',4043,404,'2005-08-05 05:29:06',1,'2006-02-15 21:30:53'),(8456,'2005-07-29 07:58:31',671,388,'2005-08-05 07:17:31',2,'2006-02-15 21:30:53'),(8457,'2005-07-29 07:59:03',3371,239,'2005-08-04 08:42:03',1,'2006-02-15 21:30:53'),(8458,'2005-07-29 08:05:09',3857,317,'2005-08-02 03:42:09',1,'2006-02-15 21:30:53'),(8459,'2005-07-29 08:05:40',3441,144,'2005-08-04 03:24:40',1,'2006-02-15 21:30:53'),(8460,'2005-07-29 08:08:03',2826,329,'2005-08-07 06:53:03',2,'2006-02-15 21:30:53'),(8461,'2005-07-29 08:11:31',3373,399,'2005-08-06 09:23:31',1,'2006-02-15 21:30:53'),(8462,'2005-07-29 08:15:42',3633,200,'2005-08-04 03:57:42',1,'2006-02-15 21:30:53'),(8463,'2005-07-29 08:17:51',466,203,'2005-08-03 13:41:51',1,'2006-02-15 21:30:53'),(8464,'2005-07-29 08:18:20',2343,28,'2005-08-03 04:50:20',2,'2006-02-15 21:30:53'),(8465,'2005-07-29 08:20:49',4109,238,'2005-07-31 04:02:49',2,'2006-02-15 21:30:53'),(8466,'2005-07-29 08:24:47',4010,285,'2005-07-31 03:43:47',1,'2006-02-15 21:30:53'),(8467,'2005-07-29 08:25:35',263,326,'2005-08-07 03:28:35',2,'2006-02-15 21:30:53'),(8468,'2005-07-29 08:26:04',1338,282,'2005-08-02 07:18:04',1,'2006-02-15 21:30:53'),(8469,'2005-07-29 08:26:27',2754,408,'2005-08-05 04:26:27',2,'2006-02-15 21:30:53'),(8470,'2005-07-29 08:28:50',3717,159,'2005-07-30 13:40:50',2,'2006-02-15 21:30:53'),(8471,'2005-07-29 08:32:11',1520,533,'2005-08-01 13:55:11',1,'2006-02-15 21:30:53'),(8472,'2005-07-29 08:36:22',2975,196,'2005-08-02 07:55:22',1,'2006-02-15 21:30:53'),(8473,'2005-07-29 08:36:53',4141,311,'2005-07-31 12:14:53',1,'2006-02-15 21:30:53'),(8474,'2005-07-29 08:36:56',4346,323,'2005-08-01 03:07:56',1,'2006-02-15 21:30:53'),(8475,'2005-07-29 08:37:41',3695,260,'2005-08-04 10:03:41',2,'2006-02-15 21:30:53'),(8476,'2005-07-29 08:39:12',3741,470,'2005-08-06 03:03:12',1,'2006-02-15 21:30:53'),(8477,'2005-07-29 08:40:36',3571,354,'2005-08-06 08:28:36',2,'2006-02-15 21:30:53'),(8478,'2005-07-29 08:40:36',3742,162,'2005-08-01 10:23:36',1,'2006-02-15 21:30:53'),(8479,'2005-07-29 08:42:04',1990,195,'2005-08-01 03:10:04',1,'2006-02-15 21:30:53'),(8480,'2005-07-29 08:44:46',3512,467,'2005-08-05 13:22:46',1,'2006-02-15 21:30:53'),(8481,'2005-07-29 08:45:57',1739,454,'2005-08-01 12:50:57',2,'2006-02-15 21:30:53'),(8482,'2005-07-29 08:46:33',2686,405,'2005-07-31 11:07:33',2,'2006-02-15 21:30:53'),(8483,'2005-07-29 08:50:18',2786,186,'2005-08-03 06:46:18',1,'2006-02-15 21:30:53'),(8484,'2005-07-29 08:51:59',742,260,'2005-07-30 09:07:59',1,'2006-02-15 21:30:53'),(8485,'2005-07-29 08:53:09',3172,420,'2005-07-30 11:25:09',1,'2006-02-15 21:30:53'),(8486,'2005-07-29 08:53:38',1759,221,'2005-08-01 14:12:38',2,'2006-02-15 21:30:53'),(8487,'2005-07-29 08:53:49',1893,82,'2005-07-31 09:10:49',2,'2006-02-15 21:30:53'),(8488,'2005-07-29 08:57:38',2176,478,'2005-08-02 04:16:38',1,'2006-02-15 21:30:53'),(8489,'2005-07-29 08:58:03',375,265,'2005-08-02 07:50:03',2,'2006-02-15 21:30:53'),(8490,'2005-07-29 08:59:25',1943,367,'2005-08-05 14:02:25',2,'2006-02-15 21:30:53'),(8491,'2005-07-29 09:02:13',1806,242,'2005-08-03 04:32:13',1,'2006-02-15 21:30:53'),(8492,'2005-07-29 09:04:17',4553,266,'2005-08-02 08:48:17',2,'2006-02-15 21:30:53'),(8493,'2005-07-29 09:04:31',664,390,'2005-08-04 05:17:31',2,'2006-02-15 21:30:53'),(8494,'2005-07-29 09:04:32',3524,92,'2005-07-31 10:30:32',1,'2006-02-15 21:30:53'),(8495,'2005-07-29 09:05:06',344,51,'2005-08-06 05:48:06',2,'2006-02-15 21:30:53'),(8496,'2005-07-29 09:05:33',765,114,'2005-08-02 06:32:33',1,'2006-02-15 21:30:53'),(8497,'2005-07-29 09:07:03',1837,593,'2005-08-02 09:18:03',2,'2006-02-15 21:30:53'),(8498,'2005-07-29 09:07:38',4468,190,'2005-08-04 07:01:38',1,'2006-02-15 21:30:53'),(8499,'2005-07-29 09:10:41',219,42,'2005-08-05 10:01:41',1,'2006-02-15 21:30:53'),(8500,'2005-07-29 09:12:01',4516,348,'2005-07-31 10:15:01',1,'2006-02-15 21:30:53'),(8501,'2005-07-29 09:12:51',1052,309,'2005-07-30 11:19:51',2,'2006-02-15 21:30:53'),(8502,'2005-07-29 09:15:41',2149,457,'2005-07-30 10:41:41',1,'2006-02-15 21:30:53'),(8503,'2005-07-29 09:16:50',1164,240,'2005-08-04 11:34:50',2,'2006-02-15 21:30:53'),(8504,'2005-07-29 09:20:16',2295,561,'2005-08-07 04:27:16',2,'2006-02-15 21:30:53'),(8505,'2005-07-29 09:22:52',1454,346,'2005-08-06 05:23:52',1,'2006-02-15 21:30:53'),(8506,'2005-07-29 09:23:52',3714,506,'2005-07-31 04:42:52',1,'2006-02-15 21:30:53'),(8507,'2005-07-29 09:29:44',3273,524,'2005-08-07 05:48:44',2,'2006-02-15 21:30:53'),(8508,'2005-07-29 09:34:38',4173,484,'2005-08-01 14:52:38',2,'2006-02-15 21:30:53'),(8509,'2005-07-29 09:38:19',1332,80,'2005-08-04 11:45:19',1,'2006-02-15 21:30:53'),(8510,'2005-07-29 09:41:38',7,487,'2005-08-05 05:30:38',2,'2006-02-15 21:30:53'),(8511,'2005-07-29 09:42:42',3667,598,'2005-08-06 14:22:42',2,'2006-02-15 21:30:53'),(8512,'2005-07-29 09:48:03',4132,351,'2005-07-31 13:40:03',1,'2006-02-15 21:30:53'),(8513,'2005-07-29 09:52:59',3156,142,'2005-07-31 12:05:59',1,'2006-02-15 21:30:53'),(8514,'2005-07-29 09:53:33',3755,99,'2005-07-30 06:34:33',2,'2006-02-15 21:30:53'),(8515,'2005-07-29 09:55:20',1071,477,'2005-08-05 07:08:20',2,'2006-02-15 21:30:53'),(8516,'2005-07-29 10:00:03',981,337,'2005-08-02 09:34:03',1,'2006-02-15 21:30:53'),(8517,'2005-07-29 10:00:48',2064,274,'2005-08-06 14:37:48',2,'2006-02-15 21:30:53'),(8518,'2005-07-29 10:05:27',2311,385,'2005-08-02 05:39:27',1,'2006-02-15 21:30:53'),(8519,'2005-07-29 10:09:43',1163,588,'2005-08-03 08:14:43',2,'2006-02-15 21:30:53'),(8520,'2005-07-29 10:10:02',2440,103,'2005-08-02 05:25:02',2,'2006-02-15 21:30:53'),(8521,'2005-07-29 10:12:45',2608,402,'2005-08-07 04:37:45',2,'2006-02-15 21:30:53'),(8522,'2005-07-29 10:16:19',3636,363,'2005-08-06 14:58:19',1,'2006-02-15 21:30:53'),(8523,'2005-07-29 10:18:27',3614,558,'2005-08-04 09:31:27',1,'2006-02-15 21:30:53'),(8524,'2005-07-29 10:20:07',2110,124,'2005-08-03 04:30:07',1,'2006-02-15 21:30:53'),(8525,'2005-07-29 10:20:19',1322,111,'2005-07-30 05:49:19',2,'2006-02-15 21:30:53'),(8526,'2005-07-29 10:20:48',575,88,'2005-08-03 14:15:48',1,'2006-02-15 21:30:53'),(8527,'2005-07-29 10:21:00',709,168,'2005-08-05 16:05:00',2,'2006-02-15 21:30:53'),(8528,'2005-07-29 10:24:22',2107,428,'2005-08-07 10:34:22',1,'2006-02-15 21:30:53'),(8529,'2005-07-29 10:24:31',1055,501,'2005-08-01 16:06:31',1,'2006-02-15 21:30:53'),(8530,'2005-07-29 10:26:14',4528,233,'2005-07-31 10:24:14',1,'2006-02-15 21:30:53'),(8531,'2005-07-29 10:26:15',1631,427,'2005-08-06 09:28:15',1,'2006-02-15 21:30:53'),(8532,'2005-07-29 10:26:56',3045,546,'2005-08-02 13:23:56',2,'2006-02-15 21:30:53'),(8533,'2005-07-29 10:29:16',551,542,'2005-08-01 06:52:16',1,'2006-02-15 21:30:53'),(8534,'2005-07-29 10:30:13',4029,516,'2005-08-02 04:47:13',1,'2006-02-15 21:30:53'),(8535,'2005-07-29 10:32:33',4489,536,'2005-07-31 05:46:33',1,'2006-02-15 21:30:53'),(8536,'2005-07-29 10:37:23',4510,219,'2005-07-31 07:21:23',2,'2006-02-15 21:30:53'),(8537,'2005-07-29 10:44:54',1012,447,'2005-08-06 14:55:54',2,'2006-02-15 21:30:53'),(8538,'2005-07-29 10:45:17',3768,500,'2005-08-04 15:12:17',1,'2006-02-15 21:30:53'),(8539,'2005-07-29 10:48:24',599,325,'2005-07-30 06:29:24',2,'2006-02-15 21:30:53'),(8540,'2005-07-29 10:52:51',539,180,'2005-08-07 11:44:51',2,'2006-02-15 21:30:53'),(8541,'2005-07-29 10:55:01',976,340,'2005-07-31 10:53:01',1,'2006-02-15 21:30:53'),(8542,'2005-07-29 11:01:50',792,213,'2005-07-30 08:19:50',1,'2006-02-15 21:30:53'),(8543,'2005-07-29 11:01:57',403,346,'2005-08-03 06:03:57',1,'2006-02-15 21:30:53'),(8544,'2005-07-29 11:02:08',412,542,'2005-08-06 15:06:08',2,'2006-02-15 21:30:53'),(8545,'2005-07-29 11:07:04',3261,3,'2005-08-06 13:30:04',2,'2006-02-15 21:30:53'),(8546,'2005-07-29 11:08:48',3224,418,'2005-08-03 16:50:48',2,'2006-02-15 21:30:53'),(8547,'2005-07-29 11:10:15',875,438,'2005-08-03 12:50:15',1,'2006-02-15 21:30:53'),(8548,'2005-07-29 11:11:33',3366,14,'2005-08-04 11:52:33',2,'2006-02-15 21:30:53'),(8549,'2005-07-29 11:12:13',1866,206,'2005-08-06 06:04:13',2,'2006-02-15 21:30:53'),(8550,'2005-07-29 11:12:37',1340,70,'2005-07-30 15:05:37',2,'2006-02-15 21:30:53'),(8551,'2005-07-29 11:13:11',2083,340,'2005-08-05 05:17:11',2,'2006-02-15 21:30:53'),(8552,'2005-07-29 11:14:02',1987,490,'2005-08-05 14:13:02',2,'2006-02-15 21:30:53'),(8553,'2005-07-29 11:15:36',2645,49,'2005-08-07 16:37:36',1,'2006-02-15 21:30:53'),(8554,'2005-07-29 11:16:29',1563,582,'2005-07-31 06:38:29',2,'2006-02-15 21:30:53'),(8555,'2005-07-29 11:18:01',2784,18,'2005-07-30 10:47:01',2,'2006-02-15 21:30:53'),(8556,'2005-07-29 11:18:27',2793,231,'2005-07-30 05:21:27',2,'2006-02-15 21:30:53'),(8557,'2005-07-29 11:19:59',1481,459,'2005-08-07 12:50:59',1,'2006-02-15 21:30:53'),(8558,'2005-07-29 11:24:49',1160,169,'2005-07-31 15:03:49',1,'2006-02-15 21:30:53'),(8559,'2005-07-29 11:25:54',2078,279,'2005-08-04 10:16:54',2,'2006-02-15 21:30:53'),(8560,'2005-07-29 11:27:27',3499,430,'2005-08-01 12:05:27',2,'2006-02-15 21:30:53'),(8561,'2005-07-29 11:29:12',2207,344,'2005-08-05 09:17:12',1,'2006-02-15 21:30:53'),(8562,'2005-07-29 11:32:13',3595,255,'2005-07-30 08:23:13',2,'2006-02-15 21:30:53'),(8563,'2005-07-29 11:32:58',61,67,'2005-08-05 07:21:58',2,'2006-02-15 21:30:53'),(8564,'2005-07-29 11:33:00',2830,316,'2005-08-05 15:35:00',1,'2006-02-15 21:30:53'),(8565,'2005-07-29 11:35:23',3211,280,'2005-08-06 08:28:23',1,'2006-02-15 21:30:53'),(8566,'2005-07-29 11:35:46',2011,544,'2005-07-30 13:50:46',1,'2006-02-15 21:30:53'),(8567,'2005-07-29 11:37:30',1612,594,'2005-08-03 05:58:30',2,'2006-02-15 21:30:53'),(8568,'2005-07-29 11:38:22',1599,583,'2005-08-04 13:22:22',2,'2006-02-15 21:30:53'),(8569,'2005-07-29 11:39:17',276,348,'2005-07-31 07:50:17',2,'2006-02-15 21:30:53'),(8570,'2005-07-29 11:40:08',3094,131,'2005-08-06 10:23:08',1,'2006-02-15 21:30:53'),(8571,'2005-07-29 11:48:39',1778,407,'2005-08-03 06:35:39',2,'2006-02-15 21:30:53'),(8572,'2005-07-29 11:51:24',2815,267,'2005-08-02 11:44:24',1,'2006-02-15 21:30:53'),(8573,'2005-07-29 11:51:25',1637,179,'2005-08-07 08:53:25',1,'2006-02-15 21:30:53'),(8574,'2005-07-29 11:51:53',2949,71,'2005-08-03 05:59:53',2,'2006-02-15 21:30:53'),(8575,'2005-07-29 11:52:47',1668,441,'2005-08-03 08:14:47',2,'2006-02-15 21:30:53'),(8576,'2005-07-29 11:55:01',3552,157,'2005-08-03 08:41:01',2,'2006-02-15 21:30:53'),(8577,'2005-07-29 11:56:30',520,328,'2005-08-07 15:41:30',1,'2006-02-15 21:30:53'),(8578,'2005-07-29 11:58:14',3737,148,'2005-08-03 06:25:14',1,'2006-02-15 21:30:53'),(8579,'2005-07-29 11:59:22',4045,250,'2005-07-30 11:41:22',2,'2006-02-15 21:30:53'),(8580,'2005-07-29 12:00:27',4040,543,'2005-08-04 16:39:27',1,'2006-02-15 21:30:53'),(8581,'2005-07-29 12:02:06',2102,254,'2005-08-02 10:32:06',2,'2006-02-15 21:30:53'),(8582,'2005-07-29 12:03:27',841,162,'2005-08-03 07:02:27',1,'2006-02-15 21:30:53'),(8583,'2005-07-29 12:04:50',3130,191,'2005-08-04 17:21:50',1,'2006-02-15 21:30:53'),(8584,'2005-07-29 12:07:53',1656,482,'2005-07-31 09:27:53',1,'2006-02-15 21:30:53'),(8585,'2005-07-29 12:14:18',512,516,'2005-08-03 08:31:18',2,'2006-02-15 21:30:53'),(8586,'2005-07-29 12:16:34',2752,374,'2005-08-07 06:48:34',1,'2006-02-15 21:30:53'),(8587,'2005-07-29 12:18:40',1941,108,'2005-08-03 14:01:40',1,'2006-02-15 21:30:53'),(8588,'2005-07-29 12:22:20',2858,416,'2005-07-31 10:49:20',1,'2006-02-15 21:30:53'),(8589,'2005-07-29 12:28:17',1628,293,'2005-08-05 11:40:17',1,'2006-02-15 21:30:53'),(8590,'2005-07-29 12:32:20',2505,114,'2005-08-07 08:00:20',1,'2006-02-15 21:30:53'),(8591,'2005-07-29 12:32:33',2568,418,'2005-08-01 16:19:33',2,'2006-02-15 21:30:53'),(8592,'2005-07-29 12:33:58',1952,271,'2005-08-04 07:14:58',2,'2006-02-15 21:30:53'),(8593,'2005-07-29 12:38:14',2601,181,'2005-08-07 07:04:14',1,'2006-02-15 21:30:53'),(8594,'2005-07-29 12:42:13',4155,115,'2005-08-02 07:38:13',1,'2006-02-15 21:30:53'),(8595,'2005-07-29 12:47:43',3225,423,'2005-08-07 13:51:43',2,'2006-02-15 21:30:53'),(8596,'2005-07-29 12:48:54',59,233,'2005-08-04 07:19:54',2,'2006-02-15 21:30:53'),(8597,'2005-07-29 12:55:55',4218,222,'2005-08-05 18:54:55',1,'2006-02-15 21:30:53'),(8598,'2005-07-29 12:56:59',626,2,'2005-08-01 08:39:59',2,'2006-02-15 21:30:53'),(8599,'2005-07-29 12:58:52',1169,545,'2005-08-03 08:19:52',1,'2006-02-15 21:30:53'),(8600,'2005-07-29 13:01:19',1488,226,'2005-07-31 15:40:19',2,'2006-02-15 21:30:53'),(8601,'2005-07-29 13:03:31',3247,181,'2005-08-06 16:32:31',1,'2006-02-15 21:30:53'),(8602,'2005-07-29 13:04:27',4002,64,'2005-08-03 12:21:27',2,'2006-02-15 21:30:53'),(8603,'2005-07-29 13:07:07',3007,594,'2005-08-04 18:32:07',2,'2006-02-15 21:30:53'),(8604,'2005-07-29 13:07:13',3909,326,'2005-07-31 18:00:13',2,'2006-02-15 21:30:53'),(8605,'2005-07-29 13:13:34',3805,224,'2005-08-07 08:29:34',1,'2006-02-15 21:30:53'),(8606,'2005-07-29 13:14:24',4051,340,'2005-07-30 14:52:24',1,'2006-02-15 21:30:53'),(8607,'2005-07-29 13:18:00',4290,336,'2005-07-30 18:51:00',2,'2006-02-15 21:30:53'),(8608,'2005-07-29 13:18:52',2976,165,'2005-07-30 19:01:52',2,'2006-02-15 21:30:53'),(8609,'2005-07-29 13:19:25',3997,354,'2005-08-06 08:33:25',2,'2006-02-15 21:30:53'),(8610,'2005-07-29 13:25:02',4222,563,'2005-08-03 08:10:02',2,'2006-02-15 21:30:53'),(8611,'2005-07-29 13:26:21',610,373,'2005-08-07 18:20:21',2,'2006-02-15 21:30:53'),(8612,'2005-07-29 13:28:20',3518,392,'2005-08-06 14:39:20',2,'2006-02-15 21:30:53'),(8613,'2005-07-29 13:30:58',394,411,'2005-08-05 16:21:58',2,'2006-02-15 21:30:53'),(8614,'2005-07-29 13:32:05',604,552,'2005-08-04 15:26:05',1,'2006-02-15 21:30:53'),(8615,'2005-07-29 13:36:01',4453,15,'2005-08-03 13:15:01',1,'2006-02-15 21:30:53'),(8616,'2005-07-29 13:39:09',2583,493,'2005-08-01 16:49:09',1,'2006-02-15 21:30:53'),(8617,'2005-07-29 13:46:14',385,441,'2005-08-06 13:26:14',2,'2006-02-15 21:30:53'),(8618,'2005-07-29 13:48:20',985,270,'2005-08-06 14:12:20',2,'2006-02-15 21:30:53'),(8619,'2005-07-29 13:50:08',2169,50,'2005-08-06 13:15:08',1,'2006-02-15 21:30:53'),(8620,'2005-07-29 13:51:20',3718,306,'2005-08-02 13:05:20',1,'2006-02-15 21:30:53'),(8621,'2005-07-29 13:52:42',2473,358,'2005-07-30 11:42:42',2,'2006-02-15 21:30:53'),(8622,'2005-07-29 13:53:28',4076,98,'2005-07-31 16:12:28',2,'2006-02-15 21:30:53'),(8623,'2005-07-29 13:55:11',458,142,'2005-08-05 11:16:11',1,'2006-02-15 21:30:53'),(8624,'2005-07-29 13:55:36',4402,439,'2005-08-02 12:23:36',2,'2006-02-15 21:30:53'),(8625,'2005-07-29 13:59:13',884,410,'2005-08-07 17:56:13',2,'2006-02-15 21:30:53'),(8626,'2005-07-29 14:03:20',3092,148,'2005-08-02 09:05:20',1,'2006-02-15 21:30:53'),(8627,'2005-07-29 14:05:12',4235,226,'2005-08-05 16:53:12',2,'2006-02-15 21:30:53'),(8628,'2005-07-29 14:06:24',4484,550,'2005-08-06 10:42:24',2,'2006-02-15 21:30:53'),(8629,'2005-07-29 14:06:35',853,567,'2005-08-03 16:59:35',2,'2006-02-15 21:30:53'),(8630,'2005-07-29 14:07:59',1378,406,'2005-08-03 13:18:59',2,'2006-02-15 21:30:53'),(8631,'2005-07-29 14:08:06',98,559,'2005-08-05 14:57:06',1,'2006-02-15 21:30:53'),(8632,'2005-07-29 14:11:25',1666,563,'2005-08-07 15:32:25',1,'2006-02-15 21:30:53'),(8633,'2005-07-29 14:19:53',3436,534,'2005-08-01 11:31:53',2,'2006-02-15 21:30:53'),(8634,'2005-07-29 14:19:57',2023,335,'2005-08-07 13:44:57',1,'2006-02-15 21:30:53'),(8635,'2005-07-29 14:22:48',2894,383,'2005-08-01 11:59:48',2,'2006-02-15 21:30:53'),(8636,'2005-07-29 14:24:13',4308,252,'2005-08-02 14:39:13',1,'2006-02-15 21:30:53'),(8637,'2005-07-29 14:30:11',1069,310,'2005-08-04 14:00:11',1,'2006-02-15 21:30:53'),(8638,'2005-07-29 14:30:23',4060,571,'2005-08-01 10:32:23',1,'2006-02-15 21:30:53'),(8639,'2005-07-29 14:30:31',3504,290,'2005-08-02 16:04:31',1,'2006-02-15 21:30:53'),(8640,'2005-07-29 14:34:17',1874,257,'2005-08-01 13:09:17',2,'2006-02-15 21:30:53'),(8641,'2005-07-29 14:37:30',3199,30,'2005-08-02 19:32:30',2,'2006-02-15 21:30:53'),(8642,'2005-07-29 14:38:17',3947,522,'2005-08-03 14:41:17',1,'2006-02-15 21:30:53'),(8643,'2005-07-29 14:45:23',381,59,'2005-08-04 18:42:23',1,'2006-02-15 21:30:53'),(8644,'2005-07-29 14:45:45',4507,314,'2005-08-03 20:10:45',2,'2006-02-15 21:30:53'),(8645,'2005-07-29 14:47:45',2532,535,'2005-07-30 14:56:45',2,'2006-02-15 21:30:53'),(8646,'2005-07-29 14:48:48',89,302,'2005-08-03 18:11:48',2,'2006-02-15 21:30:53'),(8647,'2005-07-29 14:52:59',556,307,'2005-08-06 11:09:59',2,'2006-02-15 21:30:53'),(8648,'2005-07-29 14:56:21',160,416,'2005-07-31 16:56:21',2,'2006-02-15 21:30:53'),(8649,'2005-07-29 14:57:33',789,69,'2005-08-07 09:43:33',2,'2006-02-15 21:30:53'),(8650,'2005-07-29 14:59:04',1272,134,'2005-08-04 13:13:04',2,'2006-02-15 21:30:53'),(8651,'2005-07-29 15:02:18',2095,61,'2005-08-07 09:34:18',2,'2006-02-15 21:30:53'),(8652,'2005-07-29 15:02:54',2729,219,'2005-08-07 17:21:54',2,'2006-02-15 21:30:53'),(8653,'2005-07-29 15:04:23',4440,230,'2005-08-02 09:39:23',2,'2006-02-15 21:30:53'),(8654,'2005-07-29 15:04:27',3925,84,'2005-08-07 18:37:27',1,'2006-02-15 21:30:53'),(8655,'2005-07-29 15:04:42',3986,232,'2005-08-04 11:26:42',1,'2006-02-15 21:30:53'),(8656,'2005-07-29 15:05:52',1385,460,'2005-07-31 20:57:52',2,'2006-02-15 21:30:53'),(8657,'2005-07-29 15:09:25',3194,236,'2005-07-31 19:10:25',1,'2006-02-15 21:30:53'),(8658,'2005-07-29 15:16:37',2033,427,'2005-08-07 20:45:37',2,'2006-02-15 21:30:53'),(8659,'2005-07-29 15:26:31',558,168,'2005-08-06 19:05:31',2,'2006-02-15 21:30:53'),(8660,'2005-07-29 15:26:59',3122,566,'2005-08-05 21:04:59',2,'2006-02-15 21:30:53'),(8661,'2005-07-29 15:28:24',3409,341,'2005-08-05 20:04:24',2,'2006-02-15 21:30:53'),(8662,'2005-07-29 15:31:33',3758,362,'2005-07-30 09:39:33',2,'2006-02-15 21:30:53'),(8663,'2005-07-29 15:33:18',1281,214,'2005-07-30 18:03:18',1,'2006-02-15 21:30:53'),(8664,'2005-07-29 15:36:27',198,102,'2005-08-04 20:11:27',1,'2006-02-15 21:30:53'),(8665,'2005-07-29 15:39:29',1113,265,'2005-08-01 10:33:29',2,'2006-02-15 21:30:53'),(8666,'2005-07-29 15:39:38',3669,591,'2005-08-06 17:12:38',1,'2006-02-15 21:30:53'),(8667,'2005-07-29 15:40:57',3439,25,'2005-07-31 20:59:57',1,'2006-02-15 21:30:53'),(8668,'2005-07-29 15:41:31',4531,71,'2005-08-01 16:20:31',2,'2006-02-15 21:30:53'),(8669,'2005-07-29 15:44:55',1667,401,'2005-08-01 14:09:55',2,'2006-02-15 21:30:53'),(8670,'2005-07-29 15:49:03',2354,446,'2005-08-01 20:19:03',2,'2006-02-15 21:30:53'),(8671,'2005-07-29 15:49:37',1431,577,'2005-08-05 18:20:37',1,'2006-02-15 21:30:53'),(8672,'2005-07-29 15:49:48',405,495,'2005-08-06 17:59:48',2,'2006-02-15 21:30:53'),(8673,'2005-07-29 15:50:14',2167,29,'2005-08-03 18:30:14',1,'2006-02-15 21:30:53'),(8674,'2005-07-29 15:54:22',1744,412,'2005-07-31 12:15:22',1,'2006-02-15 21:30:53'),(8675,'2005-07-29 15:56:18',1026,258,'2005-07-30 18:50:18',1,'2006-02-15 21:30:53'),(8676,'2005-07-29 15:59:06',283,533,'2005-08-05 19:12:06',2,'2006-02-15 21:30:53'),(8677,'2005-07-29 16:01:13',513,315,'2005-08-07 19:21:13',2,'2006-02-15 21:30:53'),(8678,'2005-07-29 16:04:00',3991,210,'2005-08-05 12:37:00',1,'2006-02-15 21:30:53'),(8679,'2005-07-29 16:07:47',3549,536,'2005-08-02 18:37:47',1,'2006-02-15 21:30:53'),(8680,'2005-07-29 16:08:03',1227,330,'2005-07-31 17:26:03',1,'2006-02-15 21:30:53'),(8681,'2005-07-29 16:12:01',4004,309,'2005-08-01 18:14:01',2,'2006-02-15 21:30:53'),(8682,'2005-07-29 16:15:26',4328,348,'2005-08-03 20:15:26',2,'2006-02-15 21:30:53'),(8683,'2005-07-29 16:15:43',3915,513,'2005-08-07 19:19:43',1,'2006-02-15 21:30:53'),(8684,'2005-07-29 16:16:33',2457,185,'2005-08-07 12:27:33',2,'2006-02-15 21:30:53'),(8685,'2005-07-29 16:17:05',1827,321,'2005-08-07 17:44:05',1,'2006-02-15 21:30:53'),(8686,'2005-07-29 16:17:49',4160,52,'2005-08-01 12:50:49',2,'2006-02-15 21:30:53'),(8687,'2005-07-29 16:19:17',222,117,'2005-08-01 15:28:17',1,'2006-02-15 21:30:53'),(8688,'2005-07-29 16:31:32',2263,381,'2005-07-30 12:39:32',1,'2006-02-15 21:30:53'),(8689,'2005-07-29 16:38:58',824,487,'2005-08-01 17:09:58',2,'2006-02-15 21:30:53'),(8690,'2005-07-29 16:39:28',1292,291,'2005-08-01 14:03:28',2,'2006-02-15 21:30:53'),(8691,'2005-07-29 16:41:23',672,446,'2005-08-02 12:32:23',2,'2006-02-15 21:30:53'),(8692,'2005-07-29 16:43:39',3192,88,'2005-08-01 15:54:39',2,'2006-02-15 21:30:53'),(8693,'2005-07-29 16:44:13',917,51,'2005-08-01 15:56:13',1,'2006-02-15 21:30:53'),(8694,'2005-07-29 16:44:48',503,345,'2005-08-06 16:28:48',1,'2006-02-15 21:30:53'),(8695,'2005-07-29 16:44:55',694,280,'2005-08-07 12:47:55',1,'2006-02-15 21:30:53'),(8696,'2005-07-29 16:45:18',2553,178,'2005-08-07 18:51:18',1,'2006-02-15 21:30:53'),(8697,'2005-07-29 16:46:07',443,291,'2005-08-02 19:27:07',2,'2006-02-15 21:30:53'),(8698,'2005-07-29 16:52:17',2973,324,'2005-08-04 13:20:17',2,'2006-02-15 21:30:53'),(8699,'2005-07-29 16:53:00',4080,123,'2005-08-07 20:31:00',1,'2006-02-15 21:30:53'),(8700,'2005-07-29 16:56:01',3710,196,'2005-07-31 16:19:01',2,'2006-02-15 21:30:53'),(8701,'2005-07-29 17:02:35',3158,245,'2005-08-07 19:55:35',2,'2006-02-15 21:30:53'),(8702,'2005-07-29 17:04:37',2215,306,'2005-08-05 15:30:37',2,'2006-02-15 21:30:53'),(8703,'2005-07-29 17:12:44',1065,439,'2005-07-30 19:38:44',1,'2006-02-15 21:30:53'),(8704,'2005-07-29 17:13:45',2117,107,'2005-08-03 20:03:45',2,'2006-02-15 21:30:53'),(8705,'2005-07-29 17:14:29',4038,2,'2005-08-02 16:01:29',1,'2006-02-15 21:30:53'),(8706,'2005-07-29 17:19:15',2886,515,'2005-08-03 22:52:15',1,'2006-02-15 21:30:53'),(8707,'2005-07-29 17:21:58',2525,157,'2005-08-02 14:47:58',2,'2006-02-15 21:30:53'),(8708,'2005-07-29 17:24:13',4054,529,'2005-08-04 13:57:13',1,'2006-02-15 21:30:53'),(8709,'2005-07-29 17:25:54',902,199,'2005-08-02 22:35:54',1,'2006-02-15 21:30:53'),(8710,'2005-07-29 17:26:03',3391,566,'2005-07-30 19:51:03',1,'2006-02-15 21:30:53'),(8711,'2005-07-29 17:27:15',3471,575,'2005-07-31 12:57:15',1,'2006-02-15 21:30:53'),(8712,'2005-07-29 17:30:06',2800,41,'2005-08-03 22:55:06',2,'2006-02-15 21:30:53'),(8713,'2005-07-29 17:31:19',473,433,'2005-08-02 16:37:19',2,'2006-02-15 21:30:53'),(8714,'2005-07-29 17:31:40',4547,362,'2005-08-04 16:12:40',2,'2006-02-15 21:30:53'),(8715,'2005-07-29 17:33:45',860,11,'2005-08-01 17:30:45',1,'2006-02-15 21:30:53'),(8716,'2005-07-29 17:39:09',2123,48,'2005-08-03 20:26:09',2,'2006-02-15 21:30:53'),(8717,'2005-07-29 17:40:45',1821,260,'2005-08-01 22:38:45',2,'2006-02-15 21:30:53'),(8718,'2005-07-29 17:41:14',137,23,'2005-08-01 18:22:14',2,'2006-02-15 21:30:53'),(8719,'2005-07-29 17:45:45',995,333,'2005-08-01 13:53:45',1,'2006-02-15 21:30:53'),(8720,'2005-07-29 17:48:32',152,180,'2005-08-04 14:30:32',2,'2006-02-15 21:30:53'),(8721,'2005-07-29 17:56:21',2416,312,'2005-08-02 21:30:21',2,'2006-02-15 21:30:53'),(8722,'2005-07-29 17:58:58',1389,401,'2005-08-07 23:40:58',1,'2006-02-15 21:30:53'),(8723,'2005-07-29 18:03:47',224,39,'2005-08-06 18:53:47',1,'2006-02-15 21:30:53'),(8724,'2005-07-29 18:05:21',898,372,'2005-08-01 15:41:21',1,'2006-02-15 21:30:53'),(8725,'2005-07-29 18:08:42',2385,421,'2005-08-04 16:01:42',2,'2006-02-15 21:30:53'),(8726,'2005-07-29 18:09:22',897,409,'2005-08-06 16:24:22',1,'2006-02-15 21:30:53'),(8727,'2005-07-29 18:09:57',3031,528,'2005-08-03 13:41:57',2,'2006-02-15 21:30:53'),(8728,'2005-07-29 18:12:49',973,341,'2005-08-06 22:45:49',1,'2006-02-15 21:30:53'),(8729,'2005-07-29 18:23:02',3342,83,'2005-07-31 16:09:02',2,'2006-02-15 21:30:53'),(8730,'2005-07-29 18:23:34',4191,592,'2005-08-01 19:56:34',1,'2006-02-15 21:30:53'),(8731,'2005-07-29 18:23:57',2638,179,'2005-08-05 19:38:57',1,'2006-02-15 21:30:53'),(8732,'2005-07-29 18:25:03',1143,346,'2005-08-07 18:56:03',2,'2006-02-15 21:30:53'),(8733,'2005-07-29 18:26:34',3187,450,'2005-08-03 15:06:34',1,'2006-02-15 21:30:53'),(8734,'2005-07-29 18:28:15',2374,303,'2005-08-05 23:38:15',1,'2006-02-15 21:30:53'),(8735,'2005-07-29 18:28:54',2881,570,'2005-08-03 12:43:54',2,'2006-02-15 21:30:53'),(8736,'2005-07-29 18:31:15',1726,530,'2005-07-30 16:24:15',2,'2006-02-15 21:30:53'),(8737,'2005-07-29 18:32:13',4154,298,'2005-08-05 21:07:13',2,'2006-02-15 21:30:53'),(8738,'2005-07-29 18:32:47',3893,210,'2005-08-02 13:05:47',2,'2006-02-15 21:30:53'),(8739,'2005-07-29 18:34:33',4310,326,'2005-08-02 16:05:33',1,'2006-02-15 21:30:53'),(8740,'2005-07-29 18:41:31',3781,378,'2005-08-01 18:38:31',1,'2006-02-15 21:30:53'),(8741,'2005-07-29 18:44:57',165,4,'2005-08-03 18:25:57',2,'2006-02-15 21:30:53'),(8742,'2005-07-29 18:56:12',918,208,'2005-08-03 16:42:12',1,'2006-02-15 21:30:53'),(8743,'2005-07-29 18:57:01',2664,282,'2005-07-31 22:09:01',2,'2006-02-15 21:30:53'),(8744,'2005-07-29 18:58:24',1086,280,'2005-08-05 17:56:24',1,'2006-02-15 21:30:53'),(8745,'2005-07-29 19:03:05',1766,293,'2005-08-06 14:06:05',2,'2006-02-15 21:30:53'),(8746,'2005-07-29 19:03:15',2179,275,'2005-07-30 17:06:15',1,'2006-02-15 21:30:53'),(8747,'2005-07-29 19:07:57',2584,70,'2005-07-30 16:01:57',1,'2006-02-15 21:30:53'),(8748,'2005-07-29 19:08:37',2184,237,'2005-08-01 16:24:37',1,'2006-02-15 21:30:53'),(8749,'2005-07-29 19:13:15',2252,456,'2005-08-01 15:02:15',1,'2006-02-15 21:30:53'),(8750,'2005-07-29 19:14:21',3157,158,'2005-07-31 17:22:21',2,'2006-02-15 21:30:53'),(8751,'2005-07-29 19:14:39',3467,386,'2005-07-31 23:11:39',1,'2006-02-15 21:30:53'),(8752,'2005-07-29 19:15:07',4202,253,'2005-07-31 13:27:07',1,'2006-02-15 21:30:53'),(8753,'2005-07-29 19:15:50',1345,560,'2005-07-31 19:13:50',2,'2006-02-15 21:30:53'),(8754,'2005-07-29 19:18:30',1678,174,'2005-08-05 18:39:30',2,'2006-02-15 21:30:53'),(8755,'2005-07-29 19:18:31',1498,372,'2005-07-31 19:20:31',2,'2006-02-15 21:30:53'),(8756,'2005-07-29 19:18:57',4146,120,'2005-08-02 20:07:57',2,'2006-02-15 21:30:53'),(8757,'2005-07-29 19:19:10',3473,462,'2005-08-02 13:47:10',2,'2006-02-15 21:30:53'),(8758,'2005-07-29 19:20:49',2816,442,'2005-08-05 21:57:49',2,'2006-02-15 21:30:53'),(8759,'2005-07-29 19:22:37',844,209,'2005-08-07 15:36:37',2,'2006-02-15 21:30:53'),(8760,'2005-07-29 19:22:40',3566,118,'2005-08-05 01:09:40',2,'2006-02-15 21:30:53'),(8761,'2005-07-29 19:26:47',1317,539,'2005-08-08 00:09:47',1,'2006-02-15 21:30:53'),(8762,'2005-07-29 19:30:02',2765,463,'2005-08-04 18:38:02',1,'2006-02-15 21:30:53'),(8763,'2005-07-29 19:38:24',374,510,'2005-08-04 16:51:24',1,'2006-02-15 21:30:53'),(8764,'2005-07-29 19:39:04',2348,303,'2005-08-01 13:52:04',1,'2006-02-15 21:30:53'),(8765,'2005-07-29 19:40:08',2631,538,'2005-07-31 14:24:08',2,'2006-02-15 21:30:53'),(8766,'2005-07-29 19:41:04',3888,338,'2005-08-02 00:41:04',2,'2006-02-15 21:30:53'),(8767,'2005-07-29 19:42:33',962,467,'2005-08-01 20:52:33',2,'2006-02-15 21:30:53'),(8768,'2005-07-29 19:43:02',1601,468,'2005-08-03 23:36:02',1,'2006-02-15 21:30:53'),(8769,'2005-07-29 19:45:33',2180,588,'2005-08-05 22:09:33',2,'2006-02-15 21:30:53'),(8770,'2005-07-29 19:53:50',4025,499,'2005-08-05 14:22:50',1,'2006-02-15 21:30:53'),(8771,'2005-07-29 19:54:41',3533,347,'2005-08-03 20:38:41',1,'2006-02-15 21:30:53'),(8772,'2005-07-29 19:55:25',3526,122,'2005-08-05 18:48:25',1,'2006-02-15 21:30:53'),(8773,'2005-07-29 19:55:34',131,592,'2005-07-30 14:11:34',1,'2006-02-15 21:30:53'),(8774,'2005-07-29 20:05:04',315,161,'2005-07-31 14:32:04',1,'2006-02-15 21:30:53'),(8775,'2005-07-29 20:05:38',1358,44,'2005-07-30 21:13:38',1,'2006-02-15 21:30:53'),(8776,'2005-07-29 20:07:06',1565,587,'2005-08-06 20:42:06',2,'2006-02-15 21:30:53'),(8777,'2005-07-29 20:10:21',2462,382,'2005-07-30 20:32:21',2,'2006-02-15 21:30:53'),(8778,'2005-07-29 20:14:25',3654,582,'2005-08-04 00:50:25',1,'2006-02-15 21:30:53'),(8779,'2005-07-29 20:15:00',3245,202,'2005-08-03 21:17:00',1,'2006-02-15 21:30:53'),(8780,'2005-07-29 20:19:45',1095,328,'2005-08-03 22:22:45',2,'2006-02-15 21:30:53'),(8781,'2005-07-29 20:20:16',3746,235,'2005-07-30 16:19:16',2,'2006-02-15 21:30:53'),(8782,'2005-07-29 20:29:34',4379,365,'2005-08-04 02:19:34',1,'2006-02-15 21:30:53'),(8783,'2005-07-29 20:31:28',2316,71,'2005-08-02 19:33:28',2,'2006-02-15 21:30:53'),(8784,'2005-07-29 20:35:37',2308,580,'2005-07-30 17:22:37',1,'2006-02-15 21:30:53'),(8785,'2005-07-29 20:36:26',216,42,'2005-07-30 15:06:26',1,'2006-02-15 21:30:53'),(8786,'2005-07-29 20:39:49',2404,533,'2005-08-03 18:08:49',1,'2006-02-15 21:30:53'),(8787,'2005-07-29 20:43:49',2366,222,'2005-07-31 15:15:49',1,'2006-02-15 21:30:53'),(8788,'2005-07-29 20:46:44',3412,121,'2005-08-03 02:25:44',2,'2006-02-15 21:30:53'),(8789,'2005-07-29 20:47:27',3062,71,'2005-08-05 18:36:27',1,'2006-02-15 21:30:53'),(8790,'2005-07-29 20:51:41',751,323,'2005-07-30 17:30:41',2,'2006-02-15 21:30:53'),(8791,'2005-07-29 20:53:23',1677,469,'2005-07-31 18:14:23',1,'2006-02-15 21:30:53'),(8792,'2005-07-29 20:56:14',3764,203,'2005-08-07 16:44:14',2,'2006-02-15 21:30:53'),(8793,'2005-07-29 20:57:22',1819,167,'2005-08-02 01:40:22',2,'2006-02-15 21:30:53'),(8794,'2005-07-29 20:59:38',3509,320,'2005-07-31 00:15:38',2,'2006-02-15 21:30:53'),(8795,'2005-07-29 21:04:14',1896,302,'2005-07-31 02:58:14',2,'2006-02-15 21:30:53'),(8796,'2005-07-29 21:09:11',2234,74,'2005-08-04 22:55:11',1,'2006-02-15 21:30:53'),(8797,'2005-07-29 21:10:37',2929,566,'2005-08-07 21:43:37',1,'2006-02-15 21:30:53'),(8798,'2005-07-29 21:15:38',800,513,'2005-08-05 02:46:38',2,'2006-02-15 21:30:53'),(8799,'2005-07-29 21:16:47',326,237,'2005-08-07 22:09:47',2,'2006-02-15 21:30:53'),(8800,'2005-07-29 21:18:59',2082,207,'2005-08-06 19:59:59',2,'2006-02-15 21:30:53'),(8801,'2005-07-29 21:25:22',1111,590,'2005-08-01 00:02:22',1,'2006-02-15 21:30:53'),(8802,'2005-07-29 21:25:51',296,407,'2005-07-30 18:15:51',2,'2006-02-15 21:30:53'),(8803,'2005-07-29 21:26:24',2814,86,'2005-08-06 18:05:24',2,'2006-02-15 21:30:53'),(8804,'2005-07-29 21:28:19',4461,363,'2005-08-01 20:15:19',2,'2006-02-15 21:30:53'),(8805,'2005-07-29 21:29:58',4041,39,'2005-08-04 23:12:58',1,'2006-02-15 21:30:53'),(8806,'2005-07-29 21:36:34',4085,454,'2005-08-02 00:58:34',1,'2006-02-15 21:30:53'),(8807,'2005-07-29 21:36:59',2612,396,'2005-08-01 17:40:59',1,'2006-02-15 21:30:53'),(8808,'2005-07-29 21:39:07',593,173,'2005-08-03 02:09:07',2,'2006-02-15 21:30:53'),(8809,'2005-07-29 21:42:49',3278,8,'2005-08-04 01:13:49',1,'2006-02-15 21:30:53'),(8810,'2005-07-29 21:45:19',1233,431,'2005-08-08 01:45:19',2,'2006-02-15 21:30:53'),(8811,'2005-07-29 21:46:21',2041,245,'2005-08-07 16:51:21',2,'2006-02-15 21:30:53'),(8812,'2005-07-29 21:47:40',1172,563,'2005-08-04 01:18:40',2,'2006-02-15 21:30:53'),(8813,'2005-07-29 21:47:55',3442,497,'2005-08-05 01:16:55',1,'2006-02-15 21:30:53'),(8814,'2005-07-29 21:49:43',1492,487,'2005-08-01 19:56:43',1,'2006-02-15 21:30:53'),(8815,'2005-07-29 21:51:26',3469,230,'2005-08-03 22:37:26',1,'2006-02-15 21:30:53'),(8816,'2005-07-29 21:53:00',3984,209,'2005-08-01 21:20:00',1,'2006-02-15 21:30:53'),(8817,'2005-07-29 22:09:08',2716,175,'2005-08-01 19:07:08',1,'2006-02-15 21:30:53'),(8818,'2005-07-29 22:14:04',3090,98,'2005-08-07 17:26:04',1,'2006-02-15 21:30:53'),(8819,'2005-07-29 22:14:26',3100,591,'2005-08-06 23:02:26',2,'2006-02-15 21:30:53'),(8820,'2005-07-29 22:14:56',481,594,'2005-08-05 23:36:56',2,'2006-02-15 21:30:53'),(8821,'2005-07-29 22:18:12',52,477,'2005-08-05 22:00:12',1,'2006-02-15 21:30:53'),(8822,'2005-07-29 22:20:21',744,35,'2005-08-06 03:00:21',2,'2006-02-15 21:30:53'),(8823,'2005-07-29 22:22:12',951,75,'2005-08-07 21:03:12',1,'2006-02-15 21:30:53'),(8824,'2005-07-29 22:22:58',3506,164,'2005-07-31 21:02:58',2,'2006-02-15 21:30:53'),(8825,'2005-07-29 22:24:16',881,101,'2005-08-05 00:27:16',2,'2006-02-15 21:30:53'),(8826,'2005-07-29 22:30:16',1800,369,'2005-07-30 19:43:16',1,'2006-02-15 21:30:53'),(8827,'2005-07-29 22:31:24',1517,157,'2005-08-06 21:05:24',2,'2006-02-15 21:30:53'),(8828,'2005-07-29 22:32:54',1608,547,'2005-07-30 20:41:54',1,'2006-02-15 21:30:53'),(8829,'2005-07-29 22:33:34',1466,173,'2005-08-05 20:23:34',2,'2006-02-15 21:30:53'),(8830,'2005-07-29 22:34:35',1751,202,'2005-08-05 20:12:35',2,'2006-02-15 21:30:53'),(8831,'2005-07-29 22:37:41',3520,13,'2005-08-08 04:28:41',1,'2006-02-15 21:30:53'),(8832,'2005-07-29 22:37:49',380,125,'2005-08-04 23:32:49',1,'2006-02-15 21:30:53'),(8833,'2005-07-29 22:39:36',1741,101,'2005-08-05 21:19:36',1,'2006-02-15 21:30:53'),(8834,'2005-07-29 22:41:48',4477,243,'2005-08-05 03:21:48',2,'2006-02-15 21:30:53'),(8835,'2005-07-29 22:44:35',2653,237,'2005-08-05 23:28:35',1,'2006-02-15 21:30:53'),(8836,'2005-07-29 22:46:08',3265,14,'2005-08-02 19:53:08',2,'2006-02-15 21:30:53'),(8837,'2005-07-29 22:49:00',42,372,'2005-08-07 21:56:00',2,'2006-02-15 21:30:53'),(8838,'2005-07-29 22:52:23',133,550,'2005-08-03 22:49:23',1,'2006-02-15 21:30:53'),(8839,'2005-07-29 22:52:34',3440,580,'2005-08-05 03:24:34',2,'2006-02-15 21:30:53'),(8840,'2005-07-29 22:55:38',1484,295,'2005-08-06 02:11:38',1,'2006-02-15 21:30:53'),(8841,'2005-07-29 22:56:07',3935,363,'2005-08-01 21:21:07',2,'2006-02-15 21:30:53'),(8842,'2005-07-29 23:03:40',4203,292,'2005-08-06 23:23:40',2,'2006-02-15 21:30:53'),(8843,'2005-07-29 23:04:25',406,294,'2005-08-05 22:12:25',1,'2006-02-15 21:30:53'),(8844,'2005-07-29 23:05:08',327,244,'2005-08-06 00:24:08',2,'2006-02-15 21:30:53'),(8845,'2005-07-29 23:06:13',3036,543,'2005-08-02 20:16:13',1,'2006-02-15 21:30:53'),(8846,'2005-07-29 23:10:28',2912,108,'2005-08-03 22:07:28',2,'2006-02-15 21:30:53'),(8847,'2005-07-29 23:13:41',4133,480,'2005-07-31 23:55:41',1,'2006-02-15 21:30:53'),(8848,'2005-07-29 23:20:58',2972,545,'2005-08-03 17:28:58',2,'2006-02-15 21:30:53'),(8849,'2005-07-29 23:21:01',4300,79,'2005-08-03 20:01:01',1,'2006-02-15 21:30:53'),(8850,'2005-07-29 23:24:20',355,86,'2005-07-31 00:43:20',2,'2006-02-15 21:30:53'),(8851,'2005-07-29 23:26:19',212,445,'2005-08-05 03:59:19',2,'2006-02-15 21:30:53'),(8852,'2005-07-29 23:30:03',1138,42,'2005-08-05 05:22:03',2,'2006-02-15 21:30:53'),(8853,'2005-07-29 23:34:21',2323,58,'2005-07-31 21:20:21',2,'2006-02-15 21:30:53'),(8854,'2005-07-29 23:40:07',1365,527,'2005-08-01 00:35:07',2,'2006-02-15 21:30:53'),(8855,'2005-07-29 23:40:10',4388,335,'2005-08-02 18:07:10',2,'2006-02-15 21:30:53'),(8856,'2005-07-29 23:42:00',2942,365,'2005-08-07 03:00:00',1,'2006-02-15 21:30:53'),(8857,'2005-07-29 23:44:22',1348,477,'2005-07-31 21:32:22',2,'2006-02-15 21:30:53'),(8858,'2005-07-29 23:44:35',2378,558,'2005-08-01 05:25:35',2,'2006-02-15 21:30:53'),(8859,'2005-07-29 23:44:43',603,216,'2005-08-07 18:14:43',2,'2006-02-15 21:30:53'),(8860,'2005-07-29 23:45:57',2841,531,'2005-08-06 02:14:57',2,'2006-02-15 21:30:53'),(8861,'2005-07-29 23:47:29',759,560,'2005-08-07 01:27:29',1,'2006-02-15 21:30:53'),(8862,'2005-07-29 23:49:23',916,21,'2005-08-04 20:11:23',1,'2006-02-15 21:30:53'),(8863,'2005-07-29 23:52:01',75,47,'2005-08-04 20:28:01',1,'2006-02-15 21:30:53'),(8864,'2005-07-29 23:52:12',2321,167,'2005-07-30 22:12:12',1,'2006-02-15 21:30:53'),(8865,'2005-07-29 23:54:54',1835,305,'2005-07-31 05:10:54',2,'2006-02-15 21:30:53'),(8866,'2005-07-29 23:58:19',1530,44,'2005-08-01 05:19:19',2,'2006-02-15 21:30:53'),(8867,'2005-07-30 00:02:18',1388,497,'2005-08-04 00:44:18',2,'2006-02-15 21:30:53'),(8868,'2005-07-30 00:02:26',1229,512,'2005-08-01 22:28:26',2,'2006-02-15 21:30:53'),(8869,'2005-07-30 00:06:32',4353,308,'2005-07-31 20:49:32',2,'2006-02-15 21:30:53'),(8870,'2005-07-30 00:08:08',4104,90,'2005-08-08 00:15:08',2,'2006-02-15 21:30:53'),(8871,'2005-07-30 00:12:41',4535,382,'2005-08-08 03:53:41',1,'2006-02-15 21:30:53'),(8872,'2005-07-30 00:13:54',2669,186,'2005-08-01 18:34:54',1,'2006-02-15 21:30:53'),(8873,'2005-07-30 00:14:32',3498,91,'2005-08-04 20:42:32',2,'2006-02-15 21:30:53'),(8874,'2005-07-30 00:14:45',459,564,'2005-08-02 22:34:45',2,'2006-02-15 21:30:53'),(8875,'2005-07-30 00:15:09',1294,121,'2005-08-04 02:54:09',2,'2006-02-15 21:30:53'),(8876,'2005-07-30 00:15:09',2394,579,'2005-08-02 23:56:09',1,'2006-02-15 21:30:53'),(8877,'2005-07-30 00:15:22',1140,417,'2005-07-31 00:53:22',1,'2006-02-15 21:30:53'),(8878,'2005-07-30 00:15:57',440,25,'2005-08-01 00:22:57',2,'2006-02-15 21:30:53'),(8879,'2005-07-30 00:16:02',2956,584,'2005-08-06 20:10:02',2,'2006-02-15 21:30:53'),(8880,'2005-07-30 00:16:55',2920,51,'2005-08-01 01:05:55',1,'2006-02-15 21:30:53'),(8881,'2005-07-30 00:22:31',2012,118,'2005-08-04 19:10:31',1,'2006-02-15 21:30:53'),(8882,'2005-07-30 00:24:05',441,410,'2005-08-03 19:48:05',2,'2006-02-15 21:30:53'),(8883,'2005-07-30 00:24:48',1421,168,'2005-08-04 00:24:48',2,'2006-02-15 21:30:53'),(8884,'2005-07-30 00:26:22',3050,80,'2005-08-05 03:24:22',1,'2006-02-15 21:30:53'),(8885,'2005-07-30 00:36:26',2984,135,'2005-08-06 03:05:26',1,'2006-02-15 21:30:53'),(8886,'2005-07-30 00:36:31',1469,418,'2005-08-08 06:18:31',1,'2006-02-15 21:30:53'),(8887,'2005-07-30 00:36:54',4119,389,'2005-08-04 19:07:54',1,'2006-02-15 21:30:53'),(8888,'2005-07-30 00:39:36',2824,284,'2005-08-01 02:28:36',2,'2006-02-15 21:30:53'),(8889,'2005-07-30 00:39:43',3457,558,'2005-08-02 23:22:43',1,'2006-02-15 21:30:53'),(8890,'2005-07-30 00:42:06',3656,470,'2005-08-05 21:04:06',1,'2006-02-15 21:30:53'),(8891,'2005-07-30 00:46:55',4093,435,'2005-08-06 23:32:55',2,'2006-02-15 21:30:53'),(8892,'2005-07-30 00:47:03',1584,184,'2005-08-06 03:23:03',2,'2006-02-15 21:30:53'),(8893,'2005-07-30 00:48:19',1048,147,'2005-08-01 03:25:19',1,'2006-02-15 21:30:53'),(8894,'2005-07-30 00:48:31',2055,552,'2005-07-31 05:49:31',1,'2006-02-15 21:30:53'),(8895,'2005-07-30 00:49:17',3217,494,'2005-07-31 01:56:17',1,'2006-02-15 21:30:53'),(8896,'2005-07-30 00:51:21',3560,205,'2005-07-31 22:33:21',1,'2006-02-15 21:30:53'),(8897,'2005-07-30 01:00:17',1964,459,'2005-08-01 03:41:17',1,'2006-02-15 21:30:53'),(8898,'2005-07-30 01:02:20',3961,452,'2005-08-05 22:02:20',2,'2006-02-15 21:30:53'),(8899,'2005-07-30 01:05:30',4148,252,'2005-08-01 23:32:30',1,'2006-02-15 21:30:53'),(8900,'2005-07-30 01:07:03',3057,375,'2005-08-06 04:07:03',1,'2006-02-15 21:30:53'),(8901,'2005-07-30 01:07:12',4392,28,'2005-08-02 06:34:12',1,'2006-02-15 21:30:53'),(8902,'2005-07-30 01:08:06',2983,408,'2005-08-05 00:00:06',2,'2006-02-15 21:30:53'),(8903,'2005-07-30 01:08:06',4546,406,'2005-07-30 21:47:06',2,'2006-02-15 21:30:53'),(8904,'2005-07-30 01:08:33',3622,575,'2005-08-04 02:33:33',1,'2006-02-15 21:30:53'),(8905,'2005-07-30 01:11:11',2154,240,'2005-08-04 22:39:11',1,'2006-02-15 21:30:53'),(8906,'2005-07-30 01:21:39',2667,560,'2005-08-07 02:14:39',2,'2006-02-15 21:30:53'),(8907,'2005-07-30 01:25:03',3239,576,'2005-08-03 05:41:03',1,'2006-02-15 21:30:53'),(8908,'2005-07-30 01:26:05',4498,391,'2005-07-31 20:39:05',1,'2006-02-15 21:30:53'),(8909,'2005-07-30 01:28:03',2606,556,'2005-08-06 04:40:03',2,'2006-02-15 21:30:53'),(8910,'2005-07-30 01:29:48',1039,569,'2005-07-31 21:33:48',2,'2006-02-15 21:30:53'),(8911,'2005-07-30 01:30:57',2159,445,'2005-08-02 20:01:57',1,'2006-02-15 21:30:53'),(8912,'2005-07-30 01:31:25',1686,280,'2005-08-02 07:14:25',2,'2006-02-15 21:30:53'),(8913,'2005-07-30 01:35:01',429,391,'2005-08-06 06:13:01',1,'2006-02-15 21:30:53'),(8914,'2005-07-30 01:42:03',1347,32,'2005-08-04 03:53:03',1,'2006-02-15 21:30:53'),(8915,'2005-07-30 01:42:09',3030,42,'2005-08-04 23:29:09',2,'2006-02-15 21:30:53'),(8916,'2005-07-30 01:42:21',3852,377,'2005-08-03 05:28:21',1,'2006-02-15 21:30:53'),(8917,'2005-07-30 01:47:02',4460,309,'2005-08-05 21:10:02',2,'2006-02-15 21:30:53'),(8918,'2005-07-30 01:56:22',2544,424,'2005-08-04 01:58:22',2,'2006-02-15 21:30:53'),(8919,'2005-07-30 01:57:03',4006,337,'2005-08-08 05:14:03',1,'2006-02-15 21:30:53'),(8920,'2005-07-30 01:59:24',4079,78,'2005-08-02 22:37:24',2,'2006-02-15 21:30:53'),(8921,'2005-07-30 02:04:02',1016,354,'2005-07-31 06:18:02',1,'2006-02-15 21:30:53'),(8922,'2005-07-30 02:08:25',1696,446,'2005-08-08 07:19:25',2,'2006-02-15 21:30:53'),(8923,'2005-07-30 02:08:49',2425,446,'2005-08-03 23:45:49',2,'2006-02-15 21:30:53'),(8924,'2005-07-30 02:08:58',2291,38,'2005-08-05 02:13:58',2,'2006-02-15 21:30:53'),(8925,'2005-07-30 02:09:14',3753,500,'2005-07-30 21:39:14',1,'2006-02-15 21:30:53'),(8926,'2005-07-30 02:10:31',3677,510,'2005-08-03 23:56:31',1,'2006-02-15 21:30:53'),(8927,'2005-07-30 02:13:31',272,15,'2005-08-01 01:34:31',1,'2006-02-15 21:30:53'),(8928,'2005-07-30 02:18:19',706,366,'2005-08-05 00:49:19',2,'2006-02-15 21:30:53'),(8929,'2005-07-30 02:28:22',3501,472,'2005-08-06 06:13:22',1,'2006-02-15 21:30:53'),(8930,'2005-07-30 02:28:38',1107,202,'2005-08-02 01:43:38',2,'2006-02-15 21:30:53'),(8931,'2005-07-30 02:30:07',16,268,'2005-08-02 08:24:07',2,'2006-02-15 21:30:53'),(8932,'2005-07-30 02:31:26',4537,295,'2005-08-04 02:17:26',2,'2006-02-15 21:30:53'),(8933,'2005-07-30 02:36:06',1664,260,'2005-08-02 23:37:06',2,'2006-02-15 21:30:53'),(8934,'2005-07-30 02:37:05',3223,494,'2005-08-01 20:42:05',1,'2006-02-15 21:30:53'),(8935,'2005-07-30 02:38:45',285,76,'2005-08-02 07:11:45',2,'2006-02-15 21:30:53'),(8936,'2005-07-30 02:47:13',1408,227,'2005-08-01 02:25:13',2,'2006-02-15 21:30:53'),(8937,'2005-07-30 02:53:21',2406,544,'2005-08-08 03:33:21',2,'2006-02-15 21:30:53'),(8938,'2005-07-30 02:56:08',4031,92,'2005-07-31 23:08:08',2,'2006-02-15 21:30:53'),(8939,'2005-07-30 02:56:53',4175,598,'2005-08-01 21:19:53',1,'2006-02-15 21:30:53'),(8940,'2005-07-30 02:57:26',1566,212,'2005-08-05 22:05:26',1,'2006-02-15 21:30:53'),(8941,'2005-07-30 02:59:21',4147,329,'2005-08-02 05:18:21',2,'2006-02-15 21:30:53'),(8942,'2005-07-30 03:01:07',4375,77,'2005-08-06 22:50:07',2,'2006-02-15 21:30:53'),(8943,'2005-07-30 03:06:48',3698,531,'2005-08-02 00:59:48',2,'2006-02-15 21:30:53'),(8944,'2005-07-30 03:11:44',3513,172,'2005-08-06 23:15:44',2,'2006-02-15 21:30:53'),(8945,'2005-07-30 03:11:48',1441,447,'2005-08-07 07:53:48',2,'2006-02-15 21:30:53'),(8946,'2005-07-30 03:14:53',3510,257,'2005-08-04 00:50:53',1,'2006-02-15 21:30:53'),(8947,'2005-07-30 03:15:37',341,24,'2005-08-04 07:10:37',2,'2006-02-15 21:30:53'),(8948,'2005-07-30 03:16:18',948,597,'2005-08-04 03:16:18',1,'2006-02-15 21:30:53'),(8949,'2005-07-30 03:17:02',2876,231,'2005-08-08 07:38:02',1,'2006-02-15 21:30:53'),(8950,'2005-07-30 03:17:13',3015,11,'2005-08-07 00:20:13',1,'2006-02-15 21:30:53'),(8951,'2005-07-30 03:18:24',127,336,'2005-08-08 08:50:24',2,'2006-02-15 21:30:53'),(8952,'2005-07-30 03:20:38',4397,36,'2005-08-02 02:54:38',1,'2006-02-15 21:30:53'),(8953,'2005-07-30 03:21:05',535,278,'2005-08-02 05:24:05',2,'2006-02-15 21:30:53'),(8954,'2005-07-30 03:25:51',991,137,'2005-08-06 05:10:51',2,'2006-02-15 21:30:53'),(8955,'2005-07-30 03:28:27',4532,405,'2005-08-04 04:56:27',2,'2006-02-15 21:30:53'),(8956,'2005-07-30 03:32:29',2129,71,'2005-08-01 03:08:29',2,'2006-02-15 21:30:53'),(8957,'2005-07-30 03:34:10',811,158,'2005-08-06 07:05:10',1,'2006-02-15 21:30:53'),(8958,'2005-07-30 03:34:26',1556,536,'2005-08-06 08:14:26',1,'2006-02-15 21:30:53'),(8959,'2005-07-30 03:35:49',3508,550,'2005-08-06 02:02:49',2,'2006-02-15 21:30:53'),(8960,'2005-07-30 03:36:31',391,525,'2005-08-01 23:46:31',2,'2006-02-15 21:30:53'),(8961,'2005-07-30 03:43:35',3679,211,'2005-08-06 07:42:35',1,'2006-02-15 21:30:53'),(8962,'2005-07-30 03:43:45',4439,406,'2005-08-07 00:33:45',1,'2006-02-15 21:30:53'),(8963,'2005-07-30 03:46:26',100,544,'2005-08-08 06:12:26',1,'2006-02-15 21:30:53'),(8964,'2005-07-30 03:49:35',280,424,'2005-08-06 23:28:35',2,'2006-02-15 21:30:53'),(8965,'2005-07-30 03:52:37',2419,599,'2005-08-05 01:28:37',2,'2006-02-15 21:30:53'),(8966,'2005-07-30 03:54:12',1903,522,'2005-07-31 04:51:12',1,'2006-02-15 21:30:53'),(8967,'2005-07-30 03:56:55',1536,480,'2005-08-06 05:25:55',2,'2006-02-15 21:30:53'),(8968,'2005-07-30 03:57:32',2280,339,'2005-07-31 00:09:32',1,'2006-02-15 21:30:53'),(8969,'2005-07-30 04:00:19',2043,121,'2005-08-06 04:39:19',1,'2006-02-15 21:30:53'),(8970,'2005-07-30 04:02:05',2940,313,'2005-08-07 03:40:05',2,'2006-02-15 21:30:53'),(8971,'2005-07-30 04:03:58',3572,35,'2005-08-08 04:16:58',2,'2006-02-15 21:30:53'),(8972,'2005-07-30 04:06:25',1974,89,'2005-08-04 22:49:25',1,'2006-02-15 21:30:53'),(8973,'2005-07-30 04:09:13',886,282,'2005-08-07 22:30:13',2,'2006-02-15 21:30:53'),(8974,'2005-07-30 04:09:16',3376,425,'2005-08-04 06:55:16',1,'2006-02-15 21:30:53'),(8975,'2005-07-30 04:10:18',3288,356,'2005-08-07 01:06:18',2,'2006-02-15 21:30:53'),(8976,'2005-07-30 04:12:32',2135,507,'2005-08-04 23:08:32',1,'2006-02-15 21:30:53'),(8977,'2005-07-30 04:14:07',4099,334,'2005-08-05 23:45:07',2,'2006-02-15 21:30:53'),(8978,'2005-07-30 04:14:28',711,5,'2005-08-06 09:08:28',1,'2006-02-15 21:30:53'),(8979,'2005-07-30 04:20:25',1394,529,'2005-08-08 03:39:25',2,'2006-02-15 21:30:53'),(8980,'2005-07-30 04:22:15',3061,105,'2005-08-04 08:16:15',1,'2006-02-15 21:30:53'),(8981,'2005-07-30 04:25:30',4413,310,'2005-08-06 02:37:30',1,'2006-02-15 21:30:53'),(8982,'2005-07-30 04:31:02',1128,251,'2005-07-31 04:22:02',1,'2006-02-15 21:30:53'),(8983,'2005-07-30 04:31:08',1861,144,'2005-07-31 09:28:08',1,'2006-02-15 21:30:53'),(8984,'2005-07-30 04:31:50',2126,485,'2005-08-04 03:24:50',1,'2006-02-15 21:30:53'),(8985,'2005-07-30 04:34:51',3179,12,'2005-08-06 00:45:51',2,'2006-02-15 21:30:53'),(8986,'2005-07-30 04:37:20',3992,551,'2005-07-31 23:54:20',1,'2006-02-15 21:30:53'),(8987,'2005-07-30 04:37:36',1434,135,'2005-08-08 10:14:36',2,'2006-02-15 21:30:53'),(8988,'2005-07-30 04:38:49',777,487,'2005-08-07 07:00:49',2,'2006-02-15 21:30:53'),(8989,'2005-07-30 04:39:19',954,575,'2005-08-06 02:11:19',1,'2006-02-15 21:30:53'),(8990,'2005-07-30 04:41:42',1869,292,'2005-08-07 22:50:42',2,'2006-02-15 21:30:53'),(8991,'2005-07-30 04:42:54',4540,474,'2005-08-01 23:51:54',1,'2006-02-15 21:30:53'),(8992,'2005-07-30 04:44:18',4478,54,'2005-08-01 00:29:18',1,'2006-02-15 21:30:53'),(8993,'2005-07-30 04:51:25',1891,382,'2005-08-01 01:04:25',1,'2006-02-15 21:30:53'),(8994,'2005-07-30 04:51:32',1527,287,'2005-08-07 09:41:32',1,'2006-02-15 21:30:53'),(8995,'2005-07-30 04:53:11',3575,331,'2005-08-07 00:24:11',1,'2006-02-15 21:30:53'),(8996,'2005-07-30 04:53:23',1970,579,'2005-07-31 06:01:23',1,'2006-02-15 21:30:53'),(8997,'2005-07-30 04:53:56',850,31,'2005-08-03 07:10:56',1,'2006-02-15 21:30:53'),(8998,'2005-07-30 04:54:14',1573,120,'2005-08-08 08:18:14',2,'2006-02-15 21:30:53'),(8999,'2005-07-30 04:55:46',3458,424,'2005-08-01 00:16:46',2,'2006-02-15 21:30:53'),(9000,'2005-07-30 04:58:55',3763,290,'2005-08-08 04:01:55',2,'2006-02-15 21:30:53'),(9001,'2005-07-30 04:59:41',3682,440,'2005-07-31 08:56:41',2,'2006-02-15 21:30:53'),(9002,'2005-07-30 05:02:21',1936,137,'2005-07-31 04:58:21',1,'2006-02-15 21:30:53'),(9003,'2005-07-30 05:02:52',1605,507,'2005-07-31 10:33:52',1,'2006-02-15 21:30:53'),(9004,'2005-07-30 05:04:27',3775,178,'2005-07-31 00:49:27',1,'2006-02-15 21:30:53'),(9005,'2005-07-30 05:04:58',157,204,'2005-08-03 07:41:58',2,'2006-02-15 21:30:53'),(9006,'2005-07-30 05:06:32',3315,49,'2005-07-31 08:24:32',1,'2006-02-15 21:30:53'),(9007,'2005-07-30 05:09:32',2813,63,'2005-08-02 06:12:32',2,'2006-02-15 21:30:53'),(9008,'2005-07-30 05:10:26',3592,371,'2005-07-31 08:13:26',1,'2006-02-15 21:30:53'),(9009,'2005-07-30 05:12:01',4136,166,'2005-08-07 10:58:01',1,'2006-02-15 21:30:53'),(9010,'2005-07-30 05:12:04',1698,152,'2005-08-06 02:54:04',2,'2006-02-15 21:30:53'),(9011,'2005-07-30 05:16:29',2799,236,'2005-08-05 06:57:29',1,'2006-02-15 21:30:53'),(9012,'2005-07-30 05:18:57',3604,494,'2005-08-06 06:21:57',1,'2006-02-15 21:30:53'),(9013,'2005-07-30 05:19:20',2367,347,'2005-08-04 01:35:20',1,'2006-02-15 21:30:53'),(9014,'2005-07-30 05:19:27',311,297,'2005-08-01 01:10:27',2,'2006-02-15 21:30:53'),(9015,'2005-07-30 05:21:32',4128,203,'2005-08-08 07:03:32',2,'2006-02-15 21:30:53'),(9016,'2005-07-30 05:26:13',4309,312,'2005-08-04 00:25:13',2,'2006-02-15 21:30:53'),(9017,'2005-07-30 05:26:20',3325,319,'2005-08-04 10:00:20',2,'2006-02-15 21:30:53'),(9018,'2005-07-30 05:28:40',1982,218,'2005-08-07 01:34:40',1,'2006-02-15 21:30:53'),(9019,'2005-07-30 05:28:53',946,235,'2005-08-03 02:16:53',2,'2006-02-15 21:30:53'),(9020,'2005-07-30 05:31:27',1700,142,'2005-08-08 06:44:27',2,'2006-02-15 21:30:53'),(9021,'2005-07-30 05:34:24',674,498,'2005-08-03 04:13:24',1,'2006-02-15 21:30:53'),(9022,'2005-07-30 05:34:45',4473,159,'2005-08-03 23:57:45',2,'2006-02-15 21:30:53'),(9023,'2005-07-30 05:36:40',2911,148,'2005-08-07 06:20:40',1,'2006-02-15 21:30:53'),(9024,'2005-07-30 05:44:42',164,329,'2005-08-05 03:15:42',2,'2006-02-15 21:30:53'),(9025,'2005-07-30 05:50:08',2244,473,'2005-07-31 09:58:08',1,'2006-02-15 21:30:53'),(9026,'2005-07-30 05:55:31',1524,423,'2005-08-01 03:19:31',1,'2006-02-15 21:30:53'),(9027,'2005-07-30 05:58:27',449,72,'2005-08-03 03:02:27',1,'2006-02-15 21:30:53'),(9028,'2005-07-30 06:00:35',2687,119,'2005-08-02 01:35:35',1,'2006-02-15 21:30:53'),(9029,'2005-07-30 06:03:11',2220,52,'2005-08-04 01:42:11',1,'2006-02-15 21:30:53'),(9030,'2005-07-30 06:05:38',2237,367,'2005-08-03 00:19:38',1,'2006-02-15 21:30:53'),(9031,'2005-07-30 06:06:10',2377,2,'2005-08-04 10:45:10',2,'2006-02-15 21:30:53'),(9032,'2005-07-30 06:06:54',4448,369,'2005-08-01 05:27:54',1,'2006-02-15 21:30:53'),(9033,'2005-07-30 06:07:42',3416,35,'2005-08-05 01:18:42',1,'2006-02-15 21:30:53'),(9034,'2005-07-30 06:10:58',3847,144,'2005-08-08 05:00:58',2,'2006-02-15 21:30:53'),(9035,'2005-07-30 06:16:07',3785,243,'2005-08-06 09:22:07',1,'2006-02-15 21:30:53'),(9036,'2005-07-30 06:18:38',790,18,'2005-07-31 01:22:38',1,'2006-02-15 21:30:53'),(9037,'2005-07-30 06:23:14',3833,356,'2005-08-08 06:25:14',1,'2006-02-15 21:30:53'),(9038,'2005-07-30 06:23:35',217,514,'2005-08-06 11:10:35',1,'2006-02-15 21:30:53'),(9039,'2005-07-30 06:24:28',4493,485,'2005-08-08 00:28:28',1,'2006-02-15 21:30:53'),(9040,'2005-07-30 06:31:45',392,33,'2005-08-03 12:20:45',1,'2006-02-15 21:30:53'),(9041,'2005-07-30 06:32:36',1103,454,'2005-08-01 10:28:36',2,'2006-02-15 21:30:53'),(9042,'2005-07-30 06:33:55',2770,398,'2005-08-04 09:31:55',2,'2006-02-15 21:30:53'),(9043,'2005-07-30 06:34:07',4127,9,'2005-08-02 01:16:07',1,'2006-02-15 21:30:53'),(9044,'2005-07-30 06:35:21',3796,319,'2005-07-31 10:27:21',1,'2006-02-15 21:30:53'),(9045,'2005-07-30 06:36:57',4521,46,'2005-08-08 01:51:57',1,'2006-02-15 21:30:53'),(9046,'2005-07-30 06:46:55',1736,215,'2005-08-01 02:21:55',2,'2006-02-15 21:30:53'),(9047,'2005-07-30 06:56:33',256,522,'2005-08-08 06:40:33',2,'2006-02-15 21:30:53'),(9048,'2005-07-30 06:57:07',3929,100,'2005-08-05 00:57:07',1,'2006-02-15 21:30:53'),(9049,'2005-07-30 06:57:28',2620,417,'2005-08-04 09:02:28',1,'2006-02-15 21:30:53'),(9050,'2005-07-30 06:59:55',106,40,'2005-08-06 06:37:55',1,'2006-02-15 21:30:53'),(9051,'2005-07-30 07:05:54',1847,337,'2005-08-07 09:12:54',2,'2006-02-15 21:30:53'),(9052,'2005-07-30 07:06:08',3351,408,'2005-08-03 10:30:08',1,'2006-02-15 21:30:53'),(9053,'2005-07-30 07:07:39',2535,485,'2005-08-01 09:22:39',2,'2006-02-15 21:30:53'),(9054,'2005-07-30 07:11:44',2860,209,'2005-08-08 01:55:44',2,'2006-02-15 21:30:53'),(9055,'2005-07-30 07:13:07',634,512,'2005-08-01 12:18:07',1,'2006-02-15 21:30:53'),(9056,'2005-07-30 07:13:20',4363,380,'2005-08-03 07:36:20',1,'2006-02-15 21:30:53'),(9057,'2005-07-30 07:14:18',3141,202,'2005-08-01 05:10:18',2,'2006-02-15 21:30:53'),(9058,'2005-07-30 07:15:45',4214,403,'2005-07-31 02:57:45',2,'2006-02-15 21:30:53'),(9059,'2005-07-30 07:18:44',480,267,'2005-08-08 08:39:44',1,'2006-02-15 21:30:53'),(9060,'2005-07-30 07:20:36',4360,87,'2005-08-03 10:51:36',1,'2006-02-15 21:30:53'),(9061,'2005-07-30 07:21:52',1933,255,'2005-08-08 10:52:52',1,'2006-02-15 21:30:53'),(9062,'2005-07-30 07:23:17',2780,358,'2005-08-02 12:07:17',1,'2006-02-15 21:30:53'),(9063,'2005-07-30 07:24:34',2851,564,'2005-08-05 01:28:34',2,'2006-02-15 21:30:53'),(9064,'2005-07-30 07:24:55',1417,194,'2005-08-07 08:44:55',2,'2006-02-15 21:30:53'),(9065,'2005-07-30 07:25:09',349,238,'2005-07-31 05:18:09',2,'2006-02-15 21:30:53'),(9066,'2005-07-30 07:28:54',196,171,'2005-08-02 05:23:54',1,'2006-02-15 21:30:53'),(9067,'2005-07-30 07:31:01',3628,382,'2005-08-04 11:44:01',2,'2006-02-15 21:30:53'),(9068,'2005-07-30 07:31:45',2264,78,'2005-08-08 06:40:45',1,'2006-02-15 21:30:53'),(9069,'2005-07-30 07:39:59',1852,258,'2005-08-02 04:10:59',1,'2006-02-15 21:30:53'),(9070,'2005-07-30 07:40:39',3690,276,'2005-08-01 04:19:39',2,'2006-02-15 21:30:53'),(9071,'2005-07-30 07:40:58',3151,523,'2005-08-01 06:59:58',2,'2006-02-15 21:30:53'),(9072,'2005-07-30 07:45:49',4536,106,'2005-08-04 10:00:49',1,'2006-02-15 21:30:53'),(9073,'2005-07-30 07:49:56',2185,141,'2005-08-05 06:25:56',2,'2006-02-15 21:30:53'),(9074,'2005-07-30 07:50:10',3244,84,'2005-08-01 11:21:10',2,'2006-02-15 21:30:53'),(9075,'2005-07-30 07:55:14',1931,20,'2005-08-02 13:49:14',1,'2006-02-15 21:30:53'),(9076,'2005-07-30 07:58:12',496,447,'2005-08-08 06:04:12',1,'2006-02-15 21:30:53'),(9077,'2005-07-30 08:00:19',4324,471,'2005-08-08 11:21:19',1,'2006-02-15 21:30:53'),(9078,'2005-07-30 08:01:00',955,300,'2005-07-31 10:39:00',1,'2006-02-15 21:30:53'),(9079,'2005-07-30 08:02:00',2143,193,'2005-07-31 04:02:00',2,'2006-02-15 21:30:53'),(9080,'2005-07-30 08:02:39',94,276,'2005-08-06 12:02:39',1,'2006-02-15 21:30:53'),(9081,'2005-07-30 08:09:58',3040,572,'2005-08-03 13:27:58',1,'2006-02-15 21:30:53'),(9082,'2005-07-30 08:11:22',4042,438,'2005-08-06 09:26:22',2,'2006-02-15 21:30:53'),(9083,'2005-07-30 08:14:27',456,488,'2005-08-07 14:02:27',1,'2006-02-15 21:30:53'),(9084,'2005-07-30 08:14:29',3950,171,'2005-08-03 11:12:29',2,'2006-02-15 21:30:53'),(9085,'2005-07-30 08:17:24',3400,33,'2005-08-03 09:35:24',2,'2006-02-15 21:30:53'),(9086,'2005-07-30 08:18:46',2779,57,'2005-08-06 06:10:46',2,'2006-02-15 21:30:53'),(9087,'2005-07-30 08:19:47',4048,546,'2005-08-02 07:15:47',1,'2006-02-15 21:30:53'),(9088,'2005-07-30 08:21:02',3407,245,'2005-08-01 09:55:02',1,'2006-02-15 21:30:53'),(9089,'2005-07-30 08:23:39',490,369,'2005-07-31 06:00:39',1,'2006-02-15 21:30:53'),(9090,'2005-07-30 08:24:42',3426,104,'2005-08-08 06:17:42',2,'2006-02-15 21:30:53'),(9091,'2005-07-30 08:30:45',2249,66,'2005-08-07 13:28:45',1,'2006-02-15 21:30:53'),(9092,'2005-07-30 08:30:56',1877,17,'2005-08-06 08:09:56',2,'2006-02-15 21:30:53'),(9093,'2005-07-30 08:33:24',2208,96,'2005-08-04 11:07:24',1,'2006-02-15 21:30:53'),(9094,'2005-07-30 08:35:10',2699,140,'2005-08-07 08:18:10',2,'2006-02-15 21:30:53'),(9095,'2005-07-30 08:38:36',3019,511,'2005-07-31 06:14:36',1,'2006-02-15 21:30:53'),(9096,'2005-07-30 08:39:23',540,216,'2005-08-01 03:33:23',1,'2006-02-15 21:30:53'),(9097,'2005-07-30 08:40:35',570,173,'2005-08-04 11:19:35',2,'2006-02-15 21:30:53'),(9098,'2005-07-30 08:44:21',1267,144,'2005-08-08 12:31:21',1,'2006-02-15 21:30:53'),(9099,'2005-07-30 08:45:48',594,250,'2005-08-01 03:18:48',2,'2006-02-15 21:30:53'),(9100,'2005-07-30 08:46:09',4117,4,'2005-08-05 10:34:09',1,'2006-02-15 21:30:53'),(9101,'2005-07-30 08:47:13',3165,566,'2005-08-02 12:52:13',1,'2006-02-15 21:30:53'),(9102,'2005-07-30 08:48:20',1154,276,'2005-08-04 10:19:20',1,'2006-02-15 21:30:53'),(9103,'2005-07-30 08:49:26',3806,280,'2005-07-31 14:15:26',1,'2006-02-15 21:30:53'),(9104,'2005-07-30 08:49:55',3372,322,'2005-08-06 12:23:55',1,'2006-02-15 21:30:53'),(9105,'2005-07-30 08:50:25',4443,262,'2005-08-05 06:08:25',1,'2006-02-15 21:30:53'),(9106,'2005-07-30 08:52:34',2935,148,'2005-08-02 07:38:34',2,'2006-02-15 21:30:53'),(9107,'2005-07-30 08:52:45',1068,531,'2005-08-05 08:39:45',2,'2006-02-15 21:30:53'),(9108,'2005-07-30 08:56:36',3977,490,'2005-08-04 11:07:36',1,'2006-02-15 21:30:53'),(9109,'2005-07-30 08:58:24',787,266,'2005-08-07 06:56:24',1,'2006-02-15 21:30:53'),(9110,'2005-07-30 09:05:42',1474,317,'2005-08-03 05:15:42',1,'2006-02-15 21:30:53'),(9111,'2005-07-30 09:05:44',166,211,'2005-08-04 14:27:44',2,'2006-02-15 21:30:53'),(9112,'2005-07-30 09:06:31',395,74,'2005-08-04 05:12:31',2,'2006-02-15 21:30:53'),(9113,'2005-07-30 09:09:03',3903,374,'2005-07-31 03:13:03',1,'2006-02-15 21:30:53'),(9114,'2005-07-30 09:13:21',893,18,'2005-08-05 06:00:21',2,'2006-02-15 21:30:53'),(9115,'2005-07-30 09:13:55',3750,322,'2005-08-04 04:02:55',2,'2006-02-15 21:30:53'),(9116,'2005-07-30 09:19:41',2917,446,'2005-08-03 08:01:41',2,'2006-02-15 21:30:53'),(9117,'2005-07-30 09:20:59',3055,371,'2005-08-07 08:47:59',1,'2006-02-15 21:30:53'),(9118,'2005-07-30 09:24:18',4538,172,'2005-08-02 14:46:18',2,'2006-02-15 21:30:53'),(9119,'2005-07-30 09:25:56',275,305,'2005-08-03 03:36:56',1,'2006-02-15 21:30:53'),(9120,'2005-07-30 09:26:08',139,473,'2005-08-08 09:52:08',1,'2006-02-15 21:30:53'),(9121,'2005-07-30 09:36:26',3098,150,'2005-08-05 15:17:26',2,'2006-02-15 21:30:53'),(9122,'2005-07-30 09:36:52',627,365,'2005-08-05 13:20:52',1,'2006-02-15 21:30:53'),(9123,'2005-07-30 09:39:15',3748,293,'2005-08-02 08:12:15',2,'2006-02-15 21:30:53'),(9124,'2005-07-30 09:43:12',4552,105,'2005-08-06 06:17:12',1,'2006-02-15 21:30:53'),(9125,'2005-07-30 09:43:39',333,335,'2005-08-07 14:02:39',1,'2006-02-15 21:30:53'),(9126,'2005-07-30 09:44:15',4495,590,'2005-08-02 11:02:15',2,'2006-02-15 21:30:53'),(9127,'2005-07-30 09:46:36',4114,300,'2005-07-31 07:43:36',1,'2006-02-15 21:30:53'),(9128,'2005-07-30 09:51:14',3647,372,'2005-08-07 06:23:14',1,'2006-02-15 21:30:53'),(9129,'2005-07-30 09:51:21',2658,125,'2005-08-07 08:50:21',2,'2006-02-15 21:30:53'),(9130,'2005-07-30 09:55:10',1715,354,'2005-08-04 08:57:10',1,'2006-02-15 21:30:53'),(9131,'2005-07-30 09:55:57',623,142,'2005-08-01 14:21:57',1,'2006-02-15 21:30:53'),(9132,'2005-07-30 09:56:00',402,159,'2005-08-02 09:22:00',1,'2006-02-15 21:30:53'),(9133,'2005-07-30 09:59:00',408,576,'2005-08-07 04:24:00',1,'2006-02-15 21:30:53'),(9134,'2005-07-30 10:00:21',3797,559,'2005-08-01 05:01:21',1,'2006-02-15 21:30:53'),(9135,'2005-07-30 10:06:53',821,161,'2005-08-03 13:57:53',2,'2006-02-15 21:30:53'),(9136,'2005-07-30 10:07:20',1734,57,'2005-07-31 08:20:20',2,'2006-02-15 21:30:53'),(9137,'2005-07-30 10:09:24',840,459,'2005-08-06 04:30:24',2,'2006-02-15 21:30:53'),(9138,'2005-07-30 10:11:52',2550,17,'2005-07-31 07:05:52',2,'2006-02-15 21:30:53'),(9139,'2005-07-30 10:11:52',2809,133,'2005-08-03 12:44:52',1,'2006-02-15 21:30:53'),(9140,'2005-07-30 10:12:01',4095,25,'2005-08-06 09:16:01',2,'2006-02-15 21:30:53'),(9141,'2005-07-30 10:16:04',3087,484,'2005-08-05 08:01:04',1,'2006-02-15 21:30:53'),(9142,'2005-07-30 10:21:03',4467,486,'2005-08-04 15:14:03',1,'2006-02-15 21:30:53'),(9143,'2005-07-30 10:22:11',2962,511,'2005-08-07 06:13:11',2,'2006-02-15 21:30:53'),(9144,'2005-07-30 10:22:15',718,381,'2005-08-05 08:14:15',1,'2006-02-15 21:30:53'),(9145,'2005-07-30 10:27:55',559,176,'2005-08-07 14:41:55',2,'2006-02-15 21:30:53'),(9146,'2005-07-30 10:32:08',483,302,'2005-08-08 14:30:08',1,'2006-02-15 21:30:53'),(9147,'2005-07-30 10:38:59',4167,394,'2005-08-02 11:45:59',2,'2006-02-15 21:30:53'),(9148,'2005-07-30 10:39:10',1407,333,'2005-08-04 07:17:10',2,'2006-02-15 21:30:53'),(9149,'2005-07-30 10:45:12',2632,21,'2005-08-01 09:40:12',1,'2006-02-15 21:30:53'),(9150,'2005-07-30 10:49:32',2834,213,'2005-08-08 15:43:32',1,'2006-02-15 21:30:53'),(9151,'2005-07-30 10:50:53',3956,102,'2005-08-07 08:19:53',1,'2006-02-15 21:30:53'),(9152,'2005-07-30 10:51:27',3607,595,'2005-07-31 06:38:27',2,'2006-02-15 21:30:53'),(9153,'2005-07-30 10:58:16',3743,589,'2005-08-03 06:16:16',2,'2006-02-15 21:30:53'),(9154,'2005-07-30 10:59:54',576,312,'2005-08-05 16:47:54',1,'2006-02-15 21:30:53'),(9155,'2005-07-30 11:00:00',3787,107,'2005-08-02 05:24:00',2,'2006-02-15 21:30:53'),(9156,'2005-07-30 11:04:55',1747,145,'2005-07-31 14:10:55',2,'2006-02-15 21:30:53'),(9157,'2005-07-30 11:06:23',146,19,'2005-08-05 05:29:23',2,'2006-02-15 21:30:53'),(9158,'2005-07-30 11:12:03',4017,16,'2005-08-02 05:55:03',2,'2006-02-15 21:30:53'),(9159,'2005-07-30 11:16:37',1234,217,'2005-08-03 10:32:37',1,'2006-02-15 21:30:53'),(9160,'2005-07-30 11:17:33',183,34,'2005-08-06 15:16:33',2,'2006-02-15 21:30:53'),(9161,'2005-07-30 11:19:18',969,433,'2005-08-02 05:32:18',1,'2006-02-15 21:30:53'),(9162,'2005-07-30 11:21:56',4198,184,'2005-08-02 15:32:56',1,'2006-02-15 21:30:53'),(9163,'2005-07-30 11:23:22',4562,345,'2005-07-31 07:34:22',2,'2006-02-15 21:30:53'),(9164,'2005-07-30 11:24:14',4434,342,'2005-08-08 16:24:14',1,'2006-02-15 21:30:53'),(9165,'2005-07-30 11:24:28',4034,291,'2005-08-03 09:38:28',1,'2006-02-15 21:30:53'),(9166,'2005-07-30 11:26:28',308,12,'2005-08-04 12:32:28',1,'2006-02-15 21:30:53'),(9167,'2005-07-30 11:30:37',1785,162,'2005-08-08 17:13:37',1,'2006-02-15 21:30:53'),(9168,'2005-07-30 11:31:17',2035,75,'2005-08-08 16:56:17',2,'2006-02-15 21:30:53'),(9169,'2005-07-30 11:35:00',1567,245,'2005-08-06 16:16:00',2,'2006-02-15 21:30:53'),(9170,'2005-07-30 11:35:24',4279,425,'2005-08-05 05:36:24',1,'2006-02-15 21:30:53'),(9171,'2005-07-30 11:36:24',1832,189,'2005-08-07 06:04:24',2,'2006-02-15 21:30:53'),(9172,'2005-07-30 11:36:38',695,437,'2005-08-04 09:39:38',1,'2006-02-15 21:30:53'),(9173,'2005-07-30 11:40:10',2103,381,'2005-08-04 05:40:10',2,'2006-02-15 21:30:53'),(9174,'2005-07-30 11:42:10',2636,144,'2005-07-31 09:52:10',1,'2006-02-15 21:30:53'),(9175,'2005-07-30 11:47:48',358,133,'2005-08-02 08:13:48',1,'2006-02-15 21:30:53'),(9176,'2005-07-30 11:50:54',2659,260,'2005-08-02 14:25:54',2,'2006-02-15 21:30:53'),(9177,'2005-07-30 11:52:40',1088,400,'2005-08-08 09:35:40',1,'2006-02-15 21:30:53'),(9178,'2005-07-30 11:58:50',2046,448,'2005-08-08 15:24:50',2,'2006-02-15 21:30:53'),(9179,'2005-07-30 12:02:41',62,50,'2005-08-05 15:23:41',2,'2006-02-15 21:30:53'),(9180,'2005-07-30 12:03:15',3479,442,'2005-08-01 14:25:15',1,'2006-02-15 21:30:53'),(9181,'2005-07-30 12:05:58',3953,224,'2005-08-02 06:22:58',1,'2006-02-15 21:30:53'),(9182,'2005-07-30 12:06:58',2533,165,'2005-08-08 11:33:58',2,'2006-02-15 21:30:53'),(9183,'2005-07-30 12:09:56',4320,475,'2005-08-06 11:50:56',2,'2006-02-15 21:30:53'),(9184,'2005-07-30 12:10:19',51,365,'2005-08-01 07:35:19',2,'2006-02-15 21:30:53'),(9185,'2005-07-30 12:10:40',2268,426,'2005-08-06 07:01:40',1,'2006-02-15 21:30:53'),(9186,'2005-07-30 12:13:48',4513,273,'2005-07-31 11:59:48',1,'2006-02-15 21:30:53'),(9187,'2005-07-30 12:14:03',4008,469,'2005-08-04 13:10:03',2,'2006-02-15 21:30:53'),(9188,'2005-07-30 12:19:54',727,195,'2005-08-06 09:12:54',2,'2006-02-15 21:30:53'),(9189,'2005-07-30 12:20:59',4529,485,'2005-08-06 16:15:59',1,'2006-02-15 21:30:53'),(9190,'2005-07-30 12:24:17',4421,177,'2005-08-03 07:41:17',2,'2006-02-15 21:30:53'),(9191,'2005-07-30 12:25:51',500,314,'2005-08-05 16:13:51',1,'2006-02-15 21:30:53'),(9192,'2005-07-30 12:26:26',2372,102,'2005-08-04 07:54:26',2,'2006-02-15 21:30:53'),(9193,'2005-07-30 12:28:42',3470,69,'2005-08-02 12:17:42',2,'2006-02-15 21:30:53'),(9194,'2005-07-30 12:28:45',2467,294,'2005-08-06 14:38:45',1,'2006-02-15 21:30:53'),(9195,'2005-07-30 12:29:43',944,440,'2005-08-04 12:35:43',1,'2006-02-15 21:30:53'),(9196,'2005-07-30 12:30:19',4298,251,'2005-07-31 18:01:19',2,'2006-02-15 21:30:53'),(9197,'2005-07-30 12:31:36',3214,168,'2005-08-03 09:05:36',1,'2006-02-15 21:30:53'),(9198,'2005-07-30 12:37:08',2371,105,'2005-08-07 16:37:08',2,'2006-02-15 21:30:53'),(9199,'2005-07-30 12:38:00',4336,580,'2005-08-01 07:09:00',1,'2006-02-15 21:30:53'),(9200,'2005-07-30 12:39:52',3277,137,'2005-08-08 09:43:52',2,'2006-02-15 21:30:53'),(9201,'2005-07-30 12:42:21',4387,291,'2005-08-08 06:50:21',1,'2006-02-15 21:30:53'),(9202,'2005-07-30 12:43:24',4525,466,'2005-08-07 10:39:24',2,'2006-02-15 21:30:53'),(9203,'2005-07-30 12:43:40',2112,169,'2005-08-01 09:31:40',2,'2006-02-15 21:30:53'),(9204,'2005-07-30 12:43:58',4378,43,'2005-08-03 16:26:58',2,'2006-02-15 21:30:53'),(9205,'2005-07-30 12:46:40',4165,259,'2005-08-08 14:58:40',1,'2006-02-15 21:30:53'),(9206,'2005-07-30 12:46:59',2021,404,'2005-08-03 14:58:59',1,'2006-02-15 21:30:53'),(9207,'2005-07-30 12:49:57',1346,345,'2005-07-31 14:32:57',2,'2006-02-15 21:30:53'),(9208,'2005-07-30 12:54:03',2751,339,'2005-08-06 17:22:03',2,'2006-02-15 21:30:53'),(9209,'2005-07-30 12:55:36',3940,23,'2005-08-03 11:31:36',2,'2006-02-15 21:30:53'),(9210,'2005-07-30 12:56:44',101,105,'2005-08-08 09:41:44',2,'2006-02-15 21:30:53'),(9211,'2005-07-30 12:59:45',595,57,'2005-08-07 18:17:45',2,'2006-02-15 21:30:53'),(9212,'2005-07-30 13:03:13',2111,73,'2005-08-06 09:48:13',1,'2006-02-15 21:30:53'),(9213,'2005-07-30 13:07:11',184,388,'2005-08-01 15:30:11',1,'2006-02-15 21:30:53'),(9214,'2005-07-30 13:10:14',2823,181,'2005-08-06 14:22:14',2,'2006-02-15 21:30:53'),(9215,'2005-07-30 13:11:11',3591,128,'2005-08-06 13:06:11',1,'2006-02-15 21:30:53'),(9216,'2005-07-30 13:11:19',2783,38,'2005-07-31 11:27:19',2,'2006-02-15 21:30:53'),(9217,'2005-07-30 13:13:55',1561,112,'2005-08-05 17:27:55',1,'2006-02-15 21:30:53'),(9218,'2005-07-30 13:14:35',119,172,'2005-08-07 18:03:35',1,'2006-02-15 21:30:53'),(9219,'2005-07-30 13:15:21',771,329,'2005-08-01 11:39:21',1,'2006-02-15 21:30:53'),(9220,'2005-07-30 13:17:27',2463,569,'2005-08-07 11:34:27',2,'2006-02-15 21:30:53'),(9221,'2005-07-30 13:20:06',2496,113,'2005-08-06 13:58:06',2,'2006-02-15 21:30:53'),(9222,'2005-07-30 13:21:08',3648,95,'2005-08-08 10:42:08',2,'2006-02-15 21:30:53'),(9223,'2005-07-30 13:23:20',3231,595,'2005-08-04 11:24:20',1,'2006-02-15 21:30:53'),(9224,'2005-07-30 13:25:37',2260,406,'2005-08-01 15:13:37',2,'2006-02-15 21:30:53'),(9225,'2005-07-30 13:29:47',1992,391,'2005-08-02 17:08:47',2,'2006-02-15 21:30:53'),(9226,'2005-07-30 13:31:20',4315,3,'2005-08-06 16:42:20',1,'2006-02-15 21:30:53'),(9227,'2005-07-30 13:36:13',2353,522,'2005-08-07 17:39:13',1,'2006-02-15 21:30:53'),(9228,'2005-07-30 13:36:57',2325,91,'2005-08-05 10:43:57',1,'2006-02-15 21:30:53'),(9229,'2005-07-30 13:38:17',3780,276,'2005-08-08 18:17:17',2,'2006-02-15 21:30:53'),(9230,'2005-07-30 13:39:42',1199,109,'2005-07-31 19:20:42',1,'2006-02-15 21:30:53'),(9231,'2005-07-30 13:42:15',1587,489,'2005-08-02 19:27:15',1,'2006-02-15 21:30:53'),(9232,'2005-07-30 13:43:00',1991,502,'2005-08-02 11:39:00',2,'2006-02-15 21:30:53'),(9233,'2005-07-30 13:44:15',2320,357,'2005-08-07 13:02:15',2,'2006-02-15 21:30:53'),(9234,'2005-07-30 13:45:54',1660,128,'2005-08-02 15:33:54',1,'2006-02-15 21:30:53'),(9235,'2005-07-30 13:47:17',984,181,'2005-08-06 17:15:17',2,'2006-02-15 21:30:53'),(9236,'2005-07-30 13:47:43',4030,2,'2005-08-08 18:52:43',1,'2006-02-15 21:30:53'),(9237,'2005-07-30 13:48:17',2777,157,'2005-07-31 13:57:17',2,'2006-02-15 21:30:53'),(9238,'2005-07-30 13:49:43',3356,12,'2005-08-08 08:25:43',2,'2006-02-15 21:30:53'),(9239,'2005-07-30 13:50:52',1728,580,'2005-08-06 16:28:52',1,'2006-02-15 21:30:53'),(9240,'2005-07-30 13:57:54',587,92,'2005-08-03 12:23:54',2,'2006-02-15 21:30:53'),(9241,'2005-07-30 13:58:41',4145,187,'2005-08-04 09:44:41',2,'2006-02-15 21:30:53'),(9242,'2005-07-30 14:03:58',755,306,'2005-08-02 18:09:58',2,'2006-02-15 21:30:53'),(9243,'2005-07-30 14:06:27',876,516,'2005-08-06 09:26:27',2,'2006-02-15 21:30:53'),(9244,'2005-07-30 14:06:53',3640,27,'2005-08-03 19:46:53',1,'2006-02-15 21:30:53'),(9245,'2005-07-30 14:07:50',2586,116,'2005-08-06 17:59:50',2,'2006-02-15 21:30:53'),(9246,'2005-07-30 14:12:31',3390,185,'2005-08-02 14:25:31',2,'2006-02-15 21:30:53'),(9247,'2005-07-30 14:13:56',4106,426,'2005-08-02 16:34:56',2,'2006-02-15 21:30:53'),(9248,'2005-07-30 14:14:11',1382,2,'2005-08-05 11:19:11',1,'2006-02-15 21:30:53'),(9249,'2005-07-30 14:15:02',2015,296,'2005-08-05 13:02:02',1,'2006-02-15 21:30:53'),(9250,'2005-07-30 14:18:16',4544,539,'2005-08-04 12:31:16',1,'2006-02-15 21:30:53'),(9251,'2005-07-30 14:19:25',2948,390,'2005-08-08 11:22:25',2,'2006-02-15 21:30:53'),(9252,'2005-07-30 14:19:59',2350,322,'2005-08-07 15:17:59',1,'2006-02-15 21:30:53'),(9253,'2005-07-30 14:20:12',4183,151,'2005-07-31 11:31:12',2,'2006-02-15 21:30:53'),(9254,'2005-07-30 14:26:11',495,33,'2005-08-04 16:12:11',1,'2006-02-15 21:30:53'),(9255,'2005-07-30 14:26:46',1596,23,'2005-08-07 18:16:46',1,'2006-02-15 21:30:53'),(9256,'2005-07-30 14:29:29',4021,19,'2005-08-05 16:59:29',1,'2006-02-15 21:30:53'),(9257,'2005-07-30 14:30:38',2615,466,'2005-08-04 17:57:38',1,'2006-02-15 21:30:53'),(9258,'2005-07-30 14:31:31',2007,275,'2005-08-05 16:29:31',2,'2006-02-15 21:30:53'),(9259,'2005-07-30 14:37:44',97,138,'2005-08-06 18:05:44',2,'2006-02-15 21:30:53'),(9260,'2005-07-30 14:38:22',3969,13,'2005-08-07 18:47:22',2,'2006-02-15 21:30:53'),(9261,'2005-07-30 14:39:35',372,380,'2005-08-08 11:26:35',1,'2006-02-15 21:30:53'),(9262,'2005-07-30 14:45:02',2322,349,'2005-08-05 15:18:02',2,'2006-02-15 21:30:53'),(9263,'2005-07-30 14:48:24',73,410,'2005-08-04 19:06:24',2,'2006-02-15 21:30:53'),(9264,'2005-07-30 14:51:36',4071,157,'2005-08-02 10:06:36',1,'2006-02-15 21:30:53'),(9265,'2005-07-30 14:55:25',3700,560,'2005-08-02 11:34:25',1,'2006-02-15 21:30:53'),(9266,'2005-07-30 14:59:01',1705,364,'2005-07-31 17:01:01',2,'2006-02-15 21:30:53'),(9267,'2005-07-30 14:59:05',645,409,'2005-08-04 10:17:05',1,'2006-02-15 21:30:53'),(9268,'2005-07-30 15:02:30',3593,592,'2005-08-05 12:50:30',1,'2006-02-15 21:30:53'),(9269,'2005-07-30 15:02:33',548,435,'2005-08-02 16:32:33',1,'2006-02-15 21:30:53'),(9270,'2005-07-30 15:03:16',700,232,'2005-07-31 16:09:16',2,'2006-02-15 21:30:53'),(9271,'2005-07-30 15:04:31',2660,100,'2005-07-31 20:33:31',1,'2006-02-15 21:30:53'),(9272,'2005-07-30 15:05:22',1352,553,'2005-08-05 10:02:22',2,'2006-02-15 21:30:53'),(9273,'2005-07-30 15:05:36',1867,497,'2005-08-08 09:07:36',1,'2006-02-15 21:30:53'),(9274,'2005-07-30 15:07:04',4424,47,'2005-08-06 11:17:04',2,'2006-02-15 21:30:53'),(9275,'2005-07-30 15:09:15',1916,439,'2005-07-31 10:23:15',2,'2006-02-15 21:30:53'),(9276,'2005-07-30 15:09:28',1528,237,'2005-08-06 19:39:28',1,'2006-02-15 21:30:53'),(9277,'2005-07-30 15:13:45',3734,82,'2005-08-05 10:25:45',2,'2006-02-15 21:30:53'),(9278,'2005-07-30 15:15:19',3782,581,'2005-08-03 20:21:19',1,'2006-02-15 21:30:53'),(9279,'2005-07-30 15:15:21',1070,567,'2005-08-07 18:46:21',1,'2006-02-15 21:30:53'),(9280,'2005-07-30 15:15:38',4103,286,'2005-08-05 19:20:38',2,'2006-02-15 21:30:53'),(9281,'2005-07-30 15:15:51',3086,398,'2005-08-05 12:58:51',1,'2006-02-15 21:30:53'),(9282,'2005-07-30 15:17:31',736,259,'2005-08-07 20:46:31',1,'2006-02-15 21:30:53'),(9283,'2005-07-30 15:25:19',1858,360,'2005-08-01 15:35:19',2,'2006-02-15 21:30:53'),(9284,'2005-07-30 15:25:19',3976,38,'2005-08-01 17:45:19',2,'2006-02-15 21:30:53'),(9285,'2005-07-30 15:26:08',3686,273,'2005-08-06 15:59:08',2,'2006-02-15 21:30:53'),(9286,'2005-07-30 15:32:28',2477,154,'2005-07-31 20:42:28',2,'2006-02-15 21:30:53'),(9287,'2005-07-30 15:35:39',2048,551,'2005-08-02 10:15:39',1,'2006-02-15 21:30:53'),(9288,'2005-07-30 15:56:39',2640,447,'2005-08-04 13:25:39',2,'2006-02-15 21:30:53'),(9289,'2005-07-30 15:57:04',389,453,'2005-08-07 18:46:04',1,'2006-02-15 21:30:53'),(9290,'2005-07-30 15:59:08',2275,500,'2005-08-06 21:49:08',2,'2006-02-15 21:30:53'),(9291,'2005-07-30 16:03:39',2884,406,'2005-08-05 11:11:39',2,'2006-02-15 21:30:53'),(9292,'2005-07-30 16:08:21',1702,11,'2005-08-07 10:38:21',2,'2006-02-15 21:30:53'),(9293,'2005-07-30 16:12:28',1676,65,'2005-08-05 18:34:28',2,'2006-02-15 21:30:53'),(9294,'2005-07-30 16:14:37',2468,433,'2005-08-07 18:49:37',1,'2006-02-15 21:30:53'),(9295,'2005-07-30 16:18:39',494,102,'2005-08-03 12:46:39',1,'2006-02-15 21:30:53'),(9296,'2005-07-30 16:21:13',4088,2,'2005-08-08 11:57:13',1,'2006-02-15 21:30:53'),(9297,'2005-07-30 16:26:29',3502,191,'2005-08-03 13:51:29',1,'2006-02-15 21:30:53'),(9298,'2005-07-30 16:27:53',2106,208,'2005-08-07 12:32:53',2,'2006-02-15 21:30:53'),(9299,'2005-07-30 16:32:51',1515,555,'2005-08-08 15:28:51',2,'2006-02-15 21:30:53'),(9300,'2005-07-30 16:33:12',1639,571,'2005-08-05 15:56:12',1,'2006-02-15 21:30:53'),(9301,'2005-07-30 16:34:29',1073,174,'2005-07-31 18:41:29',2,'2006-02-15 21:30:53'),(9302,'2005-07-30 16:34:57',2326,55,'2005-07-31 11:08:57',2,'2006-02-15 21:30:53'),(9303,'2005-07-30 16:35:59',4299,186,'2005-08-03 18:31:59',1,'2006-02-15 21:30:53'),(9304,'2005-07-30 16:41:34',2937,296,'2005-08-02 13:55:34',2,'2006-02-15 21:30:53'),(9305,'2005-07-30 16:45:56',1224,82,'2005-08-08 21:15:56',2,'2006-02-15 21:30:53'),(9306,'2005-07-30 16:47:17',3983,336,'2005-08-02 22:15:17',1,'2006-02-15 21:30:53'),(9307,'2005-07-30 16:52:43',3831,538,'2005-08-01 11:58:43',1,'2006-02-15 21:30:53'),(9308,'2005-07-30 16:53:21',2202,267,'2005-08-08 15:33:21',2,'2006-02-15 21:30:53'),(9309,'2005-07-30 16:55:53',3616,30,'2005-08-07 11:23:53',1,'2006-02-15 21:30:53'),(9310,'2005-07-30 16:57:09',2957,529,'2005-08-03 18:14:09',1,'2006-02-15 21:30:53'),(9311,'2005-07-30 16:58:31',1432,178,'2005-08-07 15:23:31',1,'2006-02-15 21:30:53'),(9312,'2005-07-30 16:59:17',2483,76,'2005-08-03 17:24:17',2,'2006-02-15 21:30:53'),(9313,'2005-07-30 16:59:43',4070,41,'2005-08-05 14:06:43',2,'2006-02-15 21:30:53'),(9314,'2005-07-30 17:05:19',2358,390,'2005-07-31 12:19:19',1,'2006-02-15 21:30:53'),(9315,'2005-07-30 17:05:29',444,96,'2005-08-01 12:47:29',1,'2006-02-15 21:30:53'),(9316,'2005-07-30 17:11:58',4409,366,'2005-08-05 14:36:58',1,'2006-02-15 21:30:53'),(9317,'2005-07-30 17:13:37',4138,217,'2005-08-08 11:33:37',1,'2006-02-15 21:30:53'),(9318,'2005-07-30 17:14:30',2426,314,'2005-08-06 16:53:30',1,'2006-02-15 21:30:53'),(9319,'2005-07-30 17:15:27',4066,136,'2005-08-03 14:03:27',1,'2006-02-15 21:30:53'),(9320,'2005-07-30 17:16:39',909,221,'2005-08-06 18:43:39',2,'2006-02-15 21:30:53'),(9321,'2005-07-30 17:19:44',3558,112,'2005-08-06 22:42:44',2,'2006-02-15 21:30:53'),(9322,'2005-07-30 17:21:39',223,439,'2005-08-06 16:58:39',2,'2006-02-15 21:30:53'),(9323,'2005-07-30 17:21:44',3749,131,'2005-08-03 16:28:44',1,'2006-02-15 21:30:53'),(9324,'2005-07-30 17:28:52',1231,332,'2005-08-06 19:02:52',1,'2006-02-15 21:30:53'),(9325,'2005-07-30 17:29:19',1938,476,'2005-08-08 12:55:19',2,'2006-02-15 21:30:53'),(9326,'2005-07-30 17:30:03',3772,588,'2005-08-01 13:41:03',2,'2006-02-15 21:30:53'),(9327,'2005-07-30 17:31:03',345,373,'2005-08-08 19:16:03',1,'2006-02-15 21:30:53'),(9328,'2005-07-30 17:32:11',1087,89,'2005-08-05 13:36:11',1,'2006-02-15 21:30:53'),(9329,'2005-07-30 17:42:38',1293,593,'2005-08-08 23:17:38',1,'2006-02-15 21:30:53'),(9330,'2005-07-30 17:44:24',4227,232,'2005-08-08 17:39:24',1,'2006-02-15 21:30:53'),(9331,'2005-07-30 17:46:50',2248,274,'2005-08-01 19:03:50',1,'2006-02-15 21:30:53'),(9332,'2005-07-30 17:53:39',1156,480,'2005-08-02 12:25:39',1,'2006-02-15 21:30:53'),(9333,'2005-07-30 17:53:45',1377,437,'2005-07-31 22:35:45',2,'2006-02-15 21:30:53'),(9334,'2005-07-30 17:56:38',1499,25,'2005-08-03 21:27:38',1,'2006-02-15 21:30:53'),(9335,'2005-07-30 18:00:53',1006,522,'2005-08-01 16:05:53',1,'2006-02-15 21:30:53'),(9336,'2005-07-30 18:01:15',1911,557,'2005-08-05 23:10:15',1,'2006-02-15 21:30:53'),(9337,'2005-07-30 18:02:25',2363,90,'2005-07-31 12:30:25',2,'2006-02-15 21:30:53'),(9338,'2005-07-30 18:03:13',1482,333,'2005-08-08 23:57:13',2,'2006-02-15 21:30:53'),(9339,'2005-07-30 18:03:28',3171,68,'2005-08-08 19:45:28',2,'2006-02-15 21:30:53'),(9340,'2005-07-30 18:07:16',3228,213,'2005-08-04 14:33:16',2,'2006-02-15 21:30:53'),(9341,'2005-07-30 18:07:58',894,557,'2005-08-01 17:43:58',1,'2006-02-15 21:30:53'),(9342,'2005-07-30 18:09:56',2318,552,'2005-08-08 13:54:56',2,'2006-02-15 21:30:53'),(9343,'2005-07-30 18:13:13',3521,53,'2005-08-02 13:48:13',1,'2006-02-15 21:30:53'),(9344,'2005-07-30 18:13:45',1005,396,'2005-08-07 15:23:45',2,'2006-02-15 21:30:53'),(9345,'2005-07-30 18:13:51',2042,436,'2005-08-07 13:45:51',2,'2006-02-15 21:30:53'),(9346,'2005-07-30 18:13:52',2845,196,'2005-08-03 17:58:52',1,'2006-02-15 21:30:53'),(9347,'2005-07-30 18:16:03',3557,479,'2005-08-05 18:35:03',1,'2006-02-15 21:30:53'),(9348,'2005-07-30 18:17:09',3128,87,'2005-08-07 15:25:09',1,'2006-02-15 21:30:53'),(9349,'2005-07-30 18:20:08',3739,579,'2005-08-08 22:06:08',1,'2006-02-15 21:30:53'),(9350,'2005-07-30 18:24:30',798,434,'2005-08-02 15:34:30',2,'2006-02-15 21:30:53'),(9351,'2005-07-30 18:28:30',2063,107,'2005-08-02 17:26:30',1,'2006-02-15 21:30:53'),(9352,'2005-07-30 18:29:26',2619,360,'2005-07-31 19:43:26',1,'2006-02-15 21:30:53'),(9353,'2005-07-30 18:30:37',3581,283,'2005-08-06 22:32:37',2,'2006-02-15 21:30:53'),(9354,'2005-07-30 18:32:51',510,595,'2005-08-02 21:28:51',2,'2006-02-15 21:30:53'),(9355,'2005-07-30 18:35:25',1122,201,'2005-08-03 20:33:25',2,'2006-02-15 21:30:53'),(9356,'2005-07-30 18:36:24',4188,60,'2005-08-03 14:10:24',1,'2006-02-15 21:30:53'),(9357,'2005-07-30 18:37:00',3927,181,'2005-08-08 19:57:00',2,'2006-02-15 21:30:53'),(9358,'2005-07-30 18:37:24',712,302,'2005-08-07 23:34:24',2,'2006-02-15 21:30:53'),(9359,'2005-07-30 18:39:28',21,501,'2005-07-31 15:39:28',1,'2006-02-15 21:30:53'),(9360,'2005-07-30 18:39:43',2119,186,'2005-08-04 22:41:43',2,'2006-02-15 21:30:53'),(9361,'2005-07-30 18:43:49',4163,335,'2005-08-06 21:24:49',1,'2006-02-15 21:30:53'),(9362,'2005-07-30 18:44:16',3357,420,'2005-08-01 20:14:16',1,'2006-02-15 21:30:53'),(9363,'2005-07-30 18:44:23',873,323,'2005-08-04 15:03:23',1,'2006-02-15 21:30:53'),(9364,'2005-07-30 18:44:44',306,87,'2005-08-08 23:55:44',2,'2006-02-15 21:30:53'),(9365,'2005-07-30 18:46:02',1539,232,'2005-08-03 20:15:02',1,'2006-02-15 21:30:53'),(9366,'2005-07-30 18:48:57',4013,557,'2005-08-03 15:17:57',2,'2006-02-15 21:30:53'),(9367,'2005-07-30 18:49:58',793,557,'2005-08-08 22:04:58',1,'2006-02-15 21:30:53'),(9368,'2005-07-30 18:50:53',3026,388,'2005-08-05 17:56:53',2,'2006-02-15 21:30:53'),(9369,'2005-07-30 18:52:19',3538,36,'2005-08-01 12:53:19',1,'2006-02-15 21:30:53'),(9370,'2005-07-30 18:57:29',4433,588,'2005-08-01 21:35:29',2,'2006-02-15 21:30:53'),(9371,'2005-07-30 18:58:00',2980,4,'2005-08-03 15:14:00',1,'2006-02-15 21:30:53'),(9372,'2005-07-30 19:04:30',4075,454,'2005-08-09 00:18:30',2,'2006-02-15 21:30:53'),(9373,'2005-07-30 19:05:36',3478,180,'2005-08-05 16:16:36',2,'2006-02-15 21:30:53'),(9374,'2005-07-30 19:10:03',103,302,'2005-08-06 21:54:03',2,'2006-02-15 21:30:53'),(9375,'2005-07-30 19:10:17',3063,529,'2005-08-02 23:00:17',1,'2006-02-15 21:30:53'),(9376,'2005-07-30 19:11:49',451,86,'2005-08-04 18:14:49',1,'2006-02-15 21:30:53'),(9377,'2005-07-30 19:12:18',4164,421,'2005-08-05 19:38:18',1,'2006-02-15 21:30:53'),(9378,'2005-07-30 19:12:54',2209,197,'2005-08-05 18:16:54',1,'2006-02-15 21:30:53'),(9379,'2005-07-30 19:13:01',3855,452,'2005-08-07 19:18:01',2,'2006-02-15 21:30:53'),(9380,'2005-07-30 19:17:31',4403,264,'2005-08-01 20:46:31',1,'2006-02-15 21:30:53'),(9381,'2005-07-30 19:23:04',4064,329,'2005-07-31 23:37:04',2,'2006-02-15 21:30:53'),(9382,'2005-07-30 19:23:44',2127,17,'2005-08-06 16:20:44',2,'2006-02-15 21:30:53'),(9383,'2005-07-30 19:24:50',2806,416,'2005-08-01 21:41:50',2,'2006-02-15 21:30:53'),(9384,'2005-07-30 19:25:35',2313,220,'2005-08-08 21:50:35',1,'2006-02-15 21:30:53'),(9385,'2005-07-30 19:25:49',3453,570,'2005-08-08 17:08:49',2,'2006-02-15 21:30:53'),(9386,'2005-07-30 19:26:21',1123,189,'2005-08-05 21:00:21',2,'2006-02-15 21:30:53'),(9387,'2005-07-30 19:27:05',577,495,'2005-08-07 21:19:05',2,'2006-02-15 21:30:53'),(9388,'2005-07-30 19:27:22',2116,332,'2005-08-08 15:31:22',2,'2006-02-15 21:30:53'),(9389,'2005-07-30 19:27:59',3124,198,'2005-08-04 18:25:59',2,'2006-02-15 21:30:53'),(9390,'2005-07-30 19:42:07',1794,103,'2005-08-01 23:17:07',1,'2006-02-15 21:30:53'),(9391,'2005-07-30 19:48:41',665,273,'2005-08-04 15:27:41',1,'2006-02-15 21:30:53'),(9392,'2005-07-30 19:50:13',2797,29,'2005-08-03 22:38:13',2,'2006-02-15 21:30:53'),(9393,'2005-07-30 20:04:48',843,158,'2005-08-02 15:52:48',2,'2006-02-15 21:30:53'),(9394,'2005-07-30 20:06:24',161,204,'2005-08-06 22:36:24',1,'2006-02-15 21:30:53'),(9395,'2005-07-30 20:07:06',1298,306,'2005-08-08 21:21:06',1,'2006-02-15 21:30:53'),(9396,'2005-07-30 20:07:24',1250,91,'2005-08-03 21:20:24',2,'2006-02-15 21:30:53'),(9397,'2005-07-30 20:07:29',1550,373,'2005-08-05 00:36:29',1,'2006-02-15 21:30:53'),(9398,'2005-07-30 20:09:00',1175,570,'2005-08-01 23:35:00',2,'2006-02-15 21:30:53'),(9399,'2005-07-30 20:14:50',3668,569,'2005-08-03 17:30:50',1,'2006-02-15 21:30:53'),(9400,'2005-07-30 20:15:58',3910,368,'2005-08-03 21:21:58',1,'2006-02-15 21:30:53'),(9401,'2005-07-30 20:18:19',2057,331,'2005-08-07 15:46:19',1,'2006-02-15 21:30:53'),(9402,'2005-07-30 20:18:27',2424,48,'2005-08-07 21:29:27',2,'2006-02-15 21:30:53'),(9403,'2005-07-30 20:18:53',3466,267,'2005-08-06 19:54:53',1,'2006-02-15 21:30:53'),(9404,'2005-07-30 20:21:35',3832,140,'2005-08-02 15:52:35',1,'2006-02-15 21:30:53'),(9405,'2005-07-30 20:22:17',1983,463,'2005-08-08 16:55:17',1,'2006-02-15 21:30:53'),(9406,'2005-07-30 20:24:00',3419,453,'2005-08-07 19:50:00',1,'2006-02-15 21:30:53'),(9407,'2005-07-30 20:25:24',2594,585,'2005-08-08 22:51:24',2,'2006-02-15 21:30:53'),(9408,'2005-07-30 20:32:09',4383,571,'2005-08-04 20:14:09',2,'2006-02-15 21:30:53'),(9409,'2005-07-30 20:33:53',3053,156,'2005-08-05 18:32:53',2,'2006-02-15 21:30:53'),(9410,'2005-07-30 20:38:05',1789,22,'2005-07-31 19:57:05',2,'2006-02-15 21:30:53'),(9411,'2005-07-30 20:38:22',3484,536,'2005-08-06 01:23:22',2,'2006-02-15 21:30:53'),(9412,'2005-07-30 20:44:10',2482,522,'2005-08-06 21:13:10',2,'2006-02-15 21:30:53'),(9413,'2005-07-30 20:44:39',2618,290,'2005-08-01 01:56:39',2,'2006-02-15 21:30:53'),(9414,'2005-07-30 20:46:02',578,484,'2005-08-07 21:23:02',2,'2006-02-15 21:30:53'),(9415,'2005-07-30 20:48:31',3336,139,'2005-08-05 19:45:31',2,'2006-02-15 21:30:53'),(9416,'2005-07-30 20:52:45',1470,265,'2005-08-02 17:38:45',2,'2006-02-15 21:30:53'),(9417,'2005-07-30 20:54:55',2509,519,'2005-08-04 00:54:55',2,'2006-02-15 21:30:53'),(9418,'2005-07-30 21:00:52',241,168,'2005-08-08 15:56:52',2,'2006-02-15 21:30:53'),(9419,'2005-07-30 21:04:59',4427,142,'2005-08-06 15:47:59',2,'2006-02-15 21:30:53'),(9420,'2005-07-30 21:05:18',147,72,'2005-08-05 23:52:18',2,'2006-02-15 21:30:53'),(9421,'2005-07-30 21:08:32',2206,161,'2005-08-02 00:43:32',1,'2006-02-15 21:30:53'),(9422,'2005-07-30 21:08:41',1843,470,'2005-08-07 15:55:41',1,'2006-02-15 21:30:53'),(9423,'2005-07-30 21:10:14',3145,242,'2005-08-07 16:34:14',2,'2006-02-15 21:30:53'),(9424,'2005-07-30 21:10:56',4499,256,'2005-08-05 00:01:56',1,'2006-02-15 21:30:53'),(9425,'2005-07-30 21:11:21',271,295,'2005-08-05 19:00:21',1,'2006-02-15 21:30:53'),(9427,'2005-07-30 21:16:33',1494,85,'2005-08-05 17:23:33',2,'2006-02-15 21:30:53'),(9428,'2005-07-30 21:18:37',1948,335,'2005-08-05 16:09:37',1,'2006-02-15 21:30:53'),(9429,'2005-07-30 21:19:26',1769,288,'2005-08-07 18:39:26',1,'2006-02-15 21:30:53'),(9430,'2005-07-30 21:20:13',1529,367,'2005-08-04 21:45:13',2,'2006-02-15 21:30:53'),(9431,'2005-07-30 21:24:22',3364,39,'2005-08-03 01:22:22',2,'2006-02-15 21:30:53'),(9432,'2005-07-30 21:26:18',2489,570,'2005-08-05 00:23:18',1,'2006-02-15 21:30:53'),(9433,'2005-07-30 21:28:17',1082,128,'2005-08-08 18:20:17',2,'2006-02-15 21:30:53'),(9434,'2005-07-30 21:29:41',3792,13,'2005-08-01 16:30:41',2,'2006-02-15 21:30:53'),(9435,'2005-07-30 21:31:02',3116,301,'2005-08-05 22:34:02',1,'2006-02-15 21:30:53'),(9436,'2005-07-30 21:33:01',2329,268,'2005-08-06 17:38:01',1,'2006-02-15 21:30:53'),(9437,'2005-07-30 21:36:04',1230,592,'2005-08-08 01:26:04',1,'2006-02-15 21:30:53'),(9438,'2005-07-30 21:36:15',121,14,'2005-08-07 16:54:15',2,'2006-02-15 21:30:53'),(9439,'2005-07-30 21:38:12',290,479,'2005-08-06 00:03:12',1,'2006-02-15 21:30:53'),(9440,'2005-07-30 21:40:15',414,535,'2005-08-04 15:45:15',2,'2006-02-15 21:30:53'),(9441,'2005-07-30 21:43:28',3982,519,'2005-08-08 16:57:28',1,'2006-02-15 21:30:53'),(9442,'2005-07-30 21:44:31',44,75,'2005-08-04 01:29:31',1,'2006-02-15 21:30:53'),(9443,'2005-07-30 21:45:46',1675,3,'2005-08-05 21:22:46',1,'2006-02-15 21:30:53'),(9444,'2005-07-30 21:48:44',1134,259,'2005-08-08 22:36:44',2,'2006-02-15 21:30:53'),(9445,'2005-07-30 21:50:42',1480,549,'2005-08-05 18:34:42',2,'2006-02-15 21:30:53'),(9446,'2005-07-30 21:53:01',1880,477,'2005-08-06 19:00:01',2,'2006-02-15 21:30:53'),(9447,'2005-07-30 21:54:22',1053,82,'2005-08-09 01:07:22',2,'2006-02-15 21:30:53'),(9448,'2005-07-30 21:56:13',1213,278,'2005-08-04 18:03:13',1,'2006-02-15 21:30:53'),(9449,'2005-07-30 22:02:34',2,581,'2005-08-06 02:09:34',1,'2006-02-15 21:30:53'),(9450,'2005-07-30 22:04:04',1371,430,'2005-08-05 18:39:04',2,'2006-02-15 21:30:53'),(9451,'2005-07-30 22:10:17',685,584,'2005-08-07 02:53:17',2,'2006-02-15 21:30:53'),(9452,'2005-07-30 22:19:16',3178,130,'2005-08-04 19:26:16',1,'2006-02-15 21:30:53'),(9453,'2005-07-30 22:20:04',1988,221,'2005-08-08 02:27:04',1,'2006-02-15 21:30:53'),(9454,'2005-07-30 22:20:09',3028,81,'2005-08-04 01:33:09',2,'2006-02-15 21:30:53'),(9455,'2005-07-30 22:20:29',2647,220,'2005-08-08 20:08:29',1,'2006-02-15 21:30:53'),(9456,'2005-07-30 22:22:16',2068,534,'2005-08-05 18:56:16',2,'2006-02-15 21:30:53'),(9457,'2005-07-30 22:23:05',2172,487,'2005-07-31 23:07:05',2,'2006-02-15 21:30:53'),(9458,'2005-07-30 22:24:34',3105,343,'2005-08-04 21:26:34',2,'2006-02-15 21:30:53'),(9459,'2005-07-30 22:24:46',1132,489,'2005-08-02 00:44:46',2,'2006-02-15 21:30:53'),(9460,'2005-07-30 22:25:39',4463,580,'2005-08-08 20:56:39',2,'2006-02-15 21:30:53'),(9461,'2005-07-30 22:29:13',1679,377,'2005-08-05 20:55:13',2,'2006-02-15 21:30:53'),(9462,'2005-07-30 22:30:44',4090,192,'2005-08-09 03:54:44',2,'2006-02-15 21:30:53'),(9463,'2005-07-30 22:30:57',883,352,'2005-08-03 22:53:57',1,'2006-02-15 21:30:53'),(9464,'2005-07-30 22:31:31',3904,534,'2005-08-07 01:10:31',2,'2006-02-15 21:30:53'),(9465,'2005-07-30 22:39:53',3084,2,'2005-08-06 16:43:53',2,'2006-02-15 21:30:53'),(9466,'2005-07-30 22:44:36',2595,137,'2005-08-07 02:35:36',2,'2006-02-15 21:30:53'),(9467,'2005-07-30 22:45:34',1905,202,'2005-08-08 00:58:34',2,'2006-02-15 21:30:53'),(9468,'2005-07-30 22:53:52',4366,20,'2005-08-07 00:22:52',2,'2006-02-15 21:30:53'),(9469,'2005-07-30 22:56:34',967,59,'2005-08-07 03:16:34',2,'2006-02-15 21:30:53'),(9470,'2005-07-30 23:01:31',3908,566,'2005-08-07 01:35:31',2,'2006-02-15 21:30:53'),(9471,'2005-07-30 23:02:36',2390,424,'2005-08-04 17:49:36',1,'2006-02-15 21:30:53'),(9472,'2005-07-30 23:03:32',4178,404,'2005-08-01 18:02:32',1,'2006-02-15 21:30:53'),(9473,'2005-07-30 23:04:13',1717,185,'2005-08-04 21:48:13',2,'2006-02-15 21:30:53'),(9474,'2005-07-30 23:05:44',3771,206,'2005-08-05 23:46:44',1,'2006-02-15 21:30:53'),(9475,'2005-07-30 23:06:33',2186,567,'2005-08-04 23:23:33',1,'2006-02-15 21:30:53'),(9476,'2005-07-30 23:06:40',3599,197,'2005-08-04 22:52:40',2,'2006-02-15 21:30:53'),(9477,'2005-07-30 23:07:22',1932,213,'2005-08-04 20:54:22',1,'2006-02-15 21:30:53'),(9478,'2005-07-30 23:12:53',1139,283,'2005-08-04 02:41:53',1,'2006-02-15 21:30:53'),(9479,'2005-07-30 23:22:09',3461,308,'2005-07-31 22:26:09',2,'2006-02-15 21:30:53'),(9480,'2005-07-30 23:26:03',597,373,'2005-08-04 21:18:03',2,'2006-02-15 21:30:53'),(9481,'2005-07-30 23:26:05',613,481,'2005-08-04 17:46:05',1,'2006-02-15 21:30:53'),(9482,'2005-07-30 23:29:16',2421,348,'2005-08-02 20:37:16',2,'2006-02-15 21:30:53'),(9483,'2005-07-30 23:31:31',1136,593,'2005-08-09 04:29:31',2,'2006-02-15 21:30:53'),(9484,'2005-07-30 23:31:40',3389,26,'2005-08-02 18:25:40',1,'2006-02-15 21:30:53'),(9485,'2005-07-30 23:32:40',3722,338,'2005-08-08 17:44:40',1,'2006-02-15 21:30:53'),(9486,'2005-07-30 23:35:42',2787,403,'2005-08-09 02:08:42',2,'2006-02-15 21:30:53'),(9487,'2005-07-30 23:40:22',2165,406,'2005-08-01 22:29:22',1,'2006-02-15 21:30:53'),(9488,'2005-07-30 23:42:42',4221,528,'2005-08-08 22:15:42',1,'2006-02-15 21:30:53'),(9489,'2005-07-30 23:43:32',4011,17,'2005-07-31 20:45:32',2,'2006-02-15 21:30:53'),(9490,'2005-07-30 23:45:09',1302,487,'2005-08-07 18:50:09',1,'2006-02-15 21:30:53'),(9491,'2005-07-30 23:45:23',3624,179,'2005-08-01 00:33:23',2,'2006-02-15 21:30:53'),(9492,'2005-07-30 23:52:21',639,126,'2005-08-08 20:50:21',2,'2006-02-15 21:30:53'),(9493,'2005-07-30 23:52:30',1522,5,'2005-08-08 05:22:30',1,'2006-02-15 21:30:53'),(9494,'2005-07-30 23:52:46',3799,254,'2005-08-05 23:13:46',2,'2006-02-15 21:30:53'),(9495,'2005-07-30 23:54:26',2128,397,'2005-08-01 22:02:26',2,'2006-02-15 21:30:53'),(9496,'2005-07-30 23:55:20',453,125,'2005-08-02 02:47:20',2,'2006-02-15 21:30:53'),(9497,'2005-07-30 23:56:54',933,595,'2005-08-04 19:52:54',1,'2006-02-15 21:30:53'),(9498,'2005-07-30 23:56:55',1035,289,'2005-08-03 18:34:55',2,'2006-02-15 21:30:53'),(9499,'2005-07-30 23:58:30',602,461,'2005-08-01 00:55:30',2,'2006-02-15 21:30:53'),(9500,'2005-07-30 23:58:36',2808,241,'2005-08-07 21:08:36',2,'2006-02-15 21:30:53'),(9501,'2005-07-30 23:59:21',4398,75,'2005-08-05 19:50:21',2,'2006-02-15 21:30:53'),(9502,'2005-07-31 00:02:10',2700,471,'2005-08-01 19:47:10',1,'2006-02-15 21:30:53'),(9503,'2005-07-31 00:02:38',1013,311,'2005-08-06 06:01:38',1,'2006-02-15 21:30:53'),(9504,'2005-07-31 00:09:07',91,125,'2005-08-02 05:44:07',1,'2006-02-15 21:30:53'),(9505,'2005-07-31 00:11:19',4047,543,'2005-08-05 18:24:19',2,'2006-02-15 21:30:53'),(9506,'2005-07-31 00:19:01',3872,189,'2005-08-02 00:20:01',1,'2006-02-15 21:30:53'),(9507,'2005-07-31 00:22:29',387,525,'2005-08-07 05:59:29',2,'2006-02-15 21:30:53'),(9508,'2005-07-31 00:22:39',1204,316,'2005-08-04 05:40:39',1,'2006-02-15 21:30:53'),(9509,'2005-07-31 00:22:42',818,320,'2005-08-03 23:24:42',1,'2006-02-15 21:30:53'),(9510,'2005-07-31 00:24:17',2301,494,'2005-08-08 18:47:17',2,'2006-02-15 21:30:53'),(9511,'2005-07-31 00:25:05',964,549,'2005-08-09 02:46:05',1,'2006-02-15 21:30:53'),(9512,'2005-07-31 00:26:30',3786,173,'2005-08-04 23:43:30',2,'2006-02-15 21:30:53'),(9513,'2005-07-31 00:28:30',396,317,'2005-08-01 00:22:30',2,'2006-02-15 21:30:53'),(9514,'2005-07-31 00:29:44',1892,243,'2005-08-02 23:49:44',1,'2006-02-15 21:30:53'),(9515,'2005-07-31 00:35:05',3099,264,'2005-08-02 23:35:05',2,'2006-02-15 21:30:53'),(9516,'2005-07-31 00:40:58',3519,424,'2005-08-07 02:13:58',2,'2006-02-15 21:30:53'),(9517,'2005-07-31 00:41:23',3299,170,'2005-08-02 23:08:23',1,'2006-02-15 21:30:53'),(9518,'2005-07-31 00:43:26',2714,215,'2005-08-04 19:12:26',2,'2006-02-15 21:30:53'),(9519,'2005-07-31 00:45:57',3767,235,'2005-08-06 00:59:57',2,'2006-02-15 21:30:53'),(9520,'2005-07-31 00:50:54',1306,299,'2005-08-04 20:05:54',1,'2006-02-15 21:30:53'),(9521,'2005-07-31 00:52:24',1423,227,'2005-08-06 03:33:24',2,'2006-02-15 21:30:53'),(9522,'2005-07-31 00:55:11',4266,294,'2005-08-03 06:41:11',2,'2006-02-15 21:30:53'),(9523,'2005-07-31 00:56:09',891,356,'2005-08-05 05:44:09',2,'2006-02-15 21:30:53'),(9524,'2005-07-31 01:01:06',1796,535,'2005-08-04 04:06:06',2,'2006-02-15 21:30:53'),(9525,'2005-07-31 01:02:18',2990,246,'2005-08-06 21:31:18',1,'2006-02-15 21:30:53'),(9526,'2005-07-31 01:02:22',417,342,'2005-08-04 03:00:22',1,'2006-02-15 21:30:53'),(9527,'2005-07-31 01:02:24',2539,200,'2005-08-09 02:08:24',2,'2006-02-15 21:30:53'),(9528,'2005-07-31 01:05:04',193,241,'2005-08-07 01:16:04',1,'2006-02-15 21:30:53'),(9529,'2005-07-31 01:05:26',816,123,'2005-08-02 22:30:26',2,'2006-02-15 21:30:53'),(9530,'2005-07-31 01:09:06',1718,148,'2005-08-04 23:47:06',2,'2006-02-15 21:30:53'),(9531,'2005-07-31 01:11:53',4550,268,'2005-08-07 02:49:53',1,'2006-02-15 21:30:53'),(9532,'2005-07-31 01:16:51',1309,488,'2005-08-01 20:23:51',1,'2006-02-15 21:30:53'),(9533,'2005-07-31 01:18:10',4156,522,'2005-08-07 19:58:10',1,'2006-02-15 21:30:53'),(9534,'2005-07-31 01:18:27',4457,519,'2005-08-06 00:28:27',1,'2006-02-15 21:30:53'),(9535,'2005-07-31 01:18:53',2413,485,'2005-08-04 03:04:53',2,'2006-02-15 21:30:53'),(9536,'2005-07-31 01:19:02',2547,310,'2005-08-02 19:38:02',1,'2006-02-15 21:30:53'),(9537,'2005-07-31 01:23:00',546,488,'2005-08-01 01:16:00',2,'2006-02-15 21:30:53'),(9538,'2005-07-31 01:25:22',3402,68,'2005-08-06 00:10:22',2,'2006-02-15 21:30:53'),(9539,'2005-07-31 01:36:19',3793,436,'2005-08-04 23:47:19',1,'2006-02-15 21:30:53'),(9540,'2005-07-31 01:40:06',2200,365,'2005-08-01 01:09:06',1,'2006-02-15 21:30:53'),(9541,'2005-07-31 01:40:14',1774,422,'2005-08-05 06:34:14',2,'2006-02-15 21:30:53'),(9542,'2005-07-31 01:41:48',2243,595,'2005-08-01 00:49:48',2,'2006-02-15 21:30:53'),(9543,'2005-07-31 01:43:34',956,369,'2005-08-01 06:49:34',1,'2006-02-15 21:30:53'),(9544,'2005-07-31 01:44:51',2383,28,'2005-08-05 05:25:51',2,'2006-02-15 21:30:53'),(9545,'2005-07-31 01:46:24',3451,594,'2005-08-09 06:11:24',1,'2006-02-15 21:30:53'),(9546,'2005-07-31 01:47:40',211,63,'2005-08-02 07:25:40',2,'2006-02-15 21:30:53'),(9547,'2005-07-31 01:52:34',2414,440,'2005-08-03 23:12:34',2,'2006-02-15 21:30:53'),(9548,'2005-07-31 01:54:19',3038,576,'2005-08-05 00:50:19',2,'2006-02-15 21:30:53'),(9549,'2005-07-31 01:57:04',2409,63,'2005-08-07 21:00:04',2,'2006-02-15 21:30:53'),(9550,'2005-07-31 01:57:34',2233,583,'2005-08-08 23:33:34',1,'2006-02-15 21:30:53'),(9551,'2005-07-31 02:04:58',1260,30,'2005-08-06 04:07:58',2,'2006-02-15 21:30:53'),(9552,'2005-07-31 02:05:32',3544,261,'2005-08-01 06:59:32',1,'2006-02-15 21:30:53'),(9553,'2005-07-31 02:06:34',4187,579,'2005-08-08 02:20:34',1,'2006-02-15 21:30:53'),(9554,'2005-07-31 02:06:49',2581,490,'2005-08-01 22:27:49',1,'2006-02-15 21:30:53'),(9555,'2005-07-31 02:11:16',2108,382,'2005-08-03 06:58:16',2,'2006-02-15 21:30:53'),(9556,'2005-07-31 02:13:30',3269,521,'2005-08-08 06:46:30',1,'2006-02-15 21:30:53'),(9557,'2005-07-31 02:14:01',708,328,'2005-08-05 23:55:01',1,'2006-02-15 21:30:53'),(9558,'2005-07-31 02:14:35',1161,418,'2005-08-06 03:00:35',1,'2006-02-15 21:30:53'),(9559,'2005-07-31 02:15:53',2882,159,'2005-08-08 02:38:53',1,'2006-02-15 21:30:53'),(9560,'2005-07-31 02:17:27',4236,471,'2005-08-07 03:33:27',1,'2006-02-15 21:30:53'),(9561,'2005-07-31 02:22:13',1079,58,'2005-08-03 07:00:13',2,'2006-02-15 21:30:53'),(9562,'2005-07-31 02:23:20',1571,116,'2005-08-06 21:01:20',2,'2006-02-15 21:30:53'),(9563,'2005-07-31 02:28:39',3858,167,'2005-08-05 22:10:39',1,'2006-02-15 21:30:53'),(9564,'2005-07-31 02:31:37',383,377,'2005-08-03 22:57:37',2,'2006-02-15 21:30:53'),(9565,'2005-07-31 02:32:00',3621,485,'2005-08-04 05:45:00',1,'2006-02-15 21:30:53'),(9566,'2005-07-31 02:32:10',643,346,'2005-08-02 23:54:10',2,'2006-02-15 21:30:53'),(9567,'2005-07-31 02:36:11',3688,37,'2005-08-07 01:19:11',2,'2006-02-15 21:30:53'),(9568,'2005-07-31 02:37:44',1248,358,'2005-08-02 07:07:44',2,'2006-02-15 21:30:53'),(9569,'2005-07-31 02:39:38',813,405,'2005-08-02 05:09:38',2,'2006-02-15 21:30:53'),(9570,'2005-07-31 02:40:37',591,385,'2005-08-01 01:59:37',1,'2006-02-15 21:30:53'),(9571,'2005-07-31 02:42:18',2219,1,'2005-08-02 23:26:18',2,'2006-02-15 21:30:53'),(9572,'2005-07-31 02:44:10',1453,283,'2005-08-01 03:30:10',2,'2006-02-15 21:30:53'),(9573,'2005-07-31 02:45:38',3745,59,'2005-08-09 04:31:38',2,'2006-02-15 21:30:53'),(9574,'2005-07-31 02:49:20',2782,233,'2005-08-05 02:36:20',2,'2006-02-15 21:30:53'),(9575,'2005-07-31 02:51:53',3971,193,'2005-08-03 20:54:53',2,'2006-02-15 21:30:53'),(9576,'2005-07-31 02:52:59',3327,145,'2005-08-05 23:35:59',2,'2006-02-15 21:30:53'),(9577,'2005-07-31 02:53:33',2423,526,'2005-08-07 05:56:33',1,'2006-02-15 21:30:53'),(9578,'2005-07-31 02:54:31',2965,115,'2005-08-02 02:48:31',1,'2006-02-15 21:30:53'),(9579,'2005-07-31 02:59:20',3547,35,'2005-08-06 03:52:20',2,'2006-02-15 21:30:53'),(9580,'2005-07-31 03:01:11',532,22,'2005-08-05 06:01:11',1,'2006-02-15 21:30:53'),(9581,'2005-07-31 03:03:07',2588,302,'2005-08-05 23:01:07',1,'2006-02-15 21:30:53'),(9582,'2005-07-31 03:05:19',3913,347,'2005-08-04 07:26:19',1,'2006-02-15 21:30:53'),(9583,'2005-07-31 03:05:21',3543,568,'2005-08-06 00:14:21',2,'2006-02-15 21:30:53'),(9584,'2005-07-31 03:05:48',419,141,'2005-08-01 05:50:48',2,'2006-02-15 21:30:53'),(9585,'2005-07-31 03:05:55',3249,197,'2005-08-02 23:54:55',2,'2006-02-15 21:30:53'),(9586,'2005-07-31 03:07:16',3987,415,'2005-08-04 00:39:16',1,'2006-02-15 21:30:53'),(9587,'2005-07-31 03:10:30',2966,235,'2005-08-06 06:54:30',2,'2006-02-15 21:30:53'),(9588,'2005-07-31 03:13:13',1368,499,'2005-08-02 04:06:13',1,'2006-02-15 21:30:53'),(9589,'2005-07-31 03:13:29',2604,574,'2005-08-09 01:51:29',2,'2006-02-15 21:30:53'),(9590,'2005-07-31 03:17:16',2293,585,'2005-08-08 04:24:16',1,'2006-02-15 21:30:53'),(9591,'2005-07-31 03:19:28',504,97,'2005-08-01 07:30:28',1,'2006-02-15 21:30:53'),(9592,'2005-07-31 03:21:16',1828,14,'2005-08-05 08:32:16',1,'2006-02-15 21:30:53'),(9593,'2005-07-31 03:22:30',1223,28,'2005-08-05 08:23:30',1,'2006-02-15 21:30:53'),(9594,'2005-07-31 03:23:52',4382,148,'2005-08-04 23:06:52',1,'2006-02-15 21:30:53'),(9595,'2005-07-31 03:27:58',2829,3,'2005-08-03 05:58:58',1,'2006-02-15 21:30:53'),(9596,'2005-07-31 03:28:47',2847,55,'2005-08-04 03:43:47',2,'2006-02-15 21:30:53'),(9597,'2005-07-31 03:29:07',3317,61,'2005-08-09 03:33:07',2,'2006-02-15 21:30:53'),(9598,'2005-07-31 03:30:41',1105,468,'2005-08-04 03:54:41',1,'2006-02-15 21:30:53'),(9599,'2005-07-31 03:32:06',3164,502,'2005-08-04 07:47:06',2,'2006-02-15 21:30:53'),(9600,'2005-07-31 03:35:34',3731,464,'2005-08-08 22:50:34',1,'2006-02-15 21:30:53'),(9601,'2005-07-31 03:42:17',1592,553,'2005-08-04 02:02:17',2,'2006-02-15 21:30:53'),(9602,'2005-07-31 03:42:51',3173,386,'2005-08-01 08:39:51',1,'2006-02-15 21:30:53'),(9603,'2005-07-31 03:43:43',2266,541,'2005-08-02 00:11:43',2,'2006-02-15 21:30:53'),(9604,'2005-07-31 03:47:12',4342,580,'2005-08-03 06:48:12',1,'2006-02-15 21:30:53'),(9605,'2005-07-31 03:50:07',1477,94,'2005-08-07 09:15:07',2,'2006-02-15 21:30:53'),(9606,'2005-07-31 03:50:46',1357,253,'2005-08-01 05:29:46',2,'2006-02-15 21:30:53'),(9607,'2005-07-31 03:51:06',3414,294,'2005-08-02 00:18:06',2,'2006-02-15 21:30:53'),(9608,'2005-07-31 03:51:52',363,397,'2005-08-06 05:38:52',2,'2006-02-15 21:30:53'),(9609,'2005-07-31 03:53:24',693,112,'2005-08-05 08:32:24',2,'2006-02-15 21:30:53'),(9610,'2005-07-31 03:54:05',3110,16,'2005-08-06 23:11:05',1,'2006-02-15 21:30:53'),(9611,'2005-07-31 03:54:43',1976,215,'2005-08-05 03:54:43',2,'2006-02-15 21:30:53'),(9612,'2005-07-31 03:58:31',2142,69,'2005-08-04 07:34:31',2,'2006-02-15 21:30:53'),(9613,'2005-07-31 03:58:53',3251,188,'2005-08-02 00:10:53',1,'2006-02-15 21:30:53'),(9614,'2005-07-31 03:59:31',2955,548,'2005-08-08 04:19:31',1,'2006-02-15 21:30:53'),(9615,'2005-07-31 03:59:56',3370,50,'2005-08-02 00:46:56',2,'2006-02-15 21:30:53'),(9616,'2005-07-31 04:05:01',1210,550,'2005-08-05 00:10:01',1,'2006-02-15 21:30:53'),(9617,'2005-07-31 04:15:38',529,102,'2005-08-02 04:24:38',1,'2006-02-15 21:30:53'),(9618,'2005-07-31 04:16:14',2688,253,'2005-08-07 02:43:14',2,'2006-02-15 21:30:53'),(9619,'2005-07-31 04:17:02',1730,138,'2005-08-05 06:36:02',2,'2006-02-15 21:30:53'),(9620,'2005-07-31 04:19:18',2177,576,'2005-08-08 09:20:18',1,'2006-02-15 21:30:53'),(9621,'2005-07-31 04:21:08',325,38,'2005-08-08 03:50:08',2,'2006-02-15 21:30:53'),(9622,'2005-07-31 04:21:45',2255,411,'2005-08-02 09:20:45',1,'2006-02-15 21:30:53'),(9623,'2005-07-31 04:30:02',113,360,'2005-08-06 23:34:02',1,'2006-02-15 21:30:53'),(9624,'2005-07-31 04:30:03',3480,7,'2005-08-06 09:13:03',1,'2006-02-15 21:30:53'),(9625,'2005-07-31 04:30:48',1703,445,'2005-08-03 01:12:48',1,'2006-02-15 21:30:53'),(9626,'2005-07-31 04:37:41',2216,546,'2005-08-08 04:00:41',1,'2006-02-15 21:30:53'),(9627,'2005-07-31 04:42:46',471,12,'2005-08-08 00:42:46',2,'2006-02-15 21:30:53'),(9628,'2005-07-31 04:51:11',1387,565,'2005-07-31 23:11:11',2,'2006-02-15 21:30:53'),(9629,'2005-07-31 04:54:43',2773,8,'2005-08-02 08:36:43',1,'2006-02-15 21:30:53'),(9630,'2005-07-31 04:57:07',2008,599,'2005-08-07 10:55:07',2,'2006-02-15 21:30:53'),(9631,'2005-07-31 05:02:00',321,595,'2005-08-02 02:04:00',2,'2006-02-15 21:30:53'),(9632,'2005-07-31 05:02:23',3368,217,'2005-08-06 04:49:23',2,'2006-02-15 21:30:53'),(9633,'2005-07-31 05:04:08',1141,334,'2005-08-06 00:52:08',2,'2006-02-15 21:30:53'),(9634,'2005-07-31 05:06:02',924,444,'2005-08-04 06:53:02',1,'2006-02-15 21:30:53'),(9635,'2005-07-31 05:12:27',1687,371,'2005-08-02 00:24:27',2,'2006-02-15 21:30:53'),(9636,'2005-07-31 05:12:59',1725,27,'2005-08-09 07:31:59',2,'2006-02-15 21:30:53'),(9637,'2005-07-31 05:18:54',3013,130,'2005-08-03 01:23:54',2,'2006-02-15 21:30:53'),(9638,'2005-07-31 05:30:27',1616,436,'2005-08-09 02:04:27',1,'2006-02-15 21:30:53'),(9639,'2005-07-31 05:32:10',1373,459,'2005-08-03 07:04:10',2,'2006-02-15 21:30:53'),(9640,'2005-07-31 05:33:25',1067,67,'2005-08-09 09:41:25',1,'2006-02-15 21:30:53'),(9641,'2005-07-31 05:33:48',1085,30,'2005-08-04 07:43:48',1,'2006-02-15 21:30:53'),(9642,'2005-07-31 05:33:57',3550,68,'2005-08-05 04:54:57',1,'2006-02-15 21:30:53'),(9643,'2005-07-31 05:35:48',3576,538,'2005-08-08 04:28:48',2,'2006-02-15 21:30:53'),(9644,'2005-07-31 05:40:35',4577,441,'2005-08-09 08:18:35',1,'2006-02-15 21:30:53'),(9645,'2005-07-31 05:42:49',3413,519,'2005-08-04 00:08:49',1,'2006-02-15 21:30:53'),(9646,'2005-07-31 05:43:28',3756,89,'2005-08-08 04:00:28',1,'2006-02-15 21:30:53'),(9647,'2005-07-31 05:45:15',3415,475,'2005-08-06 08:54:15',1,'2006-02-15 21:30:53'),(9648,'2005-07-31 05:46:03',4063,72,'2005-08-09 04:36:03',2,'2006-02-15 21:30:53'),(9649,'2005-07-31 05:46:54',1588,51,'2005-08-04 08:42:54',2,'2006-02-15 21:30:53'),(9650,'2005-07-31 05:47:32',2997,414,'2005-08-04 00:50:32',2,'2006-02-15 21:30:53'),(9651,'2005-07-31 05:48:49',4059,324,'2005-08-04 06:53:49',1,'2006-02-15 21:30:53'),(9652,'2005-07-31 05:49:53',448,207,'2005-08-06 07:38:53',2,'2006-02-15 21:30:53'),(9653,'2005-07-31 05:55:38',1451,383,'2005-08-03 09:35:38',2,'2006-02-15 21:30:53'),(9654,'2005-07-31 05:57:42',3286,506,'2005-08-06 04:19:42',1,'2006-02-15 21:30:53'),(9655,'2005-07-31 05:57:54',3403,435,'2005-08-06 02:00:54',1,'2006-02-15 21:30:53'),(9656,'2005-07-31 06:00:21',4215,39,'2005-08-05 04:36:21',1,'2006-02-15 21:30:53'),(9657,'2005-07-31 06:00:41',2681,402,'2005-08-06 06:51:41',2,'2006-02-15 21:30:53'),(9658,'2005-07-31 06:00:52',2332,282,'2005-08-09 04:47:52',2,'2006-02-15 21:30:53'),(9659,'2005-07-31 06:02:14',4262,360,'2005-08-07 00:54:14',2,'2006-02-15 21:30:53'),(9660,'2005-07-31 06:03:17',1090,406,'2005-08-07 06:59:17',2,'2006-02-15 21:30:53'),(9661,'2005-07-31 06:06:37',2693,237,'2005-08-04 07:37:37',1,'2006-02-15 21:30:53'),(9662,'2005-07-31 06:09:53',2757,96,'2005-08-08 00:50:53',2,'2006-02-15 21:30:53'),(9663,'2005-07-31 06:10:48',2099,339,'2005-08-01 11:40:48',2,'2006-02-15 21:30:53'),(9664,'2005-07-31 06:12:08',360,13,'2005-08-04 02:19:08',2,'2006-02-15 21:30:53'),(9665,'2005-07-31 06:17:33',2863,478,'2005-08-04 08:53:33',1,'2006-02-15 21:30:53'),(9666,'2005-07-31 06:20:58',4318,592,'2005-08-06 06:09:58',2,'2006-02-15 21:30:53'),(9667,'2005-07-31 06:23:52',4289,523,'2005-08-09 09:12:52',1,'2006-02-15 21:30:53'),(9668,'2005-07-31 06:31:03',1647,378,'2005-08-07 06:19:03',2,'2006-02-15 21:30:53'),(9669,'2005-07-31 06:31:36',4496,277,'2005-08-08 03:05:36',2,'2006-02-15 21:30:53'),(9670,'2005-07-31 06:33:33',3709,349,'2005-08-07 04:51:33',1,'2006-02-15 21:30:53'),(9671,'2005-07-31 06:33:41',920,133,'2005-08-02 07:50:41',1,'2006-02-15 21:30:53'),(9672,'2005-07-31 06:34:06',4394,183,'2005-08-08 10:29:06',2,'2006-02-15 21:30:53'),(9673,'2005-07-31 06:34:55',339,27,'2005-08-09 09:15:55',2,'2006-02-15 21:30:53'),(9674,'2005-07-31 06:36:53',3213,297,'2005-08-06 02:50:53',2,'2006-02-15 21:30:53'),(9675,'2005-07-31 06:37:07',2523,243,'2005-08-03 07:03:07',1,'2006-02-15 21:30:53'),(9676,'2005-07-31 06:39:13',681,239,'2005-08-05 09:31:13',2,'2006-02-15 21:30:53'),(9677,'2005-07-31 06:39:45',3200,274,'2005-08-01 02:37:45',2,'2006-02-15 21:30:53'),(9678,'2005-07-31 06:40:47',3430,383,'2005-08-02 00:57:47',2,'2006-02-15 21:30:53'),(9679,'2005-07-31 06:41:19',3819,599,'2005-08-02 07:23:19',1,'2006-02-15 21:30:53'),(9680,'2005-07-31 06:41:46',3010,84,'2005-08-01 11:02:46',2,'2006-02-15 21:30:53'),(9681,'2005-07-31 06:42:09',64,160,'2005-08-06 08:21:09',1,'2006-02-15 21:30:53'),(9682,'2005-07-31 06:47:10',2427,425,'2005-08-04 09:07:10',1,'2006-02-15 21:30:53'),(9683,'2005-07-31 06:47:13',856,141,'2005-08-04 05:52:13',2,'2006-02-15 21:30:53'),(9684,'2005-07-31 06:48:33',362,591,'2005-08-01 07:07:33',2,'2006-02-15 21:30:53'),(9685,'2005-07-31 06:49:18',3097,165,'2005-08-04 03:19:18',1,'2006-02-15 21:30:53'),(9686,'2005-07-31 06:50:06',3825,386,'2005-08-06 08:41:06',1,'2006-02-15 21:30:53'),(9687,'2005-07-31 06:52:54',3540,470,'2005-08-01 03:40:54',2,'2006-02-15 21:30:53'),(9688,'2005-07-31 06:56:08',1304,566,'2005-08-08 03:31:08',2,'2006-02-15 21:30:53'),(9689,'2005-07-31 07:00:08',819,498,'2005-08-04 03:33:08',2,'2006-02-15 21:30:53'),(9690,'2005-07-31 07:06:29',4449,468,'2005-08-06 09:45:29',2,'2006-02-15 21:30:53'),(9691,'2005-07-31 07:09:55',2626,50,'2005-08-09 02:29:55',1,'2006-02-15 21:30:53'),(9692,'2005-07-31 07:11:04',3481,295,'2005-08-07 06:34:04',2,'2006-02-15 21:30:53'),(9693,'2005-07-31 07:11:50',1031,273,'2005-08-08 09:55:50',1,'2006-02-15 21:30:53'),(9694,'2005-07-31 07:13:16',3447,508,'2005-08-06 09:12:16',2,'2006-02-15 21:30:53'),(9695,'2005-07-31 07:13:30',726,95,'2005-08-07 05:38:30',2,'2006-02-15 21:30:53'),(9696,'2005-07-31 07:13:46',2703,156,'2005-08-03 10:49:46',2,'2006-02-15 21:30:53'),(9697,'2005-07-31 07:23:11',762,479,'2005-08-05 08:04:11',2,'2006-02-15 21:30:53'),(9698,'2005-07-31 07:24:35',3477,594,'2005-08-09 04:52:35',2,'2006-02-15 21:30:53'),(9699,'2005-07-31 07:29:25',199,21,'2005-08-06 01:35:25',1,'2006-02-15 21:30:53'),(9700,'2005-07-31 07:29:59',2678,40,'2005-08-02 09:53:59',1,'2006-02-15 21:30:53'),(9701,'2005-07-31 07:32:21',4581,401,'2005-08-01 05:07:21',2,'2006-02-15 21:30:53'),(9702,'2005-07-31 07:34:07',3353,525,'2005-08-02 06:13:07',2,'2006-02-15 21:30:53'),(9703,'2005-07-31 07:34:52',2708,57,'2005-08-03 13:33:52',2,'2006-02-15 21:30:53'),(9704,'2005-07-31 07:39:32',1402,385,'2005-08-06 01:50:32',2,'2006-02-15 21:30:53'),(9705,'2005-07-31 07:40:33',4158,28,'2005-08-01 03:50:33',2,'2006-02-15 21:30:53'),(9706,'2005-07-31 07:43:19',142,508,'2005-08-05 11:11:19',1,'2006-02-15 21:30:53'),(9707,'2005-07-31 07:44:18',203,351,'2005-08-08 12:45:18',1,'2006-02-15 21:30:53'),(9708,'2005-07-31 07:45:33',3264,12,'2005-08-08 08:56:33',1,'2006-02-15 21:30:53'),(9709,'2005-07-31 08:04:55',2096,137,'2005-08-07 08:58:55',1,'2006-02-15 21:30:53'),(9710,'2005-07-31 08:05:31',3486,380,'2005-08-09 03:29:31',2,'2006-02-15 21:30:53'),(9711,'2005-07-31 08:06:41',1525,231,'2005-08-02 10:30:41',2,'2006-02-15 21:30:53'),(9712,'2005-07-31 08:13:11',2487,219,'2005-08-08 12:40:11',2,'2006-02-15 21:30:53'),(9713,'2005-07-31 08:13:28',929,158,'2005-08-07 10:11:28',1,'2006-02-15 21:30:53'),(9714,'2005-07-31 08:15:32',1532,144,'2005-08-03 08:33:32',2,'2006-02-15 21:30:53'),(9715,'2005-07-31 08:16:58',3319,237,'2005-08-04 11:13:58',1,'2006-02-15 21:30:53'),(9716,'2005-07-31 08:23:53',3385,287,'2005-08-08 12:03:53',2,'2006-02-15 21:30:53'),(9717,'2005-07-31 08:24:41',4207,114,'2005-08-04 02:51:41',1,'2006-02-15 21:30:53'),(9718,'2005-07-31 08:25:03',2747,23,'2005-08-08 04:16:03',2,'2006-02-15 21:30:53'),(9719,'2005-07-31 08:25:13',335,584,'2005-08-05 08:22:13',1,'2006-02-15 21:30:53'),(9720,'2005-07-31 08:25:21',1282,587,'2005-08-07 11:30:21',2,'2006-02-15 21:30:53'),(9721,'2005-07-31 08:28:46',3942,196,'2005-08-05 14:03:46',1,'2006-02-15 21:30:53'),(9722,'2005-07-31 08:29:48',4260,125,'2005-08-07 07:52:48',2,'2006-02-15 21:30:53'),(9723,'2005-07-31 08:31:18',3968,24,'2005-08-03 10:25:18',1,'2006-02-15 21:30:53'),(9724,'2005-07-31 08:33:08',518,130,'2005-08-08 04:50:08',1,'2006-02-15 21:30:53'),(9725,'2005-07-31 08:35:18',3960,503,'2005-08-03 03:46:18',2,'2006-02-15 21:30:53'),(9726,'2005-07-31 08:37:07',1701,162,'2005-08-09 06:09:07',1,'2006-02-15 21:30:53'),(9727,'2005-07-31 08:39:13',3076,536,'2005-08-03 07:54:13',1,'2006-02-15 21:30:53'),(9728,'2005-07-31 08:40:54',3630,399,'2005-08-03 04:14:54',2,'2006-02-15 21:30:53'),(9729,'2005-07-31 08:43:43',4199,273,'2005-08-01 13:25:43',2,'2006-02-15 21:30:53'),(9730,'2005-07-31 08:50:08',2605,242,'2005-08-08 12:21:08',2,'2006-02-15 21:30:53'),(9731,'2005-07-31 08:54:47',3713,349,'2005-08-05 03:47:47',1,'2006-02-15 21:30:53'),(9732,'2005-07-31 08:56:08',3262,288,'2005-08-07 11:05:08',2,'2006-02-15 21:30:53'),(9733,'2005-07-31 08:57:35',1255,575,'2005-08-04 04:47:35',1,'2006-02-15 21:30:53'),(9734,'2005-07-31 08:57:45',3320,125,'2005-08-05 11:57:45',1,'2006-02-15 21:30:53'),(9735,'2005-07-31 08:57:49',4228,315,'2005-08-08 13:51:49',2,'2006-02-15 21:30:53'),(9736,'2005-07-31 08:58:40',2072,13,'2005-08-09 08:34:40',2,'2006-02-15 21:30:53'),(9737,'2005-07-31 08:59:18',1720,475,'2005-08-03 12:19:18',2,'2006-02-15 21:30:53'),(9738,'2005-07-31 09:04:14',2278,568,'2005-08-05 14:40:14',2,'2006-02-15 21:30:53'),(9739,'2005-07-31 09:08:03',1328,343,'2005-08-04 13:57:03',1,'2006-02-15 21:30:53'),(9740,'2005-07-31 09:08:03',3497,443,'2005-08-06 04:48:03',2,'2006-02-15 21:30:53'),(9741,'2005-07-31 09:09:22',1971,495,'2005-08-07 10:01:22',1,'2006-02-15 21:30:53'),(9742,'2005-07-31 09:10:20',4058,48,'2005-08-08 10:07:20',1,'2006-02-15 21:30:53'),(9743,'2005-07-31 09:12:42',1740,476,'2005-08-06 11:57:42',2,'2006-02-15 21:30:53'),(9744,'2005-07-31 09:15:38',839,459,'2005-08-03 10:31:38',2,'2006-02-15 21:30:53'),(9745,'2005-07-31 09:16:14',3610,217,'2005-08-07 12:11:14',1,'2006-02-15 21:30:53'),(9746,'2005-07-31 09:16:48',1459,308,'2005-08-07 06:36:48',2,'2006-02-15 21:30:53'),(9747,'2005-07-31 09:16:57',2455,106,'2005-08-08 06:47:57',2,'2006-02-15 21:30:53'),(9748,'2005-07-31 09:17:56',3308,550,'2005-08-02 14:54:56',1,'2006-02-15 21:30:53'),(9749,'2005-07-31 09:18:33',658,52,'2005-08-06 07:41:33',1,'2006-02-15 21:30:53'),(9750,'2005-07-31 09:19:46',3174,527,'2005-08-06 08:07:46',1,'2006-02-15 21:30:53'),(9751,'2005-07-31 09:20:50',36,202,'2005-08-01 05:34:50',2,'2006-02-15 21:30:53'),(9752,'2005-07-31 09:22:02',249,199,'2005-08-02 14:34:02',1,'2006-02-15 21:30:53'),(9753,'2005-07-31 09:22:38',3529,98,'2005-08-01 08:45:38',1,'2006-02-15 21:30:53'),(9754,'2005-07-31 09:23:43',3751,479,'2005-08-08 06:04:43',1,'2006-02-15 21:30:53'),(9755,'2005-07-31 09:24:55',86,108,'2005-08-07 06:00:55',2,'2006-02-15 21:30:53'),(9756,'2005-07-31 09:25:00',207,400,'2005-08-02 05:11:00',1,'2006-02-15 21:30:53'),(9757,'2005-07-31 09:25:14',2596,408,'2005-08-01 14:43:14',2,'2006-02-15 21:30:53'),(9758,'2005-07-31 09:25:38',1307,160,'2005-08-03 14:16:38',1,'2006-02-15 21:30:53'),(9759,'2005-07-31 09:25:57',2950,574,'2005-08-07 12:56:57',2,'2006-02-15 21:30:53'),(9760,'2005-07-31 09:29:33',426,511,'2005-08-09 07:32:33',2,'2006-02-15 21:30:53'),(9761,'2005-07-31 09:31:54',3778,60,'2005-08-03 11:02:54',2,'2006-02-15 21:30:53'),(9762,'2005-07-31 09:32:54',155,540,'2005-08-05 04:55:54',1,'2006-02-15 21:30:53'),(9763,'2005-07-31 09:34:03',126,393,'2005-08-08 05:30:03',1,'2006-02-15 21:30:53'),(9764,'2005-07-31 09:42:58',3761,136,'2005-08-07 07:22:58',2,'2006-02-15 21:30:53'),(9765,'2005-07-31 09:44:40',472,551,'2005-08-05 10:57:40',1,'2006-02-15 21:30:53'),(9766,'2005-07-31 09:46:29',4049,570,'2005-08-01 05:08:29',1,'2006-02-15 21:30:53'),(9767,'2005-07-31 09:46:49',3432,89,'2005-08-03 11:20:49',1,'2006-02-15 21:30:53'),(9768,'2005-07-31 09:48:41',2656,582,'2005-08-08 11:40:41',2,'2006-02-15 21:30:53'),(9769,'2005-07-31 09:52:16',2958,484,'2005-08-06 09:26:16',1,'2006-02-15 21:30:53'),(9770,'2005-07-31 09:52:40',1226,317,'2005-08-09 06:44:40',1,'2006-02-15 21:30:53'),(9771,'2005-07-31 09:55:36',4123,398,'2005-08-04 10:11:36',2,'2006-02-15 21:30:53'),(9772,'2005-07-31 09:56:07',3639,147,'2005-08-01 13:50:07',2,'2006-02-15 21:30:53'),(9773,'2005-07-31 09:56:56',4555,376,'2005-08-04 09:38:56',1,'2006-02-15 21:30:53'),(9774,'2005-07-31 09:57:51',4174,306,'2005-08-02 09:08:51',2,'2006-02-15 21:30:53'),(9775,'2005-07-31 10:00:00',2818,162,'2005-08-01 08:57:00',2,'2006-02-15 21:30:53'),(9776,'2005-07-31 10:01:03',2524,73,'2005-08-03 07:20:03',2,'2006-02-15 21:30:53'),(9777,'2005-07-31 10:01:06',225,539,'2005-08-08 04:44:06',2,'2006-02-15 21:30:53'),(9778,'2005-07-31 10:02:04',304,230,'2005-08-04 07:44:04',2,'2006-02-15 21:30:53'),(9779,'2005-07-31 10:08:33',1280,402,'2005-08-03 14:56:33',1,'2006-02-15 21:30:53'),(9780,'2005-07-31 10:10:22',3241,102,'2005-08-02 11:43:22',1,'2006-02-15 21:30:53'),(9781,'2005-07-31 10:13:02',2310,155,'2005-08-09 14:46:02',1,'2006-02-15 21:30:53'),(9782,'2005-07-31 10:14:26',2397,438,'2005-08-06 16:11:26',1,'2006-02-15 21:30:53'),(9783,'2005-07-31 10:15:46',836,75,'2005-08-09 13:22:46',2,'2006-02-15 21:30:53'),(9784,'2005-07-31 10:21:32',2761,362,'2005-08-07 09:20:32',2,'2006-02-15 21:30:53'),(9785,'2005-07-31 10:22:15',4101,587,'2005-08-02 10:02:15',1,'2006-02-15 21:30:53'),(9786,'2005-07-31 10:25:21',2560,586,'2005-08-03 04:28:21',1,'2006-02-15 21:30:53'),(9787,'2005-07-31 10:26:19',3559,272,'2005-08-09 09:02:19',1,'2006-02-15 21:30:53'),(9788,'2005-07-31 10:28:21',4367,344,'2005-08-09 13:45:21',1,'2006-02-15 21:30:53'),(9789,'2005-07-31 10:30:25',619,137,'2005-08-03 14:58:25',1,'2006-02-15 21:30:53'),(9790,'2005-07-31 10:34:08',3643,284,'2005-08-04 11:19:08',2,'2006-02-15 21:30:53'),(9791,'2005-07-31 10:35:22',3642,300,'2005-08-03 05:34:22',1,'2006-02-15 21:30:53'),(9792,'2005-07-31 10:43:41',3163,292,'2005-08-07 10:18:41',1,'2006-02-15 21:30:53'),(9793,'2005-07-31 10:45:11',4576,295,'2005-08-03 14:29:11',1,'2006-02-15 21:30:53'),(9794,'2005-07-31 10:47:01',1771,403,'2005-08-02 06:52:01',2,'2006-02-15 21:30:53'),(9795,'2005-07-31 10:47:19',2005,63,'2005-08-04 09:32:19',2,'2006-02-15 21:30:53'),(9796,'2005-07-31 10:52:43',1038,539,'2005-08-09 06:08:43',1,'2006-02-15 21:30:53'),(9797,'2005-07-31 10:53:44',687,52,'2005-08-09 05:51:44',1,'2006-02-15 21:30:53'),(9798,'2005-07-31 10:55:18',3759,55,'2005-08-01 07:37:18',2,'2006-02-15 21:30:53'),(9799,'2005-07-31 10:58:32',3008,494,'2005-08-01 12:08:32',1,'2006-02-15 21:30:53'),(9800,'2005-07-31 11:00:58',2153,257,'2005-08-02 10:13:58',2,'2006-02-15 21:30:53'),(9801,'2005-07-31 11:03:13',3033,158,'2005-08-04 10:55:13',2,'2006-02-15 21:30:53'),(9802,'2005-07-31 11:04:20',2156,594,'2005-08-03 05:28:20',1,'2006-02-15 21:30:53'),(9803,'2005-07-31 11:06:02',3783,520,'2005-08-01 06:25:02',1,'2006-02-15 21:30:53'),(9804,'2005-07-31 11:07:39',2490,196,'2005-08-09 11:57:39',1,'2006-02-15 21:30:53'),(9805,'2005-07-31 11:11:10',4179,36,'2005-08-03 07:36:10',2,'2006-02-15 21:30:53'),(9806,'2005-07-31 11:13:49',245,46,'2005-08-04 06:18:49',1,'2006-02-15 21:30:53'),(9807,'2005-07-31 11:13:52',2137,267,'2005-08-02 07:34:52',1,'2006-02-15 21:30:53'),(9808,'2005-07-31 11:17:22',3259,583,'2005-08-07 15:54:22',1,'2006-02-15 21:30:53'),(9809,'2005-07-31 11:19:21',359,286,'2005-08-08 12:43:21',2,'2006-02-15 21:30:53'),(9810,'2005-07-31 11:22:41',2066,545,'2005-08-01 09:40:41',2,'2006-02-15 21:30:53'),(9811,'2005-07-31 11:23:45',3305,77,'2005-08-06 15:51:45',1,'2006-02-15 21:30:53'),(9812,'2005-07-31 11:28:07',1540,57,'2005-08-01 12:35:07',2,'2006-02-15 21:30:53'),(9813,'2005-07-31 11:29:23',1706,245,'2005-08-07 08:01:23',2,'2006-02-15 21:30:53'),(9814,'2005-07-31 11:29:46',136,79,'2005-08-08 15:49:46',1,'2006-02-15 21:30:53'),(9815,'2005-07-31 11:30:51',2728,540,'2005-08-08 12:52:51',1,'2006-02-15 21:30:53'),(9816,'2005-07-31 11:32:58',4560,3,'2005-08-04 17:12:58',2,'2006-02-15 21:30:53'),(9817,'2005-07-31 11:33:31',4019,170,'2005-08-08 14:49:31',2,'2006-02-15 21:30:53'),(9818,'2005-07-31 11:34:32',1254,183,'2005-08-04 08:20:32',1,'2006-02-15 21:30:53'),(9819,'2005-07-31 11:39:13',1927,292,'2005-08-06 09:11:13',2,'2006-02-15 21:30:53'),(9820,'2005-07-31 11:46:57',499,279,'2005-08-08 13:35:57',1,'2006-02-15 21:30:53'),(9821,'2005-07-31 11:47:54',386,271,'2005-08-08 06:21:54',2,'2006-02-15 21:30:53'),(9822,'2005-07-31 11:48:25',2469,381,'2005-08-05 15:52:25',2,'2006-02-15 21:30:53'),(9823,'2005-07-31 11:49:00',4423,129,'2005-08-07 09:06:00',2,'2006-02-15 21:30:53'),(9824,'2005-07-31 11:49:55',4368,404,'2005-08-07 16:54:55',2,'2006-02-15 21:30:53'),(9825,'2005-07-31 11:50:51',4322,390,'2005-08-02 07:18:51',1,'2006-02-15 21:30:53'),(9826,'2005-07-31 11:51:46',2649,595,'2005-08-09 17:18:46',1,'2006-02-15 21:30:53'),(9827,'2005-07-31 11:56:55',3840,329,'2005-08-09 16:29:55',1,'2006-02-15 21:30:53'),(9828,'2005-07-31 11:56:57',3845,376,'2005-08-02 17:05:57',1,'2006-02-15 21:30:53'),(9829,'2005-07-31 11:58:38',231,435,'2005-08-07 08:11:38',2,'2006-02-15 21:30:53'),(9830,'2005-07-31 11:59:05',170,112,'2005-08-06 10:38:05',1,'2006-02-15 21:30:53'),(9831,'2005-07-31 11:59:32',1961,192,'2005-08-04 07:14:32',1,'2006-02-15 21:30:53'),(9832,'2005-07-31 12:01:49',3126,64,'2005-08-08 09:21:49',1,'2006-02-15 21:30:53'),(9833,'2005-07-31 12:05:01',4243,368,'2005-08-09 09:25:01',2,'2006-02-15 21:30:53'),(9834,'2005-07-31 12:05:42',2292,340,'2005-08-07 15:26:42',1,'2006-02-15 21:30:53'),(9835,'2005-07-31 12:07:35',1051,328,'2005-08-04 07:32:35',2,'2006-02-15 21:30:53'),(9836,'2005-07-31 12:12:00',2870,313,'2005-08-09 06:53:00',1,'2006-02-15 21:30:53'),(9837,'2005-07-31 12:14:19',3488,573,'2005-08-09 17:08:19',1,'2006-02-15 21:30:53'),(9838,'2005-07-31 12:18:49',3866,208,'2005-08-03 16:49:49',2,'2006-02-15 21:30:53'),(9839,'2005-07-31 12:21:16',1591,561,'2005-08-09 13:41:16',2,'2006-02-15 21:30:53'),(9840,'2005-07-31 12:23:18',364,388,'2005-08-06 15:59:18',1,'2006-02-15 21:30:53'),(9841,'2005-07-31 12:24:19',4554,238,'2005-08-09 15:31:19',1,'2006-02-15 21:30:53'),(9842,'2005-07-31 12:24:58',2896,261,'2005-08-02 11:01:58',2,'2006-02-15 21:30:53'),(9843,'2005-07-31 12:25:28',2923,532,'2005-08-01 09:51:28',2,'2006-02-15 21:30:53'),(9844,'2005-07-31 12:26:31',3930,181,'2005-08-05 13:58:31',1,'2006-02-15 21:30:53'),(9845,'2005-07-31 12:28:05',2417,79,'2005-08-06 06:47:05',1,'2006-02-15 21:30:53'),(9846,'2005-07-31 12:30:12',4240,573,'2005-08-05 08:24:12',2,'2006-02-15 21:30:53'),(9847,'2005-07-31 12:33:43',1137,174,'2005-08-04 14:15:43',2,'2006-02-15 21:30:53'),(9848,'2005-07-31 12:44:33',3290,346,'2005-08-07 13:49:33',2,'2006-02-15 21:30:53'),(9849,'2005-07-31 12:44:34',2230,429,'2005-08-02 16:49:34',1,'2006-02-15 21:30:53'),(9850,'2005-07-31 12:46:52',1461,497,'2005-08-04 10:52:52',2,'2006-02-15 21:30:53'),(9851,'2005-07-31 12:50:24',25,49,'2005-08-08 08:30:24',2,'2006-02-15 21:30:53'),(9852,'2005-07-31 12:52:17',4257,415,'2005-08-05 07:59:17',2,'2006-02-15 21:30:53'),(9853,'2005-07-31 12:58:20',1782,221,'2005-08-04 10:47:20',1,'2006-02-15 21:30:53'),(9854,'2005-07-31 12:59:34',1049,441,'2005-08-03 07:20:34',2,'2006-02-15 21:30:53'),(9855,'2005-07-31 13:00:33',1246,326,'2005-08-03 16:18:33',2,'2006-02-15 21:30:53'),(9856,'2005-07-31 13:00:35',723,347,'2005-08-07 18:07:35',1,'2006-02-15 21:30:53'),(9857,'2005-07-31 13:00:53',3316,168,'2005-08-09 15:56:53',1,'2006-02-15 21:30:53'),(9858,'2005-07-31 13:02:07',252,128,'2005-08-03 15:14:07',2,'2006-02-15 21:30:53'),(9859,'2005-07-31 13:02:55',4094,127,'2005-08-05 11:04:55',1,'2006-02-15 21:30:53'),(9860,'2005-07-31 13:03:24',3266,585,'2005-08-07 07:28:24',2,'2006-02-15 21:30:53'),(9861,'2005-07-31 13:04:14',1050,264,'2005-08-09 15:22:14',1,'2006-02-15 21:30:53'),(9862,'2005-07-31 13:05:03',474,513,'2005-08-01 09:05:03',2,'2006-02-15 21:30:53'),(9863,'2005-07-31 13:05:29',19,239,'2005-08-08 12:33:29',1,'2006-02-15 21:30:53'),(9864,'2005-07-31 13:06:54',3619,394,'2005-08-02 11:47:54',2,'2006-02-15 21:30:53'),(9865,'2005-07-31 13:10:45',1355,580,'2005-08-02 09:19:45',2,'2006-02-15 21:30:53'),(9866,'2005-07-31 13:13:50',3555,374,'2005-08-07 15:11:50',1,'2006-02-15 21:30:53'),(9867,'2005-07-31 13:17:04',2485,83,'2005-08-05 07:17:04',2,'2006-02-15 21:30:53'),(9868,'2005-07-31 13:20:08',266,378,'2005-08-01 18:17:08',2,'2006-02-15 21:30:53'),(9869,'2005-07-31 13:21:54',783,261,'2005-08-07 09:09:54',1,'2006-02-15 21:30:53'),(9870,'2005-07-31 13:22:51',442,195,'2005-08-05 16:04:51',1,'2006-02-15 21:30:53'),(9871,'2005-07-31 13:25:46',194,109,'2005-08-01 13:12:46',2,'2006-02-15 21:30:53'),(9872,'2005-07-31 13:27:55',1021,376,'2005-08-04 14:33:55',1,'2006-02-15 21:30:53'),(9873,'2005-07-31 13:32:18',667,442,'2005-08-06 11:15:18',2,'2006-02-15 21:30:53'),(9874,'2005-07-31 13:32:31',2476,482,'2005-08-07 09:50:31',2,'2006-02-15 21:30:53'),(9875,'2005-07-31 13:37:41',2878,421,'2005-08-03 15:17:41',2,'2006-02-15 21:30:53'),(9876,'2005-07-31 13:37:51',828,347,'2005-08-07 18:05:51',2,'2006-02-15 21:30:53'),(9877,'2005-07-31 13:41:57',1299,559,'2005-08-06 15:27:57',2,'2006-02-15 21:30:53'),(9878,'2005-07-31 13:42:02',1753,424,'2005-08-05 10:15:02',2,'2006-02-15 21:30:53'),(9879,'2005-07-31 13:45:32',1935,178,'2005-08-07 17:12:32',1,'2006-02-15 21:30:53'),(9880,'2005-07-31 13:49:02',3590,64,'2005-08-08 10:31:02',2,'2006-02-15 21:30:53'),(9881,'2005-07-31 13:50:38',4209,412,'2005-08-06 08:58:38',1,'2006-02-15 21:30:53'),(9882,'2005-07-31 13:53:33',1429,311,'2005-08-09 15:55:33',1,'2006-02-15 21:30:53'),(9883,'2005-07-31 13:53:37',4286,356,'2005-08-06 15:45:37',1,'2006-02-15 21:30:53'),(9884,'2005-07-31 13:56:24',511,590,'2005-08-01 16:59:24',1,'2006-02-15 21:30:53'),(9885,'2005-07-31 13:59:32',3600,461,'2005-08-07 12:30:32',2,'2006-02-15 21:30:53'),(9886,'2005-07-31 14:00:13',1386,519,'2005-08-08 19:30:13',1,'2006-02-15 21:30:53'),(9887,'2005-07-31 14:00:32',436,549,'2005-08-05 19:16:32',1,'2006-02-15 21:30:53'),(9888,'2005-07-31 14:00:53',4400,5,'2005-08-08 18:51:53',2,'2006-02-15 21:30:53'),(9889,'2005-07-31 14:02:50',2842,143,'2005-08-05 12:09:50',2,'2006-02-15 21:30:53'),(9890,'2005-07-31 14:04:44',1024,151,'2005-08-01 11:24:44',1,'2006-02-15 21:30:53'),(9891,'2005-07-31 14:05:44',3359,462,'2005-08-02 16:21:44',2,'2006-02-15 21:30:53'),(9892,'2005-07-31 14:06:25',1045,251,'2005-08-03 18:11:25',2,'2006-02-15 21:30:53'),(9893,'2005-07-31 14:07:21',2445,179,'2005-08-01 09:20:21',2,'2006-02-15 21:30:53'),(9894,'2005-07-31 14:07:44',3724,199,'2005-08-05 18:01:44',2,'2006-02-15 21:30:53'),(9895,'2005-07-31 14:07:56',835,560,'2005-08-05 14:56:56',1,'2006-02-15 21:30:53'),(9896,'2005-07-31 14:09:48',2591,586,'2005-08-01 20:02:48',1,'2006-02-15 21:30:53'),(9897,'2005-07-31 14:11:57',3945,538,'2005-08-02 12:20:57',1,'2006-02-15 21:30:53'),(9898,'2005-07-31 14:12:03',2151,359,'2005-08-01 12:27:03',1,'2006-02-15 21:30:53'),(9899,'2005-07-31 14:12:36',3352,168,'2005-08-08 08:59:36',1,'2006-02-15 21:30:53'),(9900,'2005-07-31 14:15:05',3132,453,'2005-08-07 11:58:05',2,'2006-02-15 21:30:53'),(9901,'2005-07-31 14:20:59',3332,277,'2005-08-03 09:30:59',1,'2006-02-15 21:30:53'),(9902,'2005-07-31 14:24:33',486,218,'2005-08-09 11:11:33',2,'2006-02-15 21:30:53'),(9903,'2005-07-31 14:31:44',1621,316,'2005-08-08 20:03:44',1,'2006-02-15 21:30:53'),(9904,'2005-07-31 14:34:17',4089,428,'2005-08-08 17:19:17',1,'2006-02-15 21:30:53'),(9905,'2005-07-31 14:37:03',2839,519,'2005-08-01 15:55:03',2,'2006-02-15 21:30:53'),(9906,'2005-07-31 14:38:12',4241,204,'2005-08-01 13:56:12',1,'2006-02-15 21:30:53'),(9907,'2005-07-31 14:39:50',4282,120,'2005-08-09 09:39:50',1,'2006-02-15 21:30:53'),(9908,'2005-07-31 14:39:52',4408,27,'2005-08-09 09:46:52',2,'2006-02-15 21:30:53'),(9909,'2005-07-31 14:43:34',2600,587,'2005-08-09 15:31:34',1,'2006-02-15 21:30:53'),(9910,'2005-07-31 14:47:57',368,122,'2005-08-05 18:20:57',1,'2006-02-15 21:30:53'),(9911,'2005-07-31 14:48:01',3879,112,'2005-08-06 11:55:01',1,'2006-02-15 21:30:53'),(9912,'2005-07-31 14:49:04',3119,367,'2005-08-03 15:40:04',1,'2006-02-15 21:30:53'),(9913,'2005-07-31 14:51:04',3744,229,'2005-08-06 12:12:04',1,'2006-02-15 21:30:53'),(9914,'2005-07-31 14:51:19',3147,530,'2005-08-05 09:51:19',1,'2006-02-15 21:30:53'),(9915,'2005-07-31 14:52:26',2933,566,'2005-08-03 11:53:26',1,'2006-02-15 21:30:53'),(9916,'2005-07-31 14:54:52',949,432,'2005-08-07 13:18:52',1,'2006-02-15 21:30:53'),(9917,'2005-07-31 14:55:11',3829,159,'2005-08-02 13:58:11',2,'2006-02-15 21:30:53'),(9918,'2005-07-31 14:55:22',2519,283,'2005-08-04 09:02:22',2,'2006-02-15 21:30:53'),(9919,'2005-07-31 14:55:46',3205,291,'2005-08-08 11:43:46',2,'2006-02-15 21:30:53'),(9920,'2005-07-31 14:57:13',3108,139,'2005-08-03 18:58:13',2,'2006-02-15 21:30:53'),(9921,'2005-07-31 14:59:21',1004,332,'2005-08-01 12:40:21',2,'2006-02-15 21:30:53'),(9922,'2005-07-31 14:59:37',3615,25,'2005-08-06 14:05:37',1,'2006-02-15 21:30:53'),(9923,'2005-07-31 15:00:15',1635,209,'2005-08-05 11:09:15',2,'2006-02-15 21:30:53'),(9924,'2005-07-31 15:04:57',1986,64,'2005-08-05 20:07:57',2,'2006-02-15 21:30:53'),(9925,'2005-07-31 15:08:47',2351,24,'2005-08-02 20:27:47',1,'2006-02-15 21:30:53'),(9926,'2005-07-31 15:11:51',3733,472,'2005-08-09 18:26:51',1,'2006-02-15 21:30:53'),(9927,'2005-07-31 15:12:13',999,346,'2005-08-01 11:37:13',1,'2006-02-15 21:30:53'),(9928,'2005-07-31 15:13:57',3627,53,'2005-08-06 20:39:57',1,'2006-02-15 21:30:53'),(9929,'2005-07-31 15:17:24',2521,564,'2005-08-03 17:27:24',1,'2006-02-15 21:30:53'),(9930,'2005-07-31 15:18:03',4491,304,'2005-08-01 12:36:03',2,'2006-02-15 21:30:53'),(9931,'2005-07-31 15:18:19',3455,183,'2005-08-04 14:23:19',2,'2006-02-15 21:30:53'),(9932,'2005-07-31 15:19:48',1691,264,'2005-08-05 21:09:48',1,'2006-02-15 21:30:53'),(9933,'2005-07-31 15:24:46',2349,111,'2005-08-01 10:00:46',1,'2006-02-15 21:30:53'),(9934,'2005-07-31 15:25:26',2492,236,'2005-08-05 17:13:26',1,'2006-02-15 21:30:53'),(9935,'2005-07-31 15:27:07',2247,10,'2005-08-05 11:23:07',1,'2006-02-15 21:30:53'),(9936,'2005-07-31 15:27:41',979,153,'2005-08-06 16:25:41',1,'2006-02-15 21:30:53'),(9937,'2005-07-31 15:28:10',3697,521,'2005-08-06 21:20:10',2,'2006-02-15 21:30:53'),(9938,'2005-07-31 15:28:47',2871,63,'2005-08-09 21:24:47',2,'2006-02-15 21:30:53'),(9939,'2005-07-31 15:29:00',3049,538,'2005-08-08 11:09:00',1,'2006-02-15 21:30:53'),(9940,'2005-07-31 15:29:06',3975,388,'2005-08-06 14:26:06',2,'2006-02-15 21:30:53'),(9941,'2005-07-31 15:31:25',1756,175,'2005-08-05 17:23:25',1,'2006-02-15 21:30:53'),(9942,'2005-07-31 15:35:43',4573,545,'2005-08-07 17:37:43',2,'2006-02-15 21:30:53'),(9943,'2005-07-31 15:37:29',887,494,'2005-08-09 18:25:29',1,'2006-02-15 21:30:53'),(9944,'2005-07-31 15:44:43',2540,241,'2005-08-08 10:30:43',1,'2006-02-15 21:30:53'),(9945,'2005-07-31 15:47:51',2075,309,'2005-08-02 19:06:51',1,'2006-02-15 21:30:53'),(9946,'2005-07-31 15:48:54',2100,29,'2005-08-03 12:42:54',2,'2006-02-15 21:30:53'),(9947,'2005-07-31 15:49:40',1173,138,'2005-08-08 11:11:40',1,'2006-02-15 21:30:53'),(9948,'2005-07-31 15:49:41',806,342,'2005-08-06 12:36:41',1,'2006-02-15 21:30:53'),(9949,'2005-07-31 15:50:10',3258,309,'2005-08-01 17:53:10',2,'2006-02-15 21:30:53'),(9950,'2005-07-31 15:50:22',1657,572,'2005-08-08 19:10:22',2,'2006-02-15 21:30:53'),(9951,'2005-07-31 15:51:16',4412,95,'2005-08-03 14:54:16',1,'2006-02-15 21:30:53'),(9952,'2005-07-31 15:52:37',1634,128,'2005-08-06 10:50:37',2,'2006-02-15 21:30:53'),(9953,'2005-07-31 15:56:35',1646,211,'2005-08-02 12:01:35',2,'2006-02-15 21:30:53'),(9954,'2005-07-31 15:57:07',1830,463,'2005-08-05 12:04:07',2,'2006-02-15 21:30:53'),(9955,'2005-07-31 16:01:26',1745,342,'2005-08-04 11:15:26',2,'2006-02-15 21:30:53'),(9956,'2005-07-31 16:03:47',4485,342,'2005-08-01 16:40:47',2,'2006-02-15 21:30:53'),(9957,'2005-07-31 16:03:55',1857,85,'2005-08-04 15:16:55',2,'2006-02-15 21:30:53'),(9958,'2005-07-31 16:03:56',4142,157,'2005-08-04 15:21:56',2,'2006-02-15 21:30:53'),(9959,'2005-07-31 16:04:22',340,199,'2005-08-03 21:51:22',2,'2006-02-15 21:30:53'),(9960,'2005-07-31 16:05:52',1022,569,'2005-08-05 14:15:52',2,'2006-02-15 21:30:53'),(9961,'2005-07-31 16:07:50',1856,40,'2005-08-07 18:37:50',2,'2006-02-15 21:30:53'),(9962,'2005-07-31 16:10:36',1951,576,'2005-08-02 17:09:36',1,'2006-02-15 21:30:53'),(9963,'2005-07-31 16:16:46',1609,573,'2005-08-02 22:00:46',1,'2006-02-15 21:30:53'),(9964,'2005-07-31 16:17:39',3149,191,'2005-08-03 15:03:39',1,'2006-02-15 21:30:53'),(9965,'2005-07-31 16:19:32',3946,101,'2005-08-05 20:18:32',2,'2006-02-15 21:30:53'),(9966,'2005-07-31 16:26:46',4137,373,'2005-08-03 14:29:46',1,'2006-02-15 21:30:53'),(9967,'2005-07-31 16:31:17',958,537,'2005-08-06 13:52:17',1,'2006-02-15 21:30:53'),(9968,'2005-07-31 16:32:16',2666,363,'2005-08-08 12:23:16',1,'2006-02-15 21:30:53'),(9969,'2005-07-31 16:38:12',938,151,'2005-08-05 11:45:12',2,'2006-02-15 21:30:53'),(9970,'2005-07-31 16:38:24',2846,578,'2005-08-02 12:59:24',2,'2006-02-15 21:30:53'),(9971,'2005-07-31 16:42:16',2674,573,'2005-08-09 18:08:16',2,'2006-02-15 21:30:53'),(9972,'2005-07-31 16:42:43',190,506,'2005-08-02 11:05:43',2,'2006-02-15 21:30:53'),(9973,'2005-07-31 16:49:31',1850,369,'2005-08-03 22:03:31',2,'2006-02-15 21:30:53'),(9974,'2005-07-31 16:51:11',430,503,'2005-08-05 16:04:11',1,'2006-02-15 21:30:53'),(9975,'2005-07-31 16:53:43',2564,40,'2005-08-07 20:13:43',2,'2006-02-15 21:30:53'),(9976,'2005-07-31 16:57:49',4219,579,'2005-08-03 16:33:49',2,'2006-02-15 21:30:53'),(9977,'2005-07-31 16:58:42',2300,363,'2005-08-09 13:34:42',1,'2006-02-15 21:30:53'),(9978,'2005-07-31 16:59:51',2812,427,'2005-08-06 16:48:51',2,'2006-02-15 21:30:53'),(9979,'2005-07-31 17:00:07',646,576,'2005-08-08 20:40:07',1,'2006-02-15 21:30:53'),(9980,'2005-07-31 17:02:00',122,225,'2005-08-08 11:11:00',2,'2006-02-15 21:30:53'),(9981,'2005-07-31 17:08:31',1354,321,'2005-08-01 22:46:31',2,'2006-02-15 21:30:53'),(9982,'2005-07-31 17:09:02',2698,428,'2005-08-02 13:02:02',2,'2006-02-15 21:30:53'),(9983,'2005-07-31 17:09:36',350,129,'2005-08-08 20:26:36',1,'2006-02-15 21:30:53'),(9984,'2005-07-31 17:12:23',433,432,'2005-08-01 21:04:23',2,'2006-02-15 21:30:53'),(9985,'2005-07-31 17:14:47',1831,85,'2005-08-01 12:11:47',2,'2006-02-15 21:30:53'),(9986,'2005-07-31 17:16:50',1242,124,'2005-08-05 18:34:50',2,'2006-02-15 21:30:53'),(9987,'2005-07-31 17:22:35',1619,15,'2005-08-01 21:19:35',2,'2006-02-15 21:30:53'),(9988,'2005-07-31 17:22:36',3844,243,'2005-08-07 18:35:36',2,'2006-02-15 21:30:53'),(9989,'2005-07-31 17:22:39',1713,79,'2005-08-01 18:55:39',1,'2006-02-15 21:30:53'),(9990,'2005-07-31 17:24:21',4481,555,'2005-08-09 17:14:21',2,'2006-02-15 21:30:53'),(9991,'2005-07-31 17:26:27',3662,414,'2005-08-03 17:36:27',1,'2006-02-15 21:30:53'),(9992,'2005-07-31 17:29:48',4242,304,'2005-08-09 13:02:48',2,'2006-02-15 21:30:53'),(9993,'2005-07-31 17:30:20',2503,225,'2005-08-01 20:53:20',2,'2006-02-15 21:30:53'),(9994,'2005-07-31 17:30:31',2155,195,'2005-08-01 11:35:31',1,'2006-02-15 21:30:53'),(9995,'2005-07-31 17:30:47',1978,180,'2005-08-04 12:20:47',2,'2006-02-15 21:30:53'),(9996,'2005-07-31 17:32:03',3271,104,'2005-08-06 16:17:03',2,'2006-02-15 21:30:53'),(9997,'2005-07-31 17:37:30',640,579,'2005-08-02 14:49:30',1,'2006-02-15 21:30:53'),(9998,'2005-07-31 17:40:35',2549,30,'2005-08-04 18:15:35',1,'2006-02-15 21:30:53'),(9999,'2005-07-31 17:40:53',1438,543,'2005-08-01 14:25:53',1,'2006-02-15 21:30:53'),(10000,'2005-07-31 17:41:05',3221,576,'2005-08-02 20:51:05',1,'2006-02-15 21:30:53'),(10001,'2005-07-31 17:46:18',2188,244,'2005-08-07 20:38:18',1,'2006-02-15 21:30:53'),(10002,'2005-07-31 17:48:16',1002,323,'2005-08-06 16:15:16',1,'2006-02-15 21:30:53'),(10003,'2005-07-31 17:48:51',1603,13,'2005-08-02 14:23:51',1,'2006-02-15 21:30:53'),(10004,'2005-07-31 17:51:23',2396,570,'2005-08-03 19:12:23',1,'2006-02-15 21:30:53'),(10005,'2005-07-31 17:53:51',928,454,'2005-08-09 21:39:51',1,'2006-02-15 21:30:53'),(10006,'2005-07-31 17:54:35',2538,470,'2005-08-02 20:40:35',2,'2006-02-15 21:30:53'),(10007,'2005-07-31 17:54:58',293,445,'2005-08-05 17:24:58',2,'2006-02-15 21:30:53'),(10008,'2005-07-31 17:59:36',2589,91,'2005-08-03 22:43:36',2,'2006-02-15 21:30:53'),(10009,'2005-07-31 18:00:28',4441,437,'2005-08-08 22:24:28',2,'2006-02-15 21:30:53'),(10010,'2005-07-31 18:01:36',2655,373,'2005-08-07 20:27:36',2,'2006-02-15 21:30:53'),(10011,'2005-07-31 18:02:41',606,128,'2005-08-08 17:04:41',1,'2006-02-15 21:30:53'),(10012,'2005-07-31 18:06:06',2554,513,'2005-08-09 16:47:06',2,'2006-02-15 21:30:53'),(10013,'2005-07-31 18:08:21',2364,377,'2005-08-08 13:22:21',2,'2006-02-15 21:30:53'),(10014,'2005-07-31 18:10:56',2344,443,'2005-08-02 23:36:56',1,'2006-02-15 21:30:53'),(10015,'2005-07-31 18:11:17',67,153,'2005-08-03 15:48:17',2,'2006-02-15 21:30:53'),(10016,'2005-07-31 18:13:06',2183,478,'2005-08-09 22:11:06',1,'2006-02-15 21:30:53'),(10017,'2005-07-31 18:13:22',1495,424,'2005-08-05 16:03:22',1,'2006-02-15 21:30:53'),(10018,'2005-07-31 18:15:14',3708,481,'2005-08-05 14:44:14',2,'2006-02-15 21:30:53'),(10019,'2005-07-31 18:20:56',2114,536,'2005-08-07 14:25:56',1,'2006-02-15 21:30:53'),(10020,'2005-07-31 18:21:08',302,526,'2005-08-02 14:03:08',2,'2006-02-15 21:30:53'),(10021,'2005-07-31 18:24:39',3235,597,'2005-08-01 19:16:39',1,'2006-02-15 21:30:53'),(10022,'2005-07-31 18:25:30',1900,115,'2005-08-04 13:35:30',1,'2006-02-15 21:30:53'),(10023,'2005-07-31 18:25:51',384,318,'2005-08-09 18:00:51',1,'2006-02-15 21:30:53'),(10024,'2005-07-31 18:26:36',265,129,'2005-08-09 16:16:36',1,'2006-02-15 21:30:53'),(10025,'2005-07-31 18:29:09',475,565,'2005-08-07 14:20:09',2,'2006-02-15 21:30:53'),(10026,'2005-07-31 18:31:51',39,332,'2005-08-03 21:14:51',2,'2006-02-15 21:30:53'),(10027,'2005-07-31 18:33:51',525,287,'2005-08-09 18:40:51',1,'2006-02-15 21:30:53'),(10028,'2005-07-31 18:35:54',2305,323,'2005-08-01 13:01:54',2,'2006-02-15 21:30:53'),(10029,'2005-07-31 18:37:47',505,578,'2005-08-06 14:58:47',2,'2006-02-15 21:30:53'),(10030,'2005-07-31 18:39:36',1392,325,'2005-08-03 15:29:36',2,'2006-02-15 21:30:53'),(10031,'2005-07-31 18:40:15',3048,96,'2005-08-03 14:38:15',1,'2006-02-15 21:30:53'),(10032,'2005-07-31 18:41:55',2331,126,'2005-08-04 22:45:55',1,'2006-02-15 21:30:53'),(10033,'2005-07-31 18:44:29',4480,381,'2005-08-04 19:52:29',1,'2006-02-15 21:30:53'),(10034,'2005-07-31 18:45:30',354,442,'2005-08-04 21:13:30',2,'2006-02-15 21:30:53'),(10035,'2005-07-31 18:46:46',2694,333,'2005-08-04 20:33:46',1,'2006-02-15 21:30:53'),(10036,'2005-07-31 18:47:20',41,491,'2005-08-03 22:53:20',1,'2006-02-15 21:30:53'),(10037,'2005-07-31 18:48:08',438,58,'2005-08-09 19:11:08',2,'2006-02-15 21:30:53'),(10038,'2005-07-31 18:49:12',3727,112,'2005-08-01 18:02:12',1,'2006-02-15 21:30:53'),(10039,'2005-07-31 18:50:40',4391,111,'2005-08-01 18:49:40',2,'2006-02-15 21:30:53'),(10040,'2005-07-31 18:54:15',2281,268,'2005-08-05 17:33:15',2,'2006-02-15 21:30:53'),(10041,'2005-07-31 19:01:02',2994,379,'2005-08-07 21:32:02',1,'2006-02-15 21:30:53'),(10042,'2005-07-31 19:01:25',123,204,'2005-08-06 14:21:25',1,'2006-02-15 21:30:53'),(10043,'2005-07-31 19:02:07',2558,222,'2005-08-07 17:58:07',1,'2006-02-15 21:30:53'),(10044,'2005-07-31 19:02:33',3349,388,'2005-08-05 13:24:33',2,'2006-02-15 21:30:53'),(10045,'2005-07-31 19:04:35',58,118,'2005-08-07 16:53:35',1,'2006-02-15 21:30:53'),(10046,'2005-07-31 19:07:11',4302,50,'2005-08-03 13:25:11',1,'2006-02-15 21:30:53'),(10047,'2005-07-31 19:07:43',4195,244,'2005-08-07 00:20:43',2,'2006-02-15 21:30:53'),(10048,'2005-07-31 19:08:56',3821,267,'2005-08-05 20:15:56',2,'2006-02-15 21:30:53'),(10049,'2005-07-31 19:11:11',854,457,'2005-08-03 22:15:11',1,'2006-02-15 21:30:53'),(10050,'2005-07-31 19:13:29',295,230,'2005-08-06 15:44:29',1,'2006-02-15 21:30:53'),(10051,'2005-07-31 19:14:20',163,74,'2005-08-05 19:45:20',1,'2006-02-15 21:30:53'),(10052,'2005-07-31 19:15:13',3307,39,'2005-08-07 22:47:13',2,'2006-02-15 21:30:53'),(10053,'2005-07-31 19:15:39',4102,223,'2005-08-07 22:32:39',1,'2006-02-15 21:30:53'),(10054,'2005-07-31 19:15:52',2303,598,'2005-08-04 19:54:52',1,'2006-02-15 21:30:53'),(10055,'2005-07-31 19:15:58',2725,336,'2005-08-05 20:23:58',1,'2006-02-15 21:30:53'),(10056,'2005-07-31 19:19:13',281,237,'2005-08-01 16:09:13',2,'2006-02-15 21:30:53'),(10057,'2005-07-31 19:20:18',3485,230,'2005-08-08 17:59:18',2,'2006-02-15 21:30:53'),(10058,'2005-07-31 19:20:21',758,237,'2005-08-04 00:41:21',2,'2006-02-15 21:30:53'),(10059,'2005-07-31 19:20:49',2020,274,'2005-08-03 14:39:49',1,'2006-02-15 21:30:53'),(10060,'2005-07-31 19:23:00',1979,42,'2005-08-08 19:07:00',1,'2006-02-15 21:30:53'),(10061,'2005-07-31 19:23:25',1401,390,'2005-08-04 19:38:25',1,'2006-02-15 21:30:53'),(10062,'2005-07-31 19:24:55',1815,333,'2005-08-03 22:51:55',2,'2006-02-15 21:30:53'),(10063,'2005-07-31 19:25:13',3003,517,'2005-08-09 15:55:13',1,'2006-02-15 21:30:53'),(10064,'2005-07-31 19:27:02',3140,41,'2005-08-06 21:15:02',1,'2006-02-15 21:30:53'),(10065,'2005-07-31 19:27:34',1426,495,'2005-08-01 13:45:34',2,'2006-02-15 21:30:53'),(10066,'2005-07-31 19:30:01',4285,123,'2005-08-01 14:45:01',2,'2006-02-15 21:30:53'),(10067,'2005-07-31 19:37:58',1940,148,'2005-08-04 17:32:58',2,'2006-02-15 21:30:53'),(10068,'2005-07-31 19:39:38',4000,58,'2005-08-05 22:49:38',1,'2006-02-15 21:30:53'),(10069,'2005-07-31 19:43:18',2168,270,'2005-08-06 19:40:18',2,'2006-02-15 21:30:53'),(10070,'2005-07-31 19:46:29',1010,325,'2005-08-03 22:21:29',1,'2006-02-15 21:30:53'),(10071,'2005-07-31 19:49:35',2360,353,'2005-08-03 00:00:35',2,'2006-02-15 21:30:53'),(10072,'2005-07-31 19:50:37',3963,520,'2005-08-03 00:25:37',2,'2006-02-15 21:30:53'),(10073,'2005-07-31 19:53:15',4246,584,'2005-08-05 23:12:15',2,'2006-02-15 21:30:53'),(10074,'2005-07-31 19:57:16',1268,69,'2005-08-04 00:54:16',1,'2006-02-15 21:30:53'),(10075,'2005-07-31 19:58:42',2037,469,'2005-08-08 19:49:42',1,'2006-02-15 21:30:53'),(10076,'2005-07-31 20:00:34',1117,555,'2005-08-10 00:37:34',2,'2006-02-15 21:30:53'),(10077,'2005-07-31 20:01:06',2333,19,'2005-08-09 16:07:06',1,'2006-02-15 21:30:53'),(10078,'2005-07-31 20:02:02',3198,151,'2005-08-04 00:45:02',1,'2006-02-15 21:30:53'),(10079,'2005-07-31 20:05:45',4541,486,'2005-08-04 16:25:45',2,'2006-02-15 21:30:53'),(10080,'2005-07-31 20:07:10',4355,62,'2005-08-04 23:07:10',2,'2006-02-15 21:30:53'),(10081,'2005-07-31 20:07:44',3183,443,'2005-08-06 20:04:44',1,'2006-02-15 21:30:53'),(10082,'2005-07-31 20:09:32',1275,76,'2005-08-01 15:41:32',2,'2006-02-15 21:30:53'),(10083,'2005-07-31 20:10:19',2585,449,'2005-08-06 23:18:19',1,'2006-02-15 21:30:53'),(10084,'2005-07-31 20:11:29',524,528,'2005-08-06 22:28:29',2,'2006-02-15 21:30:53'),(10085,'2005-07-31 20:12:02',2556,392,'2005-08-03 00:03:02',2,'2006-02-15 21:30:53'),(10086,'2005-07-31 20:14:08',2853,205,'2005-08-07 01:33:08',2,'2006-02-15 21:30:53'),(10087,'2005-07-31 20:15:22',1393,245,'2005-08-07 01:33:22',1,'2006-02-15 21:30:53'),(10088,'2005-07-31 20:16:21',4293,46,'2005-08-01 22:47:21',2,'2006-02-15 21:30:53'),(10089,'2005-07-31 20:17:09',248,160,'2005-08-01 19:14:09',2,'2006-02-15 21:30:53'),(10090,'2005-07-31 20:22:01',4023,533,'2005-08-04 17:30:01',1,'2006-02-15 21:30:53'),(10091,'2005-07-31 20:23:13',1878,135,'2005-08-02 21:58:13',2,'2006-02-15 21:30:53'),(10092,'2005-07-31 20:28:09',4151,364,'2005-08-01 21:37:09',1,'2006-02-15 21:30:53'),(10093,'2005-07-31 20:30:32',3943,162,'2005-08-04 00:04:32',2,'2006-02-15 21:30:53'),(10094,'2005-07-31 20:31:18',2865,596,'2005-08-06 18:31:18',2,'2006-02-15 21:30:53'),(10095,'2005-07-31 20:38:35',4062,370,'2005-08-02 02:33:35',1,'2006-02-15 21:30:53'),(10096,'2005-07-31 20:38:58',3606,290,'2005-08-06 02:34:58',1,'2006-02-15 21:30:53'),(10097,'2005-07-31 20:39:38',784,519,'2005-08-08 22:22:38',1,'2006-02-15 21:30:53'),(10098,'2005-07-31 20:41:17',1324,155,'2005-08-02 00:06:17',2,'2006-02-15 21:30:53'),(10099,'2005-07-31 20:47:14',1960,220,'2005-08-02 17:25:14',1,'2006-02-15 21:30:53'),(10100,'2005-07-31 20:47:18',4050,330,'2005-08-03 16:58:18',2,'2006-02-15 21:30:53'),(10101,'2005-07-31 20:47:29',2513,119,'2005-08-04 21:28:29',1,'2006-02-15 21:30:53'),(10102,'2005-07-31 20:49:10',4078,170,'2005-08-08 20:15:10',1,'2006-02-15 21:30:53'),(10103,'2005-07-31 20:49:13',77,25,'2005-08-05 15:55:13',2,'2006-02-15 21:30:53'),(10104,'2005-07-31 20:49:14',3358,186,'2005-08-05 01:11:14',2,'2006-02-15 21:30:53'),(10105,'2005-07-31 20:54:20',112,286,'2005-08-09 17:45:20',1,'2006-02-15 21:30:53'),(10106,'2005-07-31 21:00:47',3444,556,'2005-08-02 20:11:47',2,'2006-02-15 21:30:53'),(10107,'2005-07-31 21:01:46',1326,414,'2005-08-09 01:33:46',2,'2006-02-15 21:30:53'),(10108,'2005-07-31 21:02:14',3703,326,'2005-08-01 18:28:14',1,'2006-02-15 21:30:53'),(10109,'2005-07-31 21:04:49',2852,403,'2005-08-08 19:25:49',1,'2006-02-15 21:30:53'),(10110,'2005-07-31 21:06:12',4081,138,'2005-08-03 02:03:12',2,'2006-02-15 21:30:53'),(10111,'2005-07-31 21:08:33',3474,38,'2005-08-06 02:58:33',2,'2006-02-15 21:30:53'),(10112,'2005-07-31 21:08:56',2643,198,'2005-08-01 23:35:56',2,'2006-02-15 21:30:53'),(10113,'2005-07-31 21:10:03',3974,461,'2005-08-02 21:13:03',2,'2006-02-15 21:30:53'),(10114,'2005-07-31 21:12:58',3881,218,'2005-08-02 19:45:58',2,'2006-02-15 21:30:53'),(10115,'2005-07-31 21:13:47',2731,68,'2005-08-10 00:44:47',1,'2006-02-15 21:30:53'),(10116,'2005-07-31 21:14:02',738,28,'2005-08-03 01:48:02',2,'2006-02-15 21:30:53'),(10117,'2005-07-31 21:14:31',1894,459,'2005-08-01 15:59:31',2,'2006-02-15 21:30:53'),(10118,'2005-07-31 21:16:31',1209,143,'2005-08-03 02:32:31',1,'2006-02-15 21:30:53'),(10119,'2005-07-31 21:20:59',54,351,'2005-08-02 23:14:59',2,'2006-02-15 21:30:53'),(10120,'2005-07-31 21:24:24',1709,396,'2005-08-03 17:44:24',2,'2006-02-15 21:30:53'),(10121,'2005-07-31 21:24:53',2969,425,'2005-08-03 22:24:53',1,'2006-02-15 21:30:53'),(10122,'2005-07-31 21:29:28',4229,196,'2005-08-09 00:04:28',1,'2006-02-15 21:30:53'),(10123,'2005-07-31 21:30:46',4564,487,'2005-08-06 16:28:46',1,'2006-02-15 21:30:53'),(10124,'2005-07-31 21:31:49',1956,396,'2005-08-04 00:06:49',1,'2006-02-15 21:30:53'),(10125,'2005-07-31 21:33:03',493,178,'2005-08-01 19:10:03',1,'2006-02-15 21:30:53'),(10126,'2005-07-31 21:36:07',3,39,'2005-08-03 23:59:07',1,'2006-02-15 21:30:53'),(10127,'2005-07-31 21:39:48',717,478,'2005-08-06 00:10:48',1,'2006-02-15 21:30:53'),(10128,'2005-07-31 21:40:04',2559,508,'2005-08-02 02:21:04',1,'2006-02-15 21:30:53'),(10129,'2005-07-31 21:41:35',2848,564,'2005-08-05 17:05:35',1,'2006-02-15 21:30:53'),(10130,'2005-07-31 21:44:30',3964,95,'2005-08-04 17:06:30',1,'2006-02-15 21:30:53'),(10131,'2005-07-31 21:45:28',4169,510,'2005-08-04 00:19:28',2,'2006-02-15 21:30:53'),(10132,'2005-07-31 21:50:24',3934,23,'2005-08-07 23:37:24',2,'2006-02-15 21:30:53'),(10133,'2005-07-31 21:55:07',614,234,'2005-08-08 23:04:07',1,'2006-02-15 21:30:53'),(10134,'2005-07-31 21:56:10',4483,311,'2005-08-06 21:20:10',1,'2006-02-15 21:30:53'),(10135,'2005-07-31 21:57:32',4193,307,'2005-08-05 22:23:32',1,'2006-02-15 21:30:53'),(10136,'2005-07-31 21:58:56',3142,2,'2005-08-03 19:44:56',1,'2006-02-15 21:30:53'),(10137,'2005-07-31 22:01:41',612,236,'2005-08-07 22:24:41',1,'2006-02-15 21:30:53'),(10138,'2005-07-31 22:02:09',179,225,'2005-08-07 20:46:09',2,'2006-02-15 21:30:53'),(10139,'2005-07-31 22:02:20',407,441,'2005-08-04 02:09:20',1,'2006-02-15 21:30:53'),(10140,'2005-07-31 22:03:20',2494,550,'2005-08-07 23:15:20',2,'2006-02-15 21:30:53'),(10141,'2005-07-31 22:08:29',8,8,'2005-08-06 16:59:29',1,'2006-02-15 21:30:53'),(10142,'2005-07-31 22:10:54',1839,257,'2005-08-09 19:04:54',2,'2006-02-15 21:30:53'),(10143,'2005-07-31 22:11:43',2139,271,'2005-08-09 17:48:43',2,'2006-02-15 21:30:53'),(10144,'2005-07-31 22:13:52',3011,49,'2005-08-05 19:27:52',1,'2006-02-15 21:30:53'),(10145,'2005-07-31 22:15:13',2511,361,'2005-08-06 23:26:13',1,'2006-02-15 21:30:53'),(10146,'2005-07-31 22:17:56',1721,559,'2005-08-02 21:27:56',1,'2006-02-15 21:30:53'),(10147,'2005-07-31 22:18:43',1351,198,'2005-08-02 23:08:43',2,'2006-02-15 21:30:53'),(10148,'2005-07-31 22:19:16',1381,63,'2005-08-05 00:15:16',2,'2006-02-15 21:30:53'),(10149,'2005-07-31 22:20:46',890,276,'2005-08-07 23:12:46',2,'2006-02-15 21:30:53'),(10150,'2005-07-31 22:22:00',2328,419,'2005-08-05 01:17:00',2,'2006-02-15 21:30:53'),(10151,'2005-07-31 22:22:37',4442,361,'2005-08-01 22:20:37',1,'2006-02-15 21:30:53'),(10152,'2005-07-31 22:28:05',1114,244,'2005-08-08 22:39:05',2,'2006-02-15 21:30:53'),(10153,'2005-07-31 22:30:10',2945,297,'2005-08-06 02:32:10',2,'2006-02-15 21:30:53'),(10154,'2005-07-31 22:30:49',2745,149,'2005-08-07 03:05:49',2,'2006-02-15 21:30:53'),(10155,'2005-07-31 22:31:43',3176,235,'2005-08-07 02:43:43',1,'2006-02-15 21:30:53'),(10156,'2005-07-31 22:36:00',141,179,'2005-08-02 00:03:00',2,'2006-02-15 21:30:53'),(10157,'2005-07-31 22:38:48',2960,232,'2005-08-01 21:38:48',1,'2006-02-15 21:30:53'),(10158,'2005-07-31 22:40:31',1626,393,'2005-08-08 18:25:31',2,'2006-02-15 21:30:53'),(10159,'2005-07-31 22:54:30',1174,515,'2005-08-03 00:43:30',2,'2006-02-15 21:30:53'),(10160,'2005-07-31 23:07:40',863,295,'2005-08-05 23:34:40',1,'2006-02-15 21:30:53'),(10161,'2005-07-31 23:09:41',2651,120,'2005-08-02 20:46:41',2,'2006-02-15 21:30:53'),(10162,'2005-07-31 23:11:01',1327,475,'2005-08-07 01:52:01',2,'2006-02-15 21:30:53'),(10163,'2005-07-31 23:12:34',2811,425,'2005-08-01 22:47:34',2,'2006-02-15 21:30:53'),(10164,'2005-07-31 23:17:57',1405,89,'2005-08-05 19:43:57',1,'2006-02-15 21:30:53'),(10165,'2005-07-31 23:21:23',3476,50,'2005-08-06 18:06:23',1,'2006-02-15 21:30:53'),(10166,'2005-07-31 23:22:20',4304,484,'2005-08-07 18:06:20',2,'2006-02-15 21:30:53'),(10167,'2005-07-31 23:24:31',1222,129,'2005-08-06 17:42:31',2,'2006-02-15 21:30:53'),(10168,'2005-07-31 23:25:24',4548,570,'2005-08-02 19:03:24',1,'2006-02-15 21:30:53'),(10169,'2005-07-31 23:27:13',2675,57,'2005-08-05 20:32:13',2,'2006-02-15 21:30:53'),(10170,'2005-07-31 23:27:31',804,41,'2005-08-08 04:53:31',2,'2006-02-15 21:30:53'),(10171,'2005-07-31 23:29:05',1367,401,'2005-08-03 19:39:05',1,'2006-02-15 21:30:53'),(10172,'2005-07-31 23:29:51',2506,426,'2005-08-09 01:57:51',1,'2006-02-15 21:30:53'),(10173,'2005-07-31 23:36:59',2527,326,'2005-08-08 20:20:59',2,'2006-02-15 21:30:53'),(10174,'2005-07-31 23:40:08',2459,359,'2005-08-06 21:08:08',2,'2006-02-15 21:30:53'),(10175,'2005-07-31 23:40:11',3672,137,'2005-08-09 02:22:11',1,'2006-02-15 21:30:53'),(10176,'2005-07-31 23:40:35',1181,19,'2005-08-09 00:46:35',2,'2006-02-15 21:30:53'),(10177,'2005-07-31 23:42:33',2242,279,'2005-08-03 01:30:33',2,'2006-02-15 21:30:53'),(10178,'2005-07-31 23:43:04',1582,491,'2005-08-03 00:43:04',1,'2006-02-15 21:30:53'),(10179,'2005-07-31 23:49:54',2136,131,'2005-08-01 20:46:54',2,'2006-02-15 21:30:53'),(10180,'2005-07-31 23:57:43',757,50,'2005-08-09 04:04:43',2,'2006-02-15 21:30:53'),(10181,'2005-08-01 00:00:44',3111,113,'2005-08-04 19:33:44',1,'2006-02-15 21:30:53'),(10182,'2005-08-01 00:08:01',4112,578,'2005-08-09 18:14:01',2,'2006-02-15 21:30:53'),(10183,'2005-08-01 00:08:01',4319,377,'2005-08-09 20:41:01',1,'2006-02-15 21:30:53'),(10184,'2005-08-01 00:09:33',2785,77,'2005-08-05 04:12:33',2,'2006-02-15 21:30:53'),(10185,'2005-08-01 00:12:11',1266,64,'2005-08-03 03:03:11',1,'2006-02-15 21:30:53'),(10186,'2005-08-01 00:12:36',4563,294,'2005-08-07 05:08:36',1,'2006-02-15 21:30:53'),(10187,'2005-08-01 00:15:49',1629,400,'2005-08-05 01:00:49',2,'2006-02-15 21:30:53'),(10188,'2005-08-01 00:19:41',1221,331,'2005-08-08 00:19:41',2,'2006-02-15 21:30:53'),(10189,'2005-08-01 00:25:00',616,509,'2005-08-03 06:01:00',2,'2006-02-15 21:30:53'),(10190,'2005-08-01 00:27:53',4411,138,'2005-08-01 20:32:53',2,'2006-02-15 21:30:53'),(10191,'2005-08-01 00:28:38',1131,196,'2005-08-06 02:23:38',1,'2006-02-15 21:30:53'),(10192,'2005-08-01 00:33:00',1632,569,'2005-08-05 03:37:00',2,'2006-02-15 21:30:53'),(10193,'2005-08-01 00:33:27',2036,358,'2005-08-07 20:15:27',1,'2006-02-15 21:30:53'),(10194,'2005-08-01 00:33:52',1447,290,'2005-08-06 04:50:52',2,'2006-02-15 21:30:53'),(10195,'2005-08-01 00:34:42',2691,396,'2005-08-08 05:04:42',2,'2006-02-15 21:30:53'),(10196,'2005-08-01 00:34:51',3070,199,'2005-08-05 03:43:51',1,'2006-02-15 21:30:53'),(10197,'2005-08-01 00:35:25',1186,127,'2005-08-07 06:04:25',2,'2006-02-15 21:30:53'),(10198,'2005-08-01 00:36:15',1297,366,'2005-08-07 06:18:15',2,'2006-02-15 21:30:53'),(10199,'2005-08-01 00:38:55',3665,526,'2005-08-05 03:41:55',1,'2006-02-15 21:30:53'),(10200,'2005-08-01 00:39:05',580,421,'2005-08-05 01:07:05',1,'2006-02-15 21:30:53'),(10201,'2005-08-01 00:42:18',3649,299,'2005-08-08 20:49:18',2,'2006-02-15 21:30:53'),(10202,'2005-08-01 00:43:18',1099,306,'2005-08-08 23:26:18',1,'2006-02-15 21:30:53'),(10203,'2005-08-01 00:45:27',1096,157,'2005-08-04 22:45:27',2,'2006-02-15 21:30:53'),(10204,'2005-08-01 00:47:39',764,572,'2005-08-05 01:11:39',1,'2006-02-15 21:30:53'),(10205,'2005-08-01 00:48:24',33,87,'2005-08-06 23:53:24',1,'2006-02-15 21:30:53'),(10206,'2005-08-01 00:52:40',4479,90,'2005-08-10 02:36:40',2,'2006-02-15 21:30:53'),(10207,'2005-08-01 00:53:01',2925,334,'2005-08-05 05:51:01',2,'2006-02-15 21:30:53'),(10208,'2005-08-01 00:54:51',3324,246,'2005-08-04 22:39:51',2,'2006-02-15 21:30:53'),(10209,'2005-08-01 00:56:47',2429,303,'2005-08-03 19:58:47',2,'2006-02-15 21:30:53'),(10210,'2005-08-01 00:58:52',49,391,'2005-08-10 01:16:52',1,'2006-02-15 21:30:53'),(10211,'2005-08-01 01:01:16',810,530,'2005-08-10 01:31:16',1,'2006-02-15 21:30:53'),(10212,'2005-08-01 01:01:35',3728,324,'2005-08-02 23:02:35',1,'2006-02-15 21:30:53'),(10213,'2005-08-01 01:03:18',1462,106,'2005-08-09 20:07:18',1,'2006-02-15 21:30:53'),(10214,'2005-08-01 01:04:15',648,597,'2005-08-01 19:31:15',2,'2006-02-15 21:30:53'),(10215,'2005-08-01 01:04:28',838,345,'2005-08-09 21:43:28',2,'2006-02-15 21:30:53'),(10216,'2005-08-01 01:06:27',3603,436,'2005-08-08 22:41:27',2,'2006-02-15 21:30:53'),(10217,'2005-08-01 01:07:27',1193,389,'2005-08-09 00:42:27',1,'2006-02-15 21:30:53'),(10218,'2005-08-01 01:09:44',3886,101,'2005-08-05 20:08:44',1,'2006-02-15 21:30:53'),(10219,'2005-08-01 01:10:33',2262,505,'2005-08-10 02:45:33',2,'2006-02-15 21:30:53'),(10220,'2005-08-01 01:13:22',3920,294,'2005-08-04 22:57:22',2,'2006-02-15 21:30:53'),(10221,'2005-08-01 01:16:50',3051,373,'2005-08-03 05:35:50',2,'2006-02-15 21:30:53'),(10222,'2005-08-01 01:17:42',1214,295,'2005-08-08 02:45:42',1,'2006-02-15 21:30:53'),(10223,'2005-08-01 01:23:15',1370,522,'2005-08-02 19:39:15',1,'2006-02-15 21:30:53'),(10224,'2005-08-01 01:31:56',1443,587,'2005-08-05 21:21:56',2,'2006-02-15 21:30:53'),(10225,'2005-08-01 01:38:40',3131,498,'2005-08-06 20:00:40',1,'2006-02-15 21:30:53'),(10226,'2005-08-01 01:40:04',3067,107,'2005-08-08 01:02:04',1,'2006-02-15 21:30:53'),(10227,'2005-08-01 01:42:22',872,571,'2005-08-09 23:45:22',2,'2006-02-15 21:30:53'),(10228,'2005-08-01 01:43:18',1742,106,'2005-08-06 22:10:18',2,'2006-02-15 21:30:53'),(10229,'2005-08-01 01:45:26',3459,175,'2005-08-10 06:21:26',1,'2006-02-15 21:30:53'),(10230,'2005-08-01 01:49:36',76,398,'2005-08-05 01:29:36',2,'2006-02-15 21:30:53'),(10231,'2005-08-01 01:50:49',1056,511,'2005-08-06 03:12:49',1,'2006-02-15 21:30:53'),(10232,'2005-08-01 01:50:55',586,512,'2005-08-03 04:12:55',1,'2006-02-15 21:30:53'),(10233,'2005-08-01 01:54:23',4571,459,'2005-08-10 00:23:23',2,'2006-02-15 21:30:53'),(10234,'2005-08-01 01:56:20',1641,207,'2005-08-09 01:51:20',2,'2006-02-15 21:30:53'),(10235,'2005-08-01 01:57:48',2850,30,'2005-08-10 07:38:48',2,'2006-02-15 21:30:53'),(10236,'2005-08-01 02:05:34',3754,470,'2005-08-01 23:40:34',1,'2006-02-15 21:30:53'),(10237,'2005-08-01 02:07:32',432,313,'2005-08-07 03:54:32',1,'2006-02-15 21:30:53'),(10238,'2005-08-01 02:08:05',561,192,'2005-08-02 01:52:05',1,'2006-02-15 21:30:53'),(10239,'2005-08-01 02:09:22',1232,467,'2005-08-04 01:35:22',2,'2006-02-15 21:30:53'),(10240,'2005-08-01 02:09:33',4494,109,'2005-08-07 02:22:33',2,'2006-02-15 21:30:53'),(10241,'2005-08-01 02:12:25',1526,161,'2005-08-08 00:37:25',1,'2006-02-15 21:30:53'),(10242,'2005-08-01 02:18:12',1825,342,'2005-08-02 22:32:12',2,'2006-02-15 21:30:53'),(10243,'2005-08-01 02:18:46',2236,132,'2005-08-06 21:45:46',1,'2006-02-15 21:30:53'),(10244,'2005-08-01 02:20:01',567,51,'2005-08-06 23:06:01',2,'2006-02-15 21:30:53'),(10245,'2005-08-01 02:24:09',2880,163,'2005-08-02 02:31:09',1,'2006-02-15 21:30:53'),(10246,'2005-08-01 02:29:50',3598,261,'2005-08-09 01:17:50',2,'2006-02-15 21:30:53'),(10247,'2005-08-01 02:34:06',4035,189,'2005-08-09 02:33:06',1,'2006-02-15 21:30:53'),(10248,'2005-08-01 02:35:28',2146,298,'2005-08-08 02:24:28',2,'2006-02-15 21:30:53'),(10249,'2005-08-01 02:35:39',135,437,'2005-08-06 06:50:39',1,'2006-02-15 21:30:53'),(10250,'2005-08-01 02:38:42',3706,116,'2005-08-07 03:59:42',2,'2006-02-15 21:30:53'),(10251,'2005-08-01 02:39:12',2986,39,'2005-08-06 03:51:12',1,'2006-02-15 21:30:53'),(10252,'2005-08-01 02:39:39',2380,86,'2005-08-10 00:40:39',2,'2006-02-15 21:30:53'),(10253,'2005-08-01 02:39:49',1406,101,'2005-08-08 04:28:49',2,'2006-02-15 21:30:53'),(10254,'2005-08-01 02:42:03',2238,416,'2005-08-05 23:31:03',1,'2006-02-15 21:30:53'),(10255,'2005-08-01 02:46:13',4558,459,'2005-08-03 05:54:13',1,'2006-02-15 21:30:53'),(10256,'2005-08-01 02:47:11',780,58,'2005-08-05 05:21:11',2,'2006-02-15 21:30:53'),(10257,'2005-08-01 02:49:43',2403,543,'2005-08-04 04:45:43',2,'2006-02-15 21:30:53'),(10258,'2005-08-01 02:51:09',2062,469,'2005-08-08 23:57:09',2,'2006-02-15 21:30:53'),(10259,'2005-08-01 02:52:05',1881,566,'2005-08-03 20:54:05',1,'2006-02-15 21:30:53'),(10260,'2005-08-01 02:58:07',2864,461,'2005-08-05 02:06:07',2,'2006-02-15 21:30:53'),(10261,'2005-08-01 02:58:27',2346,50,'2005-08-01 21:55:27',2,'2006-02-15 21:30:53'),(10262,'2005-08-01 03:01:26',3842,181,'2005-08-08 08:03:26',2,'2006-02-15 21:30:53'),(10263,'2005-08-01 03:02:48',2420,415,'2005-08-08 02:16:48',2,'2006-02-15 21:30:53'),(10264,'2005-08-01 03:03:12',1374,297,'2005-08-08 00:34:12',2,'2006-02-15 21:30:53'),(10265,'2005-08-01 03:05:04',3338,510,'2005-08-08 08:09:04',1,'2006-02-15 21:30:53'),(10266,'2005-08-01 03:05:59',476,49,'2005-08-06 06:23:59',1,'2006-02-15 21:30:53'),(10267,'2005-08-01 03:07:26',3883,72,'2005-08-07 22:49:26',1,'2006-02-15 21:30:53'),(10268,'2005-08-01 03:08:56',2755,138,'2005-08-08 02:41:56',1,'2006-02-15 21:30:53'),(10269,'2005-08-01 03:09:26',2537,39,'2005-08-02 00:01:26',1,'2006-02-15 21:30:53'),(10270,'2005-08-01 03:10:24',2025,168,'2005-08-07 03:04:24',2,'2006-02-15 21:30:53'),(10271,'2005-08-01 03:13:39',3692,6,'2005-08-07 23:40:39',1,'2006-02-15 21:30:53'),(10272,'2005-08-01 03:14:34',128,273,'2005-08-10 05:56:34',2,'2006-02-15 21:30:53'),(10273,'2005-08-01 03:14:47',1458,212,'2005-08-07 03:59:47',1,'2006-02-15 21:30:53'),(10274,'2005-08-01 03:16:51',2916,375,'2005-08-04 22:22:51',2,'2006-02-15 21:30:53'),(10275,'2005-08-01 03:20:08',669,463,'2005-08-08 06:48:08',1,'2006-02-15 21:30:53'),(10276,'2005-08-01 03:22:23',2201,48,'2005-08-03 07:59:23',1,'2006-02-15 21:30:53'),(10277,'2005-08-01 03:22:41',1472,176,'2005-08-05 05:07:41',1,'2006-02-15 21:30:53'),(10278,'2005-08-01 03:25:27',2497,154,'2005-08-08 07:52:27',1,'2006-02-15 21:30:53'),(10279,'2005-08-01 03:26:44',3794,247,'2005-08-07 22:35:44',2,'2006-02-15 21:30:53'),(10280,'2005-08-01 03:27:15',1457,542,'2005-08-07 23:01:15',2,'2006-02-15 21:30:53'),(10281,'2005-08-01 03:28:33',1047,549,'2005-08-02 05:06:33',1,'2006-02-15 21:30:53'),(10282,'2005-08-01 03:29:10',617,472,'2005-08-07 06:16:10',1,'2006-02-15 21:30:53'),(10283,'2005-08-01 03:29:45',4237,462,'2005-08-07 04:19:45',1,'2006-02-15 21:30:53'),(10284,'2005-08-01 03:33:19',2879,20,'2005-08-09 07:58:19',1,'2006-02-15 21:30:53'),(10285,'2005-08-01 03:35:11',4523,167,'2005-08-05 03:55:11',2,'2006-02-15 21:30:53'),(10286,'2005-08-01 03:35:58',498,532,'2005-08-10 05:17:58',2,'2006-02-15 21:30:53'),(10287,'2005-08-01 03:37:01',125,141,'2005-08-05 23:03:01',2,'2006-02-15 21:30:53'),(10288,'2005-08-01 03:38:42',572,63,'2005-08-06 04:34:42',1,'2006-02-15 21:30:53'),(10289,'2005-08-01 03:39:48',3153,566,'2005-08-08 02:56:48',1,'2006-02-15 21:30:53'),(10290,'2005-08-01 03:39:50',4542,364,'2005-08-08 22:29:50',2,'2006-02-15 21:30:53'),(10291,'2005-08-01 03:39:57',2056,420,'2005-08-05 02:05:57',2,'2006-02-15 21:30:53'),(10292,'2005-08-01 03:42:40',2562,340,'2005-08-01 23:36:40',2,'2006-02-15 21:30:53'),(10293,'2005-08-01 03:44:26',1570,258,'2005-08-05 04:16:26',2,'2006-02-15 21:30:53'),(10294,'2005-08-01 03:48:12',528,28,'2005-08-09 01:19:12',2,'2006-02-15 21:30:53'),(10295,'2005-08-01 03:53:49',2355,123,'2005-08-10 03:56:49',1,'2006-02-15 21:30:53'),(10296,'2005-08-01 04:04:37',1958,573,'2005-08-01 23:59:37',1,'2006-02-15 21:30:53'),(10297,'2005-08-01 04:05:04',2795,289,'2005-08-09 06:08:04',1,'2006-02-15 21:30:53'),(10298,'2005-08-01 04:06:03',1383,323,'2005-08-05 05:59:03',2,'2006-02-15 21:30:53'),(10299,'2005-08-01 04:08:04',1125,369,'2005-08-04 08:11:04',1,'2006-02-15 21:30:53'),(10300,'2005-08-01 04:08:11',4334,207,'2005-08-04 00:24:11',1,'2006-02-15 21:30:53'),(10301,'2005-08-01 04:09:37',3072,583,'2005-08-04 23:14:37',2,'2006-02-15 21:30:53'),(10302,'2005-08-01 04:12:08',1043,144,'2005-08-01 22:12:08',2,'2006-02-15 21:30:53'),(10303,'2005-08-01 04:13:33',936,479,'2005-08-06 02:16:33',2,'2006-02-15 21:30:53'),(10304,'2005-08-01 04:14:12',1538,346,'2005-08-07 22:38:12',1,'2006-02-15 21:30:53'),(10305,'2005-08-01 04:16:16',2946,160,'2005-08-07 23:47:16',1,'2006-02-15 21:30:53'),(10306,'2005-08-01 04:19:18',2819,541,'2005-08-09 02:16:18',1,'2006-02-15 21:30:53'),(10307,'2005-08-01 04:21:54',975,332,'2005-08-04 09:24:54',2,'2006-02-15 21:30:53'),(10308,'2005-08-01 04:22:49',588,240,'2005-08-09 04:39:49',2,'2006-02-15 21:30:53'),(10309,'2005-08-01 04:24:18',1505,156,'2005-08-09 08:32:18',2,'2006-02-15 21:30:53'),(10310,'2005-08-01 04:24:47',9,271,'2005-08-04 05:36:47',2,'2006-02-15 21:30:53'),(10311,'2005-08-01 04:27:59',4211,151,'2005-08-02 08:51:59',1,'2006-02-15 21:30:53'),(10312,'2005-08-01 04:29:06',4389,172,'2005-08-08 04:52:06',2,'2006-02-15 21:30:53'),(10313,'2005-08-01 04:29:29',1194,80,'2005-08-04 08:12:29',2,'2006-02-15 21:30:53'),(10314,'2005-08-01 04:31:18',1548,252,'2005-08-06 01:49:18',2,'2006-02-15 21:30:53'),(10315,'2005-08-01 04:34:45',895,258,'2005-08-07 05:27:45',1,'2006-02-15 21:30:53'),(10316,'2005-08-01 04:34:57',1907,469,'2005-08-06 02:34:57',2,'2006-02-15 21:30:53'),(10317,'2005-08-01 04:35:34',110,561,'2005-08-06 02:27:34',2,'2006-02-15 21:30:53'),(10318,'2005-08-01 04:36:53',885,548,'2005-08-04 00:54:53',1,'2006-02-15 21:30:53'),(10319,'2005-08-01 04:37:19',3120,394,'2005-08-05 03:18:19',2,'2006-02-15 21:30:53'),(10320,'2005-08-01 04:39:26',2298,152,'2005-08-08 06:01:26',1,'2006-02-15 21:30:53'),(10321,'2005-08-01 04:40:02',4512,177,'2005-08-03 04:18:02',1,'2006-02-15 21:30:53'),(10322,'2005-08-01 04:44:13',1543,535,'2005-08-08 00:20:13',2,'2006-02-15 21:30:53'),(10323,'2005-08-01 04:44:58',3539,577,'2005-08-06 07:56:58',1,'2006-02-15 21:30:53'),(10324,'2005-08-01 04:49:06',523,25,'2005-08-09 08:04:06',2,'2006-02-15 21:30:53'),(10325,'2005-08-01 04:52:12',2749,258,'2005-08-08 09:31:12',1,'2006-02-15 21:30:53'),(10326,'2005-08-01 04:55:34',3856,325,'2005-08-02 05:18:34',1,'2006-02-15 21:30:53'),(10327,'2005-08-01 04:55:35',328,382,'2005-08-07 08:17:35',2,'2006-02-15 21:30:53'),(10328,'2005-08-01 04:56:10',1191,85,'2005-08-01 23:22:10',2,'2006-02-15 21:30:53'),(10329,'2005-08-01 04:56:13',2289,302,'2005-08-03 03:54:13',1,'2006-02-15 21:30:53'),(10330,'2005-08-01 04:57:04',1580,7,'2005-08-07 23:00:04',2,'2006-02-15 21:30:53'),(10331,'2005-08-01 04:57:14',4152,575,'2005-08-07 06:46:14',1,'2006-02-15 21:30:53'),(10332,'2005-08-01 04:57:32',642,258,'2005-08-10 02:42:32',2,'2006-02-15 21:30:53'),(10333,'2005-08-01 04:58:32',3955,499,'2005-08-04 00:51:32',2,'2006-02-15 21:30:53'),(10334,'2005-08-01 04:58:42',3387,445,'2005-08-09 02:00:42',1,'2006-02-15 21:30:53'),(10335,'2005-08-01 04:59:30',323,33,'2005-08-05 02:26:30',1,'2006-02-15 21:30:53'),(10336,'2005-08-01 04:59:53',1091,370,'2005-08-03 08:05:53',2,'2006-02-15 21:30:53'),(10337,'2005-08-01 05:01:46',307,451,'2005-08-10 02:41:46',1,'2006-02-15 21:30:53'),(10338,'2005-08-01 05:03:03',1295,339,'2005-08-09 05:13:03',2,'2006-02-15 21:30:53'),(10339,'2005-08-01 05:05:50',615,363,'2005-08-10 07:15:50',2,'2006-02-15 21:30:53'),(10340,'2005-08-01 05:07:03',3608,568,'2005-08-06 01:03:03',1,'2006-02-15 21:30:53'),(10341,'2005-08-01 05:10:02',3304,445,'2005-08-07 11:01:02',1,'2006-02-15 21:30:53'),(10342,'2005-08-01 05:11:11',332,140,'2005-08-10 00:27:11',1,'2006-02-15 21:30:53'),(10343,'2005-08-01 05:15:47',2627,267,'2005-08-02 04:48:47',2,'2006-02-15 21:30:53'),(10344,'2005-08-01 05:18:23',3673,367,'2005-08-06 05:20:23',1,'2006-02-15 21:30:53'),(10345,'2005-08-01 05:18:56',3985,42,'2005-08-04 01:34:56',2,'2006-02-15 21:30:53'),(10346,'2005-08-01 05:19:23',4192,476,'2005-08-06 01:00:23',1,'2006-02-15 21:30:53'),(10347,'2005-08-01 05:20:03',953,574,'2005-08-04 10:03:03',1,'2006-02-15 21:30:53'),(10348,'2005-08-01 05:23:00',2076,14,'2005-08-04 01:12:00',2,'2006-02-15 21:30:53'),(10349,'2005-08-01 05:27:13',114,295,'2005-08-08 10:15:13',1,'2006-02-15 21:30:53'),(10350,'2005-08-01 05:30:05',2067,78,'2005-08-05 09:59:05',1,'2006-02-15 21:30:53'),(10351,'2005-08-01 05:32:13',3725,173,'2005-08-08 09:48:13',1,'2006-02-15 21:30:53'),(10352,'2005-08-01 05:44:36',1288,564,'2005-08-05 07:15:36',2,'2006-02-15 21:30:53'),(10353,'2005-08-01 05:46:33',1446,535,'2005-08-08 09:14:33',1,'2006-02-15 21:30:53'),(10354,'2005-08-01 05:47:10',1680,416,'2005-08-06 09:04:10',1,'2006-02-15 21:30:53'),(10355,'2005-08-01 05:47:37',2158,161,'2005-08-02 09:28:37',2,'2006-02-15 21:30:53'),(10356,'2005-08-01 05:49:17',313,56,'2005-08-10 05:57:17',1,'2006-02-15 21:30:53'),(10357,'2005-08-01 05:49:49',3102,475,'2005-08-04 02:34:49',2,'2006-02-15 21:30:53'),(10358,'2005-08-01 05:50:07',3039,517,'2005-08-03 08:18:07',1,'2006-02-15 21:30:53'),(10359,'2005-08-01 05:52:21',259,369,'2005-08-06 05:52:21',2,'2006-02-15 21:30:53'),(10360,'2005-08-01 05:52:53',1129,443,'2005-08-05 10:55:53',1,'2006-02-15 21:30:53'),(10361,'2005-08-01 05:53:49',318,529,'2005-08-10 00:42:49',2,'2006-02-15 21:30:53'),(10362,'2005-08-01 05:55:13',72,181,'2005-08-10 10:23:13',2,'2006-02-15 21:30:53'),(10363,'2005-08-01 06:01:52',320,174,'2005-08-05 03:56:52',1,'2006-02-15 21:30:53'),(10364,'2005-08-01 06:06:49',1842,317,'2005-08-09 06:05:49',2,'2006-02-15 21:30:53'),(10365,'2005-08-01 06:08:44',4032,442,'2005-08-06 02:07:44',1,'2006-02-15 21:30:53'),(10366,'2005-08-01 06:09:37',2654,119,'2005-08-05 03:19:37',1,'2006-02-15 21:30:53'),(10367,'2005-08-01 06:12:19',3408,242,'2005-08-04 12:11:19',2,'2006-02-15 21:30:53'),(10368,'2005-08-01 06:13:38',3535,593,'2005-08-08 04:40:38',2,'2006-02-15 21:30:53'),(10369,'2005-08-01 06:13:44',2534,424,'2005-08-07 09:46:44',1,'2006-02-15 21:30:53'),(10370,'2005-08-01 06:18:04',4358,546,'2005-08-05 01:41:04',2,'2006-02-15 21:30:53'),(10371,'2005-08-01 06:20:29',923,327,'2005-08-04 00:31:29',2,'2006-02-15 21:30:53'),(10372,'2005-08-01 06:23:48',635,419,'2005-08-06 03:47:48',1,'2006-02-15 21:30:53'),(10373,'2005-08-01 06:24:26',1754,588,'2005-08-02 12:07:26',1,'2006-02-15 21:30:53'),(10374,'2005-08-01 06:25:27',4351,307,'2005-08-07 05:44:27',2,'2006-02-15 21:30:53'),(10375,'2005-08-01 06:26:22',857,202,'2005-08-06 02:51:22',2,'2006-02-15 21:30:53'),(10376,'2005-08-01 06:27:13',4194,474,'2005-08-07 06:11:13',2,'2006-02-15 21:30:53'),(10377,'2005-08-01 06:28:28',2401,559,'2005-08-10 05:45:28',2,'2006-02-15 21:30:53'),(10378,'2005-08-01 06:30:04',4110,113,'2005-08-06 09:10:04',1,'2006-02-15 21:30:53'),(10379,'2005-08-01 06:34:29',3103,141,'2005-08-06 07:49:29',1,'2006-02-15 21:30:53'),(10380,'2005-08-01 06:34:36',2225,533,'2005-08-02 09:08:36',1,'2006-02-15 21:30:53'),(10381,'2005-08-01 06:36:37',522,412,'2005-08-05 11:17:37',1,'2006-02-15 21:30:53'),(10382,'2005-08-01 06:36:45',4455,242,'2005-08-02 06:06:45',1,'2006-02-15 21:30:53'),(10383,'2005-08-01 06:37:16',4166,592,'2005-08-03 07:36:16',2,'2006-02-15 21:30:53'),(10384,'2005-08-01 06:39:14',2622,366,'2005-08-02 03:06:14',1,'2006-02-15 21:30:53'),(10385,'2005-08-01 06:39:55',778,179,'2005-08-06 02:16:55',1,'2006-02-15 21:30:53'),(10386,'2005-08-01 06:42:20',1568,26,'2005-08-07 06:12:20',2,'2006-02-15 21:30:53'),(10387,'2005-08-01 06:42:31',1651,87,'2005-08-08 07:44:31',1,'2006-02-15 21:30:53'),(10388,'2005-08-01 06:42:44',3180,99,'2005-08-09 11:43:44',2,'2006-02-15 21:30:53'),(10389,'2005-08-01 06:46:43',3534,346,'2005-08-08 07:07:43',2,'2006-02-15 21:30:53'),(10390,'2005-08-01 06:46:48',1489,502,'2005-08-09 02:55:48',2,'2006-02-15 21:30:53'),(10391,'2005-08-01 06:49:05',2203,357,'2005-08-04 01:51:05',2,'2006-02-15 21:30:53'),(10392,'2005-08-01 06:50:26',3017,12,'2005-08-10 10:52:26',1,'2006-02-15 21:30:53'),(10393,'2005-08-01 06:52:50',808,258,'2005-08-05 08:45:50',1,'2006-02-15 21:30:53'),(10394,'2005-08-01 06:58:17',1655,128,'2005-08-05 02:09:17',1,'2006-02-15 21:30:53'),(10395,'2005-08-01 07:08:22',279,129,'2005-08-05 08:00:22',2,'2006-02-15 21:30:53'),(10396,'2005-08-01 07:08:46',2982,284,'2005-08-08 03:47:46',1,'2006-02-15 21:30:53'),(10397,'2005-08-01 07:11:27',4168,504,'2005-08-03 07:51:27',1,'2006-02-15 21:30:53'),(10398,'2005-08-01 07:11:49',4306,174,'2005-08-04 05:54:49',1,'2006-02-15 21:30:53'),(10399,'2005-08-01 07:13:39',2515,204,'2005-08-10 06:56:39',1,'2006-02-15 21:30:53'),(10400,'2005-08-01 07:18:24',3897,132,'2005-08-10 08:38:24',1,'2006-02-15 21:30:53'),(10401,'2005-08-01 07:27:09',1560,564,'2005-08-02 01:38:09',1,'2006-02-15 21:30:53'),(10402,'2005-08-01 07:27:19',274,410,'2005-08-04 12:30:19',1,'2006-02-15 21:30:53'),(10403,'2005-08-01 07:30:45',1968,494,'2005-08-03 03:03:45',2,'2006-02-15 21:30:53'),(10404,'2005-08-01 07:31:25',2580,253,'2005-08-07 09:23:25',1,'2006-02-15 21:30:53'),(10405,'2005-08-01 07:35:25',3641,463,'2005-08-05 05:38:25',2,'2006-02-15 21:30:53'),(10406,'2005-08-01 07:37:05',2614,391,'2005-08-02 06:11:05',1,'2006-02-15 21:30:53'),(10407,'2005-08-01 07:38:07',543,101,'2005-08-02 05:38:07',2,'2006-02-15 21:30:53'),(10408,'2005-08-01 07:42:10',4144,334,'2005-08-09 02:29:10',2,'2006-02-15 21:30:53'),(10409,'2005-08-01 07:49:15',2804,449,'2005-08-02 13:42:15',2,'2006-02-15 21:30:53'),(10410,'2005-08-01 07:53:29',3901,247,'2005-08-10 08:56:29',1,'2006-02-15 21:30:53'),(10411,'2005-08-01 07:56:32',1946,522,'2005-08-10 04:58:32',2,'2006-02-15 21:30:53'),(10412,'2005-08-01 07:57:16',1555,325,'2005-08-04 11:44:16',2,'2006-02-15 21:30:53'),(10413,'2005-08-01 07:59:39',1018,376,'2005-08-08 03:55:39',1,'2006-02-15 21:30:53'),(10414,'2005-08-01 08:03:55',1271,361,'2005-08-04 08:44:55',2,'2006-02-15 21:30:53'),(10415,'2005-08-01 08:05:59',2597,591,'2005-08-04 13:46:59',1,'2006-02-15 21:30:53'),(10416,'2005-08-01 08:08:39',2629,449,'2005-08-10 09:26:39',2,'2006-02-15 21:30:53'),(10417,'2005-08-01 08:10:36',3675,427,'2005-08-02 03:42:36',2,'2006-02-15 21:30:53'),(10418,'2005-08-01 08:11:07',1692,248,'2005-08-04 11:12:07',2,'2006-02-15 21:30:53'),(10419,'2005-08-01 08:13:22',415,66,'2005-08-06 04:45:22',2,'2006-02-15 21:30:53'),(10420,'2005-08-01 08:13:53',3490,354,'2005-08-06 08:05:53',2,'2006-02-15 21:30:53'),(10421,'2005-08-01 08:14:10',925,262,'2005-08-03 05:56:10',2,'2006-02-15 21:30:53'),(10422,'2005-08-01 08:17:11',37,166,'2005-08-10 10:08:11',2,'2006-02-15 21:30:53'),(10423,'2005-08-01 08:19:53',739,7,'2005-08-08 10:25:53',1,'2006-02-15 21:30:53'),(10424,'2005-08-01 08:22:54',1921,88,'2005-08-06 13:44:54',1,'2006-02-15 21:30:53'),(10425,'2005-08-01 08:23:25',322,447,'2005-08-05 04:29:25',1,'2006-02-15 21:30:53'),(10426,'2005-08-01 08:26:08',1325,305,'2005-08-09 04:09:08',1,'2006-02-15 21:30:53'),(10427,'2005-08-01 08:30:11',2978,356,'2005-08-07 06:18:11',2,'2006-02-15 21:30:53'),(10428,'2005-08-01 08:30:11',4245,46,'2005-08-02 09:30:11',2,'2006-02-15 21:30:53'),(10429,'2005-08-01 08:34:18',3894,511,'2005-08-10 12:38:18',1,'2006-02-15 21:30:53'),(10430,'2005-08-01 08:37:06',1150,471,'2005-08-03 07:25:06',1,'2006-02-15 21:30:53'),(10431,'2005-08-01 08:41:54',1074,138,'2005-08-07 09:44:54',2,'2006-02-15 21:30:53'),(10432,'2005-08-01 08:43:21',4238,450,'2005-08-08 13:09:21',2,'2006-02-15 21:30:53'),(10433,'2005-08-01 08:45:56',1508,517,'2005-08-05 09:46:56',2,'2006-02-15 21:30:53'),(10434,'2005-08-01 08:47:00',4073,73,'2005-08-06 08:34:00',1,'2006-02-15 21:30:53'),(10435,'2005-08-01 08:50:51',1934,392,'2005-08-08 12:23:51',1,'2006-02-15 21:30:53'),(10436,'2005-08-01 08:50:59',4026,455,'2005-08-04 05:23:59',1,'2006-02-15 21:30:53'),(10437,'2005-08-01 08:51:04',14,1,'2005-08-10 12:12:04',1,'2006-02-15 21:30:53'),(10438,'2005-08-01 08:53:04',4217,316,'2005-08-09 06:39:04',2,'2006-02-15 21:30:53'),(10439,'2005-08-01 08:54:26',2711,332,'2005-08-08 14:04:26',1,'2006-02-15 21:30:53'),(10440,'2005-08-01 08:54:32',842,299,'2005-08-02 10:59:32',2,'2006-02-15 21:30:53'),(10441,'2005-08-01 08:55:56',4122,176,'2005-08-03 10:26:56',2,'2006-02-15 21:30:53'),(10442,'2005-08-01 08:58:08',4570,40,'2005-08-05 09:07:08',2,'2006-02-15 21:30:53'),(10443,'2005-08-01 09:01:04',1965,403,'2005-08-04 09:07:04',2,'2006-02-15 21:30:53'),(10444,'2005-08-01 09:01:40',3242,106,'2005-08-09 11:31:40',1,'2006-02-15 21:30:53'),(10445,'2005-08-01 09:02:15',3582,211,'2005-08-08 10:26:15',2,'2006-02-15 21:30:53'),(10446,'2005-08-01 09:02:17',2671,95,'2005-08-04 10:00:17',2,'2006-02-15 21:30:53'),(10447,'2005-08-01 09:04:58',1198,241,'2005-08-08 06:24:58',1,'2006-02-15 21:30:53'),(10448,'2005-08-01 09:09:31',2254,311,'2005-08-02 09:55:31',2,'2006-02-15 21:30:53'),(10449,'2005-08-01 09:09:59',1395,213,'2005-08-05 11:25:59',1,'2006-02-15 21:30:53'),(10450,'2005-08-01 09:10:03',234,380,'2005-08-08 12:34:03',1,'2006-02-15 21:30:53'),(10451,'2005-08-01 09:11:25',2435,9,'2005-08-03 12:37:25',2,'2006-02-15 21:30:53'),(10452,'2005-08-01 09:11:36',1973,442,'2005-08-04 13:28:36',2,'2006-02-15 21:30:53'),(10453,'2005-08-01 09:13:27',1531,188,'2005-08-08 11:34:27',2,'2006-02-15 21:30:53'),(10454,'2005-08-01 09:14:00',397,9,'2005-08-04 04:52:00',2,'2006-02-15 21:30:53'),(10455,'2005-08-01 09:15:00',4197,99,'2005-08-05 13:35:00',1,'2006-02-15 21:30:53'),(10456,'2005-08-01 09:17:21',4339,81,'2005-08-06 10:30:21',1,'2006-02-15 21:30:53'),(10457,'2005-08-01 09:17:34',3052,121,'2005-08-06 07:28:34',2,'2006-02-15 21:30:53'),(10458,'2005-08-01 09:19:48',1500,309,'2005-08-02 10:16:48',1,'2006-02-15 21:30:53'),(10459,'2005-08-01 09:20:09',201,131,'2005-08-03 11:36:09',1,'2006-02-15 21:30:53'),(10460,'2005-08-01 09:31:00',4504,197,'2005-08-09 09:28:00',1,'2006-02-15 21:30:53'),(10461,'2005-08-01 09:32:53',3212,270,'2005-08-09 10:19:53',1,'2006-02-15 21:30:53'),(10462,'2005-08-01 09:38:28',4526,193,'2005-08-02 09:52:28',2,'2006-02-15 21:30:53'),(10463,'2005-08-01 09:39:43',1301,291,'2005-08-10 03:42:43',1,'2006-02-15 21:30:53'),(10464,'2005-08-01 09:43:14',464,427,'2005-08-06 09:01:14',1,'2006-02-15 21:30:53'),(10465,'2005-08-01 09:45:25',4384,534,'2005-08-10 09:08:25',2,'2006-02-15 21:30:53'),(10466,'2005-08-01 09:45:26',138,2,'2005-08-06 06:28:26',1,'2006-02-15 21:30:53'),(10467,'2005-08-01 09:45:58',3773,412,'2005-08-09 10:17:58',2,'2006-02-15 21:30:53'),(10468,'2005-08-01 09:48:29',2115,129,'2005-08-05 09:58:29',2,'2006-02-15 21:30:53'),(10469,'2005-08-01 09:51:11',3054,466,'2005-08-05 06:53:11',2,'2006-02-15 21:30:53'),(10470,'2005-08-01 09:52:26',82,523,'2005-08-05 06:52:26',1,'2006-02-15 21:30:53'),(10471,'2005-08-01 09:52:37',1684,135,'2005-08-07 09:40:37',2,'2006-02-15 21:30:53'),(10472,'2005-08-01 09:54:41',506,405,'2005-08-04 13:31:41',1,'2006-02-15 21:30:53'),(10473,'2005-08-01 09:56:24',3034,329,'2005-08-10 12:36:24',2,'2006-02-15 21:30:53'),(10474,'2005-08-01 10:01:42',4482,488,'2005-08-08 12:32:42',1,'2006-02-15 21:30:53'),(10475,'2005-08-01 10:03:17',2931,115,'2005-08-10 15:50:17',2,'2006-02-15 21:30:53'),(10476,'2005-08-01 10:03:20',1993,263,'2005-08-10 06:52:20',1,'2006-02-15 21:30:53'),(10477,'2005-08-01 10:04:17',235,506,'2005-08-06 11:32:17',2,'2006-02-15 21:30:53'),(10478,'2005-08-01 10:09:06',3885,417,'2005-08-06 05:05:06',1,'2006-02-15 21:30:53'),(10479,'2005-08-01 10:11:25',4580,275,'2005-08-06 04:52:25',1,'2006-02-15 21:30:53'),(10480,'2005-08-01 10:13:41',553,560,'2005-08-03 10:27:41',1,'2006-02-15 21:30:53'),(10481,'2005-08-01 10:17:26',229,170,'2005-08-09 08:50:26',1,'2006-02-15 21:30:53'),(10482,'2005-08-01 10:17:47',48,358,'2005-08-02 15:04:47',2,'2006-02-15 21:30:53'),(10483,'2005-08-01 10:19:45',1521,129,'2005-08-04 09:29:45',1,'2006-02-15 21:30:53'),(10484,'2005-08-01 10:19:53',1908,400,'2005-08-03 05:36:53',1,'2006-02-15 21:30:53'),(10485,'2005-08-01 10:20:34',29,50,'2005-08-09 09:20:34',1,'2006-02-15 21:30:53'),(10486,'2005-08-01 10:23:43',2454,527,'2005-08-05 07:11:43',2,'2006-02-15 21:30:53'),(10487,'2005-08-01 10:26:34',1121,577,'2005-08-07 16:11:34',1,'2006-02-15 21:30:53'),(10488,'2005-08-01 10:27:27',297,423,'2005-08-02 11:05:27',2,'2006-02-15 21:30:53'),(10489,'2005-08-01 10:27:42',4067,54,'2005-08-07 12:56:42',1,'2006-02-15 21:30:53'),(10490,'2005-08-01 10:37:11',4365,329,'2005-08-03 10:01:11',2,'2006-02-15 21:30:53'),(10491,'2005-08-01 10:38:27',3091,24,'2005-08-04 04:55:27',2,'2006-02-15 21:30:53'),(10492,'2005-08-01 10:42:28',1669,334,'2005-08-02 07:05:28',1,'2006-02-15 21:30:53'),(10493,'2005-08-01 10:43:12',2375,285,'2005-08-07 08:13:12',2,'2006-02-15 21:30:53'),(10494,'2005-08-01 10:45:21',847,188,'2005-08-02 12:34:21',1,'2006-02-15 21:30:53'),(10495,'2005-08-01 10:45:51',2232,41,'2005-08-06 08:11:51',1,'2006-02-15 21:30:53'),(10496,'2005-08-01 10:53:16',411,525,'2005-08-08 10:34:16',2,'2006-02-15 21:30:53'),(10497,'2005-08-01 10:55:59',1060,499,'2005-08-07 11:15:59',1,'2006-02-15 21:30:53'),(10498,'2005-08-01 10:56:48',2672,355,'2005-08-03 15:46:48',2,'2006-02-15 21:30:53'),(10499,'2005-08-01 11:00:20',3293,459,'2005-08-10 11:52:20',2,'2006-02-15 21:30:53'),(10500,'2005-08-01 11:01:01',469,477,'2005-08-06 08:59:01',2,'2006-02-15 21:30:53'),(10501,'2005-08-01 11:04:46',1792,351,'2005-08-02 12:10:46',2,'2006-02-15 21:30:53'),(10502,'2005-08-01 11:06:39',3193,357,'2005-08-05 07:11:39',1,'2006-02-15 21:30:53'),(10503,'2005-08-01 11:07:44',1823,357,'2005-08-08 08:22:44',1,'2006-02-15 21:30:53'),(10504,'2005-08-01 11:10:55',3345,530,'2005-08-10 10:16:55',1,'2006-02-15 21:30:53'),(10505,'2005-08-01 11:13:59',2977,426,'2005-08-05 07:20:59',2,'2006-02-15 21:30:53'),(10506,'2005-08-01 11:16:05',1171,216,'2005-08-03 05:37:05',2,'2006-02-15 21:30:53'),(10507,'2005-08-01 11:22:20',367,45,'2005-08-04 13:18:20',2,'2006-02-15 21:30:53'),(10508,'2005-08-01 11:23:27',3890,431,'2005-08-02 10:17:27',1,'2006-02-15 21:30:53'),(10509,'2005-08-01 11:25:28',96,504,'2005-08-10 09:19:28',2,'2006-02-15 21:30:53'),(10510,'2005-08-01 11:28:30',410,259,'2005-08-07 11:37:30',1,'2006-02-15 21:30:53'),(10511,'2005-08-01 11:32:16',3874,487,'2005-08-04 09:38:16',1,'2006-02-15 21:30:53'),(10512,'2005-08-01 11:36:19',3294,438,'2005-08-09 06:52:19',2,'2006-02-15 21:30:53'),(10513,'2005-08-01 11:37:34',4057,105,'2005-08-02 17:15:34',2,'2006-02-15 21:30:53'),(10514,'2005-08-01 11:39:26',1512,7,'2005-08-03 07:53:26',2,'2006-02-15 21:30:53'),(10515,'2005-08-01 11:41:33',874,383,'2005-08-08 06:23:33',2,'2006-02-15 21:30:53'),(10516,'2005-08-01 11:41:55',3924,449,'2005-08-08 17:16:55',1,'2006-02-15 21:30:53'),(10517,'2005-08-01 11:41:57',2299,199,'2005-08-05 06:14:57',1,'2006-02-15 21:30:53'),(10518,'2005-08-01 11:44:08',4444,556,'2005-08-07 07:58:08',2,'2006-02-15 21:30:53'),(10519,'2005-08-01 11:44:13',1967,456,'2005-08-09 16:57:13',1,'2006-02-15 21:30:53'),(10520,'2005-08-01 11:45:58',4396,543,'2005-08-06 17:28:58',2,'2006-02-15 21:30:53'),(10521,'2005-08-01 11:46:17',662,346,'2005-08-05 11:06:17',2,'2006-02-15 21:30:53'),(10522,'2005-08-01 11:48:51',4159,254,'2005-08-05 12:40:51',1,'2006-02-15 21:30:53'),(10523,'2005-08-01 11:52:32',2408,34,'2005-08-02 10:47:32',1,'2006-02-15 21:30:53'),(10524,'2005-08-01 11:53:12',4116,38,'2005-08-08 10:40:12',2,'2006-02-15 21:30:53'),(10525,'2005-08-01 11:53:17',3811,36,'2005-08-07 07:24:17',1,'2006-02-15 21:30:53'),(10526,'2005-08-01 11:55:33',27,14,'2005-08-08 16:42:33',1,'2006-02-15 21:30:53'),(10527,'2005-08-01 11:55:54',4530,431,'2005-08-05 15:56:54',2,'2006-02-15 21:30:53'),(10528,'2005-08-01 11:56:22',4401,564,'2005-08-07 07:13:22',1,'2006-02-15 21:30:53'),(10529,'2005-08-01 12:00:02',851,444,'2005-08-08 16:18:02',1,'2006-02-15 21:30:53'),(10530,'2005-08-01 12:01:17',3216,520,'2005-08-06 09:55:17',2,'2006-02-15 21:30:53'),(10531,'2005-08-01 12:06:30',3846,459,'2005-08-04 10:23:30',2,'2006-02-15 21:30:53'),(10532,'2005-08-01 12:06:35',746,191,'2005-08-07 16:04:35',2,'2006-02-15 21:30:53'),(10533,'2005-08-01 12:14:16',1924,593,'2005-08-09 17:13:16',2,'2006-02-15 21:30:53'),(10534,'2005-08-01 12:15:11',4354,397,'2005-08-04 17:06:11',1,'2006-02-15 21:30:53'),(10535,'2005-08-01 12:21:13',1838,284,'2005-08-09 08:58:13',1,'2006-02-15 21:30:53'),(10536,'2005-08-01 12:21:53',1251,86,'2005-08-04 13:08:53',2,'2006-02-15 21:30:53'),(10537,'2005-08-01 12:22:28',2140,418,'2005-08-08 07:27:28',1,'2006-02-15 21:30:53'),(10538,'2005-08-01 12:22:41',686,37,'2005-08-02 10:31:41',2,'2006-02-15 21:30:53'),(10539,'2005-08-01 12:23:00',3341,232,'2005-08-07 10:25:00',2,'2006-02-15 21:30:53'),(10540,'2005-08-01 12:24:42',4121,84,'2005-08-03 08:39:42',2,'2006-02-15 21:30:53'),(10541,'2005-08-01 12:24:54',1413,234,'2005-08-03 16:18:54',1,'2006-02-15 21:30:53'),(10542,'2005-08-01 12:32:23',1102,465,'2005-08-08 16:26:23',1,'2006-02-15 21:30:53'),(10543,'2005-08-01 12:36:09',624,29,'2005-08-07 07:42:09',1,'2006-02-15 21:30:53'),(10544,'2005-08-01 12:36:21',3195,589,'2005-08-07 12:25:21',2,'2006-02-15 21:30:53'),(10545,'2005-08-01 12:37:46',4230,425,'2005-08-04 16:02:46',2,'2006-02-15 21:30:53'),(10546,'2005-08-01 12:44:17',1589,362,'2005-08-06 16:26:17',2,'2006-02-15 21:30:53'),(10547,'2005-08-01 12:44:17',1707,403,'2005-08-08 06:53:17',1,'2006-02-15 21:30:53'),(10548,'2005-08-01 12:44:32',1914,85,'2005-08-07 09:17:32',1,'2006-02-15 21:30:53'),(10549,'2005-08-01 12:46:39',3719,61,'2005-08-06 17:17:39',1,'2006-02-15 21:30:53'),(10550,'2005-08-01 12:46:52',1980,129,'2005-08-05 16:48:52',2,'2006-02-15 21:30:53'),(10551,'2005-08-01 12:48:55',2974,294,'2005-08-10 16:11:55',1,'2006-02-15 21:30:53'),(10552,'2005-08-01 12:49:44',4263,119,'2005-08-04 16:20:44',2,'2006-02-15 21:30:53'),(10553,'2005-08-01 12:54:06',2768,415,'2005-08-06 15:27:06',1,'2006-02-15 21:30:53'),(10554,'2005-08-01 12:56:19',3220,209,'2005-08-03 09:44:19',2,'2006-02-15 21:30:53'),(10555,'2005-08-01 12:56:38',377,487,'2005-08-10 18:19:38',1,'2006-02-15 21:30:53'),(10556,'2005-08-01 12:58:42',144,117,'2005-08-03 07:18:42',2,'2006-02-15 21:30:53'),(10557,'2005-08-01 12:59:24',240,385,'2005-08-04 17:08:24',2,'2006-02-15 21:30:53'),(10558,'2005-08-01 13:00:20',4399,117,'2005-08-05 16:31:20',1,'2006-02-15 21:30:53'),(10559,'2005-08-01 13:02:58',2861,174,'2005-08-09 10:03:58',2,'2006-02-15 21:30:53'),(10560,'2005-08-01 13:04:57',1534,427,'2005-08-05 18:25:57',2,'2006-02-15 21:30:53'),(10561,'2005-08-01 13:05:35',2195,8,'2005-08-04 08:34:35',2,'2006-02-15 21:30:53'),(10562,'2005-08-01 13:05:52',1947,178,'2005-08-02 17:05:52',1,'2006-02-15 21:30:53'),(10563,'2005-08-01 13:06:03',1885,214,'2005-08-09 08:39:03',2,'2006-02-15 21:30:53'),(10564,'2005-08-01 13:07:34',4469,387,'2005-08-06 15:14:34',2,'2006-02-15 21:30:53'),(10565,'2005-08-01 13:08:27',347,165,'2005-08-02 10:30:27',1,'2006-02-15 21:30:53'),(10566,'2005-08-01 13:12:11',3988,269,'2005-08-05 11:16:11',2,'2006-02-15 21:30:53'),(10567,'2005-08-01 13:16:01',2744,212,'2005-08-05 14:59:01',1,'2006-02-15 21:30:53'),(10568,'2005-08-01 13:17:28',3009,130,'2005-08-08 17:04:28',1,'2006-02-15 21:30:53'),(10569,'2005-08-01 13:18:23',611,179,'2005-08-10 13:33:23',1,'2006-02-15 21:30:53'),(10570,'2005-08-01 13:23:06',369,21,'2005-08-05 15:30:06',2,'2006-02-15 21:30:53'),(10571,'2005-08-01 13:25:30',3660,308,'2005-08-02 16:43:30',2,'2006-02-15 21:30:53'),(10572,'2005-08-01 13:26:53',1239,386,'2005-08-07 18:47:53',2,'2006-02-15 21:30:53'),(10573,'2005-08-01 13:27:24',4252,585,'2005-08-04 15:09:24',2,'2006-02-15 21:30:53'),(10574,'2005-08-01 13:36:51',679,287,'2005-08-10 13:25:51',2,'2006-02-15 21:30:53'),(10575,'2005-08-01 13:41:41',4447,251,'2005-08-08 11:30:41',1,'2006-02-15 21:30:53'),(10576,'2005-08-01 13:46:02',1876,180,'2005-08-05 10:19:02',1,'2006-02-15 21:30:53'),(10577,'2005-08-01 13:46:38',2240,428,'2005-08-06 11:35:38',2,'2006-02-15 21:30:53'),(10578,'2005-08-01 13:48:02',3704,113,'2005-08-07 13:40:02',1,'2006-02-15 21:30:53'),(10579,'2005-08-01 13:48:22',4068,270,'2005-08-07 11:51:22',1,'2006-02-15 21:30:53'),(10580,'2005-08-01 13:51:14',590,234,'2005-08-08 11:49:14',2,'2006-02-15 21:30:53'),(10581,'2005-08-01 13:52:30',2801,217,'2005-08-10 19:11:30',1,'2006-02-15 21:30:53'),(10582,'2005-08-01 13:54:22',2536,233,'2005-08-05 16:46:22',2,'2006-02-15 21:30:53'),(10583,'2005-08-01 13:54:35',704,125,'2005-08-03 18:21:35',1,'2006-02-15 21:30:53'),(10584,'2005-08-01 13:58:47',715,86,'2005-08-06 13:38:47',2,'2006-02-15 21:30:53'),(10585,'2005-08-01 14:00:42',2670,228,'2005-08-09 11:42:42',2,'2006-02-15 21:30:53'),(10586,'2005-08-01 14:00:59',3306,583,'2005-08-06 10:00:59',2,'2006-02-15 21:30:53'),(10587,'2005-08-01 14:03:38',3000,521,'2005-08-08 19:59:38',2,'2006-02-15 21:30:53'),(10588,'2005-08-01 14:10:21',2384,49,'2005-08-03 13:47:21',2,'2006-02-15 21:30:53'),(10589,'2005-08-01 14:11:09',4280,375,'2005-08-09 09:28:09',2,'2006-02-15 21:30:53'),(10590,'2005-08-01 14:11:53',740,78,'2005-08-04 20:04:53',1,'2006-02-15 21:30:53'),(10591,'2005-08-01 14:12:29',3360,52,'2005-08-04 08:46:29',2,'2006-02-15 21:30:53'),(10592,'2005-08-01 14:13:00',829,265,'2005-08-09 13:03:00',2,'2006-02-15 21:30:53'),(10593,'2005-08-01 14:13:19',1886,144,'2005-08-06 08:48:19',2,'2006-02-15 21:30:53'),(10594,'2005-08-01 14:14:59',1826,53,'2005-08-07 10:48:59',2,'2006-02-15 21:30:53'),(10595,'2005-08-01 14:16:28',966,137,'2005-08-03 10:37:28',1,'2006-02-15 21:30:53'),(10596,'2005-08-01 14:18:57',803,112,'2005-08-07 14:59:57',2,'2006-02-15 21:30:53'),(10597,'2005-08-01 14:19:48',3292,3,'2005-08-08 20:01:48',1,'2006-02-15 21:30:53'),(10598,'2005-08-01 14:23:36',2341,397,'2005-08-10 14:07:36',2,'2006-02-15 21:30:53'),(10599,'2005-08-01 14:23:58',2422,271,'2005-08-06 10:45:58',2,'2006-02-15 21:30:53'),(10600,'2005-08-01 14:25:21',3900,294,'2005-08-06 18:00:21',1,'2006-02-15 21:30:53'),(10601,'2005-08-01 14:25:40',2843,420,'2005-08-10 09:07:40',1,'2006-02-15 21:30:53'),(10602,'2005-08-01 14:30:23',1506,111,'2005-08-07 15:20:23',1,'2006-02-15 21:30:53'),(10603,'2005-08-01 14:30:35',4024,394,'2005-08-05 11:13:35',2,'2006-02-15 21:30:53'),(10604,'2005-08-01 14:35:08',2833,250,'2005-08-08 10:19:08',2,'2006-02-15 21:30:53'),(10605,'2005-08-01 14:36:26',680,341,'2005-08-06 12:04:26',2,'2006-02-15 21:30:53'),(10606,'2005-08-01 14:39:15',81,335,'2005-08-08 11:31:15',1,'2006-02-15 21:30:53'),(10607,'2005-08-01 14:44:43',3999,438,'2005-08-02 16:39:43',2,'2006-02-15 21:30:53'),(10608,'2005-08-01 14:48:41',3835,381,'2005-08-04 17:32:41',2,'2006-02-15 21:30:53'),(10609,'2005-08-01 14:48:45',2587,5,'2005-08-04 13:41:45',2,'2006-02-15 21:30:53'),(10610,'2005-08-01 14:49:41',1865,396,'2005-08-03 13:07:41',1,'2006-02-15 21:30:53'),(10611,'2005-08-01 14:53:52',957,135,'2005-08-07 09:15:52',2,'2006-02-15 21:30:53'),(10612,'2005-08-01 14:55:31',287,554,'2005-08-06 19:01:31',1,'2006-02-15 21:30:53'),(10613,'2005-08-01 14:56:14',4357,527,'2005-08-07 09:33:14',1,'2006-02-15 21:30:53'),(10614,'2005-08-01 14:57:00',232,533,'2005-08-10 09:31:00',2,'2006-02-15 21:30:53'),(10615,'2005-08-01 14:58:14',2639,34,'2005-08-02 13:38:14',1,'2006-02-15 21:30:53'),(10616,'2005-08-01 14:59:50',1094,20,'2005-08-07 11:38:50',2,'2006-02-15 21:30:53'),(10617,'2005-08-01 15:05:52',4344,476,'2005-08-09 18:54:52',1,'2006-02-15 21:30:53'),(10618,'2005-08-01 15:06:38',3729,386,'2005-08-06 15:52:38',2,'2006-02-15 21:30:53'),(10619,'2005-08-01 15:07:04',2189,132,'2005-08-07 11:42:04',2,'2006-02-15 21:30:53'),(10620,'2005-08-01 15:09:17',3064,183,'2005-08-09 13:58:17',1,'2006-02-15 21:30:53'),(10621,'2005-08-01 15:10:26',1650,172,'2005-08-04 10:58:26',1,'2006-02-15 21:30:53'),(10622,'2005-08-01 15:12:00',3044,171,'2005-08-08 14:09:00',1,'2006-02-15 21:30:53'),(10623,'2005-08-01 15:22:38',4426,494,'2005-08-03 11:03:38',2,'2006-02-15 21:30:53'),(10624,'2005-08-01 15:27:05',3801,74,'2005-08-05 19:50:05',1,'2006-02-15 21:30:53'),(10625,'2005-08-01 15:27:10',3022,5,'2005-08-02 13:16:10',1,'2006-02-15 21:30:53'),(10626,'2005-08-01 15:32:41',1042,122,'2005-08-05 18:08:41',1,'2006-02-15 21:30:53'),(10627,'2005-08-01 15:33:03',2026,472,'2005-08-02 21:26:03',1,'2006-02-15 21:30:53'),(10628,'2005-08-01 15:33:19',427,285,'2005-08-05 17:27:19',1,'2006-02-15 21:30:53'),(10629,'2005-08-01 15:33:32',997,575,'2005-08-08 12:40:32',2,'2006-02-15 21:30:53'),(10630,'2005-08-01 15:34:46',2335,39,'2005-08-03 10:50:46',1,'2006-02-15 21:30:53'),(10631,'2005-08-01 15:35:14',2712,304,'2005-08-03 10:48:14',1,'2006-02-15 21:30:53'),(10632,'2005-08-01 15:36:56',1290,406,'2005-08-05 17:32:56',1,'2006-02-15 21:30:53'),(10633,'2005-08-01 15:37:17',3125,475,'2005-08-10 14:30:17',2,'2006-02-15 21:30:53'),(10634,'2005-08-01 15:37:48',445,592,'2005-08-02 12:11:48',2,'2006-02-15 21:30:53'),(10635,'2005-08-01 15:37:58',547,52,'2005-08-07 11:15:58',2,'2006-02-15 21:30:53'),(10636,'2005-08-01 15:40:35',621,385,'2005-08-05 18:46:35',1,'2006-02-15 21:30:53'),(10637,'2005-08-01 15:44:09',1243,161,'2005-08-04 14:42:09',1,'2006-02-15 21:30:53'),(10638,'2005-08-01 15:44:20',2239,132,'2005-08-08 16:05:20',2,'2006-02-15 21:30:53'),(10639,'2005-08-01 15:44:43',1015,39,'2005-08-10 13:51:43',1,'2006-02-15 21:30:53'),(10640,'2005-08-01 15:44:51',3020,375,'2005-08-06 15:52:51',1,'2006-02-15 21:30:53'),(10641,'2005-08-01 15:44:57',972,285,'2005-08-04 18:15:57',2,'2006-02-15 21:30:53'),(10642,'2005-08-01 15:45:11',2573,294,'2005-08-02 20:13:11',1,'2006-02-15 21:30:53'),(10643,'2005-08-01 15:48:33',3853,495,'2005-08-06 20:24:33',2,'2006-02-15 21:30:53'),(10644,'2005-08-01 15:52:00',4374,7,'2005-08-08 16:08:00',1,'2006-02-15 21:30:53'),(10645,'2005-08-01 15:52:01',3864,130,'2005-08-09 18:58:01',1,'2006-02-15 21:30:53'),(10646,'2005-08-01 15:57:55',1752,209,'2005-08-02 19:08:55',1,'2006-02-15 21:30:53'),(10647,'2005-08-01 16:08:46',3137,115,'2005-08-06 20:37:46',2,'2006-02-15 21:30:53'),(10648,'2005-08-01 16:08:52',691,270,'2005-08-05 20:17:52',1,'2006-02-15 21:30:53'),(10649,'2005-08-01 16:11:40',1032,278,'2005-08-06 14:09:40',2,'2006-02-15 21:30:53'),(10650,'2005-08-01 16:18:45',2306,242,'2005-08-09 16:29:45',1,'2006-02-15 21:30:53'),(10651,'2005-08-01 16:20:22',1541,404,'2005-08-03 15:53:22',1,'2006-02-15 21:30:53'),(10652,'2005-08-01 16:24:08',1633,241,'2005-08-03 16:00:08',2,'2006-02-15 21:30:53'),(10653,'2005-08-01 16:28:07',1190,75,'2005-08-07 21:22:07',2,'2006-02-15 21:30:53'),(10654,'2005-08-01 16:31:35',2522,399,'2005-08-05 12:04:35',2,'2006-02-15 21:30:53'),(10655,'2005-08-01 16:33:27',1399,385,'2005-08-08 17:17:27',2,'2006-02-15 21:30:53'),(10656,'2005-08-01 16:38:04',2571,80,'2005-08-09 19:37:04',2,'2006-02-15 21:30:53'),(10657,'2005-08-01 16:38:44',3075,590,'2005-08-06 16:05:44',2,'2006-02-15 21:30:53'),(10658,'2005-08-01 16:39:18',2943,469,'2005-08-09 18:17:18',2,'2006-02-15 21:30:53'),(10659,'2005-08-01 16:40:34',786,238,'2005-08-09 21:00:34',2,'2006-02-15 21:30:53'),(10660,'2005-08-01 16:48:01',2518,253,'2005-08-07 14:42:01',2,'2006-02-15 21:30:53'),(10661,'2005-08-01 16:48:31',3311,177,'2005-08-02 21:02:31',1,'2006-02-15 21:30:53'),(10662,'2005-08-01 16:50:57',2857,151,'2005-08-03 17:19:57',1,'2006-02-15 21:30:53'),(10663,'2005-08-01 16:51:08',4258,433,'2005-08-08 21:17:08',2,'2006-02-15 21:30:53'),(10664,'2005-08-01 16:51:15',3167,337,'2005-08-04 19:14:15',2,'2006-02-15 21:30:53'),(10665,'2005-08-01 16:56:17',3594,133,'2005-08-03 18:58:17',1,'2006-02-15 21:30:53'),(10666,'2005-08-01 16:56:36',1945,197,'2005-08-07 22:23:36',2,'2006-02-15 21:30:53'),(10667,'2005-08-01 16:58:22',3937,340,'2005-08-10 15:41:22',1,'2006-02-15 21:30:53'),(10668,'2005-08-01 17:00:27',2085,58,'2005-08-02 14:49:27',2,'2006-02-15 21:30:53'),(10669,'2005-08-01 17:03:28',2121,559,'2005-08-08 21:34:28',2,'2006-02-15 21:30:53'),(10670,'2005-08-01 17:07:16',156,512,'2005-08-10 11:46:16',2,'2006-02-15 21:30:53'),(10671,'2005-08-01 17:09:59',4430,10,'2005-08-09 21:36:59',1,'2006-02-15 21:30:53'),(10672,'2005-08-01 17:10:54',3674,375,'2005-08-07 12:19:54',2,'2006-02-15 21:30:53'),(10673,'2005-08-01 17:11:51',2735,528,'2005-08-03 13:32:51',1,'2006-02-15 21:30:53'),(10674,'2005-08-01 17:11:52',1962,340,'2005-08-08 19:34:52',1,'2006-02-15 21:30:53'),(10675,'2005-08-01 17:11:57',649,522,'2005-08-10 17:18:57',1,'2006-02-15 21:30:53'),(10676,'2005-08-01 17:14:15',629,79,'2005-08-04 12:34:15',1,'2006-02-15 21:30:53'),(10677,'2005-08-01 17:24:35',4350,483,'2005-08-04 20:03:35',1,'2006-02-15 21:30:53'),(10678,'2005-08-01 17:26:24',4438,56,'2005-08-05 22:55:24',1,'2006-02-15 21:30:53'),(10679,'2005-08-01 17:27:58',4437,198,'2005-08-08 16:06:58',1,'2006-02-15 21:30:53'),(10680,'2005-08-01 17:28:05',2498,60,'2005-08-04 19:34:05',1,'2006-02-15 21:30:53'),(10681,'2005-08-01 17:30:35',1468,119,'2005-08-02 14:48:35',2,'2006-02-15 21:30:53'),(10682,'2005-08-01 17:32:53',4557,18,'2005-08-06 15:49:53',2,'2006-02-15 21:30:53'),(10683,'2005-08-01 17:33:03',244,246,'2005-08-04 23:12:03',1,'2006-02-15 21:30:53'),(10684,'2005-08-01 17:47:00',1985,244,'2005-08-09 15:00:00',2,'2006-02-15 21:30:53'),(10685,'2005-08-01 17:49:38',2029,200,'2005-08-07 21:04:38',2,'2006-02-15 21:30:53'),(10686,'2005-08-01 17:51:21',2542,150,'2005-08-03 19:01:21',1,'2006-02-15 21:30:53'),(10687,'2005-08-01 17:53:02',3191,16,'2005-08-05 19:16:02',2,'2006-02-15 21:30:53'),(10688,'2005-08-01 17:53:43',3161,449,'2005-08-09 21:50:43',1,'2006-02-15 21:30:53'),(10689,'2005-08-01 18:04:18',1442,568,'2005-08-05 21:17:18',2,'2006-02-15 21:30:53'),(10690,'2005-08-01 18:05:54',807,80,'2005-08-10 21:43:54',2,'2006-02-15 21:30:53'),(10691,'2005-08-01 18:09:53',4281,276,'2005-08-03 16:32:53',1,'2006-02-15 21:30:53'),(10692,'2005-08-01 18:12:35',371,596,'2005-08-07 13:06:35',1,'2006-02-15 21:30:53'),(10693,'2005-08-01 18:14:14',2387,444,'2005-08-03 22:00:14',2,'2006-02-15 21:30:53'),(10694,'2005-08-01 18:15:07',3429,98,'2005-08-10 15:38:07',1,'2006-02-15 21:30:53'),(10695,'2005-08-01 18:16:20',3612,374,'2005-08-03 12:21:20',2,'2006-02-15 21:30:53'),(10696,'2005-08-01 18:18:13',47,120,'2005-08-04 14:09:13',1,'2006-02-15 21:30:53'),(10697,'2005-08-01 18:20:23',3115,519,'2005-08-07 21:18:23',1,'2006-02-15 21:30:53'),(10698,'2005-08-01 18:24:41',2738,135,'2005-08-08 18:59:41',2,'2006-02-15 21:30:53'),(10699,'2005-08-01 18:24:51',1029,125,'2005-08-06 20:18:51',1,'2006-02-15 21:30:53'),(10700,'2005-08-01 18:26:31',4259,203,'2005-08-07 19:51:31',2,'2006-02-15 21:30:53'),(10701,'2005-08-01 18:28:17',3958,538,'2005-08-09 21:51:17',1,'2006-02-15 21:30:53'),(10702,'2005-08-01 18:34:59',2802,560,'2005-08-09 23:44:59',2,'2006-02-15 21:30:53'),(10703,'2005-08-01 18:37:39',1818,181,'2005-08-07 23:50:39',2,'2006-02-15 21:30:53'),(10704,'2005-08-01 18:38:02',960,594,'2005-08-08 20:19:02',1,'2006-02-15 21:30:53'),(10705,'2005-08-01 18:38:54',4338,381,'2005-08-04 18:00:54',1,'2006-02-15 21:30:53'),(10706,'2005-08-01 18:41:28',1183,147,'2005-08-10 14:30:28',1,'2006-02-15 21:30:53'),(10707,'2005-08-01 18:41:34',1165,558,'2005-08-06 12:41:34',1,'2006-02-15 21:30:53'),(10708,'2005-08-01 18:43:28',3978,567,'2005-08-09 15:24:28',1,'2006-02-15 21:30:53'),(10709,'2005-08-01 18:43:57',282,418,'2005-08-06 13:17:57',2,'2006-02-15 21:30:53'),(10710,'2005-08-01 18:44:36',3082,177,'2005-08-03 13:17:36',1,'2006-02-15 21:30:53'),(10711,'2005-08-01 18:45:09',4278,400,'2005-08-02 19:47:09',2,'2006-02-15 21:30:53'),(10712,'2005-08-01 18:47:56',1188,532,'2005-08-07 19:26:56',2,'2006-02-15 21:30:53'),(10713,'2005-08-01 18:50:05',2030,369,'2005-08-05 00:43:05',2,'2006-02-15 21:30:53'),(10714,'2005-08-01 18:51:29',1465,64,'2005-08-04 18:49:29',2,'2006-02-15 21:30:53'),(10715,'2005-08-01 18:51:48',1054,386,'2005-08-06 14:44:48',1,'2006-02-15 21:30:53'),(10716,'2005-08-01 18:53:48',3405,515,'2005-08-04 13:49:48',1,'2006-02-15 21:30:53'),(10717,'2005-08-01 18:53:53',2934,365,'2005-08-05 21:28:53',1,'2006-02-15 21:30:53'),(10718,'2005-08-01 18:55:38',2763,394,'2005-08-04 14:45:38',1,'2006-02-15 21:30:53'),(10719,'2005-08-01 19:00:28',3861,188,'2005-08-07 17:04:28',1,'2006-02-15 21:30:53'),(10720,'2005-08-01 19:04:33',3712,326,'2005-08-06 23:12:33',2,'2006-02-15 21:30:53'),(10721,'2005-08-01 19:05:18',904,18,'2005-08-09 20:45:18',2,'2006-02-15 21:30:53'),(10722,'2005-08-01 19:07:08',2849,90,'2005-08-04 14:09:08',2,'2006-02-15 21:30:53'),(10723,'2005-08-01 19:10:49',2526,580,'2005-08-08 19:21:49',2,'2006-02-15 21:30:53'),(10724,'2005-08-01 19:10:59',3425,576,'2005-08-07 18:44:59',1,'2006-02-15 21:30:53'),(10725,'2005-08-01 19:11:04',4486,534,'2005-08-07 18:16:04',2,'2006-02-15 21:30:53'),(10726,'2005-08-01 19:14:53',749,75,'2005-08-08 23:56:53',2,'2006-02-15 21:30:53'),(10727,'2005-08-01 19:15:08',2049,16,'2005-08-03 13:52:08',1,'2006-02-15 21:30:53'),(10728,'2005-08-01 19:15:09',3133,309,'2005-08-04 19:35:09',1,'2006-02-15 21:30:53'),(10729,'2005-08-01 19:21:11',2918,595,'2005-08-07 21:20:11',2,'2006-02-15 21:30:53'),(10730,'2005-08-01 19:21:42',1793,368,'2005-08-10 21:18:42',1,'2006-02-15 21:30:53'),(10731,'2005-08-01 19:21:48',4248,278,'2005-08-08 22:01:48',2,'2006-02-15 21:30:53'),(10732,'2005-08-01 19:25:18',2810,538,'2005-08-10 22:26:18',1,'2006-02-15 21:30:53'),(10733,'2005-08-01 19:28:01',3980,560,'2005-08-09 18:41:01',1,'2006-02-15 21:30:53'),(10734,'2005-08-01 19:28:47',1130,21,'2005-08-03 00:41:47',2,'2006-02-15 21:30:53'),(10735,'2005-08-01 19:29:45',4061,544,'2005-08-02 19:50:45',2,'2006-02-15 21:30:53'),(10736,'2005-08-01 19:30:21',2227,272,'2005-08-02 22:37:21',1,'2006-02-15 21:30:53'),(10737,'2005-08-01 19:31:24',1773,149,'2005-08-10 19:17:24',1,'2006-02-15 21:30:53'),(10738,'2005-08-01 19:39:08',544,377,'2005-08-10 20:37:08',1,'2006-02-15 21:30:53'),(10739,'2005-08-01 19:46:11',3160,197,'2005-08-06 21:08:11',2,'2006-02-15 21:30:53'),(10740,'2005-08-01 19:50:32',3215,144,'2005-08-07 23:25:32',1,'2006-02-15 21:30:53'),(10741,'2005-08-01 19:52:52',3300,469,'2005-08-04 19:58:52',1,'2006-02-15 21:30:53'),(10742,'2005-08-01 19:53:13',3658,416,'2005-08-10 15:05:13',1,'2006-02-15 21:30:53'),(10743,'2005-08-01 19:55:09',4206,197,'2005-08-03 19:29:09',1,'2006-02-15 21:30:53'),(10744,'2005-08-01 19:56:49',565,439,'2005-08-09 16:33:49',2,'2006-02-15 21:30:53'),(10745,'2005-08-01 19:57:06',446,307,'2005-08-07 18:04:06',1,'2006-02-15 21:30:53'),(10746,'2005-08-01 19:58:49',305,508,'2005-08-10 19:00:49',2,'2006-02-15 21:30:53'),(10747,'2005-08-01 19:59:41',4527,266,'2005-08-10 00:00:41',2,'2006-02-15 21:30:53'),(10748,'2005-08-01 20:01:24',3769,181,'2005-08-05 19:55:24',1,'2006-02-15 21:30:53'),(10749,'2005-08-01 20:02:01',2953,214,'2005-08-03 14:20:01',1,'2006-02-15 21:30:53'),(10750,'2005-08-01 20:06:00',3206,201,'2005-08-07 15:48:00',1,'2006-02-15 21:30:53'),(10751,'2005-08-01 20:06:10',3257,518,'2005-08-10 22:36:10',2,'2006-02-15 21:30:53'),(10752,'2005-08-01 20:08:49',3203,147,'2005-08-10 15:41:49',2,'2006-02-15 21:30:53'),(10753,'2005-08-01 20:09:24',1557,273,'2005-08-09 19:31:24',1,'2006-02-15 21:30:53'),(10754,'2005-08-01 20:12:33',2122,460,'2005-08-10 01:07:33',2,'2006-02-15 21:30:53'),(10755,'2005-08-01 20:14:14',1217,239,'2005-08-07 01:04:14',1,'2006-02-15 21:30:53'),(10756,'2005-08-01 20:17:03',4247,596,'2005-08-08 18:31:03',2,'2006-02-15 21:30:53'),(10757,'2005-08-01 20:22:44',102,188,'2005-08-04 19:48:44',2,'2006-02-15 21:30:53'),(10758,'2005-08-01 20:22:51',191,373,'2005-08-10 16:11:51',1,'2006-02-15 21:30:53'),(10759,'2005-08-01 20:22:51',3528,256,'2005-08-07 22:07:51',1,'2006-02-15 21:30:53'),(10760,'2005-08-01 20:25:20',1311,497,'2005-08-09 16:57:20',1,'2006-02-15 21:30:53'),(10761,'2005-08-01 20:25:35',3967,36,'2005-08-08 15:20:35',2,'2006-02-15 21:30:53'),(10762,'2005-08-01 20:28:39',1363,208,'2005-08-05 17:36:39',1,'2006-02-15 21:30:53'),(10763,'2005-08-01 20:32:27',987,276,'2005-08-05 01:24:27',2,'2006-02-15 21:30:53'),(10764,'2005-08-01 20:32:42',3808,357,'2005-08-03 22:14:42',2,'2006-02-15 21:30:53'),(10765,'2005-08-01 20:34:51',566,337,'2005-08-04 00:02:51',1,'2006-02-15 21:30:53'),(10766,'2005-08-01 20:36:29',947,420,'2005-08-04 00:30:29',1,'2006-02-15 21:30:53'),(10767,'2005-08-01 20:37:23',2875,488,'2005-08-04 23:15:23',2,'2006-02-15 21:30:53'),(10768,'2005-08-01 20:39:32',454,273,'2005-08-10 19:41:32',1,'2006-02-15 21:30:53'),(10769,'2005-08-01 20:43:02',3222,348,'2005-08-05 02:32:02',1,'2006-02-15 21:30:53'),(10770,'2005-08-01 20:45:39',2567,262,'2005-08-04 19:21:39',1,'2006-02-15 21:30:53'),(10771,'2005-08-01 20:49:35',1274,485,'2005-08-10 16:58:35',1,'2006-02-15 21:30:53'),(10772,'2005-08-01 20:51:10',132,485,'2005-08-10 15:50:10',1,'2006-02-15 21:30:53'),(10773,'2005-08-01 20:53:45',3854,181,'2005-08-07 00:16:45',1,'2006-02-15 21:30:53'),(10774,'2005-08-01 20:54:33',4231,407,'2005-08-08 20:59:33',2,'2006-02-15 21:30:53'),(10775,'2005-08-01 20:59:52',4190,263,'2005-08-04 19:31:52',2,'2006-02-15 21:30:53'),(10776,'2005-08-01 20:59:58',1598,565,'2005-08-10 20:33:58',2,'2006-02-15 21:30:53'),(10777,'2005-08-01 21:03:50',3487,493,'2005-08-06 19:29:50',1,'2006-02-15 21:30:53'),(10778,'2005-08-01 21:11:39',1939,220,'2005-08-02 22:59:39',2,'2006-02-15 21:30:53'),(10779,'2005-08-01 21:11:54',2092,578,'2005-08-09 21:00:54',2,'2006-02-15 21:30:53'),(10780,'2005-08-01 21:14:24',1450,51,'2005-08-07 16:32:24',2,'2006-02-15 21:30:53'),(10781,'2005-08-01 21:22:41',1321,259,'2005-08-06 01:02:41',1,'2006-02-15 21:30:53'),(10782,'2005-08-01 21:23:25',1507,577,'2005-08-03 20:15:25',2,'2006-02-15 21:30:53'),(10783,'2005-08-01 21:23:37',1192,495,'2005-08-09 20:18:37',1,'2006-02-15 21:30:53'),(10784,'2005-08-01 21:24:28',3494,208,'2005-08-09 19:23:28',1,'2006-02-15 21:30:53'),(10785,'2005-08-01 21:24:55',2282,397,'2005-08-06 17:47:55',1,'2006-02-15 21:30:53'),(10786,'2005-08-01 21:29:34',50,490,'2005-08-10 17:27:34',1,'2006-02-15 21:30:53'),(10787,'2005-08-01 21:35:01',3246,127,'2005-08-10 23:30:01',1,'2006-02-15 21:30:53'),(10788,'2005-08-01 21:37:10',3350,160,'2005-08-03 01:33:10',1,'2006-02-15 21:30:53'),(10789,'2005-08-01 21:37:55',3298,403,'2005-08-07 17:01:55',2,'2006-02-15 21:30:53'),(10790,'2005-08-01 21:38:37',3080,274,'2005-08-08 17:20:37',2,'2006-02-15 21:30:53'),(10791,'2005-08-01 21:41:52',2061,338,'2005-08-04 03:28:52',2,'2006-02-15 21:30:53'),(10792,'2005-08-01 21:44:24',1037,264,'2005-08-02 19:48:24',2,'2006-02-15 21:30:53'),(10793,'2005-08-01 21:48:03',3018,225,'2005-08-10 19:16:03',1,'2006-02-15 21:30:53'),(10794,'2005-08-01 21:51:15',889,27,'2005-08-10 18:51:15',2,'2006-02-15 21:30:53'),(10795,'2005-08-01 21:56:37',2748,76,'2005-08-03 01:36:37',1,'2006-02-15 21:30:53'),(10796,'2005-08-01 21:56:41',2113,534,'2005-08-05 01:09:41',1,'2006-02-15 21:30:53'),(10797,'2005-08-01 22:02:51',1731,308,'2005-08-03 23:07:51',1,'2006-02-15 21:30:53'),(10798,'2005-08-01 22:03:10',382,141,'2005-08-08 01:34:10',1,'2006-02-15 21:30:53'),(10799,'2005-08-01 22:03:31',3282,145,'2005-08-06 20:19:31',2,'2006-02-15 21:30:53'),(10800,'2005-08-01 22:07:44',507,583,'2005-08-05 22:45:44',1,'2006-02-15 21:30:53'),(10801,'2005-08-01 22:09:35',3757,116,'2005-08-08 22:23:35',1,'2006-02-15 21:30:53'),(10802,'2005-08-01 22:18:32',3998,178,'2005-08-10 18:41:32',2,'2006-02-15 21:30:53'),(10803,'2005-08-01 22:22:07',3318,46,'2005-08-08 02:37:07',2,'2006-02-15 21:30:53'),(10804,'2005-08-01 22:22:11',2915,596,'2005-08-03 03:42:11',2,'2006-02-15 21:30:53'),(10805,'2005-08-01 22:23:37',557,203,'2005-08-05 01:22:37',2,'2006-02-15 21:30:53'),(10806,'2005-08-01 22:25:29',3553,89,'2005-08-04 18:46:29',2,'2006-02-15 21:30:53'),(10807,'2005-08-01 22:26:10',1673,287,'2005-08-05 21:55:10',1,'2006-02-15 21:30:53'),(10808,'2005-08-01 22:37:11',596,480,'2005-08-09 02:37:11',1,'2006-02-15 21:30:53'),(10809,'2005-08-01 22:39:27',1167,340,'2005-08-03 03:44:27',2,'2006-02-15 21:30:53'),(10810,'2005-08-01 22:40:39',2314,376,'2005-08-06 19:47:39',1,'2006-02-15 21:30:53'),(10811,'2005-08-01 22:41:15',4012,209,'2005-08-10 00:10:15',1,'2006-02-15 21:30:53'),(10812,'2005-08-01 22:41:16',3762,11,'2005-08-07 00:50:16',1,'2006-02-15 21:30:53'),(10813,'2005-08-01 22:43:00',3580,456,'2005-08-03 21:43:00',1,'2006-02-15 21:30:53'),(10814,'2005-08-01 22:43:12',2758,49,'2005-08-05 02:35:12',2,'2006-02-15 21:30:53'),(10815,'2005-08-01 22:46:21',877,62,'2005-08-03 02:43:21',2,'2006-02-15 21:30:53'),(10816,'2005-08-01 22:48:57',905,129,'2005-08-10 04:39:57',2,'2006-02-15 21:30:53'),(10817,'2005-08-01 22:51:08',3056,501,'2005-08-10 16:55:08',2,'2006-02-15 21:30:53'),(10818,'2005-08-01 22:52:45',4549,309,'2005-08-06 04:07:45',1,'2006-02-15 21:30:53'),(10819,'2005-08-01 22:52:57',983,308,'2005-08-06 00:08:57',1,'2006-02-15 21:30:53'),(10820,'2005-08-01 22:53:40',1487,97,'2005-08-02 17:59:40',2,'2006-02-15 21:30:53'),(10821,'2005-08-01 22:54:27',2016,522,'2005-08-07 02:15:27',2,'2006-02-15 21:30:53'),(10822,'2005-08-01 22:54:28',3895,343,'2005-08-02 17:19:28',1,'2006-02-15 21:30:53'),(10823,'2005-08-01 22:59:10',3322,405,'2005-08-08 23:44:10',1,'2006-02-15 21:30:53'),(10824,'2005-08-01 23:00:22',3948,482,'2005-08-04 04:14:22',2,'2006-02-15 21:30:53'),(10825,'2005-08-01 23:05:33',4386,587,'2005-08-04 04:33:33',1,'2006-02-15 21:30:53'),(10826,'2005-08-01 23:07:56',1228,476,'2005-08-08 04:10:56',2,'2006-02-15 21:30:53'),(10827,'2005-08-01 23:13:00',1590,46,'2005-08-08 02:51:00',1,'2006-02-15 21:30:53'),(10828,'2005-08-01 23:16:10',2448,471,'2005-08-09 21:17:10',1,'2006-02-15 21:30:53'),(10829,'2005-08-01 23:17:06',168,554,'2005-08-09 17:22:06',2,'2006-02-15 21:30:53'),(10830,'2005-08-01 23:18:06',4176,148,'2005-08-06 23:15:06',2,'2006-02-15 21:30:53'),(10831,'2005-08-01 23:22:45',1496,78,'2005-08-07 01:05:45',2,'2006-02-15 21:30:53'),(10832,'2005-08-01 23:24:53',4096,487,'2005-08-06 23:18:53',1,'2006-02-15 21:30:53'),(10833,'2005-08-01 23:25:55',4380,422,'2005-08-10 18:01:55',1,'2006-02-15 21:30:53'),(10834,'2005-08-01 23:28:00',2270,252,'2005-08-07 01:21:00',1,'2006-02-15 21:30:53'),(10835,'2005-08-01 23:28:49',351,90,'2005-08-10 21:28:49',2,'2006-02-15 21:30:53'),(10836,'2005-08-01 23:29:58',4534,217,'2005-08-07 23:03:58',2,'2006-02-15 21:30:53'),(10837,'2005-08-01 23:30:22',1816,410,'2005-08-07 23:02:22',1,'2006-02-15 21:30:53'),(10838,'2005-08-01 23:36:10',69,387,'2005-08-05 04:55:10',2,'2006-02-15 21:30:53'),(10839,'2005-08-01 23:37:39',2867,482,'2005-08-02 20:18:39',1,'2006-02-15 21:30:53'),(10840,'2005-08-01 23:38:34',583,593,'2005-08-07 02:36:34',2,'2006-02-15 21:30:53'),(10841,'2005-08-01 23:39:21',4337,102,'2005-08-07 20:47:21',1,'2006-02-15 21:30:53'),(10842,'2005-08-01 23:41:24',1300,137,'2005-08-11 03:48:24',1,'2006-02-15 21:30:53'),(10843,'2005-08-01 23:43:03',1286,192,'2005-08-09 23:49:03',2,'2006-02-15 21:30:53'),(10844,'2005-08-01 23:46:58',1516,333,'2005-08-09 19:42:58',2,'2006-02-15 21:30:53'),(10845,'2005-08-01 23:47:03',2737,42,'2005-08-08 01:57:03',1,'2006-02-15 21:30:53'),(10846,'2005-08-01 23:47:54',2277,441,'2005-08-08 01:10:54',1,'2006-02-15 21:30:53'),(10847,'2005-08-01 23:49:33',1200,280,'2005-08-10 05:37:33',2,'2006-02-15 21:30:53'),(10848,'2005-08-01 23:50:22',2630,368,'2005-08-06 00:52:22',1,'2006-02-15 21:30:53'),(10849,'2005-08-01 23:51:00',1683,278,'2005-08-10 19:59:00',2,'2006-02-15 21:30:53'),(10850,'2005-08-01 23:53:45',1853,199,'2005-08-10 21:11:45',1,'2006-02-15 21:30:53'),(10851,'2005-08-01 23:58:45',1359,154,'2005-08-04 00:59:45',1,'2006-02-15 21:30:53'),(10852,'2005-08-02 00:00:33',3862,27,'2005-08-03 23:09:33',1,'2006-02-15 21:30:53'),(10853,'2005-08-02 00:00:54',2682,41,'2005-08-10 05:37:54',2,'2006-02-15 21:30:53'),(10854,'2005-08-02 00:02:06',3295,356,'2005-08-02 21:55:06',2,'2006-02-15 21:30:53'),(10855,'2005-08-02 00:06:37',1366,274,'2005-08-03 00:39:37',1,'2006-02-15 21:30:53'),(10856,'2005-08-02 00:07:14',2010,451,'2005-08-04 02:48:14',2,'2006-02-15 21:30:53'),(10857,'2005-08-02 00:07:20',2961,360,'2005-08-04 02:35:20',1,'2006-02-15 21:30:53'),(10858,'2005-08-02 00:08:39',852,312,'2005-08-05 00:58:39',2,'2006-02-15 21:30:53'),(10859,'2005-08-02 00:11:39',277,375,'2005-08-08 19:52:39',1,'2006-02-15 21:30:53'),(10860,'2005-08-02 00:12:32',2827,25,'2005-08-04 03:50:32',1,'2006-02-15 21:30:53'),(10861,'2005-08-02 00:12:46',2162,131,'2005-08-09 04:09:46',2,'2006-02-15 21:30:53'),(10862,'2005-08-02 00:17:34',1077,176,'2005-08-08 00:31:34',2,'2006-02-15 21:30:53'),(10863,'2005-08-02 00:18:07',1170,161,'2005-08-10 06:16:07',2,'2006-02-15 21:30:53'),(10864,'2005-08-02 00:18:59',1694,134,'2005-08-08 22:20:59',1,'2006-02-15 21:30:53'),(10865,'2005-08-02 00:22:46',1485,201,'2005-08-09 05:08:46',2,'2006-02-15 21:30:53'),(10866,'2005-08-02 00:22:49',117,424,'2005-08-07 04:38:49',1,'2006-02-15 21:30:53'),(10867,'2005-08-02 00:24:15',2577,473,'2005-08-05 21:09:15',1,'2006-02-15 21:30:53'),(10868,'2005-08-02 00:25:15',2443,562,'2005-08-10 02:31:15',2,'2006-02-15 21:30:53'),(10869,'2005-08-02 00:26:54',2967,568,'2005-08-04 03:40:54',2,'2006-02-15 21:30:53'),(10870,'2005-08-02 00:27:12',1509,33,'2005-08-02 20:00:12',2,'2006-02-15 21:30:53'),(10871,'2005-08-02 00:27:24',104,75,'2005-08-05 06:25:24',1,'2006-02-15 21:30:53'),(10872,'2005-08-02 00:27:50',2470,84,'2005-08-06 20:34:50',2,'2006-02-15 21:30:53'),(10873,'2005-08-02 00:30:34',169,506,'2005-08-07 00:16:34',2,'2006-02-15 21:30:53'),(10874,'2005-08-02 00:31:00',2552,230,'2005-08-07 05:04:00',1,'2006-02-15 21:30:53'),(10875,'2005-08-02 00:31:44',862,175,'2005-08-05 22:24:44',2,'2006-02-15 21:30:53'),(10876,'2005-08-02 00:31:58',2161,559,'2005-08-05 21:45:58',1,'2006-02-15 21:30:53'),(10877,'2005-08-02 00:32:04',3337,487,'2005-08-07 19:44:04',2,'2006-02-15 21:30:53'),(10878,'2005-08-02 00:33:12',3511,45,'2005-08-07 06:02:12',1,'2006-02-15 21:30:53'),(10879,'2005-08-02 00:33:20',4415,334,'2005-08-09 04:13:20',2,'2006-02-15 21:30:53'),(10880,'2005-08-02 00:34:12',450,528,'2005-08-06 21:15:12',2,'2006-02-15 21:30:53'),(10881,'2005-08-02 00:38:14',781,253,'2005-08-09 22:02:14',2,'2006-02-15 21:30:53'),(10882,'2005-08-02 00:47:16',1349,54,'2005-08-09 22:11:16',1,'2006-02-15 21:30:53'),(10883,'2005-08-02 00:47:19',4,301,'2005-08-03 00:02:19',1,'2006-02-15 21:30:53'),(10884,'2005-08-02 00:47:33',3702,569,'2005-08-03 04:38:33',1,'2006-02-15 21:30:53'),(10885,'2005-08-02 00:51:37',4223,493,'2005-08-09 20:49:37',2,'2006-02-15 21:30:53'),(10886,'2005-08-02 00:52:34',943,77,'2005-08-08 00:30:34',1,'2006-02-15 21:30:53'),(10887,'2005-08-02 00:52:35',3450,573,'2005-08-03 05:37:35',1,'2006-02-15 21:30:53'),(10888,'2005-08-02 00:52:45',2412,428,'2005-08-03 03:07:45',1,'2006-02-15 21:30:53'),(10889,'2005-08-02 00:54:33',2098,64,'2005-08-07 19:42:33',1,'2006-02-15 21:30:53'),(10890,'2005-08-02 00:58:46',78,210,'2005-08-10 02:13:46',1,'2006-02-15 21:30:53'),(10891,'2005-08-02 01:09:55',1269,201,'2005-08-05 05:03:55',2,'2006-02-15 21:30:53'),(10892,'2005-08-02 01:12:06',3243,109,'2005-08-09 23:53:06',1,'2006-02-15 21:30:53'),(10893,'2005-08-02 01:12:13',2529,306,'2005-08-11 05:53:13',2,'2006-02-15 21:30:53'),(10894,'2005-08-02 01:12:35',598,51,'2005-08-09 22:55:35',1,'2006-02-15 21:30:53'),(10895,'2005-08-02 01:16:59',93,77,'2005-08-03 02:41:59',2,'2006-02-15 21:30:53'),(10896,'2005-08-02 01:19:33',2283,505,'2005-08-08 06:54:33',1,'2006-02-15 21:30:53'),(10897,'2005-08-02 01:23:42',291,338,'2005-08-03 23:27:42',1,'2006-02-15 21:30:53'),(10898,'2005-08-02 01:29:57',3814,23,'2005-08-06 00:07:57',2,'2006-02-15 21:30:53'),(10899,'2005-08-02 01:30:21',859,29,'2005-08-06 05:01:21',2,'2006-02-15 21:30:53'),(10900,'2005-08-02 01:34:26',1749,139,'2005-08-07 00:52:26',2,'2006-02-15 21:30:53'),(10901,'2005-08-02 01:35:44',3813,290,'2005-08-04 21:20:44',2,'2006-02-15 21:30:53'),(10902,'2005-08-02 01:35:46',3863,486,'2005-08-09 01:59:46',1,'2006-02-15 21:30:53'),(10903,'2005-08-02 01:41:59',2696,547,'2005-08-06 23:03:59',1,'2006-02-15 21:30:53'),(10904,'2005-08-02 01:43:02',3681,593,'2005-08-04 04:34:02',1,'2006-02-15 21:30:53'),(10905,'2005-08-02 01:45:59',2835,439,'2005-08-04 22:28:59',1,'2006-02-15 21:30:53'),(10906,'2005-08-02 01:47:04',3139,463,'2005-08-07 20:41:04',2,'2006-02-15 21:30:53'),(10907,'2005-08-02 01:51:48',1430,561,'2005-08-02 19:53:48',1,'2006-02-15 21:30:53'),(10908,'2005-08-02 01:53:06',1284,269,'2005-08-04 02:46:06',2,'2006-02-15 21:30:53'),(10909,'2005-08-02 01:53:59',3516,413,'2005-08-03 04:36:59',2,'2006-02-15 21:30:53'),(10910,'2005-08-02 01:54:34',2428,266,'2005-08-10 04:04:34',2,'2006-02-15 21:30:53'),(10911,'2005-08-02 01:58:36',769,195,'2005-08-08 07:37:36',2,'2006-02-15 21:30:53'),(10912,'2005-08-02 02:00:03',732,477,'2005-08-06 05:55:03',1,'2006-02-15 21:30:53'),(10913,'2005-08-02 02:04:03',3388,565,'2005-08-09 03:21:03',1,'2006-02-15 21:30:53'),(10914,'2005-08-02 02:04:43',585,584,'2005-08-06 03:00:43',1,'2006-02-15 21:30:53'),(10915,'2005-08-02 02:05:04',4568,418,'2005-08-10 21:58:04',2,'2006-02-15 21:30:53'),(10916,'2005-08-02 02:05:59',3841,25,'2005-08-06 03:46:59',2,'2006-02-15 21:30:53'),(10917,'2005-08-02 02:06:18',3146,378,'2005-08-03 22:42:18',1,'2006-02-15 21:30:53'),(10918,'2005-08-02 02:10:56',3418,2,'2005-08-02 21:23:56',1,'2006-02-15 21:30:53'),(10919,'2005-08-02 02:11:03',868,115,'2005-08-04 01:49:03',1,'2006-02-15 21:30:53'),(10920,'2005-08-02 02:14:10',3106,531,'2005-08-06 23:36:10',1,'2006-02-15 21:30:53'),(10921,'2005-08-02 02:14:33',1820,555,'2005-08-09 20:58:33',2,'2006-02-15 21:30:53'),(10922,'2005-08-02 02:14:40',4522,539,'2005-08-06 06:04:40',1,'2006-02-15 21:30:53'),(10923,'2005-08-02 02:15:01',2602,239,'2005-08-03 04:18:01',1,'2006-02-15 21:30:53'),(10924,'2005-08-02 02:20:19',589,540,'2005-08-11 05:50:19',2,'2006-02-15 21:30:53'),(10925,'2005-08-02 02:24:38',1475,98,'2005-08-03 05:06:38',1,'2006-02-15 21:30:53'),(10926,'2005-08-02 02:26:37',4016,460,'2005-08-09 20:55:37',1,'2006-02-15 21:30:53'),(10927,'2005-08-02 02:31:15',4125,288,'2005-08-10 20:41:15',1,'2006-02-15 21:30:53'),(10928,'2005-08-02 02:34:12',2885,211,'2005-08-07 21:13:12',1,'2006-02-15 21:30:53'),(10929,'2005-08-02 02:35:44',913,305,'2005-08-05 03:52:44',1,'2006-02-15 21:30:53'),(10930,'2005-08-02 02:38:07',2027,206,'2005-08-08 05:15:07',2,'2006-02-15 21:30:53'),(10931,'2005-08-02 02:44:59',3268,545,'2005-08-04 02:02:59',1,'2006-02-15 21:30:53'),(10932,'2005-08-02 02:46:22',1688,595,'2005-08-06 01:49:22',2,'2006-02-15 21:30:53'),(10933,'2005-08-02 02:50:49',3970,313,'2005-08-08 04:39:49',1,'2006-02-15 21:30:53'),(10934,'2005-08-02 02:52:18',4458,142,'2005-08-06 01:23:18',2,'2006-02-15 21:30:53'),(10935,'2005-08-02 02:54:53',4373,42,'2005-08-10 00:07:53',2,'2006-02-15 21:30:53'),(10936,'2005-08-02 02:55:04',463,445,'2005-08-11 07:56:04',1,'2006-02-15 21:30:53'),(10937,'2005-08-02 03:00:18',1320,416,'2005-08-11 03:44:18',2,'2006-02-15 21:30:53'),(10938,'2005-08-02 03:05:22',3918,502,'2005-08-05 08:31:22',1,'2006-02-15 21:30:53'),(10939,'2005-08-02 03:06:20',2131,161,'2005-08-04 01:22:20',2,'2006-02-15 21:30:53'),(10940,'2005-08-02 03:08:29',3760,120,'2005-08-07 21:28:29',2,'2006-02-15 21:30:53'),(10941,'2005-08-02 03:11:33',2132,531,'2005-08-10 07:31:33',1,'2006-02-15 21:30:53'),(10942,'2005-08-02 03:16:31',2304,78,'2005-08-11 02:46:31',2,'2006-02-15 21:30:53'),(10943,'2005-08-02 03:17:29',1036,377,'2005-08-03 00:50:29',2,'2006-02-15 21:30:53'),(10944,'2005-08-02 03:20:03',2373,470,'2005-08-04 04:13:03',2,'2006-02-15 21:30:53'),(10945,'2005-08-02 03:20:23',3684,532,'2005-08-09 03:23:23',1,'2006-02-15 21:30:53'),(10946,'2005-08-02 03:20:39',4271,56,'2005-08-05 02:59:39',1,'2006-02-15 21:30:53'),(10947,'2005-08-02 03:23:17',2510,500,'2005-08-07 05:25:17',1,'2006-02-15 21:30:53'),(10948,'2005-08-02 03:23:23',4429,220,'2005-08-05 23:18:23',1,'2006-02-15 21:30:53'),(10949,'2005-08-02 03:24:04',2309,389,'2005-08-06 08:36:04',2,'2006-02-15 21:30:53'),(10950,'2005-08-02 03:25:08',707,451,'2005-08-07 23:11:08',2,'2006-02-15 21:30:53'),(10951,'2005-08-02 03:26:35',173,144,'2005-08-07 22:03:35',1,'2006-02-15 21:30:53'),(10952,'2005-08-02 03:28:21',3218,111,'2005-08-09 01:41:21',1,'2006-02-15 21:30:53'),(10953,'2005-08-02 03:28:38',1510,483,'2005-08-11 03:53:38',1,'2006-02-15 21:30:53'),(10954,'2005-08-02 03:30:24',3406,20,'2005-08-08 05:52:24',2,'2006-02-15 21:30:53'),(10955,'2005-08-02 03:32:34',618,490,'2005-08-09 21:53:34',2,'2006-02-15 21:30:53'),(10956,'2005-08-02 03:33:14',4372,54,'2005-08-09 09:20:14',2,'2006-02-15 21:30:53'),(10957,'2005-08-02 03:33:30',1652,447,'2005-08-10 06:19:30',2,'2006-02-15 21:30:53'),(10958,'2005-08-02 03:37:13',2174,160,'2005-08-04 23:28:13',2,'2006-02-15 21:30:53'),(10959,'2005-08-02 03:39:39',4233,431,'2005-08-11 07:20:39',1,'2006-02-15 21:30:53'),(10960,'2005-08-02 03:46:18',3536,399,'2005-08-11 01:29:18',1,'2006-02-15 21:30:53'),(10961,'2005-08-02 03:47:55',1416,375,'2005-08-09 02:03:55',1,'2006-02-15 21:30:53'),(10962,'2005-08-02 03:48:13',1953,538,'2005-08-07 00:04:13',1,'2006-02-15 21:30:53'),(10963,'2005-08-02 03:48:17',4501,36,'2005-08-02 22:15:17',1,'2006-02-15 21:30:53'),(10964,'2005-08-02 03:56:23',2356,36,'2005-08-09 23:11:23',2,'2006-02-15 21:30:53'),(10965,'2005-08-02 04:00:19',2192,580,'2005-08-09 03:27:19',1,'2006-02-15 21:30:53'),(10966,'2005-08-02 04:00:47',478,584,'2005-08-08 01:58:47',2,'2006-02-15 21:30:53'),(10967,'2005-08-02 04:02:16',683,149,'2005-08-09 07:57:16',1,'2006-02-15 21:30:53'),(10968,'2005-08-02 04:03:13',888,234,'2005-08-11 08:36:13',1,'2006-02-15 21:30:53'),(10969,'2005-08-02 04:04:32',1898,244,'2005-08-09 23:18:32',1,'2006-02-15 21:30:53'),(10970,'2005-08-02 04:06:46',1202,260,'2005-08-10 04:27:46',1,'2006-02-15 21:30:53'),(10971,'2005-08-02 04:08:17',2789,383,'2005-08-09 00:02:17',1,'2006-02-15 21:30:53'),(10972,'2005-08-02 04:08:25',1928,348,'2005-08-09 23:25:25',1,'2006-02-15 21:30:53'),(10973,'2005-08-02 04:09:42',3562,127,'2005-08-08 05:24:42',2,'2006-02-15 21:30:53'),(10974,'2005-08-02 04:10:52',690,491,'2005-08-09 08:26:52',1,'2006-02-15 21:30:53'),(10975,'2005-08-02 04:11:25',2616,361,'2005-08-04 04:39:25',2,'2006-02-15 21:30:53'),(10976,'2005-08-02 04:11:48',2418,326,'2005-08-06 06:30:48',2,'2006-02-15 21:30:53'),(10977,'2005-08-02 04:12:17',2302,300,'2005-08-06 06:52:17',2,'2006-02-15 21:30:53'),(10978,'2005-08-02 04:12:27',1597,487,'2005-08-10 08:19:27',2,'2006-02-15 21:30:53'),(10979,'2005-08-02 04:16:37',2625,160,'2005-08-06 00:01:37',2,'2006-02-15 21:30:53'),(10980,'2005-08-02 04:17:32',150,547,'2005-08-04 05:12:32',1,'2006-02-15 21:30:53'),(10981,'2005-08-02 04:17:53',3699,305,'2005-08-09 03:45:53',2,'2006-02-15 21:30:53'),(10982,'2005-08-02 04:19:11',2508,345,'2005-08-04 00:20:11',2,'2006-02-15 21:30:53'),(10983,'2005-08-02 04:24:23',4502,380,'2005-08-09 08:05:23',2,'2006-02-15 21:30:53'),(10984,'2005-08-02 04:30:02',1813,450,'2005-08-10 02:51:02',1,'2006-02-15 21:30:53'),(10985,'2005-08-02 04:30:19',2734,186,'2005-08-03 05:18:19',1,'2006-02-15 21:30:53'),(10986,'2005-08-02 04:35:24',555,597,'2005-08-09 07:34:24',2,'2006-02-15 21:30:53'),(10987,'2005-08-02 04:36:52',968,349,'2005-08-04 00:03:52',1,'2006-02-15 21:30:53'),(10988,'2005-08-02 04:38:17',1157,509,'2005-08-09 00:09:17',1,'2006-02-15 21:30:53'),(10989,'2005-08-02 04:40:54',2272,7,'2005-08-09 03:39:54',2,'2006-02-15 21:30:53'),(10990,'2005-08-02 04:41:06',262,111,'2005-08-10 05:02:06',2,'2006-02-15 21:30:53'),(10991,'2005-08-02 04:41:12',2854,77,'2005-08-05 05:36:12',2,'2006-02-15 21:30:53'),(10992,'2005-08-02 04:41:17',11,180,'2005-08-09 02:13:17',1,'2006-02-15 21:30:53'),(10993,'2005-08-02 04:45:01',292,383,'2005-08-04 03:32:01',1,'2006-02-15 21:30:53'),(10994,'2005-08-02 04:46:53',647,323,'2005-08-11 10:30:53',1,'2006-02-15 21:30:53'),(10995,'2005-08-02 04:48:00',2891,340,'2005-08-07 05:00:00',1,'2006-02-15 21:30:53'),(10996,'2005-08-02 04:48:11',2235,26,'2005-08-06 08:00:11',1,'2006-02-15 21:30:53'),(10997,'2005-08-02 04:49:02',300,334,'2005-08-10 08:13:02',2,'2006-02-15 21:30:53'),(10998,'2005-08-02 04:50:55',1479,435,'2005-08-11 03:43:55',1,'2006-02-15 21:30:53'),(10999,'2005-08-02 04:53:13',2013,227,'2005-08-06 04:36:13',2,'2006-02-15 21:30:53'),(11000,'2005-08-02 04:56:14',264,265,'2005-08-07 01:39:14',2,'2006-02-15 21:30:53'),(11001,'2005-08-02 04:56:45',3701,5,'2005-08-11 08:04:45',1,'2006-02-15 21:30:53'),(11002,'2005-08-02 05:02:56',3073,583,'2005-08-05 07:04:56',2,'2006-02-15 21:30:53'),(11003,'2005-08-02 05:03:05',4301,272,'2005-08-05 10:48:05',2,'2006-02-15 21:30:53'),(11004,'2005-08-02 05:04:18',200,45,'2005-08-11 00:03:18',2,'2006-02-15 21:30:53'),(11005,'2005-08-02 05:05:23',1547,216,'2005-08-07 23:28:23',2,'2006-02-15 21:30:53'),(11006,'2005-08-02 05:05:52',2776,473,'2005-08-05 03:33:52',1,'2006-02-15 21:30:53'),(11007,'2005-08-02 05:05:53',4172,98,'2005-08-05 01:56:53',2,'2006-02-15 21:30:53'),(11008,'2005-08-02 05:06:17',2831,375,'2005-08-10 01:22:17',2,'2006-02-15 21:30:53'),(11009,'2005-08-02 05:06:23',2574,596,'2005-08-08 03:02:23',1,'2006-02-15 21:30:53'),(11010,'2005-08-02 05:06:27',869,326,'2005-08-03 23:47:27',2,'2006-02-15 21:30:53'),(11011,'2005-08-02 05:07:07',3981,256,'2005-08-09 07:16:07',1,'2006-02-15 21:30:53'),(11012,'2005-08-02 05:09:42',542,162,'2005-08-05 07:22:42',2,'2006-02-15 21:30:53'),(11013,'2005-08-02 05:10:54',2993,527,'2005-08-10 08:59:54',1,'2006-02-15 21:30:53'),(11014,'2005-08-02 05:12:22',393,269,'2005-08-07 09:33:22',1,'2006-02-15 21:30:53'),(11015,'2005-08-02 05:13:00',4331,138,'2005-08-08 04:18:00',2,'2006-02-15 21:30:53'),(11016,'2005-08-02 05:19:13',4446,116,'2005-08-05 05:31:13',1,'2006-02-15 21:30:53'),(11017,'2005-08-02 05:19:51',4140,480,'2005-08-09 00:36:51',2,'2006-02-15 21:30:53'),(11018,'2005-08-02 05:27:53',2988,197,'2005-08-07 10:48:53',1,'2006-02-15 21:30:53'),(11019,'2005-08-02 05:29:31',3227,112,'2005-08-04 00:42:31',1,'2006-02-15 21:30:53'),(11020,'2005-08-02 05:29:48',1645,242,'2005-08-06 05:36:48',2,'2006-02-15 21:30:53'),(11021,'2005-08-02 05:30:11',2069,385,'2005-08-05 05:50:11',2,'2006-02-15 21:30:53'),(11022,'2005-08-02 05:35:03',827,206,'2005-08-09 10:20:03',2,'2006-02-15 21:30:53'),(11023,'2005-08-02 05:36:38',3617,6,'2005-08-10 05:39:38',1,'2006-02-15 21:30:53'),(11024,'2005-08-02 05:38:31',2284,427,'2005-08-11 04:47:31',1,'2006-02-15 21:30:53'),(11025,'2005-08-02 05:39:12',2253,419,'2005-08-08 00:09:12',2,'2006-02-15 21:30:53'),(11026,'2005-08-02 05:46:05',3554,531,'2005-08-07 06:27:05',2,'2006-02-15 21:30:53'),(11027,'2005-08-02 05:47:10',571,412,'2005-08-05 23:51:10',1,'2006-02-15 21:30:53'),(11028,'2005-08-02 05:48:20',2764,66,'2005-08-10 11:21:20',1,'2006-02-15 21:30:53'),(11029,'2005-08-02 05:51:10',1023,45,'2005-08-05 04:15:10',1,'2006-02-15 21:30:53'),(11030,'2005-08-02 05:51:20',1437,569,'2005-08-06 04:20:20',1,'2006-02-15 21:30:53'),(11031,'2005-08-02 05:52:58',1205,361,'2005-08-07 07:14:58',2,'2006-02-15 21:30:53'),(11032,'2005-08-02 05:53:35',1119,359,'2005-08-05 02:58:35',2,'2006-02-15 21:30:53'),(11033,'2005-08-02 05:54:17',3323,155,'2005-08-09 10:50:17',2,'2006-02-15 21:30:53'),(11034,'2005-08-02 05:54:53',2939,586,'2005-08-09 04:14:53',1,'2006-02-15 21:30:53'),(11035,'2005-08-02 05:55:39',3776,305,'2005-08-08 06:46:39',2,'2006-02-15 21:30:53'),(11036,'2005-08-02 05:56:29',2054,502,'2005-08-05 05:00:29',2,'2006-02-15 21:30:53'),(11037,'2005-08-02 05:58:12',4291,220,'2005-08-07 11:26:12',1,'2006-02-15 21:30:53'),(11038,'2005-08-02 05:59:42',4452,403,'2005-08-08 04:37:42',2,'2006-02-15 21:30:53'),(11039,'2005-08-02 06:00:53',549,170,'2005-08-05 06:19:53',2,'2006-02-15 21:30:53'),(11040,'2005-08-02 06:03:22',2297,223,'2005-08-03 07:58:22',1,'2006-02-15 21:30:53'),(11041,'2005-08-02 06:03:53',1897,435,'2005-08-03 11:57:53',1,'2006-02-15 21:30:53'),(11042,'2005-08-02 06:04:33',4149,439,'2005-08-11 01:30:33',1,'2006-02-15 21:30:53'),(11043,'2005-08-02 06:04:44',65,573,'2005-08-06 11:37:44',1,'2006-02-15 21:30:53'),(11044,'2005-08-02 06:05:27',2922,122,'2005-08-06 05:15:27',1,'2006-02-15 21:30:53'),(11045,'2005-08-02 06:07:54',2214,402,'2005-08-08 00:37:54',1,'2006-02-15 21:30:53'),(11046,'2005-08-02 06:08:34',2105,526,'2005-08-06 08:45:34',2,'2006-02-15 21:30:53'),(11047,'2005-08-02 06:09:20',2267,416,'2005-08-11 08:36:20',1,'2006-02-15 21:30:53'),(11048,'2005-08-02 06:15:07',206,491,'2005-08-04 02:47:07',2,'2006-02-15 21:30:53'),(11049,'2005-08-02 06:15:40',4352,38,'2005-08-11 10:09:40',2,'2006-02-15 21:30:53'),(11050,'2005-08-02 06:17:16',2077,234,'2005-08-09 05:58:16',1,'2006-02-15 21:30:53'),(11051,'2005-08-02 06:23:39',4189,446,'2005-08-06 06:46:39',2,'2006-02-15 21:30:53'),(11052,'2005-08-02 06:26:19',1089,331,'2005-08-06 04:20:19',2,'2006-02-15 21:30:53'),(11053,'2005-08-02 06:27:13',2599,50,'2005-08-09 11:24:13',2,'2006-02-15 21:30:53'),(11054,'2005-08-02 06:33:07',728,577,'2005-08-10 02:52:07',2,'2006-02-15 21:30:53'),(11055,'2005-08-02 06:36:05',3851,182,'2005-08-06 00:36:05',1,'2006-02-15 21:30:53'),(11056,'2005-08-02 06:36:27',1404,88,'2005-08-10 06:02:27',1,'2006-02-15 21:30:53'),(11057,'2005-08-02 06:38:19',3143,137,'2005-08-11 03:43:19',1,'2006-02-15 21:30:53'),(11058,'2005-08-02 06:38:44',3270,274,'2005-08-06 06:45:44',1,'2006-02-15 21:30:53'),(11059,'2005-08-02 06:41:38',428,189,'2005-08-09 04:34:38',1,'2006-02-15 21:30:53'),(11060,'2005-08-02 06:48:18',3395,496,'2005-08-10 11:49:18',1,'2006-02-15 21:30:53'),(11061,'2005-08-02 06:50:18',809,245,'2005-08-07 07:41:18',2,'2006-02-15 21:30:53'),(11062,'2005-08-02 06:52:54',2014,346,'2005-08-07 10:59:54',1,'2006-02-15 21:30:53'),(11063,'2005-08-02 06:53:48',2261,461,'2005-08-05 03:38:48',2,'2006-02-15 21:30:53'),(11064,'2005-08-02 06:55:17',3012,338,'2005-08-06 03:29:17',1,'2006-02-15 21:30:53'),(11065,'2005-08-02 06:57:55',2226,357,'2005-08-06 01:31:55',2,'2006-02-15 21:30:53'),(11066,'2005-08-02 06:58:32',4213,373,'2005-08-10 01:27:32',2,'2006-02-15 21:30:53'),(11067,'2005-08-02 07:03:24',965,85,'2005-08-10 08:59:24',2,'2006-02-15 21:30:53'),(11068,'2005-08-02 07:08:07',1262,52,'2005-08-09 11:15:07',2,'2006-02-15 21:30:53'),(11069,'2005-08-02 07:09:34',57,4,'2005-08-08 08:39:34',1,'2006-02-15 21:30:53'),(11070,'2005-08-02 07:10:39',4020,298,'2005-08-03 07:43:39',1,'2006-02-15 21:30:53'),(11071,'2005-08-02 07:10:53',4264,294,'2005-08-07 09:58:53',1,'2006-02-15 21:30:53'),(11072,'2005-08-02 07:10:57',3078,21,'2005-08-04 07:42:57',1,'2006-02-15 21:30:53'),(11073,'2005-08-02 07:13:03',4232,234,'2005-08-03 05:46:03',1,'2006-02-15 21:30:53'),(11074,'2005-08-02 07:21:43',1439,277,'2005-08-08 05:18:43',1,'2006-02-15 21:30:53'),(11075,'2005-08-02 07:24:23',3027,503,'2005-08-08 04:55:23',1,'2006-02-15 21:30:53'),(11076,'2005-08-02 07:24:47',837,211,'2005-08-10 09:16:47',1,'2006-02-15 21:30:53'),(11077,'2005-08-02 07:26:43',4254,158,'2005-08-09 10:34:43',2,'2006-02-15 21:30:53'),(11078,'2005-08-02 07:26:58',2362,587,'2005-08-07 01:59:58',2,'2006-02-15 21:30:53'),(11079,'2005-08-02 07:29:10',3185,29,'2005-08-07 01:59:10',2,'2006-02-15 21:30:53'),(11080,'2005-08-02 07:29:56',4303,571,'2005-08-08 05:58:56',1,'2006-02-15 21:30:53'),(11081,'2005-08-02 07:30:14',3804,513,'2005-08-09 08:50:14',1,'2006-02-15 21:30:53'),(11082,'2005-08-02 07:30:19',3037,190,'2005-08-07 05:20:19',2,'2006-02-15 21:30:53'),(11083,'2005-08-02 07:32:01',4395,295,'2005-08-08 02:23:01',1,'2006-02-15 21:30:53'),(11084,'2005-08-02 07:34:19',32,369,'2005-08-07 09:30:19',1,'2006-02-15 21:30:53'),(11085,'2005-08-02 07:36:44',3207,276,'2005-08-04 03:32:44',1,'2006-02-15 21:30:53'),(11086,'2005-08-02 07:38:44',552,371,'2005-08-11 06:30:44',1,'2006-02-15 21:30:53'),(11087,'2005-08-02 07:41:41',654,2,'2005-08-10 10:37:41',2,'2006-02-15 21:30:53'),(11088,'2005-08-02 07:48:31',2739,138,'2005-08-05 08:09:31',2,'2006-02-15 21:30:53'),(11089,'2005-08-02 07:52:20',825,421,'2005-08-07 07:24:20',1,'2006-02-15 21:30:53'),(11090,'2005-08-02 07:56:40',2743,89,'2005-08-10 07:58:40',1,'2006-02-15 21:30:53'),(11091,'2005-08-02 07:56:41',1659,423,'2005-08-07 05:35:41',2,'2006-02-15 21:30:53'),(11092,'2005-08-02 07:58:50',569,60,'2005-08-04 03:23:50',2,'2006-02-15 21:30:53'),(11093,'2005-08-02 07:59:49',239,82,'2005-08-11 06:01:49',1,'2006-02-15 21:30:53'),(11094,'2005-08-02 08:03:02',3095,18,'2005-08-03 11:34:02',1,'2006-02-15 21:30:53'),(11095,'2005-08-02 08:03:20',3517,278,'2005-08-10 05:20:20',1,'2006-02-15 21:30:53'),(11096,'2005-08-02 08:05:19',1436,34,'2005-08-04 07:28:19',2,'2006-02-15 21:30:53'),(11097,'2005-08-02 08:05:46',2493,575,'2005-08-10 12:00:46',2,'2006-02-15 21:30:53'),(11098,'2005-08-02 08:06:18',158,570,'2005-08-11 04:50:18',2,'2006-02-15 21:30:53'),(11099,'2005-08-02 08:07:12',1444,102,'2005-08-07 12:11:12',2,'2006-02-15 21:30:53'),(11100,'2005-08-02 08:08:00',3047,65,'2005-08-10 07:19:00',1,'2006-02-15 21:30:53'),(11101,'2005-08-02 08:08:24',2621,80,'2005-08-06 05:55:24',1,'2006-02-15 21:30:53'),(11102,'2005-08-02 08:08:30',3112,73,'2005-08-04 09:16:30',1,'2006-02-15 21:30:53'),(11103,'2005-08-02 08:09:54',1879,158,'2005-08-07 12:05:54',1,'2006-02-15 21:30:53'),(11104,'2005-08-02 08:09:58',3042,196,'2005-08-05 11:55:58',1,'2006-02-15 21:30:53'),(11105,'2005-08-02 08:13:31',3170,245,'2005-08-03 11:08:31',1,'2006-02-15 21:30:53'),(11106,'2005-08-02 08:17:38',2307,287,'2005-08-03 07:54:38',1,'2006-02-15 21:30:53'),(11107,'2005-08-02 08:19:38',2217,410,'2005-08-07 08:46:38',2,'2006-02-15 21:30:53'),(11108,'2005-08-02 08:20:01',560,447,'2005-08-03 13:22:01',2,'2006-02-15 21:30:53'),(11109,'2005-08-02 08:20:29',2683,479,'2005-08-09 11:35:29',2,'2006-02-15 21:30:53'),(11110,'2005-08-02 08:20:31',4311,4,'2005-08-04 05:06:31',2,'2006-02-15 21:30:53'),(11111,'2005-08-02 08:21:27',334,378,'2005-08-06 07:48:27',2,'2006-02-15 21:30:53'),(11112,'2005-08-02 08:25:14',526,207,'2005-08-03 08:41:14',1,'2006-02-15 21:30:53'),(11113,'2005-08-02 08:26:24',1654,231,'2005-08-07 09:24:24',2,'2006-02-15 21:30:53'),(11114,'2005-08-02 08:26:45',1273,572,'2005-08-03 08:41:45',2,'2006-02-15 21:30:53'),(11115,'2005-08-02 08:31:06',3812,408,'2005-08-04 02:36:06',2,'2006-02-15 21:30:53'),(11116,'2005-08-02 08:34:40',434,344,'2005-08-09 04:56:40',1,'2006-02-15 21:30:53'),(11117,'2005-08-02 08:36:03',1613,474,'2005-08-05 06:56:03',2,'2006-02-15 21:30:53'),(11118,'2005-08-02 08:44:18',2411,15,'2005-08-05 08:08:18',2,'2006-02-15 21:30:53'),(11119,'2005-08-02 08:44:44',4307,489,'2005-08-10 11:32:44',2,'2006-02-15 21:30:53'),(11120,'2005-08-02 08:47:04',4185,322,'2005-08-05 05:33:04',1,'2006-02-15 21:30:53'),(11121,'2005-08-02 08:48:31',1025,572,'2005-08-04 05:08:31',2,'2006-02-15 21:30:53'),(11122,'2005-08-02 08:49:09',3021,383,'2005-08-08 04:33:09',1,'2006-02-15 21:30:53'),(11123,'2005-08-02 08:54:17',1926,150,'2005-08-09 11:11:17',2,'2006-02-15 21:30:53'),(11124,'2005-08-02 08:55:25',698,249,'2005-08-10 10:59:25',1,'2006-02-15 21:30:53'),(11125,'2005-08-02 08:55:35',2081,237,'2005-08-03 09:12:35',1,'2006-02-15 21:30:53'),(11126,'2005-08-02 08:59:04',3310,47,'2005-08-04 11:00:04',1,'2006-02-15 21:30:53'),(11127,'2005-08-02 09:00:59',1106,351,'2005-08-05 11:54:59',2,'2006-02-15 21:30:53'),(11128,'2005-08-02 09:03:25',3472,386,'2005-08-09 04:36:25',1,'2006-02-15 21:30:53'),(11129,'2005-08-02 09:08:44',23,566,'2005-08-04 04:00:44',1,'2006-02-15 21:30:53'),(11130,'2005-08-02 09:08:59',684,329,'2005-08-09 07:50:59',2,'2006-02-15 21:30:53'),(11131,'2005-08-02 09:10:04',1860,293,'2005-08-08 09:59:04',2,'2006-02-15 21:30:53'),(11132,'2005-08-02 09:14:09',2212,398,'2005-08-08 06:39:09',1,'2006-02-15 21:30:53'),(11133,'2005-08-02 09:15:45',675,120,'2005-08-04 10:39:45',1,'2006-02-15 21:30:53'),(11134,'2005-08-02 09:19:22',2641,372,'2005-08-11 03:56:22',1,'2006-02-15 21:30:53'),(11135,'2005-08-02 09:22:25',799,32,'2005-08-04 14:30:25',2,'2006-02-15 21:30:53'),(11136,'2005-08-02 09:22:57',1315,559,'2005-08-08 14:12:57',2,'2006-02-15 21:30:53'),(11137,'2005-08-02 09:25:31',2500,310,'2005-08-08 08:10:31',1,'2006-02-15 21:30:53'),(11138,'2005-08-02 09:26:16',4250,458,'2005-08-11 07:50:16',2,'2006-02-15 21:30:53'),(11139,'2005-08-02 09:27:36',1011,236,'2005-08-08 14:07:36',2,'2006-02-15 21:30:53'),(11140,'2005-08-02 09:27:45',3836,132,'2005-08-05 04:10:45',1,'2006-02-15 21:30:53'),(11141,'2005-08-02 09:29:11',1614,15,'2005-08-04 07:50:11',1,'2006-02-15 21:30:53'),(11142,'2005-08-02 09:30:11',2954,306,'2005-08-05 06:52:11',1,'2006-02-15 21:30:53'),(11143,'2005-08-02 09:32:54',3382,100,'2005-08-05 12:04:54',2,'2006-02-15 21:30:53'),(11144,'2005-08-02 09:39:17',2724,376,'2005-08-03 11:53:17',2,'2006-02-15 21:30:53'),(11145,'2005-08-02 09:43:24',1270,291,'2005-08-05 15:29:24',1,'2006-02-15 21:30:53'),(11146,'2005-08-02 09:45:32',2488,552,'2005-08-07 07:33:32',1,'2006-02-15 21:30:53'),(11147,'2005-08-02 09:45:54',1562,597,'2005-08-07 07:28:54',1,'2006-02-15 21:30:53'),(11148,'2005-08-02 09:47:08',2991,230,'2005-08-08 10:57:08',1,'2006-02-15 21:30:53'),(11149,'2005-08-02 09:51:43',3254,358,'2005-08-11 09:40:43',2,'2006-02-15 21:30:53'),(11150,'2005-08-02 09:51:46',2193,527,'2005-08-05 09:03:46',2,'2006-02-15 21:30:53'),(11151,'2005-08-02 09:52:44',3939,391,'2005-08-05 06:29:44',2,'2006-02-15 21:30:53'),(11152,'2005-08-02 09:53:36',3887,494,'2005-08-11 14:58:36',1,'2006-02-15 21:30:53'),(11153,'2005-08-02 09:54:19',1546,220,'2005-08-10 14:57:19',1,'2006-02-15 21:30:53'),(11154,'2005-08-02 09:54:50',697,160,'2005-08-06 14:48:50',2,'2006-02-15 21:30:53'),(11155,'2005-08-02 09:55:28',2001,73,'2005-08-03 06:00:28',2,'2006-02-15 21:30:53'),(11156,'2005-08-02 09:56:06',907,465,'2005-08-04 13:36:06',2,'2006-02-15 21:30:53'),(11157,'2005-08-02 09:58:15',1313,244,'2005-08-06 04:23:15',2,'2006-02-15 21:30:53'),(11158,'2005-08-02 09:58:28',530,190,'2005-08-10 13:54:28',2,'2006-02-15 21:30:53'),(11159,'2005-08-02 10:00:55',4575,249,'2005-08-05 10:38:55',1,'2006-02-15 21:30:53'),(11160,'2005-08-02 10:05:30',3260,436,'2005-08-07 08:30:30',1,'2006-02-15 21:30:53'),(11161,'2005-08-02 10:05:57',3321,503,'2005-08-06 05:05:57',2,'2006-02-15 21:30:53'),(11162,'2005-08-02 10:07:54',1809,277,'2005-08-05 11:35:54',2,'2006-02-15 21:30:53'),(11163,'2005-08-02 10:08:40',1925,505,'2005-08-05 14:59:40',1,'2006-02-15 21:30:53'),(11164,'2005-08-02 10:10:56',4450,580,'2005-08-10 11:20:56',2,'2006-02-15 21:30:53'),(11165,'2005-08-02 10:12:17',2059,513,'2005-08-04 11:09:17',1,'2006-02-15 21:30:53'),(11166,'2005-08-02 10:14:58',638,11,'2005-08-11 11:43:58',1,'2006-02-15 21:30:53'),(11167,'2005-08-02 10:15:51',148,451,'2005-08-09 09:18:51',1,'2006-02-15 21:30:53'),(11168,'2005-08-02 10:19:42',468,555,'2005-08-04 08:42:42',1,'2006-02-15 21:30:53'),(11169,'2005-08-02 10:19:42',2392,329,'2005-08-07 05:45:42',1,'2006-02-15 21:30:53'),(11170,'2005-08-02 10:21:53',1333,547,'2005-08-08 11:08:53',1,'2006-02-15 21:30:53'),(11171,'2005-08-02 10:23:41',3117,339,'2005-08-04 14:22:41',2,'2006-02-15 21:30:53'),(11172,'2005-08-02 10:27:52',1207,76,'2005-08-11 12:47:52',1,'2006-02-15 21:30:53'),(11173,'2005-08-02 10:28:00',4296,146,'2005-08-10 14:53:00',1,'2006-02-15 21:30:53'),(11174,'2005-08-02 10:32:11',1551,328,'2005-08-09 12:30:11',1,'2006-02-15 21:30:53'),(11175,'2005-08-02 10:38:47',85,164,'2005-08-07 07:11:47',2,'2006-02-15 21:30:53'),(11176,'2005-08-02 10:39:43',1448,37,'2005-08-09 14:42:43',2,'2006-02-15 21:30:53'),(11177,'2005-08-02 10:43:48',1149,2,'2005-08-10 10:55:48',2,'2006-02-15 21:30:53'),(11178,'2005-08-02 10:48:10',2613,342,'2005-08-06 06:07:10',1,'2006-02-15 21:30:53'),(11179,'2005-08-02 10:50:06',4376,5,'2005-08-04 05:24:06',1,'2006-02-15 21:30:53'),(11180,'2005-08-02 10:54:30',3632,534,'2005-08-11 15:55:30',1,'2006-02-15 21:30:53'),(11181,'2005-08-02 10:55:03',3127,557,'2005-08-07 10:43:03',1,'2006-02-15 21:30:53'),(11182,'2005-08-02 10:55:14',605,54,'2005-08-06 05:58:14',1,'2006-02-15 21:30:53'),(11183,'2005-08-02 11:00:32',833,102,'2005-08-04 08:59:32',2,'2006-02-15 21:30:53'),(11184,'2005-08-02 11:01:26',871,259,'2005-08-11 06:29:26',1,'2006-02-15 21:30:53'),(11185,'2005-08-02 11:04:35',1215,469,'2005-08-05 13:48:35',2,'2006-02-15 21:30:53'),(11186,'2005-08-02 11:12:08',733,353,'2005-08-03 10:46:08',1,'2006-02-15 21:30:53'),(11187,'2005-08-02 11:16:19',3626,410,'2005-08-11 06:11:19',1,'2006-02-15 21:30:53'),(11188,'2005-08-02 11:17:11',1372,485,'2005-08-08 16:46:11',2,'2006-02-15 21:30:53'),(11189,'2005-08-02 11:17:23',729,565,'2005-08-09 16:30:23',2,'2006-02-15 21:30:53'),(11190,'2005-08-02 11:21:34',922,254,'2005-08-05 05:23:34',1,'2006-02-15 21:30:53'),(11191,'2005-08-02 11:24:07',1097,571,'2005-08-10 10:39:07',1,'2006-02-15 21:30:53'),(11192,'2005-08-02 11:29:41',1998,349,'2005-08-07 06:01:41',2,'2006-02-15 21:30:53'),(11193,'2005-08-02 11:31:33',2246,292,'2005-08-04 14:00:33',1,'2006-02-15 21:30:53'),(11194,'2005-08-02 11:35:53',2732,135,'2005-08-10 11:28:53',1,'2006-02-15 21:30:53'),(11195,'2005-08-02 11:42:23',4359,177,'2005-08-03 08:29:23',1,'2006-02-15 21:30:53'),(11196,'2005-08-02 11:42:40',2648,126,'2005-08-10 11:58:40',2,'2006-02-15 21:30:53'),(11197,'2005-08-02 11:45:07',3041,122,'2005-08-03 09:07:07',1,'2006-02-15 21:30:53'),(11198,'2005-08-02 11:45:15',2908,540,'2005-08-10 11:42:15',2,'2006-02-15 21:30:53'),(11199,'2005-08-02 11:47:40',3926,578,'2005-08-10 06:52:40',2,'2006-02-15 21:30:53'),(11200,'2005-08-02 11:48:36',2730,98,'2005-08-07 08:35:36',2,'2006-02-15 21:30:53'),(11201,'2005-08-02 11:49:16',1501,195,'2005-08-11 08:39:16',1,'2006-02-15 21:30:53'),(11202,'2005-08-02 11:51:57',3625,231,'2005-08-08 09:41:57',1,'2006-02-15 21:30:53'),(11203,'2005-08-02 11:52:41',4520,92,'2005-08-10 15:52:41',2,'2006-02-15 21:30:53'),(11204,'2005-08-02 11:56:31',3578,247,'2005-08-06 14:16:31',2,'2006-02-15 21:30:53'),(11205,'2005-08-02 11:56:54',4321,552,'2005-08-05 08:24:54',1,'2006-02-15 21:30:53'),(11206,'2005-08-02 11:58:03',4131,72,'2005-08-07 12:36:03',2,'2006-02-15 21:30:53'),(11207,'2005-08-02 12:01:30',4470,481,'2005-08-05 07:56:30',1,'2006-02-15 21:30:53'),(11208,'2005-08-02 12:02:37',4566,320,'2005-08-05 10:56:37',1,'2006-02-15 21:30:53'),(11209,'2005-08-02 12:09:45',3219,24,'2005-08-07 08:52:45',1,'2006-02-15 21:30:53'),(11210,'2005-08-02 12:15:54',422,202,'2005-08-04 16:18:54',2,'2006-02-15 21:30:53'),(11211,'2005-08-02 12:16:48',1722,245,'2005-08-03 10:40:48',1,'2006-02-15 21:30:53'),(11212,'2005-08-02 12:18:29',4007,343,'2005-08-05 16:05:29',2,'2006-02-15 21:30:53'),(11213,'2005-08-02 12:18:35',1007,584,'2005-08-05 08:44:35',2,'2006-02-15 21:30:53'),(11214,'2005-08-02 12:19:50',2722,407,'2005-08-11 06:38:50',1,'2006-02-15 21:30:53'),(11215,'2005-08-02 12:20:42',379,197,'2005-08-06 14:01:42',1,'2006-02-15 21:30:53'),(11216,'2005-08-02 12:23:43',1109,473,'2005-08-03 13:19:43',1,'2006-02-15 21:30:53'),(11217,'2005-08-02 12:26:31',1201,417,'2005-08-09 09:53:31',2,'2006-02-15 21:30:53'),(11218,'2005-08-02 12:29:12',1126,500,'2005-08-10 16:13:12',2,'2006-02-15 21:30:53'),(11219,'2005-08-02 12:30:20',2889,461,'2005-08-08 13:42:20',2,'2006-02-15 21:30:53'),(11220,'2005-08-02 12:31:41',3777,84,'2005-08-05 08:23:41',2,'2006-02-15 21:30:53'),(11221,'2005-08-02 12:32:12',1689,146,'2005-08-03 17:13:12',1,'2006-02-15 21:30:53'),(11222,'2005-08-02 12:32:28',1780,407,'2005-08-11 18:15:28',2,'2006-02-15 21:30:53'),(11223,'2005-08-02 12:34:27',1994,597,'2005-08-07 14:21:27',1,'2006-02-15 21:30:53'),(11224,'2005-08-02 12:40:38',3938,181,'2005-08-04 10:02:38',2,'2006-02-15 21:30:53'),(11225,'2005-08-02 12:43:27',3721,159,'2005-08-04 18:41:27',2,'2006-02-15 21:30:53'),(11226,'2005-08-02 12:47:30',79,282,'2005-08-06 11:24:30',1,'2006-02-15 21:30:53'),(11227,'2005-08-02 12:48:05',1101,65,'2005-08-11 14:08:05',1,'2006-02-15 21:30:53'),(11228,'2005-08-02 12:55:23',2561,144,'2005-08-08 12:31:23',1,'2006-02-15 21:30:53'),(11229,'2005-08-02 12:56:37',941,332,'2005-08-11 11:13:37',2,'2006-02-15 21:30:53'),(11230,'2005-08-02 12:59:08',1463,257,'2005-08-04 13:42:08',1,'2006-02-15 21:30:53'),(11231,'2005-08-02 13:02:11',1100,90,'2005-08-07 10:05:11',2,'2006-02-15 21:30:53'),(11232,'2005-08-02 13:04:12',971,8,'2005-08-10 15:39:12',1,'2006-02-15 21:30:53'),(11233,'2005-08-02 13:06:11',2221,266,'2005-08-08 15:02:11',1,'2006-02-15 21:30:53'),(11234,'2005-08-02 13:12:17',1020,27,'2005-08-05 17:37:17',1,'2006-02-15 21:30:53'),(11235,'2005-08-02 13:13:21',2501,127,'2005-08-03 07:17:21',1,'2006-02-15 21:30:53'),(11236,'2005-08-02 13:17:21',145,420,'2005-08-09 09:53:21',2,'2006-02-15 21:30:53'),(11237,'2005-08-02 13:24:01',2668,426,'2005-08-05 11:41:01',2,'2006-02-15 21:30:53'),(11238,'2005-08-02 13:25:50',2705,506,'2005-08-08 19:12:50',2,'2006-02-15 21:30:53'),(11239,'2005-08-02 13:27:11',189,111,'2005-08-03 14:36:11',1,'2006-02-15 21:30:53'),(11240,'2005-08-02 13:28:30',2170,597,'2005-08-05 11:40:30',1,'2006-02-15 21:30:53'),(11241,'2005-08-02 13:29:24',3657,543,'2005-08-11 11:36:24',2,'2006-02-15 21:30:53'),(11242,'2005-08-02 13:32:00',1041,434,'2005-08-10 19:24:00',2,'2006-02-15 21:30:53'),(11243,'2005-08-02 13:32:48',2517,361,'2005-08-11 18:55:48',1,'2006-02-15 21:30:53'),(11244,'2005-08-02 13:33:24',3423,142,'2005-08-10 10:18:24',2,'2006-02-15 21:30:53'),(11245,'2005-08-02 13:33:50',2609,92,'2005-08-04 10:20:50',2,'2006-02-15 21:30:53'),(11246,'2005-08-02 13:33:56',3577,550,'2005-08-03 08:52:56',2,'2006-02-15 21:30:53'),(11247,'2005-08-02 13:34:08',1661,441,'2005-08-06 16:23:08',2,'2006-02-15 21:30:53'),(11248,'2005-08-02 13:35:34',4139,312,'2005-08-03 10:37:34',1,'2006-02-15 21:30:53'),(11249,'2005-08-02 13:35:40',3394,157,'2005-08-07 11:22:40',1,'2006-02-15 21:30:53'),(11250,'2005-08-02 13:35:42',2223,279,'2005-08-10 12:32:42',2,'2006-02-15 21:30:53'),(11251,'2005-08-02 13:40:49',2181,532,'2005-08-09 14:16:49',2,'2006-02-15 21:30:53'),(11252,'2005-08-02 13:42:13',2410,337,'2005-08-06 19:04:13',2,'2006-02-15 21:30:53'),(11253,'2005-08-02 13:42:44',2898,303,'2005-08-09 17:06:44',2,'2006-02-15 21:30:53'),(11254,'2005-08-02 13:43:49',56,315,'2005-08-08 13:16:49',1,'2006-02-15 21:30:53'),(11255,'2005-08-02 13:44:30',3393,569,'2005-08-03 12:00:30',1,'2006-02-15 21:30:53'),(11256,'2005-08-02 13:44:53',2060,2,'2005-08-04 16:39:53',1,'2006-02-15 21:30:53'),(11257,'2005-08-02 13:45:05',105,468,'2005-08-11 16:37:05',1,'2006-02-15 21:30:53'),(11258,'2005-08-02 13:45:39',1576,242,'2005-08-06 07:57:39',1,'2006-02-15 21:30:53'),(11259,'2005-08-02 13:46:30',896,330,'2005-08-07 14:03:30',1,'2006-02-15 21:30:53'),(11260,'2005-08-02 13:52:19',4015,207,'2005-08-06 08:13:19',2,'2006-02-15 21:30:53'),(11261,'2005-08-02 13:54:26',31,204,'2005-08-10 19:04:26',2,'2006-02-15 21:30:53'),(11262,'2005-08-02 13:58:55',71,348,'2005-08-05 18:09:55',2,'2006-02-15 21:30:53'),(11263,'2005-08-02 14:02:19',1189,421,'2005-08-07 14:03:19',2,'2006-02-15 21:30:53'),(11264,'2005-08-02 14:05:18',3420,360,'2005-08-10 08:46:18',2,'2006-02-15 21:30:53'),(11265,'2005-08-02 14:05:42',3870,531,'2005-08-11 15:27:42',2,'2006-02-15 21:30:53'),(11266,'2005-08-02 14:07:35',3972,99,'2005-08-04 13:31:35',1,'2006-02-15 21:30:53'),(11267,'2005-08-02 14:09:08',2045,244,'2005-08-10 12:33:08',1,'2006-02-15 21:30:53'),(11268,'2005-08-02 14:10:39',3275,558,'2005-08-04 14:35:39',1,'2006-02-15 21:30:53'),(11269,'2005-08-02 14:11:41',2398,297,'2005-08-08 18:53:41',1,'2006-02-15 21:30:53'),(11270,'2005-08-02 14:18:07',1882,418,'2005-08-03 08:20:07',1,'2006-02-15 21:30:53'),(11271,'2005-08-02 14:18:22',4323,93,'2005-08-07 09:35:22',2,'2006-02-15 21:30:53'),(11272,'2005-08-02 14:20:27',4111,158,'2005-08-07 12:24:27',2,'2006-02-15 21:30:53'),(11273,'2005-08-02 14:20:55',3383,541,'2005-08-07 12:57:55',1,'2006-02-15 21:30:53'),(11274,'2005-08-02 14:24:08',1253,70,'2005-08-11 14:56:08',1,'2006-02-15 21:30:53'),(11275,'2005-08-02 14:25:58',2838,464,'2005-08-07 11:20:58',1,'2006-02-15 21:30:53'),(11276,'2005-08-02 14:28:46',4226,190,'2005-08-04 14:00:46',1,'2006-02-15 21:30:53'),(11277,'2005-08-02 14:28:50',2050,68,'2005-08-04 13:50:50',1,'2006-02-15 21:30:53'),(11278,'2005-08-02 14:29:43',961,143,'2005-08-07 10:13:43',1,'2006-02-15 21:30:53'),(11279,'2005-08-02 14:30:03',151,125,'2005-08-10 09:49:03',2,'2006-02-15 21:30:53'),(11280,'2005-08-02 14:34:33',1846,134,'2005-08-08 15:40:33',2,'2006-02-15 21:30:53'),(11281,'2005-08-02 14:35:01',2210,137,'2005-08-07 17:28:01',1,'2006-02-15 21:30:53'),(11282,'2005-08-02 14:35:03',1824,273,'2005-08-03 16:02:03',2,'2006-02-15 21:30:53'),(11283,'2005-08-02 14:39:46',312,134,'2005-08-05 10:19:46',2,'2006-02-15 21:30:53'),(11284,'2005-08-02 14:42:45',172,8,'2005-08-04 11:55:45',2,'2006-02-15 21:30:53'),(11285,'2005-08-02 14:44:02',3849,585,'2005-08-11 16:45:02',2,'2006-02-15 21:30:53'),(11286,'2005-08-02 14:44:22',1319,207,'2005-08-10 09:01:22',2,'2006-02-15 21:30:53'),(11287,'2005-08-02 14:49:51',927,55,'2005-08-09 09:19:51',2,'2006-02-15 21:30:53'),(11288,'2005-08-02 14:54:08',1478,298,'2005-08-11 12:22:08',1,'2006-02-15 21:30:53'),(11289,'2005-08-02 14:55:00',2869,10,'2005-08-11 13:57:00',1,'2006-02-15 21:30:53'),(11290,'2005-08-02 14:57:44',425,582,'2005-08-09 19:36:44',2,'2006-02-15 21:30:53'),(11291,'2005-08-02 14:57:58',491,417,'2005-08-11 09:04:58',2,'2006-02-15 21:30:53'),(11292,'2005-08-02 14:58:41',210,13,'2005-08-06 14:38:41',2,'2006-02-15 21:30:53'),(11293,'2005-08-02 15:00:43',1514,475,'2005-08-11 17:49:43',1,'2006-02-15 21:30:53'),(11294,'2005-08-02 15:08:27',855,411,'2005-08-03 18:28:27',1,'2006-02-15 21:30:53'),(11295,'2005-08-02 15:10:06',423,67,'2005-08-10 09:52:06',1,'2006-02-15 21:30:53'),(11296,'2005-08-02 15:15:27',247,154,'2005-08-11 16:12:27',1,'2006-02-15 21:30:53'),(11297,'2005-08-02 15:22:47',2531,62,'2005-08-11 18:45:47',1,'2006-02-15 21:30:53'),(11298,'2005-08-02 15:32:32',1663,35,'2005-08-06 20:22:32',1,'2006-02-15 21:30:53'),(11299,'2005-08-02 15:36:52',3232,1,'2005-08-10 16:40:52',2,'2006-02-15 21:30:53'),(11300,'2005-08-02 15:37:42',3032,552,'2005-08-11 14:25:42',1,'2006-02-15 21:30:53'),(11301,'2005-08-02 15:37:59',676,502,'2005-08-04 10:57:59',2,'2006-02-15 21:30:53'),(11302,'2005-08-02 15:38:03',1918,51,'2005-08-09 10:33:03',2,'2006-02-15 21:30:53'),(11303,'2005-08-02 15:39:18',1817,417,'2005-08-05 10:59:18',1,'2006-02-15 21:30:53'),(11304,'2005-08-02 15:40:10',2592,413,'2005-08-06 16:12:10',2,'2006-02-15 21:30:53'),(11305,'2005-08-02 15:44:55',1690,341,'2005-08-08 16:42:55',2,'2006-02-15 21:30:53'),(11306,'2005-08-02 15:45:10',13,247,'2005-08-03 21:14:10',2,'2006-02-15 21:30:53'),(11307,'2005-08-02 15:48:08',1490,15,'2005-08-06 20:33:08',2,'2006-02-15 21:30:53'),(11308,'2005-08-02 15:50:44',699,16,'2005-08-05 11:38:44',2,'2006-02-15 21:30:53'),(11309,'2005-08-02 15:50:55',607,275,'2005-08-09 18:28:55',1,'2006-02-15 21:30:53'),(11310,'2005-08-02 15:51:58',3601,415,'2005-08-07 12:34:58',1,'2006-02-15 21:30:53'),(11311,'2005-08-02 15:53:48',204,197,'2005-08-03 16:32:48',1,'2006-02-15 21:30:53'),(11312,'2005-08-02 15:56:51',1093,190,'2005-08-07 20:56:51',2,'2006-02-15 21:30:53'),(11313,'2005-08-02 16:02:51',2689,419,'2005-08-03 14:54:51',1,'2006-02-15 21:30:53'),(11314,'2005-08-02 16:04:08',2790,26,'2005-08-04 18:47:08',1,'2006-02-15 21:30:53'),(11315,'2005-08-02 16:05:17',1116,13,'2005-08-05 16:33:17',1,'2006-02-15 21:30:53'),(11316,'2005-08-02 16:07:49',521,108,'2005-08-10 13:22:49',1,'2006-02-15 21:30:53'),(11317,'2005-08-02 16:08:52',1889,502,'2005-08-08 21:12:52',1,'2006-02-15 21:30:53'),(11318,'2005-08-02 16:09:11',2386,532,'2005-08-07 11:28:11',2,'2006-02-15 21:30:53'),(11319,'2005-08-02 16:10:09',4069,178,'2005-08-09 11:21:09',2,'2006-02-15 21:30:53'),(11320,'2005-08-02 16:13:28',3362,550,'2005-08-05 21:23:28',1,'2006-02-15 21:30:53'),(11321,'2005-08-02 16:15:07',205,266,'2005-08-04 20:35:07',2,'2006-02-15 21:30:53'),(11322,'2005-08-02 16:23:17',761,418,'2005-08-09 19:55:17',2,'2006-02-15 21:30:53'),(11323,'2005-08-02 16:29:57',3784,419,'2005-08-06 16:01:57',1,'2006-02-15 21:30:53'),(11324,'2005-08-02 16:31:17',2900,540,'2005-08-08 15:38:17',2,'2006-02-15 21:30:53'),(11325,'2005-08-02 16:33:11',4514,422,'2005-08-08 13:42:11',1,'2006-02-15 21:30:53'),(11326,'2005-08-02 16:34:29',1762,530,'2005-08-03 17:40:29',2,'2006-02-15 21:30:53'),(11327,'2005-08-02 16:40:47',773,361,'2005-08-03 22:13:47',1,'2006-02-15 21:30:53'),(11328,'2005-08-02 16:42:38',2031,219,'2005-08-04 21:02:38',1,'2006-02-15 21:30:53'),(11329,'2005-08-02 16:42:52',2677,399,'2005-08-08 16:45:52',1,'2006-02-15 21:30:53'),(11330,'2005-08-02 16:45:33',4326,75,'2005-08-04 15:15:33',2,'2006-02-15 21:30:53'),(11331,'2005-08-02 16:49:01',3789,568,'2005-08-09 19:15:01',1,'2006-02-15 21:30:53'),(11332,'2005-08-02 16:52:57',2381,467,'2005-08-04 14:13:57',1,'2006-02-15 21:30:53'),(11333,'2005-08-02 16:53:00',3335,225,'2005-08-07 20:49:00',2,'2006-02-15 21:30:53'),(11334,'2005-08-02 16:53:20',1504,560,'2005-08-11 20:47:20',1,'2006-02-15 21:30:53'),(11335,'2005-08-02 16:57:37',2968,157,'2005-08-09 19:43:37',1,'2006-02-15 21:30:53'),(11336,'2005-08-02 16:58:56',1949,473,'2005-08-06 16:56:56',1,'2006-02-15 21:30:53'),(11337,'2005-08-02 16:59:09',3428,366,'2005-08-10 20:41:09',2,'2006-02-15 21:30:53'),(11338,'2005-08-02 17:00:12',3689,26,'2005-08-03 18:54:12',1,'2006-02-15 21:30:53'),(11339,'2005-08-02 17:02:06',705,263,'2005-08-08 21:12:06',1,'2006-02-15 21:30:53'),(11340,'2005-08-02 17:05:43',1403,366,'2005-08-09 13:25:43',1,'2006-02-15 21:30:53'),(11341,'2005-08-02 17:09:24',3586,15,'2005-08-09 19:48:24',2,'2006-02-15 21:30:53'),(11342,'2005-08-02 17:11:35',4251,179,'2005-08-07 15:04:35',1,'2006-02-15 21:30:53'),(11343,'2005-08-02 17:12:30',564,466,'2005-08-09 12:08:30',1,'2006-02-15 21:30:53'),(11344,'2005-08-02 17:13:26',365,38,'2005-08-07 16:44:26',1,'2006-02-15 21:30:53'),(11345,'2005-08-02 17:14:19',1895,405,'2005-08-11 14:02:19',2,'2006-02-15 21:30:53'),(11346,'2005-08-02 17:15:38',584,100,'2005-08-04 13:31:38',2,'2006-02-15 21:30:53'),(11347,'2005-08-02 17:18:07',195,217,'2005-08-05 12:30:07',1,'2006-02-15 21:30:53'),(11348,'2005-08-02 17:18:38',1704,389,'2005-08-06 16:11:38',2,'2006-02-15 21:30:53'),(11349,'2005-08-02 17:21:49',1871,73,'2005-08-06 18:40:49',1,'2006-02-15 21:30:53'),(11350,'2005-08-02 17:22:59',1265,598,'2005-08-09 19:56:59',2,'2006-02-15 21:30:53'),(11351,'2005-08-02 17:28:07',242,198,'2005-08-09 21:55:07',1,'2006-02-15 21:30:53'),(11352,'2005-08-02 17:29:39',2760,546,'2005-08-10 15:31:39',1,'2006-02-15 21:30:53'),(11353,'2005-08-02 17:34:45',1729,444,'2005-08-09 16:01:45',1,'2006-02-15 21:30:53'),(11354,'2005-08-02 17:35:10',1887,569,'2005-08-09 12:07:10',2,'2006-02-15 21:30:53'),(11355,'2005-08-02 17:37:43',2673,185,'2005-08-05 19:59:43',1,'2006-02-15 21:30:53'),(11356,'2005-08-02 17:42:40',303,200,'2005-08-11 23:29:40',1,'2006-02-15 21:30:53'),(11357,'2005-08-02 17:42:49',2644,148,'2005-08-11 18:14:49',1,'2006-02-15 21:30:53'),(11358,'2005-08-02 17:45:02',2361,56,'2005-08-11 18:16:02',1,'2006-02-15 21:30:53'),(11359,'2005-08-02 17:45:55',1648,466,'2005-08-10 20:53:55',2,'2006-02-15 21:30:53'),(11360,'2005-08-02 17:46:04',1750,66,'2005-08-04 21:02:04',2,'2006-02-15 21:30:53'),(11361,'2005-08-02 17:46:34',1124,547,'2005-08-03 15:21:34',1,'2006-02-15 21:30:53'),(11362,'2005-08-02 17:47:25',2628,331,'2005-08-07 20:14:25',1,'2006-02-15 21:30:53'),(11363,'2005-08-02 17:48:39',3190,274,'2005-08-05 17:20:39',1,'2006-02-15 21:30:53'),(11364,'2005-08-02 17:53:36',4515,44,'2005-08-03 14:16:36',1,'2006-02-15 21:30:53'),(11365,'2005-08-02 18:00:09',1151,508,'2005-08-04 13:40:09',2,'2006-02-15 21:30:53'),(11366,'2005-08-02 18:01:25',3583,280,'2005-08-11 15:02:25',1,'2006-02-15 21:30:53'),(11367,'2005-08-02 18:01:38',1440,1,'2005-08-04 13:19:38',1,'2006-02-15 21:30:53'),(11368,'2005-08-02 18:03:05',866,153,'2005-08-07 20:40:05',1,'2006-02-15 21:30:53'),(11369,'2005-08-02 18:04:41',2480,480,'2005-08-09 18:41:41',1,'2006-02-15 21:30:53'),(11370,'2005-08-02 18:06:01',3077,146,'2005-08-04 15:10:01',1,'2006-02-15 21:30:53'),(11371,'2005-08-02 18:07:36',324,561,'2005-08-06 17:52:36',1,'2006-02-15 21:30:53'),(11372,'2005-08-02 18:10:50',796,327,'2005-08-07 17:58:50',1,'2006-02-15 21:30:53'),(11373,'2005-08-02 18:14:12',181,267,'2005-08-06 23:37:12',1,'2006-02-15 21:30:53'),(11374,'2005-08-02 18:14:54',2805,424,'2005-08-04 18:22:54',1,'2006-02-15 21:30:53'),(11375,'2005-08-02 18:14:56',1064,346,'2005-08-08 23:29:56',1,'2006-02-15 21:30:53'),(11376,'2005-08-02 18:16:00',2530,177,'2005-08-11 23:38:00',2,'2006-02-15 21:30:53'),(11377,'2005-08-02 18:16:47',3334,119,'2005-08-08 13:46:47',1,'2006-02-15 21:30:53'),(11378,'2005-08-02 18:16:52',3824,188,'2005-08-03 14:25:52',1,'2006-02-15 21:30:53'),(11379,'2005-08-02 18:16:55',251,61,'2005-08-07 18:12:55',1,'2006-02-15 21:30:53'),(11380,'2005-08-02 18:17:32',1046,551,'2005-08-03 19:26:32',2,'2006-02-15 21:30:53'),(11381,'2005-08-02 18:19:29',993,451,'2005-08-08 20:39:29',2,'2006-02-15 21:30:53'),(11382,'2005-08-02 18:20:52',3848,407,'2005-08-07 17:06:52',1,'2006-02-15 21:30:53'),(11383,'2005-08-02 18:22:05',257,445,'2005-08-11 17:18:05',1,'2006-02-15 21:30:53'),(11384,'2005-08-02 18:23:01',2840,225,'2005-08-05 17:59:01',1,'2006-02-15 21:30:53'),(11385,'2005-08-02 18:23:11',2478,192,'2005-08-06 12:37:11',1,'2006-02-15 21:30:53'),(11386,'2005-08-02 18:24:03',519,183,'2005-08-06 21:22:03',1,'2006-02-15 21:30:53'),(11387,'2005-08-02 18:32:38',2491,481,'2005-08-07 19:08:38',2,'2006-02-15 21:30:53'),(11388,'2005-08-02 18:35:55',477,369,'2005-08-09 21:56:55',1,'2006-02-15 21:30:53'),(11389,'2005-08-02 18:39:12',3267,270,'2005-08-03 23:23:12',2,'2006-02-15 21:30:53'),(11390,'2005-08-02 18:39:16',3135,294,'2005-08-04 21:43:16',1,'2006-02-15 21:30:53'),(11391,'2005-08-02 18:40:12',2039,403,'2005-08-10 15:55:12',1,'2006-02-15 21:30:53'),(11392,'2005-08-02 18:41:11',261,146,'2005-08-11 21:41:11',1,'2006-02-15 21:30:53'),(11393,'2005-08-02 18:44:29',1033,501,'2005-08-11 23:58:29',1,'2006-02-15 21:30:53'),(11394,'2005-08-02 18:44:45',2087,257,'2005-08-06 22:51:45',2,'2006-02-15 21:30:53'),(11395,'2005-08-02 18:47:44',4234,225,'2005-08-10 17:07:44',2,'2006-02-15 21:30:53'),(11396,'2005-08-02 18:48:29',1155,59,'2005-08-04 16:05:29',2,'2006-02-15 21:30:53'),(11397,'2005-08-02 18:53:14',2566,470,'2005-08-09 18:09:14',1,'2006-02-15 21:30:53'),(11398,'2005-08-02 18:55:15',3952,6,'2005-08-10 19:50:15',2,'2006-02-15 21:30:53'),(11399,'2005-08-02 18:56:28',2094,565,'2005-08-11 23:19:28',1,'2006-02-15 21:30:53'),(11400,'2005-08-02 19:00:52',3150,9,'2005-08-09 19:45:52',2,'2006-02-15 21:30:53'),(11401,'2005-08-02 19:05:06',1799,544,'2005-08-09 22:34:06',1,'2006-02-15 21:30:53'),(11402,'2005-08-02 19:07:21',3291,561,'2005-08-07 20:59:21',1,'2006-02-15 21:30:53'),(11403,'2005-08-02 19:10:21',4072,587,'2005-08-04 00:44:21',2,'2006-02-15 21:30:53'),(11404,'2005-08-02 19:12:40',3285,60,'2005-08-11 22:38:40',2,'2006-02-15 21:30:53'),(11405,'2005-08-02 19:13:39',418,10,'2005-08-07 19:19:39',2,'2006-02-15 21:30:53'),(11406,'2005-08-02 19:16:10',2502,525,'2005-08-04 20:51:10',2,'2006-02-15 21:30:53'),(11407,'2005-08-02 19:18:43',3437,513,'2005-08-08 16:15:43',2,'2006-02-15 21:30:53'),(11408,'2005-08-02 19:25:13',1779,83,'2005-08-06 17:12:13',1,'2006-02-15 21:30:53'),(11409,'2005-08-02 19:26:51',3691,418,'2005-08-07 19:55:51',1,'2006-02-15 21:30:53'),(11410,'2005-08-02 19:29:01',692,592,'2005-08-11 16:50:01',1,'2006-02-15 21:30:53'),(11411,'2005-08-02 19:29:47',1497,141,'2005-08-09 16:27:47',2,'2006-02-15 21:30:53'),(11412,'2005-08-02 19:32:51',2271,141,'2005-08-11 22:16:51',1,'2006-02-15 21:30:53'),(11413,'2005-08-02 19:35:19',1115,297,'2005-08-05 21:33:19',2,'2006-02-15 21:30:53'),(11414,'2005-08-02 19:43:07',1772,353,'2005-08-07 15:22:07',2,'2006-02-15 21:30:53'),(11415,'2005-08-02 19:43:38',2197,572,'2005-08-10 15:13:38',1,'2006-02-15 21:30:53'),(11416,'2005-08-02 19:44:04',1848,58,'2005-08-11 15:30:04',1,'2006-02-15 21:30:53'),(11417,'2005-08-02 19:44:46',3083,437,'2005-08-11 21:43:46',2,'2006-02-15 21:30:53'),(11418,'2005-08-02 19:45:33',4490,91,'2005-08-06 17:40:33',1,'2006-02-15 21:30:53'),(11419,'2005-08-02 19:46:38',514,444,'2005-08-11 14:49:38',1,'2006-02-15 21:30:53'),(11420,'2005-08-02 19:47:56',3928,158,'2005-08-05 21:48:56',2,'2006-02-15 21:30:53'),(11421,'2005-08-02 19:51:53',3361,473,'2005-08-12 00:50:53',2,'2006-02-15 21:30:53'),(11422,'2005-08-02 19:52:08',342,72,'2005-08-11 18:40:08',2,'2006-02-15 21:30:53'),(11423,'2005-08-02 19:57:13',3431,241,'2005-08-06 00:54:13',2,'2006-02-15 21:30:53'),(11424,'2005-08-02 19:57:42',1030,84,'2005-08-10 16:57:42',2,'2006-02-15 21:30:53'),(11425,'2005-08-02 19:58:48',989,419,'2005-08-03 19:30:48',2,'2006-02-15 21:30:53'),(11426,'2005-08-02 20:00:09',130,572,'2005-08-09 01:30:09',2,'2006-02-15 21:30:53'),(11427,'2005-08-02 20:02:39',3287,403,'2005-08-04 22:26:39',2,'2006-02-15 21:30:53'),(11428,'2005-08-02 20:03:10',722,326,'2005-08-04 01:55:10',1,'2006-02-15 21:30:53'),(11429,'2005-08-02 20:03:52',1098,348,'2005-08-10 16:38:52',2,'2006-02-15 21:30:53'),(11430,'2005-08-02 20:04:36',2258,140,'2005-08-08 19:43:36',1,'2006-02-15 21:30:53'),(11431,'2005-08-02 20:05:16',1409,271,'2005-08-04 00:05:16',2,'2006-02-15 21:30:53'),(11432,'2005-08-02 20:10:01',959,540,'2005-08-07 01:28:01',1,'2006-02-15 21:30:53'),(11433,'2005-08-02 20:13:10',1,518,'2005-08-11 21:35:10',1,'2006-02-15 21:30:53'),(11434,'2005-08-02 20:13:14',3154,391,'2005-08-05 15:01:14',1,'2006-02-15 21:30:53'),(11435,'2005-08-02 20:14:23',1625,502,'2005-08-05 20:40:23',1,'2006-02-15 21:30:53'),(11436,'2005-08-02 20:16:06',3834,106,'2005-08-05 20:40:06',2,'2006-02-15 21:30:53'),(11437,'2005-08-02 20:20:06',2679,225,'2005-08-05 22:17:06',2,'2006-02-15 21:30:53'),(11438,'2005-08-02 20:21:08',1040,372,'2005-08-10 22:12:08',1,'2006-02-15 21:30:53'),(11439,'2005-08-02 20:22:45',2897,18,'2005-08-04 18:30:45',1,'2006-02-15 21:30:53'),(11440,'2005-08-02 20:24:02',2727,306,'2005-08-07 16:42:02',2,'2006-02-15 21:30:53'),(11441,'2005-08-02 20:25:41',1027,389,'2005-08-05 00:05:41',2,'2006-02-15 21:30:53'),(11442,'2005-08-02 20:26:19',2598,208,'2005-08-07 00:33:19',2,'2006-02-15 21:30:53'),(11443,'2005-08-02 20:29:30',1291,581,'2005-08-07 01:08:30',2,'2006-02-15 21:30:53'),(11444,'2005-08-02 20:32:55',1419,28,'2005-08-08 23:21:55',2,'2006-02-15 21:30:53'),(11445,'2005-08-02 20:33:35',3340,108,'2005-08-08 16:02:35',2,'2006-02-15 21:30:53'),(11446,'2005-08-02 20:33:37',748,342,'2005-08-03 18:22:37',1,'2006-02-15 21:30:53'),(11447,'2005-08-02 20:36:25',3868,508,'2005-08-07 18:52:25',1,'2006-02-15 21:30:53'),(11448,'2005-08-02 20:44:33',1185,496,'2005-08-05 22:58:33',2,'2006-02-15 21:30:53'),(11449,'2005-08-02 20:44:43',3279,443,'2005-08-07 23:47:43',2,'2006-02-15 21:30:53'),(11450,'2005-08-02 20:45:54',2009,214,'2005-08-08 17:17:54',2,'2006-02-15 21:30:53'),(11451,'2005-08-02 20:45:56',776,515,'2005-08-06 21:42:56',2,'2006-02-15 21:30:53'),(11452,'2005-08-02 20:59:52',1245,35,'2005-08-12 01:16:52',1,'2006-02-15 21:30:53'),(11453,'2005-08-02 21:00:05',4578,84,'2005-08-08 22:03:05',2,'2006-02-15 21:30:53'),(11454,'2005-08-02 21:04:39',2901,199,'2005-08-05 19:03:39',1,'2006-02-15 21:30:53'),(11455,'2005-08-02 21:07:06',2000,498,'2005-08-12 01:21:06',1,'2006-02-15 21:30:53'),(11456,'2005-08-02 21:14:04',3638,322,'2005-08-07 19:49:04',2,'2006-02-15 21:30:53'),(11457,'2005-08-02 21:14:16',1642,379,'2005-08-10 02:39:16',2,'2006-02-15 21:30:53'),(11458,'2005-08-02 21:24:02',3514,575,'2005-08-04 01:32:02',2,'2006-02-15 21:30:53'),(11459,'2005-08-02 21:25:25',3730,392,'2005-08-04 19:57:25',2,'2006-02-15 21:30:53'),(11460,'2005-08-02 21:28:03',4113,403,'2005-08-08 18:24:03',1,'2006-02-15 21:30:53'),(11461,'2005-08-02 21:35:00',4343,65,'2005-08-05 01:34:00',1,'2006-02-15 21:30:53'),(11462,'2005-08-02 21:36:46',167,268,'2005-08-10 01:48:46',1,'2006-02-15 21:30:53'),(11463,'2005-08-02 21:37:36',1944,138,'2005-08-08 03:11:36',2,'2006-02-15 21:30:53'),(11464,'2005-08-02 21:42:07',538,577,'2005-08-03 21:44:07',2,'2006-02-15 21:30:53'),(11465,'2005-08-02 21:43:52',2190,447,'2005-08-10 22:24:52',1,'2006-02-15 21:30:53'),(11466,'2005-08-02 21:46:46',3363,556,'2005-08-06 01:42:46',1,'2006-02-15 21:30:53'),(11467,'2005-08-02 21:47:07',246,117,'2005-08-09 00:50:07',1,'2006-02-15 21:30:53'),(11468,'2005-08-02 21:47:26',3168,413,'2005-08-05 02:30:26',2,'2006-02-15 21:30:53'),(11469,'2005-08-02 21:48:09',230,77,'2005-08-06 18:37:09',1,'2006-02-15 21:30:53'),(11470,'2005-08-02 21:48:28',2379,346,'2005-08-05 23:58:28',2,'2006-02-15 21:30:53'),(11471,'2005-08-02 21:49:03',3378,355,'2005-08-08 00:17:03',1,'2006-02-15 21:30:53'),(11472,'2005-08-02 21:49:06',1829,410,'2005-08-11 20:17:06',1,'2006-02-15 21:30:53'),(11473,'2005-08-02 21:52:03',620,536,'2005-08-09 02:01:03',1,'2006-02-15 21:30:53'),(11474,'2005-08-02 21:53:08',574,214,'2005-08-05 22:36:08',1,'2006-02-15 21:30:53'),(11475,'2005-08-02 21:55:09',3687,194,'2005-08-09 20:28:09',2,'2006-02-15 21:30:53'),(11476,'2005-08-02 22:03:47',724,144,'2005-08-09 02:19:47',1,'2006-02-15 21:30:53'),(11477,'2005-08-02 22:09:01',1671,47,'2005-08-07 03:46:01',2,'2006-02-15 21:30:53'),(11478,'2005-08-02 22:09:05',3932,197,'2005-08-04 18:02:05',1,'2006-02-15 21:30:53'),(11479,'2005-08-02 22:18:13',4077,237,'2005-08-12 00:43:13',1,'2006-02-15 21:30:53'),(11480,'2005-08-02 22:18:24',4161,14,'2005-08-04 21:22:24',2,'2006-02-15 21:30:53'),(11481,'2005-08-02 22:18:41',4028,234,'2005-08-09 23:43:41',2,'2006-02-15 21:30:53'),(11482,'2005-08-02 22:24:31',1400,134,'2005-08-04 01:48:31',1,'2006-02-15 21:30:53'),(11483,'2005-08-02 22:28:22',1586,45,'2005-08-11 18:06:22',1,'2006-02-15 21:30:53'),(11484,'2005-08-02 22:28:23',330,165,'2005-08-04 20:51:23',2,'2006-02-15 21:30:53'),(11485,'2005-08-02 22:33:25',1872,326,'2005-08-04 23:26:25',2,'2006-02-15 21:30:53'),(11486,'2005-08-02 22:34:06',1610,236,'2005-08-09 00:46:06',2,'2006-02-15 21:30:53'),(11487,'2005-08-02 22:35:05',734,239,'2005-08-08 00:54:05',2,'2006-02-15 21:30:53'),(11488,'2005-08-02 22:35:15',2520,45,'2005-08-09 00:28:15',2,'2006-02-15 21:30:53'),(11489,'2005-08-02 22:35:28',3001,474,'2005-08-04 00:29:28',2,'2006-02-15 21:30:53'),(11490,'2005-08-02 22:36:00',1178,156,'2005-08-09 16:36:00',1,'2006-02-15 21:30:53'),(11491,'2005-08-02 22:44:50',268,307,'2005-08-11 01:55:50',2,'2006-02-15 21:30:53'),(11492,'2005-08-02 22:46:47',4037,349,'2005-08-09 19:54:47',2,'2006-02-15 21:30:53'),(11493,'2005-08-02 22:47:00',3375,124,'2005-08-10 20:53:00',2,'2006-02-15 21:30:53'),(11494,'2005-08-02 22:51:23',3994,579,'2005-08-09 01:52:23',1,'2006-02-15 21:30:53'),(11495,'2005-08-16 22:51:20',1265,247,'2005-08-23 00:44:20',1,'2006-02-15 21:30:53'),(11496,'2006-02-14 15:16:03',2047,155,NULL,1,'2006-02-15 21:30:53'),(11497,'2005-08-16 22:52:30',436,12,'2005-08-21 19:52:30',1,'2006-02-15 21:30:53'),(11498,'2005-08-16 22:52:54',487,482,'2005-08-25 03:27:54',2,'2006-02-15 21:30:53'),(11499,'2005-08-16 22:54:12',3857,172,'2005-08-24 03:37:12',2,'2006-02-15 21:30:53'),(11500,'2005-08-16 23:01:22',4003,584,'2005-08-24 22:54:22',1,'2006-02-15 21:30:53'),(11501,'2005-08-16 23:04:53',2147,23,'2005-08-19 20:57:53',2,'2006-02-15 21:30:53'),(11502,'2005-08-16 23:06:30',4470,11,'2005-08-19 03:49:30',1,'2006-02-15 21:30:53'),(11503,'2005-08-16 23:10:34',1496,526,'2005-08-25 03:55:34',1,'2006-02-15 21:30:53'),(11504,'2005-08-16 23:16:46',2132,350,'2005-08-18 20:49:46',2,'2006-02-15 21:30:53'),(11505,'2005-08-16 23:18:47',3344,34,'2005-08-23 19:52:47',2,'2006-02-15 21:30:53'),(11506,'2005-08-16 23:25:48',1529,565,'2005-08-22 18:17:48',1,'2006-02-15 21:30:53'),(11507,'2005-08-16 23:26:43',4197,236,'2005-08-24 22:48:43',2,'2006-02-15 21:30:53'),(11508,'2005-08-16 23:27:36',2688,19,'2005-08-25 01:34:36',2,'2006-02-15 21:30:53'),(11509,'2005-08-16 23:29:53',2750,273,'2005-08-19 02:09:53',1,'2006-02-15 21:30:53'),(11510,'2005-08-16 23:30:07',2997,400,'2005-08-25 17:35:07',1,'2006-02-15 21:30:53'),(11511,'2005-08-16 23:39:59',2127,397,'2005-08-18 18:04:59',1,'2006-02-15 21:30:53'),(11512,'2005-08-16 23:51:06',1248,373,'2005-08-26 02:06:06',2,'2006-02-15 21:30:53'),(11513,'2005-08-16 23:51:33',4473,499,'2005-08-24 01:37:33',2,'2006-02-15 21:30:53'),(11514,'2005-08-16 23:53:10',4240,423,'2005-08-23 22:04:10',1,'2006-02-15 21:30:53'),(11515,'2005-08-16 23:54:34',1053,279,'2005-08-21 19:00:34',1,'2006-02-15 21:30:53'),(11516,'2005-08-16 23:54:47',1860,90,'2005-08-17 20:05:47',1,'2006-02-15 21:30:53'),(11517,'2005-08-16 23:56:28',4266,280,'2005-08-21 22:40:28',1,'2006-02-15 21:30:53'),(11518,'2005-08-16 23:59:49',3297,407,'2005-08-17 22:51:49',2,'2006-02-15 21:30:53'),(11519,'2005-08-17 00:01:27',1034,381,'2005-08-19 04:54:27',2,'2006-02-15 21:30:53'),(11520,'2005-08-17 00:04:28',3536,119,'2005-08-26 02:03:28',1,'2006-02-15 21:30:53'),(11521,'2005-08-17 00:04:54',463,229,'2005-08-21 00:57:54',1,'2006-02-15 21:30:53'),(11522,'2005-08-17 00:05:05',2033,599,'2005-08-24 04:56:05',1,'2006-02-15 21:30:53'),(11523,'2005-08-17 00:10:10',1329,421,'2005-08-24 22:39:10',1,'2006-02-15 21:30:53'),(11524,'2005-08-17 00:10:55',317,533,'2005-08-23 05:30:55',1,'2006-02-15 21:30:53'),(11525,'2005-08-17 00:15:31',1107,174,'2005-08-20 21:14:31',1,'2006-02-15 21:30:53'),(11526,'2005-08-17 00:17:38',2419,572,'2005-08-18 03:59:38',2,'2006-02-15 21:30:53'),(11527,'2005-08-17 00:25:06',162,264,'2005-08-22 21:13:06',1,'2006-02-15 21:30:53'),(11528,'2005-08-17 00:27:23',893,14,'2005-08-22 06:12:23',2,'2006-02-15 21:30:53'),(11529,'2005-08-17 00:28:01',3071,4,'2005-08-19 04:47:01',2,'2006-02-15 21:30:53'),(11530,'2005-08-17 00:29:00',365,400,'2005-08-22 03:22:00',1,'2006-02-15 21:30:53'),(11531,'2005-08-17 00:30:04',1817,278,'2005-08-20 01:12:04',2,'2006-02-15 21:30:53'),(11532,'2005-08-17 00:34:14',1947,413,'2005-08-22 19:37:14',2,'2006-02-15 21:30:53'),(11533,'2005-08-17 00:34:53',4252,264,'2005-08-22 06:10:53',1,'2006-02-15 21:30:53'),(11534,'2005-08-17 00:35:27',2414,144,'2005-08-24 01:36:27',1,'2006-02-15 21:30:53'),(11535,'2005-08-17 00:39:54',1649,356,'2005-08-24 20:46:54',2,'2006-02-15 21:30:53'),(11536,'2005-08-17 00:40:03',2735,428,'2005-08-21 19:11:03',1,'2006-02-15 21:30:53'),(11537,'2005-08-17 00:41:08',190,474,'2005-08-19 00:25:08',2,'2006-02-15 21:30:53'),(11538,'2005-08-17 00:44:04',554,431,'2005-08-18 03:43:04',2,'2006-02-15 21:30:53'),(11539,'2005-08-17 00:45:41',2064,264,'2005-08-19 06:03:41',1,'2006-02-15 21:30:53'),(11540,'2005-08-17 00:48:03',3385,370,'2005-08-25 03:46:03',1,'2006-02-15 21:30:53'),(11541,'2006-02-14 15:16:03',2026,335,NULL,1,'2006-02-15 21:30:53'),(11542,'2005-08-17 00:51:32',2155,7,'2005-08-24 20:29:32',2,'2006-02-15 21:30:53'),(11543,'2005-08-17 00:54:28',2860,238,'2005-08-25 04:31:28',2,'2006-02-15 21:30:53'),(11544,'2005-08-17 00:55:07',836,439,'2005-08-22 19:25:07',1,'2006-02-15 21:30:53'),(11545,'2005-08-17 00:56:06',3198,257,'2005-08-25 22:47:06',1,'2006-02-15 21:30:53'),(11546,'2005-08-17 00:57:36',2522,24,'2005-08-18 23:16:36',1,'2006-02-15 21:30:53'),(11547,'2005-08-17 00:59:24',737,114,'2005-08-20 04:03:24',2,'2006-02-15 21:30:53'),(11548,'2005-08-17 00:59:47',480,323,'2005-08-22 05:09:47',1,'2006-02-15 21:30:53'),(11549,'2005-08-17 01:01:48',945,402,'2005-08-19 21:24:48',2,'2006-02-15 21:30:53'),(11550,'2005-08-17 01:02:06',2972,339,'2005-08-22 21:44:06',1,'2006-02-15 21:30:53'),(11551,'2005-08-17 01:03:49',3356,168,'2005-08-18 22:31:49',1,'2006-02-15 21:30:53'),(11552,'2005-08-17 01:04:29',1143,230,'2005-08-23 23:07:29',1,'2006-02-15 21:30:53'),(11553,'2005-08-17 01:04:31',3317,360,'2005-08-24 00:44:31',1,'2006-02-15 21:30:53'),(11554,'2005-08-17 01:05:17',2212,460,'2005-08-20 06:20:17',2,'2006-02-15 21:30:53'),(11555,'2005-08-17 01:08:59',2569,372,'2005-08-18 06:09:59',2,'2006-02-15 21:30:53'),(11556,'2005-08-17 01:11:53',373,9,'2005-08-18 23:41:53',1,'2006-02-15 21:30:53'),(11557,'2005-08-17 01:19:20',2376,416,'2005-08-24 02:25:20',1,'2006-02-15 21:30:53'),(11558,'2005-08-17 01:19:52',1681,403,'2005-08-19 00:47:52',2,'2006-02-15 21:30:53'),(11559,'2005-08-17 01:20:26',1812,385,'2005-08-24 03:11:26',1,'2006-02-15 21:30:53'),(11560,'2005-08-17 01:20:30',2316,320,'2005-08-18 04:29:30',2,'2006-02-15 21:30:53'),(11561,'2005-08-17 01:23:09',189,149,'2005-08-23 21:02:09',2,'2006-02-15 21:30:53'),(11562,'2005-08-17 01:23:39',2992,424,'2005-08-26 06:16:39',1,'2006-02-15 21:30:53'),(11563,'2006-02-14 15:16:03',1545,83,NULL,1,'2006-02-15 21:30:53'),(11564,'2005-08-17 01:27:49',2237,332,'2005-08-19 22:07:49',1,'2006-02-15 21:30:53'),(11565,'2005-08-17 01:28:05',173,83,'2005-08-23 23:33:05',2,'2006-02-15 21:30:53'),(11566,'2005-08-17 01:28:35',4020,520,'2005-08-20 22:42:35',1,'2006-02-15 21:30:53'),(11567,'2005-08-17 01:28:43',567,558,'2005-08-24 20:20:43',2,'2006-02-15 21:30:53'),(11568,'2005-08-17 01:30:01',183,342,'2005-08-18 22:21:01',2,'2006-02-15 21:30:53'),(11569,'2005-08-17 01:31:04',2592,504,'2005-08-24 03:36:04',2,'2006-02-15 21:30:53'),(11570,'2005-08-17 01:34:32',2466,343,'2005-08-24 05:47:32',1,'2006-02-15 21:30:53'),(11571,'2005-08-17 01:37:51',203,296,'2005-08-17 20:30:51',1,'2006-02-15 21:30:53'),(11572,'2005-08-17 01:37:55',3512,515,'2005-08-19 06:22:55',2,'2006-02-15 21:30:53'),(11573,'2005-08-17 01:38:18',639,146,'2005-08-19 05:06:18',2,'2006-02-15 21:30:53'),(11574,'2005-08-17 01:38:19',3596,277,'2005-08-18 20:30:19',2,'2006-02-15 21:30:53'),(11575,'2005-08-17 01:50:26',1725,319,'2005-08-18 00:43:26',1,'2006-02-15 21:30:53'),(11576,'2005-08-17 01:53:20',327,293,'2005-08-19 00:15:20',1,'2006-02-15 21:30:53'),(11577,'2006-02-14 15:16:03',4106,219,NULL,2,'2006-02-15 21:30:53'),(11578,'2005-08-17 01:54:13',192,590,'2005-08-26 02:00:13',2,'2006-02-15 21:30:53'),(11579,'2005-08-17 01:57:49',4256,356,'2005-08-22 02:42:49',1,'2006-02-15 21:30:53'),(11580,'2005-08-17 01:59:07',1346,436,'2005-08-21 06:18:07',2,'2006-02-15 21:30:53'),(11581,'2005-08-17 02:03:02',1249,231,'2005-08-24 03:53:02',2,'2006-02-15 21:30:53'),(11582,'2005-08-17 02:03:49',2115,339,'2005-08-24 03:29:49',1,'2006-02-15 21:30:53'),(11583,'2005-08-17 02:08:13',133,542,'2005-08-20 23:13:13',2,'2006-02-15 21:30:53'),(11584,'2005-08-17 02:13:26',3906,479,'2005-08-22 01:24:26',2,'2006-02-15 21:30:53'),(11585,'2005-08-17 02:14:36',753,297,'2005-08-20 07:37:36',2,'2006-02-15 21:30:53'),(11586,'2005-08-17 02:20:42',3140,465,'2005-08-26 05:01:42',1,'2006-02-15 21:30:53'),(11587,'2005-08-17 02:21:03',1319,156,'2005-08-25 21:02:03',2,'2006-02-15 21:30:53'),(11588,'2005-08-17 02:26:23',2480,565,'2005-08-22 02:32:23',1,'2006-02-15 21:30:53'),(11589,'2005-08-17 02:28:22',3480,554,'2005-08-25 00:08:22',1,'2006-02-15 21:30:53'),(11590,'2005-08-17 02:28:33',3600,491,'2005-08-20 03:13:33',1,'2006-02-15 21:30:53'),(11591,'2005-08-17 02:29:41',1670,6,'2005-08-23 20:47:41',1,'2006-02-15 21:30:53'),(11592,'2005-08-17 02:36:04',720,383,'2005-08-19 00:31:04',1,'2006-02-15 21:30:53'),(11593,'2006-02-14 15:16:03',817,99,NULL,1,'2006-02-15 21:30:53'),(11594,'2005-08-17 02:47:02',319,198,'2005-08-22 05:14:02',2,'2006-02-15 21:30:53'),(11595,'2005-08-17 02:53:14',466,350,'2005-08-26 02:05:14',1,'2006-02-15 21:30:53'),(11596,'2005-08-17 02:53:55',1674,290,'2005-08-26 02:19:55',1,'2006-02-15 21:30:53'),(11597,'2005-08-17 03:02:56',4073,272,'2005-08-26 04:47:56',1,'2006-02-15 21:30:53'),(11598,'2005-08-17 03:03:07',1949,319,'2005-08-22 21:05:07',2,'2006-02-15 21:30:53'),(11599,'2005-08-17 03:08:10',3749,112,'2005-08-25 05:01:10',2,'2006-02-15 21:30:53'),(11600,'2005-08-17 03:12:04',1978,400,'2005-08-23 07:10:04',1,'2006-02-15 21:30:53'),(11601,'2005-08-17 03:14:47',1098,471,'2005-08-20 00:21:47',2,'2006-02-15 21:30:53'),(11602,'2005-08-17 03:21:19',2082,391,'2005-08-19 05:23:19',1,'2006-02-15 21:30:53'),(11603,'2005-08-17 03:22:10',3910,406,'2005-08-18 06:48:10',1,'2006-02-15 21:30:53'),(11604,'2005-08-17 03:28:27',1820,388,'2005-08-19 05:38:27',2,'2006-02-15 21:30:53'),(11605,'2005-08-17 03:30:57',1292,455,'2005-08-24 07:02:57',2,'2006-02-15 21:30:53'),(11606,'2005-08-17 03:32:43',4138,499,'2005-08-18 04:30:43',1,'2006-02-15 21:30:53'),(11607,'2005-08-17 03:36:06',4345,242,'2005-08-20 01:06:06',1,'2006-02-15 21:30:53'),(11608,'2005-08-17 03:36:52',1673,448,'2005-08-25 07:17:52',2,'2006-02-15 21:30:53'),(11609,'2005-08-17 03:41:11',351,73,'2005-08-25 01:30:11',2,'2006-02-15 21:30:53'),(11610,'2005-08-17 03:43:37',3048,275,'2005-08-20 22:14:37',1,'2006-02-15 21:30:53'),(11611,'2006-02-14 15:16:03',1857,192,NULL,2,'2006-02-15 21:30:53'),(11612,'2005-08-17 03:48:51',375,526,'2005-08-20 03:03:51',1,'2006-02-15 21:30:53'),(11613,'2005-08-17 03:50:33',2486,126,'2005-08-25 00:37:33',2,'2006-02-15 21:30:53'),(11614,'2005-08-17 03:52:18',805,2,'2005-08-20 07:04:18',1,'2006-02-15 21:30:53'),(11615,'2005-08-17 03:54:35',4331,436,'2005-08-23 06:54:35',2,'2006-02-15 21:30:53'),(11616,'2005-08-17 04:00:01',2588,36,'2005-08-20 23:03:01',2,'2006-02-15 21:30:53'),(11617,'2005-08-17 04:00:40',1898,324,'2005-08-18 00:36:40',1,'2006-02-15 21:30:53'),(11618,'2005-08-17 04:01:36',954,175,'2005-08-23 01:02:36',1,'2006-02-15 21:30:53'),(11619,'2005-08-17 04:03:26',3652,374,'2005-08-22 03:07:26',1,'2006-02-15 21:30:53'),(11620,'2005-08-17 04:06:22',3801,502,'2005-08-17 23:53:22',1,'2006-02-15 21:30:53'),(11621,'2005-08-17 04:13:45',3708,216,'2005-08-26 01:00:45',1,'2006-02-15 21:30:53'),(11622,'2005-08-17 04:15:46',499,220,'2005-08-24 04:48:46',1,'2006-02-15 21:30:53'),(11623,'2005-08-17 04:15:47',759,163,'2005-08-19 04:11:47',2,'2006-02-15 21:30:53'),(11624,'2005-08-17 04:17:42',606,527,'2005-08-18 02:46:42',1,'2006-02-15 21:30:53'),(11625,'2005-08-17 04:18:52',712,521,'2005-08-25 03:05:52',2,'2006-02-15 21:30:53'),(11626,'2005-08-17 04:25:42',4279,266,'2005-08-23 05:46:42',1,'2006-02-15 21:30:53'),(11627,'2005-08-17 04:25:47',3945,168,'2005-08-26 02:54:47',2,'2006-02-15 21:30:53'),(11628,'2005-08-17 04:27:18',3656,256,'2005-08-25 01:12:18',2,'2006-02-15 21:30:53'),(11629,'2005-08-17 04:27:24',786,299,'2005-08-26 10:25:24',2,'2006-02-15 21:30:53'),(11630,'2005-08-17 04:27:46',688,72,'2005-08-19 09:58:46',2,'2006-02-15 21:30:53'),(11631,'2005-08-17 04:28:56',59,168,'2005-08-24 00:42:56',2,'2006-02-15 21:30:53'),(11632,'2005-08-17 04:29:32',2551,238,'2005-08-22 03:44:32',1,'2006-02-15 21:30:53'),(11633,'2005-08-17 04:30:09',1706,468,'2005-08-20 06:56:09',1,'2006-02-15 21:30:53'),(11634,'2005-08-17 04:31:49',2576,206,'2005-08-21 02:51:49',1,'2006-02-15 21:30:53'),(11635,'2005-08-17 04:33:17',2642,98,'2005-08-21 07:50:17',2,'2006-02-15 21:30:53'),(11636,'2005-08-17 04:36:31',791,276,'2005-08-24 00:03:31',2,'2006-02-15 21:30:53'),(11637,'2005-08-17 04:36:39',479,283,'2005-08-18 02:17:39',1,'2006-02-15 21:30:53'),(11638,'2005-08-17 04:39:09',3421,152,'2005-08-25 06:42:09',2,'2006-02-15 21:30:53'),(11639,'2005-08-17 04:43:29',3985,462,'2005-08-25 01:04:29',2,'2006-02-15 21:30:53'),(11640,'2005-08-17 04:44:33',1718,501,'2005-08-21 09:29:33',2,'2006-02-15 21:30:53'),(11641,'2005-08-17 04:45:39',2717,79,'2005-08-20 10:38:39',1,'2006-02-15 21:30:53'),(11642,'2005-08-17 04:48:05',3790,25,'2005-08-18 01:53:05',2,'2006-02-15 21:30:53'),(11643,'2005-08-17 04:49:35',1378,197,'2005-08-24 07:05:35',1,'2006-02-15 21:30:53'),(11644,'2005-08-17 04:49:46',1760,438,'2005-08-24 08:49:46',1,'2006-02-15 21:30:53'),(11645,'2005-08-17 04:50:56',4261,35,'2005-08-25 23:03:56',1,'2006-02-15 21:30:53'),(11646,'2006-02-14 15:16:03',478,11,NULL,2,'2006-02-15 21:30:53'),(11647,'2005-08-17 04:54:14',3016,110,'2005-08-23 04:16:14',2,'2006-02-15 21:30:53'),(11648,'2005-08-17 04:56:16',3362,465,'2005-08-26 00:53:16',2,'2006-02-15 21:30:53'),(11649,'2005-08-17 04:59:26',3222,217,'2005-08-20 04:02:26',2,'2006-02-15 21:30:53'),(11650,'2005-08-17 05:00:03',3979,418,'2005-08-22 01:45:03',2,'2006-02-15 21:30:53'),(11651,'2005-08-17 05:02:25',3681,143,'2005-08-24 08:15:25',2,'2006-02-15 21:30:53'),(11652,'2006-02-14 15:16:03',1622,597,NULL,2,'2006-02-15 21:30:53'),(11653,'2005-08-17 05:06:10',4475,358,'2005-08-24 03:09:10',2,'2006-02-15 21:30:53'),(11654,'2005-08-17 05:06:19',1048,218,'2005-08-18 04:32:19',2,'2006-02-15 21:30:53'),(11655,'2005-08-17 05:11:07',1699,113,'2005-08-26 10:18:07',1,'2006-02-15 21:30:53'),(11656,'2005-08-17 05:11:09',1451,56,'2005-08-25 07:51:09',1,'2006-02-15 21:30:53'),(11657,'2006-02-14 15:16:03',3043,53,NULL,2,'2006-02-15 21:30:53'),(11658,'2005-08-17 05:19:17',2008,422,'2005-08-24 07:03:17',2,'2006-02-15 21:30:53'),(11659,'2005-08-17 05:20:45',2881,112,'2005-08-22 10:18:45',1,'2006-02-15 21:30:53'),(11660,'2005-08-17 05:22:42',4081,525,'2005-08-23 01:03:42',1,'2006-02-15 21:30:53'),(11661,'2005-08-17 05:25:57',1008,27,'2005-08-25 04:37:57',1,'2006-02-15 21:30:53'),(11662,'2005-08-17 05:27:37',2730,177,'2005-08-26 09:56:37',2,'2006-02-15 21:30:53'),(11663,'2005-08-17 05:30:19',3798,373,'2005-08-25 08:14:19',1,'2006-02-15 21:30:53'),(11664,'2005-08-17 05:35:52',1343,433,'2005-08-18 02:40:52',1,'2006-02-15 21:30:53'),(11665,'2005-08-17 05:36:57',334,254,'2005-08-23 01:38:57',1,'2006-02-15 21:30:53'),(11666,'2005-08-17 05:45:10',250,531,'2005-08-19 06:47:10',2,'2006-02-15 21:30:53'),(11667,'2005-08-17 05:46:55',1516,582,'2005-08-26 08:19:55',1,'2006-02-15 21:30:53'),(11668,'2005-08-17 05:47:32',2162,249,'2005-08-20 03:11:32',1,'2006-02-15 21:30:53'),(11669,'2005-08-17 05:48:51',3224,487,'2005-08-22 01:22:51',1,'2006-02-15 21:30:53'),(11670,'2005-08-17 05:48:59',4437,286,'2005-08-19 08:51:59',1,'2006-02-15 21:30:53'),(11671,'2005-08-17 05:50:21',3569,338,'2005-08-20 03:43:21',1,'2006-02-15 21:30:53'),(11672,'2006-02-14 15:16:03',3947,521,NULL,2,'2006-02-15 21:30:53'),(11673,'2005-08-17 05:54:15',823,303,'2005-08-21 08:12:15',2,'2006-02-15 21:30:53'),(11674,'2005-08-17 05:56:27',582,306,'2005-08-24 08:50:27',2,'2006-02-15 21:30:53'),(11675,'2005-08-17 05:57:54',1322,514,'2005-08-21 23:57:54',1,'2006-02-15 21:30:53'),(11676,'2006-02-14 15:16:03',4496,216,NULL,2,'2006-02-15 21:30:53'),(11677,'2005-08-17 06:06:26',2206,407,'2005-08-20 04:35:26',2,'2006-02-15 21:30:53'),(11678,'2005-08-17 06:07:39',3511,176,'2005-08-21 10:51:39',2,'2006-02-15 21:30:53'),(11679,'2005-08-17 06:08:54',3337,72,'2005-08-21 07:50:54',1,'2006-02-15 21:30:53'),(11680,'2005-08-17 06:12:27',4538,221,'2005-08-23 08:54:27',1,'2006-02-15 21:30:53'),(11681,'2005-08-17 06:13:30',1260,543,'2005-08-26 01:29:30',2,'2006-02-15 21:30:53'),(11682,'2005-08-17 06:13:40',2544,387,'2005-08-18 06:11:40',1,'2006-02-15 21:30:53'),(11683,'2005-08-17 06:15:17',2603,66,'2005-08-26 05:33:17',1,'2006-02-15 21:30:53'),(11684,'2005-08-17 06:27:15',4277,517,'2005-08-22 02:11:15',2,'2006-02-15 21:30:53'),(11685,'2005-08-17 06:39:16',3552,51,'2005-08-22 04:20:16',2,'2006-02-15 21:30:53'),(11686,'2005-08-17 06:39:30',1393,392,'2005-08-21 10:19:30',2,'2006-02-15 21:30:53'),(11687,'2005-08-17 06:39:59',1977,169,'2005-08-23 04:53:59',1,'2006-02-15 21:30:53'),(11688,'2005-08-17 06:41:58',2229,82,'2005-08-25 04:38:58',1,'2006-02-15 21:30:53'),(11689,'2005-08-17 06:42:08',2390,419,'2005-08-26 06:09:08',1,'2006-02-15 21:30:53'),(11690,'2005-08-17 06:44:22',3934,267,'2005-08-24 03:49:22',1,'2006-02-15 21:30:53'),(11691,'2005-08-17 06:51:05',2529,515,'2005-08-24 09:53:05',1,'2006-02-15 21:30:53'),(11692,'2005-08-17 06:52:41',1222,350,'2005-08-24 12:17:41',2,'2006-02-15 21:30:53'),(11693,'2005-08-17 06:56:56',793,221,'2005-08-24 06:20:56',2,'2006-02-15 21:30:53'),(11694,'2005-08-17 06:57:30',3540,410,'2005-08-24 07:52:30',1,'2006-02-15 21:30:53'),(11695,'2005-08-17 07:01:08',1110,386,'2005-08-21 09:21:08',1,'2006-02-15 21:30:53'),(11696,'2005-08-17 07:01:09',3816,522,'2005-08-21 09:12:09',2,'2006-02-15 21:30:53'),(11697,'2005-08-17 07:09:19',383,329,'2005-08-19 02:02:19',1,'2006-02-15 21:30:53'),(11698,'2005-08-17 07:09:59',3946,353,'2005-08-19 04:31:59',1,'2006-02-15 21:30:53'),(11699,'2005-08-17 07:11:58',3997,339,'2005-08-26 12:08:58',1,'2006-02-15 21:30:53'),(11700,'2005-08-17 07:12:31',2365,104,'2005-08-18 04:21:31',2,'2006-02-15 21:30:53'),(11701,'2005-08-17 07:15:47',993,34,'2005-08-19 01:44:47',2,'2006-02-15 21:30:53'),(11702,'2005-08-17 07:18:56',3286,526,'2005-08-24 06:33:56',1,'2006-02-15 21:30:53'),(11703,'2005-08-17 07:19:29',1692,279,'2005-08-20 09:35:29',2,'2006-02-15 21:30:53'),(11704,'2005-08-17 07:21:22',1099,135,'2005-08-25 06:06:22',1,'2006-02-15 21:30:53'),(11705,'2005-08-17 07:22:25',4242,489,'2005-08-18 06:42:25',1,'2006-02-15 21:30:53'),(11706,'2005-08-17 07:23:46',4234,414,'2005-08-18 10:13:46',2,'2006-02-15 21:30:53'),(11707,'2005-08-17 07:24:59',1030,581,'2005-08-24 10:40:59',1,'2006-02-15 21:30:53'),(11708,'2005-08-17 07:26:47',76,582,'2005-08-22 04:11:47',1,'2006-02-15 21:30:53'),(11709,'2006-02-14 15:16:03',1720,330,NULL,1,'2006-02-15 21:30:53'),(11710,'2005-08-17 07:29:44',613,553,'2005-08-19 02:06:44',2,'2006-02-15 21:30:53'),(11711,'2005-08-17 07:30:55',1503,470,'2005-08-18 09:21:55',1,'2006-02-15 21:30:53'),(11712,'2005-08-17 07:32:51',3607,203,'2005-08-21 09:18:51',2,'2006-02-15 21:30:53'),(11713,'2005-08-17 07:34:05',1919,590,'2005-08-25 07:49:05',1,'2006-02-15 21:30:53'),(11714,'2005-08-17 07:34:55',17,151,'2005-08-18 04:07:55',1,'2006-02-15 21:30:53'),(11715,'2005-08-17 07:40:55',1615,452,'2005-08-25 11:19:55',1,'2006-02-15 21:30:53'),(11716,'2005-08-17 07:40:55',3054,287,'2005-08-21 05:56:55',1,'2006-02-15 21:30:53'),(11717,'2005-08-17 07:44:09',1371,566,'2005-08-20 09:39:09',2,'2006-02-15 21:30:53'),(11718,'2005-08-17 07:44:42',3673,555,'2005-08-23 03:02:42',2,'2006-02-15 21:30:53'),(11719,'2005-08-17 07:46:05',2054,338,'2005-08-23 08:52:05',1,'2006-02-15 21:30:53'),(11720,'2005-08-17 07:46:54',1707,121,'2005-08-26 04:19:54',2,'2006-02-15 21:30:53'),(11721,'2005-08-17 07:49:17',1923,46,'2005-08-18 04:08:17',1,'2006-02-15 21:30:53'),(11722,'2005-08-17 07:53:03',2430,321,'2005-08-22 06:56:03',2,'2006-02-15 21:30:53'),(11723,'2005-08-17 07:56:22',1665,341,'2005-08-22 03:49:22',1,'2006-02-15 21:30:53'),(11724,'2005-08-17 08:04:44',4484,207,'2005-08-25 03:25:44',2,'2006-02-15 21:30:53'),(11725,'2005-08-17 08:09:00',519,45,'2005-08-18 09:50:00',1,'2006-02-15 21:30:53'),(11726,'2005-08-17 08:11:10',4438,266,'2005-08-22 05:45:10',1,'2006-02-15 21:30:53'),(11727,'2005-08-17 08:12:20',98,6,'2005-08-19 12:45:20',1,'2006-02-15 21:30:53'),(11728,'2005-08-17 08:12:26',726,444,'2005-08-18 03:26:26',1,'2006-02-15 21:30:53'),(11729,'2005-08-17 08:14:41',2819,215,'2005-08-22 02:54:41',1,'2006-02-15 21:30:53'),(11730,'2005-08-17 08:22:00',3817,98,'2005-08-22 05:43:00',2,'2006-02-15 21:30:53'),(11731,'2005-08-17 08:24:35',917,52,'2005-08-24 02:54:35',2,'2006-02-15 21:30:53'),(11732,'2005-08-17 08:29:46',460,137,'2005-08-23 14:21:46',2,'2006-02-15 21:30:53'),(11733,'2005-08-17 08:31:03',439,251,'2005-08-21 05:44:03',2,'2006-02-15 21:30:53'),(11734,'2005-08-17 08:34:22',4063,337,'2005-08-25 11:56:22',2,'2006-02-15 21:30:53'),(11735,'2005-08-17 08:35:42',2555,452,'2005-08-26 11:04:42',1,'2006-02-15 21:30:53'),(11736,'2005-08-17 08:40:55',4217,535,'2005-08-26 09:03:55',1,'2006-02-15 21:30:53'),(11737,'2005-08-17 08:42:08',4128,549,'2005-08-19 08:14:08',1,'2006-02-15 21:30:53'),(11738,'2005-08-17 08:45:55',3042,347,'2005-08-26 07:09:55',1,'2006-02-15 21:30:53'),(11739,'2006-02-14 15:16:03',4568,373,NULL,2,'2006-02-15 21:30:53'),(11740,'2005-08-17 08:48:31',2441,27,'2005-08-24 07:47:31',2,'2006-02-15 21:30:53'),(11741,'2005-08-17 08:48:39',1819,473,'2005-08-20 07:37:39',1,'2006-02-15 21:30:53'),(11742,'2005-08-17 08:48:43',596,470,'2005-08-23 07:18:43',2,'2006-02-15 21:30:53'),(11743,'2005-08-17 08:49:05',294,336,'2005-08-22 08:53:05',2,'2006-02-15 21:30:53'),(11744,'2005-08-17 08:54:30',297,26,'2005-08-25 03:28:30',1,'2006-02-15 21:30:53'),(11745,'2005-08-17 09:00:01',4018,240,'2005-08-26 14:29:01',2,'2006-02-15 21:30:53'),(11746,'2005-08-17 09:03:24',4571,299,'2005-08-25 06:08:24',2,'2006-02-15 21:30:53'),(11747,'2005-08-17 09:03:31',1041,555,'2005-08-19 08:23:31',2,'2006-02-15 21:30:53'),(11748,'2005-08-17 09:04:02',1175,595,'2005-08-21 12:22:02',2,'2006-02-15 21:30:53'),(11749,'2005-08-17 09:04:03',4141,567,'2005-08-19 09:32:03',2,'2006-02-15 21:30:53'),(11750,'2005-08-17 09:07:00',665,190,'2005-08-23 08:16:00',2,'2006-02-15 21:30:53'),(11751,'2005-08-17 09:07:56',3309,51,'2005-08-26 13:16:56',1,'2006-02-15 21:30:53'),(11752,'2005-08-17 09:10:55',1833,481,'2005-08-18 06:22:55',1,'2006-02-15 21:30:53'),(11753,'2005-08-17 09:11:52',2599,43,'2005-08-25 05:03:52',2,'2006-02-15 21:30:53'),(11754,'2006-02-14 15:16:03',3747,163,NULL,2,'2006-02-15 21:30:53'),(11755,'2005-08-17 09:15:35',3457,513,'2005-08-23 06:28:35',2,'2006-02-15 21:30:53'),(11756,'2005-08-17 09:29:22',1798,198,'2005-08-21 12:17:22',1,'2006-02-15 21:30:53'),(11757,'2006-02-14 15:16:03',1295,550,NULL,2,'2006-02-15 21:30:53'),(11758,'2005-08-17 09:33:02',11,533,'2005-08-24 05:03:02',2,'2006-02-15 21:30:53'),(11759,'2005-08-17 09:41:23',2655,108,'2005-08-19 11:58:23',2,'2006-02-15 21:30:53'),(11760,'2005-08-17 09:44:22',626,545,'2005-08-24 14:39:22',2,'2006-02-15 21:30:53'),(11761,'2005-08-17 09:44:59',2230,13,'2005-08-25 07:46:59',1,'2006-02-15 21:30:53'),(11762,'2005-08-17 09:48:06',1204,244,'2005-08-26 13:12:06',2,'2006-02-15 21:30:53'),(11763,'2005-08-17 09:51:39',872,586,'2005-08-21 10:15:39',2,'2006-02-15 21:30:53'),(11764,'2005-08-17 09:51:54',4502,252,'2005-08-20 07:11:54',1,'2006-02-15 21:30:53'),(11765,'2005-08-17 09:55:28',4311,308,'2005-08-19 15:53:28',2,'2006-02-15 21:30:53'),(11766,'2005-08-17 09:58:40',2999,544,'2005-08-21 04:59:40',1,'2006-02-15 21:30:53'),(11767,'2005-08-17 10:00:40',2374,77,'2005-08-25 04:14:40',2,'2006-02-15 21:30:53'),(11768,'2005-08-17 10:02:29',1307,564,'2005-08-23 10:26:29',1,'2006-02-15 21:30:53'),(11769,'2005-08-17 10:04:49',1406,418,'2005-08-20 09:22:49',1,'2006-02-15 21:30:53'),(11770,'2005-08-17 10:05:05',2862,475,'2005-08-20 15:59:05',1,'2006-02-15 21:30:53'),(11771,'2005-08-17 10:17:09',2575,324,'2005-08-25 10:58:09',1,'2006-02-15 21:30:53'),(11772,'2005-08-17 10:18:57',1021,237,'2005-08-26 12:48:57',2,'2006-02-15 21:30:53'),(11773,'2005-08-17 10:19:51',1886,384,'2005-08-23 04:30:51',1,'2006-02-15 21:30:53'),(11774,'2005-08-17 10:20:39',1679,488,'2005-08-23 13:37:39',1,'2006-02-15 21:30:53'),(11775,'2005-08-17 10:25:53',256,574,'2005-08-22 08:37:53',2,'2006-02-15 21:30:53'),(11776,'2005-08-17 10:27:19',2400,306,'2005-08-20 14:02:19',2,'2006-02-15 21:30:53'),(11777,'2005-08-17 10:27:19',4065,83,'2005-08-26 13:10:19',1,'2006-02-15 21:30:53'),(11778,'2005-08-17 10:31:40',1306,213,'2005-08-25 13:53:40',2,'2006-02-15 21:30:53'),(11779,'2005-08-17 10:31:58',181,126,'2005-08-24 15:28:58',2,'2006-02-15 21:30:53'),(11780,'2005-08-17 10:34:24',2268,297,'2005-08-21 04:55:24',1,'2006-02-15 21:30:53'),(11781,'2005-08-17 10:37:00',1853,506,'2005-08-21 12:03:00',2,'2006-02-15 21:30:53'),(11782,'2006-02-14 15:16:03',4098,354,NULL,1,'2006-02-15 21:30:53'),(11783,'2005-08-17 10:39:24',979,152,'2005-08-21 12:43:24',2,'2006-02-15 21:30:53'),(11784,'2005-08-17 10:48:05',3101,297,'2005-08-19 06:47:05',1,'2006-02-15 21:30:53'),(11785,'2005-08-17 10:54:46',2760,182,'2005-08-23 14:15:46',2,'2006-02-15 21:30:53'),(11786,'2005-08-17 10:57:40',1487,435,'2005-08-24 06:48:40',2,'2006-02-15 21:30:53'),(11787,'2005-08-17 10:59:00',1980,195,'2005-08-19 05:56:00',1,'2006-02-15 21:30:53'),(11788,'2005-08-17 10:59:18',1310,560,'2005-08-22 11:12:18',1,'2006-02-15 21:30:53'),(11789,'2005-08-17 10:59:24',851,150,'2005-08-26 16:17:24',1,'2006-02-15 21:30:53'),(11790,'2005-08-17 11:00:08',2384,451,'2005-08-20 05:15:08',2,'2006-02-15 21:30:53'),(11791,'2005-08-17 11:01:11',3640,219,'2005-08-22 06:31:11',2,'2006-02-15 21:30:53'),(11792,'2005-08-17 11:03:53',3703,376,'2005-08-26 06:34:53',1,'2006-02-15 21:30:53'),(11793,'2005-08-17 11:05:53',1955,352,'2005-08-25 12:25:53',1,'2006-02-15 21:30:53'),(11794,'2005-08-17 11:08:48',3486,453,'2005-08-20 13:36:48',2,'2006-02-15 21:30:53'),(11795,'2005-08-17 11:13:38',2220,565,'2005-08-19 14:20:38',2,'2006-02-15 21:30:53'),(11796,'2005-08-17 11:16:47',3983,435,'2005-08-18 16:55:47',2,'2006-02-15 21:30:53'),(11797,'2005-08-17 11:17:21',1142,546,'2005-08-18 09:14:21',2,'2006-02-15 21:30:53'),(11798,'2005-08-17 11:21:43',3974,448,'2005-08-25 07:43:43',2,'2006-02-15 21:30:53'),(11799,'2005-08-17 11:25:25',40,501,'2005-08-25 13:03:25',2,'2006-02-15 21:30:53'),(11800,'2005-08-17 11:29:52',2284,350,'2005-08-21 08:37:52',1,'2006-02-15 21:30:53'),(11801,'2005-08-17 11:30:11',659,126,'2005-08-23 09:54:11',1,'2006-02-15 21:30:53'),(11802,'2005-08-17 11:32:51',2815,221,'2005-08-22 10:56:51',1,'2006-02-15 21:30:53'),(11803,'2005-08-17 11:42:08',3648,160,'2005-08-22 07:45:08',2,'2006-02-15 21:30:53'),(11804,'2005-08-17 11:42:45',1040,556,'2005-08-25 07:11:45',1,'2006-02-15 21:30:53'),(11805,'2005-08-17 11:48:47',1208,208,'2005-08-26 11:06:47',2,'2006-02-15 21:30:53'),(11806,'2005-08-17 11:49:28',3203,125,'2005-08-22 15:42:28',1,'2006-02-15 21:30:53'),(11807,'2005-08-17 11:51:15',4052,201,'2005-08-21 11:47:15',2,'2006-02-15 21:30:53'),(11808,'2005-08-17 11:51:16',4042,462,'2005-08-18 14:01:16',2,'2006-02-15 21:30:53'),(11809,'2005-08-17 11:51:39',1136,305,'2005-08-24 17:14:39',1,'2006-02-15 21:30:53'),(11810,'2005-08-17 11:56:48',1548,270,'2005-08-20 17:39:48',1,'2006-02-15 21:30:53'),(11811,'2005-08-17 11:59:18',195,130,'2005-08-18 09:13:18',2,'2006-02-15 21:30:53'),(11812,'2005-08-17 12:00:54',119,132,'2005-08-18 16:08:54',1,'2006-02-15 21:30:53'),(11813,'2005-08-17 12:06:54',1074,36,'2005-08-21 17:52:54',2,'2006-02-15 21:30:53'),(11814,'2005-08-17 12:09:20',3462,509,'2005-08-25 16:56:20',2,'2006-02-15 21:30:53'),(11815,'2005-08-17 12:13:26',272,192,'2005-08-22 17:15:26',2,'2006-02-15 21:30:53'),(11816,'2005-08-17 12:14:16',3897,224,'2005-08-19 06:15:16',2,'2006-02-15 21:30:53'),(11817,'2005-08-17 12:20:01',2297,38,'2005-08-19 18:06:01',1,'2006-02-15 21:30:53'),(11818,'2005-08-17 12:22:04',213,512,'2005-08-25 15:59:04',2,'2006-02-15 21:30:53'),(11819,'2005-08-17 12:25:17',656,208,'2005-08-19 16:12:17',1,'2006-02-15 21:30:53'),(11820,'2005-08-17 12:25:33',2801,401,'2005-08-19 07:04:33',2,'2006-02-15 21:30:53'),(11821,'2005-08-17 12:27:55',2711,20,'2005-08-18 07:07:55',1,'2006-02-15 21:30:53'),(11822,'2005-08-17 12:32:39',1317,263,'2005-08-18 12:30:39',2,'2006-02-15 21:30:53'),(11823,'2005-08-17 12:36:37',2626,352,'2005-08-22 11:10:37',2,'2006-02-15 21:30:53'),(11824,'2005-08-17 12:37:54',2639,1,'2005-08-19 10:11:54',2,'2006-02-15 21:30:53'),(11825,'2005-08-17 12:43:30',2656,296,'2005-08-20 15:25:30',1,'2006-02-15 21:30:53'),(11826,'2005-08-17 12:43:46',1837,536,'2005-08-19 16:59:46',2,'2006-02-15 21:30:53'),(11827,'2005-08-17 12:44:27',3064,523,'2005-08-24 13:31:27',1,'2006-02-15 21:30:53'),(11828,'2005-08-17 12:48:28',2593,268,'2005-08-24 09:24:28',2,'2006-02-15 21:30:53'),(11829,'2005-08-17 12:52:04',2207,563,'2005-08-19 10:50:04',2,'2006-02-15 21:30:53'),(11830,'2005-08-17 12:53:15',3713,522,'2005-08-25 08:08:15',1,'2006-02-15 21:30:53'),(11831,'2005-08-17 12:54:47',4562,32,'2005-08-21 11:21:47',1,'2006-02-15 21:30:53'),(11832,'2005-08-17 12:55:31',2331,125,'2005-08-19 08:31:31',1,'2006-02-15 21:30:53'),(11833,'2005-08-17 13:00:33',3728,424,'2005-08-18 13:45:33',2,'2006-02-15 21:30:53'),(11834,'2005-08-17 13:00:40',2407,261,'2005-08-22 12:50:40',1,'2006-02-15 21:30:53'),(11835,'2005-08-17 13:03:13',2796,479,'2005-08-19 10:50:13',1,'2006-02-15 21:30:53'),(11836,'2005-08-17 13:03:36',2253,198,'2005-08-19 17:15:36',1,'2006-02-15 21:30:53'),(11837,'2005-08-17 13:04:41',1085,81,'2005-08-26 14:19:41',1,'2006-02-15 21:30:53'),(11838,'2005-08-17 13:06:00',3576,161,'2005-08-20 11:44:00',1,'2006-02-15 21:30:53'),(11839,'2005-08-17 13:08:45',2282,80,'2005-08-18 15:05:45',2,'2006-02-15 21:30:53'),(11840,'2005-08-17 13:09:01',1824,491,'2005-08-19 17:42:01',1,'2006-02-15 21:30:53'),(11841,'2005-08-17 13:12:20',1524,270,'2005-08-21 11:16:20',2,'2006-02-15 21:30:53'),(11842,'2005-08-17 13:13:37',2680,422,'2005-08-20 08:32:37',1,'2006-02-15 21:30:53'),(11843,'2005-08-17 13:14:50',3091,187,'2005-08-22 11:31:50',2,'2006-02-15 21:30:53'),(11844,'2005-08-17 13:16:04',3791,368,'2005-08-18 10:16:04',1,'2006-02-15 21:30:53'),(11845,'2005-08-17 13:16:38',14,65,'2005-08-18 11:21:38',1,'2006-02-15 21:30:53'),(11846,'2005-08-17 13:18:29',3306,283,'2005-08-22 18:05:29',2,'2006-02-15 21:30:53'),(11847,'2006-02-14 15:16:03',1784,337,NULL,1,'2006-02-15 21:30:53'),(11848,'2006-02-14 15:16:03',3680,152,NULL,1,'2006-02-15 21:30:53'),(11849,'2005-08-17 13:24:55',1191,92,'2005-08-22 12:50:55',2,'2006-02-15 21:30:53'),(11850,'2005-08-17 13:30:15',1437,80,'2005-08-21 17:24:15',1,'2006-02-15 21:30:53'),(11851,'2005-08-17 13:30:27',3225,376,'2005-08-20 15:34:27',2,'2006-02-15 21:30:53'),(11852,'2005-08-17 13:38:27',2358,596,'2005-08-24 08:50:27',1,'2006-02-15 21:30:53'),(11853,'2005-08-17 13:39:32',3888,6,'2005-08-23 18:44:32',2,'2006-02-15 21:30:53'),(11854,'2005-08-17 13:42:52',137,313,'2005-08-26 14:04:52',1,'2006-02-15 21:30:53'),(11855,'2005-08-17 13:43:07',1062,535,'2005-08-26 08:07:07',1,'2006-02-15 21:30:53'),(11856,'2005-08-17 13:44:49',305,28,'2005-08-21 17:20:49',1,'2006-02-15 21:30:53'),(11857,'2005-08-17 13:48:30',101,146,'2005-08-18 15:55:30',1,'2006-02-15 21:30:53'),(11858,'2005-08-17 13:50:31',3483,503,'2005-08-19 08:45:31',2,'2006-02-15 21:30:53'),(11859,'2005-08-17 13:51:20',423,144,'2005-08-21 13:47:20',2,'2006-02-15 21:30:53'),(11860,'2005-08-17 13:52:26',4354,257,'2005-08-24 14:47:26',1,'2006-02-15 21:30:53'),(11861,'2005-08-17 13:53:47',2674,232,'2005-08-21 16:07:47',1,'2006-02-15 21:30:53'),(11862,'2005-08-17 13:54:53',2604,529,'2005-08-19 10:48:53',1,'2006-02-15 21:30:53'),(11863,'2005-08-17 13:56:01',1003,112,'2005-08-23 18:38:01',1,'2006-02-15 21:30:53'),(11864,'2005-08-17 14:02:01',2985,96,'2005-08-21 19:54:01',1,'2006-02-15 21:30:53'),(11865,'2005-08-17 14:03:46',2577,345,'2005-08-19 08:39:46',1,'2006-02-15 21:30:53'),(11866,'2006-02-14 15:16:03',2758,200,NULL,2,'2006-02-15 21:30:53'),(11867,'2005-08-17 14:04:28',938,434,'2005-08-21 10:08:28',1,'2006-02-15 21:30:53'),(11868,'2005-08-17 14:05:34',2909,445,'2005-08-19 15:47:34',1,'2006-02-15 21:30:53'),(11869,'2005-08-17 14:10:22',3453,19,'2005-08-24 18:39:22',1,'2006-02-15 21:30:53'),(11870,'2005-08-17 14:11:28',4251,432,'2005-08-24 16:43:28',1,'2006-02-15 21:30:53'),(11871,'2005-08-17 14:11:44',3013,484,'2005-08-18 17:50:44',1,'2006-02-15 21:30:53'),(11872,'2005-08-17 14:11:45',4306,113,'2005-08-21 17:02:45',2,'2006-02-15 21:30:53'),(11873,'2005-08-17 14:14:39',4021,554,'2005-08-18 17:20:39',2,'2006-02-15 21:30:53'),(11874,'2005-08-17 14:16:40',2637,467,'2005-08-18 15:51:40',2,'2006-02-15 21:30:53'),(11875,'2005-08-17 14:16:48',1787,294,'2005-08-26 14:20:48',1,'2006-02-15 21:30:53'),(11876,'2005-08-17 14:18:21',3982,426,'2005-08-20 19:48:21',1,'2006-02-15 21:30:53'),(11877,'2005-08-17 14:21:11',4528,445,'2005-08-25 19:46:11',1,'2006-02-15 21:30:53'),(11878,'2005-08-17 14:23:52',255,549,'2005-08-21 14:23:52',1,'2006-02-15 21:30:53'),(11879,'2005-08-17 14:25:09',2500,312,'2005-08-26 09:19:09',1,'2006-02-15 21:30:53'),(11880,'2005-08-17 14:28:28',1539,597,'2005-08-26 12:32:28',2,'2006-02-15 21:30:53'),(11881,'2005-08-17 14:31:56',3124,272,'2005-08-21 11:05:56',1,'2006-02-15 21:30:53'),(11882,'2005-08-17 14:33:41',2401,234,'2005-08-26 17:25:41',2,'2006-02-15 21:30:53'),(11883,'2005-08-17 14:41:28',221,551,'2005-08-19 09:54:28',1,'2006-02-15 21:30:53'),(11884,'2005-08-17 14:43:23',797,178,'2005-08-25 15:38:23',1,'2006-02-15 21:30:53'),(11885,'2005-08-17 14:53:53',3931,481,'2005-08-22 10:59:53',1,'2006-02-15 21:30:53'),(11886,'2005-08-17 14:58:51',608,204,'2005-08-19 16:07:51',2,'2006-02-15 21:30:53'),(11887,'2005-08-17 15:03:13',3290,54,'2005-08-19 09:49:13',1,'2006-02-15 21:30:53'),(11888,'2005-08-17 15:04:05',1100,160,'2005-08-25 18:52:05',2,'2006-02-15 21:30:53'),(11889,'2005-08-17 15:08:27',293,395,'2005-08-18 17:10:27',1,'2006-02-15 21:30:53'),(11890,'2005-08-17 15:08:43',3023,487,'2005-08-26 14:56:43',2,'2006-02-15 21:30:53'),(11891,'2005-08-17 15:11:55',2619,115,'2005-08-22 11:11:55',2,'2006-02-15 21:30:53'),(11892,'2005-08-17 15:13:21',746,227,'2005-08-21 09:19:21',2,'2006-02-15 21:30:53'),(11893,'2005-08-17 15:13:29',2321,496,'2005-08-25 11:09:29',1,'2006-02-15 21:30:53'),(11894,'2005-08-17 15:15:01',1223,67,'2005-08-26 13:49:01',1,'2006-02-15 21:30:53'),(11895,'2005-08-17 15:15:07',2156,236,'2005-08-18 11:00:07',2,'2006-02-15 21:30:53'),(11896,'2005-08-17 15:19:54',259,436,'2005-08-24 18:22:54',2,'2006-02-15 21:30:53'),(11897,'2005-08-17 15:24:06',3904,238,'2005-08-23 11:50:06',2,'2006-02-15 21:30:53'),(11898,'2005-08-17 15:24:12',3163,169,'2005-08-24 13:36:12',2,'2006-02-15 21:30:53'),(11899,'2005-08-17 15:29:12',3179,84,'2005-08-24 17:41:12',1,'2006-02-15 21:30:53'),(11900,'2005-08-17 15:30:44',1931,239,'2005-08-19 16:12:44',1,'2006-02-15 21:30:53'),(11901,'2005-08-17 15:35:47',4274,70,'2005-08-20 10:33:47',2,'2006-02-15 21:30:53'),(11902,'2005-08-17 15:37:34',1387,63,'2005-08-22 17:28:34',2,'2006-02-15 21:30:53'),(11903,'2005-08-17 15:37:45',1196,542,'2005-08-23 18:31:45',2,'2006-02-15 21:30:53'),(11904,'2005-08-17 15:39:26',2846,145,'2005-08-21 18:24:26',2,'2006-02-15 21:30:53'),(11905,'2005-08-17 15:40:18',2725,349,'2005-08-26 15:14:18',2,'2006-02-15 21:30:53'),(11906,'2005-08-17 15:40:46',325,478,'2005-08-20 15:20:46',2,'2006-02-15 21:30:53'),(11907,'2005-08-17 15:40:47',3928,505,'2005-08-20 19:55:47',2,'2006-02-15 21:30:53'),(11908,'2005-08-17 15:43:09',3390,314,'2005-08-24 14:32:09',2,'2006-02-15 21:30:53'),(11909,'2006-02-14 15:16:03',871,474,NULL,1,'2006-02-15 21:30:53'),(11910,'2005-08-17 15:44:37',4254,418,'2005-08-19 10:58:37',2,'2006-02-15 21:30:53'),(11911,'2005-08-17 15:51:35',3578,472,'2005-08-26 20:26:35',2,'2006-02-15 21:30:53'),(11912,'2005-08-17 15:51:49',744,573,'2005-08-24 18:48:49',1,'2006-02-15 21:30:53'),(11913,'2005-08-17 15:53:17',741,295,'2005-08-24 18:50:17',2,'2006-02-15 21:30:53'),(11914,'2005-08-17 16:04:42',1634,230,'2005-08-22 19:29:42',1,'2006-02-15 21:30:53'),(11915,'2005-08-17 16:05:28',1557,269,'2005-08-25 19:53:28',2,'2006-02-15 21:30:53'),(11916,'2005-08-17 16:05:51',2631,86,'2005-08-20 10:23:51',1,'2006-02-15 21:30:53'),(11917,'2005-08-17 16:08:17',1608,270,'2005-08-20 20:01:17',1,'2006-02-15 21:30:53'),(11918,'2005-08-17 16:08:42',2169,533,'2005-08-20 20:12:42',1,'2006-02-15 21:30:53'),(11919,'2005-08-17 16:08:49',4497,40,'2005-08-20 16:59:49',2,'2006-02-15 21:30:53'),(11920,'2005-08-17 16:10:19',4253,402,'2005-08-20 13:54:19',2,'2006-02-15 21:30:53'),(11921,'2005-08-17 16:12:27',494,485,'2005-08-25 22:07:27',1,'2006-02-15 21:30:53'),(11922,'2005-08-17 16:20:37',3707,15,'2005-08-26 16:53:37',2,'2006-02-15 21:30:53'),(11923,'2005-08-17 16:21:47',1907,72,'2005-08-18 14:26:47',2,'2006-02-15 21:30:53'),(11924,'2005-08-17 16:22:05',1711,202,'2005-08-26 12:34:05',1,'2006-02-15 21:30:53'),(11925,'2005-08-17 16:23:04',1441,370,'2005-08-21 11:38:04',1,'2006-02-15 21:30:53'),(11926,'2005-08-17 16:25:02',2111,516,'2005-08-22 11:36:02',1,'2006-02-15 21:30:53'),(11927,'2005-08-17 16:25:03',3134,178,'2005-08-23 16:41:03',1,'2006-02-15 21:30:53'),(11928,'2005-08-17 16:28:24',79,261,'2005-08-23 17:50:24',2,'2006-02-15 21:30:53'),(11929,'2005-08-17 16:28:51',3765,327,'2005-08-25 19:36:51',1,'2006-02-15 21:30:53'),(11930,'2005-08-17 16:28:53',1299,5,'2005-08-25 10:31:53',1,'2006-02-15 21:30:53'),(11931,'2005-08-17 16:35:14',2022,242,'2005-08-19 19:16:14',1,'2006-02-15 21:30:53'),(11932,'2005-08-17 16:36:12',151,364,'2005-08-18 19:34:12',2,'2006-02-15 21:30:53'),(11933,'2005-08-17 16:38:20',2574,438,'2005-08-22 14:31:20',1,'2006-02-15 21:30:53'),(11934,'2005-08-17 16:40:00',1230,596,'2005-08-20 20:13:00',2,'2006-02-15 21:30:53'),(11935,'2005-08-17 16:42:13',1640,66,'2005-08-22 20:38:13',2,'2006-02-15 21:30:53'),(11936,'2005-08-17 16:45:34',1127,380,'2005-08-21 13:33:34',2,'2006-02-15 21:30:53'),(11937,'2005-08-17 16:48:36',2926,515,'2005-08-24 19:01:36',1,'2006-02-15 21:30:53'),(11938,'2005-08-17 16:54:54',3927,426,'2005-08-24 19:18:54',1,'2006-02-15 21:30:53'),(11939,'2005-08-17 16:55:57',3305,516,'2005-08-24 21:36:57',1,'2006-02-15 21:30:53'),(11940,'2005-08-17 16:56:28',1188,163,'2005-08-18 15:09:28',1,'2006-02-15 21:30:53'),(11941,'2005-08-17 16:56:57',159,566,'2005-08-24 16:29:57',1,'2006-02-15 21:30:53'),(11942,'2006-02-14 15:16:03',4094,576,NULL,2,'2006-02-15 21:30:53'),(11943,'2005-08-17 17:00:42',4466,69,'2005-08-26 22:07:42',1,'2006-02-15 21:30:53'),(11944,'2005-08-17 17:02:42',27,389,'2005-08-21 16:40:42',2,'2006-02-15 21:30:53'),(11945,'2005-08-17 17:05:33',1108,380,'2005-08-20 18:37:33',2,'2006-02-15 21:30:53'),(11946,'2005-08-17 17:05:53',2953,569,'2005-08-19 13:56:53',1,'2006-02-15 21:30:53'),(11947,'2005-08-17 17:08:13',2928,220,'2005-08-23 21:53:13',1,'2006-02-15 21:30:53'),(11948,'2005-08-17 17:11:05',3329,40,'2005-08-25 21:16:05',2,'2006-02-15 21:30:53'),(11949,'2005-08-17 17:12:26',854,198,'2005-08-23 20:48:26',1,'2006-02-15 21:30:53'),(11950,'2005-08-17 17:13:16',4412,190,'2005-08-26 21:25:16',1,'2006-02-15 21:30:53'),(11951,'2005-08-17 17:14:02',1394,155,'2005-08-26 12:04:02',2,'2006-02-15 21:30:53'),(11952,'2005-08-17 17:14:57',2411,288,'2005-08-19 19:15:57',1,'2006-02-15 21:30:53'),(11953,'2005-08-17 17:16:42',2993,399,'2005-08-23 18:28:42',1,'2006-02-15 21:30:53'),(11954,'2005-08-17 17:18:36',220,145,'2005-08-18 19:49:36',1,'2006-02-15 21:30:53'),(11955,'2005-08-17 17:21:35',1221,319,'2005-08-24 22:06:35',1,'2006-02-15 21:30:53'),(11956,'2005-08-17 17:22:05',2533,457,'2005-08-25 22:19:05',2,'2006-02-15 21:30:53'),(11957,'2005-08-17 17:22:29',1924,198,'2005-08-23 21:47:29',2,'2006-02-15 21:30:53'),(11958,'2005-08-17 17:23:20',2061,217,'2005-08-24 14:47:20',2,'2006-02-15 21:30:53'),(11959,'2005-08-17 17:23:35',2694,101,'2005-08-20 20:57:35',1,'2006-02-15 21:30:53'),(11960,'2005-08-17 17:24:30',3924,84,'2005-08-18 14:28:30',1,'2006-02-15 21:30:53'),(11961,'2005-08-17 17:28:01',2015,276,'2005-08-21 20:43:01',1,'2006-02-15 21:30:53'),(11962,'2005-08-17 17:34:38',4384,29,'2005-08-21 12:59:38',2,'2006-02-15 21:30:53'),(11963,'2005-08-17 17:35:47',232,211,'2005-08-23 16:19:47',2,'2006-02-15 21:30:53'),(11964,'2005-08-17 17:37:03',2225,309,'2005-08-25 11:55:03',2,'2006-02-15 21:30:53'),(11965,'2005-08-17 17:39:45',194,490,'2005-08-19 12:05:45',1,'2006-02-15 21:30:53'),(11966,'2005-08-17 17:40:04',3702,283,'2005-08-20 15:45:04',1,'2006-02-15 21:30:53'),(11967,'2005-08-17 17:45:00',1151,521,'2005-08-22 13:03:00',1,'2006-02-15 21:30:53'),(11968,'2005-08-17 17:47:34',698,239,'2005-08-18 19:40:34',1,'2006-02-15 21:30:53'),(11969,'2005-08-17 17:49:37',668,550,'2005-08-19 19:45:37',2,'2006-02-15 21:30:53'),(11970,'2005-08-17 17:53:09',1779,21,'2005-08-24 14:41:09',1,'2006-02-15 21:30:53'),(11971,'2005-08-17 17:53:42',2756,131,'2005-08-18 12:11:42',2,'2006-02-15 21:30:53'),(11972,'2005-08-17 17:55:46',1282,308,'2005-08-22 15:31:46',2,'2006-02-15 21:30:53'),(11973,'2005-08-17 17:55:58',1472,131,'2005-08-21 19:55:58',2,'2006-02-15 21:30:53'),(11974,'2005-08-17 17:56:48',1609,485,'2005-08-21 19:14:48',2,'2006-02-15 21:30:53'),(11975,'2005-08-17 17:58:39',3843,458,'2005-08-20 19:11:39',2,'2006-02-15 21:30:53'),(11976,'2005-08-17 17:59:19',498,373,'2005-08-23 14:51:19',2,'2006-02-15 21:30:53'),(11977,'2005-08-17 18:01:15',1528,536,'2005-08-23 23:03:15',1,'2006-02-15 21:30:53'),(11978,'2005-08-17 18:02:10',4380,499,'2005-08-18 20:40:10',2,'2006-02-15 21:30:53'),(11979,'2005-08-17 18:07:13',568,255,'2005-08-19 23:12:13',1,'2006-02-15 21:30:53'),(11980,'2005-08-17 18:10:18',4165,589,'2005-08-20 13:28:18',1,'2006-02-15 21:30:53'),(11981,'2005-08-17 18:10:40',3228,294,'2005-08-20 16:56:40',1,'2006-02-15 21:30:53'),(11982,'2005-08-17 18:13:07',118,186,'2005-08-18 19:06:07',1,'2006-02-15 21:30:53'),(11983,'2005-08-17 18:13:55',2580,304,'2005-08-23 18:27:55',2,'2006-02-15 21:30:53'),(11984,'2005-08-17 18:16:30',3577,96,'2005-08-24 21:09:30',2,'2006-02-15 21:30:53'),(11985,'2005-08-17 18:19:44',2208,198,'2005-08-18 19:14:44',2,'2006-02-15 21:30:53'),(11986,'2005-08-17 18:21:58',1610,352,'2005-08-18 13:05:58',1,'2006-02-15 21:30:53'),(11987,'2005-08-17 18:21:59',1478,494,'2005-08-25 19:20:59',1,'2006-02-15 21:30:53'),(11988,'2005-08-17 18:23:50',3429,62,'2005-08-18 22:30:50',2,'2006-02-15 21:30:53'),(11989,'2005-08-17 18:23:58',3686,439,'2005-08-20 20:31:58',2,'2006-02-15 21:30:53'),(11990,'2005-08-17 18:26:22',3012,17,'2005-08-19 14:34:22',2,'2006-02-15 21:30:53'),(11991,'2005-08-17 18:27:08',940,361,'2005-08-25 14:07:08',1,'2006-02-15 21:30:53'),(11992,'2005-08-17 18:27:22',4132,136,'2005-08-26 22:38:22',2,'2006-02-15 21:30:53'),(11993,'2005-08-17 18:27:49',295,303,'2005-08-21 00:04:49',1,'2006-02-15 21:30:53'),(11994,'2005-08-17 18:29:35',3428,319,'2005-08-25 23:39:35',1,'2006-02-15 21:30:53'),(11995,'2006-02-14 15:16:03',3953,69,NULL,1,'2006-02-15 21:30:53'),(11996,'2005-08-17 18:34:37',2720,510,'2005-08-20 22:25:37',2,'2006-02-15 21:30:53'),(11997,'2005-08-17 18:34:38',2193,411,'2005-08-26 00:12:38',2,'2006-02-15 21:30:53'),(11998,'2005-08-17 18:46:21',4258,299,'2005-08-18 20:29:21',1,'2006-02-15 21:30:53'),(11999,'2005-08-17 18:47:07',4333,125,'2005-08-20 23:26:07',2,'2006-02-15 21:30:53'),(12000,'2005-08-17 18:49:44',2256,149,'2005-08-24 16:34:44',2,'2006-02-15 21:30:53'),(12001,'2006-02-14 15:16:03',4158,52,NULL,2,'2006-02-15 21:30:53'),(12002,'2005-08-17 18:56:02',1386,75,'2005-08-20 17:36:02',1,'2006-02-15 21:30:53'),(12003,'2005-08-17 18:56:05',3868,70,'2005-08-18 23:52:05',1,'2006-02-15 21:30:53'),(12004,'2005-08-17 18:56:53',2690,499,'2005-08-26 14:56:53',1,'2006-02-15 21:30:53'),(12005,'2005-08-17 18:56:55',2062,403,'2005-08-25 20:23:55',2,'2006-02-15 21:30:53'),(12006,'2005-08-17 19:09:12',4072,272,'2005-08-24 13:50:12',1,'2006-02-15 21:30:53'),(12007,'2005-08-17 19:10:34',3007,268,'2005-08-24 14:09:34',1,'2006-02-15 21:30:53'),(12008,'2005-08-17 19:16:18',865,562,'2005-08-18 14:24:18',2,'2006-02-15 21:30:53'),(12009,'2006-02-14 15:16:03',2134,296,NULL,2,'2006-02-15 21:30:53'),(12010,'2005-08-17 19:17:54',1076,554,'2005-08-26 00:41:54',1,'2006-02-15 21:30:53'),(12011,'2005-08-17 19:19:44',495,313,'2005-08-23 00:56:44',2,'2006-02-15 21:30:53'),(12012,'2005-08-17 19:20:48',2698,69,'2005-08-22 16:50:48',1,'2006-02-15 21:30:53'),(12013,'2005-08-17 19:23:02',3530,586,'2005-08-23 00:31:02',2,'2006-02-15 21:30:53'),(12014,'2005-08-17 19:29:44',1778,554,'2005-08-23 20:40:44',1,'2006-02-15 21:30:53'),(12015,'2005-08-17 19:32:44',593,11,'2005-08-23 13:36:44',2,'2006-02-15 21:30:53'),(12016,'2005-08-17 19:33:24',2109,327,'2005-08-21 19:59:24',2,'2006-02-15 21:30:53'),(12017,'2005-08-17 19:33:49',344,573,'2005-08-22 01:16:49',2,'2006-02-15 21:30:53'),(12018,'2005-08-17 19:44:46',1921,319,'2005-08-26 20:24:46',1,'2006-02-15 21:30:53'),(12019,'2005-08-17 19:48:55',2566,90,'2005-08-21 18:20:55',1,'2006-02-15 21:30:53'),(12020,'2005-08-17 19:50:33',3258,72,'2005-08-25 17:54:33',1,'2006-02-15 21:30:53'),(12021,'2005-08-17 19:52:43',3977,27,'2005-08-23 21:49:43',1,'2006-02-15 21:30:53'),(12022,'2005-08-17 19:52:45',2067,461,'2005-08-18 18:26:45',2,'2006-02-15 21:30:53'),(12023,'2005-08-17 19:54:54',247,22,'2005-08-26 23:03:54',1,'2006-02-15 21:30:53'),(12024,'2005-08-17 19:57:34',2398,484,'2005-08-21 23:00:34',2,'2006-02-15 21:30:53'),(12025,'2005-08-17 19:59:06',4019,209,'2005-08-23 14:39:06',2,'2006-02-15 21:30:53'),(12026,'2005-08-17 20:00:10',1568,468,'2005-08-26 01:54:10',1,'2006-02-15 21:30:53'),(12027,'2005-08-17 20:01:12',45,285,'2005-08-26 21:08:12',2,'2006-02-15 21:30:53'),(12028,'2005-08-17 20:03:47',607,316,'2005-08-23 17:09:47',2,'2006-02-15 21:30:53'),(12029,'2005-08-17 20:07:01',3516,148,'2005-08-19 19:36:01',2,'2006-02-15 21:30:53'),(12030,'2005-08-17 20:10:48',449,434,'2005-08-19 00:32:48',1,'2006-02-15 21:30:53'),(12031,'2005-08-17 20:11:35',2793,10,'2005-08-24 23:48:35',2,'2006-02-15 21:30:53'),(12032,'2005-08-17 20:14:26',1106,141,'2005-08-26 16:01:26',1,'2006-02-15 21:30:53'),(12033,'2005-08-17 20:14:34',2731,321,'2005-08-26 00:22:34',2,'2006-02-15 21:30:53'),(12034,'2005-08-17 20:15:31',834,321,'2005-08-24 15:46:31',2,'2006-02-15 21:30:53'),(12035,'2005-08-17 20:18:06',2335,469,'2005-08-21 16:41:06',2,'2006-02-15 21:30:53'),(12036,'2005-08-17 20:19:06',3620,85,'2005-08-18 19:57:06',2,'2006-02-15 21:30:53'),(12037,'2005-08-17 20:21:35',766,356,'2005-08-22 17:16:35',2,'2006-02-15 21:30:53'),(12038,'2005-08-17 20:28:26',3794,148,'2005-08-20 23:09:26',2,'2006-02-15 21:30:53'),(12039,'2005-08-17 20:29:08',4404,563,'2005-08-23 21:20:08',2,'2006-02-15 21:30:53'),(12040,'2005-08-17 20:29:56',1288,558,'2005-08-26 22:17:56',1,'2006-02-15 21:30:53'),(12041,'2005-08-17 20:34:33',2389,295,'2005-08-19 00:47:33',1,'2006-02-15 21:30:53'),(12042,'2005-08-17 20:36:37',1772,570,'2005-08-21 15:03:37',1,'2006-02-15 21:30:53'),(12043,'2005-08-17 20:38:21',3706,592,'2005-08-22 16:52:21',2,'2006-02-15 21:30:53'),(12044,'2005-08-17 20:39:37',3377,388,'2005-08-19 18:34:37',1,'2006-02-15 21:30:53'),(12045,'2005-08-17 20:40:46',469,556,'2005-08-20 18:18:46',2,'2006-02-15 21:30:53'),(12046,'2005-08-17 20:47:46',3895,435,'2005-08-19 16:09:46',2,'2006-02-15 21:30:53'),(12047,'2005-08-17 20:48:32',3886,251,'2005-08-26 00:07:32',1,'2006-02-15 21:30:53'),(12048,'2005-08-17 20:49:24',3773,466,'2005-08-27 02:01:24',2,'2006-02-15 21:30:53'),(12049,'2005-08-17 20:53:27',2433,178,'2005-08-26 19:45:27',2,'2006-02-15 21:30:53'),(12050,'2005-08-17 20:55:25',2348,405,'2005-08-22 20:31:25',2,'2006-02-15 21:30:53'),(12051,'2005-08-17 20:56:15',4001,579,'2005-08-25 19:08:15',1,'2006-02-15 21:30:53'),(12052,'2005-08-17 20:57:02',99,536,'2005-08-25 19:04:02',1,'2006-02-15 21:30:53'),(12053,'2005-08-17 20:57:27',4448,280,'2005-08-20 19:51:27',1,'2006-02-15 21:30:53'),(12054,'2005-08-17 20:59:56',3780,53,'2005-08-23 19:57:56',1,'2006-02-15 21:30:53'),(12055,'2005-08-17 21:02:19',1481,35,'2005-08-18 15:24:19',1,'2006-02-15 21:30:53'),(12056,'2005-08-17 21:03:48',1091,460,'2005-08-21 22:42:48',2,'2006-02-15 21:30:53'),(12057,'2005-08-17 21:04:35',1878,263,'2005-08-25 00:17:35',1,'2006-02-15 21:30:53'),(12058,'2005-08-17 21:07:41',2438,540,'2005-08-26 16:07:41',1,'2006-02-15 21:30:53'),(12059,'2005-08-17 21:09:23',4111,393,'2005-08-25 23:09:23',1,'2006-02-15 21:30:53'),(12060,'2005-08-17 21:11:57',2373,127,'2005-08-21 01:42:57',1,'2006-02-15 21:30:53'),(12061,'2005-08-17 21:13:35',144,532,'2005-08-22 19:18:35',1,'2006-02-15 21:30:53'),(12062,'2005-08-17 21:24:47',1791,330,'2005-08-20 20:35:47',2,'2006-02-15 21:30:53'),(12063,'2005-08-17 21:24:48',1141,550,'2005-08-23 22:10:48',2,'2006-02-15 21:30:53'),(12064,'2006-02-14 15:16:03',298,284,NULL,1,'2006-02-15 21:30:53'),(12065,'2005-08-17 21:31:46',3644,77,'2005-08-26 02:26:46',2,'2006-02-15 21:30:53'),(12066,'2006-02-14 15:16:03',2474,267,NULL,2,'2006-02-15 21:30:53'),(12067,'2005-08-17 21:36:47',2013,514,'2005-08-22 01:10:47',2,'2006-02-15 21:30:53'),(12068,'2005-08-17 21:37:08',4327,388,'2005-08-26 00:10:08',1,'2006-02-15 21:30:53'),(12069,'2005-08-17 21:39:40',631,389,'2005-08-22 01:12:40',2,'2006-02-15 21:30:53'),(12070,'2005-08-17 21:46:47',1357,158,'2005-08-22 22:59:47',1,'2006-02-15 21:30:53'),(12071,'2005-08-17 21:49:14',1874,507,'2005-08-22 18:20:14',1,'2006-02-15 21:30:53'),(12072,'2005-08-17 21:50:25',209,61,'2005-08-25 22:36:25',2,'2006-02-15 21:30:53'),(12073,'2005-08-17 21:50:39',2939,173,'2005-08-21 02:59:39',1,'2006-02-15 21:30:53'),(12074,'2005-08-17 21:50:57',711,417,'2005-08-20 00:58:57',2,'2006-02-15 21:30:53'),(12075,'2005-08-17 21:54:55',3147,125,'2005-08-23 23:04:55',1,'2006-02-15 21:30:53'),(12076,'2005-08-17 21:58:19',4278,298,'2005-08-20 22:10:19',1,'2006-02-15 21:30:53'),(12077,'2005-08-17 21:59:14',3589,550,'2005-08-22 03:23:14',1,'2006-02-15 21:30:53'),(12078,'2005-08-17 22:00:22',684,137,'2005-08-24 02:54:22',2,'2006-02-15 21:30:53'),(12079,'2005-08-17 22:04:17',646,230,'2005-08-24 20:22:17',2,'2006-02-15 21:30:53'),(12080,'2005-08-17 22:08:04',1491,394,'2005-08-19 22:55:04',2,'2006-02-15 21:30:53'),(12081,'2005-08-17 22:10:46',620,597,'2005-08-22 22:37:46',1,'2006-02-15 21:30:53'),(12082,'2005-08-17 22:13:15',3435,521,'2005-08-24 18:30:15',1,'2006-02-15 21:30:53'),(12083,'2005-08-17 22:13:37',1985,474,'2005-08-19 19:01:37',2,'2006-02-15 21:30:53'),(12084,'2005-08-17 22:16:49',2706,60,'2005-08-24 17:42:49',2,'2006-02-15 21:30:53'),(12085,'2005-08-17 22:17:09',600,31,'2005-08-21 01:45:09',1,'2006-02-15 21:30:53'),(12086,'2005-08-17 22:20:01',3963,140,'2005-08-26 02:14:01',1,'2006-02-15 21:30:53'),(12087,'2005-08-17 22:20:12',324,144,'2005-08-20 02:11:12',2,'2006-02-15 21:30:53'),(12088,'2005-08-17 22:20:16',1754,360,'2005-08-25 23:30:16',2,'2006-02-15 21:30:53'),(12089,'2005-08-17 22:20:29',651,538,'2005-08-24 02:12:29',1,'2006-02-15 21:30:53'),(12090,'2005-08-17 22:21:43',3392,391,'2005-08-20 23:53:43',2,'2006-02-15 21:30:53'),(12091,'2005-08-17 22:22:50',2161,555,'2005-08-27 03:55:50',1,'2006-02-15 21:30:53'),(12092,'2005-08-17 22:28:15',3964,38,'2005-08-18 16:46:15',2,'2006-02-15 21:30:53'),(12093,'2005-08-17 22:28:40',216,141,'2005-08-22 02:05:40',1,'2006-02-15 21:30:53'),(12094,'2005-08-17 22:31:04',1050,130,'2005-08-23 22:45:04',1,'2006-02-15 21:30:53'),(12095,'2005-08-17 22:32:37',1089,46,'2005-08-20 04:00:37',1,'2006-02-15 21:30:53'),(12096,'2005-08-17 22:32:50',44,463,'2005-08-25 03:33:50',1,'2006-02-15 21:30:53'),(12097,'2005-08-17 22:35:24',4135,325,'2005-08-18 20:31:24',2,'2006-02-15 21:30:53'),(12098,'2005-08-17 22:38:31',534,545,'2005-08-20 01:56:31',1,'2006-02-15 21:30:53'),(12099,'2005-08-17 22:38:54',1743,195,'2005-08-18 21:29:54',2,'2006-02-15 21:30:53'),(12100,'2005-08-17 22:41:10',4365,391,'2005-08-24 21:31:10',2,'2006-02-15 21:30:53'),(12101,'2006-02-14 15:16:03',1556,479,NULL,1,'2006-02-15 21:30:53'),(12102,'2005-08-17 22:45:26',4268,392,'2005-08-24 01:47:26',2,'2006-02-15 21:30:53'),(12103,'2005-08-17 22:49:09',4363,153,'2005-08-24 21:53:09',1,'2006-02-15 21:30:53'),(12104,'2005-08-17 22:53:00',4551,16,'2005-08-23 19:49:00',1,'2006-02-15 21:30:53'),(12105,'2005-08-17 22:54:45',2848,390,'2005-08-21 00:33:45',2,'2006-02-15 21:30:53'),(12106,'2005-08-17 22:55:32',3234,465,'2005-08-19 23:55:32',2,'2006-02-15 21:30:53'),(12107,'2005-08-17 22:56:24',1060,141,'2005-08-24 19:36:24',1,'2006-02-15 21:30:53'),(12108,'2005-08-17 22:56:39',1675,207,'2005-08-26 19:37:39',1,'2006-02-15 21:30:53'),(12109,'2005-08-17 22:58:35',1423,509,'2005-08-25 19:44:35',2,'2006-02-15 21:30:53'),(12110,'2005-08-17 22:59:46',2984,511,'2005-08-23 17:51:46',1,'2006-02-15 21:30:53'),(12111,'2005-08-17 22:59:55',2905,317,'2005-08-22 19:33:55',2,'2006-02-15 21:30:53'),(12112,'2005-08-17 23:00:31',4290,576,'2005-08-25 02:05:31',1,'2006-02-15 21:30:53'),(12113,'2005-08-17 23:01:00',2707,393,'2005-08-25 03:57:00',2,'2006-02-15 21:30:53'),(12114,'2005-08-17 23:02:00',1405,65,'2005-08-26 18:02:00',1,'2006-02-15 21:30:53'),(12115,'2005-08-17 23:04:15',1228,457,'2005-08-20 22:25:15',2,'2006-02-15 21:30:53'),(12116,'2006-02-14 15:16:03',3082,560,NULL,2,'2006-02-15 21:30:53'),(12117,'2005-08-17 23:11:12',4140,303,'2005-08-22 23:56:12',1,'2006-02-15 21:30:53'),(12118,'2005-08-17 23:14:25',158,89,'2005-08-26 22:26:25',1,'2006-02-15 21:30:53'),(12119,'2005-08-17 23:16:44',4298,567,'2005-08-20 02:13:44',2,'2006-02-15 21:30:53'),(12120,'2005-08-17 23:16:46',2912,323,'2005-08-19 00:11:46',2,'2006-02-15 21:30:53'),(12121,'2005-08-17 23:20:40',3423,69,'2005-08-22 21:30:40',2,'2006-02-15 21:30:53'),(12122,'2005-08-17 23:20:45',4030,375,'2005-08-25 04:23:45',2,'2006-02-15 21:30:53'),(12123,'2005-08-17 23:22:18',361,497,'2005-08-19 23:36:18',2,'2006-02-15 21:30:53'),(12124,'2005-08-17 23:22:46',2036,22,'2005-08-21 01:40:46',1,'2006-02-15 21:30:53'),(12125,'2005-08-17 23:24:25',136,573,'2005-08-25 03:08:25',2,'2006-02-15 21:30:53'),(12126,'2005-08-17 23:25:21',2304,302,'2005-08-23 21:51:21',1,'2006-02-15 21:30:53'),(12127,'2006-02-14 15:16:03',4218,582,NULL,2,'2006-02-15 21:30:53'),(12128,'2005-08-17 23:31:09',2252,415,'2005-08-24 05:07:09',2,'2006-02-15 21:30:53'),(12129,'2005-08-17 23:31:25',891,146,'2005-08-26 19:10:25',2,'2006-02-15 21:30:53'),(12130,'2006-02-14 15:16:03',1358,516,NULL,2,'2006-02-15 21:30:53'),(12131,'2005-08-17 23:34:16',3380,21,'2005-08-26 01:18:16',1,'2006-02-15 21:30:53'),(12132,'2005-08-17 23:37:03',2600,403,'2005-08-22 04:53:03',2,'2006-02-15 21:30:53'),(12133,'2005-08-17 23:47:16',1958,132,'2005-08-19 03:46:16',2,'2006-02-15 21:30:53'),(12134,'2005-08-17 23:49:43',2682,288,'2005-08-21 21:00:43',1,'2006-02-15 21:30:53'),(12135,'2005-08-17 23:50:24',1019,381,'2005-08-23 18:01:24',2,'2006-02-15 21:30:53'),(12136,'2005-08-17 23:51:30',3944,527,'2005-08-23 01:35:30',1,'2006-02-15 21:30:53'),(12137,'2005-08-17 23:52:26',3632,109,'2005-08-27 00:19:26',1,'2006-02-15 21:30:53'),(12138,'2005-08-17 23:55:54',388,317,'2005-08-26 23:32:54',1,'2006-02-15 21:30:53'),(12139,'2005-08-17 23:57:13',1537,342,'2005-08-24 19:13:13',1,'2006-02-15 21:30:53'),(12140,'2005-08-17 23:57:55',322,408,'2005-08-21 20:09:55',2,'2006-02-15 21:30:53'),(12141,'2006-02-14 15:16:03',731,101,NULL,1,'2006-02-15 21:30:53'),(12142,'2005-08-18 00:04:12',3748,373,'2005-08-24 01:24:12',2,'2006-02-15 21:30:53'),(12143,'2005-08-18 00:06:26',2876,117,'2005-08-24 02:45:26',2,'2006-02-15 21:30:53'),(12144,'2006-02-14 15:16:03',512,587,NULL,1,'2006-02-15 21:30:53'),(12145,'2005-08-18 00:10:04',3482,5,'2005-08-26 00:51:04',1,'2006-02-15 21:30:53'),(12146,'2005-08-18 00:10:04',3833,434,'2005-08-25 19:18:04',2,'2006-02-15 21:30:53'),(12147,'2005-08-18 00:10:20',705,41,'2005-08-23 20:36:20',2,'2006-02-15 21:30:53'),(12148,'2005-08-18 00:13:15',2409,254,'2005-08-20 01:27:15',2,'2006-02-15 21:30:53'),(12149,'2005-08-18 00:13:51',3696,277,'2005-08-26 19:47:51',1,'2006-02-15 21:30:53'),(12150,'2005-08-18 00:13:55',3781,555,'2005-08-20 23:35:55',2,'2006-02-15 21:30:53'),(12151,'2005-08-18 00:14:03',1976,4,'2005-08-18 23:52:03',2,'2006-02-15 21:30:53'),(12152,'2005-08-18 00:21:35',2797,367,'2005-08-22 02:51:35',1,'2006-02-15 21:30:53'),(12153,'2005-08-18 00:22:30',3929,387,'2005-08-23 04:13:30',2,'2006-02-15 21:30:53'),(12154,'2005-08-18 00:23:56',2491,163,'2005-08-21 00:31:56',2,'2006-02-15 21:30:53'),(12155,'2005-08-18 00:24:30',2065,315,'2005-08-18 19:12:30',2,'2006-02-15 21:30:53'),(12156,'2005-08-18 00:27:33',3270,212,'2005-08-26 01:43:33',1,'2006-02-15 21:30:53'),(12157,'2005-08-18 00:33:45',2311,569,'2005-08-22 19:33:45',1,'2006-02-15 21:30:53'),(12158,'2005-08-18 00:34:20',4121,289,'2005-08-22 20:10:20',2,'2006-02-15 21:30:53'),(12159,'2005-08-18 00:36:09',2243,106,'2005-08-27 06:31:09',1,'2006-02-15 21:30:53'),(12160,'2005-08-18 00:37:59',1328,481,'2005-08-19 20:51:59',1,'2006-02-15 21:30:53'),(12161,'2005-08-18 00:41:46',2420,444,'2005-08-26 22:59:46',2,'2006-02-15 21:30:53'),(12162,'2005-08-18 00:44:30',2697,284,'2005-08-25 03:34:30',1,'2006-02-15 21:30:53'),(12163,'2005-08-18 00:46:01',1349,455,'2005-08-22 06:16:01',1,'2006-02-15 21:30:53'),(12164,'2005-08-18 00:46:38',3849,587,'2005-08-19 04:38:38',2,'2006-02-15 21:30:53'),(12165,'2005-08-18 00:53:37',4215,24,'2005-08-27 00:09:37',2,'2006-02-15 21:30:53'),(12166,'2005-08-18 00:57:06',3627,184,'2005-08-26 03:13:06',2,'2006-02-15 21:30:53'),(12167,'2005-08-18 01:00:02',3085,338,'2005-08-21 00:04:02',2,'2006-02-15 21:30:53'),(12168,'2005-08-18 01:03:52',2859,535,'2005-08-18 20:19:52',1,'2006-02-15 21:30:53'),(12169,'2005-08-18 01:05:54',2281,323,'2005-08-24 02:16:54',2,'2006-02-15 21:30:53'),(12170,'2005-08-18 01:06:10',1125,289,'2005-08-25 02:40:10',2,'2006-02-15 21:30:53'),(12171,'2005-08-18 01:06:13',454,457,'2005-08-22 19:39:13',2,'2006-02-15 21:30:53'),(12172,'2005-08-18 01:07:00',1162,226,'2005-08-22 21:01:00',2,'2006-02-15 21:30:53'),(12173,'2005-08-18 01:08:34',2830,41,'2005-08-24 20:52:34',1,'2006-02-15 21:30:53'),(12174,'2005-08-18 01:08:53',1458,101,'2005-08-20 03:28:53',1,'2006-02-15 21:30:53'),(12175,'2005-08-18 01:10:17',4558,328,'2005-08-19 05:25:17',2,'2006-02-15 21:30:53'),(12176,'2005-08-18 01:10:33',3873,255,'2005-08-24 02:45:33',2,'2006-02-15 21:30:53'),(12177,'2005-08-18 01:15:47',522,470,'2005-08-24 23:23:47',2,'2006-02-15 21:30:53'),(12178,'2005-08-18 01:17:32',1152,276,'2005-08-25 19:32:32',1,'2006-02-15 21:30:53'),(12179,'2005-08-18 01:21:21',1499,222,'2005-08-19 00:59:21',1,'2006-02-15 21:30:53'),(12180,'2005-08-18 01:28:15',2276,20,'2005-08-20 20:52:15',2,'2006-02-15 21:30:53'),(12181,'2005-08-18 01:28:18',532,81,'2005-08-23 21:17:18',2,'2006-02-15 21:30:53'),(12182,'2005-08-18 01:30:19',296,555,'2005-08-21 05:52:19',1,'2006-02-15 21:30:53'),(12183,'2005-08-18 01:34:13',3153,344,'2005-08-24 04:38:13',1,'2006-02-15 21:30:53'),(12184,'2005-08-18 01:36:00',1723,51,'2005-08-21 01:59:00',1,'2006-02-15 21:30:53'),(12185,'2005-08-18 01:40:14',1558,588,'2005-08-25 05:04:14',1,'2006-02-15 21:30:53'),(12186,'2005-08-18 01:43:36',1342,312,'2005-08-23 07:13:36',1,'2006-02-15 21:30:53'),(12187,'2005-08-18 01:45:50',3360,38,'2005-08-22 20:12:50',1,'2006-02-15 21:30:53'),(12188,'2005-08-18 01:51:43',2989,456,'2005-08-18 22:23:43',1,'2006-02-15 21:30:53'),(12189,'2005-08-18 01:51:44',1764,363,'2005-08-26 01:01:44',1,'2006-02-15 21:30:53'),(12190,'2005-08-18 01:54:44',2464,28,'2005-08-27 04:32:44',1,'2006-02-15 21:30:53'),(12191,'2005-08-18 01:57:11',2667,316,'2005-08-22 22:53:11',2,'2006-02-15 21:30:53'),(12192,'2005-08-18 02:01:40',3450,270,'2005-08-21 05:45:40',1,'2006-02-15 21:30:53'),(12193,'2005-08-18 02:03:59',1086,290,'2005-08-25 05:32:59',2,'2006-02-15 21:30:53'),(12194,'2005-08-18 02:04:47',292,558,'2005-08-25 20:45:47',2,'2006-02-15 21:30:53'),(12195,'2005-08-18 02:07:49',943,347,'2005-08-19 23:54:49',2,'2006-02-15 21:30:53'),(12196,'2005-08-18 02:08:48',4302,111,'2005-08-26 00:39:48',1,'2006-02-15 21:30:53'),(12197,'2005-08-18 02:08:58',3687,564,'2005-08-26 21:54:58',2,'2006-02-15 21:30:53'),(12198,'2005-08-18 02:09:20',1628,86,'2005-08-21 21:28:20',2,'2006-02-15 21:30:53'),(12199,'2005-08-18 02:09:23',424,96,'2005-08-22 20:33:23',1,'2006-02-15 21:30:53'),(12200,'2005-08-18 02:12:33',840,52,'2005-08-18 20:47:33',2,'2006-02-15 21:30:53'),(12201,'2005-08-18 02:14:06',3676,540,'2005-08-23 04:44:06',1,'2006-02-15 21:30:53'),(12202,'2005-08-18 02:14:08',672,563,'2005-08-24 04:35:08',1,'2006-02-15 21:30:53'),(12203,'2005-08-18 02:18:52',4228,591,'2005-08-22 21:01:52',1,'2006-02-15 21:30:53'),(12204,'2005-08-18 02:20:35',304,575,'2005-08-26 01:27:35',2,'2006-02-15 21:30:53'),(12205,'2005-08-18 02:21:08',774,437,'2005-08-27 00:08:08',2,'2006-02-15 21:30:53'),(12206,'2005-08-18 02:22:20',3275,254,'2005-08-23 05:36:20',1,'2006-02-15 21:30:53'),(12207,'2005-08-18 02:24:07',3745,265,'2005-08-22 07:53:07',1,'2006-02-15 21:30:53'),(12208,'2005-08-18 02:25:25',2039,551,'2005-08-20 04:53:25',2,'2006-02-15 21:30:53'),(12209,'2005-08-18 02:27:20',279,243,'2005-08-21 00:41:20',2,'2006-02-15 21:30:53'),(12210,'2005-08-18 02:27:29',3035,217,'2005-08-20 23:32:29',2,'2006-02-15 21:30:53'),(12211,'2005-08-18 02:31:18',1484,19,'2005-08-26 02:36:18',1,'2006-02-15 21:30:53'),(12212,'2005-08-18 02:33:29',3898,449,'2005-08-25 07:10:29',2,'2006-02-15 21:30:53'),(12213,'2005-08-18 02:33:55',4058,157,'2005-08-24 03:14:55',1,'2006-02-15 21:30:53'),(12214,'2005-08-18 02:34:22',2094,231,'2005-08-21 07:48:22',2,'2006-02-15 21:30:53'),(12215,'2005-08-18 02:35:39',4095,47,'2005-08-24 00:36:39',1,'2006-02-15 21:30:53'),(12216,'2005-08-18 02:37:07',4139,131,'2005-08-19 02:09:07',2,'2006-02-15 21:30:53'),(12217,'2005-08-18 02:44:44',2556,105,'2005-08-24 03:27:44',1,'2006-02-15 21:30:53'),(12218,'2005-08-18 02:48:14',1933,70,'2005-08-21 01:52:14',2,'2006-02-15 21:30:53'),(12219,'2005-08-18 02:49:54',2249,271,'2005-08-23 07:52:54',1,'2006-02-15 21:30:53'),(12220,'2005-08-18 02:50:02',982,530,'2005-08-22 00:20:02',1,'2006-02-15 21:30:53'),(12221,'2005-08-18 02:50:51',2488,98,'2005-08-27 06:22:51',2,'2006-02-15 21:30:53'),(12222,'2006-02-14 15:16:03',3949,22,NULL,1,'2006-02-15 21:30:53'),(12223,'2005-08-18 02:58:40',4142,397,'2005-08-23 23:30:40',2,'2006-02-15 21:30:53'),(12224,'2005-08-18 02:59:09',1781,372,'2005-08-19 06:22:09',1,'2006-02-15 21:30:53'),(12225,'2005-08-18 03:00:11',1876,306,'2005-08-24 05:01:11',1,'2006-02-15 21:30:53'),(12226,'2005-08-18 03:00:48',682,234,'2005-08-25 00:43:48',2,'2006-02-15 21:30:53'),(12227,'2005-08-18 03:04:28',3671,591,'2005-08-21 08:52:28',2,'2006-02-15 21:30:53'),(12228,'2005-08-18 03:08:10',2772,9,'2005-08-20 02:48:10',1,'2006-02-15 21:30:53'),(12229,'2005-08-18 03:08:23',1123,382,'2005-08-22 03:42:23',1,'2006-02-15 21:30:53'),(12230,'2005-08-18 03:11:04',1910,231,'2005-08-27 04:06:04',1,'2006-02-15 21:30:53'),(12231,'2005-08-18 03:11:44',1115,231,'2005-08-24 03:26:44',1,'2006-02-15 21:30:53'),(12232,'2005-08-18 03:14:14',2399,87,'2005-08-19 05:44:14',2,'2006-02-15 21:30:53'),(12233,'2005-08-18 03:16:54',174,535,'2005-08-22 04:48:54',2,'2006-02-15 21:30:53'),(12234,'2005-08-18 03:17:33',3823,352,'2005-08-25 04:44:33',2,'2006-02-15 21:30:53'),(12235,'2005-08-18 03:17:50',957,595,'2005-08-20 02:49:50',1,'2006-02-15 21:30:53'),(12236,'2005-08-18 03:19:29',1190,474,'2005-08-23 07:39:29',2,'2006-02-15 21:30:53'),(12237,'2005-08-18 03:24:38',4422,381,'2005-08-25 09:05:38',1,'2006-02-15 21:30:53'),(12238,'2005-08-18 03:25:08',4043,46,'2005-08-20 02:41:08',2,'2006-02-15 21:30:53'),(12239,'2005-08-18 03:26:42',1948,75,'2005-08-24 23:48:42',1,'2006-02-15 21:30:53'),(12240,'2005-08-18 03:27:11',1168,30,'2005-08-26 04:34:11',2,'2006-02-15 21:30:53'),(12241,'2005-08-18 03:33:17',1261,248,'2005-08-21 03:13:17',2,'2006-02-15 21:30:53'),(12242,'2005-08-18 03:37:31',2095,121,'2005-08-25 06:50:31',1,'2006-02-15 21:30:53'),(12243,'2005-08-18 03:38:54',1829,354,'2005-08-27 06:56:54',2,'2006-02-15 21:30:53'),(12244,'2005-08-18 03:39:11',4441,362,'2005-08-21 02:57:11',2,'2006-02-15 21:30:53'),(12245,'2005-08-18 03:46:40',2960,576,'2005-08-24 22:27:40',2,'2006-02-15 21:30:53'),(12246,'2005-08-18 03:48:41',3199,258,'2005-08-25 05:12:41',1,'2006-02-15 21:30:53'),(12247,'2005-08-18 03:51:51',2264,254,'2005-08-24 05:36:51',2,'2006-02-15 21:30:53'),(12248,'2005-08-18 03:53:18',2120,562,'2005-08-22 04:53:18',1,'2006-02-15 21:30:53'),(12249,'2005-08-18 03:53:34',3586,135,'2005-08-21 01:14:34',1,'2006-02-15 21:30:53'),(12250,'2005-08-18 03:57:29',921,1,'2005-08-22 23:05:29',1,'2006-02-15 21:30:53'),(12251,'2005-08-18 03:59:02',3044,276,'2005-08-19 02:38:02',1,'2006-02-15 21:30:53'),(12252,'2005-08-18 03:59:51',127,350,'2005-08-25 08:54:51',2,'2006-02-15 21:30:53'),(12253,'2005-08-18 04:00:50',566,446,'2005-08-19 04:43:50',1,'2006-02-15 21:30:53'),(12254,'2005-08-18 04:05:29',2858,6,'2005-08-23 04:17:29',1,'2006-02-15 21:30:53'),(12255,'2005-08-18 04:07:20',2100,266,'2005-08-21 22:19:20',1,'2006-02-15 21:30:53'),(12256,'2005-08-18 04:09:39',2975,572,'2005-08-22 01:53:39',2,'2006-02-15 21:30:53'),(12257,'2005-08-18 04:11:03',269,87,'2005-08-25 01:20:03',2,'2006-02-15 21:30:53'),(12258,'2005-08-18 04:11:13',2861,83,'2005-08-21 23:40:13',2,'2006-02-15 21:30:53'),(12259,'2005-08-18 04:14:35',2904,429,'2005-08-18 22:30:35',2,'2006-02-15 21:30:53'),(12260,'2005-08-18 04:15:43',1352,150,'2005-08-26 23:31:43',1,'2006-02-15 21:30:53'),(12261,'2005-08-18 04:16:06',4076,485,'2005-08-27 08:04:06',1,'2006-02-15 21:30:53'),(12262,'2005-08-18 04:16:15',591,125,'2005-08-20 09:16:15',1,'2006-02-15 21:30:53'),(12263,'2005-08-18 04:16:18',4053,131,'2005-08-21 07:22:18',1,'2006-02-15 21:30:53'),(12264,'2005-08-18 04:17:33',3073,87,'2005-08-26 08:07:33',1,'2006-02-15 21:30:53'),(12265,'2005-08-18 04:22:01',537,247,'2005-08-20 03:22:01',1,'2006-02-15 21:30:53'),(12266,'2005-08-18 04:22:31',2192,467,'2005-08-19 04:25:31',2,'2006-02-15 21:30:53'),(12267,'2005-08-18 04:24:30',652,388,'2005-08-26 03:01:30',2,'2006-02-15 21:30:53'),(12268,'2005-08-18 04:26:54',93,39,'2005-08-23 06:40:54',2,'2006-02-15 21:30:53'),(12269,'2005-08-18 04:27:54',724,573,'2005-08-25 07:03:54',1,'2006-02-15 21:30:53'),(12270,'2005-08-18 04:32:05',2456,190,'2005-08-21 01:37:05',2,'2006-02-15 21:30:53'),(12271,'2005-08-18 04:33:11',3866,471,'2005-08-20 23:10:11',1,'2006-02-15 21:30:53'),(12272,'2005-08-18 04:39:10',1964,15,'2005-08-24 09:41:10',1,'2006-02-15 21:30:53'),(12273,'2005-08-18 04:40:50',3539,431,'2005-08-25 01:44:50',2,'2006-02-15 21:30:53'),(12274,'2005-08-18 04:41:47',265,47,'2005-08-27 07:00:47',1,'2006-02-15 21:30:53'),(12275,'2005-08-18 04:42:02',1474,507,'2005-08-25 00:50:02',1,'2006-02-15 21:30:53'),(12276,'2005-08-18 04:43:22',4491,397,'2005-08-22 01:49:22',2,'2006-02-15 21:30:53'),(12277,'2006-02-14 15:16:03',407,33,NULL,2,'2006-02-15 21:30:53'),(12278,'2005-08-18 04:46:45',3205,294,'2005-08-24 08:59:45',2,'2006-02-15 21:30:53'),(12279,'2005-08-18 04:47:30',4159,421,'2005-08-19 09:47:30',2,'2006-02-15 21:30:53'),(12280,'2005-08-18 04:49:27',4032,46,'2005-08-21 03:39:27',2,'2006-02-15 21:30:53'),(12281,'2005-08-18 04:50:32',4576,417,'2005-08-21 00:14:32',2,'2006-02-15 21:30:53'),(12282,'2005-08-18 04:54:20',3623,173,'2005-08-23 05:28:20',2,'2006-02-15 21:30:53'),(12283,'2005-08-18 04:54:25',574,240,'2005-08-23 04:02:25',1,'2006-02-15 21:30:53'),(12284,'2005-08-18 04:55:49',3162,147,'2005-08-22 08:45:49',2,'2006-02-15 21:30:53'),(12285,'2005-08-18 04:56:43',3531,215,'2005-08-19 23:32:43',2,'2006-02-15 21:30:53'),(12286,'2005-08-18 04:57:59',3729,34,'2005-08-18 23:20:59',2,'2006-02-15 21:30:53'),(12287,'2005-08-18 04:58:06',2238,136,'2005-08-24 00:06:06',1,'2006-02-15 21:30:53'),(12288,'2005-08-18 05:01:20',4401,523,'2005-08-25 09:51:20',2,'2006-02-15 21:30:53'),(12289,'2005-08-18 05:05:28',443,575,'2005-08-26 09:02:28',1,'2006-02-15 21:30:53'),(12290,'2005-08-18 05:08:03',4100,283,'2005-08-23 08:10:03',2,'2006-02-15 21:30:53'),(12291,'2005-08-18 05:08:37',4270,73,'2005-08-23 09:01:37',1,'2006-02-15 21:30:53'),(12292,'2005-08-18 05:08:54',1417,58,'2005-08-27 02:51:54',1,'2006-02-15 21:30:53'),(12293,'2005-08-18 05:13:36',614,514,'2005-08-25 04:00:36',2,'2006-02-15 21:30:53'),(12294,'2005-08-18 05:14:44',2479,4,'2005-08-27 01:32:44',2,'2006-02-15 21:30:53'),(12295,'2005-08-18 05:15:46',1651,532,'2005-08-26 02:23:46',2,'2006-02-15 21:30:53'),(12296,'2005-08-18 05:16:28',2091,258,'2005-08-22 10:32:28',1,'2006-02-15 21:30:53'),(12297,'2005-08-18 05:19:57',903,436,'2005-08-21 00:53:57',1,'2006-02-15 21:30:53'),(12298,'2005-08-18 05:30:31',904,46,'2005-08-27 07:33:31',1,'2006-02-15 21:30:53'),(12299,'2005-08-18 05:32:32',892,176,'2005-08-22 08:14:32',2,'2006-02-15 21:30:53'),(12300,'2005-08-18 05:36:14',3213,540,'2005-08-25 00:20:14',2,'2006-02-15 21:30:53'),(12301,'2005-08-18 05:36:20',2293,317,'2005-08-23 03:15:20',1,'2006-02-15 21:30:53'),(12302,'2005-08-18 05:41:39',765,514,'2005-08-22 06:02:39',1,'2006-02-15 21:30:53'),(12303,'2005-08-18 05:43:22',1604,245,'2005-08-27 08:54:22',2,'2006-02-15 21:30:53'),(12304,'2005-08-18 05:44:29',1381,228,'2005-08-24 04:31:29',1,'2006-02-15 21:30:53'),(12305,'2005-08-18 05:46:29',4463,534,'2005-08-22 11:14:29',2,'2006-02-15 21:30:53'),(12306,'2005-08-18 05:47:55',3853,541,'2005-08-21 01:56:55',1,'2006-02-15 21:30:53'),(12307,'2005-08-18 05:48:23',2679,187,'2005-08-26 02:32:23',1,'2006-02-15 21:30:53'),(12308,'2005-08-18 05:48:53',2877,569,'2005-08-22 09:03:53',1,'2006-02-15 21:30:53'),(12309,'2005-08-18 05:58:40',762,9,'2005-08-20 02:20:40',2,'2006-02-15 21:30:53'),(12310,'2005-08-18 06:02:34',3814,385,'2005-08-24 01:08:34',2,'2006-02-15 21:30:53'),(12311,'2005-08-18 06:07:00',1650,211,'2005-08-21 07:54:00',2,'2006-02-15 21:30:53'),(12312,'2005-08-18 06:07:26',80,185,'2005-08-21 02:07:26',2,'2006-02-15 21:30:53'),(12313,'2005-08-18 06:07:31',2053,180,'2005-08-27 00:20:31',1,'2006-02-15 21:30:53'),(12314,'2005-08-18 06:10:02',2204,455,'2005-08-25 02:48:02',1,'2006-02-15 21:30:53'),(12315,'2005-08-18 06:15:06',2012,579,'2005-08-24 07:45:06',2,'2006-02-15 21:30:53'),(12316,'2005-08-18 06:16:09',4325,94,'2005-08-27 05:54:09',2,'2006-02-15 21:30:53'),(12317,'2005-08-18 06:17:06',90,510,'2005-08-22 08:56:06',1,'2006-02-15 21:30:53'),(12318,'2005-08-18 06:21:56',3694,332,'2005-08-27 06:07:56',1,'2006-02-15 21:30:53'),(12319,'2005-08-18 06:26:45',999,368,'2005-08-23 01:35:45',1,'2006-02-15 21:30:53'),(12320,'2005-08-18 06:26:51',3248,267,'2005-08-20 04:00:51',1,'2006-02-15 21:30:53'),(12321,'2005-08-18 06:27:05',516,274,'2005-08-24 02:26:05',1,'2006-02-15 21:30:53'),(12322,'2005-08-18 06:35:28',4235,365,'2005-08-23 07:34:28',1,'2006-02-15 21:30:53'),(12323,'2005-08-18 06:36:22',4107,336,'2005-08-26 11:36:22',1,'2006-02-15 21:30:53'),(12324,'2005-08-18 06:38:20',2436,221,'2005-08-20 02:28:20',2,'2006-02-15 21:30:53'),(12325,'2005-08-18 06:41:30',1844,404,'2005-08-26 02:49:30',1,'2006-02-15 21:30:53'),(12326,'2005-08-18 06:41:59',1865,114,'2005-08-19 10:16:59',2,'2006-02-15 21:30:53'),(12327,'2005-08-18 06:43:22',2425,261,'2005-08-25 10:50:22',2,'2006-02-15 21:30:53'),(12328,'2005-08-18 06:43:56',1355,77,'2005-08-23 10:19:56',2,'2006-02-15 21:30:53'),(12329,'2005-08-18 06:44:30',3127,397,'2005-08-25 04:05:30',1,'2006-02-15 21:30:53'),(12330,'2005-08-18 06:46:33',889,587,'2005-08-26 11:35:33',2,'2006-02-15 21:30:53'),(12331,'2005-08-18 06:47:19',4565,483,'2005-08-25 05:51:19',2,'2006-02-15 21:30:53'),(12332,'2005-08-18 06:51:05',627,235,'2005-08-20 04:28:05',2,'2006-02-15 21:30:53'),(12333,'2005-08-18 06:51:39',4370,18,'2005-08-21 01:44:39',2,'2006-02-15 21:30:53'),(12334,'2005-08-18 06:52:36',2629,160,'2005-08-25 12:06:36',1,'2006-02-15 21:30:53'),(12335,'2005-08-18 06:59:15',2776,150,'2005-08-20 06:47:15',1,'2006-02-15 21:30:53'),(12336,'2005-08-18 06:59:41',2484,75,'2005-08-23 01:36:41',1,'2006-02-15 21:30:53'),(12337,'2005-08-18 07:02:24',4221,117,'2005-08-20 10:11:24',1,'2006-02-15 21:30:53'),(12338,'2005-08-18 07:04:24',274,408,'2005-08-19 08:36:24',2,'2006-02-15 21:30:53'),(12339,'2005-08-18 07:05:06',1600,370,'2005-08-19 02:27:06',2,'2006-02-15 21:30:53'),(12340,'2005-08-18 07:07:01',3561,239,'2005-08-20 05:06:01',1,'2006-02-15 21:30:53'),(12341,'2005-08-18 07:09:27',130,154,'2005-08-21 03:44:27',1,'2006-02-15 21:30:53'),(12342,'2005-08-18 07:12:46',1408,63,'2005-08-21 07:44:46',1,'2006-02-15 21:30:53'),(12343,'2005-08-18 07:15:13',448,507,'2005-08-27 11:07:13',1,'2006-02-15 21:30:53'),(12344,'2005-08-18 07:15:19',3675,269,'2005-08-24 04:58:19',2,'2006-02-15 21:30:53'),(12345,'2005-08-18 07:16:58',2359,44,'2005-08-25 05:50:58',1,'2006-02-15 21:30:53'),(12346,'2005-08-18 07:17:55',1200,265,'2005-08-21 11:35:55',2,'2006-02-15 21:30:53'),(12347,'2005-08-18 07:18:10',1788,454,'2005-08-19 05:49:10',1,'2006-02-15 21:30:53'),(12348,'2005-08-18 07:21:47',434,186,'2005-08-25 04:41:47',2,'2006-02-15 21:30:53'),(12349,'2005-08-18 07:23:42',4191,545,'2005-08-19 04:25:42',1,'2006-02-15 21:30:53'),(12350,'2005-08-18 07:29:46',1333,172,'2005-08-21 12:50:46',1,'2006-02-15 21:30:53'),(12351,'2005-08-18 07:32:12',2299,95,'2005-08-24 04:29:12',2,'2006-02-15 21:30:53'),(12352,'2006-02-14 15:16:03',643,155,NULL,1,'2006-02-15 21:30:53'),(12353,'2005-08-18 07:33:08',1594,141,'2005-08-21 03:42:08',2,'2006-02-15 21:30:53'),(12354,'2005-08-18 07:34:07',2913,499,'2005-08-26 05:56:07',1,'2006-02-15 21:30:53'),(12355,'2005-08-18 07:36:23',4112,452,'2005-08-20 08:59:23',1,'2006-02-15 21:30:53'),(12356,'2005-08-18 07:37:05',493,529,'2005-08-24 10:49:05',1,'2006-02-15 21:30:53'),(12357,'2005-08-18 07:40:52',166,19,'2005-08-22 02:51:52',1,'2006-02-15 21:30:53'),(12358,'2005-08-18 07:41:43',504,16,'2005-08-20 03:46:43',1,'2006-02-15 21:30:53'),(12359,'2005-08-18 07:44:05',4172,28,'2005-08-19 02:26:05',1,'2006-02-15 21:30:53'),(12360,'2005-08-18 07:46:35',929,123,'2005-08-26 12:01:35',1,'2006-02-15 21:30:53'),(12361,'2005-08-18 07:47:31',1418,250,'2005-08-22 12:08:31',2,'2006-02-15 21:30:53'),(12362,'2005-08-18 07:48:05',3131,367,'2005-08-20 05:16:05',2,'2006-02-15 21:30:53'),(12363,'2005-08-18 07:52:49',3447,181,'2005-08-26 03:20:49',2,'2006-02-15 21:30:53'),(12364,'2005-08-18 07:55:09',3398,84,'2005-08-19 05:29:09',2,'2006-02-15 21:30:53'),(12365,'2005-08-18 07:55:09',4350,303,'2005-08-24 05:42:09',1,'2006-02-15 21:30:53'),(12366,'2005-08-18 07:55:14',3799,115,'2005-08-22 06:12:14',1,'2006-02-15 21:30:53'),(12367,'2005-08-18 07:57:14',1822,7,'2005-08-27 07:07:14',2,'2006-02-15 21:30:53'),(12368,'2005-08-18 07:57:38',3777,392,'2005-08-25 05:49:38',2,'2006-02-15 21:30:53'),(12369,'2005-08-18 07:57:43',484,337,'2005-08-26 09:36:43',1,'2006-02-15 21:30:53'),(12370,'2005-08-18 07:57:47',3343,503,'2005-08-22 11:32:47',1,'2006-02-15 21:30:53'),(12371,'2005-08-18 08:02:46',622,451,'2005-08-19 02:50:46',2,'2006-02-15 21:30:53'),(12372,'2005-08-18 08:04:35',2982,131,'2005-08-27 08:13:35',2,'2006-02-15 21:30:53'),(12373,'2005-08-18 08:07:25',777,367,'2005-08-27 03:41:25',1,'2006-02-15 21:30:53'),(12374,'2005-08-18 08:07:45',939,74,'2005-08-26 10:42:45',2,'2006-02-15 21:30:53'),(12375,'2005-08-18 08:20:08',3508,365,'2005-08-21 08:50:08',2,'2006-02-15 21:30:53'),(12376,'2005-08-18 08:20:29',852,116,'2005-08-20 13:20:29',1,'2006-02-15 21:30:53'),(12377,'2005-08-18 08:26:05',4564,31,'2005-08-23 02:51:05',2,'2006-02-15 21:30:53'),(12378,'2005-08-18 08:26:13',4418,266,'2005-08-19 07:21:13',1,'2006-02-15 21:30:53'),(12379,'2005-08-18 08:26:48',2879,99,'2005-08-19 10:08:48',2,'2006-02-15 21:30:53'),(12380,'2005-08-18 08:27:28',55,215,'2005-08-25 02:58:28',2,'2006-02-15 21:30:53'),(12381,'2005-08-18 08:31:43',3651,190,'2005-08-23 12:24:43',2,'2006-02-15 21:30:53'); +INSERT INTO rental VALUES (12382,'2005-08-18 08:32:33',3049,566,'2005-08-26 03:45:33',2,'2006-02-15 21:30:53'),(12383,'2005-08-18 08:36:03',1641,295,'2005-08-23 03:30:03',2,'2006-02-15 21:30:53'),(12384,'2005-08-18 08:36:58',2557,193,'2005-08-23 05:08:58',1,'2006-02-15 21:30:53'),(12385,'2005-08-18 08:39:33',3143,146,'2005-08-21 14:22:33',1,'2006-02-15 21:30:53'),(12386,'2005-08-18 08:45:57',3303,199,'2005-08-24 04:50:57',2,'2006-02-15 21:30:53'),(12387,'2005-08-18 08:46:24',3604,530,'2005-08-21 02:56:24',2,'2006-02-15 21:30:53'),(12388,'2005-08-18 08:48:09',4016,555,'2005-08-26 09:05:09',2,'2006-02-15 21:30:53'),(12389,'2005-08-18 08:48:36',1891,394,'2005-08-22 08:59:36',2,'2006-02-15 21:30:53'),(12390,'2005-08-18 08:51:42',3603,377,'2005-08-23 13:06:42',1,'2006-02-15 21:30:53'),(12391,'2005-08-18 08:52:53',1507,307,'2005-08-22 12:15:53',2,'2006-02-15 21:30:53'),(12392,'2005-08-18 08:57:58',2695,113,'2005-08-25 05:20:58',2,'2006-02-15 21:30:53'),(12393,'2005-08-18 09:02:41',2435,396,'2005-08-26 12:47:41',1,'2006-02-15 21:30:53'),(12394,'2005-08-18 09:05:15',3605,330,'2005-08-23 11:10:15',1,'2006-02-15 21:30:53'),(12395,'2005-08-18 09:06:30',2020,541,'2005-08-21 12:09:30',2,'2006-02-15 21:30:53'),(12396,'2005-08-18 09:11:23',3624,40,'2005-08-26 05:35:23',2,'2006-02-15 21:30:53'),(12397,'2005-08-18 09:12:52',1872,371,'2005-08-27 10:44:52',2,'2006-02-15 21:30:53'),(12398,'2005-08-18 09:13:24',4247,321,'2005-08-27 14:58:24',1,'2006-02-15 21:30:53'),(12399,'2005-08-18 09:13:42',3950,347,'2005-08-27 11:44:42',1,'2006-02-15 21:30:53'),(12400,'2005-08-18 09:19:12',1767,10,'2005-08-26 06:52:12',1,'2006-02-15 21:30:53'),(12401,'2005-08-18 09:20:51',4314,479,'2005-08-21 05:50:51',2,'2006-02-15 21:30:53'),(12402,'2005-08-18 09:27:34',385,123,'2005-08-25 13:10:34',2,'2006-02-15 21:30:53'),(12403,'2005-08-18 09:31:05',2124,440,'2005-08-23 09:54:05',2,'2006-02-15 21:30:53'),(12404,'2005-08-18 09:36:34',1097,342,'2005-08-23 10:12:34',2,'2006-02-15 21:30:53'),(12405,'2005-08-18 09:37:30',228,266,'2005-08-27 13:11:30',2,'2006-02-15 21:30:53'),(12406,'2005-08-18 09:38:02',4368,510,'2005-08-22 12:56:02',1,'2006-02-15 21:30:53'),(12407,'2005-08-18 09:39:26',391,220,'2005-08-24 05:19:26',2,'2006-02-15 21:30:53'),(12408,'2005-08-18 09:40:38',2360,143,'2005-08-19 04:45:38',1,'2006-02-15 21:30:53'),(12409,'2005-08-18 09:43:58',2568,64,'2005-08-19 15:02:58',2,'2006-02-15 21:30:53'),(12410,'2005-08-18 09:45:33',1904,210,'2005-08-27 08:50:33',1,'2006-02-15 21:30:53'),(12411,'2005-08-18 09:47:57',1234,181,'2005-08-21 05:54:57',2,'2006-02-15 21:30:53'),(12412,'2005-08-18 09:49:52',1578,75,'2005-08-23 12:32:52',2,'2006-02-15 21:30:53'),(12413,'2005-08-18 09:50:34',3466,366,'2005-08-23 05:57:34',2,'2006-02-15 21:30:53'),(12414,'2005-08-18 09:50:40',4454,32,'2005-08-26 06:45:40',2,'2006-02-15 21:30:53'),(12415,'2005-08-18 09:54:01',392,443,'2005-08-24 15:41:01',1,'2006-02-15 21:30:53'),(12416,'2005-08-18 09:56:48',3784,515,'2005-08-22 12:34:48',1,'2006-02-15 21:30:53'),(12417,'2005-08-18 09:57:00',3500,71,'2005-08-19 08:56:00',1,'2006-02-15 21:30:53'),(12418,'2005-08-18 09:59:36',4186,241,'2005-08-19 11:35:36',2,'2006-02-15 21:30:53'),(12419,'2005-08-18 10:01:48',3111,133,'2005-08-19 13:40:48',1,'2006-02-15 21:30:53'),(12420,'2005-08-18 10:01:50',452,477,'2005-08-22 08:14:50',1,'2006-02-15 21:30:53'),(12421,'2005-08-18 10:04:06',4067,158,'2005-08-24 08:45:06',2,'2006-02-15 21:30:53'),(12422,'2005-08-18 10:13:12',1855,451,'2005-08-20 14:36:12',2,'2006-02-15 21:30:53'),(12423,'2005-08-18 10:14:52',1014,470,'2005-08-26 13:16:52',2,'2006-02-15 21:30:53'),(12424,'2005-08-18 10:16:57',2055,319,'2005-08-27 04:41:57',1,'2006-02-15 21:30:53'),(12425,'2005-08-18 10:18:06',2000,405,'2005-08-27 08:16:06',2,'2006-02-15 21:30:53'),(12426,'2005-08-18 10:24:11',799,75,'2005-08-22 15:34:11',2,'2006-02-15 21:30:53'),(12427,'2005-08-18 10:24:17',1759,333,'2005-08-27 14:22:17',1,'2006-02-15 21:30:53'),(12428,'2005-08-18 10:24:21',3735,121,'2005-08-24 05:12:21',1,'2006-02-15 21:30:53'),(12429,'2005-08-18 10:26:46',2994,436,'2005-08-27 13:23:46',1,'2006-02-15 21:30:53'),(12430,'2005-08-18 10:32:41',2840,196,'2005-08-22 16:16:41',1,'2006-02-15 21:30:53'),(12431,'2005-08-18 10:34:59',4461,89,'2005-08-22 14:42:59',1,'2006-02-15 21:30:53'),(12432,'2005-08-18 10:35:13',2543,263,'2005-08-26 08:20:13',2,'2006-02-15 21:30:53'),(12433,'2005-08-18 10:37:49',1776,552,'2005-08-19 08:00:49',1,'2006-02-15 21:30:53'),(12434,'2005-08-18 10:38:08',3078,314,'2005-08-22 16:14:08',2,'2006-02-15 21:30:53'),(12435,'2005-08-18 10:38:31',3211,160,'2005-08-26 15:18:31',1,'2006-02-15 21:30:53'),(12436,'2005-08-18 10:41:05',3761,499,'2005-08-23 07:36:05',2,'2006-02-15 21:30:53'),(12437,'2005-08-18 10:42:43',4036,467,'2005-08-26 11:58:43',2,'2006-02-15 21:30:53'),(12438,'2005-08-18 10:42:52',2043,186,'2005-08-25 11:42:52',1,'2006-02-15 21:30:53'),(12439,'2005-08-18 10:44:57',3204,153,'2005-08-22 06:51:57',1,'2006-02-15 21:30:53'),(12440,'2005-08-18 10:47:35',2779,474,'2005-08-21 11:10:35',2,'2006-02-15 21:30:53'),(12441,'2005-08-18 10:47:57',2163,561,'2005-08-26 07:11:57',2,'2006-02-15 21:30:53'),(12442,'2005-08-18 10:50:07',78,270,'2005-08-21 08:06:07',1,'2006-02-15 21:30:53'),(12443,'2005-08-18 10:50:59',2048,233,'2005-08-26 07:48:59',2,'2006-02-15 21:30:53'),(12444,'2005-08-18 10:53:12',1639,285,'2005-08-19 13:54:12',2,'2006-02-15 21:30:53'),(12445,'2005-08-18 10:56:20',3347,350,'2005-08-21 16:46:20',1,'2006-02-15 21:30:53'),(12446,'2005-08-18 10:56:29',2138,448,'2005-08-23 05:30:29',1,'2006-02-15 21:30:53'),(12447,'2005-08-18 10:57:01',4084,469,'2005-08-27 06:05:01',1,'2006-02-15 21:30:53'),(12448,'2005-08-18 10:59:04',3889,72,'2005-08-21 06:45:04',2,'2006-02-15 21:30:53'),(12449,'2005-08-18 11:03:04',663,285,'2005-08-19 07:34:04',1,'2006-02-15 21:30:53'),(12450,'2005-08-18 11:04:04',3439,518,'2005-08-22 07:24:04',1,'2006-02-15 21:30:53'),(12451,'2005-08-18 11:04:42',2780,183,'2005-08-20 08:20:42',1,'2006-02-15 21:30:53'),(12452,'2005-08-18 11:14:35',4260,358,'2005-08-27 09:09:35',1,'2006-02-15 21:30:53'),(12453,'2005-08-18 11:17:07',2487,104,'2005-08-25 12:34:07',1,'2006-02-15 21:30:53'),(12454,'2005-08-18 11:19:02',4219,184,'2005-08-19 12:00:02',2,'2006-02-15 21:30:53'),(12455,'2005-08-18 11:19:47',4478,46,'2005-08-22 16:08:47',2,'2006-02-15 21:30:53'),(12456,'2005-08-18 11:21:51',4578,85,'2005-08-21 13:28:51',1,'2006-02-15 21:30:53'),(12457,'2006-02-14 15:16:03',2145,80,NULL,2,'2006-02-15 21:30:53'),(12458,'2005-08-18 11:22:53',4579,277,'2005-08-22 14:30:53',2,'2006-02-15 21:30:53'),(12459,'2005-08-18 11:25:11',421,39,'2005-08-22 06:13:11',1,'2006-02-15 21:30:53'),(12460,'2005-08-18 11:25:13',3550,419,'2005-08-27 06:27:13',2,'2006-02-15 21:30:53'),(12461,'2005-08-18 11:28:14',1569,27,'2005-08-21 09:47:14',1,'2006-02-15 21:30:53'),(12462,'2005-08-18 11:28:55',890,574,'2005-08-20 12:06:55',2,'2006-02-15 21:30:53'),(12463,'2005-08-18 11:31:34',30,214,'2005-08-23 12:04:34',1,'2006-02-15 21:30:53'),(12464,'2005-08-18 11:33:34',1954,157,'2005-08-27 14:33:34',1,'2006-02-15 21:30:53'),(12465,'2005-08-18 11:35:02',1733,486,'2005-08-21 11:52:02',2,'2006-02-15 21:30:53'),(12466,'2005-08-18 11:36:55',2686,462,'2005-08-23 13:46:55',1,'2006-02-15 21:30:53'),(12467,'2005-08-18 11:40:09',1414,212,'2005-08-19 13:33:09',2,'2006-02-15 21:30:53'),(12468,'2005-08-18 11:41:47',1689,80,'2005-08-24 16:43:47',2,'2006-02-15 21:30:53'),(12469,'2005-08-18 11:53:07',2395,237,'2005-08-24 16:00:07',1,'2006-02-15 21:30:53'),(12470,'2005-08-18 11:55:42',1290,82,'2005-08-24 08:27:42',2,'2006-02-15 21:30:53'),(12471,'2005-08-18 11:57:00',242,101,'2005-08-26 13:17:00',2,'2006-02-15 21:30:53'),(12472,'2005-08-18 11:58:48',4458,297,'2005-08-27 16:37:48',2,'2006-02-15 21:30:53'),(12473,'2005-08-18 11:59:44',1237,303,'2005-08-21 13:38:44',1,'2006-02-15 21:30:53'),(12474,'2005-08-18 12:10:03',2240,78,'2005-08-27 17:05:03',1,'2006-02-15 21:30:53'),(12475,'2005-08-18 12:14:21',3118,401,'2005-08-24 14:43:21',2,'2006-02-15 21:30:53'),(12476,'2005-08-18 12:22:40',2784,122,'2005-08-20 17:29:40',2,'2006-02-15 21:30:53'),(12477,'2005-08-18 12:25:01',4516,74,'2005-08-25 17:25:01',2,'2006-02-15 21:30:53'),(12478,'2005-08-18 12:25:16',4512,42,'2005-08-22 06:27:16',2,'2006-02-15 21:30:53'),(12479,'2005-08-18 12:26:37',1119,401,'2005-08-21 18:08:37',2,'2006-02-15 21:30:53'),(12480,'2005-08-18 12:26:43',3339,446,'2005-08-26 13:23:43',1,'2006-02-15 21:30:53'),(12481,'2005-08-18 12:31:34',2424,218,'2005-08-21 16:08:34',2,'2006-02-15 21:30:53'),(12482,'2005-08-18 12:37:36',3778,247,'2005-08-26 09:53:36',1,'2006-02-15 21:30:53'),(12483,'2005-08-18 12:38:37',1805,488,'2005-08-24 13:26:37',1,'2006-02-15 21:30:53'),(12484,'2005-08-18 12:39:37',3690,300,'2005-08-24 08:47:37',2,'2006-02-15 21:30:53'),(12485,'2005-08-18 12:41:41',422,345,'2005-08-22 16:38:41',2,'2006-02-15 21:30:53'),(12486,'2005-08-18 12:42:50',2991,515,'2005-08-27 13:41:50',2,'2006-02-15 21:30:53'),(12487,'2005-08-18 12:45:24',2554,485,'2005-08-22 12:39:24',1,'2006-02-15 21:30:53'),(12488,'2005-08-18 12:48:22',3323,29,'2005-08-19 16:19:22',1,'2006-02-15 21:30:53'),(12489,'2006-02-14 15:16:03',387,60,NULL,2,'2006-02-15 21:30:53'),(12490,'2005-08-18 12:48:45',1577,187,'2005-08-27 15:53:45',1,'2006-02-15 21:30:53'),(12491,'2005-08-18 12:48:45',2354,247,'2005-08-22 12:40:45',2,'2006-02-15 21:30:53'),(12492,'2005-08-18 12:49:04',2839,224,'2005-08-26 17:55:04',1,'2006-02-15 21:30:53'),(12493,'2005-08-18 12:53:38',3029,487,'2005-08-27 13:15:38',2,'2006-02-15 21:30:53'),(12494,'2005-08-18 12:53:49',3845,522,'2005-08-26 15:52:49',1,'2006-02-15 21:30:53'),(12495,'2005-08-18 12:56:37',1225,102,'2005-08-22 06:58:37',1,'2006-02-15 21:30:53'),(12496,'2005-08-18 12:58:25',456,489,'2005-08-27 18:43:25',2,'2006-02-15 21:30:53'),(12497,'2005-08-18 12:58:40',824,388,'2005-08-24 08:24:40',1,'2006-02-15 21:30:53'),(12498,'2005-08-18 13:01:08',1063,408,'2005-08-21 13:12:08',1,'2006-02-15 21:30:53'),(12499,'2005-08-18 13:05:37',2611,42,'2005-08-19 07:41:37',1,'2006-02-15 21:30:53'),(12500,'2005-08-18 13:05:51',36,310,'2005-08-19 14:54:51',2,'2006-02-15 21:30:53'),(12501,'2005-08-18 13:13:13',728,173,'2005-08-23 07:24:13',2,'2006-02-15 21:30:53'),(12502,'2005-08-18 13:16:31',2153,235,'2005-08-19 17:47:31',1,'2006-02-15 21:30:53'),(12503,'2005-08-18 13:16:46',3548,379,'2005-08-19 10:24:46',2,'2006-02-15 21:30:53'),(12504,'2005-08-18 13:17:07',4429,44,'2005-08-24 09:13:07',2,'2006-02-15 21:30:53'),(12505,'2005-08-18 13:17:30',3741,406,'2005-08-23 18:03:30',1,'2006-02-15 21:30:53'),(12506,'2006-02-14 15:16:03',1132,114,NULL,2,'2006-02-15 21:30:53'),(12507,'2005-08-18 13:19:13',199,584,'2005-08-27 11:48:13',2,'2006-02-15 21:30:53'),(12508,'2005-08-18 13:20:13',1059,29,'2005-08-22 12:55:13',1,'2006-02-15 21:30:53'),(12509,'2005-08-18 13:21:52',2462,175,'2005-08-20 12:14:52',2,'2006-02-15 21:30:53'),(12510,'2005-08-18 13:22:25',3051,394,'2005-08-27 17:38:25',2,'2006-02-15 21:30:53'),(12511,'2005-08-18 13:23:19',919,447,'2005-08-22 11:43:19',2,'2006-02-15 21:30:53'),(12512,'2005-08-18 13:28:27',3959,148,'2005-08-26 19:08:27',2,'2006-02-15 21:30:53'),(12513,'2005-08-18 13:31:45',29,527,'2005-08-25 08:26:45',1,'2006-02-15 21:30:53'),(12514,'2005-08-18 13:33:55',3310,400,'2005-08-23 12:50:55',2,'2006-02-15 21:30:53'),(12515,'2005-08-18 13:39:26',2703,63,'2005-08-22 09:05:26',1,'2006-02-15 21:30:53'),(12516,'2005-08-18 13:39:53',1332,302,'2005-08-20 08:33:53',1,'2006-02-15 21:30:53'),(12517,'2005-08-18 13:40:20',2908,520,'2005-08-27 14:04:20',1,'2006-02-15 21:30:53'),(12518,'2005-08-18 13:41:32',3860,264,'2005-08-23 13:01:32',1,'2006-02-15 21:30:53'),(12519,'2005-08-18 13:42:14',2394,203,'2005-08-24 16:44:14',1,'2006-02-15 21:30:53'),(12520,'2005-08-18 13:42:45',681,52,'2005-08-23 12:54:45',2,'2006-02-15 21:30:53'),(12521,'2005-08-18 13:43:07',1022,369,'2005-08-21 07:53:07',1,'2006-02-15 21:30:53'),(12522,'2005-08-18 13:45:40',4435,342,'2005-08-27 17:05:40',1,'2006-02-15 21:30:53'),(12523,'2005-08-18 13:45:41',888,230,'2005-08-27 10:46:41',1,'2006-02-15 21:30:53'),(12524,'2006-02-14 15:16:03',857,438,NULL,1,'2006-02-15 21:30:53'),(12525,'2005-08-18 13:48:31',2357,96,'2005-08-23 13:04:31',2,'2006-02-15 21:30:53'),(12526,'2005-08-18 13:48:43',3541,54,'2005-08-19 10:05:43',1,'2006-02-15 21:30:53'),(12527,'2005-08-18 13:48:46',2536,459,'2005-08-26 13:31:46',2,'2006-02-15 21:30:53'),(12528,'2005-08-18 13:52:41',3381,398,'2005-08-27 09:09:41',2,'2006-02-15 21:30:53'),(12529,'2005-08-18 13:53:36',1956,382,'2005-08-19 18:20:36',2,'2006-02-15 21:30:53'),(12530,'2005-08-18 13:54:48',1054,521,'2005-08-26 08:58:48',2,'2006-02-15 21:30:53'),(12531,'2005-08-18 13:57:50',2771,27,'2005-08-22 09:46:50',2,'2006-02-15 21:30:53'),(12532,'2005-08-18 13:57:58',114,184,'2005-08-24 14:58:58',2,'2006-02-15 21:30:53'),(12533,'2005-08-18 14:01:40',795,331,'2005-08-20 15:32:40',1,'2006-02-15 21:30:53'),(12534,'2005-08-18 14:04:41',995,187,'2005-08-25 16:57:41',1,'2006-02-15 21:30:53'),(12535,'2005-08-18 14:05:22',2944,516,'2005-08-25 16:35:22',1,'2006-02-15 21:30:53'),(12536,'2005-08-18 14:06:06',2343,373,'2005-08-25 14:21:06',1,'2006-02-15 21:30:53'),(12537,'2005-08-18 14:06:39',57,56,'2005-08-25 09:36:39',2,'2006-02-15 21:30:53'),(12538,'2005-08-18 14:09:09',1373,118,'2005-08-23 19:12:09',1,'2006-02-15 21:30:53'),(12539,'2005-08-18 14:10:09',3259,136,'2005-08-19 19:44:09',2,'2006-02-15 21:30:53'),(12540,'2005-08-18 14:17:30',2826,304,'2005-08-26 15:33:30',2,'2006-02-15 21:30:53'),(12541,'2005-08-18 14:18:30',4357,584,'2005-08-26 10:24:30',1,'2006-02-15 21:30:53'),(12542,'2005-08-18 14:21:11',1920,230,'2005-08-20 16:06:11',2,'2006-02-15 21:30:53'),(12543,'2005-08-18 14:23:55',330,324,'2005-08-20 12:42:55',1,'2006-02-15 21:30:53'),(12544,'2005-08-18 14:25:51',3783,354,'2005-08-26 18:42:51',1,'2006-02-15 21:30:53'),(12545,'2005-08-18 14:28:00',1988,168,'2005-08-26 14:10:00',1,'2006-02-15 21:30:53'),(12546,'2005-08-18 14:29:37',610,30,'2005-08-26 09:47:37',1,'2006-02-15 21:30:53'),(12547,'2005-08-18 14:29:39',3046,591,'2005-08-22 16:52:39',2,'2006-02-15 21:30:53'),(12548,'2005-08-18 14:35:26',750,426,'2005-08-27 18:58:26',1,'2006-02-15 21:30:53'),(12549,'2005-08-18 14:38:07',1010,377,'2005-08-21 08:45:07',1,'2006-02-15 21:30:53'),(12550,'2005-08-18 14:40:38',4267,138,'2005-08-19 13:33:38',2,'2006-02-15 21:30:53'),(12551,'2005-08-18 14:46:26',2195,15,'2005-08-19 16:59:26',2,'2006-02-15 21:30:53'),(12552,'2005-08-18 14:46:34',4303,413,'2005-08-20 11:02:34',2,'2006-02-15 21:30:53'),(12553,'2005-08-18 14:46:54',2893,454,'2005-08-22 13:41:54',1,'2006-02-15 21:30:53'),(12554,'2005-08-18 14:47:28',715,404,'2005-08-25 14:34:28',2,'2006-02-15 21:30:53'),(12555,'2005-08-18 14:49:22',4434,557,'2005-08-26 14:11:22',2,'2006-02-15 21:30:53'),(12556,'2005-08-18 14:49:55',1984,3,'2005-08-24 15:20:55',2,'2006-02-15 21:30:53'),(12557,'2005-08-18 14:51:03',313,364,'2005-08-19 13:30:03',2,'2006-02-15 21:30:53'),(12558,'2005-08-18 14:52:35',167,289,'2005-08-26 09:45:35',2,'2006-02-15 21:30:53'),(12559,'2005-08-18 14:53:58',39,513,'2005-08-25 20:22:58',1,'2006-02-15 21:30:53'),(12560,'2005-08-18 14:54:19',829,596,'2005-08-27 13:39:19',1,'2006-02-15 21:30:53'),(12561,'2005-08-18 14:58:51',812,392,'2005-08-20 10:53:51',1,'2006-02-15 21:30:53'),(12562,'2005-08-18 15:00:03',529,212,'2005-08-23 12:55:03',2,'2006-02-15 21:30:53'),(12563,'2005-08-18 15:08:29',2552,393,'2005-08-27 15:15:29',1,'2006-02-15 21:30:53'),(12564,'2005-08-18 15:11:35',263,348,'2005-08-22 11:45:35',2,'2006-02-15 21:30:53'),(12565,'2005-08-18 15:12:17',1284,211,'2005-08-19 12:26:17',2,'2006-02-15 21:30:53'),(12566,'2005-08-18 15:13:04',1684,407,'2005-08-21 19:29:04',2,'2006-02-15 21:30:53'),(12567,'2005-08-18 15:14:36',2931,308,'2005-08-26 18:56:36',1,'2006-02-15 21:30:53'),(12568,'2005-08-18 15:15:44',2654,569,'2005-08-22 19:32:44',2,'2006-02-15 21:30:53'),(12569,'2005-08-18 15:20:46',1009,29,'2005-08-24 12:38:46',2,'2006-02-15 21:30:53'),(12570,'2005-08-18 15:23:31',3973,211,'2005-08-22 09:59:31',2,'2006-02-15 21:30:53'),(12571,'2005-08-18 15:31:18',1013,591,'2005-08-23 15:20:18',2,'2006-02-15 21:30:53'),(12572,'2005-08-18 15:32:54',1366,253,'2005-08-21 10:30:54',1,'2006-02-15 21:30:53'),(12573,'2005-08-18 15:32:57',1416,182,'2005-08-21 18:29:57',2,'2006-02-15 21:30:53'),(12574,'2006-02-14 15:16:03',177,317,NULL,2,'2006-02-15 21:30:53'),(12575,'2005-08-18 15:37:42',3441,117,'2005-08-25 19:17:42',1,'2006-02-15 21:30:53'),(12576,'2005-08-18 15:38:31',329,119,'2005-08-22 21:29:31',2,'2006-02-15 21:30:53'),(12577,'2005-08-18 15:39:46',4134,16,'2005-08-25 18:05:46',2,'2006-02-15 21:30:53'),(12578,'2005-08-18 15:47:11',930,514,'2005-08-21 10:55:11',1,'2006-02-15 21:30:53'),(12579,'2005-08-18 15:47:49',3021,547,'2005-08-20 18:12:49',2,'2006-02-15 21:30:53'),(12580,'2005-08-18 15:49:08',1197,53,'2005-08-24 11:03:08',2,'2006-02-15 21:30:53'),(12581,'2005-08-18 15:49:15',4309,70,'2005-08-23 20:18:15',1,'2006-02-15 21:30:53'),(12582,'2005-08-18 15:51:12',4467,462,'2005-08-20 12:05:12',1,'2006-02-15 21:30:53'),(12583,'2005-08-18 15:51:36',3090,108,'2005-08-20 18:47:36',2,'2006-02-15 21:30:53'),(12584,'2005-08-18 15:51:36',4487,371,'2005-08-25 19:21:36',1,'2006-02-15 21:30:53'),(12585,'2005-08-18 15:52:12',773,110,'2005-08-22 21:00:12',1,'2006-02-15 21:30:53'),(12586,'2005-08-18 15:54:39',4245,460,'2005-08-21 19:29:39',1,'2006-02-15 21:30:53'),(12587,'2005-08-18 16:03:13',3081,499,'2005-08-25 19:30:13',1,'2006-02-15 21:30:53'),(12588,'2005-08-18 16:04:45',694,415,'2005-08-23 20:30:45',1,'2006-02-15 21:30:53'),(12589,'2005-08-18 16:06:31',956,275,'2005-08-27 17:20:31',1,'2006-02-15 21:30:53'),(12590,'2005-08-18 16:11:35',2624,308,'2005-08-23 10:35:35',1,'2006-02-15 21:30:53'),(12591,'2005-08-18 16:16:41',723,546,'2005-08-24 10:29:41',2,'2006-02-15 21:30:53'),(12592,'2005-08-18 16:17:50',1618,305,'2005-08-25 20:20:50',1,'2006-02-15 21:30:53'),(12593,'2005-08-18 16:17:54',4092,72,'2005-08-21 18:02:54',2,'2006-02-15 21:30:53'),(12594,'2005-08-18 16:24:24',4421,198,'2005-08-25 15:45:24',1,'2006-02-15 21:30:53'),(12595,'2005-08-18 16:27:08',1662,286,'2005-08-19 14:53:08',1,'2006-02-15 21:30:53'),(12596,'2005-08-18 16:29:35',3662,378,'2005-08-24 16:48:35',1,'2006-02-15 21:30:53'),(12597,'2005-08-18 16:34:02',3804,474,'2005-08-25 17:30:02',2,'2006-02-15 21:30:53'),(12598,'2005-08-18 16:34:03',3159,340,'2005-08-22 16:44:03',1,'2006-02-15 21:30:53'),(12599,'2005-08-18 16:42:45',2032,34,'2005-08-23 18:27:45',2,'2006-02-15 21:30:53'),(12600,'2005-08-18 16:44:24',1475,171,'2005-08-25 17:28:24',1,'2006-02-15 21:30:53'),(12601,'2005-08-18 16:47:52',3099,598,'2005-08-24 11:05:52',1,'2006-02-15 21:30:53'),(12602,'2005-08-18 16:49:50',2001,533,'2005-08-21 11:13:50',2,'2006-02-15 21:30:53'),(12603,'2005-08-18 16:56:20',2769,119,'2005-08-25 11:50:20',2,'2006-02-15 21:30:53'),(12604,'2005-08-18 16:58:48',4127,12,'2005-08-19 19:36:48',1,'2006-02-15 21:30:53'),(12605,'2005-08-18 16:59:37',1359,496,'2005-08-20 18:09:37',1,'2006-02-15 21:30:53'),(12606,'2005-08-18 17:02:21',359,275,'2005-08-24 22:38:21',1,'2006-02-15 21:30:53'),(12607,'2005-08-18 17:03:49',2130,526,'2005-08-19 18:29:49',1,'2006-02-15 21:30:53'),(12608,'2005-08-18 17:05:15',624,366,'2005-08-23 17:00:15',2,'2006-02-15 21:30:53'),(12609,'2005-08-18 17:06:22',2327,486,'2005-08-20 21:30:22',1,'2006-02-15 21:30:53'),(12610,'2006-02-14 15:16:03',3181,269,NULL,1,'2006-02-15 21:30:53'),(12611,'2005-08-18 17:09:42',1925,359,'2005-08-24 11:57:42',2,'2006-02-15 21:30:53'),(12612,'2005-08-18 17:10:05',1035,129,'2005-08-26 15:55:05',2,'2006-02-15 21:30:53'),(12613,'2005-08-18 17:16:01',3877,8,'2005-08-23 18:40:01',2,'2006-02-15 21:30:53'),(12614,'2005-08-18 17:16:03',2233,60,'2005-08-26 16:56:03',2,'2006-02-15 21:30:53'),(12615,'2005-08-18 17:16:07',2191,29,'2005-08-27 12:57:07',1,'2006-02-15 21:30:53'),(12616,'2005-08-18 17:22:41',2952,476,'2005-08-25 18:52:41',2,'2006-02-15 21:30:53'),(12617,'2005-08-18 17:22:48',3573,564,'2005-08-24 17:40:48',2,'2006-02-15 21:30:53'),(12618,'2005-08-18 17:24:02',302,117,'2005-08-19 15:22:02',1,'2006-02-15 21:30:53'),(12619,'2005-08-18 17:24:15',980,592,'2005-08-21 15:56:15',1,'2006-02-15 21:30:53'),(12620,'2005-08-18 17:26:38',2663,221,'2005-08-25 13:24:38',1,'2006-02-15 21:30:53'),(12621,'2005-08-18 17:31:36',4566,439,'2005-08-24 16:43:36',2,'2006-02-15 21:30:53'),(12622,'2005-08-18 17:34:11',278,529,'2005-08-24 16:10:11',1,'2006-02-15 21:30:53'),(12623,'2005-08-18 17:34:19',3670,177,'2005-08-20 21:30:19',1,'2006-02-15 21:30:53'),(12624,'2005-08-18 17:35:00',1135,434,'2005-08-27 12:18:00',2,'2006-02-15 21:30:53'),(12625,'2005-08-18 17:36:19',2645,108,'2005-08-23 11:42:19',1,'2006-02-15 21:30:53'),(12626,'2005-08-18 17:36:45',4230,361,'2005-08-26 17:12:45',1,'2006-02-15 21:30:53'),(12627,'2005-08-18 17:37:11',3760,150,'2005-08-19 14:59:11',2,'2006-02-15 21:30:53'),(12628,'2005-08-18 17:40:25',3210,520,'2005-08-25 13:39:25',1,'2006-02-15 21:30:53'),(12629,'2005-08-18 17:40:33',1705,459,'2005-08-26 21:09:33',1,'2006-02-15 21:30:53'),(12630,'2005-08-18 17:49:28',1457,452,'2005-08-24 12:23:28',1,'2006-02-15 21:30:53'),(12631,'2005-08-18 17:52:51',2782,339,'2005-08-25 14:40:51',2,'2006-02-15 21:30:53'),(12632,'2005-08-18 17:54:21',827,381,'2005-08-22 18:58:21',1,'2006-02-15 21:30:53'),(12633,'2005-08-18 17:55:38',4341,469,'2005-08-23 17:19:38',2,'2006-02-15 21:30:53'),(12634,'2005-08-18 17:58:14',1037,549,'2005-08-19 21:08:14',2,'2006-02-15 21:30:53'),(12635,'2005-08-18 18:00:23',331,15,'2005-08-23 16:40:23',2,'2006-02-15 21:30:53'),(12636,'2005-08-18 18:00:29',1645,380,'2005-08-26 20:08:29',2,'2006-02-15 21:30:53'),(12637,'2005-08-18 18:06:53',4005,145,'2005-08-19 17:36:53',1,'2006-02-15 21:30:53'),(12638,'2005-08-18 18:11:39',2849,172,'2005-08-25 21:54:39',2,'2006-02-15 21:30:53'),(12639,'2005-08-18 18:13:05',562,500,'2005-08-27 16:00:05',2,'2006-02-15 21:30:53'),(12640,'2005-08-18 18:14:49',1715,544,'2005-08-24 21:25:49',1,'2006-02-15 21:30:53'),(12641,'2005-08-18 18:18:08',776,467,'2005-08-19 23:17:08',1,'2006-02-15 21:30:53'),(12642,'2005-08-18 18:19:16',2080,167,'2005-08-20 17:30:16',2,'2006-02-15 21:30:53'),(12643,'2005-08-18 18:21:06',2245,165,'2005-08-24 14:26:06',1,'2006-02-15 21:30:53'),(12644,'2005-08-18 18:22:27',1511,300,'2005-08-26 00:01:27',1,'2006-02-15 21:30:53'),(12645,'2006-02-14 15:16:03',1658,457,NULL,1,'2006-02-15 21:30:53'),(12646,'2005-08-18 18:25:06',3103,388,'2005-08-24 18:45:06',1,'2006-02-15 21:30:53'),(12647,'2005-08-18 18:29:51',323,520,'2005-08-27 22:51:51',1,'2006-02-15 21:30:53'),(12648,'2005-08-18 18:30:21',3545,519,'2005-08-25 19:17:21',1,'2006-02-15 21:30:53'),(12649,'2005-08-18 18:31:47',3201,530,'2005-08-22 21:07:47',2,'2006-02-15 21:30:53'),(12650,'2005-08-18 18:33:20',3237,276,'2005-08-21 17:45:20',2,'2006-02-15 21:30:53'),(12651,'2005-08-18 18:36:16',8,34,'2005-08-22 22:01:16',1,'2006-02-15 21:30:53'),(12652,'2005-08-18 18:48:58',2118,9,'2005-08-21 14:15:58',1,'2006-02-15 21:30:53'),(12653,'2005-08-18 18:53:17',3353,78,'2005-08-26 14:08:17',1,'2006-02-15 21:30:53'),(12654,'2005-08-18 18:56:40',2217,438,'2005-08-20 17:51:40',2,'2006-02-15 21:30:53'),(12655,'2005-08-18 18:57:44',859,533,'2005-08-27 22:40:44',2,'2006-02-15 21:30:53'),(12656,'2005-08-18 18:58:35',3981,286,'2005-08-21 00:41:35',1,'2006-02-15 21:30:53'),(12657,'2005-08-18 19:02:16',3621,100,'2005-08-21 14:59:16',1,'2006-02-15 21:30:53'),(12658,'2005-08-18 19:05:42',4320,193,'2005-08-19 19:08:42',1,'2006-02-15 21:30:53'),(12659,'2005-08-18 19:05:49',336,329,'2005-08-24 22:12:49',2,'2006-02-15 21:30:53'),(12660,'2005-08-18 19:07:23',414,21,'2005-08-27 17:20:23',2,'2006-02-15 21:30:53'),(12661,'2005-08-18 19:10:10',1547,333,'2005-08-22 20:30:10',1,'2006-02-15 21:30:53'),(12662,'2005-08-18 19:10:41',1412,75,'2005-08-23 16:59:41',1,'2006-02-15 21:30:53'),(12663,'2005-08-18 19:10:52',1163,375,'2005-08-19 15:46:52',1,'2006-02-15 21:30:53'),(12664,'2005-08-18 19:10:54',2732,577,'2005-08-25 19:19:54',1,'2006-02-15 21:30:53'),(12665,'2006-02-14 15:16:03',1701,410,NULL,2,'2006-02-15 21:30:53'),(12666,'2005-08-18 19:11:41',4156,251,'2005-08-21 18:04:41',2,'2006-02-15 21:30:53'),(12667,'2005-08-18 19:11:45',104,545,'2005-08-27 13:34:45',2,'2006-02-15 21:30:53'),(12668,'2005-08-18 19:16:47',1986,14,'2005-08-19 16:31:47',1,'2006-02-15 21:30:53'),(12669,'2005-08-18 19:17:47',4530,433,'2005-08-24 14:55:47',1,'2006-02-15 21:30:53'),(12670,'2005-08-18 19:17:58',1716,580,'2005-08-23 20:54:58',2,'2006-02-15 21:30:53'),(12671,'2005-08-18 19:19:59',1734,577,'2005-08-23 17:53:59',2,'2006-02-15 21:30:53'),(12672,'2006-02-14 15:16:03',1722,228,NULL,1,'2006-02-15 21:30:53'),(12673,'2005-08-18 19:21:56',4204,535,'2005-08-26 22:44:56',2,'2006-02-15 21:30:53'),(12674,'2005-08-18 19:24:56',636,185,'2005-08-26 22:16:56',2,'2006-02-15 21:30:53'),(12675,'2005-08-18 19:34:02',569,140,'2005-08-23 13:36:02',2,'2006-02-15 21:30:53'),(12676,'2005-08-18 19:34:40',2581,393,'2005-08-20 18:03:40',2,'2006-02-15 21:30:53'),(12677,'2005-08-18 19:36:05',1311,334,'2005-08-22 21:23:05',2,'2006-02-15 21:30:53'),(12678,'2005-08-18 19:41:27',2504,181,'2005-08-23 15:14:27',2,'2006-02-15 21:30:53'),(12679,'2005-08-18 19:42:11',1535,463,'2005-08-25 01:01:11',1,'2006-02-15 21:30:53'),(12680,'2005-08-18 19:43:46',833,259,'2005-08-27 00:08:46',2,'2006-02-15 21:30:53'),(12681,'2005-08-18 19:48:06',1570,518,'2005-08-23 15:05:06',2,'2006-02-15 21:30:53'),(12682,'2006-02-14 15:16:03',1148,245,NULL,2,'2006-02-15 21:30:53'),(12683,'2005-08-18 19:50:43',1802,166,'2005-08-26 00:47:43',1,'2006-02-15 21:30:53'),(12684,'2005-08-18 19:51:27',978,196,'2005-08-19 15:56:27',1,'2006-02-15 21:30:53'),(12685,'2005-08-18 19:51:29',4283,114,'2005-08-27 14:58:29',2,'2006-02-15 21:30:53'),(12686,'2005-08-18 19:55:09',501,385,'2005-08-26 14:17:09',1,'2006-02-15 21:30:53'),(12687,'2005-08-18 19:57:39',3092,285,'2005-08-27 01:36:39',2,'2006-02-15 21:30:53'),(12688,'2005-08-18 19:59:54',2315,65,'2005-08-26 18:52:54',2,'2006-02-15 21:30:53'),(12689,'2005-08-18 20:06:34',1066,296,'2005-08-22 20:11:34',2,'2006-02-15 21:30:53'),(12690,'2005-08-18 20:06:57',3574,361,'2005-08-24 20:54:57',2,'2006-02-15 21:30:53'),(12691,'2005-08-18 20:07:46',3744,534,'2005-08-26 18:49:46',2,'2006-02-15 21:30:53'),(12692,'2005-08-18 20:09:19',2781,273,'2005-08-21 00:14:19',1,'2006-02-15 21:30:53'),(12693,'2005-08-18 20:10:19',1543,584,'2005-08-25 21:11:19',1,'2006-02-15 21:30:53'),(12694,'2005-08-18 20:10:39',1741,268,'2005-08-25 20:47:39',1,'2006-02-15 21:30:53'),(12695,'2005-08-18 20:11:35',446,483,'2005-08-25 18:29:35',1,'2006-02-15 21:30:53'),(12696,'2005-08-18 20:13:08',3989,374,'2005-08-19 18:02:08',2,'2006-02-15 21:30:53'),(12697,'2005-08-18 20:14:56',2774,152,'2005-08-23 21:54:56',1,'2006-02-15 21:30:53'),(12698,'2006-02-14 15:16:03',3657,497,NULL,1,'2006-02-15 21:30:53'),(12699,'2005-08-18 20:20:59',3695,66,'2005-08-22 17:00:59',1,'2006-02-15 21:30:53'),(12700,'2005-08-18 20:24:46',540,397,'2005-08-23 21:50:46',1,'2006-02-15 21:30:53'),(12701,'2005-08-18 20:26:47',2337,489,'2005-08-26 23:36:47',2,'2006-02-15 21:30:53'),(12702,'2005-08-18 20:30:33',1884,474,'2005-08-27 01:22:33',2,'2006-02-15 21:30:53'),(12703,'2005-08-18 20:37:13',1278,453,'2005-08-26 16:13:13',1,'2006-02-15 21:30:53'),(12704,'2005-08-18 20:43:00',51,93,'2005-08-21 22:28:00',2,'2006-02-15 21:30:53'),(12705,'2005-08-18 20:44:14',2342,517,'2005-08-23 20:46:14',1,'2006-02-15 21:30:53'),(12706,'2005-08-18 20:44:34',1079,170,'2005-08-26 21:47:34',1,'2006-02-15 21:30:53'),(12707,'2005-08-18 20:52:02',1565,426,'2005-08-25 19:03:02',2,'2006-02-15 21:30:53'),(12708,'2005-08-18 20:59:17',3448,28,'2005-08-24 22:40:17',1,'2006-02-15 21:30:53'),(12709,'2005-08-18 20:59:51',3878,476,'2005-08-26 01:21:51',2,'2006-02-15 21:30:53'),(12710,'2005-08-18 21:02:50',3011,310,'2005-08-26 15:07:50',2,'2006-02-15 21:30:53'),(12711,'2005-08-18 21:03:32',2530,122,'2005-08-26 17:31:32',1,'2006-02-15 21:30:53'),(12712,'2005-08-18 21:04:13',2628,444,'2005-08-25 18:15:13',2,'2006-02-15 21:30:53'),(12713,'2005-08-18 21:07:28',1505,56,'2005-08-24 17:46:28',1,'2006-02-15 21:30:53'),(12714,'2005-08-18 21:08:01',868,372,'2005-08-27 17:09:01',2,'2006-02-15 21:30:53'),(12715,'2005-08-18 21:09:38',3768,266,'2005-08-21 20:25:38',1,'2006-02-15 21:30:53'),(12716,'2006-02-14 15:16:03',858,570,NULL,2,'2006-02-15 21:30:53'),(12717,'2005-08-18 21:15:40',3551,167,'2005-08-20 00:59:40',2,'2006-02-15 21:30:53'),(12718,'2005-08-18 21:21:44',3221,176,'2005-08-20 01:01:44',1,'2006-02-15 21:30:53'),(12719,'2006-02-14 15:16:03',1094,87,NULL,2,'2006-02-15 21:30:53'),(12720,'2005-08-18 21:28:42',2676,419,'2005-08-25 18:02:42',1,'2006-02-15 21:30:53'),(12721,'2005-08-18 21:30:12',1045,239,'2005-08-22 22:45:12',1,'2006-02-15 21:30:53'),(12722,'2005-08-18 21:33:53',913,416,'2005-08-27 23:47:53',2,'2006-02-15 21:30:53'),(12723,'2005-08-18 21:34:16',4167,430,'2005-08-22 22:37:16',1,'2006-02-15 21:30:53'),(12724,'2005-08-18 21:37:20',2224,242,'2005-08-27 21:56:20',2,'2006-02-15 21:30:53'),(12725,'2005-08-18 21:43:09',4071,51,'2005-08-23 18:50:09',1,'2006-02-15 21:30:53'),(12726,'2005-08-18 21:44:46',20,397,'2005-08-19 21:58:46',2,'2006-02-15 21:30:53'),(12727,'2005-08-18 21:45:15',15,178,'2005-08-24 15:52:15',1,'2006-02-15 21:30:53'),(12728,'2005-08-18 21:47:48',3156,129,'2005-08-25 16:13:48',1,'2006-02-15 21:30:53'),(12729,'2005-08-18 21:52:59',3711,424,'2005-08-21 00:02:59',1,'2006-02-15 21:30:53'),(12730,'2005-08-18 21:55:01',75,7,'2005-08-22 01:23:01',1,'2006-02-15 21:30:53'),(12731,'2005-08-18 21:55:38',1719,128,'2005-08-23 20:30:38',1,'2006-02-15 21:30:53'),(12732,'2005-08-18 21:57:50',3307,535,'2005-08-19 18:28:50',2,'2006-02-15 21:30:53'),(12733,'2005-08-18 21:59:00',3243,144,'2005-08-24 02:25:00',1,'2006-02-15 21:30:53'),(12734,'2005-08-18 22:04:52',3619,121,'2005-08-25 00:34:52',1,'2006-02-15 21:30:53'),(12735,'2005-08-18 22:04:54',3679,383,'2005-08-23 21:19:54',2,'2006-02-15 21:30:53'),(12736,'2006-02-14 15:16:03',3591,244,NULL,2,'2006-02-15 21:30:53'),(12737,'2005-08-18 22:11:37',736,204,'2005-08-26 04:08:37',1,'2006-02-15 21:30:53'),(12738,'2005-08-18 22:11:47',4313,589,'2005-08-27 17:55:47',2,'2006-02-15 21:30:53'),(12739,'2005-08-18 22:15:18',4129,292,'2005-08-27 00:37:18',2,'2006-02-15 21:30:53'),(12740,'2005-08-18 22:17:04',1157,330,'2005-08-23 23:42:04',1,'2006-02-15 21:30:53'),(12741,'2005-08-18 22:17:05',2084,435,'2005-08-25 20:07:05',2,'2006-02-15 21:30:53'),(12742,'2005-08-18 22:22:03',1742,68,'2005-08-22 04:01:03',1,'2006-02-15 21:30:53'),(12743,'2005-08-18 22:22:31',2630,565,'2005-08-27 00:31:31',1,'2006-02-15 21:30:53'),(12744,'2005-08-18 22:22:36',3815,593,'2005-08-24 00:26:36',1,'2006-02-15 21:30:53'),(12745,'2005-08-18 22:22:45',262,24,'2005-08-20 01:44:45',2,'2006-02-15 21:30:53'),(12746,'2006-02-14 15:16:03',1012,211,NULL,1,'2006-02-15 21:30:53'),(12747,'2005-08-18 22:28:22',4075,549,'2005-08-22 22:25:22',2,'2006-02-15 21:30:53'),(12748,'2005-08-18 22:29:05',3249,373,'2005-08-24 18:25:05',2,'2006-02-15 21:30:53'),(12749,'2005-08-18 22:31:21',828,388,'2005-08-20 22:53:21',1,'2006-02-15 21:30:53'),(12750,'2005-08-18 22:32:39',3717,535,'2005-08-26 01:54:39',1,'2006-02-15 21:30:53'),(12751,'2005-08-18 22:33:22',2791,352,'2005-08-20 20:28:22',2,'2006-02-15 21:30:53'),(12752,'2005-08-18 22:33:36',3595,514,'2005-08-27 23:55:36',1,'2006-02-15 21:30:53'),(12753,'2005-08-18 22:37:39',1494,470,'2005-08-27 00:21:39',2,'2006-02-15 21:30:53'),(12754,'2005-08-18 22:37:41',4154,134,'2005-08-27 20:17:41',2,'2006-02-15 21:30:53'),(12755,'2005-08-18 22:38:47',105,439,'2005-08-22 23:58:47',1,'2006-02-15 21:30:53'),(12756,'2005-08-18 22:52:13',1840,89,'2005-08-21 17:22:13',1,'2006-02-15 21:30:53'),(12757,'2005-08-18 22:57:45',1095,147,'2005-08-21 22:43:45',1,'2006-02-15 21:30:53'),(12758,'2005-08-18 22:58:34',2279,30,'2005-08-22 23:33:34',1,'2006-02-15 21:30:53'),(12759,'2006-02-14 15:16:03',4193,354,NULL,2,'2006-02-15 21:30:53'),(12760,'2005-08-18 23:03:19',4188,363,'2005-08-24 17:53:19',1,'2006-02-15 21:30:53'),(12761,'2005-08-18 23:05:22',2684,364,'2005-08-22 01:08:22',2,'2006-02-15 21:30:53'),(12762,'2005-08-18 23:06:54',3909,502,'2005-08-21 18:30:54',1,'2006-02-15 21:30:53'),(12763,'2005-08-18 23:07:01',393,472,'2005-08-21 18:45:01',1,'2006-02-15 21:30:53'),(12764,'2005-08-18 23:14:15',26,183,'2005-08-22 20:23:15',1,'2006-02-15 21:30:53'),(12765,'2005-08-18 23:21:50',2244,298,'2005-08-28 04:42:50',2,'2006-02-15 21:30:53'),(12766,'2005-08-18 23:25:20',3737,50,'2005-08-27 04:43:20',1,'2006-02-15 21:30:53'),(12767,'2005-08-18 23:25:49',3351,432,'2005-08-28 02:40:49',2,'2006-02-15 21:30:53'),(12768,'2005-08-18 23:26:11',1993,458,'2005-08-19 20:31:11',2,'2006-02-15 21:30:53'),(12769,'2005-08-18 23:26:40',926,504,'2005-08-25 03:03:40',1,'2006-02-15 21:30:53'),(12770,'2005-08-18 23:29:00',1654,575,'2005-08-26 20:57:00',2,'2006-02-15 21:30:53'),(12771,'2005-08-18 23:29:23',3076,484,'2005-08-22 17:31:23',2,'2006-02-15 21:30:53'),(12772,'2005-08-18 23:29:25',1179,397,'2005-08-23 20:32:25',1,'2006-02-15 21:30:53'),(12773,'2005-08-18 23:32:19',4390,360,'2005-08-27 04:40:19',1,'2006-02-15 21:30:53'),(12774,'2005-08-18 23:34:22',3601,21,'2005-08-28 05:00:22',2,'2006-02-15 21:30:53'),(12775,'2005-08-18 23:35:56',4374,54,'2005-08-26 18:37:56',1,'2006-02-15 21:30:53'),(12776,'2005-08-18 23:37:33',2345,55,'2005-08-23 03:07:33',1,'2006-02-15 21:30:53'),(12777,'2005-08-18 23:39:22',3467,130,'2005-08-27 20:28:22',1,'2006-02-15 21:30:53'),(12778,'2005-08-18 23:40:23',3626,290,'2005-08-19 18:14:23',2,'2006-02-15 21:30:53'),(12779,'2005-08-18 23:44:00',1814,325,'2005-08-26 05:27:00',2,'2006-02-15 21:30:53'),(12780,'2005-08-18 23:48:16',54,373,'2005-08-20 18:13:16',2,'2006-02-15 21:30:53'),(12781,'2005-08-18 23:50:24',1187,168,'2005-08-21 02:31:24',1,'2006-02-15 21:30:53'),(12782,'2005-08-18 23:56:23',1454,495,'2005-08-25 18:47:23',1,'2006-02-15 21:30:53'),(12783,'2005-08-19 00:01:14',1109,503,'2005-08-21 22:02:14',2,'2006-02-15 21:30:53'),(12784,'2005-08-19 00:02:46',447,513,'2005-08-20 04:39:46',1,'2006-02-15 21:30:53'),(12785,'2005-08-19 00:05:49',4190,145,'2005-08-21 04:39:49',2,'2006-02-15 21:30:53'),(12786,'2006-02-14 15:16:03',97,512,NULL,1,'2006-02-15 21:30:53'),(12787,'2005-08-19 00:07:58',2023,278,'2005-08-24 00:42:58',2,'2006-02-15 21:30:53'),(12788,'2005-08-19 00:15:09',644,90,'2005-08-27 21:54:09',1,'2006-02-15 21:30:53'),(12789,'2005-08-19 00:16:19',2412,557,'2005-08-25 00:18:19',2,'2006-02-15 21:30:53'),(12790,'2005-08-19 00:16:54',1281,44,'2005-08-26 02:00:54',1,'2006-02-15 21:30:53'),(12791,'2005-08-19 00:17:09',3594,573,'2005-08-22 23:46:09',1,'2006-02-15 21:30:53'),(12792,'2006-02-14 15:16:03',1435,405,NULL,2,'2006-02-15 21:30:53'),(12793,'2005-08-19 00:20:36',1195,403,'2005-08-28 02:43:36',1,'2006-02-15 21:30:53'),(12794,'2005-08-19 00:20:37',1586,336,'2005-08-26 01:48:37',1,'2006-02-15 21:30:53'),(12795,'2005-08-19 00:21:52',2745,360,'2005-08-22 22:13:52',2,'2006-02-15 21:30:53'),(12796,'2005-08-19 00:22:24',1285,368,'2005-08-19 22:53:24',2,'2006-02-15 21:30:53'),(12797,'2005-08-19 00:24:08',1595,5,'2005-08-21 22:53:08',2,'2006-02-15 21:30:53'),(12798,'2005-08-19 00:24:33',4244,534,'2005-08-21 23:01:33',2,'2006-02-15 21:30:53'),(12799,'2005-08-19 00:27:01',3885,197,'2005-08-22 03:30:01',2,'2006-02-15 21:30:53'),(12800,'2005-08-19 00:27:11',257,545,'2005-08-22 01:08:11',1,'2006-02-15 21:30:53'),(12801,'2005-08-19 00:27:19',960,202,'2005-08-26 03:10:19',1,'2006-02-15 21:30:53'),(12802,'2005-08-19 00:27:41',2461,462,'2005-08-28 03:24:41',1,'2006-02-15 21:30:53'),(12803,'2005-08-19 00:28:21',1058,390,'2005-08-23 02:02:21',1,'2006-02-15 21:30:53'),(12804,'2005-08-19 00:33:15',147,365,'2005-08-28 02:16:15',2,'2006-02-15 21:30:53'),(12805,'2005-08-19 00:36:34',2964,345,'2005-08-26 20:38:34',1,'2006-02-15 21:30:53'),(12806,'2005-08-19 00:37:26',4488,423,'2005-08-23 18:49:26',2,'2006-02-15 21:30:53'),(12807,'2005-08-19 00:38:46',2323,513,'2005-08-28 03:37:46',2,'2006-02-15 21:30:53'),(12808,'2005-08-19 00:40:41',3920,55,'2005-08-21 06:39:41',2,'2006-02-15 21:30:53'),(12809,'2005-08-19 00:42:24',2005,22,'2005-08-23 06:06:24',1,'2006-02-15 21:30:53'),(12810,'2005-08-19 00:44:10',1340,250,'2005-08-22 22:30:10',2,'2006-02-15 21:30:53'),(12811,'2005-08-19 00:51:28',641,54,'2005-08-24 01:57:28',2,'2006-02-15 21:30:53'),(12812,'2005-08-19 00:54:02',4024,450,'2005-08-22 20:35:02',2,'2006-02-15 21:30:53'),(12813,'2005-08-19 00:54:22',3285,500,'2005-08-19 21:17:22',2,'2006-02-15 21:30:53'),(12814,'2005-08-19 00:58:24',204,465,'2005-08-21 05:46:24',1,'2006-02-15 21:30:53'),(12815,'2005-08-19 00:59:42',435,588,'2005-08-25 21:43:42',2,'2006-02-15 21:30:53'),(12816,'2005-08-19 01:04:05',4051,342,'2005-08-24 01:25:05',1,'2006-02-15 21:30:53'),(12817,'2005-08-19 01:04:35',1246,113,'2005-08-25 21:14:35',1,'2006-02-15 21:30:53'),(12818,'2005-08-19 01:04:59',3069,528,'2005-08-26 21:39:59',2,'2006-02-15 21:30:53'),(12819,'2005-08-19 01:05:05',1117,542,'2005-08-22 05:50:05',1,'2006-02-15 21:30:53'),(12820,'2005-08-19 01:05:08',2936,127,'2005-08-21 05:37:08',2,'2006-02-15 21:30:53'),(12821,'2005-08-19 01:07:02',3418,41,'2005-08-23 01:22:02',2,'2006-02-15 21:30:53'),(12822,'2005-08-19 01:15:24',419,426,'2005-08-20 06:38:24',1,'2006-02-15 21:30:53'),(12823,'2005-08-19 01:15:47',426,316,'2005-08-22 05:32:47',2,'2006-02-15 21:30:53'),(12824,'2005-08-19 01:18:00',1875,247,'2005-08-22 01:12:00',2,'2006-02-15 21:30:53'),(12825,'2005-08-19 01:23:58',4495,328,'2005-08-20 00:19:58',2,'2006-02-15 21:30:53'),(12826,'2005-08-19 01:25:11',1277,439,'2005-08-27 01:22:11',1,'2006-02-15 21:30:53'),(12827,'2005-08-19 01:27:23',880,253,'2005-08-27 02:22:23',2,'2006-02-15 21:30:53'),(12828,'2005-08-19 01:37:47',4208,378,'2005-08-24 22:31:47',2,'2006-02-15 21:30:53'),(12829,'2005-08-19 01:38:18',1129,326,'2005-08-25 22:23:18',2,'2006-02-15 21:30:53'),(12830,'2005-08-19 01:40:25',4080,409,'2005-08-20 23:49:25',2,'2006-02-15 21:30:53'),(12831,'2005-08-19 01:40:43',1916,183,'2005-08-28 05:22:43',1,'2006-02-15 21:30:53'),(12832,'2005-08-19 01:41:44',2820,563,'2005-08-24 23:15:44',2,'2006-02-15 21:30:53'),(12833,'2005-08-19 01:42:28',3723,59,'2005-08-26 20:13:28',1,'2006-02-15 21:30:53'),(12834,'2005-08-19 01:47:30',757,133,'2005-08-24 20:08:30',1,'2006-02-15 21:30:53'),(12835,'2005-08-19 01:47:45',1477,124,'2005-08-26 00:58:45',2,'2006-02-15 21:30:53'),(12836,'2005-08-19 01:48:33',1380,196,'2005-08-23 04:46:33',1,'2006-02-15 21:30:53'),(12837,'2005-08-19 01:51:09',2288,495,'2005-08-22 07:14:09',2,'2006-02-15 21:30:53'),(12838,'2005-08-19 01:51:50',1207,308,'2005-08-27 23:12:50',1,'2006-02-15 21:30:53'),(12839,'2005-08-19 01:53:43',1970,360,'2005-08-28 02:27:43',2,'2006-02-15 21:30:53'),(12840,'2005-08-19 01:54:11',2098,182,'2005-08-28 01:11:11',2,'2006-02-15 21:30:53'),(12841,'2005-08-19 01:55:55',4233,257,'2005-08-24 02:56:55',1,'2006-02-15 21:30:53'),(12842,'2005-08-19 01:57:21',2540,119,'2005-08-28 01:10:21',1,'2006-02-15 21:30:53'),(12843,'2005-08-19 01:58:54',3279,128,'2005-08-20 00:20:54',2,'2006-02-15 21:30:53'),(12844,'2005-08-19 01:59:08',4146,584,'2005-08-24 22:21:08',1,'2006-02-15 21:30:53'),(12845,'2005-08-19 02:02:37',1698,106,'2005-08-22 01:08:37',1,'2006-02-15 21:30:53'),(12846,'2005-08-19 02:03:26',286,305,'2005-08-25 07:39:26',2,'2006-02-15 21:30:53'),(12847,'2005-08-19 02:04:07',384,91,'2005-08-23 20:13:07',2,'2006-02-15 21:30:53'),(12848,'2005-08-19 02:05:11',2833,539,'2005-08-24 05:27:11',2,'2006-02-15 21:30:53'),(12849,'2005-08-19 02:05:37',3489,280,'2005-08-23 07:00:37',1,'2006-02-15 21:30:53'),(12850,'2005-08-19 02:08:06',1816,440,'2005-08-20 21:06:06',2,'2006-02-15 21:30:53'),(12851,'2005-08-19 02:12:12',3311,194,'2005-08-25 23:51:12',1,'2006-02-15 21:30:53'),(12852,'2005-08-19 02:12:40',2446,260,'2005-08-19 23:42:40',1,'2006-02-15 21:30:53'),(12853,'2005-08-19 02:15:32',3753,232,'2005-08-27 21:26:32',2,'2006-02-15 21:30:53'),(12854,'2005-08-19 02:18:51',4577,362,'2005-08-24 04:16:51',2,'2006-02-15 21:30:53'),(12855,'2005-08-19 02:18:58',2900,242,'2005-08-19 20:50:58',1,'2006-02-15 21:30:53'),(12856,'2005-08-19 02:19:13',132,4,'2005-08-23 07:49:13',2,'2006-02-15 21:30:53'),(12857,'2005-08-19 02:20:13',4307,443,'2005-08-20 20:20:13',1,'2006-02-15 21:30:53'),(12858,'2005-08-19 02:22:16',3024,144,'2005-08-26 07:25:16',2,'2006-02-15 21:30:53'),(12859,'2005-08-19 02:23:23',2289,139,'2005-08-28 04:55:23',2,'2006-02-15 21:30:53'),(12860,'2005-08-19 02:24:41',778,548,'2005-08-25 07:43:41',1,'2006-02-15 21:30:53'),(12861,'2005-08-19 02:30:24',3115,287,'2005-08-22 08:23:24',1,'2006-02-15 21:30:53'),(12862,'2005-08-19 02:31:59',473,198,'2005-08-26 08:16:59',2,'2006-02-15 21:30:53'),(12863,'2005-08-19 02:35:59',780,234,'2005-08-21 21:13:59',1,'2006-02-15 21:30:53'),(12864,'2005-08-19 02:38:26',4481,465,'2005-08-22 21:42:26',2,'2006-02-15 21:30:53'),(12865,'2005-08-19 02:38:50',3437,460,'2005-08-21 02:33:50',1,'2006-02-15 21:30:53'),(12866,'2005-08-19 02:39:47',1766,229,'2005-08-27 02:14:47',1,'2006-02-15 21:30:53'),(12867,'2005-08-19 02:40:11',4499,330,'2005-08-20 04:01:11',1,'2006-02-15 21:30:53'),(12868,'2005-08-19 02:47:19',4054,551,'2005-08-20 00:30:19',2,'2006-02-15 21:30:53'),(12869,'2005-08-19 02:50:36',3939,99,'2005-08-26 21:38:36',2,'2006-02-15 21:30:53'),(12870,'2005-08-19 02:54:38',991,86,'2005-08-27 00:45:38',1,'2006-02-15 21:30:53'),(12871,'2005-08-19 02:55:36',2625,217,'2005-08-22 01:00:36',2,'2006-02-15 21:30:53'),(12872,'2005-08-19 02:57:37',1975,54,'2005-08-22 23:23:37',1,'2006-02-15 21:30:53'),(12873,'2005-08-19 03:05:41',2140,138,'2005-08-22 06:57:41',2,'2006-02-15 21:30:53'),(12874,'2005-08-19 03:07:57',848,254,'2005-08-22 22:42:57',2,'2006-02-15 21:30:53'),(12875,'2005-08-19 03:10:21',1708,483,'2005-08-26 01:00:21',2,'2006-02-15 21:30:53'),(12876,'2005-08-19 03:12:19',803,356,'2005-08-20 02:24:19',2,'2006-02-15 21:30:53'),(12877,'2005-08-19 03:16:58',1016,40,'2005-08-25 02:10:58',2,'2006-02-15 21:30:53'),(12878,'2005-08-19 03:17:08',1182,596,'2005-08-23 03:44:08',1,'2006-02-15 21:30:53'),(12879,'2005-08-19 03:22:55',3556,210,'2005-08-24 22:00:55',1,'2006-02-15 21:30:53'),(12880,'2005-08-19 03:27:17',3386,552,'2005-08-28 06:16:17',2,'2006-02-15 21:30:53'),(12881,'2005-08-19 03:28:13',1432,121,'2005-08-25 05:25:13',1,'2006-02-15 21:30:53'),(12882,'2005-08-19 03:33:46',911,153,'2005-08-21 22:49:46',1,'2006-02-15 21:30:53'),(12883,'2005-08-19 03:33:47',964,555,'2005-08-23 21:55:47',1,'2006-02-15 21:30:53'),(12884,'2005-08-19 03:34:04',2768,348,'2005-08-28 01:00:04',2,'2006-02-15 21:30:53'),(12885,'2005-08-19 03:37:25',883,185,'2005-08-20 22:10:25',1,'2006-02-15 21:30:53'),(12886,'2005-08-19 03:38:32',2157,174,'2005-08-26 02:17:32',1,'2006-02-15 21:30:53'),(12887,'2005-08-19 03:38:54',1214,150,'2005-08-27 08:45:54',1,'2006-02-15 21:30:53'),(12888,'2005-08-19 03:41:09',4398,146,'2005-08-24 07:09:09',2,'2006-02-15 21:30:53'),(12889,'2005-08-19 03:41:31',4376,515,'2005-08-27 00:46:31',2,'2006-02-15 21:30:53'),(12890,'2005-08-19 03:42:08',3831,150,'2005-08-19 23:08:08',1,'2006-02-15 21:30:53'),(12891,'2006-02-14 15:16:03',2764,388,NULL,2,'2006-02-15 21:30:53'),(12892,'2005-08-19 03:46:34',1044,121,'2005-08-21 05:11:34',2,'2006-02-15 21:30:53'),(12893,'2005-08-19 03:46:43',168,498,'2005-08-20 08:38:43',2,'2006-02-15 21:30:53'),(12894,'2005-08-19 03:49:28',4581,541,'2005-08-25 01:51:28',2,'2006-02-15 21:30:53'),(12895,'2005-08-19 03:50:48',4372,396,'2005-08-26 09:13:48',1,'2006-02-15 21:30:53'),(12896,'2005-08-19 03:52:44',148,220,'2005-08-24 22:27:44',1,'2006-02-15 21:30:53'),(12897,'2006-02-14 15:16:03',1512,178,NULL,2,'2006-02-15 21:30:53'),(12898,'2005-08-19 03:54:34',1555,586,'2005-08-23 08:14:34',2,'2006-02-15 21:30:53'),(12899,'2005-08-19 04:03:34',830,105,'2005-08-20 08:34:34',2,'2006-02-15 21:30:53'),(12900,'2005-08-19 04:03:49',849,408,'2005-08-24 22:11:49',2,'2006-02-15 21:30:53'),(12901,'2006-02-14 15:16:03',2799,180,NULL,2,'2006-02-15 21:30:53'),(12902,'2006-02-14 15:16:03',464,91,NULL,2,'2006-02-15 21:30:53'),(12903,'2005-08-19 04:09:38',2340,302,'2005-08-26 03:24:38',2,'2006-02-15 21:30:53'),(12904,'2005-08-19 04:10:50',459,257,'2005-08-27 23:24:50',1,'2006-02-15 21:30:53'),(12905,'2005-08-19 04:13:37',1043,480,'2005-08-26 23:52:37',1,'2006-02-15 21:30:53'),(12906,'2005-08-19 04:13:43',2060,401,'2005-08-20 04:24:43',1,'2006-02-15 21:30:53'),(12907,'2005-08-19 04:16:13',2844,422,'2005-08-27 02:43:13',1,'2006-02-15 21:30:53'),(12908,'2005-08-19 04:19:05',175,340,'2005-08-25 09:50:05',1,'2006-02-15 21:30:53'),(12909,'2005-08-19 04:20:25',4300,210,'2005-08-24 06:40:25',2,'2006-02-15 21:30:53'),(12910,'2005-08-19 04:23:13',3968,128,'2005-08-20 22:27:13',1,'2006-02-15 21:30:53'),(12911,'2005-08-19 04:24:10',1770,367,'2005-08-26 00:35:10',2,'2006-02-15 21:30:53'),(12912,'2005-08-19 04:24:35',1747,364,'2005-08-27 07:13:35',2,'2006-02-15 21:30:53'),(12913,'2005-08-19 04:25:39',3719,356,'2005-08-25 07:23:39',1,'2006-02-15 21:30:53'),(12914,'2005-08-19 04:25:59',4396,501,'2005-08-23 08:04:59',2,'2006-02-15 21:30:53'),(12915,'2006-02-14 15:16:03',2651,516,NULL,1,'2006-02-15 21:30:53'),(12916,'2005-08-19 04:27:05',2277,157,'2005-08-21 02:33:05',2,'2006-02-15 21:30:53'),(12917,'2005-08-19 04:27:11',107,152,'2005-08-20 03:04:11',2,'2006-02-15 21:30:53'),(12918,'2005-08-19 04:31:36',972,13,'2005-08-25 05:50:36',1,'2006-02-15 21:30:53'),(12919,'2005-08-19 04:32:15',2121,263,'2005-08-24 05:56:15',2,'2006-02-15 21:30:53'),(12920,'2005-08-19 04:32:32',2516,511,'2005-08-27 00:44:32',2,'2006-02-15 21:30:53'),(12921,'2005-08-19 04:47:48',781,234,'2005-08-25 00:07:48',2,'2006-02-15 21:30:53'),(12922,'2005-08-19 04:48:48',342,25,'2005-08-23 23:32:48',1,'2006-02-15 21:30:53'),(12923,'2005-08-19 04:50:20',1390,531,'2005-08-22 10:42:20',1,'2006-02-15 21:30:53'),(12924,'2005-08-19 04:51:47',3807,519,'2005-08-26 07:50:47',1,'2006-02-15 21:30:53'),(12925,'2005-08-19 04:59:01',3361,57,'2005-08-27 02:03:01',2,'2006-02-15 21:30:53'),(12926,'2005-08-19 05:00:16',23,336,'2005-08-26 06:12:16',2,'2006-02-15 21:30:53'),(12927,'2005-08-19 05:02:46',1171,223,'2005-08-23 01:08:46',1,'2006-02-15 21:30:53'),(12928,'2005-08-19 05:04:09',4531,353,'2005-08-24 09:09:09',2,'2006-02-15 21:30:53'),(12929,'2005-08-19 05:05:23',1531,310,'2005-08-25 04:37:23',1,'2006-02-15 21:30:53'),(12930,'2005-08-19 05:11:32',4410,414,'2005-08-22 02:20:32',2,'2006-02-15 21:30:53'),(12931,'2005-08-19 05:11:47',3070,407,'2005-08-21 00:59:47',1,'2006-02-15 21:30:53'),(12932,'2005-08-19 05:17:30',2295,416,'2005-08-21 09:24:30',1,'2006-02-15 21:30:53'),(12933,'2005-08-19 05:18:20',4103,589,'2005-08-27 00:13:20',1,'2006-02-15 21:30:53'),(12934,'2005-08-19 05:18:42',3242,591,'2005-08-24 10:42:42',1,'2006-02-15 21:30:53'),(12935,'2005-08-19 05:20:25',193,279,'2005-08-21 03:10:25',2,'2006-02-15 21:30:53'),(12936,'2005-08-19 05:25:06',654,387,'2005-08-28 08:21:06',1,'2006-02-15 21:30:53'),(12937,'2005-08-19 05:25:30',3826,348,'2005-08-22 10:40:30',2,'2006-02-15 21:30:53'),(12938,'2006-02-14 15:16:03',3987,28,NULL,1,'2006-02-15 21:30:53'),(12939,'2005-08-19 05:38:25',3375,181,'2005-08-23 23:52:25',1,'2006-02-15 21:30:53'),(12940,'2005-08-19 05:38:29',2222,340,'2005-08-20 08:15:29',1,'2006-02-15 21:30:53'),(12941,'2005-08-19 05:39:26',2951,195,'2005-08-22 09:50:26',2,'2006-02-15 21:30:53'),(12942,'2005-08-19 05:40:36',3938,103,'2005-08-27 02:04:36',1,'2006-02-15 21:30:53'),(12943,'2005-08-19 05:46:26',3930,547,'2005-08-22 03:26:26',2,'2006-02-15 21:30:53'),(12944,'2005-08-19 05:48:12',2956,148,'2005-08-28 10:10:12',1,'2006-02-15 21:30:53'),(12945,'2005-08-19 05:51:46',3638,312,'2005-08-23 11:22:46',2,'2006-02-15 21:30:53'),(12946,'2005-08-19 05:53:34',2066,444,'2005-08-20 07:30:34',1,'2006-02-15 21:30:53'),(12947,'2005-08-19 05:54:21',935,499,'2005-08-22 09:17:21',1,'2006-02-15 21:30:53'),(12948,'2005-08-19 05:55:14',4173,442,'2005-08-22 01:05:14',2,'2006-02-15 21:30:53'),(12949,'2005-08-19 05:55:52',4209,279,'2005-08-23 00:01:52',1,'2006-02-15 21:30:53'),(12950,'2005-08-19 05:55:58',1064,463,'2005-08-23 08:05:58',1,'2006-02-15 21:30:53'),(12951,'2005-08-19 05:56:44',2143,70,'2005-08-24 11:28:44',2,'2006-02-15 21:30:53'),(12952,'2005-08-19 06:00:52',2460,228,'2005-08-20 02:17:52',1,'2006-02-15 21:30:53'),(12953,'2005-08-19 06:04:07',3954,429,'2005-08-28 11:05:07',1,'2006-02-15 21:30:53'),(12954,'2005-08-19 06:04:34',3592,63,'2005-08-28 02:12:34',2,'2006-02-15 21:30:53'),(12955,'2005-08-19 06:05:58',2040,410,'2005-08-26 04:24:58',2,'2006-02-15 21:30:53'),(12956,'2005-08-19 06:06:26',3613,241,'2005-08-28 08:37:26',2,'2006-02-15 21:30:53'),(12957,'2005-08-19 06:12:44',2219,512,'2005-08-28 10:49:44',2,'2006-02-15 21:30:53'),(12958,'2005-08-19 06:19:21',4214,569,'2005-08-20 02:21:21',1,'2006-02-15 21:30:53'),(12959,'2006-02-14 15:16:03',1540,284,NULL,2,'2006-02-15 21:30:53'),(12960,'2005-08-19 06:21:52',3498,152,'2005-08-25 04:16:52',1,'2006-02-15 21:30:53'),(12961,'2005-08-19 06:22:37',4529,386,'2005-08-23 00:49:37',1,'2006-02-15 21:30:53'),(12962,'2005-08-19 06:22:48',575,171,'2005-08-27 07:47:48',1,'2006-02-15 21:30:53'),(12963,'2005-08-19 06:26:04',1521,2,'2005-08-23 11:37:04',2,'2006-02-15 21:30:53'),(12964,'2005-08-19 06:29:13',2854,142,'2005-08-22 12:23:13',2,'2006-02-15 21:30:53'),(12965,'2005-08-19 06:33:00',4308,430,'2005-08-22 02:02:00',1,'2006-02-15 21:30:53'),(12966,'2005-08-19 06:37:48',3196,69,'2005-08-26 03:59:48',2,'2006-02-15 21:30:53'),(12967,'2005-08-19 06:37:51',3404,170,'2005-08-25 06:58:51',2,'2006-02-15 21:30:53'),(12968,'2005-08-19 06:38:18',3108,166,'2005-08-20 08:29:18',1,'2006-02-15 21:30:53'),(12969,'2005-08-19 06:38:59',191,224,'2005-08-25 09:09:59',2,'2006-02-15 21:30:53'),(12970,'2006-02-14 15:16:03',3999,216,NULL,1,'2006-02-15 21:30:53'),(12971,'2005-08-19 06:42:43',3504,492,'2005-08-23 10:49:43',2,'2006-02-15 21:30:53'),(12972,'2005-08-19 06:43:28',1218,55,'2005-08-27 11:30:28',1,'2006-02-15 21:30:53'),(12973,'2005-08-19 06:48:11',128,163,'2005-08-22 07:18:11',2,'2006-02-15 21:30:53'),(12974,'2005-08-19 06:51:02',3599,218,'2005-08-25 11:48:02',2,'2006-02-15 21:30:53'),(12975,'2005-08-19 06:51:19',3300,236,'2005-08-25 04:22:19',1,'2006-02-15 21:30:53'),(12976,'2005-08-19 06:52:58',66,592,'2005-08-26 11:23:58',2,'2006-02-15 21:30:53'),(12977,'2005-08-19 06:55:33',2004,388,'2005-08-27 07:38:33',2,'2006-02-15 21:30:53'),(12978,'2005-08-19 06:57:27',3252,167,'2005-08-20 09:10:27',2,'2006-02-15 21:30:53'),(12979,'2005-08-19 07:00:35',1227,267,'2005-08-21 06:12:35',2,'2006-02-15 21:30:53'),(12980,'2005-08-19 07:03:14',1854,144,'2005-08-26 05:07:14',1,'2006-02-15 21:30:53'),(12981,'2005-08-19 07:04:00',3925,481,'2005-08-21 09:17:00',1,'2006-02-15 21:30:53'),(12982,'2005-08-19 07:06:34',1258,44,'2005-08-21 06:53:34',1,'2006-02-15 21:30:53'),(12983,'2005-08-19 07:06:51',406,148,'2005-08-28 10:35:51',2,'2006-02-15 21:30:53'),(12984,'2005-08-19 07:06:51',4211,537,'2005-08-22 04:04:51',1,'2006-02-15 21:30:53'),(12985,'2005-08-19 07:08:05',4133,83,'2005-08-24 02:25:05',1,'2006-02-15 21:30:53'),(12986,'2005-08-19 07:09:36',1145,210,'2005-08-22 05:01:36',1,'2006-02-15 21:30:53'),(12987,'2005-08-19 07:11:44',3665,134,'2005-08-20 04:17:44',1,'2006-02-15 21:30:53'),(12988,'2006-02-14 15:16:03',81,236,NULL,2,'2006-02-15 21:30:53'),(12989,'2005-08-19 07:19:04',2929,306,'2005-08-21 10:58:04',1,'2006-02-15 21:30:53'),(12990,'2005-08-19 07:20:39',1825,360,'2005-08-21 12:31:39',2,'2006-02-15 21:30:53'),(12991,'2005-08-19 07:21:24',2227,126,'2005-08-21 04:31:24',2,'2006-02-15 21:30:53'),(12992,'2005-08-19 07:23:06',3022,597,'2005-08-23 06:11:06',2,'2006-02-15 21:30:53'),(12993,'2005-08-19 07:24:03',4225,484,'2005-08-26 07:15:03',2,'2006-02-15 21:30:53'),(12994,'2005-08-19 07:26:10',3809,506,'2005-08-20 07:02:10',2,'2006-02-15 21:30:53'),(12995,'2005-08-19 07:26:30',2069,566,'2005-08-25 12:47:30',2,'2006-02-15 21:30:53'),(12996,'2005-08-19 07:31:32',4445,380,'2005-08-25 11:59:32',1,'2006-02-15 21:30:53'),(12997,'2005-08-19 07:31:46',1661,311,'2005-08-24 09:20:46',2,'2006-02-15 21:30:53'),(12998,'2005-08-19 07:32:16',2301,354,'2005-08-24 01:56:16',2,'2006-02-15 21:30:53'),(12999,'2005-08-19 07:34:53',661,24,'2005-08-26 03:57:53',1,'2006-02-15 21:30:53'),(13000,'2005-08-19 07:36:42',2341,141,'2005-08-22 08:50:42',1,'2006-02-15 21:30:53'),(13001,'2005-08-19 07:36:44',2505,254,'2005-08-22 13:06:44',1,'2006-02-15 21:30:53'),(13002,'2005-08-19 07:37:58',3892,477,'2005-08-26 11:32:58',2,'2006-02-15 21:30:53'),(13003,'2005-08-19 07:39:29',3431,451,'2005-08-23 05:48:29',2,'2006-02-15 21:30:53'),(13004,'2005-08-19 07:40:08',771,442,'2005-08-20 11:49:08',1,'2006-02-15 21:30:53'),(13005,'2005-08-19 07:45:42',3417,104,'2005-08-20 12:45:42',2,'2006-02-15 21:30:53'),(13006,'2005-08-19 07:47:16',3157,134,'2005-08-21 06:17:16',1,'2006-02-15 21:30:53'),(13007,'2005-08-19 07:47:43',4280,430,'2005-08-26 02:48:43',2,'2006-02-15 21:30:53'),(13008,'2006-02-14 15:16:03',1838,181,NULL,1,'2006-02-15 21:30:53'),(13009,'2005-08-19 07:50:35',677,376,'2005-08-21 06:04:35',1,'2006-02-15 21:30:53'),(13010,'2005-08-19 07:52:21',825,413,'2005-08-27 12:51:21',1,'2006-02-15 21:30:53'),(13011,'2005-08-19 07:53:58',1998,529,'2005-08-24 12:00:58',1,'2006-02-15 21:30:53'),(13012,'2005-08-19 07:54:59',1690,145,'2005-08-26 09:50:59',2,'2006-02-15 21:30:53'),(13013,'2005-08-19 07:55:51',841,293,'2005-08-26 05:14:51',1,'2006-02-15 21:30:53'),(13014,'2005-08-19 07:56:08',3400,344,'2005-08-21 10:20:08',2,'2006-02-15 21:30:53'),(13015,'2005-08-19 07:56:51',3461,126,'2005-08-28 07:05:51',2,'2006-02-15 21:30:53'),(13016,'2005-08-19 07:57:14',3095,175,'2005-08-23 03:29:14',1,'2006-02-15 21:30:53'),(13017,'2005-08-19 08:02:24',2160,104,'2005-08-26 07:32:24',1,'2006-02-15 21:30:53'),(13018,'2005-08-19 08:04:50',2122,168,'2005-08-26 11:46:50',1,'2006-02-15 21:30:53'),(13019,'2005-08-19 08:07:43',2827,597,'2005-08-20 12:09:43',2,'2006-02-15 21:30:53'),(13020,'2005-08-19 08:07:50',4501,92,'2005-08-28 11:42:50',1,'2006-02-15 21:30:53'),(13021,'2005-08-19 08:08:04',1242,309,'2005-08-26 12:04:04',2,'2006-02-15 21:30:53'),(13022,'2006-02-14 15:16:03',2266,336,NULL,2,'2006-02-15 21:30:53'),(13023,'2005-08-19 08:13:54',1566,69,'2005-08-27 13:18:54',1,'2006-02-15 21:30:53'),(13024,'2005-08-19 08:19:21',2917,401,'2005-08-27 05:18:21',1,'2006-02-15 21:30:53'),(13025,'2006-02-14 15:16:03',4066,269,NULL,1,'2006-02-15 21:30:53'),(13026,'2005-08-19 08:22:45',3026,79,'2005-08-21 09:31:45',1,'2006-02-15 21:30:53'),(13027,'2005-08-19 08:25:16',3756,128,'2005-08-25 13:42:16',1,'2006-02-15 21:30:53'),(13028,'2005-08-19 08:27:23',2165,371,'2005-08-24 03:46:23',1,'2006-02-15 21:30:53'),(13029,'2005-08-19 08:28:04',3283,293,'2005-08-22 12:25:04',2,'2006-02-15 21:30:53'),(13030,'2005-08-19 08:28:11',2614,240,'2005-08-24 07:20:11',1,'2006-02-15 21:30:53'),(13031,'2005-08-19 08:30:04',1525,567,'2005-08-23 09:35:04',2,'2006-02-15 21:30:53'),(13032,'2005-08-19 08:31:50',3699,82,'2005-08-23 04:00:50',2,'2006-02-15 21:30:53'),(13033,'2005-08-19 08:34:39',1682,344,'2005-08-28 10:13:39',1,'2006-02-15 21:30:53'),(13034,'2005-08-19 08:41:29',990,387,'2005-08-20 07:36:29',2,'2006-02-15 21:30:53'),(13035,'2005-08-19 08:46:45',4082,135,'2005-08-22 11:42:45',1,'2006-02-15 21:30:53'),(13036,'2005-08-19 08:48:37',1469,20,'2005-08-22 04:13:37',2,'2006-02-15 21:30:53'),(13037,'2005-08-19 08:53:57',65,275,'2005-08-28 08:56:57',2,'2006-02-15 21:30:53'),(13038,'2005-08-19 08:55:16',2226,532,'2005-08-25 12:23:16',2,'2006-02-15 21:30:53'),(13039,'2005-08-19 08:55:19',1952,370,'2005-08-20 07:39:19',2,'2006-02-15 21:30:53'),(13040,'2005-08-19 09:04:24',4113,425,'2005-08-23 12:36:24',2,'2006-02-15 21:30:53'),(13041,'2005-08-19 09:05:38',1576,462,'2005-08-27 06:34:38',1,'2006-02-15 21:30:53'),(13042,'2005-08-19 09:06:08',1047,414,'2005-08-22 13:46:08',2,'2006-02-15 21:30:53'),(13043,'2005-08-19 09:07:13',24,127,'2005-08-27 07:49:13',1,'2006-02-15 21:30:53'),(13044,'2005-08-19 09:14:31',809,142,'2005-08-20 11:16:31',1,'2006-02-15 21:30:53'),(13045,'2005-08-19 09:17:35',389,254,'2005-08-23 12:04:35',1,'2006-02-15 21:30:53'),(13046,'2005-08-19 09:21:10',965,37,'2005-08-26 13:00:10',2,'2006-02-15 21:30:53'),(13047,'2005-08-19 09:24:49',2704,394,'2005-08-24 11:06:49',2,'2006-02-15 21:30:53'),(13048,'2005-08-19 09:25:06',1029,486,'2005-08-28 11:18:06',2,'2006-02-15 21:30:53'),(13049,'2005-08-19 09:25:40',4122,53,'2005-08-27 10:19:40',2,'2006-02-15 21:30:53'),(13050,'2005-08-19 09:31:23',3682,131,'2005-08-26 06:56:23',2,'2006-02-15 21:30:53'),(13051,'2005-08-19 09:31:33',4064,90,'2005-08-28 06:15:33',1,'2006-02-15 21:30:53'),(13052,'2005-08-19 09:31:42',3036,502,'2005-08-28 15:11:42',2,'2006-02-15 21:30:53'),(13053,'2005-08-19 09:31:48',2044,140,'2005-08-28 07:51:48',2,'2006-02-15 21:30:53'),(13054,'2005-08-19 09:34:02',2983,325,'2005-08-23 05:25:02',2,'2006-02-15 21:30:53'),(13055,'2005-08-19 09:36:28',3580,485,'2005-08-24 05:53:28',2,'2006-02-15 21:30:53'),(13056,'2006-02-14 15:16:03',3751,115,NULL,2,'2006-02-15 21:30:53'),(13057,'2005-08-19 09:40:05',876,105,'2005-08-28 13:22:05',2,'2006-02-15 21:30:53'),(13058,'2005-08-19 09:40:53',2437,24,'2005-08-26 05:48:53',2,'2006-02-15 21:30:53'),(13059,'2005-08-19 09:42:01',3810,341,'2005-08-21 12:07:01',1,'2006-02-15 21:30:53'),(13060,'2005-08-19 09:43:25',507,22,'2005-08-28 15:22:25',1,'2006-02-15 21:30:53'),(13061,'2005-08-19 09:43:39',730,576,'2005-08-24 10:03:39',1,'2006-02-15 21:30:53'),(13062,'2005-08-19 09:44:17',1790,385,'2005-08-27 11:42:17',1,'2006-02-15 21:30:53'),(13063,'2005-08-19 09:45:41',1192,5,'2005-08-24 09:11:41',2,'2006-02-15 21:30:53'),(13064,'2005-08-19 09:46:53',4131,588,'2005-08-21 08:29:53',1,'2006-02-15 21:30:53'),(13065,'2005-08-19 09:48:52',1887,518,'2005-08-22 07:12:52',1,'2006-02-15 21:30:53'),(13066,'2005-08-19 09:50:39',3730,336,'2005-08-22 14:01:39',1,'2006-02-15 21:30:53'),(13067,'2005-08-19 09:51:17',3825,172,'2005-08-25 09:58:17',2,'2006-02-15 21:30:53'),(13068,'2005-08-19 09:55:16',3019,1,'2005-08-20 14:44:16',2,'2006-02-15 21:30:53'),(13069,'2005-08-19 09:55:20',368,299,'2005-08-24 04:10:20',2,'2006-02-15 21:30:53'),(13070,'2005-08-19 09:56:23',2214,235,'2005-08-24 09:08:23',2,'2006-02-15 21:30:53'),(13071,'2005-08-19 10:01:07',527,578,'2005-08-26 14:26:07',1,'2006-02-15 21:30:53'),(13072,'2005-08-19 10:03:30',2313,447,'2005-08-22 14:27:30',2,'2006-02-15 21:30:53'),(13073,'2005-08-19 10:05:38',855,506,'2005-08-26 07:37:38',2,'2006-02-15 21:30:53'),(13074,'2005-08-19 10:06:53',3266,341,'2005-08-28 09:56:53',2,'2006-02-15 21:30:53'),(13075,'2005-08-19 10:10:10',4125,224,'2005-08-21 08:44:10',2,'2006-02-15 21:30:53'),(13076,'2005-08-19 10:10:26',1226,201,'2005-08-22 05:41:26',1,'2006-02-15 21:30:53'),(13077,'2005-08-19 10:15:19',433,241,'2005-08-21 06:51:19',2,'2006-02-15 21:30:53'),(13078,'2005-08-19 10:16:43',4104,479,'2005-08-27 11:35:43',2,'2006-02-15 21:30:53'),(13079,'2006-02-14 15:16:03',733,107,NULL,1,'2006-02-15 21:30:53'),(13080,'2005-08-19 10:18:00',4222,452,'2005-08-22 06:37:00',2,'2006-02-15 21:30:53'),(13081,'2005-08-19 10:19:06',3077,170,'2005-08-20 05:49:06',1,'2006-02-15 21:30:53'),(13082,'2005-08-19 10:19:19',2117,387,'2005-08-28 05:02:19',1,'2006-02-15 21:30:53'),(13083,'2005-08-19 10:26:45',3469,455,'2005-08-23 05:31:45',2,'2006-02-15 21:30:53'),(13084,'2005-08-19 10:27:25',3792,204,'2005-08-26 07:32:25',2,'2006-02-15 21:30:53'),(13085,'2005-08-19 10:28:22',360,215,'2005-08-22 07:37:22',2,'2006-02-15 21:30:53'),(13086,'2005-08-19 10:32:28',3712,350,'2005-08-26 07:57:28',2,'2006-02-15 21:30:53'),(13087,'2005-08-19 10:33:52',2693,171,'2005-08-27 09:15:52',2,'2006-02-15 21:30:53'),(13088,'2005-08-19 10:36:11',4281,457,'2005-08-21 09:12:11',1,'2006-02-15 21:30:53'),(13089,'2005-08-19 10:38:56',1783,63,'2005-08-24 12:41:56',1,'2006-02-15 21:30:53'),(13090,'2005-08-19 10:39:54',1447,52,'2005-08-28 10:31:54',1,'2006-02-15 21:30:53'),(13091,'2005-08-19 10:40:10',1815,127,'2005-08-23 09:03:10',1,'2006-02-15 21:30:53'),(13092,'2005-08-19 10:41:09',4359,480,'2005-08-25 05:11:09',2,'2006-02-15 21:30:53'),(13093,'2005-08-19 10:46:16',1667,160,'2005-08-26 08:05:16',1,'2006-02-15 21:30:53'),(13094,'2005-08-19 10:47:58',3178,494,'2005-08-21 06:20:58',1,'2006-02-15 21:30:53'),(13095,'2005-08-19 10:48:10',520,508,'2005-08-28 06:15:10',1,'2006-02-15 21:30:53'),(13096,'2005-08-19 10:49:03',420,13,'2005-08-21 05:33:03',1,'2006-02-15 21:30:53'),(13097,'2005-08-19 10:50:43',4194,157,'2005-08-24 11:10:43',2,'2006-02-15 21:30:53'),(13098,'2005-08-19 10:51:59',3770,51,'2005-08-24 11:27:59',1,'2006-02-15 21:30:53'),(13099,'2005-08-19 10:55:19',969,436,'2005-08-27 10:54:19',1,'2006-02-15 21:30:53'),(13100,'2005-08-19 10:55:45',916,451,'2005-08-25 12:28:45',1,'2006-02-15 21:30:53'),(13101,'2005-08-19 11:01:54',1804,39,'2005-08-27 16:06:54',2,'2006-02-15 21:30:53'),(13102,'2005-08-19 11:02:03',2885,285,'2005-08-28 13:05:03',2,'2006-02-15 21:30:53'),(13103,'2005-08-19 11:05:51',1751,274,'2005-08-26 09:16:51',2,'2006-02-15 21:30:53'),(13104,'2005-08-19 11:06:06',310,591,'2005-08-21 13:50:06',2,'2006-02-15 21:30:53'),(13105,'2005-08-19 11:06:16',729,279,'2005-08-27 15:21:16',1,'2006-02-15 21:30:53'),(13106,'2006-02-14 15:16:03',3212,440,NULL,1,'2006-02-15 21:30:53'),(13107,'2005-08-19 11:13:58',3870,356,'2005-08-20 15:03:58',2,'2006-02-15 21:30:53'),(13108,'2006-02-14 15:16:03',3630,73,NULL,1,'2006-02-15 21:30:53'),(13109,'2005-08-19 11:23:20',46,259,'2005-08-25 17:05:20',1,'2006-02-15 21:30:53'),(13110,'2005-08-19 11:24:37',62,447,'2005-08-21 05:48:37',1,'2006-02-15 21:30:53'),(13111,'2005-08-19 11:25:10',580,26,'2005-08-21 05:52:10',2,'2006-02-15 21:30:53'),(13112,'2005-08-19 11:27:10',2074,259,'2005-08-22 05:32:10',1,'2006-02-15 21:30:53'),(13113,'2005-08-19 11:27:20',2393,573,'2005-08-23 12:40:20',1,'2006-02-15 21:30:53'),(13114,'2005-08-19 11:27:32',4342,550,'2005-08-28 11:21:32',2,'2006-02-15 21:30:53'),(13115,'2005-08-19 11:27:43',1961,84,'2005-08-20 10:58:43',1,'2006-02-15 21:30:53'),(13116,'2005-08-19 11:31:41',1544,150,'2005-08-27 16:05:41',1,'2006-02-15 21:30:53'),(13117,'2005-08-19 11:33:20',3430,385,'2005-08-20 11:55:20',2,'2006-02-15 21:30:53'),(13118,'2005-08-19 11:39:58',470,181,'2005-08-25 14:44:58',1,'2006-02-15 21:30:53'),(13119,'2005-08-19 11:44:59',1401,240,'2005-08-20 12:30:59',2,'2006-02-15 21:30:53'),(13120,'2005-08-19 11:47:38',2273,314,'2005-08-26 08:20:38',2,'2006-02-15 21:30:53'),(13121,'2005-08-19 11:51:39',3517,251,'2005-08-22 11:50:39',2,'2006-02-15 21:30:53'),(13122,'2005-08-19 11:53:49',3319,277,'2005-08-26 16:01:49',2,'2006-02-15 21:30:53'),(13123,'2005-08-19 11:55:13',2804,220,'2005-08-21 05:55:13',2,'2006-02-15 21:30:53'),(13124,'2005-08-19 11:55:59',2105,78,'2005-08-26 06:01:59',2,'2006-02-15 21:30:53'),(13125,'2005-08-19 11:57:49',3722,192,'2005-08-26 07:53:49',1,'2006-02-15 21:30:53'),(13126,'2005-08-19 12:00:28',1392,253,'2005-08-28 17:27:28',1,'2006-02-15 21:30:53'),(13127,'2005-08-19 12:04:03',2582,178,'2005-08-27 13:56:03',1,'2006-02-15 21:30:53'),(13128,'2005-08-19 12:04:16',485,206,'2005-08-26 16:06:16',2,'2006-02-15 21:30:53'),(13129,'2005-08-19 12:05:04',4455,274,'2005-08-26 10:24:04',1,'2006-02-15 21:30:53'),(13130,'2005-08-19 12:06:42',2006,254,'2005-08-23 12:08:42',1,'2006-02-15 21:30:53'),(13131,'2005-08-19 12:08:13',1466,480,'2005-08-27 13:43:13',2,'2006-02-15 21:30:53'),(13132,'2005-08-19 12:10:57',1748,529,'2005-08-27 12:22:57',2,'2006-02-15 21:30:53'),(13133,'2005-08-19 12:11:03',1635,523,'2005-08-28 12:36:03',2,'2006-02-15 21:30:53'),(13134,'2005-08-19 12:14:14',1354,184,'2005-08-20 11:52:14',1,'2006-02-15 21:30:53'),(13135,'2005-08-19 12:22:52',1585,361,'2005-08-21 14:04:52',2,'2006-02-15 21:30:53'),(13136,'2005-08-19 12:24:23',2532,50,'2005-08-28 08:37:23',2,'2006-02-15 21:30:53'),(13137,'2005-08-19 12:26:32',4431,20,'2005-08-22 13:26:32',1,'2006-02-15 21:30:53'),(13138,'2005-08-19 12:30:01',3138,214,'2005-08-21 06:35:01',2,'2006-02-15 21:30:53'),(13139,'2005-08-19 12:32:10',2099,554,'2005-08-24 12:12:10',1,'2006-02-15 21:30:53'),(13140,'2005-08-19 12:35:56',4210,323,'2005-08-27 18:24:56',2,'2006-02-15 21:30:53'),(13141,'2005-08-19 12:41:41',4545,376,'2005-08-21 08:17:41',2,'2006-02-15 21:30:53'),(13142,'2005-08-19 12:42:28',1404,269,'2005-08-26 14:52:28',1,'2006-02-15 21:30:53'),(13143,'2005-08-19 12:44:38',1655,371,'2005-08-25 10:59:38',2,'2006-02-15 21:30:53'),(13144,'2005-08-19 12:45:55',3766,456,'2005-08-27 10:37:55',2,'2006-02-15 21:30:53'),(13145,'2005-08-19 12:53:53',1383,72,'2005-08-23 08:06:53',1,'2006-02-15 21:30:53'),(13146,'2005-08-19 12:54:42',1463,116,'2005-08-26 07:31:42',1,'2006-02-15 21:30:53'),(13147,'2005-08-19 12:55:09',3490,37,'2005-08-22 18:10:09',1,'2006-02-15 21:30:53'),(13148,'2005-08-19 12:55:30',1762,137,'2005-08-21 11:01:30',1,'2006-02-15 21:30:53'),(13149,'2005-08-19 13:07:12',1436,40,'2005-08-28 18:12:12',1,'2006-02-15 21:30:53'),(13150,'2005-08-19 13:08:19',1514,457,'2005-08-25 18:00:19',1,'2006-02-15 21:30:53'),(13151,'2005-08-19 13:08:23',3045,16,'2005-08-20 12:38:23',2,'2006-02-15 21:30:53'),(13152,'2005-08-19 13:09:32',3571,597,'2005-08-25 14:47:32',1,'2006-02-15 21:30:53'),(13153,'2005-08-19 13:09:47',3896,431,'2005-08-23 17:35:47',2,'2006-02-15 21:30:53'),(13154,'2005-08-19 13:09:54',2465,255,'2005-08-26 16:40:54',1,'2006-02-15 21:30:53'),(13155,'2005-08-19 13:10:23',290,442,'2005-08-25 19:07:23',2,'2006-02-15 21:30:53'),(13156,'2005-08-19 13:10:42',770,512,'2005-08-25 15:08:42',2,'2006-02-15 21:30:53'),(13157,'2005-08-19 13:12:28',4391,592,'2005-08-20 10:41:28',1,'2006-02-15 21:30:53'),(13158,'2005-08-19 13:18:10',944,327,'2005-08-25 09:27:10',1,'2006-02-15 21:30:53'),(13159,'2005-08-19 13:19:59',2300,497,'2005-08-21 09:22:59',2,'2006-02-15 21:30:53'),(13160,'2005-08-19 13:21:04',410,484,'2005-08-22 18:49:04',1,'2006-02-15 21:30:53'),(13161,'2006-02-14 15:16:03',986,175,NULL,1,'2006-02-15 21:30:53'),(13162,'2005-08-19 13:28:26',1845,478,'2005-08-24 17:37:26',1,'2006-02-15 21:30:53'),(13163,'2005-08-19 13:29:46',3068,57,'2005-08-22 07:48:46',2,'2006-02-15 21:30:53'),(13164,'2005-08-19 13:30:55',1104,145,'2005-08-26 10:12:55',2,'2006-02-15 21:30:53'),(13165,'2005-08-19 13:34:10',138,289,'2005-08-21 18:33:10',2,'2006-02-15 21:30:53'),(13166,'2005-08-19 13:36:28',4386,504,'2005-08-22 07:57:28',1,'2006-02-15 21:30:53'),(13167,'2005-08-19 13:36:41',557,120,'2005-08-23 15:29:41',2,'2006-02-15 21:30:53'),(13168,'2005-08-19 13:37:28',2210,186,'2005-08-27 17:54:28',2,'2006-02-15 21:30:53'),(13169,'2005-08-19 13:43:35',1709,141,'2005-08-26 09:31:35',1,'2006-02-15 21:30:53'),(13170,'2005-08-19 13:45:48',1072,176,'2005-08-27 11:00:48',2,'2006-02-15 21:30:53'),(13171,'2005-08-19 13:48:54',1765,122,'2005-08-27 18:57:54',1,'2006-02-15 21:30:53'),(13172,'2005-08-19 13:49:07',1301,298,'2005-08-20 19:39:07',2,'2006-02-15 21:30:53'),(13173,'2005-08-19 13:50:36',1304,29,'2005-08-26 12:34:36',2,'2006-02-15 21:30:53'),(13174,'2005-08-19 13:52:50',2303,482,'2005-08-22 14:43:50',2,'2006-02-15 21:30:53'),(13175,'2005-08-19 13:54:53',3187,239,'2005-08-20 16:25:53',2,'2006-02-15 21:30:53'),(13176,'2005-08-19 13:56:54',2269,1,'2005-08-23 08:50:54',2,'2006-02-15 21:30:53'),(13177,'2005-08-19 13:56:58',3172,126,'2005-08-23 13:13:58',2,'2006-02-15 21:30:53'),(13178,'2006-02-14 15:16:03',693,394,NULL,1,'2006-02-15 21:30:53'),(13179,'2005-08-19 13:59:53',1624,104,'2005-08-25 12:10:53',1,'2006-02-15 21:30:53'),(13180,'2005-08-19 14:00:38',3443,322,'2005-08-20 09:56:38',1,'2006-02-15 21:30:53'),(13181,'2005-08-19 14:00:56',1256,128,'2005-08-24 13:52:56',2,'2006-02-15 21:30:53'),(13182,'2006-02-14 15:16:03',364,496,NULL,2,'2006-02-15 21:30:53'),(13183,'2005-08-19 14:09:26',2404,301,'2005-08-28 08:44:26',2,'2006-02-15 21:30:53'),(13184,'2005-08-19 14:16:18',4395,393,'2005-08-20 08:44:18',1,'2006-02-15 21:30:53'),(13185,'2005-08-19 14:22:30',241,174,'2005-08-20 10:13:30',2,'2006-02-15 21:30:53'),(13186,'2005-08-19 14:23:19',2802,176,'2005-08-28 11:26:19',1,'2006-02-15 21:30:53'),(13187,'2005-08-19 14:24:48',1944,543,'2005-08-20 19:37:48',1,'2006-02-15 21:30:53'),(13188,'2005-08-19 14:27:03',583,472,'2005-08-28 09:15:03',2,'2006-02-15 21:30:53'),(13189,'2005-08-19 14:27:16',3444,368,'2005-08-28 10:34:16',1,'2006-02-15 21:30:53'),(13190,'2005-08-19 14:27:59',4316,290,'2005-08-26 13:45:59',1,'2006-02-15 21:30:53'),(13191,'2005-08-19 14:28:48',2753,371,'2005-08-23 12:53:48',2,'2006-02-15 21:30:53'),(13192,'2005-08-19 14:30:06',966,532,'2005-08-27 15:20:06',1,'2006-02-15 21:30:53'),(13193,'2005-08-19 14:33:45',523,118,'2005-08-28 08:46:45',2,'2006-02-15 21:30:53'),(13194,'2005-08-19 14:34:12',2473,58,'2005-08-26 10:18:12',2,'2006-02-15 21:30:53'),(13195,'2005-08-19 14:39:14',2537,565,'2005-08-24 10:30:14',2,'2006-02-15 21:30:53'),(13196,'2005-08-19 14:40:32',458,202,'2005-08-26 18:15:32',2,'2006-02-15 21:30:53'),(13197,'2005-08-19 14:44:03',3190,358,'2005-08-22 10:11:03',1,'2006-02-15 21:30:53'),(13198,'2005-08-19 14:47:18',4273,169,'2005-08-21 18:09:18',2,'2006-02-15 21:30:53'),(13199,'2005-08-19 14:53:22',4291,339,'2005-08-27 19:03:22',2,'2006-02-15 21:30:53'),(13200,'2005-08-19 14:55:58',2746,577,'2005-08-27 11:35:58',2,'2006-02-15 21:30:53'),(13201,'2005-08-19 14:56:05',111,508,'2005-08-25 14:37:05',1,'2006-02-15 21:30:53'),(13202,'2005-08-19 14:58:30',3546,381,'2005-08-27 17:10:30',1,'2006-02-15 21:30:53'),(13203,'2005-08-19 15:00:58',804,257,'2005-08-27 15:38:58',2,'2006-02-15 21:30:53'),(13204,'2005-08-19 15:02:48',4524,152,'2005-08-24 18:07:48',1,'2006-02-15 21:30:53'),(13205,'2005-08-19 15:05:26',2616,495,'2005-08-25 10:41:26',2,'2006-02-15 21:30:53'),(13206,'2005-08-19 15:05:34',2477,504,'2005-08-21 20:37:34',2,'2006-02-15 21:30:53'),(13207,'2005-08-19 15:14:38',674,58,'2005-08-27 16:09:38',1,'2006-02-15 21:30:53'),(13208,'2005-08-19 15:18:55',609,435,'2005-08-24 11:59:55',1,'2006-02-15 21:30:53'),(13209,'2006-02-14 15:16:03',1574,5,NULL,2,'2006-02-15 21:30:53'),(13210,'2005-08-19 15:23:38',2789,487,'2005-08-21 11:57:38',1,'2006-02-15 21:30:53'),(13211,'2005-08-19 15:23:41',1968,289,'2005-08-22 16:58:41',1,'2006-02-15 21:30:53'),(13212,'2005-08-19 15:24:07',3691,158,'2005-08-24 21:03:07',1,'2006-02-15 21:30:53'),(13213,'2005-08-19 15:25:48',1546,13,'2005-08-22 09:32:48',1,'2006-02-15 21:30:53'),(13214,'2005-08-19 15:31:06',2675,157,'2005-08-20 19:58:06',2,'2006-02-15 21:30:53'),(13215,'2005-08-19 15:35:38',3740,460,'2005-08-27 12:16:38',1,'2006-02-15 21:30:53'),(13216,'2005-08-19 15:36:05',4335,422,'2005-08-25 19:03:05',2,'2006-02-15 21:30:53'),(13217,'2005-08-19 15:38:39',616,565,'2005-08-21 14:33:39',1,'2006-02-15 21:30:53'),(13218,'2005-08-19 15:39:39',4148,257,'2005-08-22 17:28:39',1,'2006-02-15 21:30:53'),(13219,'2005-08-19 15:40:28',2075,288,'2005-08-22 21:20:28',2,'2006-02-15 21:30:53'),(13220,'2005-08-19 15:42:32',1017,448,'2005-08-25 13:37:32',1,'2006-02-15 21:30:53'),(13221,'2005-08-19 15:45:47',120,468,'2005-08-26 21:10:47',1,'2006-02-15 21:30:53'),(13222,'2005-08-19 15:47:58',1656,91,'2005-08-26 12:43:58',1,'2006-02-15 21:30:53'),(13223,'2005-08-19 15:52:04',332,461,'2005-08-22 16:27:04',1,'2006-02-15 21:30:53'),(13224,'2005-08-19 15:52:13',3086,526,'2005-08-28 20:53:13',2,'2006-02-15 21:30:53'),(13225,'2005-08-19 15:54:33',1420,562,'2005-08-25 16:40:33',1,'2006-02-15 21:30:53'),(13226,'2005-08-19 16:05:36',2850,46,'2005-08-21 10:07:36',2,'2006-02-15 21:30:53'),(13227,'2005-08-19 16:05:38',2759,288,'2005-08-20 21:39:38',1,'2006-02-15 21:30:53'),(13228,'2005-08-19 16:08:16',2497,571,'2005-08-20 18:55:16',1,'2006-02-15 21:30:53'),(13229,'2005-08-19 16:08:33',634,283,'2005-08-22 19:54:33',2,'2006-02-15 21:30:53'),(13230,'2005-08-19 16:12:07',3645,151,'2005-08-21 12:19:07',1,'2006-02-15 21:30:53'),(13231,'2005-08-19 16:12:49',2126,280,'2005-08-27 17:14:49',2,'2006-02-15 21:30:53'),(13232,'2005-08-19 16:13:32',2370,206,'2005-08-28 14:42:32',2,'2006-02-15 21:30:53'),(13233,'2005-08-19 16:14:41',1057,279,'2005-08-24 21:13:41',1,'2006-02-15 21:30:53'),(13234,'2005-08-19 16:17:15',976,559,'2005-08-27 12:36:15',1,'2006-02-15 21:30:53'),(13235,'2005-08-19 16:17:53',3902,367,'2005-08-27 14:57:53',1,'2006-02-15 21:30:53'),(13236,'2005-08-19 16:18:24',4574,267,'2005-08-27 17:48:24',2,'2006-02-15 21:30:53'),(13237,'2005-08-19 16:18:36',1272,169,'2005-08-25 15:22:36',2,'2006-02-15 21:30:53'),(13238,'2005-08-19 16:20:56',985,348,'2005-08-23 15:51:56',2,'2006-02-15 21:30:53'),(13239,'2005-08-19 16:22:13',3296,541,'2005-08-23 19:26:13',1,'2006-02-15 21:30:53'),(13240,'2005-08-19 16:22:14',1411,179,'2005-08-20 13:24:14',1,'2006-02-15 21:30:53'),(13241,'2005-08-19 16:25:00',3106,33,'2005-08-26 12:27:00',2,'2006-02-15 21:30:53'),(13242,'2005-08-19 16:28:47',230,414,'2005-08-24 22:13:47',2,'2006-02-15 21:30:53'),(13243,'2005-08-19 16:33:16',355,251,'2005-08-25 13:19:16',2,'2006-02-15 21:30:53'),(13244,'2005-08-19 16:43:04',3246,298,'2005-08-22 15:21:04',2,'2006-02-15 21:30:53'),(13245,'2005-08-19 16:43:41',1001,261,'2005-08-20 21:17:41',1,'2006-02-15 21:30:53'),(13246,'2006-02-14 15:16:03',1849,411,NULL,2,'2006-02-15 21:30:53'),(13247,'2005-08-19 16:45:59',1271,24,'2005-08-25 15:25:59',1,'2006-02-15 21:30:53'),(13248,'2005-08-19 16:47:41',2864,559,'2005-08-28 18:11:41',2,'2006-02-15 21:30:53'),(13249,'2005-08-19 16:47:41',3084,377,'2005-08-20 13:30:41',1,'2006-02-15 21:30:53'),(13250,'2005-08-19 16:47:55',2524,448,'2005-08-26 16:54:55',2,'2006-02-15 21:30:53'),(13251,'2005-08-19 16:48:37',4216,111,'2005-08-20 16:33:37',1,'2006-02-15 21:30:53'),(13252,'2005-08-19 16:50:50',775,451,'2005-08-22 22:09:50',2,'2006-02-15 21:30:53'),(13253,'2005-08-19 16:53:56',472,399,'2005-08-20 11:38:56',2,'2006-02-15 21:30:53'),(13254,'2005-08-19 16:54:01',3412,532,'2005-08-27 19:50:01',2,'2006-02-15 21:30:53'),(13255,'2005-08-19 16:54:12',1101,150,'2005-08-28 17:00:12',1,'2006-02-15 21:30:53'),(13256,'2005-08-19 16:54:12',2719,289,'2005-08-28 16:54:12',1,'2006-02-15 21:30:53'),(13257,'2005-08-19 17:01:20',164,300,'2005-08-24 17:26:20',1,'2006-02-15 21:30:53'),(13258,'2005-08-19 17:05:37',2246,349,'2005-08-24 17:36:37',2,'2006-02-15 21:30:53'),(13259,'2005-08-19 17:08:53',2518,458,'2005-08-23 14:14:53',1,'2006-02-15 21:30:53'),(13260,'2005-08-19 17:09:22',578,251,'2005-08-24 21:31:22',2,'2006-02-15 21:30:53'),(13261,'2006-02-14 15:16:03',3538,417,NULL,1,'2006-02-15 21:30:53'),(13262,'2005-08-19 17:20:15',4483,184,'2005-08-26 18:28:15',2,'2006-02-15 21:30:53'),(13263,'2005-08-19 17:26:55',214,206,'2005-08-28 20:07:55',2,'2006-02-15 21:30:53'),(13264,'2005-08-19 17:27:10',1881,109,'2005-08-27 16:00:10',1,'2006-02-15 21:30:53'),(13265,'2005-08-19 17:29:00',3933,314,'2005-08-20 12:59:00',2,'2006-02-15 21:30:53'),(13266,'2005-08-19 17:31:20',1326,571,'2005-08-21 11:41:20',2,'2006-02-15 21:30:53'),(13267,'2005-08-19 17:31:36',550,335,'2005-08-21 13:47:36',1,'2006-02-15 21:30:53'),(13268,'2005-08-19 17:33:50',1166,255,'2005-08-25 17:15:50',2,'2006-02-15 21:30:53'),(13269,'2005-08-19 17:34:00',2382,461,'2005-08-20 15:17:00',2,'2006-02-15 21:30:53'),(13270,'2005-08-19 17:41:16',405,159,'2005-08-23 20:22:16',2,'2006-02-15 21:30:53'),(13271,'2005-08-19 17:42:06',3872,242,'2005-08-27 18:39:06',2,'2006-02-15 21:30:53'),(13272,'2005-08-19 17:49:13',2531,145,'2005-08-23 15:49:13',2,'2006-02-15 21:30:53'),(13273,'2005-08-19 17:49:13',4181,433,'2005-08-21 14:15:13',1,'2006-02-15 21:30:53'),(13274,'2005-08-19 17:50:03',704,272,'2005-08-20 14:39:03',2,'2006-02-15 21:30:53'),(13275,'2005-08-19 17:53:38',710,377,'2005-08-23 16:29:38',2,'2006-02-15 21:30:53'),(13276,'2005-08-19 17:53:42',625,516,'2005-08-28 20:49:42',2,'2006-02-15 21:30:53'),(13277,'2005-08-19 17:57:35',3820,316,'2005-08-25 15:45:35',2,'2006-02-15 21:30:53'),(13278,'2005-08-19 17:57:53',2691,282,'2005-08-22 23:16:53',1,'2006-02-15 21:30:53'),(13279,'2005-08-19 18:02:18',2472,343,'2005-08-24 22:15:18',2,'2006-02-15 21:30:53'),(13280,'2005-08-19 18:02:51',218,368,'2005-08-21 23:17:51',2,'2006-02-15 21:30:53'),(13281,'2005-08-19 18:07:47',113,220,'2005-08-20 21:51:47',2,'2006-02-15 21:30:53'),(13282,'2005-08-19 18:08:18',4373,59,'2005-08-24 14:08:18',1,'2006-02-15 21:30:53'),(13283,'2005-08-19 18:10:19',2602,180,'2005-08-23 16:09:19',2,'2006-02-15 21:30:53'),(13284,'2005-08-19 18:12:31',2128,338,'2005-08-25 21:26:31',2,'2006-02-15 21:30:53'),(13285,'2005-08-19 18:18:44',2139,182,'2005-08-20 12:33:44',1,'2006-02-15 21:30:53'),(13286,'2005-08-19 18:28:07',2685,245,'2005-08-22 17:23:07',2,'2006-02-15 21:30:53'),(13287,'2005-08-19 18:28:24',2716,569,'2005-08-26 20:13:24',2,'2006-02-15 21:30:53'),(13288,'2005-08-19 18:30:10',3558,162,'2005-08-20 19:20:10',2,'2006-02-15 21:30:53'),(13289,'2005-08-19 18:31:30',3527,497,'2005-08-20 13:43:30',1,'2006-02-15 21:30:53'),(13290,'2005-08-19 18:31:50',4174,23,'2005-08-25 15:49:50',2,'2006-02-15 21:30:53'),(13291,'2005-08-19 18:32:11',1631,243,'2005-08-20 18:22:11',2,'2006-02-15 21:30:53'),(13292,'2005-08-19 18:35:32',1336,171,'2005-08-22 00:27:32',1,'2006-02-15 21:30:53'),(13293,'2005-08-19 18:35:52',380,399,'2005-08-23 17:18:52',2,'2006-02-15 21:30:53'),(13294,'2005-08-19 18:36:35',156,534,'2005-08-20 13:57:35',1,'2006-02-15 21:30:53'),(13295,'2006-02-14 15:16:03',2408,229,NULL,1,'2006-02-15 21:30:53'),(13296,'2005-08-19 18:43:53',1728,300,'2005-08-21 23:30:53',2,'2006-02-15 21:30:53'),(13297,'2005-08-19 18:45:49',3818,359,'2005-08-22 14:58:49',2,'2006-02-15 21:30:53'),(13298,'2006-02-14 15:16:03',2133,361,NULL,2,'2006-02-15 21:30:53'),(13299,'2005-08-19 18:46:33',4385,373,'2005-08-22 20:45:33',1,'2006-02-15 21:30:53'),(13300,'2005-08-19 18:46:56',842,531,'2005-08-28 20:23:56',2,'2006-02-15 21:30:53'),(13301,'2005-08-19 18:53:15',2261,494,'2005-08-26 21:37:15',1,'2006-02-15 21:30:53'),(13302,'2005-08-19 18:54:26',4041,51,'2005-08-21 23:01:26',1,'2006-02-15 21:30:53'),(13303,'2005-08-19 18:55:21',34,184,'2005-08-23 18:49:21',2,'2006-02-15 21:30:53'),(13304,'2005-08-19 18:56:32',2979,405,'2005-08-23 20:04:32',2,'2006-02-15 21:30:53'),(13305,'2005-08-19 18:57:05',2386,337,'2005-08-28 22:28:05',1,'2006-02-15 21:30:53'),(13306,'2005-08-19 18:57:29',2742,229,'2005-08-20 20:09:29',2,'2006-02-15 21:30:53'),(13307,'2005-08-19 18:58:44',2242,547,'2005-08-22 00:15:44',1,'2006-02-15 21:30:53'),(13308,'2005-08-19 18:59:42',3189,414,'2005-08-28 13:21:42',2,'2006-02-15 21:30:53'),(13309,'2005-08-19 19:04:00',2108,91,'2005-08-28 23:08:00',2,'2006-02-15 21:30:53'),(13310,'2005-08-19 19:05:16',2563,311,'2005-08-23 22:47:16',1,'2006-02-15 21:30:53'),(13311,'2005-08-19 19:07:09',3890,520,'2005-08-20 23:07:09',1,'2006-02-15 21:30:53'),(13312,'2005-08-19 19:09:14',2891,418,'2005-08-23 00:50:14',2,'2006-02-15 21:30:53'),(13313,'2005-08-19 19:11:41',3709,580,'2005-08-21 23:53:41',2,'2006-02-15 21:30:53'),(13314,'2005-08-19 19:12:43',2899,347,'2005-08-27 00:20:43',2,'2006-02-15 21:30:53'),(13315,'2005-08-19 19:16:18',3151,54,'2005-08-21 20:58:18',1,'2006-02-15 21:30:53'),(13316,'2005-08-19 19:23:30',4450,10,'2005-08-22 23:37:30',1,'2006-02-15 21:30:53'),(13317,'2005-08-19 19:25:42',3349,20,'2005-08-20 20:57:42',2,'2006-02-15 21:30:53'),(13318,'2005-08-19 19:33:57',1389,413,'2005-08-21 17:52:57',2,'2006-02-15 21:30:53'),(13319,'2005-08-19 19:35:13',2496,438,'2005-08-27 17:59:13',1,'2006-02-15 21:30:53'),(13320,'2005-08-19 19:35:33',4522,172,'2005-08-24 20:09:33',2,'2006-02-15 21:30:53'),(13321,'2005-08-19 19:40:37',4183,280,'2005-08-21 19:09:37',2,'2006-02-15 21:30:53'),(13322,'2005-08-19 19:43:08',2149,559,'2005-08-24 16:30:08',2,'2006-02-15 21:30:53'),(13323,'2005-08-19 19:48:07',1055,133,'2005-08-23 15:28:07',1,'2006-02-15 21:30:53'),(13324,'2005-08-19 19:51:00',4349,564,'2005-08-20 20:26:00',1,'2006-02-15 21:30:53'),(13325,'2005-08-19 19:52:02',2388,334,'2005-08-22 21:14:02',1,'2006-02-15 21:30:53'),(13326,'2005-08-19 19:52:52',429,576,'2005-08-20 18:56:52',1,'2006-02-15 21:30:53'),(13327,'2005-08-19 19:55:45',1808,72,'2005-08-22 15:05:45',2,'2006-02-15 21:30:53'),(13328,'2005-08-19 19:56:01',605,462,'2005-08-20 22:16:01',2,'2006-02-15 21:30:53'),(13329,'2005-08-19 19:56:55',3136,373,'2005-08-25 01:19:55',2,'2006-02-15 21:30:53'),(13330,'2005-08-19 19:59:21',4276,297,'2005-08-20 15:34:21',2,'2006-02-15 21:30:53'),(13331,'2005-08-19 20:00:25',3867,23,'2005-08-21 17:03:25',1,'2006-02-15 21:30:53'),(13332,'2005-08-19 20:00:51',3144,503,'2005-08-25 14:30:51',1,'2006-02-15 21:30:53'),(13333,'2006-02-14 15:16:03',1092,64,NULL,2,'2006-02-15 21:30:53'),(13334,'2005-08-19 20:02:33',461,379,'2005-08-22 00:45:33',1,'2006-02-15 21:30:53'),(13335,'2005-08-19 20:03:18',1861,74,'2005-08-24 20:09:18',2,'2006-02-15 21:30:53'),(13336,'2005-08-19 20:03:22',1011,289,'2005-08-24 23:42:22',1,'2006-02-15 21:30:53'),(13337,'2005-08-19 20:06:57',3584,374,'2005-08-20 16:31:57',1,'2006-02-15 21:30:53'),(13338,'2005-08-19 20:09:59',3739,86,'2005-08-23 22:59:59',2,'2006-02-15 21:30:53'),(13339,'2005-08-19 20:18:36',1428,15,'2005-08-28 21:34:36',1,'2006-02-15 21:30:53'),(13340,'2005-08-19 20:18:39',4358,45,'2005-08-28 21:06:39',2,'2006-02-15 21:30:53'),(13341,'2005-08-19 20:18:53',1749,460,'2005-08-27 14:36:53',1,'2006-02-15 21:30:53'),(13342,'2005-08-19 20:21:36',3476,172,'2005-08-21 16:26:36',1,'2006-02-15 21:30:53'),(13343,'2005-08-19 20:22:08',1032,591,'2005-08-27 17:21:08',1,'2006-02-15 21:30:53'),(13344,'2005-08-19 20:22:44',4392,514,'2005-08-25 18:39:44',1,'2006-02-15 21:30:53'),(13345,'2005-08-19 20:25:24',47,55,'2005-08-27 20:38:24',1,'2006-02-15 21:30:53'),(13346,'2005-08-19 20:28:21',4541,131,'2005-08-28 00:28:21',2,'2006-02-15 21:30:53'),(13347,'2005-08-19 20:28:48',4038,562,'2005-08-28 19:33:48',2,'2006-02-15 21:30:53'),(13348,'2005-08-19 20:31:48',275,456,'2005-08-21 21:01:48',1,'2006-02-15 21:30:53'),(13349,'2005-08-19 20:43:16',4262,234,'2005-08-20 16:21:16',1,'2006-02-15 21:30:53'),(13350,'2005-08-19 20:44:00',3523,214,'2005-08-27 01:23:00',2,'2006-02-15 21:30:53'),(13351,'2006-02-14 15:16:03',4130,42,NULL,2,'2006-02-15 21:30:53'),(13352,'2005-08-19 20:51:40',2689,80,'2005-08-24 01:22:40',1,'2006-02-15 21:30:53'),(13353,'2005-08-19 20:53:43',2790,131,'2005-08-25 01:25:43',1,'2006-02-15 21:30:53'),(13354,'2005-08-19 20:55:23',1356,213,'2005-08-27 20:09:23',2,'2006-02-15 21:30:53'),(13355,'2005-08-19 20:59:19',585,396,'2005-08-23 21:44:19',1,'2006-02-15 21:30:53'),(13356,'2005-08-19 21:02:21',2713,324,'2005-08-24 00:31:21',1,'2006-02-15 21:30:53'),(13357,'2005-08-19 21:02:59',3295,393,'2005-08-25 23:46:59',2,'2006-02-15 21:30:53'),(13358,'2005-08-19 21:04:20',1510,439,'2005-08-24 20:49:20',2,'2006-02-15 21:30:53'),(13359,'2005-08-19 21:04:49',4175,434,'2005-08-27 01:46:49',1,'2006-02-15 21:30:53'),(13360,'2005-08-19 21:05:11',3396,327,'2005-08-24 16:05:11',2,'2006-02-15 21:30:53'),(13361,'2005-08-19 21:07:22',4289,107,'2005-08-21 21:26:22',2,'2006-02-15 21:30:53'),(13362,'2005-08-19 21:07:54',869,565,'2005-08-20 17:29:54',2,'2006-02-15 21:30:53'),(13363,'2005-08-19 21:07:59',588,288,'2005-08-21 17:08:59',1,'2006-02-15 21:30:53'),(13364,'2005-08-19 21:09:30',2773,236,'2005-08-25 18:37:30',1,'2006-02-15 21:30:53'),(13365,'2005-08-19 21:12:37',4136,307,'2005-08-25 19:56:37',2,'2006-02-15 21:30:53'),(13366,'2005-08-19 21:14:45',602,259,'2005-08-21 03:06:45',1,'2006-02-15 21:30:53'),(13367,'2005-08-19 21:19:27',4569,290,'2005-08-24 15:22:27',2,'2006-02-15 21:30:53'),(13368,'2005-08-19 21:19:35',1073,342,'2005-08-21 16:12:35',2,'2006-02-15 21:30:53'),(13369,'2005-08-19 21:19:47',2728,116,'2005-08-24 23:25:47',1,'2006-02-15 21:30:53'),(13370,'2005-08-19 21:20:11',239,101,'2005-08-25 22:51:11',1,'2006-02-15 21:30:53'),(13371,'2005-08-19 21:21:47',3401,34,'2005-08-26 16:17:47',2,'2006-02-15 21:30:53'),(13372,'2005-08-19 21:23:19',3366,150,'2005-08-24 22:12:19',1,'2006-02-15 21:30:53'),(13373,'2005-08-19 21:23:31',4045,7,'2005-08-25 22:38:31',1,'2006-02-15 21:30:53'),(13374,'2006-02-14 15:16:03',2721,227,NULL,1,'2006-02-15 21:30:53'),(13375,'2005-08-19 21:31:31',949,120,'2005-08-29 00:17:31',1,'2006-02-15 21:30:53'),(13376,'2005-08-19 21:31:45',898,40,'2005-08-22 01:14:45',2,'2006-02-15 21:30:53'),(13377,'2005-08-19 21:32:23',1316,572,'2005-08-25 22:24:23',1,'2006-02-15 21:30:53'),(13378,'2005-08-19 21:33:35',2708,368,'2005-08-20 22:47:35',1,'2006-02-15 21:30:53'),(13379,'2005-08-19 21:33:39',1623,227,'2005-08-22 21:00:39',1,'2006-02-15 21:30:53'),(13380,'2005-08-19 21:36:58',4250,451,'2005-08-22 23:55:58',1,'2006-02-15 21:30:53'),(13381,'2005-08-19 21:37:57',2823,21,'2005-08-21 18:07:57',2,'2006-02-15 21:30:53'),(13382,'2005-08-19 21:38:41',3720,436,'2005-08-28 15:49:41',1,'2006-02-15 21:30:53'),(13383,'2005-08-19 21:38:44',3193,434,'2005-08-28 23:22:44',2,'2006-02-15 21:30:53'),(13384,'2005-08-19 21:38:51',1462,440,'2005-08-23 17:55:51',1,'2006-02-15 21:30:53'),(13385,'2005-08-19 21:39:35',4323,252,'2005-08-22 22:38:35',2,'2006-02-15 21:30:53'),(13386,'2005-08-19 21:43:58',4476,324,'2005-08-24 20:29:58',2,'2006-02-15 21:30:53'),(13387,'2005-08-19 21:46:10',123,504,'2005-08-24 01:16:10',1,'2006-02-15 21:30:53'),(13388,'2005-08-19 21:46:49',942,317,'2005-08-27 16:18:49',1,'2006-02-15 21:30:53'),(13389,'2005-08-19 21:52:51',3352,257,'2005-08-25 02:38:51',1,'2006-02-15 21:30:53'),(13390,'2006-02-14 15:16:03',2855,135,NULL,1,'2006-02-15 21:30:53'),(13391,'2005-08-19 22:01:42',4220,16,'2005-08-24 22:20:42',2,'2006-02-15 21:30:53'),(13392,'2005-08-19 22:03:22',692,409,'2005-08-28 19:27:22',1,'2006-02-15 21:30:53'),(13393,'2005-08-19 22:03:46',958,15,'2005-08-28 19:19:46',2,'2006-02-15 21:30:53'),(13394,'2005-08-19 22:05:19',2597,45,'2005-08-21 23:53:19',1,'2006-02-15 21:30:53'),(13395,'2005-08-19 22:05:40',53,80,'2005-08-22 01:31:40',2,'2006-02-15 21:30:53'),(13396,'2005-08-19 22:06:09',4169,517,'2005-08-23 23:26:09',2,'2006-02-15 21:30:53'),(13397,'2005-08-19 22:06:35',3863,379,'2005-08-29 01:11:35',2,'2006-02-15 21:30:53'),(13398,'2005-08-19 22:08:48',3376,405,'2005-08-23 03:24:48',1,'2006-02-15 21:30:53'),(13399,'2005-08-19 22:09:28',2309,21,'2005-08-25 20:25:28',2,'2006-02-15 21:30:53'),(13400,'2005-08-19 22:11:44',2173,179,'2005-08-20 23:27:44',2,'2006-02-15 21:30:53'),(13401,'2005-08-19 22:16:16',488,139,'2005-08-25 19:01:16',2,'2006-02-15 21:30:53'),(13402,'2005-08-19 22:16:53',3264,372,'2005-08-22 22:28:53',1,'2006-02-15 21:30:53'),(13403,'2005-08-19 22:18:07',3241,3,'2005-08-27 19:23:07',1,'2006-02-15 21:30:53'),(13404,'2005-08-19 22:18:42',416,414,'2005-08-23 16:29:42',2,'2006-02-15 21:30:53'),(13405,'2005-08-19 22:20:49',1554,181,'2005-08-28 21:21:49',1,'2006-02-15 21:30:53'),(13406,'2005-08-19 22:22:01',3031,113,'2005-08-22 18:16:01',1,'2006-02-15 21:30:53'),(13407,'2005-08-19 22:26:26',2512,131,'2005-08-22 16:34:26',1,'2006-02-15 21:30:53'),(13408,'2005-08-19 22:34:51',2795,575,'2005-08-21 03:30:51',1,'2006-02-15 21:30:53'),(13409,'2005-08-19 22:36:26',873,214,'2005-08-22 01:52:26',2,'2006-02-15 21:30:53'),(13410,'2005-08-19 22:41:44',1421,104,'2005-08-26 18:05:44',2,'2006-02-15 21:30:53'),(13411,'2005-08-19 22:43:38',4425,21,'2005-08-26 18:29:38',2,'2006-02-15 21:30:53'),(13412,'2005-08-19 22:46:35',2806,404,'2005-08-26 18:06:35',1,'2006-02-15 21:30:53'),(13413,'2005-08-19 22:46:46',1501,390,'2005-08-24 22:52:46',1,'2006-02-15 21:30:53'),(13414,'2005-08-19 22:47:34',4126,438,'2005-08-21 02:50:34',1,'2006-02-15 21:30:53'),(13415,'2005-08-19 22:48:09',1105,181,'2005-08-25 02:09:09',1,'2006-02-15 21:30:53'),(13416,'2005-08-19 22:48:48',1075,204,'2005-08-21 22:09:48',2,'2006-02-15 21:30:53'),(13417,'2005-08-19 22:51:39',92,468,'2005-08-23 03:34:39',1,'2006-02-15 21:30:53'),(13418,'2005-08-19 22:53:56',2113,246,'2005-08-28 02:05:56',2,'2006-02-15 21:30:53'),(13419,'2006-02-14 15:16:03',3507,537,NULL,1,'2006-02-15 21:30:53'),(13420,'2005-08-19 22:57:25',1796,102,'2005-08-28 22:46:25',1,'2006-02-15 21:30:53'),(13421,'2006-02-14 15:16:03',9,366,NULL,1,'2006-02-15 21:30:53'),(13422,'2005-08-19 23:07:24',3835,404,'2005-08-28 04:12:24',2,'2006-02-15 21:30:53'),(13423,'2005-08-19 23:07:42',546,311,'2005-08-26 20:45:42',1,'2006-02-15 21:30:53'),(13424,'2005-08-19 23:10:09',4340,216,'2005-08-23 02:25:09',1,'2006-02-15 21:30:53'),(13425,'2005-08-19 23:11:44',2274,340,'2005-08-25 21:19:44',2,'2006-02-15 21:30:53'),(13426,'2005-08-19 23:15:00',3409,213,'2005-08-21 01:53:00',2,'2006-02-15 21:30:53'),(13427,'2005-08-19 23:19:02',3120,239,'2005-08-21 18:30:02',1,'2006-02-15 21:30:53'),(13428,'2006-02-14 15:16:03',106,44,NULL,2,'2006-02-15 21:30:53'),(13429,'2005-08-19 23:25:37',3677,23,'2005-08-28 01:04:37',2,'2006-02-15 21:30:53'),(13430,'2005-08-19 23:25:43',2852,381,'2005-08-22 18:41:43',1,'2006-02-15 21:30:53'),(13431,'2005-08-19 23:28:15',1700,229,'2005-08-25 04:44:15',1,'2006-02-15 21:30:53'),(13432,'2005-08-19 23:29:06',2216,78,'2005-08-23 00:57:06',1,'2006-02-15 21:30:53'),(13433,'2005-08-19 23:30:53',1647,171,'2005-08-22 05:18:53',2,'2006-02-15 21:30:53'),(13434,'2005-08-19 23:34:26',2073,221,'2005-08-23 18:33:26',1,'2006-02-15 21:30:53'),(13435,'2005-08-19 23:35:44',3919,30,'2005-08-24 18:14:44',2,'2006-02-15 21:30:53'),(13436,'2005-08-19 23:36:25',2499,29,'2005-08-23 18:38:25',1,'2006-02-15 21:30:53'),(13437,'2005-08-19 23:37:52',2292,67,'2005-08-28 22:17:52',1,'2006-02-15 21:30:53'),(13438,'2005-08-19 23:38:02',1750,520,'2005-08-26 21:36:02',1,'2006-02-15 21:30:53'),(13439,'2005-08-19 23:42:16',3535,551,'2005-08-26 21:24:16',2,'2006-02-15 21:30:53'),(13440,'2005-08-19 23:42:52',2842,260,'2005-08-25 19:19:52',1,'2006-02-15 21:30:53'),(13441,'2005-08-19 23:48:23',3188,125,'2005-08-28 23:47:23',1,'2006-02-15 21:30:53'),(13442,'2005-08-19 23:50:45',2432,356,'2005-08-27 22:01:45',2,'2006-02-15 21:30:53'),(13443,'2005-08-19 23:53:42',3161,236,'2005-08-28 05:37:42',1,'2006-02-15 21:30:53'),(13444,'2005-08-20 00:00:24',2564,37,'2005-08-21 05:59:24',2,'2006-02-15 21:30:53'),(13445,'2005-08-20 00:05:33',1630,495,'2005-08-21 21:20:33',1,'2006-02-15 21:30:53'),(13446,'2005-08-20 00:06:13',3226,488,'2005-08-22 19:56:13',1,'2006-02-15 21:30:53'),(13447,'2005-08-20 00:09:36',285,542,'2005-08-25 01:22:36',1,'2006-02-15 21:30:53'),(13448,'2005-08-20 00:12:43',2870,327,'2005-08-25 02:33:43',1,'2006-02-15 21:30:53'),(13449,'2005-08-20 00:17:01',1297,400,'2005-08-23 20:42:01',2,'2006-02-15 21:30:53'),(13450,'2005-08-20 00:18:15',135,61,'2005-08-24 19:36:15',1,'2006-02-15 21:30:53'),(13451,'2005-08-20 00:18:25',3837,6,'2005-08-29 01:08:25',1,'2006-02-15 21:30:53'),(13452,'2005-08-20 00:20:07',2449,430,'2005-08-25 05:43:07',1,'2006-02-15 21:30:53'),(13453,'2005-08-20 00:30:51',2203,164,'2005-08-28 18:43:51',2,'2006-02-15 21:30:53'),(13454,'2005-08-20 00:30:52',1553,430,'2005-08-27 19:45:52',2,'2006-02-15 21:30:53'),(13455,'2005-08-20 00:32:17',1315,133,'2005-08-26 19:33:17',1,'2006-02-15 21:30:53'),(13456,'2005-08-20 00:33:19',1644,13,'2005-08-22 01:47:19',1,'2006-02-15 21:30:53'),(13457,'2005-08-20 00:33:22',1220,256,'2005-08-26 21:37:22',2,'2006-02-15 21:30:53'),(13458,'2005-08-20 00:35:30',4223,228,'2005-08-21 20:51:30',1,'2006-02-15 21:30:53'),(13459,'2005-08-20 00:45:40',3666,114,'2005-08-29 02:53:40',2,'2006-02-15 21:30:53'),(13460,'2005-08-20 00:48:24',244,410,'2005-08-28 04:13:24',2,'2006-02-15 21:30:53'),(13461,'2005-08-20 00:49:04',2621,421,'2005-08-28 02:49:04',2,'2006-02-15 21:30:53'),(13462,'2005-08-20 00:49:19',3865,489,'2005-08-26 06:21:19',2,'2006-02-15 21:30:53'),(13463,'2005-08-20 00:50:54',510,21,'2005-08-28 23:00:54',1,'2006-02-15 21:30:53'),(13464,'2006-02-14 15:16:03',4292,576,NULL,1,'2006-02-15 21:30:53'),(13465,'2005-08-20 00:54:14',1305,575,'2005-08-21 20:55:14',2,'2006-02-15 21:30:53'),(13466,'2005-08-20 00:55:16',3088,262,'2005-08-22 22:48:16',1,'2006-02-15 21:30:53'),(13467,'2005-08-20 00:56:44',696,373,'2005-08-20 20:16:44',1,'2006-02-15 21:30:53'),(13468,'2005-08-20 00:56:44',1851,266,'2005-08-29 06:26:44',1,'2006-02-15 21:30:53'),(13469,'2005-08-20 00:59:36',1410,235,'2005-08-24 22:41:36',1,'2006-02-15 21:30:53'),(13470,'2005-08-20 01:01:16',3097,141,'2005-08-21 03:19:16',1,'2006-02-15 21:30:53'),(13471,'2005-08-20 01:02:26',1391,296,'2005-08-25 06:37:26',2,'2006-02-15 21:30:53'),(13472,'2005-08-20 01:03:31',3074,137,'2005-08-28 02:54:31',1,'2006-02-15 21:30:53'),(13473,'2005-08-20 01:03:50',381,390,'2005-08-22 02:33:50',2,'2006-02-15 21:30:53'),(13474,'2005-08-20 01:04:32',1209,116,'2005-08-21 20:26:32',2,'2006-02-15 21:30:53'),(13475,'2005-08-20 01:05:05',3214,68,'2005-08-20 20:22:05',2,'2006-02-15 21:30:53'),(13476,'2005-08-20 01:06:04',2866,7,'2005-08-24 23:56:04',1,'2006-02-15 21:30:53'),(13477,'2005-08-20 01:07:00',1442,222,'2005-08-26 02:47:00',1,'2006-02-15 21:30:53'),(13478,'2005-08-20 01:07:14',2190,466,'2005-08-22 03:41:14',1,'2006-02-15 21:30:53'),(13479,'2005-08-20 01:09:11',1262,87,'2005-08-26 05:35:11',2,'2006-02-15 21:30:53'),(13480,'2005-08-20 01:10:27',206,16,'2005-08-27 22:18:27',2,'2006-02-15 21:30:53'),(13481,'2005-08-20 01:11:12',2678,157,'2005-08-26 23:07:12',2,'2006-02-15 21:30:53'),(13482,'2005-08-20 01:14:30',1627,183,'2005-08-24 04:57:30',1,'2006-02-15 21:30:53'),(13483,'2005-08-20 01:16:38',2550,441,'2005-08-21 20:43:38',2,'2006-02-15 21:30:53'),(13484,'2005-08-20 01:16:52',1533,152,'2005-08-22 23:47:52',2,'2006-02-15 21:30:53'),(13485,'2005-08-20 01:20:14',3802,379,'2005-08-22 01:28:14',2,'2006-02-15 21:30:53'),(13486,'2006-02-14 15:16:03',4460,274,NULL,1,'2006-02-15 21:30:53'),(13487,'2005-08-20 01:27:05',2609,458,'2005-08-24 00:41:05',2,'2006-02-15 21:30:53'),(13488,'2005-08-20 01:28:42',867,444,'2005-08-25 06:17:42',2,'2006-02-15 21:30:53'),(13489,'2005-08-20 01:29:06',2934,443,'2005-08-27 21:11:06',1,'2006-02-15 21:30:53'),(13490,'2005-08-20 01:29:29',238,18,'2005-08-21 22:36:29',2,'2006-02-15 21:30:53'),(13491,'2005-08-20 01:30:56',2503,258,'2005-08-28 23:26:56',2,'2006-02-15 21:30:53'),(13492,'2005-08-20 01:32:04',1155,462,'2005-08-29 02:14:04',2,'2006-02-15 21:30:53'),(13493,'2005-08-20 01:33:36',2927,37,'2005-08-24 06:32:36',1,'2006-02-15 21:30:53'),(13494,'2005-08-20 01:36:34',1632,414,'2005-08-21 06:52:34',1,'2006-02-15 21:30:53'),(13495,'2005-08-20 01:40:25',3881,92,'2005-08-23 06:32:25',2,'2006-02-15 21:30:53'),(13496,'2005-08-20 01:42:29',3040,454,'2005-08-29 06:47:29',2,'2006-02-15 21:30:53'),(13497,'2005-08-20 01:46:38',1296,481,'2005-08-26 05:37:38',2,'2006-02-15 21:30:53'),(13498,'2005-08-20 01:51:23',1603,578,'2005-08-24 05:32:23',1,'2006-02-15 21:30:53'),(13499,'2005-08-20 01:52:30',1893,300,'2005-08-28 04:57:30',1,'2006-02-15 21:30:53'),(13500,'2005-08-20 01:54:39',1353,577,'2005-08-25 21:23:39',1,'2006-02-15 21:30:53'),(13501,'2005-08-20 01:56:20',4369,390,'2005-08-22 23:07:20',2,'2006-02-15 21:30:53'),(13502,'2005-08-20 01:58:15',1324,309,'2005-08-21 20:21:15',1,'2006-02-15 21:30:53'),(13503,'2005-08-20 02:00:33',453,15,'2005-08-28 21:03:33',1,'2006-02-15 21:30:53'),(13504,'2005-08-20 02:01:48',4322,293,'2005-08-25 21:52:48',2,'2006-02-15 21:30:53'),(13505,'2005-08-20 02:05:57',914,536,'2005-08-23 05:52:57',1,'2006-02-15 21:30:53'),(13506,'2005-08-20 02:07:06',1334,261,'2005-08-26 08:06:06',1,'2006-02-15 21:30:53'),(13507,'2005-08-20 02:10:27',3324,478,'2005-08-23 04:03:27',2,'2006-02-15 21:30:53'),(13508,'2005-08-20 02:12:54',4120,408,'2005-08-28 21:47:54',2,'2006-02-15 21:30:53'),(13509,'2005-08-20 02:14:16',3698,128,'2005-08-22 06:36:16',2,'2006-02-15 21:30:53'),(13510,'2005-08-20 02:18:30',691,107,'2005-08-27 01:33:30',1,'2006-02-15 21:30:53'),(13511,'2005-08-20 02:21:40',2973,23,'2005-08-21 03:26:40',1,'2006-02-15 21:30:53'),(13512,'2005-08-20 02:27:13',4508,62,'2005-08-28 04:40:13',2,'2006-02-15 21:30:53'),(13513,'2005-08-20 02:27:53',1653,454,'2005-08-22 06:10:53',1,'2006-02-15 21:30:53'),(13514,'2005-08-20 02:28:09',3407,96,'2005-08-25 00:41:09',1,'2006-02-15 21:30:53'),(13515,'2005-08-20 02:29:47',3438,194,'2005-08-23 08:12:47',2,'2006-02-15 21:30:53'),(13516,'2005-08-20 02:32:45',4286,95,'2005-08-27 04:38:45',1,'2006-02-15 21:30:53'),(13517,'2005-08-20 02:33:17',533,186,'2005-08-23 22:40:17',2,'2006-02-15 21:30:53'),(13518,'2005-08-20 02:36:17',352,528,'2005-08-24 08:06:17',1,'2006-02-15 21:30:53'),(13519,'2005-08-20 02:37:07',182,12,'2005-08-23 01:26:07',2,'2006-02-15 21:30:53'),(13520,'2005-08-20 02:41:46',3326,74,'2005-08-22 01:53:46',1,'2006-02-15 21:30:53'),(13521,'2005-08-20 02:42:28',2586,384,'2005-08-22 06:12:28',1,'2006-02-15 21:30:53'),(13522,'2005-08-20 02:44:06',2940,343,'2005-08-28 05:30:06',1,'2006-02-15 21:30:53'),(13523,'2005-08-20 02:47:03',163,572,'2005-08-28 07:43:03',1,'2006-02-15 21:30:53'),(13524,'2005-08-20 02:48:43',4557,593,'2005-08-27 03:14:43',2,'2006-02-15 21:30:53'),(13525,'2005-08-20 02:50:44',3514,111,'2005-08-26 22:58:44',2,'2006-02-15 21:30:53'),(13526,'2005-08-20 02:58:42',1966,277,'2005-08-27 22:36:42',2,'2006-02-15 21:30:53'),(13527,'2005-08-20 03:00:47',4424,521,'2005-08-25 01:03:47',1,'2006-02-15 21:30:53'),(13528,'2005-08-20 03:03:31',1847,202,'2005-08-26 03:09:31',1,'2006-02-15 21:30:53'),(13529,'2005-08-20 03:07:47',1979,193,'2005-08-21 21:50:47',1,'2006-02-15 21:30:53'),(13530,'2005-08-20 03:12:43',597,156,'2005-08-23 09:01:43',2,'2006-02-15 21:30:53'),(13531,'2005-08-20 03:26:10',2778,156,'2005-08-25 03:41:10',1,'2006-02-15 21:30:53'),(13532,'2005-08-20 03:29:28',1433,168,'2005-08-23 22:53:28',2,'2006-02-15 21:30:53'),(13533,'2005-08-20 03:30:00',1801,436,'2005-08-27 05:53:00',1,'2006-02-15 21:30:53'),(13534,'2006-02-14 15:16:03',2476,75,NULL,1,'2006-02-15 21:30:53'),(13535,'2005-08-20 03:30:25',1563,86,'2005-08-28 04:35:25',1,'2006-02-15 21:30:53'),(13536,'2005-08-20 03:35:16',667,183,'2005-08-25 04:06:16',2,'2006-02-15 21:30:53'),(13537,'2005-08-20 03:39:15',2521,418,'2005-08-23 22:03:15',2,'2006-02-15 21:30:53'),(13538,'2006-02-14 15:16:03',581,279,NULL,1,'2006-02-15 21:30:53'),(13539,'2005-08-20 03:40:27',3110,518,'2005-08-27 07:15:27',1,'2006-02-15 21:30:53'),(13540,'2005-08-20 03:41:23',3785,557,'2005-08-27 09:09:23',2,'2006-02-15 21:30:53'),(13541,'2005-08-20 03:41:41',1363,15,'2005-08-24 23:14:41',1,'2006-02-15 21:30:53'),(13542,'2005-08-20 03:41:57',4543,147,'2005-08-29 03:21:57',2,'2006-02-15 21:30:53'),(13543,'2005-08-20 03:43:13',2142,163,'2005-08-29 07:14:13',2,'2006-02-15 21:30:53'),(13544,'2005-08-20 03:44:26',58,538,'2005-08-27 22:11:26',1,'2006-02-15 21:30:53'),(13545,'2005-08-20 03:50:15',615,417,'2005-08-27 22:24:15',1,'2006-02-15 21:30:53'),(13546,'2005-08-20 03:50:24',2492,390,'2005-08-28 03:04:24',2,'2006-02-15 21:30:53'),(13547,'2005-08-20 03:53:16',3122,456,'2005-08-25 04:02:16',1,'2006-02-15 21:30:53'),(13548,'2005-08-20 03:53:20',4389,319,'2005-08-27 21:54:20',1,'2006-02-15 21:30:53'),(13549,'2005-08-20 03:58:41',508,274,'2005-08-28 22:49:41',1,'2006-02-15 21:30:53'),(13550,'2005-08-20 03:58:51',208,206,'2005-08-28 00:45:51',2,'2006-02-15 21:30:53'),(13551,'2005-08-20 04:00:30',1049,503,'2005-08-21 06:26:30',2,'2006-02-15 21:30:53'),(13552,'2005-08-20 04:03:51',758,578,'2005-08-23 02:48:51',2,'2006-02-15 21:30:53'),(13553,'2005-08-20 04:07:21',4407,314,'2005-08-28 09:55:21',1,'2006-02-15 21:30:53'),(13554,'2005-08-20 04:08:39',2648,569,'2005-08-28 07:11:39',2,'2006-02-15 21:30:53'),(13555,'2005-08-20 04:09:50',3176,93,'2005-08-29 05:20:50',1,'2006-02-15 21:30:53'),(13556,'2005-08-20 04:10:26',3914,266,'2005-08-26 06:45:26',2,'2006-02-15 21:30:53'),(13557,'2005-08-20 04:12:41',2290,23,'2005-08-21 02:33:41',2,'2006-02-15 21:30:53'),(13558,'2005-08-20 04:13:17',1551,564,'2005-08-24 06:38:17',1,'2006-02-15 21:30:53'),(13559,'2005-08-20 04:16:07',2413,444,'2005-08-24 23:23:07',1,'2006-02-15 21:30:53'),(13560,'2005-08-20 04:17:16',820,56,'2005-08-28 08:38:16',1,'2006-02-15 21:30:53'),(13561,'2006-02-14 15:16:03',3202,530,NULL,1,'2006-02-15 21:30:53'),(13562,'2005-08-20 04:31:45',4547,36,'2005-08-25 09:59:45',1,'2006-02-15 21:30:53'),(13563,'2005-08-20 04:33:31',599,366,'2005-08-24 07:08:31',2,'2006-02-15 21:30:53'),(13564,'2005-08-20 04:34:46',678,36,'2005-08-28 23:18:46',2,'2006-02-15 21:30:53'),(13565,'2005-08-20 04:38:52',3378,214,'2005-08-27 07:17:52',1,'2006-02-15 21:30:53'),(13566,'2005-08-20 04:45:32',4397,558,'2005-08-28 02:12:32',2,'2006-02-15 21:30:53'),(13567,'2005-08-20 04:49:21',543,242,'2005-08-26 10:27:21',1,'2006-02-15 21:30:53'),(13568,'2005-08-20 05:02:46',1243,151,'2005-08-27 03:12:46',2,'2006-02-15 21:30:53'),(13569,'2005-08-20 05:02:59',1934,496,'2005-08-28 00:51:59',1,'2006-02-15 21:30:53'),(13570,'2005-08-20 05:04:57',2808,188,'2005-08-24 06:19:57',2,'2006-02-15 21:30:53'),(13571,'2005-08-20 05:05:14',1251,458,'2005-08-25 03:59:14',2,'2006-02-15 21:30:53'),(13572,'2005-08-20 05:07:27',660,11,'2005-08-23 23:33:27',1,'2006-02-15 21:30:53'),(13573,'2005-08-20 05:10:14',3032,59,'2005-08-22 00:59:14',1,'2006-02-15 21:30:53'),(13574,'2005-08-20 05:10:39',2383,552,'2005-08-21 02:21:39',2,'2006-02-15 21:30:53'),(13575,'2005-08-20 05:15:20',2729,339,'2005-08-28 07:36:20',2,'2006-02-15 21:30:53'),(13576,'2005-08-20 05:19:56',2669,223,'2005-08-22 09:08:56',2,'2006-02-15 21:30:53'),(13577,'2006-02-14 15:16:03',3844,448,NULL,2,'2006-02-15 21:30:53'),(13578,'2006-02-14 15:16:03',4301,352,NULL,2,'2006-02-15 21:30:53'),(13579,'2005-08-20 05:22:06',4237,333,'2005-08-28 02:33:06',2,'2006-02-15 21:30:53'),(13580,'2005-08-20 05:23:34',4419,526,'2005-08-23 02:45:34',1,'2006-02-15 21:30:53'),(13581,'2005-08-20 05:26:15',1753,119,'2005-08-21 11:07:15',2,'2006-02-15 21:30:53'),(13582,'2005-08-20 05:28:11',211,166,'2005-08-23 02:06:11',2,'2006-02-15 21:30:53'),(13583,'2005-08-20 05:29:45',176,74,'2005-08-26 06:49:45',1,'2006-02-15 21:30:53'),(13584,'2006-02-14 15:16:03',3966,548,NULL,2,'2006-02-15 21:30:53'),(13585,'2005-08-20 05:32:23',3314,470,'2005-08-27 23:36:23',1,'2006-02-15 21:30:53'),(13586,'2005-08-20 05:40:33',4544,445,'2005-08-25 01:32:33',2,'2006-02-15 21:30:53'),(13587,'2006-02-14 15:16:03',2455,431,NULL,2,'2006-02-15 21:30:53'),(13588,'2005-08-20 05:47:11',702,279,'2005-08-28 02:45:11',2,'2006-02-15 21:30:53'),(13589,'2005-08-20 05:47:25',3216,574,'2005-08-23 01:29:25',2,'2006-02-15 21:30:53'),(13590,'2005-08-20 05:48:59',4417,264,'2005-08-25 00:44:59',2,'2006-02-15 21:30:53'),(13591,'2005-08-20 05:50:05',3089,390,'2005-08-27 08:43:05',2,'2006-02-15 21:30:53'),(13592,'2005-08-20 05:50:35',1509,470,'2005-08-23 04:52:35',1,'2006-02-15 21:30:53'),(13593,'2005-08-20 05:50:52',261,585,'2005-08-27 05:28:52',2,'2006-02-15 21:30:53'),(13594,'2005-08-20 05:53:31',3424,7,'2005-08-23 09:01:31',1,'2006-02-15 21:30:53'),(13595,'2005-08-20 05:54:27',673,545,'2005-08-29 01:25:27',1,'2006-02-15 21:30:53'),(13596,'2005-08-20 05:58:58',482,513,'2005-08-27 08:35:58',1,'2006-02-15 21:30:53'),(13597,'2005-08-20 05:59:05',3697,72,'2005-08-24 05:38:05',2,'2006-02-15 21:30:53'),(13598,'2005-08-20 05:59:17',2803,259,'2005-08-29 01:02:17',1,'2006-02-15 21:30:53'),(13599,'2005-08-20 06:00:03',3333,150,'2005-08-29 07:56:03',1,'2006-02-15 21:30:53'),(13600,'2005-08-20 06:00:25',431,528,'2005-08-28 02:39:25',1,'2006-02-15 21:30:53'),(13601,'2005-08-20 06:01:15',2166,189,'2005-08-29 06:14:15',2,'2006-02-15 21:30:53'),(13602,'2005-08-20 06:02:02',2805,348,'2005-08-27 04:51:02',1,'2006-02-15 21:30:53'),(13603,'2005-08-20 06:02:48',937,362,'2005-08-29 09:39:48',1,'2006-02-15 21:30:53'),(13604,'2005-08-20 06:03:33',4352,353,'2005-08-21 07:06:33',1,'2006-02-15 21:30:53'),(13605,'2005-08-20 06:06:17',4446,522,'2005-08-26 00:53:17',2,'2006-02-15 21:30:53'),(13606,'2005-08-20 06:07:01',83,146,'2005-08-27 04:59:01',2,'2006-02-15 21:30:53'),(13607,'2005-08-20 06:08:42',2692,491,'2005-08-21 01:59:42',2,'2006-02-15 21:30:53'),(13608,'2005-08-20 06:10:44',4110,193,'2005-08-24 07:08:44',1,'2006-02-15 21:30:53'),(13609,'2005-08-20 06:11:51',299,328,'2005-08-23 04:13:51',2,'2006-02-15 21:30:53'),(13610,'2005-08-20 06:14:12',2526,3,'2005-08-26 00:44:12',2,'2006-02-15 21:30:53'),(13611,'2005-08-20 06:20:42',1460,112,'2005-08-28 10:07:42',1,'2006-02-15 21:30:53'),(13612,'2005-08-20 06:22:08',675,505,'2005-08-28 02:22:08',1,'2006-02-15 21:30:53'),(13613,'2005-08-20 06:23:53',2415,201,'2005-08-29 11:40:53',2,'2006-02-15 21:30:53'),(13614,'2005-08-20 06:28:37',3736,381,'2005-08-22 07:54:37',2,'2006-02-15 21:30:53'),(13615,'2005-08-20 06:28:53',1864,539,'2005-08-27 11:40:53',2,'2006-02-15 21:30:53'),(13616,'2005-08-20 06:30:33',1694,194,'2005-08-27 09:29:33',2,'2006-02-15 21:30:53'),(13617,'2005-08-20 06:35:30',4059,526,'2005-08-29 09:03:30',1,'2006-02-15 21:30:53'),(13618,'2005-08-20 06:36:46',390,390,'2005-08-29 05:17:46',2,'2006-02-15 21:30:53'),(13619,'2005-08-20 06:39:26',1068,365,'2005-08-23 05:22:26',2,'2006-02-15 21:30:53'),(13620,'2005-08-20 06:41:27',2361,92,'2005-08-24 11:02:27',1,'2006-02-15 21:30:53'),(13621,'2005-08-20 06:43:44',3754,581,'2005-08-23 06:25:44',2,'2006-02-15 21:30:53'),(13622,'2005-08-20 06:45:32',3355,335,'2005-08-25 02:40:32',1,'2006-02-15 21:30:53'),(13623,'2005-08-20 06:49:46',3948,321,'2005-08-25 05:19:46',2,'2006-02-15 21:30:53'),(13624,'2005-08-20 06:51:02',430,63,'2005-08-29 02:39:02',1,'2006-02-15 21:30:53'),(13625,'2005-08-20 06:52:03',60,422,'2005-08-27 07:43:03',1,'2006-02-15 21:30:53'),(13626,'2005-08-20 06:55:24',594,524,'2005-08-29 12:32:24',1,'2006-02-15 21:30:53'),(13627,'2005-08-20 06:59:00',603,329,'2005-08-29 11:43:00',2,'2006-02-15 21:30:53'),(13628,'2005-08-20 07:03:53',1006,500,'2005-08-22 11:27:53',2,'2006-02-15 21:30:53'),(13629,'2005-08-20 07:04:07',1834,392,'2005-08-25 12:36:07',1,'2006-02-15 21:30:53'),(13630,'2005-08-20 07:05:56',3346,244,'2005-08-29 04:15:56',1,'2006-02-15 21:30:53'),(13631,'2005-08-20 07:07:37',1015,535,'2005-08-22 04:01:37',1,'2006-02-15 21:30:53'),(13632,'2005-08-20 07:10:52',4008,409,'2005-08-29 10:19:52',2,'2006-02-15 21:30:53'),(13633,'2005-08-20 07:13:47',3227,301,'2005-08-24 11:25:47',1,'2006-02-15 21:30:53'),(13634,'2005-08-20 07:16:45',850,411,'2005-08-22 03:38:45',1,'2006-02-15 21:30:53'),(13635,'2005-08-20 07:17:35',669,286,'2005-08-29 06:27:35',1,'2006-02-15 21:30:53'),(13636,'2005-08-20 07:20:09',1467,349,'2005-08-23 09:58:09',1,'2006-02-15 21:30:53'),(13637,'2005-08-20 07:21:15',2298,342,'2005-08-24 10:13:15',2,'2006-02-15 21:30:53'),(13638,'2005-08-20 07:21:15',3255,493,'2005-08-23 11:09:15',2,'2006-02-15 21:30:53'),(13639,'2005-08-20 07:22:07',2489,562,'2005-08-23 11:24:07',2,'2006-02-15 21:30:53'),(13640,'2005-08-20 07:22:53',3427,541,'2005-08-21 11:54:53',2,'2006-02-15 21:30:53'),(13641,'2005-08-20 07:34:42',367,281,'2005-08-26 05:18:42',1,'2006-02-15 21:30:53'),(13642,'2005-08-20 07:42:17',4415,452,'2005-08-29 10:49:17',1,'2006-02-15 21:30:53'),(13643,'2005-08-20 07:42:24',2443,398,'2005-08-26 09:13:24',2,'2006-02-15 21:30:53'),(13644,'2005-08-20 07:46:30',970,464,'2005-08-27 01:54:30',1,'2006-02-15 21:30:53'),(13645,'2005-08-20 07:47:05',157,387,'2005-08-23 02:58:05',1,'2006-02-15 21:30:53'),(13646,'2005-08-20 07:47:08',1347,242,'2005-08-29 08:33:08',1,'2006-02-15 21:30:53'),(13647,'2005-08-20 07:48:07',3269,519,'2005-08-28 07:56:07',2,'2006-02-15 21:30:53'),(13648,'2005-08-20 07:48:10',3921,596,'2005-08-22 12:15:10',2,'2006-02-15 21:30:53'),(13649,'2005-08-20 07:48:38',1495,259,'2005-08-23 07:43:38',2,'2006-02-15 21:30:53'),(13650,'2005-08-20 07:49:06',2644,322,'2005-08-28 10:11:06',1,'2006-02-15 21:30:53'),(13651,'2005-08-20 07:50:08',1082,256,'2005-08-21 07:11:08',1,'2006-02-15 21:30:53'),(13652,'2005-08-20 07:52:34',2548,67,'2005-08-23 08:58:34',2,'2006-02-15 21:30:53'),(13653,'2005-08-20 07:54:54',4029,129,'2005-08-29 06:43:54',1,'2006-02-15 21:30:53'),(13654,'2005-08-20 07:58:21',1582,469,'2005-08-21 09:40:21',2,'2006-02-15 21:30:53'),(13655,'2005-08-20 07:59:13',4294,207,'2005-08-22 12:04:13',1,'2006-02-15 21:30:53'),(13656,'2005-08-20 08:01:07',3180,411,'2005-08-28 13:16:07',2,'2006-02-15 21:30:53'),(13657,'2005-08-20 08:01:39',1752,414,'2005-08-23 07:31:39',1,'2006-02-15 21:30:53'),(13658,'2005-08-20 08:02:22',3827,487,'2005-08-28 06:00:22',1,'2006-02-15 21:30:53'),(13659,'2005-08-20 08:05:52',3610,520,'2005-08-24 12:38:52',1,'2006-02-15 21:30:53'),(13660,'2005-08-20 08:05:56',3972,72,'2005-08-22 13:22:56',1,'2006-02-15 21:30:53'),(13661,'2005-08-20 08:05:59',3996,471,'2005-08-29 12:15:59',1,'2006-02-15 21:30:53'),(13662,'2005-08-20 08:11:58',3880,592,'2005-08-26 13:34:58',1,'2006-02-15 21:30:53'),(13663,'2005-08-20 08:12:33',3969,240,'2005-08-27 03:23:33',2,'2006-02-15 21:30:53'),(13664,'2005-08-20 08:18:36',3750,264,'2005-08-26 11:04:36',1,'2006-02-15 21:30:53'),(13665,'2005-08-20 08:19:20',117,291,'2005-08-28 06:26:20',1,'2006-02-15 21:30:53'),(13666,'2005-08-20 08:20:19',2007,451,'2005-08-22 03:22:19',1,'2006-02-15 21:30:53'),(13667,'2005-08-20 08:25:34',3856,280,'2005-08-24 07:04:34',2,'2006-02-15 21:30:53'),(13668,'2005-08-20 08:26:06',3659,123,'2005-08-25 05:52:06',2,'2006-02-15 21:30:53'),(13669,'2005-08-20 08:26:32',4504,261,'2005-08-27 08:10:32',2,'2006-02-15 21:30:53'),(13670,'2005-08-20 08:27:01',1951,147,'2005-08-29 05:59:01',2,'2006-02-15 21:30:53'),(13671,'2005-08-20 08:27:03',1473,201,'2005-08-26 03:56:03',1,'2006-02-15 21:30:53'),(13672,'2005-08-20 08:27:27',2068,201,'2005-08-22 06:15:27',2,'2006-02-15 21:30:53'),(13673,'2005-08-20 08:27:30',343,332,'2005-08-26 05:14:30',1,'2006-02-15 21:30:53'),(13674,'2005-08-20 08:30:54',3397,36,'2005-08-22 02:59:54',1,'2006-02-15 21:30:53'),(13675,'2005-08-20 08:32:51',350,493,'2005-08-27 03:52:51',2,'2006-02-15 21:30:53'),(13676,'2005-08-20 08:33:21',3170,103,'2005-08-25 02:51:21',1,'2006-02-15 21:30:53'),(13677,'2005-08-20 08:34:41',4013,15,'2005-08-26 11:51:41',2,'2006-02-15 21:30:53'),(13678,'2005-08-20 08:38:24',1118,337,'2005-08-27 13:54:24',2,'2006-02-15 21:30:53'),(13679,'2005-08-20 08:39:34',2878,229,'2005-08-29 10:06:34',2,'2006-02-15 21:30:53'),(13680,'2005-08-20 08:44:06',2822,70,'2005-08-27 09:58:06',2,'2006-02-15 21:30:53'),(13681,'2005-08-20 08:47:37',3039,328,'2005-08-27 09:47:37',1,'2006-02-15 21:30:53'),(13682,'2005-08-20 08:50:39',287,30,'2005-08-21 09:05:39',2,'2006-02-15 21:30:53'),(13683,'2005-08-20 08:54:55',1729,255,'2005-08-24 14:10:55',2,'2006-02-15 21:30:53'),(13684,'2005-08-20 08:55:53',2213,348,'2005-08-25 08:11:53',1,'2006-02-15 21:30:53'),(13685,'2005-08-20 08:57:11',3336,260,'2005-08-27 07:26:11',1,'2006-02-15 21:30:53'),(13686,'2005-08-20 08:57:28',666,306,'2005-08-24 07:21:28',2,'2006-02-15 21:30:53'),(13687,'2005-08-20 08:57:51',3629,290,'2005-08-22 07:02:51',2,'2006-02-15 21:30:53'),(13688,'2005-08-20 08:59:38',1116,572,'2005-08-28 04:54:38',2,'2006-02-15 21:30:53'),(13689,'2005-08-20 09:04:30',819,336,'2005-08-22 05:38:30',2,'2006-02-15 21:30:53'),(13690,'2005-08-20 09:07:27',3721,513,'2005-08-23 08:03:27',2,'2006-02-15 21:30:53'),(13691,'2005-08-20 09:07:39',676,548,'2005-08-28 15:03:39',1,'2006-02-15 21:30:53'),(13692,'2005-08-20 09:07:52',1928,65,'2005-08-21 05:17:52',1,'2006-02-15 21:30:53'),(13693,'2005-08-20 09:11:42',933,552,'2005-08-24 15:00:42',2,'2006-02-15 21:30:53'),(13694,'2005-08-20 09:13:23',3654,454,'2005-08-28 06:10:23',1,'2006-02-15 21:30:53'),(13695,'2005-08-20 09:13:25',3114,258,'2005-08-27 11:51:25',2,'2006-02-15 21:30:53'),(13696,'2005-08-20 09:16:15',1279,206,'2005-08-21 03:33:15',1,'2006-02-15 21:30:53'),(13697,'2005-08-20 09:21:08',291,76,'2005-08-29 12:33:08',1,'2006-02-15 21:30:53'),(13698,'2005-08-20 09:24:26',3829,364,'2005-08-22 05:04:26',2,'2006-02-15 21:30:53'),(13699,'2005-08-20 09:26:14',3913,21,'2005-08-29 08:16:14',2,'2006-02-15 21:30:53'),(13700,'2005-08-20 09:26:17',4229,265,'2005-08-27 05:49:17',2,'2006-02-15 21:30:53'),(13701,'2005-08-20 09:27:05',1643,564,'2005-08-21 14:54:05',1,'2006-02-15 21:30:53'),(13702,'2005-08-20 09:27:20',700,296,'2005-08-29 15:04:20',2,'2006-02-15 21:30:53'),(13703,'2005-08-20 09:29:35',2296,356,'2005-08-27 08:03:35',2,'2006-02-15 21:30:53'),(13704,'2005-08-20 09:32:04',3373,4,'2005-08-23 14:29:04',2,'2006-02-15 21:30:53'),(13705,'2005-08-20 09:32:23',3663,451,'2005-08-21 13:51:23',1,'2006-02-15 21:30:53'),(13706,'2005-08-20 09:32:56',3005,363,'2005-08-28 05:22:56',2,'2006-02-15 21:30:53'),(13707,'2005-08-20 09:33:58',826,232,'2005-08-23 07:44:58',2,'2006-02-15 21:30:53'),(13708,'2005-08-20 09:34:07',2236,218,'2005-08-26 10:17:07',1,'2006-02-15 21:30:53'),(13709,'2005-08-20 09:34:51',4089,422,'2005-08-23 04:13:51',1,'2006-02-15 21:30:53'),(13710,'2005-08-20 09:35:20',756,333,'2005-08-21 05:29:20',2,'2006-02-15 21:30:53'),(13711,'2005-08-20 09:35:20',2318,453,'2005-08-28 09:06:20',2,'2006-02-15 21:30:53'),(13712,'2005-08-20 09:38:04',1039,581,'2005-08-21 06:10:04',1,'2006-02-15 21:30:53'),(13713,'2006-02-14 15:16:03',3075,267,NULL,1,'2006-02-15 21:30:53'),(13714,'2005-08-20 09:41:09',2659,277,'2005-08-22 06:28:09',1,'2006-02-15 21:30:53'),(13715,'2005-08-20 09:43:06',1028,292,'2005-08-27 10:22:06',1,'2006-02-15 21:30:53'),(13716,'2005-08-20 09:48:32',86,386,'2005-08-26 07:20:32',2,'2006-02-15 21:30:53'),(13717,'2005-08-20 09:50:52',1629,300,'2005-08-28 11:32:52',2,'2006-02-15 21:30:53'),(13718,'2005-08-20 09:53:44',205,19,'2005-08-29 13:46:44',2,'2006-02-15 21:30:53'),(13719,'2006-02-14 15:16:03',3547,208,NULL,1,'2006-02-15 21:30:53'),(13720,'2005-08-20 10:01:39',813,427,'2005-08-27 08:26:39',1,'2006-02-15 21:30:53'),(13721,'2005-08-20 10:02:59',1444,297,'2005-08-24 07:02:59',2,'2006-02-15 21:30:53'),(13722,'2005-08-20 10:03:45',1581,422,'2005-08-25 04:26:45',1,'2006-02-15 21:30:53'),(13723,'2005-08-20 10:05:30',411,110,'2005-08-27 07:43:30',2,'2006-02-15 21:30:53'),(13724,'2005-08-20 10:07:28',200,80,'2005-08-24 07:47:28',2,'2006-02-15 21:30:53'),(13725,'2005-08-20 10:08:27',3861,306,'2005-08-28 06:52:27',2,'2006-02-15 21:30:53'),(13726,'2005-08-20 10:08:40',2258,214,'2005-08-23 14:58:40',1,'2006-02-15 21:30:53'),(13727,'2005-08-20 10:08:53',4201,85,'2005-08-27 09:30:53',1,'2006-02-15 21:30:53'),(13728,'2005-08-20 10:11:07',1962,157,'2005-08-23 10:32:07',1,'2006-02-15 21:30:53'),(13729,'2005-08-20 10:17:08',4108,415,'2005-08-28 15:35:08',1,'2006-02-15 21:30:53'),(13730,'2005-08-20 10:17:09',1330,548,'2005-08-28 10:45:09',1,'2006-02-15 21:30:53'),(13731,'2005-08-20 10:22:08',1133,450,'2005-08-21 12:04:08',2,'2006-02-15 21:30:53'),(13732,'2005-08-20 10:24:41',1138,17,'2005-08-22 04:44:41',1,'2006-02-15 21:30:53'),(13733,'2005-08-20 10:25:12',3994,85,'2005-08-21 10:49:12',2,'2006-02-15 21:30:53'),(13734,'2005-08-20 10:29:57',4561,374,'2005-08-25 14:41:57',2,'2006-02-15 21:30:53'),(13735,'2005-08-20 10:31:01',1813,35,'2005-08-26 05:00:01',1,'2006-02-15 21:30:53'),(13736,'2005-08-20 10:31:23',3369,32,'2005-08-28 06:51:23',1,'2006-02-15 21:30:53'),(13737,'2005-08-20 10:41:50',4319,200,'2005-08-25 14:33:50',2,'2006-02-15 21:30:53'),(13738,'2005-08-20 10:42:42',2748,273,'2005-08-25 09:32:42',1,'2006-02-15 21:30:53'),(13739,'2005-08-20 10:45:10',3027,441,'2005-08-28 08:46:10',2,'2006-02-15 21:30:53'),(13740,'2005-08-20 10:48:43',4366,21,'2005-08-29 15:30:43',1,'2006-02-15 21:30:53'),(13741,'2005-08-20 10:48:47',3887,195,'2005-08-21 11:19:47',1,'2006-02-15 21:30:53'),(13742,'2005-08-20 10:49:15',1377,580,'2005-08-21 11:05:15',2,'2006-02-15 21:30:53'),(13743,'2005-08-20 10:51:27',3693,57,'2005-08-24 15:54:27',1,'2006-02-15 21:30:53'),(13744,'2005-08-20 10:51:45',2962,408,'2005-08-25 06:42:45',2,'2006-02-15 21:30:53'),(13745,'2005-08-20 10:53:49',1264,142,'2005-08-25 13:25:49',1,'2006-02-15 21:30:53'),(13746,'2005-08-20 10:55:28',3742,520,'2005-08-25 07:48:28',2,'2006-02-15 21:30:53'),(13747,'2005-08-20 10:56:06',3332,74,'2005-08-29 10:29:06',1,'2006-02-15 21:30:53'),(13748,'2005-08-20 10:59:54',2198,410,'2005-08-23 12:33:54',1,'2006-02-15 21:30:53'),(13749,'2005-08-20 11:00:37',2811,282,'2005-08-26 12:04:37',1,'2006-02-15 21:30:53'),(13750,'2005-08-20 11:11:42',3363,246,'2005-08-29 16:16:42',2,'2006-02-15 21:30:53'),(13751,'2005-08-20 11:17:03',185,105,'2005-08-22 14:12:03',2,'2006-02-15 21:30:53'),(13752,'2005-08-20 11:17:45',1794,77,'2005-08-29 13:25:45',2,'2006-02-15 21:30:53'),(13753,'2006-02-14 15:16:03',3746,495,NULL,1,'2006-02-15 21:30:53'),(13754,'2005-08-20 11:18:08',1740,108,'2005-08-22 11:55:08',1,'2006-02-15 21:30:53'),(13755,'2005-08-20 11:18:53',1927,342,'2005-08-27 06:51:53',2,'2006-02-15 21:30:53'),(13756,'2006-02-14 15:16:03',1146,252,NULL,2,'2006-02-15 21:30:53'),(13757,'2005-08-20 11:20:12',1147,14,'2005-08-23 10:14:12',2,'2006-02-15 21:30:53'),(13758,'2005-08-20 11:21:26',864,255,'2005-08-29 14:37:26',2,'2006-02-15 21:30:53'),(13759,'2005-08-20 11:24:48',595,269,'2005-08-29 10:29:48',1,'2006-02-15 21:30:53'),(13760,'2005-08-20 11:26:33',3459,436,'2005-08-27 11:12:33',2,'2006-02-15 21:30:53'),(13761,'2005-08-20 11:28:50',3149,376,'2005-08-21 12:05:50',2,'2006-02-15 21:30:53'),(13762,'2005-08-20 11:29:32',451,566,'2005-08-23 17:25:32',1,'2006-02-15 21:30:53'),(13763,'2005-08-20 11:37:56',4171,469,'2005-08-26 13:12:56',1,'2006-02-15 21:30:53'),(13764,'2005-08-20 11:38:16',989,386,'2005-08-27 08:01:16',1,'2006-02-15 21:30:53'),(13765,'2005-08-20 11:39:00',2104,219,'2005-08-21 06:05:00',1,'2006-02-15 21:30:53'),(13766,'2005-08-20 11:42:01',1313,189,'2005-08-27 13:44:01',2,'2006-02-15 21:30:53'),(13767,'2005-08-20 11:43:36',2739,506,'2005-08-22 17:10:36',1,'2006-02-15 21:30:53'),(13768,'2005-08-20 11:43:43',3847,198,'2005-08-27 07:56:43',2,'2006-02-15 21:30:53'),(13769,'2005-08-20 11:43:52',2868,56,'2005-08-28 13:19:52',1,'2006-02-15 21:30:53'),(13770,'2005-08-20 11:45:54',998,538,'2005-08-22 17:08:54',1,'2006-02-15 21:30:53'),(13771,'2005-08-20 11:47:21',2278,512,'2005-08-22 17:09:21',1,'2006-02-15 21:30:53'),(13772,'2005-08-20 11:47:52',2038,387,'2005-08-28 05:50:52',2,'2006-02-15 21:30:53'),(13773,'2005-08-20 11:50:14',3389,64,'2005-08-26 12:35:14',1,'2006-02-15 21:30:53'),(13774,'2005-08-20 11:54:01',735,244,'2005-08-22 13:25:01',2,'2006-02-15 21:30:53'),(13775,'2005-08-20 11:56:30',1858,116,'2005-08-28 12:48:30',2,'2006-02-15 21:30:53'),(13776,'2005-08-20 11:57:06',2439,137,'2005-08-26 10:55:06',1,'2006-02-15 21:30:53'),(13777,'2005-08-20 12:03:35',3587,29,'2005-08-27 10:13:35',1,'2006-02-15 21:30:53'),(13778,'2005-08-20 12:03:44',2385,539,'2005-08-28 12:09:44',1,'2006-02-15 21:30:53'),(13779,'2005-08-20 12:03:54',63,440,'2005-08-28 15:24:54',2,'2006-02-15 21:30:53'),(13780,'2006-02-14 15:16:03',1775,14,NULL,2,'2006-02-15 21:30:53'),(13781,'2005-08-20 12:06:45',971,368,'2005-08-26 06:50:45',2,'2006-02-15 21:30:53'),(13782,'2005-08-20 12:09:26',577,305,'2005-08-23 08:31:26',2,'2006-02-15 21:30:53'),(13783,'2005-08-20 12:11:03',2643,28,'2005-08-21 15:53:03',2,'2006-02-15 21:30:53'),(13784,'2005-08-20 12:11:28',3087,431,'2005-08-25 08:11:28',1,'2006-02-15 21:30:53'),(13785,'2005-08-20 12:11:46',379,453,'2005-08-21 06:39:46',1,'2006-02-15 21:30:53'),(13786,'2005-08-20 12:13:24',515,94,'2005-08-28 07:24:24',2,'2006-02-15 21:30:53'),(13787,'2005-08-20 12:15:23',253,188,'2005-08-27 06:24:23',2,'2006-02-15 21:30:53'),(13788,'2005-08-20 12:15:41',3177,393,'2005-08-28 16:28:41',2,'2006-02-15 21:30:53'),(13789,'2005-08-20 12:16:38',2523,53,'2005-08-25 07:29:38',1,'2006-02-15 21:30:53'),(13790,'2005-08-20 12:17:27',1385,11,'2005-08-25 12:20:27',1,'2006-02-15 21:30:53'),(13791,'2005-08-20 12:21:05',1890,67,'2005-08-22 17:58:05',1,'2006-02-15 21:30:53'),(13792,'2005-08-20 12:21:37',4157,78,'2005-08-27 14:28:37',1,'2006-02-15 21:30:53'),(13793,'2005-08-20 12:22:04',2598,424,'2005-08-27 09:51:04',2,'2006-02-15 21:30:53'),(13794,'2005-08-20 12:25:32',2148,557,'2005-08-23 06:38:32',2,'2006-02-15 21:30:53'),(13795,'2005-08-20 12:32:09',2837,331,'2005-08-21 17:28:09',1,'2006-02-15 21:30:53'),(13796,'2005-08-20 12:32:32',28,209,'2005-08-29 10:48:32',2,'2006-02-15 21:30:53'),(13797,'2005-08-20 12:33:36',2857,529,'2005-08-25 18:03:36',1,'2006-02-15 21:30:53'),(13798,'2006-02-14 15:16:03',526,15,NULL,2,'2006-02-15 21:30:53'),(13799,'2005-08-20 12:36:42',4413,196,'2005-08-28 08:47:42',1,'2006-02-15 21:30:53'),(13800,'2005-08-20 12:40:48',1552,407,'2005-08-22 15:06:48',1,'2006-02-15 21:30:53'),(13801,'2005-08-20 12:40:53',1464,433,'2005-08-21 16:29:53',1,'2006-02-15 21:30:53'),(13802,'2005-08-20 12:44:53',2079,156,'2005-08-22 09:18:53',2,'2006-02-15 21:30:53'),(13803,'2005-08-20 12:46:17',1084,486,'2005-08-24 15:44:17',2,'2006-02-15 21:30:53'),(13804,'2005-08-20 12:46:32',2232,19,'2005-08-29 14:04:32',2,'2006-02-15 21:30:53'),(13805,'2005-08-20 12:53:12',349,454,'2005-08-27 15:21:12',1,'2006-02-15 21:30:53'),(13806,'2005-08-20 12:53:46',444,341,'2005-08-21 10:36:46',1,'2006-02-15 21:30:53'),(13807,'2005-08-20 12:55:40',3822,4,'2005-08-28 09:06:40',2,'2006-02-15 21:30:53'),(13808,'2005-08-20 12:55:43',3689,262,'2005-08-29 11:01:43',2,'2006-02-15 21:30:53'),(13809,'2005-08-20 12:56:03',1597,207,'2005-08-27 11:58:03',1,'2006-02-15 21:30:53'),(13810,'2005-08-20 12:59:38',2228,450,'2005-08-21 17:40:38',1,'2006-02-15 21:30:53'),(13811,'2005-08-20 13:00:30',1235,168,'2005-08-24 10:18:30',1,'2006-02-15 21:30:53'),(13812,'2005-08-20 13:01:43',2788,122,'2005-08-22 16:32:43',2,'2006-02-15 21:30:53'),(13813,'2005-08-20 13:03:26',601,455,'2005-08-25 08:42:26',1,'2006-02-15 21:30:53'),(13814,'2005-08-20 13:07:23',2129,436,'2005-08-22 16:23:23',2,'2006-02-15 21:30:53'),(13815,'2005-08-20 13:08:53',3388,582,'2005-08-29 13:11:53',2,'2006-02-15 21:30:53'),(13816,'2005-08-20 13:13:56',273,27,'2005-08-25 09:46:56',1,'2006-02-15 21:30:53'),(13817,'2005-08-20 13:15:30',1935,293,'2005-08-22 18:48:30',2,'2006-02-15 21:30:53'),(13818,'2005-08-20 13:20:09',1283,495,'2005-08-21 18:41:09',1,'2006-02-15 21:30:53'),(13819,'2005-08-20 13:23:15',1459,296,'2005-08-22 16:02:15',2,'2006-02-15 21:30:53'),(13820,'2005-08-20 13:26:37',3191,81,'2005-08-27 14:05:37',1,'2006-02-15 21:30:53'),(13821,'2005-08-20 13:33:47',2402,355,'2005-08-25 18:09:47',1,'2006-02-15 21:30:53'),(13822,'2005-08-20 13:39:28',807,499,'2005-08-24 07:40:28',1,'2006-02-15 21:30:53'),(13823,'2005-08-20 13:42:10',3875,89,'2005-08-22 18:45:10',1,'2006-02-15 21:30:53'),(13824,'2005-08-20 13:43:12',2845,413,'2005-08-22 17:26:12',1,'2006-02-15 21:30:53'),(13825,'2005-08-20 13:43:22',2135,167,'2005-08-29 19:13:22',1,'2006-02-15 21:30:53'),(13826,'2005-08-20 13:46:38',401,436,'2005-08-29 13:07:38',1,'2006-02-15 21:30:53'),(13827,'2005-08-20 13:47:19',1103,342,'2005-08-28 09:13:19',1,'2006-02-15 21:30:53'),(13828,'2005-08-20 13:49:52',2391,450,'2005-08-25 07:49:52',2,'2006-02-15 21:30:53'),(13829,'2005-08-20 13:50:17',3980,146,'2005-08-24 11:30:17',2,'2006-02-15 21:30:53'),(13830,'2005-08-20 13:57:59',2874,61,'2005-08-25 11:29:59',1,'2006-02-15 21:30:53'),(13831,'2005-08-20 13:59:35',570,480,'2005-08-24 12:50:35',1,'2006-02-15 21:30:53'),(13832,'2005-08-20 14:00:25',3299,29,'2005-08-28 10:11:25',1,'2006-02-15 21:30:53'),(13833,'2005-08-20 14:00:29',792,175,'2005-08-29 12:01:29',2,'2006-02-15 21:30:53'),(13834,'2005-08-20 14:03:08',875,426,'2005-08-22 10:12:08',1,'2006-02-15 21:30:53'),(13835,'2005-08-20 14:06:33',3738,143,'2005-08-26 12:15:33',2,'2006-02-15 21:30:53'),(13836,'2005-08-20 14:18:16',4271,375,'2005-08-21 18:13:16',2,'2006-02-15 21:30:53'),(13837,'2005-08-20 14:19:03',3220,67,'2005-08-22 16:25:03',2,'2006-02-15 21:30:53'),(13838,'2005-08-20 14:22:46',1134,437,'2005-08-29 12:28:46',2,'2006-02-15 21:30:53'),(13839,'2005-08-20 14:23:16',1056,437,'2005-08-26 19:11:16',2,'2006-02-15 21:30:53'),(13840,'2005-08-20 14:23:20',1211,40,'2005-08-28 11:53:20',1,'2006-02-15 21:30:53'),(13841,'2005-08-20 14:25:18',3277,203,'2005-08-29 15:49:18',1,'2006-02-15 21:30:53'),(13842,'2005-08-20 14:29:37',4337,180,'2005-08-29 18:19:37',1,'2006-02-15 21:30:53'),(13843,'2005-08-20 14:30:01',3058,308,'2005-08-27 10:06:01',2,'2006-02-15 21:30:53'),(13844,'2005-08-20 14:30:26',983,179,'2005-08-29 17:08:26',1,'2006-02-15 21:30:53'),(13845,'2005-08-20 14:31:21',3993,559,'2005-08-29 18:29:21',1,'2006-02-15 21:30:53'),(13846,'2005-08-20 14:32:31',3289,257,'2005-08-28 16:58:31',1,'2006-02-15 21:30:53'),(13847,'2005-08-20 14:33:59',2647,82,'2005-08-25 08:49:59',1,'2006-02-15 21:30:53'),(13848,'2005-08-20 14:37:49',802,447,'2005-08-25 13:15:49',1,'2006-02-15 21:30:53'),(13849,'2005-08-20 14:42:34',3774,261,'2005-08-24 13:09:34',2,'2006-02-15 21:30:53'),(13850,'2005-08-20 14:43:03',3030,546,'2005-08-27 11:41:03',2,'2006-02-15 21:30:53'),(13851,'2005-08-20 14:44:22',3278,80,'2005-08-22 18:10:22',1,'2006-02-15 21:30:53'),(13852,'2005-08-20 14:45:23',85,535,'2005-08-22 16:47:23',2,'2006-02-15 21:30:53'),(13853,'2005-08-20 14:47:02',1680,186,'2005-08-26 20:32:02',1,'2006-02-15 21:30:53'),(13854,'2005-08-20 14:48:42',4192,158,'2005-08-21 14:55:42',2,'2006-02-15 21:30:53'),(13855,'2005-08-20 14:48:55',1617,96,'2005-08-28 14:45:55',1,'2006-02-15 21:30:53'),(13856,'2005-08-20 14:49:32',4196,407,'2005-08-29 12:37:32',2,'2006-02-15 21:30:53'),(13857,'2005-08-20 14:50:06',2542,366,'2005-08-24 10:38:06',2,'2006-02-15 21:30:53'),(13858,'2005-08-20 14:50:57',2167,33,'2005-08-23 12:10:57',2,'2006-02-15 21:30:53'),(13859,'2005-08-20 14:53:43',4381,504,'2005-08-28 09:50:43',1,'2006-02-15 21:30:53'),(13860,'2005-08-20 14:55:09',558,275,'2005-08-22 20:42:09',1,'2006-02-15 21:30:53'),(13861,'2005-08-20 14:56:53',303,154,'2005-08-22 18:13:53',2,'2006-02-15 21:30:53'),(13862,'2005-08-20 14:57:01',3271,170,'2005-08-27 10:48:01',2,'2006-02-15 21:30:53'),(13863,'2005-08-20 14:57:50',2417,563,'2005-08-29 15:36:50',2,'2006-02-15 21:30:53'),(13864,'2005-08-20 14:59:55',3935,214,'2005-08-22 09:30:55',2,'2006-02-15 21:30:53'),(13865,'2005-08-20 15:04:09',3647,275,'2005-08-24 10:06:09',2,'2006-02-15 21:30:53'),(13866,'2005-08-20 15:05:29',3432,343,'2005-08-23 11:27:29',2,'2006-02-15 21:30:53'),(13867,'2005-08-20 15:05:42',4514,591,'2005-08-29 10:48:42',2,'2006-02-15 21:30:53'),(13868,'2005-08-20 15:06:26',3173,51,'2005-08-22 19:08:26',2,'2006-02-15 21:30:53'),(13869,'2005-08-20 15:08:57',1990,386,'2005-08-29 13:13:57',2,'2006-02-15 21:30:53'),(13870,'2005-08-20 15:09:16',563,167,'2005-08-28 10:00:16',2,'2006-02-15 21:30:53'),(13871,'2005-08-20 15:10:13',3206,372,'2005-08-29 19:43:13',2,'2006-02-15 21:30:53'),(13872,'2005-08-20 15:10:30',2416,421,'2005-08-24 10:14:30',2,'2006-02-15 21:30:53'),(13873,'2005-08-20 15:11:11',1683,306,'2005-08-22 20:13:11',2,'2006-02-15 21:30:53'),(13874,'2005-08-20 15:11:48',72,86,'2005-08-21 18:26:48',2,'2006-02-15 21:30:53'),(13875,'2005-08-20 15:13:11',348,83,'2005-08-21 13:11:11',1,'2006-02-15 21:30:53'),(13876,'2005-08-20 15:15:28',3137,334,'2005-08-23 12:42:28',2,'2006-02-15 21:30:53'),(13877,'2005-08-20 15:16:18',3387,5,'2005-08-22 18:20:18',1,'2006-02-15 21:30:53'),(13878,'2005-08-20 15:17:38',49,481,'2005-08-21 21:11:38',2,'2006-02-15 21:30:53'),(13879,'2005-08-20 15:18:10',4022,112,'2005-08-22 19:23:10',2,'2006-02-15 21:30:53'),(13880,'2005-08-20 15:18:20',3911,268,'2005-08-24 18:03:20',2,'2006-02-15 21:30:53'),(13881,'2005-08-20 15:18:55',2831,144,'2005-08-25 11:25:55',1,'2006-02-15 21:30:53'),(13882,'2005-08-20 15:23:26',3245,51,'2005-08-22 13:03:26',1,'2006-02-15 21:30:53'),(13883,'2005-08-20 15:28:53',584,568,'2005-08-21 13:11:53',1,'2006-02-15 21:30:53'),(13884,'2005-08-20 15:30:51',3182,466,'2005-08-26 13:34:51',1,'2006-02-15 21:30:53'),(13885,'2005-08-20 15:32:09',3195,537,'2005-08-26 15:54:09',1,'2006-02-15 21:30:53'),(13886,'2005-08-20 15:34:43',2248,73,'2005-08-26 11:48:43',2,'2006-02-15 21:30:53'),(13887,'2005-08-20 15:39:00',4002,413,'2005-08-24 16:17:00',2,'2006-02-15 21:30:53'),(13888,'2005-08-20 15:39:42',1943,297,'2005-08-28 13:41:42',1,'2006-02-15 21:30:53'),(13889,'2005-08-20 15:40:06',4406,501,'2005-08-22 14:09:06',2,'2006-02-15 21:30:53'),(13890,'2005-08-20 15:41:00',2965,54,'2005-08-22 16:00:00',1,'2006-02-15 21:30:53'),(13891,'2005-08-20 15:42:05',2042,289,'2005-08-25 13:26:05',1,'2006-02-15 21:30:53'),(13892,'2005-08-20 15:50:17',1236,337,'2005-08-29 13:33:17',2,'2006-02-15 21:30:53'),(13893,'2005-08-20 15:52:52',3503,390,'2005-08-27 16:21:52',2,'2006-02-15 21:30:53'),(13894,'2005-08-20 15:55:20',2649,360,'2005-08-26 17:26:20',2,'2006-02-15 21:30:53'),(13895,'2005-08-20 15:58:28',3060,12,'2005-08-26 15:07:28',2,'2006-02-15 21:30:53'),(13896,'2005-08-20 15:59:56',1338,278,'2005-08-21 20:14:56',2,'2006-02-15 21:30:53'),(13897,'2005-08-20 16:02:28',628,258,'2005-08-23 14:29:28',1,'2006-02-15 21:30:53'),(13898,'2006-02-14 15:16:03',4007,369,NULL,2,'2006-02-15 21:30:53'),(13899,'2005-08-20 16:05:11',427,204,'2005-08-23 15:14:11',2,'2006-02-15 21:30:53'),(13900,'2005-08-20 16:05:41',1140,66,'2005-08-22 15:13:41',1,'2006-02-15 21:30:53'),(13901,'2005-08-20 16:06:53',3281,166,'2005-08-28 11:30:53',1,'2006-02-15 21:30:53'),(13902,'2005-08-20 16:07:08',1165,275,'2005-08-24 16:43:08',2,'2006-02-15 21:30:53'),(13903,'2005-08-20 16:07:55',1676,272,'2005-08-25 18:26:55',1,'2006-02-15 21:30:53'),(13904,'2005-08-20 16:11:34',721,93,'2005-08-26 12:46:34',1,'2006-02-15 21:30:53'),(13905,'2005-08-20 16:12:48',2714,437,'2005-08-28 16:05:48',1,'2006-02-15 21:30:53'),(13906,'2005-08-20 16:16:03',3960,87,'2005-08-21 13:29:03',2,'2006-02-15 21:30:53'),(13907,'2005-08-20 16:17:27',806,328,'2005-08-24 20:14:27',2,'2006-02-15 21:30:53'),(13908,'2005-08-20 16:21:40',3661,532,'2005-08-29 21:16:40',1,'2006-02-15 21:30:53'),(13909,'2005-08-20 16:26:36',1508,309,'2005-08-21 20:59:36',2,'2006-02-15 21:30:53'),(13910,'2005-08-20 16:30:49',252,133,'2005-08-24 13:30:49',2,'2006-02-15 21:30:53'),(13911,'2005-08-20 16:31:33',4400,304,'2005-08-28 19:26:33',2,'2006-02-15 21:30:53'),(13912,'2005-08-20 16:32:10',968,207,'2005-08-29 17:37:10',2,'2006-02-15 21:30:53'),(13913,'2005-08-20 16:37:35',4259,197,'2005-08-26 13:12:35',2,'2006-02-15 21:30:53'),(13914,'2005-08-20 16:38:57',3037,237,'2005-08-26 14:53:57',2,'2006-02-15 21:30:53'),(13915,'2005-08-20 16:42:53',1180,129,'2005-08-23 20:30:53',2,'2006-02-15 21:30:53'),(13916,'2005-08-20 16:43:02',2971,302,'2005-08-25 19:21:02',1,'2006-02-15 21:30:53'),(13917,'2005-08-20 16:43:28',4326,10,'2005-08-29 16:44:28',2,'2006-02-15 21:30:53'),(13918,'2005-08-20 16:47:32',3301,248,'2005-08-21 12:00:32',2,'2006-02-15 21:30:53'),(13919,'2005-08-20 16:47:34',909,129,'2005-08-23 21:27:34',2,'2006-02-15 21:30:53'),(13920,'2005-08-20 16:51:18',3200,460,'2005-08-27 16:05:18',2,'2006-02-15 21:30:53'),(13921,'2005-08-20 16:57:11',3943,59,'2005-08-22 19:25:11',2,'2006-02-15 21:30:53'),(13922,'2005-08-20 17:02:37',1398,237,'2005-08-29 19:28:37',1,'2006-02-15 21:30:53'),(13923,'2005-08-20 17:05:02',3129,588,'2005-08-27 11:22:02',2,'2006-02-15 21:30:53'),(13924,'2005-08-20 17:05:18',3066,444,'2005-08-23 16:54:18',2,'2006-02-15 21:30:53'),(13925,'2005-08-20 17:05:34',4034,565,'2005-08-27 15:32:34',2,'2006-02-15 21:30:53'),(13926,'2005-08-20 17:09:27',932,158,'2005-08-28 13:42:27',2,'2006-02-15 21:30:53'),(13927,'2005-08-20 17:11:58',4284,417,'2005-08-24 12:44:58',1,'2006-02-15 21:30:53'),(13928,'2005-08-20 17:12:28',1121,244,'2005-08-21 13:33:28',1,'2006-02-15 21:30:53'),(13929,'2005-08-20 17:13:48',946,57,'2005-08-28 15:19:48',1,'2006-02-15 21:30:53'),(13930,'2005-08-20 17:15:06',3585,58,'2005-08-21 14:29:06',1,'2006-02-15 21:30:53'),(13931,'2005-08-20 17:16:10',3884,32,'2005-08-27 12:03:10',2,'2006-02-15 21:30:53'),(13932,'2005-08-20 17:17:00',471,441,'2005-08-24 14:06:00',1,'2006-02-15 21:30:53'),(13933,'2005-08-20 17:17:07',647,159,'2005-08-22 18:10:07',2,'2006-02-15 21:30:53'),(13934,'2005-08-20 17:18:48',4567,457,'2005-08-26 15:31:48',1,'2006-02-15 21:30:53'),(13935,'2005-08-20 17:20:49',4426,205,'2005-08-24 16:52:49',2,'2006-02-15 21:30:53'),(13936,'2005-08-20 17:22:35',1731,364,'2005-08-23 20:07:35',2,'2006-02-15 21:30:53'),(13937,'2005-08-20 17:22:51',1755,172,'2005-08-27 15:51:51',1,'2006-02-15 21:30:53'),(13938,'2005-08-20 17:24:45',3743,463,'2005-08-21 18:39:45',1,'2006-02-15 21:30:53'),(13939,'2005-08-20 17:28:01',2700,585,'2005-08-23 14:40:01',2,'2006-02-15 21:30:53'),(13940,'2005-08-20 17:28:57',2638,187,'2005-08-27 22:07:57',1,'2006-02-15 21:30:53'),(13941,'2006-02-14 15:16:03',2727,476,NULL,2,'2006-02-15 21:30:53'),(13942,'2005-08-20 17:30:52',4403,211,'2005-08-25 13:46:52',2,'2006-02-15 21:30:53'),(13943,'2005-08-20 17:31:18',22,464,'2005-08-24 11:33:18',1,'2006-02-15 21:30:53'),(13944,'2005-08-20 17:41:16',3685,408,'2005-08-23 12:02:16',1,'2006-02-15 21:30:53'),(13945,'2005-08-20 17:43:56',3328,270,'2005-08-26 19:19:56',1,'2006-02-15 21:30:53'),(13946,'2005-08-20 17:44:32',3564,529,'2005-08-28 19:19:32',1,'2006-02-15 21:30:53'),(13947,'2005-08-20 17:46:06',2562,218,'2005-08-29 23:44:06',2,'2006-02-15 21:30:53'),(13948,'2005-08-20 17:50:48',4033,410,'2005-08-25 20:56:48',2,'2006-02-15 21:30:53'),(13949,'2005-08-20 17:55:13',1518,34,'2005-08-22 20:49:13',1,'2006-02-15 21:30:53'),(13950,'2005-08-20 17:58:00',3978,93,'2005-08-29 23:23:00',1,'2006-02-15 21:30:53'),(13951,'2005-08-20 17:58:11',2034,40,'2005-08-26 14:50:11',2,'2006-02-15 21:30:53'),(13952,'2006-02-14 15:16:03',224,199,NULL,2,'2006-02-15 21:30:53'),(13953,'2005-08-20 18:00:37',1818,371,'2005-08-28 14:52:37',1,'2006-02-15 21:30:53'),(13954,'2005-08-20 18:02:41',3812,207,'2005-08-27 21:52:41',2,'2006-02-15 21:30:53'),(13955,'2005-08-20 18:05:12',2613,273,'2005-08-29 18:25:12',1,'2006-02-15 21:30:53'),(13956,'2005-08-20 18:08:19',3757,484,'2005-08-29 17:03:19',1,'2006-02-15 21:30:53'),(13957,'2005-08-20 18:09:04',2889,179,'2005-08-23 16:52:04',1,'2006-02-15 21:30:53'),(13958,'2005-08-20 18:11:44',2380,33,'2005-08-28 14:59:44',1,'2006-02-15 21:30:53'),(13959,'2005-08-20 18:16:21',2283,142,'2005-08-22 13:56:21',2,'2006-02-15 21:30:53'),(13960,'2005-08-20 18:16:26',4177,459,'2005-08-29 14:06:26',1,'2006-02-15 21:30:53'),(13961,'2005-08-20 18:16:34',2271,129,'2005-08-21 16:14:34',1,'2006-02-15 21:30:53'),(13962,'2005-08-20 18:18:06',1434,348,'2005-08-24 22:16:06',2,'2006-02-15 21:30:53'),(13963,'2005-08-20 18:20:18',4145,368,'2005-08-24 21:26:18',1,'2006-02-15 21:30:53'),(13964,'2005-08-20 18:24:26',108,128,'2005-08-21 21:19:26',2,'2006-02-15 21:30:53'),(13965,'2006-02-14 15:16:03',670,324,NULL,2,'2006-02-15 21:30:53'),(13966,'2005-08-20 18:28:28',4520,260,'2005-08-22 16:49:28',2,'2006-02-15 21:30:53'),(13967,'2005-08-20 18:28:46',2751,459,'2005-08-26 17:37:46',2,'2006-02-15 21:30:53'),(13968,'2006-02-14 15:16:03',3715,15,NULL,2,'2006-02-15 21:30:53'),(13969,'2005-08-20 18:42:40',1836,237,'2005-08-27 17:33:40',2,'2006-02-15 21:30:53'),(13970,'2005-08-20 18:43:34',1942,418,'2005-08-22 15:17:34',2,'2006-02-15 21:30:53'),(13971,'2005-08-20 18:44:53',1678,64,'2005-08-22 16:25:53',2,'2006-02-15 21:30:53'),(13972,'2005-08-20 18:52:17',1687,553,'2005-08-28 15:19:17',1,'2006-02-15 21:30:53'),(13973,'2005-08-20 18:52:43',1181,58,'2005-08-21 19:11:43',1,'2006-02-15 21:30:53'),(13974,'2005-08-20 18:54:59',1912,479,'2005-08-28 13:02:59',1,'2006-02-15 21:30:53'),(13975,'2005-08-20 18:58:23',3821,286,'2005-08-25 20:58:23',1,'2006-02-15 21:30:53'),(13976,'2005-08-20 19:02:16',1785,278,'2005-08-25 17:58:16',2,'2006-02-15 21:30:53'),(13977,'2005-08-20 19:02:34',1126,115,'2005-08-24 14:14:34',1,'2006-02-15 21:30:53'),(13978,'2005-08-20 19:03:25',1263,260,'2005-08-27 18:02:25',2,'2006-02-15 21:30:53'),(13979,'2005-08-20 19:03:49',2998,211,'2005-08-24 21:23:49',1,'2006-02-15 21:30:53'),(13980,'2005-08-20 19:04:40',1067,391,'2005-08-21 18:36:40',2,'2006-02-15 21:30:53'),(13981,'2005-08-20 19:07:20',3342,249,'2005-08-23 15:13:20',1,'2006-02-15 21:30:53'),(13982,'2005-08-20 19:08:25',2901,448,'2005-08-28 15:59:25',2,'2006-02-15 21:30:53'),(13983,'2005-08-20 19:08:32',457,231,'2005-08-29 23:45:32',1,'2006-02-15 21:30:53'),(13984,'2005-08-20 19:12:30',2183,473,'2005-08-29 22:04:30',1,'2006-02-15 21:30:53'),(13985,'2005-08-20 19:13:06',1081,339,'2005-08-24 21:24:06',2,'2006-02-15 21:30:53'),(13986,'2005-08-20 19:13:23',3701,152,'2005-08-22 20:59:23',2,'2006-02-15 21:30:53'),(13987,'2005-08-20 19:19:30',1443,246,'2005-08-23 15:37:30',2,'2006-02-15 21:30:53'),(13988,'2005-08-20 19:21:28',3567,466,'2005-08-21 22:20:28',2,'2006-02-15 21:30:53'),(13989,'2005-08-20 19:27:50',1470,252,'2005-08-28 15:17:50',2,'2006-02-15 21:30:53'),(13990,'2005-08-20 19:29:23',2272,481,'2005-08-25 18:50:23',2,'2006-02-15 21:30:53'),(13991,'2005-08-20 19:29:44',1971,296,'2005-08-24 21:10:44',1,'2006-02-15 21:30:53'),(13992,'2005-08-20 19:30:35',2798,136,'2005-08-24 19:09:35',2,'2006-02-15 21:30:53'),(13993,'2005-08-20 19:32:29',1158,93,'2005-08-26 16:59:29',2,'2006-02-15 21:30:53'),(13994,'2005-08-20 19:33:21',142,180,'2005-08-24 20:55:21',1,'2006-02-15 21:30:53'),(13995,'2005-08-20 19:34:43',3789,381,'2005-08-25 22:25:43',2,'2006-02-15 21:30:53'),(13996,'2005-08-20 19:45:43',3341,306,'2005-08-22 16:47:43',2,'2006-02-15 21:30:53'),(13997,'2005-08-20 19:51:28',2330,175,'2005-08-26 01:29:28',2,'2006-02-15 21:30:53'),(13998,'2005-08-20 19:52:38',3936,530,'2005-08-26 14:57:38',1,'2006-02-15 21:30:53'),(13999,'2005-08-20 19:53:32',4149,239,'2005-08-26 19:01:32',1,'2006-02-15 21:30:53'),(14000,'2005-08-20 20:06:05',3907,276,'2005-08-28 17:02:05',1,'2006-02-15 21:30:53'),(14001,'2005-08-20 20:07:15',1318,120,'2005-08-27 00:50:15',2,'2006-02-15 21:30:53'),(14002,'2005-08-20 20:12:19',87,33,'2005-08-23 00:23:19',1,'2006-02-15 21:30:53'),(14003,'2005-08-20 20:16:06',3165,256,'2005-08-28 14:36:06',1,'2006-02-15 21:30:53'),(14004,'2005-08-20 20:16:35',3445,358,'2005-08-28 17:23:35',2,'2006-02-15 21:30:53'),(14005,'2005-08-20 20:19:05',1415,135,'2005-08-26 01:42:05',2,'2006-02-15 21:30:53'),(14006,'2005-08-20 20:21:36',2189,186,'2005-08-21 15:26:36',1,'2006-02-15 21:30:53'),(14007,'2005-08-20 20:22:47',374,284,'2005-08-28 20:40:47',2,'2006-02-15 21:30:53'),(14008,'2005-08-20 20:26:00',2427,560,'2005-08-28 17:23:00',2,'2006-02-15 21:30:53'),(14009,'2005-08-20 20:26:53',3004,382,'2005-08-21 23:32:53',2,'2006-02-15 21:30:53'),(14010,'2005-08-20 20:29:46',934,537,'2005-08-26 17:37:46',2,'2006-02-15 21:30:53'),(14011,'2005-08-20 20:32:56',1212,379,'2005-08-28 21:44:56',1,'2006-02-15 21:30:53'),(14012,'2005-08-20 20:42:12',1866,274,'2005-08-23 23:10:12',2,'2006-02-15 21:30:53'),(14013,'2005-08-20 20:42:50',3941,496,'2005-08-25 21:37:50',2,'2006-02-15 21:30:53'),(14014,'2005-08-20 20:47:09',2188,335,'2005-08-21 22:08:09',2,'2006-02-15 21:30:53'),(14015,'2005-08-20 20:47:43',3145,554,'2005-08-26 19:37:43',1,'2006-02-15 21:30:53'),(14016,'2005-08-20 20:52:03',509,220,'2005-08-23 18:04:03',2,'2006-02-15 21:30:53'),(14017,'2005-08-20 20:55:32',920,230,'2005-08-23 16:12:32',1,'2006-02-15 21:30:53'),(14018,'2006-02-14 15:16:03',2136,533,NULL,2,'2006-02-15 21:30:53'),(14019,'2005-08-20 20:59:15',1929,202,'2005-08-28 17:29:15',2,'2006-02-15 21:30:53'),(14020,'2005-08-20 20:59:43',2257,72,'2005-08-23 17:11:43',2,'2006-02-15 21:30:53'),(14021,'2005-08-20 21:02:12',4394,147,'2005-08-27 22:15:12',1,'2006-02-15 21:30:53'),(14022,'2005-08-20 21:08:49',4068,170,'2005-08-29 21:57:49',1,'2006-02-15 21:30:53'),(14023,'2005-08-20 21:10:32',2668,304,'2005-08-23 20:57:32',1,'2006-02-15 21:30:53'),(14024,'2005-08-20 21:13:58',1492,87,'2005-08-29 23:02:58',1,'2006-02-15 21:30:53'),(14025,'2005-08-20 21:19:36',4521,37,'2005-08-29 23:39:36',1,'2006-02-15 21:30:53'),(14026,'2005-08-20 21:21:08',115,231,'2005-08-22 23:19:08',2,'2006-02-15 21:30:53'),(14027,'2005-08-20 21:21:34',284,432,'2005-08-28 17:46:34',1,'2006-02-15 21:30:53'),(14028,'2005-08-20 21:23:03',4061,158,'2005-08-25 17:29:03',2,'2006-02-15 21:30:53'),(14029,'2005-08-20 21:23:11',2653,219,'2005-08-22 18:01:11',2,'2006-02-15 21:30:53'),(14030,'2005-08-20 21:23:54',1027,127,'2005-08-27 01:19:54',1,'2006-02-15 21:30:53'),(14031,'2005-08-20 21:24:24',440,361,'2005-08-23 21:47:24',2,'2006-02-15 21:30:53'),(14032,'2005-08-20 21:26:55',3542,317,'2005-08-26 19:19:55',1,'2006-02-15 21:30:53'),(14033,'2005-08-20 21:30:53',525,243,'2005-08-23 01:45:53',2,'2006-02-15 21:30:53'),(14034,'2005-08-20 21:31:52',3484,200,'2005-08-29 00:13:52',1,'2006-02-15 21:30:53'),(14035,'2005-08-20 21:31:58',2035,260,'2005-08-22 16:28:58',1,'2006-02-15 21:30:53'),(14036,'2005-08-20 21:35:27',202,256,'2005-08-23 03:29:27',1,'2006-02-15 21:30:53'),(14037,'2005-08-20 21:35:58',3655,372,'2005-08-29 23:06:58',2,'2006-02-15 21:30:53'),(14038,'2005-08-20 21:39:23',1069,589,'2005-08-27 23:57:23',2,'2006-02-15 21:30:53'),(14039,'2005-08-20 21:39:43',4187,383,'2005-08-24 19:03:43',1,'2006-02-15 21:30:53'),(14040,'2005-08-20 21:43:44',905,17,'2005-08-25 16:30:44',1,'2006-02-15 21:30:53'),(14041,'2005-08-20 21:45:23',52,247,'2005-08-26 01:42:23',1,'2006-02-15 21:30:53'),(14042,'2005-08-20 21:45:51',505,322,'2005-08-23 19:57:51',2,'2006-02-15 21:30:53'),(14043,'2005-08-20 21:46:43',1485,586,'2005-08-21 18:27:43',2,'2006-02-15 21:30:53'),(14044,'2005-08-20 21:48:38',1422,145,'2005-08-29 02:56:38',1,'2006-02-15 21:30:53'),(14045,'2005-08-20 21:50:11',3010,509,'2005-08-25 19:03:11',2,'2006-02-15 21:30:53'),(14046,'2005-08-20 21:53:21',2352,524,'2005-08-23 17:51:21',2,'2006-02-15 21:30:53'),(14047,'2005-08-20 22:00:43',186,579,'2005-08-24 03:17:43',2,'2006-02-15 21:30:53'),(14048,'2005-08-20 22:03:18',3475,105,'2005-08-25 02:57:18',2,'2006-02-15 21:30:53'),(14049,'2005-08-20 22:08:55',1335,112,'2005-08-28 20:24:55',1,'2006-02-15 21:30:53'),(14050,'2005-08-20 22:09:04',1737,596,'2005-08-26 01:39:04',2,'2006-02-15 21:30:53'),(14051,'2005-08-20 22:09:51',4012,362,'2005-08-29 04:04:51',2,'2006-02-15 21:30:53'),(14052,'2005-08-20 22:11:46',3893,514,'2005-08-22 20:26:46',2,'2006-02-15 21:30:53'),(14053,'2005-08-20 22:13:59',2177,5,'2005-08-26 20:50:59',2,'2006-02-15 21:30:53'),(14054,'2005-08-20 22:17:01',338,50,'2005-08-21 21:34:01',1,'2006-02-15 21:30:53'),(14055,'2005-08-20 22:18:00',1571,148,'2005-08-22 02:09:00',2,'2006-02-15 21:30:53'),(14056,'2005-08-20 22:18:53',1300,22,'2005-08-27 01:05:53',2,'2006-02-15 21:30:53'),(14057,'2005-08-20 22:22:59',1526,333,'2005-08-25 16:58:59',2,'2006-02-15 21:30:53'),(14058,'2005-08-20 22:24:35',178,430,'2005-08-30 02:26:35',1,'2006-02-15 21:30:53'),(14059,'2005-08-20 22:24:44',2045,141,'2005-08-26 21:25:44',2,'2006-02-15 21:30:53'),(14060,'2006-02-14 15:16:03',3100,175,NULL,2,'2006-02-15 21:30:53'),(14061,'2005-08-20 22:32:11',73,53,'2005-08-22 19:28:11',1,'2006-02-15 21:30:53'),(14062,'2005-08-20 22:34:34',2841,239,'2005-08-25 17:11:34',2,'2006-02-15 21:30:53'),(14063,'2005-08-20 22:36:40',1215,275,'2005-08-25 00:18:40',2,'2006-02-15 21:30:53'),(14064,'2005-08-20 22:39:16',2938,103,'2005-08-22 00:45:16',2,'2006-02-15 21:30:53'),(14065,'2005-08-20 22:40:47',3758,190,'2005-08-24 01:47:47',1,'2006-02-15 21:30:53'),(14066,'2005-08-20 22:45:58',2444,274,'2005-08-29 00:23:58',2,'2006-02-15 21:30:53'),(14067,'2005-08-20 22:49:23',1376,259,'2005-08-29 22:28:23',2,'2006-02-15 21:30:53'),(14068,'2005-08-20 22:50:59',818,412,'2005-08-29 00:45:59',1,'2006-02-15 21:30:53'),(14069,'2005-08-20 22:51:25',2239,197,'2005-08-30 00:30:25',2,'2006-02-15 21:30:53'),(14070,'2005-08-20 22:56:34',846,581,'2005-08-29 22:02:34',1,'2006-02-15 21:30:53'),(14071,'2005-08-20 23:01:56',2471,550,'2005-08-22 02:14:56',1,'2006-02-15 21:30:53'),(14072,'2005-08-20 23:07:10',2387,515,'2005-08-23 03:38:10',2,'2006-02-15 21:30:53'),(14073,'2005-08-20 23:12:57',2996,230,'2005-08-28 18:47:57',2,'2006-02-15 21:30:53'),(14074,'2005-08-20 23:16:07',1303,506,'2005-08-26 04:45:07',1,'2006-02-15 21:30:53'),(14075,'2005-08-20 23:18:54',3793,32,'2005-08-26 21:59:54',2,'2006-02-15 21:30:53'),(14076,'2005-08-20 23:20:10',1070,574,'2005-08-24 04:00:10',1,'2006-02-15 21:30:53'),(14077,'2005-08-20 23:24:07',3184,21,'2005-08-29 02:53:07',1,'2006-02-15 21:30:53'),(14078,'2005-08-20 23:26:40',1642,396,'2005-08-28 02:30:40',1,'2006-02-15 21:30:53'),(14079,'2005-08-20 23:29:25',3528,348,'2005-08-25 04:16:25',2,'2006-02-15 21:30:53'),(14080,'2005-08-20 23:29:50',3962,266,'2005-08-26 00:33:50',1,'2006-02-15 21:30:53'),(14081,'2005-08-20 23:35:13',589,392,'2005-08-28 01:41:13',2,'2006-02-15 21:30:53'),(14082,'2005-08-20 23:42:00',3767,179,'2005-08-27 00:59:00',1,'2006-02-15 21:30:53'),(14083,'2005-08-20 23:42:31',1823,176,'2005-08-28 21:44:31',1,'2006-02-15 21:30:53'),(14084,'2005-08-20 23:42:46',900,37,'2005-08-24 20:06:46',1,'2006-02-15 21:30:53'),(14085,'2005-08-20 23:46:24',3506,471,'2005-08-29 02:31:24',2,'2006-02-15 21:30:53'),(14086,'2005-08-20 23:47:54',3244,253,'2005-08-27 22:49:54',1,'2006-02-15 21:30:53'),(14087,'2005-08-20 23:53:40',2368,289,'2005-08-26 20:22:40',1,'2006-02-15 21:30:53'),(14088,'2005-08-20 23:57:24',1184,518,'2005-08-28 21:49:24',1,'2006-02-15 21:30:53'),(14089,'2005-08-20 23:59:02',1400,425,'2005-08-27 00:19:02',1,'2006-02-15 21:30:53'),(14090,'2005-08-21 00:11:16',3254,168,'2005-08-23 19:48:16',2,'2006-02-15 21:30:53'),(14091,'2005-08-21 00:11:17',3304,53,'2005-08-27 18:38:17',1,'2006-02-15 21:30:53'),(14092,'2005-08-21 00:14:32',1596,273,'2005-08-24 22:22:32',2,'2006-02-15 21:30:53'),(14093,'2005-08-21 00:21:29',1176,177,'2005-08-22 04:01:29',1,'2006-02-15 21:30:53'),(14094,'2005-08-21 00:21:35',3674,471,'2005-08-23 05:27:35',2,'2006-02-15 21:30:53'),(14095,'2005-08-21 00:25:45',1550,489,'2005-08-28 23:00:45',1,'2006-02-15 21:30:53'),(14096,'2005-08-21 00:27:46',2089,342,'2005-08-22 22:53:46',1,'2006-02-15 21:30:53'),(14097,'2005-08-21 00:28:48',4351,88,'2005-08-29 22:15:48',1,'2006-02-15 21:30:53'),(14098,'2005-08-21 00:30:32',6,554,NULL,2,'2006-02-23 04:12:08'),(14099,'2005-08-21 00:31:03',2452,224,'2005-08-27 03:18:03',2,'2006-02-15 21:30:53'),(14100,'2005-08-21 00:31:07',4295,397,'2005-08-25 05:31:07',2,'2006-02-15 21:30:53'),(14101,'2005-08-21 00:33:03',1892,19,'2005-08-24 01:59:03',1,'2006-02-15 21:30:53'),(14102,'2005-08-21 00:35:21',3772,584,'2005-08-30 04:51:21',2,'2006-02-15 21:30:53'),(14103,'2005-08-21 00:37:00',1438,409,'2005-08-25 22:09:00',2,'2006-02-15 21:30:53'),(14104,'2005-08-21 00:37:44',912,178,'2005-08-21 22:55:44',2,'2006-02-15 21:30:53'),(14105,'2005-08-21 00:44:34',1111,71,'2005-08-29 19:00:34',1,'2006-02-15 21:30:53'),(14106,'2005-08-21 00:46:01',2673,315,'2005-08-27 23:44:01',1,'2006-02-15 21:30:53'),(14107,'2006-02-14 15:16:03',3998,251,NULL,1,'2006-02-15 21:30:53'),(14108,'2005-08-21 00:52:45',4339,243,'2005-08-21 19:35:45',2,'2006-02-15 21:30:53'),(14109,'2005-08-21 00:52:58',1046,180,'2005-08-22 00:09:58',2,'2006-02-15 21:30:53'),(14110,'2005-08-21 00:53:09',2709,35,'2005-08-24 05:33:09',2,'2006-02-15 21:30:53'),(14111,'2005-08-21 00:59:01',1294,130,'2005-08-22 20:43:01',2,'2006-02-15 21:30:53'),(14112,'2005-08-21 01:00:46',734,141,'2005-08-27 03:46:46',1,'2006-02-15 21:30:53'),(14113,'2005-08-21 01:03:30',931,288,'2005-08-23 06:46:30',2,'2006-02-15 21:30:53'),(14114,'2005-08-21 01:07:11',2270,8,'2005-08-24 20:33:11',1,'2006-02-15 21:30:53'),(14115,'2005-08-21 01:10:29',1945,257,'2005-08-24 01:21:29',1,'2006-02-15 21:30:53'),(14116,'2005-08-21 01:11:17',2356,142,'2005-08-24 23:45:17',2,'2006-02-15 21:30:53'),(14117,'2005-08-21 01:11:59',573,493,'2005-08-22 06:56:59',1,'2006-02-15 21:30:53'),(14118,'2005-08-21 01:13:37',2605,337,'2005-08-28 02:35:37',2,'2006-02-15 21:30:53'),(14119,'2005-08-21 01:15:59',129,53,'2005-08-27 23:36:59',2,'2006-02-15 21:30:53'),(14120,'2005-08-21 01:25:00',4069,302,'2005-08-24 23:21:00',2,'2006-02-15 21:30:53'),(14121,'2005-08-21 01:26:33',4207,417,'2005-08-28 22:47:33',2,'2006-02-15 21:30:53'),(14122,'2005-08-21 01:29:01',3955,86,'2005-08-27 05:31:01',1,'2006-02-15 21:30:53'),(14123,'2005-08-21 01:31:25',143,66,'2005-08-23 02:32:25',1,'2006-02-15 21:30:53'),(14124,'2005-08-21 01:31:51',311,35,'2005-08-24 22:20:51',2,'2006-02-15 21:30:53'),(14125,'2005-08-21 01:32:16',2174,265,'2005-08-26 00:09:16',1,'2006-02-15 21:30:53'),(14126,'2005-08-21 01:32:17',2738,215,'2005-08-23 01:02:17',1,'2006-02-15 21:30:53'),(14127,'2005-08-21 01:33:32',4532,550,'2005-08-22 02:47:32',2,'2006-02-15 21:30:53'),(14128,'2005-08-21 01:35:58',2594,81,'2005-08-21 21:23:58',2,'2006-02-15 21:30:53'),(14129,'2005-08-21 01:42:15',3572,362,'2005-08-23 20:04:15',2,'2006-02-15 21:30:53'),(14130,'2005-08-21 01:43:11',3859,352,'2005-08-27 21:16:11',2,'2006-02-15 21:30:53'),(14131,'2005-08-21 01:43:40',4382,267,'2005-08-29 02:00:40',2,'2006-02-15 21:30:53'),(14132,'2005-08-21 01:43:58',3806,91,'2005-08-26 20:16:58',2,'2006-02-15 21:30:53'),(14133,'2005-08-21 01:44:14',2463,453,'2005-08-30 02:19:14',2,'2006-02-15 21:30:53'),(14134,'2005-08-21 01:45:54',2159,497,'2005-08-24 01:36:54',1,'2006-02-15 21:30:53'),(14135,'2005-08-21 01:53:54',347,59,'2005-08-27 05:57:54',1,'2006-02-15 21:30:53'),(14136,'2005-08-21 01:57:26',268,135,'2005-08-28 01:11:26',1,'2006-02-15 21:30:53'),(14137,'2006-02-14 15:16:03',2346,53,NULL,2,'2006-02-15 21:30:53'),(14138,'2005-08-21 01:59:37',1238,121,'2005-08-30 01:17:37',2,'2006-02-15 21:30:53'),(14139,'2005-08-21 02:04:33',2280,561,'2005-08-22 04:16:33',2,'2006-02-15 21:30:53'),(14140,'2005-08-21 02:04:57',2070,65,'2005-08-29 06:41:57',2,'2006-02-15 21:30:53'),(14141,'2005-08-21 02:07:22',4527,190,'2005-08-30 07:32:22',1,'2006-02-15 21:30:53'),(14142,'2005-08-21 02:07:43',1479,544,'2005-08-23 02:37:43',2,'2006-02-15 21:30:53'),(14143,'2005-08-21 02:10:32',2549,146,'2005-08-23 23:50:32',1,'2006-02-15 21:30:53'),(14144,'2005-08-21 02:10:57',2366,46,'2005-08-28 01:02:57',1,'2006-02-15 21:30:53'),(14145,'2005-08-21 02:11:38',150,314,'2005-08-22 22:19:38',2,'2006-02-15 21:30:53'),(14146,'2005-08-21 02:13:31',2151,192,'2005-08-24 22:47:31',2,'2006-02-15 21:30:53'),(14147,'2005-08-21 02:14:03',1476,366,'2005-08-27 22:38:03',1,'2006-02-15 21:30:53'),(14148,'2005-08-21 02:17:49',1605,528,'2005-08-22 00:12:49',1,'2006-02-15 21:30:53'),(14149,'2005-08-21 02:22:47',3371,518,'2005-08-24 02:36:47',1,'2006-02-15 21:30:53'),(14150,'2005-08-21 02:23:03',2324,161,'2005-08-25 22:50:03',2,'2006-02-15 21:30:53'),(14151,'2005-08-21 02:23:25',2785,426,'2005-08-30 07:08:25',1,'2006-02-15 21:30:53'),(14152,'2005-08-21 02:23:50',2561,379,'2005-08-25 06:05:50',1,'2006-02-15 21:30:53'),(14153,'2005-08-21 02:24:33',1502,120,'2005-08-27 05:28:33',2,'2006-02-15 21:30:53'),(14154,'2005-08-21 02:30:00',951,468,'2005-08-28 01:41:00',2,'2006-02-15 21:30:53'),(14155,'2005-08-21 02:31:35',769,148,'2005-08-27 06:00:35',2,'2006-02-15 21:30:53'),(14156,'2005-08-21 02:35:16',437,147,'2005-08-27 01:32:16',2,'2006-02-15 21:30:53'),(14157,'2005-08-21 02:43:15',4471,128,'2005-08-24 02:47:15',1,'2006-02-15 21:30:53'),(14158,'2005-08-21 02:43:20',474,114,'2005-08-28 02:19:20',1,'2006-02-15 21:30:53'),(14159,'2005-08-21 02:45:58',3231,144,'2005-08-27 04:53:58',1,'2006-02-15 21:30:53'),(14160,'2006-02-14 15:16:03',2428,493,NULL,2,'2006-02-15 21:30:53'),(14161,'2005-08-21 02:51:59',2744,21,'2005-08-28 21:38:59',2,'2006-02-15 21:30:53'),(14162,'2005-08-21 02:55:34',3788,315,'2005-08-27 00:13:34',1,'2006-02-15 21:30:53'),(14163,'2005-08-21 02:56:52',1007,204,'2005-08-21 21:03:52',2,'2006-02-15 21:30:53'),(14164,'2005-08-21 02:58:02',2381,274,'2005-08-29 23:17:02',2,'2006-02-15 21:30:53'),(14165,'2005-08-21 02:59:17',4151,150,'2005-08-24 23:09:17',2,'2006-02-15 21:30:53'),(14166,'2005-08-21 02:59:31',2457,190,'2005-08-24 23:19:31',2,'2006-02-15 21:30:53'),(14167,'2005-08-21 02:59:48',1005,64,'2005-08-29 22:17:48',1,'2006-02-15 21:30:53'),(14168,'2005-08-21 03:00:03',1321,49,'2005-08-29 06:04:03',2,'2006-02-15 21:30:53'),(14169,'2005-08-21 03:00:31',3800,396,'2005-08-30 01:16:31',1,'2006-02-15 21:30:53'),(14170,'2005-08-21 03:00:39',894,259,'2005-08-27 23:07:39',1,'2006-02-15 21:30:53'),(14171,'2005-08-21 03:00:42',4179,320,'2005-08-24 00:54:42',1,'2006-02-15 21:30:53'),(14172,'2006-02-14 15:16:03',2158,450,NULL,2,'2006-02-15 21:30:53'),(14173,'2005-08-21 03:01:01',3175,152,'2005-08-22 02:40:01',1,'2006-02-15 21:30:53'),(14174,'2005-08-21 03:01:45',1862,29,'2005-08-22 07:19:45',2,'2006-02-15 21:30:53'),(14175,'2006-02-14 15:16:03',2021,452,NULL,1,'2006-02-15 21:30:53'),(14176,'2005-08-21 03:09:23',4420,556,'2005-08-26 21:26:23',1,'2006-02-15 21:30:53'),(14177,'2005-08-21 03:11:33',409,121,'2005-08-28 21:41:33',2,'2006-02-15 21:30:53'),(14178,'2005-08-21 03:13:45',2178,524,'2005-08-22 01:50:45',1,'2006-02-15 21:30:53'),(14179,'2005-08-21 03:14:27',3956,79,'2005-08-26 00:46:27',2,'2006-02-15 21:30:53'),(14180,'2005-08-21 03:16:15',796,262,'2005-08-24 22:31:15',2,'2006-02-15 21:30:53'),(14181,'2005-08-21 03:16:30',197,210,'2005-08-29 06:25:30',2,'2006-02-15 21:30:53'),(14182,'2005-08-21 03:17:10',2422,519,'2005-08-24 21:46:10',1,'2006-02-15 21:30:53'),(14183,'2005-08-21 03:24:29',1888,26,'2005-08-22 07:25:29',2,'2006-02-15 21:30:53'),(14184,'2005-08-21 03:24:50',3759,148,'2005-08-29 01:46:50',2,'2006-02-15 21:30:53'),(14185,'2005-08-21 03:28:37',3957,579,'2005-08-26 01:15:37',1,'2006-02-15 21:30:53'),(14186,'2005-08-21 03:31:07',3158,461,'2005-08-28 07:29:07',2,'2006-02-15 21:30:53'),(14187,'2005-08-21 03:32:03',4031,275,'2005-08-25 03:29:03',2,'2006-02-15 21:30:53'),(14188,'2005-08-21 03:32:04',4492,548,'2005-08-22 07:26:04',1,'2006-02-15 21:30:53'),(14189,'2005-08-21 03:32:17',2209,127,'2005-08-22 04:46:17',2,'2006-02-15 21:30:53'),(14190,'2005-08-21 03:35:21',4203,517,'2005-08-29 07:35:21',2,'2006-02-15 21:30:53'),(14191,'2005-08-21 03:35:58',301,423,'2005-08-28 00:28:58',1,'2006-02-15 21:30:53'),(14192,'2005-08-21 03:37:42',3563,26,'2005-08-28 05:31:42',2,'2006-02-15 21:30:53'),(14193,'2005-08-21 03:38:27',513,25,'2005-08-28 09:16:27',1,'2006-02-15 21:30:53'),(14194,'2005-08-21 03:40:11',2003,138,'2005-08-26 07:38:11',1,'2006-02-15 21:30:53'),(14195,'2005-08-21 03:40:35',3732,93,'2005-08-23 01:22:35',1,'2006-02-15 21:30:53'),(14196,'2005-08-21 03:40:40',4477,281,'2005-08-25 05:55:40',1,'2006-02-15 21:30:53'),(14197,'2005-08-21 03:47:25',340,469,'2005-08-30 09:15:25',2,'2006-02-15 21:30:53'),(14198,'2005-08-21 03:48:31',465,381,'2005-08-24 07:10:31',2,'2006-02-15 21:30:53'),(14199,'2005-08-21 03:48:43',658,442,'2005-08-23 04:01:43',1,'2006-02-15 21:30:53'),(14200,'2005-08-21 03:51:27',2339,349,'2005-08-29 22:00:27',1,'2006-02-15 21:30:53'),(14201,'2005-08-21 03:51:34',314,427,'2005-08-30 03:42:34',2,'2006-02-15 21:30:53'),(14202,'2005-08-21 03:51:52',1995,473,'2005-08-22 09:35:52',1,'2006-02-15 21:30:53'),(14203,'2005-08-21 03:51:52',3668,95,'2005-08-24 06:13:52',2,'2006-02-15 21:30:53'),(14204,'2006-02-14 15:16:03',4334,287,NULL,1,'2006-02-15 21:30:53'),(14205,'2005-08-21 03:57:15',315,406,'2005-08-30 08:46:15',2,'2006-02-15 21:30:53'),(14206,'2005-08-21 03:59:26',860,279,'2005-08-26 03:52:26',1,'2006-02-15 21:30:53'),(14207,'2005-08-21 04:08:19',1327,569,'2005-08-29 07:59:19',2,'2006-02-15 21:30:53'),(14208,'2005-08-21 04:09:18',4180,299,'2005-08-22 03:29:18',1,'2006-02-15 21:30:53'),(14209,'2005-08-21 04:17:56',896,472,'2005-08-27 06:57:56',1,'2006-02-15 21:30:53'),(14210,'2005-08-21 04:28:02',1867,468,'2005-08-24 02:14:02',2,'2006-02-15 21:30:53'),(14211,'2005-08-21 04:29:11',300,372,'2005-08-24 02:50:11',2,'2006-02-15 21:30:53'),(14212,'2005-08-21 04:29:26',4540,354,'2005-08-24 00:46:26',2,'2006-02-15 21:30:53'),(14213,'2005-08-21 04:30:47',382,511,'2005-08-24 23:01:47',1,'2006-02-15 21:30:53'),(14214,'2005-08-21 04:30:49',4510,198,'2005-08-26 04:42:49',1,'2006-02-15 21:30:53'),(14215,'2005-08-21 04:34:11',35,54,'2005-08-27 10:30:11',2,'2006-02-15 21:30:53'),(14216,'2006-02-14 15:16:03',3763,186,NULL,1,'2006-02-15 21:30:53'),(14217,'2005-08-21 04:37:56',2847,66,'2005-08-26 03:55:56',2,'2006-02-15 21:30:53'),(14218,'2005-08-21 04:43:59',4087,104,'2005-08-27 10:29:59',1,'2006-02-15 21:30:53'),(14219,'2006-02-14 15:16:03',3718,334,NULL,2,'2006-02-15 21:30:53'),(14220,'2006-02-14 15:16:03',2618,162,NULL,1,'2006-02-15 21:30:53'),(14221,'2005-08-21 04:49:41',3824,51,'2005-08-29 23:52:41',1,'2006-02-15 21:30:53'),(14222,'2005-08-21 04:49:48',714,7,'2005-08-25 05:34:48',2,'2006-02-15 21:30:53'),(14223,'2005-08-21 04:51:51',514,392,'2005-08-29 00:37:51',1,'2006-02-15 21:30:53'),(14224,'2005-08-21 04:53:08',3634,323,'2005-08-27 04:12:08',2,'2006-02-15 21:30:53'),(14225,'2005-08-21 04:53:37',984,4,'2005-08-25 23:39:37',2,'2006-02-15 21:30:53'),(14226,'2005-08-21 04:55:37',1793,316,'2005-08-24 04:32:37',1,'2006-02-15 21:30:53'),(14227,'2005-08-21 04:56:31',4102,277,'2005-08-22 05:04:31',2,'2006-02-15 21:30:53'),(14228,'2005-08-21 04:57:08',2016,71,'2005-08-25 00:06:08',2,'2006-02-15 21:30:53'),(14229,'2005-08-21 04:57:15',4479,186,'2005-08-26 10:00:15',1,'2006-02-15 21:30:53'),(14230,'2005-08-21 04:57:29',844,584,'2005-08-27 08:14:29',2,'2006-02-15 21:30:53'),(14231,'2005-08-21 05:04:34',1244,307,'2005-08-23 04:58:34',1,'2006-02-15 21:30:53'),(14232,'2005-08-21 05:07:02',2710,176,'2005-08-29 06:57:02',1,'2006-02-15 21:30:53'),(14233,'2005-08-21 05:07:08',2943,599,'2005-08-28 03:20:08',1,'2006-02-15 21:30:53'),(14234,'2005-08-21 05:07:12',1439,271,'2005-08-23 06:44:12',2,'2006-02-15 21:30:53'),(14235,'2005-08-21 05:08:42',125,558,'2005-08-29 23:36:42',1,'2006-02-15 21:30:53'),(14236,'2005-08-21 05:13:16',172,25,'2005-08-26 04:03:16',2,'2006-02-15 21:30:53'),(14237,'2005-08-21 05:15:00',3284,410,'2005-08-25 10:06:00',1,'2006-02-15 21:30:53'),(14238,'2005-08-21 05:16:40',3148,192,'2005-08-30 02:13:40',2,'2006-02-15 21:30:53'),(14239,'2005-08-21 05:18:57',1559,416,'2005-08-22 00:12:57',2,'2006-02-15 21:30:53'),(14240,'2005-08-21 05:19:39',3294,12,'2005-08-22 23:25:39',2,'2006-02-15 21:30:53'),(14241,'2005-08-21 05:24:55',2547,291,'2005-08-30 03:33:55',1,'2006-02-15 21:30:53'),(14242,'2005-08-21 05:25:59',1588,68,'2005-08-27 07:22:59',1,'2006-02-15 21:30:53'),(14243,'2006-02-14 15:16:03',1489,264,NULL,1,'2006-02-15 21:30:53'),(14244,'2005-08-21 05:29:55',1150,43,'2005-08-24 01:06:55',1,'2006-02-15 21:30:53'),(14245,'2005-08-21 05:30:54',975,354,'2005-08-26 07:02:54',1,'2006-02-15 21:30:53'),(14246,'2005-08-21 05:34:09',3499,120,'2005-08-26 06:12:09',1,'2006-02-15 21:30:53'),(14247,'2005-08-21 05:35:17',267,302,'2005-08-26 03:22:17',1,'2006-02-15 21:30:53'),(14248,'2005-08-21 05:35:57',725,293,'2005-08-28 05:53:57',2,'2006-02-15 21:30:53'),(14249,'2005-08-21 05:38:05',695,268,'2005-08-28 09:07:05',2,'2006-02-15 21:30:53'),(14250,'2005-08-21 05:39:35',3008,313,'2005-08-28 10:06:35',2,'2006-02-15 21:30:53'),(14251,'2005-08-21 05:42:20',139,486,'2005-08-26 06:20:20',2,'2006-02-15 21:30:53'),(14252,'2005-08-21 05:44:07',2660,13,'2005-08-29 08:53:07',1,'2006-02-15 21:30:53'),(14253,'2005-08-21 05:47:52',4246,456,'2005-08-25 04:28:52',1,'2006-02-15 21:30:53'),(14254,'2005-08-21 05:51:28',1549,589,'2005-08-29 06:05:28',2,'2006-02-15 21:30:53'),(14255,'2005-08-21 05:51:37',3125,492,'2005-08-29 10:00:37',1,'2006-02-15 21:30:53'),(14256,'2005-08-21 05:52:27',2922,331,'2005-08-29 02:10:27',2,'2006-02-15 21:30:53'),(14257,'2005-08-21 05:52:57',3830,178,'2005-08-29 03:18:57',2,'2006-02-15 21:30:53'),(14258,'2005-08-21 05:56:36',752,359,'2005-08-26 06:14:36',1,'2006-02-15 21:30:53'),(14259,'2005-08-21 06:00:22',3705,583,'2005-08-22 05:38:22',2,'2006-02-15 21:30:53'),(14260,'2005-08-21 06:01:08',2961,40,'2005-08-29 09:01:08',2,'2006-02-15 21:30:53'),(14261,'2005-08-21 06:07:24',1426,166,'2005-08-26 09:57:24',1,'2006-02-15 21:30:53'),(14262,'2005-08-21 06:08:13',1430,324,'2005-08-30 10:55:13',1,'2006-02-15 21:30:53'),(14263,'2005-08-21 06:08:15',2595,533,'2005-08-29 09:22:15',2,'2006-02-15 21:30:53'),(14264,'2005-08-21 06:18:22',3426,295,'2005-08-25 08:08:22',1,'2006-02-15 21:30:53'),(14265,'2005-08-21 06:20:14',3116,134,'2005-08-23 09:05:14',1,'2006-02-15 21:30:53'),(14266,'2005-08-21 06:20:51',3543,269,'2005-08-23 00:44:51',1,'2006-02-15 21:30:53'),(14267,'2006-02-14 15:16:03',2199,527,NULL,2,'2006-02-15 21:30:53'),(14268,'2005-08-21 06:21:24',2442,278,'2005-08-23 05:39:24',2,'2006-02-15 21:30:53'),(14269,'2005-08-21 06:22:07',531,241,'2005-08-30 00:41:07',2,'2006-02-15 21:30:53'),(14270,'2005-08-21 06:22:18',4083,171,'2005-08-27 08:04:18',1,'2006-02-15 21:30:53'),(14271,'2005-08-21 06:23:29',4506,224,'2005-08-27 04:49:29',1,'2006-02-15 21:30:53'),(14272,'2005-08-21 06:24:55',3908,243,'2005-08-28 02:25:55',1,'2006-02-15 21:30:53'),(14273,'2005-08-21 06:26:48',2640,388,'2005-08-30 10:34:48',1,'2006-02-15 21:30:53'),(14274,'2005-08-21 06:29:20',3183,405,'2005-08-26 06:25:20',2,'2006-02-15 21:30:53'),(14275,'2005-08-21 06:30:30',3238,163,'2005-08-25 12:28:30',1,'2006-02-15 21:30:53'),(14276,'2005-08-21 06:34:05',3637,318,'2005-08-28 10:13:05',2,'2006-02-15 21:30:53'),(14277,'2005-08-21 06:34:41',2652,566,'2005-08-28 10:53:41',2,'2006-02-15 21:30:53'),(14278,'2006-02-14 15:16:03',2334,557,NULL,2,'2006-02-15 21:30:53'),(14279,'2005-08-21 06:39:08',3325,387,'2005-08-29 11:01:08',2,'2006-02-15 21:30:53'),(14280,'2005-08-21 06:39:58',1561,481,'2005-08-23 04:50:58',1,'2006-02-15 21:30:53'),(14281,'2005-08-21 06:40:48',1848,166,'2005-08-26 11:42:48',2,'2006-02-15 21:30:53'),(14282,'2005-08-21 06:41:29',3107,450,'2005-08-22 12:37:29',1,'2006-02-15 21:30:53'),(14283,'2005-08-21 06:44:14',3052,253,'2005-08-24 01:01:14',1,'2006-02-15 21:30:53'),(14284,'2005-08-21 06:44:37',633,486,'2005-08-28 05:03:37',1,'2006-02-15 21:30:53'),(14285,'2005-08-21 06:50:48',402,249,'2005-08-28 11:35:48',1,'2006-02-15 21:30:53'),(14286,'2005-08-21 06:53:53',2377,558,'2005-08-27 11:37:53',2,'2006-02-15 21:30:53'),(14287,'2005-08-21 06:53:59',2426,427,'2005-08-25 03:10:59',2,'2006-02-15 21:30:53'),(14288,'2005-08-21 06:57:34',587,512,'2005-08-26 11:32:34',1,'2006-02-15 21:30:53'),(14289,'2005-08-21 06:58:49',1185,103,'2005-08-25 11:29:49',2,'2006-02-15 21:30:53'),(14290,'2005-08-21 07:02:59',790,366,'2005-08-28 02:57:59',1,'2006-02-15 21:30:53'),(14291,'2005-08-21 07:03:05',3988,56,'2005-08-26 12:56:05',2,'2006-02-15 21:30:53'),(14292,'2005-08-21 07:06:20',1959,251,'2005-08-22 01:39:20',2,'2006-02-15 21:30:53'),(14293,'2005-08-21 07:06:47',3555,364,'2005-08-22 05:07:47',2,'2006-02-15 21:30:53'),(14294,'2005-08-21 07:07:26',354,455,'2005-08-22 02:20:26',2,'2006-02-15 21:30:53'),(14295,'2005-08-21 07:09:27',2187,336,'2005-08-22 01:27:27',2,'2006-02-15 21:30:53'),(14296,'2005-08-21 07:13:23',3813,275,'2005-08-26 11:14:23',1,'2006-02-15 21:30:53'),(14297,'2005-08-21 07:13:46',1712,566,'2005-08-25 09:07:46',1,'2006-02-15 21:30:53'),(14298,'2005-08-21 07:17:10',4317,410,'2005-08-25 10:10:10',1,'2006-02-15 21:30:53'),(14299,'2005-08-21 07:18:57',4028,342,'2005-08-24 01:28:57',1,'2006-02-15 21:30:53'),(14300,'2005-08-21 07:19:37',690,382,'2005-08-25 12:06:37',2,'2006-02-15 21:30:53'),(14301,'2005-08-21 07:19:48',283,162,'2005-08-28 02:06:48',1,'2006-02-15 21:30:53'),(14302,'2005-08-21 07:19:57',1287,511,'2005-08-28 02:59:57',1,'2006-02-15 21:30:53'),(14303,'2005-08-21 07:22:43',992,475,'2005-08-24 11:52:43',1,'2006-02-15 21:30:53'),(14304,'2005-08-21 07:23:10',2650,417,'2005-08-26 11:21:10',2,'2006-02-15 21:30:53'),(14305,'2005-08-21 07:29:05',2056,58,'2005-08-27 08:18:05',1,'2006-02-15 21:30:53'),(14306,'2005-08-21 07:32:35',4027,453,'2005-08-30 05:53:35',1,'2006-02-15 21:30:53'),(14307,'2005-08-21 07:34:52',2894,328,'2005-08-29 09:45:52',1,'2006-02-15 21:30:53'),(14308,'2005-08-21 07:43:21',3478,419,'2005-08-25 02:39:21',2,'2006-02-15 21:30:53'),(14309,'2005-08-21 07:44:17',4447,468,'2005-08-30 07:23:17',2,'2006-02-15 21:30:53'),(14310,'2005-08-21 07:44:32',95,177,'2005-08-22 09:02:32',1,'2006-02-15 21:30:53'),(14311,'2005-08-21 07:45:47',1761,69,'2005-08-27 02:23:47',2,'2006-02-15 21:30:53'),(14312,'2005-08-21 07:48:34',1090,238,'2005-08-23 04:45:34',1,'2006-02-15 21:30:53'),(14313,'2005-08-21 07:49:53',3384,468,'2005-08-30 05:52:53',2,'2006-02-15 21:30:53'),(14314,'2005-08-21 07:50:14',4115,178,'2005-08-24 10:47:14',2,'2006-02-15 21:30:53'),(14315,'2005-08-21 07:56:39',1164,459,'2005-08-27 04:52:39',1,'2006-02-15 21:30:53'),(14316,'2005-08-21 07:59:47',386,64,'2005-08-23 02:20:47',2,'2006-02-15 21:30:53'),(14317,'2005-08-21 08:00:40',2090,471,'2005-08-27 06:52:40',1,'2006-02-15 21:30:53'),(14318,'2006-02-14 15:16:03',1042,508,NULL,2,'2006-02-15 21:30:53'),(14319,'2005-08-21 08:00:55',4480,410,'2005-08-26 05:04:55',1,'2006-02-15 21:30:53'),(14320,'2005-08-21 08:04:40',3121,199,'2005-08-22 02:09:40',1,'2006-02-15 21:30:53'),(14321,'2005-08-21 08:05:12',967,236,'2005-08-23 02:17:12',1,'2006-02-15 21:30:53'),(14322,'2005-08-21 08:06:30',2818,221,'2005-08-29 10:12:30',2,'2006-02-15 21:30:53'),(14323,'2005-08-21 08:08:43',1257,97,'2005-08-25 10:44:43',1,'2006-02-15 21:30:53'),(14324,'2005-08-21 08:10:56',1361,155,'2005-08-30 12:09:56',1,'2006-02-15 21:30:53'),(14325,'2005-08-21 08:15:38',4432,313,'2005-08-23 08:08:38',2,'2006-02-15 21:30:53'),(14326,'2005-08-21 08:15:41',1052,17,'2005-08-27 05:22:41',1,'2006-02-15 21:30:53'),(14327,'2005-08-21 08:18:18',553,457,'2005-08-30 02:21:18',2,'2006-02-15 21:30:53'),(14328,'2005-08-21 08:18:20',3194,489,'2005-08-25 03:05:20',2,'2006-02-15 21:30:53'),(14329,'2005-08-21 08:22:56',3544,6,'2005-08-28 02:22:56',2,'2006-02-15 21:30:53'),(14330,'2005-08-21 08:29:20',763,84,'2005-08-30 03:59:20',2,'2006-02-15 21:30:53'),(14331,'2005-08-21 08:29:38',3128,372,'2005-08-29 13:18:38',2,'2006-02-15 21:30:53'),(14332,'2005-08-21 08:30:43',1388,496,'2005-08-29 10:51:43',1,'2006-02-15 21:30:53'),(14333,'2005-08-21 08:31:03',2976,93,'2005-08-28 03:39:03',2,'2006-02-15 21:30:53'),(14334,'2005-08-21 08:32:32',1448,595,'2005-08-25 02:53:32',2,'2006-02-15 21:30:53'),(14335,'2005-08-21 08:33:07',2610,263,'2005-08-26 14:16:07',1,'2006-02-15 21:30:53'),(14336,'2005-08-21 08:33:42',3166,362,'2005-08-23 03:27:42',1,'2006-02-15 21:30:53'),(14337,'2005-08-21 08:34:26',3529,506,'2005-08-24 11:31:26',1,'2006-02-15 21:30:53'),(14338,'2005-08-21 08:36:03',1789,205,'2005-08-24 12:31:03',2,'2006-02-15 21:30:53'),(14339,'2005-08-21 08:37:15',1744,30,'2005-08-26 03:37:15',2,'2006-02-15 21:30:53'),(14340,'2005-08-21 08:38:21',2181,230,'2005-08-25 09:25:21',1,'2006-02-15 21:30:53'),(14341,'2005-08-21 08:38:24',4498,560,'2005-08-26 12:36:24',1,'2006-02-15 21:30:53'),(14342,'2005-08-21 08:39:26',2749,559,'2005-08-23 11:40:26',2,'2006-02-15 21:30:53'),(14343,'2005-08-21 08:40:21',3769,238,'2005-08-29 03:06:21',1,'2006-02-15 21:30:53'),(14344,'2005-08-21 08:40:56',1562,341,'2005-08-27 12:40:56',1,'2006-02-15 21:30:53'),(14345,'2005-08-21 08:41:15',1726,598,'2005-08-24 11:59:15',1,'2006-02-15 21:30:53'),(14346,'2005-08-21 08:42:26',109,17,'2005-08-23 09:18:26',2,'2006-02-15 21:30:53'),(14347,'2005-08-21 08:42:31',3862,214,'2005-08-25 07:11:31',2,'2006-02-15 21:30:53'),(14348,'2005-08-21 08:54:26',885,496,'2005-08-24 02:55:26',2,'2006-02-15 21:30:53'),(14349,'2005-08-21 08:54:53',96,119,'2005-08-30 14:27:53',1,'2006-02-15 21:30:53'),(14350,'2005-08-21 08:58:38',3174,222,'2005-08-30 03:29:38',2,'2006-02-15 21:30:53'),(14351,'2005-08-21 09:04:20',2037,66,'2005-08-25 05:27:20',1,'2006-02-15 21:30:53'),(14352,'2005-08-21 09:06:29',1224,527,'2005-08-28 13:36:29',1,'2006-02-15 21:30:53'),(14353,'2005-08-21 09:07:50',1612,129,'2005-08-22 10:31:50',2,'2006-02-15 21:30:53'),(14354,'2005-08-21 09:08:14',1137,382,'2005-08-30 05:27:14',1,'2006-02-15 21:30:53'),(14355,'2005-08-21 09:08:29',649,271,'2005-08-27 10:08:29',2,'2006-02-15 21:30:53'),(14356,'2005-08-21 09:08:51',3169,65,'2005-08-24 04:36:51',2,'2006-02-15 21:30:53'),(14357,'2005-08-21 09:13:09',2906,233,'2005-08-22 05:41:09',2,'2006-02-15 21:30:53'),(14358,'2005-08-21 09:14:28',861,112,'2005-08-24 05:05:28',1,'2006-02-15 21:30:53'),(14359,'2005-08-21 09:16:19',1841,401,'2005-08-22 09:28:19',1,'2006-02-15 21:30:53'),(14360,'2005-08-21 09:16:40',2677,246,'2005-08-29 11:43:40',2,'2006-02-15 21:30:53'),(14361,'2006-02-14 15:16:03',1231,191,NULL,2,'2006-02-15 21:30:53'),(14362,'2005-08-21 09:19:49',1992,312,'2005-08-26 11:06:49',1,'2006-02-15 21:30:53'),(14363,'2005-08-21 09:20:03',2579,560,'2005-08-23 14:26:03',1,'2006-02-15 21:30:53'),(14364,'2005-08-21 09:25:11',3513,236,'2005-08-29 09:04:11',1,'2006-02-15 21:30:53'),(14365,'2005-08-21 09:25:13',618,457,'2005-08-27 11:48:13',1,'2006-02-15 21:30:53'),(14366,'2005-08-21 09:31:39',4011,524,'2005-08-26 11:55:39',2,'2006-02-15 21:30:53'),(14367,'2005-08-21 09:31:44',870,244,'2005-08-26 03:54:44',2,'2006-02-15 21:30:53'),(14368,'2005-08-21 09:31:47',2063,351,'2005-08-30 04:17:47',1,'2006-02-15 21:30:53'),(14369,'2005-08-21 09:33:44',1636,392,'2005-08-25 08:56:44',1,'2006-02-15 21:30:53'),(14370,'2005-08-21 09:35:14',3520,161,'2005-08-27 05:21:14',2,'2006-02-15 21:30:53'),(14371,'2005-08-21 09:37:16',2197,221,'2005-08-27 13:50:16',2,'2006-02-15 21:30:53'),(14372,'2005-08-21 09:39:50',1953,520,'2005-08-28 13:36:50',1,'2006-02-15 21:30:53'),(14373,'2005-08-21 09:44:53',4433,268,'2005-08-25 15:37:53',1,'2006-02-15 21:30:53'),(14374,'2006-02-14 15:16:03',236,213,NULL,2,'2006-02-15 21:30:53'),(14375,'2005-08-21 09:46:35',2507,550,'2005-08-26 10:24:35',2,'2006-02-15 21:30:53'),(14376,'2005-08-21 09:48:56',1936,582,'2005-08-22 12:15:56',2,'2006-02-15 21:30:53'),(14377,'2005-08-21 09:49:28',1325,6,'2005-08-29 13:34:28',1,'2006-02-15 21:30:53'),(14378,'2005-08-21 09:50:02',810,515,'2005-08-30 09:07:02',1,'2006-02-15 21:30:53'),(14379,'2005-08-21 09:53:03',3062,136,'2005-08-24 14:32:03',1,'2006-02-15 21:30:53'),(14380,'2005-08-21 09:53:52',1523,198,'2005-08-25 05:03:52',2,'2006-02-15 21:30:53'),(14381,'2005-08-21 09:55:47',811,391,'2005-08-25 08:23:47',1,'2006-02-15 21:30:53'),(14382,'2005-08-21 10:01:03',4119,119,'2005-08-22 13:21:03',2,'2006-02-15 21:30:53'),(14383,'2005-08-21 10:02:05',1941,482,'2005-08-24 12:21:05',2,'2006-02-15 21:30:53'),(14384,'2005-08-21 10:02:37',2429,371,'2005-08-26 08:20:37',1,'2006-02-15 21:30:53'),(14385,'2005-08-21 10:02:55',4356,317,'2005-08-25 07:19:55',2,'2006-02-15 21:30:53'),(14386,'2005-08-21 10:06:34',3402,514,'2005-08-25 14:19:34',1,'2006-02-15 21:30:53'),(14387,'2005-08-21 10:10:01',1286,295,'2005-08-28 14:16:01',2,'2006-02-15 21:30:53'),(14388,'2005-08-21 10:15:13',1078,274,'2005-08-30 13:41:13',2,'2006-02-15 21:30:53'),(14389,'2005-08-21 10:15:20',2718,145,'2005-08-27 05:39:20',1,'2006-02-15 21:30:53'),(14390,'2005-08-21 10:15:38',3951,366,'2005-08-28 05:50:38',2,'2006-02-15 21:30:53'),(14391,'2005-08-21 10:16:27',3117,205,'2005-08-23 07:00:27',2,'2006-02-15 21:30:53'),(14392,'2005-08-21 10:19:25',847,586,'2005-08-28 15:57:25',2,'2006-02-15 21:30:53'),(14393,'2005-08-21 10:22:51',3937,368,'2005-08-29 08:28:51',1,'2006-02-15 21:30:53'),(14394,'2005-08-21 10:23:10',4555,118,'2005-08-28 09:33:10',1,'2006-02-15 21:30:53'),(14395,'2005-08-21 10:24:00',632,506,'2005-08-28 12:23:00',2,'2006-02-15 21:30:53'),(14396,'2005-08-21 10:24:54',3855,353,'2005-08-22 04:49:54',2,'2006-02-15 21:30:53'),(14397,'2005-08-21 10:25:56',3883,47,'2005-08-24 07:48:56',1,'2006-02-15 21:30:53'),(14398,'2005-08-21 10:27:21',357,505,'2005-08-23 10:46:21',2,'2006-02-15 21:30:53'),(14399,'2005-08-21 10:33:23',3582,188,'2005-08-27 08:00:23',1,'2006-02-15 21:30:53'),(14400,'2005-08-21 10:33:45',3891,569,'2005-08-26 12:05:45',1,'2006-02-15 21:30:53'),(14401,'2005-08-21 10:36:20',3468,407,'2005-08-30 06:45:20',1,'2006-02-15 21:30:53'),(14402,'2005-08-21 10:38:17',749,467,'2005-08-27 08:36:17',2,'2006-02-15 21:30:53'),(14403,'2005-08-21 10:40:34',3581,297,'2005-08-29 11:29:34',1,'2006-02-15 21:30:53'),(14404,'2005-08-21 10:43:04',3660,192,'2005-08-30 10:00:04',1,'2006-02-15 21:30:53'),(14405,'2005-08-21 10:45:01',2777,470,'2005-08-30 04:48:01',2,'2006-02-15 21:30:53'),(14406,'2005-08-21 10:46:35',2741,181,'2005-08-28 15:55:35',1,'2006-02-15 21:30:53'),(14407,'2005-08-21 10:46:51',2403,500,'2005-08-25 09:28:51',2,'2006-02-15 21:30:53'),(14408,'2005-08-21 10:47:24',222,593,'2005-08-27 08:18:24',1,'2006-02-15 21:30:53'),(14409,'2005-08-21 10:53:35',1161,314,'2005-08-25 10:40:35',2,'2006-02-15 21:30:53'),(14410,'2005-08-21 10:54:49',839,196,'2005-08-26 08:28:49',2,'2006-02-15 21:30:53'),(14411,'2005-08-21 10:54:57',2125,502,'2005-08-22 13:17:57',2,'2006-02-15 21:30:53'),(14412,'2005-08-21 11:02:09',212,121,'2005-08-29 06:44:09',1,'2006-02-15 21:30:53'),(14413,'2005-08-21 11:06:33',50,367,'2005-08-29 16:10:33',1,'2006-02-15 21:30:53'),(14414,'2005-08-21 11:08:17',1757,515,'2005-08-23 08:37:17',2,'2006-02-15 21:30:53'),(14415,'2006-02-14 15:16:03',2670,561,NULL,2,'2006-02-15 21:30:53'),(14416,'2005-08-21 11:11:46',3002,384,'2005-08-25 12:33:46',1,'2006-02-15 21:30:53'),(14417,'2005-08-21 11:13:35',1768,596,'2005-08-25 11:27:35',1,'2006-02-15 21:30:53'),(14418,'2005-08-21 11:14:26',89,442,'2005-08-28 08:34:26',2,'2006-02-15 21:30:53'),(14419,'2005-08-21 11:15:46',3146,221,'2005-08-30 16:37:46',1,'2006-02-15 21:30:53'),(14420,'2005-08-21 11:16:15',2495,551,'2005-08-24 06:06:15',2,'2006-02-15 21:30:53'),(14421,'2005-08-21 11:20:21',4402,406,'2005-08-24 06:26:21',1,'2006-02-15 21:30:53'),(14422,'2005-08-21 11:21:46',1382,361,'2005-08-25 13:15:46',1,'2006-02-15 21:30:53'),(14423,'2005-08-21 11:23:59',2873,521,'2005-08-26 11:52:59',2,'2006-02-15 21:30:53'),(14424,'2005-08-21 11:24:11',2535,489,'2005-08-29 13:13:11',2,'2006-02-15 21:30:53'),(14425,'2006-02-14 15:16:03',2752,560,NULL,2,'2006-02-15 21:30:53'),(14426,'2006-02-14 15:16:03',2902,315,NULL,1,'2006-02-15 21:30:53'),(14427,'2005-08-21 11:26:06',2353,163,'2005-08-27 10:39:06',1,'2006-02-15 21:30:53'),(14428,'2005-08-21 11:27:07',1614,458,'2005-08-29 09:50:07',1,'2006-02-15 21:30:53'),(14429,'2005-08-21 11:29:43',2513,66,'2005-08-24 12:05:43',1,'2006-02-15 21:30:53'),(14430,'2005-08-21 11:31:11',2623,5,'2005-08-26 06:29:11',1,'2006-02-15 21:30:53'),(14431,'2005-08-21 11:31:15',1572,106,'2005-08-26 11:22:15',2,'2006-02-15 21:30:53'),(14432,'2005-08-21 11:36:15',2294,138,'2005-08-24 08:02:15',2,'2006-02-15 21:30:53'),(14433,'2005-08-21 11:36:34',732,401,'2005-08-26 08:51:34',1,'2006-02-15 21:30:53'),(14434,'2005-08-21 11:40:46',2085,549,'2005-08-24 05:50:46',1,'2006-02-15 21:30:53'),(14435,'2005-08-21 11:44:37',2919,169,'2005-08-24 08:04:37',1,'2006-02-15 21:30:53'),(14436,'2005-08-21 11:48:27',3473,560,'2005-08-25 15:49:27',2,'2006-02-15 21:30:53'),(14437,'2005-08-21 11:48:32',1504,136,'2005-08-25 11:06:32',2,'2006-02-15 21:30:53'),(14438,'2005-08-21 11:51:10',1621,392,'2005-08-28 17:10:10',1,'2006-02-15 21:30:53'),(14439,'2005-08-21 11:52:41',3903,564,'2005-08-30 10:36:41',1,'2006-02-15 21:30:53'),(14440,'2005-08-21 11:59:04',3495,194,'2005-08-23 10:10:04',1,'2006-02-15 21:30:53'),(14441,'2005-08-21 11:59:38',1210,260,'2005-08-26 11:17:38',2,'2006-02-15 21:30:53'),(14442,'2005-08-21 12:00:21',122,205,'2005-08-23 17:00:21',2,'2006-02-15 21:30:53'),(14443,'2005-08-21 12:06:32',376,447,'2005-08-29 13:44:32',2,'2006-02-15 21:30:53'),(14444,'2005-08-21 12:07:25',2211,225,'2005-08-28 08:36:25',2,'2006-02-15 21:30:53'),(14445,'2005-08-21 12:07:42',3186,256,'2005-08-22 17:51:42',2,'2006-02-15 21:30:53'),(14446,'2005-08-21 12:10:41',4367,21,'2005-08-26 14:42:41',1,'2006-02-15 21:30:53'),(14447,'2005-08-21 12:12:05',1889,584,'2005-08-27 14:47:05',2,'2006-02-15 21:30:53'),(14448,'2005-08-21 12:13:10',1937,263,'2005-08-30 08:46:10',1,'2006-02-15 21:30:53'),(14449,'2005-08-21 12:13:18',653,529,'2005-08-27 15:41:18',2,'2006-02-15 21:30:53'),(14450,'2005-08-21 12:21:25',1194,48,'2005-08-26 14:35:25',2,'2006-02-15 21:30:53'),(14451,'2005-08-21 12:21:44',3967,467,'2005-08-22 15:07:44',2,'2006-02-15 21:30:53'),(14452,'2005-08-21 12:23:20',4231,325,'2005-08-27 06:26:20',1,'2006-02-15 21:30:53'),(14453,'2005-08-21 12:33:34',3312,237,'2005-08-27 11:10:34',1,'2006-02-15 21:30:53'),(14454,'2005-08-21 12:35:49',2475,150,'2005-08-22 16:28:49',2,'2006-02-15 21:30:53'),(14455,'2005-08-21 12:36:11',3442,68,'2005-08-27 08:12:11',2,'2006-02-15 21:30:53'),(14456,'2005-08-21 12:38:09',2520,125,'2005-08-26 08:29:09',1,'2006-02-15 21:30:53'),(14457,'2005-08-21 12:47:38',4288,340,'2005-08-25 13:07:38',1,'2006-02-15 21:30:53'),(14458,'2005-08-21 12:47:53',1769,256,'2005-08-30 17:09:53',2,'2006-02-15 21:30:53'),(14459,'2005-08-21 12:48:08',1532,98,'2005-08-27 10:50:08',2,'2006-02-15 21:30:53'),(14460,'2005-08-21 12:48:48',4137,120,'2005-08-30 16:34:48',2,'2006-02-15 21:30:53'),(14461,'2005-08-21 12:50:33',371,42,'2005-08-30 13:35:33',1,'2006-02-15 21:30:53'),(14462,'2005-08-21 12:50:57',2201,96,'2005-08-27 10:42:57',2,'2006-02-15 21:30:53'),(14463,'2005-08-21 12:51:49',1403,365,'2005-08-29 12:17:49',1,'2006-02-15 21:30:53'),(14464,'2005-08-21 12:52:54',2310,121,'2005-08-25 16:42:54',1,'2006-02-15 21:30:53'),(14465,'2005-08-21 12:54:22',4206,262,'2005-08-28 10:46:22',2,'2006-02-15 21:30:53'),(14466,'2005-08-21 13:03:13',923,442,'2005-08-22 15:19:13',2,'2006-02-15 21:30:53'),(14467,'2005-08-21 13:03:33',1498,522,'2005-08-28 15:28:33',1,'2006-02-15 21:30:53'),(14468,'2005-08-21 13:07:10',4168,224,'2005-08-30 19:05:10',2,'2006-02-15 21:30:53'),(14469,'2005-08-21 13:07:24',1957,554,'2005-08-24 10:37:24',1,'2006-02-15 21:30:53'),(14470,'2005-08-21 13:09:41',3899,379,'2005-08-23 10:20:41',2,'2006-02-15 21:30:53'),(14471,'2005-08-21 13:10:40',1254,395,'2005-08-26 16:49:40',1,'2006-02-15 21:30:53'),(14472,'2005-08-21 13:13:57',4097,184,'2005-08-23 14:04:57',2,'2006-02-15 21:30:53'),(14473,'2005-08-21 13:19:03',2747,298,'2005-08-23 15:12:03',1,'2006-02-15 21:30:53'),(14474,'2005-08-21 13:22:48',2632,294,'2005-08-27 14:13:48',2,'2006-02-15 21:30:53'),(14475,'2005-08-21 13:24:32',3164,2,'2005-08-27 08:59:32',2,'2006-02-15 21:30:53'),(14476,'2005-08-21 13:31:07',2821,101,'2005-08-23 17:06:07',1,'2006-02-15 21:30:53'),(14477,'2005-08-21 13:32:38',1564,126,'2005-08-25 18:02:38',2,'2006-02-15 21:30:53'),(14478,'2005-08-21 13:33:28',2990,231,'2005-08-25 13:33:28',2,'2006-02-15 21:30:53'),(14479,'2005-08-21 13:35:54',2235,324,'2005-08-29 12:12:54',2,'2006-02-15 21:30:53'),(14480,'2005-08-21 13:36:40',229,411,'2005-08-26 08:39:40',1,'2006-02-15 21:30:53'),(14481,'2005-08-21 13:41:14',4099,367,'2005-08-30 07:53:14',2,'2006-02-15 21:30:53'),(14482,'2005-08-21 13:42:45',2765,23,'2005-08-27 11:55:45',1,'2006-02-15 21:30:53'),(14483,'2005-08-21 13:43:59',37,275,'2005-08-28 16:38:59',2,'2006-02-15 21:30:53'),(14484,'2005-08-21 13:47:29',3714,418,'2005-08-23 18:25:29',1,'2006-02-15 21:30:53'),(14485,'2005-08-21 13:52:07',1637,241,'2005-08-30 13:06:07',2,'2006-02-15 21:30:53'),(14486,'2005-08-21 13:52:54',3119,138,'2005-08-23 07:58:54',1,'2006-02-15 21:30:53'),(14487,'2005-08-21 13:53:33',2578,526,'2005-08-29 19:32:33',1,'2006-02-15 21:30:53'),(14488,'2006-02-14 15:16:03',4202,75,NULL,2,'2006-02-15 21:30:53'),(14489,'2005-08-21 13:53:59',2312,9,'2005-08-30 15:45:59',2,'2006-02-15 21:30:53'),(14490,'2005-08-21 13:54:15',1771,205,'2005-08-28 19:08:15',2,'2006-02-15 21:30:53'),(14491,'2005-08-21 13:55:39',2072,226,'2005-08-29 17:51:39',1,'2006-02-15 21:30:53'),(14492,'2005-08-21 13:59:08',1591,266,'2005-08-23 11:09:08',1,'2006-02-15 21:30:53'),(14493,'2005-08-21 14:01:44',2590,389,'2005-08-28 17:20:44',1,'2006-02-15 21:30:53'),(14494,'2005-08-21 14:02:50',169,5,'2005-08-22 16:45:50',2,'2006-02-15 21:30:53'),(14495,'2005-08-21 14:04:39',3215,429,'2005-08-22 16:53:39',2,'2006-02-15 21:30:53'),(14496,'2005-08-21 14:07:35',2185,223,'2005-08-24 12:31:35',1,'2006-02-15 21:30:53'),(14497,'2005-08-21 14:09:47',3240,254,'2005-08-22 11:10:47',2,'2006-02-15 21:30:53'),(14498,'2005-08-21 14:10:44',3971,544,'2005-08-23 08:29:44',1,'2006-02-15 21:30:53'),(14499,'2005-08-21 14:11:19',4109,292,'2005-08-23 16:10:19',2,'2006-02-15 21:30:53'),(14500,'2005-08-21 14:11:30',2024,451,'2005-08-27 12:19:30',1,'2006-02-15 21:30:53'),(14501,'2005-08-21 14:14:38',3588,576,'2005-08-25 17:58:38',1,'2006-02-15 21:30:53'),(14502,'2005-08-21 14:22:28',2986,378,'2005-08-23 10:40:28',1,'2006-02-15 21:30:53'),(14503,'2006-02-14 15:16:03',2144,188,NULL,1,'2006-02-15 21:30:53'),(14504,'2005-08-21 14:23:01',4536,312,'2005-08-27 13:56:01',1,'2006-02-15 21:30:53'),(14505,'2005-08-21 14:26:28',2172,203,'2005-08-29 17:34:28',1,'2006-02-15 21:30:53'),(14506,'2005-08-21 14:32:27',4493,537,'2005-08-24 19:02:27',2,'2006-02-15 21:30:53'),(14507,'2005-08-21 14:32:45',1969,175,'2005-08-28 09:50:45',2,'2006-02-15 21:30:53'),(14508,'2005-08-21 14:33:58',703,396,'2005-08-27 10:45:58',2,'2006-02-15 21:30:53'),(14509,'2005-08-21 14:39:58',541,520,'2005-08-26 13:19:58',1,'2006-02-15 21:30:53'),(14510,'2005-08-21 14:44:41',1868,547,'2005-08-30 20:19:41',1,'2006-02-15 21:30:53'),(14511,'2005-08-21 14:45:34',4452,16,'2005-08-28 10:36:34',2,'2006-02-15 21:30:53'),(14512,'2005-08-21 14:47:09',579,51,'2005-08-24 18:10:09',2,'2006-02-15 21:30:53'),(14513,'2005-08-21 14:51:35',4265,185,'2005-08-24 13:24:35',2,'2006-02-15 21:30:53'),(14514,'2005-08-21 14:51:52',1259,295,'2005-08-30 10:40:52',2,'2006-02-15 21:30:53'),(14515,'2005-08-21 14:52:14',2215,242,'2005-08-27 10:27:14',1,'2006-02-15 21:30:53'),(14516,'2006-02-14 15:16:03',713,457,NULL,2,'2006-02-15 21:30:53'),(14517,'2005-08-21 14:57:03',3568,311,'2005-08-24 13:52:03',2,'2006-02-15 21:30:53'),(14518,'2005-08-21 14:58:58',2734,82,'2005-08-24 13:19:58',2,'2006-02-15 21:30:53'),(14519,'2005-08-21 14:59:29',1541,403,'2005-08-22 11:48:29',2,'2006-02-15 21:30:53'),(14520,'2005-08-21 15:00:49',4533,150,'2005-08-30 19:04:49',1,'2006-02-15 21:30:53'),(14521,'2005-08-21 15:01:32',1538,200,'2005-08-28 19:12:32',1,'2006-02-15 21:30:53'),(14522,'2005-08-21 15:01:34',2101,535,'2005-08-25 16:37:34',1,'2006-02-15 21:30:53'),(14523,'2005-08-21 15:03:45',345,433,'2005-08-22 18:06:45',2,'2006-02-15 21:30:53'),(14524,'2005-08-21 15:05:27',4409,374,'2005-08-29 12:07:27',2,'2006-02-15 21:30:53'),(14525,'2005-08-21 15:06:49',3020,420,'2005-08-22 16:30:49',1,'2006-02-15 21:30:53'),(14526,'2006-02-14 15:16:03',1799,534,NULL,1,'2006-02-15 21:30:53'),(14527,'2005-08-21 15:07:42',3496,232,'2005-08-23 12:31:42',1,'2006-02-15 21:30:53'),(14528,'2005-08-21 15:08:05',4305,46,'2005-08-26 15:58:05',2,'2006-02-15 21:30:53'),(14529,'2005-08-21 15:08:31',1774,380,'2005-08-29 17:15:31',1,'2006-02-15 21:30:53'),(14530,'2005-08-21 15:10:50',1905,77,'2005-08-26 09:20:50',2,'2006-02-15 21:30:53'),(14531,'2006-02-14 15:16:03',4296,568,NULL,2,'2006-02-15 21:30:53'),(14532,'2005-08-21 15:15:03',2057,37,'2005-08-25 17:41:03',2,'2006-02-15 21:30:53'),(14533,'2005-08-21 15:15:19',2202,586,'2005-08-26 12:47:19',1,'2006-02-15 21:30:53'),(14534,'2005-08-21 15:16:29',2514,56,'2005-08-26 16:18:29',1,'2006-02-15 21:30:53'),(14535,'2005-08-21 15:22:37',530,412,'2005-08-29 19:23:37',2,'2006-02-15 21:30:53'),(14536,'2005-08-21 15:22:50',2615,48,'2005-08-27 17:03:50',1,'2006-02-15 21:30:53'),(14537,'2005-08-21 15:24:24',3755,405,'2005-08-23 17:14:24',2,'2006-02-15 21:30:53'),(14538,'2005-08-21 15:28:15',3348,471,'2005-08-22 19:55:15',2,'2006-02-15 21:30:53'),(14539,'2005-08-21 15:29:47',3340,41,'2005-08-28 19:01:47',1,'2006-02-15 21:30:53'),(14540,'2005-08-21 15:34:23',2362,28,'2005-08-27 11:51:23',2,'2006-02-15 21:30:53'),(14541,'2005-08-21 15:34:32',1275,576,'2005-08-25 13:18:32',1,'2006-02-15 21:30:53'),(14542,'2005-08-21 15:36:34',1247,101,'2005-08-27 20:24:34',2,'2006-02-15 21:30:53'),(14543,'2005-08-21 15:39:01',709,579,'2005-08-28 09:47:01',1,'2006-02-15 21:30:53'),(14544,'2005-08-21 15:41:01',2445,589,'2005-08-24 15:20:01',1,'2006-02-15 21:30:53'),(14545,'2005-08-21 15:44:23',2459,13,'2005-08-29 20:09:23',2,'2006-02-15 21:30:53'),(14546,'2005-08-21 15:50:50',1515,466,'2005-08-23 11:37:50',2,'2006-02-15 21:30:53'),(14547,'2005-08-21 15:51:38',1172,265,'2005-08-26 15:35:38',1,'2006-02-15 21:30:53'),(14548,'2005-08-21 15:53:52',226,299,'2005-08-25 15:39:52',2,'2006-02-15 21:30:53'),(14549,'2005-08-21 15:54:21',4117,155,'2005-08-22 17:22:21',1,'2006-02-15 21:30:53'),(14550,'2005-08-21 15:56:39',2814,473,'2005-08-23 21:40:39',1,'2006-02-15 21:30:53'),(14551,'2005-08-21 15:57:25',496,521,'2005-08-28 11:10:25',2,'2006-02-15 21:30:53'),(14552,'2005-08-21 15:59:27',1991,477,'2005-08-27 11:46:27',1,'2006-02-15 21:30:53'),(14553,'2005-08-21 15:59:40',3160,434,'2005-08-23 11:54:40',2,'2006-02-15 21:30:53'),(14554,'2005-08-21 16:03:01',31,38,'2005-08-26 13:09:01',2,'2006-02-15 21:30:53'),(14555,'2005-08-21 16:03:02',1926,440,'2005-08-23 14:18:02',1,'2006-02-15 21:30:53'),(14556,'2005-08-21 16:03:27',475,265,'2005-08-29 15:49:27',1,'2006-02-15 21:30:53'),(14557,'2005-08-21 16:05:11',483,490,'2005-08-27 16:37:11',1,'2006-02-15 21:30:53'),(14558,'2005-08-21 16:10:50',3958,273,'2005-08-28 16:36:50',2,'2006-02-15 21:30:53'),(14559,'2005-08-21 16:11:35',3842,433,'2005-08-30 15:26:35',1,'2006-02-15 21:30:53'),(14560,'2005-08-21 16:13:47',1616,579,'2005-08-26 15:19:47',1,'2006-02-15 21:30:53'),(14561,'2005-08-21 16:20:43',2498,443,'2005-08-27 16:48:43',1,'2006-02-15 21:30:53'),(14562,'2005-08-21 16:22:59',3501,107,'2005-08-22 21:15:59',1,'2006-02-15 21:30:53'),(14563,'2005-08-21 16:23:53',3984,212,'2005-08-25 11:30:53',2,'2006-02-15 21:30:53'),(14564,'2005-08-21 16:24:43',3250,22,'2005-08-26 16:58:43',1,'2006-02-15 21:30:53'),(14565,'2005-08-21 16:24:45',4160,250,'2005-08-25 14:42:45',1,'2006-02-15 21:30:53'),(14566,'2005-08-21 16:25:05',84,87,'2005-08-26 10:31:05',1,'2006-02-15 21:30:53'),(14567,'2005-08-21 16:27:25',3805,214,'2005-08-26 10:47:25',1,'2006-02-15 21:30:53'),(14568,'2005-08-21 16:30:48',3331,582,'2005-08-22 13:49:48',1,'2006-02-15 21:30:53'),(14569,'2005-08-21 16:31:22',884,15,'2005-08-25 21:27:22',2,'2006-02-15 21:30:53'),(14570,'2005-08-21 16:32:32',955,32,'2005-08-30 12:03:32',2,'2006-02-15 21:30:53'),(14571,'2005-08-21 16:40:26',2218,296,'2005-08-29 17:10:26',1,'2006-02-15 21:30:53'),(14572,'2005-08-21 16:44:31',1397,538,'2005-08-26 16:35:31',2,'2006-02-15 21:30:53'),(14573,'2005-08-21 16:44:32',2423,240,'2005-08-23 14:01:32',2,'2006-02-15 21:30:53'),(14574,'2005-08-21 16:50:34',1611,62,'2005-08-26 14:24:34',2,'2006-02-15 21:30:53'),(14575,'2005-08-21 16:51:34',3752,159,'2005-08-30 20:13:34',2,'2006-02-15 21:30:53'),(14576,'2005-08-21 16:52:03',1189,45,'2005-08-28 19:43:03',2,'2006-02-15 21:30:53'),(14577,'2005-08-21 16:52:29',1965,126,'2005-08-26 12:30:29',1,'2006-02-15 21:30:53'),(14578,'2005-08-21 16:53:38',3141,389,'2005-08-28 20:36:38',2,'2006-02-15 21:30:53'),(14579,'2005-08-21 16:54:47',1205,260,'2005-08-28 12:35:47',1,'2006-02-15 21:30:53'),(14580,'2005-08-21 16:56:39',1440,448,'2005-08-28 15:25:39',1,'2006-02-15 21:30:53'),(14581,'2005-08-21 17:07:08',751,243,'2005-08-26 16:02:08',1,'2006-02-15 21:30:53'),(14582,'2005-08-21 17:08:33',1004,438,'2005-08-29 18:04:33',2,'2006-02-15 21:30:53'),(14583,'2005-08-21 17:11:47',1203,455,'2005-08-24 16:16:47',2,'2006-02-15 21:30:53'),(14584,'2005-08-21 17:15:33',2617,481,'2005-08-24 20:24:33',2,'2006-02-15 21:30:53'),(14585,'2005-08-21 17:18:33',82,30,'2005-08-26 11:36:33',1,'2006-02-15 21:30:53'),(14586,'2005-08-21 17:19:09',3094,182,'2005-08-26 17:00:09',1,'2006-02-15 21:30:53'),(14587,'2005-08-21 17:20:55',2329,250,'2005-08-26 17:17:55',1,'2006-02-15 21:30:53'),(14588,'2005-08-21 17:25:53',1350,219,'2005-08-28 21:47:53',2,'2006-02-15 21:30:53'),(14589,'2005-08-21 17:28:55',2810,179,'2005-08-22 23:06:55',1,'2006-02-15 21:30:53'),(14590,'2005-08-21 17:29:10',2633,526,'2005-08-28 20:15:10',1,'2006-02-15 21:30:53'),(14591,'2005-08-21 17:30:09',3410,538,'2005-08-24 12:27:09',1,'2006-02-15 21:30:53'),(14592,'2005-08-21 17:30:17',2681,563,'2005-08-22 20:06:17',2,'2006-02-15 21:30:53'),(14593,'2005-08-21 17:33:18',1399,564,'2005-08-24 22:11:18',1,'2006-02-15 21:30:53'),(14594,'2005-08-21 17:34:24',2978,62,'2005-08-26 22:04:24',2,'2006-02-15 21:30:53'),(14595,'2005-08-21 17:35:17',1879,118,'2005-08-27 12:11:17',1,'2006-02-15 21:30:53'),(14596,'2005-08-21 17:38:37',2010,472,'2005-08-30 20:28:37',1,'2006-02-15 21:30:53'),(14597,'2005-08-21 17:39:41',1160,472,'2005-08-25 14:07:41',1,'2006-02-15 21:30:53'),(14598,'2005-08-21 17:40:05',1113,359,'2005-08-29 18:16:05',2,'2006-02-15 21:30:53'),(14599,'2005-08-21 17:43:42',4575,599,'2005-08-22 18:53:42',1,'2006-02-15 21:30:53'),(14600,'2005-08-21 17:45:21',3532,255,'2005-08-28 19:03:21',1,'2006-02-15 21:30:53'),(14601,'2005-08-21 17:45:52',548,406,'2005-08-29 15:10:52',1,'2006-02-15 21:30:53'),(14602,'2005-08-21 17:48:49',3771,370,'2005-08-28 21:38:49',1,'2006-02-15 21:30:53'),(14603,'2005-08-21 17:51:06',94,26,'2005-08-28 15:36:06',1,'2006-02-15 21:30:53'),(14604,'2006-02-14 15:16:03',1024,585,NULL,2,'2006-02-15 21:30:53'),(14605,'2005-08-21 17:56:06',476,394,'2005-08-24 18:35:06',1,'2006-02-15 21:30:53'),(14606,'2006-02-14 15:16:03',2291,592,NULL,2,'2006-02-15 21:30:53'),(14607,'2005-08-21 17:56:50',4518,417,'2005-08-22 17:44:50',2,'2006-02-15 21:30:53'),(14608,'2005-08-21 17:57:22',3321,90,'2005-08-25 13:20:22',1,'2006-02-15 21:30:53'),(14609,'2005-08-21 17:57:26',1206,551,'2005-08-25 14:04:26',2,'2006-02-15 21:30:53'),(14610,'2005-08-21 17:59:09',1894,260,'2005-08-29 21:36:09',2,'2006-02-15 21:30:53'),(14611,'2005-08-21 18:01:41',4078,443,'2005-08-26 12:34:41',1,'2006-02-15 21:30:53'),(14612,'2005-08-21 18:03:15',4105,445,'2005-08-27 13:39:15',1,'2006-02-15 21:30:53'),(14613,'2005-08-21 18:03:20',3841,20,'2005-08-26 19:46:20',1,'2006-02-15 21:30:53'),(14614,'2005-08-21 18:03:51',3053,468,'2005-08-30 13:37:51',1,'2006-02-15 21:30:53'),(14615,'2005-08-21 18:06:32',2332,171,'2005-08-30 13:19:32',2,'2006-02-15 21:30:53'),(14616,'2006-02-14 15:16:03',4537,532,NULL,1,'2006-02-15 21:30:53'),(14617,'2005-08-21 18:07:40',3562,51,'2005-08-24 23:48:40',2,'2006-02-15 21:30:53'),(14618,'2005-08-21 18:09:51',4490,270,'2005-08-28 22:47:51',1,'2006-02-15 21:30:53'),(14619,'2005-08-21 18:10:03',1589,338,'2005-08-23 13:40:03',2,'2006-02-15 21:30:53'),(14620,'2005-08-21 18:10:43',3272,78,'2005-08-22 15:19:43',2,'2006-02-15 21:30:53'),(14621,'2005-08-21 18:17:59',3622,344,'2005-08-23 14:16:59',1,'2006-02-15 21:30:53'),(14622,'2005-08-21 18:25:59',2702,559,'2005-08-31 00:11:59',2,'2006-02-15 21:30:53'),(14623,'2005-08-21 18:29:13',901,33,'2005-08-26 20:48:13',2,'2006-02-15 21:30:53'),(14624,'2005-08-21 18:32:42',4,344,'2005-08-23 21:09:42',1,'2006-02-15 21:30:53'),(14625,'2005-08-21 18:34:21',2661,507,'2005-08-29 21:41:21',1,'2006-02-15 21:30:53'),(14626,'2005-08-21 18:35:44',1038,554,'2005-08-25 23:54:44',2,'2006-02-15 21:30:53'),(14627,'2005-08-21 18:35:54',2470,49,'2005-08-30 21:17:54',1,'2006-02-15 21:30:53'),(14628,'2005-08-21 18:37:24',3636,331,'2005-08-27 20:25:24',2,'2006-02-15 21:30:53'),(14629,'2005-08-21 18:39:52',761,148,'2005-08-25 19:14:52',2,'2006-02-15 21:30:53'),(14630,'2005-08-21 18:43:44',4049,294,'2005-08-29 17:08:44',2,'2006-02-15 21:30:53'),(14631,'2005-08-21 18:47:49',782,209,'2005-08-28 16:54:49',1,'2006-02-15 21:30:53'),(14632,'2005-08-21 18:48:06',2807,38,'2005-08-25 00:33:06',2,'2006-02-15 21:30:53'),(14633,'2005-08-21 18:51:10',2137,551,'2005-08-25 13:07:10',1,'2006-02-15 21:30:53'),(14634,'2005-08-21 18:51:28',486,494,'2005-08-29 19:30:28',2,'2006-02-15 21:30:53'),(14635,'2005-08-21 18:51:43',2171,108,'2005-08-27 16:30:43',2,'2006-02-15 21:30:53'),(14636,'2005-08-21 18:59:17',1671,339,'2005-08-23 13:19:17',2,'2006-02-15 21:30:53'),(14637,'2005-08-21 19:01:00',1846,76,'2005-08-26 23:03:00',2,'2006-02-15 21:30:53'),(14638,'2005-08-21 19:01:36',3583,216,'2005-08-22 15:09:36',2,'2006-02-15 21:30:53'),(14639,'2005-08-21 19:01:39',3510,210,'2005-08-26 14:08:39',1,'2006-02-15 21:30:53'),(14640,'2005-08-21 19:03:19',1880,253,'2005-08-27 00:37:19',2,'2006-02-15 21:30:53'),(14641,'2005-08-21 19:05:23',2205,147,'2005-08-22 22:30:23',2,'2006-02-15 21:30:53'),(14642,'2005-08-21 19:09:40',1280,81,'2005-08-30 13:25:40',2,'2006-02-15 21:30:53'),(14643,'2005-08-21 19:11:58',798,119,'2005-08-29 19:52:58',1,'2006-02-15 21:30:53'),(14644,'2005-08-21 19:12:12',3905,453,'2005-08-29 17:08:12',1,'2006-02-15 21:30:53'),(14645,'2005-08-21 19:12:47',2369,334,'2005-08-25 21:42:47',1,'2006-02-15 21:30:53'),(14646,'2005-08-21 19:14:48',948,186,'2005-08-23 17:15:48',1,'2006-02-15 21:30:53'),(14647,'2005-08-21 19:15:33',3854,36,'2005-08-30 18:58:33',2,'2006-02-15 21:30:53'),(14648,'2005-08-21 19:18:01',2250,284,'2005-08-25 14:59:01',2,'2006-02-15 21:30:53'),(14649,'2005-08-21 19:19:21',4074,43,'2005-08-22 17:23:21',1,'2006-02-15 21:30:53'),(14650,'2005-08-21 19:24:51',1274,190,'2005-08-25 13:58:51',2,'2006-02-15 21:30:53'),(14651,'2005-08-21 19:31:09',4037,544,'2005-08-28 14:26:09',2,'2006-02-15 21:30:53'),(14652,'2005-08-21 19:32:05',4163,453,'2005-08-23 23:33:05',2,'2006-02-15 21:30:53'),(14653,'2005-08-21 19:35:59',491,593,'2005-08-24 15:31:59',1,'2006-02-15 21:30:53'),(14654,'2005-08-21 19:36:59',687,173,'2005-08-23 22:03:59',2,'2006-02-15 21:30:53'),(14655,'2005-08-21 19:37:10',785,253,'2005-08-22 15:43:10',1,'2006-02-15 21:30:53'),(14656,'2005-08-21 19:39:28',4205,201,'2005-08-24 01:36:28',2,'2006-02-15 21:30:53'),(14657,'2005-08-21 19:39:43',477,244,'2005-08-26 22:39:43',2,'2006-02-15 21:30:53'),(14658,'2005-08-21 19:41:50',1465,473,'2005-08-25 16:11:50',1,'2006-02-15 21:30:53'),(14659,'2005-08-21 19:42:36',928,119,'2005-08-26 14:06:36',1,'2006-02-15 21:30:53'),(14660,'2005-08-21 19:43:21',3433,452,'2005-08-22 20:42:21',1,'2006-02-15 21:30:53'),(14661,'2005-08-21 19:44:21',745,469,'2005-08-27 14:35:21',1,'2006-02-15 21:30:53'),(14662,'2005-08-21 19:45:27',2969,403,'2005-08-23 14:44:27',2,'2006-02-15 21:30:53'),(14663,'2005-08-21 19:47:55',2351,150,'2005-08-27 17:36:55',2,'2006-02-15 21:30:53'),(14664,'2005-08-21 19:48:47',4377,153,'2005-08-27 16:47:47',1,'2006-02-15 21:30:53'),(14665,'2005-08-21 19:49:46',2896,58,'2005-08-30 18:00:46',1,'2006-02-15 21:30:53'),(14666,'2005-08-21 19:51:09',2560,122,'2005-08-30 22:42:09',2,'2006-02-15 21:30:53'),(14667,'2005-08-21 19:51:11',2608,55,'2005-08-23 17:37:11',1,'2006-02-15 21:30:53'),(14668,'2005-08-21 19:51:30',1450,152,'2005-08-29 19:38:30',2,'2006-02-15 21:30:53'),(14669,'2005-08-21 19:54:06',3154,317,'2005-08-25 23:12:06',1,'2006-02-15 21:30:53'),(14670,'2005-08-21 19:54:11',4324,537,'2005-08-27 21:42:11',2,'2006-02-15 21:30:53'),(14671,'2005-08-21 19:59:30',2622,53,'2005-08-22 19:39:30',1,'2006-02-15 21:30:53'),(14672,'2005-08-21 19:59:33',4144,325,'2005-08-30 19:40:33',1,'2006-02-15 21:30:53'),(14673,'2005-08-21 20:01:18',1827,445,'2005-08-25 18:55:18',1,'2006-02-15 21:30:53'),(14674,'2005-08-21 20:01:34',572,300,'2005-08-27 18:33:34',1,'2006-02-15 21:30:53'),(14675,'2005-08-21 20:01:51',328,170,'2005-08-26 14:30:51',2,'2006-02-15 21:30:53'),(14676,'2005-08-21 20:02:18',877,49,'2005-08-26 21:55:18',1,'2006-02-15 21:30:53'),(14677,'2005-08-21 20:12:30',4411,26,'2005-08-28 15:11:30',1,'2006-02-15 21:30:53'),(14678,'2005-08-21 20:12:43',1911,383,'2005-08-31 02:11:43',2,'2006-02-15 21:30:53'),(14679,'2005-08-21 20:14:58',1520,193,'2005-08-23 23:39:58',1,'2006-02-15 21:30:53'),(14680,'2005-08-21 20:19:52',4469,524,'2005-08-28 17:10:52',1,'2006-02-15 21:30:53'),(14681,'2005-08-21 20:25:13',1083,212,'2005-08-30 19:48:13',1,'2006-02-15 21:30:53'),(14682,'2005-08-21 20:25:57',2974,314,'2005-08-28 00:42:57',2,'2006-02-15 21:30:53'),(14683,'2005-08-21 20:27:44',3850,342,'2005-08-29 16:54:44',1,'2006-02-15 21:30:53'),(14684,'2005-08-21 20:28:26',3593,369,'2005-08-28 19:01:26',2,'2006-02-15 21:30:53'),(14685,'2005-08-21 20:31:25',1320,69,'2005-08-22 21:02:25',1,'2006-02-15 21:30:53'),(14686,'2005-08-21 20:32:08',814,34,'2005-08-26 18:07:08',1,'2006-02-15 21:30:53'),(14687,'2005-08-21 20:32:16',306,550,'2005-08-26 16:17:16',2,'2006-02-15 21:30:53'),(14688,'2005-08-21 20:32:37',2573,219,'2005-08-27 00:06:37',2,'2006-02-15 21:30:53'),(14689,'2005-08-21 20:33:00',1124,463,'2005-08-22 18:10:00',1,'2006-02-15 21:30:53'),(14690,'2005-08-21 20:42:25',3649,456,'2005-08-29 18:42:25',2,'2006-02-15 21:30:53'),(14691,'2005-08-21 20:42:29',2131,404,'2005-08-24 01:22:29',1,'2006-02-15 21:30:53'),(14692,'2005-08-21 20:43:21',1908,192,'2005-08-28 19:02:21',1,'2006-02-15 21:30:53'),(14693,'2005-08-21 20:44:19',3454,269,'2005-08-29 00:37:19',2,'2006-02-15 21:30:53'),(14694,'2005-08-21 20:46:42',2767,363,'2005-08-23 16:18:42',1,'2006-02-15 21:30:53'),(14695,'2005-08-21 20:46:47',412,206,'2005-08-22 22:25:47',2,'2006-02-15 21:30:53'),(14696,'2005-08-21 20:48:05',3776,435,'2005-08-25 14:55:05',1,'2006-02-15 21:30:53'),(14697,'2005-08-21 20:49:21',48,409,'2005-08-26 01:39:21',2,'2006-02-15 21:30:53'),(14698,'2005-08-21 20:49:58',4255,196,'2005-08-29 20:13:58',2,'2006-02-15 21:30:53'),(14699,'2005-08-21 20:50:48',1427,3,'2005-08-29 18:08:48',2,'2006-02-15 21:30:53'),(14700,'2005-08-21 20:53:40',3446,360,'2005-08-23 22:01:40',1,'2006-02-15 21:30:53'),(14701,'2005-08-21 20:54:32',3034,34,'2005-08-30 16:46:32',1,'2006-02-15 21:30:53'),(14702,'2005-08-21 21:00:03',4096,345,'2005-08-30 16:59:03',1,'2006-02-15 21:30:53'),(14703,'2005-08-21 21:01:19',4329,29,'2005-08-22 15:13:19',2,'2006-02-15 21:30:53'),(14704,'2005-08-21 21:02:22',4062,248,'2005-08-27 23:10:22',2,'2006-02-15 21:30:53'),(14705,'2005-08-21 21:02:55',2493,243,'2005-08-25 20:20:55',2,'2006-02-15 21:30:53'),(14706,'2005-08-21 21:04:42',4494,589,'2005-08-22 19:55:42',2,'2006-02-15 21:30:53'),(14707,'2005-08-21 21:06:29',2916,530,'2005-08-30 23:37:29',1,'2006-02-15 21:30:53'),(14708,'2005-08-21 21:07:23',2828,226,'2005-08-28 15:47:23',1,'2006-02-15 21:30:53'),(14709,'2005-08-21 21:07:59',1856,300,'2005-08-31 02:19:59',1,'2006-02-15 21:30:53'),(14710,'2005-08-21 21:15:23',1922,587,'2005-08-30 19:45:23',1,'2006-02-15 21:30:53'),(14711,'2005-08-21 21:22:07',1973,448,'2005-08-30 16:24:07',2,'2006-02-15 21:30:53'),(14712,'2005-08-21 21:22:56',1198,226,'2005-08-25 01:53:56',1,'2006-02-15 21:30:53'),(14713,'2005-08-21 21:27:24',3350,148,'2005-08-23 20:26:24',1,'2006-02-15 21:30:53'),(14714,'2005-08-21 21:27:43',1,279,'2005-08-30 22:26:43',1,'2006-02-15 21:30:53'),(14715,'2005-08-21 21:28:18',4453,287,'2005-08-26 22:13:18',2,'2006-02-15 21:30:53'),(14716,'2005-08-21 21:29:55',2285,78,'2005-08-23 18:34:55',2,'2006-02-15 21:30:53'),(14717,'2005-08-21 21:30:39',3839,366,'2005-08-26 16:58:39',2,'2006-02-15 21:30:53'),(14718,'2005-08-21 21:39:25',3618,340,'2005-08-26 22:07:25',2,'2006-02-15 21:30:53'),(14719,'2005-08-21 21:41:57',4091,599,'2005-08-25 20:37:57',1,'2006-02-15 21:30:53'),(14720,'2005-08-21 21:43:53',3617,395,'2005-08-25 18:21:53',1,'2006-02-15 21:30:53'),(14721,'2005-08-21 21:50:51',4257,349,'2005-08-30 19:21:51',1,'2006-02-15 21:30:53'),(14722,'2005-08-21 21:50:53',2930,236,'2005-08-30 03:13:53',1,'2006-02-15 21:30:53'),(14723,'2005-08-21 21:52:32',2755,548,'2005-08-31 00:03:32',2,'2006-02-15 21:30:53'),(14724,'2005-08-21 21:53:47',3559,552,'2005-08-23 20:14:47',2,'2006-02-15 21:30:53'),(14725,'2005-08-21 22:02:08',4427,403,'2005-08-23 03:59:08',2,'2006-02-15 21:30:53'),(14726,'2005-08-21 22:08:52',4556,216,'2005-08-22 18:28:52',1,'2006-02-15 21:30:53'),(14727,'2005-08-21 22:12:45',650,275,'2005-08-25 00:46:45',1,'2006-02-15 21:30:53'),(14728,'2005-08-21 22:15:36',2671,474,'2005-08-25 17:14:36',2,'2006-02-15 21:30:53'),(14729,'2005-08-21 22:16:57',2483,289,'2005-08-27 21:32:57',1,'2006-02-15 21:30:53'),(14730,'2005-08-21 22:21:11',2949,439,'2005-08-30 03:02:11',1,'2006-02-15 21:30:53'),(14731,'2005-08-21 22:21:49',1351,154,'2005-08-24 16:27:49',1,'2006-02-15 21:30:53'),(14732,'2005-08-21 22:22:29',1915,482,'2005-08-23 18:34:29',1,'2006-02-15 21:30:53'),(14733,'2005-08-21 22:22:33',398,408,'2005-08-26 21:01:33',1,'2006-02-15 21:30:53'),(14734,'2006-02-14 15:16:03',1369,448,NULL,2,'2006-02-15 21:30:53'),(14735,'2005-08-21 22:25:09',950,35,'2005-08-23 21:16:09',1,'2006-02-15 21:30:53'),(14736,'2005-08-21 22:25:53',207,139,'2005-08-25 19:01:53',2,'2006-02-15 21:30:53'),(14737,'2005-08-21 22:27:11',1842,124,'2005-08-25 18:51:11',2,'2006-02-15 21:30:53'),(14738,'2005-08-21 22:29:13',3315,521,'2005-08-29 21:19:13',1,'2006-02-15 21:30:53'),(14739,'2005-08-21 22:33:22',4026,226,'2005-08-22 19:45:22',1,'2006-02-15 21:30:53'),(14740,'2005-08-21 22:35:33',1717,333,'2005-08-26 17:49:33',1,'2006-02-15 21:30:53'),(14741,'2006-02-14 15:16:03',612,60,NULL,2,'2006-02-15 21:30:53'),(14742,'2005-08-21 22:39:01',2988,421,'2005-08-26 00:17:01',1,'2006-02-15 21:30:53'),(14743,'2005-08-21 22:41:56',4570,2,'2005-08-29 00:18:56',1,'2006-02-15 21:30:53'),(14744,'2005-08-21 22:45:21',800,213,'2005-08-29 23:57:21',1,'2006-02-15 21:30:53'),(14745,'2005-08-21 22:53:01',4399,277,'2005-08-23 23:22:01',1,'2006-02-15 21:30:53'),(14746,'2005-08-21 22:54:02',3197,284,'2005-08-27 17:04:02',2,'2006-02-15 21:30:53'),(14747,'2005-08-21 23:00:02',201,153,'2005-08-26 18:58:02',2,'2006-02-15 21:30:53'),(14748,'2005-08-21 23:02:02',1697,81,'2005-08-28 05:01:02',2,'2006-02-15 21:30:53'),(14749,'2005-08-21 23:08:33',831,235,'2005-08-29 20:46:33',2,'2006-02-15 21:30:53'),(14750,'2005-08-21 23:09:32',918,303,'2005-08-30 00:46:32',2,'2006-02-15 21:30:53'),(14751,'2005-08-21 23:11:23',1156,195,'2005-08-30 20:01:23',2,'2006-02-15 21:30:53'),(14752,'2005-08-21 23:11:42',1252,362,'2005-08-28 22:12:42',1,'2006-02-15 21:30:53'),(14753,'2005-08-21 23:11:43',1803,155,'2005-08-22 22:25:43',2,'2006-02-15 21:30:53'),(14754,'2005-08-21 23:17:26',2355,137,'2005-08-29 18:55:26',2,'2006-02-15 21:30:53'),(14755,'2005-08-21 23:18:08',862,328,'2005-08-27 01:06:08',2,'2006-02-15 21:30:53'),(14756,'2005-08-21 23:21:23',564,288,'2005-08-24 01:44:23',1,'2006-02-15 21:30:53'),(14757,'2005-08-21 23:23:37',1154,473,'2005-08-26 23:24:37',2,'2006-02-15 21:30:53'),(14758,'2005-08-21 23:24:52',2372,339,'2005-08-27 04:25:52',2,'2006-02-15 21:30:53'),(14759,'2005-08-21 23:28:58',3871,362,'2005-08-31 00:35:58',2,'2006-02-15 21:30:53'),(14760,'2006-02-14 15:16:03',1367,355,NULL,1,'2006-02-15 21:30:53'),(14761,'2005-08-21 23:30:28',2657,490,'2005-08-26 03:26:28',1,'2006-02-15 21:30:53'),(14762,'2005-08-21 23:33:57',4249,1,'2005-08-23 01:30:57',1,'2006-02-15 21:30:53'),(14763,'2005-08-21 23:34:00',1480,116,'2005-08-31 03:58:00',2,'2006-02-15 21:30:53'),(14764,'2005-08-21 23:37:47',1270,529,'2005-08-24 00:23:47',2,'2006-02-15 21:30:53'),(14765,'2005-08-21 23:40:28',2817,435,'2005-08-25 04:55:28',2,'2006-02-15 21:30:53'),(14766,'2005-08-21 23:42:20',768,523,'2005-08-26 03:46:20',1,'2006-02-15 21:30:53'),(14767,'2005-08-21 23:43:00',1232,69,'2005-08-29 05:26:00',1,'2006-02-15 21:30:53'),(14768,'2005-08-21 23:44:53',3465,570,'2005-08-27 20:33:53',1,'2006-02-15 21:30:53'),(14769,'2006-02-14 15:16:03',1800,361,NULL,1,'2006-02-15 21:30:53'),(14770,'2005-08-21 23:47:16',2977,372,'2005-08-25 04:48:16',1,'2006-02-15 21:30:53'),(14771,'2005-08-21 23:50:15',2665,149,'2005-08-28 22:55:15',2,'2006-02-15 21:30:53'),(14772,'2005-08-21 23:50:39',4047,411,'2005-08-30 20:44:39',2,'2006-02-15 21:30:53'),(14773,'2005-08-21 23:50:57',2541,413,'2005-08-26 04:45:57',2,'2006-02-15 21:30:53'),(14774,'2005-08-21 23:52:32',3185,252,'2005-08-26 23:42:32',2,'2006-02-15 21:30:53'),(14775,'2005-08-21 23:53:07',4044,400,'2005-08-22 18:07:07',2,'2006-02-15 21:30:53'),(14776,'2005-08-21 23:53:35',3488,15,'2005-08-24 02:00:35',2,'2006-02-15 21:30:53'),(14777,'2005-08-21 23:55:50',237,389,'2005-08-28 04:31:50',1,'2006-02-15 21:30:53'),(14778,'2005-08-21 23:56:30',2152,396,'2005-08-26 00:07:30',2,'2006-02-15 21:30:53'),(14779,'2005-08-22 00:00:56',1087,279,'2005-08-31 00:01:56',2,'2006-02-15 21:30:53'),(14780,'2005-08-22 00:06:33',3171,491,'2005-08-22 22:02:33',2,'2006-02-15 21:30:53'),(14781,'2005-08-22 00:15:12',3458,71,'2005-08-29 21:02:12',1,'2006-02-15 21:30:53'),(14782,'2005-08-22 00:17:20',1727,211,'2005-08-23 01:24:20',1,'2006-02-15 21:30:53'),(14783,'2005-08-22 00:21:57',3419,332,'2005-08-28 01:27:57',2,'2006-02-15 21:30:53'),(14784,'2005-08-22 00:23:13',441,117,'2005-08-28 03:42:13',1,'2006-02-15 21:30:53'),(14785,'2005-08-22 00:24:37',1981,560,'2005-08-25 04:15:37',1,'2006-02-15 21:30:53'),(14786,'2005-08-22 00:24:42',2959,370,'2005-08-25 19:36:42',1,'2006-02-15 21:30:53'),(14787,'2005-08-22 00:25:59',2634,38,'2005-08-28 22:30:59',2,'2006-02-15 21:30:53'),(14788,'2005-08-22 00:27:59',1917,139,'2005-08-29 23:54:59',2,'2006-02-15 21:30:53'),(14789,'2005-08-22 00:29:39',2344,279,'2005-08-25 02:25:39',1,'2006-02-15 21:30:53'),(14790,'2005-08-22 00:34:17',1002,397,'2005-08-31 02:27:17',1,'2006-02-15 21:30:53'),(14791,'2005-08-22 00:35:55',1490,317,'2005-08-30 20:23:55',1,'2006-02-15 21:30:53'),(14792,'2005-08-22 00:36:41',4436,396,'2005-08-30 18:58:41',1,'2006-02-15 21:30:53'),(14793,'2005-08-22 00:37:57',4285,154,'2005-08-29 05:44:57',2,'2006-02-15 21:30:53'),(14794,'2005-08-22 00:39:31',413,156,'2005-08-28 20:08:31',2,'2006-02-15 21:30:53'),(14795,'2005-08-22 00:40:22',1695,303,'2005-08-26 01:37:22',1,'2006-02-15 21:30:53'),(14796,'2005-08-22 00:40:49',941,441,'2005-08-30 03:59:49',1,'2006-02-15 21:30:53'),(14797,'2005-08-22 00:41:24',1131,546,'2005-08-23 18:51:24',1,'2006-02-15 21:30:53'),(14798,'2005-08-22 00:44:08',7,92,'2005-08-27 02:18:08',2,'2006-02-15 21:30:53'),(14799,'2005-08-22 00:44:57',1276,454,'2005-08-24 20:08:57',2,'2006-02-15 21:30:53'),(14800,'2005-08-22 00:46:18',3554,533,'2005-08-26 01:44:18',2,'2006-02-15 21:30:53'),(14801,'2005-08-22 00:46:54',1677,184,'2005-08-30 19:03:54',1,'2006-02-15 21:30:53'),(14802,'2005-08-22 00:48:23',707,505,'2005-08-28 01:02:23',1,'2006-02-15 21:30:53'),(14803,'2005-08-22 00:49:10',2525,278,'2005-08-22 23:44:10',2,'2006-02-15 21:30:53'),(14804,'2005-08-22 00:51:25',372,94,'2005-08-26 21:15:25',1,'2006-02-15 21:30:53'),(14805,'2005-08-22 00:52:01',783,169,'2005-08-23 03:28:01',2,'2006-02-15 21:30:53'),(14806,'2005-08-22 00:53:08',2049,231,'2005-08-23 06:26:08',2,'2006-02-15 21:30:53'),(14807,'2005-08-22 00:57:43',335,90,'2005-08-26 23:40:43',1,'2006-02-15 21:30:53'),(14808,'2005-08-22 00:58:35',1657,362,'2005-08-29 20:16:35',2,'2006-02-15 21:30:53'),(14809,'2005-08-22 01:00:42',1077,188,'2005-08-29 19:55:42',1,'2006-02-15 21:30:53'),(14810,'2005-08-22 01:08:34',1982,78,'2005-08-25 07:00:34',2,'2006-02-15 21:30:53'),(14811,'2005-08-22 01:09:04',1613,53,'2005-08-26 19:30:04',1,'2006-02-15 21:30:53'),(14812,'2005-08-22 01:10:32',4282,211,'2005-08-26 05:21:32',1,'2006-02-15 21:30:53'),(14813,'2005-08-22 01:11:37',3364,142,'2005-08-24 05:57:37',2,'2006-02-15 21:30:53'),(14814,'2005-08-22 01:12:14',3109,250,'2005-08-27 23:24:14',2,'2006-02-15 21:30:53'),(14815,'2005-08-22 01:12:44',1183,314,'2005-08-24 01:42:44',2,'2006-02-15 21:30:53'),(14816,'2005-08-22 01:15:51',4086,534,'2005-08-28 04:11:51',1,'2006-02-15 21:30:53'),(14817,'2005-08-22 01:17:16',910,215,'2005-08-27 02:43:16',1,'2006-02-15 21:30:53'),(14818,'2005-08-22 01:17:18',1619,580,'2005-08-26 05:40:18',1,'2006-02-15 21:30:53'),(14819,'2005-08-22 01:17:19',2890,410,'2005-08-30 05:54:19',1,'2006-02-15 21:30:53'),(14820,'2005-08-22 01:18:37',1409,52,'2005-08-23 19:44:37',1,'2006-02-15 21:30:53'),(14821,'2005-08-22 01:20:19',3155,62,'2005-08-29 03:06:19',2,'2006-02-15 21:30:53'),(14822,'2005-08-22 01:21:14',2835,52,'2005-08-30 03:59:14',1,'2006-02-15 21:30:53'),(14823,'2005-08-22 01:24:42',680,503,'2005-08-22 19:45:42',2,'2006-02-15 21:30:53'),(14824,'2005-08-22 01:27:51',4162,594,'2005-08-23 03:24:51',2,'2006-02-15 21:30:53'),(14825,'2005-08-22 01:27:57',1449,1,'2005-08-27 07:01:57',2,'2006-02-15 21:30:53'),(14826,'2005-08-22 01:32:14',4023,426,'2005-08-23 03:52:14',2,'2006-02-15 21:30:53'),(14827,'2005-08-22 01:32:32',2267,88,'2005-08-31 06:21:32',2,'2006-02-15 21:30:53'),(14828,'2005-08-22 01:34:05',4114,319,'2005-08-27 06:27:05',2,'2006-02-15 21:30:53'),(14829,'2005-08-22 01:35:37',3606,546,'2005-08-23 19:55:37',2,'2006-02-15 21:30:53'),(14830,'2005-08-22 01:37:19',637,590,'2005-08-27 20:10:19',1,'2006-02-15 21:30:53'),(14831,'2005-08-22 01:40:49',3370,156,'2005-08-23 02:47:49',1,'2006-02-15 21:30:53'),(14832,'2005-08-22 01:43:29',1828,494,'2005-08-29 07:19:29',2,'2006-02-15 21:30:53'),(14833,'2005-08-22 01:45:18',1960,551,'2005-08-28 21:24:18',1,'2006-02-15 21:30:53'),(14834,'2005-08-22 01:45:58',3105,262,'2005-08-28 20:52:58',1,'2006-02-15 21:30:53'),(14835,'2005-08-22 01:49:07',755,404,'2005-08-30 04:28:07',1,'2006-02-15 21:30:53'),(14836,'2005-08-22 01:52:26',4287,418,'2005-08-22 23:39:26',1,'2006-02-15 21:30:53'),(14837,'2005-08-22 01:54:52',2251,43,'2005-08-29 02:24:52',1,'2006-02-15 21:30:53'),(14838,'2005-08-22 01:57:34',506,404,'2005-08-25 06:34:34',1,'2006-02-15 21:30:53'),(14839,'2005-08-22 01:58:15',3440,567,'2005-08-24 05:24:15',2,'2006-02-15 21:30:53'),(14840,'2005-08-22 01:58:42',1240,354,'2005-08-29 22:32:42',2,'2006-02-15 21:30:53'),(14841,'2005-08-22 02:03:30',4017,384,'2005-08-28 02:08:30',2,'2006-02-15 21:30:53'),(14842,'2005-08-22 02:04:38',2511,467,'2005-08-30 06:46:38',2,'2006-02-15 21:30:53'),(14843,'2005-08-22 02:05:25',3000,454,'2005-08-28 22:11:25',1,'2006-02-15 21:30:53'),(14844,'2005-08-22 02:09:12',145,513,'2005-08-31 05:43:12',1,'2006-02-15 21:30:53'),(14845,'2005-08-22 02:12:44',69,292,'2005-08-24 02:36:44',2,'2006-02-15 21:30:53'),(14846,'2005-08-22 02:13:48',3840,309,'2005-08-30 05:39:48',1,'2006-02-15 21:30:53'),(14847,'2005-08-22 02:13:51',2995,327,'2005-08-29 03:42:51',2,'2006-02-15 21:30:53'),(14848,'2005-08-22 02:14:19',395,218,'2005-08-26 02:54:19',2,'2006-02-15 21:30:53'),(14849,'2005-08-22 02:15:26',3354,177,'2005-08-28 00:56:26',2,'2006-02-15 21:30:53'),(14850,'2005-08-22 02:16:55',2405,435,'2005-08-26 21:08:55',1,'2006-02-15 21:30:53'),(14851,'2005-08-22 02:20:44',1139,180,'2005-08-26 08:02:44',2,'2006-02-15 21:30:53'),(14852,'2005-08-22 02:25:53',2262,352,'2005-08-25 04:27:53',1,'2006-02-15 21:30:53'),(14853,'2005-08-22 02:26:33',3575,388,'2005-08-31 02:49:33',2,'2006-02-15 21:30:53'),(14854,'2005-08-22 02:26:47',1989,117,'2005-08-23 05:53:47',1,'2006-02-15 21:30:53'),(14855,'2005-08-22 02:27:32',1668,187,'2005-08-31 03:35:32',1,'2006-02-15 21:30:53'),(14856,'2005-08-22 02:31:51',3292,151,'2005-08-26 23:41:51',2,'2006-02-15 21:30:53'),(14857,'2005-08-22 02:42:39',4150,232,'2005-08-24 21:26:39',2,'2006-02-15 21:30:53'),(14858,'2005-08-22 02:46:18',366,499,'2005-08-30 08:22:18',1,'2006-02-15 21:30:53'),(14859,'2005-08-22 02:46:35',2150,463,'2005-08-24 22:37:35',2,'2006-02-15 21:30:53'),(14860,'2005-08-22 02:47:07',1368,418,'2005-08-28 00:00:07',1,'2006-02-15 21:30:53'),(14861,'2005-08-22 02:48:05',1806,422,'2005-08-27 00:50:05',1,'2006-02-15 21:30:53'),(14862,'2005-08-22 02:51:41',3479,78,'2005-08-28 06:30:41',2,'2006-02-15 21:30:53'),(14863,'2005-08-22 02:57:04',779,440,'2005-08-30 03:24:04',2,'2006-02-15 21:30:53'),(14864,'2005-08-22 02:57:06',2872,460,'2005-08-22 22:19:06',1,'2006-02-15 21:30:53'),(14865,'2005-08-22 03:06:38',3775,94,'2005-08-23 04:26:38',1,'2006-02-15 21:30:53'),(14866,'2005-08-22 03:11:35',2607,445,'2005-08-30 00:10:35',1,'2006-02-15 21:30:53'),(14867,'2005-08-22 03:14:46',271,114,'2005-08-25 03:53:46',2,'2006-02-15 21:30:53'),(14868,'2005-08-22 03:15:01',4383,160,'2005-08-25 01:24:01',1,'2006-02-15 21:30:53'),(14869,'2005-08-22 03:20:26',455,21,'2005-08-23 05:25:26',2,'2006-02-15 21:30:53'),(14870,'2005-08-22 03:23:20',2170,512,'2005-08-23 06:50:20',2,'2006-02-15 21:30:53'),(14871,'2005-08-22 03:23:24',3411,204,'2005-08-23 22:23:24',2,'2006-02-15 21:30:53'),(14872,'2005-08-22 03:23:41',962,15,'2005-08-29 23:25:41',1,'2006-02-15 21:30:53'),(14873,'2005-08-22 03:31:06',3533,314,'2005-08-31 05:34:06',1,'2006-02-15 21:30:53'),(14874,'2005-08-22 03:32:05',1782,268,'2005-08-24 07:02:05',2,'2006-02-15 21:30:53'),(14875,'2005-08-22 03:34:39',3912,513,'2005-08-26 03:40:39',1,'2006-02-15 21:30:53'),(14876,'2005-08-22 03:39:29',3669,210,'2005-08-23 06:53:29',1,'2006-02-15 21:30:53'),(14877,'2005-08-22 03:39:56',974,266,'2005-08-24 03:41:56',2,'2006-02-15 21:30:53'),(14878,'2006-02-14 15:16:03',1202,441,NULL,2,'2006-02-15 21:30:53'),(14879,'2005-08-22 03:42:12',2154,148,'2005-08-27 06:14:12',1,'2006-02-15 21:30:53'),(14880,'2005-08-22 03:44:36',3615,224,'2005-08-24 05:45:36',2,'2006-02-15 21:30:53'),(14881,'2005-08-22 03:47:39',210,425,'2005-08-26 05:58:39',2,'2006-02-15 21:30:53'),(14882,'2005-08-22 03:52:21',12,417,'2005-08-25 04:50:21',2,'2006-02-15 21:30:53'),(14883,'2005-08-22 03:55:02',1946,177,'2005-08-28 02:51:02',1,'2006-02-15 21:30:53'),(14884,'2005-08-22 03:57:08',2957,547,'2005-08-23 07:11:08',1,'2006-02-15 21:30:53'),(14885,'2005-08-22 03:58:29',2097,248,'2005-08-30 05:26:29',1,'2006-02-15 21:30:53'),(14886,'2005-08-22 03:59:01',4330,379,'2005-08-23 01:22:01',1,'2006-02-15 21:30:53'),(14887,'2005-08-22 04:04:31',56,421,'2005-08-31 02:30:31',1,'2006-02-15 21:30:53'),(14888,'2005-08-22 04:09:18',3345,91,'2005-08-23 07:34:18',2,'2006-02-15 21:30:53'),(14889,'2005-08-22 04:10:10',1579,299,'2005-08-24 06:23:10',2,'2006-02-15 21:30:53'),(14890,'2005-08-22 04:10:49',517,346,'2005-08-30 23:23:49',1,'2006-02-15 21:30:53'),(14891,'2005-08-22 04:11:02',288,482,'2005-08-27 03:22:02',1,'2006-02-15 21:30:53'),(14892,'2005-08-22 04:15:05',3061,82,'2005-08-31 06:07:05',1,'2006-02-15 21:30:53'),(14893,'2005-08-22 04:15:48',2336,461,'2005-08-30 08:05:48',1,'2006-02-15 21:30:53'),(14894,'2005-08-22 04:16:56',3494,347,'2005-08-24 00:30:56',2,'2006-02-15 21:30:53'),(14895,'2005-08-22 04:19:23',4462,340,'2005-08-27 04:02:23',1,'2006-02-15 21:30:53'),(14896,'2005-08-22 04:20:55',2508,569,'2005-08-29 05:11:55',2,'2006-02-15 21:30:53'),(14897,'2005-08-22 04:22:31',1607,175,'2005-08-26 00:09:31',1,'2006-02-15 21:30:53'),(14898,'2005-08-22 04:26:34',1736,299,'2005-08-31 10:04:34',1,'2006-02-15 21:30:53'),(14899,'2005-08-22 04:26:38',3700,304,'2005-08-31 08:36:38',2,'2006-02-15 21:30:53'),(14900,'2005-08-22 04:27:48',3420,329,'2005-08-25 03:50:48',2,'2006-02-15 21:30:53'),(14901,'2005-08-22 04:31:37',4297,258,'2005-08-29 08:24:37',1,'2006-02-15 21:30:53'),(14902,'2005-08-22 04:31:50',866,423,'2005-08-23 23:47:50',2,'2006-02-15 21:30:53'),(14903,'2005-08-22 04:31:50',1795,51,'2005-08-25 22:53:50',2,'2006-02-15 21:30:53'),(14904,'2005-08-22 04:32:01',722,71,'2005-08-29 05:21:01',1,'2006-02-15 21:30:53'),(14905,'2005-08-22 04:34:22',4166,286,'2005-08-26 04:00:22',2,'2006-02-15 21:30:53'),(14906,'2005-08-22 04:38:18',153,366,'2005-08-29 23:03:18',1,'2006-02-15 21:30:53'),(14907,'2005-08-22 04:44:09',2469,116,'2005-08-25 09:53:09',1,'2006-02-15 21:30:53'),(14908,'2005-08-22 04:44:10',102,349,'2005-08-25 05:09:10',2,'2006-02-15 21:30:53'),(14909,'2005-08-22 04:48:44',1997,155,'2005-08-25 04:59:44',1,'2006-02-15 21:30:53'),(14910,'2005-08-22 04:50:52',1266,540,'2005-08-25 04:14:52',1,'2006-02-15 21:30:53'),(14911,'2005-08-22 04:51:42',353,273,'2005-08-28 05:37:42',1,'2006-02-15 21:30:53'),(14912,'2005-08-22 04:51:42',2658,404,'2005-08-23 23:50:42',1,'2006-02-15 21:30:53'),(14913,'2005-08-22 04:52:13',3609,503,'2005-08-23 06:49:13',2,'2006-02-15 21:30:53'),(14914,'2005-08-22 04:53:35',4348,156,'2005-08-26 10:35:35',1,'2006-02-15 21:30:53'),(14915,'2006-02-14 15:16:03',112,349,NULL,1,'2006-02-15 21:30:53'),(14916,'2005-08-22 04:56:57',2110,80,'2005-08-24 06:36:57',2,'2006-02-15 21:30:53'),(14917,'2005-08-22 05:03:59',377,289,'2005-08-29 04:00:59',2,'2006-02-15 21:30:53'),(14918,'2005-08-22 05:06:38',4056,154,'2005-08-30 01:44:38',2,'2006-02-15 21:30:53'),(14919,'2005-08-22 05:07:17',1587,244,'2005-08-30 06:41:17',2,'2006-02-15 21:30:53'),(14920,'2005-08-22 05:08:58',3357,106,'2005-08-23 02:51:58',1,'2006-02-15 21:30:53'),(14921,'2005-08-22 05:12:24',3724,284,'2005-08-26 08:20:24',2,'2006-02-15 21:30:53'),(14922,'2005-08-22 05:13:05',2322,151,'2005-08-30 04:59:05',1,'2006-02-15 21:30:53'),(14923,'2005-08-22 05:13:33',3434,460,'2005-08-28 01:39:33',2,'2006-02-15 21:30:53'),(14924,'2005-08-22 05:15:17',4189,118,'2005-08-23 10:11:17',1,'2006-02-15 21:30:53'),(14925,'2005-08-22 05:16:16',442,128,'2005-08-30 02:47:16',2,'2006-02-15 21:30:53'),(14926,'2005-08-22 05:18:44',2448,357,'2005-08-26 02:18:44',1,'2006-02-15 21:30:53'),(14927,'2005-08-22 05:31:53',952,193,'2005-08-27 07:04:53',1,'2006-02-15 21:30:53'),(14928,'2006-02-14 15:16:03',4375,472,NULL,1,'2006-02-15 21:30:53'),(14929,'2005-08-22 05:32:38',4195,546,'2005-08-28 00:02:38',1,'2006-02-15 21:30:53'),(14930,'2005-08-22 05:38:32',2875,584,'2005-08-30 07:21:32',1,'2006-02-15 21:30:53'),(14931,'2005-08-22 05:38:55',657,63,'2005-08-28 04:15:55',2,'2006-02-15 21:30:53'),(14932,'2005-08-22 05:40:39',2259,516,'2005-08-23 11:02:39',2,'2006-02-15 21:30:53'),(14933,'2006-02-14 15:16:03',1186,21,NULL,2,'2006-02-15 21:30:53'),(14934,'2005-08-22 05:47:15',815,226,'2005-08-26 11:32:15',1,'2006-02-15 21:30:53'),(14935,'2005-08-22 05:47:31',2025,380,'2005-08-29 00:33:31',2,'2006-02-15 21:30:53'),(14936,'2005-08-22 05:51:26',3710,241,'2005-08-29 10:21:26',2,'2006-02-15 21:30:53'),(14937,'2005-08-22 05:51:59',1241,348,'2005-08-31 01:45:59',2,'2006-02-15 21:30:53'),(14938,'2005-08-22 05:52:39',408,541,'2005-08-31 11:43:39',1,'2006-02-15 21:30:53'),(14939,'2005-08-22 05:53:52',719,328,'2005-08-27 06:20:52',1,'2006-02-15 21:30:53'),(14940,'2005-08-22 05:54:03',2635,46,'2005-08-24 05:52:03',2,'2006-02-15 21:30:53'),(14941,'2005-08-22 05:58:23',2328,574,'2005-08-28 10:58:23',1,'2006-02-15 21:30:53'),(14942,'2005-08-22 05:58:27',32,471,'2005-08-31 10:08:27',1,'2006-02-15 21:30:53'),(14943,'2005-08-22 05:59:59',3515,265,'2005-08-26 10:31:59',2,'2006-02-15 21:30:53'),(14944,'2005-08-22 06:01:26',535,153,'2005-08-24 10:33:26',2,'2006-02-15 21:30:53'),(14945,'2005-08-22 06:05:38',1567,304,'2005-08-29 12:01:38',1,'2006-02-15 21:30:53'),(14946,'2005-08-22 06:07:10',1395,308,'2005-08-28 05:25:10',1,'2006-02-15 21:30:53'),(14947,'2005-08-22 06:07:52',3497,68,'2005-08-28 01:12:52',2,'2006-02-15 21:30:53'),(14948,'2005-08-22 06:10:53',2914,488,'2005-08-28 11:24:53',2,'2006-02-15 21:30:53'),(14949,'2005-08-22 06:12:16',2434,111,'2005-08-25 08:25:16',2,'2006-02-15 21:30:53'),(14950,'2005-08-22 06:17:12',635,362,'2005-08-27 08:48:12',2,'2006-02-15 21:30:53'),(14951,'2005-08-22 06:19:37',2800,197,'2005-08-30 05:51:37',2,'2006-02-15 21:30:53'),(14952,'2005-08-22 06:20:07',2950,575,'2005-08-28 01:18:07',1,'2006-02-15 21:30:53'),(14953,'2005-08-22 06:23:54',816,182,'2005-08-28 03:19:54',1,'2006-02-15 21:30:53'),(14954,'2006-02-14 15:16:03',3608,525,NULL,1,'2006-02-15 21:30:53'),(14955,'2005-08-22 06:25:52',1534,445,'2005-08-25 12:13:52',2,'2006-02-15 21:30:53'),(14956,'2005-08-22 06:26:16',3650,571,'2005-08-25 11:06:16',2,'2006-02-15 21:30:53'),(14957,'2005-08-22 06:29:34',1384,323,'2005-08-26 04:52:34',2,'2006-02-15 21:30:53'),(14958,'2005-08-22 06:30:10',1710,347,'2005-08-28 09:43:10',2,'2006-02-15 21:30:53'),(14959,'2005-08-22 06:30:28',2009,569,'2005-08-25 09:48:28',1,'2006-02-15 21:30:53'),(14960,'2005-08-22 06:31:36',3316,147,'2005-08-29 07:10:36',2,'2006-02-15 21:30:53'),(14961,'2005-08-22 06:35:50',3274,52,'2005-08-31 04:07:50',2,'2006-02-15 21:30:53'),(14962,'2005-08-22 06:37:43',3104,449,'2005-08-29 03:44:43',2,'2006-02-15 21:30:53'),(14963,'2005-08-22 06:38:10',2672,384,'2005-08-31 05:35:10',2,'2006-02-15 21:30:53'),(14964,'2005-08-22 06:39:24',2302,500,'2005-08-26 06:05:24',1,'2006-02-15 21:30:53'),(14965,'2005-08-22 06:45:53',1036,148,'2005-08-27 10:05:53',1,'2006-02-15 21:30:53'),(14966,'2005-08-22 06:45:57',679,259,'2005-08-31 10:02:57',1,'2006-02-15 21:30:53'),(14967,'2005-08-22 06:46:03',289,67,'2005-08-23 01:02:03',2,'2006-02-15 21:30:53'),(14968,'2005-08-22 06:46:59',3302,129,'2005-08-29 07:36:59',1,'2006-02-15 21:30:53'),(14969,'2005-08-22 06:49:15',4060,120,'2005-08-29 05:52:15',1,'2006-02-15 21:30:53'),(14970,'2005-08-22 06:49:29',536,529,'2005-08-29 08:47:29',1,'2006-02-15 21:30:53'),(14971,'2005-08-22 06:52:49',1883,378,'2005-08-28 06:27:49',2,'2006-02-15 21:30:53'),(14972,'2005-08-22 06:53:21',3422,310,'2005-08-29 02:25:21',1,'2006-02-15 21:30:53'),(14973,'2005-08-22 06:59:28',2888,201,'2005-08-30 02:28:28',1,'2006-02-15 21:30:53'),(14974,'2005-08-22 07:04:25',2596,157,'2005-08-27 12:39:25',1,'2006-02-15 21:30:53'),(14975,'2005-08-22 07:07:50',924,244,'2005-08-28 07:23:50',2,'2006-02-15 21:30:53'),(14976,'2005-08-22 07:10:26',77,581,'2005-08-28 07:22:26',1,'2006-02-15 21:30:53'),(14977,'2005-08-22 07:12:53',4093,59,'2005-08-30 08:11:53',2,'2006-02-15 21:30:53'),(14978,'2005-08-22 07:13:15',699,94,'2005-08-25 12:26:15',1,'2006-02-15 21:30:53'),(14979,'2005-08-22 07:16:36',2320,387,'2005-08-24 02:29:36',2,'2006-02-15 21:30:53'),(14980,'2005-08-22 07:16:45',2701,518,'2005-08-26 06:04:45',2,'2006-02-15 21:30:53'),(14981,'2005-08-22 07:19:05',1239,544,'2005-08-26 03:08:05',2,'2006-02-15 21:30:53'),(14982,'2005-08-22 07:20:55',2333,542,'2005-08-31 04:35:55',2,'2006-02-15 21:30:53'),(14983,'2005-08-22 07:32:23',3579,363,'2005-08-30 11:39:23',2,'2006-02-15 21:30:53'),(14984,'2005-08-22 07:35:31',1704,334,'2005-08-30 02:32:31',1,'2006-02-15 21:30:53'),(14985,'2005-08-22 07:35:56',2017,29,'2005-08-29 13:17:56',1,'2006-02-15 21:30:53'),(14986,'2005-08-22 07:37:24',1493,278,'2005-08-23 04:22:24',2,'2006-02-15 21:30:53'),(14987,'2005-08-22 07:41:08',1513,138,'2005-08-24 03:15:08',2,'2006-02-15 21:30:53'),(14988,'2005-08-22 07:46:05',2114,186,'2005-08-29 06:43:05',1,'2006-02-15 21:30:53'),(14989,'2005-08-22 07:47:07',1431,58,'2005-08-26 04:42:07',2,'2006-02-15 21:30:53'),(14990,'2005-08-22 07:48:01',4057,198,'2005-08-24 06:41:01',2,'2006-02-15 21:30:53'),(14991,'2005-08-22 07:50:44',708,172,'2005-08-30 06:32:44',2,'2006-02-15 21:30:53'),(14992,'2005-08-22 07:51:47',4430,415,'2005-08-25 08:17:47',2,'2006-02-15 21:30:53'),(14993,'2005-08-22 07:52:18',3416,437,'2005-08-27 02:13:18',1,'2006-02-15 21:30:53'),(14994,'2005-08-22 07:52:24',1601,509,'2005-08-26 09:57:24',1,'2006-02-15 21:30:53'),(14995,'2005-08-22 07:52:31',4178,482,'2005-08-24 05:16:31',1,'2006-02-15 21:30:53'),(14996,'2005-08-22 07:52:41',1178,411,'2005-08-29 02:35:41',1,'2006-02-15 21:30:53'),(14997,'2005-08-22 07:53:00',2724,29,'2005-08-28 03:47:00',2,'2006-02-15 21:30:53'),(14998,'2005-08-22 07:53:14',3852,92,'2005-08-24 03:46:14',2,'2006-02-15 21:30:53'),(14999,'2005-08-22 07:54:47',3399,594,'2005-08-23 08:39:47',1,'2006-02-15 21:30:53'),(15000,'2005-08-22 07:54:58',3080,161,'2005-08-24 12:46:58',2,'2006-02-15 21:30:53'),(15001,'2005-08-22 08:00:49',2869,186,'2005-08-27 05:53:49',2,'2006-02-15 21:30:53'),(15002,'2005-08-22 08:06:00',4198,242,'2005-08-24 10:48:00',1,'2006-02-15 21:30:53'),(15003,'2005-08-22 08:11:24',4009,167,'2005-08-28 08:49:24',1,'2006-02-15 21:30:53'),(15004,'2005-08-22 08:15:21',4464,375,'2005-08-28 10:35:21',1,'2006-02-15 21:30:53'),(15005,'2005-08-22 08:15:44',2897,335,'2005-08-24 09:52:44',2,'2006-02-15 21:30:53'),(15006,'2005-08-22 08:20:15',2967,97,'2005-08-23 11:57:15',1,'2006-02-15 21:30:53'),(15007,'2005-08-22 08:21:21',3692,165,'2005-08-27 04:44:21',2,'2006-02-15 21:30:53'),(15008,'2005-08-22 08:24:32',961,277,'2005-08-31 13:48:32',2,'2006-02-15 21:30:53'),(15009,'2005-08-22 08:27:27',4025,325,'2005-08-26 05:57:27',2,'2006-02-15 21:30:53'),(15010,'2005-08-22 08:30:17',171,508,'2005-08-29 13:24:17',2,'2006-02-15 21:30:53'),(15011,'2005-08-22 08:31:07',2722,329,'2005-08-24 04:47:07',1,'2006-02-15 21:30:53'),(15012,'2005-08-22 08:42:32',1584,454,'2005-08-28 05:04:32',1,'2006-02-15 21:30:53'),(15013,'2005-08-22 08:42:45',141,141,'2005-08-24 05:20:45',2,'2006-02-15 21:30:53'),(15014,'2005-08-22 08:43:11',3678,373,'2005-08-31 02:55:11',1,'2006-02-15 21:30:53'),(15015,'2005-08-22 08:43:50',3067,14,'2005-08-31 06:53:50',2,'2006-02-15 21:30:53'),(15016,'2005-08-22 08:47:35',879,434,'2005-08-28 14:23:35',2,'2006-02-15 21:30:53'),(15017,'2005-08-22 08:47:44',3975,144,'2005-08-29 08:16:44',1,'2006-02-15 21:30:53'),(15018,'2005-08-22 08:52:38',394,504,'2005-08-25 08:08:38',1,'2006-02-15 21:30:53'),(15019,'2005-08-22 08:52:53',3425,450,'2005-08-25 13:07:53',2,'2006-02-15 21:30:53'),(15020,'2005-08-22 08:54:12',3460,267,'2005-08-27 04:54:12',1,'2006-02-15 21:30:53'),(15021,'2006-02-14 15:16:03',418,100,NULL,2,'2006-02-15 21:30:53'),(15022,'2005-08-22 08:55:43',249,506,'2005-08-31 05:35:43',2,'2006-02-15 21:30:53'),(15023,'2005-08-22 08:56:48',358,296,'2005-08-29 08:13:48',1,'2006-02-15 21:30:53'),(15024,'2005-08-22 08:57:10',1831,139,'2005-08-24 10:39:10',1,'2006-02-15 21:30:53'),(15025,'2005-08-22 08:57:24',2107,257,'2005-08-24 06:09:24',2,'2006-02-15 21:30:53'),(15026,'2005-08-22 09:01:52',4328,66,'2005-08-28 09:21:52',1,'2006-02-15 21:30:53'),(15027,'2005-08-22 09:03:04',326,478,'2005-08-29 04:03:04',2,'2006-02-15 21:30:53'),(15028,'2005-08-22 09:03:44',4248,37,'2005-08-30 11:28:44',1,'2006-02-15 21:30:53'),(15029,'2005-08-22 09:04:53',2234,139,'2005-08-25 09:03:53',1,'2006-02-15 21:30:53'),(15030,'2005-08-22 09:10:21',3168,341,'2005-08-24 06:00:21',2,'2006-02-15 21:30:53'),(15031,'2005-08-22 09:11:48',3926,430,'2005-08-27 06:11:48',1,'2006-02-15 21:30:53'),(15032,'2005-08-22 09:14:09',3414,467,'2005-08-25 09:50:09',2,'2006-02-15 21:30:53'),(15033,'2005-08-22 09:25:24',2431,168,'2005-08-28 09:56:24',2,'2006-02-15 21:30:53'),(15034,'2005-08-22 09:33:08',1331,235,'2005-08-29 13:04:08',1,'2006-02-15 21:30:53'),(15035,'2005-08-22 09:34:32',339,513,'2005-08-28 10:23:32',1,'2006-02-15 21:30:53'),(15036,'2005-08-22 09:36:00',874,280,'2005-08-23 08:12:00',2,'2006-02-15 21:30:53'),(15037,'2005-08-22 09:36:33',4517,234,'2005-08-31 11:20:33',2,'2006-02-15 21:30:53'),(15038,'2005-08-22 09:37:27',1685,3,'2005-08-23 14:39:27',1,'2006-02-15 21:30:53'),(15039,'2005-08-22 09:37:54',895,180,'2005-08-28 12:23:54',1,'2006-02-15 21:30:53'),(15040,'2005-08-22 09:41:09',3207,523,'2005-08-23 12:49:09',2,'2006-02-15 21:30:53'),(15041,'2005-08-22 09:43:18',1913,372,'2005-08-23 11:04:18',2,'2006-02-15 21:30:53'),(15042,'2005-08-22 09:47:37',3796,553,'2005-08-31 04:42:37',1,'2006-02-15 21:30:53'),(15043,'2005-08-22 09:49:32',3797,182,'2005-08-28 13:50:32',1,'2006-02-15 21:30:53'),(15044,'2005-08-22 09:51:54',4513,439,'2005-08-31 12:45:54',1,'2006-02-15 21:30:53'),(15045,'2005-08-22 09:53:23',3485,161,'2005-08-26 10:09:23',2,'2006-02-15 21:30:53'),(15046,'2005-08-22 09:54:54',1536,474,'2005-08-26 07:34:54',1,'2006-02-15 21:30:53'),(15047,'2005-08-22 09:57:16',1309,19,'2005-08-23 11:39:16',1,'2006-02-15 21:30:53'),(15048,'2005-08-22 10:00:04',2895,27,'2005-08-26 08:26:04',1,'2006-02-15 21:30:53'),(15049,'2005-08-22 10:06:28',1573,102,'2005-08-26 15:12:28',1,'2006-02-15 21:30:53'),(15050,'2005-08-22 10:07:52',3961,167,'2005-08-23 04:45:52',1,'2006-02-15 21:30:53'),(15051,'2005-08-22 10:08:50',1419,300,'2005-08-28 10:23:50',1,'2006-02-15 21:30:53'),(15052,'2005-08-22 10:09:19',2349,147,'2005-08-31 09:27:19',2,'2006-02-15 21:30:53'),(15053,'2005-08-22 10:13:09',1065,374,'2005-08-28 12:42:09',2,'2006-02-15 21:30:53'),(15054,'2005-08-22 10:14:33',2314,44,'2005-08-25 15:07:33',1,'2006-02-15 21:30:53'),(15055,'2005-08-22 10:14:39',623,125,'2005-08-25 07:25:39',2,'2006-02-15 21:30:53'),(15056,'2005-08-22 10:15:54',1871,503,'2005-08-25 07:21:54',1,'2006-02-15 21:30:53'),(15057,'2005-08-22 10:19:58',4534,20,'2005-08-28 05:12:58',1,'2006-02-15 21:30:53'),(15058,'2005-08-22 10:20:55',3537,288,'2005-08-26 12:37:55',1,'2006-02-15 21:30:53'),(15059,'2005-08-22 10:22:00',4079,564,'2005-08-29 07:01:00',2,'2006-02-15 21:30:53'),(15060,'2005-08-22 10:24:32',2740,63,'2005-08-31 11:17:32',2,'2006-02-15 21:30:53'),(15061,'2005-08-22 10:29:44',3436,90,'2005-08-24 14:40:44',1,'2006-02-15 21:30:53'),(15062,'2005-08-22 10:34:39',4393,139,'2005-08-26 13:09:39',2,'2006-02-15 21:30:53'),(15063,'2005-08-22 10:39:51',1159,30,'2005-08-25 16:03:51',2,'2006-02-15 21:30:53'),(15064,'2005-08-22 10:41:58',1233,425,'2005-08-28 13:34:58',2,'2006-02-15 21:30:53'),(15065,'2005-08-22 10:46:44',468,510,'2005-08-27 09:40:44',2,'2006-02-15 21:30:53'),(15066,'2005-08-22 10:49:06',2712,530,'2005-08-23 10:25:06',1,'2006-02-15 21:30:53'),(15067,'2005-08-22 10:49:21',3684,461,'2005-08-24 09:01:21',1,'2006-02-15 21:30:53'),(15068,'2005-08-22 10:50:13',3268,373,'2005-08-26 05:04:13',2,'2006-02-15 21:30:53'),(15069,'2005-08-22 10:55:42',592,568,'2005-08-28 06:59:42',2,'2006-02-15 21:30:53'),(15070,'2005-08-22 10:55:45',2687,441,'2005-08-26 09:23:45',1,'2006-02-15 21:30:53'),(15071,'2005-08-22 10:58:43',417,541,'2005-08-31 14:53:43',1,'2006-02-15 21:30:53'),(15072,'2005-08-22 10:58:45',2871,405,'2005-08-30 16:18:45',1,'2006-02-15 21:30:53'),(15073,'2005-08-22 11:01:15',3970,336,'2005-08-31 09:23:15',1,'2006-02-15 21:30:53'),(15074,'2005-08-22 11:02:52',3112,567,'2005-08-28 07:59:52',2,'2006-02-15 21:30:53'),(15075,'2005-08-22 11:04:52',1938,535,'2005-08-30 05:06:52',1,'2006-02-15 21:30:53'),(15076,'2005-08-22 11:05:34',4170,287,'2005-08-27 14:40:34',1,'2006-02-15 21:30:53'),(15077,'2005-08-22 11:09:18',3142,503,'2005-08-29 08:41:18',1,'2006-02-15 21:30:53'),(15078,'2005-08-22 11:09:31',3001,197,'2005-08-25 12:16:31',1,'2006-02-15 21:30:53'),(15079,'2005-08-22 11:09:56',4552,540,'2005-08-24 15:40:56',2,'2006-02-15 21:30:53'),(15080,'2005-08-22 11:11:51',927,133,'2005-08-23 13:09:51',1,'2006-02-15 21:30:53'),(15081,'2005-08-22 11:14:31',2501,313,'2005-08-28 14:23:31',2,'2006-02-15 21:30:53'),(15082,'2005-08-22 11:17:06',2046,137,'2005-08-28 06:40:06',1,'2006-02-15 21:30:53'),(15083,'2005-08-22 11:17:37',1691,397,'2005-08-28 06:27:37',2,'2006-02-15 21:30:53'),(15084,'2005-08-22 11:17:59',821,287,'2005-08-23 09:23:59',1,'2006-02-15 21:30:53'),(15085,'2005-08-22 11:19:22',1669,67,'2005-08-25 09:04:22',2,'2006-02-15 21:30:53'),(15086,'2005-08-22 11:21:08',264,494,'2005-08-30 08:18:08',2,'2006-02-15 21:30:53'),(15087,'2005-08-22 11:24:09',233,404,'2005-08-27 16:42:09',2,'2006-02-15 21:30:53'),(15088,'2005-08-22 11:28:26',4199,377,'2005-08-24 15:46:26',2,'2006-02-15 21:30:53'),(15089,'2005-08-22 11:34:06',3288,61,'2005-08-31 12:45:06',1,'2006-02-15 21:30:53'),(15090,'2005-08-22 11:34:33',2918,582,'2005-08-31 06:09:33',2,'2006-02-15 21:30:53'),(15091,'2005-08-22 11:34:43',2092,477,'2005-08-23 16:52:43',2,'2006-02-15 21:30:53'),(15092,'2005-08-22 11:36:16',2418,464,'2005-08-28 09:49:16',2,'2006-02-15 21:30:53'),(15093,'2005-08-22 11:39:03',3534,60,'2005-08-23 06:16:03',2,'2006-02-15 21:30:53'),(15094,'2006-02-14 15:16:03',922,424,NULL,1,'2006-02-15 21:30:53'),(15095,'2005-08-22 11:41:35',489,202,'2005-08-25 16:44:35',2,'2006-02-15 21:30:53'),(15096,'2005-08-22 11:43:04',1983,33,'2005-08-29 12:16:04',2,'2006-02-15 21:30:53'),(15097,'2005-08-22 11:43:42',2838,475,'2005-08-27 10:25:42',1,'2006-02-15 21:30:53'),(15098,'2005-08-22 11:48:19',4414,88,'2005-08-31 11:07:19',2,'2006-02-15 21:30:53'),(15099,'2005-08-22 11:49:16',1940,86,'2005-08-26 06:38:16',2,'2006-02-15 21:30:53'),(15100,'2005-08-22 11:55:03',4489,312,'2005-08-25 14:55:03',1,'2006-02-15 21:30:53'),(15101,'2005-08-22 11:56:02',683,335,'2005-08-28 13:08:02',2,'2006-02-15 21:30:53'),(15102,'2005-08-22 11:58:58',2317,555,'2005-08-29 08:37:58',1,'2006-02-15 21:30:53'),(15103,'2005-08-22 12:01:06',853,101,'2005-08-25 14:40:06',2,'2006-02-15 21:30:53'),(15104,'2005-08-22 12:01:16',4550,359,'2005-08-27 17:48:16',1,'2006-02-15 21:30:53'),(15105,'2005-08-22 12:01:33',3965,338,'2005-08-26 14:29:33',2,'2006-02-15 21:30:53'),(15106,'2005-08-22 12:01:48',399,155,'2005-08-27 16:12:48',1,'2006-02-15 21:30:53'),(15107,'2005-08-22 12:05:02',2378,376,'2005-08-23 11:09:02',1,'2006-02-15 21:30:53'),(15108,'2005-08-22 12:10:07',3463,447,'2005-08-26 14:46:07',2,'2006-02-15 21:30:53'),(15109,'2005-08-22 12:12:58',565,588,'2005-08-30 07:20:58',1,'2006-02-15 21:30:53'),(15110,'2005-08-22 12:16:46',1379,72,'2005-08-26 13:36:46',1,'2006-02-15 21:30:53'),(15111,'2005-08-22 12:21:43',4101,119,'2005-08-24 09:31:43',1,'2006-02-15 21:30:53'),(15112,'2005-08-22 12:21:49',2832,160,'2005-08-27 11:03:49',1,'2006-02-15 21:30:53'),(15113,'2005-08-22 12:23:59',4338,424,'2005-08-27 09:59:59',1,'2006-02-15 21:30:53'),(15114,'2005-08-22 12:24:55',2481,121,'2005-08-31 17:06:55',1,'2006-02-15 21:30:53'),(15115,'2005-08-22 12:28:01',1739,33,'2005-08-26 16:12:01',1,'2006-02-15 21:30:53'),(15116,'2005-08-22 12:35:40',518,217,'2005-08-23 17:58:40',1,'2006-02-15 21:30:53'),(15117,'2005-08-22 12:38:20',2502,292,'2005-08-27 07:36:20',2,'2006-02-15 21:30:53'),(15118,'2005-08-22 12:38:37',2081,473,'2005-08-29 14:01:37',2,'2006-02-15 21:30:53'),(15119,'2005-08-22 12:41:33',4526,288,'2005-08-23 14:44:33',2,'2006-02-15 21:30:53'),(15120,'2005-08-22 12:42:47',3083,11,'2005-08-23 14:21:47',1,'2006-02-15 21:30:53'),(15121,'2005-08-22 12:46:37',2981,415,'2005-08-25 17:42:37',1,'2006-02-15 21:30:53'),(15122,'2005-08-22 12:47:45',1686,91,'2005-08-29 13:18:45',2,'2006-02-15 21:30:53'),(15123,'2005-08-22 12:48:44',1455,445,'2005-08-27 11:07:44',1,'2006-02-15 21:30:53'),(15124,'2005-08-22 12:51:38',1598,39,'2005-08-26 09:05:38',1,'2006-02-15 21:30:53'),(15125,'2005-08-22 12:53:22',3942,221,'2005-08-29 18:44:22',1,'2006-02-15 21:30:53'),(15126,'2005-08-22 12:53:58',1902,459,'2005-08-28 07:39:58',1,'2006-02-15 21:30:53'),(15127,'2005-08-22 12:56:29',2397,287,'2005-08-26 10:58:29',1,'2006-02-15 21:30:53'),(15128,'2005-08-22 12:57:26',3229,457,'2005-08-30 11:35:26',2,'2006-02-15 21:30:53'),(15129,'2005-08-22 13:03:52',3782,234,'2005-08-29 10:56:52',2,'2006-02-15 21:30:53'),(15130,'2005-08-22 13:04:32',2375,536,'2005-08-30 17:24:32',1,'2006-02-15 21:30:53'),(15131,'2005-08-22 13:06:26',1930,119,'2005-08-30 16:43:26',1,'2006-02-15 21:30:53'),(15132,'2005-08-22 13:11:25',3474,393,'2005-08-27 17:04:25',2,'2006-02-15 21:30:53'),(15133,'2005-08-22 13:17:43',3408,137,'2005-08-26 08:40:43',1,'2006-02-15 21:30:53'),(15134,'2005-08-22 13:18:25',4442,22,'2005-08-29 18:03:25',1,'2006-02-15 21:30:53'),(15135,'2005-08-22 13:19:19',555,284,'2005-08-27 17:09:19',2,'2006-02-15 21:30:53'),(15136,'2005-08-22 13:19:25',2606,435,'2005-08-24 07:28:25',2,'2006-02-15 21:30:53'),(15137,'2005-08-22 13:20:28',856,241,'2005-08-26 09:35:28',1,'2006-02-15 21:30:53'),(15138,'2005-08-22 13:36:30',2467,50,'2005-08-27 15:35:30',1,'2006-02-15 21:30:53'),(15139,'2005-08-22 13:38:11',2018,237,'2005-08-30 09:00:11',1,'2006-02-15 21:30:53'),(15140,'2005-08-22 13:39:20',1402,414,'2005-08-30 18:19:20',2,'2006-02-15 21:30:53'),(15141,'2005-08-22 13:41:49',227,541,'2005-08-28 15:25:49',2,'2006-02-15 21:30:53'),(15142,'2005-08-22 13:44:32',1337,351,'2005-08-29 14:19:32',1,'2006-02-15 21:30:53'),(15143,'2005-08-22 13:46:24',1519,274,'2005-08-25 09:47:24',2,'2006-02-15 21:30:53'),(15144,'2005-08-22 13:49:18',559,527,'2005-08-26 11:11:18',2,'2006-02-15 21:30:53'),(15145,'2005-08-22 13:53:04',2179,2,'2005-08-31 15:51:04',1,'2006-02-15 21:30:53'),(15146,'2005-08-22 13:57:55',3102,72,'2005-08-28 12:57:55',2,'2006-02-15 21:30:53'),(15147,'2005-08-22 13:58:23',2553,4,'2005-08-28 14:33:23',2,'2006-02-15 21:30:53'),(15148,'2005-08-22 13:59:19',3704,359,'2005-08-31 13:59:19',2,'2006-02-15 21:30:53'),(15149,'2005-08-22 14:08:06',3059,537,'2005-08-25 08:25:06',1,'2006-02-15 21:30:53'),(15150,'2005-08-22 14:12:05',1797,161,'2005-08-27 12:47:05',1,'2006-02-15 21:30:53'),(15151,'2005-08-22 14:23:11',4070,463,'2005-08-30 14:01:11',1,'2006-02-15 21:30:53'),(15152,'2005-08-22 14:25:21',739,123,'2005-08-31 14:28:21',1,'2006-02-15 21:30:53'),(15153,'2005-08-22 14:26:01',1051,512,'2005-08-27 14:17:01',2,'2006-02-15 21:30:53'),(15154,'2005-08-22 14:27:37',3395,106,'2005-08-29 20:04:37',2,'2006-02-15 21:30:53'),(15155,'2005-08-22 14:27:46',2641,43,'2005-08-23 17:46:46',2,'2006-02-15 21:30:53'),(15156,'2005-08-22 14:29:11',1174,494,'2005-08-30 17:48:11',2,'2006-02-15 21:30:53'),(15157,'2005-08-22 14:30:09',1909,580,'2005-08-29 18:28:09',1,'2006-02-15 21:30:53'),(15158,'2005-08-22 14:30:39',3614,588,'2005-08-27 15:55:39',1,'2006-02-15 21:30:53'),(15159,'2005-08-22 14:32:25',4355,525,'2005-08-24 11:19:25',2,'2006-02-15 21:30:53'),(15160,'2005-08-22 14:33:50',4321,249,'2005-08-28 11:26:50',1,'2006-02-15 21:30:53'),(15161,'2005-08-22 14:37:22',1445,20,'2005-08-27 17:40:22',1,'2006-02-15 21:30:53'),(15162,'2005-08-22 14:41:05',1756,439,'2005-08-27 20:23:05',2,'2006-02-15 21:30:53'),(15163,'2005-08-22 14:43:13',3597,100,'2005-08-26 14:26:13',1,'2006-02-15 21:30:53'),(15164,'2005-08-22 14:47:53',997,193,'2005-08-25 16:05:53',1,'2006-02-15 21:30:53'),(15165,'2005-08-22 14:59:30',3664,168,'2005-08-29 15:46:30',2,'2006-02-15 21:30:53'),(15166,'2005-08-22 15:05:37',1530,504,'2005-08-30 12:22:37',2,'2006-02-15 21:30:53'),(15167,'2006-02-14 15:16:03',973,190,NULL,2,'2006-02-15 21:30:53'),(15168,'2005-08-22 15:14:20',3218,526,'2005-08-25 20:12:20',2,'2006-02-15 21:30:53'),(15169,'2005-08-22 15:21:56',794,76,'2005-08-28 09:40:56',1,'2006-02-15 21:30:53'),(15170,'2005-08-22 15:22:15',2123,521,'2005-08-23 20:32:15',1,'2006-02-15 21:30:53'),(15171,'2005-08-22 15:23:59',1201,119,'2005-08-28 12:05:59',2,'2006-02-15 21:30:53'),(15172,'2005-08-22 15:25:33',2367,511,'2005-08-23 17:29:33',1,'2006-02-15 21:30:53'),(15173,'2005-08-22 15:26:29',2585,338,'2005-08-29 14:03:29',1,'2006-02-15 21:30:53'),(15174,'2005-08-22 15:26:36',19,111,'2005-08-31 10:47:36',2,'2006-02-15 21:30:53'),(15175,'2005-08-22 15:29:15',4318,380,'2005-08-27 15:11:15',2,'2006-02-15 21:30:53'),(15176,'2005-08-22 15:30:25',3063,115,'2005-08-31 20:00:25',1,'2006-02-15 21:30:53'),(15177,'2005-08-22 15:34:49',838,493,'2005-08-26 12:54:49',1,'2006-02-15 21:30:53'),(15178,'2005-08-22 15:36:04',1745,15,'2005-08-26 21:00:04',2,'2006-02-15 21:30:53'),(15179,'2005-08-22 15:36:22',450,328,'2005-08-31 19:57:22',1,'2006-02-15 21:30:53'),(15180,'2005-08-22 15:42:57',234,532,'2005-08-24 12:49:57',2,'2006-02-15 21:30:53'),(15181,'2005-08-22 15:46:20',3900,266,'2005-08-27 09:56:20',1,'2006-02-15 21:30:53'),(15182,'2005-08-22 15:47:05',645,443,'2005-08-25 11:55:05',1,'2006-02-15 21:30:53'),(15183,'2005-08-22 15:49:54',2696,268,'2005-08-25 12:29:54',1,'2006-02-15 21:30:53'),(15184,'2005-08-22 15:51:12',1193,471,'2005-08-24 19:23:12',2,'2006-02-15 21:30:53'),(15185,'2005-08-22 15:52:50',2948,472,'2005-08-31 20:38:50',1,'2006-02-15 21:30:53'),(15186,'2005-08-22 15:52:57',1323,104,'2005-08-24 21:12:57',1,'2006-02-15 21:30:53'),(15187,'2005-08-22 15:53:32',2338,461,'2005-08-27 14:21:32',1,'2006-02-15 21:30:53'),(15188,'2005-08-22 15:55:48',131,478,'2005-08-29 19:10:48',1,'2006-02-15 21:30:53'),(15189,'2005-08-22 15:56:42',2559,398,'2005-08-29 12:20:42',1,'2006-02-15 21:30:53'),(15190,'2005-08-22 15:57:38',2096,84,'2005-08-24 13:46:38',1,'2006-02-15 21:30:53'),(15191,'2006-02-14 15:16:03',3688,75,NULL,1,'2006-02-15 21:30:53'),(15192,'2005-08-22 16:06:23',4213,216,'2005-08-27 13:12:23',1,'2006-02-15 21:30:53'),(15193,'2005-08-22 16:06:49',1033,40,'2005-08-25 17:23:49',1,'2006-02-15 21:30:53'),(15194,'2005-08-22 16:07:34',1217,332,'2005-08-26 19:16:34',1,'2006-02-15 21:30:53'),(15195,'2005-08-22 16:08:23',1080,508,'2005-08-30 17:56:23',2,'2006-02-15 21:30:53'),(15196,'2005-08-22 16:11:32',1413,181,'2005-08-30 22:06:32',1,'2006-02-15 21:30:53'),(15197,'2005-08-22 16:14:25',2915,159,'2005-08-26 16:22:25',2,'2006-02-15 21:30:53'),(15198,'2005-08-22 16:15:33',1253,396,'2005-08-29 20:49:33',1,'2006-02-15 21:30:53'),(15199,'2005-08-22 16:17:49',18,216,'2005-08-25 20:12:49',1,'2006-02-15 21:30:53'),(15200,'2005-08-22 16:22:53',1000,374,'2005-08-24 10:25:53',2,'2006-02-15 21:30:53'),(15201,'2005-08-22 16:24:42',4456,301,'2005-08-31 17:54:42',1,'2006-02-15 21:30:53'),(15202,'2005-08-22 16:26:53',2119,374,'2005-08-23 13:49:53',2,'2006-02-15 21:30:53'),(15203,'2005-08-22 16:28:00',743,568,'2005-08-26 16:55:00',2,'2006-02-15 21:30:53'),(15204,'2005-08-22 16:30:43',1471,317,'2005-08-26 20:37:43',2,'2006-02-15 21:30:53'),(15205,'2005-08-22 16:32:23',3276,489,'2005-08-27 16:08:23',1,'2006-02-15 21:30:53'),(15206,'2005-08-22 16:33:39',3901,524,'2005-08-31 11:41:39',1,'2006-02-15 21:30:53'),(15207,'2005-08-22 16:35:25',1149,442,'2005-08-23 14:06:25',1,'2006-02-15 21:30:53'),(15208,'2005-08-22 16:35:47',4346,267,'2005-08-30 15:16:47',1,'2006-02-15 21:30:53'),(15209,'2005-08-22 16:37:32',1620,588,'2005-08-25 19:04:32',1,'2006-02-15 21:30:53'),(15210,'2005-08-22 16:37:36',3811,332,'2005-08-29 11:54:36',1,'2006-02-15 21:30:53'),(15211,'2005-08-22 16:40:21',3025,410,'2005-08-28 13:33:21',2,'2006-02-15 21:30:53'),(15212,'2005-08-22 16:44:26',2182,562,'2005-08-27 20:26:26',1,'2006-02-15 21:30:53'),(15213,'2005-08-22 16:49:02',2002,166,'2005-08-31 20:22:02',1,'2006-02-15 21:30:53'),(15214,'2005-08-22 16:53:29',1500,574,'2005-08-24 14:17:29',1,'2006-02-15 21:30:53'),(15215,'2005-08-22 16:55:26',1906,344,'2005-08-25 20:19:26',1,'2006-02-15 21:30:53'),(15216,'2005-08-22 16:57:02',1633,166,'2005-08-24 16:11:02',2,'2006-02-15 21:30:53'),(15217,'2005-08-22 16:58:31',91,90,'2005-08-23 22:33:31',1,'2006-02-15 21:30:53'),(15218,'2005-08-22 16:59:05',10,139,'2005-08-30 17:01:05',1,'2006-02-15 21:30:53'),(15219,'2005-08-22 17:00:31',3313,544,'2005-08-31 20:16:31',1,'2006-02-15 21:30:53'),(15220,'2005-08-22 17:02:23',187,128,'2005-08-28 21:02:23',1,'2006-02-15 21:30:53'),(15221,'2005-08-22 17:12:29',110,253,'2005-08-24 20:46:29',2,'2006-02-15 21:30:53'),(15222,'2005-08-22 17:12:30',1360,390,'2005-08-27 15:10:30',2,'2006-02-15 21:30:53'),(15223,'2005-08-22 17:13:39',2263,541,'2005-08-27 11:17:39',2,'2006-02-15 21:30:53'),(15224,'2005-08-22 17:18:05',33,81,'2005-08-29 14:35:05',2,'2006-02-15 21:30:53'),(15225,'2005-08-22 17:18:32',1646,224,'2005-08-24 17:25:32',1,'2006-02-15 21:30:53'),(15226,'2005-08-22 17:20:17',318,54,'2005-08-31 15:36:17',1,'2006-02-15 21:30:53'),(15227,'2005-08-22 17:22:41',2987,151,'2005-08-23 20:59:41',1,'2006-02-15 21:30:53'),(15228,'2005-08-22 17:27:23',2485,48,'2005-08-29 11:38:23',2,'2006-02-15 21:30:53'),(15229,'2005-08-22 17:30:25',320,63,'2005-08-23 14:13:25',1,'2006-02-15 21:30:53'),(15230,'2005-08-22 17:31:41',2572,466,'2005-08-25 21:57:41',2,'2006-02-15 21:30:53'),(15231,'2005-08-22 17:32:57',2980,187,'2005-08-25 13:06:57',1,'2006-02-15 21:30:53'),(15232,'2005-08-22 17:37:02',61,5,'2005-08-25 18:45:02',1,'2006-02-15 21:30:53'),(15233,'2005-08-22 17:41:53',4405,197,'2005-08-24 12:59:53',2,'2006-02-15 21:30:53'),(15234,'2006-02-14 15:16:03',908,228,NULL,2,'2006-02-15 21:30:53'),(15235,'2005-08-22 17:43:12',2726,416,'2005-08-29 23:03:12',2,'2006-02-15 21:30:53'),(15236,'2005-08-22 17:44:27',4124,557,'2005-08-24 23:25:27',1,'2006-02-15 21:30:53'),(15237,'2005-08-22 17:44:30',4485,148,'2005-08-24 12:51:30',1,'2006-02-15 21:30:53'),(15238,'2005-08-22 17:46:12',403,70,'2005-08-29 16:41:12',1,'2006-02-15 21:30:53'),(15239,'2005-08-22 17:46:17',1809,501,'2005-08-26 19:03:17',1,'2006-02-15 21:30:53'),(15240,'2005-08-22 17:46:41',2014,11,'2005-08-23 15:08:41',2,'2006-02-15 21:30:53'),(15241,'2005-08-22 17:47:40',832,337,'2005-08-29 15:28:40',2,'2006-02-15 21:30:53'),(15242,'2005-08-22 17:48:10',2106,364,'2005-08-27 23:32:10',1,'2006-02-15 21:30:53'),(15243,'2005-08-22 17:48:28',4408,308,'2005-08-31 13:22:28',1,'2006-02-15 21:30:53'),(15244,'2005-08-22 17:48:42',1486,271,'2005-08-28 13:17:42',2,'2006-02-15 21:30:53'),(15245,'2005-08-22 17:49:35',2545,298,'2005-08-26 18:25:35',2,'2006-02-15 21:30:53'),(15246,'2005-08-22 17:50:49',3786,100,'2005-08-30 22:21:49',1,'2006-02-15 21:30:53'),(15247,'2005-08-22 17:52:05',4572,250,'2005-08-31 21:37:05',1,'2006-02-15 21:30:53'),(15248,'2005-08-22 17:53:06',977,20,'2005-08-25 18:43:06',2,'2006-02-15 21:30:53'),(15249,'2005-08-22 17:58:27',121,444,'2005-08-30 14:55:27',1,'2006-02-15 21:30:53'),(15250,'2005-08-22 18:03:11',2176,143,'2005-08-27 12:19:11',2,'2006-02-15 21:30:53'),(15251,'2005-08-22 18:03:57',1994,285,'2005-08-23 20:56:57',2,'2006-02-15 21:30:53'),(15252,'2005-08-22 18:04:22',1821,453,'2005-08-25 17:14:22',2,'2006-02-15 21:30:53'),(15253,'2005-08-22 18:05:21',4143,333,'2005-08-23 18:06:21',2,'2006-02-15 21:30:53'),(15254,'2005-08-22 18:13:07',3762,209,'2005-08-24 21:55:07',1,'2006-02-15 21:30:53'),(15255,'2005-08-22 18:16:50',3415,84,'2005-08-28 14:14:50',2,'2006-02-15 21:30:53'),(15256,'2005-08-22 18:20:07',1873,198,'2005-08-28 12:57:07',1,'2006-02-15 21:30:53'),(15257,'2005-08-22 18:21:04',915,223,'2005-08-30 20:13:04',1,'2006-02-15 21:30:53'),(15258,'2005-08-22 18:22:44',788,293,'2005-08-25 16:54:44',1,'2006-02-15 21:30:53'),(15259,'2005-08-22 18:23:23',3261,488,'2005-08-27 13:06:23',1,'2006-02-15 21:30:53'),(15260,'2005-08-22 18:24:16',3135,274,'2005-08-24 21:26:16',1,'2006-02-15 21:30:53'),(15261,'2005-08-22 18:24:34',2200,140,'2005-08-27 19:53:34',1,'2006-02-15 21:30:53'),(15262,'2005-08-22 18:25:21',2534,298,'2005-08-28 22:19:21',1,'2006-02-15 21:30:53'),(15263,'2005-08-22 18:27:33',184,324,'2005-08-30 14:05:33',1,'2006-02-15 21:30:53'),(15264,'2005-08-22 18:27:38',4459,440,'2005-08-24 12:39:38',1,'2006-02-15 21:30:53'),(15265,'2005-08-22 18:35:59',1763,512,'2005-08-28 21:18:59',2,'2006-02-15 21:30:53'),(15266,'2005-08-22 18:37:24',1870,124,'2005-08-23 17:34:24',2,'2006-02-15 21:30:53'),(15267,'2005-08-22 18:37:48',2966,153,'2005-08-24 00:22:48',1,'2006-02-15 21:30:53'),(15268,'2005-08-22 18:39:11',1245,301,'2005-08-26 21:46:11',1,'2006-02-15 21:30:53'),(15269,'2005-08-22 18:39:44',524,275,'2005-08-24 17:29:44',1,'2006-02-15 21:30:53'),(15270,'2005-08-22 18:48:42',4123,262,'2005-08-28 15:38:42',2,'2006-02-15 21:30:53'),(15271,'2005-08-22 18:48:48',4232,59,'2005-08-30 00:45:48',2,'2006-02-15 21:30:53'),(15272,'2005-08-22 18:49:40',1664,422,'2005-08-28 21:22:40',1,'2006-02-15 21:30:53'),(15273,'2005-08-22 18:53:28',2558,422,'2005-08-30 18:58:28',2,'2006-02-15 21:30:53'),(15274,'2005-08-22 18:55:52',3519,515,'2005-08-23 20:02:52',1,'2006-02-15 21:30:53'),(15275,'2005-08-22 18:57:39',1522,597,'2005-08-23 19:00:39',2,'2006-02-15 21:30:53'),(15276,'2005-08-22 18:59:01',4523,490,'2005-08-23 19:49:01',2,'2006-02-15 21:30:53'),(15277,'2005-08-22 19:02:48',1780,217,'2005-08-31 18:53:48',2,'2006-02-15 21:30:53'),(15278,'2005-08-22 19:06:47',2454,472,'2005-08-25 01:00:47',2,'2006-02-15 21:30:53'),(15279,'2005-08-22 19:08:49',1088,363,'2005-08-30 00:38:49',2,'2006-02-15 21:30:53'),(15280,'2005-08-22 19:09:52',3464,317,'2005-08-28 00:39:52',1,'2006-02-15 21:30:53'),(15281,'2005-08-22 19:10:26',3992,543,'2005-08-27 21:55:26',2,'2006-02-15 21:30:53'),(15282,'2006-02-14 15:16:03',1932,163,NULL,1,'2006-02-15 21:30:53'),(15283,'2005-08-22 19:16:04',1688,219,'2005-08-31 21:05:04',1,'2006-02-15 21:30:53'),(15284,'2005-08-22 19:17:08',2265,393,'2005-08-29 13:28:08',2,'2006-02-15 21:30:53'),(15285,'2005-08-22 19:17:24',481,233,'2005-08-25 00:25:24',1,'2006-02-15 21:30:53'),(15286,'2005-08-22 19:17:56',3731,74,'2005-08-29 16:08:56',2,'2006-02-15 21:30:53'),(15287,'2005-08-22 19:19:37',308,535,'2005-08-29 16:05:37',1,'2006-02-15 21:30:53'),(15288,'2005-08-22 19:23:58',1999,475,'2005-08-26 23:28:58',1,'2006-02-15 21:30:53'),(15289,'2005-08-22 19:27:24',1026,513,'2005-08-30 22:21:24',1,'2006-02-15 21:30:53'),(15290,'2005-08-22 19:28:02',270,404,'2005-08-31 20:04:02',2,'2006-02-15 21:30:53'),(15291,'2005-08-22 19:28:04',1461,494,'2005-08-26 15:07:04',1,'2006-02-15 21:30:53'),(15292,'2005-08-22 19:28:56',3072,337,'2005-08-28 22:39:56',2,'2006-02-15 21:30:53'),(15293,'2006-02-14 15:16:03',1219,263,NULL,2,'2006-02-15 21:30:53'),(15294,'2006-02-14 15:16:03',70,108,NULL,1,'2006-02-15 21:30:53'),(15295,'2005-08-22 19:36:21',2164,186,'2005-08-31 00:07:21',2,'2006-02-15 21:30:53'),(15296,'2005-08-22 19:37:20',2715,55,'2005-08-24 15:16:20',1,'2006-02-15 21:30:53'),(15297,'2006-02-14 15:16:03',3192,327,NULL,2,'2006-02-15 21:30:53'),(15298,'2005-08-22 19:41:37',1446,1,'2005-08-28 22:49:37',1,'2006-02-15 21:30:53'),(15299,'2005-08-22 19:42:57',767,381,'2005-08-23 15:29:57',2,'2006-02-15 21:30:53'),(15300,'2005-08-22 19:44:00',2319,399,'2005-08-25 22:49:00',2,'2006-02-15 21:30:53'),(15301,'2005-08-22 19:44:16',619,454,'2005-08-26 22:57:16',2,'2006-02-15 21:30:53'),(15302,'2005-08-22 19:44:53',188,320,'2005-08-24 18:13:53',2,'2006-02-15 21:30:53'),(15303,'2005-08-22 19:44:59',1672,390,'2005-08-30 21:59:59',1,'2006-02-15 21:30:53'),(15304,'2005-08-22 19:45:57',4332,112,'2005-08-28 00:21:57',2,'2006-02-15 21:30:53'),(15305,'2005-08-22 19:46:05',671,529,'2005-08-27 19:11:05',2,'2006-02-15 21:30:53'),(15306,'2005-08-22 19:46:36',521,340,'2005-08-27 14:09:36',1,'2006-02-15 21:30:53'),(15307,'2005-08-22 19:54:26',4525,598,'2005-08-29 01:38:26',2,'2006-02-15 21:30:53'),(15308,'2005-08-22 19:54:31',987,329,'2005-08-26 23:09:31',1,'2006-02-15 21:30:53'),(15309,'2005-08-22 19:54:52',2743,141,'2005-08-24 23:00:52',2,'2006-02-15 21:30:53'),(15310,'2005-08-22 19:56:41',2546,360,'2005-08-24 16:32:41',2,'2006-02-15 21:30:53'),(15311,'2005-08-22 19:56:52',3612,176,'2005-08-31 20:15:52',2,'2006-02-15 21:30:53'),(15312,'2005-08-22 19:58:15',2509,280,'2005-08-25 19:21:15',2,'2006-02-15 21:30:53'),(15313,'2005-08-22 19:59:42',2587,333,'2005-08-24 15:03:42',2,'2006-02-15 21:30:53'),(15314,'2006-02-14 15:16:03',2754,412,NULL,1,'2006-02-15 21:30:53'),(15315,'2005-08-22 20:03:46',312,1,'2005-08-30 01:51:46',2,'2006-02-15 21:30:53'),(15316,'2005-08-22 20:07:03',1830,422,'2005-08-27 18:45:03',1,'2006-02-15 21:30:53'),(15317,'2005-08-22 20:14:13',2325,512,'2005-08-29 18:32:13',1,'2006-02-15 21:30:53'),(15318,'2005-08-22 20:15:16',1738,60,'2005-08-25 14:17:16',1,'2006-02-15 21:30:53'),(15319,'2005-08-22 20:17:17',3041,188,'2005-08-25 01:06:17',2,'2006-02-15 21:30:53'),(15320,'2005-08-22 20:17:49',648,407,'2005-08-28 17:31:49',1,'2006-02-15 21:30:53'),(15321,'2005-08-22 20:20:04',4152,384,'2005-08-24 23:26:04',2,'2006-02-15 21:30:53'),(15322,'2005-08-22 20:20:30',3553,263,'2005-08-25 01:26:30',2,'2006-02-15 21:30:53'),(15323,'2005-08-22 20:22:40',1153,178,'2005-08-26 00:35:40',1,'2006-02-15 21:30:53'),(15324,'2005-08-22 20:23:13',161,93,'2005-08-29 18:23:13',1,'2006-02-15 21:30:53'),(15325,'2005-08-22 20:27:38',3549,74,'2005-08-23 15:24:38',1,'2006-02-15 21:30:53'),(15326,'2006-02-14 15:16:03',3320,58,NULL,1,'2006-02-15 21:30:53'),(15327,'2005-08-22 20:31:24',1018,450,'2005-08-30 23:52:24',1,'2006-02-15 21:30:53'),(15328,'2005-08-22 20:31:38',4546,274,'2005-08-29 20:17:38',1,'2006-02-15 21:30:53'),(15329,'2005-08-22 20:32:39',1900,521,'2005-08-23 17:15:39',1,'2006-02-15 21:30:53'),(15330,'2005-08-22 20:35:30',689,427,'2005-08-30 21:54:30',1,'2006-02-15 21:30:53'),(15331,'2005-08-22 20:37:57',146,147,'2005-08-25 21:56:57',1,'2006-02-15 21:30:53'),(15332,'2005-08-22 20:41:53',3368,162,'2005-08-24 01:45:53',1,'2006-02-15 21:30:53'),(15333,'2005-08-22 20:44:06',1839,142,'2005-08-29 22:34:06',2,'2006-02-15 21:30:53'),(15334,'2005-08-22 20:44:35',3882,407,'2005-08-29 23:03:35',2,'2006-02-15 21:30:53'),(15335,'2005-08-22 20:44:55',1593,363,'2005-08-28 21:43:55',1,'2006-02-15 21:30:53'),(15336,'2005-08-22 20:47:48',490,461,'2005-08-31 18:17:48',2,'2006-02-15 21:30:53'),(15337,'2005-08-22 20:49:51',280,237,'2005-08-26 23:27:51',1,'2006-02-15 21:30:53'),(15338,'2005-08-22 20:51:24',502,13,'2005-08-24 23:41:24',2,'2006-02-15 21:30:53'),(15339,'2005-08-22 20:52:12',1660,331,'2005-08-26 00:36:12',2,'2006-02-15 21:30:53'),(15340,'2005-08-22 20:55:56',3653,313,'2005-08-27 18:52:56',1,'2006-02-15 21:30:53'),(15341,'2005-08-22 20:56:31',3359,91,'2005-08-30 17:25:31',1,'2006-02-15 21:30:53'),(15342,'2005-08-22 20:56:41',3287,459,'2005-08-26 22:51:41',2,'2006-02-15 21:30:53'),(15343,'2005-08-22 21:01:25',2589,538,'2005-08-28 16:15:25',1,'2006-02-15 21:30:53'),(15344,'2005-08-22 21:01:48',3560,193,'2005-08-27 15:47:48',1,'2006-02-15 21:30:53'),(15345,'2005-08-22 21:05:50',3481,277,'2005-08-26 20:30:50',1,'2006-02-15 21:30:53'),(15346,'2005-08-22 21:06:00',3525,266,'2005-08-28 22:08:00',1,'2006-02-15 21:30:53'),(15347,'2005-08-22 21:12:19',3764,519,'2005-08-24 20:12:19',1,'2006-02-15 21:30:53'),(15348,'2005-08-22 21:13:46',3846,587,'2005-08-24 17:06:46',1,'2006-02-15 21:30:53'),(15349,'2005-08-22 21:13:51',4055,587,'2005-08-23 20:55:51',1,'2006-02-15 21:30:53'),(15350,'2005-08-22 21:15:29',1170,488,'2005-08-24 02:56:29',1,'2006-02-15 21:30:53'),(15351,'2005-08-22 21:15:46',3260,154,'2005-08-23 17:38:46',1,'2006-02-15 21:30:53'),(15352,'2005-08-22 21:16:54',16,560,'2005-08-31 00:38:54',2,'2006-02-15 21:30:53'),(15353,'2005-08-22 21:18:08',3470,368,'2005-08-25 20:29:08',2,'2006-02-15 21:30:53'),(15354,'2005-08-22 21:18:59',4212,412,'2005-08-27 20:12:59',2,'2006-02-15 21:30:53'),(15355,'2005-08-22 21:19:24',3477,493,'2005-08-28 20:36:24',2,'2006-02-15 21:30:53'),(15356,'2005-08-22 21:24:19',4507,539,'2005-08-25 22:32:19',2,'2006-02-15 21:30:53'),(15357,'2005-08-22 21:28:59',727,24,'2005-08-25 17:15:59',1,'2006-02-15 21:30:53'),(15358,'2005-08-22 21:29:14',822,448,'2005-08-31 00:10:14',2,'2006-02-15 21:30:53'),(15359,'2005-08-22 21:34:00',4505,77,'2005-08-29 18:59:00',1,'2006-02-15 21:30:53'),(15360,'2005-08-22 21:36:51',1950,531,'2005-08-24 16:46:51',1,'2006-02-15 21:30:53'),(15361,'2005-08-22 21:39:45',1407,380,'2005-08-23 17:32:45',2,'2006-02-15 21:30:53'),(15362,'2005-08-22 21:40:20',1023,497,'2005-08-29 15:55:20',1,'2006-02-15 21:30:53'),(15363,'2005-08-22 21:41:40',2326,480,'2005-08-23 21:40:40',1,'2006-02-15 21:30:53'),(15364,'2005-08-22 21:41:41',4184,204,'2005-08-28 00:49:41',1,'2006-02-15 21:30:53'),(15365,'2005-08-22 21:42:17',3382,327,'2005-09-01 03:14:17',2,'2006-02-15 21:30:53'),(15366,'2005-08-22 21:45:57',1453,374,'2005-08-30 16:35:57',1,'2006-02-15 21:30:53'),(15367,'2005-08-22 21:47:53',160,355,'2005-08-27 17:54:53',2,'2006-02-15 21:30:53'),(15368,'2005-08-22 21:57:15',1130,370,'2005-08-29 16:28:15',1,'2006-02-15 21:30:53'),(15369,'2005-08-22 21:58:06',881,121,'2005-08-26 00:27:06',2,'2006-02-15 21:30:53'),(15370,'2005-08-22 21:59:29',67,10,'2005-08-27 16:32:29',1,'2006-02-15 21:30:53'),(15371,'2006-02-14 15:16:03',3672,94,NULL,2,'2006-02-15 21:30:53'),(15372,'2005-08-22 21:59:51',3876,273,'2005-08-23 17:01:51',1,'2006-02-15 21:30:53'),(15373,'2005-08-22 22:08:11',4439,14,'2005-08-24 01:05:11',2,'2006-02-15 21:30:53'),(15374,'2005-08-22 22:09:09',4275,8,'2005-08-31 01:10:09',1,'2006-02-15 21:30:53'),(15375,'2005-08-22 22:12:02',3864,191,'2005-08-24 00:50:02',2,'2006-02-15 21:30:53'),(15376,'2005-08-22 22:21:35',2963,390,'2005-08-28 20:56:35',1,'2006-02-15 21:30:53'),(15377,'2005-08-22 22:22:33',3405,551,'2005-08-29 18:41:33',1,'2006-02-15 21:30:53'),(15378,'2005-08-22 22:25:17',1483,340,'2005-08-30 17:04:17',1,'2006-02-15 21:30:53'),(15379,'2005-08-22 22:26:13',1899,148,'2005-08-31 18:19:13',1,'2006-02-15 21:30:53'),(15380,'2005-08-22 22:28:15',3642,423,'2005-08-28 23:21:15',1,'2006-02-15 21:30:53'),(15381,'2005-08-22 22:28:36',845,110,'2005-08-24 19:26:36',2,'2006-02-15 21:30:53'),(15382,'2005-08-22 22:30:50',333,376,'2005-08-24 04:07:50',2,'2006-02-15 21:30:53'),(15383,'2005-08-22 22:31:20',686,405,'2005-08-28 17:43:20',1,'2006-02-15 21:30:53'),(15384,'2005-08-22 22:34:44',3208,26,'2005-08-23 23:25:44',2,'2006-02-15 21:30:53'),(15385,'2005-08-22 22:37:34',140,434,'2005-08-26 00:36:34',2,'2006-02-15 21:30:53'),(15386,'2005-08-22 22:41:14',3056,327,'2005-08-29 22:29:14',1,'2006-02-15 21:30:53'),(15387,'2005-08-22 22:49:13',3879,323,'2005-08-29 01:49:13',2,'2006-02-15 21:30:53'),(15388,'2005-08-22 22:49:23',3995,50,'2005-09-01 03:50:23',2,'2006-02-15 21:30:53'),(15389,'2005-08-22 22:51:13',2077,231,'2005-08-28 23:46:13',1,'2006-02-15 21:30:53'),(15390,'2005-08-22 22:57:25',462,551,'2005-08-31 18:06:25',1,'2006-02-15 21:30:53'),(15391,'2005-08-22 23:01:45',3918,482,'2005-08-29 02:59:45',2,'2006-02-15 21:30:53'),(15392,'2005-08-22 23:02:15',538,410,'2005-09-01 01:14:15',2,'2006-02-15 21:30:53'),(15393,'2005-08-22 23:04:09',2924,443,'2005-08-27 02:23:09',2,'2006-02-15 21:30:53'),(15394,'2005-08-22 23:04:21',3455,507,'2005-08-25 20:53:21',2,'2006-02-15 21:30:53'),(15395,'2005-08-22 23:06:25',2880,526,'2005-08-30 19:18:25',1,'2006-02-15 21:30:53'),(15396,'2005-08-22 23:07:57',4050,319,'2005-08-28 19:39:57',2,'2006-02-15 21:30:53'),(15397,'2005-08-22 23:08:46',1482,261,'2005-08-25 20:58:46',1,'2006-02-15 21:30:53'),(15398,'2005-08-22 23:10:49',4451,109,'2005-08-28 00:49:49',2,'2006-02-15 21:30:53'),(15399,'2005-08-22 23:11:59',3858,379,'2005-08-26 22:16:59',2,'2006-02-15 21:30:53'),(15400,'2005-08-22 23:13:03',2664,473,'2005-08-28 18:34:03',1,'2006-02-15 21:30:53'),(15401,'2005-08-22 23:13:10',1721,103,'2005-09-01 03:44:10',1,'2006-02-15 21:30:53'),(15402,'2005-08-22 23:17:41',1575,293,'2005-08-30 20:07:41',2,'2006-02-15 21:30:53'),(15403,'2005-08-22 23:18:10',4315,581,'2005-08-23 18:08:10',2,'2006-02-15 21:30:53'),(15404,'2005-08-22 23:19:44',3557,211,'2005-08-30 19:58:44',2,'2006-02-15 21:30:53'),(15405,'2005-08-22 23:20:41',3263,596,'2005-08-25 23:53:41',1,'2006-02-15 21:30:53'),(15406,'2005-08-22 23:21:22',400,227,'2005-08-28 22:21:22',1,'2006-02-15 21:30:53'),(15407,'2006-02-14 15:16:03',3330,42,NULL,2,'2006-02-15 21:30:53'),(15408,'2005-08-22 23:26:32',165,156,'2005-08-30 20:22:32',1,'2006-02-15 21:30:53'),(15409,'2005-08-22 23:26:32',560,188,'2005-08-24 22:44:32',1,'2006-02-15 21:30:53'),(15410,'2005-08-22 23:27:43',2052,403,'2005-08-29 05:12:43',2,'2006-02-15 21:30:53'),(15411,'2005-08-22 23:35:41',4423,461,'2005-08-26 00:51:41',1,'2006-02-15 21:30:53'),(15412,'2005-08-22 23:37:11',1267,199,'2005-08-28 23:26:11',2,'2006-02-15 21:30:53'),(15413,'2005-08-22 23:38:01',2494,476,'2005-08-23 19:27:01',2,'2006-02-15 21:30:53'),(15414,'2005-08-22 23:43:54',718,532,'2005-08-30 18:26:54',1,'2006-02-15 21:30:53'),(15415,'2005-08-22 23:48:56',4176,204,'2005-09-01 02:05:56',1,'2006-02-15 21:30:53'),(15416,'2005-08-22 23:51:23',1167,383,'2005-08-29 20:03:23',1,'2006-02-15 21:30:53'),(15417,'2005-08-22 23:54:04',1826,305,'2005-08-26 22:25:04',1,'2006-02-15 21:30:53'),(15418,'2005-08-22 23:54:14',808,205,'2005-08-28 04:23:14',2,'2006-02-15 21:30:53'),(15419,'2005-08-22 23:54:36',1120,450,'2005-08-25 00:52:36',1,'2006-02-15 21:30:53'),(15420,'2005-08-22 23:55:51',1396,161,'2005-08-31 20:09:51',2,'2006-02-15 21:30:53'),(15421,'2005-08-22 23:56:37',3,541,'2005-08-25 18:58:37',2,'2006-02-15 21:30:53'),(15422,'2005-08-22 23:58:09',2601,309,'2005-08-30 19:03:09',2,'2006-02-15 21:30:53'),(15423,'2006-02-14 15:16:03',1786,596,NULL,1,'2006-02-15 21:30:53'),(15424,'2005-08-23 00:03:01',3452,138,'2005-08-27 23:27:01',2,'2006-02-15 21:30:53'),(15425,'2005-08-23 00:05:57',551,259,'2005-09-01 05:08:57',1,'2006-02-15 21:30:53'),(15426,'2005-08-23 00:07:19',3280,347,'2005-08-26 23:19:19',1,'2006-02-15 21:30:53'),(15427,'2005-08-23 00:07:53',2775,448,'2005-09-01 02:55:53',2,'2006-02-15 21:30:53'),(15428,'2005-08-23 00:11:52',4379,402,'2005-08-24 02:35:52',1,'2006-02-15 21:30:53'),(15429,'2005-08-23 00:20:31',740,241,'2005-08-23 20:22:31',1,'2006-02-15 21:30:53'),(15430,'2006-02-14 15:16:03',4353,282,NULL,1,'2006-02-15 21:30:53'),(15431,'2005-08-23 00:26:47',3251,550,'2005-08-31 23:26:47',2,'2006-02-15 21:30:53'),(15432,'2005-08-23 00:26:52',1896,117,'2005-08-27 06:11:52',1,'2006-02-15 21:30:53'),(15433,'2005-08-23 00:27:18',155,198,'2005-08-26 21:36:18',1,'2006-02-15 21:30:53'),(15434,'2005-08-23 00:28:16',4378,518,'2005-08-26 04:27:16',2,'2006-02-15 21:30:53'),(15435,'2005-08-23 00:28:19',2103,468,'2005-08-26 00:44:19',2,'2006-02-15 21:30:53'),(15436,'2005-08-23 00:30:26',1527,505,'2005-08-28 06:29:26',1,'2006-02-15 21:30:53'),(15437,'2005-08-23 00:31:09',4236,368,'2005-08-30 06:17:09',2,'2006-02-15 21:30:53'),(15438,'2005-08-23 00:31:57',2030,46,'2005-08-26 20:02:57',1,'2006-02-15 21:30:53'),(15439,'2005-08-23 00:34:28',3848,136,'2005-08-27 01:07:28',1,'2006-02-15 21:30:53'),(15440,'2005-08-23 00:37:21',2254,559,'2005-08-24 23:24:21',1,'2006-02-15 21:30:53'),(15441,'2006-02-14 15:16:03',258,422,NULL,2,'2006-02-15 21:30:53'),(15442,'2005-08-23 00:42:49',1452,42,'2005-08-27 00:35:49',1,'2006-02-15 21:30:53'),(15443,'2005-08-23 00:44:15',742,598,'2005-09-01 05:33:15',2,'2006-02-15 21:30:53'),(15444,'2005-08-23 00:46:52',959,153,'2005-08-29 20:37:52',2,'2006-02-15 21:30:53'),(15445,'2005-08-23 00:48:29',196,28,'2005-08-28 00:33:29',1,'2006-02-15 21:30:53'),(15446,'2005-08-23 00:49:24',503,379,'2005-08-26 02:09:24',2,'2006-02-15 21:30:53'),(15447,'2005-08-23 00:53:57',4090,331,'2005-08-29 06:19:57',2,'2006-02-15 21:30:53'),(15448,'2005-08-23 00:55:24',2903,490,'2005-08-25 02:20:24',1,'2006-02-15 21:30:53'),(15449,'2005-08-23 00:55:43',2856,461,'2005-08-28 03:41:43',1,'2006-02-15 21:30:53'),(15450,'2005-08-23 00:56:01',1102,322,'2005-08-24 01:00:01',2,'2006-02-15 21:30:53'),(15451,'2005-08-23 00:56:27',231,514,'2005-08-24 00:15:27',2,'2006-02-15 21:30:53'),(15452,'2005-08-23 00:57:12',717,115,'2005-08-28 00:19:12',1,'2006-02-15 21:30:53'),(15453,'2005-08-23 01:01:01',2,359,'2005-08-30 20:08:01',1,'2006-02-15 21:30:53'),(15454,'2006-02-14 15:16:03',2946,142,NULL,2,'2006-02-15 21:30:53'),(15455,'2005-08-23 01:05:00',3991,238,'2005-08-26 22:56:00',1,'2006-02-15 21:30:53'),(15456,'2005-08-23 01:07:01',2451,262,'2005-08-24 23:28:01',2,'2006-02-15 21:30:53'),(15457,'2005-08-23 01:07:37',4539,306,'2005-08-26 19:46:37',1,'2006-02-15 21:30:53'),(15458,'2006-02-14 15:16:03',25,590,NULL,2,'2006-02-15 21:30:53'),(15459,'2005-08-23 01:09:48',2058,346,'2005-08-24 04:52:48',1,'2006-02-15 21:30:53'),(15460,'2005-08-23 01:10:42',2907,20,'2005-08-28 20:49:42',2,'2006-02-15 21:30:53'),(15461,'2005-08-23 01:13:52',4542,103,'2005-08-30 00:44:52',1,'2006-02-15 21:30:53'),(15462,'2005-08-23 01:14:01',3267,389,'2005-08-29 19:52:01',1,'2006-02-15 21:30:53'),(15463,'2005-08-23 01:15:07',863,127,'2005-08-29 06:50:07',1,'2006-02-15 21:30:53'),(15464,'2005-08-23 01:15:18',3235,62,'2005-08-29 02:58:18',2,'2006-02-15 21:30:53'),(15465,'2005-08-23 01:16:33',362,520,'2005-08-28 20:08:33',2,'2006-02-15 21:30:53'),(15466,'2005-08-23 01:16:55',571,418,'2005-08-29 22:57:55',1,'2006-02-15 21:30:53'),(15467,'2005-08-23 01:22:12',3658,103,'2005-08-29 23:42:12',2,'2006-02-15 21:30:53'),(15468,'2005-08-23 01:25:30',2440,399,'2005-08-28 01:40:30',2,'2006-02-15 21:30:53'),(15469,'2005-08-23 01:29:59',1939,597,'2005-08-27 04:02:59',1,'2006-02-15 21:30:53'),(15470,'2005-08-23 01:35:12',3009,416,'2005-09-01 05:33:12',1,'2006-02-15 21:30:53'),(15471,'2005-08-23 01:38:48',2591,139,'2005-08-31 19:47:48',1,'2006-02-15 21:30:53'),(15472,'2005-08-23 01:39:05',4293,226,'2005-08-25 04:43:05',1,'2006-02-15 21:30:53'),(15473,'2005-08-23 01:39:10',356,259,'2005-08-25 03:48:10',1,'2006-02-15 21:30:53'),(15474,'2005-08-23 01:39:10',3015,188,'2005-08-23 21:46:10',2,'2006-02-15 21:30:53'),(15475,'2005-08-23 01:44:43',4503,562,'2005-08-23 23:53:43',2,'2006-02-15 21:30:53'),(15476,'2005-08-23 01:45:07',2478,433,'2005-08-26 21:07:07',2,'2006-02-15 21:30:53'),(15477,'2005-08-23 01:46:35',2406,142,'2005-08-28 22:12:35',1,'2006-02-15 21:30:53'),(15478,'2005-08-23 01:50:31',4563,167,'2005-08-27 21:40:31',2,'2006-02-15 21:30:53'),(15479,'2005-08-23 01:50:53',4182,149,'2005-08-29 00:53:53',1,'2006-02-15 21:30:53'),(15480,'2005-08-23 01:57:20',3298,577,'2005-08-26 04:43:20',2,'2006-02-15 21:30:53'),(15481,'2005-08-23 01:59:14',3262,414,'2005-08-27 04:38:14',1,'2006-02-15 21:30:53'),(15482,'2005-08-23 02:01:20',3923,181,'2005-08-24 03:25:20',2,'2006-02-15 21:30:53'),(15483,'2005-08-23 02:02:53',2970,173,'2005-08-26 04:13:53',1,'2006-02-15 21:30:53'),(15484,'2005-08-23 02:04:49',642,342,'2005-08-24 05:46:49',1,'2006-02-15 21:30:53'),(15485,'2005-08-23 02:04:57',281,114,'2005-08-28 07:05:57',2,'2006-02-15 21:30:53'),(15486,'2005-08-23 02:05:20',1666,502,'2005-08-29 07:52:20',2,'2006-02-15 21:30:53'),(15487,'2005-08-23 02:05:51',2636,469,'2005-08-25 04:45:51',1,'2006-02-15 21:30:53'),(15488,'2005-08-23 02:06:01',4535,385,'2005-08-29 21:35:01',2,'2006-02-15 21:30:53'),(15489,'2005-08-23 02:06:41',764,285,'2005-08-25 06:50:41',1,'2006-02-15 21:30:53'),(15490,'2005-08-23 02:08:18',3922,493,'2005-08-30 06:15:18',1,'2006-02-15 21:30:53'),(15491,'2005-08-23 02:08:40',2059,28,'2005-08-23 20:23:40',2,'2006-02-15 21:30:53'),(15492,'2005-08-23 02:13:46',1298,520,'2005-08-26 21:53:46',2,'2006-02-15 21:30:53'),(15493,'2005-08-23 02:20:53',3521,308,'2005-08-25 23:02:53',1,'2006-02-15 21:30:53'),(15494,'2005-08-23 02:25:09',2968,455,'2005-08-27 00:18:09',1,'2006-02-15 21:30:53'),(15495,'2005-08-23 02:26:10',4310,193,'2005-08-30 01:07:10',2,'2006-02-15 21:30:53'),(15496,'2005-08-23 02:30:23',1863,275,'2005-08-31 03:31:23',2,'2006-02-15 21:30:53'),(15497,'2006-02-14 15:16:03',363,107,NULL,1,'2006-02-15 21:30:53'),(15498,'2005-08-23 02:33:27',1583,83,'2005-08-23 22:30:27',1,'2006-02-15 21:30:53'),(15499,'2005-08-23 02:37:19',630,488,'2005-08-23 20:57:19',1,'2006-02-15 21:30:53'),(15500,'2005-08-23 02:39:37',886,74,'2005-08-27 06:42:37',1,'2006-02-15 21:30:53'),(15501,'2005-08-23 02:39:56',4468,138,'2005-08-25 04:39:56',1,'2006-02-15 21:30:53'),(15502,'2005-08-23 02:40:04',3219,433,'2005-08-31 00:36:04',2,'2006-02-15 21:30:53'),(15503,'2005-08-23 02:44:49',4519,582,'2005-08-27 06:33:49',2,'2006-02-15 21:30:53'),(15504,'2005-08-23 02:45:21',1967,315,'2005-09-01 03:24:21',2,'2006-02-15 21:30:53'),(15505,'2005-08-23 02:46:13',1144,375,'2005-08-26 23:34:13',2,'2006-02-15 21:30:53'),(15506,'2005-08-23 02:48:24',1914,553,'2005-08-28 04:10:24',1,'2006-02-15 21:30:53'),(15507,'2005-08-23 02:48:26',3130,563,'2005-08-27 01:32:26',1,'2006-02-15 21:30:53'),(15508,'2005-08-23 02:49:04',4035,293,'2005-08-29 00:58:04',1,'2006-02-15 21:30:53'),(15509,'2005-08-23 02:51:24',1291,6,'2005-08-31 06:21:24',2,'2006-02-15 21:30:53'),(15510,'2005-08-23 02:51:27',3239,209,'2005-09-01 02:44:27',2,'2006-02-15 21:30:53'),(15511,'2005-08-23 02:55:42',3327,303,'2005-08-31 03:14:42',2,'2006-02-15 21:30:53'),(15512,'2005-08-23 02:57:30',4336,25,'2005-08-25 01:47:30',2,'2006-02-15 21:30:53'),(15513,'2005-08-23 03:01:56',3779,147,'2005-08-24 23:46:56',2,'2006-02-15 21:30:53'),(15514,'2005-08-23 03:03:40',2824,366,'2005-08-24 01:06:40',1,'2006-02-15 21:30:53'),(15515,'2005-08-23 03:03:53',3940,307,'2005-08-25 08:27:53',2,'2006-02-15 21:30:53'),(15516,'2005-08-23 03:12:54',219,82,'2005-08-30 04:02:54',1,'2006-02-15 21:30:53'),(15517,'2005-08-23 03:13:01',2221,187,'2005-08-25 21:14:01',2,'2006-02-15 21:30:53'),(15518,'2005-08-23 03:19:34',3522,410,'2005-08-24 02:55:34',1,'2006-02-15 21:30:53'),(15519,'2005-08-23 03:23:32',542,443,'2005-08-25 03:48:32',1,'2006-02-15 21:30:53'),(15520,'2005-08-23 03:30:45',1792,163,'2005-09-01 00:20:45',1,'2006-02-15 21:30:53'),(15521,'2005-08-23 03:30:51',134,331,'2005-08-28 22:09:51',1,'2006-02-15 21:30:53'),(15522,'2005-08-23 03:32:31',2396,468,'2005-08-30 02:17:31',2,'2006-02-15 21:30:53'),(15523,'2005-08-23 03:32:36',2570,432,'2005-08-26 22:08:36',2,'2006-02-15 21:30:53'),(15524,'2005-08-23 03:36:26',2886,68,'2005-08-26 06:28:26',2,'2006-02-15 21:30:53'),(15525,'2005-08-23 03:43:32',3509,123,'2005-08-25 07:31:32',2,'2006-02-15 21:30:53'),(15526,'2005-08-23 03:44:30',2892,516,'2005-08-30 08:19:30',1,'2006-02-15 21:30:53'),(15527,'2005-08-23 03:44:51',88,393,'2005-08-25 03:09:51',1,'2006-02-15 21:30:53'),(15528,'2005-08-23 03:45:40',3033,114,'2005-08-25 01:16:40',1,'2006-02-15 21:30:53'),(15529,'2005-08-23 03:46:47',4015,19,'2005-08-24 00:59:47',1,'2006-02-15 21:30:53'),(15530,'2005-08-23 03:50:48',154,167,'2005-08-28 22:17:48',2,'2006-02-15 21:30:53'),(15531,'2005-08-23 03:52:36',2410,355,'2005-08-25 23:21:36',1,'2006-02-15 21:30:53'),(15532,'2006-02-14 15:16:03',1061,23,NULL,1,'2006-02-15 21:30:53'),(15533,'2005-08-23 03:54:39',1895,400,'2005-08-26 08:27:39',2,'2006-02-15 21:30:53'),(15534,'2005-08-23 03:55:54',544,169,'2005-08-24 03:54:54',1,'2006-02-15 21:30:53'),(15535,'2005-08-23 03:58:02',2371,346,'2005-08-25 05:06:02',2,'2006-02-15 21:30:53'),(15536,'2005-08-23 03:58:28',4004,98,'2005-08-31 03:28:28',2,'2006-02-15 21:30:53'),(15537,'2005-08-23 04:00:30',2958,137,'2005-08-24 01:45:30',2,'2006-02-15 21:30:53'),(15538,'2005-08-23 04:07:37',4226,211,'2005-08-28 07:37:37',1,'2006-02-15 21:30:53'),(15539,'2005-08-23 04:09:03',2853,582,'2005-08-26 04:01:03',1,'2006-02-15 21:30:53'),(15540,'2005-08-23 04:12:52',1696,197,'2005-08-31 04:25:52',1,'2006-02-15 21:30:53'),(15541,'2005-08-23 04:13:53',2762,148,'2005-08-29 05:51:53',1,'2006-02-15 21:30:53'),(15542,'2006-02-14 15:16:03',21,111,NULL,1,'2006-02-15 21:30:53'),(15543,'2005-08-23 04:15:41',3836,282,'2005-09-01 05:09:41',2,'2006-02-15 21:30:53'),(15544,'2005-08-23 04:17:56',1918,30,'2005-09-01 00:43:56',2,'2006-02-15 21:30:53'),(15545,'2005-08-23 04:20:16',843,513,'2005-08-29 08:22:16',1,'2006-02-15 21:30:53'),(15546,'2005-08-23 04:20:38',2087,223,'2005-09-01 09:57:38',2,'2006-02-15 21:30:53'),(15547,'2005-08-23 04:25:50',1488,69,'2005-08-26 00:57:50',1,'2006-02-15 21:30:53'),(15548,'2005-08-23 04:26:20',2350,334,'2005-08-28 01:27:20',1,'2006-02-15 21:30:53'),(15549,'2005-08-23 04:27:06',369,170,'2005-09-01 06:07:06',1,'2006-02-15 21:30:53'),(15550,'2005-08-23 04:27:54',1375,465,'2005-08-29 01:29:54',1,'2006-02-15 21:30:53'),(15551,'2005-08-23 04:28:25',3570,345,'2005-08-26 07:19:25',1,'2006-02-15 21:30:53'),(15552,'2005-08-23 04:33:23',4347,527,'2005-09-01 10:25:23',2,'2006-02-15 21:30:53'),(15553,'2005-08-23 04:33:39',1659,232,'2005-08-25 07:53:39',2,'2006-02-15 21:30:53'),(15554,'2005-08-23 04:48:12',198,280,'2005-08-29 05:11:12',1,'2006-02-15 21:30:53'),(15555,'2005-08-23 04:51:52',1869,347,'2005-08-24 01:01:52',1,'2006-02-15 21:30:53'),(15556,'2005-08-23 04:52:16',3683,108,'2005-09-01 02:05:16',2,'2006-02-15 21:30:53'),(15557,'2005-08-23 04:52:17',3641,444,'2005-08-30 02:15:17',2,'2006-02-15 21:30:53'),(15558,'2005-08-23 04:52:22',638,474,'2005-09-01 02:26:22',1,'2006-02-15 21:30:53'),(15559,'2005-08-23 04:55:05',1773,517,'2005-08-30 09:01:05',2,'2006-02-15 21:30:53'),(15560,'2005-08-23 05:01:13',3616,107,'2005-09-01 05:02:13',1,'2006-02-15 21:30:53'),(15561,'2005-08-23 05:02:31',68,469,'2005-09-01 02:51:31',1,'2006-02-15 21:30:53'),(15562,'2005-08-23 05:04:33',4238,149,'2005-08-27 09:58:33',1,'2006-02-15 21:30:53'),(15563,'2005-08-23 05:08:58',170,372,'2005-08-24 04:24:58',1,'2006-02-15 21:30:53'),(15564,'2005-08-23 05:10:42',1268,353,'2005-08-30 03:17:42',1,'2006-02-15 21:30:53'),(15565,'2005-08-23 05:13:09',71,546,'2005-08-30 08:58:09',2,'2006-02-15 21:30:53'),(15566,'2005-08-23 05:17:23',4344,76,'2005-09-01 08:09:23',2,'2006-02-15 21:30:53'),(15567,'2005-08-23 05:20:36',2506,54,'2005-08-24 10:09:36',2,'2006-02-15 21:30:53'),(15568,'2005-08-23 05:24:09',988,556,'2005-08-27 08:57:09',2,'2006-02-15 21:30:53'),(15569,'2005-08-23 05:24:29',1071,313,'2005-08-30 08:23:29',2,'2006-02-15 21:30:53'),(15570,'2005-08-23 05:24:55',4014,557,'2005-08-31 07:06:55',2,'2006-02-15 21:30:53'),(15571,'2005-08-23 05:26:30',716,57,'2005-08-29 00:54:30',2,'2006-02-15 21:30:53'),(15572,'2005-08-23 05:28:01',2816,506,'2005-08-27 00:14:01',2,'2006-02-15 21:30:53'),(15573,'2005-08-23 05:28:36',3133,561,'2005-08-27 05:37:36',2,'2006-02-15 21:30:53'),(15574,'2005-08-23 05:29:32',3253,130,'2005-09-01 01:25:32',2,'2006-02-15 21:30:53'),(15575,'2005-08-23 05:30:19',3916,218,'2005-08-27 05:19:19',2,'2006-02-15 21:30:53'),(15576,'2005-08-23 05:32:03',3257,595,'2005-08-26 02:31:03',1,'2006-02-15 21:30:53'),(15577,'2006-02-14 15:16:03',539,29,NULL,2,'2006-02-15 21:30:53'),(15578,'2005-08-23 05:37:13',2829,302,'2005-08-27 01:11:13',1,'2006-02-15 21:30:53'),(15579,'2005-08-23 05:38:41',3986,480,'2005-08-29 09:18:41',1,'2006-02-15 21:30:53'),(15580,'2005-08-23 05:39:06',754,279,'2005-09-01 01:14:06',2,'2006-02-15 21:30:53'),(15581,'2005-08-23 05:42:13',4010,462,'2005-08-28 00:03:13',1,'2006-02-15 21:30:53'),(15582,'2005-08-23 05:45:44',4264,297,'2005-08-25 07:54:44',2,'2006-02-15 21:30:53'),(15583,'2005-08-23 05:47:55',4299,215,'2005-08-26 01:46:55',1,'2006-02-15 21:30:53'),(15584,'2005-08-23 05:49:21',3526,500,'2005-08-27 04:49:21',1,'2006-02-15 21:30:53'),(15585,'2005-08-23 05:55:22',1177,545,'2005-08-24 11:45:22',2,'2006-02-15 21:30:53'),(15586,'2005-08-23 05:57:04',3232,148,'2005-08-31 01:59:04',1,'2006-02-15 21:30:53'),(15587,'2005-08-23 06:00:28',2510,499,'2005-08-29 10:15:28',1,'2006-02-15 21:30:53'),(15588,'2005-08-23 06:02:35',1810,503,'2005-08-30 04:01:35',2,'2006-02-15 21:30:53'),(15589,'2005-08-23 06:03:31',2379,22,'2005-08-30 07:44:31',2,'2006-02-15 21:30:53'),(15590,'2005-08-23 06:09:44',4048,599,'2005-09-01 06:53:44',2,'2006-02-15 21:30:53'),(15591,'2005-08-23 06:11:52',64,62,'2005-08-25 05:34:52',1,'2006-02-15 21:30:53'),(15593,'2005-08-23 06:15:09',3734,153,'2005-08-27 07:47:09',2,'2006-02-15 21:30:53'),(15594,'2005-08-23 06:18:43',4227,567,'2005-09-01 09:09:43',2,'2006-02-15 21:30:53'),(15595,'2005-08-23 06:19:12',4046,264,'2005-08-31 04:52:12',1,'2006-02-15 21:30:53'),(15596,'2005-08-23 06:19:51',3834,186,'2005-08-25 03:32:51',1,'2006-02-15 21:30:53'),(15597,'2005-08-23 06:21:20',3795,420,'2005-08-28 02:47:20',2,'2006-02-15 21:30:53'),(15598,'2005-08-23 06:23:26',2794,66,'2005-09-01 05:43:26',1,'2006-02-15 21:30:53'),(15599,'2005-08-23 06:25:07',4560,103,'2005-08-29 00:48:07',1,'2006-02-15 21:30:53'),(15600,'2005-08-23 06:31:24',2260,113,'2005-08-28 06:53:24',1,'2006-02-15 21:30:53'),(15601,'2005-08-23 06:33:26',3643,579,'2005-08-24 04:10:26',1,'2006-02-15 21:30:53'),(15602,'2005-08-23 06:41:07',1429,81,'2005-08-24 07:16:07',1,'2006-02-15 21:30:53'),(15603,'2005-08-23 06:41:32',2565,6,'2005-08-28 08:51:32',1,'2006-02-15 21:30:53'),(15604,'2005-08-23 06:44:19',4000,458,'2005-08-29 07:17:19',1,'2006-02-15 21:30:53'),(15605,'2005-08-23 06:48:47',3152,544,'2005-08-28 06:09:47',1,'2006-02-15 21:30:53'),(15606,'2005-08-23 06:50:27',1811,279,'2005-08-28 04:23:27',2,'2006-02-15 21:30:53'),(15607,'2005-08-23 06:54:06',4118,484,'2005-08-26 05:03:06',2,'2006-02-15 21:30:53'),(15608,'2005-08-23 06:55:26',2921,454,'2005-08-28 10:24:26',1,'2006-02-15 21:30:53'),(15609,'2005-08-23 06:56:04',1730,256,'2005-09-01 03:25:04',1,'2006-02-15 21:30:53'),(15610,'2005-08-23 06:56:15',2076,215,'2005-08-24 07:37:15',2,'2006-02-15 21:30:53'),(15611,'2005-08-23 06:56:18',1713,184,'2005-08-25 06:10:18',1,'2006-02-15 21:30:53'),(15612,'2005-08-23 06:59:07',3367,305,'2005-09-01 11:26:07',2,'2006-02-15 21:30:53'),(15613,'2005-08-23 07:03:19',307,461,'2005-08-31 07:50:19',2,'2006-02-15 21:30:53'),(15614,'2005-08-23 07:05:15',1216,287,'2005-09-01 11:41:15',1,'2006-02-15 21:30:53'),(15615,'2005-08-23 07:06:00',899,584,'2005-08-30 11:21:00',2,'2006-02-15 21:30:53'),(15616,'2005-08-23 07:06:38',2947,70,'2005-08-30 04:16:38',1,'2006-02-15 21:30:53'),(15617,'2005-08-23 07:07:22',4085,569,'2005-08-27 01:24:22',2,'2006-02-15 21:30:53'),(15618,'2005-08-23 07:07:58',1903,60,'2005-08-29 03:48:58',1,'2006-02-15 21:30:53'),(15619,'2005-08-23 07:10:14',2468,3,'2005-08-26 07:21:14',2,'2006-02-15 21:30:53'),(15620,'2005-08-23 07:10:22',1173,270,'2005-08-28 06:51:22',2,'2006-02-15 21:30:53'),(15621,'2005-08-23 07:13:43',3832,123,'2005-08-29 08:19:43',1,'2006-02-15 21:30:53'),(15622,'2005-08-23 07:22:02',3335,302,'2005-09-01 06:08:02',2,'2006-02-15 21:30:53'),(15623,'2005-08-23 07:23:29',3003,525,'2005-08-31 01:47:29',1,'2006-02-15 21:30:53'),(15624,'2005-08-23 07:24:27',396,105,'2005-08-29 12:36:27',2,'2006-02-15 21:30:53'),(15625,'2005-08-23 07:25:29',4200,207,'2005-08-27 13:17:29',2,'2006-02-15 21:30:53'),(15626,'2005-08-23 07:25:34',640,370,'2005-08-28 11:01:34',1,'2006-02-15 21:30:53'),(15627,'2005-08-23 07:25:38',1364,453,'2005-08-31 02:53:38',2,'2006-02-15 21:30:53'),(15628,'2005-08-23 07:28:04',1348,408,'2005-08-26 04:23:04',1,'2006-02-15 21:30:53'),(15629,'2005-08-23 07:28:22',3725,286,'2005-08-29 06:29:22',2,'2006-02-15 21:30:53'),(15630,'2005-08-23 07:29:13',3590,580,'2005-08-31 04:33:13',2,'2006-02-15 21:30:53'),(15631,'2005-08-23 07:30:23',2458,93,'2005-08-24 07:23:23',1,'2006-02-15 21:30:53'),(15632,'2005-08-23 07:30:26',2941,60,'2005-08-24 07:53:26',2,'2006-02-15 21:30:53'),(15633,'2005-08-23 07:31:10',882,497,'2005-08-26 04:35:10',2,'2006-02-15 21:30:53'),(15634,'2005-08-23 07:34:18',2517,576,'2005-08-24 12:00:18',2,'2006-02-15 21:30:53'),(15635,'2005-08-23 07:43:00',3308,4,'2005-08-27 10:47:00',1,'2006-02-15 21:30:53'),(15636,'2005-08-23 07:50:46',1169,380,'2005-08-26 07:59:46',2,'2006-02-15 21:30:53'),(15637,'2005-08-23 07:53:38',445,172,'2005-08-29 03:16:38',2,'2006-02-15 21:30:53'),(15638,'2005-08-23 07:54:54',3358,563,'2005-08-30 13:33:54',2,'2006-02-15 21:30:53'),(15639,'2005-08-23 08:03:25',42,214,'2005-08-24 10:21:25',2,'2006-02-15 21:30:53'),(15640,'2005-08-23 08:04:40',3505,262,'2005-08-24 06:38:40',1,'2006-02-15 21:30:53'),(15641,'2005-08-23 08:06:49',3126,240,'2005-08-24 13:17:49',1,'2006-02-15 21:30:53'),(15642,'2005-08-23 08:09:11',2627,160,'2005-08-28 05:57:11',1,'2006-02-15 21:30:53'),(15643,'2005-08-23 08:13:26',103,298,'2005-08-25 05:18:26',2,'2006-02-15 21:30:53'),(15644,'2006-02-14 15:16:03',3139,43,NULL,2,'2006-02-15 21:30:53'),(15645,'2006-02-14 15:16:03',3838,214,NULL,2,'2006-02-15 21:30:53'),(15646,'2005-08-23 08:19:55',3217,114,'2005-08-29 02:32:55',1,'2006-02-15 21:30:53'),(15647,'2005-08-23 08:23:56',2051,251,'2005-08-26 11:00:56',1,'2006-02-15 21:30:53'),(15648,'2005-08-23 08:27:57',4039,80,'2005-08-30 08:53:57',2,'2006-02-15 21:30:53'),(15649,'2005-08-23 08:28:03',415,60,'2005-08-30 05:11:03',1,'2006-02-15 21:30:53'),(15650,'2005-08-23 08:29:53',2447,353,'2005-08-25 07:23:53',2,'2006-02-15 21:30:53'),(15651,'2005-08-23 08:31:49',3393,451,'2005-08-26 02:57:49',1,'2006-02-15 21:30:53'),(15652,'2005-08-23 08:34:10',4440,578,'2005-08-30 12:31:10',1,'2006-02-15 21:30:53'),(15653,'2005-08-23 08:34:42',2736,439,'2005-09-01 03:07:42',1,'2006-02-15 21:30:53'),(15654,'2005-08-23 08:34:53',4360,471,'2005-08-30 04:18:53',2,'2006-02-15 21:30:53'),(15655,'2006-02-14 15:16:03',604,359,NULL,1,'2006-02-15 21:30:53'),(15656,'2005-08-23 08:38:58',4239,334,'2005-08-24 04:08:58',2,'2006-02-15 21:30:53'),(15657,'2005-08-23 08:42:40',1897,36,'2005-09-01 13:08:40',1,'2006-02-15 21:30:53'),(15658,'2005-08-23 08:48:43',3565,22,'2005-08-25 05:38:43',1,'2006-02-15 21:30:53'),(15659,'2005-08-23 08:48:43',4573,131,'2005-08-27 14:19:43',2,'2006-02-15 21:30:53'),(15660,'2005-08-23 08:51:21',3223,388,'2005-08-28 06:26:21',2,'2006-02-15 21:30:53'),(15661,'2005-08-23 08:52:03',1599,346,'2005-08-30 08:17:03',2,'2006-02-15 21:30:53'),(15662,'2005-08-23 08:52:50',3028,223,'2005-08-24 08:08:50',1,'2006-02-15 21:30:53'),(15663,'2005-08-23 08:54:26',3291,291,'2005-08-29 02:56:26',1,'2006-02-15 21:30:53'),(15664,'2005-08-23 08:57:11',2029,351,'2005-08-31 14:19:11',2,'2006-02-15 21:30:53'),(15665,'2005-08-23 08:59:12',3471,487,'2005-08-24 12:50:12',2,'2006-02-15 21:30:53'),(15666,'2005-08-23 09:01:10',3406,586,'2005-08-31 12:32:10',2,'2006-02-15 21:30:53'),(15667,'2005-08-23 09:02:03',1302,73,'2005-08-24 05:47:03',1,'2006-02-15 21:30:53'),(15668,'2005-08-23 09:02:04',1963,38,'2005-08-29 03:17:04',2,'2006-02-15 21:30:53'),(15669,'2005-08-23 09:06:17',1542,334,'2005-08-30 08:10:17',2,'2006-02-15 21:30:53'),(15670,'2005-08-23 09:07:11',2834,211,'2005-08-31 04:32:11',2,'2006-02-15 21:30:53'),(15671,'2005-08-23 09:08:16',3716,112,'2005-08-29 14:01:16',1,'2006-02-15 21:30:53'),(15672,'2005-08-23 09:09:18',701,210,'2005-08-27 06:19:18',1,'2006-02-15 21:30:53'),(15673,'2005-08-23 09:12:50',3096,321,'2005-08-29 12:45:50',2,'2006-02-15 21:30:53'),(15674,'2005-08-23 09:16:39',4482,90,'2005-09-01 11:57:39',1,'2006-02-15 21:30:53'),(15675,'2005-08-23 09:18:52',4153,293,'2005-08-30 14:59:52',2,'2006-02-15 21:30:53'),(15676,'2005-08-23 09:23:08',3874,353,'2005-08-30 06:19:08',2,'2006-02-15 21:30:53'),(15677,'2005-08-23 09:23:36',2050,109,'2005-08-27 05:01:36',1,'2006-02-15 21:30:53'),(15678,'2005-08-23 09:23:45',1345,413,'2005-08-27 11:38:45',2,'2006-02-15 21:30:53'),(15679,'2005-08-23 09:27:29',2945,103,'2005-08-28 09:14:29',1,'2006-02-15 21:30:53'),(15680,'2005-08-23 09:33:22',1370,169,'2005-08-31 13:29:22',2,'2006-02-15 21:30:53'),(15681,'2005-08-23 09:35:34',2813,61,'2005-08-27 08:33:34',1,'2006-02-15 21:30:53'),(15682,'2005-08-23 09:37:34',3293,31,'2005-08-31 06:01:34',1,'2006-02-15 21:30:53'),(15683,'2005-08-23 09:38:17',3787,168,'2005-08-30 12:31:17',2,'2006-02-15 21:30:53'),(15684,'2005-08-23 09:40:04',3976,586,'2005-08-28 15:28:04',1,'2006-02-15 21:30:53'),(15685,'2005-08-23 09:41:28',370,491,'2005-08-30 10:11:28',1,'2006-02-15 21:30:53'),(15686,'2005-08-23 09:42:21',2041,206,'2005-08-29 12:22:21',1,'2006-02-15 21:30:53'),(15687,'2005-08-23 09:46:33',276,112,'2005-09-01 06:07:33',1,'2006-02-15 21:30:53'),(15688,'2005-08-23 09:48:45',2851,105,'2005-08-30 10:28:45',2,'2006-02-15 21:30:53'),(15689,'2005-08-23 09:52:55',248,259,'2005-08-29 11:15:55',1,'2006-02-15 21:30:53'),(15690,'2005-08-23 09:53:30',2102,554,'2005-08-29 10:27:30',1,'2006-02-15 21:30:53'),(15691,'2005-08-23 09:53:54',784,200,'2005-08-27 10:14:54',1,'2006-02-15 21:30:53'),(15692,'2005-08-23 10:00:02',1852,503,'2005-08-24 05:25:02',1,'2006-02-15 21:30:53'),(15693,'2005-08-23 10:00:24',748,94,'2005-08-25 08:23:24',1,'2006-02-15 21:30:53'),(15694,'2005-08-23 10:02:46',3017,506,'2005-08-31 05:46:46',2,'2006-02-15 21:30:53'),(15695,'2006-02-14 15:16:03',2954,300,NULL,1,'2006-02-15 21:30:53'),(15696,'2005-08-23 10:04:17',2836,93,'2005-08-25 08:47:17',2,'2006-02-15 21:30:53'),(15697,'2005-08-23 10:04:36',1987,380,'2005-08-24 05:00:36',2,'2006-02-15 21:30:53'),(15698,'2005-08-23 10:11:40',4465,395,'2005-08-28 08:50:40',2,'2006-02-15 21:30:53'),(15699,'2005-08-23 10:20:35',4155,501,'2005-08-30 13:56:35',1,'2006-02-15 21:30:53'),(15700,'2005-08-23 10:21:21',2935,552,'2005-08-24 15:37:21',1,'2006-02-15 21:30:53'),(15701,'2005-08-23 10:22:21',2942,516,'2005-08-24 10:52:21',1,'2006-02-15 21:30:53'),(15702,'2005-08-23 10:23:28',1602,56,'2005-08-29 11:08:28',2,'2006-02-15 21:30:53'),(15703,'2005-08-23 10:23:48',2883,322,'2005-09-01 06:54:48',2,'2006-02-15 21:30:53'),(15704,'2005-08-23 10:25:45',738,71,'2005-08-29 16:06:45',2,'2006-02-15 21:30:53'),(15705,'2005-08-23 10:32:52',936,356,'2005-08-29 13:18:52',2,'2006-02-15 21:30:53'),(15706,'2005-08-23 10:32:52',4486,220,'2005-08-24 07:03:52',2,'2006-02-15 21:30:53'),(15707,'2005-08-23 10:35:45',3646,91,'2005-08-27 10:57:45',1,'2006-02-15 21:30:53'),(15708,'2005-08-23 10:35:51',1974,46,'2005-08-27 16:02:51',1,'2006-02-15 21:30:53'),(15709,'2005-08-23 10:36:00',346,206,'2005-08-28 06:18:00',2,'2006-02-15 21:30:53'),(15710,'2006-02-14 15:16:03',1020,421,NULL,1,'2006-02-15 21:30:53'),(15711,'2005-08-23 10:43:00',789,297,'2005-08-29 16:29:00',1,'2006-02-15 21:30:53'),(15712,'2005-08-23 10:43:56',1882,351,'2005-08-29 15:35:56',2,'2006-02-15 21:30:53'),(15713,'2005-08-23 10:56:15',337,432,'2005-08-29 09:14:15',2,'2006-02-15 21:30:53'),(15714,'2006-02-14 15:16:03',2083,56,NULL,1,'2006-02-15 21:30:53'),(15715,'2005-08-23 10:57:40',3808,86,'2005-08-28 12:40:40',1,'2006-02-15 21:30:53'),(15716,'2005-08-23 11:02:00',2812,408,'2005-08-28 14:46:00',1,'2006-02-15 21:30:53'),(15717,'2006-02-14 15:16:03',902,208,NULL,2,'2006-02-15 21:30:53'),(15718,'2005-08-23 11:05:17',2180,276,'2005-08-28 12:50:17',1,'2006-02-15 21:30:53'),(15719,'2005-08-23 11:08:46',3990,599,'2005-08-25 07:25:46',1,'2006-02-15 21:30:53'),(15720,'2005-08-23 11:15:20',2490,456,'2005-08-31 09:49:20',1,'2006-02-15 21:30:53'),(15721,'2005-08-23 11:16:16',685,154,'2005-08-28 10:21:16',1,'2006-02-15 21:30:53'),(15722,'2005-08-23 11:16:29',2809,26,'2005-09-01 13:24:29',2,'2006-02-15 21:30:53'),(15723,'2005-08-23 11:17:26',3915,504,'2005-08-31 13:58:26',2,'2006-02-15 21:30:53'),(15724,'2005-08-23 11:22:09',1025,478,'2005-08-28 12:56:09',2,'2006-02-15 21:30:53'),(15725,'2005-08-23 11:25:00',378,599,'2005-08-26 11:46:00',1,'2006-02-15 21:30:53'),(15726,'2005-08-23 11:28:26',906,503,'2005-08-28 11:23:26',2,'2006-02-15 21:30:53'),(15727,'2005-08-23 11:28:49',2184,416,'2005-08-24 06:24:49',2,'2006-02-15 21:30:53'),(15728,'2005-08-23 11:30:32',2567,323,'2005-08-28 09:52:32',2,'2006-02-15 21:30:53'),(15729,'2006-02-14 15:16:03',2699,193,NULL,2,'2006-02-15 21:30:53'),(15730,'2005-08-23 11:32:35',947,147,'2005-08-30 13:46:35',2,'2006-02-15 21:30:53'),(15731,'2005-08-23 11:33:25',3403,118,'2005-08-24 07:19:25',2,'2006-02-15 21:30:53'),(15732,'2005-08-23 11:35:12',3247,412,'2005-08-26 12:50:12',2,'2006-02-15 21:30:53'),(15733,'2005-08-23 11:37:32',4185,512,'2005-08-28 16:27:32',1,'2006-02-15 21:30:53'),(15734,'2005-08-23 11:40:08',3952,302,'2005-08-27 08:16:08',1,'2006-02-15 21:30:53'),(15735,'2006-02-14 15:16:03',3167,295,NULL,1,'2006-02-15 21:30:53'),(15736,'2005-08-23 11:40:30',4272,127,'2005-08-30 12:40:30',1,'2006-02-15 21:30:53'),(15737,'2005-08-23 11:52:18',996,83,'2005-08-28 15:28:18',1,'2006-02-15 21:30:53'),(15738,'2005-08-23 11:55:50',556,38,'2005-08-30 15:07:50',1,'2006-02-15 21:30:53'),(15739,'2005-08-23 11:56:22',266,74,'2005-08-29 16:10:22',2,'2006-02-15 21:30:53'),(15740,'2005-08-23 12:07:51',100,229,'2005-08-24 13:23:51',2,'2006-02-15 21:30:53'),(15741,'2005-08-23 12:10:54',4243,126,'2005-08-24 10:08:54',2,'2006-02-15 21:30:53'),(15742,'2005-08-23 12:11:37',1339,200,'2005-08-31 07:28:37',2,'2006-02-15 21:30:53'),(15743,'2005-08-23 12:12:05',1625,139,'2005-08-26 11:35:05',1,'2006-02-15 21:30:53'),(15744,'2005-08-23 12:15:51',2364,59,'2005-08-31 17:19:51',1,'2006-02-15 21:30:53'),(15745,'2006-02-14 15:16:03',2737,43,NULL,1,'2006-02-15 21:30:53'),(15746,'2005-08-23 12:26:19',2241,246,'2005-08-26 09:51:19',2,'2006-02-15 21:30:53'),(15747,'2005-08-23 12:29:24',1517,381,'2005-08-31 08:27:24',2,'2006-02-15 21:30:53'),(15748,'2005-08-23 12:33:00',2757,380,'2005-08-25 15:15:00',2,'2006-02-15 21:30:53'),(15749,'2005-08-23 12:33:41',4224,575,'2005-08-24 10:52:41',1,'2006-02-15 21:30:53'),(15750,'2005-08-23 12:36:05',4474,496,'2005-08-24 17:40:05',2,'2006-02-15 21:30:53'),(15751,'2005-08-23 12:41:07',697,199,'2005-08-29 07:03:07',2,'2006-02-15 21:30:53'),(15752,'2005-08-23 12:41:38',2112,17,'2005-09-01 14:06:38',1,'2006-02-15 21:30:53'),(15753,'2005-08-23 12:43:30',3451,144,'2005-09-01 09:07:30',2,'2006-02-15 21:30:53'),(15754,'2005-08-23 12:43:42',2306,356,'2005-08-27 17:45:42',2,'2006-02-15 21:30:53'),(15755,'2005-08-23 12:46:38',511,423,'2005-08-25 12:59:38',1,'2006-02-15 21:30:53'),(15756,'2005-08-23 12:47:05',878,112,'2005-08-28 08:34:05',2,'2006-02-15 21:30:53'),(15757,'2005-08-23 12:47:16',1308,356,'2005-08-29 17:19:16',1,'2006-02-15 21:30:53'),(15758,'2005-08-23 12:47:26',152,46,'2005-08-29 11:05:26',2,'2006-02-15 21:30:53'),(15759,'2005-08-23 12:47:37',1341,361,'2005-09-01 11:28:37',2,'2006-02-15 21:30:53'),(15760,'2005-08-23 12:50:00',3050,273,'2005-08-29 15:41:00',2,'2006-02-15 21:30:53'),(15761,'2005-08-23 12:55:51',4362,416,'2005-08-26 16:51:51',1,'2006-02-15 21:30:53'),(15762,'2005-08-23 13:01:43',887,351,'2005-08-26 16:35:43',1,'2006-02-15 21:30:53'),(15763,'2005-08-23 13:02:59',124,158,'2005-08-24 17:45:59',2,'2006-02-15 21:30:53'),(15764,'2005-08-23 13:05:10',2937,8,'2005-08-25 16:15:10',1,'2006-02-15 21:30:53'),(15765,'2005-08-23 13:06:19',1250,408,'2005-08-31 12:18:19',1,'2006-02-15 21:30:53'),(15766,'2005-08-23 13:10:16',1996,436,'2005-08-30 09:27:16',1,'2006-02-15 21:30:53'),(15767,'2005-08-23 13:14:15',3492,241,'2005-08-27 14:43:15',2,'2006-02-15 21:30:53'),(15768,'2005-08-23 13:14:47',662,267,'2005-08-29 14:17:47',2,'2006-02-15 21:30:53'),(15769,'2005-08-23 13:16:15',2392,276,'2005-08-28 18:31:15',1,'2006-02-15 21:30:53'),(15770,'2005-08-23 13:18:16',1424,113,'2005-08-29 11:31:16',1,'2006-02-15 21:30:53'),(15771,'2005-08-23 13:18:46',3667,262,'2005-08-26 07:29:46',1,'2006-02-15 21:30:53'),(15772,'2005-08-23 13:22:56',4343,202,'2005-08-26 10:35:56',2,'2006-02-15 21:30:53'),(15773,'2005-08-23 13:24:57',1626,189,'2005-08-31 14:16:57',2,'2006-02-15 21:30:53'),(15774,'2005-08-23 13:25:08',1273,254,'2005-08-28 10:08:08',2,'2006-02-15 21:30:53'),(15775,'2005-08-23 13:25:44',2146,173,'2005-09-01 16:56:44',1,'2006-02-15 21:30:53'),(15776,'2005-08-23 13:26:01',43,514,'2005-08-29 18:17:01',1,'2006-02-15 21:30:53'),(15777,'2005-08-23 13:29:08',4241,130,'2005-08-27 18:50:08',2,'2006-02-15 21:30:53'),(15778,'2006-02-14 15:16:03',1269,234,NULL,1,'2006-02-15 21:30:53'),(15779,'2005-08-23 13:33:46',1560,419,'2005-08-28 08:40:46',2,'2006-02-15 21:30:53'),(15780,'2006-02-14 15:16:03',2911,120,NULL,2,'2006-02-15 21:30:53'),(15781,'2005-08-23 13:41:05',4449,412,'2005-08-31 13:11:05',1,'2006-02-15 21:30:53'),(15782,'2005-08-23 13:43:26',3282,245,'2005-08-30 14:03:26',1,'2006-02-15 21:30:53'),(15783,'2005-08-23 13:45:44',397,247,'2005-08-26 09:18:44',2,'2006-02-15 21:30:53'),(15784,'2005-08-23 13:46:00',126,425,'2005-08-30 11:49:00',2,'2006-02-15 21:30:53'),(15785,'2005-08-23 13:46:27',1758,543,'2005-08-27 10:16:27',2,'2006-02-15 21:30:53'),(15786,'2005-08-23 13:48:34',3132,371,'2005-08-27 15:59:34',1,'2006-02-15 21:30:53'),(15787,'2005-08-23 13:51:57',2932,123,'2005-08-27 17:06:57',1,'2006-02-15 21:30:53'),(15788,'2005-08-23 13:54:39',13,269,'2005-08-26 10:17:39',1,'2006-02-15 21:30:53'),(15789,'2005-08-23 13:56:40',1213,350,'2005-08-27 15:25:40',1,'2006-02-15 21:30:53'),(15790,'2005-08-23 14:01:07',2887,233,'2005-08-30 10:32:07',2,'2006-02-15 21:30:53'),(15791,'2005-08-23 14:02:13',4147,445,'2005-09-01 09:03:13',2,'2006-02-15 21:30:53'),(15792,'2005-08-23 14:05:37',2175,581,'2005-08-28 10:54:37',1,'2006-02-15 21:30:53'),(15793,'2005-08-23 14:06:19',2863,22,'2005-08-24 19:59:19',2,'2006-02-15 21:30:53'),(15794,'2006-02-14 15:16:03',3917,579,NULL,2,'2006-02-15 21:30:53'),(15795,'2005-08-23 14:07:56',4371,417,'2005-08-25 12:10:56',2,'2006-02-15 21:30:53'),(15796,'2005-08-23 14:12:22',1425,158,'2005-08-28 17:03:22',2,'2006-02-15 21:30:53'),(15797,'2005-08-23 14:13:47',497,503,'2005-08-25 09:16:47',2,'2006-02-15 21:30:53'),(15798,'2005-08-23 14:23:03',3803,203,'2005-08-30 17:39:03',2,'2006-02-15 21:30:53'),(15799,'2005-08-23 14:23:23',2519,215,'2005-08-24 17:15:23',2,'2006-02-15 21:30:53'),(15800,'2005-08-23 14:23:44',963,43,'2005-08-29 17:04:44',2,'2006-02-15 21:30:53'),(15801,'2005-08-23 14:26:04',1590,165,'2005-08-28 15:04:04',1,'2006-02-15 21:30:53'),(15802,'2005-08-23 14:26:51',41,158,'2005-08-29 16:28:51',2,'2006-02-15 21:30:53'),(15803,'2005-08-23 14:27:07',500,105,'2005-08-28 12:01:07',2,'2006-02-15 21:30:53'),(15804,'2005-08-23 14:29:16',3338,585,'2005-08-26 08:41:16',1,'2006-02-15 21:30:53'),(15805,'2005-08-23 14:31:19',4511,8,'2005-08-25 19:01:19',2,'2006-02-15 21:30:53'),(15806,'2005-08-23 14:31:50',2683,166,'2005-08-27 16:08:50',2,'2006-02-15 21:30:53'),(15807,'2005-08-23 14:35:10',2705,350,'2005-08-29 19:06:10',2,'2006-02-15 21:30:53'),(15808,'2005-08-23 14:38:37',1663,446,'2005-08-27 14:45:37',2,'2006-02-15 21:30:53'),(15809,'2005-08-23 14:42:07',1885,431,'2005-08-27 15:00:07',2,'2006-02-15 21:30:53'),(15810,'2005-08-23 14:43:15',2196,171,'2005-08-25 17:41:15',1,'2006-02-15 21:30:53'),(15811,'2005-08-23 14:43:46',3487,300,'2005-08-27 16:43:46',1,'2006-02-15 21:30:53'),(15812,'2005-08-23 14:47:26',4457,45,'2005-09-01 10:51:26',2,'2006-02-15 21:30:53'),(15813,'2006-02-14 15:16:03',981,9,NULL,1,'2006-02-15 21:30:53'),(15814,'2005-08-23 14:52:50',4361,459,'2005-08-27 16:12:50',2,'2006-02-15 21:30:53'),(15815,'2005-08-23 14:55:47',316,444,'2005-08-24 12:37:47',1,'2006-02-15 21:30:53'),(15816,'2005-08-23 14:58:06',3628,31,'2005-08-28 13:30:06',1,'2006-02-15 21:30:53'),(15817,'2005-08-23 14:59:51',598,348,'2005-08-25 15:27:51',1,'2006-02-15 21:30:53'),(15818,'2005-08-23 14:59:58',2620,439,'2005-08-27 13:13:58',2,'2006-02-15 21:30:53'),(15819,'2005-08-23 15:01:54',3639,274,'2005-08-31 20:01:54',2,'2006-02-15 21:30:53'),(15820,'2005-08-23 15:03:13',4553,308,'2005-08-25 20:12:13',1,'2006-02-15 21:30:53'),(15821,'2005-08-23 15:03:58',1714,233,'2005-08-24 17:46:58',2,'2006-02-15 21:30:53'),(15822,'2005-08-23 15:05:59',3602,492,'2005-08-24 11:13:59',1,'2006-02-15 21:30:53'),(15823,'2005-08-23 15:08:00',3047,81,'2005-08-24 17:52:00',2,'2006-02-15 21:30:53'),(15824,'2005-08-23 15:09:17',2933,371,'2005-08-28 15:14:17',2,'2006-02-15 21:30:53'),(15825,'2005-08-23 15:10:42',149,346,'2005-08-29 09:28:42',2,'2006-02-15 21:30:53'),(15826,'2005-08-23 15:15:02',215,311,'2005-08-31 20:39:02',2,'2006-02-15 21:30:53'),(15827,'2005-08-23 15:15:19',1732,346,'2005-08-24 10:50:19',2,'2006-02-15 21:30:53'),(15828,'2005-08-23 15:16:32',428,327,'2005-08-29 12:20:32',1,'2006-02-15 21:30:53'),(15829,'2005-08-23 15:17:14',4387,30,'2005-08-27 13:04:14',1,'2006-02-15 21:30:53'),(15830,'2005-08-23 15:19:15',309,467,'2005-08-25 18:42:15',2,'2006-02-15 21:30:53'),(15831,'2005-08-23 15:21:19',3123,401,'2005-08-24 15:47:19',2,'2006-02-15 21:30:53'),(15832,'2005-08-23 15:21:35',1468,537,'2005-08-30 15:01:35',2,'2006-02-15 21:30:53'),(15833,'2005-08-23 15:22:15',801,349,'2005-08-31 14:54:15',1,'2006-02-15 21:30:53'),(15834,'2005-08-23 15:23:50',217,165,'2005-09-01 19:31:50',1,'2006-02-15 21:30:53'),(15835,'2005-08-23 15:25:27',1362,128,'2005-09-01 16:14:27',2,'2006-02-15 21:30:53'),(15836,'2005-08-23 15:29:17',260,468,'2005-08-26 11:44:17',2,'2006-02-15 21:30:53'),(15837,'2005-08-23 15:29:41',4388,283,'2005-08-27 18:17:41',1,'2006-02-15 21:30:53'),(15838,'2005-08-23 15:30:48',2194,579,'2005-08-31 11:20:48',2,'2006-02-15 21:30:53'),(15839,'2005-08-23 15:34:46',3726,294,'2005-08-30 21:00:46',2,'2006-02-15 21:30:53'),(15840,'2005-08-23 15:34:49',1901,316,'2005-08-24 16:54:49',1,'2006-02-15 21:30:53'),(15841,'2005-08-23 15:35:59',2865,571,'2005-08-30 19:30:59',2,'2006-02-15 21:30:53'),(15842,'2005-08-23 15:36:05',1850,146,'2005-08-30 14:05:05',2,'2006-02-15 21:30:53'),(15843,'2005-08-23 15:37:31',611,215,'2005-08-28 18:41:31',2,'2006-02-15 21:30:53'),(15844,'2005-08-23 15:38:12',2027,119,'2005-08-26 15:18:12',1,'2006-02-15 21:30:53'),(15845,'2005-08-23 15:38:34',4312,89,'2005-08-25 10:06:34',1,'2006-02-15 21:30:53'),(15846,'2005-08-23 15:39:18',3635,47,'2005-08-27 14:28:18',2,'2006-02-15 21:30:53'),(15847,'2005-08-23 15:39:38',2287,163,'2005-08-24 11:46:38',1,'2006-02-15 21:30:53'),(15848,'2005-08-23 15:41:12',2141,336,'2005-08-26 10:29:12',2,'2006-02-15 21:30:53'),(15849,'2005-08-23 15:41:20',4077,482,'2005-08-27 15:47:20',2,'2006-02-15 21:30:53'),(15850,'2005-08-23 15:45:42',586,563,'2005-08-27 19:24:42',1,'2006-02-15 21:30:53'),(15851,'2005-08-23 15:46:33',2286,469,'2005-08-29 15:52:33',1,'2006-02-15 21:30:53'),(15852,'2005-08-23 15:47:02',1506,140,'2005-08-25 19:37:02',1,'2006-02-15 21:30:53'),(15853,'2005-08-23 15:54:20',225,500,'2005-08-24 18:53:20',2,'2006-02-15 21:30:53'),(15854,'2005-08-23 15:58:05',1648,464,'2005-08-26 19:23:05',1,'2006-02-15 21:30:53'),(15855,'2005-08-23 15:59:01',2528,192,'2005-08-29 20:26:01',1,'2006-02-15 21:30:53'),(15856,'2005-08-23 15:59:12',3379,395,'2005-08-25 15:36:12',1,'2006-02-15 21:30:53'),(15857,'2005-08-23 15:59:51',2733,575,'2005-08-26 12:01:51',2,'2006-02-15 21:30:53'),(15858,'2005-08-23 16:07:15',4515,81,'2005-08-25 19:36:15',2,'2006-02-15 21:30:53'),(15859,'2005-08-23 16:08:15',4269,465,'2005-08-28 11:08:15',1,'2006-02-15 21:30:53'),(15860,'2005-08-23 16:08:40',2583,41,'2005-08-28 15:35:40',1,'2006-02-15 21:30:53'),(15861,'2005-08-23 16:15:45',1859,256,'2005-09-01 11:37:45',2,'2006-02-15 21:30:53'),(15862,'2006-02-14 15:16:03',925,215,NULL,1,'2006-02-15 21:30:53'),(15863,'2005-08-23 16:17:09',2783,328,'2005-08-28 16:10:09',2,'2006-02-15 21:30:53'),(15864,'2005-08-23 16:18:12',3014,256,'2005-08-29 17:10:12',2,'2006-02-15 21:30:53'),(15865,'2005-08-23 16:18:25',2031,482,'2005-08-26 10:57:25',2,'2006-02-15 21:30:53'),(15866,'2005-08-23 16:19:02',3828,296,'2005-08-31 12:29:02',2,'2006-02-15 21:30:53'),(15867,'2006-02-14 15:16:03',837,505,NULL,2,'2006-02-15 21:30:53'),(15868,'2005-08-23 16:19:14',2186,306,'2005-08-29 16:14:14',2,'2006-02-15 21:30:53'),(15869,'2005-08-23 16:22:20',1344,357,'2005-08-27 11:52:20',1,'2006-02-15 21:30:53'),(15870,'2005-08-23 16:23:08',590,251,'2005-08-28 20:30:08',2,'2006-02-15 21:30:53'),(15871,'2005-08-23 16:24:24',425,57,'2005-09-01 13:48:24',2,'2006-02-15 21:30:53'),(15872,'2005-08-23 16:27:24',3391,212,'2005-08-31 11:57:24',1,'2006-02-15 21:30:53'),(15873,'2005-08-23 16:27:59',4548,577,'2005-08-26 11:11:59',2,'2006-02-15 21:30:53'),(15874,'2005-08-23 16:30:55',621,132,'2005-08-28 20:57:55',1,'2006-02-15 21:30:53'),(15875,'2006-02-14 15:16:03',3611,41,NULL,1,'2006-02-15 21:30:53'),(15876,'2005-08-23 16:32:10',1735,87,'2005-08-24 18:16:10',1,'2006-02-15 21:30:53'),(15877,'2005-08-23 16:33:33',2307,559,'2005-08-26 10:36:33',2,'2006-02-15 21:30:53'),(15878,'2005-08-23 16:34:31',1592,493,'2005-08-27 21:51:31',2,'2006-02-15 21:30:53'),(15879,'2005-08-23 16:42:53',235,482,'2005-08-29 16:21:53',2,'2006-02-15 21:30:53'),(15880,'2005-08-23 16:43:54',2538,528,'2005-08-31 14:40:54',2,'2006-02-15 21:30:53'),(15881,'2005-08-23 16:44:25',617,383,'2005-08-29 13:58:25',1,'2006-02-15 21:30:53'),(15882,'2005-08-23 16:44:31',2028,312,'2005-09-01 15:44:31',2,'2006-02-15 21:30:53'),(15883,'2005-08-23 16:44:56',2792,550,'2005-08-24 22:42:56',1,'2006-02-15 21:30:53'),(15884,'2005-08-23 16:45:28',2255,81,'2005-08-27 20:18:28',1,'2006-02-15 21:30:53'),(15885,'2005-08-23 16:50:43',2116,565,'2005-08-29 20:19:43',1,'2006-02-15 21:30:53'),(15886,'2005-08-23 16:50:53',3038,91,'2005-08-26 15:38:53',2,'2006-02-15 21:30:53'),(15887,'2005-08-23 16:54:09',4263,201,'2005-08-26 13:20:09',2,'2006-02-15 21:30:53'),(15888,'2005-08-23 16:56:14',2955,321,'2005-08-31 14:32:14',1,'2006-02-15 21:30:53'),(15889,'2005-08-23 16:57:43',787,137,'2005-08-27 22:14:43',1,'2006-02-15 21:30:53'),(15890,'2005-08-23 16:58:12',3625,87,'2005-08-24 12:23:12',1,'2006-02-15 21:30:53'),(15891,'2005-08-23 17:00:12',2168,52,'2005-08-31 21:12:12',1,'2006-02-15 21:30:53'),(15892,'2005-08-23 17:01:00',1365,174,'2005-08-28 12:50:00',1,'2006-02-15 21:30:53'),(15893,'2005-08-23 17:02:00',2571,438,'2005-08-30 12:45:00',2,'2006-02-15 21:30:53'),(15894,'2006-02-14 15:16:03',4416,168,NULL,1,'2006-02-15 21:30:53'),(15895,'2005-08-23 17:09:31',2275,342,'2005-08-30 17:15:31',1,'2006-02-15 21:30:53'),(15896,'2005-08-23 17:09:56',528,585,'2005-08-31 14:51:56',2,'2006-02-15 21:30:53'),(15897,'2005-08-23 17:12:31',1652,15,'2005-08-30 17:22:31',1,'2006-02-15 21:30:53'),(15898,'2005-08-23 17:13:01',3502,88,'2005-08-29 11:22:01',2,'2006-02-15 21:30:53'),(15899,'2005-08-23 17:16:28',3851,596,'2005-08-29 21:46:28',2,'2006-02-15 21:30:53'),(15900,'2005-08-23 17:16:30',1112,562,'2005-08-27 18:02:30',1,'2006-02-15 21:30:53'),(15901,'2005-08-23 17:19:17',2761,226,'2005-08-30 14:24:17',2,'2006-02-15 21:30:53'),(15902,'2005-08-23 17:28:03',4500,172,'2005-08-30 18:36:03',1,'2006-02-15 21:30:53'),(15903,'2005-08-23 17:30:40',1289,267,'2005-08-29 14:12:40',1,'2006-02-15 21:30:53'),(15904,'2005-08-23 17:32:19',179,37,'2005-08-24 21:05:19',2,'2006-02-15 21:30:53'),(15905,'2005-08-23 17:33:04',3631,59,'2005-08-26 17:38:04',2,'2006-02-15 21:30:53'),(15906,'2005-08-23 17:36:00',3230,445,'2005-08-28 15:32:00',2,'2006-02-15 21:30:53'),(15907,'2005-08-23 17:39:35',2898,2,'2005-08-25 23:23:35',1,'2006-02-15 21:30:53'),(15908,'2005-08-23 17:42:00',2453,135,'2005-08-31 22:32:00',1,'2006-02-15 21:30:53'),(15909,'2005-08-23 17:42:42',404,452,'2005-08-26 20:25:42',1,'2006-02-15 21:30:53'),(15910,'2005-08-23 17:43:16',254,456,'2005-08-24 21:55:16',2,'2006-02-15 21:30:53'),(15911,'2005-08-23 17:44:53',3006,582,'2005-09-01 19:14:53',1,'2006-02-15 21:30:53'),(15912,'2005-08-23 17:47:40',3079,229,'2005-08-31 14:43:40',2,'2006-02-15 21:30:53'),(15913,'2005-08-23 17:48:30',3894,93,'2005-08-31 21:17:30',2,'2006-02-15 21:30:53'),(15914,'2005-08-23 17:49:26',747,557,'2005-08-24 12:20:26',1,'2006-02-15 21:30:53'),(15915,'2005-08-23 17:52:01',3566,167,'2005-08-24 20:40:01',2,'2006-02-15 21:30:53'),(15916,'2005-08-23 17:56:01',4580,327,'2005-08-31 21:49:01',2,'2006-02-15 21:30:53'),(15917,'2005-08-23 17:57:28',2093,589,'2005-08-29 20:03:28',1,'2006-02-15 21:30:53'),(15918,'2005-08-23 17:57:35',1456,262,'2005-08-28 14:16:35',2,'2006-02-15 21:30:53'),(15919,'2005-08-23 18:01:31',1746,497,'2005-08-24 16:27:31',1,'2006-02-15 21:30:53'),(15920,'2005-08-23 18:05:10',243,212,'2005-08-26 18:09:10',1,'2006-02-15 21:30:53'),(15921,'2005-08-23 18:06:54',223,522,'2005-08-30 20:19:54',2,'2006-02-15 21:30:53'),(15922,'2005-08-23 18:07:31',1702,263,'2005-09-01 22:27:31',1,'2006-02-15 21:30:53'),(15923,'2005-08-23 18:08:19',1693,276,'2005-08-26 18:06:19',2,'2006-02-15 21:30:53'),(15924,'2005-08-23 18:08:59',1114,541,'2005-08-27 12:20:59',2,'2006-02-15 21:30:53'),(15925,'2005-08-23 18:15:06',3394,440,'2005-08-26 18:09:06',2,'2006-02-15 21:30:53'),(15926,'2005-08-23 18:20:56',2231,151,'2005-08-24 18:20:56',2,'2006-02-15 21:30:53'),(15927,'2005-08-23 18:23:11',2450,401,'2005-08-24 15:09:11',1,'2006-02-15 21:30:53'),(15928,'2005-08-23 18:23:24',2086,75,'2005-09-01 23:43:24',2,'2006-02-15 21:30:53'),(15929,'2005-08-23 18:23:30',1832,477,'2005-08-27 17:04:30',1,'2006-02-15 21:30:53'),(15930,'2005-08-23 18:26:51',180,379,'2005-08-31 16:12:51',1,'2006-02-15 21:30:53'),(15931,'2005-08-23 18:28:09',1128,237,'2005-08-28 23:08:09',1,'2006-02-15 21:30:53'),(15932,'2005-08-23 18:31:40',4554,405,'2005-08-24 16:30:40',2,'2006-02-15 21:30:53'),(15933,'2005-08-23 18:36:44',3493,176,'2005-08-26 12:41:44',2,'2006-02-15 21:30:53'),(15934,'2005-08-23 18:40:41',994,216,'2005-08-25 00:18:41',2,'2006-02-15 21:30:53'),(15935,'2005-08-23 18:41:11',907,361,'2005-08-25 20:59:11',1,'2006-02-15 21:30:53'),(15936,'2005-08-23 18:43:11',1293,411,'2005-08-26 00:19:11',1,'2006-02-15 21:30:53'),(15937,'2005-08-23 18:43:22',2882,194,'2005-08-24 22:53:22',1,'2006-02-15 21:30:53'),(15938,'2005-08-23 18:43:31',2884,341,'2005-08-31 00:26:31',2,'2006-02-15 21:30:53'),(15939,'2005-08-23 18:44:21',3209,382,'2005-09-01 17:25:21',2,'2006-02-15 21:30:53'),(15940,'2005-08-23 18:45:06',1606,86,'2005-08-30 13:00:06',2,'2006-02-15 21:30:53'),(15941,'2005-08-23 18:46:44',4304,424,'2005-08-31 17:31:44',1,'2006-02-15 21:30:53'),(15942,'2005-08-23 18:48:40',1096,210,'2005-09-01 18:39:40',2,'2006-02-15 21:30:53'),(15943,'2005-08-23 18:49:32',706,462,'2005-08-27 19:20:32',1,'2006-02-15 21:30:53'),(15944,'2005-08-23 18:50:54',4559,348,'2005-08-25 18:04:54',2,'2006-02-15 21:30:53'),(15945,'2005-08-23 18:51:41',3633,43,'2005-08-28 18:42:41',1,'2006-02-15 21:30:53'),(15946,'2005-08-23 18:54:07',4549,561,'2005-08-28 21:21:07',1,'2006-02-15 21:30:53'),(15947,'2005-08-23 18:54:32',1877,580,'2005-08-24 22:39:32',2,'2006-02-15 21:30:53'),(15948,'2005-08-23 18:59:33',432,520,'2005-08-31 13:02:33',2,'2006-02-15 21:30:53'),(15949,'2005-08-23 19:06:04',1199,386,'2005-08-26 18:39:04',2,'2006-02-15 21:30:53'),(15950,'2005-08-23 19:09:39',1374,280,'2005-08-31 17:03:39',2,'2006-02-15 21:30:53'),(15951,'2005-08-23 19:10:32',3018,446,'2005-08-29 14:17:32',1,'2006-02-15 21:30:53'),(15952,'2005-08-23 19:11:29',1314,224,'2005-08-28 14:41:29',1,'2006-02-15 21:30:53'),(15953,'2005-08-23 19:13:46',3727,540,'2005-08-28 23:05:46',1,'2006-02-15 21:30:53'),(15954,'2005-08-23 19:14:07',576,460,'2005-08-24 20:21:07',1,'2006-02-15 21:30:53'),(15955,'2005-08-23 19:19:06',2247,349,'2005-08-31 23:34:06',1,'2006-02-15 21:30:53'),(15956,'2005-08-23 19:19:21',2763,354,'2005-08-25 22:15:21',2,'2006-02-15 21:30:53'),(15957,'2005-08-23 19:21:22',74,418,'2005-08-31 16:42:22',1,'2006-02-15 21:30:53'),(15958,'2005-08-23 19:22:36',4164,492,'2005-08-30 01:03:36',1,'2006-02-15 21:30:53'),(15959,'2005-08-23 19:27:04',547,415,'2005-08-24 15:24:04',1,'2006-02-15 21:30:53'),(15960,'2005-08-23 19:35:42',1497,431,'2005-08-26 17:36:42',2,'2006-02-15 21:30:53'),(15961,'2005-08-23 19:35:42',4006,200,'2005-08-30 22:52:42',1,'2006-02-15 21:30:53'),(15962,'2005-08-23 19:42:04',3491,160,'2005-08-25 23:53:04',1,'2006-02-15 21:30:53'),(15963,'2005-08-23 19:42:46',3819,134,'2005-08-25 22:12:46',1,'2006-02-15 21:30:53'),(15964,'2005-08-23 19:45:25',251,141,'2005-08-26 22:43:25',2,'2006-02-15 21:30:53'),(15965,'2005-08-23 19:46:39',3449,509,'2005-08-24 20:08:39',2,'2006-02-15 21:30:53'),(15966,'2006-02-14 15:16:03',4472,374,NULL,1,'2006-02-15 21:30:53'),(15967,'2005-08-23 19:50:06',321,257,'2005-08-29 14:51:06',1,'2006-02-15 21:30:53'),(15968,'2005-08-23 19:51:29',3598,257,'2005-08-24 15:07:29',1,'2006-02-15 21:30:53'),(15969,'2005-08-23 19:51:30',1807,327,'2005-08-31 23:50:30',1,'2006-02-15 21:30:53'),(15970,'2005-08-23 19:54:24',4509,395,'2005-08-24 18:07:24',1,'2006-02-15 21:30:53'),(15971,'2005-08-23 19:59:33',3456,187,'2005-09-02 01:28:33',1,'2006-02-15 21:30:53'),(15972,'2005-08-23 20:00:30',4428,25,'2005-08-30 00:25:30',1,'2006-02-15 21:30:53'),(15973,'2005-08-23 20:04:41',2766,343,'2005-09-01 20:08:41',2,'2006-02-15 21:30:53'),(15974,'2005-08-23 20:06:04',3518,201,'2005-08-27 17:33:04',2,'2006-02-15 21:30:53'),(15975,'2005-08-23 20:06:23',2723,174,'2005-08-27 19:52:23',1,'2006-02-15 21:30:53'),(15976,'2005-08-23 20:07:08',835,227,'2005-08-25 01:47:08',2,'2006-02-15 21:30:53'),(15977,'2005-08-23 20:07:10',1031,550,'2005-09-01 22:12:10',2,'2006-02-15 21:30:53'),(15978,'2005-08-23 20:08:18',4444,536,'2005-08-31 17:35:18',2,'2006-02-15 21:30:53'),(15979,'2005-08-23 20:08:26',3733,536,'2005-08-26 19:19:26',1,'2006-02-15 21:30:53'),(15980,'2005-08-23 20:10:13',3365,196,'2005-08-24 17:44:13',2,'2006-02-15 21:30:53'),(15981,'2005-08-23 20:12:17',2867,489,'2005-08-30 20:43:17',1,'2006-02-15 21:30:53'),(15982,'2005-08-23 20:13:31',2920,370,'2005-09-01 21:51:31',2,'2006-02-15 21:30:53'),(15983,'2005-08-23 20:13:38',3318,464,'2005-08-30 18:42:38',1,'2006-02-15 21:30:53'),(15984,'2005-08-23 20:16:27',2011,495,'2005-08-27 01:43:27',1,'2006-02-15 21:30:53'),(15985,'2005-08-23 20:20:23',2646,179,'2005-08-26 20:55:23',1,'2006-02-15 21:30:53'),(15986,'2005-08-23 20:20:37',3472,226,'2005-08-29 20:49:37',1,'2006-02-15 21:30:53'),(15987,'2005-08-23 20:22:17',3150,302,'2005-08-31 21:46:17',2,'2006-02-15 21:30:53'),(15988,'2005-08-23 20:23:08',3932,400,'2005-08-28 20:50:08',1,'2006-02-15 21:30:53'),(15989,'2005-08-23 20:24:36',38,96,'2005-08-26 20:35:36',1,'2006-02-15 21:30:53'),(15990,'2005-08-23 20:25:11',3233,512,'2005-08-25 15:01:11',2,'2006-02-15 21:30:53'),(15991,'2005-08-23 20:27:34',2078,203,'2005-08-28 16:48:34',2,'2006-02-15 21:30:53'),(15992,'2005-08-23 20:28:32',3334,589,'2005-08-24 21:35:32',1,'2006-02-15 21:30:53'),(15993,'2005-08-23 20:28:44',1638,12,'2005-08-27 16:23:44',2,'2006-02-15 21:30:53'),(15994,'2005-08-23 20:29:10',438,595,'2005-08-28 01:41:10',2,'2006-02-15 21:30:53'),(15995,'2005-08-23 20:29:56',1122,377,'2005-08-30 18:09:56',1,'2006-02-15 21:30:53'),(15996,'2005-08-23 20:31:38',3098,151,'2005-08-29 20:58:38',1,'2006-02-15 21:30:53'),(15997,'2005-08-23 20:40:31',2843,447,'2005-08-26 19:47:31',1,'2006-02-15 21:30:53'),(15998,'2005-08-23 20:41:09',1229,545,'2005-08-27 00:20:09',1,'2006-02-15 21:30:53'),(15999,'2005-08-23 20:44:10',2584,377,'2005-08-31 02:38:10',2,'2006-02-15 21:30:53'),(16000,'2005-08-23 20:44:36',282,71,'2005-08-25 02:29:36',1,'2006-02-15 21:30:53'),(16001,'2005-08-23 20:45:53',245,108,'2005-08-27 15:52:53',1,'2006-02-15 21:30:53'),(16002,'2005-08-23 20:47:12',2770,73,'2005-08-27 23:07:12',1,'2006-02-15 21:30:53'),(16003,'2005-08-23 20:47:28',3413,577,'2005-08-31 23:22:28',1,'2006-02-15 21:30:53'),(16004,'2005-08-23 20:53:20',2223,147,'2005-08-31 15:15:20',2,'2006-02-15 21:30:53'),(16005,'2005-08-23 21:00:22',3265,466,'2005-09-02 02:35:22',1,'2006-02-15 21:30:53'),(16006,'2005-08-23 21:01:09',240,533,'2005-08-25 19:33:09',1,'2006-02-15 21:30:53'),(16007,'2005-08-23 21:02:43',3236,126,'2005-08-30 23:37:43',2,'2006-02-15 21:30:53'),(16008,'2005-08-23 21:04:51',3273,189,'2005-08-31 22:09:51',1,'2006-02-15 21:30:53'),(16009,'2005-08-23 21:07:59',3055,133,'2005-08-29 16:54:59',2,'2006-02-15 21:30:53'),(16010,'2005-08-23 21:10:24',2539,173,'2005-08-25 17:58:24',1,'2006-02-15 21:30:53'),(16011,'2005-08-23 21:11:33',1093,389,'2005-08-31 17:51:33',1,'2006-02-15 21:30:53'),(16012,'2005-08-23 21:13:39',2421,80,'2005-08-30 23:52:39',2,'2006-02-15 21:30:53'),(16013,'2005-08-23 21:17:17',561,462,'2005-08-26 21:15:17',1,'2006-02-15 21:30:53'),(16014,'2005-08-23 21:18:31',3322,532,'2005-08-31 17:28:31',2,'2006-02-15 21:30:53'),(16015,'2005-08-23 21:25:03',3113,50,'2005-08-24 20:05:03',2,'2006-02-15 21:30:53'),(16016,'2005-08-23 21:26:35',3374,595,'2005-08-28 16:06:35',2,'2006-02-15 21:30:53'),(16017,'2005-08-23 21:27:11',664,535,'2005-08-24 23:22:11',1,'2006-02-15 21:30:53'),(16018,'2005-08-23 21:27:35',897,439,'2005-08-30 00:36:35',1,'2006-02-15 21:30:53'),(16019,'2005-08-23 21:30:45',3093,278,'2005-08-27 23:45:45',2,'2006-02-15 21:30:53'),(16020,'2005-08-23 21:34:33',277,311,'2005-09-01 18:17:33',1,'2006-02-15 21:30:53'),(16021,'2005-08-23 21:37:59',3057,314,'2005-08-31 01:52:59',1,'2006-02-15 21:30:53'),(16022,'2005-08-23 21:44:27',2925,504,'2005-08-28 01:52:27',1,'2006-02-15 21:30:53'),(16023,'2005-08-23 21:45:02',2347,124,'2005-08-24 21:28:02',1,'2006-02-15 21:30:53'),(16024,'2005-08-23 21:46:47',2910,473,'2005-08-27 02:06:47',1,'2006-02-15 21:30:53'),(16025,'2005-08-23 21:48:54',1777,569,'2005-08-24 22:05:54',2,'2006-02-15 21:30:53'),(16026,'2005-08-23 21:49:22',467,484,'2005-08-27 00:47:22',1,'2006-02-15 21:30:53'),(16027,'2005-08-23 21:49:33',1724,160,'2005-08-30 16:19:33',2,'2006-02-15 21:30:53'),(16028,'2005-08-23 21:52:56',2515,119,'2005-08-30 18:16:56',2,'2006-02-15 21:30:53'),(16029,'2005-08-23 21:54:02',953,143,'2005-08-29 23:55:02',1,'2006-02-15 21:30:53'),(16030,'2005-08-23 21:56:04',4161,137,'2005-08-31 01:24:04',2,'2006-02-15 21:30:53'),(16031,'2005-08-23 21:59:26',1843,102,'2005-08-29 20:15:26',1,'2006-02-15 21:30:53'),(16032,'2005-08-23 21:59:57',2527,447,'2005-08-31 22:46:57',2,'2006-02-15 21:30:53'),(16033,'2005-08-23 22:06:15',760,226,'2005-09-01 02:36:15',2,'2006-02-15 21:30:53'),(16034,'2005-08-23 22:06:34',655,502,'2005-08-29 18:44:34',1,'2006-02-15 21:30:53'),(16035,'2005-08-23 22:08:04',549,37,'2005-08-28 03:46:04',1,'2006-02-15 21:30:53'),(16036,'2005-08-23 22:12:44',1372,425,'2005-08-25 17:48:44',2,'2006-02-15 21:30:53'),(16037,'2005-08-23 22:13:04',341,45,'2005-09-01 02:48:04',2,'2006-02-15 21:30:53'),(16038,'2005-08-23 22:14:31',2612,172,'2005-08-30 03:28:31',1,'2006-02-15 21:30:53'),(16039,'2005-08-23 22:18:51',545,78,'2005-08-31 19:55:51',2,'2006-02-15 21:30:53'),(16040,'2005-08-23 22:19:33',3524,195,'2005-09-02 02:19:33',2,'2006-02-15 21:30:53'),(16041,'2005-08-23 22:20:26',4116,121,'2005-08-25 20:14:26',2,'2006-02-15 21:30:53'),(16042,'2005-08-23 22:20:40',629,131,'2005-08-24 17:54:40',1,'2006-02-15 21:30:53'),(16043,'2005-08-23 22:21:03',3869,526,'2005-08-31 03:09:03',2,'2006-02-15 21:30:53'),(16044,'2005-08-23 22:24:39',1312,468,'2005-08-25 04:08:39',1,'2006-02-15 21:30:53'),(16045,'2005-08-23 22:25:26',772,14,'2005-08-25 23:54:26',1,'2006-02-15 21:30:53'),(16046,'2005-08-23 22:26:47',4364,74,'2005-08-27 18:02:47',2,'2006-02-15 21:30:53'),(16047,'2005-08-23 22:42:48',2088,114,'2005-08-25 02:48:48',2,'2006-02-15 21:30:53'),(16048,'2005-08-23 22:43:07',2019,103,'2005-08-31 21:33:07',1,'2006-02-15 21:30:53'),(16049,'2005-08-23 22:50:12',2666,393,'2005-08-30 01:01:12',2,'2006-02-15 21:30:53'); +COMMIT; + +-- +-- Trigger to enforce rental_date on INSERT +-- + +CREATE TRIGGER rental_date BEFORE INSERT ON rental + FOR EACH ROW SET NEW.rental_date = NOW(); + +-- +-- Dumping data for table staff +-- + +SET AUTOCOMMIT=0; +INSERT INTO staff VALUES (1,'Mike','Hillyer',3,'‰PNG\r\n\Z\n\0\0\0\rIHDR\0\0\0y\0\0\0u\0\0\0åZÙe\0\0\0 pHYs\0\0Ã\0\0ÃÇo¨d\0\0 \0IDATxœL»w”$gyÿ»÷{~¾FawgwrÎ=fz¦{¦\'vÎ9TUWÎ9tîž°I«•V9\"ABX0Ñ°IL°1ÙÁ`„PZíîLÝ?¸·ÎsÞSõÖuÎç¼õ<Ï÷ûV»|é­—/½õ®Ëo½t磷_~ôÎ{Þré®7_ºÿÍgn¿÷âŸ={Ù0:’¬ƒ`¥R.aŠ\00\"€Q A8VDÈN•  H€ÀòS¦©\" g`Ài Ë8YÆ(ÃË0¡d!Ë\rb4\03%-•ÉL†Éf¨lšÎ¥ÊͲùñDÍÅÙ\\\\Î\'´rR.ĘD°^)@VÉEÕRB-%ØLÍù\\˜I…øtŒODÔlR/dØdD.¦¥rF,%™l„)$˜¿ÙÁâ ¸ÉSd>QI‰BŠ.f˜rI¬ „‘E˜.£\"ÁeŒ†HÀé\nÎÀ\r:­Š(O•  Xg+\r&²Ç\n\\…ã* R,DãE‡P¨È’~îü¥»î}讇½ðÀ÷<úȱ».¿íò_¸ø𥻽|ï[ÎÝqÿ…Ëž½xçÞ™Ût­EáPDK`€\0ÁK( àx ÅKQƉ2ŽP Ð2F^@ÉNÄ»€Óe”,Âlc”G(Å\"žËâ™ ‘N–Û€lÐñ˜ÉùD̵p …C5¸$2B)Mg‚B>$äCB>‚%6ḗHmÓ©:µÃfütÂÇ¥ƒl<ÀÆ\\,@Åüt2Èd#hÂG¤ƒT6ÌdcL\"ȧ#r6Æ¥Â|:ÂebB)e#Åð&‘‰Â±™ÏPÅS.³0ÂV0\nÂœaœ1@(\0g@ŠH¶B±‚†H\n$iˆ\"‚I¦B³Í€R|…á š…ic¡\"ŒTðZµÕÚÝ»çÑGîzø¡cç/>zû¿ýKw=|pñ®3·ÝÑè¢J“\\*œ.¦JH Å\0 /¡d£\0œ*D¿ñ$´€`E”pÀ1\0\'Ê8\rtg /‚teJW†˜bI‚A²˜Æóq$Îú×ÀÈ6\ZÉ€RJéPºC¢¨CiÊòÅ’Vb~ 䣲i&“r &bA4¸MÆýt2HeÃH|xAß\Z°³\nû×Kx{Üö–ýëåÀÙ)‡6so%€ÂÛhÌOƃl:|#˜l„Ì„¨\\„âZ%#–â\"b\n º˜¢J²œÇ\n9¦2†@\0iá`’1ÂI%A”©PL…¢’ ¦Y˜&Ê‘ H± ÅÃ, 3T…q¡R¨”‹%E“î±K÷¿åÒ½ž½tZkÉŠAS|&ž…Ë()Dò0VDq\'/\"7c\0Ž–1(_!Ê8R„QA8QBÙ2*–+|±Ì•Ë\\¾HÄ“h(€¶¨D€ËG”JºÍBmºRƒ j1¥’\\&\"æãdÊO\'ƒX\"_wÓ¥|S€X¬Åñí¾\'úzO ŽôNNöœ89?:;Ó?ᙵlÚìk³³›óïÌìÚôŒÏf߶ٶŽu›mÝf[µXÖm6¯Õº2;»<5åôÛm¡%»Ï:]qd¶<©•ÔÆJ9°A&vØŒŸHú°¤ŸÊŘ|˜ÎEØb’3L9ED>ÔK—qÊÝó×CŽY72>ÏöÚŠÛ¿±á¶9“¡Ôªs}bʹ¹)„·Ýùv0ILM.ö›êŸuN9ÝóÎr$΋X†£~8@C8 ³ÉbÈ_ŠËÁ ¼›é•µ¬w3áY Ú‘EWȱè[°mZ¬ÛVûÖ‚mÛj߶ÙB.GÂëÊl¹s[«@p ñDJ‡¸L„ËÄðD/fÙBŽ.y \"@_!9ˆ` /¡ÂR M, 3L…¦@’åhˆdaš©c¥t- T™Àr0Q@©ND¥WJ0+%¸R¨à%Œ,áh¶‚º‚3*ažÉŠ\0ÀòHÔWò¯£ –Ü¡²þ&]ê²J‹¥8™\nòÙ¨THI¹$òÅv÷ÔÄÚüüø­§ç{&o×.œåÏF\\É©SÖûöd ô§Þý‘¯~äÓÅíhhÃgŸ·¹K­àððô›NZ,˽½£T…ôòc³ÓKËKÛ}§\'-s®ž“}§O­-Ú} NFèl’Ë¥¹B\nI…átŠàhÇ @ô‡àH Gá@\0Üö×·³ë;éµ­àâÊêô¼gjÎ56a\ZrOMmZ¬>»3î^-îlƒ-,ì§:&“*“ 3i:—cóE® ÐE€…P¶BP AC sƳ0s£ròÃÁ4Pd;†Q¼„±f\"“‚(ãH …‹\\„1\0CË(’¯P\0NP¡ðÀC](à©™Ž–T\"$·éÌ„4È‚XŽJÅ›“éÚŠ{}Öy÷ø˜{lÂ7·°66³84=ß;¹§žùÎ?¿ì‡³Þœª¿úö/~ø•ï|â½Llúoéë?=ÚsbxzÂöW7v/í`)âá3ÆãʼnG«~Æb]ó³} ùò¦ÓwúäÀÀàpßp¿Íjñ:í`,̳|1ÍCÙJ*ˆæBp*Hg“T:…\'’d*M¥Sx<Æ&3T2Ex\"U G‘p ‹&²kÛéµ­à¢Ç;ïØ´.;Ff¼³ [Vkhq)í]Ëo¯Cá<Fãa,£³ÉÐéR‰«`7Z\Z¢°\"N\r1,D³JDX¾BŠ{Œ(“•,Œ0¬ˆcEôF&Ê^Âð†¼„%¸ÊŠT¡Œeò`4†gSåàõáÉP‡ADªŠ¥rŠJÈ”ŸJ‡*Ñ­äÚ’gftufÂ39±9?çŸÜœ²„­ž¸s³èœ—ÛïyäÉn{ä­¼ëÕß\\ùúç¾êw»ý^ÏÌÐ\0 Á±íè-§Çú†æŽŸ\Z_tlÌ.,÷÷On¯….ìÞ!ÓÚ}ï…2âÆ\'ÒÁŒu~yfÊÑß760<Ñsªß2g››IG6e‘’Œ•x(+V\nt.Årl¡À‹T6+V\0<›¢ÒY6“ç²&›§3Y±Pf²ùJ$–÷\"«ëÁeÏÚ¼uqdjyfÆ96¹i³û—]Ñ57Ãa–¡ñ š a™(žË’%€ƒq¶BÐeœ ¢ŒQ0Eÿ¹9!‹ð±”Ñö\'Ðe 0¸c B\0^Yæ@ ’ˆ\"©xfg½  Ñ€THu©Ê™–À4–\n ’}ÞôúÊúÜÄŽmÖ5>¼:5¹:5v.åÖÖJëD(NG\nj\Z;CUß~û£t‰BJèù³( ýÀ3ïúÞ¿þëE½1r²Ÿ( X¡rô=Ú%(\nRð©“#ålå-÷½¹Æ«:\'_hŸ}ß“OëW#Å=üTj;=5bíš=94Ý74wbpªlædßàÀP¿Ó6Ùq XÉ a\ZÌÃùQ*H8ÊC A ð(B¶TfŠ%¶TbK%2Ÿ!ó&Ÿ%3\"ÆS) \"Ѹw3¸ìÙ˜·-NL¯Ylë Öm›-¿íËï씃;•d\0Œû*©YÈRÅ\"Sa*0Tè\nN–1a8ˆ8†å1¼€cy„(bxÁJ€‘r™@,Ÿ§KE2Ÿ#;PÔ—ÙX¡Ò‘]?#‘·©”XŠß ¹àzb˽³hõÎͬNMz&§Ü“AçbvÝ‹ÂR6§æ²\\<Ƨ²L¼ðÌýo§3•Û›ç.vÏïkß4_{íKŸþÔ—nùüãã+NŠ+ñXïéA·Ãí_÷?|Û}>ÏŽF\n:N½ùîËß}™!eèR)°¹‰åÀ‘¾‰ÁSã«+;3s˽ÃóÇ&ßtjääÀTOÿhïàÀàÐémï2”OŠ8š†ÉRI%I‚x–IJ&) ÆQ0LĶr0Ä@\0\r) €çÒd!K²x&ƒ¥3L®€FS¹­à–Í噵ØGÆ×-ÎMëÒ–c)¶î-G‚åÈ ‰ “Kѹ %£+0¡< ùÊ1*rd@²3 ‚—Ê$PÆ‹Yº˜Aâár`³ìÛ‹™:žSXÉC±ô–K\nÁÍøº{gÑêsŽ»Æ&gjmµäÛ!’),žÄâ :“e2i6›I{×ñdv_­=~×#ÿG>ù±g?øÞ¿18ÆçrÍŽ-YÅý;ô³l›Ÿš¨óòÓ½…`«mÎb±ÌLOê¦C:…„<î™™©éÙ™ÁÁáñ¡‰áÓ#“có££óvûj>Œ\rOÅ¢ÙñQkω±[ŽßÚ;|Ó›Ž;,öD(FWФߧ1Tç\r†pBc“eŠWHV¡h…\"e’p‚Åq\nªÈ8N—Š,Pä ²P sy.W¦Ry*QÀ\"™Ìz0âÞ²ŽÎÙ&–fmþååèš;¿½}@p«Ù²1$—¡\ne¹BñòVÄI€ ËV\0¨r™‡@ªEÁ즛H†4 wgU¾T“[,šØ\\.†7+I_|cqmabirdirÌ59é› »V²›`0@eD*‚&\"T6Me³l¡ÀJx2-ÃØ;î{ðãû?óôg>ñìWþåß|ÿ¹hÀ·²²í^85´½¼ZŽ¤e€úÀÛŸyàìåm—gŶ°²ìïøEŒ™Ÿóx³S£¾5ÛœµçDoßHOÏЉCSƒc3§Ʀ§“³kž5Ÿ}ÆuúÄXωÑÓýc\'OŽNÁ\0XN\'‰r±Æ³gëuãE‚–IQt…T†×9^ex‘fy’æIZ$HEã0„CP¦Se*<\02Å“+™’(@Ñ|Ü\\›wÙGgc“žÙ¹ ÓQðmC;…¨¿ƒñ](ReðRB l ÉD¸BæSp<\07©t¨†•Ú¯^PH¾¯Ä|¹àFjÇ_uï,Z—&‡œ“ÃËÓî™™ËU ‡h‰FÈtœÎ\'ðl Ï\'ÑL’*8$ó%<[úØ{ßÿÙ¬¥\nO½0c›š™Ÿš›Ÿ˜Ÿ\Z˜XœuN\rO\rŽŒ\r÷ž\Zí?9?¿<>¹4:éµZ#›ë™à  ñ0™Œa™8žMQ…,YÈãÅ<–¸LC\0\r@¿í˃ùX°Âé(šŽá©•MSù<[*‰0, Sx–qÜ ™*M?óØc\\¸°½`•Šå»jÆ›w»u.‹Kß”ovIˆçá\r_nskqb:äÝY˜².YVF<Ó®ˆk{}aÅ9i]·,Œ[¦Gf¦§Æ{Ç&zG{{Nôž¼µ¿çøÐñ›oySïMoê¹éM=·Ü4pë̓\'O œ>9Ðs¼¯ïä@ïñÑ¡¾™þþéá±ù¾áÉÞ¡±ÞÁ«Í‘Mäx‚×Õš¬¢¤)rUtY¨\n¬¢ˆ†È©«(¬ª1ªÆ¨2§H¬ÌS‚@Š2)‰8/‚@qÁ0NT0\n@Ád/•±|NÐt©Φ}ñ­Åõå¹%û„Õ3g;–óo×ÈÊÝê‰ÄS¾¸×–\n¬%Ö<¡E×úÌ‚{Üâ™XðN[Ã.#ÉT9\Z©dp>çSX!CærL®À•¶ ñ0ÊÂb*Í ÓäÄÕ@ãÉ&Iw ®YÁß{÷½+#³ÃƒC½ƒõý?h¬øì£O|üÍo»SS#®•5Ëâšm-µ.\nˆ/ûž»ÞÚ†¥m»Û66??:;3:;Ü7:|jl¨gtèÄpÏ`ßðñãýÇöœ=~Óà-Ýü–¡[þz¨çÖÑÓ\'ÆzŸ¾u¨çæ¡7¿i¤çÄèéžÑ¡ÁÉá¡©©qËÜ„=LÔäº&ê†VWdC“k†\\ÓÔº¦ÖQã•çUDFÒD]eAx^y…§R V 8£ˆ\n&b Á4\0P D•+X¾Œd‹7ˆ§6£+ÓÎåÉ…c·×´\0±lp5¶½’ñolÚl+ÓsÎáIÇÐÄÊØtdÉSò P%€HO¥ðL+dÐR-ä‰\\Q(2Œˆ(®ÐœL±\ZË© [ã寵x¥Ž•ªï¹÷áϼë=w©zjmukÁaí›L¬ø¾ø¿ûã÷¾ûÆÿ°ZÊÇW6Öf]\"À?ûö9póTß-\'üõ_Ÿì99xúäÈÀ驉«}a)°ˆmùó‘TÒËS9,µŠoc[þøv ²åÛñzS‘HxÇï]YsÙn›Ó·º¾l_Z]r{««Žåù±iǼmÃíµNιæì®Û¦}%´¼á_ÚpÏ87Þ\r«gÛáõZV6VŽc¡lhÛçZÚ´/:Æf—&¬VwxeŠ¦ËH9¬DÃ@4PŽÀX˜He¸2DfËT¾Ä•‚4 7(ªÎðŒq¤Æ *FÊNæK\ZŨÆ÷Þ{W»þØ…ƒzæ]çx*áX¸Sž}ì‘;«òmcáMõhµÉ’r¨òDûÁ§÷ßþT÷m_|û?™?xÃüÞóë/~ù—üô÷øÔg?yÛíÇxŠÀJÖ;¶¶:±¶<évMy\\SžU˺׺™t\'2îDi#Wñ8ÿcÂ=p|¢çÖ‘žž±›oîëééí?Ý7522㲯l,yW­n·Õã˜Z²Ž;¼vïÊüʺcm}qÍ9cwÙ—íK‹³ŽÅéÅU‹Ç5i_™[\\ž[ò,¬l97×[>wpcyÛãðºÜË–•ÍÅMǤÃ>³hŸYô8¼K³++óžÅÉ%÷œÇ·¸uÌçr…W=ŽÑ ×èœgÒî™txç]¡å­ðÊf`i5ººZYz½Q¯7²¾Z÷n-¯„¼[>·7º±µírùÝ«û¢sÖº½²¹±ä]s®¬;Ýn‹}ݺX܉=uÏýOß{ùž¦úíOèsïÇ}-龪ø‰ÇiÀe)ÌÝòÒÕ^º?6æ|OçÑOÜ÷W¿ÿ’ùªi^3ÍCÓ¼fš¯š?û¥ùŸ?þãç¿þëOüËÏ?òùŸ}è ßzücØ} [)¤±ˆ#°†ÎpØI¬&ò9È Ø*–·ÊùõRb9»<±:?d95wêøÄñ[†Ožë9=qkÏèÈðÂÄ%°ä.ãkɤ7_MG=ñÜN!¿ÏnfKþRn\'ŸÜÊd|ùb  †@0\\.EóÅhNUÊQ\0ƒPãP)R$ŠžÃÐ ‚§14ƒ`YÍ •8ÛNa1N\"Ioô˜}tb®¯uzÞ3±à³zÆíÞÇò”ÝkYY]ܶ¯nÙ<îç–}uenÉm]v[–mã6×ôÒº}Õ=¿´4m_œ]Z²¬,Œ[—-+n˲sÒ¶2·èwe×ï½÷¡§.Ýv‡B~í£OÕ‘øí\Zòæ]½äu;ÞuËXØ1û›¯|‰òìžÈ?¿ó“拦ùªyíÚáuóðèèºyíÈüÝË׿û½?÷¹_}ôcÿñÄ»žûÐGü¾ýç“ïÿÒltáµ\"¸¼@i\0¶Š¬ø\0vôoßøîSóå‡Þòáý»»V‰³|œCü(˜0A16BJqJŒÒB„á\"<î\'àm0ãIùáÙᕱÁÅá~Kïô©“ã§zgn훜œq\0Y°Êê&ʸ¬Š@ŠÎK„ 0±+aŠ„ˆ&H˜À³Ks Ns#“¢€q,Br(E\0 Œ‘%ˆ)!t•P¦M×|«vk~É:a9rz\\#³+£ ®aËʸmy¾n÷€±t%‘-…cY_Nf xË”ádÊ#|™ š) ta‹˜Rx`AœƒÄ%˜P¦Š\nM\\¹§uÛÝ}6‘Ôò½˜ÒÊI(°š[óÄV܋ã+ƒS±ÝÂäúnZüùç|tÝ<2MÓ<4ÌgæÑ¡ùê«/í_ýìGøÔÓ_yä-æ~ø¹øà™‹°z§Àòq‚MRh°Â&)\"sqZJóJ‚SãB#W­¦51ÊÓ!Ü)GÝIë˜{¬Ï6Ö¿Ðjª÷ÔdÏÉÉSÖÓÓ8Jq8§³ªÂ*-)”¤P’ÆJÎÊwãRÀx%B”§8Žd9‚QhAfE‰áx’f`„C1\'¸\n¦bt‡W©õE×ìî\r§×5¿ä˜tì,o /®ºÇ-Ë#‰û\0\0 \0IDAT£sÛ îí÷ò¤Í5»°éôW7ò0TX\0 K%2_\"ó%²Å2^(‘%€ F˜\nÄ¡Ø\rùÄc´„ÓB¨${®ÚyÛ]|ìɧðp \røùt\\È&«K[vÇüé`#äî™®Ø#¸ô„ùªi¾n™æuóÐ4Íã?­ë×_;zþ×/}é_þ÷#üî“O~øàÜÑ¿}ë]õÖãz·•E«YRÉÐm¸JGP%ËIiVÎ RVÔ²Š’à\Zy¹^µ¬ÄÇ9$XI¯çV-¾é¡Å‘ÞÙþS“½½“\'OMô\rZN÷Ma©³ªFJUN3$Mã5ƒÓTZ68]&%ƒÓeFÑCt™S5^W$¡xUNAáe™åšQiÆ ¹6§ðe¬HlØ–§ló£sŽI›ß½§A¡…–ÜK£ÓÎÁ©Ôª¯¸Kxw6l΋Ó:>¿8=r¯Ãa9¢ÊeBi\0æ*˜B0‚ñ(Æ!¨€’\n)Š\'‚L0\nAÕhn_Ñ¿tûûzHH&:•\n¼¾¡åsàÖv̹ÜÉÏ?ø®/=úþ_|êßÍ×Móмb^7Ì££#Ó4Í#óèíoþÏÏ^øì§þû}ïþê#¼¯Ùý\'Ÿ¾e›I¤§µYË‹j†“”œfä §æ>Ã*Y±šky¾Võ²,æD2B1zÓ±Œ,Xú&O÷õŽÌ [‡§ìÛ;ÁN½[å\r×4¥ªKU•¯ê|Me\r«\ZBÝêU±¡Ju•¯\ZrM‘tM­)¢! ºÈ+<+è²\"³ìAµŽ¥\n%_Ü;³¸2·h³,Í8¾¸ˆòM¡*Ã,š/ó9WmCSŽÁ©ÂV\nEnˆC,‘Éûb¾Åõ•y×â´Ã5»¸µ¸Z\n§ ‚n‹¢J’Ç* %‘”Bs*-k´l°ªBI:«éŒÒ•ªeý.C§ 6› /:ý¶9$âßY˜¹@ÑÿùwzîŸ>ñ«o}üvÍ4ÿÿyúèÏã•×Ì?üÞüŸŸüòcÏ~ýÁG?Ò>xàÞ®uörøn‰k%FK³ZšÓ3¼šåÔ,§§ÅfQl¸f‘¯—…fE5\0¥ƒ7©8^N;§¼Ó#ö¡é¾Á‰þá™ÁaËôôâÖºŸ#UÐkz«ª5\r¹VUêšÜЕ¦&7T©®+M]©krM—ªU©VUj†V¯uC«ÖU}¯Ölˆ*˜Ìn8V×ÜKÛ5¸”a¡#Ôd‚Ó9™‚A9æ_Ù°L/O.v‚7 ~4ž¦39:]`\np!Ž¬E“‹Î)§kÆ^Y\"q š’Д%•aU†×Eg5•VdZ“(µ.ÖvÅêåzóþvóÞfýíw\\\n,..ML¸\'ƧO݆ßÿû÷ÿêß>sí…çÌÃ7LóÚ‘yøÈa}í¥?š|ùÚÿø—ûÄ×~üƒÍ3ñõó\0ÛÊQoäèjžQS”–fõ §¥Y%IjiVI2F†©å˜VIh–…zY¨’”ãj`µ¼\rmØü3#¶©që©S£ýƒ³ãcö¹Wp+ªòUCmÔªíZµ[7Ú\r½Õ¨îêZËкºÖ2ô¶®µªZ»®¶jÓ4MPj¢²g4jœTŽ¤½6÷òìâÒøâ¦u‹È ÓÏVM&8#yŒ”)šÃ\ZEEV·çûÆ–F§¡` ÅÑXœHå¨t–Læ˜@d\02[Á3•ÌvÒ5étÍ..Í:ÖËP& w»U^ÐXIgU•ÓdVW¸š.gôip陇î}âî»bk^ßÒÊêÔŒ§ð©ný{ý›+?þªù‡Ÿ›W^6®™æá_Ê¡išæáÑÕkæëWŽ~ó‚ù??ûíg>ûoê.=t?mœ‡¥N™Wó¬–c•$©$I9M‰IBJÑB’’Ÿ Õ%ÅñZž×óœ^kÖE5°Ê$™ÐRØ9ᚘ˜µÎÍ,/Ì®WW»U­mèíjµ[¯µëÕVÝhkJÛÐön„®îVÕ½ºÜiÊ;ö/ܱwV\'X8ž]œ±ZÇç—¦—F—\n;Å}q¿+tª´±«u$BŽ#Y‘æyŒ– †#ˆc™ÈÂÀÄêôBaÇÅx\"‰\'³d*ÃäJl äA” ®‚é$!ßJÀ5ëZ·Xg,‹6{p}ƒ‡Qƒá4š×E“k’¨k¢~`´K;¡J(øä?öŽÇ4»×ü×úÈ؃\"ù_ÿÌ‹ÿù…ë¿yÎ|ãÓ¼ztø†yxtdþ9_›æÑÕ7Ì+¯›¿ýù?¿üý¿ô“?ûÅRÝ?ȳ’¨ç!Š*IšOP|‚4Áù8ÁÆp6I²QDKÓF–Õó‚–õ’ÖBšg¨.#²ÞŒkÚ=Ú?{ºgtrÜ>;¹<04ßÐ:»{ç½U3öÚ³õZ§^ë4ê{U­]S:5e×Pvuu¯fì×ö•–BP±@È:aYž[žë]šZ‰¯%%@¾ _èH]ÕtA¯ò†ÌÈ2#ó$Ë”Ìò,Nr ,áݱô.ŽÍT\"1\"DRqºTÂ3\0h\0¢@ˆ\'8gAR%e`J¡üªÅ㘴Ù&,®9;”Ê´euW«íê͆TkÈƹæ^!± ö%V—*áíwÝsùÎFËgq†æ,lôkïy³ù‹ï˜/?ÿÿ±>úSÊ>:::::2Í×^5ÿðó×ÏÿôSŸúõ\'?ó½§ÞÿÉ‹^È1þ\\Eß+)@Q2,#ØÁÅI:N`¡JÅIJÉ°FA¬–½¤U¡j£Ro€Õ&TËoä<–™aûPߌݺ6=íèœ\"`JÓz­Û¨4«gkÚ~£v¶ZÝ«×÷êF·eìÖ¤fWß=W?èu(šõ:Væ&禬ÖqGn;Ó¤šçj·5øNoÊŒrc·Aãu‘’$Z’A 8gdŠg0êXrÓo_ÃÒ$\" Y(“ÆŠy\nX¥Q”#ÇyŒ0N@é*©ì\n­*®£IleÖíš^Zžw¸-öôf Fò{JõŽ½³»Z­‰¯Û¬‘×úÜ„XÌ]$µP>CÒ¢ýgŸù°ù›¿þüsæõ7Ì£7Ž¯˜GWŽŽLóððúUóèºyý\róÊkæK/™/üî_ýÚþå‹ÏüÓ_¾ÿñ31è—ÞúDíÒÃâA5KK)RLÑT §b8›¤˜‰1Ũ9^Ér Ö*µ:\\o¡õ\ZX=ÏŸCðòìúܨsd`~ɹ9:eé›,¤KÕj×0vkµ3Uý aœ¯gªƒZµÝª¶÷k»·uέíeÉMçškÆáœrÚ\'œ¹@±É´.¶nk+»ºØT¥ºÄh\Z¯«´\\ªšP“XEdäªT¥Z&Ee9„=óúæÆ-ƒp2Ç”Ët©ˆ\nИB0\Z\'xš(Š#(çN’)^¥¤:g\\h]ÐIŽ#«Vïâ´cyÖ¹a[Î섈\\ù@©uH9³ºSÜ‚ÁPvÝsØŸ¼pásïzâv¤üÓüèÕÿù®ùÆKæѵë‡WÌ£7Ì£«GG×o°>:|ãO¬_}ÙüãËæOž»úÍoüæSŸùÙŸ}öìÝ_{Ûûf\Z ÝzŽRR¸\"Ôì\0|‚¢Â(&”,¯åPê½5\ZH£Ž¢u^<EÐmWd¬Þ2³<2bé›ý¿÷–³X½~ÖÐ ý¬¡ž3ôMëhz£¡×Ï6v›œZ‰Wç\\ŽI‡uÌjs ìŒqþb÷Žƒæ…š\\×DC•ªŠX3¤†!Ôu¾¦òÕ›;«è’!ÑO!\n˜x,½™ï›pŒÎg}Q\"W&ó%ºTb+‹,Br8ǼH‰,NS!S¼B *#j¼.ÓšÊÖÚún“oAÀïðÛÇö)‡}Êêw­¶1ŠJf¸T.duÊùìóKÉøÇzàQû¯O}ðÊ/~l^}Å<ºj]¿Q¯^3Íëo¼úÆ•WÌ£kæ믚¯¾rå{ÿùÂçþñ…OâÛï|dz.½Cß¿Õ:9FKQB‚S´’a,ß,(j‚ãc¤šåŒ‚h¥\Z¤Õ`Ý\05–UP>\'œÁdr»°0á²Î,ÎÝ|z¼¿wZd[úíšzPÕÎÖªçkµ3µj{·³§lÚuMÚÇœ‹c®ÍyØSAùbëŽ3õÛjJGÓZšhÔ•†!VoôàºXWDCuQÐxN‘ĪÀj- ¤È‚DÈÇR[!ËàÄò´µI Ù\"š+`ùößxøóî¾….ݪÛþs9à ˆÑ\\5RУ°Ä¤F!%ZæBYd+ZZGœÞð¢×o÷¬/¬¬Ì-º-Ë‹óË«ÎMeCÁëhŽí”,ãî¥ÙU äΈ»vï8«ïæ·âÛ nçøœu¶8µ²i÷5¹½]íB»~AÓv£[mTN]k4µVSíÔ”ÝK[`º±§JM]ikrCjU±¡ñº*èºÒ”„º$ÔyÖàh¡ÔcY_Ô28aA’e<áy˜,cT™à†Ã9Ž–8Zá]á ‰UTÙP]ãuƒÓ«¼Qª5¹nH\rMnèb³!¶›R§®¶w®ÑèFÀüãkæµWÍk‡æË׿ôà[Ÿi7ðÉ÷™×^4®þYº\\?2¯šG‡¿ÿoýì Ÿyþ ŸúéGŸþ—ûν[Æ€S2¥Zx­lŸ‚—ìÜƦº6ÃÕHN匠†A5\n þ ëK ’g;æXµôÎö. N[‡fmcç”Ó=çY³o¥¶ËXkRçÐŒ8zzˆ û\Z[ð¨\0½8nwN8£Öµ™µàR´Áîwå‹uýŒ¦u$½)kmUmz³j´êF·¥·Z§®v5©SSv5©Sý‹¼Tš†ÚÒ•¦ª4T¥¡JMEhI|MätŽVDZ=ÝرÎ8Ç犡$ž‡)\0Ç@äÆ/7-I¬\"rºÄ×$ÞXEá5]0n$©eW㪚h¨Rýë–Ôj)Í]©±W¡Ÿh·ÍW{ô»›‡/™W^1_{Íü¯=}®c¾ü‚yýµ£†Þìüê«üáwúƒç¿ô?ö™¿ë\ZÂ@#觽«YÛ|Ön——‘/áÙ®†³Z ¥RF¸¨\n¼/-s˜7X^ÙJ9Övf7ç—ÜÓŽÍùåõÙ¥-‹{Ç3¾l!°€V£öe¸µañßNî)þrlÚUÙÎZO/ÌôZ²[Å\ZÖ=[½ó q¹¥Ÿ¯ê²Ö–õŽ¢·´jGÓZªÒ¨jݺÚnÖö µ£)]CÙ«ª{šÒ­ê»ºÞU”–*·tµ£Ê-]i+b£ªu%¾ö\'ÜŒ~,ºî·ŽÎØGgÀhž( DÃœ‚)‘`eŠ—Yå4™­ÊÂÏ\'tUª\ZRCjºØ¬)šÒ¹aÖÔ”NC鶔vKiî)õ3(óí\'ßjþ×7ï {Íï}ãŸþؼúŠùÚK_yú‰×~þcóðõ#óªi^¿b¾öÂÏ~`^ùùúïÍ_ÿôgyßûêÕˤEâµt^ §ÕhFÄh–Zõ“ž€Hë,¿™à·Òôf’ÜŒÁÞPѽ³­%¬ëQçfi3^X›ñÒf<ï”·’H¸@\':ÏÔ™îííûÒÛå”KŠ¯äZ2Tr-u®~ûÙÖå3µ;;ú…šv ËMYkkÚ®®ïiZG5ÚªÚÔ´Ž¡u[õ}Cm5ëg©]ÓÚÕ³UuÏÐöt½«ªmUíÞô†ÚQĆ&·t¥-\n†Àë £ËS³½ã¶áY,\r„p#)„¸ÁZgUÕ¦jH\rE4dÉP•š®µ4µi¨ºÚ5¤VMij§ªuëj·¥u[zûLµSËæs?2?ùá\'sqó•ßýêß¼þÜs¯}û¯üÇ¿›W^yé·ÿû‡ß>o^7Í«æµ?š×_4¯¼øêwþý›o{â½jý!”½PÄ:i°+ÔÓe#Q¸“ßÙ8óáó÷ýMõB3TjD!Ö›BÝQ|=V^ÙI9Ö\nkÁœ\'XöÆBŽõ€ÝYZO¯ùó›áìFˆŒ•…4¤åI2‰ò ,ÑÍ¡“s×ï–}@ljå<×½P¿´[;߬Ÿi5ηŒ3ÍÚ^µÖÖõ¶¡u«ê^£º¯ªÍjµ[«íZ·QÝ­ݺ±gh{Ú¹Ní\\MÛ×ÕŽaìjZGÓvuu×Pv\rµ£É-Uª+b¦$Ui°¬z,ºêŸê[œ²•¢9$ñŠ\"$ƒ³,Æ*¬¢ñºB©:khBC•[Š\\W•š®54µ®k\r]kéJóÆ›eèíªÖîV÷›ZkÏhu\n°ùûßýü‘>F¢æk¯]ûÕÿ¾øo_ùî¿þògæÕWÍ£«øÅ/~ð¯½ô«ÏýÀ¼ú¢ùÛŸ¿ÅÐÞ¥5ß)4·ûÔ¸oÂâèÜž™ß˜˜Î-¯\"›9’{÷îûYœX @K¡¬}\\‹f—wP_ª¼óÛ×ܶ…Ñ…±ž±Ñ“£¶Q«cbaqÊ汬Ï.qi‹\0« ›Û+i0ÊÞ!]VÂøÚIËý{—ºµÝºÚnh»µj·ªµ\rµaèm]íhÚ®¦îÚ^­Ú5´nUß­{õê~Uß­×võ½†¶Û2ökú®®´\r­«i»š¶«Ê]îjRG²\\—åº,Õ±Á1ú±äFxv`Ü11&³,„R\0J,GòÉó¬¤ðš.Ö«rSšr£J´u­U«¶u­Q«¶«Z³¦wêj»ªµëF»©vZz{¿Ú>\0qó÷/>wïƒï+•Ì7®˜æËæáKæ/¾ð«Ã×þ`šWMóÚÑk/›/ýî“o~äéNó‡|¿ùÜ™W^3_»fþâ÷Ÿyð©‹€Ìïä¡õHrÑ›pz²K^l+.ûßÙ¸óoÛ÷1ž4áÍ•Vã–ˆ—SžÀÆŒË;çöXÖ=óÞÀR0±šÈ®¥°TÕ¼7NFŠàN–ɱ—Ú„yN/œÕ:\r½U7º5¥eèíFu¿ªµ\rµ¥)]CÛ7´ý†q¦n쵫ê~Mß­{ú^­¶[­µ[õý¦Þ­é»šÒÖÕ]ÃØ×´]Uíjêž$4©ÍKuYnJBS曫 ¯Æû†gGÆ¡l(A4HPÇàC\n<§ˆ‚! u…«É|S曊ÒR”–¢44µ©*\rMm\ZjK—»5e×кU­ÝÐ:­j§[o·Äüæ·¯ú³ÿ|áœyõÅW¿þ™çÞqï׻üþòŸ,\'óÚÑ_œ½+GÏõk¿üÚÌ_ýÐ|þû/}ùŸÞÓéì&Jí¸Ÿ£ºº\ZÁ…MZÍþæó?øÁ‡¿h~÷m¶ j .ìTB`q;ŸYMf×RÙí\\v3 ŠX¤B°­æù,S«u|÷|õžÇïxºìa\0B÷µ½ºÑ­é»-c_WÚUuOWÚ†ÞnÔ\Zµ³ÚÙº~Шî×k»ênÝØkg\Zµ³õúÙjõ Qß«W÷U¹£kûšº÷—Õ®,·¹+)]Yê\\]dë*[;– §ÇN\rÏ Ž\0BS¡9X¤ žežÓ®*ò5I¨‹l]‘ÚœX䆤¶4­£ªmI¨+RSW;5}×:Mu¿¥íuõNGnpÚ§yÌ|ñ¥þí»ÍWûÇ.þìüîÇxÔ¼ú²ùÆËæõ×ÿ¬Í[櫯üî›ÿöoo{üã{Ý¿Ûí>.ˆg2ÀnØMãÍ­ûqcQóç<üñ ¯|õGl=|[J5¢4æÊ›y4XwÀ¢¯úJh\"C0€¨ Bø+dæâdl´ÑNë4ÉÝGÏ?ÞF;øzIM1{úÁ^ç|»q¶cR§^?[¯ŸmÔ\ZÕýNóœ¡uoÌÔŒ½fýLÝØkÕÎ5ëçjÕ³úùVãì\rúõêÍØ׫gT}¿jœÑÕ]]ÝÓÕ½ª¾¯«»ŠÒźÌÖe‚É¡ãý¶‰¹r\"Ç@$\r‘,Ìq„ÄR*Ïè\"[Ùÿ—ŠïŽn㺳†ˆ™Ø«ŠmÙ’-Éj¦:{G!@ X@‚{;Ñ1½Wt€”-×Ø)¶ã”u¼)§8q6Õ›²_²‰³éʼnw[’%«Í÷hï.Î=ïÌá™s\0^Üw÷ý0ïV<¡ÕåÈÊRxe%´²Ù6¦5ÄïÅÂAÊ·6ˆ°—ÜXŠ A\Zñá¸SBôÖFX}ïâ;?xQ}ïÍ—Ðð‹£#_Yõ¨7.©Wß»uýýÿá:G÷×Ô×ßP_þÍo>ùÔ3¾ÈÖ¤çSêÓhTvoà]óËg9ÇÆ+/¾¬^UÕkê¿xù­oý¿øp`µÍí1Ž6ô-tMÏwÏ µ9]mCã&÷pËàXÛð´ibÊ8>kYí] ‡£‘È\Z™Å£áåa†ëûÖú<° ‡ÉPˆˆ)8Ìýt8Ȇý4`Â^<짃~\ns‘ ’ÂãE$ÂGB,d‘\0ûé — (‡Ù°Ÿ{ÉÐûØÇøWѼ«¨¦×Ø}GÉî{o»g¸k`adf~tfaÒ“[¿,Î{sD¯-EÖV`ï:¶¶öm ëë¨ÏGƒtÐO|x(@‡ƒLÈG¡ƒ94ÂâaZ€YffY}çW¿ýuõwŸØú´©çÖ·ÿ]ýà¢zõ=õÆ•[7?¸µÝxúð™w/ÝüÍŸþòůÿèüÇžgÒ‰aOrd\r·Ž}I¼ð篾¤¾¯ª¨·nÜTo\\»uñíK?~ùá9l¥~í_[³ÍÁ®Õ¾¹þÆÞQÃðh‡k®{n¬Ã=Ñ>>e˜œëš_ê]õ:ƒQ8<‰á‹ ».%Â鎣mËÎE$ˆúÃH8‚Ã!‰°á0\nÐA?\nÁ\0G(¦„ ¡4Jðá0‰À$ILG\"T$DÃaÑá ³îCƒ:!”\ná@öûÂAœƒ#¼±ÖØZLÇîo8B1”Š„±pÃÁ`8‚ ‚ˆD\"0 £0¡T¡ÄÅÅË?ÿ±úÆß_ýìçÕ_ýúæosó¯Þ¼úžzí’zý²zãŠzãƒ[7?êí©7/^RÿñúÛßûÑïžüÌ—páëâÖSAîwO?÷UŒü~œý›_P¯¿¦^|E}çŸêõ믾🟠¤7šGéþp׬¿ofÝî^0Ì\ZçM£sã3æñ “{¡gv±{~±{Þ;´±1¼\Zaóx4SѶÃ-JPཻ¢VýôŠ_ñãÜ\Z 1‘™|iY\\‡—VÞå‰dÞ Ïm&Ã3+¾©…ÀÌ\"¶ê Ì,{\'=KΉµ‘9ÏÀD`fu¬gpatbÉížš™v¸r»ifûÇ&º]šžvÓÑ=wUß¾ßÓ?‚-®ÃKëå5d=Húþ…eÌD¼<–)÷!QBB4 ÉuXQqJ–PŽòcqJf‚XŒdŒ#¤àE’ëHtfö›ç3êÅ7ý¹Ïÿþ‹_V¯½­w¿\0\0 \0IDATÞº|냋êµKêµ÷ÕWnÞ¸ú?Nró–úÁ•kúãkß~ñå\'>ùhæi/¶5¹ô<)>íY™ß¿ï)çÏ~öwÏ~FýÛŸÕ«WÕ«êßžû¡`_ÝabØ;ožll˜n·/˜³ÆÁ9Óð¢mrÑ6½Ü=·lŸ÷9WBãx*ŒÎ!‰HR Dƒä\"Q{ìܽ{ž>vúܱ³Ç÷=yèÄ©CÕgœ:{ìäÉ£ÇìÛîÄ©“÷¯¾ç؉Çí?R}oõ©£§ßs䮽ûö߱û÷íÙW}àø‰ƒÕï{äÔ¡ÛÜ·ÿØ=»öW8qöÀ‰“ûŽ»óÞÓ«ï½ýàá;Ÿ;R[{¬þìþ³göŸª9tæÜÁÓÍ\'šN¬i=kj?k>w¸Á\\ßÓ|ÊÔÕê°µöô6Ûë:gÚû­GO|ùÁMõÚÛ7ó_øü3oüìGê÷o]¿¤Þ¸¬Þ¸¬Þx_½úŽzé-õò›êk¼ú«—Þúö´™ÜrOGÚí”Í19ê\ZJË>Ëêµ·Õ÷^ÿF:¡^¹¨Þ¼vý׿{`Ânï“Üþ Ý³Þ3r̬[Ý=÷ž¶<2Ùؼh².wÚ}=#A»ÛÛíZ³Á£sĬ—Xã8‰Ä‘Tò‰ü\nÍ,“ì\ZÍxY6$)h\"Ž$ðBB¢\\H¤7XÑ+dŒà—Y¯È\nÊ8!IJ^R \nè\"LoPl yÂÁÅ ²†Ð~ŠXÅCó~b.°e4<FçÐ\\PãlïšèrŽ[CöQsß|ßèD·k²kÄã˜Y^\\òxÝ«‘)p|Ÿ\rF×è%Œô ÁI/<Ä—Qb#×(|…àü¶LˆQð2Ñ\0Ç®`q˜WVYï†zåmõꛯ~뛯ýÇÕkï©×.©7®¨×.©Wß¹uéuõ­W®¿ú»[øo¿ø¥_~ì£˞ˆ¹¶DLŽåÆvÇñ“wícýꥨ¿ùñ3ÞyõÍß«7ßøñƒó&fêçç2 ‘ø|\\Xét©ï:|¤ïÄÉ©¦¶…vËZgÿºe`¥«o©ËL“K!÷\"¹ó_Á°\r óGu?æ\r£‘ÈZ8´FýDd…}\ZÀP/BÊc>÷£¹1â !ˆóÂðz\r`þ•\0Ĩ0F\"ˆ7\0o1Ùˆ ëáðJ\0Y\r!«!MpÜ™\\]wÍÍõº–†Æ]ÙÕ±ßÜZh)°:³â_ôù¼þùð’?¼z|þù\rx%ôø\"+¡ÈJ(²\ZD6\"‘µ0æCC+Ô ã¾ÄèFù|¡aç?þýëêû¯©ûÍ­×þ¬^O½qQ½þžzõ[—^Sßù«úßÜüó/®ýì[úÌÇþöá¶N´»×k°¬¶\Z§ëšìÕg\\\rM¶;÷G펨µsæÐÿÂS꥿~ƒÀžÀ­ý¤cqL̵uV7.YúÆÚ\\5µŽãÕŽãÕ9ºÚ-k–^_÷€¿wŽzÐÙ€àI‡)8¡0”ˆD¨0B2ˆ£ö‡±BGpÂaüã…©@„ô‡‰@‰Àd(Œ‚T8B†`\"ˆ ~ñ#x{ƒð†ŸŽ DA}a<\0#ëAdÝmp¯Y÷kBK+¸7¸:5³0æ^™ZŸ›Y››Ìy‚ó˾ù%¿gÍ·¸X\\¬úáhu#²@ÖÃÈz^Ûf™!¸/‚`2„Òœ t¦6æB!niñcp@ýïþùêo¢Þ¼¤^{O½òŽúþ›·Þü«úêooýágWñâå¿ô5#:Mk­íËm‹­†Ñšº¾êÓý§\ZF›Ì#µ¦±\ZÃ@uùŽ;GøÑfúk4;qüÄJ[çJ{ÏlGÏPaªÅ>mè™l³ŒÔµöž8k#H( ûƒ,BbþHÄ}0B`˜\"d BP.ˆQ~„ô‡q_ˆ …1õÑ`8ì\r†ÖCÁµ`x#Xò…V}ÈzpuÚZ „V‘µ¼ÂÖC¸7YÙ-{5ðÚ\næ]ߘžòÎL†gü³SÁ¹ùàÂBÀ³ä_\\\n­nWÖËkþ¥U¿gñm„W×\"Ë>t-Œ¬†\"ËÌ £¾ppÝû`Øã~”\n¢„7BúÃT Â1%ˆ‰‹Ë†7^ùÒg^zâ¼zã¢zåõòÛêÅ×n½öÇË/ÿøòϾóÆ‹_øAV–ûìKµ\r&ëRGçtCk÷‘}gëm\r¶FscÏhÓàxƒc¼¾³þŽ}‡ŽM6ûÁccµ-uw“m¤¥w¢}ÀÝnŸlïm0\rÕ¶öŸ©7Þ{¬ýÀ᡺†Ù6ãl£aÑh_uŒyG=Á/¾N„×1ć#~ó!t˜$“xˆÀC“H%`ö‡ÉÊF(:HÒ!‚ `÷oï^¬«Yh¨_hi™¬k´;5p¦ÅQÓÞ×lém°6÷¹[“­ƒ3íýÎs®Ú¶C×\\»eªÕ2ÙÚ=ÑÚ;aœ4Ï[]3½³ÆnWs‡ã\\Ã@]³ùHuÿÙšév£§³{ÙÖçš\\wÍù&7Ð5’Æ£,.ó¨ ¢DˆésL{Ì#¡¹ðàÌZ·s®³ÛÙÐêlhuÔ6:jjgÍ] =«½ƒëN·g`l}b…\n0Q>Ëã±(•IE$ž”9ZXEbbU%JÊ\n! „Ìâ2KE9Bé¸@ÅDRÙ%q8/âÛß–ˆ õÂTˆÀ#Ž8JM\"‹±<̲0Çã\n…K$!P$G‘‰3,Á‹t”Á$—*ÆŠHÆ8\"e32‹’ÑóBö~6ñ\0!¾ñ‹Ÿ©×.ª_»ùúŸo¼òëËÿýÓ׿ÿÂ}hädÍ“¤ˆ\rMŒ×Fê Ý\'›NÝvàPùÞ{­\'êæL=¡>÷d‹uÖàkîžk³÷Ÿé0©¨±ŒwôwŒºÉIoȽG[°WWvjÏ!óñZWKçHGפžÐí\\îZíqúúÆ# ÁŠÝ䈘H\'7câ|Fa’2¨8ÏÈ\"XE`cé¨ÄÄb\\RaâQ6!ÒQŽò\\L`c2‹1J”V$Z(E¤£<Y d‰–ãlL&%–ZHQ&%‘5ØÚ\Zæ]ǃ>4Dƒa4„àa”`Tˆ `’ħHœÉq- œˆŠ<\"1ˆÈ`Mð,%²¸ÈCJc©(G+<#óL”£’\n—ÉXœMdùL†Š]`b¿þÆó굋7ßþ»úúŸÔWþûÒ¯þãõï~óWO}Êk¶üî‹ÿ–òlLÖ]5FÇ©¶þZ³¹ºeŸ~ïú;êlܘ/`vÇf‚Á¡™­0ëƒÇ–£RO°ÙdñXäÌú‰;©Ø×y¢¹ùà™ö#5C­ÖqKïŒm`Þ6è±\r/Xú×úÆ×]óáùPŒNóLœgâ ©H|Jä’\n—é¸@D%*.1 ŠÉlRáR2—˜˜Â%&.11QHðlB`2P¨¨BEBÎÝ QQ‘T*\Z¥e…’c”\"R’ÄÊ2#ˤ(2’†ò¨@€ úñpÃx%\"\"¨™ãš\"XŠ`)”¦`Š‹0<̳A@eYTàq%7¹XFùÇÊ,#qLRâS1!•2)!R‰™ç.< ^»¨¾õÊ­×þ¨¾òëË¿üá?_|þå§>!¹ÿú•çöÃSMæñæ.Û‰–)Óмe¢ºôøɒꚊæÛêŽæßíl°YN5Jk°lq¶gdcxnÌ2xâîãGï<|{ÑmûKïhrÌYǺNw«Z:Ç-}Ó]ýs]NOÏèjÿä²c|eh]Çy<Æ3q†Š\n|\\“Q%# ižM(LZ\"Sq~Sá22›Ž ™(ŸŒòI‘Žò¤¬p KŠ|JâS\n—R˜´D%*–ÓµÂÄ£´\"“J”V¢¤œ`b-I¬,³¢B +k¨@„†ÉPÃx#`’„q:L2šDh£Iœ!0:×TäpŽ\'—DRÉ,¥p‰&dš’86ÊÐ2Ã(…ÇÄE.. q‘Wbb\"ÎÆÒ\\üAžQ¯]Tßûç­×þxó¯¿zÿW?úÇwžÿÍ3O>òÿøcO|¦Ûa?cì:ÓÙq¨ÙxOË`}Í6»Ü3íl¶™Î¶ô5›Ç:žž¡éÎþy›kÚ:´40¹:扬¢\"äð8O\' œgÙ¨(Äd)!rQŽD:®ˆž‰‹\\<*¥e!.rQYHn“Î%E>%²i…ËdR ›ؘÌÆe:câ\nÒ±‹Q1‰U$V‘9Ea‰•5TÁü!Ʊ0JÀä¶~–…¦Œ¦IŽÆgy‚g\"‹±4!’¸ÄPQ‘N²¨ÂãGH!“¤ŒS2A+¢˜…„,¤e6—’’œ•¤,%²R*ê÷«×.ª¼«¾ñwõ•ß_yùǯï«¿zæ“ŸÄ\"ÿ~áü7Ο÷ö Œ¶t»Ûæ#ÎûLß~äsêû7Õk7Õ˪ú÷«¯|æ;?L<ù$»PÓ=Sg¯µž²œ´,™\'¦Z†V,SŽ™Áù±Î¡î:ãp‡mºÓ1csÎZÇ\rŽY›kÆ1áq/W1™ÏJB–§“Š˜¥8/ÇxA¹(KÉŠ˜’…¤ÈE%>& q‰‰ILŒg’–…´Ä$¢|Zä’“Åì‡\ZOÈtL d™ŽE©DŒLÅÈTŒNÊtLá2•…¸ÌE5B0N¡4“8B(Cc,‹q Ê’Mb,…s$Ʋ¸È`‹\n!Ñ„LâMÆx:)1 E:Ê3q–N0L‚¥\"Ÿ¹¤,¤.—’’—¤TTJ§ù$¿îU_û›zý¢úÖ«ê+¿½õ›ŸþãÛ_ú÷³[k‹_ŠË/>òpxÈíª·tß×:ÕÜç8Ò¨¾sY½vE}çŸê+y÷Ûß}í¹¯ý$ûØ âƒ”}z©¥o¶©w¦Ñ1^kŸjXëš \r.ùœsó=ãŽÆ®¾&›«£wÒÒ?k5ôLZú§,Îå¡™•ñex\rKŠç%>ÅÓIIÈJRŠc‚“…¤,fd)%K)IŒ‹BBâ\"—ä™8Ç%!% iž‰‹\\R3\"ŸâÙ”Ìg.åÓ1.çSQ6eS\n“ŽqÙ(›R˜¸ÌÆ9Z¹¸ÄÄ4X\'`’ÆX\Zcœ£pÇc ”ÉQO…K$&R˜BáG)L¡ˆ(CÅiRa¨(KÉ\"çé¤À¤y:#0Y…ÍŠTŠ\'㓹8ÏD%!³1.™Æèÿ÷üó굋ê;ÿPßøËß_øÒïŸûô׶Rô¸;ØïH¬¯rsK£\r¦ñFë£þŸßýõê%õÊÛêëºöËŸ¼óÍo|æ‘6ë쉦…ÚNOSÏl“}¢¶kÅ8â³M£^bb}Õ19mîlu8[쳶‘VËP‡mÌÜ?iuÎL†<ÁùÑE…If”-™M\n\\ZR¢˜–¤ Ï\'E1-ŠiQLJRJàã—”¸ŒÈgX>-I›²˜á™¸Ä§$!s’¨¸¥p©\\’‰qi…K)\\Já2¹ºªp R6&rq‘ŽjÐI\"40D˜¤`šÁ9’`Iœ¡IŽ¥D†R¢p‰De\n‹²T”¥¢,ç¨O\'*ÊÒ1†ŠrtŒ§“\"›˜¬H¥d&£0i…Ë(bFŠ”U„ͤ|RÞBð㱨zõ]õƒwÔ‹ÿøõ>ý±•ÔÊÊjÏÀŒÉ:i¶ú†ÜÞ¾‘O Ñ7^ú‘zùmõò«êë¿W_ýíÕŸ|÷Ï<ùÀÌẩ¶ÅÖÞUËТyhÎ0¸`t®˜F=3öiŸsnÎêš0[Ü-}#ý®¶žK¿«³ÏmuNöŒLõOÂ^âô‰†Ncï§üDLÈH¦Äe·-EÌr\\JüJAH BF6E>+\n›¢°) ›2ŸÙ´Èg$!›»–Ùô‡‰%™‹4ŸŠòé(ŸV¸D\\LËl\\ ‰Šjrú¥P†‚ieœ#P†Àh§hŒa žÅES\"F2C* ©pT‚\'ã,eh™¢ž‰²dœc’<›âÙ„\"f8\"e¶d~SdÓ“ùlî_’¸ÌÑM~Ý«^zS½ñ¶zéŸ?}òñ Íêu8\':ûœmƒí#FÛ¸¡{¸¡u£Û›ýžøñ÷¿úüç®|ÿ[/?ýôC«aŸyxà´a¸¡{¸ÁÞÎ:ÖÜ;ÝÑ?o^ê\Z›ë›´ŒNtŽŒ3=-=Ã}ƒv§É1nžì›^ ×èƒNk€Â8}àþ‡e%ɳ žM‹Ây‰?/‹›—¸¤$&e)% iAȈ¦ÀerˆËLŠ¡â<›¸Œ\"fd1“»YäS2Ÿ•˜”D%&-Ó©(ŸŽ …KILB¢â\Z£œ¥1&WiŒ%1Ç8eh‚§ ‘&d–L0DŒÆ£$.Q„L“1šŒQD”&Š’Zä™(KÇx6Aà¼À&8*¡°[\"•’Ù´Ìg%.«÷‹ì¦Ìo&ùx†Àÿ£ï¨7ÞV?xû[=°d2­ô8ÇÌ#&Ç€¡§·£»¿£w°­{¸µ{ Ö°b¶/,ôëÉñõèægIå!/I¯Mµ9ûNYF\ZÜ-ƒSÆÑù®ñi“{Ôàœ°ŽŽZ\\.óP›Ãièëoëî3Ú&ǘep¢Ûµ84‡n;\n*5`þ°ÓõÈýe²[\\,))‰ËrlZ’6%iS’2Š”U¤¬,f1#óY–L°dB`Ò2“‰r›—aˆXTÞ”„´($$)%I)QL+Êy™ß”™ŒH¥$:-1©(Ÿ˜O\'E:®¡PšÁY\n¥q”\"Pƒ\n—pT@aŽÀy)\"Êq\ZÒ„ÌÐ2EÈ$®°t’&ã4céKÇ$!Í1IŽIJBšgS,”Øûe&#³i‘M‹lF·d~Sâ2¤8Ïpð´zý¢úÁÅ_åËsFëŒÅéîìw\Zíöv‹ÝØc7öÚš»½“¶áÅž‰UÇä²Å5ßâXé¤Ý«ÉUü1<ú´ô>˜1Žµ\rGÇL#£®£sÄ<2iŸpYœCæ>{s§³½Ûiè5÷[\'í®U÷üøЄ&O§­Ø©Ñå76µm¥6¸ðH4‘e9™ç†OpB†åÓœ‘Åͨ¸6e:%qYIótRfÓ\n—‰ñ[\n›•„¬Ègx>)ËYIÊp\\J–Î \\Fâ²\"›QجÌdd�ižNILJC\"…Ò4Áã#,r$*SDCx B\"q…\"¢ ©”Â2ʇºŽÓdœ%,ç˜Ǥ.#òÛo/òYžÚü®ùŒ$d)+‰É ™׆ÆÚÝ«^}O½úþõßþ.èt¯õOu\rwö÷\Zzº½¦æ®î6{W“m¢g|Ô:6ÚéisΘÜ3íC³f×”eh±k(2ä™5ŒNÜc†‘ Ó¨Ûè\Zé\Z58]æ¡iÇT_»ÝÞbq´vö6uŒ{ÆŒ}³½®Iû<·vôà1*ÛyTy‡F—¿ïîý“ÃdÎožß¢¢\"-Çh)ÅIšO BFâ²Qn3ÎmI\\Fæ³›Ù¤ÂeD:ÉÓ)™?/ ›<›’å-AHq\\Šç2ŸùŒÀ¤e~Sa³–ùMžMótRƒ#4‰±4ʨ€ç€° &‘˜ˆã\"Jˆ£é8EDy2NaQ†ˆ1T”&šT*Î’ –NòlZàÒ“ùŒÈo×ËÈ|6÷)eq3\ZÝRĄϳÑpèÔ™Š»ÕkªzãšúÆ¢gÍmpŒÙœ#ÖÁS¿ÃØßÝÞÛÕÚciê\Z´ º:GÚÇÌî1ã¨Û02nm\\²OºÚ£çhû»cØÝ1#ó›\"›¸Œ$lŠÂ¦Àgs¢–è´D§%.«›·í×­h˜Æƒ9á L$0‘Âf)\\Àq§dŒŠT#¢£°(…Ei2ÎÒ‰œ´*AÓq†Iðlê#|T E6#²i™ÏŠ|F3d44wÛ{tÊ8 ÞPÕ›7Õ®ùÂã ]CÓŽÑqÛðyÀÞÖÛÝf·¶t[[»ÌMö‘AóðÉ5Øî1¸\\íÎ1ÓÈTçØB×”»cxÆ:6Ó9:arw8GŒn눳s¨§­«ýlcO‹¡»ÑÐÛhv\Z»ûÛ­Nc·Ëæ<²¿\ZДÞVV|WiѾâüÛõú2\r\0i\0 bÏžº3µ6s×ØÐ(î‹<š~àé‡?þɽ?MƼ„„,gy>)pI‘MËü¦ÌŸØMÝ…ó¢p^à³9…‰Ü–Àn\n\\Fä3\"—Œòé8Ÿ‰ \r\ns$&ˆ„E)R¤PÓÊá8‘N+%¨Ž) ‘¤ñEÄH<š#š¥“— I…gS“˜4GåæצÄmI\\VdÓ9c‰ ™M%[¦ùÀîñõ¦zëÖ-õšú×üŸXöŽ.¸;ƺ\\ý½Ý-¶î¶îÎf³¹Éè0÷õ™}}mýí}®ö·a`´¹w²cp¼£ÏÝjŸjwLµ;ÆÚzG}æ>{{—©®ÕÜÐdkjíoïìk6;Z;Z-.KýÙÆå³1.+óY\r\n \"ѨL ‰‰)²G<Žq!¤HÐ\nÉD Z¡¨K&\"Î)\nOPdœeR,“¢)IäS•˜´ÈnJtV¢³<ØM‰Ë挅çÓÙÔCáÕP_÷ÀžÂªçîÿxî±2õºª¾{ãs‰‡<½có½cS]Ãn³sÀ`··ÛºZ;\rõí––N[«­§Õîhë±7u9[»Ç:z‡›-Ãm]#]ƒÍ¦áfóh›ÍÕns4˜{šÌÆsMæ†&KS“­¹¹§¹m°ÕÜßjš°öw5õ`‘V[¨Ë\n wë\nwé «Š\nvêÀJ=Tä•ëv–U¥º*(¯¬¨hW~Ù\r¤×èANSÎrïŽ\0\0 \0IDATXQ8`0òÄ#J2—Ê$eYŽESÉÄf:õ€(¦&!ðÙ×Û6ÂeE>›KQnSf2<›Öਔ)&“˜HáEŠ9?Éõ=(J¡(…d¢$¥é¸À¥Y:ÉÒIŽIqlšab<›âé”Äm‰TF`²¹Ä3Y‘Û’„MIÈFå͘œ²w÷õØPÙÃ\\fû¡É›·Ôëê»?ÿ3ê^Ûœ÷8¦ÜVçˆu°·ÃÖÝj±µtš\r½¶žÆNGSgo½©¯Áè¨oé° 4ut×Ô4´ô×7;ê[¶šfóéFsm‹ál­½¥µ»¾±«¶ÑÞlr´ZÛlwß~wž*‚Ê\nô•ùù;óu; òwëu;! Êõ@E>X™VêÀJ=P™VêJ=¸ ÔUêJªvi <\r¨=pàîÉ¡a…`Î ©ã÷?š}è± |üñ\'.<ô`\"™•ÄdL:ã·$>•²Q)«HYEÚŬ$mŠ|Fƒ!<Ž\n$ž£[&q…@$ ‘LaÉx.VÓdŒ\"b£È8EÆY:ÁQ IqL’e“4•`¨K¥v“¥Ò,“á„-†ßä„,\'dY6)‹›©økËS‡ÕÐÜy[áí^PoªÛNÞRÕkê|îe‰D&|s½3#–Q§qÐeèïk´Ø›MÝí]\rÍ–ºFsM½ñÔ¹Žgji?uÖtºÆpòt{õéγuÆ3õÖº–®ÚæŽ3uƺ&K}‹©¦ÙÚdî8g´L4ÖÙ´;J‹u; tùù•úEú]…º…ººŠb]yT¦Ï+‚4…Ú’|m±,Ó‚åZ¨‚Ê  ´P_©×Wé¡òò’ÝPa‰‚4  Ñë4…\ZMFSªÛ{Ï=½¦1D=?ÿä惻ÿÁGxp+µ“SQ)Í3Q‘‹ólBƒ¢<Ž‹$)㸈a9Òxt{µBDi2Çr’¦R ™â¨´ÌlJtšcR—¢ÙÇfY&%p–Nò\\F¶h>ÍpiIÜ’„Ídôæ§G,m¶ý·Ñi\nñŸªäv’ÞÌ9ÉõW.}ë_9Š *4p[ÆÜF—«µ¿¯ÙÒÓdìjl174ÏÕ™j\Z皌gš;N5šN5ØêZºj›­5MgÌç\Z;Î4˜\Z\r¦F£¡ÞX{¢¥î¤Åfœí[/ÝuÔí*ÑV‚åúʨªª*ª\n€Š ¬,ÕƒEº=X”@Ú,te€®ŠŠ v‚•%à® ¢\0ªÒeùPyYÁ®]…·•é+ËKvj ‹5z­F¿C£Û¡)ÔÝ~×>ssËhï@dÕÿHö¡óé­lvK”%Y‰i`TD0 %%f1”Å1Ã8” B!…&c §ˆM$i*EižÙb©,Om\ndZa³“¢©C§9z“£Ò\"•â¨„,§Ø Å¥.%pé„ò\0ì\'§\\ó=Žƒ»ªmõ½—_ͧ¥ÞÊ=¤ªªê\rõò_/~÷©žÏ“Äêu¯Oö¸ûں햮–ŽÎÆæ®ÆsmCgM“õ\\‹ål«ù\\kg]kW}«µ¦É|ºÑt¶ÅÒhj:ÛÞXkÞ·¿æèQóÔ±2Íß}ܤÉÛ©+t`E>X©*Šò«Š ²¨ªP[Q¤­Òí(ÕA%:¨ °Ô–hµÅZm1\0”@@)ëÀ2=P¡* ¼²¨*¬Ô…ù»Š‹ª\nó«ôPeaÁž¢ÂÛÊÊöï΋4\0¨É4ùšÛÝÝÛe\'üèÑÍç5(, ¨‚qT PÇE— B!q…&c,gˆ8K\')<ÁцNÓD’§3™–è,K&xn“¤S8™`¸ÏÇ>Êq1š‹sB†çÓ’ö­D¼‹¡¹ÑùÆ 2óéû?ý—ŸÿQýßòmo-PÕ×®¿øéo>“yjÉrËtÐíër\ZíÝÍFs}›©®Õ\\Óf:—ÛÌ5íÖZƒµ®Ã|¶Íp¦­åTGÛÓ‰“¦#Çm‹áÀcþàCuíS\Zí\Z`·ªÊq]\0í,ÔWêKu@q¾¶´¨Ô ¶‹!°Ð@ \0lÓ\rAe XªÕy¥:myŽq=X–¯«ÐCåz¨<_W¥‡ª\nô»À¼J¬,(ØUX¸³¸ø¶\"ý®²’;4€N£4…: ¸àøñj\rsH„G… qTBQÅe—I2ÊPq†ˆqTò£„ÇÐIŠLRx‚!’<‘â¨$C\'q2†±qVIqrìþŒÅÓ‰Äùp˜\r…(ÂÜ·˜h¨®ûücŸùÜß~(ºõцõÖ‡ÃMU½¡ª×Ô_|ûO§Ÿþ˜ðxÂ_ꟙîq9]¶¦v㹆Ž3\rí§\Z;NÕwœj4Ÿm3i7Ÿê0í4ÕÚkï3»·££y~f*ƒÏz6íŒì:تÑTBúÝz¨²¸p—ªÔ•:°LæCÅ@I¾¶T–AP¨-€RP»MtŽq\0( *Óé*õP¥ªÌ‡Ê!m‰,ƒ€RX¦‡Ê! Ô–ƒÚr=TU ßY¨ÛY•ßè«òõ{J‹ï(¯Ü—W\\©A\rf±ˆ€Â0DÂQ Æ„LÊÙ‰+4Ïj–Lx”$b$céMÆh:J²1ZˆñJ*™=/Š²wÝ71>ÓØhššY÷(ŸÛXo,†®Ó‡O}bóñÇ” ¾©åÿ9)n{/ØÍí]Ó·TõšúîÞ{*ý̃Ô#¡1ÿ˜ixÄäèi2vÖ´O6¶ßW×q¼Îp¦­ùdGÃ)só¹žsÇzNq[–çg·(á«ð–CŸëŸHži›Õ€{wäUé´åz°D–APUèu¥:°@AÚ\"Pœ#w›8°‹A ø`\0P\0”y¥z B§-/€ªô@E®LèÊt@iNìùº\nX–¯«(Òï*+ØSTx›¾`·^·»8ÿö|ý\r\Z¡qTÀQ ‰hXÀ!DŒPLˆ(†F <Ž¡Q •I\"F‘Ixœ\"“ ¤(…¤øx,ÍsŠgqmxtº¶Å|ädÝÑêúññ%ŸØðËë‘••ÐÒ‚o¸o¼¹Ö@oP„ óýóê9ÿ¸¾}>߇Œo×TõšúËï¾ó§–zW\'MÖ³ÖZSë}Íu÷œm«n:s¬á\\uÛÙꮦºñÑ~ÎãyØ!\"~c*ü/®Õ§ÆÖ>Õåäî8Ö¥öèwA…`©(,ЕäCÅ: ð#lk9¯Ô–@@9\0”€`i^^A^^‚P!\0€`1”y¥P¡ƒv@™,ÓA%Û\0Šu@i>TþÑ_\n ª|¨¼0¿\nЖCàN´ Жë\nwk0”%0Ey “0DDaÆ— <Šc\nÆp$J`\nGQDB‰$b#ɨ\"eSÉûIŒ™]líè<~ª¶útcõé溳Áл4X\\ô¯¬G–Ö ޅùµ±‘™>›sɽü¥Çÿu¦wöÿùGõƶœÿ×Qˆ7o©7oݺ¥ÞÚ>Väæ{êåñ¾fWÝ¡c­­é¤ñô‘¦SÎÕŸ2‡×â\"ÿYJú2.}ƒ¿åcŸß¿>èûôàò\'-#©Ž>\\SxL£Ù …ºz°LëÁ’|¨4\'^P æyÛ¦¬Ët`@‚@*ÒëJA°Ô–l×F B«)òJ·¹Þv’Š ¨ \0ŠòõeùPyNïz \"çæ:°¢H¿{»6¨HP11L‚Q E$SL&09—¾*J2…)Q)+K©µUÿð ÛÐÖilï2›çêõíÝç\Z;kë-=V×ìØêÒ¬/·wue%´äñ/Ì®®.xûìÃÖfÛWŸ|~Õ¹š‹¨×r\'zÞøèt¾ÿýÊi¦~ ~þþ\'þ¹íÛ¿bÜ^Ù=Ú2xîàiÍŽÂ{O7ýVdókžØ×Ößñˆ/Œ_ql<혬©›¸óä fÇíZh7 -s³ÜžìPjË °\0Š>ôå\"\0(‚ ¾Ðæƒyù`^¾,É•Êœ›(ü2\0Ø6w\0(ÓAU PhË!°R –ƒºJ@W¦×•B`q®¬\0ª*ÔíÑ;u`e‘~·‡–ðAD‘XÆÐ(FÅLÆ0 Ey†–IŒgH)“|P¤“ë+á>ûp{›¹©±½­µ³£Ífl³›}Íí=Ǫ›Í&ç¤kybØ37³±¶¯.†W–Â+‹5OÀ·tt\r\ZjM_}úkÑ@Âe»úæÍkâÍÿK󇸩þà_¿>x¬þþ)/ÖÜÍÄž±æB“§Íå…»5šŠþ`úÉŸ®d¾5qˆüjð_»«ÅÕiìwLôÛÇ,ÆþŽÖ.‹±¿½ÑÚc\Z˜í³ õOMŒ..Ìm¬/7æüóã«ëËpÄG­Îm´Ô¶»ëÈçûÂ&ÿçßÚ˜D?xë†zK½yóºzK½‘ãú†ªÞRß¿¡^~O}ö¡/ ë?ÒÚWµmïQóîƒuÅ»CÅÇô»î)¾+Ü¥ÉÛ9µ‘L<ýó1îëÎðWí+ÿÒî¾Ð;šÖÝÖ¢îÊÓîÔC•ÐÎÿÃ5På:°sŠ.Õj  H äçiõyZ½È´ù:¨Š>ô™¢M£ä£û·=,ÓC•¹x‚Åy@™¬\0ªý.¶BUió*@Ý.Ø¥ƒª4A˜ DØ@„\rE¸H„CQ!d‚Vr¿l|xoËÔÞk5\rØ:VÓ Í:lítZ;»­ƒfƒÝ`°µ´tÚ{ÝÃóŽ.W¯uxdhzz³ìñ.Ï­Ï/O»—ÖV` æ–¦W{ ¶½·ë¹ïl‰3¡CËñ§þWõÚÿq›×Õÿúí›?þ¯×ñ“öœíoÚy¬mçÑæÝGn¿ïLÅáê²{Wº\'ïmùvhn×€î<Þ«<öÒ,÷;/õ,þ‹}â«SÒäЀwè ª|¨\\§-µe@ÞöRKµÚR(×j‹s‘C›W\0hóµyú¼ºy:-\0Ey;ò?*›\0P\0Û¹o(ǵ*Òƒ%º\n(ÒA% X\n\0eZ°\nvåC»óÁ*®R V\0ÐN¨‚ \nM0̆>sÁ0 Ã<Šò$#²Œ4;µd5÷µ5uZíö®{—»×6Öm´˜vÛPWg¿Åähm1w˜ºMÖA{»»k¸Ç:ÜÛ=ìvÍÎM/¯-û¦\'<3c‹Kó¿Ÿ„ÃŒÓ1|æ¾S»+öüç÷~ùì\'^@Öï_psëÓTŽëm¹©þî/ï}õûúâ7~ñfÊ4{ÚöÕ¶Þy¦æöã÷í>r¤üÀ‘Ò{–ÞuGÁÞ|Í^<^}ßðYÃêúÙEö…îµçÌO¸Ú{dD³ã. ¯¨È2P[¦·\r:/¯H§«\n­¶\0JrÁC«Ñåi 0/„\nóò\nrzÏM,‡rá\Z(Ñj‹¡í`W…z°¤*ƒ´E¶‹A°\\›Wh+ó€J@[jË ü\n]A%–ëÀJªÐD! ó¡ŠpÁâêjØ54m5÷\r:&úzÆÝnG·»Û2dëtÚ;‡­†>«¹Ïlêé´ô˜;»ÍÝÎ!÷À€Û`èíhuôX]“#óËó«Óžnëàä˜\'$q„_]òŸªi(ßu[áŽüç>ñåï}ãåGÒ_ö®l®,$ŸýÌ‹êõÍú¦úµþû™¯ÿñ+/üµî¾ÞRpË=5ûNÝs¼ºêðáÊ}Ê÷í/Þ¿³ð@qþ‰ÃG†;,¸Ý>PïC¾dYþ´iêSc³i\nNh4·ë =ú]ÚJ¶Ô–åL9Ì-Ë€¼â<°Km>°CìÐçíÈÏÛ‘Ÿ³(€€R(¯ È+µe ¶D–Ú’¼¼\"*Ëy‹(Öƒez° Ò–äòbΚtÚ\n¨‚ÀJªÐùºzp¤­µå\Z8Ì`Ã,E),›\\Z\nY;{{F{{Fú&úzÇìÝ#9ôöŒöõŽÚ¬ƒfSÑÔe4Ym]½öž¡á±sçš[[mfc¿«bftÞ»âï³÷v¯­„Q˜#q©©Õ•îÚ¹÷0¯P€£Ï=ûƒÏ?óR<þÜü\\rqžW¯oWÅ?ýþO<ý“O|ñ±ô¿Ý}{ÓÞÒ£Mûjjî<~â¶#GvÝ{´êÀ’}wÞî?~b¬Ù@{3öñÇ·Ó­#[ÃÁg»§7ö‘šwi€Ý PAz 2×Á€ÀbT€:ýöÊP •‚`qŽh`‡Òæ:|Å€¶Š `»’ ‹®Ò`±*‡€R=P‘¯-ו:°*  \"ws!X^\0Uéu;sY*@m9¤­‚´U:m•Ã8áp\\œ™YµwŒ8gGfûÆú{G#ÎÁ±ÞWw—³³sÀjuZ­Vk_NÎ]6GO÷à¨k¶®Ñx¶¦£¹Ùj1 9F}KÁ©Ñ…¶ÛÂüÚÒ’/ ûnMñÎü=ûJ+÷iôUƒ«Ï<ùm,òÌ>«(_óF>AãËÈÿöCŸùÕãÏþ¥¦iõäé‘Æ3®ƒÇŽ”Ú_q÷eûï(¾k§î.\0ØÇþNc¯dŸüdÏô3Ãë_lØ<ÐwNlzÖ\05ÚÛôP•,Óé*óÁ*X å:¨ !°s‹òRP[– $`^1˜Wh µyzH[ Šs*€\"*Ôj‹  *t`eÎús\\¾† \n@[hËstë€Ò  ‹s-Ü z ²\0¨\0µe\Z˜’|!²·oÜåšìŸr\rÎ:&‡ûÜÃý#Îþ‘Á>W¯«Û6`1÷õö¸œýãsŸÙl·X6ë Ý64Ø?Ùij7ôž>ÝÔeœ;{ºujlyq~uy~5$öî;’_¶§dç¾’²;uw8 “¿øÁëxè‰õåG‚ðÓì3žG¯ßR¯¨êýOüÿ&½´I²êLïܳŸs÷%oîµWu74ƒÄ@ƒ4½VUVn•ûÍåæZ[7ÝÐ,0Œ\Z‹‘`ÐH!k$ÄÌtà¦%´`°%941E!>A®â”Z„˜ŒZY9Xóp r)t9ö6(u(õñ‰æèзP 4 D£+δٞÖk£¨½×ª;i«ÚoV¢f­×ØíÖª½r±]Úi•v:›+Û›µæöf­¼ÓªW{Íz\\©õ\Z¸¸Ýè¶\'¥ÎÙG\nÅ­ötpu:8¸2»^ÞiÁBZµýÛ]\0È{èô¥þ¯ÿûÇßûÏ<ù·‡WÞ~üé[O<ÿþ¿~÷÷ÿçÿþ¿w>øç7ßûýë½vO{öÍÍdž‹îÉekyçs\"Ÿ–yG_pq§ö• Íï]ˆßÝšý¬þäG«¼t¶þíý·/T_4Dš#—b——!!!!Aj.F.‚Å®C60Ò 4 4‘fdaì¨÷ïŠÇÍNLH H åÚPì2œPˆL4›cO±ˆŒ|Šƒ$ èÈÓƒ§£Þa«5i5ÆýÎ~·5ë4¦Q}ܪöË;­âv£RêìlÕ+;Qáb­^í¶êÛ›b¡]ÜnÔ«½j¥]Þí‹ún?jÏ\n…Ö¥Íú`pÔiLž¹òìÕçOŸAÌs˦3¬¬®øöÒþÍ?}ð³?¼øÂíãwöoÜš<~kÿÅŸþ«wþËk·þé÷þ×}go+/4w¿äY§–Ã9=›çÙE±á ¦XÚÂ…ò‹Wßx,¾µµ÷Aaÿk¾\\¿sô¥ŸjÁ€e õ ±T}1v v5ä¨\']ÕWI ¹ÇLΠÔ\"Ø€š@PÎÑ™\ZªÊsÆBLÆlÊ Ì,H H,zÜ×Dañ)v•šˆ©‡©Op@Q HȧLF×\'ñãÝö¤MúÑd4Øo7GÑî¨SÖŠòNkg«^-´j…èÒÙÒöf£Xè”v¢r!ªíô\Zåþn¥Ûhvw«R¡9ˆ\ZµáÅ‹år¹ÕFW¦WÎ<ð¨´ÒÜÊö‚n椑•A ûÖóë_ÿË«¯ÿúɧÞ>qsðø»×þüãÇ_ûøkó/ß|û÷|.î6^H{Œ@•¹ O…(\\1VóbÅâk\0,}ñâ³Û?Úšþ²pðáöþû§.|}úô/ÎW_t…àp—K#c>£ÁF>‚VXX:Ú„˜”s—@“2\rŲù»ãÑ`l0f+ö™…¨­¦¥¢Õ;”:ŒÙ”˜Œù¹{ùXó(\n°æ1äa¼?ö£Ñ ?é÷gQ4ŽZãncÒªÇÕR«RnUŠÍj¡U¾Ü,o¶7/Õ [ÍÂV½\\lWJÝb±S¬´ê¥v¯·÷Þ÷Å+“k£Þ¤\\®–J•³^\\^¼KçiÛXv¬5ʲ\\ϸþÀη^½ùÑGÿøæ?yêùŸ¯Ý\Z\\»=ý“_|ëw_}ç¿_ûòûwÝÛ9±vQâ…$[ÎÊLžgWåÒš±¶Àm²ÀÊùâŸnµÞ¾0úyýúß_¼·ºõʵ>Èœª˜¥Ä\'Ä„ÌDÔÆp^Œ?ík‚†\\ªÐ[ˆšJAÅHÇHÇÐÄÐTUÆØøô—D,ä\0I…JâÔUp˜±C£˜\"EÖg)\nˆ èq|0ìï\rû{ýÞ´×›vz“v{µ†­z¿±ÛUµ®ÛÕB§VˆÊ[­z)jUû­jw§½[ŽšµhЉËÛ•û?ÿí%Ÿ<º±?>¼p~ósŸÀ÷³†‘²¼ï¬»æš¥/zÞrrº­7o~òÖÛ¿{OÜî¾[9¸5{å“—øµè/W6JŽq\"i®gô•”ÌfyvÍXY’Ëy¹ä²\0VîäúùèísñûÕ«¿=Óþë³ñž¹\rôÏ”fÄ#Xªí™)í}ZkJ| ¢Ù:Z:± – ¨1¨1Œt¤×é\nÁ•\0¢hµ21\'Ä=ÞBMDmÄwÏ™|fÕsÕåÙÔâÒÂêÉS÷l>réž“÷ZVhºy)²†ž5õ´ce+kê¡©§¤Hk2{rõüÏþ‡—¿ñÑ×¾þÛëÏürÿúÏš·*ƒÝxáÃÓ÷\0Zôí¥„™ eÊîš¿¾á¬/ÉÅ,M;8è°Îœmÿò•\ZÏ}|Ïö·Ÿzñ?\0íв’dMæsbpbq` ä*œEH×°©aÑy¥(²tbKb D\"2%:BsàÆ\ZWP92œúL³…æPè`ìp(f­x#¾ª>c.†¦rs83•M¡DÔÄØ£Ááh°?MG£Á,L{½i§=l6úõú XîÖëÃJ©Û¨ÆÍJ¯½ÛkV¢ÚnôÀÃ礟2ܤc\'NÒ2¶—öÃ|,XVJèI*C)Òœ%u™±ôœ©§M=eÈ„”!0Rˆ/üèÍß|ë­xý­ÿöÕW?¹ñü¯F×>Ø»ò“Áä\0¬r¹èÉ´¥‡¡È¦dvÃßX1–ó,—\"i›ä^hã|ô£‹³ª×õX÷ûÍáw¶Êð¢EB“:jÁ„ü\0\0\rIDATaØæÐÀмc+@Ä…ØAÈÄH§Qˆ0$0¨ ¨1¬qN uŽ¤NlŠ Nîð\r‡b›àùHTžA#>A.#Å.§þ\\ŸBúg…*‚,0ìïŽٰ?Ç{Ãþt<Úïõ¦QkÕ‡íÆ°QTJÝj9*šr·Rlw£z):ÿØ“¾¾N\\[ø–ê\"ÐEhê)ÓÈH‘<Ôõ$ç.S‚‡ºL2%yÂIbf\0HN&¯\\{áÖ/~øÜ7þÓsßø‡ƒg?úó×~þÂÓ\0ä“֪ǒ¡L…\"›7WŒåEc%\'ò)–¶H\n‘`þÑvüvõú¯\n?¿ðKihYBS&\ruèKì1â)÷D…=Ô Dt΋5214±&©F·¶&0ÒÖÕÊΰΉÁ¡¡j­<ø¹ª‡,µ¯«µ…Rï3¸á – ØUd!R‹bLFW;íá8>ˆ{³q|0õ:Ó~kÒÞ4+½Z¥[«övËQ«×*Ýr±]+v£ÝQT2©ëI…’yœ8&ó\rá áKîKæIpî1‘FZ—))’’‡ŒùÂL˜8_¸Þ™½Ù9¼ÙyüvÿúÏ¿ôákñq:{‚T‚fS,ÄI\'׬Õ5k5\'—’\"Є…Œs@[‰®ÞŽ¾ôÛÂôæùÆ+@[4‡ÈÄ\'hN® ²ñæŽ-15)µ(1”sÉ b\r¨1Mš¦C(å@©j*™£l3Š=ŒÜ;#‘Oy4ó—ÌÅØ¡Øå4`( ØSµfÌÆHgÄaÈÓÑÕÑàp2<œ†Ñt:8ê·fÃö¬ßš4+½V½_«t:ía­ÚÛ­tkÕAµÐéT‡ÚèîSª†•<”4a„ÎB)CˆÆ|É<]OP0‘zŠË¤à¡`>—I€waЙ½UŽÿª2þ›ÊøæäÆûýî_\0óÙb‚¦“0‘—ùŒÈmØ«ËÆbN_X*ä \'[h¹{åÝÙK·¯Ý^ú£hËL, âjÄ¢ÄWEQ«\n†6#†¦Òðµ8±tbcÈd\Z¤@£\0\n\0u\0-„t\rë\0ÍV™8 ÍC ù;ˆÚ„ØŒù@3µ!±0s8WO’«•ï!ÄÄØP’¡D>ÇGÓÑÕAöÔéE³a¯ßŽ;Í~»Ñ‹ZÃÝJ·¾Û¯×ºµZ¿Qî6 V¡³õXÅ’i§9 KpêKîë\"àÔU±ÉCC¦t=©ë ))Å2@ÒΟۻq³Ð}k»óƒúþ{GOÜN-—€–Jò¼GÂ$NæX&/óëÞú‚¹”•¹”Ì,e @çY -õ®¼{ô•¿«Þän 60I«‘[±4%rb䪗ÇDÛbÔâÄ`P`H Ä\02MJEøŽf:€:ÄŽZô9õ\n(\nÔžIˆ‚fOC\"si›ç\Z0´9\ró)u2)¶9õ)tòÀ8>š gã+ãxoïãƒa´×ëŒÝqÔîwÚƒF½×¬\r:Í‘bÜõR»¾Óª^ÞíÕGw­ÝÅp‚Ó€ŸS_¡ä …: u‘”<4dRÊPÊó@ðPI.Ó\0å\0Ùˆö¾¿Ù~ã±Ægko5¢o|·alø4ã¡0ËsK|aÝ^;án,è‹Y™KëŸ%,š0eh ‡ÏþäàËÿvãÌ!\0«\0-P’dÄCÄ£Ô9Îl˜JÜ`ÈeÈEÚÜ[AP(¨Æ©ÆFç­èèÞ âX¹œ%Ùœ’;‚ø»J–Rb¥º¨\ržR‹3›`ƒ`)Rˆ,†m:ç×ý=µÎŒãƒÉðpÔÝ[{Qk<èNûÑ(LãÁ^Ôž´›£¨5îTõR»Vlí\\ª´Êѹ‡7%÷ñ ›WœbÓ@€S_°@Ñ#%éòyû‡\ZÍ\0²ÜŸ½Qî¾y®þÆåæ_=vñi\0–,œ÷P˜ÀaNä׌µ\rc}Õ\\ˉŜȧXÒ%¾}ƒ§ÊÏžºùìËÿ°Ó\0/–ãš/iÀˆG¥r šÙ*_Š4KÙ¯\nŽƒs‹\0A I±\riAºZaÔVr‡lpìÍVþ€Rñ¸“zPÚ÷qêÌ!ÄU}-˜\'¨Ë©&£«ñ`ï`vmúøhpØoͽ^sÜkãÞ,ìõ»{Q´×éÌê»ýNuجôÊ;­âv­RØݼ¸³°|ÒÒCƒ’&KPâì 0â á3ær0‘ ,`\"”FÚÔCC\ZN”mǯ–Z¯_¨ÿåví{¹Å\0ri}ÍÇÉI-[+§ì“§Ì%±šãË9‘OÓ´‡ Mš ÿÒKŒzßÚ\n‹§$MpêêÄgØæÄâÄ¢ó\0Ï¡s ¸†&Ô† ‚!#P (±& Ôµ4¬_•!¨Í”†GFÁ‚9pCG…]r)R6ãœØª3j¨4 ÇŠ¡‰ $ØÀÐqÿ`6¹6ŠÆñQÜÛïwöÛõq§÷£É ;Ug4Øö÷ºíQ{wP/õJÛÍÖÖåúæ¥j¥Ô¡Ô\"!y‚ Cõý|J=DMBlÎ=Æ\\.C®„úR†˜\0&‹¥ç½ï\\,}£Û{€“YñHèoY.Üe­ŸvNœv6ôå _H°”Ïu-êsìÄ*¼Ï-KI’1Ÿ3[P›`C0ï80¦t‹@S}+‚¤YH3°&±&5@ Färµ+*éCýŒx9wB”s—‹˜Ÿ®ûؽ#dß™Ê+Ô•4 ØUŽ§.Ã&Å6¯Æñþhx0ŽFƒÃn{2ê_é5‡ýÖhÔ)l\röãÞ¤ÛŽ›µ^½Ú+ÚۛͭËõËÊ•í¶ae((ñK0œ·uáÑ‹[›E!m*<ÁCÁ’‡{ˆ¨I¨¢à F!|E½q0õN-ÛŽ¾VÝúòÙ\'&\\ ùJ@r–_³Ö7œkÖúª¹–ã«Y¶’f‹É8(°±\'4ËÆ}…œ„\' )ô N¨ƒR\0©¤gDu•Òƒ€C ‘f`$4¨ÐCû5:B:„#‘Â&PP$].‹a›a›a“3aA¨Ž¨N©¥R–”|Öö•g±ÇØ`D-÷.8˜=1èîõ»{ãá•^4ëv¦íÝA³Ô÷ö¢Ö`2>‡ñþ ·?\\i7†Ýn©Pß¼¸sùÒιÇ.]8¿ùè#çWWN2ébî#jî*HQù.ABŽ}Ftïý?ðÅÀÏJ 4wõñ$M0œ’4ɱψOI£Å\".) %O¾Z.=a8÷„|1 ©4M¯Ù+ÖÚ†µ±\"W–øÒ²¾”ù ˺(°‘«#G Ó⛇qýOwb%¶)7ùj‚!dB(•¿¥R„tˆ8FCó8d3¯µ†?•Š˜r³°ƒˆ{¾9÷0ž7û©¨ÀšS—ÍÇ£%¨M‘¡Dp5Ÿ²A?š‡ƒîž¡zq7\Z·êqÔ\rãýAéM+…Ý/žyäþû’ùÊQ%8 (¤(¤p>9N0ä2æRêÍ?q÷v¹pU×O„\"Ÿ é4Ï,™KÎúª¹¶¬¯äYnÙX\\”ù Ë4é`Ï$žA=N]F100% because +-- some titles belong to more than 1 category +-- + +CREATE VIEW sales_by_film_category +AS +SELECT +c.name AS category +, SUM(p.amount) AS total_sales +FROM payment AS p +INNER JOIN rental AS r ON p.rental_id = r.rental_id +INNER JOIN inventory AS i ON r.inventory_id = i.inventory_id +INNER JOIN film AS f ON i.film_id = f.film_id +INNER JOIN film_category AS fc ON f.film_id = fc.film_id +INNER JOIN category AS c ON fc.category_id = c.category_id +GROUP BY c.name +ORDER BY total_sales DESC; + +-- +-- View structure for view `actor_info` +-- + +CREATE DEFINER=CURRENT_USER SQL SECURITY INVOKER VIEW actor_info +AS +SELECT +a.actor_id, +a.first_name, +a.last_name, +GROUP_CONCAT(DISTINCT CONCAT(c.name, ': ', + (SELECT GROUP_CONCAT(f.title ORDER BY f.title SEPARATOR ', ') + FROM sakila.film f + INNER JOIN sakila.film_category fc + ON f.film_id = fc.film_id + INNER JOIN sakila.film_actor fa + ON f.film_id = fa.film_id + WHERE fc.category_id = c.category_id + AND fa.actor_id = a.actor_id + ) + ) + ORDER BY c.name SEPARATOR '; ') +AS film_info +FROM sakila.actor a +LEFT JOIN sakila.film_actor fa + ON a.actor_id = fa.actor_id +LEFT JOIN sakila.film_category fc + ON fa.film_id = fc.film_id +LEFT JOIN sakila.category c + ON fc.category_id = c.category_id +GROUP BY a.actor_id, a.first_name, a.last_name; + +-- +-- Procedure structure for procedure `rewards_report` +-- + +DELIMITER // + +CREATE PROCEDURE rewards_report ( + IN min_monthly_purchases TINYINT UNSIGNED + , IN min_dollar_amount_purchased DECIMAL(10,2) UNSIGNED + , OUT count_rewardees INT +) +LANGUAGE SQL +NOT DETERMINISTIC +READS SQL DATA +SQL SECURITY DEFINER +COMMENT 'Provides a customizable report on best customers' +proc: BEGIN + + DECLARE last_month_start DATE; + DECLARE last_month_end DATE; + + /* Some sanity checks... */ + IF min_monthly_purchases = 0 THEN + SELECT 'Minimum monthly purchases parameter must be > 0'; + LEAVE proc; + END IF; + IF min_dollar_amount_purchased = 0.00 THEN + SELECT 'Minimum monthly dollar amount purchased parameter must be > $0.00'; + LEAVE proc; + END IF; + + /* Determine start and end time periods */ + SET last_month_start = DATE_SUB(CURRENT_DATE(), INTERVAL 1 MONTH); + SET last_month_start = STR_TO_DATE(CONCAT(YEAR(last_month_start),'-',MONTH(last_month_start),'-01'),'%Y-%m-%d'); + SET last_month_end = LAST_DAY(last_month_start); + + /* + Create a temporary storage area for + Customer IDs. + */ + CREATE TEMPORARY TABLE tmpCustomer (customer_id SMALLINT UNSIGNED NOT NULL PRIMARY KEY); + + /* + Find all customers meeting the + monthly purchase requirements + */ + INSERT INTO tmpCustomer (customer_id) + SELECT p.customer_id + FROM payment AS p + WHERE DATE(p.payment_date) BETWEEN last_month_start AND last_month_end + GROUP BY customer_id + HAVING SUM(p.amount) > min_dollar_amount_purchased + AND COUNT(customer_id) > min_monthly_purchases; + + /* Populate OUT parameter with count of found customers */ + SELECT COUNT(*) FROM tmpCustomer INTO count_rewardees; + + /* + Output ALL customer information of matching rewardees. + Customize output as needed. + */ + SELECT c.* + FROM tmpCustomer AS t + INNER JOIN customer AS c ON t.customer_id = c.customer_id; + + /* Clean up */ + DROP TABLE tmpCustomer; +END // + +DELIMITER ; + +DELIMITER $$ + +CREATE FUNCTION get_customer_balance(p_customer_id INT, p_effective_date DATETIME) RETURNS DECIMAL(5,2) + DETERMINISTIC + READS SQL DATA +BEGIN + + #OK, WE NEED TO CALCULATE THE CURRENT BALANCE GIVEN A CUSTOMER_ID AND A DATE + #THAT WE WANT THE BALANCE TO BE EFFECTIVE FOR. THE BALANCE IS: + # 1) RENTAL FEES FOR ALL PREVIOUS RENTALS + # 2) ONE DOLLAR FOR EVERY DAY THE PREVIOUS RENTALS ARE OVERDUE + # 3) IF A FILM IS MORE THAN RENTAL_DURATION * 2 OVERDUE, CHARGE THE REPLACEMENT_COST + # 4) SUBTRACT ALL PAYMENTS MADE BEFORE THE DATE SPECIFIED + + DECLARE v_rentfees DECIMAL(5,2); #FEES PAID TO RENT THE VIDEOS INITIALLY + DECLARE v_overfees INTEGER; #LATE FEES FOR PRIOR RENTALS + DECLARE v_payments DECIMAL(5,2); #SUM OF PAYMENTS MADE PREVIOUSLY + + SELECT IFNULL(SUM(film.rental_rate),0) INTO v_rentfees + FROM film, inventory, rental + WHERE film.film_id = inventory.film_id + AND inventory.inventory_id = rental.inventory_id + AND rental.rental_date <= p_effective_date + AND rental.customer_id = p_customer_id; + + SELECT IFNULL(SUM(IF((TO_DAYS(rental.return_date) - TO_DAYS(rental.rental_date)) > film.rental_duration, + ((TO_DAYS(rental.return_date) - TO_DAYS(rental.rental_date)) - film.rental_duration),0)),0) INTO v_overfees + FROM rental, inventory, film + WHERE film.film_id = inventory.film_id + AND inventory.inventory_id = rental.inventory_id + AND rental.rental_date <= p_effective_date + AND rental.customer_id = p_customer_id; + + + SELECT IFNULL(SUM(payment.amount),0) INTO v_payments + FROM payment + + WHERE payment.payment_date <= p_effective_date + AND payment.customer_id = p_customer_id; + + RETURN v_rentfees + v_overfees - v_payments; +END $$ + +DELIMITER ; + +DELIMITER $$ + +CREATE PROCEDURE film_in_stock(IN p_film_id INT, IN p_store_id INT, OUT p_film_count INT) +READS SQL DATA +BEGIN + SELECT inventory_id + FROM inventory + WHERE film_id = p_film_id + AND store_id = p_store_id + AND inventory_in_stock(inventory_id); + + SELECT FOUND_ROWS() INTO p_film_count; +END $$ + +DELIMITER ; + +DELIMITER $$ + +CREATE PROCEDURE film_not_in_stock(IN p_film_id INT, IN p_store_id INT, OUT p_film_count INT) +READS SQL DATA +BEGIN + SELECT inventory_id + FROM inventory + WHERE film_id = p_film_id + AND store_id = p_store_id + AND NOT inventory_in_stock(inventory_id); + + SELECT FOUND_ROWS() INTO p_film_count; +END $$ + +DELIMITER ; + +DELIMITER $$ + +CREATE FUNCTION inventory_held_by_customer(p_inventory_id INT) RETURNS INT +READS SQL DATA +BEGIN + DECLARE v_customer_id INT; + DECLARE EXIT HANDLER FOR NOT FOUND RETURN NULL; + + SELECT customer_id INTO v_customer_id + FROM rental + WHERE return_date IS NULL + AND inventory_id = p_inventory_id; + + RETURN v_customer_id; +END $$ + +DELIMITER ; + +DELIMITER $$ + +CREATE FUNCTION inventory_in_stock(p_inventory_id INT) RETURNS BOOLEAN +READS SQL DATA +BEGIN + DECLARE v_rentals INT; + DECLARE v_out INT; + + #AN ITEM IS IN-STOCK IF THERE ARE EITHER NO ROWS IN THE rental TABLE + #FOR THE ITEM OR ALL ROWS HAVE return_date POPULATED + + SELECT COUNT(*) INTO v_rentals + FROM rental + WHERE inventory_id = p_inventory_id; + + IF v_rentals = 0 THEN + RETURN TRUE; + END IF; + + SELECT COUNT(rental_id) INTO v_out + FROM inventory LEFT JOIN rental USING(inventory_id) + WHERE inventory.inventory_id = p_inventory_id + AND rental.return_date IS NULL; + + IF v_out > 0 THEN + RETURN FALSE; + ELSE + RETURN TRUE; + END IF; +END $$ + +DELIMITER ; + +SET SQL_MODE=@OLD_SQL_MODE; +SET FOREIGN_KEY_CHECKS=@OLD_FOREIGN_KEY_CHECKS; +SET UNIQUE_CHECKS=@OLD_UNIQUE_CHECKS; + + diff --git a/jOOQ-test/src/org/jooq/test/mysql2/generatedclasses/Keys.java b/jOOQ-test/src/org/jooq/test/mysql2/generatedclasses/Keys.java new file mode 100644 index 00000000000..4e074f7e281 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/mysql2/generatedclasses/Keys.java @@ -0,0 +1,49 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.mysql2.generatedclasses; + +/** + * This class is generated by jOOQ. + * + * A class modelling foreign key relationships between tables of the test2 schema + */ +@SuppressWarnings({"unchecked"}) +public class Keys extends org.jooq.impl.AbstractKeys { + + // IDENTITY definitions + public static final org.jooq.Identity IDENTITY_T_IDENTITY_PK = createIdentity(org.jooq.test.mysql2.generatedclasses.tables.TIdentityPk.T_IDENTITY_PK, org.jooq.test.mysql2.generatedclasses.tables.TIdentityPk.T_IDENTITY_PK.ID); + public static final org.jooq.Identity IDENTITY_T_TRIGGERS = createIdentity(org.jooq.test.mysql2.generatedclasses.tables.TTriggers.T_TRIGGERS, org.jooq.test.mysql2.generatedclasses.tables.TTriggers.T_TRIGGERS.ID_GENERATED); + + // UNIQUE and PRIMARY KEY definitions + public static final org.jooq.UniqueKey KEY_T_639_NUMBERS_TABLE_PRIMARY = createUniqueKey(org.jooq.test.mysql2.generatedclasses.tables.T_639NumbersTable.T_639_NUMBERS_TABLE, org.jooq.test.mysql2.generatedclasses.tables.T_639NumbersTable.T_639_NUMBERS_TABLE.ID); + public static final org.jooq.UniqueKey KEY_T_725_LOB_TEST_PRIMARY = createUniqueKey(org.jooq.test.mysql2.generatedclasses.tables.T_725LobTest.T_725_LOB_TEST, org.jooq.test.mysql2.generatedclasses.tables.T_725LobTest.T_725_LOB_TEST.ID); + public static final org.jooq.UniqueKey KEY_T_AUTHOR_PRIMARY = createUniqueKey(org.jooq.test.mysql2.generatedclasses.tables.TAuthor.T_AUTHOR, org.jooq.test.mysql2.generatedclasses.tables.TAuthor.T_AUTHOR.ID); + public static final org.jooq.UniqueKey KEY_T_BOOK_PRIMARY = createUniqueKey(org.jooq.test.mysql2.generatedclasses.tables.TBook.T_BOOK, org.jooq.test.mysql2.generatedclasses.tables.TBook.T_BOOK.ID); + public static final org.jooq.UniqueKey KEY_T_BOOK_STORE_UK_T_BOOK_STORE_NAME = createUniqueKey(org.jooq.test.mysql2.generatedclasses.tables.TBookStore.T_BOOK_STORE, org.jooq.test.mysql2.generatedclasses.tables.TBookStore.T_BOOK_STORE.NAME); + public static final org.jooq.UniqueKey KEY_T_BOOK_TO_BOOK_STORE_PRIMARY = createUniqueKey(org.jooq.test.mysql2.generatedclasses.tables.TBookToBookStore.T_BOOK_TO_BOOK_STORE, org.jooq.test.mysql2.generatedclasses.tables.TBookToBookStore.T_BOOK_TO_BOOK_STORE.BOOK_STORE_NAME, org.jooq.test.mysql2.generatedclasses.tables.TBookToBookStore.T_BOOK_TO_BOOK_STORE.BOOK_ID); + public static final org.jooq.UniqueKey KEY_T_BOOLEANS_PRIMARY = createUniqueKey(org.jooq.test.mysql2.generatedclasses.tables.TBooleans.T_BOOLEANS, org.jooq.test.mysql2.generatedclasses.tables.TBooleans.T_BOOLEANS.ID); + public static final org.jooq.UniqueKey KEY_T_DATES_PRIMARY = createUniqueKey(org.jooq.test.mysql2.generatedclasses.tables.TDates.T_DATES, org.jooq.test.mysql2.generatedclasses.tables.TDates.T_DATES.ID); + public static final org.jooq.UniqueKey KEY_T_IDENTITY_PK_PRIMARY = createUniqueKey(org.jooq.test.mysql2.generatedclasses.tables.TIdentityPk.T_IDENTITY_PK, org.jooq.test.mysql2.generatedclasses.tables.TIdentityPk.T_IDENTITY_PK.ID); + public static final org.jooq.UniqueKey KEY_T_TRIGGERS_PRIMARY = createUniqueKey(org.jooq.test.mysql2.generatedclasses.tables.TTriggers.T_TRIGGERS, org.jooq.test.mysql2.generatedclasses.tables.TTriggers.T_TRIGGERS.ID_GENERATED); + public static final org.jooq.UniqueKey KEY_X_TEST_CASE_64_69_PRIMARY = createUniqueKey(org.jooq.test.mysql2.generatedclasses.tables.XTestCase_64_69.X_TEST_CASE_64_69, org.jooq.test.mysql2.generatedclasses.tables.XTestCase_64_69.X_TEST_CASE_64_69.ID); + public static final org.jooq.UniqueKey KEY_X_TEST_CASE_71_PRIMARY = createUniqueKey(org.jooq.test.mysql2.generatedclasses.tables.XTestCase_71.X_TEST_CASE_71, org.jooq.test.mysql2.generatedclasses.tables.XTestCase_71.X_TEST_CASE_71.ID); + public static final org.jooq.UniqueKey KEY_X_TEST_CASE_85_PRIMARY = createUniqueKey(org.jooq.test.mysql2.generatedclasses.tables.XTestCase_85.X_TEST_CASE_85, org.jooq.test.mysql2.generatedclasses.tables.XTestCase_85.X_TEST_CASE_85.ID); + public static final org.jooq.UniqueKey KEY_X_UNUSED_PRIMARY = createUniqueKey(org.jooq.test.mysql2.generatedclasses.tables.XUnused.X_UNUSED, org.jooq.test.mysql2.generatedclasses.tables.XUnused.X_UNUSED.ID, org.jooq.test.mysql2.generatedclasses.tables.XUnused.X_UNUSED.NAME); + public static final org.jooq.UniqueKey KEY_X_UNUSED_UK_X_UNUSED_ID = createUniqueKey(org.jooq.test.mysql2.generatedclasses.tables.XUnused.X_UNUSED, org.jooq.test.mysql2.generatedclasses.tables.XUnused.X_UNUSED.ID); + + // FOREIGN KEY definitions + public static final org.jooq.ForeignKey FK_T_BOOK_AUTHOR_ID = createForeignKey(KEY_T_AUTHOR_PRIMARY, org.jooq.test.mysql2.generatedclasses.tables.TBook.T_BOOK, org.jooq.test.mysql2.generatedclasses.tables.TBook.T_BOOK.AUTHOR_ID); + public static final org.jooq.ForeignKey FK_T_BOOK_CO_AUTHOR_ID = createForeignKey(KEY_T_AUTHOR_PRIMARY, org.jooq.test.mysql2.generatedclasses.tables.TBook.T_BOOK, org.jooq.test.mysql2.generatedclasses.tables.TBook.T_BOOK.CO_AUTHOR_ID); + public static final org.jooq.ForeignKey FK_B2BS_BS_NAME = createForeignKey(KEY_T_BOOK_STORE_UK_T_BOOK_STORE_NAME, org.jooq.test.mysql2.generatedclasses.tables.TBookToBookStore.T_BOOK_TO_BOOK_STORE, org.jooq.test.mysql2.generatedclasses.tables.TBookToBookStore.T_BOOK_TO_BOOK_STORE.BOOK_STORE_NAME); + public static final org.jooq.ForeignKey FK_B2BS_B_ID = createForeignKey(KEY_T_BOOK_PRIMARY, org.jooq.test.mysql2.generatedclasses.tables.TBookToBookStore.T_BOOK_TO_BOOK_STORE, org.jooq.test.mysql2.generatedclasses.tables.TBookToBookStore.T_BOOK_TO_BOOK_STORE.BOOK_ID); + public static final org.jooq.ForeignKey FK_X_TEST_CASE_64_69A = createForeignKey(KEY_X_UNUSED_PRIMARY, org.jooq.test.mysql2.generatedclasses.tables.XTestCase_64_69.X_TEST_CASE_64_69, org.jooq.test.mysql2.generatedclasses.tables.XTestCase_64_69.X_TEST_CASE_64_69.UNUSED_ID); + public static final org.jooq.ForeignKey FK_X_TEST_CASE_71 = createForeignKey(KEY_X_TEST_CASE_64_69_PRIMARY, org.jooq.test.mysql2.generatedclasses.tables.XTestCase_71.X_TEST_CASE_71, org.jooq.test.mysql2.generatedclasses.tables.XTestCase_71.X_TEST_CASE_71.TEST_CASE_64_69_ID); + public static final org.jooq.ForeignKey FK_X_TEST_CASE_85 = createForeignKey(KEY_X_UNUSED_PRIMARY, org.jooq.test.mysql2.generatedclasses.tables.XTestCase_85.X_TEST_CASE_85, org.jooq.test.mysql2.generatedclasses.tables.XTestCase_85.X_TEST_CASE_85.X_UNUSED_ID, org.jooq.test.mysql2.generatedclasses.tables.XTestCase_85.X_TEST_CASE_85.X_UNUSED_NAME); + public static final org.jooq.ForeignKey FK_X_UNUSED_SELF = createForeignKey(KEY_X_UNUSED_PRIMARY, org.jooq.test.mysql2.generatedclasses.tables.XUnused.X_UNUSED, org.jooq.test.mysql2.generatedclasses.tables.XUnused.X_UNUSED.ID_REF, org.jooq.test.mysql2.generatedclasses.tables.XUnused.X_UNUSED.NAME_REF); + + /** + * No instances + */ + private Keys() {} +} diff --git a/jOOQ-test/src/org/jooq/test/mysql2/generatedclasses/Routines.java b/jOOQ-test/src/org/jooq/test/mysql2/generatedclasses/Routines.java new file mode 100644 index 00000000000..0ba456d6380 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/mysql2/generatedclasses/Routines.java @@ -0,0 +1,251 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.mysql2.generatedclasses; + +/** + * This class is generated by jOOQ. + * + * Convenience access to all stored procedures and functions in test2 + */ +public final class Routines { + + /** + * Call test2.f317 + * + * @param p1 + * @param p2 + * @param p3 + * @param p4 + * @throws org.jooq.exception.DataAccessException if something went wrong executing the query + */ + public static java.lang.Integer f317(org.jooq.Configuration configuration, java.lang.Integer p1, java.lang.Integer p2, java.lang.Integer p3, java.lang.Integer p4) { + org.jooq.test.mysql2.generatedclasses.routines.F317 f = new org.jooq.test.mysql2.generatedclasses.routines.F317(); + f.setP1(p1); + f.setP2(p2); + f.setP3(p3); + f.setP4(p4); + + f.execute(configuration); + return f.getReturnValue(); + } + + /** + * Get test2.f317 as a field + * + * @param p1 + * @param p2 + * @param p3 + * @param p4 + */ + public static org.jooq.Field f317(java.lang.Integer p1, java.lang.Integer p2, java.lang.Integer p3, java.lang.Integer p4) { + org.jooq.test.mysql2.generatedclasses.routines.F317 f = new org.jooq.test.mysql2.generatedclasses.routines.F317(); + f.setP1(p1); + f.setP2(p2); + f.setP3(p3); + f.setP4(p4); + + return f.asField(); + } + + /** + * Get test2.f317 as a field + * + * @param p1 + * @param p2 + * @param p3 + * @param p4 + */ + public static org.jooq.Field f317(org.jooq.Field p1, org.jooq.Field p2, org.jooq.Field p3, org.jooq.Field p4) { + org.jooq.test.mysql2.generatedclasses.routines.F317 f = new org.jooq.test.mysql2.generatedclasses.routines.F317(); + f.setP1(p1); + f.setP2(p2); + f.setP3(p3); + f.setP4(p4); + + return f.asField(); + } + + /** + * Call test2.f_author_exists + * + * @param authorName + * @throws org.jooq.exception.DataAccessException if something went wrong executing the query + */ + public static java.lang.Integer fAuthorExists(org.jooq.Configuration configuration, java.lang.String authorName) { + org.jooq.test.mysql2.generatedclasses.routines.FAuthorExists f = new org.jooq.test.mysql2.generatedclasses.routines.FAuthorExists(); + f.setAuthorName(authorName); + + f.execute(configuration); + return f.getReturnValue(); + } + + /** + * Get test2.f_author_exists as a field + * + * @param authorName + */ + public static org.jooq.Field fAuthorExists(java.lang.String authorName) { + org.jooq.test.mysql2.generatedclasses.routines.FAuthorExists f = new org.jooq.test.mysql2.generatedclasses.routines.FAuthorExists(); + f.setAuthorName(authorName); + + return f.asField(); + } + + /** + * Get test2.f_author_exists as a field + * + * @param authorName + */ + public static org.jooq.Field fAuthorExists(org.jooq.Field authorName) { + org.jooq.test.mysql2.generatedclasses.routines.FAuthorExists f = new org.jooq.test.mysql2.generatedclasses.routines.FAuthorExists(); + f.setAuthorName(authorName); + + return f.asField(); + } + + /** + * Call test2.f_number + * + * @param n + * @throws org.jooq.exception.DataAccessException if something went wrong executing the query + */ + public static java.lang.Integer fNumber(org.jooq.Configuration configuration, java.lang.Integer n) { + org.jooq.test.mysql2.generatedclasses.routines.FNumber f = new org.jooq.test.mysql2.generatedclasses.routines.FNumber(); + f.setN(n); + + f.execute(configuration); + return f.getReturnValue(); + } + + /** + * Get test2.f_number as a field + * + * @param n + */ + public static org.jooq.Field fNumber(java.lang.Integer n) { + org.jooq.test.mysql2.generatedclasses.routines.FNumber f = new org.jooq.test.mysql2.generatedclasses.routines.FNumber(); + f.setN(n); + + return f.asField(); + } + + /** + * Get test2.f_number as a field + * + * @param n + */ + public static org.jooq.Field fNumber(org.jooq.Field n) { + org.jooq.test.mysql2.generatedclasses.routines.FNumber f = new org.jooq.test.mysql2.generatedclasses.routines.FNumber(); + f.setN(n); + + return f.asField(); + } + + /** + * Call test2.f_one + * + * @throws org.jooq.exception.DataAccessException if something went wrong executing the query + */ + public static java.lang.Integer fOne(org.jooq.Configuration configuration) { + org.jooq.test.mysql2.generatedclasses.routines.FOne f = new org.jooq.test.mysql2.generatedclasses.routines.FOne(); + + f.execute(configuration); + return f.getReturnValue(); + } + + /** + * Get test2.f_one as a field + * + */ + public static org.jooq.Field fOne() { + org.jooq.test.mysql2.generatedclasses.routines.FOne f = new org.jooq.test.mysql2.generatedclasses.routines.FOne(); + + return f.asField(); + } + + /** + * Call test2.p391 + * + * @param i1 IN parameter + * @param io1 IN OUT parameter + * @param o1 OUT parameter + * @param o2 OUT parameter + * @param io2 IN OUT parameter + * @param i2 IN parameter + * @throws org.jooq.exception.DataAccessException if something went wrong executing the query + */ + public static org.jooq.test.mysql2.generatedclasses.routines.P391 p391(org.jooq.Configuration configuration, java.lang.Integer i1, java.lang.Integer io1, java.lang.Integer io2, java.lang.Integer i2) { + org.jooq.test.mysql2.generatedclasses.routines.P391 p = new org.jooq.test.mysql2.generatedclasses.routines.P391(); + p.setI1(i1); + p.setIo1(io1); + p.setIo2(io2); + p.setI2(i2); + + p.execute(configuration); + return p; + } + + /** + * Call test2.p_author_exists + * + * @param authorName IN parameter + * @param result OUT parameter + * @throws org.jooq.exception.DataAccessException if something went wrong executing the query + */ + public static java.lang.Integer pAuthorExists(org.jooq.Configuration configuration, java.lang.String authorName) { + org.jooq.test.mysql2.generatedclasses.routines.PAuthorExists p = new org.jooq.test.mysql2.generatedclasses.routines.PAuthorExists(); + p.setAuthorName(authorName); + + p.execute(configuration); + return p.getResult(); + } + + /** + * Call test2.p_create_author + * + * @throws org.jooq.exception.DataAccessException if something went wrong executing the query + */ + public static void pCreateAuthor(org.jooq.Configuration configuration) { + org.jooq.test.mysql2.generatedclasses.routines.PCreateAuthor p = new org.jooq.test.mysql2.generatedclasses.routines.PCreateAuthor(); + + p.execute(configuration); + } + + /** + * Call test2.p_create_author_by_name + * + * @param firstName IN parameter + * @param lastName IN parameter + * @throws org.jooq.exception.DataAccessException if something went wrong executing the query + */ + public static void pCreateAuthorByName(org.jooq.Configuration configuration, java.lang.String firstName, java.lang.String lastName) { + org.jooq.test.mysql2.generatedclasses.routines.PCreateAuthorByName p = new org.jooq.test.mysql2.generatedclasses.routines.PCreateAuthorByName(); + p.setFirstName(firstName); + p.setLastName(lastName); + + p.execute(configuration); + } + + /** + * Call test2.p_unused + * + * @param in1 IN parameter + * @param out1 OUT parameter + * @param out2 IN OUT parameter + * @throws org.jooq.exception.DataAccessException if something went wrong executing the query + */ + public static org.jooq.test.mysql2.generatedclasses.routines.PUnused pUnused(org.jooq.Configuration configuration, java.lang.String in1, java.lang.Boolean out2) { + org.jooq.test.mysql2.generatedclasses.routines.PUnused p = new org.jooq.test.mysql2.generatedclasses.routines.PUnused(); + p.setIn1(in1); + p.setOut2(out2); + + p.execute(configuration); + return p; + } + + /** + * No instances + */ + private Routines() {} +} diff --git a/jOOQ-test/src/org/jooq/test/mysql2/generatedclasses/Tables.java b/jOOQ-test/src/org/jooq/test/mysql2/generatedclasses/Tables.java new file mode 100644 index 00000000000..b9d4d98626d --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/mysql2/generatedclasses/Tables.java @@ -0,0 +1,122 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.mysql2.generatedclasses; + +/** + * This class is generated by jOOQ. + * + * Convenience access to all tables in test2 + */ +public final class Tables { + + /** + * The table test2.t_639_numbers_table + */ + public static org.jooq.test.mysql2.generatedclasses.tables.T_639NumbersTable T_639_NUMBERS_TABLE = org.jooq.test.mysql2.generatedclasses.tables.T_639NumbersTable.T_639_NUMBERS_TABLE; + + /** + * The table test2.t_658_ref + */ + public static org.jooq.test.mysql2.generatedclasses.tables.T_658Ref T_658_REF = org.jooq.test.mysql2.generatedclasses.tables.T_658Ref.T_658_REF; + + /** + * The table test2.t_725_lob_test + */ + public static org.jooq.test.mysql2.generatedclasses.tables.T_725LobTest T_725_LOB_TEST = org.jooq.test.mysql2.generatedclasses.tables.T_725LobTest.T_725_LOB_TEST; + + /** + * The table test2.t_785 + */ + public static org.jooq.test.mysql2.generatedclasses.tables.T_785 T_785 = org.jooq.test.mysql2.generatedclasses.tables.T_785.T_785; + + /** + * The table test2.t_959 + */ + public static org.jooq.test.mysql2.generatedclasses.tables.T_959 T_959 = org.jooq.test.mysql2.generatedclasses.tables.T_959.T_959; + + /** + * An entity holding authors of books + */ + public static org.jooq.test.mysql2.generatedclasses.tables.TAuthor T_AUTHOR = org.jooq.test.mysql2.generatedclasses.tables.TAuthor.T_AUTHOR; + + /** + * An entity holding books + */ + public static org.jooq.test.mysql2.generatedclasses.tables.TBook T_BOOK = org.jooq.test.mysql2.generatedclasses.tables.TBook.T_BOOK; + + /** + * A book store + */ + public static org.jooq.test.mysql2.generatedclasses.tables.TBookStore T_BOOK_STORE = org.jooq.test.mysql2.generatedclasses.tables.TBookStore.T_BOOK_STORE; + + /** + * An m:n relation between books and book stores + */ + public static org.jooq.test.mysql2.generatedclasses.tables.TBookToBookStore T_BOOK_TO_BOOK_STORE = org.jooq.test.mysql2.generatedclasses.tables.TBookToBookStore.T_BOOK_TO_BOOK_STORE; + + /** + * The table test2.t_booleans + */ + public static org.jooq.test.mysql2.generatedclasses.tables.TBooleans T_BOOLEANS = org.jooq.test.mysql2.generatedclasses.tables.TBooleans.T_BOOLEANS; + + /** + * The table test2.t_dates + */ + public static org.jooq.test.mysql2.generatedclasses.tables.TDates T_DATES = org.jooq.test.mysql2.generatedclasses.tables.TDates.T_DATES; + + /** + * The table test2.t_identity_pk + */ + public static org.jooq.test.mysql2.generatedclasses.tables.TIdentityPk T_IDENTITY_PK = org.jooq.test.mysql2.generatedclasses.tables.TIdentityPk.T_IDENTITY_PK; + + /** + * The table test2.t_triggers + */ + public static org.jooq.test.mysql2.generatedclasses.tables.TTriggers T_TRIGGERS = org.jooq.test.mysql2.generatedclasses.tables.TTriggers.T_TRIGGERS; + + /** + * The table test2.t_unsigned + */ + public static org.jooq.test.mysql2.generatedclasses.tables.TUnsigned T_UNSIGNED = org.jooq.test.mysql2.generatedclasses.tables.TUnsigned.T_UNSIGNED; + + /** + * VIEW + */ + public static org.jooq.test.mysql2.generatedclasses.tables.VAuthor V_AUTHOR = org.jooq.test.mysql2.generatedclasses.tables.VAuthor.V_AUTHOR; + + /** + * VIEW + */ + public static org.jooq.test.mysql2.generatedclasses.tables.VBook V_BOOK = org.jooq.test.mysql2.generatedclasses.tables.VBook.V_BOOK; + + /** + * VIEW + */ + public static org.jooq.test.mysql2.generatedclasses.tables.VLibrary V_LIBRARY = org.jooq.test.mysql2.generatedclasses.tables.VLibrary.V_LIBRARY; + + /** + * An unused table in the same schema. + */ + public static org.jooq.test.mysql2.generatedclasses.tables.XTestCase_64_69 X_TEST_CASE_64_69 = org.jooq.test.mysql2.generatedclasses.tables.XTestCase_64_69.X_TEST_CASE_64_69; + + /** + * An unused table in the same schema. + */ + public static org.jooq.test.mysql2.generatedclasses.tables.XTestCase_71 X_TEST_CASE_71 = org.jooq.test.mysql2.generatedclasses.tables.XTestCase_71.X_TEST_CASE_71; + + /** + * An unused table in the same schema. + */ + public static org.jooq.test.mysql2.generatedclasses.tables.XTestCase_85 X_TEST_CASE_85 = org.jooq.test.mysql2.generatedclasses.tables.XTestCase_85.X_TEST_CASE_85; + + /** + * An unused table in the same schema. + */ + public static org.jooq.test.mysql2.generatedclasses.tables.XUnused X_UNUSED = org.jooq.test.mysql2.generatedclasses.tables.XUnused.X_UNUSED; + + /** + * No instances + */ + private Tables() {} +} diff --git a/jOOQ-test/src/org/jooq/test/mysql2/generatedclasses/Test2.java b/jOOQ-test/src/org/jooq/test/mysql2/generatedclasses/Test2.java new file mode 100644 index 00000000000..f6b1508b848 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/mysql2/generatedclasses/Test2.java @@ -0,0 +1,50 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.mysql2.generatedclasses; + +/** + * This class is generated by jOOQ. + */ +public class Test2 extends org.jooq.impl.SchemaImpl { + + private static final long serialVersionUID = -364207339; + + /** + * The singleton instance of test2 + */ + public static final Test2 TEST2 = new Test2(); + + /** + * No further instances allowed + */ + private Test2() { + super("test2"); + } + + @Override + public final java.util.List> getTables() { + return java.util.Arrays.>asList( + org.jooq.test.mysql2.generatedclasses.tables.T_639NumbersTable.T_639_NUMBERS_TABLE, + org.jooq.test.mysql2.generatedclasses.tables.T_658Ref.T_658_REF, + org.jooq.test.mysql2.generatedclasses.tables.T_725LobTest.T_725_LOB_TEST, + org.jooq.test.mysql2.generatedclasses.tables.T_785.T_785, + org.jooq.test.mysql2.generatedclasses.tables.T_959.T_959, + org.jooq.test.mysql2.generatedclasses.tables.TAuthor.T_AUTHOR, + org.jooq.test.mysql2.generatedclasses.tables.TBook.T_BOOK, + org.jooq.test.mysql2.generatedclasses.tables.TBookStore.T_BOOK_STORE, + org.jooq.test.mysql2.generatedclasses.tables.TBookToBookStore.T_BOOK_TO_BOOK_STORE, + org.jooq.test.mysql2.generatedclasses.tables.TBooleans.T_BOOLEANS, + org.jooq.test.mysql2.generatedclasses.tables.TDates.T_DATES, + org.jooq.test.mysql2.generatedclasses.tables.TIdentityPk.T_IDENTITY_PK, + org.jooq.test.mysql2.generatedclasses.tables.TTriggers.T_TRIGGERS, + org.jooq.test.mysql2.generatedclasses.tables.TUnsigned.T_UNSIGNED, + org.jooq.test.mysql2.generatedclasses.tables.VAuthor.V_AUTHOR, + org.jooq.test.mysql2.generatedclasses.tables.VBook.V_BOOK, + org.jooq.test.mysql2.generatedclasses.tables.VLibrary.V_LIBRARY, + org.jooq.test.mysql2.generatedclasses.tables.XTestCase_64_69.X_TEST_CASE_64_69, + org.jooq.test.mysql2.generatedclasses.tables.XTestCase_71.X_TEST_CASE_71, + org.jooq.test.mysql2.generatedclasses.tables.XTestCase_85.X_TEST_CASE_85, + org.jooq.test.mysql2.generatedclasses.tables.XUnused.X_UNUSED); + } +} diff --git a/jOOQ-test/src/org/jooq/test/mysql2/generatedclasses/Test2Factory.java b/jOOQ-test/src/org/jooq/test/mysql2/generatedclasses/Test2Factory.java new file mode 100644 index 00000000000..90d0dc936cf --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/mysql2/generatedclasses/Test2Factory.java @@ -0,0 +1,41 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.mysql2.generatedclasses; + +/** + * This class is generated by jOOQ. + */ +public class Test2Factory extends org.jooq.util.mysql.MySQLFactory { + + private static final long serialVersionUID = -1427816631; + + /** + * Create a factory with a connection + * + * @param connection The connection to use with objects created from this factory + */ + public Test2Factory(java.sql.Connection connection) { + super(connection); + } + + /** + * Create a factory with a connection and a schema mapping + * + * @deprecated - 2.0.5 - Use {@link #Test2Factory(java.sql.Connection, org.jooq.conf.Settings)} instead + */ + @Deprecated + public Test2Factory(java.sql.Connection connection, org.jooq.SchemaMapping mapping) { + super(connection, mapping); + } + + /** + * Create a factory with a connection and some settings + * + * @param connection The connection to use with objects created from this factory + * @param settings The settings to apply to objects created from this factory + */ + public Test2Factory(java.sql.Connection connection, org.jooq.conf.Settings settings) { + super(connection, settings); + } +} diff --git a/jOOQ-test/src/org/jooq/test/mysql2/generatedclasses/enums/TBookStatus.java b/jOOQ-test/src/org/jooq/test/mysql2/generatedclasses/enums/TBookStatus.java new file mode 100644 index 00000000000..c19791f1474 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/mysql2/generatedclasses/enums/TBookStatus.java @@ -0,0 +1,35 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.mysql2.generatedclasses.enums; + +/** + * This class is generated by jOOQ. + * + * The book's stock status + */ +public enum TBookStatus implements org.jooq.EnumType { + SOLD_OUT("SOLD OUT"), + + ORDERED("ORDERED"), + + ON_STOCK("ON STOCK"), + + ; + + private final java.lang.String literal; + + private TBookStatus(java.lang.String literal) { + this.literal = literal; + } + + @Override + public java.lang.String getName() { + return "t_book_STATUS"; + } + + @Override + public java.lang.String getLiteral() { + return literal; + } +} diff --git a/jOOQ-test/src/org/jooq/test/mysql2/generatedclasses/enums/TLanguage.java b/jOOQ-test/src/org/jooq/test/mysql2/generatedclasses/enums/TLanguage.java new file mode 100644 index 00000000000..9c9c17bf03e --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/mysql2/generatedclasses/enums/TLanguage.java @@ -0,0 +1,67 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.mysql2.generatedclasses.enums; + +/** + * This class is generated by jOOQ. + * + * An entity holding language master data + */ +public enum TLanguage implements org.jooq.MasterDataType { + + /** + * English + */ + en(1, "en", "English"), + + /** + * Deutsch + */ + de(2, "de", "Deutsch"), + + /** + * Français + */ + fr(3, "fr", "Français"), + pt(4, "pt", null), + ; + + private final java.lang.Integer id; + private final java.lang.String cd; + private final java.lang.String description; + + private TLanguage(java.lang.Integer id, java.lang.String cd, java.lang.String description) { + this.id = id; + this.cd = cd; + this.description = description; + } + + @Override + public java.lang.Integer getPrimaryKey() { + return id; + } + + /** + * The language ID + * + * PRIMARY KEY + */ + public final java.lang.Integer getId() { + return id; + } + + /** + * The language ISO code + */ + public final java.lang.String getCd() { + return cd; + } + + /** + * The language description + */ + public final java.lang.String getDescription() { + return description; + } +} diff --git a/jOOQ-test/src/org/jooq/test/mysql2/generatedclasses/enums/T_658_11.java b/jOOQ-test/src/org/jooq/test/mysql2/generatedclasses/enums/T_658_11.java new file mode 100644 index 00000000000..7df026e936e --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/mysql2/generatedclasses/enums/T_658_11.java @@ -0,0 +1,46 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.mysql2.generatedclasses.enums; + +/** + * This class is generated by jOOQ. + */ +public enum T_658_11 implements org.jooq.MasterDataType { + + /** + * A + */ + A("A"), + + /** + * B + */ + B("B"), + + /** + * C + */ + C("C"), + ; + + private final java.lang.String id; + + private T_658_11(java.lang.String id) { + this.id = id; + } + + @Override + public java.lang.String getPrimaryKey() { + return id; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final java.lang.String getId() { + return id; + } +} diff --git a/jOOQ-test/src/org/jooq/test/mysql2/generatedclasses/enums/T_658_12.java b/jOOQ-test/src/org/jooq/test/mysql2/generatedclasses/enums/T_658_12.java new file mode 100644 index 00000000000..d3a8e891ac9 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/mysql2/generatedclasses/enums/T_658_12.java @@ -0,0 +1,55 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.mysql2.generatedclasses.enums; + +/** + * This class is generated by jOOQ. + */ +public enum T_658_12 implements org.jooq.MasterDataType { + + /** + * A + */ + A("A", "A"), + + /** + * B + */ + B("B", "B"), + + /** + * C + */ + C("C", "C"), + ; + + private final java.lang.String id; + private final java.lang.String cd; + + private T_658_12(java.lang.String id, java.lang.String cd) { + this.id = id; + this.cd = cd; + } + + @Override + public java.lang.String getPrimaryKey() { + return id; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final java.lang.String getId() { + return id; + } + + /** + * An uncommented item + */ + public final java.lang.String getCd() { + return cd; + } +} diff --git a/jOOQ-test/src/org/jooq/test/mysql2/generatedclasses/enums/T_658_21.java b/jOOQ-test/src/org/jooq/test/mysql2/generatedclasses/enums/T_658_21.java new file mode 100644 index 00000000000..c1b06350ed4 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/mysql2/generatedclasses/enums/T_658_21.java @@ -0,0 +1,46 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.mysql2.generatedclasses.enums; + +/** + * This class is generated by jOOQ. + */ +public enum T_658_21 implements org.jooq.MasterDataType { + + /** + * 1 + */ + _1(1), + + /** + * 2 + */ + _2(2), + + /** + * 3 + */ + _3(3), + ; + + private final java.lang.Integer id; + + private T_658_21(java.lang.Integer id) { + this.id = id; + } + + @Override + public java.lang.Integer getPrimaryKey() { + return id; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final java.lang.Integer getId() { + return id; + } +} diff --git a/jOOQ-test/src/org/jooq/test/mysql2/generatedclasses/enums/T_658_22.java b/jOOQ-test/src/org/jooq/test/mysql2/generatedclasses/enums/T_658_22.java new file mode 100644 index 00000000000..176a436c4e5 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/mysql2/generatedclasses/enums/T_658_22.java @@ -0,0 +1,55 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.mysql2.generatedclasses.enums; + +/** + * This class is generated by jOOQ. + */ +public enum T_658_22 implements org.jooq.MasterDataType { + + /** + * 1 + */ + _1(1, 1), + + /** + * 2 + */ + _2(2, 2), + + /** + * 3 + */ + _3(3, 3), + ; + + private final java.lang.Integer id; + private final java.lang.Integer cd; + + private T_658_22(java.lang.Integer id, java.lang.Integer cd) { + this.id = id; + this.cd = cd; + } + + @Override + public java.lang.Integer getPrimaryKey() { + return id; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final java.lang.Integer getId() { + return id; + } + + /** + * An uncommented item + */ + public final java.lang.Integer getCd() { + return cd; + } +} diff --git a/jOOQ-test/src/org/jooq/test/mysql2/generatedclasses/enums/T_658_31.java b/jOOQ-test/src/org/jooq/test/mysql2/generatedclasses/enums/T_658_31.java new file mode 100644 index 00000000000..a30e2af844c --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/mysql2/generatedclasses/enums/T_658_31.java @@ -0,0 +1,46 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.mysql2.generatedclasses.enums; + +/** + * This class is generated by jOOQ. + */ +public enum T_658_31 implements org.jooq.MasterDataType { + + /** + * 1 + */ + _1(1L), + + /** + * 2 + */ + _2(2L), + + /** + * 3 + */ + _3(3L), + ; + + private final java.lang.Long id; + + private T_658_31(java.lang.Long id) { + this.id = id; + } + + @Override + public java.lang.Long getPrimaryKey() { + return id; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final java.lang.Long getId() { + return id; + } +} diff --git a/jOOQ-test/src/org/jooq/test/mysql2/generatedclasses/enums/T_658_32.java b/jOOQ-test/src/org/jooq/test/mysql2/generatedclasses/enums/T_658_32.java new file mode 100644 index 00000000000..e45a0532f23 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/mysql2/generatedclasses/enums/T_658_32.java @@ -0,0 +1,55 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.mysql2.generatedclasses.enums; + +/** + * This class is generated by jOOQ. + */ +public enum T_658_32 implements org.jooq.MasterDataType { + + /** + * 1 + */ + _1(1L, 1L), + + /** + * 2 + */ + _2(2L, 2L), + + /** + * 3 + */ + _3(3L, 3L), + ; + + private final java.lang.Long id; + private final java.lang.Long cd; + + private T_658_32(java.lang.Long id, java.lang.Long cd) { + this.id = id; + this.cd = cd; + } + + @Override + public java.lang.Long getPrimaryKey() { + return id; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final java.lang.Long getId() { + return id; + } + + /** + * An uncommented item + */ + public final java.lang.Long getCd() { + return cd; + } +} diff --git a/jOOQ-test/src/org/jooq/test/mysql2/generatedclasses/enums/T_959JavaKeywords.java b/jOOQ-test/src/org/jooq/test/mysql2/generatedclasses/enums/T_959JavaKeywords.java new file mode 100644 index 00000000000..b376b8890bb --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/mysql2/generatedclasses/enums/T_959JavaKeywords.java @@ -0,0 +1,131 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.mysql2.generatedclasses.enums; + +/** + * This class is generated by jOOQ. + */ +public enum T_959JavaKeywords implements org.jooq.EnumType { + abstract_("abstract"), + + assert_("assert"), + + boolean_("boolean"), + + break_("break"), + + byte_("byte"), + + case_("case"), + + catch_("catch"), + + char_("char"), + + class_("class"), + + const_("const"), + + continue_("continue"), + + default_("default"), + + double_("double"), + + do_("do"), + + else_("else"), + + enum_("enum"), + + extends_("extends"), + + false_("false"), + + final_("final"), + + finally_("finally"), + + float_("float"), + + for_("for"), + + goto_("goto"), + + if_("if"), + + implements_("implements"), + + import_("import"), + + instanceof_("instanceof"), + + interface_("interface"), + + int_("int"), + + long_("long"), + + native_("native"), + + new_("new"), + + package_("package"), + + private_("private"), + + protected_("protected"), + + public_("public"), + + return_("return"), + + short_("short"), + + static_("static"), + + strictfp_("strictfp"), + + super_("super"), + + switch_("switch"), + + synchronized_("synchronized"), + + this_("this"), + + throw_("throw"), + + throws_("throws"), + + transient_("transient"), + + true_("true"), + + try_("try"), + + void_("void"), + + volatile_("volatile"), + + while_("while"), + + ; + + private final java.lang.String literal; + + private T_959JavaKeywords(java.lang.String literal) { + this.literal = literal; + } + + @Override + public java.lang.String getName() { + return "t_959_java_keywords"; + } + + @Override + public java.lang.String getLiteral() { + return literal; + } +} diff --git a/jOOQ-test/src/org/jooq/test/mysql2/generatedclasses/enums/VBookStatus.java b/jOOQ-test/src/org/jooq/test/mysql2/generatedclasses/enums/VBookStatus.java new file mode 100644 index 00000000000..819718b541d --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/mysql2/generatedclasses/enums/VBookStatus.java @@ -0,0 +1,35 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.mysql2.generatedclasses.enums; + +/** + * This class is generated by jOOQ. + * + * The book's stock status + */ +public enum VBookStatus implements org.jooq.EnumType { + SOLD_OUT("SOLD OUT"), + + ORDERED("ORDERED"), + + ON_STOCK("ON STOCK"), + + ; + + private final java.lang.String literal; + + private VBookStatus(java.lang.String literal) { + this.literal = literal; + } + + @Override + public java.lang.String getName() { + return "v_book_STATUS"; + } + + @Override + public java.lang.String getLiteral() { + return literal; + } +} diff --git a/jOOQ-test/src/org/jooq/test/mysql2/generatedclasses/routines/F317.java b/jOOQ-test/src/org/jooq/test/mysql2/generatedclasses/routines/F317.java new file mode 100644 index 00000000000..4e15f56b667 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/mysql2/generatedclasses/routines/F317.java @@ -0,0 +1,117 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.mysql2.generatedclasses.routines; + +/** + * This class is generated by jOOQ. + * + * integration test for #317 + */ +public class F317 extends org.jooq.impl.AbstractRoutine { + + private static final long serialVersionUID = -693136258; + + + /** + * An uncommented item + */ + public static final org.jooq.Parameter RETURN_VALUE = createParameter("RETURN_VALUE", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter P1 = createParameter("p1", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter P2 = createParameter("p2", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter P3 = createParameter("p3", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter P4 = createParameter("p4", org.jooq.impl.SQLDataType.INTEGER); + + /** + * Create a new routine call instance + */ + public F317() { + super("f317", org.jooq.test.mysql2.generatedclasses.Test2.TEST2, org.jooq.impl.SQLDataType.INTEGER); + + setReturnParameter(RETURN_VALUE); + addInParameter(P1); + addInParameter(P2); + addInParameter(P3); + addInParameter(P4); + } + + /** + * Set the p1 parameter to the routine + */ + public void setP1(java.lang.Integer value) { + setValue(P1, value); + } + + /** + * Set the p1 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setP1(org.jooq.Field field) { + setField(P1, field); + } + + /** + * Set the p2 parameter to the routine + */ + public void setP2(java.lang.Integer value) { + setValue(P2, value); + } + + /** + * Set the p2 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setP2(org.jooq.Field field) { + setField(P2, field); + } + + /** + * Set the p3 parameter to the routine + */ + public void setP3(java.lang.Integer value) { + setValue(P3, value); + } + + /** + * Set the p3 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setP3(org.jooq.Field field) { + setField(P3, field); + } + + /** + * Set the p4 parameter to the routine + */ + public void setP4(java.lang.Integer value) { + setValue(P4, value); + } + + /** + * Set the p4 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setP4(org.jooq.Field field) { + setField(P4, field); + } +} diff --git a/jOOQ-test/src/org/jooq/test/mysql2/generatedclasses/routines/FAuthorExists.java b/jOOQ-test/src/org/jooq/test/mysql2/generatedclasses/routines/FAuthorExists.java new file mode 100644 index 00000000000..0c9a6dc25c7 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/mysql2/generatedclasses/routines/FAuthorExists.java @@ -0,0 +1,51 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.mysql2.generatedclasses.routines; + +/** + * This class is generated by jOOQ. + * + * Check existence of an author + */ +public class FAuthorExists extends org.jooq.impl.AbstractRoutine { + + private static final long serialVersionUID = -1622785987; + + + /** + * An uncommented item + */ + public static final org.jooq.Parameter RETURN_VALUE = createParameter("RETURN_VALUE", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter AUTHOR_NAME = createParameter("author_name", org.jooq.impl.SQLDataType.VARCHAR); + + /** + * Create a new routine call instance + */ + public FAuthorExists() { + super("f_author_exists", org.jooq.test.mysql2.generatedclasses.Test2.TEST2, org.jooq.impl.SQLDataType.INTEGER); + + setReturnParameter(RETURN_VALUE); + addInParameter(AUTHOR_NAME); + } + + /** + * Set the author_name parameter to the routine + */ + public void setAuthorName(java.lang.String value) { + setValue(AUTHOR_NAME, value); + } + + /** + * Set the author_name parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setAuthorName(org.jooq.Field field) { + setField(AUTHOR_NAME, field); + } +} diff --git a/jOOQ-test/src/org/jooq/test/mysql2/generatedclasses/routines/FNumber.java b/jOOQ-test/src/org/jooq/test/mysql2/generatedclasses/routines/FNumber.java new file mode 100644 index 00000000000..035bec1fee0 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/mysql2/generatedclasses/routines/FNumber.java @@ -0,0 +1,51 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.mysql2.generatedclasses.routines; + +/** + * This class is generated by jOOQ. + * + * echo n + */ +public class FNumber extends org.jooq.impl.AbstractRoutine { + + private static final long serialVersionUID = 1710816467; + + + /** + * An uncommented item + */ + public static final org.jooq.Parameter RETURN_VALUE = createParameter("RETURN_VALUE", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter N = createParameter("n", org.jooq.impl.SQLDataType.INTEGER); + + /** + * Create a new routine call instance + */ + public FNumber() { + super("f_number", org.jooq.test.mysql2.generatedclasses.Test2.TEST2, org.jooq.impl.SQLDataType.INTEGER); + + setReturnParameter(RETURN_VALUE); + addInParameter(N); + } + + /** + * Set the n parameter to the routine + */ + public void setN(java.lang.Integer value) { + setValue(N, value); + } + + /** + * Set the n parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setN(org.jooq.Field field) { + setField(N, field); + } +} diff --git a/jOOQ-test/src/org/jooq/test/mysql2/generatedclasses/routines/FOne.java b/jOOQ-test/src/org/jooq/test/mysql2/generatedclasses/routines/FOne.java new file mode 100644 index 00000000000..4aa005b9b12 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/mysql2/generatedclasses/routines/FOne.java @@ -0,0 +1,29 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.mysql2.generatedclasses.routines; + +/** + * This class is generated by jOOQ. + * + * 1 constant value + */ +public class FOne extends org.jooq.impl.AbstractRoutine { + + private static final long serialVersionUID = -1963354835; + + + /** + * An uncommented item + */ + public static final org.jooq.Parameter RETURN_VALUE = createParameter("RETURN_VALUE", org.jooq.impl.SQLDataType.INTEGER); + + /** + * Create a new routine call instance + */ + public FOne() { + super("f_one", org.jooq.test.mysql2.generatedclasses.Test2.TEST2, org.jooq.impl.SQLDataType.INTEGER); + + setReturnParameter(RETURN_VALUE); + } +} diff --git a/jOOQ-test/src/org/jooq/test/mysql2/generatedclasses/routines/P391.java b/jOOQ-test/src/org/jooq/test/mysql2/generatedclasses/routines/P391.java new file mode 100644 index 00000000000..a4fea442c1c --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/mysql2/generatedclasses/routines/P391.java @@ -0,0 +1,103 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.mysql2.generatedclasses.routines; + +/** + * This class is generated by jOOQ. + * + * Integration tests for #391 + */ +public class P391 extends org.jooq.impl.AbstractRoutine { + + private static final long serialVersionUID = 1464524599; + + + /** + * An uncommented item + */ + public static final org.jooq.Parameter I1 = createParameter("i1", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter IO1 = createParameter("io1", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter O1 = createParameter("o1", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter O2 = createParameter("o2", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter IO2 = createParameter("io2", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter I2 = createParameter("i2", org.jooq.impl.SQLDataType.INTEGER); + + /** + * Create a new routine call instance + */ + public P391() { + super("p391", org.jooq.test.mysql2.generatedclasses.Test2.TEST2); + + addInParameter(I1); + addInOutParameter(IO1); + addOutParameter(O1); + addOutParameter(O2); + addInOutParameter(IO2); + addInParameter(I2); + } + + /** + * Set the i1 parameter to the routine + */ + public void setI1(java.lang.Integer value) { + setValue(I1, value); + } + + /** + * Set the io1 parameter to the routine + */ + public void setIo1(java.lang.Integer value) { + setValue(IO1, value); + } + + /** + * Set the io2 parameter to the routine + */ + public void setIo2(java.lang.Integer value) { + setValue(IO2, value); + } + + /** + * Set the i2 parameter to the routine + */ + public void setI2(java.lang.Integer value) { + setValue(I2, value); + } + + public java.lang.Integer getIo1() { + return getValue(IO1); + } + + public java.lang.Integer getO1() { + return getValue(O1); + } + + public java.lang.Integer getO2() { + return getValue(O2); + } + + public java.lang.Integer getIo2() { + return getValue(IO2); + } +} diff --git a/jOOQ-test/src/org/jooq/test/mysql2/generatedclasses/routines/PAuthorExists.java b/jOOQ-test/src/org/jooq/test/mysql2/generatedclasses/routines/PAuthorExists.java new file mode 100644 index 00000000000..13728bae75d --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/mysql2/generatedclasses/routines/PAuthorExists.java @@ -0,0 +1,46 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.mysql2.generatedclasses.routines; + +/** + * This class is generated by jOOQ. + * + * Check existence of an author + */ +public class PAuthorExists extends org.jooq.impl.AbstractRoutine { + + private static final long serialVersionUID = -1270401917; + + + /** + * An uncommented item + */ + public static final org.jooq.Parameter AUTHOR_NAME = createParameter("author_name", org.jooq.impl.SQLDataType.VARCHAR); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter RESULT = createParameter("result", org.jooq.impl.SQLDataType.INTEGER); + + /** + * Create a new routine call instance + */ + public PAuthorExists() { + super("p_author_exists", org.jooq.test.mysql2.generatedclasses.Test2.TEST2); + + addInParameter(AUTHOR_NAME); + addOutParameter(RESULT); + } + + /** + * Set the author_name parameter to the routine + */ + public void setAuthorName(java.lang.String value) { + setValue(AUTHOR_NAME, value); + } + + public java.lang.Integer getResult() { + return getValue(RESULT); + } +} diff --git a/jOOQ-test/src/org/jooq/test/mysql2/generatedclasses/routines/PCreateAuthor.java b/jOOQ-test/src/org/jooq/test/mysql2/generatedclasses/routines/PCreateAuthor.java new file mode 100644 index 00000000000..cc9b1bb9904 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/mysql2/generatedclasses/routines/PCreateAuthor.java @@ -0,0 +1,22 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.mysql2.generatedclasses.routines; + +/** + * This class is generated by jOOQ. + * + * Create a new author + */ +public class PCreateAuthor extends org.jooq.impl.AbstractRoutine { + + private static final long serialVersionUID = 1909035850; + + + /** + * Create a new routine call instance + */ + public PCreateAuthor() { + super("p_create_author", org.jooq.test.mysql2.generatedclasses.Test2.TEST2); + } +} diff --git a/jOOQ-test/src/org/jooq/test/mysql2/generatedclasses/routines/PCreateAuthorByName.java b/jOOQ-test/src/org/jooq/test/mysql2/generatedclasses/routines/PCreateAuthorByName.java new file mode 100644 index 00000000000..1176ed7945e --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/mysql2/generatedclasses/routines/PCreateAuthorByName.java @@ -0,0 +1,49 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.mysql2.generatedclasses.routines; + +/** + * This class is generated by jOOQ. + * + * Create a new author + */ +public class PCreateAuthorByName extends org.jooq.impl.AbstractRoutine { + + private static final long serialVersionUID = 1979115584; + + + /** + * An uncommented item + */ + public static final org.jooq.Parameter FIRST_NAME = createParameter("first_name", org.jooq.impl.SQLDataType.VARCHAR); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter LAST_NAME = createParameter("last_name", org.jooq.impl.SQLDataType.VARCHAR); + + /** + * Create a new routine call instance + */ + public PCreateAuthorByName() { + super("p_create_author_by_name", org.jooq.test.mysql2.generatedclasses.Test2.TEST2); + + addInParameter(FIRST_NAME); + addInParameter(LAST_NAME); + } + + /** + * Set the first_name parameter to the routine + */ + public void setFirstName(java.lang.String value) { + setValue(FIRST_NAME, value); + } + + /** + * Set the last_name parameter to the routine + */ + public void setLastName(java.lang.String value) { + setValue(LAST_NAME, value); + } +} diff --git a/jOOQ-test/src/org/jooq/test/mysql2/generatedclasses/routines/PUnused.java b/jOOQ-test/src/org/jooq/test/mysql2/generatedclasses/routines/PUnused.java new file mode 100644 index 00000000000..a15204bfc12 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/mysql2/generatedclasses/routines/PUnused.java @@ -0,0 +1,61 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.mysql2.generatedclasses.routines; + +/** + * This class is generated by jOOQ. + */ +public class PUnused extends org.jooq.impl.AbstractRoutine { + + private static final long serialVersionUID = 1003218271; + + + /** + * An uncommented item + */ + public static final org.jooq.Parameter IN1 = createParameter("in1", org.jooq.impl.SQLDataType.VARCHAR); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter OUT1 = createParameter("out1", org.jooq.impl.SQLDataType.BOOLEAN); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter OUT2 = createParameter("out2", org.jooq.impl.SQLDataType.BOOLEAN); + + /** + * Create a new routine call instance + */ + public PUnused() { + super("p_unused", org.jooq.test.mysql2.generatedclasses.Test2.TEST2); + + addInParameter(IN1); + addOutParameter(OUT1); + addInOutParameter(OUT2); + } + + /** + * Set the in1 parameter to the routine + */ + public void setIn1(java.lang.String value) { + setValue(IN1, value); + } + + /** + * Set the out2 parameter to the routine + */ + public void setOut2(java.lang.Boolean value) { + setValue(OUT2, value); + } + + public java.lang.Boolean getOut1() { + return getValue(OUT1); + } + + public java.lang.Boolean getOut2() { + return getValue(OUT2); + } +} diff --git a/jOOQ-test/src/org/jooq/test/mysql2/generatedclasses/tables/TAuthor.java b/jOOQ-test/src/org/jooq/test/mysql2/generatedclasses/tables/TAuthor.java new file mode 100644 index 00000000000..2e8be66eb1a --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/mysql2/generatedclasses/tables/TAuthor.java @@ -0,0 +1,88 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.mysql2.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + * + * An entity holding authors of books + */ +public class TAuthor extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = 887389400; + + /** + * The singleton instance of test2.t_author + */ + public static final org.jooq.test.mysql2.generatedclasses.tables.TAuthor T_AUTHOR = new org.jooq.test.mysql2.generatedclasses.tables.TAuthor(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.mysql2.generatedclasses.tables.records.TAuthorRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * The author ID + * + * PRIMARY KEY + */ + public final org.jooq.TableField ID = createField("ID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * The author's first name + */ + public final org.jooq.TableField FIRST_NAME = createField("FIRST_NAME", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * The author's last name + */ + public final org.jooq.TableField LAST_NAME = createField("LAST_NAME", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * The author's date of birth + */ + public final org.jooq.TableField DATE_OF_BIRTH = createField("DATE_OF_BIRTH", org.jooq.impl.SQLDataType.DATE, this); + + /** + * The author's year of birth + */ + public final org.jooq.TableField YEAR_OF_BIRTH = createField("YEAR_OF_BIRTH", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * The author's address + */ + public final org.jooq.TableField ADDRESS = createField("ADDRESS", org.jooq.impl.SQLDataType.VARCHAR, this); + + public TAuthor() { + super("t_author", org.jooq.test.mysql2.generatedclasses.Test2.TEST2); + } + + public TAuthor(java.lang.String alias) { + super(alias, org.jooq.test.mysql2.generatedclasses.Test2.TEST2, org.jooq.test.mysql2.generatedclasses.tables.TAuthor.T_AUTHOR); + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.test.mysql2.generatedclasses.Keys.KEY_T_AUTHOR_PRIMARY; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.test.mysql2.generatedclasses.Keys.KEY_T_AUTHOR_PRIMARY); + } + + @Override + public org.jooq.test.mysql2.generatedclasses.tables.TAuthor as(java.lang.String alias) { + return new org.jooq.test.mysql2.generatedclasses.tables.TAuthor(alias); + } +} diff --git a/jOOQ-test/src/org/jooq/test/mysql2/generatedclasses/tables/TBook.java b/jOOQ-test/src/org/jooq/test/mysql2/generatedclasses/tables/TBook.java new file mode 100644 index 00000000000..4d9aa07a2c9 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/mysql2/generatedclasses/tables/TBook.java @@ -0,0 +1,132 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.mysql2.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + * + * An entity holding books + */ +public class TBook extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = 340389047; + + /** + * The singleton instance of test2.t_book + */ + public static final org.jooq.test.mysql2.generatedclasses.tables.TBook T_BOOK = new org.jooq.test.mysql2.generatedclasses.tables.TBook(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.mysql2.generatedclasses.tables.records.TBookRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * The book ID + * + * PRIMARY KEY + */ + public final org.jooq.TableField ID = createField("ID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * The author ID in entity 'author' + *

+ *

+	 * CONSTRAINT fk_t_book_author_id
+	 * FOREIGN KEY (AUTHOR_ID)
+	 * REFERENCES test2.t_author (ID)
+	 * 
+ */ + public final org.jooq.TableField AUTHOR_ID = createField("AUTHOR_ID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_t_book_co_author_id
+	 * FOREIGN KEY (co_author_id)
+	 * REFERENCES test2.t_author (ID)
+	 * 
+ */ + public final org.jooq.TableField CO_AUTHOR_ID = createField("co_author_id", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * Some more details about the book + */ + public final org.jooq.TableField DETAILS_ID = createField("DETAILS_ID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * The book's title + */ + public final org.jooq.TableField TITLE = createField("TITLE", org.jooq.impl.SQLDataType.CLOB, this); + + /** + * The year the book was published in + */ + public final org.jooq.TableField PUBLISHED_IN = createField("PUBLISHED_IN", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * The language of the book + *

+ *

+	 * CONSTRAINT fk_t_book_language_id
+	 * FOREIGN KEY (LANGUAGE_ID)
+	 * REFERENCES test2.t_language (ID)
+	 * 
+ */ + public final org.jooq.TableField LANGUAGE_ID = createField("LANGUAGE_ID", org.jooq.impl.SQLDataType.INTEGER.asMasterDataType(org.jooq.test.mysql2.generatedclasses.enums.TLanguage.class), this); + + /** + * Some textual content of the book + */ + public final org.jooq.TableField CONTENT_TEXT = createField("CONTENT_TEXT", org.jooq.impl.SQLDataType.CLOB, this); + + /** + * Some binary content of the book + */ + public final org.jooq.TableField CONTENT_PDF = createField("CONTENT_PDF", org.jooq.impl.SQLDataType.BLOB, this); + + /** + * The book's stock status + */ + public final org.jooq.TableField STATUS = createField("STATUS", org.jooq.util.mysql.MySQLDataType.VARCHAR.asEnumDataType(org.jooq.test.mysql2.generatedclasses.enums.TBookStatus.class), this); + + public TBook() { + super("t_book", org.jooq.test.mysql2.generatedclasses.Test2.TEST2); + } + + public TBook(java.lang.String alias) { + super(alias, org.jooq.test.mysql2.generatedclasses.Test2.TEST2, org.jooq.test.mysql2.generatedclasses.tables.TBook.T_BOOK); + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.test.mysql2.generatedclasses.Keys.KEY_T_BOOK_PRIMARY; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.test.mysql2.generatedclasses.Keys.KEY_T_BOOK_PRIMARY); + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getReferences() { + return java.util.Arrays.>asList(org.jooq.test.mysql2.generatedclasses.Keys.FK_T_BOOK_AUTHOR_ID, org.jooq.test.mysql2.generatedclasses.Keys.FK_T_BOOK_CO_AUTHOR_ID); + } + + @Override + public org.jooq.test.mysql2.generatedclasses.tables.TBook as(java.lang.String alias) { + return new org.jooq.test.mysql2.generatedclasses.tables.TBook(alias); + } +} diff --git a/jOOQ-test/src/org/jooq/test/mysql2/generatedclasses/tables/TBookStore.java b/jOOQ-test/src/org/jooq/test/mysql2/generatedclasses/tables/TBookStore.java new file mode 100644 index 00000000000..c254454f967 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/mysql2/generatedclasses/tables/TBookStore.java @@ -0,0 +1,61 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.mysql2.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + * + * A book store + */ +public class TBookStore extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = 1039227972; + + /** + * The singleton instance of test2.t_book_store + */ + public static final org.jooq.test.mysql2.generatedclasses.tables.TBookStore T_BOOK_STORE = new org.jooq.test.mysql2.generatedclasses.tables.TBookStore(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.mysql2.generatedclasses.tables.records.TBookStoreRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * The books store name + */ + public final org.jooq.TableField NAME = createField("name", org.jooq.impl.SQLDataType.VARCHAR, this); + + public TBookStore() { + super("t_book_store", org.jooq.test.mysql2.generatedclasses.Test2.TEST2); + } + + public TBookStore(java.lang.String alias) { + super(alias, org.jooq.test.mysql2.generatedclasses.Test2.TEST2, org.jooq.test.mysql2.generatedclasses.tables.TBookStore.T_BOOK_STORE); + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.test.mysql2.generatedclasses.Keys.KEY_T_BOOK_STORE_UK_T_BOOK_STORE_NAME; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.test.mysql2.generatedclasses.Keys.KEY_T_BOOK_STORE_UK_T_BOOK_STORE_NAME); + } + + @Override + public org.jooq.test.mysql2.generatedclasses.tables.TBookStore as(java.lang.String alias) { + return new org.jooq.test.mysql2.generatedclasses.tables.TBookStore(alias); + } +} diff --git a/jOOQ-test/src/org/jooq/test/mysql2/generatedclasses/tables/TBookToBookStore.java b/jOOQ-test/src/org/jooq/test/mysql2/generatedclasses/tables/TBookToBookStore.java new file mode 100644 index 00000000000..2b43257dafd --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/mysql2/generatedclasses/tables/TBookToBookStore.java @@ -0,0 +1,93 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.mysql2.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + * + * An m:n relation between books and book stores + */ +public class TBookToBookStore extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = -1906807738; + + /** + * The singleton instance of test2.t_book_to_book_store + */ + public static final org.jooq.test.mysql2.generatedclasses.tables.TBookToBookStore T_BOOK_TO_BOOK_STORE = new org.jooq.test.mysql2.generatedclasses.tables.TBookToBookStore(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.mysql2.generatedclasses.tables.records.TBookToBookStoreRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * The book store name + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT fk_b2bs_bs_name
+	 * FOREIGN KEY (book_store_name)
+	 * REFERENCES test2.t_book_store (name)
+	 * 
+ */ + public final org.jooq.TableField BOOK_STORE_NAME = createField("book_store_name", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * The book ID + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT fk_b2bs_b_id
+	 * FOREIGN KEY (book_id)
+	 * REFERENCES test2.t_book (ID)
+	 * 
+ */ + public final org.jooq.TableField BOOK_ID = createField("book_id", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * The number of books on stock + */ + public final org.jooq.TableField STOCK = createField("stock", org.jooq.impl.SQLDataType.INTEGER, this); + + public TBookToBookStore() { + super("t_book_to_book_store", org.jooq.test.mysql2.generatedclasses.Test2.TEST2); + } + + public TBookToBookStore(java.lang.String alias) { + super(alias, org.jooq.test.mysql2.generatedclasses.Test2.TEST2, org.jooq.test.mysql2.generatedclasses.tables.TBookToBookStore.T_BOOK_TO_BOOK_STORE); + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.test.mysql2.generatedclasses.Keys.KEY_T_BOOK_TO_BOOK_STORE_PRIMARY; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.test.mysql2.generatedclasses.Keys.KEY_T_BOOK_TO_BOOK_STORE_PRIMARY); + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getReferences() { + return java.util.Arrays.>asList(org.jooq.test.mysql2.generatedclasses.Keys.FK_B2BS_BS_NAME, org.jooq.test.mysql2.generatedclasses.Keys.FK_B2BS_B_ID); + } + + @Override + public org.jooq.test.mysql2.generatedclasses.tables.TBookToBookStore as(java.lang.String alias) { + return new org.jooq.test.mysql2.generatedclasses.tables.TBookToBookStore(alias); + } +} diff --git a/jOOQ-test/src/org/jooq/test/mysql2/generatedclasses/tables/TBooleans.java b/jOOQ-test/src/org/jooq/test/mysql2/generatedclasses/tables/TBooleans.java new file mode 100644 index 00000000000..4a503c85d4f --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/mysql2/generatedclasses/tables/TBooleans.java @@ -0,0 +1,111 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.mysql2.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class TBooleans extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = 719182195; + + /** + * The singleton instance of test2.t_booleans + */ + public static final org.jooq.test.mysql2.generatedclasses.tables.TBooleans T_BOOLEANS = new org.jooq.test.mysql2.generatedclasses.tables.TBooleans(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.mysql2.generatedclasses.tables.records.TBooleansRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final org.jooq.TableField ID = createField("id", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField ONE_ZERO = createField("one_zero", org.jooq.impl.SQLDataType.INTEGER.asConvertedDataType(new org.jooq.test._.converters.Boolean_10_Converter()), this); + + /** + * An uncommented item + */ + public final org.jooq.TableField TRUE_FALSE_LC = createField("true_false_lc", org.jooq.impl.SQLDataType.VARCHAR.asConvertedDataType(new org.jooq.test._.converters.Boolean_TF_LC_Converter()), this); + + /** + * An uncommented item + */ + public final org.jooq.TableField TRUE_FALSE_UC = createField("true_false_uc", org.jooq.impl.SQLDataType.VARCHAR.asConvertedDataType(new org.jooq.test._.converters.Boolean_TF_UC_Converter()), this); + + /** + * An uncommented item + */ + public final org.jooq.TableField YES_NO_LC = createField("yes_no_lc", org.jooq.impl.SQLDataType.VARCHAR.asConvertedDataType(new org.jooq.test._.converters.Boolean_YES_NO_LC_Converter()), this); + + /** + * An uncommented item + */ + public final org.jooq.TableField YES_NO_UC = createField("yes_no_uc", org.jooq.impl.SQLDataType.VARCHAR.asConvertedDataType(new org.jooq.test._.converters.Boolean_YES_NO_UC_Converter()), this); + + /** + * An uncommented item + */ + public final org.jooq.TableField Y_N_LC = createField("y_n_lc", org.jooq.impl.SQLDataType.CHAR.asConvertedDataType(new org.jooq.test._.converters.Boolean_YN_LC_Converter()), this); + + /** + * An uncommented item + */ + public final org.jooq.TableField Y_N_UC = createField("y_n_uc", org.jooq.impl.SQLDataType.CHAR.asConvertedDataType(new org.jooq.test._.converters.Boolean_YN_UC_Converter()), this); + + /** + * An uncommented item + */ + public final org.jooq.TableField VC_BOOLEAN = createField("vc_boolean", org.jooq.impl.SQLDataType.BOOLEAN, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField C_BOOLEAN = createField("c_boolean", org.jooq.impl.SQLDataType.BOOLEAN, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField N_BOOLEAN = createField("n_boolean", org.jooq.impl.SQLDataType.BOOLEAN, this); + + public TBooleans() { + super("t_booleans", org.jooq.test.mysql2.generatedclasses.Test2.TEST2); + } + + public TBooleans(java.lang.String alias) { + super(alias, org.jooq.test.mysql2.generatedclasses.Test2.TEST2, org.jooq.test.mysql2.generatedclasses.tables.TBooleans.T_BOOLEANS); + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.test.mysql2.generatedclasses.Keys.KEY_T_BOOLEANS_PRIMARY; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.test.mysql2.generatedclasses.Keys.KEY_T_BOOLEANS_PRIMARY); + } + + @Override + public org.jooq.test.mysql2.generatedclasses.tables.TBooleans as(java.lang.String alias) { + return new org.jooq.test.mysql2.generatedclasses.tables.TBooleans(alias); + } +} diff --git a/jOOQ-test/src/org/jooq/test/mysql2/generatedclasses/tables/TDates.java b/jOOQ-test/src/org/jooq/test/mysql2/generatedclasses/tables/TDates.java new file mode 100644 index 00000000000..c99f734800f --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/mysql2/generatedclasses/tables/TDates.java @@ -0,0 +1,86 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.mysql2.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class TDates extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = 1825563037; + + /** + * The singleton instance of test2.t_dates + */ + public static final org.jooq.test.mysql2.generatedclasses.tables.TDates T_DATES = new org.jooq.test.mysql2.generatedclasses.tables.TDates(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.mysql2.generatedclasses.tables.records.TDatesRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final org.jooq.TableField ID = createField("id", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField D = createField("d", org.jooq.impl.SQLDataType.DATE, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField T = createField("t", org.jooq.impl.SQLDataType.TIME, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField TS = createField("ts", org.jooq.impl.SQLDataType.TIMESTAMP, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField D_INT = createField("d_int", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField TS_BIGINT = createField("ts_bigint", org.jooq.impl.SQLDataType.BIGINT, this); + + public TDates() { + super("t_dates", org.jooq.test.mysql2.generatedclasses.Test2.TEST2); + } + + public TDates(java.lang.String alias) { + super(alias, org.jooq.test.mysql2.generatedclasses.Test2.TEST2, org.jooq.test.mysql2.generatedclasses.tables.TDates.T_DATES); + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.test.mysql2.generatedclasses.Keys.KEY_T_DATES_PRIMARY; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.test.mysql2.generatedclasses.Keys.KEY_T_DATES_PRIMARY); + } + + @Override + public org.jooq.test.mysql2.generatedclasses.tables.TDates as(java.lang.String alias) { + return new org.jooq.test.mysql2.generatedclasses.tables.TDates(alias); + } +} diff --git a/jOOQ-test/src/org/jooq/test/mysql2/generatedclasses/tables/TIdentityPk.java b/jOOQ-test/src/org/jooq/test/mysql2/generatedclasses/tables/TIdentityPk.java new file mode 100644 index 00000000000..1f8a0a4c257 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/mysql2/generatedclasses/tables/TIdentityPk.java @@ -0,0 +1,71 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.mysql2.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class TIdentityPk extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = -1769416712; + + /** + * The singleton instance of test2.t_identity_pk + */ + public static final org.jooq.test.mysql2.generatedclasses.tables.TIdentityPk T_IDENTITY_PK = new org.jooq.test.mysql2.generatedclasses.tables.TIdentityPk(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.mysql2.generatedclasses.tables.records.TIdentityPkRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final org.jooq.TableField ID = createField("id", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField VAL = createField("val", org.jooq.impl.SQLDataType.INTEGER, this); + + public TIdentityPk() { + super("t_identity_pk", org.jooq.test.mysql2.generatedclasses.Test2.TEST2); + } + + public TIdentityPk(java.lang.String alias) { + super(alias, org.jooq.test.mysql2.generatedclasses.Test2.TEST2, org.jooq.test.mysql2.generatedclasses.tables.TIdentityPk.T_IDENTITY_PK); + } + + @Override + public org.jooq.Identity getIdentity() { + return org.jooq.test.mysql2.generatedclasses.Keys.IDENTITY_T_IDENTITY_PK; + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.test.mysql2.generatedclasses.Keys.KEY_T_IDENTITY_PK_PRIMARY; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.test.mysql2.generatedclasses.Keys.KEY_T_IDENTITY_PK_PRIMARY); + } + + @Override + public org.jooq.test.mysql2.generatedclasses.tables.TIdentityPk as(java.lang.String alias) { + return new org.jooq.test.mysql2.generatedclasses.tables.TIdentityPk(alias); + } +} diff --git a/jOOQ-test/src/org/jooq/test/mysql2/generatedclasses/tables/TTriggers.java b/jOOQ-test/src/org/jooq/test/mysql2/generatedclasses/tables/TTriggers.java new file mode 100644 index 00000000000..b2a13bffd6e --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/mysql2/generatedclasses/tables/TTriggers.java @@ -0,0 +1,76 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.mysql2.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class TTriggers extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = 121608811; + + /** + * The singleton instance of test2.t_triggers + */ + public static final org.jooq.test.mysql2.generatedclasses.tables.TTriggers T_TRIGGERS = new org.jooq.test.mysql2.generatedclasses.tables.TTriggers(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.mysql2.generatedclasses.tables.records.TTriggersRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final org.jooq.TableField ID_GENERATED = createField("id_generated", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField ID = createField("id", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField COUNTER = createField("counter", org.jooq.impl.SQLDataType.INTEGER, this); + + public TTriggers() { + super("t_triggers", org.jooq.test.mysql2.generatedclasses.Test2.TEST2); + } + + public TTriggers(java.lang.String alias) { + super(alias, org.jooq.test.mysql2.generatedclasses.Test2.TEST2, org.jooq.test.mysql2.generatedclasses.tables.TTriggers.T_TRIGGERS); + } + + @Override + public org.jooq.Identity getIdentity() { + return org.jooq.test.mysql2.generatedclasses.Keys.IDENTITY_T_TRIGGERS; + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.test.mysql2.generatedclasses.Keys.KEY_T_TRIGGERS_PRIMARY; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.test.mysql2.generatedclasses.Keys.KEY_T_TRIGGERS_PRIMARY); + } + + @Override + public org.jooq.test.mysql2.generatedclasses.tables.TTriggers as(java.lang.String alias) { + return new org.jooq.test.mysql2.generatedclasses.tables.TTriggers(alias); + } +} diff --git a/jOOQ-test/src/org/jooq/test/mysql2/generatedclasses/tables/TUnsigned.java b/jOOQ-test/src/org/jooq/test/mysql2/generatedclasses/tables/TUnsigned.java new file mode 100644 index 00000000000..46559f83da7 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/mysql2/generatedclasses/tables/TUnsigned.java @@ -0,0 +1,63 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.mysql2.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class TUnsigned extends org.jooq.impl.TableImpl { + + private static final long serialVersionUID = -37695588; + + /** + * The singleton instance of test2.t_unsigned + */ + public static final org.jooq.test.mysql2.generatedclasses.tables.TUnsigned T_UNSIGNED = new org.jooq.test.mysql2.generatedclasses.tables.TUnsigned(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.mysql2.generatedclasses.tables.records.TUnsignedRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + */ + public final org.jooq.TableField U_BYTE = createField("u_byte", org.jooq.impl.SQLDataType.TINYINTUNSIGNED, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField U_SHORT = createField("u_short", org.jooq.impl.SQLDataType.SMALLINTUNSIGNED, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField U_INT = createField("u_int", org.jooq.impl.SQLDataType.INTEGERUNSIGNED, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField U_LONG = createField("u_long", org.jooq.impl.SQLDataType.BIGINTUNSIGNED, this); + + public TUnsigned() { + super("t_unsigned", org.jooq.test.mysql2.generatedclasses.Test2.TEST2); + } + + public TUnsigned(java.lang.String alias) { + super(alias, org.jooq.test.mysql2.generatedclasses.Test2.TEST2, org.jooq.test.mysql2.generatedclasses.tables.TUnsigned.T_UNSIGNED); + } + + @Override + public org.jooq.test.mysql2.generatedclasses.tables.TUnsigned as(java.lang.String alias) { + return new org.jooq.test.mysql2.generatedclasses.tables.TUnsigned(alias); + } +} diff --git a/jOOQ-test/src/org/jooq/test/mysql2/generatedclasses/tables/T_639NumbersTable.java b/jOOQ-test/src/org/jooq/test/mysql2/generatedclasses/tables/T_639NumbersTable.java new file mode 100644 index 00000000000..c00f46335bd --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/mysql2/generatedclasses/tables/T_639NumbersTable.java @@ -0,0 +1,121 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.mysql2.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class T_639NumbersTable extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = 1993935525; + + /** + * The singleton instance of test2.t_639_numbers_table + */ + public static final org.jooq.test.mysql2.generatedclasses.tables.T_639NumbersTable T_639_NUMBERS_TABLE = new org.jooq.test.mysql2.generatedclasses.tables.T_639NumbersTable(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.mysql2.generatedclasses.tables.records.T_639NumbersTableRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final org.jooq.TableField ID = createField("ID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField BYTE = createField("BYTE", org.jooq.impl.SQLDataType.TINYINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField SHORT = createField("SHORT", org.jooq.impl.SQLDataType.SMALLINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField INTEGER = createField("INTEGER", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField LONG = createField("LONG", org.jooq.impl.SQLDataType.BIGINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField BYTE_DECIMAL = createField("BYTE_DECIMAL", org.jooq.impl.SQLDataType.TINYINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField SHORT_DECIMAL = createField("SHORT_DECIMAL", org.jooq.impl.SQLDataType.SMALLINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField INTEGER_DECIMAL = createField("INTEGER_DECIMAL", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField LONG_DECIMAL = createField("LONG_DECIMAL", org.jooq.impl.SQLDataType.BIGINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField BIG_INTEGER = createField("BIG_INTEGER", org.jooq.impl.SQLDataType.DECIMAL_INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField BIG_DECIMAL = createField("BIG_DECIMAL", org.jooq.impl.SQLDataType.DECIMAL, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField FLOAT = createField("FLOAT", org.jooq.impl.SQLDataType.FLOAT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField DOUBLE = createField("DOUBLE", org.jooq.impl.SQLDataType.DOUBLE, this); + + public T_639NumbersTable() { + super("t_639_numbers_table", org.jooq.test.mysql2.generatedclasses.Test2.TEST2); + } + + public T_639NumbersTable(java.lang.String alias) { + super(alias, org.jooq.test.mysql2.generatedclasses.Test2.TEST2, org.jooq.test.mysql2.generatedclasses.tables.T_639NumbersTable.T_639_NUMBERS_TABLE); + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.test.mysql2.generatedclasses.Keys.KEY_T_639_NUMBERS_TABLE_PRIMARY; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.test.mysql2.generatedclasses.Keys.KEY_T_639_NUMBERS_TABLE_PRIMARY); + } + + @Override + public org.jooq.test.mysql2.generatedclasses.tables.T_639NumbersTable as(java.lang.String alias) { + return new org.jooq.test.mysql2.generatedclasses.tables.T_639NumbersTable(alias); + } +} diff --git a/jOOQ-test/src/org/jooq/test/mysql2/generatedclasses/tables/T_658Ref.java b/jOOQ-test/src/org/jooq/test/mysql2/generatedclasses/tables/T_658Ref.java new file mode 100644 index 00000000000..582d807d641 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/mysql2/generatedclasses/tables/T_658Ref.java @@ -0,0 +1,115 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.mysql2.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class T_658Ref extends org.jooq.impl.TableImpl { + + private static final long serialVersionUID = 41267434; + + /** + * The singleton instance of test2.t_658_ref + */ + public static final org.jooq.test.mysql2.generatedclasses.tables.T_658Ref T_658_REF = new org.jooq.test.mysql2.generatedclasses.tables.T_658Ref(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.mysql2.generatedclasses.tables.records.T_658RefRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_t_658_11
+	 * FOREIGN KEY (ref_11)
+	 * REFERENCES test2.t_658_11 (id)
+	 * 
+ */ + public final org.jooq.TableField REF_11 = createField("ref_11", org.jooq.impl.SQLDataType.CHAR.asMasterDataType(org.jooq.test.mysql2.generatedclasses.enums.T_658_11.class), this); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_t_658_21
+	 * FOREIGN KEY (ref_21)
+	 * REFERENCES test2.t_658_21 (id)
+	 * 
+ */ + public final org.jooq.TableField REF_21 = createField("ref_21", org.jooq.impl.SQLDataType.INTEGER.asMasterDataType(org.jooq.test.mysql2.generatedclasses.enums.T_658_21.class), this); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_t_658_31
+	 * FOREIGN KEY (ref_31)
+	 * REFERENCES test2.t_658_31 (id)
+	 * 
+ */ + public final org.jooq.TableField REF_31 = createField("ref_31", org.jooq.impl.SQLDataType.BIGINT.asMasterDataType(org.jooq.test.mysql2.generatedclasses.enums.T_658_31.class), this); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_t_658_12
+	 * FOREIGN KEY (ref_12)
+	 * REFERENCES test2.t_658_12 (id)
+	 * 
+ */ + public final org.jooq.TableField REF_12 = createField("ref_12", org.jooq.impl.SQLDataType.CHAR.asMasterDataType(org.jooq.test.mysql2.generatedclasses.enums.T_658_12.class), this); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_t_658_22
+	 * FOREIGN KEY (ref_22)
+	 * REFERENCES test2.t_658_22 (id)
+	 * 
+ */ + public final org.jooq.TableField REF_22 = createField("ref_22", org.jooq.impl.SQLDataType.INTEGER.asMasterDataType(org.jooq.test.mysql2.generatedclasses.enums.T_658_22.class), this); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_t_658_32
+	 * FOREIGN KEY (ref_32)
+	 * REFERENCES test2.t_658_32 (id)
+	 * 
+ */ + public final org.jooq.TableField REF_32 = createField("ref_32", org.jooq.impl.SQLDataType.BIGINT.asMasterDataType(org.jooq.test.mysql2.generatedclasses.enums.T_658_32.class), this); + + public T_658Ref() { + super("t_658_ref", org.jooq.test.mysql2.generatedclasses.Test2.TEST2); + } + + public T_658Ref(java.lang.String alias) { + super(alias, org.jooq.test.mysql2.generatedclasses.Test2.TEST2, org.jooq.test.mysql2.generatedclasses.tables.T_658Ref.T_658_REF); + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getReferences() { + return java.util.Arrays.>asList(); + } + + @Override + public org.jooq.test.mysql2.generatedclasses.tables.T_658Ref as(java.lang.String alias) { + return new org.jooq.test.mysql2.generatedclasses.tables.T_658Ref(alias); + } +} diff --git a/jOOQ-test/src/org/jooq/test/mysql2/generatedclasses/tables/T_725LobTest.java b/jOOQ-test/src/org/jooq/test/mysql2/generatedclasses/tables/T_725LobTest.java new file mode 100644 index 00000000000..7229f0587e4 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/mysql2/generatedclasses/tables/T_725LobTest.java @@ -0,0 +1,66 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.mysql2.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class T_725LobTest extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = -2067735200; + + /** + * The singleton instance of test2.t_725_lob_test + */ + public static final org.jooq.test.mysql2.generatedclasses.tables.T_725LobTest T_725_LOB_TEST = new org.jooq.test.mysql2.generatedclasses.tables.T_725LobTest(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.mysql2.generatedclasses.tables.records.T_725LobTestRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final org.jooq.TableField ID = createField("ID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField LOB = createField("LOB", org.jooq.impl.SQLDataType.BLOB, this); + + public T_725LobTest() { + super("t_725_lob_test", org.jooq.test.mysql2.generatedclasses.Test2.TEST2); + } + + public T_725LobTest(java.lang.String alias) { + super(alias, org.jooq.test.mysql2.generatedclasses.Test2.TEST2, org.jooq.test.mysql2.generatedclasses.tables.T_725LobTest.T_725_LOB_TEST); + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.test.mysql2.generatedclasses.Keys.KEY_T_725_LOB_TEST_PRIMARY; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.test.mysql2.generatedclasses.Keys.KEY_T_725_LOB_TEST_PRIMARY); + } + + @Override + public org.jooq.test.mysql2.generatedclasses.tables.T_725LobTest as(java.lang.String alias) { + return new org.jooq.test.mysql2.generatedclasses.tables.T_725LobTest(alias); + } +} diff --git a/jOOQ-test/src/org/jooq/test/mysql2/generatedclasses/tables/T_785.java b/jOOQ-test/src/org/jooq/test/mysql2/generatedclasses/tables/T_785.java new file mode 100644 index 00000000000..fd915e97f59 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/mysql2/generatedclasses/tables/T_785.java @@ -0,0 +1,58 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.mysql2.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class T_785 extends org.jooq.impl.TableImpl { + + private static final long serialVersionUID = 2138780346; + + /** + * The singleton instance of test2.t_785 + */ + public static final org.jooq.test.mysql2.generatedclasses.tables.T_785 T_785 = new org.jooq.test.mysql2.generatedclasses.tables.T_785(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.mysql2.generatedclasses.tables.records.T_785Record.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + */ + public final org.jooq.TableField ID = createField("ID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField NAME = createField("NAME", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField VALUE = createField("VALUE", org.jooq.impl.SQLDataType.VARCHAR, this); + + public T_785() { + super("t_785", org.jooq.test.mysql2.generatedclasses.Test2.TEST2); + } + + public T_785(java.lang.String alias) { + super(alias, org.jooq.test.mysql2.generatedclasses.Test2.TEST2, org.jooq.test.mysql2.generatedclasses.tables.T_785.T_785); + } + + @Override + public org.jooq.test.mysql2.generatedclasses.tables.T_785 as(java.lang.String alias) { + return new org.jooq.test.mysql2.generatedclasses.tables.T_785(alias); + } +} diff --git a/jOOQ-test/src/org/jooq/test/mysql2/generatedclasses/tables/T_959.java b/jOOQ-test/src/org/jooq/test/mysql2/generatedclasses/tables/T_959.java new file mode 100644 index 00000000000..d1fa2712047 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/mysql2/generatedclasses/tables/T_959.java @@ -0,0 +1,48 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.mysql2.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class T_959 extends org.jooq.impl.TableImpl { + + private static final long serialVersionUID = -163809970; + + /** + * The singleton instance of test2.t_959 + */ + public static final org.jooq.test.mysql2.generatedclasses.tables.T_959 T_959 = new org.jooq.test.mysql2.generatedclasses.tables.T_959(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.mysql2.generatedclasses.tables.records.T_959Record.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + */ + public final org.jooq.TableField JAVA_KEYWORDS = createField("java_keywords", org.jooq.util.mysql.MySQLDataType.VARCHAR.asEnumDataType(org.jooq.test.mysql2.generatedclasses.enums.T_959JavaKeywords.class), this); + + public T_959() { + super("t_959", org.jooq.test.mysql2.generatedclasses.Test2.TEST2); + } + + public T_959(java.lang.String alias) { + super(alias, org.jooq.test.mysql2.generatedclasses.Test2.TEST2, org.jooq.test.mysql2.generatedclasses.tables.T_959.T_959); + } + + @Override + public org.jooq.test.mysql2.generatedclasses.tables.T_959 as(java.lang.String alias) { + return new org.jooq.test.mysql2.generatedclasses.tables.T_959(alias); + } +} diff --git a/jOOQ-test/src/org/jooq/test/mysql2/generatedclasses/tables/VAuthor.java b/jOOQ-test/src/org/jooq/test/mysql2/generatedclasses/tables/VAuthor.java new file mode 100644 index 00000000000..fe5136d7a51 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/mysql2/generatedclasses/tables/VAuthor.java @@ -0,0 +1,75 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.mysql2.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + * + * VIEW + */ +public class VAuthor extends org.jooq.impl.TableImpl { + + private static final long serialVersionUID = -1025704033; + + /** + * The singleton instance of test2.v_author + */ + public static final org.jooq.test.mysql2.generatedclasses.tables.VAuthor V_AUTHOR = new org.jooq.test.mysql2.generatedclasses.tables.VAuthor(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.mysql2.generatedclasses.tables.records.VAuthorRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * The author ID + */ + public final org.jooq.TableField ID = createField("ID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * The author's first name + */ + public final org.jooq.TableField FIRST_NAME = createField("FIRST_NAME", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * The author's last name + */ + public final org.jooq.TableField LAST_NAME = createField("LAST_NAME", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * The author's date of birth + */ + public final org.jooq.TableField DATE_OF_BIRTH = createField("DATE_OF_BIRTH", org.jooq.impl.SQLDataType.DATE, this); + + /** + * The author's year of birth + */ + public final org.jooq.TableField YEAR_OF_BIRTH = createField("YEAR_OF_BIRTH", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * The author's address + */ + public final org.jooq.TableField ADDRESS = createField("ADDRESS", org.jooq.impl.SQLDataType.VARCHAR, this); + + public VAuthor() { + super("v_author", org.jooq.test.mysql2.generatedclasses.Test2.TEST2); + } + + public VAuthor(java.lang.String alias) { + super(alias, org.jooq.test.mysql2.generatedclasses.Test2.TEST2, org.jooq.test.mysql2.generatedclasses.tables.VAuthor.V_AUTHOR); + } + + @Override + public org.jooq.test.mysql2.generatedclasses.tables.VAuthor as(java.lang.String alias) { + return new org.jooq.test.mysql2.generatedclasses.tables.VAuthor(alias); + } +} diff --git a/jOOQ-test/src/org/jooq/test/mysql2/generatedclasses/tables/VBook.java b/jOOQ-test/src/org/jooq/test/mysql2/generatedclasses/tables/VBook.java new file mode 100644 index 00000000000..425cf981e0d --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/mysql2/generatedclasses/tables/VBook.java @@ -0,0 +1,95 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.mysql2.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + * + * VIEW + */ +public class VBook extends org.jooq.impl.TableImpl { + + private static final long serialVersionUID = 1081481447; + + /** + * The singleton instance of test2.v_book + */ + public static final org.jooq.test.mysql2.generatedclasses.tables.VBook V_BOOK = new org.jooq.test.mysql2.generatedclasses.tables.VBook(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.mysql2.generatedclasses.tables.records.VBookRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * The book ID + */ + public final org.jooq.TableField ID = createField("ID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * The author ID in entity 'author' + */ + public final org.jooq.TableField AUTHOR_ID = createField("AUTHOR_ID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField CO_AUTHOR_ID = createField("co_author_id", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * Some more details about the book + */ + public final org.jooq.TableField DETAILS_ID = createField("DETAILS_ID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * The book's title + */ + public final org.jooq.TableField TITLE = createField("TITLE", org.jooq.impl.SQLDataType.CLOB, this); + + /** + * The year the book was published in + */ + public final org.jooq.TableField PUBLISHED_IN = createField("PUBLISHED_IN", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * The language of the book + */ + public final org.jooq.TableField LANGUAGE_ID = createField("LANGUAGE_ID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * Some textual content of the book + */ + public final org.jooq.TableField CONTENT_TEXT = createField("CONTENT_TEXT", org.jooq.impl.SQLDataType.CLOB, this); + + /** + * Some binary content of the book + */ + public final org.jooq.TableField CONTENT_PDF = createField("CONTENT_PDF", org.jooq.impl.SQLDataType.BLOB, this); + + /** + * The book's stock status + */ + public final org.jooq.TableField STATUS = createField("STATUS", org.jooq.util.mysql.MySQLDataType.VARCHAR.asEnumDataType(org.jooq.test.mysql2.generatedclasses.enums.VBookStatus.class), this); + + public VBook() { + super("v_book", org.jooq.test.mysql2.generatedclasses.Test2.TEST2); + } + + public VBook(java.lang.String alias) { + super(alias, org.jooq.test.mysql2.generatedclasses.Test2.TEST2, org.jooq.test.mysql2.generatedclasses.tables.VBook.V_BOOK); + } + + @Override + public org.jooq.test.mysql2.generatedclasses.tables.VBook as(java.lang.String alias) { + return new org.jooq.test.mysql2.generatedclasses.tables.VBook(alias); + } +} diff --git a/jOOQ-test/src/org/jooq/test/mysql2/generatedclasses/tables/VLibrary.java b/jOOQ-test/src/org/jooq/test/mysql2/generatedclasses/tables/VLibrary.java new file mode 100644 index 00000000000..80d8f3b0f28 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/mysql2/generatedclasses/tables/VLibrary.java @@ -0,0 +1,55 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.mysql2.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + * + * VIEW + */ +public class VLibrary extends org.jooq.impl.TableImpl { + + private static final long serialVersionUID = 1498399259; + + /** + * The singleton instance of test2.v_library + */ + public static final org.jooq.test.mysql2.generatedclasses.tables.VLibrary V_LIBRARY = new org.jooq.test.mysql2.generatedclasses.tables.VLibrary(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.mysql2.generatedclasses.tables.records.VLibraryRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + */ + public final org.jooq.TableField AUTHOR = createField("AUTHOR", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * The book's title + */ + public final org.jooq.TableField TITLE = createField("TITLE", org.jooq.impl.SQLDataType.CLOB, this); + + public VLibrary() { + super("v_library", org.jooq.test.mysql2.generatedclasses.Test2.TEST2); + } + + public VLibrary(java.lang.String alias) { + super(alias, org.jooq.test.mysql2.generatedclasses.Test2.TEST2, org.jooq.test.mysql2.generatedclasses.tables.VLibrary.V_LIBRARY); + } + + @Override + public org.jooq.test.mysql2.generatedclasses.tables.VLibrary as(java.lang.String alias) { + return new org.jooq.test.mysql2.generatedclasses.tables.VLibrary(alias); + } +} diff --git a/jOOQ-test/src/org/jooq/test/mysql2/generatedclasses/tables/XTestCase_64_69.java b/jOOQ-test/src/org/jooq/test/mysql2/generatedclasses/tables/XTestCase_64_69.java new file mode 100644 index 00000000000..0c181988fcc --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/mysql2/generatedclasses/tables/XTestCase_64_69.java @@ -0,0 +1,80 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.mysql2.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + * + * An unused table in the same schema. + */ +public class XTestCase_64_69 extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = 294224674; + + /** + * The singleton instance of test2.x_test_case_64_69 + */ + public static final org.jooq.test.mysql2.generatedclasses.tables.XTestCase_64_69 X_TEST_CASE_64_69 = new org.jooq.test.mysql2.generatedclasses.tables.XTestCase_64_69(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.mysql2.generatedclasses.tables.records.XTestCase_64_69Record.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final org.jooq.TableField ID = createField("ID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_x_test_case_64_69a
+	 * FOREIGN KEY (UNUSED_ID)
+	 * REFERENCES test2.x_unused (ID, NAME)
+	 * 
+ */ + public final org.jooq.TableField UNUSED_ID = createField("UNUSED_ID", org.jooq.impl.SQLDataType.INTEGER, this); + + public XTestCase_64_69() { + super("x_test_case_64_69", org.jooq.test.mysql2.generatedclasses.Test2.TEST2); + } + + public XTestCase_64_69(java.lang.String alias) { + super(alias, org.jooq.test.mysql2.generatedclasses.Test2.TEST2, org.jooq.test.mysql2.generatedclasses.tables.XTestCase_64_69.X_TEST_CASE_64_69); + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.test.mysql2.generatedclasses.Keys.KEY_X_TEST_CASE_64_69_PRIMARY; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.test.mysql2.generatedclasses.Keys.KEY_X_TEST_CASE_64_69_PRIMARY); + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getReferences() { + return java.util.Arrays.>asList(org.jooq.test.mysql2.generatedclasses.Keys.FK_X_TEST_CASE_64_69A); + } + + @Override + public org.jooq.test.mysql2.generatedclasses.tables.XTestCase_64_69 as(java.lang.String alias) { + return new org.jooq.test.mysql2.generatedclasses.tables.XTestCase_64_69(alias); + } +} diff --git a/jOOQ-test/src/org/jooq/test/mysql2/generatedclasses/tables/XTestCase_71.java b/jOOQ-test/src/org/jooq/test/mysql2/generatedclasses/tables/XTestCase_71.java new file mode 100644 index 00000000000..9320473dceb --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/mysql2/generatedclasses/tables/XTestCase_71.java @@ -0,0 +1,80 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.mysql2.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + * + * An unused table in the same schema. + */ +public class XTestCase_71 extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = 1467439593; + + /** + * The singleton instance of test2.x_test_case_71 + */ + public static final org.jooq.test.mysql2.generatedclasses.tables.XTestCase_71 X_TEST_CASE_71 = new org.jooq.test.mysql2.generatedclasses.tables.XTestCase_71(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.mysql2.generatedclasses.tables.records.XTestCase_71Record.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final org.jooq.TableField ID = createField("ID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_x_test_case_71
+	 * FOREIGN KEY (TEST_CASE_64_69_ID)
+	 * REFERENCES test2.x_test_case_64_69 (ID)
+	 * 
+ */ + public final org.jooq.TableField TEST_CASE_64_69_ID = createField("TEST_CASE_64_69_ID", org.jooq.impl.SQLDataType.INTEGER, this); + + public XTestCase_71() { + super("x_test_case_71", org.jooq.test.mysql2.generatedclasses.Test2.TEST2); + } + + public XTestCase_71(java.lang.String alias) { + super(alias, org.jooq.test.mysql2.generatedclasses.Test2.TEST2, org.jooq.test.mysql2.generatedclasses.tables.XTestCase_71.X_TEST_CASE_71); + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.test.mysql2.generatedclasses.Keys.KEY_X_TEST_CASE_71_PRIMARY; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.test.mysql2.generatedclasses.Keys.KEY_X_TEST_CASE_71_PRIMARY); + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getReferences() { + return java.util.Arrays.>asList(org.jooq.test.mysql2.generatedclasses.Keys.FK_X_TEST_CASE_71); + } + + @Override + public org.jooq.test.mysql2.generatedclasses.tables.XTestCase_71 as(java.lang.String alias) { + return new org.jooq.test.mysql2.generatedclasses.tables.XTestCase_71(alias); + } +} diff --git a/jOOQ-test/src/org/jooq/test/mysql2/generatedclasses/tables/XTestCase_85.java b/jOOQ-test/src/org/jooq/test/mysql2/generatedclasses/tables/XTestCase_85.java new file mode 100644 index 00000000000..46034c6e836 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/mysql2/generatedclasses/tables/XTestCase_85.java @@ -0,0 +1,91 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.mysql2.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + * + * An unused table in the same schema. + */ +public class XTestCase_85 extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = 1152990695; + + /** + * The singleton instance of test2.x_test_case_85 + */ + public static final org.jooq.test.mysql2.generatedclasses.tables.XTestCase_85 X_TEST_CASE_85 = new org.jooq.test.mysql2.generatedclasses.tables.XTestCase_85(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.mysql2.generatedclasses.tables.records.XTestCase_85Record.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final org.jooq.TableField ID = createField("id", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_x_test_case_85
+	 * FOREIGN KEY (x_unused_id, x_unused_name)
+	 * REFERENCES test2.x_unused (ID, NAME)
+	 * 
+ */ + public final org.jooq.TableField X_UNUSED_ID = createField("x_unused_id", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_x_test_case_85
+	 * FOREIGN KEY (x_unused_id, x_unused_name)
+	 * REFERENCES test2.x_unused (ID, NAME)
+	 * 
+ */ + public final org.jooq.TableField X_UNUSED_NAME = createField("x_unused_name", org.jooq.impl.SQLDataType.VARCHAR, this); + + public XTestCase_85() { + super("x_test_case_85", org.jooq.test.mysql2.generatedclasses.Test2.TEST2); + } + + public XTestCase_85(java.lang.String alias) { + super(alias, org.jooq.test.mysql2.generatedclasses.Test2.TEST2, org.jooq.test.mysql2.generatedclasses.tables.XTestCase_85.X_TEST_CASE_85); + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.test.mysql2.generatedclasses.Keys.KEY_X_TEST_CASE_85_PRIMARY; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.test.mysql2.generatedclasses.Keys.KEY_X_TEST_CASE_85_PRIMARY); + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getReferences() { + return java.util.Arrays.>asList(org.jooq.test.mysql2.generatedclasses.Keys.FK_X_TEST_CASE_85); + } + + @Override + public org.jooq.test.mysql2.generatedclasses.tables.XTestCase_85 as(java.lang.String alias) { + return new org.jooq.test.mysql2.generatedclasses.tables.XTestCase_85(alias); + } +} diff --git a/jOOQ-test/src/org/jooq/test/mysql2/generatedclasses/tables/XUnused.java b/jOOQ-test/src/org/jooq/test/mysql2/generatedclasses/tables/XUnused.java new file mode 100644 index 00000000000..ea14bddec9e --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/mysql2/generatedclasses/tables/XUnused.java @@ -0,0 +1,148 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.mysql2.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + * + * An unused table in the same schema. + */ +public class XUnused extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = 1578546334; + + /** + * The singleton instance of test2.x_unused + */ + public static final org.jooq.test.mysql2.generatedclasses.tables.XUnused X_UNUSED = new org.jooq.test.mysql2.generatedclasses.tables.XUnused(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.mysql2.generatedclasses.tables.records.XUnusedRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final org.jooq.TableField ID = createField("ID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final org.jooq.TableField NAME = createField("NAME", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField BIG_INTEGER = createField("BIG_INTEGER", org.jooq.impl.SQLDataType.DECIMAL_INTEGER, this); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_x_unused_self
+	 * FOREIGN KEY (ID_REF, NAME_REF)
+	 * REFERENCES test2.x_unused (ID, NAME)
+	 * 
+ */ + public final org.jooq.TableField ID_REF = createField("ID_REF", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_x_unused_self
+	 * FOREIGN KEY (ID_REF, NAME_REF)
+	 * REFERENCES test2.x_unused (ID, NAME)
+	 * 
+ */ + public final org.jooq.TableField NAME_REF = createField("NAME_REF", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField CLASS = createField("CLASS", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField FIELDS = createField("FIELDS", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField CONFIGURATION = createField("CONFIGURATION", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField U_D_T = createField("U_D_T", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField META_DATA = createField("META_DATA", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField TYPE0 = createField("TYPE0", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField PRIMARY_KEY = createField("PRIMARY_KEY", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField PRIMARYKEY = createField("PRIMARYKEY", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField FIELD_737 = createField("FIELD 737", org.jooq.impl.SQLDataType.DECIMAL, this); + + public XUnused() { + super("x_unused", org.jooq.test.mysql2.generatedclasses.Test2.TEST2); + } + + public XUnused(java.lang.String alias) { + super(alias, org.jooq.test.mysql2.generatedclasses.Test2.TEST2, org.jooq.test.mysql2.generatedclasses.tables.XUnused.X_UNUSED); + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.test.mysql2.generatedclasses.Keys.KEY_X_UNUSED_PRIMARY; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.test.mysql2.generatedclasses.Keys.KEY_X_UNUSED_PRIMARY, org.jooq.test.mysql2.generatedclasses.Keys.KEY_X_UNUSED_UK_X_UNUSED_ID); + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getReferences() { + return java.util.Arrays.>asList(org.jooq.test.mysql2.generatedclasses.Keys.FK_X_UNUSED_SELF); + } + + @Override + public org.jooq.test.mysql2.generatedclasses.tables.XUnused as(java.lang.String alias) { + return new org.jooq.test.mysql2.generatedclasses.tables.XUnused(alias); + } +} diff --git a/jOOQ-test/src/org/jooq/test/mysql2/generatedclasses/tables/pojos/TAuthor.java b/jOOQ-test/src/org/jooq/test/mysql2/generatedclasses/tables/pojos/TAuthor.java new file mode 100644 index 00000000000..ac95655c013 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/mysql2/generatedclasses/tables/pojos/TAuthor.java @@ -0,0 +1,78 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.mysql2.generatedclasses.tables.pojos; + +/** + * This class is generated by jOOQ. + * + * An entity holding authors of books + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "t_author", schema = "test2") +public class TAuthor implements java.io.Serializable { + + private static final long serialVersionUID = -1350392401; + + private java.lang.Integer id; + private java.lang.String firstName; + private java.lang.String lastName; + private java.sql.Date dateOfBirth; + private java.lang.Integer yearOfBirth; + private java.lang.String address; + + @javax.persistence.Id + @javax.persistence.Column(name = "ID", unique = true, nullable = false, precision = 10) + public java.lang.Integer getId() { + return this.id; + } + + public void setId(java.lang.Integer id) { + this.id = id; + } + + @javax.persistence.Column(name = "FIRST_NAME", length = 50) + public java.lang.String getFirstName() { + return this.firstName; + } + + public void setFirstName(java.lang.String firstName) { + this.firstName = firstName; + } + + @javax.persistence.Column(name = "LAST_NAME", nullable = false, length = 50) + public java.lang.String getLastName() { + return this.lastName; + } + + public void setLastName(java.lang.String lastName) { + this.lastName = lastName; + } + + @javax.persistence.Column(name = "DATE_OF_BIRTH") + public java.sql.Date getDateOfBirth() { + return this.dateOfBirth; + } + + public void setDateOfBirth(java.sql.Date dateOfBirth) { + this.dateOfBirth = dateOfBirth; + } + + @javax.persistence.Column(name = "YEAR_OF_BIRTH", precision = 10) + public java.lang.Integer getYearOfBirth() { + return this.yearOfBirth; + } + + public void setYearOfBirth(java.lang.Integer yearOfBirth) { + this.yearOfBirth = yearOfBirth; + } + + @javax.persistence.Column(name = "ADDRESS", length = 200) + public java.lang.String getAddress() { + return this.address; + } + + public void setAddress(java.lang.String address) { + this.address = address; + } +} diff --git a/jOOQ-test/src/org/jooq/test/mysql2/generatedclasses/tables/pojos/TBook.java b/jOOQ-test/src/org/jooq/test/mysql2/generatedclasses/tables/pojos/TBook.java new file mode 100644 index 00000000000..14148d33f4a --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/mysql2/generatedclasses/tables/pojos/TBook.java @@ -0,0 +1,118 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.mysql2.generatedclasses.tables.pojos; + +/** + * This class is generated by jOOQ. + * + * An entity holding books + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "t_book", schema = "test2") +public class TBook implements java.io.Serializable { + + private static final long serialVersionUID = -591228010; + + private java.lang.Integer id; + private java.lang.Integer authorId; + private java.lang.Integer coAuthorId; + private java.lang.Integer detailsId; + private java.lang.String title; + private java.lang.Integer publishedIn; + private org.jooq.test.mysql2.generatedclasses.enums.TLanguage languageId; + private java.lang.String contentText; + private byte[] contentPdf; + private org.jooq.test.mysql2.generatedclasses.enums.TBookStatus status; + + @javax.persistence.Id + @javax.persistence.Column(name = "ID", unique = true, nullable = false, precision = 10) + public java.lang.Integer getId() { + return this.id; + } + + public void setId(java.lang.Integer id) { + this.id = id; + } + + @javax.persistence.Column(name = "AUTHOR_ID", nullable = false, precision = 10) + public java.lang.Integer getAuthorId() { + return this.authorId; + } + + public void setAuthorId(java.lang.Integer authorId) { + this.authorId = authorId; + } + + @javax.persistence.Column(name = "co_author_id", precision = 10) + public java.lang.Integer getCoAuthorId() { + return this.coAuthorId; + } + + public void setCoAuthorId(java.lang.Integer coAuthorId) { + this.coAuthorId = coAuthorId; + } + + @javax.persistence.Column(name = "DETAILS_ID", precision = 10) + public java.lang.Integer getDetailsId() { + return this.detailsId; + } + + public void setDetailsId(java.lang.Integer detailsId) { + this.detailsId = detailsId; + } + + @javax.persistence.Column(name = "TITLE", nullable = false, length = 65535) + public java.lang.String getTitle() { + return this.title; + } + + public void setTitle(java.lang.String title) { + this.title = title; + } + + @javax.persistence.Column(name = "PUBLISHED_IN", nullable = false, precision = 10) + public java.lang.Integer getPublishedIn() { + return this.publishedIn; + } + + public void setPublishedIn(java.lang.Integer publishedIn) { + this.publishedIn = publishedIn; + } + + @javax.persistence.Column(name = "LANGUAGE_ID", nullable = false, precision = 10) + public org.jooq.test.mysql2.generatedclasses.enums.TLanguage getLanguageId() { + return this.languageId; + } + + public void setLanguageId(org.jooq.test.mysql2.generatedclasses.enums.TLanguage languageId) { + this.languageId = languageId; + } + + @javax.persistence.Column(name = "CONTENT_TEXT") + public java.lang.String getContentText() { + return this.contentText; + } + + public void setContentText(java.lang.String contentText) { + this.contentText = contentText; + } + + @javax.persistence.Column(name = "CONTENT_PDF") + public byte[] getContentPdf() { + return this.contentPdf; + } + + public void setContentPdf(byte[] contentPdf) { + this.contentPdf = contentPdf; + } + + @javax.persistence.Column(name = "STATUS", length = 8) + public org.jooq.test.mysql2.generatedclasses.enums.TBookStatus getStatus() { + return this.status; + } + + public void setStatus(org.jooq.test.mysql2.generatedclasses.enums.TBookStatus status) { + this.status = status; + } +} diff --git a/jOOQ-test/src/org/jooq/test/mysql2/generatedclasses/tables/pojos/TBookStore.java b/jOOQ-test/src/org/jooq/test/mysql2/generatedclasses/tables/pojos/TBookStore.java new file mode 100644 index 00000000000..d4aa218dfef --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/mysql2/generatedclasses/tables/pojos/TBookStore.java @@ -0,0 +1,27 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.mysql2.generatedclasses.tables.pojos; + +/** + * This class is generated by jOOQ. + * + * A book store + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "t_book_store", schema = "test2") +public class TBookStore implements java.io.Serializable { + + private static final long serialVersionUID = 758225356; + + private java.lang.String name; + + @javax.persistence.Column(name = "name", unique = true, nullable = false, length = 400) + public java.lang.String getName() { + return this.name; + } + + public void setName(java.lang.String name) { + this.name = name; + } +} diff --git a/jOOQ-test/src/org/jooq/test/mysql2/generatedclasses/tables/pojos/TBookToBookStore.java b/jOOQ-test/src/org/jooq/test/mysql2/generatedclasses/tables/pojos/TBookToBookStore.java new file mode 100644 index 00000000000..15b6732d658 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/mysql2/generatedclasses/tables/pojos/TBookToBookStore.java @@ -0,0 +1,49 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.mysql2.generatedclasses.tables.pojos; + +/** + * This class is generated by jOOQ. + * + * An m:n relation between books and book stores + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "t_book_to_book_store", schema = "test2", uniqueConstraints = { + @javax.persistence.UniqueConstraint(columnNames = {"book_store_name", "book_id"}) +}) +public class TBookToBookStore implements java.io.Serializable { + + private static final long serialVersionUID = 96239693; + + private java.lang.String bookStoreName; + private java.lang.Integer bookId; + private java.lang.Integer stock; + + @javax.persistence.Column(name = "book_store_name", nullable = false, length = 400) + public java.lang.String getBookStoreName() { + return this.bookStoreName; + } + + public void setBookStoreName(java.lang.String bookStoreName) { + this.bookStoreName = bookStoreName; + } + + @javax.persistence.Column(name = "book_id", nullable = false, precision = 10) + public java.lang.Integer getBookId() { + return this.bookId; + } + + public void setBookId(java.lang.Integer bookId) { + this.bookId = bookId; + } + + @javax.persistence.Column(name = "stock", precision = 10) + public java.lang.Integer getStock() { + return this.stock; + } + + public void setStock(java.lang.Integer stock) { + this.stock = stock; + } +} diff --git a/jOOQ-test/src/org/jooq/test/mysql2/generatedclasses/tables/pojos/TBooleans.java b/jOOQ-test/src/org/jooq/test/mysql2/generatedclasses/tables/pojos/TBooleans.java new file mode 100644 index 00000000000..67ee836ec89 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/mysql2/generatedclasses/tables/pojos/TBooleans.java @@ -0,0 +1,126 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.mysql2.generatedclasses.tables.pojos; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "t_booleans", schema = "test2") +public class TBooleans implements java.io.Serializable { + + private static final long serialVersionUID = 1216487531; + + private java.lang.Integer id; + private org.jooq.test._.converters.Boolean_10 oneZero; + private org.jooq.test._.converters.Boolean_TF_LC trueFalseLc; + private org.jooq.test._.converters.Boolean_TF_UC trueFalseUc; + private org.jooq.test._.converters.Boolean_YES_NO_LC yesNoLc; + private org.jooq.test._.converters.Boolean_YES_NO_UC yesNoUc; + private org.jooq.test._.converters.Boolean_YN_LC yNLc; + private org.jooq.test._.converters.Boolean_YN_UC yNUc; + private java.lang.Boolean vcBoolean; + private java.lang.Boolean cBoolean; + private java.lang.Boolean nBoolean; + + @javax.persistence.Id + @javax.persistence.Column(name = "id", unique = true, nullable = false, precision = 10) + public java.lang.Integer getId() { + return this.id; + } + + public void setId(java.lang.Integer id) { + this.id = id; + } + + @javax.persistence.Column(name = "one_zero", precision = 10) + public org.jooq.test._.converters.Boolean_10 getOneZero() { + return this.oneZero; + } + + public void setOneZero(org.jooq.test._.converters.Boolean_10 oneZero) { + this.oneZero = oneZero; + } + + @javax.persistence.Column(name = "true_false_lc", length = 5) + public org.jooq.test._.converters.Boolean_TF_LC getTrueFalseLc() { + return this.trueFalseLc; + } + + public void setTrueFalseLc(org.jooq.test._.converters.Boolean_TF_LC trueFalseLc) { + this.trueFalseLc = trueFalseLc; + } + + @javax.persistence.Column(name = "true_false_uc", length = 5) + public org.jooq.test._.converters.Boolean_TF_UC getTrueFalseUc() { + return this.trueFalseUc; + } + + public void setTrueFalseUc(org.jooq.test._.converters.Boolean_TF_UC trueFalseUc) { + this.trueFalseUc = trueFalseUc; + } + + @javax.persistence.Column(name = "yes_no_lc", length = 3) + public org.jooq.test._.converters.Boolean_YES_NO_LC getYesNoLc() { + return this.yesNoLc; + } + + public void setYesNoLc(org.jooq.test._.converters.Boolean_YES_NO_LC yesNoLc) { + this.yesNoLc = yesNoLc; + } + + @javax.persistence.Column(name = "yes_no_uc", length = 3) + public org.jooq.test._.converters.Boolean_YES_NO_UC getYesNoUc() { + return this.yesNoUc; + } + + public void setYesNoUc(org.jooq.test._.converters.Boolean_YES_NO_UC yesNoUc) { + this.yesNoUc = yesNoUc; + } + + @javax.persistence.Column(name = "y_n_lc", length = 1) + public org.jooq.test._.converters.Boolean_YN_LC getYNLc() { + return this.yNLc; + } + + public void setYNLc(org.jooq.test._.converters.Boolean_YN_LC yNLc) { + this.yNLc = yNLc; + } + + @javax.persistence.Column(name = "y_n_uc", length = 1) + public org.jooq.test._.converters.Boolean_YN_UC getYNUc() { + return this.yNUc; + } + + public void setYNUc(org.jooq.test._.converters.Boolean_YN_UC yNUc) { + this.yNUc = yNUc; + } + + @javax.persistence.Column(name = "vc_boolean", length = 1) + public java.lang.Boolean getVcBoolean() { + return this.vcBoolean; + } + + public void setVcBoolean(java.lang.Boolean vcBoolean) { + this.vcBoolean = vcBoolean; + } + + @javax.persistence.Column(name = "c_boolean", length = 1) + public java.lang.Boolean getCBoolean() { + return this.cBoolean; + } + + public void setCBoolean(java.lang.Boolean cBoolean) { + this.cBoolean = cBoolean; + } + + @javax.persistence.Column(name = "n_boolean", precision = 10) + public java.lang.Boolean getNBoolean() { + return this.nBoolean; + } + + public void setNBoolean(java.lang.Boolean nBoolean) { + this.nBoolean = nBoolean; + } +} diff --git a/jOOQ-test/src/org/jooq/test/mysql2/generatedclasses/tables/pojos/TDates.java b/jOOQ-test/src/org/jooq/test/mysql2/generatedclasses/tables/pojos/TDates.java new file mode 100644 index 00000000000..eff00980a06 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/mysql2/generatedclasses/tables/pojos/TDates.java @@ -0,0 +1,76 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.mysql2.generatedclasses.tables.pojos; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "t_dates", schema = "test2") +public class TDates implements java.io.Serializable { + + private static final long serialVersionUID = -536599680; + + private java.lang.Integer id; + private java.sql.Date d; + private java.sql.Time t; + private java.sql.Timestamp ts; + private java.lang.Integer dInt; + private java.lang.Long tsBigint; + + @javax.persistence.Id + @javax.persistence.Column(name = "id", unique = true, nullable = false, precision = 10) + public java.lang.Integer getId() { + return this.id; + } + + public void setId(java.lang.Integer id) { + this.id = id; + } + + @javax.persistence.Column(name = "d") + public java.sql.Date getD() { + return this.d; + } + + public void setD(java.sql.Date d) { + this.d = d; + } + + @javax.persistence.Column(name = "t") + public java.sql.Time getT() { + return this.t; + } + + public void setT(java.sql.Time t) { + this.t = t; + } + + @javax.persistence.Column(name = "ts") + public java.sql.Timestamp getTs() { + return this.ts; + } + + public void setTs(java.sql.Timestamp ts) { + this.ts = ts; + } + + @javax.persistence.Column(name = "d_int", precision = 10) + public java.lang.Integer getDInt() { + return this.dInt; + } + + public void setDInt(java.lang.Integer dInt) { + this.dInt = dInt; + } + + @javax.persistence.Column(name = "ts_bigint", precision = 19) + public java.lang.Long getTsBigint() { + return this.tsBigint; + } + + public void setTsBigint(java.lang.Long tsBigint) { + this.tsBigint = tsBigint; + } +} diff --git a/jOOQ-test/src/org/jooq/test/mysql2/generatedclasses/tables/pojos/TIdentityPk.java b/jOOQ-test/src/org/jooq/test/mysql2/generatedclasses/tables/pojos/TIdentityPk.java new file mode 100644 index 00000000000..08cba44edf4 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/mysql2/generatedclasses/tables/pojos/TIdentityPk.java @@ -0,0 +1,36 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.mysql2.generatedclasses.tables.pojos; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "t_identity_pk", schema = "test2") +public class TIdentityPk implements java.io.Serializable { + + private static final long serialVersionUID = 1178858305; + + private java.lang.Integer id; + private java.lang.Integer val; + + @javax.persistence.Id + @javax.persistence.Column(name = "id", unique = true, nullable = false, precision = 10) + public java.lang.Integer getId() { + return this.id; + } + + public void setId(java.lang.Integer id) { + this.id = id; + } + + @javax.persistence.Column(name = "val", precision = 10) + public java.lang.Integer getVal() { + return this.val; + } + + public void setVal(java.lang.Integer val) { + this.val = val; + } +} diff --git a/jOOQ-test/src/org/jooq/test/mysql2/generatedclasses/tables/pojos/TTriggers.java b/jOOQ-test/src/org/jooq/test/mysql2/generatedclasses/tables/pojos/TTriggers.java new file mode 100644 index 00000000000..43e83553291 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/mysql2/generatedclasses/tables/pojos/TTriggers.java @@ -0,0 +1,46 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.mysql2.generatedclasses.tables.pojos; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "t_triggers", schema = "test2") +public class TTriggers implements java.io.Serializable { + + private static final long serialVersionUID = -716083848; + + private java.lang.Integer idGenerated; + private java.lang.Integer id; + private java.lang.Integer counter; + + @javax.persistence.Id + @javax.persistence.Column(name = "id_generated", unique = true, nullable = false, precision = 10) + public java.lang.Integer getIdGenerated() { + return this.idGenerated; + } + + public void setIdGenerated(java.lang.Integer idGenerated) { + this.idGenerated = idGenerated; + } + + @javax.persistence.Column(name = "id", precision = 10) + public java.lang.Integer getId() { + return this.id; + } + + public void setId(java.lang.Integer id) { + this.id = id; + } + + @javax.persistence.Column(name = "counter", precision = 10) + public java.lang.Integer getCounter() { + return this.counter; + } + + public void setCounter(java.lang.Integer counter) { + this.counter = counter; + } +} diff --git a/jOOQ-test/src/org/jooq/test/mysql2/generatedclasses/tables/pojos/TUnsigned.java b/jOOQ-test/src/org/jooq/test/mysql2/generatedclasses/tables/pojos/TUnsigned.java new file mode 100644 index 00000000000..cdb313bc224 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/mysql2/generatedclasses/tables/pojos/TUnsigned.java @@ -0,0 +1,55 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.mysql2.generatedclasses.tables.pojos; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "t_unsigned", schema = "test2") +public class TUnsigned implements java.io.Serializable { + + private static final long serialVersionUID = 275266749; + + private org.jooq.tools.unsigned.UByte uByte; + private org.jooq.tools.unsigned.UShort uShort; + private org.jooq.tools.unsigned.UInteger uInt; + private org.jooq.tools.unsigned.ULong uLong; + + @javax.persistence.Column(name = "u_byte", precision = 3) + public org.jooq.tools.unsigned.UByte getUByte() { + return this.uByte; + } + + public void setUByte(org.jooq.tools.unsigned.UByte uByte) { + this.uByte = uByte; + } + + @javax.persistence.Column(name = "u_short", precision = 5) + public org.jooq.tools.unsigned.UShort getUShort() { + return this.uShort; + } + + public void setUShort(org.jooq.tools.unsigned.UShort uShort) { + this.uShort = uShort; + } + + @javax.persistence.Column(name = "u_int", precision = 10) + public org.jooq.tools.unsigned.UInteger getUInt() { + return this.uInt; + } + + public void setUInt(org.jooq.tools.unsigned.UInteger uInt) { + this.uInt = uInt; + } + + @javax.persistence.Column(name = "u_long", precision = 20) + public org.jooq.tools.unsigned.ULong getULong() { + return this.uLong; + } + + public void setULong(org.jooq.tools.unsigned.ULong uLong) { + this.uLong = uLong; + } +} diff --git a/jOOQ-test/src/org/jooq/test/mysql2/generatedclasses/tables/pojos/T_639NumbersTable.java b/jOOQ-test/src/org/jooq/test/mysql2/generatedclasses/tables/pojos/T_639NumbersTable.java new file mode 100644 index 00000000000..cf47b88fae4 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/mysql2/generatedclasses/tables/pojos/T_639NumbersTable.java @@ -0,0 +1,146 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.mysql2.generatedclasses.tables.pojos; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "t_639_numbers_table", schema = "test2") +public class T_639NumbersTable implements java.io.Serializable { + + private static final long serialVersionUID = -100384666; + + private java.lang.Integer id; + private java.lang.Byte byte_; + private java.lang.Short short_; + private java.lang.Integer integer; + private java.lang.Long long_; + private java.lang.Byte byteDecimal; + private java.lang.Short shortDecimal; + private java.lang.Integer integerDecimal; + private java.lang.Long longDecimal; + private java.math.BigInteger bigInteger; + private java.math.BigDecimal bigDecimal; + private java.lang.Double float_; + private java.lang.Double double_; + + @javax.persistence.Id + @javax.persistence.Column(name = "ID", unique = true, nullable = false, precision = 10) + public java.lang.Integer getId() { + return this.id; + } + + public void setId(java.lang.Integer id) { + this.id = id; + } + + @javax.persistence.Column(name = "BYTE", precision = 3) + public java.lang.Byte getByte() { + return this.byte_; + } + + public void setByte(java.lang.Byte byte_) { + this.byte_ = byte_; + } + + @javax.persistence.Column(name = "SHORT", precision = 5) + public java.lang.Short getShort() { + return this.short_; + } + + public void setShort(java.lang.Short short_) { + this.short_ = short_; + } + + @javax.persistence.Column(name = "INTEGER", precision = 10) + public java.lang.Integer getInteger() { + return this.integer; + } + + public void setInteger(java.lang.Integer integer) { + this.integer = integer; + } + + @javax.persistence.Column(name = "LONG", precision = 19) + public java.lang.Long getLong() { + return this.long_; + } + + public void setLong(java.lang.Long long_) { + this.long_ = long_; + } + + @javax.persistence.Column(name = "BYTE_DECIMAL", precision = 2) + public java.lang.Byte getByteDecimal() { + return this.byteDecimal; + } + + public void setByteDecimal(java.lang.Byte byteDecimal) { + this.byteDecimal = byteDecimal; + } + + @javax.persistence.Column(name = "SHORT_DECIMAL", precision = 4) + public java.lang.Short getShortDecimal() { + return this.shortDecimal; + } + + public void setShortDecimal(java.lang.Short shortDecimal) { + this.shortDecimal = shortDecimal; + } + + @javax.persistence.Column(name = "INTEGER_DECIMAL", precision = 9) + public java.lang.Integer getIntegerDecimal() { + return this.integerDecimal; + } + + public void setIntegerDecimal(java.lang.Integer integerDecimal) { + this.integerDecimal = integerDecimal; + } + + @javax.persistence.Column(name = "LONG_DECIMAL", precision = 18) + public java.lang.Long getLongDecimal() { + return this.longDecimal; + } + + public void setLongDecimal(java.lang.Long longDecimal) { + this.longDecimal = longDecimal; + } + + @javax.persistence.Column(name = "BIG_INTEGER", precision = 22) + public java.math.BigInteger getBigInteger() { + return this.bigInteger; + } + + public void setBigInteger(java.math.BigInteger bigInteger) { + this.bigInteger = bigInteger; + } + + @javax.persistence.Column(name = "BIG_DECIMAL", precision = 22, scale = 5) + public java.math.BigDecimal getBigDecimal() { + return this.bigDecimal; + } + + public void setBigDecimal(java.math.BigDecimal bigDecimal) { + this.bigDecimal = bigDecimal; + } + + @javax.persistence.Column(name = "FLOAT", precision = 12) + public java.lang.Double getFloat() { + return this.float_; + } + + public void setFloat(java.lang.Double float_) { + this.float_ = float_; + } + + @javax.persistence.Column(name = "DOUBLE", precision = 22) + public java.lang.Double getDouble() { + return this.double_; + } + + public void setDouble(java.lang.Double double_) { + this.double_ = double_; + } +} diff --git a/jOOQ-test/src/org/jooq/test/mysql2/generatedclasses/tables/pojos/T_658Ref.java b/jOOQ-test/src/org/jooq/test/mysql2/generatedclasses/tables/pojos/T_658Ref.java new file mode 100644 index 00000000000..7f94309e8d0 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/mysql2/generatedclasses/tables/pojos/T_658Ref.java @@ -0,0 +1,75 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.mysql2.generatedclasses.tables.pojos; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "t_658_ref", schema = "test2") +public class T_658Ref implements java.io.Serializable { + + private static final long serialVersionUID = -1272421939; + + private org.jooq.test.mysql2.generatedclasses.enums.T_658_11 ref_11; + private org.jooq.test.mysql2.generatedclasses.enums.T_658_21 ref_21; + private org.jooq.test.mysql2.generatedclasses.enums.T_658_31 ref_31; + private org.jooq.test.mysql2.generatedclasses.enums.T_658_12 ref_12; + private org.jooq.test.mysql2.generatedclasses.enums.T_658_22 ref_22; + private org.jooq.test.mysql2.generatedclasses.enums.T_658_32 ref_32; + + @javax.persistence.Column(name = "ref_11", length = 3) + public org.jooq.test.mysql2.generatedclasses.enums.T_658_11 getRef_11() { + return this.ref_11; + } + + public void setRef_11(org.jooq.test.mysql2.generatedclasses.enums.T_658_11 ref_11) { + this.ref_11 = ref_11; + } + + @javax.persistence.Column(name = "ref_21", precision = 10) + public org.jooq.test.mysql2.generatedclasses.enums.T_658_21 getRef_21() { + return this.ref_21; + } + + public void setRef_21(org.jooq.test.mysql2.generatedclasses.enums.T_658_21 ref_21) { + this.ref_21 = ref_21; + } + + @javax.persistence.Column(name = "ref_31", precision = 19) + public org.jooq.test.mysql2.generatedclasses.enums.T_658_31 getRef_31() { + return this.ref_31; + } + + public void setRef_31(org.jooq.test.mysql2.generatedclasses.enums.T_658_31 ref_31) { + this.ref_31 = ref_31; + } + + @javax.persistence.Column(name = "ref_12", length = 3) + public org.jooq.test.mysql2.generatedclasses.enums.T_658_12 getRef_12() { + return this.ref_12; + } + + public void setRef_12(org.jooq.test.mysql2.generatedclasses.enums.T_658_12 ref_12) { + this.ref_12 = ref_12; + } + + @javax.persistence.Column(name = "ref_22", precision = 10) + public org.jooq.test.mysql2.generatedclasses.enums.T_658_22 getRef_22() { + return this.ref_22; + } + + public void setRef_22(org.jooq.test.mysql2.generatedclasses.enums.T_658_22 ref_22) { + this.ref_22 = ref_22; + } + + @javax.persistence.Column(name = "ref_32", precision = 19) + public org.jooq.test.mysql2.generatedclasses.enums.T_658_32 getRef_32() { + return this.ref_32; + } + + public void setRef_32(org.jooq.test.mysql2.generatedclasses.enums.T_658_32 ref_32) { + this.ref_32 = ref_32; + } +} diff --git a/jOOQ-test/src/org/jooq/test/mysql2/generatedclasses/tables/pojos/T_725LobTest.java b/jOOQ-test/src/org/jooq/test/mysql2/generatedclasses/tables/pojos/T_725LobTest.java new file mode 100644 index 00000000000..9168de48ea5 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/mysql2/generatedclasses/tables/pojos/T_725LobTest.java @@ -0,0 +1,36 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.mysql2.generatedclasses.tables.pojos; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "t_725_lob_test", schema = "test2") +public class T_725LobTest implements java.io.Serializable { + + private static final long serialVersionUID = -128762959; + + private java.lang.Integer id; + private byte[] lob; + + @javax.persistence.Id + @javax.persistence.Column(name = "ID", unique = true, nullable = false, precision = 10) + public java.lang.Integer getId() { + return this.id; + } + + public void setId(java.lang.Integer id) { + this.id = id; + } + + @javax.persistence.Column(name = "LOB") + public byte[] getLob() { + return this.lob; + } + + public void setLob(byte[] lob) { + this.lob = lob; + } +} diff --git a/jOOQ-test/src/org/jooq/test/mysql2/generatedclasses/tables/pojos/T_785.java b/jOOQ-test/src/org/jooq/test/mysql2/generatedclasses/tables/pojos/T_785.java new file mode 100644 index 00000000000..cb25045e0ed --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/mysql2/generatedclasses/tables/pojos/T_785.java @@ -0,0 +1,45 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.mysql2.generatedclasses.tables.pojos; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "t_785", schema = "test2") +public class T_785 implements java.io.Serializable { + + private static final long serialVersionUID = -493055006; + + private java.lang.Integer id; + private java.lang.String name; + private java.lang.String value; + + @javax.persistence.Column(name = "ID", precision = 10) + public java.lang.Integer getId() { + return this.id; + } + + public void setId(java.lang.Integer id) { + this.id = id; + } + + @javax.persistence.Column(name = "NAME", length = 50) + public java.lang.String getName() { + return this.name; + } + + public void setName(java.lang.String name) { + this.name = name; + } + + @javax.persistence.Column(name = "VALUE", length = 50) + public java.lang.String getValue() { + return this.value; + } + + public void setValue(java.lang.String value) { + this.value = value; + } +} diff --git a/jOOQ-test/src/org/jooq/test/mysql2/generatedclasses/tables/pojos/T_959.java b/jOOQ-test/src/org/jooq/test/mysql2/generatedclasses/tables/pojos/T_959.java new file mode 100644 index 00000000000..5f07e1601ea --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/mysql2/generatedclasses/tables/pojos/T_959.java @@ -0,0 +1,25 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.mysql2.generatedclasses.tables.pojos; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "t_959", schema = "test2") +public class T_959 implements java.io.Serializable { + + private static final long serialVersionUID = -819786227; + + private org.jooq.test.mysql2.generatedclasses.enums.T_959JavaKeywords javaKeywords; + + @javax.persistence.Column(name = "java_keywords", length = 12) + public org.jooq.test.mysql2.generatedclasses.enums.T_959JavaKeywords getJavaKeywords() { + return this.javaKeywords; + } + + public void setJavaKeywords(org.jooq.test.mysql2.generatedclasses.enums.T_959JavaKeywords javaKeywords) { + this.javaKeywords = javaKeywords; + } +} diff --git a/jOOQ-test/src/org/jooq/test/mysql2/generatedclasses/tables/pojos/VAuthor.java b/jOOQ-test/src/org/jooq/test/mysql2/generatedclasses/tables/pojos/VAuthor.java new file mode 100644 index 00000000000..b3ba7ba0387 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/mysql2/generatedclasses/tables/pojos/VAuthor.java @@ -0,0 +1,77 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.mysql2.generatedclasses.tables.pojos; + +/** + * This class is generated by jOOQ. + * + * VIEW + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "v_author", schema = "test2") +public class VAuthor implements java.io.Serializable { + + private static final long serialVersionUID = 308165657; + + private java.lang.Integer id; + private java.lang.String firstName; + private java.lang.String lastName; + private java.sql.Date dateOfBirth; + private java.lang.Integer yearOfBirth; + private java.lang.String address; + + @javax.persistence.Column(name = "ID", nullable = false, precision = 10) + public java.lang.Integer getId() { + return this.id; + } + + public void setId(java.lang.Integer id) { + this.id = id; + } + + @javax.persistence.Column(name = "FIRST_NAME", length = 50) + public java.lang.String getFirstName() { + return this.firstName; + } + + public void setFirstName(java.lang.String firstName) { + this.firstName = firstName; + } + + @javax.persistence.Column(name = "LAST_NAME", nullable = false, length = 50) + public java.lang.String getLastName() { + return this.lastName; + } + + public void setLastName(java.lang.String lastName) { + this.lastName = lastName; + } + + @javax.persistence.Column(name = "DATE_OF_BIRTH") + public java.sql.Date getDateOfBirth() { + return this.dateOfBirth; + } + + public void setDateOfBirth(java.sql.Date dateOfBirth) { + this.dateOfBirth = dateOfBirth; + } + + @javax.persistence.Column(name = "YEAR_OF_BIRTH", precision = 10) + public java.lang.Integer getYearOfBirth() { + return this.yearOfBirth; + } + + public void setYearOfBirth(java.lang.Integer yearOfBirth) { + this.yearOfBirth = yearOfBirth; + } + + @javax.persistence.Column(name = "ADDRESS", length = 200) + public java.lang.String getAddress() { + return this.address; + } + + public void setAddress(java.lang.String address) { + this.address = address; + } +} diff --git a/jOOQ-test/src/org/jooq/test/mysql2/generatedclasses/tables/pojos/VBook.java b/jOOQ-test/src/org/jooq/test/mysql2/generatedclasses/tables/pojos/VBook.java new file mode 100644 index 00000000000..1705a288ec2 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/mysql2/generatedclasses/tables/pojos/VBook.java @@ -0,0 +1,117 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.mysql2.generatedclasses.tables.pojos; + +/** + * This class is generated by jOOQ. + * + * VIEW + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "v_book", schema = "test2") +public class VBook implements java.io.Serializable { + + private static final long serialVersionUID = -574980331; + + private java.lang.Integer id; + private java.lang.Integer authorId; + private java.lang.Integer coAuthorId; + private java.lang.Integer detailsId; + private java.lang.String title; + private java.lang.Integer publishedIn; + private java.lang.Integer languageId; + private java.lang.String contentText; + private byte[] contentPdf; + private org.jooq.test.mysql2.generatedclasses.enums.VBookStatus status; + + @javax.persistence.Column(name = "ID", nullable = false, precision = 10) + public java.lang.Integer getId() { + return this.id; + } + + public void setId(java.lang.Integer id) { + this.id = id; + } + + @javax.persistence.Column(name = "AUTHOR_ID", nullable = false, precision = 10) + public java.lang.Integer getAuthorId() { + return this.authorId; + } + + public void setAuthorId(java.lang.Integer authorId) { + this.authorId = authorId; + } + + @javax.persistence.Column(name = "co_author_id", precision = 10) + public java.lang.Integer getCoAuthorId() { + return this.coAuthorId; + } + + public void setCoAuthorId(java.lang.Integer coAuthorId) { + this.coAuthorId = coAuthorId; + } + + @javax.persistence.Column(name = "DETAILS_ID", precision = 10) + public java.lang.Integer getDetailsId() { + return this.detailsId; + } + + public void setDetailsId(java.lang.Integer detailsId) { + this.detailsId = detailsId; + } + + @javax.persistence.Column(name = "TITLE", nullable = false, length = 65535) + public java.lang.String getTitle() { + return this.title; + } + + public void setTitle(java.lang.String title) { + this.title = title; + } + + @javax.persistence.Column(name = "PUBLISHED_IN", nullable = false, precision = 10) + public java.lang.Integer getPublishedIn() { + return this.publishedIn; + } + + public void setPublishedIn(java.lang.Integer publishedIn) { + this.publishedIn = publishedIn; + } + + @javax.persistence.Column(name = "LANGUAGE_ID", nullable = false, precision = 10) + public java.lang.Integer getLanguageId() { + return this.languageId; + } + + public void setLanguageId(java.lang.Integer languageId) { + this.languageId = languageId; + } + + @javax.persistence.Column(name = "CONTENT_TEXT") + public java.lang.String getContentText() { + return this.contentText; + } + + public void setContentText(java.lang.String contentText) { + this.contentText = contentText; + } + + @javax.persistence.Column(name = "CONTENT_PDF") + public byte[] getContentPdf() { + return this.contentPdf; + } + + public void setContentPdf(byte[] contentPdf) { + this.contentPdf = contentPdf; + } + + @javax.persistence.Column(name = "STATUS", length = 8) + public org.jooq.test.mysql2.generatedclasses.enums.VBookStatus getStatus() { + return this.status; + } + + public void setStatus(org.jooq.test.mysql2.generatedclasses.enums.VBookStatus status) { + this.status = status; + } +} diff --git a/jOOQ-test/src/org/jooq/test/mysql2/generatedclasses/tables/pojos/VLibrary.java b/jOOQ-test/src/org/jooq/test/mysql2/generatedclasses/tables/pojos/VLibrary.java new file mode 100644 index 00000000000..cf42743c2ef --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/mysql2/generatedclasses/tables/pojos/VLibrary.java @@ -0,0 +1,37 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.mysql2.generatedclasses.tables.pojos; + +/** + * This class is generated by jOOQ. + * + * VIEW + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "v_library", schema = "test2") +public class VLibrary implements java.io.Serializable { + + private static final long serialVersionUID = -1397579188; + + private java.lang.String author; + private java.lang.String title; + + @javax.persistence.Column(name = "AUTHOR", length = 101) + public java.lang.String getAuthor() { + return this.author; + } + + public void setAuthor(java.lang.String author) { + this.author = author; + } + + @javax.persistence.Column(name = "TITLE", nullable = false, length = 65535) + public java.lang.String getTitle() { + return this.title; + } + + public void setTitle(java.lang.String title) { + this.title = title; + } +} diff --git a/jOOQ-test/src/org/jooq/test/mysql2/generatedclasses/tables/pojos/XTestCase_64_69.java b/jOOQ-test/src/org/jooq/test/mysql2/generatedclasses/tables/pojos/XTestCase_64_69.java new file mode 100644 index 00000000000..ac830f5e058 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/mysql2/generatedclasses/tables/pojos/XTestCase_64_69.java @@ -0,0 +1,38 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.mysql2.generatedclasses.tables.pojos; + +/** + * This class is generated by jOOQ. + * + * An unused table in the same schema. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "x_test_case_64_69", schema = "test2") +public class XTestCase_64_69 implements java.io.Serializable { + + private static final long serialVersionUID = -2131488702; + + private java.lang.Integer id; + private java.lang.Integer unusedId; + + @javax.persistence.Id + @javax.persistence.Column(name = "ID", unique = true, nullable = false, precision = 10) + public java.lang.Integer getId() { + return this.id; + } + + public void setId(java.lang.Integer id) { + this.id = id; + } + + @javax.persistence.Column(name = "UNUSED_ID", precision = 10) + public java.lang.Integer getUnusedId() { + return this.unusedId; + } + + public void setUnusedId(java.lang.Integer unusedId) { + this.unusedId = unusedId; + } +} diff --git a/jOOQ-test/src/org/jooq/test/mysql2/generatedclasses/tables/pojos/XTestCase_71.java b/jOOQ-test/src/org/jooq/test/mysql2/generatedclasses/tables/pojos/XTestCase_71.java new file mode 100644 index 00000000000..fd6f8548867 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/mysql2/generatedclasses/tables/pojos/XTestCase_71.java @@ -0,0 +1,38 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.mysql2.generatedclasses.tables.pojos; + +/** + * This class is generated by jOOQ. + * + * An unused table in the same schema. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "x_test_case_71", schema = "test2") +public class XTestCase_71 implements java.io.Serializable { + + private static final long serialVersionUID = -1604385665; + + private java.lang.Integer id; + private java.lang.Integer testCase_64_69Id; + + @javax.persistence.Id + @javax.persistence.Column(name = "ID", unique = true, nullable = false, precision = 10) + public java.lang.Integer getId() { + return this.id; + } + + public void setId(java.lang.Integer id) { + this.id = id; + } + + @javax.persistence.Column(name = "TEST_CASE_64_69_ID", precision = 10) + public java.lang.Integer getTestCase_64_69Id() { + return this.testCase_64_69Id; + } + + public void setTestCase_64_69Id(java.lang.Integer testCase_64_69Id) { + this.testCase_64_69Id = testCase_64_69Id; + } +} diff --git a/jOOQ-test/src/org/jooq/test/mysql2/generatedclasses/tables/pojos/XTestCase_85.java b/jOOQ-test/src/org/jooq/test/mysql2/generatedclasses/tables/pojos/XTestCase_85.java new file mode 100644 index 00000000000..0a6cee733a0 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/mysql2/generatedclasses/tables/pojos/XTestCase_85.java @@ -0,0 +1,48 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.mysql2.generatedclasses.tables.pojos; + +/** + * This class is generated by jOOQ. + * + * An unused table in the same schema. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "x_test_case_85", schema = "test2") +public class XTestCase_85 implements java.io.Serializable { + + private static final long serialVersionUID = -941216983; + + private java.lang.Integer id; + private java.lang.Integer xUnusedId; + private java.lang.String xUnusedName; + + @javax.persistence.Id + @javax.persistence.Column(name = "id", unique = true, nullable = false, precision = 10) + public java.lang.Integer getId() { + return this.id; + } + + public void setId(java.lang.Integer id) { + this.id = id; + } + + @javax.persistence.Column(name = "x_unused_id", precision = 10) + public java.lang.Integer getXUnusedId() { + return this.xUnusedId; + } + + public void setXUnusedId(java.lang.Integer xUnusedId) { + this.xUnusedId = xUnusedId; + } + + @javax.persistence.Column(name = "x_unused_name", length = 10) + public java.lang.String getXUnusedName() { + return this.xUnusedName; + } + + public void setXUnusedName(java.lang.String xUnusedName) { + this.xUnusedName = xUnusedName; + } +} diff --git a/jOOQ-test/src/org/jooq/test/mysql2/generatedclasses/tables/pojos/XUnused.java b/jOOQ-test/src/org/jooq/test/mysql2/generatedclasses/tables/pojos/XUnused.java new file mode 100644 index 00000000000..079beef8d5b --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/mysql2/generatedclasses/tables/pojos/XUnused.java @@ -0,0 +1,159 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.mysql2.generatedclasses.tables.pojos; + +/** + * This class is generated by jOOQ. + * + * An unused table in the same schema. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "x_unused", schema = "test2", uniqueConstraints = { + @javax.persistence.UniqueConstraint(columnNames = {"ID", "NAME"}) +}) +public class XUnused implements java.io.Serializable { + + private static final long serialVersionUID = 92980481; + + private java.lang.Integer id; + private java.lang.String name; + private java.math.BigInteger bigInteger; + private java.lang.Integer idRef; + private java.lang.String nameRef; + private java.lang.Integer class_; + private java.lang.Integer fields; + private java.lang.Integer configuration; + private java.lang.Integer uDT; + private java.lang.Integer metaData; + private java.lang.Integer type0; + private java.lang.Integer primaryKey; + private java.lang.Integer primarykey; + private java.math.BigDecimal field_737; + + @javax.persistence.Column(name = "ID", unique = true, nullable = false, precision = 10) + public java.lang.Integer getId() { + return this.id; + } + + public void setId(java.lang.Integer id) { + this.id = id; + } + + @javax.persistence.Column(name = "NAME", nullable = false, length = 10) + public java.lang.String getName() { + return this.name; + } + + public void setName(java.lang.String name) { + this.name = name; + } + + @javax.persistence.Column(name = "BIG_INTEGER", precision = 25) + public java.math.BigInteger getBigInteger() { + return this.bigInteger; + } + + public void setBigInteger(java.math.BigInteger bigInteger) { + this.bigInteger = bigInteger; + } + + @javax.persistence.Column(name = "ID_REF", precision = 10) + public java.lang.Integer getIdRef() { + return this.idRef; + } + + public void setIdRef(java.lang.Integer idRef) { + this.idRef = idRef; + } + + @javax.persistence.Column(name = "NAME_REF", length = 10) + public java.lang.String getNameRef() { + return this.nameRef; + } + + public void setNameRef(java.lang.String nameRef) { + this.nameRef = nameRef; + } + + @javax.persistence.Column(name = "CLASS", precision = 10) + public java.lang.Integer getClass_() { + return this.class_; + } + + public void setClass_(java.lang.Integer class_) { + this.class_ = class_; + } + + @javax.persistence.Column(name = "FIELDS", precision = 10) + public java.lang.Integer getFields_() { + return this.fields; + } + + public void setFields_(java.lang.Integer fields) { + this.fields = fields; + } + + @javax.persistence.Column(name = "CONFIGURATION", precision = 10) + public java.lang.Integer getConfiguration_() { + return this.configuration; + } + + public void setConfiguration_(java.lang.Integer configuration) { + this.configuration = configuration; + } + + @javax.persistence.Column(name = "U_D_T", precision = 10) + public java.lang.Integer getUDT() { + return this.uDT; + } + + public void setUDT(java.lang.Integer uDT) { + this.uDT = uDT; + } + + @javax.persistence.Column(name = "META_DATA", precision = 10) + public java.lang.Integer getMetaData_() { + return this.metaData; + } + + public void setMetaData_(java.lang.Integer metaData) { + this.metaData = metaData; + } + + @javax.persistence.Column(name = "TYPE0", precision = 10) + public java.lang.Integer getType0_() { + return this.type0; + } + + public void setType0_(java.lang.Integer type0) { + this.type0 = type0; + } + + @javax.persistence.Column(name = "PRIMARY_KEY", precision = 10) + public java.lang.Integer getPrimaryKey() { + return this.primaryKey; + } + + public void setPrimaryKey(java.lang.Integer primaryKey) { + this.primaryKey = primaryKey; + } + + @javax.persistence.Column(name = "PRIMARYKEY", precision = 10) + public java.lang.Integer getPrimarykey() { + return this.primarykey; + } + + public void setPrimarykey(java.lang.Integer primarykey) { + this.primarykey = primarykey; + } + + @javax.persistence.Column(name = "FIELD 737", precision = 25, scale = 2) + public java.math.BigDecimal getField_737() { + return this.field_737; + } + + public void setField_737(java.math.BigDecimal field_737) { + this.field_737 = field_737; + } +} diff --git a/jOOQ-test/src/org/jooq/test/mysql2/generatedclasses/tables/records/TAuthorRecord.java b/jOOQ-test/src/org/jooq/test/mysql2/generatedclasses/tables/records/TAuthorRecord.java new file mode 100644 index 00000000000..c12b34c3db8 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/mysql2/generatedclasses/tables/records/TAuthorRecord.java @@ -0,0 +1,142 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.mysql2.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + * + * An entity holding authors of books + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "t_author", schema = "test2") +public class TAuthorRecord extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = 1663912683; + + /** + * The author ID + * + * PRIMARY KEY + */ + public void setId(java.lang.Integer value) { + setValue(org.jooq.test.mysql2.generatedclasses.tables.TAuthor.T_AUTHOR.ID, value); + } + + /** + * The author ID + * + * PRIMARY KEY + */ + @javax.persistence.Id + @javax.persistence.Column(name = "ID", unique = true, nullable = false, precision = 10) + public java.lang.Integer getId() { + return getValue(org.jooq.test.mysql2.generatedclasses.tables.TAuthor.T_AUTHOR.ID); + } + + /** + * The author ID + * + * PRIMARY KEY + */ + public java.util.List fetchTBookListByAuthorId() { + return create() + .selectFrom(org.jooq.test.mysql2.generatedclasses.tables.TBook.T_BOOK) + .where(org.jooq.test.mysql2.generatedclasses.tables.TBook.T_BOOK.AUTHOR_ID.equal(getValue(org.jooq.test.mysql2.generatedclasses.tables.TAuthor.T_AUTHOR.ID))) + .fetch(); + } + + /** + * The author ID + * + * PRIMARY KEY + */ + public java.util.List fetchTBookListByCoAuthorId() { + return create() + .selectFrom(org.jooq.test.mysql2.generatedclasses.tables.TBook.T_BOOK) + .where(org.jooq.test.mysql2.generatedclasses.tables.TBook.T_BOOK.CO_AUTHOR_ID.equal(getValue(org.jooq.test.mysql2.generatedclasses.tables.TAuthor.T_AUTHOR.ID))) + .fetch(); + } + + /** + * The author's first name + */ + public void setFirstName(java.lang.String value) { + setValue(org.jooq.test.mysql2.generatedclasses.tables.TAuthor.T_AUTHOR.FIRST_NAME, value); + } + + /** + * The author's first name + */ + @javax.persistence.Column(name = "FIRST_NAME", length = 50) + public java.lang.String getFirstName() { + return getValue(org.jooq.test.mysql2.generatedclasses.tables.TAuthor.T_AUTHOR.FIRST_NAME); + } + + /** + * The author's last name + */ + public void setLastName(java.lang.String value) { + setValue(org.jooq.test.mysql2.generatedclasses.tables.TAuthor.T_AUTHOR.LAST_NAME, value); + } + + /** + * The author's last name + */ + @javax.persistence.Column(name = "LAST_NAME", nullable = false, length = 50) + public java.lang.String getLastName() { + return getValue(org.jooq.test.mysql2.generatedclasses.tables.TAuthor.T_AUTHOR.LAST_NAME); + } + + /** + * The author's date of birth + */ + public void setDateOfBirth(java.sql.Date value) { + setValue(org.jooq.test.mysql2.generatedclasses.tables.TAuthor.T_AUTHOR.DATE_OF_BIRTH, value); + } + + /** + * The author's date of birth + */ + @javax.persistence.Column(name = "DATE_OF_BIRTH") + public java.sql.Date getDateOfBirth() { + return getValue(org.jooq.test.mysql2.generatedclasses.tables.TAuthor.T_AUTHOR.DATE_OF_BIRTH); + } + + /** + * The author's year of birth + */ + public void setYearOfBirth(java.lang.Integer value) { + setValue(org.jooq.test.mysql2.generatedclasses.tables.TAuthor.T_AUTHOR.YEAR_OF_BIRTH, value); + } + + /** + * The author's year of birth + */ + @javax.persistence.Column(name = "YEAR_OF_BIRTH", precision = 10) + public java.lang.Integer getYearOfBirth() { + return getValue(org.jooq.test.mysql2.generatedclasses.tables.TAuthor.T_AUTHOR.YEAR_OF_BIRTH); + } + + /** + * The author's address + */ + public void setAddress(java.lang.String value) { + setValue(org.jooq.test.mysql2.generatedclasses.tables.TAuthor.T_AUTHOR.ADDRESS, value); + } + + /** + * The author's address + */ + @javax.persistence.Column(name = "ADDRESS", length = 200) + public java.lang.String getAddress() { + return getValue(org.jooq.test.mysql2.generatedclasses.tables.TAuthor.T_AUTHOR.ADDRESS); + } + + /** + * Create a detached TAuthorRecord + */ + public TAuthorRecord() { + super(org.jooq.test.mysql2.generatedclasses.tables.TAuthor.T_AUTHOR); + } +} diff --git a/jOOQ-test/src/org/jooq/test/mysql2/generatedclasses/tables/records/TBookRecord.java b/jOOQ-test/src/org/jooq/test/mysql2/generatedclasses/tables/records/TBookRecord.java new file mode 100644 index 00000000000..39d2aff552d --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/mysql2/generatedclasses/tables/records/TBookRecord.java @@ -0,0 +1,258 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.mysql2.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + * + * An entity holding books + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "t_book", schema = "test2") +public class TBookRecord extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = -818661907; + + /** + * The book ID + * + * PRIMARY KEY + */ + public void setId(java.lang.Integer value) { + setValue(org.jooq.test.mysql2.generatedclasses.tables.TBook.T_BOOK.ID, value); + } + + /** + * The book ID + * + * PRIMARY KEY + */ + @javax.persistence.Id + @javax.persistence.Column(name = "ID", unique = true, nullable = false, precision = 10) + public java.lang.Integer getId() { + return getValue(org.jooq.test.mysql2.generatedclasses.tables.TBook.T_BOOK.ID); + } + + /** + * The book ID + * + * PRIMARY KEY + */ + public java.util.List fetchTBookToBookStoreList() { + return create() + .selectFrom(org.jooq.test.mysql2.generatedclasses.tables.TBookToBookStore.T_BOOK_TO_BOOK_STORE) + .where(org.jooq.test.mysql2.generatedclasses.tables.TBookToBookStore.T_BOOK_TO_BOOK_STORE.BOOK_ID.equal(getValue(org.jooq.test.mysql2.generatedclasses.tables.TBook.T_BOOK.ID))) + .fetch(); + } + + /** + * The author ID in entity 'author' + *

+ *

+	 * CONSTRAINT fk_t_book_author_id
+	 * FOREIGN KEY (AUTHOR_ID)
+	 * REFERENCES test2.t_author (ID)
+	 * 
+ */ + public void setAuthorId(java.lang.Integer value) { + setValue(org.jooq.test.mysql2.generatedclasses.tables.TBook.T_BOOK.AUTHOR_ID, value); + } + + /** + * The author ID in entity 'author' + *

+ *

+	 * CONSTRAINT fk_t_book_author_id
+	 * FOREIGN KEY (AUTHOR_ID)
+	 * REFERENCES test2.t_author (ID)
+	 * 
+ */ + @javax.persistence.Column(name = "AUTHOR_ID", nullable = false, precision = 10) + public java.lang.Integer getAuthorId() { + return getValue(org.jooq.test.mysql2.generatedclasses.tables.TBook.T_BOOK.AUTHOR_ID); + } + + /** + * The author ID in entity 'author' + *

+ *

+	 * CONSTRAINT fk_t_book_author_id
+	 * FOREIGN KEY (AUTHOR_ID)
+	 * REFERENCES test2.t_author (ID)
+	 * 
+ */ + public org.jooq.test.mysql2.generatedclasses.tables.records.TAuthorRecord fetchTAuthorByAuthorId() { + return create() + .selectFrom(org.jooq.test.mysql2.generatedclasses.tables.TAuthor.T_AUTHOR) + .where(org.jooq.test.mysql2.generatedclasses.tables.TAuthor.T_AUTHOR.ID.equal(getValue(org.jooq.test.mysql2.generatedclasses.tables.TBook.T_BOOK.AUTHOR_ID))) + .fetchOne(); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_t_book_co_author_id
+	 * FOREIGN KEY (co_author_id)
+	 * REFERENCES test2.t_author (ID)
+	 * 
+ */ + public void setCoAuthorId(java.lang.Integer value) { + setValue(org.jooq.test.mysql2.generatedclasses.tables.TBook.T_BOOK.CO_AUTHOR_ID, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_t_book_co_author_id
+	 * FOREIGN KEY (co_author_id)
+	 * REFERENCES test2.t_author (ID)
+	 * 
+ */ + @javax.persistence.Column(name = "co_author_id", precision = 10) + public java.lang.Integer getCoAuthorId() { + return getValue(org.jooq.test.mysql2.generatedclasses.tables.TBook.T_BOOK.CO_AUTHOR_ID); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_t_book_co_author_id
+	 * FOREIGN KEY (co_author_id)
+	 * REFERENCES test2.t_author (ID)
+	 * 
+ */ + public org.jooq.test.mysql2.generatedclasses.tables.records.TAuthorRecord fetchTAuthorByCoAuthorId() { + return create() + .selectFrom(org.jooq.test.mysql2.generatedclasses.tables.TAuthor.T_AUTHOR) + .where(org.jooq.test.mysql2.generatedclasses.tables.TAuthor.T_AUTHOR.ID.equal(getValue(org.jooq.test.mysql2.generatedclasses.tables.TBook.T_BOOK.CO_AUTHOR_ID))) + .fetchOne(); + } + + /** + * Some more details about the book + */ + public void setDetailsId(java.lang.Integer value) { + setValue(org.jooq.test.mysql2.generatedclasses.tables.TBook.T_BOOK.DETAILS_ID, value); + } + + /** + * Some more details about the book + */ + @javax.persistence.Column(name = "DETAILS_ID", precision = 10) + public java.lang.Integer getDetailsId() { + return getValue(org.jooq.test.mysql2.generatedclasses.tables.TBook.T_BOOK.DETAILS_ID); + } + + /** + * The book's title + */ + public void setTitle(java.lang.String value) { + setValue(org.jooq.test.mysql2.generatedclasses.tables.TBook.T_BOOK.TITLE, value); + } + + /** + * The book's title + */ + @javax.persistence.Column(name = "TITLE", nullable = false, length = 65535) + public java.lang.String getTitle() { + return getValue(org.jooq.test.mysql2.generatedclasses.tables.TBook.T_BOOK.TITLE); + } + + /** + * The year the book was published in + */ + public void setPublishedIn(java.lang.Integer value) { + setValue(org.jooq.test.mysql2.generatedclasses.tables.TBook.T_BOOK.PUBLISHED_IN, value); + } + + /** + * The year the book was published in + */ + @javax.persistence.Column(name = "PUBLISHED_IN", nullable = false, precision = 10) + public java.lang.Integer getPublishedIn() { + return getValue(org.jooq.test.mysql2.generatedclasses.tables.TBook.T_BOOK.PUBLISHED_IN); + } + + /** + * The language of the book + *

+ *

+	 * CONSTRAINT fk_t_book_language_id
+	 * FOREIGN KEY (LANGUAGE_ID)
+	 * REFERENCES test2.t_language (ID)
+	 * 
+ */ + public void setLanguageId(org.jooq.test.mysql2.generatedclasses.enums.TLanguage value) { + setValue(org.jooq.test.mysql2.generatedclasses.tables.TBook.T_BOOK.LANGUAGE_ID, value); + } + + /** + * The language of the book + *

+ *

+	 * CONSTRAINT fk_t_book_language_id
+	 * FOREIGN KEY (LANGUAGE_ID)
+	 * REFERENCES test2.t_language (ID)
+	 * 
+ */ + @javax.persistence.Column(name = "LANGUAGE_ID", nullable = false, precision = 10) + public org.jooq.test.mysql2.generatedclasses.enums.TLanguage getLanguageId() { + return getValue(org.jooq.test.mysql2.generatedclasses.tables.TBook.T_BOOK.LANGUAGE_ID); + } + + /** + * Some textual content of the book + */ + public void setContentText(java.lang.String value) { + setValue(org.jooq.test.mysql2.generatedclasses.tables.TBook.T_BOOK.CONTENT_TEXT, value); + } + + /** + * Some textual content of the book + */ + @javax.persistence.Column(name = "CONTENT_TEXT") + public java.lang.String getContentText() { + return getValue(org.jooq.test.mysql2.generatedclasses.tables.TBook.T_BOOK.CONTENT_TEXT); + } + + /** + * Some binary content of the book + */ + public void setContentPdf(byte[] value) { + setValue(org.jooq.test.mysql2.generatedclasses.tables.TBook.T_BOOK.CONTENT_PDF, value); + } + + /** + * Some binary content of the book + */ + @javax.persistence.Column(name = "CONTENT_PDF") + public byte[] getContentPdf() { + return getValue(org.jooq.test.mysql2.generatedclasses.tables.TBook.T_BOOK.CONTENT_PDF); + } + + /** + * The book's stock status + */ + public void setStatus(org.jooq.test.mysql2.generatedclasses.enums.TBookStatus value) { + setValue(org.jooq.test.mysql2.generatedclasses.tables.TBook.T_BOOK.STATUS, value); + } + + /** + * The book's stock status + */ + @javax.persistence.Column(name = "STATUS", length = 8) + public org.jooq.test.mysql2.generatedclasses.enums.TBookStatus getStatus() { + return getValue(org.jooq.test.mysql2.generatedclasses.tables.TBook.T_BOOK.STATUS); + } + + /** + * Create a detached TBookRecord + */ + public TBookRecord() { + super(org.jooq.test.mysql2.generatedclasses.tables.TBook.T_BOOK); + } +} diff --git a/jOOQ-test/src/org/jooq/test/mysql2/generatedclasses/tables/records/TBookStoreRecord.java b/jOOQ-test/src/org/jooq/test/mysql2/generatedclasses/tables/records/TBookStoreRecord.java new file mode 100644 index 00000000000..1024a5ce507 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/mysql2/generatedclasses/tables/records/TBookStoreRecord.java @@ -0,0 +1,48 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.mysql2.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + * + * A book store + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "t_book_store", schema = "test2") +public class TBookStoreRecord extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = 1230975195; + + /** + * The books store name + */ + public void setName(java.lang.String value) { + setValue(org.jooq.test.mysql2.generatedclasses.tables.TBookStore.T_BOOK_STORE.NAME, value); + } + + /** + * The books store name + */ + @javax.persistence.Column(name = "name", unique = true, nullable = false, length = 400) + public java.lang.String getName() { + return getValue(org.jooq.test.mysql2.generatedclasses.tables.TBookStore.T_BOOK_STORE.NAME); + } + + /** + * The books store name + */ + public java.util.List fetchTBookToBookStoreList() { + return create() + .selectFrom(org.jooq.test.mysql2.generatedclasses.tables.TBookToBookStore.T_BOOK_TO_BOOK_STORE) + .where(org.jooq.test.mysql2.generatedclasses.tables.TBookToBookStore.T_BOOK_TO_BOOK_STORE.BOOK_STORE_NAME.equal(getValue(org.jooq.test.mysql2.generatedclasses.tables.TBookStore.T_BOOK_STORE.NAME))) + .fetch(); + } + + /** + * Create a detached TBookStoreRecord + */ + public TBookStoreRecord() { + super(org.jooq.test.mysql2.generatedclasses.tables.TBookStore.T_BOOK_STORE); + } +} diff --git a/jOOQ-test/src/org/jooq/test/mysql2/generatedclasses/tables/records/TBookToBookStoreRecord.java b/jOOQ-test/src/org/jooq/test/mysql2/generatedclasses/tables/records/TBookToBookStoreRecord.java new file mode 100644 index 00000000000..a0e95d322e4 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/mysql2/generatedclasses/tables/records/TBookToBookStoreRecord.java @@ -0,0 +1,138 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.mysql2.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + * + * An m:n relation between books and book stores + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "t_book_to_book_store", schema = "test2", uniqueConstraints = { + @javax.persistence.UniqueConstraint(columnNames = {"book_store_name", "book_id"}) +}) +public class TBookToBookStoreRecord extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = -83446085; + + /** + * The book store name + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT fk_b2bs_bs_name
+	 * FOREIGN KEY (book_store_name)
+	 * REFERENCES test2.t_book_store (name)
+	 * 
+ */ + public void setBookStoreName(java.lang.String value) { + setValue(org.jooq.test.mysql2.generatedclasses.tables.TBookToBookStore.T_BOOK_TO_BOOK_STORE.BOOK_STORE_NAME, value); + } + + /** + * The book store name + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT fk_b2bs_bs_name
+	 * FOREIGN KEY (book_store_name)
+	 * REFERENCES test2.t_book_store (name)
+	 * 
+ */ + @javax.persistence.Column(name = "book_store_name", nullable = false, length = 400) + public java.lang.String getBookStoreName() { + return getValue(org.jooq.test.mysql2.generatedclasses.tables.TBookToBookStore.T_BOOK_TO_BOOK_STORE.BOOK_STORE_NAME); + } + + /** + * The book store name + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT fk_b2bs_bs_name
+	 * FOREIGN KEY (book_store_name)
+	 * REFERENCES test2.t_book_store (name)
+	 * 
+ */ + public org.jooq.test.mysql2.generatedclasses.tables.records.TBookStoreRecord fetchTBookStore() { + return create() + .selectFrom(org.jooq.test.mysql2.generatedclasses.tables.TBookStore.T_BOOK_STORE) + .where(org.jooq.test.mysql2.generatedclasses.tables.TBookStore.T_BOOK_STORE.NAME.equal(getValue(org.jooq.test.mysql2.generatedclasses.tables.TBookToBookStore.T_BOOK_TO_BOOK_STORE.BOOK_STORE_NAME))) + .fetchOne(); + } + + /** + * The book ID + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT fk_b2bs_b_id
+	 * FOREIGN KEY (book_id)
+	 * REFERENCES test2.t_book (ID)
+	 * 
+ */ + public void setBookId(java.lang.Integer value) { + setValue(org.jooq.test.mysql2.generatedclasses.tables.TBookToBookStore.T_BOOK_TO_BOOK_STORE.BOOK_ID, value); + } + + /** + * The book ID + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT fk_b2bs_b_id
+	 * FOREIGN KEY (book_id)
+	 * REFERENCES test2.t_book (ID)
+	 * 
+ */ + @javax.persistence.Column(name = "book_id", nullable = false, precision = 10) + public java.lang.Integer getBookId() { + return getValue(org.jooq.test.mysql2.generatedclasses.tables.TBookToBookStore.T_BOOK_TO_BOOK_STORE.BOOK_ID); + } + + /** + * The book ID + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT fk_b2bs_b_id
+	 * FOREIGN KEY (book_id)
+	 * REFERENCES test2.t_book (ID)
+	 * 
+ */ + public org.jooq.test.mysql2.generatedclasses.tables.records.TBookRecord fetchTBook() { + return create() + .selectFrom(org.jooq.test.mysql2.generatedclasses.tables.TBook.T_BOOK) + .where(org.jooq.test.mysql2.generatedclasses.tables.TBook.T_BOOK.ID.equal(getValue(org.jooq.test.mysql2.generatedclasses.tables.TBookToBookStore.T_BOOK_TO_BOOK_STORE.BOOK_ID))) + .fetchOne(); + } + + /** + * The number of books on stock + */ + public void setStock(java.lang.Integer value) { + setValue(org.jooq.test.mysql2.generatedclasses.tables.TBookToBookStore.T_BOOK_TO_BOOK_STORE.STOCK, value); + } + + /** + * The number of books on stock + */ + @javax.persistence.Column(name = "stock", precision = 10) + public java.lang.Integer getStock() { + return getValue(org.jooq.test.mysql2.generatedclasses.tables.TBookToBookStore.T_BOOK_TO_BOOK_STORE.STOCK); + } + + /** + * Create a detached TBookToBookStoreRecord + */ + public TBookToBookStoreRecord() { + super(org.jooq.test.mysql2.generatedclasses.tables.TBookToBookStore.T_BOOK_TO_BOOK_STORE); + } +} diff --git a/jOOQ-test/src/org/jooq/test/mysql2/generatedclasses/tables/records/TBooleansRecord.java b/jOOQ-test/src/org/jooq/test/mysql2/generatedclasses/tables/records/TBooleansRecord.java new file mode 100644 index 00000000000..1b24e0a5ad8 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/mysql2/generatedclasses/tables/records/TBooleansRecord.java @@ -0,0 +1,191 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.mysql2.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "t_booleans", schema = "test2") +public class TBooleansRecord extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = 1278360365; + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setId(java.lang.Integer value) { + setValue(org.jooq.test.mysql2.generatedclasses.tables.TBooleans.T_BOOLEANS.ID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + @javax.persistence.Id + @javax.persistence.Column(name = "id", unique = true, nullable = false, precision = 10) + public java.lang.Integer getId() { + return getValue(org.jooq.test.mysql2.generatedclasses.tables.TBooleans.T_BOOLEANS.ID); + } + + /** + * An uncommented item + */ + public void setOneZero(org.jooq.test._.converters.Boolean_10 value) { + setValue(org.jooq.test.mysql2.generatedclasses.tables.TBooleans.T_BOOLEANS.ONE_ZERO, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "one_zero", precision = 10) + public org.jooq.test._.converters.Boolean_10 getOneZero() { + return getValue(org.jooq.test.mysql2.generatedclasses.tables.TBooleans.T_BOOLEANS.ONE_ZERO); + } + + /** + * An uncommented item + */ + public void setTrueFalseLc(org.jooq.test._.converters.Boolean_TF_LC value) { + setValue(org.jooq.test.mysql2.generatedclasses.tables.TBooleans.T_BOOLEANS.TRUE_FALSE_LC, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "true_false_lc", length = 5) + public org.jooq.test._.converters.Boolean_TF_LC getTrueFalseLc() { + return getValue(org.jooq.test.mysql2.generatedclasses.tables.TBooleans.T_BOOLEANS.TRUE_FALSE_LC); + } + + /** + * An uncommented item + */ + public void setTrueFalseUc(org.jooq.test._.converters.Boolean_TF_UC value) { + setValue(org.jooq.test.mysql2.generatedclasses.tables.TBooleans.T_BOOLEANS.TRUE_FALSE_UC, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "true_false_uc", length = 5) + public org.jooq.test._.converters.Boolean_TF_UC getTrueFalseUc() { + return getValue(org.jooq.test.mysql2.generatedclasses.tables.TBooleans.T_BOOLEANS.TRUE_FALSE_UC); + } + + /** + * An uncommented item + */ + public void setYesNoLc(org.jooq.test._.converters.Boolean_YES_NO_LC value) { + setValue(org.jooq.test.mysql2.generatedclasses.tables.TBooleans.T_BOOLEANS.YES_NO_LC, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "yes_no_lc", length = 3) + public org.jooq.test._.converters.Boolean_YES_NO_LC getYesNoLc() { + return getValue(org.jooq.test.mysql2.generatedclasses.tables.TBooleans.T_BOOLEANS.YES_NO_LC); + } + + /** + * An uncommented item + */ + public void setYesNoUc(org.jooq.test._.converters.Boolean_YES_NO_UC value) { + setValue(org.jooq.test.mysql2.generatedclasses.tables.TBooleans.T_BOOLEANS.YES_NO_UC, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "yes_no_uc", length = 3) + public org.jooq.test._.converters.Boolean_YES_NO_UC getYesNoUc() { + return getValue(org.jooq.test.mysql2.generatedclasses.tables.TBooleans.T_BOOLEANS.YES_NO_UC); + } + + /** + * An uncommented item + */ + public void setYNLc(org.jooq.test._.converters.Boolean_YN_LC value) { + setValue(org.jooq.test.mysql2.generatedclasses.tables.TBooleans.T_BOOLEANS.Y_N_LC, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "y_n_lc", length = 1) + public org.jooq.test._.converters.Boolean_YN_LC getYNLc() { + return getValue(org.jooq.test.mysql2.generatedclasses.tables.TBooleans.T_BOOLEANS.Y_N_LC); + } + + /** + * An uncommented item + */ + public void setYNUc(org.jooq.test._.converters.Boolean_YN_UC value) { + setValue(org.jooq.test.mysql2.generatedclasses.tables.TBooleans.T_BOOLEANS.Y_N_UC, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "y_n_uc", length = 1) + public org.jooq.test._.converters.Boolean_YN_UC getYNUc() { + return getValue(org.jooq.test.mysql2.generatedclasses.tables.TBooleans.T_BOOLEANS.Y_N_UC); + } + + /** + * An uncommented item + */ + public void setVcBoolean(java.lang.Boolean value) { + setValue(org.jooq.test.mysql2.generatedclasses.tables.TBooleans.T_BOOLEANS.VC_BOOLEAN, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "vc_boolean", length = 1) + public java.lang.Boolean getVcBoolean() { + return getValue(org.jooq.test.mysql2.generatedclasses.tables.TBooleans.T_BOOLEANS.VC_BOOLEAN); + } + + /** + * An uncommented item + */ + public void setCBoolean(java.lang.Boolean value) { + setValue(org.jooq.test.mysql2.generatedclasses.tables.TBooleans.T_BOOLEANS.C_BOOLEAN, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "c_boolean", length = 1) + public java.lang.Boolean getCBoolean() { + return getValue(org.jooq.test.mysql2.generatedclasses.tables.TBooleans.T_BOOLEANS.C_BOOLEAN); + } + + /** + * An uncommented item + */ + public void setNBoolean(java.lang.Boolean value) { + setValue(org.jooq.test.mysql2.generatedclasses.tables.TBooleans.T_BOOLEANS.N_BOOLEAN, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "n_boolean", precision = 10) + public java.lang.Boolean getNBoolean() { + return getValue(org.jooq.test.mysql2.generatedclasses.tables.TBooleans.T_BOOLEANS.N_BOOLEAN); + } + + /** + * Create a detached TBooleansRecord + */ + public TBooleansRecord() { + super(org.jooq.test.mysql2.generatedclasses.tables.TBooleans.T_BOOLEANS); + } +} diff --git a/jOOQ-test/src/org/jooq/test/mysql2/generatedclasses/tables/records/TDatesRecord.java b/jOOQ-test/src/org/jooq/test/mysql2/generatedclasses/tables/records/TDatesRecord.java new file mode 100644 index 00000000000..d89db9fa828 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/mysql2/generatedclasses/tables/records/TDatesRecord.java @@ -0,0 +1,116 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.mysql2.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "t_dates", schema = "test2") +public class TDatesRecord extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = 300592892; + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setId(java.lang.Integer value) { + setValue(org.jooq.test.mysql2.generatedclasses.tables.TDates.T_DATES.ID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + @javax.persistence.Id + @javax.persistence.Column(name = "id", unique = true, nullable = false, precision = 10) + public java.lang.Integer getId() { + return getValue(org.jooq.test.mysql2.generatedclasses.tables.TDates.T_DATES.ID); + } + + /** + * An uncommented item + */ + public void setD(java.sql.Date value) { + setValue(org.jooq.test.mysql2.generatedclasses.tables.TDates.T_DATES.D, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "d") + public java.sql.Date getD() { + return getValue(org.jooq.test.mysql2.generatedclasses.tables.TDates.T_DATES.D); + } + + /** + * An uncommented item + */ + public void setT(java.sql.Time value) { + setValue(org.jooq.test.mysql2.generatedclasses.tables.TDates.T_DATES.T, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "t") + public java.sql.Time getT() { + return getValue(org.jooq.test.mysql2.generatedclasses.tables.TDates.T_DATES.T); + } + + /** + * An uncommented item + */ + public void setTs(java.sql.Timestamp value) { + setValue(org.jooq.test.mysql2.generatedclasses.tables.TDates.T_DATES.TS, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "ts") + public java.sql.Timestamp getTs() { + return getValue(org.jooq.test.mysql2.generatedclasses.tables.TDates.T_DATES.TS); + } + + /** + * An uncommented item + */ + public void setDInt(java.lang.Integer value) { + setValue(org.jooq.test.mysql2.generatedclasses.tables.TDates.T_DATES.D_INT, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "d_int", precision = 10) + public java.lang.Integer getDInt() { + return getValue(org.jooq.test.mysql2.generatedclasses.tables.TDates.T_DATES.D_INT); + } + + /** + * An uncommented item + */ + public void setTsBigint(java.lang.Long value) { + setValue(org.jooq.test.mysql2.generatedclasses.tables.TDates.T_DATES.TS_BIGINT, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "ts_bigint", precision = 19) + public java.lang.Long getTsBigint() { + return getValue(org.jooq.test.mysql2.generatedclasses.tables.TDates.T_DATES.TS_BIGINT); + } + + /** + * Create a detached TDatesRecord + */ + public TDatesRecord() { + super(org.jooq.test.mysql2.generatedclasses.tables.TDates.T_DATES); + } +} diff --git a/jOOQ-test/src/org/jooq/test/mysql2/generatedclasses/tables/records/TIdentityPkRecord.java b/jOOQ-test/src/org/jooq/test/mysql2/generatedclasses/tables/records/TIdentityPkRecord.java new file mode 100644 index 00000000000..d972e5293cd --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/mysql2/generatedclasses/tables/records/TIdentityPkRecord.java @@ -0,0 +1,56 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.mysql2.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "t_identity_pk", schema = "test2") +public class TIdentityPkRecord extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = -686967462; + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setId(java.lang.Integer value) { + setValue(org.jooq.test.mysql2.generatedclasses.tables.TIdentityPk.T_IDENTITY_PK.ID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + @javax.persistence.Id + @javax.persistence.Column(name = "id", unique = true, nullable = false, precision = 10) + public java.lang.Integer getId() { + return getValue(org.jooq.test.mysql2.generatedclasses.tables.TIdentityPk.T_IDENTITY_PK.ID); + } + + /** + * An uncommented item + */ + public void setVal(java.lang.Integer value) { + setValue(org.jooq.test.mysql2.generatedclasses.tables.TIdentityPk.T_IDENTITY_PK.VAL, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "val", precision = 10) + public java.lang.Integer getVal() { + return getValue(org.jooq.test.mysql2.generatedclasses.tables.TIdentityPk.T_IDENTITY_PK.VAL); + } + + /** + * Create a detached TIdentityPkRecord + */ + public TIdentityPkRecord() { + super(org.jooq.test.mysql2.generatedclasses.tables.TIdentityPk.T_IDENTITY_PK); + } +} diff --git a/jOOQ-test/src/org/jooq/test/mysql2/generatedclasses/tables/records/TTriggersRecord.java b/jOOQ-test/src/org/jooq/test/mysql2/generatedclasses/tables/records/TTriggersRecord.java new file mode 100644 index 00000000000..cf23acbd0f7 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/mysql2/generatedclasses/tables/records/TTriggersRecord.java @@ -0,0 +1,71 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.mysql2.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "t_triggers", schema = "test2") +public class TTriggersRecord extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = 1918230951; + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setIdGenerated(java.lang.Integer value) { + setValue(org.jooq.test.mysql2.generatedclasses.tables.TTriggers.T_TRIGGERS.ID_GENERATED, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + @javax.persistence.Id + @javax.persistence.Column(name = "id_generated", unique = true, nullable = false, precision = 10) + public java.lang.Integer getIdGenerated() { + return getValue(org.jooq.test.mysql2.generatedclasses.tables.TTriggers.T_TRIGGERS.ID_GENERATED); + } + + /** + * An uncommented item + */ + public void setId(java.lang.Integer value) { + setValue(org.jooq.test.mysql2.generatedclasses.tables.TTriggers.T_TRIGGERS.ID, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "id", precision = 10) + public java.lang.Integer getId() { + return getValue(org.jooq.test.mysql2.generatedclasses.tables.TTriggers.T_TRIGGERS.ID); + } + + /** + * An uncommented item + */ + public void setCounter(java.lang.Integer value) { + setValue(org.jooq.test.mysql2.generatedclasses.tables.TTriggers.T_TRIGGERS.COUNTER, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "counter", precision = 10) + public java.lang.Integer getCounter() { + return getValue(org.jooq.test.mysql2.generatedclasses.tables.TTriggers.T_TRIGGERS.COUNTER); + } + + /** + * Create a detached TTriggersRecord + */ + public TTriggersRecord() { + super(org.jooq.test.mysql2.generatedclasses.tables.TTriggers.T_TRIGGERS); + } +} diff --git a/jOOQ-test/src/org/jooq/test/mysql2/generatedclasses/tables/records/TUnsignedRecord.java b/jOOQ-test/src/org/jooq/test/mysql2/generatedclasses/tables/records/TUnsignedRecord.java new file mode 100644 index 00000000000..5503c42fb23 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/mysql2/generatedclasses/tables/records/TUnsignedRecord.java @@ -0,0 +1,81 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.mysql2.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "t_unsigned", schema = "test2") +public class TUnsignedRecord extends org.jooq.impl.TableRecordImpl { + + private static final long serialVersionUID = 1941431718; + + /** + * An uncommented item + */ + public void setUByte(org.jooq.tools.unsigned.UByte value) { + setValue(org.jooq.test.mysql2.generatedclasses.tables.TUnsigned.T_UNSIGNED.U_BYTE, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "u_byte", precision = 3) + public org.jooq.tools.unsigned.UByte getUByte() { + return getValue(org.jooq.test.mysql2.generatedclasses.tables.TUnsigned.T_UNSIGNED.U_BYTE); + } + + /** + * An uncommented item + */ + public void setUShort(org.jooq.tools.unsigned.UShort value) { + setValue(org.jooq.test.mysql2.generatedclasses.tables.TUnsigned.T_UNSIGNED.U_SHORT, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "u_short", precision = 5) + public org.jooq.tools.unsigned.UShort getUShort() { + return getValue(org.jooq.test.mysql2.generatedclasses.tables.TUnsigned.T_UNSIGNED.U_SHORT); + } + + /** + * An uncommented item + */ + public void setUInt(org.jooq.tools.unsigned.UInteger value) { + setValue(org.jooq.test.mysql2.generatedclasses.tables.TUnsigned.T_UNSIGNED.U_INT, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "u_int", precision = 10) + public org.jooq.tools.unsigned.UInteger getUInt() { + return getValue(org.jooq.test.mysql2.generatedclasses.tables.TUnsigned.T_UNSIGNED.U_INT); + } + + /** + * An uncommented item + */ + public void setULong(org.jooq.tools.unsigned.ULong value) { + setValue(org.jooq.test.mysql2.generatedclasses.tables.TUnsigned.T_UNSIGNED.U_LONG, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "u_long", precision = 20) + public org.jooq.tools.unsigned.ULong getULong() { + return getValue(org.jooq.test.mysql2.generatedclasses.tables.TUnsigned.T_UNSIGNED.U_LONG); + } + + /** + * Create a detached TUnsignedRecord + */ + public TUnsignedRecord() { + super(org.jooq.test.mysql2.generatedclasses.tables.TUnsigned.T_UNSIGNED); + } +} diff --git a/jOOQ-test/src/org/jooq/test/mysql2/generatedclasses/tables/records/T_639NumbersTableRecord.java b/jOOQ-test/src/org/jooq/test/mysql2/generatedclasses/tables/records/T_639NumbersTableRecord.java new file mode 100644 index 00000000000..0ccfcadb5e3 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/mysql2/generatedclasses/tables/records/T_639NumbersTableRecord.java @@ -0,0 +1,221 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.mysql2.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "t_639_numbers_table", schema = "test2") +public class T_639NumbersTableRecord extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = -1173966486; + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setId(java.lang.Integer value) { + setValue(org.jooq.test.mysql2.generatedclasses.tables.T_639NumbersTable.T_639_NUMBERS_TABLE.ID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + @javax.persistence.Id + @javax.persistence.Column(name = "ID", unique = true, nullable = false, precision = 10) + public java.lang.Integer getId() { + return getValue(org.jooq.test.mysql2.generatedclasses.tables.T_639NumbersTable.T_639_NUMBERS_TABLE.ID); + } + + /** + * An uncommented item + */ + public void setByte(java.lang.Byte value) { + setValue(org.jooq.test.mysql2.generatedclasses.tables.T_639NumbersTable.T_639_NUMBERS_TABLE.BYTE, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "BYTE", precision = 3) + public java.lang.Byte getByte() { + return getValue(org.jooq.test.mysql2.generatedclasses.tables.T_639NumbersTable.T_639_NUMBERS_TABLE.BYTE); + } + + /** + * An uncommented item + */ + public void setShort(java.lang.Short value) { + setValue(org.jooq.test.mysql2.generatedclasses.tables.T_639NumbersTable.T_639_NUMBERS_TABLE.SHORT, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "SHORT", precision = 5) + public java.lang.Short getShort() { + return getValue(org.jooq.test.mysql2.generatedclasses.tables.T_639NumbersTable.T_639_NUMBERS_TABLE.SHORT); + } + + /** + * An uncommented item + */ + public void setInteger(java.lang.Integer value) { + setValue(org.jooq.test.mysql2.generatedclasses.tables.T_639NumbersTable.T_639_NUMBERS_TABLE.INTEGER, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "INTEGER", precision = 10) + public java.lang.Integer getInteger() { + return getValue(org.jooq.test.mysql2.generatedclasses.tables.T_639NumbersTable.T_639_NUMBERS_TABLE.INTEGER); + } + + /** + * An uncommented item + */ + public void setLong(java.lang.Long value) { + setValue(org.jooq.test.mysql2.generatedclasses.tables.T_639NumbersTable.T_639_NUMBERS_TABLE.LONG, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "LONG", precision = 19) + public java.lang.Long getLong() { + return getValue(org.jooq.test.mysql2.generatedclasses.tables.T_639NumbersTable.T_639_NUMBERS_TABLE.LONG); + } + + /** + * An uncommented item + */ + public void setByteDecimal(java.lang.Byte value) { + setValue(org.jooq.test.mysql2.generatedclasses.tables.T_639NumbersTable.T_639_NUMBERS_TABLE.BYTE_DECIMAL, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "BYTE_DECIMAL", precision = 2) + public java.lang.Byte getByteDecimal() { + return getValue(org.jooq.test.mysql2.generatedclasses.tables.T_639NumbersTable.T_639_NUMBERS_TABLE.BYTE_DECIMAL); + } + + /** + * An uncommented item + */ + public void setShortDecimal(java.lang.Short value) { + setValue(org.jooq.test.mysql2.generatedclasses.tables.T_639NumbersTable.T_639_NUMBERS_TABLE.SHORT_DECIMAL, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "SHORT_DECIMAL", precision = 4) + public java.lang.Short getShortDecimal() { + return getValue(org.jooq.test.mysql2.generatedclasses.tables.T_639NumbersTable.T_639_NUMBERS_TABLE.SHORT_DECIMAL); + } + + /** + * An uncommented item + */ + public void setIntegerDecimal(java.lang.Integer value) { + setValue(org.jooq.test.mysql2.generatedclasses.tables.T_639NumbersTable.T_639_NUMBERS_TABLE.INTEGER_DECIMAL, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "INTEGER_DECIMAL", precision = 9) + public java.lang.Integer getIntegerDecimal() { + return getValue(org.jooq.test.mysql2.generatedclasses.tables.T_639NumbersTable.T_639_NUMBERS_TABLE.INTEGER_DECIMAL); + } + + /** + * An uncommented item + */ + public void setLongDecimal(java.lang.Long value) { + setValue(org.jooq.test.mysql2.generatedclasses.tables.T_639NumbersTable.T_639_NUMBERS_TABLE.LONG_DECIMAL, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "LONG_DECIMAL", precision = 18) + public java.lang.Long getLongDecimal() { + return getValue(org.jooq.test.mysql2.generatedclasses.tables.T_639NumbersTable.T_639_NUMBERS_TABLE.LONG_DECIMAL); + } + + /** + * An uncommented item + */ + public void setBigInteger(java.math.BigInteger value) { + setValue(org.jooq.test.mysql2.generatedclasses.tables.T_639NumbersTable.T_639_NUMBERS_TABLE.BIG_INTEGER, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "BIG_INTEGER", precision = 22) + public java.math.BigInteger getBigInteger() { + return getValue(org.jooq.test.mysql2.generatedclasses.tables.T_639NumbersTable.T_639_NUMBERS_TABLE.BIG_INTEGER); + } + + /** + * An uncommented item + */ + public void setBigDecimal(java.math.BigDecimal value) { + setValue(org.jooq.test.mysql2.generatedclasses.tables.T_639NumbersTable.T_639_NUMBERS_TABLE.BIG_DECIMAL, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "BIG_DECIMAL", precision = 22, scale = 5) + public java.math.BigDecimal getBigDecimal() { + return getValue(org.jooq.test.mysql2.generatedclasses.tables.T_639NumbersTable.T_639_NUMBERS_TABLE.BIG_DECIMAL); + } + + /** + * An uncommented item + */ + public void setFloat(java.lang.Double value) { + setValue(org.jooq.test.mysql2.generatedclasses.tables.T_639NumbersTable.T_639_NUMBERS_TABLE.FLOAT, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "FLOAT", precision = 12) + public java.lang.Double getFloat() { + return getValue(org.jooq.test.mysql2.generatedclasses.tables.T_639NumbersTable.T_639_NUMBERS_TABLE.FLOAT); + } + + /** + * An uncommented item + */ + public void setDouble(java.lang.Double value) { + setValue(org.jooq.test.mysql2.generatedclasses.tables.T_639NumbersTable.T_639_NUMBERS_TABLE.DOUBLE, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "DOUBLE", precision = 22) + public java.lang.Double getDouble() { + return getValue(org.jooq.test.mysql2.generatedclasses.tables.T_639NumbersTable.T_639_NUMBERS_TABLE.DOUBLE); + } + + /** + * Create a detached T_639NumbersTableRecord + */ + public T_639NumbersTableRecord() { + super(org.jooq.test.mysql2.generatedclasses.tables.T_639NumbersTable.T_639_NUMBERS_TABLE); + } +} diff --git a/jOOQ-test/src/org/jooq/test/mysql2/generatedclasses/tables/records/T_658RefRecord.java b/jOOQ-test/src/org/jooq/test/mysql2/generatedclasses/tables/records/T_658RefRecord.java new file mode 100644 index 00000000000..a4b600a77fd --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/mysql2/generatedclasses/tables/records/T_658RefRecord.java @@ -0,0 +1,183 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.mysql2.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "t_658_ref", schema = "test2") +public class T_658RefRecord extends org.jooq.impl.TableRecordImpl { + + private static final long serialVersionUID = 266433681; + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_t_658_11
+	 * FOREIGN KEY (ref_11)
+	 * REFERENCES test2.t_658_11 (id)
+	 * 
+ */ + public void setRef_11(org.jooq.test.mysql2.generatedclasses.enums.T_658_11 value) { + setValue(org.jooq.test.mysql2.generatedclasses.tables.T_658Ref.T_658_REF.REF_11, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_t_658_11
+	 * FOREIGN KEY (ref_11)
+	 * REFERENCES test2.t_658_11 (id)
+	 * 
+ */ + @javax.persistence.Column(name = "ref_11", length = 3) + public org.jooq.test.mysql2.generatedclasses.enums.T_658_11 getRef_11() { + return getValue(org.jooq.test.mysql2.generatedclasses.tables.T_658Ref.T_658_REF.REF_11); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_t_658_21
+	 * FOREIGN KEY (ref_21)
+	 * REFERENCES test2.t_658_21 (id)
+	 * 
+ */ + public void setRef_21(org.jooq.test.mysql2.generatedclasses.enums.T_658_21 value) { + setValue(org.jooq.test.mysql2.generatedclasses.tables.T_658Ref.T_658_REF.REF_21, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_t_658_21
+	 * FOREIGN KEY (ref_21)
+	 * REFERENCES test2.t_658_21 (id)
+	 * 
+ */ + @javax.persistence.Column(name = "ref_21", precision = 10) + public org.jooq.test.mysql2.generatedclasses.enums.T_658_21 getRef_21() { + return getValue(org.jooq.test.mysql2.generatedclasses.tables.T_658Ref.T_658_REF.REF_21); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_t_658_31
+	 * FOREIGN KEY (ref_31)
+	 * REFERENCES test2.t_658_31 (id)
+	 * 
+ */ + public void setRef_31(org.jooq.test.mysql2.generatedclasses.enums.T_658_31 value) { + setValue(org.jooq.test.mysql2.generatedclasses.tables.T_658Ref.T_658_REF.REF_31, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_t_658_31
+	 * FOREIGN KEY (ref_31)
+	 * REFERENCES test2.t_658_31 (id)
+	 * 
+ */ + @javax.persistence.Column(name = "ref_31", precision = 19) + public org.jooq.test.mysql2.generatedclasses.enums.T_658_31 getRef_31() { + return getValue(org.jooq.test.mysql2.generatedclasses.tables.T_658Ref.T_658_REF.REF_31); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_t_658_12
+	 * FOREIGN KEY (ref_12)
+	 * REFERENCES test2.t_658_12 (id)
+	 * 
+ */ + public void setRef_12(org.jooq.test.mysql2.generatedclasses.enums.T_658_12 value) { + setValue(org.jooq.test.mysql2.generatedclasses.tables.T_658Ref.T_658_REF.REF_12, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_t_658_12
+	 * FOREIGN KEY (ref_12)
+	 * REFERENCES test2.t_658_12 (id)
+	 * 
+ */ + @javax.persistence.Column(name = "ref_12", length = 3) + public org.jooq.test.mysql2.generatedclasses.enums.T_658_12 getRef_12() { + return getValue(org.jooq.test.mysql2.generatedclasses.tables.T_658Ref.T_658_REF.REF_12); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_t_658_22
+	 * FOREIGN KEY (ref_22)
+	 * REFERENCES test2.t_658_22 (id)
+	 * 
+ */ + public void setRef_22(org.jooq.test.mysql2.generatedclasses.enums.T_658_22 value) { + setValue(org.jooq.test.mysql2.generatedclasses.tables.T_658Ref.T_658_REF.REF_22, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_t_658_22
+	 * FOREIGN KEY (ref_22)
+	 * REFERENCES test2.t_658_22 (id)
+	 * 
+ */ + @javax.persistence.Column(name = "ref_22", precision = 10) + public org.jooq.test.mysql2.generatedclasses.enums.T_658_22 getRef_22() { + return getValue(org.jooq.test.mysql2.generatedclasses.tables.T_658Ref.T_658_REF.REF_22); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_t_658_32
+	 * FOREIGN KEY (ref_32)
+	 * REFERENCES test2.t_658_32 (id)
+	 * 
+ */ + public void setRef_32(org.jooq.test.mysql2.generatedclasses.enums.T_658_32 value) { + setValue(org.jooq.test.mysql2.generatedclasses.tables.T_658Ref.T_658_REF.REF_32, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_t_658_32
+	 * FOREIGN KEY (ref_32)
+	 * REFERENCES test2.t_658_32 (id)
+	 * 
+ */ + @javax.persistence.Column(name = "ref_32", precision = 19) + public org.jooq.test.mysql2.generatedclasses.enums.T_658_32 getRef_32() { + return getValue(org.jooq.test.mysql2.generatedclasses.tables.T_658Ref.T_658_REF.REF_32); + } + + /** + * Create a detached T_658RefRecord + */ + public T_658RefRecord() { + super(org.jooq.test.mysql2.generatedclasses.tables.T_658Ref.T_658_REF); + } +} diff --git a/jOOQ-test/src/org/jooq/test/mysql2/generatedclasses/tables/records/T_725LobTestRecord.java b/jOOQ-test/src/org/jooq/test/mysql2/generatedclasses/tables/records/T_725LobTestRecord.java new file mode 100644 index 00000000000..d8ba5c257c6 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/mysql2/generatedclasses/tables/records/T_725LobTestRecord.java @@ -0,0 +1,56 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.mysql2.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "t_725_lob_test", schema = "test2") +public class T_725LobTestRecord extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = -346039927; + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setId(java.lang.Integer value) { + setValue(org.jooq.test.mysql2.generatedclasses.tables.T_725LobTest.T_725_LOB_TEST.ID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + @javax.persistence.Id + @javax.persistence.Column(name = "ID", unique = true, nullable = false, precision = 10) + public java.lang.Integer getId() { + return getValue(org.jooq.test.mysql2.generatedclasses.tables.T_725LobTest.T_725_LOB_TEST.ID); + } + + /** + * An uncommented item + */ + public void setLob(byte[] value) { + setValue(org.jooq.test.mysql2.generatedclasses.tables.T_725LobTest.T_725_LOB_TEST.LOB, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "LOB") + public byte[] getLob() { + return getValue(org.jooq.test.mysql2.generatedclasses.tables.T_725LobTest.T_725_LOB_TEST.LOB); + } + + /** + * Create a detached T_725LobTestRecord + */ + public T_725LobTestRecord() { + super(org.jooq.test.mysql2.generatedclasses.tables.T_725LobTest.T_725_LOB_TEST); + } +} diff --git a/jOOQ-test/src/org/jooq/test/mysql2/generatedclasses/tables/records/T_785Record.java b/jOOQ-test/src/org/jooq/test/mysql2/generatedclasses/tables/records/T_785Record.java new file mode 100644 index 00000000000..5cf016c4521 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/mysql2/generatedclasses/tables/records/T_785Record.java @@ -0,0 +1,66 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.mysql2.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "t_785", schema = "test2") +public class T_785Record extends org.jooq.impl.TableRecordImpl { + + private static final long serialVersionUID = 1113905506; + + /** + * An uncommented item + */ + public void setId(java.lang.Integer value) { + setValue(org.jooq.test.mysql2.generatedclasses.tables.T_785.T_785.ID, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "ID", precision = 10) + public java.lang.Integer getId() { + return getValue(org.jooq.test.mysql2.generatedclasses.tables.T_785.T_785.ID); + } + + /** + * An uncommented item + */ + public void setName(java.lang.String value) { + setValue(org.jooq.test.mysql2.generatedclasses.tables.T_785.T_785.NAME, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "NAME", length = 50) + public java.lang.String getName() { + return getValue(org.jooq.test.mysql2.generatedclasses.tables.T_785.T_785.NAME); + } + + /** + * An uncommented item + */ + public void setValue(java.lang.String value) { + setValue(org.jooq.test.mysql2.generatedclasses.tables.T_785.T_785.VALUE, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "VALUE", length = 50) + public java.lang.String getValue() { + return getValue(org.jooq.test.mysql2.generatedclasses.tables.T_785.T_785.VALUE); + } + + /** + * Create a detached T_785Record + */ + public T_785Record() { + super(org.jooq.test.mysql2.generatedclasses.tables.T_785.T_785); + } +} diff --git a/jOOQ-test/src/org/jooq/test/mysql2/generatedclasses/tables/records/T_959Record.java b/jOOQ-test/src/org/jooq/test/mysql2/generatedclasses/tables/records/T_959Record.java new file mode 100644 index 00000000000..171fd41d68e --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/mysql2/generatedclasses/tables/records/T_959Record.java @@ -0,0 +1,36 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.mysql2.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "t_959", schema = "test2") +public class T_959Record extends org.jooq.impl.TableRecordImpl { + + private static final long serialVersionUID = -1270128865; + + /** + * An uncommented item + */ + public void setJavaKeywords(org.jooq.test.mysql2.generatedclasses.enums.T_959JavaKeywords value) { + setValue(org.jooq.test.mysql2.generatedclasses.tables.T_959.T_959.JAVA_KEYWORDS, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "java_keywords", length = 12) + public org.jooq.test.mysql2.generatedclasses.enums.T_959JavaKeywords getJavaKeywords() { + return getValue(org.jooq.test.mysql2.generatedclasses.tables.T_959.T_959.JAVA_KEYWORDS); + } + + /** + * Create a detached T_959Record + */ + public T_959Record() { + super(org.jooq.test.mysql2.generatedclasses.tables.T_959.T_959); + } +} diff --git a/jOOQ-test/src/org/jooq/test/mysql2/generatedclasses/tables/records/VAuthorRecord.java b/jOOQ-test/src/org/jooq/test/mysql2/generatedclasses/tables/records/VAuthorRecord.java new file mode 100644 index 00000000000..ea3685f6151 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/mysql2/generatedclasses/tables/records/VAuthorRecord.java @@ -0,0 +1,113 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.mysql2.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + * + * VIEW + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "v_author", schema = "test2") +public class VAuthorRecord extends org.jooq.impl.TableRecordImpl { + + private static final long serialVersionUID = 762001348; + + /** + * The author ID + */ + public void setId(java.lang.Integer value) { + setValue(org.jooq.test.mysql2.generatedclasses.tables.VAuthor.V_AUTHOR.ID, value); + } + + /** + * The author ID + */ + @javax.persistence.Column(name = "ID", nullable = false, precision = 10) + public java.lang.Integer getId() { + return getValue(org.jooq.test.mysql2.generatedclasses.tables.VAuthor.V_AUTHOR.ID); + } + + /** + * The author's first name + */ + public void setFirstName(java.lang.String value) { + setValue(org.jooq.test.mysql2.generatedclasses.tables.VAuthor.V_AUTHOR.FIRST_NAME, value); + } + + /** + * The author's first name + */ + @javax.persistence.Column(name = "FIRST_NAME", length = 50) + public java.lang.String getFirstName() { + return getValue(org.jooq.test.mysql2.generatedclasses.tables.VAuthor.V_AUTHOR.FIRST_NAME); + } + + /** + * The author's last name + */ + public void setLastName(java.lang.String value) { + setValue(org.jooq.test.mysql2.generatedclasses.tables.VAuthor.V_AUTHOR.LAST_NAME, value); + } + + /** + * The author's last name + */ + @javax.persistence.Column(name = "LAST_NAME", nullable = false, length = 50) + public java.lang.String getLastName() { + return getValue(org.jooq.test.mysql2.generatedclasses.tables.VAuthor.V_AUTHOR.LAST_NAME); + } + + /** + * The author's date of birth + */ + public void setDateOfBirth(java.sql.Date value) { + setValue(org.jooq.test.mysql2.generatedclasses.tables.VAuthor.V_AUTHOR.DATE_OF_BIRTH, value); + } + + /** + * The author's date of birth + */ + @javax.persistence.Column(name = "DATE_OF_BIRTH") + public java.sql.Date getDateOfBirth() { + return getValue(org.jooq.test.mysql2.generatedclasses.tables.VAuthor.V_AUTHOR.DATE_OF_BIRTH); + } + + /** + * The author's year of birth + */ + public void setYearOfBirth(java.lang.Integer value) { + setValue(org.jooq.test.mysql2.generatedclasses.tables.VAuthor.V_AUTHOR.YEAR_OF_BIRTH, value); + } + + /** + * The author's year of birth + */ + @javax.persistence.Column(name = "YEAR_OF_BIRTH", precision = 10) + public java.lang.Integer getYearOfBirth() { + return getValue(org.jooq.test.mysql2.generatedclasses.tables.VAuthor.V_AUTHOR.YEAR_OF_BIRTH); + } + + /** + * The author's address + */ + public void setAddress(java.lang.String value) { + setValue(org.jooq.test.mysql2.generatedclasses.tables.VAuthor.V_AUTHOR.ADDRESS, value); + } + + /** + * The author's address + */ + @javax.persistence.Column(name = "ADDRESS", length = 200) + public java.lang.String getAddress() { + return getValue(org.jooq.test.mysql2.generatedclasses.tables.VAuthor.V_AUTHOR.ADDRESS); + } + + /** + * Create a detached VAuthorRecord + */ + public VAuthorRecord() { + super(org.jooq.test.mysql2.generatedclasses.tables.VAuthor.V_AUTHOR); + } +} diff --git a/jOOQ-test/src/org/jooq/test/mysql2/generatedclasses/tables/records/VBookRecord.java b/jOOQ-test/src/org/jooq/test/mysql2/generatedclasses/tables/records/VBookRecord.java new file mode 100644 index 00000000000..d3397725bc9 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/mysql2/generatedclasses/tables/records/VBookRecord.java @@ -0,0 +1,173 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.mysql2.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + * + * VIEW + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "v_book", schema = "test2") +public class VBookRecord extends org.jooq.impl.TableRecordImpl { + + private static final long serialVersionUID = -139536077; + + /** + * The book ID + */ + public void setId(java.lang.Integer value) { + setValue(org.jooq.test.mysql2.generatedclasses.tables.VBook.V_BOOK.ID, value); + } + + /** + * The book ID + */ + @javax.persistence.Column(name = "ID", nullable = false, precision = 10) + public java.lang.Integer getId() { + return getValue(org.jooq.test.mysql2.generatedclasses.tables.VBook.V_BOOK.ID); + } + + /** + * The author ID in entity 'author' + */ + public void setAuthorId(java.lang.Integer value) { + setValue(org.jooq.test.mysql2.generatedclasses.tables.VBook.V_BOOK.AUTHOR_ID, value); + } + + /** + * The author ID in entity 'author' + */ + @javax.persistence.Column(name = "AUTHOR_ID", nullable = false, precision = 10) + public java.lang.Integer getAuthorId() { + return getValue(org.jooq.test.mysql2.generatedclasses.tables.VBook.V_BOOK.AUTHOR_ID); + } + + /** + * An uncommented item + */ + public void setCoAuthorId(java.lang.Integer value) { + setValue(org.jooq.test.mysql2.generatedclasses.tables.VBook.V_BOOK.CO_AUTHOR_ID, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "co_author_id", precision = 10) + public java.lang.Integer getCoAuthorId() { + return getValue(org.jooq.test.mysql2.generatedclasses.tables.VBook.V_BOOK.CO_AUTHOR_ID); + } + + /** + * Some more details about the book + */ + public void setDetailsId(java.lang.Integer value) { + setValue(org.jooq.test.mysql2.generatedclasses.tables.VBook.V_BOOK.DETAILS_ID, value); + } + + /** + * Some more details about the book + */ + @javax.persistence.Column(name = "DETAILS_ID", precision = 10) + public java.lang.Integer getDetailsId() { + return getValue(org.jooq.test.mysql2.generatedclasses.tables.VBook.V_BOOK.DETAILS_ID); + } + + /** + * The book's title + */ + public void setTitle(java.lang.String value) { + setValue(org.jooq.test.mysql2.generatedclasses.tables.VBook.V_BOOK.TITLE, value); + } + + /** + * The book's title + */ + @javax.persistence.Column(name = "TITLE", nullable = false, length = 65535) + public java.lang.String getTitle() { + return getValue(org.jooq.test.mysql2.generatedclasses.tables.VBook.V_BOOK.TITLE); + } + + /** + * The year the book was published in + */ + public void setPublishedIn(java.lang.Integer value) { + setValue(org.jooq.test.mysql2.generatedclasses.tables.VBook.V_BOOK.PUBLISHED_IN, value); + } + + /** + * The year the book was published in + */ + @javax.persistence.Column(name = "PUBLISHED_IN", nullable = false, precision = 10) + public java.lang.Integer getPublishedIn() { + return getValue(org.jooq.test.mysql2.generatedclasses.tables.VBook.V_BOOK.PUBLISHED_IN); + } + + /** + * The language of the book + */ + public void setLanguageId(java.lang.Integer value) { + setValue(org.jooq.test.mysql2.generatedclasses.tables.VBook.V_BOOK.LANGUAGE_ID, value); + } + + /** + * The language of the book + */ + @javax.persistence.Column(name = "LANGUAGE_ID", nullable = false, precision = 10) + public java.lang.Integer getLanguageId() { + return getValue(org.jooq.test.mysql2.generatedclasses.tables.VBook.V_BOOK.LANGUAGE_ID); + } + + /** + * Some textual content of the book + */ + public void setContentText(java.lang.String value) { + setValue(org.jooq.test.mysql2.generatedclasses.tables.VBook.V_BOOK.CONTENT_TEXT, value); + } + + /** + * Some textual content of the book + */ + @javax.persistence.Column(name = "CONTENT_TEXT") + public java.lang.String getContentText() { + return getValue(org.jooq.test.mysql2.generatedclasses.tables.VBook.V_BOOK.CONTENT_TEXT); + } + + /** + * Some binary content of the book + */ + public void setContentPdf(byte[] value) { + setValue(org.jooq.test.mysql2.generatedclasses.tables.VBook.V_BOOK.CONTENT_PDF, value); + } + + /** + * Some binary content of the book + */ + @javax.persistence.Column(name = "CONTENT_PDF") + public byte[] getContentPdf() { + return getValue(org.jooq.test.mysql2.generatedclasses.tables.VBook.V_BOOK.CONTENT_PDF); + } + + /** + * The book's stock status + */ + public void setStatus(org.jooq.test.mysql2.generatedclasses.enums.VBookStatus value) { + setValue(org.jooq.test.mysql2.generatedclasses.tables.VBook.V_BOOK.STATUS, value); + } + + /** + * The book's stock status + */ + @javax.persistence.Column(name = "STATUS", length = 8) + public org.jooq.test.mysql2.generatedclasses.enums.VBookStatus getStatus() { + return getValue(org.jooq.test.mysql2.generatedclasses.tables.VBook.V_BOOK.STATUS); + } + + /** + * Create a detached VBookRecord + */ + public VBookRecord() { + super(org.jooq.test.mysql2.generatedclasses.tables.VBook.V_BOOK); + } +} diff --git a/jOOQ-test/src/org/jooq/test/mysql2/generatedclasses/tables/records/VLibraryRecord.java b/jOOQ-test/src/org/jooq/test/mysql2/generatedclasses/tables/records/VLibraryRecord.java new file mode 100644 index 00000000000..7669b7e7a81 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/mysql2/generatedclasses/tables/records/VLibraryRecord.java @@ -0,0 +1,53 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.mysql2.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + * + * VIEW + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "v_library", schema = "test2") +public class VLibraryRecord extends org.jooq.impl.TableRecordImpl { + + private static final long serialVersionUID = -1430437703; + + /** + * An uncommented item + */ + public void setAuthor(java.lang.String value) { + setValue(org.jooq.test.mysql2.generatedclasses.tables.VLibrary.V_LIBRARY.AUTHOR, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "AUTHOR", length = 101) + public java.lang.String getAuthor() { + return getValue(org.jooq.test.mysql2.generatedclasses.tables.VLibrary.V_LIBRARY.AUTHOR); + } + + /** + * The book's title + */ + public void setTitle(java.lang.String value) { + setValue(org.jooq.test.mysql2.generatedclasses.tables.VLibrary.V_LIBRARY.TITLE, value); + } + + /** + * The book's title + */ + @javax.persistence.Column(name = "TITLE", nullable = false, length = 65535) + public java.lang.String getTitle() { + return getValue(org.jooq.test.mysql2.generatedclasses.tables.VLibrary.V_LIBRARY.TITLE); + } + + /** + * Create a detached VLibraryRecord + */ + public VLibraryRecord() { + super(org.jooq.test.mysql2.generatedclasses.tables.VLibrary.V_LIBRARY); + } +} diff --git a/jOOQ-test/src/org/jooq/test/mysql2/generatedclasses/tables/records/XTestCase_64_69Record.java b/jOOQ-test/src/org/jooq/test/mysql2/generatedclasses/tables/records/XTestCase_64_69Record.java new file mode 100644 index 00000000000..b78b917baf6 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/mysql2/generatedclasses/tables/records/XTestCase_64_69Record.java @@ -0,0 +1,82 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.mysql2.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + * + * An unused table in the same schema. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "x_test_case_64_69", schema = "test2") +public class XTestCase_64_69Record extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = 49054844; + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setId(java.lang.Integer value) { + setValue(org.jooq.test.mysql2.generatedclasses.tables.XTestCase_64_69.X_TEST_CASE_64_69.ID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + @javax.persistence.Id + @javax.persistence.Column(name = "ID", unique = true, nullable = false, precision = 10) + public java.lang.Integer getId() { + return getValue(org.jooq.test.mysql2.generatedclasses.tables.XTestCase_64_69.X_TEST_CASE_64_69.ID); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.util.List fetchXTestCase_71List() { + return create() + .selectFrom(org.jooq.test.mysql2.generatedclasses.tables.XTestCase_71.X_TEST_CASE_71) + .where(org.jooq.test.mysql2.generatedclasses.tables.XTestCase_71.X_TEST_CASE_71.TEST_CASE_64_69_ID.equal(getValue(org.jooq.test.mysql2.generatedclasses.tables.XTestCase_64_69.X_TEST_CASE_64_69.ID))) + .fetch(); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_x_test_case_64_69a
+	 * FOREIGN KEY (UNUSED_ID)
+	 * REFERENCES test2.x_unused (ID, NAME)
+	 * 
+ */ + public void setUnusedId(java.lang.Integer value) { + setValue(org.jooq.test.mysql2.generatedclasses.tables.XTestCase_64_69.X_TEST_CASE_64_69.UNUSED_ID, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_x_test_case_64_69a
+	 * FOREIGN KEY (UNUSED_ID)
+	 * REFERENCES test2.x_unused (ID, NAME)
+	 * 
+ */ + @javax.persistence.Column(name = "UNUSED_ID", precision = 10) + public java.lang.Integer getUnusedId() { + return getValue(org.jooq.test.mysql2.generatedclasses.tables.XTestCase_64_69.X_TEST_CASE_64_69.UNUSED_ID); + } + + /** + * Create a detached XTestCase_64_69Record + */ + public XTestCase_64_69Record() { + super(org.jooq.test.mysql2.generatedclasses.tables.XTestCase_64_69.X_TEST_CASE_64_69); + } +} diff --git a/jOOQ-test/src/org/jooq/test/mysql2/generatedclasses/tables/records/XTestCase_71Record.java b/jOOQ-test/src/org/jooq/test/mysql2/generatedclasses/tables/records/XTestCase_71Record.java new file mode 100644 index 00000000000..7608b92a647 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/mysql2/generatedclasses/tables/records/XTestCase_71Record.java @@ -0,0 +1,86 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.mysql2.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + * + * An unused table in the same schema. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "x_test_case_71", schema = "test2") +public class XTestCase_71Record extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = -1045234644; + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setId(java.lang.Integer value) { + setValue(org.jooq.test.mysql2.generatedclasses.tables.XTestCase_71.X_TEST_CASE_71.ID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + @javax.persistence.Id + @javax.persistence.Column(name = "ID", unique = true, nullable = false, precision = 10) + public java.lang.Integer getId() { + return getValue(org.jooq.test.mysql2.generatedclasses.tables.XTestCase_71.X_TEST_CASE_71.ID); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_x_test_case_71
+	 * FOREIGN KEY (TEST_CASE_64_69_ID)
+	 * REFERENCES test2.x_test_case_64_69 (ID)
+	 * 
+ */ + public void setTestCase_64_69Id(java.lang.Integer value) { + setValue(org.jooq.test.mysql2.generatedclasses.tables.XTestCase_71.X_TEST_CASE_71.TEST_CASE_64_69_ID, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_x_test_case_71
+	 * FOREIGN KEY (TEST_CASE_64_69_ID)
+	 * REFERENCES test2.x_test_case_64_69 (ID)
+	 * 
+ */ + @javax.persistence.Column(name = "TEST_CASE_64_69_ID", precision = 10) + public java.lang.Integer getTestCase_64_69Id() { + return getValue(org.jooq.test.mysql2.generatedclasses.tables.XTestCase_71.X_TEST_CASE_71.TEST_CASE_64_69_ID); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_x_test_case_71
+	 * FOREIGN KEY (TEST_CASE_64_69_ID)
+	 * REFERENCES test2.x_test_case_64_69 (ID)
+	 * 
+ */ + public org.jooq.test.mysql2.generatedclasses.tables.records.XTestCase_64_69Record fetchXTestCase_64_69() { + return create() + .selectFrom(org.jooq.test.mysql2.generatedclasses.tables.XTestCase_64_69.X_TEST_CASE_64_69) + .where(org.jooq.test.mysql2.generatedclasses.tables.XTestCase_64_69.X_TEST_CASE_64_69.ID.equal(getValue(org.jooq.test.mysql2.generatedclasses.tables.XTestCase_71.X_TEST_CASE_71.TEST_CASE_64_69_ID))) + .fetchOne(); + } + + /** + * Create a detached XTestCase_71Record + */ + public XTestCase_71Record() { + super(org.jooq.test.mysql2.generatedclasses.tables.XTestCase_71.X_TEST_CASE_71); + } +} diff --git a/jOOQ-test/src/org/jooq/test/mysql2/generatedclasses/tables/records/XTestCase_85Record.java b/jOOQ-test/src/org/jooq/test/mysql2/generatedclasses/tables/records/XTestCase_85Record.java new file mode 100644 index 00000000000..57cdc253cc9 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/mysql2/generatedclasses/tables/records/XTestCase_85Record.java @@ -0,0 +1,114 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.mysql2.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + * + * An unused table in the same schema. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "x_test_case_85", schema = "test2") +public class XTestCase_85Record extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = -2015662276; + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setId(java.lang.Integer value) { + setValue(org.jooq.test.mysql2.generatedclasses.tables.XTestCase_85.X_TEST_CASE_85.ID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + @javax.persistence.Id + @javax.persistence.Column(name = "id", unique = true, nullable = false, precision = 10) + public java.lang.Integer getId() { + return getValue(org.jooq.test.mysql2.generatedclasses.tables.XTestCase_85.X_TEST_CASE_85.ID); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_x_test_case_85
+	 * FOREIGN KEY (x_unused_id, x_unused_name)
+	 * REFERENCES test2.x_unused (ID, NAME)
+	 * 
+ */ + public void setXUnusedId(java.lang.Integer value) { + setValue(org.jooq.test.mysql2.generatedclasses.tables.XTestCase_85.X_TEST_CASE_85.X_UNUSED_ID, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_x_test_case_85
+	 * FOREIGN KEY (x_unused_id, x_unused_name)
+	 * REFERENCES test2.x_unused (ID, NAME)
+	 * 
+ */ + @javax.persistence.Column(name = "x_unused_id", precision = 10) + public java.lang.Integer getXUnusedId() { + return getValue(org.jooq.test.mysql2.generatedclasses.tables.XTestCase_85.X_TEST_CASE_85.X_UNUSED_ID); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_x_test_case_85
+	 * FOREIGN KEY (x_unused_id, x_unused_name)
+	 * REFERENCES test2.x_unused (ID, NAME)
+	 * 
+ */ + public org.jooq.test.mysql2.generatedclasses.tables.records.XUnusedRecord fetchXUnused() { + return create() + .selectFrom(org.jooq.test.mysql2.generatedclasses.tables.XUnused.X_UNUSED) + .where(org.jooq.test.mysql2.generatedclasses.tables.XUnused.X_UNUSED.ID.equal(getValue(org.jooq.test.mysql2.generatedclasses.tables.XTestCase_85.X_TEST_CASE_85.X_UNUSED_ID))) + .and(org.jooq.test.mysql2.generatedclasses.tables.XUnused.X_UNUSED.NAME.equal(getValue(org.jooq.test.mysql2.generatedclasses.tables.XTestCase_85.X_TEST_CASE_85.X_UNUSED_NAME))) + .fetchOne(); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_x_test_case_85
+	 * FOREIGN KEY (x_unused_id, x_unused_name)
+	 * REFERENCES test2.x_unused (ID, NAME)
+	 * 
+ */ + public void setXUnusedName(java.lang.String value) { + setValue(org.jooq.test.mysql2.generatedclasses.tables.XTestCase_85.X_TEST_CASE_85.X_UNUSED_NAME, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_x_test_case_85
+	 * FOREIGN KEY (x_unused_id, x_unused_name)
+	 * REFERENCES test2.x_unused (ID, NAME)
+	 * 
+ */ + @javax.persistence.Column(name = "x_unused_name", length = 10) + public java.lang.String getXUnusedName() { + return getValue(org.jooq.test.mysql2.generatedclasses.tables.XTestCase_85.X_TEST_CASE_85.X_UNUSED_NAME); + } + + /** + * Create a detached XTestCase_85Record + */ + public XTestCase_85Record() { + super(org.jooq.test.mysql2.generatedclasses.tables.XTestCase_85.X_TEST_CASE_85); + } +} diff --git a/jOOQ-test/src/org/jooq/test/mysql2/generatedclasses/tables/records/XUnusedRecord.java b/jOOQ-test/src/org/jooq/test/mysql2/generatedclasses/tables/records/XUnusedRecord.java new file mode 100644 index 00000000000..70a34c1d6b8 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/mysql2/generatedclasses/tables/records/XUnusedRecord.java @@ -0,0 +1,310 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.mysql2.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + * + * An unused table in the same schema. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "x_unused", schema = "test2", uniqueConstraints = { + @javax.persistence.UniqueConstraint(columnNames = {"ID", "NAME"}) +}) +public class XUnusedRecord extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = -1406261947; + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setId(java.lang.Integer value) { + setValue(org.jooq.test.mysql2.generatedclasses.tables.XUnused.X_UNUSED.ID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + @javax.persistence.Column(name = "ID", unique = true, nullable = false, precision = 10) + public java.lang.Integer getId() { + return getValue(org.jooq.test.mysql2.generatedclasses.tables.XUnused.X_UNUSED.ID); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.util.List fetchXTestCase_85List() { + return create() + .selectFrom(org.jooq.test.mysql2.generatedclasses.tables.XTestCase_85.X_TEST_CASE_85) + .where(org.jooq.test.mysql2.generatedclasses.tables.XTestCase_85.X_TEST_CASE_85.X_UNUSED_ID.equal(getValue(org.jooq.test.mysql2.generatedclasses.tables.XUnused.X_UNUSED.ID))) + .and(org.jooq.test.mysql2.generatedclasses.tables.XTestCase_85.X_TEST_CASE_85.X_UNUSED_NAME.equal(getValue(org.jooq.test.mysql2.generatedclasses.tables.XUnused.X_UNUSED.NAME))) + .fetch(); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.util.List fetchXUnusedList() { + return create() + .selectFrom(org.jooq.test.mysql2.generatedclasses.tables.XUnused.X_UNUSED) + .where(org.jooq.test.mysql2.generatedclasses.tables.XUnused.X_UNUSED.ID_REF.equal(getValue(org.jooq.test.mysql2.generatedclasses.tables.XUnused.X_UNUSED.ID))) + .and(org.jooq.test.mysql2.generatedclasses.tables.XUnused.X_UNUSED.NAME_REF.equal(getValue(org.jooq.test.mysql2.generatedclasses.tables.XUnused.X_UNUSED.NAME))) + .fetch(); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setName(java.lang.String value) { + setValue(org.jooq.test.mysql2.generatedclasses.tables.XUnused.X_UNUSED.NAME, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + @javax.persistence.Column(name = "NAME", nullable = false, length = 10) + public java.lang.String getName() { + return getValue(org.jooq.test.mysql2.generatedclasses.tables.XUnused.X_UNUSED.NAME); + } + + /** + * An uncommented item + */ + public void setBigInteger(java.math.BigInteger value) { + setValue(org.jooq.test.mysql2.generatedclasses.tables.XUnused.X_UNUSED.BIG_INTEGER, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "BIG_INTEGER", precision = 25) + public java.math.BigInteger getBigInteger() { + return getValue(org.jooq.test.mysql2.generatedclasses.tables.XUnused.X_UNUSED.BIG_INTEGER); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_x_unused_self
+	 * FOREIGN KEY (ID_REF, NAME_REF)
+	 * REFERENCES test2.x_unused (ID, NAME)
+	 * 
+ */ + public void setIdRef(java.lang.Integer value) { + setValue(org.jooq.test.mysql2.generatedclasses.tables.XUnused.X_UNUSED.ID_REF, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_x_unused_self
+	 * FOREIGN KEY (ID_REF, NAME_REF)
+	 * REFERENCES test2.x_unused (ID, NAME)
+	 * 
+ */ + @javax.persistence.Column(name = "ID_REF", precision = 10) + public java.lang.Integer getIdRef() { + return getValue(org.jooq.test.mysql2.generatedclasses.tables.XUnused.X_UNUSED.ID_REF); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_x_unused_self
+	 * FOREIGN KEY (ID_REF, NAME_REF)
+	 * REFERENCES test2.x_unused (ID, NAME)
+	 * 
+ */ + public org.jooq.test.mysql2.generatedclasses.tables.records.XUnusedRecord fetchXUnused() { + return create() + .selectFrom(org.jooq.test.mysql2.generatedclasses.tables.XUnused.X_UNUSED) + .where(org.jooq.test.mysql2.generatedclasses.tables.XUnused.X_UNUSED.ID.equal(getValue(org.jooq.test.mysql2.generatedclasses.tables.XUnused.X_UNUSED.ID_REF))) + .and(org.jooq.test.mysql2.generatedclasses.tables.XUnused.X_UNUSED.NAME.equal(getValue(org.jooq.test.mysql2.generatedclasses.tables.XUnused.X_UNUSED.NAME_REF))) + .fetchOne(); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_x_unused_self
+	 * FOREIGN KEY (ID_REF, NAME_REF)
+	 * REFERENCES test2.x_unused (ID, NAME)
+	 * 
+ */ + public void setNameRef(java.lang.String value) { + setValue(org.jooq.test.mysql2.generatedclasses.tables.XUnused.X_UNUSED.NAME_REF, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_x_unused_self
+	 * FOREIGN KEY (ID_REF, NAME_REF)
+	 * REFERENCES test2.x_unused (ID, NAME)
+	 * 
+ */ + @javax.persistence.Column(name = "NAME_REF", length = 10) + public java.lang.String getNameRef() { + return getValue(org.jooq.test.mysql2.generatedclasses.tables.XUnused.X_UNUSED.NAME_REF); + } + + /** + * An uncommented item + */ + public void setClass_(java.lang.Integer value) { + setValue(org.jooq.test.mysql2.generatedclasses.tables.XUnused.X_UNUSED.CLASS, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "CLASS", precision = 10) + public java.lang.Integer getClass_() { + return getValue(org.jooq.test.mysql2.generatedclasses.tables.XUnused.X_UNUSED.CLASS); + } + + /** + * An uncommented item + */ + public void setFields_(java.lang.Integer value) { + setValue(org.jooq.test.mysql2.generatedclasses.tables.XUnused.X_UNUSED.FIELDS, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "FIELDS", precision = 10) + public java.lang.Integer getFields_() { + return getValue(org.jooq.test.mysql2.generatedclasses.tables.XUnused.X_UNUSED.FIELDS); + } + + /** + * An uncommented item + */ + public void setConfiguration_(java.lang.Integer value) { + setValue(org.jooq.test.mysql2.generatedclasses.tables.XUnused.X_UNUSED.CONFIGURATION, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "CONFIGURATION", precision = 10) + public java.lang.Integer getConfiguration_() { + return getValue(org.jooq.test.mysql2.generatedclasses.tables.XUnused.X_UNUSED.CONFIGURATION); + } + + /** + * An uncommented item + */ + public void setUDT(java.lang.Integer value) { + setValue(org.jooq.test.mysql2.generatedclasses.tables.XUnused.X_UNUSED.U_D_T, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "U_D_T", precision = 10) + public java.lang.Integer getUDT() { + return getValue(org.jooq.test.mysql2.generatedclasses.tables.XUnused.X_UNUSED.U_D_T); + } + + /** + * An uncommented item + */ + public void setMetaData_(java.lang.Integer value) { + setValue(org.jooq.test.mysql2.generatedclasses.tables.XUnused.X_UNUSED.META_DATA, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "META_DATA", precision = 10) + public java.lang.Integer getMetaData_() { + return getValue(org.jooq.test.mysql2.generatedclasses.tables.XUnused.X_UNUSED.META_DATA); + } + + /** + * An uncommented item + */ + public void setType0_(java.lang.Integer value) { + setValue(org.jooq.test.mysql2.generatedclasses.tables.XUnused.X_UNUSED.TYPE0, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "TYPE0", precision = 10) + public java.lang.Integer getType0_() { + return getValue(org.jooq.test.mysql2.generatedclasses.tables.XUnused.X_UNUSED.TYPE0); + } + + /** + * An uncommented item + */ + public void setPrimaryKey(java.lang.Integer value) { + setValue(org.jooq.test.mysql2.generatedclasses.tables.XUnused.X_UNUSED.PRIMARY_KEY, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "PRIMARY_KEY", precision = 10) + public java.lang.Integer getPrimaryKey() { + return getValue(org.jooq.test.mysql2.generatedclasses.tables.XUnused.X_UNUSED.PRIMARY_KEY); + } + + /** + * An uncommented item + */ + public void setPrimarykey(java.lang.Integer value) { + setValue(org.jooq.test.mysql2.generatedclasses.tables.XUnused.X_UNUSED.PRIMARYKEY, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "PRIMARYKEY", precision = 10) + public java.lang.Integer getPrimarykey() { + return getValue(org.jooq.test.mysql2.generatedclasses.tables.XUnused.X_UNUSED.PRIMARYKEY); + } + + /** + * An uncommented item + */ + public void setField_737(java.math.BigDecimal value) { + setValue(org.jooq.test.mysql2.generatedclasses.tables.XUnused.X_UNUSED.FIELD_737, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "FIELD 737", precision = 25, scale = 2) + public java.math.BigDecimal getField_737() { + return getValue(org.jooq.test.mysql2.generatedclasses.tables.XUnused.X_UNUSED.FIELD_737); + } + + /** + * Create a detached XUnusedRecord + */ + public XUnusedRecord() { + super(org.jooq.test.mysql2.generatedclasses.tables.XUnused.X_UNUSED); + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle/create.sql b/jOOQ-test/src/org/jooq/test/oracle/create.sql new file mode 100644 index 00000000000..f7052734a69 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle/create.sql @@ -0,0 +1,1693 @@ +DROP VIEW v_library/ +DROP VIEW v_author/ +DROP VIEW v_book/ +DROP VIEW v_incomplete/ + +DROP SEQUENCE s_961_byte/ +DROP SEQUENCE s_961_short/ +DROP SEQUENCE s_961_int/ +DROP SEQUENCE s_961_long/ +DROP SEQUENCE s_961_big_integer/ +DROP SEQUENCE s_triggers_sequence/ +DROP TRIGGER t_triggers_trigger/ + +DROP TABLE multi_schema.t_book_sale/ +DROP TABLE multi_schema.t_book/ +DROP TABLE multi_schema.t_author/ + +DROP TABLE t_dates/ +DROP TABLE t_triggers/ +DROP TABLE t_arrays/ +DROP TABLE t_book_to_book_store/ +DROP TABLE t_book_store/ +DROP TABLE t_book/ +DROP TABLE t_book_details/ +DROP TABLE t_author/ +DROP TABLE t_language/ +DROP TABLE t_directory/ +DROP TABLE x_test_case_71/ +DROP TABLE x_test_case_64_69/ +DROP TABLE x_test_case_85/ +DROP TABLE x_unused/ +DROP TABLE x_many_fields/ +DROP TABLE t_639_numbers_table/ +DROP TABLE t_658_ref/ +DROP TABLE t_658_11/ +DROP TABLE t_658_21/ +DROP TABLE t_658_31/ +DROP TABLE t_658_12/ +DROP TABLE t_658_22/ +DROP TABLE t_658_32/ +DROP TABLE t_725_lob_test/ +DROP TABLE t_785/ +DROP TABLE t_booleans/ + +DROP TABLE multi_schema_unused.x_unused/ + +DROP PROCEDURE p_arrays1/ +DROP PROCEDURE p_arrays2/ +DROP PROCEDURE p_arrays3/ +DROP PROCEDURE p_arrays4/ +DROP PROCEDURE p_tables1/ +DROP PROCEDURE p_tables2/ +DROP PROCEDURE p_tables3/ +DROP PROCEDURE p_tables4/ +DROP PROCEDURE p_many_parameters/ +DROP PROCEDURE p_default/ +DROP FUNCTION f_arrays1/ +DROP FUNCTION f_arrays2/ +DROP FUNCTION f_arrays3/ +DROP FUNCTION f_arrays4/ +DROP FUNCTION f_tables1/ +DROP FUNCTION f_tables2/ +DROP FUNCTION f_tables3/ +DROP FUNCTION f_tables4/ +DROP FUNCTION f_pipelined_array1/ +DROP FUNCTION f_pipelined_array4/ +DROP FUNCTION f_pipelined_table1/ +DROP FUNCTION f_pipelined_table4/ +DROP PROCEDURE p_enhance_address1/ +DROP PROCEDURE p_enhance_address2/ +DROP PROCEDURE p_enhance_address3/ +DROP PROCEDURE p_unused/ +DROP PROCEDURE p_create_author/ +DROP PROCEDURE p_create_author_by_name/ +DROP PROCEDURE p_author_exists/ +DROP PROCEDURE p391/ +DROP FUNCTION f_author_exists/ +DROP FUNCTION f_one/ +DROP FUNCTION f_number/ +DROP FUNCTION f317/ +DROP FUNCTION f378/ +DROP PROCEDURE p_get_two_cursors/ +DROP PROCEDURE p_get_one_cursor/ +DROP FUNCTION f_get_one_cursor/ +DROP FUNCTION f691cursor_out/ +DROP FUNCTION f691cursor_in/ +DROP PACKAGE library/ + +DROP TYPE u_address_table/ +DROP TYPE u_address_type/ +DROP TYPE u_street_type/ +DROP TYPE u_string_array/ +DROP TYPE u_number_array/ +DROP TYPE u_number_long_array/ +DROP TYPE u_date_array/ +DROP TYPE u_string_table/ +DROP TYPE u_number_table/ +DROP TYPE u_number_long_table/ +DROP TYPE u_date_table/ +DROP TYPE o_invalid_type/ +DROP TYPE u_invalid_table/ +DROP TYPE u_invalid_type/ + +DROP TYPE u_author_type/ +DROP TYPE u_book_table/ +DROP TYPE u_book_array/ +DROP TYPE u_book_type/ + +CREATE TYPE u_book_type AS OBJECT ( + id number(7), + title varchar2(400) +) +/ + +CREATE TYPE u_book_table AS TABLE OF u_book_type/ +CREATE TYPE u_book_array AS VARRAY(4) OF u_book_type/ + +CREATE OR REPLACE TYPE u_author_type AS OBJECT ( + id number(7), + first_name varchar2(50), + last_name varchar2(50), + + member procedure load, + member procedure get_books ( + book1 OUT u_book_type, + book2 OUT u_book_type, + books OUT u_book_table), + + member function count_books return number +) +/ + +CREATE OR REPLACE TYPE BODY u_author_type AS + member procedure load is + x number(7); + begin + x := id; + + if x is not null then + select a.first_name, a.last_name + into first_name, last_name + from t_author a + where a.id = x; + end if; + end load; + + member procedure get_books ( + book1 OUT u_book_type, + book2 OUT u_book_type, + books OUT u_book_table) is + + x number(7); + b1 u_book_type := u_book_type(null, null); + b2 u_book_type := u_book_type(null, null); + bs u_book_table; + begin + x := id; + + -- execute a load to check whether the author is also reloaded + self.load; + + if x is not null then + select b.id, b.title + into b1.id, b1.title + from ( + select b.id, b.title, rownum r + from t_book b + where b.author_id = x + order by b.id + ) b + where b.r = 1; + + select b.id, b.title + into b2.id, b2.title + from ( + select b.id, b.title, rownum r + from t_book b + where b.author_id = x + order by b.id + ) b + where b.r = 2; + end if; + + select u_book_type(b.id, b.title) + bulk collect into bs + from t_book b + where b.author_id = x; + + book1 := b1; + book2 := b2; + books := bs; + end get_books; + + member function count_books return number is + x number(7); + r number(7); + begin + x := id; + + select count(*) + into r + from t_book + where author_id = x; + + return r; + end count_books; +end; +/ + +CREATE TYPE u_invalid_type AS invalid/ +CREATE TYPE u_invalid_table AS TABLE OF u_invalid_type/ +CREATE TYPE o_invalid_type AS OBJECT ( + invalid u_invalid_type +)/ +CREATE TYPE u_string_array AS VARRAY(4) OF VARCHAR2(20)/ +CREATE TYPE u_number_array AS VARRAY(4) OF NUMBER(7)/ +CREATE TYPE u_number_long_array AS VARRAY(4) OF NUMBER(11)/ +CREATE TYPE u_date_array AS VARRAY(4) OF DATE/ + +CREATE TYPE u_string_table AS TABLE OF VARCHAR2(20)/ +CREATE TYPE u_number_table AS TABLE OF NUMBER(7)/ +CREATE TYPE u_number_long_table AS TABLE OF NUMBER(11)/ +CREATE TYPE u_date_table AS TABLE OF DATE/ + +CREATE TYPE u_street_type AS OBJECT ( + street VARCHAR2(100), + no VARCHAR2(30), + floors u_number_array +) +/ + +CREATE TYPE u_address_type AS OBJECT ( + street u_street_type, + zip VARCHAR2(50), + city VARCHAR2(50), + country VARCHAR2(50), + since DATE, + code NUMBER(7) +) +/ + +CREATE SEQUENCE s_961_byte MAXVALUE 100/ +CREATE SEQUENCE s_961_short MAXVALUE 10000/ +CREATE SEQUENCE s_961_int MAXVALUE 2000000000/ +CREATE SEQUENCE s_961_long MAXVALUE 10000000000/ +CREATE SEQUENCE s_961_big_integer/ +CREATE SEQUENCE s_triggers_sequence +/ + +CREATE TABLE t_dates ( + id number(7), + d date, + t timestamp, + ts timestamp, + d_int number(7), + ts_bigint number(18), + i_y interval year to month, + i_d interval day to second, + + CONSTRAINT pk_t_dates PRIMARY KEY (id) +) +/ + +CREATE TABLE t_booleans ( + id number(7), + one_zero number(7), + true_false_lc varchar2(5), + true_false_uc varchar2(5), + yes_no_lc varchar2(3), + yes_no_uc varchar2(3), + y_n_lc char(1), + y_n_uc char(1), + vc_boolean varchar2(1), + c_boolean char(1), + n_boolean number(7), + + CONSTRAINT pk_t_booleans PRIMARY KEY (id) +) +/ + +CREATE TABLE t_triggers ( + id_generated number(7) not null, + id number(7) not null, + counter number(7) not null, + + CONSTRAINT pk_t_triggers PRIMARY KEY (id_generated) +) +/ + +CREATE OR REPLACE TRIGGER t_triggers_trigger +BEFORE INSERT +ON t_triggers +REFERENCING NEW AS new +FOR EACH ROW +BEGIN + select s_triggers_sequence.nextval + into :new.id_generated + from dual; + + :new.id := :new.id_generated; + :new.counter := :new.id_generated * 2; +END t_triggers_trigger; +/ + +CREATE TABLE t_directory ( + id number(7) NOT NULL, + parent_id number(7), + is_directory number(7), + "name" varchar2(50), + + CONSTRAINT pk_t_directory PRIMARY KEY (ID), + CONSTRAINT pk_t_directory_self FOREIGN KEY (PARENT_ID) REFERENCES t_directory(ID) ON DELETE CASCADE +) +/ + +CREATE TABLE t_language ( + cd CHAR(2) NOT NULL, + description VARCHAR2(50), + description_english VARCHAR2(50), + id NUMBER(7) NOT NULL, + + CONSTRAINT pk_t_language PRIMARY KEY (ID) +) +/ +COMMENT ON TABLE t_language IS 'An entity holding language master data'/ +COMMENT ON COLUMN t_language.id IS 'The language ID'/ +COMMENT ON COLUMN t_language.cd IS 'The language ISO code'/ +COMMENT ON COLUMN t_language.description IS 'The language description'/ + +CREATE TABLE t_658_11 ( + id CHAR(3) NOT NULL, + + CONSTRAINT pk_t_658_11 PRIMARY KEY (id) +) +/ + +CREATE TABLE t_658_21 ( + id number(7) NOT NULL, + + CONSTRAINT pk_t_658_21 PRIMARY KEY (id) +) +/ + +CREATE TABLE t_658_31 ( + id number(15) NOT NULL, + + CONSTRAINT pk_t_658_31 PRIMARY KEY (id) +) +/ + +CREATE TABLE t_658_12 ( + id CHAR(3) NOT NULL, + cd CHAR(3) NOT NULL, + + CONSTRAINT pk_t_658_12 PRIMARY KEY (id) +) +/ + +CREATE TABLE t_658_22 ( + id number(7) NOT NULL, + cd number(7) NOT NULL, + + CONSTRAINT pk_t_658_22 PRIMARY KEY (id) +) +/ + +CREATE TABLE t_658_32 ( + id number(15) NOT NULL, + cd number(15) NOT NULL, + + CONSTRAINT pk_t_658_32 PRIMARY KEY (id) +) +/ + +CREATE TABLE t_658_ref ( + ref_11 char(3), + ref_21 number(7), + ref_31 number(15), + ref_12 char(3), + ref_22 number(7), + ref_32 number(15), + + CONSTRAINT fk_t_658_11 FOREIGN KEY (ref_11) REFERENCES t_658_11(id), + CONSTRAINT fk_t_658_21 FOREIGN KEY (ref_21) REFERENCES t_658_21(id), + CONSTRAINT fk_t_658_31 FOREIGN KEY (ref_31) REFERENCES t_658_31(id), + CONSTRAINT fk_t_658_12 FOREIGN KEY (ref_12) REFERENCES t_658_12(id), + CONSTRAINT fk_t_658_22 FOREIGN KEY (ref_22) REFERENCES t_658_22(id), + CONSTRAINT fk_t_658_32 FOREIGN KEY (ref_32) REFERENCES t_658_32(id) +) +/ + +CREATE TABLE t_725_lob_test ( + ID NUMBER(7) NOT NULL, + LOB BLOB NULL, + + CONSTRAINT pk_t_725_lob_test PRIMARY KEY (id) +) +/ + +CREATE TABLE t_785 ( + ID NUMBER(7), + NAME varchar2(50), + VALUE varchar2(50) +) +/ + +CREATE TABLE t_author ( + id NUMBER(7) NOT NULL, + first_name VARCHAR2(50), + last_name VARCHAR2(50) NOT NULL, + date_of_birth DATE, + year_of_birth NUMBER(7), + address u_address_type, + + CONSTRAINT pk_t_author PRIMARY KEY (ID) +) +/ +COMMENT ON TABLE t_author IS 'An entity holding authors of books'/ +COMMENT ON COLUMN t_author.id IS 'The author ID'/ +COMMENT ON COLUMN t_author.first_name IS 'The author''s first name'/ +COMMENT ON COLUMN t_author.last_name IS 'The author''s last name'/ +COMMENT ON COLUMN t_author.date_of_birth IS 'The author''s date of birth'/ +COMMENT ON COLUMN t_author.year_of_birth IS 'The author''s year of birth'/ +COMMENT ON COLUMN t_author.address IS 'The author''s address'/ + +CREATE TABLE t_book_details ( + ID NUMBER(7), + + CONSTRAINT pk_t_book_details PRIMARY KEY (ID) +) +/ +COMMENT ON TABLE t_book_details IS 'An unused details table' +/ + +CREATE TABLE t_book ( + id NUMBER(7) NOT NULL, + author_id NUMBER(7) NOT NULL, + co_author_id NUMBER(7), + details_id NUMBER(7), + title VARCHAR2(400) NOT NULL, + published_in NUMBER(7) NOT NULL, + language_id NUMBER(7) NOT NULL, + content_text CLOB, + content_pdf BLOB, + + CONSTRAINT pk_t_book PRIMARY KEY (ID), + CONSTRAINT fk_t_book_author_id FOREIGN KEY (AUTHOR_ID) REFERENCES T_AUTHOR(ID) ON DELETE CASCADE, + CONSTRAINT fk_t_book_co_author_id FOREIGN KEY (CO_AUTHOR_ID) REFERENCES T_AUTHOR(ID) ON DELETE CASCADE, + CONSTRAINT fk_t_book_details_id FOREIGN KEY (DETAILS_ID) REFERENCES T_BOOK_DETAILS(ID) ON DELETE CASCADE, + CONSTRAINT fk_t_book_language_id FOREIGN KEY (LANGUAGE_ID) REFERENCES T_LANGUAGE(ID) ON DELETE CASCADE +) +/ +COMMENT ON TABLE t_book IS 'An entity holding books'/ +COMMENT ON COLUMN t_book.id IS 'The book ID'/ +COMMENT ON COLUMN t_book.author_id IS 'The author ID in entity ''author'''/ +COMMENT ON COLUMN t_book.title IS 'The book''s title'/ +COMMENT ON COLUMN t_book.published_in IS 'The year the book was published in'/ +COMMENT ON COLUMN t_book.language_id IS 'The language of the book'/ +COMMENT ON COLUMN t_book.content_text IS 'Some textual content of the book'/ +COMMENT ON COLUMN t_book.content_pdf IS 'Some binary content of the book'/ + + +CREATE TABLE t_book_store ( + name VARCHAR2(400) NOT NULL, + + CONSTRAINT uk_t_book_store_name UNIQUE(name) +) +/ +COMMENT ON TABLE t_book_store IS 'A book store' +/ +COMMENT ON COLUMN t_book_store.name IS 'The books store name' +/ + + +CREATE TABLE t_book_to_book_store ( + book_store_name VARCHAR2(400) NOT NULL, + book_id NUMBER(7) NOT NULL, + stock NUMBER(7), + + CONSTRAINT pk_b2bs PRIMARY KEY(book_store_name, book_id), + CONSTRAINT fk_b2bs_bs_name FOREIGN KEY (book_store_name) + REFERENCES t_book_store (name) + ON DELETE CASCADE, + CONSTRAINT fk_b2bs_b_id FOREIGN KEY (book_id) + REFERENCES t_book (id) + ON DELETE CASCADE +) +/ +COMMENT ON TABLE t_book_to_book_store IS 'An m:n relation between books and book stores'/ +COMMENT ON COLUMN t_book_to_book_store.book_store_name IS 'The book store name'/ +COMMENT ON COLUMN t_book_to_book_store.book_id IS 'The book ID'/ +COMMENT ON COLUMN t_book_to_book_store.stock IS 'The number of books on stock'/ + +GRANT ALL ON T_BOOK_TO_BOOK_STORE TO MULTI_SCHEMA/ +GRANT ALL ON T_BOOK_DETAILS TO MULTI_SCHEMA/ +GRANT ALL ON T_LANGUAGE TO MULTI_SCHEMA/ + +CREATE TABLE MULTI_SCHEMA.T_BOOK_SALE ( + ID NUMBER(7) NOT NULL, + BOOK_ID NUMBER(7) NOT NULL, + BOOK_STORE_NAME VARCHAR2(400) NOT NULL, + SOLD_AT DATE NOT NULL, + SOLD_FOR NUMBER(10, 2) NOT NULL, + + CONSTRAINT pk_t_book_sale PRIMARY KEY (ID), + CONSTRAINT fk_t_book_to_book_store FOREIGN KEY (BOOK_ID, BOOK_STORE_NAME) REFERENCES TEST.T_BOOK_TO_BOOK_STORE(BOOK_ID, BOOK_STORE_NAME) ON DELETE CASCADE +) +/ + +CREATE TABLE MULTI_SCHEMA.t_author ( + id NUMBER(7) NOT NULL, + first_name VARCHAR2(50), + last_name VARCHAR2(50) NOT NULL, + date_of_birth DATE, + year_of_birth NUMBER(7), + address test.u_address_type, + + CONSTRAINT pk_t_author PRIMARY KEY (ID) +) +/ + +CREATE TABLE MULTI_SCHEMA.t_book ( + id NUMBER(7) NOT NULL, + author_id NUMBER(7) NOT NULL, + co_author_id NUMBER(7), + details_id NUMBER(7), + title VARCHAR2(400) NOT NULL, + published_in NUMBER(7) NOT NULL, + language_id NUMBER(7) NOT NULL, + content_text CLOB, + content_pdf BLOB, + + CONSTRAINT pk_t_book PRIMARY KEY (ID), + CONSTRAINT fk_t_book_author_id FOREIGN KEY (AUTHOR_ID) REFERENCES T_AUTHOR(ID) ON DELETE CASCADE, + CONSTRAINT fk_t_book_co_author_id FOREIGN KEY (CO_AUTHOR_ID) REFERENCES T_AUTHOR(ID) ON DELETE CASCADE, + CONSTRAINT fk_t_book_details_id FOREIGN KEY (DETAILS_ID) REFERENCES TEST.T_BOOK_DETAILS(ID) ON DELETE CASCADE, + CONSTRAINT fk_t_book_language_id FOREIGN KEY (LANGUAGE_ID) REFERENCES TEST.T_LANGUAGE(ID) ON DELETE CASCADE +) +/ + +CREATE TABLE t_arrays ( + id NUMBER(7) not null, + string_array u_string_array, + number_array u_number_array, + number_long_array u_number_long_array, + date_array u_date_array, + + CONSTRAINT pk_t_arrays PRIMARY KEY (ID) +) +/ + +CREATE TABLE multi_schema_unused.x_unused ( + id NUMBER(7) NOT NULL, + name VARCHAR2(10) NOT NULL, + + CONSTRAINT pk_x_unused PRIMARY KEY(ID, NAME) +) +/ + +GRANT ALL ON MULTI_SCHEMA_UNUSED.X_UNUSED TO TEST/ + +CREATE TABLE x_unused ( + id NUMBER(7) NOT NULL, + name VARCHAR2(10) NOT NULL, + big_integer NUMBER(38), + id_ref NUMBER(7), + CLASS NUMBER(7), + FIELDS NUMBER(7), + CONFIGURATION NUMBER(7), + U_D_T NUMBER(7), + META_DATA NUMBER(7), + TYPE0 NUMBER(7), + PRIMARY_KEY NUMBER(7), + PRIMARYKEY NUMBER(7), + name_ref VARCHAR2(10), + "FIELD 737" NUMBER(25, 2), + MS_UNUSED_ID_REF NUMBER(7), + MS_UNUSED_NAME_REF VARCHAR2(10), + + CONSTRAINT pk_x_unused PRIMARY KEY(ID, NAME), + CONSTRAINT uk_x_unused_id UNIQUE(ID), + CONSTRAINT fk_x_unused_self + FOREIGN KEY(ID_REF, NAME_REF) + REFERENCES X_UNUSED(ID, NAME), + CONSTRAINT fk_ms_unused_x_unused + FOREIGN KEY(MS_UNUSED_ID_REF, MS_UNUSED_NAME_REF) + REFERENCES MULTI_SCHEMA_UNUSED.X_UNUSED(ID, NAME) +) +/ +COMMENT ON TABLE x_unused IS 'An unused table in the same schema.' +/ + +CREATE TABLE t_639_numbers_table ( + ID NUMBER(7) NOT NULL, + BYTE NUMBER(2), + SHORT NUMBER(4), + "INTEGER" NUMBER(7), + "LONG" NUMBER(18), + BYTE_DECIMAL DECIMAL(2, 0), + SHORT_DECIMAL DECIMAL(4, 0), + INTEGER_DECIMAL DECIMAL(9, 0), + LONG_DECIMAL DECIMAL(18, 0), + BIG_INTEGER DECIMAL(22, 0), + BIG_DECIMAL DECIMAL(22, 5), + + CONSTRAINT pk_t_639_numbers_table PRIMARY KEY(ID) +) +/ + +CREATE TABLE x_test_case_64_69 ( + id NUMBER(7) NOT NULL, + unused_id NUMBER(7), + + CONSTRAINT pk_x_test_case_64_69 PRIMARY KEY(ID), + CONSTRAINT fk_x_test_case_64_69a FOREIGN KEY(UNUSED_ID) REFERENCES X_UNUSED(ID), + CONSTRAINT fk_x_test_case_64_69b FOREIGN KEY(UNUSED_ID) REFERENCES X_UNUSED(ID) +) +/ + +CREATE TABLE x_test_case_71 ( + id NUMBER(7) NOT NULL, + test_case_64_69_id NUMBER(4), + + CONSTRAINT pk_x_test_case_71 PRIMARY KEY(ID), + CONSTRAINT fk_x_test_case_71 FOREIGN KEY(TEST_CASE_64_69_ID) REFERENCES X_TEST_CASE_64_69(ID) +) +/ + +CREATE TABLE x_test_case_85 ( + id NUMBER(7) NOT NULL, + x_unused_id NUMBER(7), + x_unused_name VARCHAR2(10), + + CONSTRAINT pk_x_test_case_85 PRIMARY KEY(ID), + CONSTRAINT fk_x_test_case_85 FOREIGN KEY(x_unused_id, x_unused_name) REFERENCES X_UNUSED(id, name) +) +/ + + +CREATE OR REPLACE VIEW v_library (author, title) AS +SELECT a.first_name || ' ' || a.last_name, b.title +FROM t_author a JOIN t_book b ON b.author_id = a.id +/ + +CREATE VIEW v_author AS +SELECT * FROM t_author +/ + +CREATE VIEW v_book AS +SELECT * FROM t_book +/ + +CREATE FORCE VIEW v_incomplete AS +SELECT * FROM t_book +WHERE id = undefined +/ + +CREATE OR REPLACE PROCEDURE p_unused (in1 VARCHAR2, out1 OUT NUMBER, out2 IN OUT NUMBER) +IS +BEGIN + NULL; +END p_unused; +/ + +CREATE OR REPLACE PROCEDURE p_enhance_address1 (address IN u_address_type, no OUT VARCHAR2) +IS +BEGIN + no := address.street.no; +END p_enhance_address1; +/ + +CREATE OR REPLACE PROCEDURE p_enhance_address2 (address OUT u_address_type) +IS +BEGIN + SELECT address + INTO address + FROM t_author + WHERE first_name = 'George'; +END p_enhance_address2; +/ + +CREATE OR REPLACE PROCEDURE p_enhance_address3 (address IN OUT u_address_type) +IS +BEGIN + address.street := u_street_type('Zwinglistrasse', '17', u_number_array(2)); +END p_enhance_address3; +/ + +CREATE OR REPLACE PROCEDURE p_create_author_by_name (first_name VARCHAR2, last_name VARCHAR2) +IS +BEGIN + INSERT INTO T_AUTHOR (ID, FIRST_NAME, LAST_NAME) + VALUES ((SELECT MAX(ID)+1 FROM T_AUTHOR), first_name, last_name); +END p_create_author_by_name; +/ + +CREATE OR REPLACE PROCEDURE p_create_author +IS +BEGIN + {jdbc.Schema}.p_create_author_by_name('William', 'Shakespeare'); +END p_create_author; +/ + +CREATE OR REPLACE PROCEDURE p_arrays1 (in_array u_number_array, out_array OUT u_number_array) +IS +BEGIN + out_array := in_array; +END p_arrays1; +/ + +CREATE OR REPLACE PROCEDURE p_arrays2 (in_array u_number_long_array, out_array OUT u_number_long_array) +IS +BEGIN + out_array := in_array; +END p_arrays2; +/ + +CREATE OR REPLACE PROCEDURE p_arrays3 (in_array u_string_array, out_array OUT u_string_array) +IS +BEGIN + out_array := in_array; +END p_arrays3; +/ + +CREATE OR REPLACE PROCEDURE p_arrays4 (in_array u_book_array, out_array OUT u_book_array) +IS +BEGIN + out_array := in_array; +END p_arrays4; +/ + +CREATE OR REPLACE PROCEDURE p_tables1 (in_table u_number_table, out_table OUT u_number_table) +IS +BEGIN + out_table := in_table; +END p_tables1; +/ + +CREATE OR REPLACE PROCEDURE p_tables2 (in_table u_number_long_table, out_table OUT u_number_long_table) +IS +BEGIN + out_table := in_table; +END p_tables2; +/ + +CREATE OR REPLACE PROCEDURE p_tables3 (in_table u_string_table, out_table OUT u_string_table) +IS +BEGIN + out_table := in_table; +END p_tables3; +/ + +CREATE OR REPLACE PROCEDURE p_tables4 (in_table u_book_table, out_table OUT u_book_table) +IS +BEGIN + out_table := in_table; +END p_tables4; +/ + + +CREATE OR REPLACE PROCEDURE p_default ( + p_in_number IN number := 0, + p_out_number OUT number, + p_in_varchar IN varchar2 := '0', + p_out_varchar OUT varchar2, + p_in_date IN date := date '1981-07-10', + p_out_date OUT date +) +IS +BEGIN + p_out_number := p_in_number; + p_out_varchar := p_in_varchar; + p_out_date := p_in_date; +END p_default; +/ + +CREATE OR REPLACE PROCEDURE p_many_parameters ( + f000 number, f001 number, f002 number, f003 number, f004 number, + f005 number, f006 number, f007 number, f008 number, f009 number, + f010 number, f011 number, f012 number, f013 number, f014 number, + f015 number, f016 number, f017 number, f018 number, f019 number, + f020 number, f021 number, f022 number, f023 number, f024 number, + f025 number, f026 number, f027 number, f028 number, f029 number, + f030 number, f031 number, f032 number, f033 number, f034 number, + f035 number, f036 number, f037 number, f038 number, f039 number, + f040 number, f041 number, f042 number, f043 number, f044 number, + f045 number, f046 number, f047 number, f048 number, f049 number, + f050 number, f051 number, f052 number, f053 number, f054 number, + f055 number, f056 number, f057 number, f058 number, f059 number, + f060 number, f061 number, f062 number, f063 number, f064 number, + f065 number, f066 number, f067 number, f068 number, f069 number, + f070 number, f071 number, f072 number, f073 number, f074 number, + f075 number, f076 number, f077 number, f078 number, f079 number, + f080 number, f081 number, f082 number, f083 number, f084 number, + f085 number, f086 number, f087 number, f088 number, f089 number, + f090 number, f091 number, f092 number, f093 number, f094 number, + f095 number, f096 number, f097 number, f098 number, f099 number, + + f100 number, f101 number, f102 number, f103 number, f104 number, + f105 number, f106 number, f107 number, f108 number, f109 number, + f110 number, f111 number, f112 number, f113 number, f114 number, + f115 number, f116 number, f117 number, f118 number, f119 number, + f120 number, f121 number, f122 number, f123 number, f124 number, + f125 number, f126 number, f127 number, f128 number, f129 number, + f130 number, f131 number, f132 number, f133 number, f134 number, + f135 number, f136 number, f137 number, f138 number, f139 number, + f140 number, f141 number, f142 number, f143 number, f144 number, + f145 number, f146 number, f147 number, f148 number, f149 number, + f150 number, f151 number, f152 number, f153 number, f154 number, + f155 number, f156 number, f157 number, f158 number, f159 number, + f160 number, f161 number, f162 number, f163 number, f164 number, + f165 number, f166 number, f167 number, f168 number, f169 number, + f170 number, f171 number, f172 number, f173 number, f174 number, + f175 number, f176 number, f177 number, f178 number, f179 number, + f180 number, f181 number, f182 number, f183 number, f184 number, + f185 number, f186 number, f187 number, f188 number, f189 number, + f190 number, f191 number, f192 number, f193 number, f194 number, + f195 number, f196 number, f197 number, f198 number, f199 number, + + f200 number, f201 number, f202 number, f203 number, f204 number, + f205 number, f206 number, f207 number, f208 number, f209 number, + f210 number, f211 number, f212 number, f213 number, f214 number, + f215 number, f216 number, f217 number, f218 number, f219 number, + f220 number, f221 number, f222 number, f223 number, f224 number, + f225 number, f226 number, f227 number, f228 number, f229 number, + f230 number, f231 number, f232 number, f233 number, f234 number, + f235 number, f236 number, f237 number, f238 number, f239 number, + f240 number, f241 number, f242 number, f243 number, f244 number, + f245 number, f246 number, f247 number, f248 number, f249 number, + f250 number, f251 number, f252 number, f253 number, f254 number, + f255 number, f256 number, f257 number, f258 number, f259 number, + f260 number, f261 number, f262 number, f263 number, f264 number, + f265 number, f266 number, f267 number, f268 number, f269 number, + f270 number, f271 number, f272 number, f273 number, f274 number, + f275 number, f276 number, f277 number, f278 number, f279 number, + f280 number, f281 number, f282 number, f283 number, f284 number, + f285 number, f286 number, f287 number, f288 number, f289 number, + f290 number, f291 number, f292 number, f293 number, f294 number, + f295 number, f296 number, f297 number, f298 number, f299 number, + + f300 number, f301 number, f302 number, f303 number, f304 number, + f305 number, f306 number, f307 number, f308 number, f309 number, + f310 number, f311 number, f312 number, f313 number, f314 number, + f315 number, f316 number, f317 number, f318 number, f319 number, + f320 number, f321 number, f322 number, f323 number, f324 number, + f325 number, f326 number, f327 number, f328 number, f329 number, + f330 number, f331 number, f332 number, f333 number, f334 number, + f335 number, f336 number, f337 number, f338 number, f339 number, + f340 number, f341 number, f342 number, f343 number, f344 number, + f345 number, f346 number, f347 number, f348 number, f349 number, + f350 number, f351 number, f352 number, f353 number, f354 number, + f355 number, f356 number, f357 number, f358 number, f359 number, + f360 number, f361 number, f362 number, f363 number, f364 number, + f365 number, f366 number, f367 number, f368 number, f369 number, + f370 number, f371 number, f372 number, f373 number, f374 number, + f375 number, f376 number, f377 number, f378 number, f379 number, + f380 number, f381 number, f382 number, f383 number, f384 number, + f385 number, f386 number, f387 number, f388 number, f389 number, + f390 number, f391 number, f392 number, f393 number, f394 number, + f395 number, f396 number, f397 number, f398 number, f399 number +) +IS +BEGIN + NULL; +END p_many_parameters; +/ + +CREATE OR REPLACE FUNCTION f_many_parameters ( + f000 number, f001 number, f002 number, f003 number, f004 number, + f005 number, f006 number, f007 number, f008 number, f009 number, + f010 number, f011 number, f012 number, f013 number, f014 number, + f015 number, f016 number, f017 number, f018 number, f019 number, + f020 number, f021 number, f022 number, f023 number, f024 number, + f025 number, f026 number, f027 number, f028 number, f029 number, + f030 number, f031 number, f032 number, f033 number, f034 number, + f035 number, f036 number, f037 number, f038 number, f039 number, + f040 number, f041 number, f042 number, f043 number, f044 number, + f045 number, f046 number, f047 number, f048 number, f049 number, + f050 number, f051 number, f052 number, f053 number, f054 number, + f055 number, f056 number, f057 number, f058 number, f059 number, + f060 number, f061 number, f062 number, f063 number, f064 number, + f065 number, f066 number, f067 number, f068 number, f069 number, + f070 number, f071 number, f072 number, f073 number, f074 number, + f075 number, f076 number, f077 number, f078 number, f079 number, + f080 number, f081 number, f082 number, f083 number, f084 number, + f085 number, f086 number, f087 number, f088 number, f089 number, + f090 number, f091 number, f092 number, f093 number, f094 number, + f095 number, f096 number, f097 number, f098 number, f099 number, + + f100 number, f101 number, f102 number, f103 number, f104 number, + f105 number, f106 number, f107 number, f108 number, f109 number, + f110 number, f111 number, f112 number, f113 number, f114 number, + f115 number, f116 number, f117 number, f118 number, f119 number, + f120 number, f121 number, f122 number, f123 number, f124 number, + f125 number, f126 number, f127 number, f128 number, f129 number, + f130 number, f131 number, f132 number, f133 number, f134 number, + f135 number, f136 number, f137 number, f138 number, f139 number, + f140 number, f141 number, f142 number, f143 number, f144 number, + f145 number, f146 number, f147 number, f148 number, f149 number, + f150 number, f151 number, f152 number, f153 number, f154 number, + f155 number, f156 number, f157 number, f158 number, f159 number, + f160 number, f161 number, f162 number, f163 number, f164 number, + f165 number, f166 number, f167 number, f168 number, f169 number, + f170 number, f171 number, f172 number, f173 number, f174 number, + f175 number, f176 number, f177 number, f178 number, f179 number, + f180 number, f181 number, f182 number, f183 number, f184 number, + f185 number, f186 number, f187 number, f188 number, f189 number, + f190 number, f191 number, f192 number, f193 number, f194 number, + f195 number, f196 number, f197 number, f198 number, f199 number, + + f200 number, f201 number, f202 number, f203 number, f204 number, + f205 number, f206 number, f207 number, f208 number, f209 number, + f210 number, f211 number, f212 number, f213 number, f214 number, + f215 number, f216 number, f217 number, f218 number, f219 number, + f220 number, f221 number, f222 number, f223 number, f224 number, + f225 number, f226 number, f227 number, f228 number, f229 number, + f230 number, f231 number, f232 number, f233 number, f234 number, + f235 number, f236 number, f237 number, f238 number, f239 number, + f240 number, f241 number, f242 number, f243 number, f244 number, + f245 number, f246 number, f247 number, f248 number, f249 number, + f250 number, f251 number, f252 number, f253 number, f254 number, + f255 number, f256 number, f257 number, f258 number, f259 number, + f260 number, f261 number, f262 number, f263 number, f264 number, + f265 number, f266 number, f267 number, f268 number, f269 number, + f270 number, f271 number, f272 number, f273 number, f274 number, + f275 number, f276 number, f277 number, f278 number, f279 number, + f280 number, f281 number, f282 number, f283 number, f284 number, + f285 number, f286 number, f287 number, f288 number, f289 number, + f290 number, f291 number, f292 number, f293 number, f294 number, + f295 number, f296 number, f297 number, f298 number, f299 number, + + f300 number, f301 number, f302 number, f303 number, f304 number, + f305 number, f306 number, f307 number, f308 number, f309 number, + f310 number, f311 number, f312 number, f313 number, f314 number, + f315 number, f316 number, f317 number, f318 number, f319 number, + f320 number, f321 number, f322 number, f323 number, f324 number, + f325 number, f326 number, f327 number, f328 number, f329 number, + f330 number, f331 number, f332 number, f333 number, f334 number, + f335 number, f336 number, f337 number, f338 number, f339 number, + f340 number, f341 number, f342 number, f343 number, f344 number, + f345 number, f346 number, f347 number, f348 number, f349 number, + f350 number, f351 number, f352 number, f353 number, f354 number, + f355 number, f356 number, f357 number, f358 number, f359 number, + f360 number, f361 number, f362 number, f363 number, f364 number, + f365 number, f366 number, f367 number, f368 number, f369 number, + f370 number, f371 number, f372 number, f373 number, f374 number, + f375 number, f376 number, f377 number, f378 number, f379 number, + f380 number, f381 number, f382 number, f383 number, f384 number, + f385 number, f386 number, f387 number, f388 number, f389 number, + f390 number, f391 number, f392 number, f393 number, f394 number, + f395 number, f396 number, f397 number, f398 number, f399 number +) +RETURN number +IS +BEGIN + return NULL; +END f_many_parameters; +/ + +CREATE OR REPLACE FUNCTION f_pipelined_array1 +RETURN u_number_array +PIPELINED +AS +BEGIN + FOR i in 1 .. 10 LOOP + PIPE ROW(i); + END LOOP; + RETURN; +END f_pipelined_array1; +/ + +CREATE OR REPLACE FUNCTION f_pipelined_table1 +RETURN u_number_table +PIPELINED +AS +BEGIN + FOR i in 1 .. 10 LOOP + PIPE ROW(i); + END LOOP; + RETURN; +END f_pipelined_table1; +/ + +CREATE OR REPLACE FUNCTION f_pipelined_array4 +RETURN u_book_array +PIPELINED +AS + title VARCHAR2(100); +BEGIN + FOR i in 1 .. 4 LOOP + SELECT b.title + INTO title + FROM t_book b + WHERE b.id = i; + + PIPE ROW(u_book_type(i, title)); + END LOOP; + RETURN; +END f_pipelined_array4; +/ + +CREATE OR REPLACE FUNCTION f_pipelined_table4 +RETURN u_book_table +PIPELINED +AS + title VARCHAR2(100); +BEGIN + FOR i in 1 .. 4 LOOP + SELECT b.title + INTO title + FROM t_book b + WHERE b.id = i; + + PIPE ROW(u_book_type(i, title)); + END LOOP; + RETURN; +END f_pipelined_table4; +/ + +CREATE OR REPLACE FUNCTION f_arrays1 (in_array u_number_array) +RETURN u_number_array +IS +BEGIN + return in_array; +END f_arrays1; +/ + +CREATE OR REPLACE FUNCTION f_arrays2 (in_array u_number_long_array) +RETURN u_number_long_array +IS +BEGIN + return in_array; +END f_arrays2; +/ + +CREATE OR REPLACE FUNCTION f_arrays3 (in_array u_string_array) +RETURN u_string_array +IS +BEGIN + return in_array; +END f_arrays3; +/ + +CREATE OR REPLACE FUNCTION f_arrays4 (in_array u_book_array) +RETURN u_book_array +IS +BEGIN + return in_array; +END f_arrays4; +/ + +CREATE OR REPLACE FUNCTION f_tables1 (in_table u_number_table) +RETURN u_number_table +IS +BEGIN + return in_table; +END f_tables1; +/ + +CREATE OR REPLACE FUNCTION f_tables2 (in_table u_number_long_table) +RETURN u_number_long_table +IS +BEGIN + return in_table; +END f_tables2; +/ + +CREATE OR REPLACE FUNCTION f_tables3 (in_table u_string_table) +RETURN u_string_table +IS +BEGIN + return in_table; +END f_tables3; +/ + +CREATE OR REPLACE FUNCTION f_tables4 (in_table u_book_table) +RETURN u_book_table +IS +BEGIN + return in_table; +END f_tables4; +/ + +CREATE OR REPLACE PROCEDURE p_author_exists (author_name VARCHAR2, result OUT NUMBER) +IS + v_result NUMBER(1); +BEGIN + SELECT CASE WHEN COUNT(*) > 0 THEN 1 ELSE 0 END + INTO v_result + FROM t_author + WHERE first_name LIKE author_name + OR last_name LIKE author_name; + + result := v_result; +END p_author_exists; +/ + +CREATE OR REPLACE PROCEDURE p391 ( + i1 NUMBER, io1 IN OUT NUMBER, o1 OUT NUMBER, + o2 OUT NUMBER, io2 IN OUT NUMBER, i2 NUMBER) IS +BEGIN + o1 := io1; + io1 := i1; + + o2 := io2; + io2 := i2; +END p391; +/ + +CREATE OR REPLACE PACKAGE library_types AS + TYPE t_cursor_type IS REF CURSOR; + TYPE t_author_type IS TABLE OF t_author%rowtype; +END library_types; +/ + +CREATE OR REPLACE PACKAGE library_767_package_test AS + FUNCTION library_767_package_test RETURN NUMBER; +END library_767_package_test; +/ + +CREATE TYPE u_address_table AS TABLE OF u_address_type +/ + +CREATE OR REPLACE PROCEDURE p_get_two_cursors ( + books OUT library_types.t_cursor_type, + authors OUT library_types.t_cursor_type) +IS +BEGIN + OPEN books FOR SELECT * FROM t_book ORDER BY id ASC; + OPEN authors FOR SELECT * FROM t_author ORDER BY id ASC; +END p_get_two_cursors; +/ + +CREATE OR REPLACE PROCEDURE p_get_one_cursor ( + total OUT NUMBER, + books OUT library_types.t_cursor_type, + book_ids IN u_number_array) +IS +BEGIN + OPEN books FOR SELECT * FROM t_book WHERE id IN (SELECT * FROM TABLE(book_ids)) ORDER BY id ASC; + SELECT count(*) INTO total FROM t_book WHERE id IN (SELECT * FROM TABLE(book_ids)); +END p_get_one_cursor; +/ + +CREATE OR REPLACE FUNCTION f_get_one_cursor ( + book_ids IN u_number_array) +RETURN library_types.t_cursor_type +IS + books library_types.t_cursor_type; +BEGIN + IF (book_ids IS NULL) THEN + OPEN books FOR SELECT * FROM t_book WHERE 1 = 0; + ELSE + OPEN books FOR SELECT * FROM t_book WHERE id IN (SELECT * FROM TABLE(book_ids)) ORDER BY id ASC; + END IF; + + RETURN books; +END f_get_one_cursor; +/ + +CREATE OR REPLACE FUNCTION f691cursor_out +RETURN library_types.t_cursor_type +IS + books library_types.t_cursor_type; +BEGIN + OPEN books FOR SELECT * FROM t_book; + RETURN books; +END f691cursor_out; +/ + +CREATE OR REPLACE FUNCTION f691cursor_in (c IN library_types.t_cursor_type) +RETURN NUMBER +IS + book t_book%rowtype; + result number := 0; +BEGIN + LOOP + FETCH c INTO book; + EXIT WHEN c%notfound; + + result := result + 1; + END LOOP; + + CLOSE c; + + RETURN result; +END f691cursor_in; +/ + +CREATE OR REPLACE FUNCTION f_author_exists (author_name VARCHAR2) +RETURN NUMBER +IS + v_result NUMBER(1); +BEGIN + SELECT CASE WHEN COUNT(*) > 0 THEN 1 ELSE 0 END + INTO v_result + FROM t_author + WHERE first_name LIKE author_name + OR last_name LIKE author_name; + + return v_result; +END f_author_exists; +/ + +CREATE OR REPLACE FUNCTION f_one +RETURN NUMBER +IS +BEGIN + RETURN 1; +END f_one; +/ + +CREATE OR REPLACE FUNCTION f_number(n NUMBER) +RETURN NUMBER +IS +BEGIN + RETURN n; +END f_number; +/ + +CREATE OR REPLACE FUNCTION f317 (p1 NUMBER, p2 NUMBER, p3 NUMBER, p4 NUMBER) RETURN NUMBER deterministic IS +BEGIN + return 1000 * p1 + 100 * p2 + p4; +END f317; +/ + +CREATE OR REPLACE FUNCTION f378 (i NUMBER, io IN OUT NUMBER, o OUT NUMBER) RETURN NUMBER IS + r NUMBER; +BEGIN + r := i + io; + o := io; + io := i; + return r; +END f378; +/ + +CREATE OR REPLACE FUNCTION f377 RETURN NUMBER IS +BEGIN + syntax error; +END f377; +/ + +CREATE OR REPLACE PROCEDURE p377 RETURN NUMBER IS +BEGIN + syntax error; +END p377; +/ + +CREATE OR REPLACE PACKAGE library AS + PROCEDURE pkg_p_author_exists (author_name VARCHAR2, result OUT NUMBER); + PROCEDURE pkg_p_author_exists (author_name VARCHAR2, result OUT NUMBER, unused IN OUT NUMBER); + FUNCTION pkg_f_author_exists (author_name VARCHAR2) RETURN NUMBER; + FUNCTION pkg_f_author_exists (author_name VARCHAR2, unused NUMBER) RETURN NUMBER; + FUNCTION pkg_f_unused RETURN NUMBER; + FUNCTION pkg_f378 (i NUMBER, io IN OUT NUMBER, o OUT NUMBER) RETURN NUMBER; + + PROCEDURE pkg_p_many_parameters ( + f000 number, f001 number, f002 number, f003 number, f004 number, + f005 number, f006 number, f007 number, f008 number, f009 number, + f010 number, f011 number, f012 number, f013 number, f014 number, + f015 number, f016 number, f017 number, f018 number, f019 number, + f020 number, f021 number, f022 number, f023 number, f024 number, + f025 number, f026 number, f027 number, f028 number, f029 number, + f030 number, f031 number, f032 number, f033 number, f034 number, + f035 number, f036 number, f037 number, f038 number, f039 number, + f040 number, f041 number, f042 number, f043 number, f044 number, + f045 number, f046 number, f047 number, f048 number, f049 number, + f050 number, f051 number, f052 number, f053 number, f054 number, + f055 number, f056 number, f057 number, f058 number, f059 number, + f060 number, f061 number, f062 number, f063 number, f064 number, + f065 number, f066 number, f067 number, f068 number, f069 number, + f070 number, f071 number, f072 number, f073 number, f074 number, + f075 number, f076 number, f077 number, f078 number, f079 number, + f080 number, f081 number, f082 number, f083 number, f084 number, + f085 number, f086 number, f087 number, f088 number, f089 number, + f090 number, f091 number, f092 number, f093 number, f094 number, + f095 number, f096 number, f097 number, f098 number, f099 number, + + f100 number, f101 number, f102 number, f103 number, f104 number, + f105 number, f106 number, f107 number, f108 number, f109 number, + f110 number, f111 number, f112 number, f113 number, f114 number, + f115 number, f116 number, f117 number, f118 number, f119 number, + f120 number, f121 number, f122 number, f123 number, f124 number, + f125 number, f126 number, f127 number, f128 number, f129 number, + f130 number, f131 number, f132 number, f133 number, f134 number, + f135 number, f136 number, f137 number, f138 number, f139 number, + f140 number, f141 number, f142 number, f143 number, f144 number, + f145 number, f146 number, f147 number, f148 number, f149 number, + f150 number, f151 number, f152 number, f153 number, f154 number, + f155 number, f156 number, f157 number, f158 number, f159 number, + f160 number, f161 number, f162 number, f163 number, f164 number, + f165 number, f166 number, f167 number, f168 number, f169 number, + f170 number, f171 number, f172 number, f173 number, f174 number, + f175 number, f176 number, f177 number, f178 number, f179 number, + f180 number, f181 number, f182 number, f183 number, f184 number, + f185 number, f186 number, f187 number, f188 number, f189 number, + f190 number, f191 number, f192 number, f193 number, f194 number, + f195 number, f196 number, f197 number, f198 number, f199 number, + + f200 number, f201 number, f202 number, f203 number, f204 number, + f205 number, f206 number, f207 number, f208 number, f209 number, + f210 number, f211 number, f212 number, f213 number, f214 number, + f215 number, f216 number, f217 number, f218 number, f219 number, + f220 number, f221 number, f222 number, f223 number, f224 number, + f225 number, f226 number, f227 number, f228 number, f229 number, + f230 number, f231 number, f232 number, f233 number, f234 number, + f235 number, f236 number, f237 number, f238 number, f239 number, + f240 number, f241 number, f242 number, f243 number, f244 number, + f245 number, f246 number, f247 number, f248 number, f249 number, + f250 number, f251 number, f252 number, f253 number, f254 number, + f255 number, f256 number, f257 number, f258 number, f259 number, + f260 number, f261 number, f262 number, f263 number, f264 number, + f265 number, f266 number, f267 number, f268 number, f269 number, + f270 number, f271 number, f272 number, f273 number, f274 number, + f275 number, f276 number, f277 number, f278 number, f279 number, + f280 number, f281 number, f282 number, f283 number, f284 number, + f285 number, f286 number, f287 number, f288 number, f289 number, + f290 number, f291 number, f292 number, f293 number, f294 number, + f295 number, f296 number, f297 number, f298 number, f299 number, + + f300 number, f301 number, f302 number, f303 number, f304 number, + f305 number, f306 number, f307 number, f308 number, f309 number, + f310 number, f311 number, f312 number, f313 number, f314 number, + f315 number, f316 number, f317 number, f318 number, f319 number, + f320 number, f321 number, f322 number, f323 number, f324 number, + f325 number, f326 number, f327 number, f328 number, f329 number, + f330 number, f331 number, f332 number, f333 number, f334 number, + f335 number, f336 number, f337 number, f338 number, f339 number, + f340 number, f341 number, f342 number, f343 number, f344 number, + f345 number, f346 number, f347 number, f348 number, f349 number, + f350 number, f351 number, f352 number, f353 number, f354 number, + f355 number, f356 number, f357 number, f358 number, f359 number, + f360 number, f361 number, f362 number, f363 number, f364 number, + f365 number, f366 number, f367 number, f368 number, f369 number, + f370 number, f371 number, f372 number, f373 number, f374 number, + f375 number, f376 number, f377 number, f378 number, f379 number, + f380 number, f381 number, f382 number, f383 number, f384 number, + f385 number, f386 number, f387 number, f388 number, f389 number, + f390 number, f391 number, f392 number, f393 number, f394 number, + f395 number, f396 number, f397 number, f398 number, f399 number + ); + + FUNCTION pkg_f_many_parameters ( + f000 number, f001 number, f002 number, f003 number, f004 number, + f005 number, f006 number, f007 number, f008 number, f009 number, + f010 number, f011 number, f012 number, f013 number, f014 number, + f015 number, f016 number, f017 number, f018 number, f019 number, + f020 number, f021 number, f022 number, f023 number, f024 number, + f025 number, f026 number, f027 number, f028 number, f029 number, + f030 number, f031 number, f032 number, f033 number, f034 number, + f035 number, f036 number, f037 number, f038 number, f039 number, + f040 number, f041 number, f042 number, f043 number, f044 number, + f045 number, f046 number, f047 number, f048 number, f049 number, + f050 number, f051 number, f052 number, f053 number, f054 number, + f055 number, f056 number, f057 number, f058 number, f059 number, + f060 number, f061 number, f062 number, f063 number, f064 number, + f065 number, f066 number, f067 number, f068 number, f069 number, + f070 number, f071 number, f072 number, f073 number, f074 number, + f075 number, f076 number, f077 number, f078 number, f079 number, + f080 number, f081 number, f082 number, f083 number, f084 number, + f085 number, f086 number, f087 number, f088 number, f089 number, + f090 number, f091 number, f092 number, f093 number, f094 number, + f095 number, f096 number, f097 number, f098 number, f099 number, + + f100 number, f101 number, f102 number, f103 number, f104 number, + f105 number, f106 number, f107 number, f108 number, f109 number, + f110 number, f111 number, f112 number, f113 number, f114 number, + f115 number, f116 number, f117 number, f118 number, f119 number, + f120 number, f121 number, f122 number, f123 number, f124 number, + f125 number, f126 number, f127 number, f128 number, f129 number, + f130 number, f131 number, f132 number, f133 number, f134 number, + f135 number, f136 number, f137 number, f138 number, f139 number, + f140 number, f141 number, f142 number, f143 number, f144 number, + f145 number, f146 number, f147 number, f148 number, f149 number, + f150 number, f151 number, f152 number, f153 number, f154 number, + f155 number, f156 number, f157 number, f158 number, f159 number, + f160 number, f161 number, f162 number, f163 number, f164 number, + f165 number, f166 number, f167 number, f168 number, f169 number, + f170 number, f171 number, f172 number, f173 number, f174 number, + f175 number, f176 number, f177 number, f178 number, f179 number, + f180 number, f181 number, f182 number, f183 number, f184 number, + f185 number, f186 number, f187 number, f188 number, f189 number, + f190 number, f191 number, f192 number, f193 number, f194 number, + f195 number, f196 number, f197 number, f198 number, f199 number, + + f200 number, f201 number, f202 number, f203 number, f204 number, + f205 number, f206 number, f207 number, f208 number, f209 number, + f210 number, f211 number, f212 number, f213 number, f214 number, + f215 number, f216 number, f217 number, f218 number, f219 number, + f220 number, f221 number, f222 number, f223 number, f224 number, + f225 number, f226 number, f227 number, f228 number, f229 number, + f230 number, f231 number, f232 number, f233 number, f234 number, + f235 number, f236 number, f237 number, f238 number, f239 number, + f240 number, f241 number, f242 number, f243 number, f244 number, + f245 number, f246 number, f247 number, f248 number, f249 number, + f250 number, f251 number, f252 number, f253 number, f254 number, + f255 number, f256 number, f257 number, f258 number, f259 number, + f260 number, f261 number, f262 number, f263 number, f264 number, + f265 number, f266 number, f267 number, f268 number, f269 number, + f270 number, f271 number, f272 number, f273 number, f274 number, + f275 number, f276 number, f277 number, f278 number, f279 number, + f280 number, f281 number, f282 number, f283 number, f284 number, + f285 number, f286 number, f287 number, f288 number, f289 number, + f290 number, f291 number, f292 number, f293 number, f294 number, + f295 number, f296 number, f297 number, f298 number, f299 number, + + f300 number, f301 number, f302 number, f303 number, f304 number, + f305 number, f306 number, f307 number, f308 number, f309 number, + f310 number, f311 number, f312 number, f313 number, f314 number, + f315 number, f316 number, f317 number, f318 number, f319 number, + f320 number, f321 number, f322 number, f323 number, f324 number, + f325 number, f326 number, f327 number, f328 number, f329 number, + f330 number, f331 number, f332 number, f333 number, f334 number, + f335 number, f336 number, f337 number, f338 number, f339 number, + f340 number, f341 number, f342 number, f343 number, f344 number, + f345 number, f346 number, f347 number, f348 number, f349 number, + f350 number, f351 number, f352 number, f353 number, f354 number, + f355 number, f356 number, f357 number, f358 number, f359 number, + f360 number, f361 number, f362 number, f363 number, f364 number, + f365 number, f366 number, f367 number, f368 number, f369 number, + f370 number, f371 number, f372 number, f373 number, f374 number, + f375 number, f376 number, f377 number, f378 number, f379 number, + f380 number, f381 number, f382 number, f383 number, f384 number, + f385 number, f386 number, f387 number, f388 number, f389 number, + f390 number, f391 number, f392 number, f393 number, f394 number, + f395 number, f396 number, f397 number, f398 number, f399 number + ) return number; + +END library; +/ + +CREATE OR REPLACE PACKAGE BODY library AS + PROCEDURE pkg_p_author_exists (author_name VARCHAR2, result OUT NUMBER) IS + BEGIN + test.p_author_exists(author_name, result); + END pkg_p_author_exists; + + PROCEDURE pkg_p_author_exists (author_name VARCHAR2, result OUT NUMBER, unused IN OUT NUMBER) IS + BEGIN + test.p_author_exists(author_name, result); + END pkg_p_author_exists; + + FUNCTION pkg_f_author_exists (author_name VARCHAR2) RETURN NUMBER IS + BEGIN + return test.f_author_exists(author_name); + END pkg_f_author_exists; + + FUNCTION pkg_f_author_exists (author_name VARCHAR2, unused NUMBER) RETURN NUMBER IS + BEGIN + return test.f_author_exists(author_name); + END pkg_f_author_exists; + + FUNCTION pkg_f_unused RETURN NUMBER IS + BEGIN + return 0; + END pkg_f_unused; + + FUNCTION pkg_f378 (i NUMBER, io IN OUT NUMBER, o OUT NUMBER) RETURN NUMBER IS + BEGIN + return test.f378 (i, io, o); + END pkg_f378; + + PROCEDURE pkg_p_many_parameters ( + f000 number, f001 number, f002 number, f003 number, f004 number, + f005 number, f006 number, f007 number, f008 number, f009 number, + f010 number, f011 number, f012 number, f013 number, f014 number, + f015 number, f016 number, f017 number, f018 number, f019 number, + f020 number, f021 number, f022 number, f023 number, f024 number, + f025 number, f026 number, f027 number, f028 number, f029 number, + f030 number, f031 number, f032 number, f033 number, f034 number, + f035 number, f036 number, f037 number, f038 number, f039 number, + f040 number, f041 number, f042 number, f043 number, f044 number, + f045 number, f046 number, f047 number, f048 number, f049 number, + f050 number, f051 number, f052 number, f053 number, f054 number, + f055 number, f056 number, f057 number, f058 number, f059 number, + f060 number, f061 number, f062 number, f063 number, f064 number, + f065 number, f066 number, f067 number, f068 number, f069 number, + f070 number, f071 number, f072 number, f073 number, f074 number, + f075 number, f076 number, f077 number, f078 number, f079 number, + f080 number, f081 number, f082 number, f083 number, f084 number, + f085 number, f086 number, f087 number, f088 number, f089 number, + f090 number, f091 number, f092 number, f093 number, f094 number, + f095 number, f096 number, f097 number, f098 number, f099 number, + + f100 number, f101 number, f102 number, f103 number, f104 number, + f105 number, f106 number, f107 number, f108 number, f109 number, + f110 number, f111 number, f112 number, f113 number, f114 number, + f115 number, f116 number, f117 number, f118 number, f119 number, + f120 number, f121 number, f122 number, f123 number, f124 number, + f125 number, f126 number, f127 number, f128 number, f129 number, + f130 number, f131 number, f132 number, f133 number, f134 number, + f135 number, f136 number, f137 number, f138 number, f139 number, + f140 number, f141 number, f142 number, f143 number, f144 number, + f145 number, f146 number, f147 number, f148 number, f149 number, + f150 number, f151 number, f152 number, f153 number, f154 number, + f155 number, f156 number, f157 number, f158 number, f159 number, + f160 number, f161 number, f162 number, f163 number, f164 number, + f165 number, f166 number, f167 number, f168 number, f169 number, + f170 number, f171 number, f172 number, f173 number, f174 number, + f175 number, f176 number, f177 number, f178 number, f179 number, + f180 number, f181 number, f182 number, f183 number, f184 number, + f185 number, f186 number, f187 number, f188 number, f189 number, + f190 number, f191 number, f192 number, f193 number, f194 number, + f195 number, f196 number, f197 number, f198 number, f199 number, + + f200 number, f201 number, f202 number, f203 number, f204 number, + f205 number, f206 number, f207 number, f208 number, f209 number, + f210 number, f211 number, f212 number, f213 number, f214 number, + f215 number, f216 number, f217 number, f218 number, f219 number, + f220 number, f221 number, f222 number, f223 number, f224 number, + f225 number, f226 number, f227 number, f228 number, f229 number, + f230 number, f231 number, f232 number, f233 number, f234 number, + f235 number, f236 number, f237 number, f238 number, f239 number, + f240 number, f241 number, f242 number, f243 number, f244 number, + f245 number, f246 number, f247 number, f248 number, f249 number, + f250 number, f251 number, f252 number, f253 number, f254 number, + f255 number, f256 number, f257 number, f258 number, f259 number, + f260 number, f261 number, f262 number, f263 number, f264 number, + f265 number, f266 number, f267 number, f268 number, f269 number, + f270 number, f271 number, f272 number, f273 number, f274 number, + f275 number, f276 number, f277 number, f278 number, f279 number, + f280 number, f281 number, f282 number, f283 number, f284 number, + f285 number, f286 number, f287 number, f288 number, f289 number, + f290 number, f291 number, f292 number, f293 number, f294 number, + f295 number, f296 number, f297 number, f298 number, f299 number, + + f300 number, f301 number, f302 number, f303 number, f304 number, + f305 number, f306 number, f307 number, f308 number, f309 number, + f310 number, f311 number, f312 number, f313 number, f314 number, + f315 number, f316 number, f317 number, f318 number, f319 number, + f320 number, f321 number, f322 number, f323 number, f324 number, + f325 number, f326 number, f327 number, f328 number, f329 number, + f330 number, f331 number, f332 number, f333 number, f334 number, + f335 number, f336 number, f337 number, f338 number, f339 number, + f340 number, f341 number, f342 number, f343 number, f344 number, + f345 number, f346 number, f347 number, f348 number, f349 number, + f350 number, f351 number, f352 number, f353 number, f354 number, + f355 number, f356 number, f357 number, f358 number, f359 number, + f360 number, f361 number, f362 number, f363 number, f364 number, + f365 number, f366 number, f367 number, f368 number, f369 number, + f370 number, f371 number, f372 number, f373 number, f374 number, + f375 number, f376 number, f377 number, f378 number, f379 number, + f380 number, f381 number, f382 number, f383 number, f384 number, + f385 number, f386 number, f387 number, f388 number, f389 number, + f390 number, f391 number, f392 number, f393 number, f394 number, + f395 number, f396 number, f397 number, f398 number, f399 number + ) + IS + BEGIN + NULL; + END pkg_p_many_parameters; + + FUNCTION pkg_f_many_parameters ( + f000 number, f001 number, f002 number, f003 number, f004 number, + f005 number, f006 number, f007 number, f008 number, f009 number, + f010 number, f011 number, f012 number, f013 number, f014 number, + f015 number, f016 number, f017 number, f018 number, f019 number, + f020 number, f021 number, f022 number, f023 number, f024 number, + f025 number, f026 number, f027 number, f028 number, f029 number, + f030 number, f031 number, f032 number, f033 number, f034 number, + f035 number, f036 number, f037 number, f038 number, f039 number, + f040 number, f041 number, f042 number, f043 number, f044 number, + f045 number, f046 number, f047 number, f048 number, f049 number, + f050 number, f051 number, f052 number, f053 number, f054 number, + f055 number, f056 number, f057 number, f058 number, f059 number, + f060 number, f061 number, f062 number, f063 number, f064 number, + f065 number, f066 number, f067 number, f068 number, f069 number, + f070 number, f071 number, f072 number, f073 number, f074 number, + f075 number, f076 number, f077 number, f078 number, f079 number, + f080 number, f081 number, f082 number, f083 number, f084 number, + f085 number, f086 number, f087 number, f088 number, f089 number, + f090 number, f091 number, f092 number, f093 number, f094 number, + f095 number, f096 number, f097 number, f098 number, f099 number, + + f100 number, f101 number, f102 number, f103 number, f104 number, + f105 number, f106 number, f107 number, f108 number, f109 number, + f110 number, f111 number, f112 number, f113 number, f114 number, + f115 number, f116 number, f117 number, f118 number, f119 number, + f120 number, f121 number, f122 number, f123 number, f124 number, + f125 number, f126 number, f127 number, f128 number, f129 number, + f130 number, f131 number, f132 number, f133 number, f134 number, + f135 number, f136 number, f137 number, f138 number, f139 number, + f140 number, f141 number, f142 number, f143 number, f144 number, + f145 number, f146 number, f147 number, f148 number, f149 number, + f150 number, f151 number, f152 number, f153 number, f154 number, + f155 number, f156 number, f157 number, f158 number, f159 number, + f160 number, f161 number, f162 number, f163 number, f164 number, + f165 number, f166 number, f167 number, f168 number, f169 number, + f170 number, f171 number, f172 number, f173 number, f174 number, + f175 number, f176 number, f177 number, f178 number, f179 number, + f180 number, f181 number, f182 number, f183 number, f184 number, + f185 number, f186 number, f187 number, f188 number, f189 number, + f190 number, f191 number, f192 number, f193 number, f194 number, + f195 number, f196 number, f197 number, f198 number, f199 number, + + f200 number, f201 number, f202 number, f203 number, f204 number, + f205 number, f206 number, f207 number, f208 number, f209 number, + f210 number, f211 number, f212 number, f213 number, f214 number, + f215 number, f216 number, f217 number, f218 number, f219 number, + f220 number, f221 number, f222 number, f223 number, f224 number, + f225 number, f226 number, f227 number, f228 number, f229 number, + f230 number, f231 number, f232 number, f233 number, f234 number, + f235 number, f236 number, f237 number, f238 number, f239 number, + f240 number, f241 number, f242 number, f243 number, f244 number, + f245 number, f246 number, f247 number, f248 number, f249 number, + f250 number, f251 number, f252 number, f253 number, f254 number, + f255 number, f256 number, f257 number, f258 number, f259 number, + f260 number, f261 number, f262 number, f263 number, f264 number, + f265 number, f266 number, f267 number, f268 number, f269 number, + f270 number, f271 number, f272 number, f273 number, f274 number, + f275 number, f276 number, f277 number, f278 number, f279 number, + f280 number, f281 number, f282 number, f283 number, f284 number, + f285 number, f286 number, f287 number, f288 number, f289 number, + f290 number, f291 number, f292 number, f293 number, f294 number, + f295 number, f296 number, f297 number, f298 number, f299 number, + + f300 number, f301 number, f302 number, f303 number, f304 number, + f305 number, f306 number, f307 number, f308 number, f309 number, + f310 number, f311 number, f312 number, f313 number, f314 number, + f315 number, f316 number, f317 number, f318 number, f319 number, + f320 number, f321 number, f322 number, f323 number, f324 number, + f325 number, f326 number, f327 number, f328 number, f329 number, + f330 number, f331 number, f332 number, f333 number, f334 number, + f335 number, f336 number, f337 number, f338 number, f339 number, + f340 number, f341 number, f342 number, f343 number, f344 number, + f345 number, f346 number, f347 number, f348 number, f349 number, + f350 number, f351 number, f352 number, f353 number, f354 number, + f355 number, f356 number, f357 number, f358 number, f359 number, + f360 number, f361 number, f362 number, f363 number, f364 number, + f365 number, f366 number, f367 number, f368 number, f369 number, + f370 number, f371 number, f372 number, f373 number, f374 number, + f375 number, f376 number, f377 number, f378 number, f379 number, + f380 number, f381 number, f382 number, f383 number, f384 number, + f385 number, f386 number, f387 number, f388 number, f389 number, + f390 number, f391 number, f392 number, f393 number, f394 number, + f395 number, f396 number, f397 number, f398 number, f399 number + ) + return number + IS + BEGIN + return null; + END pkg_f_many_parameters; +END library; +/ + + + +DROP TABLE T_976/ +DROP TYPE T_976_OBJECT_TYPE/ +DROP TYPE T_976_VARRAY_TYPE/ +DROP PROCEDURE P_976/ +DROP FUNCTION F_976/ +DROP PACKAGE PKG_976/ + +CREATE PACKAGE PKG_976 AS + PROCEDURE P_976 (I IN DATE, O OUT DATE); + FUNCTION F_976 (I IN DATE) RETURN DATE; +END PKG_976; +/ + +CREATE PACKAGE BODY PKG_976 AS + PROCEDURE P_976 (I IN DATE, O OUT DATE) IS + BEGIN + O := I; + END P_976; + FUNCTION F_976 (I IN DATE) RETURN DATE IS + BEGIN + RETURN I; + END F_976; +END PKG_976; +/ + +CREATE PROCEDURE P_976 (I IN DATE, O OUT DATE) IS +BEGIN + O := I; +END P_976; +/ +CREATE FUNCTION F_976 (I IN DATE) RETURN DATE IS +BEGIN + RETURN I; +END F_976; +/ + +CREATE TYPE T_976_VARRAY_TYPE AS VARRAY(10) OF DATE/ +CREATE TYPE T_976_OBJECT_TYPE AS OBJECT(D DATE)/ +CREATE TABLE T_976 ( + ID NUMBER(7), + D DATE, + T T_976_VARRAY_TYPE, + O T_976_OBJECT_TYPE, + + CONSTRAINT pk_t_976 PRIMARY KEY (ID) +)/ diff --git a/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/multi_schema/Keys.java b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/multi_schema/Keys.java new file mode 100644 index 00000000000..274346e1c16 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/multi_schema/Keys.java @@ -0,0 +1,30 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle.generatedclasses.multi_schema; + +/** + * This class is generated by jOOQ. + * + * A class modelling foreign key relationships between tables of the MULTI_SCHEMA schema + */ +@SuppressWarnings({"unchecked"}) +public class Keys extends org.jooq.impl.AbstractKeys { + + // IDENTITY definitions + + // UNIQUE and PRIMARY KEY definitions + public static final org.jooq.UniqueKey PK_T_AUTHOR = createUniqueKey(org.jooq.test.oracle.generatedclasses.multi_schema.tables.TAuthor.T_AUTHOR, org.jooq.test.oracle.generatedclasses.multi_schema.tables.TAuthor.T_AUTHOR.ID); + public static final org.jooq.UniqueKey PK_T_BOOK = createUniqueKey(org.jooq.test.oracle.generatedclasses.multi_schema.tables.TBook.T_BOOK, org.jooq.test.oracle.generatedclasses.multi_schema.tables.TBook.T_BOOK.ID); + public static final org.jooq.UniqueKey PK_T_BOOK_SALE = createUniqueKey(org.jooq.test.oracle.generatedclasses.multi_schema.tables.TBookSale.T_BOOK_SALE, org.jooq.test.oracle.generatedclasses.multi_schema.tables.TBookSale.T_BOOK_SALE.ID); + + // FOREIGN KEY definitions + public static final org.jooq.ForeignKey FK_T_BOOK_AUTHOR_ID = createForeignKey(PK_T_AUTHOR, org.jooq.test.oracle.generatedclasses.multi_schema.tables.TBook.T_BOOK, org.jooq.test.oracle.generatedclasses.multi_schema.tables.TBook.T_BOOK.AUTHOR_ID); + public static final org.jooq.ForeignKey FK_T_BOOK_CO_AUTHOR_ID = createForeignKey(PK_T_AUTHOR, org.jooq.test.oracle.generatedclasses.multi_schema.tables.TBook.T_BOOK, org.jooq.test.oracle.generatedclasses.multi_schema.tables.TBook.T_BOOK.CO_AUTHOR_ID); + public static final org.jooq.ForeignKey FK_T_BOOK_TO_BOOK_STORE = createForeignKey(org.jooq.test.oracle.generatedclasses.test.Keys.PK_B2BS, org.jooq.test.oracle.generatedclasses.multi_schema.tables.TBookSale.T_BOOK_SALE, org.jooq.test.oracle.generatedclasses.multi_schema.tables.TBookSale.T_BOOK_SALE.BOOK_STORE_NAME, org.jooq.test.oracle.generatedclasses.multi_schema.tables.TBookSale.T_BOOK_SALE.BOOK_ID); + + /** + * No instances + */ + private Keys() {} +} diff --git a/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/multi_schema/MultiSchema.java b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/multi_schema/MultiSchema.java new file mode 100644 index 00000000000..f1865f15dab --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/multi_schema/MultiSchema.java @@ -0,0 +1,32 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle.generatedclasses.multi_schema; + +/** + * This class is generated by jOOQ. + */ +public class MultiSchema extends org.jooq.impl.SchemaImpl { + + private static final long serialVersionUID = -1472774415; + + /** + * The singleton instance of MULTI_SCHEMA + */ + public static final MultiSchema MULTI_SCHEMA = new MultiSchema(); + + /** + * No further instances allowed + */ + private MultiSchema() { + super("MULTI_SCHEMA"); + } + + @Override + public final java.util.List> getTables() { + return java.util.Arrays.>asList( + org.jooq.test.oracle.generatedclasses.multi_schema.tables.TAuthor.T_AUTHOR, + org.jooq.test.oracle.generatedclasses.multi_schema.tables.TBook.T_BOOK, + org.jooq.test.oracle.generatedclasses.multi_schema.tables.TBookSale.T_BOOK_SALE); + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/multi_schema/MultiSchemaFactory.java b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/multi_schema/MultiSchemaFactory.java new file mode 100644 index 00000000000..e05a8c75f27 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/multi_schema/MultiSchemaFactory.java @@ -0,0 +1,41 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle.generatedclasses.multi_schema; + +/** + * This class is generated by jOOQ. + */ +public class MultiSchemaFactory extends org.jooq.util.oracle.OracleFactory { + + private static final long serialVersionUID = -1286222734; + + /** + * Create a factory with a connection + * + * @param connection The connection to use with objects created from this factory + */ + public MultiSchemaFactory(java.sql.Connection connection) { + super(connection); + } + + /** + * Create a factory with a connection and a schema mapping + * + * @deprecated - 2.0.5 - Use {@link #MultiSchemaFactory(java.sql.Connection, org.jooq.conf.Settings)} instead + */ + @Deprecated + public MultiSchemaFactory(java.sql.Connection connection, org.jooq.SchemaMapping mapping) { + super(connection, mapping); + } + + /** + * Create a factory with a connection and some settings + * + * @param connection The connection to use with objects created from this factory + * @param settings The settings to apply to objects created from this factory + */ + public MultiSchemaFactory(java.sql.Connection connection, org.jooq.conf.Settings settings) { + super(connection, settings); + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/multi_schema/Tables.java b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/multi_schema/Tables.java new file mode 100644 index 00000000000..eb7e5b8e48d --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/multi_schema/Tables.java @@ -0,0 +1,32 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle.generatedclasses.multi_schema; + +/** + * This class is generated by jOOQ. + * + * Convenience access to all tables in MULTI_SCHEMA + */ +public final class Tables { + + /** + * The table MULTI_SCHEMA.T_AUTHOR + */ + public static org.jooq.test.oracle.generatedclasses.multi_schema.tables.TAuthor T_AUTHOR = org.jooq.test.oracle.generatedclasses.multi_schema.tables.TAuthor.T_AUTHOR; + + /** + * The table MULTI_SCHEMA.T_BOOK + */ + public static org.jooq.test.oracle.generatedclasses.multi_schema.tables.TBook T_BOOK = org.jooq.test.oracle.generatedclasses.multi_schema.tables.TBook.T_BOOK; + + /** + * The table MULTI_SCHEMA.T_BOOK_SALE + */ + public static org.jooq.test.oracle.generatedclasses.multi_schema.tables.TBookSale T_BOOK_SALE = org.jooq.test.oracle.generatedclasses.multi_schema.tables.TBookSale.T_BOOK_SALE; + + /** + * No instances + */ + private Tables() {} +} diff --git a/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/multi_schema/tables/TAuthor.java b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/multi_schema/tables/TAuthor.java new file mode 100644 index 00000000000..eac169194d6 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/multi_schema/tables/TAuthor.java @@ -0,0 +1,89 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle.generatedclasses.multi_schema.tables; + +/** + * This class is generated by jOOQ. + */ +public class TAuthor extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = -294859876; + + /** + * The singleton instance of MULTI_SCHEMA.T_AUTHOR + */ + public static final org.jooq.test.oracle.generatedclasses.multi_schema.tables.TAuthor T_AUTHOR = new org.jooq.test.oracle.generatedclasses.multi_schema.tables.TAuthor(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.oracle.generatedclasses.multi_schema.tables.records.TAuthorRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final org.jooq.TableField ID = createField("ID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField FIRST_NAME = createField("FIRST_NAME", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField LAST_NAME = createField("LAST_NAME", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField DATE_OF_BIRTH = createField("DATE_OF_BIRTH", org.jooq.impl.SQLDataType.DATE, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField YEAR_OF_BIRTH = createField("YEAR_OF_BIRTH", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + * + * The SQL type of this item (U_ADDRESS_TYPE) could not be mapped.
+ * Deserialising this field might not work! + */ + public final org.jooq.TableField ADDRESS = createField("ADDRESS", org.jooq.util.oracle.OracleDataType.getDefaultDataType("U_ADDRESS_TYPE"), this); + + public TAuthor() { + super("T_AUTHOR", org.jooq.test.oracle.generatedclasses.multi_schema.MultiSchema.MULTI_SCHEMA); + } + + public TAuthor(java.lang.String alias) { + super(alias, org.jooq.test.oracle.generatedclasses.multi_schema.MultiSchema.MULTI_SCHEMA, org.jooq.test.oracle.generatedclasses.multi_schema.tables.TAuthor.T_AUTHOR); + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.test.oracle.generatedclasses.multi_schema.Keys.PK_T_AUTHOR; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.test.oracle.generatedclasses.multi_schema.Keys.PK_T_AUTHOR); + } + + @Override + public org.jooq.test.oracle.generatedclasses.multi_schema.tables.TAuthor as(java.lang.String alias) { + return new org.jooq.test.oracle.generatedclasses.multi_schema.tables.TAuthor(alias); + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/multi_schema/tables/TBook.java b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/multi_schema/tables/TBook.java new file mode 100644 index 00000000000..7a44494df2e --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/multi_schema/tables/TBook.java @@ -0,0 +1,125 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle.generatedclasses.multi_schema.tables; + +/** + * This class is generated by jOOQ. + */ +public class TBook extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = -751508949; + + /** + * The singleton instance of MULTI_SCHEMA.T_BOOK + */ + public static final org.jooq.test.oracle.generatedclasses.multi_schema.tables.TBook T_BOOK = new org.jooq.test.oracle.generatedclasses.multi_schema.tables.TBook(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.oracle.generatedclasses.multi_schema.tables.records.TBookRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final org.jooq.TableField ID = createField("ID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_T_BOOK_AUTHOR_ID
+	 * FOREIGN KEY (AUTHOR_ID)
+	 * REFERENCES MULTI_SCHEMA.T_AUTHOR (ID)
+	 * 
+ */ + public final org.jooq.TableField AUTHOR_ID = createField("AUTHOR_ID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_T_BOOK_CO_AUTHOR_ID
+	 * FOREIGN KEY (CO_AUTHOR_ID)
+	 * REFERENCES MULTI_SCHEMA.T_AUTHOR (ID)
+	 * 
+ */ + public final org.jooq.TableField CO_AUTHOR_ID = createField("CO_AUTHOR_ID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField DETAILS_ID = createField("DETAILS_ID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField TITLE = createField("TITLE", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField PUBLISHED_IN = createField("PUBLISHED_IN", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_T_BOOK_LANGUAGE_ID
+	 * FOREIGN KEY (LANGUAGE_ID)
+	 * REFERENCES TEST.T_LANGUAGE (ID)
+	 * 
+ */ + public final org.jooq.TableField LANGUAGE_ID = createField("LANGUAGE_ID", org.jooq.impl.SQLDataType.INTEGER.asMasterDataType(org.jooq.test.oracle.generatedclasses.test.enums.TLanguage.class), this); + + /** + * An uncommented item + */ + public final org.jooq.TableField CONTENT_TEXT = createField("CONTENT_TEXT", org.jooq.impl.SQLDataType.CLOB, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField CONTENT_PDF = createField("CONTENT_PDF", org.jooq.impl.SQLDataType.BLOB, this); + + public TBook() { + super("T_BOOK", org.jooq.test.oracle.generatedclasses.multi_schema.MultiSchema.MULTI_SCHEMA); + } + + public TBook(java.lang.String alias) { + super(alias, org.jooq.test.oracle.generatedclasses.multi_schema.MultiSchema.MULTI_SCHEMA, org.jooq.test.oracle.generatedclasses.multi_schema.tables.TBook.T_BOOK); + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.test.oracle.generatedclasses.multi_schema.Keys.PK_T_BOOK; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.test.oracle.generatedclasses.multi_schema.Keys.PK_T_BOOK); + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getReferences() { + return java.util.Arrays.>asList(org.jooq.test.oracle.generatedclasses.multi_schema.Keys.FK_T_BOOK_AUTHOR_ID, org.jooq.test.oracle.generatedclasses.multi_schema.Keys.FK_T_BOOK_CO_AUTHOR_ID); + } + + @Override + public org.jooq.test.oracle.generatedclasses.multi_schema.tables.TBook as(java.lang.String alias) { + return new org.jooq.test.oracle.generatedclasses.multi_schema.tables.TBook(alias); + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/multi_schema/tables/TBookSale.java b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/multi_schema/tables/TBookSale.java new file mode 100644 index 00000000000..12dca88874b --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/multi_schema/tables/TBookSale.java @@ -0,0 +1,99 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle.generatedclasses.multi_schema.tables; + +/** + * This class is generated by jOOQ. + */ +public class TBookSale extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = 2011577749; + + /** + * The singleton instance of MULTI_SCHEMA.T_BOOK_SALE + */ + public static final org.jooq.test.oracle.generatedclasses.multi_schema.tables.TBookSale T_BOOK_SALE = new org.jooq.test.oracle.generatedclasses.multi_schema.tables.TBookSale(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.oracle.generatedclasses.multi_schema.tables.records.TBookSaleRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final org.jooq.TableField ID = createField("ID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_T_BOOK_TO_BOOK_STORE
+	 * FOREIGN KEY (BOOK_STORE_NAME, BOOK_ID)
+	 * REFERENCES TEST.T_BOOK_TO_BOOK_STORE (BOOK_STORE_NAME, BOOK_ID)
+	 * 
+ */ + public final org.jooq.TableField BOOK_ID = createField("BOOK_ID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_T_BOOK_TO_BOOK_STORE
+	 * FOREIGN KEY (BOOK_STORE_NAME, BOOK_ID)
+	 * REFERENCES TEST.T_BOOK_TO_BOOK_STORE (BOOK_STORE_NAME, BOOK_ID)
+	 * 
+ */ + public final org.jooq.TableField BOOK_STORE_NAME = createField("BOOK_STORE_NAME", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField SOLD_AT = createField("SOLD_AT", org.jooq.impl.SQLDataType.DATE, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField SOLD_FOR = createField("SOLD_FOR", org.jooq.impl.SQLDataType.NUMERIC, this); + + public TBookSale() { + super("T_BOOK_SALE", org.jooq.test.oracle.generatedclasses.multi_schema.MultiSchema.MULTI_SCHEMA); + } + + public TBookSale(java.lang.String alias) { + super(alias, org.jooq.test.oracle.generatedclasses.multi_schema.MultiSchema.MULTI_SCHEMA, org.jooq.test.oracle.generatedclasses.multi_schema.tables.TBookSale.T_BOOK_SALE); + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.test.oracle.generatedclasses.multi_schema.Keys.PK_T_BOOK_SALE; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.test.oracle.generatedclasses.multi_schema.Keys.PK_T_BOOK_SALE); + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getReferences() { + return java.util.Arrays.>asList(org.jooq.test.oracle.generatedclasses.multi_schema.Keys.FK_T_BOOK_TO_BOOK_STORE); + } + + @Override + public org.jooq.test.oracle.generatedclasses.multi_schema.tables.TBookSale as(java.lang.String alias) { + return new org.jooq.test.oracle.generatedclasses.multi_schema.tables.TBookSale(alias); + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/multi_schema/tables/pojos/TAuthor.java b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/multi_schema/tables/pojos/TAuthor.java new file mode 100644 index 00000000000..32eba74f3de --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/multi_schema/tables/pojos/TAuthor.java @@ -0,0 +1,76 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle.generatedclasses.multi_schema.tables.pojos; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "T_AUTHOR", schema = "MULTI_SCHEMA") +public class TAuthor implements java.io.Serializable { + + private static final long serialVersionUID = -1528833410; + + private java.lang.Integer id; + private java.lang.String firstName; + private java.lang.String lastName; + private java.sql.Date dateOfBirth; + private java.lang.Integer yearOfBirth; + private java.lang.Object address; + + @javax.persistence.Id + @javax.persistence.Column(name = "ID", unique = true, nullable = false, precision = 7) + public java.lang.Integer getId() { + return this.id; + } + + public void setId(java.lang.Integer id) { + this.id = id; + } + + @javax.persistence.Column(name = "FIRST_NAME", length = 50) + public java.lang.String getFirstName() { + return this.firstName; + } + + public void setFirstName(java.lang.String firstName) { + this.firstName = firstName; + } + + @javax.persistence.Column(name = "LAST_NAME", nullable = false, length = 50) + public java.lang.String getLastName() { + return this.lastName; + } + + public void setLastName(java.lang.String lastName) { + this.lastName = lastName; + } + + @javax.persistence.Column(name = "DATE_OF_BIRTH", length = 7) + public java.sql.Date getDateOfBirth() { + return this.dateOfBirth; + } + + public void setDateOfBirth(java.sql.Date dateOfBirth) { + this.dateOfBirth = dateOfBirth; + } + + @javax.persistence.Column(name = "YEAR_OF_BIRTH", precision = 7) + public java.lang.Integer getYearOfBirth() { + return this.yearOfBirth; + } + + public void setYearOfBirth(java.lang.Integer yearOfBirth) { + this.yearOfBirth = yearOfBirth; + } + + @javax.persistence.Column(name = "ADDRESS", length = 1) + public java.lang.Object getAddress() { + return this.address; + } + + public void setAddress(java.lang.Object address) { + this.address = address; + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/multi_schema/tables/pojos/TBook.java b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/multi_schema/tables/pojos/TBook.java new file mode 100644 index 00000000000..b273c771cfb --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/multi_schema/tables/pojos/TBook.java @@ -0,0 +1,106 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle.generatedclasses.multi_schema.tables.pojos; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "T_BOOK", schema = "MULTI_SCHEMA") +public class TBook implements java.io.Serializable { + + private static final long serialVersionUID = -564243036; + + private java.lang.Integer id; + private java.lang.Integer authorId; + private java.lang.Integer coAuthorId; + private java.lang.Integer detailsId; + private java.lang.String title; + private java.lang.Integer publishedIn; + private org.jooq.test.oracle.generatedclasses.test.enums.TLanguage languageId; + private java.lang.String contentText; + private byte[] contentPdf; + + @javax.persistence.Id + @javax.persistence.Column(name = "ID", unique = true, nullable = false, precision = 7) + public java.lang.Integer getId() { + return this.id; + } + + public void setId(java.lang.Integer id) { + this.id = id; + } + + @javax.persistence.Column(name = "AUTHOR_ID", nullable = false, precision = 7) + public java.lang.Integer getAuthorId() { + return this.authorId; + } + + public void setAuthorId(java.lang.Integer authorId) { + this.authorId = authorId; + } + + @javax.persistence.Column(name = "CO_AUTHOR_ID", precision = 7) + public java.lang.Integer getCoAuthorId() { + return this.coAuthorId; + } + + public void setCoAuthorId(java.lang.Integer coAuthorId) { + this.coAuthorId = coAuthorId; + } + + @javax.persistence.Column(name = "DETAILS_ID", precision = 7) + public java.lang.Integer getDetailsId() { + return this.detailsId; + } + + public void setDetailsId(java.lang.Integer detailsId) { + this.detailsId = detailsId; + } + + @javax.persistence.Column(name = "TITLE", nullable = false, length = 400) + public java.lang.String getTitle() { + return this.title; + } + + public void setTitle(java.lang.String title) { + this.title = title; + } + + @javax.persistence.Column(name = "PUBLISHED_IN", nullable = false, precision = 7) + public java.lang.Integer getPublishedIn() { + return this.publishedIn; + } + + public void setPublishedIn(java.lang.Integer publishedIn) { + this.publishedIn = publishedIn; + } + + @javax.persistence.Column(name = "LANGUAGE_ID", nullable = false, precision = 7) + public org.jooq.test.oracle.generatedclasses.test.enums.TLanguage getLanguageId() { + return this.languageId; + } + + public void setLanguageId(org.jooq.test.oracle.generatedclasses.test.enums.TLanguage languageId) { + this.languageId = languageId; + } + + @javax.persistence.Column(name = "CONTENT_TEXT", length = 4000) + public java.lang.String getContentText() { + return this.contentText; + } + + public void setContentText(java.lang.String contentText) { + this.contentText = contentText; + } + + @javax.persistence.Column(name = "CONTENT_PDF", length = 4000) + public byte[] getContentPdf() { + return this.contentPdf; + } + + public void setContentPdf(byte[] contentPdf) { + this.contentPdf = contentPdf; + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/multi_schema/tables/pojos/TBookSale.java b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/multi_schema/tables/pojos/TBookSale.java new file mode 100644 index 00000000000..87bfa85af39 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/multi_schema/tables/pojos/TBookSale.java @@ -0,0 +1,66 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle.generatedclasses.multi_schema.tables.pojos; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "T_BOOK_SALE", schema = "MULTI_SCHEMA") +public class TBookSale implements java.io.Serializable { + + private static final long serialVersionUID = -1195046825; + + private java.lang.Integer id; + private java.lang.Integer bookId; + private java.lang.String bookStoreName; + private java.sql.Date soldAt; + private java.math.BigDecimal soldFor; + + @javax.persistence.Id + @javax.persistence.Column(name = "ID", unique = true, nullable = false, precision = 7) + public java.lang.Integer getId() { + return this.id; + } + + public void setId(java.lang.Integer id) { + this.id = id; + } + + @javax.persistence.Column(name = "BOOK_ID", nullable = false, precision = 7) + public java.lang.Integer getBookId() { + return this.bookId; + } + + public void setBookId(java.lang.Integer bookId) { + this.bookId = bookId; + } + + @javax.persistence.Column(name = "BOOK_STORE_NAME", nullable = false, length = 400) + public java.lang.String getBookStoreName() { + return this.bookStoreName; + } + + public void setBookStoreName(java.lang.String bookStoreName) { + this.bookStoreName = bookStoreName; + } + + @javax.persistence.Column(name = "SOLD_AT", nullable = false, length = 7) + public java.sql.Date getSoldAt() { + return this.soldAt; + } + + public void setSoldAt(java.sql.Date soldAt) { + this.soldAt = soldAt; + } + + @javax.persistence.Column(name = "SOLD_FOR", nullable = false, precision = 10, scale = 2) + public java.math.BigDecimal getSoldFor() { + return this.soldFor; + } + + public void setSoldFor(java.math.BigDecimal soldFor) { + this.soldFor = soldFor; + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/multi_schema/tables/records/TAuthorRecord.java b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/multi_schema/tables/records/TAuthorRecord.java new file mode 100644 index 00000000000..88c62433a9e --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/multi_schema/tables/records/TAuthorRecord.java @@ -0,0 +1,146 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle.generatedclasses.multi_schema.tables.records; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "T_AUTHOR", schema = "MULTI_SCHEMA") +public class TAuthorRecord extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = -1271126300; + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setId(java.lang.Integer value) { + setValue(org.jooq.test.oracle.generatedclasses.multi_schema.tables.TAuthor.T_AUTHOR.ID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + @javax.persistence.Id + @javax.persistence.Column(name = "ID", unique = true, nullable = false, precision = 7) + public java.lang.Integer getId() { + return getValue(org.jooq.test.oracle.generatedclasses.multi_schema.tables.TAuthor.T_AUTHOR.ID); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.util.List fetchTBookListByAuthorId() { + return create() + .selectFrom(org.jooq.test.oracle.generatedclasses.multi_schema.tables.TBook.T_BOOK) + .where(org.jooq.test.oracle.generatedclasses.multi_schema.tables.TBook.T_BOOK.AUTHOR_ID.equal(getValue(org.jooq.test.oracle.generatedclasses.multi_schema.tables.TAuthor.T_AUTHOR.ID))) + .fetch(); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.util.List fetchTBookListByCoAuthorId() { + return create() + .selectFrom(org.jooq.test.oracle.generatedclasses.multi_schema.tables.TBook.T_BOOK) + .where(org.jooq.test.oracle.generatedclasses.multi_schema.tables.TBook.T_BOOK.CO_AUTHOR_ID.equal(getValue(org.jooq.test.oracle.generatedclasses.multi_schema.tables.TAuthor.T_AUTHOR.ID))) + .fetch(); + } + + /** + * An uncommented item + */ + public void setFirstName(java.lang.String value) { + setValue(org.jooq.test.oracle.generatedclasses.multi_schema.tables.TAuthor.T_AUTHOR.FIRST_NAME, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "FIRST_NAME", length = 50) + public java.lang.String getFirstName() { + return getValue(org.jooq.test.oracle.generatedclasses.multi_schema.tables.TAuthor.T_AUTHOR.FIRST_NAME); + } + + /** + * An uncommented item + */ + public void setLastName(java.lang.String value) { + setValue(org.jooq.test.oracle.generatedclasses.multi_schema.tables.TAuthor.T_AUTHOR.LAST_NAME, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "LAST_NAME", nullable = false, length = 50) + public java.lang.String getLastName() { + return getValue(org.jooq.test.oracle.generatedclasses.multi_schema.tables.TAuthor.T_AUTHOR.LAST_NAME); + } + + /** + * An uncommented item + */ + public void setDateOfBirth(java.sql.Date value) { + setValue(org.jooq.test.oracle.generatedclasses.multi_schema.tables.TAuthor.T_AUTHOR.DATE_OF_BIRTH, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "DATE_OF_BIRTH", length = 7) + public java.sql.Date getDateOfBirth() { + return getValue(org.jooq.test.oracle.generatedclasses.multi_schema.tables.TAuthor.T_AUTHOR.DATE_OF_BIRTH); + } + + /** + * An uncommented item + */ + public void setYearOfBirth(java.lang.Integer value) { + setValue(org.jooq.test.oracle.generatedclasses.multi_schema.tables.TAuthor.T_AUTHOR.YEAR_OF_BIRTH, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "YEAR_OF_BIRTH", precision = 7) + public java.lang.Integer getYearOfBirth() { + return getValue(org.jooq.test.oracle.generatedclasses.multi_schema.tables.TAuthor.T_AUTHOR.YEAR_OF_BIRTH); + } + + /** + * An uncommented item + * + * The SQL type of this item (U_ADDRESS_TYPE) could not be mapped.
+ * Deserialising this field might not work! + */ + public void setAddress(java.lang.Object value) { + setValue(org.jooq.test.oracle.generatedclasses.multi_schema.tables.TAuthor.T_AUTHOR.ADDRESS, value); + } + + /** + * An uncommented item + * + * The SQL type of this item (U_ADDRESS_TYPE) could not be mapped.
+ * Deserialising this field might not work! + */ + @javax.persistence.Column(name = "ADDRESS", length = 1) + public java.lang.Object getAddress() { + return getValue(org.jooq.test.oracle.generatedclasses.multi_schema.tables.TAuthor.T_AUTHOR.ADDRESS); + } + + /** + * Create a detached TAuthorRecord + */ + public TAuthorRecord() { + super(org.jooq.test.oracle.generatedclasses.multi_schema.tables.TAuthor.T_AUTHOR); + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/multi_schema/tables/records/TBookRecord.java b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/multi_schema/tables/records/TBookRecord.java new file mode 100644 index 00000000000..3b42e3006d5 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/multi_schema/tables/records/TBookRecord.java @@ -0,0 +1,229 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle.generatedclasses.multi_schema.tables.records; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "T_BOOK", schema = "MULTI_SCHEMA") +public class TBookRecord extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = 679491786; + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setId(java.lang.Integer value) { + setValue(org.jooq.test.oracle.generatedclasses.multi_schema.tables.TBook.T_BOOK.ID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + @javax.persistence.Id + @javax.persistence.Column(name = "ID", unique = true, nullable = false, precision = 7) + public java.lang.Integer getId() { + return getValue(org.jooq.test.oracle.generatedclasses.multi_schema.tables.TBook.T_BOOK.ID); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_T_BOOK_AUTHOR_ID
+	 * FOREIGN KEY (AUTHOR_ID)
+	 * REFERENCES MULTI_SCHEMA.T_AUTHOR (ID)
+	 * 
+ */ + public void setAuthorId(java.lang.Integer value) { + setValue(org.jooq.test.oracle.generatedclasses.multi_schema.tables.TBook.T_BOOK.AUTHOR_ID, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_T_BOOK_AUTHOR_ID
+	 * FOREIGN KEY (AUTHOR_ID)
+	 * REFERENCES MULTI_SCHEMA.T_AUTHOR (ID)
+	 * 
+ */ + @javax.persistence.Column(name = "AUTHOR_ID", nullable = false, precision = 7) + public java.lang.Integer getAuthorId() { + return getValue(org.jooq.test.oracle.generatedclasses.multi_schema.tables.TBook.T_BOOK.AUTHOR_ID); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_T_BOOK_AUTHOR_ID
+	 * FOREIGN KEY (AUTHOR_ID)
+	 * REFERENCES MULTI_SCHEMA.T_AUTHOR (ID)
+	 * 
+ */ + public org.jooq.test.oracle.generatedclasses.multi_schema.tables.records.TAuthorRecord fetchTAuthorByAuthorId() { + return create() + .selectFrom(org.jooq.test.oracle.generatedclasses.multi_schema.tables.TAuthor.T_AUTHOR) + .where(org.jooq.test.oracle.generatedclasses.multi_schema.tables.TAuthor.T_AUTHOR.ID.equal(getValue(org.jooq.test.oracle.generatedclasses.multi_schema.tables.TBook.T_BOOK.AUTHOR_ID))) + .fetchOne(); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_T_BOOK_CO_AUTHOR_ID
+	 * FOREIGN KEY (CO_AUTHOR_ID)
+	 * REFERENCES MULTI_SCHEMA.T_AUTHOR (ID)
+	 * 
+ */ + public void setCoAuthorId(java.lang.Integer value) { + setValue(org.jooq.test.oracle.generatedclasses.multi_schema.tables.TBook.T_BOOK.CO_AUTHOR_ID, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_T_BOOK_CO_AUTHOR_ID
+	 * FOREIGN KEY (CO_AUTHOR_ID)
+	 * REFERENCES MULTI_SCHEMA.T_AUTHOR (ID)
+	 * 
+ */ + @javax.persistence.Column(name = "CO_AUTHOR_ID", precision = 7) + public java.lang.Integer getCoAuthorId() { + return getValue(org.jooq.test.oracle.generatedclasses.multi_schema.tables.TBook.T_BOOK.CO_AUTHOR_ID); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_T_BOOK_CO_AUTHOR_ID
+	 * FOREIGN KEY (CO_AUTHOR_ID)
+	 * REFERENCES MULTI_SCHEMA.T_AUTHOR (ID)
+	 * 
+ */ + public org.jooq.test.oracle.generatedclasses.multi_schema.tables.records.TAuthorRecord fetchTAuthorByCoAuthorId() { + return create() + .selectFrom(org.jooq.test.oracle.generatedclasses.multi_schema.tables.TAuthor.T_AUTHOR) + .where(org.jooq.test.oracle.generatedclasses.multi_schema.tables.TAuthor.T_AUTHOR.ID.equal(getValue(org.jooq.test.oracle.generatedclasses.multi_schema.tables.TBook.T_BOOK.CO_AUTHOR_ID))) + .fetchOne(); + } + + /** + * An uncommented item + */ + public void setDetailsId(java.lang.Integer value) { + setValue(org.jooq.test.oracle.generatedclasses.multi_schema.tables.TBook.T_BOOK.DETAILS_ID, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "DETAILS_ID", precision = 7) + public java.lang.Integer getDetailsId() { + return getValue(org.jooq.test.oracle.generatedclasses.multi_schema.tables.TBook.T_BOOK.DETAILS_ID); + } + + /** + * An uncommented item + */ + public void setTitle(java.lang.String value) { + setValue(org.jooq.test.oracle.generatedclasses.multi_schema.tables.TBook.T_BOOK.TITLE, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "TITLE", nullable = false, length = 400) + public java.lang.String getTitle() { + return getValue(org.jooq.test.oracle.generatedclasses.multi_schema.tables.TBook.T_BOOK.TITLE); + } + + /** + * An uncommented item + */ + public void setPublishedIn(java.lang.Integer value) { + setValue(org.jooq.test.oracle.generatedclasses.multi_schema.tables.TBook.T_BOOK.PUBLISHED_IN, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "PUBLISHED_IN", nullable = false, precision = 7) + public java.lang.Integer getPublishedIn() { + return getValue(org.jooq.test.oracle.generatedclasses.multi_schema.tables.TBook.T_BOOK.PUBLISHED_IN); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_T_BOOK_LANGUAGE_ID
+	 * FOREIGN KEY (LANGUAGE_ID)
+	 * REFERENCES TEST.T_LANGUAGE (ID)
+	 * 
+ */ + public void setLanguageId(org.jooq.test.oracle.generatedclasses.test.enums.TLanguage value) { + setValue(org.jooq.test.oracle.generatedclasses.multi_schema.tables.TBook.T_BOOK.LANGUAGE_ID, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_T_BOOK_LANGUAGE_ID
+	 * FOREIGN KEY (LANGUAGE_ID)
+	 * REFERENCES TEST.T_LANGUAGE (ID)
+	 * 
+ */ + @javax.persistence.Column(name = "LANGUAGE_ID", nullable = false, precision = 7) + public org.jooq.test.oracle.generatedclasses.test.enums.TLanguage getLanguageId() { + return getValue(org.jooq.test.oracle.generatedclasses.multi_schema.tables.TBook.T_BOOK.LANGUAGE_ID); + } + + /** + * An uncommented item + */ + public void setContentText(java.lang.String value) { + setValue(org.jooq.test.oracle.generatedclasses.multi_schema.tables.TBook.T_BOOK.CONTENT_TEXT, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "CONTENT_TEXT", length = 4000) + public java.lang.String getContentText() { + return getValue(org.jooq.test.oracle.generatedclasses.multi_schema.tables.TBook.T_BOOK.CONTENT_TEXT); + } + + /** + * An uncommented item + */ + public void setContentPdf(byte[] value) { + setValue(org.jooq.test.oracle.generatedclasses.multi_schema.tables.TBook.T_BOOK.CONTENT_PDF, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "CONTENT_PDF", length = 4000) + public byte[] getContentPdf() { + return getValue(org.jooq.test.oracle.generatedclasses.multi_schema.tables.TBook.T_BOOK.CONTENT_PDF); + } + + /** + * Create a detached TBookRecord + */ + public TBookRecord() { + super(org.jooq.test.oracle.generatedclasses.multi_schema.tables.TBook.T_BOOK); + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/multi_schema/tables/records/TBookSaleRecord.java b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/multi_schema/tables/records/TBookSaleRecord.java new file mode 100644 index 00000000000..aa0938431d2 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/multi_schema/tables/records/TBookSaleRecord.java @@ -0,0 +1,142 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle.generatedclasses.multi_schema.tables.records; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "T_BOOK_SALE", schema = "MULTI_SCHEMA") +public class TBookSaleRecord extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = 1064587566; + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setId(java.lang.Integer value) { + setValue(org.jooq.test.oracle.generatedclasses.multi_schema.tables.TBookSale.T_BOOK_SALE.ID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + @javax.persistence.Id + @javax.persistence.Column(name = "ID", unique = true, nullable = false, precision = 7) + public java.lang.Integer getId() { + return getValue(org.jooq.test.oracle.generatedclasses.multi_schema.tables.TBookSale.T_BOOK_SALE.ID); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_T_BOOK_TO_BOOK_STORE
+	 * FOREIGN KEY (BOOK_STORE_NAME, BOOK_ID)
+	 * REFERENCES TEST.T_BOOK_TO_BOOK_STORE (BOOK_STORE_NAME, BOOK_ID)
+	 * 
+ */ + public void setBookId(java.lang.Integer value) { + setValue(org.jooq.test.oracle.generatedclasses.multi_schema.tables.TBookSale.T_BOOK_SALE.BOOK_ID, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_T_BOOK_TO_BOOK_STORE
+	 * FOREIGN KEY (BOOK_STORE_NAME, BOOK_ID)
+	 * REFERENCES TEST.T_BOOK_TO_BOOK_STORE (BOOK_STORE_NAME, BOOK_ID)
+	 * 
+ */ + @javax.persistence.Column(name = "BOOK_ID", nullable = false, precision = 7) + public java.lang.Integer getBookId() { + return getValue(org.jooq.test.oracle.generatedclasses.multi_schema.tables.TBookSale.T_BOOK_SALE.BOOK_ID); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_T_BOOK_TO_BOOK_STORE
+	 * FOREIGN KEY (BOOK_STORE_NAME, BOOK_ID)
+	 * REFERENCES TEST.T_BOOK_TO_BOOK_STORE (BOOK_STORE_NAME, BOOK_ID)
+	 * 
+ */ + public org.jooq.test.oracle.generatedclasses.test.tables.records.TBookToBookStoreRecord fetchTBookToBookStore() { + return create() + .selectFrom(org.jooq.test.oracle.generatedclasses.test.tables.TBookToBookStore.T_BOOK_TO_BOOK_STORE) + .where(org.jooq.test.oracle.generatedclasses.test.tables.TBookToBookStore.T_BOOK_TO_BOOK_STORE.BOOK_STORE_NAME.equal(getValue(org.jooq.test.oracle.generatedclasses.multi_schema.tables.TBookSale.T_BOOK_SALE.BOOK_STORE_NAME))) + .and(org.jooq.test.oracle.generatedclasses.test.tables.TBookToBookStore.T_BOOK_TO_BOOK_STORE.BOOK_ID.equal(getValue(org.jooq.test.oracle.generatedclasses.multi_schema.tables.TBookSale.T_BOOK_SALE.BOOK_ID))) + .fetchOne(); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_T_BOOK_TO_BOOK_STORE
+	 * FOREIGN KEY (BOOK_STORE_NAME, BOOK_ID)
+	 * REFERENCES TEST.T_BOOK_TO_BOOK_STORE (BOOK_STORE_NAME, BOOK_ID)
+	 * 
+ */ + public void setBookStoreName(java.lang.String value) { + setValue(org.jooq.test.oracle.generatedclasses.multi_schema.tables.TBookSale.T_BOOK_SALE.BOOK_STORE_NAME, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_T_BOOK_TO_BOOK_STORE
+	 * FOREIGN KEY (BOOK_STORE_NAME, BOOK_ID)
+	 * REFERENCES TEST.T_BOOK_TO_BOOK_STORE (BOOK_STORE_NAME, BOOK_ID)
+	 * 
+ */ + @javax.persistence.Column(name = "BOOK_STORE_NAME", nullable = false, length = 400) + public java.lang.String getBookStoreName() { + return getValue(org.jooq.test.oracle.generatedclasses.multi_schema.tables.TBookSale.T_BOOK_SALE.BOOK_STORE_NAME); + } + + /** + * An uncommented item + */ + public void setSoldAt(java.sql.Date value) { + setValue(org.jooq.test.oracle.generatedclasses.multi_schema.tables.TBookSale.T_BOOK_SALE.SOLD_AT, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "SOLD_AT", nullable = false, length = 7) + public java.sql.Date getSoldAt() { + return getValue(org.jooq.test.oracle.generatedclasses.multi_schema.tables.TBookSale.T_BOOK_SALE.SOLD_AT); + } + + /** + * An uncommented item + */ + public void setSoldFor(java.math.BigDecimal value) { + setValue(org.jooq.test.oracle.generatedclasses.multi_schema.tables.TBookSale.T_BOOK_SALE.SOLD_FOR, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "SOLD_FOR", nullable = false, precision = 10, scale = 2) + public java.math.BigDecimal getSoldFor() { + return getValue(org.jooq.test.oracle.generatedclasses.multi_schema.tables.TBookSale.T_BOOK_SALE.SOLD_FOR); + } + + /** + * Create a detached TBookSaleRecord + */ + public TBookSaleRecord() { + super(org.jooq.test.oracle.generatedclasses.multi_schema.tables.TBookSale.T_BOOK_SALE); + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/Keys.java b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/Keys.java new file mode 100644 index 00000000000..db497c3e16c --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/Keys.java @@ -0,0 +1,49 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle.generatedclasses.test; + +/** + * This class is generated by jOOQ. + * + * A class modelling foreign key relationships between tables of the TEST schema + */ +@SuppressWarnings({"unchecked"}) +public class Keys extends org.jooq.impl.AbstractKeys { + + // IDENTITY definitions + + // UNIQUE and PRIMARY KEY definitions + public static final org.jooq.UniqueKey PK_T_ARRAYS = createUniqueKey(org.jooq.test.oracle.generatedclasses.test.tables.TArrays.T_ARRAYS, org.jooq.test.oracle.generatedclasses.test.tables.TArrays.T_ARRAYS.ID); + public static final org.jooq.UniqueKey PK_T_AUTHOR = createUniqueKey(org.jooq.test.oracle.generatedclasses.test.tables.TAuthor.T_AUTHOR, org.jooq.test.oracle.generatedclasses.test.tables.TAuthor.T_AUTHOR.ID); + public static final org.jooq.UniqueKey PK_T_BOOK = createUniqueKey(org.jooq.test.oracle.generatedclasses.test.tables.TBook.T_BOOK, org.jooq.test.oracle.generatedclasses.test.tables.TBook.T_BOOK.ID); + public static final org.jooq.UniqueKey UK_T_BOOK_STORE_NAME = createUniqueKey(org.jooq.test.oracle.generatedclasses.test.tables.TBookStore.T_BOOK_STORE, org.jooq.test.oracle.generatedclasses.test.tables.TBookStore.T_BOOK_STORE.NAME); + public static final org.jooq.UniqueKey PK_B2BS = createUniqueKey(org.jooq.test.oracle.generatedclasses.test.tables.TBookToBookStore.T_BOOK_TO_BOOK_STORE, org.jooq.test.oracle.generatedclasses.test.tables.TBookToBookStore.T_BOOK_TO_BOOK_STORE.BOOK_STORE_NAME, org.jooq.test.oracle.generatedclasses.test.tables.TBookToBookStore.T_BOOK_TO_BOOK_STORE.BOOK_ID); + public static final org.jooq.UniqueKey PK_T_BOOLEANS = createUniqueKey(org.jooq.test.oracle.generatedclasses.test.tables.TBooleans.T_BOOLEANS, org.jooq.test.oracle.generatedclasses.test.tables.TBooleans.T_BOOLEANS.ID); + public static final org.jooq.UniqueKey PK_T_DATES = createUniqueKey(org.jooq.test.oracle.generatedclasses.test.tables.TDates.T_DATES, org.jooq.test.oracle.generatedclasses.test.tables.TDates.T_DATES.ID); + public static final org.jooq.UniqueKey PK_T_DIRECTORY = createUniqueKey(org.jooq.test.oracle.generatedclasses.test.tables.TDirectory.T_DIRECTORY, org.jooq.test.oracle.generatedclasses.test.tables.TDirectory.T_DIRECTORY.ID); + public static final org.jooq.UniqueKey PK_T_TRIGGERS = createUniqueKey(org.jooq.test.oracle.generatedclasses.test.tables.TTriggers.T_TRIGGERS, org.jooq.test.oracle.generatedclasses.test.tables.TTriggers.T_TRIGGERS.ID_GENERATED); + public static final org.jooq.UniqueKey PK_T_639_NUMBERS_TABLE = createUniqueKey(org.jooq.test.oracle.generatedclasses.test.tables.T_639NumbersTable.T_639_NUMBERS_TABLE, org.jooq.test.oracle.generatedclasses.test.tables.T_639NumbersTable.T_639_NUMBERS_TABLE.ID); + public static final org.jooq.UniqueKey PK_T_725_LOB_TEST = createUniqueKey(org.jooq.test.oracle.generatedclasses.test.tables.T_725LobTest.T_725_LOB_TEST, org.jooq.test.oracle.generatedclasses.test.tables.T_725LobTest.T_725_LOB_TEST.ID); + public static final org.jooq.UniqueKey PK_X_TEST_CASE_64_69 = createUniqueKey(org.jooq.test.oracle.generatedclasses.test.tables.XTestCase_64_69.X_TEST_CASE_64_69, org.jooq.test.oracle.generatedclasses.test.tables.XTestCase_64_69.X_TEST_CASE_64_69.ID); + public static final org.jooq.UniqueKey PK_X_TEST_CASE_71 = createUniqueKey(org.jooq.test.oracle.generatedclasses.test.tables.XTestCase_71.X_TEST_CASE_71, org.jooq.test.oracle.generatedclasses.test.tables.XTestCase_71.X_TEST_CASE_71.ID); + public static final org.jooq.UniqueKey PK_X_TEST_CASE_85 = createUniqueKey(org.jooq.test.oracle.generatedclasses.test.tables.XTestCase_85.X_TEST_CASE_85, org.jooq.test.oracle.generatedclasses.test.tables.XTestCase_85.X_TEST_CASE_85.ID); + public static final org.jooq.UniqueKey PK_X_UNUSED = createUniqueKey(org.jooq.test.oracle.generatedclasses.test.tables.XUnused.X_UNUSED, org.jooq.test.oracle.generatedclasses.test.tables.XUnused.X_UNUSED.ID, org.jooq.test.oracle.generatedclasses.test.tables.XUnused.X_UNUSED.NAME); + public static final org.jooq.UniqueKey UK_X_UNUSED_ID = createUniqueKey(org.jooq.test.oracle.generatedclasses.test.tables.XUnused.X_UNUSED, org.jooq.test.oracle.generatedclasses.test.tables.XUnused.X_UNUSED.ID); + + // FOREIGN KEY definitions + public static final org.jooq.ForeignKey FK_T_BOOK_AUTHOR_ID = createForeignKey(PK_T_AUTHOR, org.jooq.test.oracle.generatedclasses.test.tables.TBook.T_BOOK, org.jooq.test.oracle.generatedclasses.test.tables.TBook.T_BOOK.AUTHOR_ID); + public static final org.jooq.ForeignKey FK_T_BOOK_CO_AUTHOR_ID = createForeignKey(PK_T_AUTHOR, org.jooq.test.oracle.generatedclasses.test.tables.TBook.T_BOOK, org.jooq.test.oracle.generatedclasses.test.tables.TBook.T_BOOK.CO_AUTHOR_ID); + public static final org.jooq.ForeignKey FK_B2BS_BS_NAME = createForeignKey(UK_T_BOOK_STORE_NAME, org.jooq.test.oracle.generatedclasses.test.tables.TBookToBookStore.T_BOOK_TO_BOOK_STORE, org.jooq.test.oracle.generatedclasses.test.tables.TBookToBookStore.T_BOOK_TO_BOOK_STORE.BOOK_STORE_NAME); + public static final org.jooq.ForeignKey FK_B2BS_B_ID = createForeignKey(PK_T_BOOK, org.jooq.test.oracle.generatedclasses.test.tables.TBookToBookStore.T_BOOK_TO_BOOK_STORE, org.jooq.test.oracle.generatedclasses.test.tables.TBookToBookStore.T_BOOK_TO_BOOK_STORE.BOOK_ID); + public static final org.jooq.ForeignKey PK_T_DIRECTORY_SELF = createForeignKey(PK_T_DIRECTORY, org.jooq.test.oracle.generatedclasses.test.tables.TDirectory.T_DIRECTORY, org.jooq.test.oracle.generatedclasses.test.tables.TDirectory.T_DIRECTORY.PARENT_ID); + public static final org.jooq.ForeignKey FK_X_TEST_CASE_64_69A = createForeignKey(UK_X_UNUSED_ID, org.jooq.test.oracle.generatedclasses.test.tables.XTestCase_64_69.X_TEST_CASE_64_69, org.jooq.test.oracle.generatedclasses.test.tables.XTestCase_64_69.X_TEST_CASE_64_69.UNUSED_ID); + public static final org.jooq.ForeignKey FK_X_TEST_CASE_71 = createForeignKey(PK_X_TEST_CASE_64_69, org.jooq.test.oracle.generatedclasses.test.tables.XTestCase_71.X_TEST_CASE_71, org.jooq.test.oracle.generatedclasses.test.tables.XTestCase_71.X_TEST_CASE_71.TEST_CASE_64_69_ID); + public static final org.jooq.ForeignKey FK_X_TEST_CASE_85 = createForeignKey(PK_X_UNUSED, org.jooq.test.oracle.generatedclasses.test.tables.XTestCase_85.X_TEST_CASE_85, org.jooq.test.oracle.generatedclasses.test.tables.XTestCase_85.X_TEST_CASE_85.X_UNUSED_ID, org.jooq.test.oracle.generatedclasses.test.tables.XTestCase_85.X_TEST_CASE_85.X_UNUSED_NAME); + public static final org.jooq.ForeignKey FK_X_UNUSED_SELF = createForeignKey(PK_X_UNUSED, org.jooq.test.oracle.generatedclasses.test.tables.XUnused.X_UNUSED, org.jooq.test.oracle.generatedclasses.test.tables.XUnused.X_UNUSED.ID_REF, org.jooq.test.oracle.generatedclasses.test.tables.XUnused.X_UNUSED.NAME_REF); + + /** + * No instances + */ + private Keys() {} +} diff --git a/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/Routines.java b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/Routines.java new file mode 100644 index 00000000000..55b5ba54b93 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/Routines.java @@ -0,0 +1,994 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle.generatedclasses.test; + +/** + * This class is generated by jOOQ. + * + * Convenience access to all stored procedures and functions in TEST + */ +public final class Routines { + + /** + * Call TEST.F_ARRAYS1 + * + * @param inArray + * @throws org.jooq.exception.DataAccessException if something went wrong executing the query + */ + public static org.jooq.test.oracle.generatedclasses.test.udt.records.UNumberArrayRecord fArrays1(org.jooq.Configuration configuration, org.jooq.test.oracle.generatedclasses.test.udt.records.UNumberArrayRecord inArray) { + org.jooq.test.oracle.generatedclasses.test.routines.FArrays1 f = new org.jooq.test.oracle.generatedclasses.test.routines.FArrays1(); + f.setInArray(inArray); + + f.execute(configuration); + return f.getReturnValue(); + } + + /** + * Get TEST.F_ARRAYS1 as a field + * + * @param inArray + */ + public static org.jooq.Field fArrays1(org.jooq.test.oracle.generatedclasses.test.udt.records.UNumberArrayRecord inArray) { + org.jooq.test.oracle.generatedclasses.test.routines.FArrays1 f = new org.jooq.test.oracle.generatedclasses.test.routines.FArrays1(); + f.setInArray(inArray); + + return f.asField(); + } + + /** + * Get TEST.F_ARRAYS1 as a field + * + * @param inArray + */ + public static org.jooq.Field fArrays1(org.jooq.Field inArray) { + org.jooq.test.oracle.generatedclasses.test.routines.FArrays1 f = new org.jooq.test.oracle.generatedclasses.test.routines.FArrays1(); + f.setInArray(inArray); + + return f.asField(); + } + + /** + * Call TEST.F_ARRAYS2 + * + * @param inArray + * @throws org.jooq.exception.DataAccessException if something went wrong executing the query + */ + public static org.jooq.test.oracle.generatedclasses.test.udt.records.UNumberLongArrayRecord fArrays2(org.jooq.Configuration configuration, org.jooq.test.oracle.generatedclasses.test.udt.records.UNumberLongArrayRecord inArray) { + org.jooq.test.oracle.generatedclasses.test.routines.FArrays2 f = new org.jooq.test.oracle.generatedclasses.test.routines.FArrays2(); + f.setInArray(inArray); + + f.execute(configuration); + return f.getReturnValue(); + } + + /** + * Get TEST.F_ARRAYS2 as a field + * + * @param inArray + */ + public static org.jooq.Field fArrays2(org.jooq.test.oracle.generatedclasses.test.udt.records.UNumberLongArrayRecord inArray) { + org.jooq.test.oracle.generatedclasses.test.routines.FArrays2 f = new org.jooq.test.oracle.generatedclasses.test.routines.FArrays2(); + f.setInArray(inArray); + + return f.asField(); + } + + /** + * Get TEST.F_ARRAYS2 as a field + * + * @param inArray + */ + public static org.jooq.Field fArrays2(org.jooq.Field inArray) { + org.jooq.test.oracle.generatedclasses.test.routines.FArrays2 f = new org.jooq.test.oracle.generatedclasses.test.routines.FArrays2(); + f.setInArray(inArray); + + return f.asField(); + } + + /** + * Call TEST.F_ARRAYS3 + * + * @param inArray + * @throws org.jooq.exception.DataAccessException if something went wrong executing the query + */ + public static org.jooq.test.oracle.generatedclasses.test.udt.records.UStringArrayRecord fArrays3(org.jooq.Configuration configuration, org.jooq.test.oracle.generatedclasses.test.udt.records.UStringArrayRecord inArray) { + org.jooq.test.oracle.generatedclasses.test.routines.FArrays3 f = new org.jooq.test.oracle.generatedclasses.test.routines.FArrays3(); + f.setInArray(inArray); + + f.execute(configuration); + return f.getReturnValue(); + } + + /** + * Get TEST.F_ARRAYS3 as a field + * + * @param inArray + */ + public static org.jooq.Field fArrays3(org.jooq.test.oracle.generatedclasses.test.udt.records.UStringArrayRecord inArray) { + org.jooq.test.oracle.generatedclasses.test.routines.FArrays3 f = new org.jooq.test.oracle.generatedclasses.test.routines.FArrays3(); + f.setInArray(inArray); + + return f.asField(); + } + + /** + * Get TEST.F_ARRAYS3 as a field + * + * @param inArray + */ + public static org.jooq.Field fArrays3(org.jooq.Field inArray) { + org.jooq.test.oracle.generatedclasses.test.routines.FArrays3 f = new org.jooq.test.oracle.generatedclasses.test.routines.FArrays3(); + f.setInArray(inArray); + + return f.asField(); + } + + /** + * Call TEST.F_ARRAYS4 + * + * @param inArray + * @throws org.jooq.exception.DataAccessException if something went wrong executing the query + */ + public static org.jooq.test.oracle.generatedclasses.test.udt.records.UBookArrayRecord fArrays4(org.jooq.Configuration configuration, org.jooq.test.oracle.generatedclasses.test.udt.records.UBookArrayRecord inArray) { + org.jooq.test.oracle.generatedclasses.test.routines.FArrays4 f = new org.jooq.test.oracle.generatedclasses.test.routines.FArrays4(); + f.setInArray(inArray); + + f.execute(configuration); + return f.getReturnValue(); + } + + /** + * Get TEST.F_ARRAYS4 as a field + * + * @param inArray + */ + public static org.jooq.Field fArrays4(org.jooq.test.oracle.generatedclasses.test.udt.records.UBookArrayRecord inArray) { + org.jooq.test.oracle.generatedclasses.test.routines.FArrays4 f = new org.jooq.test.oracle.generatedclasses.test.routines.FArrays4(); + f.setInArray(inArray); + + return f.asField(); + } + + /** + * Get TEST.F_ARRAYS4 as a field + * + * @param inArray + */ + public static org.jooq.Field fArrays4(org.jooq.Field inArray) { + org.jooq.test.oracle.generatedclasses.test.routines.FArrays4 f = new org.jooq.test.oracle.generatedclasses.test.routines.FArrays4(); + f.setInArray(inArray); + + return f.asField(); + } + + /** + * Call TEST.F_AUTHOR_EXISTS + * + * @param authorName + * @throws org.jooq.exception.DataAccessException if something went wrong executing the query + */ + public static java.math.BigDecimal fAuthorExists(org.jooq.Configuration configuration, java.lang.String authorName) { + org.jooq.test.oracle.generatedclasses.test.routines.FAuthorExists f = new org.jooq.test.oracle.generatedclasses.test.routines.FAuthorExists(); + f.setAuthorName(authorName); + + f.execute(configuration); + return f.getReturnValue(); + } + + /** + * Get TEST.F_AUTHOR_EXISTS as a field + * + * @param authorName + */ + public static org.jooq.Field fAuthorExists(java.lang.String authorName) { + org.jooq.test.oracle.generatedclasses.test.routines.FAuthorExists f = new org.jooq.test.oracle.generatedclasses.test.routines.FAuthorExists(); + f.setAuthorName(authorName); + + return f.asField(); + } + + /** + * Get TEST.F_AUTHOR_EXISTS as a field + * + * @param authorName + */ + public static org.jooq.Field fAuthorExists(org.jooq.Field authorName) { + org.jooq.test.oracle.generatedclasses.test.routines.FAuthorExists f = new org.jooq.test.oracle.generatedclasses.test.routines.FAuthorExists(); + f.setAuthorName(authorName); + + return f.asField(); + } + + /** + * Call TEST.F_GET_ONE_CURSOR + * + * @param bookIds + * @throws org.jooq.exception.DataAccessException if something went wrong executing the query + */ + public static org.jooq.Result fGetOneCursor(org.jooq.Configuration configuration, org.jooq.test.oracle.generatedclasses.test.udt.records.UNumberArrayRecord bookIds) { + org.jooq.test.oracle.generatedclasses.test.routines.FGetOneCursor f = new org.jooq.test.oracle.generatedclasses.test.routines.FGetOneCursor(); + f.setBookIds(bookIds); + + f.execute(configuration); + return f.getReturnValue(); + } + + /** + * Get TEST.F_GET_ONE_CURSOR as a field + * + * @param bookIds + */ + public static org.jooq.Field> fGetOneCursor(org.jooq.test.oracle.generatedclasses.test.udt.records.UNumberArrayRecord bookIds) { + org.jooq.test.oracle.generatedclasses.test.routines.FGetOneCursor f = new org.jooq.test.oracle.generatedclasses.test.routines.FGetOneCursor(); + f.setBookIds(bookIds); + + return f.asField(); + } + + /** + * Get TEST.F_GET_ONE_CURSOR as a field + * + * @param bookIds + */ + public static org.jooq.Field> fGetOneCursor(org.jooq.Field bookIds) { + org.jooq.test.oracle.generatedclasses.test.routines.FGetOneCursor f = new org.jooq.test.oracle.generatedclasses.test.routines.FGetOneCursor(); + f.setBookIds(bookIds); + + return f.asField(); + } + + /** + * Call TEST.F_NUMBER + * + * @param n + * @throws org.jooq.exception.DataAccessException if something went wrong executing the query + */ + public static java.math.BigDecimal fNumber(org.jooq.Configuration configuration, java.lang.Number n) { + org.jooq.test.oracle.generatedclasses.test.routines.FNumber f = new org.jooq.test.oracle.generatedclasses.test.routines.FNumber(); + f.setN(n); + + f.execute(configuration); + return f.getReturnValue(); + } + + /** + * Get TEST.F_NUMBER as a field + * + * @param n + */ + public static org.jooq.Field fNumber(java.lang.Number n) { + org.jooq.test.oracle.generatedclasses.test.routines.FNumber f = new org.jooq.test.oracle.generatedclasses.test.routines.FNumber(); + f.setN(n); + + return f.asField(); + } + + /** + * Get TEST.F_NUMBER as a field + * + * @param n + */ + public static org.jooq.Field fNumber(org.jooq.Field n) { + org.jooq.test.oracle.generatedclasses.test.routines.FNumber f = new org.jooq.test.oracle.generatedclasses.test.routines.FNumber(); + f.setN(n); + + return f.asField(); + } + + /** + * Call TEST.F_ONE + * + * @throws org.jooq.exception.DataAccessException if something went wrong executing the query + */ + public static java.math.BigDecimal fOne(org.jooq.Configuration configuration) { + org.jooq.test.oracle.generatedclasses.test.routines.FOne f = new org.jooq.test.oracle.generatedclasses.test.routines.FOne(); + + f.execute(configuration); + return f.getReturnValue(); + } + + /** + * Get TEST.F_ONE as a field + * + */ + public static org.jooq.Field fOne() { + org.jooq.test.oracle.generatedclasses.test.routines.FOne f = new org.jooq.test.oracle.generatedclasses.test.routines.FOne(); + + return f.asField(); + } + + /** + * Call TEST.F_PIPELINED_ARRAY1 + * + * @throws org.jooq.exception.DataAccessException if something went wrong executing the query + */ + public static org.jooq.test.oracle.generatedclasses.test.udt.records.UNumberArrayRecord fPipelinedArray1(org.jooq.Configuration configuration) { + org.jooq.test.oracle.generatedclasses.test.routines.FPipelinedArray1 f = new org.jooq.test.oracle.generatedclasses.test.routines.FPipelinedArray1(); + + f.execute(configuration); + return f.getReturnValue(); + } + + /** + * Get TEST.F_PIPELINED_ARRAY1 as a field + * + */ + public static org.jooq.Field fPipelinedArray1() { + org.jooq.test.oracle.generatedclasses.test.routines.FPipelinedArray1 f = new org.jooq.test.oracle.generatedclasses.test.routines.FPipelinedArray1(); + + return f.asField(); + } + + /** + * Call TEST.F_PIPELINED_ARRAY4 + * + * @throws org.jooq.exception.DataAccessException if something went wrong executing the query + */ + public static org.jooq.test.oracle.generatedclasses.test.udt.records.UBookArrayRecord fPipelinedArray4(org.jooq.Configuration configuration) { + org.jooq.test.oracle.generatedclasses.test.routines.FPipelinedArray4 f = new org.jooq.test.oracle.generatedclasses.test.routines.FPipelinedArray4(); + + f.execute(configuration); + return f.getReturnValue(); + } + + /** + * Get TEST.F_PIPELINED_ARRAY4 as a field + * + */ + public static org.jooq.Field fPipelinedArray4() { + org.jooq.test.oracle.generatedclasses.test.routines.FPipelinedArray4 f = new org.jooq.test.oracle.generatedclasses.test.routines.FPipelinedArray4(); + + return f.asField(); + } + + /** + * Call TEST.F_PIPELINED_TABLE1 + * + * @throws org.jooq.exception.DataAccessException if something went wrong executing the query + */ + public static org.jooq.test.oracle.generatedclasses.test.udt.records.UNumberTableRecord fPipelinedTable1(org.jooq.Configuration configuration) { + org.jooq.test.oracle.generatedclasses.test.routines.FPipelinedTable1 f = new org.jooq.test.oracle.generatedclasses.test.routines.FPipelinedTable1(); + + f.execute(configuration); + return f.getReturnValue(); + } + + /** + * Get TEST.F_PIPELINED_TABLE1 as a field + * + */ + public static org.jooq.Field fPipelinedTable1() { + org.jooq.test.oracle.generatedclasses.test.routines.FPipelinedTable1 f = new org.jooq.test.oracle.generatedclasses.test.routines.FPipelinedTable1(); + + return f.asField(); + } + + /** + * Call TEST.F_PIPELINED_TABLE4 + * + * @throws org.jooq.exception.DataAccessException if something went wrong executing the query + */ + public static org.jooq.test.oracle.generatedclasses.test.udt.records.UBookTableRecord fPipelinedTable4(org.jooq.Configuration configuration) { + org.jooq.test.oracle.generatedclasses.test.routines.FPipelinedTable4 f = new org.jooq.test.oracle.generatedclasses.test.routines.FPipelinedTable4(); + + f.execute(configuration); + return f.getReturnValue(); + } + + /** + * Get TEST.F_PIPELINED_TABLE4 as a field + * + */ + public static org.jooq.Field fPipelinedTable4() { + org.jooq.test.oracle.generatedclasses.test.routines.FPipelinedTable4 f = new org.jooq.test.oracle.generatedclasses.test.routines.FPipelinedTable4(); + + return f.asField(); + } + + /** + * Call TEST.F_TABLES1 + * + * @param inTable + * @throws org.jooq.exception.DataAccessException if something went wrong executing the query + */ + public static org.jooq.test.oracle.generatedclasses.test.udt.records.UNumberTableRecord fTables1(org.jooq.Configuration configuration, org.jooq.test.oracle.generatedclasses.test.udt.records.UNumberTableRecord inTable) { + org.jooq.test.oracle.generatedclasses.test.routines.FTables1 f = new org.jooq.test.oracle.generatedclasses.test.routines.FTables1(); + f.setInTable(inTable); + + f.execute(configuration); + return f.getReturnValue(); + } + + /** + * Get TEST.F_TABLES1 as a field + * + * @param inTable + */ + public static org.jooq.Field fTables1(org.jooq.test.oracle.generatedclasses.test.udt.records.UNumberTableRecord inTable) { + org.jooq.test.oracle.generatedclasses.test.routines.FTables1 f = new org.jooq.test.oracle.generatedclasses.test.routines.FTables1(); + f.setInTable(inTable); + + return f.asField(); + } + + /** + * Get TEST.F_TABLES1 as a field + * + * @param inTable + */ + public static org.jooq.Field fTables1(org.jooq.Field inTable) { + org.jooq.test.oracle.generatedclasses.test.routines.FTables1 f = new org.jooq.test.oracle.generatedclasses.test.routines.FTables1(); + f.setInTable(inTable); + + return f.asField(); + } + + /** + * Call TEST.F_TABLES2 + * + * @param inTable + * @throws org.jooq.exception.DataAccessException if something went wrong executing the query + */ + public static org.jooq.test.oracle.generatedclasses.test.udt.records.UNumberLongTableRecord fTables2(org.jooq.Configuration configuration, org.jooq.test.oracle.generatedclasses.test.udt.records.UNumberLongTableRecord inTable) { + org.jooq.test.oracle.generatedclasses.test.routines.FTables2 f = new org.jooq.test.oracle.generatedclasses.test.routines.FTables2(); + f.setInTable(inTable); + + f.execute(configuration); + return f.getReturnValue(); + } + + /** + * Get TEST.F_TABLES2 as a field + * + * @param inTable + */ + public static org.jooq.Field fTables2(org.jooq.test.oracle.generatedclasses.test.udt.records.UNumberLongTableRecord inTable) { + org.jooq.test.oracle.generatedclasses.test.routines.FTables2 f = new org.jooq.test.oracle.generatedclasses.test.routines.FTables2(); + f.setInTable(inTable); + + return f.asField(); + } + + /** + * Get TEST.F_TABLES2 as a field + * + * @param inTable + */ + public static org.jooq.Field fTables2(org.jooq.Field inTable) { + org.jooq.test.oracle.generatedclasses.test.routines.FTables2 f = new org.jooq.test.oracle.generatedclasses.test.routines.FTables2(); + f.setInTable(inTable); + + return f.asField(); + } + + /** + * Call TEST.F_TABLES3 + * + * @param inTable + * @throws org.jooq.exception.DataAccessException if something went wrong executing the query + */ + public static org.jooq.test.oracle.generatedclasses.test.udt.records.UStringTableRecord fTables3(org.jooq.Configuration configuration, org.jooq.test.oracle.generatedclasses.test.udt.records.UStringTableRecord inTable) { + org.jooq.test.oracle.generatedclasses.test.routines.FTables3 f = new org.jooq.test.oracle.generatedclasses.test.routines.FTables3(); + f.setInTable(inTable); + + f.execute(configuration); + return f.getReturnValue(); + } + + /** + * Get TEST.F_TABLES3 as a field + * + * @param inTable + */ + public static org.jooq.Field fTables3(org.jooq.test.oracle.generatedclasses.test.udt.records.UStringTableRecord inTable) { + org.jooq.test.oracle.generatedclasses.test.routines.FTables3 f = new org.jooq.test.oracle.generatedclasses.test.routines.FTables3(); + f.setInTable(inTable); + + return f.asField(); + } + + /** + * Get TEST.F_TABLES3 as a field + * + * @param inTable + */ + public static org.jooq.Field fTables3(org.jooq.Field inTable) { + org.jooq.test.oracle.generatedclasses.test.routines.FTables3 f = new org.jooq.test.oracle.generatedclasses.test.routines.FTables3(); + f.setInTable(inTable); + + return f.asField(); + } + + /** + * Call TEST.F_TABLES4 + * + * @param inTable + * @throws org.jooq.exception.DataAccessException if something went wrong executing the query + */ + public static org.jooq.test.oracle.generatedclasses.test.udt.records.UBookTableRecord fTables4(org.jooq.Configuration configuration, org.jooq.test.oracle.generatedclasses.test.udt.records.UBookTableRecord inTable) { + org.jooq.test.oracle.generatedclasses.test.routines.FTables4 f = new org.jooq.test.oracle.generatedclasses.test.routines.FTables4(); + f.setInTable(inTable); + + f.execute(configuration); + return f.getReturnValue(); + } + + /** + * Get TEST.F_TABLES4 as a field + * + * @param inTable + */ + public static org.jooq.Field fTables4(org.jooq.test.oracle.generatedclasses.test.udt.records.UBookTableRecord inTable) { + org.jooq.test.oracle.generatedclasses.test.routines.FTables4 f = new org.jooq.test.oracle.generatedclasses.test.routines.FTables4(); + f.setInTable(inTable); + + return f.asField(); + } + + /** + * Get TEST.F_TABLES4 as a field + * + * @param inTable + */ + public static org.jooq.Field fTables4(org.jooq.Field inTable) { + org.jooq.test.oracle.generatedclasses.test.routines.FTables4 f = new org.jooq.test.oracle.generatedclasses.test.routines.FTables4(); + f.setInTable(inTable); + + return f.asField(); + } + + /** + * Call TEST.F317 + * + * @param p1 + * @param p2 + * @param p3 + * @param p4 + * @throws org.jooq.exception.DataAccessException if something went wrong executing the query + */ + public static java.math.BigDecimal f317(org.jooq.Configuration configuration, java.lang.Number p1, java.lang.Number p2, java.lang.Number p3, java.lang.Number p4) { + org.jooq.test.oracle.generatedclasses.test.routines.F317 f = new org.jooq.test.oracle.generatedclasses.test.routines.F317(); + f.setP1(p1); + f.setP2(p2); + f.setP3(p3); + f.setP4(p4); + + f.execute(configuration); + return f.getReturnValue(); + } + + /** + * Get TEST.F317 as a field + * + * @param p1 + * @param p2 + * @param p3 + * @param p4 + */ + public static org.jooq.Field f317(java.lang.Number p1, java.lang.Number p2, java.lang.Number p3, java.lang.Number p4) { + org.jooq.test.oracle.generatedclasses.test.routines.F317 f = new org.jooq.test.oracle.generatedclasses.test.routines.F317(); + f.setP1(p1); + f.setP2(p2); + f.setP3(p3); + f.setP4(p4); + + return f.asField(); + } + + /** + * Get TEST.F317 as a field + * + * @param p1 + * @param p2 + * @param p3 + * @param p4 + */ + public static org.jooq.Field f317(org.jooq.Field p1, org.jooq.Field p2, org.jooq.Field p3, org.jooq.Field p4) { + org.jooq.test.oracle.generatedclasses.test.routines.F317 f = new org.jooq.test.oracle.generatedclasses.test.routines.F317(); + f.setP1(p1); + f.setP2(p2); + f.setP3(p3); + f.setP4(p4); + + return f.asField(); + } + + /** + * Call TEST.F377 + * + * @throws org.jooq.exception.DataAccessException if something went wrong executing the query + */ + public static void f377(org.jooq.Configuration configuration) { + org.jooq.test.oracle.generatedclasses.test.routines.F377 p = new org.jooq.test.oracle.generatedclasses.test.routines.F377(); + + p.execute(configuration); + } + + /** + * Call TEST.F378 + * + * @param returnValue OUT parameter + * @param i IN parameter + * @param io IN OUT parameter + * @param o OUT parameter + * @throws org.jooq.exception.DataAccessException if something went wrong executing the query + */ + public static org.jooq.test.oracle.generatedclasses.test.routines.F378 f378(org.jooq.Configuration configuration, java.lang.Number i, java.lang.Number io) { + org.jooq.test.oracle.generatedclasses.test.routines.F378 p = new org.jooq.test.oracle.generatedclasses.test.routines.F378(); + p.setI(i); + p.setIo(io); + + p.execute(configuration); + return p; + } + + /** + * Call TEST.F691CURSOR_IN + * + * @param c + * @throws org.jooq.exception.DataAccessException if something went wrong executing the query + */ + public static java.math.BigDecimal f691cursorIn(org.jooq.Configuration configuration, org.jooq.Result c) { + org.jooq.test.oracle.generatedclasses.test.routines.F691cursorIn f = new org.jooq.test.oracle.generatedclasses.test.routines.F691cursorIn(); + f.setC(c); + + f.execute(configuration); + return f.getReturnValue(); + } + + /** + * Get TEST.F691CURSOR_IN as a field + * + * @param c + */ + public static org.jooq.Field f691cursorIn(org.jooq.Result c) { + org.jooq.test.oracle.generatedclasses.test.routines.F691cursorIn f = new org.jooq.test.oracle.generatedclasses.test.routines.F691cursorIn(); + f.setC(c); + + return f.asField(); + } + + /** + * Get TEST.F691CURSOR_IN as a field + * + * @param c + */ + public static org.jooq.Field f691cursorIn(org.jooq.Field> c) { + org.jooq.test.oracle.generatedclasses.test.routines.F691cursorIn f = new org.jooq.test.oracle.generatedclasses.test.routines.F691cursorIn(); + f.setC(c); + + return f.asField(); + } + + /** + * Call TEST.F691CURSOR_OUT + * + * @throws org.jooq.exception.DataAccessException if something went wrong executing the query + */ + public static org.jooq.Result f691cursorOut(org.jooq.Configuration configuration) { + org.jooq.test.oracle.generatedclasses.test.routines.F691cursorOut f = new org.jooq.test.oracle.generatedclasses.test.routines.F691cursorOut(); + + f.execute(configuration); + return f.getReturnValue(); + } + + /** + * Get TEST.F691CURSOR_OUT as a field + * + */ + public static org.jooq.Field> f691cursorOut() { + org.jooq.test.oracle.generatedclasses.test.routines.F691cursorOut f = new org.jooq.test.oracle.generatedclasses.test.routines.F691cursorOut(); + + return f.asField(); + } + + /** + * Call TEST.P_ARRAYS1 + * + * @param inArray IN parameter + * @param outArray OUT parameter + * @throws org.jooq.exception.DataAccessException if something went wrong executing the query + */ + public static org.jooq.test.oracle.generatedclasses.test.udt.records.UNumberArrayRecord pArrays1(org.jooq.Configuration configuration, org.jooq.test.oracle.generatedclasses.test.udt.records.UNumberArrayRecord inArray) { + org.jooq.test.oracle.generatedclasses.test.routines.PArrays1 p = new org.jooq.test.oracle.generatedclasses.test.routines.PArrays1(); + p.setInArray(inArray); + + p.execute(configuration); + return p.getOutArray(); + } + + /** + * Call TEST.P_ARRAYS2 + * + * @param inArray IN parameter + * @param outArray OUT parameter + * @throws org.jooq.exception.DataAccessException if something went wrong executing the query + */ + public static org.jooq.test.oracle.generatedclasses.test.udt.records.UNumberLongArrayRecord pArrays2(org.jooq.Configuration configuration, org.jooq.test.oracle.generatedclasses.test.udt.records.UNumberLongArrayRecord inArray) { + org.jooq.test.oracle.generatedclasses.test.routines.PArrays2 p = new org.jooq.test.oracle.generatedclasses.test.routines.PArrays2(); + p.setInArray(inArray); + + p.execute(configuration); + return p.getOutArray(); + } + + /** + * Call TEST.P_ARRAYS3 + * + * @param inArray IN parameter + * @param outArray OUT parameter + * @throws org.jooq.exception.DataAccessException if something went wrong executing the query + */ + public static org.jooq.test.oracle.generatedclasses.test.udt.records.UStringArrayRecord pArrays3(org.jooq.Configuration configuration, org.jooq.test.oracle.generatedclasses.test.udt.records.UStringArrayRecord inArray) { + org.jooq.test.oracle.generatedclasses.test.routines.PArrays3 p = new org.jooq.test.oracle.generatedclasses.test.routines.PArrays3(); + p.setInArray(inArray); + + p.execute(configuration); + return p.getOutArray(); + } + + /** + * Call TEST.P_ARRAYS4 + * + * @param inArray IN parameter + * @param outArray OUT parameter + * @throws org.jooq.exception.DataAccessException if something went wrong executing the query + */ + public static org.jooq.test.oracle.generatedclasses.test.udt.records.UBookArrayRecord pArrays4(org.jooq.Configuration configuration, org.jooq.test.oracle.generatedclasses.test.udt.records.UBookArrayRecord inArray) { + org.jooq.test.oracle.generatedclasses.test.routines.PArrays4 p = new org.jooq.test.oracle.generatedclasses.test.routines.PArrays4(); + p.setInArray(inArray); + + p.execute(configuration); + return p.getOutArray(); + } + + /** + * Call TEST.P_AUTHOR_EXISTS + * + * @param authorName IN parameter + * @param result OUT parameter + * @throws org.jooq.exception.DataAccessException if something went wrong executing the query + */ + public static java.math.BigDecimal pAuthorExists(org.jooq.Configuration configuration, java.lang.String authorName) { + org.jooq.test.oracle.generatedclasses.test.routines.PAuthorExists p = new org.jooq.test.oracle.generatedclasses.test.routines.PAuthorExists(); + p.setAuthorName(authorName); + + p.execute(configuration); + return p.getResult(); + } + + /** + * Call TEST.P_CREATE_AUTHOR + * + * @throws org.jooq.exception.DataAccessException if something went wrong executing the query + */ + public static void pCreateAuthor(org.jooq.Configuration configuration) { + org.jooq.test.oracle.generatedclasses.test.routines.PCreateAuthor p = new org.jooq.test.oracle.generatedclasses.test.routines.PCreateAuthor(); + + p.execute(configuration); + } + + /** + * Call TEST.P_CREATE_AUTHOR_BY_NAME + * + * @param firstName IN parameter + * @param lastName IN parameter + * @throws org.jooq.exception.DataAccessException if something went wrong executing the query + */ + public static void pCreateAuthorByName(org.jooq.Configuration configuration, java.lang.String firstName, java.lang.String lastName) { + org.jooq.test.oracle.generatedclasses.test.routines.PCreateAuthorByName p = new org.jooq.test.oracle.generatedclasses.test.routines.PCreateAuthorByName(); + p.setFirstName(firstName); + p.setLastName(lastName); + + p.execute(configuration); + } + + /** + * Call TEST.P_DEFAULT + * + * @param pInNumber IN parameter + * @param pOutNumber OUT parameter + * @param pInVarchar IN parameter + * @param pOutVarchar OUT parameter + * @param pInDate IN parameter + * @param pOutDate OUT parameter + * @throws org.jooq.exception.DataAccessException if something went wrong executing the query + */ + public static org.jooq.test.oracle.generatedclasses.test.routines.PDefault pDefault(org.jooq.Configuration configuration, java.lang.Number pInNumber, java.lang.String pInVarchar, java.sql.Date pInDate) { + org.jooq.test.oracle.generatedclasses.test.routines.PDefault p = new org.jooq.test.oracle.generatedclasses.test.routines.PDefault(); + p.setPInNumber(pInNumber); + p.setPInVarchar(pInVarchar); + p.setPInDate(pInDate); + + p.execute(configuration); + return p; + } + + /** + * Call TEST.P_ENHANCE_ADDRESS1 + * + * @param address IN parameter + * @param no OUT parameter + * @throws org.jooq.exception.DataAccessException if something went wrong executing the query + */ + public static java.lang.String pEnhanceAddress1(org.jooq.Configuration configuration, org.jooq.test.oracle.generatedclasses.test.udt.records.UAddressTypeRecord address) { + org.jooq.test.oracle.generatedclasses.test.routines.PEnhanceAddress1 p = new org.jooq.test.oracle.generatedclasses.test.routines.PEnhanceAddress1(); + p.setAddress(address); + + p.execute(configuration); + return p.getNo(); + } + + /** + * Call TEST.P_ENHANCE_ADDRESS2 + * + * @param address OUT parameter + * @throws org.jooq.exception.DataAccessException if something went wrong executing the query + */ + public static org.jooq.test.oracle.generatedclasses.test.udt.records.UAddressTypeRecord pEnhanceAddress2(org.jooq.Configuration configuration) { + org.jooq.test.oracle.generatedclasses.test.routines.PEnhanceAddress2 p = new org.jooq.test.oracle.generatedclasses.test.routines.PEnhanceAddress2(); + + p.execute(configuration); + return p.getAddress(); + } + + /** + * Call TEST.P_ENHANCE_ADDRESS3 + * + * @param address IN OUT parameter + * @throws org.jooq.exception.DataAccessException if something went wrong executing the query + */ + public static org.jooq.test.oracle.generatedclasses.test.udt.records.UAddressTypeRecord pEnhanceAddress3(org.jooq.Configuration configuration, org.jooq.test.oracle.generatedclasses.test.udt.records.UAddressTypeRecord address) { + org.jooq.test.oracle.generatedclasses.test.routines.PEnhanceAddress3 p = new org.jooq.test.oracle.generatedclasses.test.routines.PEnhanceAddress3(); + p.setAddress(address); + + p.execute(configuration); + return p.getAddress(); + } + + /** + * Call TEST.P_GET_ONE_CURSOR + * + * @param total OUT parameter + * @param books OUT parameter + * @param bookIds IN parameter + * @throws org.jooq.exception.DataAccessException if something went wrong executing the query + */ + public static org.jooq.test.oracle.generatedclasses.test.routines.PGetOneCursor pGetOneCursor(org.jooq.Configuration configuration, org.jooq.test.oracle.generatedclasses.test.udt.records.UNumberArrayRecord bookIds) { + org.jooq.test.oracle.generatedclasses.test.routines.PGetOneCursor p = new org.jooq.test.oracle.generatedclasses.test.routines.PGetOneCursor(); + p.setBookIds(bookIds); + + p.execute(configuration); + return p; + } + + /** + * Call TEST.P_GET_TWO_CURSORS + * + * @param books OUT parameter + * @param authors OUT parameter + * @throws org.jooq.exception.DataAccessException if something went wrong executing the query + */ + public static org.jooq.test.oracle.generatedclasses.test.routines.PGetTwoCursors pGetTwoCursors(org.jooq.Configuration configuration) { + org.jooq.test.oracle.generatedclasses.test.routines.PGetTwoCursors p = new org.jooq.test.oracle.generatedclasses.test.routines.PGetTwoCursors(); + + p.execute(configuration); + return p; + } + + /** + * Call TEST.P_TABLES1 + * + * @param inTable IN parameter + * @param outTable OUT parameter + * @throws org.jooq.exception.DataAccessException if something went wrong executing the query + */ + public static org.jooq.test.oracle.generatedclasses.test.udt.records.UNumberTableRecord pTables1(org.jooq.Configuration configuration, org.jooq.test.oracle.generatedclasses.test.udt.records.UNumberTableRecord inTable) { + org.jooq.test.oracle.generatedclasses.test.routines.PTables1 p = new org.jooq.test.oracle.generatedclasses.test.routines.PTables1(); + p.setInTable(inTable); + + p.execute(configuration); + return p.getOutTable(); + } + + /** + * Call TEST.P_TABLES2 + * + * @param inTable IN parameter + * @param outTable OUT parameter + * @throws org.jooq.exception.DataAccessException if something went wrong executing the query + */ + public static org.jooq.test.oracle.generatedclasses.test.udt.records.UNumberLongTableRecord pTables2(org.jooq.Configuration configuration, org.jooq.test.oracle.generatedclasses.test.udt.records.UNumberLongTableRecord inTable) { + org.jooq.test.oracle.generatedclasses.test.routines.PTables2 p = new org.jooq.test.oracle.generatedclasses.test.routines.PTables2(); + p.setInTable(inTable); + + p.execute(configuration); + return p.getOutTable(); + } + + /** + * Call TEST.P_TABLES3 + * + * @param inTable IN parameter + * @param outTable OUT parameter + * @throws org.jooq.exception.DataAccessException if something went wrong executing the query + */ + public static org.jooq.test.oracle.generatedclasses.test.udt.records.UStringTableRecord pTables3(org.jooq.Configuration configuration, org.jooq.test.oracle.generatedclasses.test.udt.records.UStringTableRecord inTable) { + org.jooq.test.oracle.generatedclasses.test.routines.PTables3 p = new org.jooq.test.oracle.generatedclasses.test.routines.PTables3(); + p.setInTable(inTable); + + p.execute(configuration); + return p.getOutTable(); + } + + /** + * Call TEST.P_TABLES4 + * + * @param inTable IN parameter + * @param outTable OUT parameter + * @throws org.jooq.exception.DataAccessException if something went wrong executing the query + */ + public static org.jooq.test.oracle.generatedclasses.test.udt.records.UBookTableRecord pTables4(org.jooq.Configuration configuration, org.jooq.test.oracle.generatedclasses.test.udt.records.UBookTableRecord inTable) { + org.jooq.test.oracle.generatedclasses.test.routines.PTables4 p = new org.jooq.test.oracle.generatedclasses.test.routines.PTables4(); + p.setInTable(inTable); + + p.execute(configuration); + return p.getOutTable(); + } + + /** + * Call TEST.P_UNUSED + * + * @param in1 IN parameter + * @param out1 OUT parameter + * @param out2 IN OUT parameter + * @throws org.jooq.exception.DataAccessException if something went wrong executing the query + */ + public static org.jooq.test.oracle.generatedclasses.test.routines.PUnused pUnused(org.jooq.Configuration configuration, java.lang.String in1, java.lang.Number out2) { + org.jooq.test.oracle.generatedclasses.test.routines.PUnused p = new org.jooq.test.oracle.generatedclasses.test.routines.PUnused(); + p.setIn1(in1); + p.setOut2(out2); + + p.execute(configuration); + return p; + } + + /** + * Call TEST.P377 + * + * @throws org.jooq.exception.DataAccessException if something went wrong executing the query + */ + public static void p377(org.jooq.Configuration configuration) { + org.jooq.test.oracle.generatedclasses.test.routines.P377 p = new org.jooq.test.oracle.generatedclasses.test.routines.P377(); + + p.execute(configuration); + } + + /** + * Call TEST.P391 + * + * @param i1 IN parameter + * @param io1 IN OUT parameter + * @param o1 OUT parameter + * @param o2 OUT parameter + * @param io2 IN OUT parameter + * @param i2 IN parameter + * @throws org.jooq.exception.DataAccessException if something went wrong executing the query + */ + public static org.jooq.test.oracle.generatedclasses.test.routines.P391 p391(org.jooq.Configuration configuration, java.lang.Number i1, java.lang.Number io1, java.lang.Number io2, java.lang.Number i2) { + org.jooq.test.oracle.generatedclasses.test.routines.P391 p = new org.jooq.test.oracle.generatedclasses.test.routines.P391(); + p.setI1(i1); + p.setIo1(io1); + p.setIo2(io2); + p.setI2(i2); + + p.execute(configuration); + return p; + } + + /** + * No instances + */ + private Routines() {} +} diff --git a/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/Sequences.java b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/Sequences.java new file mode 100644 index 00000000000..863e7a47011 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/Sequences.java @@ -0,0 +1,47 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle.generatedclasses.test; + +/** + * This class is generated by jOOQ. + * + * Convenience access to all sequences in TEST + */ +public final class Sequences { + + /** + * The sequence TEST.S_AUTHOR_ID + */ + public static final org.jooq.Sequence S_AUTHOR_ID = new org.jooq.impl.SequenceImpl("S_AUTHOR_ID", org.jooq.test.oracle.generatedclasses.test.Test.TEST, org.jooq.impl.SQLDataType.INTEGER); + + /** + * The sequence TEST.S_961_BIG_INTEGER + */ + public static final org.jooq.Sequence S_961_BIG_INTEGER = new org.jooq.impl.SequenceImpl("S_961_BIG_INTEGER", org.jooq.test.oracle.generatedclasses.test.Test.TEST, org.jooq.impl.SQLDataType.DECIMAL_INTEGER); + + /** + * The sequence TEST.S_961_BYTE + */ + public static final org.jooq.Sequence S_961_BYTE = new org.jooq.impl.SequenceImpl("S_961_BYTE", org.jooq.test.oracle.generatedclasses.test.Test.TEST, org.jooq.impl.SQLDataType.TINYINT); + + /** + * The sequence TEST.S_961_INT + */ + public static final org.jooq.Sequence S_961_INT = new org.jooq.impl.SequenceImpl("S_961_INT", org.jooq.test.oracle.generatedclasses.test.Test.TEST, org.jooq.impl.SQLDataType.INTEGER); + + /** + * The sequence TEST.S_961_LONG + */ + public static final org.jooq.Sequence S_961_LONG = new org.jooq.impl.SequenceImpl("S_961_LONG", org.jooq.test.oracle.generatedclasses.test.Test.TEST, org.jooq.impl.SQLDataType.BIGINT); + + /** + * The sequence TEST.S_961_SHORT + */ + public static final org.jooq.Sequence S_961_SHORT = new org.jooq.impl.SequenceImpl("S_961_SHORT", org.jooq.test.oracle.generatedclasses.test.Test.TEST, org.jooq.impl.SQLDataType.SMALLINT); + + /** + * No instances + */ + private Sequences() {} +} diff --git a/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/Tables.java b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/Tables.java new file mode 100644 index 00000000000..eb8b3114ff3 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/Tables.java @@ -0,0 +1,122 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle.generatedclasses.test; + +/** + * This class is generated by jOOQ. + * + * Convenience access to all tables in TEST + */ +public final class Tables { + + /** + * The table TEST.T_ARRAYS + */ + public static org.jooq.test.oracle.generatedclasses.test.tables.TArrays T_ARRAYS = org.jooq.test.oracle.generatedclasses.test.tables.TArrays.T_ARRAYS; + + /** + * An entity holding authors of books + */ + public static org.jooq.test.oracle.generatedclasses.test.tables.TAuthor T_AUTHOR = org.jooq.test.oracle.generatedclasses.test.tables.TAuthor.T_AUTHOR; + + /** + * An entity holding books + */ + public static org.jooq.test.oracle.generatedclasses.test.tables.TBook T_BOOK = org.jooq.test.oracle.generatedclasses.test.tables.TBook.T_BOOK; + + /** + * A book store + */ + public static org.jooq.test.oracle.generatedclasses.test.tables.TBookStore T_BOOK_STORE = org.jooq.test.oracle.generatedclasses.test.tables.TBookStore.T_BOOK_STORE; + + /** + * An m:n relation between books and book stores + */ + public static org.jooq.test.oracle.generatedclasses.test.tables.TBookToBookStore T_BOOK_TO_BOOK_STORE = org.jooq.test.oracle.generatedclasses.test.tables.TBookToBookStore.T_BOOK_TO_BOOK_STORE; + + /** + * The table TEST.T_BOOLEANS + */ + public static org.jooq.test.oracle.generatedclasses.test.tables.TBooleans T_BOOLEANS = org.jooq.test.oracle.generatedclasses.test.tables.TBooleans.T_BOOLEANS; + + /** + * The table TEST.T_DATES + */ + public static org.jooq.test.oracle.generatedclasses.test.tables.TDates T_DATES = org.jooq.test.oracle.generatedclasses.test.tables.TDates.T_DATES; + + /** + * The table TEST.T_DIRECTORY + */ + public static org.jooq.test.oracle.generatedclasses.test.tables.TDirectory T_DIRECTORY = org.jooq.test.oracle.generatedclasses.test.tables.TDirectory.T_DIRECTORY; + + /** + * The table TEST.T_TRIGGERS + */ + public static org.jooq.test.oracle.generatedclasses.test.tables.TTriggers T_TRIGGERS = org.jooq.test.oracle.generatedclasses.test.tables.TTriggers.T_TRIGGERS; + + /** + * The table TEST.T_639_NUMBERS_TABLE + */ + public static org.jooq.test.oracle.generatedclasses.test.tables.T_639NumbersTable T_639_NUMBERS_TABLE = org.jooq.test.oracle.generatedclasses.test.tables.T_639NumbersTable.T_639_NUMBERS_TABLE; + + /** + * The table TEST.T_658_REF + */ + public static org.jooq.test.oracle.generatedclasses.test.tables.T_658Ref T_658_REF = org.jooq.test.oracle.generatedclasses.test.tables.T_658Ref.T_658_REF; + + /** + * The table TEST.T_725_LOB_TEST + */ + public static org.jooq.test.oracle.generatedclasses.test.tables.T_725LobTest T_725_LOB_TEST = org.jooq.test.oracle.generatedclasses.test.tables.T_725LobTest.T_725_LOB_TEST; + + /** + * The table TEST.T_785 + */ + public static org.jooq.test.oracle.generatedclasses.test.tables.T_785 T_785 = org.jooq.test.oracle.generatedclasses.test.tables.T_785.T_785; + + /** + * The table TEST.V_AUTHOR + */ + public static org.jooq.test.oracle.generatedclasses.test.tables.VAuthor V_AUTHOR = org.jooq.test.oracle.generatedclasses.test.tables.VAuthor.V_AUTHOR; + + /** + * The table TEST.V_BOOK + */ + public static org.jooq.test.oracle.generatedclasses.test.tables.VBook V_BOOK = org.jooq.test.oracle.generatedclasses.test.tables.VBook.V_BOOK; + + /** + * The table TEST.V_INCOMPLETE + */ + public static org.jooq.test.oracle.generatedclasses.test.tables.VIncomplete V_INCOMPLETE = org.jooq.test.oracle.generatedclasses.test.tables.VIncomplete.V_INCOMPLETE; + + /** + * The table TEST.V_LIBRARY + */ + public static org.jooq.test.oracle.generatedclasses.test.tables.VLibrary V_LIBRARY = org.jooq.test.oracle.generatedclasses.test.tables.VLibrary.V_LIBRARY; + + /** + * The table TEST.X_TEST_CASE_64_69 + */ + public static org.jooq.test.oracle.generatedclasses.test.tables.XTestCase_64_69 X_TEST_CASE_64_69 = org.jooq.test.oracle.generatedclasses.test.tables.XTestCase_64_69.X_TEST_CASE_64_69; + + /** + * The table TEST.X_TEST_CASE_71 + */ + public static org.jooq.test.oracle.generatedclasses.test.tables.XTestCase_71 X_TEST_CASE_71 = org.jooq.test.oracle.generatedclasses.test.tables.XTestCase_71.X_TEST_CASE_71; + + /** + * The table TEST.X_TEST_CASE_85 + */ + public static org.jooq.test.oracle.generatedclasses.test.tables.XTestCase_85 X_TEST_CASE_85 = org.jooq.test.oracle.generatedclasses.test.tables.XTestCase_85.X_TEST_CASE_85; + + /** + * An unused table in the same schema. + */ + public static org.jooq.test.oracle.generatedclasses.test.tables.XUnused X_UNUSED = org.jooq.test.oracle.generatedclasses.test.tables.XUnused.X_UNUSED; + + /** + * No instances + */ + private Tables() {} +} diff --git a/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/Test.java b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/Test.java new file mode 100644 index 00000000000..89d9bde3a84 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/Test.java @@ -0,0 +1,86 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle.generatedclasses.test; + +/** + * This class is generated by jOOQ. + */ +public class Test extends org.jooq.impl.SchemaImpl { + + private static final long serialVersionUID = -1457205035; + + /** + * The singleton instance of TEST + */ + public static final Test TEST = new Test(); + + /** + * No further instances allowed + */ + private Test() { + super("TEST"); + } + + /* + * instance initialiser + */ + { + addMapping("TEST.O_INVALID_TYPE", org.jooq.test.oracle.generatedclasses.test.udt.records.OInvalidTypeRecord.class); + addMapping("TEST.U_ADDRESS_TYPE", org.jooq.test.oracle.generatedclasses.test.udt.records.UAddressTypeRecord.class); + addMapping("TEST.U_AUTHOR_TYPE", org.jooq.test.oracle.generatedclasses.test.udt.records.UAuthorTypeRecord.class); + addMapping("TEST.U_BOOK_TYPE", org.jooq.test.oracle.generatedclasses.test.udt.records.UBookTypeRecord.class); + addMapping("TEST.U_INVALID_TABLE", org.jooq.test.oracle.generatedclasses.test.udt.records.UInvalidTableRecord.class); + addMapping("TEST.U_INVALID_TYPE", org.jooq.test.oracle.generatedclasses.test.udt.records.UInvalidTypeRecord.class); + addMapping("TEST.U_STREET_TYPE", org.jooq.test.oracle.generatedclasses.test.udt.records.UStreetTypeRecord.class); + } + + @Override + public final java.util.List> getSequences() { + return java.util.Arrays.>asList( + org.jooq.test.oracle.generatedclasses.test.Sequences.S_AUTHOR_ID, + org.jooq.test.oracle.generatedclasses.test.Sequences.S_961_BIG_INTEGER, + org.jooq.test.oracle.generatedclasses.test.Sequences.S_961_BYTE, + org.jooq.test.oracle.generatedclasses.test.Sequences.S_961_INT, + org.jooq.test.oracle.generatedclasses.test.Sequences.S_961_LONG, + org.jooq.test.oracle.generatedclasses.test.Sequences.S_961_SHORT); + } + + @Override + public final java.util.List> getTables() { + return java.util.Arrays.>asList( + org.jooq.test.oracle.generatedclasses.test.tables.TArrays.T_ARRAYS, + org.jooq.test.oracle.generatedclasses.test.tables.TAuthor.T_AUTHOR, + org.jooq.test.oracle.generatedclasses.test.tables.TBook.T_BOOK, + org.jooq.test.oracle.generatedclasses.test.tables.TBookStore.T_BOOK_STORE, + org.jooq.test.oracle.generatedclasses.test.tables.TBookToBookStore.T_BOOK_TO_BOOK_STORE, + org.jooq.test.oracle.generatedclasses.test.tables.TBooleans.T_BOOLEANS, + org.jooq.test.oracle.generatedclasses.test.tables.TDates.T_DATES, + org.jooq.test.oracle.generatedclasses.test.tables.TDirectory.T_DIRECTORY, + org.jooq.test.oracle.generatedclasses.test.tables.TTriggers.T_TRIGGERS, + org.jooq.test.oracle.generatedclasses.test.tables.T_639NumbersTable.T_639_NUMBERS_TABLE, + org.jooq.test.oracle.generatedclasses.test.tables.T_658Ref.T_658_REF, + org.jooq.test.oracle.generatedclasses.test.tables.T_725LobTest.T_725_LOB_TEST, + org.jooq.test.oracle.generatedclasses.test.tables.T_785.T_785, + org.jooq.test.oracle.generatedclasses.test.tables.VAuthor.V_AUTHOR, + org.jooq.test.oracle.generatedclasses.test.tables.VBook.V_BOOK, + org.jooq.test.oracle.generatedclasses.test.tables.VIncomplete.V_INCOMPLETE, + org.jooq.test.oracle.generatedclasses.test.tables.VLibrary.V_LIBRARY, + org.jooq.test.oracle.generatedclasses.test.tables.XTestCase_64_69.X_TEST_CASE_64_69, + org.jooq.test.oracle.generatedclasses.test.tables.XTestCase_71.X_TEST_CASE_71, + org.jooq.test.oracle.generatedclasses.test.tables.XTestCase_85.X_TEST_CASE_85, + org.jooq.test.oracle.generatedclasses.test.tables.XUnused.X_UNUSED); + } + + @Override + public final java.util.List> getUDTs() { + return java.util.Arrays.>asList( + org.jooq.test.oracle.generatedclasses.test.udt.OInvalidType.O_INVALID_TYPE, + org.jooq.test.oracle.generatedclasses.test.udt.UAddressType.U_ADDRESS_TYPE, + org.jooq.test.oracle.generatedclasses.test.udt.UAuthorType.U_AUTHOR_TYPE, + org.jooq.test.oracle.generatedclasses.test.udt.UBookType.U_BOOK_TYPE, + org.jooq.test.oracle.generatedclasses.test.udt.UInvalidTable.U_INVALID_TABLE, + org.jooq.test.oracle.generatedclasses.test.udt.UInvalidType.U_INVALID_TYPE, + org.jooq.test.oracle.generatedclasses.test.udt.UStreetType.U_STREET_TYPE); + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/TestFactory.java b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/TestFactory.java new file mode 100644 index 00000000000..4ee9ef6f490 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/TestFactory.java @@ -0,0 +1,41 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle.generatedclasses.test; + +/** + * This class is generated by jOOQ. + */ +public class TestFactory extends org.jooq.util.oracle.OracleFactory { + + private static final long serialVersionUID = -1137965343; + + /** + * Create a factory with a connection + * + * @param connection The connection to use with objects created from this factory + */ + public TestFactory(java.sql.Connection connection) { + super(connection); + } + + /** + * Create a factory with a connection and a schema mapping + * + * @deprecated - 2.0.5 - Use {@link #TestFactory(java.sql.Connection, org.jooq.conf.Settings)} instead + */ + @Deprecated + public TestFactory(java.sql.Connection connection, org.jooq.SchemaMapping mapping) { + super(connection, mapping); + } + + /** + * Create a factory with a connection and some settings + * + * @param connection The connection to use with objects created from this factory + * @param settings The settings to apply to objects created from this factory + */ + public TestFactory(java.sql.Connection connection, org.jooq.conf.Settings settings) { + super(connection, settings); + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/UDTs.java b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/UDTs.java new file mode 100644 index 00000000000..c92029eac04 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/UDTs.java @@ -0,0 +1,52 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle.generatedclasses.test; + +/** + * This class is generated by jOOQ. + * + * Convenience access to all UDTs in TEST + */ +public final class UDTs { + + /** + * The type TEST.O_INVALID_TYPE + */ + public static org.jooq.test.oracle.generatedclasses.test.udt.OInvalidType O_INVALID_TYPE = org.jooq.test.oracle.generatedclasses.test.udt.OInvalidType.O_INVALID_TYPE; + + /** + * The type TEST.U_ADDRESS_TYPE + */ + public static org.jooq.test.oracle.generatedclasses.test.udt.UAddressType U_ADDRESS_TYPE = org.jooq.test.oracle.generatedclasses.test.udt.UAddressType.U_ADDRESS_TYPE; + + /** + * The type TEST.U_AUTHOR_TYPE + */ + public static org.jooq.test.oracle.generatedclasses.test.udt.UAuthorType U_AUTHOR_TYPE = org.jooq.test.oracle.generatedclasses.test.udt.UAuthorType.U_AUTHOR_TYPE; + + /** + * The type TEST.U_BOOK_TYPE + */ + public static org.jooq.test.oracle.generatedclasses.test.udt.UBookType U_BOOK_TYPE = org.jooq.test.oracle.generatedclasses.test.udt.UBookType.U_BOOK_TYPE; + + /** + * The type TEST.U_INVALID_TABLE + */ + public static org.jooq.test.oracle.generatedclasses.test.udt.UInvalidTable U_INVALID_TABLE = org.jooq.test.oracle.generatedclasses.test.udt.UInvalidTable.U_INVALID_TABLE; + + /** + * The type TEST.U_INVALID_TYPE + */ + public static org.jooq.test.oracle.generatedclasses.test.udt.UInvalidType U_INVALID_TYPE = org.jooq.test.oracle.generatedclasses.test.udt.UInvalidType.U_INVALID_TYPE; + + /** + * The type TEST.U_STREET_TYPE + */ + public static org.jooq.test.oracle.generatedclasses.test.udt.UStreetType U_STREET_TYPE = org.jooq.test.oracle.generatedclasses.test.udt.UStreetType.U_STREET_TYPE; + + /** + * No instances + */ + private UDTs() {} +} diff --git a/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/enums/TLanguage.java b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/enums/TLanguage.java new file mode 100644 index 00000000000..bc02792c1f7 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/enums/TLanguage.java @@ -0,0 +1,67 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle.generatedclasses.test.enums; + +/** + * This class is generated by jOOQ. + * + * An entity holding language master data + */ +public enum TLanguage implements org.jooq.MasterDataType { + + /** + * English + */ + en(1, "en", "English"), + + /** + * Deutsch + */ + de(2, "de", "Deutsch"), + + /** + * Français + */ + fr(3, "fr", "Français"), + pt(4, "pt", null), + ; + + private final java.lang.Integer id; + private final java.lang.String cd; + private final java.lang.String description; + + private TLanguage(java.lang.Integer id, java.lang.String cd, java.lang.String description) { + this.id = id; + this.cd = cd; + this.description = description; + } + + @Override + public java.lang.Integer getPrimaryKey() { + return id; + } + + /** + * The language ID + * + * PRIMARY KEY + */ + public final java.lang.Integer getId() { + return id; + } + + /** + * The language ISO code + */ + public final java.lang.String getCd() { + return cd; + } + + /** + * The language description + */ + public final java.lang.String getDescription() { + return description; + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/enums/T_658_11.java b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/enums/T_658_11.java new file mode 100644 index 00000000000..30a338e749d --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/enums/T_658_11.java @@ -0,0 +1,46 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle.generatedclasses.test.enums; + +/** + * This class is generated by jOOQ. + */ +public enum T_658_11 implements org.jooq.MasterDataType { + + /** + * A + */ + A__("A "), + + /** + * B + */ + B__("B "), + + /** + * C + */ + C__("C "), + ; + + private final java.lang.String id; + + private T_658_11(java.lang.String id) { + this.id = id; + } + + @Override + public java.lang.String getPrimaryKey() { + return id; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final java.lang.String getId() { + return id; + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/enums/T_658_12.java b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/enums/T_658_12.java new file mode 100644 index 00000000000..7e23202b126 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/enums/T_658_12.java @@ -0,0 +1,55 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle.generatedclasses.test.enums; + +/** + * This class is generated by jOOQ. + */ +public enum T_658_12 implements org.jooq.MasterDataType { + + /** + * A + */ + A__("A ", "A "), + + /** + * B + */ + B__("B ", "B "), + + /** + * C + */ + C__("C ", "C "), + ; + + private final java.lang.String id; + private final java.lang.String cd; + + private T_658_12(java.lang.String id, java.lang.String cd) { + this.id = id; + this.cd = cd; + } + + @Override + public java.lang.String getPrimaryKey() { + return id; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final java.lang.String getId() { + return id; + } + + /** + * An uncommented item + */ + public final java.lang.String getCd() { + return cd; + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/enums/T_658_21.java b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/enums/T_658_21.java new file mode 100644 index 00000000000..c045d98f252 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/enums/T_658_21.java @@ -0,0 +1,46 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle.generatedclasses.test.enums; + +/** + * This class is generated by jOOQ. + */ +public enum T_658_21 implements org.jooq.MasterDataType { + + /** + * 1 + */ + _1(1), + + /** + * 2 + */ + _2(2), + + /** + * 3 + */ + _3(3), + ; + + private final java.lang.Integer id; + + private T_658_21(java.lang.Integer id) { + this.id = id; + } + + @Override + public java.lang.Integer getPrimaryKey() { + return id; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final java.lang.Integer getId() { + return id; + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/enums/T_658_22.java b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/enums/T_658_22.java new file mode 100644 index 00000000000..53cb0d4eacb --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/enums/T_658_22.java @@ -0,0 +1,55 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle.generatedclasses.test.enums; + +/** + * This class is generated by jOOQ. + */ +public enum T_658_22 implements org.jooq.MasterDataType { + + /** + * 1 + */ + _1(1, 1), + + /** + * 2 + */ + _2(2, 2), + + /** + * 3 + */ + _3(3, 3), + ; + + private final java.lang.Integer id; + private final java.lang.Integer cd; + + private T_658_22(java.lang.Integer id, java.lang.Integer cd) { + this.id = id; + this.cd = cd; + } + + @Override + public java.lang.Integer getPrimaryKey() { + return id; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final java.lang.Integer getId() { + return id; + } + + /** + * An uncommented item + */ + public final java.lang.Integer getCd() { + return cd; + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/enums/T_658_31.java b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/enums/T_658_31.java new file mode 100644 index 00000000000..d7f2edf846c --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/enums/T_658_31.java @@ -0,0 +1,46 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle.generatedclasses.test.enums; + +/** + * This class is generated by jOOQ. + */ +public enum T_658_31 implements org.jooq.MasterDataType { + + /** + * 1 + */ + _1(1L), + + /** + * 2 + */ + _2(2L), + + /** + * 3 + */ + _3(3L), + ; + + private final java.lang.Long id; + + private T_658_31(java.lang.Long id) { + this.id = id; + } + + @Override + public java.lang.Long getPrimaryKey() { + return id; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final java.lang.Long getId() { + return id; + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/enums/T_658_32.java b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/enums/T_658_32.java new file mode 100644 index 00000000000..1101b960b4d --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/enums/T_658_32.java @@ -0,0 +1,55 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle.generatedclasses.test.enums; + +/** + * This class is generated by jOOQ. + */ +public enum T_658_32 implements org.jooq.MasterDataType { + + /** + * 1 + */ + _1(1L, 1L), + + /** + * 2 + */ + _2(2L, 2L), + + /** + * 3 + */ + _3(3L, 3L), + ; + + private final java.lang.Long id; + private final java.lang.Long cd; + + private T_658_32(java.lang.Long id, java.lang.Long cd) { + this.id = id; + this.cd = cd; + } + + @Override + public java.lang.Long getPrimaryKey() { + return id; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final java.lang.Long getId() { + return id; + } + + /** + * An uncommented item + */ + public final java.lang.Long getCd() { + return cd; + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/packages/Library.java b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/packages/Library.java new file mode 100644 index 00000000000..b837b1a89cd --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/packages/Library.java @@ -0,0 +1,179 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle.generatedclasses.test.packages; + +/** + * This class is generated by jOOQ. + * + * Convenience access to all stored procedures and functions in LIBRARY + */ +public final class Library extends org.jooq.impl.PackageImpl { + + private static final long serialVersionUID = 1264882467; + + /** + * The singleton instance of TEST.LIBRARY + */ + public static final org.jooq.test.oracle.generatedclasses.test.packages.Library LIBRARY = new org.jooq.test.oracle.generatedclasses.test.packages.Library(); + + /** + * Call TEST.LIBRARY.PKG_F_AUTHOR_EXISTS + * + * @param authorName + * @throws org.jooq.exception.DataAccessException if something went wrong executing the query + */ + public static java.math.BigDecimal pkgFAuthorExists1(org.jooq.Configuration configuration, java.lang.String authorName) { + org.jooq.test.oracle.generatedclasses.test.packages.library.PkgFAuthorExists1 f = new org.jooq.test.oracle.generatedclasses.test.packages.library.PkgFAuthorExists1(); + f.setAuthorName(authorName); + + f.execute(configuration); + return f.getReturnValue(); + } + + /** + * Get TEST.LIBRARY.PKG_F_AUTHOR_EXISTS as a field + * + * @param authorName + */ + public static org.jooq.Field pkgFAuthorExists1(java.lang.String authorName) { + org.jooq.test.oracle.generatedclasses.test.packages.library.PkgFAuthorExists1 f = new org.jooq.test.oracle.generatedclasses.test.packages.library.PkgFAuthorExists1(); + f.setAuthorName(authorName); + + return f.asField(); + } + + /** + * Get TEST.LIBRARY.PKG_F_AUTHOR_EXISTS as a field + * + * @param authorName + */ + public static org.jooq.Field pkgFAuthorExists1(org.jooq.Field authorName) { + org.jooq.test.oracle.generatedclasses.test.packages.library.PkgFAuthorExists1 f = new org.jooq.test.oracle.generatedclasses.test.packages.library.PkgFAuthorExists1(); + f.setAuthorName(authorName); + + return f.asField(); + } + + /** + * Call TEST.LIBRARY.PKG_F_AUTHOR_EXISTS + * + * @param authorName + * @param unused + * @throws org.jooq.exception.DataAccessException if something went wrong executing the query + */ + public static java.math.BigDecimal pkgFAuthorExists2(org.jooq.Configuration configuration, java.lang.String authorName, java.lang.Number unused) { + org.jooq.test.oracle.generatedclasses.test.packages.library.PkgFAuthorExists2 f = new org.jooq.test.oracle.generatedclasses.test.packages.library.PkgFAuthorExists2(); + f.setAuthorName(authorName); + f.setUnused(unused); + + f.execute(configuration); + return f.getReturnValue(); + } + + /** + * Get TEST.LIBRARY.PKG_F_AUTHOR_EXISTS as a field + * + * @param authorName + * @param unused + */ + public static org.jooq.Field pkgFAuthorExists2(java.lang.String authorName, java.lang.Number unused) { + org.jooq.test.oracle.generatedclasses.test.packages.library.PkgFAuthorExists2 f = new org.jooq.test.oracle.generatedclasses.test.packages.library.PkgFAuthorExists2(); + f.setAuthorName(authorName); + f.setUnused(unused); + + return f.asField(); + } + + /** + * Get TEST.LIBRARY.PKG_F_AUTHOR_EXISTS as a field + * + * @param authorName + * @param unused + */ + public static org.jooq.Field pkgFAuthorExists2(org.jooq.Field authorName, org.jooq.Field unused) { + org.jooq.test.oracle.generatedclasses.test.packages.library.PkgFAuthorExists2 f = new org.jooq.test.oracle.generatedclasses.test.packages.library.PkgFAuthorExists2(); + f.setAuthorName(authorName); + f.setUnused(unused); + + return f.asField(); + } + + /** + * Call TEST.LIBRARY.PKG_F_UNUSED + * + * @throws org.jooq.exception.DataAccessException if something went wrong executing the query + */ + public static java.math.BigDecimal pkgFUnused(org.jooq.Configuration configuration) { + org.jooq.test.oracle.generatedclasses.test.packages.library.PkgFUnused f = new org.jooq.test.oracle.generatedclasses.test.packages.library.PkgFUnused(); + + f.execute(configuration); + return f.getReturnValue(); + } + + /** + * Get TEST.LIBRARY.PKG_F_UNUSED as a field + * + */ + public static org.jooq.Field pkgFUnused() { + org.jooq.test.oracle.generatedclasses.test.packages.library.PkgFUnused f = new org.jooq.test.oracle.generatedclasses.test.packages.library.PkgFUnused(); + + return f.asField(); + } + + /** + * Call TEST.LIBRARY.PKG_F378 + * + * @param returnValue OUT parameter + * @param i IN parameter + * @param io IN OUT parameter + * @param o OUT parameter + * @throws org.jooq.exception.DataAccessException if something went wrong executing the query + */ + public static org.jooq.test.oracle.generatedclasses.test.packages.library.PkgF378 pkgF378(org.jooq.Configuration configuration, java.lang.Number i, java.lang.Number io) { + org.jooq.test.oracle.generatedclasses.test.packages.library.PkgF378 p = new org.jooq.test.oracle.generatedclasses.test.packages.library.PkgF378(); + p.setI(i); + p.setIo(io); + + p.execute(configuration); + return p; + } + + /** + * Call TEST.LIBRARY.PKG_P_AUTHOR_EXISTS + * + * @param authorName IN parameter + * @param result OUT parameter + * @throws org.jooq.exception.DataAccessException if something went wrong executing the query + */ + public static java.math.BigDecimal pkgPAuthorExists1(org.jooq.Configuration configuration, java.lang.String authorName) { + org.jooq.test.oracle.generatedclasses.test.packages.library.PkgPAuthorExists1 p = new org.jooq.test.oracle.generatedclasses.test.packages.library.PkgPAuthorExists1(); + p.setAuthorName(authorName); + + p.execute(configuration); + return p.getResult(); + } + + /** + * Call TEST.LIBRARY.PKG_P_AUTHOR_EXISTS + * + * @param authorName IN parameter + * @param result OUT parameter + * @param unused IN OUT parameter + * @throws org.jooq.exception.DataAccessException if something went wrong executing the query + */ + public static org.jooq.test.oracle.generatedclasses.test.packages.library.PkgPAuthorExists2 pkgPAuthorExists2(org.jooq.Configuration configuration, java.lang.String authorName, java.lang.Number unused) { + org.jooq.test.oracle.generatedclasses.test.packages.library.PkgPAuthorExists2 p = new org.jooq.test.oracle.generatedclasses.test.packages.library.PkgPAuthorExists2(); + p.setAuthorName(authorName); + p.setUnused(unused); + + p.execute(configuration); + return p; + } + /** + * No further instances allowed + */ + private Library() { + super("LIBRARY", org.jooq.test.oracle.generatedclasses.test.Test.TEST); + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/packages/LibraryTypes.java b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/packages/LibraryTypes.java new file mode 100644 index 00000000000..cb3496f0996 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/packages/LibraryTypes.java @@ -0,0 +1,25 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle.generatedclasses.test.packages; + +/** + * This class is generated by jOOQ. + * + * Convenience access to all stored procedures and functions in LIBRARY_TYPES + */ +public final class LibraryTypes extends org.jooq.impl.PackageImpl { + + private static final long serialVersionUID = 2025738737; + + /** + * The singleton instance of TEST.LIBRARY_TYPES + */ + public static final org.jooq.test.oracle.generatedclasses.test.packages.LibraryTypes LIBRARY_TYPES = new org.jooq.test.oracle.generatedclasses.test.packages.LibraryTypes(); + /** + * No further instances allowed + */ + private LibraryTypes() { + super("LIBRARY_TYPES", org.jooq.test.oracle.generatedclasses.test.Test.TEST); + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/packages/Library_767PackageTest.java b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/packages/Library_767PackageTest.java new file mode 100644 index 00000000000..329c1ea95c2 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/packages/Library_767PackageTest.java @@ -0,0 +1,47 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle.generatedclasses.test.packages; + +/** + * This class is generated by jOOQ. + * + * Convenience access to all stored procedures and functions in LIBRARY_767_PACKAGE_TEST + */ +public final class Library_767PackageTest extends org.jooq.impl.PackageImpl { + + private static final long serialVersionUID = -1922518932; + + /** + * The singleton instance of TEST.LIBRARY_767_PACKAGE_TEST + */ + public static final org.jooq.test.oracle.generatedclasses.test.packages.Library_767PackageTest LIBRARY_767_PACKAGE_TEST = new org.jooq.test.oracle.generatedclasses.test.packages.Library_767PackageTest(); + + /** + * Call TEST.LIBRARY_767_PACKAGE_TEST.LIBRARY_767_PACKAGE_TEST + * + * @throws org.jooq.exception.DataAccessException if something went wrong executing the query + */ + public static java.math.BigDecimal library_767PackageTest(org.jooq.Configuration configuration) { + org.jooq.test.oracle.generatedclasses.test.packages.library_767_package_test.Library_767PackageTest f = new org.jooq.test.oracle.generatedclasses.test.packages.library_767_package_test.Library_767PackageTest(); + + f.execute(configuration); + return f.getReturnValue(); + } + + /** + * Get TEST.LIBRARY_767_PACKAGE_TEST.LIBRARY_767_PACKAGE_TEST as a field + * + */ + public static org.jooq.Field library_767PackageTest() { + org.jooq.test.oracle.generatedclasses.test.packages.library_767_package_test.Library_767PackageTest f = new org.jooq.test.oracle.generatedclasses.test.packages.library_767_package_test.Library_767PackageTest(); + + return f.asField(); + } + /** + * No further instances allowed + */ + private Library_767PackageTest() { + super("LIBRARY_767_PACKAGE_TEST", org.jooq.test.oracle.generatedclasses.test.Test.TEST); + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/packages/library/PkgF378.java b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/packages/library/PkgF378.java new file mode 100644 index 00000000000..78b1e87559d --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/packages/library/PkgF378.java @@ -0,0 +1,67 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle.generatedclasses.test.packages.library; + +/** + * This class is generated by jOOQ. + */ +public class PkgF378 extends org.jooq.impl.AbstractRoutine { + + private static final long serialVersionUID = -1115353395; + + + /** + * An uncommented item + */ + public static final org.jooq.Parameter RETURN_VALUE = createParameter("RETURN_VALUE", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter I = createParameter("I", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter IO = createParameter("IO", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter O = createParameter("O", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * Create a new routine call instance + */ + public PkgF378() { + super("PKG_F378", org.jooq.test.oracle.generatedclasses.test.Test.TEST, org.jooq.test.oracle.generatedclasses.test.packages.Library.LIBRARY, org.jooq.impl.SQLDataType.NUMERIC); + + setReturnParameter(RETURN_VALUE); + addInParameter(I); + addInOutParameter(IO); + addOutParameter(O); + } + + /** + * Set the I parameter to the routine + */ + public void setI(java.lang.Number value) { + setNumber(I, value); + } + + /** + * Set the IO parameter to the routine + */ + public void setIo(java.lang.Number value) { + setNumber(IO, value); + } + + public java.math.BigDecimal getIo() { + return getValue(IO); + } + + public java.math.BigDecimal getO() { + return getValue(O); + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/packages/library/PkgFAuthorExists1.java b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/packages/library/PkgFAuthorExists1.java new file mode 100644 index 00000000000..0e1e73b7641 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/packages/library/PkgFAuthorExists1.java @@ -0,0 +1,50 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle.generatedclasses.test.packages.library; + +/** + * This class is generated by jOOQ. + */ +public class PkgFAuthorExists1 extends org.jooq.impl.AbstractRoutine { + + private static final long serialVersionUID = 1442872754; + + + /** + * An uncommented item + */ + public static final org.jooq.Parameter RETURN_VALUE = createParameter("RETURN_VALUE", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter AUTHOR_NAME = createParameter("AUTHOR_NAME", org.jooq.impl.SQLDataType.VARCHAR); + + /** + * Create a new routine call instance + */ + public PkgFAuthorExists1() { + super("PKG_F_AUTHOR_EXISTS", org.jooq.test.oracle.generatedclasses.test.Test.TEST, org.jooq.test.oracle.generatedclasses.test.packages.Library.LIBRARY, org.jooq.impl.SQLDataType.NUMERIC); + + setReturnParameter(RETURN_VALUE); + addInParameter(AUTHOR_NAME); + setOverloaded(true); + } + + /** + * Set the AUTHOR_NAME parameter to the routine + */ + public void setAuthorName(java.lang.String value) { + setValue(AUTHOR_NAME, value); + } + + /** + * Set the AUTHOR_NAME parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setAuthorName(org.jooq.Field field) { + setField(AUTHOR_NAME, field); + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/packages/library/PkgFAuthorExists2.java b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/packages/library/PkgFAuthorExists2.java new file mode 100644 index 00000000000..877c1d4e46a --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/packages/library/PkgFAuthorExists2.java @@ -0,0 +1,72 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle.generatedclasses.test.packages.library; + +/** + * This class is generated by jOOQ. + */ +public class PkgFAuthorExists2 extends org.jooq.impl.AbstractRoutine { + + private static final long serialVersionUID = 1642385081; + + + /** + * An uncommented item + */ + public static final org.jooq.Parameter RETURN_VALUE = createParameter("RETURN_VALUE", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter AUTHOR_NAME = createParameter("AUTHOR_NAME", org.jooq.impl.SQLDataType.VARCHAR); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter UNUSED = createParameter("UNUSED", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * Create a new routine call instance + */ + public PkgFAuthorExists2() { + super("PKG_F_AUTHOR_EXISTS", org.jooq.test.oracle.generatedclasses.test.Test.TEST, org.jooq.test.oracle.generatedclasses.test.packages.Library.LIBRARY, org.jooq.impl.SQLDataType.NUMERIC); + + setReturnParameter(RETURN_VALUE); + addInParameter(AUTHOR_NAME); + addInParameter(UNUSED); + setOverloaded(true); + } + + /** + * Set the AUTHOR_NAME parameter to the routine + */ + public void setAuthorName(java.lang.String value) { + setValue(AUTHOR_NAME, value); + } + + /** + * Set the AUTHOR_NAME parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setAuthorName(org.jooq.Field field) { + setField(AUTHOR_NAME, field); + } + + /** + * Set the UNUSED parameter to the routine + */ + public void setUnused(java.lang.Number value) { + setNumber(UNUSED, value); + } + + /** + * Set the UNUSED parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setUnused(org.jooq.Field field) { + setNumber(UNUSED, field); + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/packages/library/PkgFManyParameters.java b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/packages/library/PkgFManyParameters.java new file mode 100644 index 00000000000..68ebaed5898 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/packages/library/PkgFManyParameters.java @@ -0,0 +1,8827 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle.generatedclasses.test.packages.library; + +/** + * This class is generated by jOOQ. + */ +public class PkgFManyParameters extends org.jooq.impl.AbstractRoutine { + + private static final long serialVersionUID = 1175956536; + + + /** + * An uncommented item + */ + public static final org.jooq.Parameter RETURN_VALUE = createParameter("RETURN_VALUE", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F000 = createParameter("F000", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F001 = createParameter("F001", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F002 = createParameter("F002", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F003 = createParameter("F003", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F004 = createParameter("F004", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F005 = createParameter("F005", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F006 = createParameter("F006", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F007 = createParameter("F007", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F008 = createParameter("F008", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F009 = createParameter("F009", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F010 = createParameter("F010", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F011 = createParameter("F011", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F012 = createParameter("F012", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F013 = createParameter("F013", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F014 = createParameter("F014", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F015 = createParameter("F015", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F016 = createParameter("F016", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F017 = createParameter("F017", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F018 = createParameter("F018", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F019 = createParameter("F019", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F020 = createParameter("F020", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F021 = createParameter("F021", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F022 = createParameter("F022", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F023 = createParameter("F023", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F024 = createParameter("F024", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F025 = createParameter("F025", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F026 = createParameter("F026", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F027 = createParameter("F027", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F028 = createParameter("F028", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F029 = createParameter("F029", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F030 = createParameter("F030", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F031 = createParameter("F031", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F032 = createParameter("F032", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F033 = createParameter("F033", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F034 = createParameter("F034", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F035 = createParameter("F035", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F036 = createParameter("F036", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F037 = createParameter("F037", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F038 = createParameter("F038", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F039 = createParameter("F039", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F040 = createParameter("F040", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F041 = createParameter("F041", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F042 = createParameter("F042", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F043 = createParameter("F043", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F044 = createParameter("F044", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F045 = createParameter("F045", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F046 = createParameter("F046", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F047 = createParameter("F047", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F048 = createParameter("F048", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F049 = createParameter("F049", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F050 = createParameter("F050", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F051 = createParameter("F051", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F052 = createParameter("F052", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F053 = createParameter("F053", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F054 = createParameter("F054", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F055 = createParameter("F055", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F056 = createParameter("F056", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F057 = createParameter("F057", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F058 = createParameter("F058", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F059 = createParameter("F059", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F060 = createParameter("F060", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F061 = createParameter("F061", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F062 = createParameter("F062", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F063 = createParameter("F063", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F064 = createParameter("F064", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F065 = createParameter("F065", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F066 = createParameter("F066", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F067 = createParameter("F067", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F068 = createParameter("F068", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F069 = createParameter("F069", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F070 = createParameter("F070", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F071 = createParameter("F071", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F072 = createParameter("F072", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F073 = createParameter("F073", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F074 = createParameter("F074", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F075 = createParameter("F075", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F076 = createParameter("F076", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F077 = createParameter("F077", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F078 = createParameter("F078", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F079 = createParameter("F079", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F080 = createParameter("F080", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F081 = createParameter("F081", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F082 = createParameter("F082", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F083 = createParameter("F083", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F084 = createParameter("F084", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F085 = createParameter("F085", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F086 = createParameter("F086", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F087 = createParameter("F087", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F088 = createParameter("F088", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F089 = createParameter("F089", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F090 = createParameter("F090", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F091 = createParameter("F091", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F092 = createParameter("F092", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F093 = createParameter("F093", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F094 = createParameter("F094", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F095 = createParameter("F095", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F096 = createParameter("F096", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F097 = createParameter("F097", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F098 = createParameter("F098", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F099 = createParameter("F099", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F100 = createParameter("F100", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F101 = createParameter("F101", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F102 = createParameter("F102", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F103 = createParameter("F103", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F104 = createParameter("F104", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F105 = createParameter("F105", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F106 = createParameter("F106", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F107 = createParameter("F107", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F108 = createParameter("F108", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F109 = createParameter("F109", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F110 = createParameter("F110", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F111 = createParameter("F111", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F112 = createParameter("F112", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F113 = createParameter("F113", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F114 = createParameter("F114", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F115 = createParameter("F115", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F116 = createParameter("F116", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F117 = createParameter("F117", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F118 = createParameter("F118", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F119 = createParameter("F119", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F120 = createParameter("F120", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F121 = createParameter("F121", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F122 = createParameter("F122", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F123 = createParameter("F123", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F124 = createParameter("F124", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F125 = createParameter("F125", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F126 = createParameter("F126", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F127 = createParameter("F127", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F128 = createParameter("F128", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F129 = createParameter("F129", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F130 = createParameter("F130", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F131 = createParameter("F131", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F132 = createParameter("F132", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F133 = createParameter("F133", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F134 = createParameter("F134", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F135 = createParameter("F135", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F136 = createParameter("F136", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F137 = createParameter("F137", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F138 = createParameter("F138", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F139 = createParameter("F139", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F140 = createParameter("F140", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F141 = createParameter("F141", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F142 = createParameter("F142", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F143 = createParameter("F143", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F144 = createParameter("F144", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F145 = createParameter("F145", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F146 = createParameter("F146", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F147 = createParameter("F147", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F148 = createParameter("F148", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F149 = createParameter("F149", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F150 = createParameter("F150", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F151 = createParameter("F151", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F152 = createParameter("F152", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F153 = createParameter("F153", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F154 = createParameter("F154", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F155 = createParameter("F155", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F156 = createParameter("F156", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F157 = createParameter("F157", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F158 = createParameter("F158", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F159 = createParameter("F159", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F160 = createParameter("F160", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F161 = createParameter("F161", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F162 = createParameter("F162", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F163 = createParameter("F163", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F164 = createParameter("F164", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F165 = createParameter("F165", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F166 = createParameter("F166", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F167 = createParameter("F167", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F168 = createParameter("F168", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F169 = createParameter("F169", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F170 = createParameter("F170", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F171 = createParameter("F171", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F172 = createParameter("F172", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F173 = createParameter("F173", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F174 = createParameter("F174", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F175 = createParameter("F175", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F176 = createParameter("F176", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F177 = createParameter("F177", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F178 = createParameter("F178", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F179 = createParameter("F179", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F180 = createParameter("F180", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F181 = createParameter("F181", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F182 = createParameter("F182", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F183 = createParameter("F183", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F184 = createParameter("F184", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F185 = createParameter("F185", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F186 = createParameter("F186", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F187 = createParameter("F187", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F188 = createParameter("F188", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F189 = createParameter("F189", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F190 = createParameter("F190", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F191 = createParameter("F191", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F192 = createParameter("F192", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F193 = createParameter("F193", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F194 = createParameter("F194", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F195 = createParameter("F195", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F196 = createParameter("F196", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F197 = createParameter("F197", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F198 = createParameter("F198", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F199 = createParameter("F199", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F200 = createParameter("F200", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F201 = createParameter("F201", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F202 = createParameter("F202", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F203 = createParameter("F203", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F204 = createParameter("F204", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F205 = createParameter("F205", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F206 = createParameter("F206", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F207 = createParameter("F207", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F208 = createParameter("F208", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F209 = createParameter("F209", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F210 = createParameter("F210", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F211 = createParameter("F211", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F212 = createParameter("F212", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F213 = createParameter("F213", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F214 = createParameter("F214", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F215 = createParameter("F215", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F216 = createParameter("F216", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F217 = createParameter("F217", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F218 = createParameter("F218", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F219 = createParameter("F219", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F220 = createParameter("F220", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F221 = createParameter("F221", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F222 = createParameter("F222", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F223 = createParameter("F223", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F224 = createParameter("F224", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F225 = createParameter("F225", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F226 = createParameter("F226", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F227 = createParameter("F227", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F228 = createParameter("F228", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F229 = createParameter("F229", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F230 = createParameter("F230", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F231 = createParameter("F231", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F232 = createParameter("F232", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F233 = createParameter("F233", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F234 = createParameter("F234", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F235 = createParameter("F235", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F236 = createParameter("F236", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F237 = createParameter("F237", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F238 = createParameter("F238", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F239 = createParameter("F239", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F240 = createParameter("F240", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F241 = createParameter("F241", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F242 = createParameter("F242", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F243 = createParameter("F243", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F244 = createParameter("F244", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F245 = createParameter("F245", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F246 = createParameter("F246", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F247 = createParameter("F247", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F248 = createParameter("F248", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F249 = createParameter("F249", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F250 = createParameter("F250", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F251 = createParameter("F251", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F252 = createParameter("F252", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F253 = createParameter("F253", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F254 = createParameter("F254", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F255 = createParameter("F255", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F256 = createParameter("F256", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F257 = createParameter("F257", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F258 = createParameter("F258", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F259 = createParameter("F259", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F260 = createParameter("F260", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F261 = createParameter("F261", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F262 = createParameter("F262", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F263 = createParameter("F263", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F264 = createParameter("F264", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F265 = createParameter("F265", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F266 = createParameter("F266", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F267 = createParameter("F267", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F268 = createParameter("F268", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F269 = createParameter("F269", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F270 = createParameter("F270", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F271 = createParameter("F271", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F272 = createParameter("F272", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F273 = createParameter("F273", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F274 = createParameter("F274", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F275 = createParameter("F275", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F276 = createParameter("F276", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F277 = createParameter("F277", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F278 = createParameter("F278", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F279 = createParameter("F279", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F280 = createParameter("F280", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F281 = createParameter("F281", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F282 = createParameter("F282", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F283 = createParameter("F283", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F284 = createParameter("F284", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F285 = createParameter("F285", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F286 = createParameter("F286", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F287 = createParameter("F287", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F288 = createParameter("F288", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F289 = createParameter("F289", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F290 = createParameter("F290", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F291 = createParameter("F291", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F292 = createParameter("F292", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F293 = createParameter("F293", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F294 = createParameter("F294", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F295 = createParameter("F295", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F296 = createParameter("F296", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F297 = createParameter("F297", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F298 = createParameter("F298", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F299 = createParameter("F299", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F300 = createParameter("F300", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F301 = createParameter("F301", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F302 = createParameter("F302", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F303 = createParameter("F303", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F304 = createParameter("F304", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F305 = createParameter("F305", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F306 = createParameter("F306", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F307 = createParameter("F307", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F308 = createParameter("F308", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F309 = createParameter("F309", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F310 = createParameter("F310", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F311 = createParameter("F311", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F312 = createParameter("F312", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F313 = createParameter("F313", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F314 = createParameter("F314", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F315 = createParameter("F315", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F316 = createParameter("F316", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F317 = createParameter("F317", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F318 = createParameter("F318", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F319 = createParameter("F319", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F320 = createParameter("F320", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F321 = createParameter("F321", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F322 = createParameter("F322", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F323 = createParameter("F323", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F324 = createParameter("F324", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F325 = createParameter("F325", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F326 = createParameter("F326", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F327 = createParameter("F327", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F328 = createParameter("F328", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F329 = createParameter("F329", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F330 = createParameter("F330", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F331 = createParameter("F331", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F332 = createParameter("F332", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F333 = createParameter("F333", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F334 = createParameter("F334", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F335 = createParameter("F335", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F336 = createParameter("F336", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F337 = createParameter("F337", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F338 = createParameter("F338", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F339 = createParameter("F339", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F340 = createParameter("F340", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F341 = createParameter("F341", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F342 = createParameter("F342", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F343 = createParameter("F343", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F344 = createParameter("F344", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F345 = createParameter("F345", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F346 = createParameter("F346", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F347 = createParameter("F347", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F348 = createParameter("F348", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F349 = createParameter("F349", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F350 = createParameter("F350", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F351 = createParameter("F351", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F352 = createParameter("F352", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F353 = createParameter("F353", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F354 = createParameter("F354", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F355 = createParameter("F355", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F356 = createParameter("F356", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F357 = createParameter("F357", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F358 = createParameter("F358", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F359 = createParameter("F359", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F360 = createParameter("F360", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F361 = createParameter("F361", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F362 = createParameter("F362", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F363 = createParameter("F363", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F364 = createParameter("F364", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F365 = createParameter("F365", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F366 = createParameter("F366", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F367 = createParameter("F367", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F368 = createParameter("F368", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F369 = createParameter("F369", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F370 = createParameter("F370", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F371 = createParameter("F371", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F372 = createParameter("F372", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F373 = createParameter("F373", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F374 = createParameter("F374", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F375 = createParameter("F375", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F376 = createParameter("F376", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F377 = createParameter("F377", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F378 = createParameter("F378", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F379 = createParameter("F379", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F380 = createParameter("F380", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F381 = createParameter("F381", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F382 = createParameter("F382", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F383 = createParameter("F383", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F384 = createParameter("F384", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F385 = createParameter("F385", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F386 = createParameter("F386", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F387 = createParameter("F387", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F388 = createParameter("F388", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F389 = createParameter("F389", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F390 = createParameter("F390", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F391 = createParameter("F391", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F392 = createParameter("F392", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F393 = createParameter("F393", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F394 = createParameter("F394", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F395 = createParameter("F395", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F396 = createParameter("F396", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F397 = createParameter("F397", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F398 = createParameter("F398", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F399 = createParameter("F399", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * Create a new routine call instance + */ + public PkgFManyParameters() { + super("PKG_F_MANY_PARAMETERS", org.jooq.test.oracle.generatedclasses.test.Test.TEST, org.jooq.test.oracle.generatedclasses.test.packages.Library.LIBRARY, org.jooq.impl.SQLDataType.NUMERIC); + + setReturnParameter(RETURN_VALUE); + addInParameter(F000); + addInParameter(F001); + addInParameter(F002); + addInParameter(F003); + addInParameter(F004); + addInParameter(F005); + addInParameter(F006); + addInParameter(F007); + addInParameter(F008); + addInParameter(F009); + addInParameter(F010); + addInParameter(F011); + addInParameter(F012); + addInParameter(F013); + addInParameter(F014); + addInParameter(F015); + addInParameter(F016); + addInParameter(F017); + addInParameter(F018); + addInParameter(F019); + addInParameter(F020); + addInParameter(F021); + addInParameter(F022); + addInParameter(F023); + addInParameter(F024); + addInParameter(F025); + addInParameter(F026); + addInParameter(F027); + addInParameter(F028); + addInParameter(F029); + addInParameter(F030); + addInParameter(F031); + addInParameter(F032); + addInParameter(F033); + addInParameter(F034); + addInParameter(F035); + addInParameter(F036); + addInParameter(F037); + addInParameter(F038); + addInParameter(F039); + addInParameter(F040); + addInParameter(F041); + addInParameter(F042); + addInParameter(F043); + addInParameter(F044); + addInParameter(F045); + addInParameter(F046); + addInParameter(F047); + addInParameter(F048); + addInParameter(F049); + addInParameter(F050); + addInParameter(F051); + addInParameter(F052); + addInParameter(F053); + addInParameter(F054); + addInParameter(F055); + addInParameter(F056); + addInParameter(F057); + addInParameter(F058); + addInParameter(F059); + addInParameter(F060); + addInParameter(F061); + addInParameter(F062); + addInParameter(F063); + addInParameter(F064); + addInParameter(F065); + addInParameter(F066); + addInParameter(F067); + addInParameter(F068); + addInParameter(F069); + addInParameter(F070); + addInParameter(F071); + addInParameter(F072); + addInParameter(F073); + addInParameter(F074); + addInParameter(F075); + addInParameter(F076); + addInParameter(F077); + addInParameter(F078); + addInParameter(F079); + addInParameter(F080); + addInParameter(F081); + addInParameter(F082); + addInParameter(F083); + addInParameter(F084); + addInParameter(F085); + addInParameter(F086); + addInParameter(F087); + addInParameter(F088); + addInParameter(F089); + addInParameter(F090); + addInParameter(F091); + addInParameter(F092); + addInParameter(F093); + addInParameter(F094); + addInParameter(F095); + addInParameter(F096); + addInParameter(F097); + addInParameter(F098); + addInParameter(F099); + addInParameter(F100); + addInParameter(F101); + addInParameter(F102); + addInParameter(F103); + addInParameter(F104); + addInParameter(F105); + addInParameter(F106); + addInParameter(F107); + addInParameter(F108); + addInParameter(F109); + addInParameter(F110); + addInParameter(F111); + addInParameter(F112); + addInParameter(F113); + addInParameter(F114); + addInParameter(F115); + addInParameter(F116); + addInParameter(F117); + addInParameter(F118); + addInParameter(F119); + addInParameter(F120); + addInParameter(F121); + addInParameter(F122); + addInParameter(F123); + addInParameter(F124); + addInParameter(F125); + addInParameter(F126); + addInParameter(F127); + addInParameter(F128); + addInParameter(F129); + addInParameter(F130); + addInParameter(F131); + addInParameter(F132); + addInParameter(F133); + addInParameter(F134); + addInParameter(F135); + addInParameter(F136); + addInParameter(F137); + addInParameter(F138); + addInParameter(F139); + addInParameter(F140); + addInParameter(F141); + addInParameter(F142); + addInParameter(F143); + addInParameter(F144); + addInParameter(F145); + addInParameter(F146); + addInParameter(F147); + addInParameter(F148); + addInParameter(F149); + addInParameter(F150); + addInParameter(F151); + addInParameter(F152); + addInParameter(F153); + addInParameter(F154); + addInParameter(F155); + addInParameter(F156); + addInParameter(F157); + addInParameter(F158); + addInParameter(F159); + addInParameter(F160); + addInParameter(F161); + addInParameter(F162); + addInParameter(F163); + addInParameter(F164); + addInParameter(F165); + addInParameter(F166); + addInParameter(F167); + addInParameter(F168); + addInParameter(F169); + addInParameter(F170); + addInParameter(F171); + addInParameter(F172); + addInParameter(F173); + addInParameter(F174); + addInParameter(F175); + addInParameter(F176); + addInParameter(F177); + addInParameter(F178); + addInParameter(F179); + addInParameter(F180); + addInParameter(F181); + addInParameter(F182); + addInParameter(F183); + addInParameter(F184); + addInParameter(F185); + addInParameter(F186); + addInParameter(F187); + addInParameter(F188); + addInParameter(F189); + addInParameter(F190); + addInParameter(F191); + addInParameter(F192); + addInParameter(F193); + addInParameter(F194); + addInParameter(F195); + addInParameter(F196); + addInParameter(F197); + addInParameter(F198); + addInParameter(F199); + addInParameter(F200); + addInParameter(F201); + addInParameter(F202); + addInParameter(F203); + addInParameter(F204); + addInParameter(F205); + addInParameter(F206); + addInParameter(F207); + addInParameter(F208); + addInParameter(F209); + addInParameter(F210); + addInParameter(F211); + addInParameter(F212); + addInParameter(F213); + addInParameter(F214); + addInParameter(F215); + addInParameter(F216); + addInParameter(F217); + addInParameter(F218); + addInParameter(F219); + addInParameter(F220); + addInParameter(F221); + addInParameter(F222); + addInParameter(F223); + addInParameter(F224); + addInParameter(F225); + addInParameter(F226); + addInParameter(F227); + addInParameter(F228); + addInParameter(F229); + addInParameter(F230); + addInParameter(F231); + addInParameter(F232); + addInParameter(F233); + addInParameter(F234); + addInParameter(F235); + addInParameter(F236); + addInParameter(F237); + addInParameter(F238); + addInParameter(F239); + addInParameter(F240); + addInParameter(F241); + addInParameter(F242); + addInParameter(F243); + addInParameter(F244); + addInParameter(F245); + addInParameter(F246); + addInParameter(F247); + addInParameter(F248); + addInParameter(F249); + addInParameter(F250); + addInParameter(F251); + addInParameter(F252); + addInParameter(F253); + addInParameter(F254); + addInParameter(F255); + addInParameter(F256); + addInParameter(F257); + addInParameter(F258); + addInParameter(F259); + addInParameter(F260); + addInParameter(F261); + addInParameter(F262); + addInParameter(F263); + addInParameter(F264); + addInParameter(F265); + addInParameter(F266); + addInParameter(F267); + addInParameter(F268); + addInParameter(F269); + addInParameter(F270); + addInParameter(F271); + addInParameter(F272); + addInParameter(F273); + addInParameter(F274); + addInParameter(F275); + addInParameter(F276); + addInParameter(F277); + addInParameter(F278); + addInParameter(F279); + addInParameter(F280); + addInParameter(F281); + addInParameter(F282); + addInParameter(F283); + addInParameter(F284); + addInParameter(F285); + addInParameter(F286); + addInParameter(F287); + addInParameter(F288); + addInParameter(F289); + addInParameter(F290); + addInParameter(F291); + addInParameter(F292); + addInParameter(F293); + addInParameter(F294); + addInParameter(F295); + addInParameter(F296); + addInParameter(F297); + addInParameter(F298); + addInParameter(F299); + addInParameter(F300); + addInParameter(F301); + addInParameter(F302); + addInParameter(F303); + addInParameter(F304); + addInParameter(F305); + addInParameter(F306); + addInParameter(F307); + addInParameter(F308); + addInParameter(F309); + addInParameter(F310); + addInParameter(F311); + addInParameter(F312); + addInParameter(F313); + addInParameter(F314); + addInParameter(F315); + addInParameter(F316); + addInParameter(F317); + addInParameter(F318); + addInParameter(F319); + addInParameter(F320); + addInParameter(F321); + addInParameter(F322); + addInParameter(F323); + addInParameter(F324); + addInParameter(F325); + addInParameter(F326); + addInParameter(F327); + addInParameter(F328); + addInParameter(F329); + addInParameter(F330); + addInParameter(F331); + addInParameter(F332); + addInParameter(F333); + addInParameter(F334); + addInParameter(F335); + addInParameter(F336); + addInParameter(F337); + addInParameter(F338); + addInParameter(F339); + addInParameter(F340); + addInParameter(F341); + addInParameter(F342); + addInParameter(F343); + addInParameter(F344); + addInParameter(F345); + addInParameter(F346); + addInParameter(F347); + addInParameter(F348); + addInParameter(F349); + addInParameter(F350); + addInParameter(F351); + addInParameter(F352); + addInParameter(F353); + addInParameter(F354); + addInParameter(F355); + addInParameter(F356); + addInParameter(F357); + addInParameter(F358); + addInParameter(F359); + addInParameter(F360); + addInParameter(F361); + addInParameter(F362); + addInParameter(F363); + addInParameter(F364); + addInParameter(F365); + addInParameter(F366); + addInParameter(F367); + addInParameter(F368); + addInParameter(F369); + addInParameter(F370); + addInParameter(F371); + addInParameter(F372); + addInParameter(F373); + addInParameter(F374); + addInParameter(F375); + addInParameter(F376); + addInParameter(F377); + addInParameter(F378); + addInParameter(F379); + addInParameter(F380); + addInParameter(F381); + addInParameter(F382); + addInParameter(F383); + addInParameter(F384); + addInParameter(F385); + addInParameter(F386); + addInParameter(F387); + addInParameter(F388); + addInParameter(F389); + addInParameter(F390); + addInParameter(F391); + addInParameter(F392); + addInParameter(F393); + addInParameter(F394); + addInParameter(F395); + addInParameter(F396); + addInParameter(F397); + addInParameter(F398); + addInParameter(F399); + } + + /** + * Set the F000 parameter to the routine + */ + public void setF000(java.lang.Number value) { + setNumber(F000, value); + } + + /** + * Set the F000 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF000(org.jooq.Field field) { + setNumber(F000, field); + } + + /** + * Set the F001 parameter to the routine + */ + public void setF001(java.lang.Number value) { + setNumber(F001, value); + } + + /** + * Set the F001 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF001(org.jooq.Field field) { + setNumber(F001, field); + } + + /** + * Set the F002 parameter to the routine + */ + public void setF002(java.lang.Number value) { + setNumber(F002, value); + } + + /** + * Set the F002 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF002(org.jooq.Field field) { + setNumber(F002, field); + } + + /** + * Set the F003 parameter to the routine + */ + public void setF003(java.lang.Number value) { + setNumber(F003, value); + } + + /** + * Set the F003 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF003(org.jooq.Field field) { + setNumber(F003, field); + } + + /** + * Set the F004 parameter to the routine + */ + public void setF004(java.lang.Number value) { + setNumber(F004, value); + } + + /** + * Set the F004 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF004(org.jooq.Field field) { + setNumber(F004, field); + } + + /** + * Set the F005 parameter to the routine + */ + public void setF005(java.lang.Number value) { + setNumber(F005, value); + } + + /** + * Set the F005 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF005(org.jooq.Field field) { + setNumber(F005, field); + } + + /** + * Set the F006 parameter to the routine + */ + public void setF006(java.lang.Number value) { + setNumber(F006, value); + } + + /** + * Set the F006 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF006(org.jooq.Field field) { + setNumber(F006, field); + } + + /** + * Set the F007 parameter to the routine + */ + public void setF007(java.lang.Number value) { + setNumber(F007, value); + } + + /** + * Set the F007 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF007(org.jooq.Field field) { + setNumber(F007, field); + } + + /** + * Set the F008 parameter to the routine + */ + public void setF008(java.lang.Number value) { + setNumber(F008, value); + } + + /** + * Set the F008 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF008(org.jooq.Field field) { + setNumber(F008, field); + } + + /** + * Set the F009 parameter to the routine + */ + public void setF009(java.lang.Number value) { + setNumber(F009, value); + } + + /** + * Set the F009 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF009(org.jooq.Field field) { + setNumber(F009, field); + } + + /** + * Set the F010 parameter to the routine + */ + public void setF010(java.lang.Number value) { + setNumber(F010, value); + } + + /** + * Set the F010 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF010(org.jooq.Field field) { + setNumber(F010, field); + } + + /** + * Set the F011 parameter to the routine + */ + public void setF011(java.lang.Number value) { + setNumber(F011, value); + } + + /** + * Set the F011 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF011(org.jooq.Field field) { + setNumber(F011, field); + } + + /** + * Set the F012 parameter to the routine + */ + public void setF012(java.lang.Number value) { + setNumber(F012, value); + } + + /** + * Set the F012 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF012(org.jooq.Field field) { + setNumber(F012, field); + } + + /** + * Set the F013 parameter to the routine + */ + public void setF013(java.lang.Number value) { + setNumber(F013, value); + } + + /** + * Set the F013 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF013(org.jooq.Field field) { + setNumber(F013, field); + } + + /** + * Set the F014 parameter to the routine + */ + public void setF014(java.lang.Number value) { + setNumber(F014, value); + } + + /** + * Set the F014 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF014(org.jooq.Field field) { + setNumber(F014, field); + } + + /** + * Set the F015 parameter to the routine + */ + public void setF015(java.lang.Number value) { + setNumber(F015, value); + } + + /** + * Set the F015 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF015(org.jooq.Field field) { + setNumber(F015, field); + } + + /** + * Set the F016 parameter to the routine + */ + public void setF016(java.lang.Number value) { + setNumber(F016, value); + } + + /** + * Set the F016 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF016(org.jooq.Field field) { + setNumber(F016, field); + } + + /** + * Set the F017 parameter to the routine + */ + public void setF017(java.lang.Number value) { + setNumber(F017, value); + } + + /** + * Set the F017 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF017(org.jooq.Field field) { + setNumber(F017, field); + } + + /** + * Set the F018 parameter to the routine + */ + public void setF018(java.lang.Number value) { + setNumber(F018, value); + } + + /** + * Set the F018 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF018(org.jooq.Field field) { + setNumber(F018, field); + } + + /** + * Set the F019 parameter to the routine + */ + public void setF019(java.lang.Number value) { + setNumber(F019, value); + } + + /** + * Set the F019 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF019(org.jooq.Field field) { + setNumber(F019, field); + } + + /** + * Set the F020 parameter to the routine + */ + public void setF020(java.lang.Number value) { + setNumber(F020, value); + } + + /** + * Set the F020 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF020(org.jooq.Field field) { + setNumber(F020, field); + } + + /** + * Set the F021 parameter to the routine + */ + public void setF021(java.lang.Number value) { + setNumber(F021, value); + } + + /** + * Set the F021 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF021(org.jooq.Field field) { + setNumber(F021, field); + } + + /** + * Set the F022 parameter to the routine + */ + public void setF022(java.lang.Number value) { + setNumber(F022, value); + } + + /** + * Set the F022 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF022(org.jooq.Field field) { + setNumber(F022, field); + } + + /** + * Set the F023 parameter to the routine + */ + public void setF023(java.lang.Number value) { + setNumber(F023, value); + } + + /** + * Set the F023 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF023(org.jooq.Field field) { + setNumber(F023, field); + } + + /** + * Set the F024 parameter to the routine + */ + public void setF024(java.lang.Number value) { + setNumber(F024, value); + } + + /** + * Set the F024 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF024(org.jooq.Field field) { + setNumber(F024, field); + } + + /** + * Set the F025 parameter to the routine + */ + public void setF025(java.lang.Number value) { + setNumber(F025, value); + } + + /** + * Set the F025 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF025(org.jooq.Field field) { + setNumber(F025, field); + } + + /** + * Set the F026 parameter to the routine + */ + public void setF026(java.lang.Number value) { + setNumber(F026, value); + } + + /** + * Set the F026 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF026(org.jooq.Field field) { + setNumber(F026, field); + } + + /** + * Set the F027 parameter to the routine + */ + public void setF027(java.lang.Number value) { + setNumber(F027, value); + } + + /** + * Set the F027 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF027(org.jooq.Field field) { + setNumber(F027, field); + } + + /** + * Set the F028 parameter to the routine + */ + public void setF028(java.lang.Number value) { + setNumber(F028, value); + } + + /** + * Set the F028 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF028(org.jooq.Field field) { + setNumber(F028, field); + } + + /** + * Set the F029 parameter to the routine + */ + public void setF029(java.lang.Number value) { + setNumber(F029, value); + } + + /** + * Set the F029 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF029(org.jooq.Field field) { + setNumber(F029, field); + } + + /** + * Set the F030 parameter to the routine + */ + public void setF030(java.lang.Number value) { + setNumber(F030, value); + } + + /** + * Set the F030 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF030(org.jooq.Field field) { + setNumber(F030, field); + } + + /** + * Set the F031 parameter to the routine + */ + public void setF031(java.lang.Number value) { + setNumber(F031, value); + } + + /** + * Set the F031 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF031(org.jooq.Field field) { + setNumber(F031, field); + } + + /** + * Set the F032 parameter to the routine + */ + public void setF032(java.lang.Number value) { + setNumber(F032, value); + } + + /** + * Set the F032 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF032(org.jooq.Field field) { + setNumber(F032, field); + } + + /** + * Set the F033 parameter to the routine + */ + public void setF033(java.lang.Number value) { + setNumber(F033, value); + } + + /** + * Set the F033 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF033(org.jooq.Field field) { + setNumber(F033, field); + } + + /** + * Set the F034 parameter to the routine + */ + public void setF034(java.lang.Number value) { + setNumber(F034, value); + } + + /** + * Set the F034 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF034(org.jooq.Field field) { + setNumber(F034, field); + } + + /** + * Set the F035 parameter to the routine + */ + public void setF035(java.lang.Number value) { + setNumber(F035, value); + } + + /** + * Set the F035 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF035(org.jooq.Field field) { + setNumber(F035, field); + } + + /** + * Set the F036 parameter to the routine + */ + public void setF036(java.lang.Number value) { + setNumber(F036, value); + } + + /** + * Set the F036 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF036(org.jooq.Field field) { + setNumber(F036, field); + } + + /** + * Set the F037 parameter to the routine + */ + public void setF037(java.lang.Number value) { + setNumber(F037, value); + } + + /** + * Set the F037 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF037(org.jooq.Field field) { + setNumber(F037, field); + } + + /** + * Set the F038 parameter to the routine + */ + public void setF038(java.lang.Number value) { + setNumber(F038, value); + } + + /** + * Set the F038 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF038(org.jooq.Field field) { + setNumber(F038, field); + } + + /** + * Set the F039 parameter to the routine + */ + public void setF039(java.lang.Number value) { + setNumber(F039, value); + } + + /** + * Set the F039 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF039(org.jooq.Field field) { + setNumber(F039, field); + } + + /** + * Set the F040 parameter to the routine + */ + public void setF040(java.lang.Number value) { + setNumber(F040, value); + } + + /** + * Set the F040 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF040(org.jooq.Field field) { + setNumber(F040, field); + } + + /** + * Set the F041 parameter to the routine + */ + public void setF041(java.lang.Number value) { + setNumber(F041, value); + } + + /** + * Set the F041 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF041(org.jooq.Field field) { + setNumber(F041, field); + } + + /** + * Set the F042 parameter to the routine + */ + public void setF042(java.lang.Number value) { + setNumber(F042, value); + } + + /** + * Set the F042 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF042(org.jooq.Field field) { + setNumber(F042, field); + } + + /** + * Set the F043 parameter to the routine + */ + public void setF043(java.lang.Number value) { + setNumber(F043, value); + } + + /** + * Set the F043 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF043(org.jooq.Field field) { + setNumber(F043, field); + } + + /** + * Set the F044 parameter to the routine + */ + public void setF044(java.lang.Number value) { + setNumber(F044, value); + } + + /** + * Set the F044 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF044(org.jooq.Field field) { + setNumber(F044, field); + } + + /** + * Set the F045 parameter to the routine + */ + public void setF045(java.lang.Number value) { + setNumber(F045, value); + } + + /** + * Set the F045 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF045(org.jooq.Field field) { + setNumber(F045, field); + } + + /** + * Set the F046 parameter to the routine + */ + public void setF046(java.lang.Number value) { + setNumber(F046, value); + } + + /** + * Set the F046 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF046(org.jooq.Field field) { + setNumber(F046, field); + } + + /** + * Set the F047 parameter to the routine + */ + public void setF047(java.lang.Number value) { + setNumber(F047, value); + } + + /** + * Set the F047 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF047(org.jooq.Field field) { + setNumber(F047, field); + } + + /** + * Set the F048 parameter to the routine + */ + public void setF048(java.lang.Number value) { + setNumber(F048, value); + } + + /** + * Set the F048 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF048(org.jooq.Field field) { + setNumber(F048, field); + } + + /** + * Set the F049 parameter to the routine + */ + public void setF049(java.lang.Number value) { + setNumber(F049, value); + } + + /** + * Set the F049 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF049(org.jooq.Field field) { + setNumber(F049, field); + } + + /** + * Set the F050 parameter to the routine + */ + public void setF050(java.lang.Number value) { + setNumber(F050, value); + } + + /** + * Set the F050 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF050(org.jooq.Field field) { + setNumber(F050, field); + } + + /** + * Set the F051 parameter to the routine + */ + public void setF051(java.lang.Number value) { + setNumber(F051, value); + } + + /** + * Set the F051 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF051(org.jooq.Field field) { + setNumber(F051, field); + } + + /** + * Set the F052 parameter to the routine + */ + public void setF052(java.lang.Number value) { + setNumber(F052, value); + } + + /** + * Set the F052 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF052(org.jooq.Field field) { + setNumber(F052, field); + } + + /** + * Set the F053 parameter to the routine + */ + public void setF053(java.lang.Number value) { + setNumber(F053, value); + } + + /** + * Set the F053 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF053(org.jooq.Field field) { + setNumber(F053, field); + } + + /** + * Set the F054 parameter to the routine + */ + public void setF054(java.lang.Number value) { + setNumber(F054, value); + } + + /** + * Set the F054 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF054(org.jooq.Field field) { + setNumber(F054, field); + } + + /** + * Set the F055 parameter to the routine + */ + public void setF055(java.lang.Number value) { + setNumber(F055, value); + } + + /** + * Set the F055 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF055(org.jooq.Field field) { + setNumber(F055, field); + } + + /** + * Set the F056 parameter to the routine + */ + public void setF056(java.lang.Number value) { + setNumber(F056, value); + } + + /** + * Set the F056 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF056(org.jooq.Field field) { + setNumber(F056, field); + } + + /** + * Set the F057 parameter to the routine + */ + public void setF057(java.lang.Number value) { + setNumber(F057, value); + } + + /** + * Set the F057 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF057(org.jooq.Field field) { + setNumber(F057, field); + } + + /** + * Set the F058 parameter to the routine + */ + public void setF058(java.lang.Number value) { + setNumber(F058, value); + } + + /** + * Set the F058 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF058(org.jooq.Field field) { + setNumber(F058, field); + } + + /** + * Set the F059 parameter to the routine + */ + public void setF059(java.lang.Number value) { + setNumber(F059, value); + } + + /** + * Set the F059 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF059(org.jooq.Field field) { + setNumber(F059, field); + } + + /** + * Set the F060 parameter to the routine + */ + public void setF060(java.lang.Number value) { + setNumber(F060, value); + } + + /** + * Set the F060 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF060(org.jooq.Field field) { + setNumber(F060, field); + } + + /** + * Set the F061 parameter to the routine + */ + public void setF061(java.lang.Number value) { + setNumber(F061, value); + } + + /** + * Set the F061 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF061(org.jooq.Field field) { + setNumber(F061, field); + } + + /** + * Set the F062 parameter to the routine + */ + public void setF062(java.lang.Number value) { + setNumber(F062, value); + } + + /** + * Set the F062 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF062(org.jooq.Field field) { + setNumber(F062, field); + } + + /** + * Set the F063 parameter to the routine + */ + public void setF063(java.lang.Number value) { + setNumber(F063, value); + } + + /** + * Set the F063 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF063(org.jooq.Field field) { + setNumber(F063, field); + } + + /** + * Set the F064 parameter to the routine + */ + public void setF064(java.lang.Number value) { + setNumber(F064, value); + } + + /** + * Set the F064 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF064(org.jooq.Field field) { + setNumber(F064, field); + } + + /** + * Set the F065 parameter to the routine + */ + public void setF065(java.lang.Number value) { + setNumber(F065, value); + } + + /** + * Set the F065 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF065(org.jooq.Field field) { + setNumber(F065, field); + } + + /** + * Set the F066 parameter to the routine + */ + public void setF066(java.lang.Number value) { + setNumber(F066, value); + } + + /** + * Set the F066 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF066(org.jooq.Field field) { + setNumber(F066, field); + } + + /** + * Set the F067 parameter to the routine + */ + public void setF067(java.lang.Number value) { + setNumber(F067, value); + } + + /** + * Set the F067 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF067(org.jooq.Field field) { + setNumber(F067, field); + } + + /** + * Set the F068 parameter to the routine + */ + public void setF068(java.lang.Number value) { + setNumber(F068, value); + } + + /** + * Set the F068 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF068(org.jooq.Field field) { + setNumber(F068, field); + } + + /** + * Set the F069 parameter to the routine + */ + public void setF069(java.lang.Number value) { + setNumber(F069, value); + } + + /** + * Set the F069 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF069(org.jooq.Field field) { + setNumber(F069, field); + } + + /** + * Set the F070 parameter to the routine + */ + public void setF070(java.lang.Number value) { + setNumber(F070, value); + } + + /** + * Set the F070 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF070(org.jooq.Field field) { + setNumber(F070, field); + } + + /** + * Set the F071 parameter to the routine + */ + public void setF071(java.lang.Number value) { + setNumber(F071, value); + } + + /** + * Set the F071 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF071(org.jooq.Field field) { + setNumber(F071, field); + } + + /** + * Set the F072 parameter to the routine + */ + public void setF072(java.lang.Number value) { + setNumber(F072, value); + } + + /** + * Set the F072 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF072(org.jooq.Field field) { + setNumber(F072, field); + } + + /** + * Set the F073 parameter to the routine + */ + public void setF073(java.lang.Number value) { + setNumber(F073, value); + } + + /** + * Set the F073 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF073(org.jooq.Field field) { + setNumber(F073, field); + } + + /** + * Set the F074 parameter to the routine + */ + public void setF074(java.lang.Number value) { + setNumber(F074, value); + } + + /** + * Set the F074 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF074(org.jooq.Field field) { + setNumber(F074, field); + } + + /** + * Set the F075 parameter to the routine + */ + public void setF075(java.lang.Number value) { + setNumber(F075, value); + } + + /** + * Set the F075 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF075(org.jooq.Field field) { + setNumber(F075, field); + } + + /** + * Set the F076 parameter to the routine + */ + public void setF076(java.lang.Number value) { + setNumber(F076, value); + } + + /** + * Set the F076 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF076(org.jooq.Field field) { + setNumber(F076, field); + } + + /** + * Set the F077 parameter to the routine + */ + public void setF077(java.lang.Number value) { + setNumber(F077, value); + } + + /** + * Set the F077 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF077(org.jooq.Field field) { + setNumber(F077, field); + } + + /** + * Set the F078 parameter to the routine + */ + public void setF078(java.lang.Number value) { + setNumber(F078, value); + } + + /** + * Set the F078 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF078(org.jooq.Field field) { + setNumber(F078, field); + } + + /** + * Set the F079 parameter to the routine + */ + public void setF079(java.lang.Number value) { + setNumber(F079, value); + } + + /** + * Set the F079 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF079(org.jooq.Field field) { + setNumber(F079, field); + } + + /** + * Set the F080 parameter to the routine + */ + public void setF080(java.lang.Number value) { + setNumber(F080, value); + } + + /** + * Set the F080 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF080(org.jooq.Field field) { + setNumber(F080, field); + } + + /** + * Set the F081 parameter to the routine + */ + public void setF081(java.lang.Number value) { + setNumber(F081, value); + } + + /** + * Set the F081 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF081(org.jooq.Field field) { + setNumber(F081, field); + } + + /** + * Set the F082 parameter to the routine + */ + public void setF082(java.lang.Number value) { + setNumber(F082, value); + } + + /** + * Set the F082 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF082(org.jooq.Field field) { + setNumber(F082, field); + } + + /** + * Set the F083 parameter to the routine + */ + public void setF083(java.lang.Number value) { + setNumber(F083, value); + } + + /** + * Set the F083 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF083(org.jooq.Field field) { + setNumber(F083, field); + } + + /** + * Set the F084 parameter to the routine + */ + public void setF084(java.lang.Number value) { + setNumber(F084, value); + } + + /** + * Set the F084 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF084(org.jooq.Field field) { + setNumber(F084, field); + } + + /** + * Set the F085 parameter to the routine + */ + public void setF085(java.lang.Number value) { + setNumber(F085, value); + } + + /** + * Set the F085 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF085(org.jooq.Field field) { + setNumber(F085, field); + } + + /** + * Set the F086 parameter to the routine + */ + public void setF086(java.lang.Number value) { + setNumber(F086, value); + } + + /** + * Set the F086 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF086(org.jooq.Field field) { + setNumber(F086, field); + } + + /** + * Set the F087 parameter to the routine + */ + public void setF087(java.lang.Number value) { + setNumber(F087, value); + } + + /** + * Set the F087 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF087(org.jooq.Field field) { + setNumber(F087, field); + } + + /** + * Set the F088 parameter to the routine + */ + public void setF088(java.lang.Number value) { + setNumber(F088, value); + } + + /** + * Set the F088 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF088(org.jooq.Field field) { + setNumber(F088, field); + } + + /** + * Set the F089 parameter to the routine + */ + public void setF089(java.lang.Number value) { + setNumber(F089, value); + } + + /** + * Set the F089 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF089(org.jooq.Field field) { + setNumber(F089, field); + } + + /** + * Set the F090 parameter to the routine + */ + public void setF090(java.lang.Number value) { + setNumber(F090, value); + } + + /** + * Set the F090 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF090(org.jooq.Field field) { + setNumber(F090, field); + } + + /** + * Set the F091 parameter to the routine + */ + public void setF091(java.lang.Number value) { + setNumber(F091, value); + } + + /** + * Set the F091 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF091(org.jooq.Field field) { + setNumber(F091, field); + } + + /** + * Set the F092 parameter to the routine + */ + public void setF092(java.lang.Number value) { + setNumber(F092, value); + } + + /** + * Set the F092 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF092(org.jooq.Field field) { + setNumber(F092, field); + } + + /** + * Set the F093 parameter to the routine + */ + public void setF093(java.lang.Number value) { + setNumber(F093, value); + } + + /** + * Set the F093 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF093(org.jooq.Field field) { + setNumber(F093, field); + } + + /** + * Set the F094 parameter to the routine + */ + public void setF094(java.lang.Number value) { + setNumber(F094, value); + } + + /** + * Set the F094 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF094(org.jooq.Field field) { + setNumber(F094, field); + } + + /** + * Set the F095 parameter to the routine + */ + public void setF095(java.lang.Number value) { + setNumber(F095, value); + } + + /** + * Set the F095 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF095(org.jooq.Field field) { + setNumber(F095, field); + } + + /** + * Set the F096 parameter to the routine + */ + public void setF096(java.lang.Number value) { + setNumber(F096, value); + } + + /** + * Set the F096 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF096(org.jooq.Field field) { + setNumber(F096, field); + } + + /** + * Set the F097 parameter to the routine + */ + public void setF097(java.lang.Number value) { + setNumber(F097, value); + } + + /** + * Set the F097 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF097(org.jooq.Field field) { + setNumber(F097, field); + } + + /** + * Set the F098 parameter to the routine + */ + public void setF098(java.lang.Number value) { + setNumber(F098, value); + } + + /** + * Set the F098 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF098(org.jooq.Field field) { + setNumber(F098, field); + } + + /** + * Set the F099 parameter to the routine + */ + public void setF099(java.lang.Number value) { + setNumber(F099, value); + } + + /** + * Set the F099 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF099(org.jooq.Field field) { + setNumber(F099, field); + } + + /** + * Set the F100 parameter to the routine + */ + public void setF100(java.lang.Number value) { + setNumber(F100, value); + } + + /** + * Set the F100 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF100(org.jooq.Field field) { + setNumber(F100, field); + } + + /** + * Set the F101 parameter to the routine + */ + public void setF101(java.lang.Number value) { + setNumber(F101, value); + } + + /** + * Set the F101 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF101(org.jooq.Field field) { + setNumber(F101, field); + } + + /** + * Set the F102 parameter to the routine + */ + public void setF102(java.lang.Number value) { + setNumber(F102, value); + } + + /** + * Set the F102 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF102(org.jooq.Field field) { + setNumber(F102, field); + } + + /** + * Set the F103 parameter to the routine + */ + public void setF103(java.lang.Number value) { + setNumber(F103, value); + } + + /** + * Set the F103 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF103(org.jooq.Field field) { + setNumber(F103, field); + } + + /** + * Set the F104 parameter to the routine + */ + public void setF104(java.lang.Number value) { + setNumber(F104, value); + } + + /** + * Set the F104 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF104(org.jooq.Field field) { + setNumber(F104, field); + } + + /** + * Set the F105 parameter to the routine + */ + public void setF105(java.lang.Number value) { + setNumber(F105, value); + } + + /** + * Set the F105 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF105(org.jooq.Field field) { + setNumber(F105, field); + } + + /** + * Set the F106 parameter to the routine + */ + public void setF106(java.lang.Number value) { + setNumber(F106, value); + } + + /** + * Set the F106 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF106(org.jooq.Field field) { + setNumber(F106, field); + } + + /** + * Set the F107 parameter to the routine + */ + public void setF107(java.lang.Number value) { + setNumber(F107, value); + } + + /** + * Set the F107 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF107(org.jooq.Field field) { + setNumber(F107, field); + } + + /** + * Set the F108 parameter to the routine + */ + public void setF108(java.lang.Number value) { + setNumber(F108, value); + } + + /** + * Set the F108 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF108(org.jooq.Field field) { + setNumber(F108, field); + } + + /** + * Set the F109 parameter to the routine + */ + public void setF109(java.lang.Number value) { + setNumber(F109, value); + } + + /** + * Set the F109 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF109(org.jooq.Field field) { + setNumber(F109, field); + } + + /** + * Set the F110 parameter to the routine + */ + public void setF110(java.lang.Number value) { + setNumber(F110, value); + } + + /** + * Set the F110 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF110(org.jooq.Field field) { + setNumber(F110, field); + } + + /** + * Set the F111 parameter to the routine + */ + public void setF111(java.lang.Number value) { + setNumber(F111, value); + } + + /** + * Set the F111 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF111(org.jooq.Field field) { + setNumber(F111, field); + } + + /** + * Set the F112 parameter to the routine + */ + public void setF112(java.lang.Number value) { + setNumber(F112, value); + } + + /** + * Set the F112 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF112(org.jooq.Field field) { + setNumber(F112, field); + } + + /** + * Set the F113 parameter to the routine + */ + public void setF113(java.lang.Number value) { + setNumber(F113, value); + } + + /** + * Set the F113 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF113(org.jooq.Field field) { + setNumber(F113, field); + } + + /** + * Set the F114 parameter to the routine + */ + public void setF114(java.lang.Number value) { + setNumber(F114, value); + } + + /** + * Set the F114 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF114(org.jooq.Field field) { + setNumber(F114, field); + } + + /** + * Set the F115 parameter to the routine + */ + public void setF115(java.lang.Number value) { + setNumber(F115, value); + } + + /** + * Set the F115 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF115(org.jooq.Field field) { + setNumber(F115, field); + } + + /** + * Set the F116 parameter to the routine + */ + public void setF116(java.lang.Number value) { + setNumber(F116, value); + } + + /** + * Set the F116 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF116(org.jooq.Field field) { + setNumber(F116, field); + } + + /** + * Set the F117 parameter to the routine + */ + public void setF117(java.lang.Number value) { + setNumber(F117, value); + } + + /** + * Set the F117 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF117(org.jooq.Field field) { + setNumber(F117, field); + } + + /** + * Set the F118 parameter to the routine + */ + public void setF118(java.lang.Number value) { + setNumber(F118, value); + } + + /** + * Set the F118 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF118(org.jooq.Field field) { + setNumber(F118, field); + } + + /** + * Set the F119 parameter to the routine + */ + public void setF119(java.lang.Number value) { + setNumber(F119, value); + } + + /** + * Set the F119 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF119(org.jooq.Field field) { + setNumber(F119, field); + } + + /** + * Set the F120 parameter to the routine + */ + public void setF120(java.lang.Number value) { + setNumber(F120, value); + } + + /** + * Set the F120 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF120(org.jooq.Field field) { + setNumber(F120, field); + } + + /** + * Set the F121 parameter to the routine + */ + public void setF121(java.lang.Number value) { + setNumber(F121, value); + } + + /** + * Set the F121 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF121(org.jooq.Field field) { + setNumber(F121, field); + } + + /** + * Set the F122 parameter to the routine + */ + public void setF122(java.lang.Number value) { + setNumber(F122, value); + } + + /** + * Set the F122 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF122(org.jooq.Field field) { + setNumber(F122, field); + } + + /** + * Set the F123 parameter to the routine + */ + public void setF123(java.lang.Number value) { + setNumber(F123, value); + } + + /** + * Set the F123 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF123(org.jooq.Field field) { + setNumber(F123, field); + } + + /** + * Set the F124 parameter to the routine + */ + public void setF124(java.lang.Number value) { + setNumber(F124, value); + } + + /** + * Set the F124 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF124(org.jooq.Field field) { + setNumber(F124, field); + } + + /** + * Set the F125 parameter to the routine + */ + public void setF125(java.lang.Number value) { + setNumber(F125, value); + } + + /** + * Set the F125 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF125(org.jooq.Field field) { + setNumber(F125, field); + } + + /** + * Set the F126 parameter to the routine + */ + public void setF126(java.lang.Number value) { + setNumber(F126, value); + } + + /** + * Set the F126 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF126(org.jooq.Field field) { + setNumber(F126, field); + } + + /** + * Set the F127 parameter to the routine + */ + public void setF127(java.lang.Number value) { + setNumber(F127, value); + } + + /** + * Set the F127 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF127(org.jooq.Field field) { + setNumber(F127, field); + } + + /** + * Set the F128 parameter to the routine + */ + public void setF128(java.lang.Number value) { + setNumber(F128, value); + } + + /** + * Set the F128 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF128(org.jooq.Field field) { + setNumber(F128, field); + } + + /** + * Set the F129 parameter to the routine + */ + public void setF129(java.lang.Number value) { + setNumber(F129, value); + } + + /** + * Set the F129 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF129(org.jooq.Field field) { + setNumber(F129, field); + } + + /** + * Set the F130 parameter to the routine + */ + public void setF130(java.lang.Number value) { + setNumber(F130, value); + } + + /** + * Set the F130 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF130(org.jooq.Field field) { + setNumber(F130, field); + } + + /** + * Set the F131 parameter to the routine + */ + public void setF131(java.lang.Number value) { + setNumber(F131, value); + } + + /** + * Set the F131 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF131(org.jooq.Field field) { + setNumber(F131, field); + } + + /** + * Set the F132 parameter to the routine + */ + public void setF132(java.lang.Number value) { + setNumber(F132, value); + } + + /** + * Set the F132 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF132(org.jooq.Field field) { + setNumber(F132, field); + } + + /** + * Set the F133 parameter to the routine + */ + public void setF133(java.lang.Number value) { + setNumber(F133, value); + } + + /** + * Set the F133 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF133(org.jooq.Field field) { + setNumber(F133, field); + } + + /** + * Set the F134 parameter to the routine + */ + public void setF134(java.lang.Number value) { + setNumber(F134, value); + } + + /** + * Set the F134 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF134(org.jooq.Field field) { + setNumber(F134, field); + } + + /** + * Set the F135 parameter to the routine + */ + public void setF135(java.lang.Number value) { + setNumber(F135, value); + } + + /** + * Set the F135 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF135(org.jooq.Field field) { + setNumber(F135, field); + } + + /** + * Set the F136 parameter to the routine + */ + public void setF136(java.lang.Number value) { + setNumber(F136, value); + } + + /** + * Set the F136 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF136(org.jooq.Field field) { + setNumber(F136, field); + } + + /** + * Set the F137 parameter to the routine + */ + public void setF137(java.lang.Number value) { + setNumber(F137, value); + } + + /** + * Set the F137 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF137(org.jooq.Field field) { + setNumber(F137, field); + } + + /** + * Set the F138 parameter to the routine + */ + public void setF138(java.lang.Number value) { + setNumber(F138, value); + } + + /** + * Set the F138 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF138(org.jooq.Field field) { + setNumber(F138, field); + } + + /** + * Set the F139 parameter to the routine + */ + public void setF139(java.lang.Number value) { + setNumber(F139, value); + } + + /** + * Set the F139 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF139(org.jooq.Field field) { + setNumber(F139, field); + } + + /** + * Set the F140 parameter to the routine + */ + public void setF140(java.lang.Number value) { + setNumber(F140, value); + } + + /** + * Set the F140 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF140(org.jooq.Field field) { + setNumber(F140, field); + } + + /** + * Set the F141 parameter to the routine + */ + public void setF141(java.lang.Number value) { + setNumber(F141, value); + } + + /** + * Set the F141 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF141(org.jooq.Field field) { + setNumber(F141, field); + } + + /** + * Set the F142 parameter to the routine + */ + public void setF142(java.lang.Number value) { + setNumber(F142, value); + } + + /** + * Set the F142 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF142(org.jooq.Field field) { + setNumber(F142, field); + } + + /** + * Set the F143 parameter to the routine + */ + public void setF143(java.lang.Number value) { + setNumber(F143, value); + } + + /** + * Set the F143 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF143(org.jooq.Field field) { + setNumber(F143, field); + } + + /** + * Set the F144 parameter to the routine + */ + public void setF144(java.lang.Number value) { + setNumber(F144, value); + } + + /** + * Set the F144 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF144(org.jooq.Field field) { + setNumber(F144, field); + } + + /** + * Set the F145 parameter to the routine + */ + public void setF145(java.lang.Number value) { + setNumber(F145, value); + } + + /** + * Set the F145 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF145(org.jooq.Field field) { + setNumber(F145, field); + } + + /** + * Set the F146 parameter to the routine + */ + public void setF146(java.lang.Number value) { + setNumber(F146, value); + } + + /** + * Set the F146 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF146(org.jooq.Field field) { + setNumber(F146, field); + } + + /** + * Set the F147 parameter to the routine + */ + public void setF147(java.lang.Number value) { + setNumber(F147, value); + } + + /** + * Set the F147 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF147(org.jooq.Field field) { + setNumber(F147, field); + } + + /** + * Set the F148 parameter to the routine + */ + public void setF148(java.lang.Number value) { + setNumber(F148, value); + } + + /** + * Set the F148 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF148(org.jooq.Field field) { + setNumber(F148, field); + } + + /** + * Set the F149 parameter to the routine + */ + public void setF149(java.lang.Number value) { + setNumber(F149, value); + } + + /** + * Set the F149 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF149(org.jooq.Field field) { + setNumber(F149, field); + } + + /** + * Set the F150 parameter to the routine + */ + public void setF150(java.lang.Number value) { + setNumber(F150, value); + } + + /** + * Set the F150 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF150(org.jooq.Field field) { + setNumber(F150, field); + } + + /** + * Set the F151 parameter to the routine + */ + public void setF151(java.lang.Number value) { + setNumber(F151, value); + } + + /** + * Set the F151 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF151(org.jooq.Field field) { + setNumber(F151, field); + } + + /** + * Set the F152 parameter to the routine + */ + public void setF152(java.lang.Number value) { + setNumber(F152, value); + } + + /** + * Set the F152 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF152(org.jooq.Field field) { + setNumber(F152, field); + } + + /** + * Set the F153 parameter to the routine + */ + public void setF153(java.lang.Number value) { + setNumber(F153, value); + } + + /** + * Set the F153 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF153(org.jooq.Field field) { + setNumber(F153, field); + } + + /** + * Set the F154 parameter to the routine + */ + public void setF154(java.lang.Number value) { + setNumber(F154, value); + } + + /** + * Set the F154 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF154(org.jooq.Field field) { + setNumber(F154, field); + } + + /** + * Set the F155 parameter to the routine + */ + public void setF155(java.lang.Number value) { + setNumber(F155, value); + } + + /** + * Set the F155 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF155(org.jooq.Field field) { + setNumber(F155, field); + } + + /** + * Set the F156 parameter to the routine + */ + public void setF156(java.lang.Number value) { + setNumber(F156, value); + } + + /** + * Set the F156 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF156(org.jooq.Field field) { + setNumber(F156, field); + } + + /** + * Set the F157 parameter to the routine + */ + public void setF157(java.lang.Number value) { + setNumber(F157, value); + } + + /** + * Set the F157 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF157(org.jooq.Field field) { + setNumber(F157, field); + } + + /** + * Set the F158 parameter to the routine + */ + public void setF158(java.lang.Number value) { + setNumber(F158, value); + } + + /** + * Set the F158 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF158(org.jooq.Field field) { + setNumber(F158, field); + } + + /** + * Set the F159 parameter to the routine + */ + public void setF159(java.lang.Number value) { + setNumber(F159, value); + } + + /** + * Set the F159 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF159(org.jooq.Field field) { + setNumber(F159, field); + } + + /** + * Set the F160 parameter to the routine + */ + public void setF160(java.lang.Number value) { + setNumber(F160, value); + } + + /** + * Set the F160 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF160(org.jooq.Field field) { + setNumber(F160, field); + } + + /** + * Set the F161 parameter to the routine + */ + public void setF161(java.lang.Number value) { + setNumber(F161, value); + } + + /** + * Set the F161 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF161(org.jooq.Field field) { + setNumber(F161, field); + } + + /** + * Set the F162 parameter to the routine + */ + public void setF162(java.lang.Number value) { + setNumber(F162, value); + } + + /** + * Set the F162 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF162(org.jooq.Field field) { + setNumber(F162, field); + } + + /** + * Set the F163 parameter to the routine + */ + public void setF163(java.lang.Number value) { + setNumber(F163, value); + } + + /** + * Set the F163 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF163(org.jooq.Field field) { + setNumber(F163, field); + } + + /** + * Set the F164 parameter to the routine + */ + public void setF164(java.lang.Number value) { + setNumber(F164, value); + } + + /** + * Set the F164 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF164(org.jooq.Field field) { + setNumber(F164, field); + } + + /** + * Set the F165 parameter to the routine + */ + public void setF165(java.lang.Number value) { + setNumber(F165, value); + } + + /** + * Set the F165 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF165(org.jooq.Field field) { + setNumber(F165, field); + } + + /** + * Set the F166 parameter to the routine + */ + public void setF166(java.lang.Number value) { + setNumber(F166, value); + } + + /** + * Set the F166 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF166(org.jooq.Field field) { + setNumber(F166, field); + } + + /** + * Set the F167 parameter to the routine + */ + public void setF167(java.lang.Number value) { + setNumber(F167, value); + } + + /** + * Set the F167 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF167(org.jooq.Field field) { + setNumber(F167, field); + } + + /** + * Set the F168 parameter to the routine + */ + public void setF168(java.lang.Number value) { + setNumber(F168, value); + } + + /** + * Set the F168 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF168(org.jooq.Field field) { + setNumber(F168, field); + } + + /** + * Set the F169 parameter to the routine + */ + public void setF169(java.lang.Number value) { + setNumber(F169, value); + } + + /** + * Set the F169 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF169(org.jooq.Field field) { + setNumber(F169, field); + } + + /** + * Set the F170 parameter to the routine + */ + public void setF170(java.lang.Number value) { + setNumber(F170, value); + } + + /** + * Set the F170 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF170(org.jooq.Field field) { + setNumber(F170, field); + } + + /** + * Set the F171 parameter to the routine + */ + public void setF171(java.lang.Number value) { + setNumber(F171, value); + } + + /** + * Set the F171 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF171(org.jooq.Field field) { + setNumber(F171, field); + } + + /** + * Set the F172 parameter to the routine + */ + public void setF172(java.lang.Number value) { + setNumber(F172, value); + } + + /** + * Set the F172 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF172(org.jooq.Field field) { + setNumber(F172, field); + } + + /** + * Set the F173 parameter to the routine + */ + public void setF173(java.lang.Number value) { + setNumber(F173, value); + } + + /** + * Set the F173 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF173(org.jooq.Field field) { + setNumber(F173, field); + } + + /** + * Set the F174 parameter to the routine + */ + public void setF174(java.lang.Number value) { + setNumber(F174, value); + } + + /** + * Set the F174 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF174(org.jooq.Field field) { + setNumber(F174, field); + } + + /** + * Set the F175 parameter to the routine + */ + public void setF175(java.lang.Number value) { + setNumber(F175, value); + } + + /** + * Set the F175 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF175(org.jooq.Field field) { + setNumber(F175, field); + } + + /** + * Set the F176 parameter to the routine + */ + public void setF176(java.lang.Number value) { + setNumber(F176, value); + } + + /** + * Set the F176 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF176(org.jooq.Field field) { + setNumber(F176, field); + } + + /** + * Set the F177 parameter to the routine + */ + public void setF177(java.lang.Number value) { + setNumber(F177, value); + } + + /** + * Set the F177 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF177(org.jooq.Field field) { + setNumber(F177, field); + } + + /** + * Set the F178 parameter to the routine + */ + public void setF178(java.lang.Number value) { + setNumber(F178, value); + } + + /** + * Set the F178 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF178(org.jooq.Field field) { + setNumber(F178, field); + } + + /** + * Set the F179 parameter to the routine + */ + public void setF179(java.lang.Number value) { + setNumber(F179, value); + } + + /** + * Set the F179 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF179(org.jooq.Field field) { + setNumber(F179, field); + } + + /** + * Set the F180 parameter to the routine + */ + public void setF180(java.lang.Number value) { + setNumber(F180, value); + } + + /** + * Set the F180 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF180(org.jooq.Field field) { + setNumber(F180, field); + } + + /** + * Set the F181 parameter to the routine + */ + public void setF181(java.lang.Number value) { + setNumber(F181, value); + } + + /** + * Set the F181 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF181(org.jooq.Field field) { + setNumber(F181, field); + } + + /** + * Set the F182 parameter to the routine + */ + public void setF182(java.lang.Number value) { + setNumber(F182, value); + } + + /** + * Set the F182 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF182(org.jooq.Field field) { + setNumber(F182, field); + } + + /** + * Set the F183 parameter to the routine + */ + public void setF183(java.lang.Number value) { + setNumber(F183, value); + } + + /** + * Set the F183 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF183(org.jooq.Field field) { + setNumber(F183, field); + } + + /** + * Set the F184 parameter to the routine + */ + public void setF184(java.lang.Number value) { + setNumber(F184, value); + } + + /** + * Set the F184 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF184(org.jooq.Field field) { + setNumber(F184, field); + } + + /** + * Set the F185 parameter to the routine + */ + public void setF185(java.lang.Number value) { + setNumber(F185, value); + } + + /** + * Set the F185 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF185(org.jooq.Field field) { + setNumber(F185, field); + } + + /** + * Set the F186 parameter to the routine + */ + public void setF186(java.lang.Number value) { + setNumber(F186, value); + } + + /** + * Set the F186 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF186(org.jooq.Field field) { + setNumber(F186, field); + } + + /** + * Set the F187 parameter to the routine + */ + public void setF187(java.lang.Number value) { + setNumber(F187, value); + } + + /** + * Set the F187 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF187(org.jooq.Field field) { + setNumber(F187, field); + } + + /** + * Set the F188 parameter to the routine + */ + public void setF188(java.lang.Number value) { + setNumber(F188, value); + } + + /** + * Set the F188 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF188(org.jooq.Field field) { + setNumber(F188, field); + } + + /** + * Set the F189 parameter to the routine + */ + public void setF189(java.lang.Number value) { + setNumber(F189, value); + } + + /** + * Set the F189 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF189(org.jooq.Field field) { + setNumber(F189, field); + } + + /** + * Set the F190 parameter to the routine + */ + public void setF190(java.lang.Number value) { + setNumber(F190, value); + } + + /** + * Set the F190 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF190(org.jooq.Field field) { + setNumber(F190, field); + } + + /** + * Set the F191 parameter to the routine + */ + public void setF191(java.lang.Number value) { + setNumber(F191, value); + } + + /** + * Set the F191 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF191(org.jooq.Field field) { + setNumber(F191, field); + } + + /** + * Set the F192 parameter to the routine + */ + public void setF192(java.lang.Number value) { + setNumber(F192, value); + } + + /** + * Set the F192 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF192(org.jooq.Field field) { + setNumber(F192, field); + } + + /** + * Set the F193 parameter to the routine + */ + public void setF193(java.lang.Number value) { + setNumber(F193, value); + } + + /** + * Set the F193 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF193(org.jooq.Field field) { + setNumber(F193, field); + } + + /** + * Set the F194 parameter to the routine + */ + public void setF194(java.lang.Number value) { + setNumber(F194, value); + } + + /** + * Set the F194 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF194(org.jooq.Field field) { + setNumber(F194, field); + } + + /** + * Set the F195 parameter to the routine + */ + public void setF195(java.lang.Number value) { + setNumber(F195, value); + } + + /** + * Set the F195 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF195(org.jooq.Field field) { + setNumber(F195, field); + } + + /** + * Set the F196 parameter to the routine + */ + public void setF196(java.lang.Number value) { + setNumber(F196, value); + } + + /** + * Set the F196 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF196(org.jooq.Field field) { + setNumber(F196, field); + } + + /** + * Set the F197 parameter to the routine + */ + public void setF197(java.lang.Number value) { + setNumber(F197, value); + } + + /** + * Set the F197 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF197(org.jooq.Field field) { + setNumber(F197, field); + } + + /** + * Set the F198 parameter to the routine + */ + public void setF198(java.lang.Number value) { + setNumber(F198, value); + } + + /** + * Set the F198 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF198(org.jooq.Field field) { + setNumber(F198, field); + } + + /** + * Set the F199 parameter to the routine + */ + public void setF199(java.lang.Number value) { + setNumber(F199, value); + } + + /** + * Set the F199 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF199(org.jooq.Field field) { + setNumber(F199, field); + } + + /** + * Set the F200 parameter to the routine + */ + public void setF200(java.lang.Number value) { + setNumber(F200, value); + } + + /** + * Set the F200 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF200(org.jooq.Field field) { + setNumber(F200, field); + } + + /** + * Set the F201 parameter to the routine + */ + public void setF201(java.lang.Number value) { + setNumber(F201, value); + } + + /** + * Set the F201 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF201(org.jooq.Field field) { + setNumber(F201, field); + } + + /** + * Set the F202 parameter to the routine + */ + public void setF202(java.lang.Number value) { + setNumber(F202, value); + } + + /** + * Set the F202 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF202(org.jooq.Field field) { + setNumber(F202, field); + } + + /** + * Set the F203 parameter to the routine + */ + public void setF203(java.lang.Number value) { + setNumber(F203, value); + } + + /** + * Set the F203 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF203(org.jooq.Field field) { + setNumber(F203, field); + } + + /** + * Set the F204 parameter to the routine + */ + public void setF204(java.lang.Number value) { + setNumber(F204, value); + } + + /** + * Set the F204 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF204(org.jooq.Field field) { + setNumber(F204, field); + } + + /** + * Set the F205 parameter to the routine + */ + public void setF205(java.lang.Number value) { + setNumber(F205, value); + } + + /** + * Set the F205 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF205(org.jooq.Field field) { + setNumber(F205, field); + } + + /** + * Set the F206 parameter to the routine + */ + public void setF206(java.lang.Number value) { + setNumber(F206, value); + } + + /** + * Set the F206 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF206(org.jooq.Field field) { + setNumber(F206, field); + } + + /** + * Set the F207 parameter to the routine + */ + public void setF207(java.lang.Number value) { + setNumber(F207, value); + } + + /** + * Set the F207 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF207(org.jooq.Field field) { + setNumber(F207, field); + } + + /** + * Set the F208 parameter to the routine + */ + public void setF208(java.lang.Number value) { + setNumber(F208, value); + } + + /** + * Set the F208 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF208(org.jooq.Field field) { + setNumber(F208, field); + } + + /** + * Set the F209 parameter to the routine + */ + public void setF209(java.lang.Number value) { + setNumber(F209, value); + } + + /** + * Set the F209 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF209(org.jooq.Field field) { + setNumber(F209, field); + } + + /** + * Set the F210 parameter to the routine + */ + public void setF210(java.lang.Number value) { + setNumber(F210, value); + } + + /** + * Set the F210 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF210(org.jooq.Field field) { + setNumber(F210, field); + } + + /** + * Set the F211 parameter to the routine + */ + public void setF211(java.lang.Number value) { + setNumber(F211, value); + } + + /** + * Set the F211 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF211(org.jooq.Field field) { + setNumber(F211, field); + } + + /** + * Set the F212 parameter to the routine + */ + public void setF212(java.lang.Number value) { + setNumber(F212, value); + } + + /** + * Set the F212 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF212(org.jooq.Field field) { + setNumber(F212, field); + } + + /** + * Set the F213 parameter to the routine + */ + public void setF213(java.lang.Number value) { + setNumber(F213, value); + } + + /** + * Set the F213 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF213(org.jooq.Field field) { + setNumber(F213, field); + } + + /** + * Set the F214 parameter to the routine + */ + public void setF214(java.lang.Number value) { + setNumber(F214, value); + } + + /** + * Set the F214 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF214(org.jooq.Field field) { + setNumber(F214, field); + } + + /** + * Set the F215 parameter to the routine + */ + public void setF215(java.lang.Number value) { + setNumber(F215, value); + } + + /** + * Set the F215 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF215(org.jooq.Field field) { + setNumber(F215, field); + } + + /** + * Set the F216 parameter to the routine + */ + public void setF216(java.lang.Number value) { + setNumber(F216, value); + } + + /** + * Set the F216 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF216(org.jooq.Field field) { + setNumber(F216, field); + } + + /** + * Set the F217 parameter to the routine + */ + public void setF217(java.lang.Number value) { + setNumber(F217, value); + } + + /** + * Set the F217 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF217(org.jooq.Field field) { + setNumber(F217, field); + } + + /** + * Set the F218 parameter to the routine + */ + public void setF218(java.lang.Number value) { + setNumber(F218, value); + } + + /** + * Set the F218 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF218(org.jooq.Field field) { + setNumber(F218, field); + } + + /** + * Set the F219 parameter to the routine + */ + public void setF219(java.lang.Number value) { + setNumber(F219, value); + } + + /** + * Set the F219 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF219(org.jooq.Field field) { + setNumber(F219, field); + } + + /** + * Set the F220 parameter to the routine + */ + public void setF220(java.lang.Number value) { + setNumber(F220, value); + } + + /** + * Set the F220 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF220(org.jooq.Field field) { + setNumber(F220, field); + } + + /** + * Set the F221 parameter to the routine + */ + public void setF221(java.lang.Number value) { + setNumber(F221, value); + } + + /** + * Set the F221 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF221(org.jooq.Field field) { + setNumber(F221, field); + } + + /** + * Set the F222 parameter to the routine + */ + public void setF222(java.lang.Number value) { + setNumber(F222, value); + } + + /** + * Set the F222 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF222(org.jooq.Field field) { + setNumber(F222, field); + } + + /** + * Set the F223 parameter to the routine + */ + public void setF223(java.lang.Number value) { + setNumber(F223, value); + } + + /** + * Set the F223 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF223(org.jooq.Field field) { + setNumber(F223, field); + } + + /** + * Set the F224 parameter to the routine + */ + public void setF224(java.lang.Number value) { + setNumber(F224, value); + } + + /** + * Set the F224 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF224(org.jooq.Field field) { + setNumber(F224, field); + } + + /** + * Set the F225 parameter to the routine + */ + public void setF225(java.lang.Number value) { + setNumber(F225, value); + } + + /** + * Set the F225 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF225(org.jooq.Field field) { + setNumber(F225, field); + } + + /** + * Set the F226 parameter to the routine + */ + public void setF226(java.lang.Number value) { + setNumber(F226, value); + } + + /** + * Set the F226 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF226(org.jooq.Field field) { + setNumber(F226, field); + } + + /** + * Set the F227 parameter to the routine + */ + public void setF227(java.lang.Number value) { + setNumber(F227, value); + } + + /** + * Set the F227 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF227(org.jooq.Field field) { + setNumber(F227, field); + } + + /** + * Set the F228 parameter to the routine + */ + public void setF228(java.lang.Number value) { + setNumber(F228, value); + } + + /** + * Set the F228 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF228(org.jooq.Field field) { + setNumber(F228, field); + } + + /** + * Set the F229 parameter to the routine + */ + public void setF229(java.lang.Number value) { + setNumber(F229, value); + } + + /** + * Set the F229 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF229(org.jooq.Field field) { + setNumber(F229, field); + } + + /** + * Set the F230 parameter to the routine + */ + public void setF230(java.lang.Number value) { + setNumber(F230, value); + } + + /** + * Set the F230 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF230(org.jooq.Field field) { + setNumber(F230, field); + } + + /** + * Set the F231 parameter to the routine + */ + public void setF231(java.lang.Number value) { + setNumber(F231, value); + } + + /** + * Set the F231 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF231(org.jooq.Field field) { + setNumber(F231, field); + } + + /** + * Set the F232 parameter to the routine + */ + public void setF232(java.lang.Number value) { + setNumber(F232, value); + } + + /** + * Set the F232 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF232(org.jooq.Field field) { + setNumber(F232, field); + } + + /** + * Set the F233 parameter to the routine + */ + public void setF233(java.lang.Number value) { + setNumber(F233, value); + } + + /** + * Set the F233 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF233(org.jooq.Field field) { + setNumber(F233, field); + } + + /** + * Set the F234 parameter to the routine + */ + public void setF234(java.lang.Number value) { + setNumber(F234, value); + } + + /** + * Set the F234 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF234(org.jooq.Field field) { + setNumber(F234, field); + } + + /** + * Set the F235 parameter to the routine + */ + public void setF235(java.lang.Number value) { + setNumber(F235, value); + } + + /** + * Set the F235 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF235(org.jooq.Field field) { + setNumber(F235, field); + } + + /** + * Set the F236 parameter to the routine + */ + public void setF236(java.lang.Number value) { + setNumber(F236, value); + } + + /** + * Set the F236 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF236(org.jooq.Field field) { + setNumber(F236, field); + } + + /** + * Set the F237 parameter to the routine + */ + public void setF237(java.lang.Number value) { + setNumber(F237, value); + } + + /** + * Set the F237 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF237(org.jooq.Field field) { + setNumber(F237, field); + } + + /** + * Set the F238 parameter to the routine + */ + public void setF238(java.lang.Number value) { + setNumber(F238, value); + } + + /** + * Set the F238 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF238(org.jooq.Field field) { + setNumber(F238, field); + } + + /** + * Set the F239 parameter to the routine + */ + public void setF239(java.lang.Number value) { + setNumber(F239, value); + } + + /** + * Set the F239 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF239(org.jooq.Field field) { + setNumber(F239, field); + } + + /** + * Set the F240 parameter to the routine + */ + public void setF240(java.lang.Number value) { + setNumber(F240, value); + } + + /** + * Set the F240 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF240(org.jooq.Field field) { + setNumber(F240, field); + } + + /** + * Set the F241 parameter to the routine + */ + public void setF241(java.lang.Number value) { + setNumber(F241, value); + } + + /** + * Set the F241 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF241(org.jooq.Field field) { + setNumber(F241, field); + } + + /** + * Set the F242 parameter to the routine + */ + public void setF242(java.lang.Number value) { + setNumber(F242, value); + } + + /** + * Set the F242 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF242(org.jooq.Field field) { + setNumber(F242, field); + } + + /** + * Set the F243 parameter to the routine + */ + public void setF243(java.lang.Number value) { + setNumber(F243, value); + } + + /** + * Set the F243 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF243(org.jooq.Field field) { + setNumber(F243, field); + } + + /** + * Set the F244 parameter to the routine + */ + public void setF244(java.lang.Number value) { + setNumber(F244, value); + } + + /** + * Set the F244 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF244(org.jooq.Field field) { + setNumber(F244, field); + } + + /** + * Set the F245 parameter to the routine + */ + public void setF245(java.lang.Number value) { + setNumber(F245, value); + } + + /** + * Set the F245 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF245(org.jooq.Field field) { + setNumber(F245, field); + } + + /** + * Set the F246 parameter to the routine + */ + public void setF246(java.lang.Number value) { + setNumber(F246, value); + } + + /** + * Set the F246 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF246(org.jooq.Field field) { + setNumber(F246, field); + } + + /** + * Set the F247 parameter to the routine + */ + public void setF247(java.lang.Number value) { + setNumber(F247, value); + } + + /** + * Set the F247 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF247(org.jooq.Field field) { + setNumber(F247, field); + } + + /** + * Set the F248 parameter to the routine + */ + public void setF248(java.lang.Number value) { + setNumber(F248, value); + } + + /** + * Set the F248 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF248(org.jooq.Field field) { + setNumber(F248, field); + } + + /** + * Set the F249 parameter to the routine + */ + public void setF249(java.lang.Number value) { + setNumber(F249, value); + } + + /** + * Set the F249 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF249(org.jooq.Field field) { + setNumber(F249, field); + } + + /** + * Set the F250 parameter to the routine + */ + public void setF250(java.lang.Number value) { + setNumber(F250, value); + } + + /** + * Set the F250 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF250(org.jooq.Field field) { + setNumber(F250, field); + } + + /** + * Set the F251 parameter to the routine + */ + public void setF251(java.lang.Number value) { + setNumber(F251, value); + } + + /** + * Set the F251 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF251(org.jooq.Field field) { + setNumber(F251, field); + } + + /** + * Set the F252 parameter to the routine + */ + public void setF252(java.lang.Number value) { + setNumber(F252, value); + } + + /** + * Set the F252 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF252(org.jooq.Field field) { + setNumber(F252, field); + } + + /** + * Set the F253 parameter to the routine + */ + public void setF253(java.lang.Number value) { + setNumber(F253, value); + } + + /** + * Set the F253 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF253(org.jooq.Field field) { + setNumber(F253, field); + } + + /** + * Set the F254 parameter to the routine + */ + public void setF254(java.lang.Number value) { + setNumber(F254, value); + } + + /** + * Set the F254 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF254(org.jooq.Field field) { + setNumber(F254, field); + } + + /** + * Set the F255 parameter to the routine + */ + public void setF255(java.lang.Number value) { + setNumber(F255, value); + } + + /** + * Set the F255 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF255(org.jooq.Field field) { + setNumber(F255, field); + } + + /** + * Set the F256 parameter to the routine + */ + public void setF256(java.lang.Number value) { + setNumber(F256, value); + } + + /** + * Set the F256 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF256(org.jooq.Field field) { + setNumber(F256, field); + } + + /** + * Set the F257 parameter to the routine + */ + public void setF257(java.lang.Number value) { + setNumber(F257, value); + } + + /** + * Set the F257 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF257(org.jooq.Field field) { + setNumber(F257, field); + } + + /** + * Set the F258 parameter to the routine + */ + public void setF258(java.lang.Number value) { + setNumber(F258, value); + } + + /** + * Set the F258 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF258(org.jooq.Field field) { + setNumber(F258, field); + } + + /** + * Set the F259 parameter to the routine + */ + public void setF259(java.lang.Number value) { + setNumber(F259, value); + } + + /** + * Set the F259 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF259(org.jooq.Field field) { + setNumber(F259, field); + } + + /** + * Set the F260 parameter to the routine + */ + public void setF260(java.lang.Number value) { + setNumber(F260, value); + } + + /** + * Set the F260 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF260(org.jooq.Field field) { + setNumber(F260, field); + } + + /** + * Set the F261 parameter to the routine + */ + public void setF261(java.lang.Number value) { + setNumber(F261, value); + } + + /** + * Set the F261 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF261(org.jooq.Field field) { + setNumber(F261, field); + } + + /** + * Set the F262 parameter to the routine + */ + public void setF262(java.lang.Number value) { + setNumber(F262, value); + } + + /** + * Set the F262 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF262(org.jooq.Field field) { + setNumber(F262, field); + } + + /** + * Set the F263 parameter to the routine + */ + public void setF263(java.lang.Number value) { + setNumber(F263, value); + } + + /** + * Set the F263 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF263(org.jooq.Field field) { + setNumber(F263, field); + } + + /** + * Set the F264 parameter to the routine + */ + public void setF264(java.lang.Number value) { + setNumber(F264, value); + } + + /** + * Set the F264 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF264(org.jooq.Field field) { + setNumber(F264, field); + } + + /** + * Set the F265 parameter to the routine + */ + public void setF265(java.lang.Number value) { + setNumber(F265, value); + } + + /** + * Set the F265 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF265(org.jooq.Field field) { + setNumber(F265, field); + } + + /** + * Set the F266 parameter to the routine + */ + public void setF266(java.lang.Number value) { + setNumber(F266, value); + } + + /** + * Set the F266 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF266(org.jooq.Field field) { + setNumber(F266, field); + } + + /** + * Set the F267 parameter to the routine + */ + public void setF267(java.lang.Number value) { + setNumber(F267, value); + } + + /** + * Set the F267 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF267(org.jooq.Field field) { + setNumber(F267, field); + } + + /** + * Set the F268 parameter to the routine + */ + public void setF268(java.lang.Number value) { + setNumber(F268, value); + } + + /** + * Set the F268 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF268(org.jooq.Field field) { + setNumber(F268, field); + } + + /** + * Set the F269 parameter to the routine + */ + public void setF269(java.lang.Number value) { + setNumber(F269, value); + } + + /** + * Set the F269 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF269(org.jooq.Field field) { + setNumber(F269, field); + } + + /** + * Set the F270 parameter to the routine + */ + public void setF270(java.lang.Number value) { + setNumber(F270, value); + } + + /** + * Set the F270 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF270(org.jooq.Field field) { + setNumber(F270, field); + } + + /** + * Set the F271 parameter to the routine + */ + public void setF271(java.lang.Number value) { + setNumber(F271, value); + } + + /** + * Set the F271 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF271(org.jooq.Field field) { + setNumber(F271, field); + } + + /** + * Set the F272 parameter to the routine + */ + public void setF272(java.lang.Number value) { + setNumber(F272, value); + } + + /** + * Set the F272 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF272(org.jooq.Field field) { + setNumber(F272, field); + } + + /** + * Set the F273 parameter to the routine + */ + public void setF273(java.lang.Number value) { + setNumber(F273, value); + } + + /** + * Set the F273 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF273(org.jooq.Field field) { + setNumber(F273, field); + } + + /** + * Set the F274 parameter to the routine + */ + public void setF274(java.lang.Number value) { + setNumber(F274, value); + } + + /** + * Set the F274 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF274(org.jooq.Field field) { + setNumber(F274, field); + } + + /** + * Set the F275 parameter to the routine + */ + public void setF275(java.lang.Number value) { + setNumber(F275, value); + } + + /** + * Set the F275 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF275(org.jooq.Field field) { + setNumber(F275, field); + } + + /** + * Set the F276 parameter to the routine + */ + public void setF276(java.lang.Number value) { + setNumber(F276, value); + } + + /** + * Set the F276 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF276(org.jooq.Field field) { + setNumber(F276, field); + } + + /** + * Set the F277 parameter to the routine + */ + public void setF277(java.lang.Number value) { + setNumber(F277, value); + } + + /** + * Set the F277 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF277(org.jooq.Field field) { + setNumber(F277, field); + } + + /** + * Set the F278 parameter to the routine + */ + public void setF278(java.lang.Number value) { + setNumber(F278, value); + } + + /** + * Set the F278 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF278(org.jooq.Field field) { + setNumber(F278, field); + } + + /** + * Set the F279 parameter to the routine + */ + public void setF279(java.lang.Number value) { + setNumber(F279, value); + } + + /** + * Set the F279 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF279(org.jooq.Field field) { + setNumber(F279, field); + } + + /** + * Set the F280 parameter to the routine + */ + public void setF280(java.lang.Number value) { + setNumber(F280, value); + } + + /** + * Set the F280 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF280(org.jooq.Field field) { + setNumber(F280, field); + } + + /** + * Set the F281 parameter to the routine + */ + public void setF281(java.lang.Number value) { + setNumber(F281, value); + } + + /** + * Set the F281 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF281(org.jooq.Field field) { + setNumber(F281, field); + } + + /** + * Set the F282 parameter to the routine + */ + public void setF282(java.lang.Number value) { + setNumber(F282, value); + } + + /** + * Set the F282 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF282(org.jooq.Field field) { + setNumber(F282, field); + } + + /** + * Set the F283 parameter to the routine + */ + public void setF283(java.lang.Number value) { + setNumber(F283, value); + } + + /** + * Set the F283 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF283(org.jooq.Field field) { + setNumber(F283, field); + } + + /** + * Set the F284 parameter to the routine + */ + public void setF284(java.lang.Number value) { + setNumber(F284, value); + } + + /** + * Set the F284 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF284(org.jooq.Field field) { + setNumber(F284, field); + } + + /** + * Set the F285 parameter to the routine + */ + public void setF285(java.lang.Number value) { + setNumber(F285, value); + } + + /** + * Set the F285 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF285(org.jooq.Field field) { + setNumber(F285, field); + } + + /** + * Set the F286 parameter to the routine + */ + public void setF286(java.lang.Number value) { + setNumber(F286, value); + } + + /** + * Set the F286 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF286(org.jooq.Field field) { + setNumber(F286, field); + } + + /** + * Set the F287 parameter to the routine + */ + public void setF287(java.lang.Number value) { + setNumber(F287, value); + } + + /** + * Set the F287 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF287(org.jooq.Field field) { + setNumber(F287, field); + } + + /** + * Set the F288 parameter to the routine + */ + public void setF288(java.lang.Number value) { + setNumber(F288, value); + } + + /** + * Set the F288 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF288(org.jooq.Field field) { + setNumber(F288, field); + } + + /** + * Set the F289 parameter to the routine + */ + public void setF289(java.lang.Number value) { + setNumber(F289, value); + } + + /** + * Set the F289 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF289(org.jooq.Field field) { + setNumber(F289, field); + } + + /** + * Set the F290 parameter to the routine + */ + public void setF290(java.lang.Number value) { + setNumber(F290, value); + } + + /** + * Set the F290 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF290(org.jooq.Field field) { + setNumber(F290, field); + } + + /** + * Set the F291 parameter to the routine + */ + public void setF291(java.lang.Number value) { + setNumber(F291, value); + } + + /** + * Set the F291 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF291(org.jooq.Field field) { + setNumber(F291, field); + } + + /** + * Set the F292 parameter to the routine + */ + public void setF292(java.lang.Number value) { + setNumber(F292, value); + } + + /** + * Set the F292 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF292(org.jooq.Field field) { + setNumber(F292, field); + } + + /** + * Set the F293 parameter to the routine + */ + public void setF293(java.lang.Number value) { + setNumber(F293, value); + } + + /** + * Set the F293 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF293(org.jooq.Field field) { + setNumber(F293, field); + } + + /** + * Set the F294 parameter to the routine + */ + public void setF294(java.lang.Number value) { + setNumber(F294, value); + } + + /** + * Set the F294 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF294(org.jooq.Field field) { + setNumber(F294, field); + } + + /** + * Set the F295 parameter to the routine + */ + public void setF295(java.lang.Number value) { + setNumber(F295, value); + } + + /** + * Set the F295 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF295(org.jooq.Field field) { + setNumber(F295, field); + } + + /** + * Set the F296 parameter to the routine + */ + public void setF296(java.lang.Number value) { + setNumber(F296, value); + } + + /** + * Set the F296 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF296(org.jooq.Field field) { + setNumber(F296, field); + } + + /** + * Set the F297 parameter to the routine + */ + public void setF297(java.lang.Number value) { + setNumber(F297, value); + } + + /** + * Set the F297 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF297(org.jooq.Field field) { + setNumber(F297, field); + } + + /** + * Set the F298 parameter to the routine + */ + public void setF298(java.lang.Number value) { + setNumber(F298, value); + } + + /** + * Set the F298 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF298(org.jooq.Field field) { + setNumber(F298, field); + } + + /** + * Set the F299 parameter to the routine + */ + public void setF299(java.lang.Number value) { + setNumber(F299, value); + } + + /** + * Set the F299 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF299(org.jooq.Field field) { + setNumber(F299, field); + } + + /** + * Set the F300 parameter to the routine + */ + public void setF300(java.lang.Number value) { + setNumber(F300, value); + } + + /** + * Set the F300 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF300(org.jooq.Field field) { + setNumber(F300, field); + } + + /** + * Set the F301 parameter to the routine + */ + public void setF301(java.lang.Number value) { + setNumber(F301, value); + } + + /** + * Set the F301 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF301(org.jooq.Field field) { + setNumber(F301, field); + } + + /** + * Set the F302 parameter to the routine + */ + public void setF302(java.lang.Number value) { + setNumber(F302, value); + } + + /** + * Set the F302 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF302(org.jooq.Field field) { + setNumber(F302, field); + } + + /** + * Set the F303 parameter to the routine + */ + public void setF303(java.lang.Number value) { + setNumber(F303, value); + } + + /** + * Set the F303 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF303(org.jooq.Field field) { + setNumber(F303, field); + } + + /** + * Set the F304 parameter to the routine + */ + public void setF304(java.lang.Number value) { + setNumber(F304, value); + } + + /** + * Set the F304 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF304(org.jooq.Field field) { + setNumber(F304, field); + } + + /** + * Set the F305 parameter to the routine + */ + public void setF305(java.lang.Number value) { + setNumber(F305, value); + } + + /** + * Set the F305 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF305(org.jooq.Field field) { + setNumber(F305, field); + } + + /** + * Set the F306 parameter to the routine + */ + public void setF306(java.lang.Number value) { + setNumber(F306, value); + } + + /** + * Set the F306 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF306(org.jooq.Field field) { + setNumber(F306, field); + } + + /** + * Set the F307 parameter to the routine + */ + public void setF307(java.lang.Number value) { + setNumber(F307, value); + } + + /** + * Set the F307 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF307(org.jooq.Field field) { + setNumber(F307, field); + } + + /** + * Set the F308 parameter to the routine + */ + public void setF308(java.lang.Number value) { + setNumber(F308, value); + } + + /** + * Set the F308 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF308(org.jooq.Field field) { + setNumber(F308, field); + } + + /** + * Set the F309 parameter to the routine + */ + public void setF309(java.lang.Number value) { + setNumber(F309, value); + } + + /** + * Set the F309 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF309(org.jooq.Field field) { + setNumber(F309, field); + } + + /** + * Set the F310 parameter to the routine + */ + public void setF310(java.lang.Number value) { + setNumber(F310, value); + } + + /** + * Set the F310 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF310(org.jooq.Field field) { + setNumber(F310, field); + } + + /** + * Set the F311 parameter to the routine + */ + public void setF311(java.lang.Number value) { + setNumber(F311, value); + } + + /** + * Set the F311 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF311(org.jooq.Field field) { + setNumber(F311, field); + } + + /** + * Set the F312 parameter to the routine + */ + public void setF312(java.lang.Number value) { + setNumber(F312, value); + } + + /** + * Set the F312 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF312(org.jooq.Field field) { + setNumber(F312, field); + } + + /** + * Set the F313 parameter to the routine + */ + public void setF313(java.lang.Number value) { + setNumber(F313, value); + } + + /** + * Set the F313 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF313(org.jooq.Field field) { + setNumber(F313, field); + } + + /** + * Set the F314 parameter to the routine + */ + public void setF314(java.lang.Number value) { + setNumber(F314, value); + } + + /** + * Set the F314 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF314(org.jooq.Field field) { + setNumber(F314, field); + } + + /** + * Set the F315 parameter to the routine + */ + public void setF315(java.lang.Number value) { + setNumber(F315, value); + } + + /** + * Set the F315 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF315(org.jooq.Field field) { + setNumber(F315, field); + } + + /** + * Set the F316 parameter to the routine + */ + public void setF316(java.lang.Number value) { + setNumber(F316, value); + } + + /** + * Set the F316 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF316(org.jooq.Field field) { + setNumber(F316, field); + } + + /** + * Set the F317 parameter to the routine + */ + public void setF317(java.lang.Number value) { + setNumber(F317, value); + } + + /** + * Set the F317 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF317(org.jooq.Field field) { + setNumber(F317, field); + } + + /** + * Set the F318 parameter to the routine + */ + public void setF318(java.lang.Number value) { + setNumber(F318, value); + } + + /** + * Set the F318 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF318(org.jooq.Field field) { + setNumber(F318, field); + } + + /** + * Set the F319 parameter to the routine + */ + public void setF319(java.lang.Number value) { + setNumber(F319, value); + } + + /** + * Set the F319 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF319(org.jooq.Field field) { + setNumber(F319, field); + } + + /** + * Set the F320 parameter to the routine + */ + public void setF320(java.lang.Number value) { + setNumber(F320, value); + } + + /** + * Set the F320 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF320(org.jooq.Field field) { + setNumber(F320, field); + } + + /** + * Set the F321 parameter to the routine + */ + public void setF321(java.lang.Number value) { + setNumber(F321, value); + } + + /** + * Set the F321 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF321(org.jooq.Field field) { + setNumber(F321, field); + } + + /** + * Set the F322 parameter to the routine + */ + public void setF322(java.lang.Number value) { + setNumber(F322, value); + } + + /** + * Set the F322 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF322(org.jooq.Field field) { + setNumber(F322, field); + } + + /** + * Set the F323 parameter to the routine + */ + public void setF323(java.lang.Number value) { + setNumber(F323, value); + } + + /** + * Set the F323 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF323(org.jooq.Field field) { + setNumber(F323, field); + } + + /** + * Set the F324 parameter to the routine + */ + public void setF324(java.lang.Number value) { + setNumber(F324, value); + } + + /** + * Set the F324 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF324(org.jooq.Field field) { + setNumber(F324, field); + } + + /** + * Set the F325 parameter to the routine + */ + public void setF325(java.lang.Number value) { + setNumber(F325, value); + } + + /** + * Set the F325 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF325(org.jooq.Field field) { + setNumber(F325, field); + } + + /** + * Set the F326 parameter to the routine + */ + public void setF326(java.lang.Number value) { + setNumber(F326, value); + } + + /** + * Set the F326 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF326(org.jooq.Field field) { + setNumber(F326, field); + } + + /** + * Set the F327 parameter to the routine + */ + public void setF327(java.lang.Number value) { + setNumber(F327, value); + } + + /** + * Set the F327 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF327(org.jooq.Field field) { + setNumber(F327, field); + } + + /** + * Set the F328 parameter to the routine + */ + public void setF328(java.lang.Number value) { + setNumber(F328, value); + } + + /** + * Set the F328 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF328(org.jooq.Field field) { + setNumber(F328, field); + } + + /** + * Set the F329 parameter to the routine + */ + public void setF329(java.lang.Number value) { + setNumber(F329, value); + } + + /** + * Set the F329 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF329(org.jooq.Field field) { + setNumber(F329, field); + } + + /** + * Set the F330 parameter to the routine + */ + public void setF330(java.lang.Number value) { + setNumber(F330, value); + } + + /** + * Set the F330 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF330(org.jooq.Field field) { + setNumber(F330, field); + } + + /** + * Set the F331 parameter to the routine + */ + public void setF331(java.lang.Number value) { + setNumber(F331, value); + } + + /** + * Set the F331 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF331(org.jooq.Field field) { + setNumber(F331, field); + } + + /** + * Set the F332 parameter to the routine + */ + public void setF332(java.lang.Number value) { + setNumber(F332, value); + } + + /** + * Set the F332 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF332(org.jooq.Field field) { + setNumber(F332, field); + } + + /** + * Set the F333 parameter to the routine + */ + public void setF333(java.lang.Number value) { + setNumber(F333, value); + } + + /** + * Set the F333 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF333(org.jooq.Field field) { + setNumber(F333, field); + } + + /** + * Set the F334 parameter to the routine + */ + public void setF334(java.lang.Number value) { + setNumber(F334, value); + } + + /** + * Set the F334 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF334(org.jooq.Field field) { + setNumber(F334, field); + } + + /** + * Set the F335 parameter to the routine + */ + public void setF335(java.lang.Number value) { + setNumber(F335, value); + } + + /** + * Set the F335 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF335(org.jooq.Field field) { + setNumber(F335, field); + } + + /** + * Set the F336 parameter to the routine + */ + public void setF336(java.lang.Number value) { + setNumber(F336, value); + } + + /** + * Set the F336 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF336(org.jooq.Field field) { + setNumber(F336, field); + } + + /** + * Set the F337 parameter to the routine + */ + public void setF337(java.lang.Number value) { + setNumber(F337, value); + } + + /** + * Set the F337 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF337(org.jooq.Field field) { + setNumber(F337, field); + } + + /** + * Set the F338 parameter to the routine + */ + public void setF338(java.lang.Number value) { + setNumber(F338, value); + } + + /** + * Set the F338 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF338(org.jooq.Field field) { + setNumber(F338, field); + } + + /** + * Set the F339 parameter to the routine + */ + public void setF339(java.lang.Number value) { + setNumber(F339, value); + } + + /** + * Set the F339 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF339(org.jooq.Field field) { + setNumber(F339, field); + } + + /** + * Set the F340 parameter to the routine + */ + public void setF340(java.lang.Number value) { + setNumber(F340, value); + } + + /** + * Set the F340 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF340(org.jooq.Field field) { + setNumber(F340, field); + } + + /** + * Set the F341 parameter to the routine + */ + public void setF341(java.lang.Number value) { + setNumber(F341, value); + } + + /** + * Set the F341 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF341(org.jooq.Field field) { + setNumber(F341, field); + } + + /** + * Set the F342 parameter to the routine + */ + public void setF342(java.lang.Number value) { + setNumber(F342, value); + } + + /** + * Set the F342 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF342(org.jooq.Field field) { + setNumber(F342, field); + } + + /** + * Set the F343 parameter to the routine + */ + public void setF343(java.lang.Number value) { + setNumber(F343, value); + } + + /** + * Set the F343 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF343(org.jooq.Field field) { + setNumber(F343, field); + } + + /** + * Set the F344 parameter to the routine + */ + public void setF344(java.lang.Number value) { + setNumber(F344, value); + } + + /** + * Set the F344 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF344(org.jooq.Field field) { + setNumber(F344, field); + } + + /** + * Set the F345 parameter to the routine + */ + public void setF345(java.lang.Number value) { + setNumber(F345, value); + } + + /** + * Set the F345 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF345(org.jooq.Field field) { + setNumber(F345, field); + } + + /** + * Set the F346 parameter to the routine + */ + public void setF346(java.lang.Number value) { + setNumber(F346, value); + } + + /** + * Set the F346 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF346(org.jooq.Field field) { + setNumber(F346, field); + } + + /** + * Set the F347 parameter to the routine + */ + public void setF347(java.lang.Number value) { + setNumber(F347, value); + } + + /** + * Set the F347 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF347(org.jooq.Field field) { + setNumber(F347, field); + } + + /** + * Set the F348 parameter to the routine + */ + public void setF348(java.lang.Number value) { + setNumber(F348, value); + } + + /** + * Set the F348 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF348(org.jooq.Field field) { + setNumber(F348, field); + } + + /** + * Set the F349 parameter to the routine + */ + public void setF349(java.lang.Number value) { + setNumber(F349, value); + } + + /** + * Set the F349 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF349(org.jooq.Field field) { + setNumber(F349, field); + } + + /** + * Set the F350 parameter to the routine + */ + public void setF350(java.lang.Number value) { + setNumber(F350, value); + } + + /** + * Set the F350 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF350(org.jooq.Field field) { + setNumber(F350, field); + } + + /** + * Set the F351 parameter to the routine + */ + public void setF351(java.lang.Number value) { + setNumber(F351, value); + } + + /** + * Set the F351 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF351(org.jooq.Field field) { + setNumber(F351, field); + } + + /** + * Set the F352 parameter to the routine + */ + public void setF352(java.lang.Number value) { + setNumber(F352, value); + } + + /** + * Set the F352 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF352(org.jooq.Field field) { + setNumber(F352, field); + } + + /** + * Set the F353 parameter to the routine + */ + public void setF353(java.lang.Number value) { + setNumber(F353, value); + } + + /** + * Set the F353 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF353(org.jooq.Field field) { + setNumber(F353, field); + } + + /** + * Set the F354 parameter to the routine + */ + public void setF354(java.lang.Number value) { + setNumber(F354, value); + } + + /** + * Set the F354 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF354(org.jooq.Field field) { + setNumber(F354, field); + } + + /** + * Set the F355 parameter to the routine + */ + public void setF355(java.lang.Number value) { + setNumber(F355, value); + } + + /** + * Set the F355 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF355(org.jooq.Field field) { + setNumber(F355, field); + } + + /** + * Set the F356 parameter to the routine + */ + public void setF356(java.lang.Number value) { + setNumber(F356, value); + } + + /** + * Set the F356 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF356(org.jooq.Field field) { + setNumber(F356, field); + } + + /** + * Set the F357 parameter to the routine + */ + public void setF357(java.lang.Number value) { + setNumber(F357, value); + } + + /** + * Set the F357 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF357(org.jooq.Field field) { + setNumber(F357, field); + } + + /** + * Set the F358 parameter to the routine + */ + public void setF358(java.lang.Number value) { + setNumber(F358, value); + } + + /** + * Set the F358 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF358(org.jooq.Field field) { + setNumber(F358, field); + } + + /** + * Set the F359 parameter to the routine + */ + public void setF359(java.lang.Number value) { + setNumber(F359, value); + } + + /** + * Set the F359 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF359(org.jooq.Field field) { + setNumber(F359, field); + } + + /** + * Set the F360 parameter to the routine + */ + public void setF360(java.lang.Number value) { + setNumber(F360, value); + } + + /** + * Set the F360 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF360(org.jooq.Field field) { + setNumber(F360, field); + } + + /** + * Set the F361 parameter to the routine + */ + public void setF361(java.lang.Number value) { + setNumber(F361, value); + } + + /** + * Set the F361 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF361(org.jooq.Field field) { + setNumber(F361, field); + } + + /** + * Set the F362 parameter to the routine + */ + public void setF362(java.lang.Number value) { + setNumber(F362, value); + } + + /** + * Set the F362 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF362(org.jooq.Field field) { + setNumber(F362, field); + } + + /** + * Set the F363 parameter to the routine + */ + public void setF363(java.lang.Number value) { + setNumber(F363, value); + } + + /** + * Set the F363 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF363(org.jooq.Field field) { + setNumber(F363, field); + } + + /** + * Set the F364 parameter to the routine + */ + public void setF364(java.lang.Number value) { + setNumber(F364, value); + } + + /** + * Set the F364 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF364(org.jooq.Field field) { + setNumber(F364, field); + } + + /** + * Set the F365 parameter to the routine + */ + public void setF365(java.lang.Number value) { + setNumber(F365, value); + } + + /** + * Set the F365 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF365(org.jooq.Field field) { + setNumber(F365, field); + } + + /** + * Set the F366 parameter to the routine + */ + public void setF366(java.lang.Number value) { + setNumber(F366, value); + } + + /** + * Set the F366 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF366(org.jooq.Field field) { + setNumber(F366, field); + } + + /** + * Set the F367 parameter to the routine + */ + public void setF367(java.lang.Number value) { + setNumber(F367, value); + } + + /** + * Set the F367 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF367(org.jooq.Field field) { + setNumber(F367, field); + } + + /** + * Set the F368 parameter to the routine + */ + public void setF368(java.lang.Number value) { + setNumber(F368, value); + } + + /** + * Set the F368 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF368(org.jooq.Field field) { + setNumber(F368, field); + } + + /** + * Set the F369 parameter to the routine + */ + public void setF369(java.lang.Number value) { + setNumber(F369, value); + } + + /** + * Set the F369 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF369(org.jooq.Field field) { + setNumber(F369, field); + } + + /** + * Set the F370 parameter to the routine + */ + public void setF370(java.lang.Number value) { + setNumber(F370, value); + } + + /** + * Set the F370 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF370(org.jooq.Field field) { + setNumber(F370, field); + } + + /** + * Set the F371 parameter to the routine + */ + public void setF371(java.lang.Number value) { + setNumber(F371, value); + } + + /** + * Set the F371 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF371(org.jooq.Field field) { + setNumber(F371, field); + } + + /** + * Set the F372 parameter to the routine + */ + public void setF372(java.lang.Number value) { + setNumber(F372, value); + } + + /** + * Set the F372 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF372(org.jooq.Field field) { + setNumber(F372, field); + } + + /** + * Set the F373 parameter to the routine + */ + public void setF373(java.lang.Number value) { + setNumber(F373, value); + } + + /** + * Set the F373 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF373(org.jooq.Field field) { + setNumber(F373, field); + } + + /** + * Set the F374 parameter to the routine + */ + public void setF374(java.lang.Number value) { + setNumber(F374, value); + } + + /** + * Set the F374 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF374(org.jooq.Field field) { + setNumber(F374, field); + } + + /** + * Set the F375 parameter to the routine + */ + public void setF375(java.lang.Number value) { + setNumber(F375, value); + } + + /** + * Set the F375 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF375(org.jooq.Field field) { + setNumber(F375, field); + } + + /** + * Set the F376 parameter to the routine + */ + public void setF376(java.lang.Number value) { + setNumber(F376, value); + } + + /** + * Set the F376 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF376(org.jooq.Field field) { + setNumber(F376, field); + } + + /** + * Set the F377 parameter to the routine + */ + public void setF377(java.lang.Number value) { + setNumber(F377, value); + } + + /** + * Set the F377 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF377(org.jooq.Field field) { + setNumber(F377, field); + } + + /** + * Set the F378 parameter to the routine + */ + public void setF378(java.lang.Number value) { + setNumber(F378, value); + } + + /** + * Set the F378 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF378(org.jooq.Field field) { + setNumber(F378, field); + } + + /** + * Set the F379 parameter to the routine + */ + public void setF379(java.lang.Number value) { + setNumber(F379, value); + } + + /** + * Set the F379 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF379(org.jooq.Field field) { + setNumber(F379, field); + } + + /** + * Set the F380 parameter to the routine + */ + public void setF380(java.lang.Number value) { + setNumber(F380, value); + } + + /** + * Set the F380 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF380(org.jooq.Field field) { + setNumber(F380, field); + } + + /** + * Set the F381 parameter to the routine + */ + public void setF381(java.lang.Number value) { + setNumber(F381, value); + } + + /** + * Set the F381 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF381(org.jooq.Field field) { + setNumber(F381, field); + } + + /** + * Set the F382 parameter to the routine + */ + public void setF382(java.lang.Number value) { + setNumber(F382, value); + } + + /** + * Set the F382 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF382(org.jooq.Field field) { + setNumber(F382, field); + } + + /** + * Set the F383 parameter to the routine + */ + public void setF383(java.lang.Number value) { + setNumber(F383, value); + } + + /** + * Set the F383 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF383(org.jooq.Field field) { + setNumber(F383, field); + } + + /** + * Set the F384 parameter to the routine + */ + public void setF384(java.lang.Number value) { + setNumber(F384, value); + } + + /** + * Set the F384 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF384(org.jooq.Field field) { + setNumber(F384, field); + } + + /** + * Set the F385 parameter to the routine + */ + public void setF385(java.lang.Number value) { + setNumber(F385, value); + } + + /** + * Set the F385 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF385(org.jooq.Field field) { + setNumber(F385, field); + } + + /** + * Set the F386 parameter to the routine + */ + public void setF386(java.lang.Number value) { + setNumber(F386, value); + } + + /** + * Set the F386 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF386(org.jooq.Field field) { + setNumber(F386, field); + } + + /** + * Set the F387 parameter to the routine + */ + public void setF387(java.lang.Number value) { + setNumber(F387, value); + } + + /** + * Set the F387 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF387(org.jooq.Field field) { + setNumber(F387, field); + } + + /** + * Set the F388 parameter to the routine + */ + public void setF388(java.lang.Number value) { + setNumber(F388, value); + } + + /** + * Set the F388 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF388(org.jooq.Field field) { + setNumber(F388, field); + } + + /** + * Set the F389 parameter to the routine + */ + public void setF389(java.lang.Number value) { + setNumber(F389, value); + } + + /** + * Set the F389 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF389(org.jooq.Field field) { + setNumber(F389, field); + } + + /** + * Set the F390 parameter to the routine + */ + public void setF390(java.lang.Number value) { + setNumber(F390, value); + } + + /** + * Set the F390 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF390(org.jooq.Field field) { + setNumber(F390, field); + } + + /** + * Set the F391 parameter to the routine + */ + public void setF391(java.lang.Number value) { + setNumber(F391, value); + } + + /** + * Set the F391 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF391(org.jooq.Field field) { + setNumber(F391, field); + } + + /** + * Set the F392 parameter to the routine + */ + public void setF392(java.lang.Number value) { + setNumber(F392, value); + } + + /** + * Set the F392 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF392(org.jooq.Field field) { + setNumber(F392, field); + } + + /** + * Set the F393 parameter to the routine + */ + public void setF393(java.lang.Number value) { + setNumber(F393, value); + } + + /** + * Set the F393 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF393(org.jooq.Field field) { + setNumber(F393, field); + } + + /** + * Set the F394 parameter to the routine + */ + public void setF394(java.lang.Number value) { + setNumber(F394, value); + } + + /** + * Set the F394 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF394(org.jooq.Field field) { + setNumber(F394, field); + } + + /** + * Set the F395 parameter to the routine + */ + public void setF395(java.lang.Number value) { + setNumber(F395, value); + } + + /** + * Set the F395 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF395(org.jooq.Field field) { + setNumber(F395, field); + } + + /** + * Set the F396 parameter to the routine + */ + public void setF396(java.lang.Number value) { + setNumber(F396, value); + } + + /** + * Set the F396 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF396(org.jooq.Field field) { + setNumber(F396, field); + } + + /** + * Set the F397 parameter to the routine + */ + public void setF397(java.lang.Number value) { + setNumber(F397, value); + } + + /** + * Set the F397 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF397(org.jooq.Field field) { + setNumber(F397, field); + } + + /** + * Set the F398 parameter to the routine + */ + public void setF398(java.lang.Number value) { + setNumber(F398, value); + } + + /** + * Set the F398 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF398(org.jooq.Field field) { + setNumber(F398, field); + } + + /** + * Set the F399 parameter to the routine + */ + public void setF399(java.lang.Number value) { + setNumber(F399, value); + } + + /** + * Set the F399 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF399(org.jooq.Field field) { + setNumber(F399, field); + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/packages/library/PkgFUnused.java b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/packages/library/PkgFUnused.java new file mode 100644 index 00000000000..e061db03603 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/packages/library/PkgFUnused.java @@ -0,0 +1,27 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle.generatedclasses.test.packages.library; + +/** + * This class is generated by jOOQ. + */ +public class PkgFUnused extends org.jooq.impl.AbstractRoutine { + + private static final long serialVersionUID = 113386422; + + + /** + * An uncommented item + */ + public static final org.jooq.Parameter RETURN_VALUE = createParameter("RETURN_VALUE", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * Create a new routine call instance + */ + public PkgFUnused() { + super("PKG_F_UNUSED", org.jooq.test.oracle.generatedclasses.test.Test.TEST, org.jooq.test.oracle.generatedclasses.test.packages.Library.LIBRARY, org.jooq.impl.SQLDataType.NUMERIC); + + setReturnParameter(RETURN_VALUE); + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/packages/library/PkgPAuthorExists1.java b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/packages/library/PkgPAuthorExists1.java new file mode 100644 index 00000000000..1b37441ba7b --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/packages/library/PkgPAuthorExists1.java @@ -0,0 +1,45 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle.generatedclasses.test.packages.library; + +/** + * This class is generated by jOOQ. + */ +public class PkgPAuthorExists1 extends org.jooq.impl.AbstractRoutine { + + private static final long serialVersionUID = -76253071; + + + /** + * An uncommented item + */ + public static final org.jooq.Parameter AUTHOR_NAME = createParameter("AUTHOR_NAME", org.jooq.impl.SQLDataType.VARCHAR); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter RESULT = createParameter("RESULT", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * Create a new routine call instance + */ + public PkgPAuthorExists1() { + super("PKG_P_AUTHOR_EXISTS", org.jooq.test.oracle.generatedclasses.test.Test.TEST, org.jooq.test.oracle.generatedclasses.test.packages.Library.LIBRARY); + + addInParameter(AUTHOR_NAME); + addOutParameter(RESULT); + setOverloaded(true); + } + + /** + * Set the AUTHOR_NAME parameter to the routine + */ + public void setAuthorName(java.lang.String value) { + setValue(AUTHOR_NAME, value); + } + + public java.math.BigDecimal getResult() { + return getValue(RESULT); + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/packages/library/PkgPAuthorExists2.java b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/packages/library/PkgPAuthorExists2.java new file mode 100644 index 00000000000..f5ca4ea9c99 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/packages/library/PkgPAuthorExists2.java @@ -0,0 +1,62 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle.generatedclasses.test.packages.library; + +/** + * This class is generated by jOOQ. + */ +public class PkgPAuthorExists2 extends org.jooq.impl.AbstractRoutine { + + private static final long serialVersionUID = -1288729367; + + + /** + * An uncommented item + */ + public static final org.jooq.Parameter AUTHOR_NAME = createParameter("AUTHOR_NAME", org.jooq.impl.SQLDataType.VARCHAR); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter RESULT = createParameter("RESULT", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter UNUSED = createParameter("UNUSED", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * Create a new routine call instance + */ + public PkgPAuthorExists2() { + super("PKG_P_AUTHOR_EXISTS", org.jooq.test.oracle.generatedclasses.test.Test.TEST, org.jooq.test.oracle.generatedclasses.test.packages.Library.LIBRARY); + + addInParameter(AUTHOR_NAME); + addOutParameter(RESULT); + addInOutParameter(UNUSED); + setOverloaded(true); + } + + /** + * Set the AUTHOR_NAME parameter to the routine + */ + public void setAuthorName(java.lang.String value) { + setValue(AUTHOR_NAME, value); + } + + /** + * Set the UNUSED parameter to the routine + */ + public void setUnused(java.lang.Number value) { + setNumber(UNUSED, value); + } + + public java.math.BigDecimal getResult() { + return getValue(RESULT); + } + + public java.math.BigDecimal getUnused() { + return getValue(UNUSED); + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/packages/library/PkgPManyParameters.java b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/packages/library/PkgPManyParameters.java new file mode 100644 index 00000000000..1b54851af03 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/packages/library/PkgPManyParameters.java @@ -0,0 +1,5221 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle.generatedclasses.test.packages.library; + +/** + * This class is generated by jOOQ. + */ +public class PkgPManyParameters extends org.jooq.impl.AbstractRoutine { + + private static final long serialVersionUID = -1903671093; + + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F000 = createParameter("F000", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F001 = createParameter("F001", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F002 = createParameter("F002", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F003 = createParameter("F003", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F004 = createParameter("F004", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F005 = createParameter("F005", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F006 = createParameter("F006", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F007 = createParameter("F007", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F008 = createParameter("F008", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F009 = createParameter("F009", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F010 = createParameter("F010", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F011 = createParameter("F011", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F012 = createParameter("F012", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F013 = createParameter("F013", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F014 = createParameter("F014", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F015 = createParameter("F015", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F016 = createParameter("F016", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F017 = createParameter("F017", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F018 = createParameter("F018", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F019 = createParameter("F019", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F020 = createParameter("F020", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F021 = createParameter("F021", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F022 = createParameter("F022", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F023 = createParameter("F023", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F024 = createParameter("F024", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F025 = createParameter("F025", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F026 = createParameter("F026", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F027 = createParameter("F027", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F028 = createParameter("F028", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F029 = createParameter("F029", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F030 = createParameter("F030", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F031 = createParameter("F031", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F032 = createParameter("F032", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F033 = createParameter("F033", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F034 = createParameter("F034", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F035 = createParameter("F035", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F036 = createParameter("F036", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F037 = createParameter("F037", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F038 = createParameter("F038", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F039 = createParameter("F039", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F040 = createParameter("F040", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F041 = createParameter("F041", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F042 = createParameter("F042", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F043 = createParameter("F043", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F044 = createParameter("F044", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F045 = createParameter("F045", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F046 = createParameter("F046", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F047 = createParameter("F047", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F048 = createParameter("F048", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F049 = createParameter("F049", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F050 = createParameter("F050", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F051 = createParameter("F051", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F052 = createParameter("F052", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F053 = createParameter("F053", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F054 = createParameter("F054", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F055 = createParameter("F055", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F056 = createParameter("F056", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F057 = createParameter("F057", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F058 = createParameter("F058", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F059 = createParameter("F059", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F060 = createParameter("F060", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F061 = createParameter("F061", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F062 = createParameter("F062", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F063 = createParameter("F063", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F064 = createParameter("F064", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F065 = createParameter("F065", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F066 = createParameter("F066", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F067 = createParameter("F067", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F068 = createParameter("F068", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F069 = createParameter("F069", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F070 = createParameter("F070", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F071 = createParameter("F071", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F072 = createParameter("F072", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F073 = createParameter("F073", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F074 = createParameter("F074", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F075 = createParameter("F075", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F076 = createParameter("F076", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F077 = createParameter("F077", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F078 = createParameter("F078", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F079 = createParameter("F079", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F080 = createParameter("F080", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F081 = createParameter("F081", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F082 = createParameter("F082", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F083 = createParameter("F083", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F084 = createParameter("F084", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F085 = createParameter("F085", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F086 = createParameter("F086", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F087 = createParameter("F087", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F088 = createParameter("F088", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F089 = createParameter("F089", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F090 = createParameter("F090", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F091 = createParameter("F091", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F092 = createParameter("F092", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F093 = createParameter("F093", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F094 = createParameter("F094", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F095 = createParameter("F095", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F096 = createParameter("F096", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F097 = createParameter("F097", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F098 = createParameter("F098", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F099 = createParameter("F099", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F100 = createParameter("F100", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F101 = createParameter("F101", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F102 = createParameter("F102", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F103 = createParameter("F103", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F104 = createParameter("F104", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F105 = createParameter("F105", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F106 = createParameter("F106", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F107 = createParameter("F107", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F108 = createParameter("F108", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F109 = createParameter("F109", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F110 = createParameter("F110", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F111 = createParameter("F111", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F112 = createParameter("F112", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F113 = createParameter("F113", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F114 = createParameter("F114", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F115 = createParameter("F115", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F116 = createParameter("F116", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F117 = createParameter("F117", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F118 = createParameter("F118", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F119 = createParameter("F119", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F120 = createParameter("F120", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F121 = createParameter("F121", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F122 = createParameter("F122", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F123 = createParameter("F123", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F124 = createParameter("F124", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F125 = createParameter("F125", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F126 = createParameter("F126", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F127 = createParameter("F127", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F128 = createParameter("F128", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F129 = createParameter("F129", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F130 = createParameter("F130", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F131 = createParameter("F131", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F132 = createParameter("F132", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F133 = createParameter("F133", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F134 = createParameter("F134", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F135 = createParameter("F135", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F136 = createParameter("F136", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F137 = createParameter("F137", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F138 = createParameter("F138", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F139 = createParameter("F139", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F140 = createParameter("F140", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F141 = createParameter("F141", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F142 = createParameter("F142", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F143 = createParameter("F143", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F144 = createParameter("F144", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F145 = createParameter("F145", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F146 = createParameter("F146", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F147 = createParameter("F147", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F148 = createParameter("F148", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F149 = createParameter("F149", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F150 = createParameter("F150", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F151 = createParameter("F151", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F152 = createParameter("F152", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F153 = createParameter("F153", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F154 = createParameter("F154", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F155 = createParameter("F155", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F156 = createParameter("F156", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F157 = createParameter("F157", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F158 = createParameter("F158", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F159 = createParameter("F159", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F160 = createParameter("F160", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F161 = createParameter("F161", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F162 = createParameter("F162", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F163 = createParameter("F163", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F164 = createParameter("F164", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F165 = createParameter("F165", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F166 = createParameter("F166", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F167 = createParameter("F167", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F168 = createParameter("F168", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F169 = createParameter("F169", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F170 = createParameter("F170", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F171 = createParameter("F171", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F172 = createParameter("F172", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F173 = createParameter("F173", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F174 = createParameter("F174", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F175 = createParameter("F175", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F176 = createParameter("F176", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F177 = createParameter("F177", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F178 = createParameter("F178", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F179 = createParameter("F179", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F180 = createParameter("F180", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F181 = createParameter("F181", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F182 = createParameter("F182", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F183 = createParameter("F183", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F184 = createParameter("F184", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F185 = createParameter("F185", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F186 = createParameter("F186", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F187 = createParameter("F187", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F188 = createParameter("F188", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F189 = createParameter("F189", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F190 = createParameter("F190", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F191 = createParameter("F191", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F192 = createParameter("F192", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F193 = createParameter("F193", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F194 = createParameter("F194", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F195 = createParameter("F195", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F196 = createParameter("F196", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F197 = createParameter("F197", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F198 = createParameter("F198", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F199 = createParameter("F199", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F200 = createParameter("F200", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F201 = createParameter("F201", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F202 = createParameter("F202", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F203 = createParameter("F203", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F204 = createParameter("F204", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F205 = createParameter("F205", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F206 = createParameter("F206", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F207 = createParameter("F207", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F208 = createParameter("F208", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F209 = createParameter("F209", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F210 = createParameter("F210", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F211 = createParameter("F211", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F212 = createParameter("F212", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F213 = createParameter("F213", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F214 = createParameter("F214", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F215 = createParameter("F215", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F216 = createParameter("F216", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F217 = createParameter("F217", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F218 = createParameter("F218", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F219 = createParameter("F219", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F220 = createParameter("F220", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F221 = createParameter("F221", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F222 = createParameter("F222", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F223 = createParameter("F223", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F224 = createParameter("F224", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F225 = createParameter("F225", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F226 = createParameter("F226", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F227 = createParameter("F227", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F228 = createParameter("F228", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F229 = createParameter("F229", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F230 = createParameter("F230", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F231 = createParameter("F231", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F232 = createParameter("F232", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F233 = createParameter("F233", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F234 = createParameter("F234", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F235 = createParameter("F235", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F236 = createParameter("F236", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F237 = createParameter("F237", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F238 = createParameter("F238", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F239 = createParameter("F239", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F240 = createParameter("F240", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F241 = createParameter("F241", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F242 = createParameter("F242", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F243 = createParameter("F243", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F244 = createParameter("F244", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F245 = createParameter("F245", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F246 = createParameter("F246", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F247 = createParameter("F247", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F248 = createParameter("F248", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F249 = createParameter("F249", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F250 = createParameter("F250", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F251 = createParameter("F251", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F252 = createParameter("F252", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F253 = createParameter("F253", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F254 = createParameter("F254", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F255 = createParameter("F255", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F256 = createParameter("F256", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F257 = createParameter("F257", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F258 = createParameter("F258", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F259 = createParameter("F259", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F260 = createParameter("F260", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F261 = createParameter("F261", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F262 = createParameter("F262", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F263 = createParameter("F263", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F264 = createParameter("F264", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F265 = createParameter("F265", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F266 = createParameter("F266", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F267 = createParameter("F267", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F268 = createParameter("F268", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F269 = createParameter("F269", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F270 = createParameter("F270", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F271 = createParameter("F271", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F272 = createParameter("F272", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F273 = createParameter("F273", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F274 = createParameter("F274", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F275 = createParameter("F275", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F276 = createParameter("F276", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F277 = createParameter("F277", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F278 = createParameter("F278", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F279 = createParameter("F279", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F280 = createParameter("F280", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F281 = createParameter("F281", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F282 = createParameter("F282", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F283 = createParameter("F283", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F284 = createParameter("F284", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F285 = createParameter("F285", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F286 = createParameter("F286", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F287 = createParameter("F287", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F288 = createParameter("F288", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F289 = createParameter("F289", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F290 = createParameter("F290", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F291 = createParameter("F291", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F292 = createParameter("F292", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F293 = createParameter("F293", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F294 = createParameter("F294", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F295 = createParameter("F295", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F296 = createParameter("F296", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F297 = createParameter("F297", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F298 = createParameter("F298", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F299 = createParameter("F299", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F300 = createParameter("F300", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F301 = createParameter("F301", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F302 = createParameter("F302", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F303 = createParameter("F303", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F304 = createParameter("F304", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F305 = createParameter("F305", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F306 = createParameter("F306", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F307 = createParameter("F307", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F308 = createParameter("F308", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F309 = createParameter("F309", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F310 = createParameter("F310", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F311 = createParameter("F311", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F312 = createParameter("F312", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F313 = createParameter("F313", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F314 = createParameter("F314", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F315 = createParameter("F315", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F316 = createParameter("F316", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F317 = createParameter("F317", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F318 = createParameter("F318", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F319 = createParameter("F319", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F320 = createParameter("F320", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F321 = createParameter("F321", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F322 = createParameter("F322", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F323 = createParameter("F323", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F324 = createParameter("F324", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F325 = createParameter("F325", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F326 = createParameter("F326", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F327 = createParameter("F327", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F328 = createParameter("F328", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F329 = createParameter("F329", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F330 = createParameter("F330", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F331 = createParameter("F331", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F332 = createParameter("F332", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F333 = createParameter("F333", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F334 = createParameter("F334", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F335 = createParameter("F335", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F336 = createParameter("F336", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F337 = createParameter("F337", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F338 = createParameter("F338", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F339 = createParameter("F339", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F340 = createParameter("F340", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F341 = createParameter("F341", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F342 = createParameter("F342", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F343 = createParameter("F343", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F344 = createParameter("F344", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F345 = createParameter("F345", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F346 = createParameter("F346", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F347 = createParameter("F347", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F348 = createParameter("F348", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F349 = createParameter("F349", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F350 = createParameter("F350", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F351 = createParameter("F351", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F352 = createParameter("F352", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F353 = createParameter("F353", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F354 = createParameter("F354", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F355 = createParameter("F355", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F356 = createParameter("F356", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F357 = createParameter("F357", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F358 = createParameter("F358", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F359 = createParameter("F359", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F360 = createParameter("F360", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F361 = createParameter("F361", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F362 = createParameter("F362", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F363 = createParameter("F363", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F364 = createParameter("F364", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F365 = createParameter("F365", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F366 = createParameter("F366", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F367 = createParameter("F367", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F368 = createParameter("F368", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F369 = createParameter("F369", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F370 = createParameter("F370", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F371 = createParameter("F371", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F372 = createParameter("F372", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F373 = createParameter("F373", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F374 = createParameter("F374", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F375 = createParameter("F375", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F376 = createParameter("F376", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F377 = createParameter("F377", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F378 = createParameter("F378", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F379 = createParameter("F379", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F380 = createParameter("F380", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F381 = createParameter("F381", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F382 = createParameter("F382", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F383 = createParameter("F383", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F384 = createParameter("F384", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F385 = createParameter("F385", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F386 = createParameter("F386", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F387 = createParameter("F387", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F388 = createParameter("F388", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F389 = createParameter("F389", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F390 = createParameter("F390", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F391 = createParameter("F391", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F392 = createParameter("F392", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F393 = createParameter("F393", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F394 = createParameter("F394", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F395 = createParameter("F395", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F396 = createParameter("F396", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F397 = createParameter("F397", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F398 = createParameter("F398", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F399 = createParameter("F399", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * Create a new routine call instance + */ + public PkgPManyParameters() { + super("PKG_P_MANY_PARAMETERS", org.jooq.test.oracle.generatedclasses.test.Test.TEST, org.jooq.test.oracle.generatedclasses.test.packages.Library.LIBRARY); + + addInParameter(F000); + addInParameter(F001); + addInParameter(F002); + addInParameter(F003); + addInParameter(F004); + addInParameter(F005); + addInParameter(F006); + addInParameter(F007); + addInParameter(F008); + addInParameter(F009); + addInParameter(F010); + addInParameter(F011); + addInParameter(F012); + addInParameter(F013); + addInParameter(F014); + addInParameter(F015); + addInParameter(F016); + addInParameter(F017); + addInParameter(F018); + addInParameter(F019); + addInParameter(F020); + addInParameter(F021); + addInParameter(F022); + addInParameter(F023); + addInParameter(F024); + addInParameter(F025); + addInParameter(F026); + addInParameter(F027); + addInParameter(F028); + addInParameter(F029); + addInParameter(F030); + addInParameter(F031); + addInParameter(F032); + addInParameter(F033); + addInParameter(F034); + addInParameter(F035); + addInParameter(F036); + addInParameter(F037); + addInParameter(F038); + addInParameter(F039); + addInParameter(F040); + addInParameter(F041); + addInParameter(F042); + addInParameter(F043); + addInParameter(F044); + addInParameter(F045); + addInParameter(F046); + addInParameter(F047); + addInParameter(F048); + addInParameter(F049); + addInParameter(F050); + addInParameter(F051); + addInParameter(F052); + addInParameter(F053); + addInParameter(F054); + addInParameter(F055); + addInParameter(F056); + addInParameter(F057); + addInParameter(F058); + addInParameter(F059); + addInParameter(F060); + addInParameter(F061); + addInParameter(F062); + addInParameter(F063); + addInParameter(F064); + addInParameter(F065); + addInParameter(F066); + addInParameter(F067); + addInParameter(F068); + addInParameter(F069); + addInParameter(F070); + addInParameter(F071); + addInParameter(F072); + addInParameter(F073); + addInParameter(F074); + addInParameter(F075); + addInParameter(F076); + addInParameter(F077); + addInParameter(F078); + addInParameter(F079); + addInParameter(F080); + addInParameter(F081); + addInParameter(F082); + addInParameter(F083); + addInParameter(F084); + addInParameter(F085); + addInParameter(F086); + addInParameter(F087); + addInParameter(F088); + addInParameter(F089); + addInParameter(F090); + addInParameter(F091); + addInParameter(F092); + addInParameter(F093); + addInParameter(F094); + addInParameter(F095); + addInParameter(F096); + addInParameter(F097); + addInParameter(F098); + addInParameter(F099); + addInParameter(F100); + addInParameter(F101); + addInParameter(F102); + addInParameter(F103); + addInParameter(F104); + addInParameter(F105); + addInParameter(F106); + addInParameter(F107); + addInParameter(F108); + addInParameter(F109); + addInParameter(F110); + addInParameter(F111); + addInParameter(F112); + addInParameter(F113); + addInParameter(F114); + addInParameter(F115); + addInParameter(F116); + addInParameter(F117); + addInParameter(F118); + addInParameter(F119); + addInParameter(F120); + addInParameter(F121); + addInParameter(F122); + addInParameter(F123); + addInParameter(F124); + addInParameter(F125); + addInParameter(F126); + addInParameter(F127); + addInParameter(F128); + addInParameter(F129); + addInParameter(F130); + addInParameter(F131); + addInParameter(F132); + addInParameter(F133); + addInParameter(F134); + addInParameter(F135); + addInParameter(F136); + addInParameter(F137); + addInParameter(F138); + addInParameter(F139); + addInParameter(F140); + addInParameter(F141); + addInParameter(F142); + addInParameter(F143); + addInParameter(F144); + addInParameter(F145); + addInParameter(F146); + addInParameter(F147); + addInParameter(F148); + addInParameter(F149); + addInParameter(F150); + addInParameter(F151); + addInParameter(F152); + addInParameter(F153); + addInParameter(F154); + addInParameter(F155); + addInParameter(F156); + addInParameter(F157); + addInParameter(F158); + addInParameter(F159); + addInParameter(F160); + addInParameter(F161); + addInParameter(F162); + addInParameter(F163); + addInParameter(F164); + addInParameter(F165); + addInParameter(F166); + addInParameter(F167); + addInParameter(F168); + addInParameter(F169); + addInParameter(F170); + addInParameter(F171); + addInParameter(F172); + addInParameter(F173); + addInParameter(F174); + addInParameter(F175); + addInParameter(F176); + addInParameter(F177); + addInParameter(F178); + addInParameter(F179); + addInParameter(F180); + addInParameter(F181); + addInParameter(F182); + addInParameter(F183); + addInParameter(F184); + addInParameter(F185); + addInParameter(F186); + addInParameter(F187); + addInParameter(F188); + addInParameter(F189); + addInParameter(F190); + addInParameter(F191); + addInParameter(F192); + addInParameter(F193); + addInParameter(F194); + addInParameter(F195); + addInParameter(F196); + addInParameter(F197); + addInParameter(F198); + addInParameter(F199); + addInParameter(F200); + addInParameter(F201); + addInParameter(F202); + addInParameter(F203); + addInParameter(F204); + addInParameter(F205); + addInParameter(F206); + addInParameter(F207); + addInParameter(F208); + addInParameter(F209); + addInParameter(F210); + addInParameter(F211); + addInParameter(F212); + addInParameter(F213); + addInParameter(F214); + addInParameter(F215); + addInParameter(F216); + addInParameter(F217); + addInParameter(F218); + addInParameter(F219); + addInParameter(F220); + addInParameter(F221); + addInParameter(F222); + addInParameter(F223); + addInParameter(F224); + addInParameter(F225); + addInParameter(F226); + addInParameter(F227); + addInParameter(F228); + addInParameter(F229); + addInParameter(F230); + addInParameter(F231); + addInParameter(F232); + addInParameter(F233); + addInParameter(F234); + addInParameter(F235); + addInParameter(F236); + addInParameter(F237); + addInParameter(F238); + addInParameter(F239); + addInParameter(F240); + addInParameter(F241); + addInParameter(F242); + addInParameter(F243); + addInParameter(F244); + addInParameter(F245); + addInParameter(F246); + addInParameter(F247); + addInParameter(F248); + addInParameter(F249); + addInParameter(F250); + addInParameter(F251); + addInParameter(F252); + addInParameter(F253); + addInParameter(F254); + addInParameter(F255); + addInParameter(F256); + addInParameter(F257); + addInParameter(F258); + addInParameter(F259); + addInParameter(F260); + addInParameter(F261); + addInParameter(F262); + addInParameter(F263); + addInParameter(F264); + addInParameter(F265); + addInParameter(F266); + addInParameter(F267); + addInParameter(F268); + addInParameter(F269); + addInParameter(F270); + addInParameter(F271); + addInParameter(F272); + addInParameter(F273); + addInParameter(F274); + addInParameter(F275); + addInParameter(F276); + addInParameter(F277); + addInParameter(F278); + addInParameter(F279); + addInParameter(F280); + addInParameter(F281); + addInParameter(F282); + addInParameter(F283); + addInParameter(F284); + addInParameter(F285); + addInParameter(F286); + addInParameter(F287); + addInParameter(F288); + addInParameter(F289); + addInParameter(F290); + addInParameter(F291); + addInParameter(F292); + addInParameter(F293); + addInParameter(F294); + addInParameter(F295); + addInParameter(F296); + addInParameter(F297); + addInParameter(F298); + addInParameter(F299); + addInParameter(F300); + addInParameter(F301); + addInParameter(F302); + addInParameter(F303); + addInParameter(F304); + addInParameter(F305); + addInParameter(F306); + addInParameter(F307); + addInParameter(F308); + addInParameter(F309); + addInParameter(F310); + addInParameter(F311); + addInParameter(F312); + addInParameter(F313); + addInParameter(F314); + addInParameter(F315); + addInParameter(F316); + addInParameter(F317); + addInParameter(F318); + addInParameter(F319); + addInParameter(F320); + addInParameter(F321); + addInParameter(F322); + addInParameter(F323); + addInParameter(F324); + addInParameter(F325); + addInParameter(F326); + addInParameter(F327); + addInParameter(F328); + addInParameter(F329); + addInParameter(F330); + addInParameter(F331); + addInParameter(F332); + addInParameter(F333); + addInParameter(F334); + addInParameter(F335); + addInParameter(F336); + addInParameter(F337); + addInParameter(F338); + addInParameter(F339); + addInParameter(F340); + addInParameter(F341); + addInParameter(F342); + addInParameter(F343); + addInParameter(F344); + addInParameter(F345); + addInParameter(F346); + addInParameter(F347); + addInParameter(F348); + addInParameter(F349); + addInParameter(F350); + addInParameter(F351); + addInParameter(F352); + addInParameter(F353); + addInParameter(F354); + addInParameter(F355); + addInParameter(F356); + addInParameter(F357); + addInParameter(F358); + addInParameter(F359); + addInParameter(F360); + addInParameter(F361); + addInParameter(F362); + addInParameter(F363); + addInParameter(F364); + addInParameter(F365); + addInParameter(F366); + addInParameter(F367); + addInParameter(F368); + addInParameter(F369); + addInParameter(F370); + addInParameter(F371); + addInParameter(F372); + addInParameter(F373); + addInParameter(F374); + addInParameter(F375); + addInParameter(F376); + addInParameter(F377); + addInParameter(F378); + addInParameter(F379); + addInParameter(F380); + addInParameter(F381); + addInParameter(F382); + addInParameter(F383); + addInParameter(F384); + addInParameter(F385); + addInParameter(F386); + addInParameter(F387); + addInParameter(F388); + addInParameter(F389); + addInParameter(F390); + addInParameter(F391); + addInParameter(F392); + addInParameter(F393); + addInParameter(F394); + addInParameter(F395); + addInParameter(F396); + addInParameter(F397); + addInParameter(F398); + addInParameter(F399); + } + + /** + * Set the F000 parameter to the routine + */ + public void setF000(java.lang.Number value) { + setNumber(F000, value); + } + + /** + * Set the F001 parameter to the routine + */ + public void setF001(java.lang.Number value) { + setNumber(F001, value); + } + + /** + * Set the F002 parameter to the routine + */ + public void setF002(java.lang.Number value) { + setNumber(F002, value); + } + + /** + * Set the F003 parameter to the routine + */ + public void setF003(java.lang.Number value) { + setNumber(F003, value); + } + + /** + * Set the F004 parameter to the routine + */ + public void setF004(java.lang.Number value) { + setNumber(F004, value); + } + + /** + * Set the F005 parameter to the routine + */ + public void setF005(java.lang.Number value) { + setNumber(F005, value); + } + + /** + * Set the F006 parameter to the routine + */ + public void setF006(java.lang.Number value) { + setNumber(F006, value); + } + + /** + * Set the F007 parameter to the routine + */ + public void setF007(java.lang.Number value) { + setNumber(F007, value); + } + + /** + * Set the F008 parameter to the routine + */ + public void setF008(java.lang.Number value) { + setNumber(F008, value); + } + + /** + * Set the F009 parameter to the routine + */ + public void setF009(java.lang.Number value) { + setNumber(F009, value); + } + + /** + * Set the F010 parameter to the routine + */ + public void setF010(java.lang.Number value) { + setNumber(F010, value); + } + + /** + * Set the F011 parameter to the routine + */ + public void setF011(java.lang.Number value) { + setNumber(F011, value); + } + + /** + * Set the F012 parameter to the routine + */ + public void setF012(java.lang.Number value) { + setNumber(F012, value); + } + + /** + * Set the F013 parameter to the routine + */ + public void setF013(java.lang.Number value) { + setNumber(F013, value); + } + + /** + * Set the F014 parameter to the routine + */ + public void setF014(java.lang.Number value) { + setNumber(F014, value); + } + + /** + * Set the F015 parameter to the routine + */ + public void setF015(java.lang.Number value) { + setNumber(F015, value); + } + + /** + * Set the F016 parameter to the routine + */ + public void setF016(java.lang.Number value) { + setNumber(F016, value); + } + + /** + * Set the F017 parameter to the routine + */ + public void setF017(java.lang.Number value) { + setNumber(F017, value); + } + + /** + * Set the F018 parameter to the routine + */ + public void setF018(java.lang.Number value) { + setNumber(F018, value); + } + + /** + * Set the F019 parameter to the routine + */ + public void setF019(java.lang.Number value) { + setNumber(F019, value); + } + + /** + * Set the F020 parameter to the routine + */ + public void setF020(java.lang.Number value) { + setNumber(F020, value); + } + + /** + * Set the F021 parameter to the routine + */ + public void setF021(java.lang.Number value) { + setNumber(F021, value); + } + + /** + * Set the F022 parameter to the routine + */ + public void setF022(java.lang.Number value) { + setNumber(F022, value); + } + + /** + * Set the F023 parameter to the routine + */ + public void setF023(java.lang.Number value) { + setNumber(F023, value); + } + + /** + * Set the F024 parameter to the routine + */ + public void setF024(java.lang.Number value) { + setNumber(F024, value); + } + + /** + * Set the F025 parameter to the routine + */ + public void setF025(java.lang.Number value) { + setNumber(F025, value); + } + + /** + * Set the F026 parameter to the routine + */ + public void setF026(java.lang.Number value) { + setNumber(F026, value); + } + + /** + * Set the F027 parameter to the routine + */ + public void setF027(java.lang.Number value) { + setNumber(F027, value); + } + + /** + * Set the F028 parameter to the routine + */ + public void setF028(java.lang.Number value) { + setNumber(F028, value); + } + + /** + * Set the F029 parameter to the routine + */ + public void setF029(java.lang.Number value) { + setNumber(F029, value); + } + + /** + * Set the F030 parameter to the routine + */ + public void setF030(java.lang.Number value) { + setNumber(F030, value); + } + + /** + * Set the F031 parameter to the routine + */ + public void setF031(java.lang.Number value) { + setNumber(F031, value); + } + + /** + * Set the F032 parameter to the routine + */ + public void setF032(java.lang.Number value) { + setNumber(F032, value); + } + + /** + * Set the F033 parameter to the routine + */ + public void setF033(java.lang.Number value) { + setNumber(F033, value); + } + + /** + * Set the F034 parameter to the routine + */ + public void setF034(java.lang.Number value) { + setNumber(F034, value); + } + + /** + * Set the F035 parameter to the routine + */ + public void setF035(java.lang.Number value) { + setNumber(F035, value); + } + + /** + * Set the F036 parameter to the routine + */ + public void setF036(java.lang.Number value) { + setNumber(F036, value); + } + + /** + * Set the F037 parameter to the routine + */ + public void setF037(java.lang.Number value) { + setNumber(F037, value); + } + + /** + * Set the F038 parameter to the routine + */ + public void setF038(java.lang.Number value) { + setNumber(F038, value); + } + + /** + * Set the F039 parameter to the routine + */ + public void setF039(java.lang.Number value) { + setNumber(F039, value); + } + + /** + * Set the F040 parameter to the routine + */ + public void setF040(java.lang.Number value) { + setNumber(F040, value); + } + + /** + * Set the F041 parameter to the routine + */ + public void setF041(java.lang.Number value) { + setNumber(F041, value); + } + + /** + * Set the F042 parameter to the routine + */ + public void setF042(java.lang.Number value) { + setNumber(F042, value); + } + + /** + * Set the F043 parameter to the routine + */ + public void setF043(java.lang.Number value) { + setNumber(F043, value); + } + + /** + * Set the F044 parameter to the routine + */ + public void setF044(java.lang.Number value) { + setNumber(F044, value); + } + + /** + * Set the F045 parameter to the routine + */ + public void setF045(java.lang.Number value) { + setNumber(F045, value); + } + + /** + * Set the F046 parameter to the routine + */ + public void setF046(java.lang.Number value) { + setNumber(F046, value); + } + + /** + * Set the F047 parameter to the routine + */ + public void setF047(java.lang.Number value) { + setNumber(F047, value); + } + + /** + * Set the F048 parameter to the routine + */ + public void setF048(java.lang.Number value) { + setNumber(F048, value); + } + + /** + * Set the F049 parameter to the routine + */ + public void setF049(java.lang.Number value) { + setNumber(F049, value); + } + + /** + * Set the F050 parameter to the routine + */ + public void setF050(java.lang.Number value) { + setNumber(F050, value); + } + + /** + * Set the F051 parameter to the routine + */ + public void setF051(java.lang.Number value) { + setNumber(F051, value); + } + + /** + * Set the F052 parameter to the routine + */ + public void setF052(java.lang.Number value) { + setNumber(F052, value); + } + + /** + * Set the F053 parameter to the routine + */ + public void setF053(java.lang.Number value) { + setNumber(F053, value); + } + + /** + * Set the F054 parameter to the routine + */ + public void setF054(java.lang.Number value) { + setNumber(F054, value); + } + + /** + * Set the F055 parameter to the routine + */ + public void setF055(java.lang.Number value) { + setNumber(F055, value); + } + + /** + * Set the F056 parameter to the routine + */ + public void setF056(java.lang.Number value) { + setNumber(F056, value); + } + + /** + * Set the F057 parameter to the routine + */ + public void setF057(java.lang.Number value) { + setNumber(F057, value); + } + + /** + * Set the F058 parameter to the routine + */ + public void setF058(java.lang.Number value) { + setNumber(F058, value); + } + + /** + * Set the F059 parameter to the routine + */ + public void setF059(java.lang.Number value) { + setNumber(F059, value); + } + + /** + * Set the F060 parameter to the routine + */ + public void setF060(java.lang.Number value) { + setNumber(F060, value); + } + + /** + * Set the F061 parameter to the routine + */ + public void setF061(java.lang.Number value) { + setNumber(F061, value); + } + + /** + * Set the F062 parameter to the routine + */ + public void setF062(java.lang.Number value) { + setNumber(F062, value); + } + + /** + * Set the F063 parameter to the routine + */ + public void setF063(java.lang.Number value) { + setNumber(F063, value); + } + + /** + * Set the F064 parameter to the routine + */ + public void setF064(java.lang.Number value) { + setNumber(F064, value); + } + + /** + * Set the F065 parameter to the routine + */ + public void setF065(java.lang.Number value) { + setNumber(F065, value); + } + + /** + * Set the F066 parameter to the routine + */ + public void setF066(java.lang.Number value) { + setNumber(F066, value); + } + + /** + * Set the F067 parameter to the routine + */ + public void setF067(java.lang.Number value) { + setNumber(F067, value); + } + + /** + * Set the F068 parameter to the routine + */ + public void setF068(java.lang.Number value) { + setNumber(F068, value); + } + + /** + * Set the F069 parameter to the routine + */ + public void setF069(java.lang.Number value) { + setNumber(F069, value); + } + + /** + * Set the F070 parameter to the routine + */ + public void setF070(java.lang.Number value) { + setNumber(F070, value); + } + + /** + * Set the F071 parameter to the routine + */ + public void setF071(java.lang.Number value) { + setNumber(F071, value); + } + + /** + * Set the F072 parameter to the routine + */ + public void setF072(java.lang.Number value) { + setNumber(F072, value); + } + + /** + * Set the F073 parameter to the routine + */ + public void setF073(java.lang.Number value) { + setNumber(F073, value); + } + + /** + * Set the F074 parameter to the routine + */ + public void setF074(java.lang.Number value) { + setNumber(F074, value); + } + + /** + * Set the F075 parameter to the routine + */ + public void setF075(java.lang.Number value) { + setNumber(F075, value); + } + + /** + * Set the F076 parameter to the routine + */ + public void setF076(java.lang.Number value) { + setNumber(F076, value); + } + + /** + * Set the F077 parameter to the routine + */ + public void setF077(java.lang.Number value) { + setNumber(F077, value); + } + + /** + * Set the F078 parameter to the routine + */ + public void setF078(java.lang.Number value) { + setNumber(F078, value); + } + + /** + * Set the F079 parameter to the routine + */ + public void setF079(java.lang.Number value) { + setNumber(F079, value); + } + + /** + * Set the F080 parameter to the routine + */ + public void setF080(java.lang.Number value) { + setNumber(F080, value); + } + + /** + * Set the F081 parameter to the routine + */ + public void setF081(java.lang.Number value) { + setNumber(F081, value); + } + + /** + * Set the F082 parameter to the routine + */ + public void setF082(java.lang.Number value) { + setNumber(F082, value); + } + + /** + * Set the F083 parameter to the routine + */ + public void setF083(java.lang.Number value) { + setNumber(F083, value); + } + + /** + * Set the F084 parameter to the routine + */ + public void setF084(java.lang.Number value) { + setNumber(F084, value); + } + + /** + * Set the F085 parameter to the routine + */ + public void setF085(java.lang.Number value) { + setNumber(F085, value); + } + + /** + * Set the F086 parameter to the routine + */ + public void setF086(java.lang.Number value) { + setNumber(F086, value); + } + + /** + * Set the F087 parameter to the routine + */ + public void setF087(java.lang.Number value) { + setNumber(F087, value); + } + + /** + * Set the F088 parameter to the routine + */ + public void setF088(java.lang.Number value) { + setNumber(F088, value); + } + + /** + * Set the F089 parameter to the routine + */ + public void setF089(java.lang.Number value) { + setNumber(F089, value); + } + + /** + * Set the F090 parameter to the routine + */ + public void setF090(java.lang.Number value) { + setNumber(F090, value); + } + + /** + * Set the F091 parameter to the routine + */ + public void setF091(java.lang.Number value) { + setNumber(F091, value); + } + + /** + * Set the F092 parameter to the routine + */ + public void setF092(java.lang.Number value) { + setNumber(F092, value); + } + + /** + * Set the F093 parameter to the routine + */ + public void setF093(java.lang.Number value) { + setNumber(F093, value); + } + + /** + * Set the F094 parameter to the routine + */ + public void setF094(java.lang.Number value) { + setNumber(F094, value); + } + + /** + * Set the F095 parameter to the routine + */ + public void setF095(java.lang.Number value) { + setNumber(F095, value); + } + + /** + * Set the F096 parameter to the routine + */ + public void setF096(java.lang.Number value) { + setNumber(F096, value); + } + + /** + * Set the F097 parameter to the routine + */ + public void setF097(java.lang.Number value) { + setNumber(F097, value); + } + + /** + * Set the F098 parameter to the routine + */ + public void setF098(java.lang.Number value) { + setNumber(F098, value); + } + + /** + * Set the F099 parameter to the routine + */ + public void setF099(java.lang.Number value) { + setNumber(F099, value); + } + + /** + * Set the F100 parameter to the routine + */ + public void setF100(java.lang.Number value) { + setNumber(F100, value); + } + + /** + * Set the F101 parameter to the routine + */ + public void setF101(java.lang.Number value) { + setNumber(F101, value); + } + + /** + * Set the F102 parameter to the routine + */ + public void setF102(java.lang.Number value) { + setNumber(F102, value); + } + + /** + * Set the F103 parameter to the routine + */ + public void setF103(java.lang.Number value) { + setNumber(F103, value); + } + + /** + * Set the F104 parameter to the routine + */ + public void setF104(java.lang.Number value) { + setNumber(F104, value); + } + + /** + * Set the F105 parameter to the routine + */ + public void setF105(java.lang.Number value) { + setNumber(F105, value); + } + + /** + * Set the F106 parameter to the routine + */ + public void setF106(java.lang.Number value) { + setNumber(F106, value); + } + + /** + * Set the F107 parameter to the routine + */ + public void setF107(java.lang.Number value) { + setNumber(F107, value); + } + + /** + * Set the F108 parameter to the routine + */ + public void setF108(java.lang.Number value) { + setNumber(F108, value); + } + + /** + * Set the F109 parameter to the routine + */ + public void setF109(java.lang.Number value) { + setNumber(F109, value); + } + + /** + * Set the F110 parameter to the routine + */ + public void setF110(java.lang.Number value) { + setNumber(F110, value); + } + + /** + * Set the F111 parameter to the routine + */ + public void setF111(java.lang.Number value) { + setNumber(F111, value); + } + + /** + * Set the F112 parameter to the routine + */ + public void setF112(java.lang.Number value) { + setNumber(F112, value); + } + + /** + * Set the F113 parameter to the routine + */ + public void setF113(java.lang.Number value) { + setNumber(F113, value); + } + + /** + * Set the F114 parameter to the routine + */ + public void setF114(java.lang.Number value) { + setNumber(F114, value); + } + + /** + * Set the F115 parameter to the routine + */ + public void setF115(java.lang.Number value) { + setNumber(F115, value); + } + + /** + * Set the F116 parameter to the routine + */ + public void setF116(java.lang.Number value) { + setNumber(F116, value); + } + + /** + * Set the F117 parameter to the routine + */ + public void setF117(java.lang.Number value) { + setNumber(F117, value); + } + + /** + * Set the F118 parameter to the routine + */ + public void setF118(java.lang.Number value) { + setNumber(F118, value); + } + + /** + * Set the F119 parameter to the routine + */ + public void setF119(java.lang.Number value) { + setNumber(F119, value); + } + + /** + * Set the F120 parameter to the routine + */ + public void setF120(java.lang.Number value) { + setNumber(F120, value); + } + + /** + * Set the F121 parameter to the routine + */ + public void setF121(java.lang.Number value) { + setNumber(F121, value); + } + + /** + * Set the F122 parameter to the routine + */ + public void setF122(java.lang.Number value) { + setNumber(F122, value); + } + + /** + * Set the F123 parameter to the routine + */ + public void setF123(java.lang.Number value) { + setNumber(F123, value); + } + + /** + * Set the F124 parameter to the routine + */ + public void setF124(java.lang.Number value) { + setNumber(F124, value); + } + + /** + * Set the F125 parameter to the routine + */ + public void setF125(java.lang.Number value) { + setNumber(F125, value); + } + + /** + * Set the F126 parameter to the routine + */ + public void setF126(java.lang.Number value) { + setNumber(F126, value); + } + + /** + * Set the F127 parameter to the routine + */ + public void setF127(java.lang.Number value) { + setNumber(F127, value); + } + + /** + * Set the F128 parameter to the routine + */ + public void setF128(java.lang.Number value) { + setNumber(F128, value); + } + + /** + * Set the F129 parameter to the routine + */ + public void setF129(java.lang.Number value) { + setNumber(F129, value); + } + + /** + * Set the F130 parameter to the routine + */ + public void setF130(java.lang.Number value) { + setNumber(F130, value); + } + + /** + * Set the F131 parameter to the routine + */ + public void setF131(java.lang.Number value) { + setNumber(F131, value); + } + + /** + * Set the F132 parameter to the routine + */ + public void setF132(java.lang.Number value) { + setNumber(F132, value); + } + + /** + * Set the F133 parameter to the routine + */ + public void setF133(java.lang.Number value) { + setNumber(F133, value); + } + + /** + * Set the F134 parameter to the routine + */ + public void setF134(java.lang.Number value) { + setNumber(F134, value); + } + + /** + * Set the F135 parameter to the routine + */ + public void setF135(java.lang.Number value) { + setNumber(F135, value); + } + + /** + * Set the F136 parameter to the routine + */ + public void setF136(java.lang.Number value) { + setNumber(F136, value); + } + + /** + * Set the F137 parameter to the routine + */ + public void setF137(java.lang.Number value) { + setNumber(F137, value); + } + + /** + * Set the F138 parameter to the routine + */ + public void setF138(java.lang.Number value) { + setNumber(F138, value); + } + + /** + * Set the F139 parameter to the routine + */ + public void setF139(java.lang.Number value) { + setNumber(F139, value); + } + + /** + * Set the F140 parameter to the routine + */ + public void setF140(java.lang.Number value) { + setNumber(F140, value); + } + + /** + * Set the F141 parameter to the routine + */ + public void setF141(java.lang.Number value) { + setNumber(F141, value); + } + + /** + * Set the F142 parameter to the routine + */ + public void setF142(java.lang.Number value) { + setNumber(F142, value); + } + + /** + * Set the F143 parameter to the routine + */ + public void setF143(java.lang.Number value) { + setNumber(F143, value); + } + + /** + * Set the F144 parameter to the routine + */ + public void setF144(java.lang.Number value) { + setNumber(F144, value); + } + + /** + * Set the F145 parameter to the routine + */ + public void setF145(java.lang.Number value) { + setNumber(F145, value); + } + + /** + * Set the F146 parameter to the routine + */ + public void setF146(java.lang.Number value) { + setNumber(F146, value); + } + + /** + * Set the F147 parameter to the routine + */ + public void setF147(java.lang.Number value) { + setNumber(F147, value); + } + + /** + * Set the F148 parameter to the routine + */ + public void setF148(java.lang.Number value) { + setNumber(F148, value); + } + + /** + * Set the F149 parameter to the routine + */ + public void setF149(java.lang.Number value) { + setNumber(F149, value); + } + + /** + * Set the F150 parameter to the routine + */ + public void setF150(java.lang.Number value) { + setNumber(F150, value); + } + + /** + * Set the F151 parameter to the routine + */ + public void setF151(java.lang.Number value) { + setNumber(F151, value); + } + + /** + * Set the F152 parameter to the routine + */ + public void setF152(java.lang.Number value) { + setNumber(F152, value); + } + + /** + * Set the F153 parameter to the routine + */ + public void setF153(java.lang.Number value) { + setNumber(F153, value); + } + + /** + * Set the F154 parameter to the routine + */ + public void setF154(java.lang.Number value) { + setNumber(F154, value); + } + + /** + * Set the F155 parameter to the routine + */ + public void setF155(java.lang.Number value) { + setNumber(F155, value); + } + + /** + * Set the F156 parameter to the routine + */ + public void setF156(java.lang.Number value) { + setNumber(F156, value); + } + + /** + * Set the F157 parameter to the routine + */ + public void setF157(java.lang.Number value) { + setNumber(F157, value); + } + + /** + * Set the F158 parameter to the routine + */ + public void setF158(java.lang.Number value) { + setNumber(F158, value); + } + + /** + * Set the F159 parameter to the routine + */ + public void setF159(java.lang.Number value) { + setNumber(F159, value); + } + + /** + * Set the F160 parameter to the routine + */ + public void setF160(java.lang.Number value) { + setNumber(F160, value); + } + + /** + * Set the F161 parameter to the routine + */ + public void setF161(java.lang.Number value) { + setNumber(F161, value); + } + + /** + * Set the F162 parameter to the routine + */ + public void setF162(java.lang.Number value) { + setNumber(F162, value); + } + + /** + * Set the F163 parameter to the routine + */ + public void setF163(java.lang.Number value) { + setNumber(F163, value); + } + + /** + * Set the F164 parameter to the routine + */ + public void setF164(java.lang.Number value) { + setNumber(F164, value); + } + + /** + * Set the F165 parameter to the routine + */ + public void setF165(java.lang.Number value) { + setNumber(F165, value); + } + + /** + * Set the F166 parameter to the routine + */ + public void setF166(java.lang.Number value) { + setNumber(F166, value); + } + + /** + * Set the F167 parameter to the routine + */ + public void setF167(java.lang.Number value) { + setNumber(F167, value); + } + + /** + * Set the F168 parameter to the routine + */ + public void setF168(java.lang.Number value) { + setNumber(F168, value); + } + + /** + * Set the F169 parameter to the routine + */ + public void setF169(java.lang.Number value) { + setNumber(F169, value); + } + + /** + * Set the F170 parameter to the routine + */ + public void setF170(java.lang.Number value) { + setNumber(F170, value); + } + + /** + * Set the F171 parameter to the routine + */ + public void setF171(java.lang.Number value) { + setNumber(F171, value); + } + + /** + * Set the F172 parameter to the routine + */ + public void setF172(java.lang.Number value) { + setNumber(F172, value); + } + + /** + * Set the F173 parameter to the routine + */ + public void setF173(java.lang.Number value) { + setNumber(F173, value); + } + + /** + * Set the F174 parameter to the routine + */ + public void setF174(java.lang.Number value) { + setNumber(F174, value); + } + + /** + * Set the F175 parameter to the routine + */ + public void setF175(java.lang.Number value) { + setNumber(F175, value); + } + + /** + * Set the F176 parameter to the routine + */ + public void setF176(java.lang.Number value) { + setNumber(F176, value); + } + + /** + * Set the F177 parameter to the routine + */ + public void setF177(java.lang.Number value) { + setNumber(F177, value); + } + + /** + * Set the F178 parameter to the routine + */ + public void setF178(java.lang.Number value) { + setNumber(F178, value); + } + + /** + * Set the F179 parameter to the routine + */ + public void setF179(java.lang.Number value) { + setNumber(F179, value); + } + + /** + * Set the F180 parameter to the routine + */ + public void setF180(java.lang.Number value) { + setNumber(F180, value); + } + + /** + * Set the F181 parameter to the routine + */ + public void setF181(java.lang.Number value) { + setNumber(F181, value); + } + + /** + * Set the F182 parameter to the routine + */ + public void setF182(java.lang.Number value) { + setNumber(F182, value); + } + + /** + * Set the F183 parameter to the routine + */ + public void setF183(java.lang.Number value) { + setNumber(F183, value); + } + + /** + * Set the F184 parameter to the routine + */ + public void setF184(java.lang.Number value) { + setNumber(F184, value); + } + + /** + * Set the F185 parameter to the routine + */ + public void setF185(java.lang.Number value) { + setNumber(F185, value); + } + + /** + * Set the F186 parameter to the routine + */ + public void setF186(java.lang.Number value) { + setNumber(F186, value); + } + + /** + * Set the F187 parameter to the routine + */ + public void setF187(java.lang.Number value) { + setNumber(F187, value); + } + + /** + * Set the F188 parameter to the routine + */ + public void setF188(java.lang.Number value) { + setNumber(F188, value); + } + + /** + * Set the F189 parameter to the routine + */ + public void setF189(java.lang.Number value) { + setNumber(F189, value); + } + + /** + * Set the F190 parameter to the routine + */ + public void setF190(java.lang.Number value) { + setNumber(F190, value); + } + + /** + * Set the F191 parameter to the routine + */ + public void setF191(java.lang.Number value) { + setNumber(F191, value); + } + + /** + * Set the F192 parameter to the routine + */ + public void setF192(java.lang.Number value) { + setNumber(F192, value); + } + + /** + * Set the F193 parameter to the routine + */ + public void setF193(java.lang.Number value) { + setNumber(F193, value); + } + + /** + * Set the F194 parameter to the routine + */ + public void setF194(java.lang.Number value) { + setNumber(F194, value); + } + + /** + * Set the F195 parameter to the routine + */ + public void setF195(java.lang.Number value) { + setNumber(F195, value); + } + + /** + * Set the F196 parameter to the routine + */ + public void setF196(java.lang.Number value) { + setNumber(F196, value); + } + + /** + * Set the F197 parameter to the routine + */ + public void setF197(java.lang.Number value) { + setNumber(F197, value); + } + + /** + * Set the F198 parameter to the routine + */ + public void setF198(java.lang.Number value) { + setNumber(F198, value); + } + + /** + * Set the F199 parameter to the routine + */ + public void setF199(java.lang.Number value) { + setNumber(F199, value); + } + + /** + * Set the F200 parameter to the routine + */ + public void setF200(java.lang.Number value) { + setNumber(F200, value); + } + + /** + * Set the F201 parameter to the routine + */ + public void setF201(java.lang.Number value) { + setNumber(F201, value); + } + + /** + * Set the F202 parameter to the routine + */ + public void setF202(java.lang.Number value) { + setNumber(F202, value); + } + + /** + * Set the F203 parameter to the routine + */ + public void setF203(java.lang.Number value) { + setNumber(F203, value); + } + + /** + * Set the F204 parameter to the routine + */ + public void setF204(java.lang.Number value) { + setNumber(F204, value); + } + + /** + * Set the F205 parameter to the routine + */ + public void setF205(java.lang.Number value) { + setNumber(F205, value); + } + + /** + * Set the F206 parameter to the routine + */ + public void setF206(java.lang.Number value) { + setNumber(F206, value); + } + + /** + * Set the F207 parameter to the routine + */ + public void setF207(java.lang.Number value) { + setNumber(F207, value); + } + + /** + * Set the F208 parameter to the routine + */ + public void setF208(java.lang.Number value) { + setNumber(F208, value); + } + + /** + * Set the F209 parameter to the routine + */ + public void setF209(java.lang.Number value) { + setNumber(F209, value); + } + + /** + * Set the F210 parameter to the routine + */ + public void setF210(java.lang.Number value) { + setNumber(F210, value); + } + + /** + * Set the F211 parameter to the routine + */ + public void setF211(java.lang.Number value) { + setNumber(F211, value); + } + + /** + * Set the F212 parameter to the routine + */ + public void setF212(java.lang.Number value) { + setNumber(F212, value); + } + + /** + * Set the F213 parameter to the routine + */ + public void setF213(java.lang.Number value) { + setNumber(F213, value); + } + + /** + * Set the F214 parameter to the routine + */ + public void setF214(java.lang.Number value) { + setNumber(F214, value); + } + + /** + * Set the F215 parameter to the routine + */ + public void setF215(java.lang.Number value) { + setNumber(F215, value); + } + + /** + * Set the F216 parameter to the routine + */ + public void setF216(java.lang.Number value) { + setNumber(F216, value); + } + + /** + * Set the F217 parameter to the routine + */ + public void setF217(java.lang.Number value) { + setNumber(F217, value); + } + + /** + * Set the F218 parameter to the routine + */ + public void setF218(java.lang.Number value) { + setNumber(F218, value); + } + + /** + * Set the F219 parameter to the routine + */ + public void setF219(java.lang.Number value) { + setNumber(F219, value); + } + + /** + * Set the F220 parameter to the routine + */ + public void setF220(java.lang.Number value) { + setNumber(F220, value); + } + + /** + * Set the F221 parameter to the routine + */ + public void setF221(java.lang.Number value) { + setNumber(F221, value); + } + + /** + * Set the F222 parameter to the routine + */ + public void setF222(java.lang.Number value) { + setNumber(F222, value); + } + + /** + * Set the F223 parameter to the routine + */ + public void setF223(java.lang.Number value) { + setNumber(F223, value); + } + + /** + * Set the F224 parameter to the routine + */ + public void setF224(java.lang.Number value) { + setNumber(F224, value); + } + + /** + * Set the F225 parameter to the routine + */ + public void setF225(java.lang.Number value) { + setNumber(F225, value); + } + + /** + * Set the F226 parameter to the routine + */ + public void setF226(java.lang.Number value) { + setNumber(F226, value); + } + + /** + * Set the F227 parameter to the routine + */ + public void setF227(java.lang.Number value) { + setNumber(F227, value); + } + + /** + * Set the F228 parameter to the routine + */ + public void setF228(java.lang.Number value) { + setNumber(F228, value); + } + + /** + * Set the F229 parameter to the routine + */ + public void setF229(java.lang.Number value) { + setNumber(F229, value); + } + + /** + * Set the F230 parameter to the routine + */ + public void setF230(java.lang.Number value) { + setNumber(F230, value); + } + + /** + * Set the F231 parameter to the routine + */ + public void setF231(java.lang.Number value) { + setNumber(F231, value); + } + + /** + * Set the F232 parameter to the routine + */ + public void setF232(java.lang.Number value) { + setNumber(F232, value); + } + + /** + * Set the F233 parameter to the routine + */ + public void setF233(java.lang.Number value) { + setNumber(F233, value); + } + + /** + * Set the F234 parameter to the routine + */ + public void setF234(java.lang.Number value) { + setNumber(F234, value); + } + + /** + * Set the F235 parameter to the routine + */ + public void setF235(java.lang.Number value) { + setNumber(F235, value); + } + + /** + * Set the F236 parameter to the routine + */ + public void setF236(java.lang.Number value) { + setNumber(F236, value); + } + + /** + * Set the F237 parameter to the routine + */ + public void setF237(java.lang.Number value) { + setNumber(F237, value); + } + + /** + * Set the F238 parameter to the routine + */ + public void setF238(java.lang.Number value) { + setNumber(F238, value); + } + + /** + * Set the F239 parameter to the routine + */ + public void setF239(java.lang.Number value) { + setNumber(F239, value); + } + + /** + * Set the F240 parameter to the routine + */ + public void setF240(java.lang.Number value) { + setNumber(F240, value); + } + + /** + * Set the F241 parameter to the routine + */ + public void setF241(java.lang.Number value) { + setNumber(F241, value); + } + + /** + * Set the F242 parameter to the routine + */ + public void setF242(java.lang.Number value) { + setNumber(F242, value); + } + + /** + * Set the F243 parameter to the routine + */ + public void setF243(java.lang.Number value) { + setNumber(F243, value); + } + + /** + * Set the F244 parameter to the routine + */ + public void setF244(java.lang.Number value) { + setNumber(F244, value); + } + + /** + * Set the F245 parameter to the routine + */ + public void setF245(java.lang.Number value) { + setNumber(F245, value); + } + + /** + * Set the F246 parameter to the routine + */ + public void setF246(java.lang.Number value) { + setNumber(F246, value); + } + + /** + * Set the F247 parameter to the routine + */ + public void setF247(java.lang.Number value) { + setNumber(F247, value); + } + + /** + * Set the F248 parameter to the routine + */ + public void setF248(java.lang.Number value) { + setNumber(F248, value); + } + + /** + * Set the F249 parameter to the routine + */ + public void setF249(java.lang.Number value) { + setNumber(F249, value); + } + + /** + * Set the F250 parameter to the routine + */ + public void setF250(java.lang.Number value) { + setNumber(F250, value); + } + + /** + * Set the F251 parameter to the routine + */ + public void setF251(java.lang.Number value) { + setNumber(F251, value); + } + + /** + * Set the F252 parameter to the routine + */ + public void setF252(java.lang.Number value) { + setNumber(F252, value); + } + + /** + * Set the F253 parameter to the routine + */ + public void setF253(java.lang.Number value) { + setNumber(F253, value); + } + + /** + * Set the F254 parameter to the routine + */ + public void setF254(java.lang.Number value) { + setNumber(F254, value); + } + + /** + * Set the F255 parameter to the routine + */ + public void setF255(java.lang.Number value) { + setNumber(F255, value); + } + + /** + * Set the F256 parameter to the routine + */ + public void setF256(java.lang.Number value) { + setNumber(F256, value); + } + + /** + * Set the F257 parameter to the routine + */ + public void setF257(java.lang.Number value) { + setNumber(F257, value); + } + + /** + * Set the F258 parameter to the routine + */ + public void setF258(java.lang.Number value) { + setNumber(F258, value); + } + + /** + * Set the F259 parameter to the routine + */ + public void setF259(java.lang.Number value) { + setNumber(F259, value); + } + + /** + * Set the F260 parameter to the routine + */ + public void setF260(java.lang.Number value) { + setNumber(F260, value); + } + + /** + * Set the F261 parameter to the routine + */ + public void setF261(java.lang.Number value) { + setNumber(F261, value); + } + + /** + * Set the F262 parameter to the routine + */ + public void setF262(java.lang.Number value) { + setNumber(F262, value); + } + + /** + * Set the F263 parameter to the routine + */ + public void setF263(java.lang.Number value) { + setNumber(F263, value); + } + + /** + * Set the F264 parameter to the routine + */ + public void setF264(java.lang.Number value) { + setNumber(F264, value); + } + + /** + * Set the F265 parameter to the routine + */ + public void setF265(java.lang.Number value) { + setNumber(F265, value); + } + + /** + * Set the F266 parameter to the routine + */ + public void setF266(java.lang.Number value) { + setNumber(F266, value); + } + + /** + * Set the F267 parameter to the routine + */ + public void setF267(java.lang.Number value) { + setNumber(F267, value); + } + + /** + * Set the F268 parameter to the routine + */ + public void setF268(java.lang.Number value) { + setNumber(F268, value); + } + + /** + * Set the F269 parameter to the routine + */ + public void setF269(java.lang.Number value) { + setNumber(F269, value); + } + + /** + * Set the F270 parameter to the routine + */ + public void setF270(java.lang.Number value) { + setNumber(F270, value); + } + + /** + * Set the F271 parameter to the routine + */ + public void setF271(java.lang.Number value) { + setNumber(F271, value); + } + + /** + * Set the F272 parameter to the routine + */ + public void setF272(java.lang.Number value) { + setNumber(F272, value); + } + + /** + * Set the F273 parameter to the routine + */ + public void setF273(java.lang.Number value) { + setNumber(F273, value); + } + + /** + * Set the F274 parameter to the routine + */ + public void setF274(java.lang.Number value) { + setNumber(F274, value); + } + + /** + * Set the F275 parameter to the routine + */ + public void setF275(java.lang.Number value) { + setNumber(F275, value); + } + + /** + * Set the F276 parameter to the routine + */ + public void setF276(java.lang.Number value) { + setNumber(F276, value); + } + + /** + * Set the F277 parameter to the routine + */ + public void setF277(java.lang.Number value) { + setNumber(F277, value); + } + + /** + * Set the F278 parameter to the routine + */ + public void setF278(java.lang.Number value) { + setNumber(F278, value); + } + + /** + * Set the F279 parameter to the routine + */ + public void setF279(java.lang.Number value) { + setNumber(F279, value); + } + + /** + * Set the F280 parameter to the routine + */ + public void setF280(java.lang.Number value) { + setNumber(F280, value); + } + + /** + * Set the F281 parameter to the routine + */ + public void setF281(java.lang.Number value) { + setNumber(F281, value); + } + + /** + * Set the F282 parameter to the routine + */ + public void setF282(java.lang.Number value) { + setNumber(F282, value); + } + + /** + * Set the F283 parameter to the routine + */ + public void setF283(java.lang.Number value) { + setNumber(F283, value); + } + + /** + * Set the F284 parameter to the routine + */ + public void setF284(java.lang.Number value) { + setNumber(F284, value); + } + + /** + * Set the F285 parameter to the routine + */ + public void setF285(java.lang.Number value) { + setNumber(F285, value); + } + + /** + * Set the F286 parameter to the routine + */ + public void setF286(java.lang.Number value) { + setNumber(F286, value); + } + + /** + * Set the F287 parameter to the routine + */ + public void setF287(java.lang.Number value) { + setNumber(F287, value); + } + + /** + * Set the F288 parameter to the routine + */ + public void setF288(java.lang.Number value) { + setNumber(F288, value); + } + + /** + * Set the F289 parameter to the routine + */ + public void setF289(java.lang.Number value) { + setNumber(F289, value); + } + + /** + * Set the F290 parameter to the routine + */ + public void setF290(java.lang.Number value) { + setNumber(F290, value); + } + + /** + * Set the F291 parameter to the routine + */ + public void setF291(java.lang.Number value) { + setNumber(F291, value); + } + + /** + * Set the F292 parameter to the routine + */ + public void setF292(java.lang.Number value) { + setNumber(F292, value); + } + + /** + * Set the F293 parameter to the routine + */ + public void setF293(java.lang.Number value) { + setNumber(F293, value); + } + + /** + * Set the F294 parameter to the routine + */ + public void setF294(java.lang.Number value) { + setNumber(F294, value); + } + + /** + * Set the F295 parameter to the routine + */ + public void setF295(java.lang.Number value) { + setNumber(F295, value); + } + + /** + * Set the F296 parameter to the routine + */ + public void setF296(java.lang.Number value) { + setNumber(F296, value); + } + + /** + * Set the F297 parameter to the routine + */ + public void setF297(java.lang.Number value) { + setNumber(F297, value); + } + + /** + * Set the F298 parameter to the routine + */ + public void setF298(java.lang.Number value) { + setNumber(F298, value); + } + + /** + * Set the F299 parameter to the routine + */ + public void setF299(java.lang.Number value) { + setNumber(F299, value); + } + + /** + * Set the F300 parameter to the routine + */ + public void setF300(java.lang.Number value) { + setNumber(F300, value); + } + + /** + * Set the F301 parameter to the routine + */ + public void setF301(java.lang.Number value) { + setNumber(F301, value); + } + + /** + * Set the F302 parameter to the routine + */ + public void setF302(java.lang.Number value) { + setNumber(F302, value); + } + + /** + * Set the F303 parameter to the routine + */ + public void setF303(java.lang.Number value) { + setNumber(F303, value); + } + + /** + * Set the F304 parameter to the routine + */ + public void setF304(java.lang.Number value) { + setNumber(F304, value); + } + + /** + * Set the F305 parameter to the routine + */ + public void setF305(java.lang.Number value) { + setNumber(F305, value); + } + + /** + * Set the F306 parameter to the routine + */ + public void setF306(java.lang.Number value) { + setNumber(F306, value); + } + + /** + * Set the F307 parameter to the routine + */ + public void setF307(java.lang.Number value) { + setNumber(F307, value); + } + + /** + * Set the F308 parameter to the routine + */ + public void setF308(java.lang.Number value) { + setNumber(F308, value); + } + + /** + * Set the F309 parameter to the routine + */ + public void setF309(java.lang.Number value) { + setNumber(F309, value); + } + + /** + * Set the F310 parameter to the routine + */ + public void setF310(java.lang.Number value) { + setNumber(F310, value); + } + + /** + * Set the F311 parameter to the routine + */ + public void setF311(java.lang.Number value) { + setNumber(F311, value); + } + + /** + * Set the F312 parameter to the routine + */ + public void setF312(java.lang.Number value) { + setNumber(F312, value); + } + + /** + * Set the F313 parameter to the routine + */ + public void setF313(java.lang.Number value) { + setNumber(F313, value); + } + + /** + * Set the F314 parameter to the routine + */ + public void setF314(java.lang.Number value) { + setNumber(F314, value); + } + + /** + * Set the F315 parameter to the routine + */ + public void setF315(java.lang.Number value) { + setNumber(F315, value); + } + + /** + * Set the F316 parameter to the routine + */ + public void setF316(java.lang.Number value) { + setNumber(F316, value); + } + + /** + * Set the F317 parameter to the routine + */ + public void setF317(java.lang.Number value) { + setNumber(F317, value); + } + + /** + * Set the F318 parameter to the routine + */ + public void setF318(java.lang.Number value) { + setNumber(F318, value); + } + + /** + * Set the F319 parameter to the routine + */ + public void setF319(java.lang.Number value) { + setNumber(F319, value); + } + + /** + * Set the F320 parameter to the routine + */ + public void setF320(java.lang.Number value) { + setNumber(F320, value); + } + + /** + * Set the F321 parameter to the routine + */ + public void setF321(java.lang.Number value) { + setNumber(F321, value); + } + + /** + * Set the F322 parameter to the routine + */ + public void setF322(java.lang.Number value) { + setNumber(F322, value); + } + + /** + * Set the F323 parameter to the routine + */ + public void setF323(java.lang.Number value) { + setNumber(F323, value); + } + + /** + * Set the F324 parameter to the routine + */ + public void setF324(java.lang.Number value) { + setNumber(F324, value); + } + + /** + * Set the F325 parameter to the routine + */ + public void setF325(java.lang.Number value) { + setNumber(F325, value); + } + + /** + * Set the F326 parameter to the routine + */ + public void setF326(java.lang.Number value) { + setNumber(F326, value); + } + + /** + * Set the F327 parameter to the routine + */ + public void setF327(java.lang.Number value) { + setNumber(F327, value); + } + + /** + * Set the F328 parameter to the routine + */ + public void setF328(java.lang.Number value) { + setNumber(F328, value); + } + + /** + * Set the F329 parameter to the routine + */ + public void setF329(java.lang.Number value) { + setNumber(F329, value); + } + + /** + * Set the F330 parameter to the routine + */ + public void setF330(java.lang.Number value) { + setNumber(F330, value); + } + + /** + * Set the F331 parameter to the routine + */ + public void setF331(java.lang.Number value) { + setNumber(F331, value); + } + + /** + * Set the F332 parameter to the routine + */ + public void setF332(java.lang.Number value) { + setNumber(F332, value); + } + + /** + * Set the F333 parameter to the routine + */ + public void setF333(java.lang.Number value) { + setNumber(F333, value); + } + + /** + * Set the F334 parameter to the routine + */ + public void setF334(java.lang.Number value) { + setNumber(F334, value); + } + + /** + * Set the F335 parameter to the routine + */ + public void setF335(java.lang.Number value) { + setNumber(F335, value); + } + + /** + * Set the F336 parameter to the routine + */ + public void setF336(java.lang.Number value) { + setNumber(F336, value); + } + + /** + * Set the F337 parameter to the routine + */ + public void setF337(java.lang.Number value) { + setNumber(F337, value); + } + + /** + * Set the F338 parameter to the routine + */ + public void setF338(java.lang.Number value) { + setNumber(F338, value); + } + + /** + * Set the F339 parameter to the routine + */ + public void setF339(java.lang.Number value) { + setNumber(F339, value); + } + + /** + * Set the F340 parameter to the routine + */ + public void setF340(java.lang.Number value) { + setNumber(F340, value); + } + + /** + * Set the F341 parameter to the routine + */ + public void setF341(java.lang.Number value) { + setNumber(F341, value); + } + + /** + * Set the F342 parameter to the routine + */ + public void setF342(java.lang.Number value) { + setNumber(F342, value); + } + + /** + * Set the F343 parameter to the routine + */ + public void setF343(java.lang.Number value) { + setNumber(F343, value); + } + + /** + * Set the F344 parameter to the routine + */ + public void setF344(java.lang.Number value) { + setNumber(F344, value); + } + + /** + * Set the F345 parameter to the routine + */ + public void setF345(java.lang.Number value) { + setNumber(F345, value); + } + + /** + * Set the F346 parameter to the routine + */ + public void setF346(java.lang.Number value) { + setNumber(F346, value); + } + + /** + * Set the F347 parameter to the routine + */ + public void setF347(java.lang.Number value) { + setNumber(F347, value); + } + + /** + * Set the F348 parameter to the routine + */ + public void setF348(java.lang.Number value) { + setNumber(F348, value); + } + + /** + * Set the F349 parameter to the routine + */ + public void setF349(java.lang.Number value) { + setNumber(F349, value); + } + + /** + * Set the F350 parameter to the routine + */ + public void setF350(java.lang.Number value) { + setNumber(F350, value); + } + + /** + * Set the F351 parameter to the routine + */ + public void setF351(java.lang.Number value) { + setNumber(F351, value); + } + + /** + * Set the F352 parameter to the routine + */ + public void setF352(java.lang.Number value) { + setNumber(F352, value); + } + + /** + * Set the F353 parameter to the routine + */ + public void setF353(java.lang.Number value) { + setNumber(F353, value); + } + + /** + * Set the F354 parameter to the routine + */ + public void setF354(java.lang.Number value) { + setNumber(F354, value); + } + + /** + * Set the F355 parameter to the routine + */ + public void setF355(java.lang.Number value) { + setNumber(F355, value); + } + + /** + * Set the F356 parameter to the routine + */ + public void setF356(java.lang.Number value) { + setNumber(F356, value); + } + + /** + * Set the F357 parameter to the routine + */ + public void setF357(java.lang.Number value) { + setNumber(F357, value); + } + + /** + * Set the F358 parameter to the routine + */ + public void setF358(java.lang.Number value) { + setNumber(F358, value); + } + + /** + * Set the F359 parameter to the routine + */ + public void setF359(java.lang.Number value) { + setNumber(F359, value); + } + + /** + * Set the F360 parameter to the routine + */ + public void setF360(java.lang.Number value) { + setNumber(F360, value); + } + + /** + * Set the F361 parameter to the routine + */ + public void setF361(java.lang.Number value) { + setNumber(F361, value); + } + + /** + * Set the F362 parameter to the routine + */ + public void setF362(java.lang.Number value) { + setNumber(F362, value); + } + + /** + * Set the F363 parameter to the routine + */ + public void setF363(java.lang.Number value) { + setNumber(F363, value); + } + + /** + * Set the F364 parameter to the routine + */ + public void setF364(java.lang.Number value) { + setNumber(F364, value); + } + + /** + * Set the F365 parameter to the routine + */ + public void setF365(java.lang.Number value) { + setNumber(F365, value); + } + + /** + * Set the F366 parameter to the routine + */ + public void setF366(java.lang.Number value) { + setNumber(F366, value); + } + + /** + * Set the F367 parameter to the routine + */ + public void setF367(java.lang.Number value) { + setNumber(F367, value); + } + + /** + * Set the F368 parameter to the routine + */ + public void setF368(java.lang.Number value) { + setNumber(F368, value); + } + + /** + * Set the F369 parameter to the routine + */ + public void setF369(java.lang.Number value) { + setNumber(F369, value); + } + + /** + * Set the F370 parameter to the routine + */ + public void setF370(java.lang.Number value) { + setNumber(F370, value); + } + + /** + * Set the F371 parameter to the routine + */ + public void setF371(java.lang.Number value) { + setNumber(F371, value); + } + + /** + * Set the F372 parameter to the routine + */ + public void setF372(java.lang.Number value) { + setNumber(F372, value); + } + + /** + * Set the F373 parameter to the routine + */ + public void setF373(java.lang.Number value) { + setNumber(F373, value); + } + + /** + * Set the F374 parameter to the routine + */ + public void setF374(java.lang.Number value) { + setNumber(F374, value); + } + + /** + * Set the F375 parameter to the routine + */ + public void setF375(java.lang.Number value) { + setNumber(F375, value); + } + + /** + * Set the F376 parameter to the routine + */ + public void setF376(java.lang.Number value) { + setNumber(F376, value); + } + + /** + * Set the F377 parameter to the routine + */ + public void setF377(java.lang.Number value) { + setNumber(F377, value); + } + + /** + * Set the F378 parameter to the routine + */ + public void setF378(java.lang.Number value) { + setNumber(F378, value); + } + + /** + * Set the F379 parameter to the routine + */ + public void setF379(java.lang.Number value) { + setNumber(F379, value); + } + + /** + * Set the F380 parameter to the routine + */ + public void setF380(java.lang.Number value) { + setNumber(F380, value); + } + + /** + * Set the F381 parameter to the routine + */ + public void setF381(java.lang.Number value) { + setNumber(F381, value); + } + + /** + * Set the F382 parameter to the routine + */ + public void setF382(java.lang.Number value) { + setNumber(F382, value); + } + + /** + * Set the F383 parameter to the routine + */ + public void setF383(java.lang.Number value) { + setNumber(F383, value); + } + + /** + * Set the F384 parameter to the routine + */ + public void setF384(java.lang.Number value) { + setNumber(F384, value); + } + + /** + * Set the F385 parameter to the routine + */ + public void setF385(java.lang.Number value) { + setNumber(F385, value); + } + + /** + * Set the F386 parameter to the routine + */ + public void setF386(java.lang.Number value) { + setNumber(F386, value); + } + + /** + * Set the F387 parameter to the routine + */ + public void setF387(java.lang.Number value) { + setNumber(F387, value); + } + + /** + * Set the F388 parameter to the routine + */ + public void setF388(java.lang.Number value) { + setNumber(F388, value); + } + + /** + * Set the F389 parameter to the routine + */ + public void setF389(java.lang.Number value) { + setNumber(F389, value); + } + + /** + * Set the F390 parameter to the routine + */ + public void setF390(java.lang.Number value) { + setNumber(F390, value); + } + + /** + * Set the F391 parameter to the routine + */ + public void setF391(java.lang.Number value) { + setNumber(F391, value); + } + + /** + * Set the F392 parameter to the routine + */ + public void setF392(java.lang.Number value) { + setNumber(F392, value); + } + + /** + * Set the F393 parameter to the routine + */ + public void setF393(java.lang.Number value) { + setNumber(F393, value); + } + + /** + * Set the F394 parameter to the routine + */ + public void setF394(java.lang.Number value) { + setNumber(F394, value); + } + + /** + * Set the F395 parameter to the routine + */ + public void setF395(java.lang.Number value) { + setNumber(F395, value); + } + + /** + * Set the F396 parameter to the routine + */ + public void setF396(java.lang.Number value) { + setNumber(F396, value); + } + + /** + * Set the F397 parameter to the routine + */ + public void setF397(java.lang.Number value) { + setNumber(F397, value); + } + + /** + * Set the F398 parameter to the routine + */ + public void setF398(java.lang.Number value) { + setNumber(F398, value); + } + + /** + * Set the F399 parameter to the routine + */ + public void setF399(java.lang.Number value) { + setNumber(F399, value); + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/packages/library_767_package_test/Library_767PackageTest.java b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/packages/library_767_package_test/Library_767PackageTest.java new file mode 100644 index 00000000000..68192085a24 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/packages/library_767_package_test/Library_767PackageTest.java @@ -0,0 +1,27 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle.generatedclasses.test.packages.library_767_package_test; + +/** + * This class is generated by jOOQ. + */ +public class Library_767PackageTest extends org.jooq.impl.AbstractRoutine { + + private static final long serialVersionUID = 1715232815; + + + /** + * An uncommented item + */ + public static final org.jooq.Parameter RETURN_VALUE = createParameter("RETURN_VALUE", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * Create a new routine call instance + */ + public Library_767PackageTest() { + super("LIBRARY_767_PACKAGE_TEST", org.jooq.test.oracle.generatedclasses.test.Test.TEST, org.jooq.test.oracle.generatedclasses.test.packages.Library_767PackageTest.LIBRARY_767_PACKAGE_TEST, org.jooq.impl.SQLDataType.NUMERIC); + + setReturnParameter(RETURN_VALUE); + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/routines/F317.java b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/routines/F317.java new file mode 100644 index 00000000000..c840800e2cd --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/routines/F317.java @@ -0,0 +1,115 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle.generatedclasses.test.routines; + +/** + * This class is generated by jOOQ. + */ +public class F317 extends org.jooq.impl.AbstractRoutine { + + private static final long serialVersionUID = 439832625; + + + /** + * An uncommented item + */ + public static final org.jooq.Parameter RETURN_VALUE = createParameter("RETURN_VALUE", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter P1 = createParameter("P1", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter P2 = createParameter("P2", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter P3 = createParameter("P3", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter P4 = createParameter("P4", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * Create a new routine call instance + */ + public F317() { + super("F317", org.jooq.test.oracle.generatedclasses.test.Test.TEST, org.jooq.impl.SQLDataType.NUMERIC); + + setReturnParameter(RETURN_VALUE); + addInParameter(P1); + addInParameter(P2); + addInParameter(P3); + addInParameter(P4); + } + + /** + * Set the P1 parameter to the routine + */ + public void setP1(java.lang.Number value) { + setNumber(P1, value); + } + + /** + * Set the P1 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setP1(org.jooq.Field field) { + setNumber(P1, field); + } + + /** + * Set the P2 parameter to the routine + */ + public void setP2(java.lang.Number value) { + setNumber(P2, value); + } + + /** + * Set the P2 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setP2(org.jooq.Field field) { + setNumber(P2, field); + } + + /** + * Set the P3 parameter to the routine + */ + public void setP3(java.lang.Number value) { + setNumber(P3, value); + } + + /** + * Set the P3 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setP3(org.jooq.Field field) { + setNumber(P3, field); + } + + /** + * Set the P4 parameter to the routine + */ + public void setP4(java.lang.Number value) { + setNumber(P4, value); + } + + /** + * Set the P4 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setP4(org.jooq.Field field) { + setNumber(P4, field); + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/routines/F377.java b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/routines/F377.java new file mode 100644 index 00000000000..12ac38f806e --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/routines/F377.java @@ -0,0 +1,20 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle.generatedclasses.test.routines; + +/** + * This class is generated by jOOQ. + */ +public class F377 extends org.jooq.impl.AbstractRoutine { + + private static final long serialVersionUID = -1748141628; + + + /** + * Create a new routine call instance + */ + public F377() { + super("F377", org.jooq.test.oracle.generatedclasses.test.Test.TEST); + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/routines/F378.java b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/routines/F378.java new file mode 100644 index 00000000000..a14dffc8be4 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/routines/F378.java @@ -0,0 +1,67 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle.generatedclasses.test.routines; + +/** + * This class is generated by jOOQ. + */ +public class F378 extends org.jooq.impl.AbstractRoutine { + + private static final long serialVersionUID = -1020685150; + + + /** + * An uncommented item + */ + public static final org.jooq.Parameter RETURN_VALUE = createParameter("RETURN_VALUE", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter I = createParameter("I", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter IO = createParameter("IO", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter O = createParameter("O", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * Create a new routine call instance + */ + public F378() { + super("F378", org.jooq.test.oracle.generatedclasses.test.Test.TEST, org.jooq.impl.SQLDataType.NUMERIC); + + setReturnParameter(RETURN_VALUE); + addInParameter(I); + addInOutParameter(IO); + addOutParameter(O); + } + + /** + * Set the I parameter to the routine + */ + public void setI(java.lang.Number value) { + setNumber(I, value); + } + + /** + * Set the IO parameter to the routine + */ + public void setIo(java.lang.Number value) { + setNumber(IO, value); + } + + public java.math.BigDecimal getIo() { + return getValue(IO); + } + + public java.math.BigDecimal getO() { + return getValue(O); + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/routines/F691cursorIn.java b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/routines/F691cursorIn.java new file mode 100644 index 00000000000..6646f20f6f7 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/routines/F691cursorIn.java @@ -0,0 +1,49 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle.generatedclasses.test.routines; + +/** + * This class is generated by jOOQ. + */ +public class F691cursorIn extends org.jooq.impl.AbstractRoutine { + + private static final long serialVersionUID = -2122056832; + + + /** + * An uncommented item + */ + public static final org.jooq.Parameter RETURN_VALUE = createParameter("RETURN_VALUE", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter> C = createParameter("C", org.jooq.impl.SQLDataType.RESULT); + + /** + * Create a new routine call instance + */ + public F691cursorIn() { + super("F691CURSOR_IN", org.jooq.test.oracle.generatedclasses.test.Test.TEST, org.jooq.impl.SQLDataType.NUMERIC); + + setReturnParameter(RETURN_VALUE); + addInParameter(C); + } + + /** + * Set the C parameter to the routine + */ + public void setC(org.jooq.Result value) { + setValue(C, value); + } + + /** + * Set the C parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setC(org.jooq.Field> field) { + setField(C, field); + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/routines/F691cursorOut.java b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/routines/F691cursorOut.java new file mode 100644 index 00000000000..9f21d257e16 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/routines/F691cursorOut.java @@ -0,0 +1,27 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle.generatedclasses.test.routines; + +/** + * This class is generated by jOOQ. + */ +public class F691cursorOut extends org.jooq.impl.AbstractRoutine> { + + private static final long serialVersionUID = -589977465; + + + /** + * An uncommented item + */ + public static final org.jooq.Parameter> RETURN_VALUE = createParameter("RETURN_VALUE", org.jooq.impl.SQLDataType.RESULT); + + /** + * Create a new routine call instance + */ + public F691cursorOut() { + super("F691CURSOR_OUT", org.jooq.test.oracle.generatedclasses.test.Test.TEST, org.jooq.impl.SQLDataType.RESULT); + + setReturnParameter(RETURN_VALUE); + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/routines/FArrays1.java b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/routines/FArrays1.java new file mode 100644 index 00000000000..6eb53794788 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/routines/FArrays1.java @@ -0,0 +1,49 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle.generatedclasses.test.routines; + +/** + * This class is generated by jOOQ. + */ +public class FArrays1 extends org.jooq.impl.AbstractRoutine { + + private static final long serialVersionUID = -811085095; + + + /** + * An uncommented item + */ + public static final org.jooq.Parameter RETURN_VALUE = createParameter("RETURN_VALUE", org.jooq.impl.SQLDataType.INTEGER.asArrayDataType(org.jooq.test.oracle.generatedclasses.test.udt.records.UNumberArrayRecord.class)); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter IN_ARRAY = createParameter("IN_ARRAY", org.jooq.impl.SQLDataType.INTEGER.asArrayDataType(org.jooq.test.oracle.generatedclasses.test.udt.records.UNumberArrayRecord.class)); + + /** + * Create a new routine call instance + */ + public FArrays1() { + super("F_ARRAYS1", org.jooq.test.oracle.generatedclasses.test.Test.TEST, org.jooq.impl.SQLDataType.INTEGER.asArrayDataType(org.jooq.test.oracle.generatedclasses.test.udt.records.UNumberArrayRecord.class)); + + setReturnParameter(RETURN_VALUE); + addInParameter(IN_ARRAY); + } + + /** + * Set the IN_ARRAY parameter to the routine + */ + public void setInArray(org.jooq.test.oracle.generatedclasses.test.udt.records.UNumberArrayRecord value) { + setValue(IN_ARRAY, value); + } + + /** + * Set the IN_ARRAY parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setInArray(org.jooq.Field field) { + setField(IN_ARRAY, field); + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/routines/FArrays2.java b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/routines/FArrays2.java new file mode 100644 index 00000000000..8fc03d0137b --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/routines/FArrays2.java @@ -0,0 +1,49 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle.generatedclasses.test.routines; + +/** + * This class is generated by jOOQ. + */ +public class FArrays2 extends org.jooq.impl.AbstractRoutine { + + private static final long serialVersionUID = 1072405333; + + + /** + * An uncommented item + */ + public static final org.jooq.Parameter RETURN_VALUE = createParameter("RETURN_VALUE", org.jooq.impl.SQLDataType.BIGINT.asArrayDataType(org.jooq.test.oracle.generatedclasses.test.udt.records.UNumberLongArrayRecord.class)); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter IN_ARRAY = createParameter("IN_ARRAY", org.jooq.impl.SQLDataType.BIGINT.asArrayDataType(org.jooq.test.oracle.generatedclasses.test.udt.records.UNumberLongArrayRecord.class)); + + /** + * Create a new routine call instance + */ + public FArrays2() { + super("F_ARRAYS2", org.jooq.test.oracle.generatedclasses.test.Test.TEST, org.jooq.impl.SQLDataType.BIGINT.asArrayDataType(org.jooq.test.oracle.generatedclasses.test.udt.records.UNumberLongArrayRecord.class)); + + setReturnParameter(RETURN_VALUE); + addInParameter(IN_ARRAY); + } + + /** + * Set the IN_ARRAY parameter to the routine + */ + public void setInArray(org.jooq.test.oracle.generatedclasses.test.udt.records.UNumberLongArrayRecord value) { + setValue(IN_ARRAY, value); + } + + /** + * Set the IN_ARRAY parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setInArray(org.jooq.Field field) { + setField(IN_ARRAY, field); + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/routines/FArrays3.java b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/routines/FArrays3.java new file mode 100644 index 00000000000..c75c040c98c --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/routines/FArrays3.java @@ -0,0 +1,49 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle.generatedclasses.test.routines; + +/** + * This class is generated by jOOQ. + */ +public class FArrays3 extends org.jooq.impl.AbstractRoutine { + + private static final long serialVersionUID = -950354982; + + + /** + * An uncommented item + */ + public static final org.jooq.Parameter RETURN_VALUE = createParameter("RETURN_VALUE", org.jooq.impl.SQLDataType.VARCHAR.asArrayDataType(org.jooq.test.oracle.generatedclasses.test.udt.records.UStringArrayRecord.class)); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter IN_ARRAY = createParameter("IN_ARRAY", org.jooq.impl.SQLDataType.VARCHAR.asArrayDataType(org.jooq.test.oracle.generatedclasses.test.udt.records.UStringArrayRecord.class)); + + /** + * Create a new routine call instance + */ + public FArrays3() { + super("F_ARRAYS3", org.jooq.test.oracle.generatedclasses.test.Test.TEST, org.jooq.impl.SQLDataType.VARCHAR.asArrayDataType(org.jooq.test.oracle.generatedclasses.test.udt.records.UStringArrayRecord.class)); + + setReturnParameter(RETURN_VALUE); + addInParameter(IN_ARRAY); + } + + /** + * Set the IN_ARRAY parameter to the routine + */ + public void setInArray(org.jooq.test.oracle.generatedclasses.test.udt.records.UStringArrayRecord value) { + setValue(IN_ARRAY, value); + } + + /** + * Set the IN_ARRAY parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setInArray(org.jooq.Field field) { + setField(IN_ARRAY, field); + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/routines/FArrays4.java b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/routines/FArrays4.java new file mode 100644 index 00000000000..fb3dac9320c --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/routines/FArrays4.java @@ -0,0 +1,49 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle.generatedclasses.test.routines; + +/** + * This class is generated by jOOQ. + */ +public class FArrays4 extends org.jooq.impl.AbstractRoutine { + + private static final long serialVersionUID = -1267873287; + + + /** + * An uncommented item + */ + public static final org.jooq.Parameter RETURN_VALUE = createParameter("RETURN_VALUE", org.jooq.test.oracle.generatedclasses.test.udt.UBookType.U_BOOK_TYPE.getDataType().asArrayDataType(org.jooq.test.oracle.generatedclasses.test.udt.records.UBookArrayRecord.class)); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter IN_ARRAY = createParameter("IN_ARRAY", org.jooq.test.oracle.generatedclasses.test.udt.UBookType.U_BOOK_TYPE.getDataType().asArrayDataType(org.jooq.test.oracle.generatedclasses.test.udt.records.UBookArrayRecord.class)); + + /** + * Create a new routine call instance + */ + public FArrays4() { + super("F_ARRAYS4", org.jooq.test.oracle.generatedclasses.test.Test.TEST, org.jooq.test.oracle.generatedclasses.test.udt.UBookType.U_BOOK_TYPE.getDataType().asArrayDataType(org.jooq.test.oracle.generatedclasses.test.udt.records.UBookArrayRecord.class)); + + setReturnParameter(RETURN_VALUE); + addInParameter(IN_ARRAY); + } + + /** + * Set the IN_ARRAY parameter to the routine + */ + public void setInArray(org.jooq.test.oracle.generatedclasses.test.udt.records.UBookArrayRecord value) { + setValue(IN_ARRAY, value); + } + + /** + * Set the IN_ARRAY parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setInArray(org.jooq.Field field) { + setField(IN_ARRAY, field); + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/routines/FAuthorExists.java b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/routines/FAuthorExists.java new file mode 100644 index 00000000000..4db1c0c5bda --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/routines/FAuthorExists.java @@ -0,0 +1,49 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle.generatedclasses.test.routines; + +/** + * This class is generated by jOOQ. + */ +public class FAuthorExists extends org.jooq.impl.AbstractRoutine { + + private static final long serialVersionUID = 1125303782; + + + /** + * An uncommented item + */ + public static final org.jooq.Parameter RETURN_VALUE = createParameter("RETURN_VALUE", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter AUTHOR_NAME = createParameter("AUTHOR_NAME", org.jooq.impl.SQLDataType.VARCHAR); + + /** + * Create a new routine call instance + */ + public FAuthorExists() { + super("F_AUTHOR_EXISTS", org.jooq.test.oracle.generatedclasses.test.Test.TEST, org.jooq.impl.SQLDataType.NUMERIC); + + setReturnParameter(RETURN_VALUE); + addInParameter(AUTHOR_NAME); + } + + /** + * Set the AUTHOR_NAME parameter to the routine + */ + public void setAuthorName(java.lang.String value) { + setValue(AUTHOR_NAME, value); + } + + /** + * Set the AUTHOR_NAME parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setAuthorName(org.jooq.Field field) { + setField(AUTHOR_NAME, field); + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/routines/FGetOneCursor.java b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/routines/FGetOneCursor.java new file mode 100644 index 00000000000..5249f8b4225 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/routines/FGetOneCursor.java @@ -0,0 +1,49 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle.generatedclasses.test.routines; + +/** + * This class is generated by jOOQ. + */ +public class FGetOneCursor extends org.jooq.impl.AbstractRoutine> { + + private static final long serialVersionUID = -1270921357; + + + /** + * An uncommented item + */ + public static final org.jooq.Parameter> RETURN_VALUE = createParameter("RETURN_VALUE", org.jooq.impl.SQLDataType.RESULT); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter BOOK_IDS = createParameter("BOOK_IDS", org.jooq.impl.SQLDataType.INTEGER.asArrayDataType(org.jooq.test.oracle.generatedclasses.test.udt.records.UNumberArrayRecord.class)); + + /** + * Create a new routine call instance + */ + public FGetOneCursor() { + super("F_GET_ONE_CURSOR", org.jooq.test.oracle.generatedclasses.test.Test.TEST, org.jooq.impl.SQLDataType.RESULT); + + setReturnParameter(RETURN_VALUE); + addInParameter(BOOK_IDS); + } + + /** + * Set the BOOK_IDS parameter to the routine + */ + public void setBookIds(org.jooq.test.oracle.generatedclasses.test.udt.records.UNumberArrayRecord value) { + setValue(BOOK_IDS, value); + } + + /** + * Set the BOOK_IDS parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setBookIds(org.jooq.Field field) { + setField(BOOK_IDS, field); + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/routines/FManyParameters.java b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/routines/FManyParameters.java new file mode 100644 index 00000000000..18792acbd2f --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/routines/FManyParameters.java @@ -0,0 +1,8827 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle.generatedclasses.test.routines; + +/** + * This class is generated by jOOQ. + */ +public class FManyParameters extends org.jooq.impl.AbstractRoutine { + + private static final long serialVersionUID = 595220351; + + + /** + * An uncommented item + */ + public static final org.jooq.Parameter RETURN_VALUE = createParameter("RETURN_VALUE", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F000 = createParameter("F000", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F001 = createParameter("F001", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F002 = createParameter("F002", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F003 = createParameter("F003", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F004 = createParameter("F004", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F005 = createParameter("F005", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F006 = createParameter("F006", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F007 = createParameter("F007", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F008 = createParameter("F008", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F009 = createParameter("F009", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F010 = createParameter("F010", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F011 = createParameter("F011", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F012 = createParameter("F012", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F013 = createParameter("F013", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F014 = createParameter("F014", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F015 = createParameter("F015", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F016 = createParameter("F016", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F017 = createParameter("F017", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F018 = createParameter("F018", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F019 = createParameter("F019", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F020 = createParameter("F020", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F021 = createParameter("F021", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F022 = createParameter("F022", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F023 = createParameter("F023", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F024 = createParameter("F024", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F025 = createParameter("F025", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F026 = createParameter("F026", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F027 = createParameter("F027", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F028 = createParameter("F028", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F029 = createParameter("F029", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F030 = createParameter("F030", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F031 = createParameter("F031", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F032 = createParameter("F032", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F033 = createParameter("F033", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F034 = createParameter("F034", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F035 = createParameter("F035", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F036 = createParameter("F036", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F037 = createParameter("F037", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F038 = createParameter("F038", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F039 = createParameter("F039", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F040 = createParameter("F040", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F041 = createParameter("F041", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F042 = createParameter("F042", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F043 = createParameter("F043", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F044 = createParameter("F044", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F045 = createParameter("F045", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F046 = createParameter("F046", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F047 = createParameter("F047", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F048 = createParameter("F048", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F049 = createParameter("F049", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F050 = createParameter("F050", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F051 = createParameter("F051", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F052 = createParameter("F052", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F053 = createParameter("F053", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F054 = createParameter("F054", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F055 = createParameter("F055", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F056 = createParameter("F056", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F057 = createParameter("F057", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F058 = createParameter("F058", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F059 = createParameter("F059", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F060 = createParameter("F060", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F061 = createParameter("F061", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F062 = createParameter("F062", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F063 = createParameter("F063", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F064 = createParameter("F064", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F065 = createParameter("F065", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F066 = createParameter("F066", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F067 = createParameter("F067", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F068 = createParameter("F068", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F069 = createParameter("F069", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F070 = createParameter("F070", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F071 = createParameter("F071", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F072 = createParameter("F072", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F073 = createParameter("F073", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F074 = createParameter("F074", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F075 = createParameter("F075", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F076 = createParameter("F076", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F077 = createParameter("F077", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F078 = createParameter("F078", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F079 = createParameter("F079", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F080 = createParameter("F080", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F081 = createParameter("F081", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F082 = createParameter("F082", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F083 = createParameter("F083", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F084 = createParameter("F084", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F085 = createParameter("F085", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F086 = createParameter("F086", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F087 = createParameter("F087", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F088 = createParameter("F088", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F089 = createParameter("F089", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F090 = createParameter("F090", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F091 = createParameter("F091", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F092 = createParameter("F092", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F093 = createParameter("F093", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F094 = createParameter("F094", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F095 = createParameter("F095", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F096 = createParameter("F096", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F097 = createParameter("F097", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F098 = createParameter("F098", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F099 = createParameter("F099", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F100 = createParameter("F100", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F101 = createParameter("F101", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F102 = createParameter("F102", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F103 = createParameter("F103", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F104 = createParameter("F104", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F105 = createParameter("F105", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F106 = createParameter("F106", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F107 = createParameter("F107", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F108 = createParameter("F108", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F109 = createParameter("F109", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F110 = createParameter("F110", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F111 = createParameter("F111", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F112 = createParameter("F112", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F113 = createParameter("F113", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F114 = createParameter("F114", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F115 = createParameter("F115", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F116 = createParameter("F116", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F117 = createParameter("F117", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F118 = createParameter("F118", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F119 = createParameter("F119", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F120 = createParameter("F120", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F121 = createParameter("F121", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F122 = createParameter("F122", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F123 = createParameter("F123", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F124 = createParameter("F124", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F125 = createParameter("F125", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F126 = createParameter("F126", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F127 = createParameter("F127", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F128 = createParameter("F128", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F129 = createParameter("F129", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F130 = createParameter("F130", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F131 = createParameter("F131", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F132 = createParameter("F132", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F133 = createParameter("F133", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F134 = createParameter("F134", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F135 = createParameter("F135", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F136 = createParameter("F136", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F137 = createParameter("F137", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F138 = createParameter("F138", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F139 = createParameter("F139", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F140 = createParameter("F140", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F141 = createParameter("F141", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F142 = createParameter("F142", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F143 = createParameter("F143", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F144 = createParameter("F144", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F145 = createParameter("F145", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F146 = createParameter("F146", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F147 = createParameter("F147", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F148 = createParameter("F148", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F149 = createParameter("F149", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F150 = createParameter("F150", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F151 = createParameter("F151", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F152 = createParameter("F152", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F153 = createParameter("F153", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F154 = createParameter("F154", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F155 = createParameter("F155", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F156 = createParameter("F156", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F157 = createParameter("F157", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F158 = createParameter("F158", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F159 = createParameter("F159", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F160 = createParameter("F160", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F161 = createParameter("F161", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F162 = createParameter("F162", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F163 = createParameter("F163", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F164 = createParameter("F164", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F165 = createParameter("F165", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F166 = createParameter("F166", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F167 = createParameter("F167", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F168 = createParameter("F168", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F169 = createParameter("F169", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F170 = createParameter("F170", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F171 = createParameter("F171", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F172 = createParameter("F172", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F173 = createParameter("F173", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F174 = createParameter("F174", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F175 = createParameter("F175", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F176 = createParameter("F176", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F177 = createParameter("F177", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F178 = createParameter("F178", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F179 = createParameter("F179", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F180 = createParameter("F180", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F181 = createParameter("F181", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F182 = createParameter("F182", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F183 = createParameter("F183", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F184 = createParameter("F184", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F185 = createParameter("F185", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F186 = createParameter("F186", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F187 = createParameter("F187", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F188 = createParameter("F188", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F189 = createParameter("F189", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F190 = createParameter("F190", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F191 = createParameter("F191", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F192 = createParameter("F192", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F193 = createParameter("F193", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F194 = createParameter("F194", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F195 = createParameter("F195", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F196 = createParameter("F196", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F197 = createParameter("F197", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F198 = createParameter("F198", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F199 = createParameter("F199", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F200 = createParameter("F200", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F201 = createParameter("F201", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F202 = createParameter("F202", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F203 = createParameter("F203", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F204 = createParameter("F204", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F205 = createParameter("F205", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F206 = createParameter("F206", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F207 = createParameter("F207", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F208 = createParameter("F208", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F209 = createParameter("F209", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F210 = createParameter("F210", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F211 = createParameter("F211", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F212 = createParameter("F212", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F213 = createParameter("F213", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F214 = createParameter("F214", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F215 = createParameter("F215", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F216 = createParameter("F216", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F217 = createParameter("F217", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F218 = createParameter("F218", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F219 = createParameter("F219", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F220 = createParameter("F220", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F221 = createParameter("F221", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F222 = createParameter("F222", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F223 = createParameter("F223", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F224 = createParameter("F224", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F225 = createParameter("F225", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F226 = createParameter("F226", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F227 = createParameter("F227", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F228 = createParameter("F228", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F229 = createParameter("F229", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F230 = createParameter("F230", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F231 = createParameter("F231", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F232 = createParameter("F232", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F233 = createParameter("F233", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F234 = createParameter("F234", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F235 = createParameter("F235", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F236 = createParameter("F236", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F237 = createParameter("F237", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F238 = createParameter("F238", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F239 = createParameter("F239", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F240 = createParameter("F240", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F241 = createParameter("F241", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F242 = createParameter("F242", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F243 = createParameter("F243", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F244 = createParameter("F244", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F245 = createParameter("F245", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F246 = createParameter("F246", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F247 = createParameter("F247", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F248 = createParameter("F248", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F249 = createParameter("F249", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F250 = createParameter("F250", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F251 = createParameter("F251", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F252 = createParameter("F252", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F253 = createParameter("F253", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F254 = createParameter("F254", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F255 = createParameter("F255", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F256 = createParameter("F256", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F257 = createParameter("F257", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F258 = createParameter("F258", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F259 = createParameter("F259", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F260 = createParameter("F260", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F261 = createParameter("F261", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F262 = createParameter("F262", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F263 = createParameter("F263", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F264 = createParameter("F264", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F265 = createParameter("F265", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F266 = createParameter("F266", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F267 = createParameter("F267", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F268 = createParameter("F268", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F269 = createParameter("F269", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F270 = createParameter("F270", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F271 = createParameter("F271", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F272 = createParameter("F272", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F273 = createParameter("F273", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F274 = createParameter("F274", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F275 = createParameter("F275", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F276 = createParameter("F276", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F277 = createParameter("F277", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F278 = createParameter("F278", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F279 = createParameter("F279", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F280 = createParameter("F280", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F281 = createParameter("F281", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F282 = createParameter("F282", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F283 = createParameter("F283", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F284 = createParameter("F284", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F285 = createParameter("F285", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F286 = createParameter("F286", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F287 = createParameter("F287", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F288 = createParameter("F288", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F289 = createParameter("F289", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F290 = createParameter("F290", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F291 = createParameter("F291", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F292 = createParameter("F292", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F293 = createParameter("F293", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F294 = createParameter("F294", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F295 = createParameter("F295", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F296 = createParameter("F296", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F297 = createParameter("F297", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F298 = createParameter("F298", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F299 = createParameter("F299", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F300 = createParameter("F300", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F301 = createParameter("F301", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F302 = createParameter("F302", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F303 = createParameter("F303", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F304 = createParameter("F304", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F305 = createParameter("F305", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F306 = createParameter("F306", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F307 = createParameter("F307", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F308 = createParameter("F308", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F309 = createParameter("F309", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F310 = createParameter("F310", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F311 = createParameter("F311", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F312 = createParameter("F312", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F313 = createParameter("F313", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F314 = createParameter("F314", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F315 = createParameter("F315", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F316 = createParameter("F316", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F317 = createParameter("F317", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F318 = createParameter("F318", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F319 = createParameter("F319", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F320 = createParameter("F320", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F321 = createParameter("F321", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F322 = createParameter("F322", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F323 = createParameter("F323", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F324 = createParameter("F324", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F325 = createParameter("F325", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F326 = createParameter("F326", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F327 = createParameter("F327", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F328 = createParameter("F328", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F329 = createParameter("F329", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F330 = createParameter("F330", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F331 = createParameter("F331", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F332 = createParameter("F332", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F333 = createParameter("F333", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F334 = createParameter("F334", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F335 = createParameter("F335", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F336 = createParameter("F336", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F337 = createParameter("F337", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F338 = createParameter("F338", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F339 = createParameter("F339", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F340 = createParameter("F340", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F341 = createParameter("F341", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F342 = createParameter("F342", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F343 = createParameter("F343", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F344 = createParameter("F344", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F345 = createParameter("F345", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F346 = createParameter("F346", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F347 = createParameter("F347", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F348 = createParameter("F348", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F349 = createParameter("F349", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F350 = createParameter("F350", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F351 = createParameter("F351", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F352 = createParameter("F352", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F353 = createParameter("F353", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F354 = createParameter("F354", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F355 = createParameter("F355", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F356 = createParameter("F356", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F357 = createParameter("F357", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F358 = createParameter("F358", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F359 = createParameter("F359", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F360 = createParameter("F360", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F361 = createParameter("F361", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F362 = createParameter("F362", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F363 = createParameter("F363", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F364 = createParameter("F364", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F365 = createParameter("F365", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F366 = createParameter("F366", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F367 = createParameter("F367", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F368 = createParameter("F368", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F369 = createParameter("F369", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F370 = createParameter("F370", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F371 = createParameter("F371", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F372 = createParameter("F372", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F373 = createParameter("F373", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F374 = createParameter("F374", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F375 = createParameter("F375", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F376 = createParameter("F376", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F377 = createParameter("F377", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F378 = createParameter("F378", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F379 = createParameter("F379", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F380 = createParameter("F380", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F381 = createParameter("F381", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F382 = createParameter("F382", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F383 = createParameter("F383", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F384 = createParameter("F384", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F385 = createParameter("F385", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F386 = createParameter("F386", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F387 = createParameter("F387", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F388 = createParameter("F388", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F389 = createParameter("F389", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F390 = createParameter("F390", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F391 = createParameter("F391", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F392 = createParameter("F392", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F393 = createParameter("F393", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F394 = createParameter("F394", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F395 = createParameter("F395", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F396 = createParameter("F396", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F397 = createParameter("F397", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F398 = createParameter("F398", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F399 = createParameter("F399", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * Create a new routine call instance + */ + public FManyParameters() { + super("F_MANY_PARAMETERS", org.jooq.test.oracle.generatedclasses.test.Test.TEST, org.jooq.impl.SQLDataType.NUMERIC); + + setReturnParameter(RETURN_VALUE); + addInParameter(F000); + addInParameter(F001); + addInParameter(F002); + addInParameter(F003); + addInParameter(F004); + addInParameter(F005); + addInParameter(F006); + addInParameter(F007); + addInParameter(F008); + addInParameter(F009); + addInParameter(F010); + addInParameter(F011); + addInParameter(F012); + addInParameter(F013); + addInParameter(F014); + addInParameter(F015); + addInParameter(F016); + addInParameter(F017); + addInParameter(F018); + addInParameter(F019); + addInParameter(F020); + addInParameter(F021); + addInParameter(F022); + addInParameter(F023); + addInParameter(F024); + addInParameter(F025); + addInParameter(F026); + addInParameter(F027); + addInParameter(F028); + addInParameter(F029); + addInParameter(F030); + addInParameter(F031); + addInParameter(F032); + addInParameter(F033); + addInParameter(F034); + addInParameter(F035); + addInParameter(F036); + addInParameter(F037); + addInParameter(F038); + addInParameter(F039); + addInParameter(F040); + addInParameter(F041); + addInParameter(F042); + addInParameter(F043); + addInParameter(F044); + addInParameter(F045); + addInParameter(F046); + addInParameter(F047); + addInParameter(F048); + addInParameter(F049); + addInParameter(F050); + addInParameter(F051); + addInParameter(F052); + addInParameter(F053); + addInParameter(F054); + addInParameter(F055); + addInParameter(F056); + addInParameter(F057); + addInParameter(F058); + addInParameter(F059); + addInParameter(F060); + addInParameter(F061); + addInParameter(F062); + addInParameter(F063); + addInParameter(F064); + addInParameter(F065); + addInParameter(F066); + addInParameter(F067); + addInParameter(F068); + addInParameter(F069); + addInParameter(F070); + addInParameter(F071); + addInParameter(F072); + addInParameter(F073); + addInParameter(F074); + addInParameter(F075); + addInParameter(F076); + addInParameter(F077); + addInParameter(F078); + addInParameter(F079); + addInParameter(F080); + addInParameter(F081); + addInParameter(F082); + addInParameter(F083); + addInParameter(F084); + addInParameter(F085); + addInParameter(F086); + addInParameter(F087); + addInParameter(F088); + addInParameter(F089); + addInParameter(F090); + addInParameter(F091); + addInParameter(F092); + addInParameter(F093); + addInParameter(F094); + addInParameter(F095); + addInParameter(F096); + addInParameter(F097); + addInParameter(F098); + addInParameter(F099); + addInParameter(F100); + addInParameter(F101); + addInParameter(F102); + addInParameter(F103); + addInParameter(F104); + addInParameter(F105); + addInParameter(F106); + addInParameter(F107); + addInParameter(F108); + addInParameter(F109); + addInParameter(F110); + addInParameter(F111); + addInParameter(F112); + addInParameter(F113); + addInParameter(F114); + addInParameter(F115); + addInParameter(F116); + addInParameter(F117); + addInParameter(F118); + addInParameter(F119); + addInParameter(F120); + addInParameter(F121); + addInParameter(F122); + addInParameter(F123); + addInParameter(F124); + addInParameter(F125); + addInParameter(F126); + addInParameter(F127); + addInParameter(F128); + addInParameter(F129); + addInParameter(F130); + addInParameter(F131); + addInParameter(F132); + addInParameter(F133); + addInParameter(F134); + addInParameter(F135); + addInParameter(F136); + addInParameter(F137); + addInParameter(F138); + addInParameter(F139); + addInParameter(F140); + addInParameter(F141); + addInParameter(F142); + addInParameter(F143); + addInParameter(F144); + addInParameter(F145); + addInParameter(F146); + addInParameter(F147); + addInParameter(F148); + addInParameter(F149); + addInParameter(F150); + addInParameter(F151); + addInParameter(F152); + addInParameter(F153); + addInParameter(F154); + addInParameter(F155); + addInParameter(F156); + addInParameter(F157); + addInParameter(F158); + addInParameter(F159); + addInParameter(F160); + addInParameter(F161); + addInParameter(F162); + addInParameter(F163); + addInParameter(F164); + addInParameter(F165); + addInParameter(F166); + addInParameter(F167); + addInParameter(F168); + addInParameter(F169); + addInParameter(F170); + addInParameter(F171); + addInParameter(F172); + addInParameter(F173); + addInParameter(F174); + addInParameter(F175); + addInParameter(F176); + addInParameter(F177); + addInParameter(F178); + addInParameter(F179); + addInParameter(F180); + addInParameter(F181); + addInParameter(F182); + addInParameter(F183); + addInParameter(F184); + addInParameter(F185); + addInParameter(F186); + addInParameter(F187); + addInParameter(F188); + addInParameter(F189); + addInParameter(F190); + addInParameter(F191); + addInParameter(F192); + addInParameter(F193); + addInParameter(F194); + addInParameter(F195); + addInParameter(F196); + addInParameter(F197); + addInParameter(F198); + addInParameter(F199); + addInParameter(F200); + addInParameter(F201); + addInParameter(F202); + addInParameter(F203); + addInParameter(F204); + addInParameter(F205); + addInParameter(F206); + addInParameter(F207); + addInParameter(F208); + addInParameter(F209); + addInParameter(F210); + addInParameter(F211); + addInParameter(F212); + addInParameter(F213); + addInParameter(F214); + addInParameter(F215); + addInParameter(F216); + addInParameter(F217); + addInParameter(F218); + addInParameter(F219); + addInParameter(F220); + addInParameter(F221); + addInParameter(F222); + addInParameter(F223); + addInParameter(F224); + addInParameter(F225); + addInParameter(F226); + addInParameter(F227); + addInParameter(F228); + addInParameter(F229); + addInParameter(F230); + addInParameter(F231); + addInParameter(F232); + addInParameter(F233); + addInParameter(F234); + addInParameter(F235); + addInParameter(F236); + addInParameter(F237); + addInParameter(F238); + addInParameter(F239); + addInParameter(F240); + addInParameter(F241); + addInParameter(F242); + addInParameter(F243); + addInParameter(F244); + addInParameter(F245); + addInParameter(F246); + addInParameter(F247); + addInParameter(F248); + addInParameter(F249); + addInParameter(F250); + addInParameter(F251); + addInParameter(F252); + addInParameter(F253); + addInParameter(F254); + addInParameter(F255); + addInParameter(F256); + addInParameter(F257); + addInParameter(F258); + addInParameter(F259); + addInParameter(F260); + addInParameter(F261); + addInParameter(F262); + addInParameter(F263); + addInParameter(F264); + addInParameter(F265); + addInParameter(F266); + addInParameter(F267); + addInParameter(F268); + addInParameter(F269); + addInParameter(F270); + addInParameter(F271); + addInParameter(F272); + addInParameter(F273); + addInParameter(F274); + addInParameter(F275); + addInParameter(F276); + addInParameter(F277); + addInParameter(F278); + addInParameter(F279); + addInParameter(F280); + addInParameter(F281); + addInParameter(F282); + addInParameter(F283); + addInParameter(F284); + addInParameter(F285); + addInParameter(F286); + addInParameter(F287); + addInParameter(F288); + addInParameter(F289); + addInParameter(F290); + addInParameter(F291); + addInParameter(F292); + addInParameter(F293); + addInParameter(F294); + addInParameter(F295); + addInParameter(F296); + addInParameter(F297); + addInParameter(F298); + addInParameter(F299); + addInParameter(F300); + addInParameter(F301); + addInParameter(F302); + addInParameter(F303); + addInParameter(F304); + addInParameter(F305); + addInParameter(F306); + addInParameter(F307); + addInParameter(F308); + addInParameter(F309); + addInParameter(F310); + addInParameter(F311); + addInParameter(F312); + addInParameter(F313); + addInParameter(F314); + addInParameter(F315); + addInParameter(F316); + addInParameter(F317); + addInParameter(F318); + addInParameter(F319); + addInParameter(F320); + addInParameter(F321); + addInParameter(F322); + addInParameter(F323); + addInParameter(F324); + addInParameter(F325); + addInParameter(F326); + addInParameter(F327); + addInParameter(F328); + addInParameter(F329); + addInParameter(F330); + addInParameter(F331); + addInParameter(F332); + addInParameter(F333); + addInParameter(F334); + addInParameter(F335); + addInParameter(F336); + addInParameter(F337); + addInParameter(F338); + addInParameter(F339); + addInParameter(F340); + addInParameter(F341); + addInParameter(F342); + addInParameter(F343); + addInParameter(F344); + addInParameter(F345); + addInParameter(F346); + addInParameter(F347); + addInParameter(F348); + addInParameter(F349); + addInParameter(F350); + addInParameter(F351); + addInParameter(F352); + addInParameter(F353); + addInParameter(F354); + addInParameter(F355); + addInParameter(F356); + addInParameter(F357); + addInParameter(F358); + addInParameter(F359); + addInParameter(F360); + addInParameter(F361); + addInParameter(F362); + addInParameter(F363); + addInParameter(F364); + addInParameter(F365); + addInParameter(F366); + addInParameter(F367); + addInParameter(F368); + addInParameter(F369); + addInParameter(F370); + addInParameter(F371); + addInParameter(F372); + addInParameter(F373); + addInParameter(F374); + addInParameter(F375); + addInParameter(F376); + addInParameter(F377); + addInParameter(F378); + addInParameter(F379); + addInParameter(F380); + addInParameter(F381); + addInParameter(F382); + addInParameter(F383); + addInParameter(F384); + addInParameter(F385); + addInParameter(F386); + addInParameter(F387); + addInParameter(F388); + addInParameter(F389); + addInParameter(F390); + addInParameter(F391); + addInParameter(F392); + addInParameter(F393); + addInParameter(F394); + addInParameter(F395); + addInParameter(F396); + addInParameter(F397); + addInParameter(F398); + addInParameter(F399); + } + + /** + * Set the F000 parameter to the routine + */ + public void setF000(java.lang.Number value) { + setNumber(F000, value); + } + + /** + * Set the F000 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF000(org.jooq.Field field) { + setNumber(F000, field); + } + + /** + * Set the F001 parameter to the routine + */ + public void setF001(java.lang.Number value) { + setNumber(F001, value); + } + + /** + * Set the F001 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF001(org.jooq.Field field) { + setNumber(F001, field); + } + + /** + * Set the F002 parameter to the routine + */ + public void setF002(java.lang.Number value) { + setNumber(F002, value); + } + + /** + * Set the F002 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF002(org.jooq.Field field) { + setNumber(F002, field); + } + + /** + * Set the F003 parameter to the routine + */ + public void setF003(java.lang.Number value) { + setNumber(F003, value); + } + + /** + * Set the F003 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF003(org.jooq.Field field) { + setNumber(F003, field); + } + + /** + * Set the F004 parameter to the routine + */ + public void setF004(java.lang.Number value) { + setNumber(F004, value); + } + + /** + * Set the F004 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF004(org.jooq.Field field) { + setNumber(F004, field); + } + + /** + * Set the F005 parameter to the routine + */ + public void setF005(java.lang.Number value) { + setNumber(F005, value); + } + + /** + * Set the F005 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF005(org.jooq.Field field) { + setNumber(F005, field); + } + + /** + * Set the F006 parameter to the routine + */ + public void setF006(java.lang.Number value) { + setNumber(F006, value); + } + + /** + * Set the F006 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF006(org.jooq.Field field) { + setNumber(F006, field); + } + + /** + * Set the F007 parameter to the routine + */ + public void setF007(java.lang.Number value) { + setNumber(F007, value); + } + + /** + * Set the F007 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF007(org.jooq.Field field) { + setNumber(F007, field); + } + + /** + * Set the F008 parameter to the routine + */ + public void setF008(java.lang.Number value) { + setNumber(F008, value); + } + + /** + * Set the F008 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF008(org.jooq.Field field) { + setNumber(F008, field); + } + + /** + * Set the F009 parameter to the routine + */ + public void setF009(java.lang.Number value) { + setNumber(F009, value); + } + + /** + * Set the F009 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF009(org.jooq.Field field) { + setNumber(F009, field); + } + + /** + * Set the F010 parameter to the routine + */ + public void setF010(java.lang.Number value) { + setNumber(F010, value); + } + + /** + * Set the F010 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF010(org.jooq.Field field) { + setNumber(F010, field); + } + + /** + * Set the F011 parameter to the routine + */ + public void setF011(java.lang.Number value) { + setNumber(F011, value); + } + + /** + * Set the F011 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF011(org.jooq.Field field) { + setNumber(F011, field); + } + + /** + * Set the F012 parameter to the routine + */ + public void setF012(java.lang.Number value) { + setNumber(F012, value); + } + + /** + * Set the F012 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF012(org.jooq.Field field) { + setNumber(F012, field); + } + + /** + * Set the F013 parameter to the routine + */ + public void setF013(java.lang.Number value) { + setNumber(F013, value); + } + + /** + * Set the F013 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF013(org.jooq.Field field) { + setNumber(F013, field); + } + + /** + * Set the F014 parameter to the routine + */ + public void setF014(java.lang.Number value) { + setNumber(F014, value); + } + + /** + * Set the F014 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF014(org.jooq.Field field) { + setNumber(F014, field); + } + + /** + * Set the F015 parameter to the routine + */ + public void setF015(java.lang.Number value) { + setNumber(F015, value); + } + + /** + * Set the F015 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF015(org.jooq.Field field) { + setNumber(F015, field); + } + + /** + * Set the F016 parameter to the routine + */ + public void setF016(java.lang.Number value) { + setNumber(F016, value); + } + + /** + * Set the F016 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF016(org.jooq.Field field) { + setNumber(F016, field); + } + + /** + * Set the F017 parameter to the routine + */ + public void setF017(java.lang.Number value) { + setNumber(F017, value); + } + + /** + * Set the F017 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF017(org.jooq.Field field) { + setNumber(F017, field); + } + + /** + * Set the F018 parameter to the routine + */ + public void setF018(java.lang.Number value) { + setNumber(F018, value); + } + + /** + * Set the F018 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF018(org.jooq.Field field) { + setNumber(F018, field); + } + + /** + * Set the F019 parameter to the routine + */ + public void setF019(java.lang.Number value) { + setNumber(F019, value); + } + + /** + * Set the F019 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF019(org.jooq.Field field) { + setNumber(F019, field); + } + + /** + * Set the F020 parameter to the routine + */ + public void setF020(java.lang.Number value) { + setNumber(F020, value); + } + + /** + * Set the F020 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF020(org.jooq.Field field) { + setNumber(F020, field); + } + + /** + * Set the F021 parameter to the routine + */ + public void setF021(java.lang.Number value) { + setNumber(F021, value); + } + + /** + * Set the F021 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF021(org.jooq.Field field) { + setNumber(F021, field); + } + + /** + * Set the F022 parameter to the routine + */ + public void setF022(java.lang.Number value) { + setNumber(F022, value); + } + + /** + * Set the F022 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF022(org.jooq.Field field) { + setNumber(F022, field); + } + + /** + * Set the F023 parameter to the routine + */ + public void setF023(java.lang.Number value) { + setNumber(F023, value); + } + + /** + * Set the F023 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF023(org.jooq.Field field) { + setNumber(F023, field); + } + + /** + * Set the F024 parameter to the routine + */ + public void setF024(java.lang.Number value) { + setNumber(F024, value); + } + + /** + * Set the F024 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF024(org.jooq.Field field) { + setNumber(F024, field); + } + + /** + * Set the F025 parameter to the routine + */ + public void setF025(java.lang.Number value) { + setNumber(F025, value); + } + + /** + * Set the F025 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF025(org.jooq.Field field) { + setNumber(F025, field); + } + + /** + * Set the F026 parameter to the routine + */ + public void setF026(java.lang.Number value) { + setNumber(F026, value); + } + + /** + * Set the F026 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF026(org.jooq.Field field) { + setNumber(F026, field); + } + + /** + * Set the F027 parameter to the routine + */ + public void setF027(java.lang.Number value) { + setNumber(F027, value); + } + + /** + * Set the F027 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF027(org.jooq.Field field) { + setNumber(F027, field); + } + + /** + * Set the F028 parameter to the routine + */ + public void setF028(java.lang.Number value) { + setNumber(F028, value); + } + + /** + * Set the F028 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF028(org.jooq.Field field) { + setNumber(F028, field); + } + + /** + * Set the F029 parameter to the routine + */ + public void setF029(java.lang.Number value) { + setNumber(F029, value); + } + + /** + * Set the F029 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF029(org.jooq.Field field) { + setNumber(F029, field); + } + + /** + * Set the F030 parameter to the routine + */ + public void setF030(java.lang.Number value) { + setNumber(F030, value); + } + + /** + * Set the F030 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF030(org.jooq.Field field) { + setNumber(F030, field); + } + + /** + * Set the F031 parameter to the routine + */ + public void setF031(java.lang.Number value) { + setNumber(F031, value); + } + + /** + * Set the F031 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF031(org.jooq.Field field) { + setNumber(F031, field); + } + + /** + * Set the F032 parameter to the routine + */ + public void setF032(java.lang.Number value) { + setNumber(F032, value); + } + + /** + * Set the F032 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF032(org.jooq.Field field) { + setNumber(F032, field); + } + + /** + * Set the F033 parameter to the routine + */ + public void setF033(java.lang.Number value) { + setNumber(F033, value); + } + + /** + * Set the F033 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF033(org.jooq.Field field) { + setNumber(F033, field); + } + + /** + * Set the F034 parameter to the routine + */ + public void setF034(java.lang.Number value) { + setNumber(F034, value); + } + + /** + * Set the F034 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF034(org.jooq.Field field) { + setNumber(F034, field); + } + + /** + * Set the F035 parameter to the routine + */ + public void setF035(java.lang.Number value) { + setNumber(F035, value); + } + + /** + * Set the F035 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF035(org.jooq.Field field) { + setNumber(F035, field); + } + + /** + * Set the F036 parameter to the routine + */ + public void setF036(java.lang.Number value) { + setNumber(F036, value); + } + + /** + * Set the F036 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF036(org.jooq.Field field) { + setNumber(F036, field); + } + + /** + * Set the F037 parameter to the routine + */ + public void setF037(java.lang.Number value) { + setNumber(F037, value); + } + + /** + * Set the F037 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF037(org.jooq.Field field) { + setNumber(F037, field); + } + + /** + * Set the F038 parameter to the routine + */ + public void setF038(java.lang.Number value) { + setNumber(F038, value); + } + + /** + * Set the F038 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF038(org.jooq.Field field) { + setNumber(F038, field); + } + + /** + * Set the F039 parameter to the routine + */ + public void setF039(java.lang.Number value) { + setNumber(F039, value); + } + + /** + * Set the F039 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF039(org.jooq.Field field) { + setNumber(F039, field); + } + + /** + * Set the F040 parameter to the routine + */ + public void setF040(java.lang.Number value) { + setNumber(F040, value); + } + + /** + * Set the F040 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF040(org.jooq.Field field) { + setNumber(F040, field); + } + + /** + * Set the F041 parameter to the routine + */ + public void setF041(java.lang.Number value) { + setNumber(F041, value); + } + + /** + * Set the F041 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF041(org.jooq.Field field) { + setNumber(F041, field); + } + + /** + * Set the F042 parameter to the routine + */ + public void setF042(java.lang.Number value) { + setNumber(F042, value); + } + + /** + * Set the F042 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF042(org.jooq.Field field) { + setNumber(F042, field); + } + + /** + * Set the F043 parameter to the routine + */ + public void setF043(java.lang.Number value) { + setNumber(F043, value); + } + + /** + * Set the F043 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF043(org.jooq.Field field) { + setNumber(F043, field); + } + + /** + * Set the F044 parameter to the routine + */ + public void setF044(java.lang.Number value) { + setNumber(F044, value); + } + + /** + * Set the F044 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF044(org.jooq.Field field) { + setNumber(F044, field); + } + + /** + * Set the F045 parameter to the routine + */ + public void setF045(java.lang.Number value) { + setNumber(F045, value); + } + + /** + * Set the F045 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF045(org.jooq.Field field) { + setNumber(F045, field); + } + + /** + * Set the F046 parameter to the routine + */ + public void setF046(java.lang.Number value) { + setNumber(F046, value); + } + + /** + * Set the F046 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF046(org.jooq.Field field) { + setNumber(F046, field); + } + + /** + * Set the F047 parameter to the routine + */ + public void setF047(java.lang.Number value) { + setNumber(F047, value); + } + + /** + * Set the F047 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF047(org.jooq.Field field) { + setNumber(F047, field); + } + + /** + * Set the F048 parameter to the routine + */ + public void setF048(java.lang.Number value) { + setNumber(F048, value); + } + + /** + * Set the F048 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF048(org.jooq.Field field) { + setNumber(F048, field); + } + + /** + * Set the F049 parameter to the routine + */ + public void setF049(java.lang.Number value) { + setNumber(F049, value); + } + + /** + * Set the F049 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF049(org.jooq.Field field) { + setNumber(F049, field); + } + + /** + * Set the F050 parameter to the routine + */ + public void setF050(java.lang.Number value) { + setNumber(F050, value); + } + + /** + * Set the F050 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF050(org.jooq.Field field) { + setNumber(F050, field); + } + + /** + * Set the F051 parameter to the routine + */ + public void setF051(java.lang.Number value) { + setNumber(F051, value); + } + + /** + * Set the F051 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF051(org.jooq.Field field) { + setNumber(F051, field); + } + + /** + * Set the F052 parameter to the routine + */ + public void setF052(java.lang.Number value) { + setNumber(F052, value); + } + + /** + * Set the F052 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF052(org.jooq.Field field) { + setNumber(F052, field); + } + + /** + * Set the F053 parameter to the routine + */ + public void setF053(java.lang.Number value) { + setNumber(F053, value); + } + + /** + * Set the F053 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF053(org.jooq.Field field) { + setNumber(F053, field); + } + + /** + * Set the F054 parameter to the routine + */ + public void setF054(java.lang.Number value) { + setNumber(F054, value); + } + + /** + * Set the F054 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF054(org.jooq.Field field) { + setNumber(F054, field); + } + + /** + * Set the F055 parameter to the routine + */ + public void setF055(java.lang.Number value) { + setNumber(F055, value); + } + + /** + * Set the F055 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF055(org.jooq.Field field) { + setNumber(F055, field); + } + + /** + * Set the F056 parameter to the routine + */ + public void setF056(java.lang.Number value) { + setNumber(F056, value); + } + + /** + * Set the F056 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF056(org.jooq.Field field) { + setNumber(F056, field); + } + + /** + * Set the F057 parameter to the routine + */ + public void setF057(java.lang.Number value) { + setNumber(F057, value); + } + + /** + * Set the F057 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF057(org.jooq.Field field) { + setNumber(F057, field); + } + + /** + * Set the F058 parameter to the routine + */ + public void setF058(java.lang.Number value) { + setNumber(F058, value); + } + + /** + * Set the F058 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF058(org.jooq.Field field) { + setNumber(F058, field); + } + + /** + * Set the F059 parameter to the routine + */ + public void setF059(java.lang.Number value) { + setNumber(F059, value); + } + + /** + * Set the F059 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF059(org.jooq.Field field) { + setNumber(F059, field); + } + + /** + * Set the F060 parameter to the routine + */ + public void setF060(java.lang.Number value) { + setNumber(F060, value); + } + + /** + * Set the F060 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF060(org.jooq.Field field) { + setNumber(F060, field); + } + + /** + * Set the F061 parameter to the routine + */ + public void setF061(java.lang.Number value) { + setNumber(F061, value); + } + + /** + * Set the F061 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF061(org.jooq.Field field) { + setNumber(F061, field); + } + + /** + * Set the F062 parameter to the routine + */ + public void setF062(java.lang.Number value) { + setNumber(F062, value); + } + + /** + * Set the F062 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF062(org.jooq.Field field) { + setNumber(F062, field); + } + + /** + * Set the F063 parameter to the routine + */ + public void setF063(java.lang.Number value) { + setNumber(F063, value); + } + + /** + * Set the F063 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF063(org.jooq.Field field) { + setNumber(F063, field); + } + + /** + * Set the F064 parameter to the routine + */ + public void setF064(java.lang.Number value) { + setNumber(F064, value); + } + + /** + * Set the F064 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF064(org.jooq.Field field) { + setNumber(F064, field); + } + + /** + * Set the F065 parameter to the routine + */ + public void setF065(java.lang.Number value) { + setNumber(F065, value); + } + + /** + * Set the F065 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF065(org.jooq.Field field) { + setNumber(F065, field); + } + + /** + * Set the F066 parameter to the routine + */ + public void setF066(java.lang.Number value) { + setNumber(F066, value); + } + + /** + * Set the F066 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF066(org.jooq.Field field) { + setNumber(F066, field); + } + + /** + * Set the F067 parameter to the routine + */ + public void setF067(java.lang.Number value) { + setNumber(F067, value); + } + + /** + * Set the F067 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF067(org.jooq.Field field) { + setNumber(F067, field); + } + + /** + * Set the F068 parameter to the routine + */ + public void setF068(java.lang.Number value) { + setNumber(F068, value); + } + + /** + * Set the F068 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF068(org.jooq.Field field) { + setNumber(F068, field); + } + + /** + * Set the F069 parameter to the routine + */ + public void setF069(java.lang.Number value) { + setNumber(F069, value); + } + + /** + * Set the F069 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF069(org.jooq.Field field) { + setNumber(F069, field); + } + + /** + * Set the F070 parameter to the routine + */ + public void setF070(java.lang.Number value) { + setNumber(F070, value); + } + + /** + * Set the F070 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF070(org.jooq.Field field) { + setNumber(F070, field); + } + + /** + * Set the F071 parameter to the routine + */ + public void setF071(java.lang.Number value) { + setNumber(F071, value); + } + + /** + * Set the F071 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF071(org.jooq.Field field) { + setNumber(F071, field); + } + + /** + * Set the F072 parameter to the routine + */ + public void setF072(java.lang.Number value) { + setNumber(F072, value); + } + + /** + * Set the F072 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF072(org.jooq.Field field) { + setNumber(F072, field); + } + + /** + * Set the F073 parameter to the routine + */ + public void setF073(java.lang.Number value) { + setNumber(F073, value); + } + + /** + * Set the F073 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF073(org.jooq.Field field) { + setNumber(F073, field); + } + + /** + * Set the F074 parameter to the routine + */ + public void setF074(java.lang.Number value) { + setNumber(F074, value); + } + + /** + * Set the F074 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF074(org.jooq.Field field) { + setNumber(F074, field); + } + + /** + * Set the F075 parameter to the routine + */ + public void setF075(java.lang.Number value) { + setNumber(F075, value); + } + + /** + * Set the F075 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF075(org.jooq.Field field) { + setNumber(F075, field); + } + + /** + * Set the F076 parameter to the routine + */ + public void setF076(java.lang.Number value) { + setNumber(F076, value); + } + + /** + * Set the F076 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF076(org.jooq.Field field) { + setNumber(F076, field); + } + + /** + * Set the F077 parameter to the routine + */ + public void setF077(java.lang.Number value) { + setNumber(F077, value); + } + + /** + * Set the F077 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF077(org.jooq.Field field) { + setNumber(F077, field); + } + + /** + * Set the F078 parameter to the routine + */ + public void setF078(java.lang.Number value) { + setNumber(F078, value); + } + + /** + * Set the F078 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF078(org.jooq.Field field) { + setNumber(F078, field); + } + + /** + * Set the F079 parameter to the routine + */ + public void setF079(java.lang.Number value) { + setNumber(F079, value); + } + + /** + * Set the F079 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF079(org.jooq.Field field) { + setNumber(F079, field); + } + + /** + * Set the F080 parameter to the routine + */ + public void setF080(java.lang.Number value) { + setNumber(F080, value); + } + + /** + * Set the F080 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF080(org.jooq.Field field) { + setNumber(F080, field); + } + + /** + * Set the F081 parameter to the routine + */ + public void setF081(java.lang.Number value) { + setNumber(F081, value); + } + + /** + * Set the F081 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF081(org.jooq.Field field) { + setNumber(F081, field); + } + + /** + * Set the F082 parameter to the routine + */ + public void setF082(java.lang.Number value) { + setNumber(F082, value); + } + + /** + * Set the F082 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF082(org.jooq.Field field) { + setNumber(F082, field); + } + + /** + * Set the F083 parameter to the routine + */ + public void setF083(java.lang.Number value) { + setNumber(F083, value); + } + + /** + * Set the F083 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF083(org.jooq.Field field) { + setNumber(F083, field); + } + + /** + * Set the F084 parameter to the routine + */ + public void setF084(java.lang.Number value) { + setNumber(F084, value); + } + + /** + * Set the F084 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF084(org.jooq.Field field) { + setNumber(F084, field); + } + + /** + * Set the F085 parameter to the routine + */ + public void setF085(java.lang.Number value) { + setNumber(F085, value); + } + + /** + * Set the F085 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF085(org.jooq.Field field) { + setNumber(F085, field); + } + + /** + * Set the F086 parameter to the routine + */ + public void setF086(java.lang.Number value) { + setNumber(F086, value); + } + + /** + * Set the F086 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF086(org.jooq.Field field) { + setNumber(F086, field); + } + + /** + * Set the F087 parameter to the routine + */ + public void setF087(java.lang.Number value) { + setNumber(F087, value); + } + + /** + * Set the F087 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF087(org.jooq.Field field) { + setNumber(F087, field); + } + + /** + * Set the F088 parameter to the routine + */ + public void setF088(java.lang.Number value) { + setNumber(F088, value); + } + + /** + * Set the F088 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF088(org.jooq.Field field) { + setNumber(F088, field); + } + + /** + * Set the F089 parameter to the routine + */ + public void setF089(java.lang.Number value) { + setNumber(F089, value); + } + + /** + * Set the F089 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF089(org.jooq.Field field) { + setNumber(F089, field); + } + + /** + * Set the F090 parameter to the routine + */ + public void setF090(java.lang.Number value) { + setNumber(F090, value); + } + + /** + * Set the F090 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF090(org.jooq.Field field) { + setNumber(F090, field); + } + + /** + * Set the F091 parameter to the routine + */ + public void setF091(java.lang.Number value) { + setNumber(F091, value); + } + + /** + * Set the F091 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF091(org.jooq.Field field) { + setNumber(F091, field); + } + + /** + * Set the F092 parameter to the routine + */ + public void setF092(java.lang.Number value) { + setNumber(F092, value); + } + + /** + * Set the F092 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF092(org.jooq.Field field) { + setNumber(F092, field); + } + + /** + * Set the F093 parameter to the routine + */ + public void setF093(java.lang.Number value) { + setNumber(F093, value); + } + + /** + * Set the F093 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF093(org.jooq.Field field) { + setNumber(F093, field); + } + + /** + * Set the F094 parameter to the routine + */ + public void setF094(java.lang.Number value) { + setNumber(F094, value); + } + + /** + * Set the F094 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF094(org.jooq.Field field) { + setNumber(F094, field); + } + + /** + * Set the F095 parameter to the routine + */ + public void setF095(java.lang.Number value) { + setNumber(F095, value); + } + + /** + * Set the F095 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF095(org.jooq.Field field) { + setNumber(F095, field); + } + + /** + * Set the F096 parameter to the routine + */ + public void setF096(java.lang.Number value) { + setNumber(F096, value); + } + + /** + * Set the F096 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF096(org.jooq.Field field) { + setNumber(F096, field); + } + + /** + * Set the F097 parameter to the routine + */ + public void setF097(java.lang.Number value) { + setNumber(F097, value); + } + + /** + * Set the F097 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF097(org.jooq.Field field) { + setNumber(F097, field); + } + + /** + * Set the F098 parameter to the routine + */ + public void setF098(java.lang.Number value) { + setNumber(F098, value); + } + + /** + * Set the F098 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF098(org.jooq.Field field) { + setNumber(F098, field); + } + + /** + * Set the F099 parameter to the routine + */ + public void setF099(java.lang.Number value) { + setNumber(F099, value); + } + + /** + * Set the F099 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF099(org.jooq.Field field) { + setNumber(F099, field); + } + + /** + * Set the F100 parameter to the routine + */ + public void setF100(java.lang.Number value) { + setNumber(F100, value); + } + + /** + * Set the F100 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF100(org.jooq.Field field) { + setNumber(F100, field); + } + + /** + * Set the F101 parameter to the routine + */ + public void setF101(java.lang.Number value) { + setNumber(F101, value); + } + + /** + * Set the F101 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF101(org.jooq.Field field) { + setNumber(F101, field); + } + + /** + * Set the F102 parameter to the routine + */ + public void setF102(java.lang.Number value) { + setNumber(F102, value); + } + + /** + * Set the F102 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF102(org.jooq.Field field) { + setNumber(F102, field); + } + + /** + * Set the F103 parameter to the routine + */ + public void setF103(java.lang.Number value) { + setNumber(F103, value); + } + + /** + * Set the F103 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF103(org.jooq.Field field) { + setNumber(F103, field); + } + + /** + * Set the F104 parameter to the routine + */ + public void setF104(java.lang.Number value) { + setNumber(F104, value); + } + + /** + * Set the F104 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF104(org.jooq.Field field) { + setNumber(F104, field); + } + + /** + * Set the F105 parameter to the routine + */ + public void setF105(java.lang.Number value) { + setNumber(F105, value); + } + + /** + * Set the F105 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF105(org.jooq.Field field) { + setNumber(F105, field); + } + + /** + * Set the F106 parameter to the routine + */ + public void setF106(java.lang.Number value) { + setNumber(F106, value); + } + + /** + * Set the F106 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF106(org.jooq.Field field) { + setNumber(F106, field); + } + + /** + * Set the F107 parameter to the routine + */ + public void setF107(java.lang.Number value) { + setNumber(F107, value); + } + + /** + * Set the F107 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF107(org.jooq.Field field) { + setNumber(F107, field); + } + + /** + * Set the F108 parameter to the routine + */ + public void setF108(java.lang.Number value) { + setNumber(F108, value); + } + + /** + * Set the F108 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF108(org.jooq.Field field) { + setNumber(F108, field); + } + + /** + * Set the F109 parameter to the routine + */ + public void setF109(java.lang.Number value) { + setNumber(F109, value); + } + + /** + * Set the F109 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF109(org.jooq.Field field) { + setNumber(F109, field); + } + + /** + * Set the F110 parameter to the routine + */ + public void setF110(java.lang.Number value) { + setNumber(F110, value); + } + + /** + * Set the F110 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF110(org.jooq.Field field) { + setNumber(F110, field); + } + + /** + * Set the F111 parameter to the routine + */ + public void setF111(java.lang.Number value) { + setNumber(F111, value); + } + + /** + * Set the F111 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF111(org.jooq.Field field) { + setNumber(F111, field); + } + + /** + * Set the F112 parameter to the routine + */ + public void setF112(java.lang.Number value) { + setNumber(F112, value); + } + + /** + * Set the F112 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF112(org.jooq.Field field) { + setNumber(F112, field); + } + + /** + * Set the F113 parameter to the routine + */ + public void setF113(java.lang.Number value) { + setNumber(F113, value); + } + + /** + * Set the F113 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF113(org.jooq.Field field) { + setNumber(F113, field); + } + + /** + * Set the F114 parameter to the routine + */ + public void setF114(java.lang.Number value) { + setNumber(F114, value); + } + + /** + * Set the F114 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF114(org.jooq.Field field) { + setNumber(F114, field); + } + + /** + * Set the F115 parameter to the routine + */ + public void setF115(java.lang.Number value) { + setNumber(F115, value); + } + + /** + * Set the F115 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF115(org.jooq.Field field) { + setNumber(F115, field); + } + + /** + * Set the F116 parameter to the routine + */ + public void setF116(java.lang.Number value) { + setNumber(F116, value); + } + + /** + * Set the F116 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF116(org.jooq.Field field) { + setNumber(F116, field); + } + + /** + * Set the F117 parameter to the routine + */ + public void setF117(java.lang.Number value) { + setNumber(F117, value); + } + + /** + * Set the F117 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF117(org.jooq.Field field) { + setNumber(F117, field); + } + + /** + * Set the F118 parameter to the routine + */ + public void setF118(java.lang.Number value) { + setNumber(F118, value); + } + + /** + * Set the F118 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF118(org.jooq.Field field) { + setNumber(F118, field); + } + + /** + * Set the F119 parameter to the routine + */ + public void setF119(java.lang.Number value) { + setNumber(F119, value); + } + + /** + * Set the F119 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF119(org.jooq.Field field) { + setNumber(F119, field); + } + + /** + * Set the F120 parameter to the routine + */ + public void setF120(java.lang.Number value) { + setNumber(F120, value); + } + + /** + * Set the F120 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF120(org.jooq.Field field) { + setNumber(F120, field); + } + + /** + * Set the F121 parameter to the routine + */ + public void setF121(java.lang.Number value) { + setNumber(F121, value); + } + + /** + * Set the F121 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF121(org.jooq.Field field) { + setNumber(F121, field); + } + + /** + * Set the F122 parameter to the routine + */ + public void setF122(java.lang.Number value) { + setNumber(F122, value); + } + + /** + * Set the F122 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF122(org.jooq.Field field) { + setNumber(F122, field); + } + + /** + * Set the F123 parameter to the routine + */ + public void setF123(java.lang.Number value) { + setNumber(F123, value); + } + + /** + * Set the F123 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF123(org.jooq.Field field) { + setNumber(F123, field); + } + + /** + * Set the F124 parameter to the routine + */ + public void setF124(java.lang.Number value) { + setNumber(F124, value); + } + + /** + * Set the F124 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF124(org.jooq.Field field) { + setNumber(F124, field); + } + + /** + * Set the F125 parameter to the routine + */ + public void setF125(java.lang.Number value) { + setNumber(F125, value); + } + + /** + * Set the F125 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF125(org.jooq.Field field) { + setNumber(F125, field); + } + + /** + * Set the F126 parameter to the routine + */ + public void setF126(java.lang.Number value) { + setNumber(F126, value); + } + + /** + * Set the F126 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF126(org.jooq.Field field) { + setNumber(F126, field); + } + + /** + * Set the F127 parameter to the routine + */ + public void setF127(java.lang.Number value) { + setNumber(F127, value); + } + + /** + * Set the F127 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF127(org.jooq.Field field) { + setNumber(F127, field); + } + + /** + * Set the F128 parameter to the routine + */ + public void setF128(java.lang.Number value) { + setNumber(F128, value); + } + + /** + * Set the F128 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF128(org.jooq.Field field) { + setNumber(F128, field); + } + + /** + * Set the F129 parameter to the routine + */ + public void setF129(java.lang.Number value) { + setNumber(F129, value); + } + + /** + * Set the F129 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF129(org.jooq.Field field) { + setNumber(F129, field); + } + + /** + * Set the F130 parameter to the routine + */ + public void setF130(java.lang.Number value) { + setNumber(F130, value); + } + + /** + * Set the F130 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF130(org.jooq.Field field) { + setNumber(F130, field); + } + + /** + * Set the F131 parameter to the routine + */ + public void setF131(java.lang.Number value) { + setNumber(F131, value); + } + + /** + * Set the F131 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF131(org.jooq.Field field) { + setNumber(F131, field); + } + + /** + * Set the F132 parameter to the routine + */ + public void setF132(java.lang.Number value) { + setNumber(F132, value); + } + + /** + * Set the F132 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF132(org.jooq.Field field) { + setNumber(F132, field); + } + + /** + * Set the F133 parameter to the routine + */ + public void setF133(java.lang.Number value) { + setNumber(F133, value); + } + + /** + * Set the F133 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF133(org.jooq.Field field) { + setNumber(F133, field); + } + + /** + * Set the F134 parameter to the routine + */ + public void setF134(java.lang.Number value) { + setNumber(F134, value); + } + + /** + * Set the F134 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF134(org.jooq.Field field) { + setNumber(F134, field); + } + + /** + * Set the F135 parameter to the routine + */ + public void setF135(java.lang.Number value) { + setNumber(F135, value); + } + + /** + * Set the F135 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF135(org.jooq.Field field) { + setNumber(F135, field); + } + + /** + * Set the F136 parameter to the routine + */ + public void setF136(java.lang.Number value) { + setNumber(F136, value); + } + + /** + * Set the F136 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF136(org.jooq.Field field) { + setNumber(F136, field); + } + + /** + * Set the F137 parameter to the routine + */ + public void setF137(java.lang.Number value) { + setNumber(F137, value); + } + + /** + * Set the F137 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF137(org.jooq.Field field) { + setNumber(F137, field); + } + + /** + * Set the F138 parameter to the routine + */ + public void setF138(java.lang.Number value) { + setNumber(F138, value); + } + + /** + * Set the F138 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF138(org.jooq.Field field) { + setNumber(F138, field); + } + + /** + * Set the F139 parameter to the routine + */ + public void setF139(java.lang.Number value) { + setNumber(F139, value); + } + + /** + * Set the F139 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF139(org.jooq.Field field) { + setNumber(F139, field); + } + + /** + * Set the F140 parameter to the routine + */ + public void setF140(java.lang.Number value) { + setNumber(F140, value); + } + + /** + * Set the F140 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF140(org.jooq.Field field) { + setNumber(F140, field); + } + + /** + * Set the F141 parameter to the routine + */ + public void setF141(java.lang.Number value) { + setNumber(F141, value); + } + + /** + * Set the F141 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF141(org.jooq.Field field) { + setNumber(F141, field); + } + + /** + * Set the F142 parameter to the routine + */ + public void setF142(java.lang.Number value) { + setNumber(F142, value); + } + + /** + * Set the F142 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF142(org.jooq.Field field) { + setNumber(F142, field); + } + + /** + * Set the F143 parameter to the routine + */ + public void setF143(java.lang.Number value) { + setNumber(F143, value); + } + + /** + * Set the F143 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF143(org.jooq.Field field) { + setNumber(F143, field); + } + + /** + * Set the F144 parameter to the routine + */ + public void setF144(java.lang.Number value) { + setNumber(F144, value); + } + + /** + * Set the F144 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF144(org.jooq.Field field) { + setNumber(F144, field); + } + + /** + * Set the F145 parameter to the routine + */ + public void setF145(java.lang.Number value) { + setNumber(F145, value); + } + + /** + * Set the F145 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF145(org.jooq.Field field) { + setNumber(F145, field); + } + + /** + * Set the F146 parameter to the routine + */ + public void setF146(java.lang.Number value) { + setNumber(F146, value); + } + + /** + * Set the F146 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF146(org.jooq.Field field) { + setNumber(F146, field); + } + + /** + * Set the F147 parameter to the routine + */ + public void setF147(java.lang.Number value) { + setNumber(F147, value); + } + + /** + * Set the F147 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF147(org.jooq.Field field) { + setNumber(F147, field); + } + + /** + * Set the F148 parameter to the routine + */ + public void setF148(java.lang.Number value) { + setNumber(F148, value); + } + + /** + * Set the F148 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF148(org.jooq.Field field) { + setNumber(F148, field); + } + + /** + * Set the F149 parameter to the routine + */ + public void setF149(java.lang.Number value) { + setNumber(F149, value); + } + + /** + * Set the F149 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF149(org.jooq.Field field) { + setNumber(F149, field); + } + + /** + * Set the F150 parameter to the routine + */ + public void setF150(java.lang.Number value) { + setNumber(F150, value); + } + + /** + * Set the F150 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF150(org.jooq.Field field) { + setNumber(F150, field); + } + + /** + * Set the F151 parameter to the routine + */ + public void setF151(java.lang.Number value) { + setNumber(F151, value); + } + + /** + * Set the F151 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF151(org.jooq.Field field) { + setNumber(F151, field); + } + + /** + * Set the F152 parameter to the routine + */ + public void setF152(java.lang.Number value) { + setNumber(F152, value); + } + + /** + * Set the F152 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF152(org.jooq.Field field) { + setNumber(F152, field); + } + + /** + * Set the F153 parameter to the routine + */ + public void setF153(java.lang.Number value) { + setNumber(F153, value); + } + + /** + * Set the F153 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF153(org.jooq.Field field) { + setNumber(F153, field); + } + + /** + * Set the F154 parameter to the routine + */ + public void setF154(java.lang.Number value) { + setNumber(F154, value); + } + + /** + * Set the F154 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF154(org.jooq.Field field) { + setNumber(F154, field); + } + + /** + * Set the F155 parameter to the routine + */ + public void setF155(java.lang.Number value) { + setNumber(F155, value); + } + + /** + * Set the F155 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF155(org.jooq.Field field) { + setNumber(F155, field); + } + + /** + * Set the F156 parameter to the routine + */ + public void setF156(java.lang.Number value) { + setNumber(F156, value); + } + + /** + * Set the F156 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF156(org.jooq.Field field) { + setNumber(F156, field); + } + + /** + * Set the F157 parameter to the routine + */ + public void setF157(java.lang.Number value) { + setNumber(F157, value); + } + + /** + * Set the F157 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF157(org.jooq.Field field) { + setNumber(F157, field); + } + + /** + * Set the F158 parameter to the routine + */ + public void setF158(java.lang.Number value) { + setNumber(F158, value); + } + + /** + * Set the F158 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF158(org.jooq.Field field) { + setNumber(F158, field); + } + + /** + * Set the F159 parameter to the routine + */ + public void setF159(java.lang.Number value) { + setNumber(F159, value); + } + + /** + * Set the F159 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF159(org.jooq.Field field) { + setNumber(F159, field); + } + + /** + * Set the F160 parameter to the routine + */ + public void setF160(java.lang.Number value) { + setNumber(F160, value); + } + + /** + * Set the F160 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF160(org.jooq.Field field) { + setNumber(F160, field); + } + + /** + * Set the F161 parameter to the routine + */ + public void setF161(java.lang.Number value) { + setNumber(F161, value); + } + + /** + * Set the F161 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF161(org.jooq.Field field) { + setNumber(F161, field); + } + + /** + * Set the F162 parameter to the routine + */ + public void setF162(java.lang.Number value) { + setNumber(F162, value); + } + + /** + * Set the F162 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF162(org.jooq.Field field) { + setNumber(F162, field); + } + + /** + * Set the F163 parameter to the routine + */ + public void setF163(java.lang.Number value) { + setNumber(F163, value); + } + + /** + * Set the F163 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF163(org.jooq.Field field) { + setNumber(F163, field); + } + + /** + * Set the F164 parameter to the routine + */ + public void setF164(java.lang.Number value) { + setNumber(F164, value); + } + + /** + * Set the F164 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF164(org.jooq.Field field) { + setNumber(F164, field); + } + + /** + * Set the F165 parameter to the routine + */ + public void setF165(java.lang.Number value) { + setNumber(F165, value); + } + + /** + * Set the F165 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF165(org.jooq.Field field) { + setNumber(F165, field); + } + + /** + * Set the F166 parameter to the routine + */ + public void setF166(java.lang.Number value) { + setNumber(F166, value); + } + + /** + * Set the F166 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF166(org.jooq.Field field) { + setNumber(F166, field); + } + + /** + * Set the F167 parameter to the routine + */ + public void setF167(java.lang.Number value) { + setNumber(F167, value); + } + + /** + * Set the F167 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF167(org.jooq.Field field) { + setNumber(F167, field); + } + + /** + * Set the F168 parameter to the routine + */ + public void setF168(java.lang.Number value) { + setNumber(F168, value); + } + + /** + * Set the F168 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF168(org.jooq.Field field) { + setNumber(F168, field); + } + + /** + * Set the F169 parameter to the routine + */ + public void setF169(java.lang.Number value) { + setNumber(F169, value); + } + + /** + * Set the F169 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF169(org.jooq.Field field) { + setNumber(F169, field); + } + + /** + * Set the F170 parameter to the routine + */ + public void setF170(java.lang.Number value) { + setNumber(F170, value); + } + + /** + * Set the F170 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF170(org.jooq.Field field) { + setNumber(F170, field); + } + + /** + * Set the F171 parameter to the routine + */ + public void setF171(java.lang.Number value) { + setNumber(F171, value); + } + + /** + * Set the F171 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF171(org.jooq.Field field) { + setNumber(F171, field); + } + + /** + * Set the F172 parameter to the routine + */ + public void setF172(java.lang.Number value) { + setNumber(F172, value); + } + + /** + * Set the F172 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF172(org.jooq.Field field) { + setNumber(F172, field); + } + + /** + * Set the F173 parameter to the routine + */ + public void setF173(java.lang.Number value) { + setNumber(F173, value); + } + + /** + * Set the F173 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF173(org.jooq.Field field) { + setNumber(F173, field); + } + + /** + * Set the F174 parameter to the routine + */ + public void setF174(java.lang.Number value) { + setNumber(F174, value); + } + + /** + * Set the F174 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF174(org.jooq.Field field) { + setNumber(F174, field); + } + + /** + * Set the F175 parameter to the routine + */ + public void setF175(java.lang.Number value) { + setNumber(F175, value); + } + + /** + * Set the F175 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF175(org.jooq.Field field) { + setNumber(F175, field); + } + + /** + * Set the F176 parameter to the routine + */ + public void setF176(java.lang.Number value) { + setNumber(F176, value); + } + + /** + * Set the F176 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF176(org.jooq.Field field) { + setNumber(F176, field); + } + + /** + * Set the F177 parameter to the routine + */ + public void setF177(java.lang.Number value) { + setNumber(F177, value); + } + + /** + * Set the F177 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF177(org.jooq.Field field) { + setNumber(F177, field); + } + + /** + * Set the F178 parameter to the routine + */ + public void setF178(java.lang.Number value) { + setNumber(F178, value); + } + + /** + * Set the F178 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF178(org.jooq.Field field) { + setNumber(F178, field); + } + + /** + * Set the F179 parameter to the routine + */ + public void setF179(java.lang.Number value) { + setNumber(F179, value); + } + + /** + * Set the F179 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF179(org.jooq.Field field) { + setNumber(F179, field); + } + + /** + * Set the F180 parameter to the routine + */ + public void setF180(java.lang.Number value) { + setNumber(F180, value); + } + + /** + * Set the F180 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF180(org.jooq.Field field) { + setNumber(F180, field); + } + + /** + * Set the F181 parameter to the routine + */ + public void setF181(java.lang.Number value) { + setNumber(F181, value); + } + + /** + * Set the F181 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF181(org.jooq.Field field) { + setNumber(F181, field); + } + + /** + * Set the F182 parameter to the routine + */ + public void setF182(java.lang.Number value) { + setNumber(F182, value); + } + + /** + * Set the F182 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF182(org.jooq.Field field) { + setNumber(F182, field); + } + + /** + * Set the F183 parameter to the routine + */ + public void setF183(java.lang.Number value) { + setNumber(F183, value); + } + + /** + * Set the F183 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF183(org.jooq.Field field) { + setNumber(F183, field); + } + + /** + * Set the F184 parameter to the routine + */ + public void setF184(java.lang.Number value) { + setNumber(F184, value); + } + + /** + * Set the F184 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF184(org.jooq.Field field) { + setNumber(F184, field); + } + + /** + * Set the F185 parameter to the routine + */ + public void setF185(java.lang.Number value) { + setNumber(F185, value); + } + + /** + * Set the F185 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF185(org.jooq.Field field) { + setNumber(F185, field); + } + + /** + * Set the F186 parameter to the routine + */ + public void setF186(java.lang.Number value) { + setNumber(F186, value); + } + + /** + * Set the F186 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF186(org.jooq.Field field) { + setNumber(F186, field); + } + + /** + * Set the F187 parameter to the routine + */ + public void setF187(java.lang.Number value) { + setNumber(F187, value); + } + + /** + * Set the F187 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF187(org.jooq.Field field) { + setNumber(F187, field); + } + + /** + * Set the F188 parameter to the routine + */ + public void setF188(java.lang.Number value) { + setNumber(F188, value); + } + + /** + * Set the F188 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF188(org.jooq.Field field) { + setNumber(F188, field); + } + + /** + * Set the F189 parameter to the routine + */ + public void setF189(java.lang.Number value) { + setNumber(F189, value); + } + + /** + * Set the F189 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF189(org.jooq.Field field) { + setNumber(F189, field); + } + + /** + * Set the F190 parameter to the routine + */ + public void setF190(java.lang.Number value) { + setNumber(F190, value); + } + + /** + * Set the F190 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF190(org.jooq.Field field) { + setNumber(F190, field); + } + + /** + * Set the F191 parameter to the routine + */ + public void setF191(java.lang.Number value) { + setNumber(F191, value); + } + + /** + * Set the F191 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF191(org.jooq.Field field) { + setNumber(F191, field); + } + + /** + * Set the F192 parameter to the routine + */ + public void setF192(java.lang.Number value) { + setNumber(F192, value); + } + + /** + * Set the F192 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF192(org.jooq.Field field) { + setNumber(F192, field); + } + + /** + * Set the F193 parameter to the routine + */ + public void setF193(java.lang.Number value) { + setNumber(F193, value); + } + + /** + * Set the F193 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF193(org.jooq.Field field) { + setNumber(F193, field); + } + + /** + * Set the F194 parameter to the routine + */ + public void setF194(java.lang.Number value) { + setNumber(F194, value); + } + + /** + * Set the F194 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF194(org.jooq.Field field) { + setNumber(F194, field); + } + + /** + * Set the F195 parameter to the routine + */ + public void setF195(java.lang.Number value) { + setNumber(F195, value); + } + + /** + * Set the F195 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF195(org.jooq.Field field) { + setNumber(F195, field); + } + + /** + * Set the F196 parameter to the routine + */ + public void setF196(java.lang.Number value) { + setNumber(F196, value); + } + + /** + * Set the F196 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF196(org.jooq.Field field) { + setNumber(F196, field); + } + + /** + * Set the F197 parameter to the routine + */ + public void setF197(java.lang.Number value) { + setNumber(F197, value); + } + + /** + * Set the F197 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF197(org.jooq.Field field) { + setNumber(F197, field); + } + + /** + * Set the F198 parameter to the routine + */ + public void setF198(java.lang.Number value) { + setNumber(F198, value); + } + + /** + * Set the F198 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF198(org.jooq.Field field) { + setNumber(F198, field); + } + + /** + * Set the F199 parameter to the routine + */ + public void setF199(java.lang.Number value) { + setNumber(F199, value); + } + + /** + * Set the F199 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF199(org.jooq.Field field) { + setNumber(F199, field); + } + + /** + * Set the F200 parameter to the routine + */ + public void setF200(java.lang.Number value) { + setNumber(F200, value); + } + + /** + * Set the F200 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF200(org.jooq.Field field) { + setNumber(F200, field); + } + + /** + * Set the F201 parameter to the routine + */ + public void setF201(java.lang.Number value) { + setNumber(F201, value); + } + + /** + * Set the F201 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF201(org.jooq.Field field) { + setNumber(F201, field); + } + + /** + * Set the F202 parameter to the routine + */ + public void setF202(java.lang.Number value) { + setNumber(F202, value); + } + + /** + * Set the F202 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF202(org.jooq.Field field) { + setNumber(F202, field); + } + + /** + * Set the F203 parameter to the routine + */ + public void setF203(java.lang.Number value) { + setNumber(F203, value); + } + + /** + * Set the F203 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF203(org.jooq.Field field) { + setNumber(F203, field); + } + + /** + * Set the F204 parameter to the routine + */ + public void setF204(java.lang.Number value) { + setNumber(F204, value); + } + + /** + * Set the F204 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF204(org.jooq.Field field) { + setNumber(F204, field); + } + + /** + * Set the F205 parameter to the routine + */ + public void setF205(java.lang.Number value) { + setNumber(F205, value); + } + + /** + * Set the F205 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF205(org.jooq.Field field) { + setNumber(F205, field); + } + + /** + * Set the F206 parameter to the routine + */ + public void setF206(java.lang.Number value) { + setNumber(F206, value); + } + + /** + * Set the F206 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF206(org.jooq.Field field) { + setNumber(F206, field); + } + + /** + * Set the F207 parameter to the routine + */ + public void setF207(java.lang.Number value) { + setNumber(F207, value); + } + + /** + * Set the F207 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF207(org.jooq.Field field) { + setNumber(F207, field); + } + + /** + * Set the F208 parameter to the routine + */ + public void setF208(java.lang.Number value) { + setNumber(F208, value); + } + + /** + * Set the F208 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF208(org.jooq.Field field) { + setNumber(F208, field); + } + + /** + * Set the F209 parameter to the routine + */ + public void setF209(java.lang.Number value) { + setNumber(F209, value); + } + + /** + * Set the F209 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF209(org.jooq.Field field) { + setNumber(F209, field); + } + + /** + * Set the F210 parameter to the routine + */ + public void setF210(java.lang.Number value) { + setNumber(F210, value); + } + + /** + * Set the F210 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF210(org.jooq.Field field) { + setNumber(F210, field); + } + + /** + * Set the F211 parameter to the routine + */ + public void setF211(java.lang.Number value) { + setNumber(F211, value); + } + + /** + * Set the F211 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF211(org.jooq.Field field) { + setNumber(F211, field); + } + + /** + * Set the F212 parameter to the routine + */ + public void setF212(java.lang.Number value) { + setNumber(F212, value); + } + + /** + * Set the F212 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF212(org.jooq.Field field) { + setNumber(F212, field); + } + + /** + * Set the F213 parameter to the routine + */ + public void setF213(java.lang.Number value) { + setNumber(F213, value); + } + + /** + * Set the F213 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF213(org.jooq.Field field) { + setNumber(F213, field); + } + + /** + * Set the F214 parameter to the routine + */ + public void setF214(java.lang.Number value) { + setNumber(F214, value); + } + + /** + * Set the F214 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF214(org.jooq.Field field) { + setNumber(F214, field); + } + + /** + * Set the F215 parameter to the routine + */ + public void setF215(java.lang.Number value) { + setNumber(F215, value); + } + + /** + * Set the F215 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF215(org.jooq.Field field) { + setNumber(F215, field); + } + + /** + * Set the F216 parameter to the routine + */ + public void setF216(java.lang.Number value) { + setNumber(F216, value); + } + + /** + * Set the F216 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF216(org.jooq.Field field) { + setNumber(F216, field); + } + + /** + * Set the F217 parameter to the routine + */ + public void setF217(java.lang.Number value) { + setNumber(F217, value); + } + + /** + * Set the F217 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF217(org.jooq.Field field) { + setNumber(F217, field); + } + + /** + * Set the F218 parameter to the routine + */ + public void setF218(java.lang.Number value) { + setNumber(F218, value); + } + + /** + * Set the F218 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF218(org.jooq.Field field) { + setNumber(F218, field); + } + + /** + * Set the F219 parameter to the routine + */ + public void setF219(java.lang.Number value) { + setNumber(F219, value); + } + + /** + * Set the F219 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF219(org.jooq.Field field) { + setNumber(F219, field); + } + + /** + * Set the F220 parameter to the routine + */ + public void setF220(java.lang.Number value) { + setNumber(F220, value); + } + + /** + * Set the F220 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF220(org.jooq.Field field) { + setNumber(F220, field); + } + + /** + * Set the F221 parameter to the routine + */ + public void setF221(java.lang.Number value) { + setNumber(F221, value); + } + + /** + * Set the F221 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF221(org.jooq.Field field) { + setNumber(F221, field); + } + + /** + * Set the F222 parameter to the routine + */ + public void setF222(java.lang.Number value) { + setNumber(F222, value); + } + + /** + * Set the F222 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF222(org.jooq.Field field) { + setNumber(F222, field); + } + + /** + * Set the F223 parameter to the routine + */ + public void setF223(java.lang.Number value) { + setNumber(F223, value); + } + + /** + * Set the F223 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF223(org.jooq.Field field) { + setNumber(F223, field); + } + + /** + * Set the F224 parameter to the routine + */ + public void setF224(java.lang.Number value) { + setNumber(F224, value); + } + + /** + * Set the F224 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF224(org.jooq.Field field) { + setNumber(F224, field); + } + + /** + * Set the F225 parameter to the routine + */ + public void setF225(java.lang.Number value) { + setNumber(F225, value); + } + + /** + * Set the F225 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF225(org.jooq.Field field) { + setNumber(F225, field); + } + + /** + * Set the F226 parameter to the routine + */ + public void setF226(java.lang.Number value) { + setNumber(F226, value); + } + + /** + * Set the F226 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF226(org.jooq.Field field) { + setNumber(F226, field); + } + + /** + * Set the F227 parameter to the routine + */ + public void setF227(java.lang.Number value) { + setNumber(F227, value); + } + + /** + * Set the F227 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF227(org.jooq.Field field) { + setNumber(F227, field); + } + + /** + * Set the F228 parameter to the routine + */ + public void setF228(java.lang.Number value) { + setNumber(F228, value); + } + + /** + * Set the F228 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF228(org.jooq.Field field) { + setNumber(F228, field); + } + + /** + * Set the F229 parameter to the routine + */ + public void setF229(java.lang.Number value) { + setNumber(F229, value); + } + + /** + * Set the F229 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF229(org.jooq.Field field) { + setNumber(F229, field); + } + + /** + * Set the F230 parameter to the routine + */ + public void setF230(java.lang.Number value) { + setNumber(F230, value); + } + + /** + * Set the F230 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF230(org.jooq.Field field) { + setNumber(F230, field); + } + + /** + * Set the F231 parameter to the routine + */ + public void setF231(java.lang.Number value) { + setNumber(F231, value); + } + + /** + * Set the F231 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF231(org.jooq.Field field) { + setNumber(F231, field); + } + + /** + * Set the F232 parameter to the routine + */ + public void setF232(java.lang.Number value) { + setNumber(F232, value); + } + + /** + * Set the F232 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF232(org.jooq.Field field) { + setNumber(F232, field); + } + + /** + * Set the F233 parameter to the routine + */ + public void setF233(java.lang.Number value) { + setNumber(F233, value); + } + + /** + * Set the F233 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF233(org.jooq.Field field) { + setNumber(F233, field); + } + + /** + * Set the F234 parameter to the routine + */ + public void setF234(java.lang.Number value) { + setNumber(F234, value); + } + + /** + * Set the F234 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF234(org.jooq.Field field) { + setNumber(F234, field); + } + + /** + * Set the F235 parameter to the routine + */ + public void setF235(java.lang.Number value) { + setNumber(F235, value); + } + + /** + * Set the F235 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF235(org.jooq.Field field) { + setNumber(F235, field); + } + + /** + * Set the F236 parameter to the routine + */ + public void setF236(java.lang.Number value) { + setNumber(F236, value); + } + + /** + * Set the F236 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF236(org.jooq.Field field) { + setNumber(F236, field); + } + + /** + * Set the F237 parameter to the routine + */ + public void setF237(java.lang.Number value) { + setNumber(F237, value); + } + + /** + * Set the F237 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF237(org.jooq.Field field) { + setNumber(F237, field); + } + + /** + * Set the F238 parameter to the routine + */ + public void setF238(java.lang.Number value) { + setNumber(F238, value); + } + + /** + * Set the F238 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF238(org.jooq.Field field) { + setNumber(F238, field); + } + + /** + * Set the F239 parameter to the routine + */ + public void setF239(java.lang.Number value) { + setNumber(F239, value); + } + + /** + * Set the F239 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF239(org.jooq.Field field) { + setNumber(F239, field); + } + + /** + * Set the F240 parameter to the routine + */ + public void setF240(java.lang.Number value) { + setNumber(F240, value); + } + + /** + * Set the F240 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF240(org.jooq.Field field) { + setNumber(F240, field); + } + + /** + * Set the F241 parameter to the routine + */ + public void setF241(java.lang.Number value) { + setNumber(F241, value); + } + + /** + * Set the F241 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF241(org.jooq.Field field) { + setNumber(F241, field); + } + + /** + * Set the F242 parameter to the routine + */ + public void setF242(java.lang.Number value) { + setNumber(F242, value); + } + + /** + * Set the F242 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF242(org.jooq.Field field) { + setNumber(F242, field); + } + + /** + * Set the F243 parameter to the routine + */ + public void setF243(java.lang.Number value) { + setNumber(F243, value); + } + + /** + * Set the F243 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF243(org.jooq.Field field) { + setNumber(F243, field); + } + + /** + * Set the F244 parameter to the routine + */ + public void setF244(java.lang.Number value) { + setNumber(F244, value); + } + + /** + * Set the F244 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF244(org.jooq.Field field) { + setNumber(F244, field); + } + + /** + * Set the F245 parameter to the routine + */ + public void setF245(java.lang.Number value) { + setNumber(F245, value); + } + + /** + * Set the F245 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF245(org.jooq.Field field) { + setNumber(F245, field); + } + + /** + * Set the F246 parameter to the routine + */ + public void setF246(java.lang.Number value) { + setNumber(F246, value); + } + + /** + * Set the F246 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF246(org.jooq.Field field) { + setNumber(F246, field); + } + + /** + * Set the F247 parameter to the routine + */ + public void setF247(java.lang.Number value) { + setNumber(F247, value); + } + + /** + * Set the F247 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF247(org.jooq.Field field) { + setNumber(F247, field); + } + + /** + * Set the F248 parameter to the routine + */ + public void setF248(java.lang.Number value) { + setNumber(F248, value); + } + + /** + * Set the F248 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF248(org.jooq.Field field) { + setNumber(F248, field); + } + + /** + * Set the F249 parameter to the routine + */ + public void setF249(java.lang.Number value) { + setNumber(F249, value); + } + + /** + * Set the F249 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF249(org.jooq.Field field) { + setNumber(F249, field); + } + + /** + * Set the F250 parameter to the routine + */ + public void setF250(java.lang.Number value) { + setNumber(F250, value); + } + + /** + * Set the F250 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF250(org.jooq.Field field) { + setNumber(F250, field); + } + + /** + * Set the F251 parameter to the routine + */ + public void setF251(java.lang.Number value) { + setNumber(F251, value); + } + + /** + * Set the F251 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF251(org.jooq.Field field) { + setNumber(F251, field); + } + + /** + * Set the F252 parameter to the routine + */ + public void setF252(java.lang.Number value) { + setNumber(F252, value); + } + + /** + * Set the F252 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF252(org.jooq.Field field) { + setNumber(F252, field); + } + + /** + * Set the F253 parameter to the routine + */ + public void setF253(java.lang.Number value) { + setNumber(F253, value); + } + + /** + * Set the F253 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF253(org.jooq.Field field) { + setNumber(F253, field); + } + + /** + * Set the F254 parameter to the routine + */ + public void setF254(java.lang.Number value) { + setNumber(F254, value); + } + + /** + * Set the F254 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF254(org.jooq.Field field) { + setNumber(F254, field); + } + + /** + * Set the F255 parameter to the routine + */ + public void setF255(java.lang.Number value) { + setNumber(F255, value); + } + + /** + * Set the F255 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF255(org.jooq.Field field) { + setNumber(F255, field); + } + + /** + * Set the F256 parameter to the routine + */ + public void setF256(java.lang.Number value) { + setNumber(F256, value); + } + + /** + * Set the F256 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF256(org.jooq.Field field) { + setNumber(F256, field); + } + + /** + * Set the F257 parameter to the routine + */ + public void setF257(java.lang.Number value) { + setNumber(F257, value); + } + + /** + * Set the F257 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF257(org.jooq.Field field) { + setNumber(F257, field); + } + + /** + * Set the F258 parameter to the routine + */ + public void setF258(java.lang.Number value) { + setNumber(F258, value); + } + + /** + * Set the F258 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF258(org.jooq.Field field) { + setNumber(F258, field); + } + + /** + * Set the F259 parameter to the routine + */ + public void setF259(java.lang.Number value) { + setNumber(F259, value); + } + + /** + * Set the F259 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF259(org.jooq.Field field) { + setNumber(F259, field); + } + + /** + * Set the F260 parameter to the routine + */ + public void setF260(java.lang.Number value) { + setNumber(F260, value); + } + + /** + * Set the F260 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF260(org.jooq.Field field) { + setNumber(F260, field); + } + + /** + * Set the F261 parameter to the routine + */ + public void setF261(java.lang.Number value) { + setNumber(F261, value); + } + + /** + * Set the F261 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF261(org.jooq.Field field) { + setNumber(F261, field); + } + + /** + * Set the F262 parameter to the routine + */ + public void setF262(java.lang.Number value) { + setNumber(F262, value); + } + + /** + * Set the F262 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF262(org.jooq.Field field) { + setNumber(F262, field); + } + + /** + * Set the F263 parameter to the routine + */ + public void setF263(java.lang.Number value) { + setNumber(F263, value); + } + + /** + * Set the F263 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF263(org.jooq.Field field) { + setNumber(F263, field); + } + + /** + * Set the F264 parameter to the routine + */ + public void setF264(java.lang.Number value) { + setNumber(F264, value); + } + + /** + * Set the F264 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF264(org.jooq.Field field) { + setNumber(F264, field); + } + + /** + * Set the F265 parameter to the routine + */ + public void setF265(java.lang.Number value) { + setNumber(F265, value); + } + + /** + * Set the F265 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF265(org.jooq.Field field) { + setNumber(F265, field); + } + + /** + * Set the F266 parameter to the routine + */ + public void setF266(java.lang.Number value) { + setNumber(F266, value); + } + + /** + * Set the F266 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF266(org.jooq.Field field) { + setNumber(F266, field); + } + + /** + * Set the F267 parameter to the routine + */ + public void setF267(java.lang.Number value) { + setNumber(F267, value); + } + + /** + * Set the F267 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF267(org.jooq.Field field) { + setNumber(F267, field); + } + + /** + * Set the F268 parameter to the routine + */ + public void setF268(java.lang.Number value) { + setNumber(F268, value); + } + + /** + * Set the F268 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF268(org.jooq.Field field) { + setNumber(F268, field); + } + + /** + * Set the F269 parameter to the routine + */ + public void setF269(java.lang.Number value) { + setNumber(F269, value); + } + + /** + * Set the F269 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF269(org.jooq.Field field) { + setNumber(F269, field); + } + + /** + * Set the F270 parameter to the routine + */ + public void setF270(java.lang.Number value) { + setNumber(F270, value); + } + + /** + * Set the F270 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF270(org.jooq.Field field) { + setNumber(F270, field); + } + + /** + * Set the F271 parameter to the routine + */ + public void setF271(java.lang.Number value) { + setNumber(F271, value); + } + + /** + * Set the F271 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF271(org.jooq.Field field) { + setNumber(F271, field); + } + + /** + * Set the F272 parameter to the routine + */ + public void setF272(java.lang.Number value) { + setNumber(F272, value); + } + + /** + * Set the F272 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF272(org.jooq.Field field) { + setNumber(F272, field); + } + + /** + * Set the F273 parameter to the routine + */ + public void setF273(java.lang.Number value) { + setNumber(F273, value); + } + + /** + * Set the F273 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF273(org.jooq.Field field) { + setNumber(F273, field); + } + + /** + * Set the F274 parameter to the routine + */ + public void setF274(java.lang.Number value) { + setNumber(F274, value); + } + + /** + * Set the F274 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF274(org.jooq.Field field) { + setNumber(F274, field); + } + + /** + * Set the F275 parameter to the routine + */ + public void setF275(java.lang.Number value) { + setNumber(F275, value); + } + + /** + * Set the F275 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF275(org.jooq.Field field) { + setNumber(F275, field); + } + + /** + * Set the F276 parameter to the routine + */ + public void setF276(java.lang.Number value) { + setNumber(F276, value); + } + + /** + * Set the F276 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF276(org.jooq.Field field) { + setNumber(F276, field); + } + + /** + * Set the F277 parameter to the routine + */ + public void setF277(java.lang.Number value) { + setNumber(F277, value); + } + + /** + * Set the F277 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF277(org.jooq.Field field) { + setNumber(F277, field); + } + + /** + * Set the F278 parameter to the routine + */ + public void setF278(java.lang.Number value) { + setNumber(F278, value); + } + + /** + * Set the F278 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF278(org.jooq.Field field) { + setNumber(F278, field); + } + + /** + * Set the F279 parameter to the routine + */ + public void setF279(java.lang.Number value) { + setNumber(F279, value); + } + + /** + * Set the F279 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF279(org.jooq.Field field) { + setNumber(F279, field); + } + + /** + * Set the F280 parameter to the routine + */ + public void setF280(java.lang.Number value) { + setNumber(F280, value); + } + + /** + * Set the F280 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF280(org.jooq.Field field) { + setNumber(F280, field); + } + + /** + * Set the F281 parameter to the routine + */ + public void setF281(java.lang.Number value) { + setNumber(F281, value); + } + + /** + * Set the F281 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF281(org.jooq.Field field) { + setNumber(F281, field); + } + + /** + * Set the F282 parameter to the routine + */ + public void setF282(java.lang.Number value) { + setNumber(F282, value); + } + + /** + * Set the F282 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF282(org.jooq.Field field) { + setNumber(F282, field); + } + + /** + * Set the F283 parameter to the routine + */ + public void setF283(java.lang.Number value) { + setNumber(F283, value); + } + + /** + * Set the F283 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF283(org.jooq.Field field) { + setNumber(F283, field); + } + + /** + * Set the F284 parameter to the routine + */ + public void setF284(java.lang.Number value) { + setNumber(F284, value); + } + + /** + * Set the F284 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF284(org.jooq.Field field) { + setNumber(F284, field); + } + + /** + * Set the F285 parameter to the routine + */ + public void setF285(java.lang.Number value) { + setNumber(F285, value); + } + + /** + * Set the F285 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF285(org.jooq.Field field) { + setNumber(F285, field); + } + + /** + * Set the F286 parameter to the routine + */ + public void setF286(java.lang.Number value) { + setNumber(F286, value); + } + + /** + * Set the F286 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF286(org.jooq.Field field) { + setNumber(F286, field); + } + + /** + * Set the F287 parameter to the routine + */ + public void setF287(java.lang.Number value) { + setNumber(F287, value); + } + + /** + * Set the F287 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF287(org.jooq.Field field) { + setNumber(F287, field); + } + + /** + * Set the F288 parameter to the routine + */ + public void setF288(java.lang.Number value) { + setNumber(F288, value); + } + + /** + * Set the F288 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF288(org.jooq.Field field) { + setNumber(F288, field); + } + + /** + * Set the F289 parameter to the routine + */ + public void setF289(java.lang.Number value) { + setNumber(F289, value); + } + + /** + * Set the F289 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF289(org.jooq.Field field) { + setNumber(F289, field); + } + + /** + * Set the F290 parameter to the routine + */ + public void setF290(java.lang.Number value) { + setNumber(F290, value); + } + + /** + * Set the F290 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF290(org.jooq.Field field) { + setNumber(F290, field); + } + + /** + * Set the F291 parameter to the routine + */ + public void setF291(java.lang.Number value) { + setNumber(F291, value); + } + + /** + * Set the F291 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF291(org.jooq.Field field) { + setNumber(F291, field); + } + + /** + * Set the F292 parameter to the routine + */ + public void setF292(java.lang.Number value) { + setNumber(F292, value); + } + + /** + * Set the F292 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF292(org.jooq.Field field) { + setNumber(F292, field); + } + + /** + * Set the F293 parameter to the routine + */ + public void setF293(java.lang.Number value) { + setNumber(F293, value); + } + + /** + * Set the F293 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF293(org.jooq.Field field) { + setNumber(F293, field); + } + + /** + * Set the F294 parameter to the routine + */ + public void setF294(java.lang.Number value) { + setNumber(F294, value); + } + + /** + * Set the F294 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF294(org.jooq.Field field) { + setNumber(F294, field); + } + + /** + * Set the F295 parameter to the routine + */ + public void setF295(java.lang.Number value) { + setNumber(F295, value); + } + + /** + * Set the F295 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF295(org.jooq.Field field) { + setNumber(F295, field); + } + + /** + * Set the F296 parameter to the routine + */ + public void setF296(java.lang.Number value) { + setNumber(F296, value); + } + + /** + * Set the F296 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF296(org.jooq.Field field) { + setNumber(F296, field); + } + + /** + * Set the F297 parameter to the routine + */ + public void setF297(java.lang.Number value) { + setNumber(F297, value); + } + + /** + * Set the F297 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF297(org.jooq.Field field) { + setNumber(F297, field); + } + + /** + * Set the F298 parameter to the routine + */ + public void setF298(java.lang.Number value) { + setNumber(F298, value); + } + + /** + * Set the F298 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF298(org.jooq.Field field) { + setNumber(F298, field); + } + + /** + * Set the F299 parameter to the routine + */ + public void setF299(java.lang.Number value) { + setNumber(F299, value); + } + + /** + * Set the F299 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF299(org.jooq.Field field) { + setNumber(F299, field); + } + + /** + * Set the F300 parameter to the routine + */ + public void setF300(java.lang.Number value) { + setNumber(F300, value); + } + + /** + * Set the F300 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF300(org.jooq.Field field) { + setNumber(F300, field); + } + + /** + * Set the F301 parameter to the routine + */ + public void setF301(java.lang.Number value) { + setNumber(F301, value); + } + + /** + * Set the F301 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF301(org.jooq.Field field) { + setNumber(F301, field); + } + + /** + * Set the F302 parameter to the routine + */ + public void setF302(java.lang.Number value) { + setNumber(F302, value); + } + + /** + * Set the F302 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF302(org.jooq.Field field) { + setNumber(F302, field); + } + + /** + * Set the F303 parameter to the routine + */ + public void setF303(java.lang.Number value) { + setNumber(F303, value); + } + + /** + * Set the F303 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF303(org.jooq.Field field) { + setNumber(F303, field); + } + + /** + * Set the F304 parameter to the routine + */ + public void setF304(java.lang.Number value) { + setNumber(F304, value); + } + + /** + * Set the F304 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF304(org.jooq.Field field) { + setNumber(F304, field); + } + + /** + * Set the F305 parameter to the routine + */ + public void setF305(java.lang.Number value) { + setNumber(F305, value); + } + + /** + * Set the F305 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF305(org.jooq.Field field) { + setNumber(F305, field); + } + + /** + * Set the F306 parameter to the routine + */ + public void setF306(java.lang.Number value) { + setNumber(F306, value); + } + + /** + * Set the F306 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF306(org.jooq.Field field) { + setNumber(F306, field); + } + + /** + * Set the F307 parameter to the routine + */ + public void setF307(java.lang.Number value) { + setNumber(F307, value); + } + + /** + * Set the F307 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF307(org.jooq.Field field) { + setNumber(F307, field); + } + + /** + * Set the F308 parameter to the routine + */ + public void setF308(java.lang.Number value) { + setNumber(F308, value); + } + + /** + * Set the F308 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF308(org.jooq.Field field) { + setNumber(F308, field); + } + + /** + * Set the F309 parameter to the routine + */ + public void setF309(java.lang.Number value) { + setNumber(F309, value); + } + + /** + * Set the F309 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF309(org.jooq.Field field) { + setNumber(F309, field); + } + + /** + * Set the F310 parameter to the routine + */ + public void setF310(java.lang.Number value) { + setNumber(F310, value); + } + + /** + * Set the F310 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF310(org.jooq.Field field) { + setNumber(F310, field); + } + + /** + * Set the F311 parameter to the routine + */ + public void setF311(java.lang.Number value) { + setNumber(F311, value); + } + + /** + * Set the F311 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF311(org.jooq.Field field) { + setNumber(F311, field); + } + + /** + * Set the F312 parameter to the routine + */ + public void setF312(java.lang.Number value) { + setNumber(F312, value); + } + + /** + * Set the F312 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF312(org.jooq.Field field) { + setNumber(F312, field); + } + + /** + * Set the F313 parameter to the routine + */ + public void setF313(java.lang.Number value) { + setNumber(F313, value); + } + + /** + * Set the F313 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF313(org.jooq.Field field) { + setNumber(F313, field); + } + + /** + * Set the F314 parameter to the routine + */ + public void setF314(java.lang.Number value) { + setNumber(F314, value); + } + + /** + * Set the F314 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF314(org.jooq.Field field) { + setNumber(F314, field); + } + + /** + * Set the F315 parameter to the routine + */ + public void setF315(java.lang.Number value) { + setNumber(F315, value); + } + + /** + * Set the F315 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF315(org.jooq.Field field) { + setNumber(F315, field); + } + + /** + * Set the F316 parameter to the routine + */ + public void setF316(java.lang.Number value) { + setNumber(F316, value); + } + + /** + * Set the F316 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF316(org.jooq.Field field) { + setNumber(F316, field); + } + + /** + * Set the F317 parameter to the routine + */ + public void setF317(java.lang.Number value) { + setNumber(F317, value); + } + + /** + * Set the F317 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF317(org.jooq.Field field) { + setNumber(F317, field); + } + + /** + * Set the F318 parameter to the routine + */ + public void setF318(java.lang.Number value) { + setNumber(F318, value); + } + + /** + * Set the F318 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF318(org.jooq.Field field) { + setNumber(F318, field); + } + + /** + * Set the F319 parameter to the routine + */ + public void setF319(java.lang.Number value) { + setNumber(F319, value); + } + + /** + * Set the F319 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF319(org.jooq.Field field) { + setNumber(F319, field); + } + + /** + * Set the F320 parameter to the routine + */ + public void setF320(java.lang.Number value) { + setNumber(F320, value); + } + + /** + * Set the F320 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF320(org.jooq.Field field) { + setNumber(F320, field); + } + + /** + * Set the F321 parameter to the routine + */ + public void setF321(java.lang.Number value) { + setNumber(F321, value); + } + + /** + * Set the F321 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF321(org.jooq.Field field) { + setNumber(F321, field); + } + + /** + * Set the F322 parameter to the routine + */ + public void setF322(java.lang.Number value) { + setNumber(F322, value); + } + + /** + * Set the F322 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF322(org.jooq.Field field) { + setNumber(F322, field); + } + + /** + * Set the F323 parameter to the routine + */ + public void setF323(java.lang.Number value) { + setNumber(F323, value); + } + + /** + * Set the F323 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF323(org.jooq.Field field) { + setNumber(F323, field); + } + + /** + * Set the F324 parameter to the routine + */ + public void setF324(java.lang.Number value) { + setNumber(F324, value); + } + + /** + * Set the F324 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF324(org.jooq.Field field) { + setNumber(F324, field); + } + + /** + * Set the F325 parameter to the routine + */ + public void setF325(java.lang.Number value) { + setNumber(F325, value); + } + + /** + * Set the F325 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF325(org.jooq.Field field) { + setNumber(F325, field); + } + + /** + * Set the F326 parameter to the routine + */ + public void setF326(java.lang.Number value) { + setNumber(F326, value); + } + + /** + * Set the F326 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF326(org.jooq.Field field) { + setNumber(F326, field); + } + + /** + * Set the F327 parameter to the routine + */ + public void setF327(java.lang.Number value) { + setNumber(F327, value); + } + + /** + * Set the F327 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF327(org.jooq.Field field) { + setNumber(F327, field); + } + + /** + * Set the F328 parameter to the routine + */ + public void setF328(java.lang.Number value) { + setNumber(F328, value); + } + + /** + * Set the F328 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF328(org.jooq.Field field) { + setNumber(F328, field); + } + + /** + * Set the F329 parameter to the routine + */ + public void setF329(java.lang.Number value) { + setNumber(F329, value); + } + + /** + * Set the F329 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF329(org.jooq.Field field) { + setNumber(F329, field); + } + + /** + * Set the F330 parameter to the routine + */ + public void setF330(java.lang.Number value) { + setNumber(F330, value); + } + + /** + * Set the F330 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF330(org.jooq.Field field) { + setNumber(F330, field); + } + + /** + * Set the F331 parameter to the routine + */ + public void setF331(java.lang.Number value) { + setNumber(F331, value); + } + + /** + * Set the F331 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF331(org.jooq.Field field) { + setNumber(F331, field); + } + + /** + * Set the F332 parameter to the routine + */ + public void setF332(java.lang.Number value) { + setNumber(F332, value); + } + + /** + * Set the F332 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF332(org.jooq.Field field) { + setNumber(F332, field); + } + + /** + * Set the F333 parameter to the routine + */ + public void setF333(java.lang.Number value) { + setNumber(F333, value); + } + + /** + * Set the F333 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF333(org.jooq.Field field) { + setNumber(F333, field); + } + + /** + * Set the F334 parameter to the routine + */ + public void setF334(java.lang.Number value) { + setNumber(F334, value); + } + + /** + * Set the F334 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF334(org.jooq.Field field) { + setNumber(F334, field); + } + + /** + * Set the F335 parameter to the routine + */ + public void setF335(java.lang.Number value) { + setNumber(F335, value); + } + + /** + * Set the F335 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF335(org.jooq.Field field) { + setNumber(F335, field); + } + + /** + * Set the F336 parameter to the routine + */ + public void setF336(java.lang.Number value) { + setNumber(F336, value); + } + + /** + * Set the F336 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF336(org.jooq.Field field) { + setNumber(F336, field); + } + + /** + * Set the F337 parameter to the routine + */ + public void setF337(java.lang.Number value) { + setNumber(F337, value); + } + + /** + * Set the F337 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF337(org.jooq.Field field) { + setNumber(F337, field); + } + + /** + * Set the F338 parameter to the routine + */ + public void setF338(java.lang.Number value) { + setNumber(F338, value); + } + + /** + * Set the F338 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF338(org.jooq.Field field) { + setNumber(F338, field); + } + + /** + * Set the F339 parameter to the routine + */ + public void setF339(java.lang.Number value) { + setNumber(F339, value); + } + + /** + * Set the F339 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF339(org.jooq.Field field) { + setNumber(F339, field); + } + + /** + * Set the F340 parameter to the routine + */ + public void setF340(java.lang.Number value) { + setNumber(F340, value); + } + + /** + * Set the F340 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF340(org.jooq.Field field) { + setNumber(F340, field); + } + + /** + * Set the F341 parameter to the routine + */ + public void setF341(java.lang.Number value) { + setNumber(F341, value); + } + + /** + * Set the F341 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF341(org.jooq.Field field) { + setNumber(F341, field); + } + + /** + * Set the F342 parameter to the routine + */ + public void setF342(java.lang.Number value) { + setNumber(F342, value); + } + + /** + * Set the F342 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF342(org.jooq.Field field) { + setNumber(F342, field); + } + + /** + * Set the F343 parameter to the routine + */ + public void setF343(java.lang.Number value) { + setNumber(F343, value); + } + + /** + * Set the F343 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF343(org.jooq.Field field) { + setNumber(F343, field); + } + + /** + * Set the F344 parameter to the routine + */ + public void setF344(java.lang.Number value) { + setNumber(F344, value); + } + + /** + * Set the F344 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF344(org.jooq.Field field) { + setNumber(F344, field); + } + + /** + * Set the F345 parameter to the routine + */ + public void setF345(java.lang.Number value) { + setNumber(F345, value); + } + + /** + * Set the F345 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF345(org.jooq.Field field) { + setNumber(F345, field); + } + + /** + * Set the F346 parameter to the routine + */ + public void setF346(java.lang.Number value) { + setNumber(F346, value); + } + + /** + * Set the F346 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF346(org.jooq.Field field) { + setNumber(F346, field); + } + + /** + * Set the F347 parameter to the routine + */ + public void setF347(java.lang.Number value) { + setNumber(F347, value); + } + + /** + * Set the F347 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF347(org.jooq.Field field) { + setNumber(F347, field); + } + + /** + * Set the F348 parameter to the routine + */ + public void setF348(java.lang.Number value) { + setNumber(F348, value); + } + + /** + * Set the F348 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF348(org.jooq.Field field) { + setNumber(F348, field); + } + + /** + * Set the F349 parameter to the routine + */ + public void setF349(java.lang.Number value) { + setNumber(F349, value); + } + + /** + * Set the F349 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF349(org.jooq.Field field) { + setNumber(F349, field); + } + + /** + * Set the F350 parameter to the routine + */ + public void setF350(java.lang.Number value) { + setNumber(F350, value); + } + + /** + * Set the F350 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF350(org.jooq.Field field) { + setNumber(F350, field); + } + + /** + * Set the F351 parameter to the routine + */ + public void setF351(java.lang.Number value) { + setNumber(F351, value); + } + + /** + * Set the F351 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF351(org.jooq.Field field) { + setNumber(F351, field); + } + + /** + * Set the F352 parameter to the routine + */ + public void setF352(java.lang.Number value) { + setNumber(F352, value); + } + + /** + * Set the F352 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF352(org.jooq.Field field) { + setNumber(F352, field); + } + + /** + * Set the F353 parameter to the routine + */ + public void setF353(java.lang.Number value) { + setNumber(F353, value); + } + + /** + * Set the F353 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF353(org.jooq.Field field) { + setNumber(F353, field); + } + + /** + * Set the F354 parameter to the routine + */ + public void setF354(java.lang.Number value) { + setNumber(F354, value); + } + + /** + * Set the F354 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF354(org.jooq.Field field) { + setNumber(F354, field); + } + + /** + * Set the F355 parameter to the routine + */ + public void setF355(java.lang.Number value) { + setNumber(F355, value); + } + + /** + * Set the F355 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF355(org.jooq.Field field) { + setNumber(F355, field); + } + + /** + * Set the F356 parameter to the routine + */ + public void setF356(java.lang.Number value) { + setNumber(F356, value); + } + + /** + * Set the F356 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF356(org.jooq.Field field) { + setNumber(F356, field); + } + + /** + * Set the F357 parameter to the routine + */ + public void setF357(java.lang.Number value) { + setNumber(F357, value); + } + + /** + * Set the F357 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF357(org.jooq.Field field) { + setNumber(F357, field); + } + + /** + * Set the F358 parameter to the routine + */ + public void setF358(java.lang.Number value) { + setNumber(F358, value); + } + + /** + * Set the F358 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF358(org.jooq.Field field) { + setNumber(F358, field); + } + + /** + * Set the F359 parameter to the routine + */ + public void setF359(java.lang.Number value) { + setNumber(F359, value); + } + + /** + * Set the F359 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF359(org.jooq.Field field) { + setNumber(F359, field); + } + + /** + * Set the F360 parameter to the routine + */ + public void setF360(java.lang.Number value) { + setNumber(F360, value); + } + + /** + * Set the F360 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF360(org.jooq.Field field) { + setNumber(F360, field); + } + + /** + * Set the F361 parameter to the routine + */ + public void setF361(java.lang.Number value) { + setNumber(F361, value); + } + + /** + * Set the F361 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF361(org.jooq.Field field) { + setNumber(F361, field); + } + + /** + * Set the F362 parameter to the routine + */ + public void setF362(java.lang.Number value) { + setNumber(F362, value); + } + + /** + * Set the F362 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF362(org.jooq.Field field) { + setNumber(F362, field); + } + + /** + * Set the F363 parameter to the routine + */ + public void setF363(java.lang.Number value) { + setNumber(F363, value); + } + + /** + * Set the F363 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF363(org.jooq.Field field) { + setNumber(F363, field); + } + + /** + * Set the F364 parameter to the routine + */ + public void setF364(java.lang.Number value) { + setNumber(F364, value); + } + + /** + * Set the F364 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF364(org.jooq.Field field) { + setNumber(F364, field); + } + + /** + * Set the F365 parameter to the routine + */ + public void setF365(java.lang.Number value) { + setNumber(F365, value); + } + + /** + * Set the F365 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF365(org.jooq.Field field) { + setNumber(F365, field); + } + + /** + * Set the F366 parameter to the routine + */ + public void setF366(java.lang.Number value) { + setNumber(F366, value); + } + + /** + * Set the F366 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF366(org.jooq.Field field) { + setNumber(F366, field); + } + + /** + * Set the F367 parameter to the routine + */ + public void setF367(java.lang.Number value) { + setNumber(F367, value); + } + + /** + * Set the F367 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF367(org.jooq.Field field) { + setNumber(F367, field); + } + + /** + * Set the F368 parameter to the routine + */ + public void setF368(java.lang.Number value) { + setNumber(F368, value); + } + + /** + * Set the F368 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF368(org.jooq.Field field) { + setNumber(F368, field); + } + + /** + * Set the F369 parameter to the routine + */ + public void setF369(java.lang.Number value) { + setNumber(F369, value); + } + + /** + * Set the F369 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF369(org.jooq.Field field) { + setNumber(F369, field); + } + + /** + * Set the F370 parameter to the routine + */ + public void setF370(java.lang.Number value) { + setNumber(F370, value); + } + + /** + * Set the F370 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF370(org.jooq.Field field) { + setNumber(F370, field); + } + + /** + * Set the F371 parameter to the routine + */ + public void setF371(java.lang.Number value) { + setNumber(F371, value); + } + + /** + * Set the F371 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF371(org.jooq.Field field) { + setNumber(F371, field); + } + + /** + * Set the F372 parameter to the routine + */ + public void setF372(java.lang.Number value) { + setNumber(F372, value); + } + + /** + * Set the F372 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF372(org.jooq.Field field) { + setNumber(F372, field); + } + + /** + * Set the F373 parameter to the routine + */ + public void setF373(java.lang.Number value) { + setNumber(F373, value); + } + + /** + * Set the F373 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF373(org.jooq.Field field) { + setNumber(F373, field); + } + + /** + * Set the F374 parameter to the routine + */ + public void setF374(java.lang.Number value) { + setNumber(F374, value); + } + + /** + * Set the F374 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF374(org.jooq.Field field) { + setNumber(F374, field); + } + + /** + * Set the F375 parameter to the routine + */ + public void setF375(java.lang.Number value) { + setNumber(F375, value); + } + + /** + * Set the F375 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF375(org.jooq.Field field) { + setNumber(F375, field); + } + + /** + * Set the F376 parameter to the routine + */ + public void setF376(java.lang.Number value) { + setNumber(F376, value); + } + + /** + * Set the F376 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF376(org.jooq.Field field) { + setNumber(F376, field); + } + + /** + * Set the F377 parameter to the routine + */ + public void setF377(java.lang.Number value) { + setNumber(F377, value); + } + + /** + * Set the F377 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF377(org.jooq.Field field) { + setNumber(F377, field); + } + + /** + * Set the F378 parameter to the routine + */ + public void setF378(java.lang.Number value) { + setNumber(F378, value); + } + + /** + * Set the F378 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF378(org.jooq.Field field) { + setNumber(F378, field); + } + + /** + * Set the F379 parameter to the routine + */ + public void setF379(java.lang.Number value) { + setNumber(F379, value); + } + + /** + * Set the F379 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF379(org.jooq.Field field) { + setNumber(F379, field); + } + + /** + * Set the F380 parameter to the routine + */ + public void setF380(java.lang.Number value) { + setNumber(F380, value); + } + + /** + * Set the F380 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF380(org.jooq.Field field) { + setNumber(F380, field); + } + + /** + * Set the F381 parameter to the routine + */ + public void setF381(java.lang.Number value) { + setNumber(F381, value); + } + + /** + * Set the F381 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF381(org.jooq.Field field) { + setNumber(F381, field); + } + + /** + * Set the F382 parameter to the routine + */ + public void setF382(java.lang.Number value) { + setNumber(F382, value); + } + + /** + * Set the F382 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF382(org.jooq.Field field) { + setNumber(F382, field); + } + + /** + * Set the F383 parameter to the routine + */ + public void setF383(java.lang.Number value) { + setNumber(F383, value); + } + + /** + * Set the F383 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF383(org.jooq.Field field) { + setNumber(F383, field); + } + + /** + * Set the F384 parameter to the routine + */ + public void setF384(java.lang.Number value) { + setNumber(F384, value); + } + + /** + * Set the F384 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF384(org.jooq.Field field) { + setNumber(F384, field); + } + + /** + * Set the F385 parameter to the routine + */ + public void setF385(java.lang.Number value) { + setNumber(F385, value); + } + + /** + * Set the F385 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF385(org.jooq.Field field) { + setNumber(F385, field); + } + + /** + * Set the F386 parameter to the routine + */ + public void setF386(java.lang.Number value) { + setNumber(F386, value); + } + + /** + * Set the F386 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF386(org.jooq.Field field) { + setNumber(F386, field); + } + + /** + * Set the F387 parameter to the routine + */ + public void setF387(java.lang.Number value) { + setNumber(F387, value); + } + + /** + * Set the F387 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF387(org.jooq.Field field) { + setNumber(F387, field); + } + + /** + * Set the F388 parameter to the routine + */ + public void setF388(java.lang.Number value) { + setNumber(F388, value); + } + + /** + * Set the F388 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF388(org.jooq.Field field) { + setNumber(F388, field); + } + + /** + * Set the F389 parameter to the routine + */ + public void setF389(java.lang.Number value) { + setNumber(F389, value); + } + + /** + * Set the F389 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF389(org.jooq.Field field) { + setNumber(F389, field); + } + + /** + * Set the F390 parameter to the routine + */ + public void setF390(java.lang.Number value) { + setNumber(F390, value); + } + + /** + * Set the F390 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF390(org.jooq.Field field) { + setNumber(F390, field); + } + + /** + * Set the F391 parameter to the routine + */ + public void setF391(java.lang.Number value) { + setNumber(F391, value); + } + + /** + * Set the F391 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF391(org.jooq.Field field) { + setNumber(F391, field); + } + + /** + * Set the F392 parameter to the routine + */ + public void setF392(java.lang.Number value) { + setNumber(F392, value); + } + + /** + * Set the F392 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF392(org.jooq.Field field) { + setNumber(F392, field); + } + + /** + * Set the F393 parameter to the routine + */ + public void setF393(java.lang.Number value) { + setNumber(F393, value); + } + + /** + * Set the F393 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF393(org.jooq.Field field) { + setNumber(F393, field); + } + + /** + * Set the F394 parameter to the routine + */ + public void setF394(java.lang.Number value) { + setNumber(F394, value); + } + + /** + * Set the F394 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF394(org.jooq.Field field) { + setNumber(F394, field); + } + + /** + * Set the F395 parameter to the routine + */ + public void setF395(java.lang.Number value) { + setNumber(F395, value); + } + + /** + * Set the F395 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF395(org.jooq.Field field) { + setNumber(F395, field); + } + + /** + * Set the F396 parameter to the routine + */ + public void setF396(java.lang.Number value) { + setNumber(F396, value); + } + + /** + * Set the F396 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF396(org.jooq.Field field) { + setNumber(F396, field); + } + + /** + * Set the F397 parameter to the routine + */ + public void setF397(java.lang.Number value) { + setNumber(F397, value); + } + + /** + * Set the F397 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF397(org.jooq.Field field) { + setNumber(F397, field); + } + + /** + * Set the F398 parameter to the routine + */ + public void setF398(java.lang.Number value) { + setNumber(F398, value); + } + + /** + * Set the F398 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF398(org.jooq.Field field) { + setNumber(F398, field); + } + + /** + * Set the F399 parameter to the routine + */ + public void setF399(java.lang.Number value) { + setNumber(F399, value); + } + + /** + * Set the F399 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF399(org.jooq.Field field) { + setNumber(F399, field); + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/routines/FNumber.java b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/routines/FNumber.java new file mode 100644 index 00000000000..164359d418b --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/routines/FNumber.java @@ -0,0 +1,49 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle.generatedclasses.test.routines; + +/** + * This class is generated by jOOQ. + */ +public class FNumber extends org.jooq.impl.AbstractRoutine { + + private static final long serialVersionUID = -522850773; + + + /** + * An uncommented item + */ + public static final org.jooq.Parameter RETURN_VALUE = createParameter("RETURN_VALUE", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter N = createParameter("N", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * Create a new routine call instance + */ + public FNumber() { + super("F_NUMBER", org.jooq.test.oracle.generatedclasses.test.Test.TEST, org.jooq.impl.SQLDataType.NUMERIC); + + setReturnParameter(RETURN_VALUE); + addInParameter(N); + } + + /** + * Set the N parameter to the routine + */ + public void setN(java.lang.Number value) { + setNumber(N, value); + } + + /** + * Set the N parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setN(org.jooq.Field field) { + setNumber(N, field); + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/routines/FOne.java b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/routines/FOne.java new file mode 100644 index 00000000000..e4b7be756c5 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/routines/FOne.java @@ -0,0 +1,27 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle.generatedclasses.test.routines; + +/** + * This class is generated by jOOQ. + */ +public class FOne extends org.jooq.impl.AbstractRoutine { + + private static final long serialVersionUID = 2083730949; + + + /** + * An uncommented item + */ + public static final org.jooq.Parameter RETURN_VALUE = createParameter("RETURN_VALUE", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * Create a new routine call instance + */ + public FOne() { + super("F_ONE", org.jooq.test.oracle.generatedclasses.test.Test.TEST, org.jooq.impl.SQLDataType.NUMERIC); + + setReturnParameter(RETURN_VALUE); + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/routines/FPipelinedArray1.java b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/routines/FPipelinedArray1.java new file mode 100644 index 00000000000..00179032002 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/routines/FPipelinedArray1.java @@ -0,0 +1,27 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle.generatedclasses.test.routines; + +/** + * This class is generated by jOOQ. + */ +public class FPipelinedArray1 extends org.jooq.impl.AbstractRoutine { + + private static final long serialVersionUID = 1719195440; + + + /** + * An uncommented item + */ + public static final org.jooq.Parameter RETURN_VALUE = createParameter("RETURN_VALUE", org.jooq.impl.SQLDataType.INTEGER.asArrayDataType(org.jooq.test.oracle.generatedclasses.test.udt.records.UNumberArrayRecord.class)); + + /** + * Create a new routine call instance + */ + public FPipelinedArray1() { + super("F_PIPELINED_ARRAY1", org.jooq.test.oracle.generatedclasses.test.Test.TEST, org.jooq.impl.SQLDataType.INTEGER.asArrayDataType(org.jooq.test.oracle.generatedclasses.test.udt.records.UNumberArrayRecord.class)); + + setReturnParameter(RETURN_VALUE); + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/routines/FPipelinedArray4.java b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/routines/FPipelinedArray4.java new file mode 100644 index 00000000000..1ba5bb04ae6 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/routines/FPipelinedArray4.java @@ -0,0 +1,27 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle.generatedclasses.test.routines; + +/** + * This class is generated by jOOQ. + */ +public class FPipelinedArray4 extends org.jooq.impl.AbstractRoutine { + + private static final long serialVersionUID = -1321769807; + + + /** + * An uncommented item + */ + public static final org.jooq.Parameter RETURN_VALUE = createParameter("RETURN_VALUE", org.jooq.test.oracle.generatedclasses.test.udt.UBookType.U_BOOK_TYPE.getDataType().asArrayDataType(org.jooq.test.oracle.generatedclasses.test.udt.records.UBookArrayRecord.class)); + + /** + * Create a new routine call instance + */ + public FPipelinedArray4() { + super("F_PIPELINED_ARRAY4", org.jooq.test.oracle.generatedclasses.test.Test.TEST, org.jooq.test.oracle.generatedclasses.test.udt.UBookType.U_BOOK_TYPE.getDataType().asArrayDataType(org.jooq.test.oracle.generatedclasses.test.udt.records.UBookArrayRecord.class)); + + setReturnParameter(RETURN_VALUE); + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/routines/FPipelinedTable1.java b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/routines/FPipelinedTable1.java new file mode 100644 index 00000000000..c0744896671 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/routines/FPipelinedTable1.java @@ -0,0 +1,27 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle.generatedclasses.test.routines; + +/** + * This class is generated by jOOQ. + */ +public class FPipelinedTable1 extends org.jooq.impl.AbstractRoutine { + + private static final long serialVersionUID = 1725977221; + + + /** + * An uncommented item + */ + public static final org.jooq.Parameter RETURN_VALUE = createParameter("RETURN_VALUE", org.jooq.impl.SQLDataType.INTEGER.asArrayDataType(org.jooq.test.oracle.generatedclasses.test.udt.records.UNumberTableRecord.class)); + + /** + * Create a new routine call instance + */ + public FPipelinedTable1() { + super("F_PIPELINED_TABLE1", org.jooq.test.oracle.generatedclasses.test.Test.TEST, org.jooq.impl.SQLDataType.INTEGER.asArrayDataType(org.jooq.test.oracle.generatedclasses.test.udt.records.UNumberTableRecord.class)); + + setReturnParameter(RETURN_VALUE); + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/routines/FPipelinedTable4.java b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/routines/FPipelinedTable4.java new file mode 100644 index 00000000000..97e24ef9282 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/routines/FPipelinedTable4.java @@ -0,0 +1,27 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle.generatedclasses.test.routines; + +/** + * This class is generated by jOOQ. + */ +public class FPipelinedTable4 extends org.jooq.impl.AbstractRoutine { + + private static final long serialVersionUID = 617379728; + + + /** + * An uncommented item + */ + public static final org.jooq.Parameter RETURN_VALUE = createParameter("RETURN_VALUE", org.jooq.test.oracle.generatedclasses.test.udt.UBookType.U_BOOK_TYPE.getDataType().asArrayDataType(org.jooq.test.oracle.generatedclasses.test.udt.records.UBookTableRecord.class)); + + /** + * Create a new routine call instance + */ + public FPipelinedTable4() { + super("F_PIPELINED_TABLE4", org.jooq.test.oracle.generatedclasses.test.Test.TEST, org.jooq.test.oracle.generatedclasses.test.udt.UBookType.U_BOOK_TYPE.getDataType().asArrayDataType(org.jooq.test.oracle.generatedclasses.test.udt.records.UBookTableRecord.class)); + + setReturnParameter(RETURN_VALUE); + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/routines/FTables1.java b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/routines/FTables1.java new file mode 100644 index 00000000000..6a9d1bc4821 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/routines/FTables1.java @@ -0,0 +1,49 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle.generatedclasses.test.routines; + +/** + * This class is generated by jOOQ. + */ +public class FTables1 extends org.jooq.impl.AbstractRoutine { + + private static final long serialVersionUID = -417304969; + + + /** + * An uncommented item + */ + public static final org.jooq.Parameter RETURN_VALUE = createParameter("RETURN_VALUE", org.jooq.impl.SQLDataType.INTEGER.asArrayDataType(org.jooq.test.oracle.generatedclasses.test.udt.records.UNumberTableRecord.class)); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter IN_TABLE = createParameter("IN_TABLE", org.jooq.impl.SQLDataType.INTEGER.asArrayDataType(org.jooq.test.oracle.generatedclasses.test.udt.records.UNumberTableRecord.class)); + + /** + * Create a new routine call instance + */ + public FTables1() { + super("F_TABLES1", org.jooq.test.oracle.generatedclasses.test.Test.TEST, org.jooq.impl.SQLDataType.INTEGER.asArrayDataType(org.jooq.test.oracle.generatedclasses.test.udt.records.UNumberTableRecord.class)); + + setReturnParameter(RETURN_VALUE); + addInParameter(IN_TABLE); + } + + /** + * Set the IN_TABLE parameter to the routine + */ + public void setInTable(org.jooq.test.oracle.generatedclasses.test.udt.records.UNumberTableRecord value) { + setValue(IN_TABLE, value); + } + + /** + * Set the IN_TABLE parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setInTable(org.jooq.Field field) { + setField(IN_TABLE, field); + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/routines/FTables2.java b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/routines/FTables2.java new file mode 100644 index 00000000000..9f81b59c740 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/routines/FTables2.java @@ -0,0 +1,49 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle.generatedclasses.test.routines; + +/** + * This class is generated by jOOQ. + */ +public class FTables2 extends org.jooq.impl.AbstractRoutine { + + private static final long serialVersionUID = 1309453259; + + + /** + * An uncommented item + */ + public static final org.jooq.Parameter RETURN_VALUE = createParameter("RETURN_VALUE", org.jooq.impl.SQLDataType.BIGINT.asArrayDataType(org.jooq.test.oracle.generatedclasses.test.udt.records.UNumberLongTableRecord.class)); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter IN_TABLE = createParameter("IN_TABLE", org.jooq.impl.SQLDataType.BIGINT.asArrayDataType(org.jooq.test.oracle.generatedclasses.test.udt.records.UNumberLongTableRecord.class)); + + /** + * Create a new routine call instance + */ + public FTables2() { + super("F_TABLES2", org.jooq.test.oracle.generatedclasses.test.Test.TEST, org.jooq.impl.SQLDataType.BIGINT.asArrayDataType(org.jooq.test.oracle.generatedclasses.test.udt.records.UNumberLongTableRecord.class)); + + setReturnParameter(RETURN_VALUE); + addInParameter(IN_TABLE); + } + + /** + * Set the IN_TABLE parameter to the routine + */ + public void setInTable(org.jooq.test.oracle.generatedclasses.test.udt.records.UNumberLongTableRecord value) { + setValue(IN_TABLE, value); + } + + /** + * Set the IN_TABLE parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setInTable(org.jooq.Field field) { + setField(IN_TABLE, field); + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/routines/FTables3.java b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/routines/FTables3.java new file mode 100644 index 00000000000..352bafe1f64 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/routines/FTables3.java @@ -0,0 +1,49 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle.generatedclasses.test.routines; + +/** + * This class is generated by jOOQ. + */ +public class FTables3 extends org.jooq.impl.AbstractRoutine { + + private static final long serialVersionUID = -556574856; + + + /** + * An uncommented item + */ + public static final org.jooq.Parameter RETURN_VALUE = createParameter("RETURN_VALUE", org.jooq.impl.SQLDataType.VARCHAR.asArrayDataType(org.jooq.test.oracle.generatedclasses.test.udt.records.UStringTableRecord.class)); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter IN_TABLE = createParameter("IN_TABLE", org.jooq.impl.SQLDataType.VARCHAR.asArrayDataType(org.jooq.test.oracle.generatedclasses.test.udt.records.UStringTableRecord.class)); + + /** + * Create a new routine call instance + */ + public FTables3() { + super("F_TABLES3", org.jooq.test.oracle.generatedclasses.test.Test.TEST, org.jooq.impl.SQLDataType.VARCHAR.asArrayDataType(org.jooq.test.oracle.generatedclasses.test.udt.records.UStringTableRecord.class)); + + setReturnParameter(RETURN_VALUE); + addInParameter(IN_TABLE); + } + + /** + * Set the IN_TABLE parameter to the routine + */ + public void setInTable(org.jooq.test.oracle.generatedclasses.test.udt.records.UStringTableRecord value) { + setValue(IN_TABLE, value); + } + + /** + * Set the IN_TABLE parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setInTable(org.jooq.Field field) { + setField(IN_TABLE, field); + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/routines/FTables4.java b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/routines/FTables4.java new file mode 100644 index 00000000000..4d8a60a0fd4 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/routines/FTables4.java @@ -0,0 +1,49 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle.generatedclasses.test.routines; + +/** + * This class is generated by jOOQ. + */ +public class FTables4 extends org.jooq.impl.AbstractRoutine { + + private static final long serialVersionUID = 363235119; + + + /** + * An uncommented item + */ + public static final org.jooq.Parameter RETURN_VALUE = createParameter("RETURN_VALUE", org.jooq.test.oracle.generatedclasses.test.udt.UBookType.U_BOOK_TYPE.getDataType().asArrayDataType(org.jooq.test.oracle.generatedclasses.test.udt.records.UBookTableRecord.class)); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter IN_TABLE = createParameter("IN_TABLE", org.jooq.test.oracle.generatedclasses.test.udt.UBookType.U_BOOK_TYPE.getDataType().asArrayDataType(org.jooq.test.oracle.generatedclasses.test.udt.records.UBookTableRecord.class)); + + /** + * Create a new routine call instance + */ + public FTables4() { + super("F_TABLES4", org.jooq.test.oracle.generatedclasses.test.Test.TEST, org.jooq.test.oracle.generatedclasses.test.udt.UBookType.U_BOOK_TYPE.getDataType().asArrayDataType(org.jooq.test.oracle.generatedclasses.test.udt.records.UBookTableRecord.class)); + + setReturnParameter(RETURN_VALUE); + addInParameter(IN_TABLE); + } + + /** + * Set the IN_TABLE parameter to the routine + */ + public void setInTable(org.jooq.test.oracle.generatedclasses.test.udt.records.UBookTableRecord value) { + setValue(IN_TABLE, value); + } + + /** + * Set the IN_TABLE parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setInTable(org.jooq.Field field) { + setField(IN_TABLE, field); + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/routines/P377.java b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/routines/P377.java new file mode 100644 index 00000000000..a52e4d349da --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/routines/P377.java @@ -0,0 +1,20 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle.generatedclasses.test.routines; + +/** + * This class is generated by jOOQ. + */ +public class P377 extends org.jooq.impl.AbstractRoutine { + + private static final long serialVersionUID = -1875334258; + + + /** + * Create a new routine call instance + */ + public P377() { + super("P377", org.jooq.test.oracle.generatedclasses.test.Test.TEST); + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/routines/P391.java b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/routines/P391.java new file mode 100644 index 00000000000..9b8ba245811 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/routines/P391.java @@ -0,0 +1,101 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle.generatedclasses.test.routines; + +/** + * This class is generated by jOOQ. + */ +public class P391 extends org.jooq.impl.AbstractRoutine { + + private static final long serialVersionUID = 1394377767; + + + /** + * An uncommented item + */ + public static final org.jooq.Parameter I1 = createParameter("I1", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter IO1 = createParameter("IO1", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter O1 = createParameter("O1", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter O2 = createParameter("O2", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter IO2 = createParameter("IO2", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter I2 = createParameter("I2", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * Create a new routine call instance + */ + public P391() { + super("P391", org.jooq.test.oracle.generatedclasses.test.Test.TEST); + + addInParameter(I1); + addInOutParameter(IO1); + addOutParameter(O1); + addOutParameter(O2); + addInOutParameter(IO2); + addInParameter(I2); + } + + /** + * Set the I1 parameter to the routine + */ + public void setI1(java.lang.Number value) { + setNumber(I1, value); + } + + /** + * Set the IO1 parameter to the routine + */ + public void setIo1(java.lang.Number value) { + setNumber(IO1, value); + } + + /** + * Set the IO2 parameter to the routine + */ + public void setIo2(java.lang.Number value) { + setNumber(IO2, value); + } + + /** + * Set the I2 parameter to the routine + */ + public void setI2(java.lang.Number value) { + setNumber(I2, value); + } + + public java.math.BigDecimal getIo1() { + return getValue(IO1); + } + + public java.math.BigDecimal getO1() { + return getValue(O1); + } + + public java.math.BigDecimal getO2() { + return getValue(O2); + } + + public java.math.BigDecimal getIo2() { + return getValue(IO2); + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/routines/PArrays1.java b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/routines/PArrays1.java new file mode 100644 index 00000000000..b2baf00b213 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/routines/PArrays1.java @@ -0,0 +1,44 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle.generatedclasses.test.routines; + +/** + * This class is generated by jOOQ. + */ +public class PArrays1 extends org.jooq.impl.AbstractRoutine { + + private static final long serialVersionUID = -911160874; + + + /** + * An uncommented item + */ + public static final org.jooq.Parameter IN_ARRAY = createParameter("IN_ARRAY", org.jooq.impl.SQLDataType.INTEGER.asArrayDataType(org.jooq.test.oracle.generatedclasses.test.udt.records.UNumberArrayRecord.class)); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter OUT_ARRAY = createParameter("OUT_ARRAY", org.jooq.impl.SQLDataType.INTEGER.asArrayDataType(org.jooq.test.oracle.generatedclasses.test.udt.records.UNumberArrayRecord.class)); + + /** + * Create a new routine call instance + */ + public PArrays1() { + super("P_ARRAYS1", org.jooq.test.oracle.generatedclasses.test.Test.TEST); + + addInParameter(IN_ARRAY); + addOutParameter(OUT_ARRAY); + } + + /** + * Set the IN_ARRAY parameter to the routine + */ + public void setInArray(org.jooq.test.oracle.generatedclasses.test.udt.records.UNumberArrayRecord value) { + setValue(IN_ARRAY, value); + } + + public org.jooq.test.oracle.generatedclasses.test.udt.records.UNumberArrayRecord getOutArray() { + return getValue(OUT_ARRAY); + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/routines/PArrays2.java b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/routines/PArrays2.java new file mode 100644 index 00000000000..63fcb8ea00e --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/routines/PArrays2.java @@ -0,0 +1,44 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle.generatedclasses.test.routines; + +/** + * This class is generated by jOOQ. + */ +public class PArrays2 extends org.jooq.impl.AbstractRoutine { + + private static final long serialVersionUID = 668255667; + + + /** + * An uncommented item + */ + public static final org.jooq.Parameter IN_ARRAY = createParameter("IN_ARRAY", org.jooq.impl.SQLDataType.BIGINT.asArrayDataType(org.jooq.test.oracle.generatedclasses.test.udt.records.UNumberLongArrayRecord.class)); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter OUT_ARRAY = createParameter("OUT_ARRAY", org.jooq.impl.SQLDataType.BIGINT.asArrayDataType(org.jooq.test.oracle.generatedclasses.test.udt.records.UNumberLongArrayRecord.class)); + + /** + * Create a new routine call instance + */ + public PArrays2() { + super("P_ARRAYS2", org.jooq.test.oracle.generatedclasses.test.Test.TEST); + + addInParameter(IN_ARRAY); + addOutParameter(OUT_ARRAY); + } + + /** + * Set the IN_ARRAY parameter to the routine + */ + public void setInArray(org.jooq.test.oracle.generatedclasses.test.udt.records.UNumberLongArrayRecord value) { + setValue(IN_ARRAY, value); + } + + public org.jooq.test.oracle.generatedclasses.test.udt.records.UNumberLongArrayRecord getOutArray() { + return getValue(OUT_ARRAY); + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/routines/PArrays3.java b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/routines/PArrays3.java new file mode 100644 index 00000000000..a3f921535e1 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/routines/PArrays3.java @@ -0,0 +1,44 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle.generatedclasses.test.routines; + +/** + * This class is generated by jOOQ. + */ +public class PArrays3 extends org.jooq.impl.AbstractRoutine { + + private static final long serialVersionUID = 1259221410; + + + /** + * An uncommented item + */ + public static final org.jooq.Parameter IN_ARRAY = createParameter("IN_ARRAY", org.jooq.impl.SQLDataType.VARCHAR.asArrayDataType(org.jooq.test.oracle.generatedclasses.test.udt.records.UStringArrayRecord.class)); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter OUT_ARRAY = createParameter("OUT_ARRAY", org.jooq.impl.SQLDataType.VARCHAR.asArrayDataType(org.jooq.test.oracle.generatedclasses.test.udt.records.UStringArrayRecord.class)); + + /** + * Create a new routine call instance + */ + public PArrays3() { + super("P_ARRAYS3", org.jooq.test.oracle.generatedclasses.test.Test.TEST); + + addInParameter(IN_ARRAY); + addOutParameter(OUT_ARRAY); + } + + /** + * Set the IN_ARRAY parameter to the routine + */ + public void setInArray(org.jooq.test.oracle.generatedclasses.test.udt.records.UStringArrayRecord value) { + setValue(IN_ARRAY, value); + } + + public org.jooq.test.oracle.generatedclasses.test.udt.records.UStringArrayRecord getOutArray() { + return getValue(OUT_ARRAY); + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/routines/PArrays4.java b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/routines/PArrays4.java new file mode 100644 index 00000000000..b02180974f4 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/routines/PArrays4.java @@ -0,0 +1,44 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle.generatedclasses.test.routines; + +/** + * This class is generated by jOOQ. + */ +public class PArrays4 extends org.jooq.impl.AbstractRoutine { + + private static final long serialVersionUID = 1085222569; + + + /** + * An uncommented item + */ + public static final org.jooq.Parameter IN_ARRAY = createParameter("IN_ARRAY", org.jooq.test.oracle.generatedclasses.test.udt.UBookType.U_BOOK_TYPE.getDataType().asArrayDataType(org.jooq.test.oracle.generatedclasses.test.udt.records.UBookArrayRecord.class)); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter OUT_ARRAY = createParameter("OUT_ARRAY", org.jooq.test.oracle.generatedclasses.test.udt.UBookType.U_BOOK_TYPE.getDataType().asArrayDataType(org.jooq.test.oracle.generatedclasses.test.udt.records.UBookArrayRecord.class)); + + /** + * Create a new routine call instance + */ + public PArrays4() { + super("P_ARRAYS4", org.jooq.test.oracle.generatedclasses.test.Test.TEST); + + addInParameter(IN_ARRAY); + addOutParameter(OUT_ARRAY); + } + + /** + * Set the IN_ARRAY parameter to the routine + */ + public void setInArray(org.jooq.test.oracle.generatedclasses.test.udt.records.UBookArrayRecord value) { + setValue(IN_ARRAY, value); + } + + public org.jooq.test.oracle.generatedclasses.test.udt.records.UBookArrayRecord getOutArray() { + return getValue(OUT_ARRAY); + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/routines/PAuthorExists.java b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/routines/PAuthorExists.java new file mode 100644 index 00000000000..904cd8ef0c3 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/routines/PAuthorExists.java @@ -0,0 +1,44 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle.generatedclasses.test.routines; + +/** + * This class is generated by jOOQ. + */ +public class PAuthorExists extends org.jooq.impl.AbstractRoutine { + + private static final long serialVersionUID = -1200178915; + + + /** + * An uncommented item + */ + public static final org.jooq.Parameter AUTHOR_NAME = createParameter("AUTHOR_NAME", org.jooq.impl.SQLDataType.VARCHAR); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter RESULT = createParameter("RESULT", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * Create a new routine call instance + */ + public PAuthorExists() { + super("P_AUTHOR_EXISTS", org.jooq.test.oracle.generatedclasses.test.Test.TEST); + + addInParameter(AUTHOR_NAME); + addOutParameter(RESULT); + } + + /** + * Set the AUTHOR_NAME parameter to the routine + */ + public void setAuthorName(java.lang.String value) { + setValue(AUTHOR_NAME, value); + } + + public java.math.BigDecimal getResult() { + return getValue(RESULT); + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/routines/PCreateAuthor.java b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/routines/PCreateAuthor.java new file mode 100644 index 00000000000..d1c21a9b549 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/routines/PCreateAuthor.java @@ -0,0 +1,20 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle.generatedclasses.test.routines; + +/** + * This class is generated by jOOQ. + */ +public class PCreateAuthor extends org.jooq.impl.AbstractRoutine { + + private static final long serialVersionUID = -840087056; + + + /** + * Create a new routine call instance + */ + public PCreateAuthor() { + super("P_CREATE_AUTHOR", org.jooq.test.oracle.generatedclasses.test.Test.TEST); + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/routines/PCreateAuthorByName.java b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/routines/PCreateAuthorByName.java new file mode 100644 index 00000000000..7b821e70b43 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/routines/PCreateAuthorByName.java @@ -0,0 +1,47 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle.generatedclasses.test.routines; + +/** + * This class is generated by jOOQ. + */ +public class PCreateAuthorByName extends org.jooq.impl.AbstractRoutine { + + private static final long serialVersionUID = 174216430; + + + /** + * An uncommented item + */ + public static final org.jooq.Parameter FIRST_NAME = createParameter("FIRST_NAME", org.jooq.impl.SQLDataType.VARCHAR); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter LAST_NAME = createParameter("LAST_NAME", org.jooq.impl.SQLDataType.VARCHAR); + + /** + * Create a new routine call instance + */ + public PCreateAuthorByName() { + super("P_CREATE_AUTHOR_BY_NAME", org.jooq.test.oracle.generatedclasses.test.Test.TEST); + + addInParameter(FIRST_NAME); + addInParameter(LAST_NAME); + } + + /** + * Set the FIRST_NAME parameter to the routine + */ + public void setFirstName(java.lang.String value) { + setValue(FIRST_NAME, value); + } + + /** + * Set the LAST_NAME parameter to the routine + */ + public void setLastName(java.lang.String value) { + setValue(LAST_NAME, value); + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/routines/PDefault.java b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/routines/PDefault.java new file mode 100644 index 00000000000..b89fe158c7c --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/routines/PDefault.java @@ -0,0 +1,90 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle.generatedclasses.test.routines; + +/** + * This class is generated by jOOQ. + */ +public class PDefault extends org.jooq.impl.AbstractRoutine { + + private static final long serialVersionUID = 1180154706; + + + /** + * An uncommented item + */ + public static final org.jooq.Parameter P_IN_NUMBER = createParameter("P_IN_NUMBER", org.jooq.impl.SQLDataType.NUMERIC, true); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter P_OUT_NUMBER = createParameter("P_OUT_NUMBER", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter P_IN_VARCHAR = createParameter("P_IN_VARCHAR", org.jooq.impl.SQLDataType.VARCHAR, true); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter P_OUT_VARCHAR = createParameter("P_OUT_VARCHAR", org.jooq.impl.SQLDataType.VARCHAR); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter P_IN_DATE = createParameter("P_IN_DATE", org.jooq.impl.SQLDataType.DATE, true); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter P_OUT_DATE = createParameter("P_OUT_DATE", org.jooq.impl.SQLDataType.DATE); + + /** + * Create a new routine call instance + */ + public PDefault() { + super("P_DEFAULT", org.jooq.test.oracle.generatedclasses.test.Test.TEST); + + addInParameter(P_IN_NUMBER); + addOutParameter(P_OUT_NUMBER); + addInParameter(P_IN_VARCHAR); + addOutParameter(P_OUT_VARCHAR); + addInParameter(P_IN_DATE); + addOutParameter(P_OUT_DATE); + } + + /** + * Set the P_IN_NUMBER parameter to the routine + */ + public void setPInNumber(java.lang.Number value) { + setNumber(P_IN_NUMBER, value); + } + + /** + * Set the P_IN_VARCHAR parameter to the routine + */ + public void setPInVarchar(java.lang.String value) { + setValue(P_IN_VARCHAR, value); + } + + /** + * Set the P_IN_DATE parameter to the routine + */ + public void setPInDate(java.sql.Date value) { + setValue(P_IN_DATE, value); + } + + public java.math.BigDecimal getPOutNumber() { + return getValue(P_OUT_NUMBER); + } + + public java.lang.String getPOutVarchar() { + return getValue(P_OUT_VARCHAR); + } + + public java.sql.Date getPOutDate() { + return getValue(P_OUT_DATE); + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/routines/PEnhanceAddress1.java b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/routines/PEnhanceAddress1.java new file mode 100644 index 00000000000..36bc980a039 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/routines/PEnhanceAddress1.java @@ -0,0 +1,44 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle.generatedclasses.test.routines; + +/** + * This class is generated by jOOQ. + */ +public class PEnhanceAddress1 extends org.jooq.impl.AbstractRoutine { + + private static final long serialVersionUID = 1511294298; + + + /** + * An uncommented item + */ + public static final org.jooq.Parameter ADDRESS = createParameter("ADDRESS", org.jooq.test.oracle.generatedclasses.test.udt.UAddressType.U_ADDRESS_TYPE.getDataType()); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter NO = createParameter("NO", org.jooq.impl.SQLDataType.VARCHAR); + + /** + * Create a new routine call instance + */ + public PEnhanceAddress1() { + super("P_ENHANCE_ADDRESS1", org.jooq.test.oracle.generatedclasses.test.Test.TEST); + + addInParameter(ADDRESS); + addOutParameter(NO); + } + + /** + * Set the ADDRESS parameter to the routine + */ + public void setAddress(org.jooq.test.oracle.generatedclasses.test.udt.records.UAddressTypeRecord value) { + setValue(ADDRESS, value); + } + + public java.lang.String getNo() { + return getValue(NO); + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/routines/PEnhanceAddress2.java b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/routines/PEnhanceAddress2.java new file mode 100644 index 00000000000..1b633efea4f --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/routines/PEnhanceAddress2.java @@ -0,0 +1,31 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle.generatedclasses.test.routines; + +/** + * This class is generated by jOOQ. + */ +public class PEnhanceAddress2 extends org.jooq.impl.AbstractRoutine { + + private static final long serialVersionUID = -173600634; + + + /** + * An uncommented item + */ + public static final org.jooq.Parameter ADDRESS = createParameter("ADDRESS", org.jooq.test.oracle.generatedclasses.test.udt.UAddressType.U_ADDRESS_TYPE.getDataType()); + + /** + * Create a new routine call instance + */ + public PEnhanceAddress2() { + super("P_ENHANCE_ADDRESS2", org.jooq.test.oracle.generatedclasses.test.Test.TEST); + + addOutParameter(ADDRESS); + } + + public org.jooq.test.oracle.generatedclasses.test.udt.records.UAddressTypeRecord getAddress() { + return getValue(ADDRESS); + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/routines/PEnhanceAddress3.java b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/routines/PEnhanceAddress3.java new file mode 100644 index 00000000000..3fd2132a5fc --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/routines/PEnhanceAddress3.java @@ -0,0 +1,38 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle.generatedclasses.test.routines; + +/** + * This class is generated by jOOQ. + */ +public class PEnhanceAddress3 extends org.jooq.impl.AbstractRoutine { + + private static final long serialVersionUID = 1611614310; + + + /** + * An uncommented item + */ + public static final org.jooq.Parameter ADDRESS = createParameter("ADDRESS", org.jooq.test.oracle.generatedclasses.test.udt.UAddressType.U_ADDRESS_TYPE.getDataType()); + + /** + * Create a new routine call instance + */ + public PEnhanceAddress3() { + super("P_ENHANCE_ADDRESS3", org.jooq.test.oracle.generatedclasses.test.Test.TEST); + + addInOutParameter(ADDRESS); + } + + /** + * Set the ADDRESS parameter to the routine + */ + public void setAddress(org.jooq.test.oracle.generatedclasses.test.udt.records.UAddressTypeRecord value) { + setValue(ADDRESS, value); + } + + public org.jooq.test.oracle.generatedclasses.test.udt.records.UAddressTypeRecord getAddress() { + return getValue(ADDRESS); + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/routines/PGetOneCursor.java b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/routines/PGetOneCursor.java new file mode 100644 index 00000000000..db6fe82e6b5 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/routines/PGetOneCursor.java @@ -0,0 +1,54 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle.generatedclasses.test.routines; + +/** + * This class is generated by jOOQ. + */ +public class PGetOneCursor extends org.jooq.impl.AbstractRoutine { + + private static final long serialVersionUID = -709779459; + + + /** + * An uncommented item + */ + public static final org.jooq.Parameter TOTAL = createParameter("TOTAL", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter> BOOKS = createParameter("BOOKS", org.jooq.impl.SQLDataType.RESULT); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter BOOK_IDS = createParameter("BOOK_IDS", org.jooq.impl.SQLDataType.INTEGER.asArrayDataType(org.jooq.test.oracle.generatedclasses.test.udt.records.UNumberArrayRecord.class)); + + /** + * Create a new routine call instance + */ + public PGetOneCursor() { + super("P_GET_ONE_CURSOR", org.jooq.test.oracle.generatedclasses.test.Test.TEST); + + addOutParameter(TOTAL); + addOutParameter(BOOKS); + addInParameter(BOOK_IDS); + } + + /** + * Set the BOOK_IDS parameter to the routine + */ + public void setBookIds(org.jooq.test.oracle.generatedclasses.test.udt.records.UNumberArrayRecord value) { + setValue(BOOK_IDS, value); + } + + public java.math.BigDecimal getTotal() { + return getValue(TOTAL); + } + + public org.jooq.Result getBooks() { + return getValue(BOOKS); + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/routines/PGetTwoCursors.java b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/routines/PGetTwoCursors.java new file mode 100644 index 00000000000..74dc717a9ee --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/routines/PGetTwoCursors.java @@ -0,0 +1,41 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle.generatedclasses.test.routines; + +/** + * This class is generated by jOOQ. + */ +public class PGetTwoCursors extends org.jooq.impl.AbstractRoutine { + + private static final long serialVersionUID = -958304863; + + + /** + * An uncommented item + */ + public static final org.jooq.Parameter> BOOKS = createParameter("BOOKS", org.jooq.impl.SQLDataType.RESULT); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter> AUTHORS = createParameter("AUTHORS", org.jooq.impl.SQLDataType.RESULT); + + /** + * Create a new routine call instance + */ + public PGetTwoCursors() { + super("P_GET_TWO_CURSORS", org.jooq.test.oracle.generatedclasses.test.Test.TEST); + + addOutParameter(BOOKS); + addOutParameter(AUTHORS); + } + + public org.jooq.Result getBooks() { + return getValue(BOOKS); + } + + public org.jooq.Result getAuthors() { + return getValue(AUTHORS); + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/routines/PManyParameters.java b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/routines/PManyParameters.java new file mode 100644 index 00000000000..9697df82ad6 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/routines/PManyParameters.java @@ -0,0 +1,5221 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle.generatedclasses.test.routines; + +/** + * This class is generated by jOOQ. + */ +public class PManyParameters extends org.jooq.impl.AbstractRoutine { + + private static final long serialVersionUID = 172532772; + + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F000 = createParameter("F000", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F001 = createParameter("F001", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F002 = createParameter("F002", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F003 = createParameter("F003", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F004 = createParameter("F004", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F005 = createParameter("F005", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F006 = createParameter("F006", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F007 = createParameter("F007", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F008 = createParameter("F008", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F009 = createParameter("F009", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F010 = createParameter("F010", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F011 = createParameter("F011", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F012 = createParameter("F012", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F013 = createParameter("F013", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F014 = createParameter("F014", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F015 = createParameter("F015", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F016 = createParameter("F016", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F017 = createParameter("F017", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F018 = createParameter("F018", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F019 = createParameter("F019", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F020 = createParameter("F020", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F021 = createParameter("F021", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F022 = createParameter("F022", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F023 = createParameter("F023", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F024 = createParameter("F024", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F025 = createParameter("F025", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F026 = createParameter("F026", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F027 = createParameter("F027", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F028 = createParameter("F028", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F029 = createParameter("F029", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F030 = createParameter("F030", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F031 = createParameter("F031", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F032 = createParameter("F032", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F033 = createParameter("F033", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F034 = createParameter("F034", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F035 = createParameter("F035", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F036 = createParameter("F036", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F037 = createParameter("F037", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F038 = createParameter("F038", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F039 = createParameter("F039", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F040 = createParameter("F040", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F041 = createParameter("F041", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F042 = createParameter("F042", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F043 = createParameter("F043", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F044 = createParameter("F044", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F045 = createParameter("F045", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F046 = createParameter("F046", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F047 = createParameter("F047", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F048 = createParameter("F048", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F049 = createParameter("F049", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F050 = createParameter("F050", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F051 = createParameter("F051", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F052 = createParameter("F052", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F053 = createParameter("F053", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F054 = createParameter("F054", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F055 = createParameter("F055", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F056 = createParameter("F056", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F057 = createParameter("F057", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F058 = createParameter("F058", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F059 = createParameter("F059", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F060 = createParameter("F060", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F061 = createParameter("F061", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F062 = createParameter("F062", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F063 = createParameter("F063", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F064 = createParameter("F064", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F065 = createParameter("F065", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F066 = createParameter("F066", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F067 = createParameter("F067", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F068 = createParameter("F068", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F069 = createParameter("F069", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F070 = createParameter("F070", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F071 = createParameter("F071", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F072 = createParameter("F072", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F073 = createParameter("F073", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F074 = createParameter("F074", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F075 = createParameter("F075", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F076 = createParameter("F076", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F077 = createParameter("F077", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F078 = createParameter("F078", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F079 = createParameter("F079", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F080 = createParameter("F080", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F081 = createParameter("F081", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F082 = createParameter("F082", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F083 = createParameter("F083", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F084 = createParameter("F084", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F085 = createParameter("F085", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F086 = createParameter("F086", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F087 = createParameter("F087", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F088 = createParameter("F088", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F089 = createParameter("F089", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F090 = createParameter("F090", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F091 = createParameter("F091", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F092 = createParameter("F092", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F093 = createParameter("F093", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F094 = createParameter("F094", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F095 = createParameter("F095", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F096 = createParameter("F096", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F097 = createParameter("F097", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F098 = createParameter("F098", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F099 = createParameter("F099", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F100 = createParameter("F100", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F101 = createParameter("F101", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F102 = createParameter("F102", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F103 = createParameter("F103", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F104 = createParameter("F104", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F105 = createParameter("F105", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F106 = createParameter("F106", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F107 = createParameter("F107", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F108 = createParameter("F108", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F109 = createParameter("F109", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F110 = createParameter("F110", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F111 = createParameter("F111", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F112 = createParameter("F112", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F113 = createParameter("F113", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F114 = createParameter("F114", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F115 = createParameter("F115", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F116 = createParameter("F116", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F117 = createParameter("F117", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F118 = createParameter("F118", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F119 = createParameter("F119", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F120 = createParameter("F120", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F121 = createParameter("F121", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F122 = createParameter("F122", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F123 = createParameter("F123", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F124 = createParameter("F124", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F125 = createParameter("F125", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F126 = createParameter("F126", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F127 = createParameter("F127", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F128 = createParameter("F128", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F129 = createParameter("F129", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F130 = createParameter("F130", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F131 = createParameter("F131", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F132 = createParameter("F132", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F133 = createParameter("F133", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F134 = createParameter("F134", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F135 = createParameter("F135", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F136 = createParameter("F136", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F137 = createParameter("F137", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F138 = createParameter("F138", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F139 = createParameter("F139", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F140 = createParameter("F140", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F141 = createParameter("F141", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F142 = createParameter("F142", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F143 = createParameter("F143", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F144 = createParameter("F144", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F145 = createParameter("F145", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F146 = createParameter("F146", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F147 = createParameter("F147", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F148 = createParameter("F148", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F149 = createParameter("F149", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F150 = createParameter("F150", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F151 = createParameter("F151", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F152 = createParameter("F152", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F153 = createParameter("F153", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F154 = createParameter("F154", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F155 = createParameter("F155", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F156 = createParameter("F156", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F157 = createParameter("F157", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F158 = createParameter("F158", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F159 = createParameter("F159", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F160 = createParameter("F160", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F161 = createParameter("F161", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F162 = createParameter("F162", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F163 = createParameter("F163", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F164 = createParameter("F164", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F165 = createParameter("F165", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F166 = createParameter("F166", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F167 = createParameter("F167", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F168 = createParameter("F168", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F169 = createParameter("F169", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F170 = createParameter("F170", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F171 = createParameter("F171", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F172 = createParameter("F172", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F173 = createParameter("F173", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F174 = createParameter("F174", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F175 = createParameter("F175", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F176 = createParameter("F176", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F177 = createParameter("F177", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F178 = createParameter("F178", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F179 = createParameter("F179", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F180 = createParameter("F180", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F181 = createParameter("F181", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F182 = createParameter("F182", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F183 = createParameter("F183", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F184 = createParameter("F184", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F185 = createParameter("F185", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F186 = createParameter("F186", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F187 = createParameter("F187", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F188 = createParameter("F188", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F189 = createParameter("F189", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F190 = createParameter("F190", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F191 = createParameter("F191", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F192 = createParameter("F192", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F193 = createParameter("F193", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F194 = createParameter("F194", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F195 = createParameter("F195", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F196 = createParameter("F196", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F197 = createParameter("F197", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F198 = createParameter("F198", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F199 = createParameter("F199", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F200 = createParameter("F200", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F201 = createParameter("F201", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F202 = createParameter("F202", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F203 = createParameter("F203", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F204 = createParameter("F204", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F205 = createParameter("F205", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F206 = createParameter("F206", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F207 = createParameter("F207", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F208 = createParameter("F208", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F209 = createParameter("F209", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F210 = createParameter("F210", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F211 = createParameter("F211", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F212 = createParameter("F212", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F213 = createParameter("F213", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F214 = createParameter("F214", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F215 = createParameter("F215", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F216 = createParameter("F216", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F217 = createParameter("F217", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F218 = createParameter("F218", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F219 = createParameter("F219", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F220 = createParameter("F220", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F221 = createParameter("F221", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F222 = createParameter("F222", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F223 = createParameter("F223", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F224 = createParameter("F224", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F225 = createParameter("F225", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F226 = createParameter("F226", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F227 = createParameter("F227", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F228 = createParameter("F228", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F229 = createParameter("F229", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F230 = createParameter("F230", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F231 = createParameter("F231", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F232 = createParameter("F232", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F233 = createParameter("F233", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F234 = createParameter("F234", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F235 = createParameter("F235", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F236 = createParameter("F236", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F237 = createParameter("F237", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F238 = createParameter("F238", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F239 = createParameter("F239", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F240 = createParameter("F240", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F241 = createParameter("F241", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F242 = createParameter("F242", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F243 = createParameter("F243", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F244 = createParameter("F244", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F245 = createParameter("F245", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F246 = createParameter("F246", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F247 = createParameter("F247", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F248 = createParameter("F248", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F249 = createParameter("F249", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F250 = createParameter("F250", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F251 = createParameter("F251", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F252 = createParameter("F252", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F253 = createParameter("F253", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F254 = createParameter("F254", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F255 = createParameter("F255", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F256 = createParameter("F256", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F257 = createParameter("F257", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F258 = createParameter("F258", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F259 = createParameter("F259", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F260 = createParameter("F260", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F261 = createParameter("F261", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F262 = createParameter("F262", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F263 = createParameter("F263", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F264 = createParameter("F264", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F265 = createParameter("F265", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F266 = createParameter("F266", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F267 = createParameter("F267", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F268 = createParameter("F268", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F269 = createParameter("F269", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F270 = createParameter("F270", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F271 = createParameter("F271", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F272 = createParameter("F272", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F273 = createParameter("F273", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F274 = createParameter("F274", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F275 = createParameter("F275", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F276 = createParameter("F276", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F277 = createParameter("F277", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F278 = createParameter("F278", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F279 = createParameter("F279", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F280 = createParameter("F280", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F281 = createParameter("F281", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F282 = createParameter("F282", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F283 = createParameter("F283", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F284 = createParameter("F284", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F285 = createParameter("F285", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F286 = createParameter("F286", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F287 = createParameter("F287", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F288 = createParameter("F288", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F289 = createParameter("F289", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F290 = createParameter("F290", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F291 = createParameter("F291", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F292 = createParameter("F292", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F293 = createParameter("F293", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F294 = createParameter("F294", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F295 = createParameter("F295", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F296 = createParameter("F296", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F297 = createParameter("F297", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F298 = createParameter("F298", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F299 = createParameter("F299", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F300 = createParameter("F300", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F301 = createParameter("F301", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F302 = createParameter("F302", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F303 = createParameter("F303", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F304 = createParameter("F304", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F305 = createParameter("F305", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F306 = createParameter("F306", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F307 = createParameter("F307", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F308 = createParameter("F308", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F309 = createParameter("F309", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F310 = createParameter("F310", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F311 = createParameter("F311", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F312 = createParameter("F312", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F313 = createParameter("F313", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F314 = createParameter("F314", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F315 = createParameter("F315", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F316 = createParameter("F316", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F317 = createParameter("F317", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F318 = createParameter("F318", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F319 = createParameter("F319", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F320 = createParameter("F320", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F321 = createParameter("F321", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F322 = createParameter("F322", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F323 = createParameter("F323", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F324 = createParameter("F324", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F325 = createParameter("F325", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F326 = createParameter("F326", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F327 = createParameter("F327", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F328 = createParameter("F328", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F329 = createParameter("F329", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F330 = createParameter("F330", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F331 = createParameter("F331", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F332 = createParameter("F332", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F333 = createParameter("F333", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F334 = createParameter("F334", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F335 = createParameter("F335", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F336 = createParameter("F336", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F337 = createParameter("F337", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F338 = createParameter("F338", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F339 = createParameter("F339", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F340 = createParameter("F340", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F341 = createParameter("F341", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F342 = createParameter("F342", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F343 = createParameter("F343", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F344 = createParameter("F344", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F345 = createParameter("F345", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F346 = createParameter("F346", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F347 = createParameter("F347", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F348 = createParameter("F348", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F349 = createParameter("F349", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F350 = createParameter("F350", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F351 = createParameter("F351", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F352 = createParameter("F352", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F353 = createParameter("F353", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F354 = createParameter("F354", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F355 = createParameter("F355", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F356 = createParameter("F356", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F357 = createParameter("F357", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F358 = createParameter("F358", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F359 = createParameter("F359", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F360 = createParameter("F360", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F361 = createParameter("F361", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F362 = createParameter("F362", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F363 = createParameter("F363", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F364 = createParameter("F364", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F365 = createParameter("F365", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F366 = createParameter("F366", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F367 = createParameter("F367", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F368 = createParameter("F368", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F369 = createParameter("F369", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F370 = createParameter("F370", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F371 = createParameter("F371", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F372 = createParameter("F372", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F373 = createParameter("F373", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F374 = createParameter("F374", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F375 = createParameter("F375", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F376 = createParameter("F376", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F377 = createParameter("F377", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F378 = createParameter("F378", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F379 = createParameter("F379", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F380 = createParameter("F380", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F381 = createParameter("F381", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F382 = createParameter("F382", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F383 = createParameter("F383", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F384 = createParameter("F384", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F385 = createParameter("F385", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F386 = createParameter("F386", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F387 = createParameter("F387", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F388 = createParameter("F388", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F389 = createParameter("F389", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F390 = createParameter("F390", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F391 = createParameter("F391", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F392 = createParameter("F392", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F393 = createParameter("F393", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F394 = createParameter("F394", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F395 = createParameter("F395", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F396 = createParameter("F396", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F397 = createParameter("F397", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F398 = createParameter("F398", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F399 = createParameter("F399", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * Create a new routine call instance + */ + public PManyParameters() { + super("P_MANY_PARAMETERS", org.jooq.test.oracle.generatedclasses.test.Test.TEST); + + addInParameter(F000); + addInParameter(F001); + addInParameter(F002); + addInParameter(F003); + addInParameter(F004); + addInParameter(F005); + addInParameter(F006); + addInParameter(F007); + addInParameter(F008); + addInParameter(F009); + addInParameter(F010); + addInParameter(F011); + addInParameter(F012); + addInParameter(F013); + addInParameter(F014); + addInParameter(F015); + addInParameter(F016); + addInParameter(F017); + addInParameter(F018); + addInParameter(F019); + addInParameter(F020); + addInParameter(F021); + addInParameter(F022); + addInParameter(F023); + addInParameter(F024); + addInParameter(F025); + addInParameter(F026); + addInParameter(F027); + addInParameter(F028); + addInParameter(F029); + addInParameter(F030); + addInParameter(F031); + addInParameter(F032); + addInParameter(F033); + addInParameter(F034); + addInParameter(F035); + addInParameter(F036); + addInParameter(F037); + addInParameter(F038); + addInParameter(F039); + addInParameter(F040); + addInParameter(F041); + addInParameter(F042); + addInParameter(F043); + addInParameter(F044); + addInParameter(F045); + addInParameter(F046); + addInParameter(F047); + addInParameter(F048); + addInParameter(F049); + addInParameter(F050); + addInParameter(F051); + addInParameter(F052); + addInParameter(F053); + addInParameter(F054); + addInParameter(F055); + addInParameter(F056); + addInParameter(F057); + addInParameter(F058); + addInParameter(F059); + addInParameter(F060); + addInParameter(F061); + addInParameter(F062); + addInParameter(F063); + addInParameter(F064); + addInParameter(F065); + addInParameter(F066); + addInParameter(F067); + addInParameter(F068); + addInParameter(F069); + addInParameter(F070); + addInParameter(F071); + addInParameter(F072); + addInParameter(F073); + addInParameter(F074); + addInParameter(F075); + addInParameter(F076); + addInParameter(F077); + addInParameter(F078); + addInParameter(F079); + addInParameter(F080); + addInParameter(F081); + addInParameter(F082); + addInParameter(F083); + addInParameter(F084); + addInParameter(F085); + addInParameter(F086); + addInParameter(F087); + addInParameter(F088); + addInParameter(F089); + addInParameter(F090); + addInParameter(F091); + addInParameter(F092); + addInParameter(F093); + addInParameter(F094); + addInParameter(F095); + addInParameter(F096); + addInParameter(F097); + addInParameter(F098); + addInParameter(F099); + addInParameter(F100); + addInParameter(F101); + addInParameter(F102); + addInParameter(F103); + addInParameter(F104); + addInParameter(F105); + addInParameter(F106); + addInParameter(F107); + addInParameter(F108); + addInParameter(F109); + addInParameter(F110); + addInParameter(F111); + addInParameter(F112); + addInParameter(F113); + addInParameter(F114); + addInParameter(F115); + addInParameter(F116); + addInParameter(F117); + addInParameter(F118); + addInParameter(F119); + addInParameter(F120); + addInParameter(F121); + addInParameter(F122); + addInParameter(F123); + addInParameter(F124); + addInParameter(F125); + addInParameter(F126); + addInParameter(F127); + addInParameter(F128); + addInParameter(F129); + addInParameter(F130); + addInParameter(F131); + addInParameter(F132); + addInParameter(F133); + addInParameter(F134); + addInParameter(F135); + addInParameter(F136); + addInParameter(F137); + addInParameter(F138); + addInParameter(F139); + addInParameter(F140); + addInParameter(F141); + addInParameter(F142); + addInParameter(F143); + addInParameter(F144); + addInParameter(F145); + addInParameter(F146); + addInParameter(F147); + addInParameter(F148); + addInParameter(F149); + addInParameter(F150); + addInParameter(F151); + addInParameter(F152); + addInParameter(F153); + addInParameter(F154); + addInParameter(F155); + addInParameter(F156); + addInParameter(F157); + addInParameter(F158); + addInParameter(F159); + addInParameter(F160); + addInParameter(F161); + addInParameter(F162); + addInParameter(F163); + addInParameter(F164); + addInParameter(F165); + addInParameter(F166); + addInParameter(F167); + addInParameter(F168); + addInParameter(F169); + addInParameter(F170); + addInParameter(F171); + addInParameter(F172); + addInParameter(F173); + addInParameter(F174); + addInParameter(F175); + addInParameter(F176); + addInParameter(F177); + addInParameter(F178); + addInParameter(F179); + addInParameter(F180); + addInParameter(F181); + addInParameter(F182); + addInParameter(F183); + addInParameter(F184); + addInParameter(F185); + addInParameter(F186); + addInParameter(F187); + addInParameter(F188); + addInParameter(F189); + addInParameter(F190); + addInParameter(F191); + addInParameter(F192); + addInParameter(F193); + addInParameter(F194); + addInParameter(F195); + addInParameter(F196); + addInParameter(F197); + addInParameter(F198); + addInParameter(F199); + addInParameter(F200); + addInParameter(F201); + addInParameter(F202); + addInParameter(F203); + addInParameter(F204); + addInParameter(F205); + addInParameter(F206); + addInParameter(F207); + addInParameter(F208); + addInParameter(F209); + addInParameter(F210); + addInParameter(F211); + addInParameter(F212); + addInParameter(F213); + addInParameter(F214); + addInParameter(F215); + addInParameter(F216); + addInParameter(F217); + addInParameter(F218); + addInParameter(F219); + addInParameter(F220); + addInParameter(F221); + addInParameter(F222); + addInParameter(F223); + addInParameter(F224); + addInParameter(F225); + addInParameter(F226); + addInParameter(F227); + addInParameter(F228); + addInParameter(F229); + addInParameter(F230); + addInParameter(F231); + addInParameter(F232); + addInParameter(F233); + addInParameter(F234); + addInParameter(F235); + addInParameter(F236); + addInParameter(F237); + addInParameter(F238); + addInParameter(F239); + addInParameter(F240); + addInParameter(F241); + addInParameter(F242); + addInParameter(F243); + addInParameter(F244); + addInParameter(F245); + addInParameter(F246); + addInParameter(F247); + addInParameter(F248); + addInParameter(F249); + addInParameter(F250); + addInParameter(F251); + addInParameter(F252); + addInParameter(F253); + addInParameter(F254); + addInParameter(F255); + addInParameter(F256); + addInParameter(F257); + addInParameter(F258); + addInParameter(F259); + addInParameter(F260); + addInParameter(F261); + addInParameter(F262); + addInParameter(F263); + addInParameter(F264); + addInParameter(F265); + addInParameter(F266); + addInParameter(F267); + addInParameter(F268); + addInParameter(F269); + addInParameter(F270); + addInParameter(F271); + addInParameter(F272); + addInParameter(F273); + addInParameter(F274); + addInParameter(F275); + addInParameter(F276); + addInParameter(F277); + addInParameter(F278); + addInParameter(F279); + addInParameter(F280); + addInParameter(F281); + addInParameter(F282); + addInParameter(F283); + addInParameter(F284); + addInParameter(F285); + addInParameter(F286); + addInParameter(F287); + addInParameter(F288); + addInParameter(F289); + addInParameter(F290); + addInParameter(F291); + addInParameter(F292); + addInParameter(F293); + addInParameter(F294); + addInParameter(F295); + addInParameter(F296); + addInParameter(F297); + addInParameter(F298); + addInParameter(F299); + addInParameter(F300); + addInParameter(F301); + addInParameter(F302); + addInParameter(F303); + addInParameter(F304); + addInParameter(F305); + addInParameter(F306); + addInParameter(F307); + addInParameter(F308); + addInParameter(F309); + addInParameter(F310); + addInParameter(F311); + addInParameter(F312); + addInParameter(F313); + addInParameter(F314); + addInParameter(F315); + addInParameter(F316); + addInParameter(F317); + addInParameter(F318); + addInParameter(F319); + addInParameter(F320); + addInParameter(F321); + addInParameter(F322); + addInParameter(F323); + addInParameter(F324); + addInParameter(F325); + addInParameter(F326); + addInParameter(F327); + addInParameter(F328); + addInParameter(F329); + addInParameter(F330); + addInParameter(F331); + addInParameter(F332); + addInParameter(F333); + addInParameter(F334); + addInParameter(F335); + addInParameter(F336); + addInParameter(F337); + addInParameter(F338); + addInParameter(F339); + addInParameter(F340); + addInParameter(F341); + addInParameter(F342); + addInParameter(F343); + addInParameter(F344); + addInParameter(F345); + addInParameter(F346); + addInParameter(F347); + addInParameter(F348); + addInParameter(F349); + addInParameter(F350); + addInParameter(F351); + addInParameter(F352); + addInParameter(F353); + addInParameter(F354); + addInParameter(F355); + addInParameter(F356); + addInParameter(F357); + addInParameter(F358); + addInParameter(F359); + addInParameter(F360); + addInParameter(F361); + addInParameter(F362); + addInParameter(F363); + addInParameter(F364); + addInParameter(F365); + addInParameter(F366); + addInParameter(F367); + addInParameter(F368); + addInParameter(F369); + addInParameter(F370); + addInParameter(F371); + addInParameter(F372); + addInParameter(F373); + addInParameter(F374); + addInParameter(F375); + addInParameter(F376); + addInParameter(F377); + addInParameter(F378); + addInParameter(F379); + addInParameter(F380); + addInParameter(F381); + addInParameter(F382); + addInParameter(F383); + addInParameter(F384); + addInParameter(F385); + addInParameter(F386); + addInParameter(F387); + addInParameter(F388); + addInParameter(F389); + addInParameter(F390); + addInParameter(F391); + addInParameter(F392); + addInParameter(F393); + addInParameter(F394); + addInParameter(F395); + addInParameter(F396); + addInParameter(F397); + addInParameter(F398); + addInParameter(F399); + } + + /** + * Set the F000 parameter to the routine + */ + public void setF000(java.lang.Number value) { + setNumber(F000, value); + } + + /** + * Set the F001 parameter to the routine + */ + public void setF001(java.lang.Number value) { + setNumber(F001, value); + } + + /** + * Set the F002 parameter to the routine + */ + public void setF002(java.lang.Number value) { + setNumber(F002, value); + } + + /** + * Set the F003 parameter to the routine + */ + public void setF003(java.lang.Number value) { + setNumber(F003, value); + } + + /** + * Set the F004 parameter to the routine + */ + public void setF004(java.lang.Number value) { + setNumber(F004, value); + } + + /** + * Set the F005 parameter to the routine + */ + public void setF005(java.lang.Number value) { + setNumber(F005, value); + } + + /** + * Set the F006 parameter to the routine + */ + public void setF006(java.lang.Number value) { + setNumber(F006, value); + } + + /** + * Set the F007 parameter to the routine + */ + public void setF007(java.lang.Number value) { + setNumber(F007, value); + } + + /** + * Set the F008 parameter to the routine + */ + public void setF008(java.lang.Number value) { + setNumber(F008, value); + } + + /** + * Set the F009 parameter to the routine + */ + public void setF009(java.lang.Number value) { + setNumber(F009, value); + } + + /** + * Set the F010 parameter to the routine + */ + public void setF010(java.lang.Number value) { + setNumber(F010, value); + } + + /** + * Set the F011 parameter to the routine + */ + public void setF011(java.lang.Number value) { + setNumber(F011, value); + } + + /** + * Set the F012 parameter to the routine + */ + public void setF012(java.lang.Number value) { + setNumber(F012, value); + } + + /** + * Set the F013 parameter to the routine + */ + public void setF013(java.lang.Number value) { + setNumber(F013, value); + } + + /** + * Set the F014 parameter to the routine + */ + public void setF014(java.lang.Number value) { + setNumber(F014, value); + } + + /** + * Set the F015 parameter to the routine + */ + public void setF015(java.lang.Number value) { + setNumber(F015, value); + } + + /** + * Set the F016 parameter to the routine + */ + public void setF016(java.lang.Number value) { + setNumber(F016, value); + } + + /** + * Set the F017 parameter to the routine + */ + public void setF017(java.lang.Number value) { + setNumber(F017, value); + } + + /** + * Set the F018 parameter to the routine + */ + public void setF018(java.lang.Number value) { + setNumber(F018, value); + } + + /** + * Set the F019 parameter to the routine + */ + public void setF019(java.lang.Number value) { + setNumber(F019, value); + } + + /** + * Set the F020 parameter to the routine + */ + public void setF020(java.lang.Number value) { + setNumber(F020, value); + } + + /** + * Set the F021 parameter to the routine + */ + public void setF021(java.lang.Number value) { + setNumber(F021, value); + } + + /** + * Set the F022 parameter to the routine + */ + public void setF022(java.lang.Number value) { + setNumber(F022, value); + } + + /** + * Set the F023 parameter to the routine + */ + public void setF023(java.lang.Number value) { + setNumber(F023, value); + } + + /** + * Set the F024 parameter to the routine + */ + public void setF024(java.lang.Number value) { + setNumber(F024, value); + } + + /** + * Set the F025 parameter to the routine + */ + public void setF025(java.lang.Number value) { + setNumber(F025, value); + } + + /** + * Set the F026 parameter to the routine + */ + public void setF026(java.lang.Number value) { + setNumber(F026, value); + } + + /** + * Set the F027 parameter to the routine + */ + public void setF027(java.lang.Number value) { + setNumber(F027, value); + } + + /** + * Set the F028 parameter to the routine + */ + public void setF028(java.lang.Number value) { + setNumber(F028, value); + } + + /** + * Set the F029 parameter to the routine + */ + public void setF029(java.lang.Number value) { + setNumber(F029, value); + } + + /** + * Set the F030 parameter to the routine + */ + public void setF030(java.lang.Number value) { + setNumber(F030, value); + } + + /** + * Set the F031 parameter to the routine + */ + public void setF031(java.lang.Number value) { + setNumber(F031, value); + } + + /** + * Set the F032 parameter to the routine + */ + public void setF032(java.lang.Number value) { + setNumber(F032, value); + } + + /** + * Set the F033 parameter to the routine + */ + public void setF033(java.lang.Number value) { + setNumber(F033, value); + } + + /** + * Set the F034 parameter to the routine + */ + public void setF034(java.lang.Number value) { + setNumber(F034, value); + } + + /** + * Set the F035 parameter to the routine + */ + public void setF035(java.lang.Number value) { + setNumber(F035, value); + } + + /** + * Set the F036 parameter to the routine + */ + public void setF036(java.lang.Number value) { + setNumber(F036, value); + } + + /** + * Set the F037 parameter to the routine + */ + public void setF037(java.lang.Number value) { + setNumber(F037, value); + } + + /** + * Set the F038 parameter to the routine + */ + public void setF038(java.lang.Number value) { + setNumber(F038, value); + } + + /** + * Set the F039 parameter to the routine + */ + public void setF039(java.lang.Number value) { + setNumber(F039, value); + } + + /** + * Set the F040 parameter to the routine + */ + public void setF040(java.lang.Number value) { + setNumber(F040, value); + } + + /** + * Set the F041 parameter to the routine + */ + public void setF041(java.lang.Number value) { + setNumber(F041, value); + } + + /** + * Set the F042 parameter to the routine + */ + public void setF042(java.lang.Number value) { + setNumber(F042, value); + } + + /** + * Set the F043 parameter to the routine + */ + public void setF043(java.lang.Number value) { + setNumber(F043, value); + } + + /** + * Set the F044 parameter to the routine + */ + public void setF044(java.lang.Number value) { + setNumber(F044, value); + } + + /** + * Set the F045 parameter to the routine + */ + public void setF045(java.lang.Number value) { + setNumber(F045, value); + } + + /** + * Set the F046 parameter to the routine + */ + public void setF046(java.lang.Number value) { + setNumber(F046, value); + } + + /** + * Set the F047 parameter to the routine + */ + public void setF047(java.lang.Number value) { + setNumber(F047, value); + } + + /** + * Set the F048 parameter to the routine + */ + public void setF048(java.lang.Number value) { + setNumber(F048, value); + } + + /** + * Set the F049 parameter to the routine + */ + public void setF049(java.lang.Number value) { + setNumber(F049, value); + } + + /** + * Set the F050 parameter to the routine + */ + public void setF050(java.lang.Number value) { + setNumber(F050, value); + } + + /** + * Set the F051 parameter to the routine + */ + public void setF051(java.lang.Number value) { + setNumber(F051, value); + } + + /** + * Set the F052 parameter to the routine + */ + public void setF052(java.lang.Number value) { + setNumber(F052, value); + } + + /** + * Set the F053 parameter to the routine + */ + public void setF053(java.lang.Number value) { + setNumber(F053, value); + } + + /** + * Set the F054 parameter to the routine + */ + public void setF054(java.lang.Number value) { + setNumber(F054, value); + } + + /** + * Set the F055 parameter to the routine + */ + public void setF055(java.lang.Number value) { + setNumber(F055, value); + } + + /** + * Set the F056 parameter to the routine + */ + public void setF056(java.lang.Number value) { + setNumber(F056, value); + } + + /** + * Set the F057 parameter to the routine + */ + public void setF057(java.lang.Number value) { + setNumber(F057, value); + } + + /** + * Set the F058 parameter to the routine + */ + public void setF058(java.lang.Number value) { + setNumber(F058, value); + } + + /** + * Set the F059 parameter to the routine + */ + public void setF059(java.lang.Number value) { + setNumber(F059, value); + } + + /** + * Set the F060 parameter to the routine + */ + public void setF060(java.lang.Number value) { + setNumber(F060, value); + } + + /** + * Set the F061 parameter to the routine + */ + public void setF061(java.lang.Number value) { + setNumber(F061, value); + } + + /** + * Set the F062 parameter to the routine + */ + public void setF062(java.lang.Number value) { + setNumber(F062, value); + } + + /** + * Set the F063 parameter to the routine + */ + public void setF063(java.lang.Number value) { + setNumber(F063, value); + } + + /** + * Set the F064 parameter to the routine + */ + public void setF064(java.lang.Number value) { + setNumber(F064, value); + } + + /** + * Set the F065 parameter to the routine + */ + public void setF065(java.lang.Number value) { + setNumber(F065, value); + } + + /** + * Set the F066 parameter to the routine + */ + public void setF066(java.lang.Number value) { + setNumber(F066, value); + } + + /** + * Set the F067 parameter to the routine + */ + public void setF067(java.lang.Number value) { + setNumber(F067, value); + } + + /** + * Set the F068 parameter to the routine + */ + public void setF068(java.lang.Number value) { + setNumber(F068, value); + } + + /** + * Set the F069 parameter to the routine + */ + public void setF069(java.lang.Number value) { + setNumber(F069, value); + } + + /** + * Set the F070 parameter to the routine + */ + public void setF070(java.lang.Number value) { + setNumber(F070, value); + } + + /** + * Set the F071 parameter to the routine + */ + public void setF071(java.lang.Number value) { + setNumber(F071, value); + } + + /** + * Set the F072 parameter to the routine + */ + public void setF072(java.lang.Number value) { + setNumber(F072, value); + } + + /** + * Set the F073 parameter to the routine + */ + public void setF073(java.lang.Number value) { + setNumber(F073, value); + } + + /** + * Set the F074 parameter to the routine + */ + public void setF074(java.lang.Number value) { + setNumber(F074, value); + } + + /** + * Set the F075 parameter to the routine + */ + public void setF075(java.lang.Number value) { + setNumber(F075, value); + } + + /** + * Set the F076 parameter to the routine + */ + public void setF076(java.lang.Number value) { + setNumber(F076, value); + } + + /** + * Set the F077 parameter to the routine + */ + public void setF077(java.lang.Number value) { + setNumber(F077, value); + } + + /** + * Set the F078 parameter to the routine + */ + public void setF078(java.lang.Number value) { + setNumber(F078, value); + } + + /** + * Set the F079 parameter to the routine + */ + public void setF079(java.lang.Number value) { + setNumber(F079, value); + } + + /** + * Set the F080 parameter to the routine + */ + public void setF080(java.lang.Number value) { + setNumber(F080, value); + } + + /** + * Set the F081 parameter to the routine + */ + public void setF081(java.lang.Number value) { + setNumber(F081, value); + } + + /** + * Set the F082 parameter to the routine + */ + public void setF082(java.lang.Number value) { + setNumber(F082, value); + } + + /** + * Set the F083 parameter to the routine + */ + public void setF083(java.lang.Number value) { + setNumber(F083, value); + } + + /** + * Set the F084 parameter to the routine + */ + public void setF084(java.lang.Number value) { + setNumber(F084, value); + } + + /** + * Set the F085 parameter to the routine + */ + public void setF085(java.lang.Number value) { + setNumber(F085, value); + } + + /** + * Set the F086 parameter to the routine + */ + public void setF086(java.lang.Number value) { + setNumber(F086, value); + } + + /** + * Set the F087 parameter to the routine + */ + public void setF087(java.lang.Number value) { + setNumber(F087, value); + } + + /** + * Set the F088 parameter to the routine + */ + public void setF088(java.lang.Number value) { + setNumber(F088, value); + } + + /** + * Set the F089 parameter to the routine + */ + public void setF089(java.lang.Number value) { + setNumber(F089, value); + } + + /** + * Set the F090 parameter to the routine + */ + public void setF090(java.lang.Number value) { + setNumber(F090, value); + } + + /** + * Set the F091 parameter to the routine + */ + public void setF091(java.lang.Number value) { + setNumber(F091, value); + } + + /** + * Set the F092 parameter to the routine + */ + public void setF092(java.lang.Number value) { + setNumber(F092, value); + } + + /** + * Set the F093 parameter to the routine + */ + public void setF093(java.lang.Number value) { + setNumber(F093, value); + } + + /** + * Set the F094 parameter to the routine + */ + public void setF094(java.lang.Number value) { + setNumber(F094, value); + } + + /** + * Set the F095 parameter to the routine + */ + public void setF095(java.lang.Number value) { + setNumber(F095, value); + } + + /** + * Set the F096 parameter to the routine + */ + public void setF096(java.lang.Number value) { + setNumber(F096, value); + } + + /** + * Set the F097 parameter to the routine + */ + public void setF097(java.lang.Number value) { + setNumber(F097, value); + } + + /** + * Set the F098 parameter to the routine + */ + public void setF098(java.lang.Number value) { + setNumber(F098, value); + } + + /** + * Set the F099 parameter to the routine + */ + public void setF099(java.lang.Number value) { + setNumber(F099, value); + } + + /** + * Set the F100 parameter to the routine + */ + public void setF100(java.lang.Number value) { + setNumber(F100, value); + } + + /** + * Set the F101 parameter to the routine + */ + public void setF101(java.lang.Number value) { + setNumber(F101, value); + } + + /** + * Set the F102 parameter to the routine + */ + public void setF102(java.lang.Number value) { + setNumber(F102, value); + } + + /** + * Set the F103 parameter to the routine + */ + public void setF103(java.lang.Number value) { + setNumber(F103, value); + } + + /** + * Set the F104 parameter to the routine + */ + public void setF104(java.lang.Number value) { + setNumber(F104, value); + } + + /** + * Set the F105 parameter to the routine + */ + public void setF105(java.lang.Number value) { + setNumber(F105, value); + } + + /** + * Set the F106 parameter to the routine + */ + public void setF106(java.lang.Number value) { + setNumber(F106, value); + } + + /** + * Set the F107 parameter to the routine + */ + public void setF107(java.lang.Number value) { + setNumber(F107, value); + } + + /** + * Set the F108 parameter to the routine + */ + public void setF108(java.lang.Number value) { + setNumber(F108, value); + } + + /** + * Set the F109 parameter to the routine + */ + public void setF109(java.lang.Number value) { + setNumber(F109, value); + } + + /** + * Set the F110 parameter to the routine + */ + public void setF110(java.lang.Number value) { + setNumber(F110, value); + } + + /** + * Set the F111 parameter to the routine + */ + public void setF111(java.lang.Number value) { + setNumber(F111, value); + } + + /** + * Set the F112 parameter to the routine + */ + public void setF112(java.lang.Number value) { + setNumber(F112, value); + } + + /** + * Set the F113 parameter to the routine + */ + public void setF113(java.lang.Number value) { + setNumber(F113, value); + } + + /** + * Set the F114 parameter to the routine + */ + public void setF114(java.lang.Number value) { + setNumber(F114, value); + } + + /** + * Set the F115 parameter to the routine + */ + public void setF115(java.lang.Number value) { + setNumber(F115, value); + } + + /** + * Set the F116 parameter to the routine + */ + public void setF116(java.lang.Number value) { + setNumber(F116, value); + } + + /** + * Set the F117 parameter to the routine + */ + public void setF117(java.lang.Number value) { + setNumber(F117, value); + } + + /** + * Set the F118 parameter to the routine + */ + public void setF118(java.lang.Number value) { + setNumber(F118, value); + } + + /** + * Set the F119 parameter to the routine + */ + public void setF119(java.lang.Number value) { + setNumber(F119, value); + } + + /** + * Set the F120 parameter to the routine + */ + public void setF120(java.lang.Number value) { + setNumber(F120, value); + } + + /** + * Set the F121 parameter to the routine + */ + public void setF121(java.lang.Number value) { + setNumber(F121, value); + } + + /** + * Set the F122 parameter to the routine + */ + public void setF122(java.lang.Number value) { + setNumber(F122, value); + } + + /** + * Set the F123 parameter to the routine + */ + public void setF123(java.lang.Number value) { + setNumber(F123, value); + } + + /** + * Set the F124 parameter to the routine + */ + public void setF124(java.lang.Number value) { + setNumber(F124, value); + } + + /** + * Set the F125 parameter to the routine + */ + public void setF125(java.lang.Number value) { + setNumber(F125, value); + } + + /** + * Set the F126 parameter to the routine + */ + public void setF126(java.lang.Number value) { + setNumber(F126, value); + } + + /** + * Set the F127 parameter to the routine + */ + public void setF127(java.lang.Number value) { + setNumber(F127, value); + } + + /** + * Set the F128 parameter to the routine + */ + public void setF128(java.lang.Number value) { + setNumber(F128, value); + } + + /** + * Set the F129 parameter to the routine + */ + public void setF129(java.lang.Number value) { + setNumber(F129, value); + } + + /** + * Set the F130 parameter to the routine + */ + public void setF130(java.lang.Number value) { + setNumber(F130, value); + } + + /** + * Set the F131 parameter to the routine + */ + public void setF131(java.lang.Number value) { + setNumber(F131, value); + } + + /** + * Set the F132 parameter to the routine + */ + public void setF132(java.lang.Number value) { + setNumber(F132, value); + } + + /** + * Set the F133 parameter to the routine + */ + public void setF133(java.lang.Number value) { + setNumber(F133, value); + } + + /** + * Set the F134 parameter to the routine + */ + public void setF134(java.lang.Number value) { + setNumber(F134, value); + } + + /** + * Set the F135 parameter to the routine + */ + public void setF135(java.lang.Number value) { + setNumber(F135, value); + } + + /** + * Set the F136 parameter to the routine + */ + public void setF136(java.lang.Number value) { + setNumber(F136, value); + } + + /** + * Set the F137 parameter to the routine + */ + public void setF137(java.lang.Number value) { + setNumber(F137, value); + } + + /** + * Set the F138 parameter to the routine + */ + public void setF138(java.lang.Number value) { + setNumber(F138, value); + } + + /** + * Set the F139 parameter to the routine + */ + public void setF139(java.lang.Number value) { + setNumber(F139, value); + } + + /** + * Set the F140 parameter to the routine + */ + public void setF140(java.lang.Number value) { + setNumber(F140, value); + } + + /** + * Set the F141 parameter to the routine + */ + public void setF141(java.lang.Number value) { + setNumber(F141, value); + } + + /** + * Set the F142 parameter to the routine + */ + public void setF142(java.lang.Number value) { + setNumber(F142, value); + } + + /** + * Set the F143 parameter to the routine + */ + public void setF143(java.lang.Number value) { + setNumber(F143, value); + } + + /** + * Set the F144 parameter to the routine + */ + public void setF144(java.lang.Number value) { + setNumber(F144, value); + } + + /** + * Set the F145 parameter to the routine + */ + public void setF145(java.lang.Number value) { + setNumber(F145, value); + } + + /** + * Set the F146 parameter to the routine + */ + public void setF146(java.lang.Number value) { + setNumber(F146, value); + } + + /** + * Set the F147 parameter to the routine + */ + public void setF147(java.lang.Number value) { + setNumber(F147, value); + } + + /** + * Set the F148 parameter to the routine + */ + public void setF148(java.lang.Number value) { + setNumber(F148, value); + } + + /** + * Set the F149 parameter to the routine + */ + public void setF149(java.lang.Number value) { + setNumber(F149, value); + } + + /** + * Set the F150 parameter to the routine + */ + public void setF150(java.lang.Number value) { + setNumber(F150, value); + } + + /** + * Set the F151 parameter to the routine + */ + public void setF151(java.lang.Number value) { + setNumber(F151, value); + } + + /** + * Set the F152 parameter to the routine + */ + public void setF152(java.lang.Number value) { + setNumber(F152, value); + } + + /** + * Set the F153 parameter to the routine + */ + public void setF153(java.lang.Number value) { + setNumber(F153, value); + } + + /** + * Set the F154 parameter to the routine + */ + public void setF154(java.lang.Number value) { + setNumber(F154, value); + } + + /** + * Set the F155 parameter to the routine + */ + public void setF155(java.lang.Number value) { + setNumber(F155, value); + } + + /** + * Set the F156 parameter to the routine + */ + public void setF156(java.lang.Number value) { + setNumber(F156, value); + } + + /** + * Set the F157 parameter to the routine + */ + public void setF157(java.lang.Number value) { + setNumber(F157, value); + } + + /** + * Set the F158 parameter to the routine + */ + public void setF158(java.lang.Number value) { + setNumber(F158, value); + } + + /** + * Set the F159 parameter to the routine + */ + public void setF159(java.lang.Number value) { + setNumber(F159, value); + } + + /** + * Set the F160 parameter to the routine + */ + public void setF160(java.lang.Number value) { + setNumber(F160, value); + } + + /** + * Set the F161 parameter to the routine + */ + public void setF161(java.lang.Number value) { + setNumber(F161, value); + } + + /** + * Set the F162 parameter to the routine + */ + public void setF162(java.lang.Number value) { + setNumber(F162, value); + } + + /** + * Set the F163 parameter to the routine + */ + public void setF163(java.lang.Number value) { + setNumber(F163, value); + } + + /** + * Set the F164 parameter to the routine + */ + public void setF164(java.lang.Number value) { + setNumber(F164, value); + } + + /** + * Set the F165 parameter to the routine + */ + public void setF165(java.lang.Number value) { + setNumber(F165, value); + } + + /** + * Set the F166 parameter to the routine + */ + public void setF166(java.lang.Number value) { + setNumber(F166, value); + } + + /** + * Set the F167 parameter to the routine + */ + public void setF167(java.lang.Number value) { + setNumber(F167, value); + } + + /** + * Set the F168 parameter to the routine + */ + public void setF168(java.lang.Number value) { + setNumber(F168, value); + } + + /** + * Set the F169 parameter to the routine + */ + public void setF169(java.lang.Number value) { + setNumber(F169, value); + } + + /** + * Set the F170 parameter to the routine + */ + public void setF170(java.lang.Number value) { + setNumber(F170, value); + } + + /** + * Set the F171 parameter to the routine + */ + public void setF171(java.lang.Number value) { + setNumber(F171, value); + } + + /** + * Set the F172 parameter to the routine + */ + public void setF172(java.lang.Number value) { + setNumber(F172, value); + } + + /** + * Set the F173 parameter to the routine + */ + public void setF173(java.lang.Number value) { + setNumber(F173, value); + } + + /** + * Set the F174 parameter to the routine + */ + public void setF174(java.lang.Number value) { + setNumber(F174, value); + } + + /** + * Set the F175 parameter to the routine + */ + public void setF175(java.lang.Number value) { + setNumber(F175, value); + } + + /** + * Set the F176 parameter to the routine + */ + public void setF176(java.lang.Number value) { + setNumber(F176, value); + } + + /** + * Set the F177 parameter to the routine + */ + public void setF177(java.lang.Number value) { + setNumber(F177, value); + } + + /** + * Set the F178 parameter to the routine + */ + public void setF178(java.lang.Number value) { + setNumber(F178, value); + } + + /** + * Set the F179 parameter to the routine + */ + public void setF179(java.lang.Number value) { + setNumber(F179, value); + } + + /** + * Set the F180 parameter to the routine + */ + public void setF180(java.lang.Number value) { + setNumber(F180, value); + } + + /** + * Set the F181 parameter to the routine + */ + public void setF181(java.lang.Number value) { + setNumber(F181, value); + } + + /** + * Set the F182 parameter to the routine + */ + public void setF182(java.lang.Number value) { + setNumber(F182, value); + } + + /** + * Set the F183 parameter to the routine + */ + public void setF183(java.lang.Number value) { + setNumber(F183, value); + } + + /** + * Set the F184 parameter to the routine + */ + public void setF184(java.lang.Number value) { + setNumber(F184, value); + } + + /** + * Set the F185 parameter to the routine + */ + public void setF185(java.lang.Number value) { + setNumber(F185, value); + } + + /** + * Set the F186 parameter to the routine + */ + public void setF186(java.lang.Number value) { + setNumber(F186, value); + } + + /** + * Set the F187 parameter to the routine + */ + public void setF187(java.lang.Number value) { + setNumber(F187, value); + } + + /** + * Set the F188 parameter to the routine + */ + public void setF188(java.lang.Number value) { + setNumber(F188, value); + } + + /** + * Set the F189 parameter to the routine + */ + public void setF189(java.lang.Number value) { + setNumber(F189, value); + } + + /** + * Set the F190 parameter to the routine + */ + public void setF190(java.lang.Number value) { + setNumber(F190, value); + } + + /** + * Set the F191 parameter to the routine + */ + public void setF191(java.lang.Number value) { + setNumber(F191, value); + } + + /** + * Set the F192 parameter to the routine + */ + public void setF192(java.lang.Number value) { + setNumber(F192, value); + } + + /** + * Set the F193 parameter to the routine + */ + public void setF193(java.lang.Number value) { + setNumber(F193, value); + } + + /** + * Set the F194 parameter to the routine + */ + public void setF194(java.lang.Number value) { + setNumber(F194, value); + } + + /** + * Set the F195 parameter to the routine + */ + public void setF195(java.lang.Number value) { + setNumber(F195, value); + } + + /** + * Set the F196 parameter to the routine + */ + public void setF196(java.lang.Number value) { + setNumber(F196, value); + } + + /** + * Set the F197 parameter to the routine + */ + public void setF197(java.lang.Number value) { + setNumber(F197, value); + } + + /** + * Set the F198 parameter to the routine + */ + public void setF198(java.lang.Number value) { + setNumber(F198, value); + } + + /** + * Set the F199 parameter to the routine + */ + public void setF199(java.lang.Number value) { + setNumber(F199, value); + } + + /** + * Set the F200 parameter to the routine + */ + public void setF200(java.lang.Number value) { + setNumber(F200, value); + } + + /** + * Set the F201 parameter to the routine + */ + public void setF201(java.lang.Number value) { + setNumber(F201, value); + } + + /** + * Set the F202 parameter to the routine + */ + public void setF202(java.lang.Number value) { + setNumber(F202, value); + } + + /** + * Set the F203 parameter to the routine + */ + public void setF203(java.lang.Number value) { + setNumber(F203, value); + } + + /** + * Set the F204 parameter to the routine + */ + public void setF204(java.lang.Number value) { + setNumber(F204, value); + } + + /** + * Set the F205 parameter to the routine + */ + public void setF205(java.lang.Number value) { + setNumber(F205, value); + } + + /** + * Set the F206 parameter to the routine + */ + public void setF206(java.lang.Number value) { + setNumber(F206, value); + } + + /** + * Set the F207 parameter to the routine + */ + public void setF207(java.lang.Number value) { + setNumber(F207, value); + } + + /** + * Set the F208 parameter to the routine + */ + public void setF208(java.lang.Number value) { + setNumber(F208, value); + } + + /** + * Set the F209 parameter to the routine + */ + public void setF209(java.lang.Number value) { + setNumber(F209, value); + } + + /** + * Set the F210 parameter to the routine + */ + public void setF210(java.lang.Number value) { + setNumber(F210, value); + } + + /** + * Set the F211 parameter to the routine + */ + public void setF211(java.lang.Number value) { + setNumber(F211, value); + } + + /** + * Set the F212 parameter to the routine + */ + public void setF212(java.lang.Number value) { + setNumber(F212, value); + } + + /** + * Set the F213 parameter to the routine + */ + public void setF213(java.lang.Number value) { + setNumber(F213, value); + } + + /** + * Set the F214 parameter to the routine + */ + public void setF214(java.lang.Number value) { + setNumber(F214, value); + } + + /** + * Set the F215 parameter to the routine + */ + public void setF215(java.lang.Number value) { + setNumber(F215, value); + } + + /** + * Set the F216 parameter to the routine + */ + public void setF216(java.lang.Number value) { + setNumber(F216, value); + } + + /** + * Set the F217 parameter to the routine + */ + public void setF217(java.lang.Number value) { + setNumber(F217, value); + } + + /** + * Set the F218 parameter to the routine + */ + public void setF218(java.lang.Number value) { + setNumber(F218, value); + } + + /** + * Set the F219 parameter to the routine + */ + public void setF219(java.lang.Number value) { + setNumber(F219, value); + } + + /** + * Set the F220 parameter to the routine + */ + public void setF220(java.lang.Number value) { + setNumber(F220, value); + } + + /** + * Set the F221 parameter to the routine + */ + public void setF221(java.lang.Number value) { + setNumber(F221, value); + } + + /** + * Set the F222 parameter to the routine + */ + public void setF222(java.lang.Number value) { + setNumber(F222, value); + } + + /** + * Set the F223 parameter to the routine + */ + public void setF223(java.lang.Number value) { + setNumber(F223, value); + } + + /** + * Set the F224 parameter to the routine + */ + public void setF224(java.lang.Number value) { + setNumber(F224, value); + } + + /** + * Set the F225 parameter to the routine + */ + public void setF225(java.lang.Number value) { + setNumber(F225, value); + } + + /** + * Set the F226 parameter to the routine + */ + public void setF226(java.lang.Number value) { + setNumber(F226, value); + } + + /** + * Set the F227 parameter to the routine + */ + public void setF227(java.lang.Number value) { + setNumber(F227, value); + } + + /** + * Set the F228 parameter to the routine + */ + public void setF228(java.lang.Number value) { + setNumber(F228, value); + } + + /** + * Set the F229 parameter to the routine + */ + public void setF229(java.lang.Number value) { + setNumber(F229, value); + } + + /** + * Set the F230 parameter to the routine + */ + public void setF230(java.lang.Number value) { + setNumber(F230, value); + } + + /** + * Set the F231 parameter to the routine + */ + public void setF231(java.lang.Number value) { + setNumber(F231, value); + } + + /** + * Set the F232 parameter to the routine + */ + public void setF232(java.lang.Number value) { + setNumber(F232, value); + } + + /** + * Set the F233 parameter to the routine + */ + public void setF233(java.lang.Number value) { + setNumber(F233, value); + } + + /** + * Set the F234 parameter to the routine + */ + public void setF234(java.lang.Number value) { + setNumber(F234, value); + } + + /** + * Set the F235 parameter to the routine + */ + public void setF235(java.lang.Number value) { + setNumber(F235, value); + } + + /** + * Set the F236 parameter to the routine + */ + public void setF236(java.lang.Number value) { + setNumber(F236, value); + } + + /** + * Set the F237 parameter to the routine + */ + public void setF237(java.lang.Number value) { + setNumber(F237, value); + } + + /** + * Set the F238 parameter to the routine + */ + public void setF238(java.lang.Number value) { + setNumber(F238, value); + } + + /** + * Set the F239 parameter to the routine + */ + public void setF239(java.lang.Number value) { + setNumber(F239, value); + } + + /** + * Set the F240 parameter to the routine + */ + public void setF240(java.lang.Number value) { + setNumber(F240, value); + } + + /** + * Set the F241 parameter to the routine + */ + public void setF241(java.lang.Number value) { + setNumber(F241, value); + } + + /** + * Set the F242 parameter to the routine + */ + public void setF242(java.lang.Number value) { + setNumber(F242, value); + } + + /** + * Set the F243 parameter to the routine + */ + public void setF243(java.lang.Number value) { + setNumber(F243, value); + } + + /** + * Set the F244 parameter to the routine + */ + public void setF244(java.lang.Number value) { + setNumber(F244, value); + } + + /** + * Set the F245 parameter to the routine + */ + public void setF245(java.lang.Number value) { + setNumber(F245, value); + } + + /** + * Set the F246 parameter to the routine + */ + public void setF246(java.lang.Number value) { + setNumber(F246, value); + } + + /** + * Set the F247 parameter to the routine + */ + public void setF247(java.lang.Number value) { + setNumber(F247, value); + } + + /** + * Set the F248 parameter to the routine + */ + public void setF248(java.lang.Number value) { + setNumber(F248, value); + } + + /** + * Set the F249 parameter to the routine + */ + public void setF249(java.lang.Number value) { + setNumber(F249, value); + } + + /** + * Set the F250 parameter to the routine + */ + public void setF250(java.lang.Number value) { + setNumber(F250, value); + } + + /** + * Set the F251 parameter to the routine + */ + public void setF251(java.lang.Number value) { + setNumber(F251, value); + } + + /** + * Set the F252 parameter to the routine + */ + public void setF252(java.lang.Number value) { + setNumber(F252, value); + } + + /** + * Set the F253 parameter to the routine + */ + public void setF253(java.lang.Number value) { + setNumber(F253, value); + } + + /** + * Set the F254 parameter to the routine + */ + public void setF254(java.lang.Number value) { + setNumber(F254, value); + } + + /** + * Set the F255 parameter to the routine + */ + public void setF255(java.lang.Number value) { + setNumber(F255, value); + } + + /** + * Set the F256 parameter to the routine + */ + public void setF256(java.lang.Number value) { + setNumber(F256, value); + } + + /** + * Set the F257 parameter to the routine + */ + public void setF257(java.lang.Number value) { + setNumber(F257, value); + } + + /** + * Set the F258 parameter to the routine + */ + public void setF258(java.lang.Number value) { + setNumber(F258, value); + } + + /** + * Set the F259 parameter to the routine + */ + public void setF259(java.lang.Number value) { + setNumber(F259, value); + } + + /** + * Set the F260 parameter to the routine + */ + public void setF260(java.lang.Number value) { + setNumber(F260, value); + } + + /** + * Set the F261 parameter to the routine + */ + public void setF261(java.lang.Number value) { + setNumber(F261, value); + } + + /** + * Set the F262 parameter to the routine + */ + public void setF262(java.lang.Number value) { + setNumber(F262, value); + } + + /** + * Set the F263 parameter to the routine + */ + public void setF263(java.lang.Number value) { + setNumber(F263, value); + } + + /** + * Set the F264 parameter to the routine + */ + public void setF264(java.lang.Number value) { + setNumber(F264, value); + } + + /** + * Set the F265 parameter to the routine + */ + public void setF265(java.lang.Number value) { + setNumber(F265, value); + } + + /** + * Set the F266 parameter to the routine + */ + public void setF266(java.lang.Number value) { + setNumber(F266, value); + } + + /** + * Set the F267 parameter to the routine + */ + public void setF267(java.lang.Number value) { + setNumber(F267, value); + } + + /** + * Set the F268 parameter to the routine + */ + public void setF268(java.lang.Number value) { + setNumber(F268, value); + } + + /** + * Set the F269 parameter to the routine + */ + public void setF269(java.lang.Number value) { + setNumber(F269, value); + } + + /** + * Set the F270 parameter to the routine + */ + public void setF270(java.lang.Number value) { + setNumber(F270, value); + } + + /** + * Set the F271 parameter to the routine + */ + public void setF271(java.lang.Number value) { + setNumber(F271, value); + } + + /** + * Set the F272 parameter to the routine + */ + public void setF272(java.lang.Number value) { + setNumber(F272, value); + } + + /** + * Set the F273 parameter to the routine + */ + public void setF273(java.lang.Number value) { + setNumber(F273, value); + } + + /** + * Set the F274 parameter to the routine + */ + public void setF274(java.lang.Number value) { + setNumber(F274, value); + } + + /** + * Set the F275 parameter to the routine + */ + public void setF275(java.lang.Number value) { + setNumber(F275, value); + } + + /** + * Set the F276 parameter to the routine + */ + public void setF276(java.lang.Number value) { + setNumber(F276, value); + } + + /** + * Set the F277 parameter to the routine + */ + public void setF277(java.lang.Number value) { + setNumber(F277, value); + } + + /** + * Set the F278 parameter to the routine + */ + public void setF278(java.lang.Number value) { + setNumber(F278, value); + } + + /** + * Set the F279 parameter to the routine + */ + public void setF279(java.lang.Number value) { + setNumber(F279, value); + } + + /** + * Set the F280 parameter to the routine + */ + public void setF280(java.lang.Number value) { + setNumber(F280, value); + } + + /** + * Set the F281 parameter to the routine + */ + public void setF281(java.lang.Number value) { + setNumber(F281, value); + } + + /** + * Set the F282 parameter to the routine + */ + public void setF282(java.lang.Number value) { + setNumber(F282, value); + } + + /** + * Set the F283 parameter to the routine + */ + public void setF283(java.lang.Number value) { + setNumber(F283, value); + } + + /** + * Set the F284 parameter to the routine + */ + public void setF284(java.lang.Number value) { + setNumber(F284, value); + } + + /** + * Set the F285 parameter to the routine + */ + public void setF285(java.lang.Number value) { + setNumber(F285, value); + } + + /** + * Set the F286 parameter to the routine + */ + public void setF286(java.lang.Number value) { + setNumber(F286, value); + } + + /** + * Set the F287 parameter to the routine + */ + public void setF287(java.lang.Number value) { + setNumber(F287, value); + } + + /** + * Set the F288 parameter to the routine + */ + public void setF288(java.lang.Number value) { + setNumber(F288, value); + } + + /** + * Set the F289 parameter to the routine + */ + public void setF289(java.lang.Number value) { + setNumber(F289, value); + } + + /** + * Set the F290 parameter to the routine + */ + public void setF290(java.lang.Number value) { + setNumber(F290, value); + } + + /** + * Set the F291 parameter to the routine + */ + public void setF291(java.lang.Number value) { + setNumber(F291, value); + } + + /** + * Set the F292 parameter to the routine + */ + public void setF292(java.lang.Number value) { + setNumber(F292, value); + } + + /** + * Set the F293 parameter to the routine + */ + public void setF293(java.lang.Number value) { + setNumber(F293, value); + } + + /** + * Set the F294 parameter to the routine + */ + public void setF294(java.lang.Number value) { + setNumber(F294, value); + } + + /** + * Set the F295 parameter to the routine + */ + public void setF295(java.lang.Number value) { + setNumber(F295, value); + } + + /** + * Set the F296 parameter to the routine + */ + public void setF296(java.lang.Number value) { + setNumber(F296, value); + } + + /** + * Set the F297 parameter to the routine + */ + public void setF297(java.lang.Number value) { + setNumber(F297, value); + } + + /** + * Set the F298 parameter to the routine + */ + public void setF298(java.lang.Number value) { + setNumber(F298, value); + } + + /** + * Set the F299 parameter to the routine + */ + public void setF299(java.lang.Number value) { + setNumber(F299, value); + } + + /** + * Set the F300 parameter to the routine + */ + public void setF300(java.lang.Number value) { + setNumber(F300, value); + } + + /** + * Set the F301 parameter to the routine + */ + public void setF301(java.lang.Number value) { + setNumber(F301, value); + } + + /** + * Set the F302 parameter to the routine + */ + public void setF302(java.lang.Number value) { + setNumber(F302, value); + } + + /** + * Set the F303 parameter to the routine + */ + public void setF303(java.lang.Number value) { + setNumber(F303, value); + } + + /** + * Set the F304 parameter to the routine + */ + public void setF304(java.lang.Number value) { + setNumber(F304, value); + } + + /** + * Set the F305 parameter to the routine + */ + public void setF305(java.lang.Number value) { + setNumber(F305, value); + } + + /** + * Set the F306 parameter to the routine + */ + public void setF306(java.lang.Number value) { + setNumber(F306, value); + } + + /** + * Set the F307 parameter to the routine + */ + public void setF307(java.lang.Number value) { + setNumber(F307, value); + } + + /** + * Set the F308 parameter to the routine + */ + public void setF308(java.lang.Number value) { + setNumber(F308, value); + } + + /** + * Set the F309 parameter to the routine + */ + public void setF309(java.lang.Number value) { + setNumber(F309, value); + } + + /** + * Set the F310 parameter to the routine + */ + public void setF310(java.lang.Number value) { + setNumber(F310, value); + } + + /** + * Set the F311 parameter to the routine + */ + public void setF311(java.lang.Number value) { + setNumber(F311, value); + } + + /** + * Set the F312 parameter to the routine + */ + public void setF312(java.lang.Number value) { + setNumber(F312, value); + } + + /** + * Set the F313 parameter to the routine + */ + public void setF313(java.lang.Number value) { + setNumber(F313, value); + } + + /** + * Set the F314 parameter to the routine + */ + public void setF314(java.lang.Number value) { + setNumber(F314, value); + } + + /** + * Set the F315 parameter to the routine + */ + public void setF315(java.lang.Number value) { + setNumber(F315, value); + } + + /** + * Set the F316 parameter to the routine + */ + public void setF316(java.lang.Number value) { + setNumber(F316, value); + } + + /** + * Set the F317 parameter to the routine + */ + public void setF317(java.lang.Number value) { + setNumber(F317, value); + } + + /** + * Set the F318 parameter to the routine + */ + public void setF318(java.lang.Number value) { + setNumber(F318, value); + } + + /** + * Set the F319 parameter to the routine + */ + public void setF319(java.lang.Number value) { + setNumber(F319, value); + } + + /** + * Set the F320 parameter to the routine + */ + public void setF320(java.lang.Number value) { + setNumber(F320, value); + } + + /** + * Set the F321 parameter to the routine + */ + public void setF321(java.lang.Number value) { + setNumber(F321, value); + } + + /** + * Set the F322 parameter to the routine + */ + public void setF322(java.lang.Number value) { + setNumber(F322, value); + } + + /** + * Set the F323 parameter to the routine + */ + public void setF323(java.lang.Number value) { + setNumber(F323, value); + } + + /** + * Set the F324 parameter to the routine + */ + public void setF324(java.lang.Number value) { + setNumber(F324, value); + } + + /** + * Set the F325 parameter to the routine + */ + public void setF325(java.lang.Number value) { + setNumber(F325, value); + } + + /** + * Set the F326 parameter to the routine + */ + public void setF326(java.lang.Number value) { + setNumber(F326, value); + } + + /** + * Set the F327 parameter to the routine + */ + public void setF327(java.lang.Number value) { + setNumber(F327, value); + } + + /** + * Set the F328 parameter to the routine + */ + public void setF328(java.lang.Number value) { + setNumber(F328, value); + } + + /** + * Set the F329 parameter to the routine + */ + public void setF329(java.lang.Number value) { + setNumber(F329, value); + } + + /** + * Set the F330 parameter to the routine + */ + public void setF330(java.lang.Number value) { + setNumber(F330, value); + } + + /** + * Set the F331 parameter to the routine + */ + public void setF331(java.lang.Number value) { + setNumber(F331, value); + } + + /** + * Set the F332 parameter to the routine + */ + public void setF332(java.lang.Number value) { + setNumber(F332, value); + } + + /** + * Set the F333 parameter to the routine + */ + public void setF333(java.lang.Number value) { + setNumber(F333, value); + } + + /** + * Set the F334 parameter to the routine + */ + public void setF334(java.lang.Number value) { + setNumber(F334, value); + } + + /** + * Set the F335 parameter to the routine + */ + public void setF335(java.lang.Number value) { + setNumber(F335, value); + } + + /** + * Set the F336 parameter to the routine + */ + public void setF336(java.lang.Number value) { + setNumber(F336, value); + } + + /** + * Set the F337 parameter to the routine + */ + public void setF337(java.lang.Number value) { + setNumber(F337, value); + } + + /** + * Set the F338 parameter to the routine + */ + public void setF338(java.lang.Number value) { + setNumber(F338, value); + } + + /** + * Set the F339 parameter to the routine + */ + public void setF339(java.lang.Number value) { + setNumber(F339, value); + } + + /** + * Set the F340 parameter to the routine + */ + public void setF340(java.lang.Number value) { + setNumber(F340, value); + } + + /** + * Set the F341 parameter to the routine + */ + public void setF341(java.lang.Number value) { + setNumber(F341, value); + } + + /** + * Set the F342 parameter to the routine + */ + public void setF342(java.lang.Number value) { + setNumber(F342, value); + } + + /** + * Set the F343 parameter to the routine + */ + public void setF343(java.lang.Number value) { + setNumber(F343, value); + } + + /** + * Set the F344 parameter to the routine + */ + public void setF344(java.lang.Number value) { + setNumber(F344, value); + } + + /** + * Set the F345 parameter to the routine + */ + public void setF345(java.lang.Number value) { + setNumber(F345, value); + } + + /** + * Set the F346 parameter to the routine + */ + public void setF346(java.lang.Number value) { + setNumber(F346, value); + } + + /** + * Set the F347 parameter to the routine + */ + public void setF347(java.lang.Number value) { + setNumber(F347, value); + } + + /** + * Set the F348 parameter to the routine + */ + public void setF348(java.lang.Number value) { + setNumber(F348, value); + } + + /** + * Set the F349 parameter to the routine + */ + public void setF349(java.lang.Number value) { + setNumber(F349, value); + } + + /** + * Set the F350 parameter to the routine + */ + public void setF350(java.lang.Number value) { + setNumber(F350, value); + } + + /** + * Set the F351 parameter to the routine + */ + public void setF351(java.lang.Number value) { + setNumber(F351, value); + } + + /** + * Set the F352 parameter to the routine + */ + public void setF352(java.lang.Number value) { + setNumber(F352, value); + } + + /** + * Set the F353 parameter to the routine + */ + public void setF353(java.lang.Number value) { + setNumber(F353, value); + } + + /** + * Set the F354 parameter to the routine + */ + public void setF354(java.lang.Number value) { + setNumber(F354, value); + } + + /** + * Set the F355 parameter to the routine + */ + public void setF355(java.lang.Number value) { + setNumber(F355, value); + } + + /** + * Set the F356 parameter to the routine + */ + public void setF356(java.lang.Number value) { + setNumber(F356, value); + } + + /** + * Set the F357 parameter to the routine + */ + public void setF357(java.lang.Number value) { + setNumber(F357, value); + } + + /** + * Set the F358 parameter to the routine + */ + public void setF358(java.lang.Number value) { + setNumber(F358, value); + } + + /** + * Set the F359 parameter to the routine + */ + public void setF359(java.lang.Number value) { + setNumber(F359, value); + } + + /** + * Set the F360 parameter to the routine + */ + public void setF360(java.lang.Number value) { + setNumber(F360, value); + } + + /** + * Set the F361 parameter to the routine + */ + public void setF361(java.lang.Number value) { + setNumber(F361, value); + } + + /** + * Set the F362 parameter to the routine + */ + public void setF362(java.lang.Number value) { + setNumber(F362, value); + } + + /** + * Set the F363 parameter to the routine + */ + public void setF363(java.lang.Number value) { + setNumber(F363, value); + } + + /** + * Set the F364 parameter to the routine + */ + public void setF364(java.lang.Number value) { + setNumber(F364, value); + } + + /** + * Set the F365 parameter to the routine + */ + public void setF365(java.lang.Number value) { + setNumber(F365, value); + } + + /** + * Set the F366 parameter to the routine + */ + public void setF366(java.lang.Number value) { + setNumber(F366, value); + } + + /** + * Set the F367 parameter to the routine + */ + public void setF367(java.lang.Number value) { + setNumber(F367, value); + } + + /** + * Set the F368 parameter to the routine + */ + public void setF368(java.lang.Number value) { + setNumber(F368, value); + } + + /** + * Set the F369 parameter to the routine + */ + public void setF369(java.lang.Number value) { + setNumber(F369, value); + } + + /** + * Set the F370 parameter to the routine + */ + public void setF370(java.lang.Number value) { + setNumber(F370, value); + } + + /** + * Set the F371 parameter to the routine + */ + public void setF371(java.lang.Number value) { + setNumber(F371, value); + } + + /** + * Set the F372 parameter to the routine + */ + public void setF372(java.lang.Number value) { + setNumber(F372, value); + } + + /** + * Set the F373 parameter to the routine + */ + public void setF373(java.lang.Number value) { + setNumber(F373, value); + } + + /** + * Set the F374 parameter to the routine + */ + public void setF374(java.lang.Number value) { + setNumber(F374, value); + } + + /** + * Set the F375 parameter to the routine + */ + public void setF375(java.lang.Number value) { + setNumber(F375, value); + } + + /** + * Set the F376 parameter to the routine + */ + public void setF376(java.lang.Number value) { + setNumber(F376, value); + } + + /** + * Set the F377 parameter to the routine + */ + public void setF377(java.lang.Number value) { + setNumber(F377, value); + } + + /** + * Set the F378 parameter to the routine + */ + public void setF378(java.lang.Number value) { + setNumber(F378, value); + } + + /** + * Set the F379 parameter to the routine + */ + public void setF379(java.lang.Number value) { + setNumber(F379, value); + } + + /** + * Set the F380 parameter to the routine + */ + public void setF380(java.lang.Number value) { + setNumber(F380, value); + } + + /** + * Set the F381 parameter to the routine + */ + public void setF381(java.lang.Number value) { + setNumber(F381, value); + } + + /** + * Set the F382 parameter to the routine + */ + public void setF382(java.lang.Number value) { + setNumber(F382, value); + } + + /** + * Set the F383 parameter to the routine + */ + public void setF383(java.lang.Number value) { + setNumber(F383, value); + } + + /** + * Set the F384 parameter to the routine + */ + public void setF384(java.lang.Number value) { + setNumber(F384, value); + } + + /** + * Set the F385 parameter to the routine + */ + public void setF385(java.lang.Number value) { + setNumber(F385, value); + } + + /** + * Set the F386 parameter to the routine + */ + public void setF386(java.lang.Number value) { + setNumber(F386, value); + } + + /** + * Set the F387 parameter to the routine + */ + public void setF387(java.lang.Number value) { + setNumber(F387, value); + } + + /** + * Set the F388 parameter to the routine + */ + public void setF388(java.lang.Number value) { + setNumber(F388, value); + } + + /** + * Set the F389 parameter to the routine + */ + public void setF389(java.lang.Number value) { + setNumber(F389, value); + } + + /** + * Set the F390 parameter to the routine + */ + public void setF390(java.lang.Number value) { + setNumber(F390, value); + } + + /** + * Set the F391 parameter to the routine + */ + public void setF391(java.lang.Number value) { + setNumber(F391, value); + } + + /** + * Set the F392 parameter to the routine + */ + public void setF392(java.lang.Number value) { + setNumber(F392, value); + } + + /** + * Set the F393 parameter to the routine + */ + public void setF393(java.lang.Number value) { + setNumber(F393, value); + } + + /** + * Set the F394 parameter to the routine + */ + public void setF394(java.lang.Number value) { + setNumber(F394, value); + } + + /** + * Set the F395 parameter to the routine + */ + public void setF395(java.lang.Number value) { + setNumber(F395, value); + } + + /** + * Set the F396 parameter to the routine + */ + public void setF396(java.lang.Number value) { + setNumber(F396, value); + } + + /** + * Set the F397 parameter to the routine + */ + public void setF397(java.lang.Number value) { + setNumber(F397, value); + } + + /** + * Set the F398 parameter to the routine + */ + public void setF398(java.lang.Number value) { + setNumber(F398, value); + } + + /** + * Set the F399 parameter to the routine + */ + public void setF399(java.lang.Number value) { + setNumber(F399, value); + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/routines/PTables1.java b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/routines/PTables1.java new file mode 100644 index 00000000000..a04d8ebbe0c --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/routines/PTables1.java @@ -0,0 +1,44 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle.generatedclasses.test.routines; + +/** + * This class is generated by jOOQ. + */ +public class PTables1 extends org.jooq.impl.AbstractRoutine { + + private static final long serialVersionUID = -424490764; + + + /** + * An uncommented item + */ + public static final org.jooq.Parameter IN_TABLE = createParameter("IN_TABLE", org.jooq.impl.SQLDataType.INTEGER.asArrayDataType(org.jooq.test.oracle.generatedclasses.test.udt.records.UNumberTableRecord.class)); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter OUT_TABLE = createParameter("OUT_TABLE", org.jooq.impl.SQLDataType.INTEGER.asArrayDataType(org.jooq.test.oracle.generatedclasses.test.udt.records.UNumberTableRecord.class)); + + /** + * Create a new routine call instance + */ + public PTables1() { + super("P_TABLES1", org.jooq.test.oracle.generatedclasses.test.Test.TEST); + + addInParameter(IN_TABLE); + addOutParameter(OUT_TABLE); + } + + /** + * Set the IN_TABLE parameter to the routine + */ + public void setInTable(org.jooq.test.oracle.generatedclasses.test.udt.records.UNumberTableRecord value) { + setValue(IN_TABLE, value); + } + + public org.jooq.test.oracle.generatedclasses.test.udt.records.UNumberTableRecord getOutTable() { + return getValue(OUT_TABLE); + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/routines/PTables2.java b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/routines/PTables2.java new file mode 100644 index 00000000000..b6a787b1ecd --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/routines/PTables2.java @@ -0,0 +1,44 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle.generatedclasses.test.routines; + +/** + * This class is generated by jOOQ. + */ +public class PTables2 extends org.jooq.impl.AbstractRoutine { + + private static final long serialVersionUID = -1126016899; + + + /** + * An uncommented item + */ + public static final org.jooq.Parameter IN_TABLE = createParameter("IN_TABLE", org.jooq.impl.SQLDataType.BIGINT.asArrayDataType(org.jooq.test.oracle.generatedclasses.test.udt.records.UNumberLongTableRecord.class)); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter OUT_TABLE = createParameter("OUT_TABLE", org.jooq.impl.SQLDataType.BIGINT.asArrayDataType(org.jooq.test.oracle.generatedclasses.test.udt.records.UNumberLongTableRecord.class)); + + /** + * Create a new routine call instance + */ + public PTables2() { + super("P_TABLES2", org.jooq.test.oracle.generatedclasses.test.Test.TEST); + + addInParameter(IN_TABLE); + addOutParameter(OUT_TABLE); + } + + /** + * Set the IN_TABLE parameter to the routine + */ + public void setInTable(org.jooq.test.oracle.generatedclasses.test.udt.records.UNumberLongTableRecord value) { + setValue(IN_TABLE, value); + } + + public org.jooq.test.oracle.generatedclasses.test.udt.records.UNumberLongTableRecord getOutTable() { + return getValue(OUT_TABLE); + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/routines/PTables3.java b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/routines/PTables3.java new file mode 100644 index 00000000000..60db5f96ad8 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/routines/PTables3.java @@ -0,0 +1,44 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle.generatedclasses.test.routines; + +/** + * This class is generated by jOOQ. + */ +public class PTables3 extends org.jooq.impl.AbstractRoutine { + + private static final long serialVersionUID = 1745891520; + + + /** + * An uncommented item + */ + public static final org.jooq.Parameter IN_TABLE = createParameter("IN_TABLE", org.jooq.impl.SQLDataType.VARCHAR.asArrayDataType(org.jooq.test.oracle.generatedclasses.test.udt.records.UStringTableRecord.class)); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter OUT_TABLE = createParameter("OUT_TABLE", org.jooq.impl.SQLDataType.VARCHAR.asArrayDataType(org.jooq.test.oracle.generatedclasses.test.udt.records.UStringTableRecord.class)); + + /** + * Create a new routine call instance + */ + public PTables3() { + super("P_TABLES3", org.jooq.test.oracle.generatedclasses.test.Test.TEST); + + addInParameter(IN_TABLE); + addOutParameter(OUT_TABLE); + } + + /** + * Set the IN_TABLE parameter to the routine + */ + public void setInTable(org.jooq.test.oracle.generatedclasses.test.udt.records.UStringTableRecord value) { + setValue(IN_TABLE, value); + } + + public org.jooq.test.oracle.generatedclasses.test.udt.records.UStringTableRecord getOutTable() { + return getValue(OUT_TABLE); + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/routines/PTables4.java b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/routines/PTables4.java new file mode 100644 index 00000000000..b004d3c2a31 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/routines/PTables4.java @@ -0,0 +1,44 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle.generatedclasses.test.routines; + +/** + * This class is generated by jOOQ. + */ +public class PTables4 extends org.jooq.impl.AbstractRoutine { + + private static final long serialVersionUID = -172891405; + + + /** + * An uncommented item + */ + public static final org.jooq.Parameter IN_TABLE = createParameter("IN_TABLE", org.jooq.test.oracle.generatedclasses.test.udt.UBookType.U_BOOK_TYPE.getDataType().asArrayDataType(org.jooq.test.oracle.generatedclasses.test.udt.records.UBookTableRecord.class)); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter OUT_TABLE = createParameter("OUT_TABLE", org.jooq.test.oracle.generatedclasses.test.udt.UBookType.U_BOOK_TYPE.getDataType().asArrayDataType(org.jooq.test.oracle.generatedclasses.test.udt.records.UBookTableRecord.class)); + + /** + * Create a new routine call instance + */ + public PTables4() { + super("P_TABLES4", org.jooq.test.oracle.generatedclasses.test.Test.TEST); + + addInParameter(IN_TABLE); + addOutParameter(OUT_TABLE); + } + + /** + * Set the IN_TABLE parameter to the routine + */ + public void setInTable(org.jooq.test.oracle.generatedclasses.test.udt.records.UBookTableRecord value) { + setValue(IN_TABLE, value); + } + + public org.jooq.test.oracle.generatedclasses.test.udt.records.UBookTableRecord getOutTable() { + return getValue(OUT_TABLE); + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/routines/PUnused.java b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/routines/PUnused.java new file mode 100644 index 00000000000..0660c365b21 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/routines/PUnused.java @@ -0,0 +1,61 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle.generatedclasses.test.routines; + +/** + * This class is generated by jOOQ. + */ +public class PUnused extends org.jooq.impl.AbstractRoutine { + + private static final long serialVersionUID = -1131112328; + + + /** + * An uncommented item + */ + public static final org.jooq.Parameter IN1 = createParameter("IN1", org.jooq.impl.SQLDataType.VARCHAR); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter OUT1 = createParameter("OUT1", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter OUT2 = createParameter("OUT2", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * Create a new routine call instance + */ + public PUnused() { + super("P_UNUSED", org.jooq.test.oracle.generatedclasses.test.Test.TEST); + + addInParameter(IN1); + addOutParameter(OUT1); + addInOutParameter(OUT2); + } + + /** + * Set the IN1 parameter to the routine + */ + public void setIn1(java.lang.String value) { + setValue(IN1, value); + } + + /** + * Set the OUT2 parameter to the routine + */ + public void setOut2(java.lang.Number value) { + setNumber(OUT2, value); + } + + public java.math.BigDecimal getOut1() { + return getValue(OUT1); + } + + public java.math.BigDecimal getOut2() { + return getValue(OUT2); + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/tables/TArrays.java b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/tables/TArrays.java new file mode 100644 index 00000000000..bc70a9de295 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/tables/TArrays.java @@ -0,0 +1,81 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle.generatedclasses.test.tables; + +/** + * This class is generated by jOOQ. + */ +public class TArrays extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = -1067175958; + + /** + * The singleton instance of TEST.T_ARRAYS + */ + public static final org.jooq.test.oracle.generatedclasses.test.tables.TArrays T_ARRAYS = new org.jooq.test.oracle.generatedclasses.test.tables.TArrays(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.oracle.generatedclasses.test.tables.records.TArraysRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final org.jooq.TableField ID = createField("ID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField STRING_ARRAY = createField("STRING_ARRAY", org.jooq.impl.SQLDataType.VARCHAR.asArrayDataType(org.jooq.test.oracle.generatedclasses.test.udt.records.UStringArrayRecord.class), this); + + /** + * An uncommented item + */ + public final org.jooq.TableField NUMBER_ARRAY = createField("NUMBER_ARRAY", org.jooq.impl.SQLDataType.INTEGER.asArrayDataType(org.jooq.test.oracle.generatedclasses.test.udt.records.UNumberArrayRecord.class), this); + + /** + * An uncommented item + */ + public final org.jooq.TableField NUMBER_LONG_ARRAY = createField("NUMBER_LONG_ARRAY", org.jooq.impl.SQLDataType.BIGINT.asArrayDataType(org.jooq.test.oracle.generatedclasses.test.udt.records.UNumberLongArrayRecord.class), this); + + /** + * An uncommented item + */ + public final org.jooq.TableField DATE_ARRAY = createField("DATE_ARRAY", org.jooq.impl.SQLDataType.DATE.asArrayDataType(org.jooq.test.oracle.generatedclasses.test.udt.records.UDateArrayRecord.class), this); + + public TArrays() { + super("T_ARRAYS", org.jooq.test.oracle.generatedclasses.test.Test.TEST); + } + + public TArrays(java.lang.String alias) { + super(alias, org.jooq.test.oracle.generatedclasses.test.Test.TEST, org.jooq.test.oracle.generatedclasses.test.tables.TArrays.T_ARRAYS); + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.test.oracle.generatedclasses.test.Keys.PK_T_ARRAYS; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.test.oracle.generatedclasses.test.Keys.PK_T_ARRAYS); + } + + @Override + public org.jooq.test.oracle.generatedclasses.test.tables.TArrays as(java.lang.String alias) { + return new org.jooq.test.oracle.generatedclasses.test.tables.TArrays(alias); + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/tables/TAuthor.java b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/tables/TAuthor.java new file mode 100644 index 00000000000..e95c16ba046 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/tables/TAuthor.java @@ -0,0 +1,88 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle.generatedclasses.test.tables; + +/** + * This class is generated by jOOQ. + * + * An entity holding authors of books + */ +public class TAuthor extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = 892787808; + + /** + * The singleton instance of TEST.T_AUTHOR + */ + public static final org.jooq.test.oracle.generatedclasses.test.tables.TAuthor T_AUTHOR = new org.jooq.test.oracle.generatedclasses.test.tables.TAuthor(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.oracle.generatedclasses.test.tables.records.TAuthorRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * The author ID + * + * PRIMARY KEY + */ + public final org.jooq.TableField ID = createField("ID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * The author's first name + */ + public final org.jooq.TableField FIRST_NAME = createField("FIRST_NAME", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * The author's last name + */ + public final org.jooq.TableField LAST_NAME = createField("LAST_NAME", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * The author's date of birth + */ + public final org.jooq.TableField DATE_OF_BIRTH = createField("DATE_OF_BIRTH", org.jooq.impl.SQLDataType.DATE, this); + + /** + * The author's year of birth + */ + public final org.jooq.TableField YEAR_OF_BIRTH = createField("YEAR_OF_BIRTH", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * The author's address + */ + public final org.jooq.TableField ADDRESS = createField("ADDRESS", org.jooq.test.oracle.generatedclasses.test.udt.UAddressType.U_ADDRESS_TYPE.getDataType(), this); + + public TAuthor() { + super("T_AUTHOR", org.jooq.test.oracle.generatedclasses.test.Test.TEST); + } + + public TAuthor(java.lang.String alias) { + super(alias, org.jooq.test.oracle.generatedclasses.test.Test.TEST, org.jooq.test.oracle.generatedclasses.test.tables.TAuthor.T_AUTHOR); + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.test.oracle.generatedclasses.test.Keys.PK_T_AUTHOR; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.test.oracle.generatedclasses.test.Keys.PK_T_AUTHOR); + } + + @Override + public org.jooq.test.oracle.generatedclasses.test.tables.TAuthor as(java.lang.String alias) { + return new org.jooq.test.oracle.generatedclasses.test.tables.TAuthor(alias); + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/tables/TBook.java b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/tables/TBook.java new file mode 100644 index 00000000000..29327763622 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/tables/TBook.java @@ -0,0 +1,127 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle.generatedclasses.test.tables; + +/** + * This class is generated by jOOQ. + * + * An entity holding books + */ +public class TBook extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = 1355543379; + + /** + * The singleton instance of TEST.T_BOOK + */ + public static final org.jooq.test.oracle.generatedclasses.test.tables.TBook T_BOOK = new org.jooq.test.oracle.generatedclasses.test.tables.TBook(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.oracle.generatedclasses.test.tables.records.TBookRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * The book ID + * + * PRIMARY KEY + */ + public final org.jooq.TableField ID = createField("ID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * The author ID in entity 'author' + *

+ *

+	 * CONSTRAINT FK_T_BOOK_AUTHOR_ID
+	 * FOREIGN KEY (AUTHOR_ID)
+	 * REFERENCES TEST.T_AUTHOR (ID)
+	 * 
+ */ + public final org.jooq.TableField AUTHOR_ID = createField("AUTHOR_ID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_T_BOOK_CO_AUTHOR_ID
+	 * FOREIGN KEY (CO_AUTHOR_ID)
+	 * REFERENCES TEST.T_AUTHOR (ID)
+	 * 
+ */ + public final org.jooq.TableField CO_AUTHOR_ID = createField("CO_AUTHOR_ID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField DETAILS_ID = createField("DETAILS_ID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * The book's title + */ + public final org.jooq.TableField TITLE = createField("TITLE", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * The year the book was published in + */ + public final org.jooq.TableField PUBLISHED_IN = createField("PUBLISHED_IN", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * The language of the book + *

+ *

+	 * CONSTRAINT FK_T_BOOK_LANGUAGE_ID
+	 * FOREIGN KEY (LANGUAGE_ID)
+	 * REFERENCES TEST.T_LANGUAGE (ID)
+	 * 
+ */ + public final org.jooq.TableField LANGUAGE_ID = createField("LANGUAGE_ID", org.jooq.impl.SQLDataType.INTEGER.asMasterDataType(org.jooq.test.oracle.generatedclasses.test.enums.TLanguage.class), this); + + /** + * Some textual content of the book + */ + public final org.jooq.TableField CONTENT_TEXT = createField("CONTENT_TEXT", org.jooq.impl.SQLDataType.CLOB, this); + + /** + * Some binary content of the book + */ + public final org.jooq.TableField CONTENT_PDF = createField("CONTENT_PDF", org.jooq.impl.SQLDataType.BLOB, this); + + public TBook() { + super("T_BOOK", org.jooq.test.oracle.generatedclasses.test.Test.TEST); + } + + public TBook(java.lang.String alias) { + super(alias, org.jooq.test.oracle.generatedclasses.test.Test.TEST, org.jooq.test.oracle.generatedclasses.test.tables.TBook.T_BOOK); + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.test.oracle.generatedclasses.test.Keys.PK_T_BOOK; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.test.oracle.generatedclasses.test.Keys.PK_T_BOOK); + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getReferences() { + return java.util.Arrays.>asList(org.jooq.test.oracle.generatedclasses.test.Keys.FK_T_BOOK_AUTHOR_ID, org.jooq.test.oracle.generatedclasses.test.Keys.FK_T_BOOK_CO_AUTHOR_ID); + } + + @Override + public org.jooq.test.oracle.generatedclasses.test.tables.TBook as(java.lang.String alias) { + return new org.jooq.test.oracle.generatedclasses.test.tables.TBook(alias); + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/tables/TBookStore.java b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/tables/TBookStore.java new file mode 100644 index 00000000000..fa5d14936ae --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/tables/TBookStore.java @@ -0,0 +1,61 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle.generatedclasses.test.tables; + +/** + * This class is generated by jOOQ. + * + * A book store + */ +public class TBookStore extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = 230577132; + + /** + * The singleton instance of TEST.T_BOOK_STORE + */ + public static final org.jooq.test.oracle.generatedclasses.test.tables.TBookStore T_BOOK_STORE = new org.jooq.test.oracle.generatedclasses.test.tables.TBookStore(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.oracle.generatedclasses.test.tables.records.TBookStoreRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * The books store name + */ + public final org.jooq.TableField NAME = createField("NAME", org.jooq.impl.SQLDataType.VARCHAR, this); + + public TBookStore() { + super("T_BOOK_STORE", org.jooq.test.oracle.generatedclasses.test.Test.TEST); + } + + public TBookStore(java.lang.String alias) { + super(alias, org.jooq.test.oracle.generatedclasses.test.Test.TEST, org.jooq.test.oracle.generatedclasses.test.tables.TBookStore.T_BOOK_STORE); + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.test.oracle.generatedclasses.test.Keys.UK_T_BOOK_STORE_NAME; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.test.oracle.generatedclasses.test.Keys.UK_T_BOOK_STORE_NAME); + } + + @Override + public org.jooq.test.oracle.generatedclasses.test.tables.TBookStore as(java.lang.String alias) { + return new org.jooq.test.oracle.generatedclasses.test.tables.TBookStore(alias); + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/tables/TBookToBookStore.java b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/tables/TBookToBookStore.java new file mode 100644 index 00000000000..a3aa4fc858c --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/tables/TBookToBookStore.java @@ -0,0 +1,93 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle.generatedclasses.test.tables; + +/** + * This class is generated by jOOQ. + * + * An m:n relation between books and book stores + */ +public class TBookToBookStore extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = 1810615556; + + /** + * The singleton instance of TEST.T_BOOK_TO_BOOK_STORE + */ + public static final org.jooq.test.oracle.generatedclasses.test.tables.TBookToBookStore T_BOOK_TO_BOOK_STORE = new org.jooq.test.oracle.generatedclasses.test.tables.TBookToBookStore(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.oracle.generatedclasses.test.tables.records.TBookToBookStoreRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * The book store name + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT FK_B2BS_BS_NAME
+	 * FOREIGN KEY (BOOK_STORE_NAME)
+	 * REFERENCES TEST.T_BOOK_STORE (NAME)
+	 * 
+ */ + public final org.jooq.TableField BOOK_STORE_NAME = createField("BOOK_STORE_NAME", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * The book ID + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT FK_B2BS_B_ID
+	 * FOREIGN KEY (BOOK_ID)
+	 * REFERENCES TEST.T_BOOK (ID)
+	 * 
+ */ + public final org.jooq.TableField BOOK_ID = createField("BOOK_ID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * The number of books on stock + */ + public final org.jooq.TableField STOCK = createField("STOCK", org.jooq.impl.SQLDataType.INTEGER, this); + + public TBookToBookStore() { + super("T_BOOK_TO_BOOK_STORE", org.jooq.test.oracle.generatedclasses.test.Test.TEST); + } + + public TBookToBookStore(java.lang.String alias) { + super(alias, org.jooq.test.oracle.generatedclasses.test.Test.TEST, org.jooq.test.oracle.generatedclasses.test.tables.TBookToBookStore.T_BOOK_TO_BOOK_STORE); + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.test.oracle.generatedclasses.test.Keys.PK_B2BS; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.test.oracle.generatedclasses.test.Keys.PK_B2BS); + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getReferences() { + return java.util.Arrays.>asList(org.jooq.test.oracle.generatedclasses.test.Keys.FK_B2BS_BS_NAME, org.jooq.test.oracle.generatedclasses.test.Keys.FK_B2BS_B_ID); + } + + @Override + public org.jooq.test.oracle.generatedclasses.test.tables.TBookToBookStore as(java.lang.String alias) { + return new org.jooq.test.oracle.generatedclasses.test.tables.TBookToBookStore(alias); + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/tables/TBooleans.java b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/tables/TBooleans.java new file mode 100644 index 00000000000..ebe5610be22 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/tables/TBooleans.java @@ -0,0 +1,111 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle.generatedclasses.test.tables; + +/** + * This class is generated by jOOQ. + */ +public class TBooleans extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = 1967935987; + + /** + * The singleton instance of TEST.T_BOOLEANS + */ + public static final org.jooq.test.oracle.generatedclasses.test.tables.TBooleans T_BOOLEANS = new org.jooq.test.oracle.generatedclasses.test.tables.TBooleans(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.oracle.generatedclasses.test.tables.records.TBooleansRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final org.jooq.TableField ID = createField("ID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField ONE_ZERO = createField("ONE_ZERO", org.jooq.impl.SQLDataType.INTEGER.asConvertedDataType(new org.jooq.test._.converters.Boolean_10_Converter()), this); + + /** + * An uncommented item + */ + public final org.jooq.TableField TRUE_FALSE_LC = createField("TRUE_FALSE_LC", org.jooq.impl.SQLDataType.VARCHAR.asConvertedDataType(new org.jooq.test._.converters.Boolean_TF_LC_Converter()), this); + + /** + * An uncommented item + */ + public final org.jooq.TableField TRUE_FALSE_UC = createField("TRUE_FALSE_UC", org.jooq.impl.SQLDataType.VARCHAR.asConvertedDataType(new org.jooq.test._.converters.Boolean_TF_UC_Converter()), this); + + /** + * An uncommented item + */ + public final org.jooq.TableField YES_NO_LC = createField("YES_NO_LC", org.jooq.impl.SQLDataType.VARCHAR.asConvertedDataType(new org.jooq.test._.converters.Boolean_YES_NO_LC_Converter()), this); + + /** + * An uncommented item + */ + public final org.jooq.TableField YES_NO_UC = createField("YES_NO_UC", org.jooq.impl.SQLDataType.VARCHAR.asConvertedDataType(new org.jooq.test._.converters.Boolean_YES_NO_UC_Converter()), this); + + /** + * An uncommented item + */ + public final org.jooq.TableField Y_N_LC = createField("Y_N_LC", org.jooq.impl.SQLDataType.CHAR.asConvertedDataType(new org.jooq.test._.converters.Boolean_YN_LC_Converter()), this); + + /** + * An uncommented item + */ + public final org.jooq.TableField Y_N_UC = createField("Y_N_UC", org.jooq.impl.SQLDataType.CHAR.asConvertedDataType(new org.jooq.test._.converters.Boolean_YN_UC_Converter()), this); + + /** + * An uncommented item + */ + public final org.jooq.TableField VC_BOOLEAN = createField("VC_BOOLEAN", org.jooq.impl.SQLDataType.BOOLEAN, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField C_BOOLEAN = createField("C_BOOLEAN", org.jooq.impl.SQLDataType.BOOLEAN, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField N_BOOLEAN = createField("N_BOOLEAN", org.jooq.impl.SQLDataType.BOOLEAN, this); + + public TBooleans() { + super("T_BOOLEANS", org.jooq.test.oracle.generatedclasses.test.Test.TEST); + } + + public TBooleans(java.lang.String alias) { + super(alias, org.jooq.test.oracle.generatedclasses.test.Test.TEST, org.jooq.test.oracle.generatedclasses.test.tables.TBooleans.T_BOOLEANS); + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.test.oracle.generatedclasses.test.Keys.PK_T_BOOLEANS; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.test.oracle.generatedclasses.test.Keys.PK_T_BOOLEANS); + } + + @Override + public org.jooq.test.oracle.generatedclasses.test.tables.TBooleans as(java.lang.String alias) { + return new org.jooq.test.oracle.generatedclasses.test.tables.TBooleans(alias); + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/tables/TDates.java b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/tables/TDates.java new file mode 100644 index 00000000000..2df7180b5dc --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/tables/TDates.java @@ -0,0 +1,96 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle.generatedclasses.test.tables; + +/** + * This class is generated by jOOQ. + */ +public class TDates extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = 874852289; + + /** + * The singleton instance of TEST.T_DATES + */ + public static final org.jooq.test.oracle.generatedclasses.test.tables.TDates T_DATES = new org.jooq.test.oracle.generatedclasses.test.tables.TDates(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.oracle.generatedclasses.test.tables.records.TDatesRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final org.jooq.TableField ID = createField("ID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField D = createField("D", org.jooq.impl.SQLDataType.DATE, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField T = createField("T", org.jooq.impl.SQLDataType.TIMESTAMP, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField TS = createField("TS", org.jooq.impl.SQLDataType.TIMESTAMP, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField D_INT = createField("D_INT", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField TS_BIGINT = createField("TS_BIGINT", org.jooq.impl.SQLDataType.BIGINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField I_Y = createField("I_Y", org.jooq.impl.SQLDataType.INTERVALYEARTOMONTH, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField I_D = createField("I_D", org.jooq.impl.SQLDataType.INTERVALDAYTOSECOND, this); + + public TDates() { + super("T_DATES", org.jooq.test.oracle.generatedclasses.test.Test.TEST); + } + + public TDates(java.lang.String alias) { + super(alias, org.jooq.test.oracle.generatedclasses.test.Test.TEST, org.jooq.test.oracle.generatedclasses.test.tables.TDates.T_DATES); + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.test.oracle.generatedclasses.test.Keys.PK_T_DATES; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.test.oracle.generatedclasses.test.Keys.PK_T_DATES); + } + + @Override + public org.jooq.test.oracle.generatedclasses.test.tables.TDates as(java.lang.String alias) { + return new org.jooq.test.oracle.generatedclasses.test.tables.TDates(alias); + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/tables/TDirectory.java b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/tables/TDirectory.java new file mode 100644 index 00000000000..1df4bf7a263 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/tables/TDirectory.java @@ -0,0 +1,88 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle.generatedclasses.test.tables; + +/** + * This class is generated by jOOQ. + */ +public class TDirectory extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = 112930244; + + /** + * The singleton instance of TEST.T_DIRECTORY + */ + public static final org.jooq.test.oracle.generatedclasses.test.tables.TDirectory T_DIRECTORY = new org.jooq.test.oracle.generatedclasses.test.tables.TDirectory(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.oracle.generatedclasses.test.tables.records.TDirectoryRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final org.jooq.TableField ID = createField("ID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT PK_T_DIRECTORY_SELF
+	 * FOREIGN KEY (PARENT_ID)
+	 * REFERENCES TEST.T_DIRECTORY (ID)
+	 * 
+ */ + public final org.jooq.TableField PARENT_ID = createField("PARENT_ID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField IS_DIRECTORY = createField("IS_DIRECTORY", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField NAME = createField("name", org.jooq.impl.SQLDataType.VARCHAR, this); + + public TDirectory() { + super("T_DIRECTORY", org.jooq.test.oracle.generatedclasses.test.Test.TEST); + } + + public TDirectory(java.lang.String alias) { + super(alias, org.jooq.test.oracle.generatedclasses.test.Test.TEST, org.jooq.test.oracle.generatedclasses.test.tables.TDirectory.T_DIRECTORY); + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.test.oracle.generatedclasses.test.Keys.PK_T_DIRECTORY; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.test.oracle.generatedclasses.test.Keys.PK_T_DIRECTORY); + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getReferences() { + return java.util.Arrays.>asList(org.jooq.test.oracle.generatedclasses.test.Keys.PK_T_DIRECTORY_SELF); + } + + @Override + public org.jooq.test.oracle.generatedclasses.test.tables.TDirectory as(java.lang.String alias) { + return new org.jooq.test.oracle.generatedclasses.test.tables.TDirectory(alias); + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/tables/TTriggers.java b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/tables/TTriggers.java new file mode 100644 index 00000000000..0db1e6f33d8 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/tables/TTriggers.java @@ -0,0 +1,71 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle.generatedclasses.test.tables; + +/** + * This class is generated by jOOQ. + */ +public class TTriggers extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = -614120380; + + /** + * The singleton instance of TEST.T_TRIGGERS + */ + public static final org.jooq.test.oracle.generatedclasses.test.tables.TTriggers T_TRIGGERS = new org.jooq.test.oracle.generatedclasses.test.tables.TTriggers(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.oracle.generatedclasses.test.tables.records.TTriggersRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final org.jooq.TableField ID_GENERATED = createField("ID_GENERATED", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField ID = createField("ID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField COUNTER = createField("COUNTER", org.jooq.impl.SQLDataType.INTEGER, this); + + public TTriggers() { + super("T_TRIGGERS", org.jooq.test.oracle.generatedclasses.test.Test.TEST); + } + + public TTriggers(java.lang.String alias) { + super(alias, org.jooq.test.oracle.generatedclasses.test.Test.TEST, org.jooq.test.oracle.generatedclasses.test.tables.TTriggers.T_TRIGGERS); + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.test.oracle.generatedclasses.test.Keys.PK_T_TRIGGERS; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.test.oracle.generatedclasses.test.Keys.PK_T_TRIGGERS); + } + + @Override + public org.jooq.test.oracle.generatedclasses.test.tables.TTriggers as(java.lang.String alias) { + return new org.jooq.test.oracle.generatedclasses.test.tables.TTriggers(alias); + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/tables/T_639NumbersTable.java b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/tables/T_639NumbersTable.java new file mode 100644 index 00000000000..ea24caaa1aa --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/tables/T_639NumbersTable.java @@ -0,0 +1,111 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle.generatedclasses.test.tables; + +/** + * This class is generated by jOOQ. + */ +public class T_639NumbersTable extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = 1821854630; + + /** + * The singleton instance of TEST.T_639_NUMBERS_TABLE + */ + public static final org.jooq.test.oracle.generatedclasses.test.tables.T_639NumbersTable T_639_NUMBERS_TABLE = new org.jooq.test.oracle.generatedclasses.test.tables.T_639NumbersTable(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.oracle.generatedclasses.test.tables.records.T_639NumbersTableRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final org.jooq.TableField ID = createField("ID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField BYTE = createField("BYTE", org.jooq.impl.SQLDataType.TINYINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField SHORT = createField("SHORT", org.jooq.impl.SQLDataType.SMALLINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField INTEGER = createField("INTEGER", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField LONG = createField("LONG", org.jooq.impl.SQLDataType.BIGINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField BYTE_DECIMAL = createField("BYTE_DECIMAL", org.jooq.impl.SQLDataType.TINYINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField SHORT_DECIMAL = createField("SHORT_DECIMAL", org.jooq.impl.SQLDataType.SMALLINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField INTEGER_DECIMAL = createField("INTEGER_DECIMAL", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField LONG_DECIMAL = createField("LONG_DECIMAL", org.jooq.impl.SQLDataType.BIGINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField BIG_INTEGER = createField("BIG_INTEGER", org.jooq.impl.SQLDataType.DECIMAL_INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField BIG_DECIMAL = createField("BIG_DECIMAL", org.jooq.impl.SQLDataType.NUMERIC, this); + + public T_639NumbersTable() { + super("T_639_NUMBERS_TABLE", org.jooq.test.oracle.generatedclasses.test.Test.TEST); + } + + public T_639NumbersTable(java.lang.String alias) { + super(alias, org.jooq.test.oracle.generatedclasses.test.Test.TEST, org.jooq.test.oracle.generatedclasses.test.tables.T_639NumbersTable.T_639_NUMBERS_TABLE); + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.test.oracle.generatedclasses.test.Keys.PK_T_639_NUMBERS_TABLE; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.test.oracle.generatedclasses.test.Keys.PK_T_639_NUMBERS_TABLE); + } + + @Override + public org.jooq.test.oracle.generatedclasses.test.tables.T_639NumbersTable as(java.lang.String alias) { + return new org.jooq.test.oracle.generatedclasses.test.tables.T_639NumbersTable(alias); + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/tables/T_658Ref.java b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/tables/T_658Ref.java new file mode 100644 index 00000000000..904f5e07778 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/tables/T_658Ref.java @@ -0,0 +1,115 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle.generatedclasses.test.tables; + +/** + * This class is generated by jOOQ. + */ +public class T_658Ref extends org.jooq.impl.TableImpl { + + private static final long serialVersionUID = -1359920516; + + /** + * The singleton instance of TEST.T_658_REF + */ + public static final org.jooq.test.oracle.generatedclasses.test.tables.T_658Ref T_658_REF = new org.jooq.test.oracle.generatedclasses.test.tables.T_658Ref(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.oracle.generatedclasses.test.tables.records.T_658RefRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_T_658_11
+	 * FOREIGN KEY (REF_11)
+	 * REFERENCES TEST.T_658_11 (ID)
+	 * 
+ */ + public final org.jooq.TableField REF_11 = createField("REF_11", org.jooq.impl.SQLDataType.CHAR.asMasterDataType(org.jooq.test.oracle.generatedclasses.test.enums.T_658_11.class), this); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_T_658_21
+	 * FOREIGN KEY (REF_21)
+	 * REFERENCES TEST.T_658_21 (ID)
+	 * 
+ */ + public final org.jooq.TableField REF_21 = createField("REF_21", org.jooq.impl.SQLDataType.INTEGER.asMasterDataType(org.jooq.test.oracle.generatedclasses.test.enums.T_658_21.class), this); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_T_658_31
+	 * FOREIGN KEY (REF_31)
+	 * REFERENCES TEST.T_658_31 (ID)
+	 * 
+ */ + public final org.jooq.TableField REF_31 = createField("REF_31", org.jooq.impl.SQLDataType.BIGINT.asMasterDataType(org.jooq.test.oracle.generatedclasses.test.enums.T_658_31.class), this); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_T_658_12
+	 * FOREIGN KEY (REF_12)
+	 * REFERENCES TEST.T_658_12 (ID)
+	 * 
+ */ + public final org.jooq.TableField REF_12 = createField("REF_12", org.jooq.impl.SQLDataType.CHAR.asMasterDataType(org.jooq.test.oracle.generatedclasses.test.enums.T_658_12.class), this); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_T_658_22
+	 * FOREIGN KEY (REF_22)
+	 * REFERENCES TEST.T_658_22 (ID)
+	 * 
+ */ + public final org.jooq.TableField REF_22 = createField("REF_22", org.jooq.impl.SQLDataType.INTEGER.asMasterDataType(org.jooq.test.oracle.generatedclasses.test.enums.T_658_22.class), this); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_T_658_32
+	 * FOREIGN KEY (REF_32)
+	 * REFERENCES TEST.T_658_32 (ID)
+	 * 
+ */ + public final org.jooq.TableField REF_32 = createField("REF_32", org.jooq.impl.SQLDataType.BIGINT.asMasterDataType(org.jooq.test.oracle.generatedclasses.test.enums.T_658_32.class), this); + + public T_658Ref() { + super("T_658_REF", org.jooq.test.oracle.generatedclasses.test.Test.TEST); + } + + public T_658Ref(java.lang.String alias) { + super(alias, org.jooq.test.oracle.generatedclasses.test.Test.TEST, org.jooq.test.oracle.generatedclasses.test.tables.T_658Ref.T_658_REF); + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getReferences() { + return java.util.Arrays.>asList(); + } + + @Override + public org.jooq.test.oracle.generatedclasses.test.tables.T_658Ref as(java.lang.String alias) { + return new org.jooq.test.oracle.generatedclasses.test.tables.T_658Ref(alias); + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/tables/T_725LobTest.java b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/tables/T_725LobTest.java new file mode 100644 index 00000000000..e91aa12852f --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/tables/T_725LobTest.java @@ -0,0 +1,66 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle.generatedclasses.test.tables; + +/** + * This class is generated by jOOQ. + */ +public class T_725LobTest extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = -1309534462; + + /** + * The singleton instance of TEST.T_725_LOB_TEST + */ + public static final org.jooq.test.oracle.generatedclasses.test.tables.T_725LobTest T_725_LOB_TEST = new org.jooq.test.oracle.generatedclasses.test.tables.T_725LobTest(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.oracle.generatedclasses.test.tables.records.T_725LobTestRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final org.jooq.TableField ID = createField("ID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField LOB = createField("LOB", org.jooq.impl.SQLDataType.BLOB, this); + + public T_725LobTest() { + super("T_725_LOB_TEST", org.jooq.test.oracle.generatedclasses.test.Test.TEST); + } + + public T_725LobTest(java.lang.String alias) { + super(alias, org.jooq.test.oracle.generatedclasses.test.Test.TEST, org.jooq.test.oracle.generatedclasses.test.tables.T_725LobTest.T_725_LOB_TEST); + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.test.oracle.generatedclasses.test.Keys.PK_T_725_LOB_TEST; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.test.oracle.generatedclasses.test.Keys.PK_T_725_LOB_TEST); + } + + @Override + public org.jooq.test.oracle.generatedclasses.test.tables.T_725LobTest as(java.lang.String alias) { + return new org.jooq.test.oracle.generatedclasses.test.tables.T_725LobTest(alias); + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/tables/T_785.java b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/tables/T_785.java new file mode 100644 index 00000000000..9c5ab693b88 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/tables/T_785.java @@ -0,0 +1,58 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle.generatedclasses.test.tables; + +/** + * This class is generated by jOOQ. + */ +public class T_785 extends org.jooq.impl.TableImpl { + + private static final long serialVersionUID = 1246385422; + + /** + * The singleton instance of TEST.T_785 + */ + public static final org.jooq.test.oracle.generatedclasses.test.tables.T_785 T_785 = new org.jooq.test.oracle.generatedclasses.test.tables.T_785(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.oracle.generatedclasses.test.tables.records.T_785Record.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + */ + public final org.jooq.TableField ID = createField("ID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField NAME = createField("NAME", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField VALUE = createField("VALUE", org.jooq.impl.SQLDataType.VARCHAR, this); + + public T_785() { + super("T_785", org.jooq.test.oracle.generatedclasses.test.Test.TEST); + } + + public T_785(java.lang.String alias) { + super(alias, org.jooq.test.oracle.generatedclasses.test.Test.TEST, org.jooq.test.oracle.generatedclasses.test.tables.T_785.T_785); + } + + @Override + public org.jooq.test.oracle.generatedclasses.test.tables.T_785 as(java.lang.String alias) { + return new org.jooq.test.oracle.generatedclasses.test.tables.T_785(alias); + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/tables/VAuthor.java b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/tables/VAuthor.java new file mode 100644 index 00000000000..be469513e85 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/tables/VAuthor.java @@ -0,0 +1,73 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle.generatedclasses.test.tables; + +/** + * This class is generated by jOOQ. + */ +public class VAuthor extends org.jooq.impl.TableImpl { + + private static final long serialVersionUID = -2083725464; + + /** + * The singleton instance of TEST.V_AUTHOR + */ + public static final org.jooq.test.oracle.generatedclasses.test.tables.VAuthor V_AUTHOR = new org.jooq.test.oracle.generatedclasses.test.tables.VAuthor(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.oracle.generatedclasses.test.tables.records.VAuthorRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + */ + public final org.jooq.TableField ID = createField("ID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField FIRST_NAME = createField("FIRST_NAME", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField LAST_NAME = createField("LAST_NAME", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField DATE_OF_BIRTH = createField("DATE_OF_BIRTH", org.jooq.impl.SQLDataType.DATE, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField YEAR_OF_BIRTH = createField("YEAR_OF_BIRTH", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField ADDRESS = createField("ADDRESS", org.jooq.test.oracle.generatedclasses.test.udt.UAddressType.U_ADDRESS_TYPE.getDataType(), this); + + public VAuthor() { + super("V_AUTHOR", org.jooq.test.oracle.generatedclasses.test.Test.TEST); + } + + public VAuthor(java.lang.String alias) { + super(alias, org.jooq.test.oracle.generatedclasses.test.Test.TEST, org.jooq.test.oracle.generatedclasses.test.tables.VAuthor.V_AUTHOR); + } + + @Override + public org.jooq.test.oracle.generatedclasses.test.tables.VAuthor as(java.lang.String alias) { + return new org.jooq.test.oracle.generatedclasses.test.tables.VAuthor(alias); + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/tables/VBook.java b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/tables/VBook.java new file mode 100644 index 00000000000..d327fda1691 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/tables/VBook.java @@ -0,0 +1,88 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle.generatedclasses.test.tables; + +/** + * This class is generated by jOOQ. + */ +public class VBook extends org.jooq.impl.TableImpl { + + private static final long serialVersionUID = -1457728164; + + /** + * The singleton instance of TEST.V_BOOK + */ + public static final org.jooq.test.oracle.generatedclasses.test.tables.VBook V_BOOK = new org.jooq.test.oracle.generatedclasses.test.tables.VBook(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.oracle.generatedclasses.test.tables.records.VBookRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + */ + public final org.jooq.TableField ID = createField("ID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField AUTHOR_ID = createField("AUTHOR_ID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField CO_AUTHOR_ID = createField("CO_AUTHOR_ID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField DETAILS_ID = createField("DETAILS_ID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField TITLE = createField("TITLE", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField PUBLISHED_IN = createField("PUBLISHED_IN", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField LANGUAGE_ID = createField("LANGUAGE_ID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField CONTENT_TEXT = createField("CONTENT_TEXT", org.jooq.impl.SQLDataType.CLOB, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField CONTENT_PDF = createField("CONTENT_PDF", org.jooq.impl.SQLDataType.BLOB, this); + + public VBook() { + super("V_BOOK", org.jooq.test.oracle.generatedclasses.test.Test.TEST); + } + + public VBook(java.lang.String alias) { + super(alias, org.jooq.test.oracle.generatedclasses.test.Test.TEST, org.jooq.test.oracle.generatedclasses.test.tables.VBook.V_BOOK); + } + + @Override + public org.jooq.test.oracle.generatedclasses.test.tables.VBook as(java.lang.String alias) { + return new org.jooq.test.oracle.generatedclasses.test.tables.VBook(alias); + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/tables/VIncomplete.java b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/tables/VIncomplete.java new file mode 100644 index 00000000000..1a0205a7c5c --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/tables/VIncomplete.java @@ -0,0 +1,115 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle.generatedclasses.test.tables; + +/** + * This class is generated by jOOQ. + */ +public class VIncomplete extends org.jooq.impl.TableImpl { + + private static final long serialVersionUID = 1048461901; + + /** + * The singleton instance of TEST.V_INCOMPLETE + */ + public static final org.jooq.test.oracle.generatedclasses.test.tables.VIncomplete V_INCOMPLETE = new org.jooq.test.oracle.generatedclasses.test.tables.VIncomplete(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.oracle.generatedclasses.test.tables.records.VIncompleteRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * The SQL type of this item (UNDEFINED) could not be mapped.
+ * Deserialising this field might not work! + */ + public final org.jooq.TableField ID = createField("ID", org.jooq.util.oracle.OracleDataType.getDefaultDataType("UNDEFINED"), this); + + /** + * An uncommented item + * + * The SQL type of this item (UNDEFINED) could not be mapped.
+ * Deserialising this field might not work! + */ + public final org.jooq.TableField AUTHOR_ID = createField("AUTHOR_ID", org.jooq.util.oracle.OracleDataType.getDefaultDataType("UNDEFINED"), this); + + /** + * An uncommented item + * + * The SQL type of this item (UNDEFINED) could not be mapped.
+ * Deserialising this field might not work! + */ + public final org.jooq.TableField CO_AUTHOR_ID = createField("CO_AUTHOR_ID", org.jooq.util.oracle.OracleDataType.getDefaultDataType("UNDEFINED"), this); + + /** + * An uncommented item + * + * The SQL type of this item (UNDEFINED) could not be mapped.
+ * Deserialising this field might not work! + */ + public final org.jooq.TableField DETAILS_ID = createField("DETAILS_ID", org.jooq.util.oracle.OracleDataType.getDefaultDataType("UNDEFINED"), this); + + /** + * An uncommented item + * + * The SQL type of this item (UNDEFINED) could not be mapped.
+ * Deserialising this field might not work! + */ + public final org.jooq.TableField TITLE = createField("TITLE", org.jooq.util.oracle.OracleDataType.getDefaultDataType("UNDEFINED"), this); + + /** + * An uncommented item + * + * The SQL type of this item (UNDEFINED) could not be mapped.
+ * Deserialising this field might not work! + */ + public final org.jooq.TableField PUBLISHED_IN = createField("PUBLISHED_IN", org.jooq.util.oracle.OracleDataType.getDefaultDataType("UNDEFINED"), this); + + /** + * An uncommented item + * + * The SQL type of this item (UNDEFINED) could not be mapped.
+ * Deserialising this field might not work! + */ + public final org.jooq.TableField LANGUAGE_ID = createField("LANGUAGE_ID", org.jooq.util.oracle.OracleDataType.getDefaultDataType("UNDEFINED"), this); + + /** + * An uncommented item + * + * The SQL type of this item (UNDEFINED) could not be mapped.
+ * Deserialising this field might not work! + */ + public final org.jooq.TableField CONTENT_TEXT = createField("CONTENT_TEXT", org.jooq.util.oracle.OracleDataType.getDefaultDataType("UNDEFINED"), this); + + /** + * An uncommented item + * + * The SQL type of this item (UNDEFINED) could not be mapped.
+ * Deserialising this field might not work! + */ + public final org.jooq.TableField CONTENT_PDF = createField("CONTENT_PDF", org.jooq.util.oracle.OracleDataType.getDefaultDataType("UNDEFINED"), this); + + public VIncomplete() { + super("V_INCOMPLETE", org.jooq.test.oracle.generatedclasses.test.Test.TEST); + } + + public VIncomplete(java.lang.String alias) { + super(alias, org.jooq.test.oracle.generatedclasses.test.Test.TEST, org.jooq.test.oracle.generatedclasses.test.tables.VIncomplete.V_INCOMPLETE); + } + + @Override + public org.jooq.test.oracle.generatedclasses.test.tables.VIncomplete as(java.lang.String alias) { + return new org.jooq.test.oracle.generatedclasses.test.tables.VIncomplete(alias); + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/tables/VLibrary.java b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/tables/VLibrary.java new file mode 100644 index 00000000000..bd6d5b07b44 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/tables/VLibrary.java @@ -0,0 +1,53 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle.generatedclasses.test.tables; + +/** + * This class is generated by jOOQ. + */ +public class VLibrary extends org.jooq.impl.TableImpl { + + private static final long serialVersionUID = -973619996; + + /** + * The singleton instance of TEST.V_LIBRARY + */ + public static final org.jooq.test.oracle.generatedclasses.test.tables.VLibrary V_LIBRARY = new org.jooq.test.oracle.generatedclasses.test.tables.VLibrary(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.oracle.generatedclasses.test.tables.records.VLibraryRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + */ + public final org.jooq.TableField AUTHOR = createField("AUTHOR", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField TITLE = createField("TITLE", org.jooq.impl.SQLDataType.VARCHAR, this); + + public VLibrary() { + super("V_LIBRARY", org.jooq.test.oracle.generatedclasses.test.Test.TEST); + } + + public VLibrary(java.lang.String alias) { + super(alias, org.jooq.test.oracle.generatedclasses.test.Test.TEST, org.jooq.test.oracle.generatedclasses.test.tables.VLibrary.V_LIBRARY); + } + + @Override + public org.jooq.test.oracle.generatedclasses.test.tables.VLibrary as(java.lang.String alias) { + return new org.jooq.test.oracle.generatedclasses.test.tables.VLibrary(alias); + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/tables/XTestCase_64_69.java b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/tables/XTestCase_64_69.java new file mode 100644 index 00000000000..4a3f2c69067 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/tables/XTestCase_64_69.java @@ -0,0 +1,78 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle.generatedclasses.test.tables; + +/** + * This class is generated by jOOQ. + */ +public class XTestCase_64_69 extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = 2017279273; + + /** + * The singleton instance of TEST.X_TEST_CASE_64_69 + */ + public static final org.jooq.test.oracle.generatedclasses.test.tables.XTestCase_64_69 X_TEST_CASE_64_69 = new org.jooq.test.oracle.generatedclasses.test.tables.XTestCase_64_69(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.oracle.generatedclasses.test.tables.records.XTestCase_64_69Record.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final org.jooq.TableField ID = createField("ID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_X_TEST_CASE_64_69A
+	 * FOREIGN KEY (UNUSED_ID)
+	 * REFERENCES TEST.X_UNUSED (ID)
+	 * 
+ */ + public final org.jooq.TableField UNUSED_ID = createField("UNUSED_ID", org.jooq.impl.SQLDataType.INTEGER, this); + + public XTestCase_64_69() { + super("X_TEST_CASE_64_69", org.jooq.test.oracle.generatedclasses.test.Test.TEST); + } + + public XTestCase_64_69(java.lang.String alias) { + super(alias, org.jooq.test.oracle.generatedclasses.test.Test.TEST, org.jooq.test.oracle.generatedclasses.test.tables.XTestCase_64_69.X_TEST_CASE_64_69); + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.test.oracle.generatedclasses.test.Keys.PK_X_TEST_CASE_64_69; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.test.oracle.generatedclasses.test.Keys.PK_X_TEST_CASE_64_69); + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getReferences() { + return java.util.Arrays.>asList(org.jooq.test.oracle.generatedclasses.test.Keys.FK_X_TEST_CASE_64_69A); + } + + @Override + public org.jooq.test.oracle.generatedclasses.test.tables.XTestCase_64_69 as(java.lang.String alias) { + return new org.jooq.test.oracle.generatedclasses.test.tables.XTestCase_64_69(alias); + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/tables/XTestCase_71.java b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/tables/XTestCase_71.java new file mode 100644 index 00000000000..508f083374a --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/tables/XTestCase_71.java @@ -0,0 +1,78 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle.generatedclasses.test.tables; + +/** + * This class is generated by jOOQ. + */ +public class XTestCase_71 extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = -2009296289; + + /** + * The singleton instance of TEST.X_TEST_CASE_71 + */ + public static final org.jooq.test.oracle.generatedclasses.test.tables.XTestCase_71 X_TEST_CASE_71 = new org.jooq.test.oracle.generatedclasses.test.tables.XTestCase_71(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.oracle.generatedclasses.test.tables.records.XTestCase_71Record.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final org.jooq.TableField ID = createField("ID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_X_TEST_CASE_71
+	 * FOREIGN KEY (TEST_CASE_64_69_ID)
+	 * REFERENCES TEST.X_TEST_CASE_64_69 (ID)
+	 * 
+ */ + public final org.jooq.TableField TEST_CASE_64_69_ID = createField("TEST_CASE_64_69_ID", org.jooq.impl.SQLDataType.SMALLINT, this); + + public XTestCase_71() { + super("X_TEST_CASE_71", org.jooq.test.oracle.generatedclasses.test.Test.TEST); + } + + public XTestCase_71(java.lang.String alias) { + super(alias, org.jooq.test.oracle.generatedclasses.test.Test.TEST, org.jooq.test.oracle.generatedclasses.test.tables.XTestCase_71.X_TEST_CASE_71); + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.test.oracle.generatedclasses.test.Keys.PK_X_TEST_CASE_71; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.test.oracle.generatedclasses.test.Keys.PK_X_TEST_CASE_71); + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getReferences() { + return java.util.Arrays.>asList(org.jooq.test.oracle.generatedclasses.test.Keys.FK_X_TEST_CASE_71); + } + + @Override + public org.jooq.test.oracle.generatedclasses.test.tables.XTestCase_71 as(java.lang.String alias) { + return new org.jooq.test.oracle.generatedclasses.test.tables.XTestCase_71(alias); + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/tables/XTestCase_85.java b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/tables/XTestCase_85.java new file mode 100644 index 00000000000..472eb667555 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/tables/XTestCase_85.java @@ -0,0 +1,89 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle.generatedclasses.test.tables; + +/** + * This class is generated by jOOQ. + */ +public class XTestCase_85 extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = 2002244259; + + /** + * The singleton instance of TEST.X_TEST_CASE_85 + */ + public static final org.jooq.test.oracle.generatedclasses.test.tables.XTestCase_85 X_TEST_CASE_85 = new org.jooq.test.oracle.generatedclasses.test.tables.XTestCase_85(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.oracle.generatedclasses.test.tables.records.XTestCase_85Record.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final org.jooq.TableField ID = createField("ID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_X_TEST_CASE_85
+	 * FOREIGN KEY (X_UNUSED_ID, X_UNUSED_NAME)
+	 * REFERENCES TEST.X_UNUSED (ID, NAME)
+	 * 
+ */ + public final org.jooq.TableField X_UNUSED_ID = createField("X_UNUSED_ID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_X_TEST_CASE_85
+	 * FOREIGN KEY (X_UNUSED_ID, X_UNUSED_NAME)
+	 * REFERENCES TEST.X_UNUSED (ID, NAME)
+	 * 
+ */ + public final org.jooq.TableField X_UNUSED_NAME = createField("X_UNUSED_NAME", org.jooq.impl.SQLDataType.VARCHAR, this); + + public XTestCase_85() { + super("X_TEST_CASE_85", org.jooq.test.oracle.generatedclasses.test.Test.TEST); + } + + public XTestCase_85(java.lang.String alias) { + super(alias, org.jooq.test.oracle.generatedclasses.test.Test.TEST, org.jooq.test.oracle.generatedclasses.test.tables.XTestCase_85.X_TEST_CASE_85); + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.test.oracle.generatedclasses.test.Keys.PK_X_TEST_CASE_85; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.test.oracle.generatedclasses.test.Keys.PK_X_TEST_CASE_85); + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getReferences() { + return java.util.Arrays.>asList(org.jooq.test.oracle.generatedclasses.test.Keys.FK_X_TEST_CASE_85); + } + + @Override + public org.jooq.test.oracle.generatedclasses.test.tables.XTestCase_85 as(java.lang.String alias) { + return new org.jooq.test.oracle.generatedclasses.test.tables.XTestCase_85(alias); + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/tables/XUnused.java b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/tables/XUnused.java new file mode 100644 index 00000000000..6696f9ca849 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/tables/XUnused.java @@ -0,0 +1,158 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle.generatedclasses.test.tables; + +/** + * This class is generated by jOOQ. + * + * An unused table in the same schema. + */ +public class XUnused extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = -1436757446; + + /** + * The singleton instance of TEST.X_UNUSED + */ + public static final org.jooq.test.oracle.generatedclasses.test.tables.XUnused X_UNUSED = new org.jooq.test.oracle.generatedclasses.test.tables.XUnused(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.oracle.generatedclasses.test.tables.records.XUnusedRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final org.jooq.TableField ID = createField("ID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final org.jooq.TableField NAME = createField("NAME", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField BIG_INTEGER = createField("BIG_INTEGER", org.jooq.impl.SQLDataType.DECIMAL_INTEGER, this); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_X_UNUSED_SELF
+	 * FOREIGN KEY (ID_REF, NAME_REF)
+	 * REFERENCES TEST.X_UNUSED (ID, NAME)
+	 * 
+ */ + public final org.jooq.TableField ID_REF = createField("ID_REF", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField CLASS = createField("CLASS", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField FIELDS = createField("FIELDS", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField CONFIGURATION = createField("CONFIGURATION", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField U_D_T = createField("U_D_T", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField META_DATA = createField("META_DATA", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField TYPE0 = createField("TYPE0", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField PRIMARY_KEY = createField("PRIMARY_KEY", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField PRIMARYKEY = createField("PRIMARYKEY", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_X_UNUSED_SELF
+	 * FOREIGN KEY (ID_REF, NAME_REF)
+	 * REFERENCES TEST.X_UNUSED (ID, NAME)
+	 * 
+ */ + public final org.jooq.TableField NAME_REF = createField("NAME_REF", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField FIELD_737 = createField("FIELD 737", org.jooq.impl.SQLDataType.NUMERIC, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField MS_UNUSED_ID_REF = createField("MS_UNUSED_ID_REF", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField MS_UNUSED_NAME_REF = createField("MS_UNUSED_NAME_REF", org.jooq.impl.SQLDataType.VARCHAR, this); + + public XUnused() { + super("X_UNUSED", org.jooq.test.oracle.generatedclasses.test.Test.TEST); + } + + public XUnused(java.lang.String alias) { + super(alias, org.jooq.test.oracle.generatedclasses.test.Test.TEST, org.jooq.test.oracle.generatedclasses.test.tables.XUnused.X_UNUSED); + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.test.oracle.generatedclasses.test.Keys.PK_X_UNUSED; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.test.oracle.generatedclasses.test.Keys.PK_X_UNUSED, org.jooq.test.oracle.generatedclasses.test.Keys.UK_X_UNUSED_ID); + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getReferences() { + return java.util.Arrays.>asList(org.jooq.test.oracle.generatedclasses.test.Keys.FK_X_UNUSED_SELF); + } + + @Override + public org.jooq.test.oracle.generatedclasses.test.tables.XUnused as(java.lang.String alias) { + return new org.jooq.test.oracle.generatedclasses.test.tables.XUnused(alias); + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/tables/pojos/TArrays.java b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/tables/pojos/TArrays.java new file mode 100644 index 00000000000..e89ee3b4497 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/tables/pojos/TArrays.java @@ -0,0 +1,66 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle.generatedclasses.test.tables.pojos; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "T_ARRAYS", schema = "TEST") +public class TArrays implements java.io.Serializable { + + private static final long serialVersionUID = -1739262558; + + private java.lang.Integer id; + private org.jooq.test.oracle.generatedclasses.test.udt.records.UStringArrayRecord stringArray; + private org.jooq.test.oracle.generatedclasses.test.udt.records.UNumberArrayRecord numberArray; + private org.jooq.test.oracle.generatedclasses.test.udt.records.UNumberLongArrayRecord numberLongArray; + private org.jooq.test.oracle.generatedclasses.test.udt.records.UDateArrayRecord dateArray; + + @javax.persistence.Id + @javax.persistence.Column(name = "ID", unique = true, nullable = false, precision = 7) + public java.lang.Integer getId() { + return this.id; + } + + public void setId(java.lang.Integer id) { + this.id = id; + } + + @javax.persistence.Column(name = "STRING_ARRAY", length = 101) + public org.jooq.test.oracle.generatedclasses.test.udt.records.UStringArrayRecord getStringArray() { + return this.stringArray; + } + + public void setStringArray(org.jooq.test.oracle.generatedclasses.test.udt.records.UStringArrayRecord stringArray) { + this.stringArray = stringArray; + } + + @javax.persistence.Column(name = "NUMBER_ARRAY", length = 109) + public org.jooq.test.oracle.generatedclasses.test.udt.records.UNumberArrayRecord getNumberArray() { + return this.numberArray; + } + + public void setNumberArray(org.jooq.test.oracle.generatedclasses.test.udt.records.UNumberArrayRecord numberArray) { + this.numberArray = numberArray; + } + + @javax.persistence.Column(name = "NUMBER_LONG_ARRAY", length = 109) + public org.jooq.test.oracle.generatedclasses.test.udt.records.UNumberLongArrayRecord getNumberLongArray() { + return this.numberLongArray; + } + + public void setNumberLongArray(org.jooq.test.oracle.generatedclasses.test.udt.records.UNumberLongArrayRecord numberLongArray) { + this.numberLongArray = numberLongArray; + } + + @javax.persistence.Column(name = "DATE_ARRAY", length = 49) + public org.jooq.test.oracle.generatedclasses.test.udt.records.UDateArrayRecord getDateArray() { + return this.dateArray; + } + + public void setDateArray(org.jooq.test.oracle.generatedclasses.test.udt.records.UDateArrayRecord dateArray) { + this.dateArray = dateArray; + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/tables/pojos/TAuthor.java b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/tables/pojos/TAuthor.java new file mode 100644 index 00000000000..cfd48210c0c --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/tables/pojos/TAuthor.java @@ -0,0 +1,78 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle.generatedclasses.test.tables.pojos; + +/** + * This class is generated by jOOQ. + * + * An entity holding authors of books + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "T_AUTHOR", schema = "TEST") +public class TAuthor implements java.io.Serializable { + + private static final long serialVersionUID = 893041788; + + private java.lang.Integer id; + private java.lang.String firstName; + private java.lang.String lastName; + private java.sql.Date dateOfBirth; + private java.lang.Integer yearOfBirth; + private org.jooq.test.oracle.generatedclasses.test.udt.records.UAddressTypeRecord address; + + @javax.persistence.Id + @javax.persistence.Column(name = "ID", unique = true, nullable = false, precision = 7) + public java.lang.Integer getId() { + return this.id; + } + + public void setId(java.lang.Integer id) { + this.id = id; + } + + @javax.persistence.Column(name = "FIRST_NAME", length = 50) + public java.lang.String getFirstName() { + return this.firstName; + } + + public void setFirstName(java.lang.String firstName) { + this.firstName = firstName; + } + + @javax.persistence.Column(name = "LAST_NAME", nullable = false, length = 50) + public java.lang.String getLastName() { + return this.lastName; + } + + public void setLastName(java.lang.String lastName) { + this.lastName = lastName; + } + + @javax.persistence.Column(name = "DATE_OF_BIRTH", length = 7) + public java.sql.Date getDateOfBirth() { + return this.dateOfBirth; + } + + public void setDateOfBirth(java.sql.Date dateOfBirth) { + this.dateOfBirth = dateOfBirth; + } + + @javax.persistence.Column(name = "YEAR_OF_BIRTH", precision = 7) + public java.lang.Integer getYearOfBirth() { + return this.yearOfBirth; + } + + public void setYearOfBirth(java.lang.Integer yearOfBirth) { + this.yearOfBirth = yearOfBirth; + } + + @javax.persistence.Column(name = "ADDRESS", length = 1) + public org.jooq.test.oracle.generatedclasses.test.udt.records.UAddressTypeRecord getAddress() { + return this.address; + } + + public void setAddress(org.jooq.test.oracle.generatedclasses.test.udt.records.UAddressTypeRecord address) { + this.address = address; + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/tables/pojos/TBook.java b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/tables/pojos/TBook.java new file mode 100644 index 00000000000..5855674144c --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/tables/pojos/TBook.java @@ -0,0 +1,108 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle.generatedclasses.test.tables.pojos; + +/** + * This class is generated by jOOQ. + * + * An entity holding books + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "T_BOOK", schema = "TEST") +public class TBook implements java.io.Serializable { + + private static final long serialVersionUID = 1863594769; + + private java.lang.Integer id; + private java.lang.Integer authorId; + private java.lang.Integer coAuthorId; + private java.lang.Integer detailsId; + private java.lang.String title; + private java.lang.Integer publishedIn; + private org.jooq.test.oracle.generatedclasses.test.enums.TLanguage languageId; + private java.lang.String contentText; + private byte[] contentPdf; + + @javax.persistence.Id + @javax.persistence.Column(name = "ID", unique = true, nullable = false, precision = 7) + public java.lang.Integer getId() { + return this.id; + } + + public void setId(java.lang.Integer id) { + this.id = id; + } + + @javax.persistence.Column(name = "AUTHOR_ID", nullable = false, precision = 7) + public java.lang.Integer getAuthorId() { + return this.authorId; + } + + public void setAuthorId(java.lang.Integer authorId) { + this.authorId = authorId; + } + + @javax.persistence.Column(name = "CO_AUTHOR_ID", precision = 7) + public java.lang.Integer getCoAuthorId() { + return this.coAuthorId; + } + + public void setCoAuthorId(java.lang.Integer coAuthorId) { + this.coAuthorId = coAuthorId; + } + + @javax.persistence.Column(name = "DETAILS_ID", precision = 7) + public java.lang.Integer getDetailsId() { + return this.detailsId; + } + + public void setDetailsId(java.lang.Integer detailsId) { + this.detailsId = detailsId; + } + + @javax.persistence.Column(name = "TITLE", nullable = false, length = 400) + public java.lang.String getTitle() { + return this.title; + } + + public void setTitle(java.lang.String title) { + this.title = title; + } + + @javax.persistence.Column(name = "PUBLISHED_IN", nullable = false, precision = 7) + public java.lang.Integer getPublishedIn() { + return this.publishedIn; + } + + public void setPublishedIn(java.lang.Integer publishedIn) { + this.publishedIn = publishedIn; + } + + @javax.persistence.Column(name = "LANGUAGE_ID", nullable = false, precision = 7) + public org.jooq.test.oracle.generatedclasses.test.enums.TLanguage getLanguageId() { + return this.languageId; + } + + public void setLanguageId(org.jooq.test.oracle.generatedclasses.test.enums.TLanguage languageId) { + this.languageId = languageId; + } + + @javax.persistence.Column(name = "CONTENT_TEXT", length = 4000) + public java.lang.String getContentText() { + return this.contentText; + } + + public void setContentText(java.lang.String contentText) { + this.contentText = contentText; + } + + @javax.persistence.Column(name = "CONTENT_PDF", length = 4000) + public byte[] getContentPdf() { + return this.contentPdf; + } + + public void setContentPdf(byte[] contentPdf) { + this.contentPdf = contentPdf; + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/tables/pojos/TBookStore.java b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/tables/pojos/TBookStore.java new file mode 100644 index 00000000000..a1e09077de3 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/tables/pojos/TBookStore.java @@ -0,0 +1,27 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle.generatedclasses.test.tables.pojos; + +/** + * This class is generated by jOOQ. + * + * A book store + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "T_BOOK_STORE", schema = "TEST") +public class TBookStore implements java.io.Serializable { + + private static final long serialVersionUID = -1841678988; + + private java.lang.String name; + + @javax.persistence.Column(name = "NAME", unique = true, nullable = false, length = 400) + public java.lang.String getName() { + return this.name; + } + + public void setName(java.lang.String name) { + this.name = name; + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/tables/pojos/TBookToBookStore.java b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/tables/pojos/TBookToBookStore.java new file mode 100644 index 00000000000..8fc9b96dd22 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/tables/pojos/TBookToBookStore.java @@ -0,0 +1,49 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle.generatedclasses.test.tables.pojos; + +/** + * This class is generated by jOOQ. + * + * An m:n relation between books and book stores + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "T_BOOK_TO_BOOK_STORE", schema = "TEST", uniqueConstraints = { + @javax.persistence.UniqueConstraint(columnNames = {"BOOK_STORE_NAME", "BOOK_ID"}) +}) +public class TBookToBookStore implements java.io.Serializable { + + private static final long serialVersionUID = -573665373; + + private java.lang.String bookStoreName; + private java.lang.Integer bookId; + private java.lang.Integer stock; + + @javax.persistence.Column(name = "BOOK_STORE_NAME", nullable = false, length = 400) + public java.lang.String getBookStoreName() { + return this.bookStoreName; + } + + public void setBookStoreName(java.lang.String bookStoreName) { + this.bookStoreName = bookStoreName; + } + + @javax.persistence.Column(name = "BOOK_ID", nullable = false, precision = 7) + public java.lang.Integer getBookId() { + return this.bookId; + } + + public void setBookId(java.lang.Integer bookId) { + this.bookId = bookId; + } + + @javax.persistence.Column(name = "STOCK", precision = 7) + public java.lang.Integer getStock() { + return this.stock; + } + + public void setStock(java.lang.Integer stock) { + this.stock = stock; + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/tables/pojos/TBooleans.java b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/tables/pojos/TBooleans.java new file mode 100644 index 00000000000..d9719bd3b36 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/tables/pojos/TBooleans.java @@ -0,0 +1,126 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle.generatedclasses.test.tables.pojos; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "T_BOOLEANS", schema = "TEST") +public class TBooleans implements java.io.Serializable { + + private static final long serialVersionUID = -2135497983; + + private java.lang.Integer id; + private org.jooq.test._.converters.Boolean_10 oneZero; + private org.jooq.test._.converters.Boolean_TF_LC trueFalseLc; + private org.jooq.test._.converters.Boolean_TF_UC trueFalseUc; + private org.jooq.test._.converters.Boolean_YES_NO_LC yesNoLc; + private org.jooq.test._.converters.Boolean_YES_NO_UC yesNoUc; + private org.jooq.test._.converters.Boolean_YN_LC yNLc; + private org.jooq.test._.converters.Boolean_YN_UC yNUc; + private java.lang.Boolean vcBoolean; + private java.lang.Boolean cBoolean; + private java.lang.Boolean nBoolean; + + @javax.persistence.Id + @javax.persistence.Column(name = "ID", unique = true, nullable = false, precision = 7) + public java.lang.Integer getId() { + return this.id; + } + + public void setId(java.lang.Integer id) { + this.id = id; + } + + @javax.persistence.Column(name = "ONE_ZERO", precision = 7) + public org.jooq.test._.converters.Boolean_10 getOneZero() { + return this.oneZero; + } + + public void setOneZero(org.jooq.test._.converters.Boolean_10 oneZero) { + this.oneZero = oneZero; + } + + @javax.persistence.Column(name = "TRUE_FALSE_LC", length = 5) + public org.jooq.test._.converters.Boolean_TF_LC getTrueFalseLc() { + return this.trueFalseLc; + } + + public void setTrueFalseLc(org.jooq.test._.converters.Boolean_TF_LC trueFalseLc) { + this.trueFalseLc = trueFalseLc; + } + + @javax.persistence.Column(name = "TRUE_FALSE_UC", length = 5) + public org.jooq.test._.converters.Boolean_TF_UC getTrueFalseUc() { + return this.trueFalseUc; + } + + public void setTrueFalseUc(org.jooq.test._.converters.Boolean_TF_UC trueFalseUc) { + this.trueFalseUc = trueFalseUc; + } + + @javax.persistence.Column(name = "YES_NO_LC", length = 3) + public org.jooq.test._.converters.Boolean_YES_NO_LC getYesNoLc() { + return this.yesNoLc; + } + + public void setYesNoLc(org.jooq.test._.converters.Boolean_YES_NO_LC yesNoLc) { + this.yesNoLc = yesNoLc; + } + + @javax.persistence.Column(name = "YES_NO_UC", length = 3) + public org.jooq.test._.converters.Boolean_YES_NO_UC getYesNoUc() { + return this.yesNoUc; + } + + public void setYesNoUc(org.jooq.test._.converters.Boolean_YES_NO_UC yesNoUc) { + this.yesNoUc = yesNoUc; + } + + @javax.persistence.Column(name = "Y_N_LC", length = 1) + public org.jooq.test._.converters.Boolean_YN_LC getYNLc() { + return this.yNLc; + } + + public void setYNLc(org.jooq.test._.converters.Boolean_YN_LC yNLc) { + this.yNLc = yNLc; + } + + @javax.persistence.Column(name = "Y_N_UC", length = 1) + public org.jooq.test._.converters.Boolean_YN_UC getYNUc() { + return this.yNUc; + } + + public void setYNUc(org.jooq.test._.converters.Boolean_YN_UC yNUc) { + this.yNUc = yNUc; + } + + @javax.persistence.Column(name = "VC_BOOLEAN", length = 1) + public java.lang.Boolean getVcBoolean() { + return this.vcBoolean; + } + + public void setVcBoolean(java.lang.Boolean vcBoolean) { + this.vcBoolean = vcBoolean; + } + + @javax.persistence.Column(name = "C_BOOLEAN", length = 1) + public java.lang.Boolean getCBoolean() { + return this.cBoolean; + } + + public void setCBoolean(java.lang.Boolean cBoolean) { + this.cBoolean = cBoolean; + } + + @javax.persistence.Column(name = "N_BOOLEAN", precision = 7) + public java.lang.Boolean getNBoolean() { + return this.nBoolean; + } + + public void setNBoolean(java.lang.Boolean nBoolean) { + this.nBoolean = nBoolean; + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/tables/pojos/TDates.java b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/tables/pojos/TDates.java new file mode 100644 index 00000000000..715cae9106d --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/tables/pojos/TDates.java @@ -0,0 +1,96 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle.generatedclasses.test.tables.pojos; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "T_DATES", schema = "TEST") +public class TDates implements java.io.Serializable { + + private static final long serialVersionUID = -1288318414; + + private java.lang.Integer id; + private java.sql.Date d; + private java.sql.Timestamp t; + private java.sql.Timestamp ts; + private java.lang.Integer dInt; + private java.lang.Long tsBigint; + private org.jooq.types.YearToMonth iY; + private org.jooq.types.DayToSecond iD; + + @javax.persistence.Id + @javax.persistence.Column(name = "ID", unique = true, nullable = false, precision = 7) + public java.lang.Integer getId() { + return this.id; + } + + public void setId(java.lang.Integer id) { + this.id = id; + } + + @javax.persistence.Column(name = "D", length = 7) + public java.sql.Date getD() { + return this.d; + } + + public void setD(java.sql.Date d) { + this.d = d; + } + + @javax.persistence.Column(name = "T", length = 11) + public java.sql.Timestamp getT() { + return this.t; + } + + public void setT(java.sql.Timestamp t) { + this.t = t; + } + + @javax.persistence.Column(name = "TS", length = 11) + public java.sql.Timestamp getTs() { + return this.ts; + } + + public void setTs(java.sql.Timestamp ts) { + this.ts = ts; + } + + @javax.persistence.Column(name = "D_INT", precision = 7) + public java.lang.Integer getDInt() { + return this.dInt; + } + + public void setDInt(java.lang.Integer dInt) { + this.dInt = dInt; + } + + @javax.persistence.Column(name = "TS_BIGINT", precision = 18) + public java.lang.Long getTsBigint() { + return this.tsBigint; + } + + public void setTsBigint(java.lang.Long tsBigint) { + this.tsBigint = tsBigint; + } + + @javax.persistence.Column(name = "I_Y", precision = 2) + public org.jooq.types.YearToMonth getIY() { + return this.iY; + } + + public void setIY(org.jooq.types.YearToMonth iY) { + this.iY = iY; + } + + @javax.persistence.Column(name = "I_D", precision = 2, scale = 6) + public org.jooq.types.DayToSecond getID() { + return this.iD; + } + + public void setID(org.jooq.types.DayToSecond iD) { + this.iD = iD; + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/tables/pojos/TDirectory.java b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/tables/pojos/TDirectory.java new file mode 100644 index 00000000000..a9f3420bd50 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/tables/pojos/TDirectory.java @@ -0,0 +1,56 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle.generatedclasses.test.tables.pojos; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "T_DIRECTORY", schema = "TEST") +public class TDirectory implements java.io.Serializable { + + private static final long serialVersionUID = 986299765; + + private java.lang.Integer id; + private java.lang.Integer parentId; + private java.lang.Integer isDirectory; + private java.lang.String name; + + @javax.persistence.Id + @javax.persistence.Column(name = "ID", unique = true, nullable = false, precision = 7) + public java.lang.Integer getId() { + return this.id; + } + + public void setId(java.lang.Integer id) { + this.id = id; + } + + @javax.persistence.Column(name = "PARENT_ID", precision = 7) + public java.lang.Integer getParentId() { + return this.parentId; + } + + public void setParentId(java.lang.Integer parentId) { + this.parentId = parentId; + } + + @javax.persistence.Column(name = "IS_DIRECTORY", precision = 7) + public java.lang.Integer getIsDirectory() { + return this.isDirectory; + } + + public void setIsDirectory(java.lang.Integer isDirectory) { + this.isDirectory = isDirectory; + } + + @javax.persistence.Column(name = "name", length = 50) + public java.lang.String getName() { + return this.name; + } + + public void setName(java.lang.String name) { + this.name = name; + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/tables/pojos/TTriggers.java b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/tables/pojos/TTriggers.java new file mode 100644 index 00000000000..a65b1f3ea22 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/tables/pojos/TTriggers.java @@ -0,0 +1,46 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle.generatedclasses.test.tables.pojos; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "T_TRIGGERS", schema = "TEST") +public class TTriggers implements java.io.Serializable { + + private static final long serialVersionUID = -1859609492; + + private java.lang.Integer idGenerated; + private java.lang.Integer id; + private java.lang.Integer counter; + + @javax.persistence.Id + @javax.persistence.Column(name = "ID_GENERATED", unique = true, nullable = false, precision = 7) + public java.lang.Integer getIdGenerated() { + return this.idGenerated; + } + + public void setIdGenerated(java.lang.Integer idGenerated) { + this.idGenerated = idGenerated; + } + + @javax.persistence.Column(name = "ID", nullable = false, precision = 7) + public java.lang.Integer getId() { + return this.id; + } + + public void setId(java.lang.Integer id) { + this.id = id; + } + + @javax.persistence.Column(name = "COUNTER", nullable = false, precision = 7) + public java.lang.Integer getCounter() { + return this.counter; + } + + public void setCounter(java.lang.Integer counter) { + this.counter = counter; + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/tables/pojos/T_639NumbersTable.java b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/tables/pojos/T_639NumbersTable.java new file mode 100644 index 00000000000..079549f12bc --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/tables/pojos/T_639NumbersTable.java @@ -0,0 +1,126 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle.generatedclasses.test.tables.pojos; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "T_639_NUMBERS_TABLE", schema = "TEST") +public class T_639NumbersTable implements java.io.Serializable { + + private static final long serialVersionUID = 897742490; + + private java.lang.Integer id; + private java.lang.Byte byte_; + private java.lang.Short short_; + private java.lang.Integer integer; + private java.lang.Long long_; + private java.lang.Byte byteDecimal; + private java.lang.Short shortDecimal; + private java.lang.Integer integerDecimal; + private java.lang.Long longDecimal; + private java.math.BigInteger bigInteger; + private java.math.BigDecimal bigDecimal; + + @javax.persistence.Id + @javax.persistence.Column(name = "ID", unique = true, nullable = false, precision = 7) + public java.lang.Integer getId() { + return this.id; + } + + public void setId(java.lang.Integer id) { + this.id = id; + } + + @javax.persistence.Column(name = "BYTE", precision = 2) + public java.lang.Byte getByte() { + return this.byte_; + } + + public void setByte(java.lang.Byte byte_) { + this.byte_ = byte_; + } + + @javax.persistence.Column(name = "SHORT", precision = 4) + public java.lang.Short getShort() { + return this.short_; + } + + public void setShort(java.lang.Short short_) { + this.short_ = short_; + } + + @javax.persistence.Column(name = "INTEGER", precision = 7) + public java.lang.Integer getInteger() { + return this.integer; + } + + public void setInteger(java.lang.Integer integer) { + this.integer = integer; + } + + @javax.persistence.Column(name = "LONG", precision = 18) + public java.lang.Long getLong() { + return this.long_; + } + + public void setLong(java.lang.Long long_) { + this.long_ = long_; + } + + @javax.persistence.Column(name = "BYTE_DECIMAL", precision = 2) + public java.lang.Byte getByteDecimal() { + return this.byteDecimal; + } + + public void setByteDecimal(java.lang.Byte byteDecimal) { + this.byteDecimal = byteDecimal; + } + + @javax.persistence.Column(name = "SHORT_DECIMAL", precision = 4) + public java.lang.Short getShortDecimal() { + return this.shortDecimal; + } + + public void setShortDecimal(java.lang.Short shortDecimal) { + this.shortDecimal = shortDecimal; + } + + @javax.persistence.Column(name = "INTEGER_DECIMAL", precision = 9) + public java.lang.Integer getIntegerDecimal() { + return this.integerDecimal; + } + + public void setIntegerDecimal(java.lang.Integer integerDecimal) { + this.integerDecimal = integerDecimal; + } + + @javax.persistence.Column(name = "LONG_DECIMAL", precision = 18) + public java.lang.Long getLongDecimal() { + return this.longDecimal; + } + + public void setLongDecimal(java.lang.Long longDecimal) { + this.longDecimal = longDecimal; + } + + @javax.persistence.Column(name = "BIG_INTEGER", precision = 22) + public java.math.BigInteger getBigInteger() { + return this.bigInteger; + } + + public void setBigInteger(java.math.BigInteger bigInteger) { + this.bigInteger = bigInteger; + } + + @javax.persistence.Column(name = "BIG_DECIMAL", precision = 22, scale = 5) + public java.math.BigDecimal getBigDecimal() { + return this.bigDecimal; + } + + public void setBigDecimal(java.math.BigDecimal bigDecimal) { + this.bigDecimal = bigDecimal; + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/tables/pojos/T_658Ref.java b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/tables/pojos/T_658Ref.java new file mode 100644 index 00000000000..062232705b2 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/tables/pojos/T_658Ref.java @@ -0,0 +1,75 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle.generatedclasses.test.tables.pojos; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "T_658_REF", schema = "TEST") +public class T_658Ref implements java.io.Serializable { + + private static final long serialVersionUID = 490439191; + + private org.jooq.test.oracle.generatedclasses.test.enums.T_658_11 ref_11; + private org.jooq.test.oracle.generatedclasses.test.enums.T_658_21 ref_21; + private org.jooq.test.oracle.generatedclasses.test.enums.T_658_31 ref_31; + private org.jooq.test.oracle.generatedclasses.test.enums.T_658_12 ref_12; + private org.jooq.test.oracle.generatedclasses.test.enums.T_658_22 ref_22; + private org.jooq.test.oracle.generatedclasses.test.enums.T_658_32 ref_32; + + @javax.persistence.Column(name = "REF_11", length = 3) + public org.jooq.test.oracle.generatedclasses.test.enums.T_658_11 getRef_11() { + return this.ref_11; + } + + public void setRef_11(org.jooq.test.oracle.generatedclasses.test.enums.T_658_11 ref_11) { + this.ref_11 = ref_11; + } + + @javax.persistence.Column(name = "REF_21", precision = 7) + public org.jooq.test.oracle.generatedclasses.test.enums.T_658_21 getRef_21() { + return this.ref_21; + } + + public void setRef_21(org.jooq.test.oracle.generatedclasses.test.enums.T_658_21 ref_21) { + this.ref_21 = ref_21; + } + + @javax.persistence.Column(name = "REF_31", precision = 15) + public org.jooq.test.oracle.generatedclasses.test.enums.T_658_31 getRef_31() { + return this.ref_31; + } + + public void setRef_31(org.jooq.test.oracle.generatedclasses.test.enums.T_658_31 ref_31) { + this.ref_31 = ref_31; + } + + @javax.persistence.Column(name = "REF_12", length = 3) + public org.jooq.test.oracle.generatedclasses.test.enums.T_658_12 getRef_12() { + return this.ref_12; + } + + public void setRef_12(org.jooq.test.oracle.generatedclasses.test.enums.T_658_12 ref_12) { + this.ref_12 = ref_12; + } + + @javax.persistence.Column(name = "REF_22", precision = 7) + public org.jooq.test.oracle.generatedclasses.test.enums.T_658_22 getRef_22() { + return this.ref_22; + } + + public void setRef_22(org.jooq.test.oracle.generatedclasses.test.enums.T_658_22 ref_22) { + this.ref_22 = ref_22; + } + + @javax.persistence.Column(name = "REF_32", precision = 15) + public org.jooq.test.oracle.generatedclasses.test.enums.T_658_32 getRef_32() { + return this.ref_32; + } + + public void setRef_32(org.jooq.test.oracle.generatedclasses.test.enums.T_658_32 ref_32) { + this.ref_32 = ref_32; + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/tables/pojos/T_725LobTest.java b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/tables/pojos/T_725LobTest.java new file mode 100644 index 00000000000..3cb0308a5d3 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/tables/pojos/T_725LobTest.java @@ -0,0 +1,36 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle.generatedclasses.test.tables.pojos; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "T_725_LOB_TEST", schema = "TEST") +public class T_725LobTest implements java.io.Serializable { + + private static final long serialVersionUID = 1913886008; + + private java.lang.Integer id; + private byte[] lob; + + @javax.persistence.Id + @javax.persistence.Column(name = "ID", unique = true, nullable = false, precision = 7) + public java.lang.Integer getId() { + return this.id; + } + + public void setId(java.lang.Integer id) { + this.id = id; + } + + @javax.persistence.Column(name = "LOB", length = 4000) + public byte[] getLob() { + return this.lob; + } + + public void setLob(byte[] lob) { + this.lob = lob; + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/tables/pojos/T_785.java b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/tables/pojos/T_785.java new file mode 100644 index 00000000000..ee93482bfec --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/tables/pojos/T_785.java @@ -0,0 +1,45 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle.generatedclasses.test.tables.pojos; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "T_785", schema = "TEST") +public class T_785 implements java.io.Serializable { + + private static final long serialVersionUID = 2082517974; + + private java.lang.Integer id; + private java.lang.String name; + private java.lang.String value; + + @javax.persistence.Column(name = "ID", precision = 7) + public java.lang.Integer getId() { + return this.id; + } + + public void setId(java.lang.Integer id) { + this.id = id; + } + + @javax.persistence.Column(name = "NAME", length = 50) + public java.lang.String getName() { + return this.name; + } + + public void setName(java.lang.String name) { + this.name = name; + } + + @javax.persistence.Column(name = "VALUE", length = 50) + public java.lang.String getValue() { + return this.value; + } + + public void setValue(java.lang.String value) { + this.value = value; + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/tables/pojos/VAuthor.java b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/tables/pojos/VAuthor.java new file mode 100644 index 00000000000..a6c652634b1 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/tables/pojos/VAuthor.java @@ -0,0 +1,75 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle.generatedclasses.test.tables.pojos; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "V_AUTHOR", schema = "TEST") +public class VAuthor implements java.io.Serializable { + + private static final long serialVersionUID = 1980522144; + + private java.lang.Integer id; + private java.lang.String firstName; + private java.lang.String lastName; + private java.sql.Date dateOfBirth; + private java.lang.Integer yearOfBirth; + private org.jooq.test.oracle.generatedclasses.test.udt.records.UAddressTypeRecord address; + + @javax.persistence.Column(name = "ID", nullable = false, precision = 7) + public java.lang.Integer getId() { + return this.id; + } + + public void setId(java.lang.Integer id) { + this.id = id; + } + + @javax.persistence.Column(name = "FIRST_NAME", length = 50) + public java.lang.String getFirstName() { + return this.firstName; + } + + public void setFirstName(java.lang.String firstName) { + this.firstName = firstName; + } + + @javax.persistence.Column(name = "LAST_NAME", nullable = false, length = 50) + public java.lang.String getLastName() { + return this.lastName; + } + + public void setLastName(java.lang.String lastName) { + this.lastName = lastName; + } + + @javax.persistence.Column(name = "DATE_OF_BIRTH", length = 7) + public java.sql.Date getDateOfBirth() { + return this.dateOfBirth; + } + + public void setDateOfBirth(java.sql.Date dateOfBirth) { + this.dateOfBirth = dateOfBirth; + } + + @javax.persistence.Column(name = "YEAR_OF_BIRTH", precision = 7) + public java.lang.Integer getYearOfBirth() { + return this.yearOfBirth; + } + + public void setYearOfBirth(java.lang.Integer yearOfBirth) { + this.yearOfBirth = yearOfBirth; + } + + @javax.persistence.Column(name = "ADDRESS", length = 448) + public org.jooq.test.oracle.generatedclasses.test.udt.records.UAddressTypeRecord getAddress() { + return this.address; + } + + public void setAddress(org.jooq.test.oracle.generatedclasses.test.udt.records.UAddressTypeRecord address) { + this.address = address; + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/tables/pojos/VBook.java b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/tables/pojos/VBook.java new file mode 100644 index 00000000000..b9f25ffe986 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/tables/pojos/VBook.java @@ -0,0 +1,105 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle.generatedclasses.test.tables.pojos; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "V_BOOK", schema = "TEST") +public class VBook implements java.io.Serializable { + + private static final long serialVersionUID = 727181009; + + private java.lang.Integer id; + private java.lang.Integer authorId; + private java.lang.Integer coAuthorId; + private java.lang.Integer detailsId; + private java.lang.String title; + private java.lang.Integer publishedIn; + private java.lang.Integer languageId; + private java.lang.String contentText; + private byte[] contentPdf; + + @javax.persistence.Column(name = "ID", nullable = false, precision = 7) + public java.lang.Integer getId() { + return this.id; + } + + public void setId(java.lang.Integer id) { + this.id = id; + } + + @javax.persistence.Column(name = "AUTHOR_ID", nullable = false, precision = 7) + public java.lang.Integer getAuthorId() { + return this.authorId; + } + + public void setAuthorId(java.lang.Integer authorId) { + this.authorId = authorId; + } + + @javax.persistence.Column(name = "CO_AUTHOR_ID", precision = 7) + public java.lang.Integer getCoAuthorId() { + return this.coAuthorId; + } + + public void setCoAuthorId(java.lang.Integer coAuthorId) { + this.coAuthorId = coAuthorId; + } + + @javax.persistence.Column(name = "DETAILS_ID", precision = 7) + public java.lang.Integer getDetailsId() { + return this.detailsId; + } + + public void setDetailsId(java.lang.Integer detailsId) { + this.detailsId = detailsId; + } + + @javax.persistence.Column(name = "TITLE", nullable = false, length = 400) + public java.lang.String getTitle() { + return this.title; + } + + public void setTitle(java.lang.String title) { + this.title = title; + } + + @javax.persistence.Column(name = "PUBLISHED_IN", nullable = false, precision = 7) + public java.lang.Integer getPublishedIn() { + return this.publishedIn; + } + + public void setPublishedIn(java.lang.Integer publishedIn) { + this.publishedIn = publishedIn; + } + + @javax.persistence.Column(name = "LANGUAGE_ID", nullable = false, precision = 7) + public java.lang.Integer getLanguageId() { + return this.languageId; + } + + public void setLanguageId(java.lang.Integer languageId) { + this.languageId = languageId; + } + + @javax.persistence.Column(name = "CONTENT_TEXT", length = 4000) + public java.lang.String getContentText() { + return this.contentText; + } + + public void setContentText(java.lang.String contentText) { + this.contentText = contentText; + } + + @javax.persistence.Column(name = "CONTENT_PDF", length = 4000) + public byte[] getContentPdf() { + return this.contentPdf; + } + + public void setContentPdf(byte[] contentPdf) { + this.contentPdf = contentPdf; + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/tables/pojos/VIncomplete.java b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/tables/pojos/VIncomplete.java new file mode 100644 index 00000000000..aab227c676c --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/tables/pojos/VIncomplete.java @@ -0,0 +1,105 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle.generatedclasses.test.tables.pojos; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "V_INCOMPLETE", schema = "TEST") +public class VIncomplete implements java.io.Serializable { + + private static final long serialVersionUID = 1342907548; + + private java.lang.Object id; + private java.lang.Object authorId; + private java.lang.Object coAuthorId; + private java.lang.Object detailsId; + private java.lang.Object title; + private java.lang.Object publishedIn; + private java.lang.Object languageId; + private java.lang.Object contentText; + private java.lang.Object contentPdf; + + @javax.persistence.Column(name = "ID") + public java.lang.Object getId() { + return this.id; + } + + public void setId(java.lang.Object id) { + this.id = id; + } + + @javax.persistence.Column(name = "AUTHOR_ID") + public java.lang.Object getAuthorId() { + return this.authorId; + } + + public void setAuthorId(java.lang.Object authorId) { + this.authorId = authorId; + } + + @javax.persistence.Column(name = "CO_AUTHOR_ID") + public java.lang.Object getCoAuthorId() { + return this.coAuthorId; + } + + public void setCoAuthorId(java.lang.Object coAuthorId) { + this.coAuthorId = coAuthorId; + } + + @javax.persistence.Column(name = "DETAILS_ID") + public java.lang.Object getDetailsId() { + return this.detailsId; + } + + public void setDetailsId(java.lang.Object detailsId) { + this.detailsId = detailsId; + } + + @javax.persistence.Column(name = "TITLE") + public java.lang.Object getTitle() { + return this.title; + } + + public void setTitle(java.lang.Object title) { + this.title = title; + } + + @javax.persistence.Column(name = "PUBLISHED_IN") + public java.lang.Object getPublishedIn() { + return this.publishedIn; + } + + public void setPublishedIn(java.lang.Object publishedIn) { + this.publishedIn = publishedIn; + } + + @javax.persistence.Column(name = "LANGUAGE_ID") + public java.lang.Object getLanguageId() { + return this.languageId; + } + + public void setLanguageId(java.lang.Object languageId) { + this.languageId = languageId; + } + + @javax.persistence.Column(name = "CONTENT_TEXT") + public java.lang.Object getContentText() { + return this.contentText; + } + + public void setContentText(java.lang.Object contentText) { + this.contentText = contentText; + } + + @javax.persistence.Column(name = "CONTENT_PDF") + public java.lang.Object getContentPdf() { + return this.contentPdf; + } + + public void setContentPdf(java.lang.Object contentPdf) { + this.contentPdf = contentPdf; + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/tables/pojos/VLibrary.java b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/tables/pojos/VLibrary.java new file mode 100644 index 00000000000..30b07f48241 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/tables/pojos/VLibrary.java @@ -0,0 +1,35 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle.generatedclasses.test.tables.pojos; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "V_LIBRARY", schema = "TEST") +public class VLibrary implements java.io.Serializable { + + private static final long serialVersionUID = -1620481067; + + private java.lang.String author; + private java.lang.String title; + + @javax.persistence.Column(name = "AUTHOR", length = 101) + public java.lang.String getAuthor() { + return this.author; + } + + public void setAuthor(java.lang.String author) { + this.author = author; + } + + @javax.persistence.Column(name = "TITLE", nullable = false, length = 400) + public java.lang.String getTitle() { + return this.title; + } + + public void setTitle(java.lang.String title) { + this.title = title; + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/tables/pojos/XTestCase_64_69.java b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/tables/pojos/XTestCase_64_69.java new file mode 100644 index 00000000000..3ed6aee9b51 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/tables/pojos/XTestCase_64_69.java @@ -0,0 +1,36 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle.generatedclasses.test.tables.pojos; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "X_TEST_CASE_64_69", schema = "TEST") +public class XTestCase_64_69 implements java.io.Serializable { + + private static final long serialVersionUID = -340505534; + + private java.lang.Integer id; + private java.lang.Integer unusedId; + + @javax.persistence.Id + @javax.persistence.Column(name = "ID", unique = true, nullable = false, precision = 7) + public java.lang.Integer getId() { + return this.id; + } + + public void setId(java.lang.Integer id) { + this.id = id; + } + + @javax.persistence.Column(name = "UNUSED_ID", precision = 7) + public java.lang.Integer getUnusedId() { + return this.unusedId; + } + + public void setUnusedId(java.lang.Integer unusedId) { + this.unusedId = unusedId; + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/tables/pojos/XTestCase_71.java b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/tables/pojos/XTestCase_71.java new file mode 100644 index 00000000000..21b5412e1e0 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/tables/pojos/XTestCase_71.java @@ -0,0 +1,36 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle.generatedclasses.test.tables.pojos; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "X_TEST_CASE_71", schema = "TEST") +public class XTestCase_71 implements java.io.Serializable { + + private static final long serialVersionUID = -807459782; + + private java.lang.Integer id; + private java.lang.Short testCase_64_69Id; + + @javax.persistence.Id + @javax.persistence.Column(name = "ID", unique = true, nullable = false, precision = 7) + public java.lang.Integer getId() { + return this.id; + } + + public void setId(java.lang.Integer id) { + this.id = id; + } + + @javax.persistence.Column(name = "TEST_CASE_64_69_ID", precision = 4) + public java.lang.Short getTestCase_64_69Id() { + return this.testCase_64_69Id; + } + + public void setTestCase_64_69Id(java.lang.Short testCase_64_69Id) { + this.testCase_64_69Id = testCase_64_69Id; + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/tables/pojos/XTestCase_85.java b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/tables/pojos/XTestCase_85.java new file mode 100644 index 00000000000..b3b65fd5caf --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/tables/pojos/XTestCase_85.java @@ -0,0 +1,46 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle.generatedclasses.test.tables.pojos; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "X_TEST_CASE_85", schema = "TEST") +public class XTestCase_85 implements java.io.Serializable { + + private static final long serialVersionUID = -587394071; + + private java.lang.Integer id; + private java.lang.Integer xUnusedId; + private java.lang.String xUnusedName; + + @javax.persistence.Id + @javax.persistence.Column(name = "ID", unique = true, nullable = false, precision = 7) + public java.lang.Integer getId() { + return this.id; + } + + public void setId(java.lang.Integer id) { + this.id = id; + } + + @javax.persistence.Column(name = "X_UNUSED_ID", precision = 7) + public java.lang.Integer getXUnusedId() { + return this.xUnusedId; + } + + public void setXUnusedId(java.lang.Integer xUnusedId) { + this.xUnusedId = xUnusedId; + } + + @javax.persistence.Column(name = "X_UNUSED_NAME", length = 10) + public java.lang.String getXUnusedName() { + return this.xUnusedName; + } + + public void setXUnusedName(java.lang.String xUnusedName) { + this.xUnusedName = xUnusedName; + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/tables/pojos/XUnused.java b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/tables/pojos/XUnused.java new file mode 100644 index 00000000000..02a8237e797 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/tables/pojos/XUnused.java @@ -0,0 +1,179 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle.generatedclasses.test.tables.pojos; + +/** + * This class is generated by jOOQ. + * + * An unused table in the same schema. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "X_UNUSED", schema = "TEST", uniqueConstraints = { + @javax.persistence.UniqueConstraint(columnNames = {"ID", "NAME"}) +}) +public class XUnused implements java.io.Serializable { + + private static final long serialVersionUID = -1762959866; + + private java.lang.Integer id; + private java.lang.String name; + private java.math.BigInteger bigInteger; + private java.lang.Integer idRef; + private java.lang.Integer class_; + private java.lang.Integer fields; + private java.lang.Integer configuration; + private java.lang.Integer uDT; + private java.lang.Integer metaData; + private java.lang.Integer type0; + private java.lang.Integer primaryKey; + private java.lang.Integer primarykey; + private java.lang.String nameRef; + private java.math.BigDecimal field_737; + private java.lang.Integer msUnusedIdRef; + private java.lang.String msUnusedNameRef; + + @javax.persistence.Column(name = "ID", unique = true, nullable = false, precision = 7) + public java.lang.Integer getId() { + return this.id; + } + + public void setId(java.lang.Integer id) { + this.id = id; + } + + @javax.persistence.Column(name = "NAME", nullable = false, length = 10) + public java.lang.String getName() { + return this.name; + } + + public void setName(java.lang.String name) { + this.name = name; + } + + @javax.persistence.Column(name = "BIG_INTEGER", precision = 38) + public java.math.BigInteger getBigInteger() { + return this.bigInteger; + } + + public void setBigInteger(java.math.BigInteger bigInteger) { + this.bigInteger = bigInteger; + } + + @javax.persistence.Column(name = "ID_REF", precision = 7) + public java.lang.Integer getIdRef() { + return this.idRef; + } + + public void setIdRef(java.lang.Integer idRef) { + this.idRef = idRef; + } + + @javax.persistence.Column(name = "CLASS", precision = 7) + public java.lang.Integer getClass_() { + return this.class_; + } + + public void setClass_(java.lang.Integer class_) { + this.class_ = class_; + } + + @javax.persistence.Column(name = "FIELDS", precision = 7) + public java.lang.Integer getFields_() { + return this.fields; + } + + public void setFields_(java.lang.Integer fields) { + this.fields = fields; + } + + @javax.persistence.Column(name = "CONFIGURATION", precision = 7) + public java.lang.Integer getConfiguration_() { + return this.configuration; + } + + public void setConfiguration_(java.lang.Integer configuration) { + this.configuration = configuration; + } + + @javax.persistence.Column(name = "U_D_T", precision = 7) + public java.lang.Integer getUDT() { + return this.uDT; + } + + public void setUDT(java.lang.Integer uDT) { + this.uDT = uDT; + } + + @javax.persistence.Column(name = "META_DATA", precision = 7) + public java.lang.Integer getMetaData_() { + return this.metaData; + } + + public void setMetaData_(java.lang.Integer metaData) { + this.metaData = metaData; + } + + @javax.persistence.Column(name = "TYPE0", precision = 7) + public java.lang.Integer getType0_() { + return this.type0; + } + + public void setType0_(java.lang.Integer type0) { + this.type0 = type0; + } + + @javax.persistence.Column(name = "PRIMARY_KEY", precision = 7) + public java.lang.Integer getPrimaryKey() { + return this.primaryKey; + } + + public void setPrimaryKey(java.lang.Integer primaryKey) { + this.primaryKey = primaryKey; + } + + @javax.persistence.Column(name = "PRIMARYKEY", precision = 7) + public java.lang.Integer getPrimarykey() { + return this.primarykey; + } + + public void setPrimarykey(java.lang.Integer primarykey) { + this.primarykey = primarykey; + } + + @javax.persistence.Column(name = "NAME_REF", length = 10) + public java.lang.String getNameRef() { + return this.nameRef; + } + + public void setNameRef(java.lang.String nameRef) { + this.nameRef = nameRef; + } + + @javax.persistence.Column(name = "FIELD 737", precision = 25, scale = 2) + public java.math.BigDecimal getField_737() { + return this.field_737; + } + + public void setField_737(java.math.BigDecimal field_737) { + this.field_737 = field_737; + } + + @javax.persistence.Column(name = "MS_UNUSED_ID_REF", precision = 7) + public java.lang.Integer getMsUnusedIdRef() { + return this.msUnusedIdRef; + } + + public void setMsUnusedIdRef(java.lang.Integer msUnusedIdRef) { + this.msUnusedIdRef = msUnusedIdRef; + } + + @javax.persistence.Column(name = "MS_UNUSED_NAME_REF", length = 10) + public java.lang.String getMsUnusedNameRef() { + return this.msUnusedNameRef; + } + + public void setMsUnusedNameRef(java.lang.String msUnusedNameRef) { + this.msUnusedNameRef = msUnusedNameRef; + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/tables/records/TArraysRecord.java b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/tables/records/TArraysRecord.java new file mode 100644 index 00000000000..adb1e81d2de --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/tables/records/TArraysRecord.java @@ -0,0 +1,101 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle.generatedclasses.test.tables.records; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "T_ARRAYS", schema = "TEST") +public class TArraysRecord extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = -360874204; + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setId(java.lang.Integer value) { + setValue(org.jooq.test.oracle.generatedclasses.test.tables.TArrays.T_ARRAYS.ID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + @javax.persistence.Id + @javax.persistence.Column(name = "ID", unique = true, nullable = false, precision = 7) + public java.lang.Integer getId() { + return getValue(org.jooq.test.oracle.generatedclasses.test.tables.TArrays.T_ARRAYS.ID); + } + + /** + * An uncommented item + */ + public void setStringArray(org.jooq.test.oracle.generatedclasses.test.udt.records.UStringArrayRecord value) { + setValue(org.jooq.test.oracle.generatedclasses.test.tables.TArrays.T_ARRAYS.STRING_ARRAY, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "STRING_ARRAY", length = 101) + public org.jooq.test.oracle.generatedclasses.test.udt.records.UStringArrayRecord getStringArray() { + return getValue(org.jooq.test.oracle.generatedclasses.test.tables.TArrays.T_ARRAYS.STRING_ARRAY); + } + + /** + * An uncommented item + */ + public void setNumberArray(org.jooq.test.oracle.generatedclasses.test.udt.records.UNumberArrayRecord value) { + setValue(org.jooq.test.oracle.generatedclasses.test.tables.TArrays.T_ARRAYS.NUMBER_ARRAY, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "NUMBER_ARRAY", length = 109) + public org.jooq.test.oracle.generatedclasses.test.udt.records.UNumberArrayRecord getNumberArray() { + return getValue(org.jooq.test.oracle.generatedclasses.test.tables.TArrays.T_ARRAYS.NUMBER_ARRAY); + } + + /** + * An uncommented item + */ + public void setNumberLongArray(org.jooq.test.oracle.generatedclasses.test.udt.records.UNumberLongArrayRecord value) { + setValue(org.jooq.test.oracle.generatedclasses.test.tables.TArrays.T_ARRAYS.NUMBER_LONG_ARRAY, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "NUMBER_LONG_ARRAY", length = 109) + public org.jooq.test.oracle.generatedclasses.test.udt.records.UNumberLongArrayRecord getNumberLongArray() { + return getValue(org.jooq.test.oracle.generatedclasses.test.tables.TArrays.T_ARRAYS.NUMBER_LONG_ARRAY); + } + + /** + * An uncommented item + */ + public void setDateArray(org.jooq.test.oracle.generatedclasses.test.udt.records.UDateArrayRecord value) { + setValue(org.jooq.test.oracle.generatedclasses.test.tables.TArrays.T_ARRAYS.DATE_ARRAY, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "DATE_ARRAY", length = 49) + public org.jooq.test.oracle.generatedclasses.test.udt.records.UDateArrayRecord getDateArray() { + return getValue(org.jooq.test.oracle.generatedclasses.test.tables.TArrays.T_ARRAYS.DATE_ARRAY); + } + + /** + * Create a detached TArraysRecord + */ + public TArraysRecord() { + super(org.jooq.test.oracle.generatedclasses.test.tables.TArrays.T_ARRAYS); + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/tables/records/TAuthorRecord.java b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/tables/records/TAuthorRecord.java new file mode 100644 index 00000000000..f2a875c66f9 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/tables/records/TAuthorRecord.java @@ -0,0 +1,142 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle.generatedclasses.test.tables.records; + +/** + * This class is generated by jOOQ. + * + * An entity holding authors of books + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "T_AUTHOR", schema = "TEST") +public class TAuthorRecord extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = 1955084622; + + /** + * The author ID + * + * PRIMARY KEY + */ + public void setId(java.lang.Integer value) { + setValue(org.jooq.test.oracle.generatedclasses.test.tables.TAuthor.T_AUTHOR.ID, value); + } + + /** + * The author ID + * + * PRIMARY KEY + */ + @javax.persistence.Id + @javax.persistence.Column(name = "ID", unique = true, nullable = false, precision = 7) + public java.lang.Integer getId() { + return getValue(org.jooq.test.oracle.generatedclasses.test.tables.TAuthor.T_AUTHOR.ID); + } + + /** + * The author ID + * + * PRIMARY KEY + */ + public java.util.List fetchTBookListByAuthorId() { + return create() + .selectFrom(org.jooq.test.oracle.generatedclasses.test.tables.TBook.T_BOOK) + .where(org.jooq.test.oracle.generatedclasses.test.tables.TBook.T_BOOK.AUTHOR_ID.equal(getValue(org.jooq.test.oracle.generatedclasses.test.tables.TAuthor.T_AUTHOR.ID))) + .fetch(); + } + + /** + * The author ID + * + * PRIMARY KEY + */ + public java.util.List fetchTBookListByCoAuthorId() { + return create() + .selectFrom(org.jooq.test.oracle.generatedclasses.test.tables.TBook.T_BOOK) + .where(org.jooq.test.oracle.generatedclasses.test.tables.TBook.T_BOOK.CO_AUTHOR_ID.equal(getValue(org.jooq.test.oracle.generatedclasses.test.tables.TAuthor.T_AUTHOR.ID))) + .fetch(); + } + + /** + * The author's first name + */ + public void setFirstName(java.lang.String value) { + setValue(org.jooq.test.oracle.generatedclasses.test.tables.TAuthor.T_AUTHOR.FIRST_NAME, value); + } + + /** + * The author's first name + */ + @javax.persistence.Column(name = "FIRST_NAME", length = 50) + public java.lang.String getFirstName() { + return getValue(org.jooq.test.oracle.generatedclasses.test.tables.TAuthor.T_AUTHOR.FIRST_NAME); + } + + /** + * The author's last name + */ + public void setLastName(java.lang.String value) { + setValue(org.jooq.test.oracle.generatedclasses.test.tables.TAuthor.T_AUTHOR.LAST_NAME, value); + } + + /** + * The author's last name + */ + @javax.persistence.Column(name = "LAST_NAME", nullable = false, length = 50) + public java.lang.String getLastName() { + return getValue(org.jooq.test.oracle.generatedclasses.test.tables.TAuthor.T_AUTHOR.LAST_NAME); + } + + /** + * The author's date of birth + */ + public void setDateOfBirth(java.sql.Date value) { + setValue(org.jooq.test.oracle.generatedclasses.test.tables.TAuthor.T_AUTHOR.DATE_OF_BIRTH, value); + } + + /** + * The author's date of birth + */ + @javax.persistence.Column(name = "DATE_OF_BIRTH", length = 7) + public java.sql.Date getDateOfBirth() { + return getValue(org.jooq.test.oracle.generatedclasses.test.tables.TAuthor.T_AUTHOR.DATE_OF_BIRTH); + } + + /** + * The author's year of birth + */ + public void setYearOfBirth(java.lang.Integer value) { + setValue(org.jooq.test.oracle.generatedclasses.test.tables.TAuthor.T_AUTHOR.YEAR_OF_BIRTH, value); + } + + /** + * The author's year of birth + */ + @javax.persistence.Column(name = "YEAR_OF_BIRTH", precision = 7) + public java.lang.Integer getYearOfBirth() { + return getValue(org.jooq.test.oracle.generatedclasses.test.tables.TAuthor.T_AUTHOR.YEAR_OF_BIRTH); + } + + /** + * The author's address + */ + public void setAddress(org.jooq.test.oracle.generatedclasses.test.udt.records.UAddressTypeRecord value) { + setValue(org.jooq.test.oracle.generatedclasses.test.tables.TAuthor.T_AUTHOR.ADDRESS, value); + } + + /** + * The author's address + */ + @javax.persistence.Column(name = "ADDRESS", length = 1) + public org.jooq.test.oracle.generatedclasses.test.udt.records.UAddressTypeRecord getAddress() { + return getValue(org.jooq.test.oracle.generatedclasses.test.tables.TAuthor.T_AUTHOR.ADDRESS); + } + + /** + * Create a detached TAuthorRecord + */ + public TAuthorRecord() { + super(org.jooq.test.oracle.generatedclasses.test.tables.TAuthor.T_AUTHOR); + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/tables/records/TBookRecord.java b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/tables/records/TBookRecord.java new file mode 100644 index 00000000000..b2e57175816 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/tables/records/TBookRecord.java @@ -0,0 +1,243 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle.generatedclasses.test.tables.records; + +/** + * This class is generated by jOOQ. + * + * An entity holding books + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "T_BOOK", schema = "TEST") +public class TBookRecord extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = 777547931; + + /** + * The book ID + * + * PRIMARY KEY + */ + public void setId(java.lang.Integer value) { + setValue(org.jooq.test.oracle.generatedclasses.test.tables.TBook.T_BOOK.ID, value); + } + + /** + * The book ID + * + * PRIMARY KEY + */ + @javax.persistence.Id + @javax.persistence.Column(name = "ID", unique = true, nullable = false, precision = 7) + public java.lang.Integer getId() { + return getValue(org.jooq.test.oracle.generatedclasses.test.tables.TBook.T_BOOK.ID); + } + + /** + * The book ID + * + * PRIMARY KEY + */ + public java.util.List fetchTBookToBookStoreList() { + return create() + .selectFrom(org.jooq.test.oracle.generatedclasses.test.tables.TBookToBookStore.T_BOOK_TO_BOOK_STORE) + .where(org.jooq.test.oracle.generatedclasses.test.tables.TBookToBookStore.T_BOOK_TO_BOOK_STORE.BOOK_ID.equal(getValue(org.jooq.test.oracle.generatedclasses.test.tables.TBook.T_BOOK.ID))) + .fetch(); + } + + /** + * The author ID in entity 'author' + *

+ *

+	 * CONSTRAINT FK_T_BOOK_AUTHOR_ID
+	 * FOREIGN KEY (AUTHOR_ID)
+	 * REFERENCES TEST.T_AUTHOR (ID)
+	 * 
+ */ + public void setAuthorId(java.lang.Integer value) { + setValue(org.jooq.test.oracle.generatedclasses.test.tables.TBook.T_BOOK.AUTHOR_ID, value); + } + + /** + * The author ID in entity 'author' + *

+ *

+	 * CONSTRAINT FK_T_BOOK_AUTHOR_ID
+	 * FOREIGN KEY (AUTHOR_ID)
+	 * REFERENCES TEST.T_AUTHOR (ID)
+	 * 
+ */ + @javax.persistence.Column(name = "AUTHOR_ID", nullable = false, precision = 7) + public java.lang.Integer getAuthorId() { + return getValue(org.jooq.test.oracle.generatedclasses.test.tables.TBook.T_BOOK.AUTHOR_ID); + } + + /** + * The author ID in entity 'author' + *

+ *

+	 * CONSTRAINT FK_T_BOOK_AUTHOR_ID
+	 * FOREIGN KEY (AUTHOR_ID)
+	 * REFERENCES TEST.T_AUTHOR (ID)
+	 * 
+ */ + public org.jooq.test.oracle.generatedclasses.test.tables.records.TAuthorRecord fetchTAuthorByAuthorId() { + return create() + .selectFrom(org.jooq.test.oracle.generatedclasses.test.tables.TAuthor.T_AUTHOR) + .where(org.jooq.test.oracle.generatedclasses.test.tables.TAuthor.T_AUTHOR.ID.equal(getValue(org.jooq.test.oracle.generatedclasses.test.tables.TBook.T_BOOK.AUTHOR_ID))) + .fetchOne(); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_T_BOOK_CO_AUTHOR_ID
+	 * FOREIGN KEY (CO_AUTHOR_ID)
+	 * REFERENCES TEST.T_AUTHOR (ID)
+	 * 
+ */ + public void setCoAuthorId(java.lang.Integer value) { + setValue(org.jooq.test.oracle.generatedclasses.test.tables.TBook.T_BOOK.CO_AUTHOR_ID, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_T_BOOK_CO_AUTHOR_ID
+	 * FOREIGN KEY (CO_AUTHOR_ID)
+	 * REFERENCES TEST.T_AUTHOR (ID)
+	 * 
+ */ + @javax.persistence.Column(name = "CO_AUTHOR_ID", precision = 7) + public java.lang.Integer getCoAuthorId() { + return getValue(org.jooq.test.oracle.generatedclasses.test.tables.TBook.T_BOOK.CO_AUTHOR_ID); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_T_BOOK_CO_AUTHOR_ID
+	 * FOREIGN KEY (CO_AUTHOR_ID)
+	 * REFERENCES TEST.T_AUTHOR (ID)
+	 * 
+ */ + public org.jooq.test.oracle.generatedclasses.test.tables.records.TAuthorRecord fetchTAuthorByCoAuthorId() { + return create() + .selectFrom(org.jooq.test.oracle.generatedclasses.test.tables.TAuthor.T_AUTHOR) + .where(org.jooq.test.oracle.generatedclasses.test.tables.TAuthor.T_AUTHOR.ID.equal(getValue(org.jooq.test.oracle.generatedclasses.test.tables.TBook.T_BOOK.CO_AUTHOR_ID))) + .fetchOne(); + } + + /** + * An uncommented item + */ + public void setDetailsId(java.lang.Integer value) { + setValue(org.jooq.test.oracle.generatedclasses.test.tables.TBook.T_BOOK.DETAILS_ID, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "DETAILS_ID", precision = 7) + public java.lang.Integer getDetailsId() { + return getValue(org.jooq.test.oracle.generatedclasses.test.tables.TBook.T_BOOK.DETAILS_ID); + } + + /** + * The book's title + */ + public void setTitle(java.lang.String value) { + setValue(org.jooq.test.oracle.generatedclasses.test.tables.TBook.T_BOOK.TITLE, value); + } + + /** + * The book's title + */ + @javax.persistence.Column(name = "TITLE", nullable = false, length = 400) + public java.lang.String getTitle() { + return getValue(org.jooq.test.oracle.generatedclasses.test.tables.TBook.T_BOOK.TITLE); + } + + /** + * The year the book was published in + */ + public void setPublishedIn(java.lang.Integer value) { + setValue(org.jooq.test.oracle.generatedclasses.test.tables.TBook.T_BOOK.PUBLISHED_IN, value); + } + + /** + * The year the book was published in + */ + @javax.persistence.Column(name = "PUBLISHED_IN", nullable = false, precision = 7) + public java.lang.Integer getPublishedIn() { + return getValue(org.jooq.test.oracle.generatedclasses.test.tables.TBook.T_BOOK.PUBLISHED_IN); + } + + /** + * The language of the book + *

+ *

+	 * CONSTRAINT FK_T_BOOK_LANGUAGE_ID
+	 * FOREIGN KEY (LANGUAGE_ID)
+	 * REFERENCES TEST.T_LANGUAGE (ID)
+	 * 
+ */ + public void setLanguageId(org.jooq.test.oracle.generatedclasses.test.enums.TLanguage value) { + setValue(org.jooq.test.oracle.generatedclasses.test.tables.TBook.T_BOOK.LANGUAGE_ID, value); + } + + /** + * The language of the book + *

+ *

+	 * CONSTRAINT FK_T_BOOK_LANGUAGE_ID
+	 * FOREIGN KEY (LANGUAGE_ID)
+	 * REFERENCES TEST.T_LANGUAGE (ID)
+	 * 
+ */ + @javax.persistence.Column(name = "LANGUAGE_ID", nullable = false, precision = 7) + public org.jooq.test.oracle.generatedclasses.test.enums.TLanguage getLanguageId() { + return getValue(org.jooq.test.oracle.generatedclasses.test.tables.TBook.T_BOOK.LANGUAGE_ID); + } + + /** + * Some textual content of the book + */ + public void setContentText(java.lang.String value) { + setValue(org.jooq.test.oracle.generatedclasses.test.tables.TBook.T_BOOK.CONTENT_TEXT, value); + } + + /** + * Some textual content of the book + */ + @javax.persistence.Column(name = "CONTENT_TEXT", length = 4000) + public java.lang.String getContentText() { + return getValue(org.jooq.test.oracle.generatedclasses.test.tables.TBook.T_BOOK.CONTENT_TEXT); + } + + /** + * Some binary content of the book + */ + public void setContentPdf(byte[] value) { + setValue(org.jooq.test.oracle.generatedclasses.test.tables.TBook.T_BOOK.CONTENT_PDF, value); + } + + /** + * Some binary content of the book + */ + @javax.persistence.Column(name = "CONTENT_PDF", length = 4000) + public byte[] getContentPdf() { + return getValue(org.jooq.test.oracle.generatedclasses.test.tables.TBook.T_BOOK.CONTENT_PDF); + } + + /** + * Create a detached TBookRecord + */ + public TBookRecord() { + super(org.jooq.test.oracle.generatedclasses.test.tables.TBook.T_BOOK); + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/tables/records/TBookStoreRecord.java b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/tables/records/TBookStoreRecord.java new file mode 100644 index 00000000000..609222eac71 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/tables/records/TBookStoreRecord.java @@ -0,0 +1,48 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle.generatedclasses.test.tables.records; + +/** + * This class is generated by jOOQ. + * + * A book store + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "T_BOOK_STORE", schema = "TEST") +public class TBookStoreRecord extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = -34194387; + + /** + * The books store name + */ + public void setName(java.lang.String value) { + setValue(org.jooq.test.oracle.generatedclasses.test.tables.TBookStore.T_BOOK_STORE.NAME, value); + } + + /** + * The books store name + */ + @javax.persistence.Column(name = "NAME", unique = true, nullable = false, length = 400) + public java.lang.String getName() { + return getValue(org.jooq.test.oracle.generatedclasses.test.tables.TBookStore.T_BOOK_STORE.NAME); + } + + /** + * The books store name + */ + public java.util.List fetchTBookToBookStoreList() { + return create() + .selectFrom(org.jooq.test.oracle.generatedclasses.test.tables.TBookToBookStore.T_BOOK_TO_BOOK_STORE) + .where(org.jooq.test.oracle.generatedclasses.test.tables.TBookToBookStore.T_BOOK_TO_BOOK_STORE.BOOK_STORE_NAME.equal(getValue(org.jooq.test.oracle.generatedclasses.test.tables.TBookStore.T_BOOK_STORE.NAME))) + .fetch(); + } + + /** + * Create a detached TBookStoreRecord + */ + public TBookStoreRecord() { + super(org.jooq.test.oracle.generatedclasses.test.tables.TBookStore.T_BOOK_STORE); + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/tables/records/TBookToBookStoreRecord.java b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/tables/records/TBookToBookStoreRecord.java new file mode 100644 index 00000000000..fd50ee7ce0a --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/tables/records/TBookToBookStoreRecord.java @@ -0,0 +1,157 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle.generatedclasses.test.tables.records; + +/** + * This class is generated by jOOQ. + * + * An m:n relation between books and book stores + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "T_BOOK_TO_BOOK_STORE", schema = "TEST", uniqueConstraints = { + @javax.persistence.UniqueConstraint(columnNames = {"BOOK_STORE_NAME", "BOOK_ID"}) +}) +public class TBookToBookStoreRecord extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = 425159073; + + /** + * The book store name + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT FK_B2BS_BS_NAME
+	 * FOREIGN KEY (BOOK_STORE_NAME)
+	 * REFERENCES TEST.T_BOOK_STORE (NAME)
+	 * 
+ */ + public void setBookStoreName(java.lang.String value) { + setValue(org.jooq.test.oracle.generatedclasses.test.tables.TBookToBookStore.T_BOOK_TO_BOOK_STORE.BOOK_STORE_NAME, value); + } + + /** + * The book store name + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT FK_B2BS_BS_NAME
+	 * FOREIGN KEY (BOOK_STORE_NAME)
+	 * REFERENCES TEST.T_BOOK_STORE (NAME)
+	 * 
+ */ + @javax.persistence.Column(name = "BOOK_STORE_NAME", nullable = false, length = 400) + public java.lang.String getBookStoreName() { + return getValue(org.jooq.test.oracle.generatedclasses.test.tables.TBookToBookStore.T_BOOK_TO_BOOK_STORE.BOOK_STORE_NAME); + } + + /** + * The book store name + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT FK_B2BS_BS_NAME
+	 * FOREIGN KEY (BOOK_STORE_NAME)
+	 * REFERENCES TEST.T_BOOK_STORE (NAME)
+	 * 
+ */ + public java.util.List fetchTBookSaleList() { + return create() + .selectFrom(org.jooq.test.oracle.generatedclasses.multi_schema.tables.TBookSale.T_BOOK_SALE) + .where(org.jooq.test.oracle.generatedclasses.multi_schema.tables.TBookSale.T_BOOK_SALE.BOOK_STORE_NAME.equal(getValue(org.jooq.test.oracle.generatedclasses.test.tables.TBookToBookStore.T_BOOK_TO_BOOK_STORE.BOOK_STORE_NAME))) + .and(org.jooq.test.oracle.generatedclasses.multi_schema.tables.TBookSale.T_BOOK_SALE.BOOK_ID.equal(getValue(org.jooq.test.oracle.generatedclasses.test.tables.TBookToBookStore.T_BOOK_TO_BOOK_STORE.BOOK_ID))) + .fetch(); + } + + /** + * The book store name + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT FK_B2BS_BS_NAME
+	 * FOREIGN KEY (BOOK_STORE_NAME)
+	 * REFERENCES TEST.T_BOOK_STORE (NAME)
+	 * 
+ */ + public org.jooq.test.oracle.generatedclasses.test.tables.records.TBookStoreRecord fetchTBookStore() { + return create() + .selectFrom(org.jooq.test.oracle.generatedclasses.test.tables.TBookStore.T_BOOK_STORE) + .where(org.jooq.test.oracle.generatedclasses.test.tables.TBookStore.T_BOOK_STORE.NAME.equal(getValue(org.jooq.test.oracle.generatedclasses.test.tables.TBookToBookStore.T_BOOK_TO_BOOK_STORE.BOOK_STORE_NAME))) + .fetchOne(); + } + + /** + * The book ID + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT FK_B2BS_B_ID
+	 * FOREIGN KEY (BOOK_ID)
+	 * REFERENCES TEST.T_BOOK (ID)
+	 * 
+ */ + public void setBookId(java.lang.Integer value) { + setValue(org.jooq.test.oracle.generatedclasses.test.tables.TBookToBookStore.T_BOOK_TO_BOOK_STORE.BOOK_ID, value); + } + + /** + * The book ID + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT FK_B2BS_B_ID
+	 * FOREIGN KEY (BOOK_ID)
+	 * REFERENCES TEST.T_BOOK (ID)
+	 * 
+ */ + @javax.persistence.Column(name = "BOOK_ID", nullable = false, precision = 7) + public java.lang.Integer getBookId() { + return getValue(org.jooq.test.oracle.generatedclasses.test.tables.TBookToBookStore.T_BOOK_TO_BOOK_STORE.BOOK_ID); + } + + /** + * The book ID + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT FK_B2BS_B_ID
+	 * FOREIGN KEY (BOOK_ID)
+	 * REFERENCES TEST.T_BOOK (ID)
+	 * 
+ */ + public org.jooq.test.oracle.generatedclasses.test.tables.records.TBookRecord fetchTBook() { + return create() + .selectFrom(org.jooq.test.oracle.generatedclasses.test.tables.TBook.T_BOOK) + .where(org.jooq.test.oracle.generatedclasses.test.tables.TBook.T_BOOK.ID.equal(getValue(org.jooq.test.oracle.generatedclasses.test.tables.TBookToBookStore.T_BOOK_TO_BOOK_STORE.BOOK_ID))) + .fetchOne(); + } + + /** + * The number of books on stock + */ + public void setStock(java.lang.Integer value) { + setValue(org.jooq.test.oracle.generatedclasses.test.tables.TBookToBookStore.T_BOOK_TO_BOOK_STORE.STOCK, value); + } + + /** + * The number of books on stock + */ + @javax.persistence.Column(name = "STOCK", precision = 7) + public java.lang.Integer getStock() { + return getValue(org.jooq.test.oracle.generatedclasses.test.tables.TBookToBookStore.T_BOOK_TO_BOOK_STORE.STOCK); + } + + /** + * Create a detached TBookToBookStoreRecord + */ + public TBookToBookStoreRecord() { + super(org.jooq.test.oracle.generatedclasses.test.tables.TBookToBookStore.T_BOOK_TO_BOOK_STORE); + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/tables/records/TBooleansRecord.java b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/tables/records/TBooleansRecord.java new file mode 100644 index 00000000000..804b56bf781 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/tables/records/TBooleansRecord.java @@ -0,0 +1,191 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle.generatedclasses.test.tables.records; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "T_BOOLEANS", schema = "TEST") +public class TBooleansRecord extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = -1240779073; + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setId(java.lang.Integer value) { + setValue(org.jooq.test.oracle.generatedclasses.test.tables.TBooleans.T_BOOLEANS.ID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + @javax.persistence.Id + @javax.persistence.Column(name = "ID", unique = true, nullable = false, precision = 7) + public java.lang.Integer getId() { + return getValue(org.jooq.test.oracle.generatedclasses.test.tables.TBooleans.T_BOOLEANS.ID); + } + + /** + * An uncommented item + */ + public void setOneZero(org.jooq.test._.converters.Boolean_10 value) { + setValue(org.jooq.test.oracle.generatedclasses.test.tables.TBooleans.T_BOOLEANS.ONE_ZERO, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "ONE_ZERO", precision = 7) + public org.jooq.test._.converters.Boolean_10 getOneZero() { + return getValue(org.jooq.test.oracle.generatedclasses.test.tables.TBooleans.T_BOOLEANS.ONE_ZERO); + } + + /** + * An uncommented item + */ + public void setTrueFalseLc(org.jooq.test._.converters.Boolean_TF_LC value) { + setValue(org.jooq.test.oracle.generatedclasses.test.tables.TBooleans.T_BOOLEANS.TRUE_FALSE_LC, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "TRUE_FALSE_LC", length = 5) + public org.jooq.test._.converters.Boolean_TF_LC getTrueFalseLc() { + return getValue(org.jooq.test.oracle.generatedclasses.test.tables.TBooleans.T_BOOLEANS.TRUE_FALSE_LC); + } + + /** + * An uncommented item + */ + public void setTrueFalseUc(org.jooq.test._.converters.Boolean_TF_UC value) { + setValue(org.jooq.test.oracle.generatedclasses.test.tables.TBooleans.T_BOOLEANS.TRUE_FALSE_UC, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "TRUE_FALSE_UC", length = 5) + public org.jooq.test._.converters.Boolean_TF_UC getTrueFalseUc() { + return getValue(org.jooq.test.oracle.generatedclasses.test.tables.TBooleans.T_BOOLEANS.TRUE_FALSE_UC); + } + + /** + * An uncommented item + */ + public void setYesNoLc(org.jooq.test._.converters.Boolean_YES_NO_LC value) { + setValue(org.jooq.test.oracle.generatedclasses.test.tables.TBooleans.T_BOOLEANS.YES_NO_LC, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "YES_NO_LC", length = 3) + public org.jooq.test._.converters.Boolean_YES_NO_LC getYesNoLc() { + return getValue(org.jooq.test.oracle.generatedclasses.test.tables.TBooleans.T_BOOLEANS.YES_NO_LC); + } + + /** + * An uncommented item + */ + public void setYesNoUc(org.jooq.test._.converters.Boolean_YES_NO_UC value) { + setValue(org.jooq.test.oracle.generatedclasses.test.tables.TBooleans.T_BOOLEANS.YES_NO_UC, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "YES_NO_UC", length = 3) + public org.jooq.test._.converters.Boolean_YES_NO_UC getYesNoUc() { + return getValue(org.jooq.test.oracle.generatedclasses.test.tables.TBooleans.T_BOOLEANS.YES_NO_UC); + } + + /** + * An uncommented item + */ + public void setYNLc(org.jooq.test._.converters.Boolean_YN_LC value) { + setValue(org.jooq.test.oracle.generatedclasses.test.tables.TBooleans.T_BOOLEANS.Y_N_LC, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "Y_N_LC", length = 1) + public org.jooq.test._.converters.Boolean_YN_LC getYNLc() { + return getValue(org.jooq.test.oracle.generatedclasses.test.tables.TBooleans.T_BOOLEANS.Y_N_LC); + } + + /** + * An uncommented item + */ + public void setYNUc(org.jooq.test._.converters.Boolean_YN_UC value) { + setValue(org.jooq.test.oracle.generatedclasses.test.tables.TBooleans.T_BOOLEANS.Y_N_UC, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "Y_N_UC", length = 1) + public org.jooq.test._.converters.Boolean_YN_UC getYNUc() { + return getValue(org.jooq.test.oracle.generatedclasses.test.tables.TBooleans.T_BOOLEANS.Y_N_UC); + } + + /** + * An uncommented item + */ + public void setVcBoolean(java.lang.Boolean value) { + setValue(org.jooq.test.oracle.generatedclasses.test.tables.TBooleans.T_BOOLEANS.VC_BOOLEAN, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "VC_BOOLEAN", length = 1) + public java.lang.Boolean getVcBoolean() { + return getValue(org.jooq.test.oracle.generatedclasses.test.tables.TBooleans.T_BOOLEANS.VC_BOOLEAN); + } + + /** + * An uncommented item + */ + public void setCBoolean(java.lang.Boolean value) { + setValue(org.jooq.test.oracle.generatedclasses.test.tables.TBooleans.T_BOOLEANS.C_BOOLEAN, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "C_BOOLEAN", length = 1) + public java.lang.Boolean getCBoolean() { + return getValue(org.jooq.test.oracle.generatedclasses.test.tables.TBooleans.T_BOOLEANS.C_BOOLEAN); + } + + /** + * An uncommented item + */ + public void setNBoolean(java.lang.Boolean value) { + setValue(org.jooq.test.oracle.generatedclasses.test.tables.TBooleans.T_BOOLEANS.N_BOOLEAN, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "N_BOOLEAN", precision = 7) + public java.lang.Boolean getNBoolean() { + return getValue(org.jooq.test.oracle.generatedclasses.test.tables.TBooleans.T_BOOLEANS.N_BOOLEAN); + } + + /** + * Create a detached TBooleansRecord + */ + public TBooleansRecord() { + super(org.jooq.test.oracle.generatedclasses.test.tables.TBooleans.T_BOOLEANS); + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/tables/records/TDatesRecord.java b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/tables/records/TDatesRecord.java new file mode 100644 index 00000000000..12643c9d951 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/tables/records/TDatesRecord.java @@ -0,0 +1,146 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle.generatedclasses.test.tables.records; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "T_DATES", schema = "TEST") +public class TDatesRecord extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = -1288086985; + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setId(java.lang.Integer value) { + setValue(org.jooq.test.oracle.generatedclasses.test.tables.TDates.T_DATES.ID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + @javax.persistence.Id + @javax.persistence.Column(name = "ID", unique = true, nullable = false, precision = 7) + public java.lang.Integer getId() { + return getValue(org.jooq.test.oracle.generatedclasses.test.tables.TDates.T_DATES.ID); + } + + /** + * An uncommented item + */ + public void setD(java.sql.Date value) { + setValue(org.jooq.test.oracle.generatedclasses.test.tables.TDates.T_DATES.D, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "D", length = 7) + public java.sql.Date getD() { + return getValue(org.jooq.test.oracle.generatedclasses.test.tables.TDates.T_DATES.D); + } + + /** + * An uncommented item + */ + public void setT(java.sql.Timestamp value) { + setValue(org.jooq.test.oracle.generatedclasses.test.tables.TDates.T_DATES.T, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "T", length = 11) + public java.sql.Timestamp getT() { + return getValue(org.jooq.test.oracle.generatedclasses.test.tables.TDates.T_DATES.T); + } + + /** + * An uncommented item + */ + public void setTs(java.sql.Timestamp value) { + setValue(org.jooq.test.oracle.generatedclasses.test.tables.TDates.T_DATES.TS, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "TS", length = 11) + public java.sql.Timestamp getTs() { + return getValue(org.jooq.test.oracle.generatedclasses.test.tables.TDates.T_DATES.TS); + } + + /** + * An uncommented item + */ + public void setDInt(java.lang.Integer value) { + setValue(org.jooq.test.oracle.generatedclasses.test.tables.TDates.T_DATES.D_INT, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "D_INT", precision = 7) + public java.lang.Integer getDInt() { + return getValue(org.jooq.test.oracle.generatedclasses.test.tables.TDates.T_DATES.D_INT); + } + + /** + * An uncommented item + */ + public void setTsBigint(java.lang.Long value) { + setValue(org.jooq.test.oracle.generatedclasses.test.tables.TDates.T_DATES.TS_BIGINT, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "TS_BIGINT", precision = 18) + public java.lang.Long getTsBigint() { + return getValue(org.jooq.test.oracle.generatedclasses.test.tables.TDates.T_DATES.TS_BIGINT); + } + + /** + * An uncommented item + */ + public void setIY(org.jooq.types.YearToMonth value) { + setValue(org.jooq.test.oracle.generatedclasses.test.tables.TDates.T_DATES.I_Y, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "I_Y", precision = 2) + public org.jooq.types.YearToMonth getIY() { + return getValue(org.jooq.test.oracle.generatedclasses.test.tables.TDates.T_DATES.I_Y); + } + + /** + * An uncommented item + */ + public void setID(org.jooq.types.DayToSecond value) { + setValue(org.jooq.test.oracle.generatedclasses.test.tables.TDates.T_DATES.I_D, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "I_D", precision = 2, scale = 6) + public org.jooq.types.DayToSecond getID() { + return getValue(org.jooq.test.oracle.generatedclasses.test.tables.TDates.T_DATES.I_D); + } + + /** + * Create a detached TDatesRecord + */ + public TDatesRecord() { + super(org.jooq.test.oracle.generatedclasses.test.tables.TDates.T_DATES); + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/tables/records/TDirectoryRecord.java b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/tables/records/TDirectoryRecord.java new file mode 100644 index 00000000000..b41c149b42c --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/tables/records/TDirectoryRecord.java @@ -0,0 +1,126 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle.generatedclasses.test.tables.records; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "T_DIRECTORY", schema = "TEST") +public class TDirectoryRecord extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = -2033765815; + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setId(java.lang.Integer value) { + setValue(org.jooq.test.oracle.generatedclasses.test.tables.TDirectory.T_DIRECTORY.ID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + @javax.persistence.Id + @javax.persistence.Column(name = "ID", unique = true, nullable = false, precision = 7) + public java.lang.Integer getId() { + return getValue(org.jooq.test.oracle.generatedclasses.test.tables.TDirectory.T_DIRECTORY.ID); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.util.List fetchTDirectoryList() { + return create() + .selectFrom(org.jooq.test.oracle.generatedclasses.test.tables.TDirectory.T_DIRECTORY) + .where(org.jooq.test.oracle.generatedclasses.test.tables.TDirectory.T_DIRECTORY.PARENT_ID.equal(getValue(org.jooq.test.oracle.generatedclasses.test.tables.TDirectory.T_DIRECTORY.ID))) + .fetch(); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT PK_T_DIRECTORY_SELF
+	 * FOREIGN KEY (PARENT_ID)
+	 * REFERENCES TEST.T_DIRECTORY (ID)
+	 * 
+ */ + public void setParentId(java.lang.Integer value) { + setValue(org.jooq.test.oracle.generatedclasses.test.tables.TDirectory.T_DIRECTORY.PARENT_ID, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT PK_T_DIRECTORY_SELF
+	 * FOREIGN KEY (PARENT_ID)
+	 * REFERENCES TEST.T_DIRECTORY (ID)
+	 * 
+ */ + @javax.persistence.Column(name = "PARENT_ID", precision = 7) + public java.lang.Integer getParentId() { + return getValue(org.jooq.test.oracle.generatedclasses.test.tables.TDirectory.T_DIRECTORY.PARENT_ID); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT PK_T_DIRECTORY_SELF
+	 * FOREIGN KEY (PARENT_ID)
+	 * REFERENCES TEST.T_DIRECTORY (ID)
+	 * 
+ */ + public org.jooq.test.oracle.generatedclasses.test.tables.records.TDirectoryRecord fetchTDirectory() { + return create() + .selectFrom(org.jooq.test.oracle.generatedclasses.test.tables.TDirectory.T_DIRECTORY) + .where(org.jooq.test.oracle.generatedclasses.test.tables.TDirectory.T_DIRECTORY.ID.equal(getValue(org.jooq.test.oracle.generatedclasses.test.tables.TDirectory.T_DIRECTORY.PARENT_ID))) + .fetchOne(); + } + + /** + * An uncommented item + */ + public void setIsDirectory(java.lang.Integer value) { + setValue(org.jooq.test.oracle.generatedclasses.test.tables.TDirectory.T_DIRECTORY.IS_DIRECTORY, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "IS_DIRECTORY", precision = 7) + public java.lang.Integer getIsDirectory() { + return getValue(org.jooq.test.oracle.generatedclasses.test.tables.TDirectory.T_DIRECTORY.IS_DIRECTORY); + } + + /** + * An uncommented item + */ + public void setName(java.lang.String value) { + setValue(org.jooq.test.oracle.generatedclasses.test.tables.TDirectory.T_DIRECTORY.NAME, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "name", length = 50) + public java.lang.String getName() { + return getValue(org.jooq.test.oracle.generatedclasses.test.tables.TDirectory.T_DIRECTORY.NAME); + } + + /** + * Create a detached TDirectoryRecord + */ + public TDirectoryRecord() { + super(org.jooq.test.oracle.generatedclasses.test.tables.TDirectory.T_DIRECTORY); + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/tables/records/TTriggersRecord.java b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/tables/records/TTriggersRecord.java new file mode 100644 index 00000000000..3406c9025b4 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/tables/records/TTriggersRecord.java @@ -0,0 +1,71 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle.generatedclasses.test.tables.records; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "T_TRIGGERS", schema = "TEST") +public class TTriggersRecord extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = -1990157151; + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setIdGenerated(java.lang.Integer value) { + setValue(org.jooq.test.oracle.generatedclasses.test.tables.TTriggers.T_TRIGGERS.ID_GENERATED, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + @javax.persistence.Id + @javax.persistence.Column(name = "ID_GENERATED", unique = true, nullable = false, precision = 7) + public java.lang.Integer getIdGenerated() { + return getValue(org.jooq.test.oracle.generatedclasses.test.tables.TTriggers.T_TRIGGERS.ID_GENERATED); + } + + /** + * An uncommented item + */ + public void setId(java.lang.Integer value) { + setValue(org.jooq.test.oracle.generatedclasses.test.tables.TTriggers.T_TRIGGERS.ID, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "ID", nullable = false, precision = 7) + public java.lang.Integer getId() { + return getValue(org.jooq.test.oracle.generatedclasses.test.tables.TTriggers.T_TRIGGERS.ID); + } + + /** + * An uncommented item + */ + public void setCounter(java.lang.Integer value) { + setValue(org.jooq.test.oracle.generatedclasses.test.tables.TTriggers.T_TRIGGERS.COUNTER, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "COUNTER", nullable = false, precision = 7) + public java.lang.Integer getCounter() { + return getValue(org.jooq.test.oracle.generatedclasses.test.tables.TTriggers.T_TRIGGERS.COUNTER); + } + + /** + * Create a detached TTriggersRecord + */ + public TTriggersRecord() { + super(org.jooq.test.oracle.generatedclasses.test.tables.TTriggers.T_TRIGGERS); + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/tables/records/T_639NumbersTableRecord.java b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/tables/records/T_639NumbersTableRecord.java new file mode 100644 index 00000000000..4c5df12f22a --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/tables/records/T_639NumbersTableRecord.java @@ -0,0 +1,191 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle.generatedclasses.test.tables.records; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "T_639_NUMBERS_TABLE", schema = "TEST") +public class T_639NumbersTableRecord extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = 463792573; + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setId(java.lang.Integer value) { + setValue(org.jooq.test.oracle.generatedclasses.test.tables.T_639NumbersTable.T_639_NUMBERS_TABLE.ID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + @javax.persistence.Id + @javax.persistence.Column(name = "ID", unique = true, nullable = false, precision = 7) + public java.lang.Integer getId() { + return getValue(org.jooq.test.oracle.generatedclasses.test.tables.T_639NumbersTable.T_639_NUMBERS_TABLE.ID); + } + + /** + * An uncommented item + */ + public void setByte(java.lang.Byte value) { + setValue(org.jooq.test.oracle.generatedclasses.test.tables.T_639NumbersTable.T_639_NUMBERS_TABLE.BYTE, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "BYTE", precision = 2) + public java.lang.Byte getByte() { + return getValue(org.jooq.test.oracle.generatedclasses.test.tables.T_639NumbersTable.T_639_NUMBERS_TABLE.BYTE); + } + + /** + * An uncommented item + */ + public void setShort(java.lang.Short value) { + setValue(org.jooq.test.oracle.generatedclasses.test.tables.T_639NumbersTable.T_639_NUMBERS_TABLE.SHORT, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "SHORT", precision = 4) + public java.lang.Short getShort() { + return getValue(org.jooq.test.oracle.generatedclasses.test.tables.T_639NumbersTable.T_639_NUMBERS_TABLE.SHORT); + } + + /** + * An uncommented item + */ + public void setInteger(java.lang.Integer value) { + setValue(org.jooq.test.oracle.generatedclasses.test.tables.T_639NumbersTable.T_639_NUMBERS_TABLE.INTEGER, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "INTEGER", precision = 7) + public java.lang.Integer getInteger() { + return getValue(org.jooq.test.oracle.generatedclasses.test.tables.T_639NumbersTable.T_639_NUMBERS_TABLE.INTEGER); + } + + /** + * An uncommented item + */ + public void setLong(java.lang.Long value) { + setValue(org.jooq.test.oracle.generatedclasses.test.tables.T_639NumbersTable.T_639_NUMBERS_TABLE.LONG, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "LONG", precision = 18) + public java.lang.Long getLong() { + return getValue(org.jooq.test.oracle.generatedclasses.test.tables.T_639NumbersTable.T_639_NUMBERS_TABLE.LONG); + } + + /** + * An uncommented item + */ + public void setByteDecimal(java.lang.Byte value) { + setValue(org.jooq.test.oracle.generatedclasses.test.tables.T_639NumbersTable.T_639_NUMBERS_TABLE.BYTE_DECIMAL, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "BYTE_DECIMAL", precision = 2) + public java.lang.Byte getByteDecimal() { + return getValue(org.jooq.test.oracle.generatedclasses.test.tables.T_639NumbersTable.T_639_NUMBERS_TABLE.BYTE_DECIMAL); + } + + /** + * An uncommented item + */ + public void setShortDecimal(java.lang.Short value) { + setValue(org.jooq.test.oracle.generatedclasses.test.tables.T_639NumbersTable.T_639_NUMBERS_TABLE.SHORT_DECIMAL, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "SHORT_DECIMAL", precision = 4) + public java.lang.Short getShortDecimal() { + return getValue(org.jooq.test.oracle.generatedclasses.test.tables.T_639NumbersTable.T_639_NUMBERS_TABLE.SHORT_DECIMAL); + } + + /** + * An uncommented item + */ + public void setIntegerDecimal(java.lang.Integer value) { + setValue(org.jooq.test.oracle.generatedclasses.test.tables.T_639NumbersTable.T_639_NUMBERS_TABLE.INTEGER_DECIMAL, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "INTEGER_DECIMAL", precision = 9) + public java.lang.Integer getIntegerDecimal() { + return getValue(org.jooq.test.oracle.generatedclasses.test.tables.T_639NumbersTable.T_639_NUMBERS_TABLE.INTEGER_DECIMAL); + } + + /** + * An uncommented item + */ + public void setLongDecimal(java.lang.Long value) { + setValue(org.jooq.test.oracle.generatedclasses.test.tables.T_639NumbersTable.T_639_NUMBERS_TABLE.LONG_DECIMAL, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "LONG_DECIMAL", precision = 18) + public java.lang.Long getLongDecimal() { + return getValue(org.jooq.test.oracle.generatedclasses.test.tables.T_639NumbersTable.T_639_NUMBERS_TABLE.LONG_DECIMAL); + } + + /** + * An uncommented item + */ + public void setBigInteger(java.math.BigInteger value) { + setValue(org.jooq.test.oracle.generatedclasses.test.tables.T_639NumbersTable.T_639_NUMBERS_TABLE.BIG_INTEGER, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "BIG_INTEGER", precision = 22) + public java.math.BigInteger getBigInteger() { + return getValue(org.jooq.test.oracle.generatedclasses.test.tables.T_639NumbersTable.T_639_NUMBERS_TABLE.BIG_INTEGER); + } + + /** + * An uncommented item + */ + public void setBigDecimal(java.math.BigDecimal value) { + setValue(org.jooq.test.oracle.generatedclasses.test.tables.T_639NumbersTable.T_639_NUMBERS_TABLE.BIG_DECIMAL, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "BIG_DECIMAL", precision = 22, scale = 5) + public java.math.BigDecimal getBigDecimal() { + return getValue(org.jooq.test.oracle.generatedclasses.test.tables.T_639NumbersTable.T_639_NUMBERS_TABLE.BIG_DECIMAL); + } + + /** + * Create a detached T_639NumbersTableRecord + */ + public T_639NumbersTableRecord() { + super(org.jooq.test.oracle.generatedclasses.test.tables.T_639NumbersTable.T_639_NUMBERS_TABLE); + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/tables/records/T_658RefRecord.java b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/tables/records/T_658RefRecord.java new file mode 100644 index 00000000000..2b5c703b4c7 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/tables/records/T_658RefRecord.java @@ -0,0 +1,183 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle.generatedclasses.test.tables.records; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "T_658_REF", schema = "TEST") +public class T_658RefRecord extends org.jooq.impl.TableRecordImpl { + + private static final long serialVersionUID = -2102709301; + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_T_658_11
+	 * FOREIGN KEY (REF_11)
+	 * REFERENCES TEST.T_658_11 (ID)
+	 * 
+ */ + public void setRef_11(org.jooq.test.oracle.generatedclasses.test.enums.T_658_11 value) { + setValue(org.jooq.test.oracle.generatedclasses.test.tables.T_658Ref.T_658_REF.REF_11, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_T_658_11
+	 * FOREIGN KEY (REF_11)
+	 * REFERENCES TEST.T_658_11 (ID)
+	 * 
+ */ + @javax.persistence.Column(name = "REF_11", length = 3) + public org.jooq.test.oracle.generatedclasses.test.enums.T_658_11 getRef_11() { + return getValue(org.jooq.test.oracle.generatedclasses.test.tables.T_658Ref.T_658_REF.REF_11); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_T_658_21
+	 * FOREIGN KEY (REF_21)
+	 * REFERENCES TEST.T_658_21 (ID)
+	 * 
+ */ + public void setRef_21(org.jooq.test.oracle.generatedclasses.test.enums.T_658_21 value) { + setValue(org.jooq.test.oracle.generatedclasses.test.tables.T_658Ref.T_658_REF.REF_21, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_T_658_21
+	 * FOREIGN KEY (REF_21)
+	 * REFERENCES TEST.T_658_21 (ID)
+	 * 
+ */ + @javax.persistence.Column(name = "REF_21", precision = 7) + public org.jooq.test.oracle.generatedclasses.test.enums.T_658_21 getRef_21() { + return getValue(org.jooq.test.oracle.generatedclasses.test.tables.T_658Ref.T_658_REF.REF_21); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_T_658_31
+	 * FOREIGN KEY (REF_31)
+	 * REFERENCES TEST.T_658_31 (ID)
+	 * 
+ */ + public void setRef_31(org.jooq.test.oracle.generatedclasses.test.enums.T_658_31 value) { + setValue(org.jooq.test.oracle.generatedclasses.test.tables.T_658Ref.T_658_REF.REF_31, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_T_658_31
+	 * FOREIGN KEY (REF_31)
+	 * REFERENCES TEST.T_658_31 (ID)
+	 * 
+ */ + @javax.persistence.Column(name = "REF_31", precision = 15) + public org.jooq.test.oracle.generatedclasses.test.enums.T_658_31 getRef_31() { + return getValue(org.jooq.test.oracle.generatedclasses.test.tables.T_658Ref.T_658_REF.REF_31); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_T_658_12
+	 * FOREIGN KEY (REF_12)
+	 * REFERENCES TEST.T_658_12 (ID)
+	 * 
+ */ + public void setRef_12(org.jooq.test.oracle.generatedclasses.test.enums.T_658_12 value) { + setValue(org.jooq.test.oracle.generatedclasses.test.tables.T_658Ref.T_658_REF.REF_12, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_T_658_12
+	 * FOREIGN KEY (REF_12)
+	 * REFERENCES TEST.T_658_12 (ID)
+	 * 
+ */ + @javax.persistence.Column(name = "REF_12", length = 3) + public org.jooq.test.oracle.generatedclasses.test.enums.T_658_12 getRef_12() { + return getValue(org.jooq.test.oracle.generatedclasses.test.tables.T_658Ref.T_658_REF.REF_12); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_T_658_22
+	 * FOREIGN KEY (REF_22)
+	 * REFERENCES TEST.T_658_22 (ID)
+	 * 
+ */ + public void setRef_22(org.jooq.test.oracle.generatedclasses.test.enums.T_658_22 value) { + setValue(org.jooq.test.oracle.generatedclasses.test.tables.T_658Ref.T_658_REF.REF_22, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_T_658_22
+	 * FOREIGN KEY (REF_22)
+	 * REFERENCES TEST.T_658_22 (ID)
+	 * 
+ */ + @javax.persistence.Column(name = "REF_22", precision = 7) + public org.jooq.test.oracle.generatedclasses.test.enums.T_658_22 getRef_22() { + return getValue(org.jooq.test.oracle.generatedclasses.test.tables.T_658Ref.T_658_REF.REF_22); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_T_658_32
+	 * FOREIGN KEY (REF_32)
+	 * REFERENCES TEST.T_658_32 (ID)
+	 * 
+ */ + public void setRef_32(org.jooq.test.oracle.generatedclasses.test.enums.T_658_32 value) { + setValue(org.jooq.test.oracle.generatedclasses.test.tables.T_658Ref.T_658_REF.REF_32, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_T_658_32
+	 * FOREIGN KEY (REF_32)
+	 * REFERENCES TEST.T_658_32 (ID)
+	 * 
+ */ + @javax.persistence.Column(name = "REF_32", precision = 15) + public org.jooq.test.oracle.generatedclasses.test.enums.T_658_32 getRef_32() { + return getValue(org.jooq.test.oracle.generatedclasses.test.tables.T_658Ref.T_658_REF.REF_32); + } + + /** + * Create a detached T_658RefRecord + */ + public T_658RefRecord() { + super(org.jooq.test.oracle.generatedclasses.test.tables.T_658Ref.T_658_REF); + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/tables/records/T_725LobTestRecord.java b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/tables/records/T_725LobTestRecord.java new file mode 100644 index 00000000000..1516fa55c8f --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/tables/records/T_725LobTestRecord.java @@ -0,0 +1,56 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle.generatedclasses.test.tables.records; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "T_725_LOB_TEST", schema = "TEST") +public class T_725LobTestRecord extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = -1886427352; + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setId(java.lang.Integer value) { + setValue(org.jooq.test.oracle.generatedclasses.test.tables.T_725LobTest.T_725_LOB_TEST.ID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + @javax.persistence.Id + @javax.persistence.Column(name = "ID", unique = true, nullable = false, precision = 7) + public java.lang.Integer getId() { + return getValue(org.jooq.test.oracle.generatedclasses.test.tables.T_725LobTest.T_725_LOB_TEST.ID); + } + + /** + * An uncommented item + */ + public void setLob(byte[] value) { + setValue(org.jooq.test.oracle.generatedclasses.test.tables.T_725LobTest.T_725_LOB_TEST.LOB, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "LOB", length = 4000) + public byte[] getLob() { + return getValue(org.jooq.test.oracle.generatedclasses.test.tables.T_725LobTest.T_725_LOB_TEST.LOB); + } + + /** + * Create a detached T_725LobTestRecord + */ + public T_725LobTestRecord() { + super(org.jooq.test.oracle.generatedclasses.test.tables.T_725LobTest.T_725_LOB_TEST); + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/tables/records/T_785Record.java b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/tables/records/T_785Record.java new file mode 100644 index 00000000000..f8a3b0cc528 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/tables/records/T_785Record.java @@ -0,0 +1,66 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle.generatedclasses.test.tables.records; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "T_785", schema = "TEST") +public class T_785Record extends org.jooq.impl.TableRecordImpl { + + private static final long serialVersionUID = 1183009918; + + /** + * An uncommented item + */ + public void setId(java.lang.Integer value) { + setValue(org.jooq.test.oracle.generatedclasses.test.tables.T_785.T_785.ID, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "ID", precision = 7) + public java.lang.Integer getId() { + return getValue(org.jooq.test.oracle.generatedclasses.test.tables.T_785.T_785.ID); + } + + /** + * An uncommented item + */ + public void setName(java.lang.String value) { + setValue(org.jooq.test.oracle.generatedclasses.test.tables.T_785.T_785.NAME, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "NAME", length = 50) + public java.lang.String getName() { + return getValue(org.jooq.test.oracle.generatedclasses.test.tables.T_785.T_785.NAME); + } + + /** + * An uncommented item + */ + public void setValue(java.lang.String value) { + setValue(org.jooq.test.oracle.generatedclasses.test.tables.T_785.T_785.VALUE, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "VALUE", length = 50) + public java.lang.String getValue() { + return getValue(org.jooq.test.oracle.generatedclasses.test.tables.T_785.T_785.VALUE); + } + + /** + * Create a detached T_785Record + */ + public T_785Record() { + super(org.jooq.test.oracle.generatedclasses.test.tables.T_785.T_785); + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/tables/records/VAuthorRecord.java b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/tables/records/VAuthorRecord.java new file mode 100644 index 00000000000..2dbe9e2e2c1 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/tables/records/VAuthorRecord.java @@ -0,0 +1,111 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle.generatedclasses.test.tables.records; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "V_AUTHOR", schema = "TEST") +public class VAuthorRecord extends org.jooq.impl.TableRecordImpl { + + private static final long serialVersionUID = 1073715627; + + /** + * An uncommented item + */ + public void setId(java.lang.Integer value) { + setValue(org.jooq.test.oracle.generatedclasses.test.tables.VAuthor.V_AUTHOR.ID, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "ID", nullable = false, precision = 7) + public java.lang.Integer getId() { + return getValue(org.jooq.test.oracle.generatedclasses.test.tables.VAuthor.V_AUTHOR.ID); + } + + /** + * An uncommented item + */ + public void setFirstName(java.lang.String value) { + setValue(org.jooq.test.oracle.generatedclasses.test.tables.VAuthor.V_AUTHOR.FIRST_NAME, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "FIRST_NAME", length = 50) + public java.lang.String getFirstName() { + return getValue(org.jooq.test.oracle.generatedclasses.test.tables.VAuthor.V_AUTHOR.FIRST_NAME); + } + + /** + * An uncommented item + */ + public void setLastName(java.lang.String value) { + setValue(org.jooq.test.oracle.generatedclasses.test.tables.VAuthor.V_AUTHOR.LAST_NAME, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "LAST_NAME", nullable = false, length = 50) + public java.lang.String getLastName() { + return getValue(org.jooq.test.oracle.generatedclasses.test.tables.VAuthor.V_AUTHOR.LAST_NAME); + } + + /** + * An uncommented item + */ + public void setDateOfBirth(java.sql.Date value) { + setValue(org.jooq.test.oracle.generatedclasses.test.tables.VAuthor.V_AUTHOR.DATE_OF_BIRTH, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "DATE_OF_BIRTH", length = 7) + public java.sql.Date getDateOfBirth() { + return getValue(org.jooq.test.oracle.generatedclasses.test.tables.VAuthor.V_AUTHOR.DATE_OF_BIRTH); + } + + /** + * An uncommented item + */ + public void setYearOfBirth(java.lang.Integer value) { + setValue(org.jooq.test.oracle.generatedclasses.test.tables.VAuthor.V_AUTHOR.YEAR_OF_BIRTH, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "YEAR_OF_BIRTH", precision = 7) + public java.lang.Integer getYearOfBirth() { + return getValue(org.jooq.test.oracle.generatedclasses.test.tables.VAuthor.V_AUTHOR.YEAR_OF_BIRTH); + } + + /** + * An uncommented item + */ + public void setAddress(org.jooq.test.oracle.generatedclasses.test.udt.records.UAddressTypeRecord value) { + setValue(org.jooq.test.oracle.generatedclasses.test.tables.VAuthor.V_AUTHOR.ADDRESS, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "ADDRESS", length = 448) + public org.jooq.test.oracle.generatedclasses.test.udt.records.UAddressTypeRecord getAddress() { + return getValue(org.jooq.test.oracle.generatedclasses.test.tables.VAuthor.V_AUTHOR.ADDRESS); + } + + /** + * Create a detached VAuthorRecord + */ + public VAuthorRecord() { + super(org.jooq.test.oracle.generatedclasses.test.tables.VAuthor.V_AUTHOR); + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/tables/records/VBookRecord.java b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/tables/records/VBookRecord.java new file mode 100644 index 00000000000..e39523dd40f --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/tables/records/VBookRecord.java @@ -0,0 +1,156 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle.generatedclasses.test.tables.records; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "V_BOOK", schema = "TEST") +public class VBookRecord extends org.jooq.impl.TableRecordImpl { + + private static final long serialVersionUID = 1646329168; + + /** + * An uncommented item + */ + public void setId(java.lang.Integer value) { + setValue(org.jooq.test.oracle.generatedclasses.test.tables.VBook.V_BOOK.ID, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "ID", nullable = false, precision = 7) + public java.lang.Integer getId() { + return getValue(org.jooq.test.oracle.generatedclasses.test.tables.VBook.V_BOOK.ID); + } + + /** + * An uncommented item + */ + public void setAuthorId(java.lang.Integer value) { + setValue(org.jooq.test.oracle.generatedclasses.test.tables.VBook.V_BOOK.AUTHOR_ID, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "AUTHOR_ID", nullable = false, precision = 7) + public java.lang.Integer getAuthorId() { + return getValue(org.jooq.test.oracle.generatedclasses.test.tables.VBook.V_BOOK.AUTHOR_ID); + } + + /** + * An uncommented item + */ + public void setCoAuthorId(java.lang.Integer value) { + setValue(org.jooq.test.oracle.generatedclasses.test.tables.VBook.V_BOOK.CO_AUTHOR_ID, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "CO_AUTHOR_ID", precision = 7) + public java.lang.Integer getCoAuthorId() { + return getValue(org.jooq.test.oracle.generatedclasses.test.tables.VBook.V_BOOK.CO_AUTHOR_ID); + } + + /** + * An uncommented item + */ + public void setDetailsId(java.lang.Integer value) { + setValue(org.jooq.test.oracle.generatedclasses.test.tables.VBook.V_BOOK.DETAILS_ID, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "DETAILS_ID", precision = 7) + public java.lang.Integer getDetailsId() { + return getValue(org.jooq.test.oracle.generatedclasses.test.tables.VBook.V_BOOK.DETAILS_ID); + } + + /** + * An uncommented item + */ + public void setTitle(java.lang.String value) { + setValue(org.jooq.test.oracle.generatedclasses.test.tables.VBook.V_BOOK.TITLE, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "TITLE", nullable = false, length = 400) + public java.lang.String getTitle() { + return getValue(org.jooq.test.oracle.generatedclasses.test.tables.VBook.V_BOOK.TITLE); + } + + /** + * An uncommented item + */ + public void setPublishedIn(java.lang.Integer value) { + setValue(org.jooq.test.oracle.generatedclasses.test.tables.VBook.V_BOOK.PUBLISHED_IN, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "PUBLISHED_IN", nullable = false, precision = 7) + public java.lang.Integer getPublishedIn() { + return getValue(org.jooq.test.oracle.generatedclasses.test.tables.VBook.V_BOOK.PUBLISHED_IN); + } + + /** + * An uncommented item + */ + public void setLanguageId(java.lang.Integer value) { + setValue(org.jooq.test.oracle.generatedclasses.test.tables.VBook.V_BOOK.LANGUAGE_ID, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "LANGUAGE_ID", nullable = false, precision = 7) + public java.lang.Integer getLanguageId() { + return getValue(org.jooq.test.oracle.generatedclasses.test.tables.VBook.V_BOOK.LANGUAGE_ID); + } + + /** + * An uncommented item + */ + public void setContentText(java.lang.String value) { + setValue(org.jooq.test.oracle.generatedclasses.test.tables.VBook.V_BOOK.CONTENT_TEXT, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "CONTENT_TEXT", length = 4000) + public java.lang.String getContentText() { + return getValue(org.jooq.test.oracle.generatedclasses.test.tables.VBook.V_BOOK.CONTENT_TEXT); + } + + /** + * An uncommented item + */ + public void setContentPdf(byte[] value) { + setValue(org.jooq.test.oracle.generatedclasses.test.tables.VBook.V_BOOK.CONTENT_PDF, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "CONTENT_PDF", length = 4000) + public byte[] getContentPdf() { + return getValue(org.jooq.test.oracle.generatedclasses.test.tables.VBook.V_BOOK.CONTENT_PDF); + } + + /** + * Create a detached VBookRecord + */ + public VBookRecord() { + super(org.jooq.test.oracle.generatedclasses.test.tables.VBook.V_BOOK); + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/tables/records/VIncompleteRecord.java b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/tables/records/VIncompleteRecord.java new file mode 100644 index 00000000000..25cf79d811d --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/tables/records/VIncompleteRecord.java @@ -0,0 +1,210 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle.generatedclasses.test.tables.records; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "V_INCOMPLETE", schema = "TEST") +public class VIncompleteRecord extends org.jooq.impl.TableRecordImpl { + + private static final long serialVersionUID = -1291458455; + + /** + * An uncommented item + * + * The SQL type of this item (UNDEFINED) could not be mapped.
+ * Deserialising this field might not work! + */ + public void setId(java.lang.Object value) { + setValue(org.jooq.test.oracle.generatedclasses.test.tables.VIncomplete.V_INCOMPLETE.ID, value); + } + + /** + * An uncommented item + * + * The SQL type of this item (UNDEFINED) could not be mapped.
+ * Deserialising this field might not work! + */ + @javax.persistence.Column(name = "ID") + public java.lang.Object getId() { + return getValue(org.jooq.test.oracle.generatedclasses.test.tables.VIncomplete.V_INCOMPLETE.ID); + } + + /** + * An uncommented item + * + * The SQL type of this item (UNDEFINED) could not be mapped.
+ * Deserialising this field might not work! + */ + public void setAuthorId(java.lang.Object value) { + setValue(org.jooq.test.oracle.generatedclasses.test.tables.VIncomplete.V_INCOMPLETE.AUTHOR_ID, value); + } + + /** + * An uncommented item + * + * The SQL type of this item (UNDEFINED) could not be mapped.
+ * Deserialising this field might not work! + */ + @javax.persistence.Column(name = "AUTHOR_ID") + public java.lang.Object getAuthorId() { + return getValue(org.jooq.test.oracle.generatedclasses.test.tables.VIncomplete.V_INCOMPLETE.AUTHOR_ID); + } + + /** + * An uncommented item + * + * The SQL type of this item (UNDEFINED) could not be mapped.
+ * Deserialising this field might not work! + */ + public void setCoAuthorId(java.lang.Object value) { + setValue(org.jooq.test.oracle.generatedclasses.test.tables.VIncomplete.V_INCOMPLETE.CO_AUTHOR_ID, value); + } + + /** + * An uncommented item + * + * The SQL type of this item (UNDEFINED) could not be mapped.
+ * Deserialising this field might not work! + */ + @javax.persistence.Column(name = "CO_AUTHOR_ID") + public java.lang.Object getCoAuthorId() { + return getValue(org.jooq.test.oracle.generatedclasses.test.tables.VIncomplete.V_INCOMPLETE.CO_AUTHOR_ID); + } + + /** + * An uncommented item + * + * The SQL type of this item (UNDEFINED) could not be mapped.
+ * Deserialising this field might not work! + */ + public void setDetailsId(java.lang.Object value) { + setValue(org.jooq.test.oracle.generatedclasses.test.tables.VIncomplete.V_INCOMPLETE.DETAILS_ID, value); + } + + /** + * An uncommented item + * + * The SQL type of this item (UNDEFINED) could not be mapped.
+ * Deserialising this field might not work! + */ + @javax.persistence.Column(name = "DETAILS_ID") + public java.lang.Object getDetailsId() { + return getValue(org.jooq.test.oracle.generatedclasses.test.tables.VIncomplete.V_INCOMPLETE.DETAILS_ID); + } + + /** + * An uncommented item + * + * The SQL type of this item (UNDEFINED) could not be mapped.
+ * Deserialising this field might not work! + */ + public void setTitle(java.lang.Object value) { + setValue(org.jooq.test.oracle.generatedclasses.test.tables.VIncomplete.V_INCOMPLETE.TITLE, value); + } + + /** + * An uncommented item + * + * The SQL type of this item (UNDEFINED) could not be mapped.
+ * Deserialising this field might not work! + */ + @javax.persistence.Column(name = "TITLE") + public java.lang.Object getTitle() { + return getValue(org.jooq.test.oracle.generatedclasses.test.tables.VIncomplete.V_INCOMPLETE.TITLE); + } + + /** + * An uncommented item + * + * The SQL type of this item (UNDEFINED) could not be mapped.
+ * Deserialising this field might not work! + */ + public void setPublishedIn(java.lang.Object value) { + setValue(org.jooq.test.oracle.generatedclasses.test.tables.VIncomplete.V_INCOMPLETE.PUBLISHED_IN, value); + } + + /** + * An uncommented item + * + * The SQL type of this item (UNDEFINED) could not be mapped.
+ * Deserialising this field might not work! + */ + @javax.persistence.Column(name = "PUBLISHED_IN") + public java.lang.Object getPublishedIn() { + return getValue(org.jooq.test.oracle.generatedclasses.test.tables.VIncomplete.V_INCOMPLETE.PUBLISHED_IN); + } + + /** + * An uncommented item + * + * The SQL type of this item (UNDEFINED) could not be mapped.
+ * Deserialising this field might not work! + */ + public void setLanguageId(java.lang.Object value) { + setValue(org.jooq.test.oracle.generatedclasses.test.tables.VIncomplete.V_INCOMPLETE.LANGUAGE_ID, value); + } + + /** + * An uncommented item + * + * The SQL type of this item (UNDEFINED) could not be mapped.
+ * Deserialising this field might not work! + */ + @javax.persistence.Column(name = "LANGUAGE_ID") + public java.lang.Object getLanguageId() { + return getValue(org.jooq.test.oracle.generatedclasses.test.tables.VIncomplete.V_INCOMPLETE.LANGUAGE_ID); + } + + /** + * An uncommented item + * + * The SQL type of this item (UNDEFINED) could not be mapped.
+ * Deserialising this field might not work! + */ + public void setContentText(java.lang.Object value) { + setValue(org.jooq.test.oracle.generatedclasses.test.tables.VIncomplete.V_INCOMPLETE.CONTENT_TEXT, value); + } + + /** + * An uncommented item + * + * The SQL type of this item (UNDEFINED) could not be mapped.
+ * Deserialising this field might not work! + */ + @javax.persistence.Column(name = "CONTENT_TEXT") + public java.lang.Object getContentText() { + return getValue(org.jooq.test.oracle.generatedclasses.test.tables.VIncomplete.V_INCOMPLETE.CONTENT_TEXT); + } + + /** + * An uncommented item + * + * The SQL type of this item (UNDEFINED) could not be mapped.
+ * Deserialising this field might not work! + */ + public void setContentPdf(java.lang.Object value) { + setValue(org.jooq.test.oracle.generatedclasses.test.tables.VIncomplete.V_INCOMPLETE.CONTENT_PDF, value); + } + + /** + * An uncommented item + * + * The SQL type of this item (UNDEFINED) could not be mapped.
+ * Deserialising this field might not work! + */ + @javax.persistence.Column(name = "CONTENT_PDF") + public java.lang.Object getContentPdf() { + return getValue(org.jooq.test.oracle.generatedclasses.test.tables.VIncomplete.V_INCOMPLETE.CONTENT_PDF); + } + + /** + * Create a detached VIncompleteRecord + */ + public VIncompleteRecord() { + super(org.jooq.test.oracle.generatedclasses.test.tables.VIncomplete.V_INCOMPLETE); + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/tables/records/VLibraryRecord.java b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/tables/records/VLibraryRecord.java new file mode 100644 index 00000000000..5c666c226a7 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/tables/records/VLibraryRecord.java @@ -0,0 +1,51 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle.generatedclasses.test.tables.records; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "V_LIBRARY", schema = "TEST") +public class VLibraryRecord extends org.jooq.impl.TableRecordImpl { + + private static final long serialVersionUID = 400623466; + + /** + * An uncommented item + */ + public void setAuthor(java.lang.String value) { + setValue(org.jooq.test.oracle.generatedclasses.test.tables.VLibrary.V_LIBRARY.AUTHOR, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "AUTHOR", length = 101) + public java.lang.String getAuthor() { + return getValue(org.jooq.test.oracle.generatedclasses.test.tables.VLibrary.V_LIBRARY.AUTHOR); + } + + /** + * An uncommented item + */ + public void setTitle(java.lang.String value) { + setValue(org.jooq.test.oracle.generatedclasses.test.tables.VLibrary.V_LIBRARY.TITLE, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "TITLE", nullable = false, length = 400) + public java.lang.String getTitle() { + return getValue(org.jooq.test.oracle.generatedclasses.test.tables.VLibrary.V_LIBRARY.TITLE); + } + + /** + * Create a detached VLibraryRecord + */ + public VLibraryRecord() { + super(org.jooq.test.oracle.generatedclasses.test.tables.VLibrary.V_LIBRARY); + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/tables/records/XTestCase_64_69Record.java b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/tables/records/XTestCase_64_69Record.java new file mode 100644 index 00000000000..dfed7b14e9a --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/tables/records/XTestCase_64_69Record.java @@ -0,0 +1,96 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle.generatedclasses.test.tables.records; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "X_TEST_CASE_64_69", schema = "TEST") +public class XTestCase_64_69Record extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = 261624484; + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setId(java.lang.Integer value) { + setValue(org.jooq.test.oracle.generatedclasses.test.tables.XTestCase_64_69.X_TEST_CASE_64_69.ID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + @javax.persistence.Id + @javax.persistence.Column(name = "ID", unique = true, nullable = false, precision = 7) + public java.lang.Integer getId() { + return getValue(org.jooq.test.oracle.generatedclasses.test.tables.XTestCase_64_69.X_TEST_CASE_64_69.ID); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.util.List fetchXTestCase_71List() { + return create() + .selectFrom(org.jooq.test.oracle.generatedclasses.test.tables.XTestCase_71.X_TEST_CASE_71) + .where(org.jooq.test.oracle.generatedclasses.test.tables.XTestCase_71.X_TEST_CASE_71.TEST_CASE_64_69_ID.equal(getValueAsShort(org.jooq.test.oracle.generatedclasses.test.tables.XTestCase_64_69.X_TEST_CASE_64_69.ID))) + .fetch(); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_X_TEST_CASE_64_69A
+	 * FOREIGN KEY (UNUSED_ID)
+	 * REFERENCES TEST.X_UNUSED (ID)
+	 * 
+ */ + public void setUnusedId(java.lang.Integer value) { + setValue(org.jooq.test.oracle.generatedclasses.test.tables.XTestCase_64_69.X_TEST_CASE_64_69.UNUSED_ID, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_X_TEST_CASE_64_69A
+	 * FOREIGN KEY (UNUSED_ID)
+	 * REFERENCES TEST.X_UNUSED (ID)
+	 * 
+ */ + @javax.persistence.Column(name = "UNUSED_ID", precision = 7) + public java.lang.Integer getUnusedId() { + return getValue(org.jooq.test.oracle.generatedclasses.test.tables.XTestCase_64_69.X_TEST_CASE_64_69.UNUSED_ID); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_X_TEST_CASE_64_69A
+	 * FOREIGN KEY (UNUSED_ID)
+	 * REFERENCES TEST.X_UNUSED (ID)
+	 * 
+ */ + public org.jooq.test.oracle.generatedclasses.test.tables.records.XUnusedRecord fetchXUnused() { + return create() + .selectFrom(org.jooq.test.oracle.generatedclasses.test.tables.XUnused.X_UNUSED) + .where(org.jooq.test.oracle.generatedclasses.test.tables.XUnused.X_UNUSED.ID.equal(getValue(org.jooq.test.oracle.generatedclasses.test.tables.XTestCase_64_69.X_TEST_CASE_64_69.UNUSED_ID))) + .fetchOne(); + } + + /** + * Create a detached XTestCase_64_69Record + */ + public XTestCase_64_69Record() { + super(org.jooq.test.oracle.generatedclasses.test.tables.XTestCase_64_69.X_TEST_CASE_64_69); + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/tables/records/XTestCase_71Record.java b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/tables/records/XTestCase_71Record.java new file mode 100644 index 00000000000..62c43ba16b8 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/tables/records/XTestCase_71Record.java @@ -0,0 +1,84 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle.generatedclasses.test.tables.records; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "X_TEST_CASE_71", schema = "TEST") +public class XTestCase_71Record extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = 973509087; + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setId(java.lang.Integer value) { + setValue(org.jooq.test.oracle.generatedclasses.test.tables.XTestCase_71.X_TEST_CASE_71.ID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + @javax.persistence.Id + @javax.persistence.Column(name = "ID", unique = true, nullable = false, precision = 7) + public java.lang.Integer getId() { + return getValue(org.jooq.test.oracle.generatedclasses.test.tables.XTestCase_71.X_TEST_CASE_71.ID); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_X_TEST_CASE_71
+	 * FOREIGN KEY (TEST_CASE_64_69_ID)
+	 * REFERENCES TEST.X_TEST_CASE_64_69 (ID)
+	 * 
+ */ + public void setTestCase_64_69Id(java.lang.Short value) { + setValue(org.jooq.test.oracle.generatedclasses.test.tables.XTestCase_71.X_TEST_CASE_71.TEST_CASE_64_69_ID, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_X_TEST_CASE_71
+	 * FOREIGN KEY (TEST_CASE_64_69_ID)
+	 * REFERENCES TEST.X_TEST_CASE_64_69 (ID)
+	 * 
+ */ + @javax.persistence.Column(name = "TEST_CASE_64_69_ID", precision = 4) + public java.lang.Short getTestCase_64_69Id() { + return getValue(org.jooq.test.oracle.generatedclasses.test.tables.XTestCase_71.X_TEST_CASE_71.TEST_CASE_64_69_ID); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_X_TEST_CASE_71
+	 * FOREIGN KEY (TEST_CASE_64_69_ID)
+	 * REFERENCES TEST.X_TEST_CASE_64_69 (ID)
+	 * 
+ */ + public org.jooq.test.oracle.generatedclasses.test.tables.records.XTestCase_64_69Record fetchXTestCase_64_69() { + return create() + .selectFrom(org.jooq.test.oracle.generatedclasses.test.tables.XTestCase_64_69.X_TEST_CASE_64_69) + .where(org.jooq.test.oracle.generatedclasses.test.tables.XTestCase_64_69.X_TEST_CASE_64_69.ID.equal(getValueAsInteger(org.jooq.test.oracle.generatedclasses.test.tables.XTestCase_71.X_TEST_CASE_71.TEST_CASE_64_69_ID))) + .fetchOne(); + } + + /** + * Create a detached XTestCase_71Record + */ + public XTestCase_71Record() { + super(org.jooq.test.oracle.generatedclasses.test.tables.XTestCase_71.X_TEST_CASE_71); + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/tables/records/XTestCase_85Record.java b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/tables/records/XTestCase_85Record.java new file mode 100644 index 00000000000..7b503b5c1ec --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/tables/records/XTestCase_85Record.java @@ -0,0 +1,112 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle.generatedclasses.test.tables.records; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "X_TEST_CASE_85", schema = "TEST") +public class XTestCase_85Record extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = -1650112656; + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setId(java.lang.Integer value) { + setValue(org.jooq.test.oracle.generatedclasses.test.tables.XTestCase_85.X_TEST_CASE_85.ID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + @javax.persistence.Id + @javax.persistence.Column(name = "ID", unique = true, nullable = false, precision = 7) + public java.lang.Integer getId() { + return getValue(org.jooq.test.oracle.generatedclasses.test.tables.XTestCase_85.X_TEST_CASE_85.ID); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_X_TEST_CASE_85
+	 * FOREIGN KEY (X_UNUSED_ID, X_UNUSED_NAME)
+	 * REFERENCES TEST.X_UNUSED (ID, NAME)
+	 * 
+ */ + public void setXUnusedId(java.lang.Integer value) { + setValue(org.jooq.test.oracle.generatedclasses.test.tables.XTestCase_85.X_TEST_CASE_85.X_UNUSED_ID, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_X_TEST_CASE_85
+	 * FOREIGN KEY (X_UNUSED_ID, X_UNUSED_NAME)
+	 * REFERENCES TEST.X_UNUSED (ID, NAME)
+	 * 
+ */ + @javax.persistence.Column(name = "X_UNUSED_ID", precision = 7) + public java.lang.Integer getXUnusedId() { + return getValue(org.jooq.test.oracle.generatedclasses.test.tables.XTestCase_85.X_TEST_CASE_85.X_UNUSED_ID); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_X_TEST_CASE_85
+	 * FOREIGN KEY (X_UNUSED_ID, X_UNUSED_NAME)
+	 * REFERENCES TEST.X_UNUSED (ID, NAME)
+	 * 
+ */ + public org.jooq.test.oracle.generatedclasses.test.tables.records.XUnusedRecord fetchXUnused() { + return create() + .selectFrom(org.jooq.test.oracle.generatedclasses.test.tables.XUnused.X_UNUSED) + .where(org.jooq.test.oracle.generatedclasses.test.tables.XUnused.X_UNUSED.ID.equal(getValue(org.jooq.test.oracle.generatedclasses.test.tables.XTestCase_85.X_TEST_CASE_85.X_UNUSED_ID))) + .and(org.jooq.test.oracle.generatedclasses.test.tables.XUnused.X_UNUSED.NAME.equal(getValue(org.jooq.test.oracle.generatedclasses.test.tables.XTestCase_85.X_TEST_CASE_85.X_UNUSED_NAME))) + .fetchOne(); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_X_TEST_CASE_85
+	 * FOREIGN KEY (X_UNUSED_ID, X_UNUSED_NAME)
+	 * REFERENCES TEST.X_UNUSED (ID, NAME)
+	 * 
+ */ + public void setXUnusedName(java.lang.String value) { + setValue(org.jooq.test.oracle.generatedclasses.test.tables.XTestCase_85.X_TEST_CASE_85.X_UNUSED_NAME, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_X_TEST_CASE_85
+	 * FOREIGN KEY (X_UNUSED_ID, X_UNUSED_NAME)
+	 * REFERENCES TEST.X_UNUSED (ID, NAME)
+	 * 
+ */ + @javax.persistence.Column(name = "X_UNUSED_NAME", length = 10) + public java.lang.String getXUnusedName() { + return getValue(org.jooq.test.oracle.generatedclasses.test.tables.XTestCase_85.X_TEST_CASE_85.X_UNUSED_NAME); + } + + /** + * Create a detached XTestCase_85Record + */ + public XTestCase_85Record() { + super(org.jooq.test.oracle.generatedclasses.test.tables.XTestCase_85.X_TEST_CASE_85); + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/tables/records/XUnusedRecord.java b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/tables/records/XUnusedRecord.java new file mode 100644 index 00000000000..d1268c38502 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/tables/records/XUnusedRecord.java @@ -0,0 +1,352 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle.generatedclasses.test.tables.records; + +/** + * This class is generated by jOOQ. + * + * An unused table in the same schema. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "X_UNUSED", schema = "TEST", uniqueConstraints = { + @javax.persistence.UniqueConstraint(columnNames = {"ID", "NAME"}) +}) +public class XUnusedRecord extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = 743386653; + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setId(java.lang.Integer value) { + setValue(org.jooq.test.oracle.generatedclasses.test.tables.XUnused.X_UNUSED.ID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + @javax.persistence.Column(name = "ID", unique = true, nullable = false, precision = 7) + public java.lang.Integer getId() { + return getValue(org.jooq.test.oracle.generatedclasses.test.tables.XUnused.X_UNUSED.ID); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.util.List fetchXTestCase_85List() { + return create() + .selectFrom(org.jooq.test.oracle.generatedclasses.test.tables.XTestCase_85.X_TEST_CASE_85) + .where(org.jooq.test.oracle.generatedclasses.test.tables.XTestCase_85.X_TEST_CASE_85.X_UNUSED_ID.equal(getValue(org.jooq.test.oracle.generatedclasses.test.tables.XUnused.X_UNUSED.ID))) + .and(org.jooq.test.oracle.generatedclasses.test.tables.XTestCase_85.X_TEST_CASE_85.X_UNUSED_NAME.equal(getValue(org.jooq.test.oracle.generatedclasses.test.tables.XUnused.X_UNUSED.NAME))) + .fetch(); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.util.List fetchXUnusedList() { + return create() + .selectFrom(org.jooq.test.oracle.generatedclasses.test.tables.XUnused.X_UNUSED) + .where(org.jooq.test.oracle.generatedclasses.test.tables.XUnused.X_UNUSED.ID_REF.equal(getValue(org.jooq.test.oracle.generatedclasses.test.tables.XUnused.X_UNUSED.ID))) + .and(org.jooq.test.oracle.generatedclasses.test.tables.XUnused.X_UNUSED.NAME_REF.equal(getValue(org.jooq.test.oracle.generatedclasses.test.tables.XUnused.X_UNUSED.NAME))) + .fetch(); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.util.List fetchXTestCase_64_69List() { + return create() + .selectFrom(org.jooq.test.oracle.generatedclasses.test.tables.XTestCase_64_69.X_TEST_CASE_64_69) + .where(org.jooq.test.oracle.generatedclasses.test.tables.XTestCase_64_69.X_TEST_CASE_64_69.UNUSED_ID.equal(getValue(org.jooq.test.oracle.generatedclasses.test.tables.XUnused.X_UNUSED.ID))) + .fetch(); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setName(java.lang.String value) { + setValue(org.jooq.test.oracle.generatedclasses.test.tables.XUnused.X_UNUSED.NAME, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + @javax.persistence.Column(name = "NAME", nullable = false, length = 10) + public java.lang.String getName() { + return getValue(org.jooq.test.oracle.generatedclasses.test.tables.XUnused.X_UNUSED.NAME); + } + + /** + * An uncommented item + */ + public void setBigInteger(java.math.BigInteger value) { + setValue(org.jooq.test.oracle.generatedclasses.test.tables.XUnused.X_UNUSED.BIG_INTEGER, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "BIG_INTEGER", precision = 38) + public java.math.BigInteger getBigInteger() { + return getValue(org.jooq.test.oracle.generatedclasses.test.tables.XUnused.X_UNUSED.BIG_INTEGER); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_X_UNUSED_SELF
+	 * FOREIGN KEY (ID_REF, NAME_REF)
+	 * REFERENCES TEST.X_UNUSED (ID, NAME)
+	 * 
+ */ + public void setIdRef(java.lang.Integer value) { + setValue(org.jooq.test.oracle.generatedclasses.test.tables.XUnused.X_UNUSED.ID_REF, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_X_UNUSED_SELF
+	 * FOREIGN KEY (ID_REF, NAME_REF)
+	 * REFERENCES TEST.X_UNUSED (ID, NAME)
+	 * 
+ */ + @javax.persistence.Column(name = "ID_REF", precision = 7) + public java.lang.Integer getIdRef() { + return getValue(org.jooq.test.oracle.generatedclasses.test.tables.XUnused.X_UNUSED.ID_REF); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_X_UNUSED_SELF
+	 * FOREIGN KEY (ID_REF, NAME_REF)
+	 * REFERENCES TEST.X_UNUSED (ID, NAME)
+	 * 
+ */ + public org.jooq.test.oracle.generatedclasses.test.tables.records.XUnusedRecord fetchXUnused() { + return create() + .selectFrom(org.jooq.test.oracle.generatedclasses.test.tables.XUnused.X_UNUSED) + .where(org.jooq.test.oracle.generatedclasses.test.tables.XUnused.X_UNUSED.ID.equal(getValue(org.jooq.test.oracle.generatedclasses.test.tables.XUnused.X_UNUSED.ID_REF))) + .and(org.jooq.test.oracle.generatedclasses.test.tables.XUnused.X_UNUSED.NAME.equal(getValue(org.jooq.test.oracle.generatedclasses.test.tables.XUnused.X_UNUSED.NAME_REF))) + .fetchOne(); + } + + /** + * An uncommented item + */ + public void setClass_(java.lang.Integer value) { + setValue(org.jooq.test.oracle.generatedclasses.test.tables.XUnused.X_UNUSED.CLASS, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "CLASS", precision = 7) + public java.lang.Integer getClass_() { + return getValue(org.jooq.test.oracle.generatedclasses.test.tables.XUnused.X_UNUSED.CLASS); + } + + /** + * An uncommented item + */ + public void setFields_(java.lang.Integer value) { + setValue(org.jooq.test.oracle.generatedclasses.test.tables.XUnused.X_UNUSED.FIELDS, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "FIELDS", precision = 7) + public java.lang.Integer getFields_() { + return getValue(org.jooq.test.oracle.generatedclasses.test.tables.XUnused.X_UNUSED.FIELDS); + } + + /** + * An uncommented item + */ + public void setConfiguration_(java.lang.Integer value) { + setValue(org.jooq.test.oracle.generatedclasses.test.tables.XUnused.X_UNUSED.CONFIGURATION, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "CONFIGURATION", precision = 7) + public java.lang.Integer getConfiguration_() { + return getValue(org.jooq.test.oracle.generatedclasses.test.tables.XUnused.X_UNUSED.CONFIGURATION); + } + + /** + * An uncommented item + */ + public void setUDT(java.lang.Integer value) { + setValue(org.jooq.test.oracle.generatedclasses.test.tables.XUnused.X_UNUSED.U_D_T, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "U_D_T", precision = 7) + public java.lang.Integer getUDT() { + return getValue(org.jooq.test.oracle.generatedclasses.test.tables.XUnused.X_UNUSED.U_D_T); + } + + /** + * An uncommented item + */ + public void setMetaData_(java.lang.Integer value) { + setValue(org.jooq.test.oracle.generatedclasses.test.tables.XUnused.X_UNUSED.META_DATA, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "META_DATA", precision = 7) + public java.lang.Integer getMetaData_() { + return getValue(org.jooq.test.oracle.generatedclasses.test.tables.XUnused.X_UNUSED.META_DATA); + } + + /** + * An uncommented item + */ + public void setType0_(java.lang.Integer value) { + setValue(org.jooq.test.oracle.generatedclasses.test.tables.XUnused.X_UNUSED.TYPE0, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "TYPE0", precision = 7) + public java.lang.Integer getType0_() { + return getValue(org.jooq.test.oracle.generatedclasses.test.tables.XUnused.X_UNUSED.TYPE0); + } + + /** + * An uncommented item + */ + public void setPrimaryKey(java.lang.Integer value) { + setValue(org.jooq.test.oracle.generatedclasses.test.tables.XUnused.X_UNUSED.PRIMARY_KEY, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "PRIMARY_KEY", precision = 7) + public java.lang.Integer getPrimaryKey() { + return getValue(org.jooq.test.oracle.generatedclasses.test.tables.XUnused.X_UNUSED.PRIMARY_KEY); + } + + /** + * An uncommented item + */ + public void setPrimarykey(java.lang.Integer value) { + setValue(org.jooq.test.oracle.generatedclasses.test.tables.XUnused.X_UNUSED.PRIMARYKEY, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "PRIMARYKEY", precision = 7) + public java.lang.Integer getPrimarykey() { + return getValue(org.jooq.test.oracle.generatedclasses.test.tables.XUnused.X_UNUSED.PRIMARYKEY); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_X_UNUSED_SELF
+	 * FOREIGN KEY (ID_REF, NAME_REF)
+	 * REFERENCES TEST.X_UNUSED (ID, NAME)
+	 * 
+ */ + public void setNameRef(java.lang.String value) { + setValue(org.jooq.test.oracle.generatedclasses.test.tables.XUnused.X_UNUSED.NAME_REF, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_X_UNUSED_SELF
+	 * FOREIGN KEY (ID_REF, NAME_REF)
+	 * REFERENCES TEST.X_UNUSED (ID, NAME)
+	 * 
+ */ + @javax.persistence.Column(name = "NAME_REF", length = 10) + public java.lang.String getNameRef() { + return getValue(org.jooq.test.oracle.generatedclasses.test.tables.XUnused.X_UNUSED.NAME_REF); + } + + /** + * An uncommented item + */ + public void setField_737(java.math.BigDecimal value) { + setValue(org.jooq.test.oracle.generatedclasses.test.tables.XUnused.X_UNUSED.FIELD_737, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "FIELD 737", precision = 25, scale = 2) + public java.math.BigDecimal getField_737() { + return getValue(org.jooq.test.oracle.generatedclasses.test.tables.XUnused.X_UNUSED.FIELD_737); + } + + /** + * An uncommented item + */ + public void setMsUnusedIdRef(java.lang.Integer value) { + setValue(org.jooq.test.oracle.generatedclasses.test.tables.XUnused.X_UNUSED.MS_UNUSED_ID_REF, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "MS_UNUSED_ID_REF", precision = 7) + public java.lang.Integer getMsUnusedIdRef() { + return getValue(org.jooq.test.oracle.generatedclasses.test.tables.XUnused.X_UNUSED.MS_UNUSED_ID_REF); + } + + /** + * An uncommented item + */ + public void setMsUnusedNameRef(java.lang.String value) { + setValue(org.jooq.test.oracle.generatedclasses.test.tables.XUnused.X_UNUSED.MS_UNUSED_NAME_REF, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "MS_UNUSED_NAME_REF", length = 10) + public java.lang.String getMsUnusedNameRef() { + return getValue(org.jooq.test.oracle.generatedclasses.test.tables.XUnused.X_UNUSED.MS_UNUSED_NAME_REF); + } + + /** + * Create a detached XUnusedRecord + */ + public XUnusedRecord() { + super(org.jooq.test.oracle.generatedclasses.test.tables.XUnused.X_UNUSED); + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/udt/OInvalidType.java b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/udt/OInvalidType.java new file mode 100644 index 00000000000..13d4816b035 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/udt/OInvalidType.java @@ -0,0 +1,37 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle.generatedclasses.test.udt; + +/** + * This class is generated by jOOQ. + */ +public class OInvalidType extends org.jooq.impl.UDTImpl { + + private static final long serialVersionUID = -1986558646; + + /** + * The singleton instance of TEST.O_INVALID_TYPE + */ + public static final org.jooq.test.oracle.generatedclasses.test.udt.OInvalidType O_INVALID_TYPE = new org.jooq.test.oracle.generatedclasses.test.udt.OInvalidType(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.oracle.generatedclasses.test.udt.records.OInvalidTypeRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * No further instances allowed + */ + private OInvalidType() { + super("O_INVALID_TYPE", org.jooq.test.oracle.generatedclasses.test.Test.TEST); + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/udt/UAddressType.java b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/udt/UAddressType.java new file mode 100644 index 00000000000..c47293b6d66 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/udt/UAddressType.java @@ -0,0 +1,67 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle.generatedclasses.test.udt; + +/** + * This class is generated by jOOQ. + */ +public class UAddressType extends org.jooq.impl.UDTImpl { + + private static final long serialVersionUID = 781413964; + + /** + * The singleton instance of TEST.U_ADDRESS_TYPE + */ + public static final org.jooq.test.oracle.generatedclasses.test.udt.UAddressType U_ADDRESS_TYPE = new org.jooq.test.oracle.generatedclasses.test.udt.UAddressType(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.oracle.generatedclasses.test.udt.records.UAddressTypeRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + */ + public static final org.jooq.UDTField STREET = createField("STREET", org.jooq.test.oracle.generatedclasses.test.udt.UStreetType.U_STREET_TYPE.getDataType(), U_ADDRESS_TYPE); + + /** + * An uncommented item + */ + public static final org.jooq.UDTField ZIP = createField("ZIP", org.jooq.impl.SQLDataType.VARCHAR, U_ADDRESS_TYPE); + + /** + * An uncommented item + */ + public static final org.jooq.UDTField CITY = createField("CITY", org.jooq.impl.SQLDataType.VARCHAR, U_ADDRESS_TYPE); + + /** + * An uncommented item + */ + public static final org.jooq.UDTField COUNTRY = createField("COUNTRY", org.jooq.impl.SQLDataType.VARCHAR, U_ADDRESS_TYPE); + + /** + * An uncommented item + */ + public static final org.jooq.UDTField SINCE = createField("SINCE", org.jooq.impl.SQLDataType.DATE, U_ADDRESS_TYPE); + + /** + * An uncommented item + */ + public static final org.jooq.UDTField CODE = createField("CODE", org.jooq.impl.SQLDataType.INTEGER, U_ADDRESS_TYPE); + + /** + * No further instances allowed + */ + private UAddressType() { + super("U_ADDRESS_TYPE", org.jooq.test.oracle.generatedclasses.test.Test.TEST); + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/udt/UAuthorType.java b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/udt/UAuthorType.java new file mode 100644 index 00000000000..4b4c94adb3a --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/udt/UAuthorType.java @@ -0,0 +1,121 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle.generatedclasses.test.udt; + +/** + * This class is generated by jOOQ. + */ +public class UAuthorType extends org.jooq.impl.UDTImpl implements org.jooq.Package { + + private static final long serialVersionUID = -703790379; + + /** + * The singleton instance of TEST.U_AUTHOR_TYPE + */ + public static final org.jooq.test.oracle.generatedclasses.test.udt.UAuthorType U_AUTHOR_TYPE = new org.jooq.test.oracle.generatedclasses.test.udt.UAuthorType(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.oracle.generatedclasses.test.udt.records.UAuthorTypeRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + */ + public static final org.jooq.UDTField ID = createField("ID", org.jooq.impl.SQLDataType.INTEGER, U_AUTHOR_TYPE); + + /** + * An uncommented item + */ + public static final org.jooq.UDTField FIRST_NAME = createField("FIRST_NAME", org.jooq.impl.SQLDataType.VARCHAR, U_AUTHOR_TYPE); + + /** + * An uncommented item + */ + public static final org.jooq.UDTField LAST_NAME = createField("LAST_NAME", org.jooq.impl.SQLDataType.VARCHAR, U_AUTHOR_TYPE); + + /** + * Call TEST.U_AUTHOR_TYPE.COUNT_BOOKS + * + * @param self + * @throws org.jooq.exception.DataAccessException if something went wrong executing the query + */ + public static java.math.BigDecimal countBooks(org.jooq.Configuration configuration, org.jooq.test.oracle.generatedclasses.test.udt.records.UAuthorTypeRecord self) { + org.jooq.test.oracle.generatedclasses.test.udt.u_author_type.CountBooks f = new org.jooq.test.oracle.generatedclasses.test.udt.u_author_type.CountBooks(); + f.setSelf(self); + + f.execute(configuration); + return f.getReturnValue(); + } + + /** + * Get TEST.U_AUTHOR_TYPE.COUNT_BOOKS as a field + * + * @param self + */ + public static org.jooq.Field countBooks(org.jooq.test.oracle.generatedclasses.test.udt.records.UAuthorTypeRecord self) { + org.jooq.test.oracle.generatedclasses.test.udt.u_author_type.CountBooks f = new org.jooq.test.oracle.generatedclasses.test.udt.u_author_type.CountBooks(); + f.setSelf(self); + + return f.asField(); + } + + /** + * Get TEST.U_AUTHOR_TYPE.COUNT_BOOKS as a field + * + * @param self + */ + public static org.jooq.Field countBooks(org.jooq.Field self) { + org.jooq.test.oracle.generatedclasses.test.udt.u_author_type.CountBooks f = new org.jooq.test.oracle.generatedclasses.test.udt.u_author_type.CountBooks(); + f.setSelf(self); + + return f.asField(); + } + + /** + * Call TEST.U_AUTHOR_TYPE.GET_BOOKS + * + * @param self IN OUT parameter + * @param book1 OUT parameter + * @param book2 OUT parameter + * @param books OUT parameter + * @throws org.jooq.exception.DataAccessException if something went wrong executing the query + */ + public static org.jooq.test.oracle.generatedclasses.test.udt.u_author_type.GetBooks getBooks(org.jooq.Configuration configuration, org.jooq.test.oracle.generatedclasses.test.udt.records.UAuthorTypeRecord self) { + org.jooq.test.oracle.generatedclasses.test.udt.u_author_type.GetBooks p = new org.jooq.test.oracle.generatedclasses.test.udt.u_author_type.GetBooks(); + p.setSelf(self); + + p.execute(configuration); + return p; + } + + /** + * Call TEST.U_AUTHOR_TYPE.LOAD + * + * @param self IN OUT parameter + * @throws org.jooq.exception.DataAccessException if something went wrong executing the query + */ + public static org.jooq.test.oracle.generatedclasses.test.udt.records.UAuthorTypeRecord load(org.jooq.Configuration configuration, org.jooq.test.oracle.generatedclasses.test.udt.records.UAuthorTypeRecord self) { + org.jooq.test.oracle.generatedclasses.test.udt.u_author_type.Load p = new org.jooq.test.oracle.generatedclasses.test.udt.u_author_type.Load(); + p.setSelf(self); + + p.execute(configuration); + return p.getSelf(); + } + + /** + * No further instances allowed + */ + private UAuthorType() { + super("U_AUTHOR_TYPE", org.jooq.test.oracle.generatedclasses.test.Test.TEST); + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/udt/UBookType.java b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/udt/UBookType.java new file mode 100644 index 00000000000..279a6f22dac --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/udt/UBookType.java @@ -0,0 +1,47 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle.generatedclasses.test.udt; + +/** + * This class is generated by jOOQ. + */ +public class UBookType extends org.jooq.impl.UDTImpl { + + private static final long serialVersionUID = -233352372; + + /** + * The singleton instance of TEST.U_BOOK_TYPE + */ + public static final org.jooq.test.oracle.generatedclasses.test.udt.UBookType U_BOOK_TYPE = new org.jooq.test.oracle.generatedclasses.test.udt.UBookType(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.oracle.generatedclasses.test.udt.records.UBookTypeRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + */ + public static final org.jooq.UDTField ID = createField("ID", org.jooq.impl.SQLDataType.INTEGER, U_BOOK_TYPE); + + /** + * An uncommented item + */ + public static final org.jooq.UDTField TITLE = createField("TITLE", org.jooq.impl.SQLDataType.VARCHAR, U_BOOK_TYPE); + + /** + * No further instances allowed + */ + private UBookType() { + super("U_BOOK_TYPE", org.jooq.test.oracle.generatedclasses.test.Test.TEST); + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/udt/UInvalidTable.java b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/udt/UInvalidTable.java new file mode 100644 index 00000000000..4b1537ed9c0 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/udt/UInvalidTable.java @@ -0,0 +1,37 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle.generatedclasses.test.udt; + +/** + * This class is generated by jOOQ. + */ +public class UInvalidTable extends org.jooq.impl.UDTImpl { + + private static final long serialVersionUID = -1097523452; + + /** + * The singleton instance of TEST.U_INVALID_TABLE + */ + public static final org.jooq.test.oracle.generatedclasses.test.udt.UInvalidTable U_INVALID_TABLE = new org.jooq.test.oracle.generatedclasses.test.udt.UInvalidTable(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.oracle.generatedclasses.test.udt.records.UInvalidTableRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * No further instances allowed + */ + private UInvalidTable() { + super("U_INVALID_TABLE", org.jooq.test.oracle.generatedclasses.test.Test.TEST); + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/udt/UInvalidType.java b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/udt/UInvalidType.java new file mode 100644 index 00000000000..5033c987aac --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/udt/UInvalidType.java @@ -0,0 +1,37 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle.generatedclasses.test.udt; + +/** + * This class is generated by jOOQ. + */ +public class UInvalidType extends org.jooq.impl.UDTImpl { + + private static final long serialVersionUID = -1194068720; + + /** + * The singleton instance of TEST.U_INVALID_TYPE + */ + public static final org.jooq.test.oracle.generatedclasses.test.udt.UInvalidType U_INVALID_TYPE = new org.jooq.test.oracle.generatedclasses.test.udt.UInvalidType(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.oracle.generatedclasses.test.udt.records.UInvalidTypeRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * No further instances allowed + */ + private UInvalidType() { + super("U_INVALID_TYPE", org.jooq.test.oracle.generatedclasses.test.Test.TEST); + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/udt/UStreetType.java b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/udt/UStreetType.java new file mode 100644 index 00000000000..bdd3341703b --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/udt/UStreetType.java @@ -0,0 +1,52 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle.generatedclasses.test.udt; + +/** + * This class is generated by jOOQ. + */ +public class UStreetType extends org.jooq.impl.UDTImpl { + + private static final long serialVersionUID = -1903797174; + + /** + * The singleton instance of TEST.U_STREET_TYPE + */ + public static final org.jooq.test.oracle.generatedclasses.test.udt.UStreetType U_STREET_TYPE = new org.jooq.test.oracle.generatedclasses.test.udt.UStreetType(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.oracle.generatedclasses.test.udt.records.UStreetTypeRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + */ + public static final org.jooq.UDTField STREET = createField("STREET", org.jooq.impl.SQLDataType.VARCHAR, U_STREET_TYPE); + + /** + * An uncommented item + */ + public static final org.jooq.UDTField NO = createField("NO", org.jooq.impl.SQLDataType.VARCHAR, U_STREET_TYPE); + + /** + * An uncommented item + */ + public static final org.jooq.UDTField FLOORS = createField("FLOORS", org.jooq.impl.SQLDataType.INTEGER.asArrayDataType(org.jooq.test.oracle.generatedclasses.test.udt.records.UNumberArrayRecord.class), U_STREET_TYPE); + + /** + * No further instances allowed + */ + private UStreetType() { + super("U_STREET_TYPE", org.jooq.test.oracle.generatedclasses.test.Test.TEST); + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/udt/records/OInvalidTypeRecord.java b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/udt/records/OInvalidTypeRecord.java new file mode 100644 index 00000000000..c9140eb1ce2 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/udt/records/OInvalidTypeRecord.java @@ -0,0 +1,17 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle.generatedclasses.test.udt.records; + +/** + * This class is generated by jOOQ. + */ +public class OInvalidTypeRecord extends org.jooq.impl.UDTRecordImpl { + + private static final long serialVersionUID = -1666367327; + + + public OInvalidTypeRecord() { + super(org.jooq.test.oracle.generatedclasses.test.udt.OInvalidType.O_INVALID_TYPE); + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/udt/records/UAddressTableRecord.java b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/udt/records/UAddressTableRecord.java new file mode 100644 index 00000000000..0b67efda964 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/udt/records/UAddressTableRecord.java @@ -0,0 +1,26 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle.generatedclasses.test.udt.records; + +/** + * This class is generated by jOOQ. + */ +public class UAddressTableRecord extends org.jooq.impl.ArrayRecordImpl { + + private static final long serialVersionUID = -1512459535; + + public UAddressTableRecord(org.jooq.Configuration configuration) { + super(org.jooq.test.oracle.generatedclasses.test.Test.TEST, "U_ADDRESS_TABLE", org.jooq.test.oracle.generatedclasses.test.udt.UAddressType.U_ADDRESS_TYPE.getDataType(), configuration); + } + + public UAddressTableRecord(org.jooq.Configuration configuration, org.jooq.test.oracle.generatedclasses.test.udt.records.UAddressTypeRecord... array) { + this(configuration); + set(array); + } + + public UAddressTableRecord(org.jooq.Configuration configuration, java.util.List list) { + this(configuration); + setList(list); + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/udt/records/UAddressTypeRecord.java b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/udt/records/UAddressTypeRecord.java new file mode 100644 index 00000000000..cb40b887371 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/udt/records/UAddressTypeRecord.java @@ -0,0 +1,101 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle.generatedclasses.test.udt.records; + +/** + * This class is generated by jOOQ. + */ +public class UAddressTypeRecord extends org.jooq.impl.UDTRecordImpl { + + private static final long serialVersionUID = 159216626; + + + /** + * An uncommented item + */ + public void setStreet(org.jooq.test.oracle.generatedclasses.test.udt.records.UStreetTypeRecord value) { + setValue(org.jooq.test.oracle.generatedclasses.test.udt.UAddressType.STREET, value); + } + + /** + * An uncommented item + */ + public org.jooq.test.oracle.generatedclasses.test.udt.records.UStreetTypeRecord getStreet() { + return getValue(org.jooq.test.oracle.generatedclasses.test.udt.UAddressType.STREET); + } + + /** + * An uncommented item + */ + public void setZip(java.lang.String value) { + setValue(org.jooq.test.oracle.generatedclasses.test.udt.UAddressType.ZIP, value); + } + + /** + * An uncommented item + */ + public java.lang.String getZip() { + return getValue(org.jooq.test.oracle.generatedclasses.test.udt.UAddressType.ZIP); + } + + /** + * An uncommented item + */ + public void setCity(java.lang.String value) { + setValue(org.jooq.test.oracle.generatedclasses.test.udt.UAddressType.CITY, value); + } + + /** + * An uncommented item + */ + public java.lang.String getCity() { + return getValue(org.jooq.test.oracle.generatedclasses.test.udt.UAddressType.CITY); + } + + /** + * An uncommented item + */ + public void setCountry(java.lang.String value) { + setValue(org.jooq.test.oracle.generatedclasses.test.udt.UAddressType.COUNTRY, value); + } + + /** + * An uncommented item + */ + public java.lang.String getCountry() { + return getValue(org.jooq.test.oracle.generatedclasses.test.udt.UAddressType.COUNTRY); + } + + /** + * An uncommented item + */ + public void setSince(java.sql.Date value) { + setValue(org.jooq.test.oracle.generatedclasses.test.udt.UAddressType.SINCE, value); + } + + /** + * An uncommented item + */ + public java.sql.Date getSince() { + return getValue(org.jooq.test.oracle.generatedclasses.test.udt.UAddressType.SINCE); + } + + /** + * An uncommented item + */ + public void setCode(java.lang.Integer value) { + setValue(org.jooq.test.oracle.generatedclasses.test.udt.UAddressType.CODE, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getCode() { + return getValue(org.jooq.test.oracle.generatedclasses.test.udt.UAddressType.CODE); + } + + public UAddressTypeRecord() { + super(org.jooq.test.oracle.generatedclasses.test.udt.UAddressType.U_ADDRESS_TYPE); + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/udt/records/UAuthorTypeRecord.java b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/udt/records/UAuthorTypeRecord.java new file mode 100644 index 00000000000..bb977b69d88 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/udt/records/UAuthorTypeRecord.java @@ -0,0 +1,106 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle.generatedclasses.test.udt.records; + +/** + * This class is generated by jOOQ. + */ +public class UAuthorTypeRecord extends org.jooq.impl.UDTRecordImpl { + + private static final long serialVersionUID = 1548726640; + + + /** + * An uncommented item + */ + public void setId(java.lang.Integer value) { + setValue(org.jooq.test.oracle.generatedclasses.test.udt.UAuthorType.ID, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getId() { + return getValue(org.jooq.test.oracle.generatedclasses.test.udt.UAuthorType.ID); + } + + /** + * An uncommented item + */ + public void setFirstName(java.lang.String value) { + setValue(org.jooq.test.oracle.generatedclasses.test.udt.UAuthorType.FIRST_NAME, value); + } + + /** + * An uncommented item + */ + public java.lang.String getFirstName() { + return getValue(org.jooq.test.oracle.generatedclasses.test.udt.UAuthorType.FIRST_NAME); + } + + /** + * An uncommented item + */ + public void setLastName(java.lang.String value) { + setValue(org.jooq.test.oracle.generatedclasses.test.udt.UAuthorType.LAST_NAME, value); + } + + /** + * An uncommented item + */ + public java.lang.String getLastName() { + return getValue(org.jooq.test.oracle.generatedclasses.test.udt.UAuthorType.LAST_NAME); + } + + /** + * Call TEST.U_AUTHOR_TYPE.COUNT_BOOKS + * + * @param self + * @throws org.jooq.exception.DataAccessException if something went wrong executing the query + */ + public java.math.BigDecimal countBooks() { + org.jooq.test.oracle.generatedclasses.test.udt.u_author_type.CountBooks f = new org.jooq.test.oracle.generatedclasses.test.udt.u_author_type.CountBooks(); + f.setSelf(this); + + f.execute(getConfiguration()); + return f.getReturnValue(); + } + + /** + * Call TEST.U_AUTHOR_TYPE.GET_BOOKS + * + * @param self IN OUT parameter + * @param book1 OUT parameter + * @param book2 OUT parameter + * @param books OUT parameter + * @throws org.jooq.exception.DataAccessException if something went wrong executing the query + */ + public org.jooq.test.oracle.generatedclasses.test.udt.u_author_type.GetBooks getBooks() { + org.jooq.test.oracle.generatedclasses.test.udt.u_author_type.GetBooks p = new org.jooq.test.oracle.generatedclasses.test.udt.u_author_type.GetBooks(); + p.setSelf(this); + + p.execute(getConfiguration()); + from(p.getSelf()); + return p; + } + + /** + * Call TEST.U_AUTHOR_TYPE.LOAD + * + * @param self IN OUT parameter + * @throws org.jooq.exception.DataAccessException if something went wrong executing the query + */ + public org.jooq.test.oracle.generatedclasses.test.udt.records.UAuthorTypeRecord load() { + org.jooq.test.oracle.generatedclasses.test.udt.u_author_type.Load p = new org.jooq.test.oracle.generatedclasses.test.udt.u_author_type.Load(); + p.setSelf(this); + + p.execute(getConfiguration()); + from(p.getSelf()); + return p.getSelf(); + } + + public UAuthorTypeRecord() { + super(org.jooq.test.oracle.generatedclasses.test.udt.UAuthorType.U_AUTHOR_TYPE); + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/udt/records/UBookArrayRecord.java b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/udt/records/UBookArrayRecord.java new file mode 100644 index 00000000000..0c1c3dbd2f4 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/udt/records/UBookArrayRecord.java @@ -0,0 +1,26 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle.generatedclasses.test.udt.records; + +/** + * This class is generated by jOOQ. + */ +public class UBookArrayRecord extends org.jooq.impl.ArrayRecordImpl { + + private static final long serialVersionUID = -1419176202; + + public UBookArrayRecord(org.jooq.Configuration configuration) { + super(org.jooq.test.oracle.generatedclasses.test.Test.TEST, "U_BOOK_ARRAY", org.jooq.test.oracle.generatedclasses.test.udt.UBookType.U_BOOK_TYPE.getDataType(), configuration); + } + + public UBookArrayRecord(org.jooq.Configuration configuration, org.jooq.test.oracle.generatedclasses.test.udt.records.UBookTypeRecord... array) { + this(configuration); + set(array); + } + + public UBookArrayRecord(org.jooq.Configuration configuration, java.util.List list) { + this(configuration); + setList(list); + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/udt/records/UBookTableRecord.java b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/udt/records/UBookTableRecord.java new file mode 100644 index 00000000000..cde21fc79e1 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/udt/records/UBookTableRecord.java @@ -0,0 +1,26 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle.generatedclasses.test.udt.records; + +/** + * This class is generated by jOOQ. + */ +public class UBookTableRecord extends org.jooq.impl.ArrayRecordImpl { + + private static final long serialVersionUID = -1636055519; + + public UBookTableRecord(org.jooq.Configuration configuration) { + super(org.jooq.test.oracle.generatedclasses.test.Test.TEST, "U_BOOK_TABLE", org.jooq.test.oracle.generatedclasses.test.udt.UBookType.U_BOOK_TYPE.getDataType(), configuration); + } + + public UBookTableRecord(org.jooq.Configuration configuration, org.jooq.test.oracle.generatedclasses.test.udt.records.UBookTypeRecord... array) { + this(configuration); + set(array); + } + + public UBookTableRecord(org.jooq.Configuration configuration, java.util.List list) { + this(configuration); + setList(list); + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/udt/records/UBookTypeRecord.java b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/udt/records/UBookTypeRecord.java new file mode 100644 index 00000000000..ccdcb6a2172 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/udt/records/UBookTypeRecord.java @@ -0,0 +1,45 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle.generatedclasses.test.udt.records; + +/** + * This class is generated by jOOQ. + */ +public class UBookTypeRecord extends org.jooq.impl.UDTRecordImpl { + + private static final long serialVersionUID = 1474870513; + + + /** + * An uncommented item + */ + public void setId(java.lang.Integer value) { + setValue(org.jooq.test.oracle.generatedclasses.test.udt.UBookType.ID, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getId() { + return getValue(org.jooq.test.oracle.generatedclasses.test.udt.UBookType.ID); + } + + /** + * An uncommented item + */ + public void setTitle(java.lang.String value) { + setValue(org.jooq.test.oracle.generatedclasses.test.udt.UBookType.TITLE, value); + } + + /** + * An uncommented item + */ + public java.lang.String getTitle() { + return getValue(org.jooq.test.oracle.generatedclasses.test.udt.UBookType.TITLE); + } + + public UBookTypeRecord() { + super(org.jooq.test.oracle.generatedclasses.test.udt.UBookType.U_BOOK_TYPE); + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/udt/records/UDateArrayRecord.java b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/udt/records/UDateArrayRecord.java new file mode 100644 index 00000000000..642ca6f2245 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/udt/records/UDateArrayRecord.java @@ -0,0 +1,26 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle.generatedclasses.test.udt.records; + +/** + * This class is generated by jOOQ. + */ +public class UDateArrayRecord extends org.jooq.impl.ArrayRecordImpl { + + private static final long serialVersionUID = 1034385286; + + public UDateArrayRecord(org.jooq.Configuration configuration) { + super(org.jooq.test.oracle.generatedclasses.test.Test.TEST, "U_DATE_ARRAY", org.jooq.impl.SQLDataType.DATE, configuration); + } + + public UDateArrayRecord(org.jooq.Configuration configuration, java.sql.Date... array) { + this(configuration); + set(array); + } + + public UDateArrayRecord(org.jooq.Configuration configuration, java.util.List list) { + this(configuration); + setList(list); + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/udt/records/UDateTableRecord.java b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/udt/records/UDateTableRecord.java new file mode 100644 index 00000000000..e0bb45c3f9f --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/udt/records/UDateTableRecord.java @@ -0,0 +1,26 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle.generatedclasses.test.udt.records; + +/** + * This class is generated by jOOQ. + */ +public class UDateTableRecord extends org.jooq.impl.ArrayRecordImpl { + + private static final long serialVersionUID = 1846826993; + + public UDateTableRecord(org.jooq.Configuration configuration) { + super(org.jooq.test.oracle.generatedclasses.test.Test.TEST, "U_DATE_TABLE", org.jooq.impl.SQLDataType.DATE, configuration); + } + + public UDateTableRecord(org.jooq.Configuration configuration, java.sql.Date... array) { + this(configuration); + set(array); + } + + public UDateTableRecord(org.jooq.Configuration configuration, java.util.List list) { + this(configuration); + setList(list); + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/udt/records/UInvalidTableRecord.java b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/udt/records/UInvalidTableRecord.java new file mode 100644 index 00000000000..c4d08770508 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/udt/records/UInvalidTableRecord.java @@ -0,0 +1,17 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle.generatedclasses.test.udt.records; + +/** + * This class is generated by jOOQ. + */ +public class UInvalidTableRecord extends org.jooq.impl.UDTRecordImpl { + + private static final long serialVersionUID = 138128277; + + + public UInvalidTableRecord() { + super(org.jooq.test.oracle.generatedclasses.test.udt.UInvalidTable.U_INVALID_TABLE); + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/udt/records/UInvalidTypeRecord.java b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/udt/records/UInvalidTypeRecord.java new file mode 100644 index 00000000000..a9d70531948 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/udt/records/UInvalidTypeRecord.java @@ -0,0 +1,17 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle.generatedclasses.test.udt.records; + +/** + * This class is generated by jOOQ. + */ +public class UInvalidTypeRecord extends org.jooq.impl.UDTRecordImpl { + + private static final long serialVersionUID = -1171970853; + + + public UInvalidTypeRecord() { + super(org.jooq.test.oracle.generatedclasses.test.udt.UInvalidType.U_INVALID_TYPE); + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/udt/records/UNumberArrayRecord.java b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/udt/records/UNumberArrayRecord.java new file mode 100644 index 00000000000..5059dfa4126 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/udt/records/UNumberArrayRecord.java @@ -0,0 +1,26 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle.generatedclasses.test.udt.records; + +/** + * This class is generated by jOOQ. + */ +public class UNumberArrayRecord extends org.jooq.impl.ArrayRecordImpl { + + private static final long serialVersionUID = -445673813; + + public UNumberArrayRecord(org.jooq.Configuration configuration) { + super(org.jooq.test.oracle.generatedclasses.test.Test.TEST, "U_NUMBER_ARRAY", org.jooq.impl.SQLDataType.INTEGER, configuration); + } + + public UNumberArrayRecord(org.jooq.Configuration configuration, java.lang.Integer... array) { + this(configuration); + set(array); + } + + public UNumberArrayRecord(org.jooq.Configuration configuration, java.util.List list) { + this(configuration); + setList(list); + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/udt/records/UNumberLongArrayRecord.java b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/udt/records/UNumberLongArrayRecord.java new file mode 100644 index 00000000000..9d773b06faf --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/udt/records/UNumberLongArrayRecord.java @@ -0,0 +1,26 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle.generatedclasses.test.udt.records; + +/** + * This class is generated by jOOQ. + */ +public class UNumberLongArrayRecord extends org.jooq.impl.ArrayRecordImpl { + + private static final long serialVersionUID = -29383523; + + public UNumberLongArrayRecord(org.jooq.Configuration configuration) { + super(org.jooq.test.oracle.generatedclasses.test.Test.TEST, "U_NUMBER_LONG_ARRAY", org.jooq.impl.SQLDataType.BIGINT, configuration); + } + + public UNumberLongArrayRecord(org.jooq.Configuration configuration, java.lang.Long... array) { + this(configuration); + set(array); + } + + public UNumberLongArrayRecord(org.jooq.Configuration configuration, java.util.List list) { + this(configuration); + setList(list); + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/udt/records/UNumberLongTableRecord.java b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/udt/records/UNumberLongTableRecord.java new file mode 100644 index 00000000000..85c3321061f --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/udt/records/UNumberLongTableRecord.java @@ -0,0 +1,26 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle.generatedclasses.test.udt.records; + +/** + * This class is generated by jOOQ. + */ +public class UNumberLongTableRecord extends org.jooq.impl.ArrayRecordImpl { + + private static final long serialVersionUID = 781613256; + + public UNumberLongTableRecord(org.jooq.Configuration configuration) { + super(org.jooq.test.oracle.generatedclasses.test.Test.TEST, "U_NUMBER_LONG_TABLE", org.jooq.impl.SQLDataType.BIGINT, configuration); + } + + public UNumberLongTableRecord(org.jooq.Configuration configuration, java.lang.Long... array) { + this(configuration); + set(array); + } + + public UNumberLongTableRecord(org.jooq.Configuration configuration, java.util.List list) { + this(configuration); + setList(list); + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/udt/records/UNumberTableRecord.java b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/udt/records/UNumberTableRecord.java new file mode 100644 index 00000000000..52921be2111 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/udt/records/UNumberTableRecord.java @@ -0,0 +1,26 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle.generatedclasses.test.udt.records; + +/** + * This class is generated by jOOQ. + */ +public class UNumberTableRecord extends org.jooq.impl.ArrayRecordImpl { + + private static final long serialVersionUID = 2097237876; + + public UNumberTableRecord(org.jooq.Configuration configuration) { + super(org.jooq.test.oracle.generatedclasses.test.Test.TEST, "U_NUMBER_TABLE", org.jooq.impl.SQLDataType.INTEGER, configuration); + } + + public UNumberTableRecord(org.jooq.Configuration configuration, java.lang.Integer... array) { + this(configuration); + set(array); + } + + public UNumberTableRecord(org.jooq.Configuration configuration, java.util.List list) { + this(configuration); + setList(list); + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/udt/records/UStreetTypeRecord.java b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/udt/records/UStreetTypeRecord.java new file mode 100644 index 00000000000..1ce471b013a --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/udt/records/UStreetTypeRecord.java @@ -0,0 +1,59 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle.generatedclasses.test.udt.records; + +/** + * This class is generated by jOOQ. + */ +public class UStreetTypeRecord extends org.jooq.impl.UDTRecordImpl { + + private static final long serialVersionUID = -838066655; + + + /** + * An uncommented item + */ + public void setStreet(java.lang.String value) { + setValue(org.jooq.test.oracle.generatedclasses.test.udt.UStreetType.STREET, value); + } + + /** + * An uncommented item + */ + public java.lang.String getStreet() { + return getValue(org.jooq.test.oracle.generatedclasses.test.udt.UStreetType.STREET); + } + + /** + * An uncommented item + */ + public void setNo(java.lang.String value) { + setValue(org.jooq.test.oracle.generatedclasses.test.udt.UStreetType.NO, value); + } + + /** + * An uncommented item + */ + public java.lang.String getNo() { + return getValue(org.jooq.test.oracle.generatedclasses.test.udt.UStreetType.NO); + } + + /** + * An uncommented item + */ + public void setFloors(org.jooq.test.oracle.generatedclasses.test.udt.records.UNumberArrayRecord value) { + setValue(org.jooq.test.oracle.generatedclasses.test.udt.UStreetType.FLOORS, value); + } + + /** + * An uncommented item + */ + public org.jooq.test.oracle.generatedclasses.test.udt.records.UNumberArrayRecord getFloors() { + return getValue(org.jooq.test.oracle.generatedclasses.test.udt.UStreetType.FLOORS); + } + + public UStreetTypeRecord() { + super(org.jooq.test.oracle.generatedclasses.test.udt.UStreetType.U_STREET_TYPE); + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/udt/records/UStringArrayRecord.java b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/udt/records/UStringArrayRecord.java new file mode 100644 index 00000000000..9d4377b2c5b --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/udt/records/UStringArrayRecord.java @@ -0,0 +1,26 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle.generatedclasses.test.udt.records; + +/** + * This class is generated by jOOQ. + */ +public class UStringArrayRecord extends org.jooq.impl.ArrayRecordImpl { + + private static final long serialVersionUID = 568676423; + + public UStringArrayRecord(org.jooq.Configuration configuration) { + super(org.jooq.test.oracle.generatedclasses.test.Test.TEST, "U_STRING_ARRAY", org.jooq.impl.SQLDataType.VARCHAR, configuration); + } + + public UStringArrayRecord(org.jooq.Configuration configuration, java.lang.String... array) { + this(configuration); + set(array); + } + + public UStringArrayRecord(org.jooq.Configuration configuration, java.util.List list) { + this(configuration); + setList(list); + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/udt/records/UStringTableRecord.java b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/udt/records/UStringTableRecord.java new file mode 100644 index 00000000000..a4aba06b639 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/udt/records/UStringTableRecord.java @@ -0,0 +1,26 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle.generatedclasses.test.udt.records; + +/** + * This class is generated by jOOQ. + */ +public class UStringTableRecord extends org.jooq.impl.ArrayRecordImpl { + + private static final long serialVersionUID = -665606916; + + public UStringTableRecord(org.jooq.Configuration configuration) { + super(org.jooq.test.oracle.generatedclasses.test.Test.TEST, "U_STRING_TABLE", org.jooq.impl.SQLDataType.VARCHAR, configuration); + } + + public UStringTableRecord(org.jooq.Configuration configuration, java.lang.String... array) { + this(configuration); + set(array); + } + + public UStringTableRecord(org.jooq.Configuration configuration, java.util.List list) { + this(configuration); + setList(list); + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/udt/u_author_type/CountBooks.java b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/udt/u_author_type/CountBooks.java new file mode 100644 index 00000000000..6445cc92ec1 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/udt/u_author_type/CountBooks.java @@ -0,0 +1,49 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle.generatedclasses.test.udt.u_author_type; + +/** + * This class is generated by jOOQ. + */ +public class CountBooks extends org.jooq.impl.AbstractRoutine { + + private static final long serialVersionUID = -1510403668; + + + /** + * An uncommented item + */ + public static final org.jooq.Parameter RETURN_VALUE = createParameter("RETURN_VALUE", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter SELF = createParameter("SELF", org.jooq.test.oracle.generatedclasses.test.udt.UAuthorType.U_AUTHOR_TYPE.getDataType()); + + /** + * Create a new routine call instance + */ + public CountBooks() { + super("COUNT_BOOKS", org.jooq.test.oracle.generatedclasses.test.Test.TEST, org.jooq.test.oracle.generatedclasses.test.udt.UAuthorType.U_AUTHOR_TYPE, org.jooq.impl.SQLDataType.NUMERIC); + + setReturnParameter(RETURN_VALUE); + addInParameter(SELF); + } + + /** + * Set the SELF parameter to the routine + */ + public void setSelf(org.jooq.test.oracle.generatedclasses.test.udt.records.UAuthorTypeRecord value) { + setValue(SELF, value); + } + + /** + * Set the SELF parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setSelf(org.jooq.Field field) { + setField(SELF, field); + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/udt/u_author_type/GetBooks.java b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/udt/u_author_type/GetBooks.java new file mode 100644 index 00000000000..76f1099f1b2 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/udt/u_author_type/GetBooks.java @@ -0,0 +1,68 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle.generatedclasses.test.udt.u_author_type; + +/** + * This class is generated by jOOQ. + */ +public class GetBooks extends org.jooq.impl.AbstractRoutine { + + private static final long serialVersionUID = -1634527224; + + + /** + * An uncommented item + */ + public static final org.jooq.Parameter SELF = createParameter("SELF", org.jooq.test.oracle.generatedclasses.test.udt.UAuthorType.U_AUTHOR_TYPE.getDataType()); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter BOOK1 = createParameter("BOOK1", org.jooq.test.oracle.generatedclasses.test.udt.UBookType.U_BOOK_TYPE.getDataType()); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter BOOK2 = createParameter("BOOK2", org.jooq.test.oracle.generatedclasses.test.udt.UBookType.U_BOOK_TYPE.getDataType()); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter BOOKS = createParameter("BOOKS", org.jooq.test.oracle.generatedclasses.test.udt.UBookType.U_BOOK_TYPE.getDataType().asArrayDataType(org.jooq.test.oracle.generatedclasses.test.udt.records.UBookTableRecord.class)); + + /** + * Create a new routine call instance + */ + public GetBooks() { + super("GET_BOOKS", org.jooq.test.oracle.generatedclasses.test.Test.TEST, org.jooq.test.oracle.generatedclasses.test.udt.UAuthorType.U_AUTHOR_TYPE); + + addInOutParameter(SELF); + addOutParameter(BOOK1); + addOutParameter(BOOK2); + addOutParameter(BOOKS); + } + + /** + * Set the SELF parameter to the routine + */ + public void setSelf(org.jooq.test.oracle.generatedclasses.test.udt.records.UAuthorTypeRecord value) { + setValue(SELF, value); + } + + public org.jooq.test.oracle.generatedclasses.test.udt.records.UAuthorTypeRecord getSelf() { + return getValue(SELF); + } + + public org.jooq.test.oracle.generatedclasses.test.udt.records.UBookTypeRecord getBook1() { + return getValue(BOOK1); + } + + public org.jooq.test.oracle.generatedclasses.test.udt.records.UBookTypeRecord getBook2() { + return getValue(BOOK2); + } + + public org.jooq.test.oracle.generatedclasses.test.udt.records.UBookTableRecord getBooks() { + return getValue(BOOKS); + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/udt/u_author_type/Load.java b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/udt/u_author_type/Load.java new file mode 100644 index 00000000000..33602417d22 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/test/udt/u_author_type/Load.java @@ -0,0 +1,38 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle.generatedclasses.test.udt.u_author_type; + +/** + * This class is generated by jOOQ. + */ +public class Load extends org.jooq.impl.AbstractRoutine { + + private static final long serialVersionUID = 126306547; + + + /** + * An uncommented item + */ + public static final org.jooq.Parameter SELF = createParameter("SELF", org.jooq.test.oracle.generatedclasses.test.udt.UAuthorType.U_AUTHOR_TYPE.getDataType()); + + /** + * Create a new routine call instance + */ + public Load() { + super("LOAD", org.jooq.test.oracle.generatedclasses.test.Test.TEST, org.jooq.test.oracle.generatedclasses.test.udt.UAuthorType.U_AUTHOR_TYPE); + + addInOutParameter(SELF); + } + + /** + * Set the SELF parameter to the routine + */ + public void setSelf(org.jooq.test.oracle.generatedclasses.test.udt.records.UAuthorTypeRecord value) { + setValue(SELF, value); + } + + public org.jooq.test.oracle.generatedclasses.test.udt.records.UAuthorTypeRecord getSelf() { + return getValue(SELF); + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle/reset.sql b/jOOQ-test/src/org/jooq/test/oracle/reset.sql new file mode 100644 index 00000000000..3ecb2cabf64 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle/reset.sql @@ -0,0 +1,98 @@ +DELETE FROM multi_schema.t_book_sale/ + +DELETE FROM t_658_ref/ +DELETE FROM t_658_11/ +DELETE FROM t_658_21/ +DELETE FROM t_658_31/ +DELETE FROM t_658_12/ +DELETE FROM t_658_22/ +DELETE FROM t_658_32/ +DELETE FROM t_arrays/ +DELETE FROM t_book_to_book_store/ +DELETE FROM t_book_store/ +DELETE FROM t_book/ +DELETE FROM t_author/ +DELETE FROM t_language/ +DELETE FROM t_directory/ +DELETE FROM t_triggers/ +DELETE FROM t_booleans/ +DELETE FROM t_dates/ + +DROP SEQUENCE s_author_id/ +CREATE SEQUENCE s_author_id MAXVALUE 2000000000/ + +INSERT INTO t_language (id, cd, description, description_english) VALUES (1, 'en', 'English', 'English')/ +INSERT INTO t_language (id, cd, description, description_english) VALUES (2, 'de', 'Deutsch', 'German')/ +INSERT INTO t_language (id, cd, description, description_english) VALUES (3, 'fr', 'Français', 'French')/ +INSERT INTO t_language (id, cd, description, description_english) VALUES (4, 'pt', null, null)/ +/ + +INSERT INTO t_658_11 VALUES ('A')/ +INSERT INTO t_658_11 VALUES ('B')/ +INSERT INTO t_658_11 VALUES ('C')/ +INSERT INTO t_658_21 VALUES (1)/ +INSERT INTO t_658_21 VALUES (2)/ +INSERT INTO t_658_21 VALUES (3)/ +INSERT INTO t_658_31 VALUES (1)/ +INSERT INTO t_658_31 VALUES (2)/ +INSERT INTO t_658_31 VALUES (3)/ +INSERT INTO t_658_12 VALUES ('A', 'A')/ +INSERT INTO t_658_12 VALUES ('B', 'B')/ +INSERT INTO t_658_12 VALUES ('C', 'C')/ +INSERT INTO t_658_22 VALUES (1, 1)/ +INSERT INTO t_658_22 VALUES (2, 2)/ +INSERT INTO t_658_22 VALUES (3, 3)/ +INSERT INTO t_658_32 VALUES (1, 1)/ +INSERT INTO t_658_32 VALUES (2, 2)/ +INSERT INTO t_658_32 VALUES (3, 3)/ +INSERT INTO t_658_ref VALUES ('A', 1, 1, 'B', 2, 2)/ + +INSERT INTO t_author VALUES (s_author_id.nextval, 'George', 'Orwell', TO_DATE('1903-06-25', 'YYYY-MM-DD'), 1903, u_address_type(u_street_type('Parliament Hill', '77', u_number_array(1, 2, 3)), 'NW31A9', 'Hampstead', 'England', TO_DATE('1980-01-01', 'YYYY-MM-DD'), null))/ +INSERT INTO t_author VALUES (s_author_id.nextval, 'Paulo', 'Coelho', TO_DATE('1947-08-24', 'YYYY-MM-DD'), 1947, u_address_type(u_street_type('Caixa Postal', '43.003', null), null, 'Rio de Janeiro', 'Brazil', TO_DATE('1940-01-01', 'YYYY-MM-DD'), 2))/ + +INSERT INTO t_book VALUES (1, 1, null, null, '1984', 1948, 1, 'To know and not to know, to be conscious of complete truthfulness while telling carefully constructed lies, to hold simultaneously two opinions which cancelled out, knowing them to be contradictory and believing in both of them, to use logic against logic, to repudiate morality while laying claim to it, to believe that democracy was impossible and that the Party was the guardian of democracy, to forget, whatever it was necessary to forget, then to draw it back into memory again at the moment when it was needed, and then promptly to forget it again, and above all, to apply the same process to the process itself -- that was the ultimate subtlety; consciously to induce unconsciousness, and then, once again, to become unconscious of the act of hypnosis you had just performed. Even to understand the word ''doublethink'' involved the use of doublethink..', null)/ +INSERT INTO t_book VALUES (2, 1, null, null, 'Animal Farm', 1945, 1, null, null)/ +INSERT INTO t_book VALUES (3, 2, null, null, 'O Alquimista', 1988, 4, null, null)/ +INSERT INTO t_book VALUES (4, 2, null, null, 'Brida', 1990, 2, null, null)/ + +INSERT INTO t_book_store VALUES ('Orell Füssli')/ +INSERT INTO t_book_store VALUES ('Ex Libris')/ +INSERT INTO t_book_store VALUES ('Buchhandlung im Volkshaus')/ + +INSERT INTO t_book_to_book_store VALUES ('Orell Füssli', 1, 10)/ +INSERT INTO t_book_to_book_store VALUES ('Orell Füssli', 2, 10)/ +INSERT INTO t_book_to_book_store VALUES ('Orell Füssli', 3, 10)/ +INSERT INTO t_book_to_book_store VALUES ('Ex Libris', 1, 1)/ +INSERT INTO t_book_to_book_store VALUES ('Ex Libris', 3, 2)/ +INSERT INTO t_book_to_book_store VALUES ('Buchhandlung im Volkshaus', 3, 1)/ + +INSERT INTO t_arrays VALUES (1, null, null, null, null)/ +INSERT INTO t_arrays VALUES (2, u_string_array(), u_number_array(), u_number_long_array(), u_date_array())/ +INSERT INTO t_arrays VALUES (3, u_string_array('a'), u_number_array(1), u_number_long_array(1), u_date_array(TO_DATE('1981-07-10', 'YYYY-MM-DD')))/ +INSERT INTO t_arrays VALUES (4, u_string_array('a', 'b'), u_number_array(1, 2), u_number_long_array(1, 2), u_date_array(TO_DATE('1981-07-10', 'YYYY-MM-DD'), TO_DATE('2000-01-01', 'YYYY-MM-DD')))/ + +INSERT INTO t_directory VALUES ( 1, null, 1, 'C:')/ + INSERT INTO t_directory VALUES ( 2, 1, 1, 'eclipse')/ + INSERT INTO t_directory VALUES ( 3, 2, 1, 'configuration')/ + INSERT INTO t_directory VALUES ( 4, 2, 1, 'dropins')/ + INSERT INTO t_directory VALUES ( 5, 2, 1, 'features')/ + INSERT INTO t_directory VALUES ( 7, 2, 1, 'plugins')/ + INSERT INTO t_directory VALUES ( 8, 2, 1, 'readme')/ + INSERT INTO t_directory VALUES ( 9, 8, 0, 'readme_eclipse.html')/ + INSERT INTO t_directory VALUES (10, 2, 1, 'src')/ + INSERT INTO t_directory VALUES (11, 2, 0, 'eclipse.exe')/ + INSERT INTO t_directory VALUES (12, 2, 0, 'eclipse.ini')/ + INSERT INTO t_directory VALUES (13, 1, 1, 'Program Files')/ + INSERT INTO t_directory VALUES (14, 13, 1, 'Internet Explorer')/ + INSERT INTO t_directory VALUES (15, 14, 1, 'de-DE')/ + INSERT INTO t_directory VALUES (16, 14, 0, 'ielowutil.exe')/ + INSERT INTO t_directory VALUES (17, 14, 0, 'iexplore.exe')/ + INSERT INTO t_directory VALUES (18, 13, 1, 'Java')/ + INSERT INTO t_directory VALUES (19, 18, 1, 'jre6')/ + INSERT INTO t_directory VALUES (20, 19, 1, 'bin')/ + INSERT INTO t_directory VALUES (21, 20, 0, 'java.exe')/ + INSERT INTO t_directory VALUES (22, 20, 0, 'javaw.exe')/ + INSERT INTO t_directory VALUES (23, 20, 0, 'javaws.exe')/ + INSERT INTO t_directory VALUES (24, 19, 1, 'lib')/ + INSERT INTO t_directory VALUES (25, 24, 0, 'javaws.jar')/ + INSERT INTO t_directory VALUES (26, 24, 0, 'rt.jar')/ diff --git a/jOOQ-test/src/org/jooq/test/oracle2/generatedclasses/DateAsTimestampTest.java b/jOOQ-test/src/org/jooq/test/oracle2/generatedclasses/DateAsTimestampTest.java new file mode 100644 index 00000000000..9fd7646ede4 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle2/generatedclasses/DateAsTimestampTest.java @@ -0,0 +1,41 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle2.generatedclasses; + +/** + * This class is generated by jOOQ. + */ +public class DateAsTimestampTest extends org.jooq.impl.SchemaImpl { + + private static final long serialVersionUID = -1344120928; + + /** + * The singleton instance of TEST + */ + public static final DateAsTimestampTest DATE_AS_TIMESTAMP_TEST = new DateAsTimestampTest(); + + /** + * No further instances allowed + */ + private DateAsTimestampTest() { + super("TEST"); + } + + /* + * instance initialiser + */ + { + addMapping("TEST.T_976_OBJECT_TYPE", org.jooq.test.oracle2.generatedclasses.udt.records.DateAsTimestampT_976ObjectTypeRecord.class); + } + + @Override + public final java.util.List> getTables() { + return java.util.Arrays.>asList(org.jooq.test.oracle2.generatedclasses.tables.DateAsTimestampT_976.DATE_AS_TIMESTAMP_T_976); + } + + @Override + public final java.util.List> getUDTs() { + return java.util.Arrays.>asList(org.jooq.test.oracle2.generatedclasses.udt.DateAsTimestampT_976ObjectType.DATE_AS_TIMESTAMP_T_976_OBJECT_TYPE); + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle2/generatedclasses/DateAsTimestampTestFactory.java b/jOOQ-test/src/org/jooq/test/oracle2/generatedclasses/DateAsTimestampTestFactory.java new file mode 100644 index 00000000000..87f27db9d58 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle2/generatedclasses/DateAsTimestampTestFactory.java @@ -0,0 +1,41 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle2.generatedclasses; + +/** + * This class is generated by jOOQ. + */ +public class DateAsTimestampTestFactory extends org.jooq.util.oracle.OracleFactory { + + private static final long serialVersionUID = 31507997; + + /** + * Create a factory with a connection + * + * @param connection The connection to use with objects created from this factory + */ + public DateAsTimestampTestFactory(java.sql.Connection connection) { + super(connection); + } + + /** + * Create a factory with a connection and a schema mapping + * + * @deprecated - 2.0.5 - Use {@link #DateAsTimestampTestFactory(java.sql.Connection, org.jooq.conf.Settings)} instead + */ + @Deprecated + public DateAsTimestampTestFactory(java.sql.Connection connection, org.jooq.SchemaMapping mapping) { + super(connection, mapping); + } + + /** + * Create a factory with a connection and some settings + * + * @param connection The connection to use with objects created from this factory + * @param settings The settings to apply to objects created from this factory + */ + public DateAsTimestampTestFactory(java.sql.Connection connection, org.jooq.conf.Settings settings) { + super(connection, settings); + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle2/generatedclasses/Keys.java b/jOOQ-test/src/org/jooq/test/oracle2/generatedclasses/Keys.java new file mode 100644 index 00000000000..48a430de4fc --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle2/generatedclasses/Keys.java @@ -0,0 +1,25 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle2.generatedclasses; + +/** + * This class is generated by jOOQ. + * + * A class modelling foreign key relationships between tables of the TEST schema + */ +@SuppressWarnings({"unchecked"}) +public class Keys extends org.jooq.impl.AbstractKeys { + + // IDENTITY definitions + + // UNIQUE and PRIMARY KEY definitions + public static final org.jooq.UniqueKey DATE_AS_TIMESTAMP_PK_T_976 = createUniqueKey(org.jooq.test.oracle2.generatedclasses.tables.DateAsTimestampT_976.DATE_AS_TIMESTAMP_T_976, org.jooq.test.oracle2.generatedclasses.tables.DateAsTimestampT_976.DATE_AS_TIMESTAMP_T_976.DATE_AS_TIMESTAMP_ID); + + // FOREIGN KEY definitions + + /** + * No instances + */ + private Keys() {} +} diff --git a/jOOQ-test/src/org/jooq/test/oracle2/generatedclasses/Routines.java b/jOOQ-test/src/org/jooq/test/oracle2/generatedclasses/Routines.java new file mode 100644 index 00000000000..3e3c712c430 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle2/generatedclasses/Routines.java @@ -0,0 +1,70 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle2.generatedclasses; + +/** + * This class is generated by jOOQ. + * + * Convenience access to all stored procedures and functions in TEST + */ +public final class Routines { + + /** + * Call TEST.F_976 + * + * @param dateAsTimestampi + * @throws org.jooq.exception.DataAccessException if something went wrong executing the query + */ + public static java.sql.Timestamp f_976(org.jooq.Configuration configuration, java.sql.Timestamp dateAsTimestampi) { + org.jooq.test.oracle2.generatedclasses.routines.DateAsTimestampF_976 f = new org.jooq.test.oracle2.generatedclasses.routines.DateAsTimestampF_976(); + f.setI(dateAsTimestampi); + + f.execute(configuration); + return f.getReturnValue(); + } + + /** + * Get TEST.F_976 as a field + * + * @param dateAsTimestampi + */ + public static org.jooq.Field f_976(java.sql.Timestamp dateAsTimestampi) { + org.jooq.test.oracle2.generatedclasses.routines.DateAsTimestampF_976 f = new org.jooq.test.oracle2.generatedclasses.routines.DateAsTimestampF_976(); + f.setI(dateAsTimestampi); + + return f.asField(); + } + + /** + * Get TEST.F_976 as a field + * + * @param dateAsTimestampi + */ + public static org.jooq.Field f_976(org.jooq.Field dateAsTimestampi) { + org.jooq.test.oracle2.generatedclasses.routines.DateAsTimestampF_976 f = new org.jooq.test.oracle2.generatedclasses.routines.DateAsTimestampF_976(); + f.setI(dateAsTimestampi); + + return f.asField(); + } + + /** + * Call TEST.P_976 + * + * @param dateAsTimestampi IN parameter + * @param dateAsTimestampo OUT parameter + * @throws org.jooq.exception.DataAccessException if something went wrong executing the query + */ + public static java.sql.Timestamp p_976(org.jooq.Configuration configuration, java.sql.Timestamp dateAsTimestampi) { + org.jooq.test.oracle2.generatedclasses.routines.DateAsTimestampP_976 p = new org.jooq.test.oracle2.generatedclasses.routines.DateAsTimestampP_976(); + p.setI(dateAsTimestampi); + + p.execute(configuration); + return p.getO(); + } + + /** + * No instances + */ + private Routines() {} +} diff --git a/jOOQ-test/src/org/jooq/test/oracle2/generatedclasses/Tables.java b/jOOQ-test/src/org/jooq/test/oracle2/generatedclasses/Tables.java new file mode 100644 index 00000000000..4965ae5d62a --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle2/generatedclasses/Tables.java @@ -0,0 +1,22 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle2.generatedclasses; + +/** + * This class is generated by jOOQ. + * + * Convenience access to all tables in TEST + */ +public final class Tables { + + /** + * The table TEST.T_976 + */ + public static org.jooq.test.oracle2.generatedclasses.tables.DateAsTimestampT_976 DATE_AS_TIMESTAMP_T_976 = org.jooq.test.oracle2.generatedclasses.tables.DateAsTimestampT_976.DATE_AS_TIMESTAMP_T_976; + + /** + * No instances + */ + private Tables() {} +} diff --git a/jOOQ-test/src/org/jooq/test/oracle2/generatedclasses/UDTs.java b/jOOQ-test/src/org/jooq/test/oracle2/generatedclasses/UDTs.java new file mode 100644 index 00000000000..4ec22deb3dc --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle2/generatedclasses/UDTs.java @@ -0,0 +1,22 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle2.generatedclasses; + +/** + * This class is generated by jOOQ. + * + * Convenience access to all UDTs in TEST + */ +public final class UDTs { + + /** + * The type TEST.T_976_OBJECT_TYPE + */ + public static org.jooq.test.oracle2.generatedclasses.udt.DateAsTimestampT_976ObjectType DATE_AS_TIMESTAMP_T_976_OBJECT_TYPE = org.jooq.test.oracle2.generatedclasses.udt.DateAsTimestampT_976ObjectType.DATE_AS_TIMESTAMP_T_976_OBJECT_TYPE; + + /** + * No instances + */ + private UDTs() {} +} diff --git a/jOOQ-test/src/org/jooq/test/oracle2/generatedclasses/packages/DateAsTimestampPkg_976.java b/jOOQ-test/src/org/jooq/test/oracle2/generatedclasses/packages/DateAsTimestampPkg_976.java new file mode 100644 index 00000000000..6c2ff134f87 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle2/generatedclasses/packages/DateAsTimestampPkg_976.java @@ -0,0 +1,78 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle2.generatedclasses.packages; + +/** + * This class is generated by jOOQ. + * + * Convenience access to all stored procedures and functions in PKG_976 + */ +public final class DateAsTimestampPkg_976 extends org.jooq.impl.PackageImpl { + + private static final long serialVersionUID = 1637124186; + + /** + * The singleton instance of TEST.PKG_976 + */ + public static final org.jooq.test.oracle2.generatedclasses.packages.DateAsTimestampPkg_976 DATE_AS_TIMESTAMP_PKG_976 = new org.jooq.test.oracle2.generatedclasses.packages.DateAsTimestampPkg_976(); + + /** + * Call TEST.PKG_976.F_976 + * + * @param dateAsTimestampi + * @throws org.jooq.exception.DataAccessException if something went wrong executing the query + */ + public static java.sql.Timestamp f_976(org.jooq.Configuration configuration, java.sql.Timestamp dateAsTimestampi) { + org.jooq.test.oracle2.generatedclasses.packages.date_as_timestamp_pkg_976.DateAsTimestampF_976 f = new org.jooq.test.oracle2.generatedclasses.packages.date_as_timestamp_pkg_976.DateAsTimestampF_976(); + f.setI(dateAsTimestampi); + + f.execute(configuration); + return f.getReturnValue(); + } + + /** + * Get TEST.PKG_976.F_976 as a field + * + * @param dateAsTimestampi + */ + public static org.jooq.Field f_976(java.sql.Timestamp dateAsTimestampi) { + org.jooq.test.oracle2.generatedclasses.packages.date_as_timestamp_pkg_976.DateAsTimestampF_976 f = new org.jooq.test.oracle2.generatedclasses.packages.date_as_timestamp_pkg_976.DateAsTimestampF_976(); + f.setI(dateAsTimestampi); + + return f.asField(); + } + + /** + * Get TEST.PKG_976.F_976 as a field + * + * @param dateAsTimestampi + */ + public static org.jooq.Field f_976(org.jooq.Field dateAsTimestampi) { + org.jooq.test.oracle2.generatedclasses.packages.date_as_timestamp_pkg_976.DateAsTimestampF_976 f = new org.jooq.test.oracle2.generatedclasses.packages.date_as_timestamp_pkg_976.DateAsTimestampF_976(); + f.setI(dateAsTimestampi); + + return f.asField(); + } + + /** + * Call TEST.PKG_976.P_976 + * + * @param dateAsTimestampi IN parameter + * @param dateAsTimestampo OUT parameter + * @throws org.jooq.exception.DataAccessException if something went wrong executing the query + */ + public static java.sql.Timestamp p_976(org.jooq.Configuration configuration, java.sql.Timestamp dateAsTimestampi) { + org.jooq.test.oracle2.generatedclasses.packages.date_as_timestamp_pkg_976.DateAsTimestampP_976 p = new org.jooq.test.oracle2.generatedclasses.packages.date_as_timestamp_pkg_976.DateAsTimestampP_976(); + p.setI(dateAsTimestampi); + + p.execute(configuration); + return p.getO(); + } + /** + * No further instances allowed + */ + private DateAsTimestampPkg_976() { + super("PKG_976", org.jooq.test.oracle2.generatedclasses.DateAsTimestampTest.DATE_AS_TIMESTAMP_TEST); + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle2/generatedclasses/packages/date_as_timestamp_pkg_976/DateAsTimestampF_976.java b/jOOQ-test/src/org/jooq/test/oracle2/generatedclasses/packages/date_as_timestamp_pkg_976/DateAsTimestampF_976.java new file mode 100644 index 00000000000..9524d1fe45a --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle2/generatedclasses/packages/date_as_timestamp_pkg_976/DateAsTimestampF_976.java @@ -0,0 +1,49 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle2.generatedclasses.packages.date_as_timestamp_pkg_976; + +/** + * This class is generated by jOOQ. + */ +public class DateAsTimestampF_976 extends org.jooq.impl.AbstractRoutine { + + private static final long serialVersionUID = 1227752667; + + + /** + * An uncommented item + */ + public static final org.jooq.Parameter DATE_AS_TIMESTAMP_RETURN_VALUE = createParameter("RETURN_VALUE", org.jooq.impl.SQLDataType.TIMESTAMP); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter DATE_AS_TIMESTAMP_I = createParameter("I", org.jooq.impl.SQLDataType.TIMESTAMP); + + /** + * Create a new routine call instance + */ + public DateAsTimestampF_976() { + super("F_976", org.jooq.test.oracle2.generatedclasses.DateAsTimestampTest.DATE_AS_TIMESTAMP_TEST, org.jooq.test.oracle2.generatedclasses.packages.DateAsTimestampPkg_976.DATE_AS_TIMESTAMP_PKG_976, org.jooq.impl.SQLDataType.TIMESTAMP); + + setReturnParameter(DATE_AS_TIMESTAMP_RETURN_VALUE); + addInParameter(DATE_AS_TIMESTAMP_I); + } + + /** + * Set the I parameter to the routine + */ + public void setI(java.sql.Timestamp value) { + setValue(DATE_AS_TIMESTAMP_I, value); + } + + /** + * Set the I parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setI(org.jooq.Field field) { + setField(DATE_AS_TIMESTAMP_I, field); + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle2/generatedclasses/packages/date_as_timestamp_pkg_976/DateAsTimestampP_976.java b/jOOQ-test/src/org/jooq/test/oracle2/generatedclasses/packages/date_as_timestamp_pkg_976/DateAsTimestampP_976.java new file mode 100644 index 00000000000..24ed9f12c82 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle2/generatedclasses/packages/date_as_timestamp_pkg_976/DateAsTimestampP_976.java @@ -0,0 +1,44 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle2.generatedclasses.packages.date_as_timestamp_pkg_976; + +/** + * This class is generated by jOOQ. + */ +public class DateAsTimestampP_976 extends org.jooq.impl.AbstractRoutine { + + private static final long serialVersionUID = 350043131; + + + /** + * An uncommented item + */ + public static final org.jooq.Parameter DATE_AS_TIMESTAMP_I = createParameter("I", org.jooq.impl.SQLDataType.TIMESTAMP); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter DATE_AS_TIMESTAMP_O = createParameter("O", org.jooq.impl.SQLDataType.TIMESTAMP); + + /** + * Create a new routine call instance + */ + public DateAsTimestampP_976() { + super("P_976", org.jooq.test.oracle2.generatedclasses.DateAsTimestampTest.DATE_AS_TIMESTAMP_TEST, org.jooq.test.oracle2.generatedclasses.packages.DateAsTimestampPkg_976.DATE_AS_TIMESTAMP_PKG_976); + + addInParameter(DATE_AS_TIMESTAMP_I); + addOutParameter(DATE_AS_TIMESTAMP_O); + } + + /** + * Set the I parameter to the routine + */ + public void setI(java.sql.Timestamp value) { + setValue(DATE_AS_TIMESTAMP_I, value); + } + + public java.sql.Timestamp getO() { + return getValue(DATE_AS_TIMESTAMP_O); + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle2/generatedclasses/routines/DateAsTimestampF_976.java b/jOOQ-test/src/org/jooq/test/oracle2/generatedclasses/routines/DateAsTimestampF_976.java new file mode 100644 index 00000000000..8f1a5c9a153 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle2/generatedclasses/routines/DateAsTimestampF_976.java @@ -0,0 +1,49 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle2.generatedclasses.routines; + +/** + * This class is generated by jOOQ. + */ +public class DateAsTimestampF_976 extends org.jooq.impl.AbstractRoutine { + + private static final long serialVersionUID = -1597365677; + + + /** + * An uncommented item + */ + public static final org.jooq.Parameter DATE_AS_TIMESTAMP_RETURN_VALUE = createParameter("RETURN_VALUE", org.jooq.impl.SQLDataType.TIMESTAMP); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter DATE_AS_TIMESTAMP_I = createParameter("I", org.jooq.impl.SQLDataType.TIMESTAMP); + + /** + * Create a new routine call instance + */ + public DateAsTimestampF_976() { + super("F_976", org.jooq.test.oracle2.generatedclasses.DateAsTimestampTest.DATE_AS_TIMESTAMP_TEST, org.jooq.impl.SQLDataType.TIMESTAMP); + + setReturnParameter(DATE_AS_TIMESTAMP_RETURN_VALUE); + addInParameter(DATE_AS_TIMESTAMP_I); + } + + /** + * Set the I parameter to the routine + */ + public void setI(java.sql.Timestamp value) { + setValue(DATE_AS_TIMESTAMP_I, value); + } + + /** + * Set the I parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setI(org.jooq.Field field) { + setField(DATE_AS_TIMESTAMP_I, field); + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle2/generatedclasses/routines/DateAsTimestampP_976.java b/jOOQ-test/src/org/jooq/test/oracle2/generatedclasses/routines/DateAsTimestampP_976.java new file mode 100644 index 00000000000..1bfb1a7b6c9 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle2/generatedclasses/routines/DateAsTimestampP_976.java @@ -0,0 +1,44 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle2.generatedclasses.routines; + +/** + * This class is generated by jOOQ. + */ +public class DateAsTimestampP_976 extends org.jooq.impl.AbstractRoutine { + + private static final long serialVersionUID = -206106253; + + + /** + * An uncommented item + */ + public static final org.jooq.Parameter DATE_AS_TIMESTAMP_I = createParameter("I", org.jooq.impl.SQLDataType.TIMESTAMP); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter DATE_AS_TIMESTAMP_O = createParameter("O", org.jooq.impl.SQLDataType.TIMESTAMP); + + /** + * Create a new routine call instance + */ + public DateAsTimestampP_976() { + super("P_976", org.jooq.test.oracle2.generatedclasses.DateAsTimestampTest.DATE_AS_TIMESTAMP_TEST); + + addInParameter(DATE_AS_TIMESTAMP_I); + addOutParameter(DATE_AS_TIMESTAMP_O); + } + + /** + * Set the I parameter to the routine + */ + public void setI(java.sql.Timestamp value) { + setValue(DATE_AS_TIMESTAMP_I, value); + } + + public java.sql.Timestamp getO() { + return getValue(DATE_AS_TIMESTAMP_O); + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle2/generatedclasses/tables/DateAsTimestampT_976.java b/jOOQ-test/src/org/jooq/test/oracle2/generatedclasses/tables/DateAsTimestampT_976.java new file mode 100644 index 00000000000..bcb081723a4 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle2/generatedclasses/tables/DateAsTimestampT_976.java @@ -0,0 +1,76 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle2.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class DateAsTimestampT_976 extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = 357908338; + + /** + * The singleton instance of TEST.T_976 + */ + public static final org.jooq.test.oracle2.generatedclasses.tables.DateAsTimestampT_976 DATE_AS_TIMESTAMP_T_976 = new org.jooq.test.oracle2.generatedclasses.tables.DateAsTimestampT_976(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.oracle2.generatedclasses.tables.records.DateAsTimestampT_976Record.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final org.jooq.TableField DATE_AS_TIMESTAMP_ID = createField("ID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField DATE_AS_TIMESTAMP_D = createField("D", org.jooq.impl.SQLDataType.TIMESTAMP, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField DATE_AS_TIMESTAMP_T = createField("T", org.jooq.impl.SQLDataType.DATE.asArrayDataType(org.jooq.test.oracle2.generatedclasses.udt.records.DateAsTimestampT_976VarrayTypeRecord.class), this); + + /** + * An uncommented item + */ + public final org.jooq.TableField DATE_AS_TIMESTAMP_O = createField("O", org.jooq.test.oracle2.generatedclasses.udt.DateAsTimestampT_976ObjectType.DATE_AS_TIMESTAMP_T_976_OBJECT_TYPE.getDataType(), this); + + public DateAsTimestampT_976() { + super("T_976", org.jooq.test.oracle2.generatedclasses.DateAsTimestampTest.DATE_AS_TIMESTAMP_TEST); + } + + public DateAsTimestampT_976(java.lang.String alias) { + super(alias, org.jooq.test.oracle2.generatedclasses.DateAsTimestampTest.DATE_AS_TIMESTAMP_TEST, org.jooq.test.oracle2.generatedclasses.tables.DateAsTimestampT_976.DATE_AS_TIMESTAMP_T_976); + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.test.oracle2.generatedclasses.Keys.DATE_AS_TIMESTAMP_PK_T_976; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.test.oracle2.generatedclasses.Keys.DATE_AS_TIMESTAMP_PK_T_976); + } + + @Override + public org.jooq.test.oracle2.generatedclasses.tables.DateAsTimestampT_976 as(java.lang.String alias) { + return new org.jooq.test.oracle2.generatedclasses.tables.DateAsTimestampT_976(alias); + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle2/generatedclasses/tables/records/DateAsTimestampT_976Record.java b/jOOQ-test/src/org/jooq/test/oracle2/generatedclasses/tables/records/DateAsTimestampT_976Record.java new file mode 100644 index 00000000000..68d8847e912 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle2/generatedclasses/tables/records/DateAsTimestampT_976Record.java @@ -0,0 +1,79 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle2.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + */ +public class DateAsTimestampT_976Record extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = 332944838; + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setId(java.lang.Integer value) { + setValue(org.jooq.test.oracle2.generatedclasses.tables.DateAsTimestampT_976.DATE_AS_TIMESTAMP_T_976.DATE_AS_TIMESTAMP_ID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.lang.Integer getId() { + return getValue(org.jooq.test.oracle2.generatedclasses.tables.DateAsTimestampT_976.DATE_AS_TIMESTAMP_T_976.DATE_AS_TIMESTAMP_ID); + } + + /** + * An uncommented item + */ + public void setD(java.sql.Timestamp value) { + setValue(org.jooq.test.oracle2.generatedclasses.tables.DateAsTimestampT_976.DATE_AS_TIMESTAMP_T_976.DATE_AS_TIMESTAMP_D, value); + } + + /** + * An uncommented item + */ + public java.sql.Timestamp getD() { + return getValue(org.jooq.test.oracle2.generatedclasses.tables.DateAsTimestampT_976.DATE_AS_TIMESTAMP_T_976.DATE_AS_TIMESTAMP_D); + } + + /** + * An uncommented item + */ + public void setT(org.jooq.test.oracle2.generatedclasses.udt.records.DateAsTimestampT_976VarrayTypeRecord value) { + setValue(org.jooq.test.oracle2.generatedclasses.tables.DateAsTimestampT_976.DATE_AS_TIMESTAMP_T_976.DATE_AS_TIMESTAMP_T, value); + } + + /** + * An uncommented item + */ + public org.jooq.test.oracle2.generatedclasses.udt.records.DateAsTimestampT_976VarrayTypeRecord getT() { + return getValue(org.jooq.test.oracle2.generatedclasses.tables.DateAsTimestampT_976.DATE_AS_TIMESTAMP_T_976.DATE_AS_TIMESTAMP_T); + } + + /** + * An uncommented item + */ + public void setO(org.jooq.test.oracle2.generatedclasses.udt.records.DateAsTimestampT_976ObjectTypeRecord value) { + setValue(org.jooq.test.oracle2.generatedclasses.tables.DateAsTimestampT_976.DATE_AS_TIMESTAMP_T_976.DATE_AS_TIMESTAMP_O, value); + } + + /** + * An uncommented item + */ + public org.jooq.test.oracle2.generatedclasses.udt.records.DateAsTimestampT_976ObjectTypeRecord getO() { + return getValue(org.jooq.test.oracle2.generatedclasses.tables.DateAsTimestampT_976.DATE_AS_TIMESTAMP_T_976.DATE_AS_TIMESTAMP_O); + } + + /** + * Create a detached DateAsTimestampT_976Record + */ + public DateAsTimestampT_976Record() { + super(org.jooq.test.oracle2.generatedclasses.tables.DateAsTimestampT_976.DATE_AS_TIMESTAMP_T_976); + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle2/generatedclasses/udt/DateAsTimestampT_976ObjectType.java b/jOOQ-test/src/org/jooq/test/oracle2/generatedclasses/udt/DateAsTimestampT_976ObjectType.java new file mode 100644 index 00000000000..d19b23e4fc2 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle2/generatedclasses/udt/DateAsTimestampT_976ObjectType.java @@ -0,0 +1,42 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle2.generatedclasses.udt; + +/** + * This class is generated by jOOQ. + */ +public class DateAsTimestampT_976ObjectType extends org.jooq.impl.UDTImpl { + + private static final long serialVersionUID = 1338099610; + + /** + * The singleton instance of TEST.T_976_OBJECT_TYPE + */ + public static final org.jooq.test.oracle2.generatedclasses.udt.DateAsTimestampT_976ObjectType DATE_AS_TIMESTAMP_T_976_OBJECT_TYPE = new org.jooq.test.oracle2.generatedclasses.udt.DateAsTimestampT_976ObjectType(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.oracle2.generatedclasses.udt.records.DateAsTimestampT_976ObjectTypeRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + */ + public static final org.jooq.UDTField DATE_AS_TIMESTAMP_D = createField("D", org.jooq.impl.SQLDataType.TIMESTAMP, DATE_AS_TIMESTAMP_T_976_OBJECT_TYPE); + + /** + * No further instances allowed + */ + private DateAsTimestampT_976ObjectType() { + super("T_976_OBJECT_TYPE", org.jooq.test.oracle2.generatedclasses.DateAsTimestampTest.DATE_AS_TIMESTAMP_TEST); + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle2/generatedclasses/udt/records/DateAsTimestampT_976ObjectTypeRecord.java b/jOOQ-test/src/org/jooq/test/oracle2/generatedclasses/udt/records/DateAsTimestampT_976ObjectTypeRecord.java new file mode 100644 index 00000000000..a6f4b7266d1 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle2/generatedclasses/udt/records/DateAsTimestampT_976ObjectTypeRecord.java @@ -0,0 +1,31 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle2.generatedclasses.udt.records; + +/** + * This class is generated by jOOQ. + */ +public class DateAsTimestampT_976ObjectTypeRecord extends org.jooq.impl.UDTRecordImpl { + + private static final long serialVersionUID = -1483120838; + + + /** + * An uncommented item + */ + public void setD(java.sql.Timestamp value) { + setValue(org.jooq.test.oracle2.generatedclasses.udt.DateAsTimestampT_976ObjectType.DATE_AS_TIMESTAMP_D, value); + } + + /** + * An uncommented item + */ + public java.sql.Timestamp getD() { + return getValue(org.jooq.test.oracle2.generatedclasses.udt.DateAsTimestampT_976ObjectType.DATE_AS_TIMESTAMP_D); + } + + public DateAsTimestampT_976ObjectTypeRecord() { + super(org.jooq.test.oracle2.generatedclasses.udt.DateAsTimestampT_976ObjectType.DATE_AS_TIMESTAMP_T_976_OBJECT_TYPE); + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle2/generatedclasses/udt/records/DateAsTimestampT_976VarrayTypeRecord.java b/jOOQ-test/src/org/jooq/test/oracle2/generatedclasses/udt/records/DateAsTimestampT_976VarrayTypeRecord.java new file mode 100644 index 00000000000..0d6647977bd --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle2/generatedclasses/udt/records/DateAsTimestampT_976VarrayTypeRecord.java @@ -0,0 +1,26 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle2.generatedclasses.udt.records; + +/** + * This class is generated by jOOQ. + */ +public class DateAsTimestampT_976VarrayTypeRecord extends org.jooq.impl.ArrayRecordImpl { + + private static final long serialVersionUID = -635251963; + + public DateAsTimestampT_976VarrayTypeRecord(org.jooq.Configuration configuration) { + super(org.jooq.test.oracle2.generatedclasses.DateAsTimestampTest.DATE_AS_TIMESTAMP_TEST, "T_976_VARRAY_TYPE", org.jooq.impl.SQLDataType.DATE, configuration); + } + + public DateAsTimestampT_976VarrayTypeRecord(org.jooq.Configuration configuration, java.sql.Date... array) { + this(configuration); + set(array); + } + + public DateAsTimestampT_976VarrayTypeRecord(org.jooq.Configuration configuration, java.util.List list) { + this(configuration); + setList(list); + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/Keys.java b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/Keys.java new file mode 100644 index 00000000000..4ade4b6de64 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/Keys.java @@ -0,0 +1,49 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle3.generatedclasses; + +/** + * This class is generated by jOOQ. + * + * A class modelling foreign key relationships between tables of the TEST schema + */ +@SuppressWarnings({"unchecked"}) +public class Keys extends org.jooq.impl.AbstractKeys { + + // IDENTITY definitions + + // UNIQUE and PRIMARY KEY definitions + public static final org.jooq.UniqueKey PK_T_ARRAYS = createUniqueKey(org.jooq.test.oracle3.generatedclasses.tables.T_ARRAYS.T_ARRAYS, org.jooq.test.oracle3.generatedclasses.tables.T_ARRAYS.T_ARRAYS.ID); + public static final org.jooq.UniqueKey PK_T_AUTHOR = createUniqueKey(org.jooq.test.oracle3.generatedclasses.tables.T_AUTHOR.T_AUTHOR, org.jooq.test.oracle3.generatedclasses.tables.T_AUTHOR.T_AUTHOR.ID); + public static final org.jooq.UniqueKey PK_T_BOOK = createUniqueKey(org.jooq.test.oracle3.generatedclasses.tables.T_BOOK.T_BOOK, org.jooq.test.oracle3.generatedclasses.tables.T_BOOK.T_BOOK.ID); + public static final org.jooq.UniqueKey UK_T_BOOK_STORE_NAME = createUniqueKey(org.jooq.test.oracle3.generatedclasses.tables.T_BOOK_STORE.T_BOOK_STORE, org.jooq.test.oracle3.generatedclasses.tables.T_BOOK_STORE.T_BOOK_STORE.NAME); + public static final org.jooq.UniqueKey PK_B2BS = createUniqueKey(org.jooq.test.oracle3.generatedclasses.tables.T_BOOK_TO_BOOK_STORE.T_BOOK_TO_BOOK_STORE, org.jooq.test.oracle3.generatedclasses.tables.T_BOOK_TO_BOOK_STORE.T_BOOK_TO_BOOK_STORE.BOOK_STORE_NAME, org.jooq.test.oracle3.generatedclasses.tables.T_BOOK_TO_BOOK_STORE.T_BOOK_TO_BOOK_STORE.BOOK_ID); + public static final org.jooq.UniqueKey PK_T_BOOLEANS = createUniqueKey(org.jooq.test.oracle3.generatedclasses.tables.T_BOOLEANS.T_BOOLEANS, org.jooq.test.oracle3.generatedclasses.tables.T_BOOLEANS.T_BOOLEANS.ID); + public static final org.jooq.UniqueKey PK_T_DATES = createUniqueKey(org.jooq.test.oracle3.generatedclasses.tables.T_DATES.T_DATES, org.jooq.test.oracle3.generatedclasses.tables.T_DATES.T_DATES.ID); + public static final org.jooq.UniqueKey PK_T_DIRECTORY = createUniqueKey(org.jooq.test.oracle3.generatedclasses.tables.T_DIRECTORY.T_DIRECTORY, org.jooq.test.oracle3.generatedclasses.tables.T_DIRECTORY.T_DIRECTORY.ID); + public static final org.jooq.UniqueKey PK_T_TRIGGERS = createUniqueKey(org.jooq.test.oracle3.generatedclasses.tables.T_TRIGGERS.T_TRIGGERS, org.jooq.test.oracle3.generatedclasses.tables.T_TRIGGERS.T_TRIGGERS.ID_GENERATED); + public static final org.jooq.UniqueKey PK_T_639_NUMBERS_TABLE = createUniqueKey(org.jooq.test.oracle3.generatedclasses.tables.T_639_NUMBERS_TABLE.T_639_NUMBERS_TABLE, org.jooq.test.oracle3.generatedclasses.tables.T_639_NUMBERS_TABLE.T_639_NUMBERS_TABLE.ID); + public static final org.jooq.UniqueKey PK_T_725_LOB_TEST = createUniqueKey(org.jooq.test.oracle3.generatedclasses.tables.T_725_LOB_TEST.T_725_LOB_TEST, org.jooq.test.oracle3.generatedclasses.tables.T_725_LOB_TEST.T_725_LOB_TEST.ID); + public static final org.jooq.UniqueKey PK_X_TEST_CASE_64_69 = createUniqueKey(org.jooq.test.oracle3.generatedclasses.tables.X_TEST_CASE_64_69.X_TEST_CASE_64_69, org.jooq.test.oracle3.generatedclasses.tables.X_TEST_CASE_64_69.X_TEST_CASE_64_69.ID); + public static final org.jooq.UniqueKey PK_X_TEST_CASE_71 = createUniqueKey(org.jooq.test.oracle3.generatedclasses.tables.X_TEST_CASE_71.X_TEST_CASE_71, org.jooq.test.oracle3.generatedclasses.tables.X_TEST_CASE_71.X_TEST_CASE_71.ID); + public static final org.jooq.UniqueKey PK_X_TEST_CASE_85 = createUniqueKey(org.jooq.test.oracle3.generatedclasses.tables.X_TEST_CASE_85.X_TEST_CASE_85, org.jooq.test.oracle3.generatedclasses.tables.X_TEST_CASE_85.X_TEST_CASE_85.ID); + public static final org.jooq.UniqueKey PK_X_UNUSED = createUniqueKey(org.jooq.test.oracle3.generatedclasses.tables.X_UNUSED.X_UNUSED, org.jooq.test.oracle3.generatedclasses.tables.X_UNUSED.X_UNUSED.ID, org.jooq.test.oracle3.generatedclasses.tables.X_UNUSED.X_UNUSED.NAME); + public static final org.jooq.UniqueKey UK_X_UNUSED_ID = createUniqueKey(org.jooq.test.oracle3.generatedclasses.tables.X_UNUSED.X_UNUSED, org.jooq.test.oracle3.generatedclasses.tables.X_UNUSED.X_UNUSED.ID); + + // FOREIGN KEY definitions + public static final org.jooq.ForeignKey FK_T_BOOK_AUTHOR_ID = createForeignKey(PK_T_AUTHOR, org.jooq.test.oracle3.generatedclasses.tables.T_BOOK.T_BOOK, org.jooq.test.oracle3.generatedclasses.tables.T_BOOK.T_BOOK.AUTHOR_ID); + public static final org.jooq.ForeignKey FK_T_BOOK_CO_AUTHOR_ID = createForeignKey(PK_T_AUTHOR, org.jooq.test.oracle3.generatedclasses.tables.T_BOOK.T_BOOK, org.jooq.test.oracle3.generatedclasses.tables.T_BOOK.T_BOOK.CO_AUTHOR_ID); + public static final org.jooq.ForeignKey FK_B2BS_BS_NAME = createForeignKey(UK_T_BOOK_STORE_NAME, org.jooq.test.oracle3.generatedclasses.tables.T_BOOK_TO_BOOK_STORE.T_BOOK_TO_BOOK_STORE, org.jooq.test.oracle3.generatedclasses.tables.T_BOOK_TO_BOOK_STORE.T_BOOK_TO_BOOK_STORE.BOOK_STORE_NAME); + public static final org.jooq.ForeignKey FK_B2BS_B_ID = createForeignKey(PK_T_BOOK, org.jooq.test.oracle3.generatedclasses.tables.T_BOOK_TO_BOOK_STORE.T_BOOK_TO_BOOK_STORE, org.jooq.test.oracle3.generatedclasses.tables.T_BOOK_TO_BOOK_STORE.T_BOOK_TO_BOOK_STORE.BOOK_ID); + public static final org.jooq.ForeignKey PK_T_DIRECTORY_SELF = createForeignKey(PK_T_DIRECTORY, org.jooq.test.oracle3.generatedclasses.tables.T_DIRECTORY.T_DIRECTORY, org.jooq.test.oracle3.generatedclasses.tables.T_DIRECTORY.T_DIRECTORY.PARENT_ID); + public static final org.jooq.ForeignKey FK_X_TEST_CASE_64_69A = createForeignKey(UK_X_UNUSED_ID, org.jooq.test.oracle3.generatedclasses.tables.X_TEST_CASE_64_69.X_TEST_CASE_64_69, org.jooq.test.oracle3.generatedclasses.tables.X_TEST_CASE_64_69.X_TEST_CASE_64_69.UNUSED_ID); + public static final org.jooq.ForeignKey FK_X_TEST_CASE_71 = createForeignKey(PK_X_TEST_CASE_64_69, org.jooq.test.oracle3.generatedclasses.tables.X_TEST_CASE_71.X_TEST_CASE_71, org.jooq.test.oracle3.generatedclasses.tables.X_TEST_CASE_71.X_TEST_CASE_71.TEST_CASE_64_69_ID); + public static final org.jooq.ForeignKey FK_X_TEST_CASE_85 = createForeignKey(PK_X_UNUSED, org.jooq.test.oracle3.generatedclasses.tables.X_TEST_CASE_85.X_TEST_CASE_85, org.jooq.test.oracle3.generatedclasses.tables.X_TEST_CASE_85.X_TEST_CASE_85.X_UNUSED_ID, org.jooq.test.oracle3.generatedclasses.tables.X_TEST_CASE_85.X_TEST_CASE_85.X_UNUSED_NAME); + public static final org.jooq.ForeignKey FK_X_UNUSED_SELF = createForeignKey(PK_X_UNUSED, org.jooq.test.oracle3.generatedclasses.tables.X_UNUSED.X_UNUSED, org.jooq.test.oracle3.generatedclasses.tables.X_UNUSED.X_UNUSED.ID_REF, org.jooq.test.oracle3.generatedclasses.tables.X_UNUSED.X_UNUSED.NAME_REF); + + /** + * No instances + */ + private Keys() {} +} diff --git a/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/Routines.java b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/Routines.java new file mode 100644 index 00000000000..54186874fe7 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/Routines.java @@ -0,0 +1,994 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle3.generatedclasses; + +/** + * This class is generated by jOOQ. + * + * Convenience access to all stored procedures and functions in TEST + */ +public final class Routines { + + /** + * Call TEST.F_ARRAYS1 + * + * @param IN_ARRAY + * @throws org.jooq.exception.DataAccessException if something went wrong executing the query + */ + public static org.jooq.test.oracle3.generatedclasses.udt.records.U_NUMBER_ARRAY call_F_ARRAYS1(org.jooq.Configuration configuration, org.jooq.test.oracle3.generatedclasses.udt.records.U_NUMBER_ARRAY IN_ARRAY) { + org.jooq.test.oracle3.generatedclasses.routines.F_ARRAYS1 f = new org.jooq.test.oracle3.generatedclasses.routines.F_ARRAYS1(); + f.setIN_ARRAY(IN_ARRAY); + + f.execute(configuration); + return f.getReturnValue(); + } + + /** + * Get TEST.F_ARRAYS1 as a field + * + * @param IN_ARRAY + */ + public static org.jooq.Field call_F_ARRAYS1(org.jooq.test.oracle3.generatedclasses.udt.records.U_NUMBER_ARRAY IN_ARRAY) { + org.jooq.test.oracle3.generatedclasses.routines.F_ARRAYS1 f = new org.jooq.test.oracle3.generatedclasses.routines.F_ARRAYS1(); + f.setIN_ARRAY(IN_ARRAY); + + return f.asField(); + } + + /** + * Get TEST.F_ARRAYS1 as a field + * + * @param IN_ARRAY + */ + public static org.jooq.Field call_F_ARRAYS1(org.jooq.Field IN_ARRAY) { + org.jooq.test.oracle3.generatedclasses.routines.F_ARRAYS1 f = new org.jooq.test.oracle3.generatedclasses.routines.F_ARRAYS1(); + f.setIN_ARRAY(IN_ARRAY); + + return f.asField(); + } + + /** + * Call TEST.F_ARRAYS2 + * + * @param IN_ARRAY + * @throws org.jooq.exception.DataAccessException if something went wrong executing the query + */ + public static org.jooq.test.oracle3.generatedclasses.udt.records.U_NUMBER_LONG_ARRAY call_F_ARRAYS2(org.jooq.Configuration configuration, org.jooq.test.oracle3.generatedclasses.udt.records.U_NUMBER_LONG_ARRAY IN_ARRAY) { + org.jooq.test.oracle3.generatedclasses.routines.F_ARRAYS2 f = new org.jooq.test.oracle3.generatedclasses.routines.F_ARRAYS2(); + f.setIN_ARRAY(IN_ARRAY); + + f.execute(configuration); + return f.getReturnValue(); + } + + /** + * Get TEST.F_ARRAYS2 as a field + * + * @param IN_ARRAY + */ + public static org.jooq.Field call_F_ARRAYS2(org.jooq.test.oracle3.generatedclasses.udt.records.U_NUMBER_LONG_ARRAY IN_ARRAY) { + org.jooq.test.oracle3.generatedclasses.routines.F_ARRAYS2 f = new org.jooq.test.oracle3.generatedclasses.routines.F_ARRAYS2(); + f.setIN_ARRAY(IN_ARRAY); + + return f.asField(); + } + + /** + * Get TEST.F_ARRAYS2 as a field + * + * @param IN_ARRAY + */ + public static org.jooq.Field call_F_ARRAYS2(org.jooq.Field IN_ARRAY) { + org.jooq.test.oracle3.generatedclasses.routines.F_ARRAYS2 f = new org.jooq.test.oracle3.generatedclasses.routines.F_ARRAYS2(); + f.setIN_ARRAY(IN_ARRAY); + + return f.asField(); + } + + /** + * Call TEST.F_ARRAYS3 + * + * @param IN_ARRAY + * @throws org.jooq.exception.DataAccessException if something went wrong executing the query + */ + public static org.jooq.test.oracle3.generatedclasses.udt.records.U_STRING_ARRAY call_F_ARRAYS3(org.jooq.Configuration configuration, org.jooq.test.oracle3.generatedclasses.udt.records.U_STRING_ARRAY IN_ARRAY) { + org.jooq.test.oracle3.generatedclasses.routines.F_ARRAYS3 f = new org.jooq.test.oracle3.generatedclasses.routines.F_ARRAYS3(); + f.setIN_ARRAY(IN_ARRAY); + + f.execute(configuration); + return f.getReturnValue(); + } + + /** + * Get TEST.F_ARRAYS3 as a field + * + * @param IN_ARRAY + */ + public static org.jooq.Field call_F_ARRAYS3(org.jooq.test.oracle3.generatedclasses.udt.records.U_STRING_ARRAY IN_ARRAY) { + org.jooq.test.oracle3.generatedclasses.routines.F_ARRAYS3 f = new org.jooq.test.oracle3.generatedclasses.routines.F_ARRAYS3(); + f.setIN_ARRAY(IN_ARRAY); + + return f.asField(); + } + + /** + * Get TEST.F_ARRAYS3 as a field + * + * @param IN_ARRAY + */ + public static org.jooq.Field call_F_ARRAYS3(org.jooq.Field IN_ARRAY) { + org.jooq.test.oracle3.generatedclasses.routines.F_ARRAYS3 f = new org.jooq.test.oracle3.generatedclasses.routines.F_ARRAYS3(); + f.setIN_ARRAY(IN_ARRAY); + + return f.asField(); + } + + /** + * Call TEST.F_ARRAYS4 + * + * @param IN_ARRAY + * @throws org.jooq.exception.DataAccessException if something went wrong executing the query + */ + public static org.jooq.test.oracle3.generatedclasses.udt.records.U_BOOK_ARRAY call_F_ARRAYS4(org.jooq.Configuration configuration, org.jooq.test.oracle3.generatedclasses.udt.records.U_BOOK_ARRAY IN_ARRAY) { + org.jooq.test.oracle3.generatedclasses.routines.F_ARRAYS4 f = new org.jooq.test.oracle3.generatedclasses.routines.F_ARRAYS4(); + f.setIN_ARRAY(IN_ARRAY); + + f.execute(configuration); + return f.getReturnValue(); + } + + /** + * Get TEST.F_ARRAYS4 as a field + * + * @param IN_ARRAY + */ + public static org.jooq.Field call_F_ARRAYS4(org.jooq.test.oracle3.generatedclasses.udt.records.U_BOOK_ARRAY IN_ARRAY) { + org.jooq.test.oracle3.generatedclasses.routines.F_ARRAYS4 f = new org.jooq.test.oracle3.generatedclasses.routines.F_ARRAYS4(); + f.setIN_ARRAY(IN_ARRAY); + + return f.asField(); + } + + /** + * Get TEST.F_ARRAYS4 as a field + * + * @param IN_ARRAY + */ + public static org.jooq.Field call_F_ARRAYS4(org.jooq.Field IN_ARRAY) { + org.jooq.test.oracle3.generatedclasses.routines.F_ARRAYS4 f = new org.jooq.test.oracle3.generatedclasses.routines.F_ARRAYS4(); + f.setIN_ARRAY(IN_ARRAY); + + return f.asField(); + } + + /** + * Call TEST.F_AUTHOR_EXISTS + * + * @param AUTHOR_NAME + * @throws org.jooq.exception.DataAccessException if something went wrong executing the query + */ + public static java.math.BigDecimal call_F_AUTHOR_EXISTS(org.jooq.Configuration configuration, java.lang.String AUTHOR_NAME) { + org.jooq.test.oracle3.generatedclasses.routines.F_AUTHOR_EXISTS f = new org.jooq.test.oracle3.generatedclasses.routines.F_AUTHOR_EXISTS(); + f.setAUTHOR_NAME(AUTHOR_NAME); + + f.execute(configuration); + return f.getReturnValue(); + } + + /** + * Get TEST.F_AUTHOR_EXISTS as a field + * + * @param AUTHOR_NAME + */ + public static org.jooq.Field call_F_AUTHOR_EXISTS(java.lang.String AUTHOR_NAME) { + org.jooq.test.oracle3.generatedclasses.routines.F_AUTHOR_EXISTS f = new org.jooq.test.oracle3.generatedclasses.routines.F_AUTHOR_EXISTS(); + f.setAUTHOR_NAME(AUTHOR_NAME); + + return f.asField(); + } + + /** + * Get TEST.F_AUTHOR_EXISTS as a field + * + * @param AUTHOR_NAME + */ + public static org.jooq.Field call_F_AUTHOR_EXISTS(org.jooq.Field AUTHOR_NAME) { + org.jooq.test.oracle3.generatedclasses.routines.F_AUTHOR_EXISTS f = new org.jooq.test.oracle3.generatedclasses.routines.F_AUTHOR_EXISTS(); + f.setAUTHOR_NAME(AUTHOR_NAME); + + return f.asField(); + } + + /** + * Call TEST.F_GET_ONE_CURSOR + * + * @param BOOK_IDS + * @throws org.jooq.exception.DataAccessException if something went wrong executing the query + */ + public static org.jooq.Result call_F_GET_ONE_CURSOR(org.jooq.Configuration configuration, org.jooq.test.oracle3.generatedclasses.udt.records.U_NUMBER_ARRAY BOOK_IDS) { + org.jooq.test.oracle3.generatedclasses.routines.F_GET_ONE_CURSOR f = new org.jooq.test.oracle3.generatedclasses.routines.F_GET_ONE_CURSOR(); + f.setBOOK_IDS(BOOK_IDS); + + f.execute(configuration); + return f.getReturnValue(); + } + + /** + * Get TEST.F_GET_ONE_CURSOR as a field + * + * @param BOOK_IDS + */ + public static org.jooq.Field> call_F_GET_ONE_CURSOR(org.jooq.test.oracle3.generatedclasses.udt.records.U_NUMBER_ARRAY BOOK_IDS) { + org.jooq.test.oracle3.generatedclasses.routines.F_GET_ONE_CURSOR f = new org.jooq.test.oracle3.generatedclasses.routines.F_GET_ONE_CURSOR(); + f.setBOOK_IDS(BOOK_IDS); + + return f.asField(); + } + + /** + * Get TEST.F_GET_ONE_CURSOR as a field + * + * @param BOOK_IDS + */ + public static org.jooq.Field> call_F_GET_ONE_CURSOR(org.jooq.Field BOOK_IDS) { + org.jooq.test.oracle3.generatedclasses.routines.F_GET_ONE_CURSOR f = new org.jooq.test.oracle3.generatedclasses.routines.F_GET_ONE_CURSOR(); + f.setBOOK_IDS(BOOK_IDS); + + return f.asField(); + } + + /** + * Call TEST.F_NUMBER + * + * @param N + * @throws org.jooq.exception.DataAccessException if something went wrong executing the query + */ + public static java.math.BigDecimal call_F_NUMBER(org.jooq.Configuration configuration, java.lang.Number N) { + org.jooq.test.oracle3.generatedclasses.routines.F_NUMBER f = new org.jooq.test.oracle3.generatedclasses.routines.F_NUMBER(); + f.setN(N); + + f.execute(configuration); + return f.getReturnValue(); + } + + /** + * Get TEST.F_NUMBER as a field + * + * @param N + */ + public static org.jooq.Field call_F_NUMBER(java.lang.Number N) { + org.jooq.test.oracle3.generatedclasses.routines.F_NUMBER f = new org.jooq.test.oracle3.generatedclasses.routines.F_NUMBER(); + f.setN(N); + + return f.asField(); + } + + /** + * Get TEST.F_NUMBER as a field + * + * @param N + */ + public static org.jooq.Field call_F_NUMBER(org.jooq.Field N) { + org.jooq.test.oracle3.generatedclasses.routines.F_NUMBER f = new org.jooq.test.oracle3.generatedclasses.routines.F_NUMBER(); + f.setN(N); + + return f.asField(); + } + + /** + * Call TEST.F_ONE + * + * @throws org.jooq.exception.DataAccessException if something went wrong executing the query + */ + public static java.math.BigDecimal call_F_ONE(org.jooq.Configuration configuration) { + org.jooq.test.oracle3.generatedclasses.routines.F_ONE f = new org.jooq.test.oracle3.generatedclasses.routines.F_ONE(); + + f.execute(configuration); + return f.getReturnValue(); + } + + /** + * Get TEST.F_ONE as a field + * + */ + public static org.jooq.Field call_F_ONE() { + org.jooq.test.oracle3.generatedclasses.routines.F_ONE f = new org.jooq.test.oracle3.generatedclasses.routines.F_ONE(); + + return f.asField(); + } + + /** + * Call TEST.F_PIPELINED_ARRAY1 + * + * @throws org.jooq.exception.DataAccessException if something went wrong executing the query + */ + public static org.jooq.test.oracle3.generatedclasses.udt.records.U_NUMBER_ARRAY call_F_PIPELINED_ARRAY1(org.jooq.Configuration configuration) { + org.jooq.test.oracle3.generatedclasses.routines.F_PIPELINED_ARRAY1 f = new org.jooq.test.oracle3.generatedclasses.routines.F_PIPELINED_ARRAY1(); + + f.execute(configuration); + return f.getReturnValue(); + } + + /** + * Get TEST.F_PIPELINED_ARRAY1 as a field + * + */ + public static org.jooq.Field call_F_PIPELINED_ARRAY1() { + org.jooq.test.oracle3.generatedclasses.routines.F_PIPELINED_ARRAY1 f = new org.jooq.test.oracle3.generatedclasses.routines.F_PIPELINED_ARRAY1(); + + return f.asField(); + } + + /** + * Call TEST.F_PIPELINED_ARRAY4 + * + * @throws org.jooq.exception.DataAccessException if something went wrong executing the query + */ + public static org.jooq.test.oracle3.generatedclasses.udt.records.U_BOOK_ARRAY call_F_PIPELINED_ARRAY4(org.jooq.Configuration configuration) { + org.jooq.test.oracle3.generatedclasses.routines.F_PIPELINED_ARRAY4 f = new org.jooq.test.oracle3.generatedclasses.routines.F_PIPELINED_ARRAY4(); + + f.execute(configuration); + return f.getReturnValue(); + } + + /** + * Get TEST.F_PIPELINED_ARRAY4 as a field + * + */ + public static org.jooq.Field call_F_PIPELINED_ARRAY4() { + org.jooq.test.oracle3.generatedclasses.routines.F_PIPELINED_ARRAY4 f = new org.jooq.test.oracle3.generatedclasses.routines.F_PIPELINED_ARRAY4(); + + return f.asField(); + } + + /** + * Call TEST.F_PIPELINED_TABLE1 + * + * @throws org.jooq.exception.DataAccessException if something went wrong executing the query + */ + public static org.jooq.test.oracle3.generatedclasses.udt.records.U_NUMBER_TABLE call_F_PIPELINED_TABLE1(org.jooq.Configuration configuration) { + org.jooq.test.oracle3.generatedclasses.routines.F_PIPELINED_TABLE1 f = new org.jooq.test.oracle3.generatedclasses.routines.F_PIPELINED_TABLE1(); + + f.execute(configuration); + return f.getReturnValue(); + } + + /** + * Get TEST.F_PIPELINED_TABLE1 as a field + * + */ + public static org.jooq.Field call_F_PIPELINED_TABLE1() { + org.jooq.test.oracle3.generatedclasses.routines.F_PIPELINED_TABLE1 f = new org.jooq.test.oracle3.generatedclasses.routines.F_PIPELINED_TABLE1(); + + return f.asField(); + } + + /** + * Call TEST.F_PIPELINED_TABLE4 + * + * @throws org.jooq.exception.DataAccessException if something went wrong executing the query + */ + public static org.jooq.test.oracle3.generatedclasses.udt.records.U_BOOK_TABLE call_F_PIPELINED_TABLE4(org.jooq.Configuration configuration) { + org.jooq.test.oracle3.generatedclasses.routines.F_PIPELINED_TABLE4 f = new org.jooq.test.oracle3.generatedclasses.routines.F_PIPELINED_TABLE4(); + + f.execute(configuration); + return f.getReturnValue(); + } + + /** + * Get TEST.F_PIPELINED_TABLE4 as a field + * + */ + public static org.jooq.Field call_F_PIPELINED_TABLE4() { + org.jooq.test.oracle3.generatedclasses.routines.F_PIPELINED_TABLE4 f = new org.jooq.test.oracle3.generatedclasses.routines.F_PIPELINED_TABLE4(); + + return f.asField(); + } + + /** + * Call TEST.F_TABLES1 + * + * @param IN_TABLE + * @throws org.jooq.exception.DataAccessException if something went wrong executing the query + */ + public static org.jooq.test.oracle3.generatedclasses.udt.records.U_NUMBER_TABLE call_F_TABLES1(org.jooq.Configuration configuration, org.jooq.test.oracle3.generatedclasses.udt.records.U_NUMBER_TABLE IN_TABLE) { + org.jooq.test.oracle3.generatedclasses.routines.F_TABLES1 f = new org.jooq.test.oracle3.generatedclasses.routines.F_TABLES1(); + f.setIN_TABLE(IN_TABLE); + + f.execute(configuration); + return f.getReturnValue(); + } + + /** + * Get TEST.F_TABLES1 as a field + * + * @param IN_TABLE + */ + public static org.jooq.Field call_F_TABLES1(org.jooq.test.oracle3.generatedclasses.udt.records.U_NUMBER_TABLE IN_TABLE) { + org.jooq.test.oracle3.generatedclasses.routines.F_TABLES1 f = new org.jooq.test.oracle3.generatedclasses.routines.F_TABLES1(); + f.setIN_TABLE(IN_TABLE); + + return f.asField(); + } + + /** + * Get TEST.F_TABLES1 as a field + * + * @param IN_TABLE + */ + public static org.jooq.Field call_F_TABLES1(org.jooq.Field IN_TABLE) { + org.jooq.test.oracle3.generatedclasses.routines.F_TABLES1 f = new org.jooq.test.oracle3.generatedclasses.routines.F_TABLES1(); + f.setIN_TABLE(IN_TABLE); + + return f.asField(); + } + + /** + * Call TEST.F_TABLES2 + * + * @param IN_TABLE + * @throws org.jooq.exception.DataAccessException if something went wrong executing the query + */ + public static org.jooq.test.oracle3.generatedclasses.udt.records.U_NUMBER_LONG_TABLE call_F_TABLES2(org.jooq.Configuration configuration, org.jooq.test.oracle3.generatedclasses.udt.records.U_NUMBER_LONG_TABLE IN_TABLE) { + org.jooq.test.oracle3.generatedclasses.routines.F_TABLES2 f = new org.jooq.test.oracle3.generatedclasses.routines.F_TABLES2(); + f.setIN_TABLE(IN_TABLE); + + f.execute(configuration); + return f.getReturnValue(); + } + + /** + * Get TEST.F_TABLES2 as a field + * + * @param IN_TABLE + */ + public static org.jooq.Field call_F_TABLES2(org.jooq.test.oracle3.generatedclasses.udt.records.U_NUMBER_LONG_TABLE IN_TABLE) { + org.jooq.test.oracle3.generatedclasses.routines.F_TABLES2 f = new org.jooq.test.oracle3.generatedclasses.routines.F_TABLES2(); + f.setIN_TABLE(IN_TABLE); + + return f.asField(); + } + + /** + * Get TEST.F_TABLES2 as a field + * + * @param IN_TABLE + */ + public static org.jooq.Field call_F_TABLES2(org.jooq.Field IN_TABLE) { + org.jooq.test.oracle3.generatedclasses.routines.F_TABLES2 f = new org.jooq.test.oracle3.generatedclasses.routines.F_TABLES2(); + f.setIN_TABLE(IN_TABLE); + + return f.asField(); + } + + /** + * Call TEST.F_TABLES3 + * + * @param IN_TABLE + * @throws org.jooq.exception.DataAccessException if something went wrong executing the query + */ + public static org.jooq.test.oracle3.generatedclasses.udt.records.U_STRING_TABLE call_F_TABLES3(org.jooq.Configuration configuration, org.jooq.test.oracle3.generatedclasses.udt.records.U_STRING_TABLE IN_TABLE) { + org.jooq.test.oracle3.generatedclasses.routines.F_TABLES3 f = new org.jooq.test.oracle3.generatedclasses.routines.F_TABLES3(); + f.setIN_TABLE(IN_TABLE); + + f.execute(configuration); + return f.getReturnValue(); + } + + /** + * Get TEST.F_TABLES3 as a field + * + * @param IN_TABLE + */ + public static org.jooq.Field call_F_TABLES3(org.jooq.test.oracle3.generatedclasses.udt.records.U_STRING_TABLE IN_TABLE) { + org.jooq.test.oracle3.generatedclasses.routines.F_TABLES3 f = new org.jooq.test.oracle3.generatedclasses.routines.F_TABLES3(); + f.setIN_TABLE(IN_TABLE); + + return f.asField(); + } + + /** + * Get TEST.F_TABLES3 as a field + * + * @param IN_TABLE + */ + public static org.jooq.Field call_F_TABLES3(org.jooq.Field IN_TABLE) { + org.jooq.test.oracle3.generatedclasses.routines.F_TABLES3 f = new org.jooq.test.oracle3.generatedclasses.routines.F_TABLES3(); + f.setIN_TABLE(IN_TABLE); + + return f.asField(); + } + + /** + * Call TEST.F_TABLES4 + * + * @param IN_TABLE + * @throws org.jooq.exception.DataAccessException if something went wrong executing the query + */ + public static org.jooq.test.oracle3.generatedclasses.udt.records.U_BOOK_TABLE call_F_TABLES4(org.jooq.Configuration configuration, org.jooq.test.oracle3.generatedclasses.udt.records.U_BOOK_TABLE IN_TABLE) { + org.jooq.test.oracle3.generatedclasses.routines.F_TABLES4 f = new org.jooq.test.oracle3.generatedclasses.routines.F_TABLES4(); + f.setIN_TABLE(IN_TABLE); + + f.execute(configuration); + return f.getReturnValue(); + } + + /** + * Get TEST.F_TABLES4 as a field + * + * @param IN_TABLE + */ + public static org.jooq.Field call_F_TABLES4(org.jooq.test.oracle3.generatedclasses.udt.records.U_BOOK_TABLE IN_TABLE) { + org.jooq.test.oracle3.generatedclasses.routines.F_TABLES4 f = new org.jooq.test.oracle3.generatedclasses.routines.F_TABLES4(); + f.setIN_TABLE(IN_TABLE); + + return f.asField(); + } + + /** + * Get TEST.F_TABLES4 as a field + * + * @param IN_TABLE + */ + public static org.jooq.Field call_F_TABLES4(org.jooq.Field IN_TABLE) { + org.jooq.test.oracle3.generatedclasses.routines.F_TABLES4 f = new org.jooq.test.oracle3.generatedclasses.routines.F_TABLES4(); + f.setIN_TABLE(IN_TABLE); + + return f.asField(); + } + + /** + * Call TEST.F317 + * + * @param P1 + * @param P2 + * @param P3 + * @param P4 + * @throws org.jooq.exception.DataAccessException if something went wrong executing the query + */ + public static java.math.BigDecimal call_F317(org.jooq.Configuration configuration, java.lang.Number P1, java.lang.Number P2, java.lang.Number P3, java.lang.Number P4) { + org.jooq.test.oracle3.generatedclasses.routines.F317 f = new org.jooq.test.oracle3.generatedclasses.routines.F317(); + f.setP1(P1); + f.setP2(P2); + f.setP3(P3); + f.setP4(P4); + + f.execute(configuration); + return f.getReturnValue(); + } + + /** + * Get TEST.F317 as a field + * + * @param P1 + * @param P2 + * @param P3 + * @param P4 + */ + public static org.jooq.Field call_F317(java.lang.Number P1, java.lang.Number P2, java.lang.Number P3, java.lang.Number P4) { + org.jooq.test.oracle3.generatedclasses.routines.F317 f = new org.jooq.test.oracle3.generatedclasses.routines.F317(); + f.setP1(P1); + f.setP2(P2); + f.setP3(P3); + f.setP4(P4); + + return f.asField(); + } + + /** + * Get TEST.F317 as a field + * + * @param P1 + * @param P2 + * @param P3 + * @param P4 + */ + public static org.jooq.Field call_F317(org.jooq.Field P1, org.jooq.Field P2, org.jooq.Field P3, org.jooq.Field P4) { + org.jooq.test.oracle3.generatedclasses.routines.F317 f = new org.jooq.test.oracle3.generatedclasses.routines.F317(); + f.setP1(P1); + f.setP2(P2); + f.setP3(P3); + f.setP4(P4); + + return f.asField(); + } + + /** + * Call TEST.F377 + * + * @throws org.jooq.exception.DataAccessException if something went wrong executing the query + */ + public static void call_F377(org.jooq.Configuration configuration) { + org.jooq.test.oracle3.generatedclasses.routines.F377 p = new org.jooq.test.oracle3.generatedclasses.routines.F377(); + + p.execute(configuration); + } + + /** + * Call TEST.F378 + * + * @param RETURN_VALUE OUT parameter + * @param I IN parameter + * @param IO IN OUT parameter + * @param O OUT parameter + * @throws org.jooq.exception.DataAccessException if something went wrong executing the query + */ + public static org.jooq.test.oracle3.generatedclasses.routines.F378 call_F378(org.jooq.Configuration configuration, java.lang.Number I, java.lang.Number IO) { + org.jooq.test.oracle3.generatedclasses.routines.F378 p = new org.jooq.test.oracle3.generatedclasses.routines.F378(); + p.setI(I); + p.setIO(IO); + + p.execute(configuration); + return p; + } + + /** + * Call TEST.F691CURSOR_IN + * + * @param C + * @throws org.jooq.exception.DataAccessException if something went wrong executing the query + */ + public static java.math.BigDecimal call_F691CURSOR_IN(org.jooq.Configuration configuration, org.jooq.Result C) { + org.jooq.test.oracle3.generatedclasses.routines.F691CURSOR_IN f = new org.jooq.test.oracle3.generatedclasses.routines.F691CURSOR_IN(); + f.setC(C); + + f.execute(configuration); + return f.getReturnValue(); + } + + /** + * Get TEST.F691CURSOR_IN as a field + * + * @param C + */ + public static org.jooq.Field call_F691CURSOR_IN(org.jooq.Result C) { + org.jooq.test.oracle3.generatedclasses.routines.F691CURSOR_IN f = new org.jooq.test.oracle3.generatedclasses.routines.F691CURSOR_IN(); + f.setC(C); + + return f.asField(); + } + + /** + * Get TEST.F691CURSOR_IN as a field + * + * @param C + */ + public static org.jooq.Field call_F691CURSOR_IN(org.jooq.Field> C) { + org.jooq.test.oracle3.generatedclasses.routines.F691CURSOR_IN f = new org.jooq.test.oracle3.generatedclasses.routines.F691CURSOR_IN(); + f.setC(C); + + return f.asField(); + } + + /** + * Call TEST.F691CURSOR_OUT + * + * @throws org.jooq.exception.DataAccessException if something went wrong executing the query + */ + public static org.jooq.Result call_F691CURSOR_OUT(org.jooq.Configuration configuration) { + org.jooq.test.oracle3.generatedclasses.routines.F691CURSOR_OUT f = new org.jooq.test.oracle3.generatedclasses.routines.F691CURSOR_OUT(); + + f.execute(configuration); + return f.getReturnValue(); + } + + /** + * Get TEST.F691CURSOR_OUT as a field + * + */ + public static org.jooq.Field> call_F691CURSOR_OUT() { + org.jooq.test.oracle3.generatedclasses.routines.F691CURSOR_OUT f = new org.jooq.test.oracle3.generatedclasses.routines.F691CURSOR_OUT(); + + return f.asField(); + } + + /** + * Call TEST.P_ARRAYS1 + * + * @param IN_ARRAY IN parameter + * @param OUT_ARRAY OUT parameter + * @throws org.jooq.exception.DataAccessException if something went wrong executing the query + */ + public static org.jooq.test.oracle3.generatedclasses.udt.records.U_NUMBER_ARRAY call_P_ARRAYS1(org.jooq.Configuration configuration, org.jooq.test.oracle3.generatedclasses.udt.records.U_NUMBER_ARRAY IN_ARRAY) { + org.jooq.test.oracle3.generatedclasses.routines.P_ARRAYS1 p = new org.jooq.test.oracle3.generatedclasses.routines.P_ARRAYS1(); + p.setIN_ARRAY(IN_ARRAY); + + p.execute(configuration); + return p.getOUT_ARRAY(); + } + + /** + * Call TEST.P_ARRAYS2 + * + * @param IN_ARRAY IN parameter + * @param OUT_ARRAY OUT parameter + * @throws org.jooq.exception.DataAccessException if something went wrong executing the query + */ + public static org.jooq.test.oracle3.generatedclasses.udt.records.U_NUMBER_LONG_ARRAY call_P_ARRAYS2(org.jooq.Configuration configuration, org.jooq.test.oracle3.generatedclasses.udt.records.U_NUMBER_LONG_ARRAY IN_ARRAY) { + org.jooq.test.oracle3.generatedclasses.routines.P_ARRAYS2 p = new org.jooq.test.oracle3.generatedclasses.routines.P_ARRAYS2(); + p.setIN_ARRAY(IN_ARRAY); + + p.execute(configuration); + return p.getOUT_ARRAY(); + } + + /** + * Call TEST.P_ARRAYS3 + * + * @param IN_ARRAY IN parameter + * @param OUT_ARRAY OUT parameter + * @throws org.jooq.exception.DataAccessException if something went wrong executing the query + */ + public static org.jooq.test.oracle3.generatedclasses.udt.records.U_STRING_ARRAY call_P_ARRAYS3(org.jooq.Configuration configuration, org.jooq.test.oracle3.generatedclasses.udt.records.U_STRING_ARRAY IN_ARRAY) { + org.jooq.test.oracle3.generatedclasses.routines.P_ARRAYS3 p = new org.jooq.test.oracle3.generatedclasses.routines.P_ARRAYS3(); + p.setIN_ARRAY(IN_ARRAY); + + p.execute(configuration); + return p.getOUT_ARRAY(); + } + + /** + * Call TEST.P_ARRAYS4 + * + * @param IN_ARRAY IN parameter + * @param OUT_ARRAY OUT parameter + * @throws org.jooq.exception.DataAccessException if something went wrong executing the query + */ + public static org.jooq.test.oracle3.generatedclasses.udt.records.U_BOOK_ARRAY call_P_ARRAYS4(org.jooq.Configuration configuration, org.jooq.test.oracle3.generatedclasses.udt.records.U_BOOK_ARRAY IN_ARRAY) { + org.jooq.test.oracle3.generatedclasses.routines.P_ARRAYS4 p = new org.jooq.test.oracle3.generatedclasses.routines.P_ARRAYS4(); + p.setIN_ARRAY(IN_ARRAY); + + p.execute(configuration); + return p.getOUT_ARRAY(); + } + + /** + * Call TEST.P_AUTHOR_EXISTS + * + * @param AUTHOR_NAME IN parameter + * @param RESULT OUT parameter + * @throws org.jooq.exception.DataAccessException if something went wrong executing the query + */ + public static java.math.BigDecimal call_P_AUTHOR_EXISTS(org.jooq.Configuration configuration, java.lang.String AUTHOR_NAME) { + org.jooq.test.oracle3.generatedclasses.routines.P_AUTHOR_EXISTS p = new org.jooq.test.oracle3.generatedclasses.routines.P_AUTHOR_EXISTS(); + p.setAUTHOR_NAME(AUTHOR_NAME); + + p.execute(configuration); + return p.getRESULT(); + } + + /** + * Call TEST.P_CREATE_AUTHOR + * + * @throws org.jooq.exception.DataAccessException if something went wrong executing the query + */ + public static void call_P_CREATE_AUTHOR(org.jooq.Configuration configuration) { + org.jooq.test.oracle3.generatedclasses.routines.P_CREATE_AUTHOR p = new org.jooq.test.oracle3.generatedclasses.routines.P_CREATE_AUTHOR(); + + p.execute(configuration); + } + + /** + * Call TEST.P_CREATE_AUTHOR_BY_NAME + * + * @param FIRST_NAME IN parameter + * @param LAST_NAME IN parameter + * @throws org.jooq.exception.DataAccessException if something went wrong executing the query + */ + public static void call_P_CREATE_AUTHOR_BY_NAME(org.jooq.Configuration configuration, java.lang.String FIRST_NAME, java.lang.String LAST_NAME) { + org.jooq.test.oracle3.generatedclasses.routines.P_CREATE_AUTHOR_BY_NAME p = new org.jooq.test.oracle3.generatedclasses.routines.P_CREATE_AUTHOR_BY_NAME(); + p.setFIRST_NAME(FIRST_NAME); + p.setLAST_NAME(LAST_NAME); + + p.execute(configuration); + } + + /** + * Call TEST.P_DEFAULT + * + * @param P_IN_NUMBER IN parameter + * @param P_OUT_NUMBER OUT parameter + * @param P_IN_VARCHAR IN parameter + * @param P_OUT_VARCHAR OUT parameter + * @param P_IN_DATE IN parameter + * @param P_OUT_DATE OUT parameter + * @throws org.jooq.exception.DataAccessException if something went wrong executing the query + */ + public static org.jooq.test.oracle3.generatedclasses.routines.P_DEFAULT call_P_DEFAULT(org.jooq.Configuration configuration, java.lang.Number P_IN_NUMBER, java.lang.String P_IN_VARCHAR, java.sql.Date P_IN_DATE) { + org.jooq.test.oracle3.generatedclasses.routines.P_DEFAULT p = new org.jooq.test.oracle3.generatedclasses.routines.P_DEFAULT(); + p.setP_IN_NUMBER(P_IN_NUMBER); + p.setP_IN_VARCHAR(P_IN_VARCHAR); + p.setP_IN_DATE(P_IN_DATE); + + p.execute(configuration); + return p; + } + + /** + * Call TEST.P_ENHANCE_ADDRESS1 + * + * @param ADDRESS IN parameter + * @param NO OUT parameter + * @throws org.jooq.exception.DataAccessException if something went wrong executing the query + */ + public static java.lang.String call_P_ENHANCE_ADDRESS1(org.jooq.Configuration configuration, org.jooq.test.oracle3.generatedclasses.udt.records.U_ADDRESS_TYPE ADDRESS) { + org.jooq.test.oracle3.generatedclasses.routines.P_ENHANCE_ADDRESS1 p = new org.jooq.test.oracle3.generatedclasses.routines.P_ENHANCE_ADDRESS1(); + p.setADDRESS(ADDRESS); + + p.execute(configuration); + return p.getNO(); + } + + /** + * Call TEST.P_ENHANCE_ADDRESS2 + * + * @param ADDRESS OUT parameter + * @throws org.jooq.exception.DataAccessException if something went wrong executing the query + */ + public static org.jooq.test.oracle3.generatedclasses.udt.records.U_ADDRESS_TYPE call_P_ENHANCE_ADDRESS2(org.jooq.Configuration configuration) { + org.jooq.test.oracle3.generatedclasses.routines.P_ENHANCE_ADDRESS2 p = new org.jooq.test.oracle3.generatedclasses.routines.P_ENHANCE_ADDRESS2(); + + p.execute(configuration); + return p.getADDRESS(); + } + + /** + * Call TEST.P_ENHANCE_ADDRESS3 + * + * @param ADDRESS IN OUT parameter + * @throws org.jooq.exception.DataAccessException if something went wrong executing the query + */ + public static org.jooq.test.oracle3.generatedclasses.udt.records.U_ADDRESS_TYPE call_P_ENHANCE_ADDRESS3(org.jooq.Configuration configuration, org.jooq.test.oracle3.generatedclasses.udt.records.U_ADDRESS_TYPE ADDRESS) { + org.jooq.test.oracle3.generatedclasses.routines.P_ENHANCE_ADDRESS3 p = new org.jooq.test.oracle3.generatedclasses.routines.P_ENHANCE_ADDRESS3(); + p.setADDRESS(ADDRESS); + + p.execute(configuration); + return p.getADDRESS(); + } + + /** + * Call TEST.P_GET_ONE_CURSOR + * + * @param TOTAL OUT parameter + * @param BOOKS OUT parameter + * @param BOOK_IDS IN parameter + * @throws org.jooq.exception.DataAccessException if something went wrong executing the query + */ + public static org.jooq.test.oracle3.generatedclasses.routines.P_GET_ONE_CURSOR call_P_GET_ONE_CURSOR(org.jooq.Configuration configuration, org.jooq.test.oracle3.generatedclasses.udt.records.U_NUMBER_ARRAY BOOK_IDS) { + org.jooq.test.oracle3.generatedclasses.routines.P_GET_ONE_CURSOR p = new org.jooq.test.oracle3.generatedclasses.routines.P_GET_ONE_CURSOR(); + p.setBOOK_IDS(BOOK_IDS); + + p.execute(configuration); + return p; + } + + /** + * Call TEST.P_GET_TWO_CURSORS + * + * @param BOOKS OUT parameter + * @param AUTHORS OUT parameter + * @throws org.jooq.exception.DataAccessException if something went wrong executing the query + */ + public static org.jooq.test.oracle3.generatedclasses.routines.P_GET_TWO_CURSORS call_P_GET_TWO_CURSORS(org.jooq.Configuration configuration) { + org.jooq.test.oracle3.generatedclasses.routines.P_GET_TWO_CURSORS p = new org.jooq.test.oracle3.generatedclasses.routines.P_GET_TWO_CURSORS(); + + p.execute(configuration); + return p; + } + + /** + * Call TEST.P_TABLES1 + * + * @param IN_TABLE IN parameter + * @param OUT_TABLE OUT parameter + * @throws org.jooq.exception.DataAccessException if something went wrong executing the query + */ + public static org.jooq.test.oracle3.generatedclasses.udt.records.U_NUMBER_TABLE call_P_TABLES1(org.jooq.Configuration configuration, org.jooq.test.oracle3.generatedclasses.udt.records.U_NUMBER_TABLE IN_TABLE) { + org.jooq.test.oracle3.generatedclasses.routines.P_TABLES1 p = new org.jooq.test.oracle3.generatedclasses.routines.P_TABLES1(); + p.setIN_TABLE(IN_TABLE); + + p.execute(configuration); + return p.getOUT_TABLE(); + } + + /** + * Call TEST.P_TABLES2 + * + * @param IN_TABLE IN parameter + * @param OUT_TABLE OUT parameter + * @throws org.jooq.exception.DataAccessException if something went wrong executing the query + */ + public static org.jooq.test.oracle3.generatedclasses.udt.records.U_NUMBER_LONG_TABLE call_P_TABLES2(org.jooq.Configuration configuration, org.jooq.test.oracle3.generatedclasses.udt.records.U_NUMBER_LONG_TABLE IN_TABLE) { + org.jooq.test.oracle3.generatedclasses.routines.P_TABLES2 p = new org.jooq.test.oracle3.generatedclasses.routines.P_TABLES2(); + p.setIN_TABLE(IN_TABLE); + + p.execute(configuration); + return p.getOUT_TABLE(); + } + + /** + * Call TEST.P_TABLES3 + * + * @param IN_TABLE IN parameter + * @param OUT_TABLE OUT parameter + * @throws org.jooq.exception.DataAccessException if something went wrong executing the query + */ + public static org.jooq.test.oracle3.generatedclasses.udt.records.U_STRING_TABLE call_P_TABLES3(org.jooq.Configuration configuration, org.jooq.test.oracle3.generatedclasses.udt.records.U_STRING_TABLE IN_TABLE) { + org.jooq.test.oracle3.generatedclasses.routines.P_TABLES3 p = new org.jooq.test.oracle3.generatedclasses.routines.P_TABLES3(); + p.setIN_TABLE(IN_TABLE); + + p.execute(configuration); + return p.getOUT_TABLE(); + } + + /** + * Call TEST.P_TABLES4 + * + * @param IN_TABLE IN parameter + * @param OUT_TABLE OUT parameter + * @throws org.jooq.exception.DataAccessException if something went wrong executing the query + */ + public static org.jooq.test.oracle3.generatedclasses.udt.records.U_BOOK_TABLE call_P_TABLES4(org.jooq.Configuration configuration, org.jooq.test.oracle3.generatedclasses.udt.records.U_BOOK_TABLE IN_TABLE) { + org.jooq.test.oracle3.generatedclasses.routines.P_TABLES4 p = new org.jooq.test.oracle3.generatedclasses.routines.P_TABLES4(); + p.setIN_TABLE(IN_TABLE); + + p.execute(configuration); + return p.getOUT_TABLE(); + } + + /** + * Call TEST.P_UNUSED + * + * @param IN1 IN parameter + * @param OUT1 OUT parameter + * @param OUT2 IN OUT parameter + * @throws org.jooq.exception.DataAccessException if something went wrong executing the query + */ + public static org.jooq.test.oracle3.generatedclasses.routines.P_UNUSED call_P_UNUSED(org.jooq.Configuration configuration, java.lang.String IN1, java.lang.Number OUT2) { + org.jooq.test.oracle3.generatedclasses.routines.P_UNUSED p = new org.jooq.test.oracle3.generatedclasses.routines.P_UNUSED(); + p.setIN1(IN1); + p.setOUT2(OUT2); + + p.execute(configuration); + return p; + } + + /** + * Call TEST.P377 + * + * @throws org.jooq.exception.DataAccessException if something went wrong executing the query + */ + public static void call_P377(org.jooq.Configuration configuration) { + org.jooq.test.oracle3.generatedclasses.routines.P377 p = new org.jooq.test.oracle3.generatedclasses.routines.P377(); + + p.execute(configuration); + } + + /** + * Call TEST.P391 + * + * @param I1 IN parameter + * @param IO1 IN OUT parameter + * @param O1 OUT parameter + * @param O2 OUT parameter + * @param IO2 IN OUT parameter + * @param I2 IN parameter + * @throws org.jooq.exception.DataAccessException if something went wrong executing the query + */ + public static org.jooq.test.oracle3.generatedclasses.routines.P391 call_P391(org.jooq.Configuration configuration, java.lang.Number I1, java.lang.Number IO1, java.lang.Number IO2, java.lang.Number I2) { + org.jooq.test.oracle3.generatedclasses.routines.P391 p = new org.jooq.test.oracle3.generatedclasses.routines.P391(); + p.setI1(I1); + p.setIO1(IO1); + p.setIO2(IO2); + p.setI2(I2); + + p.execute(configuration); + return p; + } + + /** + * No instances + */ + private Routines() {} +} diff --git a/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/Sequences.java b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/Sequences.java new file mode 100644 index 00000000000..e2363497585 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/Sequences.java @@ -0,0 +1,47 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle3.generatedclasses; + +/** + * This class is generated by jOOQ. + * + * Convenience access to all sequences in TEST + */ +public final class Sequences { + + /** + * The sequence TEST.S_AUTHOR_ID + */ + public static final org.jooq.Sequence S_AUTHOR_ID = new org.jooq.impl.SequenceImpl("S_AUTHOR_ID", org.jooq.test.oracle3.generatedclasses.TEST.TEST, org.jooq.impl.SQLDataType.INTEGER); + + /** + * The sequence TEST.S_961_BIG_INTEGER + */ + public static final org.jooq.Sequence S_961_BIG_INTEGER = new org.jooq.impl.SequenceImpl("S_961_BIG_INTEGER", org.jooq.test.oracle3.generatedclasses.TEST.TEST, org.jooq.impl.SQLDataType.DECIMAL_INTEGER); + + /** + * The sequence TEST.S_961_BYTE + */ + public static final org.jooq.Sequence S_961_BYTE = new org.jooq.impl.SequenceImpl("S_961_BYTE", org.jooq.test.oracle3.generatedclasses.TEST.TEST, org.jooq.impl.SQLDataType.TINYINT); + + /** + * The sequence TEST.S_961_INT + */ + public static final org.jooq.Sequence S_961_INT = new org.jooq.impl.SequenceImpl("S_961_INT", org.jooq.test.oracle3.generatedclasses.TEST.TEST, org.jooq.impl.SQLDataType.INTEGER); + + /** + * The sequence TEST.S_961_LONG + */ + public static final org.jooq.Sequence S_961_LONG = new org.jooq.impl.SequenceImpl("S_961_LONG", org.jooq.test.oracle3.generatedclasses.TEST.TEST, org.jooq.impl.SQLDataType.BIGINT); + + /** + * The sequence TEST.S_961_SHORT + */ + public static final org.jooq.Sequence S_961_SHORT = new org.jooq.impl.SequenceImpl("S_961_SHORT", org.jooq.test.oracle3.generatedclasses.TEST.TEST, org.jooq.impl.SQLDataType.SMALLINT); + + /** + * No instances + */ + private Sequences() {} +} diff --git a/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/TEST.java b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/TEST.java new file mode 100644 index 00000000000..dd93fc16074 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/TEST.java @@ -0,0 +1,86 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle3.generatedclasses; + +/** + * This class is generated by jOOQ. + */ +public class TEST extends org.jooq.impl.SchemaImpl implements java.lang.Cloneable { + + private static final long serialVersionUID = -1820895606; + + /** + * The singleton instance of TEST + */ + public static final TEST TEST = new TEST(); + + /** + * No further instances allowed + */ + private TEST() { + super("TEST"); + } + + /* + * instance initialiser + */ + { + addMapping("TEST.O_INVALID_TYPE", org.jooq.test.oracle3.generatedclasses.udt.records.O_INVALID_TYPE.class); + addMapping("TEST.U_ADDRESS_TYPE", org.jooq.test.oracle3.generatedclasses.udt.records.U_ADDRESS_TYPE.class); + addMapping("TEST.U_AUTHOR_TYPE", org.jooq.test.oracle3.generatedclasses.udt.records.U_AUTHOR_TYPE.class); + addMapping("TEST.U_BOOK_TYPE", org.jooq.test.oracle3.generatedclasses.udt.records.U_BOOK_TYPE.class); + addMapping("TEST.U_INVALID_TABLE", org.jooq.test.oracle3.generatedclasses.udt.records.U_INVALID_TABLE.class); + addMapping("TEST.U_INVALID_TYPE", org.jooq.test.oracle3.generatedclasses.udt.records.U_INVALID_TYPE.class); + addMapping("TEST.U_STREET_TYPE", org.jooq.test.oracle3.generatedclasses.udt.records.U_STREET_TYPE.class); + } + + @Override + public final java.util.List> getSequences() { + return java.util.Arrays.>asList( + org.jooq.test.oracle3.generatedclasses.Sequences.S_AUTHOR_ID, + org.jooq.test.oracle3.generatedclasses.Sequences.S_961_BIG_INTEGER, + org.jooq.test.oracle3.generatedclasses.Sequences.S_961_BYTE, + org.jooq.test.oracle3.generatedclasses.Sequences.S_961_INT, + org.jooq.test.oracle3.generatedclasses.Sequences.S_961_LONG, + org.jooq.test.oracle3.generatedclasses.Sequences.S_961_SHORT); + } + + @Override + public final java.util.List> getTables() { + return java.util.Arrays.>asList( + org.jooq.test.oracle3.generatedclasses.tables.T_ARRAYS.T_ARRAYS, + org.jooq.test.oracle3.generatedclasses.tables.T_AUTHOR.T_AUTHOR, + org.jooq.test.oracle3.generatedclasses.tables.T_BOOK.T_BOOK, + org.jooq.test.oracle3.generatedclasses.tables.T_BOOK_STORE.T_BOOK_STORE, + org.jooq.test.oracle3.generatedclasses.tables.T_BOOK_TO_BOOK_STORE.T_BOOK_TO_BOOK_STORE, + org.jooq.test.oracle3.generatedclasses.tables.T_BOOLEANS.T_BOOLEANS, + org.jooq.test.oracle3.generatedclasses.tables.T_DATES.T_DATES, + org.jooq.test.oracle3.generatedclasses.tables.T_DIRECTORY.T_DIRECTORY, + org.jooq.test.oracle3.generatedclasses.tables.T_TRIGGERS.T_TRIGGERS, + org.jooq.test.oracle3.generatedclasses.tables.T_639_NUMBERS_TABLE.T_639_NUMBERS_TABLE, + org.jooq.test.oracle3.generatedclasses.tables.T_658_REF.T_658_REF, + org.jooq.test.oracle3.generatedclasses.tables.T_725_LOB_TEST.T_725_LOB_TEST, + org.jooq.test.oracle3.generatedclasses.tables.T_785.T_785, + org.jooq.test.oracle3.generatedclasses.tables.V_AUTHOR.V_AUTHOR, + org.jooq.test.oracle3.generatedclasses.tables.V_BOOK.V_BOOK, + org.jooq.test.oracle3.generatedclasses.tables.V_INCOMPLETE.V_INCOMPLETE, + org.jooq.test.oracle3.generatedclasses.tables.V_LIBRARY.V_LIBRARY, + org.jooq.test.oracle3.generatedclasses.tables.X_TEST_CASE_64_69.X_TEST_CASE_64_69, + org.jooq.test.oracle3.generatedclasses.tables.X_TEST_CASE_71.X_TEST_CASE_71, + org.jooq.test.oracle3.generatedclasses.tables.X_TEST_CASE_85.X_TEST_CASE_85, + org.jooq.test.oracle3.generatedclasses.tables.X_UNUSED.X_UNUSED); + } + + @Override + public final java.util.List> getUDTs() { + return java.util.Arrays.>asList( + org.jooq.test.oracle3.generatedclasses.udt.O_INVALID_TYPE.O_INVALID_TYPE, + org.jooq.test.oracle3.generatedclasses.udt.U_ADDRESS_TYPE.U_ADDRESS_TYPE, + org.jooq.test.oracle3.generatedclasses.udt.U_AUTHOR_TYPE.U_AUTHOR_TYPE, + org.jooq.test.oracle3.generatedclasses.udt.U_BOOK_TYPE.U_BOOK_TYPE, + org.jooq.test.oracle3.generatedclasses.udt.U_INVALID_TABLE.U_INVALID_TABLE, + org.jooq.test.oracle3.generatedclasses.udt.U_INVALID_TYPE.U_INVALID_TYPE, + org.jooq.test.oracle3.generatedclasses.udt.U_STREET_TYPE.U_STREET_TYPE); + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/TESTFactory.java b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/TESTFactory.java new file mode 100644 index 00000000000..9556f51da59 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/TESTFactory.java @@ -0,0 +1,41 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle3.generatedclasses; + +/** + * This class is generated by jOOQ. + */ +public class TESTFactory extends org.jooq.util.oracle.OracleFactory implements java.lang.Cloneable { + + private static final long serialVersionUID = -1620671743; + + /** + * Create a factory with a connection + * + * @param connection The connection to use with objects created from this factory + */ + public TESTFactory(java.sql.Connection connection) { + super(connection); + } + + /** + * Create a factory with a connection and a schema mapping + * + * @deprecated - 2.0.5 - Use {@link #TESTFactory(java.sql.Connection, org.jooq.conf.Settings)} instead + */ + @Deprecated + public TESTFactory(java.sql.Connection connection, org.jooq.SchemaMapping mapping) { + super(connection, mapping); + } + + /** + * Create a factory with a connection and some settings + * + * @param connection The connection to use with objects created from this factory + * @param settings The settings to apply to objects created from this factory + */ + public TESTFactory(java.sql.Connection connection, org.jooq.conf.Settings settings) { + super(connection, settings); + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/Tables.java b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/Tables.java new file mode 100644 index 00000000000..b95b3c1140c --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/Tables.java @@ -0,0 +1,122 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle3.generatedclasses; + +/** + * This class is generated by jOOQ. + * + * Convenience access to all tables in TEST + */ +public final class Tables { + + /** + * The table TEST.T_ARRAYS + */ + public static org.jooq.test.oracle3.generatedclasses.tables.T_ARRAYS T_ARRAYS = org.jooq.test.oracle3.generatedclasses.tables.T_ARRAYS.T_ARRAYS; + + /** + * An entity holding authors of books + */ + public static org.jooq.test.oracle3.generatedclasses.tables.T_AUTHOR T_AUTHOR = org.jooq.test.oracle3.generatedclasses.tables.T_AUTHOR.T_AUTHOR; + + /** + * An entity holding books + */ + public static org.jooq.test.oracle3.generatedclasses.tables.T_BOOK T_BOOK = org.jooq.test.oracle3.generatedclasses.tables.T_BOOK.T_BOOK; + + /** + * A book store + */ + public static org.jooq.test.oracle3.generatedclasses.tables.T_BOOK_STORE T_BOOK_STORE = org.jooq.test.oracle3.generatedclasses.tables.T_BOOK_STORE.T_BOOK_STORE; + + /** + * An m:n relation between books and book stores + */ + public static org.jooq.test.oracle3.generatedclasses.tables.T_BOOK_TO_BOOK_STORE T_BOOK_TO_BOOK_STORE = org.jooq.test.oracle3.generatedclasses.tables.T_BOOK_TO_BOOK_STORE.T_BOOK_TO_BOOK_STORE; + + /** + * The table TEST.T_BOOLEANS + */ + public static org.jooq.test.oracle3.generatedclasses.tables.T_BOOLEANS T_BOOLEANS = org.jooq.test.oracle3.generatedclasses.tables.T_BOOLEANS.T_BOOLEANS; + + /** + * The table TEST.T_DATES + */ + public static org.jooq.test.oracle3.generatedclasses.tables.T_DATES T_DATES = org.jooq.test.oracle3.generatedclasses.tables.T_DATES.T_DATES; + + /** + * The table TEST.T_DIRECTORY + */ + public static org.jooq.test.oracle3.generatedclasses.tables.T_DIRECTORY T_DIRECTORY = org.jooq.test.oracle3.generatedclasses.tables.T_DIRECTORY.T_DIRECTORY; + + /** + * The table TEST.T_TRIGGERS + */ + public static org.jooq.test.oracle3.generatedclasses.tables.T_TRIGGERS T_TRIGGERS = org.jooq.test.oracle3.generatedclasses.tables.T_TRIGGERS.T_TRIGGERS; + + /** + * The table TEST.T_639_NUMBERS_TABLE + */ + public static org.jooq.test.oracle3.generatedclasses.tables.T_639_NUMBERS_TABLE T_639_NUMBERS_TABLE = org.jooq.test.oracle3.generatedclasses.tables.T_639_NUMBERS_TABLE.T_639_NUMBERS_TABLE; + + /** + * The table TEST.T_658_REF + */ + public static org.jooq.test.oracle3.generatedclasses.tables.T_658_REF T_658_REF = org.jooq.test.oracle3.generatedclasses.tables.T_658_REF.T_658_REF; + + /** + * The table TEST.T_725_LOB_TEST + */ + public static org.jooq.test.oracle3.generatedclasses.tables.T_725_LOB_TEST T_725_LOB_TEST = org.jooq.test.oracle3.generatedclasses.tables.T_725_LOB_TEST.T_725_LOB_TEST; + + /** + * The table TEST.T_785 + */ + public static org.jooq.test.oracle3.generatedclasses.tables.T_785 T_785 = org.jooq.test.oracle3.generatedclasses.tables.T_785.T_785; + + /** + * The table TEST.V_AUTHOR + */ + public static org.jooq.test.oracle3.generatedclasses.tables.V_AUTHOR V_AUTHOR = org.jooq.test.oracle3.generatedclasses.tables.V_AUTHOR.V_AUTHOR; + + /** + * The table TEST.V_BOOK + */ + public static org.jooq.test.oracle3.generatedclasses.tables.V_BOOK V_BOOK = org.jooq.test.oracle3.generatedclasses.tables.V_BOOK.V_BOOK; + + /** + * The table TEST.V_INCOMPLETE + */ + public static org.jooq.test.oracle3.generatedclasses.tables.V_INCOMPLETE V_INCOMPLETE = org.jooq.test.oracle3.generatedclasses.tables.V_INCOMPLETE.V_INCOMPLETE; + + /** + * The table TEST.V_LIBRARY + */ + public static org.jooq.test.oracle3.generatedclasses.tables.V_LIBRARY V_LIBRARY = org.jooq.test.oracle3.generatedclasses.tables.V_LIBRARY.V_LIBRARY; + + /** + * The table TEST.X_TEST_CASE_64_69 + */ + public static org.jooq.test.oracle3.generatedclasses.tables.X_TEST_CASE_64_69 X_TEST_CASE_64_69 = org.jooq.test.oracle3.generatedclasses.tables.X_TEST_CASE_64_69.X_TEST_CASE_64_69; + + /** + * The table TEST.X_TEST_CASE_71 + */ + public static org.jooq.test.oracle3.generatedclasses.tables.X_TEST_CASE_71 X_TEST_CASE_71 = org.jooq.test.oracle3.generatedclasses.tables.X_TEST_CASE_71.X_TEST_CASE_71; + + /** + * The table TEST.X_TEST_CASE_85 + */ + public static org.jooq.test.oracle3.generatedclasses.tables.X_TEST_CASE_85 X_TEST_CASE_85 = org.jooq.test.oracle3.generatedclasses.tables.X_TEST_CASE_85.X_TEST_CASE_85; + + /** + * An unused table in the same schema. + */ + public static org.jooq.test.oracle3.generatedclasses.tables.X_UNUSED X_UNUSED = org.jooq.test.oracle3.generatedclasses.tables.X_UNUSED.X_UNUSED; + + /** + * No instances + */ + private Tables() {} +} diff --git a/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/UDTs.java b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/UDTs.java new file mode 100644 index 00000000000..5465803a964 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/UDTs.java @@ -0,0 +1,52 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle3.generatedclasses; + +/** + * This class is generated by jOOQ. + * + * Convenience access to all UDTs in TEST + */ +public final class UDTs { + + /** + * The type TEST.O_INVALID_TYPE + */ + public static org.jooq.test.oracle3.generatedclasses.udt.O_INVALID_TYPE O_INVALID_TYPE = org.jooq.test.oracle3.generatedclasses.udt.O_INVALID_TYPE.O_INVALID_TYPE; + + /** + * The type TEST.U_ADDRESS_TYPE + */ + public static org.jooq.test.oracle3.generatedclasses.udt.U_ADDRESS_TYPE U_ADDRESS_TYPE = org.jooq.test.oracle3.generatedclasses.udt.U_ADDRESS_TYPE.U_ADDRESS_TYPE; + + /** + * The type TEST.U_AUTHOR_TYPE + */ + public static org.jooq.test.oracle3.generatedclasses.udt.U_AUTHOR_TYPE U_AUTHOR_TYPE = org.jooq.test.oracle3.generatedclasses.udt.U_AUTHOR_TYPE.U_AUTHOR_TYPE; + + /** + * The type TEST.U_BOOK_TYPE + */ + public static org.jooq.test.oracle3.generatedclasses.udt.U_BOOK_TYPE U_BOOK_TYPE = org.jooq.test.oracle3.generatedclasses.udt.U_BOOK_TYPE.U_BOOK_TYPE; + + /** + * The type TEST.U_INVALID_TABLE + */ + public static org.jooq.test.oracle3.generatedclasses.udt.U_INVALID_TABLE U_INVALID_TABLE = org.jooq.test.oracle3.generatedclasses.udt.U_INVALID_TABLE.U_INVALID_TABLE; + + /** + * The type TEST.U_INVALID_TYPE + */ + public static org.jooq.test.oracle3.generatedclasses.udt.U_INVALID_TYPE U_INVALID_TYPE = org.jooq.test.oracle3.generatedclasses.udt.U_INVALID_TYPE.U_INVALID_TYPE; + + /** + * The type TEST.U_STREET_TYPE + */ + public static org.jooq.test.oracle3.generatedclasses.udt.U_STREET_TYPE U_STREET_TYPE = org.jooq.test.oracle3.generatedclasses.udt.U_STREET_TYPE.U_STREET_TYPE; + + /** + * No instances + */ + private UDTs() {} +} diff --git a/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/enums/T_658_11.java b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/enums/T_658_11.java new file mode 100644 index 00000000000..f1bb5e2f86e --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/enums/T_658_11.java @@ -0,0 +1,46 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle3.generatedclasses.enums; + +/** + * This class is generated by jOOQ. + */ +public enum T_658_11 implements java.lang.Cloneable, org.jooq.MasterDataType { + + /** + * A + */ + A__("A "), + + /** + * B + */ + B__("B "), + + /** + * C + */ + C__("C "), + ; + + private final java.lang.String ID; + + private T_658_11(java.lang.String ID) { + this.ID = ID; + } + + @Override + public java.lang.String getPrimaryKey() { + return ID; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final java.lang.String getID() { + return ID; + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/enums/T_658_12.java b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/enums/T_658_12.java new file mode 100644 index 00000000000..f8e938e3704 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/enums/T_658_12.java @@ -0,0 +1,55 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle3.generatedclasses.enums; + +/** + * This class is generated by jOOQ. + */ +public enum T_658_12 implements java.lang.Cloneable, org.jooq.MasterDataType { + + /** + * A + */ + A__("A ", "A "), + + /** + * B + */ + B__("B ", "B "), + + /** + * C + */ + C__("C ", "C "), + ; + + private final java.lang.String ID; + private final java.lang.String CD; + + private T_658_12(java.lang.String ID, java.lang.String CD) { + this.ID = ID; + this.CD = CD; + } + + @Override + public java.lang.String getPrimaryKey() { + return ID; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final java.lang.String getID() { + return ID; + } + + /** + * An uncommented item + */ + public final java.lang.String getCD() { + return CD; + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/enums/T_658_21.java b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/enums/T_658_21.java new file mode 100644 index 00000000000..9ad4b916bc0 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/enums/T_658_21.java @@ -0,0 +1,46 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle3.generatedclasses.enums; + +/** + * This class is generated by jOOQ. + */ +public enum T_658_21 implements java.lang.Cloneable, org.jooq.MasterDataType { + + /** + * 1 + */ + _1(1), + + /** + * 2 + */ + _2(2), + + /** + * 3 + */ + _3(3), + ; + + private final java.lang.Integer ID; + + private T_658_21(java.lang.Integer ID) { + this.ID = ID; + } + + @Override + public java.lang.Integer getPrimaryKey() { + return ID; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final java.lang.Integer getID() { + return ID; + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/enums/T_658_22.java b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/enums/T_658_22.java new file mode 100644 index 00000000000..5f52095e772 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/enums/T_658_22.java @@ -0,0 +1,55 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle3.generatedclasses.enums; + +/** + * This class is generated by jOOQ. + */ +public enum T_658_22 implements java.lang.Cloneable, org.jooq.MasterDataType { + + /** + * 1 + */ + _1(1, 1), + + /** + * 2 + */ + _2(2, 2), + + /** + * 3 + */ + _3(3, 3), + ; + + private final java.lang.Integer ID; + private final java.lang.Integer CD; + + private T_658_22(java.lang.Integer ID, java.lang.Integer CD) { + this.ID = ID; + this.CD = CD; + } + + @Override + public java.lang.Integer getPrimaryKey() { + return ID; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final java.lang.Integer getID() { + return ID; + } + + /** + * An uncommented item + */ + public final java.lang.Integer getCD() { + return CD; + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/enums/T_658_31.java b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/enums/T_658_31.java new file mode 100644 index 00000000000..9ec08fb4062 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/enums/T_658_31.java @@ -0,0 +1,46 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle3.generatedclasses.enums; + +/** + * This class is generated by jOOQ. + */ +public enum T_658_31 implements java.lang.Cloneable, org.jooq.MasterDataType { + + /** + * 1 + */ + _1(1L), + + /** + * 2 + */ + _2(2L), + + /** + * 3 + */ + _3(3L), + ; + + private final java.lang.Long ID; + + private T_658_31(java.lang.Long ID) { + this.ID = ID; + } + + @Override + public java.lang.Long getPrimaryKey() { + return ID; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final java.lang.Long getID() { + return ID; + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/enums/T_658_32.java b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/enums/T_658_32.java new file mode 100644 index 00000000000..72efeb94c66 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/enums/T_658_32.java @@ -0,0 +1,55 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle3.generatedclasses.enums; + +/** + * This class is generated by jOOQ. + */ +public enum T_658_32 implements java.lang.Cloneable, org.jooq.MasterDataType { + + /** + * 1 + */ + _1(1L, 1L), + + /** + * 2 + */ + _2(2L, 2L), + + /** + * 3 + */ + _3(3L, 3L), + ; + + private final java.lang.Long ID; + private final java.lang.Long CD; + + private T_658_32(java.lang.Long ID, java.lang.Long CD) { + this.ID = ID; + this.CD = CD; + } + + @Override + public java.lang.Long getPrimaryKey() { + return ID; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final java.lang.Long getID() { + return ID; + } + + /** + * An uncommented item + */ + public final java.lang.Long getCD() { + return CD; + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/enums/T_LANGUAGE.java b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/enums/T_LANGUAGE.java new file mode 100644 index 00000000000..f2bfc6228b8 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/enums/T_LANGUAGE.java @@ -0,0 +1,67 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle3.generatedclasses.enums; + +/** + * This class is generated by jOOQ. + * + * An entity holding language master data + */ +public enum T_LANGUAGE implements java.lang.Cloneable, org.jooq.MasterDataType { + + /** + * English + */ + en(1, "en", "English"), + + /** + * Deutsch + */ + de(2, "de", "Deutsch"), + + /** + * Français + */ + fr(3, "fr", "Français"), + pt(4, "pt", null), + ; + + private final java.lang.Integer ID; + private final java.lang.String CD; + private final java.lang.String DESCRIPTION; + + private T_LANGUAGE(java.lang.Integer ID, java.lang.String CD, java.lang.String DESCRIPTION) { + this.ID = ID; + this.CD = CD; + this.DESCRIPTION = DESCRIPTION; + } + + @Override + public java.lang.Integer getPrimaryKey() { + return ID; + } + + /** + * The language ID + * + * PRIMARY KEY + */ + public final java.lang.Integer getID() { + return ID; + } + + /** + * The language ISO code + */ + public final java.lang.String getCD() { + return CD; + } + + /** + * The language description + */ + public final java.lang.String getDESCRIPTION() { + return DESCRIPTION; + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/packages/LIBRARY.java b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/packages/LIBRARY.java new file mode 100644 index 00000000000..d82a2001779 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/packages/LIBRARY.java @@ -0,0 +1,179 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle3.generatedclasses.packages; + +/** + * This class is generated by jOOQ. + * + * Convenience access to all stored procedures and functions in LIBRARY + */ +public final class LIBRARY extends org.jooq.impl.PackageImpl implements java.io.Serializable, java.lang.Cloneable { + + private static final long serialVersionUID = 277161264; + + /** + * The singleton instance of TEST.LIBRARY + */ + public static final org.jooq.test.oracle3.generatedclasses.packages.LIBRARY LIBRARY = new org.jooq.test.oracle3.generatedclasses.packages.LIBRARY(); + + /** + * Call TEST.LIBRARY.PKG_F_AUTHOR_EXISTS + * + * @param AUTHOR_NAME + * @throws org.jooq.exception.DataAccessException if something went wrong executing the query + */ + public static java.math.BigDecimal call_PKG_F_AUTHOR_EXISTS(org.jooq.Configuration configuration, java.lang.String AUTHOR_NAME) { + org.jooq.test.oracle3.generatedclasses.packages.library.PKG_F_AUTHOR_EXISTS f = new org.jooq.test.oracle3.generatedclasses.packages.library.PKG_F_AUTHOR_EXISTS(); + f.setAUTHOR_NAME(AUTHOR_NAME); + + f.execute(configuration); + return f.getReturnValue(); + } + + /** + * Get TEST.LIBRARY.PKG_F_AUTHOR_EXISTS as a field + * + * @param AUTHOR_NAME + */ + public static org.jooq.Field call_PKG_F_AUTHOR_EXISTS(java.lang.String AUTHOR_NAME) { + org.jooq.test.oracle3.generatedclasses.packages.library.PKG_F_AUTHOR_EXISTS f = new org.jooq.test.oracle3.generatedclasses.packages.library.PKG_F_AUTHOR_EXISTS(); + f.setAUTHOR_NAME(AUTHOR_NAME); + + return f.asField(); + } + + /** + * Get TEST.LIBRARY.PKG_F_AUTHOR_EXISTS as a field + * + * @param AUTHOR_NAME + */ + public static org.jooq.Field call_PKG_F_AUTHOR_EXISTS(org.jooq.Field AUTHOR_NAME) { + org.jooq.test.oracle3.generatedclasses.packages.library.PKG_F_AUTHOR_EXISTS f = new org.jooq.test.oracle3.generatedclasses.packages.library.PKG_F_AUTHOR_EXISTS(); + f.setAUTHOR_NAME(AUTHOR_NAME); + + return f.asField(); + } + + /** + * Call TEST.LIBRARY.PKG_F_AUTHOR_EXISTS + * + * @param AUTHOR_NAME + * @param UNUSED + * @throws org.jooq.exception.DataAccessException if something went wrong executing the query + */ + public static java.math.BigDecimal call_PKG_F_AUTHOR_EXISTS(org.jooq.Configuration configuration, java.lang.String AUTHOR_NAME, java.lang.Number UNUSED) { + org.jooq.test.oracle3.generatedclasses.packages.library.PKG_F_AUTHOR_EXISTS f = new org.jooq.test.oracle3.generatedclasses.packages.library.PKG_F_AUTHOR_EXISTS(); + f.setAUTHOR_NAME(AUTHOR_NAME); + f.setUNUSED(UNUSED); + + f.execute(configuration); + return f.getReturnValue(); + } + + /** + * Get TEST.LIBRARY.PKG_F_AUTHOR_EXISTS as a field + * + * @param AUTHOR_NAME + * @param UNUSED + */ + public static org.jooq.Field call_PKG_F_AUTHOR_EXISTS(java.lang.String AUTHOR_NAME, java.lang.Number UNUSED) { + org.jooq.test.oracle3.generatedclasses.packages.library.PKG_F_AUTHOR_EXISTS f = new org.jooq.test.oracle3.generatedclasses.packages.library.PKG_F_AUTHOR_EXISTS(); + f.setAUTHOR_NAME(AUTHOR_NAME); + f.setUNUSED(UNUSED); + + return f.asField(); + } + + /** + * Get TEST.LIBRARY.PKG_F_AUTHOR_EXISTS as a field + * + * @param AUTHOR_NAME + * @param UNUSED + */ + public static org.jooq.Field call_PKG_F_AUTHOR_EXISTS(org.jooq.Field AUTHOR_NAME, org.jooq.Field UNUSED) { + org.jooq.test.oracle3.generatedclasses.packages.library.PKG_F_AUTHOR_EXISTS f = new org.jooq.test.oracle3.generatedclasses.packages.library.PKG_F_AUTHOR_EXISTS(); + f.setAUTHOR_NAME(AUTHOR_NAME); + f.setUNUSED(UNUSED); + + return f.asField(); + } + + /** + * Call TEST.LIBRARY.PKG_F_UNUSED + * + * @throws org.jooq.exception.DataAccessException if something went wrong executing the query + */ + public static java.math.BigDecimal call_PKG_F_UNUSED(org.jooq.Configuration configuration) { + org.jooq.test.oracle3.generatedclasses.packages.library.PKG_F_UNUSED f = new org.jooq.test.oracle3.generatedclasses.packages.library.PKG_F_UNUSED(); + + f.execute(configuration); + return f.getReturnValue(); + } + + /** + * Get TEST.LIBRARY.PKG_F_UNUSED as a field + * + */ + public static org.jooq.Field call_PKG_F_UNUSED() { + org.jooq.test.oracle3.generatedclasses.packages.library.PKG_F_UNUSED f = new org.jooq.test.oracle3.generatedclasses.packages.library.PKG_F_UNUSED(); + + return f.asField(); + } + + /** + * Call TEST.LIBRARY.PKG_F378 + * + * @param RETURN_VALUE OUT parameter + * @param I IN parameter + * @param IO IN OUT parameter + * @param O OUT parameter + * @throws org.jooq.exception.DataAccessException if something went wrong executing the query + */ + public static org.jooq.test.oracle3.generatedclasses.packages.library.PKG_F378 call_PKG_F378(org.jooq.Configuration configuration, java.lang.Number I, java.lang.Number IO) { + org.jooq.test.oracle3.generatedclasses.packages.library.PKG_F378 p = new org.jooq.test.oracle3.generatedclasses.packages.library.PKG_F378(); + p.setI(I); + p.setIO(IO); + + p.execute(configuration); + return p; + } + + /** + * Call TEST.LIBRARY.PKG_P_AUTHOR_EXISTS + * + * @param AUTHOR_NAME IN parameter + * @param RESULT OUT parameter + * @throws org.jooq.exception.DataAccessException if something went wrong executing the query + */ + public static java.math.BigDecimal call_PKG_P_AUTHOR_EXISTS(org.jooq.Configuration configuration, java.lang.String AUTHOR_NAME) { + org.jooq.test.oracle3.generatedclasses.packages.library.PKG_P_AUTHOR_EXISTS p = new org.jooq.test.oracle3.generatedclasses.packages.library.PKG_P_AUTHOR_EXISTS(); + p.setAUTHOR_NAME(AUTHOR_NAME); + + p.execute(configuration); + return p.getRESULT(); + } + + /** + * Call TEST.LIBRARY.PKG_P_AUTHOR_EXISTS + * + * @param AUTHOR_NAME IN parameter + * @param RESULT OUT parameter + * @param UNUSED IN OUT parameter + * @throws org.jooq.exception.DataAccessException if something went wrong executing the query + */ + public static org.jooq.test.oracle3.generatedclasses.packages.library.PKG_P_AUTHOR_EXISTS call_PKG_P_AUTHOR_EXISTS(org.jooq.Configuration configuration, java.lang.String AUTHOR_NAME, java.lang.Number UNUSED) { + org.jooq.test.oracle3.generatedclasses.packages.library.PKG_P_AUTHOR_EXISTS p = new org.jooq.test.oracle3.generatedclasses.packages.library.PKG_P_AUTHOR_EXISTS(); + p.setAUTHOR_NAME(AUTHOR_NAME); + p.setUNUSED(UNUSED); + + p.execute(configuration); + return p; + } + /** + * No further instances allowed + */ + private LIBRARY() { + super("LIBRARY", org.jooq.test.oracle3.generatedclasses.TEST.TEST); + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/packages/LIBRARY_767_PACKAGE_TEST.java b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/packages/LIBRARY_767_PACKAGE_TEST.java new file mode 100644 index 00000000000..820c0c7c400 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/packages/LIBRARY_767_PACKAGE_TEST.java @@ -0,0 +1,47 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle3.generatedclasses.packages; + +/** + * This class is generated by jOOQ. + * + * Convenience access to all stored procedures and functions in LIBRARY_767_PACKAGE_TEST + */ +public final class LIBRARY_767_PACKAGE_TEST extends org.jooq.impl.PackageImpl implements java.io.Serializable, java.lang.Cloneable { + + private static final long serialVersionUID = -1026462744; + + /** + * The singleton instance of TEST.LIBRARY_767_PACKAGE_TEST + */ + public static final org.jooq.test.oracle3.generatedclasses.packages.LIBRARY_767_PACKAGE_TEST LIBRARY_767_PACKAGE_TEST = new org.jooq.test.oracle3.generatedclasses.packages.LIBRARY_767_PACKAGE_TEST(); + + /** + * Call TEST.LIBRARY_767_PACKAGE_TEST.LIBRARY_767_PACKAGE_TEST + * + * @throws org.jooq.exception.DataAccessException if something went wrong executing the query + */ + public static java.math.BigDecimal call_LIBRARY_767_PACKAGE_TEST(org.jooq.Configuration configuration) { + org.jooq.test.oracle3.generatedclasses.packages.library_767_package_test.LIBRARY_767_PACKAGE_TEST f = new org.jooq.test.oracle3.generatedclasses.packages.library_767_package_test.LIBRARY_767_PACKAGE_TEST(); + + f.execute(configuration); + return f.getReturnValue(); + } + + /** + * Get TEST.LIBRARY_767_PACKAGE_TEST.LIBRARY_767_PACKAGE_TEST as a field + * + */ + public static org.jooq.Field call_LIBRARY_767_PACKAGE_TEST() { + org.jooq.test.oracle3.generatedclasses.packages.library_767_package_test.LIBRARY_767_PACKAGE_TEST f = new org.jooq.test.oracle3.generatedclasses.packages.library_767_package_test.LIBRARY_767_PACKAGE_TEST(); + + return f.asField(); + } + /** + * No further instances allowed + */ + private LIBRARY_767_PACKAGE_TEST() { + super("LIBRARY_767_PACKAGE_TEST", org.jooq.test.oracle3.generatedclasses.TEST.TEST); + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/packages/LIBRARY_TYPES.java b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/packages/LIBRARY_TYPES.java new file mode 100644 index 00000000000..9e48a0dc23b --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/packages/LIBRARY_TYPES.java @@ -0,0 +1,25 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle3.generatedclasses.packages; + +/** + * This class is generated by jOOQ. + * + * Convenience access to all stored procedures and functions in LIBRARY_TYPES + */ +public final class LIBRARY_TYPES extends org.jooq.impl.PackageImpl implements java.io.Serializable, java.lang.Cloneable { + + private static final long serialVersionUID = 2090436377; + + /** + * The singleton instance of TEST.LIBRARY_TYPES + */ + public static final org.jooq.test.oracle3.generatedclasses.packages.LIBRARY_TYPES LIBRARY_TYPES = new org.jooq.test.oracle3.generatedclasses.packages.LIBRARY_TYPES(); + /** + * No further instances allowed + */ + private LIBRARY_TYPES() { + super("LIBRARY_TYPES", org.jooq.test.oracle3.generatedclasses.TEST.TEST); + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/packages/library/PKG_F378.java b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/packages/library/PKG_F378.java new file mode 100644 index 00000000000..9e214ffd355 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/packages/library/PKG_F378.java @@ -0,0 +1,67 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle3.generatedclasses.packages.library; + +/** + * This class is generated by jOOQ. + */ +public class PKG_F378 extends org.jooq.impl.AbstractRoutine implements java.lang.Cloneable { + + private static final long serialVersionUID = 1256183155; + + + /** + * An uncommented item + */ + public static final org.jooq.Parameter RETURN_VALUE = createParameter("RETURN_VALUE", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter I = createParameter("I", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter IO = createParameter("IO", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter O = createParameter("O", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * Create a new routine call instance + */ + public PKG_F378() { + super("PKG_F378", org.jooq.test.oracle3.generatedclasses.TEST.TEST, org.jooq.test.oracle3.generatedclasses.packages.LIBRARY.LIBRARY, org.jooq.impl.SQLDataType.NUMERIC); + + setReturnParameter(RETURN_VALUE); + addInParameter(I); + addInOutParameter(IO); + addOutParameter(O); + } + + /** + * Set the I parameter to the routine + */ + public void setI(java.lang.Number value) { + setNumber(I, value); + } + + /** + * Set the IO parameter to the routine + */ + public void setIO(java.lang.Number value) { + setNumber(IO, value); + } + + public java.math.BigDecimal getIO() { + return getValue(IO); + } + + public java.math.BigDecimal getO() { + return getValue(O); + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/packages/library/PKG_F_AUTHOR_EXISTS.java b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/packages/library/PKG_F_AUTHOR_EXISTS.java new file mode 100644 index 00000000000..f9001ebc90e --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/packages/library/PKG_F_AUTHOR_EXISTS.java @@ -0,0 +1,72 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle3.generatedclasses.packages.library; + +/** + * This class is generated by jOOQ. + */ +public class PKG_F_AUTHOR_EXISTS extends org.jooq.impl.AbstractRoutine implements java.lang.Cloneable { + + private static final long serialVersionUID = 990614819; + + + /** + * An uncommented item + */ + public static final org.jooq.Parameter RETURN_VALUE = createParameter("RETURN_VALUE", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter AUTHOR_NAME = createParameter("AUTHOR_NAME", org.jooq.impl.SQLDataType.VARCHAR); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter UNUSED = createParameter("UNUSED", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * Create a new routine call instance + */ + public PKG_F_AUTHOR_EXISTS() { + super("PKG_F_AUTHOR_EXISTS", org.jooq.test.oracle3.generatedclasses.TEST.TEST, org.jooq.test.oracle3.generatedclasses.packages.LIBRARY.LIBRARY, org.jooq.impl.SQLDataType.NUMERIC); + + setReturnParameter(RETURN_VALUE); + addInParameter(AUTHOR_NAME); + addInParameter(UNUSED); + setOverloaded(true); + } + + /** + * Set the AUTHOR_NAME parameter to the routine + */ + public void setAUTHOR_NAME(java.lang.String value) { + setValue(AUTHOR_NAME, value); + } + + /** + * Set the AUTHOR_NAME parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setAUTHOR_NAME(org.jooq.Field field) { + setField(AUTHOR_NAME, field); + } + + /** + * Set the UNUSED parameter to the routine + */ + public void setUNUSED(java.lang.Number value) { + setNumber(UNUSED, value); + } + + /** + * Set the UNUSED parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setUNUSED(org.jooq.Field field) { + setNumber(UNUSED, field); + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/packages/library/PKG_F_MANY_PARAMETERS.java b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/packages/library/PKG_F_MANY_PARAMETERS.java new file mode 100644 index 00000000000..465e052b35d --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/packages/library/PKG_F_MANY_PARAMETERS.java @@ -0,0 +1,8827 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle3.generatedclasses.packages.library; + +/** + * This class is generated by jOOQ. + */ +public class PKG_F_MANY_PARAMETERS extends org.jooq.impl.AbstractRoutine implements java.lang.Cloneable { + + private static final long serialVersionUID = 1677278516; + + + /** + * An uncommented item + */ + public static final org.jooq.Parameter RETURN_VALUE = createParameter("RETURN_VALUE", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F000 = createParameter("F000", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F001 = createParameter("F001", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F002 = createParameter("F002", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F003 = createParameter("F003", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F004 = createParameter("F004", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F005 = createParameter("F005", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F006 = createParameter("F006", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F007 = createParameter("F007", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F008 = createParameter("F008", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F009 = createParameter("F009", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F010 = createParameter("F010", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F011 = createParameter("F011", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F012 = createParameter("F012", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F013 = createParameter("F013", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F014 = createParameter("F014", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F015 = createParameter("F015", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F016 = createParameter("F016", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F017 = createParameter("F017", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F018 = createParameter("F018", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F019 = createParameter("F019", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F020 = createParameter("F020", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F021 = createParameter("F021", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F022 = createParameter("F022", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F023 = createParameter("F023", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F024 = createParameter("F024", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F025 = createParameter("F025", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F026 = createParameter("F026", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F027 = createParameter("F027", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F028 = createParameter("F028", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F029 = createParameter("F029", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F030 = createParameter("F030", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F031 = createParameter("F031", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F032 = createParameter("F032", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F033 = createParameter("F033", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F034 = createParameter("F034", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F035 = createParameter("F035", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F036 = createParameter("F036", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F037 = createParameter("F037", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F038 = createParameter("F038", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F039 = createParameter("F039", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F040 = createParameter("F040", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F041 = createParameter("F041", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F042 = createParameter("F042", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F043 = createParameter("F043", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F044 = createParameter("F044", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F045 = createParameter("F045", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F046 = createParameter("F046", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F047 = createParameter("F047", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F048 = createParameter("F048", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F049 = createParameter("F049", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F050 = createParameter("F050", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F051 = createParameter("F051", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F052 = createParameter("F052", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F053 = createParameter("F053", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F054 = createParameter("F054", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F055 = createParameter("F055", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F056 = createParameter("F056", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F057 = createParameter("F057", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F058 = createParameter("F058", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F059 = createParameter("F059", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F060 = createParameter("F060", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F061 = createParameter("F061", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F062 = createParameter("F062", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F063 = createParameter("F063", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F064 = createParameter("F064", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F065 = createParameter("F065", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F066 = createParameter("F066", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F067 = createParameter("F067", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F068 = createParameter("F068", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F069 = createParameter("F069", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F070 = createParameter("F070", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F071 = createParameter("F071", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F072 = createParameter("F072", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F073 = createParameter("F073", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F074 = createParameter("F074", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F075 = createParameter("F075", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F076 = createParameter("F076", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F077 = createParameter("F077", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F078 = createParameter("F078", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F079 = createParameter("F079", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F080 = createParameter("F080", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F081 = createParameter("F081", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F082 = createParameter("F082", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F083 = createParameter("F083", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F084 = createParameter("F084", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F085 = createParameter("F085", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F086 = createParameter("F086", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F087 = createParameter("F087", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F088 = createParameter("F088", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F089 = createParameter("F089", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F090 = createParameter("F090", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F091 = createParameter("F091", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F092 = createParameter("F092", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F093 = createParameter("F093", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F094 = createParameter("F094", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F095 = createParameter("F095", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F096 = createParameter("F096", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F097 = createParameter("F097", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F098 = createParameter("F098", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F099 = createParameter("F099", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F100 = createParameter("F100", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F101 = createParameter("F101", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F102 = createParameter("F102", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F103 = createParameter("F103", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F104 = createParameter("F104", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F105 = createParameter("F105", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F106 = createParameter("F106", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F107 = createParameter("F107", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F108 = createParameter("F108", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F109 = createParameter("F109", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F110 = createParameter("F110", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F111 = createParameter("F111", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F112 = createParameter("F112", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F113 = createParameter("F113", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F114 = createParameter("F114", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F115 = createParameter("F115", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F116 = createParameter("F116", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F117 = createParameter("F117", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F118 = createParameter("F118", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F119 = createParameter("F119", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F120 = createParameter("F120", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F121 = createParameter("F121", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F122 = createParameter("F122", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F123 = createParameter("F123", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F124 = createParameter("F124", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F125 = createParameter("F125", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F126 = createParameter("F126", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F127 = createParameter("F127", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F128 = createParameter("F128", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F129 = createParameter("F129", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F130 = createParameter("F130", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F131 = createParameter("F131", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F132 = createParameter("F132", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F133 = createParameter("F133", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F134 = createParameter("F134", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F135 = createParameter("F135", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F136 = createParameter("F136", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F137 = createParameter("F137", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F138 = createParameter("F138", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F139 = createParameter("F139", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F140 = createParameter("F140", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F141 = createParameter("F141", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F142 = createParameter("F142", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F143 = createParameter("F143", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F144 = createParameter("F144", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F145 = createParameter("F145", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F146 = createParameter("F146", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F147 = createParameter("F147", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F148 = createParameter("F148", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F149 = createParameter("F149", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F150 = createParameter("F150", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F151 = createParameter("F151", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F152 = createParameter("F152", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F153 = createParameter("F153", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F154 = createParameter("F154", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F155 = createParameter("F155", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F156 = createParameter("F156", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F157 = createParameter("F157", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F158 = createParameter("F158", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F159 = createParameter("F159", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F160 = createParameter("F160", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F161 = createParameter("F161", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F162 = createParameter("F162", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F163 = createParameter("F163", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F164 = createParameter("F164", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F165 = createParameter("F165", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F166 = createParameter("F166", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F167 = createParameter("F167", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F168 = createParameter("F168", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F169 = createParameter("F169", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F170 = createParameter("F170", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F171 = createParameter("F171", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F172 = createParameter("F172", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F173 = createParameter("F173", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F174 = createParameter("F174", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F175 = createParameter("F175", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F176 = createParameter("F176", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F177 = createParameter("F177", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F178 = createParameter("F178", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F179 = createParameter("F179", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F180 = createParameter("F180", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F181 = createParameter("F181", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F182 = createParameter("F182", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F183 = createParameter("F183", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F184 = createParameter("F184", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F185 = createParameter("F185", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F186 = createParameter("F186", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F187 = createParameter("F187", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F188 = createParameter("F188", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F189 = createParameter("F189", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F190 = createParameter("F190", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F191 = createParameter("F191", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F192 = createParameter("F192", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F193 = createParameter("F193", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F194 = createParameter("F194", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F195 = createParameter("F195", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F196 = createParameter("F196", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F197 = createParameter("F197", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F198 = createParameter("F198", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F199 = createParameter("F199", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F200 = createParameter("F200", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F201 = createParameter("F201", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F202 = createParameter("F202", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F203 = createParameter("F203", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F204 = createParameter("F204", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F205 = createParameter("F205", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F206 = createParameter("F206", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F207 = createParameter("F207", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F208 = createParameter("F208", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F209 = createParameter("F209", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F210 = createParameter("F210", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F211 = createParameter("F211", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F212 = createParameter("F212", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F213 = createParameter("F213", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F214 = createParameter("F214", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F215 = createParameter("F215", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F216 = createParameter("F216", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F217 = createParameter("F217", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F218 = createParameter("F218", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F219 = createParameter("F219", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F220 = createParameter("F220", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F221 = createParameter("F221", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F222 = createParameter("F222", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F223 = createParameter("F223", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F224 = createParameter("F224", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F225 = createParameter("F225", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F226 = createParameter("F226", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F227 = createParameter("F227", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F228 = createParameter("F228", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F229 = createParameter("F229", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F230 = createParameter("F230", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F231 = createParameter("F231", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F232 = createParameter("F232", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F233 = createParameter("F233", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F234 = createParameter("F234", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F235 = createParameter("F235", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F236 = createParameter("F236", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F237 = createParameter("F237", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F238 = createParameter("F238", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F239 = createParameter("F239", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F240 = createParameter("F240", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F241 = createParameter("F241", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F242 = createParameter("F242", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F243 = createParameter("F243", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F244 = createParameter("F244", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F245 = createParameter("F245", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F246 = createParameter("F246", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F247 = createParameter("F247", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F248 = createParameter("F248", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F249 = createParameter("F249", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F250 = createParameter("F250", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F251 = createParameter("F251", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F252 = createParameter("F252", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F253 = createParameter("F253", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F254 = createParameter("F254", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F255 = createParameter("F255", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F256 = createParameter("F256", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F257 = createParameter("F257", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F258 = createParameter("F258", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F259 = createParameter("F259", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F260 = createParameter("F260", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F261 = createParameter("F261", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F262 = createParameter("F262", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F263 = createParameter("F263", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F264 = createParameter("F264", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F265 = createParameter("F265", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F266 = createParameter("F266", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F267 = createParameter("F267", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F268 = createParameter("F268", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F269 = createParameter("F269", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F270 = createParameter("F270", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F271 = createParameter("F271", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F272 = createParameter("F272", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F273 = createParameter("F273", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F274 = createParameter("F274", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F275 = createParameter("F275", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F276 = createParameter("F276", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F277 = createParameter("F277", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F278 = createParameter("F278", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F279 = createParameter("F279", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F280 = createParameter("F280", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F281 = createParameter("F281", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F282 = createParameter("F282", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F283 = createParameter("F283", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F284 = createParameter("F284", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F285 = createParameter("F285", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F286 = createParameter("F286", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F287 = createParameter("F287", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F288 = createParameter("F288", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F289 = createParameter("F289", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F290 = createParameter("F290", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F291 = createParameter("F291", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F292 = createParameter("F292", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F293 = createParameter("F293", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F294 = createParameter("F294", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F295 = createParameter("F295", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F296 = createParameter("F296", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F297 = createParameter("F297", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F298 = createParameter("F298", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F299 = createParameter("F299", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F300 = createParameter("F300", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F301 = createParameter("F301", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F302 = createParameter("F302", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F303 = createParameter("F303", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F304 = createParameter("F304", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F305 = createParameter("F305", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F306 = createParameter("F306", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F307 = createParameter("F307", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F308 = createParameter("F308", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F309 = createParameter("F309", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F310 = createParameter("F310", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F311 = createParameter("F311", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F312 = createParameter("F312", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F313 = createParameter("F313", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F314 = createParameter("F314", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F315 = createParameter("F315", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F316 = createParameter("F316", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F317 = createParameter("F317", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F318 = createParameter("F318", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F319 = createParameter("F319", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F320 = createParameter("F320", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F321 = createParameter("F321", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F322 = createParameter("F322", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F323 = createParameter("F323", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F324 = createParameter("F324", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F325 = createParameter("F325", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F326 = createParameter("F326", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F327 = createParameter("F327", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F328 = createParameter("F328", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F329 = createParameter("F329", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F330 = createParameter("F330", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F331 = createParameter("F331", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F332 = createParameter("F332", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F333 = createParameter("F333", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F334 = createParameter("F334", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F335 = createParameter("F335", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F336 = createParameter("F336", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F337 = createParameter("F337", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F338 = createParameter("F338", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F339 = createParameter("F339", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F340 = createParameter("F340", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F341 = createParameter("F341", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F342 = createParameter("F342", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F343 = createParameter("F343", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F344 = createParameter("F344", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F345 = createParameter("F345", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F346 = createParameter("F346", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F347 = createParameter("F347", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F348 = createParameter("F348", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F349 = createParameter("F349", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F350 = createParameter("F350", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F351 = createParameter("F351", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F352 = createParameter("F352", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F353 = createParameter("F353", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F354 = createParameter("F354", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F355 = createParameter("F355", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F356 = createParameter("F356", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F357 = createParameter("F357", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F358 = createParameter("F358", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F359 = createParameter("F359", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F360 = createParameter("F360", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F361 = createParameter("F361", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F362 = createParameter("F362", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F363 = createParameter("F363", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F364 = createParameter("F364", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F365 = createParameter("F365", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F366 = createParameter("F366", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F367 = createParameter("F367", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F368 = createParameter("F368", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F369 = createParameter("F369", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F370 = createParameter("F370", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F371 = createParameter("F371", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F372 = createParameter("F372", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F373 = createParameter("F373", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F374 = createParameter("F374", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F375 = createParameter("F375", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F376 = createParameter("F376", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F377 = createParameter("F377", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F378 = createParameter("F378", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F379 = createParameter("F379", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F380 = createParameter("F380", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F381 = createParameter("F381", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F382 = createParameter("F382", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F383 = createParameter("F383", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F384 = createParameter("F384", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F385 = createParameter("F385", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F386 = createParameter("F386", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F387 = createParameter("F387", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F388 = createParameter("F388", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F389 = createParameter("F389", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F390 = createParameter("F390", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F391 = createParameter("F391", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F392 = createParameter("F392", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F393 = createParameter("F393", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F394 = createParameter("F394", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F395 = createParameter("F395", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F396 = createParameter("F396", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F397 = createParameter("F397", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F398 = createParameter("F398", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F399 = createParameter("F399", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * Create a new routine call instance + */ + public PKG_F_MANY_PARAMETERS() { + super("PKG_F_MANY_PARAMETERS", org.jooq.test.oracle3.generatedclasses.TEST.TEST, org.jooq.test.oracle3.generatedclasses.packages.LIBRARY.LIBRARY, org.jooq.impl.SQLDataType.NUMERIC); + + setReturnParameter(RETURN_VALUE); + addInParameter(F000); + addInParameter(F001); + addInParameter(F002); + addInParameter(F003); + addInParameter(F004); + addInParameter(F005); + addInParameter(F006); + addInParameter(F007); + addInParameter(F008); + addInParameter(F009); + addInParameter(F010); + addInParameter(F011); + addInParameter(F012); + addInParameter(F013); + addInParameter(F014); + addInParameter(F015); + addInParameter(F016); + addInParameter(F017); + addInParameter(F018); + addInParameter(F019); + addInParameter(F020); + addInParameter(F021); + addInParameter(F022); + addInParameter(F023); + addInParameter(F024); + addInParameter(F025); + addInParameter(F026); + addInParameter(F027); + addInParameter(F028); + addInParameter(F029); + addInParameter(F030); + addInParameter(F031); + addInParameter(F032); + addInParameter(F033); + addInParameter(F034); + addInParameter(F035); + addInParameter(F036); + addInParameter(F037); + addInParameter(F038); + addInParameter(F039); + addInParameter(F040); + addInParameter(F041); + addInParameter(F042); + addInParameter(F043); + addInParameter(F044); + addInParameter(F045); + addInParameter(F046); + addInParameter(F047); + addInParameter(F048); + addInParameter(F049); + addInParameter(F050); + addInParameter(F051); + addInParameter(F052); + addInParameter(F053); + addInParameter(F054); + addInParameter(F055); + addInParameter(F056); + addInParameter(F057); + addInParameter(F058); + addInParameter(F059); + addInParameter(F060); + addInParameter(F061); + addInParameter(F062); + addInParameter(F063); + addInParameter(F064); + addInParameter(F065); + addInParameter(F066); + addInParameter(F067); + addInParameter(F068); + addInParameter(F069); + addInParameter(F070); + addInParameter(F071); + addInParameter(F072); + addInParameter(F073); + addInParameter(F074); + addInParameter(F075); + addInParameter(F076); + addInParameter(F077); + addInParameter(F078); + addInParameter(F079); + addInParameter(F080); + addInParameter(F081); + addInParameter(F082); + addInParameter(F083); + addInParameter(F084); + addInParameter(F085); + addInParameter(F086); + addInParameter(F087); + addInParameter(F088); + addInParameter(F089); + addInParameter(F090); + addInParameter(F091); + addInParameter(F092); + addInParameter(F093); + addInParameter(F094); + addInParameter(F095); + addInParameter(F096); + addInParameter(F097); + addInParameter(F098); + addInParameter(F099); + addInParameter(F100); + addInParameter(F101); + addInParameter(F102); + addInParameter(F103); + addInParameter(F104); + addInParameter(F105); + addInParameter(F106); + addInParameter(F107); + addInParameter(F108); + addInParameter(F109); + addInParameter(F110); + addInParameter(F111); + addInParameter(F112); + addInParameter(F113); + addInParameter(F114); + addInParameter(F115); + addInParameter(F116); + addInParameter(F117); + addInParameter(F118); + addInParameter(F119); + addInParameter(F120); + addInParameter(F121); + addInParameter(F122); + addInParameter(F123); + addInParameter(F124); + addInParameter(F125); + addInParameter(F126); + addInParameter(F127); + addInParameter(F128); + addInParameter(F129); + addInParameter(F130); + addInParameter(F131); + addInParameter(F132); + addInParameter(F133); + addInParameter(F134); + addInParameter(F135); + addInParameter(F136); + addInParameter(F137); + addInParameter(F138); + addInParameter(F139); + addInParameter(F140); + addInParameter(F141); + addInParameter(F142); + addInParameter(F143); + addInParameter(F144); + addInParameter(F145); + addInParameter(F146); + addInParameter(F147); + addInParameter(F148); + addInParameter(F149); + addInParameter(F150); + addInParameter(F151); + addInParameter(F152); + addInParameter(F153); + addInParameter(F154); + addInParameter(F155); + addInParameter(F156); + addInParameter(F157); + addInParameter(F158); + addInParameter(F159); + addInParameter(F160); + addInParameter(F161); + addInParameter(F162); + addInParameter(F163); + addInParameter(F164); + addInParameter(F165); + addInParameter(F166); + addInParameter(F167); + addInParameter(F168); + addInParameter(F169); + addInParameter(F170); + addInParameter(F171); + addInParameter(F172); + addInParameter(F173); + addInParameter(F174); + addInParameter(F175); + addInParameter(F176); + addInParameter(F177); + addInParameter(F178); + addInParameter(F179); + addInParameter(F180); + addInParameter(F181); + addInParameter(F182); + addInParameter(F183); + addInParameter(F184); + addInParameter(F185); + addInParameter(F186); + addInParameter(F187); + addInParameter(F188); + addInParameter(F189); + addInParameter(F190); + addInParameter(F191); + addInParameter(F192); + addInParameter(F193); + addInParameter(F194); + addInParameter(F195); + addInParameter(F196); + addInParameter(F197); + addInParameter(F198); + addInParameter(F199); + addInParameter(F200); + addInParameter(F201); + addInParameter(F202); + addInParameter(F203); + addInParameter(F204); + addInParameter(F205); + addInParameter(F206); + addInParameter(F207); + addInParameter(F208); + addInParameter(F209); + addInParameter(F210); + addInParameter(F211); + addInParameter(F212); + addInParameter(F213); + addInParameter(F214); + addInParameter(F215); + addInParameter(F216); + addInParameter(F217); + addInParameter(F218); + addInParameter(F219); + addInParameter(F220); + addInParameter(F221); + addInParameter(F222); + addInParameter(F223); + addInParameter(F224); + addInParameter(F225); + addInParameter(F226); + addInParameter(F227); + addInParameter(F228); + addInParameter(F229); + addInParameter(F230); + addInParameter(F231); + addInParameter(F232); + addInParameter(F233); + addInParameter(F234); + addInParameter(F235); + addInParameter(F236); + addInParameter(F237); + addInParameter(F238); + addInParameter(F239); + addInParameter(F240); + addInParameter(F241); + addInParameter(F242); + addInParameter(F243); + addInParameter(F244); + addInParameter(F245); + addInParameter(F246); + addInParameter(F247); + addInParameter(F248); + addInParameter(F249); + addInParameter(F250); + addInParameter(F251); + addInParameter(F252); + addInParameter(F253); + addInParameter(F254); + addInParameter(F255); + addInParameter(F256); + addInParameter(F257); + addInParameter(F258); + addInParameter(F259); + addInParameter(F260); + addInParameter(F261); + addInParameter(F262); + addInParameter(F263); + addInParameter(F264); + addInParameter(F265); + addInParameter(F266); + addInParameter(F267); + addInParameter(F268); + addInParameter(F269); + addInParameter(F270); + addInParameter(F271); + addInParameter(F272); + addInParameter(F273); + addInParameter(F274); + addInParameter(F275); + addInParameter(F276); + addInParameter(F277); + addInParameter(F278); + addInParameter(F279); + addInParameter(F280); + addInParameter(F281); + addInParameter(F282); + addInParameter(F283); + addInParameter(F284); + addInParameter(F285); + addInParameter(F286); + addInParameter(F287); + addInParameter(F288); + addInParameter(F289); + addInParameter(F290); + addInParameter(F291); + addInParameter(F292); + addInParameter(F293); + addInParameter(F294); + addInParameter(F295); + addInParameter(F296); + addInParameter(F297); + addInParameter(F298); + addInParameter(F299); + addInParameter(F300); + addInParameter(F301); + addInParameter(F302); + addInParameter(F303); + addInParameter(F304); + addInParameter(F305); + addInParameter(F306); + addInParameter(F307); + addInParameter(F308); + addInParameter(F309); + addInParameter(F310); + addInParameter(F311); + addInParameter(F312); + addInParameter(F313); + addInParameter(F314); + addInParameter(F315); + addInParameter(F316); + addInParameter(F317); + addInParameter(F318); + addInParameter(F319); + addInParameter(F320); + addInParameter(F321); + addInParameter(F322); + addInParameter(F323); + addInParameter(F324); + addInParameter(F325); + addInParameter(F326); + addInParameter(F327); + addInParameter(F328); + addInParameter(F329); + addInParameter(F330); + addInParameter(F331); + addInParameter(F332); + addInParameter(F333); + addInParameter(F334); + addInParameter(F335); + addInParameter(F336); + addInParameter(F337); + addInParameter(F338); + addInParameter(F339); + addInParameter(F340); + addInParameter(F341); + addInParameter(F342); + addInParameter(F343); + addInParameter(F344); + addInParameter(F345); + addInParameter(F346); + addInParameter(F347); + addInParameter(F348); + addInParameter(F349); + addInParameter(F350); + addInParameter(F351); + addInParameter(F352); + addInParameter(F353); + addInParameter(F354); + addInParameter(F355); + addInParameter(F356); + addInParameter(F357); + addInParameter(F358); + addInParameter(F359); + addInParameter(F360); + addInParameter(F361); + addInParameter(F362); + addInParameter(F363); + addInParameter(F364); + addInParameter(F365); + addInParameter(F366); + addInParameter(F367); + addInParameter(F368); + addInParameter(F369); + addInParameter(F370); + addInParameter(F371); + addInParameter(F372); + addInParameter(F373); + addInParameter(F374); + addInParameter(F375); + addInParameter(F376); + addInParameter(F377); + addInParameter(F378); + addInParameter(F379); + addInParameter(F380); + addInParameter(F381); + addInParameter(F382); + addInParameter(F383); + addInParameter(F384); + addInParameter(F385); + addInParameter(F386); + addInParameter(F387); + addInParameter(F388); + addInParameter(F389); + addInParameter(F390); + addInParameter(F391); + addInParameter(F392); + addInParameter(F393); + addInParameter(F394); + addInParameter(F395); + addInParameter(F396); + addInParameter(F397); + addInParameter(F398); + addInParameter(F399); + } + + /** + * Set the F000 parameter to the routine + */ + public void setF000(java.lang.Number value) { + setNumber(F000, value); + } + + /** + * Set the F000 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF000(org.jooq.Field field) { + setNumber(F000, field); + } + + /** + * Set the F001 parameter to the routine + */ + public void setF001(java.lang.Number value) { + setNumber(F001, value); + } + + /** + * Set the F001 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF001(org.jooq.Field field) { + setNumber(F001, field); + } + + /** + * Set the F002 parameter to the routine + */ + public void setF002(java.lang.Number value) { + setNumber(F002, value); + } + + /** + * Set the F002 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF002(org.jooq.Field field) { + setNumber(F002, field); + } + + /** + * Set the F003 parameter to the routine + */ + public void setF003(java.lang.Number value) { + setNumber(F003, value); + } + + /** + * Set the F003 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF003(org.jooq.Field field) { + setNumber(F003, field); + } + + /** + * Set the F004 parameter to the routine + */ + public void setF004(java.lang.Number value) { + setNumber(F004, value); + } + + /** + * Set the F004 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF004(org.jooq.Field field) { + setNumber(F004, field); + } + + /** + * Set the F005 parameter to the routine + */ + public void setF005(java.lang.Number value) { + setNumber(F005, value); + } + + /** + * Set the F005 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF005(org.jooq.Field field) { + setNumber(F005, field); + } + + /** + * Set the F006 parameter to the routine + */ + public void setF006(java.lang.Number value) { + setNumber(F006, value); + } + + /** + * Set the F006 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF006(org.jooq.Field field) { + setNumber(F006, field); + } + + /** + * Set the F007 parameter to the routine + */ + public void setF007(java.lang.Number value) { + setNumber(F007, value); + } + + /** + * Set the F007 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF007(org.jooq.Field field) { + setNumber(F007, field); + } + + /** + * Set the F008 parameter to the routine + */ + public void setF008(java.lang.Number value) { + setNumber(F008, value); + } + + /** + * Set the F008 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF008(org.jooq.Field field) { + setNumber(F008, field); + } + + /** + * Set the F009 parameter to the routine + */ + public void setF009(java.lang.Number value) { + setNumber(F009, value); + } + + /** + * Set the F009 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF009(org.jooq.Field field) { + setNumber(F009, field); + } + + /** + * Set the F010 parameter to the routine + */ + public void setF010(java.lang.Number value) { + setNumber(F010, value); + } + + /** + * Set the F010 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF010(org.jooq.Field field) { + setNumber(F010, field); + } + + /** + * Set the F011 parameter to the routine + */ + public void setF011(java.lang.Number value) { + setNumber(F011, value); + } + + /** + * Set the F011 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF011(org.jooq.Field field) { + setNumber(F011, field); + } + + /** + * Set the F012 parameter to the routine + */ + public void setF012(java.lang.Number value) { + setNumber(F012, value); + } + + /** + * Set the F012 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF012(org.jooq.Field field) { + setNumber(F012, field); + } + + /** + * Set the F013 parameter to the routine + */ + public void setF013(java.lang.Number value) { + setNumber(F013, value); + } + + /** + * Set the F013 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF013(org.jooq.Field field) { + setNumber(F013, field); + } + + /** + * Set the F014 parameter to the routine + */ + public void setF014(java.lang.Number value) { + setNumber(F014, value); + } + + /** + * Set the F014 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF014(org.jooq.Field field) { + setNumber(F014, field); + } + + /** + * Set the F015 parameter to the routine + */ + public void setF015(java.lang.Number value) { + setNumber(F015, value); + } + + /** + * Set the F015 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF015(org.jooq.Field field) { + setNumber(F015, field); + } + + /** + * Set the F016 parameter to the routine + */ + public void setF016(java.lang.Number value) { + setNumber(F016, value); + } + + /** + * Set the F016 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF016(org.jooq.Field field) { + setNumber(F016, field); + } + + /** + * Set the F017 parameter to the routine + */ + public void setF017(java.lang.Number value) { + setNumber(F017, value); + } + + /** + * Set the F017 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF017(org.jooq.Field field) { + setNumber(F017, field); + } + + /** + * Set the F018 parameter to the routine + */ + public void setF018(java.lang.Number value) { + setNumber(F018, value); + } + + /** + * Set the F018 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF018(org.jooq.Field field) { + setNumber(F018, field); + } + + /** + * Set the F019 parameter to the routine + */ + public void setF019(java.lang.Number value) { + setNumber(F019, value); + } + + /** + * Set the F019 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF019(org.jooq.Field field) { + setNumber(F019, field); + } + + /** + * Set the F020 parameter to the routine + */ + public void setF020(java.lang.Number value) { + setNumber(F020, value); + } + + /** + * Set the F020 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF020(org.jooq.Field field) { + setNumber(F020, field); + } + + /** + * Set the F021 parameter to the routine + */ + public void setF021(java.lang.Number value) { + setNumber(F021, value); + } + + /** + * Set the F021 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF021(org.jooq.Field field) { + setNumber(F021, field); + } + + /** + * Set the F022 parameter to the routine + */ + public void setF022(java.lang.Number value) { + setNumber(F022, value); + } + + /** + * Set the F022 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF022(org.jooq.Field field) { + setNumber(F022, field); + } + + /** + * Set the F023 parameter to the routine + */ + public void setF023(java.lang.Number value) { + setNumber(F023, value); + } + + /** + * Set the F023 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF023(org.jooq.Field field) { + setNumber(F023, field); + } + + /** + * Set the F024 parameter to the routine + */ + public void setF024(java.lang.Number value) { + setNumber(F024, value); + } + + /** + * Set the F024 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF024(org.jooq.Field field) { + setNumber(F024, field); + } + + /** + * Set the F025 parameter to the routine + */ + public void setF025(java.lang.Number value) { + setNumber(F025, value); + } + + /** + * Set the F025 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF025(org.jooq.Field field) { + setNumber(F025, field); + } + + /** + * Set the F026 parameter to the routine + */ + public void setF026(java.lang.Number value) { + setNumber(F026, value); + } + + /** + * Set the F026 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF026(org.jooq.Field field) { + setNumber(F026, field); + } + + /** + * Set the F027 parameter to the routine + */ + public void setF027(java.lang.Number value) { + setNumber(F027, value); + } + + /** + * Set the F027 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF027(org.jooq.Field field) { + setNumber(F027, field); + } + + /** + * Set the F028 parameter to the routine + */ + public void setF028(java.lang.Number value) { + setNumber(F028, value); + } + + /** + * Set the F028 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF028(org.jooq.Field field) { + setNumber(F028, field); + } + + /** + * Set the F029 parameter to the routine + */ + public void setF029(java.lang.Number value) { + setNumber(F029, value); + } + + /** + * Set the F029 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF029(org.jooq.Field field) { + setNumber(F029, field); + } + + /** + * Set the F030 parameter to the routine + */ + public void setF030(java.lang.Number value) { + setNumber(F030, value); + } + + /** + * Set the F030 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF030(org.jooq.Field field) { + setNumber(F030, field); + } + + /** + * Set the F031 parameter to the routine + */ + public void setF031(java.lang.Number value) { + setNumber(F031, value); + } + + /** + * Set the F031 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF031(org.jooq.Field field) { + setNumber(F031, field); + } + + /** + * Set the F032 parameter to the routine + */ + public void setF032(java.lang.Number value) { + setNumber(F032, value); + } + + /** + * Set the F032 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF032(org.jooq.Field field) { + setNumber(F032, field); + } + + /** + * Set the F033 parameter to the routine + */ + public void setF033(java.lang.Number value) { + setNumber(F033, value); + } + + /** + * Set the F033 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF033(org.jooq.Field field) { + setNumber(F033, field); + } + + /** + * Set the F034 parameter to the routine + */ + public void setF034(java.lang.Number value) { + setNumber(F034, value); + } + + /** + * Set the F034 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF034(org.jooq.Field field) { + setNumber(F034, field); + } + + /** + * Set the F035 parameter to the routine + */ + public void setF035(java.lang.Number value) { + setNumber(F035, value); + } + + /** + * Set the F035 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF035(org.jooq.Field field) { + setNumber(F035, field); + } + + /** + * Set the F036 parameter to the routine + */ + public void setF036(java.lang.Number value) { + setNumber(F036, value); + } + + /** + * Set the F036 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF036(org.jooq.Field field) { + setNumber(F036, field); + } + + /** + * Set the F037 parameter to the routine + */ + public void setF037(java.lang.Number value) { + setNumber(F037, value); + } + + /** + * Set the F037 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF037(org.jooq.Field field) { + setNumber(F037, field); + } + + /** + * Set the F038 parameter to the routine + */ + public void setF038(java.lang.Number value) { + setNumber(F038, value); + } + + /** + * Set the F038 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF038(org.jooq.Field field) { + setNumber(F038, field); + } + + /** + * Set the F039 parameter to the routine + */ + public void setF039(java.lang.Number value) { + setNumber(F039, value); + } + + /** + * Set the F039 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF039(org.jooq.Field field) { + setNumber(F039, field); + } + + /** + * Set the F040 parameter to the routine + */ + public void setF040(java.lang.Number value) { + setNumber(F040, value); + } + + /** + * Set the F040 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF040(org.jooq.Field field) { + setNumber(F040, field); + } + + /** + * Set the F041 parameter to the routine + */ + public void setF041(java.lang.Number value) { + setNumber(F041, value); + } + + /** + * Set the F041 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF041(org.jooq.Field field) { + setNumber(F041, field); + } + + /** + * Set the F042 parameter to the routine + */ + public void setF042(java.lang.Number value) { + setNumber(F042, value); + } + + /** + * Set the F042 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF042(org.jooq.Field field) { + setNumber(F042, field); + } + + /** + * Set the F043 parameter to the routine + */ + public void setF043(java.lang.Number value) { + setNumber(F043, value); + } + + /** + * Set the F043 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF043(org.jooq.Field field) { + setNumber(F043, field); + } + + /** + * Set the F044 parameter to the routine + */ + public void setF044(java.lang.Number value) { + setNumber(F044, value); + } + + /** + * Set the F044 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF044(org.jooq.Field field) { + setNumber(F044, field); + } + + /** + * Set the F045 parameter to the routine + */ + public void setF045(java.lang.Number value) { + setNumber(F045, value); + } + + /** + * Set the F045 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF045(org.jooq.Field field) { + setNumber(F045, field); + } + + /** + * Set the F046 parameter to the routine + */ + public void setF046(java.lang.Number value) { + setNumber(F046, value); + } + + /** + * Set the F046 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF046(org.jooq.Field field) { + setNumber(F046, field); + } + + /** + * Set the F047 parameter to the routine + */ + public void setF047(java.lang.Number value) { + setNumber(F047, value); + } + + /** + * Set the F047 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF047(org.jooq.Field field) { + setNumber(F047, field); + } + + /** + * Set the F048 parameter to the routine + */ + public void setF048(java.lang.Number value) { + setNumber(F048, value); + } + + /** + * Set the F048 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF048(org.jooq.Field field) { + setNumber(F048, field); + } + + /** + * Set the F049 parameter to the routine + */ + public void setF049(java.lang.Number value) { + setNumber(F049, value); + } + + /** + * Set the F049 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF049(org.jooq.Field field) { + setNumber(F049, field); + } + + /** + * Set the F050 parameter to the routine + */ + public void setF050(java.lang.Number value) { + setNumber(F050, value); + } + + /** + * Set the F050 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF050(org.jooq.Field field) { + setNumber(F050, field); + } + + /** + * Set the F051 parameter to the routine + */ + public void setF051(java.lang.Number value) { + setNumber(F051, value); + } + + /** + * Set the F051 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF051(org.jooq.Field field) { + setNumber(F051, field); + } + + /** + * Set the F052 parameter to the routine + */ + public void setF052(java.lang.Number value) { + setNumber(F052, value); + } + + /** + * Set the F052 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF052(org.jooq.Field field) { + setNumber(F052, field); + } + + /** + * Set the F053 parameter to the routine + */ + public void setF053(java.lang.Number value) { + setNumber(F053, value); + } + + /** + * Set the F053 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF053(org.jooq.Field field) { + setNumber(F053, field); + } + + /** + * Set the F054 parameter to the routine + */ + public void setF054(java.lang.Number value) { + setNumber(F054, value); + } + + /** + * Set the F054 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF054(org.jooq.Field field) { + setNumber(F054, field); + } + + /** + * Set the F055 parameter to the routine + */ + public void setF055(java.lang.Number value) { + setNumber(F055, value); + } + + /** + * Set the F055 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF055(org.jooq.Field field) { + setNumber(F055, field); + } + + /** + * Set the F056 parameter to the routine + */ + public void setF056(java.lang.Number value) { + setNumber(F056, value); + } + + /** + * Set the F056 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF056(org.jooq.Field field) { + setNumber(F056, field); + } + + /** + * Set the F057 parameter to the routine + */ + public void setF057(java.lang.Number value) { + setNumber(F057, value); + } + + /** + * Set the F057 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF057(org.jooq.Field field) { + setNumber(F057, field); + } + + /** + * Set the F058 parameter to the routine + */ + public void setF058(java.lang.Number value) { + setNumber(F058, value); + } + + /** + * Set the F058 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF058(org.jooq.Field field) { + setNumber(F058, field); + } + + /** + * Set the F059 parameter to the routine + */ + public void setF059(java.lang.Number value) { + setNumber(F059, value); + } + + /** + * Set the F059 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF059(org.jooq.Field field) { + setNumber(F059, field); + } + + /** + * Set the F060 parameter to the routine + */ + public void setF060(java.lang.Number value) { + setNumber(F060, value); + } + + /** + * Set the F060 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF060(org.jooq.Field field) { + setNumber(F060, field); + } + + /** + * Set the F061 parameter to the routine + */ + public void setF061(java.lang.Number value) { + setNumber(F061, value); + } + + /** + * Set the F061 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF061(org.jooq.Field field) { + setNumber(F061, field); + } + + /** + * Set the F062 parameter to the routine + */ + public void setF062(java.lang.Number value) { + setNumber(F062, value); + } + + /** + * Set the F062 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF062(org.jooq.Field field) { + setNumber(F062, field); + } + + /** + * Set the F063 parameter to the routine + */ + public void setF063(java.lang.Number value) { + setNumber(F063, value); + } + + /** + * Set the F063 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF063(org.jooq.Field field) { + setNumber(F063, field); + } + + /** + * Set the F064 parameter to the routine + */ + public void setF064(java.lang.Number value) { + setNumber(F064, value); + } + + /** + * Set the F064 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF064(org.jooq.Field field) { + setNumber(F064, field); + } + + /** + * Set the F065 parameter to the routine + */ + public void setF065(java.lang.Number value) { + setNumber(F065, value); + } + + /** + * Set the F065 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF065(org.jooq.Field field) { + setNumber(F065, field); + } + + /** + * Set the F066 parameter to the routine + */ + public void setF066(java.lang.Number value) { + setNumber(F066, value); + } + + /** + * Set the F066 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF066(org.jooq.Field field) { + setNumber(F066, field); + } + + /** + * Set the F067 parameter to the routine + */ + public void setF067(java.lang.Number value) { + setNumber(F067, value); + } + + /** + * Set the F067 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF067(org.jooq.Field field) { + setNumber(F067, field); + } + + /** + * Set the F068 parameter to the routine + */ + public void setF068(java.lang.Number value) { + setNumber(F068, value); + } + + /** + * Set the F068 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF068(org.jooq.Field field) { + setNumber(F068, field); + } + + /** + * Set the F069 parameter to the routine + */ + public void setF069(java.lang.Number value) { + setNumber(F069, value); + } + + /** + * Set the F069 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF069(org.jooq.Field field) { + setNumber(F069, field); + } + + /** + * Set the F070 parameter to the routine + */ + public void setF070(java.lang.Number value) { + setNumber(F070, value); + } + + /** + * Set the F070 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF070(org.jooq.Field field) { + setNumber(F070, field); + } + + /** + * Set the F071 parameter to the routine + */ + public void setF071(java.lang.Number value) { + setNumber(F071, value); + } + + /** + * Set the F071 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF071(org.jooq.Field field) { + setNumber(F071, field); + } + + /** + * Set the F072 parameter to the routine + */ + public void setF072(java.lang.Number value) { + setNumber(F072, value); + } + + /** + * Set the F072 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF072(org.jooq.Field field) { + setNumber(F072, field); + } + + /** + * Set the F073 parameter to the routine + */ + public void setF073(java.lang.Number value) { + setNumber(F073, value); + } + + /** + * Set the F073 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF073(org.jooq.Field field) { + setNumber(F073, field); + } + + /** + * Set the F074 parameter to the routine + */ + public void setF074(java.lang.Number value) { + setNumber(F074, value); + } + + /** + * Set the F074 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF074(org.jooq.Field field) { + setNumber(F074, field); + } + + /** + * Set the F075 parameter to the routine + */ + public void setF075(java.lang.Number value) { + setNumber(F075, value); + } + + /** + * Set the F075 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF075(org.jooq.Field field) { + setNumber(F075, field); + } + + /** + * Set the F076 parameter to the routine + */ + public void setF076(java.lang.Number value) { + setNumber(F076, value); + } + + /** + * Set the F076 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF076(org.jooq.Field field) { + setNumber(F076, field); + } + + /** + * Set the F077 parameter to the routine + */ + public void setF077(java.lang.Number value) { + setNumber(F077, value); + } + + /** + * Set the F077 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF077(org.jooq.Field field) { + setNumber(F077, field); + } + + /** + * Set the F078 parameter to the routine + */ + public void setF078(java.lang.Number value) { + setNumber(F078, value); + } + + /** + * Set the F078 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF078(org.jooq.Field field) { + setNumber(F078, field); + } + + /** + * Set the F079 parameter to the routine + */ + public void setF079(java.lang.Number value) { + setNumber(F079, value); + } + + /** + * Set the F079 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF079(org.jooq.Field field) { + setNumber(F079, field); + } + + /** + * Set the F080 parameter to the routine + */ + public void setF080(java.lang.Number value) { + setNumber(F080, value); + } + + /** + * Set the F080 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF080(org.jooq.Field field) { + setNumber(F080, field); + } + + /** + * Set the F081 parameter to the routine + */ + public void setF081(java.lang.Number value) { + setNumber(F081, value); + } + + /** + * Set the F081 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF081(org.jooq.Field field) { + setNumber(F081, field); + } + + /** + * Set the F082 parameter to the routine + */ + public void setF082(java.lang.Number value) { + setNumber(F082, value); + } + + /** + * Set the F082 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF082(org.jooq.Field field) { + setNumber(F082, field); + } + + /** + * Set the F083 parameter to the routine + */ + public void setF083(java.lang.Number value) { + setNumber(F083, value); + } + + /** + * Set the F083 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF083(org.jooq.Field field) { + setNumber(F083, field); + } + + /** + * Set the F084 parameter to the routine + */ + public void setF084(java.lang.Number value) { + setNumber(F084, value); + } + + /** + * Set the F084 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF084(org.jooq.Field field) { + setNumber(F084, field); + } + + /** + * Set the F085 parameter to the routine + */ + public void setF085(java.lang.Number value) { + setNumber(F085, value); + } + + /** + * Set the F085 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF085(org.jooq.Field field) { + setNumber(F085, field); + } + + /** + * Set the F086 parameter to the routine + */ + public void setF086(java.lang.Number value) { + setNumber(F086, value); + } + + /** + * Set the F086 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF086(org.jooq.Field field) { + setNumber(F086, field); + } + + /** + * Set the F087 parameter to the routine + */ + public void setF087(java.lang.Number value) { + setNumber(F087, value); + } + + /** + * Set the F087 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF087(org.jooq.Field field) { + setNumber(F087, field); + } + + /** + * Set the F088 parameter to the routine + */ + public void setF088(java.lang.Number value) { + setNumber(F088, value); + } + + /** + * Set the F088 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF088(org.jooq.Field field) { + setNumber(F088, field); + } + + /** + * Set the F089 parameter to the routine + */ + public void setF089(java.lang.Number value) { + setNumber(F089, value); + } + + /** + * Set the F089 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF089(org.jooq.Field field) { + setNumber(F089, field); + } + + /** + * Set the F090 parameter to the routine + */ + public void setF090(java.lang.Number value) { + setNumber(F090, value); + } + + /** + * Set the F090 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF090(org.jooq.Field field) { + setNumber(F090, field); + } + + /** + * Set the F091 parameter to the routine + */ + public void setF091(java.lang.Number value) { + setNumber(F091, value); + } + + /** + * Set the F091 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF091(org.jooq.Field field) { + setNumber(F091, field); + } + + /** + * Set the F092 parameter to the routine + */ + public void setF092(java.lang.Number value) { + setNumber(F092, value); + } + + /** + * Set the F092 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF092(org.jooq.Field field) { + setNumber(F092, field); + } + + /** + * Set the F093 parameter to the routine + */ + public void setF093(java.lang.Number value) { + setNumber(F093, value); + } + + /** + * Set the F093 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF093(org.jooq.Field field) { + setNumber(F093, field); + } + + /** + * Set the F094 parameter to the routine + */ + public void setF094(java.lang.Number value) { + setNumber(F094, value); + } + + /** + * Set the F094 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF094(org.jooq.Field field) { + setNumber(F094, field); + } + + /** + * Set the F095 parameter to the routine + */ + public void setF095(java.lang.Number value) { + setNumber(F095, value); + } + + /** + * Set the F095 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF095(org.jooq.Field field) { + setNumber(F095, field); + } + + /** + * Set the F096 parameter to the routine + */ + public void setF096(java.lang.Number value) { + setNumber(F096, value); + } + + /** + * Set the F096 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF096(org.jooq.Field field) { + setNumber(F096, field); + } + + /** + * Set the F097 parameter to the routine + */ + public void setF097(java.lang.Number value) { + setNumber(F097, value); + } + + /** + * Set the F097 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF097(org.jooq.Field field) { + setNumber(F097, field); + } + + /** + * Set the F098 parameter to the routine + */ + public void setF098(java.lang.Number value) { + setNumber(F098, value); + } + + /** + * Set the F098 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF098(org.jooq.Field field) { + setNumber(F098, field); + } + + /** + * Set the F099 parameter to the routine + */ + public void setF099(java.lang.Number value) { + setNumber(F099, value); + } + + /** + * Set the F099 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF099(org.jooq.Field field) { + setNumber(F099, field); + } + + /** + * Set the F100 parameter to the routine + */ + public void setF100(java.lang.Number value) { + setNumber(F100, value); + } + + /** + * Set the F100 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF100(org.jooq.Field field) { + setNumber(F100, field); + } + + /** + * Set the F101 parameter to the routine + */ + public void setF101(java.lang.Number value) { + setNumber(F101, value); + } + + /** + * Set the F101 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF101(org.jooq.Field field) { + setNumber(F101, field); + } + + /** + * Set the F102 parameter to the routine + */ + public void setF102(java.lang.Number value) { + setNumber(F102, value); + } + + /** + * Set the F102 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF102(org.jooq.Field field) { + setNumber(F102, field); + } + + /** + * Set the F103 parameter to the routine + */ + public void setF103(java.lang.Number value) { + setNumber(F103, value); + } + + /** + * Set the F103 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF103(org.jooq.Field field) { + setNumber(F103, field); + } + + /** + * Set the F104 parameter to the routine + */ + public void setF104(java.lang.Number value) { + setNumber(F104, value); + } + + /** + * Set the F104 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF104(org.jooq.Field field) { + setNumber(F104, field); + } + + /** + * Set the F105 parameter to the routine + */ + public void setF105(java.lang.Number value) { + setNumber(F105, value); + } + + /** + * Set the F105 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF105(org.jooq.Field field) { + setNumber(F105, field); + } + + /** + * Set the F106 parameter to the routine + */ + public void setF106(java.lang.Number value) { + setNumber(F106, value); + } + + /** + * Set the F106 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF106(org.jooq.Field field) { + setNumber(F106, field); + } + + /** + * Set the F107 parameter to the routine + */ + public void setF107(java.lang.Number value) { + setNumber(F107, value); + } + + /** + * Set the F107 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF107(org.jooq.Field field) { + setNumber(F107, field); + } + + /** + * Set the F108 parameter to the routine + */ + public void setF108(java.lang.Number value) { + setNumber(F108, value); + } + + /** + * Set the F108 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF108(org.jooq.Field field) { + setNumber(F108, field); + } + + /** + * Set the F109 parameter to the routine + */ + public void setF109(java.lang.Number value) { + setNumber(F109, value); + } + + /** + * Set the F109 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF109(org.jooq.Field field) { + setNumber(F109, field); + } + + /** + * Set the F110 parameter to the routine + */ + public void setF110(java.lang.Number value) { + setNumber(F110, value); + } + + /** + * Set the F110 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF110(org.jooq.Field field) { + setNumber(F110, field); + } + + /** + * Set the F111 parameter to the routine + */ + public void setF111(java.lang.Number value) { + setNumber(F111, value); + } + + /** + * Set the F111 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF111(org.jooq.Field field) { + setNumber(F111, field); + } + + /** + * Set the F112 parameter to the routine + */ + public void setF112(java.lang.Number value) { + setNumber(F112, value); + } + + /** + * Set the F112 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF112(org.jooq.Field field) { + setNumber(F112, field); + } + + /** + * Set the F113 parameter to the routine + */ + public void setF113(java.lang.Number value) { + setNumber(F113, value); + } + + /** + * Set the F113 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF113(org.jooq.Field field) { + setNumber(F113, field); + } + + /** + * Set the F114 parameter to the routine + */ + public void setF114(java.lang.Number value) { + setNumber(F114, value); + } + + /** + * Set the F114 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF114(org.jooq.Field field) { + setNumber(F114, field); + } + + /** + * Set the F115 parameter to the routine + */ + public void setF115(java.lang.Number value) { + setNumber(F115, value); + } + + /** + * Set the F115 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF115(org.jooq.Field field) { + setNumber(F115, field); + } + + /** + * Set the F116 parameter to the routine + */ + public void setF116(java.lang.Number value) { + setNumber(F116, value); + } + + /** + * Set the F116 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF116(org.jooq.Field field) { + setNumber(F116, field); + } + + /** + * Set the F117 parameter to the routine + */ + public void setF117(java.lang.Number value) { + setNumber(F117, value); + } + + /** + * Set the F117 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF117(org.jooq.Field field) { + setNumber(F117, field); + } + + /** + * Set the F118 parameter to the routine + */ + public void setF118(java.lang.Number value) { + setNumber(F118, value); + } + + /** + * Set the F118 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF118(org.jooq.Field field) { + setNumber(F118, field); + } + + /** + * Set the F119 parameter to the routine + */ + public void setF119(java.lang.Number value) { + setNumber(F119, value); + } + + /** + * Set the F119 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF119(org.jooq.Field field) { + setNumber(F119, field); + } + + /** + * Set the F120 parameter to the routine + */ + public void setF120(java.lang.Number value) { + setNumber(F120, value); + } + + /** + * Set the F120 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF120(org.jooq.Field field) { + setNumber(F120, field); + } + + /** + * Set the F121 parameter to the routine + */ + public void setF121(java.lang.Number value) { + setNumber(F121, value); + } + + /** + * Set the F121 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF121(org.jooq.Field field) { + setNumber(F121, field); + } + + /** + * Set the F122 parameter to the routine + */ + public void setF122(java.lang.Number value) { + setNumber(F122, value); + } + + /** + * Set the F122 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF122(org.jooq.Field field) { + setNumber(F122, field); + } + + /** + * Set the F123 parameter to the routine + */ + public void setF123(java.lang.Number value) { + setNumber(F123, value); + } + + /** + * Set the F123 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF123(org.jooq.Field field) { + setNumber(F123, field); + } + + /** + * Set the F124 parameter to the routine + */ + public void setF124(java.lang.Number value) { + setNumber(F124, value); + } + + /** + * Set the F124 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF124(org.jooq.Field field) { + setNumber(F124, field); + } + + /** + * Set the F125 parameter to the routine + */ + public void setF125(java.lang.Number value) { + setNumber(F125, value); + } + + /** + * Set the F125 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF125(org.jooq.Field field) { + setNumber(F125, field); + } + + /** + * Set the F126 parameter to the routine + */ + public void setF126(java.lang.Number value) { + setNumber(F126, value); + } + + /** + * Set the F126 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF126(org.jooq.Field field) { + setNumber(F126, field); + } + + /** + * Set the F127 parameter to the routine + */ + public void setF127(java.lang.Number value) { + setNumber(F127, value); + } + + /** + * Set the F127 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF127(org.jooq.Field field) { + setNumber(F127, field); + } + + /** + * Set the F128 parameter to the routine + */ + public void setF128(java.lang.Number value) { + setNumber(F128, value); + } + + /** + * Set the F128 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF128(org.jooq.Field field) { + setNumber(F128, field); + } + + /** + * Set the F129 parameter to the routine + */ + public void setF129(java.lang.Number value) { + setNumber(F129, value); + } + + /** + * Set the F129 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF129(org.jooq.Field field) { + setNumber(F129, field); + } + + /** + * Set the F130 parameter to the routine + */ + public void setF130(java.lang.Number value) { + setNumber(F130, value); + } + + /** + * Set the F130 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF130(org.jooq.Field field) { + setNumber(F130, field); + } + + /** + * Set the F131 parameter to the routine + */ + public void setF131(java.lang.Number value) { + setNumber(F131, value); + } + + /** + * Set the F131 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF131(org.jooq.Field field) { + setNumber(F131, field); + } + + /** + * Set the F132 parameter to the routine + */ + public void setF132(java.lang.Number value) { + setNumber(F132, value); + } + + /** + * Set the F132 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF132(org.jooq.Field field) { + setNumber(F132, field); + } + + /** + * Set the F133 parameter to the routine + */ + public void setF133(java.lang.Number value) { + setNumber(F133, value); + } + + /** + * Set the F133 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF133(org.jooq.Field field) { + setNumber(F133, field); + } + + /** + * Set the F134 parameter to the routine + */ + public void setF134(java.lang.Number value) { + setNumber(F134, value); + } + + /** + * Set the F134 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF134(org.jooq.Field field) { + setNumber(F134, field); + } + + /** + * Set the F135 parameter to the routine + */ + public void setF135(java.lang.Number value) { + setNumber(F135, value); + } + + /** + * Set the F135 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF135(org.jooq.Field field) { + setNumber(F135, field); + } + + /** + * Set the F136 parameter to the routine + */ + public void setF136(java.lang.Number value) { + setNumber(F136, value); + } + + /** + * Set the F136 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF136(org.jooq.Field field) { + setNumber(F136, field); + } + + /** + * Set the F137 parameter to the routine + */ + public void setF137(java.lang.Number value) { + setNumber(F137, value); + } + + /** + * Set the F137 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF137(org.jooq.Field field) { + setNumber(F137, field); + } + + /** + * Set the F138 parameter to the routine + */ + public void setF138(java.lang.Number value) { + setNumber(F138, value); + } + + /** + * Set the F138 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF138(org.jooq.Field field) { + setNumber(F138, field); + } + + /** + * Set the F139 parameter to the routine + */ + public void setF139(java.lang.Number value) { + setNumber(F139, value); + } + + /** + * Set the F139 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF139(org.jooq.Field field) { + setNumber(F139, field); + } + + /** + * Set the F140 parameter to the routine + */ + public void setF140(java.lang.Number value) { + setNumber(F140, value); + } + + /** + * Set the F140 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF140(org.jooq.Field field) { + setNumber(F140, field); + } + + /** + * Set the F141 parameter to the routine + */ + public void setF141(java.lang.Number value) { + setNumber(F141, value); + } + + /** + * Set the F141 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF141(org.jooq.Field field) { + setNumber(F141, field); + } + + /** + * Set the F142 parameter to the routine + */ + public void setF142(java.lang.Number value) { + setNumber(F142, value); + } + + /** + * Set the F142 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF142(org.jooq.Field field) { + setNumber(F142, field); + } + + /** + * Set the F143 parameter to the routine + */ + public void setF143(java.lang.Number value) { + setNumber(F143, value); + } + + /** + * Set the F143 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF143(org.jooq.Field field) { + setNumber(F143, field); + } + + /** + * Set the F144 parameter to the routine + */ + public void setF144(java.lang.Number value) { + setNumber(F144, value); + } + + /** + * Set the F144 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF144(org.jooq.Field field) { + setNumber(F144, field); + } + + /** + * Set the F145 parameter to the routine + */ + public void setF145(java.lang.Number value) { + setNumber(F145, value); + } + + /** + * Set the F145 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF145(org.jooq.Field field) { + setNumber(F145, field); + } + + /** + * Set the F146 parameter to the routine + */ + public void setF146(java.lang.Number value) { + setNumber(F146, value); + } + + /** + * Set the F146 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF146(org.jooq.Field field) { + setNumber(F146, field); + } + + /** + * Set the F147 parameter to the routine + */ + public void setF147(java.lang.Number value) { + setNumber(F147, value); + } + + /** + * Set the F147 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF147(org.jooq.Field field) { + setNumber(F147, field); + } + + /** + * Set the F148 parameter to the routine + */ + public void setF148(java.lang.Number value) { + setNumber(F148, value); + } + + /** + * Set the F148 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF148(org.jooq.Field field) { + setNumber(F148, field); + } + + /** + * Set the F149 parameter to the routine + */ + public void setF149(java.lang.Number value) { + setNumber(F149, value); + } + + /** + * Set the F149 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF149(org.jooq.Field field) { + setNumber(F149, field); + } + + /** + * Set the F150 parameter to the routine + */ + public void setF150(java.lang.Number value) { + setNumber(F150, value); + } + + /** + * Set the F150 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF150(org.jooq.Field field) { + setNumber(F150, field); + } + + /** + * Set the F151 parameter to the routine + */ + public void setF151(java.lang.Number value) { + setNumber(F151, value); + } + + /** + * Set the F151 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF151(org.jooq.Field field) { + setNumber(F151, field); + } + + /** + * Set the F152 parameter to the routine + */ + public void setF152(java.lang.Number value) { + setNumber(F152, value); + } + + /** + * Set the F152 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF152(org.jooq.Field field) { + setNumber(F152, field); + } + + /** + * Set the F153 parameter to the routine + */ + public void setF153(java.lang.Number value) { + setNumber(F153, value); + } + + /** + * Set the F153 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF153(org.jooq.Field field) { + setNumber(F153, field); + } + + /** + * Set the F154 parameter to the routine + */ + public void setF154(java.lang.Number value) { + setNumber(F154, value); + } + + /** + * Set the F154 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF154(org.jooq.Field field) { + setNumber(F154, field); + } + + /** + * Set the F155 parameter to the routine + */ + public void setF155(java.lang.Number value) { + setNumber(F155, value); + } + + /** + * Set the F155 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF155(org.jooq.Field field) { + setNumber(F155, field); + } + + /** + * Set the F156 parameter to the routine + */ + public void setF156(java.lang.Number value) { + setNumber(F156, value); + } + + /** + * Set the F156 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF156(org.jooq.Field field) { + setNumber(F156, field); + } + + /** + * Set the F157 parameter to the routine + */ + public void setF157(java.lang.Number value) { + setNumber(F157, value); + } + + /** + * Set the F157 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF157(org.jooq.Field field) { + setNumber(F157, field); + } + + /** + * Set the F158 parameter to the routine + */ + public void setF158(java.lang.Number value) { + setNumber(F158, value); + } + + /** + * Set the F158 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF158(org.jooq.Field field) { + setNumber(F158, field); + } + + /** + * Set the F159 parameter to the routine + */ + public void setF159(java.lang.Number value) { + setNumber(F159, value); + } + + /** + * Set the F159 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF159(org.jooq.Field field) { + setNumber(F159, field); + } + + /** + * Set the F160 parameter to the routine + */ + public void setF160(java.lang.Number value) { + setNumber(F160, value); + } + + /** + * Set the F160 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF160(org.jooq.Field field) { + setNumber(F160, field); + } + + /** + * Set the F161 parameter to the routine + */ + public void setF161(java.lang.Number value) { + setNumber(F161, value); + } + + /** + * Set the F161 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF161(org.jooq.Field field) { + setNumber(F161, field); + } + + /** + * Set the F162 parameter to the routine + */ + public void setF162(java.lang.Number value) { + setNumber(F162, value); + } + + /** + * Set the F162 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF162(org.jooq.Field field) { + setNumber(F162, field); + } + + /** + * Set the F163 parameter to the routine + */ + public void setF163(java.lang.Number value) { + setNumber(F163, value); + } + + /** + * Set the F163 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF163(org.jooq.Field field) { + setNumber(F163, field); + } + + /** + * Set the F164 parameter to the routine + */ + public void setF164(java.lang.Number value) { + setNumber(F164, value); + } + + /** + * Set the F164 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF164(org.jooq.Field field) { + setNumber(F164, field); + } + + /** + * Set the F165 parameter to the routine + */ + public void setF165(java.lang.Number value) { + setNumber(F165, value); + } + + /** + * Set the F165 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF165(org.jooq.Field field) { + setNumber(F165, field); + } + + /** + * Set the F166 parameter to the routine + */ + public void setF166(java.lang.Number value) { + setNumber(F166, value); + } + + /** + * Set the F166 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF166(org.jooq.Field field) { + setNumber(F166, field); + } + + /** + * Set the F167 parameter to the routine + */ + public void setF167(java.lang.Number value) { + setNumber(F167, value); + } + + /** + * Set the F167 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF167(org.jooq.Field field) { + setNumber(F167, field); + } + + /** + * Set the F168 parameter to the routine + */ + public void setF168(java.lang.Number value) { + setNumber(F168, value); + } + + /** + * Set the F168 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF168(org.jooq.Field field) { + setNumber(F168, field); + } + + /** + * Set the F169 parameter to the routine + */ + public void setF169(java.lang.Number value) { + setNumber(F169, value); + } + + /** + * Set the F169 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF169(org.jooq.Field field) { + setNumber(F169, field); + } + + /** + * Set the F170 parameter to the routine + */ + public void setF170(java.lang.Number value) { + setNumber(F170, value); + } + + /** + * Set the F170 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF170(org.jooq.Field field) { + setNumber(F170, field); + } + + /** + * Set the F171 parameter to the routine + */ + public void setF171(java.lang.Number value) { + setNumber(F171, value); + } + + /** + * Set the F171 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF171(org.jooq.Field field) { + setNumber(F171, field); + } + + /** + * Set the F172 parameter to the routine + */ + public void setF172(java.lang.Number value) { + setNumber(F172, value); + } + + /** + * Set the F172 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF172(org.jooq.Field field) { + setNumber(F172, field); + } + + /** + * Set the F173 parameter to the routine + */ + public void setF173(java.lang.Number value) { + setNumber(F173, value); + } + + /** + * Set the F173 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF173(org.jooq.Field field) { + setNumber(F173, field); + } + + /** + * Set the F174 parameter to the routine + */ + public void setF174(java.lang.Number value) { + setNumber(F174, value); + } + + /** + * Set the F174 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF174(org.jooq.Field field) { + setNumber(F174, field); + } + + /** + * Set the F175 parameter to the routine + */ + public void setF175(java.lang.Number value) { + setNumber(F175, value); + } + + /** + * Set the F175 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF175(org.jooq.Field field) { + setNumber(F175, field); + } + + /** + * Set the F176 parameter to the routine + */ + public void setF176(java.lang.Number value) { + setNumber(F176, value); + } + + /** + * Set the F176 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF176(org.jooq.Field field) { + setNumber(F176, field); + } + + /** + * Set the F177 parameter to the routine + */ + public void setF177(java.lang.Number value) { + setNumber(F177, value); + } + + /** + * Set the F177 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF177(org.jooq.Field field) { + setNumber(F177, field); + } + + /** + * Set the F178 parameter to the routine + */ + public void setF178(java.lang.Number value) { + setNumber(F178, value); + } + + /** + * Set the F178 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF178(org.jooq.Field field) { + setNumber(F178, field); + } + + /** + * Set the F179 parameter to the routine + */ + public void setF179(java.lang.Number value) { + setNumber(F179, value); + } + + /** + * Set the F179 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF179(org.jooq.Field field) { + setNumber(F179, field); + } + + /** + * Set the F180 parameter to the routine + */ + public void setF180(java.lang.Number value) { + setNumber(F180, value); + } + + /** + * Set the F180 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF180(org.jooq.Field field) { + setNumber(F180, field); + } + + /** + * Set the F181 parameter to the routine + */ + public void setF181(java.lang.Number value) { + setNumber(F181, value); + } + + /** + * Set the F181 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF181(org.jooq.Field field) { + setNumber(F181, field); + } + + /** + * Set the F182 parameter to the routine + */ + public void setF182(java.lang.Number value) { + setNumber(F182, value); + } + + /** + * Set the F182 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF182(org.jooq.Field field) { + setNumber(F182, field); + } + + /** + * Set the F183 parameter to the routine + */ + public void setF183(java.lang.Number value) { + setNumber(F183, value); + } + + /** + * Set the F183 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF183(org.jooq.Field field) { + setNumber(F183, field); + } + + /** + * Set the F184 parameter to the routine + */ + public void setF184(java.lang.Number value) { + setNumber(F184, value); + } + + /** + * Set the F184 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF184(org.jooq.Field field) { + setNumber(F184, field); + } + + /** + * Set the F185 parameter to the routine + */ + public void setF185(java.lang.Number value) { + setNumber(F185, value); + } + + /** + * Set the F185 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF185(org.jooq.Field field) { + setNumber(F185, field); + } + + /** + * Set the F186 parameter to the routine + */ + public void setF186(java.lang.Number value) { + setNumber(F186, value); + } + + /** + * Set the F186 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF186(org.jooq.Field field) { + setNumber(F186, field); + } + + /** + * Set the F187 parameter to the routine + */ + public void setF187(java.lang.Number value) { + setNumber(F187, value); + } + + /** + * Set the F187 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF187(org.jooq.Field field) { + setNumber(F187, field); + } + + /** + * Set the F188 parameter to the routine + */ + public void setF188(java.lang.Number value) { + setNumber(F188, value); + } + + /** + * Set the F188 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF188(org.jooq.Field field) { + setNumber(F188, field); + } + + /** + * Set the F189 parameter to the routine + */ + public void setF189(java.lang.Number value) { + setNumber(F189, value); + } + + /** + * Set the F189 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF189(org.jooq.Field field) { + setNumber(F189, field); + } + + /** + * Set the F190 parameter to the routine + */ + public void setF190(java.lang.Number value) { + setNumber(F190, value); + } + + /** + * Set the F190 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF190(org.jooq.Field field) { + setNumber(F190, field); + } + + /** + * Set the F191 parameter to the routine + */ + public void setF191(java.lang.Number value) { + setNumber(F191, value); + } + + /** + * Set the F191 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF191(org.jooq.Field field) { + setNumber(F191, field); + } + + /** + * Set the F192 parameter to the routine + */ + public void setF192(java.lang.Number value) { + setNumber(F192, value); + } + + /** + * Set the F192 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF192(org.jooq.Field field) { + setNumber(F192, field); + } + + /** + * Set the F193 parameter to the routine + */ + public void setF193(java.lang.Number value) { + setNumber(F193, value); + } + + /** + * Set the F193 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF193(org.jooq.Field field) { + setNumber(F193, field); + } + + /** + * Set the F194 parameter to the routine + */ + public void setF194(java.lang.Number value) { + setNumber(F194, value); + } + + /** + * Set the F194 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF194(org.jooq.Field field) { + setNumber(F194, field); + } + + /** + * Set the F195 parameter to the routine + */ + public void setF195(java.lang.Number value) { + setNumber(F195, value); + } + + /** + * Set the F195 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF195(org.jooq.Field field) { + setNumber(F195, field); + } + + /** + * Set the F196 parameter to the routine + */ + public void setF196(java.lang.Number value) { + setNumber(F196, value); + } + + /** + * Set the F196 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF196(org.jooq.Field field) { + setNumber(F196, field); + } + + /** + * Set the F197 parameter to the routine + */ + public void setF197(java.lang.Number value) { + setNumber(F197, value); + } + + /** + * Set the F197 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF197(org.jooq.Field field) { + setNumber(F197, field); + } + + /** + * Set the F198 parameter to the routine + */ + public void setF198(java.lang.Number value) { + setNumber(F198, value); + } + + /** + * Set the F198 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF198(org.jooq.Field field) { + setNumber(F198, field); + } + + /** + * Set the F199 parameter to the routine + */ + public void setF199(java.lang.Number value) { + setNumber(F199, value); + } + + /** + * Set the F199 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF199(org.jooq.Field field) { + setNumber(F199, field); + } + + /** + * Set the F200 parameter to the routine + */ + public void setF200(java.lang.Number value) { + setNumber(F200, value); + } + + /** + * Set the F200 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF200(org.jooq.Field field) { + setNumber(F200, field); + } + + /** + * Set the F201 parameter to the routine + */ + public void setF201(java.lang.Number value) { + setNumber(F201, value); + } + + /** + * Set the F201 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF201(org.jooq.Field field) { + setNumber(F201, field); + } + + /** + * Set the F202 parameter to the routine + */ + public void setF202(java.lang.Number value) { + setNumber(F202, value); + } + + /** + * Set the F202 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF202(org.jooq.Field field) { + setNumber(F202, field); + } + + /** + * Set the F203 parameter to the routine + */ + public void setF203(java.lang.Number value) { + setNumber(F203, value); + } + + /** + * Set the F203 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF203(org.jooq.Field field) { + setNumber(F203, field); + } + + /** + * Set the F204 parameter to the routine + */ + public void setF204(java.lang.Number value) { + setNumber(F204, value); + } + + /** + * Set the F204 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF204(org.jooq.Field field) { + setNumber(F204, field); + } + + /** + * Set the F205 parameter to the routine + */ + public void setF205(java.lang.Number value) { + setNumber(F205, value); + } + + /** + * Set the F205 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF205(org.jooq.Field field) { + setNumber(F205, field); + } + + /** + * Set the F206 parameter to the routine + */ + public void setF206(java.lang.Number value) { + setNumber(F206, value); + } + + /** + * Set the F206 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF206(org.jooq.Field field) { + setNumber(F206, field); + } + + /** + * Set the F207 parameter to the routine + */ + public void setF207(java.lang.Number value) { + setNumber(F207, value); + } + + /** + * Set the F207 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF207(org.jooq.Field field) { + setNumber(F207, field); + } + + /** + * Set the F208 parameter to the routine + */ + public void setF208(java.lang.Number value) { + setNumber(F208, value); + } + + /** + * Set the F208 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF208(org.jooq.Field field) { + setNumber(F208, field); + } + + /** + * Set the F209 parameter to the routine + */ + public void setF209(java.lang.Number value) { + setNumber(F209, value); + } + + /** + * Set the F209 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF209(org.jooq.Field field) { + setNumber(F209, field); + } + + /** + * Set the F210 parameter to the routine + */ + public void setF210(java.lang.Number value) { + setNumber(F210, value); + } + + /** + * Set the F210 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF210(org.jooq.Field field) { + setNumber(F210, field); + } + + /** + * Set the F211 parameter to the routine + */ + public void setF211(java.lang.Number value) { + setNumber(F211, value); + } + + /** + * Set the F211 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF211(org.jooq.Field field) { + setNumber(F211, field); + } + + /** + * Set the F212 parameter to the routine + */ + public void setF212(java.lang.Number value) { + setNumber(F212, value); + } + + /** + * Set the F212 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF212(org.jooq.Field field) { + setNumber(F212, field); + } + + /** + * Set the F213 parameter to the routine + */ + public void setF213(java.lang.Number value) { + setNumber(F213, value); + } + + /** + * Set the F213 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF213(org.jooq.Field field) { + setNumber(F213, field); + } + + /** + * Set the F214 parameter to the routine + */ + public void setF214(java.lang.Number value) { + setNumber(F214, value); + } + + /** + * Set the F214 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF214(org.jooq.Field field) { + setNumber(F214, field); + } + + /** + * Set the F215 parameter to the routine + */ + public void setF215(java.lang.Number value) { + setNumber(F215, value); + } + + /** + * Set the F215 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF215(org.jooq.Field field) { + setNumber(F215, field); + } + + /** + * Set the F216 parameter to the routine + */ + public void setF216(java.lang.Number value) { + setNumber(F216, value); + } + + /** + * Set the F216 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF216(org.jooq.Field field) { + setNumber(F216, field); + } + + /** + * Set the F217 parameter to the routine + */ + public void setF217(java.lang.Number value) { + setNumber(F217, value); + } + + /** + * Set the F217 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF217(org.jooq.Field field) { + setNumber(F217, field); + } + + /** + * Set the F218 parameter to the routine + */ + public void setF218(java.lang.Number value) { + setNumber(F218, value); + } + + /** + * Set the F218 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF218(org.jooq.Field field) { + setNumber(F218, field); + } + + /** + * Set the F219 parameter to the routine + */ + public void setF219(java.lang.Number value) { + setNumber(F219, value); + } + + /** + * Set the F219 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF219(org.jooq.Field field) { + setNumber(F219, field); + } + + /** + * Set the F220 parameter to the routine + */ + public void setF220(java.lang.Number value) { + setNumber(F220, value); + } + + /** + * Set the F220 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF220(org.jooq.Field field) { + setNumber(F220, field); + } + + /** + * Set the F221 parameter to the routine + */ + public void setF221(java.lang.Number value) { + setNumber(F221, value); + } + + /** + * Set the F221 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF221(org.jooq.Field field) { + setNumber(F221, field); + } + + /** + * Set the F222 parameter to the routine + */ + public void setF222(java.lang.Number value) { + setNumber(F222, value); + } + + /** + * Set the F222 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF222(org.jooq.Field field) { + setNumber(F222, field); + } + + /** + * Set the F223 parameter to the routine + */ + public void setF223(java.lang.Number value) { + setNumber(F223, value); + } + + /** + * Set the F223 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF223(org.jooq.Field field) { + setNumber(F223, field); + } + + /** + * Set the F224 parameter to the routine + */ + public void setF224(java.lang.Number value) { + setNumber(F224, value); + } + + /** + * Set the F224 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF224(org.jooq.Field field) { + setNumber(F224, field); + } + + /** + * Set the F225 parameter to the routine + */ + public void setF225(java.lang.Number value) { + setNumber(F225, value); + } + + /** + * Set the F225 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF225(org.jooq.Field field) { + setNumber(F225, field); + } + + /** + * Set the F226 parameter to the routine + */ + public void setF226(java.lang.Number value) { + setNumber(F226, value); + } + + /** + * Set the F226 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF226(org.jooq.Field field) { + setNumber(F226, field); + } + + /** + * Set the F227 parameter to the routine + */ + public void setF227(java.lang.Number value) { + setNumber(F227, value); + } + + /** + * Set the F227 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF227(org.jooq.Field field) { + setNumber(F227, field); + } + + /** + * Set the F228 parameter to the routine + */ + public void setF228(java.lang.Number value) { + setNumber(F228, value); + } + + /** + * Set the F228 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF228(org.jooq.Field field) { + setNumber(F228, field); + } + + /** + * Set the F229 parameter to the routine + */ + public void setF229(java.lang.Number value) { + setNumber(F229, value); + } + + /** + * Set the F229 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF229(org.jooq.Field field) { + setNumber(F229, field); + } + + /** + * Set the F230 parameter to the routine + */ + public void setF230(java.lang.Number value) { + setNumber(F230, value); + } + + /** + * Set the F230 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF230(org.jooq.Field field) { + setNumber(F230, field); + } + + /** + * Set the F231 parameter to the routine + */ + public void setF231(java.lang.Number value) { + setNumber(F231, value); + } + + /** + * Set the F231 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF231(org.jooq.Field field) { + setNumber(F231, field); + } + + /** + * Set the F232 parameter to the routine + */ + public void setF232(java.lang.Number value) { + setNumber(F232, value); + } + + /** + * Set the F232 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF232(org.jooq.Field field) { + setNumber(F232, field); + } + + /** + * Set the F233 parameter to the routine + */ + public void setF233(java.lang.Number value) { + setNumber(F233, value); + } + + /** + * Set the F233 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF233(org.jooq.Field field) { + setNumber(F233, field); + } + + /** + * Set the F234 parameter to the routine + */ + public void setF234(java.lang.Number value) { + setNumber(F234, value); + } + + /** + * Set the F234 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF234(org.jooq.Field field) { + setNumber(F234, field); + } + + /** + * Set the F235 parameter to the routine + */ + public void setF235(java.lang.Number value) { + setNumber(F235, value); + } + + /** + * Set the F235 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF235(org.jooq.Field field) { + setNumber(F235, field); + } + + /** + * Set the F236 parameter to the routine + */ + public void setF236(java.lang.Number value) { + setNumber(F236, value); + } + + /** + * Set the F236 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF236(org.jooq.Field field) { + setNumber(F236, field); + } + + /** + * Set the F237 parameter to the routine + */ + public void setF237(java.lang.Number value) { + setNumber(F237, value); + } + + /** + * Set the F237 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF237(org.jooq.Field field) { + setNumber(F237, field); + } + + /** + * Set the F238 parameter to the routine + */ + public void setF238(java.lang.Number value) { + setNumber(F238, value); + } + + /** + * Set the F238 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF238(org.jooq.Field field) { + setNumber(F238, field); + } + + /** + * Set the F239 parameter to the routine + */ + public void setF239(java.lang.Number value) { + setNumber(F239, value); + } + + /** + * Set the F239 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF239(org.jooq.Field field) { + setNumber(F239, field); + } + + /** + * Set the F240 parameter to the routine + */ + public void setF240(java.lang.Number value) { + setNumber(F240, value); + } + + /** + * Set the F240 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF240(org.jooq.Field field) { + setNumber(F240, field); + } + + /** + * Set the F241 parameter to the routine + */ + public void setF241(java.lang.Number value) { + setNumber(F241, value); + } + + /** + * Set the F241 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF241(org.jooq.Field field) { + setNumber(F241, field); + } + + /** + * Set the F242 parameter to the routine + */ + public void setF242(java.lang.Number value) { + setNumber(F242, value); + } + + /** + * Set the F242 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF242(org.jooq.Field field) { + setNumber(F242, field); + } + + /** + * Set the F243 parameter to the routine + */ + public void setF243(java.lang.Number value) { + setNumber(F243, value); + } + + /** + * Set the F243 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF243(org.jooq.Field field) { + setNumber(F243, field); + } + + /** + * Set the F244 parameter to the routine + */ + public void setF244(java.lang.Number value) { + setNumber(F244, value); + } + + /** + * Set the F244 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF244(org.jooq.Field field) { + setNumber(F244, field); + } + + /** + * Set the F245 parameter to the routine + */ + public void setF245(java.lang.Number value) { + setNumber(F245, value); + } + + /** + * Set the F245 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF245(org.jooq.Field field) { + setNumber(F245, field); + } + + /** + * Set the F246 parameter to the routine + */ + public void setF246(java.lang.Number value) { + setNumber(F246, value); + } + + /** + * Set the F246 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF246(org.jooq.Field field) { + setNumber(F246, field); + } + + /** + * Set the F247 parameter to the routine + */ + public void setF247(java.lang.Number value) { + setNumber(F247, value); + } + + /** + * Set the F247 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF247(org.jooq.Field field) { + setNumber(F247, field); + } + + /** + * Set the F248 parameter to the routine + */ + public void setF248(java.lang.Number value) { + setNumber(F248, value); + } + + /** + * Set the F248 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF248(org.jooq.Field field) { + setNumber(F248, field); + } + + /** + * Set the F249 parameter to the routine + */ + public void setF249(java.lang.Number value) { + setNumber(F249, value); + } + + /** + * Set the F249 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF249(org.jooq.Field field) { + setNumber(F249, field); + } + + /** + * Set the F250 parameter to the routine + */ + public void setF250(java.lang.Number value) { + setNumber(F250, value); + } + + /** + * Set the F250 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF250(org.jooq.Field field) { + setNumber(F250, field); + } + + /** + * Set the F251 parameter to the routine + */ + public void setF251(java.lang.Number value) { + setNumber(F251, value); + } + + /** + * Set the F251 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF251(org.jooq.Field field) { + setNumber(F251, field); + } + + /** + * Set the F252 parameter to the routine + */ + public void setF252(java.lang.Number value) { + setNumber(F252, value); + } + + /** + * Set the F252 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF252(org.jooq.Field field) { + setNumber(F252, field); + } + + /** + * Set the F253 parameter to the routine + */ + public void setF253(java.lang.Number value) { + setNumber(F253, value); + } + + /** + * Set the F253 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF253(org.jooq.Field field) { + setNumber(F253, field); + } + + /** + * Set the F254 parameter to the routine + */ + public void setF254(java.lang.Number value) { + setNumber(F254, value); + } + + /** + * Set the F254 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF254(org.jooq.Field field) { + setNumber(F254, field); + } + + /** + * Set the F255 parameter to the routine + */ + public void setF255(java.lang.Number value) { + setNumber(F255, value); + } + + /** + * Set the F255 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF255(org.jooq.Field field) { + setNumber(F255, field); + } + + /** + * Set the F256 parameter to the routine + */ + public void setF256(java.lang.Number value) { + setNumber(F256, value); + } + + /** + * Set the F256 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF256(org.jooq.Field field) { + setNumber(F256, field); + } + + /** + * Set the F257 parameter to the routine + */ + public void setF257(java.lang.Number value) { + setNumber(F257, value); + } + + /** + * Set the F257 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF257(org.jooq.Field field) { + setNumber(F257, field); + } + + /** + * Set the F258 parameter to the routine + */ + public void setF258(java.lang.Number value) { + setNumber(F258, value); + } + + /** + * Set the F258 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF258(org.jooq.Field field) { + setNumber(F258, field); + } + + /** + * Set the F259 parameter to the routine + */ + public void setF259(java.lang.Number value) { + setNumber(F259, value); + } + + /** + * Set the F259 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF259(org.jooq.Field field) { + setNumber(F259, field); + } + + /** + * Set the F260 parameter to the routine + */ + public void setF260(java.lang.Number value) { + setNumber(F260, value); + } + + /** + * Set the F260 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF260(org.jooq.Field field) { + setNumber(F260, field); + } + + /** + * Set the F261 parameter to the routine + */ + public void setF261(java.lang.Number value) { + setNumber(F261, value); + } + + /** + * Set the F261 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF261(org.jooq.Field field) { + setNumber(F261, field); + } + + /** + * Set the F262 parameter to the routine + */ + public void setF262(java.lang.Number value) { + setNumber(F262, value); + } + + /** + * Set the F262 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF262(org.jooq.Field field) { + setNumber(F262, field); + } + + /** + * Set the F263 parameter to the routine + */ + public void setF263(java.lang.Number value) { + setNumber(F263, value); + } + + /** + * Set the F263 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF263(org.jooq.Field field) { + setNumber(F263, field); + } + + /** + * Set the F264 parameter to the routine + */ + public void setF264(java.lang.Number value) { + setNumber(F264, value); + } + + /** + * Set the F264 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF264(org.jooq.Field field) { + setNumber(F264, field); + } + + /** + * Set the F265 parameter to the routine + */ + public void setF265(java.lang.Number value) { + setNumber(F265, value); + } + + /** + * Set the F265 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF265(org.jooq.Field field) { + setNumber(F265, field); + } + + /** + * Set the F266 parameter to the routine + */ + public void setF266(java.lang.Number value) { + setNumber(F266, value); + } + + /** + * Set the F266 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF266(org.jooq.Field field) { + setNumber(F266, field); + } + + /** + * Set the F267 parameter to the routine + */ + public void setF267(java.lang.Number value) { + setNumber(F267, value); + } + + /** + * Set the F267 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF267(org.jooq.Field field) { + setNumber(F267, field); + } + + /** + * Set the F268 parameter to the routine + */ + public void setF268(java.lang.Number value) { + setNumber(F268, value); + } + + /** + * Set the F268 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF268(org.jooq.Field field) { + setNumber(F268, field); + } + + /** + * Set the F269 parameter to the routine + */ + public void setF269(java.lang.Number value) { + setNumber(F269, value); + } + + /** + * Set the F269 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF269(org.jooq.Field field) { + setNumber(F269, field); + } + + /** + * Set the F270 parameter to the routine + */ + public void setF270(java.lang.Number value) { + setNumber(F270, value); + } + + /** + * Set the F270 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF270(org.jooq.Field field) { + setNumber(F270, field); + } + + /** + * Set the F271 parameter to the routine + */ + public void setF271(java.lang.Number value) { + setNumber(F271, value); + } + + /** + * Set the F271 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF271(org.jooq.Field field) { + setNumber(F271, field); + } + + /** + * Set the F272 parameter to the routine + */ + public void setF272(java.lang.Number value) { + setNumber(F272, value); + } + + /** + * Set the F272 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF272(org.jooq.Field field) { + setNumber(F272, field); + } + + /** + * Set the F273 parameter to the routine + */ + public void setF273(java.lang.Number value) { + setNumber(F273, value); + } + + /** + * Set the F273 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF273(org.jooq.Field field) { + setNumber(F273, field); + } + + /** + * Set the F274 parameter to the routine + */ + public void setF274(java.lang.Number value) { + setNumber(F274, value); + } + + /** + * Set the F274 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF274(org.jooq.Field field) { + setNumber(F274, field); + } + + /** + * Set the F275 parameter to the routine + */ + public void setF275(java.lang.Number value) { + setNumber(F275, value); + } + + /** + * Set the F275 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF275(org.jooq.Field field) { + setNumber(F275, field); + } + + /** + * Set the F276 parameter to the routine + */ + public void setF276(java.lang.Number value) { + setNumber(F276, value); + } + + /** + * Set the F276 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF276(org.jooq.Field field) { + setNumber(F276, field); + } + + /** + * Set the F277 parameter to the routine + */ + public void setF277(java.lang.Number value) { + setNumber(F277, value); + } + + /** + * Set the F277 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF277(org.jooq.Field field) { + setNumber(F277, field); + } + + /** + * Set the F278 parameter to the routine + */ + public void setF278(java.lang.Number value) { + setNumber(F278, value); + } + + /** + * Set the F278 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF278(org.jooq.Field field) { + setNumber(F278, field); + } + + /** + * Set the F279 parameter to the routine + */ + public void setF279(java.lang.Number value) { + setNumber(F279, value); + } + + /** + * Set the F279 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF279(org.jooq.Field field) { + setNumber(F279, field); + } + + /** + * Set the F280 parameter to the routine + */ + public void setF280(java.lang.Number value) { + setNumber(F280, value); + } + + /** + * Set the F280 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF280(org.jooq.Field field) { + setNumber(F280, field); + } + + /** + * Set the F281 parameter to the routine + */ + public void setF281(java.lang.Number value) { + setNumber(F281, value); + } + + /** + * Set the F281 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF281(org.jooq.Field field) { + setNumber(F281, field); + } + + /** + * Set the F282 parameter to the routine + */ + public void setF282(java.lang.Number value) { + setNumber(F282, value); + } + + /** + * Set the F282 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF282(org.jooq.Field field) { + setNumber(F282, field); + } + + /** + * Set the F283 parameter to the routine + */ + public void setF283(java.lang.Number value) { + setNumber(F283, value); + } + + /** + * Set the F283 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF283(org.jooq.Field field) { + setNumber(F283, field); + } + + /** + * Set the F284 parameter to the routine + */ + public void setF284(java.lang.Number value) { + setNumber(F284, value); + } + + /** + * Set the F284 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF284(org.jooq.Field field) { + setNumber(F284, field); + } + + /** + * Set the F285 parameter to the routine + */ + public void setF285(java.lang.Number value) { + setNumber(F285, value); + } + + /** + * Set the F285 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF285(org.jooq.Field field) { + setNumber(F285, field); + } + + /** + * Set the F286 parameter to the routine + */ + public void setF286(java.lang.Number value) { + setNumber(F286, value); + } + + /** + * Set the F286 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF286(org.jooq.Field field) { + setNumber(F286, field); + } + + /** + * Set the F287 parameter to the routine + */ + public void setF287(java.lang.Number value) { + setNumber(F287, value); + } + + /** + * Set the F287 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF287(org.jooq.Field field) { + setNumber(F287, field); + } + + /** + * Set the F288 parameter to the routine + */ + public void setF288(java.lang.Number value) { + setNumber(F288, value); + } + + /** + * Set the F288 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF288(org.jooq.Field field) { + setNumber(F288, field); + } + + /** + * Set the F289 parameter to the routine + */ + public void setF289(java.lang.Number value) { + setNumber(F289, value); + } + + /** + * Set the F289 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF289(org.jooq.Field field) { + setNumber(F289, field); + } + + /** + * Set the F290 parameter to the routine + */ + public void setF290(java.lang.Number value) { + setNumber(F290, value); + } + + /** + * Set the F290 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF290(org.jooq.Field field) { + setNumber(F290, field); + } + + /** + * Set the F291 parameter to the routine + */ + public void setF291(java.lang.Number value) { + setNumber(F291, value); + } + + /** + * Set the F291 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF291(org.jooq.Field field) { + setNumber(F291, field); + } + + /** + * Set the F292 parameter to the routine + */ + public void setF292(java.lang.Number value) { + setNumber(F292, value); + } + + /** + * Set the F292 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF292(org.jooq.Field field) { + setNumber(F292, field); + } + + /** + * Set the F293 parameter to the routine + */ + public void setF293(java.lang.Number value) { + setNumber(F293, value); + } + + /** + * Set the F293 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF293(org.jooq.Field field) { + setNumber(F293, field); + } + + /** + * Set the F294 parameter to the routine + */ + public void setF294(java.lang.Number value) { + setNumber(F294, value); + } + + /** + * Set the F294 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF294(org.jooq.Field field) { + setNumber(F294, field); + } + + /** + * Set the F295 parameter to the routine + */ + public void setF295(java.lang.Number value) { + setNumber(F295, value); + } + + /** + * Set the F295 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF295(org.jooq.Field field) { + setNumber(F295, field); + } + + /** + * Set the F296 parameter to the routine + */ + public void setF296(java.lang.Number value) { + setNumber(F296, value); + } + + /** + * Set the F296 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF296(org.jooq.Field field) { + setNumber(F296, field); + } + + /** + * Set the F297 parameter to the routine + */ + public void setF297(java.lang.Number value) { + setNumber(F297, value); + } + + /** + * Set the F297 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF297(org.jooq.Field field) { + setNumber(F297, field); + } + + /** + * Set the F298 parameter to the routine + */ + public void setF298(java.lang.Number value) { + setNumber(F298, value); + } + + /** + * Set the F298 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF298(org.jooq.Field field) { + setNumber(F298, field); + } + + /** + * Set the F299 parameter to the routine + */ + public void setF299(java.lang.Number value) { + setNumber(F299, value); + } + + /** + * Set the F299 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF299(org.jooq.Field field) { + setNumber(F299, field); + } + + /** + * Set the F300 parameter to the routine + */ + public void setF300(java.lang.Number value) { + setNumber(F300, value); + } + + /** + * Set the F300 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF300(org.jooq.Field field) { + setNumber(F300, field); + } + + /** + * Set the F301 parameter to the routine + */ + public void setF301(java.lang.Number value) { + setNumber(F301, value); + } + + /** + * Set the F301 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF301(org.jooq.Field field) { + setNumber(F301, field); + } + + /** + * Set the F302 parameter to the routine + */ + public void setF302(java.lang.Number value) { + setNumber(F302, value); + } + + /** + * Set the F302 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF302(org.jooq.Field field) { + setNumber(F302, field); + } + + /** + * Set the F303 parameter to the routine + */ + public void setF303(java.lang.Number value) { + setNumber(F303, value); + } + + /** + * Set the F303 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF303(org.jooq.Field field) { + setNumber(F303, field); + } + + /** + * Set the F304 parameter to the routine + */ + public void setF304(java.lang.Number value) { + setNumber(F304, value); + } + + /** + * Set the F304 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF304(org.jooq.Field field) { + setNumber(F304, field); + } + + /** + * Set the F305 parameter to the routine + */ + public void setF305(java.lang.Number value) { + setNumber(F305, value); + } + + /** + * Set the F305 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF305(org.jooq.Field field) { + setNumber(F305, field); + } + + /** + * Set the F306 parameter to the routine + */ + public void setF306(java.lang.Number value) { + setNumber(F306, value); + } + + /** + * Set the F306 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF306(org.jooq.Field field) { + setNumber(F306, field); + } + + /** + * Set the F307 parameter to the routine + */ + public void setF307(java.lang.Number value) { + setNumber(F307, value); + } + + /** + * Set the F307 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF307(org.jooq.Field field) { + setNumber(F307, field); + } + + /** + * Set the F308 parameter to the routine + */ + public void setF308(java.lang.Number value) { + setNumber(F308, value); + } + + /** + * Set the F308 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF308(org.jooq.Field field) { + setNumber(F308, field); + } + + /** + * Set the F309 parameter to the routine + */ + public void setF309(java.lang.Number value) { + setNumber(F309, value); + } + + /** + * Set the F309 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF309(org.jooq.Field field) { + setNumber(F309, field); + } + + /** + * Set the F310 parameter to the routine + */ + public void setF310(java.lang.Number value) { + setNumber(F310, value); + } + + /** + * Set the F310 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF310(org.jooq.Field field) { + setNumber(F310, field); + } + + /** + * Set the F311 parameter to the routine + */ + public void setF311(java.lang.Number value) { + setNumber(F311, value); + } + + /** + * Set the F311 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF311(org.jooq.Field field) { + setNumber(F311, field); + } + + /** + * Set the F312 parameter to the routine + */ + public void setF312(java.lang.Number value) { + setNumber(F312, value); + } + + /** + * Set the F312 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF312(org.jooq.Field field) { + setNumber(F312, field); + } + + /** + * Set the F313 parameter to the routine + */ + public void setF313(java.lang.Number value) { + setNumber(F313, value); + } + + /** + * Set the F313 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF313(org.jooq.Field field) { + setNumber(F313, field); + } + + /** + * Set the F314 parameter to the routine + */ + public void setF314(java.lang.Number value) { + setNumber(F314, value); + } + + /** + * Set the F314 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF314(org.jooq.Field field) { + setNumber(F314, field); + } + + /** + * Set the F315 parameter to the routine + */ + public void setF315(java.lang.Number value) { + setNumber(F315, value); + } + + /** + * Set the F315 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF315(org.jooq.Field field) { + setNumber(F315, field); + } + + /** + * Set the F316 parameter to the routine + */ + public void setF316(java.lang.Number value) { + setNumber(F316, value); + } + + /** + * Set the F316 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF316(org.jooq.Field field) { + setNumber(F316, field); + } + + /** + * Set the F317 parameter to the routine + */ + public void setF317(java.lang.Number value) { + setNumber(F317, value); + } + + /** + * Set the F317 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF317(org.jooq.Field field) { + setNumber(F317, field); + } + + /** + * Set the F318 parameter to the routine + */ + public void setF318(java.lang.Number value) { + setNumber(F318, value); + } + + /** + * Set the F318 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF318(org.jooq.Field field) { + setNumber(F318, field); + } + + /** + * Set the F319 parameter to the routine + */ + public void setF319(java.lang.Number value) { + setNumber(F319, value); + } + + /** + * Set the F319 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF319(org.jooq.Field field) { + setNumber(F319, field); + } + + /** + * Set the F320 parameter to the routine + */ + public void setF320(java.lang.Number value) { + setNumber(F320, value); + } + + /** + * Set the F320 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF320(org.jooq.Field field) { + setNumber(F320, field); + } + + /** + * Set the F321 parameter to the routine + */ + public void setF321(java.lang.Number value) { + setNumber(F321, value); + } + + /** + * Set the F321 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF321(org.jooq.Field field) { + setNumber(F321, field); + } + + /** + * Set the F322 parameter to the routine + */ + public void setF322(java.lang.Number value) { + setNumber(F322, value); + } + + /** + * Set the F322 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF322(org.jooq.Field field) { + setNumber(F322, field); + } + + /** + * Set the F323 parameter to the routine + */ + public void setF323(java.lang.Number value) { + setNumber(F323, value); + } + + /** + * Set the F323 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF323(org.jooq.Field field) { + setNumber(F323, field); + } + + /** + * Set the F324 parameter to the routine + */ + public void setF324(java.lang.Number value) { + setNumber(F324, value); + } + + /** + * Set the F324 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF324(org.jooq.Field field) { + setNumber(F324, field); + } + + /** + * Set the F325 parameter to the routine + */ + public void setF325(java.lang.Number value) { + setNumber(F325, value); + } + + /** + * Set the F325 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF325(org.jooq.Field field) { + setNumber(F325, field); + } + + /** + * Set the F326 parameter to the routine + */ + public void setF326(java.lang.Number value) { + setNumber(F326, value); + } + + /** + * Set the F326 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF326(org.jooq.Field field) { + setNumber(F326, field); + } + + /** + * Set the F327 parameter to the routine + */ + public void setF327(java.lang.Number value) { + setNumber(F327, value); + } + + /** + * Set the F327 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF327(org.jooq.Field field) { + setNumber(F327, field); + } + + /** + * Set the F328 parameter to the routine + */ + public void setF328(java.lang.Number value) { + setNumber(F328, value); + } + + /** + * Set the F328 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF328(org.jooq.Field field) { + setNumber(F328, field); + } + + /** + * Set the F329 parameter to the routine + */ + public void setF329(java.lang.Number value) { + setNumber(F329, value); + } + + /** + * Set the F329 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF329(org.jooq.Field field) { + setNumber(F329, field); + } + + /** + * Set the F330 parameter to the routine + */ + public void setF330(java.lang.Number value) { + setNumber(F330, value); + } + + /** + * Set the F330 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF330(org.jooq.Field field) { + setNumber(F330, field); + } + + /** + * Set the F331 parameter to the routine + */ + public void setF331(java.lang.Number value) { + setNumber(F331, value); + } + + /** + * Set the F331 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF331(org.jooq.Field field) { + setNumber(F331, field); + } + + /** + * Set the F332 parameter to the routine + */ + public void setF332(java.lang.Number value) { + setNumber(F332, value); + } + + /** + * Set the F332 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF332(org.jooq.Field field) { + setNumber(F332, field); + } + + /** + * Set the F333 parameter to the routine + */ + public void setF333(java.lang.Number value) { + setNumber(F333, value); + } + + /** + * Set the F333 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF333(org.jooq.Field field) { + setNumber(F333, field); + } + + /** + * Set the F334 parameter to the routine + */ + public void setF334(java.lang.Number value) { + setNumber(F334, value); + } + + /** + * Set the F334 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF334(org.jooq.Field field) { + setNumber(F334, field); + } + + /** + * Set the F335 parameter to the routine + */ + public void setF335(java.lang.Number value) { + setNumber(F335, value); + } + + /** + * Set the F335 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF335(org.jooq.Field field) { + setNumber(F335, field); + } + + /** + * Set the F336 parameter to the routine + */ + public void setF336(java.lang.Number value) { + setNumber(F336, value); + } + + /** + * Set the F336 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF336(org.jooq.Field field) { + setNumber(F336, field); + } + + /** + * Set the F337 parameter to the routine + */ + public void setF337(java.lang.Number value) { + setNumber(F337, value); + } + + /** + * Set the F337 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF337(org.jooq.Field field) { + setNumber(F337, field); + } + + /** + * Set the F338 parameter to the routine + */ + public void setF338(java.lang.Number value) { + setNumber(F338, value); + } + + /** + * Set the F338 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF338(org.jooq.Field field) { + setNumber(F338, field); + } + + /** + * Set the F339 parameter to the routine + */ + public void setF339(java.lang.Number value) { + setNumber(F339, value); + } + + /** + * Set the F339 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF339(org.jooq.Field field) { + setNumber(F339, field); + } + + /** + * Set the F340 parameter to the routine + */ + public void setF340(java.lang.Number value) { + setNumber(F340, value); + } + + /** + * Set the F340 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF340(org.jooq.Field field) { + setNumber(F340, field); + } + + /** + * Set the F341 parameter to the routine + */ + public void setF341(java.lang.Number value) { + setNumber(F341, value); + } + + /** + * Set the F341 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF341(org.jooq.Field field) { + setNumber(F341, field); + } + + /** + * Set the F342 parameter to the routine + */ + public void setF342(java.lang.Number value) { + setNumber(F342, value); + } + + /** + * Set the F342 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF342(org.jooq.Field field) { + setNumber(F342, field); + } + + /** + * Set the F343 parameter to the routine + */ + public void setF343(java.lang.Number value) { + setNumber(F343, value); + } + + /** + * Set the F343 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF343(org.jooq.Field field) { + setNumber(F343, field); + } + + /** + * Set the F344 parameter to the routine + */ + public void setF344(java.lang.Number value) { + setNumber(F344, value); + } + + /** + * Set the F344 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF344(org.jooq.Field field) { + setNumber(F344, field); + } + + /** + * Set the F345 parameter to the routine + */ + public void setF345(java.lang.Number value) { + setNumber(F345, value); + } + + /** + * Set the F345 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF345(org.jooq.Field field) { + setNumber(F345, field); + } + + /** + * Set the F346 parameter to the routine + */ + public void setF346(java.lang.Number value) { + setNumber(F346, value); + } + + /** + * Set the F346 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF346(org.jooq.Field field) { + setNumber(F346, field); + } + + /** + * Set the F347 parameter to the routine + */ + public void setF347(java.lang.Number value) { + setNumber(F347, value); + } + + /** + * Set the F347 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF347(org.jooq.Field field) { + setNumber(F347, field); + } + + /** + * Set the F348 parameter to the routine + */ + public void setF348(java.lang.Number value) { + setNumber(F348, value); + } + + /** + * Set the F348 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF348(org.jooq.Field field) { + setNumber(F348, field); + } + + /** + * Set the F349 parameter to the routine + */ + public void setF349(java.lang.Number value) { + setNumber(F349, value); + } + + /** + * Set the F349 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF349(org.jooq.Field field) { + setNumber(F349, field); + } + + /** + * Set the F350 parameter to the routine + */ + public void setF350(java.lang.Number value) { + setNumber(F350, value); + } + + /** + * Set the F350 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF350(org.jooq.Field field) { + setNumber(F350, field); + } + + /** + * Set the F351 parameter to the routine + */ + public void setF351(java.lang.Number value) { + setNumber(F351, value); + } + + /** + * Set the F351 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF351(org.jooq.Field field) { + setNumber(F351, field); + } + + /** + * Set the F352 parameter to the routine + */ + public void setF352(java.lang.Number value) { + setNumber(F352, value); + } + + /** + * Set the F352 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF352(org.jooq.Field field) { + setNumber(F352, field); + } + + /** + * Set the F353 parameter to the routine + */ + public void setF353(java.lang.Number value) { + setNumber(F353, value); + } + + /** + * Set the F353 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF353(org.jooq.Field field) { + setNumber(F353, field); + } + + /** + * Set the F354 parameter to the routine + */ + public void setF354(java.lang.Number value) { + setNumber(F354, value); + } + + /** + * Set the F354 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF354(org.jooq.Field field) { + setNumber(F354, field); + } + + /** + * Set the F355 parameter to the routine + */ + public void setF355(java.lang.Number value) { + setNumber(F355, value); + } + + /** + * Set the F355 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF355(org.jooq.Field field) { + setNumber(F355, field); + } + + /** + * Set the F356 parameter to the routine + */ + public void setF356(java.lang.Number value) { + setNumber(F356, value); + } + + /** + * Set the F356 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF356(org.jooq.Field field) { + setNumber(F356, field); + } + + /** + * Set the F357 parameter to the routine + */ + public void setF357(java.lang.Number value) { + setNumber(F357, value); + } + + /** + * Set the F357 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF357(org.jooq.Field field) { + setNumber(F357, field); + } + + /** + * Set the F358 parameter to the routine + */ + public void setF358(java.lang.Number value) { + setNumber(F358, value); + } + + /** + * Set the F358 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF358(org.jooq.Field field) { + setNumber(F358, field); + } + + /** + * Set the F359 parameter to the routine + */ + public void setF359(java.lang.Number value) { + setNumber(F359, value); + } + + /** + * Set the F359 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF359(org.jooq.Field field) { + setNumber(F359, field); + } + + /** + * Set the F360 parameter to the routine + */ + public void setF360(java.lang.Number value) { + setNumber(F360, value); + } + + /** + * Set the F360 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF360(org.jooq.Field field) { + setNumber(F360, field); + } + + /** + * Set the F361 parameter to the routine + */ + public void setF361(java.lang.Number value) { + setNumber(F361, value); + } + + /** + * Set the F361 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF361(org.jooq.Field field) { + setNumber(F361, field); + } + + /** + * Set the F362 parameter to the routine + */ + public void setF362(java.lang.Number value) { + setNumber(F362, value); + } + + /** + * Set the F362 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF362(org.jooq.Field field) { + setNumber(F362, field); + } + + /** + * Set the F363 parameter to the routine + */ + public void setF363(java.lang.Number value) { + setNumber(F363, value); + } + + /** + * Set the F363 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF363(org.jooq.Field field) { + setNumber(F363, field); + } + + /** + * Set the F364 parameter to the routine + */ + public void setF364(java.lang.Number value) { + setNumber(F364, value); + } + + /** + * Set the F364 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF364(org.jooq.Field field) { + setNumber(F364, field); + } + + /** + * Set the F365 parameter to the routine + */ + public void setF365(java.lang.Number value) { + setNumber(F365, value); + } + + /** + * Set the F365 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF365(org.jooq.Field field) { + setNumber(F365, field); + } + + /** + * Set the F366 parameter to the routine + */ + public void setF366(java.lang.Number value) { + setNumber(F366, value); + } + + /** + * Set the F366 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF366(org.jooq.Field field) { + setNumber(F366, field); + } + + /** + * Set the F367 parameter to the routine + */ + public void setF367(java.lang.Number value) { + setNumber(F367, value); + } + + /** + * Set the F367 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF367(org.jooq.Field field) { + setNumber(F367, field); + } + + /** + * Set the F368 parameter to the routine + */ + public void setF368(java.lang.Number value) { + setNumber(F368, value); + } + + /** + * Set the F368 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF368(org.jooq.Field field) { + setNumber(F368, field); + } + + /** + * Set the F369 parameter to the routine + */ + public void setF369(java.lang.Number value) { + setNumber(F369, value); + } + + /** + * Set the F369 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF369(org.jooq.Field field) { + setNumber(F369, field); + } + + /** + * Set the F370 parameter to the routine + */ + public void setF370(java.lang.Number value) { + setNumber(F370, value); + } + + /** + * Set the F370 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF370(org.jooq.Field field) { + setNumber(F370, field); + } + + /** + * Set the F371 parameter to the routine + */ + public void setF371(java.lang.Number value) { + setNumber(F371, value); + } + + /** + * Set the F371 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF371(org.jooq.Field field) { + setNumber(F371, field); + } + + /** + * Set the F372 parameter to the routine + */ + public void setF372(java.lang.Number value) { + setNumber(F372, value); + } + + /** + * Set the F372 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF372(org.jooq.Field field) { + setNumber(F372, field); + } + + /** + * Set the F373 parameter to the routine + */ + public void setF373(java.lang.Number value) { + setNumber(F373, value); + } + + /** + * Set the F373 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF373(org.jooq.Field field) { + setNumber(F373, field); + } + + /** + * Set the F374 parameter to the routine + */ + public void setF374(java.lang.Number value) { + setNumber(F374, value); + } + + /** + * Set the F374 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF374(org.jooq.Field field) { + setNumber(F374, field); + } + + /** + * Set the F375 parameter to the routine + */ + public void setF375(java.lang.Number value) { + setNumber(F375, value); + } + + /** + * Set the F375 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF375(org.jooq.Field field) { + setNumber(F375, field); + } + + /** + * Set the F376 parameter to the routine + */ + public void setF376(java.lang.Number value) { + setNumber(F376, value); + } + + /** + * Set the F376 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF376(org.jooq.Field field) { + setNumber(F376, field); + } + + /** + * Set the F377 parameter to the routine + */ + public void setF377(java.lang.Number value) { + setNumber(F377, value); + } + + /** + * Set the F377 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF377(org.jooq.Field field) { + setNumber(F377, field); + } + + /** + * Set the F378 parameter to the routine + */ + public void setF378(java.lang.Number value) { + setNumber(F378, value); + } + + /** + * Set the F378 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF378(org.jooq.Field field) { + setNumber(F378, field); + } + + /** + * Set the F379 parameter to the routine + */ + public void setF379(java.lang.Number value) { + setNumber(F379, value); + } + + /** + * Set the F379 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF379(org.jooq.Field field) { + setNumber(F379, field); + } + + /** + * Set the F380 parameter to the routine + */ + public void setF380(java.lang.Number value) { + setNumber(F380, value); + } + + /** + * Set the F380 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF380(org.jooq.Field field) { + setNumber(F380, field); + } + + /** + * Set the F381 parameter to the routine + */ + public void setF381(java.lang.Number value) { + setNumber(F381, value); + } + + /** + * Set the F381 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF381(org.jooq.Field field) { + setNumber(F381, field); + } + + /** + * Set the F382 parameter to the routine + */ + public void setF382(java.lang.Number value) { + setNumber(F382, value); + } + + /** + * Set the F382 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF382(org.jooq.Field field) { + setNumber(F382, field); + } + + /** + * Set the F383 parameter to the routine + */ + public void setF383(java.lang.Number value) { + setNumber(F383, value); + } + + /** + * Set the F383 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF383(org.jooq.Field field) { + setNumber(F383, field); + } + + /** + * Set the F384 parameter to the routine + */ + public void setF384(java.lang.Number value) { + setNumber(F384, value); + } + + /** + * Set the F384 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF384(org.jooq.Field field) { + setNumber(F384, field); + } + + /** + * Set the F385 parameter to the routine + */ + public void setF385(java.lang.Number value) { + setNumber(F385, value); + } + + /** + * Set the F385 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF385(org.jooq.Field field) { + setNumber(F385, field); + } + + /** + * Set the F386 parameter to the routine + */ + public void setF386(java.lang.Number value) { + setNumber(F386, value); + } + + /** + * Set the F386 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF386(org.jooq.Field field) { + setNumber(F386, field); + } + + /** + * Set the F387 parameter to the routine + */ + public void setF387(java.lang.Number value) { + setNumber(F387, value); + } + + /** + * Set the F387 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF387(org.jooq.Field field) { + setNumber(F387, field); + } + + /** + * Set the F388 parameter to the routine + */ + public void setF388(java.lang.Number value) { + setNumber(F388, value); + } + + /** + * Set the F388 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF388(org.jooq.Field field) { + setNumber(F388, field); + } + + /** + * Set the F389 parameter to the routine + */ + public void setF389(java.lang.Number value) { + setNumber(F389, value); + } + + /** + * Set the F389 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF389(org.jooq.Field field) { + setNumber(F389, field); + } + + /** + * Set the F390 parameter to the routine + */ + public void setF390(java.lang.Number value) { + setNumber(F390, value); + } + + /** + * Set the F390 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF390(org.jooq.Field field) { + setNumber(F390, field); + } + + /** + * Set the F391 parameter to the routine + */ + public void setF391(java.lang.Number value) { + setNumber(F391, value); + } + + /** + * Set the F391 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF391(org.jooq.Field field) { + setNumber(F391, field); + } + + /** + * Set the F392 parameter to the routine + */ + public void setF392(java.lang.Number value) { + setNumber(F392, value); + } + + /** + * Set the F392 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF392(org.jooq.Field field) { + setNumber(F392, field); + } + + /** + * Set the F393 parameter to the routine + */ + public void setF393(java.lang.Number value) { + setNumber(F393, value); + } + + /** + * Set the F393 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF393(org.jooq.Field field) { + setNumber(F393, field); + } + + /** + * Set the F394 parameter to the routine + */ + public void setF394(java.lang.Number value) { + setNumber(F394, value); + } + + /** + * Set the F394 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF394(org.jooq.Field field) { + setNumber(F394, field); + } + + /** + * Set the F395 parameter to the routine + */ + public void setF395(java.lang.Number value) { + setNumber(F395, value); + } + + /** + * Set the F395 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF395(org.jooq.Field field) { + setNumber(F395, field); + } + + /** + * Set the F396 parameter to the routine + */ + public void setF396(java.lang.Number value) { + setNumber(F396, value); + } + + /** + * Set the F396 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF396(org.jooq.Field field) { + setNumber(F396, field); + } + + /** + * Set the F397 parameter to the routine + */ + public void setF397(java.lang.Number value) { + setNumber(F397, value); + } + + /** + * Set the F397 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF397(org.jooq.Field field) { + setNumber(F397, field); + } + + /** + * Set the F398 parameter to the routine + */ + public void setF398(java.lang.Number value) { + setNumber(F398, value); + } + + /** + * Set the F398 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF398(org.jooq.Field field) { + setNumber(F398, field); + } + + /** + * Set the F399 parameter to the routine + */ + public void setF399(java.lang.Number value) { + setNumber(F399, value); + } + + /** + * Set the F399 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF399(org.jooq.Field field) { + setNumber(F399, field); + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/packages/library/PKG_F_UNUSED.java b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/packages/library/PKG_F_UNUSED.java new file mode 100644 index 00000000000..d2272a1ec2f --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/packages/library/PKG_F_UNUSED.java @@ -0,0 +1,27 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle3.generatedclasses.packages.library; + +/** + * This class is generated by jOOQ. + */ +public class PKG_F_UNUSED extends org.jooq.impl.AbstractRoutine implements java.lang.Cloneable { + + private static final long serialVersionUID = 266192568; + + + /** + * An uncommented item + */ + public static final org.jooq.Parameter RETURN_VALUE = createParameter("RETURN_VALUE", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * Create a new routine call instance + */ + public PKG_F_UNUSED() { + super("PKG_F_UNUSED", org.jooq.test.oracle3.generatedclasses.TEST.TEST, org.jooq.test.oracle3.generatedclasses.packages.LIBRARY.LIBRARY, org.jooq.impl.SQLDataType.NUMERIC); + + setReturnParameter(RETURN_VALUE); + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/packages/library/PKG_P_AUTHOR_EXISTS.java b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/packages/library/PKG_P_AUTHOR_EXISTS.java new file mode 100644 index 00000000000..9bcab99a0ec --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/packages/library/PKG_P_AUTHOR_EXISTS.java @@ -0,0 +1,62 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle3.generatedclasses.packages.library; + +/** + * This class is generated by jOOQ. + */ +public class PKG_P_AUTHOR_EXISTS extends org.jooq.impl.AbstractRoutine implements java.lang.Cloneable { + + private static final long serialVersionUID = 416895860; + + + /** + * An uncommented item + */ + public static final org.jooq.Parameter AUTHOR_NAME = createParameter("AUTHOR_NAME", org.jooq.impl.SQLDataType.VARCHAR); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter RESULT = createParameter("RESULT", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter UNUSED = createParameter("UNUSED", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * Create a new routine call instance + */ + public PKG_P_AUTHOR_EXISTS() { + super("PKG_P_AUTHOR_EXISTS", org.jooq.test.oracle3.generatedclasses.TEST.TEST, org.jooq.test.oracle3.generatedclasses.packages.LIBRARY.LIBRARY); + + addInParameter(AUTHOR_NAME); + addOutParameter(RESULT); + addInOutParameter(UNUSED); + setOverloaded(true); + } + + /** + * Set the AUTHOR_NAME parameter to the routine + */ + public void setAUTHOR_NAME(java.lang.String value) { + setValue(AUTHOR_NAME, value); + } + + /** + * Set the UNUSED parameter to the routine + */ + public void setUNUSED(java.lang.Number value) { + setNumber(UNUSED, value); + } + + public java.math.BigDecimal getRESULT() { + return getValue(RESULT); + } + + public java.math.BigDecimal getUNUSED() { + return getValue(UNUSED); + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/packages/library/PKG_P_MANY_PARAMETERS.java b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/packages/library/PKG_P_MANY_PARAMETERS.java new file mode 100644 index 00000000000..4a27ab057f0 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/packages/library/PKG_P_MANY_PARAMETERS.java @@ -0,0 +1,5221 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle3.generatedclasses.packages.library; + +/** + * This class is generated by jOOQ. + */ +public class PKG_P_MANY_PARAMETERS extends org.jooq.impl.AbstractRoutine implements java.lang.Cloneable { + + private static final long serialVersionUID = 30369761; + + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F000 = createParameter("F000", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F001 = createParameter("F001", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F002 = createParameter("F002", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F003 = createParameter("F003", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F004 = createParameter("F004", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F005 = createParameter("F005", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F006 = createParameter("F006", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F007 = createParameter("F007", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F008 = createParameter("F008", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F009 = createParameter("F009", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F010 = createParameter("F010", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F011 = createParameter("F011", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F012 = createParameter("F012", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F013 = createParameter("F013", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F014 = createParameter("F014", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F015 = createParameter("F015", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F016 = createParameter("F016", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F017 = createParameter("F017", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F018 = createParameter("F018", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F019 = createParameter("F019", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F020 = createParameter("F020", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F021 = createParameter("F021", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F022 = createParameter("F022", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F023 = createParameter("F023", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F024 = createParameter("F024", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F025 = createParameter("F025", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F026 = createParameter("F026", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F027 = createParameter("F027", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F028 = createParameter("F028", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F029 = createParameter("F029", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F030 = createParameter("F030", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F031 = createParameter("F031", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F032 = createParameter("F032", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F033 = createParameter("F033", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F034 = createParameter("F034", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F035 = createParameter("F035", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F036 = createParameter("F036", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F037 = createParameter("F037", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F038 = createParameter("F038", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F039 = createParameter("F039", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F040 = createParameter("F040", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F041 = createParameter("F041", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F042 = createParameter("F042", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F043 = createParameter("F043", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F044 = createParameter("F044", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F045 = createParameter("F045", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F046 = createParameter("F046", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F047 = createParameter("F047", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F048 = createParameter("F048", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F049 = createParameter("F049", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F050 = createParameter("F050", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F051 = createParameter("F051", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F052 = createParameter("F052", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F053 = createParameter("F053", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F054 = createParameter("F054", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F055 = createParameter("F055", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F056 = createParameter("F056", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F057 = createParameter("F057", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F058 = createParameter("F058", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F059 = createParameter("F059", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F060 = createParameter("F060", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F061 = createParameter("F061", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F062 = createParameter("F062", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F063 = createParameter("F063", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F064 = createParameter("F064", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F065 = createParameter("F065", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F066 = createParameter("F066", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F067 = createParameter("F067", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F068 = createParameter("F068", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F069 = createParameter("F069", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F070 = createParameter("F070", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F071 = createParameter("F071", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F072 = createParameter("F072", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F073 = createParameter("F073", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F074 = createParameter("F074", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F075 = createParameter("F075", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F076 = createParameter("F076", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F077 = createParameter("F077", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F078 = createParameter("F078", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F079 = createParameter("F079", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F080 = createParameter("F080", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F081 = createParameter("F081", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F082 = createParameter("F082", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F083 = createParameter("F083", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F084 = createParameter("F084", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F085 = createParameter("F085", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F086 = createParameter("F086", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F087 = createParameter("F087", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F088 = createParameter("F088", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F089 = createParameter("F089", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F090 = createParameter("F090", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F091 = createParameter("F091", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F092 = createParameter("F092", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F093 = createParameter("F093", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F094 = createParameter("F094", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F095 = createParameter("F095", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F096 = createParameter("F096", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F097 = createParameter("F097", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F098 = createParameter("F098", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F099 = createParameter("F099", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F100 = createParameter("F100", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F101 = createParameter("F101", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F102 = createParameter("F102", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F103 = createParameter("F103", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F104 = createParameter("F104", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F105 = createParameter("F105", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F106 = createParameter("F106", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F107 = createParameter("F107", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F108 = createParameter("F108", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F109 = createParameter("F109", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F110 = createParameter("F110", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F111 = createParameter("F111", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F112 = createParameter("F112", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F113 = createParameter("F113", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F114 = createParameter("F114", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F115 = createParameter("F115", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F116 = createParameter("F116", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F117 = createParameter("F117", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F118 = createParameter("F118", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F119 = createParameter("F119", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F120 = createParameter("F120", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F121 = createParameter("F121", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F122 = createParameter("F122", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F123 = createParameter("F123", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F124 = createParameter("F124", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F125 = createParameter("F125", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F126 = createParameter("F126", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F127 = createParameter("F127", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F128 = createParameter("F128", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F129 = createParameter("F129", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F130 = createParameter("F130", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F131 = createParameter("F131", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F132 = createParameter("F132", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F133 = createParameter("F133", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F134 = createParameter("F134", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F135 = createParameter("F135", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F136 = createParameter("F136", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F137 = createParameter("F137", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F138 = createParameter("F138", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F139 = createParameter("F139", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F140 = createParameter("F140", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F141 = createParameter("F141", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F142 = createParameter("F142", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F143 = createParameter("F143", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F144 = createParameter("F144", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F145 = createParameter("F145", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F146 = createParameter("F146", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F147 = createParameter("F147", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F148 = createParameter("F148", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F149 = createParameter("F149", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F150 = createParameter("F150", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F151 = createParameter("F151", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F152 = createParameter("F152", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F153 = createParameter("F153", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F154 = createParameter("F154", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F155 = createParameter("F155", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F156 = createParameter("F156", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F157 = createParameter("F157", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F158 = createParameter("F158", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F159 = createParameter("F159", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F160 = createParameter("F160", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F161 = createParameter("F161", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F162 = createParameter("F162", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F163 = createParameter("F163", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F164 = createParameter("F164", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F165 = createParameter("F165", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F166 = createParameter("F166", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F167 = createParameter("F167", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F168 = createParameter("F168", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F169 = createParameter("F169", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F170 = createParameter("F170", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F171 = createParameter("F171", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F172 = createParameter("F172", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F173 = createParameter("F173", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F174 = createParameter("F174", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F175 = createParameter("F175", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F176 = createParameter("F176", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F177 = createParameter("F177", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F178 = createParameter("F178", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F179 = createParameter("F179", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F180 = createParameter("F180", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F181 = createParameter("F181", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F182 = createParameter("F182", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F183 = createParameter("F183", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F184 = createParameter("F184", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F185 = createParameter("F185", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F186 = createParameter("F186", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F187 = createParameter("F187", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F188 = createParameter("F188", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F189 = createParameter("F189", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F190 = createParameter("F190", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F191 = createParameter("F191", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F192 = createParameter("F192", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F193 = createParameter("F193", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F194 = createParameter("F194", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F195 = createParameter("F195", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F196 = createParameter("F196", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F197 = createParameter("F197", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F198 = createParameter("F198", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F199 = createParameter("F199", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F200 = createParameter("F200", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F201 = createParameter("F201", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F202 = createParameter("F202", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F203 = createParameter("F203", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F204 = createParameter("F204", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F205 = createParameter("F205", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F206 = createParameter("F206", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F207 = createParameter("F207", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F208 = createParameter("F208", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F209 = createParameter("F209", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F210 = createParameter("F210", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F211 = createParameter("F211", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F212 = createParameter("F212", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F213 = createParameter("F213", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F214 = createParameter("F214", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F215 = createParameter("F215", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F216 = createParameter("F216", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F217 = createParameter("F217", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F218 = createParameter("F218", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F219 = createParameter("F219", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F220 = createParameter("F220", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F221 = createParameter("F221", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F222 = createParameter("F222", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F223 = createParameter("F223", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F224 = createParameter("F224", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F225 = createParameter("F225", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F226 = createParameter("F226", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F227 = createParameter("F227", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F228 = createParameter("F228", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F229 = createParameter("F229", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F230 = createParameter("F230", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F231 = createParameter("F231", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F232 = createParameter("F232", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F233 = createParameter("F233", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F234 = createParameter("F234", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F235 = createParameter("F235", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F236 = createParameter("F236", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F237 = createParameter("F237", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F238 = createParameter("F238", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F239 = createParameter("F239", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F240 = createParameter("F240", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F241 = createParameter("F241", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F242 = createParameter("F242", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F243 = createParameter("F243", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F244 = createParameter("F244", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F245 = createParameter("F245", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F246 = createParameter("F246", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F247 = createParameter("F247", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F248 = createParameter("F248", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F249 = createParameter("F249", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F250 = createParameter("F250", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F251 = createParameter("F251", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F252 = createParameter("F252", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F253 = createParameter("F253", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F254 = createParameter("F254", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F255 = createParameter("F255", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F256 = createParameter("F256", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F257 = createParameter("F257", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F258 = createParameter("F258", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F259 = createParameter("F259", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F260 = createParameter("F260", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F261 = createParameter("F261", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F262 = createParameter("F262", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F263 = createParameter("F263", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F264 = createParameter("F264", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F265 = createParameter("F265", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F266 = createParameter("F266", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F267 = createParameter("F267", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F268 = createParameter("F268", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F269 = createParameter("F269", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F270 = createParameter("F270", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F271 = createParameter("F271", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F272 = createParameter("F272", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F273 = createParameter("F273", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F274 = createParameter("F274", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F275 = createParameter("F275", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F276 = createParameter("F276", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F277 = createParameter("F277", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F278 = createParameter("F278", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F279 = createParameter("F279", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F280 = createParameter("F280", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F281 = createParameter("F281", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F282 = createParameter("F282", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F283 = createParameter("F283", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F284 = createParameter("F284", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F285 = createParameter("F285", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F286 = createParameter("F286", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F287 = createParameter("F287", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F288 = createParameter("F288", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F289 = createParameter("F289", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F290 = createParameter("F290", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F291 = createParameter("F291", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F292 = createParameter("F292", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F293 = createParameter("F293", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F294 = createParameter("F294", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F295 = createParameter("F295", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F296 = createParameter("F296", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F297 = createParameter("F297", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F298 = createParameter("F298", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F299 = createParameter("F299", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F300 = createParameter("F300", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F301 = createParameter("F301", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F302 = createParameter("F302", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F303 = createParameter("F303", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F304 = createParameter("F304", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F305 = createParameter("F305", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F306 = createParameter("F306", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F307 = createParameter("F307", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F308 = createParameter("F308", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F309 = createParameter("F309", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F310 = createParameter("F310", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F311 = createParameter("F311", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F312 = createParameter("F312", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F313 = createParameter("F313", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F314 = createParameter("F314", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F315 = createParameter("F315", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F316 = createParameter("F316", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F317 = createParameter("F317", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F318 = createParameter("F318", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F319 = createParameter("F319", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F320 = createParameter("F320", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F321 = createParameter("F321", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F322 = createParameter("F322", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F323 = createParameter("F323", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F324 = createParameter("F324", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F325 = createParameter("F325", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F326 = createParameter("F326", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F327 = createParameter("F327", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F328 = createParameter("F328", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F329 = createParameter("F329", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F330 = createParameter("F330", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F331 = createParameter("F331", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F332 = createParameter("F332", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F333 = createParameter("F333", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F334 = createParameter("F334", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F335 = createParameter("F335", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F336 = createParameter("F336", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F337 = createParameter("F337", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F338 = createParameter("F338", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F339 = createParameter("F339", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F340 = createParameter("F340", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F341 = createParameter("F341", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F342 = createParameter("F342", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F343 = createParameter("F343", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F344 = createParameter("F344", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F345 = createParameter("F345", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F346 = createParameter("F346", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F347 = createParameter("F347", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F348 = createParameter("F348", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F349 = createParameter("F349", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F350 = createParameter("F350", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F351 = createParameter("F351", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F352 = createParameter("F352", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F353 = createParameter("F353", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F354 = createParameter("F354", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F355 = createParameter("F355", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F356 = createParameter("F356", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F357 = createParameter("F357", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F358 = createParameter("F358", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F359 = createParameter("F359", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F360 = createParameter("F360", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F361 = createParameter("F361", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F362 = createParameter("F362", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F363 = createParameter("F363", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F364 = createParameter("F364", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F365 = createParameter("F365", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F366 = createParameter("F366", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F367 = createParameter("F367", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F368 = createParameter("F368", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F369 = createParameter("F369", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F370 = createParameter("F370", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F371 = createParameter("F371", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F372 = createParameter("F372", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F373 = createParameter("F373", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F374 = createParameter("F374", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F375 = createParameter("F375", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F376 = createParameter("F376", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F377 = createParameter("F377", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F378 = createParameter("F378", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F379 = createParameter("F379", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F380 = createParameter("F380", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F381 = createParameter("F381", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F382 = createParameter("F382", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F383 = createParameter("F383", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F384 = createParameter("F384", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F385 = createParameter("F385", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F386 = createParameter("F386", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F387 = createParameter("F387", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F388 = createParameter("F388", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F389 = createParameter("F389", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F390 = createParameter("F390", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F391 = createParameter("F391", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F392 = createParameter("F392", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F393 = createParameter("F393", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F394 = createParameter("F394", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F395 = createParameter("F395", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F396 = createParameter("F396", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F397 = createParameter("F397", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F398 = createParameter("F398", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F399 = createParameter("F399", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * Create a new routine call instance + */ + public PKG_P_MANY_PARAMETERS() { + super("PKG_P_MANY_PARAMETERS", org.jooq.test.oracle3.generatedclasses.TEST.TEST, org.jooq.test.oracle3.generatedclasses.packages.LIBRARY.LIBRARY); + + addInParameter(F000); + addInParameter(F001); + addInParameter(F002); + addInParameter(F003); + addInParameter(F004); + addInParameter(F005); + addInParameter(F006); + addInParameter(F007); + addInParameter(F008); + addInParameter(F009); + addInParameter(F010); + addInParameter(F011); + addInParameter(F012); + addInParameter(F013); + addInParameter(F014); + addInParameter(F015); + addInParameter(F016); + addInParameter(F017); + addInParameter(F018); + addInParameter(F019); + addInParameter(F020); + addInParameter(F021); + addInParameter(F022); + addInParameter(F023); + addInParameter(F024); + addInParameter(F025); + addInParameter(F026); + addInParameter(F027); + addInParameter(F028); + addInParameter(F029); + addInParameter(F030); + addInParameter(F031); + addInParameter(F032); + addInParameter(F033); + addInParameter(F034); + addInParameter(F035); + addInParameter(F036); + addInParameter(F037); + addInParameter(F038); + addInParameter(F039); + addInParameter(F040); + addInParameter(F041); + addInParameter(F042); + addInParameter(F043); + addInParameter(F044); + addInParameter(F045); + addInParameter(F046); + addInParameter(F047); + addInParameter(F048); + addInParameter(F049); + addInParameter(F050); + addInParameter(F051); + addInParameter(F052); + addInParameter(F053); + addInParameter(F054); + addInParameter(F055); + addInParameter(F056); + addInParameter(F057); + addInParameter(F058); + addInParameter(F059); + addInParameter(F060); + addInParameter(F061); + addInParameter(F062); + addInParameter(F063); + addInParameter(F064); + addInParameter(F065); + addInParameter(F066); + addInParameter(F067); + addInParameter(F068); + addInParameter(F069); + addInParameter(F070); + addInParameter(F071); + addInParameter(F072); + addInParameter(F073); + addInParameter(F074); + addInParameter(F075); + addInParameter(F076); + addInParameter(F077); + addInParameter(F078); + addInParameter(F079); + addInParameter(F080); + addInParameter(F081); + addInParameter(F082); + addInParameter(F083); + addInParameter(F084); + addInParameter(F085); + addInParameter(F086); + addInParameter(F087); + addInParameter(F088); + addInParameter(F089); + addInParameter(F090); + addInParameter(F091); + addInParameter(F092); + addInParameter(F093); + addInParameter(F094); + addInParameter(F095); + addInParameter(F096); + addInParameter(F097); + addInParameter(F098); + addInParameter(F099); + addInParameter(F100); + addInParameter(F101); + addInParameter(F102); + addInParameter(F103); + addInParameter(F104); + addInParameter(F105); + addInParameter(F106); + addInParameter(F107); + addInParameter(F108); + addInParameter(F109); + addInParameter(F110); + addInParameter(F111); + addInParameter(F112); + addInParameter(F113); + addInParameter(F114); + addInParameter(F115); + addInParameter(F116); + addInParameter(F117); + addInParameter(F118); + addInParameter(F119); + addInParameter(F120); + addInParameter(F121); + addInParameter(F122); + addInParameter(F123); + addInParameter(F124); + addInParameter(F125); + addInParameter(F126); + addInParameter(F127); + addInParameter(F128); + addInParameter(F129); + addInParameter(F130); + addInParameter(F131); + addInParameter(F132); + addInParameter(F133); + addInParameter(F134); + addInParameter(F135); + addInParameter(F136); + addInParameter(F137); + addInParameter(F138); + addInParameter(F139); + addInParameter(F140); + addInParameter(F141); + addInParameter(F142); + addInParameter(F143); + addInParameter(F144); + addInParameter(F145); + addInParameter(F146); + addInParameter(F147); + addInParameter(F148); + addInParameter(F149); + addInParameter(F150); + addInParameter(F151); + addInParameter(F152); + addInParameter(F153); + addInParameter(F154); + addInParameter(F155); + addInParameter(F156); + addInParameter(F157); + addInParameter(F158); + addInParameter(F159); + addInParameter(F160); + addInParameter(F161); + addInParameter(F162); + addInParameter(F163); + addInParameter(F164); + addInParameter(F165); + addInParameter(F166); + addInParameter(F167); + addInParameter(F168); + addInParameter(F169); + addInParameter(F170); + addInParameter(F171); + addInParameter(F172); + addInParameter(F173); + addInParameter(F174); + addInParameter(F175); + addInParameter(F176); + addInParameter(F177); + addInParameter(F178); + addInParameter(F179); + addInParameter(F180); + addInParameter(F181); + addInParameter(F182); + addInParameter(F183); + addInParameter(F184); + addInParameter(F185); + addInParameter(F186); + addInParameter(F187); + addInParameter(F188); + addInParameter(F189); + addInParameter(F190); + addInParameter(F191); + addInParameter(F192); + addInParameter(F193); + addInParameter(F194); + addInParameter(F195); + addInParameter(F196); + addInParameter(F197); + addInParameter(F198); + addInParameter(F199); + addInParameter(F200); + addInParameter(F201); + addInParameter(F202); + addInParameter(F203); + addInParameter(F204); + addInParameter(F205); + addInParameter(F206); + addInParameter(F207); + addInParameter(F208); + addInParameter(F209); + addInParameter(F210); + addInParameter(F211); + addInParameter(F212); + addInParameter(F213); + addInParameter(F214); + addInParameter(F215); + addInParameter(F216); + addInParameter(F217); + addInParameter(F218); + addInParameter(F219); + addInParameter(F220); + addInParameter(F221); + addInParameter(F222); + addInParameter(F223); + addInParameter(F224); + addInParameter(F225); + addInParameter(F226); + addInParameter(F227); + addInParameter(F228); + addInParameter(F229); + addInParameter(F230); + addInParameter(F231); + addInParameter(F232); + addInParameter(F233); + addInParameter(F234); + addInParameter(F235); + addInParameter(F236); + addInParameter(F237); + addInParameter(F238); + addInParameter(F239); + addInParameter(F240); + addInParameter(F241); + addInParameter(F242); + addInParameter(F243); + addInParameter(F244); + addInParameter(F245); + addInParameter(F246); + addInParameter(F247); + addInParameter(F248); + addInParameter(F249); + addInParameter(F250); + addInParameter(F251); + addInParameter(F252); + addInParameter(F253); + addInParameter(F254); + addInParameter(F255); + addInParameter(F256); + addInParameter(F257); + addInParameter(F258); + addInParameter(F259); + addInParameter(F260); + addInParameter(F261); + addInParameter(F262); + addInParameter(F263); + addInParameter(F264); + addInParameter(F265); + addInParameter(F266); + addInParameter(F267); + addInParameter(F268); + addInParameter(F269); + addInParameter(F270); + addInParameter(F271); + addInParameter(F272); + addInParameter(F273); + addInParameter(F274); + addInParameter(F275); + addInParameter(F276); + addInParameter(F277); + addInParameter(F278); + addInParameter(F279); + addInParameter(F280); + addInParameter(F281); + addInParameter(F282); + addInParameter(F283); + addInParameter(F284); + addInParameter(F285); + addInParameter(F286); + addInParameter(F287); + addInParameter(F288); + addInParameter(F289); + addInParameter(F290); + addInParameter(F291); + addInParameter(F292); + addInParameter(F293); + addInParameter(F294); + addInParameter(F295); + addInParameter(F296); + addInParameter(F297); + addInParameter(F298); + addInParameter(F299); + addInParameter(F300); + addInParameter(F301); + addInParameter(F302); + addInParameter(F303); + addInParameter(F304); + addInParameter(F305); + addInParameter(F306); + addInParameter(F307); + addInParameter(F308); + addInParameter(F309); + addInParameter(F310); + addInParameter(F311); + addInParameter(F312); + addInParameter(F313); + addInParameter(F314); + addInParameter(F315); + addInParameter(F316); + addInParameter(F317); + addInParameter(F318); + addInParameter(F319); + addInParameter(F320); + addInParameter(F321); + addInParameter(F322); + addInParameter(F323); + addInParameter(F324); + addInParameter(F325); + addInParameter(F326); + addInParameter(F327); + addInParameter(F328); + addInParameter(F329); + addInParameter(F330); + addInParameter(F331); + addInParameter(F332); + addInParameter(F333); + addInParameter(F334); + addInParameter(F335); + addInParameter(F336); + addInParameter(F337); + addInParameter(F338); + addInParameter(F339); + addInParameter(F340); + addInParameter(F341); + addInParameter(F342); + addInParameter(F343); + addInParameter(F344); + addInParameter(F345); + addInParameter(F346); + addInParameter(F347); + addInParameter(F348); + addInParameter(F349); + addInParameter(F350); + addInParameter(F351); + addInParameter(F352); + addInParameter(F353); + addInParameter(F354); + addInParameter(F355); + addInParameter(F356); + addInParameter(F357); + addInParameter(F358); + addInParameter(F359); + addInParameter(F360); + addInParameter(F361); + addInParameter(F362); + addInParameter(F363); + addInParameter(F364); + addInParameter(F365); + addInParameter(F366); + addInParameter(F367); + addInParameter(F368); + addInParameter(F369); + addInParameter(F370); + addInParameter(F371); + addInParameter(F372); + addInParameter(F373); + addInParameter(F374); + addInParameter(F375); + addInParameter(F376); + addInParameter(F377); + addInParameter(F378); + addInParameter(F379); + addInParameter(F380); + addInParameter(F381); + addInParameter(F382); + addInParameter(F383); + addInParameter(F384); + addInParameter(F385); + addInParameter(F386); + addInParameter(F387); + addInParameter(F388); + addInParameter(F389); + addInParameter(F390); + addInParameter(F391); + addInParameter(F392); + addInParameter(F393); + addInParameter(F394); + addInParameter(F395); + addInParameter(F396); + addInParameter(F397); + addInParameter(F398); + addInParameter(F399); + } + + /** + * Set the F000 parameter to the routine + */ + public void setF000(java.lang.Number value) { + setNumber(F000, value); + } + + /** + * Set the F001 parameter to the routine + */ + public void setF001(java.lang.Number value) { + setNumber(F001, value); + } + + /** + * Set the F002 parameter to the routine + */ + public void setF002(java.lang.Number value) { + setNumber(F002, value); + } + + /** + * Set the F003 parameter to the routine + */ + public void setF003(java.lang.Number value) { + setNumber(F003, value); + } + + /** + * Set the F004 parameter to the routine + */ + public void setF004(java.lang.Number value) { + setNumber(F004, value); + } + + /** + * Set the F005 parameter to the routine + */ + public void setF005(java.lang.Number value) { + setNumber(F005, value); + } + + /** + * Set the F006 parameter to the routine + */ + public void setF006(java.lang.Number value) { + setNumber(F006, value); + } + + /** + * Set the F007 parameter to the routine + */ + public void setF007(java.lang.Number value) { + setNumber(F007, value); + } + + /** + * Set the F008 parameter to the routine + */ + public void setF008(java.lang.Number value) { + setNumber(F008, value); + } + + /** + * Set the F009 parameter to the routine + */ + public void setF009(java.lang.Number value) { + setNumber(F009, value); + } + + /** + * Set the F010 parameter to the routine + */ + public void setF010(java.lang.Number value) { + setNumber(F010, value); + } + + /** + * Set the F011 parameter to the routine + */ + public void setF011(java.lang.Number value) { + setNumber(F011, value); + } + + /** + * Set the F012 parameter to the routine + */ + public void setF012(java.lang.Number value) { + setNumber(F012, value); + } + + /** + * Set the F013 parameter to the routine + */ + public void setF013(java.lang.Number value) { + setNumber(F013, value); + } + + /** + * Set the F014 parameter to the routine + */ + public void setF014(java.lang.Number value) { + setNumber(F014, value); + } + + /** + * Set the F015 parameter to the routine + */ + public void setF015(java.lang.Number value) { + setNumber(F015, value); + } + + /** + * Set the F016 parameter to the routine + */ + public void setF016(java.lang.Number value) { + setNumber(F016, value); + } + + /** + * Set the F017 parameter to the routine + */ + public void setF017(java.lang.Number value) { + setNumber(F017, value); + } + + /** + * Set the F018 parameter to the routine + */ + public void setF018(java.lang.Number value) { + setNumber(F018, value); + } + + /** + * Set the F019 parameter to the routine + */ + public void setF019(java.lang.Number value) { + setNumber(F019, value); + } + + /** + * Set the F020 parameter to the routine + */ + public void setF020(java.lang.Number value) { + setNumber(F020, value); + } + + /** + * Set the F021 parameter to the routine + */ + public void setF021(java.lang.Number value) { + setNumber(F021, value); + } + + /** + * Set the F022 parameter to the routine + */ + public void setF022(java.lang.Number value) { + setNumber(F022, value); + } + + /** + * Set the F023 parameter to the routine + */ + public void setF023(java.lang.Number value) { + setNumber(F023, value); + } + + /** + * Set the F024 parameter to the routine + */ + public void setF024(java.lang.Number value) { + setNumber(F024, value); + } + + /** + * Set the F025 parameter to the routine + */ + public void setF025(java.lang.Number value) { + setNumber(F025, value); + } + + /** + * Set the F026 parameter to the routine + */ + public void setF026(java.lang.Number value) { + setNumber(F026, value); + } + + /** + * Set the F027 parameter to the routine + */ + public void setF027(java.lang.Number value) { + setNumber(F027, value); + } + + /** + * Set the F028 parameter to the routine + */ + public void setF028(java.lang.Number value) { + setNumber(F028, value); + } + + /** + * Set the F029 parameter to the routine + */ + public void setF029(java.lang.Number value) { + setNumber(F029, value); + } + + /** + * Set the F030 parameter to the routine + */ + public void setF030(java.lang.Number value) { + setNumber(F030, value); + } + + /** + * Set the F031 parameter to the routine + */ + public void setF031(java.lang.Number value) { + setNumber(F031, value); + } + + /** + * Set the F032 parameter to the routine + */ + public void setF032(java.lang.Number value) { + setNumber(F032, value); + } + + /** + * Set the F033 parameter to the routine + */ + public void setF033(java.lang.Number value) { + setNumber(F033, value); + } + + /** + * Set the F034 parameter to the routine + */ + public void setF034(java.lang.Number value) { + setNumber(F034, value); + } + + /** + * Set the F035 parameter to the routine + */ + public void setF035(java.lang.Number value) { + setNumber(F035, value); + } + + /** + * Set the F036 parameter to the routine + */ + public void setF036(java.lang.Number value) { + setNumber(F036, value); + } + + /** + * Set the F037 parameter to the routine + */ + public void setF037(java.lang.Number value) { + setNumber(F037, value); + } + + /** + * Set the F038 parameter to the routine + */ + public void setF038(java.lang.Number value) { + setNumber(F038, value); + } + + /** + * Set the F039 parameter to the routine + */ + public void setF039(java.lang.Number value) { + setNumber(F039, value); + } + + /** + * Set the F040 parameter to the routine + */ + public void setF040(java.lang.Number value) { + setNumber(F040, value); + } + + /** + * Set the F041 parameter to the routine + */ + public void setF041(java.lang.Number value) { + setNumber(F041, value); + } + + /** + * Set the F042 parameter to the routine + */ + public void setF042(java.lang.Number value) { + setNumber(F042, value); + } + + /** + * Set the F043 parameter to the routine + */ + public void setF043(java.lang.Number value) { + setNumber(F043, value); + } + + /** + * Set the F044 parameter to the routine + */ + public void setF044(java.lang.Number value) { + setNumber(F044, value); + } + + /** + * Set the F045 parameter to the routine + */ + public void setF045(java.lang.Number value) { + setNumber(F045, value); + } + + /** + * Set the F046 parameter to the routine + */ + public void setF046(java.lang.Number value) { + setNumber(F046, value); + } + + /** + * Set the F047 parameter to the routine + */ + public void setF047(java.lang.Number value) { + setNumber(F047, value); + } + + /** + * Set the F048 parameter to the routine + */ + public void setF048(java.lang.Number value) { + setNumber(F048, value); + } + + /** + * Set the F049 parameter to the routine + */ + public void setF049(java.lang.Number value) { + setNumber(F049, value); + } + + /** + * Set the F050 parameter to the routine + */ + public void setF050(java.lang.Number value) { + setNumber(F050, value); + } + + /** + * Set the F051 parameter to the routine + */ + public void setF051(java.lang.Number value) { + setNumber(F051, value); + } + + /** + * Set the F052 parameter to the routine + */ + public void setF052(java.lang.Number value) { + setNumber(F052, value); + } + + /** + * Set the F053 parameter to the routine + */ + public void setF053(java.lang.Number value) { + setNumber(F053, value); + } + + /** + * Set the F054 parameter to the routine + */ + public void setF054(java.lang.Number value) { + setNumber(F054, value); + } + + /** + * Set the F055 parameter to the routine + */ + public void setF055(java.lang.Number value) { + setNumber(F055, value); + } + + /** + * Set the F056 parameter to the routine + */ + public void setF056(java.lang.Number value) { + setNumber(F056, value); + } + + /** + * Set the F057 parameter to the routine + */ + public void setF057(java.lang.Number value) { + setNumber(F057, value); + } + + /** + * Set the F058 parameter to the routine + */ + public void setF058(java.lang.Number value) { + setNumber(F058, value); + } + + /** + * Set the F059 parameter to the routine + */ + public void setF059(java.lang.Number value) { + setNumber(F059, value); + } + + /** + * Set the F060 parameter to the routine + */ + public void setF060(java.lang.Number value) { + setNumber(F060, value); + } + + /** + * Set the F061 parameter to the routine + */ + public void setF061(java.lang.Number value) { + setNumber(F061, value); + } + + /** + * Set the F062 parameter to the routine + */ + public void setF062(java.lang.Number value) { + setNumber(F062, value); + } + + /** + * Set the F063 parameter to the routine + */ + public void setF063(java.lang.Number value) { + setNumber(F063, value); + } + + /** + * Set the F064 parameter to the routine + */ + public void setF064(java.lang.Number value) { + setNumber(F064, value); + } + + /** + * Set the F065 parameter to the routine + */ + public void setF065(java.lang.Number value) { + setNumber(F065, value); + } + + /** + * Set the F066 parameter to the routine + */ + public void setF066(java.lang.Number value) { + setNumber(F066, value); + } + + /** + * Set the F067 parameter to the routine + */ + public void setF067(java.lang.Number value) { + setNumber(F067, value); + } + + /** + * Set the F068 parameter to the routine + */ + public void setF068(java.lang.Number value) { + setNumber(F068, value); + } + + /** + * Set the F069 parameter to the routine + */ + public void setF069(java.lang.Number value) { + setNumber(F069, value); + } + + /** + * Set the F070 parameter to the routine + */ + public void setF070(java.lang.Number value) { + setNumber(F070, value); + } + + /** + * Set the F071 parameter to the routine + */ + public void setF071(java.lang.Number value) { + setNumber(F071, value); + } + + /** + * Set the F072 parameter to the routine + */ + public void setF072(java.lang.Number value) { + setNumber(F072, value); + } + + /** + * Set the F073 parameter to the routine + */ + public void setF073(java.lang.Number value) { + setNumber(F073, value); + } + + /** + * Set the F074 parameter to the routine + */ + public void setF074(java.lang.Number value) { + setNumber(F074, value); + } + + /** + * Set the F075 parameter to the routine + */ + public void setF075(java.lang.Number value) { + setNumber(F075, value); + } + + /** + * Set the F076 parameter to the routine + */ + public void setF076(java.lang.Number value) { + setNumber(F076, value); + } + + /** + * Set the F077 parameter to the routine + */ + public void setF077(java.lang.Number value) { + setNumber(F077, value); + } + + /** + * Set the F078 parameter to the routine + */ + public void setF078(java.lang.Number value) { + setNumber(F078, value); + } + + /** + * Set the F079 parameter to the routine + */ + public void setF079(java.lang.Number value) { + setNumber(F079, value); + } + + /** + * Set the F080 parameter to the routine + */ + public void setF080(java.lang.Number value) { + setNumber(F080, value); + } + + /** + * Set the F081 parameter to the routine + */ + public void setF081(java.lang.Number value) { + setNumber(F081, value); + } + + /** + * Set the F082 parameter to the routine + */ + public void setF082(java.lang.Number value) { + setNumber(F082, value); + } + + /** + * Set the F083 parameter to the routine + */ + public void setF083(java.lang.Number value) { + setNumber(F083, value); + } + + /** + * Set the F084 parameter to the routine + */ + public void setF084(java.lang.Number value) { + setNumber(F084, value); + } + + /** + * Set the F085 parameter to the routine + */ + public void setF085(java.lang.Number value) { + setNumber(F085, value); + } + + /** + * Set the F086 parameter to the routine + */ + public void setF086(java.lang.Number value) { + setNumber(F086, value); + } + + /** + * Set the F087 parameter to the routine + */ + public void setF087(java.lang.Number value) { + setNumber(F087, value); + } + + /** + * Set the F088 parameter to the routine + */ + public void setF088(java.lang.Number value) { + setNumber(F088, value); + } + + /** + * Set the F089 parameter to the routine + */ + public void setF089(java.lang.Number value) { + setNumber(F089, value); + } + + /** + * Set the F090 parameter to the routine + */ + public void setF090(java.lang.Number value) { + setNumber(F090, value); + } + + /** + * Set the F091 parameter to the routine + */ + public void setF091(java.lang.Number value) { + setNumber(F091, value); + } + + /** + * Set the F092 parameter to the routine + */ + public void setF092(java.lang.Number value) { + setNumber(F092, value); + } + + /** + * Set the F093 parameter to the routine + */ + public void setF093(java.lang.Number value) { + setNumber(F093, value); + } + + /** + * Set the F094 parameter to the routine + */ + public void setF094(java.lang.Number value) { + setNumber(F094, value); + } + + /** + * Set the F095 parameter to the routine + */ + public void setF095(java.lang.Number value) { + setNumber(F095, value); + } + + /** + * Set the F096 parameter to the routine + */ + public void setF096(java.lang.Number value) { + setNumber(F096, value); + } + + /** + * Set the F097 parameter to the routine + */ + public void setF097(java.lang.Number value) { + setNumber(F097, value); + } + + /** + * Set the F098 parameter to the routine + */ + public void setF098(java.lang.Number value) { + setNumber(F098, value); + } + + /** + * Set the F099 parameter to the routine + */ + public void setF099(java.lang.Number value) { + setNumber(F099, value); + } + + /** + * Set the F100 parameter to the routine + */ + public void setF100(java.lang.Number value) { + setNumber(F100, value); + } + + /** + * Set the F101 parameter to the routine + */ + public void setF101(java.lang.Number value) { + setNumber(F101, value); + } + + /** + * Set the F102 parameter to the routine + */ + public void setF102(java.lang.Number value) { + setNumber(F102, value); + } + + /** + * Set the F103 parameter to the routine + */ + public void setF103(java.lang.Number value) { + setNumber(F103, value); + } + + /** + * Set the F104 parameter to the routine + */ + public void setF104(java.lang.Number value) { + setNumber(F104, value); + } + + /** + * Set the F105 parameter to the routine + */ + public void setF105(java.lang.Number value) { + setNumber(F105, value); + } + + /** + * Set the F106 parameter to the routine + */ + public void setF106(java.lang.Number value) { + setNumber(F106, value); + } + + /** + * Set the F107 parameter to the routine + */ + public void setF107(java.lang.Number value) { + setNumber(F107, value); + } + + /** + * Set the F108 parameter to the routine + */ + public void setF108(java.lang.Number value) { + setNumber(F108, value); + } + + /** + * Set the F109 parameter to the routine + */ + public void setF109(java.lang.Number value) { + setNumber(F109, value); + } + + /** + * Set the F110 parameter to the routine + */ + public void setF110(java.lang.Number value) { + setNumber(F110, value); + } + + /** + * Set the F111 parameter to the routine + */ + public void setF111(java.lang.Number value) { + setNumber(F111, value); + } + + /** + * Set the F112 parameter to the routine + */ + public void setF112(java.lang.Number value) { + setNumber(F112, value); + } + + /** + * Set the F113 parameter to the routine + */ + public void setF113(java.lang.Number value) { + setNumber(F113, value); + } + + /** + * Set the F114 parameter to the routine + */ + public void setF114(java.lang.Number value) { + setNumber(F114, value); + } + + /** + * Set the F115 parameter to the routine + */ + public void setF115(java.lang.Number value) { + setNumber(F115, value); + } + + /** + * Set the F116 parameter to the routine + */ + public void setF116(java.lang.Number value) { + setNumber(F116, value); + } + + /** + * Set the F117 parameter to the routine + */ + public void setF117(java.lang.Number value) { + setNumber(F117, value); + } + + /** + * Set the F118 parameter to the routine + */ + public void setF118(java.lang.Number value) { + setNumber(F118, value); + } + + /** + * Set the F119 parameter to the routine + */ + public void setF119(java.lang.Number value) { + setNumber(F119, value); + } + + /** + * Set the F120 parameter to the routine + */ + public void setF120(java.lang.Number value) { + setNumber(F120, value); + } + + /** + * Set the F121 parameter to the routine + */ + public void setF121(java.lang.Number value) { + setNumber(F121, value); + } + + /** + * Set the F122 parameter to the routine + */ + public void setF122(java.lang.Number value) { + setNumber(F122, value); + } + + /** + * Set the F123 parameter to the routine + */ + public void setF123(java.lang.Number value) { + setNumber(F123, value); + } + + /** + * Set the F124 parameter to the routine + */ + public void setF124(java.lang.Number value) { + setNumber(F124, value); + } + + /** + * Set the F125 parameter to the routine + */ + public void setF125(java.lang.Number value) { + setNumber(F125, value); + } + + /** + * Set the F126 parameter to the routine + */ + public void setF126(java.lang.Number value) { + setNumber(F126, value); + } + + /** + * Set the F127 parameter to the routine + */ + public void setF127(java.lang.Number value) { + setNumber(F127, value); + } + + /** + * Set the F128 parameter to the routine + */ + public void setF128(java.lang.Number value) { + setNumber(F128, value); + } + + /** + * Set the F129 parameter to the routine + */ + public void setF129(java.lang.Number value) { + setNumber(F129, value); + } + + /** + * Set the F130 parameter to the routine + */ + public void setF130(java.lang.Number value) { + setNumber(F130, value); + } + + /** + * Set the F131 parameter to the routine + */ + public void setF131(java.lang.Number value) { + setNumber(F131, value); + } + + /** + * Set the F132 parameter to the routine + */ + public void setF132(java.lang.Number value) { + setNumber(F132, value); + } + + /** + * Set the F133 parameter to the routine + */ + public void setF133(java.lang.Number value) { + setNumber(F133, value); + } + + /** + * Set the F134 parameter to the routine + */ + public void setF134(java.lang.Number value) { + setNumber(F134, value); + } + + /** + * Set the F135 parameter to the routine + */ + public void setF135(java.lang.Number value) { + setNumber(F135, value); + } + + /** + * Set the F136 parameter to the routine + */ + public void setF136(java.lang.Number value) { + setNumber(F136, value); + } + + /** + * Set the F137 parameter to the routine + */ + public void setF137(java.lang.Number value) { + setNumber(F137, value); + } + + /** + * Set the F138 parameter to the routine + */ + public void setF138(java.lang.Number value) { + setNumber(F138, value); + } + + /** + * Set the F139 parameter to the routine + */ + public void setF139(java.lang.Number value) { + setNumber(F139, value); + } + + /** + * Set the F140 parameter to the routine + */ + public void setF140(java.lang.Number value) { + setNumber(F140, value); + } + + /** + * Set the F141 parameter to the routine + */ + public void setF141(java.lang.Number value) { + setNumber(F141, value); + } + + /** + * Set the F142 parameter to the routine + */ + public void setF142(java.lang.Number value) { + setNumber(F142, value); + } + + /** + * Set the F143 parameter to the routine + */ + public void setF143(java.lang.Number value) { + setNumber(F143, value); + } + + /** + * Set the F144 parameter to the routine + */ + public void setF144(java.lang.Number value) { + setNumber(F144, value); + } + + /** + * Set the F145 parameter to the routine + */ + public void setF145(java.lang.Number value) { + setNumber(F145, value); + } + + /** + * Set the F146 parameter to the routine + */ + public void setF146(java.lang.Number value) { + setNumber(F146, value); + } + + /** + * Set the F147 parameter to the routine + */ + public void setF147(java.lang.Number value) { + setNumber(F147, value); + } + + /** + * Set the F148 parameter to the routine + */ + public void setF148(java.lang.Number value) { + setNumber(F148, value); + } + + /** + * Set the F149 parameter to the routine + */ + public void setF149(java.lang.Number value) { + setNumber(F149, value); + } + + /** + * Set the F150 parameter to the routine + */ + public void setF150(java.lang.Number value) { + setNumber(F150, value); + } + + /** + * Set the F151 parameter to the routine + */ + public void setF151(java.lang.Number value) { + setNumber(F151, value); + } + + /** + * Set the F152 parameter to the routine + */ + public void setF152(java.lang.Number value) { + setNumber(F152, value); + } + + /** + * Set the F153 parameter to the routine + */ + public void setF153(java.lang.Number value) { + setNumber(F153, value); + } + + /** + * Set the F154 parameter to the routine + */ + public void setF154(java.lang.Number value) { + setNumber(F154, value); + } + + /** + * Set the F155 parameter to the routine + */ + public void setF155(java.lang.Number value) { + setNumber(F155, value); + } + + /** + * Set the F156 parameter to the routine + */ + public void setF156(java.lang.Number value) { + setNumber(F156, value); + } + + /** + * Set the F157 parameter to the routine + */ + public void setF157(java.lang.Number value) { + setNumber(F157, value); + } + + /** + * Set the F158 parameter to the routine + */ + public void setF158(java.lang.Number value) { + setNumber(F158, value); + } + + /** + * Set the F159 parameter to the routine + */ + public void setF159(java.lang.Number value) { + setNumber(F159, value); + } + + /** + * Set the F160 parameter to the routine + */ + public void setF160(java.lang.Number value) { + setNumber(F160, value); + } + + /** + * Set the F161 parameter to the routine + */ + public void setF161(java.lang.Number value) { + setNumber(F161, value); + } + + /** + * Set the F162 parameter to the routine + */ + public void setF162(java.lang.Number value) { + setNumber(F162, value); + } + + /** + * Set the F163 parameter to the routine + */ + public void setF163(java.lang.Number value) { + setNumber(F163, value); + } + + /** + * Set the F164 parameter to the routine + */ + public void setF164(java.lang.Number value) { + setNumber(F164, value); + } + + /** + * Set the F165 parameter to the routine + */ + public void setF165(java.lang.Number value) { + setNumber(F165, value); + } + + /** + * Set the F166 parameter to the routine + */ + public void setF166(java.lang.Number value) { + setNumber(F166, value); + } + + /** + * Set the F167 parameter to the routine + */ + public void setF167(java.lang.Number value) { + setNumber(F167, value); + } + + /** + * Set the F168 parameter to the routine + */ + public void setF168(java.lang.Number value) { + setNumber(F168, value); + } + + /** + * Set the F169 parameter to the routine + */ + public void setF169(java.lang.Number value) { + setNumber(F169, value); + } + + /** + * Set the F170 parameter to the routine + */ + public void setF170(java.lang.Number value) { + setNumber(F170, value); + } + + /** + * Set the F171 parameter to the routine + */ + public void setF171(java.lang.Number value) { + setNumber(F171, value); + } + + /** + * Set the F172 parameter to the routine + */ + public void setF172(java.lang.Number value) { + setNumber(F172, value); + } + + /** + * Set the F173 parameter to the routine + */ + public void setF173(java.lang.Number value) { + setNumber(F173, value); + } + + /** + * Set the F174 parameter to the routine + */ + public void setF174(java.lang.Number value) { + setNumber(F174, value); + } + + /** + * Set the F175 parameter to the routine + */ + public void setF175(java.lang.Number value) { + setNumber(F175, value); + } + + /** + * Set the F176 parameter to the routine + */ + public void setF176(java.lang.Number value) { + setNumber(F176, value); + } + + /** + * Set the F177 parameter to the routine + */ + public void setF177(java.lang.Number value) { + setNumber(F177, value); + } + + /** + * Set the F178 parameter to the routine + */ + public void setF178(java.lang.Number value) { + setNumber(F178, value); + } + + /** + * Set the F179 parameter to the routine + */ + public void setF179(java.lang.Number value) { + setNumber(F179, value); + } + + /** + * Set the F180 parameter to the routine + */ + public void setF180(java.lang.Number value) { + setNumber(F180, value); + } + + /** + * Set the F181 parameter to the routine + */ + public void setF181(java.lang.Number value) { + setNumber(F181, value); + } + + /** + * Set the F182 parameter to the routine + */ + public void setF182(java.lang.Number value) { + setNumber(F182, value); + } + + /** + * Set the F183 parameter to the routine + */ + public void setF183(java.lang.Number value) { + setNumber(F183, value); + } + + /** + * Set the F184 parameter to the routine + */ + public void setF184(java.lang.Number value) { + setNumber(F184, value); + } + + /** + * Set the F185 parameter to the routine + */ + public void setF185(java.lang.Number value) { + setNumber(F185, value); + } + + /** + * Set the F186 parameter to the routine + */ + public void setF186(java.lang.Number value) { + setNumber(F186, value); + } + + /** + * Set the F187 parameter to the routine + */ + public void setF187(java.lang.Number value) { + setNumber(F187, value); + } + + /** + * Set the F188 parameter to the routine + */ + public void setF188(java.lang.Number value) { + setNumber(F188, value); + } + + /** + * Set the F189 parameter to the routine + */ + public void setF189(java.lang.Number value) { + setNumber(F189, value); + } + + /** + * Set the F190 parameter to the routine + */ + public void setF190(java.lang.Number value) { + setNumber(F190, value); + } + + /** + * Set the F191 parameter to the routine + */ + public void setF191(java.lang.Number value) { + setNumber(F191, value); + } + + /** + * Set the F192 parameter to the routine + */ + public void setF192(java.lang.Number value) { + setNumber(F192, value); + } + + /** + * Set the F193 parameter to the routine + */ + public void setF193(java.lang.Number value) { + setNumber(F193, value); + } + + /** + * Set the F194 parameter to the routine + */ + public void setF194(java.lang.Number value) { + setNumber(F194, value); + } + + /** + * Set the F195 parameter to the routine + */ + public void setF195(java.lang.Number value) { + setNumber(F195, value); + } + + /** + * Set the F196 parameter to the routine + */ + public void setF196(java.lang.Number value) { + setNumber(F196, value); + } + + /** + * Set the F197 parameter to the routine + */ + public void setF197(java.lang.Number value) { + setNumber(F197, value); + } + + /** + * Set the F198 parameter to the routine + */ + public void setF198(java.lang.Number value) { + setNumber(F198, value); + } + + /** + * Set the F199 parameter to the routine + */ + public void setF199(java.lang.Number value) { + setNumber(F199, value); + } + + /** + * Set the F200 parameter to the routine + */ + public void setF200(java.lang.Number value) { + setNumber(F200, value); + } + + /** + * Set the F201 parameter to the routine + */ + public void setF201(java.lang.Number value) { + setNumber(F201, value); + } + + /** + * Set the F202 parameter to the routine + */ + public void setF202(java.lang.Number value) { + setNumber(F202, value); + } + + /** + * Set the F203 parameter to the routine + */ + public void setF203(java.lang.Number value) { + setNumber(F203, value); + } + + /** + * Set the F204 parameter to the routine + */ + public void setF204(java.lang.Number value) { + setNumber(F204, value); + } + + /** + * Set the F205 parameter to the routine + */ + public void setF205(java.lang.Number value) { + setNumber(F205, value); + } + + /** + * Set the F206 parameter to the routine + */ + public void setF206(java.lang.Number value) { + setNumber(F206, value); + } + + /** + * Set the F207 parameter to the routine + */ + public void setF207(java.lang.Number value) { + setNumber(F207, value); + } + + /** + * Set the F208 parameter to the routine + */ + public void setF208(java.lang.Number value) { + setNumber(F208, value); + } + + /** + * Set the F209 parameter to the routine + */ + public void setF209(java.lang.Number value) { + setNumber(F209, value); + } + + /** + * Set the F210 parameter to the routine + */ + public void setF210(java.lang.Number value) { + setNumber(F210, value); + } + + /** + * Set the F211 parameter to the routine + */ + public void setF211(java.lang.Number value) { + setNumber(F211, value); + } + + /** + * Set the F212 parameter to the routine + */ + public void setF212(java.lang.Number value) { + setNumber(F212, value); + } + + /** + * Set the F213 parameter to the routine + */ + public void setF213(java.lang.Number value) { + setNumber(F213, value); + } + + /** + * Set the F214 parameter to the routine + */ + public void setF214(java.lang.Number value) { + setNumber(F214, value); + } + + /** + * Set the F215 parameter to the routine + */ + public void setF215(java.lang.Number value) { + setNumber(F215, value); + } + + /** + * Set the F216 parameter to the routine + */ + public void setF216(java.lang.Number value) { + setNumber(F216, value); + } + + /** + * Set the F217 parameter to the routine + */ + public void setF217(java.lang.Number value) { + setNumber(F217, value); + } + + /** + * Set the F218 parameter to the routine + */ + public void setF218(java.lang.Number value) { + setNumber(F218, value); + } + + /** + * Set the F219 parameter to the routine + */ + public void setF219(java.lang.Number value) { + setNumber(F219, value); + } + + /** + * Set the F220 parameter to the routine + */ + public void setF220(java.lang.Number value) { + setNumber(F220, value); + } + + /** + * Set the F221 parameter to the routine + */ + public void setF221(java.lang.Number value) { + setNumber(F221, value); + } + + /** + * Set the F222 parameter to the routine + */ + public void setF222(java.lang.Number value) { + setNumber(F222, value); + } + + /** + * Set the F223 parameter to the routine + */ + public void setF223(java.lang.Number value) { + setNumber(F223, value); + } + + /** + * Set the F224 parameter to the routine + */ + public void setF224(java.lang.Number value) { + setNumber(F224, value); + } + + /** + * Set the F225 parameter to the routine + */ + public void setF225(java.lang.Number value) { + setNumber(F225, value); + } + + /** + * Set the F226 parameter to the routine + */ + public void setF226(java.lang.Number value) { + setNumber(F226, value); + } + + /** + * Set the F227 parameter to the routine + */ + public void setF227(java.lang.Number value) { + setNumber(F227, value); + } + + /** + * Set the F228 parameter to the routine + */ + public void setF228(java.lang.Number value) { + setNumber(F228, value); + } + + /** + * Set the F229 parameter to the routine + */ + public void setF229(java.lang.Number value) { + setNumber(F229, value); + } + + /** + * Set the F230 parameter to the routine + */ + public void setF230(java.lang.Number value) { + setNumber(F230, value); + } + + /** + * Set the F231 parameter to the routine + */ + public void setF231(java.lang.Number value) { + setNumber(F231, value); + } + + /** + * Set the F232 parameter to the routine + */ + public void setF232(java.lang.Number value) { + setNumber(F232, value); + } + + /** + * Set the F233 parameter to the routine + */ + public void setF233(java.lang.Number value) { + setNumber(F233, value); + } + + /** + * Set the F234 parameter to the routine + */ + public void setF234(java.lang.Number value) { + setNumber(F234, value); + } + + /** + * Set the F235 parameter to the routine + */ + public void setF235(java.lang.Number value) { + setNumber(F235, value); + } + + /** + * Set the F236 parameter to the routine + */ + public void setF236(java.lang.Number value) { + setNumber(F236, value); + } + + /** + * Set the F237 parameter to the routine + */ + public void setF237(java.lang.Number value) { + setNumber(F237, value); + } + + /** + * Set the F238 parameter to the routine + */ + public void setF238(java.lang.Number value) { + setNumber(F238, value); + } + + /** + * Set the F239 parameter to the routine + */ + public void setF239(java.lang.Number value) { + setNumber(F239, value); + } + + /** + * Set the F240 parameter to the routine + */ + public void setF240(java.lang.Number value) { + setNumber(F240, value); + } + + /** + * Set the F241 parameter to the routine + */ + public void setF241(java.lang.Number value) { + setNumber(F241, value); + } + + /** + * Set the F242 parameter to the routine + */ + public void setF242(java.lang.Number value) { + setNumber(F242, value); + } + + /** + * Set the F243 parameter to the routine + */ + public void setF243(java.lang.Number value) { + setNumber(F243, value); + } + + /** + * Set the F244 parameter to the routine + */ + public void setF244(java.lang.Number value) { + setNumber(F244, value); + } + + /** + * Set the F245 parameter to the routine + */ + public void setF245(java.lang.Number value) { + setNumber(F245, value); + } + + /** + * Set the F246 parameter to the routine + */ + public void setF246(java.lang.Number value) { + setNumber(F246, value); + } + + /** + * Set the F247 parameter to the routine + */ + public void setF247(java.lang.Number value) { + setNumber(F247, value); + } + + /** + * Set the F248 parameter to the routine + */ + public void setF248(java.lang.Number value) { + setNumber(F248, value); + } + + /** + * Set the F249 parameter to the routine + */ + public void setF249(java.lang.Number value) { + setNumber(F249, value); + } + + /** + * Set the F250 parameter to the routine + */ + public void setF250(java.lang.Number value) { + setNumber(F250, value); + } + + /** + * Set the F251 parameter to the routine + */ + public void setF251(java.lang.Number value) { + setNumber(F251, value); + } + + /** + * Set the F252 parameter to the routine + */ + public void setF252(java.lang.Number value) { + setNumber(F252, value); + } + + /** + * Set the F253 parameter to the routine + */ + public void setF253(java.lang.Number value) { + setNumber(F253, value); + } + + /** + * Set the F254 parameter to the routine + */ + public void setF254(java.lang.Number value) { + setNumber(F254, value); + } + + /** + * Set the F255 parameter to the routine + */ + public void setF255(java.lang.Number value) { + setNumber(F255, value); + } + + /** + * Set the F256 parameter to the routine + */ + public void setF256(java.lang.Number value) { + setNumber(F256, value); + } + + /** + * Set the F257 parameter to the routine + */ + public void setF257(java.lang.Number value) { + setNumber(F257, value); + } + + /** + * Set the F258 parameter to the routine + */ + public void setF258(java.lang.Number value) { + setNumber(F258, value); + } + + /** + * Set the F259 parameter to the routine + */ + public void setF259(java.lang.Number value) { + setNumber(F259, value); + } + + /** + * Set the F260 parameter to the routine + */ + public void setF260(java.lang.Number value) { + setNumber(F260, value); + } + + /** + * Set the F261 parameter to the routine + */ + public void setF261(java.lang.Number value) { + setNumber(F261, value); + } + + /** + * Set the F262 parameter to the routine + */ + public void setF262(java.lang.Number value) { + setNumber(F262, value); + } + + /** + * Set the F263 parameter to the routine + */ + public void setF263(java.lang.Number value) { + setNumber(F263, value); + } + + /** + * Set the F264 parameter to the routine + */ + public void setF264(java.lang.Number value) { + setNumber(F264, value); + } + + /** + * Set the F265 parameter to the routine + */ + public void setF265(java.lang.Number value) { + setNumber(F265, value); + } + + /** + * Set the F266 parameter to the routine + */ + public void setF266(java.lang.Number value) { + setNumber(F266, value); + } + + /** + * Set the F267 parameter to the routine + */ + public void setF267(java.lang.Number value) { + setNumber(F267, value); + } + + /** + * Set the F268 parameter to the routine + */ + public void setF268(java.lang.Number value) { + setNumber(F268, value); + } + + /** + * Set the F269 parameter to the routine + */ + public void setF269(java.lang.Number value) { + setNumber(F269, value); + } + + /** + * Set the F270 parameter to the routine + */ + public void setF270(java.lang.Number value) { + setNumber(F270, value); + } + + /** + * Set the F271 parameter to the routine + */ + public void setF271(java.lang.Number value) { + setNumber(F271, value); + } + + /** + * Set the F272 parameter to the routine + */ + public void setF272(java.lang.Number value) { + setNumber(F272, value); + } + + /** + * Set the F273 parameter to the routine + */ + public void setF273(java.lang.Number value) { + setNumber(F273, value); + } + + /** + * Set the F274 parameter to the routine + */ + public void setF274(java.lang.Number value) { + setNumber(F274, value); + } + + /** + * Set the F275 parameter to the routine + */ + public void setF275(java.lang.Number value) { + setNumber(F275, value); + } + + /** + * Set the F276 parameter to the routine + */ + public void setF276(java.lang.Number value) { + setNumber(F276, value); + } + + /** + * Set the F277 parameter to the routine + */ + public void setF277(java.lang.Number value) { + setNumber(F277, value); + } + + /** + * Set the F278 parameter to the routine + */ + public void setF278(java.lang.Number value) { + setNumber(F278, value); + } + + /** + * Set the F279 parameter to the routine + */ + public void setF279(java.lang.Number value) { + setNumber(F279, value); + } + + /** + * Set the F280 parameter to the routine + */ + public void setF280(java.lang.Number value) { + setNumber(F280, value); + } + + /** + * Set the F281 parameter to the routine + */ + public void setF281(java.lang.Number value) { + setNumber(F281, value); + } + + /** + * Set the F282 parameter to the routine + */ + public void setF282(java.lang.Number value) { + setNumber(F282, value); + } + + /** + * Set the F283 parameter to the routine + */ + public void setF283(java.lang.Number value) { + setNumber(F283, value); + } + + /** + * Set the F284 parameter to the routine + */ + public void setF284(java.lang.Number value) { + setNumber(F284, value); + } + + /** + * Set the F285 parameter to the routine + */ + public void setF285(java.lang.Number value) { + setNumber(F285, value); + } + + /** + * Set the F286 parameter to the routine + */ + public void setF286(java.lang.Number value) { + setNumber(F286, value); + } + + /** + * Set the F287 parameter to the routine + */ + public void setF287(java.lang.Number value) { + setNumber(F287, value); + } + + /** + * Set the F288 parameter to the routine + */ + public void setF288(java.lang.Number value) { + setNumber(F288, value); + } + + /** + * Set the F289 parameter to the routine + */ + public void setF289(java.lang.Number value) { + setNumber(F289, value); + } + + /** + * Set the F290 parameter to the routine + */ + public void setF290(java.lang.Number value) { + setNumber(F290, value); + } + + /** + * Set the F291 parameter to the routine + */ + public void setF291(java.lang.Number value) { + setNumber(F291, value); + } + + /** + * Set the F292 parameter to the routine + */ + public void setF292(java.lang.Number value) { + setNumber(F292, value); + } + + /** + * Set the F293 parameter to the routine + */ + public void setF293(java.lang.Number value) { + setNumber(F293, value); + } + + /** + * Set the F294 parameter to the routine + */ + public void setF294(java.lang.Number value) { + setNumber(F294, value); + } + + /** + * Set the F295 parameter to the routine + */ + public void setF295(java.lang.Number value) { + setNumber(F295, value); + } + + /** + * Set the F296 parameter to the routine + */ + public void setF296(java.lang.Number value) { + setNumber(F296, value); + } + + /** + * Set the F297 parameter to the routine + */ + public void setF297(java.lang.Number value) { + setNumber(F297, value); + } + + /** + * Set the F298 parameter to the routine + */ + public void setF298(java.lang.Number value) { + setNumber(F298, value); + } + + /** + * Set the F299 parameter to the routine + */ + public void setF299(java.lang.Number value) { + setNumber(F299, value); + } + + /** + * Set the F300 parameter to the routine + */ + public void setF300(java.lang.Number value) { + setNumber(F300, value); + } + + /** + * Set the F301 parameter to the routine + */ + public void setF301(java.lang.Number value) { + setNumber(F301, value); + } + + /** + * Set the F302 parameter to the routine + */ + public void setF302(java.lang.Number value) { + setNumber(F302, value); + } + + /** + * Set the F303 parameter to the routine + */ + public void setF303(java.lang.Number value) { + setNumber(F303, value); + } + + /** + * Set the F304 parameter to the routine + */ + public void setF304(java.lang.Number value) { + setNumber(F304, value); + } + + /** + * Set the F305 parameter to the routine + */ + public void setF305(java.lang.Number value) { + setNumber(F305, value); + } + + /** + * Set the F306 parameter to the routine + */ + public void setF306(java.lang.Number value) { + setNumber(F306, value); + } + + /** + * Set the F307 parameter to the routine + */ + public void setF307(java.lang.Number value) { + setNumber(F307, value); + } + + /** + * Set the F308 parameter to the routine + */ + public void setF308(java.lang.Number value) { + setNumber(F308, value); + } + + /** + * Set the F309 parameter to the routine + */ + public void setF309(java.lang.Number value) { + setNumber(F309, value); + } + + /** + * Set the F310 parameter to the routine + */ + public void setF310(java.lang.Number value) { + setNumber(F310, value); + } + + /** + * Set the F311 parameter to the routine + */ + public void setF311(java.lang.Number value) { + setNumber(F311, value); + } + + /** + * Set the F312 parameter to the routine + */ + public void setF312(java.lang.Number value) { + setNumber(F312, value); + } + + /** + * Set the F313 parameter to the routine + */ + public void setF313(java.lang.Number value) { + setNumber(F313, value); + } + + /** + * Set the F314 parameter to the routine + */ + public void setF314(java.lang.Number value) { + setNumber(F314, value); + } + + /** + * Set the F315 parameter to the routine + */ + public void setF315(java.lang.Number value) { + setNumber(F315, value); + } + + /** + * Set the F316 parameter to the routine + */ + public void setF316(java.lang.Number value) { + setNumber(F316, value); + } + + /** + * Set the F317 parameter to the routine + */ + public void setF317(java.lang.Number value) { + setNumber(F317, value); + } + + /** + * Set the F318 parameter to the routine + */ + public void setF318(java.lang.Number value) { + setNumber(F318, value); + } + + /** + * Set the F319 parameter to the routine + */ + public void setF319(java.lang.Number value) { + setNumber(F319, value); + } + + /** + * Set the F320 parameter to the routine + */ + public void setF320(java.lang.Number value) { + setNumber(F320, value); + } + + /** + * Set the F321 parameter to the routine + */ + public void setF321(java.lang.Number value) { + setNumber(F321, value); + } + + /** + * Set the F322 parameter to the routine + */ + public void setF322(java.lang.Number value) { + setNumber(F322, value); + } + + /** + * Set the F323 parameter to the routine + */ + public void setF323(java.lang.Number value) { + setNumber(F323, value); + } + + /** + * Set the F324 parameter to the routine + */ + public void setF324(java.lang.Number value) { + setNumber(F324, value); + } + + /** + * Set the F325 parameter to the routine + */ + public void setF325(java.lang.Number value) { + setNumber(F325, value); + } + + /** + * Set the F326 parameter to the routine + */ + public void setF326(java.lang.Number value) { + setNumber(F326, value); + } + + /** + * Set the F327 parameter to the routine + */ + public void setF327(java.lang.Number value) { + setNumber(F327, value); + } + + /** + * Set the F328 parameter to the routine + */ + public void setF328(java.lang.Number value) { + setNumber(F328, value); + } + + /** + * Set the F329 parameter to the routine + */ + public void setF329(java.lang.Number value) { + setNumber(F329, value); + } + + /** + * Set the F330 parameter to the routine + */ + public void setF330(java.lang.Number value) { + setNumber(F330, value); + } + + /** + * Set the F331 parameter to the routine + */ + public void setF331(java.lang.Number value) { + setNumber(F331, value); + } + + /** + * Set the F332 parameter to the routine + */ + public void setF332(java.lang.Number value) { + setNumber(F332, value); + } + + /** + * Set the F333 parameter to the routine + */ + public void setF333(java.lang.Number value) { + setNumber(F333, value); + } + + /** + * Set the F334 parameter to the routine + */ + public void setF334(java.lang.Number value) { + setNumber(F334, value); + } + + /** + * Set the F335 parameter to the routine + */ + public void setF335(java.lang.Number value) { + setNumber(F335, value); + } + + /** + * Set the F336 parameter to the routine + */ + public void setF336(java.lang.Number value) { + setNumber(F336, value); + } + + /** + * Set the F337 parameter to the routine + */ + public void setF337(java.lang.Number value) { + setNumber(F337, value); + } + + /** + * Set the F338 parameter to the routine + */ + public void setF338(java.lang.Number value) { + setNumber(F338, value); + } + + /** + * Set the F339 parameter to the routine + */ + public void setF339(java.lang.Number value) { + setNumber(F339, value); + } + + /** + * Set the F340 parameter to the routine + */ + public void setF340(java.lang.Number value) { + setNumber(F340, value); + } + + /** + * Set the F341 parameter to the routine + */ + public void setF341(java.lang.Number value) { + setNumber(F341, value); + } + + /** + * Set the F342 parameter to the routine + */ + public void setF342(java.lang.Number value) { + setNumber(F342, value); + } + + /** + * Set the F343 parameter to the routine + */ + public void setF343(java.lang.Number value) { + setNumber(F343, value); + } + + /** + * Set the F344 parameter to the routine + */ + public void setF344(java.lang.Number value) { + setNumber(F344, value); + } + + /** + * Set the F345 parameter to the routine + */ + public void setF345(java.lang.Number value) { + setNumber(F345, value); + } + + /** + * Set the F346 parameter to the routine + */ + public void setF346(java.lang.Number value) { + setNumber(F346, value); + } + + /** + * Set the F347 parameter to the routine + */ + public void setF347(java.lang.Number value) { + setNumber(F347, value); + } + + /** + * Set the F348 parameter to the routine + */ + public void setF348(java.lang.Number value) { + setNumber(F348, value); + } + + /** + * Set the F349 parameter to the routine + */ + public void setF349(java.lang.Number value) { + setNumber(F349, value); + } + + /** + * Set the F350 parameter to the routine + */ + public void setF350(java.lang.Number value) { + setNumber(F350, value); + } + + /** + * Set the F351 parameter to the routine + */ + public void setF351(java.lang.Number value) { + setNumber(F351, value); + } + + /** + * Set the F352 parameter to the routine + */ + public void setF352(java.lang.Number value) { + setNumber(F352, value); + } + + /** + * Set the F353 parameter to the routine + */ + public void setF353(java.lang.Number value) { + setNumber(F353, value); + } + + /** + * Set the F354 parameter to the routine + */ + public void setF354(java.lang.Number value) { + setNumber(F354, value); + } + + /** + * Set the F355 parameter to the routine + */ + public void setF355(java.lang.Number value) { + setNumber(F355, value); + } + + /** + * Set the F356 parameter to the routine + */ + public void setF356(java.lang.Number value) { + setNumber(F356, value); + } + + /** + * Set the F357 parameter to the routine + */ + public void setF357(java.lang.Number value) { + setNumber(F357, value); + } + + /** + * Set the F358 parameter to the routine + */ + public void setF358(java.lang.Number value) { + setNumber(F358, value); + } + + /** + * Set the F359 parameter to the routine + */ + public void setF359(java.lang.Number value) { + setNumber(F359, value); + } + + /** + * Set the F360 parameter to the routine + */ + public void setF360(java.lang.Number value) { + setNumber(F360, value); + } + + /** + * Set the F361 parameter to the routine + */ + public void setF361(java.lang.Number value) { + setNumber(F361, value); + } + + /** + * Set the F362 parameter to the routine + */ + public void setF362(java.lang.Number value) { + setNumber(F362, value); + } + + /** + * Set the F363 parameter to the routine + */ + public void setF363(java.lang.Number value) { + setNumber(F363, value); + } + + /** + * Set the F364 parameter to the routine + */ + public void setF364(java.lang.Number value) { + setNumber(F364, value); + } + + /** + * Set the F365 parameter to the routine + */ + public void setF365(java.lang.Number value) { + setNumber(F365, value); + } + + /** + * Set the F366 parameter to the routine + */ + public void setF366(java.lang.Number value) { + setNumber(F366, value); + } + + /** + * Set the F367 parameter to the routine + */ + public void setF367(java.lang.Number value) { + setNumber(F367, value); + } + + /** + * Set the F368 parameter to the routine + */ + public void setF368(java.lang.Number value) { + setNumber(F368, value); + } + + /** + * Set the F369 parameter to the routine + */ + public void setF369(java.lang.Number value) { + setNumber(F369, value); + } + + /** + * Set the F370 parameter to the routine + */ + public void setF370(java.lang.Number value) { + setNumber(F370, value); + } + + /** + * Set the F371 parameter to the routine + */ + public void setF371(java.lang.Number value) { + setNumber(F371, value); + } + + /** + * Set the F372 parameter to the routine + */ + public void setF372(java.lang.Number value) { + setNumber(F372, value); + } + + /** + * Set the F373 parameter to the routine + */ + public void setF373(java.lang.Number value) { + setNumber(F373, value); + } + + /** + * Set the F374 parameter to the routine + */ + public void setF374(java.lang.Number value) { + setNumber(F374, value); + } + + /** + * Set the F375 parameter to the routine + */ + public void setF375(java.lang.Number value) { + setNumber(F375, value); + } + + /** + * Set the F376 parameter to the routine + */ + public void setF376(java.lang.Number value) { + setNumber(F376, value); + } + + /** + * Set the F377 parameter to the routine + */ + public void setF377(java.lang.Number value) { + setNumber(F377, value); + } + + /** + * Set the F378 parameter to the routine + */ + public void setF378(java.lang.Number value) { + setNumber(F378, value); + } + + /** + * Set the F379 parameter to the routine + */ + public void setF379(java.lang.Number value) { + setNumber(F379, value); + } + + /** + * Set the F380 parameter to the routine + */ + public void setF380(java.lang.Number value) { + setNumber(F380, value); + } + + /** + * Set the F381 parameter to the routine + */ + public void setF381(java.lang.Number value) { + setNumber(F381, value); + } + + /** + * Set the F382 parameter to the routine + */ + public void setF382(java.lang.Number value) { + setNumber(F382, value); + } + + /** + * Set the F383 parameter to the routine + */ + public void setF383(java.lang.Number value) { + setNumber(F383, value); + } + + /** + * Set the F384 parameter to the routine + */ + public void setF384(java.lang.Number value) { + setNumber(F384, value); + } + + /** + * Set the F385 parameter to the routine + */ + public void setF385(java.lang.Number value) { + setNumber(F385, value); + } + + /** + * Set the F386 parameter to the routine + */ + public void setF386(java.lang.Number value) { + setNumber(F386, value); + } + + /** + * Set the F387 parameter to the routine + */ + public void setF387(java.lang.Number value) { + setNumber(F387, value); + } + + /** + * Set the F388 parameter to the routine + */ + public void setF388(java.lang.Number value) { + setNumber(F388, value); + } + + /** + * Set the F389 parameter to the routine + */ + public void setF389(java.lang.Number value) { + setNumber(F389, value); + } + + /** + * Set the F390 parameter to the routine + */ + public void setF390(java.lang.Number value) { + setNumber(F390, value); + } + + /** + * Set the F391 parameter to the routine + */ + public void setF391(java.lang.Number value) { + setNumber(F391, value); + } + + /** + * Set the F392 parameter to the routine + */ + public void setF392(java.lang.Number value) { + setNumber(F392, value); + } + + /** + * Set the F393 parameter to the routine + */ + public void setF393(java.lang.Number value) { + setNumber(F393, value); + } + + /** + * Set the F394 parameter to the routine + */ + public void setF394(java.lang.Number value) { + setNumber(F394, value); + } + + /** + * Set the F395 parameter to the routine + */ + public void setF395(java.lang.Number value) { + setNumber(F395, value); + } + + /** + * Set the F396 parameter to the routine + */ + public void setF396(java.lang.Number value) { + setNumber(F396, value); + } + + /** + * Set the F397 parameter to the routine + */ + public void setF397(java.lang.Number value) { + setNumber(F397, value); + } + + /** + * Set the F398 parameter to the routine + */ + public void setF398(java.lang.Number value) { + setNumber(F398, value); + } + + /** + * Set the F399 parameter to the routine + */ + public void setF399(java.lang.Number value) { + setNumber(F399, value); + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/packages/library_767_package_test/LIBRARY_767_PACKAGE_TEST.java b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/packages/library_767_package_test/LIBRARY_767_PACKAGE_TEST.java new file mode 100644 index 00000000000..d4149eea113 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/packages/library_767_package_test/LIBRARY_767_PACKAGE_TEST.java @@ -0,0 +1,27 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle3.generatedclasses.packages.library_767_package_test; + +/** + * This class is generated by jOOQ. + */ +public class LIBRARY_767_PACKAGE_TEST extends org.jooq.impl.AbstractRoutine implements java.io.Serializable, java.lang.Cloneable { + + private static final long serialVersionUID = -1073637462; + + + /** + * An uncommented item + */ + public static final org.jooq.Parameter RETURN_VALUE = createParameter("RETURN_VALUE", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * Create a new routine call instance + */ + public LIBRARY_767_PACKAGE_TEST() { + super("LIBRARY_767_PACKAGE_TEST", org.jooq.test.oracle3.generatedclasses.TEST.TEST, org.jooq.test.oracle3.generatedclasses.packages.LIBRARY_767_PACKAGE_TEST.LIBRARY_767_PACKAGE_TEST, org.jooq.impl.SQLDataType.NUMERIC); + + setReturnParameter(RETURN_VALUE); + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/routines/F317.java b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/routines/F317.java new file mode 100644 index 00000000000..58cd3846831 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/routines/F317.java @@ -0,0 +1,115 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle3.generatedclasses.routines; + +/** + * This class is generated by jOOQ. + */ +public class F317 extends org.jooq.impl.AbstractRoutine implements java.lang.Cloneable { + + private static final long serialVersionUID = -942473076; + + + /** + * An uncommented item + */ + public static final org.jooq.Parameter RETURN_VALUE = createParameter("RETURN_VALUE", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter P1 = createParameter("P1", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter P2 = createParameter("P2", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter P3 = createParameter("P3", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter P4 = createParameter("P4", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * Create a new routine call instance + */ + public F317() { + super("F317", org.jooq.test.oracle3.generatedclasses.TEST.TEST, org.jooq.impl.SQLDataType.NUMERIC); + + setReturnParameter(RETURN_VALUE); + addInParameter(P1); + addInParameter(P2); + addInParameter(P3); + addInParameter(P4); + } + + /** + * Set the P1 parameter to the routine + */ + public void setP1(java.lang.Number value) { + setNumber(P1, value); + } + + /** + * Set the P1 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setP1(org.jooq.Field field) { + setNumber(P1, field); + } + + /** + * Set the P2 parameter to the routine + */ + public void setP2(java.lang.Number value) { + setNumber(P2, value); + } + + /** + * Set the P2 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setP2(org.jooq.Field field) { + setNumber(P2, field); + } + + /** + * Set the P3 parameter to the routine + */ + public void setP3(java.lang.Number value) { + setNumber(P3, value); + } + + /** + * Set the P3 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setP3(org.jooq.Field field) { + setNumber(P3, field); + } + + /** + * Set the P4 parameter to the routine + */ + public void setP4(java.lang.Number value) { + setNumber(P4, value); + } + + /** + * Set the P4 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setP4(org.jooq.Field field) { + setNumber(P4, field); + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/routines/F377.java b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/routines/F377.java new file mode 100644 index 00000000000..c4febd05a60 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/routines/F377.java @@ -0,0 +1,20 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle3.generatedclasses.routines; + +/** + * This class is generated by jOOQ. + */ +public class F377 extends org.jooq.impl.AbstractRoutine implements java.lang.Cloneable { + + private static final long serialVersionUID = 165694981; + + + /** + * Create a new routine call instance + */ + public F377() { + super("F377", org.jooq.test.oracle3.generatedclasses.TEST.TEST); + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/routines/F378.java b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/routines/F378.java new file mode 100644 index 00000000000..6c9cc365cb4 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/routines/F378.java @@ -0,0 +1,67 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle3.generatedclasses.routines; + +/** + * This class is generated by jOOQ. + */ +public class F378 extends org.jooq.impl.AbstractRoutine implements java.lang.Cloneable { + + private static final long serialVersionUID = -1410507139; + + + /** + * An uncommented item + */ + public static final org.jooq.Parameter RETURN_VALUE = createParameter("RETURN_VALUE", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter I = createParameter("I", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter IO = createParameter("IO", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter O = createParameter("O", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * Create a new routine call instance + */ + public F378() { + super("F378", org.jooq.test.oracle3.generatedclasses.TEST.TEST, org.jooq.impl.SQLDataType.NUMERIC); + + setReturnParameter(RETURN_VALUE); + addInParameter(I); + addInOutParameter(IO); + addOutParameter(O); + } + + /** + * Set the I parameter to the routine + */ + public void setI(java.lang.Number value) { + setNumber(I, value); + } + + /** + * Set the IO parameter to the routine + */ + public void setIO(java.lang.Number value) { + setNumber(IO, value); + } + + public java.math.BigDecimal getIO() { + return getValue(IO); + } + + public java.math.BigDecimal getO() { + return getValue(O); + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/routines/F691CURSOR_IN.java b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/routines/F691CURSOR_IN.java new file mode 100644 index 00000000000..57cafae4335 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/routines/F691CURSOR_IN.java @@ -0,0 +1,49 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle3.generatedclasses.routines; + +/** + * This class is generated by jOOQ. + */ +public class F691CURSOR_IN extends org.jooq.impl.AbstractRoutine implements java.lang.Cloneable { + + private static final long serialVersionUID = -810431991; + + + /** + * An uncommented item + */ + public static final org.jooq.Parameter RETURN_VALUE = createParameter("RETURN_VALUE", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter> C = createParameter("C", org.jooq.impl.SQLDataType.RESULT); + + /** + * Create a new routine call instance + */ + public F691CURSOR_IN() { + super("F691CURSOR_IN", org.jooq.test.oracle3.generatedclasses.TEST.TEST, org.jooq.impl.SQLDataType.NUMERIC); + + setReturnParameter(RETURN_VALUE); + addInParameter(C); + } + + /** + * Set the C parameter to the routine + */ + public void setC(org.jooq.Result value) { + setValue(C, value); + } + + /** + * Set the C parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setC(org.jooq.Field> field) { + setField(C, field); + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/routines/F691CURSOR_OUT.java b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/routines/F691CURSOR_OUT.java new file mode 100644 index 00000000000..3966424f800 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/routines/F691CURSOR_OUT.java @@ -0,0 +1,27 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle3.generatedclasses.routines; + +/** + * This class is generated by jOOQ. + */ +public class F691CURSOR_OUT extends org.jooq.impl.AbstractRoutine> implements java.lang.Cloneable { + + private static final long serialVersionUID = -1588742848; + + + /** + * An uncommented item + */ + public static final org.jooq.Parameter> RETURN_VALUE = createParameter("RETURN_VALUE", org.jooq.impl.SQLDataType.RESULT); + + /** + * Create a new routine call instance + */ + public F691CURSOR_OUT() { + super("F691CURSOR_OUT", org.jooq.test.oracle3.generatedclasses.TEST.TEST, org.jooq.impl.SQLDataType.RESULT); + + setReturnParameter(RETURN_VALUE); + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/routines/F_ARRAYS1.java b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/routines/F_ARRAYS1.java new file mode 100644 index 00000000000..892007f53c1 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/routines/F_ARRAYS1.java @@ -0,0 +1,49 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle3.generatedclasses.routines; + +/** + * This class is generated by jOOQ. + */ +public class F_ARRAYS1 extends org.jooq.impl.AbstractRoutine implements java.lang.Cloneable { + + private static final long serialVersionUID = -2021923534; + + + /** + * An uncommented item + */ + public static final org.jooq.Parameter RETURN_VALUE = createParameter("RETURN_VALUE", org.jooq.impl.SQLDataType.INTEGER.asArrayDataType(org.jooq.test.oracle3.generatedclasses.udt.records.U_NUMBER_ARRAY.class)); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter IN_ARRAY = createParameter("IN_ARRAY", org.jooq.impl.SQLDataType.INTEGER.asArrayDataType(org.jooq.test.oracle3.generatedclasses.udt.records.U_NUMBER_ARRAY.class)); + + /** + * Create a new routine call instance + */ + public F_ARRAYS1() { + super("F_ARRAYS1", org.jooq.test.oracle3.generatedclasses.TEST.TEST, org.jooq.impl.SQLDataType.INTEGER.asArrayDataType(org.jooq.test.oracle3.generatedclasses.udt.records.U_NUMBER_ARRAY.class)); + + setReturnParameter(RETURN_VALUE); + addInParameter(IN_ARRAY); + } + + /** + * Set the IN_ARRAY parameter to the routine + */ + public void setIN_ARRAY(org.jooq.test.oracle3.generatedclasses.udt.records.U_NUMBER_ARRAY value) { + setValue(IN_ARRAY, value); + } + + /** + * Set the IN_ARRAY parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setIN_ARRAY(org.jooq.Field field) { + setField(IN_ARRAY, field); + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/routines/F_ARRAYS2.java b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/routines/F_ARRAYS2.java new file mode 100644 index 00000000000..a92e67c06fc --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/routines/F_ARRAYS2.java @@ -0,0 +1,49 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle3.generatedclasses.routines; + +/** + * This class is generated by jOOQ. + */ +public class F_ARRAYS2 extends org.jooq.impl.AbstractRoutine implements java.lang.Cloneable { + + private static final long serialVersionUID = -1108852702; + + + /** + * An uncommented item + */ + public static final org.jooq.Parameter RETURN_VALUE = createParameter("RETURN_VALUE", org.jooq.impl.SQLDataType.BIGINT.asArrayDataType(org.jooq.test.oracle3.generatedclasses.udt.records.U_NUMBER_LONG_ARRAY.class)); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter IN_ARRAY = createParameter("IN_ARRAY", org.jooq.impl.SQLDataType.BIGINT.asArrayDataType(org.jooq.test.oracle3.generatedclasses.udt.records.U_NUMBER_LONG_ARRAY.class)); + + /** + * Create a new routine call instance + */ + public F_ARRAYS2() { + super("F_ARRAYS2", org.jooq.test.oracle3.generatedclasses.TEST.TEST, org.jooq.impl.SQLDataType.BIGINT.asArrayDataType(org.jooq.test.oracle3.generatedclasses.udt.records.U_NUMBER_LONG_ARRAY.class)); + + setReturnParameter(RETURN_VALUE); + addInParameter(IN_ARRAY); + } + + /** + * Set the IN_ARRAY parameter to the routine + */ + public void setIN_ARRAY(org.jooq.test.oracle3.generatedclasses.udt.records.U_NUMBER_LONG_ARRAY value) { + setValue(IN_ARRAY, value); + } + + /** + * Set the IN_ARRAY parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setIN_ARRAY(org.jooq.Field field) { + setField(IN_ARRAY, field); + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/routines/F_ARRAYS3.java b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/routines/F_ARRAYS3.java new file mode 100644 index 00000000000..c669ef7e044 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/routines/F_ARRAYS3.java @@ -0,0 +1,49 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle3.generatedclasses.routines; + +/** + * This class is generated by jOOQ. + */ +public class F_ARRAYS3 extends org.jooq.impl.AbstractRoutine implements java.lang.Cloneable { + + private static final long serialVersionUID = -825665113; + + + /** + * An uncommented item + */ + public static final org.jooq.Parameter RETURN_VALUE = createParameter("RETURN_VALUE", org.jooq.impl.SQLDataType.VARCHAR.asArrayDataType(org.jooq.test.oracle3.generatedclasses.udt.records.U_STRING_ARRAY.class)); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter IN_ARRAY = createParameter("IN_ARRAY", org.jooq.impl.SQLDataType.VARCHAR.asArrayDataType(org.jooq.test.oracle3.generatedclasses.udt.records.U_STRING_ARRAY.class)); + + /** + * Create a new routine call instance + */ + public F_ARRAYS3() { + super("F_ARRAYS3", org.jooq.test.oracle3.generatedclasses.TEST.TEST, org.jooq.impl.SQLDataType.VARCHAR.asArrayDataType(org.jooq.test.oracle3.generatedclasses.udt.records.U_STRING_ARRAY.class)); + + setReturnParameter(RETURN_VALUE); + addInParameter(IN_ARRAY); + } + + /** + * Set the IN_ARRAY parameter to the routine + */ + public void setIN_ARRAY(org.jooq.test.oracle3.generatedclasses.udt.records.U_STRING_ARRAY value) { + setValue(IN_ARRAY, value); + } + + /** + * Set the IN_ARRAY parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setIN_ARRAY(org.jooq.Field field) { + setField(IN_ARRAY, field); + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/routines/F_ARRAYS4.java b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/routines/F_ARRAYS4.java new file mode 100644 index 00000000000..93e43524a8d --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/routines/F_ARRAYS4.java @@ -0,0 +1,49 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle3.generatedclasses.routines; + +/** + * This class is generated by jOOQ. + */ +public class F_ARRAYS4 extends org.jooq.impl.AbstractRoutine implements java.lang.Cloneable { + + private static final long serialVersionUID = -1202953957; + + + /** + * An uncommented item + */ + public static final org.jooq.Parameter RETURN_VALUE = createParameter("RETURN_VALUE", org.jooq.test.oracle3.generatedclasses.udt.U_BOOK_TYPE.U_BOOK_TYPE.getDataType().asArrayDataType(org.jooq.test.oracle3.generatedclasses.udt.records.U_BOOK_ARRAY.class)); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter IN_ARRAY = createParameter("IN_ARRAY", org.jooq.test.oracle3.generatedclasses.udt.U_BOOK_TYPE.U_BOOK_TYPE.getDataType().asArrayDataType(org.jooq.test.oracle3.generatedclasses.udt.records.U_BOOK_ARRAY.class)); + + /** + * Create a new routine call instance + */ + public F_ARRAYS4() { + super("F_ARRAYS4", org.jooq.test.oracle3.generatedclasses.TEST.TEST, org.jooq.test.oracle3.generatedclasses.udt.U_BOOK_TYPE.U_BOOK_TYPE.getDataType().asArrayDataType(org.jooq.test.oracle3.generatedclasses.udt.records.U_BOOK_ARRAY.class)); + + setReturnParameter(RETURN_VALUE); + addInParameter(IN_ARRAY); + } + + /** + * Set the IN_ARRAY parameter to the routine + */ + public void setIN_ARRAY(org.jooq.test.oracle3.generatedclasses.udt.records.U_BOOK_ARRAY value) { + setValue(IN_ARRAY, value); + } + + /** + * Set the IN_ARRAY parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setIN_ARRAY(org.jooq.Field field) { + setField(IN_ARRAY, field); + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/routines/F_AUTHOR_EXISTS.java b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/routines/F_AUTHOR_EXISTS.java new file mode 100644 index 00000000000..e72e555306e --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/routines/F_AUTHOR_EXISTS.java @@ -0,0 +1,49 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle3.generatedclasses.routines; + +/** + * This class is generated by jOOQ. + */ +public class F_AUTHOR_EXISTS extends org.jooq.impl.AbstractRoutine implements java.lang.Cloneable { + + private static final long serialVersionUID = 2091179543; + + + /** + * An uncommented item + */ + public static final org.jooq.Parameter RETURN_VALUE = createParameter("RETURN_VALUE", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter AUTHOR_NAME = createParameter("AUTHOR_NAME", org.jooq.impl.SQLDataType.VARCHAR); + + /** + * Create a new routine call instance + */ + public F_AUTHOR_EXISTS() { + super("F_AUTHOR_EXISTS", org.jooq.test.oracle3.generatedclasses.TEST.TEST, org.jooq.impl.SQLDataType.NUMERIC); + + setReturnParameter(RETURN_VALUE); + addInParameter(AUTHOR_NAME); + } + + /** + * Set the AUTHOR_NAME parameter to the routine + */ + public void setAUTHOR_NAME(java.lang.String value) { + setValue(AUTHOR_NAME, value); + } + + /** + * Set the AUTHOR_NAME parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setAUTHOR_NAME(org.jooq.Field field) { + setField(AUTHOR_NAME, field); + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/routines/F_GET_ONE_CURSOR.java b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/routines/F_GET_ONE_CURSOR.java new file mode 100644 index 00000000000..fd312b35e8b --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/routines/F_GET_ONE_CURSOR.java @@ -0,0 +1,49 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle3.generatedclasses.routines; + +/** + * This class is generated by jOOQ. + */ +public class F_GET_ONE_CURSOR extends org.jooq.impl.AbstractRoutine> implements java.lang.Cloneable { + + private static final long serialVersionUID = -526092238; + + + /** + * An uncommented item + */ + public static final org.jooq.Parameter> RETURN_VALUE = createParameter("RETURN_VALUE", org.jooq.impl.SQLDataType.RESULT); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter BOOK_IDS = createParameter("BOOK_IDS", org.jooq.impl.SQLDataType.INTEGER.asArrayDataType(org.jooq.test.oracle3.generatedclasses.udt.records.U_NUMBER_ARRAY.class)); + + /** + * Create a new routine call instance + */ + public F_GET_ONE_CURSOR() { + super("F_GET_ONE_CURSOR", org.jooq.test.oracle3.generatedclasses.TEST.TEST, org.jooq.impl.SQLDataType.RESULT); + + setReturnParameter(RETURN_VALUE); + addInParameter(BOOK_IDS); + } + + /** + * Set the BOOK_IDS parameter to the routine + */ + public void setBOOK_IDS(org.jooq.test.oracle3.generatedclasses.udt.records.U_NUMBER_ARRAY value) { + setValue(BOOK_IDS, value); + } + + /** + * Set the BOOK_IDS parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setBOOK_IDS(org.jooq.Field field) { + setField(BOOK_IDS, field); + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/routines/F_MANY_PARAMETERS.java b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/routines/F_MANY_PARAMETERS.java new file mode 100644 index 00000000000..e348b051a97 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/routines/F_MANY_PARAMETERS.java @@ -0,0 +1,8827 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle3.generatedclasses.routines; + +/** + * This class is generated by jOOQ. + */ +public class F_MANY_PARAMETERS extends org.jooq.impl.AbstractRoutine implements java.lang.Cloneable { + + private static final long serialVersionUID = -1161000816; + + + /** + * An uncommented item + */ + public static final org.jooq.Parameter RETURN_VALUE = createParameter("RETURN_VALUE", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F000 = createParameter("F000", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F001 = createParameter("F001", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F002 = createParameter("F002", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F003 = createParameter("F003", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F004 = createParameter("F004", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F005 = createParameter("F005", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F006 = createParameter("F006", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F007 = createParameter("F007", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F008 = createParameter("F008", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F009 = createParameter("F009", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F010 = createParameter("F010", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F011 = createParameter("F011", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F012 = createParameter("F012", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F013 = createParameter("F013", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F014 = createParameter("F014", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F015 = createParameter("F015", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F016 = createParameter("F016", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F017 = createParameter("F017", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F018 = createParameter("F018", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F019 = createParameter("F019", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F020 = createParameter("F020", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F021 = createParameter("F021", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F022 = createParameter("F022", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F023 = createParameter("F023", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F024 = createParameter("F024", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F025 = createParameter("F025", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F026 = createParameter("F026", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F027 = createParameter("F027", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F028 = createParameter("F028", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F029 = createParameter("F029", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F030 = createParameter("F030", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F031 = createParameter("F031", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F032 = createParameter("F032", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F033 = createParameter("F033", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F034 = createParameter("F034", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F035 = createParameter("F035", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F036 = createParameter("F036", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F037 = createParameter("F037", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F038 = createParameter("F038", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F039 = createParameter("F039", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F040 = createParameter("F040", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F041 = createParameter("F041", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F042 = createParameter("F042", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F043 = createParameter("F043", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F044 = createParameter("F044", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F045 = createParameter("F045", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F046 = createParameter("F046", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F047 = createParameter("F047", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F048 = createParameter("F048", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F049 = createParameter("F049", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F050 = createParameter("F050", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F051 = createParameter("F051", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F052 = createParameter("F052", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F053 = createParameter("F053", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F054 = createParameter("F054", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F055 = createParameter("F055", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F056 = createParameter("F056", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F057 = createParameter("F057", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F058 = createParameter("F058", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F059 = createParameter("F059", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F060 = createParameter("F060", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F061 = createParameter("F061", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F062 = createParameter("F062", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F063 = createParameter("F063", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F064 = createParameter("F064", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F065 = createParameter("F065", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F066 = createParameter("F066", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F067 = createParameter("F067", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F068 = createParameter("F068", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F069 = createParameter("F069", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F070 = createParameter("F070", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F071 = createParameter("F071", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F072 = createParameter("F072", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F073 = createParameter("F073", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F074 = createParameter("F074", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F075 = createParameter("F075", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F076 = createParameter("F076", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F077 = createParameter("F077", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F078 = createParameter("F078", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F079 = createParameter("F079", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F080 = createParameter("F080", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F081 = createParameter("F081", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F082 = createParameter("F082", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F083 = createParameter("F083", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F084 = createParameter("F084", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F085 = createParameter("F085", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F086 = createParameter("F086", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F087 = createParameter("F087", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F088 = createParameter("F088", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F089 = createParameter("F089", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F090 = createParameter("F090", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F091 = createParameter("F091", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F092 = createParameter("F092", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F093 = createParameter("F093", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F094 = createParameter("F094", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F095 = createParameter("F095", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F096 = createParameter("F096", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F097 = createParameter("F097", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F098 = createParameter("F098", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F099 = createParameter("F099", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F100 = createParameter("F100", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F101 = createParameter("F101", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F102 = createParameter("F102", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F103 = createParameter("F103", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F104 = createParameter("F104", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F105 = createParameter("F105", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F106 = createParameter("F106", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F107 = createParameter("F107", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F108 = createParameter("F108", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F109 = createParameter("F109", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F110 = createParameter("F110", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F111 = createParameter("F111", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F112 = createParameter("F112", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F113 = createParameter("F113", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F114 = createParameter("F114", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F115 = createParameter("F115", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F116 = createParameter("F116", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F117 = createParameter("F117", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F118 = createParameter("F118", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F119 = createParameter("F119", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F120 = createParameter("F120", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F121 = createParameter("F121", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F122 = createParameter("F122", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F123 = createParameter("F123", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F124 = createParameter("F124", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F125 = createParameter("F125", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F126 = createParameter("F126", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F127 = createParameter("F127", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F128 = createParameter("F128", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F129 = createParameter("F129", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F130 = createParameter("F130", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F131 = createParameter("F131", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F132 = createParameter("F132", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F133 = createParameter("F133", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F134 = createParameter("F134", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F135 = createParameter("F135", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F136 = createParameter("F136", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F137 = createParameter("F137", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F138 = createParameter("F138", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F139 = createParameter("F139", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F140 = createParameter("F140", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F141 = createParameter("F141", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F142 = createParameter("F142", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F143 = createParameter("F143", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F144 = createParameter("F144", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F145 = createParameter("F145", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F146 = createParameter("F146", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F147 = createParameter("F147", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F148 = createParameter("F148", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F149 = createParameter("F149", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F150 = createParameter("F150", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F151 = createParameter("F151", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F152 = createParameter("F152", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F153 = createParameter("F153", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F154 = createParameter("F154", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F155 = createParameter("F155", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F156 = createParameter("F156", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F157 = createParameter("F157", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F158 = createParameter("F158", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F159 = createParameter("F159", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F160 = createParameter("F160", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F161 = createParameter("F161", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F162 = createParameter("F162", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F163 = createParameter("F163", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F164 = createParameter("F164", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F165 = createParameter("F165", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F166 = createParameter("F166", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F167 = createParameter("F167", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F168 = createParameter("F168", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F169 = createParameter("F169", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F170 = createParameter("F170", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F171 = createParameter("F171", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F172 = createParameter("F172", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F173 = createParameter("F173", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F174 = createParameter("F174", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F175 = createParameter("F175", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F176 = createParameter("F176", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F177 = createParameter("F177", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F178 = createParameter("F178", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F179 = createParameter("F179", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F180 = createParameter("F180", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F181 = createParameter("F181", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F182 = createParameter("F182", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F183 = createParameter("F183", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F184 = createParameter("F184", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F185 = createParameter("F185", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F186 = createParameter("F186", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F187 = createParameter("F187", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F188 = createParameter("F188", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F189 = createParameter("F189", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F190 = createParameter("F190", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F191 = createParameter("F191", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F192 = createParameter("F192", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F193 = createParameter("F193", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F194 = createParameter("F194", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F195 = createParameter("F195", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F196 = createParameter("F196", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F197 = createParameter("F197", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F198 = createParameter("F198", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F199 = createParameter("F199", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F200 = createParameter("F200", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F201 = createParameter("F201", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F202 = createParameter("F202", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F203 = createParameter("F203", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F204 = createParameter("F204", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F205 = createParameter("F205", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F206 = createParameter("F206", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F207 = createParameter("F207", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F208 = createParameter("F208", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F209 = createParameter("F209", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F210 = createParameter("F210", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F211 = createParameter("F211", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F212 = createParameter("F212", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F213 = createParameter("F213", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F214 = createParameter("F214", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F215 = createParameter("F215", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F216 = createParameter("F216", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F217 = createParameter("F217", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F218 = createParameter("F218", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F219 = createParameter("F219", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F220 = createParameter("F220", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F221 = createParameter("F221", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F222 = createParameter("F222", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F223 = createParameter("F223", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F224 = createParameter("F224", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F225 = createParameter("F225", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F226 = createParameter("F226", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F227 = createParameter("F227", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F228 = createParameter("F228", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F229 = createParameter("F229", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F230 = createParameter("F230", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F231 = createParameter("F231", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F232 = createParameter("F232", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F233 = createParameter("F233", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F234 = createParameter("F234", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F235 = createParameter("F235", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F236 = createParameter("F236", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F237 = createParameter("F237", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F238 = createParameter("F238", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F239 = createParameter("F239", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F240 = createParameter("F240", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F241 = createParameter("F241", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F242 = createParameter("F242", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F243 = createParameter("F243", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F244 = createParameter("F244", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F245 = createParameter("F245", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F246 = createParameter("F246", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F247 = createParameter("F247", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F248 = createParameter("F248", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F249 = createParameter("F249", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F250 = createParameter("F250", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F251 = createParameter("F251", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F252 = createParameter("F252", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F253 = createParameter("F253", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F254 = createParameter("F254", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F255 = createParameter("F255", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F256 = createParameter("F256", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F257 = createParameter("F257", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F258 = createParameter("F258", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F259 = createParameter("F259", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F260 = createParameter("F260", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F261 = createParameter("F261", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F262 = createParameter("F262", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F263 = createParameter("F263", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F264 = createParameter("F264", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F265 = createParameter("F265", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F266 = createParameter("F266", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F267 = createParameter("F267", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F268 = createParameter("F268", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F269 = createParameter("F269", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F270 = createParameter("F270", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F271 = createParameter("F271", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F272 = createParameter("F272", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F273 = createParameter("F273", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F274 = createParameter("F274", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F275 = createParameter("F275", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F276 = createParameter("F276", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F277 = createParameter("F277", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F278 = createParameter("F278", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F279 = createParameter("F279", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F280 = createParameter("F280", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F281 = createParameter("F281", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F282 = createParameter("F282", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F283 = createParameter("F283", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F284 = createParameter("F284", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F285 = createParameter("F285", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F286 = createParameter("F286", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F287 = createParameter("F287", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F288 = createParameter("F288", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F289 = createParameter("F289", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F290 = createParameter("F290", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F291 = createParameter("F291", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F292 = createParameter("F292", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F293 = createParameter("F293", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F294 = createParameter("F294", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F295 = createParameter("F295", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F296 = createParameter("F296", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F297 = createParameter("F297", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F298 = createParameter("F298", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F299 = createParameter("F299", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F300 = createParameter("F300", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F301 = createParameter("F301", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F302 = createParameter("F302", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F303 = createParameter("F303", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F304 = createParameter("F304", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F305 = createParameter("F305", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F306 = createParameter("F306", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F307 = createParameter("F307", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F308 = createParameter("F308", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F309 = createParameter("F309", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F310 = createParameter("F310", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F311 = createParameter("F311", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F312 = createParameter("F312", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F313 = createParameter("F313", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F314 = createParameter("F314", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F315 = createParameter("F315", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F316 = createParameter("F316", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F317 = createParameter("F317", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F318 = createParameter("F318", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F319 = createParameter("F319", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F320 = createParameter("F320", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F321 = createParameter("F321", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F322 = createParameter("F322", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F323 = createParameter("F323", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F324 = createParameter("F324", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F325 = createParameter("F325", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F326 = createParameter("F326", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F327 = createParameter("F327", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F328 = createParameter("F328", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F329 = createParameter("F329", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F330 = createParameter("F330", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F331 = createParameter("F331", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F332 = createParameter("F332", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F333 = createParameter("F333", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F334 = createParameter("F334", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F335 = createParameter("F335", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F336 = createParameter("F336", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F337 = createParameter("F337", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F338 = createParameter("F338", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F339 = createParameter("F339", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F340 = createParameter("F340", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F341 = createParameter("F341", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F342 = createParameter("F342", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F343 = createParameter("F343", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F344 = createParameter("F344", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F345 = createParameter("F345", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F346 = createParameter("F346", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F347 = createParameter("F347", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F348 = createParameter("F348", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F349 = createParameter("F349", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F350 = createParameter("F350", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F351 = createParameter("F351", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F352 = createParameter("F352", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F353 = createParameter("F353", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F354 = createParameter("F354", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F355 = createParameter("F355", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F356 = createParameter("F356", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F357 = createParameter("F357", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F358 = createParameter("F358", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F359 = createParameter("F359", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F360 = createParameter("F360", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F361 = createParameter("F361", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F362 = createParameter("F362", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F363 = createParameter("F363", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F364 = createParameter("F364", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F365 = createParameter("F365", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F366 = createParameter("F366", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F367 = createParameter("F367", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F368 = createParameter("F368", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F369 = createParameter("F369", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F370 = createParameter("F370", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F371 = createParameter("F371", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F372 = createParameter("F372", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F373 = createParameter("F373", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F374 = createParameter("F374", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F375 = createParameter("F375", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F376 = createParameter("F376", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F377 = createParameter("F377", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F378 = createParameter("F378", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F379 = createParameter("F379", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F380 = createParameter("F380", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F381 = createParameter("F381", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F382 = createParameter("F382", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F383 = createParameter("F383", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F384 = createParameter("F384", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F385 = createParameter("F385", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F386 = createParameter("F386", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F387 = createParameter("F387", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F388 = createParameter("F388", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F389 = createParameter("F389", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F390 = createParameter("F390", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F391 = createParameter("F391", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F392 = createParameter("F392", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F393 = createParameter("F393", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F394 = createParameter("F394", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F395 = createParameter("F395", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F396 = createParameter("F396", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F397 = createParameter("F397", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F398 = createParameter("F398", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F399 = createParameter("F399", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * Create a new routine call instance + */ + public F_MANY_PARAMETERS() { + super("F_MANY_PARAMETERS", org.jooq.test.oracle3.generatedclasses.TEST.TEST, org.jooq.impl.SQLDataType.NUMERIC); + + setReturnParameter(RETURN_VALUE); + addInParameter(F000); + addInParameter(F001); + addInParameter(F002); + addInParameter(F003); + addInParameter(F004); + addInParameter(F005); + addInParameter(F006); + addInParameter(F007); + addInParameter(F008); + addInParameter(F009); + addInParameter(F010); + addInParameter(F011); + addInParameter(F012); + addInParameter(F013); + addInParameter(F014); + addInParameter(F015); + addInParameter(F016); + addInParameter(F017); + addInParameter(F018); + addInParameter(F019); + addInParameter(F020); + addInParameter(F021); + addInParameter(F022); + addInParameter(F023); + addInParameter(F024); + addInParameter(F025); + addInParameter(F026); + addInParameter(F027); + addInParameter(F028); + addInParameter(F029); + addInParameter(F030); + addInParameter(F031); + addInParameter(F032); + addInParameter(F033); + addInParameter(F034); + addInParameter(F035); + addInParameter(F036); + addInParameter(F037); + addInParameter(F038); + addInParameter(F039); + addInParameter(F040); + addInParameter(F041); + addInParameter(F042); + addInParameter(F043); + addInParameter(F044); + addInParameter(F045); + addInParameter(F046); + addInParameter(F047); + addInParameter(F048); + addInParameter(F049); + addInParameter(F050); + addInParameter(F051); + addInParameter(F052); + addInParameter(F053); + addInParameter(F054); + addInParameter(F055); + addInParameter(F056); + addInParameter(F057); + addInParameter(F058); + addInParameter(F059); + addInParameter(F060); + addInParameter(F061); + addInParameter(F062); + addInParameter(F063); + addInParameter(F064); + addInParameter(F065); + addInParameter(F066); + addInParameter(F067); + addInParameter(F068); + addInParameter(F069); + addInParameter(F070); + addInParameter(F071); + addInParameter(F072); + addInParameter(F073); + addInParameter(F074); + addInParameter(F075); + addInParameter(F076); + addInParameter(F077); + addInParameter(F078); + addInParameter(F079); + addInParameter(F080); + addInParameter(F081); + addInParameter(F082); + addInParameter(F083); + addInParameter(F084); + addInParameter(F085); + addInParameter(F086); + addInParameter(F087); + addInParameter(F088); + addInParameter(F089); + addInParameter(F090); + addInParameter(F091); + addInParameter(F092); + addInParameter(F093); + addInParameter(F094); + addInParameter(F095); + addInParameter(F096); + addInParameter(F097); + addInParameter(F098); + addInParameter(F099); + addInParameter(F100); + addInParameter(F101); + addInParameter(F102); + addInParameter(F103); + addInParameter(F104); + addInParameter(F105); + addInParameter(F106); + addInParameter(F107); + addInParameter(F108); + addInParameter(F109); + addInParameter(F110); + addInParameter(F111); + addInParameter(F112); + addInParameter(F113); + addInParameter(F114); + addInParameter(F115); + addInParameter(F116); + addInParameter(F117); + addInParameter(F118); + addInParameter(F119); + addInParameter(F120); + addInParameter(F121); + addInParameter(F122); + addInParameter(F123); + addInParameter(F124); + addInParameter(F125); + addInParameter(F126); + addInParameter(F127); + addInParameter(F128); + addInParameter(F129); + addInParameter(F130); + addInParameter(F131); + addInParameter(F132); + addInParameter(F133); + addInParameter(F134); + addInParameter(F135); + addInParameter(F136); + addInParameter(F137); + addInParameter(F138); + addInParameter(F139); + addInParameter(F140); + addInParameter(F141); + addInParameter(F142); + addInParameter(F143); + addInParameter(F144); + addInParameter(F145); + addInParameter(F146); + addInParameter(F147); + addInParameter(F148); + addInParameter(F149); + addInParameter(F150); + addInParameter(F151); + addInParameter(F152); + addInParameter(F153); + addInParameter(F154); + addInParameter(F155); + addInParameter(F156); + addInParameter(F157); + addInParameter(F158); + addInParameter(F159); + addInParameter(F160); + addInParameter(F161); + addInParameter(F162); + addInParameter(F163); + addInParameter(F164); + addInParameter(F165); + addInParameter(F166); + addInParameter(F167); + addInParameter(F168); + addInParameter(F169); + addInParameter(F170); + addInParameter(F171); + addInParameter(F172); + addInParameter(F173); + addInParameter(F174); + addInParameter(F175); + addInParameter(F176); + addInParameter(F177); + addInParameter(F178); + addInParameter(F179); + addInParameter(F180); + addInParameter(F181); + addInParameter(F182); + addInParameter(F183); + addInParameter(F184); + addInParameter(F185); + addInParameter(F186); + addInParameter(F187); + addInParameter(F188); + addInParameter(F189); + addInParameter(F190); + addInParameter(F191); + addInParameter(F192); + addInParameter(F193); + addInParameter(F194); + addInParameter(F195); + addInParameter(F196); + addInParameter(F197); + addInParameter(F198); + addInParameter(F199); + addInParameter(F200); + addInParameter(F201); + addInParameter(F202); + addInParameter(F203); + addInParameter(F204); + addInParameter(F205); + addInParameter(F206); + addInParameter(F207); + addInParameter(F208); + addInParameter(F209); + addInParameter(F210); + addInParameter(F211); + addInParameter(F212); + addInParameter(F213); + addInParameter(F214); + addInParameter(F215); + addInParameter(F216); + addInParameter(F217); + addInParameter(F218); + addInParameter(F219); + addInParameter(F220); + addInParameter(F221); + addInParameter(F222); + addInParameter(F223); + addInParameter(F224); + addInParameter(F225); + addInParameter(F226); + addInParameter(F227); + addInParameter(F228); + addInParameter(F229); + addInParameter(F230); + addInParameter(F231); + addInParameter(F232); + addInParameter(F233); + addInParameter(F234); + addInParameter(F235); + addInParameter(F236); + addInParameter(F237); + addInParameter(F238); + addInParameter(F239); + addInParameter(F240); + addInParameter(F241); + addInParameter(F242); + addInParameter(F243); + addInParameter(F244); + addInParameter(F245); + addInParameter(F246); + addInParameter(F247); + addInParameter(F248); + addInParameter(F249); + addInParameter(F250); + addInParameter(F251); + addInParameter(F252); + addInParameter(F253); + addInParameter(F254); + addInParameter(F255); + addInParameter(F256); + addInParameter(F257); + addInParameter(F258); + addInParameter(F259); + addInParameter(F260); + addInParameter(F261); + addInParameter(F262); + addInParameter(F263); + addInParameter(F264); + addInParameter(F265); + addInParameter(F266); + addInParameter(F267); + addInParameter(F268); + addInParameter(F269); + addInParameter(F270); + addInParameter(F271); + addInParameter(F272); + addInParameter(F273); + addInParameter(F274); + addInParameter(F275); + addInParameter(F276); + addInParameter(F277); + addInParameter(F278); + addInParameter(F279); + addInParameter(F280); + addInParameter(F281); + addInParameter(F282); + addInParameter(F283); + addInParameter(F284); + addInParameter(F285); + addInParameter(F286); + addInParameter(F287); + addInParameter(F288); + addInParameter(F289); + addInParameter(F290); + addInParameter(F291); + addInParameter(F292); + addInParameter(F293); + addInParameter(F294); + addInParameter(F295); + addInParameter(F296); + addInParameter(F297); + addInParameter(F298); + addInParameter(F299); + addInParameter(F300); + addInParameter(F301); + addInParameter(F302); + addInParameter(F303); + addInParameter(F304); + addInParameter(F305); + addInParameter(F306); + addInParameter(F307); + addInParameter(F308); + addInParameter(F309); + addInParameter(F310); + addInParameter(F311); + addInParameter(F312); + addInParameter(F313); + addInParameter(F314); + addInParameter(F315); + addInParameter(F316); + addInParameter(F317); + addInParameter(F318); + addInParameter(F319); + addInParameter(F320); + addInParameter(F321); + addInParameter(F322); + addInParameter(F323); + addInParameter(F324); + addInParameter(F325); + addInParameter(F326); + addInParameter(F327); + addInParameter(F328); + addInParameter(F329); + addInParameter(F330); + addInParameter(F331); + addInParameter(F332); + addInParameter(F333); + addInParameter(F334); + addInParameter(F335); + addInParameter(F336); + addInParameter(F337); + addInParameter(F338); + addInParameter(F339); + addInParameter(F340); + addInParameter(F341); + addInParameter(F342); + addInParameter(F343); + addInParameter(F344); + addInParameter(F345); + addInParameter(F346); + addInParameter(F347); + addInParameter(F348); + addInParameter(F349); + addInParameter(F350); + addInParameter(F351); + addInParameter(F352); + addInParameter(F353); + addInParameter(F354); + addInParameter(F355); + addInParameter(F356); + addInParameter(F357); + addInParameter(F358); + addInParameter(F359); + addInParameter(F360); + addInParameter(F361); + addInParameter(F362); + addInParameter(F363); + addInParameter(F364); + addInParameter(F365); + addInParameter(F366); + addInParameter(F367); + addInParameter(F368); + addInParameter(F369); + addInParameter(F370); + addInParameter(F371); + addInParameter(F372); + addInParameter(F373); + addInParameter(F374); + addInParameter(F375); + addInParameter(F376); + addInParameter(F377); + addInParameter(F378); + addInParameter(F379); + addInParameter(F380); + addInParameter(F381); + addInParameter(F382); + addInParameter(F383); + addInParameter(F384); + addInParameter(F385); + addInParameter(F386); + addInParameter(F387); + addInParameter(F388); + addInParameter(F389); + addInParameter(F390); + addInParameter(F391); + addInParameter(F392); + addInParameter(F393); + addInParameter(F394); + addInParameter(F395); + addInParameter(F396); + addInParameter(F397); + addInParameter(F398); + addInParameter(F399); + } + + /** + * Set the F000 parameter to the routine + */ + public void setF000(java.lang.Number value) { + setNumber(F000, value); + } + + /** + * Set the F000 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF000(org.jooq.Field field) { + setNumber(F000, field); + } + + /** + * Set the F001 parameter to the routine + */ + public void setF001(java.lang.Number value) { + setNumber(F001, value); + } + + /** + * Set the F001 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF001(org.jooq.Field field) { + setNumber(F001, field); + } + + /** + * Set the F002 parameter to the routine + */ + public void setF002(java.lang.Number value) { + setNumber(F002, value); + } + + /** + * Set the F002 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF002(org.jooq.Field field) { + setNumber(F002, field); + } + + /** + * Set the F003 parameter to the routine + */ + public void setF003(java.lang.Number value) { + setNumber(F003, value); + } + + /** + * Set the F003 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF003(org.jooq.Field field) { + setNumber(F003, field); + } + + /** + * Set the F004 parameter to the routine + */ + public void setF004(java.lang.Number value) { + setNumber(F004, value); + } + + /** + * Set the F004 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF004(org.jooq.Field field) { + setNumber(F004, field); + } + + /** + * Set the F005 parameter to the routine + */ + public void setF005(java.lang.Number value) { + setNumber(F005, value); + } + + /** + * Set the F005 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF005(org.jooq.Field field) { + setNumber(F005, field); + } + + /** + * Set the F006 parameter to the routine + */ + public void setF006(java.lang.Number value) { + setNumber(F006, value); + } + + /** + * Set the F006 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF006(org.jooq.Field field) { + setNumber(F006, field); + } + + /** + * Set the F007 parameter to the routine + */ + public void setF007(java.lang.Number value) { + setNumber(F007, value); + } + + /** + * Set the F007 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF007(org.jooq.Field field) { + setNumber(F007, field); + } + + /** + * Set the F008 parameter to the routine + */ + public void setF008(java.lang.Number value) { + setNumber(F008, value); + } + + /** + * Set the F008 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF008(org.jooq.Field field) { + setNumber(F008, field); + } + + /** + * Set the F009 parameter to the routine + */ + public void setF009(java.lang.Number value) { + setNumber(F009, value); + } + + /** + * Set the F009 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF009(org.jooq.Field field) { + setNumber(F009, field); + } + + /** + * Set the F010 parameter to the routine + */ + public void setF010(java.lang.Number value) { + setNumber(F010, value); + } + + /** + * Set the F010 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF010(org.jooq.Field field) { + setNumber(F010, field); + } + + /** + * Set the F011 parameter to the routine + */ + public void setF011(java.lang.Number value) { + setNumber(F011, value); + } + + /** + * Set the F011 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF011(org.jooq.Field field) { + setNumber(F011, field); + } + + /** + * Set the F012 parameter to the routine + */ + public void setF012(java.lang.Number value) { + setNumber(F012, value); + } + + /** + * Set the F012 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF012(org.jooq.Field field) { + setNumber(F012, field); + } + + /** + * Set the F013 parameter to the routine + */ + public void setF013(java.lang.Number value) { + setNumber(F013, value); + } + + /** + * Set the F013 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF013(org.jooq.Field field) { + setNumber(F013, field); + } + + /** + * Set the F014 parameter to the routine + */ + public void setF014(java.lang.Number value) { + setNumber(F014, value); + } + + /** + * Set the F014 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF014(org.jooq.Field field) { + setNumber(F014, field); + } + + /** + * Set the F015 parameter to the routine + */ + public void setF015(java.lang.Number value) { + setNumber(F015, value); + } + + /** + * Set the F015 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF015(org.jooq.Field field) { + setNumber(F015, field); + } + + /** + * Set the F016 parameter to the routine + */ + public void setF016(java.lang.Number value) { + setNumber(F016, value); + } + + /** + * Set the F016 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF016(org.jooq.Field field) { + setNumber(F016, field); + } + + /** + * Set the F017 parameter to the routine + */ + public void setF017(java.lang.Number value) { + setNumber(F017, value); + } + + /** + * Set the F017 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF017(org.jooq.Field field) { + setNumber(F017, field); + } + + /** + * Set the F018 parameter to the routine + */ + public void setF018(java.lang.Number value) { + setNumber(F018, value); + } + + /** + * Set the F018 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF018(org.jooq.Field field) { + setNumber(F018, field); + } + + /** + * Set the F019 parameter to the routine + */ + public void setF019(java.lang.Number value) { + setNumber(F019, value); + } + + /** + * Set the F019 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF019(org.jooq.Field field) { + setNumber(F019, field); + } + + /** + * Set the F020 parameter to the routine + */ + public void setF020(java.lang.Number value) { + setNumber(F020, value); + } + + /** + * Set the F020 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF020(org.jooq.Field field) { + setNumber(F020, field); + } + + /** + * Set the F021 parameter to the routine + */ + public void setF021(java.lang.Number value) { + setNumber(F021, value); + } + + /** + * Set the F021 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF021(org.jooq.Field field) { + setNumber(F021, field); + } + + /** + * Set the F022 parameter to the routine + */ + public void setF022(java.lang.Number value) { + setNumber(F022, value); + } + + /** + * Set the F022 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF022(org.jooq.Field field) { + setNumber(F022, field); + } + + /** + * Set the F023 parameter to the routine + */ + public void setF023(java.lang.Number value) { + setNumber(F023, value); + } + + /** + * Set the F023 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF023(org.jooq.Field field) { + setNumber(F023, field); + } + + /** + * Set the F024 parameter to the routine + */ + public void setF024(java.lang.Number value) { + setNumber(F024, value); + } + + /** + * Set the F024 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF024(org.jooq.Field field) { + setNumber(F024, field); + } + + /** + * Set the F025 parameter to the routine + */ + public void setF025(java.lang.Number value) { + setNumber(F025, value); + } + + /** + * Set the F025 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF025(org.jooq.Field field) { + setNumber(F025, field); + } + + /** + * Set the F026 parameter to the routine + */ + public void setF026(java.lang.Number value) { + setNumber(F026, value); + } + + /** + * Set the F026 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF026(org.jooq.Field field) { + setNumber(F026, field); + } + + /** + * Set the F027 parameter to the routine + */ + public void setF027(java.lang.Number value) { + setNumber(F027, value); + } + + /** + * Set the F027 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF027(org.jooq.Field field) { + setNumber(F027, field); + } + + /** + * Set the F028 parameter to the routine + */ + public void setF028(java.lang.Number value) { + setNumber(F028, value); + } + + /** + * Set the F028 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF028(org.jooq.Field field) { + setNumber(F028, field); + } + + /** + * Set the F029 parameter to the routine + */ + public void setF029(java.lang.Number value) { + setNumber(F029, value); + } + + /** + * Set the F029 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF029(org.jooq.Field field) { + setNumber(F029, field); + } + + /** + * Set the F030 parameter to the routine + */ + public void setF030(java.lang.Number value) { + setNumber(F030, value); + } + + /** + * Set the F030 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF030(org.jooq.Field field) { + setNumber(F030, field); + } + + /** + * Set the F031 parameter to the routine + */ + public void setF031(java.lang.Number value) { + setNumber(F031, value); + } + + /** + * Set the F031 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF031(org.jooq.Field field) { + setNumber(F031, field); + } + + /** + * Set the F032 parameter to the routine + */ + public void setF032(java.lang.Number value) { + setNumber(F032, value); + } + + /** + * Set the F032 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF032(org.jooq.Field field) { + setNumber(F032, field); + } + + /** + * Set the F033 parameter to the routine + */ + public void setF033(java.lang.Number value) { + setNumber(F033, value); + } + + /** + * Set the F033 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF033(org.jooq.Field field) { + setNumber(F033, field); + } + + /** + * Set the F034 parameter to the routine + */ + public void setF034(java.lang.Number value) { + setNumber(F034, value); + } + + /** + * Set the F034 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF034(org.jooq.Field field) { + setNumber(F034, field); + } + + /** + * Set the F035 parameter to the routine + */ + public void setF035(java.lang.Number value) { + setNumber(F035, value); + } + + /** + * Set the F035 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF035(org.jooq.Field field) { + setNumber(F035, field); + } + + /** + * Set the F036 parameter to the routine + */ + public void setF036(java.lang.Number value) { + setNumber(F036, value); + } + + /** + * Set the F036 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF036(org.jooq.Field field) { + setNumber(F036, field); + } + + /** + * Set the F037 parameter to the routine + */ + public void setF037(java.lang.Number value) { + setNumber(F037, value); + } + + /** + * Set the F037 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF037(org.jooq.Field field) { + setNumber(F037, field); + } + + /** + * Set the F038 parameter to the routine + */ + public void setF038(java.lang.Number value) { + setNumber(F038, value); + } + + /** + * Set the F038 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF038(org.jooq.Field field) { + setNumber(F038, field); + } + + /** + * Set the F039 parameter to the routine + */ + public void setF039(java.lang.Number value) { + setNumber(F039, value); + } + + /** + * Set the F039 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF039(org.jooq.Field field) { + setNumber(F039, field); + } + + /** + * Set the F040 parameter to the routine + */ + public void setF040(java.lang.Number value) { + setNumber(F040, value); + } + + /** + * Set the F040 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF040(org.jooq.Field field) { + setNumber(F040, field); + } + + /** + * Set the F041 parameter to the routine + */ + public void setF041(java.lang.Number value) { + setNumber(F041, value); + } + + /** + * Set the F041 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF041(org.jooq.Field field) { + setNumber(F041, field); + } + + /** + * Set the F042 parameter to the routine + */ + public void setF042(java.lang.Number value) { + setNumber(F042, value); + } + + /** + * Set the F042 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF042(org.jooq.Field field) { + setNumber(F042, field); + } + + /** + * Set the F043 parameter to the routine + */ + public void setF043(java.lang.Number value) { + setNumber(F043, value); + } + + /** + * Set the F043 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF043(org.jooq.Field field) { + setNumber(F043, field); + } + + /** + * Set the F044 parameter to the routine + */ + public void setF044(java.lang.Number value) { + setNumber(F044, value); + } + + /** + * Set the F044 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF044(org.jooq.Field field) { + setNumber(F044, field); + } + + /** + * Set the F045 parameter to the routine + */ + public void setF045(java.lang.Number value) { + setNumber(F045, value); + } + + /** + * Set the F045 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF045(org.jooq.Field field) { + setNumber(F045, field); + } + + /** + * Set the F046 parameter to the routine + */ + public void setF046(java.lang.Number value) { + setNumber(F046, value); + } + + /** + * Set the F046 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF046(org.jooq.Field field) { + setNumber(F046, field); + } + + /** + * Set the F047 parameter to the routine + */ + public void setF047(java.lang.Number value) { + setNumber(F047, value); + } + + /** + * Set the F047 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF047(org.jooq.Field field) { + setNumber(F047, field); + } + + /** + * Set the F048 parameter to the routine + */ + public void setF048(java.lang.Number value) { + setNumber(F048, value); + } + + /** + * Set the F048 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF048(org.jooq.Field field) { + setNumber(F048, field); + } + + /** + * Set the F049 parameter to the routine + */ + public void setF049(java.lang.Number value) { + setNumber(F049, value); + } + + /** + * Set the F049 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF049(org.jooq.Field field) { + setNumber(F049, field); + } + + /** + * Set the F050 parameter to the routine + */ + public void setF050(java.lang.Number value) { + setNumber(F050, value); + } + + /** + * Set the F050 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF050(org.jooq.Field field) { + setNumber(F050, field); + } + + /** + * Set the F051 parameter to the routine + */ + public void setF051(java.lang.Number value) { + setNumber(F051, value); + } + + /** + * Set the F051 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF051(org.jooq.Field field) { + setNumber(F051, field); + } + + /** + * Set the F052 parameter to the routine + */ + public void setF052(java.lang.Number value) { + setNumber(F052, value); + } + + /** + * Set the F052 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF052(org.jooq.Field field) { + setNumber(F052, field); + } + + /** + * Set the F053 parameter to the routine + */ + public void setF053(java.lang.Number value) { + setNumber(F053, value); + } + + /** + * Set the F053 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF053(org.jooq.Field field) { + setNumber(F053, field); + } + + /** + * Set the F054 parameter to the routine + */ + public void setF054(java.lang.Number value) { + setNumber(F054, value); + } + + /** + * Set the F054 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF054(org.jooq.Field field) { + setNumber(F054, field); + } + + /** + * Set the F055 parameter to the routine + */ + public void setF055(java.lang.Number value) { + setNumber(F055, value); + } + + /** + * Set the F055 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF055(org.jooq.Field field) { + setNumber(F055, field); + } + + /** + * Set the F056 parameter to the routine + */ + public void setF056(java.lang.Number value) { + setNumber(F056, value); + } + + /** + * Set the F056 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF056(org.jooq.Field field) { + setNumber(F056, field); + } + + /** + * Set the F057 parameter to the routine + */ + public void setF057(java.lang.Number value) { + setNumber(F057, value); + } + + /** + * Set the F057 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF057(org.jooq.Field field) { + setNumber(F057, field); + } + + /** + * Set the F058 parameter to the routine + */ + public void setF058(java.lang.Number value) { + setNumber(F058, value); + } + + /** + * Set the F058 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF058(org.jooq.Field field) { + setNumber(F058, field); + } + + /** + * Set the F059 parameter to the routine + */ + public void setF059(java.lang.Number value) { + setNumber(F059, value); + } + + /** + * Set the F059 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF059(org.jooq.Field field) { + setNumber(F059, field); + } + + /** + * Set the F060 parameter to the routine + */ + public void setF060(java.lang.Number value) { + setNumber(F060, value); + } + + /** + * Set the F060 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF060(org.jooq.Field field) { + setNumber(F060, field); + } + + /** + * Set the F061 parameter to the routine + */ + public void setF061(java.lang.Number value) { + setNumber(F061, value); + } + + /** + * Set the F061 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF061(org.jooq.Field field) { + setNumber(F061, field); + } + + /** + * Set the F062 parameter to the routine + */ + public void setF062(java.lang.Number value) { + setNumber(F062, value); + } + + /** + * Set the F062 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF062(org.jooq.Field field) { + setNumber(F062, field); + } + + /** + * Set the F063 parameter to the routine + */ + public void setF063(java.lang.Number value) { + setNumber(F063, value); + } + + /** + * Set the F063 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF063(org.jooq.Field field) { + setNumber(F063, field); + } + + /** + * Set the F064 parameter to the routine + */ + public void setF064(java.lang.Number value) { + setNumber(F064, value); + } + + /** + * Set the F064 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF064(org.jooq.Field field) { + setNumber(F064, field); + } + + /** + * Set the F065 parameter to the routine + */ + public void setF065(java.lang.Number value) { + setNumber(F065, value); + } + + /** + * Set the F065 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF065(org.jooq.Field field) { + setNumber(F065, field); + } + + /** + * Set the F066 parameter to the routine + */ + public void setF066(java.lang.Number value) { + setNumber(F066, value); + } + + /** + * Set the F066 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF066(org.jooq.Field field) { + setNumber(F066, field); + } + + /** + * Set the F067 parameter to the routine + */ + public void setF067(java.lang.Number value) { + setNumber(F067, value); + } + + /** + * Set the F067 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF067(org.jooq.Field field) { + setNumber(F067, field); + } + + /** + * Set the F068 parameter to the routine + */ + public void setF068(java.lang.Number value) { + setNumber(F068, value); + } + + /** + * Set the F068 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF068(org.jooq.Field field) { + setNumber(F068, field); + } + + /** + * Set the F069 parameter to the routine + */ + public void setF069(java.lang.Number value) { + setNumber(F069, value); + } + + /** + * Set the F069 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF069(org.jooq.Field field) { + setNumber(F069, field); + } + + /** + * Set the F070 parameter to the routine + */ + public void setF070(java.lang.Number value) { + setNumber(F070, value); + } + + /** + * Set the F070 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF070(org.jooq.Field field) { + setNumber(F070, field); + } + + /** + * Set the F071 parameter to the routine + */ + public void setF071(java.lang.Number value) { + setNumber(F071, value); + } + + /** + * Set the F071 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF071(org.jooq.Field field) { + setNumber(F071, field); + } + + /** + * Set the F072 parameter to the routine + */ + public void setF072(java.lang.Number value) { + setNumber(F072, value); + } + + /** + * Set the F072 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF072(org.jooq.Field field) { + setNumber(F072, field); + } + + /** + * Set the F073 parameter to the routine + */ + public void setF073(java.lang.Number value) { + setNumber(F073, value); + } + + /** + * Set the F073 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF073(org.jooq.Field field) { + setNumber(F073, field); + } + + /** + * Set the F074 parameter to the routine + */ + public void setF074(java.lang.Number value) { + setNumber(F074, value); + } + + /** + * Set the F074 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF074(org.jooq.Field field) { + setNumber(F074, field); + } + + /** + * Set the F075 parameter to the routine + */ + public void setF075(java.lang.Number value) { + setNumber(F075, value); + } + + /** + * Set the F075 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF075(org.jooq.Field field) { + setNumber(F075, field); + } + + /** + * Set the F076 parameter to the routine + */ + public void setF076(java.lang.Number value) { + setNumber(F076, value); + } + + /** + * Set the F076 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF076(org.jooq.Field field) { + setNumber(F076, field); + } + + /** + * Set the F077 parameter to the routine + */ + public void setF077(java.lang.Number value) { + setNumber(F077, value); + } + + /** + * Set the F077 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF077(org.jooq.Field field) { + setNumber(F077, field); + } + + /** + * Set the F078 parameter to the routine + */ + public void setF078(java.lang.Number value) { + setNumber(F078, value); + } + + /** + * Set the F078 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF078(org.jooq.Field field) { + setNumber(F078, field); + } + + /** + * Set the F079 parameter to the routine + */ + public void setF079(java.lang.Number value) { + setNumber(F079, value); + } + + /** + * Set the F079 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF079(org.jooq.Field field) { + setNumber(F079, field); + } + + /** + * Set the F080 parameter to the routine + */ + public void setF080(java.lang.Number value) { + setNumber(F080, value); + } + + /** + * Set the F080 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF080(org.jooq.Field field) { + setNumber(F080, field); + } + + /** + * Set the F081 parameter to the routine + */ + public void setF081(java.lang.Number value) { + setNumber(F081, value); + } + + /** + * Set the F081 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF081(org.jooq.Field field) { + setNumber(F081, field); + } + + /** + * Set the F082 parameter to the routine + */ + public void setF082(java.lang.Number value) { + setNumber(F082, value); + } + + /** + * Set the F082 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF082(org.jooq.Field field) { + setNumber(F082, field); + } + + /** + * Set the F083 parameter to the routine + */ + public void setF083(java.lang.Number value) { + setNumber(F083, value); + } + + /** + * Set the F083 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF083(org.jooq.Field field) { + setNumber(F083, field); + } + + /** + * Set the F084 parameter to the routine + */ + public void setF084(java.lang.Number value) { + setNumber(F084, value); + } + + /** + * Set the F084 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF084(org.jooq.Field field) { + setNumber(F084, field); + } + + /** + * Set the F085 parameter to the routine + */ + public void setF085(java.lang.Number value) { + setNumber(F085, value); + } + + /** + * Set the F085 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF085(org.jooq.Field field) { + setNumber(F085, field); + } + + /** + * Set the F086 parameter to the routine + */ + public void setF086(java.lang.Number value) { + setNumber(F086, value); + } + + /** + * Set the F086 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF086(org.jooq.Field field) { + setNumber(F086, field); + } + + /** + * Set the F087 parameter to the routine + */ + public void setF087(java.lang.Number value) { + setNumber(F087, value); + } + + /** + * Set the F087 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF087(org.jooq.Field field) { + setNumber(F087, field); + } + + /** + * Set the F088 parameter to the routine + */ + public void setF088(java.lang.Number value) { + setNumber(F088, value); + } + + /** + * Set the F088 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF088(org.jooq.Field field) { + setNumber(F088, field); + } + + /** + * Set the F089 parameter to the routine + */ + public void setF089(java.lang.Number value) { + setNumber(F089, value); + } + + /** + * Set the F089 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF089(org.jooq.Field field) { + setNumber(F089, field); + } + + /** + * Set the F090 parameter to the routine + */ + public void setF090(java.lang.Number value) { + setNumber(F090, value); + } + + /** + * Set the F090 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF090(org.jooq.Field field) { + setNumber(F090, field); + } + + /** + * Set the F091 parameter to the routine + */ + public void setF091(java.lang.Number value) { + setNumber(F091, value); + } + + /** + * Set the F091 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF091(org.jooq.Field field) { + setNumber(F091, field); + } + + /** + * Set the F092 parameter to the routine + */ + public void setF092(java.lang.Number value) { + setNumber(F092, value); + } + + /** + * Set the F092 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF092(org.jooq.Field field) { + setNumber(F092, field); + } + + /** + * Set the F093 parameter to the routine + */ + public void setF093(java.lang.Number value) { + setNumber(F093, value); + } + + /** + * Set the F093 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF093(org.jooq.Field field) { + setNumber(F093, field); + } + + /** + * Set the F094 parameter to the routine + */ + public void setF094(java.lang.Number value) { + setNumber(F094, value); + } + + /** + * Set the F094 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF094(org.jooq.Field field) { + setNumber(F094, field); + } + + /** + * Set the F095 parameter to the routine + */ + public void setF095(java.lang.Number value) { + setNumber(F095, value); + } + + /** + * Set the F095 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF095(org.jooq.Field field) { + setNumber(F095, field); + } + + /** + * Set the F096 parameter to the routine + */ + public void setF096(java.lang.Number value) { + setNumber(F096, value); + } + + /** + * Set the F096 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF096(org.jooq.Field field) { + setNumber(F096, field); + } + + /** + * Set the F097 parameter to the routine + */ + public void setF097(java.lang.Number value) { + setNumber(F097, value); + } + + /** + * Set the F097 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF097(org.jooq.Field field) { + setNumber(F097, field); + } + + /** + * Set the F098 parameter to the routine + */ + public void setF098(java.lang.Number value) { + setNumber(F098, value); + } + + /** + * Set the F098 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF098(org.jooq.Field field) { + setNumber(F098, field); + } + + /** + * Set the F099 parameter to the routine + */ + public void setF099(java.lang.Number value) { + setNumber(F099, value); + } + + /** + * Set the F099 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF099(org.jooq.Field field) { + setNumber(F099, field); + } + + /** + * Set the F100 parameter to the routine + */ + public void setF100(java.lang.Number value) { + setNumber(F100, value); + } + + /** + * Set the F100 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF100(org.jooq.Field field) { + setNumber(F100, field); + } + + /** + * Set the F101 parameter to the routine + */ + public void setF101(java.lang.Number value) { + setNumber(F101, value); + } + + /** + * Set the F101 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF101(org.jooq.Field field) { + setNumber(F101, field); + } + + /** + * Set the F102 parameter to the routine + */ + public void setF102(java.lang.Number value) { + setNumber(F102, value); + } + + /** + * Set the F102 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF102(org.jooq.Field field) { + setNumber(F102, field); + } + + /** + * Set the F103 parameter to the routine + */ + public void setF103(java.lang.Number value) { + setNumber(F103, value); + } + + /** + * Set the F103 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF103(org.jooq.Field field) { + setNumber(F103, field); + } + + /** + * Set the F104 parameter to the routine + */ + public void setF104(java.lang.Number value) { + setNumber(F104, value); + } + + /** + * Set the F104 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF104(org.jooq.Field field) { + setNumber(F104, field); + } + + /** + * Set the F105 parameter to the routine + */ + public void setF105(java.lang.Number value) { + setNumber(F105, value); + } + + /** + * Set the F105 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF105(org.jooq.Field field) { + setNumber(F105, field); + } + + /** + * Set the F106 parameter to the routine + */ + public void setF106(java.lang.Number value) { + setNumber(F106, value); + } + + /** + * Set the F106 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF106(org.jooq.Field field) { + setNumber(F106, field); + } + + /** + * Set the F107 parameter to the routine + */ + public void setF107(java.lang.Number value) { + setNumber(F107, value); + } + + /** + * Set the F107 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF107(org.jooq.Field field) { + setNumber(F107, field); + } + + /** + * Set the F108 parameter to the routine + */ + public void setF108(java.lang.Number value) { + setNumber(F108, value); + } + + /** + * Set the F108 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF108(org.jooq.Field field) { + setNumber(F108, field); + } + + /** + * Set the F109 parameter to the routine + */ + public void setF109(java.lang.Number value) { + setNumber(F109, value); + } + + /** + * Set the F109 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF109(org.jooq.Field field) { + setNumber(F109, field); + } + + /** + * Set the F110 parameter to the routine + */ + public void setF110(java.lang.Number value) { + setNumber(F110, value); + } + + /** + * Set the F110 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF110(org.jooq.Field field) { + setNumber(F110, field); + } + + /** + * Set the F111 parameter to the routine + */ + public void setF111(java.lang.Number value) { + setNumber(F111, value); + } + + /** + * Set the F111 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF111(org.jooq.Field field) { + setNumber(F111, field); + } + + /** + * Set the F112 parameter to the routine + */ + public void setF112(java.lang.Number value) { + setNumber(F112, value); + } + + /** + * Set the F112 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF112(org.jooq.Field field) { + setNumber(F112, field); + } + + /** + * Set the F113 parameter to the routine + */ + public void setF113(java.lang.Number value) { + setNumber(F113, value); + } + + /** + * Set the F113 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF113(org.jooq.Field field) { + setNumber(F113, field); + } + + /** + * Set the F114 parameter to the routine + */ + public void setF114(java.lang.Number value) { + setNumber(F114, value); + } + + /** + * Set the F114 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF114(org.jooq.Field field) { + setNumber(F114, field); + } + + /** + * Set the F115 parameter to the routine + */ + public void setF115(java.lang.Number value) { + setNumber(F115, value); + } + + /** + * Set the F115 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF115(org.jooq.Field field) { + setNumber(F115, field); + } + + /** + * Set the F116 parameter to the routine + */ + public void setF116(java.lang.Number value) { + setNumber(F116, value); + } + + /** + * Set the F116 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF116(org.jooq.Field field) { + setNumber(F116, field); + } + + /** + * Set the F117 parameter to the routine + */ + public void setF117(java.lang.Number value) { + setNumber(F117, value); + } + + /** + * Set the F117 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF117(org.jooq.Field field) { + setNumber(F117, field); + } + + /** + * Set the F118 parameter to the routine + */ + public void setF118(java.lang.Number value) { + setNumber(F118, value); + } + + /** + * Set the F118 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF118(org.jooq.Field field) { + setNumber(F118, field); + } + + /** + * Set the F119 parameter to the routine + */ + public void setF119(java.lang.Number value) { + setNumber(F119, value); + } + + /** + * Set the F119 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF119(org.jooq.Field field) { + setNumber(F119, field); + } + + /** + * Set the F120 parameter to the routine + */ + public void setF120(java.lang.Number value) { + setNumber(F120, value); + } + + /** + * Set the F120 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF120(org.jooq.Field field) { + setNumber(F120, field); + } + + /** + * Set the F121 parameter to the routine + */ + public void setF121(java.lang.Number value) { + setNumber(F121, value); + } + + /** + * Set the F121 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF121(org.jooq.Field field) { + setNumber(F121, field); + } + + /** + * Set the F122 parameter to the routine + */ + public void setF122(java.lang.Number value) { + setNumber(F122, value); + } + + /** + * Set the F122 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF122(org.jooq.Field field) { + setNumber(F122, field); + } + + /** + * Set the F123 parameter to the routine + */ + public void setF123(java.lang.Number value) { + setNumber(F123, value); + } + + /** + * Set the F123 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF123(org.jooq.Field field) { + setNumber(F123, field); + } + + /** + * Set the F124 parameter to the routine + */ + public void setF124(java.lang.Number value) { + setNumber(F124, value); + } + + /** + * Set the F124 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF124(org.jooq.Field field) { + setNumber(F124, field); + } + + /** + * Set the F125 parameter to the routine + */ + public void setF125(java.lang.Number value) { + setNumber(F125, value); + } + + /** + * Set the F125 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF125(org.jooq.Field field) { + setNumber(F125, field); + } + + /** + * Set the F126 parameter to the routine + */ + public void setF126(java.lang.Number value) { + setNumber(F126, value); + } + + /** + * Set the F126 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF126(org.jooq.Field field) { + setNumber(F126, field); + } + + /** + * Set the F127 parameter to the routine + */ + public void setF127(java.lang.Number value) { + setNumber(F127, value); + } + + /** + * Set the F127 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF127(org.jooq.Field field) { + setNumber(F127, field); + } + + /** + * Set the F128 parameter to the routine + */ + public void setF128(java.lang.Number value) { + setNumber(F128, value); + } + + /** + * Set the F128 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF128(org.jooq.Field field) { + setNumber(F128, field); + } + + /** + * Set the F129 parameter to the routine + */ + public void setF129(java.lang.Number value) { + setNumber(F129, value); + } + + /** + * Set the F129 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF129(org.jooq.Field field) { + setNumber(F129, field); + } + + /** + * Set the F130 parameter to the routine + */ + public void setF130(java.lang.Number value) { + setNumber(F130, value); + } + + /** + * Set the F130 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF130(org.jooq.Field field) { + setNumber(F130, field); + } + + /** + * Set the F131 parameter to the routine + */ + public void setF131(java.lang.Number value) { + setNumber(F131, value); + } + + /** + * Set the F131 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF131(org.jooq.Field field) { + setNumber(F131, field); + } + + /** + * Set the F132 parameter to the routine + */ + public void setF132(java.lang.Number value) { + setNumber(F132, value); + } + + /** + * Set the F132 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF132(org.jooq.Field field) { + setNumber(F132, field); + } + + /** + * Set the F133 parameter to the routine + */ + public void setF133(java.lang.Number value) { + setNumber(F133, value); + } + + /** + * Set the F133 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF133(org.jooq.Field field) { + setNumber(F133, field); + } + + /** + * Set the F134 parameter to the routine + */ + public void setF134(java.lang.Number value) { + setNumber(F134, value); + } + + /** + * Set the F134 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF134(org.jooq.Field field) { + setNumber(F134, field); + } + + /** + * Set the F135 parameter to the routine + */ + public void setF135(java.lang.Number value) { + setNumber(F135, value); + } + + /** + * Set the F135 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF135(org.jooq.Field field) { + setNumber(F135, field); + } + + /** + * Set the F136 parameter to the routine + */ + public void setF136(java.lang.Number value) { + setNumber(F136, value); + } + + /** + * Set the F136 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF136(org.jooq.Field field) { + setNumber(F136, field); + } + + /** + * Set the F137 parameter to the routine + */ + public void setF137(java.lang.Number value) { + setNumber(F137, value); + } + + /** + * Set the F137 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF137(org.jooq.Field field) { + setNumber(F137, field); + } + + /** + * Set the F138 parameter to the routine + */ + public void setF138(java.lang.Number value) { + setNumber(F138, value); + } + + /** + * Set the F138 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF138(org.jooq.Field field) { + setNumber(F138, field); + } + + /** + * Set the F139 parameter to the routine + */ + public void setF139(java.lang.Number value) { + setNumber(F139, value); + } + + /** + * Set the F139 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF139(org.jooq.Field field) { + setNumber(F139, field); + } + + /** + * Set the F140 parameter to the routine + */ + public void setF140(java.lang.Number value) { + setNumber(F140, value); + } + + /** + * Set the F140 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF140(org.jooq.Field field) { + setNumber(F140, field); + } + + /** + * Set the F141 parameter to the routine + */ + public void setF141(java.lang.Number value) { + setNumber(F141, value); + } + + /** + * Set the F141 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF141(org.jooq.Field field) { + setNumber(F141, field); + } + + /** + * Set the F142 parameter to the routine + */ + public void setF142(java.lang.Number value) { + setNumber(F142, value); + } + + /** + * Set the F142 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF142(org.jooq.Field field) { + setNumber(F142, field); + } + + /** + * Set the F143 parameter to the routine + */ + public void setF143(java.lang.Number value) { + setNumber(F143, value); + } + + /** + * Set the F143 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF143(org.jooq.Field field) { + setNumber(F143, field); + } + + /** + * Set the F144 parameter to the routine + */ + public void setF144(java.lang.Number value) { + setNumber(F144, value); + } + + /** + * Set the F144 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF144(org.jooq.Field field) { + setNumber(F144, field); + } + + /** + * Set the F145 parameter to the routine + */ + public void setF145(java.lang.Number value) { + setNumber(F145, value); + } + + /** + * Set the F145 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF145(org.jooq.Field field) { + setNumber(F145, field); + } + + /** + * Set the F146 parameter to the routine + */ + public void setF146(java.lang.Number value) { + setNumber(F146, value); + } + + /** + * Set the F146 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF146(org.jooq.Field field) { + setNumber(F146, field); + } + + /** + * Set the F147 parameter to the routine + */ + public void setF147(java.lang.Number value) { + setNumber(F147, value); + } + + /** + * Set the F147 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF147(org.jooq.Field field) { + setNumber(F147, field); + } + + /** + * Set the F148 parameter to the routine + */ + public void setF148(java.lang.Number value) { + setNumber(F148, value); + } + + /** + * Set the F148 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF148(org.jooq.Field field) { + setNumber(F148, field); + } + + /** + * Set the F149 parameter to the routine + */ + public void setF149(java.lang.Number value) { + setNumber(F149, value); + } + + /** + * Set the F149 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF149(org.jooq.Field field) { + setNumber(F149, field); + } + + /** + * Set the F150 parameter to the routine + */ + public void setF150(java.lang.Number value) { + setNumber(F150, value); + } + + /** + * Set the F150 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF150(org.jooq.Field field) { + setNumber(F150, field); + } + + /** + * Set the F151 parameter to the routine + */ + public void setF151(java.lang.Number value) { + setNumber(F151, value); + } + + /** + * Set the F151 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF151(org.jooq.Field field) { + setNumber(F151, field); + } + + /** + * Set the F152 parameter to the routine + */ + public void setF152(java.lang.Number value) { + setNumber(F152, value); + } + + /** + * Set the F152 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF152(org.jooq.Field field) { + setNumber(F152, field); + } + + /** + * Set the F153 parameter to the routine + */ + public void setF153(java.lang.Number value) { + setNumber(F153, value); + } + + /** + * Set the F153 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF153(org.jooq.Field field) { + setNumber(F153, field); + } + + /** + * Set the F154 parameter to the routine + */ + public void setF154(java.lang.Number value) { + setNumber(F154, value); + } + + /** + * Set the F154 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF154(org.jooq.Field field) { + setNumber(F154, field); + } + + /** + * Set the F155 parameter to the routine + */ + public void setF155(java.lang.Number value) { + setNumber(F155, value); + } + + /** + * Set the F155 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF155(org.jooq.Field field) { + setNumber(F155, field); + } + + /** + * Set the F156 parameter to the routine + */ + public void setF156(java.lang.Number value) { + setNumber(F156, value); + } + + /** + * Set the F156 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF156(org.jooq.Field field) { + setNumber(F156, field); + } + + /** + * Set the F157 parameter to the routine + */ + public void setF157(java.lang.Number value) { + setNumber(F157, value); + } + + /** + * Set the F157 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF157(org.jooq.Field field) { + setNumber(F157, field); + } + + /** + * Set the F158 parameter to the routine + */ + public void setF158(java.lang.Number value) { + setNumber(F158, value); + } + + /** + * Set the F158 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF158(org.jooq.Field field) { + setNumber(F158, field); + } + + /** + * Set the F159 parameter to the routine + */ + public void setF159(java.lang.Number value) { + setNumber(F159, value); + } + + /** + * Set the F159 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF159(org.jooq.Field field) { + setNumber(F159, field); + } + + /** + * Set the F160 parameter to the routine + */ + public void setF160(java.lang.Number value) { + setNumber(F160, value); + } + + /** + * Set the F160 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF160(org.jooq.Field field) { + setNumber(F160, field); + } + + /** + * Set the F161 parameter to the routine + */ + public void setF161(java.lang.Number value) { + setNumber(F161, value); + } + + /** + * Set the F161 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF161(org.jooq.Field field) { + setNumber(F161, field); + } + + /** + * Set the F162 parameter to the routine + */ + public void setF162(java.lang.Number value) { + setNumber(F162, value); + } + + /** + * Set the F162 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF162(org.jooq.Field field) { + setNumber(F162, field); + } + + /** + * Set the F163 parameter to the routine + */ + public void setF163(java.lang.Number value) { + setNumber(F163, value); + } + + /** + * Set the F163 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF163(org.jooq.Field field) { + setNumber(F163, field); + } + + /** + * Set the F164 parameter to the routine + */ + public void setF164(java.lang.Number value) { + setNumber(F164, value); + } + + /** + * Set the F164 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF164(org.jooq.Field field) { + setNumber(F164, field); + } + + /** + * Set the F165 parameter to the routine + */ + public void setF165(java.lang.Number value) { + setNumber(F165, value); + } + + /** + * Set the F165 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF165(org.jooq.Field field) { + setNumber(F165, field); + } + + /** + * Set the F166 parameter to the routine + */ + public void setF166(java.lang.Number value) { + setNumber(F166, value); + } + + /** + * Set the F166 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF166(org.jooq.Field field) { + setNumber(F166, field); + } + + /** + * Set the F167 parameter to the routine + */ + public void setF167(java.lang.Number value) { + setNumber(F167, value); + } + + /** + * Set the F167 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF167(org.jooq.Field field) { + setNumber(F167, field); + } + + /** + * Set the F168 parameter to the routine + */ + public void setF168(java.lang.Number value) { + setNumber(F168, value); + } + + /** + * Set the F168 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF168(org.jooq.Field field) { + setNumber(F168, field); + } + + /** + * Set the F169 parameter to the routine + */ + public void setF169(java.lang.Number value) { + setNumber(F169, value); + } + + /** + * Set the F169 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF169(org.jooq.Field field) { + setNumber(F169, field); + } + + /** + * Set the F170 parameter to the routine + */ + public void setF170(java.lang.Number value) { + setNumber(F170, value); + } + + /** + * Set the F170 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF170(org.jooq.Field field) { + setNumber(F170, field); + } + + /** + * Set the F171 parameter to the routine + */ + public void setF171(java.lang.Number value) { + setNumber(F171, value); + } + + /** + * Set the F171 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF171(org.jooq.Field field) { + setNumber(F171, field); + } + + /** + * Set the F172 parameter to the routine + */ + public void setF172(java.lang.Number value) { + setNumber(F172, value); + } + + /** + * Set the F172 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF172(org.jooq.Field field) { + setNumber(F172, field); + } + + /** + * Set the F173 parameter to the routine + */ + public void setF173(java.lang.Number value) { + setNumber(F173, value); + } + + /** + * Set the F173 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF173(org.jooq.Field field) { + setNumber(F173, field); + } + + /** + * Set the F174 parameter to the routine + */ + public void setF174(java.lang.Number value) { + setNumber(F174, value); + } + + /** + * Set the F174 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF174(org.jooq.Field field) { + setNumber(F174, field); + } + + /** + * Set the F175 parameter to the routine + */ + public void setF175(java.lang.Number value) { + setNumber(F175, value); + } + + /** + * Set the F175 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF175(org.jooq.Field field) { + setNumber(F175, field); + } + + /** + * Set the F176 parameter to the routine + */ + public void setF176(java.lang.Number value) { + setNumber(F176, value); + } + + /** + * Set the F176 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF176(org.jooq.Field field) { + setNumber(F176, field); + } + + /** + * Set the F177 parameter to the routine + */ + public void setF177(java.lang.Number value) { + setNumber(F177, value); + } + + /** + * Set the F177 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF177(org.jooq.Field field) { + setNumber(F177, field); + } + + /** + * Set the F178 parameter to the routine + */ + public void setF178(java.lang.Number value) { + setNumber(F178, value); + } + + /** + * Set the F178 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF178(org.jooq.Field field) { + setNumber(F178, field); + } + + /** + * Set the F179 parameter to the routine + */ + public void setF179(java.lang.Number value) { + setNumber(F179, value); + } + + /** + * Set the F179 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF179(org.jooq.Field field) { + setNumber(F179, field); + } + + /** + * Set the F180 parameter to the routine + */ + public void setF180(java.lang.Number value) { + setNumber(F180, value); + } + + /** + * Set the F180 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF180(org.jooq.Field field) { + setNumber(F180, field); + } + + /** + * Set the F181 parameter to the routine + */ + public void setF181(java.lang.Number value) { + setNumber(F181, value); + } + + /** + * Set the F181 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF181(org.jooq.Field field) { + setNumber(F181, field); + } + + /** + * Set the F182 parameter to the routine + */ + public void setF182(java.lang.Number value) { + setNumber(F182, value); + } + + /** + * Set the F182 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF182(org.jooq.Field field) { + setNumber(F182, field); + } + + /** + * Set the F183 parameter to the routine + */ + public void setF183(java.lang.Number value) { + setNumber(F183, value); + } + + /** + * Set the F183 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF183(org.jooq.Field field) { + setNumber(F183, field); + } + + /** + * Set the F184 parameter to the routine + */ + public void setF184(java.lang.Number value) { + setNumber(F184, value); + } + + /** + * Set the F184 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF184(org.jooq.Field field) { + setNumber(F184, field); + } + + /** + * Set the F185 parameter to the routine + */ + public void setF185(java.lang.Number value) { + setNumber(F185, value); + } + + /** + * Set the F185 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF185(org.jooq.Field field) { + setNumber(F185, field); + } + + /** + * Set the F186 parameter to the routine + */ + public void setF186(java.lang.Number value) { + setNumber(F186, value); + } + + /** + * Set the F186 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF186(org.jooq.Field field) { + setNumber(F186, field); + } + + /** + * Set the F187 parameter to the routine + */ + public void setF187(java.lang.Number value) { + setNumber(F187, value); + } + + /** + * Set the F187 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF187(org.jooq.Field field) { + setNumber(F187, field); + } + + /** + * Set the F188 parameter to the routine + */ + public void setF188(java.lang.Number value) { + setNumber(F188, value); + } + + /** + * Set the F188 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF188(org.jooq.Field field) { + setNumber(F188, field); + } + + /** + * Set the F189 parameter to the routine + */ + public void setF189(java.lang.Number value) { + setNumber(F189, value); + } + + /** + * Set the F189 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF189(org.jooq.Field field) { + setNumber(F189, field); + } + + /** + * Set the F190 parameter to the routine + */ + public void setF190(java.lang.Number value) { + setNumber(F190, value); + } + + /** + * Set the F190 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF190(org.jooq.Field field) { + setNumber(F190, field); + } + + /** + * Set the F191 parameter to the routine + */ + public void setF191(java.lang.Number value) { + setNumber(F191, value); + } + + /** + * Set the F191 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF191(org.jooq.Field field) { + setNumber(F191, field); + } + + /** + * Set the F192 parameter to the routine + */ + public void setF192(java.lang.Number value) { + setNumber(F192, value); + } + + /** + * Set the F192 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF192(org.jooq.Field field) { + setNumber(F192, field); + } + + /** + * Set the F193 parameter to the routine + */ + public void setF193(java.lang.Number value) { + setNumber(F193, value); + } + + /** + * Set the F193 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF193(org.jooq.Field field) { + setNumber(F193, field); + } + + /** + * Set the F194 parameter to the routine + */ + public void setF194(java.lang.Number value) { + setNumber(F194, value); + } + + /** + * Set the F194 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF194(org.jooq.Field field) { + setNumber(F194, field); + } + + /** + * Set the F195 parameter to the routine + */ + public void setF195(java.lang.Number value) { + setNumber(F195, value); + } + + /** + * Set the F195 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF195(org.jooq.Field field) { + setNumber(F195, field); + } + + /** + * Set the F196 parameter to the routine + */ + public void setF196(java.lang.Number value) { + setNumber(F196, value); + } + + /** + * Set the F196 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF196(org.jooq.Field field) { + setNumber(F196, field); + } + + /** + * Set the F197 parameter to the routine + */ + public void setF197(java.lang.Number value) { + setNumber(F197, value); + } + + /** + * Set the F197 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF197(org.jooq.Field field) { + setNumber(F197, field); + } + + /** + * Set the F198 parameter to the routine + */ + public void setF198(java.lang.Number value) { + setNumber(F198, value); + } + + /** + * Set the F198 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF198(org.jooq.Field field) { + setNumber(F198, field); + } + + /** + * Set the F199 parameter to the routine + */ + public void setF199(java.lang.Number value) { + setNumber(F199, value); + } + + /** + * Set the F199 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF199(org.jooq.Field field) { + setNumber(F199, field); + } + + /** + * Set the F200 parameter to the routine + */ + public void setF200(java.lang.Number value) { + setNumber(F200, value); + } + + /** + * Set the F200 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF200(org.jooq.Field field) { + setNumber(F200, field); + } + + /** + * Set the F201 parameter to the routine + */ + public void setF201(java.lang.Number value) { + setNumber(F201, value); + } + + /** + * Set the F201 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF201(org.jooq.Field field) { + setNumber(F201, field); + } + + /** + * Set the F202 parameter to the routine + */ + public void setF202(java.lang.Number value) { + setNumber(F202, value); + } + + /** + * Set the F202 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF202(org.jooq.Field field) { + setNumber(F202, field); + } + + /** + * Set the F203 parameter to the routine + */ + public void setF203(java.lang.Number value) { + setNumber(F203, value); + } + + /** + * Set the F203 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF203(org.jooq.Field field) { + setNumber(F203, field); + } + + /** + * Set the F204 parameter to the routine + */ + public void setF204(java.lang.Number value) { + setNumber(F204, value); + } + + /** + * Set the F204 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF204(org.jooq.Field field) { + setNumber(F204, field); + } + + /** + * Set the F205 parameter to the routine + */ + public void setF205(java.lang.Number value) { + setNumber(F205, value); + } + + /** + * Set the F205 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF205(org.jooq.Field field) { + setNumber(F205, field); + } + + /** + * Set the F206 parameter to the routine + */ + public void setF206(java.lang.Number value) { + setNumber(F206, value); + } + + /** + * Set the F206 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF206(org.jooq.Field field) { + setNumber(F206, field); + } + + /** + * Set the F207 parameter to the routine + */ + public void setF207(java.lang.Number value) { + setNumber(F207, value); + } + + /** + * Set the F207 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF207(org.jooq.Field field) { + setNumber(F207, field); + } + + /** + * Set the F208 parameter to the routine + */ + public void setF208(java.lang.Number value) { + setNumber(F208, value); + } + + /** + * Set the F208 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF208(org.jooq.Field field) { + setNumber(F208, field); + } + + /** + * Set the F209 parameter to the routine + */ + public void setF209(java.lang.Number value) { + setNumber(F209, value); + } + + /** + * Set the F209 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF209(org.jooq.Field field) { + setNumber(F209, field); + } + + /** + * Set the F210 parameter to the routine + */ + public void setF210(java.lang.Number value) { + setNumber(F210, value); + } + + /** + * Set the F210 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF210(org.jooq.Field field) { + setNumber(F210, field); + } + + /** + * Set the F211 parameter to the routine + */ + public void setF211(java.lang.Number value) { + setNumber(F211, value); + } + + /** + * Set the F211 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF211(org.jooq.Field field) { + setNumber(F211, field); + } + + /** + * Set the F212 parameter to the routine + */ + public void setF212(java.lang.Number value) { + setNumber(F212, value); + } + + /** + * Set the F212 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF212(org.jooq.Field field) { + setNumber(F212, field); + } + + /** + * Set the F213 parameter to the routine + */ + public void setF213(java.lang.Number value) { + setNumber(F213, value); + } + + /** + * Set the F213 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF213(org.jooq.Field field) { + setNumber(F213, field); + } + + /** + * Set the F214 parameter to the routine + */ + public void setF214(java.lang.Number value) { + setNumber(F214, value); + } + + /** + * Set the F214 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF214(org.jooq.Field field) { + setNumber(F214, field); + } + + /** + * Set the F215 parameter to the routine + */ + public void setF215(java.lang.Number value) { + setNumber(F215, value); + } + + /** + * Set the F215 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF215(org.jooq.Field field) { + setNumber(F215, field); + } + + /** + * Set the F216 parameter to the routine + */ + public void setF216(java.lang.Number value) { + setNumber(F216, value); + } + + /** + * Set the F216 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF216(org.jooq.Field field) { + setNumber(F216, field); + } + + /** + * Set the F217 parameter to the routine + */ + public void setF217(java.lang.Number value) { + setNumber(F217, value); + } + + /** + * Set the F217 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF217(org.jooq.Field field) { + setNumber(F217, field); + } + + /** + * Set the F218 parameter to the routine + */ + public void setF218(java.lang.Number value) { + setNumber(F218, value); + } + + /** + * Set the F218 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF218(org.jooq.Field field) { + setNumber(F218, field); + } + + /** + * Set the F219 parameter to the routine + */ + public void setF219(java.lang.Number value) { + setNumber(F219, value); + } + + /** + * Set the F219 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF219(org.jooq.Field field) { + setNumber(F219, field); + } + + /** + * Set the F220 parameter to the routine + */ + public void setF220(java.lang.Number value) { + setNumber(F220, value); + } + + /** + * Set the F220 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF220(org.jooq.Field field) { + setNumber(F220, field); + } + + /** + * Set the F221 parameter to the routine + */ + public void setF221(java.lang.Number value) { + setNumber(F221, value); + } + + /** + * Set the F221 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF221(org.jooq.Field field) { + setNumber(F221, field); + } + + /** + * Set the F222 parameter to the routine + */ + public void setF222(java.lang.Number value) { + setNumber(F222, value); + } + + /** + * Set the F222 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF222(org.jooq.Field field) { + setNumber(F222, field); + } + + /** + * Set the F223 parameter to the routine + */ + public void setF223(java.lang.Number value) { + setNumber(F223, value); + } + + /** + * Set the F223 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF223(org.jooq.Field field) { + setNumber(F223, field); + } + + /** + * Set the F224 parameter to the routine + */ + public void setF224(java.lang.Number value) { + setNumber(F224, value); + } + + /** + * Set the F224 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF224(org.jooq.Field field) { + setNumber(F224, field); + } + + /** + * Set the F225 parameter to the routine + */ + public void setF225(java.lang.Number value) { + setNumber(F225, value); + } + + /** + * Set the F225 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF225(org.jooq.Field field) { + setNumber(F225, field); + } + + /** + * Set the F226 parameter to the routine + */ + public void setF226(java.lang.Number value) { + setNumber(F226, value); + } + + /** + * Set the F226 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF226(org.jooq.Field field) { + setNumber(F226, field); + } + + /** + * Set the F227 parameter to the routine + */ + public void setF227(java.lang.Number value) { + setNumber(F227, value); + } + + /** + * Set the F227 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF227(org.jooq.Field field) { + setNumber(F227, field); + } + + /** + * Set the F228 parameter to the routine + */ + public void setF228(java.lang.Number value) { + setNumber(F228, value); + } + + /** + * Set the F228 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF228(org.jooq.Field field) { + setNumber(F228, field); + } + + /** + * Set the F229 parameter to the routine + */ + public void setF229(java.lang.Number value) { + setNumber(F229, value); + } + + /** + * Set the F229 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF229(org.jooq.Field field) { + setNumber(F229, field); + } + + /** + * Set the F230 parameter to the routine + */ + public void setF230(java.lang.Number value) { + setNumber(F230, value); + } + + /** + * Set the F230 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF230(org.jooq.Field field) { + setNumber(F230, field); + } + + /** + * Set the F231 parameter to the routine + */ + public void setF231(java.lang.Number value) { + setNumber(F231, value); + } + + /** + * Set the F231 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF231(org.jooq.Field field) { + setNumber(F231, field); + } + + /** + * Set the F232 parameter to the routine + */ + public void setF232(java.lang.Number value) { + setNumber(F232, value); + } + + /** + * Set the F232 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF232(org.jooq.Field field) { + setNumber(F232, field); + } + + /** + * Set the F233 parameter to the routine + */ + public void setF233(java.lang.Number value) { + setNumber(F233, value); + } + + /** + * Set the F233 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF233(org.jooq.Field field) { + setNumber(F233, field); + } + + /** + * Set the F234 parameter to the routine + */ + public void setF234(java.lang.Number value) { + setNumber(F234, value); + } + + /** + * Set the F234 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF234(org.jooq.Field field) { + setNumber(F234, field); + } + + /** + * Set the F235 parameter to the routine + */ + public void setF235(java.lang.Number value) { + setNumber(F235, value); + } + + /** + * Set the F235 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF235(org.jooq.Field field) { + setNumber(F235, field); + } + + /** + * Set the F236 parameter to the routine + */ + public void setF236(java.lang.Number value) { + setNumber(F236, value); + } + + /** + * Set the F236 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF236(org.jooq.Field field) { + setNumber(F236, field); + } + + /** + * Set the F237 parameter to the routine + */ + public void setF237(java.lang.Number value) { + setNumber(F237, value); + } + + /** + * Set the F237 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF237(org.jooq.Field field) { + setNumber(F237, field); + } + + /** + * Set the F238 parameter to the routine + */ + public void setF238(java.lang.Number value) { + setNumber(F238, value); + } + + /** + * Set the F238 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF238(org.jooq.Field field) { + setNumber(F238, field); + } + + /** + * Set the F239 parameter to the routine + */ + public void setF239(java.lang.Number value) { + setNumber(F239, value); + } + + /** + * Set the F239 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF239(org.jooq.Field field) { + setNumber(F239, field); + } + + /** + * Set the F240 parameter to the routine + */ + public void setF240(java.lang.Number value) { + setNumber(F240, value); + } + + /** + * Set the F240 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF240(org.jooq.Field field) { + setNumber(F240, field); + } + + /** + * Set the F241 parameter to the routine + */ + public void setF241(java.lang.Number value) { + setNumber(F241, value); + } + + /** + * Set the F241 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF241(org.jooq.Field field) { + setNumber(F241, field); + } + + /** + * Set the F242 parameter to the routine + */ + public void setF242(java.lang.Number value) { + setNumber(F242, value); + } + + /** + * Set the F242 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF242(org.jooq.Field field) { + setNumber(F242, field); + } + + /** + * Set the F243 parameter to the routine + */ + public void setF243(java.lang.Number value) { + setNumber(F243, value); + } + + /** + * Set the F243 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF243(org.jooq.Field field) { + setNumber(F243, field); + } + + /** + * Set the F244 parameter to the routine + */ + public void setF244(java.lang.Number value) { + setNumber(F244, value); + } + + /** + * Set the F244 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF244(org.jooq.Field field) { + setNumber(F244, field); + } + + /** + * Set the F245 parameter to the routine + */ + public void setF245(java.lang.Number value) { + setNumber(F245, value); + } + + /** + * Set the F245 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF245(org.jooq.Field field) { + setNumber(F245, field); + } + + /** + * Set the F246 parameter to the routine + */ + public void setF246(java.lang.Number value) { + setNumber(F246, value); + } + + /** + * Set the F246 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF246(org.jooq.Field field) { + setNumber(F246, field); + } + + /** + * Set the F247 parameter to the routine + */ + public void setF247(java.lang.Number value) { + setNumber(F247, value); + } + + /** + * Set the F247 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF247(org.jooq.Field field) { + setNumber(F247, field); + } + + /** + * Set the F248 parameter to the routine + */ + public void setF248(java.lang.Number value) { + setNumber(F248, value); + } + + /** + * Set the F248 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF248(org.jooq.Field field) { + setNumber(F248, field); + } + + /** + * Set the F249 parameter to the routine + */ + public void setF249(java.lang.Number value) { + setNumber(F249, value); + } + + /** + * Set the F249 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF249(org.jooq.Field field) { + setNumber(F249, field); + } + + /** + * Set the F250 parameter to the routine + */ + public void setF250(java.lang.Number value) { + setNumber(F250, value); + } + + /** + * Set the F250 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF250(org.jooq.Field field) { + setNumber(F250, field); + } + + /** + * Set the F251 parameter to the routine + */ + public void setF251(java.lang.Number value) { + setNumber(F251, value); + } + + /** + * Set the F251 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF251(org.jooq.Field field) { + setNumber(F251, field); + } + + /** + * Set the F252 parameter to the routine + */ + public void setF252(java.lang.Number value) { + setNumber(F252, value); + } + + /** + * Set the F252 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF252(org.jooq.Field field) { + setNumber(F252, field); + } + + /** + * Set the F253 parameter to the routine + */ + public void setF253(java.lang.Number value) { + setNumber(F253, value); + } + + /** + * Set the F253 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF253(org.jooq.Field field) { + setNumber(F253, field); + } + + /** + * Set the F254 parameter to the routine + */ + public void setF254(java.lang.Number value) { + setNumber(F254, value); + } + + /** + * Set the F254 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF254(org.jooq.Field field) { + setNumber(F254, field); + } + + /** + * Set the F255 parameter to the routine + */ + public void setF255(java.lang.Number value) { + setNumber(F255, value); + } + + /** + * Set the F255 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF255(org.jooq.Field field) { + setNumber(F255, field); + } + + /** + * Set the F256 parameter to the routine + */ + public void setF256(java.lang.Number value) { + setNumber(F256, value); + } + + /** + * Set the F256 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF256(org.jooq.Field field) { + setNumber(F256, field); + } + + /** + * Set the F257 parameter to the routine + */ + public void setF257(java.lang.Number value) { + setNumber(F257, value); + } + + /** + * Set the F257 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF257(org.jooq.Field field) { + setNumber(F257, field); + } + + /** + * Set the F258 parameter to the routine + */ + public void setF258(java.lang.Number value) { + setNumber(F258, value); + } + + /** + * Set the F258 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF258(org.jooq.Field field) { + setNumber(F258, field); + } + + /** + * Set the F259 parameter to the routine + */ + public void setF259(java.lang.Number value) { + setNumber(F259, value); + } + + /** + * Set the F259 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF259(org.jooq.Field field) { + setNumber(F259, field); + } + + /** + * Set the F260 parameter to the routine + */ + public void setF260(java.lang.Number value) { + setNumber(F260, value); + } + + /** + * Set the F260 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF260(org.jooq.Field field) { + setNumber(F260, field); + } + + /** + * Set the F261 parameter to the routine + */ + public void setF261(java.lang.Number value) { + setNumber(F261, value); + } + + /** + * Set the F261 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF261(org.jooq.Field field) { + setNumber(F261, field); + } + + /** + * Set the F262 parameter to the routine + */ + public void setF262(java.lang.Number value) { + setNumber(F262, value); + } + + /** + * Set the F262 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF262(org.jooq.Field field) { + setNumber(F262, field); + } + + /** + * Set the F263 parameter to the routine + */ + public void setF263(java.lang.Number value) { + setNumber(F263, value); + } + + /** + * Set the F263 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF263(org.jooq.Field field) { + setNumber(F263, field); + } + + /** + * Set the F264 parameter to the routine + */ + public void setF264(java.lang.Number value) { + setNumber(F264, value); + } + + /** + * Set the F264 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF264(org.jooq.Field field) { + setNumber(F264, field); + } + + /** + * Set the F265 parameter to the routine + */ + public void setF265(java.lang.Number value) { + setNumber(F265, value); + } + + /** + * Set the F265 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF265(org.jooq.Field field) { + setNumber(F265, field); + } + + /** + * Set the F266 parameter to the routine + */ + public void setF266(java.lang.Number value) { + setNumber(F266, value); + } + + /** + * Set the F266 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF266(org.jooq.Field field) { + setNumber(F266, field); + } + + /** + * Set the F267 parameter to the routine + */ + public void setF267(java.lang.Number value) { + setNumber(F267, value); + } + + /** + * Set the F267 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF267(org.jooq.Field field) { + setNumber(F267, field); + } + + /** + * Set the F268 parameter to the routine + */ + public void setF268(java.lang.Number value) { + setNumber(F268, value); + } + + /** + * Set the F268 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF268(org.jooq.Field field) { + setNumber(F268, field); + } + + /** + * Set the F269 parameter to the routine + */ + public void setF269(java.lang.Number value) { + setNumber(F269, value); + } + + /** + * Set the F269 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF269(org.jooq.Field field) { + setNumber(F269, field); + } + + /** + * Set the F270 parameter to the routine + */ + public void setF270(java.lang.Number value) { + setNumber(F270, value); + } + + /** + * Set the F270 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF270(org.jooq.Field field) { + setNumber(F270, field); + } + + /** + * Set the F271 parameter to the routine + */ + public void setF271(java.lang.Number value) { + setNumber(F271, value); + } + + /** + * Set the F271 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF271(org.jooq.Field field) { + setNumber(F271, field); + } + + /** + * Set the F272 parameter to the routine + */ + public void setF272(java.lang.Number value) { + setNumber(F272, value); + } + + /** + * Set the F272 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF272(org.jooq.Field field) { + setNumber(F272, field); + } + + /** + * Set the F273 parameter to the routine + */ + public void setF273(java.lang.Number value) { + setNumber(F273, value); + } + + /** + * Set the F273 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF273(org.jooq.Field field) { + setNumber(F273, field); + } + + /** + * Set the F274 parameter to the routine + */ + public void setF274(java.lang.Number value) { + setNumber(F274, value); + } + + /** + * Set the F274 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF274(org.jooq.Field field) { + setNumber(F274, field); + } + + /** + * Set the F275 parameter to the routine + */ + public void setF275(java.lang.Number value) { + setNumber(F275, value); + } + + /** + * Set the F275 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF275(org.jooq.Field field) { + setNumber(F275, field); + } + + /** + * Set the F276 parameter to the routine + */ + public void setF276(java.lang.Number value) { + setNumber(F276, value); + } + + /** + * Set the F276 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF276(org.jooq.Field field) { + setNumber(F276, field); + } + + /** + * Set the F277 parameter to the routine + */ + public void setF277(java.lang.Number value) { + setNumber(F277, value); + } + + /** + * Set the F277 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF277(org.jooq.Field field) { + setNumber(F277, field); + } + + /** + * Set the F278 parameter to the routine + */ + public void setF278(java.lang.Number value) { + setNumber(F278, value); + } + + /** + * Set the F278 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF278(org.jooq.Field field) { + setNumber(F278, field); + } + + /** + * Set the F279 parameter to the routine + */ + public void setF279(java.lang.Number value) { + setNumber(F279, value); + } + + /** + * Set the F279 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF279(org.jooq.Field field) { + setNumber(F279, field); + } + + /** + * Set the F280 parameter to the routine + */ + public void setF280(java.lang.Number value) { + setNumber(F280, value); + } + + /** + * Set the F280 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF280(org.jooq.Field field) { + setNumber(F280, field); + } + + /** + * Set the F281 parameter to the routine + */ + public void setF281(java.lang.Number value) { + setNumber(F281, value); + } + + /** + * Set the F281 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF281(org.jooq.Field field) { + setNumber(F281, field); + } + + /** + * Set the F282 parameter to the routine + */ + public void setF282(java.lang.Number value) { + setNumber(F282, value); + } + + /** + * Set the F282 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF282(org.jooq.Field field) { + setNumber(F282, field); + } + + /** + * Set the F283 parameter to the routine + */ + public void setF283(java.lang.Number value) { + setNumber(F283, value); + } + + /** + * Set the F283 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF283(org.jooq.Field field) { + setNumber(F283, field); + } + + /** + * Set the F284 parameter to the routine + */ + public void setF284(java.lang.Number value) { + setNumber(F284, value); + } + + /** + * Set the F284 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF284(org.jooq.Field field) { + setNumber(F284, field); + } + + /** + * Set the F285 parameter to the routine + */ + public void setF285(java.lang.Number value) { + setNumber(F285, value); + } + + /** + * Set the F285 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF285(org.jooq.Field field) { + setNumber(F285, field); + } + + /** + * Set the F286 parameter to the routine + */ + public void setF286(java.lang.Number value) { + setNumber(F286, value); + } + + /** + * Set the F286 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF286(org.jooq.Field field) { + setNumber(F286, field); + } + + /** + * Set the F287 parameter to the routine + */ + public void setF287(java.lang.Number value) { + setNumber(F287, value); + } + + /** + * Set the F287 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF287(org.jooq.Field field) { + setNumber(F287, field); + } + + /** + * Set the F288 parameter to the routine + */ + public void setF288(java.lang.Number value) { + setNumber(F288, value); + } + + /** + * Set the F288 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF288(org.jooq.Field field) { + setNumber(F288, field); + } + + /** + * Set the F289 parameter to the routine + */ + public void setF289(java.lang.Number value) { + setNumber(F289, value); + } + + /** + * Set the F289 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF289(org.jooq.Field field) { + setNumber(F289, field); + } + + /** + * Set the F290 parameter to the routine + */ + public void setF290(java.lang.Number value) { + setNumber(F290, value); + } + + /** + * Set the F290 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF290(org.jooq.Field field) { + setNumber(F290, field); + } + + /** + * Set the F291 parameter to the routine + */ + public void setF291(java.lang.Number value) { + setNumber(F291, value); + } + + /** + * Set the F291 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF291(org.jooq.Field field) { + setNumber(F291, field); + } + + /** + * Set the F292 parameter to the routine + */ + public void setF292(java.lang.Number value) { + setNumber(F292, value); + } + + /** + * Set the F292 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF292(org.jooq.Field field) { + setNumber(F292, field); + } + + /** + * Set the F293 parameter to the routine + */ + public void setF293(java.lang.Number value) { + setNumber(F293, value); + } + + /** + * Set the F293 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF293(org.jooq.Field field) { + setNumber(F293, field); + } + + /** + * Set the F294 parameter to the routine + */ + public void setF294(java.lang.Number value) { + setNumber(F294, value); + } + + /** + * Set the F294 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF294(org.jooq.Field field) { + setNumber(F294, field); + } + + /** + * Set the F295 parameter to the routine + */ + public void setF295(java.lang.Number value) { + setNumber(F295, value); + } + + /** + * Set the F295 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF295(org.jooq.Field field) { + setNumber(F295, field); + } + + /** + * Set the F296 parameter to the routine + */ + public void setF296(java.lang.Number value) { + setNumber(F296, value); + } + + /** + * Set the F296 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF296(org.jooq.Field field) { + setNumber(F296, field); + } + + /** + * Set the F297 parameter to the routine + */ + public void setF297(java.lang.Number value) { + setNumber(F297, value); + } + + /** + * Set the F297 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF297(org.jooq.Field field) { + setNumber(F297, field); + } + + /** + * Set the F298 parameter to the routine + */ + public void setF298(java.lang.Number value) { + setNumber(F298, value); + } + + /** + * Set the F298 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF298(org.jooq.Field field) { + setNumber(F298, field); + } + + /** + * Set the F299 parameter to the routine + */ + public void setF299(java.lang.Number value) { + setNumber(F299, value); + } + + /** + * Set the F299 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF299(org.jooq.Field field) { + setNumber(F299, field); + } + + /** + * Set the F300 parameter to the routine + */ + public void setF300(java.lang.Number value) { + setNumber(F300, value); + } + + /** + * Set the F300 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF300(org.jooq.Field field) { + setNumber(F300, field); + } + + /** + * Set the F301 parameter to the routine + */ + public void setF301(java.lang.Number value) { + setNumber(F301, value); + } + + /** + * Set the F301 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF301(org.jooq.Field field) { + setNumber(F301, field); + } + + /** + * Set the F302 parameter to the routine + */ + public void setF302(java.lang.Number value) { + setNumber(F302, value); + } + + /** + * Set the F302 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF302(org.jooq.Field field) { + setNumber(F302, field); + } + + /** + * Set the F303 parameter to the routine + */ + public void setF303(java.lang.Number value) { + setNumber(F303, value); + } + + /** + * Set the F303 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF303(org.jooq.Field field) { + setNumber(F303, field); + } + + /** + * Set the F304 parameter to the routine + */ + public void setF304(java.lang.Number value) { + setNumber(F304, value); + } + + /** + * Set the F304 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF304(org.jooq.Field field) { + setNumber(F304, field); + } + + /** + * Set the F305 parameter to the routine + */ + public void setF305(java.lang.Number value) { + setNumber(F305, value); + } + + /** + * Set the F305 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF305(org.jooq.Field field) { + setNumber(F305, field); + } + + /** + * Set the F306 parameter to the routine + */ + public void setF306(java.lang.Number value) { + setNumber(F306, value); + } + + /** + * Set the F306 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF306(org.jooq.Field field) { + setNumber(F306, field); + } + + /** + * Set the F307 parameter to the routine + */ + public void setF307(java.lang.Number value) { + setNumber(F307, value); + } + + /** + * Set the F307 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF307(org.jooq.Field field) { + setNumber(F307, field); + } + + /** + * Set the F308 parameter to the routine + */ + public void setF308(java.lang.Number value) { + setNumber(F308, value); + } + + /** + * Set the F308 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF308(org.jooq.Field field) { + setNumber(F308, field); + } + + /** + * Set the F309 parameter to the routine + */ + public void setF309(java.lang.Number value) { + setNumber(F309, value); + } + + /** + * Set the F309 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF309(org.jooq.Field field) { + setNumber(F309, field); + } + + /** + * Set the F310 parameter to the routine + */ + public void setF310(java.lang.Number value) { + setNumber(F310, value); + } + + /** + * Set the F310 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF310(org.jooq.Field field) { + setNumber(F310, field); + } + + /** + * Set the F311 parameter to the routine + */ + public void setF311(java.lang.Number value) { + setNumber(F311, value); + } + + /** + * Set the F311 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF311(org.jooq.Field field) { + setNumber(F311, field); + } + + /** + * Set the F312 parameter to the routine + */ + public void setF312(java.lang.Number value) { + setNumber(F312, value); + } + + /** + * Set the F312 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF312(org.jooq.Field field) { + setNumber(F312, field); + } + + /** + * Set the F313 parameter to the routine + */ + public void setF313(java.lang.Number value) { + setNumber(F313, value); + } + + /** + * Set the F313 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF313(org.jooq.Field field) { + setNumber(F313, field); + } + + /** + * Set the F314 parameter to the routine + */ + public void setF314(java.lang.Number value) { + setNumber(F314, value); + } + + /** + * Set the F314 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF314(org.jooq.Field field) { + setNumber(F314, field); + } + + /** + * Set the F315 parameter to the routine + */ + public void setF315(java.lang.Number value) { + setNumber(F315, value); + } + + /** + * Set the F315 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF315(org.jooq.Field field) { + setNumber(F315, field); + } + + /** + * Set the F316 parameter to the routine + */ + public void setF316(java.lang.Number value) { + setNumber(F316, value); + } + + /** + * Set the F316 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF316(org.jooq.Field field) { + setNumber(F316, field); + } + + /** + * Set the F317 parameter to the routine + */ + public void setF317(java.lang.Number value) { + setNumber(F317, value); + } + + /** + * Set the F317 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF317(org.jooq.Field field) { + setNumber(F317, field); + } + + /** + * Set the F318 parameter to the routine + */ + public void setF318(java.lang.Number value) { + setNumber(F318, value); + } + + /** + * Set the F318 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF318(org.jooq.Field field) { + setNumber(F318, field); + } + + /** + * Set the F319 parameter to the routine + */ + public void setF319(java.lang.Number value) { + setNumber(F319, value); + } + + /** + * Set the F319 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF319(org.jooq.Field field) { + setNumber(F319, field); + } + + /** + * Set the F320 parameter to the routine + */ + public void setF320(java.lang.Number value) { + setNumber(F320, value); + } + + /** + * Set the F320 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF320(org.jooq.Field field) { + setNumber(F320, field); + } + + /** + * Set the F321 parameter to the routine + */ + public void setF321(java.lang.Number value) { + setNumber(F321, value); + } + + /** + * Set the F321 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF321(org.jooq.Field field) { + setNumber(F321, field); + } + + /** + * Set the F322 parameter to the routine + */ + public void setF322(java.lang.Number value) { + setNumber(F322, value); + } + + /** + * Set the F322 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF322(org.jooq.Field field) { + setNumber(F322, field); + } + + /** + * Set the F323 parameter to the routine + */ + public void setF323(java.lang.Number value) { + setNumber(F323, value); + } + + /** + * Set the F323 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF323(org.jooq.Field field) { + setNumber(F323, field); + } + + /** + * Set the F324 parameter to the routine + */ + public void setF324(java.lang.Number value) { + setNumber(F324, value); + } + + /** + * Set the F324 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF324(org.jooq.Field field) { + setNumber(F324, field); + } + + /** + * Set the F325 parameter to the routine + */ + public void setF325(java.lang.Number value) { + setNumber(F325, value); + } + + /** + * Set the F325 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF325(org.jooq.Field field) { + setNumber(F325, field); + } + + /** + * Set the F326 parameter to the routine + */ + public void setF326(java.lang.Number value) { + setNumber(F326, value); + } + + /** + * Set the F326 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF326(org.jooq.Field field) { + setNumber(F326, field); + } + + /** + * Set the F327 parameter to the routine + */ + public void setF327(java.lang.Number value) { + setNumber(F327, value); + } + + /** + * Set the F327 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF327(org.jooq.Field field) { + setNumber(F327, field); + } + + /** + * Set the F328 parameter to the routine + */ + public void setF328(java.lang.Number value) { + setNumber(F328, value); + } + + /** + * Set the F328 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF328(org.jooq.Field field) { + setNumber(F328, field); + } + + /** + * Set the F329 parameter to the routine + */ + public void setF329(java.lang.Number value) { + setNumber(F329, value); + } + + /** + * Set the F329 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF329(org.jooq.Field field) { + setNumber(F329, field); + } + + /** + * Set the F330 parameter to the routine + */ + public void setF330(java.lang.Number value) { + setNumber(F330, value); + } + + /** + * Set the F330 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF330(org.jooq.Field field) { + setNumber(F330, field); + } + + /** + * Set the F331 parameter to the routine + */ + public void setF331(java.lang.Number value) { + setNumber(F331, value); + } + + /** + * Set the F331 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF331(org.jooq.Field field) { + setNumber(F331, field); + } + + /** + * Set the F332 parameter to the routine + */ + public void setF332(java.lang.Number value) { + setNumber(F332, value); + } + + /** + * Set the F332 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF332(org.jooq.Field field) { + setNumber(F332, field); + } + + /** + * Set the F333 parameter to the routine + */ + public void setF333(java.lang.Number value) { + setNumber(F333, value); + } + + /** + * Set the F333 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF333(org.jooq.Field field) { + setNumber(F333, field); + } + + /** + * Set the F334 parameter to the routine + */ + public void setF334(java.lang.Number value) { + setNumber(F334, value); + } + + /** + * Set the F334 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF334(org.jooq.Field field) { + setNumber(F334, field); + } + + /** + * Set the F335 parameter to the routine + */ + public void setF335(java.lang.Number value) { + setNumber(F335, value); + } + + /** + * Set the F335 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF335(org.jooq.Field field) { + setNumber(F335, field); + } + + /** + * Set the F336 parameter to the routine + */ + public void setF336(java.lang.Number value) { + setNumber(F336, value); + } + + /** + * Set the F336 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF336(org.jooq.Field field) { + setNumber(F336, field); + } + + /** + * Set the F337 parameter to the routine + */ + public void setF337(java.lang.Number value) { + setNumber(F337, value); + } + + /** + * Set the F337 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF337(org.jooq.Field field) { + setNumber(F337, field); + } + + /** + * Set the F338 parameter to the routine + */ + public void setF338(java.lang.Number value) { + setNumber(F338, value); + } + + /** + * Set the F338 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF338(org.jooq.Field field) { + setNumber(F338, field); + } + + /** + * Set the F339 parameter to the routine + */ + public void setF339(java.lang.Number value) { + setNumber(F339, value); + } + + /** + * Set the F339 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF339(org.jooq.Field field) { + setNumber(F339, field); + } + + /** + * Set the F340 parameter to the routine + */ + public void setF340(java.lang.Number value) { + setNumber(F340, value); + } + + /** + * Set the F340 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF340(org.jooq.Field field) { + setNumber(F340, field); + } + + /** + * Set the F341 parameter to the routine + */ + public void setF341(java.lang.Number value) { + setNumber(F341, value); + } + + /** + * Set the F341 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF341(org.jooq.Field field) { + setNumber(F341, field); + } + + /** + * Set the F342 parameter to the routine + */ + public void setF342(java.lang.Number value) { + setNumber(F342, value); + } + + /** + * Set the F342 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF342(org.jooq.Field field) { + setNumber(F342, field); + } + + /** + * Set the F343 parameter to the routine + */ + public void setF343(java.lang.Number value) { + setNumber(F343, value); + } + + /** + * Set the F343 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF343(org.jooq.Field field) { + setNumber(F343, field); + } + + /** + * Set the F344 parameter to the routine + */ + public void setF344(java.lang.Number value) { + setNumber(F344, value); + } + + /** + * Set the F344 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF344(org.jooq.Field field) { + setNumber(F344, field); + } + + /** + * Set the F345 parameter to the routine + */ + public void setF345(java.lang.Number value) { + setNumber(F345, value); + } + + /** + * Set the F345 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF345(org.jooq.Field field) { + setNumber(F345, field); + } + + /** + * Set the F346 parameter to the routine + */ + public void setF346(java.lang.Number value) { + setNumber(F346, value); + } + + /** + * Set the F346 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF346(org.jooq.Field field) { + setNumber(F346, field); + } + + /** + * Set the F347 parameter to the routine + */ + public void setF347(java.lang.Number value) { + setNumber(F347, value); + } + + /** + * Set the F347 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF347(org.jooq.Field field) { + setNumber(F347, field); + } + + /** + * Set the F348 parameter to the routine + */ + public void setF348(java.lang.Number value) { + setNumber(F348, value); + } + + /** + * Set the F348 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF348(org.jooq.Field field) { + setNumber(F348, field); + } + + /** + * Set the F349 parameter to the routine + */ + public void setF349(java.lang.Number value) { + setNumber(F349, value); + } + + /** + * Set the F349 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF349(org.jooq.Field field) { + setNumber(F349, field); + } + + /** + * Set the F350 parameter to the routine + */ + public void setF350(java.lang.Number value) { + setNumber(F350, value); + } + + /** + * Set the F350 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF350(org.jooq.Field field) { + setNumber(F350, field); + } + + /** + * Set the F351 parameter to the routine + */ + public void setF351(java.lang.Number value) { + setNumber(F351, value); + } + + /** + * Set the F351 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF351(org.jooq.Field field) { + setNumber(F351, field); + } + + /** + * Set the F352 parameter to the routine + */ + public void setF352(java.lang.Number value) { + setNumber(F352, value); + } + + /** + * Set the F352 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF352(org.jooq.Field field) { + setNumber(F352, field); + } + + /** + * Set the F353 parameter to the routine + */ + public void setF353(java.lang.Number value) { + setNumber(F353, value); + } + + /** + * Set the F353 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF353(org.jooq.Field field) { + setNumber(F353, field); + } + + /** + * Set the F354 parameter to the routine + */ + public void setF354(java.lang.Number value) { + setNumber(F354, value); + } + + /** + * Set the F354 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF354(org.jooq.Field field) { + setNumber(F354, field); + } + + /** + * Set the F355 parameter to the routine + */ + public void setF355(java.lang.Number value) { + setNumber(F355, value); + } + + /** + * Set the F355 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF355(org.jooq.Field field) { + setNumber(F355, field); + } + + /** + * Set the F356 parameter to the routine + */ + public void setF356(java.lang.Number value) { + setNumber(F356, value); + } + + /** + * Set the F356 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF356(org.jooq.Field field) { + setNumber(F356, field); + } + + /** + * Set the F357 parameter to the routine + */ + public void setF357(java.lang.Number value) { + setNumber(F357, value); + } + + /** + * Set the F357 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF357(org.jooq.Field field) { + setNumber(F357, field); + } + + /** + * Set the F358 parameter to the routine + */ + public void setF358(java.lang.Number value) { + setNumber(F358, value); + } + + /** + * Set the F358 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF358(org.jooq.Field field) { + setNumber(F358, field); + } + + /** + * Set the F359 parameter to the routine + */ + public void setF359(java.lang.Number value) { + setNumber(F359, value); + } + + /** + * Set the F359 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF359(org.jooq.Field field) { + setNumber(F359, field); + } + + /** + * Set the F360 parameter to the routine + */ + public void setF360(java.lang.Number value) { + setNumber(F360, value); + } + + /** + * Set the F360 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF360(org.jooq.Field field) { + setNumber(F360, field); + } + + /** + * Set the F361 parameter to the routine + */ + public void setF361(java.lang.Number value) { + setNumber(F361, value); + } + + /** + * Set the F361 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF361(org.jooq.Field field) { + setNumber(F361, field); + } + + /** + * Set the F362 parameter to the routine + */ + public void setF362(java.lang.Number value) { + setNumber(F362, value); + } + + /** + * Set the F362 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF362(org.jooq.Field field) { + setNumber(F362, field); + } + + /** + * Set the F363 parameter to the routine + */ + public void setF363(java.lang.Number value) { + setNumber(F363, value); + } + + /** + * Set the F363 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF363(org.jooq.Field field) { + setNumber(F363, field); + } + + /** + * Set the F364 parameter to the routine + */ + public void setF364(java.lang.Number value) { + setNumber(F364, value); + } + + /** + * Set the F364 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF364(org.jooq.Field field) { + setNumber(F364, field); + } + + /** + * Set the F365 parameter to the routine + */ + public void setF365(java.lang.Number value) { + setNumber(F365, value); + } + + /** + * Set the F365 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF365(org.jooq.Field field) { + setNumber(F365, field); + } + + /** + * Set the F366 parameter to the routine + */ + public void setF366(java.lang.Number value) { + setNumber(F366, value); + } + + /** + * Set the F366 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF366(org.jooq.Field field) { + setNumber(F366, field); + } + + /** + * Set the F367 parameter to the routine + */ + public void setF367(java.lang.Number value) { + setNumber(F367, value); + } + + /** + * Set the F367 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF367(org.jooq.Field field) { + setNumber(F367, field); + } + + /** + * Set the F368 parameter to the routine + */ + public void setF368(java.lang.Number value) { + setNumber(F368, value); + } + + /** + * Set the F368 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF368(org.jooq.Field field) { + setNumber(F368, field); + } + + /** + * Set the F369 parameter to the routine + */ + public void setF369(java.lang.Number value) { + setNumber(F369, value); + } + + /** + * Set the F369 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF369(org.jooq.Field field) { + setNumber(F369, field); + } + + /** + * Set the F370 parameter to the routine + */ + public void setF370(java.lang.Number value) { + setNumber(F370, value); + } + + /** + * Set the F370 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF370(org.jooq.Field field) { + setNumber(F370, field); + } + + /** + * Set the F371 parameter to the routine + */ + public void setF371(java.lang.Number value) { + setNumber(F371, value); + } + + /** + * Set the F371 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF371(org.jooq.Field field) { + setNumber(F371, field); + } + + /** + * Set the F372 parameter to the routine + */ + public void setF372(java.lang.Number value) { + setNumber(F372, value); + } + + /** + * Set the F372 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF372(org.jooq.Field field) { + setNumber(F372, field); + } + + /** + * Set the F373 parameter to the routine + */ + public void setF373(java.lang.Number value) { + setNumber(F373, value); + } + + /** + * Set the F373 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF373(org.jooq.Field field) { + setNumber(F373, field); + } + + /** + * Set the F374 parameter to the routine + */ + public void setF374(java.lang.Number value) { + setNumber(F374, value); + } + + /** + * Set the F374 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF374(org.jooq.Field field) { + setNumber(F374, field); + } + + /** + * Set the F375 parameter to the routine + */ + public void setF375(java.lang.Number value) { + setNumber(F375, value); + } + + /** + * Set the F375 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF375(org.jooq.Field field) { + setNumber(F375, field); + } + + /** + * Set the F376 parameter to the routine + */ + public void setF376(java.lang.Number value) { + setNumber(F376, value); + } + + /** + * Set the F376 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF376(org.jooq.Field field) { + setNumber(F376, field); + } + + /** + * Set the F377 parameter to the routine + */ + public void setF377(java.lang.Number value) { + setNumber(F377, value); + } + + /** + * Set the F377 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF377(org.jooq.Field field) { + setNumber(F377, field); + } + + /** + * Set the F378 parameter to the routine + */ + public void setF378(java.lang.Number value) { + setNumber(F378, value); + } + + /** + * Set the F378 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF378(org.jooq.Field field) { + setNumber(F378, field); + } + + /** + * Set the F379 parameter to the routine + */ + public void setF379(java.lang.Number value) { + setNumber(F379, value); + } + + /** + * Set the F379 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF379(org.jooq.Field field) { + setNumber(F379, field); + } + + /** + * Set the F380 parameter to the routine + */ + public void setF380(java.lang.Number value) { + setNumber(F380, value); + } + + /** + * Set the F380 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF380(org.jooq.Field field) { + setNumber(F380, field); + } + + /** + * Set the F381 parameter to the routine + */ + public void setF381(java.lang.Number value) { + setNumber(F381, value); + } + + /** + * Set the F381 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF381(org.jooq.Field field) { + setNumber(F381, field); + } + + /** + * Set the F382 parameter to the routine + */ + public void setF382(java.lang.Number value) { + setNumber(F382, value); + } + + /** + * Set the F382 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF382(org.jooq.Field field) { + setNumber(F382, field); + } + + /** + * Set the F383 parameter to the routine + */ + public void setF383(java.lang.Number value) { + setNumber(F383, value); + } + + /** + * Set the F383 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF383(org.jooq.Field field) { + setNumber(F383, field); + } + + /** + * Set the F384 parameter to the routine + */ + public void setF384(java.lang.Number value) { + setNumber(F384, value); + } + + /** + * Set the F384 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF384(org.jooq.Field field) { + setNumber(F384, field); + } + + /** + * Set the F385 parameter to the routine + */ + public void setF385(java.lang.Number value) { + setNumber(F385, value); + } + + /** + * Set the F385 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF385(org.jooq.Field field) { + setNumber(F385, field); + } + + /** + * Set the F386 parameter to the routine + */ + public void setF386(java.lang.Number value) { + setNumber(F386, value); + } + + /** + * Set the F386 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF386(org.jooq.Field field) { + setNumber(F386, field); + } + + /** + * Set the F387 parameter to the routine + */ + public void setF387(java.lang.Number value) { + setNumber(F387, value); + } + + /** + * Set the F387 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF387(org.jooq.Field field) { + setNumber(F387, field); + } + + /** + * Set the F388 parameter to the routine + */ + public void setF388(java.lang.Number value) { + setNumber(F388, value); + } + + /** + * Set the F388 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF388(org.jooq.Field field) { + setNumber(F388, field); + } + + /** + * Set the F389 parameter to the routine + */ + public void setF389(java.lang.Number value) { + setNumber(F389, value); + } + + /** + * Set the F389 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF389(org.jooq.Field field) { + setNumber(F389, field); + } + + /** + * Set the F390 parameter to the routine + */ + public void setF390(java.lang.Number value) { + setNumber(F390, value); + } + + /** + * Set the F390 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF390(org.jooq.Field field) { + setNumber(F390, field); + } + + /** + * Set the F391 parameter to the routine + */ + public void setF391(java.lang.Number value) { + setNumber(F391, value); + } + + /** + * Set the F391 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF391(org.jooq.Field field) { + setNumber(F391, field); + } + + /** + * Set the F392 parameter to the routine + */ + public void setF392(java.lang.Number value) { + setNumber(F392, value); + } + + /** + * Set the F392 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF392(org.jooq.Field field) { + setNumber(F392, field); + } + + /** + * Set the F393 parameter to the routine + */ + public void setF393(java.lang.Number value) { + setNumber(F393, value); + } + + /** + * Set the F393 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF393(org.jooq.Field field) { + setNumber(F393, field); + } + + /** + * Set the F394 parameter to the routine + */ + public void setF394(java.lang.Number value) { + setNumber(F394, value); + } + + /** + * Set the F394 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF394(org.jooq.Field field) { + setNumber(F394, field); + } + + /** + * Set the F395 parameter to the routine + */ + public void setF395(java.lang.Number value) { + setNumber(F395, value); + } + + /** + * Set the F395 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF395(org.jooq.Field field) { + setNumber(F395, field); + } + + /** + * Set the F396 parameter to the routine + */ + public void setF396(java.lang.Number value) { + setNumber(F396, value); + } + + /** + * Set the F396 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF396(org.jooq.Field field) { + setNumber(F396, field); + } + + /** + * Set the F397 parameter to the routine + */ + public void setF397(java.lang.Number value) { + setNumber(F397, value); + } + + /** + * Set the F397 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF397(org.jooq.Field field) { + setNumber(F397, field); + } + + /** + * Set the F398 parameter to the routine + */ + public void setF398(java.lang.Number value) { + setNumber(F398, value); + } + + /** + * Set the F398 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF398(org.jooq.Field field) { + setNumber(F398, field); + } + + /** + * Set the F399 parameter to the routine + */ + public void setF399(java.lang.Number value) { + setNumber(F399, value); + } + + /** + * Set the F399 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF399(org.jooq.Field field) { + setNumber(F399, field); + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/routines/F_NUMBER.java b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/routines/F_NUMBER.java new file mode 100644 index 00000000000..71a417cb47b --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/routines/F_NUMBER.java @@ -0,0 +1,49 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle3.generatedclasses.routines; + +/** + * This class is generated by jOOQ. + */ +public class F_NUMBER extends org.jooq.impl.AbstractRoutine implements java.lang.Cloneable { + + private static final long serialVersionUID = 1113364804; + + + /** + * An uncommented item + */ + public static final org.jooq.Parameter RETURN_VALUE = createParameter("RETURN_VALUE", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter N = createParameter("N", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * Create a new routine call instance + */ + public F_NUMBER() { + super("F_NUMBER", org.jooq.test.oracle3.generatedclasses.TEST.TEST, org.jooq.impl.SQLDataType.NUMERIC); + + setReturnParameter(RETURN_VALUE); + addInParameter(N); + } + + /** + * Set the N parameter to the routine + */ + public void setN(java.lang.Number value) { + setNumber(N, value); + } + + /** + * Set the N parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setN(org.jooq.Field field) { + setNumber(N, field); + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/routines/F_ONE.java b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/routines/F_ONE.java new file mode 100644 index 00000000000..85a5bcd012a --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/routines/F_ONE.java @@ -0,0 +1,27 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle3.generatedclasses.routines; + +/** + * This class is generated by jOOQ. + */ +public class F_ONE extends org.jooq.impl.AbstractRoutine implements java.lang.Cloneable { + + private static final long serialVersionUID = 1849254204; + + + /** + * An uncommented item + */ + public static final org.jooq.Parameter RETURN_VALUE = createParameter("RETURN_VALUE", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * Create a new routine call instance + */ + public F_ONE() { + super("F_ONE", org.jooq.test.oracle3.generatedclasses.TEST.TEST, org.jooq.impl.SQLDataType.NUMERIC); + + setReturnParameter(RETURN_VALUE); + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/routines/F_PIPELINED_ARRAY1.java b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/routines/F_PIPELINED_ARRAY1.java new file mode 100644 index 00000000000..0e7a3202076 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/routines/F_PIPELINED_ARRAY1.java @@ -0,0 +1,27 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle3.generatedclasses.routines; + +/** + * This class is generated by jOOQ. + */ +public class F_PIPELINED_ARRAY1 extends org.jooq.impl.AbstractRoutine implements java.lang.Cloneable { + + private static final long serialVersionUID = -1879042659; + + + /** + * An uncommented item + */ + public static final org.jooq.Parameter RETURN_VALUE = createParameter("RETURN_VALUE", org.jooq.impl.SQLDataType.INTEGER.asArrayDataType(org.jooq.test.oracle3.generatedclasses.udt.records.U_NUMBER_ARRAY.class)); + + /** + * Create a new routine call instance + */ + public F_PIPELINED_ARRAY1() { + super("F_PIPELINED_ARRAY1", org.jooq.test.oracle3.generatedclasses.TEST.TEST, org.jooq.impl.SQLDataType.INTEGER.asArrayDataType(org.jooq.test.oracle3.generatedclasses.udt.records.U_NUMBER_ARRAY.class)); + + setReturnParameter(RETURN_VALUE); + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/routines/F_PIPELINED_ARRAY4.java b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/routines/F_PIPELINED_ARRAY4.java new file mode 100644 index 00000000000..8d5b8343534 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/routines/F_PIPELINED_ARRAY4.java @@ -0,0 +1,27 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle3.generatedclasses.routines; + +/** + * This class is generated by jOOQ. + */ +public class F_PIPELINED_ARRAY4 extends org.jooq.impl.AbstractRoutine implements java.lang.Cloneable { + + private static final long serialVersionUID = 492878750; + + + /** + * An uncommented item + */ + public static final org.jooq.Parameter RETURN_VALUE = createParameter("RETURN_VALUE", org.jooq.test.oracle3.generatedclasses.udt.U_BOOK_TYPE.U_BOOK_TYPE.getDataType().asArrayDataType(org.jooq.test.oracle3.generatedclasses.udt.records.U_BOOK_ARRAY.class)); + + /** + * Create a new routine call instance + */ + public F_PIPELINED_ARRAY4() { + super("F_PIPELINED_ARRAY4", org.jooq.test.oracle3.generatedclasses.TEST.TEST, org.jooq.test.oracle3.generatedclasses.udt.U_BOOK_TYPE.U_BOOK_TYPE.getDataType().asArrayDataType(org.jooq.test.oracle3.generatedclasses.udt.records.U_BOOK_ARRAY.class)); + + setReturnParameter(RETURN_VALUE); + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/routines/F_PIPELINED_TABLE1.java b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/routines/F_PIPELINED_TABLE1.java new file mode 100644 index 00000000000..ba0e40bf4f3 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/routines/F_PIPELINED_TABLE1.java @@ -0,0 +1,27 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle3.generatedclasses.routines; + +/** + * This class is generated by jOOQ. + */ +public class F_PIPELINED_TABLE1 extends org.jooq.impl.AbstractRoutine implements java.lang.Cloneable { + + private static final long serialVersionUID = -1042558414; + + + /** + * An uncommented item + */ + public static final org.jooq.Parameter RETURN_VALUE = createParameter("RETURN_VALUE", org.jooq.impl.SQLDataType.INTEGER.asArrayDataType(org.jooq.test.oracle3.generatedclasses.udt.records.U_NUMBER_TABLE.class)); + + /** + * Create a new routine call instance + */ + public F_PIPELINED_TABLE1() { + super("F_PIPELINED_TABLE1", org.jooq.test.oracle3.generatedclasses.TEST.TEST, org.jooq.impl.SQLDataType.INTEGER.asArrayDataType(org.jooq.test.oracle3.generatedclasses.udt.records.U_NUMBER_TABLE.class)); + + setReturnParameter(RETURN_VALUE); + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/routines/F_PIPELINED_TABLE4.java b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/routines/F_PIPELINED_TABLE4.java new file mode 100644 index 00000000000..36895b818ee --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/routines/F_PIPELINED_TABLE4.java @@ -0,0 +1,27 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle3.generatedclasses.routines; + +/** + * This class is generated by jOOQ. + */ +public class F_PIPELINED_TABLE4 extends org.jooq.impl.AbstractRoutine implements java.lang.Cloneable { + + private static final long serialVersionUID = 1778157565; + + + /** + * An uncommented item + */ + public static final org.jooq.Parameter RETURN_VALUE = createParameter("RETURN_VALUE", org.jooq.test.oracle3.generatedclasses.udt.U_BOOK_TYPE.U_BOOK_TYPE.getDataType().asArrayDataType(org.jooq.test.oracle3.generatedclasses.udt.records.U_BOOK_TABLE.class)); + + /** + * Create a new routine call instance + */ + public F_PIPELINED_TABLE4() { + super("F_PIPELINED_TABLE4", org.jooq.test.oracle3.generatedclasses.TEST.TEST, org.jooq.test.oracle3.generatedclasses.udt.U_BOOK_TYPE.U_BOOK_TYPE.getDataType().asArrayDataType(org.jooq.test.oracle3.generatedclasses.udt.records.U_BOOK_TABLE.class)); + + setReturnParameter(RETURN_VALUE); + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/routines/F_TABLES1.java b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/routines/F_TABLES1.java new file mode 100644 index 00000000000..b4a2d26f388 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/routines/F_TABLES1.java @@ -0,0 +1,49 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle3.generatedclasses.routines; + +/** + * This class is generated by jOOQ. + */ +public class F_TABLES1 extends org.jooq.impl.AbstractRoutine implements java.lang.Cloneable { + + private static final long serialVersionUID = 1339588224; + + + /** + * An uncommented item + */ + public static final org.jooq.Parameter RETURN_VALUE = createParameter("RETURN_VALUE", org.jooq.impl.SQLDataType.INTEGER.asArrayDataType(org.jooq.test.oracle3.generatedclasses.udt.records.U_NUMBER_TABLE.class)); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter IN_TABLE = createParameter("IN_TABLE", org.jooq.impl.SQLDataType.INTEGER.asArrayDataType(org.jooq.test.oracle3.generatedclasses.udt.records.U_NUMBER_TABLE.class)); + + /** + * Create a new routine call instance + */ + public F_TABLES1() { + super("F_TABLES1", org.jooq.test.oracle3.generatedclasses.TEST.TEST, org.jooq.impl.SQLDataType.INTEGER.asArrayDataType(org.jooq.test.oracle3.generatedclasses.udt.records.U_NUMBER_TABLE.class)); + + setReturnParameter(RETURN_VALUE); + addInParameter(IN_TABLE); + } + + /** + * Set the IN_TABLE parameter to the routine + */ + public void setIN_TABLE(org.jooq.test.oracle3.generatedclasses.udt.records.U_NUMBER_TABLE value) { + setValue(IN_TABLE, value); + } + + /** + * Set the IN_TABLE parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setIN_TABLE(org.jooq.Field field) { + setField(IN_TABLE, field); + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/routines/F_TABLES2.java b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/routines/F_TABLES2.java new file mode 100644 index 00000000000..948cbf7c7f1 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/routines/F_TABLES2.java @@ -0,0 +1,49 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle3.generatedclasses.routines; + +/** + * This class is generated by jOOQ. + */ +public class F_TABLES2 extends org.jooq.impl.AbstractRoutine implements java.lang.Cloneable { + + private static final long serialVersionUID = -1667903046; + + + /** + * An uncommented item + */ + public static final org.jooq.Parameter RETURN_VALUE = createParameter("RETURN_VALUE", org.jooq.impl.SQLDataType.BIGINT.asArrayDataType(org.jooq.test.oracle3.generatedclasses.udt.records.U_NUMBER_LONG_TABLE.class)); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter IN_TABLE = createParameter("IN_TABLE", org.jooq.impl.SQLDataType.BIGINT.asArrayDataType(org.jooq.test.oracle3.generatedclasses.udt.records.U_NUMBER_LONG_TABLE.class)); + + /** + * Create a new routine call instance + */ + public F_TABLES2() { + super("F_TABLES2", org.jooq.test.oracle3.generatedclasses.TEST.TEST, org.jooq.impl.SQLDataType.BIGINT.asArrayDataType(org.jooq.test.oracle3.generatedclasses.udt.records.U_NUMBER_LONG_TABLE.class)); + + setReturnParameter(RETURN_VALUE); + addInParameter(IN_TABLE); + } + + /** + * Set the IN_TABLE parameter to the routine + */ + public void setIN_TABLE(org.jooq.test.oracle3.generatedclasses.udt.records.U_NUMBER_LONG_TABLE value) { + setValue(IN_TABLE, value); + } + + /** + * Set the IN_TABLE parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setIN_TABLE(org.jooq.Field field) { + setField(IN_TABLE, field); + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/routines/F_TABLES3.java b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/routines/F_TABLES3.java new file mode 100644 index 00000000000..c5fb8bfaf92 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/routines/F_TABLES3.java @@ -0,0 +1,49 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle3.generatedclasses.routines; + +/** + * This class is generated by jOOQ. + */ +public class F_TABLES3 extends org.jooq.impl.AbstractRoutine implements java.lang.Cloneable { + + private static final long serialVersionUID = -1759120651; + + + /** + * An uncommented item + */ + public static final org.jooq.Parameter RETURN_VALUE = createParameter("RETURN_VALUE", org.jooq.impl.SQLDataType.VARCHAR.asArrayDataType(org.jooq.test.oracle3.generatedclasses.udt.records.U_STRING_TABLE.class)); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter IN_TABLE = createParameter("IN_TABLE", org.jooq.impl.SQLDataType.VARCHAR.asArrayDataType(org.jooq.test.oracle3.generatedclasses.udt.records.U_STRING_TABLE.class)); + + /** + * Create a new routine call instance + */ + public F_TABLES3() { + super("F_TABLES3", org.jooq.test.oracle3.generatedclasses.TEST.TEST, org.jooq.impl.SQLDataType.VARCHAR.asArrayDataType(org.jooq.test.oracle3.generatedclasses.udt.records.U_STRING_TABLE.class)); + + setReturnParameter(RETURN_VALUE); + addInParameter(IN_TABLE); + } + + /** + * Set the IN_TABLE parameter to the routine + */ + public void setIN_TABLE(org.jooq.test.oracle3.generatedclasses.udt.records.U_STRING_TABLE value) { + setValue(IN_TABLE, value); + } + + /** + * Set the IN_TABLE parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setIN_TABLE(org.jooq.Field field) { + setField(IN_TABLE, field); + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/routines/F_TABLES4.java b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/routines/F_TABLES4.java new file mode 100644 index 00000000000..64cb509d7b1 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/routines/F_TABLES4.java @@ -0,0 +1,49 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle3.generatedclasses.routines; + +/** + * This class is generated by jOOQ. + */ +public class F_TABLES4 extends org.jooq.impl.AbstractRoutine implements java.lang.Cloneable { + + private static final long serialVersionUID = 651920041; + + + /** + * An uncommented item + */ + public static final org.jooq.Parameter RETURN_VALUE = createParameter("RETURN_VALUE", org.jooq.test.oracle3.generatedclasses.udt.U_BOOK_TYPE.U_BOOK_TYPE.getDataType().asArrayDataType(org.jooq.test.oracle3.generatedclasses.udt.records.U_BOOK_TABLE.class)); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter IN_TABLE = createParameter("IN_TABLE", org.jooq.test.oracle3.generatedclasses.udt.U_BOOK_TYPE.U_BOOK_TYPE.getDataType().asArrayDataType(org.jooq.test.oracle3.generatedclasses.udt.records.U_BOOK_TABLE.class)); + + /** + * Create a new routine call instance + */ + public F_TABLES4() { + super("F_TABLES4", org.jooq.test.oracle3.generatedclasses.TEST.TEST, org.jooq.test.oracle3.generatedclasses.udt.U_BOOK_TYPE.U_BOOK_TYPE.getDataType().asArrayDataType(org.jooq.test.oracle3.generatedclasses.udt.records.U_BOOK_TABLE.class)); + + setReturnParameter(RETURN_VALUE); + addInParameter(IN_TABLE); + } + + /** + * Set the IN_TABLE parameter to the routine + */ + public void setIN_TABLE(org.jooq.test.oracle3.generatedclasses.udt.records.U_BOOK_TABLE value) { + setValue(IN_TABLE, value); + } + + /** + * Set the IN_TABLE parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setIN_TABLE(org.jooq.Field field) { + setField(IN_TABLE, field); + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/routines/P377.java b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/routines/P377.java new file mode 100644 index 00000000000..4c74bfe1e10 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/routines/P377.java @@ -0,0 +1,20 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle3.generatedclasses.routines; + +/** + * This class is generated by jOOQ. + */ +public class P377 extends org.jooq.impl.AbstractRoutine implements java.lang.Cloneable { + + private static final long serialVersionUID = -867488349; + + + /** + * Create a new routine call instance + */ + public P377() { + super("P377", org.jooq.test.oracle3.generatedclasses.TEST.TEST); + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/routines/P391.java b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/routines/P391.java new file mode 100644 index 00000000000..b770b6e6d53 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/routines/P391.java @@ -0,0 +1,101 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle3.generatedclasses.routines; + +/** + * This class is generated by jOOQ. + */ +public class P391 extends org.jooq.impl.AbstractRoutine implements java.lang.Cloneable { + + private static final long serialVersionUID = 343147106; + + + /** + * An uncommented item + */ + public static final org.jooq.Parameter I1 = createParameter("I1", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter IO1 = createParameter("IO1", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter O1 = createParameter("O1", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter O2 = createParameter("O2", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter IO2 = createParameter("IO2", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter I2 = createParameter("I2", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * Create a new routine call instance + */ + public P391() { + super("P391", org.jooq.test.oracle3.generatedclasses.TEST.TEST); + + addInParameter(I1); + addInOutParameter(IO1); + addOutParameter(O1); + addOutParameter(O2); + addInOutParameter(IO2); + addInParameter(I2); + } + + /** + * Set the I1 parameter to the routine + */ + public void setI1(java.lang.Number value) { + setNumber(I1, value); + } + + /** + * Set the IO1 parameter to the routine + */ + public void setIO1(java.lang.Number value) { + setNumber(IO1, value); + } + + /** + * Set the IO2 parameter to the routine + */ + public void setIO2(java.lang.Number value) { + setNumber(IO2, value); + } + + /** + * Set the I2 parameter to the routine + */ + public void setI2(java.lang.Number value) { + setNumber(I2, value); + } + + public java.math.BigDecimal getIO1() { + return getValue(IO1); + } + + public java.math.BigDecimal getO1() { + return getValue(O1); + } + + public java.math.BigDecimal getO2() { + return getValue(O2); + } + + public java.math.BigDecimal getIO2() { + return getValue(IO2); + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/routines/P_ARRAYS1.java b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/routines/P_ARRAYS1.java new file mode 100644 index 00000000000..91ca085df72 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/routines/P_ARRAYS1.java @@ -0,0 +1,44 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle3.generatedclasses.routines; + +/** + * This class is generated by jOOQ. + */ +public class P_ARRAYS1 extends org.jooq.impl.AbstractRoutine implements java.lang.Cloneable { + + private static final long serialVersionUID = -202715951; + + + /** + * An uncommented item + */ + public static final org.jooq.Parameter IN_ARRAY = createParameter("IN_ARRAY", org.jooq.impl.SQLDataType.INTEGER.asArrayDataType(org.jooq.test.oracle3.generatedclasses.udt.records.U_NUMBER_ARRAY.class)); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter OUT_ARRAY = createParameter("OUT_ARRAY", org.jooq.impl.SQLDataType.INTEGER.asArrayDataType(org.jooq.test.oracle3.generatedclasses.udt.records.U_NUMBER_ARRAY.class)); + + /** + * Create a new routine call instance + */ + public P_ARRAYS1() { + super("P_ARRAYS1", org.jooq.test.oracle3.generatedclasses.TEST.TEST); + + addInParameter(IN_ARRAY); + addOutParameter(OUT_ARRAY); + } + + /** + * Set the IN_ARRAY parameter to the routine + */ + public void setIN_ARRAY(org.jooq.test.oracle3.generatedclasses.udt.records.U_NUMBER_ARRAY value) { + setValue(IN_ARRAY, value); + } + + public org.jooq.test.oracle3.generatedclasses.udt.records.U_NUMBER_ARRAY getOUT_ARRAY() { + return getValue(OUT_ARRAY); + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/routines/P_ARRAYS2.java b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/routines/P_ARRAYS2.java new file mode 100644 index 00000000000..fdad5e160c1 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/routines/P_ARRAYS2.java @@ -0,0 +1,44 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle3.generatedclasses.routines; + +/** + * This class is generated by jOOQ. + */ +public class P_ARRAYS2 extends org.jooq.impl.AbstractRoutine implements java.lang.Cloneable { + + private static final long serialVersionUID = -1009910156; + + + /** + * An uncommented item + */ + public static final org.jooq.Parameter IN_ARRAY = createParameter("IN_ARRAY", org.jooq.impl.SQLDataType.BIGINT.asArrayDataType(org.jooq.test.oracle3.generatedclasses.udt.records.U_NUMBER_LONG_ARRAY.class)); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter OUT_ARRAY = createParameter("OUT_ARRAY", org.jooq.impl.SQLDataType.BIGINT.asArrayDataType(org.jooq.test.oracle3.generatedclasses.udt.records.U_NUMBER_LONG_ARRAY.class)); + + /** + * Create a new routine call instance + */ + public P_ARRAYS2() { + super("P_ARRAYS2", org.jooq.test.oracle3.generatedclasses.TEST.TEST); + + addInParameter(IN_ARRAY); + addOutParameter(OUT_ARRAY); + } + + /** + * Set the IN_ARRAY parameter to the routine + */ + public void setIN_ARRAY(org.jooq.test.oracle3.generatedclasses.udt.records.U_NUMBER_LONG_ARRAY value) { + setValue(IN_ARRAY, value); + } + + public org.jooq.test.oracle3.generatedclasses.udt.records.U_NUMBER_LONG_ARRAY getOUT_ARRAY() { + return getValue(OUT_ARRAY); + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/routines/P_ARRAYS3.java b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/routines/P_ARRAYS3.java new file mode 100644 index 00000000000..fe4b468c3b1 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/routines/P_ARRAYS3.java @@ -0,0 +1,44 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle3.generatedclasses.routines; + +/** + * This class is generated by jOOQ. + */ +public class P_ARRAYS3 extends org.jooq.impl.AbstractRoutine implements java.lang.Cloneable { + + private static final long serialVersionUID = -535735711; + + + /** + * An uncommented item + */ + public static final org.jooq.Parameter IN_ARRAY = createParameter("IN_ARRAY", org.jooq.impl.SQLDataType.VARCHAR.asArrayDataType(org.jooq.test.oracle3.generatedclasses.udt.records.U_STRING_ARRAY.class)); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter OUT_ARRAY = createParameter("OUT_ARRAY", org.jooq.impl.SQLDataType.VARCHAR.asArrayDataType(org.jooq.test.oracle3.generatedclasses.udt.records.U_STRING_ARRAY.class)); + + /** + * Create a new routine call instance + */ + public P_ARRAYS3() { + super("P_ARRAYS3", org.jooq.test.oracle3.generatedclasses.TEST.TEST); + + addInParameter(IN_ARRAY); + addOutParameter(OUT_ARRAY); + } + + /** + * Set the IN_ARRAY parameter to the routine + */ + public void setIN_ARRAY(org.jooq.test.oracle3.generatedclasses.udt.records.U_STRING_ARRAY value) { + setValue(IN_ARRAY, value); + } + + public org.jooq.test.oracle3.generatedclasses.udt.records.U_STRING_ARRAY getOUT_ARRAY() { + return getValue(OUT_ARRAY); + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/routines/P_ARRAYS4.java b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/routines/P_ARRAYS4.java new file mode 100644 index 00000000000..8f58bc3ebc8 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/routines/P_ARRAYS4.java @@ -0,0 +1,44 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle3.generatedclasses.routines; + +/** + * This class is generated by jOOQ. + */ +public class P_ARRAYS4 extends org.jooq.impl.AbstractRoutine implements java.lang.Cloneable { + + private static final long serialVersionUID = 1244300928; + + + /** + * An uncommented item + */ + public static final org.jooq.Parameter IN_ARRAY = createParameter("IN_ARRAY", org.jooq.test.oracle3.generatedclasses.udt.U_BOOK_TYPE.U_BOOK_TYPE.getDataType().asArrayDataType(org.jooq.test.oracle3.generatedclasses.udt.records.U_BOOK_ARRAY.class)); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter OUT_ARRAY = createParameter("OUT_ARRAY", org.jooq.test.oracle3.generatedclasses.udt.U_BOOK_TYPE.U_BOOK_TYPE.getDataType().asArrayDataType(org.jooq.test.oracle3.generatedclasses.udt.records.U_BOOK_ARRAY.class)); + + /** + * Create a new routine call instance + */ + public P_ARRAYS4() { + super("P_ARRAYS4", org.jooq.test.oracle3.generatedclasses.TEST.TEST); + + addInParameter(IN_ARRAY); + addOutParameter(OUT_ARRAY); + } + + /** + * Set the IN_ARRAY parameter to the routine + */ + public void setIN_ARRAY(org.jooq.test.oracle3.generatedclasses.udt.records.U_BOOK_ARRAY value) { + setValue(IN_ARRAY, value); + } + + public org.jooq.test.oracle3.generatedclasses.udt.records.U_BOOK_ARRAY getOUT_ARRAY() { + return getValue(OUT_ARRAY); + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/routines/P_AUTHOR_EXISTS.java b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/routines/P_AUTHOR_EXISTS.java new file mode 100644 index 00000000000..45c16830025 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/routines/P_AUTHOR_EXISTS.java @@ -0,0 +1,44 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle3.generatedclasses.routines; + +/** + * This class is generated by jOOQ. + */ +public class P_AUTHOR_EXISTS extends org.jooq.impl.AbstractRoutine implements java.lang.Cloneable { + + private static final long serialVersionUID = -772391527; + + + /** + * An uncommented item + */ + public static final org.jooq.Parameter AUTHOR_NAME = createParameter("AUTHOR_NAME", org.jooq.impl.SQLDataType.VARCHAR); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter RESULT = createParameter("RESULT", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * Create a new routine call instance + */ + public P_AUTHOR_EXISTS() { + super("P_AUTHOR_EXISTS", org.jooq.test.oracle3.generatedclasses.TEST.TEST); + + addInParameter(AUTHOR_NAME); + addOutParameter(RESULT); + } + + /** + * Set the AUTHOR_NAME parameter to the routine + */ + public void setAUTHOR_NAME(java.lang.String value) { + setValue(AUTHOR_NAME, value); + } + + public java.math.BigDecimal getRESULT() { + return getValue(RESULT); + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/routines/P_CREATE_AUTHOR.java b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/routines/P_CREATE_AUTHOR.java new file mode 100644 index 00000000000..7d24d18fb46 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/routines/P_CREATE_AUTHOR.java @@ -0,0 +1,20 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle3.generatedclasses.routines; + +/** + * This class is generated by jOOQ. + */ +public class P_CREATE_AUTHOR extends org.jooq.impl.AbstractRoutine implements java.lang.Cloneable { + + private static final long serialVersionUID = -277436149; + + + /** + * Create a new routine call instance + */ + public P_CREATE_AUTHOR() { + super("P_CREATE_AUTHOR", org.jooq.test.oracle3.generatedclasses.TEST.TEST); + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/routines/P_CREATE_AUTHOR_BY_NAME.java b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/routines/P_CREATE_AUTHOR_BY_NAME.java new file mode 100644 index 00000000000..86f01f24012 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/routines/P_CREATE_AUTHOR_BY_NAME.java @@ -0,0 +1,47 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle3.generatedclasses.routines; + +/** + * This class is generated by jOOQ. + */ +public class P_CREATE_AUTHOR_BY_NAME extends org.jooq.impl.AbstractRoutine implements java.lang.Cloneable { + + private static final long serialVersionUID = 1567405493; + + + /** + * An uncommented item + */ + public static final org.jooq.Parameter FIRST_NAME = createParameter("FIRST_NAME", org.jooq.impl.SQLDataType.VARCHAR); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter LAST_NAME = createParameter("LAST_NAME", org.jooq.impl.SQLDataType.VARCHAR); + + /** + * Create a new routine call instance + */ + public P_CREATE_AUTHOR_BY_NAME() { + super("P_CREATE_AUTHOR_BY_NAME", org.jooq.test.oracle3.generatedclasses.TEST.TEST); + + addInParameter(FIRST_NAME); + addInParameter(LAST_NAME); + } + + /** + * Set the FIRST_NAME parameter to the routine + */ + public void setFIRST_NAME(java.lang.String value) { + setValue(FIRST_NAME, value); + } + + /** + * Set the LAST_NAME parameter to the routine + */ + public void setLAST_NAME(java.lang.String value) { + setValue(LAST_NAME, value); + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/routines/P_DEFAULT.java b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/routines/P_DEFAULT.java new file mode 100644 index 00000000000..b4a8ce0021c --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/routines/P_DEFAULT.java @@ -0,0 +1,90 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle3.generatedclasses.routines; + +/** + * This class is generated by jOOQ. + */ +public class P_DEFAULT extends org.jooq.impl.AbstractRoutine implements java.lang.Cloneable { + + private static final long serialVersionUID = 2037862521; + + + /** + * An uncommented item + */ + public static final org.jooq.Parameter P_IN_NUMBER = createParameter("P_IN_NUMBER", org.jooq.impl.SQLDataType.NUMERIC, true); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter P_OUT_NUMBER = createParameter("P_OUT_NUMBER", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter P_IN_VARCHAR = createParameter("P_IN_VARCHAR", org.jooq.impl.SQLDataType.VARCHAR, true); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter P_OUT_VARCHAR = createParameter("P_OUT_VARCHAR", org.jooq.impl.SQLDataType.VARCHAR); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter P_IN_DATE = createParameter("P_IN_DATE", org.jooq.impl.SQLDataType.DATE, true); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter P_OUT_DATE = createParameter("P_OUT_DATE", org.jooq.impl.SQLDataType.DATE); + + /** + * Create a new routine call instance + */ + public P_DEFAULT() { + super("P_DEFAULT", org.jooq.test.oracle3.generatedclasses.TEST.TEST); + + addInParameter(P_IN_NUMBER); + addOutParameter(P_OUT_NUMBER); + addInParameter(P_IN_VARCHAR); + addOutParameter(P_OUT_VARCHAR); + addInParameter(P_IN_DATE); + addOutParameter(P_OUT_DATE); + } + + /** + * Set the P_IN_NUMBER parameter to the routine + */ + public void setP_IN_NUMBER(java.lang.Number value) { + setNumber(P_IN_NUMBER, value); + } + + /** + * Set the P_IN_VARCHAR parameter to the routine + */ + public void setP_IN_VARCHAR(java.lang.String value) { + setValue(P_IN_VARCHAR, value); + } + + /** + * Set the P_IN_DATE parameter to the routine + */ + public void setP_IN_DATE(java.sql.Date value) { + setValue(P_IN_DATE, value); + } + + public java.math.BigDecimal getP_OUT_NUMBER() { + return getValue(P_OUT_NUMBER); + } + + public java.lang.String getP_OUT_VARCHAR() { + return getValue(P_OUT_VARCHAR); + } + + public java.sql.Date getP_OUT_DATE() { + return getValue(P_OUT_DATE); + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/routines/P_ENHANCE_ADDRESS1.java b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/routines/P_ENHANCE_ADDRESS1.java new file mode 100644 index 00000000000..c7c917c131e --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/routines/P_ENHANCE_ADDRESS1.java @@ -0,0 +1,44 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle3.generatedclasses.routines; + +/** + * This class is generated by jOOQ. + */ +public class P_ENHANCE_ADDRESS1 extends org.jooq.impl.AbstractRoutine implements java.lang.Cloneable { + + private static final long serialVersionUID = -717990496; + + + /** + * An uncommented item + */ + public static final org.jooq.Parameter ADDRESS = createParameter("ADDRESS", org.jooq.test.oracle3.generatedclasses.udt.U_ADDRESS_TYPE.U_ADDRESS_TYPE.getDataType()); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter NO = createParameter("NO", org.jooq.impl.SQLDataType.VARCHAR); + + /** + * Create a new routine call instance + */ + public P_ENHANCE_ADDRESS1() { + super("P_ENHANCE_ADDRESS1", org.jooq.test.oracle3.generatedclasses.TEST.TEST); + + addInParameter(ADDRESS); + addOutParameter(NO); + } + + /** + * Set the ADDRESS parameter to the routine + */ + public void setADDRESS(org.jooq.test.oracle3.generatedclasses.udt.records.U_ADDRESS_TYPE value) { + setValue(ADDRESS, value); + } + + public java.lang.String getNO() { + return getValue(NO); + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/routines/P_ENHANCE_ADDRESS2.java b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/routines/P_ENHANCE_ADDRESS2.java new file mode 100644 index 00000000000..19c1acbf646 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/routines/P_ENHANCE_ADDRESS2.java @@ -0,0 +1,31 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle3.generatedclasses.routines; + +/** + * This class is generated by jOOQ. + */ +public class P_ENHANCE_ADDRESS2 extends org.jooq.impl.AbstractRoutine implements java.lang.Cloneable { + + private static final long serialVersionUID = 1612594378; + + + /** + * An uncommented item + */ + public static final org.jooq.Parameter ADDRESS = createParameter("ADDRESS", org.jooq.test.oracle3.generatedclasses.udt.U_ADDRESS_TYPE.U_ADDRESS_TYPE.getDataType()); + + /** + * Create a new routine call instance + */ + public P_ENHANCE_ADDRESS2() { + super("P_ENHANCE_ADDRESS2", org.jooq.test.oracle3.generatedclasses.TEST.TEST); + + addOutParameter(ADDRESS); + } + + public org.jooq.test.oracle3.generatedclasses.udt.records.U_ADDRESS_TYPE getADDRESS() { + return getValue(ADDRESS); + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/routines/P_ENHANCE_ADDRESS3.java b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/routines/P_ENHANCE_ADDRESS3.java new file mode 100644 index 00000000000..e1b037d3632 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/routines/P_ENHANCE_ADDRESS3.java @@ -0,0 +1,38 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle3.generatedclasses.routines; + +/** + * This class is generated by jOOQ. + */ +public class P_ENHANCE_ADDRESS3 extends org.jooq.impl.AbstractRoutine implements java.lang.Cloneable { + + private static final long serialVersionUID = -398682954; + + + /** + * An uncommented item + */ + public static final org.jooq.Parameter ADDRESS = createParameter("ADDRESS", org.jooq.test.oracle3.generatedclasses.udt.U_ADDRESS_TYPE.U_ADDRESS_TYPE.getDataType()); + + /** + * Create a new routine call instance + */ + public P_ENHANCE_ADDRESS3() { + super("P_ENHANCE_ADDRESS3", org.jooq.test.oracle3.generatedclasses.TEST.TEST); + + addInOutParameter(ADDRESS); + } + + /** + * Set the ADDRESS parameter to the routine + */ + public void setADDRESS(org.jooq.test.oracle3.generatedclasses.udt.records.U_ADDRESS_TYPE value) { + setValue(ADDRESS, value); + } + + public org.jooq.test.oracle3.generatedclasses.udt.records.U_ADDRESS_TYPE getADDRESS() { + return getValue(ADDRESS); + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/routines/P_GET_ONE_CURSOR.java b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/routines/P_GET_ONE_CURSOR.java new file mode 100644 index 00000000000..2c027bc21ec --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/routines/P_GET_ONE_CURSOR.java @@ -0,0 +1,54 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle3.generatedclasses.routines; + +/** + * This class is generated by jOOQ. + */ +public class P_GET_ONE_CURSOR extends org.jooq.impl.AbstractRoutine implements java.lang.Cloneable { + + private static final long serialVersionUID = -1799166685; + + + /** + * An uncommented item + */ + public static final org.jooq.Parameter TOTAL = createParameter("TOTAL", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter> BOOKS = createParameter("BOOKS", org.jooq.impl.SQLDataType.RESULT); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter BOOK_IDS = createParameter("BOOK_IDS", org.jooq.impl.SQLDataType.INTEGER.asArrayDataType(org.jooq.test.oracle3.generatedclasses.udt.records.U_NUMBER_ARRAY.class)); + + /** + * Create a new routine call instance + */ + public P_GET_ONE_CURSOR() { + super("P_GET_ONE_CURSOR", org.jooq.test.oracle3.generatedclasses.TEST.TEST); + + addOutParameter(TOTAL); + addOutParameter(BOOKS); + addInParameter(BOOK_IDS); + } + + /** + * Set the BOOK_IDS parameter to the routine + */ + public void setBOOK_IDS(org.jooq.test.oracle3.generatedclasses.udt.records.U_NUMBER_ARRAY value) { + setValue(BOOK_IDS, value); + } + + public java.math.BigDecimal getTOTAL() { + return getValue(TOTAL); + } + + public org.jooq.Result getBOOKS() { + return getValue(BOOKS); + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/routines/P_GET_TWO_CURSORS.java b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/routines/P_GET_TWO_CURSORS.java new file mode 100644 index 00000000000..51ed71f993d --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/routines/P_GET_TWO_CURSORS.java @@ -0,0 +1,41 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle3.generatedclasses.routines; + +/** + * This class is generated by jOOQ. + */ +public class P_GET_TWO_CURSORS extends org.jooq.impl.AbstractRoutine implements java.lang.Cloneable { + + private static final long serialVersionUID = 1305535992; + + + /** + * An uncommented item + */ + public static final org.jooq.Parameter> BOOKS = createParameter("BOOKS", org.jooq.impl.SQLDataType.RESULT); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter> AUTHORS = createParameter("AUTHORS", org.jooq.impl.SQLDataType.RESULT); + + /** + * Create a new routine call instance + */ + public P_GET_TWO_CURSORS() { + super("P_GET_TWO_CURSORS", org.jooq.test.oracle3.generatedclasses.TEST.TEST); + + addOutParameter(BOOKS); + addOutParameter(AUTHORS); + } + + public org.jooq.Result getBOOKS() { + return getValue(BOOKS); + } + + public org.jooq.Result getAUTHORS() { + return getValue(AUTHORS); + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/routines/P_MANY_PARAMETERS.java b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/routines/P_MANY_PARAMETERS.java new file mode 100644 index 00000000000..f2b348aba74 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/routines/P_MANY_PARAMETERS.java @@ -0,0 +1,5221 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle3.generatedclasses.routines; + +/** + * This class is generated by jOOQ. + */ +public class P_MANY_PARAMETERS extends org.jooq.impl.AbstractRoutine implements java.lang.Cloneable { + + private static final long serialVersionUID = 302927661; + + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F000 = createParameter("F000", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F001 = createParameter("F001", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F002 = createParameter("F002", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F003 = createParameter("F003", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F004 = createParameter("F004", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F005 = createParameter("F005", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F006 = createParameter("F006", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F007 = createParameter("F007", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F008 = createParameter("F008", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F009 = createParameter("F009", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F010 = createParameter("F010", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F011 = createParameter("F011", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F012 = createParameter("F012", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F013 = createParameter("F013", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F014 = createParameter("F014", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F015 = createParameter("F015", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F016 = createParameter("F016", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F017 = createParameter("F017", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F018 = createParameter("F018", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F019 = createParameter("F019", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F020 = createParameter("F020", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F021 = createParameter("F021", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F022 = createParameter("F022", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F023 = createParameter("F023", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F024 = createParameter("F024", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F025 = createParameter("F025", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F026 = createParameter("F026", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F027 = createParameter("F027", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F028 = createParameter("F028", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F029 = createParameter("F029", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F030 = createParameter("F030", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F031 = createParameter("F031", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F032 = createParameter("F032", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F033 = createParameter("F033", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F034 = createParameter("F034", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F035 = createParameter("F035", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F036 = createParameter("F036", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F037 = createParameter("F037", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F038 = createParameter("F038", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F039 = createParameter("F039", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F040 = createParameter("F040", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F041 = createParameter("F041", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F042 = createParameter("F042", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F043 = createParameter("F043", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F044 = createParameter("F044", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F045 = createParameter("F045", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F046 = createParameter("F046", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F047 = createParameter("F047", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F048 = createParameter("F048", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F049 = createParameter("F049", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F050 = createParameter("F050", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F051 = createParameter("F051", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F052 = createParameter("F052", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F053 = createParameter("F053", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F054 = createParameter("F054", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F055 = createParameter("F055", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F056 = createParameter("F056", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F057 = createParameter("F057", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F058 = createParameter("F058", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F059 = createParameter("F059", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F060 = createParameter("F060", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F061 = createParameter("F061", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F062 = createParameter("F062", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F063 = createParameter("F063", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F064 = createParameter("F064", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F065 = createParameter("F065", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F066 = createParameter("F066", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F067 = createParameter("F067", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F068 = createParameter("F068", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F069 = createParameter("F069", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F070 = createParameter("F070", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F071 = createParameter("F071", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F072 = createParameter("F072", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F073 = createParameter("F073", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F074 = createParameter("F074", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F075 = createParameter("F075", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F076 = createParameter("F076", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F077 = createParameter("F077", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F078 = createParameter("F078", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F079 = createParameter("F079", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F080 = createParameter("F080", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F081 = createParameter("F081", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F082 = createParameter("F082", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F083 = createParameter("F083", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F084 = createParameter("F084", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F085 = createParameter("F085", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F086 = createParameter("F086", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F087 = createParameter("F087", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F088 = createParameter("F088", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F089 = createParameter("F089", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F090 = createParameter("F090", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F091 = createParameter("F091", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F092 = createParameter("F092", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F093 = createParameter("F093", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F094 = createParameter("F094", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F095 = createParameter("F095", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F096 = createParameter("F096", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F097 = createParameter("F097", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F098 = createParameter("F098", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F099 = createParameter("F099", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F100 = createParameter("F100", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F101 = createParameter("F101", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F102 = createParameter("F102", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F103 = createParameter("F103", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F104 = createParameter("F104", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F105 = createParameter("F105", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F106 = createParameter("F106", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F107 = createParameter("F107", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F108 = createParameter("F108", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F109 = createParameter("F109", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F110 = createParameter("F110", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F111 = createParameter("F111", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F112 = createParameter("F112", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F113 = createParameter("F113", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F114 = createParameter("F114", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F115 = createParameter("F115", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F116 = createParameter("F116", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F117 = createParameter("F117", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F118 = createParameter("F118", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F119 = createParameter("F119", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F120 = createParameter("F120", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F121 = createParameter("F121", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F122 = createParameter("F122", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F123 = createParameter("F123", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F124 = createParameter("F124", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F125 = createParameter("F125", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F126 = createParameter("F126", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F127 = createParameter("F127", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F128 = createParameter("F128", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F129 = createParameter("F129", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F130 = createParameter("F130", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F131 = createParameter("F131", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F132 = createParameter("F132", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F133 = createParameter("F133", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F134 = createParameter("F134", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F135 = createParameter("F135", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F136 = createParameter("F136", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F137 = createParameter("F137", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F138 = createParameter("F138", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F139 = createParameter("F139", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F140 = createParameter("F140", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F141 = createParameter("F141", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F142 = createParameter("F142", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F143 = createParameter("F143", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F144 = createParameter("F144", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F145 = createParameter("F145", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F146 = createParameter("F146", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F147 = createParameter("F147", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F148 = createParameter("F148", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F149 = createParameter("F149", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F150 = createParameter("F150", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F151 = createParameter("F151", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F152 = createParameter("F152", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F153 = createParameter("F153", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F154 = createParameter("F154", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F155 = createParameter("F155", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F156 = createParameter("F156", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F157 = createParameter("F157", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F158 = createParameter("F158", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F159 = createParameter("F159", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F160 = createParameter("F160", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F161 = createParameter("F161", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F162 = createParameter("F162", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F163 = createParameter("F163", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F164 = createParameter("F164", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F165 = createParameter("F165", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F166 = createParameter("F166", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F167 = createParameter("F167", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F168 = createParameter("F168", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F169 = createParameter("F169", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F170 = createParameter("F170", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F171 = createParameter("F171", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F172 = createParameter("F172", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F173 = createParameter("F173", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F174 = createParameter("F174", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F175 = createParameter("F175", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F176 = createParameter("F176", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F177 = createParameter("F177", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F178 = createParameter("F178", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F179 = createParameter("F179", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F180 = createParameter("F180", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F181 = createParameter("F181", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F182 = createParameter("F182", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F183 = createParameter("F183", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F184 = createParameter("F184", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F185 = createParameter("F185", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F186 = createParameter("F186", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F187 = createParameter("F187", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F188 = createParameter("F188", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F189 = createParameter("F189", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F190 = createParameter("F190", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F191 = createParameter("F191", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F192 = createParameter("F192", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F193 = createParameter("F193", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F194 = createParameter("F194", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F195 = createParameter("F195", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F196 = createParameter("F196", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F197 = createParameter("F197", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F198 = createParameter("F198", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F199 = createParameter("F199", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F200 = createParameter("F200", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F201 = createParameter("F201", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F202 = createParameter("F202", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F203 = createParameter("F203", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F204 = createParameter("F204", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F205 = createParameter("F205", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F206 = createParameter("F206", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F207 = createParameter("F207", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F208 = createParameter("F208", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F209 = createParameter("F209", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F210 = createParameter("F210", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F211 = createParameter("F211", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F212 = createParameter("F212", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F213 = createParameter("F213", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F214 = createParameter("F214", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F215 = createParameter("F215", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F216 = createParameter("F216", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F217 = createParameter("F217", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F218 = createParameter("F218", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F219 = createParameter("F219", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F220 = createParameter("F220", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F221 = createParameter("F221", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F222 = createParameter("F222", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F223 = createParameter("F223", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F224 = createParameter("F224", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F225 = createParameter("F225", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F226 = createParameter("F226", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F227 = createParameter("F227", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F228 = createParameter("F228", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F229 = createParameter("F229", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F230 = createParameter("F230", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F231 = createParameter("F231", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F232 = createParameter("F232", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F233 = createParameter("F233", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F234 = createParameter("F234", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F235 = createParameter("F235", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F236 = createParameter("F236", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F237 = createParameter("F237", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F238 = createParameter("F238", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F239 = createParameter("F239", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F240 = createParameter("F240", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F241 = createParameter("F241", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F242 = createParameter("F242", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F243 = createParameter("F243", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F244 = createParameter("F244", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F245 = createParameter("F245", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F246 = createParameter("F246", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F247 = createParameter("F247", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F248 = createParameter("F248", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F249 = createParameter("F249", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F250 = createParameter("F250", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F251 = createParameter("F251", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F252 = createParameter("F252", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F253 = createParameter("F253", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F254 = createParameter("F254", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F255 = createParameter("F255", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F256 = createParameter("F256", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F257 = createParameter("F257", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F258 = createParameter("F258", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F259 = createParameter("F259", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F260 = createParameter("F260", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F261 = createParameter("F261", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F262 = createParameter("F262", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F263 = createParameter("F263", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F264 = createParameter("F264", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F265 = createParameter("F265", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F266 = createParameter("F266", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F267 = createParameter("F267", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F268 = createParameter("F268", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F269 = createParameter("F269", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F270 = createParameter("F270", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F271 = createParameter("F271", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F272 = createParameter("F272", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F273 = createParameter("F273", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F274 = createParameter("F274", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F275 = createParameter("F275", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F276 = createParameter("F276", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F277 = createParameter("F277", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F278 = createParameter("F278", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F279 = createParameter("F279", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F280 = createParameter("F280", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F281 = createParameter("F281", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F282 = createParameter("F282", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F283 = createParameter("F283", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F284 = createParameter("F284", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F285 = createParameter("F285", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F286 = createParameter("F286", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F287 = createParameter("F287", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F288 = createParameter("F288", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F289 = createParameter("F289", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F290 = createParameter("F290", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F291 = createParameter("F291", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F292 = createParameter("F292", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F293 = createParameter("F293", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F294 = createParameter("F294", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F295 = createParameter("F295", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F296 = createParameter("F296", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F297 = createParameter("F297", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F298 = createParameter("F298", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F299 = createParameter("F299", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F300 = createParameter("F300", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F301 = createParameter("F301", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F302 = createParameter("F302", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F303 = createParameter("F303", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F304 = createParameter("F304", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F305 = createParameter("F305", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F306 = createParameter("F306", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F307 = createParameter("F307", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F308 = createParameter("F308", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F309 = createParameter("F309", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F310 = createParameter("F310", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F311 = createParameter("F311", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F312 = createParameter("F312", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F313 = createParameter("F313", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F314 = createParameter("F314", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F315 = createParameter("F315", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F316 = createParameter("F316", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F317 = createParameter("F317", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F318 = createParameter("F318", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F319 = createParameter("F319", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F320 = createParameter("F320", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F321 = createParameter("F321", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F322 = createParameter("F322", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F323 = createParameter("F323", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F324 = createParameter("F324", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F325 = createParameter("F325", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F326 = createParameter("F326", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F327 = createParameter("F327", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F328 = createParameter("F328", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F329 = createParameter("F329", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F330 = createParameter("F330", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F331 = createParameter("F331", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F332 = createParameter("F332", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F333 = createParameter("F333", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F334 = createParameter("F334", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F335 = createParameter("F335", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F336 = createParameter("F336", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F337 = createParameter("F337", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F338 = createParameter("F338", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F339 = createParameter("F339", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F340 = createParameter("F340", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F341 = createParameter("F341", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F342 = createParameter("F342", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F343 = createParameter("F343", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F344 = createParameter("F344", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F345 = createParameter("F345", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F346 = createParameter("F346", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F347 = createParameter("F347", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F348 = createParameter("F348", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F349 = createParameter("F349", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F350 = createParameter("F350", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F351 = createParameter("F351", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F352 = createParameter("F352", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F353 = createParameter("F353", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F354 = createParameter("F354", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F355 = createParameter("F355", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F356 = createParameter("F356", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F357 = createParameter("F357", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F358 = createParameter("F358", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F359 = createParameter("F359", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F360 = createParameter("F360", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F361 = createParameter("F361", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F362 = createParameter("F362", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F363 = createParameter("F363", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F364 = createParameter("F364", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F365 = createParameter("F365", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F366 = createParameter("F366", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F367 = createParameter("F367", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F368 = createParameter("F368", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F369 = createParameter("F369", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F370 = createParameter("F370", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F371 = createParameter("F371", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F372 = createParameter("F372", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F373 = createParameter("F373", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F374 = createParameter("F374", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F375 = createParameter("F375", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F376 = createParameter("F376", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F377 = createParameter("F377", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F378 = createParameter("F378", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F379 = createParameter("F379", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F380 = createParameter("F380", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F381 = createParameter("F381", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F382 = createParameter("F382", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F383 = createParameter("F383", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F384 = createParameter("F384", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F385 = createParameter("F385", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F386 = createParameter("F386", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F387 = createParameter("F387", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F388 = createParameter("F388", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F389 = createParameter("F389", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F390 = createParameter("F390", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F391 = createParameter("F391", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F392 = createParameter("F392", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F393 = createParameter("F393", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F394 = createParameter("F394", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F395 = createParameter("F395", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F396 = createParameter("F396", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F397 = createParameter("F397", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F398 = createParameter("F398", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F399 = createParameter("F399", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * Create a new routine call instance + */ + public P_MANY_PARAMETERS() { + super("P_MANY_PARAMETERS", org.jooq.test.oracle3.generatedclasses.TEST.TEST); + + addInParameter(F000); + addInParameter(F001); + addInParameter(F002); + addInParameter(F003); + addInParameter(F004); + addInParameter(F005); + addInParameter(F006); + addInParameter(F007); + addInParameter(F008); + addInParameter(F009); + addInParameter(F010); + addInParameter(F011); + addInParameter(F012); + addInParameter(F013); + addInParameter(F014); + addInParameter(F015); + addInParameter(F016); + addInParameter(F017); + addInParameter(F018); + addInParameter(F019); + addInParameter(F020); + addInParameter(F021); + addInParameter(F022); + addInParameter(F023); + addInParameter(F024); + addInParameter(F025); + addInParameter(F026); + addInParameter(F027); + addInParameter(F028); + addInParameter(F029); + addInParameter(F030); + addInParameter(F031); + addInParameter(F032); + addInParameter(F033); + addInParameter(F034); + addInParameter(F035); + addInParameter(F036); + addInParameter(F037); + addInParameter(F038); + addInParameter(F039); + addInParameter(F040); + addInParameter(F041); + addInParameter(F042); + addInParameter(F043); + addInParameter(F044); + addInParameter(F045); + addInParameter(F046); + addInParameter(F047); + addInParameter(F048); + addInParameter(F049); + addInParameter(F050); + addInParameter(F051); + addInParameter(F052); + addInParameter(F053); + addInParameter(F054); + addInParameter(F055); + addInParameter(F056); + addInParameter(F057); + addInParameter(F058); + addInParameter(F059); + addInParameter(F060); + addInParameter(F061); + addInParameter(F062); + addInParameter(F063); + addInParameter(F064); + addInParameter(F065); + addInParameter(F066); + addInParameter(F067); + addInParameter(F068); + addInParameter(F069); + addInParameter(F070); + addInParameter(F071); + addInParameter(F072); + addInParameter(F073); + addInParameter(F074); + addInParameter(F075); + addInParameter(F076); + addInParameter(F077); + addInParameter(F078); + addInParameter(F079); + addInParameter(F080); + addInParameter(F081); + addInParameter(F082); + addInParameter(F083); + addInParameter(F084); + addInParameter(F085); + addInParameter(F086); + addInParameter(F087); + addInParameter(F088); + addInParameter(F089); + addInParameter(F090); + addInParameter(F091); + addInParameter(F092); + addInParameter(F093); + addInParameter(F094); + addInParameter(F095); + addInParameter(F096); + addInParameter(F097); + addInParameter(F098); + addInParameter(F099); + addInParameter(F100); + addInParameter(F101); + addInParameter(F102); + addInParameter(F103); + addInParameter(F104); + addInParameter(F105); + addInParameter(F106); + addInParameter(F107); + addInParameter(F108); + addInParameter(F109); + addInParameter(F110); + addInParameter(F111); + addInParameter(F112); + addInParameter(F113); + addInParameter(F114); + addInParameter(F115); + addInParameter(F116); + addInParameter(F117); + addInParameter(F118); + addInParameter(F119); + addInParameter(F120); + addInParameter(F121); + addInParameter(F122); + addInParameter(F123); + addInParameter(F124); + addInParameter(F125); + addInParameter(F126); + addInParameter(F127); + addInParameter(F128); + addInParameter(F129); + addInParameter(F130); + addInParameter(F131); + addInParameter(F132); + addInParameter(F133); + addInParameter(F134); + addInParameter(F135); + addInParameter(F136); + addInParameter(F137); + addInParameter(F138); + addInParameter(F139); + addInParameter(F140); + addInParameter(F141); + addInParameter(F142); + addInParameter(F143); + addInParameter(F144); + addInParameter(F145); + addInParameter(F146); + addInParameter(F147); + addInParameter(F148); + addInParameter(F149); + addInParameter(F150); + addInParameter(F151); + addInParameter(F152); + addInParameter(F153); + addInParameter(F154); + addInParameter(F155); + addInParameter(F156); + addInParameter(F157); + addInParameter(F158); + addInParameter(F159); + addInParameter(F160); + addInParameter(F161); + addInParameter(F162); + addInParameter(F163); + addInParameter(F164); + addInParameter(F165); + addInParameter(F166); + addInParameter(F167); + addInParameter(F168); + addInParameter(F169); + addInParameter(F170); + addInParameter(F171); + addInParameter(F172); + addInParameter(F173); + addInParameter(F174); + addInParameter(F175); + addInParameter(F176); + addInParameter(F177); + addInParameter(F178); + addInParameter(F179); + addInParameter(F180); + addInParameter(F181); + addInParameter(F182); + addInParameter(F183); + addInParameter(F184); + addInParameter(F185); + addInParameter(F186); + addInParameter(F187); + addInParameter(F188); + addInParameter(F189); + addInParameter(F190); + addInParameter(F191); + addInParameter(F192); + addInParameter(F193); + addInParameter(F194); + addInParameter(F195); + addInParameter(F196); + addInParameter(F197); + addInParameter(F198); + addInParameter(F199); + addInParameter(F200); + addInParameter(F201); + addInParameter(F202); + addInParameter(F203); + addInParameter(F204); + addInParameter(F205); + addInParameter(F206); + addInParameter(F207); + addInParameter(F208); + addInParameter(F209); + addInParameter(F210); + addInParameter(F211); + addInParameter(F212); + addInParameter(F213); + addInParameter(F214); + addInParameter(F215); + addInParameter(F216); + addInParameter(F217); + addInParameter(F218); + addInParameter(F219); + addInParameter(F220); + addInParameter(F221); + addInParameter(F222); + addInParameter(F223); + addInParameter(F224); + addInParameter(F225); + addInParameter(F226); + addInParameter(F227); + addInParameter(F228); + addInParameter(F229); + addInParameter(F230); + addInParameter(F231); + addInParameter(F232); + addInParameter(F233); + addInParameter(F234); + addInParameter(F235); + addInParameter(F236); + addInParameter(F237); + addInParameter(F238); + addInParameter(F239); + addInParameter(F240); + addInParameter(F241); + addInParameter(F242); + addInParameter(F243); + addInParameter(F244); + addInParameter(F245); + addInParameter(F246); + addInParameter(F247); + addInParameter(F248); + addInParameter(F249); + addInParameter(F250); + addInParameter(F251); + addInParameter(F252); + addInParameter(F253); + addInParameter(F254); + addInParameter(F255); + addInParameter(F256); + addInParameter(F257); + addInParameter(F258); + addInParameter(F259); + addInParameter(F260); + addInParameter(F261); + addInParameter(F262); + addInParameter(F263); + addInParameter(F264); + addInParameter(F265); + addInParameter(F266); + addInParameter(F267); + addInParameter(F268); + addInParameter(F269); + addInParameter(F270); + addInParameter(F271); + addInParameter(F272); + addInParameter(F273); + addInParameter(F274); + addInParameter(F275); + addInParameter(F276); + addInParameter(F277); + addInParameter(F278); + addInParameter(F279); + addInParameter(F280); + addInParameter(F281); + addInParameter(F282); + addInParameter(F283); + addInParameter(F284); + addInParameter(F285); + addInParameter(F286); + addInParameter(F287); + addInParameter(F288); + addInParameter(F289); + addInParameter(F290); + addInParameter(F291); + addInParameter(F292); + addInParameter(F293); + addInParameter(F294); + addInParameter(F295); + addInParameter(F296); + addInParameter(F297); + addInParameter(F298); + addInParameter(F299); + addInParameter(F300); + addInParameter(F301); + addInParameter(F302); + addInParameter(F303); + addInParameter(F304); + addInParameter(F305); + addInParameter(F306); + addInParameter(F307); + addInParameter(F308); + addInParameter(F309); + addInParameter(F310); + addInParameter(F311); + addInParameter(F312); + addInParameter(F313); + addInParameter(F314); + addInParameter(F315); + addInParameter(F316); + addInParameter(F317); + addInParameter(F318); + addInParameter(F319); + addInParameter(F320); + addInParameter(F321); + addInParameter(F322); + addInParameter(F323); + addInParameter(F324); + addInParameter(F325); + addInParameter(F326); + addInParameter(F327); + addInParameter(F328); + addInParameter(F329); + addInParameter(F330); + addInParameter(F331); + addInParameter(F332); + addInParameter(F333); + addInParameter(F334); + addInParameter(F335); + addInParameter(F336); + addInParameter(F337); + addInParameter(F338); + addInParameter(F339); + addInParameter(F340); + addInParameter(F341); + addInParameter(F342); + addInParameter(F343); + addInParameter(F344); + addInParameter(F345); + addInParameter(F346); + addInParameter(F347); + addInParameter(F348); + addInParameter(F349); + addInParameter(F350); + addInParameter(F351); + addInParameter(F352); + addInParameter(F353); + addInParameter(F354); + addInParameter(F355); + addInParameter(F356); + addInParameter(F357); + addInParameter(F358); + addInParameter(F359); + addInParameter(F360); + addInParameter(F361); + addInParameter(F362); + addInParameter(F363); + addInParameter(F364); + addInParameter(F365); + addInParameter(F366); + addInParameter(F367); + addInParameter(F368); + addInParameter(F369); + addInParameter(F370); + addInParameter(F371); + addInParameter(F372); + addInParameter(F373); + addInParameter(F374); + addInParameter(F375); + addInParameter(F376); + addInParameter(F377); + addInParameter(F378); + addInParameter(F379); + addInParameter(F380); + addInParameter(F381); + addInParameter(F382); + addInParameter(F383); + addInParameter(F384); + addInParameter(F385); + addInParameter(F386); + addInParameter(F387); + addInParameter(F388); + addInParameter(F389); + addInParameter(F390); + addInParameter(F391); + addInParameter(F392); + addInParameter(F393); + addInParameter(F394); + addInParameter(F395); + addInParameter(F396); + addInParameter(F397); + addInParameter(F398); + addInParameter(F399); + } + + /** + * Set the F000 parameter to the routine + */ + public void setF000(java.lang.Number value) { + setNumber(F000, value); + } + + /** + * Set the F001 parameter to the routine + */ + public void setF001(java.lang.Number value) { + setNumber(F001, value); + } + + /** + * Set the F002 parameter to the routine + */ + public void setF002(java.lang.Number value) { + setNumber(F002, value); + } + + /** + * Set the F003 parameter to the routine + */ + public void setF003(java.lang.Number value) { + setNumber(F003, value); + } + + /** + * Set the F004 parameter to the routine + */ + public void setF004(java.lang.Number value) { + setNumber(F004, value); + } + + /** + * Set the F005 parameter to the routine + */ + public void setF005(java.lang.Number value) { + setNumber(F005, value); + } + + /** + * Set the F006 parameter to the routine + */ + public void setF006(java.lang.Number value) { + setNumber(F006, value); + } + + /** + * Set the F007 parameter to the routine + */ + public void setF007(java.lang.Number value) { + setNumber(F007, value); + } + + /** + * Set the F008 parameter to the routine + */ + public void setF008(java.lang.Number value) { + setNumber(F008, value); + } + + /** + * Set the F009 parameter to the routine + */ + public void setF009(java.lang.Number value) { + setNumber(F009, value); + } + + /** + * Set the F010 parameter to the routine + */ + public void setF010(java.lang.Number value) { + setNumber(F010, value); + } + + /** + * Set the F011 parameter to the routine + */ + public void setF011(java.lang.Number value) { + setNumber(F011, value); + } + + /** + * Set the F012 parameter to the routine + */ + public void setF012(java.lang.Number value) { + setNumber(F012, value); + } + + /** + * Set the F013 parameter to the routine + */ + public void setF013(java.lang.Number value) { + setNumber(F013, value); + } + + /** + * Set the F014 parameter to the routine + */ + public void setF014(java.lang.Number value) { + setNumber(F014, value); + } + + /** + * Set the F015 parameter to the routine + */ + public void setF015(java.lang.Number value) { + setNumber(F015, value); + } + + /** + * Set the F016 parameter to the routine + */ + public void setF016(java.lang.Number value) { + setNumber(F016, value); + } + + /** + * Set the F017 parameter to the routine + */ + public void setF017(java.lang.Number value) { + setNumber(F017, value); + } + + /** + * Set the F018 parameter to the routine + */ + public void setF018(java.lang.Number value) { + setNumber(F018, value); + } + + /** + * Set the F019 parameter to the routine + */ + public void setF019(java.lang.Number value) { + setNumber(F019, value); + } + + /** + * Set the F020 parameter to the routine + */ + public void setF020(java.lang.Number value) { + setNumber(F020, value); + } + + /** + * Set the F021 parameter to the routine + */ + public void setF021(java.lang.Number value) { + setNumber(F021, value); + } + + /** + * Set the F022 parameter to the routine + */ + public void setF022(java.lang.Number value) { + setNumber(F022, value); + } + + /** + * Set the F023 parameter to the routine + */ + public void setF023(java.lang.Number value) { + setNumber(F023, value); + } + + /** + * Set the F024 parameter to the routine + */ + public void setF024(java.lang.Number value) { + setNumber(F024, value); + } + + /** + * Set the F025 parameter to the routine + */ + public void setF025(java.lang.Number value) { + setNumber(F025, value); + } + + /** + * Set the F026 parameter to the routine + */ + public void setF026(java.lang.Number value) { + setNumber(F026, value); + } + + /** + * Set the F027 parameter to the routine + */ + public void setF027(java.lang.Number value) { + setNumber(F027, value); + } + + /** + * Set the F028 parameter to the routine + */ + public void setF028(java.lang.Number value) { + setNumber(F028, value); + } + + /** + * Set the F029 parameter to the routine + */ + public void setF029(java.lang.Number value) { + setNumber(F029, value); + } + + /** + * Set the F030 parameter to the routine + */ + public void setF030(java.lang.Number value) { + setNumber(F030, value); + } + + /** + * Set the F031 parameter to the routine + */ + public void setF031(java.lang.Number value) { + setNumber(F031, value); + } + + /** + * Set the F032 parameter to the routine + */ + public void setF032(java.lang.Number value) { + setNumber(F032, value); + } + + /** + * Set the F033 parameter to the routine + */ + public void setF033(java.lang.Number value) { + setNumber(F033, value); + } + + /** + * Set the F034 parameter to the routine + */ + public void setF034(java.lang.Number value) { + setNumber(F034, value); + } + + /** + * Set the F035 parameter to the routine + */ + public void setF035(java.lang.Number value) { + setNumber(F035, value); + } + + /** + * Set the F036 parameter to the routine + */ + public void setF036(java.lang.Number value) { + setNumber(F036, value); + } + + /** + * Set the F037 parameter to the routine + */ + public void setF037(java.lang.Number value) { + setNumber(F037, value); + } + + /** + * Set the F038 parameter to the routine + */ + public void setF038(java.lang.Number value) { + setNumber(F038, value); + } + + /** + * Set the F039 parameter to the routine + */ + public void setF039(java.lang.Number value) { + setNumber(F039, value); + } + + /** + * Set the F040 parameter to the routine + */ + public void setF040(java.lang.Number value) { + setNumber(F040, value); + } + + /** + * Set the F041 parameter to the routine + */ + public void setF041(java.lang.Number value) { + setNumber(F041, value); + } + + /** + * Set the F042 parameter to the routine + */ + public void setF042(java.lang.Number value) { + setNumber(F042, value); + } + + /** + * Set the F043 parameter to the routine + */ + public void setF043(java.lang.Number value) { + setNumber(F043, value); + } + + /** + * Set the F044 parameter to the routine + */ + public void setF044(java.lang.Number value) { + setNumber(F044, value); + } + + /** + * Set the F045 parameter to the routine + */ + public void setF045(java.lang.Number value) { + setNumber(F045, value); + } + + /** + * Set the F046 parameter to the routine + */ + public void setF046(java.lang.Number value) { + setNumber(F046, value); + } + + /** + * Set the F047 parameter to the routine + */ + public void setF047(java.lang.Number value) { + setNumber(F047, value); + } + + /** + * Set the F048 parameter to the routine + */ + public void setF048(java.lang.Number value) { + setNumber(F048, value); + } + + /** + * Set the F049 parameter to the routine + */ + public void setF049(java.lang.Number value) { + setNumber(F049, value); + } + + /** + * Set the F050 parameter to the routine + */ + public void setF050(java.lang.Number value) { + setNumber(F050, value); + } + + /** + * Set the F051 parameter to the routine + */ + public void setF051(java.lang.Number value) { + setNumber(F051, value); + } + + /** + * Set the F052 parameter to the routine + */ + public void setF052(java.lang.Number value) { + setNumber(F052, value); + } + + /** + * Set the F053 parameter to the routine + */ + public void setF053(java.lang.Number value) { + setNumber(F053, value); + } + + /** + * Set the F054 parameter to the routine + */ + public void setF054(java.lang.Number value) { + setNumber(F054, value); + } + + /** + * Set the F055 parameter to the routine + */ + public void setF055(java.lang.Number value) { + setNumber(F055, value); + } + + /** + * Set the F056 parameter to the routine + */ + public void setF056(java.lang.Number value) { + setNumber(F056, value); + } + + /** + * Set the F057 parameter to the routine + */ + public void setF057(java.lang.Number value) { + setNumber(F057, value); + } + + /** + * Set the F058 parameter to the routine + */ + public void setF058(java.lang.Number value) { + setNumber(F058, value); + } + + /** + * Set the F059 parameter to the routine + */ + public void setF059(java.lang.Number value) { + setNumber(F059, value); + } + + /** + * Set the F060 parameter to the routine + */ + public void setF060(java.lang.Number value) { + setNumber(F060, value); + } + + /** + * Set the F061 parameter to the routine + */ + public void setF061(java.lang.Number value) { + setNumber(F061, value); + } + + /** + * Set the F062 parameter to the routine + */ + public void setF062(java.lang.Number value) { + setNumber(F062, value); + } + + /** + * Set the F063 parameter to the routine + */ + public void setF063(java.lang.Number value) { + setNumber(F063, value); + } + + /** + * Set the F064 parameter to the routine + */ + public void setF064(java.lang.Number value) { + setNumber(F064, value); + } + + /** + * Set the F065 parameter to the routine + */ + public void setF065(java.lang.Number value) { + setNumber(F065, value); + } + + /** + * Set the F066 parameter to the routine + */ + public void setF066(java.lang.Number value) { + setNumber(F066, value); + } + + /** + * Set the F067 parameter to the routine + */ + public void setF067(java.lang.Number value) { + setNumber(F067, value); + } + + /** + * Set the F068 parameter to the routine + */ + public void setF068(java.lang.Number value) { + setNumber(F068, value); + } + + /** + * Set the F069 parameter to the routine + */ + public void setF069(java.lang.Number value) { + setNumber(F069, value); + } + + /** + * Set the F070 parameter to the routine + */ + public void setF070(java.lang.Number value) { + setNumber(F070, value); + } + + /** + * Set the F071 parameter to the routine + */ + public void setF071(java.lang.Number value) { + setNumber(F071, value); + } + + /** + * Set the F072 parameter to the routine + */ + public void setF072(java.lang.Number value) { + setNumber(F072, value); + } + + /** + * Set the F073 parameter to the routine + */ + public void setF073(java.lang.Number value) { + setNumber(F073, value); + } + + /** + * Set the F074 parameter to the routine + */ + public void setF074(java.lang.Number value) { + setNumber(F074, value); + } + + /** + * Set the F075 parameter to the routine + */ + public void setF075(java.lang.Number value) { + setNumber(F075, value); + } + + /** + * Set the F076 parameter to the routine + */ + public void setF076(java.lang.Number value) { + setNumber(F076, value); + } + + /** + * Set the F077 parameter to the routine + */ + public void setF077(java.lang.Number value) { + setNumber(F077, value); + } + + /** + * Set the F078 parameter to the routine + */ + public void setF078(java.lang.Number value) { + setNumber(F078, value); + } + + /** + * Set the F079 parameter to the routine + */ + public void setF079(java.lang.Number value) { + setNumber(F079, value); + } + + /** + * Set the F080 parameter to the routine + */ + public void setF080(java.lang.Number value) { + setNumber(F080, value); + } + + /** + * Set the F081 parameter to the routine + */ + public void setF081(java.lang.Number value) { + setNumber(F081, value); + } + + /** + * Set the F082 parameter to the routine + */ + public void setF082(java.lang.Number value) { + setNumber(F082, value); + } + + /** + * Set the F083 parameter to the routine + */ + public void setF083(java.lang.Number value) { + setNumber(F083, value); + } + + /** + * Set the F084 parameter to the routine + */ + public void setF084(java.lang.Number value) { + setNumber(F084, value); + } + + /** + * Set the F085 parameter to the routine + */ + public void setF085(java.lang.Number value) { + setNumber(F085, value); + } + + /** + * Set the F086 parameter to the routine + */ + public void setF086(java.lang.Number value) { + setNumber(F086, value); + } + + /** + * Set the F087 parameter to the routine + */ + public void setF087(java.lang.Number value) { + setNumber(F087, value); + } + + /** + * Set the F088 parameter to the routine + */ + public void setF088(java.lang.Number value) { + setNumber(F088, value); + } + + /** + * Set the F089 parameter to the routine + */ + public void setF089(java.lang.Number value) { + setNumber(F089, value); + } + + /** + * Set the F090 parameter to the routine + */ + public void setF090(java.lang.Number value) { + setNumber(F090, value); + } + + /** + * Set the F091 parameter to the routine + */ + public void setF091(java.lang.Number value) { + setNumber(F091, value); + } + + /** + * Set the F092 parameter to the routine + */ + public void setF092(java.lang.Number value) { + setNumber(F092, value); + } + + /** + * Set the F093 parameter to the routine + */ + public void setF093(java.lang.Number value) { + setNumber(F093, value); + } + + /** + * Set the F094 parameter to the routine + */ + public void setF094(java.lang.Number value) { + setNumber(F094, value); + } + + /** + * Set the F095 parameter to the routine + */ + public void setF095(java.lang.Number value) { + setNumber(F095, value); + } + + /** + * Set the F096 parameter to the routine + */ + public void setF096(java.lang.Number value) { + setNumber(F096, value); + } + + /** + * Set the F097 parameter to the routine + */ + public void setF097(java.lang.Number value) { + setNumber(F097, value); + } + + /** + * Set the F098 parameter to the routine + */ + public void setF098(java.lang.Number value) { + setNumber(F098, value); + } + + /** + * Set the F099 parameter to the routine + */ + public void setF099(java.lang.Number value) { + setNumber(F099, value); + } + + /** + * Set the F100 parameter to the routine + */ + public void setF100(java.lang.Number value) { + setNumber(F100, value); + } + + /** + * Set the F101 parameter to the routine + */ + public void setF101(java.lang.Number value) { + setNumber(F101, value); + } + + /** + * Set the F102 parameter to the routine + */ + public void setF102(java.lang.Number value) { + setNumber(F102, value); + } + + /** + * Set the F103 parameter to the routine + */ + public void setF103(java.lang.Number value) { + setNumber(F103, value); + } + + /** + * Set the F104 parameter to the routine + */ + public void setF104(java.lang.Number value) { + setNumber(F104, value); + } + + /** + * Set the F105 parameter to the routine + */ + public void setF105(java.lang.Number value) { + setNumber(F105, value); + } + + /** + * Set the F106 parameter to the routine + */ + public void setF106(java.lang.Number value) { + setNumber(F106, value); + } + + /** + * Set the F107 parameter to the routine + */ + public void setF107(java.lang.Number value) { + setNumber(F107, value); + } + + /** + * Set the F108 parameter to the routine + */ + public void setF108(java.lang.Number value) { + setNumber(F108, value); + } + + /** + * Set the F109 parameter to the routine + */ + public void setF109(java.lang.Number value) { + setNumber(F109, value); + } + + /** + * Set the F110 parameter to the routine + */ + public void setF110(java.lang.Number value) { + setNumber(F110, value); + } + + /** + * Set the F111 parameter to the routine + */ + public void setF111(java.lang.Number value) { + setNumber(F111, value); + } + + /** + * Set the F112 parameter to the routine + */ + public void setF112(java.lang.Number value) { + setNumber(F112, value); + } + + /** + * Set the F113 parameter to the routine + */ + public void setF113(java.lang.Number value) { + setNumber(F113, value); + } + + /** + * Set the F114 parameter to the routine + */ + public void setF114(java.lang.Number value) { + setNumber(F114, value); + } + + /** + * Set the F115 parameter to the routine + */ + public void setF115(java.lang.Number value) { + setNumber(F115, value); + } + + /** + * Set the F116 parameter to the routine + */ + public void setF116(java.lang.Number value) { + setNumber(F116, value); + } + + /** + * Set the F117 parameter to the routine + */ + public void setF117(java.lang.Number value) { + setNumber(F117, value); + } + + /** + * Set the F118 parameter to the routine + */ + public void setF118(java.lang.Number value) { + setNumber(F118, value); + } + + /** + * Set the F119 parameter to the routine + */ + public void setF119(java.lang.Number value) { + setNumber(F119, value); + } + + /** + * Set the F120 parameter to the routine + */ + public void setF120(java.lang.Number value) { + setNumber(F120, value); + } + + /** + * Set the F121 parameter to the routine + */ + public void setF121(java.lang.Number value) { + setNumber(F121, value); + } + + /** + * Set the F122 parameter to the routine + */ + public void setF122(java.lang.Number value) { + setNumber(F122, value); + } + + /** + * Set the F123 parameter to the routine + */ + public void setF123(java.lang.Number value) { + setNumber(F123, value); + } + + /** + * Set the F124 parameter to the routine + */ + public void setF124(java.lang.Number value) { + setNumber(F124, value); + } + + /** + * Set the F125 parameter to the routine + */ + public void setF125(java.lang.Number value) { + setNumber(F125, value); + } + + /** + * Set the F126 parameter to the routine + */ + public void setF126(java.lang.Number value) { + setNumber(F126, value); + } + + /** + * Set the F127 parameter to the routine + */ + public void setF127(java.lang.Number value) { + setNumber(F127, value); + } + + /** + * Set the F128 parameter to the routine + */ + public void setF128(java.lang.Number value) { + setNumber(F128, value); + } + + /** + * Set the F129 parameter to the routine + */ + public void setF129(java.lang.Number value) { + setNumber(F129, value); + } + + /** + * Set the F130 parameter to the routine + */ + public void setF130(java.lang.Number value) { + setNumber(F130, value); + } + + /** + * Set the F131 parameter to the routine + */ + public void setF131(java.lang.Number value) { + setNumber(F131, value); + } + + /** + * Set the F132 parameter to the routine + */ + public void setF132(java.lang.Number value) { + setNumber(F132, value); + } + + /** + * Set the F133 parameter to the routine + */ + public void setF133(java.lang.Number value) { + setNumber(F133, value); + } + + /** + * Set the F134 parameter to the routine + */ + public void setF134(java.lang.Number value) { + setNumber(F134, value); + } + + /** + * Set the F135 parameter to the routine + */ + public void setF135(java.lang.Number value) { + setNumber(F135, value); + } + + /** + * Set the F136 parameter to the routine + */ + public void setF136(java.lang.Number value) { + setNumber(F136, value); + } + + /** + * Set the F137 parameter to the routine + */ + public void setF137(java.lang.Number value) { + setNumber(F137, value); + } + + /** + * Set the F138 parameter to the routine + */ + public void setF138(java.lang.Number value) { + setNumber(F138, value); + } + + /** + * Set the F139 parameter to the routine + */ + public void setF139(java.lang.Number value) { + setNumber(F139, value); + } + + /** + * Set the F140 parameter to the routine + */ + public void setF140(java.lang.Number value) { + setNumber(F140, value); + } + + /** + * Set the F141 parameter to the routine + */ + public void setF141(java.lang.Number value) { + setNumber(F141, value); + } + + /** + * Set the F142 parameter to the routine + */ + public void setF142(java.lang.Number value) { + setNumber(F142, value); + } + + /** + * Set the F143 parameter to the routine + */ + public void setF143(java.lang.Number value) { + setNumber(F143, value); + } + + /** + * Set the F144 parameter to the routine + */ + public void setF144(java.lang.Number value) { + setNumber(F144, value); + } + + /** + * Set the F145 parameter to the routine + */ + public void setF145(java.lang.Number value) { + setNumber(F145, value); + } + + /** + * Set the F146 parameter to the routine + */ + public void setF146(java.lang.Number value) { + setNumber(F146, value); + } + + /** + * Set the F147 parameter to the routine + */ + public void setF147(java.lang.Number value) { + setNumber(F147, value); + } + + /** + * Set the F148 parameter to the routine + */ + public void setF148(java.lang.Number value) { + setNumber(F148, value); + } + + /** + * Set the F149 parameter to the routine + */ + public void setF149(java.lang.Number value) { + setNumber(F149, value); + } + + /** + * Set the F150 parameter to the routine + */ + public void setF150(java.lang.Number value) { + setNumber(F150, value); + } + + /** + * Set the F151 parameter to the routine + */ + public void setF151(java.lang.Number value) { + setNumber(F151, value); + } + + /** + * Set the F152 parameter to the routine + */ + public void setF152(java.lang.Number value) { + setNumber(F152, value); + } + + /** + * Set the F153 parameter to the routine + */ + public void setF153(java.lang.Number value) { + setNumber(F153, value); + } + + /** + * Set the F154 parameter to the routine + */ + public void setF154(java.lang.Number value) { + setNumber(F154, value); + } + + /** + * Set the F155 parameter to the routine + */ + public void setF155(java.lang.Number value) { + setNumber(F155, value); + } + + /** + * Set the F156 parameter to the routine + */ + public void setF156(java.lang.Number value) { + setNumber(F156, value); + } + + /** + * Set the F157 parameter to the routine + */ + public void setF157(java.lang.Number value) { + setNumber(F157, value); + } + + /** + * Set the F158 parameter to the routine + */ + public void setF158(java.lang.Number value) { + setNumber(F158, value); + } + + /** + * Set the F159 parameter to the routine + */ + public void setF159(java.lang.Number value) { + setNumber(F159, value); + } + + /** + * Set the F160 parameter to the routine + */ + public void setF160(java.lang.Number value) { + setNumber(F160, value); + } + + /** + * Set the F161 parameter to the routine + */ + public void setF161(java.lang.Number value) { + setNumber(F161, value); + } + + /** + * Set the F162 parameter to the routine + */ + public void setF162(java.lang.Number value) { + setNumber(F162, value); + } + + /** + * Set the F163 parameter to the routine + */ + public void setF163(java.lang.Number value) { + setNumber(F163, value); + } + + /** + * Set the F164 parameter to the routine + */ + public void setF164(java.lang.Number value) { + setNumber(F164, value); + } + + /** + * Set the F165 parameter to the routine + */ + public void setF165(java.lang.Number value) { + setNumber(F165, value); + } + + /** + * Set the F166 parameter to the routine + */ + public void setF166(java.lang.Number value) { + setNumber(F166, value); + } + + /** + * Set the F167 parameter to the routine + */ + public void setF167(java.lang.Number value) { + setNumber(F167, value); + } + + /** + * Set the F168 parameter to the routine + */ + public void setF168(java.lang.Number value) { + setNumber(F168, value); + } + + /** + * Set the F169 parameter to the routine + */ + public void setF169(java.lang.Number value) { + setNumber(F169, value); + } + + /** + * Set the F170 parameter to the routine + */ + public void setF170(java.lang.Number value) { + setNumber(F170, value); + } + + /** + * Set the F171 parameter to the routine + */ + public void setF171(java.lang.Number value) { + setNumber(F171, value); + } + + /** + * Set the F172 parameter to the routine + */ + public void setF172(java.lang.Number value) { + setNumber(F172, value); + } + + /** + * Set the F173 parameter to the routine + */ + public void setF173(java.lang.Number value) { + setNumber(F173, value); + } + + /** + * Set the F174 parameter to the routine + */ + public void setF174(java.lang.Number value) { + setNumber(F174, value); + } + + /** + * Set the F175 parameter to the routine + */ + public void setF175(java.lang.Number value) { + setNumber(F175, value); + } + + /** + * Set the F176 parameter to the routine + */ + public void setF176(java.lang.Number value) { + setNumber(F176, value); + } + + /** + * Set the F177 parameter to the routine + */ + public void setF177(java.lang.Number value) { + setNumber(F177, value); + } + + /** + * Set the F178 parameter to the routine + */ + public void setF178(java.lang.Number value) { + setNumber(F178, value); + } + + /** + * Set the F179 parameter to the routine + */ + public void setF179(java.lang.Number value) { + setNumber(F179, value); + } + + /** + * Set the F180 parameter to the routine + */ + public void setF180(java.lang.Number value) { + setNumber(F180, value); + } + + /** + * Set the F181 parameter to the routine + */ + public void setF181(java.lang.Number value) { + setNumber(F181, value); + } + + /** + * Set the F182 parameter to the routine + */ + public void setF182(java.lang.Number value) { + setNumber(F182, value); + } + + /** + * Set the F183 parameter to the routine + */ + public void setF183(java.lang.Number value) { + setNumber(F183, value); + } + + /** + * Set the F184 parameter to the routine + */ + public void setF184(java.lang.Number value) { + setNumber(F184, value); + } + + /** + * Set the F185 parameter to the routine + */ + public void setF185(java.lang.Number value) { + setNumber(F185, value); + } + + /** + * Set the F186 parameter to the routine + */ + public void setF186(java.lang.Number value) { + setNumber(F186, value); + } + + /** + * Set the F187 parameter to the routine + */ + public void setF187(java.lang.Number value) { + setNumber(F187, value); + } + + /** + * Set the F188 parameter to the routine + */ + public void setF188(java.lang.Number value) { + setNumber(F188, value); + } + + /** + * Set the F189 parameter to the routine + */ + public void setF189(java.lang.Number value) { + setNumber(F189, value); + } + + /** + * Set the F190 parameter to the routine + */ + public void setF190(java.lang.Number value) { + setNumber(F190, value); + } + + /** + * Set the F191 parameter to the routine + */ + public void setF191(java.lang.Number value) { + setNumber(F191, value); + } + + /** + * Set the F192 parameter to the routine + */ + public void setF192(java.lang.Number value) { + setNumber(F192, value); + } + + /** + * Set the F193 parameter to the routine + */ + public void setF193(java.lang.Number value) { + setNumber(F193, value); + } + + /** + * Set the F194 parameter to the routine + */ + public void setF194(java.lang.Number value) { + setNumber(F194, value); + } + + /** + * Set the F195 parameter to the routine + */ + public void setF195(java.lang.Number value) { + setNumber(F195, value); + } + + /** + * Set the F196 parameter to the routine + */ + public void setF196(java.lang.Number value) { + setNumber(F196, value); + } + + /** + * Set the F197 parameter to the routine + */ + public void setF197(java.lang.Number value) { + setNumber(F197, value); + } + + /** + * Set the F198 parameter to the routine + */ + public void setF198(java.lang.Number value) { + setNumber(F198, value); + } + + /** + * Set the F199 parameter to the routine + */ + public void setF199(java.lang.Number value) { + setNumber(F199, value); + } + + /** + * Set the F200 parameter to the routine + */ + public void setF200(java.lang.Number value) { + setNumber(F200, value); + } + + /** + * Set the F201 parameter to the routine + */ + public void setF201(java.lang.Number value) { + setNumber(F201, value); + } + + /** + * Set the F202 parameter to the routine + */ + public void setF202(java.lang.Number value) { + setNumber(F202, value); + } + + /** + * Set the F203 parameter to the routine + */ + public void setF203(java.lang.Number value) { + setNumber(F203, value); + } + + /** + * Set the F204 parameter to the routine + */ + public void setF204(java.lang.Number value) { + setNumber(F204, value); + } + + /** + * Set the F205 parameter to the routine + */ + public void setF205(java.lang.Number value) { + setNumber(F205, value); + } + + /** + * Set the F206 parameter to the routine + */ + public void setF206(java.lang.Number value) { + setNumber(F206, value); + } + + /** + * Set the F207 parameter to the routine + */ + public void setF207(java.lang.Number value) { + setNumber(F207, value); + } + + /** + * Set the F208 parameter to the routine + */ + public void setF208(java.lang.Number value) { + setNumber(F208, value); + } + + /** + * Set the F209 parameter to the routine + */ + public void setF209(java.lang.Number value) { + setNumber(F209, value); + } + + /** + * Set the F210 parameter to the routine + */ + public void setF210(java.lang.Number value) { + setNumber(F210, value); + } + + /** + * Set the F211 parameter to the routine + */ + public void setF211(java.lang.Number value) { + setNumber(F211, value); + } + + /** + * Set the F212 parameter to the routine + */ + public void setF212(java.lang.Number value) { + setNumber(F212, value); + } + + /** + * Set the F213 parameter to the routine + */ + public void setF213(java.lang.Number value) { + setNumber(F213, value); + } + + /** + * Set the F214 parameter to the routine + */ + public void setF214(java.lang.Number value) { + setNumber(F214, value); + } + + /** + * Set the F215 parameter to the routine + */ + public void setF215(java.lang.Number value) { + setNumber(F215, value); + } + + /** + * Set the F216 parameter to the routine + */ + public void setF216(java.lang.Number value) { + setNumber(F216, value); + } + + /** + * Set the F217 parameter to the routine + */ + public void setF217(java.lang.Number value) { + setNumber(F217, value); + } + + /** + * Set the F218 parameter to the routine + */ + public void setF218(java.lang.Number value) { + setNumber(F218, value); + } + + /** + * Set the F219 parameter to the routine + */ + public void setF219(java.lang.Number value) { + setNumber(F219, value); + } + + /** + * Set the F220 parameter to the routine + */ + public void setF220(java.lang.Number value) { + setNumber(F220, value); + } + + /** + * Set the F221 parameter to the routine + */ + public void setF221(java.lang.Number value) { + setNumber(F221, value); + } + + /** + * Set the F222 parameter to the routine + */ + public void setF222(java.lang.Number value) { + setNumber(F222, value); + } + + /** + * Set the F223 parameter to the routine + */ + public void setF223(java.lang.Number value) { + setNumber(F223, value); + } + + /** + * Set the F224 parameter to the routine + */ + public void setF224(java.lang.Number value) { + setNumber(F224, value); + } + + /** + * Set the F225 parameter to the routine + */ + public void setF225(java.lang.Number value) { + setNumber(F225, value); + } + + /** + * Set the F226 parameter to the routine + */ + public void setF226(java.lang.Number value) { + setNumber(F226, value); + } + + /** + * Set the F227 parameter to the routine + */ + public void setF227(java.lang.Number value) { + setNumber(F227, value); + } + + /** + * Set the F228 parameter to the routine + */ + public void setF228(java.lang.Number value) { + setNumber(F228, value); + } + + /** + * Set the F229 parameter to the routine + */ + public void setF229(java.lang.Number value) { + setNumber(F229, value); + } + + /** + * Set the F230 parameter to the routine + */ + public void setF230(java.lang.Number value) { + setNumber(F230, value); + } + + /** + * Set the F231 parameter to the routine + */ + public void setF231(java.lang.Number value) { + setNumber(F231, value); + } + + /** + * Set the F232 parameter to the routine + */ + public void setF232(java.lang.Number value) { + setNumber(F232, value); + } + + /** + * Set the F233 parameter to the routine + */ + public void setF233(java.lang.Number value) { + setNumber(F233, value); + } + + /** + * Set the F234 parameter to the routine + */ + public void setF234(java.lang.Number value) { + setNumber(F234, value); + } + + /** + * Set the F235 parameter to the routine + */ + public void setF235(java.lang.Number value) { + setNumber(F235, value); + } + + /** + * Set the F236 parameter to the routine + */ + public void setF236(java.lang.Number value) { + setNumber(F236, value); + } + + /** + * Set the F237 parameter to the routine + */ + public void setF237(java.lang.Number value) { + setNumber(F237, value); + } + + /** + * Set the F238 parameter to the routine + */ + public void setF238(java.lang.Number value) { + setNumber(F238, value); + } + + /** + * Set the F239 parameter to the routine + */ + public void setF239(java.lang.Number value) { + setNumber(F239, value); + } + + /** + * Set the F240 parameter to the routine + */ + public void setF240(java.lang.Number value) { + setNumber(F240, value); + } + + /** + * Set the F241 parameter to the routine + */ + public void setF241(java.lang.Number value) { + setNumber(F241, value); + } + + /** + * Set the F242 parameter to the routine + */ + public void setF242(java.lang.Number value) { + setNumber(F242, value); + } + + /** + * Set the F243 parameter to the routine + */ + public void setF243(java.lang.Number value) { + setNumber(F243, value); + } + + /** + * Set the F244 parameter to the routine + */ + public void setF244(java.lang.Number value) { + setNumber(F244, value); + } + + /** + * Set the F245 parameter to the routine + */ + public void setF245(java.lang.Number value) { + setNumber(F245, value); + } + + /** + * Set the F246 parameter to the routine + */ + public void setF246(java.lang.Number value) { + setNumber(F246, value); + } + + /** + * Set the F247 parameter to the routine + */ + public void setF247(java.lang.Number value) { + setNumber(F247, value); + } + + /** + * Set the F248 parameter to the routine + */ + public void setF248(java.lang.Number value) { + setNumber(F248, value); + } + + /** + * Set the F249 parameter to the routine + */ + public void setF249(java.lang.Number value) { + setNumber(F249, value); + } + + /** + * Set the F250 parameter to the routine + */ + public void setF250(java.lang.Number value) { + setNumber(F250, value); + } + + /** + * Set the F251 parameter to the routine + */ + public void setF251(java.lang.Number value) { + setNumber(F251, value); + } + + /** + * Set the F252 parameter to the routine + */ + public void setF252(java.lang.Number value) { + setNumber(F252, value); + } + + /** + * Set the F253 parameter to the routine + */ + public void setF253(java.lang.Number value) { + setNumber(F253, value); + } + + /** + * Set the F254 parameter to the routine + */ + public void setF254(java.lang.Number value) { + setNumber(F254, value); + } + + /** + * Set the F255 parameter to the routine + */ + public void setF255(java.lang.Number value) { + setNumber(F255, value); + } + + /** + * Set the F256 parameter to the routine + */ + public void setF256(java.lang.Number value) { + setNumber(F256, value); + } + + /** + * Set the F257 parameter to the routine + */ + public void setF257(java.lang.Number value) { + setNumber(F257, value); + } + + /** + * Set the F258 parameter to the routine + */ + public void setF258(java.lang.Number value) { + setNumber(F258, value); + } + + /** + * Set the F259 parameter to the routine + */ + public void setF259(java.lang.Number value) { + setNumber(F259, value); + } + + /** + * Set the F260 parameter to the routine + */ + public void setF260(java.lang.Number value) { + setNumber(F260, value); + } + + /** + * Set the F261 parameter to the routine + */ + public void setF261(java.lang.Number value) { + setNumber(F261, value); + } + + /** + * Set the F262 parameter to the routine + */ + public void setF262(java.lang.Number value) { + setNumber(F262, value); + } + + /** + * Set the F263 parameter to the routine + */ + public void setF263(java.lang.Number value) { + setNumber(F263, value); + } + + /** + * Set the F264 parameter to the routine + */ + public void setF264(java.lang.Number value) { + setNumber(F264, value); + } + + /** + * Set the F265 parameter to the routine + */ + public void setF265(java.lang.Number value) { + setNumber(F265, value); + } + + /** + * Set the F266 parameter to the routine + */ + public void setF266(java.lang.Number value) { + setNumber(F266, value); + } + + /** + * Set the F267 parameter to the routine + */ + public void setF267(java.lang.Number value) { + setNumber(F267, value); + } + + /** + * Set the F268 parameter to the routine + */ + public void setF268(java.lang.Number value) { + setNumber(F268, value); + } + + /** + * Set the F269 parameter to the routine + */ + public void setF269(java.lang.Number value) { + setNumber(F269, value); + } + + /** + * Set the F270 parameter to the routine + */ + public void setF270(java.lang.Number value) { + setNumber(F270, value); + } + + /** + * Set the F271 parameter to the routine + */ + public void setF271(java.lang.Number value) { + setNumber(F271, value); + } + + /** + * Set the F272 parameter to the routine + */ + public void setF272(java.lang.Number value) { + setNumber(F272, value); + } + + /** + * Set the F273 parameter to the routine + */ + public void setF273(java.lang.Number value) { + setNumber(F273, value); + } + + /** + * Set the F274 parameter to the routine + */ + public void setF274(java.lang.Number value) { + setNumber(F274, value); + } + + /** + * Set the F275 parameter to the routine + */ + public void setF275(java.lang.Number value) { + setNumber(F275, value); + } + + /** + * Set the F276 parameter to the routine + */ + public void setF276(java.lang.Number value) { + setNumber(F276, value); + } + + /** + * Set the F277 parameter to the routine + */ + public void setF277(java.lang.Number value) { + setNumber(F277, value); + } + + /** + * Set the F278 parameter to the routine + */ + public void setF278(java.lang.Number value) { + setNumber(F278, value); + } + + /** + * Set the F279 parameter to the routine + */ + public void setF279(java.lang.Number value) { + setNumber(F279, value); + } + + /** + * Set the F280 parameter to the routine + */ + public void setF280(java.lang.Number value) { + setNumber(F280, value); + } + + /** + * Set the F281 parameter to the routine + */ + public void setF281(java.lang.Number value) { + setNumber(F281, value); + } + + /** + * Set the F282 parameter to the routine + */ + public void setF282(java.lang.Number value) { + setNumber(F282, value); + } + + /** + * Set the F283 parameter to the routine + */ + public void setF283(java.lang.Number value) { + setNumber(F283, value); + } + + /** + * Set the F284 parameter to the routine + */ + public void setF284(java.lang.Number value) { + setNumber(F284, value); + } + + /** + * Set the F285 parameter to the routine + */ + public void setF285(java.lang.Number value) { + setNumber(F285, value); + } + + /** + * Set the F286 parameter to the routine + */ + public void setF286(java.lang.Number value) { + setNumber(F286, value); + } + + /** + * Set the F287 parameter to the routine + */ + public void setF287(java.lang.Number value) { + setNumber(F287, value); + } + + /** + * Set the F288 parameter to the routine + */ + public void setF288(java.lang.Number value) { + setNumber(F288, value); + } + + /** + * Set the F289 parameter to the routine + */ + public void setF289(java.lang.Number value) { + setNumber(F289, value); + } + + /** + * Set the F290 parameter to the routine + */ + public void setF290(java.lang.Number value) { + setNumber(F290, value); + } + + /** + * Set the F291 parameter to the routine + */ + public void setF291(java.lang.Number value) { + setNumber(F291, value); + } + + /** + * Set the F292 parameter to the routine + */ + public void setF292(java.lang.Number value) { + setNumber(F292, value); + } + + /** + * Set the F293 parameter to the routine + */ + public void setF293(java.lang.Number value) { + setNumber(F293, value); + } + + /** + * Set the F294 parameter to the routine + */ + public void setF294(java.lang.Number value) { + setNumber(F294, value); + } + + /** + * Set the F295 parameter to the routine + */ + public void setF295(java.lang.Number value) { + setNumber(F295, value); + } + + /** + * Set the F296 parameter to the routine + */ + public void setF296(java.lang.Number value) { + setNumber(F296, value); + } + + /** + * Set the F297 parameter to the routine + */ + public void setF297(java.lang.Number value) { + setNumber(F297, value); + } + + /** + * Set the F298 parameter to the routine + */ + public void setF298(java.lang.Number value) { + setNumber(F298, value); + } + + /** + * Set the F299 parameter to the routine + */ + public void setF299(java.lang.Number value) { + setNumber(F299, value); + } + + /** + * Set the F300 parameter to the routine + */ + public void setF300(java.lang.Number value) { + setNumber(F300, value); + } + + /** + * Set the F301 parameter to the routine + */ + public void setF301(java.lang.Number value) { + setNumber(F301, value); + } + + /** + * Set the F302 parameter to the routine + */ + public void setF302(java.lang.Number value) { + setNumber(F302, value); + } + + /** + * Set the F303 parameter to the routine + */ + public void setF303(java.lang.Number value) { + setNumber(F303, value); + } + + /** + * Set the F304 parameter to the routine + */ + public void setF304(java.lang.Number value) { + setNumber(F304, value); + } + + /** + * Set the F305 parameter to the routine + */ + public void setF305(java.lang.Number value) { + setNumber(F305, value); + } + + /** + * Set the F306 parameter to the routine + */ + public void setF306(java.lang.Number value) { + setNumber(F306, value); + } + + /** + * Set the F307 parameter to the routine + */ + public void setF307(java.lang.Number value) { + setNumber(F307, value); + } + + /** + * Set the F308 parameter to the routine + */ + public void setF308(java.lang.Number value) { + setNumber(F308, value); + } + + /** + * Set the F309 parameter to the routine + */ + public void setF309(java.lang.Number value) { + setNumber(F309, value); + } + + /** + * Set the F310 parameter to the routine + */ + public void setF310(java.lang.Number value) { + setNumber(F310, value); + } + + /** + * Set the F311 parameter to the routine + */ + public void setF311(java.lang.Number value) { + setNumber(F311, value); + } + + /** + * Set the F312 parameter to the routine + */ + public void setF312(java.lang.Number value) { + setNumber(F312, value); + } + + /** + * Set the F313 parameter to the routine + */ + public void setF313(java.lang.Number value) { + setNumber(F313, value); + } + + /** + * Set the F314 parameter to the routine + */ + public void setF314(java.lang.Number value) { + setNumber(F314, value); + } + + /** + * Set the F315 parameter to the routine + */ + public void setF315(java.lang.Number value) { + setNumber(F315, value); + } + + /** + * Set the F316 parameter to the routine + */ + public void setF316(java.lang.Number value) { + setNumber(F316, value); + } + + /** + * Set the F317 parameter to the routine + */ + public void setF317(java.lang.Number value) { + setNumber(F317, value); + } + + /** + * Set the F318 parameter to the routine + */ + public void setF318(java.lang.Number value) { + setNumber(F318, value); + } + + /** + * Set the F319 parameter to the routine + */ + public void setF319(java.lang.Number value) { + setNumber(F319, value); + } + + /** + * Set the F320 parameter to the routine + */ + public void setF320(java.lang.Number value) { + setNumber(F320, value); + } + + /** + * Set the F321 parameter to the routine + */ + public void setF321(java.lang.Number value) { + setNumber(F321, value); + } + + /** + * Set the F322 parameter to the routine + */ + public void setF322(java.lang.Number value) { + setNumber(F322, value); + } + + /** + * Set the F323 parameter to the routine + */ + public void setF323(java.lang.Number value) { + setNumber(F323, value); + } + + /** + * Set the F324 parameter to the routine + */ + public void setF324(java.lang.Number value) { + setNumber(F324, value); + } + + /** + * Set the F325 parameter to the routine + */ + public void setF325(java.lang.Number value) { + setNumber(F325, value); + } + + /** + * Set the F326 parameter to the routine + */ + public void setF326(java.lang.Number value) { + setNumber(F326, value); + } + + /** + * Set the F327 parameter to the routine + */ + public void setF327(java.lang.Number value) { + setNumber(F327, value); + } + + /** + * Set the F328 parameter to the routine + */ + public void setF328(java.lang.Number value) { + setNumber(F328, value); + } + + /** + * Set the F329 parameter to the routine + */ + public void setF329(java.lang.Number value) { + setNumber(F329, value); + } + + /** + * Set the F330 parameter to the routine + */ + public void setF330(java.lang.Number value) { + setNumber(F330, value); + } + + /** + * Set the F331 parameter to the routine + */ + public void setF331(java.lang.Number value) { + setNumber(F331, value); + } + + /** + * Set the F332 parameter to the routine + */ + public void setF332(java.lang.Number value) { + setNumber(F332, value); + } + + /** + * Set the F333 parameter to the routine + */ + public void setF333(java.lang.Number value) { + setNumber(F333, value); + } + + /** + * Set the F334 parameter to the routine + */ + public void setF334(java.lang.Number value) { + setNumber(F334, value); + } + + /** + * Set the F335 parameter to the routine + */ + public void setF335(java.lang.Number value) { + setNumber(F335, value); + } + + /** + * Set the F336 parameter to the routine + */ + public void setF336(java.lang.Number value) { + setNumber(F336, value); + } + + /** + * Set the F337 parameter to the routine + */ + public void setF337(java.lang.Number value) { + setNumber(F337, value); + } + + /** + * Set the F338 parameter to the routine + */ + public void setF338(java.lang.Number value) { + setNumber(F338, value); + } + + /** + * Set the F339 parameter to the routine + */ + public void setF339(java.lang.Number value) { + setNumber(F339, value); + } + + /** + * Set the F340 parameter to the routine + */ + public void setF340(java.lang.Number value) { + setNumber(F340, value); + } + + /** + * Set the F341 parameter to the routine + */ + public void setF341(java.lang.Number value) { + setNumber(F341, value); + } + + /** + * Set the F342 parameter to the routine + */ + public void setF342(java.lang.Number value) { + setNumber(F342, value); + } + + /** + * Set the F343 parameter to the routine + */ + public void setF343(java.lang.Number value) { + setNumber(F343, value); + } + + /** + * Set the F344 parameter to the routine + */ + public void setF344(java.lang.Number value) { + setNumber(F344, value); + } + + /** + * Set the F345 parameter to the routine + */ + public void setF345(java.lang.Number value) { + setNumber(F345, value); + } + + /** + * Set the F346 parameter to the routine + */ + public void setF346(java.lang.Number value) { + setNumber(F346, value); + } + + /** + * Set the F347 parameter to the routine + */ + public void setF347(java.lang.Number value) { + setNumber(F347, value); + } + + /** + * Set the F348 parameter to the routine + */ + public void setF348(java.lang.Number value) { + setNumber(F348, value); + } + + /** + * Set the F349 parameter to the routine + */ + public void setF349(java.lang.Number value) { + setNumber(F349, value); + } + + /** + * Set the F350 parameter to the routine + */ + public void setF350(java.lang.Number value) { + setNumber(F350, value); + } + + /** + * Set the F351 parameter to the routine + */ + public void setF351(java.lang.Number value) { + setNumber(F351, value); + } + + /** + * Set the F352 parameter to the routine + */ + public void setF352(java.lang.Number value) { + setNumber(F352, value); + } + + /** + * Set the F353 parameter to the routine + */ + public void setF353(java.lang.Number value) { + setNumber(F353, value); + } + + /** + * Set the F354 parameter to the routine + */ + public void setF354(java.lang.Number value) { + setNumber(F354, value); + } + + /** + * Set the F355 parameter to the routine + */ + public void setF355(java.lang.Number value) { + setNumber(F355, value); + } + + /** + * Set the F356 parameter to the routine + */ + public void setF356(java.lang.Number value) { + setNumber(F356, value); + } + + /** + * Set the F357 parameter to the routine + */ + public void setF357(java.lang.Number value) { + setNumber(F357, value); + } + + /** + * Set the F358 parameter to the routine + */ + public void setF358(java.lang.Number value) { + setNumber(F358, value); + } + + /** + * Set the F359 parameter to the routine + */ + public void setF359(java.lang.Number value) { + setNumber(F359, value); + } + + /** + * Set the F360 parameter to the routine + */ + public void setF360(java.lang.Number value) { + setNumber(F360, value); + } + + /** + * Set the F361 parameter to the routine + */ + public void setF361(java.lang.Number value) { + setNumber(F361, value); + } + + /** + * Set the F362 parameter to the routine + */ + public void setF362(java.lang.Number value) { + setNumber(F362, value); + } + + /** + * Set the F363 parameter to the routine + */ + public void setF363(java.lang.Number value) { + setNumber(F363, value); + } + + /** + * Set the F364 parameter to the routine + */ + public void setF364(java.lang.Number value) { + setNumber(F364, value); + } + + /** + * Set the F365 parameter to the routine + */ + public void setF365(java.lang.Number value) { + setNumber(F365, value); + } + + /** + * Set the F366 parameter to the routine + */ + public void setF366(java.lang.Number value) { + setNumber(F366, value); + } + + /** + * Set the F367 parameter to the routine + */ + public void setF367(java.lang.Number value) { + setNumber(F367, value); + } + + /** + * Set the F368 parameter to the routine + */ + public void setF368(java.lang.Number value) { + setNumber(F368, value); + } + + /** + * Set the F369 parameter to the routine + */ + public void setF369(java.lang.Number value) { + setNumber(F369, value); + } + + /** + * Set the F370 parameter to the routine + */ + public void setF370(java.lang.Number value) { + setNumber(F370, value); + } + + /** + * Set the F371 parameter to the routine + */ + public void setF371(java.lang.Number value) { + setNumber(F371, value); + } + + /** + * Set the F372 parameter to the routine + */ + public void setF372(java.lang.Number value) { + setNumber(F372, value); + } + + /** + * Set the F373 parameter to the routine + */ + public void setF373(java.lang.Number value) { + setNumber(F373, value); + } + + /** + * Set the F374 parameter to the routine + */ + public void setF374(java.lang.Number value) { + setNumber(F374, value); + } + + /** + * Set the F375 parameter to the routine + */ + public void setF375(java.lang.Number value) { + setNumber(F375, value); + } + + /** + * Set the F376 parameter to the routine + */ + public void setF376(java.lang.Number value) { + setNumber(F376, value); + } + + /** + * Set the F377 parameter to the routine + */ + public void setF377(java.lang.Number value) { + setNumber(F377, value); + } + + /** + * Set the F378 parameter to the routine + */ + public void setF378(java.lang.Number value) { + setNumber(F378, value); + } + + /** + * Set the F379 parameter to the routine + */ + public void setF379(java.lang.Number value) { + setNumber(F379, value); + } + + /** + * Set the F380 parameter to the routine + */ + public void setF380(java.lang.Number value) { + setNumber(F380, value); + } + + /** + * Set the F381 parameter to the routine + */ + public void setF381(java.lang.Number value) { + setNumber(F381, value); + } + + /** + * Set the F382 parameter to the routine + */ + public void setF382(java.lang.Number value) { + setNumber(F382, value); + } + + /** + * Set the F383 parameter to the routine + */ + public void setF383(java.lang.Number value) { + setNumber(F383, value); + } + + /** + * Set the F384 parameter to the routine + */ + public void setF384(java.lang.Number value) { + setNumber(F384, value); + } + + /** + * Set the F385 parameter to the routine + */ + public void setF385(java.lang.Number value) { + setNumber(F385, value); + } + + /** + * Set the F386 parameter to the routine + */ + public void setF386(java.lang.Number value) { + setNumber(F386, value); + } + + /** + * Set the F387 parameter to the routine + */ + public void setF387(java.lang.Number value) { + setNumber(F387, value); + } + + /** + * Set the F388 parameter to the routine + */ + public void setF388(java.lang.Number value) { + setNumber(F388, value); + } + + /** + * Set the F389 parameter to the routine + */ + public void setF389(java.lang.Number value) { + setNumber(F389, value); + } + + /** + * Set the F390 parameter to the routine + */ + public void setF390(java.lang.Number value) { + setNumber(F390, value); + } + + /** + * Set the F391 parameter to the routine + */ + public void setF391(java.lang.Number value) { + setNumber(F391, value); + } + + /** + * Set the F392 parameter to the routine + */ + public void setF392(java.lang.Number value) { + setNumber(F392, value); + } + + /** + * Set the F393 parameter to the routine + */ + public void setF393(java.lang.Number value) { + setNumber(F393, value); + } + + /** + * Set the F394 parameter to the routine + */ + public void setF394(java.lang.Number value) { + setNumber(F394, value); + } + + /** + * Set the F395 parameter to the routine + */ + public void setF395(java.lang.Number value) { + setNumber(F395, value); + } + + /** + * Set the F396 parameter to the routine + */ + public void setF396(java.lang.Number value) { + setNumber(F396, value); + } + + /** + * Set the F397 parameter to the routine + */ + public void setF397(java.lang.Number value) { + setNumber(F397, value); + } + + /** + * Set the F398 parameter to the routine + */ + public void setF398(java.lang.Number value) { + setNumber(F398, value); + } + + /** + * Set the F399 parameter to the routine + */ + public void setF399(java.lang.Number value) { + setNumber(F399, value); + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/routines/P_TABLES1.java b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/routines/P_TABLES1.java new file mode 100644 index 00000000000..38f32ce8a04 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/routines/P_TABLES1.java @@ -0,0 +1,44 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle3.generatedclasses.routines; + +/** + * This class is generated by jOOQ. + */ +public class P_TABLES1 extends org.jooq.impl.AbstractRoutine implements java.lang.Cloneable { + + private static final long serialVersionUID = 523032607; + + + /** + * An uncommented item + */ + public static final org.jooq.Parameter IN_TABLE = createParameter("IN_TABLE", org.jooq.impl.SQLDataType.INTEGER.asArrayDataType(org.jooq.test.oracle3.generatedclasses.udt.records.U_NUMBER_TABLE.class)); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter OUT_TABLE = createParameter("OUT_TABLE", org.jooq.impl.SQLDataType.INTEGER.asArrayDataType(org.jooq.test.oracle3.generatedclasses.udt.records.U_NUMBER_TABLE.class)); + + /** + * Create a new routine call instance + */ + public P_TABLES1() { + super("P_TABLES1", org.jooq.test.oracle3.generatedclasses.TEST.TEST); + + addInParameter(IN_TABLE); + addOutParameter(OUT_TABLE); + } + + /** + * Set the IN_TABLE parameter to the routine + */ + public void setIN_TABLE(org.jooq.test.oracle3.generatedclasses.udt.records.U_NUMBER_TABLE value) { + setValue(IN_TABLE, value); + } + + public org.jooq.test.oracle3.generatedclasses.udt.records.U_NUMBER_TABLE getOUT_TABLE() { + return getValue(OUT_TABLE); + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/routines/P_TABLES2.java b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/routines/P_TABLES2.java new file mode 100644 index 00000000000..8b1a6097664 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/routines/P_TABLES2.java @@ -0,0 +1,44 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle3.generatedclasses.routines; + +/** + * This class is generated by jOOQ. + */ +public class P_TABLES2 extends org.jooq.impl.AbstractRoutine implements java.lang.Cloneable { + + private static final long serialVersionUID = 1555172778; + + + /** + * An uncommented item + */ + public static final org.jooq.Parameter IN_TABLE = createParameter("IN_TABLE", org.jooq.impl.SQLDataType.BIGINT.asArrayDataType(org.jooq.test.oracle3.generatedclasses.udt.records.U_NUMBER_LONG_TABLE.class)); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter OUT_TABLE = createParameter("OUT_TABLE", org.jooq.impl.SQLDataType.BIGINT.asArrayDataType(org.jooq.test.oracle3.generatedclasses.udt.records.U_NUMBER_LONG_TABLE.class)); + + /** + * Create a new routine call instance + */ + public P_TABLES2() { + super("P_TABLES2", org.jooq.test.oracle3.generatedclasses.TEST.TEST); + + addInParameter(IN_TABLE); + addOutParameter(OUT_TABLE); + } + + /** + * Set the IN_TABLE parameter to the routine + */ + public void setIN_TABLE(org.jooq.test.oracle3.generatedclasses.udt.records.U_NUMBER_LONG_TABLE value) { + setValue(IN_TABLE, value); + } + + public org.jooq.test.oracle3.generatedclasses.udt.records.U_NUMBER_LONG_TABLE getOUT_TABLE() { + return getValue(OUT_TABLE); + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/routines/P_TABLES3.java b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/routines/P_TABLES3.java new file mode 100644 index 00000000000..962a02d4657 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/routines/P_TABLES3.java @@ -0,0 +1,44 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle3.generatedclasses.routines; + +/** + * This class is generated by jOOQ. + */ +public class P_TABLES3 extends org.jooq.impl.AbstractRoutine implements java.lang.Cloneable { + + private static final long serialVersionUID = 190012847; + + + /** + * An uncommented item + */ + public static final org.jooq.Parameter IN_TABLE = createParameter("IN_TABLE", org.jooq.impl.SQLDataType.VARCHAR.asArrayDataType(org.jooq.test.oracle3.generatedclasses.udt.records.U_STRING_TABLE.class)); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter OUT_TABLE = createParameter("OUT_TABLE", org.jooq.impl.SQLDataType.VARCHAR.asArrayDataType(org.jooq.test.oracle3.generatedclasses.udt.records.U_STRING_TABLE.class)); + + /** + * Create a new routine call instance + */ + public P_TABLES3() { + super("P_TABLES3", org.jooq.test.oracle3.generatedclasses.TEST.TEST); + + addInParameter(IN_TABLE); + addOutParameter(OUT_TABLE); + } + + /** + * Set the IN_TABLE parameter to the routine + */ + public void setIN_TABLE(org.jooq.test.oracle3.generatedclasses.udt.records.U_STRING_TABLE value) { + setValue(IN_TABLE, value); + } + + public org.jooq.test.oracle3.generatedclasses.udt.records.U_STRING_TABLE getOUT_TABLE() { + return getValue(OUT_TABLE); + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/routines/P_TABLES4.java b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/routines/P_TABLES4.java new file mode 100644 index 00000000000..3b8da639269 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/routines/P_TABLES4.java @@ -0,0 +1,44 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle3.generatedclasses.routines; + +/** + * This class is generated by jOOQ. + */ +public class P_TABLES4 extends org.jooq.impl.AbstractRoutine implements java.lang.Cloneable { + + private static final long serialVersionUID = 433180962; + + + /** + * An uncommented item + */ + public static final org.jooq.Parameter IN_TABLE = createParameter("IN_TABLE", org.jooq.test.oracle3.generatedclasses.udt.U_BOOK_TYPE.U_BOOK_TYPE.getDataType().asArrayDataType(org.jooq.test.oracle3.generatedclasses.udt.records.U_BOOK_TABLE.class)); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter OUT_TABLE = createParameter("OUT_TABLE", org.jooq.test.oracle3.generatedclasses.udt.U_BOOK_TYPE.U_BOOK_TYPE.getDataType().asArrayDataType(org.jooq.test.oracle3.generatedclasses.udt.records.U_BOOK_TABLE.class)); + + /** + * Create a new routine call instance + */ + public P_TABLES4() { + super("P_TABLES4", org.jooq.test.oracle3.generatedclasses.TEST.TEST); + + addInParameter(IN_TABLE); + addOutParameter(OUT_TABLE); + } + + /** + * Set the IN_TABLE parameter to the routine + */ + public void setIN_TABLE(org.jooq.test.oracle3.generatedclasses.udt.records.U_BOOK_TABLE value) { + setValue(IN_TABLE, value); + } + + public org.jooq.test.oracle3.generatedclasses.udt.records.U_BOOK_TABLE getOUT_TABLE() { + return getValue(OUT_TABLE); + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/routines/P_UNUSED.java b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/routines/P_UNUSED.java new file mode 100644 index 00000000000..bacc1e09d43 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/routines/P_UNUSED.java @@ -0,0 +1,61 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle3.generatedclasses.routines; + +/** + * This class is generated by jOOQ. + */ +public class P_UNUSED extends org.jooq.impl.AbstractRoutine implements java.lang.Cloneable { + + private static final long serialVersionUID = -1445117337; + + + /** + * An uncommented item + */ + public static final org.jooq.Parameter IN1 = createParameter("IN1", org.jooq.impl.SQLDataType.VARCHAR); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter OUT1 = createParameter("OUT1", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter OUT2 = createParameter("OUT2", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * Create a new routine call instance + */ + public P_UNUSED() { + super("P_UNUSED", org.jooq.test.oracle3.generatedclasses.TEST.TEST); + + addInParameter(IN1); + addOutParameter(OUT1); + addInOutParameter(OUT2); + } + + /** + * Set the IN1 parameter to the routine + */ + public void setIN1(java.lang.String value) { + setValue(IN1, value); + } + + /** + * Set the OUT2 parameter to the routine + */ + public void setOUT2(java.lang.Number value) { + setNumber(OUT2, value); + } + + public java.math.BigDecimal getOUT1() { + return getValue(OUT1); + } + + public java.math.BigDecimal getOUT2() { + return getValue(OUT2); + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/tables/T_639_NUMBERS_TABLE.java b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/tables/T_639_NUMBERS_TABLE.java new file mode 100644 index 00000000000..b30a62940dc --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/tables/T_639_NUMBERS_TABLE.java @@ -0,0 +1,111 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle3.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class T_639_NUMBERS_TABLE extends org.jooq.impl.UpdatableTableImpl implements java.lang.Cloneable { + + private static final long serialVersionUID = 926003887; + + /** + * The singleton instance of TEST.T_639_NUMBERS_TABLE + */ + public static final org.jooq.test.oracle3.generatedclasses.tables.T_639_NUMBERS_TABLE T_639_NUMBERS_TABLE = new org.jooq.test.oracle3.generatedclasses.tables.T_639_NUMBERS_TABLE(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.Record.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final org.jooq.TableField ID = createField("ID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField BYTE = createField("BYTE", org.jooq.impl.SQLDataType.TINYINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField SHORT = createField("SHORT", org.jooq.impl.SQLDataType.SMALLINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField INTEGER = createField("INTEGER", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField LONG = createField("LONG", org.jooq.impl.SQLDataType.BIGINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField BYTE_DECIMAL = createField("BYTE_DECIMAL", org.jooq.impl.SQLDataType.TINYINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField SHORT_DECIMAL = createField("SHORT_DECIMAL", org.jooq.impl.SQLDataType.SMALLINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField INTEGER_DECIMAL = createField("INTEGER_DECIMAL", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField LONG_DECIMAL = createField("LONG_DECIMAL", org.jooq.impl.SQLDataType.BIGINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField BIG_INTEGER = createField("BIG_INTEGER", org.jooq.impl.SQLDataType.DECIMAL_INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField BIG_DECIMAL = createField("BIG_DECIMAL", org.jooq.impl.SQLDataType.NUMERIC, this); + + public T_639_NUMBERS_TABLE() { + super("T_639_NUMBERS_TABLE", org.jooq.test.oracle3.generatedclasses.TEST.TEST); + } + + public T_639_NUMBERS_TABLE(java.lang.String alias) { + super(alias, org.jooq.test.oracle3.generatedclasses.TEST.TEST, org.jooq.test.oracle3.generatedclasses.tables.T_639_NUMBERS_TABLE.T_639_NUMBERS_TABLE); + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.test.oracle3.generatedclasses.Keys.PK_T_639_NUMBERS_TABLE; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.test.oracle3.generatedclasses.Keys.PK_T_639_NUMBERS_TABLE); + } + + @Override + public org.jooq.test.oracle3.generatedclasses.tables.T_639_NUMBERS_TABLE as(java.lang.String alias) { + return new org.jooq.test.oracle3.generatedclasses.tables.T_639_NUMBERS_TABLE(alias); + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/tables/T_658_REF.java b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/tables/T_658_REF.java new file mode 100644 index 00000000000..a7a77f2f173 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/tables/T_658_REF.java @@ -0,0 +1,115 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle3.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class T_658_REF extends org.jooq.impl.TableImpl implements java.lang.Cloneable { + + private static final long serialVersionUID = -1787124707; + + /** + * The singleton instance of TEST.T_658_REF + */ + public static final org.jooq.test.oracle3.generatedclasses.tables.T_658_REF T_658_REF = new org.jooq.test.oracle3.generatedclasses.tables.T_658_REF(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.Record.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_T_658_11
+	 * FOREIGN KEY (REF_11)
+	 * REFERENCES TEST.T_658_11 (ID)
+	 * 
+ */ + public final org.jooq.TableField REF_11 = createField("REF_11", org.jooq.impl.SQLDataType.CHAR.asMasterDataType(org.jooq.test.oracle3.generatedclasses.enums.T_658_11.class), this); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_T_658_21
+	 * FOREIGN KEY (REF_21)
+	 * REFERENCES TEST.T_658_21 (ID)
+	 * 
+ */ + public final org.jooq.TableField REF_21 = createField("REF_21", org.jooq.impl.SQLDataType.INTEGER.asMasterDataType(org.jooq.test.oracle3.generatedclasses.enums.T_658_21.class), this); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_T_658_31
+	 * FOREIGN KEY (REF_31)
+	 * REFERENCES TEST.T_658_31 (ID)
+	 * 
+ */ + public final org.jooq.TableField REF_31 = createField("REF_31", org.jooq.impl.SQLDataType.BIGINT.asMasterDataType(org.jooq.test.oracle3.generatedclasses.enums.T_658_31.class), this); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_T_658_12
+	 * FOREIGN KEY (REF_12)
+	 * REFERENCES TEST.T_658_12 (ID)
+	 * 
+ */ + public final org.jooq.TableField REF_12 = createField("REF_12", org.jooq.impl.SQLDataType.CHAR.asMasterDataType(org.jooq.test.oracle3.generatedclasses.enums.T_658_12.class), this); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_T_658_22
+	 * FOREIGN KEY (REF_22)
+	 * REFERENCES TEST.T_658_22 (ID)
+	 * 
+ */ + public final org.jooq.TableField REF_22 = createField("REF_22", org.jooq.impl.SQLDataType.INTEGER.asMasterDataType(org.jooq.test.oracle3.generatedclasses.enums.T_658_22.class), this); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_T_658_32
+	 * FOREIGN KEY (REF_32)
+	 * REFERENCES TEST.T_658_32 (ID)
+	 * 
+ */ + public final org.jooq.TableField REF_32 = createField("REF_32", org.jooq.impl.SQLDataType.BIGINT.asMasterDataType(org.jooq.test.oracle3.generatedclasses.enums.T_658_32.class), this); + + public T_658_REF() { + super("T_658_REF", org.jooq.test.oracle3.generatedclasses.TEST.TEST); + } + + public T_658_REF(java.lang.String alias) { + super(alias, org.jooq.test.oracle3.generatedclasses.TEST.TEST, org.jooq.test.oracle3.generatedclasses.tables.T_658_REF.T_658_REF); + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getReferences() { + return java.util.Arrays.>asList(); + } + + @Override + public org.jooq.test.oracle3.generatedclasses.tables.T_658_REF as(java.lang.String alias) { + return new org.jooq.test.oracle3.generatedclasses.tables.T_658_REF(alias); + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/tables/T_725_LOB_TEST.java b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/tables/T_725_LOB_TEST.java new file mode 100644 index 00000000000..635c50935b8 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/tables/T_725_LOB_TEST.java @@ -0,0 +1,66 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle3.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class T_725_LOB_TEST extends org.jooq.impl.UpdatableTableImpl implements java.lang.Cloneable { + + private static final long serialVersionUID = -882962813; + + /** + * The singleton instance of TEST.T_725_LOB_TEST + */ + public static final org.jooq.test.oracle3.generatedclasses.tables.T_725_LOB_TEST T_725_LOB_TEST = new org.jooq.test.oracle3.generatedclasses.tables.T_725_LOB_TEST(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.Record.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final org.jooq.TableField ID = createField("ID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField LOB = createField("LOB", org.jooq.impl.SQLDataType.BLOB, this); + + public T_725_LOB_TEST() { + super("T_725_LOB_TEST", org.jooq.test.oracle3.generatedclasses.TEST.TEST); + } + + public T_725_LOB_TEST(java.lang.String alias) { + super(alias, org.jooq.test.oracle3.generatedclasses.TEST.TEST, org.jooq.test.oracle3.generatedclasses.tables.T_725_LOB_TEST.T_725_LOB_TEST); + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.test.oracle3.generatedclasses.Keys.PK_T_725_LOB_TEST; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.test.oracle3.generatedclasses.Keys.PK_T_725_LOB_TEST); + } + + @Override + public org.jooq.test.oracle3.generatedclasses.tables.T_725_LOB_TEST as(java.lang.String alias) { + return new org.jooq.test.oracle3.generatedclasses.tables.T_725_LOB_TEST(alias); + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/tables/T_785.java b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/tables/T_785.java new file mode 100644 index 00000000000..6c6dcee494f --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/tables/T_785.java @@ -0,0 +1,58 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle3.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class T_785 extends org.jooq.impl.TableImpl implements java.lang.Cloneable { + + private static final long serialVersionUID = 1601549952; + + /** + * The singleton instance of TEST.T_785 + */ + public static final org.jooq.test.oracle3.generatedclasses.tables.T_785 T_785 = new org.jooq.test.oracle3.generatedclasses.tables.T_785(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.Record.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + */ + public final org.jooq.TableField ID = createField("ID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField NAME = createField("NAME", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField VALUE = createField("VALUE", org.jooq.impl.SQLDataType.VARCHAR, this); + + public T_785() { + super("T_785", org.jooq.test.oracle3.generatedclasses.TEST.TEST); + } + + public T_785(java.lang.String alias) { + super(alias, org.jooq.test.oracle3.generatedclasses.TEST.TEST, org.jooq.test.oracle3.generatedclasses.tables.T_785.T_785); + } + + @Override + public org.jooq.test.oracle3.generatedclasses.tables.T_785 as(java.lang.String alias) { + return new org.jooq.test.oracle3.generatedclasses.tables.T_785(alias); + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/tables/T_ARRAYS.java b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/tables/T_ARRAYS.java new file mode 100644 index 00000000000..60ad9c94aea --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/tables/T_ARRAYS.java @@ -0,0 +1,81 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle3.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class T_ARRAYS extends org.jooq.impl.UpdatableTableImpl implements java.lang.Cloneable { + + private static final long serialVersionUID = -458471171; + + /** + * The singleton instance of TEST.T_ARRAYS + */ + public static final org.jooq.test.oracle3.generatedclasses.tables.T_ARRAYS T_ARRAYS = new org.jooq.test.oracle3.generatedclasses.tables.T_ARRAYS(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.Record.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final org.jooq.TableField ID = createField("ID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField STRING_ARRAY = createField("STRING_ARRAY", org.jooq.impl.SQLDataType.VARCHAR.asArrayDataType(org.jooq.test.oracle3.generatedclasses.udt.records.U_STRING_ARRAY.class), this); + + /** + * An uncommented item + */ + public final org.jooq.TableField NUMBER_ARRAY = createField("NUMBER_ARRAY", org.jooq.impl.SQLDataType.INTEGER.asArrayDataType(org.jooq.test.oracle3.generatedclasses.udt.records.U_NUMBER_ARRAY.class), this); + + /** + * An uncommented item + */ + public final org.jooq.TableField NUMBER_LONG_ARRAY = createField("NUMBER_LONG_ARRAY", org.jooq.impl.SQLDataType.BIGINT.asArrayDataType(org.jooq.test.oracle3.generatedclasses.udt.records.U_NUMBER_LONG_ARRAY.class), this); + + /** + * An uncommented item + */ + public final org.jooq.TableField DATE_ARRAY = createField("DATE_ARRAY", org.jooq.impl.SQLDataType.DATE.asArrayDataType(org.jooq.test.oracle3.generatedclasses.udt.records.U_DATE_ARRAY.class), this); + + public T_ARRAYS() { + super("T_ARRAYS", org.jooq.test.oracle3.generatedclasses.TEST.TEST); + } + + public T_ARRAYS(java.lang.String alias) { + super(alias, org.jooq.test.oracle3.generatedclasses.TEST.TEST, org.jooq.test.oracle3.generatedclasses.tables.T_ARRAYS.T_ARRAYS); + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.test.oracle3.generatedclasses.Keys.PK_T_ARRAYS; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.test.oracle3.generatedclasses.Keys.PK_T_ARRAYS); + } + + @Override + public org.jooq.test.oracle3.generatedclasses.tables.T_ARRAYS as(java.lang.String alias) { + return new org.jooq.test.oracle3.generatedclasses.tables.T_ARRAYS(alias); + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/tables/T_AUTHOR.java b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/tables/T_AUTHOR.java new file mode 100644 index 00000000000..8bcbf9de5f7 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/tables/T_AUTHOR.java @@ -0,0 +1,88 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle3.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + * + * An entity holding authors of books + */ +public class T_AUTHOR extends org.jooq.impl.UpdatableTableImpl implements java.lang.Cloneable { + + private static final long serialVersionUID = -2005981809; + + /** + * The singleton instance of TEST.T_AUTHOR + */ + public static final org.jooq.test.oracle3.generatedclasses.tables.T_AUTHOR T_AUTHOR = new org.jooq.test.oracle3.generatedclasses.tables.T_AUTHOR(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.Record.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * The author ID + * + * PRIMARY KEY + */ + public final org.jooq.TableField ID = createField("ID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * The author's first name + */ + public final org.jooq.TableField FIRST_NAME = createField("FIRST_NAME", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * The author's last name + */ + public final org.jooq.TableField LAST_NAME = createField("LAST_NAME", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * The author's date of birth + */ + public final org.jooq.TableField DATE_OF_BIRTH = createField("DATE_OF_BIRTH", org.jooq.impl.SQLDataType.DATE, this); + + /** + * The author's year of birth + */ + public final org.jooq.TableField YEAR_OF_BIRTH = createField("YEAR_OF_BIRTH", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * The author's address + */ + public final org.jooq.TableField ADDRESS = createField("ADDRESS", org.jooq.test.oracle3.generatedclasses.udt.U_ADDRESS_TYPE.U_ADDRESS_TYPE.getDataType(), this); + + public T_AUTHOR() { + super("T_AUTHOR", org.jooq.test.oracle3.generatedclasses.TEST.TEST); + } + + public T_AUTHOR(java.lang.String alias) { + super(alias, org.jooq.test.oracle3.generatedclasses.TEST.TEST, org.jooq.test.oracle3.generatedclasses.tables.T_AUTHOR.T_AUTHOR); + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.test.oracle3.generatedclasses.Keys.PK_T_AUTHOR; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.test.oracle3.generatedclasses.Keys.PK_T_AUTHOR); + } + + @Override + public org.jooq.test.oracle3.generatedclasses.tables.T_AUTHOR as(java.lang.String alias) { + return new org.jooq.test.oracle3.generatedclasses.tables.T_AUTHOR(alias); + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/tables/T_BOOK.java b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/tables/T_BOOK.java new file mode 100644 index 00000000000..db51f787f57 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/tables/T_BOOK.java @@ -0,0 +1,127 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle3.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + * + * An entity holding books + */ +public class T_BOOK extends org.jooq.impl.UpdatableTableImpl implements java.lang.Cloneable { + + private static final long serialVersionUID = 1478309302; + + /** + * The singleton instance of TEST.T_BOOK + */ + public static final org.jooq.test.oracle3.generatedclasses.tables.T_BOOK T_BOOK = new org.jooq.test.oracle3.generatedclasses.tables.T_BOOK(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.Record.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * The book ID + * + * PRIMARY KEY + */ + public final org.jooq.TableField ID = createField("ID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * The author ID in entity 'author' + *

+ *

+	 * CONSTRAINT FK_T_BOOK_AUTHOR_ID
+	 * FOREIGN KEY (AUTHOR_ID)
+	 * REFERENCES TEST.T_AUTHOR (ID)
+	 * 
+ */ + public final org.jooq.TableField AUTHOR_ID = createField("AUTHOR_ID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_T_BOOK_CO_AUTHOR_ID
+	 * FOREIGN KEY (CO_AUTHOR_ID)
+	 * REFERENCES TEST.T_AUTHOR (ID)
+	 * 
+ */ + public final org.jooq.TableField CO_AUTHOR_ID = createField("CO_AUTHOR_ID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField DETAILS_ID = createField("DETAILS_ID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * The book's title + */ + public final org.jooq.TableField TITLE = createField("TITLE", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * The year the book was published in + */ + public final org.jooq.TableField PUBLISHED_IN = createField("PUBLISHED_IN", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * The language of the book + *

+ *

+	 * CONSTRAINT FK_T_BOOK_LANGUAGE_ID
+	 * FOREIGN KEY (LANGUAGE_ID)
+	 * REFERENCES TEST.T_LANGUAGE (ID)
+	 * 
+ */ + public final org.jooq.TableField LANGUAGE_ID = createField("LANGUAGE_ID", org.jooq.impl.SQLDataType.INTEGER.asMasterDataType(org.jooq.test.oracle3.generatedclasses.enums.T_LANGUAGE.class), this); + + /** + * Some textual content of the book + */ + public final org.jooq.TableField CONTENT_TEXT = createField("CONTENT_TEXT", org.jooq.impl.SQLDataType.CLOB, this); + + /** + * Some binary content of the book + */ + public final org.jooq.TableField CONTENT_PDF = createField("CONTENT_PDF", org.jooq.impl.SQLDataType.BLOB, this); + + public T_BOOK() { + super("T_BOOK", org.jooq.test.oracle3.generatedclasses.TEST.TEST); + } + + public T_BOOK(java.lang.String alias) { + super(alias, org.jooq.test.oracle3.generatedclasses.TEST.TEST, org.jooq.test.oracle3.generatedclasses.tables.T_BOOK.T_BOOK); + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.test.oracle3.generatedclasses.Keys.PK_T_BOOK; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.test.oracle3.generatedclasses.Keys.PK_T_BOOK); + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getReferences() { + return java.util.Arrays.>asList(org.jooq.test.oracle3.generatedclasses.Keys.FK_T_BOOK_AUTHOR_ID, org.jooq.test.oracle3.generatedclasses.Keys.FK_T_BOOK_CO_AUTHOR_ID); + } + + @Override + public org.jooq.test.oracle3.generatedclasses.tables.T_BOOK as(java.lang.String alias) { + return new org.jooq.test.oracle3.generatedclasses.tables.T_BOOK(alias); + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/tables/T_BOOK_STORE.java b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/tables/T_BOOK_STORE.java new file mode 100644 index 00000000000..0b601e47dcc --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/tables/T_BOOK_STORE.java @@ -0,0 +1,61 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle3.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + * + * A book store + */ +public class T_BOOK_STORE extends org.jooq.impl.UpdatableTableImpl implements java.lang.Cloneable { + + private static final long serialVersionUID = -401399689; + + /** + * The singleton instance of TEST.T_BOOK_STORE + */ + public static final org.jooq.test.oracle3.generatedclasses.tables.T_BOOK_STORE T_BOOK_STORE = new org.jooq.test.oracle3.generatedclasses.tables.T_BOOK_STORE(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.Record.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * The books store name + */ + public final org.jooq.TableField NAME = createField("NAME", org.jooq.impl.SQLDataType.VARCHAR, this); + + public T_BOOK_STORE() { + super("T_BOOK_STORE", org.jooq.test.oracle3.generatedclasses.TEST.TEST); + } + + public T_BOOK_STORE(java.lang.String alias) { + super(alias, org.jooq.test.oracle3.generatedclasses.TEST.TEST, org.jooq.test.oracle3.generatedclasses.tables.T_BOOK_STORE.T_BOOK_STORE); + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.test.oracle3.generatedclasses.Keys.UK_T_BOOK_STORE_NAME; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.test.oracle3.generatedclasses.Keys.UK_T_BOOK_STORE_NAME); + } + + @Override + public org.jooq.test.oracle3.generatedclasses.tables.T_BOOK_STORE as(java.lang.String alias) { + return new org.jooq.test.oracle3.generatedclasses.tables.T_BOOK_STORE(alias); + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/tables/T_BOOK_TO_BOOK_STORE.java b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/tables/T_BOOK_TO_BOOK_STORE.java new file mode 100644 index 00000000000..045c11ea0a5 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/tables/T_BOOK_TO_BOOK_STORE.java @@ -0,0 +1,93 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle3.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + * + * An m:n relation between books and book stores + */ +public class T_BOOK_TO_BOOK_STORE extends org.jooq.impl.UpdatableTableImpl implements java.lang.Cloneable { + + private static final long serialVersionUID = 933527365; + + /** + * The singleton instance of TEST.T_BOOK_TO_BOOK_STORE + */ + public static final org.jooq.test.oracle3.generatedclasses.tables.T_BOOK_TO_BOOK_STORE T_BOOK_TO_BOOK_STORE = new org.jooq.test.oracle3.generatedclasses.tables.T_BOOK_TO_BOOK_STORE(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.Record.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * The book store name + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT FK_B2BS_BS_NAME
+	 * FOREIGN KEY (BOOK_STORE_NAME)
+	 * REFERENCES TEST.T_BOOK_STORE (NAME)
+	 * 
+ */ + public final org.jooq.TableField BOOK_STORE_NAME = createField("BOOK_STORE_NAME", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * The book ID + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT FK_B2BS_B_ID
+	 * FOREIGN KEY (BOOK_ID)
+	 * REFERENCES TEST.T_BOOK (ID)
+	 * 
+ */ + public final org.jooq.TableField BOOK_ID = createField("BOOK_ID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * The number of books on stock + */ + public final org.jooq.TableField STOCK = createField("STOCK", org.jooq.impl.SQLDataType.INTEGER, this); + + public T_BOOK_TO_BOOK_STORE() { + super("T_BOOK_TO_BOOK_STORE", org.jooq.test.oracle3.generatedclasses.TEST.TEST); + } + + public T_BOOK_TO_BOOK_STORE(java.lang.String alias) { + super(alias, org.jooq.test.oracle3.generatedclasses.TEST.TEST, org.jooq.test.oracle3.generatedclasses.tables.T_BOOK_TO_BOOK_STORE.T_BOOK_TO_BOOK_STORE); + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.test.oracle3.generatedclasses.Keys.PK_B2BS; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.test.oracle3.generatedclasses.Keys.PK_B2BS); + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getReferences() { + return java.util.Arrays.>asList(org.jooq.test.oracle3.generatedclasses.Keys.FK_B2BS_BS_NAME, org.jooq.test.oracle3.generatedclasses.Keys.FK_B2BS_B_ID); + } + + @Override + public org.jooq.test.oracle3.generatedclasses.tables.T_BOOK_TO_BOOK_STORE as(java.lang.String alias) { + return new org.jooq.test.oracle3.generatedclasses.tables.T_BOOK_TO_BOOK_STORE(alias); + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/tables/T_BOOLEANS.java b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/tables/T_BOOLEANS.java new file mode 100644 index 00000000000..01ea81ec208 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/tables/T_BOOLEANS.java @@ -0,0 +1,111 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle3.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class T_BOOLEANS extends org.jooq.impl.UpdatableTableImpl implements java.lang.Cloneable { + + private static final long serialVersionUID = 820393628; + + /** + * The singleton instance of TEST.T_BOOLEANS + */ + public static final org.jooq.test.oracle3.generatedclasses.tables.T_BOOLEANS T_BOOLEANS = new org.jooq.test.oracle3.generatedclasses.tables.T_BOOLEANS(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.Record.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final org.jooq.TableField ID = createField("ID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField ONE_ZERO = createField("ONE_ZERO", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField TRUE_FALSE_LC = createField("TRUE_FALSE_LC", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField TRUE_FALSE_UC = createField("TRUE_FALSE_UC", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField YES_NO_LC = createField("YES_NO_LC", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField YES_NO_UC = createField("YES_NO_UC", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField Y_N_LC = createField("Y_N_LC", org.jooq.impl.SQLDataType.CHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField Y_N_UC = createField("Y_N_UC", org.jooq.impl.SQLDataType.CHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField VC_BOOLEAN = createField("VC_BOOLEAN", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField C_BOOLEAN = createField("C_BOOLEAN", org.jooq.impl.SQLDataType.CHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField N_BOOLEAN = createField("N_BOOLEAN", org.jooq.impl.SQLDataType.INTEGER, this); + + public T_BOOLEANS() { + super("T_BOOLEANS", org.jooq.test.oracle3.generatedclasses.TEST.TEST); + } + + public T_BOOLEANS(java.lang.String alias) { + super(alias, org.jooq.test.oracle3.generatedclasses.TEST.TEST, org.jooq.test.oracle3.generatedclasses.tables.T_BOOLEANS.T_BOOLEANS); + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.test.oracle3.generatedclasses.Keys.PK_T_BOOLEANS; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.test.oracle3.generatedclasses.Keys.PK_T_BOOLEANS); + } + + @Override + public org.jooq.test.oracle3.generatedclasses.tables.T_BOOLEANS as(java.lang.String alias) { + return new org.jooq.test.oracle3.generatedclasses.tables.T_BOOLEANS(alias); + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/tables/T_DATES.java b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/tables/T_DATES.java new file mode 100644 index 00000000000..97f5eb784b8 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/tables/T_DATES.java @@ -0,0 +1,96 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle3.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class T_DATES extends org.jooq.impl.UpdatableTableImpl implements java.lang.Cloneable { + + private static final long serialVersionUID = 683579897; + + /** + * The singleton instance of TEST.T_DATES + */ + public static final org.jooq.test.oracle3.generatedclasses.tables.T_DATES T_DATES = new org.jooq.test.oracle3.generatedclasses.tables.T_DATES(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.Record.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final org.jooq.TableField ID = createField("ID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField D = createField("D", org.jooq.impl.SQLDataType.DATE, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField T = createField("T", org.jooq.impl.SQLDataType.TIMESTAMP, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField TS = createField("TS", org.jooq.impl.SQLDataType.TIMESTAMP, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField D_INT = createField("D_INT", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField TS_BIGINT = createField("TS_BIGINT", org.jooq.impl.SQLDataType.BIGINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField I_Y = createField("I_Y", org.jooq.impl.SQLDataType.INTERVALYEARTOMONTH, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField I_D = createField("I_D", org.jooq.impl.SQLDataType.INTERVALDAYTOSECOND, this); + + public T_DATES() { + super("T_DATES", org.jooq.test.oracle3.generatedclasses.TEST.TEST); + } + + public T_DATES(java.lang.String alias) { + super(alias, org.jooq.test.oracle3.generatedclasses.TEST.TEST, org.jooq.test.oracle3.generatedclasses.tables.T_DATES.T_DATES); + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.test.oracle3.generatedclasses.Keys.PK_T_DATES; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.test.oracle3.generatedclasses.Keys.PK_T_DATES); + } + + @Override + public org.jooq.test.oracle3.generatedclasses.tables.T_DATES as(java.lang.String alias) { + return new org.jooq.test.oracle3.generatedclasses.tables.T_DATES(alias); + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/tables/T_DIRECTORY.java b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/tables/T_DIRECTORY.java new file mode 100644 index 00000000000..c1bb13ac692 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/tables/T_DIRECTORY.java @@ -0,0 +1,88 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle3.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class T_DIRECTORY extends org.jooq.impl.UpdatableTableImpl implements java.lang.Cloneable { + + private static final long serialVersionUID = 100819955; + + /** + * The singleton instance of TEST.T_DIRECTORY + */ + public static final org.jooq.test.oracle3.generatedclasses.tables.T_DIRECTORY T_DIRECTORY = new org.jooq.test.oracle3.generatedclasses.tables.T_DIRECTORY(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.Record.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final org.jooq.TableField ID = createField("ID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT PK_T_DIRECTORY_SELF
+	 * FOREIGN KEY (PARENT_ID)
+	 * REFERENCES TEST.T_DIRECTORY (ID)
+	 * 
+ */ + public final org.jooq.TableField PARENT_ID = createField("PARENT_ID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField IS_DIRECTORY = createField("IS_DIRECTORY", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField name = createField("name", org.jooq.impl.SQLDataType.VARCHAR, this); + + public T_DIRECTORY() { + super("T_DIRECTORY", org.jooq.test.oracle3.generatedclasses.TEST.TEST); + } + + public T_DIRECTORY(java.lang.String alias) { + super(alias, org.jooq.test.oracle3.generatedclasses.TEST.TEST, org.jooq.test.oracle3.generatedclasses.tables.T_DIRECTORY.T_DIRECTORY); + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.test.oracle3.generatedclasses.Keys.PK_T_DIRECTORY; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.test.oracle3.generatedclasses.Keys.PK_T_DIRECTORY); + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getReferences() { + return java.util.Arrays.>asList(org.jooq.test.oracle3.generatedclasses.Keys.PK_T_DIRECTORY_SELF); + } + + @Override + public org.jooq.test.oracle3.generatedclasses.tables.T_DIRECTORY as(java.lang.String alias) { + return new org.jooq.test.oracle3.generatedclasses.tables.T_DIRECTORY(alias); + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/tables/T_TRIGGERS.java b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/tables/T_TRIGGERS.java new file mode 100644 index 00000000000..c105d2e7bd6 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/tables/T_TRIGGERS.java @@ -0,0 +1,71 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle3.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class T_TRIGGERS extends org.jooq.impl.UpdatableTableImpl implements java.lang.Cloneable { + + private static final long serialVersionUID = 1144273551; + + /** + * The singleton instance of TEST.T_TRIGGERS + */ + public static final org.jooq.test.oracle3.generatedclasses.tables.T_TRIGGERS T_TRIGGERS = new org.jooq.test.oracle3.generatedclasses.tables.T_TRIGGERS(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.Record.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final org.jooq.TableField ID_GENERATED = createField("ID_GENERATED", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField ID = createField("ID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField COUNTER = createField("COUNTER", org.jooq.impl.SQLDataType.INTEGER, this); + + public T_TRIGGERS() { + super("T_TRIGGERS", org.jooq.test.oracle3.generatedclasses.TEST.TEST); + } + + public T_TRIGGERS(java.lang.String alias) { + super(alias, org.jooq.test.oracle3.generatedclasses.TEST.TEST, org.jooq.test.oracle3.generatedclasses.tables.T_TRIGGERS.T_TRIGGERS); + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.test.oracle3.generatedclasses.Keys.PK_T_TRIGGERS; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.test.oracle3.generatedclasses.Keys.PK_T_TRIGGERS); + } + + @Override + public org.jooq.test.oracle3.generatedclasses.tables.T_TRIGGERS as(java.lang.String alias) { + return new org.jooq.test.oracle3.generatedclasses.tables.T_TRIGGERS(alias); + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/tables/V_AUTHOR.java b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/tables/V_AUTHOR.java new file mode 100644 index 00000000000..19c98c5b1fc --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/tables/V_AUTHOR.java @@ -0,0 +1,73 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle3.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class V_AUTHOR extends org.jooq.impl.TableImpl implements java.lang.Cloneable { + + private static final long serialVersionUID = -537046280; + + /** + * The singleton instance of TEST.V_AUTHOR + */ + public static final org.jooq.test.oracle3.generatedclasses.tables.V_AUTHOR V_AUTHOR = new org.jooq.test.oracle3.generatedclasses.tables.V_AUTHOR(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.Record.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + */ + public final org.jooq.TableField ID = createField("ID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField FIRST_NAME = createField("FIRST_NAME", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField LAST_NAME = createField("LAST_NAME", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField DATE_OF_BIRTH = createField("DATE_OF_BIRTH", org.jooq.impl.SQLDataType.DATE, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField YEAR_OF_BIRTH = createField("YEAR_OF_BIRTH", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField ADDRESS = createField("ADDRESS", org.jooq.test.oracle3.generatedclasses.udt.U_ADDRESS_TYPE.U_ADDRESS_TYPE.getDataType(), this); + + public V_AUTHOR() { + super("V_AUTHOR", org.jooq.test.oracle3.generatedclasses.TEST.TEST); + } + + public V_AUTHOR(java.lang.String alias) { + super(alias, org.jooq.test.oracle3.generatedclasses.TEST.TEST, org.jooq.test.oracle3.generatedclasses.tables.V_AUTHOR.V_AUTHOR); + } + + @Override + public org.jooq.test.oracle3.generatedclasses.tables.V_AUTHOR as(java.lang.String alias) { + return new org.jooq.test.oracle3.generatedclasses.tables.V_AUTHOR(alias); + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/tables/V_BOOK.java b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/tables/V_BOOK.java new file mode 100644 index 00000000000..098ae9fc2f1 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/tables/V_BOOK.java @@ -0,0 +1,88 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle3.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class V_BOOK extends org.jooq.impl.TableImpl implements java.lang.Cloneable { + + private static final long serialVersionUID = -1210271736; + + /** + * The singleton instance of TEST.V_BOOK + */ + public static final org.jooq.test.oracle3.generatedclasses.tables.V_BOOK V_BOOK = new org.jooq.test.oracle3.generatedclasses.tables.V_BOOK(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.Record.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + */ + public final org.jooq.TableField ID = createField("ID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField AUTHOR_ID = createField("AUTHOR_ID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField CO_AUTHOR_ID = createField("CO_AUTHOR_ID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField DETAILS_ID = createField("DETAILS_ID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField TITLE = createField("TITLE", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField PUBLISHED_IN = createField("PUBLISHED_IN", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField LANGUAGE_ID = createField("LANGUAGE_ID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField CONTENT_TEXT = createField("CONTENT_TEXT", org.jooq.impl.SQLDataType.CLOB, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField CONTENT_PDF = createField("CONTENT_PDF", org.jooq.impl.SQLDataType.BLOB, this); + + public V_BOOK() { + super("V_BOOK", org.jooq.test.oracle3.generatedclasses.TEST.TEST); + } + + public V_BOOK(java.lang.String alias) { + super(alias, org.jooq.test.oracle3.generatedclasses.TEST.TEST, org.jooq.test.oracle3.generatedclasses.tables.V_BOOK.V_BOOK); + } + + @Override + public org.jooq.test.oracle3.generatedclasses.tables.V_BOOK as(java.lang.String alias) { + return new org.jooq.test.oracle3.generatedclasses.tables.V_BOOK(alias); + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/tables/V_INCOMPLETE.java b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/tables/V_INCOMPLETE.java new file mode 100644 index 00000000000..408ba58699c --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/tables/V_INCOMPLETE.java @@ -0,0 +1,115 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle3.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class V_INCOMPLETE extends org.jooq.impl.TableImpl implements java.lang.Cloneable { + + private static final long serialVersionUID = 1304974742; + + /** + * The singleton instance of TEST.V_INCOMPLETE + */ + public static final org.jooq.test.oracle3.generatedclasses.tables.V_INCOMPLETE V_INCOMPLETE = new org.jooq.test.oracle3.generatedclasses.tables.V_INCOMPLETE(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.Record.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * The SQL type of this item (UNDEFINED) could not be mapped.
+ * Deserialising this field might not work! + */ + public final org.jooq.TableField ID = createField("ID", org.jooq.util.oracle.OracleDataType.getDefaultDataType("UNDEFINED"), this); + + /** + * An uncommented item + * + * The SQL type of this item (UNDEFINED) could not be mapped.
+ * Deserialising this field might not work! + */ + public final org.jooq.TableField AUTHOR_ID = createField("AUTHOR_ID", org.jooq.util.oracle.OracleDataType.getDefaultDataType("UNDEFINED"), this); + + /** + * An uncommented item + * + * The SQL type of this item (UNDEFINED) could not be mapped.
+ * Deserialising this field might not work! + */ + public final org.jooq.TableField CO_AUTHOR_ID = createField("CO_AUTHOR_ID", org.jooq.util.oracle.OracleDataType.getDefaultDataType("UNDEFINED"), this); + + /** + * An uncommented item + * + * The SQL type of this item (UNDEFINED) could not be mapped.
+ * Deserialising this field might not work! + */ + public final org.jooq.TableField DETAILS_ID = createField("DETAILS_ID", org.jooq.util.oracle.OracleDataType.getDefaultDataType("UNDEFINED"), this); + + /** + * An uncommented item + * + * The SQL type of this item (UNDEFINED) could not be mapped.
+ * Deserialising this field might not work! + */ + public final org.jooq.TableField TITLE = createField("TITLE", org.jooq.util.oracle.OracleDataType.getDefaultDataType("UNDEFINED"), this); + + /** + * An uncommented item + * + * The SQL type of this item (UNDEFINED) could not be mapped.
+ * Deserialising this field might not work! + */ + public final org.jooq.TableField PUBLISHED_IN = createField("PUBLISHED_IN", org.jooq.util.oracle.OracleDataType.getDefaultDataType("UNDEFINED"), this); + + /** + * An uncommented item + * + * The SQL type of this item (UNDEFINED) could not be mapped.
+ * Deserialising this field might not work! + */ + public final org.jooq.TableField LANGUAGE_ID = createField("LANGUAGE_ID", org.jooq.util.oracle.OracleDataType.getDefaultDataType("UNDEFINED"), this); + + /** + * An uncommented item + * + * The SQL type of this item (UNDEFINED) could not be mapped.
+ * Deserialising this field might not work! + */ + public final org.jooq.TableField CONTENT_TEXT = createField("CONTENT_TEXT", org.jooq.util.oracle.OracleDataType.getDefaultDataType("UNDEFINED"), this); + + /** + * An uncommented item + * + * The SQL type of this item (UNDEFINED) could not be mapped.
+ * Deserialising this field might not work! + */ + public final org.jooq.TableField CONTENT_PDF = createField("CONTENT_PDF", org.jooq.util.oracle.OracleDataType.getDefaultDataType("UNDEFINED"), this); + + public V_INCOMPLETE() { + super("V_INCOMPLETE", org.jooq.test.oracle3.generatedclasses.TEST.TEST); + } + + public V_INCOMPLETE(java.lang.String alias) { + super(alias, org.jooq.test.oracle3.generatedclasses.TEST.TEST, org.jooq.test.oracle3.generatedclasses.tables.V_INCOMPLETE.V_INCOMPLETE); + } + + @Override + public org.jooq.test.oracle3.generatedclasses.tables.V_INCOMPLETE as(java.lang.String alias) { + return new org.jooq.test.oracle3.generatedclasses.tables.V_INCOMPLETE(alias); + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/tables/V_LIBRARY.java b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/tables/V_LIBRARY.java new file mode 100644 index 00000000000..5f6b7b6eba3 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/tables/V_LIBRARY.java @@ -0,0 +1,53 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle3.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class V_LIBRARY extends org.jooq.impl.TableImpl implements java.io.Serializable, java.lang.Cloneable { + + private static final long serialVersionUID = 880627166; + + /** + * The singleton instance of TEST.V_LIBRARY + */ + public static final org.jooq.test.oracle3.generatedclasses.tables.V_LIBRARY V_LIBRARY = new org.jooq.test.oracle3.generatedclasses.tables.V_LIBRARY(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.Record.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + */ + public final org.jooq.TableField AUTHOR = createField("AUTHOR", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField TITLE = createField("TITLE", org.jooq.impl.SQLDataType.VARCHAR, this); + + public V_LIBRARY() { + super("V_LIBRARY", org.jooq.test.oracle3.generatedclasses.TEST.TEST); + } + + public V_LIBRARY(java.lang.String alias) { + super(alias, org.jooq.test.oracle3.generatedclasses.TEST.TEST, org.jooq.test.oracle3.generatedclasses.tables.V_LIBRARY.V_LIBRARY); + } + + @Override + public org.jooq.test.oracle3.generatedclasses.tables.V_LIBRARY as(java.lang.String alias) { + return new org.jooq.test.oracle3.generatedclasses.tables.V_LIBRARY(alias); + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/tables/X_TEST_CASE_64_69.java b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/tables/X_TEST_CASE_64_69.java new file mode 100644 index 00000000000..7308182b58b --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/tables/X_TEST_CASE_64_69.java @@ -0,0 +1,78 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle3.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class X_TEST_CASE_64_69 extends org.jooq.impl.UpdatableTableImpl implements java.lang.Cloneable { + + private static final long serialVersionUID = -280496752; + + /** + * The singleton instance of TEST.X_TEST_CASE_64_69 + */ + public static final org.jooq.test.oracle3.generatedclasses.tables.X_TEST_CASE_64_69 X_TEST_CASE_64_69 = new org.jooq.test.oracle3.generatedclasses.tables.X_TEST_CASE_64_69(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.Record.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final org.jooq.TableField ID = createField("ID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_X_TEST_CASE_64_69A
+	 * FOREIGN KEY (UNUSED_ID)
+	 * REFERENCES TEST.X_UNUSED (ID)
+	 * 
+ */ + public final org.jooq.TableField UNUSED_ID = createField("UNUSED_ID", org.jooq.impl.SQLDataType.INTEGER, this); + + public X_TEST_CASE_64_69() { + super("X_TEST_CASE_64_69", org.jooq.test.oracle3.generatedclasses.TEST.TEST); + } + + public X_TEST_CASE_64_69(java.lang.String alias) { + super(alias, org.jooq.test.oracle3.generatedclasses.TEST.TEST, org.jooq.test.oracle3.generatedclasses.tables.X_TEST_CASE_64_69.X_TEST_CASE_64_69); + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.test.oracle3.generatedclasses.Keys.PK_X_TEST_CASE_64_69; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.test.oracle3.generatedclasses.Keys.PK_X_TEST_CASE_64_69); + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getReferences() { + return java.util.Arrays.>asList(org.jooq.test.oracle3.generatedclasses.Keys.FK_X_TEST_CASE_64_69A); + } + + @Override + public org.jooq.test.oracle3.generatedclasses.tables.X_TEST_CASE_64_69 as(java.lang.String alias) { + return new org.jooq.test.oracle3.generatedclasses.tables.X_TEST_CASE_64_69(alias); + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/tables/X_TEST_CASE_71.java b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/tables/X_TEST_CASE_71.java new file mode 100644 index 00000000000..417c953d46f --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/tables/X_TEST_CASE_71.java @@ -0,0 +1,78 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle3.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class X_TEST_CASE_71 extends org.jooq.impl.UpdatableTableImpl implements java.lang.Cloneable { + + private static final long serialVersionUID = 1330706514; + + /** + * The singleton instance of TEST.X_TEST_CASE_71 + */ + public static final org.jooq.test.oracle3.generatedclasses.tables.X_TEST_CASE_71 X_TEST_CASE_71 = new org.jooq.test.oracle3.generatedclasses.tables.X_TEST_CASE_71(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.Record.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final org.jooq.TableField ID = createField("ID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_X_TEST_CASE_71
+	 * FOREIGN KEY (TEST_CASE_64_69_ID)
+	 * REFERENCES TEST.X_TEST_CASE_64_69 (ID)
+	 * 
+ */ + public final org.jooq.TableField TEST_CASE_64_69_ID = createField("TEST_CASE_64_69_ID", org.jooq.impl.SQLDataType.SMALLINT, this); + + public X_TEST_CASE_71() { + super("X_TEST_CASE_71", org.jooq.test.oracle3.generatedclasses.TEST.TEST); + } + + public X_TEST_CASE_71(java.lang.String alias) { + super(alias, org.jooq.test.oracle3.generatedclasses.TEST.TEST, org.jooq.test.oracle3.generatedclasses.tables.X_TEST_CASE_71.X_TEST_CASE_71); + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.test.oracle3.generatedclasses.Keys.PK_X_TEST_CASE_71; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.test.oracle3.generatedclasses.Keys.PK_X_TEST_CASE_71); + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getReferences() { + return java.util.Arrays.>asList(org.jooq.test.oracle3.generatedclasses.Keys.FK_X_TEST_CASE_71); + } + + @Override + public org.jooq.test.oracle3.generatedclasses.tables.X_TEST_CASE_71 as(java.lang.String alias) { + return new org.jooq.test.oracle3.generatedclasses.tables.X_TEST_CASE_71(alias); + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/tables/X_TEST_CASE_85.java b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/tables/X_TEST_CASE_85.java new file mode 100644 index 00000000000..bd8462db801 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/tables/X_TEST_CASE_85.java @@ -0,0 +1,89 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle3.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class X_TEST_CASE_85 extends org.jooq.impl.UpdatableTableImpl implements java.lang.Cloneable { + + private static final long serialVersionUID = -175183593; + + /** + * The singleton instance of TEST.X_TEST_CASE_85 + */ + public static final org.jooq.test.oracle3.generatedclasses.tables.X_TEST_CASE_85 X_TEST_CASE_85 = new org.jooq.test.oracle3.generatedclasses.tables.X_TEST_CASE_85(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.Record.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final org.jooq.TableField ID = createField("ID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_X_TEST_CASE_85
+	 * FOREIGN KEY (X_UNUSED_ID, X_UNUSED_NAME)
+	 * REFERENCES TEST.X_UNUSED (ID, NAME)
+	 * 
+ */ + public final org.jooq.TableField X_UNUSED_ID = createField("X_UNUSED_ID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_X_TEST_CASE_85
+	 * FOREIGN KEY (X_UNUSED_ID, X_UNUSED_NAME)
+	 * REFERENCES TEST.X_UNUSED (ID, NAME)
+	 * 
+ */ + public final org.jooq.TableField X_UNUSED_NAME = createField("X_UNUSED_NAME", org.jooq.impl.SQLDataType.VARCHAR, this); + + public X_TEST_CASE_85() { + super("X_TEST_CASE_85", org.jooq.test.oracle3.generatedclasses.TEST.TEST); + } + + public X_TEST_CASE_85(java.lang.String alias) { + super(alias, org.jooq.test.oracle3.generatedclasses.TEST.TEST, org.jooq.test.oracle3.generatedclasses.tables.X_TEST_CASE_85.X_TEST_CASE_85); + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.test.oracle3.generatedclasses.Keys.PK_X_TEST_CASE_85; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.test.oracle3.generatedclasses.Keys.PK_X_TEST_CASE_85); + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getReferences() { + return java.util.Arrays.>asList(org.jooq.test.oracle3.generatedclasses.Keys.FK_X_TEST_CASE_85); + } + + @Override + public org.jooq.test.oracle3.generatedclasses.tables.X_TEST_CASE_85 as(java.lang.String alias) { + return new org.jooq.test.oracle3.generatedclasses.tables.X_TEST_CASE_85(alias); + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/tables/X_UNUSED.java b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/tables/X_UNUSED.java new file mode 100644 index 00000000000..bb34eb0f9ed --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/tables/X_UNUSED.java @@ -0,0 +1,158 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle3.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + * + * An unused table in the same schema. + */ +public class X_UNUSED extends org.jooq.impl.UpdatableTableImpl implements java.lang.Cloneable { + + private static final long serialVersionUID = 1724460187; + + /** + * The singleton instance of TEST.X_UNUSED + */ + public static final org.jooq.test.oracle3.generatedclasses.tables.X_UNUSED X_UNUSED = new org.jooq.test.oracle3.generatedclasses.tables.X_UNUSED(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.Record.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final org.jooq.TableField ID = createField("ID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final org.jooq.TableField NAME = createField("NAME", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField BIG_INTEGER = createField("BIG_INTEGER", org.jooq.impl.SQLDataType.DECIMAL_INTEGER, this); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_X_UNUSED_SELF
+	 * FOREIGN KEY (ID_REF, NAME_REF)
+	 * REFERENCES TEST.X_UNUSED (ID, NAME)
+	 * 
+ */ + public final org.jooq.TableField ID_REF = createField("ID_REF", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField CLASS = createField("CLASS", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField FIELDS = createField("FIELDS", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField CONFIGURATION = createField("CONFIGURATION", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField U_D_T = createField("U_D_T", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField META_DATA = createField("META_DATA", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField TYPE0 = createField("TYPE0", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField PRIMARY_KEY = createField("PRIMARY_KEY", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField PRIMARYKEY = createField("PRIMARYKEY", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT FK_X_UNUSED_SELF
+	 * FOREIGN KEY (ID_REF, NAME_REF)
+	 * REFERENCES TEST.X_UNUSED (ID, NAME)
+	 * 
+ */ + public final org.jooq.TableField NAME_REF = createField("NAME_REF", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField FIELD_737 = createField("FIELD 737", org.jooq.impl.SQLDataType.NUMERIC, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField MS_UNUSED_ID_REF = createField("MS_UNUSED_ID_REF", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField MS_UNUSED_NAME_REF = createField("MS_UNUSED_NAME_REF", org.jooq.impl.SQLDataType.VARCHAR, this); + + public X_UNUSED() { + super("X_UNUSED", org.jooq.test.oracle3.generatedclasses.TEST.TEST); + } + + public X_UNUSED(java.lang.String alias) { + super(alias, org.jooq.test.oracle3.generatedclasses.TEST.TEST, org.jooq.test.oracle3.generatedclasses.tables.X_UNUSED.X_UNUSED); + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.test.oracle3.generatedclasses.Keys.PK_X_UNUSED; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.test.oracle3.generatedclasses.Keys.PK_X_UNUSED, org.jooq.test.oracle3.generatedclasses.Keys.UK_X_UNUSED_ID); + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getReferences() { + return java.util.Arrays.>asList(org.jooq.test.oracle3.generatedclasses.Keys.FK_X_UNUSED_SELF); + } + + @Override + public org.jooq.test.oracle3.generatedclasses.tables.X_UNUSED as(java.lang.String alias) { + return new org.jooq.test.oracle3.generatedclasses.tables.X_UNUSED(alias); + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/tables/pojos/T_639_NUMBERS_TABLE_POJO.java b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/tables/pojos/T_639_NUMBERS_TABLE_POJO.java new file mode 100644 index 00000000000..5babfa53be1 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/tables/pojos/T_639_NUMBERS_TABLE_POJO.java @@ -0,0 +1,126 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle3.generatedclasses.tables.pojos; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "T_639_NUMBERS_TABLE", schema = "TEST") +public class T_639_NUMBERS_TABLE_POJO extends java.lang.ThreadDeath implements java.lang.Cloneable { + + private static final long serialVersionUID = 1155928586; + + private java.lang.Integer ID; + private java.lang.Byte BYTE; + private java.lang.Short SHORT; + private java.lang.Integer INTEGER; + private java.lang.Long LONG; + private java.lang.Byte BYTE_DECIMAL; + private java.lang.Short SHORT_DECIMAL; + private java.lang.Integer INTEGER_DECIMAL; + private java.lang.Long LONG_DECIMAL; + private java.math.BigInteger BIG_INTEGER; + private java.math.BigDecimal BIG_DECIMAL; + + @javax.persistence.Id + @javax.persistence.Column(name = "ID", unique = true, nullable = false, precision = 7) + public java.lang.Integer getID() { + return this.ID; + } + + public void setID(java.lang.Integer ID) { + this.ID = ID; + } + + @javax.persistence.Column(name = "BYTE", precision = 2) + public java.lang.Byte getBYTE() { + return this.BYTE; + } + + public void setBYTE(java.lang.Byte BYTE) { + this.BYTE = BYTE; + } + + @javax.persistence.Column(name = "SHORT", precision = 4) + public java.lang.Short getSHORT() { + return this.SHORT; + } + + public void setSHORT(java.lang.Short SHORT) { + this.SHORT = SHORT; + } + + @javax.persistence.Column(name = "INTEGER", precision = 7) + public java.lang.Integer getINTEGER() { + return this.INTEGER; + } + + public void setINTEGER(java.lang.Integer INTEGER) { + this.INTEGER = INTEGER; + } + + @javax.persistence.Column(name = "LONG", precision = 18) + public java.lang.Long getLONG() { + return this.LONG; + } + + public void setLONG(java.lang.Long LONG) { + this.LONG = LONG; + } + + @javax.persistence.Column(name = "BYTE_DECIMAL", precision = 2) + public java.lang.Byte getBYTE_DECIMAL() { + return this.BYTE_DECIMAL; + } + + public void setBYTE_DECIMAL(java.lang.Byte BYTE_DECIMAL) { + this.BYTE_DECIMAL = BYTE_DECIMAL; + } + + @javax.persistence.Column(name = "SHORT_DECIMAL", precision = 4) + public java.lang.Short getSHORT_DECIMAL() { + return this.SHORT_DECIMAL; + } + + public void setSHORT_DECIMAL(java.lang.Short SHORT_DECIMAL) { + this.SHORT_DECIMAL = SHORT_DECIMAL; + } + + @javax.persistence.Column(name = "INTEGER_DECIMAL", precision = 9) + public java.lang.Integer getINTEGER_DECIMAL() { + return this.INTEGER_DECIMAL; + } + + public void setINTEGER_DECIMAL(java.lang.Integer INTEGER_DECIMAL) { + this.INTEGER_DECIMAL = INTEGER_DECIMAL; + } + + @javax.persistence.Column(name = "LONG_DECIMAL", precision = 18) + public java.lang.Long getLONG_DECIMAL() { + return this.LONG_DECIMAL; + } + + public void setLONG_DECIMAL(java.lang.Long LONG_DECIMAL) { + this.LONG_DECIMAL = LONG_DECIMAL; + } + + @javax.persistence.Column(name = "BIG_INTEGER", precision = 22) + public java.math.BigInteger getBIG_INTEGER() { + return this.BIG_INTEGER; + } + + public void setBIG_INTEGER(java.math.BigInteger BIG_INTEGER) { + this.BIG_INTEGER = BIG_INTEGER; + } + + @javax.persistence.Column(name = "BIG_DECIMAL", precision = 22, scale = 5) + public java.math.BigDecimal getBIG_DECIMAL() { + return this.BIG_DECIMAL; + } + + public void setBIG_DECIMAL(java.math.BigDecimal BIG_DECIMAL) { + this.BIG_DECIMAL = BIG_DECIMAL; + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/tables/pojos/T_658_REF_POJO.java b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/tables/pojos/T_658_REF_POJO.java new file mode 100644 index 00000000000..0da2deacf17 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/tables/pojos/T_658_REF_POJO.java @@ -0,0 +1,75 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle3.generatedclasses.tables.pojos; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "T_658_REF", schema = "TEST") +public class T_658_REF_POJO extends java.lang.ThreadDeath implements java.lang.Cloneable { + + private static final long serialVersionUID = -1235226219; + + private org.jooq.test.oracle3.generatedclasses.enums.T_658_11 REF_11; + private org.jooq.test.oracle3.generatedclasses.enums.T_658_21 REF_21; + private org.jooq.test.oracle3.generatedclasses.enums.T_658_31 REF_31; + private org.jooq.test.oracle3.generatedclasses.enums.T_658_12 REF_12; + private org.jooq.test.oracle3.generatedclasses.enums.T_658_22 REF_22; + private org.jooq.test.oracle3.generatedclasses.enums.T_658_32 REF_32; + + @javax.persistence.Column(name = "REF_11", length = 3) + public org.jooq.test.oracle3.generatedclasses.enums.T_658_11 getREF_11() { + return this.REF_11; + } + + public void setREF_11(org.jooq.test.oracle3.generatedclasses.enums.T_658_11 REF_11) { + this.REF_11 = REF_11; + } + + @javax.persistence.Column(name = "REF_21", precision = 7) + public org.jooq.test.oracle3.generatedclasses.enums.T_658_21 getREF_21() { + return this.REF_21; + } + + public void setREF_21(org.jooq.test.oracle3.generatedclasses.enums.T_658_21 REF_21) { + this.REF_21 = REF_21; + } + + @javax.persistence.Column(name = "REF_31", precision = 15) + public org.jooq.test.oracle3.generatedclasses.enums.T_658_31 getREF_31() { + return this.REF_31; + } + + public void setREF_31(org.jooq.test.oracle3.generatedclasses.enums.T_658_31 REF_31) { + this.REF_31 = REF_31; + } + + @javax.persistence.Column(name = "REF_12", length = 3) + public org.jooq.test.oracle3.generatedclasses.enums.T_658_12 getREF_12() { + return this.REF_12; + } + + public void setREF_12(org.jooq.test.oracle3.generatedclasses.enums.T_658_12 REF_12) { + this.REF_12 = REF_12; + } + + @javax.persistence.Column(name = "REF_22", precision = 7) + public org.jooq.test.oracle3.generatedclasses.enums.T_658_22 getREF_22() { + return this.REF_22; + } + + public void setREF_22(org.jooq.test.oracle3.generatedclasses.enums.T_658_22 REF_22) { + this.REF_22 = REF_22; + } + + @javax.persistence.Column(name = "REF_32", precision = 15) + public org.jooq.test.oracle3.generatedclasses.enums.T_658_32 getREF_32() { + return this.REF_32; + } + + public void setREF_32(org.jooq.test.oracle3.generatedclasses.enums.T_658_32 REF_32) { + this.REF_32 = REF_32; + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/tables/pojos/T_725_LOB_TEST_POJO.java b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/tables/pojos/T_725_LOB_TEST_POJO.java new file mode 100644 index 00000000000..aee6559811e --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/tables/pojos/T_725_LOB_TEST_POJO.java @@ -0,0 +1,36 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle3.generatedclasses.tables.pojos; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "T_725_LOB_TEST", schema = "TEST") +public class T_725_LOB_TEST_POJO extends java.lang.ThreadDeath implements java.lang.Cloneable { + + private static final long serialVersionUID = -744225301; + + private java.lang.Integer ID; + private byte[] LOB; + + @javax.persistence.Id + @javax.persistence.Column(name = "ID", unique = true, nullable = false, precision = 7) + public java.lang.Integer getID() { + return this.ID; + } + + public void setID(java.lang.Integer ID) { + this.ID = ID; + } + + @javax.persistence.Column(name = "LOB", length = 4000) + public byte[] getLOB() { + return this.LOB; + } + + public void setLOB(byte[] LOB) { + this.LOB = LOB; + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/tables/pojos/T_785_POJO.java b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/tables/pojos/T_785_POJO.java new file mode 100644 index 00000000000..7791d3aa62c --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/tables/pojos/T_785_POJO.java @@ -0,0 +1,45 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle3.generatedclasses.tables.pojos; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "T_785", schema = "TEST") +public class T_785_POJO extends java.lang.ThreadDeath implements java.lang.Cloneable { + + private static final long serialVersionUID = 5478147; + + private java.lang.Integer ID; + private java.lang.String NAME; + private java.lang.String VALUE; + + @javax.persistence.Column(name = "ID", precision = 7) + public java.lang.Integer getID() { + return this.ID; + } + + public void setID(java.lang.Integer ID) { + this.ID = ID; + } + + @javax.persistence.Column(name = "NAME", length = 50) + public java.lang.String getNAME() { + return this.NAME; + } + + public void setNAME(java.lang.String NAME) { + this.NAME = NAME; + } + + @javax.persistence.Column(name = "VALUE", length = 50) + public java.lang.String getVALUE() { + return this.VALUE; + } + + public void setVALUE(java.lang.String VALUE) { + this.VALUE = VALUE; + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/tables/pojos/T_ARRAYS_POJO.java b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/tables/pojos/T_ARRAYS_POJO.java new file mode 100644 index 00000000000..3b3c1412ffa --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/tables/pojos/T_ARRAYS_POJO.java @@ -0,0 +1,66 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle3.generatedclasses.tables.pojos; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "T_ARRAYS", schema = "TEST") +public class T_ARRAYS_POJO extends java.lang.ThreadDeath implements java.lang.Cloneable { + + private static final long serialVersionUID = 1907256242; + + private java.lang.Integer ID; + private org.jooq.test.oracle3.generatedclasses.udt.records.U_STRING_ARRAY STRING_ARRAY; + private org.jooq.test.oracle3.generatedclasses.udt.records.U_NUMBER_ARRAY NUMBER_ARRAY; + private org.jooq.test.oracle3.generatedclasses.udt.records.U_NUMBER_LONG_ARRAY NUMBER_LONG_ARRAY; + private org.jooq.test.oracle3.generatedclasses.udt.records.U_DATE_ARRAY DATE_ARRAY; + + @javax.persistence.Id + @javax.persistence.Column(name = "ID", unique = true, nullable = false, precision = 7) + public java.lang.Integer getID() { + return this.ID; + } + + public void setID(java.lang.Integer ID) { + this.ID = ID; + } + + @javax.persistence.Column(name = "STRING_ARRAY", length = 101) + public org.jooq.test.oracle3.generatedclasses.udt.records.U_STRING_ARRAY getSTRING_ARRAY() { + return this.STRING_ARRAY; + } + + public void setSTRING_ARRAY(org.jooq.test.oracle3.generatedclasses.udt.records.U_STRING_ARRAY STRING_ARRAY) { + this.STRING_ARRAY = STRING_ARRAY; + } + + @javax.persistence.Column(name = "NUMBER_ARRAY", length = 109) + public org.jooq.test.oracle3.generatedclasses.udt.records.U_NUMBER_ARRAY getNUMBER_ARRAY() { + return this.NUMBER_ARRAY; + } + + public void setNUMBER_ARRAY(org.jooq.test.oracle3.generatedclasses.udt.records.U_NUMBER_ARRAY NUMBER_ARRAY) { + this.NUMBER_ARRAY = NUMBER_ARRAY; + } + + @javax.persistence.Column(name = "NUMBER_LONG_ARRAY", length = 109) + public org.jooq.test.oracle3.generatedclasses.udt.records.U_NUMBER_LONG_ARRAY getNUMBER_LONG_ARRAY() { + return this.NUMBER_LONG_ARRAY; + } + + public void setNUMBER_LONG_ARRAY(org.jooq.test.oracle3.generatedclasses.udt.records.U_NUMBER_LONG_ARRAY NUMBER_LONG_ARRAY) { + this.NUMBER_LONG_ARRAY = NUMBER_LONG_ARRAY; + } + + @javax.persistence.Column(name = "DATE_ARRAY", length = 49) + public org.jooq.test.oracle3.generatedclasses.udt.records.U_DATE_ARRAY getDATE_ARRAY() { + return this.DATE_ARRAY; + } + + public void setDATE_ARRAY(org.jooq.test.oracle3.generatedclasses.udt.records.U_DATE_ARRAY DATE_ARRAY) { + this.DATE_ARRAY = DATE_ARRAY; + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/tables/pojos/T_AUTHOR_POJO.java b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/tables/pojos/T_AUTHOR_POJO.java new file mode 100644 index 00000000000..fe60840c033 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/tables/pojos/T_AUTHOR_POJO.java @@ -0,0 +1,78 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle3.generatedclasses.tables.pojos; + +/** + * This class is generated by jOOQ. + * + * An entity holding authors of books + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "T_AUTHOR", schema = "TEST") +public class T_AUTHOR_POJO extends java.lang.ThreadDeath implements java.lang.Cloneable { + + private static final long serialVersionUID = -1956242902; + + private java.lang.Integer ID; + private java.lang.String FIRST_NAME; + private java.lang.String LAST_NAME; + private java.sql.Date DATE_OF_BIRTH; + private java.lang.Integer YEAR_OF_BIRTH; + private org.jooq.test.oracle3.generatedclasses.udt.records.U_ADDRESS_TYPE ADDRESS; + + @javax.persistence.Id + @javax.persistence.Column(name = "ID", unique = true, nullable = false, precision = 7) + public java.lang.Integer getID() { + return this.ID; + } + + public void setID(java.lang.Integer ID) { + this.ID = ID; + } + + @javax.persistence.Column(name = "FIRST_NAME", length = 50) + public java.lang.String getFIRST_NAME() { + return this.FIRST_NAME; + } + + public void setFIRST_NAME(java.lang.String FIRST_NAME) { + this.FIRST_NAME = FIRST_NAME; + } + + @javax.persistence.Column(name = "LAST_NAME", nullable = false, length = 50) + public java.lang.String getLAST_NAME() { + return this.LAST_NAME; + } + + public void setLAST_NAME(java.lang.String LAST_NAME) { + this.LAST_NAME = LAST_NAME; + } + + @javax.persistence.Column(name = "DATE_OF_BIRTH", length = 7) + public java.sql.Date getDATE_OF_BIRTH() { + return this.DATE_OF_BIRTH; + } + + public void setDATE_OF_BIRTH(java.sql.Date DATE_OF_BIRTH) { + this.DATE_OF_BIRTH = DATE_OF_BIRTH; + } + + @javax.persistence.Column(name = "YEAR_OF_BIRTH", precision = 7) + public java.lang.Integer getYEAR_OF_BIRTH() { + return this.YEAR_OF_BIRTH; + } + + public void setYEAR_OF_BIRTH(java.lang.Integer YEAR_OF_BIRTH) { + this.YEAR_OF_BIRTH = YEAR_OF_BIRTH; + } + + @javax.persistence.Column(name = "ADDRESS", length = 1) + public org.jooq.test.oracle3.generatedclasses.udt.records.U_ADDRESS_TYPE getADDRESS() { + return this.ADDRESS; + } + + public void setADDRESS(org.jooq.test.oracle3.generatedclasses.udt.records.U_ADDRESS_TYPE ADDRESS) { + this.ADDRESS = ADDRESS; + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/tables/pojos/T_BOOK_POJO.java b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/tables/pojos/T_BOOK_POJO.java new file mode 100644 index 00000000000..039784ced42 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/tables/pojos/T_BOOK_POJO.java @@ -0,0 +1,108 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle3.generatedclasses.tables.pojos; + +/** + * This class is generated by jOOQ. + * + * An entity holding books + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "T_BOOK", schema = "TEST") +public class T_BOOK_POJO extends java.lang.Object implements java.io.Serializable { + + private static final long serialVersionUID = 1535487354; + + private java.lang.Integer ID; + private java.lang.Integer AUTHOR_ID; + private java.lang.Integer CO_AUTHOR_ID; + private java.lang.Integer DETAILS_ID; + private java.lang.String TITLE; + private java.lang.Integer PUBLISHED_IN; + private org.jooq.test.oracle3.generatedclasses.enums.T_LANGUAGE LANGUAGE_ID; + private java.lang.String CONTENT_TEXT; + private byte[] CONTENT_PDF; + + @javax.persistence.Id + @javax.persistence.Column(name = "ID", unique = true, nullable = false, precision = 7) + public java.lang.Integer getID() { + return this.ID; + } + + public void setID(java.lang.Integer ID) { + this.ID = ID; + } + + @javax.persistence.Column(name = "AUTHOR_ID", nullable = false, precision = 7) + public java.lang.Integer getAUTHOR_ID() { + return this.AUTHOR_ID; + } + + public void setAUTHOR_ID(java.lang.Integer AUTHOR_ID) { + this.AUTHOR_ID = AUTHOR_ID; + } + + @javax.persistence.Column(name = "CO_AUTHOR_ID", precision = 7) + public java.lang.Integer getCO_AUTHOR_ID() { + return this.CO_AUTHOR_ID; + } + + public void setCO_AUTHOR_ID(java.lang.Integer CO_AUTHOR_ID) { + this.CO_AUTHOR_ID = CO_AUTHOR_ID; + } + + @javax.persistence.Column(name = "DETAILS_ID", precision = 7) + public java.lang.Integer getDETAILS_ID() { + return this.DETAILS_ID; + } + + public void setDETAILS_ID(java.lang.Integer DETAILS_ID) { + this.DETAILS_ID = DETAILS_ID; + } + + @javax.persistence.Column(name = "TITLE", nullable = false, length = 400) + public java.lang.String getTITLE() { + return this.TITLE; + } + + public void setTITLE(java.lang.String TITLE) { + this.TITLE = TITLE; + } + + @javax.persistence.Column(name = "PUBLISHED_IN", nullable = false, precision = 7) + public java.lang.Integer getPUBLISHED_IN() { + return this.PUBLISHED_IN; + } + + public void setPUBLISHED_IN(java.lang.Integer PUBLISHED_IN) { + this.PUBLISHED_IN = PUBLISHED_IN; + } + + @javax.persistence.Column(name = "LANGUAGE_ID", nullable = false, precision = 7) + public org.jooq.test.oracle3.generatedclasses.enums.T_LANGUAGE getLANGUAGE_ID() { + return this.LANGUAGE_ID; + } + + public void setLANGUAGE_ID(org.jooq.test.oracle3.generatedclasses.enums.T_LANGUAGE LANGUAGE_ID) { + this.LANGUAGE_ID = LANGUAGE_ID; + } + + @javax.persistence.Column(name = "CONTENT_TEXT", length = 4000) + public java.lang.String getCONTENT_TEXT() { + return this.CONTENT_TEXT; + } + + public void setCONTENT_TEXT(java.lang.String CONTENT_TEXT) { + this.CONTENT_TEXT = CONTENT_TEXT; + } + + @javax.persistence.Column(name = "CONTENT_PDF", length = 4000) + public byte[] getCONTENT_PDF() { + return this.CONTENT_PDF; + } + + public void setCONTENT_PDF(byte[] CONTENT_PDF) { + this.CONTENT_PDF = CONTENT_PDF; + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/tables/pojos/T_BOOK_STORE_POJO.java b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/tables/pojos/T_BOOK_STORE_POJO.java new file mode 100644 index 00000000000..0b8ce548d7d --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/tables/pojos/T_BOOK_STORE_POJO.java @@ -0,0 +1,27 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle3.generatedclasses.tables.pojos; + +/** + * This class is generated by jOOQ. + * + * A book store + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "T_BOOK_STORE", schema = "TEST") +public class T_BOOK_STORE_POJO extends java.lang.Object implements java.io.Serializable { + + private static final long serialVersionUID = 1677105250; + + private java.lang.String NAME; + + @javax.persistence.Column(name = "NAME", unique = true, nullable = false, length = 400) + public java.lang.String getNAME() { + return this.NAME; + } + + public void setNAME(java.lang.String NAME) { + this.NAME = NAME; + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/tables/pojos/T_BOOK_TO_BOOK_STORE_POJO.java b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/tables/pojos/T_BOOK_TO_BOOK_STORE_POJO.java new file mode 100644 index 00000000000..db2a9e8f322 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/tables/pojos/T_BOOK_TO_BOOK_STORE_POJO.java @@ -0,0 +1,49 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle3.generatedclasses.tables.pojos; + +/** + * This class is generated by jOOQ. + * + * An m:n relation between books and book stores + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "T_BOOK_TO_BOOK_STORE", schema = "TEST", uniqueConstraints = { + @javax.persistence.UniqueConstraint(columnNames = {"BOOK_STORE_NAME", "BOOK_ID"}) +}) +public class T_BOOK_TO_BOOK_STORE_POJO extends java.lang.Object implements java.io.Serializable { + + private static final long serialVersionUID = 1095785696; + + private java.lang.String BOOK_STORE_NAME; + private java.lang.Integer BOOK_ID; + private java.lang.Integer STOCK; + + @javax.persistence.Column(name = "BOOK_STORE_NAME", nullable = false, length = 400) + public java.lang.String getBOOK_STORE_NAME() { + return this.BOOK_STORE_NAME; + } + + public void setBOOK_STORE_NAME(java.lang.String BOOK_STORE_NAME) { + this.BOOK_STORE_NAME = BOOK_STORE_NAME; + } + + @javax.persistence.Column(name = "BOOK_ID", nullable = false, precision = 7) + public java.lang.Integer getBOOK_ID() { + return this.BOOK_ID; + } + + public void setBOOK_ID(java.lang.Integer BOOK_ID) { + this.BOOK_ID = BOOK_ID; + } + + @javax.persistence.Column(name = "STOCK", precision = 7) + public java.lang.Integer getSTOCK() { + return this.STOCK; + } + + public void setSTOCK(java.lang.Integer STOCK) { + this.STOCK = STOCK; + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/tables/pojos/T_BOOLEANS_POJO.java b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/tables/pojos/T_BOOLEANS_POJO.java new file mode 100644 index 00000000000..091bbae3ede --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/tables/pojos/T_BOOLEANS_POJO.java @@ -0,0 +1,126 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle3.generatedclasses.tables.pojos; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "T_BOOLEANS", schema = "TEST") +public class T_BOOLEANS_POJO extends java.lang.ThreadDeath implements java.lang.Cloneable { + + private static final long serialVersionUID = 1812480675; + + private java.lang.Integer ID; + private java.lang.Integer ONE_ZERO; + private java.lang.String TRUE_FALSE_LC; + private java.lang.String TRUE_FALSE_UC; + private java.lang.String YES_NO_LC; + private java.lang.String YES_NO_UC; + private java.lang.String Y_N_LC; + private java.lang.String Y_N_UC; + private java.lang.String VC_BOOLEAN; + private java.lang.String C_BOOLEAN; + private java.lang.Integer N_BOOLEAN; + + @javax.persistence.Id + @javax.persistence.Column(name = "ID", unique = true, nullable = false, precision = 7) + public java.lang.Integer getID() { + return this.ID; + } + + public void setID(java.lang.Integer ID) { + this.ID = ID; + } + + @javax.persistence.Column(name = "ONE_ZERO", precision = 7) + public java.lang.Integer getONE_ZERO() { + return this.ONE_ZERO; + } + + public void setONE_ZERO(java.lang.Integer ONE_ZERO) { + this.ONE_ZERO = ONE_ZERO; + } + + @javax.persistence.Column(name = "TRUE_FALSE_LC", length = 5) + public java.lang.String getTRUE_FALSE_LC() { + return this.TRUE_FALSE_LC; + } + + public void setTRUE_FALSE_LC(java.lang.String TRUE_FALSE_LC) { + this.TRUE_FALSE_LC = TRUE_FALSE_LC; + } + + @javax.persistence.Column(name = "TRUE_FALSE_UC", length = 5) + public java.lang.String getTRUE_FALSE_UC() { + return this.TRUE_FALSE_UC; + } + + public void setTRUE_FALSE_UC(java.lang.String TRUE_FALSE_UC) { + this.TRUE_FALSE_UC = TRUE_FALSE_UC; + } + + @javax.persistence.Column(name = "YES_NO_LC", length = 3) + public java.lang.String getYES_NO_LC() { + return this.YES_NO_LC; + } + + public void setYES_NO_LC(java.lang.String YES_NO_LC) { + this.YES_NO_LC = YES_NO_LC; + } + + @javax.persistence.Column(name = "YES_NO_UC", length = 3) + public java.lang.String getYES_NO_UC() { + return this.YES_NO_UC; + } + + public void setYES_NO_UC(java.lang.String YES_NO_UC) { + this.YES_NO_UC = YES_NO_UC; + } + + @javax.persistence.Column(name = "Y_N_LC", length = 1) + public java.lang.String getY_N_LC() { + return this.Y_N_LC; + } + + public void setY_N_LC(java.lang.String Y_N_LC) { + this.Y_N_LC = Y_N_LC; + } + + @javax.persistence.Column(name = "Y_N_UC", length = 1) + public java.lang.String getY_N_UC() { + return this.Y_N_UC; + } + + public void setY_N_UC(java.lang.String Y_N_UC) { + this.Y_N_UC = Y_N_UC; + } + + @javax.persistence.Column(name = "VC_BOOLEAN", length = 1) + public java.lang.String getVC_BOOLEAN() { + return this.VC_BOOLEAN; + } + + public void setVC_BOOLEAN(java.lang.String VC_BOOLEAN) { + this.VC_BOOLEAN = VC_BOOLEAN; + } + + @javax.persistence.Column(name = "C_BOOLEAN", length = 1) + public java.lang.String getC_BOOLEAN() { + return this.C_BOOLEAN; + } + + public void setC_BOOLEAN(java.lang.String C_BOOLEAN) { + this.C_BOOLEAN = C_BOOLEAN; + } + + @javax.persistence.Column(name = "N_BOOLEAN", precision = 7) + public java.lang.Integer getN_BOOLEAN() { + return this.N_BOOLEAN; + } + + public void setN_BOOLEAN(java.lang.Integer N_BOOLEAN) { + this.N_BOOLEAN = N_BOOLEAN; + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/tables/pojos/T_DATES_POJO.java b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/tables/pojos/T_DATES_POJO.java new file mode 100644 index 00000000000..f9b0e138056 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/tables/pojos/T_DATES_POJO.java @@ -0,0 +1,96 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle3.generatedclasses.tables.pojos; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "T_DATES", schema = "TEST") +public class T_DATES_POJO extends java.lang.ThreadDeath implements java.lang.Cloneable { + + private static final long serialVersionUID = 1304078440; + + private java.lang.Integer ID; + private java.sql.Date D; + private java.sql.Timestamp T; + private java.sql.Timestamp TS; + private java.lang.Integer D_INT; + private java.lang.Long TS_BIGINT; + private org.jooq.types.YearToMonth I_Y; + private org.jooq.types.DayToSecond I_D; + + @javax.persistence.Id + @javax.persistence.Column(name = "ID", unique = true, nullable = false, precision = 7) + public java.lang.Integer getID() { + return this.ID; + } + + public void setID(java.lang.Integer ID) { + this.ID = ID; + } + + @javax.persistence.Column(name = "D", length = 7) + public java.sql.Date getD() { + return this.D; + } + + public void setD(java.sql.Date D) { + this.D = D; + } + + @javax.persistence.Column(name = "T", length = 11) + public java.sql.Timestamp getT() { + return this.T; + } + + public void setT(java.sql.Timestamp T) { + this.T = T; + } + + @javax.persistence.Column(name = "TS", length = 11) + public java.sql.Timestamp getTS() { + return this.TS; + } + + public void setTS(java.sql.Timestamp TS) { + this.TS = TS; + } + + @javax.persistence.Column(name = "D_INT", precision = 7) + public java.lang.Integer getD_INT() { + return this.D_INT; + } + + public void setD_INT(java.lang.Integer D_INT) { + this.D_INT = D_INT; + } + + @javax.persistence.Column(name = "TS_BIGINT", precision = 18) + public java.lang.Long getTS_BIGINT() { + return this.TS_BIGINT; + } + + public void setTS_BIGINT(java.lang.Long TS_BIGINT) { + this.TS_BIGINT = TS_BIGINT; + } + + @javax.persistence.Column(name = "I_Y", precision = 2) + public org.jooq.types.YearToMonth getI_Y() { + return this.I_Y; + } + + public void setI_Y(org.jooq.types.YearToMonth I_Y) { + this.I_Y = I_Y; + } + + @javax.persistence.Column(name = "I_D", precision = 2, scale = 6) + public org.jooq.types.DayToSecond getI_D() { + return this.I_D; + } + + public void setI_D(org.jooq.types.DayToSecond I_D) { + this.I_D = I_D; + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/tables/pojos/T_DIRECTORY_POJO.java b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/tables/pojos/T_DIRECTORY_POJO.java new file mode 100644 index 00000000000..a30e1936d56 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/tables/pojos/T_DIRECTORY_POJO.java @@ -0,0 +1,56 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle3.generatedclasses.tables.pojos; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "T_DIRECTORY", schema = "TEST") +public class T_DIRECTORY_POJO extends java.lang.ThreadDeath implements java.lang.Cloneable { + + private static final long serialVersionUID = -415288281; + + private java.lang.Integer ID; + private java.lang.Integer PARENT_ID; + private java.lang.Integer IS_DIRECTORY; + private java.lang.String name; + + @javax.persistence.Id + @javax.persistence.Column(name = "ID", unique = true, nullable = false, precision = 7) + public java.lang.Integer getID() { + return this.ID; + } + + public void setID(java.lang.Integer ID) { + this.ID = ID; + } + + @javax.persistence.Column(name = "PARENT_ID", precision = 7) + public java.lang.Integer getPARENT_ID() { + return this.PARENT_ID; + } + + public void setPARENT_ID(java.lang.Integer PARENT_ID) { + this.PARENT_ID = PARENT_ID; + } + + @javax.persistence.Column(name = "IS_DIRECTORY", precision = 7) + public java.lang.Integer getIS_DIRECTORY() { + return this.IS_DIRECTORY; + } + + public void setIS_DIRECTORY(java.lang.Integer IS_DIRECTORY) { + this.IS_DIRECTORY = IS_DIRECTORY; + } + + @javax.persistence.Column(name = "name", length = 50) + public java.lang.String getname() { + return this.name; + } + + public void setname(java.lang.String name) { + this.name = name; + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/tables/pojos/T_TRIGGERS_POJO.java b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/tables/pojos/T_TRIGGERS_POJO.java new file mode 100644 index 00000000000..13b739c4a0c --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/tables/pojos/T_TRIGGERS_POJO.java @@ -0,0 +1,46 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle3.generatedclasses.tables.pojos; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "T_TRIGGERS", schema = "TEST") +public class T_TRIGGERS_POJO extends java.lang.ThreadDeath implements java.lang.Cloneable { + + private static final long serialVersionUID = -154415957; + + private java.lang.Integer ID_GENERATED; + private java.lang.Integer ID; + private java.lang.Integer COUNTER; + + @javax.persistence.Id + @javax.persistence.Column(name = "ID_GENERATED", unique = true, nullable = false, precision = 7) + public java.lang.Integer getID_GENERATED() { + return this.ID_GENERATED; + } + + public void setID_GENERATED(java.lang.Integer ID_GENERATED) { + this.ID_GENERATED = ID_GENERATED; + } + + @javax.persistence.Column(name = "ID", nullable = false, precision = 7) + public java.lang.Integer getID() { + return this.ID; + } + + public void setID(java.lang.Integer ID) { + this.ID = ID; + } + + @javax.persistence.Column(name = "COUNTER", nullable = false, precision = 7) + public java.lang.Integer getCOUNTER() { + return this.COUNTER; + } + + public void setCOUNTER(java.lang.Integer COUNTER) { + this.COUNTER = COUNTER; + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/tables/pojos/V_AUTHOR_POJO.java b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/tables/pojos/V_AUTHOR_POJO.java new file mode 100644 index 00000000000..40caa3744ff --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/tables/pojos/V_AUTHOR_POJO.java @@ -0,0 +1,75 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle3.generatedclasses.tables.pojos; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "V_AUTHOR", schema = "TEST") +public class V_AUTHOR_POJO extends java.lang.ThreadDeath implements java.lang.Cloneable { + + private static final long serialVersionUID = 1369668504; + + private java.lang.Integer ID; + private java.lang.String FIRST_NAME; + private java.lang.String LAST_NAME; + private java.sql.Date DATE_OF_BIRTH; + private java.lang.Integer YEAR_OF_BIRTH; + private org.jooq.test.oracle3.generatedclasses.udt.records.U_ADDRESS_TYPE ADDRESS; + + @javax.persistence.Column(name = "ID", nullable = false, precision = 7) + public java.lang.Integer getID() { + return this.ID; + } + + public void setID(java.lang.Integer ID) { + this.ID = ID; + } + + @javax.persistence.Column(name = "FIRST_NAME", length = 50) + public java.lang.String getFIRST_NAME() { + return this.FIRST_NAME; + } + + public void setFIRST_NAME(java.lang.String FIRST_NAME) { + this.FIRST_NAME = FIRST_NAME; + } + + @javax.persistence.Column(name = "LAST_NAME", nullable = false, length = 50) + public java.lang.String getLAST_NAME() { + return this.LAST_NAME; + } + + public void setLAST_NAME(java.lang.String LAST_NAME) { + this.LAST_NAME = LAST_NAME; + } + + @javax.persistence.Column(name = "DATE_OF_BIRTH", length = 7) + public java.sql.Date getDATE_OF_BIRTH() { + return this.DATE_OF_BIRTH; + } + + public void setDATE_OF_BIRTH(java.sql.Date DATE_OF_BIRTH) { + this.DATE_OF_BIRTH = DATE_OF_BIRTH; + } + + @javax.persistence.Column(name = "YEAR_OF_BIRTH", precision = 7) + public java.lang.Integer getYEAR_OF_BIRTH() { + return this.YEAR_OF_BIRTH; + } + + public void setYEAR_OF_BIRTH(java.lang.Integer YEAR_OF_BIRTH) { + this.YEAR_OF_BIRTH = YEAR_OF_BIRTH; + } + + @javax.persistence.Column(name = "ADDRESS", length = 448) + public org.jooq.test.oracle3.generatedclasses.udt.records.U_ADDRESS_TYPE getADDRESS() { + return this.ADDRESS; + } + + public void setADDRESS(org.jooq.test.oracle3.generatedclasses.udt.records.U_ADDRESS_TYPE ADDRESS) { + this.ADDRESS = ADDRESS; + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/tables/pojos/V_BOOK_POJO.java b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/tables/pojos/V_BOOK_POJO.java new file mode 100644 index 00000000000..fb9afdf131c --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/tables/pojos/V_BOOK_POJO.java @@ -0,0 +1,105 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle3.generatedclasses.tables.pojos; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "V_BOOK", schema = "TEST") +public class V_BOOK_POJO extends java.lang.Object implements java.io.Serializable { + + private static final long serialVersionUID = 1669816530; + + private java.lang.Integer ID; + private java.lang.Integer AUTHOR_ID; + private java.lang.Integer CO_AUTHOR_ID; + private java.lang.Integer DETAILS_ID; + private java.lang.String TITLE; + private java.lang.Integer PUBLISHED_IN; + private java.lang.Integer LANGUAGE_ID; + private java.lang.String CONTENT_TEXT; + private byte[] CONTENT_PDF; + + @javax.persistence.Column(name = "ID", nullable = false, precision = 7) + public java.lang.Integer getID() { + return this.ID; + } + + public void setID(java.lang.Integer ID) { + this.ID = ID; + } + + @javax.persistence.Column(name = "AUTHOR_ID", nullable = false, precision = 7) + public java.lang.Integer getAUTHOR_ID() { + return this.AUTHOR_ID; + } + + public void setAUTHOR_ID(java.lang.Integer AUTHOR_ID) { + this.AUTHOR_ID = AUTHOR_ID; + } + + @javax.persistence.Column(name = "CO_AUTHOR_ID", precision = 7) + public java.lang.Integer getCO_AUTHOR_ID() { + return this.CO_AUTHOR_ID; + } + + public void setCO_AUTHOR_ID(java.lang.Integer CO_AUTHOR_ID) { + this.CO_AUTHOR_ID = CO_AUTHOR_ID; + } + + @javax.persistence.Column(name = "DETAILS_ID", precision = 7) + public java.lang.Integer getDETAILS_ID() { + return this.DETAILS_ID; + } + + public void setDETAILS_ID(java.lang.Integer DETAILS_ID) { + this.DETAILS_ID = DETAILS_ID; + } + + @javax.persistence.Column(name = "TITLE", nullable = false, length = 400) + public java.lang.String getTITLE() { + return this.TITLE; + } + + public void setTITLE(java.lang.String TITLE) { + this.TITLE = TITLE; + } + + @javax.persistence.Column(name = "PUBLISHED_IN", nullable = false, precision = 7) + public java.lang.Integer getPUBLISHED_IN() { + return this.PUBLISHED_IN; + } + + public void setPUBLISHED_IN(java.lang.Integer PUBLISHED_IN) { + this.PUBLISHED_IN = PUBLISHED_IN; + } + + @javax.persistence.Column(name = "LANGUAGE_ID", nullable = false, precision = 7) + public java.lang.Integer getLANGUAGE_ID() { + return this.LANGUAGE_ID; + } + + public void setLANGUAGE_ID(java.lang.Integer LANGUAGE_ID) { + this.LANGUAGE_ID = LANGUAGE_ID; + } + + @javax.persistence.Column(name = "CONTENT_TEXT", length = 4000) + public java.lang.String getCONTENT_TEXT() { + return this.CONTENT_TEXT; + } + + public void setCONTENT_TEXT(java.lang.String CONTENT_TEXT) { + this.CONTENT_TEXT = CONTENT_TEXT; + } + + @javax.persistence.Column(name = "CONTENT_PDF", length = 4000) + public byte[] getCONTENT_PDF() { + return this.CONTENT_PDF; + } + + public void setCONTENT_PDF(byte[] CONTENT_PDF) { + this.CONTENT_PDF = CONTENT_PDF; + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/tables/pojos/V_INCOMPLETE_POJO.java b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/tables/pojos/V_INCOMPLETE_POJO.java new file mode 100644 index 00000000000..5b716409ae6 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/tables/pojos/V_INCOMPLETE_POJO.java @@ -0,0 +1,105 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle3.generatedclasses.tables.pojos; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "V_INCOMPLETE", schema = "TEST") +public class V_INCOMPLETE_POJO extends java.lang.ThreadDeath implements java.lang.Cloneable { + + private static final long serialVersionUID = -618094798; + + private java.lang.Object ID; + private java.lang.Object AUTHOR_ID; + private java.lang.Object CO_AUTHOR_ID; + private java.lang.Object DETAILS_ID; + private java.lang.Object TITLE; + private java.lang.Object PUBLISHED_IN; + private java.lang.Object LANGUAGE_ID; + private java.lang.Object CONTENT_TEXT; + private java.lang.Object CONTENT_PDF; + + @javax.persistence.Column(name = "ID") + public java.lang.Object getID() { + return this.ID; + } + + public void setID(java.lang.Object ID) { + this.ID = ID; + } + + @javax.persistence.Column(name = "AUTHOR_ID") + public java.lang.Object getAUTHOR_ID() { + return this.AUTHOR_ID; + } + + public void setAUTHOR_ID(java.lang.Object AUTHOR_ID) { + this.AUTHOR_ID = AUTHOR_ID; + } + + @javax.persistence.Column(name = "CO_AUTHOR_ID") + public java.lang.Object getCO_AUTHOR_ID() { + return this.CO_AUTHOR_ID; + } + + public void setCO_AUTHOR_ID(java.lang.Object CO_AUTHOR_ID) { + this.CO_AUTHOR_ID = CO_AUTHOR_ID; + } + + @javax.persistence.Column(name = "DETAILS_ID") + public java.lang.Object getDETAILS_ID() { + return this.DETAILS_ID; + } + + public void setDETAILS_ID(java.lang.Object DETAILS_ID) { + this.DETAILS_ID = DETAILS_ID; + } + + @javax.persistence.Column(name = "TITLE") + public java.lang.Object getTITLE() { + return this.TITLE; + } + + public void setTITLE(java.lang.Object TITLE) { + this.TITLE = TITLE; + } + + @javax.persistence.Column(name = "PUBLISHED_IN") + public java.lang.Object getPUBLISHED_IN() { + return this.PUBLISHED_IN; + } + + public void setPUBLISHED_IN(java.lang.Object PUBLISHED_IN) { + this.PUBLISHED_IN = PUBLISHED_IN; + } + + @javax.persistence.Column(name = "LANGUAGE_ID") + public java.lang.Object getLANGUAGE_ID() { + return this.LANGUAGE_ID; + } + + public void setLANGUAGE_ID(java.lang.Object LANGUAGE_ID) { + this.LANGUAGE_ID = LANGUAGE_ID; + } + + @javax.persistence.Column(name = "CONTENT_TEXT") + public java.lang.Object getCONTENT_TEXT() { + return this.CONTENT_TEXT; + } + + public void setCONTENT_TEXT(java.lang.Object CONTENT_TEXT) { + this.CONTENT_TEXT = CONTENT_TEXT; + } + + @javax.persistence.Column(name = "CONTENT_PDF") + public java.lang.Object getCONTENT_PDF() { + return this.CONTENT_PDF; + } + + public void setCONTENT_PDF(java.lang.Object CONTENT_PDF) { + this.CONTENT_PDF = CONTENT_PDF; + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/tables/pojos/V_LIBRARY_POJO.java b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/tables/pojos/V_LIBRARY_POJO.java new file mode 100644 index 00000000000..1ab69ef3248 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/tables/pojos/V_LIBRARY_POJO.java @@ -0,0 +1,35 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle3.generatedclasses.tables.pojos; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "V_LIBRARY", schema = "TEST") +public class V_LIBRARY_POJO extends java.lang.ThreadDeath implements java.lang.Cloneable { + + private static final long serialVersionUID = -240219677; + + private java.lang.String AUTHOR; + private java.lang.String TITLE; + + @javax.persistence.Column(name = "AUTHOR", length = 101) + public java.lang.String getAUTHOR() { + return this.AUTHOR; + } + + public void setAUTHOR(java.lang.String AUTHOR) { + this.AUTHOR = AUTHOR; + } + + @javax.persistence.Column(name = "TITLE", nullable = false, length = 400) + public java.lang.String getTITLE() { + return this.TITLE; + } + + public void setTITLE(java.lang.String TITLE) { + this.TITLE = TITLE; + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/tables/pojos/X_TEST_CASE_64_69_POJO.java b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/tables/pojos/X_TEST_CASE_64_69_POJO.java new file mode 100644 index 00000000000..7cf926350e3 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/tables/pojos/X_TEST_CASE_64_69_POJO.java @@ -0,0 +1,36 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle3.generatedclasses.tables.pojos; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "X_TEST_CASE_64_69", schema = "TEST") +public class X_TEST_CASE_64_69_POJO extends java.lang.ThreadDeath implements java.lang.Cloneable { + + private static final long serialVersionUID = -1333623784; + + private java.lang.Integer ID; + private java.lang.Integer UNUSED_ID; + + @javax.persistence.Id + @javax.persistence.Column(name = "ID", unique = true, nullable = false, precision = 7) + public java.lang.Integer getID() { + return this.ID; + } + + public void setID(java.lang.Integer ID) { + this.ID = ID; + } + + @javax.persistence.Column(name = "UNUSED_ID", precision = 7) + public java.lang.Integer getUNUSED_ID() { + return this.UNUSED_ID; + } + + public void setUNUSED_ID(java.lang.Integer UNUSED_ID) { + this.UNUSED_ID = UNUSED_ID; + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/tables/pojos/X_TEST_CASE_71_POJO.java b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/tables/pojos/X_TEST_CASE_71_POJO.java new file mode 100644 index 00000000000..f5a2bf60ab6 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/tables/pojos/X_TEST_CASE_71_POJO.java @@ -0,0 +1,36 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle3.generatedclasses.tables.pojos; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "X_TEST_CASE_71", schema = "TEST") +public class X_TEST_CASE_71_POJO extends java.lang.ThreadDeath implements java.lang.Cloneable { + + private static final long serialVersionUID = 465205983; + + private java.lang.Integer ID; + private java.lang.Short TEST_CASE_64_69_ID; + + @javax.persistence.Id + @javax.persistence.Column(name = "ID", unique = true, nullable = false, precision = 7) + public java.lang.Integer getID() { + return this.ID; + } + + public void setID(java.lang.Integer ID) { + this.ID = ID; + } + + @javax.persistence.Column(name = "TEST_CASE_64_69_ID", precision = 4) + public java.lang.Short getTEST_CASE_64_69_ID() { + return this.TEST_CASE_64_69_ID; + } + + public void setTEST_CASE_64_69_ID(java.lang.Short TEST_CASE_64_69_ID) { + this.TEST_CASE_64_69_ID = TEST_CASE_64_69_ID; + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/tables/pojos/X_TEST_CASE_85_POJO.java b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/tables/pojos/X_TEST_CASE_85_POJO.java new file mode 100644 index 00000000000..b9646bf1cab --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/tables/pojos/X_TEST_CASE_85_POJO.java @@ -0,0 +1,46 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle3.generatedclasses.tables.pojos; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "X_TEST_CASE_85", schema = "TEST") +public class X_TEST_CASE_85_POJO extends java.lang.ThreadDeath implements java.lang.Cloneable { + + private static final long serialVersionUID = 1834506106; + + private java.lang.Integer ID; + private java.lang.Integer X_UNUSED_ID; + private java.lang.String X_UNUSED_NAME; + + @javax.persistence.Id + @javax.persistence.Column(name = "ID", unique = true, nullable = false, precision = 7) + public java.lang.Integer getID() { + return this.ID; + } + + public void setID(java.lang.Integer ID) { + this.ID = ID; + } + + @javax.persistence.Column(name = "X_UNUSED_ID", precision = 7) + public java.lang.Integer getX_UNUSED_ID() { + return this.X_UNUSED_ID; + } + + public void setX_UNUSED_ID(java.lang.Integer X_UNUSED_ID) { + this.X_UNUSED_ID = X_UNUSED_ID; + } + + @javax.persistence.Column(name = "X_UNUSED_NAME", length = 10) + public java.lang.String getX_UNUSED_NAME() { + return this.X_UNUSED_NAME; + } + + public void setX_UNUSED_NAME(java.lang.String X_UNUSED_NAME) { + this.X_UNUSED_NAME = X_UNUSED_NAME; + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/tables/pojos/X_UNUSED_POJO.java b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/tables/pojos/X_UNUSED_POJO.java new file mode 100644 index 00000000000..e3d71936527 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/tables/pojos/X_UNUSED_POJO.java @@ -0,0 +1,179 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle3.generatedclasses.tables.pojos; + +/** + * This class is generated by jOOQ. + * + * An unused table in the same schema. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "X_UNUSED", schema = "TEST", uniqueConstraints = { + @javax.persistence.UniqueConstraint(columnNames = {"ID", "NAME"}) +}) +public class X_UNUSED_POJO extends java.lang.ThreadDeath implements java.lang.Cloneable { + + private static final long serialVersionUID = 637935870; + + private java.lang.Integer ID; + private java.lang.String NAME; + private java.math.BigInteger BIG_INTEGER; + private java.lang.Integer ID_REF; + private java.lang.Integer CLASS; + private java.lang.Integer FIELDS; + private java.lang.Integer CONFIGURATION; + private java.lang.Integer U_D_T; + private java.lang.Integer META_DATA; + private java.lang.Integer TYPE0; + private java.lang.Integer PRIMARY_KEY; + private java.lang.Integer PRIMARYKEY; + private java.lang.String NAME_REF; + private java.math.BigDecimal FIELD_737; + private java.lang.Integer MS_UNUSED_ID_REF; + private java.lang.String MS_UNUSED_NAME_REF; + + @javax.persistence.Column(name = "ID", unique = true, nullable = false, precision = 7) + public java.lang.Integer getID() { + return this.ID; + } + + public void setID(java.lang.Integer ID) { + this.ID = ID; + } + + @javax.persistence.Column(name = "NAME", nullable = false, length = 10) + public java.lang.String getNAME() { + return this.NAME; + } + + public void setNAME(java.lang.String NAME) { + this.NAME = NAME; + } + + @javax.persistence.Column(name = "BIG_INTEGER", precision = 38) + public java.math.BigInteger getBIG_INTEGER() { + return this.BIG_INTEGER; + } + + public void setBIG_INTEGER(java.math.BigInteger BIG_INTEGER) { + this.BIG_INTEGER = BIG_INTEGER; + } + + @javax.persistence.Column(name = "ID_REF", precision = 7) + public java.lang.Integer getID_REF() { + return this.ID_REF; + } + + public void setID_REF(java.lang.Integer ID_REF) { + this.ID_REF = ID_REF; + } + + @javax.persistence.Column(name = "CLASS", precision = 7) + public java.lang.Integer getCLASS() { + return this.CLASS; + } + + public void setCLASS(java.lang.Integer CLASS) { + this.CLASS = CLASS; + } + + @javax.persistence.Column(name = "FIELDS", precision = 7) + public java.lang.Integer getFIELDS() { + return this.FIELDS; + } + + public void setFIELDS(java.lang.Integer FIELDS) { + this.FIELDS = FIELDS; + } + + @javax.persistence.Column(name = "CONFIGURATION", precision = 7) + public java.lang.Integer getCONFIGURATION() { + return this.CONFIGURATION; + } + + public void setCONFIGURATION(java.lang.Integer CONFIGURATION) { + this.CONFIGURATION = CONFIGURATION; + } + + @javax.persistence.Column(name = "U_D_T", precision = 7) + public java.lang.Integer getU_D_T() { + return this.U_D_T; + } + + public void setU_D_T(java.lang.Integer U_D_T) { + this.U_D_T = U_D_T; + } + + @javax.persistence.Column(name = "META_DATA", precision = 7) + public java.lang.Integer getMETA_DATA() { + return this.META_DATA; + } + + public void setMETA_DATA(java.lang.Integer META_DATA) { + this.META_DATA = META_DATA; + } + + @javax.persistence.Column(name = "TYPE0", precision = 7) + public java.lang.Integer getTYPE0() { + return this.TYPE0; + } + + public void setTYPE0(java.lang.Integer TYPE0) { + this.TYPE0 = TYPE0; + } + + @javax.persistence.Column(name = "PRIMARY_KEY", precision = 7) + public java.lang.Integer getPRIMARY_KEY() { + return this.PRIMARY_KEY; + } + + public void setPRIMARY_KEY(java.lang.Integer PRIMARY_KEY) { + this.PRIMARY_KEY = PRIMARY_KEY; + } + + @javax.persistence.Column(name = "PRIMARYKEY", precision = 7) + public java.lang.Integer getPRIMARYKEY() { + return this.PRIMARYKEY; + } + + public void setPRIMARYKEY(java.lang.Integer PRIMARYKEY) { + this.PRIMARYKEY = PRIMARYKEY; + } + + @javax.persistence.Column(name = "NAME_REF", length = 10) + public java.lang.String getNAME_REF() { + return this.NAME_REF; + } + + public void setNAME_REF(java.lang.String NAME_REF) { + this.NAME_REF = NAME_REF; + } + + @javax.persistence.Column(name = "FIELD 737", precision = 25, scale = 2) + public java.math.BigDecimal getFIELD_737() { + return this.FIELD_737; + } + + public void setFIELD_737(java.math.BigDecimal FIELD_737) { + this.FIELD_737 = FIELD_737; + } + + @javax.persistence.Column(name = "MS_UNUSED_ID_REF", precision = 7) + public java.lang.Integer getMS_UNUSED_ID_REF() { + return this.MS_UNUSED_ID_REF; + } + + public void setMS_UNUSED_ID_REF(java.lang.Integer MS_UNUSED_ID_REF) { + this.MS_UNUSED_ID_REF = MS_UNUSED_ID_REF; + } + + @javax.persistence.Column(name = "MS_UNUSED_NAME_REF", length = 10) + public java.lang.String getMS_UNUSED_NAME_REF() { + return this.MS_UNUSED_NAME_REF; + } + + public void setMS_UNUSED_NAME_REF(java.lang.String MS_UNUSED_NAME_REF) { + this.MS_UNUSED_NAME_REF = MS_UNUSED_NAME_REF; + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/udt/O_INVALID_TYPE.java b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/udt/O_INVALID_TYPE.java new file mode 100644 index 00000000000..220c27aedf9 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/udt/O_INVALID_TYPE.java @@ -0,0 +1,37 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle3.generatedclasses.udt; + +/** + * This class is generated by jOOQ. + */ +public class O_INVALID_TYPE extends org.jooq.impl.UDTImpl implements java.lang.Cloneable { + + private static final long serialVersionUID = -1993818869; + + /** + * The singleton instance of TEST.O_INVALID_TYPE + */ + public static final org.jooq.test.oracle3.generatedclasses.udt.O_INVALID_TYPE O_INVALID_TYPE = new org.jooq.test.oracle3.generatedclasses.udt.O_INVALID_TYPE(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.oracle3.generatedclasses.udt.records.O_INVALID_TYPE.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * No further instances allowed + */ + private O_INVALID_TYPE() { + super("O_INVALID_TYPE", org.jooq.test.oracle3.generatedclasses.TEST.TEST); + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/udt/U_ADDRESS_TYPE.java b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/udt/U_ADDRESS_TYPE.java new file mode 100644 index 00000000000..2f723c64b6f --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/udt/U_ADDRESS_TYPE.java @@ -0,0 +1,67 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle3.generatedclasses.udt; + +/** + * This class is generated by jOOQ. + */ +public class U_ADDRESS_TYPE extends org.jooq.impl.UDTImpl implements java.lang.Cloneable { + + private static final long serialVersionUID = -1438599870; + + /** + * The singleton instance of TEST.U_ADDRESS_TYPE + */ + public static final org.jooq.test.oracle3.generatedclasses.udt.U_ADDRESS_TYPE U_ADDRESS_TYPE = new org.jooq.test.oracle3.generatedclasses.udt.U_ADDRESS_TYPE(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.oracle3.generatedclasses.udt.records.U_ADDRESS_TYPE.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + */ + public static final org.jooq.UDTField STREET = createField("STREET", org.jooq.test.oracle3.generatedclasses.udt.U_STREET_TYPE.U_STREET_TYPE.getDataType(), U_ADDRESS_TYPE); + + /** + * An uncommented item + */ + public static final org.jooq.UDTField ZIP = createField("ZIP", org.jooq.impl.SQLDataType.VARCHAR, U_ADDRESS_TYPE); + + /** + * An uncommented item + */ + public static final org.jooq.UDTField CITY = createField("CITY", org.jooq.impl.SQLDataType.VARCHAR, U_ADDRESS_TYPE); + + /** + * An uncommented item + */ + public static final org.jooq.UDTField COUNTRY = createField("COUNTRY", org.jooq.impl.SQLDataType.VARCHAR, U_ADDRESS_TYPE); + + /** + * An uncommented item + */ + public static final org.jooq.UDTField SINCE = createField("SINCE", org.jooq.impl.SQLDataType.DATE, U_ADDRESS_TYPE); + + /** + * An uncommented item + */ + public static final org.jooq.UDTField CODE = createField("CODE", org.jooq.impl.SQLDataType.INTEGER, U_ADDRESS_TYPE); + + /** + * No further instances allowed + */ + private U_ADDRESS_TYPE() { + super("U_ADDRESS_TYPE", org.jooq.test.oracle3.generatedclasses.TEST.TEST); + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/udt/U_AUTHOR_TYPE.java b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/udt/U_AUTHOR_TYPE.java new file mode 100644 index 00000000000..0f5b699e197 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/udt/U_AUTHOR_TYPE.java @@ -0,0 +1,121 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle3.generatedclasses.udt; + +/** + * This class is generated by jOOQ. + */ +public class U_AUTHOR_TYPE extends org.jooq.impl.UDTImpl implements java.lang.Cloneable, org.jooq.Package { + + private static final long serialVersionUID = 1277227085; + + /** + * The singleton instance of TEST.U_AUTHOR_TYPE + */ + public static final org.jooq.test.oracle3.generatedclasses.udt.U_AUTHOR_TYPE U_AUTHOR_TYPE = new org.jooq.test.oracle3.generatedclasses.udt.U_AUTHOR_TYPE(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.oracle3.generatedclasses.udt.records.U_AUTHOR_TYPE.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + */ + public static final org.jooq.UDTField ID = createField("ID", org.jooq.impl.SQLDataType.INTEGER, U_AUTHOR_TYPE); + + /** + * An uncommented item + */ + public static final org.jooq.UDTField FIRST_NAME = createField("FIRST_NAME", org.jooq.impl.SQLDataType.VARCHAR, U_AUTHOR_TYPE); + + /** + * An uncommented item + */ + public static final org.jooq.UDTField LAST_NAME = createField("LAST_NAME", org.jooq.impl.SQLDataType.VARCHAR, U_AUTHOR_TYPE); + + /** + * Call TEST.U_AUTHOR_TYPE.COUNT_BOOKS + * + * @param SELF + * @throws org.jooq.exception.DataAccessException if something went wrong executing the query + */ + public static java.math.BigDecimal call_COUNT_BOOKS(org.jooq.Configuration configuration, org.jooq.test.oracle3.generatedclasses.udt.records.U_AUTHOR_TYPE SELF) { + org.jooq.test.oracle3.generatedclasses.udt.u_author_type.COUNT_BOOKS f = new org.jooq.test.oracle3.generatedclasses.udt.u_author_type.COUNT_BOOKS(); + f.setSELF(SELF); + + f.execute(configuration); + return f.getReturnValue(); + } + + /** + * Get TEST.U_AUTHOR_TYPE.COUNT_BOOKS as a field + * + * @param SELF + */ + public static org.jooq.Field call_COUNT_BOOKS(org.jooq.test.oracle3.generatedclasses.udt.records.U_AUTHOR_TYPE SELF) { + org.jooq.test.oracle3.generatedclasses.udt.u_author_type.COUNT_BOOKS f = new org.jooq.test.oracle3.generatedclasses.udt.u_author_type.COUNT_BOOKS(); + f.setSELF(SELF); + + return f.asField(); + } + + /** + * Get TEST.U_AUTHOR_TYPE.COUNT_BOOKS as a field + * + * @param SELF + */ + public static org.jooq.Field call_COUNT_BOOKS(org.jooq.Field SELF) { + org.jooq.test.oracle3.generatedclasses.udt.u_author_type.COUNT_BOOKS f = new org.jooq.test.oracle3.generatedclasses.udt.u_author_type.COUNT_BOOKS(); + f.setSELF(SELF); + + return f.asField(); + } + + /** + * Call TEST.U_AUTHOR_TYPE.GET_BOOKS + * + * @param SELF IN OUT parameter + * @param BOOK1 OUT parameter + * @param BOOK2 OUT parameter + * @param BOOKS OUT parameter + * @throws org.jooq.exception.DataAccessException if something went wrong executing the query + */ + public static org.jooq.test.oracle3.generatedclasses.udt.u_author_type.GET_BOOKS call_GET_BOOKS(org.jooq.Configuration configuration, org.jooq.test.oracle3.generatedclasses.udt.records.U_AUTHOR_TYPE SELF) { + org.jooq.test.oracle3.generatedclasses.udt.u_author_type.GET_BOOKS p = new org.jooq.test.oracle3.generatedclasses.udt.u_author_type.GET_BOOKS(); + p.setSELF(SELF); + + p.execute(configuration); + return p; + } + + /** + * Call TEST.U_AUTHOR_TYPE.LOAD + * + * @param SELF IN OUT parameter + * @throws org.jooq.exception.DataAccessException if something went wrong executing the query + */ + public static org.jooq.test.oracle3.generatedclasses.udt.records.U_AUTHOR_TYPE call_LOAD(org.jooq.Configuration configuration, org.jooq.test.oracle3.generatedclasses.udt.records.U_AUTHOR_TYPE SELF) { + org.jooq.test.oracle3.generatedclasses.udt.u_author_type.LOAD p = new org.jooq.test.oracle3.generatedclasses.udt.u_author_type.LOAD(); + p.setSELF(SELF); + + p.execute(configuration); + return p.getSELF(); + } + + /** + * No further instances allowed + */ + private U_AUTHOR_TYPE() { + super("U_AUTHOR_TYPE", org.jooq.test.oracle3.generatedclasses.TEST.TEST); + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/udt/U_BOOK_TYPE.java b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/udt/U_BOOK_TYPE.java new file mode 100644 index 00000000000..77a1544a43b --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/udt/U_BOOK_TYPE.java @@ -0,0 +1,47 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle3.generatedclasses.udt; + +/** + * This class is generated by jOOQ. + */ +public class U_BOOK_TYPE extends org.jooq.impl.UDTImpl implements java.lang.Cloneable { + + private static final long serialVersionUID = -1588960519; + + /** + * The singleton instance of TEST.U_BOOK_TYPE + */ + public static final org.jooq.test.oracle3.generatedclasses.udt.U_BOOK_TYPE U_BOOK_TYPE = new org.jooq.test.oracle3.generatedclasses.udt.U_BOOK_TYPE(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.oracle3.generatedclasses.udt.records.U_BOOK_TYPE.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + */ + public static final org.jooq.UDTField ID = createField("ID", org.jooq.impl.SQLDataType.INTEGER, U_BOOK_TYPE); + + /** + * An uncommented item + */ + public static final org.jooq.UDTField TITLE = createField("TITLE", org.jooq.impl.SQLDataType.VARCHAR, U_BOOK_TYPE); + + /** + * No further instances allowed + */ + private U_BOOK_TYPE() { + super("U_BOOK_TYPE", org.jooq.test.oracle3.generatedclasses.TEST.TEST); + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/udt/U_INVALID_TABLE.java b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/udt/U_INVALID_TABLE.java new file mode 100644 index 00000000000..3e6094c0571 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/udt/U_INVALID_TABLE.java @@ -0,0 +1,37 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle3.generatedclasses.udt; + +/** + * This class is generated by jOOQ. + */ +public class U_INVALID_TABLE extends org.jooq.impl.UDTImpl implements java.lang.Cloneable { + + private static final long serialVersionUID = -1426360419; + + /** + * The singleton instance of TEST.U_INVALID_TABLE + */ + public static final org.jooq.test.oracle3.generatedclasses.udt.U_INVALID_TABLE U_INVALID_TABLE = new org.jooq.test.oracle3.generatedclasses.udt.U_INVALID_TABLE(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.oracle3.generatedclasses.udt.records.U_INVALID_TABLE.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * No further instances allowed + */ + private U_INVALID_TABLE() { + super("U_INVALID_TABLE", org.jooq.test.oracle3.generatedclasses.TEST.TEST); + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/udt/U_INVALID_TYPE.java b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/udt/U_INVALID_TYPE.java new file mode 100644 index 00000000000..7ac6ee2b9ee --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/udt/U_INVALID_TYPE.java @@ -0,0 +1,37 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle3.generatedclasses.udt; + +/** + * This class is generated by jOOQ. + */ +public class U_INVALID_TYPE extends org.jooq.impl.UDTImpl implements java.lang.Cloneable { + + private static final long serialVersionUID = 239516393; + + /** + * The singleton instance of TEST.U_INVALID_TYPE + */ + public static final org.jooq.test.oracle3.generatedclasses.udt.U_INVALID_TYPE U_INVALID_TYPE = new org.jooq.test.oracle3.generatedclasses.udt.U_INVALID_TYPE(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.oracle3.generatedclasses.udt.records.U_INVALID_TYPE.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * No further instances allowed + */ + private U_INVALID_TYPE() { + super("U_INVALID_TYPE", org.jooq.test.oracle3.generatedclasses.TEST.TEST); + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/udt/U_STREET_TYPE.java b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/udt/U_STREET_TYPE.java new file mode 100644 index 00000000000..3b7fbc530a6 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/udt/U_STREET_TYPE.java @@ -0,0 +1,52 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle3.generatedclasses.udt; + +/** + * This class is generated by jOOQ. + */ +public class U_STREET_TYPE extends org.jooq.impl.UDTImpl implements java.lang.Cloneable { + + private static final long serialVersionUID = 1786177499; + + /** + * The singleton instance of TEST.U_STREET_TYPE + */ + public static final org.jooq.test.oracle3.generatedclasses.udt.U_STREET_TYPE U_STREET_TYPE = new org.jooq.test.oracle3.generatedclasses.udt.U_STREET_TYPE(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.oracle3.generatedclasses.udt.records.U_STREET_TYPE.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + */ + public static final org.jooq.UDTField STREET = createField("STREET", org.jooq.impl.SQLDataType.VARCHAR, U_STREET_TYPE); + + /** + * An uncommented item + */ + public static final org.jooq.UDTField NO = createField("NO", org.jooq.impl.SQLDataType.VARCHAR, U_STREET_TYPE); + + /** + * An uncommented item + */ + public static final org.jooq.UDTField FLOORS = createField("FLOORS", org.jooq.impl.SQLDataType.INTEGER.asArrayDataType(org.jooq.test.oracle3.generatedclasses.udt.records.U_NUMBER_ARRAY.class), U_STREET_TYPE); + + /** + * No further instances allowed + */ + private U_STREET_TYPE() { + super("U_STREET_TYPE", org.jooq.test.oracle3.generatedclasses.TEST.TEST); + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/udt/records/O_INVALID_TYPE.java b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/udt/records/O_INVALID_TYPE.java new file mode 100644 index 00000000000..0a72d0cb0d5 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/udt/records/O_INVALID_TYPE.java @@ -0,0 +1,17 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle3.generatedclasses.udt.records; + +/** + * This class is generated by jOOQ. + */ +public class O_INVALID_TYPE extends org.jooq.impl.UDTRecordImpl implements java.lang.Cloneable { + + private static final long serialVersionUID = -1373388432; + + + public O_INVALID_TYPE() { + super(org.jooq.test.oracle3.generatedclasses.udt.O_INVALID_TYPE.O_INVALID_TYPE); + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/udt/records/U_ADDRESS_TABLE.java b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/udt/records/U_ADDRESS_TABLE.java new file mode 100644 index 00000000000..7c70df33e65 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/udt/records/U_ADDRESS_TABLE.java @@ -0,0 +1,26 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle3.generatedclasses.udt.records; + +/** + * This class is generated by jOOQ. + */ +public class U_ADDRESS_TABLE extends org.jooq.impl.ArrayRecordImpl implements java.lang.Cloneable { + + private static final long serialVersionUID = 1016106295; + + public U_ADDRESS_TABLE(org.jooq.Configuration configuration) { + super(org.jooq.test.oracle3.generatedclasses.TEST.TEST, "U_ADDRESS_TABLE", org.jooq.test.oracle3.generatedclasses.udt.U_ADDRESS_TYPE.U_ADDRESS_TYPE.getDataType(), configuration); + } + + public U_ADDRESS_TABLE(org.jooq.Configuration configuration, org.jooq.test.oracle3.generatedclasses.udt.records.U_ADDRESS_TYPE... array) { + this(configuration); + set(array); + } + + public U_ADDRESS_TABLE(org.jooq.Configuration configuration, java.util.List list) { + this(configuration); + setList(list); + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/udt/records/U_ADDRESS_TYPE.java b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/udt/records/U_ADDRESS_TYPE.java new file mode 100644 index 00000000000..6ea7353fd5b --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/udt/records/U_ADDRESS_TYPE.java @@ -0,0 +1,101 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle3.generatedclasses.udt.records; + +/** + * This class is generated by jOOQ. + */ +public class U_ADDRESS_TYPE extends org.jooq.impl.UDTRecordImpl implements java.lang.Cloneable { + + private static final long serialVersionUID = -1152928371; + + + /** + * An uncommented item + */ + public void setSTREET(org.jooq.test.oracle3.generatedclasses.udt.records.U_STREET_TYPE value) { + setValue(org.jooq.test.oracle3.generatedclasses.udt.U_ADDRESS_TYPE.STREET, value); + } + + /** + * An uncommented item + */ + public org.jooq.test.oracle3.generatedclasses.udt.records.U_STREET_TYPE getSTREET() { + return getValue(org.jooq.test.oracle3.generatedclasses.udt.U_ADDRESS_TYPE.STREET); + } + + /** + * An uncommented item + */ + public void setZIP(java.lang.String value) { + setValue(org.jooq.test.oracle3.generatedclasses.udt.U_ADDRESS_TYPE.ZIP, value); + } + + /** + * An uncommented item + */ + public java.lang.String getZIP() { + return getValue(org.jooq.test.oracle3.generatedclasses.udt.U_ADDRESS_TYPE.ZIP); + } + + /** + * An uncommented item + */ + public void setCITY(java.lang.String value) { + setValue(org.jooq.test.oracle3.generatedclasses.udt.U_ADDRESS_TYPE.CITY, value); + } + + /** + * An uncommented item + */ + public java.lang.String getCITY() { + return getValue(org.jooq.test.oracle3.generatedclasses.udt.U_ADDRESS_TYPE.CITY); + } + + /** + * An uncommented item + */ + public void setCOUNTRY(java.lang.String value) { + setValue(org.jooq.test.oracle3.generatedclasses.udt.U_ADDRESS_TYPE.COUNTRY, value); + } + + /** + * An uncommented item + */ + public java.lang.String getCOUNTRY() { + return getValue(org.jooq.test.oracle3.generatedclasses.udt.U_ADDRESS_TYPE.COUNTRY); + } + + /** + * An uncommented item + */ + public void setSINCE(java.sql.Date value) { + setValue(org.jooq.test.oracle3.generatedclasses.udt.U_ADDRESS_TYPE.SINCE, value); + } + + /** + * An uncommented item + */ + public java.sql.Date getSINCE() { + return getValue(org.jooq.test.oracle3.generatedclasses.udt.U_ADDRESS_TYPE.SINCE); + } + + /** + * An uncommented item + */ + public void setCODE(java.lang.Integer value) { + setValue(org.jooq.test.oracle3.generatedclasses.udt.U_ADDRESS_TYPE.CODE, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getCODE() { + return getValue(org.jooq.test.oracle3.generatedclasses.udt.U_ADDRESS_TYPE.CODE); + } + + public U_ADDRESS_TYPE() { + super(org.jooq.test.oracle3.generatedclasses.udt.U_ADDRESS_TYPE.U_ADDRESS_TYPE); + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/udt/records/U_AUTHOR_TYPE.java b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/udt/records/U_AUTHOR_TYPE.java new file mode 100644 index 00000000000..e4d433cf2bd --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/udt/records/U_AUTHOR_TYPE.java @@ -0,0 +1,106 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle3.generatedclasses.udt.records; + +/** + * This class is generated by jOOQ. + */ +public class U_AUTHOR_TYPE extends org.jooq.impl.UDTRecordImpl implements java.lang.Cloneable { + + private static final long serialVersionUID = -380592012; + + + /** + * An uncommented item + */ + public void setID(java.lang.Integer value) { + setValue(org.jooq.test.oracle3.generatedclasses.udt.U_AUTHOR_TYPE.ID, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getID() { + return getValue(org.jooq.test.oracle3.generatedclasses.udt.U_AUTHOR_TYPE.ID); + } + + /** + * An uncommented item + */ + public void setFIRST_NAME(java.lang.String value) { + setValue(org.jooq.test.oracle3.generatedclasses.udt.U_AUTHOR_TYPE.FIRST_NAME, value); + } + + /** + * An uncommented item + */ + public java.lang.String getFIRST_NAME() { + return getValue(org.jooq.test.oracle3.generatedclasses.udt.U_AUTHOR_TYPE.FIRST_NAME); + } + + /** + * An uncommented item + */ + public void setLAST_NAME(java.lang.String value) { + setValue(org.jooq.test.oracle3.generatedclasses.udt.U_AUTHOR_TYPE.LAST_NAME, value); + } + + /** + * An uncommented item + */ + public java.lang.String getLAST_NAME() { + return getValue(org.jooq.test.oracle3.generatedclasses.udt.U_AUTHOR_TYPE.LAST_NAME); + } + + /** + * Call TEST.U_AUTHOR_TYPE.COUNT_BOOKS + * + * @param SELF + * @throws org.jooq.exception.DataAccessException if something went wrong executing the query + */ + public java.math.BigDecimal call_COUNT_BOOKS() { + org.jooq.test.oracle3.generatedclasses.udt.u_author_type.COUNT_BOOKS f = new org.jooq.test.oracle3.generatedclasses.udt.u_author_type.COUNT_BOOKS(); + f.setSELF(this); + + f.execute(getConfiguration()); + return f.getReturnValue(); + } + + /** + * Call TEST.U_AUTHOR_TYPE.GET_BOOKS + * + * @param SELF IN OUT parameter + * @param BOOK1 OUT parameter + * @param BOOK2 OUT parameter + * @param BOOKS OUT parameter + * @throws org.jooq.exception.DataAccessException if something went wrong executing the query + */ + public org.jooq.test.oracle3.generatedclasses.udt.u_author_type.GET_BOOKS call_GET_BOOKS() { + org.jooq.test.oracle3.generatedclasses.udt.u_author_type.GET_BOOKS p = new org.jooq.test.oracle3.generatedclasses.udt.u_author_type.GET_BOOKS(); + p.setSELF(this); + + p.execute(getConfiguration()); + from(p.getSELF()); + return p; + } + + /** + * Call TEST.U_AUTHOR_TYPE.LOAD + * + * @param SELF IN OUT parameter + * @throws org.jooq.exception.DataAccessException if something went wrong executing the query + */ + public org.jooq.test.oracle3.generatedclasses.udt.records.U_AUTHOR_TYPE call_LOAD() { + org.jooq.test.oracle3.generatedclasses.udt.u_author_type.LOAD p = new org.jooq.test.oracle3.generatedclasses.udt.u_author_type.LOAD(); + p.setSELF(this); + + p.execute(getConfiguration()); + from(p.getSELF()); + return p.getSELF(); + } + + public U_AUTHOR_TYPE() { + super(org.jooq.test.oracle3.generatedclasses.udt.U_AUTHOR_TYPE.U_AUTHOR_TYPE); + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/udt/records/U_BOOK_ARRAY.java b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/udt/records/U_BOOK_ARRAY.java new file mode 100644 index 00000000000..6951ee40c26 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/udt/records/U_BOOK_ARRAY.java @@ -0,0 +1,26 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle3.generatedclasses.udt.records; + +/** + * This class is generated by jOOQ. + */ +public class U_BOOK_ARRAY extends org.jooq.impl.ArrayRecordImpl implements java.lang.Cloneable { + + private static final long serialVersionUID = -449135178; + + public U_BOOK_ARRAY(org.jooq.Configuration configuration) { + super(org.jooq.test.oracle3.generatedclasses.TEST.TEST, "U_BOOK_ARRAY", org.jooq.test.oracle3.generatedclasses.udt.U_BOOK_TYPE.U_BOOK_TYPE.getDataType(), configuration); + } + + public U_BOOK_ARRAY(org.jooq.Configuration configuration, org.jooq.test.oracle3.generatedclasses.udt.records.U_BOOK_TYPE... array) { + this(configuration); + set(array); + } + + public U_BOOK_ARRAY(org.jooq.Configuration configuration, java.util.List list) { + this(configuration); + setList(list); + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/udt/records/U_BOOK_TABLE.java b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/udt/records/U_BOOK_TABLE.java new file mode 100644 index 00000000000..b96d6d5058f --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/udt/records/U_BOOK_TABLE.java @@ -0,0 +1,26 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle3.generatedclasses.udt.records; + +/** + * This class is generated by jOOQ. + */ +public class U_BOOK_TABLE extends org.jooq.impl.ArrayRecordImpl implements java.lang.Cloneable { + + private static final long serialVersionUID = 322181911; + + public U_BOOK_TABLE(org.jooq.Configuration configuration) { + super(org.jooq.test.oracle3.generatedclasses.TEST.TEST, "U_BOOK_TABLE", org.jooq.test.oracle3.generatedclasses.udt.U_BOOK_TYPE.U_BOOK_TYPE.getDataType(), configuration); + } + + public U_BOOK_TABLE(org.jooq.Configuration configuration, org.jooq.test.oracle3.generatedclasses.udt.records.U_BOOK_TYPE... array) { + this(configuration); + set(array); + } + + public U_BOOK_TABLE(org.jooq.Configuration configuration, java.util.List list) { + this(configuration); + setList(list); + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/udt/records/U_BOOK_TYPE.java b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/udt/records/U_BOOK_TYPE.java new file mode 100644 index 00000000000..c0eceb459ed --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/udt/records/U_BOOK_TYPE.java @@ -0,0 +1,45 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle3.generatedclasses.udt.records; + +/** + * This class is generated by jOOQ. + */ +public class U_BOOK_TYPE extends org.jooq.impl.UDTRecordImpl implements java.lang.Cloneable { + + private static final long serialVersionUID = 151145208; + + + /** + * An uncommented item + */ + public void setID(java.lang.Integer value) { + setValue(org.jooq.test.oracle3.generatedclasses.udt.U_BOOK_TYPE.ID, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getID() { + return getValue(org.jooq.test.oracle3.generatedclasses.udt.U_BOOK_TYPE.ID); + } + + /** + * An uncommented item + */ + public void setTITLE(java.lang.String value) { + setValue(org.jooq.test.oracle3.generatedclasses.udt.U_BOOK_TYPE.TITLE, value); + } + + /** + * An uncommented item + */ + public java.lang.String getTITLE() { + return getValue(org.jooq.test.oracle3.generatedclasses.udt.U_BOOK_TYPE.TITLE); + } + + public U_BOOK_TYPE() { + super(org.jooq.test.oracle3.generatedclasses.udt.U_BOOK_TYPE.U_BOOK_TYPE); + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/udt/records/U_DATE_ARRAY.java b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/udt/records/U_DATE_ARRAY.java new file mode 100644 index 00000000000..cfb7cb69995 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/udt/records/U_DATE_ARRAY.java @@ -0,0 +1,26 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle3.generatedclasses.udt.records; + +/** + * This class is generated by jOOQ. + */ +public class U_DATE_ARRAY extends org.jooq.impl.ArrayRecordImpl implements java.lang.Cloneable { + + private static final long serialVersionUID = -1502528883; + + public U_DATE_ARRAY(org.jooq.Configuration configuration) { + super(org.jooq.test.oracle3.generatedclasses.TEST.TEST, "U_DATE_ARRAY", org.jooq.impl.SQLDataType.DATE, configuration); + } + + public U_DATE_ARRAY(org.jooq.Configuration configuration, java.sql.Date... array) { + this(configuration); + set(array); + } + + public U_DATE_ARRAY(org.jooq.Configuration configuration, java.util.List list) { + this(configuration); + setList(list); + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/udt/records/U_DATE_TABLE.java b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/udt/records/U_DATE_TABLE.java new file mode 100644 index 00000000000..1835ce033f9 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/udt/records/U_DATE_TABLE.java @@ -0,0 +1,26 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle3.generatedclasses.udt.records; + +/** + * This class is generated by jOOQ. + */ +public class U_DATE_TABLE extends org.jooq.impl.ArrayRecordImpl implements java.lang.Cloneable { + + private static final long serialVersionUID = 222576066; + + public U_DATE_TABLE(org.jooq.Configuration configuration) { + super(org.jooq.test.oracle3.generatedclasses.TEST.TEST, "U_DATE_TABLE", org.jooq.impl.SQLDataType.DATE, configuration); + } + + public U_DATE_TABLE(org.jooq.Configuration configuration, java.sql.Date... array) { + this(configuration); + set(array); + } + + public U_DATE_TABLE(org.jooq.Configuration configuration, java.util.List list) { + this(configuration); + setList(list); + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/udt/records/U_INVALID_TABLE.java b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/udt/records/U_INVALID_TABLE.java new file mode 100644 index 00000000000..aed5585f770 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/udt/records/U_INVALID_TABLE.java @@ -0,0 +1,17 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle3.generatedclasses.udt.records; + +/** + * This class is generated by jOOQ. + */ +public class U_INVALID_TABLE extends org.jooq.impl.UDTRecordImpl implements java.lang.Cloneable { + + private static final long serialVersionUID = -635857786; + + + public U_INVALID_TABLE() { + super(org.jooq.test.oracle3.generatedclasses.udt.U_INVALID_TABLE.U_INVALID_TABLE); + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/udt/records/U_INVALID_TYPE.java b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/udt/records/U_INVALID_TYPE.java new file mode 100644 index 00000000000..27253413a17 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/udt/records/U_INVALID_TYPE.java @@ -0,0 +1,17 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle3.generatedclasses.udt.records; + +/** + * This class is generated by jOOQ. + */ +public class U_INVALID_TYPE extends org.jooq.impl.UDTRecordImpl implements java.lang.Cloneable { + + private static final long serialVersionUID = -1309357246; + + + public U_INVALID_TYPE() { + super(org.jooq.test.oracle3.generatedclasses.udt.U_INVALID_TYPE.U_INVALID_TYPE); + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/udt/records/U_NUMBER_ARRAY.java b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/udt/records/U_NUMBER_ARRAY.java new file mode 100644 index 00000000000..8c6b63f1754 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/udt/records/U_NUMBER_ARRAY.java @@ -0,0 +1,26 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle3.generatedclasses.udt.records; + +/** + * This class is generated by jOOQ. + */ +public class U_NUMBER_ARRAY extends org.jooq.impl.ArrayRecordImpl implements java.lang.Cloneable { + + private static final long serialVersionUID = -1463826286; + + public U_NUMBER_ARRAY(org.jooq.Configuration configuration) { + super(org.jooq.test.oracle3.generatedclasses.TEST.TEST, "U_NUMBER_ARRAY", org.jooq.impl.SQLDataType.INTEGER, configuration); + } + + public U_NUMBER_ARRAY(org.jooq.Configuration configuration, java.lang.Integer... array) { + this(configuration); + set(array); + } + + public U_NUMBER_ARRAY(org.jooq.Configuration configuration, java.util.List list) { + this(configuration); + setList(list); + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/udt/records/U_NUMBER_LONG_ARRAY.java b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/udt/records/U_NUMBER_LONG_ARRAY.java new file mode 100644 index 00000000000..af72ffa4b3c --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/udt/records/U_NUMBER_LONG_ARRAY.java @@ -0,0 +1,26 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle3.generatedclasses.udt.records; + +/** + * This class is generated by jOOQ. + */ +public class U_NUMBER_LONG_ARRAY extends org.jooq.impl.ArrayRecordImpl implements java.lang.Cloneable { + + private static final long serialVersionUID = -2086115510; + + public U_NUMBER_LONG_ARRAY(org.jooq.Configuration configuration) { + super(org.jooq.test.oracle3.generatedclasses.TEST.TEST, "U_NUMBER_LONG_ARRAY", org.jooq.impl.SQLDataType.BIGINT, configuration); + } + + public U_NUMBER_LONG_ARRAY(org.jooq.Configuration configuration, java.lang.Long... array) { + this(configuration); + set(array); + } + + public U_NUMBER_LONG_ARRAY(org.jooq.Configuration configuration, java.util.List list) { + this(configuration); + setList(list); + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/udt/records/U_NUMBER_LONG_TABLE.java b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/udt/records/U_NUMBER_LONG_TABLE.java new file mode 100644 index 00000000000..8164f735e03 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/udt/records/U_NUMBER_LONG_TABLE.java @@ -0,0 +1,26 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle3.generatedclasses.udt.records; + +/** + * This class is generated by jOOQ. + */ +public class U_NUMBER_LONG_TABLE extends org.jooq.impl.ArrayRecordImpl implements java.lang.Cloneable { + + private static final long serialVersionUID = 218723307; + + public U_NUMBER_LONG_TABLE(org.jooq.Configuration configuration) { + super(org.jooq.test.oracle3.generatedclasses.TEST.TEST, "U_NUMBER_LONG_TABLE", org.jooq.impl.SQLDataType.BIGINT, configuration); + } + + public U_NUMBER_LONG_TABLE(org.jooq.Configuration configuration, java.lang.Long... array) { + this(configuration); + set(array); + } + + public U_NUMBER_LONG_TABLE(org.jooq.Configuration configuration, java.util.List list) { + this(configuration); + setList(list); + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/udt/records/U_NUMBER_TABLE.java b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/udt/records/U_NUMBER_TABLE.java new file mode 100644 index 00000000000..fa9c0aab513 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/udt/records/U_NUMBER_TABLE.java @@ -0,0 +1,26 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle3.generatedclasses.udt.records; + +/** + * This class is generated by jOOQ. + */ +public class U_NUMBER_TABLE extends org.jooq.impl.ArrayRecordImpl implements java.lang.Cloneable { + + private static final long serialVersionUID = 307001169; + + public U_NUMBER_TABLE(org.jooq.Configuration configuration) { + super(org.jooq.test.oracle3.generatedclasses.TEST.TEST, "U_NUMBER_TABLE", org.jooq.impl.SQLDataType.INTEGER, configuration); + } + + public U_NUMBER_TABLE(org.jooq.Configuration configuration, java.lang.Integer... array) { + this(configuration); + set(array); + } + + public U_NUMBER_TABLE(org.jooq.Configuration configuration, java.util.List list) { + this(configuration); + setList(list); + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/udt/records/U_STREET_TYPE.java b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/udt/records/U_STREET_TYPE.java new file mode 100644 index 00000000000..e0cd142eeb1 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/udt/records/U_STREET_TYPE.java @@ -0,0 +1,59 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle3.generatedclasses.udt.records; + +/** + * This class is generated by jOOQ. + */ +public class U_STREET_TYPE extends org.jooq.impl.UDTRecordImpl implements java.lang.Cloneable { + + private static final long serialVersionUID = 718004150; + + + /** + * An uncommented item + */ + public void setSTREET(java.lang.String value) { + setValue(org.jooq.test.oracle3.generatedclasses.udt.U_STREET_TYPE.STREET, value); + } + + /** + * An uncommented item + */ + public java.lang.String getSTREET() { + return getValue(org.jooq.test.oracle3.generatedclasses.udt.U_STREET_TYPE.STREET); + } + + /** + * An uncommented item + */ + public void setNO(java.lang.String value) { + setValue(org.jooq.test.oracle3.generatedclasses.udt.U_STREET_TYPE.NO, value); + } + + /** + * An uncommented item + */ + public java.lang.String getNO() { + return getValue(org.jooq.test.oracle3.generatedclasses.udt.U_STREET_TYPE.NO); + } + + /** + * An uncommented item + */ + public void setFLOORS(org.jooq.test.oracle3.generatedclasses.udt.records.U_NUMBER_ARRAY value) { + setValue(org.jooq.test.oracle3.generatedclasses.udt.U_STREET_TYPE.FLOORS, value); + } + + /** + * An uncommented item + */ + public org.jooq.test.oracle3.generatedclasses.udt.records.U_NUMBER_ARRAY getFLOORS() { + return getValue(org.jooq.test.oracle3.generatedclasses.udt.U_STREET_TYPE.FLOORS); + } + + public U_STREET_TYPE() { + super(org.jooq.test.oracle3.generatedclasses.udt.U_STREET_TYPE.U_STREET_TYPE); + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/udt/records/U_STRING_ARRAY.java b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/udt/records/U_STRING_ARRAY.java new file mode 100644 index 00000000000..1db9adba17f --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/udt/records/U_STRING_ARRAY.java @@ -0,0 +1,26 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle3.generatedclasses.udt.records; + +/** + * This class is generated by jOOQ. + */ +public class U_STRING_ARRAY extends org.jooq.impl.ArrayRecordImpl implements java.lang.Cloneable { + + private static final long serialVersionUID = -1078175494; + + public U_STRING_ARRAY(org.jooq.Configuration configuration) { + super(org.jooq.test.oracle3.generatedclasses.TEST.TEST, "U_STRING_ARRAY", org.jooq.impl.SQLDataType.VARCHAR, configuration); + } + + public U_STRING_ARRAY(org.jooq.Configuration configuration, java.lang.String... array) { + this(configuration); + set(array); + } + + public U_STRING_ARRAY(org.jooq.Configuration configuration, java.util.List list) { + this(configuration); + setList(list); + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/udt/records/U_STRING_TABLE.java b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/udt/records/U_STRING_TABLE.java new file mode 100644 index 00000000000..b2a7db8c973 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/udt/records/U_STRING_TABLE.java @@ -0,0 +1,26 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle3.generatedclasses.udt.records; + +/** + * This class is generated by jOOQ. + */ +public class U_STRING_TABLE extends org.jooq.impl.ArrayRecordImpl implements java.lang.Cloneable { + + private static final long serialVersionUID = -256958343; + + public U_STRING_TABLE(org.jooq.Configuration configuration) { + super(org.jooq.test.oracle3.generatedclasses.TEST.TEST, "U_STRING_TABLE", org.jooq.impl.SQLDataType.VARCHAR, configuration); + } + + public U_STRING_TABLE(org.jooq.Configuration configuration, java.lang.String... array) { + this(configuration); + set(array); + } + + public U_STRING_TABLE(org.jooq.Configuration configuration, java.util.List list) { + this(configuration); + setList(list); + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/udt/u_author_type/COUNT_BOOKS.java b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/udt/u_author_type/COUNT_BOOKS.java new file mode 100644 index 00000000000..461442a782e --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/udt/u_author_type/COUNT_BOOKS.java @@ -0,0 +1,49 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle3.generatedclasses.udt.u_author_type; + +/** + * This class is generated by jOOQ. + */ +public class COUNT_BOOKS extends org.jooq.impl.AbstractRoutine implements java.lang.Cloneable { + + private static final long serialVersionUID = -629595169; + + + /** + * An uncommented item + */ + public static final org.jooq.Parameter RETURN_VALUE = createParameter("RETURN_VALUE", org.jooq.impl.SQLDataType.NUMERIC); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter SELF = createParameter("SELF", org.jooq.test.oracle3.generatedclasses.udt.U_AUTHOR_TYPE.U_AUTHOR_TYPE.getDataType()); + + /** + * Create a new routine call instance + */ + public COUNT_BOOKS() { + super("COUNT_BOOKS", org.jooq.test.oracle3.generatedclasses.TEST.TEST, org.jooq.test.oracle3.generatedclasses.udt.U_AUTHOR_TYPE.U_AUTHOR_TYPE, org.jooq.impl.SQLDataType.NUMERIC); + + setReturnParameter(RETURN_VALUE); + addInParameter(SELF); + } + + /** + * Set the SELF parameter to the routine + */ + public void setSELF(org.jooq.test.oracle3.generatedclasses.udt.records.U_AUTHOR_TYPE value) { + setValue(SELF, value); + } + + /** + * Set the SELF parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setSELF(org.jooq.Field field) { + setField(SELF, field); + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/udt/u_author_type/GET_BOOKS.java b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/udt/u_author_type/GET_BOOKS.java new file mode 100644 index 00000000000..fb50d232ae5 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/udt/u_author_type/GET_BOOKS.java @@ -0,0 +1,68 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle3.generatedclasses.udt.u_author_type; + +/** + * This class is generated by jOOQ. + */ +public class GET_BOOKS extends org.jooq.impl.AbstractRoutine implements java.lang.Cloneable { + + private static final long serialVersionUID = 251240808; + + + /** + * An uncommented item + */ + public static final org.jooq.Parameter SELF = createParameter("SELF", org.jooq.test.oracle3.generatedclasses.udt.U_AUTHOR_TYPE.U_AUTHOR_TYPE.getDataType()); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter BOOK1 = createParameter("BOOK1", org.jooq.test.oracle3.generatedclasses.udt.U_BOOK_TYPE.U_BOOK_TYPE.getDataType()); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter BOOK2 = createParameter("BOOK2", org.jooq.test.oracle3.generatedclasses.udt.U_BOOK_TYPE.U_BOOK_TYPE.getDataType()); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter BOOKS = createParameter("BOOKS", org.jooq.test.oracle3.generatedclasses.udt.U_BOOK_TYPE.U_BOOK_TYPE.getDataType().asArrayDataType(org.jooq.test.oracle3.generatedclasses.udt.records.U_BOOK_TABLE.class)); + + /** + * Create a new routine call instance + */ + public GET_BOOKS() { + super("GET_BOOKS", org.jooq.test.oracle3.generatedclasses.TEST.TEST, org.jooq.test.oracle3.generatedclasses.udt.U_AUTHOR_TYPE.U_AUTHOR_TYPE); + + addInOutParameter(SELF); + addOutParameter(BOOK1); + addOutParameter(BOOK2); + addOutParameter(BOOKS); + } + + /** + * Set the SELF parameter to the routine + */ + public void setSELF(org.jooq.test.oracle3.generatedclasses.udt.records.U_AUTHOR_TYPE value) { + setValue(SELF, value); + } + + public org.jooq.test.oracle3.generatedclasses.udt.records.U_AUTHOR_TYPE getSELF() { + return getValue(SELF); + } + + public org.jooq.test.oracle3.generatedclasses.udt.records.U_BOOK_TYPE getBOOK1() { + return getValue(BOOK1); + } + + public org.jooq.test.oracle3.generatedclasses.udt.records.U_BOOK_TYPE getBOOK2() { + return getValue(BOOK2); + } + + public org.jooq.test.oracle3.generatedclasses.udt.records.U_BOOK_TABLE getBOOKS() { + return getValue(BOOKS); + } +} diff --git a/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/udt/u_author_type/LOAD.java b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/udt/u_author_type/LOAD.java new file mode 100644 index 00000000000..0f6a9c4c3df --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/oracle3/generatedclasses/udt/u_author_type/LOAD.java @@ -0,0 +1,38 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.oracle3.generatedclasses.udt.u_author_type; + +/** + * This class is generated by jOOQ. + */ +public class LOAD extends org.jooq.impl.AbstractRoutine implements java.lang.Cloneable { + + private static final long serialVersionUID = -793108144; + + + /** + * An uncommented item + */ + public static final org.jooq.Parameter SELF = createParameter("SELF", org.jooq.test.oracle3.generatedclasses.udt.U_AUTHOR_TYPE.U_AUTHOR_TYPE.getDataType()); + + /** + * Create a new routine call instance + */ + public LOAD() { + super("LOAD", org.jooq.test.oracle3.generatedclasses.TEST.TEST, org.jooq.test.oracle3.generatedclasses.udt.U_AUTHOR_TYPE.U_AUTHOR_TYPE); + + addInOutParameter(SELF); + } + + /** + * Set the SELF parameter to the routine + */ + public void setSELF(org.jooq.test.oracle3.generatedclasses.udt.records.U_AUTHOR_TYPE value) { + setValue(SELF, value); + } + + public org.jooq.test.oracle3.generatedclasses.udt.records.U_AUTHOR_TYPE getSELF() { + return getValue(SELF); + } +} diff --git a/jOOQ-test/src/org/jooq/test/postgres/create.sql b/jOOQ-test/src/org/jooq/test/postgres/create.sql new file mode 100644 index 00000000000..744838913cc --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/postgres/create.sql @@ -0,0 +1,711 @@ +DROP VIEW IF EXISTS v_library/ +DROP VIEW IF EXISTS v_author/ +DROP VIEW IF EXISTS v_book/ + +DROP FUNCTION f_arrays(in_array IN integer[])/ +DROP FUNCTION f_arrays(in_array IN bigint[])/ +DROP FUNCTION f_arrays(in_array IN text[])/ +DROP FUNCTION p_arrays(in_array IN integer[], out_array OUT integer[])/ +DROP FUNCTION p_arrays(in_array IN bigint[], out_array OUT bigint[])/ +DROP FUNCTION p_arrays(in_array IN text[], out_array OUT text[])/ +DROP FUNCTION p_enhance_address1(address IN u_address_type, no OUT VARCHAR)/ +DROP FUNCTION p_enhance_address2(address OUT u_address_type)/ +DROP FUNCTION p_enhance_address3(address IN OUT u_address_type)/ +DROP FUNCTION p_unused(in1 VARCHAR, out1 OUT INTEGER, out2 IN OUT INTEGER)/ +DROP FUNCTION p_create_author()/ +DROP FUNCTION p_create_author_by_name(first_name VARCHAR, last_name VARCHAR)/ +DROP FUNCTION p_author_exists(author_name VARCHAR, result OUT INTEGER)/ +DROP FUNCTION p391( + i1 INTEGER, io1 IN OUT INTEGER, o1 OUT INTEGER, + o2 OUT INTEGER, io2 IN OUT INTEGER, i2 INTEGER) +/ +DROP FUNCTION f_author_exists(author_name VARCHAR);/ +DROP FUNCTION f_one();/ +DROP FUNCTION f_number(n int);/ +DROP FUNCTION f317(p1 int, p2 int, p3 int, p4 int);/ +DROP FUNCTION p_get_two_cursors(books OUT refcursor, authors OUT refcursor)/ +DROP FUNCTION p_get_one_cursor(total OUT int, books OUT refcursor, book_ids in int[])/ +DROP FUNCTION f_get_one_cursor(book_ids IN int[])/ + +DROP TRIGGER IF EXISTS t_triggers_trigger ON t_triggers/ +DROP FUNCTION p_triggers()/ + +DROP TABLE IF EXISTS t_dates/ +DROP TABLE IF EXISTS t_triggers/ +DROP TABLE IF EXISTS t_arrays/ +DROP TABLE IF EXISTS t_book_to_book_store/ +DROP TABLE IF EXISTS t_book_store/ +DROP TABLE IF EXISTS t_book/ +DROP TABLE IF EXISTS t_book_details/ +DROP TABLE IF EXISTS t_author/ +DROP TABLE IF EXISTS t_language/ +DROP TABLE IF EXISTS x_test_case_71/ +DROP TABLE IF EXISTS x_test_case_64_69/ +DROP TABLE IF EXISTS x_test_case_85/ +DROP TABLE IF EXISTS t_986_1/ +DROP TABLE IF EXISTS t_986_2/ +DROP TABLE IF EXISTS x_unused/ +DROP TABLE IF EXISTS t_639_numbers_table/ +DROP TABLE IF EXISTS t_658_ref/ +DROP TABLE IF EXISTS t_658_11/ +DROP TABLE IF EXISTS t_658_21/ +DROP TABLE IF EXISTS t_658_31/ +DROP TABLE IF EXISTS t_658_12/ +DROP TABLE IF EXISTS t_658_22/ +DROP TABLE IF EXISTS t_658_32/ +DROP TABLE IF EXISTS t_725_lob_test/ +DROP TABLE IF EXISTS t_785/ +DROP TABLE IF EXISTS t_959/ +DROP TABLE IF EXISTS t_booleans/ +DROP TABLE IF EXISTS t_identity/ +DROP TABLE IF EXISTS t_identity_pk/ + +DROP TYPE IF EXISTS u_address_type/ +DROP TYPE IF EXISTS u_street_type/ +DROP TYPE IF EXISTS u_book_status/ +DROP TYPE IF EXISTS u_country/ +DROP TYPE IF EXISTS u_959/ + +CREATE TYPE u_959 AS ENUM('abstract', 'assert', 'boolean', 'break', 'byte', 'case', 'catch', + 'char', 'class', 'const', 'continue', 'default', 'double', 'do', + 'else', 'enum', 'extends', 'false', 'final', 'finally', 'float', + 'for', 'goto', 'if', 'implements', 'import', 'instanceof', + 'interface', 'int', 'long', 'native', 'new', 'package', 'private', + 'protected', 'public', 'return', 'short', 'static', 'strictfp', + 'super', 'switch', 'synchronized', 'this', 'throw', 'throws', + 'transient', 'true', 'try', 'void', 'volatile', 'while')/ +CREATE TYPE u_book_status AS ENUM ('SOLD OUT', 'ON STOCK', 'ORDERED')/ +CREATE TYPE u_country AS ENUM ('Brazil', 'England', 'Germany')/ + +CREATE TYPE u_street_type AS ( + street VARCHAR(100), + no VARCHAR(30), + floors integer[] +) +/ + +CREATE TYPE u_address_type AS ( + street u_street_type, + zip VARCHAR(50), + city VARCHAR(50), + country u_country, + since DATE, + code INTEGER +) +/ + +CREATE TABLE t_identity_pk ( + id serial not null, + val int, + + CONSTRAINT pk_t_identity_pk PRIMARY KEY (id) +) +/ + +CREATE TABLE t_identity ( + id serial not null, + val int +) +/ + +CREATE TABLE t_dates ( + id int, + d date, + t time, + ts timestamp, + d_int int, + ts_bigint bigint, + + CONSTRAINT pk_t_dates PRIMARY KEY (id) +) +/ + +CREATE TABLE t_booleans ( + id int, + one_zero int, + true_false_lc varchar(5), + true_false_uc varchar(5), + yes_no_lc varchar(3), + yes_no_uc varchar(3), + y_n_lc char(1), + y_n_uc char(1), + vc_boolean varchar(1), + c_boolean char(1), + n_boolean int, + + CONSTRAINT pk_t_booleans PRIMARY KEY (id) +) +/ + +CREATE TABLE t_959 ( + java_keywords u_959 +) +/ + +CREATE TABLE t_triggers ( + id_generated serial4 not null, + id int, + counter int, + + CONSTRAINT pk_t_triggers PRIMARY KEY (id_generated) +) +/ + +CREATE FUNCTION p_triggers () +RETURNS trigger +AS $$ +BEGIN + new.id = new.id_generated; + new.counter = new.id_generated * 2; + + return new; +END +$$ LANGUAGE plpgsql; +/ + +CREATE TRIGGER t_triggers_trigger +BEFORE INSERT +ON t_triggers +FOR EACH ROW +EXECUTE PROCEDURE p_triggers() +/ + +CREATE TABLE t_language ( + cd CHAR(2) NOT NULL, + description VARCHAR(50), + description_english VARCHAR(50), + id INTEGER NOT NULL, + + CONSTRAINT pk_t_language PRIMARY KEY (ID) +) +/ +COMMENT ON TABLE t_language IS 'An entity holding language master data' +/ +COMMENT ON COLUMN t_language.id IS 'The language ID' +/ +COMMENT ON COLUMN t_language.cd IS 'The language ISO code' +/ +COMMENT ON COLUMN t_language.description IS 'The language description' +/ + +CREATE TABLE t_658_11 ( + id CHAR(3) NOT NULL, + + CONSTRAINT pk_t_658_11 PRIMARY KEY (id) +) +/ + +CREATE TABLE t_658_21 ( + id INT NOT NULL, + + CONSTRAINT pk_t_658_21 PRIMARY KEY (id) +) +/ + +CREATE TABLE t_658_31 ( + id BIGINT NOT NULL, + + CONSTRAINT pk_t_658_31 PRIMARY KEY (id) +) +/ + +CREATE TABLE t_658_12 ( + id CHAR(3) NOT NULL, + cd CHAR(3) NOT NULL, + + CONSTRAINT pk_t_658_12 PRIMARY KEY (id) +) +/ + +CREATE TABLE t_658_22 ( + id INT NOT NULL, + cd INT NOT NULL, + + CONSTRAINT pk_t_658_22 PRIMARY KEY (id) +) +/ + +CREATE TABLE t_658_32 ( + id BIGINT NOT NULL, + cd BIGINT NOT NULL, + + CONSTRAINT pk_t_658_32 PRIMARY KEY (id) +) +/ + +CREATE TABLE t_658_ref ( + ref_11 char(3), + ref_21 int, + ref_31 bigint, + ref_12 char(3), + ref_22 int, + ref_32 bigint, + + CONSTRAINT fk_t_658_11 FOREIGN KEY (ref_11) REFERENCES t_658_11(id), + CONSTRAINT fk_t_658_21 FOREIGN KEY (ref_21) REFERENCES t_658_21(id), + CONSTRAINT fk_t_658_31 FOREIGN KEY (ref_31) REFERENCES t_658_31(id), + CONSTRAINT fk_t_658_12 FOREIGN KEY (ref_12) REFERENCES t_658_12(id), + CONSTRAINT fk_t_658_22 FOREIGN KEY (ref_22) REFERENCES t_658_22(id), + CONSTRAINT fk_t_658_32 FOREIGN KEY (ref_32) REFERENCES t_658_32(id) +) +/ + +CREATE TABLE t_725_lob_test ( + ID int NOT NULL, + LOB BYTEA NULL, + + CONSTRAINT pk_t_725_lob_test PRIMARY KEY (id) +) +/ + +CREATE TABLE t_785 ( + ID int, + NAME varchar(50), + VALUE varchar(50) +) +/ + +CREATE TABLE t_author ( + id INTEGER NOT NULL, + first_name VARCHAR(50), + last_name VARCHAR(50) NOT NULL, + date_of_birth DATE, + year_of_birth INTEGER, + address u_address_type, + + CONSTRAINT pk_t_author PRIMARY KEY (ID) +) +/ +COMMENT ON TABLE t_author IS 'An entity holding authors of books' +/ +COMMENT ON COLUMN t_author.id IS 'The author ID' +/ +COMMENT ON COLUMN t_author.first_name IS 'The author''s first name' +/ +COMMENT ON COLUMN t_author.last_name IS 'The author''s last name' +/ +COMMENT ON COLUMN t_author.date_of_birth IS 'The author''s date of birth' +/ +COMMENT ON COLUMN t_author.year_of_birth IS 'The author''s year of birth' +/ +COMMENT ON COLUMN t_author.address IS 'The author''s address' +/ + +CREATE TABLE t_book_details ( + ID INT, + + CONSTRAINT pk_t_book_details PRIMARY KEY (ID) +) +/ +COMMENT ON TABLE t_book_details IS 'An unused details table' +/ + +CREATE TABLE t_book ( + id INTEGER NOT NULL, + author_id INTEGER NOT NULL, + co_author_id INTEGER, + details_id INT, + title VARCHAR(400) NOT NULL, + published_in INTEGER NOT NULL, + language_id INTEGER NOT NULL, + content_text TEXT, + content_pdf BYTEA, + status u_book_status, + + CONSTRAINT pk_t_book PRIMARY KEY (ID), + CONSTRAINT fk_t_book_author_id FOREIGN KEY (AUTHOR_ID) REFERENCES T_AUTHOR(ID), + CONSTRAINT fk_t_book_co_author_id FOREIGN KEY (CO_AUTHOR_ID) REFERENCES T_AUTHOR(ID), + CONSTRAINT fk_t_book_details_id FOREIGN KEY (DETAILS_ID) REFERENCES T_BOOK_DETAILS(ID), + CONSTRAINT fk_t_book_language_id FOREIGN KEY (LANGUAGE_ID) REFERENCES T_LANGUAGE(ID) +) +/ +COMMENT ON TABLE t_book IS 'An entity holding books' +/ +COMMENT ON COLUMN t_book.id IS 'The book ID' +/ +COMMENT ON COLUMN t_book.author_id IS 'The author ID in entity ''author''' +/ +COMMENT ON COLUMN t_book.title IS 'The book''s title' +/ +COMMENT ON COLUMN t_book.published_in IS 'The year the book was published in' +/ +COMMENT ON COLUMN t_book.language_id IS 'The language of the book' +/ +COMMENT ON COLUMN t_book.content_text IS 'Some textual content of the book' +/ +COMMENT ON COLUMN t_book.content_pdf IS 'Some binary content of the book' +/ +COMMENT ON COLUMN t_book.status IS 'The book''s stock status' +/ + + +CREATE TABLE t_book_store ( + name VARCHAR(400) NOT NULL, + + CONSTRAINT uk_t_book_store_name UNIQUE(name) +) +/ +COMMENT ON TABLE t_book_store IS 'A book store' +/ +COMMENT ON COLUMN t_book_store.name IS 'The books store name' +/ + + +CREATE TABLE t_book_to_book_store ( + book_store_name VARCHAR(400) NOT NULL, + book_id INTEGER NOT NULL, + stock INTEGER, + + CONSTRAINT pk_b2bs PRIMARY KEY(book_store_name, book_id), + CONSTRAINT fk_b2bs_bs_name FOREIGN KEY (book_store_name) + REFERENCES t_book_store (name) + ON DELETE CASCADE, + CONSTRAINT fk_b2bs_b_id FOREIGN KEY (book_id) + REFERENCES t_book (id) + ON DELETE CASCADE +) +/ +COMMENT ON TABLE t_book_to_book_store IS 'An m:n relation between books and book stores' +/ +COMMENT ON COLUMN t_book_to_book_store.book_store_name IS 'The book store name' +/ +COMMENT ON COLUMN t_book_to_book_store.book_id IS 'The book ID' +/ +COMMENT ON COLUMN t_book_to_book_store.stock IS 'The number of books on stock' +/ + + +CREATE TABLE t_arrays ( + id integer not null, + string_array VARCHAR(20)[], + number_array INTEGER[], + date_array DATE[], + udt_array u_street_type[], + enum_array u_country[], + array_array INTEGER[][], + + CONSTRAINT pk_t_arrays PRIMARY KEY (ID) +) +/ + +CREATE TABLE x_unused ( + id INTEGER NOT NULL, + name VARCHAR(10) NOT NULL, + BIG_INTEGER DECIMAL(25), + id_ref INTEGER, + CLASS INT, + FIELDS INT, + CONFIGURATION INT, + U_D_T INT, + META_DATA INT, + VALUES INT, + TYPE0 INT, + PRIMARY_KEY INT, + PRIMARYKEY INT, + name_ref VARCHAR(10), + "FIELD 737" DECIMAL(25, 2), + + CONSTRAINT pk_x_unused PRIMARY KEY(ID, NAME), + CONSTRAINT uk_x_unused_id UNIQUE(ID), + CONSTRAINT fk_x_unused_self FOREIGN KEY(ID_REF, NAME_REF) REFERENCES X_UNUSED(ID, NAME) +) +/ +COMMENT ON TABLE x_unused IS 'An unused table in the same schema.' +/ + +CREATE TABLE t_986_1 ( + REF INT, + + CONSTRAINT fk_986 FOREIGN KEY(REF) REFERENCES X_UNUSED(ID) +) +/ + +CREATE TABLE t_986_2 ( + REF INT, + + CONSTRAINT fk_986 FOREIGN KEY(REF) REFERENCES X_UNUSED(ID) +) +/ + +CREATE TABLE t_639_numbers_table ( + ID INT NOT NULL, + SHORT SMALLINT, + INTEGER INT, + LONG BIGINT, + BYTE_DECIMAL DECIMAL(2, 0), + SHORT_DECIMAL DECIMAL(4, 0), + INTEGER_DECIMAL DECIMAL(9, 0), + LONG_DECIMAL DECIMAL(18, 0), + BIG_INTEGER DECIMAL(22, 0), + BIG_DECIMAL DECIMAL(22, 5), + FLOAT REAL, + DOUBLE DOUBLE PRECISION, + + CONSTRAINT pk_t_639_numbers_table PRIMARY KEY(ID) +); +/ + + +CREATE TABLE x_test_case_64_69 ( + id INTEGER NOT NULL, + unused_id INTEGER, + + CONSTRAINT pk_x_test_case_64_69 PRIMARY KEY(ID), + CONSTRAINT fk_x_test_case_64_69a FOREIGN KEY(UNUSED_ID) REFERENCES X_UNUSED(ID), + CONSTRAINT fk_x_test_case_64_69b FOREIGN KEY(UNUSED_ID) REFERENCES X_UNUSED(ID) +) +/ + +CREATE TABLE x_test_case_71 ( + id INTEGER NOT NULL, + test_case_64_69_id SMALLINT, + + CONSTRAINT pk_x_test_case_71 PRIMARY KEY(ID), + CONSTRAINT fk_x_test_case_71 FOREIGN KEY(TEST_CASE_64_69_ID) REFERENCES X_TEST_CASE_64_69(ID) +) +/ + +CREATE TABLE x_test_case_85 ( + id INTEGER NOT NULL, + x_unused_id INTEGER, + x_unused_name VARCHAR(10), + + CONSTRAINT pk_x_test_case_85 PRIMARY KEY(ID), + CONSTRAINT fk_x_test_case_85 FOREIGN KEY(x_unused_id, x_unused_name) REFERENCES X_UNUSED(id, name) +) +/ + + +CREATE OR REPLACE VIEW v_library (author, title) AS +SELECT a.first_name || ' ' || a.last_name, b.title +FROM t_author a JOIN t_book b ON b.author_id = a.id +/ + +CREATE VIEW v_author AS +SELECT * FROM t_author +/ + +CREATE VIEW v_book AS +SELECT * FROM t_book +/ + + +CREATE FUNCTION p_unused (in1 VARCHAR, out1 OUT INT, out2 IN OUT INT) +AS $$ +BEGIN + NULL; +END; +$$ LANGUAGE plpgsql; +/ + +CREATE FUNCTION p_enhance_address1 (address IN u_address_type, no OUT VARCHAR) +AS $$ +BEGIN + no := $1.street.no; +END; +$$ LANGUAGE plpgsql; +/ + +CREATE FUNCTION p_enhance_address2 (address OUT u_address_type) +AS $$ +BEGIN + address := ( + SELECT t_author.address + FROM t_author + WHERE first_name = 'George' + ); +END; +$$ LANGUAGE plpgsql; +/ + +CREATE FUNCTION p_enhance_address3 (address IN OUT u_address_type) +AS $$ +BEGIN + address.street := row('Zwinglistrasse', '17'); +END; +$$ LANGUAGE plpgsql; +/ + +CREATE FUNCTION p_create_author_by_name (first_name VARCHAR, last_name VARCHAR) +RETURNS VOID +AS $$ +BEGIN + INSERT INTO T_AUTHOR (ID, FIRST_NAME, LAST_NAME) + VALUES ((SELECT MAX(ID)+1 FROM T_AUTHOR), first_name, last_name); +END; +$$ LANGUAGE plpgsql; +/ + +CREATE FUNCTION p_create_author() +RETURNS VOID +AS $$ +BEGIN + PERFORM {jdbc.Schema}.p_create_author_by_name('William', 'Shakespeare'); +END; +$$ LANGUAGE plpgsql; +/ + +CREATE FUNCTION p_author_exists (author_name VARCHAR, result OUT INTEGER) +AS $$ +DECLARE + v_result INT; +BEGIN + SELECT CASE WHEN COUNT(*) > 0 THEN 1 ELSE 0 END + INTO v_result + FROM t_author + WHERE first_name LIKE author_name + OR last_name LIKE author_name; + + result := v_result; +END; +$$ LANGUAGE plpgsql; +/ + +CREATE FUNCTION p_arrays(in_array IN integer[], out_array OUT integer[]) +AS $$ +BEGIN + out_array := in_array; +END; +$$ LANGUAGE plpgsql; +/ + +CREATE FUNCTION p_arrays(in_array IN bigint[], out_array OUT bigint[]) +AS $$ +BEGIN + out_array := in_array; +END; +$$ LANGUAGE plpgsql; +/ + +CREATE FUNCTION p_arrays(in_array IN text[], out_array OUT text[]) +AS $$ +BEGIN + out_array := in_array; +END; +$$ LANGUAGE plpgsql; +/ + +CREATE FUNCTION p391 ( + i1 INTEGER, io1 IN OUT INTEGER, o1 OUT INTEGER, + o2 OUT INTEGER, io2 IN OUT INTEGER, i2 INTEGER) +AS $$ +BEGIN + o1 := io1; + io1 := i1; + + o2 := io2; + io2 := i2; +END; +$$ LANGUAGE plpgsql; +/ + +CREATE FUNCTION f_arrays(in_array IN integer[]) +RETURNS integer[] +AS $$ +BEGIN + return in_array; +END; +$$ LANGUAGE plpgsql; +/ + +CREATE FUNCTION f_arrays(in_array IN bigint[]) +RETURNS bigint[] +AS $$ +BEGIN + return in_array; +END; +$$ LANGUAGE plpgsql; +/ + +CREATE FUNCTION f_arrays(in_array IN text[]) +RETURNS text[] +AS $$ +BEGIN + return in_array; +END; +$$ LANGUAGE plpgsql; +/ + +CREATE FUNCTION f_author_exists (author_name VARCHAR) +RETURNS INT +AS $$ +DECLARE + v_result INT; +BEGIN + SELECT CASE WHEN COUNT(*) > 0 THEN 1 ELSE 0 END + INTO v_result + FROM t_author + WHERE first_name LIKE author_name + OR last_name LIKE author_name; + + return v_result; +END; +$$ LANGUAGE plpgsql; +/ + +CREATE FUNCTION f_one () +RETURNS INT +AS $$ +BEGIN + RETURN 1; +END; +$$ LANGUAGE plpgsql; +/ + +CREATE FUNCTION f_number (n int) +RETURNS INT +AS $$ +BEGIN + RETURN n; +END; +$$ LANGUAGE plpgsql; +/ + +CREATE FUNCTION f317 (p1 int, p2 int, p3 int, p4 int) +RETURNS INT +AS $$ +BEGIN + RETURN 1000 * p1 + 100 * p2 + p4; +END; +$$ LANGUAGE plpgsql; +/ + +CREATE FUNCTION p_get_two_cursors ( + books OUT refcursor, + authors OUT refcursor) +AS $$ +BEGIN + OPEN books FOR SELECT * FROM t_book ORDER BY id ASC; + OPEN authors FOR SELECT * FROM t_author ORDER BY id ASC; +END; +$$ LANGUAGE plpgsql; +/ + +CREATE FUNCTION p_get_one_cursor ( + total OUT int, + books OUT refcursor, + book_ids IN int[]) +AS $$ +BEGIN + OPEN books FOR SELECT * FROM t_book WHERE id IN (SELECT * FROM UNNEST(book_ids)) ORDER BY id ASC; + SELECT count(*) INTO total FROM t_book WHERE id IN (SELECT * FROM UNNEST(book_ids)); +END; +$$ LANGUAGE plpgsql; +/ + +CREATE FUNCTION f_get_one_cursor (book_ids int[]) +RETURNS refcursor +AS $$ +DECLARE + ref refcursor; +BEGIN + IF (book_ids IS NULL) THEN + OPEN ref FOR SELECT * FROM t_book WHERE 1 = 0; + ELSE + OPEN ref FOR SELECT * FROM t_book WHERE id IN (SELECT * FROM UNNEST(book_ids)) ORDER BY id ASC; + END IF; + + RETURN ref; +END; +$$ LANGUAGE plpgsql; +/ diff --git a/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/Keys.java b/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/Keys.java new file mode 100644 index 00000000000..6da285dbb9f --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/Keys.java @@ -0,0 +1,53 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.postgres.generatedclasses; + +/** + * This class is generated by jOOQ. + * + * A class modelling foreign key relationships between tables of the public schema + */ +@SuppressWarnings({"unchecked"}) +public class Keys extends org.jooq.impl.AbstractKeys { + + // IDENTITY definitions + public static final org.jooq.Identity IDENTITY_T_IDENTITY = createIdentity(org.jooq.test.postgres.generatedclasses.tables.TIdentity.T_IDENTITY, org.jooq.test.postgres.generatedclasses.tables.TIdentity.T_IDENTITY.ID); + public static final org.jooq.Identity IDENTITY_T_IDENTITY_PK = createIdentity(org.jooq.test.postgres.generatedclasses.tables.TIdentityPk.T_IDENTITY_PK, org.jooq.test.postgres.generatedclasses.tables.TIdentityPk.T_IDENTITY_PK.ID); + public static final org.jooq.Identity IDENTITY_T_TRIGGERS = createIdentity(org.jooq.test.postgres.generatedclasses.tables.TTriggers.T_TRIGGERS, org.jooq.test.postgres.generatedclasses.tables.TTriggers.T_TRIGGERS.ID_GENERATED); + + // UNIQUE and PRIMARY KEY definitions + public static final org.jooq.UniqueKey PK_T_639_NUMBERS_TABLE = createUniqueKey(org.jooq.test.postgres.generatedclasses.tables.T_639NumbersTable.T_639_NUMBERS_TABLE, org.jooq.test.postgres.generatedclasses.tables.T_639NumbersTable.T_639_NUMBERS_TABLE.ID); + public static final org.jooq.UniqueKey PK_T_725_LOB_TEST = createUniqueKey(org.jooq.test.postgres.generatedclasses.tables.T_725LobTest.T_725_LOB_TEST, org.jooq.test.postgres.generatedclasses.tables.T_725LobTest.T_725_LOB_TEST.ID); + public static final org.jooq.UniqueKey PK_T_ARRAYS = createUniqueKey(org.jooq.test.postgres.generatedclasses.tables.TArrays.T_ARRAYS, org.jooq.test.postgres.generatedclasses.tables.TArrays.T_ARRAYS.ID); + public static final org.jooq.UniqueKey PK_T_AUTHOR = createUniqueKey(org.jooq.test.postgres.generatedclasses.tables.TAuthor.T_AUTHOR, org.jooq.test.postgres.generatedclasses.tables.TAuthor.T_AUTHOR.ID); + public static final org.jooq.UniqueKey PK_T_BOOK = createUniqueKey(org.jooq.test.postgres.generatedclasses.tables.TBook.T_BOOK, org.jooq.test.postgres.generatedclasses.tables.TBook.T_BOOK.ID); + public static final org.jooq.UniqueKey UK_T_BOOK_STORE_NAME = createUniqueKey(org.jooq.test.postgres.generatedclasses.tables.TBookStore.T_BOOK_STORE, org.jooq.test.postgres.generatedclasses.tables.TBookStore.T_BOOK_STORE.NAME); + public static final org.jooq.UniqueKey PK_B2BS = createUniqueKey(org.jooq.test.postgres.generatedclasses.tables.TBookToBookStore.T_BOOK_TO_BOOK_STORE, org.jooq.test.postgres.generatedclasses.tables.TBookToBookStore.T_BOOK_TO_BOOK_STORE.BOOK_STORE_NAME, org.jooq.test.postgres.generatedclasses.tables.TBookToBookStore.T_BOOK_TO_BOOK_STORE.BOOK_ID); + public static final org.jooq.UniqueKey PK_T_BOOLEANS = createUniqueKey(org.jooq.test.postgres.generatedclasses.tables.TBooleans.T_BOOLEANS, org.jooq.test.postgres.generatedclasses.tables.TBooleans.T_BOOLEANS.ID); + public static final org.jooq.UniqueKey PK_T_DATES = createUniqueKey(org.jooq.test.postgres.generatedclasses.tables.TDates.T_DATES, org.jooq.test.postgres.generatedclasses.tables.TDates.T_DATES.ID); + public static final org.jooq.UniqueKey PK_T_IDENTITY_PK = createUniqueKey(org.jooq.test.postgres.generatedclasses.tables.TIdentityPk.T_IDENTITY_PK, org.jooq.test.postgres.generatedclasses.tables.TIdentityPk.T_IDENTITY_PK.ID); + public static final org.jooq.UniqueKey PK_T_TRIGGERS = createUniqueKey(org.jooq.test.postgres.generatedclasses.tables.TTriggers.T_TRIGGERS, org.jooq.test.postgres.generatedclasses.tables.TTriggers.T_TRIGGERS.ID_GENERATED); + public static final org.jooq.UniqueKey PK_X_TEST_CASE_64_69 = createUniqueKey(org.jooq.test.postgres.generatedclasses.tables.XTestCase_64_69.X_TEST_CASE_64_69, org.jooq.test.postgres.generatedclasses.tables.XTestCase_64_69.X_TEST_CASE_64_69.ID); + public static final org.jooq.UniqueKey PK_X_TEST_CASE_71 = createUniqueKey(org.jooq.test.postgres.generatedclasses.tables.XTestCase_71.X_TEST_CASE_71, org.jooq.test.postgres.generatedclasses.tables.XTestCase_71.X_TEST_CASE_71.ID); + public static final org.jooq.UniqueKey PK_X_TEST_CASE_85 = createUniqueKey(org.jooq.test.postgres.generatedclasses.tables.XTestCase_85.X_TEST_CASE_85, org.jooq.test.postgres.generatedclasses.tables.XTestCase_85.X_TEST_CASE_85.ID); + public static final org.jooq.UniqueKey PK_X_UNUSED = createUniqueKey(org.jooq.test.postgres.generatedclasses.tables.XUnused.X_UNUSED, org.jooq.test.postgres.generatedclasses.tables.XUnused.X_UNUSED.ID, org.jooq.test.postgres.generatedclasses.tables.XUnused.X_UNUSED.NAME); + public static final org.jooq.UniqueKey UK_X_UNUSED_ID = createUniqueKey(org.jooq.test.postgres.generatedclasses.tables.XUnused.X_UNUSED, org.jooq.test.postgres.generatedclasses.tables.XUnused.X_UNUSED.ID); + + // FOREIGN KEY definitions + public static final org.jooq.ForeignKey T_986_1__FK_986 = createForeignKey(UK_X_UNUSED_ID, org.jooq.test.postgres.generatedclasses.tables.T_986_1.T_986_1, org.jooq.test.postgres.generatedclasses.tables.T_986_1.T_986_1.REF, org.jooq.test.postgres.generatedclasses.tables.T_986_1.T_986_1.REF); + public static final org.jooq.ForeignKey T_986_2__FK_986 = createForeignKey(UK_X_UNUSED_ID, org.jooq.test.postgres.generatedclasses.tables.T_986_2.T_986_2, org.jooq.test.postgres.generatedclasses.tables.T_986_2.T_986_2.REF, org.jooq.test.postgres.generatedclasses.tables.T_986_2.T_986_2.REF); + public static final org.jooq.ForeignKey T_BOOK__FK_T_BOOK_AUTHOR_ID = createForeignKey(PK_T_AUTHOR, org.jooq.test.postgres.generatedclasses.tables.TBook.T_BOOK, org.jooq.test.postgres.generatedclasses.tables.TBook.T_BOOK.AUTHOR_ID); + public static final org.jooq.ForeignKey T_BOOK__FK_T_BOOK_CO_AUTHOR_ID = createForeignKey(PK_T_AUTHOR, org.jooq.test.postgres.generatedclasses.tables.TBook.T_BOOK, org.jooq.test.postgres.generatedclasses.tables.TBook.T_BOOK.CO_AUTHOR_ID); + public static final org.jooq.ForeignKey T_BOOK_TO_BOOK_STORE__FK_B2BS_BS_NAME = createForeignKey(UK_T_BOOK_STORE_NAME, org.jooq.test.postgres.generatedclasses.tables.TBookToBookStore.T_BOOK_TO_BOOK_STORE, org.jooq.test.postgres.generatedclasses.tables.TBookToBookStore.T_BOOK_TO_BOOK_STORE.BOOK_STORE_NAME); + public static final org.jooq.ForeignKey T_BOOK_TO_BOOK_STORE__FK_B2BS_B_ID = createForeignKey(PK_T_BOOK, org.jooq.test.postgres.generatedclasses.tables.TBookToBookStore.T_BOOK_TO_BOOK_STORE, org.jooq.test.postgres.generatedclasses.tables.TBookToBookStore.T_BOOK_TO_BOOK_STORE.BOOK_ID); + public static final org.jooq.ForeignKey X_TEST_CASE_64_69__FK_X_TEST_CASE_64_69A = createForeignKey(UK_X_UNUSED_ID, org.jooq.test.postgres.generatedclasses.tables.XTestCase_64_69.X_TEST_CASE_64_69, org.jooq.test.postgres.generatedclasses.tables.XTestCase_64_69.X_TEST_CASE_64_69.UNUSED_ID); + public static final org.jooq.ForeignKey X_TEST_CASE_71__FK_X_TEST_CASE_71 = createForeignKey(PK_X_TEST_CASE_64_69, org.jooq.test.postgres.generatedclasses.tables.XTestCase_71.X_TEST_CASE_71, org.jooq.test.postgres.generatedclasses.tables.XTestCase_71.X_TEST_CASE_71.TEST_CASE_64_69_ID); + public static final org.jooq.ForeignKey X_TEST_CASE_85__FK_X_TEST_CASE_85 = createForeignKey(PK_X_UNUSED, org.jooq.test.postgres.generatedclasses.tables.XTestCase_85.X_TEST_CASE_85, org.jooq.test.postgres.generatedclasses.tables.XTestCase_85.X_TEST_CASE_85.X_UNUSED_ID, org.jooq.test.postgres.generatedclasses.tables.XTestCase_85.X_TEST_CASE_85.X_UNUSED_NAME); + public static final org.jooq.ForeignKey X_UNUSED__FK_X_UNUSED_SELF = createForeignKey(PK_X_UNUSED, org.jooq.test.postgres.generatedclasses.tables.XUnused.X_UNUSED, org.jooq.test.postgres.generatedclasses.tables.XUnused.X_UNUSED.ID_REF, org.jooq.test.postgres.generatedclasses.tables.XUnused.X_UNUSED.NAME_REF); + + /** + * No instances + */ + private Keys() {} +} diff --git a/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/Public.java b/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/Public.java new file mode 100644 index 00000000000..e179b438dfc --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/Public.java @@ -0,0 +1,73 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.postgres.generatedclasses; + +/** + * This class is generated by jOOQ. + */ +public class Public extends org.jooq.impl.SchemaImpl { + + private static final long serialVersionUID = -368897877; + + /** + * The singleton instance of public + */ + public static final Public PUBLIC = new Public(); + + /** + * No further instances allowed + */ + private Public() { + super("public"); + } + + /* + * instance initialiser + */ + { + addMapping("public.u_address_type", org.jooq.test.postgres.generatedclasses.udt.records.UAddressTypeRecord.class); + addMapping("public.u_street_type", org.jooq.test.postgres.generatedclasses.udt.records.UStreetTypeRecord.class); + } + + @Override + public final java.util.List> getSequences() { + return java.util.Arrays.>asList(org.jooq.test.postgres.generatedclasses.Sequences.S_AUTHOR_ID); + } + + @Override + public final java.util.List> getTables() { + return java.util.Arrays.>asList( + org.jooq.test.postgres.generatedclasses.tables.T_639NumbersTable.T_639_NUMBERS_TABLE, + org.jooq.test.postgres.generatedclasses.tables.T_658Ref.T_658_REF, + org.jooq.test.postgres.generatedclasses.tables.T_725LobTest.T_725_LOB_TEST, + org.jooq.test.postgres.generatedclasses.tables.T_785.T_785, + org.jooq.test.postgres.generatedclasses.tables.T_959.T_959, + org.jooq.test.postgres.generatedclasses.tables.T_986_1.T_986_1, + org.jooq.test.postgres.generatedclasses.tables.T_986_2.T_986_2, + org.jooq.test.postgres.generatedclasses.tables.TArrays.T_ARRAYS, + org.jooq.test.postgres.generatedclasses.tables.TAuthor.T_AUTHOR, + org.jooq.test.postgres.generatedclasses.tables.TBook.T_BOOK, + org.jooq.test.postgres.generatedclasses.tables.TBookStore.T_BOOK_STORE, + org.jooq.test.postgres.generatedclasses.tables.TBookToBookStore.T_BOOK_TO_BOOK_STORE, + org.jooq.test.postgres.generatedclasses.tables.TBooleans.T_BOOLEANS, + org.jooq.test.postgres.generatedclasses.tables.TDates.T_DATES, + org.jooq.test.postgres.generatedclasses.tables.TIdentity.T_IDENTITY, + org.jooq.test.postgres.generatedclasses.tables.TIdentityPk.T_IDENTITY_PK, + org.jooq.test.postgres.generatedclasses.tables.TTriggers.T_TRIGGERS, + org.jooq.test.postgres.generatedclasses.tables.VAuthor.V_AUTHOR, + org.jooq.test.postgres.generatedclasses.tables.VBook.V_BOOK, + org.jooq.test.postgres.generatedclasses.tables.VLibrary.V_LIBRARY, + org.jooq.test.postgres.generatedclasses.tables.XTestCase_64_69.X_TEST_CASE_64_69, + org.jooq.test.postgres.generatedclasses.tables.XTestCase_71.X_TEST_CASE_71, + org.jooq.test.postgres.generatedclasses.tables.XTestCase_85.X_TEST_CASE_85, + org.jooq.test.postgres.generatedclasses.tables.XUnused.X_UNUSED); + } + + @Override + public final java.util.List> getUDTs() { + return java.util.Arrays.>asList( + org.jooq.test.postgres.generatedclasses.udt.UAddressType.U_ADDRESS_TYPE, + org.jooq.test.postgres.generatedclasses.udt.UStreetType.U_STREET_TYPE); + } +} diff --git a/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/PublicFactory.java b/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/PublicFactory.java new file mode 100644 index 00000000000..f5a9bac6aab --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/PublicFactory.java @@ -0,0 +1,31 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.postgres.generatedclasses; + +/** + * This class is generated by jOOQ. + */ +public class PublicFactory extends org.jooq.util.postgres.PostgresFactory { + + private static final long serialVersionUID = -341766701; + + /** + * Create a factory with a connection + * + * @param connection The connection to use with objects created from this factory + */ + public PublicFactory(java.sql.Connection connection) { + super(connection); + } + + /** + * Create a factory with a connection and some settings + * + * @param connection The connection to use with objects created from this factory + * @param settings The settings to apply to objects created from this factory + */ + public PublicFactory(java.sql.Connection connection, org.jooq.conf.Settings settings) { + super(connection, settings); + } +} diff --git a/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/Routines.java b/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/Routines.java new file mode 100644 index 00000000000..26919491607 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/Routines.java @@ -0,0 +1,542 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.postgres.generatedclasses; + +/** + * This class is generated by jOOQ. + * + * Convenience access to all stored procedures and functions in public + */ +public final class Routines { + + /** + * Call public.f_arrays + * + * @param inArray + * @throws org.jooq.exception.DataAccessException if something went wrong executing the query + */ + public static java.lang.Integer[] fArrays1(org.jooq.Configuration configuration, java.lang.Integer[] inArray) { + org.jooq.test.postgres.generatedclasses.routines.FArrays1 f = new org.jooq.test.postgres.generatedclasses.routines.FArrays1(); + f.setInArray(inArray); + + f.execute(configuration); + return f.getReturnValue(); + } + + /** + * Get public.f_arrays as a field + * + * @param inArray + */ + public static org.jooq.Field fArrays1(java.lang.Integer[] inArray) { + org.jooq.test.postgres.generatedclasses.routines.FArrays1 f = new org.jooq.test.postgres.generatedclasses.routines.FArrays1(); + f.setInArray(inArray); + + return f.asField(); + } + + /** + * Get public.f_arrays as a field + * + * @param inArray + */ + public static org.jooq.Field fArrays1(org.jooq.Field inArray) { + org.jooq.test.postgres.generatedclasses.routines.FArrays1 f = new org.jooq.test.postgres.generatedclasses.routines.FArrays1(); + f.setInArray(inArray); + + return f.asField(); + } + + /** + * Call public.f_arrays + * + * @param inArray + * @throws org.jooq.exception.DataAccessException if something went wrong executing the query + */ + public static java.lang.Long[] fArrays2(org.jooq.Configuration configuration, java.lang.Long[] inArray) { + org.jooq.test.postgres.generatedclasses.routines.FArrays2 f = new org.jooq.test.postgres.generatedclasses.routines.FArrays2(); + f.setInArray(inArray); + + f.execute(configuration); + return f.getReturnValue(); + } + + /** + * Get public.f_arrays as a field + * + * @param inArray + */ + public static org.jooq.Field fArrays2(java.lang.Long[] inArray) { + org.jooq.test.postgres.generatedclasses.routines.FArrays2 f = new org.jooq.test.postgres.generatedclasses.routines.FArrays2(); + f.setInArray(inArray); + + return f.asField(); + } + + /** + * Get public.f_arrays as a field + * + * @param inArray + */ + public static org.jooq.Field fArrays2(org.jooq.Field inArray) { + org.jooq.test.postgres.generatedclasses.routines.FArrays2 f = new org.jooq.test.postgres.generatedclasses.routines.FArrays2(); + f.setInArray(inArray); + + return f.asField(); + } + + /** + * Call public.f_arrays + * + * @param inArray + * @throws org.jooq.exception.DataAccessException if something went wrong executing the query + */ + public static java.lang.String[] fArrays3(org.jooq.Configuration configuration, java.lang.String[] inArray) { + org.jooq.test.postgres.generatedclasses.routines.FArrays3 f = new org.jooq.test.postgres.generatedclasses.routines.FArrays3(); + f.setInArray(inArray); + + f.execute(configuration); + return f.getReturnValue(); + } + + /** + * Get public.f_arrays as a field + * + * @param inArray + */ + public static org.jooq.Field fArrays3(java.lang.String[] inArray) { + org.jooq.test.postgres.generatedclasses.routines.FArrays3 f = new org.jooq.test.postgres.generatedclasses.routines.FArrays3(); + f.setInArray(inArray); + + return f.asField(); + } + + /** + * Get public.f_arrays as a field + * + * @param inArray + */ + public static org.jooq.Field fArrays3(org.jooq.Field inArray) { + org.jooq.test.postgres.generatedclasses.routines.FArrays3 f = new org.jooq.test.postgres.generatedclasses.routines.FArrays3(); + f.setInArray(inArray); + + return f.asField(); + } + + /** + * Call public.f_author_exists + * + * @param authorName + * @throws org.jooq.exception.DataAccessException if something went wrong executing the query + */ + public static java.lang.Integer fAuthorExists(org.jooq.Configuration configuration, java.lang.String authorName) { + org.jooq.test.postgres.generatedclasses.routines.FAuthorExists f = new org.jooq.test.postgres.generatedclasses.routines.FAuthorExists(); + f.setAuthorName(authorName); + + f.execute(configuration); + return f.getReturnValue(); + } + + /** + * Get public.f_author_exists as a field + * + * @param authorName + */ + public static org.jooq.Field fAuthorExists(java.lang.String authorName) { + org.jooq.test.postgres.generatedclasses.routines.FAuthorExists f = new org.jooq.test.postgres.generatedclasses.routines.FAuthorExists(); + f.setAuthorName(authorName); + + return f.asField(); + } + + /** + * Get public.f_author_exists as a field + * + * @param authorName + */ + public static org.jooq.Field fAuthorExists(org.jooq.Field authorName) { + org.jooq.test.postgres.generatedclasses.routines.FAuthorExists f = new org.jooq.test.postgres.generatedclasses.routines.FAuthorExists(); + f.setAuthorName(authorName); + + return f.asField(); + } + + /** + * Call public.f_get_one_cursor + * + * @param bookIds + * @throws org.jooq.exception.DataAccessException if something went wrong executing the query + */ + public static org.jooq.Result fGetOneCursor(org.jooq.Configuration configuration, java.lang.Integer[] bookIds) { + org.jooq.test.postgres.generatedclasses.routines.FGetOneCursor f = new org.jooq.test.postgres.generatedclasses.routines.FGetOneCursor(); + f.setBookIds(bookIds); + + f.execute(configuration); + return f.getReturnValue(); + } + + /** + * Get public.f_get_one_cursor as a field + * + * @param bookIds + */ + public static org.jooq.Field> fGetOneCursor(java.lang.Integer[] bookIds) { + org.jooq.test.postgres.generatedclasses.routines.FGetOneCursor f = new org.jooq.test.postgres.generatedclasses.routines.FGetOneCursor(); + f.setBookIds(bookIds); + + return f.asField(); + } + + /** + * Get public.f_get_one_cursor as a field + * + * @param bookIds + */ + public static org.jooq.Field> fGetOneCursor(org.jooq.Field bookIds) { + org.jooq.test.postgres.generatedclasses.routines.FGetOneCursor f = new org.jooq.test.postgres.generatedclasses.routines.FGetOneCursor(); + f.setBookIds(bookIds); + + return f.asField(); + } + + /** + * Call public.f_number + * + * @param n + * @throws org.jooq.exception.DataAccessException if something went wrong executing the query + */ + public static java.lang.Integer fNumber(org.jooq.Configuration configuration, java.lang.Integer n) { + org.jooq.test.postgres.generatedclasses.routines.FNumber f = new org.jooq.test.postgres.generatedclasses.routines.FNumber(); + f.setN(n); + + f.execute(configuration); + return f.getReturnValue(); + } + + /** + * Get public.f_number as a field + * + * @param n + */ + public static org.jooq.Field fNumber(java.lang.Integer n) { + org.jooq.test.postgres.generatedclasses.routines.FNumber f = new org.jooq.test.postgres.generatedclasses.routines.FNumber(); + f.setN(n); + + return f.asField(); + } + + /** + * Get public.f_number as a field + * + * @param n + */ + public static org.jooq.Field fNumber(org.jooq.Field n) { + org.jooq.test.postgres.generatedclasses.routines.FNumber f = new org.jooq.test.postgres.generatedclasses.routines.FNumber(); + f.setN(n); + + return f.asField(); + } + + /** + * Call public.f_one + * + * @throws org.jooq.exception.DataAccessException if something went wrong executing the query + */ + public static java.lang.Integer fOne(org.jooq.Configuration configuration) { + org.jooq.test.postgres.generatedclasses.routines.FOne f = new org.jooq.test.postgres.generatedclasses.routines.FOne(); + + f.execute(configuration); + return f.getReturnValue(); + } + + /** + * Get public.f_one as a field + * + */ + public static org.jooq.Field fOne() { + org.jooq.test.postgres.generatedclasses.routines.FOne f = new org.jooq.test.postgres.generatedclasses.routines.FOne(); + + return f.asField(); + } + + /** + * Call public.f317 + * + * @param p1 + * @param p2 + * @param p3 + * @param p4 + * @throws org.jooq.exception.DataAccessException if something went wrong executing the query + */ + public static java.lang.Integer f317(org.jooq.Configuration configuration, java.lang.Integer p1, java.lang.Integer p2, java.lang.Integer p3, java.lang.Integer p4) { + org.jooq.test.postgres.generatedclasses.routines.F317 f = new org.jooq.test.postgres.generatedclasses.routines.F317(); + f.setP1(p1); + f.setP2(p2); + f.setP3(p3); + f.setP4(p4); + + f.execute(configuration); + return f.getReturnValue(); + } + + /** + * Get public.f317 as a field + * + * @param p1 + * @param p2 + * @param p3 + * @param p4 + */ + public static org.jooq.Field f317(java.lang.Integer p1, java.lang.Integer p2, java.lang.Integer p3, java.lang.Integer p4) { + org.jooq.test.postgres.generatedclasses.routines.F317 f = new org.jooq.test.postgres.generatedclasses.routines.F317(); + f.setP1(p1); + f.setP2(p2); + f.setP3(p3); + f.setP4(p4); + + return f.asField(); + } + + /** + * Get public.f317 as a field + * + * @param p1 + * @param p2 + * @param p3 + * @param p4 + */ + public static org.jooq.Field f317(org.jooq.Field p1, org.jooq.Field p2, org.jooq.Field p3, org.jooq.Field p4) { + org.jooq.test.postgres.generatedclasses.routines.F317 f = new org.jooq.test.postgres.generatedclasses.routines.F317(); + f.setP1(p1); + f.setP2(p2); + f.setP3(p3); + f.setP4(p4); + + return f.asField(); + } + + /** + * Call public.p_arrays + * + * @param inArray IN parameter + * @param outArray OUT parameter + * @throws org.jooq.exception.DataAccessException if something went wrong executing the query + */ + public static java.lang.Long[] pArrays2(org.jooq.Configuration configuration, java.lang.Long[] inArray) { + org.jooq.test.postgres.generatedclasses.routines.PArrays2 p = new org.jooq.test.postgres.generatedclasses.routines.PArrays2(); + p.setInArray(inArray); + + p.execute(configuration); + return p.getOutArray(); + } + + /** + * Call public.p_arrays + * + * @param inArray IN parameter + * @param outArray OUT parameter + * @throws org.jooq.exception.DataAccessException if something went wrong executing the query + */ + public static java.lang.Integer[] pArrays1(org.jooq.Configuration configuration, java.lang.Integer[] inArray) { + org.jooq.test.postgres.generatedclasses.routines.PArrays1 p = new org.jooq.test.postgres.generatedclasses.routines.PArrays1(); + p.setInArray(inArray); + + p.execute(configuration); + return p.getOutArray(); + } + + /** + * Call public.p_arrays + * + * @param inArray IN parameter + * @param outArray OUT parameter + * @throws org.jooq.exception.DataAccessException if something went wrong executing the query + */ + public static java.lang.String[] pArrays3(org.jooq.Configuration configuration, java.lang.String[] inArray) { + org.jooq.test.postgres.generatedclasses.routines.PArrays3 p = new org.jooq.test.postgres.generatedclasses.routines.PArrays3(); + p.setInArray(inArray); + + p.execute(configuration); + return p.getOutArray(); + } + + /** + * Call public.p_author_exists + * + * @param authorName IN parameter + * @param result OUT parameter + * @throws org.jooq.exception.DataAccessException if something went wrong executing the query + */ + public static java.lang.Integer pAuthorExists(org.jooq.Configuration configuration, java.lang.String authorName) { + org.jooq.test.postgres.generatedclasses.routines.PAuthorExists p = new org.jooq.test.postgres.generatedclasses.routines.PAuthorExists(); + p.setAuthorName(authorName); + + p.execute(configuration); + return p.getResult(); + } + + /** + * Call public.p_create_author + * + * @throws org.jooq.exception.DataAccessException if something went wrong executing the query + */ + public static void pCreateAuthor(org.jooq.Configuration configuration) { + org.jooq.test.postgres.generatedclasses.routines.PCreateAuthor p = new org.jooq.test.postgres.generatedclasses.routines.PCreateAuthor(); + + p.execute(configuration); + } + + /** + * Call public.p_create_author_by_name + * + * @param firstName IN parameter + * @param lastName IN parameter + * @throws org.jooq.exception.DataAccessException if something went wrong executing the query + */ + public static void pCreateAuthorByName(org.jooq.Configuration configuration, java.lang.String firstName, java.lang.String lastName) { + org.jooq.test.postgres.generatedclasses.routines.PCreateAuthorByName p = new org.jooq.test.postgres.generatedclasses.routines.PCreateAuthorByName(); + p.setFirstName(firstName); + p.setLastName(lastName); + + p.execute(configuration); + } + + /** + * Call public.p_enhance_address1 + * + * @param address IN parameter + * @param no OUT parameter + * @throws org.jooq.exception.DataAccessException if something went wrong executing the query + */ + public static java.lang.String pEnhanceAddress1(org.jooq.Configuration configuration, org.jooq.test.postgres.generatedclasses.udt.records.UAddressTypeRecord address) { + org.jooq.test.postgres.generatedclasses.routines.PEnhanceAddress1 p = new org.jooq.test.postgres.generatedclasses.routines.PEnhanceAddress1(); + p.setAddress(address); + + p.execute(configuration); + return p.getNo(); + } + + /** + * Call public.p_enhance_address2 + * + * @param address OUT parameter + * @throws org.jooq.exception.DataAccessException if something went wrong executing the query + */ + public static org.jooq.test.postgres.generatedclasses.udt.records.UAddressTypeRecord pEnhanceAddress2(org.jooq.Configuration configuration) { + org.jooq.test.postgres.generatedclasses.routines.PEnhanceAddress2 p = new org.jooq.test.postgres.generatedclasses.routines.PEnhanceAddress2(); + + p.execute(configuration); + return p.getAddress(); + } + + /** + * Call public.p_enhance_address3 + * + * @param address IN OUT parameter + * @throws org.jooq.exception.DataAccessException if something went wrong executing the query + */ + public static org.jooq.test.postgres.generatedclasses.udt.records.UAddressTypeRecord pEnhanceAddress3(org.jooq.Configuration configuration, org.jooq.test.postgres.generatedclasses.udt.records.UAddressTypeRecord address) { + org.jooq.test.postgres.generatedclasses.routines.PEnhanceAddress3 p = new org.jooq.test.postgres.generatedclasses.routines.PEnhanceAddress3(); + p.setAddress(address); + + p.execute(configuration); + return p.getAddress(); + } + + /** + * Call public.p_get_one_cursor + * + * @param total OUT parameter + * @param books OUT parameter + * @param bookIds IN parameter + * @throws org.jooq.exception.DataAccessException if something went wrong executing the query + */ + public static org.jooq.test.postgres.generatedclasses.routines.PGetOneCursor pGetOneCursor(org.jooq.Configuration configuration, java.lang.Integer[] bookIds) { + org.jooq.test.postgres.generatedclasses.routines.PGetOneCursor p = new org.jooq.test.postgres.generatedclasses.routines.PGetOneCursor(); + p.setBookIds(bookIds); + + p.execute(configuration); + return p; + } + + /** + * Call public.p_get_two_cursors + * + * @param books OUT parameter + * @param authors OUT parameter + * @throws org.jooq.exception.DataAccessException if something went wrong executing the query + */ + public static org.jooq.test.postgres.generatedclasses.routines.PGetTwoCursors pGetTwoCursors(org.jooq.Configuration configuration) { + org.jooq.test.postgres.generatedclasses.routines.PGetTwoCursors p = new org.jooq.test.postgres.generatedclasses.routines.PGetTwoCursors(); + + p.execute(configuration); + return p; + } + + /** + * Call public.p_triggers + * + * @throws org.jooq.exception.DataAccessException if something went wrong executing the query + */ + public static java.lang.Object pTriggers(org.jooq.Configuration configuration) { + org.jooq.test.postgres.generatedclasses.routines.PTriggers f = new org.jooq.test.postgres.generatedclasses.routines.PTriggers(); + + f.execute(configuration); + return f.getReturnValue(); + } + + /** + * Get public.p_triggers as a field + * + */ + public static org.jooq.Field pTriggers() { + org.jooq.test.postgres.generatedclasses.routines.PTriggers f = new org.jooq.test.postgres.generatedclasses.routines.PTriggers(); + + return f.asField(); + } + + /** + * Call public.p_unused + * + * @param in1 IN parameter + * @param out1 OUT parameter + * @param out2 IN OUT parameter + * @throws org.jooq.exception.DataAccessException if something went wrong executing the query + */ + public static org.jooq.test.postgres.generatedclasses.routines.PUnused pUnused(org.jooq.Configuration configuration, java.lang.String in1, java.lang.Integer out2) { + org.jooq.test.postgres.generatedclasses.routines.PUnused p = new org.jooq.test.postgres.generatedclasses.routines.PUnused(); + p.setIn1(in1); + p.setOut2(out2); + + p.execute(configuration); + return p; + } + + /** + * Call public.p391 + * + * @param i1 IN parameter + * @param io1 IN OUT parameter + * @param o1 OUT parameter + * @param o2 OUT parameter + * @param io2 IN OUT parameter + * @param i2 IN parameter + * @throws org.jooq.exception.DataAccessException if something went wrong executing the query + */ + public static org.jooq.test.postgres.generatedclasses.routines.P391 p391(org.jooq.Configuration configuration, java.lang.Integer i1, java.lang.Integer io1, java.lang.Integer io2, java.lang.Integer i2) { + org.jooq.test.postgres.generatedclasses.routines.P391 p = new org.jooq.test.postgres.generatedclasses.routines.P391(); + p.setI1(i1); + p.setIo1(io1); + p.setIo2(io2); + p.setI2(i2); + + p.execute(configuration); + return p; + } + + /** + * No instances + */ + private Routines() {} +} diff --git a/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/Sequences.java b/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/Sequences.java new file mode 100644 index 00000000000..8954377eee6 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/Sequences.java @@ -0,0 +1,22 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.postgres.generatedclasses; + +/** + * This class is generated by jOOQ. + * + * Convenience access to all sequences in public + */ +public final class Sequences { + + /** + * The sequence public.s_author_id + */ + public static final org.jooq.Sequence S_AUTHOR_ID = new org.jooq.impl.SequenceImpl("s_author_id", org.jooq.test.postgres.generatedclasses.Public.PUBLIC, org.jooq.impl.SQLDataType.BIGINT); + + /** + * No instances + */ + private Sequences() {} +} diff --git a/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/Tables.java b/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/Tables.java new file mode 100644 index 00000000000..b6a7fdbffe0 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/Tables.java @@ -0,0 +1,137 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.postgres.generatedclasses; + +/** + * This class is generated by jOOQ. + * + * Convenience access to all tables in public + */ +public final class Tables { + + /** + * The table public.t_639_numbers_table + */ + public static org.jooq.test.postgres.generatedclasses.tables.T_639NumbersTable T_639_NUMBERS_TABLE = org.jooq.test.postgres.generatedclasses.tables.T_639NumbersTable.T_639_NUMBERS_TABLE; + + /** + * The table public.t_658_ref + */ + public static org.jooq.test.postgres.generatedclasses.tables.T_658Ref T_658_REF = org.jooq.test.postgres.generatedclasses.tables.T_658Ref.T_658_REF; + + /** + * The table public.t_725_lob_test + */ + public static org.jooq.test.postgres.generatedclasses.tables.T_725LobTest T_725_LOB_TEST = org.jooq.test.postgres.generatedclasses.tables.T_725LobTest.T_725_LOB_TEST; + + /** + * The table public.t_785 + */ + public static org.jooq.test.postgres.generatedclasses.tables.T_785 T_785 = org.jooq.test.postgres.generatedclasses.tables.T_785.T_785; + + /** + * The table public.t_959 + */ + public static org.jooq.test.postgres.generatedclasses.tables.T_959 T_959 = org.jooq.test.postgres.generatedclasses.tables.T_959.T_959; + + /** + * The table public.t_986_1 + */ + public static org.jooq.test.postgres.generatedclasses.tables.T_986_1 T_986_1 = org.jooq.test.postgres.generatedclasses.tables.T_986_1.T_986_1; + + /** + * The table public.t_986_2 + */ + public static org.jooq.test.postgres.generatedclasses.tables.T_986_2 T_986_2 = org.jooq.test.postgres.generatedclasses.tables.T_986_2.T_986_2; + + /** + * The table public.t_arrays + */ + public static org.jooq.test.postgres.generatedclasses.tables.TArrays T_ARRAYS = org.jooq.test.postgres.generatedclasses.tables.TArrays.T_ARRAYS; + + /** + * The table public.t_author + */ + public static org.jooq.test.postgres.generatedclasses.tables.TAuthor T_AUTHOR = org.jooq.test.postgres.generatedclasses.tables.TAuthor.T_AUTHOR; + + /** + * The table public.t_book + */ + public static org.jooq.test.postgres.generatedclasses.tables.TBook T_BOOK = org.jooq.test.postgres.generatedclasses.tables.TBook.T_BOOK; + + /** + * The table public.t_book_store + */ + public static org.jooq.test.postgres.generatedclasses.tables.TBookStore T_BOOK_STORE = org.jooq.test.postgres.generatedclasses.tables.TBookStore.T_BOOK_STORE; + + /** + * The table public.t_book_to_book_store + */ + public static org.jooq.test.postgres.generatedclasses.tables.TBookToBookStore T_BOOK_TO_BOOK_STORE = org.jooq.test.postgres.generatedclasses.tables.TBookToBookStore.T_BOOK_TO_BOOK_STORE; + + /** + * The table public.t_booleans + */ + public static org.jooq.test.postgres.generatedclasses.tables.TBooleans T_BOOLEANS = org.jooq.test.postgres.generatedclasses.tables.TBooleans.T_BOOLEANS; + + /** + * The table public.t_dates + */ + public static org.jooq.test.postgres.generatedclasses.tables.TDates T_DATES = org.jooq.test.postgres.generatedclasses.tables.TDates.T_DATES; + + /** + * The table public.t_identity + */ + public static org.jooq.test.postgres.generatedclasses.tables.TIdentity T_IDENTITY = org.jooq.test.postgres.generatedclasses.tables.TIdentity.T_IDENTITY; + + /** + * The table public.t_identity_pk + */ + public static org.jooq.test.postgres.generatedclasses.tables.TIdentityPk T_IDENTITY_PK = org.jooq.test.postgres.generatedclasses.tables.TIdentityPk.T_IDENTITY_PK; + + /** + * The table public.t_triggers + */ + public static org.jooq.test.postgres.generatedclasses.tables.TTriggers T_TRIGGERS = org.jooq.test.postgres.generatedclasses.tables.TTriggers.T_TRIGGERS; + + /** + * The table public.v_author + */ + public static org.jooq.test.postgres.generatedclasses.tables.VAuthor V_AUTHOR = org.jooq.test.postgres.generatedclasses.tables.VAuthor.V_AUTHOR; + + /** + * The table public.v_book + */ + public static org.jooq.test.postgres.generatedclasses.tables.VBook V_BOOK = org.jooq.test.postgres.generatedclasses.tables.VBook.V_BOOK; + + /** + * The table public.v_library + */ + public static org.jooq.test.postgres.generatedclasses.tables.VLibrary V_LIBRARY = org.jooq.test.postgres.generatedclasses.tables.VLibrary.V_LIBRARY; + + /** + * The table public.x_test_case_64_69 + */ + public static org.jooq.test.postgres.generatedclasses.tables.XTestCase_64_69 X_TEST_CASE_64_69 = org.jooq.test.postgres.generatedclasses.tables.XTestCase_64_69.X_TEST_CASE_64_69; + + /** + * The table public.x_test_case_71 + */ + public static org.jooq.test.postgres.generatedclasses.tables.XTestCase_71 X_TEST_CASE_71 = org.jooq.test.postgres.generatedclasses.tables.XTestCase_71.X_TEST_CASE_71; + + /** + * The table public.x_test_case_85 + */ + public static org.jooq.test.postgres.generatedclasses.tables.XTestCase_85 X_TEST_CASE_85 = org.jooq.test.postgres.generatedclasses.tables.XTestCase_85.X_TEST_CASE_85; + + /** + * The table public.x_unused + */ + public static org.jooq.test.postgres.generatedclasses.tables.XUnused X_UNUSED = org.jooq.test.postgres.generatedclasses.tables.XUnused.X_UNUSED; + + /** + * No instances + */ + private Tables() {} +} diff --git a/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/UDTs.java b/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/UDTs.java new file mode 100644 index 00000000000..e3beb154b73 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/UDTs.java @@ -0,0 +1,27 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.postgres.generatedclasses; + +/** + * This class is generated by jOOQ. + * + * Convenience access to all UDTs in public + */ +public final class UDTs { + + /** + * The type public.u_address_type + */ + public static org.jooq.test.postgres.generatedclasses.udt.UAddressType U_ADDRESS_TYPE = org.jooq.test.postgres.generatedclasses.udt.UAddressType.U_ADDRESS_TYPE; + + /** + * The type public.u_street_type + */ + public static org.jooq.test.postgres.generatedclasses.udt.UStreetType U_STREET_TYPE = org.jooq.test.postgres.generatedclasses.udt.UStreetType.U_STREET_TYPE; + + /** + * No instances + */ + private UDTs() {} +} diff --git a/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/enums/TLanguage.java b/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/enums/TLanguage.java new file mode 100644 index 00000000000..9fd97c65dee --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/enums/TLanguage.java @@ -0,0 +1,65 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.postgres.generatedclasses.enums; + +/** + * This class is generated by jOOQ. + */ +public enum TLanguage implements org.jooq.MasterDataType { + + /** + * English + */ + en(1, "en", "English"), + + /** + * Deutsch + */ + de(2, "de", "Deutsch"), + + /** + * Français + */ + fr(3, "fr", "Français"), + pt(4, "pt", null), + ; + + private final java.lang.Integer id; + private final java.lang.String cd; + private final java.lang.String description; + + private TLanguage(java.lang.Integer id, java.lang.String cd, java.lang.String description) { + this.id = id; + this.cd = cd; + this.description = description; + } + + @Override + public java.lang.Integer getPrimaryKey() { + return id; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final java.lang.Integer getId() { + return id; + } + + /** + * An uncommented item + */ + public final java.lang.String getCd() { + return cd; + } + + /** + * An uncommented item + */ + public final java.lang.String getDescription() { + return description; + } +} diff --git a/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/enums/T_658_11.java b/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/enums/T_658_11.java new file mode 100644 index 00000000000..d94cfc24e4b --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/enums/T_658_11.java @@ -0,0 +1,46 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.postgres.generatedclasses.enums; + +/** + * This class is generated by jOOQ. + */ +public enum T_658_11 implements org.jooq.MasterDataType { + + /** + * A + */ + A__("A "), + + /** + * B + */ + B__("B "), + + /** + * C + */ + C__("C "), + ; + + private final java.lang.String id; + + private T_658_11(java.lang.String id) { + this.id = id; + } + + @Override + public java.lang.String getPrimaryKey() { + return id; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final java.lang.String getId() { + return id; + } +} diff --git a/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/enums/T_658_12.java b/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/enums/T_658_12.java new file mode 100644 index 00000000000..9743189839c --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/enums/T_658_12.java @@ -0,0 +1,55 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.postgres.generatedclasses.enums; + +/** + * This class is generated by jOOQ. + */ +public enum T_658_12 implements org.jooq.MasterDataType { + + /** + * A + */ + A__("A ", "A "), + + /** + * B + */ + B__("B ", "B "), + + /** + * C + */ + C__("C ", "C "), + ; + + private final java.lang.String id; + private final java.lang.String cd; + + private T_658_12(java.lang.String id, java.lang.String cd) { + this.id = id; + this.cd = cd; + } + + @Override + public java.lang.String getPrimaryKey() { + return id; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final java.lang.String getId() { + return id; + } + + /** + * An uncommented item + */ + public final java.lang.String getCd() { + return cd; + } +} diff --git a/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/enums/T_658_21.java b/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/enums/T_658_21.java new file mode 100644 index 00000000000..df86b50c7ac --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/enums/T_658_21.java @@ -0,0 +1,46 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.postgres.generatedclasses.enums; + +/** + * This class is generated by jOOQ. + */ +public enum T_658_21 implements org.jooq.MasterDataType { + + /** + * 1 + */ + _1(1), + + /** + * 2 + */ + _2(2), + + /** + * 3 + */ + _3(3), + ; + + private final java.lang.Integer id; + + private T_658_21(java.lang.Integer id) { + this.id = id; + } + + @Override + public java.lang.Integer getPrimaryKey() { + return id; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final java.lang.Integer getId() { + return id; + } +} diff --git a/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/enums/T_658_22.java b/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/enums/T_658_22.java new file mode 100644 index 00000000000..707c98b6d19 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/enums/T_658_22.java @@ -0,0 +1,55 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.postgres.generatedclasses.enums; + +/** + * This class is generated by jOOQ. + */ +public enum T_658_22 implements org.jooq.MasterDataType { + + /** + * 1 + */ + _1(1, 1), + + /** + * 2 + */ + _2(2, 2), + + /** + * 3 + */ + _3(3, 3), + ; + + private final java.lang.Integer id; + private final java.lang.Integer cd; + + private T_658_22(java.lang.Integer id, java.lang.Integer cd) { + this.id = id; + this.cd = cd; + } + + @Override + public java.lang.Integer getPrimaryKey() { + return id; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final java.lang.Integer getId() { + return id; + } + + /** + * An uncommented item + */ + public final java.lang.Integer getCd() { + return cd; + } +} diff --git a/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/enums/T_658_31.java b/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/enums/T_658_31.java new file mode 100644 index 00000000000..721dbfd8f21 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/enums/T_658_31.java @@ -0,0 +1,46 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.postgres.generatedclasses.enums; + +/** + * This class is generated by jOOQ. + */ +public enum T_658_31 implements org.jooq.MasterDataType { + + /** + * 1 + */ + _1(1L), + + /** + * 2 + */ + _2(2L), + + /** + * 3 + */ + _3(3L), + ; + + private final java.lang.Long id; + + private T_658_31(java.lang.Long id) { + this.id = id; + } + + @Override + public java.lang.Long getPrimaryKey() { + return id; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final java.lang.Long getId() { + return id; + } +} diff --git a/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/enums/T_658_32.java b/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/enums/T_658_32.java new file mode 100644 index 00000000000..49997be063f --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/enums/T_658_32.java @@ -0,0 +1,55 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.postgres.generatedclasses.enums; + +/** + * This class is generated by jOOQ. + */ +public enum T_658_32 implements org.jooq.MasterDataType { + + /** + * 1 + */ + _1(1L, 1L), + + /** + * 2 + */ + _2(2L, 2L), + + /** + * 3 + */ + _3(3L, 3L), + ; + + private final java.lang.Long id; + private final java.lang.Long cd; + + private T_658_32(java.lang.Long id, java.lang.Long cd) { + this.id = id; + this.cd = cd; + } + + @Override + public java.lang.Long getPrimaryKey() { + return id; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final java.lang.Long getId() { + return id; + } + + /** + * An uncommented item + */ + public final java.lang.Long getCd() { + return cd; + } +} diff --git a/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/enums/UBookStatus.java b/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/enums/UBookStatus.java new file mode 100644 index 00000000000..bbccc1505eb --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/enums/UBookStatus.java @@ -0,0 +1,33 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.postgres.generatedclasses.enums; + +/** + * This class is generated by jOOQ. + */ +public enum UBookStatus implements org.jooq.EnumType { + ON_STOCK("ON STOCK"), + + ORDERED("ORDERED"), + + SOLD_OUT("SOLD OUT"), + + ; + + private final java.lang.String literal; + + private UBookStatus(java.lang.String literal) { + this.literal = literal; + } + + @Override + public java.lang.String getName() { + return "u_book_status"; + } + + @Override + public java.lang.String getLiteral() { + return literal; + } +} diff --git a/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/enums/UCountry.java b/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/enums/UCountry.java new file mode 100644 index 00000000000..66f1eaed3bd --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/enums/UCountry.java @@ -0,0 +1,33 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.postgres.generatedclasses.enums; + +/** + * This class is generated by jOOQ. + */ +public enum UCountry implements org.jooq.EnumType { + Brazil("Brazil"), + + England("England"), + + Germany("Germany"), + + ; + + private final java.lang.String literal; + + private UCountry(java.lang.String literal) { + this.literal = literal; + } + + @Override + public java.lang.String getName() { + return "u_country"; + } + + @Override + public java.lang.String getLiteral() { + return literal; + } +} diff --git a/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/enums/U_959.java b/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/enums/U_959.java new file mode 100644 index 00000000000..0871adba33f --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/enums/U_959.java @@ -0,0 +1,131 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.postgres.generatedclasses.enums; + +/** + * This class is generated by jOOQ. + */ +public enum U_959 implements org.jooq.EnumType { + abstract_("abstract"), + + assert_("assert"), + + boolean_("boolean"), + + break_("break"), + + byte_("byte"), + + case_("case"), + + catch_("catch"), + + char_("char"), + + class_("class"), + + const_("const"), + + continue_("continue"), + + default_("default"), + + do_("do"), + + double_("double"), + + else_("else"), + + enum_("enum"), + + extends_("extends"), + + false_("false"), + + final_("final"), + + finally_("finally"), + + float_("float"), + + for_("for"), + + goto_("goto"), + + if_("if"), + + implements_("implements"), + + import_("import"), + + instanceof_("instanceof"), + + int_("int"), + + interface_("interface"), + + long_("long"), + + native_("native"), + + new_("new"), + + package_("package"), + + private_("private"), + + protected_("protected"), + + public_("public"), + + return_("return"), + + short_("short"), + + static_("static"), + + strictfp_("strictfp"), + + super_("super"), + + switch_("switch"), + + synchronized_("synchronized"), + + this_("this"), + + throw_("throw"), + + throws_("throws"), + + transient_("transient"), + + true_("true"), + + try_("try"), + + void_("void"), + + volatile_("volatile"), + + while_("while"), + + ; + + private final java.lang.String literal; + + private U_959(java.lang.String literal) { + this.literal = literal; + } + + @Override + public java.lang.String getName() { + return "u_959"; + } + + @Override + public java.lang.String getLiteral() { + return literal; + } +} diff --git a/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/routines/F317.java b/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/routines/F317.java new file mode 100644 index 00000000000..c8cf1ae336c --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/routines/F317.java @@ -0,0 +1,115 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.postgres.generatedclasses.routines; + +/** + * This class is generated by jOOQ. + */ +public class F317 extends org.jooq.impl.AbstractRoutine { + + private static final long serialVersionUID = 58533431; + + + /** + * An uncommented item + */ + public static final org.jooq.Parameter RETURN_VALUE = createParameter("RETURN_VALUE", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter P1 = createParameter("p1", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter P2 = createParameter("p2", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter P3 = createParameter("p3", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter P4 = createParameter("p4", org.jooq.impl.SQLDataType.INTEGER); + + /** + * Create a new routine call instance + */ + public F317() { + super("f317", org.jooq.test.postgres.generatedclasses.Public.PUBLIC, org.jooq.impl.SQLDataType.INTEGER); + + setReturnParameter(RETURN_VALUE); + addInParameter(P1); + addInParameter(P2); + addInParameter(P3); + addInParameter(P4); + } + + /** + * Set the p1 parameter to the routine + */ + public void setP1(java.lang.Integer value) { + setValue(P1, value); + } + + /** + * Set the p1 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setP1(org.jooq.Field field) { + setField(P1, field); + } + + /** + * Set the p2 parameter to the routine + */ + public void setP2(java.lang.Integer value) { + setValue(P2, value); + } + + /** + * Set the p2 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setP2(org.jooq.Field field) { + setField(P2, field); + } + + /** + * Set the p3 parameter to the routine + */ + public void setP3(java.lang.Integer value) { + setValue(P3, value); + } + + /** + * Set the p3 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setP3(org.jooq.Field field) { + setField(P3, field); + } + + /** + * Set the p4 parameter to the routine + */ + public void setP4(java.lang.Integer value) { + setValue(P4, value); + } + + /** + * Set the p4 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setP4(org.jooq.Field field) { + setField(P4, field); + } +} diff --git a/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/routines/FArrays1.java b/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/routines/FArrays1.java new file mode 100644 index 00000000000..25c8d2bcf30 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/routines/FArrays1.java @@ -0,0 +1,50 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.postgres.generatedclasses.routines; + +/** + * This class is generated by jOOQ. + */ +public class FArrays1 extends org.jooq.impl.AbstractRoutine { + + private static final long serialVersionUID = -363817677; + + + /** + * An uncommented item + */ + public static final org.jooq.Parameter RETURN_VALUE = createParameter("RETURN_VALUE", org.jooq.impl.SQLDataType.INTEGER.getArrayDataType()); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter IN_ARRAY = createParameter("in_array", org.jooq.impl.SQLDataType.INTEGER.getArrayDataType()); + + /** + * Create a new routine call instance + */ + public FArrays1() { + super("f_arrays", org.jooq.test.postgres.generatedclasses.Public.PUBLIC, org.jooq.impl.SQLDataType.INTEGER.getArrayDataType()); + + setReturnParameter(RETURN_VALUE); + addInParameter(IN_ARRAY); + setOverloaded(true); + } + + /** + * Set the in_array parameter to the routine + */ + public void setInArray(java.lang.Integer[] value) { + setValue(IN_ARRAY, value); + } + + /** + * Set the in_array parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setInArray(org.jooq.Field field) { + setField(IN_ARRAY, field); + } +} diff --git a/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/routines/FArrays2.java b/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/routines/FArrays2.java new file mode 100644 index 00000000000..8b4cb91f160 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/routines/FArrays2.java @@ -0,0 +1,50 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.postgres.generatedclasses.routines; + +/** + * This class is generated by jOOQ. + */ +public class FArrays2 extends org.jooq.impl.AbstractRoutine { + + private static final long serialVersionUID = 622049102; + + + /** + * An uncommented item + */ + public static final org.jooq.Parameter RETURN_VALUE = createParameter("RETURN_VALUE", org.jooq.impl.SQLDataType.BIGINT.getArrayDataType()); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter IN_ARRAY = createParameter("in_array", org.jooq.impl.SQLDataType.BIGINT.getArrayDataType()); + + /** + * Create a new routine call instance + */ + public FArrays2() { + super("f_arrays", org.jooq.test.postgres.generatedclasses.Public.PUBLIC, org.jooq.impl.SQLDataType.BIGINT.getArrayDataType()); + + setReturnParameter(RETURN_VALUE); + addInParameter(IN_ARRAY); + setOverloaded(true); + } + + /** + * Set the in_array parameter to the routine + */ + public void setInArray(java.lang.Long[] value) { + setValue(IN_ARRAY, value); + } + + /** + * Set the in_array parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setInArray(org.jooq.Field field) { + setField(IN_ARRAY, field); + } +} diff --git a/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/routines/FArrays3.java b/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/routines/FArrays3.java new file mode 100644 index 00000000000..fbbfbda68e4 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/routines/FArrays3.java @@ -0,0 +1,50 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.postgres.generatedclasses.routines; + +/** + * This class is generated by jOOQ. + */ +public class FArrays3 extends org.jooq.impl.AbstractRoutine { + + private static final long serialVersionUID = 1518899478; + + + /** + * An uncommented item + */ + public static final org.jooq.Parameter RETURN_VALUE = createParameter("RETURN_VALUE", org.jooq.impl.SQLDataType.CLOB.getArrayDataType()); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter IN_ARRAY = createParameter("in_array", org.jooq.impl.SQLDataType.CLOB.getArrayDataType()); + + /** + * Create a new routine call instance + */ + public FArrays3() { + super("f_arrays", org.jooq.test.postgres.generatedclasses.Public.PUBLIC, org.jooq.impl.SQLDataType.CLOB.getArrayDataType()); + + setReturnParameter(RETURN_VALUE); + addInParameter(IN_ARRAY); + setOverloaded(true); + } + + /** + * Set the in_array parameter to the routine + */ + public void setInArray(java.lang.String[] value) { + setValue(IN_ARRAY, value); + } + + /** + * Set the in_array parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setInArray(org.jooq.Field field) { + setField(IN_ARRAY, field); + } +} diff --git a/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/routines/FAuthorExists.java b/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/routines/FAuthorExists.java new file mode 100644 index 00000000000..7df4849c599 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/routines/FAuthorExists.java @@ -0,0 +1,49 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.postgres.generatedclasses.routines; + +/** + * This class is generated by jOOQ. + */ +public class FAuthorExists extends org.jooq.impl.AbstractRoutine { + + private static final long serialVersionUID = -1556250220; + + + /** + * An uncommented item + */ + public static final org.jooq.Parameter RETURN_VALUE = createParameter("RETURN_VALUE", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter AUTHOR_NAME = createParameter("author_name", org.jooq.impl.SQLDataType.VARCHAR); + + /** + * Create a new routine call instance + */ + public FAuthorExists() { + super("f_author_exists", org.jooq.test.postgres.generatedclasses.Public.PUBLIC, org.jooq.impl.SQLDataType.INTEGER); + + setReturnParameter(RETURN_VALUE); + addInParameter(AUTHOR_NAME); + } + + /** + * Set the author_name parameter to the routine + */ + public void setAuthorName(java.lang.String value) { + setValue(AUTHOR_NAME, value); + } + + /** + * Set the author_name parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setAuthorName(org.jooq.Field field) { + setField(AUTHOR_NAME, field); + } +} diff --git a/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/routines/FGetOneCursor.java b/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/routines/FGetOneCursor.java new file mode 100644 index 00000000000..261453dc427 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/routines/FGetOneCursor.java @@ -0,0 +1,49 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.postgres.generatedclasses.routines; + +/** + * This class is generated by jOOQ. + */ +public class FGetOneCursor extends org.jooq.impl.AbstractRoutine> { + + private static final long serialVersionUID = 72583979; + + + /** + * An uncommented item + */ + public static final org.jooq.Parameter> RETURN_VALUE = createParameter("RETURN_VALUE", org.jooq.impl.SQLDataType.RESULT); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter BOOK_IDS = createParameter("book_ids", org.jooq.impl.SQLDataType.INTEGER.getArrayDataType()); + + /** + * Create a new routine call instance + */ + public FGetOneCursor() { + super("f_get_one_cursor", org.jooq.test.postgres.generatedclasses.Public.PUBLIC, org.jooq.impl.SQLDataType.RESULT); + + setReturnParameter(RETURN_VALUE); + addInParameter(BOOK_IDS); + } + + /** + * Set the book_ids parameter to the routine + */ + public void setBookIds(java.lang.Integer[] value) { + setValue(BOOK_IDS, value); + } + + /** + * Set the book_ids parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setBookIds(org.jooq.Field field) { + setField(BOOK_IDS, field); + } +} diff --git a/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/routines/FNumber.java b/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/routines/FNumber.java new file mode 100644 index 00000000000..048bacbcc68 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/routines/FNumber.java @@ -0,0 +1,49 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.postgres.generatedclasses.routines; + +/** + * This class is generated by jOOQ. + */ +public class FNumber extends org.jooq.impl.AbstractRoutine { + + private static final long serialVersionUID = 1070582946; + + + /** + * An uncommented item + */ + public static final org.jooq.Parameter RETURN_VALUE = createParameter("RETURN_VALUE", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter N = createParameter("n", org.jooq.impl.SQLDataType.INTEGER); + + /** + * Create a new routine call instance + */ + public FNumber() { + super("f_number", org.jooq.test.postgres.generatedclasses.Public.PUBLIC, org.jooq.impl.SQLDataType.INTEGER); + + setReturnParameter(RETURN_VALUE); + addInParameter(N); + } + + /** + * Set the n parameter to the routine + */ + public void setN(java.lang.Integer value) { + setValue(N, value); + } + + /** + * Set the n parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setN(org.jooq.Field field) { + setField(N, field); + } +} diff --git a/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/routines/FOne.java b/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/routines/FOne.java new file mode 100644 index 00000000000..6fa6e8548e5 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/routines/FOne.java @@ -0,0 +1,27 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.postgres.generatedclasses.routines; + +/** + * This class is generated by jOOQ. + */ +public class FOne extends org.jooq.impl.AbstractRoutine { + + private static final long serialVersionUID = -916302997; + + + /** + * An uncommented item + */ + public static final org.jooq.Parameter RETURN_VALUE = createParameter("RETURN_VALUE", org.jooq.impl.SQLDataType.INTEGER); + + /** + * Create a new routine call instance + */ + public FOne() { + super("f_one", org.jooq.test.postgres.generatedclasses.Public.PUBLIC, org.jooq.impl.SQLDataType.INTEGER); + + setReturnParameter(RETURN_VALUE); + } +} diff --git a/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/routines/P391.java b/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/routines/P391.java new file mode 100644 index 00000000000..e3db060e254 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/routines/P391.java @@ -0,0 +1,101 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.postgres.generatedclasses.routines; + +/** + * This class is generated by jOOQ. + */ +public class P391 extends org.jooq.impl.AbstractRoutine { + + private static final long serialVersionUID = -1289793495; + + + /** + * An uncommented item + */ + public static final org.jooq.Parameter I1 = createParameter("i1", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter IO1 = createParameter("io1", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter O1 = createParameter("o1", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter O2 = createParameter("o2", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter IO2 = createParameter("io2", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter I2 = createParameter("i2", org.jooq.impl.SQLDataType.INTEGER); + + /** + * Create a new routine call instance + */ + public P391() { + super("p391", org.jooq.test.postgres.generatedclasses.Public.PUBLIC); + + addInParameter(I1); + addInOutParameter(IO1); + addOutParameter(O1); + addOutParameter(O2); + addInOutParameter(IO2); + addInParameter(I2); + } + + /** + * Set the i1 parameter to the routine + */ + public void setI1(java.lang.Integer value) { + setValue(I1, value); + } + + /** + * Set the io1 parameter to the routine + */ + public void setIo1(java.lang.Integer value) { + setValue(IO1, value); + } + + /** + * Set the io2 parameter to the routine + */ + public void setIo2(java.lang.Integer value) { + setValue(IO2, value); + } + + /** + * Set the i2 parameter to the routine + */ + public void setI2(java.lang.Integer value) { + setValue(I2, value); + } + + public java.lang.Integer getIo1() { + return getValue(IO1); + } + + public java.lang.Integer getO1() { + return getValue(O1); + } + + public java.lang.Integer getO2() { + return getValue(O2); + } + + public java.lang.Integer getIo2() { + return getValue(IO2); + } +} diff --git a/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/routines/PArrays1.java b/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/routines/PArrays1.java new file mode 100644 index 00000000000..f3b08f1806e --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/routines/PArrays1.java @@ -0,0 +1,45 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.postgres.generatedclasses.routines; + +/** + * This class is generated by jOOQ. + */ +public class PArrays1 extends org.jooq.impl.AbstractRoutine { + + private static final long serialVersionUID = -755653044; + + + /** + * An uncommented item + */ + public static final org.jooq.Parameter IN_ARRAY = createParameter("in_array", org.jooq.impl.SQLDataType.INTEGER.getArrayDataType()); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter OUT_ARRAY = createParameter("out_array", org.jooq.impl.SQLDataType.INTEGER.getArrayDataType()); + + /** + * Create a new routine call instance + */ + public PArrays1() { + super("p_arrays", org.jooq.test.postgres.generatedclasses.Public.PUBLIC); + + addInParameter(IN_ARRAY); + addOutParameter(OUT_ARRAY); + setOverloaded(true); + } + + /** + * Set the in_array parameter to the routine + */ + public void setInArray(java.lang.Integer[] value) { + setValue(IN_ARRAY, value); + } + + public java.lang.Integer[] getOutArray() { + return getValue(OUT_ARRAY); + } +} diff --git a/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/routines/PArrays2.java b/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/routines/PArrays2.java new file mode 100644 index 00000000000..997a7a877d2 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/routines/PArrays2.java @@ -0,0 +1,45 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.postgres.generatedclasses.routines; + +/** + * This class is generated by jOOQ. + */ +public class PArrays2 extends org.jooq.impl.AbstractRoutine { + + private static final long serialVersionUID = -1740132702; + + + /** + * An uncommented item + */ + public static final org.jooq.Parameter IN_ARRAY = createParameter("in_array", org.jooq.impl.SQLDataType.BIGINT.getArrayDataType()); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter OUT_ARRAY = createParameter("out_array", org.jooq.impl.SQLDataType.BIGINT.getArrayDataType()); + + /** + * Create a new routine call instance + */ + public PArrays2() { + super("p_arrays", org.jooq.test.postgres.generatedclasses.Public.PUBLIC); + + addInParameter(IN_ARRAY); + addOutParameter(OUT_ARRAY); + setOverloaded(true); + } + + /** + * Set the in_array parameter to the routine + */ + public void setInArray(java.lang.Long[] value) { + setValue(IN_ARRAY, value); + } + + public java.lang.Long[] getOutArray() { + return getValue(OUT_ARRAY); + } +} diff --git a/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/routines/PArrays3.java b/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/routines/PArrays3.java new file mode 100644 index 00000000000..39991f921e4 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/routines/PArrays3.java @@ -0,0 +1,45 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.postgres.generatedclasses.routines; + +/** + * This class is generated by jOOQ. + */ +public class PArrays3 extends org.jooq.impl.AbstractRoutine { + + private static final long serialVersionUID = -413851406; + + + /** + * An uncommented item + */ + public static final org.jooq.Parameter IN_ARRAY = createParameter("in_array", org.jooq.impl.SQLDataType.CLOB.getArrayDataType()); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter OUT_ARRAY = createParameter("out_array", org.jooq.impl.SQLDataType.CLOB.getArrayDataType()); + + /** + * Create a new routine call instance + */ + public PArrays3() { + super("p_arrays", org.jooq.test.postgres.generatedclasses.Public.PUBLIC); + + addInParameter(IN_ARRAY); + addOutParameter(OUT_ARRAY); + setOverloaded(true); + } + + /** + * Set the in_array parameter to the routine + */ + public void setInArray(java.lang.String[] value) { + setValue(IN_ARRAY, value); + } + + public java.lang.String[] getOutArray() { + return getValue(OUT_ARRAY); + } +} diff --git a/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/routines/PAuthorExists.java b/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/routines/PAuthorExists.java new file mode 100644 index 00000000000..fd635db602e --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/routines/PAuthorExists.java @@ -0,0 +1,44 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.postgres.generatedclasses.routines; + +/** + * This class is generated by jOOQ. + */ +public class PAuthorExists extends org.jooq.impl.AbstractRoutine { + + private static final long serialVersionUID = 1182445140; + + + /** + * An uncommented item + */ + public static final org.jooq.Parameter AUTHOR_NAME = createParameter("author_name", org.jooq.impl.SQLDataType.VARCHAR); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter RESULT = createParameter("result", org.jooq.impl.SQLDataType.INTEGER); + + /** + * Create a new routine call instance + */ + public PAuthorExists() { + super("p_author_exists", org.jooq.test.postgres.generatedclasses.Public.PUBLIC); + + addInParameter(AUTHOR_NAME); + addOutParameter(RESULT); + } + + /** + * Set the author_name parameter to the routine + */ + public void setAuthorName(java.lang.String value) { + setValue(AUTHOR_NAME, value); + } + + public java.lang.Integer getResult() { + return getValue(RESULT); + } +} diff --git a/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/routines/PCreateAuthor.java b/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/routines/PCreateAuthor.java new file mode 100644 index 00000000000..2b699734244 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/routines/PCreateAuthor.java @@ -0,0 +1,20 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.postgres.generatedclasses.routines; + +/** + * This class is generated by jOOQ. + */ +public class PCreateAuthor extends org.jooq.impl.AbstractRoutine { + + private static final long serialVersionUID = 1351289112; + + + /** + * Create a new routine call instance + */ + public PCreateAuthor() { + super("p_create_author", org.jooq.test.postgres.generatedclasses.Public.PUBLIC); + } +} diff --git a/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/routines/PCreateAuthorByName.java b/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/routines/PCreateAuthorByName.java new file mode 100644 index 00000000000..02c1e248357 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/routines/PCreateAuthorByName.java @@ -0,0 +1,47 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.postgres.generatedclasses.routines; + +/** + * This class is generated by jOOQ. + */ +public class PCreateAuthorByName extends org.jooq.impl.AbstractRoutine { + + private static final long serialVersionUID = 1515826674; + + + /** + * An uncommented item + */ + public static final org.jooq.Parameter FIRST_NAME = createParameter("first_name", org.jooq.impl.SQLDataType.VARCHAR); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter LAST_NAME = createParameter("last_name", org.jooq.impl.SQLDataType.VARCHAR); + + /** + * Create a new routine call instance + */ + public PCreateAuthorByName() { + super("p_create_author_by_name", org.jooq.test.postgres.generatedclasses.Public.PUBLIC); + + addInParameter(FIRST_NAME); + addInParameter(LAST_NAME); + } + + /** + * Set the first_name parameter to the routine + */ + public void setFirstName(java.lang.String value) { + setValue(FIRST_NAME, value); + } + + /** + * Set the last_name parameter to the routine + */ + public void setLastName(java.lang.String value) { + setValue(LAST_NAME, value); + } +} diff --git a/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/routines/PEnhanceAddress1.java b/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/routines/PEnhanceAddress1.java new file mode 100644 index 00000000000..d6cfd605661 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/routines/PEnhanceAddress1.java @@ -0,0 +1,44 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.postgres.generatedclasses.routines; + +/** + * This class is generated by jOOQ. + */ +public class PEnhanceAddress1 extends org.jooq.impl.AbstractRoutine { + + private static final long serialVersionUID = -1415952171; + + + /** + * An uncommented item + */ + public static final org.jooq.Parameter ADDRESS = createParameter("address", org.jooq.test.postgres.generatedclasses.udt.UAddressType.U_ADDRESS_TYPE.getDataType()); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter NO = createParameter("no", org.jooq.impl.SQLDataType.VARCHAR); + + /** + * Create a new routine call instance + */ + public PEnhanceAddress1() { + super("p_enhance_address1", org.jooq.test.postgres.generatedclasses.Public.PUBLIC); + + addInParameter(ADDRESS); + addOutParameter(NO); + } + + /** + * Set the address parameter to the routine + */ + public void setAddress(org.jooq.test.postgres.generatedclasses.udt.records.UAddressTypeRecord value) { + setValue(ADDRESS, value); + } + + public java.lang.String getNo() { + return getValue(NO); + } +} diff --git a/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/routines/PEnhanceAddress2.java b/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/routines/PEnhanceAddress2.java new file mode 100644 index 00000000000..8cbf94cd53f --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/routines/PEnhanceAddress2.java @@ -0,0 +1,31 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.postgres.generatedclasses.routines; + +/** + * This class is generated by jOOQ. + */ +public class PEnhanceAddress2 extends org.jooq.impl.AbstractRoutine { + + private static final long serialVersionUID = 1801276725; + + + /** + * An uncommented item + */ + public static final org.jooq.Parameter ADDRESS = createParameter("address", org.jooq.test.postgres.generatedclasses.udt.UAddressType.U_ADDRESS_TYPE.getDataType()); + + /** + * Create a new routine call instance + */ + public PEnhanceAddress2() { + super("p_enhance_address2", org.jooq.test.postgres.generatedclasses.Public.PUBLIC); + + addOutParameter(ADDRESS); + } + + public org.jooq.test.postgres.generatedclasses.udt.records.UAddressTypeRecord getAddress() { + return getValue(ADDRESS); + } +} diff --git a/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/routines/PEnhanceAddress3.java b/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/routines/PEnhanceAddress3.java new file mode 100644 index 00000000000..259b97d3cf4 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/routines/PEnhanceAddress3.java @@ -0,0 +1,38 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.postgres.generatedclasses.routines; + +/** + * This class is generated by jOOQ. + */ +public class PEnhanceAddress3 extends org.jooq.impl.AbstractRoutine { + + private static final long serialVersionUID = 1270536882; + + + /** + * An uncommented item + */ + public static final org.jooq.Parameter ADDRESS = createParameter("address", org.jooq.test.postgres.generatedclasses.udt.UAddressType.U_ADDRESS_TYPE.getDataType()); + + /** + * Create a new routine call instance + */ + public PEnhanceAddress3() { + super("p_enhance_address3", org.jooq.test.postgres.generatedclasses.Public.PUBLIC); + + addInOutParameter(ADDRESS); + } + + /** + * Set the address parameter to the routine + */ + public void setAddress(org.jooq.test.postgres.generatedclasses.udt.records.UAddressTypeRecord value) { + setValue(ADDRESS, value); + } + + public org.jooq.test.postgres.generatedclasses.udt.records.UAddressTypeRecord getAddress() { + return getValue(ADDRESS); + } +} diff --git a/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/routines/PGetOneCursor.java b/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/routines/PGetOneCursor.java new file mode 100644 index 00000000000..95cfd776a70 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/routines/PGetOneCursor.java @@ -0,0 +1,54 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.postgres.generatedclasses.routines; + +/** + * This class is generated by jOOQ. + */ +public class PGetOneCursor extends org.jooq.impl.AbstractRoutine { + + private static final long serialVersionUID = -472046541; + + + /** + * An uncommented item + */ + public static final org.jooq.Parameter TOTAL = createParameter("total", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter> BOOKS = createParameter("books", org.jooq.impl.SQLDataType.RESULT); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter BOOK_IDS = createParameter("book_ids", org.jooq.impl.SQLDataType.INTEGER.getArrayDataType()); + + /** + * Create a new routine call instance + */ + public PGetOneCursor() { + super("p_get_one_cursor", org.jooq.test.postgres.generatedclasses.Public.PUBLIC); + + addOutParameter(TOTAL); + addOutParameter(BOOKS); + addInParameter(BOOK_IDS); + } + + /** + * Set the book_ids parameter to the routine + */ + public void setBookIds(java.lang.Integer[] value) { + setValue(BOOK_IDS, value); + } + + public java.lang.Integer getTotal() { + return getValue(TOTAL); + } + + public org.jooq.Result getBooks() { + return getValue(BOOKS); + } +} diff --git a/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/routines/PGetTwoCursors.java b/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/routines/PGetTwoCursors.java new file mode 100644 index 00000000000..3225127f808 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/routines/PGetTwoCursors.java @@ -0,0 +1,41 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.postgres.generatedclasses.routines; + +/** + * This class is generated by jOOQ. + */ +public class PGetTwoCursors extends org.jooq.impl.AbstractRoutine { + + private static final long serialVersionUID = -1548384649; + + + /** + * An uncommented item + */ + public static final org.jooq.Parameter> BOOKS = createParameter("books", org.jooq.impl.SQLDataType.RESULT); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter> AUTHORS = createParameter("authors", org.jooq.impl.SQLDataType.RESULT); + + /** + * Create a new routine call instance + */ + public PGetTwoCursors() { + super("p_get_two_cursors", org.jooq.test.postgres.generatedclasses.Public.PUBLIC); + + addOutParameter(BOOKS); + addOutParameter(AUTHORS); + } + + public org.jooq.Result getBooks() { + return getValue(BOOKS); + } + + public org.jooq.Result getAuthors() { + return getValue(AUTHORS); + } +} diff --git a/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/routines/PTriggers.java b/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/routines/PTriggers.java new file mode 100644 index 00000000000..8744b3004c5 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/routines/PTriggers.java @@ -0,0 +1,30 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.postgres.generatedclasses.routines; + +/** + * This class is generated by jOOQ. + */ +public class PTriggers extends org.jooq.impl.AbstractRoutine { + + private static final long serialVersionUID = -1095013055; + + + /** + * An uncommented item + * + * The SQL type of this item (trigger) could not be mapped.
+ * Deserialising this field might not work! + */ + public static final org.jooq.Parameter RETURN_VALUE = createParameter("RETURN_VALUE", org.jooq.util.postgres.PostgresDataType.getDefaultDataType("trigger")); + + /** + * Create a new routine call instance + */ + public PTriggers() { + super("p_triggers", org.jooq.test.postgres.generatedclasses.Public.PUBLIC, org.jooq.util.postgres.PostgresDataType.getDefaultDataType("trigger")); + + setReturnParameter(RETURN_VALUE); + } +} diff --git a/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/routines/PUnused.java b/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/routines/PUnused.java new file mode 100644 index 00000000000..5d19f2f84b0 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/routines/PUnused.java @@ -0,0 +1,61 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.postgres.generatedclasses.routines; + +/** + * This class is generated by jOOQ. + */ +public class PUnused extends org.jooq.impl.AbstractRoutine { + + private static final long serialVersionUID = -83646817; + + + /** + * An uncommented item + */ + public static final org.jooq.Parameter IN1 = createParameter("in1", org.jooq.impl.SQLDataType.VARCHAR); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter OUT1 = createParameter("out1", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter OUT2 = createParameter("out2", org.jooq.impl.SQLDataType.INTEGER); + + /** + * Create a new routine call instance + */ + public PUnused() { + super("p_unused", org.jooq.test.postgres.generatedclasses.Public.PUBLIC); + + addInParameter(IN1); + addOutParameter(OUT1); + addInOutParameter(OUT2); + } + + /** + * Set the in1 parameter to the routine + */ + public void setIn1(java.lang.String value) { + setValue(IN1, value); + } + + /** + * Set the out2 parameter to the routine + */ + public void setOut2(java.lang.Integer value) { + setValue(OUT2, value); + } + + public java.lang.Integer getOut1() { + return getValue(OUT1); + } + + public java.lang.Integer getOut2() { + return getValue(OUT2); + } +} diff --git a/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/tables/TArrays.java b/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/tables/TArrays.java new file mode 100644 index 00000000000..81ce634891e --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/tables/TArrays.java @@ -0,0 +1,91 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.postgres.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class TArrays extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = 1603848593; + + /** + * The singleton instance of public.t_arrays + */ + public static final org.jooq.test.postgres.generatedclasses.tables.TArrays T_ARRAYS = new org.jooq.test.postgres.generatedclasses.tables.TArrays(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.postgres.generatedclasses.tables.records.TArraysRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final org.jooq.TableField ID = createField("id", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField STRING_ARRAY = createField("string_array", org.jooq.impl.SQLDataType.VARCHAR.getArrayDataType(), this); + + /** + * An uncommented item + */ + public final org.jooq.TableField NUMBER_ARRAY = createField("number_array", org.jooq.impl.SQLDataType.INTEGER.getArrayDataType(), this); + + /** + * An uncommented item + */ + public final org.jooq.TableField DATE_ARRAY = createField("date_array", org.jooq.impl.SQLDataType.DATE.getArrayDataType(), this); + + /** + * An uncommented item + */ + public final org.jooq.TableField UDT_ARRAY = createField("udt_array", org.jooq.test.postgres.generatedclasses.udt.UStreetType.U_STREET_TYPE.getDataType().getArrayDataType(), this); + + /** + * An uncommented item + */ + public final org.jooq.TableField ENUM_ARRAY = createField("enum_array", org.jooq.util.postgres.PostgresDataType.VARCHAR.asEnumDataType(org.jooq.test.postgres.generatedclasses.enums.UCountry.class).getArrayDataType(), this); + + /** + * An uncommented item + */ + public final org.jooq.TableField ARRAY_ARRAY = createField("array_array", org.jooq.impl.SQLDataType.INTEGER.getArrayDataType(), this); + + public TArrays() { + super("t_arrays", org.jooq.test.postgres.generatedclasses.Public.PUBLIC); + } + + public TArrays(java.lang.String alias) { + super(alias, org.jooq.test.postgres.generatedclasses.Public.PUBLIC, org.jooq.test.postgres.generatedclasses.tables.TArrays.T_ARRAYS); + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.test.postgres.generatedclasses.Keys.PK_T_ARRAYS; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.test.postgres.generatedclasses.Keys.PK_T_ARRAYS); + } + + @Override + public org.jooq.test.postgres.generatedclasses.tables.TArrays as(java.lang.String alias) { + return new org.jooq.test.postgres.generatedclasses.tables.TArrays(alias); + } +} diff --git a/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/tables/TAuthor.java b/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/tables/TAuthor.java new file mode 100644 index 00000000000..9f336c8c2f6 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/tables/TAuthor.java @@ -0,0 +1,86 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.postgres.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class TAuthor extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = -1272234404; + + /** + * The singleton instance of public.t_author + */ + public static final org.jooq.test.postgres.generatedclasses.tables.TAuthor T_AUTHOR = new org.jooq.test.postgres.generatedclasses.tables.TAuthor(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.postgres.generatedclasses.tables.records.TAuthorRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final org.jooq.TableField ID = createField("id", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField FIRST_NAME = createField("first_name", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField LAST_NAME = createField("last_name", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField DATE_OF_BIRTH = createField("date_of_birth", org.jooq.impl.SQLDataType.DATE, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField YEAR_OF_BIRTH = createField("year_of_birth", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField ADDRESS = createField("address", org.jooq.test.postgres.generatedclasses.udt.UAddressType.U_ADDRESS_TYPE.getDataType(), this); + + public TAuthor() { + super("t_author", org.jooq.test.postgres.generatedclasses.Public.PUBLIC); + } + + public TAuthor(java.lang.String alias) { + super(alias, org.jooq.test.postgres.generatedclasses.Public.PUBLIC, org.jooq.test.postgres.generatedclasses.tables.TAuthor.T_AUTHOR); + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.test.postgres.generatedclasses.Keys.PK_T_AUTHOR; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.test.postgres.generatedclasses.Keys.PK_T_AUTHOR); + } + + @Override + public org.jooq.test.postgres.generatedclasses.tables.TAuthor as(java.lang.String alias) { + return new org.jooq.test.postgres.generatedclasses.tables.TAuthor(alias); + } +} diff --git a/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/tables/TBook.java b/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/tables/TBook.java new file mode 100644 index 00000000000..408b7263514 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/tables/TBook.java @@ -0,0 +1,130 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.postgres.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class TBook extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = 1959463268; + + /** + * The singleton instance of public.t_book + */ + public static final org.jooq.test.postgres.generatedclasses.tables.TBook T_BOOK = new org.jooq.test.postgres.generatedclasses.tables.TBook(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.postgres.generatedclasses.tables.records.TBookRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final org.jooq.TableField ID = createField("id", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT t_book__fk_t_book_author_id
+	 * FOREIGN KEY (author_id)
+	 * REFERENCES public.t_author (id)
+	 * 
+ */ + public final org.jooq.TableField AUTHOR_ID = createField("author_id", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT t_book__fk_t_book_co_author_id
+	 * FOREIGN KEY (co_author_id)
+	 * REFERENCES public.t_author (id)
+	 * 
+ */ + public final org.jooq.TableField CO_AUTHOR_ID = createField("co_author_id", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField DETAILS_ID = createField("details_id", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField TITLE = createField("title", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField PUBLISHED_IN = createField("published_in", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT t_book__fk_t_book_language_id
+	 * FOREIGN KEY (language_id)
+	 * REFERENCES public.t_language (id)
+	 * 
+ */ + public final org.jooq.TableField LANGUAGE_ID = createField("language_id", org.jooq.impl.SQLDataType.INTEGER.asMasterDataType(org.jooq.test.postgres.generatedclasses.enums.TLanguage.class), this); + + /** + * An uncommented item + */ + public final org.jooq.TableField CONTENT_TEXT = createField("content_text", org.jooq.impl.SQLDataType.CLOB, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField CONTENT_PDF = createField("content_pdf", org.jooq.impl.SQLDataType.BLOB, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField STATUS = createField("status", org.jooq.util.postgres.PostgresDataType.VARCHAR.asEnumDataType(org.jooq.test.postgres.generatedclasses.enums.UBookStatus.class), this); + + public TBook() { + super("t_book", org.jooq.test.postgres.generatedclasses.Public.PUBLIC); + } + + public TBook(java.lang.String alias) { + super(alias, org.jooq.test.postgres.generatedclasses.Public.PUBLIC, org.jooq.test.postgres.generatedclasses.tables.TBook.T_BOOK); + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.test.postgres.generatedclasses.Keys.PK_T_BOOK; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.test.postgres.generatedclasses.Keys.PK_T_BOOK); + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getReferences() { + return java.util.Arrays.>asList(org.jooq.test.postgres.generatedclasses.Keys.T_BOOK__FK_T_BOOK_AUTHOR_ID, org.jooq.test.postgres.generatedclasses.Keys.T_BOOK__FK_T_BOOK_CO_AUTHOR_ID); + } + + @Override + public org.jooq.test.postgres.generatedclasses.tables.TBook as(java.lang.String alias) { + return new org.jooq.test.postgres.generatedclasses.tables.TBook(alias); + } +} diff --git a/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/tables/TBookStore.java b/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/tables/TBookStore.java new file mode 100644 index 00000000000..0bd38e62349 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/tables/TBookStore.java @@ -0,0 +1,59 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.postgres.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class TBookStore extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = -89292278; + + /** + * The singleton instance of public.t_book_store + */ + public static final org.jooq.test.postgres.generatedclasses.tables.TBookStore T_BOOK_STORE = new org.jooq.test.postgres.generatedclasses.tables.TBookStore(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.postgres.generatedclasses.tables.records.TBookStoreRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + */ + public final org.jooq.TableField NAME = createField("name", org.jooq.impl.SQLDataType.VARCHAR, this); + + public TBookStore() { + super("t_book_store", org.jooq.test.postgres.generatedclasses.Public.PUBLIC); + } + + public TBookStore(java.lang.String alias) { + super(alias, org.jooq.test.postgres.generatedclasses.Public.PUBLIC, org.jooq.test.postgres.generatedclasses.tables.TBookStore.T_BOOK_STORE); + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.test.postgres.generatedclasses.Keys.UK_T_BOOK_STORE_NAME; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.test.postgres.generatedclasses.Keys.UK_T_BOOK_STORE_NAME); + } + + @Override + public org.jooq.test.postgres.generatedclasses.tables.TBookStore as(java.lang.String alias) { + return new org.jooq.test.postgres.generatedclasses.tables.TBookStore(alias); + } +} diff --git a/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/tables/TBookToBookStore.java b/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/tables/TBookToBookStore.java new file mode 100644 index 00000000000..bfcf3391686 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/tables/TBookToBookStore.java @@ -0,0 +1,91 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.postgres.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class TBookToBookStore extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = -1938084797; + + /** + * The singleton instance of public.t_book_to_book_store + */ + public static final org.jooq.test.postgres.generatedclasses.tables.TBookToBookStore T_BOOK_TO_BOOK_STORE = new org.jooq.test.postgres.generatedclasses.tables.TBookToBookStore(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.postgres.generatedclasses.tables.records.TBookToBookStoreRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT t_book_to_book_store__fk_b2bs_bs_name
+	 * FOREIGN KEY (book_store_name)
+	 * REFERENCES public.t_book_store (name)
+	 * 
+ */ + public final org.jooq.TableField BOOK_STORE_NAME = createField("book_store_name", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT t_book_to_book_store__fk_b2bs_b_id
+	 * FOREIGN KEY (book_id)
+	 * REFERENCES public.t_book (id)
+	 * 
+ */ + public final org.jooq.TableField BOOK_ID = createField("book_id", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField STOCK = createField("stock", org.jooq.impl.SQLDataType.INTEGER, this); + + public TBookToBookStore() { + super("t_book_to_book_store", org.jooq.test.postgres.generatedclasses.Public.PUBLIC); + } + + public TBookToBookStore(java.lang.String alias) { + super(alias, org.jooq.test.postgres.generatedclasses.Public.PUBLIC, org.jooq.test.postgres.generatedclasses.tables.TBookToBookStore.T_BOOK_TO_BOOK_STORE); + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.test.postgres.generatedclasses.Keys.PK_B2BS; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.test.postgres.generatedclasses.Keys.PK_B2BS); + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getReferences() { + return java.util.Arrays.>asList(org.jooq.test.postgres.generatedclasses.Keys.T_BOOK_TO_BOOK_STORE__FK_B2BS_BS_NAME, org.jooq.test.postgres.generatedclasses.Keys.T_BOOK_TO_BOOK_STORE__FK_B2BS_B_ID); + } + + @Override + public org.jooq.test.postgres.generatedclasses.tables.TBookToBookStore as(java.lang.String alias) { + return new org.jooq.test.postgres.generatedclasses.tables.TBookToBookStore(alias); + } +} diff --git a/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/tables/TBooleans.java b/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/tables/TBooleans.java new file mode 100644 index 00000000000..09aedd9bea5 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/tables/TBooleans.java @@ -0,0 +1,111 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.postgres.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class TBooleans extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = -2095232132; + + /** + * The singleton instance of public.t_booleans + */ + public static final org.jooq.test.postgres.generatedclasses.tables.TBooleans T_BOOLEANS = new org.jooq.test.postgres.generatedclasses.tables.TBooleans(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.postgres.generatedclasses.tables.records.TBooleansRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final org.jooq.TableField ID = createField("id", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField ONE_ZERO = createField("one_zero", org.jooq.impl.SQLDataType.INTEGER.asConvertedDataType(new org.jooq.test._.converters.Boolean_10_Converter()), this); + + /** + * An uncommented item + */ + public final org.jooq.TableField TRUE_FALSE_LC = createField("true_false_lc", org.jooq.impl.SQLDataType.VARCHAR.asConvertedDataType(new org.jooq.test._.converters.Boolean_TF_LC_Converter()), this); + + /** + * An uncommented item + */ + public final org.jooq.TableField TRUE_FALSE_UC = createField("true_false_uc", org.jooq.impl.SQLDataType.VARCHAR.asConvertedDataType(new org.jooq.test._.converters.Boolean_TF_UC_Converter()), this); + + /** + * An uncommented item + */ + public final org.jooq.TableField YES_NO_LC = createField("yes_no_lc", org.jooq.impl.SQLDataType.VARCHAR.asConvertedDataType(new org.jooq.test._.converters.Boolean_YES_NO_LC_Converter()), this); + + /** + * An uncommented item + */ + public final org.jooq.TableField YES_NO_UC = createField("yes_no_uc", org.jooq.impl.SQLDataType.VARCHAR.asConvertedDataType(new org.jooq.test._.converters.Boolean_YES_NO_UC_Converter()), this); + + /** + * An uncommented item + */ + public final org.jooq.TableField Y_N_LC = createField("y_n_lc", org.jooq.impl.SQLDataType.CHAR.asConvertedDataType(new org.jooq.test._.converters.Boolean_YN_LC_Converter()), this); + + /** + * An uncommented item + */ + public final org.jooq.TableField Y_N_UC = createField("y_n_uc", org.jooq.impl.SQLDataType.CHAR.asConvertedDataType(new org.jooq.test._.converters.Boolean_YN_UC_Converter()), this); + + /** + * An uncommented item + */ + public final org.jooq.TableField VC_BOOLEAN = createField("vc_boolean", org.jooq.impl.SQLDataType.BOOLEAN, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField C_BOOLEAN = createField("c_boolean", org.jooq.impl.SQLDataType.BOOLEAN, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField N_BOOLEAN = createField("n_boolean", org.jooq.impl.SQLDataType.BOOLEAN, this); + + public TBooleans() { + super("t_booleans", org.jooq.test.postgres.generatedclasses.Public.PUBLIC); + } + + public TBooleans(java.lang.String alias) { + super(alias, org.jooq.test.postgres.generatedclasses.Public.PUBLIC, org.jooq.test.postgres.generatedclasses.tables.TBooleans.T_BOOLEANS); + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.test.postgres.generatedclasses.Keys.PK_T_BOOLEANS; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.test.postgres.generatedclasses.Keys.PK_T_BOOLEANS); + } + + @Override + public org.jooq.test.postgres.generatedclasses.tables.TBooleans as(java.lang.String alias) { + return new org.jooq.test.postgres.generatedclasses.tables.TBooleans(alias); + } +} diff --git a/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/tables/TDates.java b/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/tables/TDates.java new file mode 100644 index 00000000000..49d8fc92922 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/tables/TDates.java @@ -0,0 +1,86 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.postgres.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class TDates extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = 844661429; + + /** + * The singleton instance of public.t_dates + */ + public static final org.jooq.test.postgres.generatedclasses.tables.TDates T_DATES = new org.jooq.test.postgres.generatedclasses.tables.TDates(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.postgres.generatedclasses.tables.records.TDatesRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final org.jooq.TableField ID = createField("id", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField D = createField("d", org.jooq.impl.SQLDataType.DATE, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField T = createField("t", org.jooq.impl.SQLDataType.TIME, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField TS = createField("ts", org.jooq.impl.SQLDataType.TIMESTAMP, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField D_INT = createField("d_int", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField TS_BIGINT = createField("ts_bigint", org.jooq.impl.SQLDataType.BIGINT, this); + + public TDates() { + super("t_dates", org.jooq.test.postgres.generatedclasses.Public.PUBLIC); + } + + public TDates(java.lang.String alias) { + super(alias, org.jooq.test.postgres.generatedclasses.Public.PUBLIC, org.jooq.test.postgres.generatedclasses.tables.TDates.T_DATES); + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.test.postgres.generatedclasses.Keys.PK_T_DATES; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.test.postgres.generatedclasses.Keys.PK_T_DATES); + } + + @Override + public org.jooq.test.postgres.generatedclasses.tables.TDates as(java.lang.String alias) { + return new org.jooq.test.postgres.generatedclasses.tables.TDates(alias); + } +} diff --git a/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/tables/TIdentity.java b/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/tables/TIdentity.java new file mode 100644 index 00000000000..f8e6df6dcbf --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/tables/TIdentity.java @@ -0,0 +1,58 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.postgres.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class TIdentity extends org.jooq.impl.TableImpl { + + private static final long serialVersionUID = 1606867862; + + /** + * The singleton instance of public.t_identity + */ + public static final org.jooq.test.postgres.generatedclasses.tables.TIdentity T_IDENTITY = new org.jooq.test.postgres.generatedclasses.tables.TIdentity(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.postgres.generatedclasses.tables.records.TIdentityRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + */ + public final org.jooq.TableField ID = createField("id", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField VAL = createField("val", org.jooq.impl.SQLDataType.INTEGER, this); + + public TIdentity() { + super("t_identity", org.jooq.test.postgres.generatedclasses.Public.PUBLIC); + } + + public TIdentity(java.lang.String alias) { + super(alias, org.jooq.test.postgres.generatedclasses.Public.PUBLIC, org.jooq.test.postgres.generatedclasses.tables.TIdentity.T_IDENTITY); + } + + @Override + public org.jooq.Identity getIdentity() { + return org.jooq.test.postgres.generatedclasses.Keys.IDENTITY_T_IDENTITY; + } + + @Override + public org.jooq.test.postgres.generatedclasses.tables.TIdentity as(java.lang.String alias) { + return new org.jooq.test.postgres.generatedclasses.tables.TIdentity(alias); + } +} diff --git a/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/tables/TIdentityPk.java b/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/tables/TIdentityPk.java new file mode 100644 index 00000000000..8a751531d6d --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/tables/TIdentityPk.java @@ -0,0 +1,71 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.postgres.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class TIdentityPk extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = -284900954; + + /** + * The singleton instance of public.t_identity_pk + */ + public static final org.jooq.test.postgres.generatedclasses.tables.TIdentityPk T_IDENTITY_PK = new org.jooq.test.postgres.generatedclasses.tables.TIdentityPk(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.postgres.generatedclasses.tables.records.TIdentityPkRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final org.jooq.TableField ID = createField("id", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField VAL = createField("val", org.jooq.impl.SQLDataType.INTEGER, this); + + public TIdentityPk() { + super("t_identity_pk", org.jooq.test.postgres.generatedclasses.Public.PUBLIC); + } + + public TIdentityPk(java.lang.String alias) { + super(alias, org.jooq.test.postgres.generatedclasses.Public.PUBLIC, org.jooq.test.postgres.generatedclasses.tables.TIdentityPk.T_IDENTITY_PK); + } + + @Override + public org.jooq.Identity getIdentity() { + return org.jooq.test.postgres.generatedclasses.Keys.IDENTITY_T_IDENTITY_PK; + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.test.postgres.generatedclasses.Keys.PK_T_IDENTITY_PK; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.test.postgres.generatedclasses.Keys.PK_T_IDENTITY_PK); + } + + @Override + public org.jooq.test.postgres.generatedclasses.tables.TIdentityPk as(java.lang.String alias) { + return new org.jooq.test.postgres.generatedclasses.tables.TIdentityPk(alias); + } +} diff --git a/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/tables/TTriggers.java b/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/tables/TTriggers.java new file mode 100644 index 00000000000..d6ef34a3162 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/tables/TTriggers.java @@ -0,0 +1,76 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.postgres.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class TTriggers extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = -1188171638; + + /** + * The singleton instance of public.t_triggers + */ + public static final org.jooq.test.postgres.generatedclasses.tables.TTriggers T_TRIGGERS = new org.jooq.test.postgres.generatedclasses.tables.TTriggers(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.postgres.generatedclasses.tables.records.TTriggersRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final org.jooq.TableField ID_GENERATED = createField("id_generated", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField ID = createField("id", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField COUNTER = createField("counter", org.jooq.impl.SQLDataType.INTEGER, this); + + public TTriggers() { + super("t_triggers", org.jooq.test.postgres.generatedclasses.Public.PUBLIC); + } + + public TTriggers(java.lang.String alias) { + super(alias, org.jooq.test.postgres.generatedclasses.Public.PUBLIC, org.jooq.test.postgres.generatedclasses.tables.TTriggers.T_TRIGGERS); + } + + @Override + public org.jooq.Identity getIdentity() { + return org.jooq.test.postgres.generatedclasses.Keys.IDENTITY_T_TRIGGERS; + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.test.postgres.generatedclasses.Keys.PK_T_TRIGGERS; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.test.postgres.generatedclasses.Keys.PK_T_TRIGGERS); + } + + @Override + public org.jooq.test.postgres.generatedclasses.tables.TTriggers as(java.lang.String alias) { + return new org.jooq.test.postgres.generatedclasses.tables.TTriggers(alias); + } +} diff --git a/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/tables/T_639NumbersTable.java b/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/tables/T_639NumbersTable.java new file mode 100644 index 00000000000..56210bf88f6 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/tables/T_639NumbersTable.java @@ -0,0 +1,116 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.postgres.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class T_639NumbersTable extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = -1900751603; + + /** + * The singleton instance of public.t_639_numbers_table + */ + public static final org.jooq.test.postgres.generatedclasses.tables.T_639NumbersTable T_639_NUMBERS_TABLE = new org.jooq.test.postgres.generatedclasses.tables.T_639NumbersTable(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.postgres.generatedclasses.tables.records.T_639NumbersTableRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final org.jooq.TableField ID = createField("id", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField SHORT = createField("short", org.jooq.impl.SQLDataType.SMALLINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField INTEGER = createField("integer", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField LONG = createField("long", org.jooq.impl.SQLDataType.BIGINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField BYTE_DECIMAL = createField("byte_decimal", org.jooq.impl.SQLDataType.TINYINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField SHORT_DECIMAL = createField("short_decimal", org.jooq.impl.SQLDataType.SMALLINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField INTEGER_DECIMAL = createField("integer_decimal", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField LONG_DECIMAL = createField("long_decimal", org.jooq.impl.SQLDataType.BIGINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField BIG_INTEGER = createField("big_integer", org.jooq.impl.SQLDataType.DECIMAL_INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField BIG_DECIMAL = createField("big_decimal", org.jooq.impl.SQLDataType.NUMERIC, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField FLOAT = createField("float", org.jooq.impl.SQLDataType.REAL, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField DOUBLE = createField("double", org.jooq.impl.SQLDataType.DOUBLE, this); + + public T_639NumbersTable() { + super("t_639_numbers_table", org.jooq.test.postgres.generatedclasses.Public.PUBLIC); + } + + public T_639NumbersTable(java.lang.String alias) { + super(alias, org.jooq.test.postgres.generatedclasses.Public.PUBLIC, org.jooq.test.postgres.generatedclasses.tables.T_639NumbersTable.T_639_NUMBERS_TABLE); + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.test.postgres.generatedclasses.Keys.PK_T_639_NUMBERS_TABLE; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.test.postgres.generatedclasses.Keys.PK_T_639_NUMBERS_TABLE); + } + + @Override + public org.jooq.test.postgres.generatedclasses.tables.T_639NumbersTable as(java.lang.String alias) { + return new org.jooq.test.postgres.generatedclasses.tables.T_639NumbersTable(alias); + } +} diff --git a/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/tables/T_658Ref.java b/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/tables/T_658Ref.java new file mode 100644 index 00000000000..4ab1f267056 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/tables/T_658Ref.java @@ -0,0 +1,115 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.postgres.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class T_658Ref extends org.jooq.impl.TableImpl { + + private static final long serialVersionUID = -337145079; + + /** + * The singleton instance of public.t_658_ref + */ + public static final org.jooq.test.postgres.generatedclasses.tables.T_658Ref T_658_REF = new org.jooq.test.postgres.generatedclasses.tables.T_658Ref(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.postgres.generatedclasses.tables.records.T_658RefRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT t_658_ref__fk_t_658_11
+	 * FOREIGN KEY (ref_11)
+	 * REFERENCES public.t_658_11 (id)
+	 * 
+ */ + public final org.jooq.TableField REF_11 = createField("ref_11", org.jooq.impl.SQLDataType.CHAR.asMasterDataType(org.jooq.test.postgres.generatedclasses.enums.T_658_11.class), this); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT t_658_ref__fk_t_658_21
+	 * FOREIGN KEY (ref_21)
+	 * REFERENCES public.t_658_21 (id)
+	 * 
+ */ + public final org.jooq.TableField REF_21 = createField("ref_21", org.jooq.impl.SQLDataType.INTEGER.asMasterDataType(org.jooq.test.postgres.generatedclasses.enums.T_658_21.class), this); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT t_658_ref__fk_t_658_31
+	 * FOREIGN KEY (ref_31)
+	 * REFERENCES public.t_658_31 (id)
+	 * 
+ */ + public final org.jooq.TableField REF_31 = createField("ref_31", org.jooq.impl.SQLDataType.BIGINT.asMasterDataType(org.jooq.test.postgres.generatedclasses.enums.T_658_31.class), this); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT t_658_ref__fk_t_658_12
+	 * FOREIGN KEY (ref_12)
+	 * REFERENCES public.t_658_12 (id)
+	 * 
+ */ + public final org.jooq.TableField REF_12 = createField("ref_12", org.jooq.impl.SQLDataType.CHAR.asMasterDataType(org.jooq.test.postgres.generatedclasses.enums.T_658_12.class), this); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT t_658_ref__fk_t_658_22
+	 * FOREIGN KEY (ref_22)
+	 * REFERENCES public.t_658_22 (id)
+	 * 
+ */ + public final org.jooq.TableField REF_22 = createField("ref_22", org.jooq.impl.SQLDataType.INTEGER.asMasterDataType(org.jooq.test.postgres.generatedclasses.enums.T_658_22.class), this); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT t_658_ref__fk_t_658_32
+	 * FOREIGN KEY (ref_32)
+	 * REFERENCES public.t_658_32 (id)
+	 * 
+ */ + public final org.jooq.TableField REF_32 = createField("ref_32", org.jooq.impl.SQLDataType.BIGINT.asMasterDataType(org.jooq.test.postgres.generatedclasses.enums.T_658_32.class), this); + + public T_658Ref() { + super("t_658_ref", org.jooq.test.postgres.generatedclasses.Public.PUBLIC); + } + + public T_658Ref(java.lang.String alias) { + super(alias, org.jooq.test.postgres.generatedclasses.Public.PUBLIC, org.jooq.test.postgres.generatedclasses.tables.T_658Ref.T_658_REF); + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getReferences() { + return java.util.Arrays.>asList(); + } + + @Override + public org.jooq.test.postgres.generatedclasses.tables.T_658Ref as(java.lang.String alias) { + return new org.jooq.test.postgres.generatedclasses.tables.T_658Ref(alias); + } +} diff --git a/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/tables/T_725LobTest.java b/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/tables/T_725LobTest.java new file mode 100644 index 00000000000..16af960de3d --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/tables/T_725LobTest.java @@ -0,0 +1,66 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.postgres.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class T_725LobTest extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = -1755577210; + + /** + * The singleton instance of public.t_725_lob_test + */ + public static final org.jooq.test.postgres.generatedclasses.tables.T_725LobTest T_725_LOB_TEST = new org.jooq.test.postgres.generatedclasses.tables.T_725LobTest(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.postgres.generatedclasses.tables.records.T_725LobTestRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final org.jooq.TableField ID = createField("id", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField LOB = createField("lob", org.jooq.impl.SQLDataType.BLOB, this); + + public T_725LobTest() { + super("t_725_lob_test", org.jooq.test.postgres.generatedclasses.Public.PUBLIC); + } + + public T_725LobTest(java.lang.String alias) { + super(alias, org.jooq.test.postgres.generatedclasses.Public.PUBLIC, org.jooq.test.postgres.generatedclasses.tables.T_725LobTest.T_725_LOB_TEST); + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.test.postgres.generatedclasses.Keys.PK_T_725_LOB_TEST; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.test.postgres.generatedclasses.Keys.PK_T_725_LOB_TEST); + } + + @Override + public org.jooq.test.postgres.generatedclasses.tables.T_725LobTest as(java.lang.String alias) { + return new org.jooq.test.postgres.generatedclasses.tables.T_725LobTest(alias); + } +} diff --git a/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/tables/T_785.java b/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/tables/T_785.java new file mode 100644 index 00000000000..2efd9b5138f --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/tables/T_785.java @@ -0,0 +1,58 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.postgres.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class T_785 extends org.jooq.impl.TableImpl { + + private static final long serialVersionUID = -285823924; + + /** + * The singleton instance of public.t_785 + */ + public static final org.jooq.test.postgres.generatedclasses.tables.T_785 T_785 = new org.jooq.test.postgres.generatedclasses.tables.T_785(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.postgres.generatedclasses.tables.records.T_785Record.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + */ + public final org.jooq.TableField ID = createField("id", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField NAME = createField("name", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField VALUE = createField("value", org.jooq.impl.SQLDataType.VARCHAR, this); + + public T_785() { + super("t_785", org.jooq.test.postgres.generatedclasses.Public.PUBLIC); + } + + public T_785(java.lang.String alias) { + super(alias, org.jooq.test.postgres.generatedclasses.Public.PUBLIC, org.jooq.test.postgres.generatedclasses.tables.T_785.T_785); + } + + @Override + public org.jooq.test.postgres.generatedclasses.tables.T_785 as(java.lang.String alias) { + return new org.jooq.test.postgres.generatedclasses.tables.T_785(alias); + } +} diff --git a/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/tables/T_959.java b/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/tables/T_959.java new file mode 100644 index 00000000000..11ebe46ecd5 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/tables/T_959.java @@ -0,0 +1,48 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.postgres.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class T_959 extends org.jooq.impl.TableImpl { + + private static final long serialVersionUID = -1191695546; + + /** + * The singleton instance of public.t_959 + */ + public static final org.jooq.test.postgres.generatedclasses.tables.T_959 T_959 = new org.jooq.test.postgres.generatedclasses.tables.T_959(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.postgres.generatedclasses.tables.records.T_959Record.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + */ + public final org.jooq.TableField JAVA_KEYWORDS = createField("java_keywords", org.jooq.util.postgres.PostgresDataType.VARCHAR.asEnumDataType(org.jooq.test.postgres.generatedclasses.enums.U_959.class), this); + + public T_959() { + super("t_959", org.jooq.test.postgres.generatedclasses.Public.PUBLIC); + } + + public T_959(java.lang.String alias) { + super(alias, org.jooq.test.postgres.generatedclasses.Public.PUBLIC, org.jooq.test.postgres.generatedclasses.tables.T_959.T_959); + } + + @Override + public org.jooq.test.postgres.generatedclasses.tables.T_959 as(java.lang.String alias) { + return new org.jooq.test.postgres.generatedclasses.tables.T_959(alias); + } +} diff --git a/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/tables/T_986_1.java b/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/tables/T_986_1.java new file mode 100644 index 00000000000..4889d0b84da --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/tables/T_986_1.java @@ -0,0 +1,60 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.postgres.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class T_986_1 extends org.jooq.impl.TableImpl { + + private static final long serialVersionUID = 570729836; + + /** + * The singleton instance of public.t_986_1 + */ + public static final org.jooq.test.postgres.generatedclasses.tables.T_986_1 T_986_1 = new org.jooq.test.postgres.generatedclasses.tables.T_986_1(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.postgres.generatedclasses.tables.records.T_986_1Record.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT t_986_1__fk_986
+	 * FOREIGN KEY (ref, ref)
+	 * REFERENCES public.x_unused (id)
+	 * 
+ */ + public final org.jooq.TableField REF = createField("ref", org.jooq.impl.SQLDataType.INTEGER, this); + + public T_986_1() { + super("t_986_1", org.jooq.test.postgres.generatedclasses.Public.PUBLIC); + } + + public T_986_1(java.lang.String alias) { + super(alias, org.jooq.test.postgres.generatedclasses.Public.PUBLIC, org.jooq.test.postgres.generatedclasses.tables.T_986_1.T_986_1); + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getReferences() { + return java.util.Arrays.>asList(org.jooq.test.postgres.generatedclasses.Keys.T_986_1__FK_986); + } + + @Override + public org.jooq.test.postgres.generatedclasses.tables.T_986_1 as(java.lang.String alias) { + return new org.jooq.test.postgres.generatedclasses.tables.T_986_1(alias); + } +} diff --git a/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/tables/T_986_2.java b/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/tables/T_986_2.java new file mode 100644 index 00000000000..7cd373d0443 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/tables/T_986_2.java @@ -0,0 +1,60 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.postgres.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class T_986_2 extends org.jooq.impl.TableImpl { + + private static final long serialVersionUID = 1389139527; + + /** + * The singleton instance of public.t_986_2 + */ + public static final org.jooq.test.postgres.generatedclasses.tables.T_986_2 T_986_2 = new org.jooq.test.postgres.generatedclasses.tables.T_986_2(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.postgres.generatedclasses.tables.records.T_986_2Record.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT t_986_2__fk_986
+	 * FOREIGN KEY (ref, ref)
+	 * REFERENCES public.x_unused (id)
+	 * 
+ */ + public final org.jooq.TableField REF = createField("ref", org.jooq.impl.SQLDataType.INTEGER, this); + + public T_986_2() { + super("t_986_2", org.jooq.test.postgres.generatedclasses.Public.PUBLIC); + } + + public T_986_2(java.lang.String alias) { + super(alias, org.jooq.test.postgres.generatedclasses.Public.PUBLIC, org.jooq.test.postgres.generatedclasses.tables.T_986_2.T_986_2); + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getReferences() { + return java.util.Arrays.>asList(org.jooq.test.postgres.generatedclasses.Keys.T_986_2__FK_986); + } + + @Override + public org.jooq.test.postgres.generatedclasses.tables.T_986_2 as(java.lang.String alias) { + return new org.jooq.test.postgres.generatedclasses.tables.T_986_2(alias); + } +} diff --git a/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/tables/VAuthor.java b/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/tables/VAuthor.java new file mode 100644 index 00000000000..0326c25e201 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/tables/VAuthor.java @@ -0,0 +1,73 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.postgres.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class VAuthor extends org.jooq.impl.TableImpl { + + private static final long serialVersionUID = 1381798159; + + /** + * The singleton instance of public.v_author + */ + public static final org.jooq.test.postgres.generatedclasses.tables.VAuthor V_AUTHOR = new org.jooq.test.postgres.generatedclasses.tables.VAuthor(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.postgres.generatedclasses.tables.records.VAuthorRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + */ + public final org.jooq.TableField ID = createField("id", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField FIRST_NAME = createField("first_name", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField LAST_NAME = createField("last_name", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField DATE_OF_BIRTH = createField("date_of_birth", org.jooq.impl.SQLDataType.DATE, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField YEAR_OF_BIRTH = createField("year_of_birth", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField ADDRESS = createField("address", org.jooq.test.postgres.generatedclasses.udt.UAddressType.U_ADDRESS_TYPE.getDataType(), this); + + public VAuthor() { + super("v_author", org.jooq.test.postgres.generatedclasses.Public.PUBLIC); + } + + public VAuthor(java.lang.String alias) { + super(alias, org.jooq.test.postgres.generatedclasses.Public.PUBLIC, org.jooq.test.postgres.generatedclasses.tables.VAuthor.V_AUTHOR); + } + + @Override + public org.jooq.test.postgres.generatedclasses.tables.VAuthor as(java.lang.String alias) { + return new org.jooq.test.postgres.generatedclasses.tables.VAuthor(alias); + } +} diff --git a/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/tables/VBook.java b/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/tables/VBook.java new file mode 100644 index 00000000000..9ba5ce37a91 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/tables/VBook.java @@ -0,0 +1,93 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.postgres.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class VBook extends org.jooq.impl.TableImpl { + + private static final long serialVersionUID = -1728984972; + + /** + * The singleton instance of public.v_book + */ + public static final org.jooq.test.postgres.generatedclasses.tables.VBook V_BOOK = new org.jooq.test.postgres.generatedclasses.tables.VBook(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.postgres.generatedclasses.tables.records.VBookRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + */ + public final org.jooq.TableField ID = createField("id", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField AUTHOR_ID = createField("author_id", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField CO_AUTHOR_ID = createField("co_author_id", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField DETAILS_ID = createField("details_id", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField TITLE = createField("title", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField PUBLISHED_IN = createField("published_in", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField LANGUAGE_ID = createField("language_id", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField CONTENT_TEXT = createField("content_text", org.jooq.impl.SQLDataType.CLOB, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField CONTENT_PDF = createField("content_pdf", org.jooq.impl.SQLDataType.BLOB, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField STATUS = createField("status", org.jooq.util.postgres.PostgresDataType.VARCHAR.asEnumDataType(org.jooq.test.postgres.generatedclasses.enums.UBookStatus.class), this); + + public VBook() { + super("v_book", org.jooq.test.postgres.generatedclasses.Public.PUBLIC); + } + + public VBook(java.lang.String alias) { + super(alias, org.jooq.test.postgres.generatedclasses.Public.PUBLIC, org.jooq.test.postgres.generatedclasses.tables.VBook.V_BOOK); + } + + @Override + public org.jooq.test.postgres.generatedclasses.tables.VBook as(java.lang.String alias) { + return new org.jooq.test.postgres.generatedclasses.tables.VBook(alias); + } +} diff --git a/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/tables/VLibrary.java b/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/tables/VLibrary.java new file mode 100644 index 00000000000..7d4a0734776 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/tables/VLibrary.java @@ -0,0 +1,53 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.postgres.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class VLibrary extends org.jooq.impl.TableImpl { + + private static final long serialVersionUID = -269442944; + + /** + * The singleton instance of public.v_library + */ + public static final org.jooq.test.postgres.generatedclasses.tables.VLibrary V_LIBRARY = new org.jooq.test.postgres.generatedclasses.tables.VLibrary(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.postgres.generatedclasses.tables.records.VLibraryRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + */ + public final org.jooq.TableField AUTHOR = createField("author", org.jooq.impl.SQLDataType.CLOB, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField TITLE = createField("title", org.jooq.impl.SQLDataType.VARCHAR, this); + + public VLibrary() { + super("v_library", org.jooq.test.postgres.generatedclasses.Public.PUBLIC); + } + + public VLibrary(java.lang.String alias) { + super(alias, org.jooq.test.postgres.generatedclasses.Public.PUBLIC, org.jooq.test.postgres.generatedclasses.tables.VLibrary.V_LIBRARY); + } + + @Override + public org.jooq.test.postgres.generatedclasses.tables.VLibrary as(java.lang.String alias) { + return new org.jooq.test.postgres.generatedclasses.tables.VLibrary(alias); + } +} diff --git a/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/tables/XTestCase_64_69.java b/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/tables/XTestCase_64_69.java new file mode 100644 index 00000000000..5276e5ef9cd --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/tables/XTestCase_64_69.java @@ -0,0 +1,78 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.postgres.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class XTestCase_64_69 extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = -1463669667; + + /** + * The singleton instance of public.x_test_case_64_69 + */ + public static final org.jooq.test.postgres.generatedclasses.tables.XTestCase_64_69 X_TEST_CASE_64_69 = new org.jooq.test.postgres.generatedclasses.tables.XTestCase_64_69(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.postgres.generatedclasses.tables.records.XTestCase_64_69Record.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final org.jooq.TableField ID = createField("id", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT x_test_case_64_69__fk_x_test_case_64_69a
+	 * FOREIGN KEY (unused_id)
+	 * REFERENCES public.x_unused (id)
+	 * 
+ */ + public final org.jooq.TableField UNUSED_ID = createField("unused_id", org.jooq.impl.SQLDataType.INTEGER, this); + + public XTestCase_64_69() { + super("x_test_case_64_69", org.jooq.test.postgres.generatedclasses.Public.PUBLIC); + } + + public XTestCase_64_69(java.lang.String alias) { + super(alias, org.jooq.test.postgres.generatedclasses.Public.PUBLIC, org.jooq.test.postgres.generatedclasses.tables.XTestCase_64_69.X_TEST_CASE_64_69); + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.test.postgres.generatedclasses.Keys.PK_X_TEST_CASE_64_69; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.test.postgres.generatedclasses.Keys.PK_X_TEST_CASE_64_69); + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getReferences() { + return java.util.Arrays.>asList(org.jooq.test.postgres.generatedclasses.Keys.X_TEST_CASE_64_69__FK_X_TEST_CASE_64_69A); + } + + @Override + public org.jooq.test.postgres.generatedclasses.tables.XTestCase_64_69 as(java.lang.String alias) { + return new org.jooq.test.postgres.generatedclasses.tables.XTestCase_64_69(alias); + } +} diff --git a/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/tables/XTestCase_71.java b/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/tables/XTestCase_71.java new file mode 100644 index 00000000000..ef6c9cb1a38 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/tables/XTestCase_71.java @@ -0,0 +1,78 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.postgres.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class XTestCase_71 extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = -2071404089; + + /** + * The singleton instance of public.x_test_case_71 + */ + public static final org.jooq.test.postgres.generatedclasses.tables.XTestCase_71 X_TEST_CASE_71 = new org.jooq.test.postgres.generatedclasses.tables.XTestCase_71(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.postgres.generatedclasses.tables.records.XTestCase_71Record.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final org.jooq.TableField ID = createField("id", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT x_test_case_71__fk_x_test_case_71
+	 * FOREIGN KEY (test_case_64_69_id)
+	 * REFERENCES public.x_test_case_64_69 (id)
+	 * 
+ */ + public final org.jooq.TableField TEST_CASE_64_69_ID = createField("test_case_64_69_id", org.jooq.impl.SQLDataType.SMALLINT, this); + + public XTestCase_71() { + super("x_test_case_71", org.jooq.test.postgres.generatedclasses.Public.PUBLIC); + } + + public XTestCase_71(java.lang.String alias) { + super(alias, org.jooq.test.postgres.generatedclasses.Public.PUBLIC, org.jooq.test.postgres.generatedclasses.tables.XTestCase_71.X_TEST_CASE_71); + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.test.postgres.generatedclasses.Keys.PK_X_TEST_CASE_71; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.test.postgres.generatedclasses.Keys.PK_X_TEST_CASE_71); + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getReferences() { + return java.util.Arrays.>asList(org.jooq.test.postgres.generatedclasses.Keys.X_TEST_CASE_71__FK_X_TEST_CASE_71); + } + + @Override + public org.jooq.test.postgres.generatedclasses.tables.XTestCase_71 as(java.lang.String alias) { + return new org.jooq.test.postgres.generatedclasses.tables.XTestCase_71(alias); + } +} diff --git a/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/tables/XTestCase_85.java b/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/tables/XTestCase_85.java new file mode 100644 index 00000000000..cfc01aecf9e --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/tables/XTestCase_85.java @@ -0,0 +1,89 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.postgres.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class XTestCase_85 extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = -463413071; + + /** + * The singleton instance of public.x_test_case_85 + */ + public static final org.jooq.test.postgres.generatedclasses.tables.XTestCase_85 X_TEST_CASE_85 = new org.jooq.test.postgres.generatedclasses.tables.XTestCase_85(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.postgres.generatedclasses.tables.records.XTestCase_85Record.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final org.jooq.TableField ID = createField("id", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT x_test_case_85__fk_x_test_case_85
+	 * FOREIGN KEY (x_unused_id, x_unused_name)
+	 * REFERENCES public.x_unused (id, name)
+	 * 
+ */ + public final org.jooq.TableField X_UNUSED_ID = createField("x_unused_id", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT x_test_case_85__fk_x_test_case_85
+	 * FOREIGN KEY (x_unused_id, x_unused_name)
+	 * REFERENCES public.x_unused (id, name)
+	 * 
+ */ + public final org.jooq.TableField X_UNUSED_NAME = createField("x_unused_name", org.jooq.impl.SQLDataType.VARCHAR, this); + + public XTestCase_85() { + super("x_test_case_85", org.jooq.test.postgres.generatedclasses.Public.PUBLIC); + } + + public XTestCase_85(java.lang.String alias) { + super(alias, org.jooq.test.postgres.generatedclasses.Public.PUBLIC, org.jooq.test.postgres.generatedclasses.tables.XTestCase_85.X_TEST_CASE_85); + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.test.postgres.generatedclasses.Keys.PK_X_TEST_CASE_85; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.test.postgres.generatedclasses.Keys.PK_X_TEST_CASE_85); + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getReferences() { + return java.util.Arrays.>asList(org.jooq.test.postgres.generatedclasses.Keys.X_TEST_CASE_85__FK_X_TEST_CASE_85); + } + + @Override + public org.jooq.test.postgres.generatedclasses.tables.XTestCase_85 as(java.lang.String alias) { + return new org.jooq.test.postgres.generatedclasses.tables.XTestCase_85(alias); + } +} diff --git a/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/tables/XUnused.java b/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/tables/XUnused.java new file mode 100644 index 00000000000..72fd7070c2a --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/tables/XUnused.java @@ -0,0 +1,151 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.postgres.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class XUnused extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = 1521642649; + + /** + * The singleton instance of public.x_unused + */ + public static final org.jooq.test.postgres.generatedclasses.tables.XUnused X_UNUSED = new org.jooq.test.postgres.generatedclasses.tables.XUnused(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.postgres.generatedclasses.tables.records.XUnusedRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final org.jooq.TableField ID = createField("id", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final org.jooq.TableField NAME = createField("name", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField BIG_INTEGER = createField("big_integer", org.jooq.impl.SQLDataType.DECIMAL_INTEGER, this); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT x_unused__fk_x_unused_self
+	 * FOREIGN KEY (id_ref, name_ref)
+	 * REFERENCES public.x_unused (id, name)
+	 * 
+ */ + public final org.jooq.TableField ID_REF = createField("id_ref", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField CLASS = createField("class", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField FIELDS = createField("fields", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField CONFIGURATION = createField("configuration", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField U_D_T = createField("u_d_t", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField META_DATA = createField("meta_data", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField VALUES = createField("values", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField TYPE0 = createField("type0", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField PRIMARY_KEY = createField("primary_key", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField PRIMARYKEY = createField("primarykey", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT x_unused__fk_x_unused_self
+	 * FOREIGN KEY (id_ref, name_ref)
+	 * REFERENCES public.x_unused (id, name)
+	 * 
+ */ + public final org.jooq.TableField NAME_REF = createField("name_ref", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField FIELD_737 = createField("FIELD 737", org.jooq.impl.SQLDataType.NUMERIC, this); + + public XUnused() { + super("x_unused", org.jooq.test.postgres.generatedclasses.Public.PUBLIC); + } + + public XUnused(java.lang.String alias) { + super(alias, org.jooq.test.postgres.generatedclasses.Public.PUBLIC, org.jooq.test.postgres.generatedclasses.tables.XUnused.X_UNUSED); + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.test.postgres.generatedclasses.Keys.PK_X_UNUSED; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.test.postgres.generatedclasses.Keys.PK_X_UNUSED, org.jooq.test.postgres.generatedclasses.Keys.UK_X_UNUSED_ID); + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getReferences() { + return java.util.Arrays.>asList(org.jooq.test.postgres.generatedclasses.Keys.X_UNUSED__FK_X_UNUSED_SELF); + } + + @Override + public org.jooq.test.postgres.generatedclasses.tables.XUnused as(java.lang.String alias) { + return new org.jooq.test.postgres.generatedclasses.tables.XUnused(alias); + } +} diff --git a/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/tables/pojos/TArrays.java b/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/tables/pojos/TArrays.java new file mode 100644 index 00000000000..e6315b8cf3c --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/tables/pojos/TArrays.java @@ -0,0 +1,86 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.postgres.generatedclasses.tables.pojos; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "t_arrays", schema = "public") +public class TArrays implements java.io.Serializable { + + private static final long serialVersionUID = 1364838127; + + private java.lang.Integer id; + private java.lang.String[] stringArray; + private java.lang.Integer[] numberArray; + private java.sql.Date[] dateArray; + private org.jooq.test.postgres.generatedclasses.udt.records.UStreetTypeRecord[] udtArray; + private org.jooq.test.postgres.generatedclasses.enums.UCountry[] enumArray; + private java.lang.Integer[] arrayArray; + + @javax.persistence.Id + @javax.persistence.Column(name = "id", unique = true, nullable = false, precision = 32) + public java.lang.Integer getId() { + return this.id; + } + + public void setId(java.lang.Integer id) { + this.id = id; + } + + @javax.persistence.Column(name = "string_array") + public java.lang.String[] getStringArray() { + return this.stringArray; + } + + public void setStringArray(java.lang.String[] stringArray) { + this.stringArray = stringArray; + } + + @javax.persistence.Column(name = "number_array") + public java.lang.Integer[] getNumberArray() { + return this.numberArray; + } + + public void setNumberArray(java.lang.Integer[] numberArray) { + this.numberArray = numberArray; + } + + @javax.persistence.Column(name = "date_array") + public java.sql.Date[] getDateArray() { + return this.dateArray; + } + + public void setDateArray(java.sql.Date[] dateArray) { + this.dateArray = dateArray; + } + + @javax.persistence.Column(name = "udt_array") + public org.jooq.test.postgres.generatedclasses.udt.records.UStreetTypeRecord[] getUdtArray() { + return this.udtArray; + } + + public void setUdtArray(org.jooq.test.postgres.generatedclasses.udt.records.UStreetTypeRecord[] udtArray) { + this.udtArray = udtArray; + } + + @javax.persistence.Column(name = "enum_array") + public org.jooq.test.postgres.generatedclasses.enums.UCountry[] getEnumArray() { + return this.enumArray; + } + + public void setEnumArray(org.jooq.test.postgres.generatedclasses.enums.UCountry[] enumArray) { + this.enumArray = enumArray; + } + + @javax.persistence.Column(name = "array_array") + public java.lang.Integer[] getArrayArray() { + return this.arrayArray; + } + + public void setArrayArray(java.lang.Integer[] arrayArray) { + this.arrayArray = arrayArray; + } +} diff --git a/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/tables/pojos/TAuthor.java b/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/tables/pojos/TAuthor.java new file mode 100644 index 00000000000..a907e72ec2e --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/tables/pojos/TAuthor.java @@ -0,0 +1,76 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.postgres.generatedclasses.tables.pojos; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "t_author", schema = "public") +public class TAuthor implements java.io.Serializable { + + private static final long serialVersionUID = 2012525505; + + private java.lang.Integer id; + private java.lang.String firstName; + private java.lang.String lastName; + private java.sql.Date dateOfBirth; + private java.lang.Integer yearOfBirth; + private org.jooq.test.postgres.generatedclasses.udt.records.UAddressTypeRecord address; + + @javax.persistence.Id + @javax.persistence.Column(name = "id", unique = true, nullable = false, precision = 32) + public java.lang.Integer getId() { + return this.id; + } + + public void setId(java.lang.Integer id) { + this.id = id; + } + + @javax.persistence.Column(name = "first_name", length = 50) + public java.lang.String getFirstName() { + return this.firstName; + } + + public void setFirstName(java.lang.String firstName) { + this.firstName = firstName; + } + + @javax.persistence.Column(name = "last_name", nullable = false, length = 50) + public java.lang.String getLastName() { + return this.lastName; + } + + public void setLastName(java.lang.String lastName) { + this.lastName = lastName; + } + + @javax.persistence.Column(name = "date_of_birth") + public java.sql.Date getDateOfBirth() { + return this.dateOfBirth; + } + + public void setDateOfBirth(java.sql.Date dateOfBirth) { + this.dateOfBirth = dateOfBirth; + } + + @javax.persistence.Column(name = "year_of_birth", precision = 32) + public java.lang.Integer getYearOfBirth() { + return this.yearOfBirth; + } + + public void setYearOfBirth(java.lang.Integer yearOfBirth) { + this.yearOfBirth = yearOfBirth; + } + + @javax.persistence.Column(name = "address") + public org.jooq.test.postgres.generatedclasses.udt.records.UAddressTypeRecord getAddress() { + return this.address; + } + + public void setAddress(org.jooq.test.postgres.generatedclasses.udt.records.UAddressTypeRecord address) { + this.address = address; + } +} diff --git a/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/tables/pojos/TBook.java b/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/tables/pojos/TBook.java new file mode 100644 index 00000000000..7e079887e5b --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/tables/pojos/TBook.java @@ -0,0 +1,116 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.postgres.generatedclasses.tables.pojos; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "t_book", schema = "public") +public class TBook implements java.io.Serializable { + + private static final long serialVersionUID = 254221809; + + private java.lang.Integer id; + private java.lang.Integer authorId; + private java.lang.Integer coAuthorId; + private java.lang.Integer detailsId; + private java.lang.String title; + private java.lang.Integer publishedIn; + private org.jooq.test.postgres.generatedclasses.enums.TLanguage languageId; + private java.lang.String contentText; + private byte[] contentPdf; + private org.jooq.test.postgres.generatedclasses.enums.UBookStatus status; + + @javax.persistence.Id + @javax.persistence.Column(name = "id", unique = true, nullable = false, precision = 32) + public java.lang.Integer getId() { + return this.id; + } + + public void setId(java.lang.Integer id) { + this.id = id; + } + + @javax.persistence.Column(name = "author_id", nullable = false, precision = 32) + public java.lang.Integer getAuthorId() { + return this.authorId; + } + + public void setAuthorId(java.lang.Integer authorId) { + this.authorId = authorId; + } + + @javax.persistence.Column(name = "co_author_id", precision = 32) + public java.lang.Integer getCoAuthorId() { + return this.coAuthorId; + } + + public void setCoAuthorId(java.lang.Integer coAuthorId) { + this.coAuthorId = coAuthorId; + } + + @javax.persistence.Column(name = "details_id", precision = 32) + public java.lang.Integer getDetailsId() { + return this.detailsId; + } + + public void setDetailsId(java.lang.Integer detailsId) { + this.detailsId = detailsId; + } + + @javax.persistence.Column(name = "title", nullable = false, length = 400) + public java.lang.String getTitle() { + return this.title; + } + + public void setTitle(java.lang.String title) { + this.title = title; + } + + @javax.persistence.Column(name = "published_in", nullable = false, precision = 32) + public java.lang.Integer getPublishedIn() { + return this.publishedIn; + } + + public void setPublishedIn(java.lang.Integer publishedIn) { + this.publishedIn = publishedIn; + } + + @javax.persistence.Column(name = "language_id", nullable = false, precision = 32) + public org.jooq.test.postgres.generatedclasses.enums.TLanguage getLanguageId() { + return this.languageId; + } + + public void setLanguageId(org.jooq.test.postgres.generatedclasses.enums.TLanguage languageId) { + this.languageId = languageId; + } + + @javax.persistence.Column(name = "content_text") + public java.lang.String getContentText() { + return this.contentText; + } + + public void setContentText(java.lang.String contentText) { + this.contentText = contentText; + } + + @javax.persistence.Column(name = "content_pdf") + public byte[] getContentPdf() { + return this.contentPdf; + } + + public void setContentPdf(byte[] contentPdf) { + this.contentPdf = contentPdf; + } + + @javax.persistence.Column(name = "status") + public org.jooq.test.postgres.generatedclasses.enums.UBookStatus getStatus() { + return this.status; + } + + public void setStatus(org.jooq.test.postgres.generatedclasses.enums.UBookStatus status) { + this.status = status; + } +} diff --git a/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/tables/pojos/TBookStore.java b/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/tables/pojos/TBookStore.java new file mode 100644 index 00000000000..771a7642918 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/tables/pojos/TBookStore.java @@ -0,0 +1,25 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.postgres.generatedclasses.tables.pojos; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "t_book_store", schema = "public") +public class TBookStore implements java.io.Serializable { + + private static final long serialVersionUID = 1931214125; + + private java.lang.String name; + + @javax.persistence.Column(name = "name", unique = true, nullable = false, length = 400) + public java.lang.String getName() { + return this.name; + } + + public void setName(java.lang.String name) { + this.name = name; + } +} diff --git a/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/tables/pojos/TBookToBookStore.java b/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/tables/pojos/TBookToBookStore.java new file mode 100644 index 00000000000..b0cad6ad86f --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/tables/pojos/TBookToBookStore.java @@ -0,0 +1,47 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.postgres.generatedclasses.tables.pojos; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "t_book_to_book_store", schema = "public", uniqueConstraints = { + @javax.persistence.UniqueConstraint(columnNames = {"book_store_name", "book_id"}) +}) +public class TBookToBookStore implements java.io.Serializable { + + private static final long serialVersionUID = -721401051; + + private java.lang.String bookStoreName; + private java.lang.Integer bookId; + private java.lang.Integer stock; + + @javax.persistence.Column(name = "book_store_name", nullable = false, length = 400) + public java.lang.String getBookStoreName() { + return this.bookStoreName; + } + + public void setBookStoreName(java.lang.String bookStoreName) { + this.bookStoreName = bookStoreName; + } + + @javax.persistence.Column(name = "book_id", nullable = false, precision = 32) + public java.lang.Integer getBookId() { + return this.bookId; + } + + public void setBookId(java.lang.Integer bookId) { + this.bookId = bookId; + } + + @javax.persistence.Column(name = "stock", precision = 32) + public java.lang.Integer getStock() { + return this.stock; + } + + public void setStock(java.lang.Integer stock) { + this.stock = stock; + } +} diff --git a/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/tables/pojos/TBooleans.java b/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/tables/pojos/TBooleans.java new file mode 100644 index 00000000000..7cf6a7ca21b --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/tables/pojos/TBooleans.java @@ -0,0 +1,126 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.postgres.generatedclasses.tables.pojos; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "t_booleans", schema = "public") +public class TBooleans implements java.io.Serializable { + + private static final long serialVersionUID = 100665143; + + private java.lang.Integer id; + private org.jooq.test._.converters.Boolean_10 oneZero; + private org.jooq.test._.converters.Boolean_TF_LC trueFalseLc; + private org.jooq.test._.converters.Boolean_TF_UC trueFalseUc; + private org.jooq.test._.converters.Boolean_YES_NO_LC yesNoLc; + private org.jooq.test._.converters.Boolean_YES_NO_UC yesNoUc; + private org.jooq.test._.converters.Boolean_YN_LC yNLc; + private org.jooq.test._.converters.Boolean_YN_UC yNUc; + private java.lang.Boolean vcBoolean; + private java.lang.Boolean cBoolean; + private java.lang.Boolean nBoolean; + + @javax.persistence.Id + @javax.persistence.Column(name = "id", unique = true, nullable = false, precision = 32) + public java.lang.Integer getId() { + return this.id; + } + + public void setId(java.lang.Integer id) { + this.id = id; + } + + @javax.persistence.Column(name = "one_zero", precision = 32) + public org.jooq.test._.converters.Boolean_10 getOneZero() { + return this.oneZero; + } + + public void setOneZero(org.jooq.test._.converters.Boolean_10 oneZero) { + this.oneZero = oneZero; + } + + @javax.persistence.Column(name = "true_false_lc", length = 5) + public org.jooq.test._.converters.Boolean_TF_LC getTrueFalseLc() { + return this.trueFalseLc; + } + + public void setTrueFalseLc(org.jooq.test._.converters.Boolean_TF_LC trueFalseLc) { + this.trueFalseLc = trueFalseLc; + } + + @javax.persistence.Column(name = "true_false_uc", length = 5) + public org.jooq.test._.converters.Boolean_TF_UC getTrueFalseUc() { + return this.trueFalseUc; + } + + public void setTrueFalseUc(org.jooq.test._.converters.Boolean_TF_UC trueFalseUc) { + this.trueFalseUc = trueFalseUc; + } + + @javax.persistence.Column(name = "yes_no_lc", length = 3) + public org.jooq.test._.converters.Boolean_YES_NO_LC getYesNoLc() { + return this.yesNoLc; + } + + public void setYesNoLc(org.jooq.test._.converters.Boolean_YES_NO_LC yesNoLc) { + this.yesNoLc = yesNoLc; + } + + @javax.persistence.Column(name = "yes_no_uc", length = 3) + public org.jooq.test._.converters.Boolean_YES_NO_UC getYesNoUc() { + return this.yesNoUc; + } + + public void setYesNoUc(org.jooq.test._.converters.Boolean_YES_NO_UC yesNoUc) { + this.yesNoUc = yesNoUc; + } + + @javax.persistence.Column(name = "y_n_lc", length = 1) + public org.jooq.test._.converters.Boolean_YN_LC getYNLc() { + return this.yNLc; + } + + public void setYNLc(org.jooq.test._.converters.Boolean_YN_LC yNLc) { + this.yNLc = yNLc; + } + + @javax.persistence.Column(name = "y_n_uc", length = 1) + public org.jooq.test._.converters.Boolean_YN_UC getYNUc() { + return this.yNUc; + } + + public void setYNUc(org.jooq.test._.converters.Boolean_YN_UC yNUc) { + this.yNUc = yNUc; + } + + @javax.persistence.Column(name = "vc_boolean", length = 1) + public java.lang.Boolean getVcBoolean() { + return this.vcBoolean; + } + + public void setVcBoolean(java.lang.Boolean vcBoolean) { + this.vcBoolean = vcBoolean; + } + + @javax.persistence.Column(name = "c_boolean", length = 1) + public java.lang.Boolean getCBoolean() { + return this.cBoolean; + } + + public void setCBoolean(java.lang.Boolean cBoolean) { + this.cBoolean = cBoolean; + } + + @javax.persistence.Column(name = "n_boolean", precision = 32) + public java.lang.Boolean getNBoolean() { + return this.nBoolean; + } + + public void setNBoolean(java.lang.Boolean nBoolean) { + this.nBoolean = nBoolean; + } +} diff --git a/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/tables/pojos/TDates.java b/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/tables/pojos/TDates.java new file mode 100644 index 00000000000..ecd39c8b16e --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/tables/pojos/TDates.java @@ -0,0 +1,76 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.postgres.generatedclasses.tables.pojos; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "t_dates", schema = "public") +public class TDates implements java.io.Serializable { + + private static final long serialVersionUID = -393297184; + + private java.lang.Integer id; + private java.sql.Date d; + private java.sql.Time t; + private java.sql.Timestamp ts; + private java.lang.Integer dInt; + private java.lang.Long tsBigint; + + @javax.persistence.Id + @javax.persistence.Column(name = "id", unique = true, nullable = false, precision = 32) + public java.lang.Integer getId() { + return this.id; + } + + public void setId(java.lang.Integer id) { + this.id = id; + } + + @javax.persistence.Column(name = "d") + public java.sql.Date getD() { + return this.d; + } + + public void setD(java.sql.Date d) { + this.d = d; + } + + @javax.persistence.Column(name = "t") + public java.sql.Time getT() { + return this.t; + } + + public void setT(java.sql.Time t) { + this.t = t; + } + + @javax.persistence.Column(name = "ts") + public java.sql.Timestamp getTs() { + return this.ts; + } + + public void setTs(java.sql.Timestamp ts) { + this.ts = ts; + } + + @javax.persistence.Column(name = "d_int", precision = 32) + public java.lang.Integer getDInt() { + return this.dInt; + } + + public void setDInt(java.lang.Integer dInt) { + this.dInt = dInt; + } + + @javax.persistence.Column(name = "ts_bigint", precision = 64) + public java.lang.Long getTsBigint() { + return this.tsBigint; + } + + public void setTsBigint(java.lang.Long tsBigint) { + this.tsBigint = tsBigint; + } +} diff --git a/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/tables/pojos/TIdentity.java b/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/tables/pojos/TIdentity.java new file mode 100644 index 00000000000..2b71711e7ce --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/tables/pojos/TIdentity.java @@ -0,0 +1,35 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.postgres.generatedclasses.tables.pojos; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "t_identity", schema = "public") +public class TIdentity implements java.io.Serializable { + + private static final long serialVersionUID = 763706405; + + private java.lang.Integer id; + private java.lang.Integer val; + + @javax.persistence.Column(name = "id", nullable = false, precision = 32) + public java.lang.Integer getId() { + return this.id; + } + + public void setId(java.lang.Integer id) { + this.id = id; + } + + @javax.persistence.Column(name = "val", precision = 32) + public java.lang.Integer getVal() { + return this.val; + } + + public void setVal(java.lang.Integer val) { + this.val = val; + } +} diff --git a/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/tables/pojos/TIdentityPk.java b/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/tables/pojos/TIdentityPk.java new file mode 100644 index 00000000000..5b4a2583e28 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/tables/pojos/TIdentityPk.java @@ -0,0 +1,36 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.postgres.generatedclasses.tables.pojos; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "t_identity_pk", schema = "public") +public class TIdentityPk implements java.io.Serializable { + + private static final long serialVersionUID = 2021214249; + + private java.lang.Integer id; + private java.lang.Integer val; + + @javax.persistence.Id + @javax.persistence.Column(name = "id", unique = true, nullable = false, precision = 32) + public java.lang.Integer getId() { + return this.id; + } + + public void setId(java.lang.Integer id) { + this.id = id; + } + + @javax.persistence.Column(name = "val", precision = 32) + public java.lang.Integer getVal() { + return this.val; + } + + public void setVal(java.lang.Integer val) { + this.val = val; + } +} diff --git a/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/tables/pojos/TTriggers.java b/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/tables/pojos/TTriggers.java new file mode 100644 index 00000000000..4b88a66d524 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/tables/pojos/TTriggers.java @@ -0,0 +1,46 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.postgres.generatedclasses.tables.pojos; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "t_triggers", schema = "public") +public class TTriggers implements java.io.Serializable { + + private static final long serialVersionUID = -276004572; + + private java.lang.Integer idGenerated; + private java.lang.Integer id; + private java.lang.Integer counter; + + @javax.persistence.Id + @javax.persistence.Column(name = "id_generated", unique = true, nullable = false, precision = 32) + public java.lang.Integer getIdGenerated() { + return this.idGenerated; + } + + public void setIdGenerated(java.lang.Integer idGenerated) { + this.idGenerated = idGenerated; + } + + @javax.persistence.Column(name = "id", precision = 32) + public java.lang.Integer getId() { + return this.id; + } + + public void setId(java.lang.Integer id) { + this.id = id; + } + + @javax.persistence.Column(name = "counter", precision = 32) + public java.lang.Integer getCounter() { + return this.counter; + } + + public void setCounter(java.lang.Integer counter) { + this.counter = counter; + } +} diff --git a/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/tables/pojos/T_639NumbersTable.java b/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/tables/pojos/T_639NumbersTable.java new file mode 100644 index 00000000000..2d17887be24 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/tables/pojos/T_639NumbersTable.java @@ -0,0 +1,136 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.postgres.generatedclasses.tables.pojos; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "t_639_numbers_table", schema = "public") +public class T_639NumbersTable implements java.io.Serializable { + + private static final long serialVersionUID = -876805676; + + private java.lang.Integer id; + private java.lang.Short short_; + private java.lang.Integer integer; + private java.lang.Long long_; + private java.lang.Byte byteDecimal; + private java.lang.Short shortDecimal; + private java.lang.Integer integerDecimal; + private java.lang.Long longDecimal; + private java.math.BigInteger bigInteger; + private java.math.BigDecimal bigDecimal; + private java.lang.Float float_; + private java.lang.Double double_; + + @javax.persistence.Id + @javax.persistence.Column(name = "id", unique = true, nullable = false, precision = 32) + public java.lang.Integer getId() { + return this.id; + } + + public void setId(java.lang.Integer id) { + this.id = id; + } + + @javax.persistence.Column(name = "short", precision = 16) + public java.lang.Short getShort() { + return this.short_; + } + + public void setShort(java.lang.Short short_) { + this.short_ = short_; + } + + @javax.persistence.Column(name = "integer", precision = 32) + public java.lang.Integer getInteger() { + return this.integer; + } + + public void setInteger(java.lang.Integer integer) { + this.integer = integer; + } + + @javax.persistence.Column(name = "long", precision = 64) + public java.lang.Long getLong() { + return this.long_; + } + + public void setLong(java.lang.Long long_) { + this.long_ = long_; + } + + @javax.persistence.Column(name = "byte_decimal", precision = 2) + public java.lang.Byte getByteDecimal() { + return this.byteDecimal; + } + + public void setByteDecimal(java.lang.Byte byteDecimal) { + this.byteDecimal = byteDecimal; + } + + @javax.persistence.Column(name = "short_decimal", precision = 4) + public java.lang.Short getShortDecimal() { + return this.shortDecimal; + } + + public void setShortDecimal(java.lang.Short shortDecimal) { + this.shortDecimal = shortDecimal; + } + + @javax.persistence.Column(name = "integer_decimal", precision = 9) + public java.lang.Integer getIntegerDecimal() { + return this.integerDecimal; + } + + public void setIntegerDecimal(java.lang.Integer integerDecimal) { + this.integerDecimal = integerDecimal; + } + + @javax.persistence.Column(name = "long_decimal", precision = 18) + public java.lang.Long getLongDecimal() { + return this.longDecimal; + } + + public void setLongDecimal(java.lang.Long longDecimal) { + this.longDecimal = longDecimal; + } + + @javax.persistence.Column(name = "big_integer", precision = 22) + public java.math.BigInteger getBigInteger() { + return this.bigInteger; + } + + public void setBigInteger(java.math.BigInteger bigInteger) { + this.bigInteger = bigInteger; + } + + @javax.persistence.Column(name = "big_decimal", precision = 22, scale = 5) + public java.math.BigDecimal getBigDecimal() { + return this.bigDecimal; + } + + public void setBigDecimal(java.math.BigDecimal bigDecimal) { + this.bigDecimal = bigDecimal; + } + + @javax.persistence.Column(name = "float", precision = 24) + public java.lang.Float getFloat() { + return this.float_; + } + + public void setFloat(java.lang.Float float_) { + this.float_ = float_; + } + + @javax.persistence.Column(name = "double", precision = 53) + public java.lang.Double getDouble() { + return this.double_; + } + + public void setDouble(java.lang.Double double_) { + this.double_ = double_; + } +} diff --git a/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/tables/pojos/T_658Ref.java b/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/tables/pojos/T_658Ref.java new file mode 100644 index 00000000000..4871ea86485 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/tables/pojos/T_658Ref.java @@ -0,0 +1,75 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.postgres.generatedclasses.tables.pojos; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "t_658_ref", schema = "public") +public class T_658Ref implements java.io.Serializable { + + private static final long serialVersionUID = -523230991; + + private org.jooq.test.postgres.generatedclasses.enums.T_658_11 ref_11; + private org.jooq.test.postgres.generatedclasses.enums.T_658_21 ref_21; + private org.jooq.test.postgres.generatedclasses.enums.T_658_31 ref_31; + private org.jooq.test.postgres.generatedclasses.enums.T_658_12 ref_12; + private org.jooq.test.postgres.generatedclasses.enums.T_658_22 ref_22; + private org.jooq.test.postgres.generatedclasses.enums.T_658_32 ref_32; + + @javax.persistence.Column(name = "ref_11", length = 3) + public org.jooq.test.postgres.generatedclasses.enums.T_658_11 getRef_11() { + return this.ref_11; + } + + public void setRef_11(org.jooq.test.postgres.generatedclasses.enums.T_658_11 ref_11) { + this.ref_11 = ref_11; + } + + @javax.persistence.Column(name = "ref_21", precision = 32) + public org.jooq.test.postgres.generatedclasses.enums.T_658_21 getRef_21() { + return this.ref_21; + } + + public void setRef_21(org.jooq.test.postgres.generatedclasses.enums.T_658_21 ref_21) { + this.ref_21 = ref_21; + } + + @javax.persistence.Column(name = "ref_31", precision = 64) + public org.jooq.test.postgres.generatedclasses.enums.T_658_31 getRef_31() { + return this.ref_31; + } + + public void setRef_31(org.jooq.test.postgres.generatedclasses.enums.T_658_31 ref_31) { + this.ref_31 = ref_31; + } + + @javax.persistence.Column(name = "ref_12", length = 3) + public org.jooq.test.postgres.generatedclasses.enums.T_658_12 getRef_12() { + return this.ref_12; + } + + public void setRef_12(org.jooq.test.postgres.generatedclasses.enums.T_658_12 ref_12) { + this.ref_12 = ref_12; + } + + @javax.persistence.Column(name = "ref_22", precision = 32) + public org.jooq.test.postgres.generatedclasses.enums.T_658_22 getRef_22() { + return this.ref_22; + } + + public void setRef_22(org.jooq.test.postgres.generatedclasses.enums.T_658_22 ref_22) { + this.ref_22 = ref_22; + } + + @javax.persistence.Column(name = "ref_32", precision = 64) + public org.jooq.test.postgres.generatedclasses.enums.T_658_32 getRef_32() { + return this.ref_32; + } + + public void setRef_32(org.jooq.test.postgres.generatedclasses.enums.T_658_32 ref_32) { + this.ref_32 = ref_32; + } +} diff --git a/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/tables/pojos/T_725LobTest.java b/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/tables/pojos/T_725LobTest.java new file mode 100644 index 00000000000..2eb904f8250 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/tables/pojos/T_725LobTest.java @@ -0,0 +1,36 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.postgres.generatedclasses.tables.pojos; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "t_725_lob_test", schema = "public") +public class T_725LobTest implements java.io.Serializable { + + private static final long serialVersionUID = 1109862069; + + private java.lang.Integer id; + private byte[] lob; + + @javax.persistence.Id + @javax.persistence.Column(name = "id", unique = true, nullable = false, precision = 32) + public java.lang.Integer getId() { + return this.id; + } + + public void setId(java.lang.Integer id) { + this.id = id; + } + + @javax.persistence.Column(name = "lob") + public byte[] getLob() { + return this.lob; + } + + public void setLob(byte[] lob) { + this.lob = lob; + } +} diff --git a/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/tables/pojos/T_785.java b/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/tables/pojos/T_785.java new file mode 100644 index 00000000000..535bbbcb50e --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/tables/pojos/T_785.java @@ -0,0 +1,45 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.postgres.generatedclasses.tables.pojos; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "t_785", schema = "public") +public class T_785 implements java.io.Serializable { + + private static final long serialVersionUID = -954510982; + + private java.lang.Integer id; + private java.lang.String name; + private java.lang.String value; + + @javax.persistence.Column(name = "id", precision = 32) + public java.lang.Integer getId() { + return this.id; + } + + public void setId(java.lang.Integer id) { + this.id = id; + } + + @javax.persistence.Column(name = "name", length = 50) + public java.lang.String getName() { + return this.name; + } + + public void setName(java.lang.String name) { + this.name = name; + } + + @javax.persistence.Column(name = "value", length = 50) + public java.lang.String getValue() { + return this.value; + } + + public void setValue(java.lang.String value) { + this.value = value; + } +} diff --git a/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/tables/pojos/T_959.java b/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/tables/pojos/T_959.java new file mode 100644 index 00000000000..eb404423341 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/tables/pojos/T_959.java @@ -0,0 +1,25 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.postgres.generatedclasses.tables.pojos; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "t_959", schema = "public") +public class T_959 implements java.io.Serializable { + + private static final long serialVersionUID = -1283547475; + + private org.jooq.test.postgres.generatedclasses.enums.U_959 javaKeywords; + + @javax.persistence.Column(name = "java_keywords") + public org.jooq.test.postgres.generatedclasses.enums.U_959 getJavaKeywords() { + return this.javaKeywords; + } + + public void setJavaKeywords(org.jooq.test.postgres.generatedclasses.enums.U_959 javaKeywords) { + this.javaKeywords = javaKeywords; + } +} diff --git a/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/tables/pojos/T_986_1.java b/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/tables/pojos/T_986_1.java new file mode 100644 index 00000000000..9874b976ff2 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/tables/pojos/T_986_1.java @@ -0,0 +1,25 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.postgres.generatedclasses.tables.pojos; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "t_986_1", schema = "public") +public class T_986_1 implements java.io.Serializable { + + private static final long serialVersionUID = -87122792; + + private java.lang.Integer ref; + + @javax.persistence.Column(name = "ref", precision = 32) + public java.lang.Integer getRef() { + return this.ref; + } + + public void setRef(java.lang.Integer ref) { + this.ref = ref; + } +} diff --git a/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/tables/pojos/T_986_2.java b/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/tables/pojos/T_986_2.java new file mode 100644 index 00000000000..d9689a7bd31 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/tables/pojos/T_986_2.java @@ -0,0 +1,25 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.postgres.generatedclasses.tables.pojos; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "t_986_2", schema = "public") +public class T_986_2 implements java.io.Serializable { + + private static final long serialVersionUID = -1065619818; + + private java.lang.Integer ref; + + @javax.persistence.Column(name = "ref", precision = 32) + public java.lang.Integer getRef() { + return this.ref; + } + + public void setRef(java.lang.Integer ref) { + this.ref = ref; + } +} diff --git a/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/tables/pojos/VAuthor.java b/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/tables/pojos/VAuthor.java new file mode 100644 index 00000000000..8585707403d --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/tables/pojos/VAuthor.java @@ -0,0 +1,75 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.postgres.generatedclasses.tables.pojos; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "v_author", schema = "public") +public class VAuthor implements java.io.Serializable { + + private static final long serialVersionUID = 988713460; + + private java.lang.Integer id; + private java.lang.String firstName; + private java.lang.String lastName; + private java.sql.Date dateOfBirth; + private java.lang.Integer yearOfBirth; + private org.jooq.test.postgres.generatedclasses.udt.records.UAddressTypeRecord address; + + @javax.persistence.Column(name = "id", precision = 32) + public java.lang.Integer getId() { + return this.id; + } + + public void setId(java.lang.Integer id) { + this.id = id; + } + + @javax.persistence.Column(name = "first_name", length = 50) + public java.lang.String getFirstName() { + return this.firstName; + } + + public void setFirstName(java.lang.String firstName) { + this.firstName = firstName; + } + + @javax.persistence.Column(name = "last_name", length = 50) + public java.lang.String getLastName() { + return this.lastName; + } + + public void setLastName(java.lang.String lastName) { + this.lastName = lastName; + } + + @javax.persistence.Column(name = "date_of_birth") + public java.sql.Date getDateOfBirth() { + return this.dateOfBirth; + } + + public void setDateOfBirth(java.sql.Date dateOfBirth) { + this.dateOfBirth = dateOfBirth; + } + + @javax.persistence.Column(name = "year_of_birth", precision = 32) + public java.lang.Integer getYearOfBirth() { + return this.yearOfBirth; + } + + public void setYearOfBirth(java.lang.Integer yearOfBirth) { + this.yearOfBirth = yearOfBirth; + } + + @javax.persistence.Column(name = "address") + public org.jooq.test.postgres.generatedclasses.udt.records.UAddressTypeRecord getAddress() { + return this.address; + } + + public void setAddress(org.jooq.test.postgres.generatedclasses.udt.records.UAddressTypeRecord address) { + this.address = address; + } +} diff --git a/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/tables/pojos/VBook.java b/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/tables/pojos/VBook.java new file mode 100644 index 00000000000..c8ac3ca95da --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/tables/pojos/VBook.java @@ -0,0 +1,115 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.postgres.generatedclasses.tables.pojos; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "v_book", schema = "public") +public class VBook implements java.io.Serializable { + + private static final long serialVersionUID = 1164922740; + + private java.lang.Integer id; + private java.lang.Integer authorId; + private java.lang.Integer coAuthorId; + private java.lang.Integer detailsId; + private java.lang.String title; + private java.lang.Integer publishedIn; + private java.lang.Integer languageId; + private java.lang.String contentText; + private byte[] contentPdf; + private org.jooq.test.postgres.generatedclasses.enums.UBookStatus status; + + @javax.persistence.Column(name = "id", precision = 32) + public java.lang.Integer getId() { + return this.id; + } + + public void setId(java.lang.Integer id) { + this.id = id; + } + + @javax.persistence.Column(name = "author_id", precision = 32) + public java.lang.Integer getAuthorId() { + return this.authorId; + } + + public void setAuthorId(java.lang.Integer authorId) { + this.authorId = authorId; + } + + @javax.persistence.Column(name = "co_author_id", precision = 32) + public java.lang.Integer getCoAuthorId() { + return this.coAuthorId; + } + + public void setCoAuthorId(java.lang.Integer coAuthorId) { + this.coAuthorId = coAuthorId; + } + + @javax.persistence.Column(name = "details_id", precision = 32) + public java.lang.Integer getDetailsId() { + return this.detailsId; + } + + public void setDetailsId(java.lang.Integer detailsId) { + this.detailsId = detailsId; + } + + @javax.persistence.Column(name = "title", length = 400) + public java.lang.String getTitle() { + return this.title; + } + + public void setTitle(java.lang.String title) { + this.title = title; + } + + @javax.persistence.Column(name = "published_in", precision = 32) + public java.lang.Integer getPublishedIn() { + return this.publishedIn; + } + + public void setPublishedIn(java.lang.Integer publishedIn) { + this.publishedIn = publishedIn; + } + + @javax.persistence.Column(name = "language_id", precision = 32) + public java.lang.Integer getLanguageId() { + return this.languageId; + } + + public void setLanguageId(java.lang.Integer languageId) { + this.languageId = languageId; + } + + @javax.persistence.Column(name = "content_text") + public java.lang.String getContentText() { + return this.contentText; + } + + public void setContentText(java.lang.String contentText) { + this.contentText = contentText; + } + + @javax.persistence.Column(name = "content_pdf") + public byte[] getContentPdf() { + return this.contentPdf; + } + + public void setContentPdf(byte[] contentPdf) { + this.contentPdf = contentPdf; + } + + @javax.persistence.Column(name = "status") + public org.jooq.test.postgres.generatedclasses.enums.UBookStatus getStatus() { + return this.status; + } + + public void setStatus(org.jooq.test.postgres.generatedclasses.enums.UBookStatus status) { + this.status = status; + } +} diff --git a/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/tables/pojos/VLibrary.java b/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/tables/pojos/VLibrary.java new file mode 100644 index 00000000000..06e8af3cb64 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/tables/pojos/VLibrary.java @@ -0,0 +1,35 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.postgres.generatedclasses.tables.pojos; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "v_library", schema = "public") +public class VLibrary implements java.io.Serializable { + + private static final long serialVersionUID = 1422034483; + + private java.lang.String author; + private java.lang.String title; + + @javax.persistence.Column(name = "author") + public java.lang.String getAuthor() { + return this.author; + } + + public void setAuthor(java.lang.String author) { + this.author = author; + } + + @javax.persistence.Column(name = "title", length = 400) + public java.lang.String getTitle() { + return this.title; + } + + public void setTitle(java.lang.String title) { + this.title = title; + } +} diff --git a/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/tables/pojos/XTestCase_64_69.java b/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/tables/pojos/XTestCase_64_69.java new file mode 100644 index 00000000000..ede2c52c3b3 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/tables/pojos/XTestCase_64_69.java @@ -0,0 +1,36 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.postgres.generatedclasses.tables.pojos; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "x_test_case_64_69", schema = "public") +public class XTestCase_64_69 implements java.io.Serializable { + + private static final long serialVersionUID = -1293237094; + + private java.lang.Integer id; + private java.lang.Integer unusedId; + + @javax.persistence.Id + @javax.persistence.Column(name = "id", unique = true, nullable = false, precision = 32) + public java.lang.Integer getId() { + return this.id; + } + + public void setId(java.lang.Integer id) { + this.id = id; + } + + @javax.persistence.Column(name = "unused_id", precision = 32) + public java.lang.Integer getUnusedId() { + return this.unusedId; + } + + public void setUnusedId(java.lang.Integer unusedId) { + this.unusedId = unusedId; + } +} diff --git a/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/tables/pojos/XTestCase_71.java b/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/tables/pojos/XTestCase_71.java new file mode 100644 index 00000000000..2b565fdd8b9 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/tables/pojos/XTestCase_71.java @@ -0,0 +1,36 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.postgres.generatedclasses.tables.pojos; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "x_test_case_71", schema = "public") +public class XTestCase_71 implements java.io.Serializable { + + private static final long serialVersionUID = -1457583839; + + private java.lang.Integer id; + private java.lang.Short testCase_64_69Id; + + @javax.persistence.Id + @javax.persistence.Column(name = "id", unique = true, nullable = false, precision = 32) + public java.lang.Integer getId() { + return this.id; + } + + public void setId(java.lang.Integer id) { + this.id = id; + } + + @javax.persistence.Column(name = "test_case_64_69_id", precision = 16) + public java.lang.Short getTestCase_64_69Id() { + return this.testCase_64_69Id; + } + + public void setTestCase_64_69Id(java.lang.Short testCase_64_69Id) { + this.testCase_64_69Id = testCase_64_69Id; + } +} diff --git a/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/tables/pojos/XTestCase_85.java b/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/tables/pojos/XTestCase_85.java new file mode 100644 index 00000000000..bb0931079e9 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/tables/pojos/XTestCase_85.java @@ -0,0 +1,46 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.postgres.generatedclasses.tables.pojos; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "x_test_case_85", schema = "public") +public class XTestCase_85 implements java.io.Serializable { + + private static final long serialVersionUID = -429784279; + + private java.lang.Integer id; + private java.lang.Integer xUnusedId; + private java.lang.String xUnusedName; + + @javax.persistence.Id + @javax.persistence.Column(name = "id", unique = true, nullable = false, precision = 32) + public java.lang.Integer getId() { + return this.id; + } + + public void setId(java.lang.Integer id) { + this.id = id; + } + + @javax.persistence.Column(name = "x_unused_id", precision = 32) + public java.lang.Integer getXUnusedId() { + return this.xUnusedId; + } + + public void setXUnusedId(java.lang.Integer xUnusedId) { + this.xUnusedId = xUnusedId; + } + + @javax.persistence.Column(name = "x_unused_name", length = 10) + public java.lang.String getXUnusedName() { + return this.xUnusedName; + } + + public void setXUnusedName(java.lang.String xUnusedName) { + this.xUnusedName = xUnusedName; + } +} diff --git a/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/tables/pojos/XUnused.java b/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/tables/pojos/XUnused.java new file mode 100644 index 00000000000..310fc224972 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/tables/pojos/XUnused.java @@ -0,0 +1,167 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.postgres.generatedclasses.tables.pojos; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "x_unused", schema = "public", uniqueConstraints = { + @javax.persistence.UniqueConstraint(columnNames = {"id", "name"}) +}) +public class XUnused implements java.io.Serializable { + + private static final long serialVersionUID = -1472917904; + + private java.lang.Integer id; + private java.lang.String name; + private java.math.BigInteger bigInteger; + private java.lang.Integer idRef; + private java.lang.Integer class_; + private java.lang.Integer fields; + private java.lang.Integer configuration; + private java.lang.Integer uDT; + private java.lang.Integer metaData; + private java.lang.Integer values; + private java.lang.Integer type0; + private java.lang.Integer primaryKey; + private java.lang.Integer primarykey; + private java.lang.String nameRef; + private java.math.BigDecimal field_737; + + @javax.persistence.Column(name = "id", unique = true, nullable = false, precision = 32) + public java.lang.Integer getId() { + return this.id; + } + + public void setId(java.lang.Integer id) { + this.id = id; + } + + @javax.persistence.Column(name = "name", nullable = false, length = 10) + public java.lang.String getName() { + return this.name; + } + + public void setName(java.lang.String name) { + this.name = name; + } + + @javax.persistence.Column(name = "big_integer", precision = 25) + public java.math.BigInteger getBigInteger() { + return this.bigInteger; + } + + public void setBigInteger(java.math.BigInteger bigInteger) { + this.bigInteger = bigInteger; + } + + @javax.persistence.Column(name = "id_ref", precision = 32) + public java.lang.Integer getIdRef() { + return this.idRef; + } + + public void setIdRef(java.lang.Integer idRef) { + this.idRef = idRef; + } + + @javax.persistence.Column(name = "class", precision = 32) + public java.lang.Integer getClass_() { + return this.class_; + } + + public void setClass_(java.lang.Integer class_) { + this.class_ = class_; + } + + @javax.persistence.Column(name = "fields", precision = 32) + public java.lang.Integer getFields_() { + return this.fields; + } + + public void setFields_(java.lang.Integer fields) { + this.fields = fields; + } + + @javax.persistence.Column(name = "configuration", precision = 32) + public java.lang.Integer getConfiguration_() { + return this.configuration; + } + + public void setConfiguration_(java.lang.Integer configuration) { + this.configuration = configuration; + } + + @javax.persistence.Column(name = "u_d_t", precision = 32) + public java.lang.Integer getUDT() { + return this.uDT; + } + + public void setUDT(java.lang.Integer uDT) { + this.uDT = uDT; + } + + @javax.persistence.Column(name = "meta_data", precision = 32) + public java.lang.Integer getMetaData_() { + return this.metaData; + } + + public void setMetaData_(java.lang.Integer metaData) { + this.metaData = metaData; + } + + @javax.persistence.Column(name = "values", precision = 32) + public java.lang.Integer getValues_() { + return this.values; + } + + public void setValues_(java.lang.Integer values) { + this.values = values; + } + + @javax.persistence.Column(name = "type0", precision = 32) + public java.lang.Integer getType0_() { + return this.type0; + } + + public void setType0_(java.lang.Integer type0) { + this.type0 = type0; + } + + @javax.persistence.Column(name = "primary_key", precision = 32) + public java.lang.Integer getPrimaryKey() { + return this.primaryKey; + } + + public void setPrimaryKey(java.lang.Integer primaryKey) { + this.primaryKey = primaryKey; + } + + @javax.persistence.Column(name = "primarykey", precision = 32) + public java.lang.Integer getPrimarykey() { + return this.primarykey; + } + + public void setPrimarykey(java.lang.Integer primarykey) { + this.primarykey = primarykey; + } + + @javax.persistence.Column(name = "name_ref", length = 10) + public java.lang.String getNameRef() { + return this.nameRef; + } + + public void setNameRef(java.lang.String nameRef) { + this.nameRef = nameRef; + } + + @javax.persistence.Column(name = "FIELD 737", precision = 25, scale = 2) + public java.math.BigDecimal getField_737() { + return this.field_737; + } + + public void setField_737(java.math.BigDecimal field_737) { + this.field_737 = field_737; + } +} diff --git a/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/tables/records/TArraysRecord.java b/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/tables/records/TArraysRecord.java new file mode 100644 index 00000000000..6c482cfebb5 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/tables/records/TArraysRecord.java @@ -0,0 +1,131 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.postgres.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "t_arrays", schema = "public") +public class TArraysRecord extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = -676882876; + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setId(java.lang.Integer value) { + setValue(org.jooq.test.postgres.generatedclasses.tables.TArrays.T_ARRAYS.ID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + @javax.persistence.Id + @javax.persistence.Column(name = "id", unique = true, nullable = false, precision = 32) + public java.lang.Integer getId() { + return getValue(org.jooq.test.postgres.generatedclasses.tables.TArrays.T_ARRAYS.ID); + } + + /** + * An uncommented item + */ + public void setStringArray(java.lang.String[] value) { + setValue(org.jooq.test.postgres.generatedclasses.tables.TArrays.T_ARRAYS.STRING_ARRAY, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "string_array") + public java.lang.String[] getStringArray() { + return getValue(org.jooq.test.postgres.generatedclasses.tables.TArrays.T_ARRAYS.STRING_ARRAY); + } + + /** + * An uncommented item + */ + public void setNumberArray(java.lang.Integer[] value) { + setValue(org.jooq.test.postgres.generatedclasses.tables.TArrays.T_ARRAYS.NUMBER_ARRAY, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "number_array") + public java.lang.Integer[] getNumberArray() { + return getValue(org.jooq.test.postgres.generatedclasses.tables.TArrays.T_ARRAYS.NUMBER_ARRAY); + } + + /** + * An uncommented item + */ + public void setDateArray(java.sql.Date[] value) { + setValue(org.jooq.test.postgres.generatedclasses.tables.TArrays.T_ARRAYS.DATE_ARRAY, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "date_array") + public java.sql.Date[] getDateArray() { + return getValue(org.jooq.test.postgres.generatedclasses.tables.TArrays.T_ARRAYS.DATE_ARRAY); + } + + /** + * An uncommented item + */ + public void setUdtArray(org.jooq.test.postgres.generatedclasses.udt.records.UStreetTypeRecord[] value) { + setValue(org.jooq.test.postgres.generatedclasses.tables.TArrays.T_ARRAYS.UDT_ARRAY, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "udt_array") + public org.jooq.test.postgres.generatedclasses.udt.records.UStreetTypeRecord[] getUdtArray() { + return getValue(org.jooq.test.postgres.generatedclasses.tables.TArrays.T_ARRAYS.UDT_ARRAY); + } + + /** + * An uncommented item + */ + public void setEnumArray(org.jooq.test.postgres.generatedclasses.enums.UCountry[] value) { + setValue(org.jooq.test.postgres.generatedclasses.tables.TArrays.T_ARRAYS.ENUM_ARRAY, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "enum_array") + public org.jooq.test.postgres.generatedclasses.enums.UCountry[] getEnumArray() { + return getValue(org.jooq.test.postgres.generatedclasses.tables.TArrays.T_ARRAYS.ENUM_ARRAY); + } + + /** + * An uncommented item + */ + public void setArrayArray(java.lang.Integer[] value) { + setValue(org.jooq.test.postgres.generatedclasses.tables.TArrays.T_ARRAYS.ARRAY_ARRAY, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "array_array") + public java.lang.Integer[] getArrayArray() { + return getValue(org.jooq.test.postgres.generatedclasses.tables.TArrays.T_ARRAYS.ARRAY_ARRAY); + } + + /** + * Create a detached TArraysRecord + */ + public TArraysRecord() { + super(org.jooq.test.postgres.generatedclasses.tables.TArrays.T_ARRAYS); + } +} diff --git a/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/tables/records/TAuthorRecord.java b/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/tables/records/TAuthorRecord.java new file mode 100644 index 00000000000..0de2b51d1fb --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/tables/records/TAuthorRecord.java @@ -0,0 +1,140 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.postgres.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "t_author", schema = "public") +public class TAuthorRecord extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = 1043869922; + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setId(java.lang.Integer value) { + setValue(org.jooq.test.postgres.generatedclasses.tables.TAuthor.T_AUTHOR.ID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + @javax.persistence.Id + @javax.persistence.Column(name = "id", unique = true, nullable = false, precision = 32) + public java.lang.Integer getId() { + return getValue(org.jooq.test.postgres.generatedclasses.tables.TAuthor.T_AUTHOR.ID); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.util.List fetchTBookListByAuthorId() { + return create() + .selectFrom(org.jooq.test.postgres.generatedclasses.tables.TBook.T_BOOK) + .where(org.jooq.test.postgres.generatedclasses.tables.TBook.T_BOOK.AUTHOR_ID.equal(getValue(org.jooq.test.postgres.generatedclasses.tables.TAuthor.T_AUTHOR.ID))) + .fetch(); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.util.List fetchTBookListByCoAuthorId() { + return create() + .selectFrom(org.jooq.test.postgres.generatedclasses.tables.TBook.T_BOOK) + .where(org.jooq.test.postgres.generatedclasses.tables.TBook.T_BOOK.CO_AUTHOR_ID.equal(getValue(org.jooq.test.postgres.generatedclasses.tables.TAuthor.T_AUTHOR.ID))) + .fetch(); + } + + /** + * An uncommented item + */ + public void setFirstName(java.lang.String value) { + setValue(org.jooq.test.postgres.generatedclasses.tables.TAuthor.T_AUTHOR.FIRST_NAME, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "first_name", length = 50) + public java.lang.String getFirstName() { + return getValue(org.jooq.test.postgres.generatedclasses.tables.TAuthor.T_AUTHOR.FIRST_NAME); + } + + /** + * An uncommented item + */ + public void setLastName(java.lang.String value) { + setValue(org.jooq.test.postgres.generatedclasses.tables.TAuthor.T_AUTHOR.LAST_NAME, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "last_name", nullable = false, length = 50) + public java.lang.String getLastName() { + return getValue(org.jooq.test.postgres.generatedclasses.tables.TAuthor.T_AUTHOR.LAST_NAME); + } + + /** + * An uncommented item + */ + public void setDateOfBirth(java.sql.Date value) { + setValue(org.jooq.test.postgres.generatedclasses.tables.TAuthor.T_AUTHOR.DATE_OF_BIRTH, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "date_of_birth") + public java.sql.Date getDateOfBirth() { + return getValue(org.jooq.test.postgres.generatedclasses.tables.TAuthor.T_AUTHOR.DATE_OF_BIRTH); + } + + /** + * An uncommented item + */ + public void setYearOfBirth(java.lang.Integer value) { + setValue(org.jooq.test.postgres.generatedclasses.tables.TAuthor.T_AUTHOR.YEAR_OF_BIRTH, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "year_of_birth", precision = 32) + public java.lang.Integer getYearOfBirth() { + return getValue(org.jooq.test.postgres.generatedclasses.tables.TAuthor.T_AUTHOR.YEAR_OF_BIRTH); + } + + /** + * An uncommented item + */ + public void setAddress(org.jooq.test.postgres.generatedclasses.udt.records.UAddressTypeRecord value) { + setValue(org.jooq.test.postgres.generatedclasses.tables.TAuthor.T_AUTHOR.ADDRESS, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "address") + public org.jooq.test.postgres.generatedclasses.udt.records.UAddressTypeRecord getAddress() { + return getValue(org.jooq.test.postgres.generatedclasses.tables.TAuthor.T_AUTHOR.ADDRESS); + } + + /** + * Create a detached TAuthorRecord + */ + public TAuthorRecord() { + super(org.jooq.test.postgres.generatedclasses.tables.TAuthor.T_AUTHOR); + } +} diff --git a/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/tables/records/TBookRecord.java b/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/tables/records/TBookRecord.java new file mode 100644 index 00000000000..07dd857850a --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/tables/records/TBookRecord.java @@ -0,0 +1,256 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.postgres.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "t_book", schema = "public") +public class TBookRecord extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = -1347664618; + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setId(java.lang.Integer value) { + setValue(org.jooq.test.postgres.generatedclasses.tables.TBook.T_BOOK.ID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + @javax.persistence.Id + @javax.persistence.Column(name = "id", unique = true, nullable = false, precision = 32) + public java.lang.Integer getId() { + return getValue(org.jooq.test.postgres.generatedclasses.tables.TBook.T_BOOK.ID); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.util.List fetchTBookToBookStoreList() { + return create() + .selectFrom(org.jooq.test.postgres.generatedclasses.tables.TBookToBookStore.T_BOOK_TO_BOOK_STORE) + .where(org.jooq.test.postgres.generatedclasses.tables.TBookToBookStore.T_BOOK_TO_BOOK_STORE.BOOK_ID.equal(getValue(org.jooq.test.postgres.generatedclasses.tables.TBook.T_BOOK.ID))) + .fetch(); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT t_book__fk_t_book_author_id
+	 * FOREIGN KEY (author_id)
+	 * REFERENCES public.t_author (id)
+	 * 
+ */ + public void setAuthorId(java.lang.Integer value) { + setValue(org.jooq.test.postgres.generatedclasses.tables.TBook.T_BOOK.AUTHOR_ID, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT t_book__fk_t_book_author_id
+	 * FOREIGN KEY (author_id)
+	 * REFERENCES public.t_author (id)
+	 * 
+ */ + @javax.persistence.Column(name = "author_id", nullable = false, precision = 32) + public java.lang.Integer getAuthorId() { + return getValue(org.jooq.test.postgres.generatedclasses.tables.TBook.T_BOOK.AUTHOR_ID); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT t_book__fk_t_book_author_id
+	 * FOREIGN KEY (author_id)
+	 * REFERENCES public.t_author (id)
+	 * 
+ */ + public org.jooq.test.postgres.generatedclasses.tables.records.TAuthorRecord fetchTAuthorByAuthorId() { + return create() + .selectFrom(org.jooq.test.postgres.generatedclasses.tables.TAuthor.T_AUTHOR) + .where(org.jooq.test.postgres.generatedclasses.tables.TAuthor.T_AUTHOR.ID.equal(getValue(org.jooq.test.postgres.generatedclasses.tables.TBook.T_BOOK.AUTHOR_ID))) + .fetchOne(); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT t_book__fk_t_book_co_author_id
+	 * FOREIGN KEY (co_author_id)
+	 * REFERENCES public.t_author (id)
+	 * 
+ */ + public void setCoAuthorId(java.lang.Integer value) { + setValue(org.jooq.test.postgres.generatedclasses.tables.TBook.T_BOOK.CO_AUTHOR_ID, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT t_book__fk_t_book_co_author_id
+	 * FOREIGN KEY (co_author_id)
+	 * REFERENCES public.t_author (id)
+	 * 
+ */ + @javax.persistence.Column(name = "co_author_id", precision = 32) + public java.lang.Integer getCoAuthorId() { + return getValue(org.jooq.test.postgres.generatedclasses.tables.TBook.T_BOOK.CO_AUTHOR_ID); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT t_book__fk_t_book_co_author_id
+	 * FOREIGN KEY (co_author_id)
+	 * REFERENCES public.t_author (id)
+	 * 
+ */ + public org.jooq.test.postgres.generatedclasses.tables.records.TAuthorRecord fetchTAuthorByCoAuthorId() { + return create() + .selectFrom(org.jooq.test.postgres.generatedclasses.tables.TAuthor.T_AUTHOR) + .where(org.jooq.test.postgres.generatedclasses.tables.TAuthor.T_AUTHOR.ID.equal(getValue(org.jooq.test.postgres.generatedclasses.tables.TBook.T_BOOK.CO_AUTHOR_ID))) + .fetchOne(); + } + + /** + * An uncommented item + */ + public void setDetailsId(java.lang.Integer value) { + setValue(org.jooq.test.postgres.generatedclasses.tables.TBook.T_BOOK.DETAILS_ID, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "details_id", precision = 32) + public java.lang.Integer getDetailsId() { + return getValue(org.jooq.test.postgres.generatedclasses.tables.TBook.T_BOOK.DETAILS_ID); + } + + /** + * An uncommented item + */ + public void setTitle(java.lang.String value) { + setValue(org.jooq.test.postgres.generatedclasses.tables.TBook.T_BOOK.TITLE, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "title", nullable = false, length = 400) + public java.lang.String getTitle() { + return getValue(org.jooq.test.postgres.generatedclasses.tables.TBook.T_BOOK.TITLE); + } + + /** + * An uncommented item + */ + public void setPublishedIn(java.lang.Integer value) { + setValue(org.jooq.test.postgres.generatedclasses.tables.TBook.T_BOOK.PUBLISHED_IN, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "published_in", nullable = false, precision = 32) + public java.lang.Integer getPublishedIn() { + return getValue(org.jooq.test.postgres.generatedclasses.tables.TBook.T_BOOK.PUBLISHED_IN); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT t_book__fk_t_book_language_id
+	 * FOREIGN KEY (language_id)
+	 * REFERENCES public.t_language (id)
+	 * 
+ */ + public void setLanguageId(org.jooq.test.postgres.generatedclasses.enums.TLanguage value) { + setValue(org.jooq.test.postgres.generatedclasses.tables.TBook.T_BOOK.LANGUAGE_ID, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT t_book__fk_t_book_language_id
+	 * FOREIGN KEY (language_id)
+	 * REFERENCES public.t_language (id)
+	 * 
+ */ + @javax.persistence.Column(name = "language_id", nullable = false, precision = 32) + public org.jooq.test.postgres.generatedclasses.enums.TLanguage getLanguageId() { + return getValue(org.jooq.test.postgres.generatedclasses.tables.TBook.T_BOOK.LANGUAGE_ID); + } + + /** + * An uncommented item + */ + public void setContentText(java.lang.String value) { + setValue(org.jooq.test.postgres.generatedclasses.tables.TBook.T_BOOK.CONTENT_TEXT, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "content_text") + public java.lang.String getContentText() { + return getValue(org.jooq.test.postgres.generatedclasses.tables.TBook.T_BOOK.CONTENT_TEXT); + } + + /** + * An uncommented item + */ + public void setContentPdf(byte[] value) { + setValue(org.jooq.test.postgres.generatedclasses.tables.TBook.T_BOOK.CONTENT_PDF, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "content_pdf") + public byte[] getContentPdf() { + return getValue(org.jooq.test.postgres.generatedclasses.tables.TBook.T_BOOK.CONTENT_PDF); + } + + /** + * An uncommented item + */ + public void setStatus(org.jooq.test.postgres.generatedclasses.enums.UBookStatus value) { + setValue(org.jooq.test.postgres.generatedclasses.tables.TBook.T_BOOK.STATUS, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "status") + public org.jooq.test.postgres.generatedclasses.enums.UBookStatus getStatus() { + return getValue(org.jooq.test.postgres.generatedclasses.tables.TBook.T_BOOK.STATUS); + } + + /** + * Create a detached TBookRecord + */ + public TBookRecord() { + super(org.jooq.test.postgres.generatedclasses.tables.TBook.T_BOOK); + } +} diff --git a/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/tables/records/TBookStoreRecord.java b/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/tables/records/TBookStoreRecord.java new file mode 100644 index 00000000000..7b36a0120d1 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/tables/records/TBookStoreRecord.java @@ -0,0 +1,46 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.postgres.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "t_book_store", schema = "public") +public class TBookStoreRecord extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = -205271070; + + /** + * An uncommented item + */ + public void setName(java.lang.String value) { + setValue(org.jooq.test.postgres.generatedclasses.tables.TBookStore.T_BOOK_STORE.NAME, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "name", unique = true, nullable = false, length = 400) + public java.lang.String getName() { + return getValue(org.jooq.test.postgres.generatedclasses.tables.TBookStore.T_BOOK_STORE.NAME); + } + + /** + * An uncommented item + */ + public java.util.List fetchTBookToBookStoreList() { + return create() + .selectFrom(org.jooq.test.postgres.generatedclasses.tables.TBookToBookStore.T_BOOK_TO_BOOK_STORE) + .where(org.jooq.test.postgres.generatedclasses.tables.TBookToBookStore.T_BOOK_TO_BOOK_STORE.BOOK_STORE_NAME.equal(getValue(org.jooq.test.postgres.generatedclasses.tables.TBookStore.T_BOOK_STORE.NAME))) + .fetch(); + } + + /** + * Create a detached TBookStoreRecord + */ + public TBookStoreRecord() { + super(org.jooq.test.postgres.generatedclasses.tables.TBookStore.T_BOOK_STORE); + } +} diff --git a/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/tables/records/TBookToBookStoreRecord.java b/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/tables/records/TBookToBookStoreRecord.java new file mode 100644 index 00000000000..9a40340b997 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/tables/records/TBookToBookStoreRecord.java @@ -0,0 +1,136 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.postgres.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "t_book_to_book_store", schema = "public", uniqueConstraints = { + @javax.persistence.UniqueConstraint(columnNames = {"book_store_name", "book_id"}) +}) +public class TBookToBookStoreRecord extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = 1899814504; + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT t_book_to_book_store__fk_b2bs_bs_name
+	 * FOREIGN KEY (book_store_name)
+	 * REFERENCES public.t_book_store (name)
+	 * 
+ */ + public void setBookStoreName(java.lang.String value) { + setValue(org.jooq.test.postgres.generatedclasses.tables.TBookToBookStore.T_BOOK_TO_BOOK_STORE.BOOK_STORE_NAME, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT t_book_to_book_store__fk_b2bs_bs_name
+	 * FOREIGN KEY (book_store_name)
+	 * REFERENCES public.t_book_store (name)
+	 * 
+ */ + @javax.persistence.Column(name = "book_store_name", nullable = false, length = 400) + public java.lang.String getBookStoreName() { + return getValue(org.jooq.test.postgres.generatedclasses.tables.TBookToBookStore.T_BOOK_TO_BOOK_STORE.BOOK_STORE_NAME); + } + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT t_book_to_book_store__fk_b2bs_bs_name
+	 * FOREIGN KEY (book_store_name)
+	 * REFERENCES public.t_book_store (name)
+	 * 
+ */ + public org.jooq.test.postgres.generatedclasses.tables.records.TBookStoreRecord fetchTBookStore() { + return create() + .selectFrom(org.jooq.test.postgres.generatedclasses.tables.TBookStore.T_BOOK_STORE) + .where(org.jooq.test.postgres.generatedclasses.tables.TBookStore.T_BOOK_STORE.NAME.equal(getValue(org.jooq.test.postgres.generatedclasses.tables.TBookToBookStore.T_BOOK_TO_BOOK_STORE.BOOK_STORE_NAME))) + .fetchOne(); + } + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT t_book_to_book_store__fk_b2bs_b_id
+	 * FOREIGN KEY (book_id)
+	 * REFERENCES public.t_book (id)
+	 * 
+ */ + public void setBookId(java.lang.Integer value) { + setValue(org.jooq.test.postgres.generatedclasses.tables.TBookToBookStore.T_BOOK_TO_BOOK_STORE.BOOK_ID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT t_book_to_book_store__fk_b2bs_b_id
+	 * FOREIGN KEY (book_id)
+	 * REFERENCES public.t_book (id)
+	 * 
+ */ + @javax.persistence.Column(name = "book_id", nullable = false, precision = 32) + public java.lang.Integer getBookId() { + return getValue(org.jooq.test.postgres.generatedclasses.tables.TBookToBookStore.T_BOOK_TO_BOOK_STORE.BOOK_ID); + } + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT t_book_to_book_store__fk_b2bs_b_id
+	 * FOREIGN KEY (book_id)
+	 * REFERENCES public.t_book (id)
+	 * 
+ */ + public org.jooq.test.postgres.generatedclasses.tables.records.TBookRecord fetchTBook() { + return create() + .selectFrom(org.jooq.test.postgres.generatedclasses.tables.TBook.T_BOOK) + .where(org.jooq.test.postgres.generatedclasses.tables.TBook.T_BOOK.ID.equal(getValue(org.jooq.test.postgres.generatedclasses.tables.TBookToBookStore.T_BOOK_TO_BOOK_STORE.BOOK_ID))) + .fetchOne(); + } + + /** + * An uncommented item + */ + public void setStock(java.lang.Integer value) { + setValue(org.jooq.test.postgres.generatedclasses.tables.TBookToBookStore.T_BOOK_TO_BOOK_STORE.STOCK, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "stock", precision = 32) + public java.lang.Integer getStock() { + return getValue(org.jooq.test.postgres.generatedclasses.tables.TBookToBookStore.T_BOOK_TO_BOOK_STORE.STOCK); + } + + /** + * Create a detached TBookToBookStoreRecord + */ + public TBookToBookStoreRecord() { + super(org.jooq.test.postgres.generatedclasses.tables.TBookToBookStore.T_BOOK_TO_BOOK_STORE); + } +} diff --git a/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/tables/records/TBooleansRecord.java b/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/tables/records/TBooleansRecord.java new file mode 100644 index 00000000000..0dd16a6b8a2 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/tables/records/TBooleansRecord.java @@ -0,0 +1,191 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.postgres.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "t_booleans", schema = "public") +public class TBooleansRecord extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = -857995379; + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setId(java.lang.Integer value) { + setValue(org.jooq.test.postgres.generatedclasses.tables.TBooleans.T_BOOLEANS.ID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + @javax.persistence.Id + @javax.persistence.Column(name = "id", unique = true, nullable = false, precision = 32) + public java.lang.Integer getId() { + return getValue(org.jooq.test.postgres.generatedclasses.tables.TBooleans.T_BOOLEANS.ID); + } + + /** + * An uncommented item + */ + public void setOneZero(org.jooq.test._.converters.Boolean_10 value) { + setValue(org.jooq.test.postgres.generatedclasses.tables.TBooleans.T_BOOLEANS.ONE_ZERO, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "one_zero", precision = 32) + public org.jooq.test._.converters.Boolean_10 getOneZero() { + return getValue(org.jooq.test.postgres.generatedclasses.tables.TBooleans.T_BOOLEANS.ONE_ZERO); + } + + /** + * An uncommented item + */ + public void setTrueFalseLc(org.jooq.test._.converters.Boolean_TF_LC value) { + setValue(org.jooq.test.postgres.generatedclasses.tables.TBooleans.T_BOOLEANS.TRUE_FALSE_LC, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "true_false_lc", length = 5) + public org.jooq.test._.converters.Boolean_TF_LC getTrueFalseLc() { + return getValue(org.jooq.test.postgres.generatedclasses.tables.TBooleans.T_BOOLEANS.TRUE_FALSE_LC); + } + + /** + * An uncommented item + */ + public void setTrueFalseUc(org.jooq.test._.converters.Boolean_TF_UC value) { + setValue(org.jooq.test.postgres.generatedclasses.tables.TBooleans.T_BOOLEANS.TRUE_FALSE_UC, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "true_false_uc", length = 5) + public org.jooq.test._.converters.Boolean_TF_UC getTrueFalseUc() { + return getValue(org.jooq.test.postgres.generatedclasses.tables.TBooleans.T_BOOLEANS.TRUE_FALSE_UC); + } + + /** + * An uncommented item + */ + public void setYesNoLc(org.jooq.test._.converters.Boolean_YES_NO_LC value) { + setValue(org.jooq.test.postgres.generatedclasses.tables.TBooleans.T_BOOLEANS.YES_NO_LC, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "yes_no_lc", length = 3) + public org.jooq.test._.converters.Boolean_YES_NO_LC getYesNoLc() { + return getValue(org.jooq.test.postgres.generatedclasses.tables.TBooleans.T_BOOLEANS.YES_NO_LC); + } + + /** + * An uncommented item + */ + public void setYesNoUc(org.jooq.test._.converters.Boolean_YES_NO_UC value) { + setValue(org.jooq.test.postgres.generatedclasses.tables.TBooleans.T_BOOLEANS.YES_NO_UC, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "yes_no_uc", length = 3) + public org.jooq.test._.converters.Boolean_YES_NO_UC getYesNoUc() { + return getValue(org.jooq.test.postgres.generatedclasses.tables.TBooleans.T_BOOLEANS.YES_NO_UC); + } + + /** + * An uncommented item + */ + public void setYNLc(org.jooq.test._.converters.Boolean_YN_LC value) { + setValue(org.jooq.test.postgres.generatedclasses.tables.TBooleans.T_BOOLEANS.Y_N_LC, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "y_n_lc", length = 1) + public org.jooq.test._.converters.Boolean_YN_LC getYNLc() { + return getValue(org.jooq.test.postgres.generatedclasses.tables.TBooleans.T_BOOLEANS.Y_N_LC); + } + + /** + * An uncommented item + */ + public void setYNUc(org.jooq.test._.converters.Boolean_YN_UC value) { + setValue(org.jooq.test.postgres.generatedclasses.tables.TBooleans.T_BOOLEANS.Y_N_UC, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "y_n_uc", length = 1) + public org.jooq.test._.converters.Boolean_YN_UC getYNUc() { + return getValue(org.jooq.test.postgres.generatedclasses.tables.TBooleans.T_BOOLEANS.Y_N_UC); + } + + /** + * An uncommented item + */ + public void setVcBoolean(java.lang.Boolean value) { + setValue(org.jooq.test.postgres.generatedclasses.tables.TBooleans.T_BOOLEANS.VC_BOOLEAN, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "vc_boolean", length = 1) + public java.lang.Boolean getVcBoolean() { + return getValue(org.jooq.test.postgres.generatedclasses.tables.TBooleans.T_BOOLEANS.VC_BOOLEAN); + } + + /** + * An uncommented item + */ + public void setCBoolean(java.lang.Boolean value) { + setValue(org.jooq.test.postgres.generatedclasses.tables.TBooleans.T_BOOLEANS.C_BOOLEAN, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "c_boolean", length = 1) + public java.lang.Boolean getCBoolean() { + return getValue(org.jooq.test.postgres.generatedclasses.tables.TBooleans.T_BOOLEANS.C_BOOLEAN); + } + + /** + * An uncommented item + */ + public void setNBoolean(java.lang.Boolean value) { + setValue(org.jooq.test.postgres.generatedclasses.tables.TBooleans.T_BOOLEANS.N_BOOLEAN, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "n_boolean", precision = 32) + public java.lang.Boolean getNBoolean() { + return getValue(org.jooq.test.postgres.generatedclasses.tables.TBooleans.T_BOOLEANS.N_BOOLEAN); + } + + /** + * Create a detached TBooleansRecord + */ + public TBooleansRecord() { + super(org.jooq.test.postgres.generatedclasses.tables.TBooleans.T_BOOLEANS); + } +} diff --git a/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/tables/records/TDatesRecord.java b/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/tables/records/TDatesRecord.java new file mode 100644 index 00000000000..bd566c41538 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/tables/records/TDatesRecord.java @@ -0,0 +1,116 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.postgres.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "t_dates", schema = "public") +public class TDatesRecord extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = 1475466088; + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setId(java.lang.Integer value) { + setValue(org.jooq.test.postgres.generatedclasses.tables.TDates.T_DATES.ID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + @javax.persistence.Id + @javax.persistence.Column(name = "id", unique = true, nullable = false, precision = 32) + public java.lang.Integer getId() { + return getValue(org.jooq.test.postgres.generatedclasses.tables.TDates.T_DATES.ID); + } + + /** + * An uncommented item + */ + public void setD(java.sql.Date value) { + setValue(org.jooq.test.postgres.generatedclasses.tables.TDates.T_DATES.D, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "d") + public java.sql.Date getD() { + return getValue(org.jooq.test.postgres.generatedclasses.tables.TDates.T_DATES.D); + } + + /** + * An uncommented item + */ + public void setT(java.sql.Time value) { + setValue(org.jooq.test.postgres.generatedclasses.tables.TDates.T_DATES.T, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "t") + public java.sql.Time getT() { + return getValue(org.jooq.test.postgres.generatedclasses.tables.TDates.T_DATES.T); + } + + /** + * An uncommented item + */ + public void setTs(java.sql.Timestamp value) { + setValue(org.jooq.test.postgres.generatedclasses.tables.TDates.T_DATES.TS, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "ts") + public java.sql.Timestamp getTs() { + return getValue(org.jooq.test.postgres.generatedclasses.tables.TDates.T_DATES.TS); + } + + /** + * An uncommented item + */ + public void setDInt(java.lang.Integer value) { + setValue(org.jooq.test.postgres.generatedclasses.tables.TDates.T_DATES.D_INT, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "d_int", precision = 32) + public java.lang.Integer getDInt() { + return getValue(org.jooq.test.postgres.generatedclasses.tables.TDates.T_DATES.D_INT); + } + + /** + * An uncommented item + */ + public void setTsBigint(java.lang.Long value) { + setValue(org.jooq.test.postgres.generatedclasses.tables.TDates.T_DATES.TS_BIGINT, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "ts_bigint", precision = 64) + public java.lang.Long getTsBigint() { + return getValue(org.jooq.test.postgres.generatedclasses.tables.TDates.T_DATES.TS_BIGINT); + } + + /** + * Create a detached TDatesRecord + */ + public TDatesRecord() { + super(org.jooq.test.postgres.generatedclasses.tables.TDates.T_DATES); + } +} diff --git a/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/tables/records/TIdentityPkRecord.java b/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/tables/records/TIdentityPkRecord.java new file mode 100644 index 00000000000..f1640ebd536 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/tables/records/TIdentityPkRecord.java @@ -0,0 +1,56 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.postgres.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "t_identity_pk", schema = "public") +public class TIdentityPkRecord extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = 428861736; + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setId(java.lang.Integer value) { + setValue(org.jooq.test.postgres.generatedclasses.tables.TIdentityPk.T_IDENTITY_PK.ID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + @javax.persistence.Id + @javax.persistence.Column(name = "id", unique = true, nullable = false, precision = 32) + public java.lang.Integer getId() { + return getValue(org.jooq.test.postgres.generatedclasses.tables.TIdentityPk.T_IDENTITY_PK.ID); + } + + /** + * An uncommented item + */ + public void setVal(java.lang.Integer value) { + setValue(org.jooq.test.postgres.generatedclasses.tables.TIdentityPk.T_IDENTITY_PK.VAL, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "val", precision = 32) + public java.lang.Integer getVal() { + return getValue(org.jooq.test.postgres.generatedclasses.tables.TIdentityPk.T_IDENTITY_PK.VAL); + } + + /** + * Create a detached TIdentityPkRecord + */ + public TIdentityPkRecord() { + super(org.jooq.test.postgres.generatedclasses.tables.TIdentityPk.T_IDENTITY_PK); + } +} diff --git a/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/tables/records/TIdentityRecord.java b/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/tables/records/TIdentityRecord.java new file mode 100644 index 00000000000..f1567ed4059 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/tables/records/TIdentityRecord.java @@ -0,0 +1,51 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.postgres.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "t_identity", schema = "public") +public class TIdentityRecord extends org.jooq.impl.TableRecordImpl { + + private static final long serialVersionUID = 1958032992; + + /** + * An uncommented item + */ + public void setId(java.lang.Integer value) { + setValue(org.jooq.test.postgres.generatedclasses.tables.TIdentity.T_IDENTITY.ID, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "id", nullable = false, precision = 32) + public java.lang.Integer getId() { + return getValue(org.jooq.test.postgres.generatedclasses.tables.TIdentity.T_IDENTITY.ID); + } + + /** + * An uncommented item + */ + public void setVal(java.lang.Integer value) { + setValue(org.jooq.test.postgres.generatedclasses.tables.TIdentity.T_IDENTITY.VAL, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "val", precision = 32) + public java.lang.Integer getVal() { + return getValue(org.jooq.test.postgres.generatedclasses.tables.TIdentity.T_IDENTITY.VAL); + } + + /** + * Create a detached TIdentityRecord + */ + public TIdentityRecord() { + super(org.jooq.test.postgres.generatedclasses.tables.TIdentity.T_IDENTITY); + } +} diff --git a/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/tables/records/TTriggersRecord.java b/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/tables/records/TTriggersRecord.java new file mode 100644 index 00000000000..4aecc80de4e --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/tables/records/TTriggersRecord.java @@ -0,0 +1,71 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.postgres.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "t_triggers", schema = "public") +public class TTriggersRecord extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = -2010660847; + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setIdGenerated(java.lang.Integer value) { + setValue(org.jooq.test.postgres.generatedclasses.tables.TTriggers.T_TRIGGERS.ID_GENERATED, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + @javax.persistence.Id + @javax.persistence.Column(name = "id_generated", unique = true, nullable = false, precision = 32) + public java.lang.Integer getIdGenerated() { + return getValue(org.jooq.test.postgres.generatedclasses.tables.TTriggers.T_TRIGGERS.ID_GENERATED); + } + + /** + * An uncommented item + */ + public void setId(java.lang.Integer value) { + setValue(org.jooq.test.postgres.generatedclasses.tables.TTriggers.T_TRIGGERS.ID, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "id", precision = 32) + public java.lang.Integer getId() { + return getValue(org.jooq.test.postgres.generatedclasses.tables.TTriggers.T_TRIGGERS.ID); + } + + /** + * An uncommented item + */ + public void setCounter(java.lang.Integer value) { + setValue(org.jooq.test.postgres.generatedclasses.tables.TTriggers.T_TRIGGERS.COUNTER, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "counter", precision = 32) + public java.lang.Integer getCounter() { + return getValue(org.jooq.test.postgres.generatedclasses.tables.TTriggers.T_TRIGGERS.COUNTER); + } + + /** + * Create a detached TTriggersRecord + */ + public TTriggersRecord() { + super(org.jooq.test.postgres.generatedclasses.tables.TTriggers.T_TRIGGERS); + } +} diff --git a/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/tables/records/T_639NumbersTableRecord.java b/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/tables/records/T_639NumbersTableRecord.java new file mode 100644 index 00000000000..0c3f0fc91c8 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/tables/records/T_639NumbersTableRecord.java @@ -0,0 +1,206 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.postgres.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "t_639_numbers_table", schema = "public") +public class T_639NumbersTableRecord extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = 200037366; + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setId(java.lang.Integer value) { + setValue(org.jooq.test.postgres.generatedclasses.tables.T_639NumbersTable.T_639_NUMBERS_TABLE.ID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + @javax.persistence.Id + @javax.persistence.Column(name = "id", unique = true, nullable = false, precision = 32) + public java.lang.Integer getId() { + return getValue(org.jooq.test.postgres.generatedclasses.tables.T_639NumbersTable.T_639_NUMBERS_TABLE.ID); + } + + /** + * An uncommented item + */ + public void setShort(java.lang.Short value) { + setValue(org.jooq.test.postgres.generatedclasses.tables.T_639NumbersTable.T_639_NUMBERS_TABLE.SHORT, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "short", precision = 16) + public java.lang.Short getShort() { + return getValue(org.jooq.test.postgres.generatedclasses.tables.T_639NumbersTable.T_639_NUMBERS_TABLE.SHORT); + } + + /** + * An uncommented item + */ + public void setInteger(java.lang.Integer value) { + setValue(org.jooq.test.postgres.generatedclasses.tables.T_639NumbersTable.T_639_NUMBERS_TABLE.INTEGER, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "integer", precision = 32) + public java.lang.Integer getInteger() { + return getValue(org.jooq.test.postgres.generatedclasses.tables.T_639NumbersTable.T_639_NUMBERS_TABLE.INTEGER); + } + + /** + * An uncommented item + */ + public void setLong(java.lang.Long value) { + setValue(org.jooq.test.postgres.generatedclasses.tables.T_639NumbersTable.T_639_NUMBERS_TABLE.LONG, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "long", precision = 64) + public java.lang.Long getLong() { + return getValue(org.jooq.test.postgres.generatedclasses.tables.T_639NumbersTable.T_639_NUMBERS_TABLE.LONG); + } + + /** + * An uncommented item + */ + public void setByteDecimal(java.lang.Byte value) { + setValue(org.jooq.test.postgres.generatedclasses.tables.T_639NumbersTable.T_639_NUMBERS_TABLE.BYTE_DECIMAL, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "byte_decimal", precision = 2) + public java.lang.Byte getByteDecimal() { + return getValue(org.jooq.test.postgres.generatedclasses.tables.T_639NumbersTable.T_639_NUMBERS_TABLE.BYTE_DECIMAL); + } + + /** + * An uncommented item + */ + public void setShortDecimal(java.lang.Short value) { + setValue(org.jooq.test.postgres.generatedclasses.tables.T_639NumbersTable.T_639_NUMBERS_TABLE.SHORT_DECIMAL, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "short_decimal", precision = 4) + public java.lang.Short getShortDecimal() { + return getValue(org.jooq.test.postgres.generatedclasses.tables.T_639NumbersTable.T_639_NUMBERS_TABLE.SHORT_DECIMAL); + } + + /** + * An uncommented item + */ + public void setIntegerDecimal(java.lang.Integer value) { + setValue(org.jooq.test.postgres.generatedclasses.tables.T_639NumbersTable.T_639_NUMBERS_TABLE.INTEGER_DECIMAL, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "integer_decimal", precision = 9) + public java.lang.Integer getIntegerDecimal() { + return getValue(org.jooq.test.postgres.generatedclasses.tables.T_639NumbersTable.T_639_NUMBERS_TABLE.INTEGER_DECIMAL); + } + + /** + * An uncommented item + */ + public void setLongDecimal(java.lang.Long value) { + setValue(org.jooq.test.postgres.generatedclasses.tables.T_639NumbersTable.T_639_NUMBERS_TABLE.LONG_DECIMAL, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "long_decimal", precision = 18) + public java.lang.Long getLongDecimal() { + return getValue(org.jooq.test.postgres.generatedclasses.tables.T_639NumbersTable.T_639_NUMBERS_TABLE.LONG_DECIMAL); + } + + /** + * An uncommented item + */ + public void setBigInteger(java.math.BigInteger value) { + setValue(org.jooq.test.postgres.generatedclasses.tables.T_639NumbersTable.T_639_NUMBERS_TABLE.BIG_INTEGER, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "big_integer", precision = 22) + public java.math.BigInteger getBigInteger() { + return getValue(org.jooq.test.postgres.generatedclasses.tables.T_639NumbersTable.T_639_NUMBERS_TABLE.BIG_INTEGER); + } + + /** + * An uncommented item + */ + public void setBigDecimal(java.math.BigDecimal value) { + setValue(org.jooq.test.postgres.generatedclasses.tables.T_639NumbersTable.T_639_NUMBERS_TABLE.BIG_DECIMAL, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "big_decimal", precision = 22, scale = 5) + public java.math.BigDecimal getBigDecimal() { + return getValue(org.jooq.test.postgres.generatedclasses.tables.T_639NumbersTable.T_639_NUMBERS_TABLE.BIG_DECIMAL); + } + + /** + * An uncommented item + */ + public void setFloat(java.lang.Float value) { + setValue(org.jooq.test.postgres.generatedclasses.tables.T_639NumbersTable.T_639_NUMBERS_TABLE.FLOAT, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "float", precision = 24) + public java.lang.Float getFloat() { + return getValue(org.jooq.test.postgres.generatedclasses.tables.T_639NumbersTable.T_639_NUMBERS_TABLE.FLOAT); + } + + /** + * An uncommented item + */ + public void setDouble(java.lang.Double value) { + setValue(org.jooq.test.postgres.generatedclasses.tables.T_639NumbersTable.T_639_NUMBERS_TABLE.DOUBLE, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "double", precision = 53) + public java.lang.Double getDouble() { + return getValue(org.jooq.test.postgres.generatedclasses.tables.T_639NumbersTable.T_639_NUMBERS_TABLE.DOUBLE); + } + + /** + * Create a detached T_639NumbersTableRecord + */ + public T_639NumbersTableRecord() { + super(org.jooq.test.postgres.generatedclasses.tables.T_639NumbersTable.T_639_NUMBERS_TABLE); + } +} diff --git a/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/tables/records/T_658RefRecord.java b/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/tables/records/T_658RefRecord.java new file mode 100644 index 00000000000..2404271b3a8 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/tables/records/T_658RefRecord.java @@ -0,0 +1,183 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.postgres.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "t_658_ref", schema = "public") +public class T_658RefRecord extends org.jooq.impl.TableRecordImpl { + + private static final long serialVersionUID = 2019925529; + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT t_658_ref__fk_t_658_11
+	 * FOREIGN KEY (ref_11)
+	 * REFERENCES public.t_658_11 (id)
+	 * 
+ */ + public void setRef_11(org.jooq.test.postgres.generatedclasses.enums.T_658_11 value) { + setValue(org.jooq.test.postgres.generatedclasses.tables.T_658Ref.T_658_REF.REF_11, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT t_658_ref__fk_t_658_11
+	 * FOREIGN KEY (ref_11)
+	 * REFERENCES public.t_658_11 (id)
+	 * 
+ */ + @javax.persistence.Column(name = "ref_11", length = 3) + public org.jooq.test.postgres.generatedclasses.enums.T_658_11 getRef_11() { + return getValue(org.jooq.test.postgres.generatedclasses.tables.T_658Ref.T_658_REF.REF_11); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT t_658_ref__fk_t_658_21
+	 * FOREIGN KEY (ref_21)
+	 * REFERENCES public.t_658_21 (id)
+	 * 
+ */ + public void setRef_21(org.jooq.test.postgres.generatedclasses.enums.T_658_21 value) { + setValue(org.jooq.test.postgres.generatedclasses.tables.T_658Ref.T_658_REF.REF_21, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT t_658_ref__fk_t_658_21
+	 * FOREIGN KEY (ref_21)
+	 * REFERENCES public.t_658_21 (id)
+	 * 
+ */ + @javax.persistence.Column(name = "ref_21", precision = 32) + public org.jooq.test.postgres.generatedclasses.enums.T_658_21 getRef_21() { + return getValue(org.jooq.test.postgres.generatedclasses.tables.T_658Ref.T_658_REF.REF_21); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT t_658_ref__fk_t_658_31
+	 * FOREIGN KEY (ref_31)
+	 * REFERENCES public.t_658_31 (id)
+	 * 
+ */ + public void setRef_31(org.jooq.test.postgres.generatedclasses.enums.T_658_31 value) { + setValue(org.jooq.test.postgres.generatedclasses.tables.T_658Ref.T_658_REF.REF_31, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT t_658_ref__fk_t_658_31
+	 * FOREIGN KEY (ref_31)
+	 * REFERENCES public.t_658_31 (id)
+	 * 
+ */ + @javax.persistence.Column(name = "ref_31", precision = 64) + public org.jooq.test.postgres.generatedclasses.enums.T_658_31 getRef_31() { + return getValue(org.jooq.test.postgres.generatedclasses.tables.T_658Ref.T_658_REF.REF_31); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT t_658_ref__fk_t_658_12
+	 * FOREIGN KEY (ref_12)
+	 * REFERENCES public.t_658_12 (id)
+	 * 
+ */ + public void setRef_12(org.jooq.test.postgres.generatedclasses.enums.T_658_12 value) { + setValue(org.jooq.test.postgres.generatedclasses.tables.T_658Ref.T_658_REF.REF_12, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT t_658_ref__fk_t_658_12
+	 * FOREIGN KEY (ref_12)
+	 * REFERENCES public.t_658_12 (id)
+	 * 
+ */ + @javax.persistence.Column(name = "ref_12", length = 3) + public org.jooq.test.postgres.generatedclasses.enums.T_658_12 getRef_12() { + return getValue(org.jooq.test.postgres.generatedclasses.tables.T_658Ref.T_658_REF.REF_12); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT t_658_ref__fk_t_658_22
+	 * FOREIGN KEY (ref_22)
+	 * REFERENCES public.t_658_22 (id)
+	 * 
+ */ + public void setRef_22(org.jooq.test.postgres.generatedclasses.enums.T_658_22 value) { + setValue(org.jooq.test.postgres.generatedclasses.tables.T_658Ref.T_658_REF.REF_22, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT t_658_ref__fk_t_658_22
+	 * FOREIGN KEY (ref_22)
+	 * REFERENCES public.t_658_22 (id)
+	 * 
+ */ + @javax.persistence.Column(name = "ref_22", precision = 32) + public org.jooq.test.postgres.generatedclasses.enums.T_658_22 getRef_22() { + return getValue(org.jooq.test.postgres.generatedclasses.tables.T_658Ref.T_658_REF.REF_22); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT t_658_ref__fk_t_658_32
+	 * FOREIGN KEY (ref_32)
+	 * REFERENCES public.t_658_32 (id)
+	 * 
+ */ + public void setRef_32(org.jooq.test.postgres.generatedclasses.enums.T_658_32 value) { + setValue(org.jooq.test.postgres.generatedclasses.tables.T_658Ref.T_658_REF.REF_32, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT t_658_ref__fk_t_658_32
+	 * FOREIGN KEY (ref_32)
+	 * REFERENCES public.t_658_32 (id)
+	 * 
+ */ + @javax.persistence.Column(name = "ref_32", precision = 64) + public org.jooq.test.postgres.generatedclasses.enums.T_658_32 getRef_32() { + return getValue(org.jooq.test.postgres.generatedclasses.tables.T_658Ref.T_658_REF.REF_32); + } + + /** + * Create a detached T_658RefRecord + */ + public T_658RefRecord() { + super(org.jooq.test.postgres.generatedclasses.tables.T_658Ref.T_658_REF); + } +} diff --git a/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/tables/records/T_725LobTestRecord.java b/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/tables/records/T_725LobTestRecord.java new file mode 100644 index 00000000000..d5a821b87fd --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/tables/records/T_725LobTestRecord.java @@ -0,0 +1,56 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.postgres.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "t_725_lob_test", schema = "public") +public class T_725LobTestRecord extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = -1069249805; + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setId(java.lang.Integer value) { + setValue(org.jooq.test.postgres.generatedclasses.tables.T_725LobTest.T_725_LOB_TEST.ID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + @javax.persistence.Id + @javax.persistence.Column(name = "id", unique = true, nullable = false, precision = 32) + public java.lang.Integer getId() { + return getValue(org.jooq.test.postgres.generatedclasses.tables.T_725LobTest.T_725_LOB_TEST.ID); + } + + /** + * An uncommented item + */ + public void setLob(byte[] value) { + setValue(org.jooq.test.postgres.generatedclasses.tables.T_725LobTest.T_725_LOB_TEST.LOB, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "lob") + public byte[] getLob() { + return getValue(org.jooq.test.postgres.generatedclasses.tables.T_725LobTest.T_725_LOB_TEST.LOB); + } + + /** + * Create a detached T_725LobTestRecord + */ + public T_725LobTestRecord() { + super(org.jooq.test.postgres.generatedclasses.tables.T_725LobTest.T_725_LOB_TEST); + } +} diff --git a/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/tables/records/T_785Record.java b/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/tables/records/T_785Record.java new file mode 100644 index 00000000000..02303de70a8 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/tables/records/T_785Record.java @@ -0,0 +1,66 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.postgres.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "t_785", schema = "public") +public class T_785Record extends org.jooq.impl.TableRecordImpl { + + private static final long serialVersionUID = 1794402706; + + /** + * An uncommented item + */ + public void setId(java.lang.Integer value) { + setValue(org.jooq.test.postgres.generatedclasses.tables.T_785.T_785.ID, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "id", precision = 32) + public java.lang.Integer getId() { + return getValue(org.jooq.test.postgres.generatedclasses.tables.T_785.T_785.ID); + } + + /** + * An uncommented item + */ + public void setName(java.lang.String value) { + setValue(org.jooq.test.postgres.generatedclasses.tables.T_785.T_785.NAME, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "name", length = 50) + public java.lang.String getName() { + return getValue(org.jooq.test.postgres.generatedclasses.tables.T_785.T_785.NAME); + } + + /** + * An uncommented item + */ + public void setValue(java.lang.String value) { + setValue(org.jooq.test.postgres.generatedclasses.tables.T_785.T_785.VALUE, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "value", length = 50) + public java.lang.String getValue() { + return getValue(org.jooq.test.postgres.generatedclasses.tables.T_785.T_785.VALUE); + } + + /** + * Create a detached T_785Record + */ + public T_785Record() { + super(org.jooq.test.postgres.generatedclasses.tables.T_785.T_785); + } +} diff --git a/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/tables/records/T_959Record.java b/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/tables/records/T_959Record.java new file mode 100644 index 00000000000..99ee77e0e6a --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/tables/records/T_959Record.java @@ -0,0 +1,36 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.postgres.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "t_959", schema = "public") +public class T_959Record extends org.jooq.impl.TableRecordImpl { + + private static final long serialVersionUID = -1466362003; + + /** + * An uncommented item + */ + public void setJavaKeywords(org.jooq.test.postgres.generatedclasses.enums.U_959 value) { + setValue(org.jooq.test.postgres.generatedclasses.tables.T_959.T_959.JAVA_KEYWORDS, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "java_keywords") + public org.jooq.test.postgres.generatedclasses.enums.U_959 getJavaKeywords() { + return getValue(org.jooq.test.postgres.generatedclasses.tables.T_959.T_959.JAVA_KEYWORDS); + } + + /** + * Create a detached T_959Record + */ + public T_959Record() { + super(org.jooq.test.postgres.generatedclasses.tables.T_959.T_959); + } +} diff --git a/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/tables/records/T_986_1Record.java b/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/tables/records/T_986_1Record.java new file mode 100644 index 00000000000..c9560b747dd --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/tables/records/T_986_1Record.java @@ -0,0 +1,48 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.postgres.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "t_986_1", schema = "public") +public class T_986_1Record extends org.jooq.impl.TableRecordImpl { + + private static final long serialVersionUID = 1867185835; + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT t_986_1__fk_986
+	 * FOREIGN KEY (ref, ref)
+	 * REFERENCES public.x_unused (id)
+	 * 
+ */ + public void setRef(java.lang.Integer value) { + setValue(org.jooq.test.postgres.generatedclasses.tables.T_986_1.T_986_1.REF, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT t_986_1__fk_986
+	 * FOREIGN KEY (ref, ref)
+	 * REFERENCES public.x_unused (id)
+	 * 
+ */ + @javax.persistence.Column(name = "ref", precision = 32) + public java.lang.Integer getRef() { + return getValue(org.jooq.test.postgres.generatedclasses.tables.T_986_1.T_986_1.REF); + } + + /** + * Create a detached T_986_1Record + */ + public T_986_1Record() { + super(org.jooq.test.postgres.generatedclasses.tables.T_986_1.T_986_1); + } +} diff --git a/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/tables/records/T_986_2Record.java b/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/tables/records/T_986_2Record.java new file mode 100644 index 00000000000..7121a86f893 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/tables/records/T_986_2Record.java @@ -0,0 +1,48 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.postgres.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "t_986_2", schema = "public") +public class T_986_2Record extends org.jooq.impl.TableRecordImpl { + + private static final long serialVersionUID = 1406775212; + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT t_986_2__fk_986
+	 * FOREIGN KEY (ref, ref)
+	 * REFERENCES public.x_unused (id)
+	 * 
+ */ + public void setRef(java.lang.Integer value) { + setValue(org.jooq.test.postgres.generatedclasses.tables.T_986_2.T_986_2.REF, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT t_986_2__fk_986
+	 * FOREIGN KEY (ref, ref)
+	 * REFERENCES public.x_unused (id)
+	 * 
+ */ + @javax.persistence.Column(name = "ref", precision = 32) + public java.lang.Integer getRef() { + return getValue(org.jooq.test.postgres.generatedclasses.tables.T_986_2.T_986_2.REF); + } + + /** + * Create a detached T_986_2Record + */ + public T_986_2Record() { + super(org.jooq.test.postgres.generatedclasses.tables.T_986_2.T_986_2); + } +} diff --git a/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/tables/records/VAuthorRecord.java b/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/tables/records/VAuthorRecord.java new file mode 100644 index 00000000000..11b379da3ba --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/tables/records/VAuthorRecord.java @@ -0,0 +1,111 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.postgres.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "v_author", schema = "public") +public class VAuthorRecord extends org.jooq.impl.TableRecordImpl { + + private static final long serialVersionUID = 2120350864; + + /** + * An uncommented item + */ + public void setId(java.lang.Integer value) { + setValue(org.jooq.test.postgres.generatedclasses.tables.VAuthor.V_AUTHOR.ID, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "id", precision = 32) + public java.lang.Integer getId() { + return getValue(org.jooq.test.postgres.generatedclasses.tables.VAuthor.V_AUTHOR.ID); + } + + /** + * An uncommented item + */ + public void setFirstName(java.lang.String value) { + setValue(org.jooq.test.postgres.generatedclasses.tables.VAuthor.V_AUTHOR.FIRST_NAME, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "first_name", length = 50) + public java.lang.String getFirstName() { + return getValue(org.jooq.test.postgres.generatedclasses.tables.VAuthor.V_AUTHOR.FIRST_NAME); + } + + /** + * An uncommented item + */ + public void setLastName(java.lang.String value) { + setValue(org.jooq.test.postgres.generatedclasses.tables.VAuthor.V_AUTHOR.LAST_NAME, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "last_name", length = 50) + public java.lang.String getLastName() { + return getValue(org.jooq.test.postgres.generatedclasses.tables.VAuthor.V_AUTHOR.LAST_NAME); + } + + /** + * An uncommented item + */ + public void setDateOfBirth(java.sql.Date value) { + setValue(org.jooq.test.postgres.generatedclasses.tables.VAuthor.V_AUTHOR.DATE_OF_BIRTH, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "date_of_birth") + public java.sql.Date getDateOfBirth() { + return getValue(org.jooq.test.postgres.generatedclasses.tables.VAuthor.V_AUTHOR.DATE_OF_BIRTH); + } + + /** + * An uncommented item + */ + public void setYearOfBirth(java.lang.Integer value) { + setValue(org.jooq.test.postgres.generatedclasses.tables.VAuthor.V_AUTHOR.YEAR_OF_BIRTH, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "year_of_birth", precision = 32) + public java.lang.Integer getYearOfBirth() { + return getValue(org.jooq.test.postgres.generatedclasses.tables.VAuthor.V_AUTHOR.YEAR_OF_BIRTH); + } + + /** + * An uncommented item + */ + public void setAddress(org.jooq.test.postgres.generatedclasses.udt.records.UAddressTypeRecord value) { + setValue(org.jooq.test.postgres.generatedclasses.tables.VAuthor.V_AUTHOR.ADDRESS, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "address") + public org.jooq.test.postgres.generatedclasses.udt.records.UAddressTypeRecord getAddress() { + return getValue(org.jooq.test.postgres.generatedclasses.tables.VAuthor.V_AUTHOR.ADDRESS); + } + + /** + * Create a detached VAuthorRecord + */ + public VAuthorRecord() { + super(org.jooq.test.postgres.generatedclasses.tables.VAuthor.V_AUTHOR); + } +} diff --git a/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/tables/records/VBookRecord.java b/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/tables/records/VBookRecord.java new file mode 100644 index 00000000000..4cda29f9b1e --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/tables/records/VBookRecord.java @@ -0,0 +1,171 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.postgres.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "v_book", schema = "public") +public class VBookRecord extends org.jooq.impl.TableRecordImpl { + + private static final long serialVersionUID = 737609274; + + /** + * An uncommented item + */ + public void setId(java.lang.Integer value) { + setValue(org.jooq.test.postgres.generatedclasses.tables.VBook.V_BOOK.ID, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "id", precision = 32) + public java.lang.Integer getId() { + return getValue(org.jooq.test.postgres.generatedclasses.tables.VBook.V_BOOK.ID); + } + + /** + * An uncommented item + */ + public void setAuthorId(java.lang.Integer value) { + setValue(org.jooq.test.postgres.generatedclasses.tables.VBook.V_BOOK.AUTHOR_ID, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "author_id", precision = 32) + public java.lang.Integer getAuthorId() { + return getValue(org.jooq.test.postgres.generatedclasses.tables.VBook.V_BOOK.AUTHOR_ID); + } + + /** + * An uncommented item + */ + public void setCoAuthorId(java.lang.Integer value) { + setValue(org.jooq.test.postgres.generatedclasses.tables.VBook.V_BOOK.CO_AUTHOR_ID, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "co_author_id", precision = 32) + public java.lang.Integer getCoAuthorId() { + return getValue(org.jooq.test.postgres.generatedclasses.tables.VBook.V_BOOK.CO_AUTHOR_ID); + } + + /** + * An uncommented item + */ + public void setDetailsId(java.lang.Integer value) { + setValue(org.jooq.test.postgres.generatedclasses.tables.VBook.V_BOOK.DETAILS_ID, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "details_id", precision = 32) + public java.lang.Integer getDetailsId() { + return getValue(org.jooq.test.postgres.generatedclasses.tables.VBook.V_BOOK.DETAILS_ID); + } + + /** + * An uncommented item + */ + public void setTitle(java.lang.String value) { + setValue(org.jooq.test.postgres.generatedclasses.tables.VBook.V_BOOK.TITLE, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "title", length = 400) + public java.lang.String getTitle() { + return getValue(org.jooq.test.postgres.generatedclasses.tables.VBook.V_BOOK.TITLE); + } + + /** + * An uncommented item + */ + public void setPublishedIn(java.lang.Integer value) { + setValue(org.jooq.test.postgres.generatedclasses.tables.VBook.V_BOOK.PUBLISHED_IN, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "published_in", precision = 32) + public java.lang.Integer getPublishedIn() { + return getValue(org.jooq.test.postgres.generatedclasses.tables.VBook.V_BOOK.PUBLISHED_IN); + } + + /** + * An uncommented item + */ + public void setLanguageId(java.lang.Integer value) { + setValue(org.jooq.test.postgres.generatedclasses.tables.VBook.V_BOOK.LANGUAGE_ID, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "language_id", precision = 32) + public java.lang.Integer getLanguageId() { + return getValue(org.jooq.test.postgres.generatedclasses.tables.VBook.V_BOOK.LANGUAGE_ID); + } + + /** + * An uncommented item + */ + public void setContentText(java.lang.String value) { + setValue(org.jooq.test.postgres.generatedclasses.tables.VBook.V_BOOK.CONTENT_TEXT, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "content_text") + public java.lang.String getContentText() { + return getValue(org.jooq.test.postgres.generatedclasses.tables.VBook.V_BOOK.CONTENT_TEXT); + } + + /** + * An uncommented item + */ + public void setContentPdf(byte[] value) { + setValue(org.jooq.test.postgres.generatedclasses.tables.VBook.V_BOOK.CONTENT_PDF, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "content_pdf") + public byte[] getContentPdf() { + return getValue(org.jooq.test.postgres.generatedclasses.tables.VBook.V_BOOK.CONTENT_PDF); + } + + /** + * An uncommented item + */ + public void setStatus(org.jooq.test.postgres.generatedclasses.enums.UBookStatus value) { + setValue(org.jooq.test.postgres.generatedclasses.tables.VBook.V_BOOK.STATUS, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "status") + public org.jooq.test.postgres.generatedclasses.enums.UBookStatus getStatus() { + return getValue(org.jooq.test.postgres.generatedclasses.tables.VBook.V_BOOK.STATUS); + } + + /** + * Create a detached VBookRecord + */ + public VBookRecord() { + super(org.jooq.test.postgres.generatedclasses.tables.VBook.V_BOOK); + } +} diff --git a/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/tables/records/VLibraryRecord.java b/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/tables/records/VLibraryRecord.java new file mode 100644 index 00000000000..bb3f6a1c5ae --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/tables/records/VLibraryRecord.java @@ -0,0 +1,51 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.postgres.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "v_library", schema = "public") +public class VLibraryRecord extends org.jooq.impl.TableRecordImpl { + + private static final long serialVersionUID = 291353944; + + /** + * An uncommented item + */ + public void setAuthor(java.lang.String value) { + setValue(org.jooq.test.postgres.generatedclasses.tables.VLibrary.V_LIBRARY.AUTHOR, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "author") + public java.lang.String getAuthor() { + return getValue(org.jooq.test.postgres.generatedclasses.tables.VLibrary.V_LIBRARY.AUTHOR); + } + + /** + * An uncommented item + */ + public void setTitle(java.lang.String value) { + setValue(org.jooq.test.postgres.generatedclasses.tables.VLibrary.V_LIBRARY.TITLE, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "title", length = 400) + public java.lang.String getTitle() { + return getValue(org.jooq.test.postgres.generatedclasses.tables.VLibrary.V_LIBRARY.TITLE); + } + + /** + * Create a detached VLibraryRecord + */ + public VLibraryRecord() { + super(org.jooq.test.postgres.generatedclasses.tables.VLibrary.V_LIBRARY); + } +} diff --git a/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/tables/records/XTestCase_64_69Record.java b/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/tables/records/XTestCase_64_69Record.java new file mode 100644 index 00000000000..c1ffbeaf8a5 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/tables/records/XTestCase_64_69Record.java @@ -0,0 +1,96 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.postgres.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "x_test_case_64_69", schema = "public") +public class XTestCase_64_69Record extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = -1253361970; + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setId(java.lang.Integer value) { + setValue(org.jooq.test.postgres.generatedclasses.tables.XTestCase_64_69.X_TEST_CASE_64_69.ID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + @javax.persistence.Id + @javax.persistence.Column(name = "id", unique = true, nullable = false, precision = 32) + public java.lang.Integer getId() { + return getValue(org.jooq.test.postgres.generatedclasses.tables.XTestCase_64_69.X_TEST_CASE_64_69.ID); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.util.List fetchXTestCase_71List() { + return create() + .selectFrom(org.jooq.test.postgres.generatedclasses.tables.XTestCase_71.X_TEST_CASE_71) + .where(org.jooq.test.postgres.generatedclasses.tables.XTestCase_71.X_TEST_CASE_71.TEST_CASE_64_69_ID.equal(getValueAsShort(org.jooq.test.postgres.generatedclasses.tables.XTestCase_64_69.X_TEST_CASE_64_69.ID))) + .fetch(); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT x_test_case_64_69__fk_x_test_case_64_69a
+	 * FOREIGN KEY (unused_id)
+	 * REFERENCES public.x_unused (id)
+	 * 
+ */ + public void setUnusedId(java.lang.Integer value) { + setValue(org.jooq.test.postgres.generatedclasses.tables.XTestCase_64_69.X_TEST_CASE_64_69.UNUSED_ID, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT x_test_case_64_69__fk_x_test_case_64_69a
+	 * FOREIGN KEY (unused_id)
+	 * REFERENCES public.x_unused (id)
+	 * 
+ */ + @javax.persistence.Column(name = "unused_id", precision = 32) + public java.lang.Integer getUnusedId() { + return getValue(org.jooq.test.postgres.generatedclasses.tables.XTestCase_64_69.X_TEST_CASE_64_69.UNUSED_ID); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT x_test_case_64_69__fk_x_test_case_64_69a
+	 * FOREIGN KEY (unused_id)
+	 * REFERENCES public.x_unused (id)
+	 * 
+ */ + public org.jooq.test.postgres.generatedclasses.tables.records.XUnusedRecord fetchXUnused() { + return create() + .selectFrom(org.jooq.test.postgres.generatedclasses.tables.XUnused.X_UNUSED) + .where(org.jooq.test.postgres.generatedclasses.tables.XUnused.X_UNUSED.ID.equal(getValue(org.jooq.test.postgres.generatedclasses.tables.XTestCase_64_69.X_TEST_CASE_64_69.UNUSED_ID))) + .fetchOne(); + } + + /** + * Create a detached XTestCase_64_69Record + */ + public XTestCase_64_69Record() { + super(org.jooq.test.postgres.generatedclasses.tables.XTestCase_64_69.X_TEST_CASE_64_69); + } +} diff --git a/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/tables/records/XTestCase_71Record.java b/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/tables/records/XTestCase_71Record.java new file mode 100644 index 00000000000..0f7d312fa39 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/tables/records/XTestCase_71Record.java @@ -0,0 +1,84 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.postgres.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "x_test_case_71", schema = "public") +public class XTestCase_71Record extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = 115665010; + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setId(java.lang.Integer value) { + setValue(org.jooq.test.postgres.generatedclasses.tables.XTestCase_71.X_TEST_CASE_71.ID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + @javax.persistence.Id + @javax.persistence.Column(name = "id", unique = true, nullable = false, precision = 32) + public java.lang.Integer getId() { + return getValue(org.jooq.test.postgres.generatedclasses.tables.XTestCase_71.X_TEST_CASE_71.ID); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT x_test_case_71__fk_x_test_case_71
+	 * FOREIGN KEY (test_case_64_69_id)
+	 * REFERENCES public.x_test_case_64_69 (id)
+	 * 
+ */ + public void setTestCase_64_69Id(java.lang.Short value) { + setValue(org.jooq.test.postgres.generatedclasses.tables.XTestCase_71.X_TEST_CASE_71.TEST_CASE_64_69_ID, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT x_test_case_71__fk_x_test_case_71
+	 * FOREIGN KEY (test_case_64_69_id)
+	 * REFERENCES public.x_test_case_64_69 (id)
+	 * 
+ */ + @javax.persistence.Column(name = "test_case_64_69_id", precision = 16) + public java.lang.Short getTestCase_64_69Id() { + return getValue(org.jooq.test.postgres.generatedclasses.tables.XTestCase_71.X_TEST_CASE_71.TEST_CASE_64_69_ID); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT x_test_case_71__fk_x_test_case_71
+	 * FOREIGN KEY (test_case_64_69_id)
+	 * REFERENCES public.x_test_case_64_69 (id)
+	 * 
+ */ + public org.jooq.test.postgres.generatedclasses.tables.records.XTestCase_64_69Record fetchXTestCase_64_69() { + return create() + .selectFrom(org.jooq.test.postgres.generatedclasses.tables.XTestCase_64_69.X_TEST_CASE_64_69) + .where(org.jooq.test.postgres.generatedclasses.tables.XTestCase_64_69.X_TEST_CASE_64_69.ID.equal(getValueAsInteger(org.jooq.test.postgres.generatedclasses.tables.XTestCase_71.X_TEST_CASE_71.TEST_CASE_64_69_ID))) + .fetchOne(); + } + + /** + * Create a detached XTestCase_71Record + */ + public XTestCase_71Record() { + super(org.jooq.test.postgres.generatedclasses.tables.XTestCase_71.X_TEST_CASE_71); + } +} diff --git a/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/tables/records/XTestCase_85Record.java b/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/tables/records/XTestCase_85Record.java new file mode 100644 index 00000000000..473d6ddb5d1 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/tables/records/XTestCase_85Record.java @@ -0,0 +1,112 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.postgres.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "x_test_case_85", schema = "public") +public class XTestCase_85Record extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = -1322069311; + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setId(java.lang.Integer value) { + setValue(org.jooq.test.postgres.generatedclasses.tables.XTestCase_85.X_TEST_CASE_85.ID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + @javax.persistence.Id + @javax.persistence.Column(name = "id", unique = true, nullable = false, precision = 32) + public java.lang.Integer getId() { + return getValue(org.jooq.test.postgres.generatedclasses.tables.XTestCase_85.X_TEST_CASE_85.ID); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT x_test_case_85__fk_x_test_case_85
+	 * FOREIGN KEY (x_unused_id, x_unused_name)
+	 * REFERENCES public.x_unused (id, name)
+	 * 
+ */ + public void setXUnusedId(java.lang.Integer value) { + setValue(org.jooq.test.postgres.generatedclasses.tables.XTestCase_85.X_TEST_CASE_85.X_UNUSED_ID, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT x_test_case_85__fk_x_test_case_85
+	 * FOREIGN KEY (x_unused_id, x_unused_name)
+	 * REFERENCES public.x_unused (id, name)
+	 * 
+ */ + @javax.persistence.Column(name = "x_unused_id", precision = 32) + public java.lang.Integer getXUnusedId() { + return getValue(org.jooq.test.postgres.generatedclasses.tables.XTestCase_85.X_TEST_CASE_85.X_UNUSED_ID); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT x_test_case_85__fk_x_test_case_85
+	 * FOREIGN KEY (x_unused_id, x_unused_name)
+	 * REFERENCES public.x_unused (id, name)
+	 * 
+ */ + public org.jooq.test.postgres.generatedclasses.tables.records.XUnusedRecord fetchXUnused() { + return create() + .selectFrom(org.jooq.test.postgres.generatedclasses.tables.XUnused.X_UNUSED) + .where(org.jooq.test.postgres.generatedclasses.tables.XUnused.X_UNUSED.ID.equal(getValue(org.jooq.test.postgres.generatedclasses.tables.XTestCase_85.X_TEST_CASE_85.X_UNUSED_ID))) + .and(org.jooq.test.postgres.generatedclasses.tables.XUnused.X_UNUSED.NAME.equal(getValue(org.jooq.test.postgres.generatedclasses.tables.XTestCase_85.X_TEST_CASE_85.X_UNUSED_NAME))) + .fetchOne(); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT x_test_case_85__fk_x_test_case_85
+	 * FOREIGN KEY (x_unused_id, x_unused_name)
+	 * REFERENCES public.x_unused (id, name)
+	 * 
+ */ + public void setXUnusedName(java.lang.String value) { + setValue(org.jooq.test.postgres.generatedclasses.tables.XTestCase_85.X_TEST_CASE_85.X_UNUSED_NAME, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT x_test_case_85__fk_x_test_case_85
+	 * FOREIGN KEY (x_unused_id, x_unused_name)
+	 * REFERENCES public.x_unused (id, name)
+	 * 
+ */ + @javax.persistence.Column(name = "x_unused_name", length = 10) + public java.lang.String getXUnusedName() { + return getValue(org.jooq.test.postgres.generatedclasses.tables.XTestCase_85.X_TEST_CASE_85.X_UNUSED_NAME); + } + + /** + * Create a detached XTestCase_85Record + */ + public XTestCase_85Record() { + super(org.jooq.test.postgres.generatedclasses.tables.XTestCase_85.X_TEST_CASE_85); + } +} diff --git a/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/tables/records/XUnusedRecord.java b/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/tables/records/XUnusedRecord.java new file mode 100644 index 00000000000..38e278cbe87 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/tables/records/XUnusedRecord.java @@ -0,0 +1,335 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.postgres.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + */ +@javax.persistence.Entity +@javax.persistence.Table(name = "x_unused", schema = "public", uniqueConstraints = { + @javax.persistence.UniqueConstraint(columnNames = {"id", "name"}) +}) +public class XUnusedRecord extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = -1944548006; + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setId(java.lang.Integer value) { + setValue(org.jooq.test.postgres.generatedclasses.tables.XUnused.X_UNUSED.ID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + @javax.persistence.Column(name = "id", unique = true, nullable = false, precision = 32) + public java.lang.Integer getId() { + return getValue(org.jooq.test.postgres.generatedclasses.tables.XUnused.X_UNUSED.ID); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.util.List fetchXTestCase_85List() { + return create() + .selectFrom(org.jooq.test.postgres.generatedclasses.tables.XTestCase_85.X_TEST_CASE_85) + .where(org.jooq.test.postgres.generatedclasses.tables.XTestCase_85.X_TEST_CASE_85.X_UNUSED_ID.equal(getValue(org.jooq.test.postgres.generatedclasses.tables.XUnused.X_UNUSED.ID))) + .and(org.jooq.test.postgres.generatedclasses.tables.XTestCase_85.X_TEST_CASE_85.X_UNUSED_NAME.equal(getValue(org.jooq.test.postgres.generatedclasses.tables.XUnused.X_UNUSED.NAME))) + .fetch(); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.util.List fetchXUnusedList() { + return create() + .selectFrom(org.jooq.test.postgres.generatedclasses.tables.XUnused.X_UNUSED) + .where(org.jooq.test.postgres.generatedclasses.tables.XUnused.X_UNUSED.ID_REF.equal(getValue(org.jooq.test.postgres.generatedclasses.tables.XUnused.X_UNUSED.ID))) + .and(org.jooq.test.postgres.generatedclasses.tables.XUnused.X_UNUSED.NAME_REF.equal(getValue(org.jooq.test.postgres.generatedclasses.tables.XUnused.X_UNUSED.NAME))) + .fetch(); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.util.List fetchXTestCase_64_69List() { + return create() + .selectFrom(org.jooq.test.postgres.generatedclasses.tables.XTestCase_64_69.X_TEST_CASE_64_69) + .where(org.jooq.test.postgres.generatedclasses.tables.XTestCase_64_69.X_TEST_CASE_64_69.UNUSED_ID.equal(getValue(org.jooq.test.postgres.generatedclasses.tables.XUnused.X_UNUSED.ID))) + .fetch(); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setName(java.lang.String value) { + setValue(org.jooq.test.postgres.generatedclasses.tables.XUnused.X_UNUSED.NAME, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + @javax.persistence.Column(name = "name", nullable = false, length = 10) + public java.lang.String getName() { + return getValue(org.jooq.test.postgres.generatedclasses.tables.XUnused.X_UNUSED.NAME); + } + + /** + * An uncommented item + */ + public void setBigInteger(java.math.BigInteger value) { + setValue(org.jooq.test.postgres.generatedclasses.tables.XUnused.X_UNUSED.BIG_INTEGER, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "big_integer", precision = 25) + public java.math.BigInteger getBigInteger() { + return getValue(org.jooq.test.postgres.generatedclasses.tables.XUnused.X_UNUSED.BIG_INTEGER); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT x_unused__fk_x_unused_self
+	 * FOREIGN KEY (id_ref, name_ref)
+	 * REFERENCES public.x_unused (id, name)
+	 * 
+ */ + public void setIdRef(java.lang.Integer value) { + setValue(org.jooq.test.postgres.generatedclasses.tables.XUnused.X_UNUSED.ID_REF, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT x_unused__fk_x_unused_self
+	 * FOREIGN KEY (id_ref, name_ref)
+	 * REFERENCES public.x_unused (id, name)
+	 * 
+ */ + @javax.persistence.Column(name = "id_ref", precision = 32) + public java.lang.Integer getIdRef() { + return getValue(org.jooq.test.postgres.generatedclasses.tables.XUnused.X_UNUSED.ID_REF); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT x_unused__fk_x_unused_self
+	 * FOREIGN KEY (id_ref, name_ref)
+	 * REFERENCES public.x_unused (id, name)
+	 * 
+ */ + public org.jooq.test.postgres.generatedclasses.tables.records.XUnusedRecord fetchXUnused() { + return create() + .selectFrom(org.jooq.test.postgres.generatedclasses.tables.XUnused.X_UNUSED) + .where(org.jooq.test.postgres.generatedclasses.tables.XUnused.X_UNUSED.ID.equal(getValue(org.jooq.test.postgres.generatedclasses.tables.XUnused.X_UNUSED.ID_REF))) + .and(org.jooq.test.postgres.generatedclasses.tables.XUnused.X_UNUSED.NAME.equal(getValue(org.jooq.test.postgres.generatedclasses.tables.XUnused.X_UNUSED.NAME_REF))) + .fetchOne(); + } + + /** + * An uncommented item + */ + public void setClass_(java.lang.Integer value) { + setValue(org.jooq.test.postgres.generatedclasses.tables.XUnused.X_UNUSED.CLASS, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "class", precision = 32) + public java.lang.Integer getClass_() { + return getValue(org.jooq.test.postgres.generatedclasses.tables.XUnused.X_UNUSED.CLASS); + } + + /** + * An uncommented item + */ + public void setFields_(java.lang.Integer value) { + setValue(org.jooq.test.postgres.generatedclasses.tables.XUnused.X_UNUSED.FIELDS, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "fields", precision = 32) + public java.lang.Integer getFields_() { + return getValue(org.jooq.test.postgres.generatedclasses.tables.XUnused.X_UNUSED.FIELDS); + } + + /** + * An uncommented item + */ + public void setConfiguration_(java.lang.Integer value) { + setValue(org.jooq.test.postgres.generatedclasses.tables.XUnused.X_UNUSED.CONFIGURATION, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "configuration", precision = 32) + public java.lang.Integer getConfiguration_() { + return getValue(org.jooq.test.postgres.generatedclasses.tables.XUnused.X_UNUSED.CONFIGURATION); + } + + /** + * An uncommented item + */ + public void setUDT(java.lang.Integer value) { + setValue(org.jooq.test.postgres.generatedclasses.tables.XUnused.X_UNUSED.U_D_T, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "u_d_t", precision = 32) + public java.lang.Integer getUDT() { + return getValue(org.jooq.test.postgres.generatedclasses.tables.XUnused.X_UNUSED.U_D_T); + } + + /** + * An uncommented item + */ + public void setMetaData_(java.lang.Integer value) { + setValue(org.jooq.test.postgres.generatedclasses.tables.XUnused.X_UNUSED.META_DATA, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "meta_data", precision = 32) + public java.lang.Integer getMetaData_() { + return getValue(org.jooq.test.postgres.generatedclasses.tables.XUnused.X_UNUSED.META_DATA); + } + + /** + * An uncommented item + */ + public void setValues_(java.lang.Integer value) { + setValue(org.jooq.test.postgres.generatedclasses.tables.XUnused.X_UNUSED.VALUES, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "values", precision = 32) + public java.lang.Integer getValues_() { + return getValue(org.jooq.test.postgres.generatedclasses.tables.XUnused.X_UNUSED.VALUES); + } + + /** + * An uncommented item + */ + public void setType0_(java.lang.Integer value) { + setValue(org.jooq.test.postgres.generatedclasses.tables.XUnused.X_UNUSED.TYPE0, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "type0", precision = 32) + public java.lang.Integer getType0_() { + return getValue(org.jooq.test.postgres.generatedclasses.tables.XUnused.X_UNUSED.TYPE0); + } + + /** + * An uncommented item + */ + public void setPrimaryKey(java.lang.Integer value) { + setValue(org.jooq.test.postgres.generatedclasses.tables.XUnused.X_UNUSED.PRIMARY_KEY, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "primary_key", precision = 32) + public java.lang.Integer getPrimaryKey() { + return getValue(org.jooq.test.postgres.generatedclasses.tables.XUnused.X_UNUSED.PRIMARY_KEY); + } + + /** + * An uncommented item + */ + public void setPrimarykey(java.lang.Integer value) { + setValue(org.jooq.test.postgres.generatedclasses.tables.XUnused.X_UNUSED.PRIMARYKEY, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "primarykey", precision = 32) + public java.lang.Integer getPrimarykey() { + return getValue(org.jooq.test.postgres.generatedclasses.tables.XUnused.X_UNUSED.PRIMARYKEY); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT x_unused__fk_x_unused_self
+	 * FOREIGN KEY (id_ref, name_ref)
+	 * REFERENCES public.x_unused (id, name)
+	 * 
+ */ + public void setNameRef(java.lang.String value) { + setValue(org.jooq.test.postgres.generatedclasses.tables.XUnused.X_UNUSED.NAME_REF, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT x_unused__fk_x_unused_self
+	 * FOREIGN KEY (id_ref, name_ref)
+	 * REFERENCES public.x_unused (id, name)
+	 * 
+ */ + @javax.persistence.Column(name = "name_ref", length = 10) + public java.lang.String getNameRef() { + return getValue(org.jooq.test.postgres.generatedclasses.tables.XUnused.X_UNUSED.NAME_REF); + } + + /** + * An uncommented item + */ + public void setField_737(java.math.BigDecimal value) { + setValue(org.jooq.test.postgres.generatedclasses.tables.XUnused.X_UNUSED.FIELD_737, value); + } + + /** + * An uncommented item + */ + @javax.persistence.Column(name = "FIELD 737", precision = 25, scale = 2) + public java.math.BigDecimal getField_737() { + return getValue(org.jooq.test.postgres.generatedclasses.tables.XUnused.X_UNUSED.FIELD_737); + } + + /** + * Create a detached XUnusedRecord + */ + public XUnusedRecord() { + super(org.jooq.test.postgres.generatedclasses.tables.XUnused.X_UNUSED); + } +} diff --git a/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/udt/UAddressType.java b/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/udt/UAddressType.java new file mode 100644 index 00000000000..939794d9515 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/udt/UAddressType.java @@ -0,0 +1,67 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.postgres.generatedclasses.udt; + +/** + * This class is generated by jOOQ. + */ +public class UAddressType extends org.jooq.impl.UDTImpl { + + private static final long serialVersionUID = -15622476; + + /** + * The singleton instance of public.u_address_type + */ + public static final org.jooq.test.postgres.generatedclasses.udt.UAddressType U_ADDRESS_TYPE = new org.jooq.test.postgres.generatedclasses.udt.UAddressType(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.postgres.generatedclasses.udt.records.UAddressTypeRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + */ + public static final org.jooq.UDTField STREET = createField("street", org.jooq.test.postgres.generatedclasses.udt.UStreetType.U_STREET_TYPE.getDataType(), U_ADDRESS_TYPE); + + /** + * An uncommented item + */ + public static final org.jooq.UDTField ZIP = createField("zip", org.jooq.impl.SQLDataType.VARCHAR, U_ADDRESS_TYPE); + + /** + * An uncommented item + */ + public static final org.jooq.UDTField CITY = createField("city", org.jooq.impl.SQLDataType.VARCHAR, U_ADDRESS_TYPE); + + /** + * An uncommented item + */ + public static final org.jooq.UDTField COUNTRY = createField("country", org.jooq.util.postgres.PostgresDataType.VARCHAR.asEnumDataType(org.jooq.test.postgres.generatedclasses.enums.UCountry.class), U_ADDRESS_TYPE); + + /** + * An uncommented item + */ + public static final org.jooq.UDTField SINCE = createField("since", org.jooq.impl.SQLDataType.DATE, U_ADDRESS_TYPE); + + /** + * An uncommented item + */ + public static final org.jooq.UDTField CODE = createField("code", org.jooq.impl.SQLDataType.INTEGER, U_ADDRESS_TYPE); + + /** + * No further instances allowed + */ + private UAddressType() { + super("u_address_type", org.jooq.test.postgres.generatedclasses.Public.PUBLIC); + } +} diff --git a/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/udt/UStreetType.java b/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/udt/UStreetType.java new file mode 100644 index 00000000000..8328624f62c --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/udt/UStreetType.java @@ -0,0 +1,52 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.postgres.generatedclasses.udt; + +/** + * This class is generated by jOOQ. + */ +public class UStreetType extends org.jooq.impl.UDTImpl { + + private static final long serialVersionUID = -578196600; + + /** + * The singleton instance of public.u_street_type + */ + public static final org.jooq.test.postgres.generatedclasses.udt.UStreetType U_STREET_TYPE = new org.jooq.test.postgres.generatedclasses.udt.UStreetType(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.postgres.generatedclasses.udt.records.UStreetTypeRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + */ + public static final org.jooq.UDTField STREET = createField("street", org.jooq.impl.SQLDataType.VARCHAR, U_STREET_TYPE); + + /** + * An uncommented item + */ + public static final org.jooq.UDTField NO = createField("no", org.jooq.impl.SQLDataType.VARCHAR, U_STREET_TYPE); + + /** + * An uncommented item + */ + public static final org.jooq.UDTField FLOORS = createField("floors", org.jooq.impl.SQLDataType.INTEGER.getArrayDataType(), U_STREET_TYPE); + + /** + * No further instances allowed + */ + private UStreetType() { + super("u_street_type", org.jooq.test.postgres.generatedclasses.Public.PUBLIC); + } +} diff --git a/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/udt/records/UAddressTypeRecord.java b/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/udt/records/UAddressTypeRecord.java new file mode 100644 index 00000000000..ed0a10da3e0 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/udt/records/UAddressTypeRecord.java @@ -0,0 +1,101 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.postgres.generatedclasses.udt.records; + +/** + * This class is generated by jOOQ. + */ +public class UAddressTypeRecord extends org.jooq.impl.UDTRecordImpl { + + private static final long serialVersionUID = -1354929159; + + + /** + * An uncommented item + */ + public void setStreet(org.jooq.test.postgres.generatedclasses.udt.records.UStreetTypeRecord value) { + setValue(org.jooq.test.postgres.generatedclasses.udt.UAddressType.STREET, value); + } + + /** + * An uncommented item + */ + public org.jooq.test.postgres.generatedclasses.udt.records.UStreetTypeRecord getStreet() { + return getValue(org.jooq.test.postgres.generatedclasses.udt.UAddressType.STREET); + } + + /** + * An uncommented item + */ + public void setZip(java.lang.String value) { + setValue(org.jooq.test.postgres.generatedclasses.udt.UAddressType.ZIP, value); + } + + /** + * An uncommented item + */ + public java.lang.String getZip() { + return getValue(org.jooq.test.postgres.generatedclasses.udt.UAddressType.ZIP); + } + + /** + * An uncommented item + */ + public void setCity(java.lang.String value) { + setValue(org.jooq.test.postgres.generatedclasses.udt.UAddressType.CITY, value); + } + + /** + * An uncommented item + */ + public java.lang.String getCity() { + return getValue(org.jooq.test.postgres.generatedclasses.udt.UAddressType.CITY); + } + + /** + * An uncommented item + */ + public void setCountry(org.jooq.test.postgres.generatedclasses.enums.UCountry value) { + setValue(org.jooq.test.postgres.generatedclasses.udt.UAddressType.COUNTRY, value); + } + + /** + * An uncommented item + */ + public org.jooq.test.postgres.generatedclasses.enums.UCountry getCountry() { + return getValue(org.jooq.test.postgres.generatedclasses.udt.UAddressType.COUNTRY); + } + + /** + * An uncommented item + */ + public void setSince(java.sql.Date value) { + setValue(org.jooq.test.postgres.generatedclasses.udt.UAddressType.SINCE, value); + } + + /** + * An uncommented item + */ + public java.sql.Date getSince() { + return getValue(org.jooq.test.postgres.generatedclasses.udt.UAddressType.SINCE); + } + + /** + * An uncommented item + */ + public void setCode(java.lang.Integer value) { + setValue(org.jooq.test.postgres.generatedclasses.udt.UAddressType.CODE, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getCode() { + return getValue(org.jooq.test.postgres.generatedclasses.udt.UAddressType.CODE); + } + + public UAddressTypeRecord() { + super(org.jooq.test.postgres.generatedclasses.udt.UAddressType.U_ADDRESS_TYPE); + } +} diff --git a/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/udt/records/UStreetTypeRecord.java b/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/udt/records/UStreetTypeRecord.java new file mode 100644 index 00000000000..69a4cf86195 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/postgres/generatedclasses/udt/records/UStreetTypeRecord.java @@ -0,0 +1,59 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.postgres.generatedclasses.udt.records; + +/** + * This class is generated by jOOQ. + */ +public class UStreetTypeRecord extends org.jooq.impl.UDTRecordImpl { + + private static final long serialVersionUID = -1235026854; + + + /** + * An uncommented item + */ + public void setStreet(java.lang.String value) { + setValue(org.jooq.test.postgres.generatedclasses.udt.UStreetType.STREET, value); + } + + /** + * An uncommented item + */ + public java.lang.String getStreet() { + return getValue(org.jooq.test.postgres.generatedclasses.udt.UStreetType.STREET); + } + + /** + * An uncommented item + */ + public void setNo(java.lang.String value) { + setValue(org.jooq.test.postgres.generatedclasses.udt.UStreetType.NO, value); + } + + /** + * An uncommented item + */ + public java.lang.String getNo() { + return getValue(org.jooq.test.postgres.generatedclasses.udt.UStreetType.NO); + } + + /** + * An uncommented item + */ + public void setFloors(java.lang.Integer[] value) { + setValue(org.jooq.test.postgres.generatedclasses.udt.UStreetType.FLOORS, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer[] getFloors() { + return getValue(org.jooq.test.postgres.generatedclasses.udt.UStreetType.FLOORS); + } + + public UStreetTypeRecord() { + super(org.jooq.test.postgres.generatedclasses.udt.UStreetType.U_STREET_TYPE); + } +} diff --git a/jOOQ-test/src/org/jooq/test/postgres/jooq_wicket_example.sql b/jOOQ-test/src/org/jooq/test/postgres/jooq_wicket_example.sql new file mode 100644 index 00000000000..1a80ea84c1d --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/postgres/jooq_wicket_example.sql @@ -0,0 +1,380 @@ +-- +-- PostgreSQL database dump +-- + +SET statement_timeout = 0; +SET client_encoding = 'UTF8'; +SET standard_conforming_strings = off; +SET check_function_bodies = false; +SET client_min_messages = warning; +SET escape_string_warning = off; + +SET search_path = public, pg_catalog; + +-- +-- Name: seq_country_id; Type: SEQUENCE; Schema: public; Owner: jooq_wicket_example +-- + +CREATE SEQUENCE seq_country_id + START WITH 1 + INCREMENT BY 1 + NO MAXVALUE + NO MINVALUE + CACHE 1; + +-- +-- Name: seq_country_id; Type: SEQUENCE SET; Schema: public; Owner: jooq_wicket_example +-- + +SELECT pg_catalog.setval('seq_country_id', 1, false); + + +SET default_tablespace = ''; + +SET default_with_oids = false; + +-- +-- Name: country; Type: TABLE; Schema: public; Owner: jooq_wicket_example; Tablespace: +-- + +CREATE TABLE country ( + id bigint DEFAULT nextval('seq_country_id'::regclass) NOT NULL, + name character varying NOT NULL +); + +-- +-- Name: seq_person_id; Type: SEQUENCE; Schema: public; Owner: jooq_wicket_example +-- + +CREATE SEQUENCE seq_person_id + START WITH 1 + INCREMENT BY 1 + NO MAXVALUE + NO MINVALUE + CACHE 1; + +-- +-- Name: seq_person_id; Type: SEQUENCE SET; Schema: public; Owner: jooq_wicket_example +-- + +SELECT pg_catalog.setval('seq_person_id', 31, true); + + +-- +-- Name: person; Type: TABLE; Schema: public; Owner: jooq_wicket_example; Tablespace: +-- + +CREATE TABLE person ( + id bigint DEFAULT nextval('seq_person_id'::regclass) NOT NULL, + name character varying NOT NULL, + city character varying NOT NULL, + country_id bigint NOT NULL +); + +-- +-- Name: person_country_view; Type: VIEW; Schema: public; Owner: jooq_wicket_example +-- + +CREATE VIEW person_country_view AS + SELECT person.id, person.name, person.city, country.name AS country_name FROM (person JOIN country ON ((person.country_id = country.id))); + +-- +-- Data for Name: country; Type: TABLE DATA; Schema: public; Owner: jooq_wicket_example +-- + +INSERT INTO country (id, name) VALUES +(460, 'AFGHANISTAN'), +(461, 'ÅLAND ISLANDS'), +(462, 'ALBANIA'), +(463, 'ALGERIA'), +(464, 'AMERICAN SAMOA'), +(465, 'ANDORRA'), +(466, 'ANGOLA'), +(467, 'ANGUILLA'), +(468, 'ANTARCTICA'), +(469, 'ANTIGUA AND BARBUDA'), +(470, 'ARGENTINA'), +(471, 'ARMENIA'), +(472, 'ARUBA'), +(473, 'AUSTRALIA'), +(475, 'AZERBAIJAN'), +(476, 'BAHAMAS'), +(477, 'BAHRAIN'), +(478, 'BANGLADESH'), +(479, 'BARBADOS'), +(480, 'BELARUS'), +(482, 'BELIZE'), +(483, 'BENIN'), +(484, 'BERMUDA'), +(485, 'BHUTAN'), +(486, 'BOLIVIA, PLURINATIONAL STATE OF'), +(487, 'BONAIRE, SINT EUSTATIUS AND SABA'), +(488, 'BOSNIA AND HERZEGOVINA'), +(489, 'BOTSWANA'), +(490, 'BOUVET ISLAND'), +(491, 'BRAZIL'), +(492, 'BRITISH INDIAN OCEAN TERRITORY'), +(493, 'BRUNEI DARUSSALAM'), +(495, 'BURKINA FASO'), +(496, 'BURUNDI'), +(497, 'CAMBODIA'), +(498, 'CAMEROON'), +(500, 'CAPE VERDE'), +(501, 'CAYMAN ISLANDS'), +(502, 'CENTRAL AFRICAN REPUBLIC'), +(503, 'CHAD'), +(504, 'CHILE'), +(505, 'CHINA'), +(506, 'CHRISTMAS ISLAND'), +(507, 'COCOS (KEELING) ISLANDS'), +(508, 'COLOMBIA'), +(509, 'COMOROS'), +(510, 'CONGO'), +(511, 'CONGO, THE DEMOCRATIC REPUBLIC OF THE'), +(512, 'COOK ISLANDS'), +(513, 'COSTA RICA'), +(514, 'CÔTE D''IVOIRE'), +(515, 'CROATIA'), +(516, 'CUBA'), +(517, 'CURAÇAO'), +(521, 'DJIBOUTI'), +(522, 'DOMINICA'), +(523, 'DOMINICAN REPUBLIC'), +(524, 'ECUADOR'), +(525, 'EGYPT'), +(526, 'EL SALVADOR'), +(527, 'EQUATORIAL GUINEA'), +(528, 'ERITREA'), +(530, 'ETHIOPIA'), +(531, 'FALKLAND ISLANDS (MALVINAS)'), +(532, 'FAROE ISLANDS'), +(533, 'FIJI'), +(536, 'FRENCH GUIANA'), +(537, 'FRENCH POLYNESIA'), +(538, 'FRENCH SOUTHERN TERRITORIES'), +(539, 'GABON'), +(540, 'GAMBIA'), +(541, 'GEORGIA'), +(543, 'GHANA'), +(544, 'GIBRALTAR'), +(546, 'GREENLAND'), +(547, 'GRENADA'), +(548, 'GUADELOUPE'), +(549, 'GUAM'), +(550, 'GUATEMALA'), +(551, 'GUERNSEY'), +(552, 'GUINEA'), +(553, 'GUINEA-BISSAU'), +(554, 'GUYANA'), +(555, 'HAITI'), +(556, 'HEARD ISLAND AND MCDONALD ISLANDS'), +(557, 'HOLY SEE (VATICAN CITY STATE)'), +(558, 'HONDURAS'), +(559, 'HONG KONG'), +(561, 'ICELAND'), +(562, 'INDIA'), +(563, 'INDONESIA'), +(564, 'IRAN, ISLAMIC REPUBLIC OF'), +(565, 'IRAQ'), +(567, 'ISLE OF MAN'), +(568, 'ISRAEL'), +(570, 'JAMAICA'), +(571, 'JAPAN'), +(572, 'JERSEY'), +(573, 'JORDAN'), +(574, 'KAZAKHSTAN'), +(575, 'KENYA'), +(576, 'KIRIBATI'), +(577, 'KOREA, DEMOCRATIC PEOPLE''S REPUBLIC OF'), +(578, 'KOREA, REPUBLIC OF'), +(579, 'KUWAIT'), +(580, 'KYRGYZSTAN'), +(581, 'LAO PEOPLE''S DEMOCRATIC REPUBLIC'), +(583, 'LEBANON'), +(584, 'LESOTHO'), +(585, 'LIBERIA'), +(586, 'LIBYAN ARAB JAMAHIRIYA'), +(587, 'LIECHTENSTEIN'), +(590, 'MACAO'), +(591, 'MACEDONIA, THE FORMER YUGOSLAV REPUBLIC OF'), +(592, 'MADAGASCAR'), +(593, 'MALAWI'), +(594, 'MALAYSIA'), +(595, 'MALDIVES'), +(596, 'MALI'), +(598, 'MARSHALL ISLANDS'), +(599, 'MARTINIQUE'), +(600, 'MAURITANIA'), +(601, 'MAURITIUS'), +(602, 'MAYOTTE'), +(603, 'MEXICO'), +(604, 'MICRONESIA, FEDERATED STATES OF'), +(605, 'MOLDOVA, REPUBLIC OF'), +(606, 'MONACO'), +(607, 'MONGOLIA'), +(608, 'MONTENEGRO'), +(609, 'MONTSERRAT'), +(610, 'MOROCCO'), +(611, 'MOZAMBIQUE'), +(612, 'MYANMAR'), +(613, 'NAMIBIA'), +(614, 'NAURU'), +(615, 'NEPAL'), +(617, 'NEW CALEDONIA'), +(618, 'NEW ZEALAND'), +(619, 'NICARAGUA'), +(620, 'NIGER'), +(621, 'NIGERIA'), +(622, 'NIUE'), +(623, 'NORFOLK ISLAND'), +(624, 'NORTHERN MARIANA ISLANDS'), +(625, 'NORWAY'), +(626, 'OMAN'), +(627, 'PAKISTAN'), +(628, 'PALAU'), +(629, 'PALESTINIAN TERRITORY, OCCUPIED'), +(630, 'PANAMA'), +(631, 'PAPUA NEW GUINEA'), +(632, 'PARAGUAY'), +(633, 'PERU'), +(634, 'PHILIPPINES'), +(635, 'PITCAIRN'), +(638, 'PUERTO RICO'), +(639, 'QATAR'), +(640, 'RÉUNION'), +(642, 'RUSSIAN FEDERATION'), +(643, 'RWANDA'), +(644, 'SAINT BARTHÉLEMY'), +(645, 'SAINT HELENA, ASCENSION AND TRISTAN DA CUNHA'), +(646, 'SAINT KITTS AND NEVIS'), +(647, 'SAINT LUCIA'), +(648, 'SAINT MARTIN (FRENCH PART)'), +(649, 'SAINT PIERRE AND MIQUELON'), +(650, 'SAINT VINCENT AND THE GRENADINES'), +(651, 'SAMOA'), +(652, 'SAN MARINO'), +(653, 'SAO TOME AND PRINCIPE'), +(654, 'SAUDI ARABIA'), +(655, 'SENEGAL'), +(656, 'SERBIA'), +(657, 'SEYCHELLES'), +(658, 'SIERRA LEONE'), +(659, 'SINGAPORE'), +(660, 'SINT MAARTEN (DUTCH PART)'), +(663, 'SOLOMON ISLANDS'), +(664, 'SOMALIA'), +(665, 'SOUTH AFRICA'), +(666, 'SOUTH GEORGIA AND THE SOUTH SANDWICH ISLANDS'), +(668, 'SRI LANKA'), +(669, 'SUDAN'), +(670, 'SURINAME'), +(671, 'SVALBARD AND JAN MAYEN'), +(672, 'SWAZILAND'), +(674, 'SWITZERLAND'), +(675, 'SYRIAN ARAB REPUBLIC'), +(676, 'TAIWAN, PROVINCE OF CHINA'), +(677, 'TAJIKISTAN'), +(678, 'TANZANIA, UNITED REPUBLIC OF'), +(679, 'THAILAND'), +(680, 'TIMOR-LESTE'), +(681, 'TOGO'), +(682, 'TOKELAU'), +(683, 'TONGA'), +(684, 'TRINIDAD AND TOBAGO'), +(685, 'TUNISIA'), +(686, 'TURKEY'), +(687, 'TURKMENISTAN'), +(688, 'TURKS AND CAICOS ISLANDS'), +(689, 'TUVALU'), +(690, 'UGANDA'), +(691, 'UKRAINE'), +(692, 'UNITED ARAB EMIRATES'), +(695, 'UNITED STATES MINOR OUTLYING ISLANDS'), +(696, 'URUGUAY'), +(697, 'UZBEKISTAN'), +(698, 'VANUATU'), +(699, 'VENEZUELA, BOLIVARIAN REPUBLIC OF'), +(700, 'VIET NAM'), +(701, 'VIRGIN ISLANDS, BRITISH'), +(702, 'VIRGIN ISLANDS, U.S.'), +(703, 'WALLIS AND FUTUNA'), +(704, 'WESTERN SAHARA'), +(705, 'YEMEN'), +(706, 'ZAMBIA'), +(707, 'ZIMBABWE'), +(694, 'UNITED STATES'), +(499, 'CANADA'), +(474, 'AUSTRIA'), +(481, 'BELGIUM'), +(494, 'BULGARIA'), +(518, 'CYPRUS'), +(519, 'CZECH REPUBLIC'), +(520, 'DENMARK'), +(529, 'ESTONIA'), +(534, 'FINLAND'), +(535, 'FRANCE'), +(542, 'GERMANY'), +(545, 'GREECE'), +(560, 'HUNGARY'), +(566, 'IRELAND'), +(569, 'ITALY'), +(582, 'LATVIA'), +(588, 'LITHUANIA'), +(589, 'LUXEMBOURG'), +(597, 'MALTA'), +(636, 'POLAND'), +(637, 'PORTUGAL'), +(641, 'ROMANIA'), +(661, 'SLOVAKIA'), +(662, 'SLOVENIA'), +(667, 'SPAIN'), +(673, 'SWEDEN'), +(693, 'UNITED KINGDOM'), +(616, 'NETHERLANDS'); + + +-- +-- Data for Name: person; Type: TABLE DATA; Schema: public; Owner: jooq_wicket_example +-- + +INSERT INTO person (id, name, city, country_id) VALUES +(18, 'Pietje Puk', 'Haarlem', 616), +(19, 'Barack Obama', 'Washington', 694), +(20, 'Angela Merkel', 'Berlin', 542), +(21, 'Bill Gates', 'Seattle', 694), +(22, 'Larry Ellison', 'Redwood Shores', 694), +(23, 'John Doe', 'New York', 694), +(24, 'Goodluck Jonathan', 'Abuja', 621), +(25, 'Susilo Bambang Yudhoyono', 'Jakarta', 563), +(27, 'Mark Rutte', 'Den Haag', 616), +(16, 'Sander Plas', 'Amsterdam', 616), +(17, 'Lukas Eder', 'Zürich', 674), +(26, 'Micheline Calmy-Rey', 'Zürich', 674); + +-- +-- Name: country_pkey; Type: CONSTRAINT; Schema: public; Owner: jooq_wicket_example; Tablespace: +-- + +ALTER TABLE ONLY country + ADD CONSTRAINT country_pkey PRIMARY KEY (id); + + +-- +-- Name: person_pkey; Type: CONSTRAINT; Schema: public; Owner: jooq_wicket_example; Tablespace: +-- + +ALTER TABLE ONLY person + ADD CONSTRAINT person_pkey PRIMARY KEY (id); + + +-- +-- Name: person_country_id_fkey; Type: FK CONSTRAINT; Schema: public; Owner: jooq_wicket_example +-- + +ALTER TABLE ONLY person + ADD CONSTRAINT person_country_id_fkey FOREIGN KEY (country_id) REFERENCES country(id); + +-- +-- PostgreSQL database dump complete +-- + diff --git a/jOOQ-test/src/org/jooq/test/postgres/reset.sql b/jOOQ-test/src/org/jooq/test/postgres/reset.sql new file mode 100644 index 00000000000..354891a9423 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/postgres/reset.sql @@ -0,0 +1,66 @@ +DELETE FROM t_658_ref/ +DELETE FROM t_658_11/ +DELETE FROM t_658_21/ +DELETE FROM t_658_31/ +DELETE FROM t_658_12/ +DELETE FROM t_658_22/ +DELETE FROM t_658_32/ +DELETE FROM t_arrays/ +DELETE FROM t_book_to_book_store/ +DELETE FROM t_book_store/ +DELETE FROM t_book/ +DELETE FROM t_author/ +DELETE FROM t_language/ +DELETE FROM t_booleans/ +DELETE FROM t_dates/ +DELETE FROM t_identity/ +DELETE FROM t_identity_pk/ + +DROP SEQUENCE IF EXISTS s_author_id/ +CREATE SEQUENCE s_author_id/ + +INSERT INTO t_language (id, cd, description, description_english) VALUES (1, 'en', 'English', 'English')/ +INSERT INTO t_language (id, cd, description, description_english) VALUES (2, 'de', 'Deutsch', 'German')/ +INSERT INTO t_language (id, cd, description, description_english) VALUES (3, 'fr', 'Français', 'French')/ +INSERT INTO t_language (id, cd, description, description_english) VALUES (4, 'pt', null, null)/ +/ + +INSERT INTO t_658_11 VALUES ('A'), ('B'), ('C')/ +INSERT INTO t_658_21 VALUES (1), (2), (3)/ +INSERT INTO t_658_31 VALUES (1), (2), (3)/ +INSERT INTO t_658_12 VALUES ('A', 'A'), ('B', 'B'), ('C', 'C')/ +INSERT INTO t_658_22 VALUES (1, 1), (2, 2), (3, 3)/ +INSERT INTO t_658_32 VALUES (1, 1), (2, 2), (3, 3)/ +INSERT INTO t_658_ref VALUES ('A', 1, 1, 'B', 2, 2)/ + +INSERT INTO t_author VALUES (nextval('s_author_id'), 'George', 'Orwell', TO_DATE('1903-06-25', 'YYYY-MM-DD'), 1903, ROW(ROW('Parliament Hill', '77', '{1, 2, 3}'), 'NW31A9', 'Hampstead', 'England', '1980-01-01', null)) +/ +INSERT INTO t_author VALUES (nextval('s_author_id'), 'Paulo', 'Coelho', TO_DATE('1947-08-24', 'YYYY-MM-DD'), 1947, ROW(ROW('Caixa Postal', '43.003', null), null, 'Rio de Janeiro', 'Brazil', '1940-01-01', 2)) +/ + +INSERT INTO t_book VALUES (1, 1, null, null, '1984', 1948, 1, 'To know and not to know, to be conscious of complete truthfulness while telling carefully constructed lies, to hold simultaneously two opinions which cancelled out, knowing them to be contradictory and believing in both of them, to use logic against logic, to repudiate morality while laying claim to it, to believe that democracy was impossible and that the Party was the guardian of democracy, to forget, whatever it was necessary to forget, then to draw it back into memory again at the moment when it was needed, and then promptly to forget it again, and above all, to apply the same process to the process itself -- that was the ultimate subtlety; consciously to induce unconsciousness, and then, once again, to become unconscious of the act of hypnosis you had just performed. Even to understand the word ''doublethink'' involved the use of doublethink..', null, 'ORDERED') +/ +INSERT INTO t_book VALUES (2, 1, null, null, 'Animal Farm', 1945, 1, null, null, 'ON STOCK') +/ +INSERT INTO t_book VALUES (3, 2, null, null, 'O Alquimista', 1988, 4, null, null, 'ON STOCK') +/ +INSERT INTO t_book VALUES (4, 2, null, null, 'Brida', 1990, 2, null, null, 'SOLD OUT') +/ + +INSERT INTO t_book_store (name) +VALUES ('Orell Füssli'), + ('Ex Libris'), + ('Buchhandlung im Volkshaus') +/ + +INSERT INTO t_book_to_book_store VALUES ('Orell Füssli', 1, 10)/ +INSERT INTO t_book_to_book_store VALUES ('Orell Füssli', 2, 10)/ +INSERT INTO t_book_to_book_store VALUES ('Orell Füssli', 3, 10)/ +INSERT INTO t_book_to_book_store VALUES ('Ex Libris', 1, 1)/ +INSERT INTO t_book_to_book_store VALUES ('Ex Libris', 3, 2)/ +INSERT INTO t_book_to_book_store VALUES ('Buchhandlung im Volkshaus', 3, 1)/ + +INSERT INTO t_arrays VALUES (1, null, null, null, null, null, null)/ +INSERT INTO t_arrays VALUES (2, '{}', '{}', '{}', '{}', '{}', '{}')/ +INSERT INTO t_arrays VALUES (3, '{"a"}', '{1}', ARRAY[TO_DATE('1981-07-10', 'YYYY-MM-DD')], ARRAY[ROW('Downing Street', '10', null)]::u_street_type[], '{"England"}', ARRAY[ARRAY[1]])/ +INSERT INTO t_arrays VALUES (4, '{"a", "b"}', '{1, 2}', ARRAY[TO_DATE('1981-07-10', 'YYYY-MM-DD'), TO_DATE('2000-01-01', 'YYYY-MM-DD')], ARRAY[ROW('Downing Street', '10', '{}'), ROW('Bahnhofstrasse', '12', '{1, 2}')]::u_street_type[], '{"England", "Germany"}', ARRAY[ARRAY[1], ARRAY[2]])/ \ No newline at end of file diff --git a/jOOQ-test/src/org/jooq/test/sqlite/create.sql b/jOOQ-test/src/org/jooq/test/sqlite/create.sql new file mode 100644 index 00000000000..dae767ae735 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/sqlite/create.sql @@ -0,0 +1,328 @@ +DROP VIEW IF EXISTS v_library/ +DROP VIEW IF EXISTS v_author/ +DROP VIEW IF EXISTS v_book/ + +DROP TABLE IF EXISTS t_triggers/ + +DROP TABLE IF EXISTS t_book_to_book_store/ +DROP TABLE IF EXISTS t_book_store/ +DROP TABLE IF EXISTS t_book/ +DROP TABLE IF EXISTS t_book_details/ +DROP TABLE IF EXISTS t_author/ +DROP TABLE IF EXISTS t_language/ +DROP TABLE IF EXISTS x_test_case_71/ +DROP TABLE IF EXISTS x_test_case_64_69/ +DROP TABLE IF EXISTS x_test_case_85/ +DROP TABLE IF EXISTS t_986_1/ +DROP TABLE IF EXISTS t_986_2/ +DROP TABLE IF EXISTS x_unused/ +DROP TABLE IF EXISTS t_639_numbers_table/ +DROP TABLE IF EXISTS t_658_ref/ +DROP TABLE IF EXISTS t_658_11/ +DROP TABLE IF EXISTS t_658_21/ +DROP TABLE IF EXISTS t_658_31/ +DROP TABLE IF EXISTS t_658_12/ +DROP TABLE IF EXISTS t_658_22/ +DROP TABLE IF EXISTS t_658_32/ +DROP TABLE IF EXISTS t_725_lob_test/ +DROP TABLE IF EXISTS t_785/ +DROP TABLE IF EXISTS t_booleans/ +DROP TABLE IF EXISTS t_dates/ + +CREATE TABLE t_dates ( + id int, + d date, + t time, + ts datetime, + d_int int, + ts_bigint int8, + + CONSTRAINT pk_t_dates PRIMARY KEY (id) +) +/ + +CREATE TABLE t_booleans ( + id int, + one_zero int, + true_false_lc varchar(5), + true_false_uc varchar(5), + yes_no_lc varchar(3), + yes_no_uc varchar(3), + y_n_lc char(1), + y_n_uc char(1), + vc_boolean varchar(1), + c_boolean char(1), + n_boolean int, + + CONSTRAINT pk_t_booleans PRIMARY KEY (id) +) +/ + +CREATE TABLE t_triggers ( + id_generated integer primary key autoincrement, + id int, + counter int +) +/ + +CREATE TRIGGER IF NOT EXISTS t_triggers_trigger +AFTER INSERT +ON t_triggers +FOR EACH ROW +BEGIN + update t_triggers + set id = id_generated, + counter = id_generated * 2; +END; +/ + +CREATE TABLE t_language ( + cd CHAR(2) NOT NULL, + description VARCHAR(50), + description_english VARCHAR(50), + id INTEGER NOT NULL, + + CONSTRAINT pk_t_language PRIMARY KEY (ID) +) +/ + +CREATE TABLE t_658_11 ( + id CHAR(3) NOT NULL, + + CONSTRAINT pk_t_658_11 PRIMARY KEY (id) +) +/ + +CREATE TABLE t_658_21 ( + id INT NOT NULL, + + CONSTRAINT pk_t_658_21 PRIMARY KEY (id) +) +/ + +CREATE TABLE t_658_31 ( + id int8 NOT NULL, + + CONSTRAINT pk_t_658_31 PRIMARY KEY (id) +) +/ + +CREATE TABLE t_658_12 ( + id CHAR(3) NOT NULL, + cd CHAR(3) NOT NULL, + + CONSTRAINT pk_t_658_12 PRIMARY KEY (id) +) +/ + +CREATE TABLE t_658_22 ( + id INT NOT NULL, + cd INT NOT NULL, + + CONSTRAINT pk_t_658_22 PRIMARY KEY (id) +) +/ + +CREATE TABLE t_658_32 ( + id int8 NOT NULL, + cd int8 NOT NULL, + + CONSTRAINT pk_t_658_32 PRIMARY KEY (id) +) +/ + +CREATE TABLE t_658_ref ( + ref_11 char(3), + ref_21 int, + ref_31 int8, + ref_12 char(3), + ref_22 int, + ref_32 int8, + + CONSTRAINT fk_t_658_11 FOREIGN KEY (ref_11) REFERENCES t_658_11(id), + CONSTRAINT fk_t_658_21 FOREIGN KEY (ref_21) REFERENCES t_658_21(id), + CONSTRAINT fk_t_658_31 FOREIGN KEY (ref_31) REFERENCES t_658_31(id), + CONSTRAINT fk_t_658_12 FOREIGN KEY (ref_12) REFERENCES t_658_12(id), + CONSTRAINT fk_t_658_22 FOREIGN KEY (ref_22) REFERENCES t_658_22(id), + CONSTRAINT fk_t_658_32 FOREIGN KEY (ref_32) REFERENCES t_658_32(id) +) +/ + +CREATE TABLE t_725_lob_test ( + ID int NOT NULL, + LOB LONGVARBINARY NULL, + + CONSTRAINT pk_t_725_lob_test PRIMARY KEY (id) +) +/ + +CREATE TABLE t_785 ( + ID int, + NAME varchar(50), + VALUE varchar(50) +) +/ + +CREATE TABLE t_author ( + ID INT NOT NULL, + FIRST_NAME VARCHAR(50), + LAST_NAME VARCHAR(50) NOT NULL, + DATE_OF_BIRTH DATE, + YEAR_OF_BIRTH INT, + ADDRESS VARCHAR(50), + + CONSTRAINT pk_t_author PRIMARY KEY (ID) +); +/ + +CREATE TABLE t_book_details ( + ID INT, + + CONSTRAINT pk_t_book_details PRIMARY KEY (ID) +); +/ + +CREATE TABLE t_book ( + ID INT NOT NULL, + AUTHOR_ID INT NOT NULL, + co_author_id INTEGER, + DETAILS_ID INT, + TITLE VARCHAR(400) NOT NULL, + PUBLISHED_IN INT NOT NULL, + LANGUAGE_ID INT NOT NULL, + CONTENT_TEXT LONGVARCHAR, + CONTENT_PDF LONGVARBINARY, + + CONSTRAINT pk_t_book PRIMARY KEY (ID), + CONSTRAINT fk_t_book_author_id FOREIGN KEY (AUTHOR_ID) REFERENCES T_AUTHOR(ID), + CONSTRAINT fk_t_book_co_author_id FOREIGN KEY (CO_AUTHOR_ID) REFERENCES T_AUTHOR(ID), + CONSTRAINT fk_t_book_details_id FOREIGN KEY (DETAILS_ID) REFERENCES T_BOOK_DETAILS(ID), + CONSTRAINT fk_t_book_language_id FOREIGN KEY (LANGUAGE_ID) REFERENCES T_LANGUAGE(ID) +); +/ + +CREATE TABLE t_book_store ( + name VARCHAR(400) NOT NULL, + + CONSTRAINT uk_t_book_store_name PRIMARY KEY(name) +); +/ + +CREATE TABLE t_book_to_book_store ( + book_store_name VARCHAR(400) NOT NULL, + book_id INT NOT NULL, + stock INT, + + CONSTRAINT pk_b2bs PRIMARY KEY(book_store_name, book_id), + CONSTRAINT fk_b2bs_bs_name FOREIGN KEY (book_store_name) + REFERENCES t_book_store (name) + ON DELETE CASCADE, + CONSTRAINT fk_b2bs_b_id FOREIGN KEY (book_id) + REFERENCES t_book (id) + ON DELETE CASCADE +) +/ + + +CREATE TABLE x_unused ( + ID INT NOT NULL, + NAME VARCHAR(10) NOT NULL, + BIG_INTEGER DECIMAL(25), + ID_REF INT, + CLASS INT, + FIELDS INT, + CONFIGURATION INT, + U_D_T INT, + META_DATA INT, + TYPE0 INT, + PRIMARY_KEY INT, + PRIMARYKEY INT, + NAME_REF VARCHAR(10), + "FIELD 737" DECIMAL(25, 2), + + CONSTRAINT pk_x_unused PRIMARY KEY(ID, NAME), + CONSTRAINT uk_x_unused_id UNIQUE(ID), + CONSTRAINT fk_x_unused_self FOREIGN KEY(ID_REF, NAME_REF) REFERENCES X_UNUSED(ID, NAME) +); +/ + +CREATE TABLE t_986_1 ( + REF INT, + + CONSTRAINT pk_986 PRIMARY KEY(REF), + CONSTRAINT uk_986 UNIQUE(REF), + CONSTRAINT fk_986 FOREIGN KEY(REF) REFERENCES X_UNUSED(ID) +) +/ + +CREATE TABLE t_986_2 ( + REF INT, + + CONSTRAINT pk_986 PRIMARY KEY(REF), + CONSTRAINT uk_986 UNIQUE(REF), + CONSTRAINT fk_986 FOREIGN KEY(REF) REFERENCES X_UNUSED(ID) +) +/ + +CREATE TABLE t_639_numbers_table ( + ID INT NOT NULL, + BYTE TINYINT, + SHORT SMALLINT, + INTEGER INT, + LONG INT8, + BYTE_DECIMAL DECIMAL(2, 0), + SHORT_DECIMAL DECIMAL(4, 0), + INTEGER_DECIMAL DECIMAL(9, 0), + LONG_DECIMAL DECIMAL(18, 0), + BIG_INTEGER DECIMAL(22, 0), + BIG_DECIMAL DECIMAL(22, 5), + FLOAT REAL, + DOUBLE DOUBLE, + + CONSTRAINT pk_t_639_numbers_table PRIMARY KEY(ID) +); +/ + +CREATE TABLE x_test_case_64_69 ( + ID INT NOT NULL, + UNUSED_ID INT, + + CONSTRAINT pk_x_test_case_64_69 PRIMARY KEY(ID), + CONSTRAINT fk_x_test_case_64_69a FOREIGN KEY(UNUSED_ID) REFERENCES X_UNUSED(ID), + CONSTRAINT fk_x_test_case_64_69b FOREIGN KEY(UNUSED_ID) REFERENCES X_UNUSED(ID) +); +/ + +CREATE TABLE x_test_case_71 ( + ID INT NOT NULL, + TEST_CASE_64_69_ID SMALLINT, + + CONSTRAINT pk_x_test_case_71 PRIMARY KEY(ID), + CONSTRAINT fk_x_test_case_71 FOREIGN KEY(TEST_CASE_64_69_ID) REFERENCES X_TEST_CASE_64_69(ID) +); +/ + +CREATE TABLE x_test_case_85 ( + id int NOT NULL, + x_unused_id int, + x_unused_name VARCHAR(10), + + CONSTRAINT pk_x_test_case_85 PRIMARY KEY(ID), + CONSTRAINT fk_x_test_case_85 FOREIGN KEY(x_unused_id, x_unused_name) REFERENCES X_UNUSED(id, name) +); +/ + +CREATE VIEW V_LIBRARY AS +SELECT T_AUTHOR.FIRST_NAME AUTHOR, T_BOOK.TITLE TITLE +FROM T_AUTHOR JOIN T_BOOK ON T_BOOK.AUTHOR_ID = T_AUTHOR.ID; +/ + +CREATE VIEW v_author AS +SELECT * FROM t_author +/ + +CREATE VIEW v_book AS +SELECT * FROM t_book +/ + + diff --git a/jOOQ-test/src/org/jooq/test/sqlite/generatedclasses/Keys.java b/jOOQ-test/src/org/jooq/test/sqlite/generatedclasses/Keys.java new file mode 100644 index 00000000000..4ce38b0f888 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/sqlite/generatedclasses/Keys.java @@ -0,0 +1,52 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.sqlite.generatedclasses; + +/** + * This class is generated by jOOQ. + * + * A class modelling foreign key relationships between tables of the schema + */ +@SuppressWarnings({"unchecked"}) +public class Keys extends org.jooq.impl.AbstractKeys { + + // IDENTITY definitions + public static final org.jooq.Identity IDENTITY_T_TRIGGERS = createIdentity(org.jooq.test.sqlite.generatedclasses.tables.TTriggers.T_TRIGGERS, org.jooq.test.sqlite.generatedclasses.tables.TTriggers.ID_GENERATED); + + // UNIQUE and PRIMARY KEY definitions + public static final org.jooq.UniqueKey PK_T_639_NUMBERS_TABLE_ID = createUniqueKey(org.jooq.test.sqlite.generatedclasses.tables.T_639NumbersTable.T_639_NUMBERS_TABLE, org.jooq.test.sqlite.generatedclasses.tables.T_639NumbersTable.ID); + public static final org.jooq.UniqueKey PK_T_725_LOB_TEST_ID = createUniqueKey(org.jooq.test.sqlite.generatedclasses.tables.T_725LobTest.T_725_LOB_TEST, org.jooq.test.sqlite.generatedclasses.tables.T_725LobTest.ID); + public static final org.jooq.UniqueKey PK_T_986_1_REF = createUniqueKey(org.jooq.test.sqlite.generatedclasses.tables.T_986_1.T_986_1, org.jooq.test.sqlite.generatedclasses.tables.T_986_1.REF); + public static final org.jooq.UniqueKey PK_T_986_2_REF = createUniqueKey(org.jooq.test.sqlite.generatedclasses.tables.T_986_2.T_986_2, org.jooq.test.sqlite.generatedclasses.tables.T_986_2.REF); + public static final org.jooq.UniqueKey PK_T_AUTHOR_ID = createUniqueKey(org.jooq.test.sqlite.generatedclasses.tables.TAuthor.T_AUTHOR, org.jooq.test.sqlite.generatedclasses.tables.TAuthor.ID); + public static final org.jooq.UniqueKey PK_T_BOOK_ID = createUniqueKey(org.jooq.test.sqlite.generatedclasses.tables.TBook.T_BOOK, org.jooq.test.sqlite.generatedclasses.tables.TBook.ID); + public static final org.jooq.UniqueKey PK_T_BOOK_STORE_NAME = createUniqueKey(org.jooq.test.sqlite.generatedclasses.tables.TBookStore.T_BOOK_STORE, org.jooq.test.sqlite.generatedclasses.tables.TBookStore.NAME); + public static final org.jooq.UniqueKey PK_T_BOOK_TO_BOOK_STORE_BOOK_STORE_NAME = createUniqueKey(org.jooq.test.sqlite.generatedclasses.tables.TBookToBookStore.T_BOOK_TO_BOOK_STORE, org.jooq.test.sqlite.generatedclasses.tables.TBookToBookStore.BOOK_STORE_NAME); + public static final org.jooq.UniqueKey PK_T_BOOK_TO_BOOK_STORE_BOOK_ID = createUniqueKey(org.jooq.test.sqlite.generatedclasses.tables.TBookToBookStore.T_BOOK_TO_BOOK_STORE, org.jooq.test.sqlite.generatedclasses.tables.TBookToBookStore.BOOK_ID); + public static final org.jooq.UniqueKey PK_T_BOOLEANS_ID = createUniqueKey(org.jooq.test.sqlite.generatedclasses.tables.TBooleans.T_BOOLEANS, org.jooq.test.sqlite.generatedclasses.tables.TBooleans.ID); + public static final org.jooq.UniqueKey PK_T_DATES_ID = createUniqueKey(org.jooq.test.sqlite.generatedclasses.tables.TDates.T_DATES, org.jooq.test.sqlite.generatedclasses.tables.TDates.ID); + public static final org.jooq.UniqueKey PK_T_TRIGGERS_ID_GENERATED = createUniqueKey(org.jooq.test.sqlite.generatedclasses.tables.TTriggers.T_TRIGGERS, org.jooq.test.sqlite.generatedclasses.tables.TTriggers.ID_GENERATED); + public static final org.jooq.UniqueKey PK_X_TEST_CASE_64_69_ID = createUniqueKey(org.jooq.test.sqlite.generatedclasses.tables.XTestCase_64_69.X_TEST_CASE_64_69, org.jooq.test.sqlite.generatedclasses.tables.XTestCase_64_69.ID); + public static final org.jooq.UniqueKey PK_X_TEST_CASE_71_ID = createUniqueKey(org.jooq.test.sqlite.generatedclasses.tables.XTestCase_71.X_TEST_CASE_71, org.jooq.test.sqlite.generatedclasses.tables.XTestCase_71.ID); + public static final org.jooq.UniqueKey PK_X_TEST_CASE_85_ID = createUniqueKey(org.jooq.test.sqlite.generatedclasses.tables.XTestCase_85.X_TEST_CASE_85, org.jooq.test.sqlite.generatedclasses.tables.XTestCase_85.ID); + public static final org.jooq.UniqueKey PK_X_UNUSED_ID = createUniqueKey(org.jooq.test.sqlite.generatedclasses.tables.XUnused.X_UNUSED, org.jooq.test.sqlite.generatedclasses.tables.XUnused.ID); + public static final org.jooq.UniqueKey PK_X_UNUSED_NAME = createUniqueKey(org.jooq.test.sqlite.generatedclasses.tables.XUnused.X_UNUSED, org.jooq.test.sqlite.generatedclasses.tables.XUnused.NAME); + + // FOREIGN KEY definitions + public static final org.jooq.ForeignKey FK_T_986_1_X_UNUSED_1 = createForeignKey(PK_X_UNUSED_ID, org.jooq.test.sqlite.generatedclasses.tables.T_986_1.T_986_1, org.jooq.test.sqlite.generatedclasses.tables.T_986_1.REF); + public static final org.jooq.ForeignKey FK_T_986_2_X_UNUSED_1 = createForeignKey(PK_X_UNUSED_ID, org.jooq.test.sqlite.generatedclasses.tables.T_986_2.T_986_2, org.jooq.test.sqlite.generatedclasses.tables.T_986_2.REF); + public static final org.jooq.ForeignKey FK_T_BOOK_T_AUTHOR_2 = createForeignKey(PK_T_AUTHOR_ID, org.jooq.test.sqlite.generatedclasses.tables.TBook.T_BOOK, org.jooq.test.sqlite.generatedclasses.tables.TBook.AUTHOR_ID); + public static final org.jooq.ForeignKey FK_T_BOOK_T_AUTHOR_1 = createForeignKey(PK_T_AUTHOR_ID, org.jooq.test.sqlite.generatedclasses.tables.TBook.T_BOOK, org.jooq.test.sqlite.generatedclasses.tables.TBook.CO_AUTHOR_ID); + public static final org.jooq.ForeignKey FK_T_BOOK_TO_BOOK_STORE_T_BOOK_STORE_1 = createForeignKey(PK_T_BOOK_STORE_NAME, org.jooq.test.sqlite.generatedclasses.tables.TBookToBookStore.T_BOOK_TO_BOOK_STORE, org.jooq.test.sqlite.generatedclasses.tables.TBookToBookStore.BOOK_STORE_NAME); + public static final org.jooq.ForeignKey FK_T_BOOK_TO_BOOK_STORE_T_BOOK_1 = createForeignKey(PK_T_BOOK_ID, org.jooq.test.sqlite.generatedclasses.tables.TBookToBookStore.T_BOOK_TO_BOOK_STORE, org.jooq.test.sqlite.generatedclasses.tables.TBookToBookStore.BOOK_ID); + public static final org.jooq.ForeignKey FK_X_TEST_CASE_64_69_X_UNUSED_1 = createForeignKey(PK_X_UNUSED_ID, org.jooq.test.sqlite.generatedclasses.tables.XTestCase_64_69.X_TEST_CASE_64_69, org.jooq.test.sqlite.generatedclasses.tables.XTestCase_64_69.UNUSED_ID); + public static final org.jooq.ForeignKey FK_X_TEST_CASE_71_X_TEST_CASE_64_69_1 = createForeignKey(PK_X_TEST_CASE_64_69_ID, org.jooq.test.sqlite.generatedclasses.tables.XTestCase_71.X_TEST_CASE_71, org.jooq.test.sqlite.generatedclasses.tables.XTestCase_71.TEST_CASE_64_69_ID); + public static final org.jooq.ForeignKey FK_X_TEST_CASE_85_X_UNUSED_1 = createForeignKey(PK_X_UNUSED_ID, org.jooq.test.sqlite.generatedclasses.tables.XTestCase_85.X_TEST_CASE_85, org.jooq.test.sqlite.generatedclasses.tables.XTestCase_85.X_UNUSED_ID, org.jooq.test.sqlite.generatedclasses.tables.XTestCase_85.X_UNUSED_NAME); + public static final org.jooq.ForeignKey FK_X_UNUSED_X_UNUSED_1 = createForeignKey(PK_X_UNUSED_ID, org.jooq.test.sqlite.generatedclasses.tables.XUnused.X_UNUSED, org.jooq.test.sqlite.generatedclasses.tables.XUnused.ID_REF, org.jooq.test.sqlite.generatedclasses.tables.XUnused.NAME_REF); + + /** + * No instances + */ + private Keys() {} +} diff --git a/jOOQ-test/src/org/jooq/test/sqlite/generatedclasses/Tables.java b/jOOQ-test/src/org/jooq/test/sqlite/generatedclasses/Tables.java new file mode 100644 index 00000000000..594a2a3e560 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/sqlite/generatedclasses/Tables.java @@ -0,0 +1,117 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.sqlite.generatedclasses; + +/** + * This class is generated by jOOQ. + * + * Convenience access to all tables in + */ +public final class Tables { + + /** + * The table V_LIBRARY + */ + public static org.jooq.test.sqlite.generatedclasses.tables.VLibrary V_LIBRARY = org.jooq.test.sqlite.generatedclasses.tables.VLibrary.V_LIBRARY; + + /** + * The table t_639_numbers_table + */ + public static org.jooq.test.sqlite.generatedclasses.tables.T_639NumbersTable T_639_NUMBERS_TABLE = org.jooq.test.sqlite.generatedclasses.tables.T_639NumbersTable.T_639_NUMBERS_TABLE; + + /** + * The table t_658_ref + */ + public static org.jooq.test.sqlite.generatedclasses.tables.T_658Ref T_658_REF = org.jooq.test.sqlite.generatedclasses.tables.T_658Ref.T_658_REF; + + /** + * The table t_725_lob_test + */ + public static org.jooq.test.sqlite.generatedclasses.tables.T_725LobTest T_725_LOB_TEST = org.jooq.test.sqlite.generatedclasses.tables.T_725LobTest.T_725_LOB_TEST; + + /** + * The table t_785 + */ + public static org.jooq.test.sqlite.generatedclasses.tables.T_785 T_785 = org.jooq.test.sqlite.generatedclasses.tables.T_785.T_785; + + /** + * The table t_986_1 + */ + public static org.jooq.test.sqlite.generatedclasses.tables.T_986_1 T_986_1 = org.jooq.test.sqlite.generatedclasses.tables.T_986_1.T_986_1; + + /** + * The table t_986_2 + */ + public static org.jooq.test.sqlite.generatedclasses.tables.T_986_2 T_986_2 = org.jooq.test.sqlite.generatedclasses.tables.T_986_2.T_986_2; + + /** + * The table t_author + */ + public static org.jooq.test.sqlite.generatedclasses.tables.TAuthor T_AUTHOR = org.jooq.test.sqlite.generatedclasses.tables.TAuthor.T_AUTHOR; + + /** + * The table t_book + */ + public static org.jooq.test.sqlite.generatedclasses.tables.TBook T_BOOK = org.jooq.test.sqlite.generatedclasses.tables.TBook.T_BOOK; + + /** + * The table t_book_store + */ + public static org.jooq.test.sqlite.generatedclasses.tables.TBookStore T_BOOK_STORE = org.jooq.test.sqlite.generatedclasses.tables.TBookStore.T_BOOK_STORE; + + /** + * The table t_book_to_book_store + */ + public static org.jooq.test.sqlite.generatedclasses.tables.TBookToBookStore T_BOOK_TO_BOOK_STORE = org.jooq.test.sqlite.generatedclasses.tables.TBookToBookStore.T_BOOK_TO_BOOK_STORE; + + /** + * The table t_booleans + */ + public static org.jooq.test.sqlite.generatedclasses.tables.TBooleans T_BOOLEANS = org.jooq.test.sqlite.generatedclasses.tables.TBooleans.T_BOOLEANS; + + /** + * The table t_dates + */ + public static org.jooq.test.sqlite.generatedclasses.tables.TDates T_DATES = org.jooq.test.sqlite.generatedclasses.tables.TDates.T_DATES; + + /** + * The table t_triggers + */ + public static org.jooq.test.sqlite.generatedclasses.tables.TTriggers T_TRIGGERS = org.jooq.test.sqlite.generatedclasses.tables.TTriggers.T_TRIGGERS; + + /** + * The table v_author + */ + public static org.jooq.test.sqlite.generatedclasses.tables.VAuthor V_AUTHOR = org.jooq.test.sqlite.generatedclasses.tables.VAuthor.V_AUTHOR; + + /** + * The table v_book + */ + public static org.jooq.test.sqlite.generatedclasses.tables.VBook V_BOOK = org.jooq.test.sqlite.generatedclasses.tables.VBook.V_BOOK; + + /** + * The table x_test_case_64_69 + */ + public static org.jooq.test.sqlite.generatedclasses.tables.XTestCase_64_69 X_TEST_CASE_64_69 = org.jooq.test.sqlite.generatedclasses.tables.XTestCase_64_69.X_TEST_CASE_64_69; + + /** + * The table x_test_case_71 + */ + public static org.jooq.test.sqlite.generatedclasses.tables.XTestCase_71 X_TEST_CASE_71 = org.jooq.test.sqlite.generatedclasses.tables.XTestCase_71.X_TEST_CASE_71; + + /** + * The table x_test_case_85 + */ + public static org.jooq.test.sqlite.generatedclasses.tables.XTestCase_85 X_TEST_CASE_85 = org.jooq.test.sqlite.generatedclasses.tables.XTestCase_85.X_TEST_CASE_85; + + /** + * The table x_unused + */ + public static org.jooq.test.sqlite.generatedclasses.tables.XUnused X_UNUSED = org.jooq.test.sqlite.generatedclasses.tables.XUnused.X_UNUSED; + + /** + * No instances + */ + private Tables() {} +} diff --git a/jOOQ-test/src/org/jooq/test/sqlite/generatedclasses/enums/TLanguage.java b/jOOQ-test/src/org/jooq/test/sqlite/generatedclasses/enums/TLanguage.java new file mode 100644 index 00000000000..ace41ee9c6b --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/sqlite/generatedclasses/enums/TLanguage.java @@ -0,0 +1,65 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.sqlite.generatedclasses.enums; + +/** + * This class is generated by jOOQ. + */ +public enum TLanguage implements org.jooq.MasterDataType { + + /** + * English + */ + en(1, "en", "English"), + + /** + * Deutsch + */ + de(2, "de", "Deutsch"), + + /** + * Français + */ + fr(3, "fr", "Français"), + pt(4, "pt", null), + ; + + private final java.lang.Integer id; + private final java.lang.String cd; + private final java.lang.String description; + + private TLanguage(java.lang.Integer id, java.lang.String cd, java.lang.String description) { + this.id = id; + this.cd = cd; + this.description = description; + } + + @Override + public java.lang.Integer getPrimaryKey() { + return id; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final java.lang.Integer getId() { + return id; + } + + /** + * An uncommented item + */ + public final java.lang.String getCd() { + return cd; + } + + /** + * An uncommented item + */ + public final java.lang.String getDescription() { + return description; + } +} diff --git a/jOOQ-test/src/org/jooq/test/sqlite/generatedclasses/enums/T_658_11.java b/jOOQ-test/src/org/jooq/test/sqlite/generatedclasses/enums/T_658_11.java new file mode 100644 index 00000000000..b213b687832 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/sqlite/generatedclasses/enums/T_658_11.java @@ -0,0 +1,46 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.sqlite.generatedclasses.enums; + +/** + * This class is generated by jOOQ. + */ +public enum T_658_11 implements org.jooq.MasterDataType { + + /** + * A + */ + A("A"), + + /** + * B + */ + B("B"), + + /** + * C + */ + C("C"), + ; + + private final java.lang.String id; + + private T_658_11(java.lang.String id) { + this.id = id; + } + + @Override + public java.lang.String getPrimaryKey() { + return id; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final java.lang.String getId() { + return id; + } +} diff --git a/jOOQ-test/src/org/jooq/test/sqlite/generatedclasses/enums/T_658_12.java b/jOOQ-test/src/org/jooq/test/sqlite/generatedclasses/enums/T_658_12.java new file mode 100644 index 00000000000..2b74945767d --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/sqlite/generatedclasses/enums/T_658_12.java @@ -0,0 +1,55 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.sqlite.generatedclasses.enums; + +/** + * This class is generated by jOOQ. + */ +public enum T_658_12 implements org.jooq.MasterDataType { + + /** + * A + */ + A("A", "A"), + + /** + * B + */ + B("B", "B"), + + /** + * C + */ + C("C", "C"), + ; + + private final java.lang.String id; + private final java.lang.String cd; + + private T_658_12(java.lang.String id, java.lang.String cd) { + this.id = id; + this.cd = cd; + } + + @Override + public java.lang.String getPrimaryKey() { + return id; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final java.lang.String getId() { + return id; + } + + /** + * An uncommented item + */ + public final java.lang.String getCd() { + return cd; + } +} diff --git a/jOOQ-test/src/org/jooq/test/sqlite/generatedclasses/enums/T_658_21.java b/jOOQ-test/src/org/jooq/test/sqlite/generatedclasses/enums/T_658_21.java new file mode 100644 index 00000000000..c2dd5d85b71 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/sqlite/generatedclasses/enums/T_658_21.java @@ -0,0 +1,46 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.sqlite.generatedclasses.enums; + +/** + * This class is generated by jOOQ. + */ +public enum T_658_21 implements org.jooq.MasterDataType { + + /** + * 1 + */ + _1(1), + + /** + * 2 + */ + _2(2), + + /** + * 3 + */ + _3(3), + ; + + private final java.lang.Integer id; + + private T_658_21(java.lang.Integer id) { + this.id = id; + } + + @Override + public java.lang.Integer getPrimaryKey() { + return id; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final java.lang.Integer getId() { + return id; + } +} diff --git a/jOOQ-test/src/org/jooq/test/sqlite/generatedclasses/enums/T_658_22.java b/jOOQ-test/src/org/jooq/test/sqlite/generatedclasses/enums/T_658_22.java new file mode 100644 index 00000000000..f13d76f07bd --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/sqlite/generatedclasses/enums/T_658_22.java @@ -0,0 +1,55 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.sqlite.generatedclasses.enums; + +/** + * This class is generated by jOOQ. + */ +public enum T_658_22 implements org.jooq.MasterDataType { + + /** + * 1 + */ + _1(1, 1), + + /** + * 2 + */ + _2(2, 2), + + /** + * 3 + */ + _3(3, 3), + ; + + private final java.lang.Integer id; + private final java.lang.Integer cd; + + private T_658_22(java.lang.Integer id, java.lang.Integer cd) { + this.id = id; + this.cd = cd; + } + + @Override + public java.lang.Integer getPrimaryKey() { + return id; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final java.lang.Integer getId() { + return id; + } + + /** + * An uncommented item + */ + public final java.lang.Integer getCd() { + return cd; + } +} diff --git a/jOOQ-test/src/org/jooq/test/sqlite/generatedclasses/enums/T_658_31.java b/jOOQ-test/src/org/jooq/test/sqlite/generatedclasses/enums/T_658_31.java new file mode 100644 index 00000000000..ee81d7d55dd --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/sqlite/generatedclasses/enums/T_658_31.java @@ -0,0 +1,46 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.sqlite.generatedclasses.enums; + +/** + * This class is generated by jOOQ. + */ +public enum T_658_31 implements org.jooq.MasterDataType { + + /** + * 1 + */ + _1(1L), + + /** + * 2 + */ + _2(2L), + + /** + * 3 + */ + _3(3L), + ; + + private final java.lang.Long id; + + private T_658_31(java.lang.Long id) { + this.id = id; + } + + @Override + public java.lang.Long getPrimaryKey() { + return id; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final java.lang.Long getId() { + return id; + } +} diff --git a/jOOQ-test/src/org/jooq/test/sqlite/generatedclasses/enums/T_658_32.java b/jOOQ-test/src/org/jooq/test/sqlite/generatedclasses/enums/T_658_32.java new file mode 100644 index 00000000000..1e25307ee4a --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/sqlite/generatedclasses/enums/T_658_32.java @@ -0,0 +1,55 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.sqlite.generatedclasses.enums; + +/** + * This class is generated by jOOQ. + */ +public enum T_658_32 implements org.jooq.MasterDataType { + + /** + * 1 + */ + _1(1L, 1L), + + /** + * 2 + */ + _2(2L, 2L), + + /** + * 3 + */ + _3(3L, 3L), + ; + + private final java.lang.Long id; + private final java.lang.Long cd; + + private T_658_32(java.lang.Long id, java.lang.Long cd) { + this.id = id; + this.cd = cd; + } + + @Override + public java.lang.Long getPrimaryKey() { + return id; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final java.lang.Long getId() { + return id; + } + + /** + * An uncommented item + */ + public final java.lang.Long getCd() { + return cd; + } +} diff --git a/jOOQ-test/src/org/jooq/test/sqlite/generatedclasses/tables/TAuthor.java b/jOOQ-test/src/org/jooq/test/sqlite/generatedclasses/tables/TAuthor.java new file mode 100644 index 00000000000..3431a61c46b --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/sqlite/generatedclasses/tables/TAuthor.java @@ -0,0 +1,80 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.sqlite.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class TAuthor extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = -1721835467; + + /** + * The singleton instance of t_author + */ + public static final org.jooq.test.sqlite.generatedclasses.tables.TAuthor T_AUTHOR = new org.jooq.test.sqlite.generatedclasses.tables.TAuthor(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.sqlite.generatedclasses.tables.records.TAuthorRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public static final org.jooq.TableField ID = createField("ID", org.jooq.impl.SQLDataType.INTEGER, T_AUTHOR); + + /** + * An uncommented item + */ + public static final org.jooq.TableField FIRST_NAME = createField("FIRST_NAME", org.jooq.impl.SQLDataType.VARCHAR, T_AUTHOR); + + /** + * An uncommented item + */ + public static final org.jooq.TableField LAST_NAME = createField("LAST_NAME", org.jooq.impl.SQLDataType.VARCHAR, T_AUTHOR); + + /** + * An uncommented item + */ + public static final org.jooq.TableField DATE_OF_BIRTH = createField("DATE_OF_BIRTH", org.jooq.impl.SQLDataType.DATE, T_AUTHOR); + + /** + * An uncommented item + */ + public static final org.jooq.TableField YEAR_OF_BIRTH = createField("YEAR_OF_BIRTH", org.jooq.impl.SQLDataType.INTEGER, T_AUTHOR); + + /** + * An uncommented item + */ + public static final org.jooq.TableField ADDRESS = createField("ADDRESS", org.jooq.impl.SQLDataType.VARCHAR, T_AUTHOR); + + /** + * No further instances allowed + */ + private TAuthor() { + super("t_author"); + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.test.sqlite.generatedclasses.Keys.PK_T_AUTHOR_ID; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.test.sqlite.generatedclasses.Keys.PK_T_AUTHOR_ID); + } +} diff --git a/jOOQ-test/src/org/jooq/test/sqlite/generatedclasses/tables/TBook.java b/jOOQ-test/src/org/jooq/test/sqlite/generatedclasses/tables/TBook.java new file mode 100644 index 00000000000..af33e6ca585 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/sqlite/generatedclasses/tables/TBook.java @@ -0,0 +1,119 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.sqlite.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class TBook extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = 1372974852; + + /** + * The singleton instance of t_book + */ + public static final org.jooq.test.sqlite.generatedclasses.tables.TBook T_BOOK = new org.jooq.test.sqlite.generatedclasses.tables.TBook(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.sqlite.generatedclasses.tables.records.TBookRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public static final org.jooq.TableField ID = createField("ID", org.jooq.impl.SQLDataType.INTEGER, T_BOOK); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_t_book_T_AUTHOR_2
+	 * FOREIGN KEY (AUTHOR_ID)
+	 * REFERENCES t_author (ID)
+	 * 
+ */ + public static final org.jooq.TableField AUTHOR_ID = createField("AUTHOR_ID", org.jooq.impl.SQLDataType.INTEGER, T_BOOK); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_t_book_T_AUTHOR_1
+	 * FOREIGN KEY (co_author_id)
+	 * REFERENCES t_author (ID)
+	 * 
+ */ + public static final org.jooq.TableField CO_AUTHOR_ID = createField("co_author_id", org.jooq.impl.SQLDataType.INTEGER, T_BOOK); + + /** + * An uncommented item + */ + public static final org.jooq.TableField DETAILS_ID = createField("DETAILS_ID", org.jooq.impl.SQLDataType.INTEGER, T_BOOK); + + /** + * An uncommented item + */ + public static final org.jooq.TableField TITLE = createField("TITLE", org.jooq.impl.SQLDataType.VARCHAR, T_BOOK); + + /** + * An uncommented item + */ + public static final org.jooq.TableField PUBLISHED_IN = createField("PUBLISHED_IN", org.jooq.impl.SQLDataType.INTEGER, T_BOOK); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_t_book_T_LANGUAGE_1
+	 * FOREIGN KEY (LANGUAGE_ID)
+	 * REFERENCES t_language (id)
+	 * 
+ */ + public static final org.jooq.TableField LANGUAGE_ID = createField("LANGUAGE_ID", org.jooq.impl.SQLDataType.INTEGER.asMasterDataType(org.jooq.test.sqlite.generatedclasses.enums.TLanguage.class), T_BOOK); + + /** + * An uncommented item + */ + public static final org.jooq.TableField CONTENT_TEXT = createField("CONTENT_TEXT", org.jooq.impl.SQLDataType.LONGVARCHAR, T_BOOK); + + /** + * An uncommented item + */ + public static final org.jooq.TableField CONTENT_PDF = createField("CONTENT_PDF", org.jooq.impl.SQLDataType.LONGVARBINARY, T_BOOK); + + /** + * No further instances allowed + */ + private TBook() { + super("t_book"); + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.test.sqlite.generatedclasses.Keys.PK_T_BOOK_ID; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.test.sqlite.generatedclasses.Keys.PK_T_BOOK_ID); + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getReferences() { + return java.util.Arrays.>asList(org.jooq.test.sqlite.generatedclasses.Keys.FK_T_BOOK_T_AUTHOR_2, org.jooq.test.sqlite.generatedclasses.Keys.FK_T_BOOK_T_AUTHOR_1); + } +} diff --git a/jOOQ-test/src/org/jooq/test/sqlite/generatedclasses/tables/TBookStore.java b/jOOQ-test/src/org/jooq/test/sqlite/generatedclasses/tables/TBookStore.java new file mode 100644 index 00000000000..e4721e3d9e1 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/sqlite/generatedclasses/tables/TBookStore.java @@ -0,0 +1,55 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.sqlite.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class TBookStore extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = -776320077; + + /** + * The singleton instance of t_book_store + */ + public static final org.jooq.test.sqlite.generatedclasses.tables.TBookStore T_BOOK_STORE = new org.jooq.test.sqlite.generatedclasses.tables.TBookStore(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.sqlite.generatedclasses.tables.records.TBookStoreRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public static final org.jooq.TableField NAME = createField("name", org.jooq.impl.SQLDataType.VARCHAR, T_BOOK_STORE); + + /** + * No further instances allowed + */ + private TBookStore() { + super("t_book_store"); + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.test.sqlite.generatedclasses.Keys.PK_T_BOOK_STORE_NAME; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.test.sqlite.generatedclasses.Keys.PK_T_BOOK_STORE_NAME); + } +} diff --git a/jOOQ-test/src/org/jooq/test/sqlite/generatedclasses/tables/TBookToBookStore.java b/jOOQ-test/src/org/jooq/test/sqlite/generatedclasses/tables/TBookToBookStore.java new file mode 100644 index 00000000000..8eb3aca1e1f --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/sqlite/generatedclasses/tables/TBookToBookStore.java @@ -0,0 +1,85 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.sqlite.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class TBookToBookStore extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = -1068910201; + + /** + * The singleton instance of t_book_to_book_store + */ + public static final org.jooq.test.sqlite.generatedclasses.tables.TBookToBookStore T_BOOK_TO_BOOK_STORE = new org.jooq.test.sqlite.generatedclasses.tables.TBookToBookStore(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.sqlite.generatedclasses.tables.records.TBookToBookStoreRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT fk_t_book_to_book_store_t_book_store_1
+	 * FOREIGN KEY (book_store_name)
+	 * REFERENCES t_book_store (name)
+	 * 
+ */ + public static final org.jooq.TableField BOOK_STORE_NAME = createField("book_store_name", org.jooq.impl.SQLDataType.VARCHAR, T_BOOK_TO_BOOK_STORE); + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT fk_t_book_to_book_store_t_book_1
+	 * FOREIGN KEY (book_id)
+	 * REFERENCES t_book (ID)
+	 * 
+ */ + public static final org.jooq.TableField BOOK_ID = createField("book_id", org.jooq.impl.SQLDataType.INTEGER, T_BOOK_TO_BOOK_STORE); + + /** + * An uncommented item + */ + public static final org.jooq.TableField STOCK = createField("stock", org.jooq.impl.SQLDataType.INTEGER, T_BOOK_TO_BOOK_STORE); + + /** + * No further instances allowed + */ + private TBookToBookStore() { + super("t_book_to_book_store"); + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.test.sqlite.generatedclasses.Keys.PK_T_BOOK_TO_BOOK_STORE_BOOK_STORE_NAME; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.test.sqlite.generatedclasses.Keys.PK_T_BOOK_TO_BOOK_STORE_BOOK_STORE_NAME, org.jooq.test.sqlite.generatedclasses.Keys.PK_T_BOOK_TO_BOOK_STORE_BOOK_ID); + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getReferences() { + return java.util.Arrays.>asList(org.jooq.test.sqlite.generatedclasses.Keys.FK_T_BOOK_TO_BOOK_STORE_T_BOOK_STORE_1, org.jooq.test.sqlite.generatedclasses.Keys.FK_T_BOOK_TO_BOOK_STORE_T_BOOK_1); + } +} diff --git a/jOOQ-test/src/org/jooq/test/sqlite/generatedclasses/tables/TBooleans.java b/jOOQ-test/src/org/jooq/test/sqlite/generatedclasses/tables/TBooleans.java new file mode 100644 index 00000000000..1629ebc08cc --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/sqlite/generatedclasses/tables/TBooleans.java @@ -0,0 +1,105 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.sqlite.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class TBooleans extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = 99891262; + + /** + * The singleton instance of t_booleans + */ + public static final org.jooq.test.sqlite.generatedclasses.tables.TBooleans T_BOOLEANS = new org.jooq.test.sqlite.generatedclasses.tables.TBooleans(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.sqlite.generatedclasses.tables.records.TBooleansRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public static final org.jooq.TableField ID = createField("id", org.jooq.impl.SQLDataType.INTEGER, T_BOOLEANS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField ONE_ZERO = createField("one_zero", org.jooq.impl.SQLDataType.INTEGER.asConvertedDataType(new org.jooq.test._.converters.Boolean_10_Converter()), T_BOOLEANS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField TRUE_FALSE_LC = createField("true_false_lc", org.jooq.impl.SQLDataType.VARCHAR.asConvertedDataType(new org.jooq.test._.converters.Boolean_TF_LC_Converter()), T_BOOLEANS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField TRUE_FALSE_UC = createField("true_false_uc", org.jooq.impl.SQLDataType.VARCHAR.asConvertedDataType(new org.jooq.test._.converters.Boolean_TF_UC_Converter()), T_BOOLEANS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField YES_NO_LC = createField("yes_no_lc", org.jooq.impl.SQLDataType.VARCHAR.asConvertedDataType(new org.jooq.test._.converters.Boolean_YES_NO_LC_Converter()), T_BOOLEANS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField YES_NO_UC = createField("yes_no_uc", org.jooq.impl.SQLDataType.VARCHAR.asConvertedDataType(new org.jooq.test._.converters.Boolean_YES_NO_UC_Converter()), T_BOOLEANS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField Y_N_LC = createField("y_n_lc", org.jooq.impl.SQLDataType.CHAR.asConvertedDataType(new org.jooq.test._.converters.Boolean_YN_LC_Converter()), T_BOOLEANS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField Y_N_UC = createField("y_n_uc", org.jooq.impl.SQLDataType.CHAR.asConvertedDataType(new org.jooq.test._.converters.Boolean_YN_UC_Converter()), T_BOOLEANS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField VC_BOOLEAN = createField("vc_boolean", org.jooq.impl.SQLDataType.BOOLEAN, T_BOOLEANS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField C_BOOLEAN = createField("c_boolean", org.jooq.impl.SQLDataType.BOOLEAN, T_BOOLEANS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField N_BOOLEAN = createField("n_boolean", org.jooq.impl.SQLDataType.BOOLEAN, T_BOOLEANS); + + /** + * No further instances allowed + */ + private TBooleans() { + super("t_booleans"); + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.test.sqlite.generatedclasses.Keys.PK_T_BOOLEANS_ID; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.test.sqlite.generatedclasses.Keys.PK_T_BOOLEANS_ID); + } +} diff --git a/jOOQ-test/src/org/jooq/test/sqlite/generatedclasses/tables/TDates.java b/jOOQ-test/src/org/jooq/test/sqlite/generatedclasses/tables/TDates.java new file mode 100644 index 00000000000..e2aa7d820fa --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/sqlite/generatedclasses/tables/TDates.java @@ -0,0 +1,83 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.sqlite.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class TDates extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = 595217960; + + /** + * The singleton instance of t_dates + */ + public static final org.jooq.test.sqlite.generatedclasses.tables.TDates T_DATES = new org.jooq.test.sqlite.generatedclasses.tables.TDates(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.sqlite.generatedclasses.tables.records.TDatesRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public static final org.jooq.TableField ID = createField("id", org.jooq.impl.SQLDataType.INTEGER, T_DATES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField D = createField("d", org.jooq.impl.SQLDataType.DATE, T_DATES); + + /** + * An uncommented item + * + * The SQL type of this item (time) could not be mapped.
+ * Deserialising this field might not work! + */ + public static final org.jooq.TableField T = createField("t", org.jooq.util.sqlite.SQLiteDataType.getDefaultDataType("time"), T_DATES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField TS = createField("ts", org.jooq.impl.SQLDataType.TIMESTAMP, T_DATES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField D_INT = createField("d_int", org.jooq.impl.SQLDataType.INTEGER, T_DATES); + + /** + * An uncommented item + */ + public static final org.jooq.TableField TS_BIGINT = createField("ts_bigint", org.jooq.impl.SQLDataType.BIGINT, T_DATES); + + /** + * No further instances allowed + */ + private TDates() { + super("t_dates"); + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.test.sqlite.generatedclasses.Keys.PK_T_DATES_ID; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.test.sqlite.generatedclasses.Keys.PK_T_DATES_ID); + } +} diff --git a/jOOQ-test/src/org/jooq/test/sqlite/generatedclasses/tables/TTriggers.java b/jOOQ-test/src/org/jooq/test/sqlite/generatedclasses/tables/TTriggers.java new file mode 100644 index 00000000000..16f80b92947 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/sqlite/generatedclasses/tables/TTriggers.java @@ -0,0 +1,70 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.sqlite.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class TTriggers extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = 1377334678; + + /** + * The singleton instance of t_triggers + */ + public static final org.jooq.test.sqlite.generatedclasses.tables.TTriggers T_TRIGGERS = new org.jooq.test.sqlite.generatedclasses.tables.TTriggers(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.sqlite.generatedclasses.tables.records.TTriggersRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public static final org.jooq.TableField ID_GENERATED = createField("id_generated", org.jooq.impl.SQLDataType.INTEGER, T_TRIGGERS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField ID = createField("id", org.jooq.impl.SQLDataType.INTEGER, T_TRIGGERS); + + /** + * An uncommented item + */ + public static final org.jooq.TableField COUNTER = createField("counter", org.jooq.impl.SQLDataType.INTEGER, T_TRIGGERS); + + /** + * No further instances allowed + */ + private TTriggers() { + super("t_triggers"); + } + + @Override + public org.jooq.Identity getIdentity() { + return org.jooq.test.sqlite.generatedclasses.Keys.IDENTITY_T_TRIGGERS; + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.test.sqlite.generatedclasses.Keys.PK_T_TRIGGERS_ID_GENERATED; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.test.sqlite.generatedclasses.Keys.PK_T_TRIGGERS_ID_GENERATED); + } +} diff --git a/jOOQ-test/src/org/jooq/test/sqlite/generatedclasses/tables/T_639NumbersTable.java b/jOOQ-test/src/org/jooq/test/sqlite/generatedclasses/tables/T_639NumbersTable.java new file mode 100644 index 00000000000..fa4e8c8515b --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/sqlite/generatedclasses/tables/T_639NumbersTable.java @@ -0,0 +1,115 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.sqlite.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class T_639NumbersTable extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = -1377580695; + + /** + * The singleton instance of t_639_numbers_table + */ + public static final org.jooq.test.sqlite.generatedclasses.tables.T_639NumbersTable T_639_NUMBERS_TABLE = new org.jooq.test.sqlite.generatedclasses.tables.T_639NumbersTable(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.sqlite.generatedclasses.tables.records.T_639NumbersTableRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public static final org.jooq.TableField ID = createField("ID", org.jooq.impl.SQLDataType.INTEGER, T_639_NUMBERS_TABLE); + + /** + * An uncommented item + */ + public static final org.jooq.TableField BYTE = createField("BYTE", org.jooq.impl.SQLDataType.TINYINT, T_639_NUMBERS_TABLE); + + /** + * An uncommented item + */ + public static final org.jooq.TableField SHORT = createField("SHORT", org.jooq.impl.SQLDataType.SMALLINT, T_639_NUMBERS_TABLE); + + /** + * An uncommented item + */ + public static final org.jooq.TableField INTEGER = createField("INTEGER", org.jooq.impl.SQLDataType.INTEGER, T_639_NUMBERS_TABLE); + + /** + * An uncommented item + */ + public static final org.jooq.TableField LONG = createField("LONG", org.jooq.impl.SQLDataType.BIGINT, T_639_NUMBERS_TABLE); + + /** + * An uncommented item + */ + public static final org.jooq.TableField BYTE_DECIMAL = createField("BYTE_DECIMAL", org.jooq.impl.SQLDataType.TINYINT, T_639_NUMBERS_TABLE); + + /** + * An uncommented item + */ + public static final org.jooq.TableField SHORT_DECIMAL = createField("SHORT_DECIMAL", org.jooq.impl.SQLDataType.SMALLINT, T_639_NUMBERS_TABLE); + + /** + * An uncommented item + */ + public static final org.jooq.TableField INTEGER_DECIMAL = createField("INTEGER_DECIMAL", org.jooq.impl.SQLDataType.INTEGER, T_639_NUMBERS_TABLE); + + /** + * An uncommented item + */ + public static final org.jooq.TableField LONG_DECIMAL = createField("LONG_DECIMAL", org.jooq.impl.SQLDataType.BIGINT, T_639_NUMBERS_TABLE); + + /** + * An uncommented item + */ + public static final org.jooq.TableField BIG_INTEGER = createField("BIG_INTEGER", org.jooq.impl.SQLDataType.DECIMAL_INTEGER, T_639_NUMBERS_TABLE); + + /** + * An uncommented item + */ + public static final org.jooq.TableField BIG_DECIMAL = createField("BIG_DECIMAL", org.jooq.impl.SQLDataType.NUMERIC, T_639_NUMBERS_TABLE); + + /** + * An uncommented item + */ + public static final org.jooq.TableField FLOAT = createField("FLOAT", org.jooq.impl.SQLDataType.REAL, T_639_NUMBERS_TABLE); + + /** + * An uncommented item + */ + public static final org.jooq.TableField DOUBLE = createField("DOUBLE", org.jooq.impl.SQLDataType.DOUBLE, T_639_NUMBERS_TABLE); + + /** + * No further instances allowed + */ + private T_639NumbersTable() { + super("t_639_numbers_table"); + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.test.sqlite.generatedclasses.Keys.PK_T_639_NUMBERS_TABLE_ID; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.test.sqlite.generatedclasses.Keys.PK_T_639_NUMBERS_TABLE_ID); + } +} diff --git a/jOOQ-test/src/org/jooq/test/sqlite/generatedclasses/tables/T_658Ref.java b/jOOQ-test/src/org/jooq/test/sqlite/generatedclasses/tables/T_658Ref.java new file mode 100644 index 00000000000..01b15d33f8e --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/sqlite/generatedclasses/tables/T_658Ref.java @@ -0,0 +1,109 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.sqlite.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class T_658Ref extends org.jooq.impl.TableImpl { + + private static final long serialVersionUID = 166816977; + + /** + * The singleton instance of t_658_ref + */ + public static final org.jooq.test.sqlite.generatedclasses.tables.T_658Ref T_658_REF = new org.jooq.test.sqlite.generatedclasses.tables.T_658Ref(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.sqlite.generatedclasses.tables.records.T_658RefRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_t_658_ref_t_658_11_1
+	 * FOREIGN KEY (ref_11)
+	 * REFERENCES t_658_11 (id)
+	 * 
+ */ + public static final org.jooq.TableField REF_11 = createField("ref_11", org.jooq.impl.SQLDataType.CHAR.asMasterDataType(org.jooq.test.sqlite.generatedclasses.enums.T_658_11.class), T_658_REF); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_t_658_ref_t_658_21_1
+	 * FOREIGN KEY (ref_21)
+	 * REFERENCES t_658_21 (id)
+	 * 
+ */ + public static final org.jooq.TableField REF_21 = createField("ref_21", org.jooq.impl.SQLDataType.INTEGER.asMasterDataType(org.jooq.test.sqlite.generatedclasses.enums.T_658_21.class), T_658_REF); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_t_658_ref_t_658_31_1
+	 * FOREIGN KEY (ref_31)
+	 * REFERENCES t_658_31 (id)
+	 * 
+ */ + public static final org.jooq.TableField REF_31 = createField("ref_31", org.jooq.impl.SQLDataType.BIGINT.asMasterDataType(org.jooq.test.sqlite.generatedclasses.enums.T_658_31.class), T_658_REF); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_t_658_ref_t_658_12_1
+	 * FOREIGN KEY (ref_12)
+	 * REFERENCES t_658_12 (id)
+	 * 
+ */ + public static final org.jooq.TableField REF_12 = createField("ref_12", org.jooq.impl.SQLDataType.CHAR.asMasterDataType(org.jooq.test.sqlite.generatedclasses.enums.T_658_12.class), T_658_REF); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_t_658_ref_t_658_22_1
+	 * FOREIGN KEY (ref_22)
+	 * REFERENCES t_658_22 (id)
+	 * 
+ */ + public static final org.jooq.TableField REF_22 = createField("ref_22", org.jooq.impl.SQLDataType.INTEGER.asMasterDataType(org.jooq.test.sqlite.generatedclasses.enums.T_658_22.class), T_658_REF); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_t_658_ref_t_658_32_1
+	 * FOREIGN KEY (ref_32)
+	 * REFERENCES t_658_32 (id)
+	 * 
+ */ + public static final org.jooq.TableField REF_32 = createField("ref_32", org.jooq.impl.SQLDataType.BIGINT.asMasterDataType(org.jooq.test.sqlite.generatedclasses.enums.T_658_32.class), T_658_REF); + + /** + * No further instances allowed + */ + private T_658Ref() { + super("t_658_ref"); + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getReferences() { + return java.util.Arrays.>asList(); + } +} diff --git a/jOOQ-test/src/org/jooq/test/sqlite/generatedclasses/tables/T_725LobTest.java b/jOOQ-test/src/org/jooq/test/sqlite/generatedclasses/tables/T_725LobTest.java new file mode 100644 index 00000000000..29449aea15f --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/sqlite/generatedclasses/tables/T_725LobTest.java @@ -0,0 +1,60 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.sqlite.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class T_725LobTest extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = -672200510; + + /** + * The singleton instance of t_725_lob_test + */ + public static final org.jooq.test.sqlite.generatedclasses.tables.T_725LobTest T_725_LOB_TEST = new org.jooq.test.sqlite.generatedclasses.tables.T_725LobTest(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.sqlite.generatedclasses.tables.records.T_725LobTestRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public static final org.jooq.TableField ID = createField("ID", org.jooq.impl.SQLDataType.INTEGER, T_725_LOB_TEST); + + /** + * An uncommented item + */ + public static final org.jooq.TableField LOB = createField("LOB", org.jooq.impl.SQLDataType.LONGVARBINARY, T_725_LOB_TEST); + + /** + * No further instances allowed + */ + private T_725LobTest() { + super("t_725_lob_test"); + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.test.sqlite.generatedclasses.Keys.PK_T_725_LOB_TEST_ID; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.test.sqlite.generatedclasses.Keys.PK_T_725_LOB_TEST_ID); + } +} diff --git a/jOOQ-test/src/org/jooq/test/sqlite/generatedclasses/tables/T_785.java b/jOOQ-test/src/org/jooq/test/sqlite/generatedclasses/tables/T_785.java new file mode 100644 index 00000000000..726e9ca6a37 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/sqlite/generatedclasses/tables/T_785.java @@ -0,0 +1,52 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.sqlite.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class T_785 extends org.jooq.impl.TableImpl { + + private static final long serialVersionUID = -2117615187; + + /** + * The singleton instance of t_785 + */ + public static final org.jooq.test.sqlite.generatedclasses.tables.T_785 T_785 = new org.jooq.test.sqlite.generatedclasses.tables.T_785(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.sqlite.generatedclasses.tables.records.T_785Record.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + */ + public static final org.jooq.TableField ID = createField("ID", org.jooq.impl.SQLDataType.INTEGER, T_785); + + /** + * An uncommented item + */ + public static final org.jooq.TableField NAME = createField("NAME", org.jooq.impl.SQLDataType.VARCHAR, T_785); + + /** + * An uncommented item + */ + public static final org.jooq.TableField VALUE = createField("VALUE", org.jooq.impl.SQLDataType.VARCHAR, T_785); + + /** + * No further instances allowed + */ + private T_785() { + super("t_785"); + } +} diff --git a/jOOQ-test/src/org/jooq/test/sqlite/generatedclasses/tables/T_986_1.java b/jOOQ-test/src/org/jooq/test/sqlite/generatedclasses/tables/T_986_1.java new file mode 100644 index 00000000000..9f69c1d4858 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/sqlite/generatedclasses/tables/T_986_1.java @@ -0,0 +1,67 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.sqlite.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class T_986_1 extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = -533217223; + + /** + * The singleton instance of t_986_1 + */ + public static final org.jooq.test.sqlite.generatedclasses.tables.T_986_1 T_986_1 = new org.jooq.test.sqlite.generatedclasses.tables.T_986_1(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.sqlite.generatedclasses.tables.records.T_986_1Record.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT fk_t_986_1_X_UNUSED_1
+	 * FOREIGN KEY (REF)
+	 * REFERENCES x_unused (ID)
+	 * 
+ */ + public static final org.jooq.TableField REF = createField("REF", org.jooq.impl.SQLDataType.INTEGER, T_986_1); + + /** + * No further instances allowed + */ + private T_986_1() { + super("t_986_1"); + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.test.sqlite.generatedclasses.Keys.PK_T_986_1_REF; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.test.sqlite.generatedclasses.Keys.PK_T_986_1_REF); + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getReferences() { + return java.util.Arrays.>asList(org.jooq.test.sqlite.generatedclasses.Keys.FK_T_986_1_X_UNUSED_1); + } +} diff --git a/jOOQ-test/src/org/jooq/test/sqlite/generatedclasses/tables/T_986_2.java b/jOOQ-test/src/org/jooq/test/sqlite/generatedclasses/tables/T_986_2.java new file mode 100644 index 00000000000..372b781a624 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/sqlite/generatedclasses/tables/T_986_2.java @@ -0,0 +1,67 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.sqlite.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class T_986_2 extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = 118579895; + + /** + * The singleton instance of t_986_2 + */ + public static final org.jooq.test.sqlite.generatedclasses.tables.T_986_2 T_986_2 = new org.jooq.test.sqlite.generatedclasses.tables.T_986_2(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.sqlite.generatedclasses.tables.records.T_986_2Record.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT fk_t_986_2_X_UNUSED_1
+	 * FOREIGN KEY (REF)
+	 * REFERENCES x_unused (ID)
+	 * 
+ */ + public static final org.jooq.TableField REF = createField("REF", org.jooq.impl.SQLDataType.INTEGER, T_986_2); + + /** + * No further instances allowed + */ + private T_986_2() { + super("t_986_2"); + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.test.sqlite.generatedclasses.Keys.PK_T_986_2_REF; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.test.sqlite.generatedclasses.Keys.PK_T_986_2_REF); + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getReferences() { + return java.util.Arrays.>asList(org.jooq.test.sqlite.generatedclasses.Keys.FK_T_986_2_X_UNUSED_1); + } +} diff --git a/jOOQ-test/src/org/jooq/test/sqlite/generatedclasses/tables/VAuthor.java b/jOOQ-test/src/org/jooq/test/sqlite/generatedclasses/tables/VAuthor.java new file mode 100644 index 00000000000..3a290275936 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/sqlite/generatedclasses/tables/VAuthor.java @@ -0,0 +1,67 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.sqlite.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class VAuthor extends org.jooq.impl.TableImpl { + + private static final long serialVersionUID = -1087960337; + + /** + * The singleton instance of v_author + */ + public static final org.jooq.test.sqlite.generatedclasses.tables.VAuthor V_AUTHOR = new org.jooq.test.sqlite.generatedclasses.tables.VAuthor(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.sqlite.generatedclasses.tables.records.VAuthorRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + */ + public static final org.jooq.TableField ID = createField("ID", org.jooq.impl.SQLDataType.INTEGER, V_AUTHOR); + + /** + * An uncommented item + */ + public static final org.jooq.TableField FIRST_NAME = createField("FIRST_NAME", org.jooq.impl.SQLDataType.VARCHAR, V_AUTHOR); + + /** + * An uncommented item + */ + public static final org.jooq.TableField LAST_NAME = createField("LAST_NAME", org.jooq.impl.SQLDataType.VARCHAR, V_AUTHOR); + + /** + * An uncommented item + */ + public static final org.jooq.TableField DATE_OF_BIRTH = createField("DATE_OF_BIRTH", org.jooq.impl.SQLDataType.DATE, V_AUTHOR); + + /** + * An uncommented item + */ + public static final org.jooq.TableField YEAR_OF_BIRTH = createField("YEAR_OF_BIRTH", org.jooq.impl.SQLDataType.INTEGER, V_AUTHOR); + + /** + * An uncommented item + */ + public static final org.jooq.TableField ADDRESS = createField("ADDRESS", org.jooq.impl.SQLDataType.VARCHAR, V_AUTHOR); + + /** + * No further instances allowed + */ + private VAuthor() { + super("v_author"); + } +} diff --git a/jOOQ-test/src/org/jooq/test/sqlite/generatedclasses/tables/VBook.java b/jOOQ-test/src/org/jooq/test/sqlite/generatedclasses/tables/VBook.java new file mode 100644 index 00000000000..5200700c9e0 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/sqlite/generatedclasses/tables/VBook.java @@ -0,0 +1,82 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.sqlite.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class VBook extends org.jooq.impl.TableImpl { + + private static final long serialVersionUID = 845862375; + + /** + * The singleton instance of v_book + */ + public static final org.jooq.test.sqlite.generatedclasses.tables.VBook V_BOOK = new org.jooq.test.sqlite.generatedclasses.tables.VBook(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.sqlite.generatedclasses.tables.records.VBookRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + */ + public static final org.jooq.TableField ID = createField("ID", org.jooq.impl.SQLDataType.INTEGER, V_BOOK); + + /** + * An uncommented item + */ + public static final org.jooq.TableField AUTHOR_ID = createField("AUTHOR_ID", org.jooq.impl.SQLDataType.INTEGER, V_BOOK); + + /** + * An uncommented item + */ + public static final org.jooq.TableField CO_AUTHOR_ID = createField("co_author_id", org.jooq.impl.SQLDataType.INTEGER, V_BOOK); + + /** + * An uncommented item + */ + public static final org.jooq.TableField DETAILS_ID = createField("DETAILS_ID", org.jooq.impl.SQLDataType.INTEGER, V_BOOK); + + /** + * An uncommented item + */ + public static final org.jooq.TableField TITLE = createField("TITLE", org.jooq.impl.SQLDataType.VARCHAR, V_BOOK); + + /** + * An uncommented item + */ + public static final org.jooq.TableField PUBLISHED_IN = createField("PUBLISHED_IN", org.jooq.impl.SQLDataType.INTEGER, V_BOOK); + + /** + * An uncommented item + */ + public static final org.jooq.TableField LANGUAGE_ID = createField("LANGUAGE_ID", org.jooq.impl.SQLDataType.INTEGER, V_BOOK); + + /** + * An uncommented item + */ + public static final org.jooq.TableField CONTENT_TEXT = createField("CONTENT_TEXT", org.jooq.impl.SQLDataType.LONGVARCHAR, V_BOOK); + + /** + * An uncommented item + */ + public static final org.jooq.TableField CONTENT_PDF = createField("CONTENT_PDF", org.jooq.impl.SQLDataType.LONGVARBINARY, V_BOOK); + + /** + * No further instances allowed + */ + private VBook() { + super("v_book"); + } +} diff --git a/jOOQ-test/src/org/jooq/test/sqlite/generatedclasses/tables/VLibrary.java b/jOOQ-test/src/org/jooq/test/sqlite/generatedclasses/tables/VLibrary.java new file mode 100644 index 00000000000..ed53b525db7 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/sqlite/generatedclasses/tables/VLibrary.java @@ -0,0 +1,47 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.sqlite.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class VLibrary extends org.jooq.impl.TableImpl { + + private static final long serialVersionUID = 128477471; + + /** + * The singleton instance of V_LIBRARY + */ + public static final org.jooq.test.sqlite.generatedclasses.tables.VLibrary V_LIBRARY = new org.jooq.test.sqlite.generatedclasses.tables.VLibrary(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.sqlite.generatedclasses.tables.records.VLibraryRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + */ + public static final org.jooq.TableField AUTHOR = createField("AUTHOR", org.jooq.impl.SQLDataType.VARCHAR, V_LIBRARY); + + /** + * An uncommented item + */ + public static final org.jooq.TableField TITLE = createField("TITLE", org.jooq.impl.SQLDataType.VARCHAR, V_LIBRARY); + + /** + * No further instances allowed + */ + private VLibrary() { + super("V_LIBRARY"); + } +} diff --git a/jOOQ-test/src/org/jooq/test/sqlite/generatedclasses/tables/XTestCase_64_69.java b/jOOQ-test/src/org/jooq/test/sqlite/generatedclasses/tables/XTestCase_64_69.java new file mode 100644 index 00000000000..753b0bfd79c --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/sqlite/generatedclasses/tables/XTestCase_64_69.java @@ -0,0 +1,72 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.sqlite.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class XTestCase_64_69 extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = -1462334737; + + /** + * The singleton instance of x_test_case_64_69 + */ + public static final org.jooq.test.sqlite.generatedclasses.tables.XTestCase_64_69 X_TEST_CASE_64_69 = new org.jooq.test.sqlite.generatedclasses.tables.XTestCase_64_69(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.sqlite.generatedclasses.tables.records.XTestCase_64_69Record.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public static final org.jooq.TableField ID = createField("ID", org.jooq.impl.SQLDataType.INTEGER, X_TEST_CASE_64_69); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_x_test_case_64_69_X_UNUSED_1
+	 * FOREIGN KEY (UNUSED_ID)
+	 * REFERENCES x_unused (ID)
+	 * 
+ */ + public static final org.jooq.TableField UNUSED_ID = createField("UNUSED_ID", org.jooq.impl.SQLDataType.INTEGER, X_TEST_CASE_64_69); + + /** + * No further instances allowed + */ + private XTestCase_64_69() { + super("x_test_case_64_69"); + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.test.sqlite.generatedclasses.Keys.PK_X_TEST_CASE_64_69_ID; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.test.sqlite.generatedclasses.Keys.PK_X_TEST_CASE_64_69_ID); + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getReferences() { + return java.util.Arrays.>asList(org.jooq.test.sqlite.generatedclasses.Keys.FK_X_TEST_CASE_64_69_X_UNUSED_1); + } +} diff --git a/jOOQ-test/src/org/jooq/test/sqlite/generatedclasses/tables/XTestCase_71.java b/jOOQ-test/src/org/jooq/test/sqlite/generatedclasses/tables/XTestCase_71.java new file mode 100644 index 00000000000..df01d20dc8a --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/sqlite/generatedclasses/tables/XTestCase_71.java @@ -0,0 +1,72 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.sqlite.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class XTestCase_71 extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = 1587293949; + + /** + * The singleton instance of x_test_case_71 + */ + public static final org.jooq.test.sqlite.generatedclasses.tables.XTestCase_71 X_TEST_CASE_71 = new org.jooq.test.sqlite.generatedclasses.tables.XTestCase_71(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.sqlite.generatedclasses.tables.records.XTestCase_71Record.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public static final org.jooq.TableField ID = createField("ID", org.jooq.impl.SQLDataType.INTEGER, X_TEST_CASE_71); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_x_test_case_71_X_TEST_CASE_64_69_1
+	 * FOREIGN KEY (TEST_CASE_64_69_ID)
+	 * REFERENCES x_test_case_64_69 (ID)
+	 * 
+ */ + public static final org.jooq.TableField TEST_CASE_64_69_ID = createField("TEST_CASE_64_69_ID", org.jooq.impl.SQLDataType.SMALLINT, X_TEST_CASE_71); + + /** + * No further instances allowed + */ + private XTestCase_71() { + super("x_test_case_71"); + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.test.sqlite.generatedclasses.Keys.PK_X_TEST_CASE_71_ID; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.test.sqlite.generatedclasses.Keys.PK_X_TEST_CASE_71_ID); + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getReferences() { + return java.util.Arrays.>asList(org.jooq.test.sqlite.generatedclasses.Keys.FK_X_TEST_CASE_71_X_TEST_CASE_64_69_1); + } +} diff --git a/jOOQ-test/src/org/jooq/test/sqlite/generatedclasses/tables/XTestCase_85.java b/jOOQ-test/src/org/jooq/test/sqlite/generatedclasses/tables/XTestCase_85.java new file mode 100644 index 00000000000..d646c32b3b1 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/sqlite/generatedclasses/tables/XTestCase_85.java @@ -0,0 +1,83 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.sqlite.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class XTestCase_85 extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = 1842008676; + + /** + * The singleton instance of x_test_case_85 + */ + public static final org.jooq.test.sqlite.generatedclasses.tables.XTestCase_85 X_TEST_CASE_85 = new org.jooq.test.sqlite.generatedclasses.tables.XTestCase_85(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.sqlite.generatedclasses.tables.records.XTestCase_85Record.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public static final org.jooq.TableField ID = createField("id", org.jooq.impl.SQLDataType.INTEGER, X_TEST_CASE_85); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_x_test_case_85_X_UNUSED_1
+	 * FOREIGN KEY (x_unused_id, x_unused_name)
+	 * REFERENCES x_unused (ID)
+	 * 
+ */ + public static final org.jooq.TableField X_UNUSED_ID = createField("x_unused_id", org.jooq.impl.SQLDataType.INTEGER, X_TEST_CASE_85); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_x_test_case_85_X_UNUSED_1
+	 * FOREIGN KEY (x_unused_id, x_unused_name)
+	 * REFERENCES x_unused (ID)
+	 * 
+ */ + public static final org.jooq.TableField X_UNUSED_NAME = createField("x_unused_name", org.jooq.impl.SQLDataType.VARCHAR, X_TEST_CASE_85); + + /** + * No further instances allowed + */ + private XTestCase_85() { + super("x_test_case_85"); + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.test.sqlite.generatedclasses.Keys.PK_X_TEST_CASE_85_ID; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.test.sqlite.generatedclasses.Keys.PK_X_TEST_CASE_85_ID); + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getReferences() { + return java.util.Arrays.>asList(org.jooq.test.sqlite.generatedclasses.Keys.FK_X_TEST_CASE_85_X_UNUSED_1); + } +} diff --git a/jOOQ-test/src/org/jooq/test/sqlite/generatedclasses/tables/XUnused.java b/jOOQ-test/src/org/jooq/test/sqlite/generatedclasses/tables/XUnused.java new file mode 100644 index 00000000000..e94415a7626 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/sqlite/generatedclasses/tables/XUnused.java @@ -0,0 +1,140 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.sqlite.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class XUnused extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = -2083714462; + + /** + * The singleton instance of x_unused + */ + public static final org.jooq.test.sqlite.generatedclasses.tables.XUnused X_UNUSED = new org.jooq.test.sqlite.generatedclasses.tables.XUnused(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.sqlite.generatedclasses.tables.records.XUnusedRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public static final org.jooq.TableField ID = createField("ID", org.jooq.impl.SQLDataType.INTEGER, X_UNUSED); + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public static final org.jooq.TableField NAME = createField("NAME", org.jooq.impl.SQLDataType.VARCHAR, X_UNUSED); + + /** + * An uncommented item + */ + public static final org.jooq.TableField BIG_INTEGER = createField("BIG_INTEGER", org.jooq.impl.SQLDataType.DECIMAL_INTEGER, X_UNUSED); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_x_unused_X_UNUSED_1
+	 * FOREIGN KEY (ID_REF, NAME_REF)
+	 * REFERENCES x_unused (ID)
+	 * 
+ */ + public static final org.jooq.TableField ID_REF = createField("ID_REF", org.jooq.impl.SQLDataType.INTEGER, X_UNUSED); + + /** + * An uncommented item + */ + public static final org.jooq.TableField CLASS = createField("CLASS", org.jooq.impl.SQLDataType.INTEGER, X_UNUSED); + + /** + * An uncommented item + */ + public static final org.jooq.TableField FIELDS = createField("FIELDS", org.jooq.impl.SQLDataType.INTEGER, X_UNUSED); + + /** + * An uncommented item + */ + public static final org.jooq.TableField CONFIGURATION = createField("CONFIGURATION", org.jooq.impl.SQLDataType.INTEGER, X_UNUSED); + + /** + * An uncommented item + */ + public static final org.jooq.TableField U_D_T = createField("U_D_T", org.jooq.impl.SQLDataType.INTEGER, X_UNUSED); + + /** + * An uncommented item + */ + public static final org.jooq.TableField META_DATA = createField("META_DATA", org.jooq.impl.SQLDataType.INTEGER, X_UNUSED); + + /** + * An uncommented item + */ + public static final org.jooq.TableField TYPE0 = createField("TYPE0", org.jooq.impl.SQLDataType.INTEGER, X_UNUSED); + + /** + * An uncommented item + */ + public static final org.jooq.TableField PRIMARY_KEY = createField("PRIMARY_KEY", org.jooq.impl.SQLDataType.INTEGER, X_UNUSED); + + /** + * An uncommented item + */ + public static final org.jooq.TableField PRIMARYKEY = createField("PRIMARYKEY", org.jooq.impl.SQLDataType.INTEGER, X_UNUSED); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_x_unused_X_UNUSED_1
+	 * FOREIGN KEY (ID_REF, NAME_REF)
+	 * REFERENCES x_unused (ID)
+	 * 
+ */ + public static final org.jooq.TableField NAME_REF = createField("NAME_REF", org.jooq.impl.SQLDataType.VARCHAR, X_UNUSED); + + /** + * An uncommented item + */ + public static final org.jooq.TableField FIELD_737 = createField("FIELD 737", org.jooq.impl.SQLDataType.NUMERIC, X_UNUSED); + + /** + * No further instances allowed + */ + private XUnused() { + super("x_unused"); + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.test.sqlite.generatedclasses.Keys.PK_X_UNUSED_ID; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.test.sqlite.generatedclasses.Keys.PK_X_UNUSED_ID, org.jooq.test.sqlite.generatedclasses.Keys.PK_X_UNUSED_NAME); + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getReferences() { + return java.util.Arrays.>asList(org.jooq.test.sqlite.generatedclasses.Keys.FK_X_UNUSED_X_UNUSED_1); + } +} diff --git a/jOOQ-test/src/org/jooq/test/sqlite/generatedclasses/tables/records/TAuthorRecord.java b/jOOQ-test/src/org/jooq/test/sqlite/generatedclasses/tables/records/TAuthorRecord.java new file mode 100644 index 00000000000..43180f3774c --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/sqlite/generatedclasses/tables/records/TAuthorRecord.java @@ -0,0 +1,131 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.sqlite.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + */ +public class TAuthorRecord extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = 1035752763; + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setId(java.lang.Integer value) { + setValue(org.jooq.test.sqlite.generatedclasses.tables.TAuthor.ID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.lang.Integer getId() { + return getValue(org.jooq.test.sqlite.generatedclasses.tables.TAuthor.ID); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.util.List fetchTBookListByCoAuthorId() { + return create() + .selectFrom(org.jooq.test.sqlite.generatedclasses.tables.TBook.T_BOOK) + .where(org.jooq.test.sqlite.generatedclasses.tables.TBook.CO_AUTHOR_ID.equal(getValue(org.jooq.test.sqlite.generatedclasses.tables.TAuthor.ID))) + .fetch(); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.util.List fetchTBookListByAuthorId() { + return create() + .selectFrom(org.jooq.test.sqlite.generatedclasses.tables.TBook.T_BOOK) + .where(org.jooq.test.sqlite.generatedclasses.tables.TBook.AUTHOR_ID.equal(getValue(org.jooq.test.sqlite.generatedclasses.tables.TAuthor.ID))) + .fetch(); + } + + /** + * An uncommented item + */ + public void setFirstName(java.lang.String value) { + setValue(org.jooq.test.sqlite.generatedclasses.tables.TAuthor.FIRST_NAME, value); + } + + /** + * An uncommented item + */ + public java.lang.String getFirstName() { + return getValue(org.jooq.test.sqlite.generatedclasses.tables.TAuthor.FIRST_NAME); + } + + /** + * An uncommented item + */ + public void setLastName(java.lang.String value) { + setValue(org.jooq.test.sqlite.generatedclasses.tables.TAuthor.LAST_NAME, value); + } + + /** + * An uncommented item + */ + public java.lang.String getLastName() { + return getValue(org.jooq.test.sqlite.generatedclasses.tables.TAuthor.LAST_NAME); + } + + /** + * An uncommented item + */ + public void setDateOfBirth(java.sql.Date value) { + setValue(org.jooq.test.sqlite.generatedclasses.tables.TAuthor.DATE_OF_BIRTH, value); + } + + /** + * An uncommented item + */ + public java.sql.Date getDateOfBirth() { + return getValue(org.jooq.test.sqlite.generatedclasses.tables.TAuthor.DATE_OF_BIRTH); + } + + /** + * An uncommented item + */ + public void setYearOfBirth(java.lang.Integer value) { + setValue(org.jooq.test.sqlite.generatedclasses.tables.TAuthor.YEAR_OF_BIRTH, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getYearOfBirth() { + return getValue(org.jooq.test.sqlite.generatedclasses.tables.TAuthor.YEAR_OF_BIRTH); + } + + /** + * An uncommented item + */ + public void setAddress(java.lang.String value) { + setValue(org.jooq.test.sqlite.generatedclasses.tables.TAuthor.ADDRESS, value); + } + + /** + * An uncommented item + */ + public java.lang.String getAddress() { + return getValue(org.jooq.test.sqlite.generatedclasses.tables.TAuthor.ADDRESS); + } + + /** + * Create a detached TAuthorRecord + */ + public TAuthorRecord() { + super(org.jooq.test.sqlite.generatedclasses.tables.TAuthor.T_AUTHOR); + } +} diff --git a/jOOQ-test/src/org/jooq/test/sqlite/generatedclasses/tables/records/TBookRecord.java b/jOOQ-test/src/org/jooq/test/sqlite/generatedclasses/tables/records/TBookRecord.java new file mode 100644 index 00000000000..86c61d79683 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/sqlite/generatedclasses/tables/records/TBookRecord.java @@ -0,0 +1,229 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.sqlite.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + */ +public class TBookRecord extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = 1212614150; + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setId(java.lang.Integer value) { + setValue(org.jooq.test.sqlite.generatedclasses.tables.TBook.ID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.lang.Integer getId() { + return getValue(org.jooq.test.sqlite.generatedclasses.tables.TBook.ID); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.util.List fetchTBookToBookStoreList() { + return create() + .selectFrom(org.jooq.test.sqlite.generatedclasses.tables.TBookToBookStore.T_BOOK_TO_BOOK_STORE) + .where(org.jooq.test.sqlite.generatedclasses.tables.TBookToBookStore.BOOK_ID.equal(getValue(org.jooq.test.sqlite.generatedclasses.tables.TBook.ID))) + .fetch(); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_t_book_T_AUTHOR_2
+	 * FOREIGN KEY (AUTHOR_ID)
+	 * REFERENCES t_author (ID)
+	 * 
+ */ + public void setAuthorId(java.lang.Integer value) { + setValue(org.jooq.test.sqlite.generatedclasses.tables.TBook.AUTHOR_ID, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_t_book_T_AUTHOR_2
+	 * FOREIGN KEY (AUTHOR_ID)
+	 * REFERENCES t_author (ID)
+	 * 
+ */ + public java.lang.Integer getAuthorId() { + return getValue(org.jooq.test.sqlite.generatedclasses.tables.TBook.AUTHOR_ID); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_t_book_T_AUTHOR_2
+	 * FOREIGN KEY (AUTHOR_ID)
+	 * REFERENCES t_author (ID)
+	 * 
+ */ + public org.jooq.test.sqlite.generatedclasses.tables.records.TAuthorRecord fetchTAuthorByAuthorId() { + return create() + .selectFrom(org.jooq.test.sqlite.generatedclasses.tables.TAuthor.T_AUTHOR) + .where(org.jooq.test.sqlite.generatedclasses.tables.TAuthor.ID.equal(getValue(org.jooq.test.sqlite.generatedclasses.tables.TBook.AUTHOR_ID))) + .fetchOne(); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_t_book_T_AUTHOR_1
+	 * FOREIGN KEY (co_author_id)
+	 * REFERENCES t_author (ID)
+	 * 
+ */ + public void setCoAuthorId(java.lang.Integer value) { + setValue(org.jooq.test.sqlite.generatedclasses.tables.TBook.CO_AUTHOR_ID, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_t_book_T_AUTHOR_1
+	 * FOREIGN KEY (co_author_id)
+	 * REFERENCES t_author (ID)
+	 * 
+ */ + public java.lang.Integer getCoAuthorId() { + return getValue(org.jooq.test.sqlite.generatedclasses.tables.TBook.CO_AUTHOR_ID); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_t_book_T_AUTHOR_1
+	 * FOREIGN KEY (co_author_id)
+	 * REFERENCES t_author (ID)
+	 * 
+ */ + public org.jooq.test.sqlite.generatedclasses.tables.records.TAuthorRecord fetchTAuthorByCoAuthorId() { + return create() + .selectFrom(org.jooq.test.sqlite.generatedclasses.tables.TAuthor.T_AUTHOR) + .where(org.jooq.test.sqlite.generatedclasses.tables.TAuthor.ID.equal(getValue(org.jooq.test.sqlite.generatedclasses.tables.TBook.CO_AUTHOR_ID))) + .fetchOne(); + } + + /** + * An uncommented item + */ + public void setDetailsId(java.lang.Integer value) { + setValue(org.jooq.test.sqlite.generatedclasses.tables.TBook.DETAILS_ID, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getDetailsId() { + return getValue(org.jooq.test.sqlite.generatedclasses.tables.TBook.DETAILS_ID); + } + + /** + * An uncommented item + */ + public void setTitle(java.lang.String value) { + setValue(org.jooq.test.sqlite.generatedclasses.tables.TBook.TITLE, value); + } + + /** + * An uncommented item + */ + public java.lang.String getTitle() { + return getValue(org.jooq.test.sqlite.generatedclasses.tables.TBook.TITLE); + } + + /** + * An uncommented item + */ + public void setPublishedIn(java.lang.Integer value) { + setValue(org.jooq.test.sqlite.generatedclasses.tables.TBook.PUBLISHED_IN, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getPublishedIn() { + return getValue(org.jooq.test.sqlite.generatedclasses.tables.TBook.PUBLISHED_IN); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_t_book_T_LANGUAGE_1
+	 * FOREIGN KEY (LANGUAGE_ID)
+	 * REFERENCES t_language (id)
+	 * 
+ */ + public void setLanguageId(org.jooq.test.sqlite.generatedclasses.enums.TLanguage value) { + setValue(org.jooq.test.sqlite.generatedclasses.tables.TBook.LANGUAGE_ID, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_t_book_T_LANGUAGE_1
+	 * FOREIGN KEY (LANGUAGE_ID)
+	 * REFERENCES t_language (id)
+	 * 
+ */ + public org.jooq.test.sqlite.generatedclasses.enums.TLanguage getLanguageId() { + return getValue(org.jooq.test.sqlite.generatedclasses.tables.TBook.LANGUAGE_ID); + } + + /** + * An uncommented item + */ + public void setContentText(java.lang.String value) { + setValue(org.jooq.test.sqlite.generatedclasses.tables.TBook.CONTENT_TEXT, value); + } + + /** + * An uncommented item + */ + public java.lang.String getContentText() { + return getValue(org.jooq.test.sqlite.generatedclasses.tables.TBook.CONTENT_TEXT); + } + + /** + * An uncommented item + */ + public void setContentPdf(byte[] value) { + setValue(org.jooq.test.sqlite.generatedclasses.tables.TBook.CONTENT_PDF, value); + } + + /** + * An uncommented item + */ + public byte[] getContentPdf() { + return getValue(org.jooq.test.sqlite.generatedclasses.tables.TBook.CONTENT_PDF); + } + + /** + * Create a detached TBookRecord + */ + public TBookRecord() { + super(org.jooq.test.sqlite.generatedclasses.tables.TBook.T_BOOK); + } +} diff --git a/jOOQ-test/src/org/jooq/test/sqlite/generatedclasses/tables/records/TBookStoreRecord.java b/jOOQ-test/src/org/jooq/test/sqlite/generatedclasses/tables/records/TBookStoreRecord.java new file mode 100644 index 00000000000..0b4a6e3fe7e --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/sqlite/generatedclasses/tables/records/TBookStoreRecord.java @@ -0,0 +1,49 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.sqlite.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + */ +public class TBookStoreRecord extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = 1183179475; + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setName(java.lang.String value) { + setValue(org.jooq.test.sqlite.generatedclasses.tables.TBookStore.NAME, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.lang.String getName() { + return getValue(org.jooq.test.sqlite.generatedclasses.tables.TBookStore.NAME); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.util.List fetchTBookToBookStoreList() { + return create() + .selectFrom(org.jooq.test.sqlite.generatedclasses.tables.TBookToBookStore.T_BOOK_TO_BOOK_STORE) + .where(org.jooq.test.sqlite.generatedclasses.tables.TBookToBookStore.BOOK_STORE_NAME.equal(getValue(org.jooq.test.sqlite.generatedclasses.tables.TBookStore.NAME))) + .fetch(); + } + + /** + * Create a detached TBookStoreRecord + */ + public TBookStoreRecord() { + super(org.jooq.test.sqlite.generatedclasses.tables.TBookStore.T_BOOK_STORE); + } +} diff --git a/jOOQ-test/src/org/jooq/test/sqlite/generatedclasses/tables/records/TBookToBookStoreRecord.java b/jOOQ-test/src/org/jooq/test/sqlite/generatedclasses/tables/records/TBookToBookStoreRecord.java new file mode 100644 index 00000000000..914e3e53319 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/sqlite/generatedclasses/tables/records/TBookToBookStoreRecord.java @@ -0,0 +1,129 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.sqlite.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + */ +public class TBookToBookStoreRecord extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = 1303653357; + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT fk_t_book_to_book_store_t_book_store_1
+	 * FOREIGN KEY (book_store_name)
+	 * REFERENCES t_book_store (name)
+	 * 
+ */ + public void setBookStoreName(java.lang.String value) { + setValue(org.jooq.test.sqlite.generatedclasses.tables.TBookToBookStore.BOOK_STORE_NAME, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT fk_t_book_to_book_store_t_book_store_1
+	 * FOREIGN KEY (book_store_name)
+	 * REFERENCES t_book_store (name)
+	 * 
+ */ + public java.lang.String getBookStoreName() { + return getValue(org.jooq.test.sqlite.generatedclasses.tables.TBookToBookStore.BOOK_STORE_NAME); + } + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT fk_t_book_to_book_store_t_book_store_1
+	 * FOREIGN KEY (book_store_name)
+	 * REFERENCES t_book_store (name)
+	 * 
+ */ + public org.jooq.test.sqlite.generatedclasses.tables.records.TBookStoreRecord fetchTBookStore() { + return create() + .selectFrom(org.jooq.test.sqlite.generatedclasses.tables.TBookStore.T_BOOK_STORE) + .where(org.jooq.test.sqlite.generatedclasses.tables.TBookStore.NAME.equal(getValue(org.jooq.test.sqlite.generatedclasses.tables.TBookToBookStore.BOOK_STORE_NAME))) + .fetchOne(); + } + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT fk_t_book_to_book_store_t_book_1
+	 * FOREIGN KEY (book_id)
+	 * REFERENCES t_book (ID)
+	 * 
+ */ + public void setBookId(java.lang.Integer value) { + setValue(org.jooq.test.sqlite.generatedclasses.tables.TBookToBookStore.BOOK_ID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT fk_t_book_to_book_store_t_book_1
+	 * FOREIGN KEY (book_id)
+	 * REFERENCES t_book (ID)
+	 * 
+ */ + public java.lang.Integer getBookId() { + return getValue(org.jooq.test.sqlite.generatedclasses.tables.TBookToBookStore.BOOK_ID); + } + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT fk_t_book_to_book_store_t_book_1
+	 * FOREIGN KEY (book_id)
+	 * REFERENCES t_book (ID)
+	 * 
+ */ + public org.jooq.test.sqlite.generatedclasses.tables.records.TBookRecord fetchTBook() { + return create() + .selectFrom(org.jooq.test.sqlite.generatedclasses.tables.TBook.T_BOOK) + .where(org.jooq.test.sqlite.generatedclasses.tables.TBook.ID.equal(getValue(org.jooq.test.sqlite.generatedclasses.tables.TBookToBookStore.BOOK_ID))) + .fetchOne(); + } + + /** + * An uncommented item + */ + public void setStock(java.lang.Integer value) { + setValue(org.jooq.test.sqlite.generatedclasses.tables.TBookToBookStore.STOCK, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getStock() { + return getValue(org.jooq.test.sqlite.generatedclasses.tables.TBookToBookStore.STOCK); + } + + /** + * Create a detached TBookToBookStoreRecord + */ + public TBookToBookStoreRecord() { + super(org.jooq.test.sqlite.generatedclasses.tables.TBookToBookStore.T_BOOK_TO_BOOK_STORE); + } +} diff --git a/jOOQ-test/src/org/jooq/test/sqlite/generatedclasses/tables/records/TBooleansRecord.java b/jOOQ-test/src/org/jooq/test/sqlite/generatedclasses/tables/records/TBooleansRecord.java new file mode 100644 index 00000000000..551d1263b7a --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/sqlite/generatedclasses/tables/records/TBooleansRecord.java @@ -0,0 +1,177 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.sqlite.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + */ +public class TBooleansRecord extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = -1484188684; + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setId(java.lang.Integer value) { + setValue(org.jooq.test.sqlite.generatedclasses.tables.TBooleans.ID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.lang.Integer getId() { + return getValue(org.jooq.test.sqlite.generatedclasses.tables.TBooleans.ID); + } + + /** + * An uncommented item + */ + public void setOneZero(org.jooq.test._.converters.Boolean_10 value) { + setValue(org.jooq.test.sqlite.generatedclasses.tables.TBooleans.ONE_ZERO, value); + } + + /** + * An uncommented item + */ + public org.jooq.test._.converters.Boolean_10 getOneZero() { + return getValue(org.jooq.test.sqlite.generatedclasses.tables.TBooleans.ONE_ZERO); + } + + /** + * An uncommented item + */ + public void setTrueFalseLc(org.jooq.test._.converters.Boolean_TF_LC value) { + setValue(org.jooq.test.sqlite.generatedclasses.tables.TBooleans.TRUE_FALSE_LC, value); + } + + /** + * An uncommented item + */ + public org.jooq.test._.converters.Boolean_TF_LC getTrueFalseLc() { + return getValue(org.jooq.test.sqlite.generatedclasses.tables.TBooleans.TRUE_FALSE_LC); + } + + /** + * An uncommented item + */ + public void setTrueFalseUc(org.jooq.test._.converters.Boolean_TF_UC value) { + setValue(org.jooq.test.sqlite.generatedclasses.tables.TBooleans.TRUE_FALSE_UC, value); + } + + /** + * An uncommented item + */ + public org.jooq.test._.converters.Boolean_TF_UC getTrueFalseUc() { + return getValue(org.jooq.test.sqlite.generatedclasses.tables.TBooleans.TRUE_FALSE_UC); + } + + /** + * An uncommented item + */ + public void setYesNoLc(org.jooq.test._.converters.Boolean_YES_NO_LC value) { + setValue(org.jooq.test.sqlite.generatedclasses.tables.TBooleans.YES_NO_LC, value); + } + + /** + * An uncommented item + */ + public org.jooq.test._.converters.Boolean_YES_NO_LC getYesNoLc() { + return getValue(org.jooq.test.sqlite.generatedclasses.tables.TBooleans.YES_NO_LC); + } + + /** + * An uncommented item + */ + public void setYesNoUc(org.jooq.test._.converters.Boolean_YES_NO_UC value) { + setValue(org.jooq.test.sqlite.generatedclasses.tables.TBooleans.YES_NO_UC, value); + } + + /** + * An uncommented item + */ + public org.jooq.test._.converters.Boolean_YES_NO_UC getYesNoUc() { + return getValue(org.jooq.test.sqlite.generatedclasses.tables.TBooleans.YES_NO_UC); + } + + /** + * An uncommented item + */ + public void setYNLc(org.jooq.test._.converters.Boolean_YN_LC value) { + setValue(org.jooq.test.sqlite.generatedclasses.tables.TBooleans.Y_N_LC, value); + } + + /** + * An uncommented item + */ + public org.jooq.test._.converters.Boolean_YN_LC getYNLc() { + return getValue(org.jooq.test.sqlite.generatedclasses.tables.TBooleans.Y_N_LC); + } + + /** + * An uncommented item + */ + public void setYNUc(org.jooq.test._.converters.Boolean_YN_UC value) { + setValue(org.jooq.test.sqlite.generatedclasses.tables.TBooleans.Y_N_UC, value); + } + + /** + * An uncommented item + */ + public org.jooq.test._.converters.Boolean_YN_UC getYNUc() { + return getValue(org.jooq.test.sqlite.generatedclasses.tables.TBooleans.Y_N_UC); + } + + /** + * An uncommented item + */ + public void setVcBoolean(java.lang.Boolean value) { + setValue(org.jooq.test.sqlite.generatedclasses.tables.TBooleans.VC_BOOLEAN, value); + } + + /** + * An uncommented item + */ + public java.lang.Boolean getVcBoolean() { + return getValue(org.jooq.test.sqlite.generatedclasses.tables.TBooleans.VC_BOOLEAN); + } + + /** + * An uncommented item + */ + public void setCBoolean(java.lang.Boolean value) { + setValue(org.jooq.test.sqlite.generatedclasses.tables.TBooleans.C_BOOLEAN, value); + } + + /** + * An uncommented item + */ + public java.lang.Boolean getCBoolean() { + return getValue(org.jooq.test.sqlite.generatedclasses.tables.TBooleans.C_BOOLEAN); + } + + /** + * An uncommented item + */ + public void setNBoolean(java.lang.Boolean value) { + setValue(org.jooq.test.sqlite.generatedclasses.tables.TBooleans.N_BOOLEAN, value); + } + + /** + * An uncommented item + */ + public java.lang.Boolean getNBoolean() { + return getValue(org.jooq.test.sqlite.generatedclasses.tables.TBooleans.N_BOOLEAN); + } + + /** + * Create a detached TBooleansRecord + */ + public TBooleansRecord() { + super(org.jooq.test.sqlite.generatedclasses.tables.TBooleans.T_BOOLEANS); + } +} diff --git a/jOOQ-test/src/org/jooq/test/sqlite/generatedclasses/tables/records/TDatesRecord.java b/jOOQ-test/src/org/jooq/test/sqlite/generatedclasses/tables/records/TDatesRecord.java new file mode 100644 index 00000000000..b7ea6ccd226 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/sqlite/generatedclasses/tables/records/TDatesRecord.java @@ -0,0 +1,113 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.sqlite.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + */ +public class TDatesRecord extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = 875151126; + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setId(java.lang.Integer value) { + setValue(org.jooq.test.sqlite.generatedclasses.tables.TDates.ID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.lang.Integer getId() { + return getValue(org.jooq.test.sqlite.generatedclasses.tables.TDates.ID); + } + + /** + * An uncommented item + */ + public void setD(java.sql.Date value) { + setValue(org.jooq.test.sqlite.generatedclasses.tables.TDates.D, value); + } + + /** + * An uncommented item + */ + public java.sql.Date getD() { + return getValue(org.jooq.test.sqlite.generatedclasses.tables.TDates.D); + } + + /** + * An uncommented item + * + * The SQL type of this item (time) could not be mapped.
+ * Deserialising this field might not work! + */ + public void setT(java.lang.Object value) { + setValue(org.jooq.test.sqlite.generatedclasses.tables.TDates.T, value); + } + + /** + * An uncommented item + * + * The SQL type of this item (time) could not be mapped.
+ * Deserialising this field might not work! + */ + public java.lang.Object getT() { + return getValue(org.jooq.test.sqlite.generatedclasses.tables.TDates.T); + } + + /** + * An uncommented item + */ + public void setTs(java.sql.Timestamp value) { + setValue(org.jooq.test.sqlite.generatedclasses.tables.TDates.TS, value); + } + + /** + * An uncommented item + */ + public java.sql.Timestamp getTs() { + return getValue(org.jooq.test.sqlite.generatedclasses.tables.TDates.TS); + } + + /** + * An uncommented item + */ + public void setDInt(java.lang.Integer value) { + setValue(org.jooq.test.sqlite.generatedclasses.tables.TDates.D_INT, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getDInt() { + return getValue(org.jooq.test.sqlite.generatedclasses.tables.TDates.D_INT); + } + + /** + * An uncommented item + */ + public void setTsBigint(java.lang.Long value) { + setValue(org.jooq.test.sqlite.generatedclasses.tables.TDates.TS_BIGINT, value); + } + + /** + * An uncommented item + */ + public java.lang.Long getTsBigint() { + return getValue(org.jooq.test.sqlite.generatedclasses.tables.TDates.TS_BIGINT); + } + + /** + * Create a detached TDatesRecord + */ + public TDatesRecord() { + super(org.jooq.test.sqlite.generatedclasses.tables.TDates.T_DATES); + } +} diff --git a/jOOQ-test/src/org/jooq/test/sqlite/generatedclasses/tables/records/TTriggersRecord.java b/jOOQ-test/src/org/jooq/test/sqlite/generatedclasses/tables/records/TTriggersRecord.java new file mode 100644 index 00000000000..eeb6c033df7 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/sqlite/generatedclasses/tables/records/TTriggersRecord.java @@ -0,0 +1,65 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.sqlite.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + */ +public class TTriggersRecord extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = -1283109386; + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setIdGenerated(java.lang.Integer value) { + setValue(org.jooq.test.sqlite.generatedclasses.tables.TTriggers.ID_GENERATED, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.lang.Integer getIdGenerated() { + return getValue(org.jooq.test.sqlite.generatedclasses.tables.TTriggers.ID_GENERATED); + } + + /** + * An uncommented item + */ + public void setId(java.lang.Integer value) { + setValue(org.jooq.test.sqlite.generatedclasses.tables.TTriggers.ID, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getId() { + return getValue(org.jooq.test.sqlite.generatedclasses.tables.TTriggers.ID); + } + + /** + * An uncommented item + */ + public void setCounter(java.lang.Integer value) { + setValue(org.jooq.test.sqlite.generatedclasses.tables.TTriggers.COUNTER, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getCounter() { + return getValue(org.jooq.test.sqlite.generatedclasses.tables.TTriggers.COUNTER); + } + + /** + * Create a detached TTriggersRecord + */ + public TTriggersRecord() { + super(org.jooq.test.sqlite.generatedclasses.tables.TTriggers.T_TRIGGERS); + } +} diff --git a/jOOQ-test/src/org/jooq/test/sqlite/generatedclasses/tables/records/T_639NumbersTableRecord.java b/jOOQ-test/src/org/jooq/test/sqlite/generatedclasses/tables/records/T_639NumbersTableRecord.java new file mode 100644 index 00000000000..0eb5702c2d3 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/sqlite/generatedclasses/tables/records/T_639NumbersTableRecord.java @@ -0,0 +1,205 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.sqlite.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + */ +public class T_639NumbersTableRecord extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = -28968073; + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setId(java.lang.Integer value) { + setValue(org.jooq.test.sqlite.generatedclasses.tables.T_639NumbersTable.ID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.lang.Integer getId() { + return getValue(org.jooq.test.sqlite.generatedclasses.tables.T_639NumbersTable.ID); + } + + /** + * An uncommented item + */ + public void setByte(java.lang.Byte value) { + setValue(org.jooq.test.sqlite.generatedclasses.tables.T_639NumbersTable.BYTE, value); + } + + /** + * An uncommented item + */ + public java.lang.Byte getByte() { + return getValue(org.jooq.test.sqlite.generatedclasses.tables.T_639NumbersTable.BYTE); + } + + /** + * An uncommented item + */ + public void setShort(java.lang.Short value) { + setValue(org.jooq.test.sqlite.generatedclasses.tables.T_639NumbersTable.SHORT, value); + } + + /** + * An uncommented item + */ + public java.lang.Short getShort() { + return getValue(org.jooq.test.sqlite.generatedclasses.tables.T_639NumbersTable.SHORT); + } + + /** + * An uncommented item + */ + public void setInteger(java.lang.Integer value) { + setValue(org.jooq.test.sqlite.generatedclasses.tables.T_639NumbersTable.INTEGER, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getInteger() { + return getValue(org.jooq.test.sqlite.generatedclasses.tables.T_639NumbersTable.INTEGER); + } + + /** + * An uncommented item + */ + public void setLong(java.lang.Long value) { + setValue(org.jooq.test.sqlite.generatedclasses.tables.T_639NumbersTable.LONG, value); + } + + /** + * An uncommented item + */ + public java.lang.Long getLong() { + return getValue(org.jooq.test.sqlite.generatedclasses.tables.T_639NumbersTable.LONG); + } + + /** + * An uncommented item + */ + public void setByteDecimal(java.lang.Byte value) { + setValue(org.jooq.test.sqlite.generatedclasses.tables.T_639NumbersTable.BYTE_DECIMAL, value); + } + + /** + * An uncommented item + */ + public java.lang.Byte getByteDecimal() { + return getValue(org.jooq.test.sqlite.generatedclasses.tables.T_639NumbersTable.BYTE_DECIMAL); + } + + /** + * An uncommented item + */ + public void setShortDecimal(java.lang.Short value) { + setValue(org.jooq.test.sqlite.generatedclasses.tables.T_639NumbersTable.SHORT_DECIMAL, value); + } + + /** + * An uncommented item + */ + public java.lang.Short getShortDecimal() { + return getValue(org.jooq.test.sqlite.generatedclasses.tables.T_639NumbersTable.SHORT_DECIMAL); + } + + /** + * An uncommented item + */ + public void setIntegerDecimal(java.lang.Integer value) { + setValue(org.jooq.test.sqlite.generatedclasses.tables.T_639NumbersTable.INTEGER_DECIMAL, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getIntegerDecimal() { + return getValue(org.jooq.test.sqlite.generatedclasses.tables.T_639NumbersTable.INTEGER_DECIMAL); + } + + /** + * An uncommented item + */ + public void setLongDecimal(java.lang.Long value) { + setValue(org.jooq.test.sqlite.generatedclasses.tables.T_639NumbersTable.LONG_DECIMAL, value); + } + + /** + * An uncommented item + */ + public java.lang.Long getLongDecimal() { + return getValue(org.jooq.test.sqlite.generatedclasses.tables.T_639NumbersTable.LONG_DECIMAL); + } + + /** + * An uncommented item + */ + public void setBigInteger(java.math.BigInteger value) { + setValue(org.jooq.test.sqlite.generatedclasses.tables.T_639NumbersTable.BIG_INTEGER, value); + } + + /** + * An uncommented item + */ + public java.math.BigInteger getBigInteger() { + return getValue(org.jooq.test.sqlite.generatedclasses.tables.T_639NumbersTable.BIG_INTEGER); + } + + /** + * An uncommented item + */ + public void setBigDecimal(java.math.BigDecimal value) { + setValue(org.jooq.test.sqlite.generatedclasses.tables.T_639NumbersTable.BIG_DECIMAL, value); + } + + /** + * An uncommented item + */ + public java.math.BigDecimal getBigDecimal() { + return getValue(org.jooq.test.sqlite.generatedclasses.tables.T_639NumbersTable.BIG_DECIMAL); + } + + /** + * An uncommented item + */ + public void setFloat(java.lang.Float value) { + setValue(org.jooq.test.sqlite.generatedclasses.tables.T_639NumbersTable.FLOAT, value); + } + + /** + * An uncommented item + */ + public java.lang.Float getFloat() { + return getValue(org.jooq.test.sqlite.generatedclasses.tables.T_639NumbersTable.FLOAT); + } + + /** + * An uncommented item + */ + public void setDouble(java.lang.Double value) { + setValue(org.jooq.test.sqlite.generatedclasses.tables.T_639NumbersTable.DOUBLE, value); + } + + /** + * An uncommented item + */ + public java.lang.Double getDouble() { + return getValue(org.jooq.test.sqlite.generatedclasses.tables.T_639NumbersTable.DOUBLE); + } + + /** + * Create a detached T_639NumbersTableRecord + */ + public T_639NumbersTableRecord() { + super(org.jooq.test.sqlite.generatedclasses.tables.T_639NumbersTable.T_639_NUMBERS_TABLE); + } +} diff --git a/jOOQ-test/src/org/jooq/test/sqlite/generatedclasses/tables/records/T_658RefRecord.java b/jOOQ-test/src/org/jooq/test/sqlite/generatedclasses/tables/records/T_658RefRecord.java new file mode 100644 index 00000000000..d0bb6fb1ac5 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/sqlite/generatedclasses/tables/records/T_658RefRecord.java @@ -0,0 +1,175 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.sqlite.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + */ +public class T_658RefRecord extends org.jooq.impl.TableRecordImpl { + + private static final long serialVersionUID = -430926682; + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_t_658_ref_t_658_11_1
+	 * FOREIGN KEY (ref_11)
+	 * REFERENCES t_658_11 (id)
+	 * 
+ */ + public void setRef_11(org.jooq.test.sqlite.generatedclasses.enums.T_658_11 value) { + setValue(org.jooq.test.sqlite.generatedclasses.tables.T_658Ref.REF_11, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_t_658_ref_t_658_11_1
+	 * FOREIGN KEY (ref_11)
+	 * REFERENCES t_658_11 (id)
+	 * 
+ */ + public org.jooq.test.sqlite.generatedclasses.enums.T_658_11 getRef_11() { + return getValue(org.jooq.test.sqlite.generatedclasses.tables.T_658Ref.REF_11); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_t_658_ref_t_658_21_1
+	 * FOREIGN KEY (ref_21)
+	 * REFERENCES t_658_21 (id)
+	 * 
+ */ + public void setRef_21(org.jooq.test.sqlite.generatedclasses.enums.T_658_21 value) { + setValue(org.jooq.test.sqlite.generatedclasses.tables.T_658Ref.REF_21, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_t_658_ref_t_658_21_1
+	 * FOREIGN KEY (ref_21)
+	 * REFERENCES t_658_21 (id)
+	 * 
+ */ + public org.jooq.test.sqlite.generatedclasses.enums.T_658_21 getRef_21() { + return getValue(org.jooq.test.sqlite.generatedclasses.tables.T_658Ref.REF_21); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_t_658_ref_t_658_31_1
+	 * FOREIGN KEY (ref_31)
+	 * REFERENCES t_658_31 (id)
+	 * 
+ */ + public void setRef_31(org.jooq.test.sqlite.generatedclasses.enums.T_658_31 value) { + setValue(org.jooq.test.sqlite.generatedclasses.tables.T_658Ref.REF_31, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_t_658_ref_t_658_31_1
+	 * FOREIGN KEY (ref_31)
+	 * REFERENCES t_658_31 (id)
+	 * 
+ */ + public org.jooq.test.sqlite.generatedclasses.enums.T_658_31 getRef_31() { + return getValue(org.jooq.test.sqlite.generatedclasses.tables.T_658Ref.REF_31); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_t_658_ref_t_658_12_1
+	 * FOREIGN KEY (ref_12)
+	 * REFERENCES t_658_12 (id)
+	 * 
+ */ + public void setRef_12(org.jooq.test.sqlite.generatedclasses.enums.T_658_12 value) { + setValue(org.jooq.test.sqlite.generatedclasses.tables.T_658Ref.REF_12, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_t_658_ref_t_658_12_1
+	 * FOREIGN KEY (ref_12)
+	 * REFERENCES t_658_12 (id)
+	 * 
+ */ + public org.jooq.test.sqlite.generatedclasses.enums.T_658_12 getRef_12() { + return getValue(org.jooq.test.sqlite.generatedclasses.tables.T_658Ref.REF_12); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_t_658_ref_t_658_22_1
+	 * FOREIGN KEY (ref_22)
+	 * REFERENCES t_658_22 (id)
+	 * 
+ */ + public void setRef_22(org.jooq.test.sqlite.generatedclasses.enums.T_658_22 value) { + setValue(org.jooq.test.sqlite.generatedclasses.tables.T_658Ref.REF_22, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_t_658_ref_t_658_22_1
+	 * FOREIGN KEY (ref_22)
+	 * REFERENCES t_658_22 (id)
+	 * 
+ */ + public org.jooq.test.sqlite.generatedclasses.enums.T_658_22 getRef_22() { + return getValue(org.jooq.test.sqlite.generatedclasses.tables.T_658Ref.REF_22); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_t_658_ref_t_658_32_1
+	 * FOREIGN KEY (ref_32)
+	 * REFERENCES t_658_32 (id)
+	 * 
+ */ + public void setRef_32(org.jooq.test.sqlite.generatedclasses.enums.T_658_32 value) { + setValue(org.jooq.test.sqlite.generatedclasses.tables.T_658Ref.REF_32, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_t_658_ref_t_658_32_1
+	 * FOREIGN KEY (ref_32)
+	 * REFERENCES t_658_32 (id)
+	 * 
+ */ + public org.jooq.test.sqlite.generatedclasses.enums.T_658_32 getRef_32() { + return getValue(org.jooq.test.sqlite.generatedclasses.tables.T_658Ref.REF_32); + } + + /** + * Create a detached T_658RefRecord + */ + public T_658RefRecord() { + super(org.jooq.test.sqlite.generatedclasses.tables.T_658Ref.T_658_REF); + } +} diff --git a/jOOQ-test/src/org/jooq/test/sqlite/generatedclasses/tables/records/T_725LobTestRecord.java b/jOOQ-test/src/org/jooq/test/sqlite/generatedclasses/tables/records/T_725LobTestRecord.java new file mode 100644 index 00000000000..623590f0d92 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/sqlite/generatedclasses/tables/records/T_725LobTestRecord.java @@ -0,0 +1,51 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.sqlite.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + */ +public class T_725LobTestRecord extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = -245211287; + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setId(java.lang.Integer value) { + setValue(org.jooq.test.sqlite.generatedclasses.tables.T_725LobTest.ID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.lang.Integer getId() { + return getValue(org.jooq.test.sqlite.generatedclasses.tables.T_725LobTest.ID); + } + + /** + * An uncommented item + */ + public void setLob(byte[] value) { + setValue(org.jooq.test.sqlite.generatedclasses.tables.T_725LobTest.LOB, value); + } + + /** + * An uncommented item + */ + public byte[] getLob() { + return getValue(org.jooq.test.sqlite.generatedclasses.tables.T_725LobTest.LOB); + } + + /** + * Create a detached T_725LobTestRecord + */ + public T_725LobTestRecord() { + super(org.jooq.test.sqlite.generatedclasses.tables.T_725LobTest.T_725_LOB_TEST); + } +} diff --git a/jOOQ-test/src/org/jooq/test/sqlite/generatedclasses/tables/records/T_785Record.java b/jOOQ-test/src/org/jooq/test/sqlite/generatedclasses/tables/records/T_785Record.java new file mode 100644 index 00000000000..9c0f2c21c63 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/sqlite/generatedclasses/tables/records/T_785Record.java @@ -0,0 +1,61 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.sqlite.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + */ +public class T_785Record extends org.jooq.impl.TableRecordImpl { + + private static final long serialVersionUID = -161653867; + + /** + * An uncommented item + */ + public void setId(java.lang.Integer value) { + setValue(org.jooq.test.sqlite.generatedclasses.tables.T_785.ID, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getId() { + return getValue(org.jooq.test.sqlite.generatedclasses.tables.T_785.ID); + } + + /** + * An uncommented item + */ + public void setName(java.lang.String value) { + setValue(org.jooq.test.sqlite.generatedclasses.tables.T_785.NAME, value); + } + + /** + * An uncommented item + */ + public java.lang.String getName() { + return getValue(org.jooq.test.sqlite.generatedclasses.tables.T_785.NAME); + } + + /** + * An uncommented item + */ + public void setValue(java.lang.String value) { + setValue(org.jooq.test.sqlite.generatedclasses.tables.T_785.VALUE, value); + } + + /** + * An uncommented item + */ + public java.lang.String getValue() { + return getValue(org.jooq.test.sqlite.generatedclasses.tables.T_785.VALUE); + } + + /** + * Create a detached T_785Record + */ + public T_785Record() { + super(org.jooq.test.sqlite.generatedclasses.tables.T_785.T_785); + } +} diff --git a/jOOQ-test/src/org/jooq/test/sqlite/generatedclasses/tables/records/T_986_1Record.java b/jOOQ-test/src/org/jooq/test/sqlite/generatedclasses/tables/records/T_986_1Record.java new file mode 100644 index 00000000000..1d6d90e837a --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/sqlite/generatedclasses/tables/records/T_986_1Record.java @@ -0,0 +1,67 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.sqlite.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + */ +public class T_986_1Record extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = -339317399; + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT fk_t_986_1_X_UNUSED_1
+	 * FOREIGN KEY (REF)
+	 * REFERENCES x_unused (ID)
+	 * 
+ */ + public void setRef(java.lang.Integer value) { + setValue(org.jooq.test.sqlite.generatedclasses.tables.T_986_1.REF, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT fk_t_986_1_X_UNUSED_1
+	 * FOREIGN KEY (REF)
+	 * REFERENCES x_unused (ID)
+	 * 
+ */ + public java.lang.Integer getRef() { + return getValue(org.jooq.test.sqlite.generatedclasses.tables.T_986_1.REF); + } + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT fk_t_986_1_X_UNUSED_1
+	 * FOREIGN KEY (REF)
+	 * REFERENCES x_unused (ID)
+	 * 
+ */ + public org.jooq.test.sqlite.generatedclasses.tables.records.XUnusedRecord fetchXUnused() { + return create() + .selectFrom(org.jooq.test.sqlite.generatedclasses.tables.XUnused.X_UNUSED) + .where(org.jooq.test.sqlite.generatedclasses.tables.XUnused.ID.equal(getValue(org.jooq.test.sqlite.generatedclasses.tables.T_986_1.REF))) + .fetchOne(); + } + + /** + * Create a detached T_986_1Record + */ + public T_986_1Record() { + super(org.jooq.test.sqlite.generatedclasses.tables.T_986_1.T_986_1); + } +} diff --git a/jOOQ-test/src/org/jooq/test/sqlite/generatedclasses/tables/records/T_986_2Record.java b/jOOQ-test/src/org/jooq/test/sqlite/generatedclasses/tables/records/T_986_2Record.java new file mode 100644 index 00000000000..cb0605b39a9 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/sqlite/generatedclasses/tables/records/T_986_2Record.java @@ -0,0 +1,67 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.sqlite.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + */ +public class T_986_2Record extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = -619158871; + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT fk_t_986_2_X_UNUSED_1
+	 * FOREIGN KEY (REF)
+	 * REFERENCES x_unused (ID)
+	 * 
+ */ + public void setRef(java.lang.Integer value) { + setValue(org.jooq.test.sqlite.generatedclasses.tables.T_986_2.REF, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT fk_t_986_2_X_UNUSED_1
+	 * FOREIGN KEY (REF)
+	 * REFERENCES x_unused (ID)
+	 * 
+ */ + public java.lang.Integer getRef() { + return getValue(org.jooq.test.sqlite.generatedclasses.tables.T_986_2.REF); + } + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT fk_t_986_2_X_UNUSED_1
+	 * FOREIGN KEY (REF)
+	 * REFERENCES x_unused (ID)
+	 * 
+ */ + public org.jooq.test.sqlite.generatedclasses.tables.records.XUnusedRecord fetchXUnused() { + return create() + .selectFrom(org.jooq.test.sqlite.generatedclasses.tables.XUnused.X_UNUSED) + .where(org.jooq.test.sqlite.generatedclasses.tables.XUnused.ID.equal(getValue(org.jooq.test.sqlite.generatedclasses.tables.T_986_2.REF))) + .fetchOne(); + } + + /** + * Create a detached T_986_2Record + */ + public T_986_2Record() { + super(org.jooq.test.sqlite.generatedclasses.tables.T_986_2.T_986_2); + } +} diff --git a/jOOQ-test/src/org/jooq/test/sqlite/generatedclasses/tables/records/VAuthorRecord.java b/jOOQ-test/src/org/jooq/test/sqlite/generatedclasses/tables/records/VAuthorRecord.java new file mode 100644 index 00000000000..26be3f63e1e --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/sqlite/generatedclasses/tables/records/VAuthorRecord.java @@ -0,0 +1,103 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.sqlite.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + */ +public class VAuthorRecord extends org.jooq.impl.TableRecordImpl { + + private static final long serialVersionUID = -575148118; + + /** + * An uncommented item + */ + public void setId(java.lang.Integer value) { + setValue(org.jooq.test.sqlite.generatedclasses.tables.VAuthor.ID, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getId() { + return getValue(org.jooq.test.sqlite.generatedclasses.tables.VAuthor.ID); + } + + /** + * An uncommented item + */ + public void setFirstName(java.lang.String value) { + setValue(org.jooq.test.sqlite.generatedclasses.tables.VAuthor.FIRST_NAME, value); + } + + /** + * An uncommented item + */ + public java.lang.String getFirstName() { + return getValue(org.jooq.test.sqlite.generatedclasses.tables.VAuthor.FIRST_NAME); + } + + /** + * An uncommented item + */ + public void setLastName(java.lang.String value) { + setValue(org.jooq.test.sqlite.generatedclasses.tables.VAuthor.LAST_NAME, value); + } + + /** + * An uncommented item + */ + public java.lang.String getLastName() { + return getValue(org.jooq.test.sqlite.generatedclasses.tables.VAuthor.LAST_NAME); + } + + /** + * An uncommented item + */ + public void setDateOfBirth(java.sql.Date value) { + setValue(org.jooq.test.sqlite.generatedclasses.tables.VAuthor.DATE_OF_BIRTH, value); + } + + /** + * An uncommented item + */ + public java.sql.Date getDateOfBirth() { + return getValue(org.jooq.test.sqlite.generatedclasses.tables.VAuthor.DATE_OF_BIRTH); + } + + /** + * An uncommented item + */ + public void setYearOfBirth(java.lang.Integer value) { + setValue(org.jooq.test.sqlite.generatedclasses.tables.VAuthor.YEAR_OF_BIRTH, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getYearOfBirth() { + return getValue(org.jooq.test.sqlite.generatedclasses.tables.VAuthor.YEAR_OF_BIRTH); + } + + /** + * An uncommented item + */ + public void setAddress(java.lang.String value) { + setValue(org.jooq.test.sqlite.generatedclasses.tables.VAuthor.ADDRESS, value); + } + + /** + * An uncommented item + */ + public java.lang.String getAddress() { + return getValue(org.jooq.test.sqlite.generatedclasses.tables.VAuthor.ADDRESS); + } + + /** + * Create a detached VAuthorRecord + */ + public VAuthorRecord() { + super(org.jooq.test.sqlite.generatedclasses.tables.VAuthor.V_AUTHOR); + } +} diff --git a/jOOQ-test/src/org/jooq/test/sqlite/generatedclasses/tables/records/VBookRecord.java b/jOOQ-test/src/org/jooq/test/sqlite/generatedclasses/tables/records/VBookRecord.java new file mode 100644 index 00000000000..054c79d3614 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/sqlite/generatedclasses/tables/records/VBookRecord.java @@ -0,0 +1,145 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.sqlite.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + */ +public class VBookRecord extends org.jooq.impl.TableRecordImpl { + + private static final long serialVersionUID = 749083336; + + /** + * An uncommented item + */ + public void setId(java.lang.Integer value) { + setValue(org.jooq.test.sqlite.generatedclasses.tables.VBook.ID, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getId() { + return getValue(org.jooq.test.sqlite.generatedclasses.tables.VBook.ID); + } + + /** + * An uncommented item + */ + public void setAuthorId(java.lang.Integer value) { + setValue(org.jooq.test.sqlite.generatedclasses.tables.VBook.AUTHOR_ID, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getAuthorId() { + return getValue(org.jooq.test.sqlite.generatedclasses.tables.VBook.AUTHOR_ID); + } + + /** + * An uncommented item + */ + public void setCoAuthorId(java.lang.Integer value) { + setValue(org.jooq.test.sqlite.generatedclasses.tables.VBook.CO_AUTHOR_ID, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getCoAuthorId() { + return getValue(org.jooq.test.sqlite.generatedclasses.tables.VBook.CO_AUTHOR_ID); + } + + /** + * An uncommented item + */ + public void setDetailsId(java.lang.Integer value) { + setValue(org.jooq.test.sqlite.generatedclasses.tables.VBook.DETAILS_ID, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getDetailsId() { + return getValue(org.jooq.test.sqlite.generatedclasses.tables.VBook.DETAILS_ID); + } + + /** + * An uncommented item + */ + public void setTitle(java.lang.String value) { + setValue(org.jooq.test.sqlite.generatedclasses.tables.VBook.TITLE, value); + } + + /** + * An uncommented item + */ + public java.lang.String getTitle() { + return getValue(org.jooq.test.sqlite.generatedclasses.tables.VBook.TITLE); + } + + /** + * An uncommented item + */ + public void setPublishedIn(java.lang.Integer value) { + setValue(org.jooq.test.sqlite.generatedclasses.tables.VBook.PUBLISHED_IN, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getPublishedIn() { + return getValue(org.jooq.test.sqlite.generatedclasses.tables.VBook.PUBLISHED_IN); + } + + /** + * An uncommented item + */ + public void setLanguageId(java.lang.Integer value) { + setValue(org.jooq.test.sqlite.generatedclasses.tables.VBook.LANGUAGE_ID, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getLanguageId() { + return getValue(org.jooq.test.sqlite.generatedclasses.tables.VBook.LANGUAGE_ID); + } + + /** + * An uncommented item + */ + public void setContentText(java.lang.String value) { + setValue(org.jooq.test.sqlite.generatedclasses.tables.VBook.CONTENT_TEXT, value); + } + + /** + * An uncommented item + */ + public java.lang.String getContentText() { + return getValue(org.jooq.test.sqlite.generatedclasses.tables.VBook.CONTENT_TEXT); + } + + /** + * An uncommented item + */ + public void setContentPdf(byte[] value) { + setValue(org.jooq.test.sqlite.generatedclasses.tables.VBook.CONTENT_PDF, value); + } + + /** + * An uncommented item + */ + public byte[] getContentPdf() { + return getValue(org.jooq.test.sqlite.generatedclasses.tables.VBook.CONTENT_PDF); + } + + /** + * Create a detached VBookRecord + */ + public VBookRecord() { + super(org.jooq.test.sqlite.generatedclasses.tables.VBook.V_BOOK); + } +} diff --git a/jOOQ-test/src/org/jooq/test/sqlite/generatedclasses/tables/records/VLibraryRecord.java b/jOOQ-test/src/org/jooq/test/sqlite/generatedclasses/tables/records/VLibraryRecord.java new file mode 100644 index 00000000000..2c922abe3ba --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/sqlite/generatedclasses/tables/records/VLibraryRecord.java @@ -0,0 +1,47 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.sqlite.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + */ +public class VLibraryRecord extends org.jooq.impl.TableRecordImpl { + + private static final long serialVersionUID = 744617772; + + /** + * An uncommented item + */ + public void setAuthor(java.lang.String value) { + setValue(org.jooq.test.sqlite.generatedclasses.tables.VLibrary.AUTHOR, value); + } + + /** + * An uncommented item + */ + public java.lang.String getAuthor() { + return getValue(org.jooq.test.sqlite.generatedclasses.tables.VLibrary.AUTHOR); + } + + /** + * An uncommented item + */ + public void setTitle(java.lang.String value) { + setValue(org.jooq.test.sqlite.generatedclasses.tables.VLibrary.TITLE, value); + } + + /** + * An uncommented item + */ + public java.lang.String getTitle() { + return getValue(org.jooq.test.sqlite.generatedclasses.tables.VLibrary.TITLE); + } + + /** + * Create a detached VLibraryRecord + */ + public VLibraryRecord() { + super(org.jooq.test.sqlite.generatedclasses.tables.VLibrary.V_LIBRARY); + } +} diff --git a/jOOQ-test/src/org/jooq/test/sqlite/generatedclasses/tables/records/XTestCase_64_69Record.java b/jOOQ-test/src/org/jooq/test/sqlite/generatedclasses/tables/records/XTestCase_64_69Record.java new file mode 100644 index 00000000000..c4c6990e6e5 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/sqlite/generatedclasses/tables/records/XTestCase_64_69Record.java @@ -0,0 +1,91 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.sqlite.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + */ +public class XTestCase_64_69Record extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = 655025389; + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setId(java.lang.Integer value) { + setValue(org.jooq.test.sqlite.generatedclasses.tables.XTestCase_64_69.ID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.lang.Integer getId() { + return getValue(org.jooq.test.sqlite.generatedclasses.tables.XTestCase_64_69.ID); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.util.List fetchXTestCase_71List() { + return create() + .selectFrom(org.jooq.test.sqlite.generatedclasses.tables.XTestCase_71.X_TEST_CASE_71) + .where(org.jooq.test.sqlite.generatedclasses.tables.XTestCase_71.TEST_CASE_64_69_ID.equal(getValueAsShort(org.jooq.test.sqlite.generatedclasses.tables.XTestCase_64_69.ID))) + .fetch(); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_x_test_case_64_69_X_UNUSED_1
+	 * FOREIGN KEY (UNUSED_ID)
+	 * REFERENCES x_unused (ID)
+	 * 
+ */ + public void setUnusedId(java.lang.Integer value) { + setValue(org.jooq.test.sqlite.generatedclasses.tables.XTestCase_64_69.UNUSED_ID, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_x_test_case_64_69_X_UNUSED_1
+	 * FOREIGN KEY (UNUSED_ID)
+	 * REFERENCES x_unused (ID)
+	 * 
+ */ + public java.lang.Integer getUnusedId() { + return getValue(org.jooq.test.sqlite.generatedclasses.tables.XTestCase_64_69.UNUSED_ID); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_x_test_case_64_69_X_UNUSED_1
+	 * FOREIGN KEY (UNUSED_ID)
+	 * REFERENCES x_unused (ID)
+	 * 
+ */ + public org.jooq.test.sqlite.generatedclasses.tables.records.XUnusedRecord fetchXUnused() { + return create() + .selectFrom(org.jooq.test.sqlite.generatedclasses.tables.XUnused.X_UNUSED) + .where(org.jooq.test.sqlite.generatedclasses.tables.XUnused.ID.equal(getValue(org.jooq.test.sqlite.generatedclasses.tables.XTestCase_64_69.UNUSED_ID))) + .fetchOne(); + } + + /** + * Create a detached XTestCase_64_69Record + */ + public XTestCase_64_69Record() { + super(org.jooq.test.sqlite.generatedclasses.tables.XTestCase_64_69.X_TEST_CASE_64_69); + } +} diff --git a/jOOQ-test/src/org/jooq/test/sqlite/generatedclasses/tables/records/XTestCase_71Record.java b/jOOQ-test/src/org/jooq/test/sqlite/generatedclasses/tables/records/XTestCase_71Record.java new file mode 100644 index 00000000000..d998cf36fe0 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/sqlite/generatedclasses/tables/records/XTestCase_71Record.java @@ -0,0 +1,79 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.sqlite.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + */ +public class XTestCase_71Record extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = -842063168; + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setId(java.lang.Integer value) { + setValue(org.jooq.test.sqlite.generatedclasses.tables.XTestCase_71.ID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.lang.Integer getId() { + return getValue(org.jooq.test.sqlite.generatedclasses.tables.XTestCase_71.ID); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_x_test_case_71_X_TEST_CASE_64_69_1
+	 * FOREIGN KEY (TEST_CASE_64_69_ID)
+	 * REFERENCES x_test_case_64_69 (ID)
+	 * 
+ */ + public void setTestCase_64_69Id(java.lang.Short value) { + setValue(org.jooq.test.sqlite.generatedclasses.tables.XTestCase_71.TEST_CASE_64_69_ID, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_x_test_case_71_X_TEST_CASE_64_69_1
+	 * FOREIGN KEY (TEST_CASE_64_69_ID)
+	 * REFERENCES x_test_case_64_69 (ID)
+	 * 
+ */ + public java.lang.Short getTestCase_64_69Id() { + return getValue(org.jooq.test.sqlite.generatedclasses.tables.XTestCase_71.TEST_CASE_64_69_ID); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_x_test_case_71_X_TEST_CASE_64_69_1
+	 * FOREIGN KEY (TEST_CASE_64_69_ID)
+	 * REFERENCES x_test_case_64_69 (ID)
+	 * 
+ */ + public org.jooq.test.sqlite.generatedclasses.tables.records.XTestCase_64_69Record fetchXTestCase_64_69() { + return create() + .selectFrom(org.jooq.test.sqlite.generatedclasses.tables.XTestCase_64_69.X_TEST_CASE_64_69) + .where(org.jooq.test.sqlite.generatedclasses.tables.XTestCase_64_69.ID.equal(getValueAsInteger(org.jooq.test.sqlite.generatedclasses.tables.XTestCase_71.TEST_CASE_64_69_ID))) + .fetchOne(); + } + + /** + * Create a detached XTestCase_71Record + */ + public XTestCase_71Record() { + super(org.jooq.test.sqlite.generatedclasses.tables.XTestCase_71.X_TEST_CASE_71); + } +} diff --git a/jOOQ-test/src/org/jooq/test/sqlite/generatedclasses/tables/records/XTestCase_85Record.java b/jOOQ-test/src/org/jooq/test/sqlite/generatedclasses/tables/records/XTestCase_85Record.java new file mode 100644 index 00000000000..206fd6b5983 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/sqlite/generatedclasses/tables/records/XTestCase_85Record.java @@ -0,0 +1,89 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.sqlite.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + */ +public class XTestCase_85Record extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = 945054287; + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setId(java.lang.Integer value) { + setValue(org.jooq.test.sqlite.generatedclasses.tables.XTestCase_85.ID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.lang.Integer getId() { + return getValue(org.jooq.test.sqlite.generatedclasses.tables.XTestCase_85.ID); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_x_test_case_85_X_UNUSED_1
+	 * FOREIGN KEY (x_unused_id, x_unused_name)
+	 * REFERENCES x_unused (ID)
+	 * 
+ */ + public void setXUnusedId(java.lang.Integer value) { + setValue(org.jooq.test.sqlite.generatedclasses.tables.XTestCase_85.X_UNUSED_ID, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_x_test_case_85_X_UNUSED_1
+	 * FOREIGN KEY (x_unused_id, x_unused_name)
+	 * REFERENCES x_unused (ID)
+	 * 
+ */ + public java.lang.Integer getXUnusedId() { + return getValue(org.jooq.test.sqlite.generatedclasses.tables.XTestCase_85.X_UNUSED_ID); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_x_test_case_85_X_UNUSED_1
+	 * FOREIGN KEY (x_unused_id, x_unused_name)
+	 * REFERENCES x_unused (ID)
+	 * 
+ */ + public void setXUnusedName(java.lang.String value) { + setValue(org.jooq.test.sqlite.generatedclasses.tables.XTestCase_85.X_UNUSED_NAME, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_x_test_case_85_X_UNUSED_1
+	 * FOREIGN KEY (x_unused_id, x_unused_name)
+	 * REFERENCES x_unused (ID)
+	 * 
+ */ + public java.lang.String getXUnusedName() { + return getValue(org.jooq.test.sqlite.generatedclasses.tables.XTestCase_85.X_UNUSED_NAME); + } + + /** + * Create a detached XTestCase_85Record + */ + public XTestCase_85Record() { + super(org.jooq.test.sqlite.generatedclasses.tables.XTestCase_85.X_TEST_CASE_85); + } +} diff --git a/jOOQ-test/src/org/jooq/test/sqlite/generatedclasses/tables/records/XUnusedRecord.java b/jOOQ-test/src/org/jooq/test/sqlite/generatedclasses/tables/records/XUnusedRecord.java new file mode 100644 index 00000000000..e1208efcef7 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/sqlite/generatedclasses/tables/records/XUnusedRecord.java @@ -0,0 +1,283 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.sqlite.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + */ +public class XUnusedRecord extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = -481229357; + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setId(java.lang.Integer value) { + setValue(org.jooq.test.sqlite.generatedclasses.tables.XUnused.ID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.lang.Integer getId() { + return getValue(org.jooq.test.sqlite.generatedclasses.tables.XUnused.ID); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.util.List fetchT_986_1List() { + return create() + .selectFrom(org.jooq.test.sqlite.generatedclasses.tables.T_986_1.T_986_1) + .where(org.jooq.test.sqlite.generatedclasses.tables.T_986_1.REF.equal(getValue(org.jooq.test.sqlite.generatedclasses.tables.XUnused.ID))) + .fetch(); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.util.List fetchT_986_2List() { + return create() + .selectFrom(org.jooq.test.sqlite.generatedclasses.tables.T_986_2.T_986_2) + .where(org.jooq.test.sqlite.generatedclasses.tables.T_986_2.REF.equal(getValue(org.jooq.test.sqlite.generatedclasses.tables.XUnused.ID))) + .fetch(); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.util.List fetchXTestCase_64_69List() { + return create() + .selectFrom(org.jooq.test.sqlite.generatedclasses.tables.XTestCase_64_69.X_TEST_CASE_64_69) + .where(org.jooq.test.sqlite.generatedclasses.tables.XTestCase_64_69.UNUSED_ID.equal(getValue(org.jooq.test.sqlite.generatedclasses.tables.XUnused.ID))) + .fetch(); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setName(java.lang.String value) { + setValue(org.jooq.test.sqlite.generatedclasses.tables.XUnused.NAME, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.lang.String getName() { + return getValue(org.jooq.test.sqlite.generatedclasses.tables.XUnused.NAME); + } + + /** + * An uncommented item + */ + public void setBigInteger(java.math.BigInteger value) { + setValue(org.jooq.test.sqlite.generatedclasses.tables.XUnused.BIG_INTEGER, value); + } + + /** + * An uncommented item + */ + public java.math.BigInteger getBigInteger() { + return getValue(org.jooq.test.sqlite.generatedclasses.tables.XUnused.BIG_INTEGER); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_x_unused_X_UNUSED_1
+	 * FOREIGN KEY (ID_REF, NAME_REF)
+	 * REFERENCES x_unused (ID)
+	 * 
+ */ + public void setIdRef(java.lang.Integer value) { + setValue(org.jooq.test.sqlite.generatedclasses.tables.XUnused.ID_REF, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_x_unused_X_UNUSED_1
+	 * FOREIGN KEY (ID_REF, NAME_REF)
+	 * REFERENCES x_unused (ID)
+	 * 
+ */ + public java.lang.Integer getIdRef() { + return getValue(org.jooq.test.sqlite.generatedclasses.tables.XUnused.ID_REF); + } + + /** + * An uncommented item + */ + public void setClass_(java.lang.Integer value) { + setValue(org.jooq.test.sqlite.generatedclasses.tables.XUnused.CLASS, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getClass_() { + return getValue(org.jooq.test.sqlite.generatedclasses.tables.XUnused.CLASS); + } + + /** + * An uncommented item + */ + public void setFields_(java.lang.Integer value) { + setValue(org.jooq.test.sqlite.generatedclasses.tables.XUnused.FIELDS, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getFields_() { + return getValue(org.jooq.test.sqlite.generatedclasses.tables.XUnused.FIELDS); + } + + /** + * An uncommented item + */ + public void setConfiguration_(java.lang.Integer value) { + setValue(org.jooq.test.sqlite.generatedclasses.tables.XUnused.CONFIGURATION, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getConfiguration_() { + return getValue(org.jooq.test.sqlite.generatedclasses.tables.XUnused.CONFIGURATION); + } + + /** + * An uncommented item + */ + public void setUDT(java.lang.Integer value) { + setValue(org.jooq.test.sqlite.generatedclasses.tables.XUnused.U_D_T, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getUDT() { + return getValue(org.jooq.test.sqlite.generatedclasses.tables.XUnused.U_D_T); + } + + /** + * An uncommented item + */ + public void setMetaData_(java.lang.Integer value) { + setValue(org.jooq.test.sqlite.generatedclasses.tables.XUnused.META_DATA, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getMetaData_() { + return getValue(org.jooq.test.sqlite.generatedclasses.tables.XUnused.META_DATA); + } + + /** + * An uncommented item + */ + public void setType0_(java.lang.Integer value) { + setValue(org.jooq.test.sqlite.generatedclasses.tables.XUnused.TYPE0, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getType0_() { + return getValue(org.jooq.test.sqlite.generatedclasses.tables.XUnused.TYPE0); + } + + /** + * An uncommented item + */ + public void setPrimaryKey(java.lang.Integer value) { + setValue(org.jooq.test.sqlite.generatedclasses.tables.XUnused.PRIMARY_KEY, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getPrimaryKey() { + return getValue(org.jooq.test.sqlite.generatedclasses.tables.XUnused.PRIMARY_KEY); + } + + /** + * An uncommented item + */ + public void setPrimarykey(java.lang.Integer value) { + setValue(org.jooq.test.sqlite.generatedclasses.tables.XUnused.PRIMARYKEY, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getPrimarykey() { + return getValue(org.jooq.test.sqlite.generatedclasses.tables.XUnused.PRIMARYKEY); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_x_unused_X_UNUSED_1
+	 * FOREIGN KEY (ID_REF, NAME_REF)
+	 * REFERENCES x_unused (ID)
+	 * 
+ */ + public void setNameRef(java.lang.String value) { + setValue(org.jooq.test.sqlite.generatedclasses.tables.XUnused.NAME_REF, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_x_unused_X_UNUSED_1
+	 * FOREIGN KEY (ID_REF, NAME_REF)
+	 * REFERENCES x_unused (ID)
+	 * 
+ */ + public java.lang.String getNameRef() { + return getValue(org.jooq.test.sqlite.generatedclasses.tables.XUnused.NAME_REF); + } + + /** + * An uncommented item + */ + public void setField_737(java.math.BigDecimal value) { + setValue(org.jooq.test.sqlite.generatedclasses.tables.XUnused.FIELD_737, value); + } + + /** + * An uncommented item + */ + public java.math.BigDecimal getField_737() { + return getValue(org.jooq.test.sqlite.generatedclasses.tables.XUnused.FIELD_737); + } + + /** + * Create a detached XUnusedRecord + */ + public XUnusedRecord() { + super(org.jooq.test.sqlite.generatedclasses.tables.XUnused.X_UNUSED); + } +} diff --git a/jOOQ-test/src/org/jooq/test/sqlite/reset.sql b/jOOQ-test/src/org/jooq/test/sqlite/reset.sql new file mode 100644 index 00000000000..a02f24a3d0b --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/sqlite/reset.sql @@ -0,0 +1,66 @@ +DELETE FROM t_658_ref/ +DELETE FROM t_658_11/ +DELETE FROM t_658_21/ +DELETE FROM t_658_31/ +DELETE FROM t_658_12/ +DELETE FROM t_658_22/ +DELETE FROM t_658_32/ +DELETE FROM t_book_to_book_store/ +DELETE FROM t_book_store/ +DELETE FROM t_book/ +DELETE FROM t_author/ +DELETE FROM t_language/ +DELETE FROM t_booleans/ +DELETE FROM t_dates/ + +INSERT INTO t_language (id, cd, description, description_english) VALUES (1, 'en', 'English', 'English')/ +INSERT INTO t_language (id, cd, description, description_english) VALUES (2, 'de', 'Deutsch', 'German')/ +INSERT INTO t_language (id, cd, description, description_english) VALUES (3, 'fr', 'Français', 'French')/ +INSERT INTO t_language (id, cd, description, description_english) VALUES (4, 'pt', null, null)/ +/ + +INSERT INTO t_658_11 VALUES ('A')/ +INSERT INTO t_658_11 VALUES ('B')/ +INSERT INTO t_658_11 VALUES ('C')/ +INSERT INTO t_658_21 VALUES (1)/ +INSERT INTO t_658_21 VALUES (2)/ +INSERT INTO t_658_21 VALUES (3)/ +INSERT INTO t_658_31 VALUES (1)/ +INSERT INTO t_658_31 VALUES (2)/ +INSERT INTO t_658_31 VALUES (3)/ +INSERT INTO t_658_12 VALUES ('A', 'A')/ +INSERT INTO t_658_12 VALUES ('B', 'B')/ +INSERT INTO t_658_12 VALUES ('C', 'C')/ +INSERT INTO t_658_22 VALUES (1, 1)/ +INSERT INTO t_658_22 VALUES (2, 2)/ +INSERT INTO t_658_22 VALUES (3, 3)/ +INSERT INTO t_658_32 VALUES (1, 1)/ +INSERT INTO t_658_32 VALUES (2, 2)/ +INSERT INTO t_658_32 VALUES (3, 3)/ +INSERT INTO t_658_ref VALUES ('A', 1, 1, 'B', 2, 2)/ + +INSERT INTO t_author VALUES (1, 'George', 'Orwell', '1903-06-25', 1903, null); +/ +INSERT INTO t_author VALUES (2, 'Paulo', 'Coelho', '1947-08-24', 1947, null); +/ + +INSERT INTO t_book VALUES (1, 1, null, null, '1984', 1948, 1, 'To know and not to know, to be conscious of complete truthfulness while telling carefully constructed lies, to hold simultaneously two opinions which cancelled out, knowing them to be contradictory and believing in both of them, to use logic against logic, to repudiate morality while laying claim to it, to believe that democracy was impossible and that the Party was the guardian of democracy, to forget, whatever it was necessary to forget, then to draw it back into memory again at the moment when it was needed, and then promptly to forget it again, and above all, to apply the same process to the process itself -- that was the ultimate subtlety; consciously to induce unconsciousness, and then, once again, to become unconscious of the act of hypnosis you had just performed. Even to understand the word ''doublethink'' involved the use of doublethink..', null); +/ +INSERT INTO t_book VALUES (2, 1, null, null, 'Animal Farm', 1945, 1, null, null); +/ +INSERT INTO t_book VALUES (3, 2, null, null, 'O Alquimista', 1988, 4, null, null); +/ +INSERT INTO t_book VALUES (4, 2, null, null, 'Brida', 1990, 2, null, null); +/ + +INSERT INTO t_book_store (name) VALUES ('Orell Füssli');/ +INSERT INTO t_book_store (name) VALUES ('Ex Libris');/ +INSERT INTO t_book_store (name) VALUES ('Buchhandlung im Volkshaus');/ + +INSERT INTO t_book_to_book_store VALUES ('Orell Füssli', 1, 10);/ +INSERT INTO t_book_to_book_store VALUES ('Orell Füssli', 2, 10);/ +INSERT INTO t_book_to_book_store VALUES ('Orell Füssli', 3, 10);/ +INSERT INTO t_book_to_book_store VALUES ('Ex Libris', 1, 1);/ +INSERT INTO t_book_to_book_store VALUES ('Ex Libris', 3, 2);/ +INSERT INTO t_book_to_book_store VALUES ('Buchhandlung im Volkshaus', 3, 1);/ + diff --git a/jOOQ-test/src/org/jooq/test/sqlserver/create.sql b/jOOQ-test/src/org/jooq/test/sqlserver/create.sql new file mode 100644 index 00000000000..ea0a84dc52b --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/sqlserver/create.sql @@ -0,0 +1,628 @@ +DROP VIEW v_library/ +DROP VIEW v_author/ +DROP VIEW v_book/ + +DROP PROCEDURE p_arrays1/ +DROP PROCEDURE p_arrays2/ +DROP PROCEDURE p_arrays3/ +DROP PROCEDURE p_many_parameters/ +DROP FUNCTION f_arrays1/ +DROP FUNCTION f_arrays2/ +DROP FUNCTION f_arrays3/ +DROP PROCEDURE p_enhance_address1/ +DROP PROCEDURE p_enhance_address2/ +DROP PROCEDURE p_enhance_address3/ +DROP PROCEDURE p_unused/ +DROP PROCEDURE p_create_author/ +DROP PROCEDURE p_create_author_by_name/ +DROP PROCEDURE p_author_exists/ +DROP PROCEDURE p391/ +DROP PROCEDURE p_default/ +DROP FUNCTION f_many_parameters/ +DROP FUNCTION f_author_exists/ +DROP FUNCTION f_one/ +DROP FUNCTION f_number/ +DROP FUNCTION f317/ +DROP FUNCTION f378/ + +DROP TRIGGER t_triggers_trigger/ + +DROP TABLE t_dates/ +DROP TABLE t_triggers/ +DROP TABLE t_arrays/ +DROP TABLE t_book_to_book_store/ +DROP TABLE t_book_store/ +DROP TABLE t_book/ +DROP TABLE t_book_details/ +DROP TABLE t_author/ +DROP TABLE t_language/ +DROP TABLE x_test_case_71/ +DROP TABLE x_test_case_64_69/ +DROP TABLE x_test_case_85/ +DROP TABLE x_unused/ +DROP TABLE x_many_fields/ +DROP TABLE t_639_numbers_table/ +DROP TABLE t_658_ref/ +DROP TABLE t_658_11/ +DROP TABLE t_658_21/ +DROP TABLE t_658_31/ +DROP TABLE t_658_12/ +DROP TABLE t_658_22/ +DROP TABLE t_658_32/ +DROP TABLE t_725_lob_test/ +DROP TABLE t_785/ +DROP TABLE t_booleans/ +DROP TABLE t_identity/ +DROP TABLE t_identity_pk/ + +CREATE TABLE t_identity_pk ( + id INTEGER IDENTITY(1,1) NOT NULL, + val int, + + CONSTRAINT pk_t_identity_pk PRIMARY KEY (id) +) +/ + +CREATE TABLE t_identity ( + id INTEGER IDENTITY(1,1) NOT NULL, + val int +) +/ + + +CREATE TABLE t_dates ( + id int, + d date, + t time, + ts datetime, + d_int int, + ts_bigint bigint, + + CONSTRAINT pk_t_dates PRIMARY KEY (id) +) +/ + +CREATE TABLE t_booleans ( + id int, + one_zero int, + true_false_lc varchar(5), + true_false_uc varchar(5), + yes_no_lc varchar(3), + yes_no_uc varchar(3), + y_n_lc char(1), + y_n_uc char(1), + vc_boolean varchar(1), + c_boolean char(1), + n_boolean int, + + CONSTRAINT pk_t_booleans PRIMARY KEY (id) +) +/ + +CREATE TABLE t_triggers ( + id_generated int IDENTITY(1,1) not null, + id int, + counter int, + + CONSTRAINT pk_t_triggers PRIMARY KEY (id_generated) +) +/ + +CREATE TRIGGER t_triggers_trigger +ON t_triggers +AFTER INSERT AS + update t_triggers + set id = id_generated, + counter = id_generated * 2; +/ + +CREATE TABLE t_language ( + cd CHAR(2) NOT NULL, + description VARCHAR(50), + description_english VARCHAR(50), + id INTEGER NOT NULL, + + CONSTRAINT pk_t_language PRIMARY KEY (ID) +) +/ + +CREATE TABLE t_658_11 ( + id CHAR(3) NOT NULL, + + CONSTRAINT pk_t_658_11 PRIMARY KEY (id) +) +/ + +CREATE TABLE t_658_21 ( + id INT NOT NULL, + + CONSTRAINT pk_t_658_21 PRIMARY KEY (id) +) +/ + +CREATE TABLE t_658_31 ( + id BIGINT NOT NULL, + + CONSTRAINT pk_t_658_31 PRIMARY KEY (id) +) +/ + +CREATE TABLE t_658_12 ( + id CHAR(3) NOT NULL, + cd CHAR(3) NOT NULL, + + CONSTRAINT pk_t_658_12 PRIMARY KEY (id) +) +/ + +CREATE TABLE t_658_22 ( + id INT NOT NULL, + cd INT NOT NULL, + + CONSTRAINT pk_t_658_22 PRIMARY KEY (id) +) +/ + +CREATE TABLE t_658_32 ( + id BIGINT NOT NULL, + cd BIGINT NOT NULL, + + CONSTRAINT pk_t_658_32 PRIMARY KEY (id) +) +/ + +CREATE TABLE t_658_ref ( + ref_11 char(3), + ref_21 int, + ref_31 bigint, + ref_12 char(3), + ref_22 int, + ref_32 bigint, + + CONSTRAINT fk_t_658_11 FOREIGN KEY (ref_11) REFERENCES t_658_11(id), + CONSTRAINT fk_t_658_21 FOREIGN KEY (ref_21) REFERENCES t_658_21(id), + CONSTRAINT fk_t_658_31 FOREIGN KEY (ref_31) REFERENCES t_658_31(id), + CONSTRAINT fk_t_658_12 FOREIGN KEY (ref_12) REFERENCES t_658_12(id), + CONSTRAINT fk_t_658_22 FOREIGN KEY (ref_22) REFERENCES t_658_22(id), + CONSTRAINT fk_t_658_32 FOREIGN KEY (ref_32) REFERENCES t_658_32(id) +) +/ + +CREATE TABLE t_725_lob_test ( + ID int NOT NULL, + LOB varbinary(max) NULL, + + CONSTRAINT pk_t_725_lob_test PRIMARY KEY (id) +) +/ + +CREATE TABLE t_785 ( + ID int, + NAME varchar(50), + VALUE varchar(50) +) +/ + +CREATE TABLE t_author ( + ID int NOT NULL, + FIRST_NAME VARCHAR(50), + LAST_NAME VARCHAR(50) NOT NULL, + DATE_OF_BIRTH DATE, + YEAR_OF_BIRTH int, + ADDRESS VARCHAR(50), + + CONSTRAINT pk_t_author PRIMARY KEY (ID) +) +/ + +CREATE TABLE t_book_details ( + ID int, + + CONSTRAINT pk_t_book_details PRIMARY KEY (ID) +) +/ + +CREATE TABLE t_book ( + ID int NOT NULL, + AUTHOR_ID int NOT NULL, + CO_AUTHOR_ID int, + DETAILS_ID int, + TITLE VARCHAR(400) NOT NULL, + PUBLISHED_IN int NOT NULL, + LANGUAGE_ID int NOT NULL, + CONTENT_TEXT text, + CONTENT_PDF varbinary(max), + + CONSTRAINT pk_t_book PRIMARY KEY (ID), + CONSTRAINT fk_t_book_author_id FOREIGN KEY (AUTHOR_ID) REFERENCES T_AUTHOR(ID), + CONSTRAINT fk_t_book_co_author_id FOREIGN KEY (CO_AUTHOR_ID) REFERENCES T_AUTHOR(ID), + CONSTRAINT fk_t_book_details_id FOREIGN KEY (DETAILS_ID) REFERENCES T_BOOK_DETAILS(ID), + CONSTRAINT fk_t_book_language_id FOREIGN KEY (LANGUAGE_ID) REFERENCES T_LANGUAGE(ID) +) +/ + + +CREATE TABLE t_book_store ( + NAME VARCHAR(400) NOT NULL, + + CONSTRAINT uk_t_book_store_name UNIQUE(name) +) +/ + + +CREATE TABLE t_book_to_book_store ( + BOOK_STORE_NAME VARCHAR(400) NOT NULL, + BOOK_ID INTEGER NOT NULL, + STOCK INTEGER, + + CONSTRAINT pk_b2bs PRIMARY KEY(book_store_name, book_id), + CONSTRAINT fk_b2bs_bs_name FOREIGN KEY (book_store_name) + REFERENCES t_book_store (name) + ON DELETE CASCADE, + CONSTRAINT fk_b2bs_b_id FOREIGN KEY (book_id) + REFERENCES t_book (id) + ON DELETE CASCADE +) +/ + + +CREATE TABLE x_unused ( + id int NOT NULL, + name VARCHAR(10) NOT NULL, + BIG_INTEGER DECIMAL(25), + id_ref int, + CLASS int, + FIELDS int, + CONFIGURATION int, + U_D_T int, + META_DATA int, + TYPE0 int, + PRIMARY_KEY int, + PRIMARYKEY int, + name_ref VARCHAR(10), + "FIELD 737" DECIMAL(25, 2), + + CONSTRAINT pk_x_unused PRIMARY KEY(ID, NAME), + CONSTRAINT uk_x_unused_id UNIQUE(ID), + CONSTRAINT fk_x_unused_self FOREIGN KEY(ID_REF, NAME_REF) REFERENCES X_UNUSED(ID, NAME) +) +/ + +CREATE TABLE t_639_numbers_table ( + ID INT NOT NULL, + BYTE TINYINT, + SHORT SMALLINT, + INTEGER INT, + LONG BIGINT, + BYTE_DECIMAL DECIMAL(2, 0), + SHORT_DECIMAL DECIMAL(4, 0), + INTEGER_DECIMAL DECIMAL(9, 0), + LONG_DECIMAL DECIMAL(18, 0), + BIG_INTEGER DECIMAL(22, 0), + BIG_DECIMAL DECIMAL(22, 5), + FLOAT REAL, + "DOUBLE" FLOAT, + + CONSTRAINT pk_t_639_numbers_table PRIMARY KEY(ID) +) +/ + + +CREATE TABLE x_test_case_64_69 ( + id int NOT NULL, + unused_id int, + + CONSTRAINT pk_x_test_case_64_69 PRIMARY KEY(ID), + CONSTRAINT fk_x_test_case_64_69a FOREIGN KEY(UNUSED_ID) REFERENCES X_UNUSED(ID), + CONSTRAINT fk_x_test_case_64_69b FOREIGN KEY(UNUSED_ID) REFERENCES X_UNUSED(ID) +) +/ + +CREATE TABLE x_test_case_71 ( + id int NOT NULL, + test_case_64_69_id int, + + CONSTRAINT pk_x_test_case_71 PRIMARY KEY(ID), + CONSTRAINT fk_x_test_case_71 FOREIGN KEY(TEST_CASE_64_69_ID) REFERENCES X_TEST_CASE_64_69(ID) +) +/ + +CREATE TABLE x_test_case_85 ( + id int NOT NULL, + x_unused_id int, + x_unused_name VARCHAR(10), + + CONSTRAINT pk_x_test_case_85 PRIMARY KEY(ID), + CONSTRAINT fk_x_test_case_85 FOREIGN KEY(x_unused_id, x_unused_name) REFERENCES X_UNUSED(id, name) +) +/ + + +CREATE VIEW v_library (author, title) AS +SELECT a.first_name + ' ' + a.last_name, b.title +FROM t_author a JOIN t_book b ON b.author_id = a.id +/ + +CREATE VIEW v_author AS +SELECT * FROM t_author +/ + +CREATE VIEW v_book AS +SELECT * FROM t_book +/ + + +CREATE PROCEDURE p_unused (@in1 VARCHAR, @out1 int OUT, @out2 int OUT) +AS +; +/ + +CREATE PROCEDURE p_create_author_by_name (@first_name VARCHAR(50), @last_name VARCHAR(50)) +AS +BEGIN + INSERT INTO T_AUTHOR (ID, FIRST_NAME, LAST_NAME) + VALUES ((SELECT MAX(ID)+1 FROM T_AUTHOR), @first_name, @last_name); +END +/ + +CREATE PROCEDURE p_create_author +AS +BEGIN + EXEC p_create_author_by_name 'William', 'Shakespeare'; +END +/ + +CREATE PROCEDURE p_many_parameters ( + @f000 int, @f001 int, @f002 int, @f003 int, @f004 int, + @f005 int, @f006 int, @f007 int, @f008 int, @f009 int, + @f010 int, @f011 int, @f012 int, @f013 int, @f014 int, + @f015 int, @f016 int, @f017 int, @f018 int, @f019 int, + @f020 int, @f021 int, @f022 int, @f023 int, @f024 int, + @f025 int, @f026 int, @f027 int, @f028 int, @f029 int, + @f030 int, @f031 int, @f032 int, @f033 int, @f034 int, + @f035 int, @f036 int, @f037 int, @f038 int, @f039 int, + @f040 int, @f041 int, @f042 int, @f043 int, @f044 int, + @f045 int, @f046 int, @f047 int, @f048 int, @f049 int, + @f050 int, @f051 int, @f052 int, @f053 int, @f054 int, + @f055 int, @f056 int, @f057 int, @f058 int, @f059 int, + @f060 int, @f061 int, @f062 int, @f063 int, @f064 int, + @f065 int, @f066 int, @f067 int, @f068 int, @f069 int, + @f070 int, @f071 int, @f072 int, @f073 int, @f074 int, + @f075 int, @f076 int, @f077 int, @f078 int, @f079 int, + @f080 int, @f081 int, @f082 int, @f083 int, @f084 int, + @f085 int, @f086 int, @f087 int, @f088 int, @f089 int, + @f090 int, @f091 int, @f092 int, @f093 int, @f094 int, + @f095 int, @f096 int, @f097 int, @f098 int, @f099 int, + + @f100 int, @f101 int, @f102 int, @f103 int, @f104 int, + @f105 int, @f106 int, @f107 int, @f108 int, @f109 int, + @f110 int, @f111 int, @f112 int, @f113 int, @f114 int, + @f115 int, @f116 int, @f117 int, @f118 int, @f119 int, + @f120 int, @f121 int, @f122 int, @f123 int, @f124 int, + @f125 int, @f126 int, @f127 int, @f128 int, @f129 int, + @f130 int, @f131 int, @f132 int, @f133 int, @f134 int, + @f135 int, @f136 int, @f137 int, @f138 int, @f139 int, + @f140 int, @f141 int, @f142 int, @f143 int, @f144 int, + @f145 int, @f146 int, @f147 int, @f148 int, @f149 int, + @f150 int, @f151 int, @f152 int, @f153 int, @f154 int, + @f155 int, @f156 int, @f157 int, @f158 int, @f159 int, + @f160 int, @f161 int, @f162 int, @f163 int, @f164 int, + @f165 int, @f166 int, @f167 int, @f168 int, @f169 int, + @f170 int, @f171 int, @f172 int, @f173 int, @f174 int, + @f175 int, @f176 int, @f177 int, @f178 int, @f179 int, + @f180 int, @f181 int, @f182 int, @f183 int, @f184 int, + @f185 int, @f186 int, @f187 int, @f188 int, @f189 int, + @f190 int, @f191 int, @f192 int, @f193 int, @f194 int, + @f195 int, @f196 int, @f197 int, @f198 int, @f199 int, + + @f200 int, @f201 int, @f202 int, @f203 int, @f204 int, + @f205 int, @f206 int, @f207 int, @f208 int, @f209 int, + @f210 int, @f211 int, @f212 int, @f213 int, @f214 int, + @f215 int, @f216 int, @f217 int, @f218 int, @f219 int, + @f220 int, @f221 int, @f222 int, @f223 int, @f224 int, + @f225 int, @f226 int, @f227 int, @f228 int, @f229 int, + @f230 int, @f231 int, @f232 int, @f233 int, @f234 int, + @f235 int, @f236 int, @f237 int, @f238 int, @f239 int, + @f240 int, @f241 int, @f242 int, @f243 int, @f244 int, + @f245 int, @f246 int, @f247 int, @f248 int, @f249 int, + @f250 int, @f251 int, @f252 int, @f253 int, @f254 int, + @f255 int, @f256 int, @f257 int, @f258 int, @f259 int, + @f260 int, @f261 int, @f262 int, @f263 int, @f264 int, + @f265 int, @f266 int, @f267 int, @f268 int, @f269 int, + @f270 int, @f271 int, @f272 int, @f273 int, @f274 int, + @f275 int, @f276 int, @f277 int, @f278 int, @f279 int, + @f280 int, @f281 int, @f282 int, @f283 int, @f284 int, + @f285 int, @f286 int, @f287 int, @f288 int, @f289 int, + @f290 int, @f291 int, @f292 int, @f293 int, @f294 int, + @f295 int, @f296 int, @f297 int, @f298 int, @f299 int, + + @f300 int, @f301 int, @f302 int, @f303 int, @f304 int, + @f305 int, @f306 int, @f307 int, @f308 int, @f309 int, + @f310 int, @f311 int, @f312 int, @f313 int, @f314 int, + @f315 int, @f316 int, @f317 int, @f318 int, @f319 int, + @f320 int, @f321 int, @f322 int, @f323 int, @f324 int, + @f325 int, @f326 int, @f327 int, @f328 int, @f329 int, + @f330 int, @f331 int, @f332 int, @f333 int, @f334 int, + @f335 int, @f336 int, @f337 int, @f338 int, @f339 int, + @f340 int, @f341 int, @f342 int, @f343 int, @f344 int, + @f345 int, @f346 int, @f347 int, @f348 int, @f349 int, + @f350 int, @f351 int, @f352 int, @f353 int, @f354 int, + @f355 int, @f356 int, @f357 int, @f358 int, @f359 int, + @f360 int, @f361 int, @f362 int, @f363 int, @f364 int, + @f365 int, @f366 int, @f367 int, @f368 int, @f369 int, + @f370 int, @f371 int, @f372 int, @f373 int, @f374 int, + @f375 int, @f376 int, @f377 int, @f378 int, @f379 int, + @f380 int, @f381 int, @f382 int, @f383 int, @f384 int, + @f385 int, @f386 int, @f387 int, @f388 int, @f389 int, + @f390 int, @f391 int, @f392 int, @f393 int, @f394 int, + @f395 int, @f396 int, @f397 int, @f398 int, @f399 int +) +AS +; +/ + +CREATE FUNCTION f_many_parameters ( + @f000 int, @f001 int, @f002 int, @f003 int, @f004 int, + @f005 int, @f006 int, @f007 int, @f008 int, @f009 int, + @f010 int, @f011 int, @f012 int, @f013 int, @f014 int, + @f015 int, @f016 int, @f017 int, @f018 int, @f019 int, + @f020 int, @f021 int, @f022 int, @f023 int, @f024 int, + @f025 int, @f026 int, @f027 int, @f028 int, @f029 int, + @f030 int, @f031 int, @f032 int, @f033 int, @f034 int, + @f035 int, @f036 int, @f037 int, @f038 int, @f039 int, + @f040 int, @f041 int, @f042 int, @f043 int, @f044 int, + @f045 int, @f046 int, @f047 int, @f048 int, @f049 int, + @f050 int, @f051 int, @f052 int, @f053 int, @f054 int, + @f055 int, @f056 int, @f057 int, @f058 int, @f059 int, + @f060 int, @f061 int, @f062 int, @f063 int, @f064 int, + @f065 int, @f066 int, @f067 int, @f068 int, @f069 int, + @f070 int, @f071 int, @f072 int, @f073 int, @f074 int, + @f075 int, @f076 int, @f077 int, @f078 int, @f079 int, + @f080 int, @f081 int, @f082 int, @f083 int, @f084 int, + @f085 int, @f086 int, @f087 int, @f088 int, @f089 int, + @f090 int, @f091 int, @f092 int, @f093 int, @f094 int, + @f095 int, @f096 int, @f097 int, @f098 int, @f099 int, + + @f100 int, @f101 int, @f102 int, @f103 int, @f104 int, + @f105 int, @f106 int, @f107 int, @f108 int, @f109 int, + @f110 int, @f111 int, @f112 int, @f113 int, @f114 int, + @f115 int, @f116 int, @f117 int, @f118 int, @f119 int, + @f120 int, @f121 int, @f122 int, @f123 int, @f124 int, + @f125 int, @f126 int, @f127 int, @f128 int, @f129 int, + @f130 int, @f131 int, @f132 int, @f133 int, @f134 int, + @f135 int, @f136 int, @f137 int, @f138 int, @f139 int, + @f140 int, @f141 int, @f142 int, @f143 int, @f144 int, + @f145 int, @f146 int, @f147 int, @f148 int, @f149 int, + @f150 int, @f151 int, @f152 int, @f153 int, @f154 int, + @f155 int, @f156 int, @f157 int, @f158 int, @f159 int, + @f160 int, @f161 int, @f162 int, @f163 int, @f164 int, + @f165 int, @f166 int, @f167 int, @f168 int, @f169 int, + @f170 int, @f171 int, @f172 int, @f173 int, @f174 int, + @f175 int, @f176 int, @f177 int, @f178 int, @f179 int, + @f180 int, @f181 int, @f182 int, @f183 int, @f184 int, + @f185 int, @f186 int, @f187 int, @f188 int, @f189 int, + @f190 int, @f191 int, @f192 int, @f193 int, @f194 int, + @f195 int, @f196 int, @f197 int, @f198 int, @f199 int, + + @f200 int, @f201 int, @f202 int, @f203 int, @f204 int, + @f205 int, @f206 int, @f207 int, @f208 int, @f209 int, + @f210 int, @f211 int, @f212 int, @f213 int, @f214 int, + @f215 int, @f216 int, @f217 int, @f218 int, @f219 int, + @f220 int, @f221 int, @f222 int, @f223 int, @f224 int, + @f225 int, @f226 int, @f227 int, @f228 int, @f229 int, + @f230 int, @f231 int, @f232 int, @f233 int, @f234 int, + @f235 int, @f236 int, @f237 int, @f238 int, @f239 int, + @f240 int, @f241 int, @f242 int, @f243 int, @f244 int, + @f245 int, @f246 int, @f247 int, @f248 int, @f249 int, + @f250 int, @f251 int, @f252 int, @f253 int, @f254 int, + @f255 int, @f256 int, @f257 int, @f258 int, @f259 int, + @f260 int, @f261 int, @f262 int, @f263 int, @f264 int, + @f265 int, @f266 int, @f267 int, @f268 int, @f269 int, + @f270 int, @f271 int, @f272 int, @f273 int, @f274 int, + @f275 int, @f276 int, @f277 int, @f278 int, @f279 int, + @f280 int, @f281 int, @f282 int, @f283 int, @f284 int, + @f285 int, @f286 int, @f287 int, @f288 int, @f289 int, + @f290 int, @f291 int, @f292 int, @f293 int, @f294 int, + @f295 int, @f296 int, @f297 int, @f298 int, @f299 int, + + @f300 int, @f301 int, @f302 int, @f303 int, @f304 int, + @f305 int, @f306 int, @f307 int, @f308 int, @f309 int, + @f310 int, @f311 int, @f312 int, @f313 int, @f314 int, + @f315 int, @f316 int, @f317 int, @f318 int, @f319 int, + @f320 int, @f321 int, @f322 int, @f323 int, @f324 int, + @f325 int, @f326 int, @f327 int, @f328 int, @f329 int, + @f330 int, @f331 int, @f332 int, @f333 int, @f334 int, + @f335 int, @f336 int, @f337 int, @f338 int, @f339 int, + @f340 int, @f341 int, @f342 int, @f343 int, @f344 int, + @f345 int, @f346 int, @f347 int, @f348 int, @f349 int, + @f350 int, @f351 int, @f352 int, @f353 int, @f354 int, + @f355 int, @f356 int, @f357 int, @f358 int, @f359 int, + @f360 int, @f361 int, @f362 int, @f363 int, @f364 int, + @f365 int, @f366 int, @f367 int, @f368 int, @f369 int, + @f370 int, @f371 int, @f372 int, @f373 int, @f374 int, + @f375 int, @f376 int, @f377 int, @f378 int, @f379 int, + @f380 int, @f381 int, @f382 int, @f383 int, @f384 int, + @f385 int, @f386 int, @f387 int, @f388 int, @f389 int, + @f390 int, @f391 int, @f392 int, @f393 int, @f394 int, + @f395 int, @f396 int, @f397 int, @f398 int, @f399 int +) +RETURNS int +AS +BEGIN + RETURN 0; +END; +/ + +CREATE PROCEDURE p_author_exists (@author_name VARCHAR(50), @result int OUT) +AS +BEGIN + SELECT @result = CASE WHEN COUNT(*) > 0 THEN 1 ELSE 0 END + FROM t_author + WHERE first_name LIKE @author_name + OR last_name LIKE @author_name +END; +/ + +CREATE PROCEDURE p391 ( + @i1 int, @io1 int out, @o1 int out, + @o2 int out, @io2 int out, @i2 int) AS +BEGIN + SET @o1 = @io1; + SET @io1 = @i1; + + SET @o2 = @io2; + SET @io2 = @i2; +END; +/ + +CREATE PROCEDURE p_default ( + @p_in_number INTEGER = 0, + @p_out_number INTEGER OUT, + @p_in_varchar VARCHAR(10) = '0', + @p_out_varchar VARCHAR(10) OUT, + @p_in_date DATE = '1981-07-10', + @p_out_date DATE OUT +) AS +BEGIN + SET @p_out_number = @p_in_number; + SET @p_out_varchar = @p_in_varchar; + SET @p_out_date = @p_in_date; +END; +/ + +CREATE FUNCTION f_author_exists (@author_name VARCHAR(50)) +RETURNS int +AS +BEGIN + DECLARE @result int; + + SELECT @result = CASE WHEN COUNT(*) > 0 THEN 1 ELSE 0 END + FROM t_author + WHERE first_name LIKE @author_name + OR last_name LIKE @author_name; + + RETURN @result; +END; +/ + +CREATE FUNCTION f_one() +RETURNS int +AS +BEGIN + RETURN 1; +END; +/ + +CREATE FUNCTION f_number(@n int) +RETURNS int +AS +BEGIN + RETURN @n; +END; +/ + +CREATE FUNCTION f317 (@p1 int, @p2 int, @p3 int, @p4 int) RETURNS int AS +BEGIN + return 1000 * @p1 + 100 * @p2 + @p4; +END; +/ diff --git a/jOOQ-test/src/org/jooq/test/sqlserver/generatedclasses/Dbo.java b/jOOQ-test/src/org/jooq/test/sqlserver/generatedclasses/Dbo.java new file mode 100644 index 00000000000..5560c678a7d --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/sqlserver/generatedclasses/Dbo.java @@ -0,0 +1,49 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.sqlserver.generatedclasses; + +/** + * This class is generated by jOOQ. + */ +public class Dbo extends org.jooq.impl.SchemaImpl { + + private static final long serialVersionUID = -1650820943; + + /** + * The singleton instance of dbo + */ + public static final Dbo DBO = new Dbo(); + + /** + * No further instances allowed + */ + private Dbo() { + super("dbo"); + } + + @Override + public final java.util.List> getTables() { + return java.util.Arrays.>asList( + org.jooq.test.sqlserver.generatedclasses.tables.T_639NumbersTable.T_639_NUMBERS_TABLE, + org.jooq.test.sqlserver.generatedclasses.tables.T_658Ref.T_658_REF, + org.jooq.test.sqlserver.generatedclasses.tables.T_725LobTest.T_725_LOB_TEST, + org.jooq.test.sqlserver.generatedclasses.tables.T_785.T_785, + org.jooq.test.sqlserver.generatedclasses.tables.TAuthor.T_AUTHOR, + org.jooq.test.sqlserver.generatedclasses.tables.TBook.T_BOOK, + org.jooq.test.sqlserver.generatedclasses.tables.TBookStore.T_BOOK_STORE, + org.jooq.test.sqlserver.generatedclasses.tables.TBookToBookStore.T_BOOK_TO_BOOK_STORE, + org.jooq.test.sqlserver.generatedclasses.tables.TBooleans.T_BOOLEANS, + org.jooq.test.sqlserver.generatedclasses.tables.TDates.T_DATES, + org.jooq.test.sqlserver.generatedclasses.tables.TIdentity.T_IDENTITY, + org.jooq.test.sqlserver.generatedclasses.tables.TIdentityPk.T_IDENTITY_PK, + org.jooq.test.sqlserver.generatedclasses.tables.TTriggers.T_TRIGGERS, + org.jooq.test.sqlserver.generatedclasses.tables.VAuthor.V_AUTHOR, + org.jooq.test.sqlserver.generatedclasses.tables.VBook.V_BOOK, + org.jooq.test.sqlserver.generatedclasses.tables.VLibrary.V_LIBRARY, + org.jooq.test.sqlserver.generatedclasses.tables.XTestCase_64_69.X_TEST_CASE_64_69, + org.jooq.test.sqlserver.generatedclasses.tables.XTestCase_71.X_TEST_CASE_71, + org.jooq.test.sqlserver.generatedclasses.tables.XTestCase_85.X_TEST_CASE_85, + org.jooq.test.sqlserver.generatedclasses.tables.XUnused.X_UNUSED); + } +} diff --git a/jOOQ-test/src/org/jooq/test/sqlserver/generatedclasses/DboFactory.java b/jOOQ-test/src/org/jooq/test/sqlserver/generatedclasses/DboFactory.java new file mode 100644 index 00000000000..efc18a00bba --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/sqlserver/generatedclasses/DboFactory.java @@ -0,0 +1,41 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.sqlserver.generatedclasses; + +/** + * This class is generated by jOOQ. + */ +public class DboFactory extends org.jooq.util.sqlserver.SQLServerFactory { + + private static final long serialVersionUID = 1650728093; + + /** + * Create a factory with a connection + * + * @param connection The connection to use with objects created from this factory + */ + public DboFactory(java.sql.Connection connection) { + super(connection); + } + + /** + * Create a factory with a connection and a schema mapping + * + * @deprecated - 2.0.5 - Use {@link #DboFactory(java.sql.Connection, org.jooq.conf.Settings)} instead + */ + @Deprecated + public DboFactory(java.sql.Connection connection, org.jooq.SchemaMapping mapping) { + super(connection, mapping); + } + + /** + * Create a factory with a connection and some settings + * + * @param connection The connection to use with objects created from this factory + * @param settings The settings to apply to objects created from this factory + */ + public DboFactory(java.sql.Connection connection, org.jooq.conf.Settings settings) { + super(connection, settings); + } +} diff --git a/jOOQ-test/src/org/jooq/test/sqlserver/generatedclasses/Keys.java b/jOOQ-test/src/org/jooq/test/sqlserver/generatedclasses/Keys.java new file mode 100644 index 00000000000..9de9f90800e --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/sqlserver/generatedclasses/Keys.java @@ -0,0 +1,50 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.sqlserver.generatedclasses; + +/** + * This class is generated by jOOQ. + * + * A class modelling foreign key relationships between tables of the dbo schema + */ +@SuppressWarnings({"unchecked"}) +public class Keys extends org.jooq.impl.AbstractKeys { + + // IDENTITY definitions + public static final org.jooq.Identity IDENTITY_T_IDENTITY = createIdentity(org.jooq.test.sqlserver.generatedclasses.tables.TIdentity.T_IDENTITY, org.jooq.test.sqlserver.generatedclasses.tables.TIdentity.T_IDENTITY.ID); + public static final org.jooq.Identity IDENTITY_T_IDENTITY_PK = createIdentity(org.jooq.test.sqlserver.generatedclasses.tables.TIdentityPk.T_IDENTITY_PK, org.jooq.test.sqlserver.generatedclasses.tables.TIdentityPk.T_IDENTITY_PK.ID); + public static final org.jooq.Identity IDENTITY_T_TRIGGERS = createIdentity(org.jooq.test.sqlserver.generatedclasses.tables.TTriggers.T_TRIGGERS, org.jooq.test.sqlserver.generatedclasses.tables.TTriggers.T_TRIGGERS.ID_GENERATED); + + // UNIQUE and PRIMARY KEY definitions + public static final org.jooq.UniqueKey PK_T_639_NUMBERS_TABLE = createUniqueKey(org.jooq.test.sqlserver.generatedclasses.tables.T_639NumbersTable.T_639_NUMBERS_TABLE, org.jooq.test.sqlserver.generatedclasses.tables.T_639NumbersTable.T_639_NUMBERS_TABLE.ID); + public static final org.jooq.UniqueKey PK_T_725_LOB_TEST = createUniqueKey(org.jooq.test.sqlserver.generatedclasses.tables.T_725LobTest.T_725_LOB_TEST, org.jooq.test.sqlserver.generatedclasses.tables.T_725LobTest.T_725_LOB_TEST.ID); + public static final org.jooq.UniqueKey PK_T_AUTHOR = createUniqueKey(org.jooq.test.sqlserver.generatedclasses.tables.TAuthor.T_AUTHOR, org.jooq.test.sqlserver.generatedclasses.tables.TAuthor.T_AUTHOR.ID); + public static final org.jooq.UniqueKey PK_T_BOOK = createUniqueKey(org.jooq.test.sqlserver.generatedclasses.tables.TBook.T_BOOK, org.jooq.test.sqlserver.generatedclasses.tables.TBook.T_BOOK.ID); + public static final org.jooq.UniqueKey UK_T_BOOK_STORE_NAME = createUniqueKey(org.jooq.test.sqlserver.generatedclasses.tables.TBookStore.T_BOOK_STORE, org.jooq.test.sqlserver.generatedclasses.tables.TBookStore.T_BOOK_STORE.NAME); + public static final org.jooq.UniqueKey PK_B2BS = createUniqueKey(org.jooq.test.sqlserver.generatedclasses.tables.TBookToBookStore.T_BOOK_TO_BOOK_STORE, org.jooq.test.sqlserver.generatedclasses.tables.TBookToBookStore.T_BOOK_TO_BOOK_STORE.BOOK_STORE_NAME, org.jooq.test.sqlserver.generatedclasses.tables.TBookToBookStore.T_BOOK_TO_BOOK_STORE.BOOK_ID); + public static final org.jooq.UniqueKey PK_T_BOOLEANS = createUniqueKey(org.jooq.test.sqlserver.generatedclasses.tables.TBooleans.T_BOOLEANS, org.jooq.test.sqlserver.generatedclasses.tables.TBooleans.T_BOOLEANS.ID); + public static final org.jooq.UniqueKey PK_T_DATES = createUniqueKey(org.jooq.test.sqlserver.generatedclasses.tables.TDates.T_DATES, org.jooq.test.sqlserver.generatedclasses.tables.TDates.T_DATES.ID); + public static final org.jooq.UniqueKey PK_T_IDENTITY_PK = createUniqueKey(org.jooq.test.sqlserver.generatedclasses.tables.TIdentityPk.T_IDENTITY_PK, org.jooq.test.sqlserver.generatedclasses.tables.TIdentityPk.T_IDENTITY_PK.ID); + public static final org.jooq.UniqueKey PK_T_TRIGGERS = createUniqueKey(org.jooq.test.sqlserver.generatedclasses.tables.TTriggers.T_TRIGGERS, org.jooq.test.sqlserver.generatedclasses.tables.TTriggers.T_TRIGGERS.ID_GENERATED); + public static final org.jooq.UniqueKey PK_X_TEST_CASE_64_69 = createUniqueKey(org.jooq.test.sqlserver.generatedclasses.tables.XTestCase_64_69.X_TEST_CASE_64_69, org.jooq.test.sqlserver.generatedclasses.tables.XTestCase_64_69.X_TEST_CASE_64_69.ID); + public static final org.jooq.UniqueKey PK_X_TEST_CASE_71 = createUniqueKey(org.jooq.test.sqlserver.generatedclasses.tables.XTestCase_71.X_TEST_CASE_71, org.jooq.test.sqlserver.generatedclasses.tables.XTestCase_71.X_TEST_CASE_71.ID); + public static final org.jooq.UniqueKey PK_X_TEST_CASE_85 = createUniqueKey(org.jooq.test.sqlserver.generatedclasses.tables.XTestCase_85.X_TEST_CASE_85, org.jooq.test.sqlserver.generatedclasses.tables.XTestCase_85.X_TEST_CASE_85.ID); + public static final org.jooq.UniqueKey PK_X_UNUSED = createUniqueKey(org.jooq.test.sqlserver.generatedclasses.tables.XUnused.X_UNUSED, org.jooq.test.sqlserver.generatedclasses.tables.XUnused.X_UNUSED.ID, org.jooq.test.sqlserver.generatedclasses.tables.XUnused.X_UNUSED.NAME); + public static final org.jooq.UniqueKey UK_X_UNUSED_ID = createUniqueKey(org.jooq.test.sqlserver.generatedclasses.tables.XUnused.X_UNUSED, org.jooq.test.sqlserver.generatedclasses.tables.XUnused.X_UNUSED.ID); + + // FOREIGN KEY definitions + public static final org.jooq.ForeignKey FK_T_BOOK_AUTHOR_ID = createForeignKey(PK_T_AUTHOR, org.jooq.test.sqlserver.generatedclasses.tables.TBook.T_BOOK, org.jooq.test.sqlserver.generatedclasses.tables.TBook.T_BOOK.AUTHOR_ID); + public static final org.jooq.ForeignKey FK_T_BOOK_CO_AUTHOR_ID = createForeignKey(PK_T_AUTHOR, org.jooq.test.sqlserver.generatedclasses.tables.TBook.T_BOOK, org.jooq.test.sqlserver.generatedclasses.tables.TBook.T_BOOK.CO_AUTHOR_ID); + public static final org.jooq.ForeignKey FK_B2BS_BS_NAME = createForeignKey(UK_T_BOOK_STORE_NAME, org.jooq.test.sqlserver.generatedclasses.tables.TBookToBookStore.T_BOOK_TO_BOOK_STORE, org.jooq.test.sqlserver.generatedclasses.tables.TBookToBookStore.T_BOOK_TO_BOOK_STORE.BOOK_STORE_NAME); + public static final org.jooq.ForeignKey FK_B2BS_B_ID = createForeignKey(PK_T_BOOK, org.jooq.test.sqlserver.generatedclasses.tables.TBookToBookStore.T_BOOK_TO_BOOK_STORE, org.jooq.test.sqlserver.generatedclasses.tables.TBookToBookStore.T_BOOK_TO_BOOK_STORE.BOOK_ID); + public static final org.jooq.ForeignKey FK_X_TEST_CASE_64_69A = createForeignKey(UK_X_UNUSED_ID, org.jooq.test.sqlserver.generatedclasses.tables.XTestCase_64_69.X_TEST_CASE_64_69, org.jooq.test.sqlserver.generatedclasses.tables.XTestCase_64_69.X_TEST_CASE_64_69.UNUSED_ID); + public static final org.jooq.ForeignKey FK_X_TEST_CASE_71 = createForeignKey(PK_X_TEST_CASE_64_69, org.jooq.test.sqlserver.generatedclasses.tables.XTestCase_71.X_TEST_CASE_71, org.jooq.test.sqlserver.generatedclasses.tables.XTestCase_71.X_TEST_CASE_71.TEST_CASE_64_69_ID); + public static final org.jooq.ForeignKey FK_X_TEST_CASE_85 = createForeignKey(PK_X_UNUSED, org.jooq.test.sqlserver.generatedclasses.tables.XTestCase_85.X_TEST_CASE_85, org.jooq.test.sqlserver.generatedclasses.tables.XTestCase_85.X_TEST_CASE_85.X_UNUSED_ID, org.jooq.test.sqlserver.generatedclasses.tables.XTestCase_85.X_TEST_CASE_85.X_UNUSED_NAME); + public static final org.jooq.ForeignKey FK_X_UNUSED_SELF = createForeignKey(PK_X_UNUSED, org.jooq.test.sqlserver.generatedclasses.tables.XUnused.X_UNUSED, org.jooq.test.sqlserver.generatedclasses.tables.XUnused.X_UNUSED.ID_REF, org.jooq.test.sqlserver.generatedclasses.tables.XUnused.X_UNUSED.NAME_REF); + + /** + * No instances + */ + private Keys() {} +} diff --git a/jOOQ-test/src/org/jooq/test/sqlserver/generatedclasses/Routines.java b/jOOQ-test/src/org/jooq/test/sqlserver/generatedclasses/Routines.java new file mode 100644 index 00000000000..6e128a0244a --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/sqlserver/generatedclasses/Routines.java @@ -0,0 +1,279 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.sqlserver.generatedclasses; + +/** + * This class is generated by jOOQ. + * + * Convenience access to all stored procedures and functions in dbo + */ +public final class Routines { + + /** + * Call dbo.f_author_exists + * + * @param authorName + * @throws org.jooq.exception.DataAccessException if something went wrong executing the query + */ + public static java.lang.Integer fAuthorExists(org.jooq.Configuration configuration, java.lang.String authorName) { + org.jooq.test.sqlserver.generatedclasses.routines.FAuthorExists f = new org.jooq.test.sqlserver.generatedclasses.routines.FAuthorExists(); + f.setAuthorName(authorName); + + f.execute(configuration); + return f.getReturnValue(); + } + + /** + * Get dbo.f_author_exists as a field + * + * @param authorName + */ + public static org.jooq.Field fAuthorExists(java.lang.String authorName) { + org.jooq.test.sqlserver.generatedclasses.routines.FAuthorExists f = new org.jooq.test.sqlserver.generatedclasses.routines.FAuthorExists(); + f.setAuthorName(authorName); + + return f.asField(); + } + + /** + * Get dbo.f_author_exists as a field + * + * @param authorName + */ + public static org.jooq.Field fAuthorExists(org.jooq.Field authorName) { + org.jooq.test.sqlserver.generatedclasses.routines.FAuthorExists f = new org.jooq.test.sqlserver.generatedclasses.routines.FAuthorExists(); + f.setAuthorName(authorName); + + return f.asField(); + } + + /** + * Call dbo.f_number + * + * @param n + * @throws org.jooq.exception.DataAccessException if something went wrong executing the query + */ + public static java.lang.Integer fNumber(org.jooq.Configuration configuration, java.lang.Integer n) { + org.jooq.test.sqlserver.generatedclasses.routines.FNumber f = new org.jooq.test.sqlserver.generatedclasses.routines.FNumber(); + f.setN(n); + + f.execute(configuration); + return f.getReturnValue(); + } + + /** + * Get dbo.f_number as a field + * + * @param n + */ + public static org.jooq.Field fNumber(java.lang.Integer n) { + org.jooq.test.sqlserver.generatedclasses.routines.FNumber f = new org.jooq.test.sqlserver.generatedclasses.routines.FNumber(); + f.setN(n); + + return f.asField(); + } + + /** + * Get dbo.f_number as a field + * + * @param n + */ + public static org.jooq.Field fNumber(org.jooq.Field n) { + org.jooq.test.sqlserver.generatedclasses.routines.FNumber f = new org.jooq.test.sqlserver.generatedclasses.routines.FNumber(); + f.setN(n); + + return f.asField(); + } + + /** + * Call dbo.f_one + * + * @throws org.jooq.exception.DataAccessException if something went wrong executing the query + */ + public static java.lang.Integer fOne(org.jooq.Configuration configuration) { + org.jooq.test.sqlserver.generatedclasses.routines.FOne f = new org.jooq.test.sqlserver.generatedclasses.routines.FOne(); + + f.execute(configuration); + return f.getReturnValue(); + } + + /** + * Get dbo.f_one as a field + * + */ + public static org.jooq.Field fOne() { + org.jooq.test.sqlserver.generatedclasses.routines.FOne f = new org.jooq.test.sqlserver.generatedclasses.routines.FOne(); + + return f.asField(); + } + + /** + * Call dbo.f317 + * + * @param p1 + * @param p2 + * @param p3 + * @param p4 + * @throws org.jooq.exception.DataAccessException if something went wrong executing the query + */ + public static java.lang.Integer f317(org.jooq.Configuration configuration, java.lang.Integer p1, java.lang.Integer p2, java.lang.Integer p3, java.lang.Integer p4) { + org.jooq.test.sqlserver.generatedclasses.routines.F317 f = new org.jooq.test.sqlserver.generatedclasses.routines.F317(); + f.setP1(p1); + f.setP2(p2); + f.setP3(p3); + f.setP4(p4); + + f.execute(configuration); + return f.getReturnValue(); + } + + /** + * Get dbo.f317 as a field + * + * @param p1 + * @param p2 + * @param p3 + * @param p4 + */ + public static org.jooq.Field f317(java.lang.Integer p1, java.lang.Integer p2, java.lang.Integer p3, java.lang.Integer p4) { + org.jooq.test.sqlserver.generatedclasses.routines.F317 f = new org.jooq.test.sqlserver.generatedclasses.routines.F317(); + f.setP1(p1); + f.setP2(p2); + f.setP3(p3); + f.setP4(p4); + + return f.asField(); + } + + /** + * Get dbo.f317 as a field + * + * @param p1 + * @param p2 + * @param p3 + * @param p4 + */ + public static org.jooq.Field f317(org.jooq.Field p1, org.jooq.Field p2, org.jooq.Field p3, org.jooq.Field p4) { + org.jooq.test.sqlserver.generatedclasses.routines.F317 f = new org.jooq.test.sqlserver.generatedclasses.routines.F317(); + f.setP1(p1); + f.setP2(p2); + f.setP3(p3); + f.setP4(p4); + + return f.asField(); + } + + /** + * Call dbo.p_author_exists + * + * @param authorName IN parameter + * @param result IN OUT parameter + * @throws org.jooq.exception.DataAccessException if something went wrong executing the query + */ + public static java.lang.Integer pAuthorExists(org.jooq.Configuration configuration, java.lang.String authorName, java.lang.Integer result) { + org.jooq.test.sqlserver.generatedclasses.routines.PAuthorExists p = new org.jooq.test.sqlserver.generatedclasses.routines.PAuthorExists(); + p.setAuthorName(authorName); + p.setResult(result); + + p.execute(configuration); + return p.getResult(); + } + + /** + * Call dbo.p_create_author + * + * @throws org.jooq.exception.DataAccessException if something went wrong executing the query + */ + public static void pCreateAuthor(org.jooq.Configuration configuration) { + org.jooq.test.sqlserver.generatedclasses.routines.PCreateAuthor p = new org.jooq.test.sqlserver.generatedclasses.routines.PCreateAuthor(); + + p.execute(configuration); + } + + /** + * Call dbo.p_create_author_by_name + * + * @param firstName IN parameter + * @param lastName IN parameter + * @throws org.jooq.exception.DataAccessException if something went wrong executing the query + */ + public static void pCreateAuthorByName(org.jooq.Configuration configuration, java.lang.String firstName, java.lang.String lastName) { + org.jooq.test.sqlserver.generatedclasses.routines.PCreateAuthorByName p = new org.jooq.test.sqlserver.generatedclasses.routines.PCreateAuthorByName(); + p.setFirstName(firstName); + p.setLastName(lastName); + + p.execute(configuration); + } + + /** + * Call dbo.p_default + * + * @param pInNumber IN parameter + * @param pOutNumber IN OUT parameter + * @param pInVarchar IN parameter + * @param pOutVarchar IN OUT parameter + * @param pInDate IN parameter + * @param pOutDate IN OUT parameter + * @throws org.jooq.exception.DataAccessException if something went wrong executing the query + */ + public static org.jooq.test.sqlserver.generatedclasses.routines.PDefault pDefault(org.jooq.Configuration configuration, java.lang.Integer pInNumber, java.lang.Integer pOutNumber, java.lang.String pInVarchar, java.lang.String pOutVarchar, java.sql.Date pInDate, java.sql.Date pOutDate) { + org.jooq.test.sqlserver.generatedclasses.routines.PDefault p = new org.jooq.test.sqlserver.generatedclasses.routines.PDefault(); + p.setPInNumber(pInNumber); + p.setPOutNumber(pOutNumber); + p.setPInVarchar(pInVarchar); + p.setPOutVarchar(pOutVarchar); + p.setPInDate(pInDate); + p.setPOutDate(pOutDate); + + p.execute(configuration); + return p; + } + + /** + * Call dbo.p_unused + * + * @param in1 IN parameter + * @param out1 IN OUT parameter + * @param out2 IN OUT parameter + * @throws org.jooq.exception.DataAccessException if something went wrong executing the query + */ + public static org.jooq.test.sqlserver.generatedclasses.routines.PUnused pUnused(org.jooq.Configuration configuration, java.lang.String in1, java.lang.Integer out1, java.lang.Integer out2) { + org.jooq.test.sqlserver.generatedclasses.routines.PUnused p = new org.jooq.test.sqlserver.generatedclasses.routines.PUnused(); + p.setIn1(in1); + p.setOut1(out1); + p.setOut2(out2); + + p.execute(configuration); + return p; + } + + /** + * Call dbo.p391 + * + * @param i1 IN parameter + * @param io1 IN OUT parameter + * @param o1 IN OUT parameter + * @param o2 IN OUT parameter + * @param io2 IN OUT parameter + * @param i2 IN parameter + * @throws org.jooq.exception.DataAccessException if something went wrong executing the query + */ + public static org.jooq.test.sqlserver.generatedclasses.routines.P391 p391(org.jooq.Configuration configuration, java.lang.Integer i1, java.lang.Integer io1, java.lang.Integer o1, java.lang.Integer o2, java.lang.Integer io2, java.lang.Integer i2) { + org.jooq.test.sqlserver.generatedclasses.routines.P391 p = new org.jooq.test.sqlserver.generatedclasses.routines.P391(); + p.setI1(i1); + p.setIo1(io1); + p.setO1(o1); + p.setO2(o2); + p.setIo2(io2); + p.setI2(i2); + + p.execute(configuration); + return p; + } + + /** + * No instances + */ + private Routines() {} +} diff --git a/jOOQ-test/src/org/jooq/test/sqlserver/generatedclasses/Tables.java b/jOOQ-test/src/org/jooq/test/sqlserver/generatedclasses/Tables.java new file mode 100644 index 00000000000..0f2a1275a2a --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/sqlserver/generatedclasses/Tables.java @@ -0,0 +1,117 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.sqlserver.generatedclasses; + +/** + * This class is generated by jOOQ. + * + * Convenience access to all tables in dbo + */ +public final class Tables { + + /** + * The table dbo.t_639_numbers_table + */ + public static org.jooq.test.sqlserver.generatedclasses.tables.T_639NumbersTable T_639_NUMBERS_TABLE = org.jooq.test.sqlserver.generatedclasses.tables.T_639NumbersTable.T_639_NUMBERS_TABLE; + + /** + * The table dbo.t_658_ref + */ + public static org.jooq.test.sqlserver.generatedclasses.tables.T_658Ref T_658_REF = org.jooq.test.sqlserver.generatedclasses.tables.T_658Ref.T_658_REF; + + /** + * The table dbo.t_725_lob_test + */ + public static org.jooq.test.sqlserver.generatedclasses.tables.T_725LobTest T_725_LOB_TEST = org.jooq.test.sqlserver.generatedclasses.tables.T_725LobTest.T_725_LOB_TEST; + + /** + * The table dbo.t_785 + */ + public static org.jooq.test.sqlserver.generatedclasses.tables.T_785 T_785 = org.jooq.test.sqlserver.generatedclasses.tables.T_785.T_785; + + /** + * The table dbo.t_author + */ + public static org.jooq.test.sqlserver.generatedclasses.tables.TAuthor T_AUTHOR = org.jooq.test.sqlserver.generatedclasses.tables.TAuthor.T_AUTHOR; + + /** + * The table dbo.t_book + */ + public static org.jooq.test.sqlserver.generatedclasses.tables.TBook T_BOOK = org.jooq.test.sqlserver.generatedclasses.tables.TBook.T_BOOK; + + /** + * The table dbo.t_book_store + */ + public static org.jooq.test.sqlserver.generatedclasses.tables.TBookStore T_BOOK_STORE = org.jooq.test.sqlserver.generatedclasses.tables.TBookStore.T_BOOK_STORE; + + /** + * The table dbo.t_book_to_book_store + */ + public static org.jooq.test.sqlserver.generatedclasses.tables.TBookToBookStore T_BOOK_TO_BOOK_STORE = org.jooq.test.sqlserver.generatedclasses.tables.TBookToBookStore.T_BOOK_TO_BOOK_STORE; + + /** + * The table dbo.t_booleans + */ + public static org.jooq.test.sqlserver.generatedclasses.tables.TBooleans T_BOOLEANS = org.jooq.test.sqlserver.generatedclasses.tables.TBooleans.T_BOOLEANS; + + /** + * The table dbo.t_dates + */ + public static org.jooq.test.sqlserver.generatedclasses.tables.TDates T_DATES = org.jooq.test.sqlserver.generatedclasses.tables.TDates.T_DATES; + + /** + * The table dbo.t_identity + */ + public static org.jooq.test.sqlserver.generatedclasses.tables.TIdentity T_IDENTITY = org.jooq.test.sqlserver.generatedclasses.tables.TIdentity.T_IDENTITY; + + /** + * The table dbo.t_identity_pk + */ + public static org.jooq.test.sqlserver.generatedclasses.tables.TIdentityPk T_IDENTITY_PK = org.jooq.test.sqlserver.generatedclasses.tables.TIdentityPk.T_IDENTITY_PK; + + /** + * The table dbo.t_triggers + */ + public static org.jooq.test.sqlserver.generatedclasses.tables.TTriggers T_TRIGGERS = org.jooq.test.sqlserver.generatedclasses.tables.TTriggers.T_TRIGGERS; + + /** + * The table dbo.v_author + */ + public static org.jooq.test.sqlserver.generatedclasses.tables.VAuthor V_AUTHOR = org.jooq.test.sqlserver.generatedclasses.tables.VAuthor.V_AUTHOR; + + /** + * The table dbo.v_book + */ + public static org.jooq.test.sqlserver.generatedclasses.tables.VBook V_BOOK = org.jooq.test.sqlserver.generatedclasses.tables.VBook.V_BOOK; + + /** + * The table dbo.v_library + */ + public static org.jooq.test.sqlserver.generatedclasses.tables.VLibrary V_LIBRARY = org.jooq.test.sqlserver.generatedclasses.tables.VLibrary.V_LIBRARY; + + /** + * The table dbo.x_test_case_64_69 + */ + public static org.jooq.test.sqlserver.generatedclasses.tables.XTestCase_64_69 X_TEST_CASE_64_69 = org.jooq.test.sqlserver.generatedclasses.tables.XTestCase_64_69.X_TEST_CASE_64_69; + + /** + * The table dbo.x_test_case_71 + */ + public static org.jooq.test.sqlserver.generatedclasses.tables.XTestCase_71 X_TEST_CASE_71 = org.jooq.test.sqlserver.generatedclasses.tables.XTestCase_71.X_TEST_CASE_71; + + /** + * The table dbo.x_test_case_85 + */ + public static org.jooq.test.sqlserver.generatedclasses.tables.XTestCase_85 X_TEST_CASE_85 = org.jooq.test.sqlserver.generatedclasses.tables.XTestCase_85.X_TEST_CASE_85; + + /** + * The table dbo.x_unused + */ + public static org.jooq.test.sqlserver.generatedclasses.tables.XUnused X_UNUSED = org.jooq.test.sqlserver.generatedclasses.tables.XUnused.X_UNUSED; + + /** + * No instances + */ + private Tables() {} +} diff --git a/jOOQ-test/src/org/jooq/test/sqlserver/generatedclasses/enums/TLanguage.java b/jOOQ-test/src/org/jooq/test/sqlserver/generatedclasses/enums/TLanguage.java new file mode 100644 index 00000000000..0f174746751 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/sqlserver/generatedclasses/enums/TLanguage.java @@ -0,0 +1,65 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.sqlserver.generatedclasses.enums; + +/** + * This class is generated by jOOQ. + */ +public enum TLanguage implements org.jooq.MasterDataType { + + /** + * English + */ + en(1, "en", "English"), + + /** + * Deutsch + */ + de(2, "de", "Deutsch"), + + /** + * Français + */ + fr(3, "fr", "Français"), + pt(4, "pt", null), + ; + + private final java.lang.Integer id; + private final java.lang.String cd; + private final java.lang.String description; + + private TLanguage(java.lang.Integer id, java.lang.String cd, java.lang.String description) { + this.id = id; + this.cd = cd; + this.description = description; + } + + @Override + public java.lang.Integer getPrimaryKey() { + return id; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final java.lang.Integer getId() { + return id; + } + + /** + * An uncommented item + */ + public final java.lang.String getCd() { + return cd; + } + + /** + * An uncommented item + */ + public final java.lang.String getDescription() { + return description; + } +} diff --git a/jOOQ-test/src/org/jooq/test/sqlserver/generatedclasses/enums/T_658_11.java b/jOOQ-test/src/org/jooq/test/sqlserver/generatedclasses/enums/T_658_11.java new file mode 100644 index 00000000000..20d52bc2166 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/sqlserver/generatedclasses/enums/T_658_11.java @@ -0,0 +1,46 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.sqlserver.generatedclasses.enums; + +/** + * This class is generated by jOOQ. + */ +public enum T_658_11 implements org.jooq.MasterDataType { + + /** + * A + */ + A__("A "), + + /** + * B + */ + B__("B "), + + /** + * C + */ + C__("C "), + ; + + private final java.lang.String id; + + private T_658_11(java.lang.String id) { + this.id = id; + } + + @Override + public java.lang.String getPrimaryKey() { + return id; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final java.lang.String getId() { + return id; + } +} diff --git a/jOOQ-test/src/org/jooq/test/sqlserver/generatedclasses/enums/T_658_12.java b/jOOQ-test/src/org/jooq/test/sqlserver/generatedclasses/enums/T_658_12.java new file mode 100644 index 00000000000..9074d118c1a --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/sqlserver/generatedclasses/enums/T_658_12.java @@ -0,0 +1,55 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.sqlserver.generatedclasses.enums; + +/** + * This class is generated by jOOQ. + */ +public enum T_658_12 implements org.jooq.MasterDataType { + + /** + * A + */ + A__("A ", "A "), + + /** + * B + */ + B__("B ", "B "), + + /** + * C + */ + C__("C ", "C "), + ; + + private final java.lang.String id; + private final java.lang.String cd; + + private T_658_12(java.lang.String id, java.lang.String cd) { + this.id = id; + this.cd = cd; + } + + @Override + public java.lang.String getPrimaryKey() { + return id; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final java.lang.String getId() { + return id; + } + + /** + * An uncommented item + */ + public final java.lang.String getCd() { + return cd; + } +} diff --git a/jOOQ-test/src/org/jooq/test/sqlserver/generatedclasses/enums/T_658_21.java b/jOOQ-test/src/org/jooq/test/sqlserver/generatedclasses/enums/T_658_21.java new file mode 100644 index 00000000000..37e70cc96b9 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/sqlserver/generatedclasses/enums/T_658_21.java @@ -0,0 +1,46 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.sqlserver.generatedclasses.enums; + +/** + * This class is generated by jOOQ. + */ +public enum T_658_21 implements org.jooq.MasterDataType { + + /** + * 1 + */ + _1(1), + + /** + * 2 + */ + _2(2), + + /** + * 3 + */ + _3(3), + ; + + private final java.lang.Integer id; + + private T_658_21(java.lang.Integer id) { + this.id = id; + } + + @Override + public java.lang.Integer getPrimaryKey() { + return id; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final java.lang.Integer getId() { + return id; + } +} diff --git a/jOOQ-test/src/org/jooq/test/sqlserver/generatedclasses/enums/T_658_22.java b/jOOQ-test/src/org/jooq/test/sqlserver/generatedclasses/enums/T_658_22.java new file mode 100644 index 00000000000..9ab91c2daf8 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/sqlserver/generatedclasses/enums/T_658_22.java @@ -0,0 +1,55 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.sqlserver.generatedclasses.enums; + +/** + * This class is generated by jOOQ. + */ +public enum T_658_22 implements org.jooq.MasterDataType { + + /** + * 1 + */ + _1(1, 1), + + /** + * 2 + */ + _2(2, 2), + + /** + * 3 + */ + _3(3, 3), + ; + + private final java.lang.Integer id; + private final java.lang.Integer cd; + + private T_658_22(java.lang.Integer id, java.lang.Integer cd) { + this.id = id; + this.cd = cd; + } + + @Override + public java.lang.Integer getPrimaryKey() { + return id; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final java.lang.Integer getId() { + return id; + } + + /** + * An uncommented item + */ + public final java.lang.Integer getCd() { + return cd; + } +} diff --git a/jOOQ-test/src/org/jooq/test/sqlserver/generatedclasses/enums/T_658_31.java b/jOOQ-test/src/org/jooq/test/sqlserver/generatedclasses/enums/T_658_31.java new file mode 100644 index 00000000000..fcdf9859304 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/sqlserver/generatedclasses/enums/T_658_31.java @@ -0,0 +1,46 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.sqlserver.generatedclasses.enums; + +/** + * This class is generated by jOOQ. + */ +public enum T_658_31 implements org.jooq.MasterDataType { + + /** + * 1 + */ + _1(1L), + + /** + * 2 + */ + _2(2L), + + /** + * 3 + */ + _3(3L), + ; + + private final java.lang.Long id; + + private T_658_31(java.lang.Long id) { + this.id = id; + } + + @Override + public java.lang.Long getPrimaryKey() { + return id; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final java.lang.Long getId() { + return id; + } +} diff --git a/jOOQ-test/src/org/jooq/test/sqlserver/generatedclasses/enums/T_658_32.java b/jOOQ-test/src/org/jooq/test/sqlserver/generatedclasses/enums/T_658_32.java new file mode 100644 index 00000000000..959416f92ff --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/sqlserver/generatedclasses/enums/T_658_32.java @@ -0,0 +1,55 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.sqlserver.generatedclasses.enums; + +/** + * This class is generated by jOOQ. + */ +public enum T_658_32 implements org.jooq.MasterDataType { + + /** + * 1 + */ + _1(1L, 1L), + + /** + * 2 + */ + _2(2L, 2L), + + /** + * 3 + */ + _3(3L, 3L), + ; + + private final java.lang.Long id; + private final java.lang.Long cd; + + private T_658_32(java.lang.Long id, java.lang.Long cd) { + this.id = id; + this.cd = cd; + } + + @Override + public java.lang.Long getPrimaryKey() { + return id; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final java.lang.Long getId() { + return id; + } + + /** + * An uncommented item + */ + public final java.lang.Long getCd() { + return cd; + } +} diff --git a/jOOQ-test/src/org/jooq/test/sqlserver/generatedclasses/routines/F317.java b/jOOQ-test/src/org/jooq/test/sqlserver/generatedclasses/routines/F317.java new file mode 100644 index 00000000000..2754046f554 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/sqlserver/generatedclasses/routines/F317.java @@ -0,0 +1,115 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.sqlserver.generatedclasses.routines; + +/** + * This class is generated by jOOQ. + */ +public class F317 extends org.jooq.impl.AbstractRoutine { + + private static final long serialVersionUID = 251552473; + + + /** + * An uncommented item + */ + public static final org.jooq.Parameter RETURN_VALUE = createParameter("RETURN_VALUE", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter P1 = createParameter("p1", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter P2 = createParameter("p2", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter P3 = createParameter("p3", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter P4 = createParameter("p4", org.jooq.impl.SQLDataType.INTEGER); + + /** + * Create a new routine call instance + */ + public F317() { + super("f317", org.jooq.test.sqlserver.generatedclasses.Dbo.DBO, org.jooq.impl.SQLDataType.INTEGER); + + setReturnParameter(RETURN_VALUE); + addInParameter(P1); + addInParameter(P2); + addInParameter(P3); + addInParameter(P4); + } + + /** + * Set the p1 parameter to the routine + */ + public void setP1(java.lang.Integer value) { + setValue(P1, value); + } + + /** + * Set the p1 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setP1(org.jooq.Field field) { + setField(P1, field); + } + + /** + * Set the p2 parameter to the routine + */ + public void setP2(java.lang.Integer value) { + setValue(P2, value); + } + + /** + * Set the p2 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setP2(org.jooq.Field field) { + setField(P2, field); + } + + /** + * Set the p3 parameter to the routine + */ + public void setP3(java.lang.Integer value) { + setValue(P3, value); + } + + /** + * Set the p3 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setP3(org.jooq.Field field) { + setField(P3, field); + } + + /** + * Set the p4 parameter to the routine + */ + public void setP4(java.lang.Integer value) { + setValue(P4, value); + } + + /** + * Set the p4 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setP4(org.jooq.Field field) { + setField(P4, field); + } +} diff --git a/jOOQ-test/src/org/jooq/test/sqlserver/generatedclasses/routines/FAuthorExists.java b/jOOQ-test/src/org/jooq/test/sqlserver/generatedclasses/routines/FAuthorExists.java new file mode 100644 index 00000000000..761a193f26c --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/sqlserver/generatedclasses/routines/FAuthorExists.java @@ -0,0 +1,49 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.sqlserver.generatedclasses.routines; + +/** + * This class is generated by jOOQ. + */ +public class FAuthorExists extends org.jooq.impl.AbstractRoutine { + + private static final long serialVersionUID = 1108393792; + + + /** + * An uncommented item + */ + public static final org.jooq.Parameter RETURN_VALUE = createParameter("RETURN_VALUE", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter AUTHOR_NAME = createParameter("author_name", org.jooq.impl.SQLDataType.VARCHAR); + + /** + * Create a new routine call instance + */ + public FAuthorExists() { + super("f_author_exists", org.jooq.test.sqlserver.generatedclasses.Dbo.DBO, org.jooq.impl.SQLDataType.INTEGER); + + setReturnParameter(RETURN_VALUE); + addInParameter(AUTHOR_NAME); + } + + /** + * Set the author_name parameter to the routine + */ + public void setAuthorName(java.lang.String value) { + setValue(AUTHOR_NAME, value); + } + + /** + * Set the author_name parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setAuthorName(org.jooq.Field field) { + setField(AUTHOR_NAME, field); + } +} diff --git a/jOOQ-test/src/org/jooq/test/sqlserver/generatedclasses/routines/FManyParameters.java b/jOOQ-test/src/org/jooq/test/sqlserver/generatedclasses/routines/FManyParameters.java new file mode 100644 index 00000000000..9131b72a9e5 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/sqlserver/generatedclasses/routines/FManyParameters.java @@ -0,0 +1,8827 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.sqlserver.generatedclasses.routines; + +/** + * This class is generated by jOOQ. + */ +public class FManyParameters extends org.jooq.impl.AbstractRoutine { + + private static final long serialVersionUID = 1865526793; + + + /** + * An uncommented item + */ + public static final org.jooq.Parameter RETURN_VALUE = createParameter("RETURN_VALUE", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F000 = createParameter("f000", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F001 = createParameter("f001", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F002 = createParameter("f002", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F003 = createParameter("f003", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F004 = createParameter("f004", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F005 = createParameter("f005", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F006 = createParameter("f006", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F007 = createParameter("f007", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F008 = createParameter("f008", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F009 = createParameter("f009", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F010 = createParameter("f010", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F011 = createParameter("f011", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F012 = createParameter("f012", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F013 = createParameter("f013", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F014 = createParameter("f014", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F015 = createParameter("f015", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F016 = createParameter("f016", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F017 = createParameter("f017", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F018 = createParameter("f018", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F019 = createParameter("f019", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F020 = createParameter("f020", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F021 = createParameter("f021", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F022 = createParameter("f022", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F023 = createParameter("f023", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F024 = createParameter("f024", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F025 = createParameter("f025", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F026 = createParameter("f026", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F027 = createParameter("f027", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F028 = createParameter("f028", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F029 = createParameter("f029", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F030 = createParameter("f030", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F031 = createParameter("f031", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F032 = createParameter("f032", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F033 = createParameter("f033", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F034 = createParameter("f034", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F035 = createParameter("f035", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F036 = createParameter("f036", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F037 = createParameter("f037", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F038 = createParameter("f038", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F039 = createParameter("f039", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F040 = createParameter("f040", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F041 = createParameter("f041", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F042 = createParameter("f042", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F043 = createParameter("f043", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F044 = createParameter("f044", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F045 = createParameter("f045", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F046 = createParameter("f046", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F047 = createParameter("f047", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F048 = createParameter("f048", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F049 = createParameter("f049", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F050 = createParameter("f050", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F051 = createParameter("f051", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F052 = createParameter("f052", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F053 = createParameter("f053", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F054 = createParameter("f054", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F055 = createParameter("f055", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F056 = createParameter("f056", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F057 = createParameter("f057", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F058 = createParameter("f058", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F059 = createParameter("f059", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F060 = createParameter("f060", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F061 = createParameter("f061", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F062 = createParameter("f062", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F063 = createParameter("f063", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F064 = createParameter("f064", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F065 = createParameter("f065", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F066 = createParameter("f066", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F067 = createParameter("f067", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F068 = createParameter("f068", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F069 = createParameter("f069", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F070 = createParameter("f070", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F071 = createParameter("f071", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F072 = createParameter("f072", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F073 = createParameter("f073", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F074 = createParameter("f074", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F075 = createParameter("f075", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F076 = createParameter("f076", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F077 = createParameter("f077", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F078 = createParameter("f078", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F079 = createParameter("f079", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F080 = createParameter("f080", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F081 = createParameter("f081", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F082 = createParameter("f082", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F083 = createParameter("f083", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F084 = createParameter("f084", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F085 = createParameter("f085", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F086 = createParameter("f086", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F087 = createParameter("f087", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F088 = createParameter("f088", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F089 = createParameter("f089", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F090 = createParameter("f090", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F091 = createParameter("f091", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F092 = createParameter("f092", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F093 = createParameter("f093", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F094 = createParameter("f094", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F095 = createParameter("f095", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F096 = createParameter("f096", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F097 = createParameter("f097", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F098 = createParameter("f098", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F099 = createParameter("f099", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F100 = createParameter("f100", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F101 = createParameter("f101", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F102 = createParameter("f102", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F103 = createParameter("f103", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F104 = createParameter("f104", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F105 = createParameter("f105", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F106 = createParameter("f106", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F107 = createParameter("f107", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F108 = createParameter("f108", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F109 = createParameter("f109", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F110 = createParameter("f110", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F111 = createParameter("f111", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F112 = createParameter("f112", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F113 = createParameter("f113", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F114 = createParameter("f114", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F115 = createParameter("f115", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F116 = createParameter("f116", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F117 = createParameter("f117", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F118 = createParameter("f118", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F119 = createParameter("f119", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F120 = createParameter("f120", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F121 = createParameter("f121", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F122 = createParameter("f122", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F123 = createParameter("f123", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F124 = createParameter("f124", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F125 = createParameter("f125", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F126 = createParameter("f126", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F127 = createParameter("f127", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F128 = createParameter("f128", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F129 = createParameter("f129", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F130 = createParameter("f130", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F131 = createParameter("f131", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F132 = createParameter("f132", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F133 = createParameter("f133", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F134 = createParameter("f134", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F135 = createParameter("f135", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F136 = createParameter("f136", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F137 = createParameter("f137", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F138 = createParameter("f138", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F139 = createParameter("f139", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F140 = createParameter("f140", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F141 = createParameter("f141", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F142 = createParameter("f142", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F143 = createParameter("f143", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F144 = createParameter("f144", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F145 = createParameter("f145", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F146 = createParameter("f146", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F147 = createParameter("f147", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F148 = createParameter("f148", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F149 = createParameter("f149", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F150 = createParameter("f150", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F151 = createParameter("f151", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F152 = createParameter("f152", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F153 = createParameter("f153", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F154 = createParameter("f154", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F155 = createParameter("f155", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F156 = createParameter("f156", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F157 = createParameter("f157", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F158 = createParameter("f158", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F159 = createParameter("f159", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F160 = createParameter("f160", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F161 = createParameter("f161", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F162 = createParameter("f162", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F163 = createParameter("f163", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F164 = createParameter("f164", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F165 = createParameter("f165", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F166 = createParameter("f166", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F167 = createParameter("f167", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F168 = createParameter("f168", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F169 = createParameter("f169", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F170 = createParameter("f170", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F171 = createParameter("f171", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F172 = createParameter("f172", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F173 = createParameter("f173", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F174 = createParameter("f174", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F175 = createParameter("f175", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F176 = createParameter("f176", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F177 = createParameter("f177", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F178 = createParameter("f178", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F179 = createParameter("f179", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F180 = createParameter("f180", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F181 = createParameter("f181", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F182 = createParameter("f182", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F183 = createParameter("f183", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F184 = createParameter("f184", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F185 = createParameter("f185", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F186 = createParameter("f186", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F187 = createParameter("f187", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F188 = createParameter("f188", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F189 = createParameter("f189", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F190 = createParameter("f190", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F191 = createParameter("f191", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F192 = createParameter("f192", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F193 = createParameter("f193", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F194 = createParameter("f194", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F195 = createParameter("f195", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F196 = createParameter("f196", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F197 = createParameter("f197", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F198 = createParameter("f198", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F199 = createParameter("f199", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F200 = createParameter("f200", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F201 = createParameter("f201", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F202 = createParameter("f202", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F203 = createParameter("f203", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F204 = createParameter("f204", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F205 = createParameter("f205", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F206 = createParameter("f206", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F207 = createParameter("f207", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F208 = createParameter("f208", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F209 = createParameter("f209", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F210 = createParameter("f210", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F211 = createParameter("f211", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F212 = createParameter("f212", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F213 = createParameter("f213", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F214 = createParameter("f214", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F215 = createParameter("f215", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F216 = createParameter("f216", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F217 = createParameter("f217", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F218 = createParameter("f218", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F219 = createParameter("f219", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F220 = createParameter("f220", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F221 = createParameter("f221", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F222 = createParameter("f222", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F223 = createParameter("f223", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F224 = createParameter("f224", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F225 = createParameter("f225", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F226 = createParameter("f226", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F227 = createParameter("f227", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F228 = createParameter("f228", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F229 = createParameter("f229", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F230 = createParameter("f230", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F231 = createParameter("f231", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F232 = createParameter("f232", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F233 = createParameter("f233", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F234 = createParameter("f234", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F235 = createParameter("f235", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F236 = createParameter("f236", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F237 = createParameter("f237", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F238 = createParameter("f238", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F239 = createParameter("f239", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F240 = createParameter("f240", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F241 = createParameter("f241", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F242 = createParameter("f242", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F243 = createParameter("f243", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F244 = createParameter("f244", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F245 = createParameter("f245", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F246 = createParameter("f246", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F247 = createParameter("f247", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F248 = createParameter("f248", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F249 = createParameter("f249", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F250 = createParameter("f250", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F251 = createParameter("f251", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F252 = createParameter("f252", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F253 = createParameter("f253", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F254 = createParameter("f254", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F255 = createParameter("f255", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F256 = createParameter("f256", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F257 = createParameter("f257", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F258 = createParameter("f258", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F259 = createParameter("f259", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F260 = createParameter("f260", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F261 = createParameter("f261", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F262 = createParameter("f262", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F263 = createParameter("f263", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F264 = createParameter("f264", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F265 = createParameter("f265", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F266 = createParameter("f266", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F267 = createParameter("f267", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F268 = createParameter("f268", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F269 = createParameter("f269", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F270 = createParameter("f270", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F271 = createParameter("f271", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F272 = createParameter("f272", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F273 = createParameter("f273", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F274 = createParameter("f274", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F275 = createParameter("f275", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F276 = createParameter("f276", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F277 = createParameter("f277", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F278 = createParameter("f278", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F279 = createParameter("f279", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F280 = createParameter("f280", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F281 = createParameter("f281", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F282 = createParameter("f282", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F283 = createParameter("f283", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F284 = createParameter("f284", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F285 = createParameter("f285", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F286 = createParameter("f286", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F287 = createParameter("f287", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F288 = createParameter("f288", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F289 = createParameter("f289", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F290 = createParameter("f290", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F291 = createParameter("f291", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F292 = createParameter("f292", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F293 = createParameter("f293", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F294 = createParameter("f294", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F295 = createParameter("f295", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F296 = createParameter("f296", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F297 = createParameter("f297", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F298 = createParameter("f298", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F299 = createParameter("f299", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F300 = createParameter("f300", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F301 = createParameter("f301", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F302 = createParameter("f302", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F303 = createParameter("f303", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F304 = createParameter("f304", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F305 = createParameter("f305", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F306 = createParameter("f306", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F307 = createParameter("f307", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F308 = createParameter("f308", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F309 = createParameter("f309", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F310 = createParameter("f310", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F311 = createParameter("f311", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F312 = createParameter("f312", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F313 = createParameter("f313", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F314 = createParameter("f314", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F315 = createParameter("f315", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F316 = createParameter("f316", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F317 = createParameter("f317", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F318 = createParameter("f318", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F319 = createParameter("f319", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F320 = createParameter("f320", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F321 = createParameter("f321", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F322 = createParameter("f322", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F323 = createParameter("f323", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F324 = createParameter("f324", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F325 = createParameter("f325", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F326 = createParameter("f326", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F327 = createParameter("f327", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F328 = createParameter("f328", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F329 = createParameter("f329", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F330 = createParameter("f330", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F331 = createParameter("f331", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F332 = createParameter("f332", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F333 = createParameter("f333", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F334 = createParameter("f334", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F335 = createParameter("f335", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F336 = createParameter("f336", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F337 = createParameter("f337", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F338 = createParameter("f338", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F339 = createParameter("f339", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F340 = createParameter("f340", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F341 = createParameter("f341", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F342 = createParameter("f342", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F343 = createParameter("f343", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F344 = createParameter("f344", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F345 = createParameter("f345", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F346 = createParameter("f346", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F347 = createParameter("f347", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F348 = createParameter("f348", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F349 = createParameter("f349", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F350 = createParameter("f350", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F351 = createParameter("f351", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F352 = createParameter("f352", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F353 = createParameter("f353", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F354 = createParameter("f354", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F355 = createParameter("f355", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F356 = createParameter("f356", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F357 = createParameter("f357", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F358 = createParameter("f358", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F359 = createParameter("f359", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F360 = createParameter("f360", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F361 = createParameter("f361", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F362 = createParameter("f362", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F363 = createParameter("f363", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F364 = createParameter("f364", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F365 = createParameter("f365", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F366 = createParameter("f366", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F367 = createParameter("f367", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F368 = createParameter("f368", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F369 = createParameter("f369", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F370 = createParameter("f370", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F371 = createParameter("f371", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F372 = createParameter("f372", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F373 = createParameter("f373", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F374 = createParameter("f374", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F375 = createParameter("f375", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F376 = createParameter("f376", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F377 = createParameter("f377", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F378 = createParameter("f378", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F379 = createParameter("f379", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F380 = createParameter("f380", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F381 = createParameter("f381", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F382 = createParameter("f382", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F383 = createParameter("f383", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F384 = createParameter("f384", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F385 = createParameter("f385", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F386 = createParameter("f386", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F387 = createParameter("f387", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F388 = createParameter("f388", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F389 = createParameter("f389", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F390 = createParameter("f390", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F391 = createParameter("f391", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F392 = createParameter("f392", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F393 = createParameter("f393", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F394 = createParameter("f394", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F395 = createParameter("f395", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F396 = createParameter("f396", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F397 = createParameter("f397", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F398 = createParameter("f398", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F399 = createParameter("f399", org.jooq.impl.SQLDataType.INTEGER); + + /** + * Create a new routine call instance + */ + public FManyParameters() { + super("f_many_parameters", org.jooq.test.sqlserver.generatedclasses.Dbo.DBO, org.jooq.impl.SQLDataType.INTEGER); + + setReturnParameter(RETURN_VALUE); + addInParameter(F000); + addInParameter(F001); + addInParameter(F002); + addInParameter(F003); + addInParameter(F004); + addInParameter(F005); + addInParameter(F006); + addInParameter(F007); + addInParameter(F008); + addInParameter(F009); + addInParameter(F010); + addInParameter(F011); + addInParameter(F012); + addInParameter(F013); + addInParameter(F014); + addInParameter(F015); + addInParameter(F016); + addInParameter(F017); + addInParameter(F018); + addInParameter(F019); + addInParameter(F020); + addInParameter(F021); + addInParameter(F022); + addInParameter(F023); + addInParameter(F024); + addInParameter(F025); + addInParameter(F026); + addInParameter(F027); + addInParameter(F028); + addInParameter(F029); + addInParameter(F030); + addInParameter(F031); + addInParameter(F032); + addInParameter(F033); + addInParameter(F034); + addInParameter(F035); + addInParameter(F036); + addInParameter(F037); + addInParameter(F038); + addInParameter(F039); + addInParameter(F040); + addInParameter(F041); + addInParameter(F042); + addInParameter(F043); + addInParameter(F044); + addInParameter(F045); + addInParameter(F046); + addInParameter(F047); + addInParameter(F048); + addInParameter(F049); + addInParameter(F050); + addInParameter(F051); + addInParameter(F052); + addInParameter(F053); + addInParameter(F054); + addInParameter(F055); + addInParameter(F056); + addInParameter(F057); + addInParameter(F058); + addInParameter(F059); + addInParameter(F060); + addInParameter(F061); + addInParameter(F062); + addInParameter(F063); + addInParameter(F064); + addInParameter(F065); + addInParameter(F066); + addInParameter(F067); + addInParameter(F068); + addInParameter(F069); + addInParameter(F070); + addInParameter(F071); + addInParameter(F072); + addInParameter(F073); + addInParameter(F074); + addInParameter(F075); + addInParameter(F076); + addInParameter(F077); + addInParameter(F078); + addInParameter(F079); + addInParameter(F080); + addInParameter(F081); + addInParameter(F082); + addInParameter(F083); + addInParameter(F084); + addInParameter(F085); + addInParameter(F086); + addInParameter(F087); + addInParameter(F088); + addInParameter(F089); + addInParameter(F090); + addInParameter(F091); + addInParameter(F092); + addInParameter(F093); + addInParameter(F094); + addInParameter(F095); + addInParameter(F096); + addInParameter(F097); + addInParameter(F098); + addInParameter(F099); + addInParameter(F100); + addInParameter(F101); + addInParameter(F102); + addInParameter(F103); + addInParameter(F104); + addInParameter(F105); + addInParameter(F106); + addInParameter(F107); + addInParameter(F108); + addInParameter(F109); + addInParameter(F110); + addInParameter(F111); + addInParameter(F112); + addInParameter(F113); + addInParameter(F114); + addInParameter(F115); + addInParameter(F116); + addInParameter(F117); + addInParameter(F118); + addInParameter(F119); + addInParameter(F120); + addInParameter(F121); + addInParameter(F122); + addInParameter(F123); + addInParameter(F124); + addInParameter(F125); + addInParameter(F126); + addInParameter(F127); + addInParameter(F128); + addInParameter(F129); + addInParameter(F130); + addInParameter(F131); + addInParameter(F132); + addInParameter(F133); + addInParameter(F134); + addInParameter(F135); + addInParameter(F136); + addInParameter(F137); + addInParameter(F138); + addInParameter(F139); + addInParameter(F140); + addInParameter(F141); + addInParameter(F142); + addInParameter(F143); + addInParameter(F144); + addInParameter(F145); + addInParameter(F146); + addInParameter(F147); + addInParameter(F148); + addInParameter(F149); + addInParameter(F150); + addInParameter(F151); + addInParameter(F152); + addInParameter(F153); + addInParameter(F154); + addInParameter(F155); + addInParameter(F156); + addInParameter(F157); + addInParameter(F158); + addInParameter(F159); + addInParameter(F160); + addInParameter(F161); + addInParameter(F162); + addInParameter(F163); + addInParameter(F164); + addInParameter(F165); + addInParameter(F166); + addInParameter(F167); + addInParameter(F168); + addInParameter(F169); + addInParameter(F170); + addInParameter(F171); + addInParameter(F172); + addInParameter(F173); + addInParameter(F174); + addInParameter(F175); + addInParameter(F176); + addInParameter(F177); + addInParameter(F178); + addInParameter(F179); + addInParameter(F180); + addInParameter(F181); + addInParameter(F182); + addInParameter(F183); + addInParameter(F184); + addInParameter(F185); + addInParameter(F186); + addInParameter(F187); + addInParameter(F188); + addInParameter(F189); + addInParameter(F190); + addInParameter(F191); + addInParameter(F192); + addInParameter(F193); + addInParameter(F194); + addInParameter(F195); + addInParameter(F196); + addInParameter(F197); + addInParameter(F198); + addInParameter(F199); + addInParameter(F200); + addInParameter(F201); + addInParameter(F202); + addInParameter(F203); + addInParameter(F204); + addInParameter(F205); + addInParameter(F206); + addInParameter(F207); + addInParameter(F208); + addInParameter(F209); + addInParameter(F210); + addInParameter(F211); + addInParameter(F212); + addInParameter(F213); + addInParameter(F214); + addInParameter(F215); + addInParameter(F216); + addInParameter(F217); + addInParameter(F218); + addInParameter(F219); + addInParameter(F220); + addInParameter(F221); + addInParameter(F222); + addInParameter(F223); + addInParameter(F224); + addInParameter(F225); + addInParameter(F226); + addInParameter(F227); + addInParameter(F228); + addInParameter(F229); + addInParameter(F230); + addInParameter(F231); + addInParameter(F232); + addInParameter(F233); + addInParameter(F234); + addInParameter(F235); + addInParameter(F236); + addInParameter(F237); + addInParameter(F238); + addInParameter(F239); + addInParameter(F240); + addInParameter(F241); + addInParameter(F242); + addInParameter(F243); + addInParameter(F244); + addInParameter(F245); + addInParameter(F246); + addInParameter(F247); + addInParameter(F248); + addInParameter(F249); + addInParameter(F250); + addInParameter(F251); + addInParameter(F252); + addInParameter(F253); + addInParameter(F254); + addInParameter(F255); + addInParameter(F256); + addInParameter(F257); + addInParameter(F258); + addInParameter(F259); + addInParameter(F260); + addInParameter(F261); + addInParameter(F262); + addInParameter(F263); + addInParameter(F264); + addInParameter(F265); + addInParameter(F266); + addInParameter(F267); + addInParameter(F268); + addInParameter(F269); + addInParameter(F270); + addInParameter(F271); + addInParameter(F272); + addInParameter(F273); + addInParameter(F274); + addInParameter(F275); + addInParameter(F276); + addInParameter(F277); + addInParameter(F278); + addInParameter(F279); + addInParameter(F280); + addInParameter(F281); + addInParameter(F282); + addInParameter(F283); + addInParameter(F284); + addInParameter(F285); + addInParameter(F286); + addInParameter(F287); + addInParameter(F288); + addInParameter(F289); + addInParameter(F290); + addInParameter(F291); + addInParameter(F292); + addInParameter(F293); + addInParameter(F294); + addInParameter(F295); + addInParameter(F296); + addInParameter(F297); + addInParameter(F298); + addInParameter(F299); + addInParameter(F300); + addInParameter(F301); + addInParameter(F302); + addInParameter(F303); + addInParameter(F304); + addInParameter(F305); + addInParameter(F306); + addInParameter(F307); + addInParameter(F308); + addInParameter(F309); + addInParameter(F310); + addInParameter(F311); + addInParameter(F312); + addInParameter(F313); + addInParameter(F314); + addInParameter(F315); + addInParameter(F316); + addInParameter(F317); + addInParameter(F318); + addInParameter(F319); + addInParameter(F320); + addInParameter(F321); + addInParameter(F322); + addInParameter(F323); + addInParameter(F324); + addInParameter(F325); + addInParameter(F326); + addInParameter(F327); + addInParameter(F328); + addInParameter(F329); + addInParameter(F330); + addInParameter(F331); + addInParameter(F332); + addInParameter(F333); + addInParameter(F334); + addInParameter(F335); + addInParameter(F336); + addInParameter(F337); + addInParameter(F338); + addInParameter(F339); + addInParameter(F340); + addInParameter(F341); + addInParameter(F342); + addInParameter(F343); + addInParameter(F344); + addInParameter(F345); + addInParameter(F346); + addInParameter(F347); + addInParameter(F348); + addInParameter(F349); + addInParameter(F350); + addInParameter(F351); + addInParameter(F352); + addInParameter(F353); + addInParameter(F354); + addInParameter(F355); + addInParameter(F356); + addInParameter(F357); + addInParameter(F358); + addInParameter(F359); + addInParameter(F360); + addInParameter(F361); + addInParameter(F362); + addInParameter(F363); + addInParameter(F364); + addInParameter(F365); + addInParameter(F366); + addInParameter(F367); + addInParameter(F368); + addInParameter(F369); + addInParameter(F370); + addInParameter(F371); + addInParameter(F372); + addInParameter(F373); + addInParameter(F374); + addInParameter(F375); + addInParameter(F376); + addInParameter(F377); + addInParameter(F378); + addInParameter(F379); + addInParameter(F380); + addInParameter(F381); + addInParameter(F382); + addInParameter(F383); + addInParameter(F384); + addInParameter(F385); + addInParameter(F386); + addInParameter(F387); + addInParameter(F388); + addInParameter(F389); + addInParameter(F390); + addInParameter(F391); + addInParameter(F392); + addInParameter(F393); + addInParameter(F394); + addInParameter(F395); + addInParameter(F396); + addInParameter(F397); + addInParameter(F398); + addInParameter(F399); + } + + /** + * Set the f000 parameter to the routine + */ + public void setF000(java.lang.Integer value) { + setValue(F000, value); + } + + /** + * Set the f000 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF000(org.jooq.Field field) { + setField(F000, field); + } + + /** + * Set the f001 parameter to the routine + */ + public void setF001(java.lang.Integer value) { + setValue(F001, value); + } + + /** + * Set the f001 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF001(org.jooq.Field field) { + setField(F001, field); + } + + /** + * Set the f002 parameter to the routine + */ + public void setF002(java.lang.Integer value) { + setValue(F002, value); + } + + /** + * Set the f002 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF002(org.jooq.Field field) { + setField(F002, field); + } + + /** + * Set the f003 parameter to the routine + */ + public void setF003(java.lang.Integer value) { + setValue(F003, value); + } + + /** + * Set the f003 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF003(org.jooq.Field field) { + setField(F003, field); + } + + /** + * Set the f004 parameter to the routine + */ + public void setF004(java.lang.Integer value) { + setValue(F004, value); + } + + /** + * Set the f004 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF004(org.jooq.Field field) { + setField(F004, field); + } + + /** + * Set the f005 parameter to the routine + */ + public void setF005(java.lang.Integer value) { + setValue(F005, value); + } + + /** + * Set the f005 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF005(org.jooq.Field field) { + setField(F005, field); + } + + /** + * Set the f006 parameter to the routine + */ + public void setF006(java.lang.Integer value) { + setValue(F006, value); + } + + /** + * Set the f006 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF006(org.jooq.Field field) { + setField(F006, field); + } + + /** + * Set the f007 parameter to the routine + */ + public void setF007(java.lang.Integer value) { + setValue(F007, value); + } + + /** + * Set the f007 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF007(org.jooq.Field field) { + setField(F007, field); + } + + /** + * Set the f008 parameter to the routine + */ + public void setF008(java.lang.Integer value) { + setValue(F008, value); + } + + /** + * Set the f008 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF008(org.jooq.Field field) { + setField(F008, field); + } + + /** + * Set the f009 parameter to the routine + */ + public void setF009(java.lang.Integer value) { + setValue(F009, value); + } + + /** + * Set the f009 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF009(org.jooq.Field field) { + setField(F009, field); + } + + /** + * Set the f010 parameter to the routine + */ + public void setF010(java.lang.Integer value) { + setValue(F010, value); + } + + /** + * Set the f010 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF010(org.jooq.Field field) { + setField(F010, field); + } + + /** + * Set the f011 parameter to the routine + */ + public void setF011(java.lang.Integer value) { + setValue(F011, value); + } + + /** + * Set the f011 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF011(org.jooq.Field field) { + setField(F011, field); + } + + /** + * Set the f012 parameter to the routine + */ + public void setF012(java.lang.Integer value) { + setValue(F012, value); + } + + /** + * Set the f012 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF012(org.jooq.Field field) { + setField(F012, field); + } + + /** + * Set the f013 parameter to the routine + */ + public void setF013(java.lang.Integer value) { + setValue(F013, value); + } + + /** + * Set the f013 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF013(org.jooq.Field field) { + setField(F013, field); + } + + /** + * Set the f014 parameter to the routine + */ + public void setF014(java.lang.Integer value) { + setValue(F014, value); + } + + /** + * Set the f014 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF014(org.jooq.Field field) { + setField(F014, field); + } + + /** + * Set the f015 parameter to the routine + */ + public void setF015(java.lang.Integer value) { + setValue(F015, value); + } + + /** + * Set the f015 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF015(org.jooq.Field field) { + setField(F015, field); + } + + /** + * Set the f016 parameter to the routine + */ + public void setF016(java.lang.Integer value) { + setValue(F016, value); + } + + /** + * Set the f016 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF016(org.jooq.Field field) { + setField(F016, field); + } + + /** + * Set the f017 parameter to the routine + */ + public void setF017(java.lang.Integer value) { + setValue(F017, value); + } + + /** + * Set the f017 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF017(org.jooq.Field field) { + setField(F017, field); + } + + /** + * Set the f018 parameter to the routine + */ + public void setF018(java.lang.Integer value) { + setValue(F018, value); + } + + /** + * Set the f018 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF018(org.jooq.Field field) { + setField(F018, field); + } + + /** + * Set the f019 parameter to the routine + */ + public void setF019(java.lang.Integer value) { + setValue(F019, value); + } + + /** + * Set the f019 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF019(org.jooq.Field field) { + setField(F019, field); + } + + /** + * Set the f020 parameter to the routine + */ + public void setF020(java.lang.Integer value) { + setValue(F020, value); + } + + /** + * Set the f020 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF020(org.jooq.Field field) { + setField(F020, field); + } + + /** + * Set the f021 parameter to the routine + */ + public void setF021(java.lang.Integer value) { + setValue(F021, value); + } + + /** + * Set the f021 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF021(org.jooq.Field field) { + setField(F021, field); + } + + /** + * Set the f022 parameter to the routine + */ + public void setF022(java.lang.Integer value) { + setValue(F022, value); + } + + /** + * Set the f022 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF022(org.jooq.Field field) { + setField(F022, field); + } + + /** + * Set the f023 parameter to the routine + */ + public void setF023(java.lang.Integer value) { + setValue(F023, value); + } + + /** + * Set the f023 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF023(org.jooq.Field field) { + setField(F023, field); + } + + /** + * Set the f024 parameter to the routine + */ + public void setF024(java.lang.Integer value) { + setValue(F024, value); + } + + /** + * Set the f024 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF024(org.jooq.Field field) { + setField(F024, field); + } + + /** + * Set the f025 parameter to the routine + */ + public void setF025(java.lang.Integer value) { + setValue(F025, value); + } + + /** + * Set the f025 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF025(org.jooq.Field field) { + setField(F025, field); + } + + /** + * Set the f026 parameter to the routine + */ + public void setF026(java.lang.Integer value) { + setValue(F026, value); + } + + /** + * Set the f026 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF026(org.jooq.Field field) { + setField(F026, field); + } + + /** + * Set the f027 parameter to the routine + */ + public void setF027(java.lang.Integer value) { + setValue(F027, value); + } + + /** + * Set the f027 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF027(org.jooq.Field field) { + setField(F027, field); + } + + /** + * Set the f028 parameter to the routine + */ + public void setF028(java.lang.Integer value) { + setValue(F028, value); + } + + /** + * Set the f028 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF028(org.jooq.Field field) { + setField(F028, field); + } + + /** + * Set the f029 parameter to the routine + */ + public void setF029(java.lang.Integer value) { + setValue(F029, value); + } + + /** + * Set the f029 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF029(org.jooq.Field field) { + setField(F029, field); + } + + /** + * Set the f030 parameter to the routine + */ + public void setF030(java.lang.Integer value) { + setValue(F030, value); + } + + /** + * Set the f030 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF030(org.jooq.Field field) { + setField(F030, field); + } + + /** + * Set the f031 parameter to the routine + */ + public void setF031(java.lang.Integer value) { + setValue(F031, value); + } + + /** + * Set the f031 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF031(org.jooq.Field field) { + setField(F031, field); + } + + /** + * Set the f032 parameter to the routine + */ + public void setF032(java.lang.Integer value) { + setValue(F032, value); + } + + /** + * Set the f032 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF032(org.jooq.Field field) { + setField(F032, field); + } + + /** + * Set the f033 parameter to the routine + */ + public void setF033(java.lang.Integer value) { + setValue(F033, value); + } + + /** + * Set the f033 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF033(org.jooq.Field field) { + setField(F033, field); + } + + /** + * Set the f034 parameter to the routine + */ + public void setF034(java.lang.Integer value) { + setValue(F034, value); + } + + /** + * Set the f034 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF034(org.jooq.Field field) { + setField(F034, field); + } + + /** + * Set the f035 parameter to the routine + */ + public void setF035(java.lang.Integer value) { + setValue(F035, value); + } + + /** + * Set the f035 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF035(org.jooq.Field field) { + setField(F035, field); + } + + /** + * Set the f036 parameter to the routine + */ + public void setF036(java.lang.Integer value) { + setValue(F036, value); + } + + /** + * Set the f036 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF036(org.jooq.Field field) { + setField(F036, field); + } + + /** + * Set the f037 parameter to the routine + */ + public void setF037(java.lang.Integer value) { + setValue(F037, value); + } + + /** + * Set the f037 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF037(org.jooq.Field field) { + setField(F037, field); + } + + /** + * Set the f038 parameter to the routine + */ + public void setF038(java.lang.Integer value) { + setValue(F038, value); + } + + /** + * Set the f038 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF038(org.jooq.Field field) { + setField(F038, field); + } + + /** + * Set the f039 parameter to the routine + */ + public void setF039(java.lang.Integer value) { + setValue(F039, value); + } + + /** + * Set the f039 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF039(org.jooq.Field field) { + setField(F039, field); + } + + /** + * Set the f040 parameter to the routine + */ + public void setF040(java.lang.Integer value) { + setValue(F040, value); + } + + /** + * Set the f040 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF040(org.jooq.Field field) { + setField(F040, field); + } + + /** + * Set the f041 parameter to the routine + */ + public void setF041(java.lang.Integer value) { + setValue(F041, value); + } + + /** + * Set the f041 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF041(org.jooq.Field field) { + setField(F041, field); + } + + /** + * Set the f042 parameter to the routine + */ + public void setF042(java.lang.Integer value) { + setValue(F042, value); + } + + /** + * Set the f042 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF042(org.jooq.Field field) { + setField(F042, field); + } + + /** + * Set the f043 parameter to the routine + */ + public void setF043(java.lang.Integer value) { + setValue(F043, value); + } + + /** + * Set the f043 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF043(org.jooq.Field field) { + setField(F043, field); + } + + /** + * Set the f044 parameter to the routine + */ + public void setF044(java.lang.Integer value) { + setValue(F044, value); + } + + /** + * Set the f044 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF044(org.jooq.Field field) { + setField(F044, field); + } + + /** + * Set the f045 parameter to the routine + */ + public void setF045(java.lang.Integer value) { + setValue(F045, value); + } + + /** + * Set the f045 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF045(org.jooq.Field field) { + setField(F045, field); + } + + /** + * Set the f046 parameter to the routine + */ + public void setF046(java.lang.Integer value) { + setValue(F046, value); + } + + /** + * Set the f046 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF046(org.jooq.Field field) { + setField(F046, field); + } + + /** + * Set the f047 parameter to the routine + */ + public void setF047(java.lang.Integer value) { + setValue(F047, value); + } + + /** + * Set the f047 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF047(org.jooq.Field field) { + setField(F047, field); + } + + /** + * Set the f048 parameter to the routine + */ + public void setF048(java.lang.Integer value) { + setValue(F048, value); + } + + /** + * Set the f048 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF048(org.jooq.Field field) { + setField(F048, field); + } + + /** + * Set the f049 parameter to the routine + */ + public void setF049(java.lang.Integer value) { + setValue(F049, value); + } + + /** + * Set the f049 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF049(org.jooq.Field field) { + setField(F049, field); + } + + /** + * Set the f050 parameter to the routine + */ + public void setF050(java.lang.Integer value) { + setValue(F050, value); + } + + /** + * Set the f050 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF050(org.jooq.Field field) { + setField(F050, field); + } + + /** + * Set the f051 parameter to the routine + */ + public void setF051(java.lang.Integer value) { + setValue(F051, value); + } + + /** + * Set the f051 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF051(org.jooq.Field field) { + setField(F051, field); + } + + /** + * Set the f052 parameter to the routine + */ + public void setF052(java.lang.Integer value) { + setValue(F052, value); + } + + /** + * Set the f052 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF052(org.jooq.Field field) { + setField(F052, field); + } + + /** + * Set the f053 parameter to the routine + */ + public void setF053(java.lang.Integer value) { + setValue(F053, value); + } + + /** + * Set the f053 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF053(org.jooq.Field field) { + setField(F053, field); + } + + /** + * Set the f054 parameter to the routine + */ + public void setF054(java.lang.Integer value) { + setValue(F054, value); + } + + /** + * Set the f054 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF054(org.jooq.Field field) { + setField(F054, field); + } + + /** + * Set the f055 parameter to the routine + */ + public void setF055(java.lang.Integer value) { + setValue(F055, value); + } + + /** + * Set the f055 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF055(org.jooq.Field field) { + setField(F055, field); + } + + /** + * Set the f056 parameter to the routine + */ + public void setF056(java.lang.Integer value) { + setValue(F056, value); + } + + /** + * Set the f056 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF056(org.jooq.Field field) { + setField(F056, field); + } + + /** + * Set the f057 parameter to the routine + */ + public void setF057(java.lang.Integer value) { + setValue(F057, value); + } + + /** + * Set the f057 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF057(org.jooq.Field field) { + setField(F057, field); + } + + /** + * Set the f058 parameter to the routine + */ + public void setF058(java.lang.Integer value) { + setValue(F058, value); + } + + /** + * Set the f058 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF058(org.jooq.Field field) { + setField(F058, field); + } + + /** + * Set the f059 parameter to the routine + */ + public void setF059(java.lang.Integer value) { + setValue(F059, value); + } + + /** + * Set the f059 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF059(org.jooq.Field field) { + setField(F059, field); + } + + /** + * Set the f060 parameter to the routine + */ + public void setF060(java.lang.Integer value) { + setValue(F060, value); + } + + /** + * Set the f060 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF060(org.jooq.Field field) { + setField(F060, field); + } + + /** + * Set the f061 parameter to the routine + */ + public void setF061(java.lang.Integer value) { + setValue(F061, value); + } + + /** + * Set the f061 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF061(org.jooq.Field field) { + setField(F061, field); + } + + /** + * Set the f062 parameter to the routine + */ + public void setF062(java.lang.Integer value) { + setValue(F062, value); + } + + /** + * Set the f062 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF062(org.jooq.Field field) { + setField(F062, field); + } + + /** + * Set the f063 parameter to the routine + */ + public void setF063(java.lang.Integer value) { + setValue(F063, value); + } + + /** + * Set the f063 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF063(org.jooq.Field field) { + setField(F063, field); + } + + /** + * Set the f064 parameter to the routine + */ + public void setF064(java.lang.Integer value) { + setValue(F064, value); + } + + /** + * Set the f064 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF064(org.jooq.Field field) { + setField(F064, field); + } + + /** + * Set the f065 parameter to the routine + */ + public void setF065(java.lang.Integer value) { + setValue(F065, value); + } + + /** + * Set the f065 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF065(org.jooq.Field field) { + setField(F065, field); + } + + /** + * Set the f066 parameter to the routine + */ + public void setF066(java.lang.Integer value) { + setValue(F066, value); + } + + /** + * Set the f066 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF066(org.jooq.Field field) { + setField(F066, field); + } + + /** + * Set the f067 parameter to the routine + */ + public void setF067(java.lang.Integer value) { + setValue(F067, value); + } + + /** + * Set the f067 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF067(org.jooq.Field field) { + setField(F067, field); + } + + /** + * Set the f068 parameter to the routine + */ + public void setF068(java.lang.Integer value) { + setValue(F068, value); + } + + /** + * Set the f068 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF068(org.jooq.Field field) { + setField(F068, field); + } + + /** + * Set the f069 parameter to the routine + */ + public void setF069(java.lang.Integer value) { + setValue(F069, value); + } + + /** + * Set the f069 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF069(org.jooq.Field field) { + setField(F069, field); + } + + /** + * Set the f070 parameter to the routine + */ + public void setF070(java.lang.Integer value) { + setValue(F070, value); + } + + /** + * Set the f070 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF070(org.jooq.Field field) { + setField(F070, field); + } + + /** + * Set the f071 parameter to the routine + */ + public void setF071(java.lang.Integer value) { + setValue(F071, value); + } + + /** + * Set the f071 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF071(org.jooq.Field field) { + setField(F071, field); + } + + /** + * Set the f072 parameter to the routine + */ + public void setF072(java.lang.Integer value) { + setValue(F072, value); + } + + /** + * Set the f072 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF072(org.jooq.Field field) { + setField(F072, field); + } + + /** + * Set the f073 parameter to the routine + */ + public void setF073(java.lang.Integer value) { + setValue(F073, value); + } + + /** + * Set the f073 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF073(org.jooq.Field field) { + setField(F073, field); + } + + /** + * Set the f074 parameter to the routine + */ + public void setF074(java.lang.Integer value) { + setValue(F074, value); + } + + /** + * Set the f074 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF074(org.jooq.Field field) { + setField(F074, field); + } + + /** + * Set the f075 parameter to the routine + */ + public void setF075(java.lang.Integer value) { + setValue(F075, value); + } + + /** + * Set the f075 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF075(org.jooq.Field field) { + setField(F075, field); + } + + /** + * Set the f076 parameter to the routine + */ + public void setF076(java.lang.Integer value) { + setValue(F076, value); + } + + /** + * Set the f076 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF076(org.jooq.Field field) { + setField(F076, field); + } + + /** + * Set the f077 parameter to the routine + */ + public void setF077(java.lang.Integer value) { + setValue(F077, value); + } + + /** + * Set the f077 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF077(org.jooq.Field field) { + setField(F077, field); + } + + /** + * Set the f078 parameter to the routine + */ + public void setF078(java.lang.Integer value) { + setValue(F078, value); + } + + /** + * Set the f078 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF078(org.jooq.Field field) { + setField(F078, field); + } + + /** + * Set the f079 parameter to the routine + */ + public void setF079(java.lang.Integer value) { + setValue(F079, value); + } + + /** + * Set the f079 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF079(org.jooq.Field field) { + setField(F079, field); + } + + /** + * Set the f080 parameter to the routine + */ + public void setF080(java.lang.Integer value) { + setValue(F080, value); + } + + /** + * Set the f080 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF080(org.jooq.Field field) { + setField(F080, field); + } + + /** + * Set the f081 parameter to the routine + */ + public void setF081(java.lang.Integer value) { + setValue(F081, value); + } + + /** + * Set the f081 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF081(org.jooq.Field field) { + setField(F081, field); + } + + /** + * Set the f082 parameter to the routine + */ + public void setF082(java.lang.Integer value) { + setValue(F082, value); + } + + /** + * Set the f082 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF082(org.jooq.Field field) { + setField(F082, field); + } + + /** + * Set the f083 parameter to the routine + */ + public void setF083(java.lang.Integer value) { + setValue(F083, value); + } + + /** + * Set the f083 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF083(org.jooq.Field field) { + setField(F083, field); + } + + /** + * Set the f084 parameter to the routine + */ + public void setF084(java.lang.Integer value) { + setValue(F084, value); + } + + /** + * Set the f084 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF084(org.jooq.Field field) { + setField(F084, field); + } + + /** + * Set the f085 parameter to the routine + */ + public void setF085(java.lang.Integer value) { + setValue(F085, value); + } + + /** + * Set the f085 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF085(org.jooq.Field field) { + setField(F085, field); + } + + /** + * Set the f086 parameter to the routine + */ + public void setF086(java.lang.Integer value) { + setValue(F086, value); + } + + /** + * Set the f086 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF086(org.jooq.Field field) { + setField(F086, field); + } + + /** + * Set the f087 parameter to the routine + */ + public void setF087(java.lang.Integer value) { + setValue(F087, value); + } + + /** + * Set the f087 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF087(org.jooq.Field field) { + setField(F087, field); + } + + /** + * Set the f088 parameter to the routine + */ + public void setF088(java.lang.Integer value) { + setValue(F088, value); + } + + /** + * Set the f088 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF088(org.jooq.Field field) { + setField(F088, field); + } + + /** + * Set the f089 parameter to the routine + */ + public void setF089(java.lang.Integer value) { + setValue(F089, value); + } + + /** + * Set the f089 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF089(org.jooq.Field field) { + setField(F089, field); + } + + /** + * Set the f090 parameter to the routine + */ + public void setF090(java.lang.Integer value) { + setValue(F090, value); + } + + /** + * Set the f090 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF090(org.jooq.Field field) { + setField(F090, field); + } + + /** + * Set the f091 parameter to the routine + */ + public void setF091(java.lang.Integer value) { + setValue(F091, value); + } + + /** + * Set the f091 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF091(org.jooq.Field field) { + setField(F091, field); + } + + /** + * Set the f092 parameter to the routine + */ + public void setF092(java.lang.Integer value) { + setValue(F092, value); + } + + /** + * Set the f092 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF092(org.jooq.Field field) { + setField(F092, field); + } + + /** + * Set the f093 parameter to the routine + */ + public void setF093(java.lang.Integer value) { + setValue(F093, value); + } + + /** + * Set the f093 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF093(org.jooq.Field field) { + setField(F093, field); + } + + /** + * Set the f094 parameter to the routine + */ + public void setF094(java.lang.Integer value) { + setValue(F094, value); + } + + /** + * Set the f094 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF094(org.jooq.Field field) { + setField(F094, field); + } + + /** + * Set the f095 parameter to the routine + */ + public void setF095(java.lang.Integer value) { + setValue(F095, value); + } + + /** + * Set the f095 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF095(org.jooq.Field field) { + setField(F095, field); + } + + /** + * Set the f096 parameter to the routine + */ + public void setF096(java.lang.Integer value) { + setValue(F096, value); + } + + /** + * Set the f096 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF096(org.jooq.Field field) { + setField(F096, field); + } + + /** + * Set the f097 parameter to the routine + */ + public void setF097(java.lang.Integer value) { + setValue(F097, value); + } + + /** + * Set the f097 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF097(org.jooq.Field field) { + setField(F097, field); + } + + /** + * Set the f098 parameter to the routine + */ + public void setF098(java.lang.Integer value) { + setValue(F098, value); + } + + /** + * Set the f098 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF098(org.jooq.Field field) { + setField(F098, field); + } + + /** + * Set the f099 parameter to the routine + */ + public void setF099(java.lang.Integer value) { + setValue(F099, value); + } + + /** + * Set the f099 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF099(org.jooq.Field field) { + setField(F099, field); + } + + /** + * Set the f100 parameter to the routine + */ + public void setF100(java.lang.Integer value) { + setValue(F100, value); + } + + /** + * Set the f100 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF100(org.jooq.Field field) { + setField(F100, field); + } + + /** + * Set the f101 parameter to the routine + */ + public void setF101(java.lang.Integer value) { + setValue(F101, value); + } + + /** + * Set the f101 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF101(org.jooq.Field field) { + setField(F101, field); + } + + /** + * Set the f102 parameter to the routine + */ + public void setF102(java.lang.Integer value) { + setValue(F102, value); + } + + /** + * Set the f102 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF102(org.jooq.Field field) { + setField(F102, field); + } + + /** + * Set the f103 parameter to the routine + */ + public void setF103(java.lang.Integer value) { + setValue(F103, value); + } + + /** + * Set the f103 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF103(org.jooq.Field field) { + setField(F103, field); + } + + /** + * Set the f104 parameter to the routine + */ + public void setF104(java.lang.Integer value) { + setValue(F104, value); + } + + /** + * Set the f104 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF104(org.jooq.Field field) { + setField(F104, field); + } + + /** + * Set the f105 parameter to the routine + */ + public void setF105(java.lang.Integer value) { + setValue(F105, value); + } + + /** + * Set the f105 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF105(org.jooq.Field field) { + setField(F105, field); + } + + /** + * Set the f106 parameter to the routine + */ + public void setF106(java.lang.Integer value) { + setValue(F106, value); + } + + /** + * Set the f106 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF106(org.jooq.Field field) { + setField(F106, field); + } + + /** + * Set the f107 parameter to the routine + */ + public void setF107(java.lang.Integer value) { + setValue(F107, value); + } + + /** + * Set the f107 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF107(org.jooq.Field field) { + setField(F107, field); + } + + /** + * Set the f108 parameter to the routine + */ + public void setF108(java.lang.Integer value) { + setValue(F108, value); + } + + /** + * Set the f108 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF108(org.jooq.Field field) { + setField(F108, field); + } + + /** + * Set the f109 parameter to the routine + */ + public void setF109(java.lang.Integer value) { + setValue(F109, value); + } + + /** + * Set the f109 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF109(org.jooq.Field field) { + setField(F109, field); + } + + /** + * Set the f110 parameter to the routine + */ + public void setF110(java.lang.Integer value) { + setValue(F110, value); + } + + /** + * Set the f110 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF110(org.jooq.Field field) { + setField(F110, field); + } + + /** + * Set the f111 parameter to the routine + */ + public void setF111(java.lang.Integer value) { + setValue(F111, value); + } + + /** + * Set the f111 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF111(org.jooq.Field field) { + setField(F111, field); + } + + /** + * Set the f112 parameter to the routine + */ + public void setF112(java.lang.Integer value) { + setValue(F112, value); + } + + /** + * Set the f112 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF112(org.jooq.Field field) { + setField(F112, field); + } + + /** + * Set the f113 parameter to the routine + */ + public void setF113(java.lang.Integer value) { + setValue(F113, value); + } + + /** + * Set the f113 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF113(org.jooq.Field field) { + setField(F113, field); + } + + /** + * Set the f114 parameter to the routine + */ + public void setF114(java.lang.Integer value) { + setValue(F114, value); + } + + /** + * Set the f114 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF114(org.jooq.Field field) { + setField(F114, field); + } + + /** + * Set the f115 parameter to the routine + */ + public void setF115(java.lang.Integer value) { + setValue(F115, value); + } + + /** + * Set the f115 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF115(org.jooq.Field field) { + setField(F115, field); + } + + /** + * Set the f116 parameter to the routine + */ + public void setF116(java.lang.Integer value) { + setValue(F116, value); + } + + /** + * Set the f116 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF116(org.jooq.Field field) { + setField(F116, field); + } + + /** + * Set the f117 parameter to the routine + */ + public void setF117(java.lang.Integer value) { + setValue(F117, value); + } + + /** + * Set the f117 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF117(org.jooq.Field field) { + setField(F117, field); + } + + /** + * Set the f118 parameter to the routine + */ + public void setF118(java.lang.Integer value) { + setValue(F118, value); + } + + /** + * Set the f118 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF118(org.jooq.Field field) { + setField(F118, field); + } + + /** + * Set the f119 parameter to the routine + */ + public void setF119(java.lang.Integer value) { + setValue(F119, value); + } + + /** + * Set the f119 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF119(org.jooq.Field field) { + setField(F119, field); + } + + /** + * Set the f120 parameter to the routine + */ + public void setF120(java.lang.Integer value) { + setValue(F120, value); + } + + /** + * Set the f120 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF120(org.jooq.Field field) { + setField(F120, field); + } + + /** + * Set the f121 parameter to the routine + */ + public void setF121(java.lang.Integer value) { + setValue(F121, value); + } + + /** + * Set the f121 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF121(org.jooq.Field field) { + setField(F121, field); + } + + /** + * Set the f122 parameter to the routine + */ + public void setF122(java.lang.Integer value) { + setValue(F122, value); + } + + /** + * Set the f122 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF122(org.jooq.Field field) { + setField(F122, field); + } + + /** + * Set the f123 parameter to the routine + */ + public void setF123(java.lang.Integer value) { + setValue(F123, value); + } + + /** + * Set the f123 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF123(org.jooq.Field field) { + setField(F123, field); + } + + /** + * Set the f124 parameter to the routine + */ + public void setF124(java.lang.Integer value) { + setValue(F124, value); + } + + /** + * Set the f124 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF124(org.jooq.Field field) { + setField(F124, field); + } + + /** + * Set the f125 parameter to the routine + */ + public void setF125(java.lang.Integer value) { + setValue(F125, value); + } + + /** + * Set the f125 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF125(org.jooq.Field field) { + setField(F125, field); + } + + /** + * Set the f126 parameter to the routine + */ + public void setF126(java.lang.Integer value) { + setValue(F126, value); + } + + /** + * Set the f126 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF126(org.jooq.Field field) { + setField(F126, field); + } + + /** + * Set the f127 parameter to the routine + */ + public void setF127(java.lang.Integer value) { + setValue(F127, value); + } + + /** + * Set the f127 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF127(org.jooq.Field field) { + setField(F127, field); + } + + /** + * Set the f128 parameter to the routine + */ + public void setF128(java.lang.Integer value) { + setValue(F128, value); + } + + /** + * Set the f128 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF128(org.jooq.Field field) { + setField(F128, field); + } + + /** + * Set the f129 parameter to the routine + */ + public void setF129(java.lang.Integer value) { + setValue(F129, value); + } + + /** + * Set the f129 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF129(org.jooq.Field field) { + setField(F129, field); + } + + /** + * Set the f130 parameter to the routine + */ + public void setF130(java.lang.Integer value) { + setValue(F130, value); + } + + /** + * Set the f130 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF130(org.jooq.Field field) { + setField(F130, field); + } + + /** + * Set the f131 parameter to the routine + */ + public void setF131(java.lang.Integer value) { + setValue(F131, value); + } + + /** + * Set the f131 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF131(org.jooq.Field field) { + setField(F131, field); + } + + /** + * Set the f132 parameter to the routine + */ + public void setF132(java.lang.Integer value) { + setValue(F132, value); + } + + /** + * Set the f132 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF132(org.jooq.Field field) { + setField(F132, field); + } + + /** + * Set the f133 parameter to the routine + */ + public void setF133(java.lang.Integer value) { + setValue(F133, value); + } + + /** + * Set the f133 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF133(org.jooq.Field field) { + setField(F133, field); + } + + /** + * Set the f134 parameter to the routine + */ + public void setF134(java.lang.Integer value) { + setValue(F134, value); + } + + /** + * Set the f134 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF134(org.jooq.Field field) { + setField(F134, field); + } + + /** + * Set the f135 parameter to the routine + */ + public void setF135(java.lang.Integer value) { + setValue(F135, value); + } + + /** + * Set the f135 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF135(org.jooq.Field field) { + setField(F135, field); + } + + /** + * Set the f136 parameter to the routine + */ + public void setF136(java.lang.Integer value) { + setValue(F136, value); + } + + /** + * Set the f136 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF136(org.jooq.Field field) { + setField(F136, field); + } + + /** + * Set the f137 parameter to the routine + */ + public void setF137(java.lang.Integer value) { + setValue(F137, value); + } + + /** + * Set the f137 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF137(org.jooq.Field field) { + setField(F137, field); + } + + /** + * Set the f138 parameter to the routine + */ + public void setF138(java.lang.Integer value) { + setValue(F138, value); + } + + /** + * Set the f138 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF138(org.jooq.Field field) { + setField(F138, field); + } + + /** + * Set the f139 parameter to the routine + */ + public void setF139(java.lang.Integer value) { + setValue(F139, value); + } + + /** + * Set the f139 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF139(org.jooq.Field field) { + setField(F139, field); + } + + /** + * Set the f140 parameter to the routine + */ + public void setF140(java.lang.Integer value) { + setValue(F140, value); + } + + /** + * Set the f140 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF140(org.jooq.Field field) { + setField(F140, field); + } + + /** + * Set the f141 parameter to the routine + */ + public void setF141(java.lang.Integer value) { + setValue(F141, value); + } + + /** + * Set the f141 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF141(org.jooq.Field field) { + setField(F141, field); + } + + /** + * Set the f142 parameter to the routine + */ + public void setF142(java.lang.Integer value) { + setValue(F142, value); + } + + /** + * Set the f142 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF142(org.jooq.Field field) { + setField(F142, field); + } + + /** + * Set the f143 parameter to the routine + */ + public void setF143(java.lang.Integer value) { + setValue(F143, value); + } + + /** + * Set the f143 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF143(org.jooq.Field field) { + setField(F143, field); + } + + /** + * Set the f144 parameter to the routine + */ + public void setF144(java.lang.Integer value) { + setValue(F144, value); + } + + /** + * Set the f144 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF144(org.jooq.Field field) { + setField(F144, field); + } + + /** + * Set the f145 parameter to the routine + */ + public void setF145(java.lang.Integer value) { + setValue(F145, value); + } + + /** + * Set the f145 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF145(org.jooq.Field field) { + setField(F145, field); + } + + /** + * Set the f146 parameter to the routine + */ + public void setF146(java.lang.Integer value) { + setValue(F146, value); + } + + /** + * Set the f146 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF146(org.jooq.Field field) { + setField(F146, field); + } + + /** + * Set the f147 parameter to the routine + */ + public void setF147(java.lang.Integer value) { + setValue(F147, value); + } + + /** + * Set the f147 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF147(org.jooq.Field field) { + setField(F147, field); + } + + /** + * Set the f148 parameter to the routine + */ + public void setF148(java.lang.Integer value) { + setValue(F148, value); + } + + /** + * Set the f148 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF148(org.jooq.Field field) { + setField(F148, field); + } + + /** + * Set the f149 parameter to the routine + */ + public void setF149(java.lang.Integer value) { + setValue(F149, value); + } + + /** + * Set the f149 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF149(org.jooq.Field field) { + setField(F149, field); + } + + /** + * Set the f150 parameter to the routine + */ + public void setF150(java.lang.Integer value) { + setValue(F150, value); + } + + /** + * Set the f150 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF150(org.jooq.Field field) { + setField(F150, field); + } + + /** + * Set the f151 parameter to the routine + */ + public void setF151(java.lang.Integer value) { + setValue(F151, value); + } + + /** + * Set the f151 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF151(org.jooq.Field field) { + setField(F151, field); + } + + /** + * Set the f152 parameter to the routine + */ + public void setF152(java.lang.Integer value) { + setValue(F152, value); + } + + /** + * Set the f152 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF152(org.jooq.Field field) { + setField(F152, field); + } + + /** + * Set the f153 parameter to the routine + */ + public void setF153(java.lang.Integer value) { + setValue(F153, value); + } + + /** + * Set the f153 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF153(org.jooq.Field field) { + setField(F153, field); + } + + /** + * Set the f154 parameter to the routine + */ + public void setF154(java.lang.Integer value) { + setValue(F154, value); + } + + /** + * Set the f154 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF154(org.jooq.Field field) { + setField(F154, field); + } + + /** + * Set the f155 parameter to the routine + */ + public void setF155(java.lang.Integer value) { + setValue(F155, value); + } + + /** + * Set the f155 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF155(org.jooq.Field field) { + setField(F155, field); + } + + /** + * Set the f156 parameter to the routine + */ + public void setF156(java.lang.Integer value) { + setValue(F156, value); + } + + /** + * Set the f156 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF156(org.jooq.Field field) { + setField(F156, field); + } + + /** + * Set the f157 parameter to the routine + */ + public void setF157(java.lang.Integer value) { + setValue(F157, value); + } + + /** + * Set the f157 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF157(org.jooq.Field field) { + setField(F157, field); + } + + /** + * Set the f158 parameter to the routine + */ + public void setF158(java.lang.Integer value) { + setValue(F158, value); + } + + /** + * Set the f158 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF158(org.jooq.Field field) { + setField(F158, field); + } + + /** + * Set the f159 parameter to the routine + */ + public void setF159(java.lang.Integer value) { + setValue(F159, value); + } + + /** + * Set the f159 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF159(org.jooq.Field field) { + setField(F159, field); + } + + /** + * Set the f160 parameter to the routine + */ + public void setF160(java.lang.Integer value) { + setValue(F160, value); + } + + /** + * Set the f160 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF160(org.jooq.Field field) { + setField(F160, field); + } + + /** + * Set the f161 parameter to the routine + */ + public void setF161(java.lang.Integer value) { + setValue(F161, value); + } + + /** + * Set the f161 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF161(org.jooq.Field field) { + setField(F161, field); + } + + /** + * Set the f162 parameter to the routine + */ + public void setF162(java.lang.Integer value) { + setValue(F162, value); + } + + /** + * Set the f162 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF162(org.jooq.Field field) { + setField(F162, field); + } + + /** + * Set the f163 parameter to the routine + */ + public void setF163(java.lang.Integer value) { + setValue(F163, value); + } + + /** + * Set the f163 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF163(org.jooq.Field field) { + setField(F163, field); + } + + /** + * Set the f164 parameter to the routine + */ + public void setF164(java.lang.Integer value) { + setValue(F164, value); + } + + /** + * Set the f164 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF164(org.jooq.Field field) { + setField(F164, field); + } + + /** + * Set the f165 parameter to the routine + */ + public void setF165(java.lang.Integer value) { + setValue(F165, value); + } + + /** + * Set the f165 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF165(org.jooq.Field field) { + setField(F165, field); + } + + /** + * Set the f166 parameter to the routine + */ + public void setF166(java.lang.Integer value) { + setValue(F166, value); + } + + /** + * Set the f166 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF166(org.jooq.Field field) { + setField(F166, field); + } + + /** + * Set the f167 parameter to the routine + */ + public void setF167(java.lang.Integer value) { + setValue(F167, value); + } + + /** + * Set the f167 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF167(org.jooq.Field field) { + setField(F167, field); + } + + /** + * Set the f168 parameter to the routine + */ + public void setF168(java.lang.Integer value) { + setValue(F168, value); + } + + /** + * Set the f168 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF168(org.jooq.Field field) { + setField(F168, field); + } + + /** + * Set the f169 parameter to the routine + */ + public void setF169(java.lang.Integer value) { + setValue(F169, value); + } + + /** + * Set the f169 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF169(org.jooq.Field field) { + setField(F169, field); + } + + /** + * Set the f170 parameter to the routine + */ + public void setF170(java.lang.Integer value) { + setValue(F170, value); + } + + /** + * Set the f170 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF170(org.jooq.Field field) { + setField(F170, field); + } + + /** + * Set the f171 parameter to the routine + */ + public void setF171(java.lang.Integer value) { + setValue(F171, value); + } + + /** + * Set the f171 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF171(org.jooq.Field field) { + setField(F171, field); + } + + /** + * Set the f172 parameter to the routine + */ + public void setF172(java.lang.Integer value) { + setValue(F172, value); + } + + /** + * Set the f172 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF172(org.jooq.Field field) { + setField(F172, field); + } + + /** + * Set the f173 parameter to the routine + */ + public void setF173(java.lang.Integer value) { + setValue(F173, value); + } + + /** + * Set the f173 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF173(org.jooq.Field field) { + setField(F173, field); + } + + /** + * Set the f174 parameter to the routine + */ + public void setF174(java.lang.Integer value) { + setValue(F174, value); + } + + /** + * Set the f174 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF174(org.jooq.Field field) { + setField(F174, field); + } + + /** + * Set the f175 parameter to the routine + */ + public void setF175(java.lang.Integer value) { + setValue(F175, value); + } + + /** + * Set the f175 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF175(org.jooq.Field field) { + setField(F175, field); + } + + /** + * Set the f176 parameter to the routine + */ + public void setF176(java.lang.Integer value) { + setValue(F176, value); + } + + /** + * Set the f176 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF176(org.jooq.Field field) { + setField(F176, field); + } + + /** + * Set the f177 parameter to the routine + */ + public void setF177(java.lang.Integer value) { + setValue(F177, value); + } + + /** + * Set the f177 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF177(org.jooq.Field field) { + setField(F177, field); + } + + /** + * Set the f178 parameter to the routine + */ + public void setF178(java.lang.Integer value) { + setValue(F178, value); + } + + /** + * Set the f178 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF178(org.jooq.Field field) { + setField(F178, field); + } + + /** + * Set the f179 parameter to the routine + */ + public void setF179(java.lang.Integer value) { + setValue(F179, value); + } + + /** + * Set the f179 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF179(org.jooq.Field field) { + setField(F179, field); + } + + /** + * Set the f180 parameter to the routine + */ + public void setF180(java.lang.Integer value) { + setValue(F180, value); + } + + /** + * Set the f180 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF180(org.jooq.Field field) { + setField(F180, field); + } + + /** + * Set the f181 parameter to the routine + */ + public void setF181(java.lang.Integer value) { + setValue(F181, value); + } + + /** + * Set the f181 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF181(org.jooq.Field field) { + setField(F181, field); + } + + /** + * Set the f182 parameter to the routine + */ + public void setF182(java.lang.Integer value) { + setValue(F182, value); + } + + /** + * Set the f182 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF182(org.jooq.Field field) { + setField(F182, field); + } + + /** + * Set the f183 parameter to the routine + */ + public void setF183(java.lang.Integer value) { + setValue(F183, value); + } + + /** + * Set the f183 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF183(org.jooq.Field field) { + setField(F183, field); + } + + /** + * Set the f184 parameter to the routine + */ + public void setF184(java.lang.Integer value) { + setValue(F184, value); + } + + /** + * Set the f184 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF184(org.jooq.Field field) { + setField(F184, field); + } + + /** + * Set the f185 parameter to the routine + */ + public void setF185(java.lang.Integer value) { + setValue(F185, value); + } + + /** + * Set the f185 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF185(org.jooq.Field field) { + setField(F185, field); + } + + /** + * Set the f186 parameter to the routine + */ + public void setF186(java.lang.Integer value) { + setValue(F186, value); + } + + /** + * Set the f186 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF186(org.jooq.Field field) { + setField(F186, field); + } + + /** + * Set the f187 parameter to the routine + */ + public void setF187(java.lang.Integer value) { + setValue(F187, value); + } + + /** + * Set the f187 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF187(org.jooq.Field field) { + setField(F187, field); + } + + /** + * Set the f188 parameter to the routine + */ + public void setF188(java.lang.Integer value) { + setValue(F188, value); + } + + /** + * Set the f188 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF188(org.jooq.Field field) { + setField(F188, field); + } + + /** + * Set the f189 parameter to the routine + */ + public void setF189(java.lang.Integer value) { + setValue(F189, value); + } + + /** + * Set the f189 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF189(org.jooq.Field field) { + setField(F189, field); + } + + /** + * Set the f190 parameter to the routine + */ + public void setF190(java.lang.Integer value) { + setValue(F190, value); + } + + /** + * Set the f190 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF190(org.jooq.Field field) { + setField(F190, field); + } + + /** + * Set the f191 parameter to the routine + */ + public void setF191(java.lang.Integer value) { + setValue(F191, value); + } + + /** + * Set the f191 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF191(org.jooq.Field field) { + setField(F191, field); + } + + /** + * Set the f192 parameter to the routine + */ + public void setF192(java.lang.Integer value) { + setValue(F192, value); + } + + /** + * Set the f192 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF192(org.jooq.Field field) { + setField(F192, field); + } + + /** + * Set the f193 parameter to the routine + */ + public void setF193(java.lang.Integer value) { + setValue(F193, value); + } + + /** + * Set the f193 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF193(org.jooq.Field field) { + setField(F193, field); + } + + /** + * Set the f194 parameter to the routine + */ + public void setF194(java.lang.Integer value) { + setValue(F194, value); + } + + /** + * Set the f194 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF194(org.jooq.Field field) { + setField(F194, field); + } + + /** + * Set the f195 parameter to the routine + */ + public void setF195(java.lang.Integer value) { + setValue(F195, value); + } + + /** + * Set the f195 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF195(org.jooq.Field field) { + setField(F195, field); + } + + /** + * Set the f196 parameter to the routine + */ + public void setF196(java.lang.Integer value) { + setValue(F196, value); + } + + /** + * Set the f196 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF196(org.jooq.Field field) { + setField(F196, field); + } + + /** + * Set the f197 parameter to the routine + */ + public void setF197(java.lang.Integer value) { + setValue(F197, value); + } + + /** + * Set the f197 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF197(org.jooq.Field field) { + setField(F197, field); + } + + /** + * Set the f198 parameter to the routine + */ + public void setF198(java.lang.Integer value) { + setValue(F198, value); + } + + /** + * Set the f198 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF198(org.jooq.Field field) { + setField(F198, field); + } + + /** + * Set the f199 parameter to the routine + */ + public void setF199(java.lang.Integer value) { + setValue(F199, value); + } + + /** + * Set the f199 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF199(org.jooq.Field field) { + setField(F199, field); + } + + /** + * Set the f200 parameter to the routine + */ + public void setF200(java.lang.Integer value) { + setValue(F200, value); + } + + /** + * Set the f200 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF200(org.jooq.Field field) { + setField(F200, field); + } + + /** + * Set the f201 parameter to the routine + */ + public void setF201(java.lang.Integer value) { + setValue(F201, value); + } + + /** + * Set the f201 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF201(org.jooq.Field field) { + setField(F201, field); + } + + /** + * Set the f202 parameter to the routine + */ + public void setF202(java.lang.Integer value) { + setValue(F202, value); + } + + /** + * Set the f202 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF202(org.jooq.Field field) { + setField(F202, field); + } + + /** + * Set the f203 parameter to the routine + */ + public void setF203(java.lang.Integer value) { + setValue(F203, value); + } + + /** + * Set the f203 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF203(org.jooq.Field field) { + setField(F203, field); + } + + /** + * Set the f204 parameter to the routine + */ + public void setF204(java.lang.Integer value) { + setValue(F204, value); + } + + /** + * Set the f204 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF204(org.jooq.Field field) { + setField(F204, field); + } + + /** + * Set the f205 parameter to the routine + */ + public void setF205(java.lang.Integer value) { + setValue(F205, value); + } + + /** + * Set the f205 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF205(org.jooq.Field field) { + setField(F205, field); + } + + /** + * Set the f206 parameter to the routine + */ + public void setF206(java.lang.Integer value) { + setValue(F206, value); + } + + /** + * Set the f206 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF206(org.jooq.Field field) { + setField(F206, field); + } + + /** + * Set the f207 parameter to the routine + */ + public void setF207(java.lang.Integer value) { + setValue(F207, value); + } + + /** + * Set the f207 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF207(org.jooq.Field field) { + setField(F207, field); + } + + /** + * Set the f208 parameter to the routine + */ + public void setF208(java.lang.Integer value) { + setValue(F208, value); + } + + /** + * Set the f208 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF208(org.jooq.Field field) { + setField(F208, field); + } + + /** + * Set the f209 parameter to the routine + */ + public void setF209(java.lang.Integer value) { + setValue(F209, value); + } + + /** + * Set the f209 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF209(org.jooq.Field field) { + setField(F209, field); + } + + /** + * Set the f210 parameter to the routine + */ + public void setF210(java.lang.Integer value) { + setValue(F210, value); + } + + /** + * Set the f210 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF210(org.jooq.Field field) { + setField(F210, field); + } + + /** + * Set the f211 parameter to the routine + */ + public void setF211(java.lang.Integer value) { + setValue(F211, value); + } + + /** + * Set the f211 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF211(org.jooq.Field field) { + setField(F211, field); + } + + /** + * Set the f212 parameter to the routine + */ + public void setF212(java.lang.Integer value) { + setValue(F212, value); + } + + /** + * Set the f212 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF212(org.jooq.Field field) { + setField(F212, field); + } + + /** + * Set the f213 parameter to the routine + */ + public void setF213(java.lang.Integer value) { + setValue(F213, value); + } + + /** + * Set the f213 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF213(org.jooq.Field field) { + setField(F213, field); + } + + /** + * Set the f214 parameter to the routine + */ + public void setF214(java.lang.Integer value) { + setValue(F214, value); + } + + /** + * Set the f214 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF214(org.jooq.Field field) { + setField(F214, field); + } + + /** + * Set the f215 parameter to the routine + */ + public void setF215(java.lang.Integer value) { + setValue(F215, value); + } + + /** + * Set the f215 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF215(org.jooq.Field field) { + setField(F215, field); + } + + /** + * Set the f216 parameter to the routine + */ + public void setF216(java.lang.Integer value) { + setValue(F216, value); + } + + /** + * Set the f216 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF216(org.jooq.Field field) { + setField(F216, field); + } + + /** + * Set the f217 parameter to the routine + */ + public void setF217(java.lang.Integer value) { + setValue(F217, value); + } + + /** + * Set the f217 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF217(org.jooq.Field field) { + setField(F217, field); + } + + /** + * Set the f218 parameter to the routine + */ + public void setF218(java.lang.Integer value) { + setValue(F218, value); + } + + /** + * Set the f218 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF218(org.jooq.Field field) { + setField(F218, field); + } + + /** + * Set the f219 parameter to the routine + */ + public void setF219(java.lang.Integer value) { + setValue(F219, value); + } + + /** + * Set the f219 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF219(org.jooq.Field field) { + setField(F219, field); + } + + /** + * Set the f220 parameter to the routine + */ + public void setF220(java.lang.Integer value) { + setValue(F220, value); + } + + /** + * Set the f220 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF220(org.jooq.Field field) { + setField(F220, field); + } + + /** + * Set the f221 parameter to the routine + */ + public void setF221(java.lang.Integer value) { + setValue(F221, value); + } + + /** + * Set the f221 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF221(org.jooq.Field field) { + setField(F221, field); + } + + /** + * Set the f222 parameter to the routine + */ + public void setF222(java.lang.Integer value) { + setValue(F222, value); + } + + /** + * Set the f222 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF222(org.jooq.Field field) { + setField(F222, field); + } + + /** + * Set the f223 parameter to the routine + */ + public void setF223(java.lang.Integer value) { + setValue(F223, value); + } + + /** + * Set the f223 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF223(org.jooq.Field field) { + setField(F223, field); + } + + /** + * Set the f224 parameter to the routine + */ + public void setF224(java.lang.Integer value) { + setValue(F224, value); + } + + /** + * Set the f224 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF224(org.jooq.Field field) { + setField(F224, field); + } + + /** + * Set the f225 parameter to the routine + */ + public void setF225(java.lang.Integer value) { + setValue(F225, value); + } + + /** + * Set the f225 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF225(org.jooq.Field field) { + setField(F225, field); + } + + /** + * Set the f226 parameter to the routine + */ + public void setF226(java.lang.Integer value) { + setValue(F226, value); + } + + /** + * Set the f226 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF226(org.jooq.Field field) { + setField(F226, field); + } + + /** + * Set the f227 parameter to the routine + */ + public void setF227(java.lang.Integer value) { + setValue(F227, value); + } + + /** + * Set the f227 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF227(org.jooq.Field field) { + setField(F227, field); + } + + /** + * Set the f228 parameter to the routine + */ + public void setF228(java.lang.Integer value) { + setValue(F228, value); + } + + /** + * Set the f228 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF228(org.jooq.Field field) { + setField(F228, field); + } + + /** + * Set the f229 parameter to the routine + */ + public void setF229(java.lang.Integer value) { + setValue(F229, value); + } + + /** + * Set the f229 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF229(org.jooq.Field field) { + setField(F229, field); + } + + /** + * Set the f230 parameter to the routine + */ + public void setF230(java.lang.Integer value) { + setValue(F230, value); + } + + /** + * Set the f230 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF230(org.jooq.Field field) { + setField(F230, field); + } + + /** + * Set the f231 parameter to the routine + */ + public void setF231(java.lang.Integer value) { + setValue(F231, value); + } + + /** + * Set the f231 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF231(org.jooq.Field field) { + setField(F231, field); + } + + /** + * Set the f232 parameter to the routine + */ + public void setF232(java.lang.Integer value) { + setValue(F232, value); + } + + /** + * Set the f232 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF232(org.jooq.Field field) { + setField(F232, field); + } + + /** + * Set the f233 parameter to the routine + */ + public void setF233(java.lang.Integer value) { + setValue(F233, value); + } + + /** + * Set the f233 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF233(org.jooq.Field field) { + setField(F233, field); + } + + /** + * Set the f234 parameter to the routine + */ + public void setF234(java.lang.Integer value) { + setValue(F234, value); + } + + /** + * Set the f234 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF234(org.jooq.Field field) { + setField(F234, field); + } + + /** + * Set the f235 parameter to the routine + */ + public void setF235(java.lang.Integer value) { + setValue(F235, value); + } + + /** + * Set the f235 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF235(org.jooq.Field field) { + setField(F235, field); + } + + /** + * Set the f236 parameter to the routine + */ + public void setF236(java.lang.Integer value) { + setValue(F236, value); + } + + /** + * Set the f236 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF236(org.jooq.Field field) { + setField(F236, field); + } + + /** + * Set the f237 parameter to the routine + */ + public void setF237(java.lang.Integer value) { + setValue(F237, value); + } + + /** + * Set the f237 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF237(org.jooq.Field field) { + setField(F237, field); + } + + /** + * Set the f238 parameter to the routine + */ + public void setF238(java.lang.Integer value) { + setValue(F238, value); + } + + /** + * Set the f238 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF238(org.jooq.Field field) { + setField(F238, field); + } + + /** + * Set the f239 parameter to the routine + */ + public void setF239(java.lang.Integer value) { + setValue(F239, value); + } + + /** + * Set the f239 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF239(org.jooq.Field field) { + setField(F239, field); + } + + /** + * Set the f240 parameter to the routine + */ + public void setF240(java.lang.Integer value) { + setValue(F240, value); + } + + /** + * Set the f240 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF240(org.jooq.Field field) { + setField(F240, field); + } + + /** + * Set the f241 parameter to the routine + */ + public void setF241(java.lang.Integer value) { + setValue(F241, value); + } + + /** + * Set the f241 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF241(org.jooq.Field field) { + setField(F241, field); + } + + /** + * Set the f242 parameter to the routine + */ + public void setF242(java.lang.Integer value) { + setValue(F242, value); + } + + /** + * Set the f242 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF242(org.jooq.Field field) { + setField(F242, field); + } + + /** + * Set the f243 parameter to the routine + */ + public void setF243(java.lang.Integer value) { + setValue(F243, value); + } + + /** + * Set the f243 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF243(org.jooq.Field field) { + setField(F243, field); + } + + /** + * Set the f244 parameter to the routine + */ + public void setF244(java.lang.Integer value) { + setValue(F244, value); + } + + /** + * Set the f244 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF244(org.jooq.Field field) { + setField(F244, field); + } + + /** + * Set the f245 parameter to the routine + */ + public void setF245(java.lang.Integer value) { + setValue(F245, value); + } + + /** + * Set the f245 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF245(org.jooq.Field field) { + setField(F245, field); + } + + /** + * Set the f246 parameter to the routine + */ + public void setF246(java.lang.Integer value) { + setValue(F246, value); + } + + /** + * Set the f246 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF246(org.jooq.Field field) { + setField(F246, field); + } + + /** + * Set the f247 parameter to the routine + */ + public void setF247(java.lang.Integer value) { + setValue(F247, value); + } + + /** + * Set the f247 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF247(org.jooq.Field field) { + setField(F247, field); + } + + /** + * Set the f248 parameter to the routine + */ + public void setF248(java.lang.Integer value) { + setValue(F248, value); + } + + /** + * Set the f248 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF248(org.jooq.Field field) { + setField(F248, field); + } + + /** + * Set the f249 parameter to the routine + */ + public void setF249(java.lang.Integer value) { + setValue(F249, value); + } + + /** + * Set the f249 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF249(org.jooq.Field field) { + setField(F249, field); + } + + /** + * Set the f250 parameter to the routine + */ + public void setF250(java.lang.Integer value) { + setValue(F250, value); + } + + /** + * Set the f250 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF250(org.jooq.Field field) { + setField(F250, field); + } + + /** + * Set the f251 parameter to the routine + */ + public void setF251(java.lang.Integer value) { + setValue(F251, value); + } + + /** + * Set the f251 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF251(org.jooq.Field field) { + setField(F251, field); + } + + /** + * Set the f252 parameter to the routine + */ + public void setF252(java.lang.Integer value) { + setValue(F252, value); + } + + /** + * Set the f252 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF252(org.jooq.Field field) { + setField(F252, field); + } + + /** + * Set the f253 parameter to the routine + */ + public void setF253(java.lang.Integer value) { + setValue(F253, value); + } + + /** + * Set the f253 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF253(org.jooq.Field field) { + setField(F253, field); + } + + /** + * Set the f254 parameter to the routine + */ + public void setF254(java.lang.Integer value) { + setValue(F254, value); + } + + /** + * Set the f254 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF254(org.jooq.Field field) { + setField(F254, field); + } + + /** + * Set the f255 parameter to the routine + */ + public void setF255(java.lang.Integer value) { + setValue(F255, value); + } + + /** + * Set the f255 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF255(org.jooq.Field field) { + setField(F255, field); + } + + /** + * Set the f256 parameter to the routine + */ + public void setF256(java.lang.Integer value) { + setValue(F256, value); + } + + /** + * Set the f256 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF256(org.jooq.Field field) { + setField(F256, field); + } + + /** + * Set the f257 parameter to the routine + */ + public void setF257(java.lang.Integer value) { + setValue(F257, value); + } + + /** + * Set the f257 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF257(org.jooq.Field field) { + setField(F257, field); + } + + /** + * Set the f258 parameter to the routine + */ + public void setF258(java.lang.Integer value) { + setValue(F258, value); + } + + /** + * Set the f258 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF258(org.jooq.Field field) { + setField(F258, field); + } + + /** + * Set the f259 parameter to the routine + */ + public void setF259(java.lang.Integer value) { + setValue(F259, value); + } + + /** + * Set the f259 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF259(org.jooq.Field field) { + setField(F259, field); + } + + /** + * Set the f260 parameter to the routine + */ + public void setF260(java.lang.Integer value) { + setValue(F260, value); + } + + /** + * Set the f260 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF260(org.jooq.Field field) { + setField(F260, field); + } + + /** + * Set the f261 parameter to the routine + */ + public void setF261(java.lang.Integer value) { + setValue(F261, value); + } + + /** + * Set the f261 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF261(org.jooq.Field field) { + setField(F261, field); + } + + /** + * Set the f262 parameter to the routine + */ + public void setF262(java.lang.Integer value) { + setValue(F262, value); + } + + /** + * Set the f262 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF262(org.jooq.Field field) { + setField(F262, field); + } + + /** + * Set the f263 parameter to the routine + */ + public void setF263(java.lang.Integer value) { + setValue(F263, value); + } + + /** + * Set the f263 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF263(org.jooq.Field field) { + setField(F263, field); + } + + /** + * Set the f264 parameter to the routine + */ + public void setF264(java.lang.Integer value) { + setValue(F264, value); + } + + /** + * Set the f264 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF264(org.jooq.Field field) { + setField(F264, field); + } + + /** + * Set the f265 parameter to the routine + */ + public void setF265(java.lang.Integer value) { + setValue(F265, value); + } + + /** + * Set the f265 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF265(org.jooq.Field field) { + setField(F265, field); + } + + /** + * Set the f266 parameter to the routine + */ + public void setF266(java.lang.Integer value) { + setValue(F266, value); + } + + /** + * Set the f266 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF266(org.jooq.Field field) { + setField(F266, field); + } + + /** + * Set the f267 parameter to the routine + */ + public void setF267(java.lang.Integer value) { + setValue(F267, value); + } + + /** + * Set the f267 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF267(org.jooq.Field field) { + setField(F267, field); + } + + /** + * Set the f268 parameter to the routine + */ + public void setF268(java.lang.Integer value) { + setValue(F268, value); + } + + /** + * Set the f268 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF268(org.jooq.Field field) { + setField(F268, field); + } + + /** + * Set the f269 parameter to the routine + */ + public void setF269(java.lang.Integer value) { + setValue(F269, value); + } + + /** + * Set the f269 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF269(org.jooq.Field field) { + setField(F269, field); + } + + /** + * Set the f270 parameter to the routine + */ + public void setF270(java.lang.Integer value) { + setValue(F270, value); + } + + /** + * Set the f270 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF270(org.jooq.Field field) { + setField(F270, field); + } + + /** + * Set the f271 parameter to the routine + */ + public void setF271(java.lang.Integer value) { + setValue(F271, value); + } + + /** + * Set the f271 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF271(org.jooq.Field field) { + setField(F271, field); + } + + /** + * Set the f272 parameter to the routine + */ + public void setF272(java.lang.Integer value) { + setValue(F272, value); + } + + /** + * Set the f272 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF272(org.jooq.Field field) { + setField(F272, field); + } + + /** + * Set the f273 parameter to the routine + */ + public void setF273(java.lang.Integer value) { + setValue(F273, value); + } + + /** + * Set the f273 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF273(org.jooq.Field field) { + setField(F273, field); + } + + /** + * Set the f274 parameter to the routine + */ + public void setF274(java.lang.Integer value) { + setValue(F274, value); + } + + /** + * Set the f274 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF274(org.jooq.Field field) { + setField(F274, field); + } + + /** + * Set the f275 parameter to the routine + */ + public void setF275(java.lang.Integer value) { + setValue(F275, value); + } + + /** + * Set the f275 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF275(org.jooq.Field field) { + setField(F275, field); + } + + /** + * Set the f276 parameter to the routine + */ + public void setF276(java.lang.Integer value) { + setValue(F276, value); + } + + /** + * Set the f276 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF276(org.jooq.Field field) { + setField(F276, field); + } + + /** + * Set the f277 parameter to the routine + */ + public void setF277(java.lang.Integer value) { + setValue(F277, value); + } + + /** + * Set the f277 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF277(org.jooq.Field field) { + setField(F277, field); + } + + /** + * Set the f278 parameter to the routine + */ + public void setF278(java.lang.Integer value) { + setValue(F278, value); + } + + /** + * Set the f278 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF278(org.jooq.Field field) { + setField(F278, field); + } + + /** + * Set the f279 parameter to the routine + */ + public void setF279(java.lang.Integer value) { + setValue(F279, value); + } + + /** + * Set the f279 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF279(org.jooq.Field field) { + setField(F279, field); + } + + /** + * Set the f280 parameter to the routine + */ + public void setF280(java.lang.Integer value) { + setValue(F280, value); + } + + /** + * Set the f280 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF280(org.jooq.Field field) { + setField(F280, field); + } + + /** + * Set the f281 parameter to the routine + */ + public void setF281(java.lang.Integer value) { + setValue(F281, value); + } + + /** + * Set the f281 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF281(org.jooq.Field field) { + setField(F281, field); + } + + /** + * Set the f282 parameter to the routine + */ + public void setF282(java.lang.Integer value) { + setValue(F282, value); + } + + /** + * Set the f282 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF282(org.jooq.Field field) { + setField(F282, field); + } + + /** + * Set the f283 parameter to the routine + */ + public void setF283(java.lang.Integer value) { + setValue(F283, value); + } + + /** + * Set the f283 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF283(org.jooq.Field field) { + setField(F283, field); + } + + /** + * Set the f284 parameter to the routine + */ + public void setF284(java.lang.Integer value) { + setValue(F284, value); + } + + /** + * Set the f284 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF284(org.jooq.Field field) { + setField(F284, field); + } + + /** + * Set the f285 parameter to the routine + */ + public void setF285(java.lang.Integer value) { + setValue(F285, value); + } + + /** + * Set the f285 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF285(org.jooq.Field field) { + setField(F285, field); + } + + /** + * Set the f286 parameter to the routine + */ + public void setF286(java.lang.Integer value) { + setValue(F286, value); + } + + /** + * Set the f286 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF286(org.jooq.Field field) { + setField(F286, field); + } + + /** + * Set the f287 parameter to the routine + */ + public void setF287(java.lang.Integer value) { + setValue(F287, value); + } + + /** + * Set the f287 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF287(org.jooq.Field field) { + setField(F287, field); + } + + /** + * Set the f288 parameter to the routine + */ + public void setF288(java.lang.Integer value) { + setValue(F288, value); + } + + /** + * Set the f288 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF288(org.jooq.Field field) { + setField(F288, field); + } + + /** + * Set the f289 parameter to the routine + */ + public void setF289(java.lang.Integer value) { + setValue(F289, value); + } + + /** + * Set the f289 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF289(org.jooq.Field field) { + setField(F289, field); + } + + /** + * Set the f290 parameter to the routine + */ + public void setF290(java.lang.Integer value) { + setValue(F290, value); + } + + /** + * Set the f290 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF290(org.jooq.Field field) { + setField(F290, field); + } + + /** + * Set the f291 parameter to the routine + */ + public void setF291(java.lang.Integer value) { + setValue(F291, value); + } + + /** + * Set the f291 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF291(org.jooq.Field field) { + setField(F291, field); + } + + /** + * Set the f292 parameter to the routine + */ + public void setF292(java.lang.Integer value) { + setValue(F292, value); + } + + /** + * Set the f292 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF292(org.jooq.Field field) { + setField(F292, field); + } + + /** + * Set the f293 parameter to the routine + */ + public void setF293(java.lang.Integer value) { + setValue(F293, value); + } + + /** + * Set the f293 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF293(org.jooq.Field field) { + setField(F293, field); + } + + /** + * Set the f294 parameter to the routine + */ + public void setF294(java.lang.Integer value) { + setValue(F294, value); + } + + /** + * Set the f294 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF294(org.jooq.Field field) { + setField(F294, field); + } + + /** + * Set the f295 parameter to the routine + */ + public void setF295(java.lang.Integer value) { + setValue(F295, value); + } + + /** + * Set the f295 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF295(org.jooq.Field field) { + setField(F295, field); + } + + /** + * Set the f296 parameter to the routine + */ + public void setF296(java.lang.Integer value) { + setValue(F296, value); + } + + /** + * Set the f296 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF296(org.jooq.Field field) { + setField(F296, field); + } + + /** + * Set the f297 parameter to the routine + */ + public void setF297(java.lang.Integer value) { + setValue(F297, value); + } + + /** + * Set the f297 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF297(org.jooq.Field field) { + setField(F297, field); + } + + /** + * Set the f298 parameter to the routine + */ + public void setF298(java.lang.Integer value) { + setValue(F298, value); + } + + /** + * Set the f298 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF298(org.jooq.Field field) { + setField(F298, field); + } + + /** + * Set the f299 parameter to the routine + */ + public void setF299(java.lang.Integer value) { + setValue(F299, value); + } + + /** + * Set the f299 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF299(org.jooq.Field field) { + setField(F299, field); + } + + /** + * Set the f300 parameter to the routine + */ + public void setF300(java.lang.Integer value) { + setValue(F300, value); + } + + /** + * Set the f300 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF300(org.jooq.Field field) { + setField(F300, field); + } + + /** + * Set the f301 parameter to the routine + */ + public void setF301(java.lang.Integer value) { + setValue(F301, value); + } + + /** + * Set the f301 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF301(org.jooq.Field field) { + setField(F301, field); + } + + /** + * Set the f302 parameter to the routine + */ + public void setF302(java.lang.Integer value) { + setValue(F302, value); + } + + /** + * Set the f302 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF302(org.jooq.Field field) { + setField(F302, field); + } + + /** + * Set the f303 parameter to the routine + */ + public void setF303(java.lang.Integer value) { + setValue(F303, value); + } + + /** + * Set the f303 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF303(org.jooq.Field field) { + setField(F303, field); + } + + /** + * Set the f304 parameter to the routine + */ + public void setF304(java.lang.Integer value) { + setValue(F304, value); + } + + /** + * Set the f304 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF304(org.jooq.Field field) { + setField(F304, field); + } + + /** + * Set the f305 parameter to the routine + */ + public void setF305(java.lang.Integer value) { + setValue(F305, value); + } + + /** + * Set the f305 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF305(org.jooq.Field field) { + setField(F305, field); + } + + /** + * Set the f306 parameter to the routine + */ + public void setF306(java.lang.Integer value) { + setValue(F306, value); + } + + /** + * Set the f306 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF306(org.jooq.Field field) { + setField(F306, field); + } + + /** + * Set the f307 parameter to the routine + */ + public void setF307(java.lang.Integer value) { + setValue(F307, value); + } + + /** + * Set the f307 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF307(org.jooq.Field field) { + setField(F307, field); + } + + /** + * Set the f308 parameter to the routine + */ + public void setF308(java.lang.Integer value) { + setValue(F308, value); + } + + /** + * Set the f308 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF308(org.jooq.Field field) { + setField(F308, field); + } + + /** + * Set the f309 parameter to the routine + */ + public void setF309(java.lang.Integer value) { + setValue(F309, value); + } + + /** + * Set the f309 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF309(org.jooq.Field field) { + setField(F309, field); + } + + /** + * Set the f310 parameter to the routine + */ + public void setF310(java.lang.Integer value) { + setValue(F310, value); + } + + /** + * Set the f310 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF310(org.jooq.Field field) { + setField(F310, field); + } + + /** + * Set the f311 parameter to the routine + */ + public void setF311(java.lang.Integer value) { + setValue(F311, value); + } + + /** + * Set the f311 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF311(org.jooq.Field field) { + setField(F311, field); + } + + /** + * Set the f312 parameter to the routine + */ + public void setF312(java.lang.Integer value) { + setValue(F312, value); + } + + /** + * Set the f312 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF312(org.jooq.Field field) { + setField(F312, field); + } + + /** + * Set the f313 parameter to the routine + */ + public void setF313(java.lang.Integer value) { + setValue(F313, value); + } + + /** + * Set the f313 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF313(org.jooq.Field field) { + setField(F313, field); + } + + /** + * Set the f314 parameter to the routine + */ + public void setF314(java.lang.Integer value) { + setValue(F314, value); + } + + /** + * Set the f314 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF314(org.jooq.Field field) { + setField(F314, field); + } + + /** + * Set the f315 parameter to the routine + */ + public void setF315(java.lang.Integer value) { + setValue(F315, value); + } + + /** + * Set the f315 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF315(org.jooq.Field field) { + setField(F315, field); + } + + /** + * Set the f316 parameter to the routine + */ + public void setF316(java.lang.Integer value) { + setValue(F316, value); + } + + /** + * Set the f316 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF316(org.jooq.Field field) { + setField(F316, field); + } + + /** + * Set the f317 parameter to the routine + */ + public void setF317(java.lang.Integer value) { + setValue(F317, value); + } + + /** + * Set the f317 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF317(org.jooq.Field field) { + setField(F317, field); + } + + /** + * Set the f318 parameter to the routine + */ + public void setF318(java.lang.Integer value) { + setValue(F318, value); + } + + /** + * Set the f318 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF318(org.jooq.Field field) { + setField(F318, field); + } + + /** + * Set the f319 parameter to the routine + */ + public void setF319(java.lang.Integer value) { + setValue(F319, value); + } + + /** + * Set the f319 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF319(org.jooq.Field field) { + setField(F319, field); + } + + /** + * Set the f320 parameter to the routine + */ + public void setF320(java.lang.Integer value) { + setValue(F320, value); + } + + /** + * Set the f320 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF320(org.jooq.Field field) { + setField(F320, field); + } + + /** + * Set the f321 parameter to the routine + */ + public void setF321(java.lang.Integer value) { + setValue(F321, value); + } + + /** + * Set the f321 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF321(org.jooq.Field field) { + setField(F321, field); + } + + /** + * Set the f322 parameter to the routine + */ + public void setF322(java.lang.Integer value) { + setValue(F322, value); + } + + /** + * Set the f322 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF322(org.jooq.Field field) { + setField(F322, field); + } + + /** + * Set the f323 parameter to the routine + */ + public void setF323(java.lang.Integer value) { + setValue(F323, value); + } + + /** + * Set the f323 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF323(org.jooq.Field field) { + setField(F323, field); + } + + /** + * Set the f324 parameter to the routine + */ + public void setF324(java.lang.Integer value) { + setValue(F324, value); + } + + /** + * Set the f324 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF324(org.jooq.Field field) { + setField(F324, field); + } + + /** + * Set the f325 parameter to the routine + */ + public void setF325(java.lang.Integer value) { + setValue(F325, value); + } + + /** + * Set the f325 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF325(org.jooq.Field field) { + setField(F325, field); + } + + /** + * Set the f326 parameter to the routine + */ + public void setF326(java.lang.Integer value) { + setValue(F326, value); + } + + /** + * Set the f326 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF326(org.jooq.Field field) { + setField(F326, field); + } + + /** + * Set the f327 parameter to the routine + */ + public void setF327(java.lang.Integer value) { + setValue(F327, value); + } + + /** + * Set the f327 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF327(org.jooq.Field field) { + setField(F327, field); + } + + /** + * Set the f328 parameter to the routine + */ + public void setF328(java.lang.Integer value) { + setValue(F328, value); + } + + /** + * Set the f328 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF328(org.jooq.Field field) { + setField(F328, field); + } + + /** + * Set the f329 parameter to the routine + */ + public void setF329(java.lang.Integer value) { + setValue(F329, value); + } + + /** + * Set the f329 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF329(org.jooq.Field field) { + setField(F329, field); + } + + /** + * Set the f330 parameter to the routine + */ + public void setF330(java.lang.Integer value) { + setValue(F330, value); + } + + /** + * Set the f330 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF330(org.jooq.Field field) { + setField(F330, field); + } + + /** + * Set the f331 parameter to the routine + */ + public void setF331(java.lang.Integer value) { + setValue(F331, value); + } + + /** + * Set the f331 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF331(org.jooq.Field field) { + setField(F331, field); + } + + /** + * Set the f332 parameter to the routine + */ + public void setF332(java.lang.Integer value) { + setValue(F332, value); + } + + /** + * Set the f332 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF332(org.jooq.Field field) { + setField(F332, field); + } + + /** + * Set the f333 parameter to the routine + */ + public void setF333(java.lang.Integer value) { + setValue(F333, value); + } + + /** + * Set the f333 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF333(org.jooq.Field field) { + setField(F333, field); + } + + /** + * Set the f334 parameter to the routine + */ + public void setF334(java.lang.Integer value) { + setValue(F334, value); + } + + /** + * Set the f334 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF334(org.jooq.Field field) { + setField(F334, field); + } + + /** + * Set the f335 parameter to the routine + */ + public void setF335(java.lang.Integer value) { + setValue(F335, value); + } + + /** + * Set the f335 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF335(org.jooq.Field field) { + setField(F335, field); + } + + /** + * Set the f336 parameter to the routine + */ + public void setF336(java.lang.Integer value) { + setValue(F336, value); + } + + /** + * Set the f336 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF336(org.jooq.Field field) { + setField(F336, field); + } + + /** + * Set the f337 parameter to the routine + */ + public void setF337(java.lang.Integer value) { + setValue(F337, value); + } + + /** + * Set the f337 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF337(org.jooq.Field field) { + setField(F337, field); + } + + /** + * Set the f338 parameter to the routine + */ + public void setF338(java.lang.Integer value) { + setValue(F338, value); + } + + /** + * Set the f338 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF338(org.jooq.Field field) { + setField(F338, field); + } + + /** + * Set the f339 parameter to the routine + */ + public void setF339(java.lang.Integer value) { + setValue(F339, value); + } + + /** + * Set the f339 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF339(org.jooq.Field field) { + setField(F339, field); + } + + /** + * Set the f340 parameter to the routine + */ + public void setF340(java.lang.Integer value) { + setValue(F340, value); + } + + /** + * Set the f340 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF340(org.jooq.Field field) { + setField(F340, field); + } + + /** + * Set the f341 parameter to the routine + */ + public void setF341(java.lang.Integer value) { + setValue(F341, value); + } + + /** + * Set the f341 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF341(org.jooq.Field field) { + setField(F341, field); + } + + /** + * Set the f342 parameter to the routine + */ + public void setF342(java.lang.Integer value) { + setValue(F342, value); + } + + /** + * Set the f342 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF342(org.jooq.Field field) { + setField(F342, field); + } + + /** + * Set the f343 parameter to the routine + */ + public void setF343(java.lang.Integer value) { + setValue(F343, value); + } + + /** + * Set the f343 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF343(org.jooq.Field field) { + setField(F343, field); + } + + /** + * Set the f344 parameter to the routine + */ + public void setF344(java.lang.Integer value) { + setValue(F344, value); + } + + /** + * Set the f344 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF344(org.jooq.Field field) { + setField(F344, field); + } + + /** + * Set the f345 parameter to the routine + */ + public void setF345(java.lang.Integer value) { + setValue(F345, value); + } + + /** + * Set the f345 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF345(org.jooq.Field field) { + setField(F345, field); + } + + /** + * Set the f346 parameter to the routine + */ + public void setF346(java.lang.Integer value) { + setValue(F346, value); + } + + /** + * Set the f346 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF346(org.jooq.Field field) { + setField(F346, field); + } + + /** + * Set the f347 parameter to the routine + */ + public void setF347(java.lang.Integer value) { + setValue(F347, value); + } + + /** + * Set the f347 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF347(org.jooq.Field field) { + setField(F347, field); + } + + /** + * Set the f348 parameter to the routine + */ + public void setF348(java.lang.Integer value) { + setValue(F348, value); + } + + /** + * Set the f348 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF348(org.jooq.Field field) { + setField(F348, field); + } + + /** + * Set the f349 parameter to the routine + */ + public void setF349(java.lang.Integer value) { + setValue(F349, value); + } + + /** + * Set the f349 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF349(org.jooq.Field field) { + setField(F349, field); + } + + /** + * Set the f350 parameter to the routine + */ + public void setF350(java.lang.Integer value) { + setValue(F350, value); + } + + /** + * Set the f350 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF350(org.jooq.Field field) { + setField(F350, field); + } + + /** + * Set the f351 parameter to the routine + */ + public void setF351(java.lang.Integer value) { + setValue(F351, value); + } + + /** + * Set the f351 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF351(org.jooq.Field field) { + setField(F351, field); + } + + /** + * Set the f352 parameter to the routine + */ + public void setF352(java.lang.Integer value) { + setValue(F352, value); + } + + /** + * Set the f352 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF352(org.jooq.Field field) { + setField(F352, field); + } + + /** + * Set the f353 parameter to the routine + */ + public void setF353(java.lang.Integer value) { + setValue(F353, value); + } + + /** + * Set the f353 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF353(org.jooq.Field field) { + setField(F353, field); + } + + /** + * Set the f354 parameter to the routine + */ + public void setF354(java.lang.Integer value) { + setValue(F354, value); + } + + /** + * Set the f354 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF354(org.jooq.Field field) { + setField(F354, field); + } + + /** + * Set the f355 parameter to the routine + */ + public void setF355(java.lang.Integer value) { + setValue(F355, value); + } + + /** + * Set the f355 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF355(org.jooq.Field field) { + setField(F355, field); + } + + /** + * Set the f356 parameter to the routine + */ + public void setF356(java.lang.Integer value) { + setValue(F356, value); + } + + /** + * Set the f356 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF356(org.jooq.Field field) { + setField(F356, field); + } + + /** + * Set the f357 parameter to the routine + */ + public void setF357(java.lang.Integer value) { + setValue(F357, value); + } + + /** + * Set the f357 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF357(org.jooq.Field field) { + setField(F357, field); + } + + /** + * Set the f358 parameter to the routine + */ + public void setF358(java.lang.Integer value) { + setValue(F358, value); + } + + /** + * Set the f358 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF358(org.jooq.Field field) { + setField(F358, field); + } + + /** + * Set the f359 parameter to the routine + */ + public void setF359(java.lang.Integer value) { + setValue(F359, value); + } + + /** + * Set the f359 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF359(org.jooq.Field field) { + setField(F359, field); + } + + /** + * Set the f360 parameter to the routine + */ + public void setF360(java.lang.Integer value) { + setValue(F360, value); + } + + /** + * Set the f360 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF360(org.jooq.Field field) { + setField(F360, field); + } + + /** + * Set the f361 parameter to the routine + */ + public void setF361(java.lang.Integer value) { + setValue(F361, value); + } + + /** + * Set the f361 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF361(org.jooq.Field field) { + setField(F361, field); + } + + /** + * Set the f362 parameter to the routine + */ + public void setF362(java.lang.Integer value) { + setValue(F362, value); + } + + /** + * Set the f362 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF362(org.jooq.Field field) { + setField(F362, field); + } + + /** + * Set the f363 parameter to the routine + */ + public void setF363(java.lang.Integer value) { + setValue(F363, value); + } + + /** + * Set the f363 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF363(org.jooq.Field field) { + setField(F363, field); + } + + /** + * Set the f364 parameter to the routine + */ + public void setF364(java.lang.Integer value) { + setValue(F364, value); + } + + /** + * Set the f364 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF364(org.jooq.Field field) { + setField(F364, field); + } + + /** + * Set the f365 parameter to the routine + */ + public void setF365(java.lang.Integer value) { + setValue(F365, value); + } + + /** + * Set the f365 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF365(org.jooq.Field field) { + setField(F365, field); + } + + /** + * Set the f366 parameter to the routine + */ + public void setF366(java.lang.Integer value) { + setValue(F366, value); + } + + /** + * Set the f366 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF366(org.jooq.Field field) { + setField(F366, field); + } + + /** + * Set the f367 parameter to the routine + */ + public void setF367(java.lang.Integer value) { + setValue(F367, value); + } + + /** + * Set the f367 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF367(org.jooq.Field field) { + setField(F367, field); + } + + /** + * Set the f368 parameter to the routine + */ + public void setF368(java.lang.Integer value) { + setValue(F368, value); + } + + /** + * Set the f368 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF368(org.jooq.Field field) { + setField(F368, field); + } + + /** + * Set the f369 parameter to the routine + */ + public void setF369(java.lang.Integer value) { + setValue(F369, value); + } + + /** + * Set the f369 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF369(org.jooq.Field field) { + setField(F369, field); + } + + /** + * Set the f370 parameter to the routine + */ + public void setF370(java.lang.Integer value) { + setValue(F370, value); + } + + /** + * Set the f370 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF370(org.jooq.Field field) { + setField(F370, field); + } + + /** + * Set the f371 parameter to the routine + */ + public void setF371(java.lang.Integer value) { + setValue(F371, value); + } + + /** + * Set the f371 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF371(org.jooq.Field field) { + setField(F371, field); + } + + /** + * Set the f372 parameter to the routine + */ + public void setF372(java.lang.Integer value) { + setValue(F372, value); + } + + /** + * Set the f372 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF372(org.jooq.Field field) { + setField(F372, field); + } + + /** + * Set the f373 parameter to the routine + */ + public void setF373(java.lang.Integer value) { + setValue(F373, value); + } + + /** + * Set the f373 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF373(org.jooq.Field field) { + setField(F373, field); + } + + /** + * Set the f374 parameter to the routine + */ + public void setF374(java.lang.Integer value) { + setValue(F374, value); + } + + /** + * Set the f374 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF374(org.jooq.Field field) { + setField(F374, field); + } + + /** + * Set the f375 parameter to the routine + */ + public void setF375(java.lang.Integer value) { + setValue(F375, value); + } + + /** + * Set the f375 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF375(org.jooq.Field field) { + setField(F375, field); + } + + /** + * Set the f376 parameter to the routine + */ + public void setF376(java.lang.Integer value) { + setValue(F376, value); + } + + /** + * Set the f376 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF376(org.jooq.Field field) { + setField(F376, field); + } + + /** + * Set the f377 parameter to the routine + */ + public void setF377(java.lang.Integer value) { + setValue(F377, value); + } + + /** + * Set the f377 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF377(org.jooq.Field field) { + setField(F377, field); + } + + /** + * Set the f378 parameter to the routine + */ + public void setF378(java.lang.Integer value) { + setValue(F378, value); + } + + /** + * Set the f378 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF378(org.jooq.Field field) { + setField(F378, field); + } + + /** + * Set the f379 parameter to the routine + */ + public void setF379(java.lang.Integer value) { + setValue(F379, value); + } + + /** + * Set the f379 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF379(org.jooq.Field field) { + setField(F379, field); + } + + /** + * Set the f380 parameter to the routine + */ + public void setF380(java.lang.Integer value) { + setValue(F380, value); + } + + /** + * Set the f380 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF380(org.jooq.Field field) { + setField(F380, field); + } + + /** + * Set the f381 parameter to the routine + */ + public void setF381(java.lang.Integer value) { + setValue(F381, value); + } + + /** + * Set the f381 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF381(org.jooq.Field field) { + setField(F381, field); + } + + /** + * Set the f382 parameter to the routine + */ + public void setF382(java.lang.Integer value) { + setValue(F382, value); + } + + /** + * Set the f382 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF382(org.jooq.Field field) { + setField(F382, field); + } + + /** + * Set the f383 parameter to the routine + */ + public void setF383(java.lang.Integer value) { + setValue(F383, value); + } + + /** + * Set the f383 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF383(org.jooq.Field field) { + setField(F383, field); + } + + /** + * Set the f384 parameter to the routine + */ + public void setF384(java.lang.Integer value) { + setValue(F384, value); + } + + /** + * Set the f384 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF384(org.jooq.Field field) { + setField(F384, field); + } + + /** + * Set the f385 parameter to the routine + */ + public void setF385(java.lang.Integer value) { + setValue(F385, value); + } + + /** + * Set the f385 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF385(org.jooq.Field field) { + setField(F385, field); + } + + /** + * Set the f386 parameter to the routine + */ + public void setF386(java.lang.Integer value) { + setValue(F386, value); + } + + /** + * Set the f386 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF386(org.jooq.Field field) { + setField(F386, field); + } + + /** + * Set the f387 parameter to the routine + */ + public void setF387(java.lang.Integer value) { + setValue(F387, value); + } + + /** + * Set the f387 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF387(org.jooq.Field field) { + setField(F387, field); + } + + /** + * Set the f388 parameter to the routine + */ + public void setF388(java.lang.Integer value) { + setValue(F388, value); + } + + /** + * Set the f388 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF388(org.jooq.Field field) { + setField(F388, field); + } + + /** + * Set the f389 parameter to the routine + */ + public void setF389(java.lang.Integer value) { + setValue(F389, value); + } + + /** + * Set the f389 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF389(org.jooq.Field field) { + setField(F389, field); + } + + /** + * Set the f390 parameter to the routine + */ + public void setF390(java.lang.Integer value) { + setValue(F390, value); + } + + /** + * Set the f390 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF390(org.jooq.Field field) { + setField(F390, field); + } + + /** + * Set the f391 parameter to the routine + */ + public void setF391(java.lang.Integer value) { + setValue(F391, value); + } + + /** + * Set the f391 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF391(org.jooq.Field field) { + setField(F391, field); + } + + /** + * Set the f392 parameter to the routine + */ + public void setF392(java.lang.Integer value) { + setValue(F392, value); + } + + /** + * Set the f392 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF392(org.jooq.Field field) { + setField(F392, field); + } + + /** + * Set the f393 parameter to the routine + */ + public void setF393(java.lang.Integer value) { + setValue(F393, value); + } + + /** + * Set the f393 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF393(org.jooq.Field field) { + setField(F393, field); + } + + /** + * Set the f394 parameter to the routine + */ + public void setF394(java.lang.Integer value) { + setValue(F394, value); + } + + /** + * Set the f394 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF394(org.jooq.Field field) { + setField(F394, field); + } + + /** + * Set the f395 parameter to the routine + */ + public void setF395(java.lang.Integer value) { + setValue(F395, value); + } + + /** + * Set the f395 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF395(org.jooq.Field field) { + setField(F395, field); + } + + /** + * Set the f396 parameter to the routine + */ + public void setF396(java.lang.Integer value) { + setValue(F396, value); + } + + /** + * Set the f396 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF396(org.jooq.Field field) { + setField(F396, field); + } + + /** + * Set the f397 parameter to the routine + */ + public void setF397(java.lang.Integer value) { + setValue(F397, value); + } + + /** + * Set the f397 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF397(org.jooq.Field field) { + setField(F397, field); + } + + /** + * Set the f398 parameter to the routine + */ + public void setF398(java.lang.Integer value) { + setValue(F398, value); + } + + /** + * Set the f398 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF398(org.jooq.Field field) { + setField(F398, field); + } + + /** + * Set the f399 parameter to the routine + */ + public void setF399(java.lang.Integer value) { + setValue(F399, value); + } + + /** + * Set the f399 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setF399(org.jooq.Field field) { + setField(F399, field); + } +} diff --git a/jOOQ-test/src/org/jooq/test/sqlserver/generatedclasses/routines/FNumber.java b/jOOQ-test/src/org/jooq/test/sqlserver/generatedclasses/routines/FNumber.java new file mode 100644 index 00000000000..721f017334c --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/sqlserver/generatedclasses/routines/FNumber.java @@ -0,0 +1,49 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.sqlserver.generatedclasses.routines; + +/** + * This class is generated by jOOQ. + */ +public class FNumber extends org.jooq.impl.AbstractRoutine { + + private static final long serialVersionUID = 416070892; + + + /** + * An uncommented item + */ + public static final org.jooq.Parameter RETURN_VALUE = createParameter("RETURN_VALUE", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter N = createParameter("n", org.jooq.impl.SQLDataType.INTEGER); + + /** + * Create a new routine call instance + */ + public FNumber() { + super("f_number", org.jooq.test.sqlserver.generatedclasses.Dbo.DBO, org.jooq.impl.SQLDataType.INTEGER); + + setReturnParameter(RETURN_VALUE); + addInParameter(N); + } + + /** + * Set the n parameter to the routine + */ + public void setN(java.lang.Integer value) { + setValue(N, value); + } + + /** + * Set the n parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setN(org.jooq.Field field) { + setField(N, field); + } +} diff --git a/jOOQ-test/src/org/jooq/test/sqlserver/generatedclasses/routines/FOne.java b/jOOQ-test/src/org/jooq/test/sqlserver/generatedclasses/routines/FOne.java new file mode 100644 index 00000000000..95230df5457 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/sqlserver/generatedclasses/routines/FOne.java @@ -0,0 +1,27 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.sqlserver.generatedclasses.routines; + +/** + * This class is generated by jOOQ. + */ +public class FOne extends org.jooq.impl.AbstractRoutine { + + private static final long serialVersionUID = -53440767; + + + /** + * An uncommented item + */ + public static final org.jooq.Parameter RETURN_VALUE = createParameter("RETURN_VALUE", org.jooq.impl.SQLDataType.INTEGER); + + /** + * Create a new routine call instance + */ + public FOne() { + super("f_one", org.jooq.test.sqlserver.generatedclasses.Dbo.DBO, org.jooq.impl.SQLDataType.INTEGER); + + setReturnParameter(RETURN_VALUE); + } +} diff --git a/jOOQ-test/src/org/jooq/test/sqlserver/generatedclasses/routines/P391.java b/jOOQ-test/src/org/jooq/test/sqlserver/generatedclasses/routines/P391.java new file mode 100644 index 00000000000..173d3c4cd62 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/sqlserver/generatedclasses/routines/P391.java @@ -0,0 +1,115 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.sqlserver.generatedclasses.routines; + +/** + * This class is generated by jOOQ. + */ +public class P391 extends org.jooq.impl.AbstractRoutine { + + private static final long serialVersionUID = -1681766898; + + + /** + * An uncommented item + */ + public static final org.jooq.Parameter I1 = createParameter("i1", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter IO1 = createParameter("io1", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter O1 = createParameter("o1", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter O2 = createParameter("o2", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter IO2 = createParameter("io2", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter I2 = createParameter("i2", org.jooq.impl.SQLDataType.INTEGER); + + /** + * Create a new routine call instance + */ + public P391() { + super("p391", org.jooq.test.sqlserver.generatedclasses.Dbo.DBO); + + addInParameter(I1); + addInOutParameter(IO1); + addInOutParameter(O1); + addInOutParameter(O2); + addInOutParameter(IO2); + addInParameter(I2); + } + + /** + * Set the i1 parameter to the routine + */ + public void setI1(java.lang.Integer value) { + setValue(I1, value); + } + + /** + * Set the io1 parameter to the routine + */ + public void setIo1(java.lang.Integer value) { + setValue(IO1, value); + } + + /** + * Set the o1 parameter to the routine + */ + public void setO1(java.lang.Integer value) { + setValue(O1, value); + } + + /** + * Set the o2 parameter to the routine + */ + public void setO2(java.lang.Integer value) { + setValue(O2, value); + } + + /** + * Set the io2 parameter to the routine + */ + public void setIo2(java.lang.Integer value) { + setValue(IO2, value); + } + + /** + * Set the i2 parameter to the routine + */ + public void setI2(java.lang.Integer value) { + setValue(I2, value); + } + + public java.lang.Integer getIo1() { + return getValue(IO1); + } + + public java.lang.Integer getO1() { + return getValue(O1); + } + + public java.lang.Integer getO2() { + return getValue(O2); + } + + public java.lang.Integer getIo2() { + return getValue(IO2); + } +} diff --git a/jOOQ-test/src/org/jooq/test/sqlserver/generatedclasses/routines/PAuthorExists.java b/jOOQ-test/src/org/jooq/test/sqlserver/generatedclasses/routines/PAuthorExists.java new file mode 100644 index 00000000000..183aa06bc46 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/sqlserver/generatedclasses/routines/PAuthorExists.java @@ -0,0 +1,51 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.sqlserver.generatedclasses.routines; + +/** + * This class is generated by jOOQ. + */ +public class PAuthorExists extends org.jooq.impl.AbstractRoutine { + + private static final long serialVersionUID = 1792413373; + + + /** + * An uncommented item + */ + public static final org.jooq.Parameter AUTHOR_NAME = createParameter("author_name", org.jooq.impl.SQLDataType.VARCHAR); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter RESULT = createParameter("result", org.jooq.impl.SQLDataType.INTEGER); + + /** + * Create a new routine call instance + */ + public PAuthorExists() { + super("p_author_exists", org.jooq.test.sqlserver.generatedclasses.Dbo.DBO); + + addInParameter(AUTHOR_NAME); + addInOutParameter(RESULT); + } + + /** + * Set the author_name parameter to the routine + */ + public void setAuthorName(java.lang.String value) { + setValue(AUTHOR_NAME, value); + } + + /** + * Set the result parameter to the routine + */ + public void setResult(java.lang.Integer value) { + setValue(RESULT, value); + } + + public java.lang.Integer getResult() { + return getValue(RESULT); + } +} diff --git a/jOOQ-test/src/org/jooq/test/sqlserver/generatedclasses/routines/PCreateAuthor.java b/jOOQ-test/src/org/jooq/test/sqlserver/generatedclasses/routines/PCreateAuthor.java new file mode 100644 index 00000000000..c5bef15f9c1 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/sqlserver/generatedclasses/routines/PCreateAuthor.java @@ -0,0 +1,20 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.sqlserver.generatedclasses.routines; + +/** + * This class is generated by jOOQ. + */ +public class PCreateAuthor extends org.jooq.impl.AbstractRoutine { + + private static final long serialVersionUID = -1092533524; + + + /** + * Create a new routine call instance + */ + public PCreateAuthor() { + super("p_create_author", org.jooq.test.sqlserver.generatedclasses.Dbo.DBO); + } +} diff --git a/jOOQ-test/src/org/jooq/test/sqlserver/generatedclasses/routines/PCreateAuthorByName.java b/jOOQ-test/src/org/jooq/test/sqlserver/generatedclasses/routines/PCreateAuthorByName.java new file mode 100644 index 00000000000..610b29678ab --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/sqlserver/generatedclasses/routines/PCreateAuthorByName.java @@ -0,0 +1,47 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.sqlserver.generatedclasses.routines; + +/** + * This class is generated by jOOQ. + */ +public class PCreateAuthorByName extends org.jooq.impl.AbstractRoutine { + + private static final long serialVersionUID = -1034773390; + + + /** + * An uncommented item + */ + public static final org.jooq.Parameter FIRST_NAME = createParameter("first_name", org.jooq.impl.SQLDataType.VARCHAR); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter LAST_NAME = createParameter("last_name", org.jooq.impl.SQLDataType.VARCHAR); + + /** + * Create a new routine call instance + */ + public PCreateAuthorByName() { + super("p_create_author_by_name", org.jooq.test.sqlserver.generatedclasses.Dbo.DBO); + + addInParameter(FIRST_NAME); + addInParameter(LAST_NAME); + } + + /** + * Set the first_name parameter to the routine + */ + public void setFirstName(java.lang.String value) { + setValue(FIRST_NAME, value); + } + + /** + * Set the last_name parameter to the routine + */ + public void setLastName(java.lang.String value) { + setValue(LAST_NAME, value); + } +} diff --git a/jOOQ-test/src/org/jooq/test/sqlserver/generatedclasses/routines/PDefault.java b/jOOQ-test/src/org/jooq/test/sqlserver/generatedclasses/routines/PDefault.java new file mode 100644 index 00000000000..bd2e1df8890 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/sqlserver/generatedclasses/routines/PDefault.java @@ -0,0 +1,111 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.sqlserver.generatedclasses.routines; + +/** + * This class is generated by jOOQ. + */ +public class PDefault extends org.jooq.impl.AbstractRoutine { + + private static final long serialVersionUID = -401798427; + + + /** + * An uncommented item + */ + public static final org.jooq.Parameter P_IN_NUMBER = createParameter("p_in_number", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter P_OUT_NUMBER = createParameter("p_out_number", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter P_IN_VARCHAR = createParameter("p_in_varchar", org.jooq.impl.SQLDataType.VARCHAR); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter P_OUT_VARCHAR = createParameter("p_out_varchar", org.jooq.impl.SQLDataType.VARCHAR); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter P_IN_DATE = createParameter("p_in_date", org.jooq.impl.SQLDataType.DATE); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter P_OUT_DATE = createParameter("p_out_date", org.jooq.impl.SQLDataType.DATE); + + /** + * Create a new routine call instance + */ + public PDefault() { + super("p_default", org.jooq.test.sqlserver.generatedclasses.Dbo.DBO); + + addInParameter(P_IN_NUMBER); + addInOutParameter(P_OUT_NUMBER); + addInParameter(P_IN_VARCHAR); + addInOutParameter(P_OUT_VARCHAR); + addInParameter(P_IN_DATE); + addInOutParameter(P_OUT_DATE); + } + + /** + * Set the p_in_number parameter to the routine + */ + public void setPInNumber(java.lang.Integer value) { + setValue(P_IN_NUMBER, value); + } + + /** + * Set the p_out_number parameter to the routine + */ + public void setPOutNumber(java.lang.Integer value) { + setValue(P_OUT_NUMBER, value); + } + + /** + * Set the p_in_varchar parameter to the routine + */ + public void setPInVarchar(java.lang.String value) { + setValue(P_IN_VARCHAR, value); + } + + /** + * Set the p_out_varchar parameter to the routine + */ + public void setPOutVarchar(java.lang.String value) { + setValue(P_OUT_VARCHAR, value); + } + + /** + * Set the p_in_date parameter to the routine + */ + public void setPInDate(java.sql.Date value) { + setValue(P_IN_DATE, value); + } + + /** + * Set the p_out_date parameter to the routine + */ + public void setPOutDate(java.sql.Date value) { + setValue(P_OUT_DATE, value); + } + + public java.lang.Integer getPOutNumber() { + return getValue(P_OUT_NUMBER); + } + + public java.lang.String getPOutVarchar() { + return getValue(P_OUT_VARCHAR); + } + + public java.sql.Date getPOutDate() { + return getValue(P_OUT_DATE); + } +} diff --git a/jOOQ-test/src/org/jooq/test/sqlserver/generatedclasses/routines/PManyParameters.java b/jOOQ-test/src/org/jooq/test/sqlserver/generatedclasses/routines/PManyParameters.java new file mode 100644 index 00000000000..85b43c04154 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/sqlserver/generatedclasses/routines/PManyParameters.java @@ -0,0 +1,5221 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.sqlserver.generatedclasses.routines; + +/** + * This class is generated by jOOQ. + */ +public class PManyParameters extends org.jooq.impl.AbstractRoutine { + + private static final long serialVersionUID = -1049231864; + + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F000 = createParameter("f000", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F001 = createParameter("f001", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F002 = createParameter("f002", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F003 = createParameter("f003", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F004 = createParameter("f004", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F005 = createParameter("f005", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F006 = createParameter("f006", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F007 = createParameter("f007", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F008 = createParameter("f008", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F009 = createParameter("f009", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F010 = createParameter("f010", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F011 = createParameter("f011", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F012 = createParameter("f012", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F013 = createParameter("f013", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F014 = createParameter("f014", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F015 = createParameter("f015", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F016 = createParameter("f016", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F017 = createParameter("f017", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F018 = createParameter("f018", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F019 = createParameter("f019", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F020 = createParameter("f020", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F021 = createParameter("f021", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F022 = createParameter("f022", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F023 = createParameter("f023", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F024 = createParameter("f024", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F025 = createParameter("f025", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F026 = createParameter("f026", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F027 = createParameter("f027", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F028 = createParameter("f028", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F029 = createParameter("f029", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F030 = createParameter("f030", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F031 = createParameter("f031", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F032 = createParameter("f032", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F033 = createParameter("f033", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F034 = createParameter("f034", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F035 = createParameter("f035", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F036 = createParameter("f036", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F037 = createParameter("f037", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F038 = createParameter("f038", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F039 = createParameter("f039", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F040 = createParameter("f040", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F041 = createParameter("f041", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F042 = createParameter("f042", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F043 = createParameter("f043", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F044 = createParameter("f044", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F045 = createParameter("f045", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F046 = createParameter("f046", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F047 = createParameter("f047", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F048 = createParameter("f048", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F049 = createParameter("f049", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F050 = createParameter("f050", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F051 = createParameter("f051", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F052 = createParameter("f052", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F053 = createParameter("f053", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F054 = createParameter("f054", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F055 = createParameter("f055", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F056 = createParameter("f056", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F057 = createParameter("f057", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F058 = createParameter("f058", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F059 = createParameter("f059", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F060 = createParameter("f060", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F061 = createParameter("f061", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F062 = createParameter("f062", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F063 = createParameter("f063", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F064 = createParameter("f064", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F065 = createParameter("f065", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F066 = createParameter("f066", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F067 = createParameter("f067", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F068 = createParameter("f068", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F069 = createParameter("f069", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F070 = createParameter("f070", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F071 = createParameter("f071", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F072 = createParameter("f072", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F073 = createParameter("f073", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F074 = createParameter("f074", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F075 = createParameter("f075", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F076 = createParameter("f076", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F077 = createParameter("f077", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F078 = createParameter("f078", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F079 = createParameter("f079", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F080 = createParameter("f080", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F081 = createParameter("f081", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F082 = createParameter("f082", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F083 = createParameter("f083", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F084 = createParameter("f084", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F085 = createParameter("f085", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F086 = createParameter("f086", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F087 = createParameter("f087", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F088 = createParameter("f088", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F089 = createParameter("f089", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F090 = createParameter("f090", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F091 = createParameter("f091", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F092 = createParameter("f092", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F093 = createParameter("f093", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F094 = createParameter("f094", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F095 = createParameter("f095", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F096 = createParameter("f096", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F097 = createParameter("f097", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F098 = createParameter("f098", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F099 = createParameter("f099", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F100 = createParameter("f100", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F101 = createParameter("f101", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F102 = createParameter("f102", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F103 = createParameter("f103", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F104 = createParameter("f104", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F105 = createParameter("f105", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F106 = createParameter("f106", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F107 = createParameter("f107", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F108 = createParameter("f108", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F109 = createParameter("f109", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F110 = createParameter("f110", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F111 = createParameter("f111", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F112 = createParameter("f112", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F113 = createParameter("f113", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F114 = createParameter("f114", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F115 = createParameter("f115", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F116 = createParameter("f116", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F117 = createParameter("f117", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F118 = createParameter("f118", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F119 = createParameter("f119", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F120 = createParameter("f120", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F121 = createParameter("f121", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F122 = createParameter("f122", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F123 = createParameter("f123", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F124 = createParameter("f124", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F125 = createParameter("f125", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F126 = createParameter("f126", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F127 = createParameter("f127", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F128 = createParameter("f128", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F129 = createParameter("f129", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F130 = createParameter("f130", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F131 = createParameter("f131", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F132 = createParameter("f132", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F133 = createParameter("f133", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F134 = createParameter("f134", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F135 = createParameter("f135", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F136 = createParameter("f136", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F137 = createParameter("f137", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F138 = createParameter("f138", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F139 = createParameter("f139", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F140 = createParameter("f140", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F141 = createParameter("f141", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F142 = createParameter("f142", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F143 = createParameter("f143", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F144 = createParameter("f144", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F145 = createParameter("f145", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F146 = createParameter("f146", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F147 = createParameter("f147", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F148 = createParameter("f148", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F149 = createParameter("f149", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F150 = createParameter("f150", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F151 = createParameter("f151", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F152 = createParameter("f152", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F153 = createParameter("f153", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F154 = createParameter("f154", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F155 = createParameter("f155", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F156 = createParameter("f156", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F157 = createParameter("f157", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F158 = createParameter("f158", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F159 = createParameter("f159", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F160 = createParameter("f160", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F161 = createParameter("f161", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F162 = createParameter("f162", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F163 = createParameter("f163", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F164 = createParameter("f164", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F165 = createParameter("f165", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F166 = createParameter("f166", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F167 = createParameter("f167", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F168 = createParameter("f168", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F169 = createParameter("f169", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F170 = createParameter("f170", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F171 = createParameter("f171", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F172 = createParameter("f172", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F173 = createParameter("f173", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F174 = createParameter("f174", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F175 = createParameter("f175", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F176 = createParameter("f176", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F177 = createParameter("f177", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F178 = createParameter("f178", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F179 = createParameter("f179", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F180 = createParameter("f180", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F181 = createParameter("f181", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F182 = createParameter("f182", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F183 = createParameter("f183", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F184 = createParameter("f184", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F185 = createParameter("f185", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F186 = createParameter("f186", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F187 = createParameter("f187", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F188 = createParameter("f188", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F189 = createParameter("f189", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F190 = createParameter("f190", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F191 = createParameter("f191", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F192 = createParameter("f192", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F193 = createParameter("f193", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F194 = createParameter("f194", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F195 = createParameter("f195", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F196 = createParameter("f196", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F197 = createParameter("f197", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F198 = createParameter("f198", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F199 = createParameter("f199", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F200 = createParameter("f200", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F201 = createParameter("f201", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F202 = createParameter("f202", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F203 = createParameter("f203", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F204 = createParameter("f204", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F205 = createParameter("f205", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F206 = createParameter("f206", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F207 = createParameter("f207", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F208 = createParameter("f208", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F209 = createParameter("f209", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F210 = createParameter("f210", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F211 = createParameter("f211", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F212 = createParameter("f212", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F213 = createParameter("f213", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F214 = createParameter("f214", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F215 = createParameter("f215", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F216 = createParameter("f216", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F217 = createParameter("f217", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F218 = createParameter("f218", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F219 = createParameter("f219", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F220 = createParameter("f220", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F221 = createParameter("f221", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F222 = createParameter("f222", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F223 = createParameter("f223", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F224 = createParameter("f224", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F225 = createParameter("f225", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F226 = createParameter("f226", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F227 = createParameter("f227", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F228 = createParameter("f228", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F229 = createParameter("f229", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F230 = createParameter("f230", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F231 = createParameter("f231", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F232 = createParameter("f232", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F233 = createParameter("f233", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F234 = createParameter("f234", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F235 = createParameter("f235", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F236 = createParameter("f236", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F237 = createParameter("f237", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F238 = createParameter("f238", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F239 = createParameter("f239", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F240 = createParameter("f240", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F241 = createParameter("f241", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F242 = createParameter("f242", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F243 = createParameter("f243", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F244 = createParameter("f244", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F245 = createParameter("f245", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F246 = createParameter("f246", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F247 = createParameter("f247", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F248 = createParameter("f248", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F249 = createParameter("f249", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F250 = createParameter("f250", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F251 = createParameter("f251", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F252 = createParameter("f252", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F253 = createParameter("f253", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F254 = createParameter("f254", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F255 = createParameter("f255", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F256 = createParameter("f256", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F257 = createParameter("f257", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F258 = createParameter("f258", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F259 = createParameter("f259", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F260 = createParameter("f260", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F261 = createParameter("f261", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F262 = createParameter("f262", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F263 = createParameter("f263", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F264 = createParameter("f264", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F265 = createParameter("f265", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F266 = createParameter("f266", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F267 = createParameter("f267", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F268 = createParameter("f268", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F269 = createParameter("f269", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F270 = createParameter("f270", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F271 = createParameter("f271", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F272 = createParameter("f272", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F273 = createParameter("f273", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F274 = createParameter("f274", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F275 = createParameter("f275", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F276 = createParameter("f276", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F277 = createParameter("f277", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F278 = createParameter("f278", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F279 = createParameter("f279", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F280 = createParameter("f280", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F281 = createParameter("f281", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F282 = createParameter("f282", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F283 = createParameter("f283", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F284 = createParameter("f284", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F285 = createParameter("f285", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F286 = createParameter("f286", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F287 = createParameter("f287", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F288 = createParameter("f288", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F289 = createParameter("f289", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F290 = createParameter("f290", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F291 = createParameter("f291", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F292 = createParameter("f292", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F293 = createParameter("f293", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F294 = createParameter("f294", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F295 = createParameter("f295", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F296 = createParameter("f296", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F297 = createParameter("f297", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F298 = createParameter("f298", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F299 = createParameter("f299", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F300 = createParameter("f300", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F301 = createParameter("f301", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F302 = createParameter("f302", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F303 = createParameter("f303", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F304 = createParameter("f304", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F305 = createParameter("f305", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F306 = createParameter("f306", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F307 = createParameter("f307", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F308 = createParameter("f308", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F309 = createParameter("f309", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F310 = createParameter("f310", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F311 = createParameter("f311", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F312 = createParameter("f312", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F313 = createParameter("f313", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F314 = createParameter("f314", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F315 = createParameter("f315", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F316 = createParameter("f316", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F317 = createParameter("f317", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F318 = createParameter("f318", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F319 = createParameter("f319", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F320 = createParameter("f320", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F321 = createParameter("f321", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F322 = createParameter("f322", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F323 = createParameter("f323", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F324 = createParameter("f324", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F325 = createParameter("f325", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F326 = createParameter("f326", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F327 = createParameter("f327", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F328 = createParameter("f328", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F329 = createParameter("f329", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F330 = createParameter("f330", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F331 = createParameter("f331", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F332 = createParameter("f332", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F333 = createParameter("f333", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F334 = createParameter("f334", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F335 = createParameter("f335", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F336 = createParameter("f336", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F337 = createParameter("f337", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F338 = createParameter("f338", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F339 = createParameter("f339", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F340 = createParameter("f340", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F341 = createParameter("f341", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F342 = createParameter("f342", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F343 = createParameter("f343", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F344 = createParameter("f344", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F345 = createParameter("f345", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F346 = createParameter("f346", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F347 = createParameter("f347", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F348 = createParameter("f348", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F349 = createParameter("f349", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F350 = createParameter("f350", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F351 = createParameter("f351", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F352 = createParameter("f352", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F353 = createParameter("f353", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F354 = createParameter("f354", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F355 = createParameter("f355", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F356 = createParameter("f356", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F357 = createParameter("f357", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F358 = createParameter("f358", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F359 = createParameter("f359", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F360 = createParameter("f360", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F361 = createParameter("f361", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F362 = createParameter("f362", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F363 = createParameter("f363", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F364 = createParameter("f364", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F365 = createParameter("f365", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F366 = createParameter("f366", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F367 = createParameter("f367", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F368 = createParameter("f368", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F369 = createParameter("f369", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F370 = createParameter("f370", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F371 = createParameter("f371", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F372 = createParameter("f372", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F373 = createParameter("f373", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F374 = createParameter("f374", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F375 = createParameter("f375", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F376 = createParameter("f376", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F377 = createParameter("f377", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F378 = createParameter("f378", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F379 = createParameter("f379", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F380 = createParameter("f380", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F381 = createParameter("f381", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F382 = createParameter("f382", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F383 = createParameter("f383", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F384 = createParameter("f384", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F385 = createParameter("f385", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F386 = createParameter("f386", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F387 = createParameter("f387", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F388 = createParameter("f388", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F389 = createParameter("f389", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F390 = createParameter("f390", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F391 = createParameter("f391", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F392 = createParameter("f392", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F393 = createParameter("f393", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F394 = createParameter("f394", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F395 = createParameter("f395", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F396 = createParameter("f396", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F397 = createParameter("f397", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F398 = createParameter("f398", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter F399 = createParameter("f399", org.jooq.impl.SQLDataType.INTEGER); + + /** + * Create a new routine call instance + */ + public PManyParameters() { + super("p_many_parameters", org.jooq.test.sqlserver.generatedclasses.Dbo.DBO); + + addInParameter(F000); + addInParameter(F001); + addInParameter(F002); + addInParameter(F003); + addInParameter(F004); + addInParameter(F005); + addInParameter(F006); + addInParameter(F007); + addInParameter(F008); + addInParameter(F009); + addInParameter(F010); + addInParameter(F011); + addInParameter(F012); + addInParameter(F013); + addInParameter(F014); + addInParameter(F015); + addInParameter(F016); + addInParameter(F017); + addInParameter(F018); + addInParameter(F019); + addInParameter(F020); + addInParameter(F021); + addInParameter(F022); + addInParameter(F023); + addInParameter(F024); + addInParameter(F025); + addInParameter(F026); + addInParameter(F027); + addInParameter(F028); + addInParameter(F029); + addInParameter(F030); + addInParameter(F031); + addInParameter(F032); + addInParameter(F033); + addInParameter(F034); + addInParameter(F035); + addInParameter(F036); + addInParameter(F037); + addInParameter(F038); + addInParameter(F039); + addInParameter(F040); + addInParameter(F041); + addInParameter(F042); + addInParameter(F043); + addInParameter(F044); + addInParameter(F045); + addInParameter(F046); + addInParameter(F047); + addInParameter(F048); + addInParameter(F049); + addInParameter(F050); + addInParameter(F051); + addInParameter(F052); + addInParameter(F053); + addInParameter(F054); + addInParameter(F055); + addInParameter(F056); + addInParameter(F057); + addInParameter(F058); + addInParameter(F059); + addInParameter(F060); + addInParameter(F061); + addInParameter(F062); + addInParameter(F063); + addInParameter(F064); + addInParameter(F065); + addInParameter(F066); + addInParameter(F067); + addInParameter(F068); + addInParameter(F069); + addInParameter(F070); + addInParameter(F071); + addInParameter(F072); + addInParameter(F073); + addInParameter(F074); + addInParameter(F075); + addInParameter(F076); + addInParameter(F077); + addInParameter(F078); + addInParameter(F079); + addInParameter(F080); + addInParameter(F081); + addInParameter(F082); + addInParameter(F083); + addInParameter(F084); + addInParameter(F085); + addInParameter(F086); + addInParameter(F087); + addInParameter(F088); + addInParameter(F089); + addInParameter(F090); + addInParameter(F091); + addInParameter(F092); + addInParameter(F093); + addInParameter(F094); + addInParameter(F095); + addInParameter(F096); + addInParameter(F097); + addInParameter(F098); + addInParameter(F099); + addInParameter(F100); + addInParameter(F101); + addInParameter(F102); + addInParameter(F103); + addInParameter(F104); + addInParameter(F105); + addInParameter(F106); + addInParameter(F107); + addInParameter(F108); + addInParameter(F109); + addInParameter(F110); + addInParameter(F111); + addInParameter(F112); + addInParameter(F113); + addInParameter(F114); + addInParameter(F115); + addInParameter(F116); + addInParameter(F117); + addInParameter(F118); + addInParameter(F119); + addInParameter(F120); + addInParameter(F121); + addInParameter(F122); + addInParameter(F123); + addInParameter(F124); + addInParameter(F125); + addInParameter(F126); + addInParameter(F127); + addInParameter(F128); + addInParameter(F129); + addInParameter(F130); + addInParameter(F131); + addInParameter(F132); + addInParameter(F133); + addInParameter(F134); + addInParameter(F135); + addInParameter(F136); + addInParameter(F137); + addInParameter(F138); + addInParameter(F139); + addInParameter(F140); + addInParameter(F141); + addInParameter(F142); + addInParameter(F143); + addInParameter(F144); + addInParameter(F145); + addInParameter(F146); + addInParameter(F147); + addInParameter(F148); + addInParameter(F149); + addInParameter(F150); + addInParameter(F151); + addInParameter(F152); + addInParameter(F153); + addInParameter(F154); + addInParameter(F155); + addInParameter(F156); + addInParameter(F157); + addInParameter(F158); + addInParameter(F159); + addInParameter(F160); + addInParameter(F161); + addInParameter(F162); + addInParameter(F163); + addInParameter(F164); + addInParameter(F165); + addInParameter(F166); + addInParameter(F167); + addInParameter(F168); + addInParameter(F169); + addInParameter(F170); + addInParameter(F171); + addInParameter(F172); + addInParameter(F173); + addInParameter(F174); + addInParameter(F175); + addInParameter(F176); + addInParameter(F177); + addInParameter(F178); + addInParameter(F179); + addInParameter(F180); + addInParameter(F181); + addInParameter(F182); + addInParameter(F183); + addInParameter(F184); + addInParameter(F185); + addInParameter(F186); + addInParameter(F187); + addInParameter(F188); + addInParameter(F189); + addInParameter(F190); + addInParameter(F191); + addInParameter(F192); + addInParameter(F193); + addInParameter(F194); + addInParameter(F195); + addInParameter(F196); + addInParameter(F197); + addInParameter(F198); + addInParameter(F199); + addInParameter(F200); + addInParameter(F201); + addInParameter(F202); + addInParameter(F203); + addInParameter(F204); + addInParameter(F205); + addInParameter(F206); + addInParameter(F207); + addInParameter(F208); + addInParameter(F209); + addInParameter(F210); + addInParameter(F211); + addInParameter(F212); + addInParameter(F213); + addInParameter(F214); + addInParameter(F215); + addInParameter(F216); + addInParameter(F217); + addInParameter(F218); + addInParameter(F219); + addInParameter(F220); + addInParameter(F221); + addInParameter(F222); + addInParameter(F223); + addInParameter(F224); + addInParameter(F225); + addInParameter(F226); + addInParameter(F227); + addInParameter(F228); + addInParameter(F229); + addInParameter(F230); + addInParameter(F231); + addInParameter(F232); + addInParameter(F233); + addInParameter(F234); + addInParameter(F235); + addInParameter(F236); + addInParameter(F237); + addInParameter(F238); + addInParameter(F239); + addInParameter(F240); + addInParameter(F241); + addInParameter(F242); + addInParameter(F243); + addInParameter(F244); + addInParameter(F245); + addInParameter(F246); + addInParameter(F247); + addInParameter(F248); + addInParameter(F249); + addInParameter(F250); + addInParameter(F251); + addInParameter(F252); + addInParameter(F253); + addInParameter(F254); + addInParameter(F255); + addInParameter(F256); + addInParameter(F257); + addInParameter(F258); + addInParameter(F259); + addInParameter(F260); + addInParameter(F261); + addInParameter(F262); + addInParameter(F263); + addInParameter(F264); + addInParameter(F265); + addInParameter(F266); + addInParameter(F267); + addInParameter(F268); + addInParameter(F269); + addInParameter(F270); + addInParameter(F271); + addInParameter(F272); + addInParameter(F273); + addInParameter(F274); + addInParameter(F275); + addInParameter(F276); + addInParameter(F277); + addInParameter(F278); + addInParameter(F279); + addInParameter(F280); + addInParameter(F281); + addInParameter(F282); + addInParameter(F283); + addInParameter(F284); + addInParameter(F285); + addInParameter(F286); + addInParameter(F287); + addInParameter(F288); + addInParameter(F289); + addInParameter(F290); + addInParameter(F291); + addInParameter(F292); + addInParameter(F293); + addInParameter(F294); + addInParameter(F295); + addInParameter(F296); + addInParameter(F297); + addInParameter(F298); + addInParameter(F299); + addInParameter(F300); + addInParameter(F301); + addInParameter(F302); + addInParameter(F303); + addInParameter(F304); + addInParameter(F305); + addInParameter(F306); + addInParameter(F307); + addInParameter(F308); + addInParameter(F309); + addInParameter(F310); + addInParameter(F311); + addInParameter(F312); + addInParameter(F313); + addInParameter(F314); + addInParameter(F315); + addInParameter(F316); + addInParameter(F317); + addInParameter(F318); + addInParameter(F319); + addInParameter(F320); + addInParameter(F321); + addInParameter(F322); + addInParameter(F323); + addInParameter(F324); + addInParameter(F325); + addInParameter(F326); + addInParameter(F327); + addInParameter(F328); + addInParameter(F329); + addInParameter(F330); + addInParameter(F331); + addInParameter(F332); + addInParameter(F333); + addInParameter(F334); + addInParameter(F335); + addInParameter(F336); + addInParameter(F337); + addInParameter(F338); + addInParameter(F339); + addInParameter(F340); + addInParameter(F341); + addInParameter(F342); + addInParameter(F343); + addInParameter(F344); + addInParameter(F345); + addInParameter(F346); + addInParameter(F347); + addInParameter(F348); + addInParameter(F349); + addInParameter(F350); + addInParameter(F351); + addInParameter(F352); + addInParameter(F353); + addInParameter(F354); + addInParameter(F355); + addInParameter(F356); + addInParameter(F357); + addInParameter(F358); + addInParameter(F359); + addInParameter(F360); + addInParameter(F361); + addInParameter(F362); + addInParameter(F363); + addInParameter(F364); + addInParameter(F365); + addInParameter(F366); + addInParameter(F367); + addInParameter(F368); + addInParameter(F369); + addInParameter(F370); + addInParameter(F371); + addInParameter(F372); + addInParameter(F373); + addInParameter(F374); + addInParameter(F375); + addInParameter(F376); + addInParameter(F377); + addInParameter(F378); + addInParameter(F379); + addInParameter(F380); + addInParameter(F381); + addInParameter(F382); + addInParameter(F383); + addInParameter(F384); + addInParameter(F385); + addInParameter(F386); + addInParameter(F387); + addInParameter(F388); + addInParameter(F389); + addInParameter(F390); + addInParameter(F391); + addInParameter(F392); + addInParameter(F393); + addInParameter(F394); + addInParameter(F395); + addInParameter(F396); + addInParameter(F397); + addInParameter(F398); + addInParameter(F399); + } + + /** + * Set the f000 parameter to the routine + */ + public void setF000(java.lang.Integer value) { + setValue(F000, value); + } + + /** + * Set the f001 parameter to the routine + */ + public void setF001(java.lang.Integer value) { + setValue(F001, value); + } + + /** + * Set the f002 parameter to the routine + */ + public void setF002(java.lang.Integer value) { + setValue(F002, value); + } + + /** + * Set the f003 parameter to the routine + */ + public void setF003(java.lang.Integer value) { + setValue(F003, value); + } + + /** + * Set the f004 parameter to the routine + */ + public void setF004(java.lang.Integer value) { + setValue(F004, value); + } + + /** + * Set the f005 parameter to the routine + */ + public void setF005(java.lang.Integer value) { + setValue(F005, value); + } + + /** + * Set the f006 parameter to the routine + */ + public void setF006(java.lang.Integer value) { + setValue(F006, value); + } + + /** + * Set the f007 parameter to the routine + */ + public void setF007(java.lang.Integer value) { + setValue(F007, value); + } + + /** + * Set the f008 parameter to the routine + */ + public void setF008(java.lang.Integer value) { + setValue(F008, value); + } + + /** + * Set the f009 parameter to the routine + */ + public void setF009(java.lang.Integer value) { + setValue(F009, value); + } + + /** + * Set the f010 parameter to the routine + */ + public void setF010(java.lang.Integer value) { + setValue(F010, value); + } + + /** + * Set the f011 parameter to the routine + */ + public void setF011(java.lang.Integer value) { + setValue(F011, value); + } + + /** + * Set the f012 parameter to the routine + */ + public void setF012(java.lang.Integer value) { + setValue(F012, value); + } + + /** + * Set the f013 parameter to the routine + */ + public void setF013(java.lang.Integer value) { + setValue(F013, value); + } + + /** + * Set the f014 parameter to the routine + */ + public void setF014(java.lang.Integer value) { + setValue(F014, value); + } + + /** + * Set the f015 parameter to the routine + */ + public void setF015(java.lang.Integer value) { + setValue(F015, value); + } + + /** + * Set the f016 parameter to the routine + */ + public void setF016(java.lang.Integer value) { + setValue(F016, value); + } + + /** + * Set the f017 parameter to the routine + */ + public void setF017(java.lang.Integer value) { + setValue(F017, value); + } + + /** + * Set the f018 parameter to the routine + */ + public void setF018(java.lang.Integer value) { + setValue(F018, value); + } + + /** + * Set the f019 parameter to the routine + */ + public void setF019(java.lang.Integer value) { + setValue(F019, value); + } + + /** + * Set the f020 parameter to the routine + */ + public void setF020(java.lang.Integer value) { + setValue(F020, value); + } + + /** + * Set the f021 parameter to the routine + */ + public void setF021(java.lang.Integer value) { + setValue(F021, value); + } + + /** + * Set the f022 parameter to the routine + */ + public void setF022(java.lang.Integer value) { + setValue(F022, value); + } + + /** + * Set the f023 parameter to the routine + */ + public void setF023(java.lang.Integer value) { + setValue(F023, value); + } + + /** + * Set the f024 parameter to the routine + */ + public void setF024(java.lang.Integer value) { + setValue(F024, value); + } + + /** + * Set the f025 parameter to the routine + */ + public void setF025(java.lang.Integer value) { + setValue(F025, value); + } + + /** + * Set the f026 parameter to the routine + */ + public void setF026(java.lang.Integer value) { + setValue(F026, value); + } + + /** + * Set the f027 parameter to the routine + */ + public void setF027(java.lang.Integer value) { + setValue(F027, value); + } + + /** + * Set the f028 parameter to the routine + */ + public void setF028(java.lang.Integer value) { + setValue(F028, value); + } + + /** + * Set the f029 parameter to the routine + */ + public void setF029(java.lang.Integer value) { + setValue(F029, value); + } + + /** + * Set the f030 parameter to the routine + */ + public void setF030(java.lang.Integer value) { + setValue(F030, value); + } + + /** + * Set the f031 parameter to the routine + */ + public void setF031(java.lang.Integer value) { + setValue(F031, value); + } + + /** + * Set the f032 parameter to the routine + */ + public void setF032(java.lang.Integer value) { + setValue(F032, value); + } + + /** + * Set the f033 parameter to the routine + */ + public void setF033(java.lang.Integer value) { + setValue(F033, value); + } + + /** + * Set the f034 parameter to the routine + */ + public void setF034(java.lang.Integer value) { + setValue(F034, value); + } + + /** + * Set the f035 parameter to the routine + */ + public void setF035(java.lang.Integer value) { + setValue(F035, value); + } + + /** + * Set the f036 parameter to the routine + */ + public void setF036(java.lang.Integer value) { + setValue(F036, value); + } + + /** + * Set the f037 parameter to the routine + */ + public void setF037(java.lang.Integer value) { + setValue(F037, value); + } + + /** + * Set the f038 parameter to the routine + */ + public void setF038(java.lang.Integer value) { + setValue(F038, value); + } + + /** + * Set the f039 parameter to the routine + */ + public void setF039(java.lang.Integer value) { + setValue(F039, value); + } + + /** + * Set the f040 parameter to the routine + */ + public void setF040(java.lang.Integer value) { + setValue(F040, value); + } + + /** + * Set the f041 parameter to the routine + */ + public void setF041(java.lang.Integer value) { + setValue(F041, value); + } + + /** + * Set the f042 parameter to the routine + */ + public void setF042(java.lang.Integer value) { + setValue(F042, value); + } + + /** + * Set the f043 parameter to the routine + */ + public void setF043(java.lang.Integer value) { + setValue(F043, value); + } + + /** + * Set the f044 parameter to the routine + */ + public void setF044(java.lang.Integer value) { + setValue(F044, value); + } + + /** + * Set the f045 parameter to the routine + */ + public void setF045(java.lang.Integer value) { + setValue(F045, value); + } + + /** + * Set the f046 parameter to the routine + */ + public void setF046(java.lang.Integer value) { + setValue(F046, value); + } + + /** + * Set the f047 parameter to the routine + */ + public void setF047(java.lang.Integer value) { + setValue(F047, value); + } + + /** + * Set the f048 parameter to the routine + */ + public void setF048(java.lang.Integer value) { + setValue(F048, value); + } + + /** + * Set the f049 parameter to the routine + */ + public void setF049(java.lang.Integer value) { + setValue(F049, value); + } + + /** + * Set the f050 parameter to the routine + */ + public void setF050(java.lang.Integer value) { + setValue(F050, value); + } + + /** + * Set the f051 parameter to the routine + */ + public void setF051(java.lang.Integer value) { + setValue(F051, value); + } + + /** + * Set the f052 parameter to the routine + */ + public void setF052(java.lang.Integer value) { + setValue(F052, value); + } + + /** + * Set the f053 parameter to the routine + */ + public void setF053(java.lang.Integer value) { + setValue(F053, value); + } + + /** + * Set the f054 parameter to the routine + */ + public void setF054(java.lang.Integer value) { + setValue(F054, value); + } + + /** + * Set the f055 parameter to the routine + */ + public void setF055(java.lang.Integer value) { + setValue(F055, value); + } + + /** + * Set the f056 parameter to the routine + */ + public void setF056(java.lang.Integer value) { + setValue(F056, value); + } + + /** + * Set the f057 parameter to the routine + */ + public void setF057(java.lang.Integer value) { + setValue(F057, value); + } + + /** + * Set the f058 parameter to the routine + */ + public void setF058(java.lang.Integer value) { + setValue(F058, value); + } + + /** + * Set the f059 parameter to the routine + */ + public void setF059(java.lang.Integer value) { + setValue(F059, value); + } + + /** + * Set the f060 parameter to the routine + */ + public void setF060(java.lang.Integer value) { + setValue(F060, value); + } + + /** + * Set the f061 parameter to the routine + */ + public void setF061(java.lang.Integer value) { + setValue(F061, value); + } + + /** + * Set the f062 parameter to the routine + */ + public void setF062(java.lang.Integer value) { + setValue(F062, value); + } + + /** + * Set the f063 parameter to the routine + */ + public void setF063(java.lang.Integer value) { + setValue(F063, value); + } + + /** + * Set the f064 parameter to the routine + */ + public void setF064(java.lang.Integer value) { + setValue(F064, value); + } + + /** + * Set the f065 parameter to the routine + */ + public void setF065(java.lang.Integer value) { + setValue(F065, value); + } + + /** + * Set the f066 parameter to the routine + */ + public void setF066(java.lang.Integer value) { + setValue(F066, value); + } + + /** + * Set the f067 parameter to the routine + */ + public void setF067(java.lang.Integer value) { + setValue(F067, value); + } + + /** + * Set the f068 parameter to the routine + */ + public void setF068(java.lang.Integer value) { + setValue(F068, value); + } + + /** + * Set the f069 parameter to the routine + */ + public void setF069(java.lang.Integer value) { + setValue(F069, value); + } + + /** + * Set the f070 parameter to the routine + */ + public void setF070(java.lang.Integer value) { + setValue(F070, value); + } + + /** + * Set the f071 parameter to the routine + */ + public void setF071(java.lang.Integer value) { + setValue(F071, value); + } + + /** + * Set the f072 parameter to the routine + */ + public void setF072(java.lang.Integer value) { + setValue(F072, value); + } + + /** + * Set the f073 parameter to the routine + */ + public void setF073(java.lang.Integer value) { + setValue(F073, value); + } + + /** + * Set the f074 parameter to the routine + */ + public void setF074(java.lang.Integer value) { + setValue(F074, value); + } + + /** + * Set the f075 parameter to the routine + */ + public void setF075(java.lang.Integer value) { + setValue(F075, value); + } + + /** + * Set the f076 parameter to the routine + */ + public void setF076(java.lang.Integer value) { + setValue(F076, value); + } + + /** + * Set the f077 parameter to the routine + */ + public void setF077(java.lang.Integer value) { + setValue(F077, value); + } + + /** + * Set the f078 parameter to the routine + */ + public void setF078(java.lang.Integer value) { + setValue(F078, value); + } + + /** + * Set the f079 parameter to the routine + */ + public void setF079(java.lang.Integer value) { + setValue(F079, value); + } + + /** + * Set the f080 parameter to the routine + */ + public void setF080(java.lang.Integer value) { + setValue(F080, value); + } + + /** + * Set the f081 parameter to the routine + */ + public void setF081(java.lang.Integer value) { + setValue(F081, value); + } + + /** + * Set the f082 parameter to the routine + */ + public void setF082(java.lang.Integer value) { + setValue(F082, value); + } + + /** + * Set the f083 parameter to the routine + */ + public void setF083(java.lang.Integer value) { + setValue(F083, value); + } + + /** + * Set the f084 parameter to the routine + */ + public void setF084(java.lang.Integer value) { + setValue(F084, value); + } + + /** + * Set the f085 parameter to the routine + */ + public void setF085(java.lang.Integer value) { + setValue(F085, value); + } + + /** + * Set the f086 parameter to the routine + */ + public void setF086(java.lang.Integer value) { + setValue(F086, value); + } + + /** + * Set the f087 parameter to the routine + */ + public void setF087(java.lang.Integer value) { + setValue(F087, value); + } + + /** + * Set the f088 parameter to the routine + */ + public void setF088(java.lang.Integer value) { + setValue(F088, value); + } + + /** + * Set the f089 parameter to the routine + */ + public void setF089(java.lang.Integer value) { + setValue(F089, value); + } + + /** + * Set the f090 parameter to the routine + */ + public void setF090(java.lang.Integer value) { + setValue(F090, value); + } + + /** + * Set the f091 parameter to the routine + */ + public void setF091(java.lang.Integer value) { + setValue(F091, value); + } + + /** + * Set the f092 parameter to the routine + */ + public void setF092(java.lang.Integer value) { + setValue(F092, value); + } + + /** + * Set the f093 parameter to the routine + */ + public void setF093(java.lang.Integer value) { + setValue(F093, value); + } + + /** + * Set the f094 parameter to the routine + */ + public void setF094(java.lang.Integer value) { + setValue(F094, value); + } + + /** + * Set the f095 parameter to the routine + */ + public void setF095(java.lang.Integer value) { + setValue(F095, value); + } + + /** + * Set the f096 parameter to the routine + */ + public void setF096(java.lang.Integer value) { + setValue(F096, value); + } + + /** + * Set the f097 parameter to the routine + */ + public void setF097(java.lang.Integer value) { + setValue(F097, value); + } + + /** + * Set the f098 parameter to the routine + */ + public void setF098(java.lang.Integer value) { + setValue(F098, value); + } + + /** + * Set the f099 parameter to the routine + */ + public void setF099(java.lang.Integer value) { + setValue(F099, value); + } + + /** + * Set the f100 parameter to the routine + */ + public void setF100(java.lang.Integer value) { + setValue(F100, value); + } + + /** + * Set the f101 parameter to the routine + */ + public void setF101(java.lang.Integer value) { + setValue(F101, value); + } + + /** + * Set the f102 parameter to the routine + */ + public void setF102(java.lang.Integer value) { + setValue(F102, value); + } + + /** + * Set the f103 parameter to the routine + */ + public void setF103(java.lang.Integer value) { + setValue(F103, value); + } + + /** + * Set the f104 parameter to the routine + */ + public void setF104(java.lang.Integer value) { + setValue(F104, value); + } + + /** + * Set the f105 parameter to the routine + */ + public void setF105(java.lang.Integer value) { + setValue(F105, value); + } + + /** + * Set the f106 parameter to the routine + */ + public void setF106(java.lang.Integer value) { + setValue(F106, value); + } + + /** + * Set the f107 parameter to the routine + */ + public void setF107(java.lang.Integer value) { + setValue(F107, value); + } + + /** + * Set the f108 parameter to the routine + */ + public void setF108(java.lang.Integer value) { + setValue(F108, value); + } + + /** + * Set the f109 parameter to the routine + */ + public void setF109(java.lang.Integer value) { + setValue(F109, value); + } + + /** + * Set the f110 parameter to the routine + */ + public void setF110(java.lang.Integer value) { + setValue(F110, value); + } + + /** + * Set the f111 parameter to the routine + */ + public void setF111(java.lang.Integer value) { + setValue(F111, value); + } + + /** + * Set the f112 parameter to the routine + */ + public void setF112(java.lang.Integer value) { + setValue(F112, value); + } + + /** + * Set the f113 parameter to the routine + */ + public void setF113(java.lang.Integer value) { + setValue(F113, value); + } + + /** + * Set the f114 parameter to the routine + */ + public void setF114(java.lang.Integer value) { + setValue(F114, value); + } + + /** + * Set the f115 parameter to the routine + */ + public void setF115(java.lang.Integer value) { + setValue(F115, value); + } + + /** + * Set the f116 parameter to the routine + */ + public void setF116(java.lang.Integer value) { + setValue(F116, value); + } + + /** + * Set the f117 parameter to the routine + */ + public void setF117(java.lang.Integer value) { + setValue(F117, value); + } + + /** + * Set the f118 parameter to the routine + */ + public void setF118(java.lang.Integer value) { + setValue(F118, value); + } + + /** + * Set the f119 parameter to the routine + */ + public void setF119(java.lang.Integer value) { + setValue(F119, value); + } + + /** + * Set the f120 parameter to the routine + */ + public void setF120(java.lang.Integer value) { + setValue(F120, value); + } + + /** + * Set the f121 parameter to the routine + */ + public void setF121(java.lang.Integer value) { + setValue(F121, value); + } + + /** + * Set the f122 parameter to the routine + */ + public void setF122(java.lang.Integer value) { + setValue(F122, value); + } + + /** + * Set the f123 parameter to the routine + */ + public void setF123(java.lang.Integer value) { + setValue(F123, value); + } + + /** + * Set the f124 parameter to the routine + */ + public void setF124(java.lang.Integer value) { + setValue(F124, value); + } + + /** + * Set the f125 parameter to the routine + */ + public void setF125(java.lang.Integer value) { + setValue(F125, value); + } + + /** + * Set the f126 parameter to the routine + */ + public void setF126(java.lang.Integer value) { + setValue(F126, value); + } + + /** + * Set the f127 parameter to the routine + */ + public void setF127(java.lang.Integer value) { + setValue(F127, value); + } + + /** + * Set the f128 parameter to the routine + */ + public void setF128(java.lang.Integer value) { + setValue(F128, value); + } + + /** + * Set the f129 parameter to the routine + */ + public void setF129(java.lang.Integer value) { + setValue(F129, value); + } + + /** + * Set the f130 parameter to the routine + */ + public void setF130(java.lang.Integer value) { + setValue(F130, value); + } + + /** + * Set the f131 parameter to the routine + */ + public void setF131(java.lang.Integer value) { + setValue(F131, value); + } + + /** + * Set the f132 parameter to the routine + */ + public void setF132(java.lang.Integer value) { + setValue(F132, value); + } + + /** + * Set the f133 parameter to the routine + */ + public void setF133(java.lang.Integer value) { + setValue(F133, value); + } + + /** + * Set the f134 parameter to the routine + */ + public void setF134(java.lang.Integer value) { + setValue(F134, value); + } + + /** + * Set the f135 parameter to the routine + */ + public void setF135(java.lang.Integer value) { + setValue(F135, value); + } + + /** + * Set the f136 parameter to the routine + */ + public void setF136(java.lang.Integer value) { + setValue(F136, value); + } + + /** + * Set the f137 parameter to the routine + */ + public void setF137(java.lang.Integer value) { + setValue(F137, value); + } + + /** + * Set the f138 parameter to the routine + */ + public void setF138(java.lang.Integer value) { + setValue(F138, value); + } + + /** + * Set the f139 parameter to the routine + */ + public void setF139(java.lang.Integer value) { + setValue(F139, value); + } + + /** + * Set the f140 parameter to the routine + */ + public void setF140(java.lang.Integer value) { + setValue(F140, value); + } + + /** + * Set the f141 parameter to the routine + */ + public void setF141(java.lang.Integer value) { + setValue(F141, value); + } + + /** + * Set the f142 parameter to the routine + */ + public void setF142(java.lang.Integer value) { + setValue(F142, value); + } + + /** + * Set the f143 parameter to the routine + */ + public void setF143(java.lang.Integer value) { + setValue(F143, value); + } + + /** + * Set the f144 parameter to the routine + */ + public void setF144(java.lang.Integer value) { + setValue(F144, value); + } + + /** + * Set the f145 parameter to the routine + */ + public void setF145(java.lang.Integer value) { + setValue(F145, value); + } + + /** + * Set the f146 parameter to the routine + */ + public void setF146(java.lang.Integer value) { + setValue(F146, value); + } + + /** + * Set the f147 parameter to the routine + */ + public void setF147(java.lang.Integer value) { + setValue(F147, value); + } + + /** + * Set the f148 parameter to the routine + */ + public void setF148(java.lang.Integer value) { + setValue(F148, value); + } + + /** + * Set the f149 parameter to the routine + */ + public void setF149(java.lang.Integer value) { + setValue(F149, value); + } + + /** + * Set the f150 parameter to the routine + */ + public void setF150(java.lang.Integer value) { + setValue(F150, value); + } + + /** + * Set the f151 parameter to the routine + */ + public void setF151(java.lang.Integer value) { + setValue(F151, value); + } + + /** + * Set the f152 parameter to the routine + */ + public void setF152(java.lang.Integer value) { + setValue(F152, value); + } + + /** + * Set the f153 parameter to the routine + */ + public void setF153(java.lang.Integer value) { + setValue(F153, value); + } + + /** + * Set the f154 parameter to the routine + */ + public void setF154(java.lang.Integer value) { + setValue(F154, value); + } + + /** + * Set the f155 parameter to the routine + */ + public void setF155(java.lang.Integer value) { + setValue(F155, value); + } + + /** + * Set the f156 parameter to the routine + */ + public void setF156(java.lang.Integer value) { + setValue(F156, value); + } + + /** + * Set the f157 parameter to the routine + */ + public void setF157(java.lang.Integer value) { + setValue(F157, value); + } + + /** + * Set the f158 parameter to the routine + */ + public void setF158(java.lang.Integer value) { + setValue(F158, value); + } + + /** + * Set the f159 parameter to the routine + */ + public void setF159(java.lang.Integer value) { + setValue(F159, value); + } + + /** + * Set the f160 parameter to the routine + */ + public void setF160(java.lang.Integer value) { + setValue(F160, value); + } + + /** + * Set the f161 parameter to the routine + */ + public void setF161(java.lang.Integer value) { + setValue(F161, value); + } + + /** + * Set the f162 parameter to the routine + */ + public void setF162(java.lang.Integer value) { + setValue(F162, value); + } + + /** + * Set the f163 parameter to the routine + */ + public void setF163(java.lang.Integer value) { + setValue(F163, value); + } + + /** + * Set the f164 parameter to the routine + */ + public void setF164(java.lang.Integer value) { + setValue(F164, value); + } + + /** + * Set the f165 parameter to the routine + */ + public void setF165(java.lang.Integer value) { + setValue(F165, value); + } + + /** + * Set the f166 parameter to the routine + */ + public void setF166(java.lang.Integer value) { + setValue(F166, value); + } + + /** + * Set the f167 parameter to the routine + */ + public void setF167(java.lang.Integer value) { + setValue(F167, value); + } + + /** + * Set the f168 parameter to the routine + */ + public void setF168(java.lang.Integer value) { + setValue(F168, value); + } + + /** + * Set the f169 parameter to the routine + */ + public void setF169(java.lang.Integer value) { + setValue(F169, value); + } + + /** + * Set the f170 parameter to the routine + */ + public void setF170(java.lang.Integer value) { + setValue(F170, value); + } + + /** + * Set the f171 parameter to the routine + */ + public void setF171(java.lang.Integer value) { + setValue(F171, value); + } + + /** + * Set the f172 parameter to the routine + */ + public void setF172(java.lang.Integer value) { + setValue(F172, value); + } + + /** + * Set the f173 parameter to the routine + */ + public void setF173(java.lang.Integer value) { + setValue(F173, value); + } + + /** + * Set the f174 parameter to the routine + */ + public void setF174(java.lang.Integer value) { + setValue(F174, value); + } + + /** + * Set the f175 parameter to the routine + */ + public void setF175(java.lang.Integer value) { + setValue(F175, value); + } + + /** + * Set the f176 parameter to the routine + */ + public void setF176(java.lang.Integer value) { + setValue(F176, value); + } + + /** + * Set the f177 parameter to the routine + */ + public void setF177(java.lang.Integer value) { + setValue(F177, value); + } + + /** + * Set the f178 parameter to the routine + */ + public void setF178(java.lang.Integer value) { + setValue(F178, value); + } + + /** + * Set the f179 parameter to the routine + */ + public void setF179(java.lang.Integer value) { + setValue(F179, value); + } + + /** + * Set the f180 parameter to the routine + */ + public void setF180(java.lang.Integer value) { + setValue(F180, value); + } + + /** + * Set the f181 parameter to the routine + */ + public void setF181(java.lang.Integer value) { + setValue(F181, value); + } + + /** + * Set the f182 parameter to the routine + */ + public void setF182(java.lang.Integer value) { + setValue(F182, value); + } + + /** + * Set the f183 parameter to the routine + */ + public void setF183(java.lang.Integer value) { + setValue(F183, value); + } + + /** + * Set the f184 parameter to the routine + */ + public void setF184(java.lang.Integer value) { + setValue(F184, value); + } + + /** + * Set the f185 parameter to the routine + */ + public void setF185(java.lang.Integer value) { + setValue(F185, value); + } + + /** + * Set the f186 parameter to the routine + */ + public void setF186(java.lang.Integer value) { + setValue(F186, value); + } + + /** + * Set the f187 parameter to the routine + */ + public void setF187(java.lang.Integer value) { + setValue(F187, value); + } + + /** + * Set the f188 parameter to the routine + */ + public void setF188(java.lang.Integer value) { + setValue(F188, value); + } + + /** + * Set the f189 parameter to the routine + */ + public void setF189(java.lang.Integer value) { + setValue(F189, value); + } + + /** + * Set the f190 parameter to the routine + */ + public void setF190(java.lang.Integer value) { + setValue(F190, value); + } + + /** + * Set the f191 parameter to the routine + */ + public void setF191(java.lang.Integer value) { + setValue(F191, value); + } + + /** + * Set the f192 parameter to the routine + */ + public void setF192(java.lang.Integer value) { + setValue(F192, value); + } + + /** + * Set the f193 parameter to the routine + */ + public void setF193(java.lang.Integer value) { + setValue(F193, value); + } + + /** + * Set the f194 parameter to the routine + */ + public void setF194(java.lang.Integer value) { + setValue(F194, value); + } + + /** + * Set the f195 parameter to the routine + */ + public void setF195(java.lang.Integer value) { + setValue(F195, value); + } + + /** + * Set the f196 parameter to the routine + */ + public void setF196(java.lang.Integer value) { + setValue(F196, value); + } + + /** + * Set the f197 parameter to the routine + */ + public void setF197(java.lang.Integer value) { + setValue(F197, value); + } + + /** + * Set the f198 parameter to the routine + */ + public void setF198(java.lang.Integer value) { + setValue(F198, value); + } + + /** + * Set the f199 parameter to the routine + */ + public void setF199(java.lang.Integer value) { + setValue(F199, value); + } + + /** + * Set the f200 parameter to the routine + */ + public void setF200(java.lang.Integer value) { + setValue(F200, value); + } + + /** + * Set the f201 parameter to the routine + */ + public void setF201(java.lang.Integer value) { + setValue(F201, value); + } + + /** + * Set the f202 parameter to the routine + */ + public void setF202(java.lang.Integer value) { + setValue(F202, value); + } + + /** + * Set the f203 parameter to the routine + */ + public void setF203(java.lang.Integer value) { + setValue(F203, value); + } + + /** + * Set the f204 parameter to the routine + */ + public void setF204(java.lang.Integer value) { + setValue(F204, value); + } + + /** + * Set the f205 parameter to the routine + */ + public void setF205(java.lang.Integer value) { + setValue(F205, value); + } + + /** + * Set the f206 parameter to the routine + */ + public void setF206(java.lang.Integer value) { + setValue(F206, value); + } + + /** + * Set the f207 parameter to the routine + */ + public void setF207(java.lang.Integer value) { + setValue(F207, value); + } + + /** + * Set the f208 parameter to the routine + */ + public void setF208(java.lang.Integer value) { + setValue(F208, value); + } + + /** + * Set the f209 parameter to the routine + */ + public void setF209(java.lang.Integer value) { + setValue(F209, value); + } + + /** + * Set the f210 parameter to the routine + */ + public void setF210(java.lang.Integer value) { + setValue(F210, value); + } + + /** + * Set the f211 parameter to the routine + */ + public void setF211(java.lang.Integer value) { + setValue(F211, value); + } + + /** + * Set the f212 parameter to the routine + */ + public void setF212(java.lang.Integer value) { + setValue(F212, value); + } + + /** + * Set the f213 parameter to the routine + */ + public void setF213(java.lang.Integer value) { + setValue(F213, value); + } + + /** + * Set the f214 parameter to the routine + */ + public void setF214(java.lang.Integer value) { + setValue(F214, value); + } + + /** + * Set the f215 parameter to the routine + */ + public void setF215(java.lang.Integer value) { + setValue(F215, value); + } + + /** + * Set the f216 parameter to the routine + */ + public void setF216(java.lang.Integer value) { + setValue(F216, value); + } + + /** + * Set the f217 parameter to the routine + */ + public void setF217(java.lang.Integer value) { + setValue(F217, value); + } + + /** + * Set the f218 parameter to the routine + */ + public void setF218(java.lang.Integer value) { + setValue(F218, value); + } + + /** + * Set the f219 parameter to the routine + */ + public void setF219(java.lang.Integer value) { + setValue(F219, value); + } + + /** + * Set the f220 parameter to the routine + */ + public void setF220(java.lang.Integer value) { + setValue(F220, value); + } + + /** + * Set the f221 parameter to the routine + */ + public void setF221(java.lang.Integer value) { + setValue(F221, value); + } + + /** + * Set the f222 parameter to the routine + */ + public void setF222(java.lang.Integer value) { + setValue(F222, value); + } + + /** + * Set the f223 parameter to the routine + */ + public void setF223(java.lang.Integer value) { + setValue(F223, value); + } + + /** + * Set the f224 parameter to the routine + */ + public void setF224(java.lang.Integer value) { + setValue(F224, value); + } + + /** + * Set the f225 parameter to the routine + */ + public void setF225(java.lang.Integer value) { + setValue(F225, value); + } + + /** + * Set the f226 parameter to the routine + */ + public void setF226(java.lang.Integer value) { + setValue(F226, value); + } + + /** + * Set the f227 parameter to the routine + */ + public void setF227(java.lang.Integer value) { + setValue(F227, value); + } + + /** + * Set the f228 parameter to the routine + */ + public void setF228(java.lang.Integer value) { + setValue(F228, value); + } + + /** + * Set the f229 parameter to the routine + */ + public void setF229(java.lang.Integer value) { + setValue(F229, value); + } + + /** + * Set the f230 parameter to the routine + */ + public void setF230(java.lang.Integer value) { + setValue(F230, value); + } + + /** + * Set the f231 parameter to the routine + */ + public void setF231(java.lang.Integer value) { + setValue(F231, value); + } + + /** + * Set the f232 parameter to the routine + */ + public void setF232(java.lang.Integer value) { + setValue(F232, value); + } + + /** + * Set the f233 parameter to the routine + */ + public void setF233(java.lang.Integer value) { + setValue(F233, value); + } + + /** + * Set the f234 parameter to the routine + */ + public void setF234(java.lang.Integer value) { + setValue(F234, value); + } + + /** + * Set the f235 parameter to the routine + */ + public void setF235(java.lang.Integer value) { + setValue(F235, value); + } + + /** + * Set the f236 parameter to the routine + */ + public void setF236(java.lang.Integer value) { + setValue(F236, value); + } + + /** + * Set the f237 parameter to the routine + */ + public void setF237(java.lang.Integer value) { + setValue(F237, value); + } + + /** + * Set the f238 parameter to the routine + */ + public void setF238(java.lang.Integer value) { + setValue(F238, value); + } + + /** + * Set the f239 parameter to the routine + */ + public void setF239(java.lang.Integer value) { + setValue(F239, value); + } + + /** + * Set the f240 parameter to the routine + */ + public void setF240(java.lang.Integer value) { + setValue(F240, value); + } + + /** + * Set the f241 parameter to the routine + */ + public void setF241(java.lang.Integer value) { + setValue(F241, value); + } + + /** + * Set the f242 parameter to the routine + */ + public void setF242(java.lang.Integer value) { + setValue(F242, value); + } + + /** + * Set the f243 parameter to the routine + */ + public void setF243(java.lang.Integer value) { + setValue(F243, value); + } + + /** + * Set the f244 parameter to the routine + */ + public void setF244(java.lang.Integer value) { + setValue(F244, value); + } + + /** + * Set the f245 parameter to the routine + */ + public void setF245(java.lang.Integer value) { + setValue(F245, value); + } + + /** + * Set the f246 parameter to the routine + */ + public void setF246(java.lang.Integer value) { + setValue(F246, value); + } + + /** + * Set the f247 parameter to the routine + */ + public void setF247(java.lang.Integer value) { + setValue(F247, value); + } + + /** + * Set the f248 parameter to the routine + */ + public void setF248(java.lang.Integer value) { + setValue(F248, value); + } + + /** + * Set the f249 parameter to the routine + */ + public void setF249(java.lang.Integer value) { + setValue(F249, value); + } + + /** + * Set the f250 parameter to the routine + */ + public void setF250(java.lang.Integer value) { + setValue(F250, value); + } + + /** + * Set the f251 parameter to the routine + */ + public void setF251(java.lang.Integer value) { + setValue(F251, value); + } + + /** + * Set the f252 parameter to the routine + */ + public void setF252(java.lang.Integer value) { + setValue(F252, value); + } + + /** + * Set the f253 parameter to the routine + */ + public void setF253(java.lang.Integer value) { + setValue(F253, value); + } + + /** + * Set the f254 parameter to the routine + */ + public void setF254(java.lang.Integer value) { + setValue(F254, value); + } + + /** + * Set the f255 parameter to the routine + */ + public void setF255(java.lang.Integer value) { + setValue(F255, value); + } + + /** + * Set the f256 parameter to the routine + */ + public void setF256(java.lang.Integer value) { + setValue(F256, value); + } + + /** + * Set the f257 parameter to the routine + */ + public void setF257(java.lang.Integer value) { + setValue(F257, value); + } + + /** + * Set the f258 parameter to the routine + */ + public void setF258(java.lang.Integer value) { + setValue(F258, value); + } + + /** + * Set the f259 parameter to the routine + */ + public void setF259(java.lang.Integer value) { + setValue(F259, value); + } + + /** + * Set the f260 parameter to the routine + */ + public void setF260(java.lang.Integer value) { + setValue(F260, value); + } + + /** + * Set the f261 parameter to the routine + */ + public void setF261(java.lang.Integer value) { + setValue(F261, value); + } + + /** + * Set the f262 parameter to the routine + */ + public void setF262(java.lang.Integer value) { + setValue(F262, value); + } + + /** + * Set the f263 parameter to the routine + */ + public void setF263(java.lang.Integer value) { + setValue(F263, value); + } + + /** + * Set the f264 parameter to the routine + */ + public void setF264(java.lang.Integer value) { + setValue(F264, value); + } + + /** + * Set the f265 parameter to the routine + */ + public void setF265(java.lang.Integer value) { + setValue(F265, value); + } + + /** + * Set the f266 parameter to the routine + */ + public void setF266(java.lang.Integer value) { + setValue(F266, value); + } + + /** + * Set the f267 parameter to the routine + */ + public void setF267(java.lang.Integer value) { + setValue(F267, value); + } + + /** + * Set the f268 parameter to the routine + */ + public void setF268(java.lang.Integer value) { + setValue(F268, value); + } + + /** + * Set the f269 parameter to the routine + */ + public void setF269(java.lang.Integer value) { + setValue(F269, value); + } + + /** + * Set the f270 parameter to the routine + */ + public void setF270(java.lang.Integer value) { + setValue(F270, value); + } + + /** + * Set the f271 parameter to the routine + */ + public void setF271(java.lang.Integer value) { + setValue(F271, value); + } + + /** + * Set the f272 parameter to the routine + */ + public void setF272(java.lang.Integer value) { + setValue(F272, value); + } + + /** + * Set the f273 parameter to the routine + */ + public void setF273(java.lang.Integer value) { + setValue(F273, value); + } + + /** + * Set the f274 parameter to the routine + */ + public void setF274(java.lang.Integer value) { + setValue(F274, value); + } + + /** + * Set the f275 parameter to the routine + */ + public void setF275(java.lang.Integer value) { + setValue(F275, value); + } + + /** + * Set the f276 parameter to the routine + */ + public void setF276(java.lang.Integer value) { + setValue(F276, value); + } + + /** + * Set the f277 parameter to the routine + */ + public void setF277(java.lang.Integer value) { + setValue(F277, value); + } + + /** + * Set the f278 parameter to the routine + */ + public void setF278(java.lang.Integer value) { + setValue(F278, value); + } + + /** + * Set the f279 parameter to the routine + */ + public void setF279(java.lang.Integer value) { + setValue(F279, value); + } + + /** + * Set the f280 parameter to the routine + */ + public void setF280(java.lang.Integer value) { + setValue(F280, value); + } + + /** + * Set the f281 parameter to the routine + */ + public void setF281(java.lang.Integer value) { + setValue(F281, value); + } + + /** + * Set the f282 parameter to the routine + */ + public void setF282(java.lang.Integer value) { + setValue(F282, value); + } + + /** + * Set the f283 parameter to the routine + */ + public void setF283(java.lang.Integer value) { + setValue(F283, value); + } + + /** + * Set the f284 parameter to the routine + */ + public void setF284(java.lang.Integer value) { + setValue(F284, value); + } + + /** + * Set the f285 parameter to the routine + */ + public void setF285(java.lang.Integer value) { + setValue(F285, value); + } + + /** + * Set the f286 parameter to the routine + */ + public void setF286(java.lang.Integer value) { + setValue(F286, value); + } + + /** + * Set the f287 parameter to the routine + */ + public void setF287(java.lang.Integer value) { + setValue(F287, value); + } + + /** + * Set the f288 parameter to the routine + */ + public void setF288(java.lang.Integer value) { + setValue(F288, value); + } + + /** + * Set the f289 parameter to the routine + */ + public void setF289(java.lang.Integer value) { + setValue(F289, value); + } + + /** + * Set the f290 parameter to the routine + */ + public void setF290(java.lang.Integer value) { + setValue(F290, value); + } + + /** + * Set the f291 parameter to the routine + */ + public void setF291(java.lang.Integer value) { + setValue(F291, value); + } + + /** + * Set the f292 parameter to the routine + */ + public void setF292(java.lang.Integer value) { + setValue(F292, value); + } + + /** + * Set the f293 parameter to the routine + */ + public void setF293(java.lang.Integer value) { + setValue(F293, value); + } + + /** + * Set the f294 parameter to the routine + */ + public void setF294(java.lang.Integer value) { + setValue(F294, value); + } + + /** + * Set the f295 parameter to the routine + */ + public void setF295(java.lang.Integer value) { + setValue(F295, value); + } + + /** + * Set the f296 parameter to the routine + */ + public void setF296(java.lang.Integer value) { + setValue(F296, value); + } + + /** + * Set the f297 parameter to the routine + */ + public void setF297(java.lang.Integer value) { + setValue(F297, value); + } + + /** + * Set the f298 parameter to the routine + */ + public void setF298(java.lang.Integer value) { + setValue(F298, value); + } + + /** + * Set the f299 parameter to the routine + */ + public void setF299(java.lang.Integer value) { + setValue(F299, value); + } + + /** + * Set the f300 parameter to the routine + */ + public void setF300(java.lang.Integer value) { + setValue(F300, value); + } + + /** + * Set the f301 parameter to the routine + */ + public void setF301(java.lang.Integer value) { + setValue(F301, value); + } + + /** + * Set the f302 parameter to the routine + */ + public void setF302(java.lang.Integer value) { + setValue(F302, value); + } + + /** + * Set the f303 parameter to the routine + */ + public void setF303(java.lang.Integer value) { + setValue(F303, value); + } + + /** + * Set the f304 parameter to the routine + */ + public void setF304(java.lang.Integer value) { + setValue(F304, value); + } + + /** + * Set the f305 parameter to the routine + */ + public void setF305(java.lang.Integer value) { + setValue(F305, value); + } + + /** + * Set the f306 parameter to the routine + */ + public void setF306(java.lang.Integer value) { + setValue(F306, value); + } + + /** + * Set the f307 parameter to the routine + */ + public void setF307(java.lang.Integer value) { + setValue(F307, value); + } + + /** + * Set the f308 parameter to the routine + */ + public void setF308(java.lang.Integer value) { + setValue(F308, value); + } + + /** + * Set the f309 parameter to the routine + */ + public void setF309(java.lang.Integer value) { + setValue(F309, value); + } + + /** + * Set the f310 parameter to the routine + */ + public void setF310(java.lang.Integer value) { + setValue(F310, value); + } + + /** + * Set the f311 parameter to the routine + */ + public void setF311(java.lang.Integer value) { + setValue(F311, value); + } + + /** + * Set the f312 parameter to the routine + */ + public void setF312(java.lang.Integer value) { + setValue(F312, value); + } + + /** + * Set the f313 parameter to the routine + */ + public void setF313(java.lang.Integer value) { + setValue(F313, value); + } + + /** + * Set the f314 parameter to the routine + */ + public void setF314(java.lang.Integer value) { + setValue(F314, value); + } + + /** + * Set the f315 parameter to the routine + */ + public void setF315(java.lang.Integer value) { + setValue(F315, value); + } + + /** + * Set the f316 parameter to the routine + */ + public void setF316(java.lang.Integer value) { + setValue(F316, value); + } + + /** + * Set the f317 parameter to the routine + */ + public void setF317(java.lang.Integer value) { + setValue(F317, value); + } + + /** + * Set the f318 parameter to the routine + */ + public void setF318(java.lang.Integer value) { + setValue(F318, value); + } + + /** + * Set the f319 parameter to the routine + */ + public void setF319(java.lang.Integer value) { + setValue(F319, value); + } + + /** + * Set the f320 parameter to the routine + */ + public void setF320(java.lang.Integer value) { + setValue(F320, value); + } + + /** + * Set the f321 parameter to the routine + */ + public void setF321(java.lang.Integer value) { + setValue(F321, value); + } + + /** + * Set the f322 parameter to the routine + */ + public void setF322(java.lang.Integer value) { + setValue(F322, value); + } + + /** + * Set the f323 parameter to the routine + */ + public void setF323(java.lang.Integer value) { + setValue(F323, value); + } + + /** + * Set the f324 parameter to the routine + */ + public void setF324(java.lang.Integer value) { + setValue(F324, value); + } + + /** + * Set the f325 parameter to the routine + */ + public void setF325(java.lang.Integer value) { + setValue(F325, value); + } + + /** + * Set the f326 parameter to the routine + */ + public void setF326(java.lang.Integer value) { + setValue(F326, value); + } + + /** + * Set the f327 parameter to the routine + */ + public void setF327(java.lang.Integer value) { + setValue(F327, value); + } + + /** + * Set the f328 parameter to the routine + */ + public void setF328(java.lang.Integer value) { + setValue(F328, value); + } + + /** + * Set the f329 parameter to the routine + */ + public void setF329(java.lang.Integer value) { + setValue(F329, value); + } + + /** + * Set the f330 parameter to the routine + */ + public void setF330(java.lang.Integer value) { + setValue(F330, value); + } + + /** + * Set the f331 parameter to the routine + */ + public void setF331(java.lang.Integer value) { + setValue(F331, value); + } + + /** + * Set the f332 parameter to the routine + */ + public void setF332(java.lang.Integer value) { + setValue(F332, value); + } + + /** + * Set the f333 parameter to the routine + */ + public void setF333(java.lang.Integer value) { + setValue(F333, value); + } + + /** + * Set the f334 parameter to the routine + */ + public void setF334(java.lang.Integer value) { + setValue(F334, value); + } + + /** + * Set the f335 parameter to the routine + */ + public void setF335(java.lang.Integer value) { + setValue(F335, value); + } + + /** + * Set the f336 parameter to the routine + */ + public void setF336(java.lang.Integer value) { + setValue(F336, value); + } + + /** + * Set the f337 parameter to the routine + */ + public void setF337(java.lang.Integer value) { + setValue(F337, value); + } + + /** + * Set the f338 parameter to the routine + */ + public void setF338(java.lang.Integer value) { + setValue(F338, value); + } + + /** + * Set the f339 parameter to the routine + */ + public void setF339(java.lang.Integer value) { + setValue(F339, value); + } + + /** + * Set the f340 parameter to the routine + */ + public void setF340(java.lang.Integer value) { + setValue(F340, value); + } + + /** + * Set the f341 parameter to the routine + */ + public void setF341(java.lang.Integer value) { + setValue(F341, value); + } + + /** + * Set the f342 parameter to the routine + */ + public void setF342(java.lang.Integer value) { + setValue(F342, value); + } + + /** + * Set the f343 parameter to the routine + */ + public void setF343(java.lang.Integer value) { + setValue(F343, value); + } + + /** + * Set the f344 parameter to the routine + */ + public void setF344(java.lang.Integer value) { + setValue(F344, value); + } + + /** + * Set the f345 parameter to the routine + */ + public void setF345(java.lang.Integer value) { + setValue(F345, value); + } + + /** + * Set the f346 parameter to the routine + */ + public void setF346(java.lang.Integer value) { + setValue(F346, value); + } + + /** + * Set the f347 parameter to the routine + */ + public void setF347(java.lang.Integer value) { + setValue(F347, value); + } + + /** + * Set the f348 parameter to the routine + */ + public void setF348(java.lang.Integer value) { + setValue(F348, value); + } + + /** + * Set the f349 parameter to the routine + */ + public void setF349(java.lang.Integer value) { + setValue(F349, value); + } + + /** + * Set the f350 parameter to the routine + */ + public void setF350(java.lang.Integer value) { + setValue(F350, value); + } + + /** + * Set the f351 parameter to the routine + */ + public void setF351(java.lang.Integer value) { + setValue(F351, value); + } + + /** + * Set the f352 parameter to the routine + */ + public void setF352(java.lang.Integer value) { + setValue(F352, value); + } + + /** + * Set the f353 parameter to the routine + */ + public void setF353(java.lang.Integer value) { + setValue(F353, value); + } + + /** + * Set the f354 parameter to the routine + */ + public void setF354(java.lang.Integer value) { + setValue(F354, value); + } + + /** + * Set the f355 parameter to the routine + */ + public void setF355(java.lang.Integer value) { + setValue(F355, value); + } + + /** + * Set the f356 parameter to the routine + */ + public void setF356(java.lang.Integer value) { + setValue(F356, value); + } + + /** + * Set the f357 parameter to the routine + */ + public void setF357(java.lang.Integer value) { + setValue(F357, value); + } + + /** + * Set the f358 parameter to the routine + */ + public void setF358(java.lang.Integer value) { + setValue(F358, value); + } + + /** + * Set the f359 parameter to the routine + */ + public void setF359(java.lang.Integer value) { + setValue(F359, value); + } + + /** + * Set the f360 parameter to the routine + */ + public void setF360(java.lang.Integer value) { + setValue(F360, value); + } + + /** + * Set the f361 parameter to the routine + */ + public void setF361(java.lang.Integer value) { + setValue(F361, value); + } + + /** + * Set the f362 parameter to the routine + */ + public void setF362(java.lang.Integer value) { + setValue(F362, value); + } + + /** + * Set the f363 parameter to the routine + */ + public void setF363(java.lang.Integer value) { + setValue(F363, value); + } + + /** + * Set the f364 parameter to the routine + */ + public void setF364(java.lang.Integer value) { + setValue(F364, value); + } + + /** + * Set the f365 parameter to the routine + */ + public void setF365(java.lang.Integer value) { + setValue(F365, value); + } + + /** + * Set the f366 parameter to the routine + */ + public void setF366(java.lang.Integer value) { + setValue(F366, value); + } + + /** + * Set the f367 parameter to the routine + */ + public void setF367(java.lang.Integer value) { + setValue(F367, value); + } + + /** + * Set the f368 parameter to the routine + */ + public void setF368(java.lang.Integer value) { + setValue(F368, value); + } + + /** + * Set the f369 parameter to the routine + */ + public void setF369(java.lang.Integer value) { + setValue(F369, value); + } + + /** + * Set the f370 parameter to the routine + */ + public void setF370(java.lang.Integer value) { + setValue(F370, value); + } + + /** + * Set the f371 parameter to the routine + */ + public void setF371(java.lang.Integer value) { + setValue(F371, value); + } + + /** + * Set the f372 parameter to the routine + */ + public void setF372(java.lang.Integer value) { + setValue(F372, value); + } + + /** + * Set the f373 parameter to the routine + */ + public void setF373(java.lang.Integer value) { + setValue(F373, value); + } + + /** + * Set the f374 parameter to the routine + */ + public void setF374(java.lang.Integer value) { + setValue(F374, value); + } + + /** + * Set the f375 parameter to the routine + */ + public void setF375(java.lang.Integer value) { + setValue(F375, value); + } + + /** + * Set the f376 parameter to the routine + */ + public void setF376(java.lang.Integer value) { + setValue(F376, value); + } + + /** + * Set the f377 parameter to the routine + */ + public void setF377(java.lang.Integer value) { + setValue(F377, value); + } + + /** + * Set the f378 parameter to the routine + */ + public void setF378(java.lang.Integer value) { + setValue(F378, value); + } + + /** + * Set the f379 parameter to the routine + */ + public void setF379(java.lang.Integer value) { + setValue(F379, value); + } + + /** + * Set the f380 parameter to the routine + */ + public void setF380(java.lang.Integer value) { + setValue(F380, value); + } + + /** + * Set the f381 parameter to the routine + */ + public void setF381(java.lang.Integer value) { + setValue(F381, value); + } + + /** + * Set the f382 parameter to the routine + */ + public void setF382(java.lang.Integer value) { + setValue(F382, value); + } + + /** + * Set the f383 parameter to the routine + */ + public void setF383(java.lang.Integer value) { + setValue(F383, value); + } + + /** + * Set the f384 parameter to the routine + */ + public void setF384(java.lang.Integer value) { + setValue(F384, value); + } + + /** + * Set the f385 parameter to the routine + */ + public void setF385(java.lang.Integer value) { + setValue(F385, value); + } + + /** + * Set the f386 parameter to the routine + */ + public void setF386(java.lang.Integer value) { + setValue(F386, value); + } + + /** + * Set the f387 parameter to the routine + */ + public void setF387(java.lang.Integer value) { + setValue(F387, value); + } + + /** + * Set the f388 parameter to the routine + */ + public void setF388(java.lang.Integer value) { + setValue(F388, value); + } + + /** + * Set the f389 parameter to the routine + */ + public void setF389(java.lang.Integer value) { + setValue(F389, value); + } + + /** + * Set the f390 parameter to the routine + */ + public void setF390(java.lang.Integer value) { + setValue(F390, value); + } + + /** + * Set the f391 parameter to the routine + */ + public void setF391(java.lang.Integer value) { + setValue(F391, value); + } + + /** + * Set the f392 parameter to the routine + */ + public void setF392(java.lang.Integer value) { + setValue(F392, value); + } + + /** + * Set the f393 parameter to the routine + */ + public void setF393(java.lang.Integer value) { + setValue(F393, value); + } + + /** + * Set the f394 parameter to the routine + */ + public void setF394(java.lang.Integer value) { + setValue(F394, value); + } + + /** + * Set the f395 parameter to the routine + */ + public void setF395(java.lang.Integer value) { + setValue(F395, value); + } + + /** + * Set the f396 parameter to the routine + */ + public void setF396(java.lang.Integer value) { + setValue(F396, value); + } + + /** + * Set the f397 parameter to the routine + */ + public void setF397(java.lang.Integer value) { + setValue(F397, value); + } + + /** + * Set the f398 parameter to the routine + */ + public void setF398(java.lang.Integer value) { + setValue(F398, value); + } + + /** + * Set the f399 parameter to the routine + */ + public void setF399(java.lang.Integer value) { + setValue(F399, value); + } +} diff --git a/jOOQ-test/src/org/jooq/test/sqlserver/generatedclasses/routines/PUnused.java b/jOOQ-test/src/org/jooq/test/sqlserver/generatedclasses/routines/PUnused.java new file mode 100644 index 00000000000..40eb96ba512 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/sqlserver/generatedclasses/routines/PUnused.java @@ -0,0 +1,68 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.sqlserver.generatedclasses.routines; + +/** + * This class is generated by jOOQ. + */ +public class PUnused extends org.jooq.impl.AbstractRoutine { + + private static final long serialVersionUID = -252045178; + + + /** + * An uncommented item + */ + public static final org.jooq.Parameter IN1 = createParameter("in1", org.jooq.impl.SQLDataType.VARCHAR); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter OUT1 = createParameter("out1", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter OUT2 = createParameter("out2", org.jooq.impl.SQLDataType.INTEGER); + + /** + * Create a new routine call instance + */ + public PUnused() { + super("p_unused", org.jooq.test.sqlserver.generatedclasses.Dbo.DBO); + + addInParameter(IN1); + addInOutParameter(OUT1); + addInOutParameter(OUT2); + } + + /** + * Set the in1 parameter to the routine + */ + public void setIn1(java.lang.String value) { + setValue(IN1, value); + } + + /** + * Set the out1 parameter to the routine + */ + public void setOut1(java.lang.Integer value) { + setValue(OUT1, value); + } + + /** + * Set the out2 parameter to the routine + */ + public void setOut2(java.lang.Integer value) { + setValue(OUT2, value); + } + + public java.lang.Integer getOut1() { + return getValue(OUT1); + } + + public java.lang.Integer getOut2() { + return getValue(OUT2); + } +} diff --git a/jOOQ-test/src/org/jooq/test/sqlserver/generatedclasses/tables/TAuthor.java b/jOOQ-test/src/org/jooq/test/sqlserver/generatedclasses/tables/TAuthor.java new file mode 100644 index 00000000000..12c55179079 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/sqlserver/generatedclasses/tables/TAuthor.java @@ -0,0 +1,86 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.sqlserver.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class TAuthor extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = 1847875880; + + /** + * The singleton instance of dbo.t_author + */ + public static final org.jooq.test.sqlserver.generatedclasses.tables.TAuthor T_AUTHOR = new org.jooq.test.sqlserver.generatedclasses.tables.TAuthor(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.sqlserver.generatedclasses.tables.records.TAuthorRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final org.jooq.TableField ID = createField("ID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField FIRST_NAME = createField("FIRST_NAME", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField LAST_NAME = createField("LAST_NAME", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField DATE_OF_BIRTH = createField("DATE_OF_BIRTH", org.jooq.impl.SQLDataType.DATE, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField YEAR_OF_BIRTH = createField("YEAR_OF_BIRTH", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField ADDRESS = createField("ADDRESS", org.jooq.impl.SQLDataType.VARCHAR, this); + + public TAuthor() { + super("t_author", org.jooq.test.sqlserver.generatedclasses.Dbo.DBO); + } + + public TAuthor(java.lang.String alias) { + super(alias, org.jooq.test.sqlserver.generatedclasses.Dbo.DBO, org.jooq.test.sqlserver.generatedclasses.tables.TAuthor.T_AUTHOR); + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.test.sqlserver.generatedclasses.Keys.PK_T_AUTHOR; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.test.sqlserver.generatedclasses.Keys.PK_T_AUTHOR); + } + + @Override + public org.jooq.test.sqlserver.generatedclasses.tables.TAuthor as(java.lang.String alias) { + return new org.jooq.test.sqlserver.generatedclasses.tables.TAuthor(alias); + } +} diff --git a/jOOQ-test/src/org/jooq/test/sqlserver/generatedclasses/tables/TBook.java b/jOOQ-test/src/org/jooq/test/sqlserver/generatedclasses/tables/TBook.java new file mode 100644 index 00000000000..241d52e5ec1 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/sqlserver/generatedclasses/tables/TBook.java @@ -0,0 +1,125 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.sqlserver.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class TBook extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = -595099013; + + /** + * The singleton instance of dbo.t_book + */ + public static final org.jooq.test.sqlserver.generatedclasses.tables.TBook T_BOOK = new org.jooq.test.sqlserver.generatedclasses.tables.TBook(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.sqlserver.generatedclasses.tables.records.TBookRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final org.jooq.TableField ID = createField("ID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_t_book_author_id
+	 * FOREIGN KEY (AUTHOR_ID)
+	 * REFERENCES dbo.t_author (ID)
+	 * 
+ */ + public final org.jooq.TableField AUTHOR_ID = createField("AUTHOR_ID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_t_book_co_author_id
+	 * FOREIGN KEY (CO_AUTHOR_ID)
+	 * REFERENCES dbo.t_author (ID)
+	 * 
+ */ + public final org.jooq.TableField CO_AUTHOR_ID = createField("CO_AUTHOR_ID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField DETAILS_ID = createField("DETAILS_ID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField TITLE = createField("TITLE", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField PUBLISHED_IN = createField("PUBLISHED_IN", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_t_book_language_id
+	 * FOREIGN KEY (LANGUAGE_ID)
+	 * REFERENCES dbo.t_language (id)
+	 * 
+ */ + public final org.jooq.TableField LANGUAGE_ID = createField("LANGUAGE_ID", org.jooq.impl.SQLDataType.INTEGER.asMasterDataType(org.jooq.test.sqlserver.generatedclasses.enums.TLanguage.class), this); + + /** + * An uncommented item + */ + public final org.jooq.TableField CONTENT_TEXT = createField("CONTENT_TEXT", org.jooq.impl.SQLDataType.CLOB, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField CONTENT_PDF = createField("CONTENT_PDF", org.jooq.impl.SQLDataType.VARBINARY, this); + + public TBook() { + super("t_book", org.jooq.test.sqlserver.generatedclasses.Dbo.DBO); + } + + public TBook(java.lang.String alias) { + super(alias, org.jooq.test.sqlserver.generatedclasses.Dbo.DBO, org.jooq.test.sqlserver.generatedclasses.tables.TBook.T_BOOK); + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.test.sqlserver.generatedclasses.Keys.PK_T_BOOK; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.test.sqlserver.generatedclasses.Keys.PK_T_BOOK); + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getReferences() { + return java.util.Arrays.>asList(org.jooq.test.sqlserver.generatedclasses.Keys.FK_T_BOOK_AUTHOR_ID, org.jooq.test.sqlserver.generatedclasses.Keys.FK_T_BOOK_CO_AUTHOR_ID); + } + + @Override + public org.jooq.test.sqlserver.generatedclasses.tables.TBook as(java.lang.String alias) { + return new org.jooq.test.sqlserver.generatedclasses.tables.TBook(alias); + } +} diff --git a/jOOQ-test/src/org/jooq/test/sqlserver/generatedclasses/tables/TBookStore.java b/jOOQ-test/src/org/jooq/test/sqlserver/generatedclasses/tables/TBookStore.java new file mode 100644 index 00000000000..881136607ee --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/sqlserver/generatedclasses/tables/TBookStore.java @@ -0,0 +1,59 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.sqlserver.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class TBookStore extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = -1556231344; + + /** + * The singleton instance of dbo.t_book_store + */ + public static final org.jooq.test.sqlserver.generatedclasses.tables.TBookStore T_BOOK_STORE = new org.jooq.test.sqlserver.generatedclasses.tables.TBookStore(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.sqlserver.generatedclasses.tables.records.TBookStoreRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + */ + public final org.jooq.TableField NAME = createField("NAME", org.jooq.impl.SQLDataType.VARCHAR, this); + + public TBookStore() { + super("t_book_store", org.jooq.test.sqlserver.generatedclasses.Dbo.DBO); + } + + public TBookStore(java.lang.String alias) { + super(alias, org.jooq.test.sqlserver.generatedclasses.Dbo.DBO, org.jooq.test.sqlserver.generatedclasses.tables.TBookStore.T_BOOK_STORE); + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.test.sqlserver.generatedclasses.Keys.UK_T_BOOK_STORE_NAME; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.test.sqlserver.generatedclasses.Keys.UK_T_BOOK_STORE_NAME); + } + + @Override + public org.jooq.test.sqlserver.generatedclasses.tables.TBookStore as(java.lang.String alias) { + return new org.jooq.test.sqlserver.generatedclasses.tables.TBookStore(alias); + } +} diff --git a/jOOQ-test/src/org/jooq/test/sqlserver/generatedclasses/tables/TBookToBookStore.java b/jOOQ-test/src/org/jooq/test/sqlserver/generatedclasses/tables/TBookToBookStore.java new file mode 100644 index 00000000000..613e5bc39b0 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/sqlserver/generatedclasses/tables/TBookToBookStore.java @@ -0,0 +1,91 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.sqlserver.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class TBookToBookStore extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = 1448477875; + + /** + * The singleton instance of dbo.t_book_to_book_store + */ + public static final org.jooq.test.sqlserver.generatedclasses.tables.TBookToBookStore T_BOOK_TO_BOOK_STORE = new org.jooq.test.sqlserver.generatedclasses.tables.TBookToBookStore(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.sqlserver.generatedclasses.tables.records.TBookToBookStoreRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT fk_b2bs_bs_name
+	 * FOREIGN KEY (BOOK_STORE_NAME)
+	 * REFERENCES dbo.t_book_store (NAME)
+	 * 
+ */ + public final org.jooq.TableField BOOK_STORE_NAME = createField("BOOK_STORE_NAME", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT fk_b2bs_b_id
+	 * FOREIGN KEY (BOOK_ID)
+	 * REFERENCES dbo.t_book (ID)
+	 * 
+ */ + public final org.jooq.TableField BOOK_ID = createField("BOOK_ID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField STOCK = createField("STOCK", org.jooq.impl.SQLDataType.INTEGER, this); + + public TBookToBookStore() { + super("t_book_to_book_store", org.jooq.test.sqlserver.generatedclasses.Dbo.DBO); + } + + public TBookToBookStore(java.lang.String alias) { + super(alias, org.jooq.test.sqlserver.generatedclasses.Dbo.DBO, org.jooq.test.sqlserver.generatedclasses.tables.TBookToBookStore.T_BOOK_TO_BOOK_STORE); + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.test.sqlserver.generatedclasses.Keys.PK_B2BS; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.test.sqlserver.generatedclasses.Keys.PK_B2BS); + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getReferences() { + return java.util.Arrays.>asList(org.jooq.test.sqlserver.generatedclasses.Keys.FK_B2BS_BS_NAME, org.jooq.test.sqlserver.generatedclasses.Keys.FK_B2BS_B_ID); + } + + @Override + public org.jooq.test.sqlserver.generatedclasses.tables.TBookToBookStore as(java.lang.String alias) { + return new org.jooq.test.sqlserver.generatedclasses.tables.TBookToBookStore(alias); + } +} diff --git a/jOOQ-test/src/org/jooq/test/sqlserver/generatedclasses/tables/TBooleans.java b/jOOQ-test/src/org/jooq/test/sqlserver/generatedclasses/tables/TBooleans.java new file mode 100644 index 00000000000..cdda70e1d1d --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/sqlserver/generatedclasses/tables/TBooleans.java @@ -0,0 +1,111 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.sqlserver.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class TBooleans extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = -2036971501; + + /** + * The singleton instance of dbo.t_booleans + */ + public static final org.jooq.test.sqlserver.generatedclasses.tables.TBooleans T_BOOLEANS = new org.jooq.test.sqlserver.generatedclasses.tables.TBooleans(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.sqlserver.generatedclasses.tables.records.TBooleansRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final org.jooq.TableField ID = createField("id", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField ONE_ZERO = createField("one_zero", org.jooq.impl.SQLDataType.INTEGER.asConvertedDataType(new org.jooq.test._.converters.Boolean_10_Converter()), this); + + /** + * An uncommented item + */ + public final org.jooq.TableField TRUE_FALSE_LC = createField("true_false_lc", org.jooq.impl.SQLDataType.VARCHAR.asConvertedDataType(new org.jooq.test._.converters.Boolean_TF_LC_Converter()), this); + + /** + * An uncommented item + */ + public final org.jooq.TableField TRUE_FALSE_UC = createField("true_false_uc", org.jooq.impl.SQLDataType.VARCHAR.asConvertedDataType(new org.jooq.test._.converters.Boolean_TF_UC_Converter()), this); + + /** + * An uncommented item + */ + public final org.jooq.TableField YES_NO_LC = createField("yes_no_lc", org.jooq.impl.SQLDataType.VARCHAR.asConvertedDataType(new org.jooq.test._.converters.Boolean_YES_NO_LC_Converter()), this); + + /** + * An uncommented item + */ + public final org.jooq.TableField YES_NO_UC = createField("yes_no_uc", org.jooq.impl.SQLDataType.VARCHAR.asConvertedDataType(new org.jooq.test._.converters.Boolean_YES_NO_UC_Converter()), this); + + /** + * An uncommented item + */ + public final org.jooq.TableField Y_N_LC = createField("y_n_lc", org.jooq.impl.SQLDataType.CHAR.asConvertedDataType(new org.jooq.test._.converters.Boolean_YN_LC_Converter()), this); + + /** + * An uncommented item + */ + public final org.jooq.TableField Y_N_UC = createField("y_n_uc", org.jooq.impl.SQLDataType.CHAR.asConvertedDataType(new org.jooq.test._.converters.Boolean_YN_UC_Converter()), this); + + /** + * An uncommented item + */ + public final org.jooq.TableField VC_BOOLEAN = createField("vc_boolean", org.jooq.impl.SQLDataType.BIT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField C_BOOLEAN = createField("c_boolean", org.jooq.impl.SQLDataType.BIT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField N_BOOLEAN = createField("n_boolean", org.jooq.impl.SQLDataType.BIT, this); + + public TBooleans() { + super("t_booleans", org.jooq.test.sqlserver.generatedclasses.Dbo.DBO); + } + + public TBooleans(java.lang.String alias) { + super(alias, org.jooq.test.sqlserver.generatedclasses.Dbo.DBO, org.jooq.test.sqlserver.generatedclasses.tables.TBooleans.T_BOOLEANS); + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.test.sqlserver.generatedclasses.Keys.PK_T_BOOLEANS; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.test.sqlserver.generatedclasses.Keys.PK_T_BOOLEANS); + } + + @Override + public org.jooq.test.sqlserver.generatedclasses.tables.TBooleans as(java.lang.String alias) { + return new org.jooq.test.sqlserver.generatedclasses.tables.TBooleans(alias); + } +} diff --git a/jOOQ-test/src/org/jooq/test/sqlserver/generatedclasses/tables/TDates.java b/jOOQ-test/src/org/jooq/test/sqlserver/generatedclasses/tables/TDates.java new file mode 100644 index 00000000000..c75bead1afd --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/sqlserver/generatedclasses/tables/TDates.java @@ -0,0 +1,86 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.sqlserver.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class TDates extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = 435237347; + + /** + * The singleton instance of dbo.t_dates + */ + public static final org.jooq.test.sqlserver.generatedclasses.tables.TDates T_DATES = new org.jooq.test.sqlserver.generatedclasses.tables.TDates(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.sqlserver.generatedclasses.tables.records.TDatesRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final org.jooq.TableField ID = createField("id", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField D = createField("d", org.jooq.impl.SQLDataType.DATE, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField T = createField("t", org.jooq.impl.SQLDataType.TIME, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField TS = createField("ts", org.jooq.impl.SQLDataType.TIMESTAMP, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField D_INT = createField("d_int", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField TS_BIGINT = createField("ts_bigint", org.jooq.impl.SQLDataType.BIGINT, this); + + public TDates() { + super("t_dates", org.jooq.test.sqlserver.generatedclasses.Dbo.DBO); + } + + public TDates(java.lang.String alias) { + super(alias, org.jooq.test.sqlserver.generatedclasses.Dbo.DBO, org.jooq.test.sqlserver.generatedclasses.tables.TDates.T_DATES); + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.test.sqlserver.generatedclasses.Keys.PK_T_DATES; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.test.sqlserver.generatedclasses.Keys.PK_T_DATES); + } + + @Override + public org.jooq.test.sqlserver.generatedclasses.tables.TDates as(java.lang.String alias) { + return new org.jooq.test.sqlserver.generatedclasses.tables.TDates(alias); + } +} diff --git a/jOOQ-test/src/org/jooq/test/sqlserver/generatedclasses/tables/TIdentity.java b/jOOQ-test/src/org/jooq/test/sqlserver/generatedclasses/tables/TIdentity.java new file mode 100644 index 00000000000..9c6f800a9f4 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/sqlserver/generatedclasses/tables/TIdentity.java @@ -0,0 +1,58 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.sqlserver.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class TIdentity extends org.jooq.impl.TableImpl { + + private static final long serialVersionUID = 2079238306; + + /** + * The singleton instance of dbo.t_identity + */ + public static final org.jooq.test.sqlserver.generatedclasses.tables.TIdentity T_IDENTITY = new org.jooq.test.sqlserver.generatedclasses.tables.TIdentity(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.sqlserver.generatedclasses.tables.records.TIdentityRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + */ + public final org.jooq.TableField ID = createField("id", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField VAL = createField("val", org.jooq.impl.SQLDataType.INTEGER, this); + + public TIdentity() { + super("t_identity", org.jooq.test.sqlserver.generatedclasses.Dbo.DBO); + } + + public TIdentity(java.lang.String alias) { + super(alias, org.jooq.test.sqlserver.generatedclasses.Dbo.DBO, org.jooq.test.sqlserver.generatedclasses.tables.TIdentity.T_IDENTITY); + } + + @Override + public org.jooq.Identity getIdentity() { + return org.jooq.test.sqlserver.generatedclasses.Keys.IDENTITY_T_IDENTITY; + } + + @Override + public org.jooq.test.sqlserver.generatedclasses.tables.TIdentity as(java.lang.String alias) { + return new org.jooq.test.sqlserver.generatedclasses.tables.TIdentity(alias); + } +} diff --git a/jOOQ-test/src/org/jooq/test/sqlserver/generatedclasses/tables/TIdentityPk.java b/jOOQ-test/src/org/jooq/test/sqlserver/generatedclasses/tables/TIdentityPk.java new file mode 100644 index 00000000000..767fc1269d4 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/sqlserver/generatedclasses/tables/TIdentityPk.java @@ -0,0 +1,71 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.sqlserver.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class TIdentityPk extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = -2094495414; + + /** + * The singleton instance of dbo.t_identity_pk + */ + public static final org.jooq.test.sqlserver.generatedclasses.tables.TIdentityPk T_IDENTITY_PK = new org.jooq.test.sqlserver.generatedclasses.tables.TIdentityPk(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.sqlserver.generatedclasses.tables.records.TIdentityPkRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final org.jooq.TableField ID = createField("id", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField VAL = createField("val", org.jooq.impl.SQLDataType.INTEGER, this); + + public TIdentityPk() { + super("t_identity_pk", org.jooq.test.sqlserver.generatedclasses.Dbo.DBO); + } + + public TIdentityPk(java.lang.String alias) { + super(alias, org.jooq.test.sqlserver.generatedclasses.Dbo.DBO, org.jooq.test.sqlserver.generatedclasses.tables.TIdentityPk.T_IDENTITY_PK); + } + + @Override + public org.jooq.Identity getIdentity() { + return org.jooq.test.sqlserver.generatedclasses.Keys.IDENTITY_T_IDENTITY_PK; + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.test.sqlserver.generatedclasses.Keys.PK_T_IDENTITY_PK; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.test.sqlserver.generatedclasses.Keys.PK_T_IDENTITY_PK); + } + + @Override + public org.jooq.test.sqlserver.generatedclasses.tables.TIdentityPk as(java.lang.String alias) { + return new org.jooq.test.sqlserver.generatedclasses.tables.TIdentityPk(alias); + } +} diff --git a/jOOQ-test/src/org/jooq/test/sqlserver/generatedclasses/tables/TTriggers.java b/jOOQ-test/src/org/jooq/test/sqlserver/generatedclasses/tables/TTriggers.java new file mode 100644 index 00000000000..edb52c9f3c2 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/sqlserver/generatedclasses/tables/TTriggers.java @@ -0,0 +1,76 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.sqlserver.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class TTriggers extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = -1311617604; + + /** + * The singleton instance of dbo.t_triggers + */ + public static final org.jooq.test.sqlserver.generatedclasses.tables.TTriggers T_TRIGGERS = new org.jooq.test.sqlserver.generatedclasses.tables.TTriggers(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.sqlserver.generatedclasses.tables.records.TTriggersRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final org.jooq.TableField ID_GENERATED = createField("id_generated", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField ID = createField("id", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField COUNTER = createField("counter", org.jooq.impl.SQLDataType.INTEGER, this); + + public TTriggers() { + super("t_triggers", org.jooq.test.sqlserver.generatedclasses.Dbo.DBO); + } + + public TTriggers(java.lang.String alias) { + super(alias, org.jooq.test.sqlserver.generatedclasses.Dbo.DBO, org.jooq.test.sqlserver.generatedclasses.tables.TTriggers.T_TRIGGERS); + } + + @Override + public org.jooq.Identity getIdentity() { + return org.jooq.test.sqlserver.generatedclasses.Keys.IDENTITY_T_TRIGGERS; + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.test.sqlserver.generatedclasses.Keys.PK_T_TRIGGERS; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.test.sqlserver.generatedclasses.Keys.PK_T_TRIGGERS); + } + + @Override + public org.jooq.test.sqlserver.generatedclasses.tables.TTriggers as(java.lang.String alias) { + return new org.jooq.test.sqlserver.generatedclasses.tables.TTriggers(alias); + } +} diff --git a/jOOQ-test/src/org/jooq/test/sqlserver/generatedclasses/tables/T_639NumbersTable.java b/jOOQ-test/src/org/jooq/test/sqlserver/generatedclasses/tables/T_639NumbersTable.java new file mode 100644 index 00000000000..e17086cd0ae --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/sqlserver/generatedclasses/tables/T_639NumbersTable.java @@ -0,0 +1,121 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.sqlserver.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class T_639NumbersTable extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = -2118827902; + + /** + * The singleton instance of dbo.t_639_numbers_table + */ + public static final org.jooq.test.sqlserver.generatedclasses.tables.T_639NumbersTable T_639_NUMBERS_TABLE = new org.jooq.test.sqlserver.generatedclasses.tables.T_639NumbersTable(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.sqlserver.generatedclasses.tables.records.T_639NumbersTableRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final org.jooq.TableField ID = createField("ID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField BYTE = createField("BYTE", org.jooq.impl.SQLDataType.TINYINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField SHORT = createField("SHORT", org.jooq.impl.SQLDataType.SMALLINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField INTEGER = createField("INTEGER", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField LONG = createField("LONG", org.jooq.impl.SQLDataType.BIGINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField BYTE_DECIMAL = createField("BYTE_DECIMAL", org.jooq.impl.SQLDataType.TINYINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField SHORT_DECIMAL = createField("SHORT_DECIMAL", org.jooq.impl.SQLDataType.SMALLINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField INTEGER_DECIMAL = createField("INTEGER_DECIMAL", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField LONG_DECIMAL = createField("LONG_DECIMAL", org.jooq.impl.SQLDataType.BIGINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField BIG_INTEGER = createField("BIG_INTEGER", org.jooq.impl.SQLDataType.DECIMAL_INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField BIG_DECIMAL = createField("BIG_DECIMAL", org.jooq.impl.SQLDataType.NUMERIC, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField FLOAT = createField("FLOAT", org.jooq.impl.SQLDataType.REAL, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField DOUBLE = createField("DOUBLE", org.jooq.impl.SQLDataType.FLOAT, this); + + public T_639NumbersTable() { + super("t_639_numbers_table", org.jooq.test.sqlserver.generatedclasses.Dbo.DBO); + } + + public T_639NumbersTable(java.lang.String alias) { + super(alias, org.jooq.test.sqlserver.generatedclasses.Dbo.DBO, org.jooq.test.sqlserver.generatedclasses.tables.T_639NumbersTable.T_639_NUMBERS_TABLE); + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.test.sqlserver.generatedclasses.Keys.PK_T_639_NUMBERS_TABLE; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.test.sqlserver.generatedclasses.Keys.PK_T_639_NUMBERS_TABLE); + } + + @Override + public org.jooq.test.sqlserver.generatedclasses.tables.T_639NumbersTable as(java.lang.String alias) { + return new org.jooq.test.sqlserver.generatedclasses.tables.T_639NumbersTable(alias); + } +} diff --git a/jOOQ-test/src/org/jooq/test/sqlserver/generatedclasses/tables/T_658Ref.java b/jOOQ-test/src/org/jooq/test/sqlserver/generatedclasses/tables/T_658Ref.java new file mode 100644 index 00000000000..26a450c2e65 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/sqlserver/generatedclasses/tables/T_658Ref.java @@ -0,0 +1,115 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.sqlserver.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class T_658Ref extends org.jooq.impl.TableImpl { + + private static final long serialVersionUID = -1236610199; + + /** + * The singleton instance of dbo.t_658_ref + */ + public static final org.jooq.test.sqlserver.generatedclasses.tables.T_658Ref T_658_REF = new org.jooq.test.sqlserver.generatedclasses.tables.T_658Ref(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.sqlserver.generatedclasses.tables.records.T_658RefRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_t_658_11
+	 * FOREIGN KEY (ref_11)
+	 * REFERENCES dbo.t_658_11 (id)
+	 * 
+ */ + public final org.jooq.TableField REF_11 = createField("ref_11", org.jooq.impl.SQLDataType.CHAR.asMasterDataType(org.jooq.test.sqlserver.generatedclasses.enums.T_658_11.class), this); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_t_658_21
+	 * FOREIGN KEY (ref_21)
+	 * REFERENCES dbo.t_658_21 (id)
+	 * 
+ */ + public final org.jooq.TableField REF_21 = createField("ref_21", org.jooq.impl.SQLDataType.INTEGER.asMasterDataType(org.jooq.test.sqlserver.generatedclasses.enums.T_658_21.class), this); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_t_658_31
+	 * FOREIGN KEY (ref_31)
+	 * REFERENCES dbo.t_658_31 (id)
+	 * 
+ */ + public final org.jooq.TableField REF_31 = createField("ref_31", org.jooq.impl.SQLDataType.BIGINT.asMasterDataType(org.jooq.test.sqlserver.generatedclasses.enums.T_658_31.class), this); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_t_658_12
+	 * FOREIGN KEY (ref_12)
+	 * REFERENCES dbo.t_658_12 (id)
+	 * 
+ */ + public final org.jooq.TableField REF_12 = createField("ref_12", org.jooq.impl.SQLDataType.CHAR.asMasterDataType(org.jooq.test.sqlserver.generatedclasses.enums.T_658_12.class), this); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_t_658_22
+	 * FOREIGN KEY (ref_22)
+	 * REFERENCES dbo.t_658_22 (id)
+	 * 
+ */ + public final org.jooq.TableField REF_22 = createField("ref_22", org.jooq.impl.SQLDataType.INTEGER.asMasterDataType(org.jooq.test.sqlserver.generatedclasses.enums.T_658_22.class), this); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_t_658_32
+	 * FOREIGN KEY (ref_32)
+	 * REFERENCES dbo.t_658_32 (id)
+	 * 
+ */ + public final org.jooq.TableField REF_32 = createField("ref_32", org.jooq.impl.SQLDataType.BIGINT.asMasterDataType(org.jooq.test.sqlserver.generatedclasses.enums.T_658_32.class), this); + + public T_658Ref() { + super("t_658_ref", org.jooq.test.sqlserver.generatedclasses.Dbo.DBO); + } + + public T_658Ref(java.lang.String alias) { + super(alias, org.jooq.test.sqlserver.generatedclasses.Dbo.DBO, org.jooq.test.sqlserver.generatedclasses.tables.T_658Ref.T_658_REF); + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getReferences() { + return java.util.Arrays.>asList(); + } + + @Override + public org.jooq.test.sqlserver.generatedclasses.tables.T_658Ref as(java.lang.String alias) { + return new org.jooq.test.sqlserver.generatedclasses.tables.T_658Ref(alias); + } +} diff --git a/jOOQ-test/src/org/jooq/test/sqlserver/generatedclasses/tables/T_725LobTest.java b/jOOQ-test/src/org/jooq/test/sqlserver/generatedclasses/tables/T_725LobTest.java new file mode 100644 index 00000000000..f17d1dba786 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/sqlserver/generatedclasses/tables/T_725LobTest.java @@ -0,0 +1,66 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.sqlserver.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class T_725LobTest extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = 970268667; + + /** + * The singleton instance of dbo.t_725_lob_test + */ + public static final org.jooq.test.sqlserver.generatedclasses.tables.T_725LobTest T_725_LOB_TEST = new org.jooq.test.sqlserver.generatedclasses.tables.T_725LobTest(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.sqlserver.generatedclasses.tables.records.T_725LobTestRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final org.jooq.TableField ID = createField("ID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField LOB = createField("LOB", org.jooq.impl.SQLDataType.VARBINARY, this); + + public T_725LobTest() { + super("t_725_lob_test", org.jooq.test.sqlserver.generatedclasses.Dbo.DBO); + } + + public T_725LobTest(java.lang.String alias) { + super(alias, org.jooq.test.sqlserver.generatedclasses.Dbo.DBO, org.jooq.test.sqlserver.generatedclasses.tables.T_725LobTest.T_725_LOB_TEST); + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.test.sqlserver.generatedclasses.Keys.PK_T_725_LOB_TEST; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.test.sqlserver.generatedclasses.Keys.PK_T_725_LOB_TEST); + } + + @Override + public org.jooq.test.sqlserver.generatedclasses.tables.T_725LobTest as(java.lang.String alias) { + return new org.jooq.test.sqlserver.generatedclasses.tables.T_725LobTest(alias); + } +} diff --git a/jOOQ-test/src/org/jooq/test/sqlserver/generatedclasses/tables/T_785.java b/jOOQ-test/src/org/jooq/test/sqlserver/generatedclasses/tables/T_785.java new file mode 100644 index 00000000000..96729ce1e55 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/sqlserver/generatedclasses/tables/T_785.java @@ -0,0 +1,58 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.sqlserver.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class T_785 extends org.jooq.impl.TableImpl { + + private static final long serialVersionUID = 460829462; + + /** + * The singleton instance of dbo.t_785 + */ + public static final org.jooq.test.sqlserver.generatedclasses.tables.T_785 T_785 = new org.jooq.test.sqlserver.generatedclasses.tables.T_785(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.sqlserver.generatedclasses.tables.records.T_785Record.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + */ + public final org.jooq.TableField ID = createField("ID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField NAME = createField("NAME", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField VALUE = createField("VALUE", org.jooq.impl.SQLDataType.VARCHAR, this); + + public T_785() { + super("t_785", org.jooq.test.sqlserver.generatedclasses.Dbo.DBO); + } + + public T_785(java.lang.String alias) { + super(alias, org.jooq.test.sqlserver.generatedclasses.Dbo.DBO, org.jooq.test.sqlserver.generatedclasses.tables.T_785.T_785); + } + + @Override + public org.jooq.test.sqlserver.generatedclasses.tables.T_785 as(java.lang.String alias) { + return new org.jooq.test.sqlserver.generatedclasses.tables.T_785(alias); + } +} diff --git a/jOOQ-test/src/org/jooq/test/sqlserver/generatedclasses/tables/VAuthor.java b/jOOQ-test/src/org/jooq/test/sqlserver/generatedclasses/tables/VAuthor.java new file mode 100644 index 00000000000..176c3229cab --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/sqlserver/generatedclasses/tables/VAuthor.java @@ -0,0 +1,73 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.sqlserver.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class VAuthor extends org.jooq.impl.TableImpl { + + private static final long serialVersionUID = -663568395; + + /** + * The singleton instance of dbo.v_author + */ + public static final org.jooq.test.sqlserver.generatedclasses.tables.VAuthor V_AUTHOR = new org.jooq.test.sqlserver.generatedclasses.tables.VAuthor(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.sqlserver.generatedclasses.tables.records.VAuthorRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + */ + public final org.jooq.TableField ID = createField("ID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField FIRST_NAME = createField("FIRST_NAME", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField LAST_NAME = createField("LAST_NAME", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField DATE_OF_BIRTH = createField("DATE_OF_BIRTH", org.jooq.impl.SQLDataType.DATE, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField YEAR_OF_BIRTH = createField("YEAR_OF_BIRTH", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField ADDRESS = createField("ADDRESS", org.jooq.impl.SQLDataType.VARCHAR, this); + + public VAuthor() { + super("v_author", org.jooq.test.sqlserver.generatedclasses.Dbo.DBO); + } + + public VAuthor(java.lang.String alias) { + super(alias, org.jooq.test.sqlserver.generatedclasses.Dbo.DBO, org.jooq.test.sqlserver.generatedclasses.tables.VAuthor.V_AUTHOR); + } + + @Override + public org.jooq.test.sqlserver.generatedclasses.tables.VAuthor as(java.lang.String alias) { + return new org.jooq.test.sqlserver.generatedclasses.tables.VAuthor(alias); + } +} diff --git a/jOOQ-test/src/org/jooq/test/sqlserver/generatedclasses/tables/VBook.java b/jOOQ-test/src/org/jooq/test/sqlserver/generatedclasses/tables/VBook.java new file mode 100644 index 00000000000..086a9666057 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/sqlserver/generatedclasses/tables/VBook.java @@ -0,0 +1,88 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.sqlserver.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class VBook extends org.jooq.impl.TableImpl { + + private static final long serialVersionUID = 1547874083; + + /** + * The singleton instance of dbo.v_book + */ + public static final org.jooq.test.sqlserver.generatedclasses.tables.VBook V_BOOK = new org.jooq.test.sqlserver.generatedclasses.tables.VBook(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.sqlserver.generatedclasses.tables.records.VBookRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + */ + public final org.jooq.TableField ID = createField("ID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField AUTHOR_ID = createField("AUTHOR_ID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField CO_AUTHOR_ID = createField("CO_AUTHOR_ID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField DETAILS_ID = createField("DETAILS_ID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField TITLE = createField("TITLE", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField PUBLISHED_IN = createField("PUBLISHED_IN", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField LANGUAGE_ID = createField("LANGUAGE_ID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField CONTENT_TEXT = createField("CONTENT_TEXT", org.jooq.impl.SQLDataType.CLOB, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField CONTENT_PDF = createField("CONTENT_PDF", org.jooq.impl.SQLDataType.VARBINARY, this); + + public VBook() { + super("v_book", org.jooq.test.sqlserver.generatedclasses.Dbo.DBO); + } + + public VBook(java.lang.String alias) { + super(alias, org.jooq.test.sqlserver.generatedclasses.Dbo.DBO, org.jooq.test.sqlserver.generatedclasses.tables.VBook.V_BOOK); + } + + @Override + public org.jooq.test.sqlserver.generatedclasses.tables.VBook as(java.lang.String alias) { + return new org.jooq.test.sqlserver.generatedclasses.tables.VBook(alias); + } +} diff --git a/jOOQ-test/src/org/jooq/test/sqlserver/generatedclasses/tables/VLibrary.java b/jOOQ-test/src/org/jooq/test/sqlserver/generatedclasses/tables/VLibrary.java new file mode 100644 index 00000000000..cd4795c5bb4 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/sqlserver/generatedclasses/tables/VLibrary.java @@ -0,0 +1,53 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.sqlserver.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class VLibrary extends org.jooq.impl.TableImpl { + + private static final long serialVersionUID = -1944188715; + + /** + * The singleton instance of dbo.v_library + */ + public static final org.jooq.test.sqlserver.generatedclasses.tables.VLibrary V_LIBRARY = new org.jooq.test.sqlserver.generatedclasses.tables.VLibrary(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.sqlserver.generatedclasses.tables.records.VLibraryRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + */ + public final org.jooq.TableField AUTHOR = createField("author", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField TITLE = createField("title", org.jooq.impl.SQLDataType.VARCHAR, this); + + public VLibrary() { + super("v_library", org.jooq.test.sqlserver.generatedclasses.Dbo.DBO); + } + + public VLibrary(java.lang.String alias) { + super(alias, org.jooq.test.sqlserver.generatedclasses.Dbo.DBO, org.jooq.test.sqlserver.generatedclasses.tables.VLibrary.V_LIBRARY); + } + + @Override + public org.jooq.test.sqlserver.generatedclasses.tables.VLibrary as(java.lang.String alias) { + return new org.jooq.test.sqlserver.generatedclasses.tables.VLibrary(alias); + } +} diff --git a/jOOQ-test/src/org/jooq/test/sqlserver/generatedclasses/tables/XTestCase_64_69.java b/jOOQ-test/src/org/jooq/test/sqlserver/generatedclasses/tables/XTestCase_64_69.java new file mode 100644 index 00000000000..f55a9c12a0d --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/sqlserver/generatedclasses/tables/XTestCase_64_69.java @@ -0,0 +1,78 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.sqlserver.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class XTestCase_64_69 extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = 1752230745; + + /** + * The singleton instance of dbo.x_test_case_64_69 + */ + public static final org.jooq.test.sqlserver.generatedclasses.tables.XTestCase_64_69 X_TEST_CASE_64_69 = new org.jooq.test.sqlserver.generatedclasses.tables.XTestCase_64_69(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.sqlserver.generatedclasses.tables.records.XTestCase_64_69Record.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final org.jooq.TableField ID = createField("id", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_x_test_case_64_69a
+	 * FOREIGN KEY (unused_id)
+	 * REFERENCES dbo.x_unused (id)
+	 * 
+ */ + public final org.jooq.TableField UNUSED_ID = createField("unused_id", org.jooq.impl.SQLDataType.INTEGER, this); + + public XTestCase_64_69() { + super("x_test_case_64_69", org.jooq.test.sqlserver.generatedclasses.Dbo.DBO); + } + + public XTestCase_64_69(java.lang.String alias) { + super(alias, org.jooq.test.sqlserver.generatedclasses.Dbo.DBO, org.jooq.test.sqlserver.generatedclasses.tables.XTestCase_64_69.X_TEST_CASE_64_69); + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.test.sqlserver.generatedclasses.Keys.PK_X_TEST_CASE_64_69; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.test.sqlserver.generatedclasses.Keys.PK_X_TEST_CASE_64_69); + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getReferences() { + return java.util.Arrays.>asList(org.jooq.test.sqlserver.generatedclasses.Keys.FK_X_TEST_CASE_64_69A); + } + + @Override + public org.jooq.test.sqlserver.generatedclasses.tables.XTestCase_64_69 as(java.lang.String alias) { + return new org.jooq.test.sqlserver.generatedclasses.tables.XTestCase_64_69(alias); + } +} diff --git a/jOOQ-test/src/org/jooq/test/sqlserver/generatedclasses/tables/XTestCase_71.java b/jOOQ-test/src/org/jooq/test/sqlserver/generatedclasses/tables/XTestCase_71.java new file mode 100644 index 00000000000..b6ed84844c6 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/sqlserver/generatedclasses/tables/XTestCase_71.java @@ -0,0 +1,78 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.sqlserver.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class XTestCase_71 extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = 683166237; + + /** + * The singleton instance of dbo.x_test_case_71 + */ + public static final org.jooq.test.sqlserver.generatedclasses.tables.XTestCase_71 X_TEST_CASE_71 = new org.jooq.test.sqlserver.generatedclasses.tables.XTestCase_71(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.sqlserver.generatedclasses.tables.records.XTestCase_71Record.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final org.jooq.TableField ID = createField("id", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_x_test_case_71
+	 * FOREIGN KEY (test_case_64_69_id)
+	 * REFERENCES dbo.x_test_case_64_69 (id)
+	 * 
+ */ + public final org.jooq.TableField TEST_CASE_64_69_ID = createField("test_case_64_69_id", org.jooq.impl.SQLDataType.INTEGER, this); + + public XTestCase_71() { + super("x_test_case_71", org.jooq.test.sqlserver.generatedclasses.Dbo.DBO); + } + + public XTestCase_71(java.lang.String alias) { + super(alias, org.jooq.test.sqlserver.generatedclasses.Dbo.DBO, org.jooq.test.sqlserver.generatedclasses.tables.XTestCase_71.X_TEST_CASE_71); + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.test.sqlserver.generatedclasses.Keys.PK_X_TEST_CASE_71; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.test.sqlserver.generatedclasses.Keys.PK_X_TEST_CASE_71); + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getReferences() { + return java.util.Arrays.>asList(org.jooq.test.sqlserver.generatedclasses.Keys.FK_X_TEST_CASE_71); + } + + @Override + public org.jooq.test.sqlserver.generatedclasses.tables.XTestCase_71 as(java.lang.String alias) { + return new org.jooq.test.sqlserver.generatedclasses.tables.XTestCase_71(alias); + } +} diff --git a/jOOQ-test/src/org/jooq/test/sqlserver/generatedclasses/tables/XTestCase_85.java b/jOOQ-test/src/org/jooq/test/sqlserver/generatedclasses/tables/XTestCase_85.java new file mode 100644 index 00000000000..d3a25ff7ff9 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/sqlserver/generatedclasses/tables/XTestCase_85.java @@ -0,0 +1,89 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.sqlserver.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class XTestCase_85 extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = -565560211; + + /** + * The singleton instance of dbo.x_test_case_85 + */ + public static final org.jooq.test.sqlserver.generatedclasses.tables.XTestCase_85 X_TEST_CASE_85 = new org.jooq.test.sqlserver.generatedclasses.tables.XTestCase_85(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.sqlserver.generatedclasses.tables.records.XTestCase_85Record.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final org.jooq.TableField ID = createField("id", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_x_test_case_85
+	 * FOREIGN KEY (x_unused_id, x_unused_name)
+	 * REFERENCES dbo.x_unused (id, name)
+	 * 
+ */ + public final org.jooq.TableField X_UNUSED_ID = createField("x_unused_id", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_x_test_case_85
+	 * FOREIGN KEY (x_unused_id, x_unused_name)
+	 * REFERENCES dbo.x_unused (id, name)
+	 * 
+ */ + public final org.jooq.TableField X_UNUSED_NAME = createField("x_unused_name", org.jooq.impl.SQLDataType.VARCHAR, this); + + public XTestCase_85() { + super("x_test_case_85", org.jooq.test.sqlserver.generatedclasses.Dbo.DBO); + } + + public XTestCase_85(java.lang.String alias) { + super(alias, org.jooq.test.sqlserver.generatedclasses.Dbo.DBO, org.jooq.test.sqlserver.generatedclasses.tables.XTestCase_85.X_TEST_CASE_85); + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.test.sqlserver.generatedclasses.Keys.PK_X_TEST_CASE_85; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.test.sqlserver.generatedclasses.Keys.PK_X_TEST_CASE_85); + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getReferences() { + return java.util.Arrays.>asList(org.jooq.test.sqlserver.generatedclasses.Keys.FK_X_TEST_CASE_85); + } + + @Override + public org.jooq.test.sqlserver.generatedclasses.tables.XTestCase_85 as(java.lang.String alias) { + return new org.jooq.test.sqlserver.generatedclasses.tables.XTestCase_85(alias); + } +} diff --git a/jOOQ-test/src/org/jooq/test/sqlserver/generatedclasses/tables/XUnused.java b/jOOQ-test/src/org/jooq/test/sqlserver/generatedclasses/tables/XUnused.java new file mode 100644 index 00000000000..1666bd60243 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/sqlserver/generatedclasses/tables/XUnused.java @@ -0,0 +1,146 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.sqlserver.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class XUnused extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = -1405173408; + + /** + * The singleton instance of dbo.x_unused + */ + public static final org.jooq.test.sqlserver.generatedclasses.tables.XUnused X_UNUSED = new org.jooq.test.sqlserver.generatedclasses.tables.XUnused(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.sqlserver.generatedclasses.tables.records.XUnusedRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final org.jooq.TableField ID = createField("id", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final org.jooq.TableField NAME = createField("name", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField BIG_INTEGER = createField("BIG_INTEGER", org.jooq.impl.SQLDataType.DECIMAL_INTEGER, this); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_x_unused_self
+	 * FOREIGN KEY (id_ref, name_ref)
+	 * REFERENCES dbo.x_unused (id, name)
+	 * 
+ */ + public final org.jooq.TableField ID_REF = createField("id_ref", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField CLASS = createField("CLASS", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField FIELDS = createField("FIELDS", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField CONFIGURATION = createField("CONFIGURATION", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField U_D_T = createField("U_D_T", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField META_DATA = createField("META_DATA", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField TYPE0 = createField("TYPE0", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField PRIMARY_KEY = createField("PRIMARY_KEY", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField PRIMARYKEY = createField("PRIMARYKEY", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_x_unused_self
+	 * FOREIGN KEY (id_ref, name_ref)
+	 * REFERENCES dbo.x_unused (id, name)
+	 * 
+ */ + public final org.jooq.TableField NAME_REF = createField("name_ref", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField FIELD_737 = createField("FIELD 737", org.jooq.impl.SQLDataType.NUMERIC, this); + + public XUnused() { + super("x_unused", org.jooq.test.sqlserver.generatedclasses.Dbo.DBO); + } + + public XUnused(java.lang.String alias) { + super(alias, org.jooq.test.sqlserver.generatedclasses.Dbo.DBO, org.jooq.test.sqlserver.generatedclasses.tables.XUnused.X_UNUSED); + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.test.sqlserver.generatedclasses.Keys.PK_X_UNUSED; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.test.sqlserver.generatedclasses.Keys.PK_X_UNUSED, org.jooq.test.sqlserver.generatedclasses.Keys.UK_X_UNUSED_ID); + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getReferences() { + return java.util.Arrays.>asList(org.jooq.test.sqlserver.generatedclasses.Keys.FK_X_UNUSED_SELF); + } + + @Override + public org.jooq.test.sqlserver.generatedclasses.tables.XUnused as(java.lang.String alias) { + return new org.jooq.test.sqlserver.generatedclasses.tables.XUnused(alias); + } +} diff --git a/jOOQ-test/src/org/jooq/test/sqlserver/generatedclasses/tables/records/TAuthorRecord.java b/jOOQ-test/src/org/jooq/test/sqlserver/generatedclasses/tables/records/TAuthorRecord.java new file mode 100644 index 00000000000..54063423b0f --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/sqlserver/generatedclasses/tables/records/TAuthorRecord.java @@ -0,0 +1,131 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.sqlserver.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + */ +public class TAuthorRecord extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = -1231036962; + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setId(java.lang.Integer value) { + setValue(org.jooq.test.sqlserver.generatedclasses.tables.TAuthor.T_AUTHOR.ID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.lang.Integer getId() { + return getValue(org.jooq.test.sqlserver.generatedclasses.tables.TAuthor.T_AUTHOR.ID); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.util.List fetchTBookListByAuthorId() { + return create() + .selectFrom(org.jooq.test.sqlserver.generatedclasses.tables.TBook.T_BOOK) + .where(org.jooq.test.sqlserver.generatedclasses.tables.TBook.T_BOOK.AUTHOR_ID.equal(getValue(org.jooq.test.sqlserver.generatedclasses.tables.TAuthor.T_AUTHOR.ID))) + .fetch(); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.util.List fetchTBookListByCoAuthorId() { + return create() + .selectFrom(org.jooq.test.sqlserver.generatedclasses.tables.TBook.T_BOOK) + .where(org.jooq.test.sqlserver.generatedclasses.tables.TBook.T_BOOK.CO_AUTHOR_ID.equal(getValue(org.jooq.test.sqlserver.generatedclasses.tables.TAuthor.T_AUTHOR.ID))) + .fetch(); + } + + /** + * An uncommented item + */ + public void setFirstName(java.lang.String value) { + setValue(org.jooq.test.sqlserver.generatedclasses.tables.TAuthor.T_AUTHOR.FIRST_NAME, value); + } + + /** + * An uncommented item + */ + public java.lang.String getFirstName() { + return getValue(org.jooq.test.sqlserver.generatedclasses.tables.TAuthor.T_AUTHOR.FIRST_NAME); + } + + /** + * An uncommented item + */ + public void setLastName(java.lang.String value) { + setValue(org.jooq.test.sqlserver.generatedclasses.tables.TAuthor.T_AUTHOR.LAST_NAME, value); + } + + /** + * An uncommented item + */ + public java.lang.String getLastName() { + return getValue(org.jooq.test.sqlserver.generatedclasses.tables.TAuthor.T_AUTHOR.LAST_NAME); + } + + /** + * An uncommented item + */ + public void setDateOfBirth(java.sql.Date value) { + setValue(org.jooq.test.sqlserver.generatedclasses.tables.TAuthor.T_AUTHOR.DATE_OF_BIRTH, value); + } + + /** + * An uncommented item + */ + public java.sql.Date getDateOfBirth() { + return getValue(org.jooq.test.sqlserver.generatedclasses.tables.TAuthor.T_AUTHOR.DATE_OF_BIRTH); + } + + /** + * An uncommented item + */ + public void setYearOfBirth(java.lang.Integer value) { + setValue(org.jooq.test.sqlserver.generatedclasses.tables.TAuthor.T_AUTHOR.YEAR_OF_BIRTH, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getYearOfBirth() { + return getValue(org.jooq.test.sqlserver.generatedclasses.tables.TAuthor.T_AUTHOR.YEAR_OF_BIRTH); + } + + /** + * An uncommented item + */ + public void setAddress(java.lang.String value) { + setValue(org.jooq.test.sqlserver.generatedclasses.tables.TAuthor.T_AUTHOR.ADDRESS, value); + } + + /** + * An uncommented item + */ + public java.lang.String getAddress() { + return getValue(org.jooq.test.sqlserver.generatedclasses.tables.TAuthor.T_AUTHOR.ADDRESS); + } + + /** + * Create a detached TAuthorRecord + */ + public TAuthorRecord() { + super(org.jooq.test.sqlserver.generatedclasses.tables.TAuthor.T_AUTHOR); + } +} diff --git a/jOOQ-test/src/org/jooq/test/sqlserver/generatedclasses/tables/records/TBookRecord.java b/jOOQ-test/src/org/jooq/test/sqlserver/generatedclasses/tables/records/TBookRecord.java new file mode 100644 index 00000000000..3b5a22c7ea6 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/sqlserver/generatedclasses/tables/records/TBookRecord.java @@ -0,0 +1,229 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.sqlserver.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + */ +public class TBookRecord extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = 1920286153; + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setId(java.lang.Integer value) { + setValue(org.jooq.test.sqlserver.generatedclasses.tables.TBook.T_BOOK.ID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.lang.Integer getId() { + return getValue(org.jooq.test.sqlserver.generatedclasses.tables.TBook.T_BOOK.ID); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.util.List fetchTBookToBookStoreList() { + return create() + .selectFrom(org.jooq.test.sqlserver.generatedclasses.tables.TBookToBookStore.T_BOOK_TO_BOOK_STORE) + .where(org.jooq.test.sqlserver.generatedclasses.tables.TBookToBookStore.T_BOOK_TO_BOOK_STORE.BOOK_ID.equal(getValue(org.jooq.test.sqlserver.generatedclasses.tables.TBook.T_BOOK.ID))) + .fetch(); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_t_book_author_id
+	 * FOREIGN KEY (AUTHOR_ID)
+	 * REFERENCES dbo.t_author (ID)
+	 * 
+ */ + public void setAuthorId(java.lang.Integer value) { + setValue(org.jooq.test.sqlserver.generatedclasses.tables.TBook.T_BOOK.AUTHOR_ID, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_t_book_author_id
+	 * FOREIGN KEY (AUTHOR_ID)
+	 * REFERENCES dbo.t_author (ID)
+	 * 
+ */ + public java.lang.Integer getAuthorId() { + return getValue(org.jooq.test.sqlserver.generatedclasses.tables.TBook.T_BOOK.AUTHOR_ID); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_t_book_author_id
+	 * FOREIGN KEY (AUTHOR_ID)
+	 * REFERENCES dbo.t_author (ID)
+	 * 
+ */ + public org.jooq.test.sqlserver.generatedclasses.tables.records.TAuthorRecord fetchTAuthorByAuthorId() { + return create() + .selectFrom(org.jooq.test.sqlserver.generatedclasses.tables.TAuthor.T_AUTHOR) + .where(org.jooq.test.sqlserver.generatedclasses.tables.TAuthor.T_AUTHOR.ID.equal(getValue(org.jooq.test.sqlserver.generatedclasses.tables.TBook.T_BOOK.AUTHOR_ID))) + .fetchOne(); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_t_book_co_author_id
+	 * FOREIGN KEY (CO_AUTHOR_ID)
+	 * REFERENCES dbo.t_author (ID)
+	 * 
+ */ + public void setCoAuthorId(java.lang.Integer value) { + setValue(org.jooq.test.sqlserver.generatedclasses.tables.TBook.T_BOOK.CO_AUTHOR_ID, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_t_book_co_author_id
+	 * FOREIGN KEY (CO_AUTHOR_ID)
+	 * REFERENCES dbo.t_author (ID)
+	 * 
+ */ + public java.lang.Integer getCoAuthorId() { + return getValue(org.jooq.test.sqlserver.generatedclasses.tables.TBook.T_BOOK.CO_AUTHOR_ID); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_t_book_co_author_id
+	 * FOREIGN KEY (CO_AUTHOR_ID)
+	 * REFERENCES dbo.t_author (ID)
+	 * 
+ */ + public org.jooq.test.sqlserver.generatedclasses.tables.records.TAuthorRecord fetchTAuthorByCoAuthorId() { + return create() + .selectFrom(org.jooq.test.sqlserver.generatedclasses.tables.TAuthor.T_AUTHOR) + .where(org.jooq.test.sqlserver.generatedclasses.tables.TAuthor.T_AUTHOR.ID.equal(getValue(org.jooq.test.sqlserver.generatedclasses.tables.TBook.T_BOOK.CO_AUTHOR_ID))) + .fetchOne(); + } + + /** + * An uncommented item + */ + public void setDetailsId(java.lang.Integer value) { + setValue(org.jooq.test.sqlserver.generatedclasses.tables.TBook.T_BOOK.DETAILS_ID, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getDetailsId() { + return getValue(org.jooq.test.sqlserver.generatedclasses.tables.TBook.T_BOOK.DETAILS_ID); + } + + /** + * An uncommented item + */ + public void setTitle(java.lang.String value) { + setValue(org.jooq.test.sqlserver.generatedclasses.tables.TBook.T_BOOK.TITLE, value); + } + + /** + * An uncommented item + */ + public java.lang.String getTitle() { + return getValue(org.jooq.test.sqlserver.generatedclasses.tables.TBook.T_BOOK.TITLE); + } + + /** + * An uncommented item + */ + public void setPublishedIn(java.lang.Integer value) { + setValue(org.jooq.test.sqlserver.generatedclasses.tables.TBook.T_BOOK.PUBLISHED_IN, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getPublishedIn() { + return getValue(org.jooq.test.sqlserver.generatedclasses.tables.TBook.T_BOOK.PUBLISHED_IN); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_t_book_language_id
+	 * FOREIGN KEY (LANGUAGE_ID)
+	 * REFERENCES dbo.t_language (id)
+	 * 
+ */ + public void setLanguageId(org.jooq.test.sqlserver.generatedclasses.enums.TLanguage value) { + setValue(org.jooq.test.sqlserver.generatedclasses.tables.TBook.T_BOOK.LANGUAGE_ID, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_t_book_language_id
+	 * FOREIGN KEY (LANGUAGE_ID)
+	 * REFERENCES dbo.t_language (id)
+	 * 
+ */ + public org.jooq.test.sqlserver.generatedclasses.enums.TLanguage getLanguageId() { + return getValue(org.jooq.test.sqlserver.generatedclasses.tables.TBook.T_BOOK.LANGUAGE_ID); + } + + /** + * An uncommented item + */ + public void setContentText(java.lang.String value) { + setValue(org.jooq.test.sqlserver.generatedclasses.tables.TBook.T_BOOK.CONTENT_TEXT, value); + } + + /** + * An uncommented item + */ + public java.lang.String getContentText() { + return getValue(org.jooq.test.sqlserver.generatedclasses.tables.TBook.T_BOOK.CONTENT_TEXT); + } + + /** + * An uncommented item + */ + public void setContentPdf(byte[] value) { + setValue(org.jooq.test.sqlserver.generatedclasses.tables.TBook.T_BOOK.CONTENT_PDF, value); + } + + /** + * An uncommented item + */ + public byte[] getContentPdf() { + return getValue(org.jooq.test.sqlserver.generatedclasses.tables.TBook.T_BOOK.CONTENT_PDF); + } + + /** + * Create a detached TBookRecord + */ + public TBookRecord() { + super(org.jooq.test.sqlserver.generatedclasses.tables.TBook.T_BOOK); + } +} diff --git a/jOOQ-test/src/org/jooq/test/sqlserver/generatedclasses/tables/records/TBookStoreRecord.java b/jOOQ-test/src/org/jooq/test/sqlserver/generatedclasses/tables/records/TBookStoreRecord.java new file mode 100644 index 00000000000..1962d93fe41 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/sqlserver/generatedclasses/tables/records/TBookStoreRecord.java @@ -0,0 +1,43 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.sqlserver.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + */ +public class TBookStoreRecord extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = 1944223517; + + /** + * An uncommented item + */ + public void setName(java.lang.String value) { + setValue(org.jooq.test.sqlserver.generatedclasses.tables.TBookStore.T_BOOK_STORE.NAME, value); + } + + /** + * An uncommented item + */ + public java.lang.String getName() { + return getValue(org.jooq.test.sqlserver.generatedclasses.tables.TBookStore.T_BOOK_STORE.NAME); + } + + /** + * An uncommented item + */ + public java.util.List fetchTBookToBookStoreList() { + return create() + .selectFrom(org.jooq.test.sqlserver.generatedclasses.tables.TBookToBookStore.T_BOOK_TO_BOOK_STORE) + .where(org.jooq.test.sqlserver.generatedclasses.tables.TBookToBookStore.T_BOOK_TO_BOOK_STORE.BOOK_STORE_NAME.equal(getValue(org.jooq.test.sqlserver.generatedclasses.tables.TBookStore.T_BOOK_STORE.NAME))) + .fetch(); + } + + /** + * Create a detached TBookStoreRecord + */ + public TBookStoreRecord() { + super(org.jooq.test.sqlserver.generatedclasses.tables.TBookStore.T_BOOK_STORE); + } +} diff --git a/jOOQ-test/src/org/jooq/test/sqlserver/generatedclasses/tables/records/TBookToBookStoreRecord.java b/jOOQ-test/src/org/jooq/test/sqlserver/generatedclasses/tables/records/TBookToBookStoreRecord.java new file mode 100644 index 00000000000..9cd7c1af4fb --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/sqlserver/generatedclasses/tables/records/TBookToBookStoreRecord.java @@ -0,0 +1,129 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.sqlserver.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + */ +public class TBookToBookStoreRecord extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = -91061995; + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT fk_b2bs_bs_name
+	 * FOREIGN KEY (BOOK_STORE_NAME)
+	 * REFERENCES dbo.t_book_store (NAME)
+	 * 
+ */ + public void setBookStoreName(java.lang.String value) { + setValue(org.jooq.test.sqlserver.generatedclasses.tables.TBookToBookStore.T_BOOK_TO_BOOK_STORE.BOOK_STORE_NAME, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT fk_b2bs_bs_name
+	 * FOREIGN KEY (BOOK_STORE_NAME)
+	 * REFERENCES dbo.t_book_store (NAME)
+	 * 
+ */ + public java.lang.String getBookStoreName() { + return getValue(org.jooq.test.sqlserver.generatedclasses.tables.TBookToBookStore.T_BOOK_TO_BOOK_STORE.BOOK_STORE_NAME); + } + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT fk_b2bs_bs_name
+	 * FOREIGN KEY (BOOK_STORE_NAME)
+	 * REFERENCES dbo.t_book_store (NAME)
+	 * 
+ */ + public org.jooq.test.sqlserver.generatedclasses.tables.records.TBookStoreRecord fetchTBookStore() { + return create() + .selectFrom(org.jooq.test.sqlserver.generatedclasses.tables.TBookStore.T_BOOK_STORE) + .where(org.jooq.test.sqlserver.generatedclasses.tables.TBookStore.T_BOOK_STORE.NAME.equal(getValue(org.jooq.test.sqlserver.generatedclasses.tables.TBookToBookStore.T_BOOK_TO_BOOK_STORE.BOOK_STORE_NAME))) + .fetchOne(); + } + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT fk_b2bs_b_id
+	 * FOREIGN KEY (BOOK_ID)
+	 * REFERENCES dbo.t_book (ID)
+	 * 
+ */ + public void setBookId(java.lang.Integer value) { + setValue(org.jooq.test.sqlserver.generatedclasses.tables.TBookToBookStore.T_BOOK_TO_BOOK_STORE.BOOK_ID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT fk_b2bs_b_id
+	 * FOREIGN KEY (BOOK_ID)
+	 * REFERENCES dbo.t_book (ID)
+	 * 
+ */ + public java.lang.Integer getBookId() { + return getValue(org.jooq.test.sqlserver.generatedclasses.tables.TBookToBookStore.T_BOOK_TO_BOOK_STORE.BOOK_ID); + } + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT fk_b2bs_b_id
+	 * FOREIGN KEY (BOOK_ID)
+	 * REFERENCES dbo.t_book (ID)
+	 * 
+ */ + public org.jooq.test.sqlserver.generatedclasses.tables.records.TBookRecord fetchTBook() { + return create() + .selectFrom(org.jooq.test.sqlserver.generatedclasses.tables.TBook.T_BOOK) + .where(org.jooq.test.sqlserver.generatedclasses.tables.TBook.T_BOOK.ID.equal(getValue(org.jooq.test.sqlserver.generatedclasses.tables.TBookToBookStore.T_BOOK_TO_BOOK_STORE.BOOK_ID))) + .fetchOne(); + } + + /** + * An uncommented item + */ + public void setStock(java.lang.Integer value) { + setValue(org.jooq.test.sqlserver.generatedclasses.tables.TBookToBookStore.T_BOOK_TO_BOOK_STORE.STOCK, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getStock() { + return getValue(org.jooq.test.sqlserver.generatedclasses.tables.TBookToBookStore.T_BOOK_TO_BOOK_STORE.STOCK); + } + + /** + * Create a detached TBookToBookStoreRecord + */ + public TBookToBookStoreRecord() { + super(org.jooq.test.sqlserver.generatedclasses.tables.TBookToBookStore.T_BOOK_TO_BOOK_STORE); + } +} diff --git a/jOOQ-test/src/org/jooq/test/sqlserver/generatedclasses/tables/records/TBooleansRecord.java b/jOOQ-test/src/org/jooq/test/sqlserver/generatedclasses/tables/records/TBooleansRecord.java new file mode 100644 index 00000000000..e724a96b656 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/sqlserver/generatedclasses/tables/records/TBooleansRecord.java @@ -0,0 +1,177 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.sqlserver.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + */ +public class TBooleansRecord extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = -832963789; + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setId(java.lang.Integer value) { + setValue(org.jooq.test.sqlserver.generatedclasses.tables.TBooleans.T_BOOLEANS.ID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.lang.Integer getId() { + return getValue(org.jooq.test.sqlserver.generatedclasses.tables.TBooleans.T_BOOLEANS.ID); + } + + /** + * An uncommented item + */ + public void setOneZero(org.jooq.test._.converters.Boolean_10 value) { + setValue(org.jooq.test.sqlserver.generatedclasses.tables.TBooleans.T_BOOLEANS.ONE_ZERO, value); + } + + /** + * An uncommented item + */ + public org.jooq.test._.converters.Boolean_10 getOneZero() { + return getValue(org.jooq.test.sqlserver.generatedclasses.tables.TBooleans.T_BOOLEANS.ONE_ZERO); + } + + /** + * An uncommented item + */ + public void setTrueFalseLc(org.jooq.test._.converters.Boolean_TF_LC value) { + setValue(org.jooq.test.sqlserver.generatedclasses.tables.TBooleans.T_BOOLEANS.TRUE_FALSE_LC, value); + } + + /** + * An uncommented item + */ + public org.jooq.test._.converters.Boolean_TF_LC getTrueFalseLc() { + return getValue(org.jooq.test.sqlserver.generatedclasses.tables.TBooleans.T_BOOLEANS.TRUE_FALSE_LC); + } + + /** + * An uncommented item + */ + public void setTrueFalseUc(org.jooq.test._.converters.Boolean_TF_UC value) { + setValue(org.jooq.test.sqlserver.generatedclasses.tables.TBooleans.T_BOOLEANS.TRUE_FALSE_UC, value); + } + + /** + * An uncommented item + */ + public org.jooq.test._.converters.Boolean_TF_UC getTrueFalseUc() { + return getValue(org.jooq.test.sqlserver.generatedclasses.tables.TBooleans.T_BOOLEANS.TRUE_FALSE_UC); + } + + /** + * An uncommented item + */ + public void setYesNoLc(org.jooq.test._.converters.Boolean_YES_NO_LC value) { + setValue(org.jooq.test.sqlserver.generatedclasses.tables.TBooleans.T_BOOLEANS.YES_NO_LC, value); + } + + /** + * An uncommented item + */ + public org.jooq.test._.converters.Boolean_YES_NO_LC getYesNoLc() { + return getValue(org.jooq.test.sqlserver.generatedclasses.tables.TBooleans.T_BOOLEANS.YES_NO_LC); + } + + /** + * An uncommented item + */ + public void setYesNoUc(org.jooq.test._.converters.Boolean_YES_NO_UC value) { + setValue(org.jooq.test.sqlserver.generatedclasses.tables.TBooleans.T_BOOLEANS.YES_NO_UC, value); + } + + /** + * An uncommented item + */ + public org.jooq.test._.converters.Boolean_YES_NO_UC getYesNoUc() { + return getValue(org.jooq.test.sqlserver.generatedclasses.tables.TBooleans.T_BOOLEANS.YES_NO_UC); + } + + /** + * An uncommented item + */ + public void setYNLc(org.jooq.test._.converters.Boolean_YN_LC value) { + setValue(org.jooq.test.sqlserver.generatedclasses.tables.TBooleans.T_BOOLEANS.Y_N_LC, value); + } + + /** + * An uncommented item + */ + public org.jooq.test._.converters.Boolean_YN_LC getYNLc() { + return getValue(org.jooq.test.sqlserver.generatedclasses.tables.TBooleans.T_BOOLEANS.Y_N_LC); + } + + /** + * An uncommented item + */ + public void setYNUc(org.jooq.test._.converters.Boolean_YN_UC value) { + setValue(org.jooq.test.sqlserver.generatedclasses.tables.TBooleans.T_BOOLEANS.Y_N_UC, value); + } + + /** + * An uncommented item + */ + public org.jooq.test._.converters.Boolean_YN_UC getYNUc() { + return getValue(org.jooq.test.sqlserver.generatedclasses.tables.TBooleans.T_BOOLEANS.Y_N_UC); + } + + /** + * An uncommented item + */ + public void setVcBoolean(java.lang.Boolean value) { + setValue(org.jooq.test.sqlserver.generatedclasses.tables.TBooleans.T_BOOLEANS.VC_BOOLEAN, value); + } + + /** + * An uncommented item + */ + public java.lang.Boolean getVcBoolean() { + return getValue(org.jooq.test.sqlserver.generatedclasses.tables.TBooleans.T_BOOLEANS.VC_BOOLEAN); + } + + /** + * An uncommented item + */ + public void setCBoolean(java.lang.Boolean value) { + setValue(org.jooq.test.sqlserver.generatedclasses.tables.TBooleans.T_BOOLEANS.C_BOOLEAN, value); + } + + /** + * An uncommented item + */ + public java.lang.Boolean getCBoolean() { + return getValue(org.jooq.test.sqlserver.generatedclasses.tables.TBooleans.T_BOOLEANS.C_BOOLEAN); + } + + /** + * An uncommented item + */ + public void setNBoolean(java.lang.Boolean value) { + setValue(org.jooq.test.sqlserver.generatedclasses.tables.TBooleans.T_BOOLEANS.N_BOOLEAN, value); + } + + /** + * An uncommented item + */ + public java.lang.Boolean getNBoolean() { + return getValue(org.jooq.test.sqlserver.generatedclasses.tables.TBooleans.T_BOOLEANS.N_BOOLEAN); + } + + /** + * Create a detached TBooleansRecord + */ + public TBooleansRecord() { + super(org.jooq.test.sqlserver.generatedclasses.tables.TBooleans.T_BOOLEANS); + } +} diff --git a/jOOQ-test/src/org/jooq/test/sqlserver/generatedclasses/tables/records/TDatesRecord.java b/jOOQ-test/src/org/jooq/test/sqlserver/generatedclasses/tables/records/TDatesRecord.java new file mode 100644 index 00000000000..44957bb48f2 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/sqlserver/generatedclasses/tables/records/TDatesRecord.java @@ -0,0 +1,107 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.sqlserver.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + */ +public class TDatesRecord extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = -560600961; + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setId(java.lang.Integer value) { + setValue(org.jooq.test.sqlserver.generatedclasses.tables.TDates.T_DATES.ID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.lang.Integer getId() { + return getValue(org.jooq.test.sqlserver.generatedclasses.tables.TDates.T_DATES.ID); + } + + /** + * An uncommented item + */ + public void setD(java.sql.Date value) { + setValue(org.jooq.test.sqlserver.generatedclasses.tables.TDates.T_DATES.D, value); + } + + /** + * An uncommented item + */ + public java.sql.Date getD() { + return getValue(org.jooq.test.sqlserver.generatedclasses.tables.TDates.T_DATES.D); + } + + /** + * An uncommented item + */ + public void setT(java.sql.Time value) { + setValue(org.jooq.test.sqlserver.generatedclasses.tables.TDates.T_DATES.T, value); + } + + /** + * An uncommented item + */ + public java.sql.Time getT() { + return getValue(org.jooq.test.sqlserver.generatedclasses.tables.TDates.T_DATES.T); + } + + /** + * An uncommented item + */ + public void setTs(java.sql.Timestamp value) { + setValue(org.jooq.test.sqlserver.generatedclasses.tables.TDates.T_DATES.TS, value); + } + + /** + * An uncommented item + */ + public java.sql.Timestamp getTs() { + return getValue(org.jooq.test.sqlserver.generatedclasses.tables.TDates.T_DATES.TS); + } + + /** + * An uncommented item + */ + public void setDInt(java.lang.Integer value) { + setValue(org.jooq.test.sqlserver.generatedclasses.tables.TDates.T_DATES.D_INT, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getDInt() { + return getValue(org.jooq.test.sqlserver.generatedclasses.tables.TDates.T_DATES.D_INT); + } + + /** + * An uncommented item + */ + public void setTsBigint(java.lang.Long value) { + setValue(org.jooq.test.sqlserver.generatedclasses.tables.TDates.T_DATES.TS_BIGINT, value); + } + + /** + * An uncommented item + */ + public java.lang.Long getTsBigint() { + return getValue(org.jooq.test.sqlserver.generatedclasses.tables.TDates.T_DATES.TS_BIGINT); + } + + /** + * Create a detached TDatesRecord + */ + public TDatesRecord() { + super(org.jooq.test.sqlserver.generatedclasses.tables.TDates.T_DATES); + } +} diff --git a/jOOQ-test/src/org/jooq/test/sqlserver/generatedclasses/tables/records/TIdentityPkRecord.java b/jOOQ-test/src/org/jooq/test/sqlserver/generatedclasses/tables/records/TIdentityPkRecord.java new file mode 100644 index 00000000000..00c62692626 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/sqlserver/generatedclasses/tables/records/TIdentityPkRecord.java @@ -0,0 +1,51 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.sqlserver.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + */ +public class TIdentityPkRecord extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = 1804684282; + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setId(java.lang.Integer value) { + setValue(org.jooq.test.sqlserver.generatedclasses.tables.TIdentityPk.T_IDENTITY_PK.ID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.lang.Integer getId() { + return getValue(org.jooq.test.sqlserver.generatedclasses.tables.TIdentityPk.T_IDENTITY_PK.ID); + } + + /** + * An uncommented item + */ + public void setVal(java.lang.Integer value) { + setValue(org.jooq.test.sqlserver.generatedclasses.tables.TIdentityPk.T_IDENTITY_PK.VAL, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getVal() { + return getValue(org.jooq.test.sqlserver.generatedclasses.tables.TIdentityPk.T_IDENTITY_PK.VAL); + } + + /** + * Create a detached TIdentityPkRecord + */ + public TIdentityPkRecord() { + super(org.jooq.test.sqlserver.generatedclasses.tables.TIdentityPk.T_IDENTITY_PK); + } +} diff --git a/jOOQ-test/src/org/jooq/test/sqlserver/generatedclasses/tables/records/TIdentityRecord.java b/jOOQ-test/src/org/jooq/test/sqlserver/generatedclasses/tables/records/TIdentityRecord.java new file mode 100644 index 00000000000..3e05e90e629 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/sqlserver/generatedclasses/tables/records/TIdentityRecord.java @@ -0,0 +1,47 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.sqlserver.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + */ +public class TIdentityRecord extends org.jooq.impl.TableRecordImpl { + + private static final long serialVersionUID = -1426526217; + + /** + * An uncommented item + */ + public void setId(java.lang.Integer value) { + setValue(org.jooq.test.sqlserver.generatedclasses.tables.TIdentity.T_IDENTITY.ID, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getId() { + return getValue(org.jooq.test.sqlserver.generatedclasses.tables.TIdentity.T_IDENTITY.ID); + } + + /** + * An uncommented item + */ + public void setVal(java.lang.Integer value) { + setValue(org.jooq.test.sqlserver.generatedclasses.tables.TIdentity.T_IDENTITY.VAL, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getVal() { + return getValue(org.jooq.test.sqlserver.generatedclasses.tables.TIdentity.T_IDENTITY.VAL); + } + + /** + * Create a detached TIdentityRecord + */ + public TIdentityRecord() { + super(org.jooq.test.sqlserver.generatedclasses.tables.TIdentity.T_IDENTITY); + } +} diff --git a/jOOQ-test/src/org/jooq/test/sqlserver/generatedclasses/tables/records/TTriggersRecord.java b/jOOQ-test/src/org/jooq/test/sqlserver/generatedclasses/tables/records/TTriggersRecord.java new file mode 100644 index 00000000000..870e7d9a328 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/sqlserver/generatedclasses/tables/records/TTriggersRecord.java @@ -0,0 +1,65 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.sqlserver.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + */ +public class TTriggersRecord extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = 523012355; + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setIdGenerated(java.lang.Integer value) { + setValue(org.jooq.test.sqlserver.generatedclasses.tables.TTriggers.T_TRIGGERS.ID_GENERATED, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.lang.Integer getIdGenerated() { + return getValue(org.jooq.test.sqlserver.generatedclasses.tables.TTriggers.T_TRIGGERS.ID_GENERATED); + } + + /** + * An uncommented item + */ + public void setId(java.lang.Integer value) { + setValue(org.jooq.test.sqlserver.generatedclasses.tables.TTriggers.T_TRIGGERS.ID, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getId() { + return getValue(org.jooq.test.sqlserver.generatedclasses.tables.TTriggers.T_TRIGGERS.ID); + } + + /** + * An uncommented item + */ + public void setCounter(java.lang.Integer value) { + setValue(org.jooq.test.sqlserver.generatedclasses.tables.TTriggers.T_TRIGGERS.COUNTER, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getCounter() { + return getValue(org.jooq.test.sqlserver.generatedclasses.tables.TTriggers.T_TRIGGERS.COUNTER); + } + + /** + * Create a detached TTriggersRecord + */ + public TTriggersRecord() { + super(org.jooq.test.sqlserver.generatedclasses.tables.TTriggers.T_TRIGGERS); + } +} diff --git a/jOOQ-test/src/org/jooq/test/sqlserver/generatedclasses/tables/records/T_639NumbersTableRecord.java b/jOOQ-test/src/org/jooq/test/sqlserver/generatedclasses/tables/records/T_639NumbersTableRecord.java new file mode 100644 index 00000000000..4fc014cc055 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/sqlserver/generatedclasses/tables/records/T_639NumbersTableRecord.java @@ -0,0 +1,205 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.sqlserver.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + */ +public class T_639NumbersTableRecord extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = -360765236; + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setId(java.lang.Integer value) { + setValue(org.jooq.test.sqlserver.generatedclasses.tables.T_639NumbersTable.T_639_NUMBERS_TABLE.ID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.lang.Integer getId() { + return getValue(org.jooq.test.sqlserver.generatedclasses.tables.T_639NumbersTable.T_639_NUMBERS_TABLE.ID); + } + + /** + * An uncommented item + */ + public void setByte(java.lang.Byte value) { + setValue(org.jooq.test.sqlserver.generatedclasses.tables.T_639NumbersTable.T_639_NUMBERS_TABLE.BYTE, value); + } + + /** + * An uncommented item + */ + public java.lang.Byte getByte() { + return getValue(org.jooq.test.sqlserver.generatedclasses.tables.T_639NumbersTable.T_639_NUMBERS_TABLE.BYTE); + } + + /** + * An uncommented item + */ + public void setShort(java.lang.Short value) { + setValue(org.jooq.test.sqlserver.generatedclasses.tables.T_639NumbersTable.T_639_NUMBERS_TABLE.SHORT, value); + } + + /** + * An uncommented item + */ + public java.lang.Short getShort() { + return getValue(org.jooq.test.sqlserver.generatedclasses.tables.T_639NumbersTable.T_639_NUMBERS_TABLE.SHORT); + } + + /** + * An uncommented item + */ + public void setInteger(java.lang.Integer value) { + setValue(org.jooq.test.sqlserver.generatedclasses.tables.T_639NumbersTable.T_639_NUMBERS_TABLE.INTEGER, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getInteger() { + return getValue(org.jooq.test.sqlserver.generatedclasses.tables.T_639NumbersTable.T_639_NUMBERS_TABLE.INTEGER); + } + + /** + * An uncommented item + */ + public void setLong(java.lang.Long value) { + setValue(org.jooq.test.sqlserver.generatedclasses.tables.T_639NumbersTable.T_639_NUMBERS_TABLE.LONG, value); + } + + /** + * An uncommented item + */ + public java.lang.Long getLong() { + return getValue(org.jooq.test.sqlserver.generatedclasses.tables.T_639NumbersTable.T_639_NUMBERS_TABLE.LONG); + } + + /** + * An uncommented item + */ + public void setByteDecimal(java.lang.Byte value) { + setValue(org.jooq.test.sqlserver.generatedclasses.tables.T_639NumbersTable.T_639_NUMBERS_TABLE.BYTE_DECIMAL, value); + } + + /** + * An uncommented item + */ + public java.lang.Byte getByteDecimal() { + return getValue(org.jooq.test.sqlserver.generatedclasses.tables.T_639NumbersTable.T_639_NUMBERS_TABLE.BYTE_DECIMAL); + } + + /** + * An uncommented item + */ + public void setShortDecimal(java.lang.Short value) { + setValue(org.jooq.test.sqlserver.generatedclasses.tables.T_639NumbersTable.T_639_NUMBERS_TABLE.SHORT_DECIMAL, value); + } + + /** + * An uncommented item + */ + public java.lang.Short getShortDecimal() { + return getValue(org.jooq.test.sqlserver.generatedclasses.tables.T_639NumbersTable.T_639_NUMBERS_TABLE.SHORT_DECIMAL); + } + + /** + * An uncommented item + */ + public void setIntegerDecimal(java.lang.Integer value) { + setValue(org.jooq.test.sqlserver.generatedclasses.tables.T_639NumbersTable.T_639_NUMBERS_TABLE.INTEGER_DECIMAL, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getIntegerDecimal() { + return getValue(org.jooq.test.sqlserver.generatedclasses.tables.T_639NumbersTable.T_639_NUMBERS_TABLE.INTEGER_DECIMAL); + } + + /** + * An uncommented item + */ + public void setLongDecimal(java.lang.Long value) { + setValue(org.jooq.test.sqlserver.generatedclasses.tables.T_639NumbersTable.T_639_NUMBERS_TABLE.LONG_DECIMAL, value); + } + + /** + * An uncommented item + */ + public java.lang.Long getLongDecimal() { + return getValue(org.jooq.test.sqlserver.generatedclasses.tables.T_639NumbersTable.T_639_NUMBERS_TABLE.LONG_DECIMAL); + } + + /** + * An uncommented item + */ + public void setBigInteger(java.math.BigInteger value) { + setValue(org.jooq.test.sqlserver.generatedclasses.tables.T_639NumbersTable.T_639_NUMBERS_TABLE.BIG_INTEGER, value); + } + + /** + * An uncommented item + */ + public java.math.BigInteger getBigInteger() { + return getValue(org.jooq.test.sqlserver.generatedclasses.tables.T_639NumbersTable.T_639_NUMBERS_TABLE.BIG_INTEGER); + } + + /** + * An uncommented item + */ + public void setBigDecimal(java.math.BigDecimal value) { + setValue(org.jooq.test.sqlserver.generatedclasses.tables.T_639NumbersTable.T_639_NUMBERS_TABLE.BIG_DECIMAL, value); + } + + /** + * An uncommented item + */ + public java.math.BigDecimal getBigDecimal() { + return getValue(org.jooq.test.sqlserver.generatedclasses.tables.T_639NumbersTable.T_639_NUMBERS_TABLE.BIG_DECIMAL); + } + + /** + * An uncommented item + */ + public void setFloat(java.lang.Float value) { + setValue(org.jooq.test.sqlserver.generatedclasses.tables.T_639NumbersTable.T_639_NUMBERS_TABLE.FLOAT, value); + } + + /** + * An uncommented item + */ + public java.lang.Float getFloat() { + return getValue(org.jooq.test.sqlserver.generatedclasses.tables.T_639NumbersTable.T_639_NUMBERS_TABLE.FLOAT); + } + + /** + * An uncommented item + */ + public void setDouble(java.lang.Double value) { + setValue(org.jooq.test.sqlserver.generatedclasses.tables.T_639NumbersTable.T_639_NUMBERS_TABLE.DOUBLE, value); + } + + /** + * An uncommented item + */ + public java.lang.Double getDouble() { + return getValue(org.jooq.test.sqlserver.generatedclasses.tables.T_639NumbersTable.T_639_NUMBERS_TABLE.DOUBLE); + } + + /** + * Create a detached T_639NumbersTableRecord + */ + public T_639NumbersTableRecord() { + super(org.jooq.test.sqlserver.generatedclasses.tables.T_639NumbersTable.T_639_NUMBERS_TABLE); + } +} diff --git a/jOOQ-test/src/org/jooq/test/sqlserver/generatedclasses/tables/records/T_658RefRecord.java b/jOOQ-test/src/org/jooq/test/sqlserver/generatedclasses/tables/records/T_658RefRecord.java new file mode 100644 index 00000000000..b7a817a973c --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/sqlserver/generatedclasses/tables/records/T_658RefRecord.java @@ -0,0 +1,175 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.sqlserver.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + */ +public class T_658RefRecord extends org.jooq.impl.TableRecordImpl { + + private static final long serialVersionUID = -1387315349; + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_t_658_11
+	 * FOREIGN KEY (ref_11)
+	 * REFERENCES dbo.t_658_11 (id)
+	 * 
+ */ + public void setRef_11(org.jooq.test.sqlserver.generatedclasses.enums.T_658_11 value) { + setValue(org.jooq.test.sqlserver.generatedclasses.tables.T_658Ref.T_658_REF.REF_11, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_t_658_11
+	 * FOREIGN KEY (ref_11)
+	 * REFERENCES dbo.t_658_11 (id)
+	 * 
+ */ + public org.jooq.test.sqlserver.generatedclasses.enums.T_658_11 getRef_11() { + return getValue(org.jooq.test.sqlserver.generatedclasses.tables.T_658Ref.T_658_REF.REF_11); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_t_658_21
+	 * FOREIGN KEY (ref_21)
+	 * REFERENCES dbo.t_658_21 (id)
+	 * 
+ */ + public void setRef_21(org.jooq.test.sqlserver.generatedclasses.enums.T_658_21 value) { + setValue(org.jooq.test.sqlserver.generatedclasses.tables.T_658Ref.T_658_REF.REF_21, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_t_658_21
+	 * FOREIGN KEY (ref_21)
+	 * REFERENCES dbo.t_658_21 (id)
+	 * 
+ */ + public org.jooq.test.sqlserver.generatedclasses.enums.T_658_21 getRef_21() { + return getValue(org.jooq.test.sqlserver.generatedclasses.tables.T_658Ref.T_658_REF.REF_21); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_t_658_31
+	 * FOREIGN KEY (ref_31)
+	 * REFERENCES dbo.t_658_31 (id)
+	 * 
+ */ + public void setRef_31(org.jooq.test.sqlserver.generatedclasses.enums.T_658_31 value) { + setValue(org.jooq.test.sqlserver.generatedclasses.tables.T_658Ref.T_658_REF.REF_31, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_t_658_31
+	 * FOREIGN KEY (ref_31)
+	 * REFERENCES dbo.t_658_31 (id)
+	 * 
+ */ + public org.jooq.test.sqlserver.generatedclasses.enums.T_658_31 getRef_31() { + return getValue(org.jooq.test.sqlserver.generatedclasses.tables.T_658Ref.T_658_REF.REF_31); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_t_658_12
+	 * FOREIGN KEY (ref_12)
+	 * REFERENCES dbo.t_658_12 (id)
+	 * 
+ */ + public void setRef_12(org.jooq.test.sqlserver.generatedclasses.enums.T_658_12 value) { + setValue(org.jooq.test.sqlserver.generatedclasses.tables.T_658Ref.T_658_REF.REF_12, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_t_658_12
+	 * FOREIGN KEY (ref_12)
+	 * REFERENCES dbo.t_658_12 (id)
+	 * 
+ */ + public org.jooq.test.sqlserver.generatedclasses.enums.T_658_12 getRef_12() { + return getValue(org.jooq.test.sqlserver.generatedclasses.tables.T_658Ref.T_658_REF.REF_12); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_t_658_22
+	 * FOREIGN KEY (ref_22)
+	 * REFERENCES dbo.t_658_22 (id)
+	 * 
+ */ + public void setRef_22(org.jooq.test.sqlserver.generatedclasses.enums.T_658_22 value) { + setValue(org.jooq.test.sqlserver.generatedclasses.tables.T_658Ref.T_658_REF.REF_22, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_t_658_22
+	 * FOREIGN KEY (ref_22)
+	 * REFERENCES dbo.t_658_22 (id)
+	 * 
+ */ + public org.jooq.test.sqlserver.generatedclasses.enums.T_658_22 getRef_22() { + return getValue(org.jooq.test.sqlserver.generatedclasses.tables.T_658Ref.T_658_REF.REF_22); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_t_658_32
+	 * FOREIGN KEY (ref_32)
+	 * REFERENCES dbo.t_658_32 (id)
+	 * 
+ */ + public void setRef_32(org.jooq.test.sqlserver.generatedclasses.enums.T_658_32 value) { + setValue(org.jooq.test.sqlserver.generatedclasses.tables.T_658Ref.T_658_REF.REF_32, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_t_658_32
+	 * FOREIGN KEY (ref_32)
+	 * REFERENCES dbo.t_658_32 (id)
+	 * 
+ */ + public org.jooq.test.sqlserver.generatedclasses.enums.T_658_32 getRef_32() { + return getValue(org.jooq.test.sqlserver.generatedclasses.tables.T_658Ref.T_658_REF.REF_32); + } + + /** + * Create a detached T_658RefRecord + */ + public T_658RefRecord() { + super(org.jooq.test.sqlserver.generatedclasses.tables.T_658Ref.T_658_REF); + } +} diff --git a/jOOQ-test/src/org/jooq/test/sqlserver/generatedclasses/tables/records/T_725LobTestRecord.java b/jOOQ-test/src/org/jooq/test/sqlserver/generatedclasses/tables/records/T_725LobTestRecord.java new file mode 100644 index 00000000000..ee03ad36a78 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/sqlserver/generatedclasses/tables/records/T_725LobTestRecord.java @@ -0,0 +1,51 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.sqlserver.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + */ +public class T_725LobTestRecord extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = 1976395888; + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setId(java.lang.Integer value) { + setValue(org.jooq.test.sqlserver.generatedclasses.tables.T_725LobTest.T_725_LOB_TEST.ID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.lang.Integer getId() { + return getValue(org.jooq.test.sqlserver.generatedclasses.tables.T_725LobTest.T_725_LOB_TEST.ID); + } + + /** + * An uncommented item + */ + public void setLob(byte[] value) { + setValue(org.jooq.test.sqlserver.generatedclasses.tables.T_725LobTest.T_725_LOB_TEST.LOB, value); + } + + /** + * An uncommented item + */ + public byte[] getLob() { + return getValue(org.jooq.test.sqlserver.generatedclasses.tables.T_725LobTest.T_725_LOB_TEST.LOB); + } + + /** + * Create a detached T_725LobTestRecord + */ + public T_725LobTestRecord() { + super(org.jooq.test.sqlserver.generatedclasses.tables.T_725LobTest.T_725_LOB_TEST); + } +} diff --git a/jOOQ-test/src/org/jooq/test/sqlserver/generatedclasses/tables/records/T_785Record.java b/jOOQ-test/src/org/jooq/test/sqlserver/generatedclasses/tables/records/T_785Record.java new file mode 100644 index 00000000000..82ac848f644 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/sqlserver/generatedclasses/tables/records/T_785Record.java @@ -0,0 +1,61 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.sqlserver.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + */ +public class T_785Record extends org.jooq.impl.TableRecordImpl { + + private static final long serialVersionUID = 1484825368; + + /** + * An uncommented item + */ + public void setId(java.lang.Integer value) { + setValue(org.jooq.test.sqlserver.generatedclasses.tables.T_785.T_785.ID, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getId() { + return getValue(org.jooq.test.sqlserver.generatedclasses.tables.T_785.T_785.ID); + } + + /** + * An uncommented item + */ + public void setName(java.lang.String value) { + setValue(org.jooq.test.sqlserver.generatedclasses.tables.T_785.T_785.NAME, value); + } + + /** + * An uncommented item + */ + public java.lang.String getName() { + return getValue(org.jooq.test.sqlserver.generatedclasses.tables.T_785.T_785.NAME); + } + + /** + * An uncommented item + */ + public void setValue(java.lang.String value) { + setValue(org.jooq.test.sqlserver.generatedclasses.tables.T_785.T_785.VALUE, value); + } + + /** + * An uncommented item + */ + public java.lang.String getValue() { + return getValue(org.jooq.test.sqlserver.generatedclasses.tables.T_785.T_785.VALUE); + } + + /** + * Create a detached T_785Record + */ + public T_785Record() { + super(org.jooq.test.sqlserver.generatedclasses.tables.T_785.T_785); + } +} diff --git a/jOOQ-test/src/org/jooq/test/sqlserver/generatedclasses/tables/records/VAuthorRecord.java b/jOOQ-test/src/org/jooq/test/sqlserver/generatedclasses/tables/records/VAuthorRecord.java new file mode 100644 index 00000000000..3268af3be24 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/sqlserver/generatedclasses/tables/records/VAuthorRecord.java @@ -0,0 +1,103 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.sqlserver.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + */ +public class VAuthorRecord extends org.jooq.impl.TableRecordImpl { + + private static final long serialVersionUID = 240036565; + + /** + * An uncommented item + */ + public void setId(java.lang.Integer value) { + setValue(org.jooq.test.sqlserver.generatedclasses.tables.VAuthor.V_AUTHOR.ID, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getId() { + return getValue(org.jooq.test.sqlserver.generatedclasses.tables.VAuthor.V_AUTHOR.ID); + } + + /** + * An uncommented item + */ + public void setFirstName(java.lang.String value) { + setValue(org.jooq.test.sqlserver.generatedclasses.tables.VAuthor.V_AUTHOR.FIRST_NAME, value); + } + + /** + * An uncommented item + */ + public java.lang.String getFirstName() { + return getValue(org.jooq.test.sqlserver.generatedclasses.tables.VAuthor.V_AUTHOR.FIRST_NAME); + } + + /** + * An uncommented item + */ + public void setLastName(java.lang.String value) { + setValue(org.jooq.test.sqlserver.generatedclasses.tables.VAuthor.V_AUTHOR.LAST_NAME, value); + } + + /** + * An uncommented item + */ + public java.lang.String getLastName() { + return getValue(org.jooq.test.sqlserver.generatedclasses.tables.VAuthor.V_AUTHOR.LAST_NAME); + } + + /** + * An uncommented item + */ + public void setDateOfBirth(java.sql.Date value) { + setValue(org.jooq.test.sqlserver.generatedclasses.tables.VAuthor.V_AUTHOR.DATE_OF_BIRTH, value); + } + + /** + * An uncommented item + */ + public java.sql.Date getDateOfBirth() { + return getValue(org.jooq.test.sqlserver.generatedclasses.tables.VAuthor.V_AUTHOR.DATE_OF_BIRTH); + } + + /** + * An uncommented item + */ + public void setYearOfBirth(java.lang.Integer value) { + setValue(org.jooq.test.sqlserver.generatedclasses.tables.VAuthor.V_AUTHOR.YEAR_OF_BIRTH, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getYearOfBirth() { + return getValue(org.jooq.test.sqlserver.generatedclasses.tables.VAuthor.V_AUTHOR.YEAR_OF_BIRTH); + } + + /** + * An uncommented item + */ + public void setAddress(java.lang.String value) { + setValue(org.jooq.test.sqlserver.generatedclasses.tables.VAuthor.V_AUTHOR.ADDRESS, value); + } + + /** + * An uncommented item + */ + public java.lang.String getAddress() { + return getValue(org.jooq.test.sqlserver.generatedclasses.tables.VAuthor.V_AUTHOR.ADDRESS); + } + + /** + * Create a detached VAuthorRecord + */ + public VAuthorRecord() { + super(org.jooq.test.sqlserver.generatedclasses.tables.VAuthor.V_AUTHOR); + } +} diff --git a/jOOQ-test/src/org/jooq/test/sqlserver/generatedclasses/tables/records/VBookRecord.java b/jOOQ-test/src/org/jooq/test/sqlserver/generatedclasses/tables/records/VBookRecord.java new file mode 100644 index 00000000000..09e4168850d --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/sqlserver/generatedclasses/tables/records/VBookRecord.java @@ -0,0 +1,145 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.sqlserver.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + */ +public class VBookRecord extends org.jooq.impl.TableRecordImpl { + + private static final long serialVersionUID = 1730950671; + + /** + * An uncommented item + */ + public void setId(java.lang.Integer value) { + setValue(org.jooq.test.sqlserver.generatedclasses.tables.VBook.V_BOOK.ID, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getId() { + return getValue(org.jooq.test.sqlserver.generatedclasses.tables.VBook.V_BOOK.ID); + } + + /** + * An uncommented item + */ + public void setAuthorId(java.lang.Integer value) { + setValue(org.jooq.test.sqlserver.generatedclasses.tables.VBook.V_BOOK.AUTHOR_ID, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getAuthorId() { + return getValue(org.jooq.test.sqlserver.generatedclasses.tables.VBook.V_BOOK.AUTHOR_ID); + } + + /** + * An uncommented item + */ + public void setCoAuthorId(java.lang.Integer value) { + setValue(org.jooq.test.sqlserver.generatedclasses.tables.VBook.V_BOOK.CO_AUTHOR_ID, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getCoAuthorId() { + return getValue(org.jooq.test.sqlserver.generatedclasses.tables.VBook.V_BOOK.CO_AUTHOR_ID); + } + + /** + * An uncommented item + */ + public void setDetailsId(java.lang.Integer value) { + setValue(org.jooq.test.sqlserver.generatedclasses.tables.VBook.V_BOOK.DETAILS_ID, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getDetailsId() { + return getValue(org.jooq.test.sqlserver.generatedclasses.tables.VBook.V_BOOK.DETAILS_ID); + } + + /** + * An uncommented item + */ + public void setTitle(java.lang.String value) { + setValue(org.jooq.test.sqlserver.generatedclasses.tables.VBook.V_BOOK.TITLE, value); + } + + /** + * An uncommented item + */ + public java.lang.String getTitle() { + return getValue(org.jooq.test.sqlserver.generatedclasses.tables.VBook.V_BOOK.TITLE); + } + + /** + * An uncommented item + */ + public void setPublishedIn(java.lang.Integer value) { + setValue(org.jooq.test.sqlserver.generatedclasses.tables.VBook.V_BOOK.PUBLISHED_IN, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getPublishedIn() { + return getValue(org.jooq.test.sqlserver.generatedclasses.tables.VBook.V_BOOK.PUBLISHED_IN); + } + + /** + * An uncommented item + */ + public void setLanguageId(java.lang.Integer value) { + setValue(org.jooq.test.sqlserver.generatedclasses.tables.VBook.V_BOOK.LANGUAGE_ID, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getLanguageId() { + return getValue(org.jooq.test.sqlserver.generatedclasses.tables.VBook.V_BOOK.LANGUAGE_ID); + } + + /** + * An uncommented item + */ + public void setContentText(java.lang.String value) { + setValue(org.jooq.test.sqlserver.generatedclasses.tables.VBook.V_BOOK.CONTENT_TEXT, value); + } + + /** + * An uncommented item + */ + public java.lang.String getContentText() { + return getValue(org.jooq.test.sqlserver.generatedclasses.tables.VBook.V_BOOK.CONTENT_TEXT); + } + + /** + * An uncommented item + */ + public void setContentPdf(byte[] value) { + setValue(org.jooq.test.sqlserver.generatedclasses.tables.VBook.V_BOOK.CONTENT_PDF, value); + } + + /** + * An uncommented item + */ + public byte[] getContentPdf() { + return getValue(org.jooq.test.sqlserver.generatedclasses.tables.VBook.V_BOOK.CONTENT_PDF); + } + + /** + * Create a detached VBookRecord + */ + public VBookRecord() { + super(org.jooq.test.sqlserver.generatedclasses.tables.VBook.V_BOOK); + } +} diff --git a/jOOQ-test/src/org/jooq/test/sqlserver/generatedclasses/tables/records/VLibraryRecord.java b/jOOQ-test/src/org/jooq/test/sqlserver/generatedclasses/tables/records/VLibraryRecord.java new file mode 100644 index 00000000000..c7520d463ce --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/sqlserver/generatedclasses/tables/records/VLibraryRecord.java @@ -0,0 +1,47 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.sqlserver.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + */ +public class VLibraryRecord extends org.jooq.impl.TableRecordImpl { + + private static final long serialVersionUID = -487027325; + + /** + * An uncommented item + */ + public void setAuthor(java.lang.String value) { + setValue(org.jooq.test.sqlserver.generatedclasses.tables.VLibrary.V_LIBRARY.AUTHOR, value); + } + + /** + * An uncommented item + */ + public java.lang.String getAuthor() { + return getValue(org.jooq.test.sqlserver.generatedclasses.tables.VLibrary.V_LIBRARY.AUTHOR); + } + + /** + * An uncommented item + */ + public void setTitle(java.lang.String value) { + setValue(org.jooq.test.sqlserver.generatedclasses.tables.VLibrary.V_LIBRARY.TITLE, value); + } + + /** + * An uncommented item + */ + public java.lang.String getTitle() { + return getValue(org.jooq.test.sqlserver.generatedclasses.tables.VLibrary.V_LIBRARY.TITLE); + } + + /** + * Create a detached VLibraryRecord + */ + public VLibraryRecord() { + super(org.jooq.test.sqlserver.generatedclasses.tables.VLibrary.V_LIBRARY); + } +} diff --git a/jOOQ-test/src/org/jooq/test/sqlserver/generatedclasses/tables/records/XTestCase_64_69Record.java b/jOOQ-test/src/org/jooq/test/sqlserver/generatedclasses/tables/records/XTestCase_64_69Record.java new file mode 100644 index 00000000000..bf9c4e162b5 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/sqlserver/generatedclasses/tables/records/XTestCase_64_69Record.java @@ -0,0 +1,91 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.sqlserver.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + */ +public class XTestCase_64_69Record extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = -74958384; + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setId(java.lang.Integer value) { + setValue(org.jooq.test.sqlserver.generatedclasses.tables.XTestCase_64_69.X_TEST_CASE_64_69.ID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.lang.Integer getId() { + return getValue(org.jooq.test.sqlserver.generatedclasses.tables.XTestCase_64_69.X_TEST_CASE_64_69.ID); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.util.List fetchXTestCase_71List() { + return create() + .selectFrom(org.jooq.test.sqlserver.generatedclasses.tables.XTestCase_71.X_TEST_CASE_71) + .where(org.jooq.test.sqlserver.generatedclasses.tables.XTestCase_71.X_TEST_CASE_71.TEST_CASE_64_69_ID.equal(getValue(org.jooq.test.sqlserver.generatedclasses.tables.XTestCase_64_69.X_TEST_CASE_64_69.ID))) + .fetch(); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_x_test_case_64_69a
+	 * FOREIGN KEY (unused_id)
+	 * REFERENCES dbo.x_unused (id)
+	 * 
+ */ + public void setUnusedId(java.lang.Integer value) { + setValue(org.jooq.test.sqlserver.generatedclasses.tables.XTestCase_64_69.X_TEST_CASE_64_69.UNUSED_ID, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_x_test_case_64_69a
+	 * FOREIGN KEY (unused_id)
+	 * REFERENCES dbo.x_unused (id)
+	 * 
+ */ + public java.lang.Integer getUnusedId() { + return getValue(org.jooq.test.sqlserver.generatedclasses.tables.XTestCase_64_69.X_TEST_CASE_64_69.UNUSED_ID); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_x_test_case_64_69a
+	 * FOREIGN KEY (unused_id)
+	 * REFERENCES dbo.x_unused (id)
+	 * 
+ */ + public org.jooq.test.sqlserver.generatedclasses.tables.records.XUnusedRecord fetchXUnused() { + return create() + .selectFrom(org.jooq.test.sqlserver.generatedclasses.tables.XUnused.X_UNUSED) + .where(org.jooq.test.sqlserver.generatedclasses.tables.XUnused.X_UNUSED.ID.equal(getValue(org.jooq.test.sqlserver.generatedclasses.tables.XTestCase_64_69.X_TEST_CASE_64_69.UNUSED_ID))) + .fetchOne(); + } + + /** + * Create a detached XTestCase_64_69Record + */ + public XTestCase_64_69Record() { + super(org.jooq.test.sqlserver.generatedclasses.tables.XTestCase_64_69.X_TEST_CASE_64_69); + } +} diff --git a/jOOQ-test/src/org/jooq/test/sqlserver/generatedclasses/tables/records/XTestCase_71Record.java b/jOOQ-test/src/org/jooq/test/sqlserver/generatedclasses/tables/records/XTestCase_71Record.java new file mode 100644 index 00000000000..98c40f4fc4e --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/sqlserver/generatedclasses/tables/records/XTestCase_71Record.java @@ -0,0 +1,79 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.sqlserver.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + */ +public class XTestCase_71Record extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = 2142328536; + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setId(java.lang.Integer value) { + setValue(org.jooq.test.sqlserver.generatedclasses.tables.XTestCase_71.X_TEST_CASE_71.ID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.lang.Integer getId() { + return getValue(org.jooq.test.sqlserver.generatedclasses.tables.XTestCase_71.X_TEST_CASE_71.ID); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_x_test_case_71
+	 * FOREIGN KEY (test_case_64_69_id)
+	 * REFERENCES dbo.x_test_case_64_69 (id)
+	 * 
+ */ + public void setTestCase_64_69Id(java.lang.Integer value) { + setValue(org.jooq.test.sqlserver.generatedclasses.tables.XTestCase_71.X_TEST_CASE_71.TEST_CASE_64_69_ID, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_x_test_case_71
+	 * FOREIGN KEY (test_case_64_69_id)
+	 * REFERENCES dbo.x_test_case_64_69 (id)
+	 * 
+ */ + public java.lang.Integer getTestCase_64_69Id() { + return getValue(org.jooq.test.sqlserver.generatedclasses.tables.XTestCase_71.X_TEST_CASE_71.TEST_CASE_64_69_ID); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_x_test_case_71
+	 * FOREIGN KEY (test_case_64_69_id)
+	 * REFERENCES dbo.x_test_case_64_69 (id)
+	 * 
+ */ + public org.jooq.test.sqlserver.generatedclasses.tables.records.XTestCase_64_69Record fetchXTestCase_64_69() { + return create() + .selectFrom(org.jooq.test.sqlserver.generatedclasses.tables.XTestCase_64_69.X_TEST_CASE_64_69) + .where(org.jooq.test.sqlserver.generatedclasses.tables.XTestCase_64_69.X_TEST_CASE_64_69.ID.equal(getValue(org.jooq.test.sqlserver.generatedclasses.tables.XTestCase_71.X_TEST_CASE_71.TEST_CASE_64_69_ID))) + .fetchOne(); + } + + /** + * Create a detached XTestCase_71Record + */ + public XTestCase_71Record() { + super(org.jooq.test.sqlserver.generatedclasses.tables.XTestCase_71.X_TEST_CASE_71); + } +} diff --git a/jOOQ-test/src/org/jooq/test/sqlserver/generatedclasses/tables/records/XTestCase_85Record.java b/jOOQ-test/src/org/jooq/test/sqlserver/generatedclasses/tables/records/XTestCase_85Record.java new file mode 100644 index 00000000000..30cad90791e --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/sqlserver/generatedclasses/tables/records/XTestCase_85Record.java @@ -0,0 +1,106 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.sqlserver.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + */ +public class XTestCase_85Record extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = 1057391854; + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setId(java.lang.Integer value) { + setValue(org.jooq.test.sqlserver.generatedclasses.tables.XTestCase_85.X_TEST_CASE_85.ID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.lang.Integer getId() { + return getValue(org.jooq.test.sqlserver.generatedclasses.tables.XTestCase_85.X_TEST_CASE_85.ID); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_x_test_case_85
+	 * FOREIGN KEY (x_unused_id, x_unused_name)
+	 * REFERENCES dbo.x_unused (id, name)
+	 * 
+ */ + public void setXUnusedId(java.lang.Integer value) { + setValue(org.jooq.test.sqlserver.generatedclasses.tables.XTestCase_85.X_TEST_CASE_85.X_UNUSED_ID, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_x_test_case_85
+	 * FOREIGN KEY (x_unused_id, x_unused_name)
+	 * REFERENCES dbo.x_unused (id, name)
+	 * 
+ */ + public java.lang.Integer getXUnusedId() { + return getValue(org.jooq.test.sqlserver.generatedclasses.tables.XTestCase_85.X_TEST_CASE_85.X_UNUSED_ID); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_x_test_case_85
+	 * FOREIGN KEY (x_unused_id, x_unused_name)
+	 * REFERENCES dbo.x_unused (id, name)
+	 * 
+ */ + public org.jooq.test.sqlserver.generatedclasses.tables.records.XUnusedRecord fetchXUnused() { + return create() + .selectFrom(org.jooq.test.sqlserver.generatedclasses.tables.XUnused.X_UNUSED) + .where(org.jooq.test.sqlserver.generatedclasses.tables.XUnused.X_UNUSED.ID.equal(getValue(org.jooq.test.sqlserver.generatedclasses.tables.XTestCase_85.X_TEST_CASE_85.X_UNUSED_ID))) + .and(org.jooq.test.sqlserver.generatedclasses.tables.XUnused.X_UNUSED.NAME.equal(getValue(org.jooq.test.sqlserver.generatedclasses.tables.XTestCase_85.X_TEST_CASE_85.X_UNUSED_NAME))) + .fetchOne(); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_x_test_case_85
+	 * FOREIGN KEY (x_unused_id, x_unused_name)
+	 * REFERENCES dbo.x_unused (id, name)
+	 * 
+ */ + public void setXUnusedName(java.lang.String value) { + setValue(org.jooq.test.sqlserver.generatedclasses.tables.XTestCase_85.X_TEST_CASE_85.X_UNUSED_NAME, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_x_test_case_85
+	 * FOREIGN KEY (x_unused_id, x_unused_name)
+	 * REFERENCES dbo.x_unused (id, name)
+	 * 
+ */ + public java.lang.String getXUnusedName() { + return getValue(org.jooq.test.sqlserver.generatedclasses.tables.XTestCase_85.X_TEST_CASE_85.X_UNUSED_NAME); + } + + /** + * Create a detached XTestCase_85Record + */ + public XTestCase_85Record() { + super(org.jooq.test.sqlserver.generatedclasses.tables.XTestCase_85.X_TEST_CASE_85); + } +} diff --git a/jOOQ-test/src/org/jooq/test/sqlserver/generatedclasses/tables/records/XUnusedRecord.java b/jOOQ-test/src/org/jooq/test/sqlserver/generatedclasses/tables/records/XUnusedRecord.java new file mode 100644 index 00000000000..3b536155e81 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/sqlserver/generatedclasses/tables/records/XUnusedRecord.java @@ -0,0 +1,302 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.sqlserver.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + */ +public class XUnusedRecord extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = 1743235324; + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setId(java.lang.Integer value) { + setValue(org.jooq.test.sqlserver.generatedclasses.tables.XUnused.X_UNUSED.ID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.lang.Integer getId() { + return getValue(org.jooq.test.sqlserver.generatedclasses.tables.XUnused.X_UNUSED.ID); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.util.List fetchXTestCase_85List() { + return create() + .selectFrom(org.jooq.test.sqlserver.generatedclasses.tables.XTestCase_85.X_TEST_CASE_85) + .where(org.jooq.test.sqlserver.generatedclasses.tables.XTestCase_85.X_TEST_CASE_85.X_UNUSED_ID.equal(getValue(org.jooq.test.sqlserver.generatedclasses.tables.XUnused.X_UNUSED.ID))) + .and(org.jooq.test.sqlserver.generatedclasses.tables.XTestCase_85.X_TEST_CASE_85.X_UNUSED_NAME.equal(getValue(org.jooq.test.sqlserver.generatedclasses.tables.XUnused.X_UNUSED.NAME))) + .fetch(); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.util.List fetchXUnusedList() { + return create() + .selectFrom(org.jooq.test.sqlserver.generatedclasses.tables.XUnused.X_UNUSED) + .where(org.jooq.test.sqlserver.generatedclasses.tables.XUnused.X_UNUSED.ID_REF.equal(getValue(org.jooq.test.sqlserver.generatedclasses.tables.XUnused.X_UNUSED.ID))) + .and(org.jooq.test.sqlserver.generatedclasses.tables.XUnused.X_UNUSED.NAME_REF.equal(getValue(org.jooq.test.sqlserver.generatedclasses.tables.XUnused.X_UNUSED.NAME))) + .fetch(); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.util.List fetchXTestCase_64_69List() { + return create() + .selectFrom(org.jooq.test.sqlserver.generatedclasses.tables.XTestCase_64_69.X_TEST_CASE_64_69) + .where(org.jooq.test.sqlserver.generatedclasses.tables.XTestCase_64_69.X_TEST_CASE_64_69.UNUSED_ID.equal(getValue(org.jooq.test.sqlserver.generatedclasses.tables.XUnused.X_UNUSED.ID))) + .fetch(); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setName(java.lang.String value) { + setValue(org.jooq.test.sqlserver.generatedclasses.tables.XUnused.X_UNUSED.NAME, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.lang.String getName() { + return getValue(org.jooq.test.sqlserver.generatedclasses.tables.XUnused.X_UNUSED.NAME); + } + + /** + * An uncommented item + */ + public void setBigInteger(java.math.BigInteger value) { + setValue(org.jooq.test.sqlserver.generatedclasses.tables.XUnused.X_UNUSED.BIG_INTEGER, value); + } + + /** + * An uncommented item + */ + public java.math.BigInteger getBigInteger() { + return getValue(org.jooq.test.sqlserver.generatedclasses.tables.XUnused.X_UNUSED.BIG_INTEGER); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_x_unused_self
+	 * FOREIGN KEY (id_ref, name_ref)
+	 * REFERENCES dbo.x_unused (id, name)
+	 * 
+ */ + public void setIdRef(java.lang.Integer value) { + setValue(org.jooq.test.sqlserver.generatedclasses.tables.XUnused.X_UNUSED.ID_REF, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_x_unused_self
+	 * FOREIGN KEY (id_ref, name_ref)
+	 * REFERENCES dbo.x_unused (id, name)
+	 * 
+ */ + public java.lang.Integer getIdRef() { + return getValue(org.jooq.test.sqlserver.generatedclasses.tables.XUnused.X_UNUSED.ID_REF); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_x_unused_self
+	 * FOREIGN KEY (id_ref, name_ref)
+	 * REFERENCES dbo.x_unused (id, name)
+	 * 
+ */ + public org.jooq.test.sqlserver.generatedclasses.tables.records.XUnusedRecord fetchXUnused() { + return create() + .selectFrom(org.jooq.test.sqlserver.generatedclasses.tables.XUnused.X_UNUSED) + .where(org.jooq.test.sqlserver.generatedclasses.tables.XUnused.X_UNUSED.ID.equal(getValue(org.jooq.test.sqlserver.generatedclasses.tables.XUnused.X_UNUSED.ID_REF))) + .and(org.jooq.test.sqlserver.generatedclasses.tables.XUnused.X_UNUSED.NAME.equal(getValue(org.jooq.test.sqlserver.generatedclasses.tables.XUnused.X_UNUSED.NAME_REF))) + .fetchOne(); + } + + /** + * An uncommented item + */ + public void setClass_(java.lang.Integer value) { + setValue(org.jooq.test.sqlserver.generatedclasses.tables.XUnused.X_UNUSED.CLASS, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getClass_() { + return getValue(org.jooq.test.sqlserver.generatedclasses.tables.XUnused.X_UNUSED.CLASS); + } + + /** + * An uncommented item + */ + public void setFields_(java.lang.Integer value) { + setValue(org.jooq.test.sqlserver.generatedclasses.tables.XUnused.X_UNUSED.FIELDS, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getFields_() { + return getValue(org.jooq.test.sqlserver.generatedclasses.tables.XUnused.X_UNUSED.FIELDS); + } + + /** + * An uncommented item + */ + public void setConfiguration_(java.lang.Integer value) { + setValue(org.jooq.test.sqlserver.generatedclasses.tables.XUnused.X_UNUSED.CONFIGURATION, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getConfiguration_() { + return getValue(org.jooq.test.sqlserver.generatedclasses.tables.XUnused.X_UNUSED.CONFIGURATION); + } + + /** + * An uncommented item + */ + public void setUDT(java.lang.Integer value) { + setValue(org.jooq.test.sqlserver.generatedclasses.tables.XUnused.X_UNUSED.U_D_T, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getUDT() { + return getValue(org.jooq.test.sqlserver.generatedclasses.tables.XUnused.X_UNUSED.U_D_T); + } + + /** + * An uncommented item + */ + public void setMetaData_(java.lang.Integer value) { + setValue(org.jooq.test.sqlserver.generatedclasses.tables.XUnused.X_UNUSED.META_DATA, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getMetaData_() { + return getValue(org.jooq.test.sqlserver.generatedclasses.tables.XUnused.X_UNUSED.META_DATA); + } + + /** + * An uncommented item + */ + public void setType0_(java.lang.Integer value) { + setValue(org.jooq.test.sqlserver.generatedclasses.tables.XUnused.X_UNUSED.TYPE0, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getType0_() { + return getValue(org.jooq.test.sqlserver.generatedclasses.tables.XUnused.X_UNUSED.TYPE0); + } + + /** + * An uncommented item + */ + public void setPrimaryKey(java.lang.Integer value) { + setValue(org.jooq.test.sqlserver.generatedclasses.tables.XUnused.X_UNUSED.PRIMARY_KEY, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getPrimaryKey() { + return getValue(org.jooq.test.sqlserver.generatedclasses.tables.XUnused.X_UNUSED.PRIMARY_KEY); + } + + /** + * An uncommented item + */ + public void setPrimarykey(java.lang.Integer value) { + setValue(org.jooq.test.sqlserver.generatedclasses.tables.XUnused.X_UNUSED.PRIMARYKEY, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getPrimarykey() { + return getValue(org.jooq.test.sqlserver.generatedclasses.tables.XUnused.X_UNUSED.PRIMARYKEY); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_x_unused_self
+	 * FOREIGN KEY (id_ref, name_ref)
+	 * REFERENCES dbo.x_unused (id, name)
+	 * 
+ */ + public void setNameRef(java.lang.String value) { + setValue(org.jooq.test.sqlserver.generatedclasses.tables.XUnused.X_UNUSED.NAME_REF, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT fk_x_unused_self
+	 * FOREIGN KEY (id_ref, name_ref)
+	 * REFERENCES dbo.x_unused (id, name)
+	 * 
+ */ + public java.lang.String getNameRef() { + return getValue(org.jooq.test.sqlserver.generatedclasses.tables.XUnused.X_UNUSED.NAME_REF); + } + + /** + * An uncommented item + */ + public void setField_737(java.math.BigDecimal value) { + setValue(org.jooq.test.sqlserver.generatedclasses.tables.XUnused.X_UNUSED.FIELD_737, value); + } + + /** + * An uncommented item + */ + public java.math.BigDecimal getField_737() { + return getValue(org.jooq.test.sqlserver.generatedclasses.tables.XUnused.X_UNUSED.FIELD_737); + } + + /** + * Create a detached XUnusedRecord + */ + public XUnusedRecord() { + super(org.jooq.test.sqlserver.generatedclasses.tables.XUnused.X_UNUSED); + } +} diff --git a/jOOQ-test/src/org/jooq/test/sqlserver/reset.sql b/jOOQ-test/src/org/jooq/test/sqlserver/reset.sql new file mode 100644 index 00000000000..8d618d0f000 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/sqlserver/reset.sql @@ -0,0 +1,56 @@ +DELETE FROM t_658_ref/ +DELETE FROM t_658_11/ +DELETE FROM t_658_21/ +DELETE FROM t_658_31/ +DELETE FROM t_658_12/ +DELETE FROM t_658_22/ +DELETE FROM t_658_32/ +DELETE FROM t_book_to_book_store/ +DELETE FROM t_book_store/ +DELETE FROM t_book/ +DELETE FROM t_author/ +DELETE FROM t_language/ +DELETE FROM t_booleans/ +DELETE FROM t_dates/ +DELETE FROM t_identity/ +DELETE FROM t_identity_pk/ + +INSERT INTO t_language (id, cd, description, description_english) VALUES (1, 'en', 'English', 'English')/ +INSERT INTO t_language (id, cd, description, description_english) VALUES (2, 'de', 'Deutsch', 'German')/ +INSERT INTO t_language (id, cd, description, description_english) VALUES (3, 'fr', 'Français', 'French')/ +INSERT INTO t_language (id, cd, description, description_english) VALUES (4, 'pt', null, null)/ +/ + +INSERT INTO t_658_11 VALUES ('A'), ('B'), ('C')/ +INSERT INTO t_658_21 VALUES (1), (2), (3)/ +INSERT INTO t_658_31 VALUES (1), (2), (3)/ +INSERT INTO t_658_12 VALUES ('A', 'A'), ('B', 'B'), ('C', 'C')/ +INSERT INTO t_658_22 VALUES (1, 1), (2, 2), (3, 3)/ +INSERT INTO t_658_32 VALUES (1, 1), (2, 2), (3, 3)/ +INSERT INTO t_658_ref VALUES ('A', 1, 1, 'B', 2, 2)/ + +INSERT INTO t_author (id, first_name, last_name, date_of_birth, year_of_birth, address) +VALUES (1, 'George', 'Orwell', '1903-06-25', 1903, null), + (2, 'Paulo', 'Coelho', '1947-08-24', 1947, null) +/ + +INSERT INTO t_book (id, author_id, co_author_id, details_id, title, published_in, language_id, content_text, content_pdf) +VALUES (1, 1, null, null, '1984', 1948, 1, 'To know and not to know, to be conscious of complete truthfulness while telling carefully constructed lies, to hold simultaneously two opinions which cancelled out, knowing them to be contradictory and believing in both of them, to use logic against logic, to repudiate morality while laying claim to it, to believe that democracy was impossible and that the Party was the guardian of democracy, to forget, whatever it was necessary to forget, then to draw it back into memory again at the moment when it was needed, and then promptly to forget it again, and above all, to apply the same process to the process itself -- that was the ultimate subtlety; consciously to induce unconsciousness, and then, once again, to become unconscious of the act of hypnosis you had just performed. Even to understand the word ''doublethink'' involved the use of doublethink..', null), + (2, 1, null, null, 'Animal Farm', 1945, 1, null, null), + (3, 2, null, null, 'O Alquimista', 1988, 4, null, null), + (4, 2, null, null, 'Brida', 1990, 2, null, null) +/ + +INSERT INTO t_book_store (name) +VALUES ('Orell Füssli'), + ('Ex Libris'), + ('Buchhandlung im Volkshaus') +/ + +INSERT INTO t_book_to_book_store VALUES ('Orell Füssli', 1, 10)/ +INSERT INTO t_book_to_book_store VALUES ('Orell Füssli', 2, 10)/ +INSERT INTO t_book_to_book_store VALUES ('Orell Füssli', 3, 10)/ +INSERT INTO t_book_to_book_store VALUES ('Ex Libris', 1, 1)/ +INSERT INTO t_book_to_book_store VALUES ('Ex Libris', 3, 2)/ +INSERT INTO t_book_to_book_store VALUES ('Buchhandlung im Volkshaus', 3, 1)/ + diff --git a/jOOQ-test/src/org/jooq/test/sybase/create.sql b/jOOQ-test/src/org/jooq/test/sybase/create.sql new file mode 100644 index 00000000000..71ddae3061c --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/sybase/create.sql @@ -0,0 +1,476 @@ +DROP VIEW IF EXISTS v_library/ +DROP VIEW IF EXISTS v_author/ +DROP VIEW IF EXISTS v_book/ + +DROP PROCEDURE IF EXISTS p_unused/ +DROP PROCEDURE IF EXISTS p_author_exists/ +DROP PROCEDURE IF EXISTS p_create_author/ +DROP PROCEDURE IF EXISTS p_create_author_by_name/ +DROP PROCEDURE IF EXISTS p391/ +DROP FUNCTION IF EXISTS f_author_exists/ +DROP FUNCTION IF EXISTS f_one/ +DROP FUNCTION IF EXISTS f_number/ +DROP FUNCTION IF EXISTS f317/ + +DROP TRIGGER IF EXISTS t_triggers_trigger/ + +DROP TABLE IF EXISTS t_dates/ +DROP TABLE IF EXISTS t_triggers/ +DROP TABLE IF EXISTS t_book_to_book_store/ +DROP TABLE IF EXISTS t_book_store/ +DROP TABLE IF EXISTS t_book/ +DROP TABLE IF EXISTS t_book_details/ +DROP TABLE IF EXISTS t_author/ +DROP TABLE IF EXISTS t_language/ +DROP TABLE IF EXISTS x_test_case_85/ +DROP TABLE IF EXISTS x_test_case_71/ +DROP TABLE IF EXISTS x_test_case_64_69/ +DROP TABLE IF EXISTS t_986_1/ +DROP TABLE IF EXISTS t_986_2/ +DROP TABLE IF EXISTS x_unused/ +DROP TABLE IF EXISTS t_639_numbers_table/ +DROP TABLE IF EXISTS t_658_ref/ +DROP TABLE IF EXISTS t_658_11/ +DROP TABLE IF EXISTS t_658_21/ +DROP TABLE IF EXISTS t_658_31/ +DROP TABLE IF EXISTS t_658_12/ +DROP TABLE IF EXISTS t_658_22/ +DROP TABLE IF EXISTS t_658_32/ +DROP TABLE IF EXISTS t_725_lob_test/ +DROP TABLE IF EXISTS t_785/ +DROP TABLE IF EXISTS t_booleans/ +DROP TABLE IF EXISTS t_identity/ +DROP TABLE IF EXISTS t_identity_pk/ + +CREATE TABLE t_identity_pk ( + id INTEGER NOT NULL IDENTITY, + val int, + + CONSTRAINT pk_t_identity_pk PRIMARY KEY (id) +) +/ + +CREATE TABLE t_identity ( + id INTEGER NOT NULL IDENTITY, + val int +) +/ + +CREATE TABLE t_dates ( + id int, + d date null, + t time null, + ts datetime null, + d_int int null, + ts_bigint bigint null, + + CONSTRAINT pk_t_dates PRIMARY KEY (id) +) +/ + +CREATE TABLE t_booleans ( + id int, + one_zero int null, + true_false_lc varchar(5) null, + true_false_uc varchar(5) null, + yes_no_lc varchar(3) null, + yes_no_uc varchar(3) null, + y_n_lc char(1) null, + y_n_uc char(1) null, + vc_boolean varchar(1) null, + c_boolean char(1) null, + n_boolean int null, + + CONSTRAINT pk_t_booleans PRIMARY KEY (id) +) +/ + +CREATE TABLE t_triggers ( + id_generated int IDENTITY not null, + id int null, + counter int null, + + CONSTRAINT pk_t_triggers PRIMARY KEY (id_generated) +) +/ + +CREATE TRIGGER t_triggers_trigger +AFTER INSERT +ON t_triggers +FOR EACH ROW +BEGIN + update t_triggers + set id = id_generated, + counter = id_generated * 2; +END +/ + +CREATE TABLE t_language ( + cd CHAR(2) NOT NULL, + description VARCHAR(50) NULL, + description_english VARCHAR(50) NULL, + id INTEGER NOT NULL, + + CONSTRAINT pk_t_language PRIMARY KEY (ID) +) +/ +COMMENT ON TABLE t_language IS 'An entity holding language master data' +/ +COMMENT ON COLUMN t_language.id IS 'The language ID' +/ +COMMENT ON COLUMN t_language.cd IS 'The language ISO code' +/ +COMMENT ON COLUMN t_language.description IS 'The language description' +/ +CREATE TABLE t_658_11 ( + id CHAR(3) NOT NULL, + + CONSTRAINT pk_t_658_11 PRIMARY KEY (id) +) +/ + +CREATE TABLE t_658_21 ( + id INT NOT NULL, + + CONSTRAINT pk_t_658_21 PRIMARY KEY (id) +) +/ + +CREATE TABLE t_658_31 ( + id BIGINT NOT NULL, + + CONSTRAINT pk_t_658_31 PRIMARY KEY (id) +) +/ + +CREATE TABLE t_658_12 ( + id CHAR(3) NOT NULL, + cd CHAR(3) NOT NULL, + + CONSTRAINT pk_t_658_12 PRIMARY KEY (id) +) +/ + +CREATE TABLE t_658_22 ( + id INT NOT NULL, + cd INT NOT NULL, + + CONSTRAINT pk_t_658_22 PRIMARY KEY (id) +) +/ + +CREATE TABLE t_658_32 ( + id BIGINT NOT NULL, + cd BIGINT NOT NULL, + + CONSTRAINT pk_t_658_32 PRIMARY KEY (id) +) +/ + +CREATE TABLE t_658_ref ( + ref_11 char(3), + ref_21 int, + ref_31 bigint, + ref_12 char(3), + ref_22 int, + ref_32 bigint, + + CONSTRAINT fk_t_658_11 FOREIGN KEY (ref_11) REFERENCES t_658_11(id), + CONSTRAINT fk_t_658_21 FOREIGN KEY (ref_21) REFERENCES t_658_21(id), + CONSTRAINT fk_t_658_31 FOREIGN KEY (ref_31) REFERENCES t_658_31(id), + CONSTRAINT fk_t_658_12 FOREIGN KEY (ref_12) REFERENCES t_658_12(id), + CONSTRAINT fk_t_658_22 FOREIGN KEY (ref_22) REFERENCES t_658_22(id), + CONSTRAINT fk_t_658_32 FOREIGN KEY (ref_32) REFERENCES t_658_32(id) +) +/ + +CREATE TABLE t_725_lob_test ( + ID int NOT NULL, + LOB LONG BINARY NULL, + + CONSTRAINT pk_t_725_lob_test PRIMARY KEY (id) +) +/ + +CREATE TABLE t_785 ( + ID int NULL, + NAME varchar(50) NULL, + VALUE varchar(50) NULL +) +/ + +CREATE TABLE t_author ( + ID INT NOT NULL, + FIRST_NAME VARCHAR(50) NULL, + LAST_NAME VARCHAR(50) NOT NULL, + DATE_OF_BIRTH DATE NULL, + YEAR_OF_BIRTH INT NULL, + ADDRESS VARCHAR(200) NULL, + + CONSTRAINT pk_t_author PRIMARY KEY (ID) +) +/ +COMMENT ON TABLE t_author IS 'An entity holding authors of books' +/ +COMMENT ON COLUMN t_author.id IS 'The author ID' +/ +COMMENT ON COLUMN t_author.first_name IS 'The author''s first name' +/ +COMMENT ON COLUMN t_author.last_name IS 'The author''s last name' +/ +COMMENT ON COLUMN t_author.date_of_birth IS 'The author''s date of birth' +/ +COMMENT ON COLUMN t_author.year_of_birth IS 'The author''s year of birth' +/ +COMMENT ON COLUMN t_author.address IS 'The author''s address' +/ + +CREATE TABLE t_book_details ( + ID INT NOT NULL, + + CONSTRAINT pk_t_book_details PRIMARY KEY (ID) +) +/ + +CREATE TABLE t_book ( + ID INT NOT NULL, + AUTHOR_ID INT NOT NULL, + CO_AUTHOR_ID INT NULL, + DETAILS_ID INT NULL, + TITLE VARCHAR(400) NOT NULL, + PUBLISHED_IN INT NOT NULL, + LANGUAGE_ID INT NOT NULL, + CONTENT_TEXT LONG VARCHAR NULL, + CONTENT_PDF LONG BINARY NULL, + + CONSTRAINT pk_t_book PRIMARY KEY (ID), + CONSTRAINT fk_t_book_author_id FOREIGN KEY (AUTHOR_ID) REFERENCES T_AUTHOR(ID), + CONSTRAINT fk_t_book_co_author_id FOREIGN KEY (CO_AUTHOR_ID) REFERENCES T_AUTHOR(ID), + CONSTRAINT fk_t_book_details_id FOREIGN KEY (DETAILS_ID) REFERENCES T_BOOK_DETAILS(ID), + CONSTRAINT fk_t_book_language_id FOREIGN KEY (LANGUAGE_ID) REFERENCES T_LANGUAGE(ID) +) +/ +COMMENT ON TABLE t_book IS 'An entity holding books' +/ +COMMENT ON COLUMN t_book.id IS 'The book ID' +/ +COMMENT ON COLUMN t_book.author_id IS 'The author ID in entity ''author''' +/ +COMMENT ON COLUMN t_book.title IS 'The book''s title' +/ +COMMENT ON COLUMN t_book.published_in IS 'The year the book was published in' +/ +COMMENT ON COLUMN t_book.language_id IS 'The language of the book' +/ +COMMENT ON COLUMN t_book.content_text IS 'Some textual content of the book' +/ +COMMENT ON COLUMN t_book.content_pdf IS 'Some binary content of the book' +/ + +CREATE TABLE t_book_store ( + name VARCHAR(400) NOT NULL, + + CONSTRAINT uk_t_book_store_name UNIQUE(name) +) +/ +COMMENT ON TABLE t_book_store IS 'A book store' +/ +COMMENT ON COLUMN t_book_store.name IS 'The books store name' +/ +CREATE TABLE t_book_to_book_store ( + book_store_name VARCHAR(400) NOT NULL, + book_id INTEGER NOT NULL, + stock INTEGER, + + CONSTRAINT pk_b2bs PRIMARY KEY(book_store_name, book_id), + CONSTRAINT fk_b2bs_bs_name FOREIGN KEY (book_store_name) + REFERENCES t_book_store (name) + ON DELETE CASCADE, + CONSTRAINT fk_b2bs_b_id FOREIGN KEY (book_id) + REFERENCES t_book (id) + ON DELETE CASCADE +) +COMMENT ON TABLE t_book_to_book_store IS 'An m:n relation between books and book stores' +/ +COMMENT ON COLUMN t_book_to_book_store.book_store_name IS 'The book store name' +/ +COMMENT ON COLUMN t_book_to_book_store.book_id IS 'The book ID' +/ +COMMENT ON COLUMN t_book_to_book_store.stock IS 'The number of books on stock' +/ +CREATE TABLE x_unused ( + ID INT NOT NULL, + NAME VARCHAR(10) NOT NULL, + BIG_INTEGER DECIMAL(25), + ID_REF INT, + NAME_REF VARCHAR(10), + CLASS INT, + FIELDS INT, + CONFIGURATION INT, + U_D_T INT, + META_DATA INT, + TYPE0 INT, + PRIMARY_KEY INT, + PRIMARYKEY INT, + "FIELD 737" DECIMAL(25, 2), + + CONSTRAINT pk_x_unused PRIMARY KEY(ID, NAME), + CONSTRAINT uk_x_unused_id UNIQUE(ID), + CONSTRAINT fk_x_unused_self FOREIGN KEY(ID_REF, NAME_REF) REFERENCES X_UNUSED(ID, NAME) +) +/ + +CREATE TABLE t_986_1 ( + REF INT, + + CONSTRAINT pk_986 PRIMARY KEY(REF), + CONSTRAINT uk_986 UNIQUE(REF), + CONSTRAINT fk_986 FOREIGN KEY(REF) REFERENCES X_UNUSED(ID) +) +/ + +CREATE TABLE t_986_2 ( + REF INT, + + CONSTRAINT pk_986 PRIMARY KEY(REF), + CONSTRAINT uk_986 UNIQUE(REF), + CONSTRAINT fk_986 FOREIGN KEY(REF) REFERENCES X_UNUSED(ID) +) +/ + +CREATE TABLE t_639_numbers_table ( + ID INT NOT NULL, + BYTE TINYINT NULL, + SHORT SMALLINT NULL, + "INTEGER" INT NULL, + "LONG" BIGINT NULL, + BYTE_DECIMAL DECIMAL(2, 0) NULL, + SHORT_DECIMAL DECIMAL(4, 0) NULL, + INTEGER_DECIMAL DECIMAL(9, 0) NULL, + LONG_DECIMAL DECIMAL(18, 0) NULL, + BIG_INTEGER DECIMAL(22, 0) NULL, + BIG_DECIMAL DECIMAL(22, 5) NULL, + "FLOAT" REAL NULL, + "DOUBLE" DOUBLE NULL, + + CONSTRAINT pk_t_639_numbers_table PRIMARY KEY(ID) +) +/ + +CREATE TABLE x_test_case_64_69 ( + ID INT NOT NULL, + UNUSED_ID INT, + + CONSTRAINT pk_x_test_case_64_69 PRIMARY KEY(ID), + CONSTRAINT fk_x_test_case_64_69a FOREIGN KEY(UNUSED_ID) REFERENCES X_UNUSED(ID), + CONSTRAINT fk_x_test_case_64_69b FOREIGN KEY(UNUSED_ID) REFERENCES X_UNUSED(ID) +) +/ + +CREATE TABLE x_test_case_71 ( + ID INT NOT NULL, + TEST_CASE_64_69_ID INT, + + CONSTRAINT pk_x_test_case_71 PRIMARY KEY(ID), + CONSTRAINT fk_x_test_case_71 FOREIGN KEY(TEST_CASE_64_69_ID) REFERENCES X_TEST_CASE_64_69(ID) +) +/ + +CREATE TABLE x_test_case_85 ( + id int NOT NULL, + x_unused_id int, + x_unused_name VARCHAR(10), + + CONSTRAINT pk_x_test_case_85 PRIMARY KEY(ID), + CONSTRAINT fk_x_test_case_85 FOREIGN KEY(x_unused_id, x_unused_name) REFERENCES X_UNUSED(id, name) +) +/ + +CREATE OR REPLACE VIEW V_LIBRARY (AUTHOR, TITLE) AS +SELECT A.FIRST_NAME || ' ' || A.LAST_NAME, B.TITLE +FROM T_AUTHOR A JOIN T_BOOK B ON B.AUTHOR_ID = A.ID; +/ + +CREATE VIEW v_author AS +SELECT * FROM t_author +/ + +CREATE VIEW v_book AS +SELECT * FROM t_book +/ + +CREATE PROCEDURE p_unused (IN in1 VARCHAR(50), OUT out1 INT, INOUT out2 INT) +BEGIN +END +/ + +CREATE PROCEDURE p_create_author_by_name (IN p_first_name VARCHAR(50), IN p_last_name VARCHAR(50)) +BEGIN + INSERT INTO t_author (id, first_name, last_name) + VALUES ((select max(id) + 1 from t_author), p_first_name, p_last_name) +END +/ + +CREATE PROCEDURE p_create_author() +BEGIN + call p_create_author_by_name('William', 'Shakespeare') +END +/ + +CREATE PROCEDURE p_author_exists (IN author_name VARCHAR(50), OUT result INT) +BEGIN + SELECT CASE WHEN COUNT(*) > 0 THEN 1 ELSE 0 END + INTO result + FROM t_author + WHERE first_name LIKE author_name + OR last_name LIKE author_name +END +/ + +CREATE PROCEDURE p391 ( + IN i1 INT, INOUT io1 INT, OUT o1 INT, + OUT o2 INT, INOUT io2 INT, IN i2 INT) +BEGIN + set o1 = io1; + set io1 = i1; + + set o2 = io2; + set io2 = i2; +END +/ + +CREATE FUNCTION f_author_exists (author_name VARCHAR(50)) + RETURNS INT +BEGIN + declare @result INT; + + SELECT CASE WHEN COUNT(*) > 0 THEN 1 ELSE 0 END + INTO @result + FROM t_author + WHERE first_name LIKE author_name + OR last_name LIKE author_name; + + return @result; +END +/ + +CREATE FUNCTION f_one () + RETURNS INT +BEGIN + RETURN 1 +END +/ + +CREATE FUNCTION f_number (n int) + RETURNS INT +BEGIN + RETURN n +END +/ + +CREATE FUNCTION f317 (p1 int, p2 int, p3 int, p4 int) + RETURNS INT +BEGIN + RETURN 1000 * p1 + 100 * p2 + p4 +END +/ diff --git a/jOOQ-test/src/org/jooq/test/sybase/generatedclasses/Dba.java b/jOOQ-test/src/org/jooq/test/sybase/generatedclasses/Dba.java new file mode 100644 index 00000000000..b3619ec8f81 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/sybase/generatedclasses/Dba.java @@ -0,0 +1,56 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.sybase.generatedclasses; + +/** + * This class is generated by jOOQ. + */ +public class Dba extends org.jooq.impl.SchemaImpl { + + private static final long serialVersionUID = -1082280310; + + /** + * The singleton instance of dba + */ + public static final Dba DBA = new Dba(); + + /** + * No further instances allowed + */ + private Dba() { + super("dba"); + } + + @Override + public final java.util.List> getSequences() { + return java.util.Arrays.>asList(org.jooq.test.sybase.generatedclasses.Sequences.S_AUTHOR_ID); + } + + @Override + public final java.util.List> getTables() { + return java.util.Arrays.>asList( + org.jooq.test.sybase.generatedclasses.tables.TIdentityPk.T_IDENTITY_PK, + org.jooq.test.sybase.generatedclasses.tables.TIdentity.T_IDENTITY, + org.jooq.test.sybase.generatedclasses.tables.TDates.T_DATES, + org.jooq.test.sybase.generatedclasses.tables.TBooleans.T_BOOLEANS, + org.jooq.test.sybase.generatedclasses.tables.TTriggers.T_TRIGGERS, + org.jooq.test.sybase.generatedclasses.tables.T_658Ref.T_658_REF, + org.jooq.test.sybase.generatedclasses.tables.T_725LobTest.T_725_LOB_TEST, + org.jooq.test.sybase.generatedclasses.tables.T_785.T_785, + org.jooq.test.sybase.generatedclasses.tables.TAuthor.T_AUTHOR, + org.jooq.test.sybase.generatedclasses.tables.TBook.T_BOOK, + org.jooq.test.sybase.generatedclasses.tables.TBookStore.T_BOOK_STORE, + org.jooq.test.sybase.generatedclasses.tables.TBookToBookStore.T_BOOK_TO_BOOK_STORE, + org.jooq.test.sybase.generatedclasses.tables.XUnused.X_UNUSED, + org.jooq.test.sybase.generatedclasses.tables.T_986_1.T_986_1, + org.jooq.test.sybase.generatedclasses.tables.T_986_2.T_986_2, + org.jooq.test.sybase.generatedclasses.tables.T_639NumbersTable.T_639_NUMBERS_TABLE, + org.jooq.test.sybase.generatedclasses.tables.XTestCase_64_69.X_TEST_CASE_64_69, + org.jooq.test.sybase.generatedclasses.tables.XTestCase_71.X_TEST_CASE_71, + org.jooq.test.sybase.generatedclasses.tables.XTestCase_85.X_TEST_CASE_85, + org.jooq.test.sybase.generatedclasses.tables.VLibrary.V_LIBRARY, + org.jooq.test.sybase.generatedclasses.tables.VAuthor.V_AUTHOR, + org.jooq.test.sybase.generatedclasses.tables.VBook.V_BOOK); + } +} diff --git a/jOOQ-test/src/org/jooq/test/sybase/generatedclasses/DbaFactory.java b/jOOQ-test/src/org/jooq/test/sybase/generatedclasses/DbaFactory.java new file mode 100644 index 00000000000..970218aca8d --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/sybase/generatedclasses/DbaFactory.java @@ -0,0 +1,41 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.sybase.generatedclasses; + +/** + * This class is generated by jOOQ. + */ +public class DbaFactory extends org.jooq.util.sybase.SybaseFactory { + + private static final long serialVersionUID = 1723504859; + + /** + * Create a factory with a connection + * + * @param connection The connection to use with objects created from this factory + */ + public DbaFactory(java.sql.Connection connection) { + super(connection); + } + + /** + * Create a factory with a connection and a schema mapping + * + * @deprecated - 2.0.5 - Use {@link #DbaFactory(java.sql.Connection, org.jooq.conf.Settings)} instead + */ + @Deprecated + public DbaFactory(java.sql.Connection connection, org.jooq.SchemaMapping mapping) { + super(connection, mapping); + } + + /** + * Create a factory with a connection and some settings + * + * @param connection The connection to use with objects created from this factory + * @param settings The settings to apply to objects created from this factory + */ + public DbaFactory(java.sql.Connection connection, org.jooq.conf.Settings settings) { + super(connection, settings); + } +} diff --git a/jOOQ-test/src/org/jooq/test/sybase/generatedclasses/Keys.java b/jOOQ-test/src/org/jooq/test/sybase/generatedclasses/Keys.java new file mode 100644 index 00000000000..f29a280d9d1 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/sybase/generatedclasses/Keys.java @@ -0,0 +1,56 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.sybase.generatedclasses; + +/** + * This class is generated by jOOQ. + * + * A class modelling foreign key relationships between tables of the dba schema + */ +@SuppressWarnings({"unchecked"}) +public class Keys extends org.jooq.impl.AbstractKeys { + + // IDENTITY definitions + public static final org.jooq.Identity IDENTITY_T_IDENTITY_PK = createIdentity(org.jooq.test.sybase.generatedclasses.tables.TIdentityPk.T_IDENTITY_PK, org.jooq.test.sybase.generatedclasses.tables.TIdentityPk.T_IDENTITY_PK.ID); + public static final org.jooq.Identity IDENTITY_T_IDENTITY = createIdentity(org.jooq.test.sybase.generatedclasses.tables.TIdentity.T_IDENTITY, org.jooq.test.sybase.generatedclasses.tables.TIdentity.T_IDENTITY.ID); + public static final org.jooq.Identity IDENTITY_T_TRIGGERS = createIdentity(org.jooq.test.sybase.generatedclasses.tables.TTriggers.T_TRIGGERS, org.jooq.test.sybase.generatedclasses.tables.TTriggers.T_TRIGGERS.ID_GENERATED); + + // UNIQUE and PRIMARY KEY definitions + public static final org.jooq.UniqueKey T_IDENTITY_PK__PK_T_IDENTITY_PK = createUniqueKey(org.jooq.test.sybase.generatedclasses.tables.TIdentityPk.T_IDENTITY_PK, org.jooq.test.sybase.generatedclasses.tables.TIdentityPk.T_IDENTITY_PK.ID); + public static final org.jooq.UniqueKey T_DATES__PK_T_DATES = createUniqueKey(org.jooq.test.sybase.generatedclasses.tables.TDates.T_DATES, org.jooq.test.sybase.generatedclasses.tables.TDates.T_DATES.ID); + public static final org.jooq.UniqueKey T_BOOLEANS__PK_T_BOOLEANS = createUniqueKey(org.jooq.test.sybase.generatedclasses.tables.TBooleans.T_BOOLEANS, org.jooq.test.sybase.generatedclasses.tables.TBooleans.T_BOOLEANS.ID); + public static final org.jooq.UniqueKey T_TRIGGERS__PK_T_TRIGGERS = createUniqueKey(org.jooq.test.sybase.generatedclasses.tables.TTriggers.T_TRIGGERS, org.jooq.test.sybase.generatedclasses.tables.TTriggers.T_TRIGGERS.ID_GENERATED); + public static final org.jooq.UniqueKey T_725_LOB_TEST__PK_T_725_LOB_TEST = createUniqueKey(org.jooq.test.sybase.generatedclasses.tables.T_725LobTest.T_725_LOB_TEST, org.jooq.test.sybase.generatedclasses.tables.T_725LobTest.T_725_LOB_TEST.ID); + public static final org.jooq.UniqueKey T_AUTHOR__PK_T_AUTHOR = createUniqueKey(org.jooq.test.sybase.generatedclasses.tables.TAuthor.T_AUTHOR, org.jooq.test.sybase.generatedclasses.tables.TAuthor.T_AUTHOR.ID); + public static final org.jooq.UniqueKey T_BOOK__PK_T_BOOK = createUniqueKey(org.jooq.test.sybase.generatedclasses.tables.TBook.T_BOOK, org.jooq.test.sybase.generatedclasses.tables.TBook.T_BOOK.ID); + public static final org.jooq.UniqueKey T_BOOK_STORE__UK_T_BOOK_STORE_NAME = createUniqueKey(org.jooq.test.sybase.generatedclasses.tables.TBookStore.T_BOOK_STORE, org.jooq.test.sybase.generatedclasses.tables.TBookStore.T_BOOK_STORE.NAME); + public static final org.jooq.UniqueKey T_BOOK_TO_BOOK_STORE__PK_B2BS = createUniqueKey(org.jooq.test.sybase.generatedclasses.tables.TBookToBookStore.T_BOOK_TO_BOOK_STORE, org.jooq.test.sybase.generatedclasses.tables.TBookToBookStore.T_BOOK_TO_BOOK_STORE.BOOK_STORE_NAME, org.jooq.test.sybase.generatedclasses.tables.TBookToBookStore.T_BOOK_TO_BOOK_STORE.BOOK_ID); + public static final org.jooq.UniqueKey X_UNUSED__PK_X_UNUSED = createUniqueKey(org.jooq.test.sybase.generatedclasses.tables.XUnused.X_UNUSED, org.jooq.test.sybase.generatedclasses.tables.XUnused.X_UNUSED.ID, org.jooq.test.sybase.generatedclasses.tables.XUnused.X_UNUSED.NAME); + public static final org.jooq.UniqueKey X_UNUSED__UK_X_UNUSED_ID = createUniqueKey(org.jooq.test.sybase.generatedclasses.tables.XUnused.X_UNUSED, org.jooq.test.sybase.generatedclasses.tables.XUnused.X_UNUSED.ID); + public static final org.jooq.UniqueKey T_986_1__PK_986 = createUniqueKey(org.jooq.test.sybase.generatedclasses.tables.T_986_1.T_986_1, org.jooq.test.sybase.generatedclasses.tables.T_986_1.T_986_1.REF); + public static final org.jooq.UniqueKey T_986_1__UK_986 = createUniqueKey(org.jooq.test.sybase.generatedclasses.tables.T_986_1.T_986_1, org.jooq.test.sybase.generatedclasses.tables.T_986_1.T_986_1.REF); + public static final org.jooq.UniqueKey T_986_2__PK_986 = createUniqueKey(org.jooq.test.sybase.generatedclasses.tables.T_986_2.T_986_2, org.jooq.test.sybase.generatedclasses.tables.T_986_2.T_986_2.REF); + public static final org.jooq.UniqueKey T_986_2__UK_986 = createUniqueKey(org.jooq.test.sybase.generatedclasses.tables.T_986_2.T_986_2, org.jooq.test.sybase.generatedclasses.tables.T_986_2.T_986_2.REF); + public static final org.jooq.UniqueKey T_639_NUMBERS_TABLE__PK_T_639_NUMBERS_TABLE = createUniqueKey(org.jooq.test.sybase.generatedclasses.tables.T_639NumbersTable.T_639_NUMBERS_TABLE, org.jooq.test.sybase.generatedclasses.tables.T_639NumbersTable.T_639_NUMBERS_TABLE.ID); + public static final org.jooq.UniqueKey X_TEST_CASE_64_69__PK_X_TEST_CASE_64_69 = createUniqueKey(org.jooq.test.sybase.generatedclasses.tables.XTestCase_64_69.X_TEST_CASE_64_69, org.jooq.test.sybase.generatedclasses.tables.XTestCase_64_69.X_TEST_CASE_64_69.ID); + public static final org.jooq.UniqueKey X_TEST_CASE_71__PK_X_TEST_CASE_71 = createUniqueKey(org.jooq.test.sybase.generatedclasses.tables.XTestCase_71.X_TEST_CASE_71, org.jooq.test.sybase.generatedclasses.tables.XTestCase_71.X_TEST_CASE_71.ID); + public static final org.jooq.UniqueKey X_TEST_CASE_85__PK_X_TEST_CASE_85 = createUniqueKey(org.jooq.test.sybase.generatedclasses.tables.XTestCase_85.X_TEST_CASE_85, org.jooq.test.sybase.generatedclasses.tables.XTestCase_85.X_TEST_CASE_85.ID); + + // FOREIGN KEY definitions + public static final org.jooq.ForeignKey T_BOOK__FK_T_BOOK_AUTHOR_ID = createForeignKey(T_AUTHOR__PK_T_AUTHOR, org.jooq.test.sybase.generatedclasses.tables.TBook.T_BOOK, org.jooq.test.sybase.generatedclasses.tables.TBook.T_BOOK.AUTHOR_ID); + public static final org.jooq.ForeignKey T_BOOK__FK_T_BOOK_CO_AUTHOR_ID = createForeignKey(T_AUTHOR__PK_T_AUTHOR, org.jooq.test.sybase.generatedclasses.tables.TBook.T_BOOK, org.jooq.test.sybase.generatedclasses.tables.TBook.T_BOOK.CO_AUTHOR_ID); + public static final org.jooq.ForeignKey T_BOOK_TO_BOOK_STORE__FK_B2BS_BS_NAME = createForeignKey(T_BOOK_STORE__UK_T_BOOK_STORE_NAME, org.jooq.test.sybase.generatedclasses.tables.TBookToBookStore.T_BOOK_TO_BOOK_STORE, org.jooq.test.sybase.generatedclasses.tables.TBookToBookStore.T_BOOK_TO_BOOK_STORE.BOOK_STORE_NAME); + public static final org.jooq.ForeignKey T_BOOK_TO_BOOK_STORE__FK_B2BS_B_ID = createForeignKey(T_BOOK__PK_T_BOOK, org.jooq.test.sybase.generatedclasses.tables.TBookToBookStore.T_BOOK_TO_BOOK_STORE, org.jooq.test.sybase.generatedclasses.tables.TBookToBookStore.T_BOOK_TO_BOOK_STORE.BOOK_ID); + public static final org.jooq.ForeignKey X_UNUSED__FK_X_UNUSED_SELF = createForeignKey(X_UNUSED__PK_X_UNUSED, org.jooq.test.sybase.generatedclasses.tables.XUnused.X_UNUSED, org.jooq.test.sybase.generatedclasses.tables.XUnused.X_UNUSED.ID_REF, org.jooq.test.sybase.generatedclasses.tables.XUnused.X_UNUSED.NAME_REF); + public static final org.jooq.ForeignKey T_986_1__FK_986 = createForeignKey(X_UNUSED__UK_X_UNUSED_ID, org.jooq.test.sybase.generatedclasses.tables.T_986_1.T_986_1, org.jooq.test.sybase.generatedclasses.tables.T_986_1.T_986_1.REF); + public static final org.jooq.ForeignKey T_986_2__FK_986 = createForeignKey(X_UNUSED__UK_X_UNUSED_ID, org.jooq.test.sybase.generatedclasses.tables.T_986_2.T_986_2, org.jooq.test.sybase.generatedclasses.tables.T_986_2.T_986_2.REF); + public static final org.jooq.ForeignKey X_TEST_CASE_64_69__FK_X_TEST_CASE_64_69A = createForeignKey(X_UNUSED__UK_X_UNUSED_ID, org.jooq.test.sybase.generatedclasses.tables.XTestCase_64_69.X_TEST_CASE_64_69, org.jooq.test.sybase.generatedclasses.tables.XTestCase_64_69.X_TEST_CASE_64_69.UNUSED_ID); + public static final org.jooq.ForeignKey X_TEST_CASE_71__FK_X_TEST_CASE_71 = createForeignKey(X_TEST_CASE_64_69__PK_X_TEST_CASE_64_69, org.jooq.test.sybase.generatedclasses.tables.XTestCase_71.X_TEST_CASE_71, org.jooq.test.sybase.generatedclasses.tables.XTestCase_71.X_TEST_CASE_71.TEST_CASE_64_69_ID); + public static final org.jooq.ForeignKey X_TEST_CASE_85__FK_X_TEST_CASE_85 = createForeignKey(X_UNUSED__PK_X_UNUSED, org.jooq.test.sybase.generatedclasses.tables.XTestCase_85.X_TEST_CASE_85, org.jooq.test.sybase.generatedclasses.tables.XTestCase_85.X_TEST_CASE_85.X_UNUSED_ID, org.jooq.test.sybase.generatedclasses.tables.XTestCase_85.X_TEST_CASE_85.X_UNUSED_NAME); + + /** + * No instances + */ + private Keys() {} +} diff --git a/jOOQ-test/src/org/jooq/test/sybase/generatedclasses/Routines.java b/jOOQ-test/src/org/jooq/test/sybase/generatedclasses/Routines.java new file mode 100644 index 00000000000..e9ad5c2f7e0 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/sybase/generatedclasses/Routines.java @@ -0,0 +1,251 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.sybase.generatedclasses; + +/** + * This class is generated by jOOQ. + * + * Convenience access to all stored procedures and functions in dba + */ +public final class Routines { + + /** + * Call dba.f_author_exists + * + * @param authorName + * @throws org.jooq.exception.DataAccessException if something went wrong executing the query + */ + public static java.lang.Integer fAuthorExists(org.jooq.Configuration configuration, java.lang.String authorName) { + org.jooq.test.sybase.generatedclasses.routines.FAuthorExists f = new org.jooq.test.sybase.generatedclasses.routines.FAuthorExists(); + f.setAuthorName(authorName); + + f.execute(configuration); + return f.getReturnValue(); + } + + /** + * Get dba.f_author_exists as a field + * + * @param authorName + */ + public static org.jooq.Field fAuthorExists(java.lang.String authorName) { + org.jooq.test.sybase.generatedclasses.routines.FAuthorExists f = new org.jooq.test.sybase.generatedclasses.routines.FAuthorExists(); + f.setAuthorName(authorName); + + return f.asField(); + } + + /** + * Get dba.f_author_exists as a field + * + * @param authorName + */ + public static org.jooq.Field fAuthorExists(org.jooq.Field authorName) { + org.jooq.test.sybase.generatedclasses.routines.FAuthorExists f = new org.jooq.test.sybase.generatedclasses.routines.FAuthorExists(); + f.setAuthorName(authorName); + + return f.asField(); + } + + /** + * Call dba.f_number + * + * @param n + * @throws org.jooq.exception.DataAccessException if something went wrong executing the query + */ + public static java.lang.Integer fNumber(org.jooq.Configuration configuration, java.lang.Integer n) { + org.jooq.test.sybase.generatedclasses.routines.FNumber f = new org.jooq.test.sybase.generatedclasses.routines.FNumber(); + f.setN(n); + + f.execute(configuration); + return f.getReturnValue(); + } + + /** + * Get dba.f_number as a field + * + * @param n + */ + public static org.jooq.Field fNumber(java.lang.Integer n) { + org.jooq.test.sybase.generatedclasses.routines.FNumber f = new org.jooq.test.sybase.generatedclasses.routines.FNumber(); + f.setN(n); + + return f.asField(); + } + + /** + * Get dba.f_number as a field + * + * @param n + */ + public static org.jooq.Field fNumber(org.jooq.Field n) { + org.jooq.test.sybase.generatedclasses.routines.FNumber f = new org.jooq.test.sybase.generatedclasses.routines.FNumber(); + f.setN(n); + + return f.asField(); + } + + /** + * Call dba.f_one + * + * @throws org.jooq.exception.DataAccessException if something went wrong executing the query + */ + public static java.lang.Integer fOne(org.jooq.Configuration configuration) { + org.jooq.test.sybase.generatedclasses.routines.FOne f = new org.jooq.test.sybase.generatedclasses.routines.FOne(); + + f.execute(configuration); + return f.getReturnValue(); + } + + /** + * Get dba.f_one as a field + * + */ + public static org.jooq.Field fOne() { + org.jooq.test.sybase.generatedclasses.routines.FOne f = new org.jooq.test.sybase.generatedclasses.routines.FOne(); + + return f.asField(); + } + + /** + * Call dba.f317 + * + * @param p1 + * @param p2 + * @param p3 + * @param p4 + * @throws org.jooq.exception.DataAccessException if something went wrong executing the query + */ + public static java.lang.Integer f317(org.jooq.Configuration configuration, java.lang.Integer p1, java.lang.Integer p2, java.lang.Integer p3, java.lang.Integer p4) { + org.jooq.test.sybase.generatedclasses.routines.F317 f = new org.jooq.test.sybase.generatedclasses.routines.F317(); + f.setP1(p1); + f.setP2(p2); + f.setP3(p3); + f.setP4(p4); + + f.execute(configuration); + return f.getReturnValue(); + } + + /** + * Get dba.f317 as a field + * + * @param p1 + * @param p2 + * @param p3 + * @param p4 + */ + public static org.jooq.Field f317(java.lang.Integer p1, java.lang.Integer p2, java.lang.Integer p3, java.lang.Integer p4) { + org.jooq.test.sybase.generatedclasses.routines.F317 f = new org.jooq.test.sybase.generatedclasses.routines.F317(); + f.setP1(p1); + f.setP2(p2); + f.setP3(p3); + f.setP4(p4); + + return f.asField(); + } + + /** + * Get dba.f317 as a field + * + * @param p1 + * @param p2 + * @param p3 + * @param p4 + */ + public static org.jooq.Field f317(org.jooq.Field p1, org.jooq.Field p2, org.jooq.Field p3, org.jooq.Field p4) { + org.jooq.test.sybase.generatedclasses.routines.F317 f = new org.jooq.test.sybase.generatedclasses.routines.F317(); + f.setP1(p1); + f.setP2(p2); + f.setP3(p3); + f.setP4(p4); + + return f.asField(); + } + + /** + * Call dba.p_author_exists + * + * @param authorName IN parameter + * @param result OUT parameter + * @throws org.jooq.exception.DataAccessException if something went wrong executing the query + */ + public static java.lang.Integer pAuthorExists(org.jooq.Configuration configuration, java.lang.String authorName) { + org.jooq.test.sybase.generatedclasses.routines.PAuthorExists p = new org.jooq.test.sybase.generatedclasses.routines.PAuthorExists(); + p.setAuthorName(authorName); + + p.execute(configuration); + return p.getResult(); + } + + /** + * Call dba.p_create_author + * + * @throws org.jooq.exception.DataAccessException if something went wrong executing the query + */ + public static void pCreateAuthor(org.jooq.Configuration configuration) { + org.jooq.test.sybase.generatedclasses.routines.PCreateAuthor p = new org.jooq.test.sybase.generatedclasses.routines.PCreateAuthor(); + + p.execute(configuration); + } + + /** + * Call dba.p_create_author_by_name + * + * @param pFirstName IN parameter + * @param pLastName IN parameter + * @throws org.jooq.exception.DataAccessException if something went wrong executing the query + */ + public static void pCreateAuthorByName(org.jooq.Configuration configuration, java.lang.String pFirstName, java.lang.String pLastName) { + org.jooq.test.sybase.generatedclasses.routines.PCreateAuthorByName p = new org.jooq.test.sybase.generatedclasses.routines.PCreateAuthorByName(); + p.setPFirstName(pFirstName); + p.setPLastName(pLastName); + + p.execute(configuration); + } + + /** + * Call dba.p_unused + * + * @param in1 IN parameter + * @param out1 OUT parameter + * @param out2 IN OUT parameter + * @throws org.jooq.exception.DataAccessException if something went wrong executing the query + */ + public static org.jooq.test.sybase.generatedclasses.routines.PUnused pUnused(org.jooq.Configuration configuration, java.lang.String in1, java.lang.Integer out2) { + org.jooq.test.sybase.generatedclasses.routines.PUnused p = new org.jooq.test.sybase.generatedclasses.routines.PUnused(); + p.setIn1(in1); + p.setOut2(out2); + + p.execute(configuration); + return p; + } + + /** + * Call dba.p391 + * + * @param i1 IN parameter + * @param io1 IN OUT parameter + * @param o1 OUT parameter + * @param o2 OUT parameter + * @param io2 IN OUT parameter + * @param i2 IN parameter + * @throws org.jooq.exception.DataAccessException if something went wrong executing the query + */ + public static org.jooq.test.sybase.generatedclasses.routines.P391 p391(org.jooq.Configuration configuration, java.lang.Integer i1, java.lang.Integer io1, java.lang.Integer io2, java.lang.Integer i2) { + org.jooq.test.sybase.generatedclasses.routines.P391 p = new org.jooq.test.sybase.generatedclasses.routines.P391(); + p.setI1(i1); + p.setIo1(io1); + p.setIo2(io2); + p.setI2(i2); + + p.execute(configuration); + return p; + } + + /** + * No instances + */ + private Routines() {} +} diff --git a/jOOQ-test/src/org/jooq/test/sybase/generatedclasses/Sequences.java b/jOOQ-test/src/org/jooq/test/sybase/generatedclasses/Sequences.java new file mode 100644 index 00000000000..2236316de04 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/sybase/generatedclasses/Sequences.java @@ -0,0 +1,22 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.sybase.generatedclasses; + +/** + * This class is generated by jOOQ. + * + * Convenience access to all sequences in dba + */ +public final class Sequences { + + /** + * The sequence dba.s_author_id + */ + public static final org.jooq.Sequence S_AUTHOR_ID = new org.jooq.impl.SequenceImpl("s_author_id", org.jooq.test.sybase.generatedclasses.Dba.DBA, org.jooq.impl.SQLDataType.DECIMAL_INTEGER); + + /** + * No instances + */ + private Sequences() {} +} diff --git a/jOOQ-test/src/org/jooq/test/sybase/generatedclasses/Tables.java b/jOOQ-test/src/org/jooq/test/sybase/generatedclasses/Tables.java new file mode 100644 index 00000000000..a5dc2f94717 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/sybase/generatedclasses/Tables.java @@ -0,0 +1,127 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.sybase.generatedclasses; + +/** + * This class is generated by jOOQ. + * + * Convenience access to all tables in dba + */ +public final class Tables { + + /** + * The table dba.t_identity_pk + */ + public static org.jooq.test.sybase.generatedclasses.tables.TIdentityPk T_IDENTITY_PK = org.jooq.test.sybase.generatedclasses.tables.TIdentityPk.T_IDENTITY_PK; + + /** + * The table dba.t_identity + */ + public static org.jooq.test.sybase.generatedclasses.tables.TIdentity T_IDENTITY = org.jooq.test.sybase.generatedclasses.tables.TIdentity.T_IDENTITY; + + /** + * The table dba.t_dates + */ + public static org.jooq.test.sybase.generatedclasses.tables.TDates T_DATES = org.jooq.test.sybase.generatedclasses.tables.TDates.T_DATES; + + /** + * The table dba.t_booleans + */ + public static org.jooq.test.sybase.generatedclasses.tables.TBooleans T_BOOLEANS = org.jooq.test.sybase.generatedclasses.tables.TBooleans.T_BOOLEANS; + + /** + * The table dba.t_triggers + */ + public static org.jooq.test.sybase.generatedclasses.tables.TTriggers T_TRIGGERS = org.jooq.test.sybase.generatedclasses.tables.TTriggers.T_TRIGGERS; + + /** + * The table dba.t_658_ref + */ + public static org.jooq.test.sybase.generatedclasses.tables.T_658Ref T_658_REF = org.jooq.test.sybase.generatedclasses.tables.T_658Ref.T_658_REF; + + /** + * The table dba.t_725_lob_test + */ + public static org.jooq.test.sybase.generatedclasses.tables.T_725LobTest T_725_LOB_TEST = org.jooq.test.sybase.generatedclasses.tables.T_725LobTest.T_725_LOB_TEST; + + /** + * The table dba.t_785 + */ + public static org.jooq.test.sybase.generatedclasses.tables.T_785 T_785 = org.jooq.test.sybase.generatedclasses.tables.T_785.T_785; + + /** + * An entity holding authors of books + */ + public static org.jooq.test.sybase.generatedclasses.tables.TAuthor T_AUTHOR = org.jooq.test.sybase.generatedclasses.tables.TAuthor.T_AUTHOR; + + /** + * An entity holding books + */ + public static org.jooq.test.sybase.generatedclasses.tables.TBook T_BOOK = org.jooq.test.sybase.generatedclasses.tables.TBook.T_BOOK; + + /** + * A book store + */ + public static org.jooq.test.sybase.generatedclasses.tables.TBookStore T_BOOK_STORE = org.jooq.test.sybase.generatedclasses.tables.TBookStore.T_BOOK_STORE; + + /** + * An m:n relation between books and book stores + */ + public static org.jooq.test.sybase.generatedclasses.tables.TBookToBookStore T_BOOK_TO_BOOK_STORE = org.jooq.test.sybase.generatedclasses.tables.TBookToBookStore.T_BOOK_TO_BOOK_STORE; + + /** + * The table dba.x_unused + */ + public static org.jooq.test.sybase.generatedclasses.tables.XUnused X_UNUSED = org.jooq.test.sybase.generatedclasses.tables.XUnused.X_UNUSED; + + /** + * The table dba.t_986_1 + */ + public static org.jooq.test.sybase.generatedclasses.tables.T_986_1 T_986_1 = org.jooq.test.sybase.generatedclasses.tables.T_986_1.T_986_1; + + /** + * The table dba.t_986_2 + */ + public static org.jooq.test.sybase.generatedclasses.tables.T_986_2 T_986_2 = org.jooq.test.sybase.generatedclasses.tables.T_986_2.T_986_2; + + /** + * The table dba.t_639_numbers_table + */ + public static org.jooq.test.sybase.generatedclasses.tables.T_639NumbersTable T_639_NUMBERS_TABLE = org.jooq.test.sybase.generatedclasses.tables.T_639NumbersTable.T_639_NUMBERS_TABLE; + + /** + * The table dba.x_test_case_64_69 + */ + public static org.jooq.test.sybase.generatedclasses.tables.XTestCase_64_69 X_TEST_CASE_64_69 = org.jooq.test.sybase.generatedclasses.tables.XTestCase_64_69.X_TEST_CASE_64_69; + + /** + * The table dba.x_test_case_71 + */ + public static org.jooq.test.sybase.generatedclasses.tables.XTestCase_71 X_TEST_CASE_71 = org.jooq.test.sybase.generatedclasses.tables.XTestCase_71.X_TEST_CASE_71; + + /** + * The table dba.x_test_case_85 + */ + public static org.jooq.test.sybase.generatedclasses.tables.XTestCase_85 X_TEST_CASE_85 = org.jooq.test.sybase.generatedclasses.tables.XTestCase_85.X_TEST_CASE_85; + + /** + * The table dba.V_LIBRARY + */ + public static org.jooq.test.sybase.generatedclasses.tables.VLibrary V_LIBRARY = org.jooq.test.sybase.generatedclasses.tables.VLibrary.V_LIBRARY; + + /** + * The table dba.v_author + */ + public static org.jooq.test.sybase.generatedclasses.tables.VAuthor V_AUTHOR = org.jooq.test.sybase.generatedclasses.tables.VAuthor.V_AUTHOR; + + /** + * The table dba.v_book + */ + public static org.jooq.test.sybase.generatedclasses.tables.VBook V_BOOK = org.jooq.test.sybase.generatedclasses.tables.VBook.V_BOOK; + + /** + * No instances + */ + private Tables() {} +} diff --git a/jOOQ-test/src/org/jooq/test/sybase/generatedclasses/enums/TLanguage.java b/jOOQ-test/src/org/jooq/test/sybase/generatedclasses/enums/TLanguage.java new file mode 100644 index 00000000000..da5d5209973 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/sybase/generatedclasses/enums/TLanguage.java @@ -0,0 +1,67 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.sybase.generatedclasses.enums; + +/** + * This class is generated by jOOQ. + * + * An entity holding language master data + */ +public enum TLanguage implements org.jooq.MasterDataType { + + /** + * English + */ + en(1, "en", "English"), + + /** + * Deutsch + */ + de(2, "de", "Deutsch"), + + /** + * Français + */ + fr(3, "fr", "Français"), + pt(4, "pt", null), + ; + + private final java.lang.Integer id; + private final java.lang.String cd; + private final java.lang.String description; + + private TLanguage(java.lang.Integer id, java.lang.String cd, java.lang.String description) { + this.id = id; + this.cd = cd; + this.description = description; + } + + @Override + public java.lang.Integer getPrimaryKey() { + return id; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final java.lang.Integer getId() { + return id; + } + + /** + * An uncommented item + */ + public final java.lang.String getCd() { + return cd; + } + + /** + * An uncommented item + */ + public final java.lang.String getDescription() { + return description; + } +} diff --git a/jOOQ-test/src/org/jooq/test/sybase/generatedclasses/enums/T_658_11.java b/jOOQ-test/src/org/jooq/test/sybase/generatedclasses/enums/T_658_11.java new file mode 100644 index 00000000000..ed6ead4492b --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/sybase/generatedclasses/enums/T_658_11.java @@ -0,0 +1,46 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.sybase.generatedclasses.enums; + +/** + * This class is generated by jOOQ. + */ +public enum T_658_11 implements org.jooq.MasterDataType { + + /** + * A + */ + A("A"), + + /** + * B + */ + B("B"), + + /** + * C + */ + C("C"), + ; + + private final java.lang.String id; + + private T_658_11(java.lang.String id) { + this.id = id; + } + + @Override + public java.lang.String getPrimaryKey() { + return id; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final java.lang.String getId() { + return id; + } +} diff --git a/jOOQ-test/src/org/jooq/test/sybase/generatedclasses/enums/T_658_12.java b/jOOQ-test/src/org/jooq/test/sybase/generatedclasses/enums/T_658_12.java new file mode 100644 index 00000000000..2eab2fd5809 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/sybase/generatedclasses/enums/T_658_12.java @@ -0,0 +1,55 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.sybase.generatedclasses.enums; + +/** + * This class is generated by jOOQ. + */ +public enum T_658_12 implements org.jooq.MasterDataType { + + /** + * A + */ + A("A", "A"), + + /** + * B + */ + B("B", "B"), + + /** + * C + */ + C("C", "C"), + ; + + private final java.lang.String id; + private final java.lang.String cd; + + private T_658_12(java.lang.String id, java.lang.String cd) { + this.id = id; + this.cd = cd; + } + + @Override + public java.lang.String getPrimaryKey() { + return id; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final java.lang.String getId() { + return id; + } + + /** + * An uncommented item + */ + public final java.lang.String getCd() { + return cd; + } +} diff --git a/jOOQ-test/src/org/jooq/test/sybase/generatedclasses/enums/T_658_21.java b/jOOQ-test/src/org/jooq/test/sybase/generatedclasses/enums/T_658_21.java new file mode 100644 index 00000000000..4a7c0c98ac7 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/sybase/generatedclasses/enums/T_658_21.java @@ -0,0 +1,46 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.sybase.generatedclasses.enums; + +/** + * This class is generated by jOOQ. + */ +public enum T_658_21 implements org.jooq.MasterDataType { + + /** + * 1 + */ + _1(1), + + /** + * 2 + */ + _2(2), + + /** + * 3 + */ + _3(3), + ; + + private final java.lang.Integer id; + + private T_658_21(java.lang.Integer id) { + this.id = id; + } + + @Override + public java.lang.Integer getPrimaryKey() { + return id; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final java.lang.Integer getId() { + return id; + } +} diff --git a/jOOQ-test/src/org/jooq/test/sybase/generatedclasses/enums/T_658_22.java b/jOOQ-test/src/org/jooq/test/sybase/generatedclasses/enums/T_658_22.java new file mode 100644 index 00000000000..0b57617e6d7 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/sybase/generatedclasses/enums/T_658_22.java @@ -0,0 +1,55 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.sybase.generatedclasses.enums; + +/** + * This class is generated by jOOQ. + */ +public enum T_658_22 implements org.jooq.MasterDataType { + + /** + * 1 + */ + _1(1, 1), + + /** + * 2 + */ + _2(2, 2), + + /** + * 3 + */ + _3(3, 3), + ; + + private final java.lang.Integer id; + private final java.lang.Integer cd; + + private T_658_22(java.lang.Integer id, java.lang.Integer cd) { + this.id = id; + this.cd = cd; + } + + @Override + public java.lang.Integer getPrimaryKey() { + return id; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final java.lang.Integer getId() { + return id; + } + + /** + * An uncommented item + */ + public final java.lang.Integer getCd() { + return cd; + } +} diff --git a/jOOQ-test/src/org/jooq/test/sybase/generatedclasses/enums/T_658_31.java b/jOOQ-test/src/org/jooq/test/sybase/generatedclasses/enums/T_658_31.java new file mode 100644 index 00000000000..6b77bfaf092 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/sybase/generatedclasses/enums/T_658_31.java @@ -0,0 +1,46 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.sybase.generatedclasses.enums; + +/** + * This class is generated by jOOQ. + */ +public enum T_658_31 implements org.jooq.MasterDataType { + + /** + * 1 + */ + _1(1L), + + /** + * 2 + */ + _2(2L), + + /** + * 3 + */ + _3(3L), + ; + + private final java.lang.Long id; + + private T_658_31(java.lang.Long id) { + this.id = id; + } + + @Override + public java.lang.Long getPrimaryKey() { + return id; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final java.lang.Long getId() { + return id; + } +} diff --git a/jOOQ-test/src/org/jooq/test/sybase/generatedclasses/enums/T_658_32.java b/jOOQ-test/src/org/jooq/test/sybase/generatedclasses/enums/T_658_32.java new file mode 100644 index 00000000000..02f1a683e8e --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/sybase/generatedclasses/enums/T_658_32.java @@ -0,0 +1,55 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.sybase.generatedclasses.enums; + +/** + * This class is generated by jOOQ. + */ +public enum T_658_32 implements org.jooq.MasterDataType { + + /** + * 1 + */ + _1(1L, 1L), + + /** + * 2 + */ + _2(2L, 2L), + + /** + * 3 + */ + _3(3L, 3L), + ; + + private final java.lang.Long id; + private final java.lang.Long cd; + + private T_658_32(java.lang.Long id, java.lang.Long cd) { + this.id = id; + this.cd = cd; + } + + @Override + public java.lang.Long getPrimaryKey() { + return id; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final java.lang.Long getId() { + return id; + } + + /** + * An uncommented item + */ + public final java.lang.Long getCd() { + return cd; + } +} diff --git a/jOOQ-test/src/org/jooq/test/sybase/generatedclasses/routines/F317.java b/jOOQ-test/src/org/jooq/test/sybase/generatedclasses/routines/F317.java new file mode 100644 index 00000000000..7baadfe24fc --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/sybase/generatedclasses/routines/F317.java @@ -0,0 +1,115 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.sybase.generatedclasses.routines; + +/** + * This class is generated by jOOQ. + */ +public class F317 extends org.jooq.impl.AbstractRoutine { + + private static final long serialVersionUID = -1218680091; + + + /** + * An uncommented item + */ + public static final org.jooq.Parameter RETURN_VALUE = createParameter("RETURN_VALUE", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter P1 = createParameter("p1", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter P2 = createParameter("p2", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter P3 = createParameter("p3", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter P4 = createParameter("p4", org.jooq.impl.SQLDataType.INTEGER); + + /** + * Create a new routine call instance + */ + public F317() { + super("f317", org.jooq.test.sybase.generatedclasses.Dba.DBA, org.jooq.impl.SQLDataType.INTEGER); + + setReturnParameter(RETURN_VALUE); + addInParameter(P1); + addInParameter(P2); + addInParameter(P3); + addInParameter(P4); + } + + /** + * Set the p1 parameter to the routine + */ + public void setP1(java.lang.Integer value) { + setValue(P1, value); + } + + /** + * Set the p1 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setP1(org.jooq.Field field) { + setField(P1, field); + } + + /** + * Set the p2 parameter to the routine + */ + public void setP2(java.lang.Integer value) { + setValue(P2, value); + } + + /** + * Set the p2 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setP2(org.jooq.Field field) { + setField(P2, field); + } + + /** + * Set the p3 parameter to the routine + */ + public void setP3(java.lang.Integer value) { + setValue(P3, value); + } + + /** + * Set the p3 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setP3(org.jooq.Field field) { + setField(P3, field); + } + + /** + * Set the p4 parameter to the routine + */ + public void setP4(java.lang.Integer value) { + setValue(P4, value); + } + + /** + * Set the p4 parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setP4(org.jooq.Field field) { + setField(P4, field); + } +} diff --git a/jOOQ-test/src/org/jooq/test/sybase/generatedclasses/routines/FAuthorExists.java b/jOOQ-test/src/org/jooq/test/sybase/generatedclasses/routines/FAuthorExists.java new file mode 100644 index 00000000000..3b874ba4cea --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/sybase/generatedclasses/routines/FAuthorExists.java @@ -0,0 +1,49 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.sybase.generatedclasses.routines; + +/** + * This class is generated by jOOQ. + */ +public class FAuthorExists extends org.jooq.impl.AbstractRoutine { + + private static final long serialVersionUID = 1416783742; + + + /** + * An uncommented item + */ + public static final org.jooq.Parameter RETURN_VALUE = createParameter("RETURN_VALUE", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter AUTHOR_NAME = createParameter("author_name", org.jooq.impl.SQLDataType.VARCHAR); + + /** + * Create a new routine call instance + */ + public FAuthorExists() { + super("f_author_exists", org.jooq.test.sybase.generatedclasses.Dba.DBA, org.jooq.impl.SQLDataType.INTEGER); + + setReturnParameter(RETURN_VALUE); + addInParameter(AUTHOR_NAME); + } + + /** + * Set the author_name parameter to the routine + */ + public void setAuthorName(java.lang.String value) { + setValue(AUTHOR_NAME, value); + } + + /** + * Set the author_name parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setAuthorName(org.jooq.Field field) { + setField(AUTHOR_NAME, field); + } +} diff --git a/jOOQ-test/src/org/jooq/test/sybase/generatedclasses/routines/FNumber.java b/jOOQ-test/src/org/jooq/test/sybase/generatedclasses/routines/FNumber.java new file mode 100644 index 00000000000..bf6ae286228 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/sybase/generatedclasses/routines/FNumber.java @@ -0,0 +1,49 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.sybase.generatedclasses.routines; + +/** + * This class is generated by jOOQ. + */ +public class FNumber extends org.jooq.impl.AbstractRoutine { + + private static final long serialVersionUID = -763476852; + + + /** + * An uncommented item + */ + public static final org.jooq.Parameter RETURN_VALUE = createParameter("RETURN_VALUE", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter N = createParameter("n", org.jooq.impl.SQLDataType.INTEGER); + + /** + * Create a new routine call instance + */ + public FNumber() { + super("f_number", org.jooq.test.sybase.generatedclasses.Dba.DBA, org.jooq.impl.SQLDataType.INTEGER); + + setReturnParameter(RETURN_VALUE); + addInParameter(N); + } + + /** + * Set the n parameter to the routine + */ + public void setN(java.lang.Integer value) { + setValue(N, value); + } + + /** + * Set the n parameter to the function + *

+ * Use this method only, if the function is called as a {@link org.jooq.Field} in a {@link org.jooq.Select} statement! + */ + public void setN(org.jooq.Field field) { + setField(N, field); + } +} diff --git a/jOOQ-test/src/org/jooq/test/sybase/generatedclasses/routines/FOne.java b/jOOQ-test/src/org/jooq/test/sybase/generatedclasses/routines/FOne.java new file mode 100644 index 00000000000..20f66ad3eea --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/sybase/generatedclasses/routines/FOne.java @@ -0,0 +1,27 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.sybase.generatedclasses.routines; + +/** + * This class is generated by jOOQ. + */ +public class FOne extends org.jooq.impl.AbstractRoutine { + + private static final long serialVersionUID = -1295751083; + + + /** + * An uncommented item + */ + public static final org.jooq.Parameter RETURN_VALUE = createParameter("RETURN_VALUE", org.jooq.impl.SQLDataType.INTEGER); + + /** + * Create a new routine call instance + */ + public FOne() { + super("f_one", org.jooq.test.sybase.generatedclasses.Dba.DBA, org.jooq.impl.SQLDataType.INTEGER); + + setReturnParameter(RETURN_VALUE); + } +} diff --git a/jOOQ-test/src/org/jooq/test/sybase/generatedclasses/routines/P391.java b/jOOQ-test/src/org/jooq/test/sybase/generatedclasses/routines/P391.java new file mode 100644 index 00000000000..fbacebcac8b --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/sybase/generatedclasses/routines/P391.java @@ -0,0 +1,101 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.sybase.generatedclasses.routines; + +/** + * This class is generated by jOOQ. + */ +public class P391 extends org.jooq.impl.AbstractRoutine { + + private static final long serialVersionUID = -42558277; + + + /** + * An uncommented item + */ + public static final org.jooq.Parameter I1 = createParameter("i1", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter IO1 = createParameter("io1", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter O1 = createParameter("o1", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter O2 = createParameter("o2", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter IO2 = createParameter("io2", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter I2 = createParameter("i2", org.jooq.impl.SQLDataType.INTEGER); + + /** + * Create a new routine call instance + */ + public P391() { + super("p391", org.jooq.test.sybase.generatedclasses.Dba.DBA); + + addInParameter(I1); + addInOutParameter(IO1); + addOutParameter(O1); + addOutParameter(O2); + addInOutParameter(IO2); + addInParameter(I2); + } + + /** + * Set the i1 parameter to the routine + */ + public void setI1(java.lang.Integer value) { + setValue(I1, value); + } + + /** + * Set the io1 parameter to the routine + */ + public void setIo1(java.lang.Integer value) { + setValue(IO1, value); + } + + /** + * Set the io2 parameter to the routine + */ + public void setIo2(java.lang.Integer value) { + setValue(IO2, value); + } + + /** + * Set the i2 parameter to the routine + */ + public void setI2(java.lang.Integer value) { + setValue(I2, value); + } + + public java.lang.Integer getIo1() { + return getValue(IO1); + } + + public java.lang.Integer getO1() { + return getValue(O1); + } + + public java.lang.Integer getO2() { + return getValue(O2); + } + + public java.lang.Integer getIo2() { + return getValue(IO2); + } +} diff --git a/jOOQ-test/src/org/jooq/test/sybase/generatedclasses/routines/PAuthorExists.java b/jOOQ-test/src/org/jooq/test/sybase/generatedclasses/routines/PAuthorExists.java new file mode 100644 index 00000000000..566606b43e7 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/sybase/generatedclasses/routines/PAuthorExists.java @@ -0,0 +1,44 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.sybase.generatedclasses.routines; + +/** + * This class is generated by jOOQ. + */ +public class PAuthorExists extends org.jooq.impl.AbstractRoutine { + + private static final long serialVersionUID = 27987174; + + + /** + * An uncommented item + */ + public static final org.jooq.Parameter AUTHOR_NAME = createParameter("author_name", org.jooq.impl.SQLDataType.VARCHAR); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter RESULT = createParameter("result", org.jooq.impl.SQLDataType.INTEGER); + + /** + * Create a new routine call instance + */ + public PAuthorExists() { + super("p_author_exists", org.jooq.test.sybase.generatedclasses.Dba.DBA); + + addInParameter(AUTHOR_NAME); + addOutParameter(RESULT); + } + + /** + * Set the author_name parameter to the routine + */ + public void setAuthorName(java.lang.String value) { + setValue(AUTHOR_NAME, value); + } + + public java.lang.Integer getResult() { + return getValue(RESULT); + } +} diff --git a/jOOQ-test/src/org/jooq/test/sybase/generatedclasses/routines/PCreateAuthor.java b/jOOQ-test/src/org/jooq/test/sybase/generatedclasses/routines/PCreateAuthor.java new file mode 100644 index 00000000000..58e70b65644 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/sybase/generatedclasses/routines/PCreateAuthor.java @@ -0,0 +1,20 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.sybase.generatedclasses.routines; + +/** + * This class is generated by jOOQ. + */ +public class PCreateAuthor extends org.jooq.impl.AbstractRoutine { + + private static final long serialVersionUID = 1936806658; + + + /** + * Create a new routine call instance + */ + public PCreateAuthor() { + super("p_create_author", org.jooq.test.sybase.generatedclasses.Dba.DBA); + } +} diff --git a/jOOQ-test/src/org/jooq/test/sybase/generatedclasses/routines/PCreateAuthorByName.java b/jOOQ-test/src/org/jooq/test/sybase/generatedclasses/routines/PCreateAuthorByName.java new file mode 100644 index 00000000000..e2f65658c6d --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/sybase/generatedclasses/routines/PCreateAuthorByName.java @@ -0,0 +1,47 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.sybase.generatedclasses.routines; + +/** + * This class is generated by jOOQ. + */ +public class PCreateAuthorByName extends org.jooq.impl.AbstractRoutine { + + private static final long serialVersionUID = -372932978; + + + /** + * An uncommented item + */ + public static final org.jooq.Parameter P_FIRST_NAME = createParameter("p_first_name", org.jooq.impl.SQLDataType.VARCHAR); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter P_LAST_NAME = createParameter("p_last_name", org.jooq.impl.SQLDataType.VARCHAR); + + /** + * Create a new routine call instance + */ + public PCreateAuthorByName() { + super("p_create_author_by_name", org.jooq.test.sybase.generatedclasses.Dba.DBA); + + addInParameter(P_FIRST_NAME); + addInParameter(P_LAST_NAME); + } + + /** + * Set the p_first_name parameter to the routine + */ + public void setPFirstName(java.lang.String value) { + setValue(P_FIRST_NAME, value); + } + + /** + * Set the p_last_name parameter to the routine + */ + public void setPLastName(java.lang.String value) { + setValue(P_LAST_NAME, value); + } +} diff --git a/jOOQ-test/src/org/jooq/test/sybase/generatedclasses/routines/PUnused.java b/jOOQ-test/src/org/jooq/test/sybase/generatedclasses/routines/PUnused.java new file mode 100644 index 00000000000..8eef04512c8 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/sybase/generatedclasses/routines/PUnused.java @@ -0,0 +1,61 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.sybase.generatedclasses.routines; + +/** + * This class is generated by jOOQ. + */ +public class PUnused extends org.jooq.impl.AbstractRoutine { + + private static final long serialVersionUID = 2000983117; + + + /** + * An uncommented item + */ + public static final org.jooq.Parameter IN1 = createParameter("in1", org.jooq.impl.SQLDataType.VARCHAR); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter OUT1 = createParameter("out1", org.jooq.impl.SQLDataType.INTEGER); + + /** + * An uncommented item + */ + public static final org.jooq.Parameter OUT2 = createParameter("out2", org.jooq.impl.SQLDataType.INTEGER); + + /** + * Create a new routine call instance + */ + public PUnused() { + super("p_unused", org.jooq.test.sybase.generatedclasses.Dba.DBA); + + addInParameter(IN1); + addOutParameter(OUT1); + addInOutParameter(OUT2); + } + + /** + * Set the in1 parameter to the routine + */ + public void setIn1(java.lang.String value) { + setValue(IN1, value); + } + + /** + * Set the out2 parameter to the routine + */ + public void setOut2(java.lang.Integer value) { + setValue(OUT2, value); + } + + public java.lang.Integer getOut1() { + return getValue(OUT1); + } + + public java.lang.Integer getOut2() { + return getValue(OUT2); + } +} diff --git a/jOOQ-test/src/org/jooq/test/sybase/generatedclasses/tables/TAuthor.java b/jOOQ-test/src/org/jooq/test/sybase/generatedclasses/tables/TAuthor.java new file mode 100644 index 00000000000..adc505c287d --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/sybase/generatedclasses/tables/TAuthor.java @@ -0,0 +1,88 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.sybase.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + * + * An entity holding authors of books + */ +public class TAuthor extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = -1629946604; + + /** + * The singleton instance of dba.t_author + */ + public static final org.jooq.test.sybase.generatedclasses.tables.TAuthor T_AUTHOR = new org.jooq.test.sybase.generatedclasses.tables.TAuthor(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.sybase.generatedclasses.tables.records.TAuthorRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final org.jooq.TableField ID = createField("ID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField FIRST_NAME = createField("FIRST_NAME", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField LAST_NAME = createField("LAST_NAME", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField DATE_OF_BIRTH = createField("DATE_OF_BIRTH", org.jooq.impl.SQLDataType.DATE, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField YEAR_OF_BIRTH = createField("YEAR_OF_BIRTH", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField ADDRESS = createField("ADDRESS", org.jooq.impl.SQLDataType.VARCHAR, this); + + public TAuthor() { + super("t_author", org.jooq.test.sybase.generatedclasses.Dba.DBA); + } + + public TAuthor(java.lang.String alias) { + super(alias, org.jooq.test.sybase.generatedclasses.Dba.DBA, org.jooq.test.sybase.generatedclasses.tables.TAuthor.T_AUTHOR); + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.test.sybase.generatedclasses.Keys.T_AUTHOR__PK_T_AUTHOR; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.test.sybase.generatedclasses.Keys.T_AUTHOR__PK_T_AUTHOR); + } + + @Override + public org.jooq.test.sybase.generatedclasses.tables.TAuthor as(java.lang.String alias) { + return new org.jooq.test.sybase.generatedclasses.tables.TAuthor(alias); + } +} diff --git a/jOOQ-test/src/org/jooq/test/sybase/generatedclasses/tables/TBook.java b/jOOQ-test/src/org/jooq/test/sybase/generatedclasses/tables/TBook.java new file mode 100644 index 00000000000..c088ff9c455 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/sybase/generatedclasses/tables/TBook.java @@ -0,0 +1,127 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.sybase.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + * + * An entity holding books + */ +public class TBook extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = -1417640119; + + /** + * The singleton instance of dba.t_book + */ + public static final org.jooq.test.sybase.generatedclasses.tables.TBook T_BOOK = new org.jooq.test.sybase.generatedclasses.tables.TBook(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.sybase.generatedclasses.tables.records.TBookRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final org.jooq.TableField ID = createField("ID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT t_book__fk_t_book_author_id
+	 * FOREIGN KEY (AUTHOR_ID)
+	 * REFERENCES dba.t_author (ID)
+	 * 
+ */ + public final org.jooq.TableField AUTHOR_ID = createField("AUTHOR_ID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT t_book__fk_t_book_co_author_id
+	 * FOREIGN KEY (CO_AUTHOR_ID)
+	 * REFERENCES dba.t_author (ID)
+	 * 
+ */ + public final org.jooq.TableField CO_AUTHOR_ID = createField("CO_AUTHOR_ID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField DETAILS_ID = createField("DETAILS_ID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField TITLE = createField("TITLE", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField PUBLISHED_IN = createField("PUBLISHED_IN", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT t_book__fk_t_book_language_id
+	 * FOREIGN KEY (LANGUAGE_ID)
+	 * REFERENCES dba.t_language (id)
+	 * 
+ */ + public final org.jooq.TableField LANGUAGE_ID = createField("LANGUAGE_ID", org.jooq.impl.SQLDataType.INTEGER.asMasterDataType(org.jooq.test.sybase.generatedclasses.enums.TLanguage.class), this); + + /** + * An uncommented item + */ + public final org.jooq.TableField CONTENT_TEXT = createField("CONTENT_TEXT", org.jooq.impl.SQLDataType.LONGVARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField CONTENT_PDF = createField("CONTENT_PDF", org.jooq.impl.SQLDataType.LONGVARBINARY, this); + + public TBook() { + super("t_book", org.jooq.test.sybase.generatedclasses.Dba.DBA); + } + + public TBook(java.lang.String alias) { + super(alias, org.jooq.test.sybase.generatedclasses.Dba.DBA, org.jooq.test.sybase.generatedclasses.tables.TBook.T_BOOK); + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.test.sybase.generatedclasses.Keys.T_BOOK__PK_T_BOOK; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.test.sybase.generatedclasses.Keys.T_BOOK__PK_T_BOOK); + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getReferences() { + return java.util.Arrays.>asList(org.jooq.test.sybase.generatedclasses.Keys.T_BOOK__FK_T_BOOK_AUTHOR_ID, org.jooq.test.sybase.generatedclasses.Keys.T_BOOK__FK_T_BOOK_CO_AUTHOR_ID); + } + + @Override + public org.jooq.test.sybase.generatedclasses.tables.TBook as(java.lang.String alias) { + return new org.jooq.test.sybase.generatedclasses.tables.TBook(alias); + } +} diff --git a/jOOQ-test/src/org/jooq/test/sybase/generatedclasses/tables/TBookStore.java b/jOOQ-test/src/org/jooq/test/sybase/generatedclasses/tables/TBookStore.java new file mode 100644 index 00000000000..ce5797ed76d --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/sybase/generatedclasses/tables/TBookStore.java @@ -0,0 +1,61 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.sybase.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + * + * A book store + */ +public class TBookStore extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = 889537163; + + /** + * The singleton instance of dba.t_book_store + */ + public static final org.jooq.test.sybase.generatedclasses.tables.TBookStore T_BOOK_STORE = new org.jooq.test.sybase.generatedclasses.tables.TBookStore(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.sybase.generatedclasses.tables.records.TBookStoreRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + */ + public final org.jooq.TableField NAME = createField("name", org.jooq.impl.SQLDataType.VARCHAR, this); + + public TBookStore() { + super("t_book_store", org.jooq.test.sybase.generatedclasses.Dba.DBA); + } + + public TBookStore(java.lang.String alias) { + super(alias, org.jooq.test.sybase.generatedclasses.Dba.DBA, org.jooq.test.sybase.generatedclasses.tables.TBookStore.T_BOOK_STORE); + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.test.sybase.generatedclasses.Keys.T_BOOK_STORE__UK_T_BOOK_STORE_NAME; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.test.sybase.generatedclasses.Keys.T_BOOK_STORE__UK_T_BOOK_STORE_NAME); + } + + @Override + public org.jooq.test.sybase.generatedclasses.tables.TBookStore as(java.lang.String alias) { + return new org.jooq.test.sybase.generatedclasses.tables.TBookStore(alias); + } +} diff --git a/jOOQ-test/src/org/jooq/test/sybase/generatedclasses/tables/TBookToBookStore.java b/jOOQ-test/src/org/jooq/test/sybase/generatedclasses/tables/TBookToBookStore.java new file mode 100644 index 00000000000..b8dcadb151e --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/sybase/generatedclasses/tables/TBookToBookStore.java @@ -0,0 +1,93 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.sybase.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + * + * An m:n relation between books and book stores + */ +public class TBookToBookStore extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = -455896257; + + /** + * The singleton instance of dba.t_book_to_book_store + */ + public static final org.jooq.test.sybase.generatedclasses.tables.TBookToBookStore T_BOOK_TO_BOOK_STORE = new org.jooq.test.sybase.generatedclasses.tables.TBookToBookStore(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.sybase.generatedclasses.tables.records.TBookToBookStoreRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT t_book_to_book_store__fk_b2bs_bs_name
+	 * FOREIGN KEY (book_store_name)
+	 * REFERENCES dba.t_book_store (name)
+	 * 
+ */ + public final org.jooq.TableField BOOK_STORE_NAME = createField("book_store_name", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT t_book_to_book_store__fk_b2bs_b_id
+	 * FOREIGN KEY (book_id)
+	 * REFERENCES dba.t_book (ID)
+	 * 
+ */ + public final org.jooq.TableField BOOK_ID = createField("book_id", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField STOCK = createField("stock", org.jooq.impl.SQLDataType.INTEGER, this); + + public TBookToBookStore() { + super("t_book_to_book_store", org.jooq.test.sybase.generatedclasses.Dba.DBA); + } + + public TBookToBookStore(java.lang.String alias) { + super(alias, org.jooq.test.sybase.generatedclasses.Dba.DBA, org.jooq.test.sybase.generatedclasses.tables.TBookToBookStore.T_BOOK_TO_BOOK_STORE); + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.test.sybase.generatedclasses.Keys.T_BOOK_TO_BOOK_STORE__PK_B2BS; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.test.sybase.generatedclasses.Keys.T_BOOK_TO_BOOK_STORE__PK_B2BS); + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getReferences() { + return java.util.Arrays.>asList(org.jooq.test.sybase.generatedclasses.Keys.T_BOOK_TO_BOOK_STORE__FK_B2BS_BS_NAME, org.jooq.test.sybase.generatedclasses.Keys.T_BOOK_TO_BOOK_STORE__FK_B2BS_B_ID); + } + + @Override + public org.jooq.test.sybase.generatedclasses.tables.TBookToBookStore as(java.lang.String alias) { + return new org.jooq.test.sybase.generatedclasses.tables.TBookToBookStore(alias); + } +} diff --git a/jOOQ-test/src/org/jooq/test/sybase/generatedclasses/tables/TBooleans.java b/jOOQ-test/src/org/jooq/test/sybase/generatedclasses/tables/TBooleans.java new file mode 100644 index 00000000000..e0490a3939c --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/sybase/generatedclasses/tables/TBooleans.java @@ -0,0 +1,111 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.sybase.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class TBooleans extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = 179486705; + + /** + * The singleton instance of dba.t_booleans + */ + public static final org.jooq.test.sybase.generatedclasses.tables.TBooleans T_BOOLEANS = new org.jooq.test.sybase.generatedclasses.tables.TBooleans(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.sybase.generatedclasses.tables.records.TBooleansRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final org.jooq.TableField ID = createField("id", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField ONE_ZERO = createField("one_zero", org.jooq.impl.SQLDataType.INTEGER.asConvertedDataType(new org.jooq.test._.converters.Boolean_10_Converter()), this); + + /** + * An uncommented item + */ + public final org.jooq.TableField TRUE_FALSE_LC = createField("true_false_lc", org.jooq.impl.SQLDataType.VARCHAR.asConvertedDataType(new org.jooq.test._.converters.Boolean_TF_LC_Converter()), this); + + /** + * An uncommented item + */ + public final org.jooq.TableField TRUE_FALSE_UC = createField("true_false_uc", org.jooq.impl.SQLDataType.VARCHAR.asConvertedDataType(new org.jooq.test._.converters.Boolean_TF_UC_Converter()), this); + + /** + * An uncommented item + */ + public final org.jooq.TableField YES_NO_LC = createField("yes_no_lc", org.jooq.impl.SQLDataType.VARCHAR.asConvertedDataType(new org.jooq.test._.converters.Boolean_YES_NO_LC_Converter()), this); + + /** + * An uncommented item + */ + public final org.jooq.TableField YES_NO_UC = createField("yes_no_uc", org.jooq.impl.SQLDataType.VARCHAR.asConvertedDataType(new org.jooq.test._.converters.Boolean_YES_NO_UC_Converter()), this); + + /** + * An uncommented item + */ + public final org.jooq.TableField Y_N_LC = createField("y_n_lc", org.jooq.impl.SQLDataType.CHAR.asConvertedDataType(new org.jooq.test._.converters.Boolean_YN_LC_Converter()), this); + + /** + * An uncommented item + */ + public final org.jooq.TableField Y_N_UC = createField("y_n_uc", org.jooq.impl.SQLDataType.CHAR.asConvertedDataType(new org.jooq.test._.converters.Boolean_YN_UC_Converter()), this); + + /** + * An uncommented item + */ + public final org.jooq.TableField VC_BOOLEAN = createField("vc_boolean", org.jooq.impl.SQLDataType.BIT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField C_BOOLEAN = createField("c_boolean", org.jooq.impl.SQLDataType.BIT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField N_BOOLEAN = createField("n_boolean", org.jooq.impl.SQLDataType.BIT, this); + + public TBooleans() { + super("t_booleans", org.jooq.test.sybase.generatedclasses.Dba.DBA); + } + + public TBooleans(java.lang.String alias) { + super(alias, org.jooq.test.sybase.generatedclasses.Dba.DBA, org.jooq.test.sybase.generatedclasses.tables.TBooleans.T_BOOLEANS); + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.test.sybase.generatedclasses.Keys.T_BOOLEANS__PK_T_BOOLEANS; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.test.sybase.generatedclasses.Keys.T_BOOLEANS__PK_T_BOOLEANS); + } + + @Override + public org.jooq.test.sybase.generatedclasses.tables.TBooleans as(java.lang.String alias) { + return new org.jooq.test.sybase.generatedclasses.tables.TBooleans(alias); + } +} diff --git a/jOOQ-test/src/org/jooq/test/sybase/generatedclasses/tables/TDates.java b/jOOQ-test/src/org/jooq/test/sybase/generatedclasses/tables/TDates.java new file mode 100644 index 00000000000..f89cb647b17 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/sybase/generatedclasses/tables/TDates.java @@ -0,0 +1,86 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.sybase.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class TDates extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = -407338539; + + /** + * The singleton instance of dba.t_dates + */ + public static final org.jooq.test.sybase.generatedclasses.tables.TDates T_DATES = new org.jooq.test.sybase.generatedclasses.tables.TDates(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.sybase.generatedclasses.tables.records.TDatesRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final org.jooq.TableField ID = createField("id", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField D = createField("d", org.jooq.impl.SQLDataType.DATE, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField T = createField("t", org.jooq.impl.SQLDataType.TIME, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField TS = createField("ts", org.jooq.impl.SQLDataType.TIMESTAMP, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField D_INT = createField("d_int", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField TS_BIGINT = createField("ts_bigint", org.jooq.impl.SQLDataType.BIGINT, this); + + public TDates() { + super("t_dates", org.jooq.test.sybase.generatedclasses.Dba.DBA); + } + + public TDates(java.lang.String alias) { + super(alias, org.jooq.test.sybase.generatedclasses.Dba.DBA, org.jooq.test.sybase.generatedclasses.tables.TDates.T_DATES); + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.test.sybase.generatedclasses.Keys.T_DATES__PK_T_DATES; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.test.sybase.generatedclasses.Keys.T_DATES__PK_T_DATES); + } + + @Override + public org.jooq.test.sybase.generatedclasses.tables.TDates as(java.lang.String alias) { + return new org.jooq.test.sybase.generatedclasses.tables.TDates(alias); + } +} diff --git a/jOOQ-test/src/org/jooq/test/sybase/generatedclasses/tables/TIdentity.java b/jOOQ-test/src/org/jooq/test/sybase/generatedclasses/tables/TIdentity.java new file mode 100644 index 00000000000..bc7ac60c8af --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/sybase/generatedclasses/tables/TIdentity.java @@ -0,0 +1,58 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.sybase.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class TIdentity extends org.jooq.impl.TableImpl { + + private static final long serialVersionUID = -659009862; + + /** + * The singleton instance of dba.t_identity + */ + public static final org.jooq.test.sybase.generatedclasses.tables.TIdentity T_IDENTITY = new org.jooq.test.sybase.generatedclasses.tables.TIdentity(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.sybase.generatedclasses.tables.records.TIdentityRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + */ + public final org.jooq.TableField ID = createField("id", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField VAL = createField("val", org.jooq.impl.SQLDataType.INTEGER, this); + + public TIdentity() { + super("t_identity", org.jooq.test.sybase.generatedclasses.Dba.DBA); + } + + public TIdentity(java.lang.String alias) { + super(alias, org.jooq.test.sybase.generatedclasses.Dba.DBA, org.jooq.test.sybase.generatedclasses.tables.TIdentity.T_IDENTITY); + } + + @Override + public org.jooq.Identity getIdentity() { + return org.jooq.test.sybase.generatedclasses.Keys.IDENTITY_T_IDENTITY; + } + + @Override + public org.jooq.test.sybase.generatedclasses.tables.TIdentity as(java.lang.String alias) { + return new org.jooq.test.sybase.generatedclasses.tables.TIdentity(alias); + } +} diff --git a/jOOQ-test/src/org/jooq/test/sybase/generatedclasses/tables/TIdentityPk.java b/jOOQ-test/src/org/jooq/test/sybase/generatedclasses/tables/TIdentityPk.java new file mode 100644 index 00000000000..a2fc9fa79fd --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/sybase/generatedclasses/tables/TIdentityPk.java @@ -0,0 +1,71 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.sybase.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class TIdentityPk extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = -1258048680; + + /** + * The singleton instance of dba.t_identity_pk + */ + public static final org.jooq.test.sybase.generatedclasses.tables.TIdentityPk T_IDENTITY_PK = new org.jooq.test.sybase.generatedclasses.tables.TIdentityPk(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.sybase.generatedclasses.tables.records.TIdentityPkRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final org.jooq.TableField ID = createField("id", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField VAL = createField("val", org.jooq.impl.SQLDataType.INTEGER, this); + + public TIdentityPk() { + super("t_identity_pk", org.jooq.test.sybase.generatedclasses.Dba.DBA); + } + + public TIdentityPk(java.lang.String alias) { + super(alias, org.jooq.test.sybase.generatedclasses.Dba.DBA, org.jooq.test.sybase.generatedclasses.tables.TIdentityPk.T_IDENTITY_PK); + } + + @Override + public org.jooq.Identity getIdentity() { + return org.jooq.test.sybase.generatedclasses.Keys.IDENTITY_T_IDENTITY_PK; + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.test.sybase.generatedclasses.Keys.T_IDENTITY_PK__PK_T_IDENTITY_PK; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.test.sybase.generatedclasses.Keys.T_IDENTITY_PK__PK_T_IDENTITY_PK); + } + + @Override + public org.jooq.test.sybase.generatedclasses.tables.TIdentityPk as(java.lang.String alias) { + return new org.jooq.test.sybase.generatedclasses.tables.TIdentityPk(alias); + } +} diff --git a/jOOQ-test/src/org/jooq/test/sybase/generatedclasses/tables/TTriggers.java b/jOOQ-test/src/org/jooq/test/sybase/generatedclasses/tables/TTriggers.java new file mode 100644 index 00000000000..e4c45b701c3 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/sybase/generatedclasses/tables/TTriggers.java @@ -0,0 +1,76 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.sybase.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class TTriggers extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = 2012383406; + + /** + * The singleton instance of dba.t_triggers + */ + public static final org.jooq.test.sybase.generatedclasses.tables.TTriggers T_TRIGGERS = new org.jooq.test.sybase.generatedclasses.tables.TTriggers(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.sybase.generatedclasses.tables.records.TTriggersRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final org.jooq.TableField ID_GENERATED = createField("id_generated", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField ID = createField("id", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField COUNTER = createField("counter", org.jooq.impl.SQLDataType.INTEGER, this); + + public TTriggers() { + super("t_triggers", org.jooq.test.sybase.generatedclasses.Dba.DBA); + } + + public TTriggers(java.lang.String alias) { + super(alias, org.jooq.test.sybase.generatedclasses.Dba.DBA, org.jooq.test.sybase.generatedclasses.tables.TTriggers.T_TRIGGERS); + } + + @Override + public org.jooq.Identity getIdentity() { + return org.jooq.test.sybase.generatedclasses.Keys.IDENTITY_T_TRIGGERS; + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.test.sybase.generatedclasses.Keys.T_TRIGGERS__PK_T_TRIGGERS; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.test.sybase.generatedclasses.Keys.T_TRIGGERS__PK_T_TRIGGERS); + } + + @Override + public org.jooq.test.sybase.generatedclasses.tables.TTriggers as(java.lang.String alias) { + return new org.jooq.test.sybase.generatedclasses.tables.TTriggers(alias); + } +} diff --git a/jOOQ-test/src/org/jooq/test/sybase/generatedclasses/tables/T_639NumbersTable.java b/jOOQ-test/src/org/jooq/test/sybase/generatedclasses/tables/T_639NumbersTable.java new file mode 100644 index 00000000000..da6f94b086c --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/sybase/generatedclasses/tables/T_639NumbersTable.java @@ -0,0 +1,121 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.sybase.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class T_639NumbersTable extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = 969159138; + + /** + * The singleton instance of dba.t_639_numbers_table + */ + public static final org.jooq.test.sybase.generatedclasses.tables.T_639NumbersTable T_639_NUMBERS_TABLE = new org.jooq.test.sybase.generatedclasses.tables.T_639NumbersTable(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.sybase.generatedclasses.tables.records.T_639NumbersTableRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final org.jooq.TableField ID = createField("ID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField BYTE = createField("BYTE", org.jooq.impl.SQLDataType.TINYINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField SHORT = createField("SHORT", org.jooq.impl.SQLDataType.SMALLINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField INTEGER = createField("INTEGER", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField LONG = createField("LONG", org.jooq.impl.SQLDataType.BIGINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField BYTE_DECIMAL = createField("BYTE_DECIMAL", org.jooq.impl.SQLDataType.TINYINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField SHORT_DECIMAL = createField("SHORT_DECIMAL", org.jooq.impl.SQLDataType.SMALLINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField INTEGER_DECIMAL = createField("INTEGER_DECIMAL", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField LONG_DECIMAL = createField("LONG_DECIMAL", org.jooq.impl.SQLDataType.BIGINT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField BIG_INTEGER = createField("BIG_INTEGER", org.jooq.impl.SQLDataType.DECIMAL_INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField BIG_DECIMAL = createField("BIG_DECIMAL", org.jooq.impl.SQLDataType.DECIMAL, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField FLOAT = createField("FLOAT", org.jooq.impl.SQLDataType.FLOAT, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField DOUBLE = createField("DOUBLE", org.jooq.impl.SQLDataType.DOUBLE, this); + + public T_639NumbersTable() { + super("t_639_numbers_table", org.jooq.test.sybase.generatedclasses.Dba.DBA); + } + + public T_639NumbersTable(java.lang.String alias) { + super(alias, org.jooq.test.sybase.generatedclasses.Dba.DBA, org.jooq.test.sybase.generatedclasses.tables.T_639NumbersTable.T_639_NUMBERS_TABLE); + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.test.sybase.generatedclasses.Keys.T_639_NUMBERS_TABLE__PK_T_639_NUMBERS_TABLE; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.test.sybase.generatedclasses.Keys.T_639_NUMBERS_TABLE__PK_T_639_NUMBERS_TABLE); + } + + @Override + public org.jooq.test.sybase.generatedclasses.tables.T_639NumbersTable as(java.lang.String alias) { + return new org.jooq.test.sybase.generatedclasses.tables.T_639NumbersTable(alias); + } +} diff --git a/jOOQ-test/src/org/jooq/test/sybase/generatedclasses/tables/T_658Ref.java b/jOOQ-test/src/org/jooq/test/sybase/generatedclasses/tables/T_658Ref.java new file mode 100644 index 00000000000..f4936aea62e --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/sybase/generatedclasses/tables/T_658Ref.java @@ -0,0 +1,115 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.sybase.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class T_658Ref extends org.jooq.impl.TableImpl { + + private static final long serialVersionUID = 360979435; + + /** + * The singleton instance of dba.t_658_ref + */ + public static final org.jooq.test.sybase.generatedclasses.tables.T_658Ref T_658_REF = new org.jooq.test.sybase.generatedclasses.tables.T_658Ref(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.sybase.generatedclasses.tables.records.T_658RefRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT t_658_ref__fk_t_658_11
+	 * FOREIGN KEY (ref_11)
+	 * REFERENCES dba.t_658_11 (id)
+	 * 
+ */ + public final org.jooq.TableField REF_11 = createField("ref_11", org.jooq.impl.SQLDataType.CHAR.asMasterDataType(org.jooq.test.sybase.generatedclasses.enums.T_658_11.class), this); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT t_658_ref__fk_t_658_21
+	 * FOREIGN KEY (ref_21)
+	 * REFERENCES dba.t_658_21 (id)
+	 * 
+ */ + public final org.jooq.TableField REF_21 = createField("ref_21", org.jooq.impl.SQLDataType.INTEGER.asMasterDataType(org.jooq.test.sybase.generatedclasses.enums.T_658_21.class), this); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT t_658_ref__fk_t_658_31
+	 * FOREIGN KEY (ref_31)
+	 * REFERENCES dba.t_658_31 (id)
+	 * 
+ */ + public final org.jooq.TableField REF_31 = createField("ref_31", org.jooq.impl.SQLDataType.BIGINT.asMasterDataType(org.jooq.test.sybase.generatedclasses.enums.T_658_31.class), this); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT t_658_ref__fk_t_658_12
+	 * FOREIGN KEY (ref_12)
+	 * REFERENCES dba.t_658_12 (id)
+	 * 
+ */ + public final org.jooq.TableField REF_12 = createField("ref_12", org.jooq.impl.SQLDataType.CHAR.asMasterDataType(org.jooq.test.sybase.generatedclasses.enums.T_658_12.class), this); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT t_658_ref__fk_t_658_22
+	 * FOREIGN KEY (ref_22)
+	 * REFERENCES dba.t_658_22 (id)
+	 * 
+ */ + public final org.jooq.TableField REF_22 = createField("ref_22", org.jooq.impl.SQLDataType.INTEGER.asMasterDataType(org.jooq.test.sybase.generatedclasses.enums.T_658_22.class), this); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT t_658_ref__fk_t_658_32
+	 * FOREIGN KEY (ref_32)
+	 * REFERENCES dba.t_658_32 (id)
+	 * 
+ */ + public final org.jooq.TableField REF_32 = createField("ref_32", org.jooq.impl.SQLDataType.BIGINT.asMasterDataType(org.jooq.test.sybase.generatedclasses.enums.T_658_32.class), this); + + public T_658Ref() { + super("t_658_ref", org.jooq.test.sybase.generatedclasses.Dba.DBA); + } + + public T_658Ref(java.lang.String alias) { + super(alias, org.jooq.test.sybase.generatedclasses.Dba.DBA, org.jooq.test.sybase.generatedclasses.tables.T_658Ref.T_658_REF); + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getReferences() { + return java.util.Arrays.>asList(); + } + + @Override + public org.jooq.test.sybase.generatedclasses.tables.T_658Ref as(java.lang.String alias) { + return new org.jooq.test.sybase.generatedclasses.tables.T_658Ref(alias); + } +} diff --git a/jOOQ-test/src/org/jooq/test/sybase/generatedclasses/tables/T_725LobTest.java b/jOOQ-test/src/org/jooq/test/sybase/generatedclasses/tables/T_725LobTest.java new file mode 100644 index 00000000000..cb7d139d5e7 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/sybase/generatedclasses/tables/T_725LobTest.java @@ -0,0 +1,66 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.sybase.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class T_725LobTest extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = -994804325; + + /** + * The singleton instance of dba.t_725_lob_test + */ + public static final org.jooq.test.sybase.generatedclasses.tables.T_725LobTest T_725_LOB_TEST = new org.jooq.test.sybase.generatedclasses.tables.T_725LobTest(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.sybase.generatedclasses.tables.records.T_725LobTestRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final org.jooq.TableField ID = createField("ID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField LOB = createField("LOB", org.jooq.impl.SQLDataType.LONGVARBINARY, this); + + public T_725LobTest() { + super("t_725_lob_test", org.jooq.test.sybase.generatedclasses.Dba.DBA); + } + + public T_725LobTest(java.lang.String alias) { + super(alias, org.jooq.test.sybase.generatedclasses.Dba.DBA, org.jooq.test.sybase.generatedclasses.tables.T_725LobTest.T_725_LOB_TEST); + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.test.sybase.generatedclasses.Keys.T_725_LOB_TEST__PK_T_725_LOB_TEST; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.test.sybase.generatedclasses.Keys.T_725_LOB_TEST__PK_T_725_LOB_TEST); + } + + @Override + public org.jooq.test.sybase.generatedclasses.tables.T_725LobTest as(java.lang.String alias) { + return new org.jooq.test.sybase.generatedclasses.tables.T_725LobTest(alias); + } +} diff --git a/jOOQ-test/src/org/jooq/test/sybase/generatedclasses/tables/T_785.java b/jOOQ-test/src/org/jooq/test/sybase/generatedclasses/tables/T_785.java new file mode 100644 index 00000000000..5eadc489633 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/sybase/generatedclasses/tables/T_785.java @@ -0,0 +1,58 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.sybase.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class T_785 extends org.jooq.impl.TableImpl { + + private static final long serialVersionUID = 466752406; + + /** + * The singleton instance of dba.t_785 + */ + public static final org.jooq.test.sybase.generatedclasses.tables.T_785 T_785 = new org.jooq.test.sybase.generatedclasses.tables.T_785(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.sybase.generatedclasses.tables.records.T_785Record.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + */ + public final org.jooq.TableField ID = createField("ID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField NAME = createField("NAME", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField VALUE = createField("VALUE", org.jooq.impl.SQLDataType.VARCHAR, this); + + public T_785() { + super("t_785", org.jooq.test.sybase.generatedclasses.Dba.DBA); + } + + public T_785(java.lang.String alias) { + super(alias, org.jooq.test.sybase.generatedclasses.Dba.DBA, org.jooq.test.sybase.generatedclasses.tables.T_785.T_785); + } + + @Override + public org.jooq.test.sybase.generatedclasses.tables.T_785 as(java.lang.String alias) { + return new org.jooq.test.sybase.generatedclasses.tables.T_785(alias); + } +} diff --git a/jOOQ-test/src/org/jooq/test/sybase/generatedclasses/tables/T_986_1.java b/jOOQ-test/src/org/jooq/test/sybase/generatedclasses/tables/T_986_1.java new file mode 100644 index 00000000000..48764cdddc3 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/sybase/generatedclasses/tables/T_986_1.java @@ -0,0 +1,73 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.sybase.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class T_986_1 extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = -1521794986; + + /** + * The singleton instance of dba.t_986_1 + */ + public static final org.jooq.test.sybase.generatedclasses.tables.T_986_1 T_986_1 = new org.jooq.test.sybase.generatedclasses.tables.T_986_1(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.sybase.generatedclasses.tables.records.T_986_1Record.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT t_986_1__fk_986
+	 * FOREIGN KEY (REF)
+	 * REFERENCES dba.x_unused (ID)
+	 * 
+ */ + public final org.jooq.TableField REF = createField("REF", org.jooq.impl.SQLDataType.INTEGER, this); + + public T_986_1() { + super("t_986_1", org.jooq.test.sybase.generatedclasses.Dba.DBA); + } + + public T_986_1(java.lang.String alias) { + super(alias, org.jooq.test.sybase.generatedclasses.Dba.DBA, org.jooq.test.sybase.generatedclasses.tables.T_986_1.T_986_1); + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.test.sybase.generatedclasses.Keys.T_986_1__PK_986; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.test.sybase.generatedclasses.Keys.T_986_1__PK_986, org.jooq.test.sybase.generatedclasses.Keys.T_986_1__UK_986); + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getReferences() { + return java.util.Arrays.>asList(org.jooq.test.sybase.generatedclasses.Keys.T_986_1__FK_986); + } + + @Override + public org.jooq.test.sybase.generatedclasses.tables.T_986_1 as(java.lang.String alias) { + return new org.jooq.test.sybase.generatedclasses.tables.T_986_1(alias); + } +} diff --git a/jOOQ-test/src/org/jooq/test/sybase/generatedclasses/tables/T_986_2.java b/jOOQ-test/src/org/jooq/test/sybase/generatedclasses/tables/T_986_2.java new file mode 100644 index 00000000000..d19817aa65b --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/sybase/generatedclasses/tables/T_986_2.java @@ -0,0 +1,73 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.sybase.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class T_986_2 extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = -399479787; + + /** + * The singleton instance of dba.t_986_2 + */ + public static final org.jooq.test.sybase.generatedclasses.tables.T_986_2 T_986_2 = new org.jooq.test.sybase.generatedclasses.tables.T_986_2(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.sybase.generatedclasses.tables.records.T_986_2Record.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT t_986_2__fk_986
+	 * FOREIGN KEY (REF)
+	 * REFERENCES dba.x_unused (ID)
+	 * 
+ */ + public final org.jooq.TableField REF = createField("REF", org.jooq.impl.SQLDataType.INTEGER, this); + + public T_986_2() { + super("t_986_2", org.jooq.test.sybase.generatedclasses.Dba.DBA); + } + + public T_986_2(java.lang.String alias) { + super(alias, org.jooq.test.sybase.generatedclasses.Dba.DBA, org.jooq.test.sybase.generatedclasses.tables.T_986_2.T_986_2); + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.test.sybase.generatedclasses.Keys.T_986_2__PK_986; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.test.sybase.generatedclasses.Keys.T_986_2__PK_986, org.jooq.test.sybase.generatedclasses.Keys.T_986_2__UK_986); + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getReferences() { + return java.util.Arrays.>asList(org.jooq.test.sybase.generatedclasses.Keys.T_986_2__FK_986); + } + + @Override + public org.jooq.test.sybase.generatedclasses.tables.T_986_2 as(java.lang.String alias) { + return new org.jooq.test.sybase.generatedclasses.tables.T_986_2(alias); + } +} diff --git a/jOOQ-test/src/org/jooq/test/sybase/generatedclasses/tables/VAuthor.java b/jOOQ-test/src/org/jooq/test/sybase/generatedclasses/tables/VAuthor.java new file mode 100644 index 00000000000..9e8618658a2 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/sybase/generatedclasses/tables/VAuthor.java @@ -0,0 +1,73 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.sybase.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class VAuthor extends org.jooq.impl.TableImpl { + + private static final long serialVersionUID = -254559111; + + /** + * The singleton instance of dba.v_author + */ + public static final org.jooq.test.sybase.generatedclasses.tables.VAuthor V_AUTHOR = new org.jooq.test.sybase.generatedclasses.tables.VAuthor(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.sybase.generatedclasses.tables.records.VAuthorRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + */ + public final org.jooq.TableField ID = createField("ID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField FIRST_NAME = createField("FIRST_NAME", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField LAST_NAME = createField("LAST_NAME", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField DATE_OF_BIRTH = createField("DATE_OF_BIRTH", org.jooq.impl.SQLDataType.DATE, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField YEAR_OF_BIRTH = createField("YEAR_OF_BIRTH", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField ADDRESS = createField("ADDRESS", org.jooq.impl.SQLDataType.VARCHAR, this); + + public VAuthor() { + super("v_author", org.jooq.test.sybase.generatedclasses.Dba.DBA); + } + + public VAuthor(java.lang.String alias) { + super(alias, org.jooq.test.sybase.generatedclasses.Dba.DBA, org.jooq.test.sybase.generatedclasses.tables.VAuthor.V_AUTHOR); + } + + @Override + public org.jooq.test.sybase.generatedclasses.tables.VAuthor as(java.lang.String alias) { + return new org.jooq.test.sybase.generatedclasses.tables.VAuthor(alias); + } +} diff --git a/jOOQ-test/src/org/jooq/test/sybase/generatedclasses/tables/VBook.java b/jOOQ-test/src/org/jooq/test/sybase/generatedclasses/tables/VBook.java new file mode 100644 index 00000000000..99b0e621190 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/sybase/generatedclasses/tables/VBook.java @@ -0,0 +1,88 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.sybase.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class VBook extends org.jooq.impl.TableImpl { + + private static final long serialVersionUID = 1432037652; + + /** + * The singleton instance of dba.v_book + */ + public static final org.jooq.test.sybase.generatedclasses.tables.VBook V_BOOK = new org.jooq.test.sybase.generatedclasses.tables.VBook(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.sybase.generatedclasses.tables.records.VBookRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + */ + public final org.jooq.TableField ID = createField("ID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField AUTHOR_ID = createField("AUTHOR_ID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField CO_AUTHOR_ID = createField("CO_AUTHOR_ID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField DETAILS_ID = createField("DETAILS_ID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField TITLE = createField("TITLE", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField PUBLISHED_IN = createField("PUBLISHED_IN", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField LANGUAGE_ID = createField("LANGUAGE_ID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField CONTENT_TEXT = createField("CONTENT_TEXT", org.jooq.impl.SQLDataType.LONGVARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField CONTENT_PDF = createField("CONTENT_PDF", org.jooq.impl.SQLDataType.LONGVARBINARY, this); + + public VBook() { + super("v_book", org.jooq.test.sybase.generatedclasses.Dba.DBA); + } + + public VBook(java.lang.String alias) { + super(alias, org.jooq.test.sybase.generatedclasses.Dba.DBA, org.jooq.test.sybase.generatedclasses.tables.VBook.V_BOOK); + } + + @Override + public org.jooq.test.sybase.generatedclasses.tables.VBook as(java.lang.String alias) { + return new org.jooq.test.sybase.generatedclasses.tables.VBook(alias); + } +} diff --git a/jOOQ-test/src/org/jooq/test/sybase/generatedclasses/tables/VLibrary.java b/jOOQ-test/src/org/jooq/test/sybase/generatedclasses/tables/VLibrary.java new file mode 100644 index 00000000000..87a7c0067ba --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/sybase/generatedclasses/tables/VLibrary.java @@ -0,0 +1,53 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.sybase.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class VLibrary extends org.jooq.impl.TableImpl { + + private static final long serialVersionUID = 1903292517; + + /** + * The singleton instance of dba.V_LIBRARY + */ + public static final org.jooq.test.sybase.generatedclasses.tables.VLibrary V_LIBRARY = new org.jooq.test.sybase.generatedclasses.tables.VLibrary(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.sybase.generatedclasses.tables.records.VLibraryRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + */ + public final org.jooq.TableField AUTHOR = createField("AUTHOR", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField TITLE = createField("TITLE", org.jooq.impl.SQLDataType.VARCHAR, this); + + public VLibrary() { + super("V_LIBRARY", org.jooq.test.sybase.generatedclasses.Dba.DBA); + } + + public VLibrary(java.lang.String alias) { + super(alias, org.jooq.test.sybase.generatedclasses.Dba.DBA, org.jooq.test.sybase.generatedclasses.tables.VLibrary.V_LIBRARY); + } + + @Override + public org.jooq.test.sybase.generatedclasses.tables.VLibrary as(java.lang.String alias) { + return new org.jooq.test.sybase.generatedclasses.tables.VLibrary(alias); + } +} diff --git a/jOOQ-test/src/org/jooq/test/sybase/generatedclasses/tables/XTestCase_64_69.java b/jOOQ-test/src/org/jooq/test/sybase/generatedclasses/tables/XTestCase_64_69.java new file mode 100644 index 00000000000..ff060739bc9 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/sybase/generatedclasses/tables/XTestCase_64_69.java @@ -0,0 +1,78 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.sybase.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class XTestCase_64_69 extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = 1781350785; + + /** + * The singleton instance of dba.x_test_case_64_69 + */ + public static final org.jooq.test.sybase.generatedclasses.tables.XTestCase_64_69 X_TEST_CASE_64_69 = new org.jooq.test.sybase.generatedclasses.tables.XTestCase_64_69(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.sybase.generatedclasses.tables.records.XTestCase_64_69Record.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final org.jooq.TableField ID = createField("ID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT x_test_case_64_69__fk_x_test_case_64_69a
+	 * FOREIGN KEY (UNUSED_ID)
+	 * REFERENCES dba.x_unused (ID)
+	 * 
+ */ + public final org.jooq.TableField UNUSED_ID = createField("UNUSED_ID", org.jooq.impl.SQLDataType.INTEGER, this); + + public XTestCase_64_69() { + super("x_test_case_64_69", org.jooq.test.sybase.generatedclasses.Dba.DBA); + } + + public XTestCase_64_69(java.lang.String alias) { + super(alias, org.jooq.test.sybase.generatedclasses.Dba.DBA, org.jooq.test.sybase.generatedclasses.tables.XTestCase_64_69.X_TEST_CASE_64_69); + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.test.sybase.generatedclasses.Keys.X_TEST_CASE_64_69__PK_X_TEST_CASE_64_69; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.test.sybase.generatedclasses.Keys.X_TEST_CASE_64_69__PK_X_TEST_CASE_64_69); + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getReferences() { + return java.util.Arrays.>asList(org.jooq.test.sybase.generatedclasses.Keys.X_TEST_CASE_64_69__FK_X_TEST_CASE_64_69A); + } + + @Override + public org.jooq.test.sybase.generatedclasses.tables.XTestCase_64_69 as(java.lang.String alias) { + return new org.jooq.test.sybase.generatedclasses.tables.XTestCase_64_69(alias); + } +} diff --git a/jOOQ-test/src/org/jooq/test/sybase/generatedclasses/tables/XTestCase_71.java b/jOOQ-test/src/org/jooq/test/sybase/generatedclasses/tables/XTestCase_71.java new file mode 100644 index 00000000000..2f2317645a3 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/sybase/generatedclasses/tables/XTestCase_71.java @@ -0,0 +1,78 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.sybase.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class XTestCase_71 extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = 947582373; + + /** + * The singleton instance of dba.x_test_case_71 + */ + public static final org.jooq.test.sybase.generatedclasses.tables.XTestCase_71 X_TEST_CASE_71 = new org.jooq.test.sybase.generatedclasses.tables.XTestCase_71(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.sybase.generatedclasses.tables.records.XTestCase_71Record.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final org.jooq.TableField ID = createField("ID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT x_test_case_71__fk_x_test_case_71
+	 * FOREIGN KEY (TEST_CASE_64_69_ID)
+	 * REFERENCES dba.x_test_case_64_69 (ID)
+	 * 
+ */ + public final org.jooq.TableField TEST_CASE_64_69_ID = createField("TEST_CASE_64_69_ID", org.jooq.impl.SQLDataType.INTEGER, this); + + public XTestCase_71() { + super("x_test_case_71", org.jooq.test.sybase.generatedclasses.Dba.DBA); + } + + public XTestCase_71(java.lang.String alias) { + super(alias, org.jooq.test.sybase.generatedclasses.Dba.DBA, org.jooq.test.sybase.generatedclasses.tables.XTestCase_71.X_TEST_CASE_71); + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.test.sybase.generatedclasses.Keys.X_TEST_CASE_71__PK_X_TEST_CASE_71; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.test.sybase.generatedclasses.Keys.X_TEST_CASE_71__PK_X_TEST_CASE_71); + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getReferences() { + return java.util.Arrays.>asList(org.jooq.test.sybase.generatedclasses.Keys.X_TEST_CASE_71__FK_X_TEST_CASE_71); + } + + @Override + public org.jooq.test.sybase.generatedclasses.tables.XTestCase_71 as(java.lang.String alias) { + return new org.jooq.test.sybase.generatedclasses.tables.XTestCase_71(alias); + } +} diff --git a/jOOQ-test/src/org/jooq/test/sybase/generatedclasses/tables/XTestCase_85.java b/jOOQ-test/src/org/jooq/test/sybase/generatedclasses/tables/XTestCase_85.java new file mode 100644 index 00000000000..34cd6e0787e --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/sybase/generatedclasses/tables/XTestCase_85.java @@ -0,0 +1,89 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.sybase.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class XTestCase_85 extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = 973148167; + + /** + * The singleton instance of dba.x_test_case_85 + */ + public static final org.jooq.test.sybase.generatedclasses.tables.XTestCase_85 X_TEST_CASE_85 = new org.jooq.test.sybase.generatedclasses.tables.XTestCase_85(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.sybase.generatedclasses.tables.records.XTestCase_85Record.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final org.jooq.TableField ID = createField("id", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT x_test_case_85__fk_x_test_case_85
+	 * FOREIGN KEY (x_unused_id, x_unused_name)
+	 * REFERENCES dba.x_unused (ID, NAME)
+	 * 
+ */ + public final org.jooq.TableField X_UNUSED_ID = createField("x_unused_id", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT x_test_case_85__fk_x_test_case_85
+	 * FOREIGN KEY (x_unused_id, x_unused_name)
+	 * REFERENCES dba.x_unused (ID, NAME)
+	 * 
+ */ + public final org.jooq.TableField X_UNUSED_NAME = createField("x_unused_name", org.jooq.impl.SQLDataType.VARCHAR, this); + + public XTestCase_85() { + super("x_test_case_85", org.jooq.test.sybase.generatedclasses.Dba.DBA); + } + + public XTestCase_85(java.lang.String alias) { + super(alias, org.jooq.test.sybase.generatedclasses.Dba.DBA, org.jooq.test.sybase.generatedclasses.tables.XTestCase_85.X_TEST_CASE_85); + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.test.sybase.generatedclasses.Keys.X_TEST_CASE_85__PK_X_TEST_CASE_85; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.test.sybase.generatedclasses.Keys.X_TEST_CASE_85__PK_X_TEST_CASE_85); + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getReferences() { + return java.util.Arrays.>asList(org.jooq.test.sybase.generatedclasses.Keys.X_TEST_CASE_85__FK_X_TEST_CASE_85); + } + + @Override + public org.jooq.test.sybase.generatedclasses.tables.XTestCase_85 as(java.lang.String alias) { + return new org.jooq.test.sybase.generatedclasses.tables.XTestCase_85(alias); + } +} diff --git a/jOOQ-test/src/org/jooq/test/sybase/generatedclasses/tables/XUnused.java b/jOOQ-test/src/org/jooq/test/sybase/generatedclasses/tables/XUnused.java new file mode 100644 index 00000000000..f1f598aece9 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/sybase/generatedclasses/tables/XUnused.java @@ -0,0 +1,146 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.sybase.generatedclasses.tables; + +/** + * This class is generated by jOOQ. + */ +public class XUnused extends org.jooq.impl.UpdatableTableImpl { + + private static final long serialVersionUID = -1256574052; + + /** + * The singleton instance of dba.x_unused + */ + public static final org.jooq.test.sybase.generatedclasses.tables.XUnused X_UNUSED = new org.jooq.test.sybase.generatedclasses.tables.XUnused(); + + /** + * The class holding records for this type + */ + private static final java.lang.Class __RECORD_TYPE = org.jooq.test.sybase.generatedclasses.tables.records.XUnusedRecord.class; + + /** + * The class holding records for this type + */ + @Override + public java.lang.Class getRecordType() { + return __RECORD_TYPE; + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final org.jooq.TableField ID = createField("ID", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public final org.jooq.TableField NAME = createField("NAME", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField BIG_INTEGER = createField("BIG_INTEGER", org.jooq.impl.SQLDataType.DECIMAL_INTEGER, this); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT x_unused__fk_x_unused_self
+	 * FOREIGN KEY (ID_REF, NAME_REF)
+	 * REFERENCES dba.x_unused (ID, NAME)
+	 * 
+ */ + public final org.jooq.TableField ID_REF = createField("ID_REF", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT x_unused__fk_x_unused_self
+	 * FOREIGN KEY (ID_REF, NAME_REF)
+	 * REFERENCES dba.x_unused (ID, NAME)
+	 * 
+ */ + public final org.jooq.TableField NAME_REF = createField("NAME_REF", org.jooq.impl.SQLDataType.VARCHAR, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField CLASS = createField("CLASS", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField FIELDS = createField("FIELDS", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField CONFIGURATION = createField("CONFIGURATION", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField U_D_T = createField("U_D_T", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField META_DATA = createField("META_DATA", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField TYPE0 = createField("TYPE0", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField PRIMARY_KEY = createField("PRIMARY_KEY", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField PRIMARYKEY = createField("PRIMARYKEY", org.jooq.impl.SQLDataType.INTEGER, this); + + /** + * An uncommented item + */ + public final org.jooq.TableField FIELD_737 = createField("FIELD 737", org.jooq.impl.SQLDataType.DECIMAL, this); + + public XUnused() { + super("x_unused", org.jooq.test.sybase.generatedclasses.Dba.DBA); + } + + public XUnused(java.lang.String alias) { + super(alias, org.jooq.test.sybase.generatedclasses.Dba.DBA, org.jooq.test.sybase.generatedclasses.tables.XUnused.X_UNUSED); + } + + @Override + public org.jooq.UniqueKey getMainKey() { + return org.jooq.test.sybase.generatedclasses.Keys.X_UNUSED__PK_X_UNUSED; + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getKeys() { + return java.util.Arrays.>asList(org.jooq.test.sybase.generatedclasses.Keys.X_UNUSED__PK_X_UNUSED, org.jooq.test.sybase.generatedclasses.Keys.X_UNUSED__UK_X_UNUSED_ID); + } + + @Override + @SuppressWarnings("unchecked") + public java.util.List> getReferences() { + return java.util.Arrays.>asList(org.jooq.test.sybase.generatedclasses.Keys.X_UNUSED__FK_X_UNUSED_SELF); + } + + @Override + public org.jooq.test.sybase.generatedclasses.tables.XUnused as(java.lang.String alias) { + return new org.jooq.test.sybase.generatedclasses.tables.XUnused(alias); + } +} diff --git a/jOOQ-test/src/org/jooq/test/sybase/generatedclasses/tables/records/TAuthorRecord.java b/jOOQ-test/src/org/jooq/test/sybase/generatedclasses/tables/records/TAuthorRecord.java new file mode 100644 index 00000000000..20f3e009584 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/sybase/generatedclasses/tables/records/TAuthorRecord.java @@ -0,0 +1,133 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.sybase.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + * + * An entity holding authors of books + */ +public class TAuthorRecord extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = 392674640; + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setId(java.lang.Integer value) { + setValue(org.jooq.test.sybase.generatedclasses.tables.TAuthor.T_AUTHOR.ID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.lang.Integer getId() { + return getValue(org.jooq.test.sybase.generatedclasses.tables.TAuthor.T_AUTHOR.ID); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.util.List fetchTBookListByAuthorId() { + return create() + .selectFrom(org.jooq.test.sybase.generatedclasses.tables.TBook.T_BOOK) + .where(org.jooq.test.sybase.generatedclasses.tables.TBook.T_BOOK.AUTHOR_ID.equal(getValue(org.jooq.test.sybase.generatedclasses.tables.TAuthor.T_AUTHOR.ID))) + .fetch(); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.util.List fetchTBookListByCoAuthorId() { + return create() + .selectFrom(org.jooq.test.sybase.generatedclasses.tables.TBook.T_BOOK) + .where(org.jooq.test.sybase.generatedclasses.tables.TBook.T_BOOK.CO_AUTHOR_ID.equal(getValue(org.jooq.test.sybase.generatedclasses.tables.TAuthor.T_AUTHOR.ID))) + .fetch(); + } + + /** + * An uncommented item + */ + public void setFirstName(java.lang.String value) { + setValue(org.jooq.test.sybase.generatedclasses.tables.TAuthor.T_AUTHOR.FIRST_NAME, value); + } + + /** + * An uncommented item + */ + public java.lang.String getFirstName() { + return getValue(org.jooq.test.sybase.generatedclasses.tables.TAuthor.T_AUTHOR.FIRST_NAME); + } + + /** + * An uncommented item + */ + public void setLastName(java.lang.String value) { + setValue(org.jooq.test.sybase.generatedclasses.tables.TAuthor.T_AUTHOR.LAST_NAME, value); + } + + /** + * An uncommented item + */ + public java.lang.String getLastName() { + return getValue(org.jooq.test.sybase.generatedclasses.tables.TAuthor.T_AUTHOR.LAST_NAME); + } + + /** + * An uncommented item + */ + public void setDateOfBirth(java.sql.Date value) { + setValue(org.jooq.test.sybase.generatedclasses.tables.TAuthor.T_AUTHOR.DATE_OF_BIRTH, value); + } + + /** + * An uncommented item + */ + public java.sql.Date getDateOfBirth() { + return getValue(org.jooq.test.sybase.generatedclasses.tables.TAuthor.T_AUTHOR.DATE_OF_BIRTH); + } + + /** + * An uncommented item + */ + public void setYearOfBirth(java.lang.Integer value) { + setValue(org.jooq.test.sybase.generatedclasses.tables.TAuthor.T_AUTHOR.YEAR_OF_BIRTH, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getYearOfBirth() { + return getValue(org.jooq.test.sybase.generatedclasses.tables.TAuthor.T_AUTHOR.YEAR_OF_BIRTH); + } + + /** + * An uncommented item + */ + public void setAddress(java.lang.String value) { + setValue(org.jooq.test.sybase.generatedclasses.tables.TAuthor.T_AUTHOR.ADDRESS, value); + } + + /** + * An uncommented item + */ + public java.lang.String getAddress() { + return getValue(org.jooq.test.sybase.generatedclasses.tables.TAuthor.T_AUTHOR.ADDRESS); + } + + /** + * Create a detached TAuthorRecord + */ + public TAuthorRecord() { + super(org.jooq.test.sybase.generatedclasses.tables.TAuthor.T_AUTHOR); + } +} diff --git a/jOOQ-test/src/org/jooq/test/sybase/generatedclasses/tables/records/TBookRecord.java b/jOOQ-test/src/org/jooq/test/sybase/generatedclasses/tables/records/TBookRecord.java new file mode 100644 index 00000000000..3bde079dced --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/sybase/generatedclasses/tables/records/TBookRecord.java @@ -0,0 +1,231 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.sybase.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + * + * An entity holding books + */ +public class TBookRecord extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = -496099882; + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setId(java.lang.Integer value) { + setValue(org.jooq.test.sybase.generatedclasses.tables.TBook.T_BOOK.ID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.lang.Integer getId() { + return getValue(org.jooq.test.sybase.generatedclasses.tables.TBook.T_BOOK.ID); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.util.List fetchTBookToBookStoreList() { + return create() + .selectFrom(org.jooq.test.sybase.generatedclasses.tables.TBookToBookStore.T_BOOK_TO_BOOK_STORE) + .where(org.jooq.test.sybase.generatedclasses.tables.TBookToBookStore.T_BOOK_TO_BOOK_STORE.BOOK_ID.equal(getValue(org.jooq.test.sybase.generatedclasses.tables.TBook.T_BOOK.ID))) + .fetch(); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT t_book__fk_t_book_author_id
+	 * FOREIGN KEY (AUTHOR_ID)
+	 * REFERENCES dba.t_author (ID)
+	 * 
+ */ + public void setAuthorId(java.lang.Integer value) { + setValue(org.jooq.test.sybase.generatedclasses.tables.TBook.T_BOOK.AUTHOR_ID, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT t_book__fk_t_book_author_id
+	 * FOREIGN KEY (AUTHOR_ID)
+	 * REFERENCES dba.t_author (ID)
+	 * 
+ */ + public java.lang.Integer getAuthorId() { + return getValue(org.jooq.test.sybase.generatedclasses.tables.TBook.T_BOOK.AUTHOR_ID); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT t_book__fk_t_book_author_id
+	 * FOREIGN KEY (AUTHOR_ID)
+	 * REFERENCES dba.t_author (ID)
+	 * 
+ */ + public org.jooq.test.sybase.generatedclasses.tables.records.TAuthorRecord fetchTAuthorByAuthorId() { + return create() + .selectFrom(org.jooq.test.sybase.generatedclasses.tables.TAuthor.T_AUTHOR) + .where(org.jooq.test.sybase.generatedclasses.tables.TAuthor.T_AUTHOR.ID.equal(getValue(org.jooq.test.sybase.generatedclasses.tables.TBook.T_BOOK.AUTHOR_ID))) + .fetchOne(); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT t_book__fk_t_book_co_author_id
+	 * FOREIGN KEY (CO_AUTHOR_ID)
+	 * REFERENCES dba.t_author (ID)
+	 * 
+ */ + public void setCoAuthorId(java.lang.Integer value) { + setValue(org.jooq.test.sybase.generatedclasses.tables.TBook.T_BOOK.CO_AUTHOR_ID, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT t_book__fk_t_book_co_author_id
+	 * FOREIGN KEY (CO_AUTHOR_ID)
+	 * REFERENCES dba.t_author (ID)
+	 * 
+ */ + public java.lang.Integer getCoAuthorId() { + return getValue(org.jooq.test.sybase.generatedclasses.tables.TBook.T_BOOK.CO_AUTHOR_ID); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT t_book__fk_t_book_co_author_id
+	 * FOREIGN KEY (CO_AUTHOR_ID)
+	 * REFERENCES dba.t_author (ID)
+	 * 
+ */ + public org.jooq.test.sybase.generatedclasses.tables.records.TAuthorRecord fetchTAuthorByCoAuthorId() { + return create() + .selectFrom(org.jooq.test.sybase.generatedclasses.tables.TAuthor.T_AUTHOR) + .where(org.jooq.test.sybase.generatedclasses.tables.TAuthor.T_AUTHOR.ID.equal(getValue(org.jooq.test.sybase.generatedclasses.tables.TBook.T_BOOK.CO_AUTHOR_ID))) + .fetchOne(); + } + + /** + * An uncommented item + */ + public void setDetailsId(java.lang.Integer value) { + setValue(org.jooq.test.sybase.generatedclasses.tables.TBook.T_BOOK.DETAILS_ID, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getDetailsId() { + return getValue(org.jooq.test.sybase.generatedclasses.tables.TBook.T_BOOK.DETAILS_ID); + } + + /** + * An uncommented item + */ + public void setTitle(java.lang.String value) { + setValue(org.jooq.test.sybase.generatedclasses.tables.TBook.T_BOOK.TITLE, value); + } + + /** + * An uncommented item + */ + public java.lang.String getTitle() { + return getValue(org.jooq.test.sybase.generatedclasses.tables.TBook.T_BOOK.TITLE); + } + + /** + * An uncommented item + */ + public void setPublishedIn(java.lang.Integer value) { + setValue(org.jooq.test.sybase.generatedclasses.tables.TBook.T_BOOK.PUBLISHED_IN, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getPublishedIn() { + return getValue(org.jooq.test.sybase.generatedclasses.tables.TBook.T_BOOK.PUBLISHED_IN); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT t_book__fk_t_book_language_id
+	 * FOREIGN KEY (LANGUAGE_ID)
+	 * REFERENCES dba.t_language (id)
+	 * 
+ */ + public void setLanguageId(org.jooq.test.sybase.generatedclasses.enums.TLanguage value) { + setValue(org.jooq.test.sybase.generatedclasses.tables.TBook.T_BOOK.LANGUAGE_ID, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT t_book__fk_t_book_language_id
+	 * FOREIGN KEY (LANGUAGE_ID)
+	 * REFERENCES dba.t_language (id)
+	 * 
+ */ + public org.jooq.test.sybase.generatedclasses.enums.TLanguage getLanguageId() { + return getValue(org.jooq.test.sybase.generatedclasses.tables.TBook.T_BOOK.LANGUAGE_ID); + } + + /** + * An uncommented item + */ + public void setContentText(java.lang.String value) { + setValue(org.jooq.test.sybase.generatedclasses.tables.TBook.T_BOOK.CONTENT_TEXT, value); + } + + /** + * An uncommented item + */ + public java.lang.String getContentText() { + return getValue(org.jooq.test.sybase.generatedclasses.tables.TBook.T_BOOK.CONTENT_TEXT); + } + + /** + * An uncommented item + */ + public void setContentPdf(byte[] value) { + setValue(org.jooq.test.sybase.generatedclasses.tables.TBook.T_BOOK.CONTENT_PDF, value); + } + + /** + * An uncommented item + */ + public byte[] getContentPdf() { + return getValue(org.jooq.test.sybase.generatedclasses.tables.TBook.T_BOOK.CONTENT_PDF); + } + + /** + * Create a detached TBookRecord + */ + public TBookRecord() { + super(org.jooq.test.sybase.generatedclasses.tables.TBook.T_BOOK); + } +} diff --git a/jOOQ-test/src/org/jooq/test/sybase/generatedclasses/tables/records/TBookStoreRecord.java b/jOOQ-test/src/org/jooq/test/sybase/generatedclasses/tables/records/TBookStoreRecord.java new file mode 100644 index 00000000000..7d5b5b2b284 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/sybase/generatedclasses/tables/records/TBookStoreRecord.java @@ -0,0 +1,45 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.sybase.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + * + * A book store + */ +public class TBookStoreRecord extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = 796994106; + + /** + * An uncommented item + */ + public void setName(java.lang.String value) { + setValue(org.jooq.test.sybase.generatedclasses.tables.TBookStore.T_BOOK_STORE.NAME, value); + } + + /** + * An uncommented item + */ + public java.lang.String getName() { + return getValue(org.jooq.test.sybase.generatedclasses.tables.TBookStore.T_BOOK_STORE.NAME); + } + + /** + * An uncommented item + */ + public java.util.List fetchTBookToBookStoreList() { + return create() + .selectFrom(org.jooq.test.sybase.generatedclasses.tables.TBookToBookStore.T_BOOK_TO_BOOK_STORE) + .where(org.jooq.test.sybase.generatedclasses.tables.TBookToBookStore.T_BOOK_TO_BOOK_STORE.BOOK_STORE_NAME.equal(getValue(org.jooq.test.sybase.generatedclasses.tables.TBookStore.T_BOOK_STORE.NAME))) + .fetch(); + } + + /** + * Create a detached TBookStoreRecord + */ + public TBookStoreRecord() { + super(org.jooq.test.sybase.generatedclasses.tables.TBookStore.T_BOOK_STORE); + } +} diff --git a/jOOQ-test/src/org/jooq/test/sybase/generatedclasses/tables/records/TBookToBookStoreRecord.java b/jOOQ-test/src/org/jooq/test/sybase/generatedclasses/tables/records/TBookToBookStoreRecord.java new file mode 100644 index 00000000000..db7df353659 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/sybase/generatedclasses/tables/records/TBookToBookStoreRecord.java @@ -0,0 +1,131 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.sybase.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + * + * An m:n relation between books and book stores + */ +public class TBookToBookStoreRecord extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = 415329347; + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT t_book_to_book_store__fk_b2bs_bs_name
+	 * FOREIGN KEY (book_store_name)
+	 * REFERENCES dba.t_book_store (name)
+	 * 
+ */ + public void setBookStoreName(java.lang.String value) { + setValue(org.jooq.test.sybase.generatedclasses.tables.TBookToBookStore.T_BOOK_TO_BOOK_STORE.BOOK_STORE_NAME, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT t_book_to_book_store__fk_b2bs_bs_name
+	 * FOREIGN KEY (book_store_name)
+	 * REFERENCES dba.t_book_store (name)
+	 * 
+ */ + public java.lang.String getBookStoreName() { + return getValue(org.jooq.test.sybase.generatedclasses.tables.TBookToBookStore.T_BOOK_TO_BOOK_STORE.BOOK_STORE_NAME); + } + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT t_book_to_book_store__fk_b2bs_bs_name
+	 * FOREIGN KEY (book_store_name)
+	 * REFERENCES dba.t_book_store (name)
+	 * 
+ */ + public org.jooq.test.sybase.generatedclasses.tables.records.TBookStoreRecord fetchTBookStore() { + return create() + .selectFrom(org.jooq.test.sybase.generatedclasses.tables.TBookStore.T_BOOK_STORE) + .where(org.jooq.test.sybase.generatedclasses.tables.TBookStore.T_BOOK_STORE.NAME.equal(getValue(org.jooq.test.sybase.generatedclasses.tables.TBookToBookStore.T_BOOK_TO_BOOK_STORE.BOOK_STORE_NAME))) + .fetchOne(); + } + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT t_book_to_book_store__fk_b2bs_b_id
+	 * FOREIGN KEY (book_id)
+	 * REFERENCES dba.t_book (ID)
+	 * 
+ */ + public void setBookId(java.lang.Integer value) { + setValue(org.jooq.test.sybase.generatedclasses.tables.TBookToBookStore.T_BOOK_TO_BOOK_STORE.BOOK_ID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT t_book_to_book_store__fk_b2bs_b_id
+	 * FOREIGN KEY (book_id)
+	 * REFERENCES dba.t_book (ID)
+	 * 
+ */ + public java.lang.Integer getBookId() { + return getValue(org.jooq.test.sybase.generatedclasses.tables.TBookToBookStore.T_BOOK_TO_BOOK_STORE.BOOK_ID); + } + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT t_book_to_book_store__fk_b2bs_b_id
+	 * FOREIGN KEY (book_id)
+	 * REFERENCES dba.t_book (ID)
+	 * 
+ */ + public org.jooq.test.sybase.generatedclasses.tables.records.TBookRecord fetchTBook() { + return create() + .selectFrom(org.jooq.test.sybase.generatedclasses.tables.TBook.T_BOOK) + .where(org.jooq.test.sybase.generatedclasses.tables.TBook.T_BOOK.ID.equal(getValue(org.jooq.test.sybase.generatedclasses.tables.TBookToBookStore.T_BOOK_TO_BOOK_STORE.BOOK_ID))) + .fetchOne(); + } + + /** + * An uncommented item + */ + public void setStock(java.lang.Integer value) { + setValue(org.jooq.test.sybase.generatedclasses.tables.TBookToBookStore.T_BOOK_TO_BOOK_STORE.STOCK, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getStock() { + return getValue(org.jooq.test.sybase.generatedclasses.tables.TBookToBookStore.T_BOOK_TO_BOOK_STORE.STOCK); + } + + /** + * Create a detached TBookToBookStoreRecord + */ + public TBookToBookStoreRecord() { + super(org.jooq.test.sybase.generatedclasses.tables.TBookToBookStore.T_BOOK_TO_BOOK_STORE); + } +} diff --git a/jOOQ-test/src/org/jooq/test/sybase/generatedclasses/tables/records/TBooleansRecord.java b/jOOQ-test/src/org/jooq/test/sybase/generatedclasses/tables/records/TBooleansRecord.java new file mode 100644 index 00000000000..0a2c99a7929 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/sybase/generatedclasses/tables/records/TBooleansRecord.java @@ -0,0 +1,177 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.sybase.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + */ +public class TBooleansRecord extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = -1525153267; + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setId(java.lang.Integer value) { + setValue(org.jooq.test.sybase.generatedclasses.tables.TBooleans.T_BOOLEANS.ID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.lang.Integer getId() { + return getValue(org.jooq.test.sybase.generatedclasses.tables.TBooleans.T_BOOLEANS.ID); + } + + /** + * An uncommented item + */ + public void setOneZero(org.jooq.test._.converters.Boolean_10 value) { + setValue(org.jooq.test.sybase.generatedclasses.tables.TBooleans.T_BOOLEANS.ONE_ZERO, value); + } + + /** + * An uncommented item + */ + public org.jooq.test._.converters.Boolean_10 getOneZero() { + return getValue(org.jooq.test.sybase.generatedclasses.tables.TBooleans.T_BOOLEANS.ONE_ZERO); + } + + /** + * An uncommented item + */ + public void setTrueFalseLc(org.jooq.test._.converters.Boolean_TF_LC value) { + setValue(org.jooq.test.sybase.generatedclasses.tables.TBooleans.T_BOOLEANS.TRUE_FALSE_LC, value); + } + + /** + * An uncommented item + */ + public org.jooq.test._.converters.Boolean_TF_LC getTrueFalseLc() { + return getValue(org.jooq.test.sybase.generatedclasses.tables.TBooleans.T_BOOLEANS.TRUE_FALSE_LC); + } + + /** + * An uncommented item + */ + public void setTrueFalseUc(org.jooq.test._.converters.Boolean_TF_UC value) { + setValue(org.jooq.test.sybase.generatedclasses.tables.TBooleans.T_BOOLEANS.TRUE_FALSE_UC, value); + } + + /** + * An uncommented item + */ + public org.jooq.test._.converters.Boolean_TF_UC getTrueFalseUc() { + return getValue(org.jooq.test.sybase.generatedclasses.tables.TBooleans.T_BOOLEANS.TRUE_FALSE_UC); + } + + /** + * An uncommented item + */ + public void setYesNoLc(org.jooq.test._.converters.Boolean_YES_NO_LC value) { + setValue(org.jooq.test.sybase.generatedclasses.tables.TBooleans.T_BOOLEANS.YES_NO_LC, value); + } + + /** + * An uncommented item + */ + public org.jooq.test._.converters.Boolean_YES_NO_LC getYesNoLc() { + return getValue(org.jooq.test.sybase.generatedclasses.tables.TBooleans.T_BOOLEANS.YES_NO_LC); + } + + /** + * An uncommented item + */ + public void setYesNoUc(org.jooq.test._.converters.Boolean_YES_NO_UC value) { + setValue(org.jooq.test.sybase.generatedclasses.tables.TBooleans.T_BOOLEANS.YES_NO_UC, value); + } + + /** + * An uncommented item + */ + public org.jooq.test._.converters.Boolean_YES_NO_UC getYesNoUc() { + return getValue(org.jooq.test.sybase.generatedclasses.tables.TBooleans.T_BOOLEANS.YES_NO_UC); + } + + /** + * An uncommented item + */ + public void setYNLc(org.jooq.test._.converters.Boolean_YN_LC value) { + setValue(org.jooq.test.sybase.generatedclasses.tables.TBooleans.T_BOOLEANS.Y_N_LC, value); + } + + /** + * An uncommented item + */ + public org.jooq.test._.converters.Boolean_YN_LC getYNLc() { + return getValue(org.jooq.test.sybase.generatedclasses.tables.TBooleans.T_BOOLEANS.Y_N_LC); + } + + /** + * An uncommented item + */ + public void setYNUc(org.jooq.test._.converters.Boolean_YN_UC value) { + setValue(org.jooq.test.sybase.generatedclasses.tables.TBooleans.T_BOOLEANS.Y_N_UC, value); + } + + /** + * An uncommented item + */ + public org.jooq.test._.converters.Boolean_YN_UC getYNUc() { + return getValue(org.jooq.test.sybase.generatedclasses.tables.TBooleans.T_BOOLEANS.Y_N_UC); + } + + /** + * An uncommented item + */ + public void setVcBoolean(java.lang.Boolean value) { + setValue(org.jooq.test.sybase.generatedclasses.tables.TBooleans.T_BOOLEANS.VC_BOOLEAN, value); + } + + /** + * An uncommented item + */ + public java.lang.Boolean getVcBoolean() { + return getValue(org.jooq.test.sybase.generatedclasses.tables.TBooleans.T_BOOLEANS.VC_BOOLEAN); + } + + /** + * An uncommented item + */ + public void setCBoolean(java.lang.Boolean value) { + setValue(org.jooq.test.sybase.generatedclasses.tables.TBooleans.T_BOOLEANS.C_BOOLEAN, value); + } + + /** + * An uncommented item + */ + public java.lang.Boolean getCBoolean() { + return getValue(org.jooq.test.sybase.generatedclasses.tables.TBooleans.T_BOOLEANS.C_BOOLEAN); + } + + /** + * An uncommented item + */ + public void setNBoolean(java.lang.Boolean value) { + setValue(org.jooq.test.sybase.generatedclasses.tables.TBooleans.T_BOOLEANS.N_BOOLEAN, value); + } + + /** + * An uncommented item + */ + public java.lang.Boolean getNBoolean() { + return getValue(org.jooq.test.sybase.generatedclasses.tables.TBooleans.T_BOOLEANS.N_BOOLEAN); + } + + /** + * Create a detached TBooleansRecord + */ + public TBooleansRecord() { + super(org.jooq.test.sybase.generatedclasses.tables.TBooleans.T_BOOLEANS); + } +} diff --git a/jOOQ-test/src/org/jooq/test/sybase/generatedclasses/tables/records/TDatesRecord.java b/jOOQ-test/src/org/jooq/test/sybase/generatedclasses/tables/records/TDatesRecord.java new file mode 100644 index 00000000000..c0263f29dcd --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/sybase/generatedclasses/tables/records/TDatesRecord.java @@ -0,0 +1,107 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.sybase.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + */ +public class TDatesRecord extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = -2095066435; + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setId(java.lang.Integer value) { + setValue(org.jooq.test.sybase.generatedclasses.tables.TDates.T_DATES.ID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.lang.Integer getId() { + return getValue(org.jooq.test.sybase.generatedclasses.tables.TDates.T_DATES.ID); + } + + /** + * An uncommented item + */ + public void setD(java.sql.Date value) { + setValue(org.jooq.test.sybase.generatedclasses.tables.TDates.T_DATES.D, value); + } + + /** + * An uncommented item + */ + public java.sql.Date getD() { + return getValue(org.jooq.test.sybase.generatedclasses.tables.TDates.T_DATES.D); + } + + /** + * An uncommented item + */ + public void setT(java.sql.Time value) { + setValue(org.jooq.test.sybase.generatedclasses.tables.TDates.T_DATES.T, value); + } + + /** + * An uncommented item + */ + public java.sql.Time getT() { + return getValue(org.jooq.test.sybase.generatedclasses.tables.TDates.T_DATES.T); + } + + /** + * An uncommented item + */ + public void setTs(java.sql.Timestamp value) { + setValue(org.jooq.test.sybase.generatedclasses.tables.TDates.T_DATES.TS, value); + } + + /** + * An uncommented item + */ + public java.sql.Timestamp getTs() { + return getValue(org.jooq.test.sybase.generatedclasses.tables.TDates.T_DATES.TS); + } + + /** + * An uncommented item + */ + public void setDInt(java.lang.Integer value) { + setValue(org.jooq.test.sybase.generatedclasses.tables.TDates.T_DATES.D_INT, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getDInt() { + return getValue(org.jooq.test.sybase.generatedclasses.tables.TDates.T_DATES.D_INT); + } + + /** + * An uncommented item + */ + public void setTsBigint(java.lang.Long value) { + setValue(org.jooq.test.sybase.generatedclasses.tables.TDates.T_DATES.TS_BIGINT, value); + } + + /** + * An uncommented item + */ + public java.lang.Long getTsBigint() { + return getValue(org.jooq.test.sybase.generatedclasses.tables.TDates.T_DATES.TS_BIGINT); + } + + /** + * Create a detached TDatesRecord + */ + public TDatesRecord() { + super(org.jooq.test.sybase.generatedclasses.tables.TDates.T_DATES); + } +} diff --git a/jOOQ-test/src/org/jooq/test/sybase/generatedclasses/tables/records/TIdentityPkRecord.java b/jOOQ-test/src/org/jooq/test/sybase/generatedclasses/tables/records/TIdentityPkRecord.java new file mode 100644 index 00000000000..45658d20560 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/sybase/generatedclasses/tables/records/TIdentityPkRecord.java @@ -0,0 +1,51 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.sybase.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + */ +public class TIdentityPkRecord extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = 690873090; + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setId(java.lang.Integer value) { + setValue(org.jooq.test.sybase.generatedclasses.tables.TIdentityPk.T_IDENTITY_PK.ID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.lang.Integer getId() { + return getValue(org.jooq.test.sybase.generatedclasses.tables.TIdentityPk.T_IDENTITY_PK.ID); + } + + /** + * An uncommented item + */ + public void setVal(java.lang.Integer value) { + setValue(org.jooq.test.sybase.generatedclasses.tables.TIdentityPk.T_IDENTITY_PK.VAL, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getVal() { + return getValue(org.jooq.test.sybase.generatedclasses.tables.TIdentityPk.T_IDENTITY_PK.VAL); + } + + /** + * Create a detached TIdentityPkRecord + */ + public TIdentityPkRecord() { + super(org.jooq.test.sybase.generatedclasses.tables.TIdentityPk.T_IDENTITY_PK); + } +} diff --git a/jOOQ-test/src/org/jooq/test/sybase/generatedclasses/tables/records/TIdentityRecord.java b/jOOQ-test/src/org/jooq/test/sybase/generatedclasses/tables/records/TIdentityRecord.java new file mode 100644 index 00000000000..30c49976391 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/sybase/generatedclasses/tables/records/TIdentityRecord.java @@ -0,0 +1,47 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.sybase.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + */ +public class TIdentityRecord extends org.jooq.impl.TableRecordImpl { + + private static final long serialVersionUID = -114328545; + + /** + * An uncommented item + */ + public void setId(java.lang.Integer value) { + setValue(org.jooq.test.sybase.generatedclasses.tables.TIdentity.T_IDENTITY.ID, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getId() { + return getValue(org.jooq.test.sybase.generatedclasses.tables.TIdentity.T_IDENTITY.ID); + } + + /** + * An uncommented item + */ + public void setVal(java.lang.Integer value) { + setValue(org.jooq.test.sybase.generatedclasses.tables.TIdentity.T_IDENTITY.VAL, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getVal() { + return getValue(org.jooq.test.sybase.generatedclasses.tables.TIdentity.T_IDENTITY.VAL); + } + + /** + * Create a detached TIdentityRecord + */ + public TIdentityRecord() { + super(org.jooq.test.sybase.generatedclasses.tables.TIdentity.T_IDENTITY); + } +} diff --git a/jOOQ-test/src/org/jooq/test/sybase/generatedclasses/tables/records/TTriggersRecord.java b/jOOQ-test/src/org/jooq/test/sybase/generatedclasses/tables/records/TTriggersRecord.java new file mode 100644 index 00000000000..ab48ffe31de --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/sybase/generatedclasses/tables/records/TTriggersRecord.java @@ -0,0 +1,65 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.sybase.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + */ +public class TTriggersRecord extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = -837102493; + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setIdGenerated(java.lang.Integer value) { + setValue(org.jooq.test.sybase.generatedclasses.tables.TTriggers.T_TRIGGERS.ID_GENERATED, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.lang.Integer getIdGenerated() { + return getValue(org.jooq.test.sybase.generatedclasses.tables.TTriggers.T_TRIGGERS.ID_GENERATED); + } + + /** + * An uncommented item + */ + public void setId(java.lang.Integer value) { + setValue(org.jooq.test.sybase.generatedclasses.tables.TTriggers.T_TRIGGERS.ID, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getId() { + return getValue(org.jooq.test.sybase.generatedclasses.tables.TTriggers.T_TRIGGERS.ID); + } + + /** + * An uncommented item + */ + public void setCounter(java.lang.Integer value) { + setValue(org.jooq.test.sybase.generatedclasses.tables.TTriggers.T_TRIGGERS.COUNTER, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getCounter() { + return getValue(org.jooq.test.sybase.generatedclasses.tables.TTriggers.T_TRIGGERS.COUNTER); + } + + /** + * Create a detached TTriggersRecord + */ + public TTriggersRecord() { + super(org.jooq.test.sybase.generatedclasses.tables.TTriggers.T_TRIGGERS); + } +} diff --git a/jOOQ-test/src/org/jooq/test/sybase/generatedclasses/tables/records/T_639NumbersTableRecord.java b/jOOQ-test/src/org/jooq/test/sybase/generatedclasses/tables/records/T_639NumbersTableRecord.java new file mode 100644 index 00000000000..c3787664806 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/sybase/generatedclasses/tables/records/T_639NumbersTableRecord.java @@ -0,0 +1,205 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.sybase.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + */ +public class T_639NumbersTableRecord extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = 1403306518; + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setId(java.lang.Integer value) { + setValue(org.jooq.test.sybase.generatedclasses.tables.T_639NumbersTable.T_639_NUMBERS_TABLE.ID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.lang.Integer getId() { + return getValue(org.jooq.test.sybase.generatedclasses.tables.T_639NumbersTable.T_639_NUMBERS_TABLE.ID); + } + + /** + * An uncommented item + */ + public void setByte(java.lang.Byte value) { + setValue(org.jooq.test.sybase.generatedclasses.tables.T_639NumbersTable.T_639_NUMBERS_TABLE.BYTE, value); + } + + /** + * An uncommented item + */ + public java.lang.Byte getByte() { + return getValue(org.jooq.test.sybase.generatedclasses.tables.T_639NumbersTable.T_639_NUMBERS_TABLE.BYTE); + } + + /** + * An uncommented item + */ + public void setShort(java.lang.Short value) { + setValue(org.jooq.test.sybase.generatedclasses.tables.T_639NumbersTable.T_639_NUMBERS_TABLE.SHORT, value); + } + + /** + * An uncommented item + */ + public java.lang.Short getShort() { + return getValue(org.jooq.test.sybase.generatedclasses.tables.T_639NumbersTable.T_639_NUMBERS_TABLE.SHORT); + } + + /** + * An uncommented item + */ + public void setInteger(java.lang.Integer value) { + setValue(org.jooq.test.sybase.generatedclasses.tables.T_639NumbersTable.T_639_NUMBERS_TABLE.INTEGER, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getInteger() { + return getValue(org.jooq.test.sybase.generatedclasses.tables.T_639NumbersTable.T_639_NUMBERS_TABLE.INTEGER); + } + + /** + * An uncommented item + */ + public void setLong(java.lang.Long value) { + setValue(org.jooq.test.sybase.generatedclasses.tables.T_639NumbersTable.T_639_NUMBERS_TABLE.LONG, value); + } + + /** + * An uncommented item + */ + public java.lang.Long getLong() { + return getValue(org.jooq.test.sybase.generatedclasses.tables.T_639NumbersTable.T_639_NUMBERS_TABLE.LONG); + } + + /** + * An uncommented item + */ + public void setByteDecimal(java.lang.Byte value) { + setValue(org.jooq.test.sybase.generatedclasses.tables.T_639NumbersTable.T_639_NUMBERS_TABLE.BYTE_DECIMAL, value); + } + + /** + * An uncommented item + */ + public java.lang.Byte getByteDecimal() { + return getValue(org.jooq.test.sybase.generatedclasses.tables.T_639NumbersTable.T_639_NUMBERS_TABLE.BYTE_DECIMAL); + } + + /** + * An uncommented item + */ + public void setShortDecimal(java.lang.Short value) { + setValue(org.jooq.test.sybase.generatedclasses.tables.T_639NumbersTable.T_639_NUMBERS_TABLE.SHORT_DECIMAL, value); + } + + /** + * An uncommented item + */ + public java.lang.Short getShortDecimal() { + return getValue(org.jooq.test.sybase.generatedclasses.tables.T_639NumbersTable.T_639_NUMBERS_TABLE.SHORT_DECIMAL); + } + + /** + * An uncommented item + */ + public void setIntegerDecimal(java.lang.Integer value) { + setValue(org.jooq.test.sybase.generatedclasses.tables.T_639NumbersTable.T_639_NUMBERS_TABLE.INTEGER_DECIMAL, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getIntegerDecimal() { + return getValue(org.jooq.test.sybase.generatedclasses.tables.T_639NumbersTable.T_639_NUMBERS_TABLE.INTEGER_DECIMAL); + } + + /** + * An uncommented item + */ + public void setLongDecimal(java.lang.Long value) { + setValue(org.jooq.test.sybase.generatedclasses.tables.T_639NumbersTable.T_639_NUMBERS_TABLE.LONG_DECIMAL, value); + } + + /** + * An uncommented item + */ + public java.lang.Long getLongDecimal() { + return getValue(org.jooq.test.sybase.generatedclasses.tables.T_639NumbersTable.T_639_NUMBERS_TABLE.LONG_DECIMAL); + } + + /** + * An uncommented item + */ + public void setBigInteger(java.math.BigInteger value) { + setValue(org.jooq.test.sybase.generatedclasses.tables.T_639NumbersTable.T_639_NUMBERS_TABLE.BIG_INTEGER, value); + } + + /** + * An uncommented item + */ + public java.math.BigInteger getBigInteger() { + return getValue(org.jooq.test.sybase.generatedclasses.tables.T_639NumbersTable.T_639_NUMBERS_TABLE.BIG_INTEGER); + } + + /** + * An uncommented item + */ + public void setBigDecimal(java.math.BigDecimal value) { + setValue(org.jooq.test.sybase.generatedclasses.tables.T_639NumbersTable.T_639_NUMBERS_TABLE.BIG_DECIMAL, value); + } + + /** + * An uncommented item + */ + public java.math.BigDecimal getBigDecimal() { + return getValue(org.jooq.test.sybase.generatedclasses.tables.T_639NumbersTable.T_639_NUMBERS_TABLE.BIG_DECIMAL); + } + + /** + * An uncommented item + */ + public void setFloat(java.lang.Double value) { + setValue(org.jooq.test.sybase.generatedclasses.tables.T_639NumbersTable.T_639_NUMBERS_TABLE.FLOAT, value); + } + + /** + * An uncommented item + */ + public java.lang.Double getFloat() { + return getValue(org.jooq.test.sybase.generatedclasses.tables.T_639NumbersTable.T_639_NUMBERS_TABLE.FLOAT); + } + + /** + * An uncommented item + */ + public void setDouble(java.lang.Double value) { + setValue(org.jooq.test.sybase.generatedclasses.tables.T_639NumbersTable.T_639_NUMBERS_TABLE.DOUBLE, value); + } + + /** + * An uncommented item + */ + public java.lang.Double getDouble() { + return getValue(org.jooq.test.sybase.generatedclasses.tables.T_639NumbersTable.T_639_NUMBERS_TABLE.DOUBLE); + } + + /** + * Create a detached T_639NumbersTableRecord + */ + public T_639NumbersTableRecord() { + super(org.jooq.test.sybase.generatedclasses.tables.T_639NumbersTable.T_639_NUMBERS_TABLE); + } +} diff --git a/jOOQ-test/src/org/jooq/test/sybase/generatedclasses/tables/records/T_658RefRecord.java b/jOOQ-test/src/org/jooq/test/sybase/generatedclasses/tables/records/T_658RefRecord.java new file mode 100644 index 00000000000..4c6c5233017 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/sybase/generatedclasses/tables/records/T_658RefRecord.java @@ -0,0 +1,175 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.sybase.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + */ +public class T_658RefRecord extends org.jooq.impl.TableRecordImpl { + + private static final long serialVersionUID = -1671042585; + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT t_658_ref__fk_t_658_11
+	 * FOREIGN KEY (ref_11)
+	 * REFERENCES dba.t_658_11 (id)
+	 * 
+ */ + public void setRef_11(org.jooq.test.sybase.generatedclasses.enums.T_658_11 value) { + setValue(org.jooq.test.sybase.generatedclasses.tables.T_658Ref.T_658_REF.REF_11, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT t_658_ref__fk_t_658_11
+	 * FOREIGN KEY (ref_11)
+	 * REFERENCES dba.t_658_11 (id)
+	 * 
+ */ + public org.jooq.test.sybase.generatedclasses.enums.T_658_11 getRef_11() { + return getValue(org.jooq.test.sybase.generatedclasses.tables.T_658Ref.T_658_REF.REF_11); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT t_658_ref__fk_t_658_21
+	 * FOREIGN KEY (ref_21)
+	 * REFERENCES dba.t_658_21 (id)
+	 * 
+ */ + public void setRef_21(org.jooq.test.sybase.generatedclasses.enums.T_658_21 value) { + setValue(org.jooq.test.sybase.generatedclasses.tables.T_658Ref.T_658_REF.REF_21, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT t_658_ref__fk_t_658_21
+	 * FOREIGN KEY (ref_21)
+	 * REFERENCES dba.t_658_21 (id)
+	 * 
+ */ + public org.jooq.test.sybase.generatedclasses.enums.T_658_21 getRef_21() { + return getValue(org.jooq.test.sybase.generatedclasses.tables.T_658Ref.T_658_REF.REF_21); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT t_658_ref__fk_t_658_31
+	 * FOREIGN KEY (ref_31)
+	 * REFERENCES dba.t_658_31 (id)
+	 * 
+ */ + public void setRef_31(org.jooq.test.sybase.generatedclasses.enums.T_658_31 value) { + setValue(org.jooq.test.sybase.generatedclasses.tables.T_658Ref.T_658_REF.REF_31, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT t_658_ref__fk_t_658_31
+	 * FOREIGN KEY (ref_31)
+	 * REFERENCES dba.t_658_31 (id)
+	 * 
+ */ + public org.jooq.test.sybase.generatedclasses.enums.T_658_31 getRef_31() { + return getValue(org.jooq.test.sybase.generatedclasses.tables.T_658Ref.T_658_REF.REF_31); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT t_658_ref__fk_t_658_12
+	 * FOREIGN KEY (ref_12)
+	 * REFERENCES dba.t_658_12 (id)
+	 * 
+ */ + public void setRef_12(org.jooq.test.sybase.generatedclasses.enums.T_658_12 value) { + setValue(org.jooq.test.sybase.generatedclasses.tables.T_658Ref.T_658_REF.REF_12, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT t_658_ref__fk_t_658_12
+	 * FOREIGN KEY (ref_12)
+	 * REFERENCES dba.t_658_12 (id)
+	 * 
+ */ + public org.jooq.test.sybase.generatedclasses.enums.T_658_12 getRef_12() { + return getValue(org.jooq.test.sybase.generatedclasses.tables.T_658Ref.T_658_REF.REF_12); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT t_658_ref__fk_t_658_22
+	 * FOREIGN KEY (ref_22)
+	 * REFERENCES dba.t_658_22 (id)
+	 * 
+ */ + public void setRef_22(org.jooq.test.sybase.generatedclasses.enums.T_658_22 value) { + setValue(org.jooq.test.sybase.generatedclasses.tables.T_658Ref.T_658_REF.REF_22, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT t_658_ref__fk_t_658_22
+	 * FOREIGN KEY (ref_22)
+	 * REFERENCES dba.t_658_22 (id)
+	 * 
+ */ + public org.jooq.test.sybase.generatedclasses.enums.T_658_22 getRef_22() { + return getValue(org.jooq.test.sybase.generatedclasses.tables.T_658Ref.T_658_REF.REF_22); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT t_658_ref__fk_t_658_32
+	 * FOREIGN KEY (ref_32)
+	 * REFERENCES dba.t_658_32 (id)
+	 * 
+ */ + public void setRef_32(org.jooq.test.sybase.generatedclasses.enums.T_658_32 value) { + setValue(org.jooq.test.sybase.generatedclasses.tables.T_658Ref.T_658_REF.REF_32, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT t_658_ref__fk_t_658_32
+	 * FOREIGN KEY (ref_32)
+	 * REFERENCES dba.t_658_32 (id)
+	 * 
+ */ + public org.jooq.test.sybase.generatedclasses.enums.T_658_32 getRef_32() { + return getValue(org.jooq.test.sybase.generatedclasses.tables.T_658Ref.T_658_REF.REF_32); + } + + /** + * Create a detached T_658RefRecord + */ + public T_658RefRecord() { + super(org.jooq.test.sybase.generatedclasses.tables.T_658Ref.T_658_REF); + } +} diff --git a/jOOQ-test/src/org/jooq/test/sybase/generatedclasses/tables/records/T_725LobTestRecord.java b/jOOQ-test/src/org/jooq/test/sybase/generatedclasses/tables/records/T_725LobTestRecord.java new file mode 100644 index 00000000000..db02b49ee18 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/sybase/generatedclasses/tables/records/T_725LobTestRecord.java @@ -0,0 +1,51 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.sybase.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + */ +public class T_725LobTestRecord extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = 990897838; + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setId(java.lang.Integer value) { + setValue(org.jooq.test.sybase.generatedclasses.tables.T_725LobTest.T_725_LOB_TEST.ID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.lang.Integer getId() { + return getValue(org.jooq.test.sybase.generatedclasses.tables.T_725LobTest.T_725_LOB_TEST.ID); + } + + /** + * An uncommented item + */ + public void setLob(byte[] value) { + setValue(org.jooq.test.sybase.generatedclasses.tables.T_725LobTest.T_725_LOB_TEST.LOB, value); + } + + /** + * An uncommented item + */ + public byte[] getLob() { + return getValue(org.jooq.test.sybase.generatedclasses.tables.T_725LobTest.T_725_LOB_TEST.LOB); + } + + /** + * Create a detached T_725LobTestRecord + */ + public T_725LobTestRecord() { + super(org.jooq.test.sybase.generatedclasses.tables.T_725LobTest.T_725_LOB_TEST); + } +} diff --git a/jOOQ-test/src/org/jooq/test/sybase/generatedclasses/tables/records/T_785Record.java b/jOOQ-test/src/org/jooq/test/sybase/generatedclasses/tables/records/T_785Record.java new file mode 100644 index 00000000000..8efbf1340e9 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/sybase/generatedclasses/tables/records/T_785Record.java @@ -0,0 +1,61 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.sybase.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + */ +public class T_785Record extends org.jooq.impl.TableRecordImpl { + + private static final long serialVersionUID = -684719594; + + /** + * An uncommented item + */ + public void setId(java.lang.Integer value) { + setValue(org.jooq.test.sybase.generatedclasses.tables.T_785.T_785.ID, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getId() { + return getValue(org.jooq.test.sybase.generatedclasses.tables.T_785.T_785.ID); + } + + /** + * An uncommented item + */ + public void setName(java.lang.String value) { + setValue(org.jooq.test.sybase.generatedclasses.tables.T_785.T_785.NAME, value); + } + + /** + * An uncommented item + */ + public java.lang.String getName() { + return getValue(org.jooq.test.sybase.generatedclasses.tables.T_785.T_785.NAME); + } + + /** + * An uncommented item + */ + public void setValue(java.lang.String value) { + setValue(org.jooq.test.sybase.generatedclasses.tables.T_785.T_785.VALUE, value); + } + + /** + * An uncommented item + */ + public java.lang.String getValue() { + return getValue(org.jooq.test.sybase.generatedclasses.tables.T_785.T_785.VALUE); + } + + /** + * Create a detached T_785Record + */ + public T_785Record() { + super(org.jooq.test.sybase.generatedclasses.tables.T_785.T_785); + } +} diff --git a/jOOQ-test/src/org/jooq/test/sybase/generatedclasses/tables/records/T_986_1Record.java b/jOOQ-test/src/org/jooq/test/sybase/generatedclasses/tables/records/T_986_1Record.java new file mode 100644 index 00000000000..04314f8546c --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/sybase/generatedclasses/tables/records/T_986_1Record.java @@ -0,0 +1,67 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.sybase.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + */ +public class T_986_1Record extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = 2117636347; + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT t_986_1__fk_986
+	 * FOREIGN KEY (REF)
+	 * REFERENCES dba.x_unused (ID)
+	 * 
+ */ + public void setRef(java.lang.Integer value) { + setValue(org.jooq.test.sybase.generatedclasses.tables.T_986_1.T_986_1.REF, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT t_986_1__fk_986
+	 * FOREIGN KEY (REF)
+	 * REFERENCES dba.x_unused (ID)
+	 * 
+ */ + public java.lang.Integer getRef() { + return getValue(org.jooq.test.sybase.generatedclasses.tables.T_986_1.T_986_1.REF); + } + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT t_986_1__fk_986
+	 * FOREIGN KEY (REF)
+	 * REFERENCES dba.x_unused (ID)
+	 * 
+ */ + public org.jooq.test.sybase.generatedclasses.tables.records.XUnusedRecord fetchXUnused() { + return create() + .selectFrom(org.jooq.test.sybase.generatedclasses.tables.XUnused.X_UNUSED) + .where(org.jooq.test.sybase.generatedclasses.tables.XUnused.X_UNUSED.ID.equal(getValue(org.jooq.test.sybase.generatedclasses.tables.T_986_1.T_986_1.REF))) + .fetchOne(); + } + + /** + * Create a detached T_986_1Record + */ + public T_986_1Record() { + super(org.jooq.test.sybase.generatedclasses.tables.T_986_1.T_986_1); + } +} diff --git a/jOOQ-test/src/org/jooq/test/sybase/generatedclasses/tables/records/T_986_2Record.java b/jOOQ-test/src/org/jooq/test/sybase/generatedclasses/tables/records/T_986_2Record.java new file mode 100644 index 00000000000..2842e1be861 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/sybase/generatedclasses/tables/records/T_986_2Record.java @@ -0,0 +1,67 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.sybase.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + */ +public class T_986_2Record extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = -1160990718; + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT t_986_2__fk_986
+	 * FOREIGN KEY (REF)
+	 * REFERENCES dba.x_unused (ID)
+	 * 
+ */ + public void setRef(java.lang.Integer value) { + setValue(org.jooq.test.sybase.generatedclasses.tables.T_986_2.T_986_2.REF, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT t_986_2__fk_986
+	 * FOREIGN KEY (REF)
+	 * REFERENCES dba.x_unused (ID)
+	 * 
+ */ + public java.lang.Integer getRef() { + return getValue(org.jooq.test.sybase.generatedclasses.tables.T_986_2.T_986_2.REF); + } + + /** + * An uncommented item + * + * PRIMARY KEY + *

+ *

+	 * CONSTRAINT t_986_2__fk_986
+	 * FOREIGN KEY (REF)
+	 * REFERENCES dba.x_unused (ID)
+	 * 
+ */ + public org.jooq.test.sybase.generatedclasses.tables.records.XUnusedRecord fetchXUnused() { + return create() + .selectFrom(org.jooq.test.sybase.generatedclasses.tables.XUnused.X_UNUSED) + .where(org.jooq.test.sybase.generatedclasses.tables.XUnused.X_UNUSED.ID.equal(getValue(org.jooq.test.sybase.generatedclasses.tables.T_986_2.T_986_2.REF))) + .fetchOne(); + } + + /** + * Create a detached T_986_2Record + */ + public T_986_2Record() { + super(org.jooq.test.sybase.generatedclasses.tables.T_986_2.T_986_2); + } +} diff --git a/jOOQ-test/src/org/jooq/test/sybase/generatedclasses/tables/records/VAuthorRecord.java b/jOOQ-test/src/org/jooq/test/sybase/generatedclasses/tables/records/VAuthorRecord.java new file mode 100644 index 00000000000..299c010e3c9 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/sybase/generatedclasses/tables/records/VAuthorRecord.java @@ -0,0 +1,103 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.sybase.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + */ +public class VAuthorRecord extends org.jooq.impl.TableRecordImpl { + + private static final long serialVersionUID = -454724819; + + /** + * An uncommented item + */ + public void setId(java.lang.Integer value) { + setValue(org.jooq.test.sybase.generatedclasses.tables.VAuthor.V_AUTHOR.ID, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getId() { + return getValue(org.jooq.test.sybase.generatedclasses.tables.VAuthor.V_AUTHOR.ID); + } + + /** + * An uncommented item + */ + public void setFirstName(java.lang.String value) { + setValue(org.jooq.test.sybase.generatedclasses.tables.VAuthor.V_AUTHOR.FIRST_NAME, value); + } + + /** + * An uncommented item + */ + public java.lang.String getFirstName() { + return getValue(org.jooq.test.sybase.generatedclasses.tables.VAuthor.V_AUTHOR.FIRST_NAME); + } + + /** + * An uncommented item + */ + public void setLastName(java.lang.String value) { + setValue(org.jooq.test.sybase.generatedclasses.tables.VAuthor.V_AUTHOR.LAST_NAME, value); + } + + /** + * An uncommented item + */ + public java.lang.String getLastName() { + return getValue(org.jooq.test.sybase.generatedclasses.tables.VAuthor.V_AUTHOR.LAST_NAME); + } + + /** + * An uncommented item + */ + public void setDateOfBirth(java.sql.Date value) { + setValue(org.jooq.test.sybase.generatedclasses.tables.VAuthor.V_AUTHOR.DATE_OF_BIRTH, value); + } + + /** + * An uncommented item + */ + public java.sql.Date getDateOfBirth() { + return getValue(org.jooq.test.sybase.generatedclasses.tables.VAuthor.V_AUTHOR.DATE_OF_BIRTH); + } + + /** + * An uncommented item + */ + public void setYearOfBirth(java.lang.Integer value) { + setValue(org.jooq.test.sybase.generatedclasses.tables.VAuthor.V_AUTHOR.YEAR_OF_BIRTH, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getYearOfBirth() { + return getValue(org.jooq.test.sybase.generatedclasses.tables.VAuthor.V_AUTHOR.YEAR_OF_BIRTH); + } + + /** + * An uncommented item + */ + public void setAddress(java.lang.String value) { + setValue(org.jooq.test.sybase.generatedclasses.tables.VAuthor.V_AUTHOR.ADDRESS, value); + } + + /** + * An uncommented item + */ + public java.lang.String getAddress() { + return getValue(org.jooq.test.sybase.generatedclasses.tables.VAuthor.V_AUTHOR.ADDRESS); + } + + /** + * Create a detached VAuthorRecord + */ + public VAuthorRecord() { + super(org.jooq.test.sybase.generatedclasses.tables.VAuthor.V_AUTHOR); + } +} diff --git a/jOOQ-test/src/org/jooq/test/sybase/generatedclasses/tables/records/VBookRecord.java b/jOOQ-test/src/org/jooq/test/sybase/generatedclasses/tables/records/VBookRecord.java new file mode 100644 index 00000000000..f6aa47aee09 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/sybase/generatedclasses/tables/records/VBookRecord.java @@ -0,0 +1,145 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.sybase.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + */ +public class VBookRecord extends org.jooq.impl.TableRecordImpl { + + private static final long serialVersionUID = -1212096741; + + /** + * An uncommented item + */ + public void setId(java.lang.Integer value) { + setValue(org.jooq.test.sybase.generatedclasses.tables.VBook.V_BOOK.ID, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getId() { + return getValue(org.jooq.test.sybase.generatedclasses.tables.VBook.V_BOOK.ID); + } + + /** + * An uncommented item + */ + public void setAuthorId(java.lang.Integer value) { + setValue(org.jooq.test.sybase.generatedclasses.tables.VBook.V_BOOK.AUTHOR_ID, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getAuthorId() { + return getValue(org.jooq.test.sybase.generatedclasses.tables.VBook.V_BOOK.AUTHOR_ID); + } + + /** + * An uncommented item + */ + public void setCoAuthorId(java.lang.Integer value) { + setValue(org.jooq.test.sybase.generatedclasses.tables.VBook.V_BOOK.CO_AUTHOR_ID, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getCoAuthorId() { + return getValue(org.jooq.test.sybase.generatedclasses.tables.VBook.V_BOOK.CO_AUTHOR_ID); + } + + /** + * An uncommented item + */ + public void setDetailsId(java.lang.Integer value) { + setValue(org.jooq.test.sybase.generatedclasses.tables.VBook.V_BOOK.DETAILS_ID, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getDetailsId() { + return getValue(org.jooq.test.sybase.generatedclasses.tables.VBook.V_BOOK.DETAILS_ID); + } + + /** + * An uncommented item + */ + public void setTitle(java.lang.String value) { + setValue(org.jooq.test.sybase.generatedclasses.tables.VBook.V_BOOK.TITLE, value); + } + + /** + * An uncommented item + */ + public java.lang.String getTitle() { + return getValue(org.jooq.test.sybase.generatedclasses.tables.VBook.V_BOOK.TITLE); + } + + /** + * An uncommented item + */ + public void setPublishedIn(java.lang.Integer value) { + setValue(org.jooq.test.sybase.generatedclasses.tables.VBook.V_BOOK.PUBLISHED_IN, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getPublishedIn() { + return getValue(org.jooq.test.sybase.generatedclasses.tables.VBook.V_BOOK.PUBLISHED_IN); + } + + /** + * An uncommented item + */ + public void setLanguageId(java.lang.Integer value) { + setValue(org.jooq.test.sybase.generatedclasses.tables.VBook.V_BOOK.LANGUAGE_ID, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getLanguageId() { + return getValue(org.jooq.test.sybase.generatedclasses.tables.VBook.V_BOOK.LANGUAGE_ID); + } + + /** + * An uncommented item + */ + public void setContentText(java.lang.String value) { + setValue(org.jooq.test.sybase.generatedclasses.tables.VBook.V_BOOK.CONTENT_TEXT, value); + } + + /** + * An uncommented item + */ + public java.lang.String getContentText() { + return getValue(org.jooq.test.sybase.generatedclasses.tables.VBook.V_BOOK.CONTENT_TEXT); + } + + /** + * An uncommented item + */ + public void setContentPdf(byte[] value) { + setValue(org.jooq.test.sybase.generatedclasses.tables.VBook.V_BOOK.CONTENT_PDF, value); + } + + /** + * An uncommented item + */ + public byte[] getContentPdf() { + return getValue(org.jooq.test.sybase.generatedclasses.tables.VBook.V_BOOK.CONTENT_PDF); + } + + /** + * Create a detached VBookRecord + */ + public VBookRecord() { + super(org.jooq.test.sybase.generatedclasses.tables.VBook.V_BOOK); + } +} diff --git a/jOOQ-test/src/org/jooq/test/sybase/generatedclasses/tables/records/VLibraryRecord.java b/jOOQ-test/src/org/jooq/test/sybase/generatedclasses/tables/records/VLibraryRecord.java new file mode 100644 index 00000000000..b8941cd689d --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/sybase/generatedclasses/tables/records/VLibraryRecord.java @@ -0,0 +1,47 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.sybase.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + */ +public class VLibraryRecord extends org.jooq.impl.TableRecordImpl { + + private static final long serialVersionUID = 2006594241; + + /** + * An uncommented item + */ + public void setAuthor(java.lang.String value) { + setValue(org.jooq.test.sybase.generatedclasses.tables.VLibrary.V_LIBRARY.AUTHOR, value); + } + + /** + * An uncommented item + */ + public java.lang.String getAuthor() { + return getValue(org.jooq.test.sybase.generatedclasses.tables.VLibrary.V_LIBRARY.AUTHOR); + } + + /** + * An uncommented item + */ + public void setTitle(java.lang.String value) { + setValue(org.jooq.test.sybase.generatedclasses.tables.VLibrary.V_LIBRARY.TITLE, value); + } + + /** + * An uncommented item + */ + public java.lang.String getTitle() { + return getValue(org.jooq.test.sybase.generatedclasses.tables.VLibrary.V_LIBRARY.TITLE); + } + + /** + * Create a detached VLibraryRecord + */ + public VLibraryRecord() { + super(org.jooq.test.sybase.generatedclasses.tables.VLibrary.V_LIBRARY); + } +} diff --git a/jOOQ-test/src/org/jooq/test/sybase/generatedclasses/tables/records/XTestCase_64_69Record.java b/jOOQ-test/src/org/jooq/test/sybase/generatedclasses/tables/records/XTestCase_64_69Record.java new file mode 100644 index 00000000000..dec5f5a1d82 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/sybase/generatedclasses/tables/records/XTestCase_64_69Record.java @@ -0,0 +1,91 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.sybase.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + */ +public class XTestCase_64_69Record extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = 428537391; + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setId(java.lang.Integer value) { + setValue(org.jooq.test.sybase.generatedclasses.tables.XTestCase_64_69.X_TEST_CASE_64_69.ID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.lang.Integer getId() { + return getValue(org.jooq.test.sybase.generatedclasses.tables.XTestCase_64_69.X_TEST_CASE_64_69.ID); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.util.List fetchXTestCase_71List() { + return create() + .selectFrom(org.jooq.test.sybase.generatedclasses.tables.XTestCase_71.X_TEST_CASE_71) + .where(org.jooq.test.sybase.generatedclasses.tables.XTestCase_71.X_TEST_CASE_71.TEST_CASE_64_69_ID.equal(getValue(org.jooq.test.sybase.generatedclasses.tables.XTestCase_64_69.X_TEST_CASE_64_69.ID))) + .fetch(); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT x_test_case_64_69__fk_x_test_case_64_69a
+	 * FOREIGN KEY (UNUSED_ID)
+	 * REFERENCES dba.x_unused (ID)
+	 * 
+ */ + public void setUnusedId(java.lang.Integer value) { + setValue(org.jooq.test.sybase.generatedclasses.tables.XTestCase_64_69.X_TEST_CASE_64_69.UNUSED_ID, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT x_test_case_64_69__fk_x_test_case_64_69a
+	 * FOREIGN KEY (UNUSED_ID)
+	 * REFERENCES dba.x_unused (ID)
+	 * 
+ */ + public java.lang.Integer getUnusedId() { + return getValue(org.jooq.test.sybase.generatedclasses.tables.XTestCase_64_69.X_TEST_CASE_64_69.UNUSED_ID); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT x_test_case_64_69__fk_x_test_case_64_69a
+	 * FOREIGN KEY (UNUSED_ID)
+	 * REFERENCES dba.x_unused (ID)
+	 * 
+ */ + public org.jooq.test.sybase.generatedclasses.tables.records.XUnusedRecord fetchXUnused() { + return create() + .selectFrom(org.jooq.test.sybase.generatedclasses.tables.XUnused.X_UNUSED) + .where(org.jooq.test.sybase.generatedclasses.tables.XUnused.X_UNUSED.ID.equal(getValue(org.jooq.test.sybase.generatedclasses.tables.XTestCase_64_69.X_TEST_CASE_64_69.UNUSED_ID))) + .fetchOne(); + } + + /** + * Create a detached XTestCase_64_69Record + */ + public XTestCase_64_69Record() { + super(org.jooq.test.sybase.generatedclasses.tables.XTestCase_64_69.X_TEST_CASE_64_69); + } +} diff --git a/jOOQ-test/src/org/jooq/test/sybase/generatedclasses/tables/records/XTestCase_71Record.java b/jOOQ-test/src/org/jooq/test/sybase/generatedclasses/tables/records/XTestCase_71Record.java new file mode 100644 index 00000000000..6e21765cbb9 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/sybase/generatedclasses/tables/records/XTestCase_71Record.java @@ -0,0 +1,79 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.sybase.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + */ +public class XTestCase_71Record extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = -1117462061; + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setId(java.lang.Integer value) { + setValue(org.jooq.test.sybase.generatedclasses.tables.XTestCase_71.X_TEST_CASE_71.ID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.lang.Integer getId() { + return getValue(org.jooq.test.sybase.generatedclasses.tables.XTestCase_71.X_TEST_CASE_71.ID); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT x_test_case_71__fk_x_test_case_71
+	 * FOREIGN KEY (TEST_CASE_64_69_ID)
+	 * REFERENCES dba.x_test_case_64_69 (ID)
+	 * 
+ */ + public void setTestCase_64_69Id(java.lang.Integer value) { + setValue(org.jooq.test.sybase.generatedclasses.tables.XTestCase_71.X_TEST_CASE_71.TEST_CASE_64_69_ID, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT x_test_case_71__fk_x_test_case_71
+	 * FOREIGN KEY (TEST_CASE_64_69_ID)
+	 * REFERENCES dba.x_test_case_64_69 (ID)
+	 * 
+ */ + public java.lang.Integer getTestCase_64_69Id() { + return getValue(org.jooq.test.sybase.generatedclasses.tables.XTestCase_71.X_TEST_CASE_71.TEST_CASE_64_69_ID); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT x_test_case_71__fk_x_test_case_71
+	 * FOREIGN KEY (TEST_CASE_64_69_ID)
+	 * REFERENCES dba.x_test_case_64_69 (ID)
+	 * 
+ */ + public org.jooq.test.sybase.generatedclasses.tables.records.XTestCase_64_69Record fetchXTestCase_64_69() { + return create() + .selectFrom(org.jooq.test.sybase.generatedclasses.tables.XTestCase_64_69.X_TEST_CASE_64_69) + .where(org.jooq.test.sybase.generatedclasses.tables.XTestCase_64_69.X_TEST_CASE_64_69.ID.equal(getValue(org.jooq.test.sybase.generatedclasses.tables.XTestCase_71.X_TEST_CASE_71.TEST_CASE_64_69_ID))) + .fetchOne(); + } + + /** + * Create a detached XTestCase_71Record + */ + public XTestCase_71Record() { + super(org.jooq.test.sybase.generatedclasses.tables.XTestCase_71.X_TEST_CASE_71); + } +} diff --git a/jOOQ-test/src/org/jooq/test/sybase/generatedclasses/tables/records/XTestCase_85Record.java b/jOOQ-test/src/org/jooq/test/sybase/generatedclasses/tables/records/XTestCase_85Record.java new file mode 100644 index 00000000000..de343c34b19 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/sybase/generatedclasses/tables/records/XTestCase_85Record.java @@ -0,0 +1,106 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.sybase.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + */ +public class XTestCase_85Record extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = -646681484; + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setId(java.lang.Integer value) { + setValue(org.jooq.test.sybase.generatedclasses.tables.XTestCase_85.X_TEST_CASE_85.ID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.lang.Integer getId() { + return getValue(org.jooq.test.sybase.generatedclasses.tables.XTestCase_85.X_TEST_CASE_85.ID); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT x_test_case_85__fk_x_test_case_85
+	 * FOREIGN KEY (x_unused_id, x_unused_name)
+	 * REFERENCES dba.x_unused (ID, NAME)
+	 * 
+ */ + public void setXUnusedId(java.lang.Integer value) { + setValue(org.jooq.test.sybase.generatedclasses.tables.XTestCase_85.X_TEST_CASE_85.X_UNUSED_ID, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT x_test_case_85__fk_x_test_case_85
+	 * FOREIGN KEY (x_unused_id, x_unused_name)
+	 * REFERENCES dba.x_unused (ID, NAME)
+	 * 
+ */ + public java.lang.Integer getXUnusedId() { + return getValue(org.jooq.test.sybase.generatedclasses.tables.XTestCase_85.X_TEST_CASE_85.X_UNUSED_ID); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT x_test_case_85__fk_x_test_case_85
+	 * FOREIGN KEY (x_unused_id, x_unused_name)
+	 * REFERENCES dba.x_unused (ID, NAME)
+	 * 
+ */ + public org.jooq.test.sybase.generatedclasses.tables.records.XUnusedRecord fetchXUnused() { + return create() + .selectFrom(org.jooq.test.sybase.generatedclasses.tables.XUnused.X_UNUSED) + .where(org.jooq.test.sybase.generatedclasses.tables.XUnused.X_UNUSED.ID.equal(getValue(org.jooq.test.sybase.generatedclasses.tables.XTestCase_85.X_TEST_CASE_85.X_UNUSED_ID))) + .and(org.jooq.test.sybase.generatedclasses.tables.XUnused.X_UNUSED.NAME.equal(getValue(org.jooq.test.sybase.generatedclasses.tables.XTestCase_85.X_TEST_CASE_85.X_UNUSED_NAME))) + .fetchOne(); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT x_test_case_85__fk_x_test_case_85
+	 * FOREIGN KEY (x_unused_id, x_unused_name)
+	 * REFERENCES dba.x_unused (ID, NAME)
+	 * 
+ */ + public void setXUnusedName(java.lang.String value) { + setValue(org.jooq.test.sybase.generatedclasses.tables.XTestCase_85.X_TEST_CASE_85.X_UNUSED_NAME, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT x_test_case_85__fk_x_test_case_85
+	 * FOREIGN KEY (x_unused_id, x_unused_name)
+	 * REFERENCES dba.x_unused (ID, NAME)
+	 * 
+ */ + public java.lang.String getXUnusedName() { + return getValue(org.jooq.test.sybase.generatedclasses.tables.XTestCase_85.X_TEST_CASE_85.X_UNUSED_NAME); + } + + /** + * Create a detached XTestCase_85Record + */ + public XTestCase_85Record() { + super(org.jooq.test.sybase.generatedclasses.tables.XTestCase_85.X_TEST_CASE_85); + } +} diff --git a/jOOQ-test/src/org/jooq/test/sybase/generatedclasses/tables/records/XUnusedRecord.java b/jOOQ-test/src/org/jooq/test/sybase/generatedclasses/tables/records/XUnusedRecord.java new file mode 100644 index 00000000000..7ea02db8685 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/sybase/generatedclasses/tables/records/XUnusedRecord.java @@ -0,0 +1,326 @@ +/** + * This class is generated by jOOQ + */ +package org.jooq.test.sybase.generatedclasses.tables.records; + +/** + * This class is generated by jOOQ. + */ +public class XUnusedRecord extends org.jooq.impl.UpdatableRecordImpl { + + private static final long serialVersionUID = -368664365; + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setId(java.lang.Integer value) { + setValue(org.jooq.test.sybase.generatedclasses.tables.XUnused.X_UNUSED.ID, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.lang.Integer getId() { + return getValue(org.jooq.test.sybase.generatedclasses.tables.XUnused.X_UNUSED.ID); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.util.List fetchXTestCase_85List() { + return create() + .selectFrom(org.jooq.test.sybase.generatedclasses.tables.XTestCase_85.X_TEST_CASE_85) + .where(org.jooq.test.sybase.generatedclasses.tables.XTestCase_85.X_TEST_CASE_85.X_UNUSED_ID.equal(getValue(org.jooq.test.sybase.generatedclasses.tables.XUnused.X_UNUSED.ID))) + .and(org.jooq.test.sybase.generatedclasses.tables.XTestCase_85.X_TEST_CASE_85.X_UNUSED_NAME.equal(getValue(org.jooq.test.sybase.generatedclasses.tables.XUnused.X_UNUSED.NAME))) + .fetch(); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.util.List fetchXUnusedList() { + return create() + .selectFrom(org.jooq.test.sybase.generatedclasses.tables.XUnused.X_UNUSED) + .where(org.jooq.test.sybase.generatedclasses.tables.XUnused.X_UNUSED.ID_REF.equal(getValue(org.jooq.test.sybase.generatedclasses.tables.XUnused.X_UNUSED.ID))) + .and(org.jooq.test.sybase.generatedclasses.tables.XUnused.X_UNUSED.NAME_REF.equal(getValue(org.jooq.test.sybase.generatedclasses.tables.XUnused.X_UNUSED.NAME))) + .fetch(); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.util.List fetchT_986_1List() { + return create() + .selectFrom(org.jooq.test.sybase.generatedclasses.tables.T_986_1.T_986_1) + .where(org.jooq.test.sybase.generatedclasses.tables.T_986_1.T_986_1.REF.equal(getValue(org.jooq.test.sybase.generatedclasses.tables.XUnused.X_UNUSED.ID))) + .fetch(); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.util.List fetchT_986_2List() { + return create() + .selectFrom(org.jooq.test.sybase.generatedclasses.tables.T_986_2.T_986_2) + .where(org.jooq.test.sybase.generatedclasses.tables.T_986_2.T_986_2.REF.equal(getValue(org.jooq.test.sybase.generatedclasses.tables.XUnused.X_UNUSED.ID))) + .fetch(); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.util.List fetchXTestCase_64_69List() { + return create() + .selectFrom(org.jooq.test.sybase.generatedclasses.tables.XTestCase_64_69.X_TEST_CASE_64_69) + .where(org.jooq.test.sybase.generatedclasses.tables.XTestCase_64_69.X_TEST_CASE_64_69.UNUSED_ID.equal(getValue(org.jooq.test.sybase.generatedclasses.tables.XUnused.X_UNUSED.ID))) + .fetch(); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public void setName(java.lang.String value) { + setValue(org.jooq.test.sybase.generatedclasses.tables.XUnused.X_UNUSED.NAME, value); + } + + /** + * An uncommented item + * + * PRIMARY KEY + */ + public java.lang.String getName() { + return getValue(org.jooq.test.sybase.generatedclasses.tables.XUnused.X_UNUSED.NAME); + } + + /** + * An uncommented item + */ + public void setBigInteger(java.math.BigInteger value) { + setValue(org.jooq.test.sybase.generatedclasses.tables.XUnused.X_UNUSED.BIG_INTEGER, value); + } + + /** + * An uncommented item + */ + public java.math.BigInteger getBigInteger() { + return getValue(org.jooq.test.sybase.generatedclasses.tables.XUnused.X_UNUSED.BIG_INTEGER); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT x_unused__fk_x_unused_self
+	 * FOREIGN KEY (ID_REF, NAME_REF)
+	 * REFERENCES dba.x_unused (ID, NAME)
+	 * 
+ */ + public void setIdRef(java.lang.Integer value) { + setValue(org.jooq.test.sybase.generatedclasses.tables.XUnused.X_UNUSED.ID_REF, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT x_unused__fk_x_unused_self
+	 * FOREIGN KEY (ID_REF, NAME_REF)
+	 * REFERENCES dba.x_unused (ID, NAME)
+	 * 
+ */ + public java.lang.Integer getIdRef() { + return getValue(org.jooq.test.sybase.generatedclasses.tables.XUnused.X_UNUSED.ID_REF); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT x_unused__fk_x_unused_self
+	 * FOREIGN KEY (ID_REF, NAME_REF)
+	 * REFERENCES dba.x_unused (ID, NAME)
+	 * 
+ */ + public org.jooq.test.sybase.generatedclasses.tables.records.XUnusedRecord fetchXUnused() { + return create() + .selectFrom(org.jooq.test.sybase.generatedclasses.tables.XUnused.X_UNUSED) + .where(org.jooq.test.sybase.generatedclasses.tables.XUnused.X_UNUSED.ID.equal(getValue(org.jooq.test.sybase.generatedclasses.tables.XUnused.X_UNUSED.ID_REF))) + .and(org.jooq.test.sybase.generatedclasses.tables.XUnused.X_UNUSED.NAME.equal(getValue(org.jooq.test.sybase.generatedclasses.tables.XUnused.X_UNUSED.NAME_REF))) + .fetchOne(); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT x_unused__fk_x_unused_self
+	 * FOREIGN KEY (ID_REF, NAME_REF)
+	 * REFERENCES dba.x_unused (ID, NAME)
+	 * 
+ */ + public void setNameRef(java.lang.String value) { + setValue(org.jooq.test.sybase.generatedclasses.tables.XUnused.X_UNUSED.NAME_REF, value); + } + + /** + * An uncommented item + *

+ *

+	 * CONSTRAINT x_unused__fk_x_unused_self
+	 * FOREIGN KEY (ID_REF, NAME_REF)
+	 * REFERENCES dba.x_unused (ID, NAME)
+	 * 
+ */ + public java.lang.String getNameRef() { + return getValue(org.jooq.test.sybase.generatedclasses.tables.XUnused.X_UNUSED.NAME_REF); + } + + /** + * An uncommented item + */ + public void setClass_(java.lang.Integer value) { + setValue(org.jooq.test.sybase.generatedclasses.tables.XUnused.X_UNUSED.CLASS, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getClass_() { + return getValue(org.jooq.test.sybase.generatedclasses.tables.XUnused.X_UNUSED.CLASS); + } + + /** + * An uncommented item + */ + public void setFields_(java.lang.Integer value) { + setValue(org.jooq.test.sybase.generatedclasses.tables.XUnused.X_UNUSED.FIELDS, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getFields_() { + return getValue(org.jooq.test.sybase.generatedclasses.tables.XUnused.X_UNUSED.FIELDS); + } + + /** + * An uncommented item + */ + public void setConfiguration_(java.lang.Integer value) { + setValue(org.jooq.test.sybase.generatedclasses.tables.XUnused.X_UNUSED.CONFIGURATION, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getConfiguration_() { + return getValue(org.jooq.test.sybase.generatedclasses.tables.XUnused.X_UNUSED.CONFIGURATION); + } + + /** + * An uncommented item + */ + public void setUDT(java.lang.Integer value) { + setValue(org.jooq.test.sybase.generatedclasses.tables.XUnused.X_UNUSED.U_D_T, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getUDT() { + return getValue(org.jooq.test.sybase.generatedclasses.tables.XUnused.X_UNUSED.U_D_T); + } + + /** + * An uncommented item + */ + public void setMetaData_(java.lang.Integer value) { + setValue(org.jooq.test.sybase.generatedclasses.tables.XUnused.X_UNUSED.META_DATA, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getMetaData_() { + return getValue(org.jooq.test.sybase.generatedclasses.tables.XUnused.X_UNUSED.META_DATA); + } + + /** + * An uncommented item + */ + public void setType0_(java.lang.Integer value) { + setValue(org.jooq.test.sybase.generatedclasses.tables.XUnused.X_UNUSED.TYPE0, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getType0_() { + return getValue(org.jooq.test.sybase.generatedclasses.tables.XUnused.X_UNUSED.TYPE0); + } + + /** + * An uncommented item + */ + public void setPrimaryKey(java.lang.Integer value) { + setValue(org.jooq.test.sybase.generatedclasses.tables.XUnused.X_UNUSED.PRIMARY_KEY, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getPrimaryKey() { + return getValue(org.jooq.test.sybase.generatedclasses.tables.XUnused.X_UNUSED.PRIMARY_KEY); + } + + /** + * An uncommented item + */ + public void setPrimarykey(java.lang.Integer value) { + setValue(org.jooq.test.sybase.generatedclasses.tables.XUnused.X_UNUSED.PRIMARYKEY, value); + } + + /** + * An uncommented item + */ + public java.lang.Integer getPrimarykey() { + return getValue(org.jooq.test.sybase.generatedclasses.tables.XUnused.X_UNUSED.PRIMARYKEY); + } + + /** + * An uncommented item + */ + public void setField_737(java.math.BigDecimal value) { + setValue(org.jooq.test.sybase.generatedclasses.tables.XUnused.X_UNUSED.FIELD_737, value); + } + + /** + * An uncommented item + */ + public java.math.BigDecimal getField_737() { + return getValue(org.jooq.test.sybase.generatedclasses.tables.XUnused.X_UNUSED.FIELD_737); + } + + /** + * Create a detached XUnusedRecord + */ + public XUnusedRecord() { + super(org.jooq.test.sybase.generatedclasses.tables.XUnused.X_UNUSED); + } +} diff --git a/jOOQ-test/src/org/jooq/test/sybase/reset.sql b/jOOQ-test/src/org/jooq/test/sybase/reset.sql new file mode 100644 index 00000000000..d1a3fea56e6 --- /dev/null +++ b/jOOQ-test/src/org/jooq/test/sybase/reset.sql @@ -0,0 +1,60 @@ +DELETE FROM t_658_ref/ +DELETE FROM t_658_11/ +DELETE FROM t_658_21/ +DELETE FROM t_658_31/ +DELETE FROM t_658_12/ +DELETE FROM t_658_22/ +DELETE FROM t_658_32/ +DELETE FROM t_book_to_book_store/ +DELETE FROM t_book_store/ +DELETE FROM t_book/ +DELETE FROM t_author/ +DELETE FROM t_language/ +DELETE FROM t_booleans/ +DELETE FROM t_dates/ +DELETE FROM t_identity/ +DELETE FROM t_identity_pk/ + +DROP SEQUENCE s_author_id/ +CREATE SEQUENCE s_author_id/ + +INSERT INTO t_language (id, cd, description, description_english) VALUES (1, 'en', 'English', 'English')/ +INSERT INTO t_language (id, cd, description, description_english) VALUES (2, 'de', 'Deutsch', 'German')/ +INSERT INTO t_language (id, cd, description, description_english) VALUES (3, 'fr', 'Français', 'French')/ +INSERT INTO t_language (id, cd, description, description_english) VALUES (4, 'pt', null, null)/ +/ + +INSERT INTO t_658_11 VALUES ('A'), ('B'), ('C')/ +INSERT INTO t_658_21 VALUES (1), (2), (3)/ +INSERT INTO t_658_31 VALUES (1), (2), (3)/ +INSERT INTO t_658_12 VALUES ('A', 'A'), ('B', 'B'), ('C', 'C')/ +INSERT INTO t_658_22 VALUES (1, 1), (2, 2), (3, 3)/ +INSERT INTO t_658_32 VALUES (1, 1), (2, 2), (3, 3)/ +INSERT INTO t_658_ref VALUES ('A', 1, 1, 'B', 2, 2)/ + +INSERT INTO t_author VALUES (s_author_id.nextval, 'George', 'Orwell', '1903-06-25', 1903, null); +/ +INSERT INTO t_author VALUES (s_author_id.nextval, 'Paulo', 'Coelho', '1947-08-24', 1947, null); +/ +INSERT INTO t_book VALUES (1, 1, null, null, '1984', 1948, 1, 'To know and not to know, to be conscious of complete truthfulness while telling carefully constructed lies, to hold simultaneously two opinions which cancelled out, knowing them to be contradictory and believing in both of them, to use logic against logic, to repudiate morality while laying claim to it, to believe that democracy was impossible and that the Party was the guardian of democracy, to forget, whatever it was necessary to forget, then to draw it back into memory again at the moment when it was needed, and then promptly to forget it again, and above all, to apply the same process to the process itself -- that was the ultimate subtlety; consciously to induce unconsciousness, and then, once again, to become unconscious of the act of hypnosis you had just performed. Even to understand the word ''doublethink'' involved the use of doublethink..', null) +/ +INSERT INTO t_book VALUES (2, 1, null, null, 'Animal Farm', 1945, 1, null, null) +/ +INSERT INTO t_book VALUES (3, 2, null, null, 'O Alquimista', 1988, 4, null, null) +/ +INSERT INTO t_book VALUES (4, 2, null, null, 'Brida', 1990, 2, null, null) +/ +INSERT INTO t_book_store (name) VALUES + ('Orell Füssli'), + ('Ex Libris'), + ('Buchhandlung im Volkshaus') +/ + +INSERT INTO t_book_to_book_store VALUES + ('Orell Füssli', 1, 10), + ('Orell Füssli', 2, 10), + ('Orell Füssli', 3, 10), + ('Ex Libris', 1, 1), + ('Ex Libris', 3, 2), + ('Buchhandlung im Volkshaus', 3, 1) +/ diff --git a/jOOQ-website/.classpath b/jOOQ-website/.classpath new file mode 100644 index 00000000000..c0227443546 --- /dev/null +++ b/jOOQ-website/.classpath @@ -0,0 +1,8 @@ + + + + + + + + diff --git a/jOOQ-website/.project b/jOOQ-website/.project new file mode 100644 index 00000000000..91b7ca8a7d6 --- /dev/null +++ b/jOOQ-website/.project @@ -0,0 +1,36 @@ + + + jOOQ-website + + + + + + org.eclipse.wst.validation.validationbuilder + + + + + org.eclipse.dltk.core.scriptbuilder + + + + + + org.eclipse.jdt.core.javabuilder + + + + + org.maven.ide.eclipse.maven2Builder + + + + + + + org.eclipse.php.core.PHPNature + org.maven.ide.eclipse.maven2Nature + org.eclipse.jdt.core.javanature + + diff --git a/jOOQ-website/.settings/org.eclipse.jdt.core.prefs b/jOOQ-website/.settings/org.eclipse.jdt.core.prefs new file mode 100644 index 00000000000..2a4d03258ae --- /dev/null +++ b/jOOQ-website/.settings/org.eclipse.jdt.core.prefs @@ -0,0 +1,345 @@ +#Sun Jul 10 18:42:11 CEST 2011 +eclipse.preferences.version=1 +org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled +org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.6 +org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve +org.eclipse.jdt.core.compiler.compliance=1.6 +org.eclipse.jdt.core.compiler.debug.lineNumber=generate +org.eclipse.jdt.core.compiler.debug.localVariable=generate +org.eclipse.jdt.core.compiler.debug.sourceFile=generate +org.eclipse.jdt.core.compiler.problem.annotationSuperInterface=warning +org.eclipse.jdt.core.compiler.problem.assertIdentifier=error +org.eclipse.jdt.core.compiler.problem.autoboxing=ignore +org.eclipse.jdt.core.compiler.problem.comparingIdentical=warning +org.eclipse.jdt.core.compiler.problem.deadCode=warning +org.eclipse.jdt.core.compiler.problem.deprecation=warning +org.eclipse.jdt.core.compiler.problem.deprecationInDeprecatedCode=disabled +org.eclipse.jdt.core.compiler.problem.deprecationWhenOverridingDeprecatedMethod=disabled +org.eclipse.jdt.core.compiler.problem.discouragedReference=warning +org.eclipse.jdt.core.compiler.problem.emptyStatement=ignore +org.eclipse.jdt.core.compiler.problem.enumIdentifier=error +org.eclipse.jdt.core.compiler.problem.fallthroughCase=ignore +org.eclipse.jdt.core.compiler.problem.fatalOptionalError=disabled +org.eclipse.jdt.core.compiler.problem.fieldHiding=warning +org.eclipse.jdt.core.compiler.problem.finalParameterBound=warning +org.eclipse.jdt.core.compiler.problem.finallyBlockNotCompletingNormally=warning +org.eclipse.jdt.core.compiler.problem.forbiddenReference=warning +org.eclipse.jdt.core.compiler.problem.hiddenCatchBlock=warning +org.eclipse.jdt.core.compiler.problem.incompatibleNonInheritedInterfaceMethod=warning +org.eclipse.jdt.core.compiler.problem.incompleteEnumSwitch=ignore +org.eclipse.jdt.core.compiler.problem.indirectStaticAccess=ignore +org.eclipse.jdt.core.compiler.problem.localVariableHiding=warning +org.eclipse.jdt.core.compiler.problem.methodWithConstructorName=warning +org.eclipse.jdt.core.compiler.problem.missingDeprecatedAnnotation=warning +org.eclipse.jdt.core.compiler.problem.missingHashCodeMethod=ignore +org.eclipse.jdt.core.compiler.problem.missingOverrideAnnotation=warning +org.eclipse.jdt.core.compiler.problem.missingOverrideAnnotationForInterfaceMethodImplementation=enabled +org.eclipse.jdt.core.compiler.problem.missingSerialVersion=warning +org.eclipse.jdt.core.compiler.problem.missingSynchronizedOnInheritedMethod=warning +org.eclipse.jdt.core.compiler.problem.noEffectAssignment=warning +org.eclipse.jdt.core.compiler.problem.noImplicitStringConversion=warning +org.eclipse.jdt.core.compiler.problem.nonExternalizedStringLiteral=ignore +org.eclipse.jdt.core.compiler.problem.nullReference=error +org.eclipse.jdt.core.compiler.problem.overridingPackageDefaultMethod=warning +org.eclipse.jdt.core.compiler.problem.parameterAssignment=ignore +org.eclipse.jdt.core.compiler.problem.possibleAccidentalBooleanAssignment=warning +org.eclipse.jdt.core.compiler.problem.potentialNullReference=warning +org.eclipse.jdt.core.compiler.problem.rawTypeReference=warning +org.eclipse.jdt.core.compiler.problem.redundantNullCheck=warning +org.eclipse.jdt.core.compiler.problem.redundantSuperinterface=warning +org.eclipse.jdt.core.compiler.problem.specialParameterHidingField=disabled +org.eclipse.jdt.core.compiler.problem.staticAccessReceiver=warning +org.eclipse.jdt.core.compiler.problem.suppressOptionalErrors=disabled +org.eclipse.jdt.core.compiler.problem.suppressWarnings=enabled +org.eclipse.jdt.core.compiler.problem.syntheticAccessEmulation=ignore +org.eclipse.jdt.core.compiler.problem.typeParameterHiding=warning +org.eclipse.jdt.core.compiler.problem.uncheckedTypeOperation=warning +org.eclipse.jdt.core.compiler.problem.undocumentedEmptyBlock=ignore +org.eclipse.jdt.core.compiler.problem.unhandledWarningToken=warning +org.eclipse.jdt.core.compiler.problem.unnecessaryElse=ignore +org.eclipse.jdt.core.compiler.problem.unnecessaryTypeCheck=warning +org.eclipse.jdt.core.compiler.problem.unqualifiedFieldAccess=ignore +org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownException=warning +org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionExemptExceptionAndThrowable=enabled +org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionIncludeDocCommentReference=enabled +org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionWhenOverriding=disabled +org.eclipse.jdt.core.compiler.problem.unusedImport=warning +org.eclipse.jdt.core.compiler.problem.unusedLabel=warning +org.eclipse.jdt.core.compiler.problem.unusedLocal=warning +org.eclipse.jdt.core.compiler.problem.unusedObjectAllocation=ignore +org.eclipse.jdt.core.compiler.problem.unusedParameter=warning +org.eclipse.jdt.core.compiler.problem.unusedParameterIncludeDocCommentReference=enabled +org.eclipse.jdt.core.compiler.problem.unusedParameterWhenImplementingAbstract=disabled +org.eclipse.jdt.core.compiler.problem.unusedParameterWhenOverridingConcrete=disabled +org.eclipse.jdt.core.compiler.problem.unusedPrivateMember=warning +org.eclipse.jdt.core.compiler.problem.unusedWarningToken=warning +org.eclipse.jdt.core.compiler.problem.varargsArgumentNeedCast=warning +org.eclipse.jdt.core.compiler.source=1.6 +org.eclipse.jdt.core.formatter.align_type_members_on_columns=true +org.eclipse.jdt.core.formatter.alignment_for_arguments_in_allocation_expression=16 +org.eclipse.jdt.core.formatter.alignment_for_arguments_in_annotation=0 +org.eclipse.jdt.core.formatter.alignment_for_arguments_in_enum_constant=16 +org.eclipse.jdt.core.formatter.alignment_for_arguments_in_explicit_constructor_call=16 +org.eclipse.jdt.core.formatter.alignment_for_arguments_in_method_invocation=16 +org.eclipse.jdt.core.formatter.alignment_for_arguments_in_qualified_allocation_expression=16 +org.eclipse.jdt.core.formatter.alignment_for_assignment=0 +org.eclipse.jdt.core.formatter.alignment_for_binary_expression=16 +org.eclipse.jdt.core.formatter.alignment_for_compact_if=16 +org.eclipse.jdt.core.formatter.alignment_for_conditional_expression=80 +org.eclipse.jdt.core.formatter.alignment_for_enum_constants=49 +org.eclipse.jdt.core.formatter.alignment_for_expressions_in_array_initializer=16 +org.eclipse.jdt.core.formatter.alignment_for_method_declaration=0 +org.eclipse.jdt.core.formatter.alignment_for_multiple_fields=16 +org.eclipse.jdt.core.formatter.alignment_for_parameters_in_constructor_declaration=16 +org.eclipse.jdt.core.formatter.alignment_for_parameters_in_method_declaration=16 +org.eclipse.jdt.core.formatter.alignment_for_selector_in_method_invocation=16 +org.eclipse.jdt.core.formatter.alignment_for_superclass_in_type_declaration=16 +org.eclipse.jdt.core.formatter.alignment_for_superinterfaces_in_enum_declaration=16 +org.eclipse.jdt.core.formatter.alignment_for_superinterfaces_in_type_declaration=16 +org.eclipse.jdt.core.formatter.alignment_for_throws_clause_in_constructor_declaration=16 +org.eclipse.jdt.core.formatter.alignment_for_throws_clause_in_method_declaration=16 +org.eclipse.jdt.core.formatter.blank_lines_after_imports=1 +org.eclipse.jdt.core.formatter.blank_lines_after_package=1 +org.eclipse.jdt.core.formatter.blank_lines_before_field=0 +org.eclipse.jdt.core.formatter.blank_lines_before_first_class_body_declaration=0 +org.eclipse.jdt.core.formatter.blank_lines_before_imports=1 +org.eclipse.jdt.core.formatter.blank_lines_before_member_type=1 +org.eclipse.jdt.core.formatter.blank_lines_before_method=1 +org.eclipse.jdt.core.formatter.blank_lines_before_new_chunk=1 +org.eclipse.jdt.core.formatter.blank_lines_before_package=0 +org.eclipse.jdt.core.formatter.blank_lines_between_import_groups=1 +org.eclipse.jdt.core.formatter.blank_lines_between_type_declarations=1 +org.eclipse.jdt.core.formatter.brace_position_for_annotation_type_declaration=end_of_line +org.eclipse.jdt.core.formatter.brace_position_for_anonymous_type_declaration=end_of_line +org.eclipse.jdt.core.formatter.brace_position_for_array_initializer=end_of_line +org.eclipse.jdt.core.formatter.brace_position_for_block=end_of_line +org.eclipse.jdt.core.formatter.brace_position_for_block_in_case=end_of_line +org.eclipse.jdt.core.formatter.brace_position_for_constructor_declaration=end_of_line +org.eclipse.jdt.core.formatter.brace_position_for_enum_constant=end_of_line +org.eclipse.jdt.core.formatter.brace_position_for_enum_declaration=end_of_line +org.eclipse.jdt.core.formatter.brace_position_for_method_declaration=end_of_line +org.eclipse.jdt.core.formatter.brace_position_for_switch=end_of_line +org.eclipse.jdt.core.formatter.brace_position_for_type_declaration=end_of_line +org.eclipse.jdt.core.formatter.comment.clear_blank_lines_in_block_comment=true +org.eclipse.jdt.core.formatter.comment.clear_blank_lines_in_javadoc_comment=true +org.eclipse.jdt.core.formatter.comment.format_block_comments=true +org.eclipse.jdt.core.formatter.comment.format_header=false +org.eclipse.jdt.core.formatter.comment.format_html=true +org.eclipse.jdt.core.formatter.comment.format_javadoc_comments=true +org.eclipse.jdt.core.formatter.comment.format_line_comments=true +org.eclipse.jdt.core.formatter.comment.format_source_code=true +org.eclipse.jdt.core.formatter.comment.indent_parameter_description=true +org.eclipse.jdt.core.formatter.comment.indent_root_tags=true +org.eclipse.jdt.core.formatter.comment.insert_new_line_before_root_tags=insert +org.eclipse.jdt.core.formatter.comment.insert_new_line_for_parameter=do not insert +org.eclipse.jdt.core.formatter.comment.line_length=80 +org.eclipse.jdt.core.formatter.comment.new_lines_at_block_boundaries=true +org.eclipse.jdt.core.formatter.comment.new_lines_at_javadoc_boundaries=true +org.eclipse.jdt.core.formatter.compact_else_if=true +org.eclipse.jdt.core.formatter.continuation_indentation=1 +org.eclipse.jdt.core.formatter.continuation_indentation_for_array_initializer=1 +org.eclipse.jdt.core.formatter.disabling_tag=@formatter\:off +org.eclipse.jdt.core.formatter.enabling_tag=@formatter\:on +org.eclipse.jdt.core.formatter.format_guardian_clause_on_one_line=false +org.eclipse.jdt.core.formatter.format_line_comment_starting_on_first_column=true +org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_annotation_declaration_header=true +org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_enum_constant_header=true +org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_enum_declaration_header=true +org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_type_header=true +org.eclipse.jdt.core.formatter.indent_breaks_compare_to_cases=true +org.eclipse.jdt.core.formatter.indent_empty_lines=false +org.eclipse.jdt.core.formatter.indent_statements_compare_to_block=true +org.eclipse.jdt.core.formatter.indent_statements_compare_to_body=true +org.eclipse.jdt.core.formatter.indent_switchstatements_compare_to_cases=true +org.eclipse.jdt.core.formatter.indent_switchstatements_compare_to_switch=true +org.eclipse.jdt.core.formatter.indentation.size=4 +org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_local_variable=insert +org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_member=insert +org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_parameter=do not insert +org.eclipse.jdt.core.formatter.insert_new_line_after_label=do not insert +org.eclipse.jdt.core.formatter.insert_new_line_after_opening_brace_in_array_initializer=do not insert +org.eclipse.jdt.core.formatter.insert_new_line_at_end_of_file_if_missing=insert +org.eclipse.jdt.core.formatter.insert_new_line_before_catch_in_try_statement=insert +org.eclipse.jdt.core.formatter.insert_new_line_before_closing_brace_in_array_initializer=do not insert +org.eclipse.jdt.core.formatter.insert_new_line_before_else_in_if_statement=insert +org.eclipse.jdt.core.formatter.insert_new_line_before_finally_in_try_statement=insert +org.eclipse.jdt.core.formatter.insert_new_line_before_while_in_do_statement=insert +org.eclipse.jdt.core.formatter.insert_new_line_in_empty_annotation_declaration=do not insert +org.eclipse.jdt.core.formatter.insert_new_line_in_empty_anonymous_type_declaration=do not insert +org.eclipse.jdt.core.formatter.insert_new_line_in_empty_block=do not insert +org.eclipse.jdt.core.formatter.insert_new_line_in_empty_enum_constant=do not insert +org.eclipse.jdt.core.formatter.insert_new_line_in_empty_enum_declaration=do not insert +org.eclipse.jdt.core.formatter.insert_new_line_in_empty_method_body=do not insert +org.eclipse.jdt.core.formatter.insert_new_line_in_empty_type_declaration=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_and_in_type_parameter=insert +org.eclipse.jdt.core.formatter.insert_space_after_assignment_operator=insert +org.eclipse.jdt.core.formatter.insert_space_after_at_in_annotation=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_at_in_annotation_type_declaration=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_binary_operator=insert +org.eclipse.jdt.core.formatter.insert_space_after_closing_angle_bracket_in_type_arguments=insert +org.eclipse.jdt.core.formatter.insert_space_after_closing_angle_bracket_in_type_parameters=insert +org.eclipse.jdt.core.formatter.insert_space_after_closing_brace_in_block=insert +org.eclipse.jdt.core.formatter.insert_space_after_closing_paren_in_cast=insert +org.eclipse.jdt.core.formatter.insert_space_after_colon_in_assert=insert +org.eclipse.jdt.core.formatter.insert_space_after_colon_in_case=insert +org.eclipse.jdt.core.formatter.insert_space_after_colon_in_conditional=insert +org.eclipse.jdt.core.formatter.insert_space_after_colon_in_for=insert +org.eclipse.jdt.core.formatter.insert_space_after_colon_in_labeled_statement=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_allocation_expression=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_annotation=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_array_initializer=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_constructor_declaration_parameters=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_constructor_declaration_throws=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_enum_constant_arguments=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_enum_declarations=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_explicitconstructorcall_arguments=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_for_increments=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_for_inits=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_method_declaration_parameters=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_method_declaration_throws=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_method_invocation_arguments=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_multiple_field_declarations=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_multiple_local_declarations=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_parameterized_type_reference=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_superinterfaces=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_type_arguments=insert +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_type_parameters=insert +org.eclipse.jdt.core.formatter.insert_space_after_ellipsis=insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_parameterized_type_reference=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_type_arguments=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_type_parameters=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_brace_in_array_initializer=insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_bracket_in_array_allocation_expression=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_bracket_in_array_reference=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_annotation=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_cast=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_catch=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_constructor_declaration=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_enum_constant=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_for=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_if=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_method_declaration=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_method_invocation=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_parenthesized_expression=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_switch=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_synchronized=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_while=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_postfix_operator=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_prefix_operator=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_question_in_conditional=insert +org.eclipse.jdt.core.formatter.insert_space_after_question_in_wildcard=do not insert +org.eclipse.jdt.core.formatter.insert_space_after_semicolon_in_for=insert +org.eclipse.jdt.core.formatter.insert_space_after_unary_operator=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_and_in_type_parameter=insert +org.eclipse.jdt.core.formatter.insert_space_before_assignment_operator=insert +org.eclipse.jdt.core.formatter.insert_space_before_at_in_annotation_type_declaration=insert +org.eclipse.jdt.core.formatter.insert_space_before_binary_operator=insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_angle_bracket_in_parameterized_type_reference=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_angle_bracket_in_type_arguments=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_angle_bracket_in_type_parameters=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_brace_in_array_initializer=insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_bracket_in_array_allocation_expression=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_bracket_in_array_reference=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_annotation=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_cast=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_catch=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_constructor_declaration=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_enum_constant=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_for=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_if=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_method_declaration=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_method_invocation=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_parenthesized_expression=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_switch=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_synchronized=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_while=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_colon_in_assert=insert +org.eclipse.jdt.core.formatter.insert_space_before_colon_in_case=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_colon_in_conditional=insert +org.eclipse.jdt.core.formatter.insert_space_before_colon_in_default=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_colon_in_for=insert +org.eclipse.jdt.core.formatter.insert_space_before_colon_in_labeled_statement=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_allocation_expression=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_annotation=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_array_initializer=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_constructor_declaration_parameters=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_constructor_declaration_throws=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_enum_constant_arguments=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_enum_declarations=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_explicitconstructorcall_arguments=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_for_increments=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_for_inits=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_method_declaration_parameters=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_method_declaration_throws=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_method_invocation_arguments=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_multiple_field_declarations=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_multiple_local_declarations=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_parameterized_type_reference=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_superinterfaces=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_type_arguments=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_type_parameters=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_ellipsis=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_parameterized_type_reference=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_type_arguments=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_type_parameters=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_annotation_type_declaration=insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_anonymous_type_declaration=insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_array_initializer=insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_block=insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_constructor_declaration=insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_enum_constant=insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_enum_declaration=insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_method_declaration=insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_switch=insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_type_declaration=insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_bracket_in_array_allocation_expression=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_bracket_in_array_reference=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_bracket_in_array_type_reference=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_annotation=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_annotation_type_member_declaration=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_catch=insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_constructor_declaration=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_enum_constant=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_for=insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_if=insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_method_declaration=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_method_invocation=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_parenthesized_expression=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_switch=insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_synchronized=insert +org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_while=insert +org.eclipse.jdt.core.formatter.insert_space_before_parenthesized_expression_in_return=insert +org.eclipse.jdt.core.formatter.insert_space_before_parenthesized_expression_in_throw=insert +org.eclipse.jdt.core.formatter.insert_space_before_postfix_operator=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_prefix_operator=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_question_in_conditional=insert +org.eclipse.jdt.core.formatter.insert_space_before_question_in_wildcard=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_semicolon=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_semicolon_in_for=do not insert +org.eclipse.jdt.core.formatter.insert_space_before_unary_operator=do not insert +org.eclipse.jdt.core.formatter.insert_space_between_brackets_in_array_type_reference=do not insert +org.eclipse.jdt.core.formatter.insert_space_between_empty_braces_in_array_initializer=do not insert +org.eclipse.jdt.core.formatter.insert_space_between_empty_brackets_in_array_allocation_expression=do not insert +org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_annotation_type_member_declaration=do not insert +org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_constructor_declaration=do not insert +org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_enum_constant=do not insert +org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_method_declaration=do not insert +org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_method_invocation=do not insert +org.eclipse.jdt.core.formatter.join_lines_in_comments=true +org.eclipse.jdt.core.formatter.join_wrapped_lines=true +org.eclipse.jdt.core.formatter.keep_else_statement_on_same_line=false +org.eclipse.jdt.core.formatter.keep_empty_array_initializer_on_one_line=false +org.eclipse.jdt.core.formatter.keep_imple_if_on_one_line=false +org.eclipse.jdt.core.formatter.keep_then_statement_on_same_line=false +org.eclipse.jdt.core.formatter.lineSplit=120 +org.eclipse.jdt.core.formatter.never_indent_block_comments_on_first_column=false +org.eclipse.jdt.core.formatter.never_indent_line_comments_on_first_column=false +org.eclipse.jdt.core.formatter.number_of_blank_lines_at_beginning_of_method_body=0 +org.eclipse.jdt.core.formatter.number_of_empty_lines_to_preserve=1 +org.eclipse.jdt.core.formatter.put_empty_statement_on_new_line=true +org.eclipse.jdt.core.formatter.tabulation.char=space +org.eclipse.jdt.core.formatter.tabulation.size=4 +org.eclipse.jdt.core.formatter.use_on_off_tags=false +org.eclipse.jdt.core.formatter.use_tabs_only_for_leading_indentations=false +org.eclipse.jdt.core.formatter.wrap_before_binary_operator=true +org.eclipse.jdt.core.formatter.wrap_outer_expressions_when_nested=true diff --git a/jOOQ-website/.settings/org.eclipse.jdt.ui.prefs b/jOOQ-website/.settings/org.eclipse.jdt.ui.prefs new file mode 100644 index 00000000000..eda77e7ec2d --- /dev/null +++ b/jOOQ-website/.settings/org.eclipse.jdt.ui.prefs @@ -0,0 +1,112 @@ +#Sun Apr 10 12:15:44 CEST 2011 +cleanup.add_default_serial_version_id=false +cleanup.add_generated_serial_version_id=true +cleanup.add_missing_annotations=true +cleanup.add_missing_deprecated_annotations=true +cleanup.add_missing_methods=false +cleanup.add_missing_nls_tags=false +cleanup.add_missing_override_annotations=true +cleanup.add_missing_override_annotations_interface_methods=true +cleanup.add_serial_version_id=true +cleanup.always_use_blocks=true +cleanup.always_use_parentheses_in_expressions=false +cleanup.always_use_this_for_non_static_field_access=true +cleanup.always_use_this_for_non_static_method_access=false +cleanup.convert_to_enhanced_for_loop=false +cleanup.correct_indentation=true +cleanup.format_source_code=false +cleanup.format_source_code_changes_only=false +cleanup.make_local_variable_final=true +cleanup.make_parameters_final=false +cleanup.make_private_fields_final=true +cleanup.make_type_abstract_if_missing_method=false +cleanup.make_variable_declarations_final=false +cleanup.never_use_blocks=false +cleanup.never_use_parentheses_in_expressions=true +cleanup.organize_imports=true +cleanup.qualify_static_field_accesses_with_declaring_class=false +cleanup.qualify_static_member_accesses_through_instances_with_declaring_class=true +cleanup.qualify_static_member_accesses_through_subtypes_with_declaring_class=true +cleanup.qualify_static_member_accesses_with_declaring_class=true +cleanup.qualify_static_method_accesses_with_declaring_class=false +cleanup.remove_private_constructors=true +cleanup.remove_trailing_whitespaces=true +cleanup.remove_trailing_whitespaces_all=true +cleanup.remove_trailing_whitespaces_ignore_empty=false +cleanup.remove_unnecessary_casts=true +cleanup.remove_unnecessary_nls_tags=true +cleanup.remove_unused_imports=true +cleanup.remove_unused_local_variables=false +cleanup.remove_unused_private_fields=true +cleanup.remove_unused_private_members=false +cleanup.remove_unused_private_methods=true +cleanup.remove_unused_private_types=true +cleanup.sort_members=false +cleanup.sort_members_all=false +cleanup.use_blocks=true +cleanup.use_blocks_only_for_return_and_throw=false +cleanup.use_parentheses_in_expressions=false +cleanup.use_this_for_non_static_field_access=false +cleanup.use_this_for_non_static_field_access_only_if_necessary=false +cleanup.use_this_for_non_static_method_access=false +cleanup.use_this_for_non_static_method_access_only_if_necessary=true +cleanup_profile=_jOOQ +cleanup_settings_version=2 +eclipse.preferences.version=1 +editor_save_participant_org.eclipse.jdt.ui.postsavelistener.cleanup=true +formatter_profile=_jOOQ +formatter_settings_version=11 +org.eclipse.jdt.ui.javadoc=false +org.eclipse.jdt.ui.text.custom_code_templates= +sp_cleanup.add_default_serial_version_id=true +sp_cleanup.add_generated_serial_version_id=false +sp_cleanup.add_missing_annotations=true +sp_cleanup.add_missing_deprecated_annotations=true +sp_cleanup.add_missing_methods=false +sp_cleanup.add_missing_nls_tags=false +sp_cleanup.add_missing_override_annotations=true +sp_cleanup.add_missing_override_annotations_interface_methods=true +sp_cleanup.add_serial_version_id=false +sp_cleanup.always_use_blocks=true +sp_cleanup.always_use_parentheses_in_expressions=false +sp_cleanup.always_use_this_for_non_static_field_access=false +sp_cleanup.always_use_this_for_non_static_method_access=false +sp_cleanup.convert_to_enhanced_for_loop=false +sp_cleanup.correct_indentation=false +sp_cleanup.format_source_code=false +sp_cleanup.format_source_code_changes_only=false +sp_cleanup.make_local_variable_final=false +sp_cleanup.make_parameters_final=false +sp_cleanup.make_private_fields_final=true +sp_cleanup.make_type_abstract_if_missing_method=false +sp_cleanup.make_variable_declarations_final=false +sp_cleanup.never_use_blocks=false +sp_cleanup.never_use_parentheses_in_expressions=true +sp_cleanup.on_save_use_additional_actions=true +sp_cleanup.organize_imports=true +sp_cleanup.qualify_static_field_accesses_with_declaring_class=false +sp_cleanup.qualify_static_member_accesses_through_instances_with_declaring_class=true +sp_cleanup.qualify_static_member_accesses_through_subtypes_with_declaring_class=true +sp_cleanup.qualify_static_member_accesses_with_declaring_class=false +sp_cleanup.qualify_static_method_accesses_with_declaring_class=false +sp_cleanup.remove_private_constructors=true +sp_cleanup.remove_trailing_whitespaces=true +sp_cleanup.remove_trailing_whitespaces_all=true +sp_cleanup.remove_trailing_whitespaces_ignore_empty=false +sp_cleanup.remove_unnecessary_casts=true +sp_cleanup.remove_unnecessary_nls_tags=false +sp_cleanup.remove_unused_imports=true +sp_cleanup.remove_unused_local_variables=false +sp_cleanup.remove_unused_private_fields=true +sp_cleanup.remove_unused_private_members=false +sp_cleanup.remove_unused_private_methods=true +sp_cleanup.remove_unused_private_types=true +sp_cleanup.sort_members=false +sp_cleanup.sort_members_all=false +sp_cleanup.use_blocks=false +sp_cleanup.use_blocks_only_for_return_and_throw=false +sp_cleanup.use_parentheses_in_expressions=false +sp_cleanup.use_this_for_non_static_field_access=false +sp_cleanup.use_this_for_non_static_field_access_only_if_necessary=true +sp_cleanup.use_this_for_non_static_method_access=false +sp_cleanup.use_this_for_non_static_method_access_only_if_necessary=true diff --git a/jOOQ-website/.settings/org.maven.ide.eclipse.prefs b/jOOQ-website/.settings/org.maven.ide.eclipse.prefs new file mode 100644 index 00000000000..c5172a20ac8 --- /dev/null +++ b/jOOQ-website/.settings/org.maven.ide.eclipse.prefs @@ -0,0 +1,8 @@ +#Sun Apr 10 10:03:42 CEST 2011 +activeProfiles= +eclipse.preferences.version=1 +fullBuildGoals=process-test-resources +resolveWorkspaceProjects=true +resourceFilterGoals=process-resources resources\:testResources +skipCompilerPlugin=true +version=1 diff --git a/jOOQ-website/contribute.php b/jOOQ-website/contribute.php new file mode 100644 index 00000000000..7a7b76d2c84 --- /dev/null +++ b/jOOQ-website/contribute.php @@ -0,0 +1,80 @@ + +

The hall of fame

+

jOOQ needs your help to implement all of this and more! Make it to the hall of fame of jOOQ contributors:

+
    +
  • Lukas Eder: Project lead
  • +
  • Espen Stromsnes: DB2, H2, Sybase, and partial HSQLDB support, lots of helpful support
  • +
  • Sander Plas: jOOQ-codegen-maven, jOOQ-wicket contribution
  • +
  • Christopher Klewes: Maven integration, good ideas to enhance the code generator
  • +
  • Vladislav "FractalizeR" Rastrusny: Lots of constructive feedback, especially from the MySQL user perspective.
  • +
  • Christopher Deckers: jOOQ-Console contribution
  • +
  • You: ...
  • +
+

Thanks to all of the above people!

+ +

Contribution instructions

+

You can contribute anything. Ideas, feature requests or bug reports (please use trac, and be explicit). You can also help enlarge the community, by shouting out to the world about jOOQ and how you use it. You have a blog? Write about jOOQ!

+

Or contribute code! If you want to share code, please follow these instructions

+
+ +

Hints for new database integrations

+ +

Should you wish to provide an extension/support for a new RDBMS (such as Informix, Firebird, etc) your work would consist of these steps:

+
    +
  • Extend Eclipse .classpath files and .launch targets such that all developers are able to use your newly added database / JDBC drivers
  • +
  • Implement code generation for the new RDBMS. For that, you'll need to provide an implementation for AbstractDatabase in jOOQ-meta
  • +
  • Make the integration tests for the new RDBMS run.
  • +
+ +

Or in more detail:

+

In detail, you have to do these steps:

+
    +
  • Migrate create.sql and reset.sql scripts to your dialect
  • +
  • Create the above schema (create.sql) and data (reset.sql) in your test database
  • +
  • Extend org.jooq.util.AbstractDatabase. Ideally, you'll use your own generated meta-schema classes and the jOOQ API to navigate through your RDBMS's meta-schema in order to discover your test schema. Apart from the integration tests, this adds an additional layer of "proof of concept". See for instance org.jooq.util.oracle.OracleDatabase, where rather complex nested queries are used to navigate through Oracle foreign key relationships.
  • +
  • For a minimal implementation, check out org.jooq.util.sqlite.SQLiteDatabase, which only implements loadPrimaryKeys0() and getTables0(). All other implementations are optional extensions.
  • +
+

Once you've done these steps, in order to be sure that everything works fine you'll also have to do this:

+
    +
  • Let jOOQ generate the integration test schema
  • +
  • Extend the org.jooq.test.jOOQAbstractTest for your RDBMS
  • +
  • Run the integration tests for your RDBMS
  • +
  • Fix all issues. You should get syntax errors, SQLDialectNotSupportedExceptions, etc
  • +
+

If you provide me with instructions how to set up your RDBMS instance and any partial implementation of the above, I'm going to take that into the jOOQ code base (giving you credit, of course) and guaranteeing implementation integrity in the future.

+ +

So let's get to work, then! :-)

+ +

Cheers, Lukas

+ \ No newline at end of file diff --git a/jOOQ-website/css/jooq.css b/jOOQ-website/css/jooq.css new file mode 100644 index 00000000000..ae15397a805 --- /dev/null +++ b/jOOQ-website/css/jooq.css @@ -0,0 +1,254 @@ +body { + font-family: 'Lucida Grande',Helvetica,Arial,sans-serif;; + font-weight: normal; + text-shadow: 0 1px 0 #FFFFFF; + font-size: 15px; + font-style: normal; + font-weight: 400; + color: #000000; + letter-spacing: 0; + line-height: 1.4; + text-decoration: none; + text-shadow: none; + text-transform: none; + word-spacing: 0; + margin: 0; + padding: 0; +} + +h1, h2, h3, h4, h5, h6 { + font-family: Georgia,"Times New Roman",Times,serif; + font-weight: normal; + color: #000000; + margin-top: 0.5em; + margin-bottom: 0.5em; +} + +h1 { + font-size: 4em; + text-shadow: 0 1px 1px #444; + padding: 0; + margin: 0; +} + +h2 { + font-size: 2.5em; + text-shadow: 0 1px 1px #444; +} + +h3 { + font-size: 1.3em; + text-shadow: 0 1px 0 #444; +} + +pre { + background: none repeat scroll 0 0 #ffffff; + border-radius: 10px 10px 10px 10px; + border-width: 2px; + border-style: solid; + border-color: #882222; + box-shadow: 5px 5px 20px #aa6633; + color: #000000; + display: block; + font-family: monospace; + font-size: 12px; + line-height: 1.5em; + margin: 1.5em 0; + padding: 1em; + white-space: pre-wrap; + word-wrap: break-word; + text-align: left; +} + +p { +} + +p.slogan { + padding-left: 2em; + color: #444; + font-family: Georgia,"Times New Roman",Times,serif; + height: 3em; + + background: none repeat scroll 0 0 #ffffff; + border-radius: 10px 10px 10px 10px; + border-width: 2px; + border-style: solid; + border-color: #882222; + box-shadow: 5px 5px 20px #aa6633; + color: #000000; + display: block; + line-height: 1.5em; + margin: 1.5em 0; + padding: 1em; +} + +td.left { + padding-right: 5px; + padding-bottom: 5px; + vertical-align: top; + text-align: right; +} +td.right { + padding-left: 5px; + padding-bottom: 5px; + vertical-align: top; + text-align: left; +} + +table.ticket-table td { + vertical-align: top; +} + +td h3 { + white-space: nowrap; +} + +ul { + margin: 0; + list-style-image:url(../img/favicon-16.png); +} + +ol { + padding-top: 1em; + padding-bottom: 1em; +} + +a, a:link, a:visited, a:hover, a:active { + color: #882222; + text-decoration: none; + text-shadow: 0 1px 2px #666666; +} + +a:hover { + text-decoration: underline; +} + +#wrapper { + background: url("../img/bg.jpg") repeat scroll left top #FFFFFF; + height: auto; + min-height: 101%; +} + +.block { + background-color: #FFFFFF; + margin: 0 auto; + position: relative; + width: 1050px; + + border-width: 0; + border-style: solid; + border-color: #882222; + box-shadow: 0 0 30px #aa6633; +} + +#content { + padding-top: 1em; + padding-left: 3em; + padding-right: 3em; + + background: #fadccb; + background: -webkit-gradient(linear, left, right, from(#f6cab9), to(#ffeedd)); + background: -moz-linear-gradient(left, #f6cab9, #ffeedd); + background: gradient(linear, left, right, from(#f6cab9), to(#ffeedd)); + + -webkit-box-shadow: inset rgba(0,0,0,.1) 0 5px 5px; + -moz-box-shadow: inset rgba(0,0,0,.1) 0 5px 5px; + box-shadow: inset rgba(0,0,0,.1) 0 5px 5px; + border-top: 1px solid rgba(0,0,0,.2); +} + +#navigation { + padding-top: 20px; + padding-left: 3em; + padding-right: 3em; + + height: 40px; + background: #444; + background: -webkit-gradient(linear, left top, left bottom, from(#555), to(#333)); + background: -moz-linear-gradient(top, #555, #333); + background: gradient(linear, left top, left bottom, from(#555), to(#333)); +} + +#tweets { + padding-top: 4px; + height: 25px; +} + +div.tweet-item { + float: left; +} + +#navigation a, +#navigation a:link, +#navigation a:visited, +#navigation a:hover, +#navigation a:active { + color: #aaa; + text-shadow: #000 -1px -1px 0px; + text-decoration: none; + font-size: 15px; +} + +#navigation .navigation-item-active a, +#navigation .navigation-item-active a:link, +#navigation .navigation-item-active a:visited, +#navigation .navigation-item-active a:hover, +#navigation .navigation-item-active a:active { + color: #fadccb; +} + +#navigation a:hover { + text-decoration: underline; +} + +div.navigation-item-left { + float: left; + margin-right: 2em; + height: 40px; +} + +div.navigation-item-active { + background: url("../img/navigation-item-active.png") no-repeat center bottom; +} + +#footer { + font-size: 0.7em; + color: #ddd; + + padding-top: 1em; + padding-left: 3em; + padding-right: 3em; + padding-bottom: 1em; + + background: #888787; + background: -webkit-gradient(linear, left bottom, right top, from(#888787), to(#666)); + background: -moz-linear-gradient(left bottom, #888787, #666); + background: gradient(linear, left bottom, right top, from(#888787), to(#666)); + -webkit-box-shadow: inset rgba(0,0,0,.1) 0 5px 5px; + -moz-box-shadow: inset rgba(0,0,0,.1) 0 5px 5px; + box-shadow: inset rgba(0,0,0,.1) 0 5px 5px; + border-top: 1px solid rgba(0,0,0,.2); + text-shadow: #555 -1px -1px 0px; +} + +div.screenshot { + background: none repeat scroll 0 0 #ffffff; + border-radius: 10px 10px 10px 10px; + border-width: 2px; + border-style: solid; + border-color: #882222; + box-shadow: 5px 5px 20px #aa6633; + color: #000000; + display: block; + font-family: monospace; + font-size: 12px; + line-height: 1.5em; + margin: 1.5em 0; + white-space: pre-wrap; + word-wrap: break-word; + text-align: center; +} + +.mono { + font-family: monospace; +} \ No newline at end of file diff --git a/jOOQ-website/favicon.ico b/jOOQ-website/favicon.ico new file mode 100644 index 00000000000..a4773d156f2 Binary files /dev/null and b/jOOQ-website/favicon.ico differ diff --git a/jOOQ-website/fnt/Infinity.ttf b/jOOQ-website/fnt/Infinity.ttf new file mode 100644 index 00000000000..f67855a26c6 Binary files /dev/null and b/jOOQ-website/fnt/Infinity.ttf differ diff --git a/jOOQ-website/frame.php b/jOOQ-website/frame.php new file mode 100644 index 00000000000..2f417b244fb --- /dev/null +++ b/jOOQ-website/frame.php @@ -0,0 +1,129 @@ + + + + + jOOQ - <?php print preg_replace('%<br/>%', ' - ', getH1()); ?> + + + + + + + + + + + + + + + + + + +
+
+ + +
+
+
+ + +
+
+ +
+
+
+ +
+
+
+ + + + + + +
+

jOOQ Logo
+ + ' . $slogan . '

'; + } + printContent(); + ?> +
+
+ + +
+
+ + Fork me on GitHub +
+ +
+ + diff --git a/jOOQ-website/img/bg.jpg b/jOOQ-website/img/bg.jpg new file mode 100644 index 00000000000..4847ebea0a0 Binary files /dev/null and b/jOOQ-website/img/bg.jpg differ diff --git a/jOOQ-website/img/eclipse-example-01.png b/jOOQ-website/img/eclipse-example-01.png new file mode 100644 index 00000000000..12528fd88c5 Binary files /dev/null and b/jOOQ-website/img/eclipse-example-01.png differ diff --git a/jOOQ-website/img/eclipse-example-02.png b/jOOQ-website/img/eclipse-example-02.png new file mode 100644 index 00000000000..0975d3669b9 Binary files /dev/null and b/jOOQ-website/img/eclipse-example-02.png differ diff --git a/jOOQ-website/img/eclipse-example-03.png b/jOOQ-website/img/eclipse-example-03.png new file mode 100644 index 00000000000..12e1d0b6c5b Binary files /dev/null and b/jOOQ-website/img/eclipse-example-03.png differ diff --git a/jOOQ-website/img/eclipse-example-04.png b/jOOQ-website/img/eclipse-example-04.png new file mode 100644 index 00000000000..dbda2efc08c Binary files /dev/null and b/jOOQ-website/img/eclipse-example-04.png differ diff --git a/jOOQ-website/img/eclipse-example-05.png b/jOOQ-website/img/eclipse-example-05.png new file mode 100644 index 00000000000..39fd9ead254 Binary files /dev/null and b/jOOQ-website/img/eclipse-example-05.png differ diff --git a/jOOQ-website/img/favicon-16.png b/jOOQ-website/img/favicon-16.png new file mode 100644 index 00000000000..58d2c8b32ef Binary files /dev/null and b/jOOQ-website/img/favicon-16.png differ diff --git a/jOOQ-website/img/favicon-32.png b/jOOQ-website/img/favicon-32.png new file mode 100644 index 00000000000..21115aade8b Binary files /dev/null and b/jOOQ-website/img/favicon-32.png differ diff --git a/jOOQ-website/img/forkme.png b/jOOQ-website/img/forkme.png new file mode 100644 index 00000000000..10c08f4d550 Binary files /dev/null and b/jOOQ-website/img/forkme.png differ diff --git a/jOOQ-website/img/jooq-console-01.png b/jOOQ-website/img/jooq-console-01.png new file mode 100644 index 00000000000..b52d1f46449 Binary files /dev/null and b/jOOQ-website/img/jooq-console-01.png differ diff --git a/jOOQ-website/img/jooq-console-02.png b/jOOQ-website/img/jooq-console-02.png new file mode 100644 index 00000000000..4c32430baf7 Binary files /dev/null and b/jOOQ-website/img/jooq-console-02.png differ diff --git a/jOOQ-website/img/joox-small.png b/jOOQ-website/img/joox-small.png new file mode 100644 index 00000000000..aa255723e42 Binary files /dev/null and b/jOOQ-website/img/joox-small.png differ diff --git a/jOOQ-website/img/logo.png b/jOOQ-website/img/logo.png new file mode 100644 index 00000000000..3c4dfe1eb88 Binary files /dev/null and b/jOOQ-website/img/logo.png differ diff --git a/jOOQ-website/img/navigation-item-active.png b/jOOQ-website/img/navigation-item-active.png new file mode 100644 index 00000000000..3c4966b0803 Binary files /dev/null and b/jOOQ-website/img/navigation-item-active.png differ diff --git a/jOOQ-website/inc/LICENSE.txt b/jOOQ-website/inc/LICENSE.txt new file mode 100644 index 00000000000..fd12d44afa0 --- /dev/null +++ b/jOOQ-website/inc/LICENSE.txt @@ -0,0 +1,33 @@ + Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com + All rights reserved. + + This software is licensed to you under the Apache License, Version 2.0 + (the "License"); You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + 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 "jOOQ" 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 COPYRIGHT OWNER 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. \ No newline at end of file diff --git a/jOOQ-website/inc/RELEASENOTES.txt b/jOOQ-website/inc/RELEASENOTES.txt new file mode 100644 index 00000000000..25114da7b4d --- /dev/null +++ b/jOOQ-website/inc/RELEASENOTES.txt @@ -0,0 +1,2451 @@ +jOOQ Release notes +================== +For an interactive overview, see also +https://sourceforge.net/apps/trac/jooq/report/6 + +For a formatted text version, see +http://www.jooq.org/notes.php + +For a text version, see +http://www.jooq.org/inc/RELEASENOTES.txt + +Version 2.2.0 - April 09, 2012 +================================================================= + +Finally, jOOQ has added support for another database, and a very +promising one, that is. http://www.cubrid.org is a surprisingly +original mixture of a relational and object-oriented database +where tables and classes are synonyms, so are records and +instances. The CUBRID database has a high level of compatibility +with MySQL and is aimed at MySQL users wanting more performance +for their web applications. For details, see the slides here: + +http://www.slideshare.net/cubrid/growing-in-the-wild-the-story-by-cubrid-database-developers + +jOOQ is proud to have become a CUBRID partner, looking forward +to further cooperation with CUBRID in the near future. + +Apart from that, jOOQ now fully supports SQL standard INTERVAL +data types. With JDBC and JPA lacking official support for this, +jOOQ aims for becoming the tool of choice for vendor-specific +date time arithmetic. True INTERVAL data type support is given in +HSQLDB, Ingres, Oracle, Postgres databases. Besides that, CUBRID +and MySQL support INTERVAL data type arguments in functions. In +other dialects, jOOQ simulates DATEADD(), TIMESTAMPADD(), +DATEDIFF(), TIMESTAMPDIFF(). + +For jOOQ's OLAP friends, there is now also support for the Oracle +LISTAGG function (LIST() in Sybase, XMLAGG() in DB2, STRING_AGG() +in Postgres, GROUP_CONCAT() in CUBRID, H2, HSQLDB, MySQL). +LISTAGG is an "ordered aggregate function", meaning that the +aggregation is done using a specific ordering. Keep an eye out +for more such function support in future versions. + +Features and improvements +------------------------- +#566 - Add support for INTERVAL data types +#585 - Add support for DATE, TIME and INTERVAL arithmetic +#1183 - Add support for DEFAULT values in Oracle stored procedure + parameters +#1243 - Let generated POJOs (and Records) extend base classes + and implement interfaces +#1252 - Avoid JDBC escape syntax for Oracle stored procedure + calls. Generate PL/SQL syntax, instead +#1255 - Let generated Tables contain a public default constructor + to be able to extend those classes - Github issue #12 +#1257 - Add CUBRID support +#1268 - Add Factory.field(String, QueryPart...) to generate + custom clauses +#1269 - Add YEAR(), MONTH(), DAY(), HOUR(), MINUTE(), SECOND() + function support as shortcuts for EXTRACT() +#1273 - Simulate GROUP_CONCAT() aggregate function using Oracle's + LISTAGG() function, where available +#1274 - Add support for the Oracle LISTAGG(...) WITHIN GROUP + (ORDER BY ..) [ OVER (..) ] aggregate / analytic function +#1275 - Simulate Sybase LIST() aggregate function using Oracle's + LISTAGG() function +#1276 - Simulate Oracle's LISTAGG() in DB2 using XMLAGG(), + SUBSTR() and CONCAT() +#1278 - DEBUG log both executed SQL and SQL with inlined bind + values + +API changes (backwards-compatible) +---------------------------------- +#1262 - Pull up OracleFactory.prior() and other CONNECT BY + related methods to Factory + +Bug fixes +--------- +#1241 - Wrong variable binding when comparing CHAR columns in + Derby and DB2 without explicit casting to VARCHAR +#1244 - Cannot override class name in GeneratorStrategy in + Mode.POJO +#1248 - Setting both false and + true leads to compilation errors +#1256 - Fixed code generation issue with H2 user defined + functions returning VARCHAR +#1263 - Pass fetchsizes <= 0 to the JDBC driver (for vendor- + specific MySQL compatibility) +#1270 - Most databases allow for multiple identical foreign keys. + This leads to compilation errors in generated source code + +Version 2.1.0 - March 18, 2012 +================================================================= + +With this version, jOOQ attempts to follow versioning rules +imposed by semantic versioning: http://semver.org/ +There will be 1 minor release per month, and a couple of patch +releases per year, depending on popular demand + +The main improvements for this release include + +- The possibility of providing jOOQ with a custom type mapping. + You can now define your own Converter types that are used by + jOOQ to map a database's SQLDataTypes to your custom types. + This is particularly useful for Java's enums. Read more about + custom converters in the manual: + http://www.jooq.org/manual/ADVANCED/CustomTypes/ + +- There are a lot of new runtime configuration options to control + the SQL style of SQL rendered by jOOQ. You can now specify + whether table/column names should be quoted / capitalised / + lower-cased, whether SQL keywords should be capitalised or not, + etc... + +- The handling of NULL has been improved in favour of using jOOQ + as a SQL builder library (e.g. along with Spring for execution) + NULL is no longer inlined, but bound as a variable. + +- jOOQ now supports simulation of the relational division + operation using an intuitive syntax. Read more about the + relational division here: + http://en.wikipedia.org/wiki/Relational_algebra#Division + +Features and improvements +------------------------- +#161 - Add runtime configuration to pretty print rendered SQL +#349 - Add SQLite relations support +#491 - Add runtime configuration for SQL keyword style (upper + case, lower case) +#521 - Add runtime configuration for SQL reference style (upper + case, lower case, as-is, quoted) +#1150 - Add code generation option to disable generation of + records +#1181 - Add support for SQL Server data types timestamp and + rowversion +#1188 - Load default Settings from the classpath at + /jooq-settings.xml, or from -Dorg.jooq.settings +#1193 - Specify main-class in jOOQ Console's manifest.mf and + include dependency in jar file +#1194 - Add ColumnDefinition.isNullable() +#1202 - Add support for the relational division operation: + A.divideBy(B).on(A.ID.equal(B.A_ID)).returning(A.X, ...) +#1207 - Add Factory.batch(Collection) for + convenience +#1208 - Render @javax.persistence.Column(nullable = false) + property, if available +#1209 - Render @javax.persistence.Column(length, precision, + scale) properties, if available +#1215 - Add org.jooq.Converter for custom type mapping +#1216 - Overload Record, Result.getValue() and .setValue() + methods to accept a Converter +#1217 - Add EnumConverter as a base type for custom enum + converters +#1218 - Add code generation options to generate + referencing a Java type and a Converter +#1224 - Add DataTypeDefinition.getLength() to jooq-meta's type + system +#1233 - Support custom JDBC properties for jooq-codegen +#1234 - Add Database.getTable(SchemaDefinition, String, boolean) + to fetch tables case-insensitively +#1239 - Add Factory.fetchLazy(String, Object...) + +API changes (backwards-compatible) +---------------------------------- +#1191 - Deprecate ConfigurationRegistry and replace by equivalent + ExecuteListener feature +#1219 - API Bug: Cannot use LIMIT .. OFFSET along with FOR UPDATE + +Bug fixes +--------- +#625 - Remove dependency from generated Routines to the + generator's SQLDialect +#1128 - NULL is inlined in INSERT statement instead of binding it + as a variable. This can cause issues when using jOOQ with + Spring +#1137 - Exclude MySQL column-level enum types when that column is + overridden by a +#1158 - Derby cannot handle inlined NULL literals in some + contexts +#1180 - Execute BatchMultiple (multi-query batch query), when + executing BatchSimple (single-query, multi-bind-value + query) with StatementType == STATIC_STATEMENT +#1189 - TableMapping regression for SQLite database +#1190 - Cannot store SQLite records when using + StatementType.STATIC_STATEMENT +#1199 - Table.getFields() returns an internal representation of a + table's field list. Make generated tables immutable! +#1200 - Internal API leak exposed through covariance in + AbstractType.getFields() +#1211 - Enforce method name disambiguation also when using custom + strategies in jooq-codegen +#1212 - Enforce identifier disambiguation also when using custom + strategies in jooq-codegen +#1221 - Incorrect ExecuteListener invocation for INSERT .. + RETURNING. executeStart() and executeEnd() are omitted +#1223 - Cache ExecuteListener classes for performance +#1225 - Bind NULL byte[] as java.sql.Types.BINARY instead of + BLOB in Postgres, to avoid errors +#1226 - Bind NULL UDTs with their associated type name in Oracle +#1232 - SQLException when Factory.fetch() does not return a + ResultSet +#1237 - Don't generate enum classes for columns in MySQL tables + that are excluded from code generation + +Version 2.0.5 - February 26, 2012 +================================================================= + +This release finally introduced basic runtime configuration +features for the jOOQ Factory. This configuration now includes: + +- Execute listener and SQL tracing support. jOOQ allows you to + hook your own listeners into jOOQ's query execution engine to + be notified of all sorts of events +- The existing SchemaMapping features. They are now part of the + runtime configuration +- StatementType settings. Specify whether a Factory should + execute java.sql.PreparedStatements (with bind variables) or + static java.sql.Statements with inlined variables. + +The runtime configuration is documented here: + +http://www.jooq.org/manual/JOOQ/Factory/ + +The listener and tracing support has been requested by +Christopher Deckers, a new jOOQ user who has had the courtesy to +contribute the new jOOQ Console, which is documented here: + +http://www.jooq.org/manual/ADVANCED/ExecuteListener/ + +Apart from that, another long-requested feature is now fully +implemented: The GeneratorStrategy, allowing for custom naming +strategies in generated source code. This will allow for +generating custom table / record class name prefixes / suffixes, +as well as overriding the default behaviour for rendering UPPER, +lower and CamelCase artefacts. See the manual for details: + +http://www.jooq.org/manual/META/Configuration/ + +Features and improvements +------------------------- +#93 - Add Field.equalIgnoreCase(), Field.notEqualIgnoreCase() +#408 - Add class prefixes, suffixes and other options to the + code generator +#492 - Add runtime configuration +#1107 - Let Field.contains() support the Postgres ARRAY @> ARRAY + operator +#1140 - Add ResultQuery.fetchResultSet() to return the underlying + JDBC result set +#1143 - Add Result.isNotEmpty() for convenience +#1145 - Add runtime configuration to specify whether jOOQ should + execute java.sql.PreparedStatement (with bind variables) + or a java.sql.Statement (with inlined parameters) +#1146 - Add Query.getSQL(boolean) to indicate that bind values + should be inlined (as a convenience for + Factory.renderInlined(QueryPart)) +#1148 - Add Cursor.resultSet() to expose the underlying ResultSet +#1149 - Allow for optional + "http://www.jooq.org/xsd/jooq-codegen-2.0.4.xsd" + namespace in jooq-codegen configuration +#1152 - Add & org.jooq.EnumType> + E MySQLFactory.enumType(Class, int) for enum reverse + lookups of MySQL-specific enums +#1159 - Support matching numbers with LIKE, e.g. ID LIKE '%33%' +#1160 - Implement Field.contains(), .startsWith(), .endsWith() + for numeric values, too +#1161 - Use reflection to remove compile-time dependency on + ojdbc for creating ARRAYs +#1162 - Integrate jOOR into jOOQ for simpler reflection +#1164 - Distinguish between Definition.getInputName(), + .getOutputName() +#1165 - Add constraint name to generated javadoc +#1167 - Trivial issue with org.jooq.Factory.exists Javadoc - + GitHub issue #10 +#1169 - Add Configuration.setData(), getData() to convey custom + data in a configuration's lifecycle +#1172 - Add runtime configuration to deactivate JooqLogger +#1177 - Add jOOQ-Console module to jOOQ +#1184 - Add DataType.isArray() + +API changes (backwards-compatible) +---------------------------------- +#1142 - Rename Result.exportXML() to Result.intoXML() to stay + more consistent +#1151 - Deprecate SchemaMapping in favour of new runtime + configuration + +Bug fixes +--------- +#978 - Schema.getTables() and similar methods return empty lists + when Schema is mapped with SchemaMapping +#1153 - Bad inlining of booleans in Sybase ASE / DB2 / Oracle + SQL Server / SQLite +#1154 - Bad inlining of byte[] in most dialects +#1155 - byte[] are erroneously converted to String when using + Record.intoArray() +#1156 - Bad inlining of DATE / TIME / TIMESTAMP data types in + Ingres (and other dialects, when the setting differs from + the default) +#1166 - Some generated Javadoc uses naming strategy or plain + output name, instead of qualified output name +#1168 - Oracle packages are generated as static, instead of + static final +#1175 - Factory.use() seems to render SQL with the Schema name + still present +#1179 - Oracle-generated ArrayRecords need a reference to + org.jooq.Schema to read TABLE of OBJECT from stored + procedures + +Test cases +---------- +#1147 - Add integration tests for executing SQL generated using + Factory.renderInlined() + +Version 2.0.4 - February 12, 2012 +================================================================= + +This release introduced many improvements to source code +generation. These improvements include: + +- Maven and standalone code generation now use the same XML + configuration, which is read by jOOQ-codegen using JAXB. This + allows for more complex configuration elements in the future +- jOOQ-codegen can now handle multi-schema databases and generate + code for tables referencing tables from other schemata. This + is integration tested against the SQL Server AdventureWorks + database +- jOOQ now allows to generate simple POJOs in addition to Records + and to annotate both POJOs and Records with JPA annotations + such as @Entity, @Table, @Id, @Column, @UniqueConstraint, etc. + +You can migrate your existing .properties configuration by running +> org.jooq.util.GenerationTool /your.properties migrate + +Besides that, there is a lot of ongoing work to improve the +integration of Oracle's TABLE and VARRAY types. + +Features and improvements +------------------------- +#8 - Add JPA annotations to generated POJOs / Records +#282 - Add support for multi-schema databases +#287 - Add support for Oracle TABLE types +#395 - Use XML configuration file instead of properties file +#1089 - Add Field.contains(), .startsWith(), .endsWith() as a + convenience for Field.like() (including escaping) +#1092 - Move master data table configuration from + generator.generate to generator.database namespace +#1093 - Add support for generator.strategy in Maven source code + generation +#1094 - Add support for generator.database.date-as-timestamp in + Maven source code generation +#1095 - Move generator.generate.unsigned-types to + generator.database namespace +#1096 - Add support for generator.generate.unsigned-types in + Maven source code generation +#1103 - Add support for SQL Server data type uniqueidentifier +#1106 - Add Factory.escape(Field, char) for use with LIKE +#1108 - Add support for multi-schema databases using Maven code + generation +#1115 - Add support for Oracle VARRAY/TABLE of OBJECT types +#1127 - Add support for POJO classes generation +#1129 - Allow for using Param in LIMIT .. OFFSET clauses +#1132 - Add RenderContext.castMode() to allow for avoiding casts + where this is not really needed +#1136 - Add generation option to enable/disable generating + navigation methods + +Bug fixes +--------- +#1099 - Derby generated artefacts are not sorted alphabetically +#1101 - Internal API leak exposed through covariance in + AbstractTable.joinXXX() methods +#1110 - VARRAY element type information is lost when unnesting + VARRAY's in Oracle +#1111 - VARRAY element type information is lost when unnesting + VARRAY's returned from functions in Oracle +#1114 - Syntax error when unnesting TABLE of OBJECT in Oracle. + The unnested table contains several columns but jOOQ only + unnests "COLUMN_VALUE" +#1117 - NullPointerException when passing an ArrayRecord + containing a null array to a stored function in Oracle +#1125 - Postgres needs casting for date time data types in + queries like SELECT ? FROM DUAL +#1131 - DB2: [Noauthorized routine named "LIKE" of type + "FUNCTION" having compatible arguments was found] when + using Field.like(concat(x, y)) +#1133 - Compilation errors in generated source code if the same + constraint name exists in several schemata +#1134 - NullPointerException in code generation when a foreign + key constraint references a table from another schema + that is not being generated +#1135 - Generated Javadoc references inputSchema instead of + outputSchema + +Test cases +---------- +#1009 - Add more integration tests for proper handling of + java.sql.Date, Time, Timestamp +#1090 - Run jOOQ tests against AdventureWorks SQL Server sample + database +#1105 - Add integration tests for multi-schema source code + generation and querying +#1122 - The 10k lines of integration test code are too heavy for + the compiler. Create test modules with fewer lines of + code, each. + +Version 2.0.3 - January 29, 2012 +================================================================= + +This release focuses on increased compatibility between various +SQL dialect integrations as far as ARRAY and JOIN support is +concerned: + +- ARRAY types are only available in H2, HSQLDB, Oracle, Postgres. + Nevertheless, they can be somewhat simulated in other dialects + using nested selects with UNION ALL. Increased compatibility + leads to a nicer API, where ARRAYs are used along with ALL/ANY + quantifiers, for instance. + +- JOIN syntaxes can be quite powerful in SQL. Apart from + simulating NATURAL JOIN, JOIN USING clauses, as well as a + synthetic "KEY JOIN" syntax, jOOQ now also supports nesting + JOIN expressions to create more complex table sources. See a + recent blog post on the subject here: + +http://lukaseder.wordpress.com/2012/01/15/lets-revise-the-sql-from-clause/ + +Features and improvements +------------------------- +#578 - Add KEY JOIN syntax to simulate joining using generated + foreign keys +#577 - Simulate NATURAL JOIN syntax, where this is unavailable +#582 - Simulate JOIN USING syntax, where this is unavailable +#671 - Allow for nesting JOIN clauses +#676 - Add Table.join() methods to create more flexible table + sources +#993 - Add Field.equalAny(T[]), .equalAny(Field) methods +#1048 - Simulate (array) syntax for dialects + that do not support arrays +#1051 - Add Factory.execute(String, Object...) as a convenience + method for Factory.query(...).execute() +#1055 - Simulate Factory.table(Object[]) and table(List) using + UNION ALL in dialects that do not support arrays +#1060 - Improve debug logging of H2 arrays. The syntax is not + ARRAY[1, 2], but (1, 2) +#1065 - Add OracleFactory.sysContext(String, String) to support + Oracle's SYS_CONTEXT function +#1069 - Add support for INSERT INTO table(field1, field2, ...) + SELECT syntax - as opposed to the existing INSERT INTO + table SELECT +#1072 - Add support for LIKE .. ESCAPE .. syntax +#1074 - Add Field.notBetween(T, T) for convenience +#1080 - Add support for JDBC's Statement.setFetchSize() in + ResultQuery.fetchLazy() +#1082 - Add some more DEBUG logging in AbstractResultQuery + +API changes (backwards-compatible) +---------------------------------- +#1059 - Change SelectFromStep.from(Collection>) to + from(Collection>) + +API changes (backwards-incompatible) +------------------------------------ +#1087 - Change the NTILE function to return Field + instead of Field + +Bug fixes +--------- +#1071 - Make Sequence Serializable +#1081 - Derby error in NULL handling when simulating unnested + arrays that contain NULL values +#1084 - Bind index mismatch in val(null).equal(null) and in + val(null).notEqual(null) +#1091 - Add missing @Support annotations on Table.crossJoin() + methods + +Test cases +---------- +#1026 - Add integration tests for NTILE window function and + document compatibility +#1073 - Add integration tests for NOT IN queries holding NULL + arguments + +Version 2.0.2 - January 8, 2012 +================================================================= + +This is a maintenance release for jOOQ 2.0. The main improvements +include + +- The whole jOOQ API is now annotated with a new org.jooq.Support + annotation to help you assess whether a certain SQL clause is + available in your database or not. This is particularly useful + when your application should support several databases at once + (e.g. MySQL, Postgres, Oracle) +- The Oracle PIVOT clause is now formally supported for advanced + statistical queries in Oracle. This clause will be simulated in + other dialects in the future. +- The DATE data type can be mapped to TIMESTAMP. This important + when you query a legacy Oracle database, where DATE columns + can also contain time information +- Several convenience methods have been added for more fluent + syntax, when using plain SQL result queries, subqueries as + tables, or when unnesting arrays in ANY() and ALL() quantifiers + +Further type mapping support is still experimental. An official +cooperation with MinuteProject for source code generation is +being analysed. With MinuteProject, many source code generation +issues could be addressed centrally, as MinuteProject specialises +in source code generation: + +http://minuteproject.wikispaces.com/ + +Features and improvements +------------------------- +#595 - Add support for Oracle's PIVOT clause +#869 - Add support for using ANY, ALL with arrays, not just with + subselects +#1007 - Formally document the API methods to indicate whether + something is supported by any given SQL dialect +#1011 - Add code generation configuration parameter to avoid + generating @Generated annotation +#1019 - Render LIMIT x OFFSET y also for MySQL, instead of + LIMIT y, x +#1022 - Add missing Sybase ASE implementation for Factory.use() +#1024 - Add Factory.resultQuery(String, Object...) to allow for + arbitrary execution modes of plain SQL queries (lazy, + later, into, array, etc) +#1025 - Add missing SQLite implementation for Factory.deg() and + Factory.rad() +#1033 - Generate table comments into generated Tables.java as + Javadoc +#1040 - Add Object[][] Result.intoArray() and + Object[] Record.intoArray() for convenience. Let + E Record.into(Class) also support array types. +#1041 - Add Table Factory.table(Select) convenience + method for more fluency +#1042 - Add support for DISTINCT keyword in SUM, AVG, MIN, MAX + aggregate functions +#1046 - Generate Ingres table and column comments in generated + source code (only Ingres 10) + +API changes (backwards-compatible) +---------------------------------- +#1050 - Deprecate usage of SOME quantifier in predicates, such as + equalSome() + +API changes (backwards-incompatible) +------------------------------------ +#1036 - Fixed API typo in + WindowsRowsStep.rowsBetweenUnboundedFollwing() +#1037 - The fluent API allows for JOIN clauses without FROM + clause + +Bug fixes +--------- +#1010 - The MERGE INTO .. WHEN NOT MATCHED THEN INSERT .. syntax + may cause type-safety issues in some databases. VALUES + should be converted before binding +#1014 - FindBugs: Latent risk of infinite recursion due to typo + in QueryPartList.retainAll(); +#1015 - FindBugs: 7 occurrences of "Bad attempt to compute + absolute value of signed 32-bit hashcode". In extreme + cases, this could lead to SQL syntax errors +#1016 - The Oracle CONNECT BY cond1 AND cond2 syntax erroneously + creates a WHERE cond2 CONNECT BY cond1 statement +#1028 - Syntax errors when using untyped param() in HSQLDB (and + other strongly typed dialects) +#1029 - Postgres can't bind NULL values in cases, where bind type + is Object.class and bind value was created with + Factory.param() +#1030 - UnsupportedOperationException when calling + Query.bind(int, Object) on a query containing plain SQL + fields +#1031 - Incorrect debug logging when plain SQL QueryParts like + field("?") bind null values +#1032 - Incorrect debug logging when plain SQL QueryParts contain + String literals, such as 'Hello? Anyobody out there?' +#1047 - Field.notEqualAny() erroneously renders <> ALL() + +Test cases +---------- +#1021 - Add explicit integration tests for + LEFT|RIGHT|FULL OUTER JOIN + +Version 2.0.1 - December 23, 2011 +================================================================= + +This is a maintenance release for jOOQ 2.0. The main improvements +include + +- Better integration for using jOOQ with Spring Data. This + includes support for named parameters, as well as allowing to + change bind values on previously constructed Query objects +- The MERGE statement has been enhanced for better integration + with Oracle. +- jOOQ is now ready to use with Scala / Groovy + +For more information about using jOOQ with Scala, see this blog +post: +http://lukaseder.wordpress.com/2011/12/11/the-ultimate-sql-dsl-jooq-in-scala/ + +There is now also experimental support for a custom type mapping. +This mapping allows to rewrite data types at code generation time +as well as to specify custom enum data types (e.g. boolean Y/N). +Not all integration tests run smoothly for custom data types, +hence, this feature is not yet fully supported. + +Features and improvements +------------------------- +#691 - Add support for Oracle CURSOR REF IN / INOUT parameters +#677 - Add type-mapping configuration, enforcing types for + columns +#947 - Add custom type mapping support (experimental) +#968 - Allow for custom enum types, configured in the code + generator (experimental) +#974 - Add Schema.getTable(String), getSequence(String), + getUDT(String) for better runtime Schema meta-navigation +#975 - Add Sequence.getName(), getSchema(), getDataType() +#980 - Add support for named parameters, to better interact with + Spring +#991 - Add Query.bind(String, Object) and bind(int, Object) to + easily modify existing bind values +#992 - Document thrown DataTypeException in Convert methods +#998 - Enhance MERGE statement for Oracle extensions: + WHEN MATCHED THEN UPDATE .. WHERE .. DELETE WHERE .. + WHEN NOT MATCHED THEN INSERT .. WHERE .. +#1000 - Add support for MySQL's INSERT INTO .. SET .. syntax in + MERGE statement's WHEN NOT MATCHED THEN INSERT clause + +API changes (backwards-compatible) +---------------------------------- +#981 - Cannot insertInto(table("my_table")), as plain SQL tables + return Table, not Table. Relax + bound on R +#988 - Change Factory.field(String) to return Field + instead of Field +#999 - Make MERGE's WHEN MATCHED .. and WHEN NOT MATCHED .. + clauses optional +#1001 - Identity.getField() should return TableField + instead of Field +#1006 - Add Factory.value(...) as a synonym for Factory.val(...) + for increased Scala / Groovy compatibility + +Bug fixes +--------- +#973 - EnumType renders name() instead of getLiteral() in + formatXXX() methods +#977 - EnumType renders name() instead of getLiteral() in + Convert.convert() method +#979 - Record.from() sets all changed flags to true. That's not + necessarily correct in the event of storing the record + back to the DB +#985 - AbstractRecord.equals() does not correctly compare + arrays. Compare them using Arrays.asList() +#986 - Postgres / DB2 / Sybase ASE foreign-key namespace is + unique-per-table. jOOQ forces all foreign keys from all + tables into the same namespace +#990 - Problems when encoding arbitrary byte[] as String(byte[]) + in inlined SQL. This can cause issues when DEBUG-level + logging is activated +#995 - Routines don't respect SchemaMapping - Github issue #8 +#1002 - TableRecord.storeUsing() doesn't update IDENTITY column + values, if the column is not part of the main unique key +#1003 - Sybase / SQL Server / MySQL / Ingres / H2 / Derby's + INSERT .. RETURNING simulation returns null if a table + has an IDENTITY column, but no primary/unique key +#1005 - The INSERT INTO .. VALUES .. syntax may cause type-safety + issues in some databases. VALUES should be converted + before binding + +Test cases +---------- +#984 - Detach IDENTITY column tests from UNIQUE KEY tests, + create a dedicated test suite instead + +Version 2.0.0 - November 25, 2011 +================================================================= +This release is a fresh start in many areas of jOOQ, adressing +issues that have been requested by users for a long time. These +release notes docment the most important changes, a detailed +upgrade guide, as well as the detailed list of improvements. + +Most important changes +---------------------- +- The API became more static. This applies to many Factory + methods, such as val(), literal(), as well as to many Field + methods that have been moved over to the Factory. For example, + when before, you wrote this using "postfix function notation": + +
NAME.replace(" ", "_").trim()
+ + you will now write (just as in SQL): + +
trim(replace(NAME, " ", "_"))
+ + Using static imports of Factory.*, jOOQ makes SQL look even + more like SQL. The current "postfix notation" is maintained for + backwards compatibility. +- By default, jooq-codegen will now generate a "dynamic" meta + model as opposed to the existing static one. Generated tables + covariantly override the as(String) aliasing method, leading + to a much more convenient aliasing style. When before, you + wrote: + +
+Table parent = T.as("parent");
+Table child  = T.as("child");
+Condition join =
+  parent.getField("ID").equal(child.getField("PARENT_ID"))
+
+ + You can now write: + +
+T parent = T.as("parent");
+T child  = T.as("child");
+Condition join = parent.ID.equal(child.PARENT_ID)
+
+ + Of course, the existing notation still works + +- Exceptions are no longer checked. When previously, the DB's + SQLException was propagated to client code, there is now an + unchecked DataAccessException hierarchy, similar to that of + Spring. This will eventually give way to a standardised error + handling abstraction, in future developments. +- Window functions are now constructed from their underlying + aggregate functions just like in SQL. For example: + +
+sum(AMOUNT)
+sum(AMOUNT).over().partitionBy(ACCOUNT)
+
+ + This makes for a more concise API, especially when considering + future extensions, such as Oracle's KEEP (DENSE_RANK FIRST...) + syntax. +- More type safety has been introduced regarding various places + where generic and types are involved. + This is especially true for INSERT / UPDATE / DELETE statements +- Sequences now also have a type +- Unsigned number types are now supported in those databases that + use them. Unsigned numbers are implemented in jOOU, a spin-off + open source project. For convenience, this library is + "internalised" into jOOQ, to avoid adding a dependency + +http://code.google.com/p/joou/ + +Upgrade instructions: +--------------------- +Various of the above changes are incompatible with jOOQ 1.x. In +order to upgrade, please be aware of the following pitfalls: + +- The schema needs to be re-generated. +- Much of the post-fix function notation is replaced by static + methods in the Factory. Today's org.jooq.Field API is + maintained in jOOQ 2.0, for backwards compatibility. It will + be removed, eventually, though. Expect some incompatible + changes, where window functions are involved +- Some Factory instance methods (such as val(), literal()) are + now static. They are compatible, but may cause compiler + warnings. +- The meta model is now an instance model by default. If you + prefer the static meta model, you can configure this in your + jooq-codegen configuration. +- The additional typesafety involving and types may cause + compiler warnings and errors. +- SQLException is no longer part of the API. This can cause + compiler issues, in particular when extending jOOQ +- Some utility classes have moved to org.jooq.tools + +Should these incompatibilities be too significant for your +project, you can still stay on the 1.x branch, which will be +maintained for a while. Be aware that upgrading might be more +difficult, later, though. + +Features and improvements +------------------------- +#55 - Implement improved exception handling +#117 - Improve DSL support for field and table aliasing (decrease + verbosity) +#519 - Add support for MySQL UNSIGNED numeric types +#626 - Create static function access +#661 - Add support for bitwise operators +#718 - Sequences should be mapped to appropriate type (e.g. + SMALLINT, INT, BIGINT, etc) +#734 - Add support for Oracle / SQL Server CUBE() and ROLLUP() + grouping functions +#751 - Add support for Oracle / SQL Server GROUPING SETS() + function +#799 - Add support for Oracle PL/SQL's object-oriented MEMBER + PROCEDURES and MEMBER FUNCTIONS +#804 - Add to Insert, Update, Delete +#835 - Review API typesafety for InsertSetMoreStep + set(Field, T) and similar methods +#890 - Add Factory.selectCount() convenience method +#891 - Let min() max(), etc functions return a new type + AggregateFunction. This type can then be used as an entry- + point for window functions +#892 - Add support for Oracle / SQL Server GROUPING() and + GROUPING_ID() functions to be used along with CUBE() and + ROLLUP() +#893 - Simulate ROLLUP() function for MySQL, using the WITH + ROLLUP grouping modifier +#894 - Move functions from Field to org.jooq.impl.Factory + and make them static +#895 - Add power(..., Field) +#897 - Add (experimental) Spring integration project +#898 - Replace usage of checked SQLException by an unchecked + DataAccessException, similar to that of Spring +#899 - Build jOOQ .jar files as bundles to be deployed into OSGI + environments +#900 - Purge deprecated API - Prior to 2.0 +#901 - Introduce InvalidResultException as a subtype of + DataAccessException for integrity checks in methods like + ResultQuery#fetchOne(), ResultQuery#fetchMap(), etc. +#902 - Make AggregateFunction the base type for constructing + window functions +#904 - Move SQLDialectNotSupportedException into + org.jooq.exception package +#905 - Introduce MappingException as a subtype of + DataAccessException for integrity checks in methods like + ResultQuery#fetchInto(), etc. +#907 - Add missing Field.like(Field), notLike(Field) + methods to overload the existing Field.like(T), notLike(T) +#908 - Change rpad / lpad functions to accept String instead of + char +#912 - Add R newRecord(Table, Object) as + the inverse of various into(Class) methods +#916 - Add > {Record.into(Table) | + Result.into(Table) | ResultQuery.fetchInto(Table) | + Cursor.fetchInto(Table)} +#917 - Add various Cursor.fetchOneInto() convenience methods +#918 - Add CustomTable, CustomRecord as base classes for more + convenience when used with various into(Table) methods +#919 - Allow for accessing non-public constructors of Record + subtypes +#923 - Move some utilities to org.jooq.tools +#924 - Generate a reference to every table in a new Tables.java + class for improved static access +#928 - Add DataTypeException extending DataAccessException in + case something went wrong when converting data types +#930 - Support converting date time types to java.util.Calendar. + This applies to various into(Class) methods, as well as + Result.getValue(xx, Class) +#931 - Allow for conversion between Long and date/time types, and + vice versa +#932 - Let the bound of R in TableRecord extend TableRecord, + in UpdatableRecord to extend UpdatableRecord +#933 - Add support for type Character in Record.into(Class) + methods and similar +#936 - Accept primitive types, such as int.class for type + conversion +#938 - CODEGEN: Add static/instance table field configuration +#939 - Include license.txt and readme.txt in .jar files' META-INF + directory +#953 - Make DefaultGeneratorStrategy methods non-final to allow + for overriding +#954 - Add examples for source code generation of multiple + schemata with Maven +#955 - Generate a reference to every type in a new UDTs.java + class +#957 - Add R Factory.newRecord(UDT) for constructing + attached UDTRecords +#958 - CODEGEN: Add generation-time schema mapping, allowing for + re-writing schemata in jooq-codegen +#960 - CODEGEN: Add code generation configuration parameter to + avoid using the new UByte, UShort, UInteger, ULong wrappers + for UNSIGNED number types +#961 - Use Oracle's SYS.ALL_SEQUENCES.MAX_VALUE to determine the + type of a sequence. +#969 - Add List ResultQuery.fetch(Field, + Class) convenience method + +Bug fixes +--------- +#686 - Reduce the internal API leak by preventing access to + TableFieldImpl, UDTFieldImpl, ParameterImpl +#903 - lag(Field, int, T) erroneously delegates to lead() +#906 - Add more NullPointerException safety to API +#913 - NoClassDefFoundError in JooqUtil.isJPAAvailable() +#920 - Generic type is lost in Cursor.fetchInto(RecordHandler) +#925 - SelectConditionStep should extend SelectConnectByStep, not + SelectGroupByStep +#926 - AbstractRecord.into() fails to convert java.sql.Date into + java.util.Date +#934 - Don't consider static members in reflection utilities when + used with Record.into(Class) and similar methods +#935 - Don't consider final member fields in reflection utilities + when used with Record.into(Class) and similar methods +#937 - In the event of name clash (same name for table and field) + generated code has errors +#945 - Calling UpdatableRecord.setValue() twice with the same + argument causes the changed flag to be reset to false +#948 - Always set the changed flag to true in Record.setValue() +#959 - Compilation errors in generated source code if MySQL enum + values match Java reserved words, such as 'true', 'false', + 'new', etc... +#962 - Postgres ordering of generated enum literals is unstable +#967 - Better document type conversion + +Version 1.7.0 - November 25, 2011 +================================================================= +This is a maintenance release for the 1.x branch. Some important +bug fixes are merged from version 2.0. These include: + +Bug fixes +--------- +#925 - SelectConditionStep should extend SelectConnectByStep, not + SelectGroupByStep +#926 - AbstractRecord.into() fails to convert java.sql.Date into + java.util.Date +#937 - In the event of name clash (same name for table and field) + generated code has errors +#945 - Calling UpdatableRecord.setValue() twice with the same + argument causes the changed flag to be reset to false +#948 - Always set the changed flag to true in Record.setValue() +#951 - Empty Password for jooq-codegen-maven causes NPE + +Version 1.6.9 - November 7, 2011 +================================================================= +This is a maintenance release for the 1.x branch. Developments +on this branch will stop after version 1.6.9. Only important bug +fixes are merged to this branch. Developments for release 2.0 +have started. + +The most important functionality in release 1.6.9 is the newly +added support for JDBC batch operations. You can now batch +execute several queries. + +See the official blog for more information: +http://lukaseder.wordpress.com/2011/10/25/jdbc-batch-operations-with-jooq/ + +Features and improvements +------------------------- +#621 - Add support for JDBC batch operations +#794 - Add support for ORDER BY [int value] in order to reference + a column index for sorting +#882 - Optimise Field.isTrue() and isFalse(). Take Field's data + type into consideration. +#885 - Add support for INSERT INTO .. VALUES (..) syntax, + omitting explicit field declarations +#887 - Add List Cursor.fetchInto(Class) + +Bug fixes +--------- +#748 - H2 regression in 1.3.158 regarding stored functions, which + return a ResultSet (this was fixed in H2) +#859 - Derby casting of numeric types to BOOLEAN doesn't work +#886 - Regression in date extract function when used in a + subselect +#888 - Derby casting of VARCHAR to FLOAT (and similar) doesn't + work + +Version 1.6.8 - October 22, 2011 +================================================================= +The main improvement of this release is the re-design of the +stored procedure / function API. With 12 supported RDBMS, which +all have their own idea about what is a stored procedure and what +is a stored function, it has proven to be a better design, to +unite them in one single type: org.jooq.Routine. A routine can +have a return value as well as OUT parameters. It can be embedded +in SQL and used as a field or a table. + +This means, you will need to re-generate your database schema, +when upgrading to jOOQ 1.6.8. After re-generation, you'll need to +fix your client code. These are the package changes: + +- [generated.package].procedures > [generated.package].routines +- [generated.package].functions > [generated.package].routines +- [generated.package].Procedures > [generated.package].Routines +- [generated.package].Functions > [generated.package].Routines + +Oracle generated packages are not re-located. With these +improvements, using stored procedures and functions becomes even +more reliable, especially when cursor types are involved. Read +more about the rationale behind this change: + +http://lukaseder.wordpress.com/2011/10/17/what-are-procedures-and-functions-after-all/ + +Apart from that, important improvements have been made in the +area of plain SQL tables. Also, consider a demo integration of +jOOQ with Google Cloud SQL: + +http://lukaseder.wordpress.com/2011/10/22/jooq-and-google-cloud-sql-example/ + +Features and improvements +------------------------- +#271 - Don't pre-fetch table meta data when selecting from plain + SQL tables +#489 - Add support for SELECT * (i.e. render SELECT * where + applicable) +#596 - Add support for VARIANCE() and STDDEV() OVER() window + functions +#608 - Add jOOQ version number in generated source code +#670 - Add more Javadoc to Field.xxx() functions +#692 - Add support for ResultSet type returned from HSQLDB + stored functions +#850 - Use http://www.jooq.org as URL for the @Generated + annotation +#854 - Add convenience methods Fields.isTrue(), isFalse() for + conversion of "Y", "YES", "1", "true", "on", etc into a + boolean condition +#870 - Add support for MEDIAN aggregate function +#872 - Add support for STDDEV_POP(), STDDEV_SAMP(), VAR_POP(), + VAR_SAMP() aggregate functions +#874 - Reduce the number of internal classes for dialect-specific + function aliases +#878 - Implement DataType.equals() and hashCode() + +API changes (backwards-compatible) +---------------------------------- +#851 - Change Field.{sortAsc|sortDesc}(List sortList) into + Field.{sortAsc|sortDesc}(Collection sortList) + +API changes (backwards-incompatible) +------------------------------------ +#848 - Purge deprecated API - Prior to 1.6.1 +#849 - Replace Cursor.fetchResult() by Cursor.fetch() +#852 - Review stored procedures / functions concept. Merge them + all into a single "Routine" type + +Bug fixes +--------- +#756 - Error when aliasing HSQLDB and Postgres unnested tables +#761 - Exception when TRACE logging execution with plain SQL + tables involved +#773 - Execute standalone stored functions as CallableStatement + to prevent issues with transactions +#847 - Query.getSQL() doesn't render dialect-specific SQL when + Query is constructed using the fluent API +#853 - DB2 generated convenience methods for stored functions + have unstable ordering +#857 - Derby casting of numeric types to String / VARCHAR does + not work +#858 - SQLDataType.getSQLDataType() should return itself, instead + of null +#860 - SQLite CEIL function is incorrectly simulated. CEIL(2.0) + returns 3.0 instead of 2.0 +#861 - Field.replace(String) generates bad SQL for various RDBMS. + Field.replace(String, String) works, though +#863 - Ingres integration generates illegal SQL when selecting + things like SELECT 1 WHERE 1 = 1 +#866 - Sybase ASE Field.replace(String) function incorrectly + removes the argument string +#873 - Error when selecting two times the same aggregate field +#877 - Compilation error in generated source code when a table + without a primary key has an identity column +#879 - Add Google Cloud SQL Example +#880 - Query.getSQL() does not consider SchemaMapping + +Test cases +---------- +#811 - Loader integration tests fail for SQLite +#812 - CSV Loader test leaves Postgres JDBC connection in an + inconsistent transactional state on error +#856 - Add integration tests for Field.abs() +#865 - Add integration tests for Field.ascii() +#867 - Add integration tests for Field.sum(), avg(), max(), min() +#881 - Re-design H2 stored functions to be pre-compiled, in order + to speed up integration tests + +Version 1.6.7 - September 25, 2011 +================================================================= + +This release coincides with the launch of the new website at +http://www.jooq.org. Hence, it ships with little additions to the +deliverable itself. + +Apart from new convenience methods, the main addition is a Maven +plugin for jooq-codegen contributed by Sander Plas. + +Features and improvements +------------------------- +#797 - Create Maven plugin for source code generation +#825 - Add List> Factory.fetchMany(String) to + allow for fetching several result sets from stored + procedures, such as Sybase ASE's "sp_help" +#838 - Implement MetaDataFieldProvider.toString() +#841 - Add List Result.getValues(Field, Class) +#842 - Add Query.getBindValues() method to allow for extracting + bind values in the correct order +#843 - Add Factory.fetch(ResultSet) to transform a JDBC ResultSet + into a jOOQ Result + +API changes (backwards-compatible) +---------------------------------- +#837 - Avoid final keyword on Object methods, such as .equals(), + .hashCode(), etc + +Bug fixes +--------- +#836 - Bad syntax when selecting from aliased plain SQL tables +#839 - Boolean conversion in getValueAsBoolean() should trim + String values first +#840 - Numeric conversions in getValueAsXXX() should trim String + values first +#844 - NullPointerException when selecting a column from a Result, + that does not exist + +Version 1.6.6 - September 11, 2011 +================================================================= + +Finally, support for another RDBMS has been added. Sybase's other +important product Sybase Adaptive Server Enterprise (or simply +Sybase ASE) is now officially supported by jOOQ + +Apart from this, there had been important improvements with the +recently added INSERT .. RETURNING clause, as well as some fixes +related to DECIMAL / NUMERIC data types + +Features and improvements +------------------------- +#796 - Complete missing public org.jooq.impl Javadoc +#800 - Add support for Sybase Adaptive Server Enterprise +#808 - Add support for INSERT .. RETURNING for Ingres +#809 - Add support for INSERT .. RETURNING for Sybase SQL + Anywhere using SELECT @@identity +#810 - Add support for INSERT .. RETURNING for SQLite using + last_inserted_rowid() +#813 - Add DSL support for INSERT .. RETURNING +#814 - Change TableRecord to reload its trigger-initialised main + key in Oracle and other RDBMS that don't support IDENTITY + columns +#818 - Add SQLiteFactory.rowid() +#819 - Support SQLite AUTOINCREMENT columns as IDENTITY +#820 - Add Factory.fetchOne(String) for executing plain SQL + queries that return single records +#826 - Allow for returning several records in the INSERT .. + RETURNING clause. This now works for DB2, HSQLDB, MySQL, + and Postgres +#827 - Support Sybase SQL Anywhere's TOP n START AT m clause + instead of simulating it with nested SELECT's + +API changes (previous API now deprecated) +----------------------------------------- +#817 - Deprecate Factory.lastID(Identity) + +Bug fixes +--------- +#815 - SQL Server fetching of IDENTITY value is broken +#821 - Optimise ResultQuery.fetchAny() executing fetchLazy() + internally, and only fetching one record from the cursor +#822 - Let Constant cast to more precise NUMERIC/DECIMAL types + in those RDBMS where casting is necessary +#823 - Cannot bind SQLite BigDecimal, BigInteger types - bind + them as String instead +#824 - BigInteger values cannot be bound in DB2, Derby +#828 - Document inefficient implementation for GREATEST and LEAST + in some RDBMS + +Version 1.6.5 - August 28, 2011 +================================================================= + +This release finally adds a loader for CSV data to jOOQ. You can +now load CSV data using a simple fluent API, configuring error +handling, duplicate behaviour and transaction handling, as well +as various CSV parameters. + +This release also changes the way generated keys are retrieved +after INSERT's. Instead of (potentially inconsistently) running +SELECT MAX(pk) immediately after the INSERT, Postgres' INSERT.. +RETURNING clause is used (or simulated), in a single statement. + +Features and improvements +------------------------- +#784 - Add Result.exportXML() to retrieve a DOM document similar + to that of .formatXML() +#792 - Add support for loading of CSV data into tables +#795 - Add List fetch(int, Class) and + fetch(String, Class) convenience methods +#803 - Add support for INSERT .. RETURNING or simulate it where + not available +#805 - Add T[] fetchArray(int, Class) and + fetchArray(String, Class) convenience methods +#806 - Add T fetchOne(int, Class) and + fetchOne(String, Class) convenience methods + +Bug fixes +--------- +#798 - Oracle IN (...) clause with more than 1000 arguments does + not work +#802 - Use "INSERT .. RETURNING" instead of "SELECT MAX(pk)" + to retrieve the primary key of a new record + +Version 1.6.4 - August 07, 2011 +================================================================= + +This release ships with a couple of useful concepts inspired by +other frameworks. These are: + +- selecting into custom POJO's. Results can be mapped to POJO's + by convention or using JPA @Column annotations +- selecting into custom callbacks. This is already a wide-spread + practice in Spring JdbcTemplates. +- selecting long-running queries asynchronously. This idea has + been inspired by the Avaje Ebean framework + +Apart from these changes and some bugfixes, the internal API has +been completely re-designed. The idea here is that query +rendering and variable binding are even faster (less String +objects), more extensible and more accurate. This is a pre- +requisite for many future developments with even more complex SQL +statements, such as for instance CTE's (Common Table Expressions) + +Features and improvements +------------------------- +#137 - Add support for asynchronous query execution using + FutureResult ResultQuery.fetchLater() similar to + Avaje Ebean +#198 - Add SELECT INTO functionality into POJO's using + T ResultQuery.fetchInto(Class) similar to JPA + CriteriaQuery +#728 - Add .fetchInto(RecordHandler) to ResultQuery, Result, + and Cursor to allow for callbacks similar to Spring's + JdbcTemplate/Ollin Framework +#774 - Add more TRACE logging to .fetchLazy() +#777 - CURSOR: Add function alias: UNNEST for TABLE +#781 - Add E function (Euler number) +#782 - Add T Record.getValue(..., Class) methods + for convenient type conversion +#785 - Allow for storing TableRecord with a provided Field[] + indicating the primary key +#786 - Document thread-safety facts in Factory Javadoc +#788 - Add Key.getFieldsArray() convenience method +#793 - Add support for Oracle's SYS_CONNECT_BY_PATH function + +API changes (backwards-incompatible) +------------------------------------ +#758 - Change internal QueryPart rendering and binding API to use + Configuration and Context as callback parameters. If you + use CustomField or CustomCondition, please correct your + implementations accordingly. Other parts of the API should + not be affected +#778 - Purge deprecated API, deprecation prior to jOOQ 1.5.7 +#790 - Purge deprecated generated code, deprecation prior to + jOOQ 1.5.7 + +API changes (previous API now deprecated) +----------------------------------------- +#776 - Deprecate QueryPart.getSQL(), add Query.getSQL() +#789 - Deprecate Record constructors with Configuration + parameter + +Test cases +---------- +#636 - Add integration tests for more advanced CONNECT BY + example +#772 - Add integration tests for selecting cartesian products + (several tables in FROM clause) + +Bug fixes +--------- +#730 - Sybase cannot bind null values in plain SQL +#759 - Omit the TOP 100 PERCENT clause in SQL Server ordered + top-level queries +#767 - An empty Java package is generated for PL/SQL packages + containing underscores +#771 - Some exotic literals are not properly escaped with quotes + yet, e.g. UDT identifiers, VARRAY types, etc. +#775 - Automatic re-attaching after deserialisation does not work + when used with .fetchLazy() +#787 - The UpdatableRecord's internal changed flags are not + updated after INSERTs / UPDATEs + +Version 1.6.3 - July 31, 2011 +================================================================= + +This is mainly a maintenance release with lots of bugfixes, +mostly around code generation, plain SQL tables, and data types. +Please note that generated source code may contain incompatible +changes due to #639 (see below for details)! + +Apart from that, project CURSOR is advancing and it is now +possible to unnest arrays into tables. See this article for +details about where jOOQ is heading with project CURSOR: + +http://lukaseder.wordpress.com/2011/07/24/the-power-of-ref-cursor-types/ + +Features and improvements +------------------------- +#679 - Improve H2 NVL2 support as of H2 1.3.156 +#680 - Improve H2 ROUND support as of H2 1.3.156 +#735 - Add README documentation to GitHub +#736 - Add more info regarding number of generated artefacts in + jooq-codegen logging +#750 - Add DataType.isNumeric(), .isString(), .isTemporal(), + .isBinary() +#754 - Log query as executed by JDBC PreparedStatement when + TRACE logging (without inlining variables) +#752 - CURSOR: Add support for selecting from ARRAY types +#762 - Use H2's native support of NVL, instead of COALESCE +#764 - CURSOR: Add support for selecting from ARRAY types + returned from stored functions + +API changes (backwards-incompatible) +------------------------------------ +#639 - Map DECIMAL(n, 0) and NUMBER/NUMERIC(n, 0) data types + to Byte/Short/Integer/Long/BigInteger instead of + BigDecimal in generated source code. Re-generated code + will not be compatible! + +API changes (previous API now deprecated) +----------------------------------------- +#731 - Inconsistent API with Field.lessOrEqualToXXX(). Removed + "To" from method name +#757 - Deprecate Factory.constant() methods + +Test cases +---------- +#731 - Add missing integration tests for equalAll(), equalSome() + and similar methods +#747 - Upgrade H2 to 1.3.158 + +Bug fixes +--------- +#632 - Sybase error : column @p0 not found in nested SELECT +#700 - Restore HSQLDB ARRAY support with INFORMATION_SCHEMA + change in HSQLDB 2.2.3, and some fixes in 2.2.5 +#725 - Cannot insert byte[] data with plain SQL +#733 - H2 changed JDBC type for ResultSet/CURSOR from 0 to -10, + like Oracle +#737 - Compilation errors in generated source code if table + fields contain spaces +#738 - Compilation errors in generated source code if MySQL + procedure parameter type contains two comma-separated + arguments (like DECIMAL(10,2)) +#739 - Postgres navigator methods and keys are not re-generated + in the same order +#740 - Formatting is broken on Result.format() with some special + newline characters +#743 - Make SQL Server INFORMATION_SCHEMA independent from + HSQLDB again, to prevent incompatibility issues +#744 - Ingres REAL and FLOAT4 types are generated as FLOAT/FLOAT8 + which maps to java.lang.Double, instead of java.lang.Float +#753 - Postgres error when binding array that contains null + values +#755 - NullPointerException when converting an array containing + a null value +#766 - Bad decoding of JDBC Types BIGINT (to BigInteger instead + of Long) and REAL (to BigDecimal instead of Float) when + plain SQL tables are involved + +Version 1.6.2 - July 10, 2011 +================================================================= + +This release mainly introduces three new projects. + +Project CURSOR where jOOQ finally supports various RDBMS's TABLE, +CURSOR, and REF CURSOR data types. This is especially useful when +those types are returned from stored procedures and functions. +Cursors are simply mapped to jOOQ Result types and can +thus be used like regular table results + +Project EXPORT aims at exporting data from the database in +various serialisable formats, such as XML, CSV, HTML, Text, JSON. +This project will be continued in the future, to also +deserialise from (some of) these data streams. This will allow +for easy transport of jOOQ Result types over the net. + +Project CODEGEN has finally been started. Many improvements +suggested by jOOQ users will be implemented in the next releases. +In this release, important fixes have been made to prevent +compilation errors in generated artefacts. + +Features and improvements +------------------------- +#61 - EXPORT: Add Result.formatXML() +#166 - CURSOR: Add support for ResultSet type returned from + Oracle stored procedures / functions +#411 - Allow for fetching Map (instead of Record) + and List> (instead of Result) +#549 - Add Factory.function() for plain SQL functions +#611 - Simulate RPAD and LPAD in SQL Server, Sybase +#627 - Add support for Postgres FOR UPDATE OF [table-name] clause +#628 - Add support for REPEAT (SQL Server: REPLICATE) function +#637 - Nicely format time in StopWatch logging output +#640 - Simulate Postgres FOR UPDATE OF [table-name] clause in + other dialects +#649 - CURSOR: Add Cursor.fetch(int) .fetchOne() + .fetchResult(int) .fetchResult() +#653 - Add support for MySQL encryption and compression functions +#660 - Clarify Javadoc of UpdatableRecord to explain its + behaviour when changing the main unique key +#669 - EXPORT: Add Result.formatHTML() +#672 - Add convenience method UpdatableRecord.copy() in order to + reset primary key values for a subsequent INSERT +#675 - EXPORT: Add Result.formatCSV() +#683 - Implement ResultImpl.equals() and .hashCode() +#684 - Implement AbstractStore.equals() and .hashCode() +#685 - Add Store.size() to indicate the maximum index of the + Store +#687 - EXPORT: Add result.formatJSON() +#689 - Create separate builds: jooq-core.zip and + jooq-with-dependencies.zip +#690 - CURSOR: Add support for ResultSet type returned from H2 + stored functions +#695 - CURSOR: Add support for ResultSet type returned from + Postgres stored functions +#697 - Add Factory.fetch(String) for executing plain SQL queries + that return results +#701 - Add ResultQuery.fetchArray() and .fetchOneArray to return + Object[][] and Object[] +#704 - Always add top and bottom line in Result.format() +#705 - Right-align numeric values in Result.format() +#716 - Add SUBSTRING function Field.substring(Field, Field) + taking fields as arguments +#719 - Document risk of SQL injection in plain SQL and literal + factory methods +#726 - Add LENGTH function as a synonym for CHAR_LENGTH + +API changes (backwards-compatible) +---------------------------------- +#698 - Inconsistent API with Factory.fetch(Table [,Condition]) + Let method return Result instead of List +#699 - Let Result extend List + +API changes (previous API now deprecated) +----------------------------------------- +#656 - Decrease verbosity of plain SQL methods. They will just be + called Factory.field() .condition() .table() .query() + +Test cases +---------- +#643 - Add integration test for code generation of invalid and + incomplete types in Oracle +#654 - Add integration tests for master data tables with PK types + other than NUMBER/INT +#655 - Add missing integration tests for TRIM function + +Bug fixes +--------- +#450 - Improve plain SQL integrity checks for bind variables +#610 - CODEGEN: Compilation error in generated source code for + databases with table named 'system' +#646 - An empty Java package is generated for an empty PL/SQL + package. This is unnecessary +#651 - CODEGEN: Avoid importing datatypes in generated source + code to prevent collisions +#657 - NullPointerException when creating a Factory with a null + SchemaMapping +#658 - Master data table code generation is broken for tables + with more or less than 3 columns +#662 - Add support for the missing Postgres data type "bpchar" +#663 - Add support for the missing Sybase data type "int" +#664 - Ingres INTEGER data types are not correctly generated +#665 - HSQLDB Datatype CLOB and BLOB are not supported, when + selecting from plain SQL tables +#666 - The evil bug: Ingres TRIM function only executes RTRIM +#673 - UpdatableRecord.store() doesn't work if called after + .delete() +#702 - Add support for the missing SQLite data type "NULL" +#706 - CURSOR: Ensure that Query.execute() runs in a single + transaction when Postgres refcursor is involved in the + query (this fixes a Postgres JDBC driver flaw) +#724 - NullPointerException when passing a single literal null + bind value to plain SQL methods without casting to Object +#729 - DB2, Derby, Ingres, Oracle cannot bind null values in + plain SQL + +Version 1.6.1 - June 19, 2011 +================================================================= + +In this release, the PORTABILITY project has been implemented. +Finally, the SQLDialect has been removed from most generated +artefacts (Schema, Table, Field, Sequence, etc). Also, the +constructing Factory is not referenced by its created QueryParts +anymore, unless this is really necessary (Query objects, UDT's, +ARRAY types). This leads to higher compatibility between schemata +of different databases, e.g. if users want to use an HSQLDB +development and Oracle productive database. + +Unfortunately, this means that the way stored procedures are +called had to be changed. This is an API break that could not be +avoided. The pre-1.6.1 StoredObject.execute(Connection) method +is deprecated and will be removed in the future. It has been +replaced by StoredObject.execute(Configuration) + +In addition to this project, many more window functions are now +supported, as well as the Oracle-specific CONNECT BY clause for +recursive queries. + +Features +-------- +#351 - Add support for Oracle ROWID data type +#452 - PORTABILITY: Create a super-set of RDBMS data types +#453 - PORTABILITY: Don't create dialect-specific QueryParts +#455 - Add support for the Oracle CONNECT BY clause +#587 - Add optional OFFSET clause to form LIMIT .. OFFSET + constructs +#589 - Add extended FOR UDPATE [OF ...] [{WAIT n | NOWAIT | SKIP + LOCKED }] support +#591 - Add support for LEAD() OVER() and LAG() OVER() window + functions +#592 - Add support for the CUME_DIST() OVER() window function +#601 - Add Factory.literal() convenience methods +#602 - Add Factory.val() methods to decrease .constant() + verbosity +#604 - Add support for RESPECT NULLS clause in some window + functions +#605 - Add Factory.use(String) for non-generated schemata +#613 - Add PI function +#616 - Add Factory.two() literal convenience method +#630 - Add support for Oracle CONNECT BY pseudo-columns LEVEL, + CONNECT_BY_ISCYCLE, CONNECT_BY_ISLEAF + +API changes +----------- +#299 - PORTABILITY: Create a dialect-independent meta-model +#588 - Add OVER() keyword to FIRST_VALUE() and LAST_VALUE() API + +Test cases +---------- +#368 - Add integration test for use with schema mapping +#586 - Upgrade H2 to 1.3.155 +#607 - Add integration tests for CRUD / SP's / UDT's / ARRAY's + with SchemaMapping +#612 - Add integration tests for LPAD and RPAD functions +#624 - Add integration test for code generation of invalid/ + incomplete views in Oracle +#631 - PORTABILITY: Add integration tests for using Oracle- + generated schema against an HSQLDB database +#638 - Add missing integration test for DECIMAL data type + +Bugfixes +-------- +#176 - Stored procedures / functions in EQUIVALENT schemata + cannot be called +#493 - Bind variable mismatch when constructing bad SQL +#594 - Confusing Javadoc in SELECT DSL API +#603 - Fix DB2 'IGNORE NULLS' clause +#619 - SUBSTRING() function is broken in DB2, Ingres, SQL Server +#623 - SQL syntax error for some MERGE queries in SQL Server and + Sybase +#633 - SchemaMapping is not applied to sequences +#634 - Sequences are not escaped in generated SQL + +Version 1.6.0 - June 05, 2011 +================================================================= + +Apart from supporting various additional standard and non- +standard JOIN constructs, there is now also full support for the +SQL standard MERGE statement and MySQL's ON DUPLICATE KEY variant +thereof. A great number of API enhancements have been added, +which improve the usability of jOOQ. The Ingres database is now +also supported. + +Features +-------- +#301 - Add support for Oracle execution hints +#409 - Add support for NATURAL JOIN syntax, where RDBMS allows it +#415 - Make fluent API's underlying SelectQuery objects publicly + available +#429 - Add Ingres support +#475 - Document class-level generic types and in Javadoc +#486 - Add support for SQL MERGE clause +#494 - Allow for omitting schema name in generated SQL +#496 - Automatically update IDENTITY values in UpdatableRecord, + after storing them +#520 - Add support for JOIN ... USING syntax +#524 - Upgrade HSQLDB to 2.2 +#533 - Add ORDER BY [Map] or BY [List] functionality +#534 - Add Result.isEmpty() +#535 - Call upon ConfigurationRegistry.provideFor() before + throwing a DetachedException +#536 - Simulate CASE [value] WHEN [value] THEN [result] END + syntax in Derby +#538 - Add some logging to ConfigurationProvider +#539 - Add possibility to negate numeric values with Field.neg() +#541 - Add support for MySQL ON DUPLICATE KEY clause +#542 - Allow for Collection arguments in INSERT's DSL API +#543 - Allow for creating FUNCTION() OVER() without PARTITION BY + or ORDER BY clause +#546 - Add Factory.use(Schema) +#548 - Add new internal type FieldMap +#550 - Simulate ON DUPLICATE KEY INSERT clause in dialects other + than MySQL +#551 - Add TableMapping, similar to SchemaMapping for mapping + tables +#553 - Add Factory.plainSQLQuery +#554 - Add Factory.plainSQLField with a DataType parameter +#555 - Add UpdateXXX.set(Map) convenience methods to DSL API +#557 - Enhance INSERT DSL API to allow for adding VALUES clause + with InsertXXX.set() syntax +#570 - Add support for the RAND() function +#567 - Add support for Ingres Sequences +#572 - Add support for the ATAN2() function +#573 - Add possibility for additional select() clauses for + convenience +#575 - Add support for the FULL OUTER JOIN syntax, where RDBMS + supports it +#576 - Add support for the CROSS JOIN syntax, where RDBMS + supports it +#581 - Enhance API and allow Collection> + instead of Collection> + +API changes +----------- +#397 - Purge deprecated API + +Bugfixes +-------- +#481 - Handle case where an empty record is stored +#522 - Misleading Javadoc in generated stored procedures and + function constructors +#532 - Restore Postgres INFORMATION_SCHEMA +#537 - Prevent null from being added to QueryPartList +#540 - Error when TRACE logging Limit +#544 - Aliased elements are not bound correctly when rendered + with toSQLReference() +#559 - Loosen type safety on overloaded methods to prevent + compilation errors with javac/Netbeans +#560 - HSQLDB DataType REAL is configured incorrectly +#565 - Add integration tests for current_user() function +#569 - ORA-01427 when generating foreign key relations +#571 - Field.trim() not correctly implemented for SQL Server +#583 - Accelerate integration tests: Reset schema only if + necessary + +Version 1.5.9 - May 15, 2011 +================================================================= + +This version ships with lots of new functionality. Finally, the +DSL-style API has been extended to CRUD operations (INSERT, +UPDATE, DELETE)! Also, support for the TRUNCATE TABLE statement +has been added. + +The most important new features include the support for SQL:2003 +standard window functions, which are available in most major +RDBMS. Additionally, basic function support has been widely +extended. + +Features +-------- +#148 - Added support for window functions +#204 - Add support for multi-record INSERT's +#416 - Added support for retrieval of IDENTITY values +#433 - Use bind variables for LIMIT and OFFSET +#441 - Added foreign key relationship meta information to the + generated source code +#446 - Beautify ResultImpl.toString() method +#461 - Automatically cast CONCAT parameters to Field if + necessary +#463 - Added support for trigonometric functions +#471 - Added support for the sign function +#472 - Added support for GREATEST/LEAST functions +#474 - Added support for "hyperbolic" functions SINH, COSH, TANH, + and COTH +#482 - Added DSL API for INSERT statements +#483 - Added DSL API for UPDATE statements +#484 - Added DSL API for DELETE statements +#485 - Added "Registry" for client code to provide Configurations + to jOOQ Attachables +#490 - Added support for the TRUNCATE TABLE statement +#495 - Generate source code for IDENTITY columns +#501 - Added support for boolean conversion to Result, Record, + and Store +#503 - Allow for schema navigation via generated artefacts +#518 - Let stored procedures reference owner package + if applicable +#525 - Added NULLS {FIRST | LAST} clause to ORDER BY constructs +#528 - Added Factory.getDataType() convenience method +#530 - Added Factory.zero() and Factory.one() convenience methods + +API changes (jooq) +------------------ +#527 - Weakened type-safety on Field.nvl2() +#529 - Deprecated Factory.select(Object...), added .selectOne() + and .selectZero() instead + +API changes (jooq-meta) +----------------------- +#30 - Add ParameterDefinition for stored procedures, instead of + reusing ColumnDefinition +#499 - Add reference to TableDefinition in ColumnDefinition +#500 - Add AttributeDefinition for UDTDefinition, instead of + reusing ColumnDefinition + +Bug fixes +--------- +#369 - Adapt H2 relations generation to H2's correction of + information_schema.cross_references +#435 - Added integration tests for NESTED SELECTs holding LIMIT + clauses +#460 - Syntax error when using a field with a reserved name +#462 - Fixed Javadoc broken links +#473 - Don't cast when cast is unnecessary +#479 - INSERT statement should not set all fields for a table +#497 - Derby referential code generation is broken, for named + foreign keys +#498 - Oracle package content is generated in arbitrary order +#502 - Syntax error when creating an empty IN condition +#526 - Corrected Javadoc in Field.coalesce() + +Version 1.5.8 - April 29, 2011 +================================================================= + +Finally, jOOQ now supports two important new RDBMS: +SQL Server and Sybase! + +Apart from this great enhancement, there is now also full support +for the non-SQL standard LIMIT clause, even in dialects where the +LIMIT clause is not supported natively (especially Oracle, but +also DB2, SQL Server and Sybase, which have limitations). jOOQ +simulates LIMITs by rendering nested selects filtering on ROWNUM +(Oracle) or on ROW_NUMBER() (DB2, SQL Server and Sybase). + +Other interesting additions are an increasing support for native +mathematical functions. More function support will be added in +future versions. + +Features +-------- +#16 - Added support for SQL Server +#21 - Uniform implementation of the LIMIT clause. Implemented + LIMIT clause simulation through analytic functions, where + LIMIT is not supported natively +#97 - Added support for Sybase +#418 - Measure time of various steps in source code generation +#420 - Added support for proprietary SQL extensions "FOR UPDATE" + and "FOR SHARE" +#431 - Added additional statistics to generation log files +#432 - Unified the various "standard" ANSI INFORMATION_SCHEMA + implementations in the jooq-meta artefact +#436 - Added support for the modulo function +#438 - Added floor and ceil functions +#439 - Added support for mathematical functions (logarithms, + exponentials, sqrt) +#447 - Enhanced Field.add() and Field.subtract() to work for date + time fields, also + + +API changes +----------- +#428 - Created new Maven artefact jooq-meta to cleanly separate + database meta-data navigation from code generation +#458 - Decreased DSL verbosity for arithmetic operations and for + ordering + +Bug fixes +--------- +#417 - Restored warning when unknown column type is encountered + in source code generation +#419 - Corrected misleading Select.fetchOne(...) Javadoc +#421 - Optimised AbstractRecord's memory consumption +#448 - Corrected some Javadoc @see links +#449 - Changed Field.concatenate() to accept Field parameters + to avoid generic varargs warnings + +Version 1.5.7 - April 17, 2011 +================================================================= + +This is the first release built with support of Maven thanks to +the help of some jOOQ users! + +The main new features in this release are the improved support +for serialisation/deserialisation of jOOQ objects through use of +the newly introduced "Attachable" interface. + +If using log4j or the newly supported slf4j logging framework +in debug/trace mode, there is the possibility to log query +building/execution time statistics. + +Apart from these new features, fixes were mainly done in the +fields of type casting, HSQLDB 2.1 upgrade support, stored +procedures with OUT, IN/OUT parameters. Please upgrade, if you +are using any of those features. + +If you extend jOOQ as a base implementation for source code +generation, be aware of the fact, that the jOOQ-codegen is +currently undergoing major changes. Expect the code generation +API to stabilise again in one of the next releases. + +Features +-------- +#104 - Added maven dependency +#248 - Integrate UDT types with ARRAYs +#295 - Allow for attaching/detaching UpdatableRecords to/from + Configurations +#359 - Added statistics measurement to Query execution for debug + log level +#362 - Added deprecation configuration flag +#364 - Document unknown type in generated source code +#373 - Improve exception handling in code generation +#378 - Added support for Oracle stored functions with OUT + parameters +#382 - Added Factory.attach() methods to re-attach deserialised + Attachables +#394 - Add logging support for SLF4J +#398 - Allow to provide a DataType in Factory.constant() +#399 - Provide access to TypeUtils.convert() methods via DataType +#404 - Added trace logging for measuring the speed of various + query execution steps + +API changes +----------- +#358 - Enhanced DSL API to allow for HAVING clauses without + GROUP BY clauses +#367 - Make Store, Result, QueryPart "Attachable" +#374 - Introduce strategy pattern to code generation for future + support for advanced naming schemes +#375 - Decouple Database from Generator +#381 - Made DataType Serializable +#384 - Deprecated singleton QueryParts +#388 - Unify "internal" API using an Adapter pattern + +Bug fixes +--------- +#187 - Protect generated Record navigation methods against name + clashes +#266 - Added more thorough integration tests for dialect-specific + casting (including some fixes related to varchar types) +#360 - Added more integration tests for the DISTINCT clause +#361 - Add more checks in testInsertUpdateDelete() +#366 - Warn only once per ColumnDefinition, if a data type is + unknown +#377 - NullPointerException when generating invalid stored + function +#380 - Added integration tests to check for proper + serialisability +#386 - Fixed incompatibilities with HSQLDB 2.1.0 +#387 - Fixed unnecessary imports in some Oracle generated + Records +#389 - Fixed javac compiler warning in AbstractStoredObject +#391 - Cannot properly call stored procedures when IN/OUT + parameter is bound to NULL +#392 - Procedures with several OUT parameters may not register + OUT parameters correctly +#410 - Passing null VARRAY values to Oracle stored procedures + causes issues +#412 - limit(int) sets default offset incorrectly in some + dialects + +Version 1.5.6 - March 31, 2011 +================================================================= + +This release consists mainly of code generation bug fixes and +minor API improvements and enhancements. + +The most important improvement is ticket #90, by which lazy +fetching and iteration over data is now supported. jOOQ lets you +keep a reference to a Cursor that has an open JDBC ResultSet, to +fetch data from on-the-fly. + +A few major code generation bugs were reported where the +generated code may cause ambiguity due to an inconsistent API. +This means that you will have to re-generate your schema after +upgrading to version 1.5.6. Some of your code may not compile +anymore, after this upgrade. + +Features +-------- +#90 - Added possibility for lazy fetching of data +#208 - Added convenience methods for direct invocation of + sequences' currval() and nextval() attributes +#212 - Created one factory per dialect for better separation of + dialect-specific support +#213 - Generate a factory for each schema +#251 - Opened up base implementations for Field and Condition + to allow for custom implementations by client code +#274 - Integrate H2 ARRAY types with stored procedures +#292 - Documented usage of log4j and java.util.logging +#306 - Added support for the NULLIF function +#319 - Added Field.between(Field, Field) method +#320 - Added trace logging for variable binding and SQL + generation methods +#323 - Added Field.in(Field...) method +#325 - Include release version number in delivered .jar files +#328 - Improved configuration setup documentation page +#333 - Let Result implement Serializable +#334 - Added fetchMap() convenience methods +#335 - Added more functions and aggregate functions examples to + documentation +#338 - Visually improve code generation logging +#339 - Removed skipping of unreferenced UDT's, ENUM's and ARRAY's +#342 - Improved generated referential code by using fetch() and + fetchOne() API +#356 - Let UpdatableRecord.store() and delete() return an int + to indicate whether the record was actually modified + +API changes +----------- +#233 - Allow for joining TableLike instead of Table +#337 - Added generic type > to + InsertSelectQuery +#341 - Fixed API flaw where SelectOnConditionStep.and() methods + and similar ones returned SelectConditionStep, instead of + SelectOnConditionStep + +Bugfixes +-------- +#69 - Corrected referential code generation for foreign keys + that reference non-primary unique keys +#85 - Corrected referential code generation for multi-field + foreign keys +#121 - Covered more Factory.executeXXX() methods with integration + tests +#318 - Fixed NullPointerException when executing SELECT * from + aliased tables +#321 - BetweenCondition does not bind left hand side Field + correctly +#322 - InCondition does not bind left hand side Field correctly +#326 - Avoid method overloading where binding to Object + may lead to compile-time ambiguities (with javac) +#343 - Add more foreign key navigation method integration tests +#347 - Add explicit integration tests for schema artefacts + excluded from code generation +#350 - Disambiguate navigation methods if several foreign keys + reference the same entity +#352 - Disambiguate navigation methods if a table ending on S + references itself +#353 - Added integration test for compilation of generated + artefacts with javac (as opposed to the Eclipse compiler) +#355 - Error when storing an UpdatableRecord that has no changed + values + +Version 1.5.5.2 - March 15, 2011 +================================================================= + +A critical bug was reported from the 1.5 release stream where +stored functions did not render their parameters in correct order + +Features +-------- +#302 - Map Oracle's NUMBER data type to java.lang.Number in + stored procedures, stored functions + +Bugfixes +-------- +#317 - StoredFunctionImpl.asField() renders parameters in wrong + order + +Version 1.5.5.1 - March 13, 2011 +================================================================= + +In version 1.5.5, there was a fatal bug breaking Derby source +code generation. Only the Derby dialect is affected. Please +update immediately, if you are using jOOQ's Derby integration + +Bugfixes +-------- +#315 - Generated master data records are not sorted by PK +#316 - Derby code generation fatally broken + +Version 1.5.5 - March 12, 2011 +================================================================= + +This version is released early as there are some important +bugfixes. Additional improvemetns include: + +- Improved DSL related to conditions in HAVING and JOIN clauses +- Support for Oracle-style functions, such as NVL, NVL2, COALESCE + DECODE, etc + +Features +-------- +#304 - Add support for Oracle NVL function +#305 - Add support for COALESCE function +#308 - Add support for Oracle NVL2 function +#311 - Add support for Oracle DECODE function + +API changes +----------- +#223 - Enhance DSL to accept and(), or() and similar methods in + JOIN steps +#224 - Enhance DSL to accept and(), or() and similar methods in + HAVING steps + +Bugfixes +-------- +#297 - Fixed Factory.concatenate() function +#298 - Added integration tests for nested selects in HAVING + clause +#300 - Added integration tests for nested selects in JOIN clause +#303 - Javadoc correction +#307 - Accelerated integration tests +#309 - Fixed JDBC variable binding issue related to Conditions + where the lhs is a function (e.g. stored function) and the + rhs is a constant +#310 - Fixed issue where fetchOne() methods throw + NullPointerException if no result record is available +#312 - Fixed issue where Field.equal(...) methods rendered + unexpected SQL when rhs null is cast to a type +#313 - Fixed Derby cast type for VARCHAR +#304 - Let the DerbyDataType default for java.lang.String be + VARCHAR, not LONG VARCHAR + +Version 1.5.4 - March 04, 2011 +================================================================= + +Feature #243 required a minor API change in the base classes of +generated source code. This means you have to re-generate all +your jOOQ artifacts in order to migrate to 1.5.4. The artifacts +themselves should be regenerated in a compatible way, such that +your client code should not be affected. If this is not the case, +please report a ticket here: + + https://sourceforge.net/apps/trac/jooq/newticket + +Apart from the Derby RDMBS and some new data type support, there +have been many new convenience methods added all over the API. +For instance, if type-safety is not really a requirement, there +are lots of possibilities to use plain SQL directly in the DSL. +In that case, data can be accessed from Record, Results, not only +through Field, but also through field names or indexes. + +Check out the updated documentation (soon) here: + + https://sourceforge.net/apps/trac/jooq/wiki/Examples + +- Support for the Derby RDBMS +- Support for casting. This allows for even greater flexibility + in cases where jOOQ cannot 100% ensure type-safety +- Support for ARRAY types. Oracle, Postgres, HSQLDB and H2 ARRAY + types are now supported natively as regular bindings in + jOOQ's Field +- Support for dialect-specific data types. CHAR, VARCHAR, CLOB + are no longer treated equally as java.lang.String. Their + type heritage is also generated +- More sequence support +- Lots and lots of bug fixes + +Features +-------- +#95 - Support for the Derby RDMBS +#163 - Add support for JDBC type ARRAY (with Postgres) +#209 - Add support for DB2 sequences +#210 - Add support for H2 sequences +#211 - Add support for HSQLDB sequences +#215 - Support for SQL casting using as cast type +#246 - Support for SQL casting using dialect-specific data types +#254 - Add HSQLDB support for ARRAY types +#256 - Add Oracle support for VARRAY types +#257 - Integrate ARRAY types with stored procedures +#261 - Add a global type mapping to the generated Schema object +#267 - Add DataTypeDefinition for further abstraction of data + types in code generation +#269 - Add H2 support for ARRAY types +#290 - If log4j is not on the classpath, use java.util.logging + instead, as fallback + +API Changes +----------- +#156 - Allow for results to be accessed by index, not by field +#218 - Corrected bad method signature: + Record.getValueAsLong(Field, Integer) +#219 - Extended Result and Select API's to be more similar to + that of Record +#232 - Add more convenience plain SQL support to the API +#235 - Add convenience methods to Record, Result and Select for + access of data via field name +#243 - Refactor DataType implementations in order to allow for + the use of generics +#259 - Add field type to database meta data (ColumnDefinition) +#260 - Add field type to database meta data (Field) +#262 - Add default behaviour for Record.getValue(Field) +#276 - Add Javadoc as a ZIP file to the jOOQ distribution + +Bugfixes +-------- +#125 - Add more plain SQL integration tests +#191 - Add more integration tests for nested unions +#205 - Implemented workaround for handling Postgres stored + functions with UDT OUT parameters +#214 - Fixed NPE when generating a stored function with an + unknown parameter type +#216 - Fixed some cases where binding of BigInteger is not done + correctly +#220 - Syntax error when using select statement in a CASE clause +#221 - Corrected integration tests for combined update and + select statements +#222 - Added integration test for INSERT statements having + nested SELECT statements for their fields +#225 - Correctly cast array types in Postgres +#230 - Potential misuse of Blob and Clob in H2's JDBC types +#239 - Factory.fetchAny() is not implemented for SQLite +#244 - Fixed peculiar MySQL casting support where cast types do + not match any data types +#245 - Fixed NPE when reading null dates in SQLite +#249 - Added ARRAY type integration tests +#255 - Stored procedure bind variables get mixed up when any + argument is null +#263 - Correctly handle Postgres function overloading +#264 - Ambiguous funciton calls when calling overloaded functions + with null parameter +#281 - Handle compilation errors when generating stored + procedures with > 254 parameters +#283 - Fixed compilation errors in generated source code for + Oracle's UDT table type +#284 - Fixed compilation errors in generated source code for + Oracle procedures in packages, when they have no + parameters +#285 - Fixed compilation errors in generated source code for + Oracle tables with the same name in different schemata +#286 - Fixed name collisions in generated objects with the + java.lang.* package +#288 - Prevent the creation of UNION queries with bad syntax + in MySQL +#289 - Correctly alias fields within UNION queries for some + dialects, which then only require the "AS" keyword +#291 - Cannot create an aliased field called "year" in Postgres + +Version 1.5.3 - January 13, 2011 +================================================================= + +- Lots of stored procedure support was implemented +- Support for sequences was added +- The final decision to postpone support for DB2 UDT's was made +- Some code generation bugfixes + +Features +-------- +#36 - Added stored procedure / stored function support for HSQLDB +#140 - Added support for Oracle sequences +#147 - Added support for H2 stored functions +#162 - Correctly integrate UDTs with stored procedures +#170 - Added support for Postgres stored functions +#186 - Added support for more Oracle PL/SQL simple data types +#193 - Simulate support for H2 "stored procedures" +#195 - Simulate support for Postgres "stored procedures" +#206 - Added support for Postgres sequences + +API changes +----------- +#180 - Improved DSL for constant values +#181 - Allow for referencing Field in function argument list +#189 - Renamed convenience methods in org.jooq.Record +#207 - Add fetchOne(Field) method to org.jooq.Select API + +Bugfixes +-------- +#182 - Protected generated Record classes against clashes with inherited methods +#183 - Fixed NullPointerException, when generating master data tables with + NULL fields +#184 - Fixed IllegalArgumentException, when a data type is present in the + schema, but unavailable in code generation logic +#185 - Code generation should not fail when single elements cannot be generated +#188 - Improved integration tests for stored procedures / functions / packages +#196 - Increase RDMBS version compatibility by avoiding "SELECT *" in code + generation logic +#199 - Added integration tests for stored procedures in RDBMS that do not + support OUT parameters +#201 - Fixed issue in DB2 where stored procedures without parameters were not + generated. +#202 - Added integration tests for stored procedures / functions without + parameters + +Version 1.5.2 - December 27, 2010 +================================================================= + +- Improved support for stored procedures, also in packages +- A minor API change was inevitable to implement #173. The API change only + concerns the INTERNAL API. Deprecation marks are added and deprecated items + will be removed in 1.6.0 +- Experimental SQLite database support +- Some important bug fixes + +Features +-------- +#25 - Added support for Oracle packages +#114 - Added support for Oracle UDTs +#145 - Added support for the SQLite database +#150 - Generate static convenience methods for stored procedures / functions +#151 - Generate static convenience methods for stored function fields +#152 - Generate meaningful serialVersionUID in generated classes +#173 - Added support for EQUIVALENT schemata + +API changes +----------- +#159 - Added convenience method List getValues(Field) to Result +#165 - Added convenience methods for creating EXISTS clauses +#169 - Improved DSL for WHERE clauses + +Bugfixes +-------- +#68 - Prevent issues originating from overloaded stored procedure names, + generating identical Java class names +#153 - Fixed issue with generated code for DB2 stored functions +#154 - Fixed issue with generated code for DB2 stored functions +#155 - Fixed issues with database NULL not being mapped correctly to Java NULL + when selecting values that have a primitive type (int, long, etc) +#158 - Potential ClassCastException when using Field +#171 - Corrected issue related to selection of default schema in DB2 +#177 - Fixed issue related to generated code for tables or UDTs without columns + + +Version 1.5.1 - December 13, 2010 +================================================================= + +- H2 database support thanks to Espen Stromsnes +- Improved stored procedure support + +Features +-------- +#96 - Added H2 database support +#101 - Added stored procedure / stored function support for Oracle +#138 - Added stored procedure support for DB2 +#146 - Added support for DB2 functions + +API changes +----------- +#143 - Added convenience methods to Record + +Bugfixes +-------- +#84 - Implemented referential code generation for foreign keys that do not + match their primary keys' types +#141 - Encoding problem in generated master data classes + +Version 1.5.0 - November 22, 2010 +================================================================= + +- A big one. Major API changes / improvements +- Added lots of convenience methods +- UDT support +- Enum support +- DB2 support thanks to Espen Stromsnes +- "Light" dependency to log4j added. jOOQ will still run without it + +Features +-------- +#1 - Create support for UDTs (so far only for PostgreSQL) +#15 - Added DB2 support +#60 - Added support for nested selects in INSERT and UPDATE + statements +#83 - Added log4j logging to code generation and runtime +#87 - Add support for arithmetic expressions +#105 - Added support for ENUM data types, where applicable + (MySQL and PostgreSQL so far) +#110 - Added execute and fetch convenience methods +#111 - Added missing "select distinct" support +#122 - Annotate generated classes with javax.annotation.Generated +#123 - Generate user enum fields from data values (master data) +#124 - Added PlainSQLTable +#127 - Added not() operator to Condition +#135 - Added convenience methods andNot() and orNot() in + Condition + +API changes +----------- +#89 - Removed support for DataSource. jOOQ is not a transaction + manager +#92 - Added SortField type to be used for sorting +#99 - Provide better access to functions (No more FunctionFactory) +#116 - Merge Manager functionality into Factory +#118 - Improve API of org.jooq.Field +#119 - Improve subquery condition API +#132 - Reduced much of the select query API +#134 - Better separation of SelectQuery and SimpleSelectQuery + +Bugfixes +-------- +#109 - Error when executing select * if generated schema does not + match actual schema +#115 - Fix various "null" pseudo field issues +#126 - Error when selecting a single field from a union nested + select +#129 - Fixed performance issue in Oracle code generation for + very large databases + + +Version 1.4.4 - November 22, 2010 +================================================================= + +Unreleased version, fixes included in 1.5.0 + +Bugfixes +-------- + +#133 - JoinCondition does not take comparison operator + +Version 1.4.3 - October 25, 2010 +================================================================= + +Some more bugfixes + +Bugfixes +-------- + +#71 - Generated code does not compile, when foreign key and + primary key have a data type mismatch +#73 - In Oracle generated code, multi-field foreign keys may + generated bad relations code +#82 - Conversion of literals to camelcase fails if numbers are + involved + +Version 1.4.2 - October 22, 2010 +================================================================= + +Various bugfixes and minor improvements + +Features +-------- +#66 - Add support for CASE or DECODE expression + +API changes +----------- +#77 - Functions should not extend FieldImpl, but a new + AbstractField +#78 - QueryPart pollutes declared method space of its + implementations. Hide it by indirection + +Bugfixes +-------- +#64 - Code generation fails when foreign key references a unique + key that is not the primary key. Code generation for these + cases is omitted +#67 - When loading properties files, a leading / seems to be + mandatory. This is preventing users from correctly setting + up jOOQ the first time +#70 - Add support for Oracle datatype TIMESTAMP(6) +#72 - Name clashes in generated Tables +#75 - Constant does not bind its values. +#76 - Constant should not render strings all the time +#79 - Constants are not properly escaped +#80 - Position function does not bind any variables +#81 - Add cast function to Constants in HSQL + +Version 1.4.1 - October 18, 2010 +================================================================= + +Oracle patch release + +Features +-------- +#63 - Generate referential functionality for Oracle + +Version 1.4.0 - October 17, 2010 +================================================================= + +Support for PostGreSQL was added. +Added lots of OR-mapping functionality. +There is a general API change due to various new features. + +Features +-------- +#14 - Add PostGreSQL support +#40 - Resolve foreign keys. Allow for navigation between objects. +#42 - Add PlainSQLField +#45 - Add "dirty" flag to Record's values. This allows for + updating only relevant data. +#47 - Complete implementation for UPDATE, INSERT, DELETE + statements. Added some missing functionality. +#48 - Add more support for Date, Time, Timestamp fields. +#51 - Add a org.jooq.impl.Manager class that provides common + utility methods for CRUD operations + +API changes +----------- +#10 - Add second generic type . This is a + prerequisite for many OR-mapping features +#18 - Use org.jooq.Record in InsertQuery and UpdateQuery +#46 - Create UpdatableRecords as a prerequisite for JPA and true + OR-mapping. These records support store() and delete() + methods +#52 - Add default constructor in generated Records. +#53 - Add refresh functionality to UpdatableRecords. See also #46 +#54 - Add a state to the factory class +#56 - Reduce API, remove unnecessary Condition subinterfaces +#57 - Reduce API, remove unnecessary QueryPart interfaces + +Bugfixes +-------- +#49 - NullPointerException when generating relations on schema + subset +#58 - Count function renders bad SQL in various dialects +#59 - Exception when selecting unaliased functions in queries + +Version 1.3.0 - August 24, 2010 +================================================================= + +Support for HSQLDB was added. +There is a major API change due to #44. + +Features +-------- +#29 - Generate primary keys and foreign keys in Oracle code + generation +#34 - Add support for HSQLDB +#39 - Generate primary keys and foreign keys in HSQLDB code + generation +#41 - Add documentation to QueryFactory and Functions + +API changes +----------- +#23 - Add support for more advanced joins +#32 - Merge SelectQuery and ResultProviderQuery interfaces +#44 - Let Query methods return "this" + +Bugfixes +-------- +#35 - Add unit tests for HSQLDB support +#37 - Syntax error in combined select queries! + The usage of combined queries in MySQL may still be a bit + awkward. Keep an eye out for further fixes +#43 - Join with aliased tables doesn't work + +Version 1.2.0 - August 21, 2010 +================================================================= + +The added Oracle support is now unit tested and more stable. +The Oracle NUMBER data type is mapped more precisely to Java +types. + +Features +-------- +#12 - Model primary keys and foreign keys in generated code +#22 - Improve mapping of Oracle NUMBER data type +#26 - Add Plain SQL QueryParts +#27 - Add support for HAVING clause + +Bugfixes +-------- +#24 - Add Unit tests for oracle database (and fixed bugs) +#31 - Pull up addOrderBy() methods from SelectQuery to + ResultProviderQuery + +Version 1.1.0 - August 17, 2010 +================================================================= + +The main new feature is the Oracle support. Wait for +Version 1.1.1 for that support to be stabilised, as there are no +Oracle unit tests running against an Oracle database yet. + +Features +-------- + +#2 - Add support for inner / nested selects +#3 - Add more function support +#4 - Implement filtering functionality for code generation +#6 - Add Oracle Support +#9 - Create true POJO's (implementing org.jooq.Record) with + getters and setters +#17 - Make org.jooq.impl.Parameter independent of Field + +Bugfixes +-------- + +#11 - Code generation does not remove files + +Version 1.0.1 - August 14, 2010 +================================================================= + +Features +-------- + +#5 - Prevent code regeneration, if no changes were made +#7 - Implement ant task for code generation + +Version 1.0.0 - August 14, 2010 +================================================================================ +Initial Release \ No newline at end of file diff --git a/jOOQ-website/inc/feature-matrix.php b/jOOQ-website/inc/feature-matrix.php new file mode 100644 index 00000000000..9259dda671c --- /dev/null +++ b/jOOQ-website/inc/feature-matrix.php @@ -0,0 +1,427 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
SQL statements and features
FeatureASEDB2DerbyH2HSQLDBIngresMySQLOraclePostgresSQLiteSQL ServerSybase
INSERT with VALUESyesyesyesyesyesyesyesyesyesyesyesyes
INSERT with VALUES (multiple records)yesyesyesyesyesyesyesyesyesyesyesyes
INSERT with SELECTyesyesyesyesyesyesyesyesyesyesyesyes
INSERT with ON DUPLICATE KEY UPDATEnoyes [1]nonoyes [1]noyesyes [1]nonoyes [1]yes [1]
INSERT with RETURNINGpartially [3]yes [4]partially [3]partially [3]yes [4]partially [3]yes [3]partially [4]yespartially [2]partially [3]partially [2]
SELECTyesyesyesyesyesyesyesyesyesyesyesyes
SELECT with CONNECT BYnononononononoyesnononono
SELECT with LIMIT .. OFFSETpartially [7]yes [8]yes [9]yes [10]yes [10]yes [9]yes [10]yes [11]yes [10]yes [10]yes [8]yes [12]
SELECT with FOR UPDATEyesyesyesyesyesyesyesyesyesnonoyes
SELECT with FOR UPDATE OF (field-list)noyesyesyesyesyesnoyesnononoyes
SELECT with FOR UPDATE OF (table-list)noyes [13]yes [13]yesyesyes [13]noyes [13]yesnonoyes
SELECT with FOR UPDATE WAIT, NOWAIT, SKIP LOCKEDnononononononoyesnononono
UPDATEyesyesyesyesyesyesyesyesyesyesyesyes
DELETEyesyesyesyesyesyesyesyesyesyesyesyes
MERGEnoyesnono [6]yesnonoyesnonoyesyes
MERGE (Oracle extensions)nononononononoyesnononono
TRUNCATEyesyesyesyesyesyes [14]yesyesyesyes [14]yesyes
Sequence CURRVALnoyesnoyesnoyesnoyesyesnonoyes
Sequence NEXTVALnoyesyesyesyesyesnoyesyesnonoyes
JDBC features
FeatureASEDB2DerbyH2HSQLDBIngresMySQLOraclePostgresSQLiteSQL ServerSybase
batch operationsyesyesyesyesyesyesyesyesyesyesyesyes
jOOQ features
FeatureASEDB2DerbyH2HSQLDBIngresMySQLOraclePostgresSQLiteSQL ServerSybase
CSV Data loaderyes [5]yesyes [5]yes [5]yesyes [5]yesyesyes [5]yes [5]yesyes
Functions
FeatureASEDB2DerbyH2HSQLDBIngresMySQLOraclePostgresSQLiteSQL ServerSybase
Last inserted IDyesnoyesyesyesyesyesnonoyesyesyes
+ +
    +
  • [1] MySQL's INSERT .. ON DUPLICATE KEY UPDATE statement is simulated using an equivalent MERGE statement
  • +
  • [2] Postgres' INSERT .. RETURNING statement is simulated by fetching the last inserted ID explicitly with a new statement. Other fields than the ID are fetched with another statement. Client code must ensure transactional integrity between the three statements to prevent race conditions (e.g. set autocommit to off). This does not work for multi-record inserts.
  • +
  • [3] Postgres' INSERT .. RETURNING statement is simulated by using JDBC's PreparedStatement.getGeneratedKeys() functionality. Other fields than the ID are fetched with another statement. Client code must ensure transactional integrity between the two statements to prevent race conditions (e.g. set autocommit to off). This may not work for multi-record inserts in some dialects
  • +
  • [4] Postgres' INSERT .. RETURNING statement is simulated by using JDBC's PreparedStatement.getGeneratedKeys() functionality. All fields can be fetched in a single statement. This may not work for multi-record inserts in some dialects
  • +
  • [5] The loader API has an option to use MySQL's INSERT .. ON DUPLICATE KEY UPDATE statement, which only works in some dialects. See also [1]
  • +
  • [6] H2's MERGE statement is quite different from the SQL:2003 standard MERGE statement. It is currently not supported by jOOQ
  • +
  • [7] Sybase ASE has no means of specifying an OFFSET like other dialects. LIMIT is translated to the TOP clause
  • +
  • [8] DB2 knows a FIRST ROWS clause without OFFSET. SQL Server knows a TOP clause without OFFSET. LIMIT .. OFFSET is simulated using nested SELECT and filtering on ROW_NUMBER() OVER()
  • +
  • [9] Derby knows the OFFSET .. ROWS FETCH NEXT .. ROWS ONLY clause, Ingres has a similar OFFSET .. ROWS FETCH NEXT .. ROWS ONLY clause. They work just the same as [10]
  • +
  • [10] Many databases know the LIMIT .. OFFSET clause as declared in the jOOQ API
  • +
  • [11] Oracle has no native support for LIMIT .. OFFSET clauses. Instead, LIMIT .. OFFSET is simulated using nested SELECT and filtering on ROW_NUMBER() OVER()
  • +
  • [12] Sybase knows a TOP .. START AT .. clause that works just the same as [10]
  • +
  • [13] Some databases do not support a FOR UPDATE OF (table-list) clause. But jOOQ knows all columns in generated tables, hence jOOQ renders an appropriate FOR UPDATE OF (field-list) clause instead
  • +
  • [14] Some databases do not support a TRUNCATE statement. An equivalent DELETE statement is issued instead.
  • +
\ No newline at end of file diff --git a/jOOQ-website/index.php b/jOOQ-website/index.php new file mode 100644 index 00000000000..c5f78586b9d --- /dev/null +++ b/jOOQ-website/index.php @@ -0,0 +1,175 @@ + +

What does jOOQ code look like?

+

It's simple. With the jOOQ DSL, SQL looks almost as if it were +natively supported by Java. For instance, get all books published in 2011, ordered by title

+ + + + + + +
+  SELECT * FROM BOOK
+   WHERE PUBLISHED_IN = 2011
+ORDER BY TITLE
+create.selectFrom(BOOK)
+      .where(PUBLISHED_IN.equal(2011))
+      .orderBy(TITLE)
+ +

jOOQ also supports more complex SQL statements. get all authors' + first and last names, and the number of books they've written in + German, if they have written more than five books in German in the last + three years (from 2011), and sort those authors by last names limiting + results to the second and third row, then lock first and last names + columns for update

+ + + + + +
+  SELECT FIRST_NAME, LAST_NAME, COUNT(*)
+    FROM AUTHOR
+    JOIN BOOK ON AUTHOR.ID = BOOK.AUTHOR_ID
+   WHERE LANGUAGE = 'DE'
+     AND PUBLISHED > '2008-01-01'
+GROUP BY FIRST_NAME, LAST_NAME
+  HAVING COUNT(*) > 5
+ORDER BY LAST_NAME ASC NULLS FIRST
+   LIMIT 2
+  OFFSET 1
+     FOR UPDATE
+      OF FIRST_NAME, LAST_NAME
+create.select(FIRST_NAME, LAST_NAME, count())
+      .from(AUTHOR)
+      .join(BOOK).on(Author.ID.equal(Book.AUTHOR_ID))
+      .where(LANGUAGE.equal("DE"))
+      .and(PUBLISHED.greaterThan(parseDate("2008-01-01")))
+      .groupBy(FIRST_NAME, LAST_NAME)
+      .having(count().greaterThan(5))
+      .orderBy(LAST_NAME.asc().nullsFirst())
+      .limit(2)
+      .offset(1)
+      .forUpdate()
+      .of(FIRST_NAME, LAST_NAME)
+ +

What is jOOQ?

+

jOOQ stands for Java Object Oriented Querying. It combines these essential features:

+ +
    +
  • Code Generation: jOOQ generates a simple Java representation of your database schema. Every table, view, stored procedure, enum, UDT is a class.
  • +
  • Active records: jOOQ implements an easy-to-use active record pattern. It is NOT an OR-mapper, but provides a 1:1 mapping between tables/views and classes. Between columns and members.
  • +
  • Typesafe SQL: jOOQ allows for writing compile-time typesafe querying using its built-in fluent API.
  • +
  • SQL standard: jOOQ supports all standard SQL language features including the more complex UNION's, nested SELECTs, joins, aliasing
  • +
  • Vendor-specific feature support: jOOQ encourages the use of vendor-specific extensions such as stored procedures, UDT's and ARRAY's, recursive queries, and many more.
  • +
+ +

How does jOOQ help you?

+
    +
  • Your database always comes FIRST! That's where the schema is, not in your Java code or some XML mapping file.
  • +
  • Your schema is generated in Java. You can use auto-completion in your IDE!
  • +
  • Your "value objects" or "data transfer objects" are generated too. This keeps things DRY
  • +
  • Your Java code won't compile anymore when you modify your schema. That means less runtime errors.
  • +
  • You and your DBA can be friends again because you have full control over your SQL.
  • +
  • You can port your SQL to a new database. jOOQ will generate SQL that works on any database.
  • +
  • You won't have syntax errors in your query.
  • +
  • You won't forget to bind variables correctly. No SQL injection, either.
  • +
  • You can forget about JDBC's verbosity (especially useful when dealing with UDTs, ARRAYs and stored procedures).
  • +
+

Or in short:

+
    +
  • You can be productive again!
  • +
+ +

When to use jOOQ

+
    +
  • When you love your RDBMS of choice, including all its vendor-specific features.
  • +
  • When you love control over your code.
  • +
  • When you love the relational data model (read this interesting article).
  • +
  • When you love SQL.
  • +
  • When you love stored procedures.
  • +
  • When you love both OLAP and OLTP
  • +
+ +

When not to use jOOQ

+

On the other hand, many people like the ease of use of Hibernate or other products, when it comes to simply persisting any domain model in any database. You should not use jOOQ...

+
    +
  • When you don't care about your database (or "persistence" as you would probably call it).
  • +
  • When you don't really need SQL.
  • +
  • When you want to map your object-oriented domain model to a database and not vice versa.
  • +
  • When your schema changes more frequently than you can re-deploy jOOQ-generated source code.
  • +
  • When you need to write DDL statements. jOOQ only supports DML statements.
  • +
+ +

What databases are supported

+

Every RDMBS out there has its own little specialties. + jOOQ considers those specialties as much as possible, while trying to + standardise the behaviour in jOOQ. In order to increase the quality of jOOQ, + some 70 unit tests are run for syntax and variable binding verification, + as well as some 130 integration tests with an overall of around 900 queries for any + of these databases:

+
    +
  • CUBRID 8.4.1
  • +
  • DB2 9.7
  • +
  • Derby 10.8
  • +
  • H2 1.3.161
  • +
  • HSQLDB 2.2.5
  • +
  • Ingres 10.1.0
  • +
  • MySQL 5.1.41 and 5.5.8
  • +
  • Oracle XE 10.2.0.1.0 and 11g
  • +
  • PostgreSQL 9.0
  • +
  • SQLite with inofficial JDBC driver v056
  • +
  • SQL Server 2008 R8
  • +
  • Sybase Adaptive Server Enterprise 15.5
  • +
  • Sybase SQL Anywhere 12
  • +
+

These platforms have been observed to work as well, but are not integration-tested

+
    +
  • Google Cloud SQL (MySQL)
  • +
+ +

Planned (Contributions and suggestions are very welcome!)

+
    +
  • Access
  • +
  • Firebird
  • +
  • Informix
  • +
  • Interbase
  • +
  • SQL Azure
  • +
  • Sybase SQL Anywhere OnDemand
  • +
  • Teradata
  • +
+ +

Other requirements

+

jOOQ runs with Java 1.6+

+ +

License

+

jOOQ is licensed under the Apache Software License 2.0

+ + +

Thanks

+

YourKit is kindly supporting open source projects with its +full-featured Java Profiler. YourKit, LLC is the creator of innovative +and intelligent tools for profiling Java and .NET applications. Take a +look at YourKit's leading software products: YourKit Java +Profiler and YourKit .NET +Profiler.

+ \ No newline at end of file diff --git a/jOOQ-website/js/prettify/lang-apollo.js b/jOOQ-website/js/prettify/lang-apollo.js new file mode 100644 index 00000000000..9fa1d24c644 --- /dev/null +++ b/jOOQ-website/js/prettify/lang-apollo.js @@ -0,0 +1,51 @@ +// Copyright (C) 2009 Onno Hommes. +// +// Licensed 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. + + +/** + * @fileoverview + * Registers a language handler for the AGC/AEA Assembly Language as described + * at http://virtualagc.googlecode.com + *

+ * This file could be used by goodle code to allow syntax highlight for + * Virtual AGC SVN repository or if you don't want to commonize + * the header for the agc/aea html assembly listing. + * + * @author ohommes@alumni.cmu.edu + */ + +PR['registerLangHandler']( + PR['createSimpleLexer']( + [ + // A line comment that starts with ; + [PR['PR_COMMENT'], /^#[^\r\n]*/, null, '#'], + // Whitespace + [PR['PR_PLAIN'], /^[\t\n\r \xA0]+/, null, '\t\n\r \xA0'], + // A double quoted, possibly multi-line, string. + [PR['PR_STRING'], /^\"(?:[^\"\\]|\\[\s\S])*(?:\"|$)/, null, '"'] + ], + [ + [PR['PR_KEYWORD'], /^(?:ADS|AD|AUG|BZF|BZMF|CAE|CAF|CA|CCS|COM|CS|DAS|DCA|DCOM|DCS|DDOUBL|DIM|DOUBLE|DTCB|DTCF|DV|DXCH|EDRUPT|EXTEND|INCR|INDEX|NDX|INHINT|LXCH|MASK|MSK|MP|MSU|NOOP|OVSK|QXCH|RAND|READ|RELINT|RESUME|RETURN|ROR|RXOR|SQUARE|SU|TCR|TCAA|OVSK|TCF|TC|TS|WAND|WOR|WRITE|XCH|XLQ|XXALQ|ZL|ZQ|ADD|ADZ|SUB|SUZ|MPY|MPR|MPZ|DVP|COM|ABS|CLA|CLZ|LDQ|STO|STQ|ALS|LLS|LRS|TRA|TSQ|TMI|TOV|AXT|TIX|DLY|INP|OUT)\s/,null], + [PR['PR_TYPE'], /^(?:-?GENADR|=MINUS|2BCADR|VN|BOF|MM|-?2CADR|-?[1-6]DNADR|ADRES|BBCON|[SE]?BANK\=?|BLOCK|BNKSUM|E?CADR|COUNT\*?|2?DEC\*?|-?DNCHAN|-?DNPTR|EQUALS|ERASE|MEMORY|2?OCT|REMADR|SETLOC|SUBRO|ORG|BSS|BES|SYN|EQU|DEFINE|END)\s/,null], + // A single quote possibly followed by a word that optionally ends with + // = ! or ?. + [PR['PR_LITERAL'], + /^\'(?:-*(?:\w|\\[\x21-\x7e])(?:[\w-]*|\\[\x21-\x7e])[=!?]?)?/], + // Any word including labels that optionally ends with = ! or ?. + [PR['PR_PLAIN'], + /^-*(?:[!-z_]|\\[\x21-\x7e])(?:[\w-]*|\\[\x21-\x7e])[=!?]?/i], + // A printable non-space non-special character + [PR['PR_PUNCTUATION'], /^[^\w\t\n\r \xA0()\"\\\';]+/] + ]), + ['apollo', 'agc', 'aea']); diff --git a/jOOQ-website/js/prettify/lang-clj.js b/jOOQ-website/js/prettify/lang-clj.js new file mode 100644 index 00000000000..0758335f366 --- /dev/null +++ b/jOOQ-website/js/prettify/lang-clj.js @@ -0,0 +1,64 @@ +/** + * @license Copyright (C) 2011 Google Inc. + * + * Licensed 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. + */ + +/** + * @fileoverview + * Registers a language handler for Clojure. + * + * + * To use, include prettify.js and this file in your HTML page. + * Then put your code in an HTML tag like + *

(my lisp code)
+ * The lang-cl class identifies the language as common lisp. + * This file supports the following language extensions: + * lang-clj - Clojure + * + * + * I used lang-lisp.js as the basis for this adding the clojure specific + * keywords and syntax. + * + * "Name" = 'Clojure' + * "Author" = 'Rich Hickey' + * "Version" = '1.2' + * "About" = 'Clojure is a lisp for the jvm with concurrency primitives and a richer set of types.' + * + * + * I used Clojure.org Reference as + * the basis for the reserved word list. + * + * + * @author jwall@google.com + */ + +PR['registerLangHandler']( + PR['createSimpleLexer']( + [ + // clojure has more paren types than minimal lisp. + ['opn', /^[\(\{\[]+/, null, '([{'], + ['clo', /^[\)\}\]]+/, null, ')]}'], + // A line comment that starts with ; + [PR['PR_COMMENT'], /^;[^\r\n]*/, null, ';'], + // Whitespace + [PR['PR_PLAIN'], /^[\t\n\r \xA0]+/, null, '\t\n\r \xA0'], + // A double quoted, possibly multi-line, string. + [PR['PR_STRING'], /^\"(?:[^\"\\]|\\[\s\S])*(?:\"|$)/, null, '"'] + ], + [ + // clojure has a much larger set of keywords + [PR['PR_KEYWORD'], /^(?:def|if|do|let|quote|var|fn|loop|recur|throw|try|monitor-enter|monitor-exit|defmacro|defn|defn-|macroexpand|macroexpand-1|for|doseq|dosync|dotimes|and|or|when|not|assert|doto|proxy|defstruct|first|rest|cons|defprotocol|deftype|defrecord|reify|defmulti|defmethod|meta|with-meta|ns|in-ns|create-ns|import|intern|refer|alias|namespace|resolve|ref|deref|refset|new|set!|memfn|to-array|into-array|aset|gen-class|reduce|map|filter|find|nil?|empty?|hash-map|hash-set|vec|vector|seq|flatten|reverse|assoc|dissoc|list|list?|disj|get|union|difference|intersection|extend|extend-type|extend-protocol|prn)\b/, null], + [PR['PR_TYPE'], /^:[0-9a-zA-Z\-]+/] + ]), + ['clj']); diff --git a/jOOQ-website/js/prettify/lang-css.js b/jOOQ-website/js/prettify/lang-css.js new file mode 100644 index 00000000000..034bd595755 --- /dev/null +++ b/jOOQ-website/js/prettify/lang-css.js @@ -0,0 +1,78 @@ +// Copyright (C) 2009 Google Inc. +// +// Licensed 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. + + + +/** + * @fileoverview + * Registers a language handler for CSS. + * + * + * To use, include prettify.js and this file in your HTML page. + * Then put your code in an HTML tag like + *

+ *
+ *
+ * http://www.w3.org/TR/CSS21/grammar.html Section G2 defines the lexical
+ * grammar.  This scheme does not recognize keywords containing escapes.
+ *
+ * @author mikesamuel@gmail.com
+ */
+
+PR['registerLangHandler'](
+    PR['createSimpleLexer'](
+        [
+         // The space production 
+         [PR['PR_PLAIN'],       /^[ \t\r\n\f]+/, null, ' \t\r\n\f']
+        ],
+        [
+         // Quoted strings.   and 
+         [PR['PR_STRING'],
+          /^\"(?:[^\n\r\f\\\"]|\\(?:\r\n?|\n|\f)|\\[\s\S])*\"/, null],
+         [PR['PR_STRING'],
+          /^\'(?:[^\n\r\f\\\']|\\(?:\r\n?|\n|\f)|\\[\s\S])*\'/, null],
+         ['lang-css-str', /^url\(([^\)\"\']*)\)/i],
+         [PR['PR_KEYWORD'],
+          /^(?:url|rgb|\!important|@import|@page|@media|@charset|inherit)(?=[^\-\w]|$)/i,
+          null],
+         // A property name -- an identifier followed by a colon.
+         ['lang-css-kw', /^(-?(?:[_a-z]|(?:\\[0-9a-f]+ ?))(?:[_a-z0-9\-]|\\(?:\\[0-9a-f]+ ?))*)\s*:/i],
+         // A C style block comment.  The  production.
+         [PR['PR_COMMENT'], /^\/\*[^*]*\*+(?:[^\/*][^*]*\*+)*\//],
+         // Escaping text spans
+         [PR['PR_COMMENT'], /^(?:)/],
+         // A number possibly containing a suffix.
+         [PR['PR_LITERAL'], /^(?:\d+|\d*\.\d+)(?:%|[a-z]+)?/i],
+         // A hex color
+         [PR['PR_LITERAL'], /^#(?:[0-9a-f]{3}){1,2}/i],
+         // An identifier
+         [PR['PR_PLAIN'],
+          /^-?(?:[_a-z]|(?:\\[\da-f]+ ?))(?:[_a-z\d\-]|\\(?:\\[\da-f]+ ?))*/i],
+         // A run of punctuation
+         [PR['PR_PUNCTUATION'], /^[^\s\w\'\"]+/]
+        ]),
+    ['css']);
+PR['registerLangHandler'](
+    PR['createSimpleLexer']([],
+        [
+         [PR['PR_KEYWORD'],
+          /^-?(?:[_a-z]|(?:\\[\da-f]+ ?))(?:[_a-z\d\-]|\\(?:\\[\da-f]+ ?))*/i]
+        ]),
+    ['css-kw']);
+PR['registerLangHandler'](
+    PR['createSimpleLexer']([],
+        [
+         [PR['PR_STRING'], /^[^\)\"\']+/]
+        ]),
+    ['css-str']);
diff --git a/jOOQ-website/js/prettify/lang-go.js b/jOOQ-website/js/prettify/lang-go.js
new file mode 100644
index 00000000000..f329e29b324
--- /dev/null
+++ b/jOOQ-website/js/prettify/lang-go.js
@@ -0,0 +1,58 @@
+// Copyright (C) 2010 Google Inc.
+//
+// Licensed 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.
+
+
+
+/**
+ * @fileoverview
+ * Registers a language handler for the Go language..
+ * 

+ * Based on the lexical grammar at + * http://golang.org/doc/go_spec.html#Lexical_elements + *

+ * Go uses a minimal style for highlighting so the below does not distinguish + * strings, keywords, literals, etc. by design. + * From a discussion with the Go designers: + *

+ * On Thursday, July 22, 2010, Mike Samuel <...> wrote:
+ * > On Thu, Jul 22, 2010, Rob 'Commander' Pike <...> wrote:
+ * >> Personally, I would vote for the subdued style godoc presents at http://golang.org
+ * >>
+ * >> Not as fancy as some like, but a case can be made it's the official style.
+ * >> If people want more colors, I wouldn't fight too hard, in the interest of
+ * >> encouragement through familiarity, but even then I would ask to shy away
+ * >> from technicolor starbursts.
+ * >
+ * > Like http://golang.org/pkg/go/scanner/ where comments are blue and all
+ * > other content is black?  I can do that.
+ * 
+ * + * @author mikesamuel@gmail.com + */ + +PR['registerLangHandler']( + PR['createSimpleLexer']( + [ + // Whitespace is made up of spaces, tabs and newline characters. + [PR['PR_PLAIN'], /^[\t\n\r \xA0]+/, null, '\t\n\r \xA0'], + // Not escaped as a string. See note on minimalism above. + [PR['PR_PLAIN'], /^(?:\"(?:[^\"\\]|\\[\s\S])*(?:\"|$)|\'(?:[^\'\\]|\\[\s\S])+(?:\'|$)|`[^`]*(?:`|$))/, null, '"\''] + ], + [ + // Block comments are delimited by /* and */. + // Single-line comments begin with // and extend to the end of a line. + [PR['PR_COMMENT'], /^(?:\/\/[^\r\n]*|\/\*[\s\S]*?\*\/)/], + [PR['PR_PLAIN'], /^(?:[^\/\"\'`]|\/(?![\/\*]))+/i] + ]), + ['go']); diff --git a/jOOQ-website/js/prettify/lang-hs.js b/jOOQ-website/js/prettify/lang-hs.js new file mode 100644 index 00000000000..4a15cf08ac1 --- /dev/null +++ b/jOOQ-website/js/prettify/lang-hs.js @@ -0,0 +1,101 @@ +// Copyright (C) 2009 Google Inc. +// +// Licensed 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. + + + +/** + * @fileoverview + * Registers a language handler for Haskell. + * + * + * To use, include prettify.js and this file in your HTML page. + * Then put your code in an HTML tag like + *
(my lisp code)
+ * The lang-cl class identifies the language as common lisp. + * This file supports the following language extensions: + * lang-cl - Common Lisp + * lang-el - Emacs Lisp + * lang-lisp - Lisp + * lang-scm - Scheme + * + * + * I used http://www.informatik.uni-freiburg.de/~thiemann/haskell/haskell98-report-html/syntax-iso.html + * as the basis, but ignore the way the ncomment production nests since this + * makes the lexical grammar irregular. It might be possible to support + * ncomments using the lookbehind filter. + * + * + * @author mikesamuel@gmail.com + */ + +PR['registerLangHandler']( + PR['createSimpleLexer']( + [ + // Whitespace + // whitechar -> newline | vertab | space | tab | uniWhite + // newline -> return linefeed | return | linefeed | formfeed + [PR['PR_PLAIN'], /^[\t\n\x0B\x0C\r ]+/, null, '\t\n\x0B\x0C\r '], + // Single line double and single-quoted strings. + // char -> ' (graphic<' | \> | space | escape<\&>) ' + // string -> " {graphic<" | \> | space | escape | gap}" + // escape -> \ ( charesc | ascii | decimal | o octal + // | x hexadecimal ) + // charesc -> a | b | f | n | r | t | v | \ | " | ' | & + [PR['PR_STRING'], /^\"(?:[^\"\\\n\x0C\r]|\\[\s\S])*(?:\"|$)/, + null, '"'], + [PR['PR_STRING'], /^\'(?:[^\'\\\n\x0C\r]|\\[^&])\'?/, + null, "'"], + // decimal -> digit{digit} + // octal -> octit{octit} + // hexadecimal -> hexit{hexit} + // integer -> decimal + // | 0o octal | 0O octal + // | 0x hexadecimal | 0X hexadecimal + // float -> decimal . decimal [exponent] + // | decimal exponent + // exponent -> (e | E) [+ | -] decimal + [PR['PR_LITERAL'], + /^(?:0o[0-7]+|0x[\da-f]+|\d+(?:\.\d+)?(?:e[+\-]?\d+)?)/i, + null, '0123456789'] + ], + [ + // Haskell does not have a regular lexical grammar due to the nested + // ncomment. + // comment -> dashes [ any {any}] newline + // ncomment -> opencom ANYseq {ncomment ANYseq}closecom + // dashes -> '--' {'-'} + // opencom -> '{-' + // closecom -> '-}' + [PR['PR_COMMENT'], /^(?:(?:--+(?:[^\r\n\x0C]*)?)|(?:\{-(?:[^-]|-+[^-\}])*-\}))/], + // reservedid -> case | class | data | default | deriving | do + // | else | if | import | in | infix | infixl | infixr + // | instance | let | module | newtype | of | then + // | type | where | _ + [PR['PR_KEYWORD'], /^(?:case|class|data|default|deriving|do|else|if|import|in|infix|infixl|infixr|instance|let|module|newtype|of|then|type|where|_)(?=[^a-zA-Z0-9\']|$)/, null], + // qvarid -> [ modid . ] varid + // qconid -> [ modid . ] conid + // varid -> (small {small | large | digit | ' }) + // conid -> large {small | large | digit | ' } + // modid -> conid + // small -> ascSmall | uniSmall | _ + // ascSmall -> a | b | ... | z + // uniSmall -> any Unicode lowercase letter + // large -> ascLarge | uniLarge + // ascLarge -> A | B | ... | Z + // uniLarge -> any uppercase or titlecase Unicode letter + [PR['PR_PLAIN'], /^(?:[A-Z][\w\']*\.)*[a-zA-Z][\w\']*/], + // matches the symbol production + [PR['PR_PUNCTUATION'], /^[^\t\n\x0B\x0C\r a-zA-Z0-9\'\"]+/] + ]), + ['hs']); diff --git a/jOOQ-website/js/prettify/lang-lisp.js b/jOOQ-website/js/prettify/lang-lisp.js new file mode 100644 index 00000000000..3bf75d721b2 --- /dev/null +++ b/jOOQ-website/js/prettify/lang-lisp.js @@ -0,0 +1,93 @@ +// Copyright (C) 2008 Google Inc. +// +// Licensed 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. + + + +/** + * @fileoverview + * Registers a language handler for Common Lisp and related languages. + * + * + * To use, include prettify.js and this file in your HTML page. + * Then put your code in an HTML tag like + *
(my lisp code)
+ * The lang-cl class identifies the language as common lisp. + * This file supports the following language extensions: + * lang-cl - Common Lisp + * lang-el - Emacs Lisp + * lang-lisp - Lisp + * lang-scm - Scheme + * + * + * I used http://www.devincook.com/goldparser/doc/meta-language/grammar-LISP.htm + * as the basis, but added line comments that start with ; and changed the atom + * production to disallow unquoted semicolons. + * + * "Name" = 'LISP' + * "Author" = 'John McCarthy' + * "Version" = 'Minimal' + * "About" = 'LISP is an abstract language that organizes ALL' + * | 'data around "lists".' + * + * "Start Symbol" = [s-Expression] + * + * {Atom Char} = {Printable} - {Whitespace} - [()"\''] + * + * Atom = ( {Atom Char} | '\'{Printable} )+ + * + * [s-Expression] ::= [Quote] Atom + * | [Quote] '(' [Series] ')' + * | [Quote] '(' [s-Expression] '.' [s-Expression] ')' + * + * [Series] ::= [s-Expression] [Series] + * | + * + * [Quote] ::= '' !Quote = do not evaluate + * | + * + * + * I used Practical Common Lisp as + * the basis for the reserved word list. + * + * + * @author mikesamuel@gmail.com + */ + +PR['registerLangHandler']( + PR['createSimpleLexer']( + [ + ['opn', /^\(+/, null, '('], + ['clo', /^\)+/, null, ')'], + // A line comment that starts with ; + [PR['PR_COMMENT'], /^;[^\r\n]*/, null, ';'], + // Whitespace + [PR['PR_PLAIN'], /^[\t\n\r \xA0]+/, null, '\t\n\r \xA0'], + // A double quoted, possibly multi-line, string. + [PR['PR_STRING'], /^\"(?:[^\"\\]|\\[\s\S])*(?:\"|$)/, null, '"'] + ], + [ + [PR['PR_KEYWORD'], /^(?:block|c[ad]+r|catch|con[ds]|def(?:ine|un)|do|eq|eql|equal|equalp|eval-when|flet|format|go|if|labels|lambda|let|load-time-value|locally|macrolet|multiple-value-call|nil|progn|progv|quote|require|return-from|setq|symbol-macrolet|t|tagbody|the|throw|unwind)\b/, null], + [PR['PR_LITERAL'], + /^[+\-]?(?:[0#]x[0-9a-f]+|\d+\/\d+|(?:\.\d+|\d+(?:\.\d*)?)(?:[ed][+\-]?\d+)?)/i], + // A single quote possibly followed by a word that optionally ends with + // = ! or ?. + [PR['PR_LITERAL'], + /^\'(?:-*(?:\w|\\[\x21-\x7e])(?:[\w-]*|\\[\x21-\x7e])[=!?]?)?/], + // A word that optionally ends with = ! or ?. + [PR['PR_PLAIN'], + /^-*(?:[a-z_]|\\[\x21-\x7e])(?:[\w-]*|\\[\x21-\x7e])[=!?]?/i], + // A printable non-space non-special character + [PR['PR_PUNCTUATION'], /^[^\w\t\n\r \xA0()\"\\\';]+/] + ]), + ['cl', 'el', 'lisp', 'scm']); diff --git a/jOOQ-website/js/prettify/lang-lua.js b/jOOQ-website/js/prettify/lang-lua.js new file mode 100644 index 00000000000..7a3f9766dbd --- /dev/null +++ b/jOOQ-website/js/prettify/lang-lua.js @@ -0,0 +1,59 @@ +// Copyright (C) 2008 Google Inc. +// +// Licensed 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. + + + +/** + * @fileoverview + * Registers a language handler for Lua. + * + * + * To use, include prettify.js and this file in your HTML page. + * Then put your code in an HTML tag like + *
(my Lua code)
+ * + * + * I used http://www.lua.org/manual/5.1/manual.html#2.1 + * Because of the long-bracket concept used in strings and comments, Lua does + * not have a regular lexical grammar, but luckily it fits within the space + * of irregular grammars supported by javascript regular expressions. + * + * @author mikesamuel@gmail.com + */ + +PR['registerLangHandler']( + PR['createSimpleLexer']( + [ + // Whitespace + [PR['PR_PLAIN'], /^[\t\n\r \xA0]+/, null, '\t\n\r \xA0'], + // A double or single quoted, possibly multi-line, string. + [PR['PR_STRING'], /^(?:\"(?:[^\"\\]|\\[\s\S])*(?:\"|$)|\'(?:[^\'\\]|\\[\s\S])*(?:\'|$))/, null, '"\''] + ], + [ + // A comment is either a line comment that starts with two dashes, or + // two dashes preceding a long bracketed block. + [PR['PR_COMMENT'], /^--(?:\[(=*)\[[\s\S]*?(?:\]\1\]|$)|[^\r\n]*)/], + // A long bracketed block not preceded by -- is a string. + [PR['PR_STRING'], /^\[(=*)\[[\s\S]*?(?:\]\1\]|$)/], + [PR['PR_KEYWORD'], /^(?:and|break|do|else|elseif|end|false|for|function|if|in|local|nil|not|or|repeat|return|then|true|until|while)\b/, null], + // A number is a hex integer literal, a decimal real literal, or in + // scientific notation. + [PR['PR_LITERAL'], + /^[+-]?(?:0x[\da-f]+|(?:(?:\.\d+|\d+(?:\.\d*)?)(?:e[+\-]?\d+)?))/i], + // An identifier + [PR['PR_PLAIN'], /^[a-z_]\w*/i], + // A run of punctuation + [PR['PR_PUNCTUATION'], /^[^\w\t\n\r \xA0][^\w\t\n\r \xA0\"\'\-\+=]*/] + ]), + ['lua']); diff --git a/jOOQ-website/js/prettify/lang-ml.js b/jOOQ-website/js/prettify/lang-ml.js new file mode 100644 index 00000000000..b5a4c171d25 --- /dev/null +++ b/jOOQ-website/js/prettify/lang-ml.js @@ -0,0 +1,56 @@ +// Copyright (C) 2008 Google Inc. +// +// Licensed 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. + + + +/** + * @fileoverview + * Registers a language handler for OCaml, SML, F# and similar languages. + * + * Based on the lexical grammar at + * http://research.microsoft.com/en-us/um/cambridge/projects/fsharp/manual/spec.html#_Toc270597388 + * + * @author mikesamuel@gmail.com + */ + +PR['registerLangHandler']( + PR['createSimpleLexer']( + [ + // Whitespace is made up of spaces, tabs and newline characters. + [PR['PR_PLAIN'], /^[\t\n\r \xA0]+/, null, '\t\n\r \xA0'], + // #if ident/#else/#endif directives delimit conditional compilation + // sections + [PR['PR_COMMENT'], + /^#(?:if[\t\n\r \xA0]+(?:[a-z_$][\w\']*|``[^\r\n\t`]*(?:``|$))|else|endif|light)/i, + null, '#'], + // A double or single quoted, possibly multi-line, string. + // F# allows escaped newlines in strings. + [PR['PR_STRING'], /^(?:\"(?:[^\"\\]|\\[\s\S])*(?:\"|$)|\'(?:[^\'\\]|\\[\s\S])(?:\'|$))/, null, '"\''] + ], + [ + // Block comments are delimited by (* and *) and may be + // nested. Single-line comments begin with // and extend to + // the end of a line. + // TODO: (*...*) comments can be nested. This does not handle that. + [PR['PR_COMMENT'], /^(?:\/\/[^\r\n]*|\(\*[\s\S]*?\*\))/], + [PR['PR_KEYWORD'], /^(?:abstract|and|as|assert|begin|class|default|delegate|do|done|downcast|downto|elif|else|end|exception|extern|false|finally|for|fun|function|if|in|inherit|inline|interface|internal|lazy|let|match|member|module|mutable|namespace|new|null|of|open|or|override|private|public|rec|return|static|struct|then|to|true|try|type|upcast|use|val|void|when|while|with|yield|asr|land|lor|lsl|lsr|lxor|mod|sig|atomic|break|checked|component|const|constraint|constructor|continue|eager|event|external|fixed|functor|global|include|method|mixin|object|parallel|process|protected|pure|sealed|trait|virtual|volatile)\b/], + // A number is a hex integer literal, a decimal real literal, or in + // scientific notation. + [PR['PR_LITERAL'], + /^[+\-]?(?:0x[\da-f]+|(?:(?:\.\d+|\d+(?:\.\d*)?)(?:e[+\-]?\d+)?))/i], + [PR['PR_PLAIN'], /^(?:[a-z_][\w']*[!?#]?|``[^\r\n\t`]*(?:``|$))/i], + // A printable non-space non-special character + [PR['PR_PUNCTUATION'], /^[^\t\n\r \xA0\"\'\w]+/] + ]), + ['fs', 'ml']); diff --git a/jOOQ-website/js/prettify/lang-n.js b/jOOQ-website/js/prettify/lang-n.js new file mode 100644 index 00000000000..babe8f370eb --- /dev/null +++ b/jOOQ-website/js/prettify/lang-n.js @@ -0,0 +1,62 @@ +// Copyright (C) 2011 Zimin A.V. +// +// Licensed 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. + + +/** + * @fileoverview + * Registers a language handler for the Nemerle language. + * http://nemerle.org + * @author Zimin A.V. + */ +(function () { + var keywords = 'abstract|and|as|base|catch|class|def|delegate|enum|event|extern|false|finally|' + + 'fun|implements|interface|internal|is|macro|match|matches|module|mutable|namespace|new|' + + 'null|out|override|params|partial|private|protected|public|ref|sealed|static|struct|' + + 'syntax|this|throw|true|try|type|typeof|using|variant|virtual|volatile|when|where|with|' + + 'assert|assert2|async|break|checked|continue|do|else|ensures|for|foreach|if|late|lock|new|nolate|' + + 'otherwise|regexp|repeat|requires|return|surroundwith|unchecked|unless|using|while|yield'; + + var shortcutStylePatterns = [ + [PR.PR_STRING, /^(?:\'(?:[^\\\'\r\n]|\\.)*\'|\"(?:[^\\\"\r\n]|\\.)*(?:\"|$))/, null, '"'], + [PR.PR_COMMENT, /^#(?:(?:define|elif|else|endif|error|ifdef|include|ifndef|line|pragma|undef|warning)\b|[^\r\n]*)/, null, '#'], + [PR.PR_PLAIN, /^\s+/, null, ' \r\n\t\xA0'] + ]; + + var fallthroughStylePatterns = [ + [PR.PR_STRING, /^@\"(?:[^\"]|\"\")*(?:\"|$)/, null], + [PR.PR_STRING, /^<#(?:[^#>])*(?:#>|$)/, null], + [PR.PR_STRING, /^<(?:(?:(?:\.\.\/)*|\/?)(?:[\w-]+(?:\/[\w-]+)+)?[\w-]+\.h|[a-z]\w*)>/, null], + [PR.PR_COMMENT, /^\/\/[^\r\n]*/, null], + [PR.PR_COMMENT, /^\/\*[\s\S]*?(?:\*\/|$)/, null], + [PR.PR_KEYWORD, new RegExp('^(?:' + keywords + ')\\b'), null], + [PR.PR_TYPE, /^(?:array|bool|byte|char|decimal|double|float|int|list|long|object|sbyte|short|string|ulong|uint|ufloat|ulong|ushort|void)\b/, null], + [PR.PR_LITERAL, /^@[a-z_$][a-z_$@0-9]*/i, null], + [PR.PR_TYPE, /^@[A-Z]+[a-z][A-Za-z_$@0-9]*/, null], + [PR.PR_PLAIN, /^'?[A-Za-z_$][a-z_$@0-9]*/i, null], + [PR.PR_LITERAL, new RegExp( + '^(?:' + // A hex number + + '0x[a-f0-9]+' + // or an octal or decimal number, + + '|(?:\\d(?:_\\d+)*\\d*(?:\\.\\d*)?|\\.\\d\\+)' + // possibly in scientific notation + + '(?:e[+\\-]?\\d+)?' + + ')' + // with an optional modifier like UL for unsigned long + + '[a-z]*', 'i'), null, '0123456789'], + + [PR.PR_PUNCTUATION, /^.[^\s\w\.$@\'\"\`\/\#]*/, null] + ]; + PR.registerLangHandler(PR.createSimpleLexer(shortcutStylePatterns, fallthroughStylePatterns), ['n', 'nemerle']); +})(); diff --git a/jOOQ-website/js/prettify/lang-proto.js b/jOOQ-website/js/prettify/lang-proto.js new file mode 100644 index 00000000000..539549152b1 --- /dev/null +++ b/jOOQ-website/js/prettify/lang-proto.js @@ -0,0 +1,35 @@ +// Copyright (C) 2006 Google Inc. +// +// Licensed 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. + + +/** + * @fileoverview + * Registers a language handler for Protocol Buffers as described at + * http://code.google.com/p/protobuf/. + * + * Based on the lexical grammar at + * http://research.microsoft.com/fsharp/manual/spec2.aspx#_Toc202383715 + * + * @author mikesamuel@gmail.com + */ + +PR['registerLangHandler'](PR['sourceDecorator']({ + 'keywords': ( + 'bytes,default,double,enum,extend,extensions,false,' + + 'group,import,max,message,option,' + + 'optional,package,repeated,required,returns,rpc,service,' + + 'syntax,to,true'), + 'types': /^(bool|(double|s?fixed|[su]?int)(32|64)|float|string)\b/, + 'cStyleComments': true + }), ['proto']); diff --git a/jOOQ-website/js/prettify/lang-scala.js b/jOOQ-website/js/prettify/lang-scala.js new file mode 100644 index 00000000000..db9b484c824 --- /dev/null +++ b/jOOQ-website/js/prettify/lang-scala.js @@ -0,0 +1,54 @@ +// Copyright (C) 2010 Google Inc. +// +// Licensed 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. + + +/** + * @fileoverview + * Registers a language handler for Scala. + * + * Derived from http://lampsvn.epfl.ch/svn-repos/scala/scala-documentation/trunk/src/reference/SyntaxSummary.tex + * + * @author mikesamuel@gmail.com + */ + +PR['registerLangHandler']( + PR['createSimpleLexer']( + [ + // Whitespace + [PR['PR_PLAIN'], /^[\t\n\r \xA0]+/, null, '\t\n\r \xA0'], + // A double or single quoted string + // or a triple double-quoted multi-line string. + [PR['PR_STRING'], + /^(?:"(?:(?:""(?:""?(?!")|[^\\"]|\\.)*"{0,3})|(?:[^"\r\n\\]|\\.)*"?))/, + null, '"'], + [PR['PR_LITERAL'], /^`(?:[^\r\n\\`]|\\.)*`?/, null, '`'], + [PR['PR_PUNCTUATION'], /^[!#%&()*+,\-:;<=>?@\[\\\]^{|}~]+/, null, + '!#%&()*+,-:;<=>?@[\\]^{|}~'] + ], + [ + // A symbol literal is a single quote followed by an identifier with no + // single quote following + // A character literal has single quotes on either side + [PR['PR_STRING'], /^'(?:[^\r\n\\']|\\(?:'|[^\r\n']+))'/], + [PR['PR_LITERAL'], /^'[a-zA-Z_$][\w$]*(?!['$\w])/], + [PR['PR_KEYWORD'], /^(?:abstract|case|catch|class|def|do|else|extends|final|finally|for|forSome|if|implicit|import|lazy|match|new|object|override|package|private|protected|requires|return|sealed|super|throw|trait|try|type|val|var|while|with|yield)\b/], + [PR['PR_LITERAL'], /^(?:true|false|null|this)\b/], + [PR['PR_LITERAL'], /^(?:(?:0(?:[0-7]+|X[0-9A-F]+))L?|(?:(?:0|[1-9][0-9]*)(?:(?:\.[0-9]+)?(?:E[+\-]?[0-9]+)?F?|L?))|\\.[0-9]+(?:E[+\-]?[0-9]+)?F?)/i], + // Treat upper camel case identifiers as types. + [PR['PR_TYPE'], /^[$_]*[A-Z][_$A-Z0-9]*[a-z][\w$]*/], + [PR['PR_PLAIN'], /^[$a-zA-Z_][\w$]*/], + [PR['PR_COMMENT'], /^\/(?:\/.*|\*(?:\/|\**[^*/])*(?:\*+\/?)?)/], + [PR['PR_PUNCTUATION'], /^(?:\.+|\/)/] + ]), + ['scala']); diff --git a/jOOQ-website/js/prettify/lang-sql.js b/jOOQ-website/js/prettify/lang-sql.js new file mode 100644 index 00000000000..1339f1d7b0b --- /dev/null +++ b/jOOQ-website/js/prettify/lang-sql.js @@ -0,0 +1,57 @@ +// Copyright (C) 2008 Google Inc. +// +// Licensed 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. + + + +/** + * @fileoverview + * Registers a language handler for SQL. + * + * + * To use, include prettify.js and this file in your HTML page. + * Then put your code in an HTML tag like + *
(my SQL code)
+ * + * + * http://savage.net.au/SQL/sql-99.bnf.html is the basis for the grammar, and + * http://msdn.microsoft.com/en-us/library/aa238507(SQL.80).aspx as the basis + * for the keyword list. + * + * @author mikesamuel@gmail.com + */ + +PR['registerLangHandler']( + PR['createSimpleLexer']( + [ + // Whitespace + [PR['PR_PLAIN'], /^[\t\n\r \xA0]+/, null, '\t\n\r \xA0'], + // A double or single quoted, possibly multi-line, string. + [PR['PR_STRING'], /^(?:"(?:[^\"\\]|\\.)*"|'(?:[^\'\\]|\\.)*')/, null, + '"\''] + ], + [ + // A comment is either a line comment that starts with two dashes, or + // two dashes preceding a long bracketed block. + [PR['PR_COMMENT'], /^(?:--[^\r\n]*|\/\*[\s\S]*?(?:\*\/|$))/], + [PR['PR_KEYWORD'], /^(?:ADD|ALL|ALTER|AND|ANY|AS|ASC|AUTHORIZATION|BACKUP|BEGIN|BETWEEN|BREAK|BROWSE|BULK|BY|CASCADE|CASE|CHECK|CHECKPOINT|CLOSE|CLUSTERED|COALESCE|COLLATE|COLUMN|COMMIT|COMPUTE|CONSTRAINT|CONTAINS|CONTAINSTABLE|CONTINUE|CONVERT|CREATE|CROSS|CURRENT|CURRENT_DATE|CURRENT_TIME|CURRENT_TIMESTAMP|CURRENT_USER|CURSOR|DATABASE|DBCC|DEALLOCATE|DECLARE|DEFAULT|DELETE|DENY|DESC|DISK|DISTINCT|DISTRIBUTED|DOUBLE|DROP|DUMMY|DUMP|ELSE|END|ERRLVL|ESCAPE|EXCEPT|EXEC|EXECUTE|EXISTS|EXIT|FETCH|FILE|FILLFACTOR|FIRST|FOR|FOREIGN|FREETEXT|FREETEXTTABLE|FROM|FULL|FUNCTION|GOTO|GRANT|GROUP|HAVING|HOLDLOCK|IDENTITY|IDENTITYCOL|IDENTITY_INSERT|IF|IN|INDEX|INNER|INSERT|INTERSECT|INTO|IS|JOIN|KEY|KILL|LEFT|LIKE|LIMIT|LINENO|LOAD|MATCH|MERGE|NATIONAL|NOCHECK|NONCLUSTERED|NOT|NULL|NULLIF|NULLS|OF|OFF|OFFSET|OFFSETS|ON|OPEN|OPENDATASOURCE|OPENQUERY|OPENROWSET|OPENXML|OPTION|OR|ORDER|OUTER|OVER|PERCENT|PLAN|PRECISION|PRIMARY|PRINT|PROC|PROCEDURE|PUBLIC|RAISERROR|READ|READTEXT|RECONFIGURE|REFERENCES|REPLICATION|RESTORE|RESTRICT|RETURN|REVOKE|RIGHT|ROLLBACK|ROWCOUNT|ROWGUIDCOL|RULE|SAVE|SCHEMA|SELECT|SESSION_USER|SET|SETUSER|SHUTDOWN|SOME|STATISTICS|SYSTEM_USER|TABLE|TEXTSIZE|THEN|TO|TOP|TRAN|TRANSACTION|TRIGGER|TRUNCATE|TSEQUAL|UNION|UNIQUE|UPDATE|UPDATETEXT|USE|USER|USING|VALUES|VARYING|VIEW|WAITFOR|WHEN|WHERE|WHILE|WITH|WRITETEXT)(?=[^\w-]|$)/i, null], + // A number is a hex integer literal, a decimal real literal, or in + // scientific notation. + [PR['PR_LITERAL'], + /^[+-]?(?:0x[\da-f]+|(?:(?:\.\d+|\d+(?:\.\d*)?)(?:e[+\-]?\d+)?))/i], + // An identifier + [PR['PR_PLAIN'], /^[a-z_][\w-]*/i], + // A run of punctuation + [PR['PR_PUNCTUATION'], /^[^\w\t\n\r \xA0\"\'][^\w\t\n\r \xA0+\-\"\']*/] + ]), + ['sql']); diff --git a/jOOQ-website/js/prettify/lang-tex.js b/jOOQ-website/js/prettify/lang-tex.js new file mode 100644 index 00000000000..57d0ac4cfd3 --- /dev/null +++ b/jOOQ-website/js/prettify/lang-tex.js @@ -0,0 +1,46 @@ +// Copyright (C) 2011 Martin S. +// +// Licensed 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. + +/** + * @fileoverview + * Support for tex highlighting as discussed on + * meta.tex.stackexchange.com. + * + * @author Martin S. + */ + +PR.registerLangHandler( + PR.createSimpleLexer( + [ + // whitespace + [PR.PR_PLAIN, /^[\t\n\r \xA0]+/, null, '\t\n\r \xA0'], + // all comments begin with '%' + [PR.PR_COMMENT, /^%[^\r\n]*/, null, '%'] + ], + [ + //[PR.PR_DECLARATION, /^\\([egx]?def|(new|renew|provide)(command|environment))\b/], + // any command starting with a \ and contains + // either only letters (a-z,A-Z), '@' (internal macros) + [PR.PR_KEYWORD, /^\\[a-zA-Z@]+/], + // or contains only one character + [PR.PR_KEYWORD, /^\\./], + // Highlight dollar for math mode and ampersam for tabular + [PR.PR_TYPE, /^[$&]/], + // numeric measurement values with attached units + [PR.PR_LITERAL, + /[+-]?(?:\.\d+|\d+(?:\.\d*)?)(cm|em|ex|in|pc|pt|bp|mm)/i], + // punctuation usually occurring within commands + [PR.PR_PUNCTUATION, /^[{}()\[\]=]+/] + ]), + ['latex', 'tex']); diff --git a/jOOQ-website/js/prettify/lang-vb.js b/jOOQ-website/js/prettify/lang-vb.js new file mode 100644 index 00000000000..5fb4a380e34 --- /dev/null +++ b/jOOQ-website/js/prettify/lang-vb.js @@ -0,0 +1,61 @@ +// Copyright (C) 2009 Google Inc. +// +// Licensed 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. + + + +/** + * @fileoverview + * Registers a language handler for various flavors of basic. + * + * + * To use, include prettify.js and this file in your HTML page. + * Then put your code in an HTML tag like + *

+ *
+ *
+ * http://msdn.microsoft.com/en-us/library/aa711638(VS.71).aspx defines the
+ * visual basic grammar lexical grammar.
+ *
+ * @author mikesamuel@gmail.com
+ */
+
+PR['registerLangHandler'](
+    PR['createSimpleLexer'](
+        [
+         // Whitespace
+         [PR['PR_PLAIN'],       /^[\t\n\r \xA0\u2028\u2029]+/, null, '\t\n\r \xA0\u2028\u2029'],
+         // A double quoted string with quotes escaped by doubling them.
+         // A single character can be suffixed with C.
+         [PR['PR_STRING'],      /^(?:[\"\u201C\u201D](?:[^\"\u201C\u201D]|[\"\u201C\u201D]{2})(?:[\"\u201C\u201D]c|$)|[\"\u201C\u201D](?:[^\"\u201C\u201D]|[\"\u201C\u201D]{2})*(?:[\"\u201C\u201D]|$))/i, null,
+          '"\u201C\u201D'],
+         // A comment starts with a single quote and runs until the end of the
+         // line.
+         [PR['PR_COMMENT'],     /^[\'\u2018\u2019][^\r\n\u2028\u2029]*/, null, '\'\u2018\u2019']
+        ],
+        [
+         [PR['PR_KEYWORD'], /^(?:AddHandler|AddressOf|Alias|And|AndAlso|Ansi|As|Assembly|Auto|Boolean|ByRef|Byte|ByVal|Call|Case|Catch|CBool|CByte|CChar|CDate|CDbl|CDec|Char|CInt|Class|CLng|CObj|Const|CShort|CSng|CStr|CType|Date|Decimal|Declare|Default|Delegate|Dim|DirectCast|Do|Double|Each|Else|ElseIf|End|EndIf|Enum|Erase|Error|Event|Exit|Finally|For|Friend|Function|Get|GetType|GoSub|GoTo|Handles|If|Implements|Imports|In|Inherits|Integer|Interface|Is|Let|Lib|Like|Long|Loop|Me|Mod|Module|MustInherit|MustOverride|MyBase|MyClass|Namespace|New|Next|Not|NotInheritable|NotOverridable|Object|On|Option|Optional|Or|OrElse|Overloads|Overridable|Overrides|ParamArray|Preserve|Private|Property|Protected|Public|RaiseEvent|ReadOnly|ReDim|RemoveHandler|Resume|Return|Select|Set|Shadows|Shared|Short|Single|Static|Step|Stop|String|Structure|Sub|SyncLock|Then|Throw|To|Try|TypeOf|Unicode|Until|Variant|Wend|When|While|With|WithEvents|WriteOnly|Xor|EndIf|GoSub|Let|Variant|Wend)\b/i, null],
+         // A second comment form
+         [PR['PR_COMMENT'], /^REM[^\r\n\u2028\u2029]*/i],
+         // A boolean, numeric, or date literal.
+         [PR['PR_LITERAL'],
+          /^(?:True\b|False\b|Nothing\b|\d+(?:E[+\-]?\d+[FRD]?|[FRDSIL])?|(?:&H[0-9A-F]+|&O[0-7]+)[SIL]?|\d*\.\d+(?:E[+\-]?\d+)?[FRD]?|#\s+(?:\d+[\-\/]\d+[\-\/]\d+(?:\s+\d+:\d+(?::\d+)?(\s*(?:AM|PM))?)?|\d+:\d+(?::\d+)?(\s*(?:AM|PM))?)\s+#)/i],
+         // An identifier?
+         [PR['PR_PLAIN'], /^(?:(?:[a-z]|_\w)\w*|\[(?:[a-z]|_\w)\w*\])/i],
+         // A run of punctuation
+         [PR['PR_PUNCTUATION'],
+          /^[^\w\t\n\r \"\'\[\]\xA0\u2018\u2019\u201C\u201D\u2028\u2029]+/],
+         // Square brackets
+         [PR['PR_PUNCTUATION'], /^(?:\[|\])/]
+        ]),
+    ['vb', 'vbs']);
diff --git a/jOOQ-website/js/prettify/lang-vhdl.js b/jOOQ-website/js/prettify/lang-vhdl.js
new file mode 100644
index 00000000000..f6410bc73e9
--- /dev/null
+++ b/jOOQ-website/js/prettify/lang-vhdl.js
@@ -0,0 +1,34 @@
+/**
+ * @fileoverview
+ * Registers a language handler for VHDL '93.
+ *
+ * Based on the lexical grammar and keywords at
+ * http://www.iis.ee.ethz.ch/~zimmi/download/vhdl93_syntax.html
+ *
+ * @author benoit@ryder.fr
+ */
+
+PR['registerLangHandler'](
+    PR['createSimpleLexer'](
+        [
+         // Whitespace
+         [PR['PR_PLAIN'], /^[\t\n\r \xA0]+/, null, '\t\n\r \xA0']
+        ],
+        [
+         // String, character or bit string
+         [PR['PR_STRING'], /^(?:[BOX]?"(?:[^\"]|"")*"|'.')/i],
+         // Comment, from two dashes until end of line.
+         [PR['PR_COMMENT'], /^--[^\r\n]*/],
+         [PR['PR_KEYWORD'], /^(?:abs|access|after|alias|all|and|architecture|array|assert|attribute|begin|block|body|buffer|bus|case|component|configuration|constant|disconnect|downto|else|elsif|end|entity|exit|file|for|function|generate|generic|group|guarded|if|impure|in|inertial|inout|is|label|library|linkage|literal|loop|map|mod|nand|new|next|nor|not|null|of|on|open|or|others|out|package|port|postponed|procedure|process|pure|range|record|register|reject|rem|report|return|rol|ror|select|severity|shared|signal|sla|sll|sra|srl|subtype|then|to|transport|type|unaffected|units|until|use|variable|wait|when|while|with|xnor|xor)(?=[^\w-]|$)/i, null],
+         // Type, predefined or standard
+         [PR['PR_TYPE'], /^(?:bit|bit_vector|character|boolean|integer|real|time|string|severity_level|positive|natural|signed|unsigned|line|text|std_u?logic(?:_vector)?)(?=[^\w-]|$)/i, null],
+         // Predefined attributes
+         [PR['PR_TYPE'], /^\'(?:ACTIVE|ASCENDING|BASE|DELAYED|DRIVING|DRIVING_VALUE|EVENT|HIGH|IMAGE|INSTANCE_NAME|LAST_ACTIVE|LAST_EVENT|LAST_VALUE|LEFT|LEFTOF|LENGTH|LOW|PATH_NAME|POS|PRED|QUIET|RANGE|REVERSE_RANGE|RIGHT|RIGHTOF|SIMPLE_NAME|STABLE|SUCC|TRANSACTION|VAL|VALUE)(?=[^\w-]|$)/i, null],
+         // Number, decimal or based literal
+         [PR['PR_LITERAL'], /^\d+(?:_\d+)*(?:#[\w\\.]+#(?:[+\-]?\d+(?:_\d+)*)?|(?:\.\d+(?:_\d+)*)?(?:E[+\-]?\d+(?:_\d+)*)?)/i],
+         // Identifier, basic or extended
+         [PR['PR_PLAIN'], /^(?:[a-z]\w*|\\[^\\]*\\)/i],
+         // Punctuation
+         [PR['PR_PUNCTUATION'], /^[^\w\t\n\r \xA0\"\'][^\w\t\n\r \xA0\-\"\']*/]
+        ]),
+    ['vhdl', 'vhd']);
diff --git a/jOOQ-website/js/prettify/lang-wiki.js b/jOOQ-website/js/prettify/lang-wiki.js
new file mode 100644
index 00000000000..660423e368b
--- /dev/null
+++ b/jOOQ-website/js/prettify/lang-wiki.js
@@ -0,0 +1,53 @@
+// Copyright (C) 2009 Google Inc.
+//
+// Licensed 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.
+
+
+/**
+ * @fileoverview
+ * Registers a language handler for Wiki pages.
+ *
+ * Based on WikiSyntax at http://code.google.com/p/support/wiki/WikiSyntax
+ *
+ * @author mikesamuel@gmail.com
+ */
+
+PR['registerLangHandler'](
+    PR['createSimpleLexer'](
+        [
+         // Whitespace
+         [PR['PR_PLAIN'],       /^[\t \xA0a-gi-z0-9]+/, null,
+          '\t \xA0abcdefgijklmnopqrstuvwxyz0123456789'],
+         // Wiki formatting
+         [PR['PR_PUNCTUATION'], /^[=*~\^\[\]]+/, null, '=*~^[]']
+        ],
+        [
+         // Meta-info like #summary, #labels, etc.
+         ['lang-wiki.meta',  /(?:^^|\r\n?|\n)(#[a-z]+)\b/],
+         // A WikiWord
+         [PR['PR_LITERAL'],     /^(?:[A-Z][a-z][a-z0-9]+[A-Z][a-z][a-zA-Z0-9]+)\b/
+          ],
+         // A preformatted block in an unknown language
+         ['lang-',           /^\{\{\{([\s\S]+?)\}\}\}/],
+         // A block of source code in an unknown language
+         ['lang-',           /^`([^\r\n`]+)`/],
+         // An inline URL.
+         [PR['PR_STRING'],
+          /^https?:\/\/[^\/?#\s]*(?:\/[^?#\s]*)?(?:\?[^#\s]*)?(?:#\S*)?/i],
+         [PR['PR_PLAIN'],       /^(?:\r\n|[\s\S])[^#=*~^A-Zh\{`\[\r\n]*/]
+        ]),
+    ['wiki']);
+
+PR['registerLangHandler'](
+    PR['createSimpleLexer']([[PR['PR_KEYWORD'], /^#[a-z]+/i, null, '#']], []),
+    ['wiki.meta']);
diff --git a/jOOQ-website/js/prettify/lang-xq.js b/jOOQ-website/js/prettify/lang-xq.js
new file mode 100644
index 00000000000..38ffd72d09b
--- /dev/null
+++ b/jOOQ-website/js/prettify/lang-xq.js
@@ -0,0 +1,67 @@
+// Copyright (C) 2011 Patrick Wied
+//
+// Licensed 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.
+
+
+
+/**
+ * @fileoverview
+ * Registers a language handler for XQuery.
+ *
+ * To use, include prettify.js and this file in your HTML page.
+ * Then put your code in an HTML tag like
+ *      

+ *
+ *
+ * @author Patrick Wied ( patpa7p@live.de )
+ * @version 2010-09-28
+ */
+
+// Falls back to plain for stylesheets that don't style fun.
+var PR_FUNCTION = 'fun pln';
+// Falls back to plaiin for stylesheets that don't style var.
+var PR_VARIABLE = 'var pln';
+
+PR['registerLangHandler'](
+    PR['createSimpleLexer'](
+        [
+         // Matching $var-ia_bles
+         [PR_VARIABLE, /^\$[A-Za-z0-9_\-]+/, null, "$"]
+        ],
+        [
+         // Matching lt and gt operators
+         // Not the best matching solution but you have to differentiate between the gt operator and the tag closing char
+         [PR['PR_PLAIN'], /^[\s=][<>][\s=]/],
+         // Matching @Attributes
+         [PR['PR_LITERAL'], /^\@[\w-]+/],
+         // Matching xml tags
+         [PR['PR_TAG'], /^<\/?[a-z](?:[\w.:-]*\w)?|\/?>$/i],
+         // Matching single or multiline xquery comments -> (:  :)
+         [PR['PR_COMMENT'], /^\(:[\s\S]*?:\)/],
+         // Tokenizing /{}:=;*,[]() as plain
+         [PR['PR_PLAIN'], /^[\/\{\};,\[\]\(\)]$/],
+         // Matching a double or single quoted, possibly multi-line, string.
+         // with the special condition that a { in a string changes to xquery context 
+         [PR['PR_STRING'], /^(?:\"(?:[^\"\\\{]|\\[\s\S])*(?:\"|$)|\'(?:[^\'\\\{]|\\[\s\S])*(?:\'|$))/, null, '"\''],
+         // Matching standard xquery keywords
+         [PR['PR_KEYWORD'], /^(?:xquery|where|version|variable|union|typeswitch|treat|to|then|text|stable|sortby|some|self|schema|satisfies|returns|return|ref|processing-instruction|preceding-sibling|preceding|precedes|parent|only|of|node|namespace|module|let|item|intersect|instance|in|import|if|function|for|follows|following-sibling|following|external|except|every|else|element|descending|descendant-or-self|descendant|define|default|declare|comment|child|cast|case|before|attribute|assert|ascending|as|ancestor-or-self|ancestor|after|eq|order|by|or|and|schema-element|document-node|node|at)\b/],
+         // Matching standard xquery types
+         [PR['PR_TYPE'], /^(?:xs:yearMonthDuration|xs:unsignedLong|xs:time|xs:string|xs:short|xs:QName|xs:Name|xs:long|xs:integer|xs:int|xs:gYearMonth|xs:gYear|xs:gMonthDay|xs:gDay|xs:float|xs:duration|xs:double|xs:decimal|xs:dayTimeDuration|xs:dateTime|xs:date|xs:byte|xs:boolean|xs:anyURI|xf:yearMonthDuration)\b/, null],
+         // Matching standard xquery functions
+         [PR_FUNCTION, /^(?:xp:dereference|xinc:node-expand|xinc:link-references|xinc:link-expand|xhtml:restructure|xhtml:clean|xhtml:add-lists|xdmp:zip-manifest|xdmp:zip-get|xdmp:zip-create|xdmp:xquery-version|xdmp:word-convert|xdmp:with-namespaces|xdmp:version|xdmp:value|xdmp:user-roles|xdmp:user-last-login|xdmp:user|xdmp:url-encode|xdmp:url-decode|xdmp:uri-is-file|xdmp:uri-format|xdmp:uri-content-type|xdmp:unquote|xdmp:unpath|xdmp:triggers-database|xdmp:trace|xdmp:to-json|xdmp:tidy|xdmp:subbinary|xdmp:strftime|xdmp:spawn-in|xdmp:spawn|xdmp:sleep|xdmp:shutdown|xdmp:set-session-field|xdmp:set-response-encoding|xdmp:set-response-content-type|xdmp:set-response-code|xdmp:set-request-time-limit|xdmp:set|xdmp:servers|xdmp:server-status|xdmp:server-name|xdmp:server|xdmp:security-database|xdmp:security-assert|xdmp:schema-database|xdmp:save|xdmp:role-roles|xdmp:role|xdmp:rethrow|xdmp:restart|xdmp:request-timestamp|xdmp:request-status|xdmp:request-cancel|xdmp:request|xdmp:redirect-response|xdmp:random|xdmp:quote|xdmp:query-trace|xdmp:query-meters|xdmp:product-edition|xdmp:privilege-roles|xdmp:privilege|xdmp:pretty-print|xdmp:powerpoint-convert|xdmp:platform|xdmp:permission|xdmp:pdf-convert|xdmp:path|xdmp:octal-to-integer|xdmp:node-uri|xdmp:node-replace|xdmp:node-kind|xdmp:node-insert-child|xdmp:node-insert-before|xdmp:node-insert-after|xdmp:node-delete|xdmp:node-database|xdmp:mul64|xdmp:modules-root|xdmp:modules-database|xdmp:merging|xdmp:merge-cancel|xdmp:merge|xdmp:md5|xdmp:logout|xdmp:login|xdmp:log-level|xdmp:log|xdmp:lock-release|xdmp:lock-acquire|xdmp:load|xdmp:invoke-in|xdmp:invoke|xdmp:integer-to-octal|xdmp:integer-to-hex|xdmp:http-put|xdmp:http-post|xdmp:http-options|xdmp:http-head|xdmp:http-get|xdmp:http-delete|xdmp:hosts|xdmp:host-status|xdmp:host-name|xdmp:host|xdmp:hex-to-integer|xdmp:hash64|xdmp:hash32|xdmp:has-privilege|xdmp:groups|xdmp:group-serves|xdmp:group-servers|xdmp:group-name|xdmp:group-hosts|xdmp:group|xdmp:get-session-field-names|xdmp:get-session-field|xdmp:get-response-encoding|xdmp:get-response-code|xdmp:get-request-username|xdmp:get-request-user|xdmp:get-request-url|xdmp:get-request-protocol|xdmp:get-request-path|xdmp:get-request-method|xdmp:get-request-header-names|xdmp:get-request-header|xdmp:get-request-field-names|xdmp:get-request-field-filename|xdmp:get-request-field-content-type|xdmp:get-request-field|xdmp:get-request-client-certificate|xdmp:get-request-client-address|xdmp:get-request-body|xdmp:get-current-user|xdmp:get-current-roles|xdmp:get|xdmp:function-name|xdmp:function-module|xdmp:function|xdmp:from-json|xdmp:forests|xdmp:forest-status|xdmp:forest-restore|xdmp:forest-restart|xdmp:forest-name|xdmp:forest-delete|xdmp:forest-databases|xdmp:forest-counts|xdmp:forest-clear|xdmp:forest-backup|xdmp:forest|xdmp:filesystem-file|xdmp:filesystem-directory|xdmp:exists|xdmp:excel-convert|xdmp:eval-in|xdmp:eval|xdmp:estimate|xdmp:email|xdmp:element-content-type|xdmp:elapsed-time|xdmp:document-set-quality|xdmp:document-set-property|xdmp:document-set-properties|xdmp:document-set-permissions|xdmp:document-set-collections|xdmp:document-remove-properties|xdmp:document-remove-permissions|xdmp:document-remove-collections|xdmp:document-properties|xdmp:document-locks|xdmp:document-load|xdmp:document-insert|xdmp:document-get-quality|xdmp:document-get-properties|xdmp:document-get-permissions|xdmp:document-get-collections|xdmp:document-get|xdmp:document-forest|xdmp:document-delete|xdmp:document-add-properties|xdmp:document-add-permissions|xdmp:document-add-collections|xdmp:directory-properties|xdmp:directory-locks|xdmp:directory-delete|xdmp:directory-create|xdmp:directory|xdmp:diacritic-less|xdmp:describe|xdmp:default-permissions|xdmp:default-collections|xdmp:databases|xdmp:database-restore-validate|xdmp:database-restore-status|xdmp:database-restore-cancel|xdmp:database-restore|xdmp:database-name|xdmp:database-forests|xdmp:database-backup-validate|xdmp:database-backup-status|xdmp:database-backup-purge|xdmp:database-backup-cancel|xdmp:database-backup|xdmp:database|xdmp:collection-properties|xdmp:collection-locks|xdmp:collection-delete|xdmp:collation-canonical-uri|xdmp:castable-as|xdmp:can-grant-roles|xdmp:base64-encode|xdmp:base64-decode|xdmp:architecture|xdmp:apply|xdmp:amp-roles|xdmp:amp|xdmp:add64|xdmp:add-response-header|xdmp:access|trgr:trigger-set-recursive|trgr:trigger-set-permissions|trgr:trigger-set-name|trgr:trigger-set-module|trgr:trigger-set-event|trgr:trigger-set-description|trgr:trigger-remove-permissions|trgr:trigger-module|trgr:trigger-get-permissions|trgr:trigger-enable|trgr:trigger-disable|trgr:trigger-database-online-event|trgr:trigger-data-event|trgr:trigger-add-permissions|trgr:remove-trigger|trgr:property-content|trgr:pre-commit|trgr:post-commit|trgr:get-trigger-by-id|trgr:get-trigger|trgr:document-scope|trgr:document-content|trgr:directory-scope|trgr:create-trigger|trgr:collection-scope|trgr:any-property-content|thsr:set-entry|thsr:remove-term|thsr:remove-synonym|thsr:remove-entry|thsr:query-lookup|thsr:lookup|thsr:load|thsr:insert|thsr:expand|thsr:add-synonym|spell:suggest-detailed|spell:suggest|spell:remove-word|spell:make-dictionary|spell:load|spell:levenshtein-distance|spell:is-correct|spell:insert|spell:double-metaphone|spell:add-word|sec:users-collection|sec:user-set-roles|sec:user-set-password|sec:user-set-name|sec:user-set-description|sec:user-set-default-permissions|sec:user-set-default-collections|sec:user-remove-roles|sec:user-privileges|sec:user-get-roles|sec:user-get-description|sec:user-get-default-permissions|sec:user-get-default-collections|sec:user-doc-permissions|sec:user-doc-collections|sec:user-add-roles|sec:unprotect-collection|sec:uid-for-name|sec:set-realm|sec:security-version|sec:security-namespace|sec:security-installed|sec:security-collection|sec:roles-collection|sec:role-set-roles|sec:role-set-name|sec:role-set-description|sec:role-set-default-permissions|sec:role-set-default-collections|sec:role-remove-roles|sec:role-privileges|sec:role-get-roles|sec:role-get-description|sec:role-get-default-permissions|sec:role-get-default-collections|sec:role-doc-permissions|sec:role-doc-collections|sec:role-add-roles|sec:remove-user|sec:remove-role-from-users|sec:remove-role-from-role|sec:remove-role-from-privileges|sec:remove-role-from-amps|sec:remove-role|sec:remove-privilege|sec:remove-amp|sec:protect-collection|sec:privileges-collection|sec:privilege-set-roles|sec:privilege-set-name|sec:privilege-remove-roles|sec:privilege-get-roles|sec:privilege-add-roles|sec:priv-doc-permissions|sec:priv-doc-collections|sec:get-user-names|sec:get-unique-elem-id|sec:get-role-names|sec:get-role-ids|sec:get-privilege|sec:get-distinct-permissions|sec:get-collection|sec:get-amp|sec:create-user-with-role|sec:create-user|sec:create-role|sec:create-privilege|sec:create-amp|sec:collections-collection|sec:collection-set-permissions|sec:collection-remove-permissions|sec:collection-get-permissions|sec:collection-add-permissions|sec:check-admin|sec:amps-collection|sec:amp-set-roles|sec:amp-remove-roles|sec:amp-get-roles|sec:amp-doc-permissions|sec:amp-doc-collections|sec:amp-add-roles|search:unparse|search:suggest|search:snippet|search:search|search:resolve-nodes|search:resolve|search:remove-constraint|search:parse|search:get-default-options|search:estimate|search:check-options|prof:value|prof:reset|prof:report|prof:invoke|prof:eval|prof:enable|prof:disable|prof:allowed|ppt:clean|pki:template-set-request|pki:template-set-name|pki:template-set-key-type|pki:template-set-key-options|pki:template-set-description|pki:template-in-use|pki:template-get-version|pki:template-get-request|pki:template-get-name|pki:template-get-key-type|pki:template-get-key-options|pki:template-get-id|pki:template-get-description|pki:need-certificate|pki:is-temporary|pki:insert-trusted-certificates|pki:insert-template|pki:insert-signed-certificates|pki:insert-certificate-revocation-list|pki:get-trusted-certificate-ids|pki:get-template-ids|pki:get-template-certificate-authority|pki:get-template-by-name|pki:get-template|pki:get-pending-certificate-requests-xml|pki:get-pending-certificate-requests-pem|pki:get-pending-certificate-request|pki:get-certificates-for-template-xml|pki:get-certificates-for-template|pki:get-certificates|pki:get-certificate-xml|pki:get-certificate-pem|pki:get-certificate|pki:generate-temporary-certificate-if-necessary|pki:generate-temporary-certificate|pki:generate-template-certificate-authority|pki:generate-certificate-request|pki:delete-template|pki:delete-certificate|pki:create-template|pdf:make-toc|pdf:insert-toc-headers|pdf:get-toc|pdf:clean|p:status-transition|p:state-transition|p:remove|p:pipelines|p:insert|p:get-by-id|p:get|p:execute|p:create|p:condition|p:collection|p:action|ooxml:runs-merge|ooxml:package-uris|ooxml:package-parts-insert|ooxml:package-parts|msword:clean|mcgm:polygon|mcgm:point|mcgm:geospatial-query-from-elements|mcgm:geospatial-query|mcgm:circle|math:tanh|math:tan|math:sqrt|math:sinh|math:sin|math:pow|math:modf|math:log10|math:log|math:ldexp|math:frexp|math:fmod|math:floor|math:fabs|math:exp|math:cosh|math:cos|math:ceil|math:atan2|math:atan|math:asin|math:acos|map:put|map:map|map:keys|map:get|map:delete|map:count|map:clear|lnk:to|lnk:remove|lnk:insert|lnk:get|lnk:from|lnk:create|kml:polygon|kml:point|kml:interior-polygon|kml:geospatial-query-from-elements|kml:geospatial-query|kml:circle|kml:box|gml:polygon|gml:point|gml:interior-polygon|gml:geospatial-query-from-elements|gml:geospatial-query|gml:circle|gml:box|georss:point|georss:geospatial-query|georss:circle|geo:polygon|geo:point|geo:interior-polygon|geo:geospatial-query-from-elements|geo:geospatial-query|geo:circle|geo:box|fn:zero-or-one|fn:years-from-duration|fn:year-from-dateTime|fn:year-from-date|fn:upper-case|fn:unordered|fn:true|fn:translate|fn:trace|fn:tokenize|fn:timezone-from-time|fn:timezone-from-dateTime|fn:timezone-from-date|fn:sum|fn:subtract-dateTimes-yielding-yearMonthDuration|fn:subtract-dateTimes-yielding-dayTimeDuration|fn:substring-before|fn:substring-after|fn:substring|fn:subsequence|fn:string-to-codepoints|fn:string-pad|fn:string-length|fn:string-join|fn:string|fn:static-base-uri|fn:starts-with|fn:seconds-from-time|fn:seconds-from-duration|fn:seconds-from-dateTime|fn:round-half-to-even|fn:round|fn:root|fn:reverse|fn:resolve-uri|fn:resolve-QName|fn:replace|fn:remove|fn:QName|fn:prefix-from-QName|fn:position|fn:one-or-more|fn:number|fn:not|fn:normalize-unicode|fn:normalize-space|fn:node-name|fn:node-kind|fn:nilled|fn:namespace-uri-from-QName|fn:namespace-uri-for-prefix|fn:namespace-uri|fn:name|fn:months-from-duration|fn:month-from-dateTime|fn:month-from-date|fn:minutes-from-time|fn:minutes-from-duration|fn:minutes-from-dateTime|fn:min|fn:max|fn:matches|fn:lower-case|fn:local-name-from-QName|fn:local-name|fn:last|fn:lang|fn:iri-to-uri|fn:insert-before|fn:index-of|fn:in-scope-prefixes|fn:implicit-timezone|fn:idref|fn:id|fn:hours-from-time|fn:hours-from-duration|fn:hours-from-dateTime|fn:floor|fn:false|fn:expanded-QName|fn:exists|fn:exactly-one|fn:escape-uri|fn:escape-html-uri|fn:error|fn:ends-with|fn:encode-for-uri|fn:empty|fn:document-uri|fn:doc-available|fn:doc|fn:distinct-values|fn:distinct-nodes|fn:default-collation|fn:deep-equal|fn:days-from-duration|fn:day-from-dateTime|fn:day-from-date|fn:data|fn:current-time|fn:current-dateTime|fn:current-date|fn:count|fn:contains|fn:concat|fn:compare|fn:collection|fn:codepoints-to-string|fn:codepoint-equal|fn:ceiling|fn:boolean|fn:base-uri|fn:avg|fn:adjust-time-to-timezone|fn:adjust-dateTime-to-timezone|fn:adjust-date-to-timezone|fn:abs|feed:unsubscribe|feed:subscription|feed:subscribe|feed:request|feed:item|feed:description|excel:clean|entity:enrich|dom:set-pipelines|dom:set-permissions|dom:set-name|dom:set-evaluation-context|dom:set-domain-scope|dom:set-description|dom:remove-pipeline|dom:remove-permissions|dom:remove|dom:get|dom:evaluation-context|dom:domains|dom:domain-scope|dom:create|dom:configuration-set-restart-user|dom:configuration-set-permissions|dom:configuration-set-evaluation-context|dom:configuration-set-default-domain|dom:configuration-get|dom:configuration-create|dom:collection|dom:add-pipeline|dom:add-permissions|dls:retention-rules|dls:retention-rule-remove|dls:retention-rule-insert|dls:retention-rule|dls:purge|dls:node-expand|dls:link-references|dls:link-expand|dls:documents-query|dls:document-versions-query|dls:document-version-uri|dls:document-version-query|dls:document-version-delete|dls:document-version-as-of|dls:document-version|dls:document-update|dls:document-unmanage|dls:document-set-quality|dls:document-set-property|dls:document-set-properties|dls:document-set-permissions|dls:document-set-collections|dls:document-retention-rules|dls:document-remove-properties|dls:document-remove-permissions|dls:document-remove-collections|dls:document-purge|dls:document-manage|dls:document-is-managed|dls:document-insert-and-manage|dls:document-include-query|dls:document-history|dls:document-get-permissions|dls:document-extract-part|dls:document-delete|dls:document-checkout-status|dls:document-checkout|dls:document-checkin|dls:document-add-properties|dls:document-add-permissions|dls:document-add-collections|dls:break-checkout|dls:author-query|dls:as-of-query|dbk:convert|dbg:wait|dbg:value|dbg:stopped|dbg:stop|dbg:step|dbg:status|dbg:stack|dbg:out|dbg:next|dbg:line|dbg:invoke|dbg:function|dbg:finish|dbg:expr|dbg:eval|dbg:disconnect|dbg:detach|dbg:continue|dbg:connect|dbg:clear|dbg:breakpoints|dbg:break|dbg:attached|dbg:attach|cvt:save-converted-documents|cvt:part-uri|cvt:destination-uri|cvt:basepath|cvt:basename|cts:words|cts:word-query-weight|cts:word-query-text|cts:word-query-options|cts:word-query|cts:word-match|cts:walk|cts:uris|cts:uri-match|cts:train|cts:tokenize|cts:thresholds|cts:stem|cts:similar-query-weight|cts:similar-query-nodes|cts:similar-query|cts:shortest-distance|cts:search|cts:score|cts:reverse-query-weight|cts:reverse-query-nodes|cts:reverse-query|cts:remainder|cts:registered-query-weight|cts:registered-query-options|cts:registered-query-ids|cts:registered-query|cts:register|cts:query|cts:quality|cts:properties-query-query|cts:properties-query|cts:polygon-vertices|cts:polygon|cts:point-longitude|cts:point-latitude|cts:point|cts:or-query-queries|cts:or-query|cts:not-query-weight|cts:not-query-query|cts:not-query|cts:near-query-weight|cts:near-query-queries|cts:near-query-options|cts:near-query-distance|cts:near-query|cts:highlight|cts:geospatial-co-occurrences|cts:frequency|cts:fitness|cts:field-words|cts:field-word-query-weight|cts:field-word-query-text|cts:field-word-query-options|cts:field-word-query-field-name|cts:field-word-query|cts:field-word-match|cts:entity-highlight|cts:element-words|cts:element-word-query-weight|cts:element-word-query-text|cts:element-word-query-options|cts:element-word-query-element-name|cts:element-word-query|cts:element-word-match|cts:element-values|cts:element-value-ranges|cts:element-value-query-weight|cts:element-value-query-text|cts:element-value-query-options|cts:element-value-query-element-name|cts:element-value-query|cts:element-value-match|cts:element-value-geospatial-co-occurrences|cts:element-value-co-occurrences|cts:element-range-query-weight|cts:element-range-query-value|cts:element-range-query-options|cts:element-range-query-operator|cts:element-range-query-element-name|cts:element-range-query|cts:element-query-query|cts:element-query-element-name|cts:element-query|cts:element-pair-geospatial-values|cts:element-pair-geospatial-value-match|cts:element-pair-geospatial-query-weight|cts:element-pair-geospatial-query-region|cts:element-pair-geospatial-query-options|cts:element-pair-geospatial-query-longitude-name|cts:element-pair-geospatial-query-latitude-name|cts:element-pair-geospatial-query-element-name|cts:element-pair-geospatial-query|cts:element-pair-geospatial-boxes|cts:element-geospatial-values|cts:element-geospatial-value-match|cts:element-geospatial-query-weight|cts:element-geospatial-query-region|cts:element-geospatial-query-options|cts:element-geospatial-query-element-name|cts:element-geospatial-query|cts:element-geospatial-boxes|cts:element-child-geospatial-values|cts:element-child-geospatial-value-match|cts:element-child-geospatial-query-weight|cts:element-child-geospatial-query-region|cts:element-child-geospatial-query-options|cts:element-child-geospatial-query-element-name|cts:element-child-geospatial-query-child-name|cts:element-child-geospatial-query|cts:element-child-geospatial-boxes|cts:element-attribute-words|cts:element-attribute-word-query-weight|cts:element-attribute-word-query-text|cts:element-attribute-word-query-options|cts:element-attribute-word-query-element-name|cts:element-attribute-word-query-attribute-name|cts:element-attribute-word-query|cts:element-attribute-word-match|cts:element-attribute-values|cts:element-attribute-value-ranges|cts:element-attribute-value-query-weight|cts:element-attribute-value-query-text|cts:element-attribute-value-query-options|cts:element-attribute-value-query-element-name|cts:element-attribute-value-query-attribute-name|cts:element-attribute-value-query|cts:element-attribute-value-match|cts:element-attribute-value-geospatial-co-occurrences|cts:element-attribute-value-co-occurrences|cts:element-attribute-range-query-weight|cts:element-attribute-range-query-value|cts:element-attribute-range-query-options|cts:element-attribute-range-query-operator|cts:element-attribute-range-query-element-name|cts:element-attribute-range-query-attribute-name|cts:element-attribute-range-query|cts:element-attribute-pair-geospatial-values|cts:element-attribute-pair-geospatial-value-match|cts:element-attribute-pair-geospatial-query-weight|cts:element-attribute-pair-geospatial-query-region|cts:element-attribute-pair-geospatial-query-options|cts:element-attribute-pair-geospatial-query-longitude-name|cts:element-attribute-pair-geospatial-query-latitude-name|cts:element-attribute-pair-geospatial-query-element-name|cts:element-attribute-pair-geospatial-query|cts:element-attribute-pair-geospatial-boxes|cts:document-query-uris|cts:document-query|cts:distance|cts:directory-query-uris|cts:directory-query-depth|cts:directory-query|cts:destination|cts:deregister|cts:contains|cts:confidence|cts:collections|cts:collection-query-uris|cts:collection-query|cts:collection-match|cts:classify|cts:circle-radius|cts:circle-center|cts:circle|cts:box-west|cts:box-south|cts:box-north|cts:box-east|cts:box|cts:bearing|cts:arc-intersection|cts:and-query-queries|cts:and-query-options|cts:and-query|cts:and-not-query-positive-query|cts:and-not-query-negative-query|cts:and-not-query|css:get|css:convert|cpf:success|cpf:failure|cpf:document-set-state|cpf:document-set-processing-status|cpf:document-set-last-updated|cpf:document-set-error|cpf:document-get-state|cpf:document-get-processing-status|cpf:document-get-last-updated|cpf:document-get-error|cpf:check-transition|alert:spawn-matching-actions|alert:rule-user-id-query|alert:rule-set-user-id|alert:rule-set-query|alert:rule-set-options|alert:rule-set-name|alert:rule-set-description|alert:rule-set-action|alert:rule-remove|alert:rule-name-query|alert:rule-insert|alert:rule-id-query|alert:rule-get-user-id|alert:rule-get-query|alert:rule-get-options|alert:rule-get-name|alert:rule-get-id|alert:rule-get-description|alert:rule-get-action|alert:rule-action-query|alert:remove-triggers|alert:make-rule|alert:make-log-action|alert:make-config|alert:make-action|alert:invoke-matching-actions|alert:get-my-rules|alert:get-all-rules|alert:get-actions|alert:find-matching-rules|alert:create-triggers|alert:config-set-uri|alert:config-set-trigger-ids|alert:config-set-options|alert:config-set-name|alert:config-set-description|alert:config-set-cpf-domain-names|alert:config-set-cpf-domain-ids|alert:config-insert|alert:config-get-uri|alert:config-get-trigger-ids|alert:config-get-options|alert:config-get-name|alert:config-get-id|alert:config-get-description|alert:config-get-cpf-domain-names|alert:config-get-cpf-domain-ids|alert:config-get|alert:config-delete|alert:action-set-options|alert:action-set-name|alert:action-set-module-root|alert:action-set-module-db|alert:action-set-module|alert:action-set-description|alert:action-remove|alert:action-insert|alert:action-get-options|alert:action-get-name|alert:action-get-module-root|alert:action-get-module-db|alert:action-get-module|alert:action-get-description|zero-or-one|years-from-duration|year-from-dateTime|year-from-date|upper-case|unordered|true|translate|trace|tokenize|timezone-from-time|timezone-from-dateTime|timezone-from-date|sum|subtract-dateTimes-yielding-yearMonthDuration|subtract-dateTimes-yielding-dayTimeDuration|substring-before|substring-after|substring|subsequence|string-to-codepoints|string-pad|string-length|string-join|string|static-base-uri|starts-with|seconds-from-time|seconds-from-duration|seconds-from-dateTime|round-half-to-even|round|root|reverse|resolve-uri|resolve-QName|replace|remove|QName|prefix-from-QName|position|one-or-more|number|not|normalize-unicode|normalize-space|node-name|node-kind|nilled|namespace-uri-from-QName|namespace-uri-for-prefix|namespace-uri|name|months-from-duration|month-from-dateTime|month-from-date|minutes-from-time|minutes-from-duration|minutes-from-dateTime|min|max|matches|lower-case|local-name-from-QName|local-name|last|lang|iri-to-uri|insert-before|index-of|in-scope-prefixes|implicit-timezone|idref|id|hours-from-time|hours-from-duration|hours-from-dateTime|floor|false|expanded-QName|exists|exactly-one|escape-uri|escape-html-uri|error|ends-with|encode-for-uri|empty|document-uri|doc-available|doc|distinct-values|distinct-nodes|default-collation|deep-equal|days-from-duration|day-from-dateTime|day-from-date|data|current-time|current-dateTime|current-date|count|contains|concat|compare|collection|codepoints-to-string|codepoint-equal|ceiling|boolean|base-uri|avg|adjust-time-to-timezone|adjust-dateTime-to-timezone|adjust-date-to-timezone|abs)\b/],
+         // Matching normal words if none of the previous regular expressions matched
+         [PR['PR_PLAIN'], /^[A-Za-z0-9_\-\:]+/],
+         // Matching whitespaces
+         [PR['PR_PLAIN'], /^[\t\n\r \xA0]+/]
+         ]),
+    ['xq', 'xquery']);
diff --git a/jOOQ-website/js/prettify/lang-yaml.js b/jOOQ-website/js/prettify/lang-yaml.js
new file mode 100644
index 00000000000..c2e52b2dea6
--- /dev/null
+++ b/jOOQ-website/js/prettify/lang-yaml.js
@@ -0,0 +1,27 @@
+// Contributed by ribrdb @ code.google.com
+
+/**
+ * @fileoverview
+ * Registers a language handler for YAML.
+ *
+ * @author ribrdb
+ */
+
+PR['registerLangHandler'](
+  PR['createSimpleLexer'](
+    [
+      [PR['PR_PUNCTUATION'], /^[:|>?]+/, null, ':|>?'],
+      [PR['PR_DECLARATION'],  /^%(?:YAML|TAG)[^#\r\n]+/, null, '%'],
+      [PR['PR_TYPE'], /^[&]\S+/, null, '&'],
+      [PR['PR_TYPE'], /^!\S*/, null, '!'],
+      [PR['PR_STRING'], /^"(?:[^\\"]|\\.)*(?:"|$)/, null, '"'],
+      [PR['PR_STRING'], /^'(?:[^']|'')*(?:'|$)/, null, "'"],
+      [PR['PR_COMMENT'], /^#[^\r\n]*/, null, '#'],
+      [PR['PR_PLAIN'], /^\s+/, null, ' \t\r\n']
+    ],
+    [
+      [PR['PR_DECLARATION'], /^(?:---|\.\.\.)(?:[\r\n]|$)/],
+      [PR['PR_PUNCTUATION'], /^-/],
+      [PR['PR_KEYWORD'], /^\w+:[ \r\n]/],
+      [PR['PR_PLAIN'], /^\w+/]
+    ]), ['yaml', 'yml']);
diff --git a/jOOQ-website/js/prettify/prettify.css b/jOOQ-website/js/prettify/prettify.css
new file mode 100644
index 00000000000..5a5fe06bb5b
--- /dev/null
+++ b/jOOQ-website/js/prettify/prettify.css
@@ -0,0 +1,49 @@
+/* Pretty printing styles. Used with prettify.js. */
+
+/* SPAN elements with the classes below are added by prettyprint. */
+.pln { color: #000 }  /* plain text */
+
+@media screen {
+  .str { color: #888 }  /* string content */
+  .kwd { color: #a00; font-weight: bold }  /* a keyword */
+  .com { color: #888 }  /* a comment */
+  .typ { color: #606 }  /* a type name */
+  .lit { color: #066 }  /* a literal value */
+  /* punctuation, lisp open bracket, lisp close bracket */
+  .pun, .opn, .clo { color: #660 }
+  .tag { color: #008 }  /* a markup tag name */
+  .atn { color: #606 }  /* a markup attribute name */
+  .atv { color: #080 }  /* a markup attribute value */
+  .dec, .var { color: #606 }  /* a declaration; a variable name */
+  .fun { color: red }  /* a function name */
+}
+
+/* Use higher contrast and text-weight for printable form. */
+@media print, projection {
+  .str { color: #888 }
+  .kwd { color: #a00; font-weight: bold }
+  .com { color: #888; font-style: italic }
+  .typ { color: #404; font-weight: bold }
+  .lit { color: #044 }
+  .pun, .opn, .clo { color: #440 }
+  .tag { color: #006; font-weight: bold }
+  .atn { color: #404 }
+  .atv { color: #060 }
+}
+
+/* Specify class=linenums on a pre to get line numbering */
+ol.linenums { margin-top: 0; margin-bottom: 0 } /* IE indents via margin-left */
+li.L0,
+li.L1,
+li.L2,
+li.L3,
+li.L5,
+li.L6,
+li.L7,
+li.L8 { list-style-type: none }
+/* Alternate shading for lines */
+li.L1,
+li.L3,
+li.L5,
+li.L7,
+li.L9 { background: #eee }
diff --git a/jOOQ-website/js/prettify/prettify.js b/jOOQ-website/js/prettify/prettify.js
new file mode 100644
index 00000000000..037c26da4aa
--- /dev/null
+++ b/jOOQ-website/js/prettify/prettify.js
@@ -0,0 +1,1477 @@
+// Copyright (C) 2006 Google Inc.
+//
+// Licensed 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.
+
+
+/**
+ * @fileoverview
+ * some functions for browser-side pretty printing of code contained in html.
+ *
+ * 

+ * For a fairly comprehensive set of languages see the + * README + * file that came with this source. At a minimum, the lexer should work on a + * number of languages including C and friends, Java, Python, Bash, SQL, HTML, + * XML, CSS, Javascript, and Makefiles. It works passably on Ruby, PHP and Awk + * and a subset of Perl, but, because of commenting conventions, doesn't work on + * Smalltalk, Lisp-like, or CAML-like languages without an explicit lang class. + *

+ * Usage:

    + *
  1. include this source file in an html page via + * {@code } + *
  2. define style rules. See the example page for examples. + *
  3. mark the {@code
    } and {@code } tags in your source with
    + *    {@code class=prettyprint.}
    + *    You can also use the (html deprecated) {@code } tag, but the pretty
    + *    printer needs to do more substantial DOM manipulations to support that, so
    + *    some css styles may not be preserved.
    + * </ol>
    + * That's it.  I wanted to keep the API as simple as possible, so there's no
    + * need to specify which language the code is in, but if you wish, you can add
    + * another class to the {@code <pre>} or {@code <code>} element to specify the
    + * language, as in {@code <pre class="prettyprint lang-java">}.  Any class that
    + * starts with "lang-" followed by a file extension, specifies the file type.
    + * See the "lang-*.js" files in this directory for code that implements
    + * per-language file handlers.
    + * <p>
    + * Change log:<br>
    + * cbeust, 2006/08/22
    + * <blockquote>
    + *   Java annotations (start with "@") are now captured as literals ("lit")
    + * </blockquote>
    + * @requires console
    + */
    +
    +// JSLint declarations
    +/*global console, document, navigator, setTimeout, window */
    +
    +/**
    + * Split {@code prettyPrint} into multiple timeouts so as not to interfere with
    + * UI events.
    + * If set to {@code false}, {@code prettyPrint()} is synchronous.
    + */
    +window['PR_SHOULD_USE_CONTINUATION'] = true;
    +
    +(function () {
    +  // Keyword lists for various languages.
    +  // We use things that coerce to strings to make them compact when minified
    +  // and to defeat aggressive optimizers that fold large string constants.
    +  var FLOW_CONTROL_KEYWORDS = ["break,continue,do,else,for,if,return,while"];
    +  var C_KEYWORDS = [FLOW_CONTROL_KEYWORDS,"auto,case,char,const,default," + 
    +      "double,enum,extern,float,goto,int,long,register,short,signed,sizeof," +
    +      "static,struct,switch,typedef,union,unsigned,void,volatile"];
    +  var COMMON_KEYWORDS = [C_KEYWORDS,"catch,class,delete,false,import," +
    +      "new,operator,private,protected,public,this,throw,true,try,typeof"];
    +  var CPP_KEYWORDS = [COMMON_KEYWORDS,"alignof,align_union,asm,axiom,bool," +
    +      "concept,concept_map,const_cast,constexpr,decltype," +
    +      "dynamic_cast,explicit,export,friend,inline,late_check," +
    +      "mutable,namespace,nullptr,reinterpret_cast,static_assert,static_cast," +
    +      "template,typeid,typename,using,virtual,where"];
    +  var JAVA_KEYWORDS = [COMMON_KEYWORDS,
    +      "abstract,boolean,byte,extends,final,finally,implements,import," +
    +      "instanceof,null,native,package,strictfp,super,synchronized,throws," +
    +      "transient"];
    +  var CSHARP_KEYWORDS = [JAVA_KEYWORDS,
    +      "as,base,by,checked,decimal,delegate,descending,dynamic,event," +
    +      "fixed,foreach,from,group,implicit,in,interface,internal,into,is,lock," +
    +      "object,out,override,orderby,params,partial,readonly,ref,sbyte,sealed," +
    +      "stackalloc,string,select,uint,ulong,unchecked,unsafe,ushort,var"];
    +  var COFFEE_KEYWORDS = "all,and,by,catch,class,else,extends,false,finally," +
    +      "for,if,in,is,isnt,loop,new,no,not,null,of,off,on,or,return,super,then," +
    +      "true,try,unless,until,when,while,yes";
    +  var JSCRIPT_KEYWORDS = [COMMON_KEYWORDS,
    +      "debugger,eval,export,function,get,null,set,undefined,var,with," +
    +      "Infinity,NaN"];
    +  var PERL_KEYWORDS = "caller,delete,die,do,dump,elsif,eval,exit,foreach,for," +
    +      "goto,if,import,last,local,my,next,no,our,print,package,redo,require," +
    +      "sub,undef,unless,until,use,wantarray,while,BEGIN,END";
    +  var PYTHON_KEYWORDS = [FLOW_CONTROL_KEYWORDS, "and,as,assert,class,def,del," +
    +      "elif,except,exec,finally,from,global,import,in,is,lambda," +
    +      "nonlocal,not,or,pass,print,raise,try,with,yield," +
    +      "False,True,None"];
    +  var RUBY_KEYWORDS = [FLOW_CONTROL_KEYWORDS, "alias,and,begin,case,class," +
    +      "def,defined,elsif,end,ensure,false,in,module,next,nil,not,or,redo," +
    +      "rescue,retry,self,super,then,true,undef,unless,until,when,yield," +
    +      "BEGIN,END"];
    +  var SH_KEYWORDS = [FLOW_CONTROL_KEYWORDS, "case,done,elif,esac,eval,fi," +
    +      "function,in,local,set,then,until"];
    +  var ALL_KEYWORDS = [
    +      CPP_KEYWORDS, CSHARP_KEYWORDS, JSCRIPT_KEYWORDS, PERL_KEYWORDS +
    +      PYTHON_KEYWORDS, RUBY_KEYWORDS, SH_KEYWORDS];
    +  var C_TYPES = /^(DIR|FILE|vector|(de|priority_)?queue|list|stack|(const_)?iterator|(multi)?(set|map)|bitset|u?(int|float)\d*)/;
    +
    +  // token style names.  correspond to css classes
    +  /**
    +   * token style for a string literal
    +   * @const
    +   */
    +  var PR_STRING = 'str';
    +  /**
    +   * token style for a keyword
    +   * @const
    +   */
    +  var PR_KEYWORD = 'kwd';
    +  /**
    +   * token style for a comment
    +   * @const
    +   */
    +  var PR_COMMENT = 'com';
    +  /**
    +   * token style for a type
    +   * @const
    +   */
    +  var PR_TYPE = 'typ';
    +  /**
    +   * token style for a literal value.  e.g. 1, null, true.
    +   * @const
    +   */
    +  var PR_LITERAL = 'lit';
    +  /**
    +   * token style for a punctuation string.
    +   * @const
    +   */
    +  var PR_PUNCTUATION = 'pun';
    +  /**
    +   * token style for a punctuation string.
    +   * @const
    +   */
    +  var PR_PLAIN = 'pln';
    +
    +  /**
    +   * token style for an sgml tag.
    +   * @const
    +   */
    +  var PR_TAG = 'tag';
    +  /**
    +   * token style for a markup declaration such as a DOCTYPE.
    +   * @const
    +   */
    +  var PR_DECLARATION = 'dec';
    +  /**
    +   * token style for embedded source.
    +   * @const
    +   */
    +  var PR_SOURCE = 'src';
    +  /**
    +   * token style for an sgml attribute name.
    +   * @const
    +   */
    +  var PR_ATTRIB_NAME = 'atn';
    +  /**
    +   * token style for an sgml attribute value.
    +   * @const
    +   */
    +  var PR_ATTRIB_VALUE = 'atv';
    +
    +  /**
    +   * A class that indicates a section of markup that is not code, e.g. to allow
    +   * embedding of line numbers within code listings.
    +   * @const
    +   */
    +  var PR_NOCODE = 'nocode';
    +
    +
    +
    +/**
    + * A set of tokens that can precede a regular expression literal in
    + * javascript
    + * http://web.archive.org/web/20070717142515/http://www.mozilla.org/js/language/js20/rationale/syntax.html
    + * has the full list, but I've removed ones that might be problematic when
    + * seen in languages that don't support regular expression literals.
    + *
    + * <p>Specifically, I've removed any keywords that can't precede a regexp
    + * literal in a syntactically legal javascript program, and I've removed the
    + * "in" keyword since it's not a keyword in many languages, and might be used
    + * as a count of inches.
    + *
    + * <p>The link a above does not accurately describe EcmaScript rules since
    + * it fails to distinguish between (a=++/b/i) and (a++/b/i) but it works
    + * very well in practice.
    + *
    + * @private
    + * @const
    + */
    +var REGEXP_PRECEDER_PATTERN = '(?:^^\\.?|[+-]|\\!|\\!=|\\!==|\\#|\\%|\\%=|&|&&|&&=|&=|\\(|\\*|\\*=|\\+=|\\,|\\-=|\\->|\\/|\\/=|:|::|\\;|<|<<|<<=|<=|=|==|===|>|>=|>>|>>=|>>>|>>>=|\\?|\\@|\\[|\\^|\\^=|\\^\\^|\\^\\^=|\\{|\\||\\|=|\\|\\||\\|\\|=|\\~|break|case|continue|delete|do|else|finally|instanceof|return|throw|try|typeof)\\s*';
    +
    +// CAVEAT: this does not properly handle the case where a regular
    +// expression immediately follows another since a regular expression may
    +// have flags for case-sensitivity and the like.  Having regexp tokens
    +// adjacent is not valid in any language I'm aware of, so I'm punting.
    +// TODO: maybe style special characters inside a regexp as punctuation.
    +
    +
    +  /**
    +   * Given a group of {@link RegExp}s, returns a {@code RegExp} that globally
    +   * matches the union of the sets of strings matched by the input RegExp.
    +   * Since it matches globally, if the input strings have a start-of-input
    +   * anchor (/^.../), it is ignored for the purposes of unioning.
    +   * @param {Array.<RegExp>} regexs non multiline, non-global regexs.
    +   * @return {RegExp} a global regex.
    +   */
    +  function combinePrefixPatterns(regexs) {
    +    var capturedGroupIndex = 0;
    +  
    +    var needToFoldCase = false;
    +    var ignoreCase = false;
    +    for (var i = 0, n = regexs.length; i < n; ++i) {
    +      var regex = regexs[i];
    +      if (regex.ignoreCase) {
    +        ignoreCase = true;
    +      } else if (/[a-z]/i.test(regex.source.replace(
    +                     /\\u[0-9a-f]{4}|\\x[0-9a-f]{2}|\\[^ux]/gi, ''))) {
    +        needToFoldCase = true;
    +        ignoreCase = false;
    +        break;
    +      }
    +    }
    +  
    +    var escapeCharToCodeUnit = {
    +      'b': 8,
    +      't': 9,
    +      'n': 0xa,
    +      'v': 0xb,
    +      'f': 0xc,
    +      'r': 0xd
    +    };
    +  
    +    function decodeEscape(charsetPart) {
    +      var cc0 = charsetPart.charCodeAt(0);
    +      if (cc0 !== 92 /* \\ */) {
    +        return cc0;
    +      }
    +      var c1 = charsetPart.charAt(1);
    +      cc0 = escapeCharToCodeUnit[c1];
    +      if (cc0) {
    +        return cc0;
    +      } else if ('0' <= c1 && c1 <= '7') {
    +        return parseInt(charsetPart.substring(1), 8);
    +      } else if (c1 === 'u' || c1 === 'x') {
    +        return parseInt(charsetPart.substring(2), 16);
    +      } else {
    +        return charsetPart.charCodeAt(1);
    +      }
    +    }
    +  
    +    function encodeEscape(charCode) {
    +      if (charCode < 0x20) {
    +        return (charCode < 0x10 ? '\\x0' : '\\x') + charCode.toString(16);
    +      }
    +      var ch = String.fromCharCode(charCode);
    +      if (ch === '\\' || ch === '-' || ch === '[' || ch === ']') {
    +        ch = '\\' + ch;
    +      }
    +      return ch;
    +    }
    +  
    +    function caseFoldCharset(charSet) {
    +      var charsetParts = charSet.substring(1, charSet.length - 1).match(
    +          new RegExp(
    +              '\\\\u[0-9A-Fa-f]{4}'
    +              + '|\\\\x[0-9A-Fa-f]{2}'
    +              + '|\\\\[0-3][0-7]{0,2}'
    +              + '|\\\\[0-7]{1,2}'
    +              + '|\\\\[\\s\\S]'
    +              + '|-'
    +              + '|[^-\\\\]',
    +              'g'));
    +      var groups = [];
    +      var ranges = [];
    +      var inverse = charsetParts[0] === '^';
    +      for (var i = inverse ? 1 : 0, n = charsetParts.length; i < n; ++i) {
    +        var p = charsetParts[i];
    +        if (/\\[bdsw]/i.test(p)) {  // Don't muck with named groups.
    +          groups.push(p);
    +        } else {
    +          var start = decodeEscape(p);
    +          var end;
    +          if (i + 2 < n && '-' === charsetParts[i + 1]) {
    +            end = decodeEscape(charsetParts[i + 2]);
    +            i += 2;
    +          } else {
    +            end = start;
    +          }
    +          ranges.push([start, end]);
    +          // If the range might intersect letters, then expand it.
    +          // This case handling is too simplistic.
    +          // It does not deal with non-latin case folding.
    +          // It works for latin source code identifiers though.
    +          if (!(end < 65 || start > 122)) {
    +            if (!(end < 65 || start > 90)) {
    +              ranges.push([Math.max(65, start) | 32, Math.min(end, 90) | 32]);
    +            }
    +            if (!(end < 97 || start > 122)) {
    +              ranges.push([Math.max(97, start) & ~32, Math.min(end, 122) & ~32]);
    +            }
    +          }
    +        }
    +      }
    +  
    +      // [[1, 10], [3, 4], [8, 12], [14, 14], [16, 16], [17, 17]]
    +      // -> [[1, 12], [14, 14], [16, 17]]
    +      ranges.sort(function (a, b) { return (a[0] - b[0]) || (b[1]  - a[1]); });
    +      var consolidatedRanges = [];
    +      var lastRange = [NaN, NaN];
    +      for (var i = 0; i < ranges.length; ++i) {
    +        var range = ranges[i];
    +        if (range[0] <= lastRange[1] + 1) {
    +          lastRange[1] = Math.max(lastRange[1], range[1]);
    +        } else {
    +          consolidatedRanges.push(lastRange = range);
    +        }
    +      }
    +  
    +      var out = ['['];
    +      if (inverse) { out.push('^'); }
    +      out.push.apply(out, groups);
    +      for (var i = 0; i < consolidatedRanges.length; ++i) {
    +        var range = consolidatedRanges[i];
    +        out.push(encodeEscape(range[0]));
    +        if (range[1] > range[0]) {
    +          if (range[1] + 1 > range[0]) { out.push('-'); }
    +          out.push(encodeEscape(range[1]));
    +        }
    +      }
    +      out.push(']');
    +      return out.join('');
    +    }
    +  
    +    function allowAnywhereFoldCaseAndRenumberGroups(regex) {
    +      // Split into character sets, escape sequences, punctuation strings
    +      // like ('(', '(?:', ')', '^'), and runs of characters that do not
    +      // include any of the above.
    +      var parts = regex.source.match(
    +          new RegExp(
    +              '(?:'
    +              + '\\[(?:[^\\x5C\\x5D]|\\\\[\\s\\S])*\\]'  // a character set
    +              + '|\\\\u[A-Fa-f0-9]{4}'  // a unicode escape
    +              + '|\\\\x[A-Fa-f0-9]{2}'  // a hex escape
    +              + '|\\\\[0-9]+'  // a back-reference or octal escape
    +              + '|\\\\[^ux0-9]'  // other escape sequence
    +              + '|\\(\\?[:!=]'  // start of a non-capturing group
    +              + '|[\\(\\)\\^]'  // start/emd of a group, or line start
    +              + '|[^\\x5B\\x5C\\(\\)\\^]+'  // run of other characters
    +              + ')',
    +              'g'));
    +      var n = parts.length;
    +  
    +      // Maps captured group numbers to the number they will occupy in
    +      // the output or to -1 if that has not been determined, or to
    +      // undefined if they need not be capturing in the output.
    +      var capturedGroups = [];
    +  
    +      // Walk over and identify back references to build the capturedGroups
    +      // mapping.
    +      for (var i = 0, groupIndex = 0; i < n; ++i) {
    +        var p = parts[i];
    +        if (p === '(') {
    +          // groups are 1-indexed, so max group index is count of '('
    +          ++groupIndex;
    +        } else if ('\\' === p.charAt(0)) {
    +          var decimalValue = +p.substring(1);
    +          if (decimalValue && decimalValue <= groupIndex) {
    +            capturedGroups[decimalValue] = -1;
    +          }
    +        }
    +      }
    +  
    +      // Renumber groups and reduce capturing groups to non-capturing groups
    +      // where possible.
    +      for (var i = 1; i < capturedGroups.length; ++i) {
    +        if (-1 === capturedGroups[i]) {
    +          capturedGroups[i] = ++capturedGroupIndex;
    +        }
    +      }
    +      for (var i = 0, groupIndex = 0; i < n; ++i) {
    +        var p = parts[i];
    +        if (p === '(') {
    +          ++groupIndex;
    +          if (capturedGroups[groupIndex] === undefined) {
    +            parts[i] = '(?:';
    +          }
    +        } else if ('\\' === p.charAt(0)) {
    +          var decimalValue = +p.substring(1);
    +          if (decimalValue && decimalValue <= groupIndex) {
    +            parts[i] = '\\' + capturedGroups[groupIndex];
    +          }
    +        }
    +      }
    +  
    +      // Remove any prefix anchors so that the output will match anywhere.
    +      // ^^ really does mean an anchored match though.
    +      for (var i = 0, groupIndex = 0; i < n; ++i) {
    +        if ('^' === parts[i] && '^' !== parts[i + 1]) { parts[i] = ''; }
    +      }
    +  
    +      // Expand letters to groups to handle mixing of case-sensitive and
    +      // case-insensitive patterns if necessary.
    +      if (regex.ignoreCase && needToFoldCase) {
    +        for (var i = 0; i < n; ++i) {
    +          var p = parts[i];
    +          var ch0 = p.charAt(0);
    +          if (p.length >= 2 && ch0 === '[') {
    +            parts[i] = caseFoldCharset(p);
    +          } else if (ch0 !== '\\') {
    +            // TODO: handle letters in numeric escapes.
    +            parts[i] = p.replace(
    +                /[a-zA-Z]/g,
    +                function (ch) {
    +                  var cc = ch.charCodeAt(0);
    +                  return '[' + String.fromCharCode(cc & ~32, cc | 32) + ']';
    +                });
    +          }
    +        }
    +      }
    +  
    +      return parts.join('');
    +    }
    +  
    +    var rewritten = [];
    +    for (var i = 0, n = regexs.length; i < n; ++i) {
    +      var regex = regexs[i];
    +      if (regex.global || regex.multiline) { throw new Error('' + regex); }
    +      rewritten.push(
    +          '(?:' + allowAnywhereFoldCaseAndRenumberGroups(regex) + ')');
    +    }
    +  
    +    return new RegExp(rewritten.join('|'), ignoreCase ? 'gi' : 'g');
    +  }
    +
    +
    +  /**
    +   * Split markup into a string of source code and an array mapping ranges in
    +   * that string to the text nodes in which they appear.
    +   *
    +   * <p>
    +   * The HTML DOM structure:</p>
    +   * <pre>
    +   * (Element   "p"
    +   *   (Element "b"
    +   *     (Text  "print "))       ; #1
    +   *   (Text    "'Hello '")      ; #2
    +   *   (Element "br")            ; #3
    +   *   (Text    "  + 'World';")) ; #4
    +   * </pre>
    +   * <p>
    +   * corresponds to the HTML
    +   * {@code <p><b>print </b>'Hello '<br>  + 'World';</p>}.</p>
    +   *
    +   * <p>
    +   * It will produce the output:</p>
    +   * <pre>
    +   * {
    +   *   sourceCode: "print 'Hello '\n  + 'World';",
    +   *   //                 1         2
    +   *   //       012345678901234 5678901234567
    +   *   spans: [0, #1, 6, #2, 14, #3, 15, #4]
    +   * }
    +   * </pre>
    +   * <p>
    +   * where #1 is a reference to the {@code "print "} text node above, and so
    +   * on for the other text nodes.
    +   * </p>
    +   *
    +   * <p>
    +   * The {@code} spans array is an array of pairs.  Even elements are the start
    +   * indices of substrings, and odd elements are the text nodes (or BR elements)
    +   * that contain the text for those substrings.
    +   * Substrings continue until the next index or the end of the source.
    +   * </p>
    +   *
    +   * @param {Node} node an HTML DOM subtree containing source-code.
    +   * @return {Object} source code and the text nodes in which they occur.
    +   */
    +  function extractSourceSpans(node) {
    +    var nocode = /(?:^|\s)nocode(?:\s|$)/;
    +  
    +    var chunks = [];
    +    var length = 0;
    +    var spans = [];
    +    var k = 0;
    +  
    +    var whitespace;
    +    if (node.currentStyle) {
    +      whitespace = node.currentStyle.whiteSpace;
    +    } else if (window.getComputedStyle) {
    +      whitespace = document.defaultView.getComputedStyle(node, null)
    +          .getPropertyValue('white-space');
    +    }
    +    var isPreformatted = whitespace && 'pre' === whitespace.substring(0, 3);
    +  
    +    function walk(node) {
    +      switch (node.nodeType) {
    +        case 1:  // Element
    +          if (nocode.test(node.className)) { return; }
    +          for (var child = node.firstChild; child; child = child.nextSibling) {
    +            walk(child);
    +          }
    +          var nodeName = node.nodeName;
    +          if ('BR' === nodeName || 'LI' === nodeName) {
    +            chunks[k] = '\n';
    +            spans[k << 1] = length++;
    +            spans[(k++ << 1) | 1] = node;
    +          }
    +          break;
    +        case 3: case 4:  // Text
    +          var text = node.nodeValue;
    +          if (text.length) {
    +            if (!isPreformatted) {
    +              text = text.replace(/[ \t\r\n]+/g, ' ');
    +            } else {
    +              text = text.replace(/\r\n?/g, '\n');  // Normalize newlines.
    +            }
    +            // TODO: handle tabs here?
    +            chunks[k] = text;
    +            spans[k << 1] = length;
    +            length += text.length;
    +            spans[(k++ << 1) | 1] = node;
    +          }
    +          break;
    +      }
    +    }
    +  
    +    walk(node);
    +  
    +    return {
    +      sourceCode: chunks.join('').replace(/\n$/, ''),
    +      spans: spans
    +    };
    +  }
    +
    +
    +  /**
    +   * Apply the given language handler to sourceCode and add the resulting
    +   * decorations to out.
    +   * @param {number} basePos the index of sourceCode within the chunk of source
    +   *    whose decorations are already present on out.
    +   */
    +  function appendDecorations(basePos, sourceCode, langHandler, out) {
    +    if (!sourceCode) { return; }
    +    var job = {
    +      sourceCode: sourceCode,
    +      basePos: basePos
    +    };
    +    langHandler(job);
    +    out.push.apply(out, job.decorations);
    +  }
    +
    +  var notWs = /\S/;
    +
    +  /**
    +   * Given an element, if it contains only one child element and any text nodes
    +   * it contains contain only space characters, return the sole child element.
    +   * Otherwise returns undefined.
    +   * <p>
    +   * This is meant to return the CODE element in {@code <pre><code ...>} when
    +   * there is a single child element that contains all the non-space textual
    +   * content, but not to return anything where there are multiple child elements
    +   * as in {@code <pre><code>...</code><code>...</code></pre>} or when there
    +   * is textual content.
    +   */
    +  function childContentWrapper(element) {
    +    var wrapper = undefined;
    +    for (var c = element.firstChild; c; c = c.nextSibling) {
    +      var type = c.nodeType;
    +      wrapper = (type === 1)  // Element Node
    +          ? (wrapper ? element : c)
    +          : (type === 3)  // Text Node
    +          ? (notWs.test(c.nodeValue) ? element : wrapper)
    +          : wrapper;
    +    }
    +    return wrapper === element ? undefined : wrapper;
    +  }
    +
    +  /** Given triples of [style, pattern, context] returns a lexing function,
    +    * The lexing function interprets the patterns to find token boundaries and
    +    * returns a decoration list of the form
    +    * [index_0, style_0, index_1, style_1, ..., index_n, style_n]
    +    * where index_n is an index into the sourceCode, and style_n is a style
    +    * constant like PR_PLAIN.  index_n-1 <= index_n, and style_n-1 applies to
    +    * all characters in sourceCode[index_n-1:index_n].
    +    *
    +    * The stylePatterns is a list whose elements have the form
    +    * [style : string, pattern : RegExp, DEPRECATED, shortcut : string].
    +    *
    +    * Style is a style constant like PR_PLAIN, or can be a string of the
    +    * form 'lang-FOO', where FOO is a language extension describing the
    +    * language of the portion of the token in $1 after pattern executes.
    +    * E.g., if style is 'lang-lisp', and group 1 contains the text
    +    * '(hello (world))', then that portion of the token will be passed to the
    +    * registered lisp handler for formatting.
    +    * The text before and after group 1 will be restyled using this decorator
    +    * so decorators should take care that this doesn't result in infinite
    +    * recursion.  For example, the HTML lexer rule for SCRIPT elements looks
    +    * something like ['lang-js', /<[s]cript>(.+?)<\/script>/].  This may match
    +    * '<script>foo()<\/script>', which would cause the current decorator to
    +    * be called with '<script>' which would not match the same rule since
    +    * group 1 must not be empty, so it would be instead styled as PR_TAG by
    +    * the generic tag rule.  The handler registered for the 'js' extension would
    +    * then be called with 'foo()', and finally, the current decorator would
    +    * be called with '<\/script>' which would not match the original rule and
    +    * so the generic tag rule would identify it as a tag.
    +    *
    +    * Pattern must only match prefixes, and if it matches a prefix, then that
    +    * match is considered a token with the same style.
    +    *
    +    * Context is applied to the last non-whitespace, non-comment token
    +    * recognized.
    +    *
    +    * Shortcut is an optional string of characters, any of which, if the first
    +    * character, gurantee that this pattern and only this pattern matches.
    +    *
    +    * @param {Array} shortcutStylePatterns patterns that always start with
    +    *   a known character.  Must have a shortcut string.
    +    * @param {Array} fallthroughStylePatterns patterns that will be tried in
    +    *   order if the shortcut ones fail.  May have shortcuts.
    +    *
    +    * @return {function (Object)} a
    +    *   function that takes source code and returns a list of decorations.
    +    */
    +  function createSimpleLexer(shortcutStylePatterns, fallthroughStylePatterns) {
    +    var shortcuts = {};
    +    var tokenizer;
    +    (function () {
    +      var allPatterns = shortcutStylePatterns.concat(fallthroughStylePatterns);
    +      var allRegexs = [];
    +      var regexKeys = {};
    +      for (var i = 0, n = allPatterns.length; i < n; ++i) {
    +        var patternParts = allPatterns[i];
    +        var shortcutChars = patternParts[3];
    +        if (shortcutChars) {
    +          for (var c = shortcutChars.length; --c >= 0;) {
    +            shortcuts[shortcutChars.charAt(c)] = patternParts;
    +          }
    +        }
    +        var regex = patternParts[1];
    +        var k = '' + regex;
    +        if (!regexKeys.hasOwnProperty(k)) {
    +          allRegexs.push(regex);
    +          regexKeys[k] = null;
    +        }
    +      }
    +      allRegexs.push(/[\0-\uffff]/);
    +      tokenizer = combinePrefixPatterns(allRegexs);
    +    })();
    +
    +    var nPatterns = fallthroughStylePatterns.length;
    +
    +    /**
    +     * Lexes job.sourceCode and produces an output array job.decorations of
    +     * style classes preceded by the position at which they start in
    +     * job.sourceCode in order.
    +     *
    +     * @param {Object} job an object like <pre>{
    +     *    sourceCode: {string} sourceText plain text,
    +     *    basePos: {int} position of job.sourceCode in the larger chunk of
    +     *        sourceCode.
    +     * }</pre>
    +     */
    +    var decorate = function (job) {
    +      var sourceCode = job.sourceCode, basePos = job.basePos;
    +      /** Even entries are positions in source in ascending order.  Odd enties
    +        * are style markers (e.g., PR_COMMENT) that run from that position until
    +        * the end.
    +        * @type {Array.<number|string>}
    +        */
    +      var decorations = [basePos, PR_PLAIN];
    +      var pos = 0;  // index into sourceCode
    +      var tokens = sourceCode.match(tokenizer) || [];
    +      var styleCache = {};
    +
    +      for (var ti = 0, nTokens = tokens.length; ti < nTokens; ++ti) {
    +        var token = tokens[ti];
    +        var style = styleCache[token];
    +        var match = void 0;
    +
    +        var isEmbedded;
    +        if (typeof style === 'string') {
    +          isEmbedded = false;
    +        } else {
    +          var patternParts = shortcuts[token.charAt(0)];
    +          if (patternParts) {
    +            match = token.match(patternParts[1]);
    +            style = patternParts[0];
    +          } else {
    +            for (var i = 0; i < nPatterns; ++i) {
    +              patternParts = fallthroughStylePatterns[i];
    +              match = token.match(patternParts[1]);
    +              if (match) {
    +                style = patternParts[0];
    +                break;
    +              }
    +            }
    +
    +            if (!match) {  // make sure that we make progress
    +              style = PR_PLAIN;
    +            }
    +          }
    +
    +          isEmbedded = style.length >= 5 && 'lang-' === style.substring(0, 5);
    +          if (isEmbedded && !(match && typeof match[1] === 'string')) {
    +            isEmbedded = false;
    +            style = PR_SOURCE;
    +          }
    +
    +          if (!isEmbedded) { styleCache[token] = style; }
    +        }
    +
    +        var tokenStart = pos;
    +        pos += token.length;
    +
    +        if (!isEmbedded) {
    +          decorations.push(basePos + tokenStart, style);
    +        } else {  // Treat group 1 as an embedded block of source code.
    +          var embeddedSource = match[1];
    +          var embeddedSourceStart = token.indexOf(embeddedSource);
    +          var embeddedSourceEnd = embeddedSourceStart + embeddedSource.length;
    +          if (match[2]) {
    +            // If embeddedSource can be blank, then it would match at the
    +            // beginning which would cause us to infinitely recurse on the
    +            // entire token, so we catch the right context in match[2].
    +            embeddedSourceEnd = token.length - match[2].length;
    +            embeddedSourceStart = embeddedSourceEnd - embeddedSource.length;
    +          }
    +          var lang = style.substring(5);
    +          // Decorate the left of the embedded source
    +          appendDecorations(
    +              basePos + tokenStart,
    +              token.substring(0, embeddedSourceStart),
    +              decorate, decorations);
    +          // Decorate the embedded source
    +          appendDecorations(
    +              basePos + tokenStart + embeddedSourceStart,
    +              embeddedSource,
    +              langHandlerForExtension(lang, embeddedSource),
    +              decorations);
    +          // Decorate the right of the embedded section
    +          appendDecorations(
    +              basePos + tokenStart + embeddedSourceEnd,
    +              token.substring(embeddedSourceEnd),
    +              decorate, decorations);
    +        }
    +      }
    +      job.decorations = decorations;
    +    };
    +    return decorate;
    +  }
    +
    +  /** returns a function that produces a list of decorations from source text.
    +    *
    +    * This code treats ", ', and ` as string delimiters, and \ as a string
    +    * escape.  It does not recognize perl's qq() style strings.
    +    * It has no special handling for double delimiter escapes as in basic, or
    +    * the tripled delimiters used in python, but should work on those regardless
    +    * although in those cases a single string literal may be broken up into
    +    * multiple adjacent string literals.
    +    *
    +    * It recognizes C, C++, and shell style comments.
    +    *
    +    * @param {Object} options a set of optional parameters.
    +    * @return {function (Object)} a function that examines the source code
    +    *     in the input job and builds the decoration list.
    +    */
    +  function sourceDecorator(options) {
    +    var shortcutStylePatterns = [], fallthroughStylePatterns = [];
    +    if (options['tripleQuotedStrings']) {
    +      // '''multi-line-string''', 'single-line-string', and double-quoted
    +      shortcutStylePatterns.push(
    +          [PR_STRING,  /^(?:\'\'\'(?:[^\'\\]|\\[\s\S]|\'{1,2}(?=[^\']))*(?:\'\'\'|$)|\"\"\"(?:[^\"\\]|\\[\s\S]|\"{1,2}(?=[^\"]))*(?:\"\"\"|$)|\'(?:[^\\\']|\\[\s\S])*(?:\'|$)|\"(?:[^\\\"]|\\[\s\S])*(?:\"|$))/,
    +           null, '\'"']);
    +    } else if (options['multiLineStrings']) {
    +      // 'multi-line-string', "multi-line-string"
    +      shortcutStylePatterns.push(
    +          [PR_STRING,  /^(?:\'(?:[^\\\']|\\[\s\S])*(?:\'|$)|\"(?:[^\\\"]|\\[\s\S])*(?:\"|$)|\`(?:[^\\\`]|\\[\s\S])*(?:\`|$))/,
    +           null, '\'"`']);
    +    } else {
    +      // 'single-line-string', "single-line-string"
    +      shortcutStylePatterns.push(
    +          [PR_STRING,
    +           /^(?:\'(?:[^\\\'\r\n]|\\.)*(?:\'|$)|\"(?:[^\\\"\r\n]|\\.)*(?:\"|$))/,
    +           null, '"\'']);
    +    }
    +    if (options['verbatimStrings']) {
    +      // verbatim-string-literal production from the C# grammar.  See issue 93.
    +      fallthroughStylePatterns.push(
    +          [PR_STRING, /^@\"(?:[^\"]|\"\")*(?:\"|$)/, null]);
    +    }
    +    var hc = options['hashComments'];
    +    if (hc) {
    +      if (options['cStyleComments']) {
    +        if (hc > 1) {  // multiline hash comments
    +          shortcutStylePatterns.push(
    +              [PR_COMMENT, /^#(?:##(?:[^#]|#(?!##))*(?:###|$)|.*)/, null, '#']);
    +        } else {
    +          // Stop C preprocessor declarations at an unclosed open comment
    +          shortcutStylePatterns.push(
    +              [PR_COMMENT, /^#(?:(?:define|elif|else|endif|error|ifdef|include|ifndef|line|pragma|undef|warning)\b|[^\r\n]*)/,
    +               null, '#']);
    +        }
    +        fallthroughStylePatterns.push(
    +            [PR_STRING,
    +             /^<(?:(?:(?:\.\.\/)*|\/?)(?:[\w-]+(?:\/[\w-]+)+)?[\w-]+\.h|[a-z]\w*)>/,
    +             null]);
    +      } else {
    +        shortcutStylePatterns.push([PR_COMMENT, /^#[^\r\n]*/, null, '#']);
    +      }
    +    }
    +    if (options['cStyleComments']) {
    +      fallthroughStylePatterns.push([PR_COMMENT, /^\/\/[^\r\n]*/, null]);
    +      fallthroughStylePatterns.push(
    +          [PR_COMMENT, /^\/\*[\s\S]*?(?:\*\/|$)/, null]);
    +    }
    +    if (options['regexLiterals']) {
    +      /**
    +       * @const
    +       */
    +      var REGEX_LITERAL = (
    +          // A regular expression literal starts with a slash that is
    +          // not followed by * or / so that it is not confused with
    +          // comments.
    +          '/(?=[^/*])'
    +          // and then contains any number of raw characters,
    +          + '(?:[^/\\x5B\\x5C]'
    +          // escape sequences (\x5C),
    +          +    '|\\x5C[\\s\\S]'
    +          // or non-nesting character sets (\x5B\x5D);
    +          +    '|\\x5B(?:[^\\x5C\\x5D]|\\x5C[\\s\\S])*(?:\\x5D|$))+'
    +          // finally closed by a /.
    +          + '/');
    +      fallthroughStylePatterns.push(
    +          ['lang-regex',
    +           new RegExp('^' + REGEXP_PRECEDER_PATTERN + '(' + REGEX_LITERAL + ')')
    +           ]);
    +    }
    +
    +    var types = options['types'];
    +    if (types) {
    +      fallthroughStylePatterns.push([PR_TYPE, types]);
    +    }
    +
    +    var keywords = ("" + options['keywords']).replace(/^ | $/g, '');
    +    if (keywords.length) {
    +      fallthroughStylePatterns.push(
    +          [PR_KEYWORD,
    +           new RegExp('^(?:' + keywords.replace(/[\s,]+/g, '|') + ')\\b'),
    +           null]);
    +    }
    +
    +    shortcutStylePatterns.push([PR_PLAIN,       /^\s+/, null, ' \r\n\t\xA0']);
    +    fallthroughStylePatterns.push(
    +        // TODO(mikesamuel): recognize non-latin letters and numerals in idents
    +        [PR_LITERAL,     /^@[a-z_$][a-z_$@0-9]*/i, null],
    +        [PR_TYPE,        /^(?:[@_]?[A-Z]+[a-z][A-Za-z_$@0-9]*|\w+_t\b)/, null],
    +        [PR_PLAIN,       /^[a-z_$][a-z_$@0-9]*/i, null],
    +        [PR_LITERAL,
    +         new RegExp(
    +             '^(?:'
    +             // A hex number
    +             + '0x[a-f0-9]+'
    +             // or an octal or decimal number,
    +             + '|(?:\\d(?:_\\d+)*\\d*(?:\\.\\d*)?|\\.\\d\\+)'
    +             // possibly in scientific notation
    +             + '(?:e[+\\-]?\\d+)?'
    +             + ')'
    +             // with an optional modifier like UL for unsigned long
    +             + '[a-z]*', 'i'),
    +         null, '0123456789'],
    +        // Don't treat escaped quotes in bash as starting strings.  See issue 144.
    +        [PR_PLAIN,       /^\\[\s\S]?/, null],
    +        [PR_PUNCTUATION, /^.[^\s\w\.$@\'\"\`\/\#\\]*/, null]);
    +
    +    return createSimpleLexer(shortcutStylePatterns, fallthroughStylePatterns);
    +  }
    +
    +  var decorateSource = sourceDecorator({
    +        'keywords': ALL_KEYWORDS,
    +        'hashComments': true,
    +        'cStyleComments': true,
    +        'multiLineStrings': true,
    +        'regexLiterals': true
    +      });
    +
    +  /**
    +   * Given a DOM subtree, wraps it in a list, and puts each line into its own
    +   * list item.
    +   *
    +   * @param {Node} node modified in place.  Its content is pulled into an
    +   *     HTMLOListElement, and each line is moved into a separate list item.
    +   *     This requires cloning elements, so the input might not have unique
    +   *     IDs after numbering.
    +   */
    +  function numberLines(node, opt_startLineNum) {
    +    var nocode = /(?:^|\s)nocode(?:\s|$)/;
    +    var lineBreak = /\r\n?|\n/;
    +  
    +    var document = node.ownerDocument;
    +  
    +    var whitespace;
    +    if (node.currentStyle) {
    +      whitespace = node.currentStyle.whiteSpace;
    +    } else if (window.getComputedStyle) {
    +      whitespace = document.defaultView.getComputedStyle(node, null)
    +          .getPropertyValue('white-space');
    +    }
    +    // If it's preformatted, then we need to split lines on line breaks
    +    // in addition to <BR>s.
    +    var isPreformatted = whitespace && 'pre' === whitespace.substring(0, 3);
    +  
    +    var li = document.createElement('LI');
    +    while (node.firstChild) {
    +      li.appendChild(node.firstChild);
    +    }
    +    // An array of lines.  We split below, so this is initialized to one
    +    // un-split line.
    +    var listItems = [li];
    +  
    +    function walk(node) {
    +      switch (node.nodeType) {
    +        case 1:  // Element
    +          if (nocode.test(node.className)) { break; }
    +          if ('BR' === node.nodeName) {
    +            breakAfter(node);
    +            // Discard the <BR> since it is now flush against a </LI>.
    +            if (node.parentNode) {
    +              node.parentNode.removeChild(node);
    +            }
    +          } else {
    +            for (var child = node.firstChild; child; child = child.nextSibling) {
    +              walk(child);
    +            }
    +          }
    +          break;
    +        case 3: case 4:  // Text
    +          if (isPreformatted) {
    +            var text = node.nodeValue;
    +            var match = text.match(lineBreak);
    +            if (match) {
    +              var firstLine = text.substring(0, match.index);
    +              node.nodeValue = firstLine;
    +              var tail = text.substring(match.index + match[0].length);
    +              if (tail) {
    +                var parent = node.parentNode;
    +                parent.insertBefore(
    +                    document.createTextNode(tail), node.nextSibling);
    +              }
    +              breakAfter(node);
    +              if (!firstLine) {
    +                // Don't leave blank text nodes in the DOM.
    +                node.parentNode.removeChild(node);
    +              }
    +            }
    +          }
    +          break;
    +      }
    +    }
    +  
    +    // Split a line after the given node.
    +    function breakAfter(lineEndNode) {
    +      // If there's nothing to the right, then we can skip ending the line
    +      // here, and move root-wards since splitting just before an end-tag
    +      // would require us to create a bunch of empty copies.
    +      while (!lineEndNode.nextSibling) {
    +        lineEndNode = lineEndNode.parentNode;
    +        if (!lineEndNode) { return; }
    +      }
    +  
    +      function breakLeftOf(limit, copy) {
    +        // Clone shallowly if this node needs to be on both sides of the break.
    +        var rightSide = copy ? limit.cloneNode(false) : limit;
    +        var parent = limit.parentNode;
    +        if (parent) {
    +          // We clone the parent chain.
    +          // This helps us resurrect important styling elements that cross lines.
    +          // E.g. in <i>Foo<br>Bar</i>
    +          // should be rewritten to <li><i>Foo</i></li><li><i>Bar</i></li>.
    +          var parentClone = breakLeftOf(parent, 1);
    +          // Move the clone and everything to the right of the original
    +          // onto the cloned parent.
    +          var next = limit.nextSibling;
    +          parentClone.appendChild(rightSide);
    +          for (var sibling = next; sibling; sibling = next) {
    +            next = sibling.nextSibling;
    +            parentClone.appendChild(sibling);
    +          }
    +        }
    +        return rightSide;
    +      }
    +  
    +      var copiedListItem = breakLeftOf(lineEndNode.nextSibling, 0);
    +  
    +      // Walk the parent chain until we reach an unattached LI.
    +      for (var parent;
    +           // Check nodeType since IE invents document fragments.
    +           (parent = copiedListItem.parentNode) && parent.nodeType === 1;) {
    +        copiedListItem = parent;
    +      }
    +      // Put it on the list of lines for later processing.
    +      listItems.push(copiedListItem);
    +    }
    +  
    +    // Split lines while there are lines left to split.
    +    for (var i = 0;  // Number of lines that have been split so far.
    +         i < listItems.length;  // length updated by breakAfter calls.
    +         ++i) {
    +      walk(listItems[i]);
    +    }
    +  
    +    // Make sure numeric indices show correctly.
    +    if (opt_startLineNum === (opt_startLineNum|0)) {
    +      listItems[0].setAttribute('value', opt_startLineNum);
    +    }
    +  
    +    var ol = document.createElement('OL');
    +    ol.className = 'linenums';
    +    var offset = Math.max(0, ((opt_startLineNum - 1 /* zero index */)) | 0) || 0;
    +    for (var i = 0, n = listItems.length; i < n; ++i) {
    +      li = listItems[i];
    +      // Stick a class on the LIs so that stylesheets can
    +      // color odd/even rows, or any other row pattern that
    +      // is co-prime with 10.
    +      li.className = 'L' + ((i + offset) % 10);
    +      if (!li.firstChild) {
    +        li.appendChild(document.createTextNode('\xA0'));
    +      }
    +      ol.appendChild(li);
    +    }
    +  
    +    node.appendChild(ol);
    +  }
    +
    +  /**
    +   * Breaks {@code job.sourceCode} around style boundaries in
    +   * {@code job.decorations} and modifies {@code job.sourceNode} in place.
    +   * @param {Object} job like <pre>{
    +   *    sourceCode: {string} source as plain text,
    +   *    spans: {Array.<number|Node>} alternating span start indices into source
    +   *       and the text node or element (e.g. {@code <BR>}) corresponding to that
    +   *       span.
    +   *    decorations: {Array.<number|string} an array of style classes preceded
    +   *       by the position at which they start in job.sourceCode in order
    +   * }</pre>
    +   * @private
    +   */
    +  function recombineTagsAndDecorations(job) {
    +    var isIE = /\bMSIE\b/.test(navigator.userAgent);
    +    var newlineRe = /\n/g;
    +  
    +    var source = job.sourceCode;
    +    var sourceLength = source.length;
    +    // Index into source after the last code-unit recombined.
    +    var sourceIndex = 0;
    +  
    +    var spans = job.spans;
    +    var nSpans = spans.length;
    +    // Index into spans after the last span which ends at or before sourceIndex.
    +    var spanIndex = 0;
    +  
    +    var decorations = job.decorations;
    +    var nDecorations = decorations.length;
    +    // Index into decorations after the last decoration which ends at or before
    +    // sourceIndex.
    +    var decorationIndex = 0;
    +  
    +    // Remove all zero-length decorations.
    +    decorations[nDecorations] = sourceLength;
    +    var decPos, i;
    +    for (i = decPos = 0; i < nDecorations;) {
    +      if (decorations[i] !== decorations[i + 2]) {
    +        decorations[decPos++] = decorations[i++];
    +        decorations[decPos++] = decorations[i++];
    +      } else {
    +        i += 2;
    +      }
    +    }
    +    nDecorations = decPos;
    +  
    +    // Simplify decorations.
    +    for (i = decPos = 0; i < nDecorations;) {
    +      var startPos = decorations[i];
    +      // Conflate all adjacent decorations that use the same style.
    +      var startDec = decorations[i + 1];
    +      var end = i + 2;
    +      while (end + 2 <= nDecorations && decorations[end + 1] === startDec) {
    +        end += 2;
    +      }
    +      decorations[decPos++] = startPos;
    +      decorations[decPos++] = startDec;
    +      i = end;
    +    }
    +  
    +    nDecorations = decorations.length = decPos;
    +  
    +    var decoration = null;
    +    while (spanIndex < nSpans) {
    +      var spanStart = spans[spanIndex];
    +      var spanEnd = spans[spanIndex + 2] || sourceLength;
    +  
    +      var decStart = decorations[decorationIndex];
    +      var decEnd = decorations[decorationIndex + 2] || sourceLength;
    +  
    +      var end = Math.min(spanEnd, decEnd);
    +  
    +      var textNode = spans[spanIndex + 1];
    +      var styledText;
    +      if (textNode.nodeType !== 1  // Don't muck with <BR>s or <LI>s
    +          // Don't introduce spans around empty text nodes.
    +          && (styledText = source.substring(sourceIndex, end))) {
    +        // This may seem bizarre, and it is.  Emitting LF on IE causes the
    +        // code to display with spaces instead of line breaks.
    +        // Emitting Windows standard issue linebreaks (CRLF) causes a blank
    +        // space to appear at the beginning of every line but the first.
    +        // Emitting an old Mac OS 9 line separator makes everything spiffy.
    +        if (isIE) { styledText = styledText.replace(newlineRe, '\r'); }
    +        textNode.nodeValue = styledText;
    +        var document = textNode.ownerDocument;
    +        var span = document.createElement('SPAN');
    +        span.className = decorations[decorationIndex + 1];
    +        var parentNode = textNode.parentNode;
    +        parentNode.replaceChild(span, textNode);
    +        span.appendChild(textNode);
    +        if (sourceIndex < spanEnd) {  // Split off a text node.
    +          spans[spanIndex + 1] = textNode
    +              // TODO: Possibly optimize by using '' if there's no flicker.
    +              = document.createTextNode(source.substring(end, spanEnd));
    +          parentNode.insertBefore(textNode, span.nextSibling);
    +        }
    +      }
    +  
    +      sourceIndex = end;
    +  
    +      if (sourceIndex >= spanEnd) {
    +        spanIndex += 2;
    +      }
    +      if (sourceIndex >= decEnd) {
    +        decorationIndex += 2;
    +      }
    +    }
    +  }
    +
    +
    +  /** Maps language-specific file extensions to handlers. */
    +  var langHandlerRegistry = {};
    +  /** Register a language handler for the given file extensions.
    +    * @param {function (Object)} handler a function from source code to a list
    +    *      of decorations.  Takes a single argument job which describes the
    +    *      state of the computation.   The single parameter has the form
    +    *      {@code {
    +    *        sourceCode: {string} as plain text.
    +    *        decorations: {Array.<number|string>} an array of style classes
    +    *                     preceded by the position at which they start in
    +    *                     job.sourceCode in order.
    +    *                     The language handler should assigned this field.
    +    *        basePos: {int} the position of source in the larger source chunk.
    +    *                 All positions in the output decorations array are relative
    +    *                 to the larger source chunk.
    +    *      } }
    +    * @param {Array.<string>} fileExtensions
    +    */
    +  function registerLangHandler(handler, fileExtensions) {
    +    for (var i = fileExtensions.length; --i >= 0;) {
    +      var ext = fileExtensions[i];
    +      if (!langHandlerRegistry.hasOwnProperty(ext)) {
    +        langHandlerRegistry[ext] = handler;
    +      } else if (window['console']) {
    +        console['warn']('cannot override language handler %s', ext);
    +      }
    +    }
    +  }
    +  function langHandlerForExtension(extension, source) {
    +    if (!(extension && langHandlerRegistry.hasOwnProperty(extension))) {
    +      // Treat it as markup if the first non whitespace character is a < and
    +      // the last non-whitespace character is a >.
    +      extension = /^\s*</.test(source)
    +          ? 'default-markup'
    +          : 'default-code';
    +    }
    +    return langHandlerRegistry[extension];
    +  }
    +  registerLangHandler(decorateSource, ['default-code']);
    +  registerLangHandler(
    +      createSimpleLexer(
    +          [],
    +          [
    +           [PR_PLAIN,       /^[^<?]+/],
    +           [PR_DECLARATION, /^<!\w[^>]*(?:>|$)/],
    +           [PR_COMMENT,     /^<\!--[\s\S]*?(?:-\->|$)/],
    +           // Unescaped content in an unknown language
    +           ['lang-',        /^<\?([\s\S]+?)(?:\?>|$)/],
    +           ['lang-',        /^<%([\s\S]+?)(?:%>|$)/],
    +           [PR_PUNCTUATION, /^(?:<[%?]|[%?]>)/],
    +           ['lang-',        /^<xmp\b[^>]*>([\s\S]+?)<\/xmp\b[^>]*>/i],
    +           // Unescaped content in javascript.  (Or possibly vbscript).
    +           ['lang-js',      /^<script\b[^>]*>([\s\S]*?)(<\/script\b[^>]*>)/i],
    +           // Contains unescaped stylesheet content
    +           ['lang-css',     /^<style\b[^>]*>([\s\S]*?)(<\/style\b[^>]*>)/i],
    +           ['lang-in.tag',  /^(<\/?[a-z][^<>]*>)/i]
    +          ]),
    +      ['default-markup', 'htm', 'html', 'mxml', 'xhtml', 'xml', 'xsl']);
    +  registerLangHandler(
    +      createSimpleLexer(
    +          [
    +           [PR_PLAIN,        /^[\s]+/, null, ' \t\r\n'],
    +           [PR_ATTRIB_VALUE, /^(?:\"[^\"]*\"?|\'[^\']*\'?)/, null, '\"\'']
    +           ],
    +          [
    +           [PR_TAG,          /^^<\/?[a-z](?:[\w.:-]*\w)?|\/?>$/i],
    +           [PR_ATTRIB_NAME,  /^(?!style[\s=]|on)[a-z](?:[\w:-]*\w)?/i],
    +           ['lang-uq.val',   /^=\s*([^>\'\"\s]*(?:[^>\'\"\s\/]|\/(?=\s)))/],
    +           [PR_PUNCTUATION,  /^[=<>\/]+/],
    +           ['lang-js',       /^on\w+\s*=\s*\"([^\"]+)\"/i],
    +           ['lang-js',       /^on\w+\s*=\s*\'([^\']+)\'/i],
    +           ['lang-js',       /^on\w+\s*=\s*([^\"\'>\s]+)/i],
    +           ['lang-css',      /^style\s*=\s*\"([^\"]+)\"/i],
    +           ['lang-css',      /^style\s*=\s*\'([^\']+)\'/i],
    +           ['lang-css',      /^style\s*=\s*([^\"\'>\s]+)/i]
    +           ]),
    +      ['in.tag']);
    +  registerLangHandler(
    +      createSimpleLexer([], [[PR_ATTRIB_VALUE, /^[\s\S]+/]]), ['uq.val']);
    +  registerLangHandler(sourceDecorator({
    +          'keywords': CPP_KEYWORDS,
    +          'hashComments': true,
    +          'cStyleComments': true,
    +          'types': C_TYPES
    +        }), ['c', 'cc', 'cpp', 'cxx', 'cyc', 'm']);
    +  registerLangHandler(sourceDecorator({
    +          'keywords': 'null,true,false'
    +        }), ['json']);
    +  registerLangHandler(sourceDecorator({
    +          'keywords': CSHARP_KEYWORDS,
    +          'hashComments': true,
    +          'cStyleComments': true,
    +          'verbatimStrings': true,
    +          'types': C_TYPES
    +        }), ['cs']);
    +  registerLangHandler(sourceDecorator({
    +          'keywords': JAVA_KEYWORDS,
    +          'cStyleComments': true
    +        }), ['java']);
    +  registerLangHandler(sourceDecorator({
    +          'keywords': SH_KEYWORDS,
    +          'hashComments': true,
    +          'multiLineStrings': true
    +        }), ['bsh', 'csh', 'sh']);
    +  registerLangHandler(sourceDecorator({
    +          'keywords': PYTHON_KEYWORDS,
    +          'hashComments': true,
    +          'multiLineStrings': true,
    +          'tripleQuotedStrings': true
    +        }), ['cv', 'py']);
    +  registerLangHandler(sourceDecorator({
    +          'keywords': PERL_KEYWORDS,
    +          'hashComments': true,
    +          'multiLineStrings': true,
    +          'regexLiterals': true
    +        }), ['perl', 'pl', 'pm']);
    +  registerLangHandler(sourceDecorator({
    +          'keywords': RUBY_KEYWORDS,
    +          'hashComments': true,
    +          'multiLineStrings': true,
    +          'regexLiterals': true
    +        }), ['rb']);
    +  registerLangHandler(sourceDecorator({
    +          'keywords': JSCRIPT_KEYWORDS,
    +          'cStyleComments': true,
    +          'regexLiterals': true
    +        }), ['js']);
    +  registerLangHandler(sourceDecorator({
    +          'keywords': COFFEE_KEYWORDS,
    +          'hashComments': 3,  // ### style block comments
    +          'cStyleComments': true,
    +          'multilineStrings': true,
    +          'tripleQuotedStrings': true,
    +          'regexLiterals': true
    +        }), ['coffee']);
    +  registerLangHandler(createSimpleLexer([], [[PR_STRING, /^[\s\S]+/]]), ['regex']);
    +
    +  function applyDecorator(job) {
    +    var opt_langExtension = job.langExtension;
    +
    +    try {
    +      // Extract tags, and convert the source code to plain text.
    +      var sourceAndSpans = extractSourceSpans(job.sourceNode);
    +      /** Plain text. @type {string} */
    +      var source = sourceAndSpans.sourceCode;
    +      job.sourceCode = source;
    +      job.spans = sourceAndSpans.spans;
    +      job.basePos = 0;
    +
    +      // Apply the appropriate language handler
    +      langHandlerForExtension(opt_langExtension, source)(job);
    +
    +      // Integrate the decorations and tags back into the source code,
    +      // modifying the sourceNode in place.
    +      recombineTagsAndDecorations(job);
    +    } catch (e) {
    +      if ('console' in window) {
    +        console['log'](e && e['stack'] ? e['stack'] : e);
    +      }
    +    }
    +  }
    +
    +  /**
    +   * @param sourceCodeHtml {string} The HTML to pretty print.
    +   * @param opt_langExtension {string} The language name to use.
    +   *     Typically, a filename extension like 'cpp' or 'java'.
    +   * @param opt_numberLines {number|boolean} True to number lines,
    +   *     or the 1-indexed number of the first line in sourceCodeHtml.
    +   */
    +  function prettyPrintOne(sourceCodeHtml, opt_langExtension, opt_numberLines) {
    +    var container = document.createElement('PRE');
    +    // This could cause images to load and onload listeners to fire.
    +    // E.g. <img onerror="alert(1337)" src="nosuchimage.png">.
    +    // We assume that the inner HTML is from a trusted source.
    +    container.innerHTML = sourceCodeHtml;
    +    if (opt_numberLines) {
    +      numberLines(container, opt_numberLines);
    +    }
    +
    +    var job = {
    +      langExtension: opt_langExtension,
    +      numberLines: opt_numberLines,
    +      sourceNode: container
    +    };
    +    applyDecorator(job);
    +    return container.innerHTML;
    +  }
    +
    +  function prettyPrint(opt_whenDone) {
    +    function byTagName(tn) { return document.getElementsByTagName(tn); }
    +    // fetch a list of nodes to rewrite
    +    var codeSegments = [byTagName('pre'), byTagName('code'), byTagName('xmp')];
    +    var elements = [];
    +    for (var i = 0; i < codeSegments.length; ++i) {
    +      for (var j = 0, n = codeSegments[i].length; j < n; ++j) {
    +        elements.push(codeSegments[i][j]);
    +      }
    +    }
    +    codeSegments = null;
    +
    +    var clock = Date;
    +    if (!clock['now']) {
    +      clock = { 'now': function () { return +(new Date); } };
    +    }
    +
    +    // The loop is broken into a series of continuations to make sure that we
    +    // don't make the browser unresponsive when rewriting a large page.
    +    var k = 0;
    +    var prettyPrintingJob;
    +
    +    var langExtensionRe = /\blang(?:uage)?-([\w.]+)(?!\S)/;
    +    var prettyPrintRe = /\bprettyprint\b/;
    +
    +    function doWork() {
    +      var endTime = (window['PR_SHOULD_USE_CONTINUATION'] ?
    +                     clock['now']() + 250 /* ms */ :
    +                     Infinity);
    +      for (; k < elements.length && clock['now']() < endTime; k++) {
    +        var cs = elements[k];
    +        var className = cs.className;
    +        if (className.indexOf('prettyprint') >= 0) {
    +          // If the classes includes a language extensions, use it.
    +          // Language extensions can be specified like
    +          //     <pre class="prettyprint lang-cpp">
    +          // the language extension "cpp" is used to find a language handler as
    +          // passed to PR.registerLangHandler.
    +          // HTML5 recommends that a language be specified using "language-"
    +          // as the prefix instead.  Google Code Prettify supports both.
    +          // http://dev.w3.org/html5/spec-author-view/the-code-element.html
    +          var langExtension = className.match(langExtensionRe);
    +          // Support <pre class="prettyprint"><code class="language-c">
    +          var wrapper;
    +          if (!langExtension && (wrapper = childContentWrapper(cs))
    +              && "CODE" === wrapper.tagName) {
    +            langExtension = wrapper.className.match(langExtensionRe);
    +          }
    +
    +          if (langExtension) {
    +            langExtension = langExtension[1];
    +          }
    +
    +          // make sure this is not nested in an already prettified element
    +          var nested = false;
    +          for (var p = cs.parentNode; p; p = p.parentNode) {
    +            if ((p.tagName === 'pre' || p.tagName === 'code' ||
    +                 p.tagName === 'xmp') &&
    +                p.className && p.className.indexOf('prettyprint') >= 0) {
    +              nested = true;
    +              break;
    +            }
    +          }
    +          if (!nested) {
    +            // Look for a class like linenums or linenums:<n> where <n> is the
    +            // 1-indexed number of the first line.
    +            var lineNums = cs.className.match(/\blinenums\b(?::(\d+))?/);
    +            lineNums = lineNums
    +                  ? lineNums[1] && lineNums[1].length ? +lineNums[1] : true
    +                  : false;
    +            if (lineNums) { numberLines(cs, lineNums); }
    +
    +            // do the pretty printing
    +            prettyPrintingJob = {
    +              langExtension: langExtension,
    +              sourceNode: cs,
    +              numberLines: lineNums
    +            };
    +            applyDecorator(prettyPrintingJob);
    +          }
    +        }
    +      }
    +      if (k < elements.length) {
    +        // finish up in a continuation
    +        setTimeout(doWork, 250);
    +      } else if (opt_whenDone) {
    +        opt_whenDone();
    +      }
    +    }
    +
    +    doWork();
    +  }
    +
    +   /**
    +    * Find all the {@code <pre>} and {@code <code>} tags in the DOM with
    +    * {@code class=prettyprint} and prettify them.
    +    *
    +    * @param {Function?} opt_whenDone if specified, called when the last entry
    +    *     has been finished.
    +    */
    +  window['prettyPrintOne'] = prettyPrintOne;
    +   /**
    +    * Pretty print a chunk of code.
    +    *
    +    * @param {string} sourceCodeHtml code as html
    +    * @return {string} code as html, but prettier
    +    */
    +  window['prettyPrint'] = prettyPrint;
    +   /**
    +    * Contains functions for creating and registering new language handlers.
    +    * @type {Object}
    +    */
    +  window['PR'] = {
    +        'createSimpleLexer': createSimpleLexer,
    +        'registerLangHandler': registerLangHandler,
    +        'sourceDecorator': sourceDecorator,
    +        'PR_ATTRIB_NAME': PR_ATTRIB_NAME,
    +        'PR_ATTRIB_VALUE': PR_ATTRIB_VALUE,
    +        'PR_COMMENT': PR_COMMENT,
    +        'PR_DECLARATION': PR_DECLARATION,
    +        'PR_KEYWORD': PR_KEYWORD,
    +        'PR_LITERAL': PR_LITERAL,
    +        'PR_NOCODE': PR_NOCODE,
    +        'PR_PLAIN': PR_PLAIN,
    +        'PR_PUNCTUATION': PR_PUNCTUATION,
    +        'PR_SOURCE': PR_SOURCE,
    +        'PR_STRING': PR_STRING,
    +        'PR_TAG': PR_TAG,
    +        'PR_TYPE': PR_TYPE
    +      };
    +})();
    diff --git a/jOOQ-website/launch/Transform.launch b/jOOQ-website/launch/Transform.launch
    new file mode 100644
    index 00000000000..458f2eeff3f
    --- /dev/null
    +++ b/jOOQ-website/launch/Transform.launch
    @@ -0,0 +1,13 @@
    +<?xml version="1.0" encoding="UTF-8" standalone="no"?>
    +<launchConfiguration type="org.eclipse.jdt.launching.localJavaApplication">
    +<listAttribute key="org.eclipse.debug.core.MAPPED_RESOURCE_PATHS">
    +<listEntry value="/jOOQ-website/src/main/java/Transform.java"/>
    +</listAttribute>
    +<listAttribute key="org.eclipse.debug.core.MAPPED_RESOURCE_TYPES">
    +<listEntry value="1"/>
    +</listAttribute>
    +<stringAttribute key="org.eclipse.jdt.launching.CLASSPATH_PROVIDER" value="org.maven.ide.eclipse.launchconfig.classpathProvider"/>
    +<stringAttribute key="org.eclipse.jdt.launching.MAIN_TYPE" value="Transform"/>
    +<stringAttribute key="org.eclipse.jdt.launching.PROJECT_ATTR" value="jOOQ-website"/>
    +<stringAttribute key="org.eclipse.jdt.launching.SOURCE_PATH_PROVIDER" value="org.maven.ide.eclipse.launchconfig.sourcepathProvider"/>
    +</launchConfiguration>
    diff --git a/jOOQ-website/links.php b/jOOQ-website/links.php
    new file mode 100644
    index 00000000000..26c5cd9e036
    --- /dev/null
    +++ b/jOOQ-website/links.php
    @@ -0,0 +1,68 @@
    +<?php 
    +require 'frame.php';
    +function getH1() {
    +	return 'Useful links for jOOQ users and developers';
    +}
    +function getSlogan() {
    +	return "You've come far in your search of more intuitive integration of SQL and Java. 
    +			Here you will find further resources related to jOOQ, to similar products and
    +			other inspiration related to jOOQ";
    +}
    +function getActiveMenu() {
    +	return "links";
    +}
    +function printContent() {
    +	global $root;
    +?>
    +<h2>jOOQ news groups</h2>
    +<ul>
    +	<li>Subscribe to the <a href="http://groups.google.com/group/jooq-user">jOOQ User Group</a></li>
    +	<li>Subscribe to the <a href="http://groups.google.com/group/jooq-developer">jOOQ Developer Group</a></li>
    +</ul>
    +
    +<h2>jOOQ in the WWW</h2>
    +<ul>
    +	<li>On Twitter: <a href="https://twitter.com/#!/JavaOOQ" title="jOOQ on Twitter">https://twitter.com/#!/JavaOOQ</a>
    +	<li>On Wordpress: <a href="http://lukaseder.wordpress.com/" title="Lukas Eder's blog about Java, SQL and jOOQ">http://lukaseder.wordpress.com/</a></li>
    +    <li>On SourceForge: <a href="https://sourceforge.net/projects/jooq/" title="jOOQ download and hosting on source forge">https://sourceforge.net/projects/jooq/</a></li>
    +    <li>On GitHub: <a href="https://github.com/lukaseder/jOOQ" title="fork jOOQ on GitHub">https://github.com/lukaseder/jOOQ</a></li>
    +    <li>On ohloh: <a href="https://www.ohloh.net/p/jooq" title="see some statistics about jOOQ on ohloh">https://www.ohloh.net/p/jooq</a></li>
    +    <li>On freshmeat: <a href="http://freshmeat.net/projects/jooq" title="subscribe to some jOOQ announcements on freshmeat">http://freshmeat.net/projects/jooq</a></li>
    +    <li>On Stack Overflow: <a href="http://stackoverflow.com/questions/tagged/jooq" title="ask questions about jOOQ on Stack Overflow">http://stackoverflow.com/questions/tagged/jooq</a></li>
    +</ul>
    +
    +<h2>jOOQ's source of inspiration, similar products</h2>
    +<p>When you consider jOOQ for your project, you might also have considered any of these similar products:</p>
    +
    +<ul>
    +	<li><a href="http://source.mysema.com/display/querydsl/Querydsl" title="QueryDSL, a product similar to jOOQ">Querydsl</a>: Focusing on the DSL and abstracting "backend integrations", such as SQL, JPA, collections, etc.</li>
    +    <li><a href="http://www.h2database.com/html/jaqu.html" title="JaQu, a product similar to jOOQ">JaQu</a>: Writing SQL statements using actual Java expressions</li>
    +    <li><a href="http://iciql.com/" title="iciql, a fork of JaQu, a product similar to jOOQ">iciql</a>: A fork of JaQu</li>
    +</ul>
    +
    +<p>And database tools, such as</p>
    +<ul>
    +	<li><a href="http://code.google.com/p/activejdbc/" title="QueryDSL, a product similar to jOOQ">ActiveJDBC</a>: A simple mapping tool implementing ActiveRecords in a Ruby-like way</li>
    +</ul>
    +
    +<p>And OR-mapping tools, such as</p>
    +<ul>
    +	<li><a href="http://www.hibernate.org/" title="QueryDSL, a product similar to jOOQ">Hibernate</a>: The mother of all inspiration to Java persistence</li>
    +	<li><a href="http://www.oracle.com/technetwork/java/javaee/tech/persistence-jsp-140049.html" title="QueryDSL, a product similar to jOOQ">JPA</a>: The J2EE standard</li>
    +</ul>
    +
    +<h2>jOOQ's little sister</h2>
    +<div style="height: 100px;">
    +	<a href="http://code.google.com/p/joox/"
    +		title="jOOX, a product inspired by jOOQ">
    +		<img src="<?=$root?>/img/joox-small.png" alt="jOOX" style="float:left; margin-right: 4em; border: 0"/></a>
    +	<p><a href="http://code.google.com/p/joox/"
    +		title="jOOX, a product inspired by jOOQ">jOOX</a> stands for Java
    +	Object Oriented XML. It is a simple wrapper for the org.w3c.dom package,
    +	to allow for fluent XML document creation and manipulation where DOM is
    +	required but too verbose. jOOX only wraps the underlying document and
    +	can be used to enhance DOM, not as an alternative.</p>
    +</div>
    +<?php 
    +}
    +?>
    \ No newline at end of file
    diff --git a/jOOQ-website/manual-pdf/jOOQ-manual.fo.xml b/jOOQ-website/manual-pdf/jOOQ-manual.fo.xml
    new file mode 100644
    index 00000000000..dff55075d2b
    --- /dev/null
    +++ b/jOOQ-website/manual-pdf/jOOQ-manual.fo.xml
    @@ -0,0 +1,7133 @@
    +<?xml version="1.0" encoding="UTF-8"?><fo:root xmlns:fo="http://www.w3.org/1999/XSL/Format">
    +<fo:layout-master-set>
    +<fo:simple-page-master master-name="simple" page-width="210mm" page-height="297mm">
    +<fo:region-body margin="17mm" region-name="xsl-region-body"/>
    +<fo:region-before extent="17mm" region-name="xsl-region-before"/>
    +<fo:region-after extent="17mm" region-name="xsl-region-after"/>
    +</fo:simple-page-master>
    +</fo:layout-master-set>
    +<fo:page-sequence master-reference="simple">
    +<fo:flow font-family="Helvetica" flow-name="xsl-region-body">
    +<fo:block font-family="Georgia" margin-right="20mm" margin-left="20mm" width="100%">
    +<fo:block padding-top="60mm" font-size="36pt" text-align="center" width="100%">The jOOQ User Manual</fo:block>
    +<fo:block padding-top="20mm" color="#555555" font-size="12pt" text-align="justify" width="100%">SQL was never meant to be abstracted. To be confined in the narrow
    +	   						boundaries of heavy mappers, hiding the beauty and simplicity of relational data.
    +	   						SQL was never meant to be object-oriented. SQL was never meant to be anything
    +	   						other than... SQL!</fo:block>
    +<fo:block padding-top="20mm" text-align="center" width="100%">
    +<fo:external-graphic padding-top="10pt" padding-bottom="10pt" src="url('C:/Users/lukas/workspace/jOOQ-website/img/logo.png')"/>
    +</fo:block>
    +</fo:block>
    +</fo:flow>
    +</fo:page-sequence>
    +<fo:page-sequence master-reference="simple">
    +<fo:static-content font-family="Helvetica" flow-name="xsl-region-before">
    +<fo:block>
    +<fo:table width="100%" table-layout="fixed">
    +<fo:table-column column-width="proportional-column-width(1)"/>
    +<fo:table-column column-width="150mm"/>
    +<fo:table-body>
    +<fo:table-row>
    +<fo:table-cell padding-top="11.333333333333334mm" padding-left="17mm">
    +<fo:block font-size="7pt" color="#555555">
    +							      			The jOOQ User Manual
    +							      			</fo:block>
    +</fo:table-cell>
    +<fo:table-cell text-align="right" padding-top="11.333333333333334mm" padding-right="17mm">
    +<fo:block font-size="7pt" color="#555555">
    +<fo:retrieve-marker retrieve-class-name="section"/>
    +</fo:block>
    +</fo:table-cell>
    +</fo:table-row>
    +</fo:table-body>
    +</fo:table>
    +</fo:block>
    +</fo:static-content>
    +<fo:static-content font-family="Helvetica" flow-name="xsl-region-after">
    +<fo:block>
    +<fo:table width="100%" table-layout="fixed">
    +<fo:table-column column-width="150mm"/>
    +<fo:table-column column-width="proportional-column-width(1)"/>
    +<fo:table-body>
    +<fo:table-row>
    +<fo:table-cell padding-left="17mm">
    +<fo:block font-size="7pt" color="#555555">
    +							      			jOOQ is brought to you by Lukas Eder. Distributed under the Apache 2 licence
    +							      			</fo:block>
    +</fo:table-cell>
    +<fo:table-cell text-align="right" padding-right="17mm">
    +<fo:block font-size="7pt" color="#555555">Page <fo:page-number/> / <fo:page-number-citation ref-id="last-page"/>
    +</fo:block>
    +</fo:table-cell>
    +</fo:table-row>
    +</fo:table-body>
    +</fo:table>
    +</fo:block>
    +</fo:static-content>
    +<fo:flow font-family="Helvetica" flow-name="xsl-region-body">
    +			
    +			<fo:block font-family="Georgia" font-size="16pt" padding-top="10pt" padding-bottom="10pt" page-break-after="avoid">Overview</fo:block>
    +			<fo:block font-size="11pt">This manual is divided into four main sections:</fo:block>
    +			<fo:block padding-top="16pt" padding-bottom="16pt" page-break-inside="avoid">
    +<fo:list-block>
    +				<fo:list-item>
    +<fo:list-item-label>
    +<fo:block font-size="11pt" page-break-inside="avoid">-</fo:block>
    +</fo:list-item-label>
    +<fo:list-item-body start-indent="body-start()">
    +<fo:block font-size="11pt" page-break-inside="avoid">
    +					<fo:basic-link font-size="11pt" color="#882222" font-weight="bold" text-shadow="0 1px 2px #666666" internal-destination="JOOQ">jOOQ classes and their usage</fo:basic-link>
    +					<fo:block font-size="11pt">
    +						See these chapters for an overview of the jOOQ internal architecture
    +						and all types that are involved with jOOQ's query creation and
    +						execution. This is the important part for you, also, if you wish to
    +						extend jOOQ
    +					</fo:block>
    +				</fo:block>
    +</fo:list-item-body>
    +</fo:list-item>
    +				<fo:list-item>
    +<fo:list-item-label>
    +<fo:block font-size="11pt" page-break-inside="avoid">-</fo:block>
    +</fo:list-item-label>
    +<fo:list-item-body start-indent="body-start()">
    +<fo:block font-size="11pt" page-break-inside="avoid">
    +					<fo:basic-link font-size="11pt" color="#882222" font-weight="bold" text-shadow="0 1px 2px #666666" internal-destination="META">Meta model code generation</fo:basic-link>
    +					<fo:block font-size="11pt">
    +						See these chapters to understand how you can use jOOQ as a source code
    +						generator, and what type of artefacts are generated by jOOQ
    +					</fo:block>
    +				</fo:block>
    +</fo:list-item-body>
    +</fo:list-item>
    +				<fo:list-item>
    +<fo:list-item-label>
    +<fo:block font-size="11pt" page-break-inside="avoid">-</fo:block>
    +</fo:list-item-label>
    +<fo:list-item-body start-indent="body-start()">
    +<fo:block font-size="11pt" page-break-inside="avoid">
    +					<fo:basic-link font-size="11pt" color="#882222" font-weight="bold" text-shadow="0 1px 2px #666666" internal-destination="DSL">DSL or fluent API. Where SQL meets Java</fo:basic-link>
    +					<fo:block font-size="11pt">
    +						See these chapters to learn about how to use jOOQ in every day's work. The
    +						jOOQ DSL is the main way to create and execute jOOQ queries almost as
    +						if SQL was embedded in Java directly
    +					</fo:block>
    +				</fo:block>
    +</fo:list-item-body>
    +</fo:list-item>
    +				<fo:list-item>
    +<fo:list-item-label>
    +<fo:block font-size="11pt" page-break-inside="avoid">-</fo:block>
    +</fo:list-item-label>
    +<fo:list-item-body start-indent="body-start()">
    +<fo:block font-size="11pt" page-break-inside="avoid">
    +					<fo:basic-link font-size="11pt" color="#882222" font-weight="bold" text-shadow="0 1px 2px #666666" internal-destination="ADVANCED">Advanced topics</fo:basic-link>
    +					<fo:block font-size="11pt">
    +						Some advanced topics including not-everyday functionality
    +					</fo:block>
    +				</fo:block>
    +</fo:list-item-body>
    +</fo:list-item>
    +			</fo:list-block>
    +</fo:block>
    +		<fo:block break-after="page"/>
    +<fo:block font-family="Georgia" font-size="16pt" padding-top="10pt" padding-bottom="10pt" page-break-after="avoid">Table of contents</fo:block>
    +<fo:block margin-bottom="6pt">
    +<fo:list-block>
    +<fo:list-item>
    +<fo:list-item-label>
    +<fo:block font-size="11pt" page-break-inside="avoid">1.</fo:block>
    +</fo:list-item-label>
    +<fo:list-item-body start-indent="body-start()">
    +<fo:block font-size="11pt" page-break-inside="avoid">
    +<fo:block text-align-last="justify">
    +<fo:inline>
    +<fo:basic-link internal-destination="JOOQ">jOOQ classes and their usage<fo:leader leader-pattern="dots"/>
    +<fo:page-number-citation ref-id="JOOQ"/>
    +</fo:basic-link>
    +</fo:inline>
    +</fo:block>
    +<fo:block margin-bottom="6pt">
    +<fo:list-block>
    +<fo:list-item>
    +<fo:list-item-label>
    +<fo:block font-size="11pt" page-break-inside="avoid">1.</fo:block>
    +</fo:list-item-label>
    +<fo:list-item-body start-indent="body-start()">
    +<fo:block font-size="11pt" page-break-inside="avoid">
    +<fo:block text-align-last="justify">
    +<fo:inline>
    +<fo:basic-link internal-destination="ExampleDatabase">The example database<fo:leader leader-pattern="dots"/>
    +<fo:page-number-citation ref-id="ExampleDatabase"/>
    +</fo:basic-link>
    +</fo:inline>
    +</fo:block>
    +</fo:block>
    +</fo:list-item-body>
    +</fo:list-item>
    +<fo:list-item>
    +<fo:list-item-label>
    +<fo:block font-size="11pt" page-break-inside="avoid">2.</fo:block>
    +</fo:list-item-label>
    +<fo:list-item-body start-indent="body-start()">
    +<fo:block font-size="11pt" page-break-inside="avoid">
    +<fo:block text-align-last="justify">
    +<fo:inline>
    +<fo:basic-link internal-destination="Factory">The Factory class<fo:leader leader-pattern="dots"/>
    +<fo:page-number-citation ref-id="Factory"/>
    +</fo:basic-link>
    +</fo:inline>
    +</fo:block>
    +</fo:block>
    +</fo:list-item-body>
    +</fo:list-item>
    +<fo:list-item>
    +<fo:list-item-label>
    +<fo:block font-size="11pt" page-break-inside="avoid">3.</fo:block>
    +</fo:list-item-label>
    +<fo:list-item-body start-indent="body-start()">
    +<fo:block font-size="11pt" page-break-inside="avoid">
    +<fo:block text-align-last="justify">
    +<fo:inline>
    +<fo:basic-link internal-destination="Table">Tables and Fields<fo:leader leader-pattern="dots"/>
    +<fo:page-number-citation ref-id="Table"/>
    +</fo:basic-link>
    +</fo:inline>
    +</fo:block>
    +</fo:block>
    +</fo:list-item-body>
    +</fo:list-item>
    +<fo:list-item>
    +<fo:list-item-label>
    +<fo:block font-size="11pt" page-break-inside="avoid">4.</fo:block>
    +</fo:list-item-label>
    +<fo:list-item-body start-indent="body-start()">
    +<fo:block font-size="11pt" page-break-inside="avoid">
    +<fo:block text-align-last="justify">
    +<fo:inline>
    +<fo:basic-link internal-destination="Result">Results and Records<fo:leader leader-pattern="dots"/>
    +<fo:page-number-citation ref-id="Result"/>
    +</fo:basic-link>
    +</fo:inline>
    +</fo:block>
    +</fo:block>
    +</fo:list-item-body>
    +</fo:list-item>
    +<fo:list-item>
    +<fo:list-item-label>
    +<fo:block font-size="11pt" page-break-inside="avoid">5.</fo:block>
    +</fo:list-item-label>
    +<fo:list-item-body start-indent="body-start()">
    +<fo:block font-size="11pt" page-break-inside="avoid">
    +<fo:block text-align-last="justify">
    +<fo:inline>
    +<fo:basic-link internal-destination="UpdatableRecord">Updatable Records<fo:leader leader-pattern="dots"/>
    +<fo:page-number-citation ref-id="UpdatableRecord"/>
    +</fo:basic-link>
    +</fo:inline>
    +</fo:block>
    +</fo:block>
    +</fo:list-item-body>
    +</fo:list-item>
    +<fo:list-item>
    +<fo:list-item-label>
    +<fo:block font-size="11pt" page-break-inside="avoid">6.</fo:block>
    +</fo:list-item-label>
    +<fo:list-item-body start-indent="body-start()">
    +<fo:block font-size="11pt" page-break-inside="avoid">
    +<fo:block text-align-last="justify">
    +<fo:inline>
    +<fo:basic-link internal-destination="Query">The Query and its various subtypes<fo:leader leader-pattern="dots"/>
    +<fo:page-number-citation ref-id="Query"/>
    +</fo:basic-link>
    +</fo:inline>
    +</fo:block>
    +</fo:block>
    +</fo:list-item-body>
    +</fo:list-item>
    +<fo:list-item>
    +<fo:list-item-label>
    +<fo:block font-size="11pt" page-break-inside="avoid">7.</fo:block>
    +</fo:list-item-label>
    +<fo:list-item-body start-indent="body-start()">
    +<fo:block font-size="11pt" page-break-inside="avoid">
    +<fo:block text-align-last="justify">
    +<fo:inline>
    +<fo:basic-link internal-destination="ResultQuery">ResultQuery and various ways of fetching data<fo:leader leader-pattern="dots"/>
    +<fo:page-number-citation ref-id="ResultQuery"/>
    +</fo:basic-link>
    +</fo:inline>
    +</fo:block>
    +</fo:block>
    +</fo:list-item-body>
    +</fo:list-item>
    +<fo:list-item>
    +<fo:list-item-label>
    +<fo:block font-size="11pt" page-break-inside="avoid">8.</fo:block>
    +</fo:list-item-label>
    +<fo:list-item-body start-indent="body-start()">
    +<fo:block font-size="11pt" page-break-inside="avoid">
    +<fo:block text-align-last="justify">
    +<fo:inline>
    +<fo:basic-link internal-destination="BindValues">Bind values<fo:leader leader-pattern="dots"/>
    +<fo:page-number-citation ref-id="BindValues"/>
    +</fo:basic-link>
    +</fo:inline>
    +</fo:block>
    +</fo:block>
    +</fo:list-item-body>
    +</fo:list-item>
    +<fo:list-item>
    +<fo:list-item-label>
    +<fo:block font-size="11pt" page-break-inside="avoid">9.</fo:block>
    +</fo:list-item-label>
    +<fo:list-item-body start-indent="body-start()">
    +<fo:block font-size="11pt" page-break-inside="avoid">
    +<fo:block text-align-last="justify">
    +<fo:inline>
    +<fo:basic-link internal-destination="QueryPart">QueryParts and the global architecture<fo:leader leader-pattern="dots"/>
    +<fo:page-number-citation ref-id="QueryPart"/>
    +</fo:basic-link>
    +</fo:inline>
    +</fo:block>
    +</fo:block>
    +</fo:list-item-body>
    +</fo:list-item>
    +<fo:list-item>
    +<fo:list-item-label>
    +<fo:block font-size="11pt" page-break-inside="avoid">10.</fo:block>
    +</fo:list-item-label>
    +<fo:list-item-body start-indent="body-start()">
    +<fo:block font-size="11pt" page-break-inside="avoid">
    +<fo:block text-align-last="justify">
    +<fo:inline>
    +<fo:basic-link internal-destination="Serializability">Serializability of QueryParts and Results<fo:leader leader-pattern="dots"/>
    +<fo:page-number-citation ref-id="Serializability"/>
    +</fo:basic-link>
    +</fo:inline>
    +</fo:block>
    +</fo:block>
    +</fo:list-item-body>
    +</fo:list-item>
    +<fo:list-item>
    +<fo:list-item-label>
    +<fo:block font-size="11pt" page-break-inside="avoid">11.</fo:block>
    +</fo:list-item-label>
    +<fo:list-item-body start-indent="body-start()">
    +<fo:block font-size="11pt" page-break-inside="avoid">
    +<fo:block text-align-last="justify">
    +<fo:inline>
    +<fo:basic-link internal-destination="Extend">Extend jOOQ with custom types<fo:leader leader-pattern="dots"/>
    +<fo:page-number-citation ref-id="Extend"/>
    +</fo:basic-link>
    +</fo:inline>
    +</fo:block>
    +</fo:block>
    +</fo:list-item-body>
    +</fo:list-item>
    +</fo:list-block>
    +</fo:block>
    +</fo:block>
    +</fo:list-item-body>
    +</fo:list-item>
    +<fo:list-item>
    +<fo:list-item-label>
    +<fo:block font-size="11pt" page-break-inside="avoid">2.</fo:block>
    +</fo:list-item-label>
    +<fo:list-item-body start-indent="body-start()">
    +<fo:block font-size="11pt" page-break-inside="avoid">
    +<fo:block text-align-last="justify">
    +<fo:inline>
    +<fo:basic-link internal-destination="META">Meta model code generation<fo:leader leader-pattern="dots"/>
    +<fo:page-number-citation ref-id="META"/>
    +</fo:basic-link>
    +</fo:inline>
    +</fo:block>
    +<fo:block margin-bottom="6pt">
    +<fo:list-block>
    +<fo:list-item>
    +<fo:list-item-label>
    +<fo:block font-size="11pt" page-break-inside="avoid">1.</fo:block>
    +</fo:list-item-label>
    +<fo:list-item-body start-indent="body-start()">
    +<fo:block font-size="11pt" page-break-inside="avoid">
    +<fo:block text-align-last="justify">
    +<fo:inline>
    +<fo:basic-link internal-destination="Configuration">Configuration and setup of the generator<fo:leader leader-pattern="dots"/>
    +<fo:page-number-citation ref-id="Configuration"/>
    +</fo:basic-link>
    +</fo:inline>
    +</fo:block>
    +</fo:block>
    +</fo:list-item-body>
    +</fo:list-item>
    +<fo:list-item>
    +<fo:list-item-label>
    +<fo:block font-size="11pt" page-break-inside="avoid">2.</fo:block>
    +</fo:list-item-label>
    +<fo:list-item-body start-indent="body-start()">
    +<fo:block font-size="11pt" page-break-inside="avoid">
    +<fo:block text-align-last="justify">
    +<fo:inline>
    +<fo:basic-link internal-destination="AdvancedConfiguration">Advanced configuration of the generator<fo:leader leader-pattern="dots"/>
    +<fo:page-number-citation ref-id="AdvancedConfiguration"/>
    +</fo:basic-link>
    +</fo:inline>
    +</fo:block>
    +</fo:block>
    +</fo:list-item-body>
    +</fo:list-item>
    +<fo:list-item>
    +<fo:list-item-label>
    +<fo:block font-size="11pt" page-break-inside="avoid">3.</fo:block>
    +</fo:list-item-label>
    +<fo:list-item-body start-indent="body-start()">
    +<fo:block font-size="11pt" page-break-inside="avoid">
    +<fo:block text-align-last="justify">
    +<fo:inline>
    +<fo:basic-link internal-destination="SCHEMA">The schema, top-level generated artefact<fo:leader leader-pattern="dots"/>
    +<fo:page-number-citation ref-id="SCHEMA"/>
    +</fo:basic-link>
    +</fo:inline>
    +</fo:block>
    +</fo:block>
    +</fo:list-item-body>
    +</fo:list-item>
    +<fo:list-item>
    +<fo:list-item-label>
    +<fo:block font-size="11pt" page-break-inside="avoid">4.</fo:block>
    +</fo:list-item-label>
    +<fo:list-item-body start-indent="body-start()">
    +<fo:block font-size="11pt" page-break-inside="avoid">
    +<fo:block text-align-last="justify">
    +<fo:inline>
    +<fo:basic-link internal-destination="TABLE">Tables, views and their corresponding records<fo:leader leader-pattern="dots"/>
    +<fo:page-number-citation ref-id="TABLE"/>
    +</fo:basic-link>
    +</fo:inline>
    +</fo:block>
    +</fo:block>
    +</fo:list-item-body>
    +</fo:list-item>
    +<fo:list-item>
    +<fo:list-item-label>
    +<fo:block font-size="11pt" page-break-inside="avoid">5.</fo:block>
    +</fo:list-item-label>
    +<fo:list-item-body start-indent="body-start()">
    +<fo:block font-size="11pt" page-break-inside="avoid">
    +<fo:block text-align-last="justify">
    +<fo:inline>
    +<fo:basic-link internal-destination="PROCEDURE">Procedures and packages<fo:leader leader-pattern="dots"/>
    +<fo:page-number-citation ref-id="PROCEDURE"/>
    +</fo:basic-link>
    +</fo:inline>
    +</fo:block>
    +</fo:block>
    +</fo:list-item-body>
    +</fo:list-item>
    +<fo:list-item>
    +<fo:list-item-label>
    +<fo:block font-size="11pt" page-break-inside="avoid">6.</fo:block>
    +</fo:list-item-label>
    +<fo:list-item-body start-indent="body-start()">
    +<fo:block font-size="11pt" page-break-inside="avoid">
    +<fo:block text-align-last="justify">
    +<fo:inline>
    +<fo:basic-link internal-destination="UDT">UDT's including ARRAY and ENUM types<fo:leader leader-pattern="dots"/>
    +<fo:page-number-citation ref-id="UDT"/>
    +</fo:basic-link>
    +</fo:inline>
    +</fo:block>
    +</fo:block>
    +</fo:list-item-body>
    +</fo:list-item>
    +<fo:list-item>
    +<fo:list-item-label>
    +<fo:block font-size="11pt" page-break-inside="avoid">7.</fo:block>
    +</fo:list-item-label>
    +<fo:list-item-body start-indent="body-start()">
    +<fo:block font-size="11pt" page-break-inside="avoid">
    +<fo:block text-align-last="justify">
    +<fo:inline>
    +<fo:basic-link internal-destination="SEQUENCE">Sequences<fo:leader leader-pattern="dots"/>
    +<fo:page-number-citation ref-id="SEQUENCE"/>
    +</fo:basic-link>
    +</fo:inline>
    +</fo:block>
    +</fo:block>
    +</fo:list-item-body>
    +</fo:list-item>
    +</fo:list-block>
    +</fo:block>
    +</fo:block>
    +</fo:list-item-body>
    +</fo:list-item>
    +<fo:list-item>
    +<fo:list-item-label>
    +<fo:block font-size="11pt" page-break-inside="avoid">3.</fo:block>
    +</fo:list-item-label>
    +<fo:list-item-body start-indent="body-start()">
    +<fo:block font-size="11pt" page-break-inside="avoid">
    +<fo:block text-align-last="justify">
    +<fo:inline>
    +<fo:basic-link internal-destination="DSL">DSL or fluent API. Where SQL meets Java<fo:leader leader-pattern="dots"/>
    +<fo:page-number-citation ref-id="DSL"/>
    +</fo:basic-link>
    +</fo:inline>
    +</fo:block>
    +<fo:block margin-bottom="6pt">
    +<fo:list-block>
    +<fo:list-item>
    +<fo:list-item-label>
    +<fo:block font-size="11pt" page-break-inside="avoid">1.</fo:block>
    +</fo:list-item-label>
    +<fo:list-item-body start-indent="body-start()">
    +<fo:block font-size="11pt" page-break-inside="avoid">
    +<fo:block text-align-last="justify">
    +<fo:inline>
    +<fo:basic-link internal-destination="SELECT">Complete SELECT syntax<fo:leader leader-pattern="dots"/>
    +<fo:page-number-citation ref-id="SELECT"/>
    +</fo:basic-link>
    +</fo:inline>
    +</fo:block>
    +</fo:block>
    +</fo:list-item-body>
    +</fo:list-item>
    +<fo:list-item>
    +<fo:list-item-label>
    +<fo:block font-size="11pt" page-break-inside="avoid">2.</fo:block>
    +</fo:list-item-label>
    +<fo:list-item-body start-indent="body-start()">
    +<fo:block font-size="11pt" page-break-inside="avoid">
    +<fo:block text-align-last="justify">
    +<fo:inline>
    +<fo:basic-link internal-destination="TABLESOURCE">Table sources<fo:leader leader-pattern="dots"/>
    +<fo:page-number-citation ref-id="TABLESOURCE"/>
    +</fo:basic-link>
    +</fo:inline>
    +</fo:block>
    +</fo:block>
    +</fo:list-item-body>
    +</fo:list-item>
    +<fo:list-item>
    +<fo:list-item-label>
    +<fo:block font-size="11pt" page-break-inside="avoid">3.</fo:block>
    +</fo:list-item-label>
    +<fo:list-item-body start-indent="body-start()">
    +<fo:block font-size="11pt" page-break-inside="avoid">
    +<fo:block text-align-last="justify">
    +<fo:inline>
    +<fo:basic-link internal-destination="CONDITION">Conditions<fo:leader leader-pattern="dots"/>
    +<fo:page-number-citation ref-id="CONDITION"/>
    +</fo:basic-link>
    +</fo:inline>
    +</fo:block>
    +</fo:block>
    +</fo:list-item-body>
    +</fo:list-item>
    +<fo:list-item>
    +<fo:list-item-label>
    +<fo:block font-size="11pt" page-break-inside="avoid">4.</fo:block>
    +</fo:list-item-label>
    +<fo:list-item-body start-indent="body-start()">
    +<fo:block font-size="11pt" page-break-inside="avoid">
    +<fo:block text-align-last="justify">
    +<fo:inline>
    +<fo:basic-link internal-destination="ALIAS">Aliased tables and fields<fo:leader leader-pattern="dots"/>
    +<fo:page-number-citation ref-id="ALIAS"/>
    +</fo:basic-link>
    +</fo:inline>
    +</fo:block>
    +</fo:block>
    +</fo:list-item-body>
    +</fo:list-item>
    +<fo:list-item>
    +<fo:list-item-label>
    +<fo:block font-size="11pt" page-break-inside="avoid">5.</fo:block>
    +</fo:list-item-label>
    +<fo:list-item-body start-indent="body-start()">
    +<fo:block font-size="11pt" page-break-inside="avoid">
    +<fo:block text-align-last="justify">
    +<fo:inline>
    +<fo:basic-link internal-destination="IN">Nested SELECT using the IN operator<fo:leader leader-pattern="dots"/>
    +<fo:page-number-citation ref-id="IN"/>
    +</fo:basic-link>
    +</fo:inline>
    +</fo:block>
    +</fo:block>
    +</fo:list-item-body>
    +</fo:list-item>
    +<fo:list-item>
    +<fo:list-item-label>
    +<fo:block font-size="11pt" page-break-inside="avoid">6.</fo:block>
    +</fo:list-item-label>
    +<fo:list-item-body start-indent="body-start()">
    +<fo:block font-size="11pt" page-break-inside="avoid">
    +<fo:block text-align-last="justify">
    +<fo:inline>
    +<fo:basic-link internal-destination="EXISTS">Nested SELECT using the EXISTS operator<fo:leader leader-pattern="dots"/>
    +<fo:page-number-citation ref-id="EXISTS"/>
    +</fo:basic-link>
    +</fo:inline>
    +</fo:block>
    +</fo:block>
    +</fo:list-item-body>
    +</fo:list-item>
    +<fo:list-item>
    +<fo:list-item-label>
    +<fo:block font-size="11pt" page-break-inside="avoid">7.</fo:block>
    +</fo:list-item-label>
    +<fo:list-item-body start-indent="body-start()">
    +<fo:block font-size="11pt" page-break-inside="avoid">
    +<fo:block text-align-last="justify">
    +<fo:inline>
    +<fo:basic-link internal-destination="NESTED">Other types of nested SELECT<fo:leader leader-pattern="dots"/>
    +<fo:page-number-citation ref-id="NESTED"/>
    +</fo:basic-link>
    +</fo:inline>
    +</fo:block>
    +</fo:block>
    +</fo:list-item-body>
    +</fo:list-item>
    +<fo:list-item>
    +<fo:list-item-label>
    +<fo:block font-size="11pt" page-break-inside="avoid">8.</fo:block>
    +</fo:list-item-label>
    +<fo:list-item-body start-indent="body-start()">
    +<fo:block font-size="11pt" page-break-inside="avoid">
    +<fo:block text-align-last="justify">
    +<fo:inline>
    +<fo:basic-link internal-destination="UNION">UNION and other set operations<fo:leader leader-pattern="dots"/>
    +<fo:page-number-citation ref-id="UNION"/>
    +</fo:basic-link>
    +</fo:inline>
    +</fo:block>
    +</fo:block>
    +</fo:list-item-body>
    +</fo:list-item>
    +<fo:list-item>
    +<fo:list-item-label>
    +<fo:block font-size="11pt" page-break-inside="avoid">9.</fo:block>
    +</fo:list-item-label>
    +<fo:list-item-body start-indent="body-start()">
    +<fo:block font-size="11pt" page-break-inside="avoid">
    +<fo:block text-align-last="justify">
    +<fo:inline>
    +<fo:basic-link internal-destination="FUNCTIONS">Functions and aggregate operators<fo:leader leader-pattern="dots"/>
    +<fo:page-number-citation ref-id="FUNCTIONS"/>
    +</fo:basic-link>
    +</fo:inline>
    +</fo:block>
    +</fo:block>
    +</fo:list-item-body>
    +</fo:list-item>
    +<fo:list-item>
    +<fo:list-item-label>
    +<fo:block font-size="11pt" page-break-inside="avoid">10.</fo:block>
    +</fo:list-item-label>
    +<fo:list-item-body start-indent="body-start()">
    +<fo:block font-size="11pt" page-break-inside="avoid">
    +<fo:block text-align-last="justify">
    +<fo:inline>
    +<fo:basic-link internal-destination="PROCEDURES">Stored procedures and functions<fo:leader leader-pattern="dots"/>
    +<fo:page-number-citation ref-id="PROCEDURES"/>
    +</fo:basic-link>
    +</fo:inline>
    +</fo:block>
    +</fo:block>
    +</fo:list-item-body>
    +</fo:list-item>
    +<fo:list-item>
    +<fo:list-item-label>
    +<fo:block font-size="11pt" page-break-inside="avoid">11.</fo:block>
    +</fo:list-item-label>
    +<fo:list-item-body start-indent="body-start()">
    +<fo:block font-size="11pt" page-break-inside="avoid">
    +<fo:block text-align-last="justify">
    +<fo:inline>
    +<fo:basic-link internal-destination="ARITHMETIC">Arithmetic operations and concatenation<fo:leader leader-pattern="dots"/>
    +<fo:page-number-citation ref-id="ARITHMETIC"/>
    +</fo:basic-link>
    +</fo:inline>
    +</fo:block>
    +</fo:block>
    +</fo:list-item-body>
    +</fo:list-item>
    +<fo:list-item>
    +<fo:list-item-label>
    +<fo:block font-size="11pt" page-break-inside="avoid">12.</fo:block>
    +</fo:list-item-label>
    +<fo:list-item-body start-indent="body-start()">
    +<fo:block font-size="11pt" page-break-inside="avoid">
    +<fo:block text-align-last="justify">
    +<fo:inline>
    +<fo:basic-link internal-destination="CASE">The CASE clause<fo:leader leader-pattern="dots"/>
    +<fo:page-number-citation ref-id="CASE"/>
    +</fo:basic-link>
    +</fo:inline>
    +</fo:block>
    +</fo:block>
    +</fo:list-item-body>
    +</fo:list-item>
    +<fo:list-item>
    +<fo:list-item-label>
    +<fo:block font-size="11pt" page-break-inside="avoid">13.</fo:block>
    +</fo:list-item-label>
    +<fo:list-item-body start-indent="body-start()">
    +<fo:block font-size="11pt" page-break-inside="avoid">
    +<fo:block text-align-last="justify">
    +<fo:inline>
    +<fo:basic-link internal-destination="CAST">Type casting<fo:leader leader-pattern="dots"/>
    +<fo:page-number-citation ref-id="CAST"/>
    +</fo:basic-link>
    +</fo:inline>
    +</fo:block>
    +</fo:block>
    +</fo:list-item-body>
    +</fo:list-item>
    +<fo:list-item>
    +<fo:list-item-label>
    +<fo:block font-size="11pt" page-break-inside="avoid">14.</fo:block>
    +</fo:list-item-label>
    +<fo:list-item-body start-indent="body-start()">
    +<fo:block font-size="11pt" page-break-inside="avoid">
    +<fo:block text-align-last="justify">
    +<fo:inline>
    +<fo:basic-link internal-destination="SQL">When it's just easier: Plain SQL<fo:leader leader-pattern="dots"/>
    +<fo:page-number-citation ref-id="SQL"/>
    +</fo:basic-link>
    +</fo:inline>
    +</fo:block>
    +</fo:block>
    +</fo:list-item-body>
    +</fo:list-item>
    +</fo:list-block>
    +</fo:block>
    +</fo:block>
    +</fo:list-item-body>
    +</fo:list-item>
    +<fo:list-item>
    +<fo:list-item-label>
    +<fo:block font-size="11pt" page-break-inside="avoid">4.</fo:block>
    +</fo:list-item-label>
    +<fo:list-item-body start-indent="body-start()">
    +<fo:block font-size="11pt" page-break-inside="avoid">
    +<fo:block text-align-last="justify">
    +<fo:inline>
    +<fo:basic-link internal-destination="ADVANCED">Advanced topics<fo:leader leader-pattern="dots"/>
    +<fo:page-number-citation ref-id="ADVANCED"/>
    +</fo:basic-link>
    +</fo:inline>
    +</fo:block>
    +<fo:block margin-bottom="6pt">
    +<fo:list-block>
    +<fo:list-item>
    +<fo:list-item-label>
    +<fo:block font-size="11pt" page-break-inside="avoid">1.</fo:block>
    +</fo:list-item-label>
    +<fo:list-item-body start-indent="body-start()">
    +<fo:block font-size="11pt" page-break-inside="avoid">
    +<fo:block text-align-last="justify">
    +<fo:inline>
    +<fo:basic-link internal-destination="MasterData">Master data generation. Enumeration tables<fo:leader leader-pattern="dots"/>
    +<fo:page-number-citation ref-id="MasterData"/>
    +</fo:basic-link>
    +</fo:inline>
    +</fo:block>
    +</fo:block>
    +</fo:list-item-body>
    +</fo:list-item>
    +<fo:list-item>
    +<fo:list-item-label>
    +<fo:block font-size="11pt" page-break-inside="avoid">2.</fo:block>
    +</fo:list-item-label>
    +<fo:list-item-body start-indent="body-start()">
    +<fo:block font-size="11pt" page-break-inside="avoid">
    +<fo:block text-align-last="justify">
    +<fo:inline>
    +<fo:basic-link internal-destination="CustomTypes">Custom data types and type conversion<fo:leader leader-pattern="dots"/>
    +<fo:page-number-citation ref-id="CustomTypes"/>
    +</fo:basic-link>
    +</fo:inline>
    +</fo:block>
    +</fo:block>
    +</fo:list-item-body>
    +</fo:list-item>
    +<fo:list-item>
    +<fo:list-item-label>
    +<fo:block font-size="11pt" page-break-inside="avoid">3.</fo:block>
    +</fo:list-item-label>
    +<fo:list-item-body start-indent="body-start()">
    +<fo:block font-size="11pt" page-break-inside="avoid">
    +<fo:block text-align-last="justify">
    +<fo:inline>
    +<fo:basic-link internal-destination="SchemaMapping">Mapping generated schemata and tables<fo:leader leader-pattern="dots"/>
    +<fo:page-number-citation ref-id="SchemaMapping"/>
    +</fo:basic-link>
    +</fo:inline>
    +</fo:block>
    +</fo:block>
    +</fo:list-item-body>
    +</fo:list-item>
    +<fo:list-item>
    +<fo:list-item-label>
    +<fo:block font-size="11pt" page-break-inside="avoid">4.</fo:block>
    +</fo:list-item-label>
    +<fo:list-item-body start-indent="body-start()">
    +<fo:block font-size="11pt" page-break-inside="avoid">
    +<fo:block text-align-last="justify">
    +<fo:inline>
    +<fo:basic-link internal-destination="ExecuteListener">Execute listeners and the jOOQ Console<fo:leader leader-pattern="dots"/>
    +<fo:page-number-citation ref-id="ExecuteListener"/>
    +</fo:basic-link>
    +</fo:inline>
    +</fo:block>
    +</fo:block>
    +</fo:list-item-body>
    +</fo:list-item>
    +<fo:list-item>
    +<fo:list-item-label>
    +<fo:block font-size="11pt" page-break-inside="avoid">5.</fo:block>
    +</fo:list-item-label>
    +<fo:list-item-body start-indent="body-start()">
    +<fo:block font-size="11pt" page-break-inside="avoid">
    +<fo:block text-align-last="justify">
    +<fo:inline>
    +<fo:basic-link internal-destination="OracleHints">Adding Oracle hints to queries<fo:leader leader-pattern="dots"/>
    +<fo:page-number-citation ref-id="OracleHints"/>
    +</fo:basic-link>
    +</fo:inline>
    +</fo:block>
    +</fo:block>
    +</fo:list-item-body>
    +</fo:list-item>
    +<fo:list-item>
    +<fo:list-item-label>
    +<fo:block font-size="11pt" page-break-inside="avoid">6.</fo:block>
    +</fo:list-item-label>
    +<fo:list-item-body start-indent="body-start()">
    +<fo:block font-size="11pt" page-break-inside="avoid">
    +<fo:block text-align-last="justify">
    +<fo:inline>
    +<fo:basic-link internal-destination="CONNECTBY">The Oracle CONNECT BY clause<fo:leader leader-pattern="dots"/>
    +<fo:page-number-citation ref-id="CONNECTBY"/>
    +</fo:basic-link>
    +</fo:inline>
    +</fo:block>
    +</fo:block>
    +</fo:list-item-body>
    +</fo:list-item>
    +<fo:list-item>
    +<fo:list-item-label>
    +<fo:block font-size="11pt" page-break-inside="avoid">7.</fo:block>
    +</fo:list-item-label>
    +<fo:list-item-body start-indent="body-start()">
    +<fo:block font-size="11pt" page-break-inside="avoid">
    +<fo:block text-align-last="justify">
    +<fo:inline>
    +<fo:basic-link internal-destination="PIVOT">The Oracle 11g PIVOT clause<fo:leader leader-pattern="dots"/>
    +<fo:page-number-citation ref-id="PIVOT"/>
    +</fo:basic-link>
    +</fo:inline>
    +</fo:block>
    +</fo:block>
    +</fo:list-item-body>
    +</fo:list-item>
    +<fo:list-item>
    +<fo:list-item-label>
    +<fo:block font-size="11pt" page-break-inside="avoid">8.</fo:block>
    +</fo:list-item-label>
    +<fo:list-item-body start-indent="body-start()">
    +<fo:block font-size="11pt" page-break-inside="avoid">
    +<fo:block text-align-last="justify">
    +<fo:inline>
    +<fo:basic-link internal-destination="DIVISION">jOOQ's relational division syntax<fo:leader leader-pattern="dots"/>
    +<fo:page-number-citation ref-id="DIVISION"/>
    +</fo:basic-link>
    +</fo:inline>
    +</fo:block>
    +</fo:block>
    +</fo:list-item-body>
    +</fo:list-item>
    +<fo:list-item>
    +<fo:list-item-label>
    +<fo:block font-size="11pt" page-break-inside="avoid">9.</fo:block>
    +</fo:list-item-label>
    +<fo:list-item-body start-indent="body-start()">
    +<fo:block font-size="11pt" page-break-inside="avoid">
    +<fo:block text-align-last="justify">
    +<fo:inline>
    +<fo:basic-link internal-destination="Export">Exporting to XML, CSV, JSON, HTML, Text<fo:leader leader-pattern="dots"/>
    +<fo:page-number-citation ref-id="Export"/>
    +</fo:basic-link>
    +</fo:inline>
    +</fo:block>
    +</fo:block>
    +</fo:list-item-body>
    +</fo:list-item>
    +<fo:list-item>
    +<fo:list-item-label>
    +<fo:block font-size="11pt" page-break-inside="avoid">10.</fo:block>
    +</fo:list-item-label>
    +<fo:list-item-body start-indent="body-start()">
    +<fo:block font-size="11pt" page-break-inside="avoid">
    +<fo:block text-align-last="justify">
    +<fo:inline>
    +<fo:basic-link internal-destination="Import">Importing data from XML, CSV<fo:leader leader-pattern="dots"/>
    +<fo:page-number-citation ref-id="Import"/>
    +</fo:basic-link>
    +</fo:inline>
    +</fo:block>
    +</fo:block>
    +</fo:list-item-body>
    +</fo:list-item>
    +<fo:list-item>
    +<fo:list-item-label>
    +<fo:block font-size="11pt" page-break-inside="avoid">11.</fo:block>
    +</fo:list-item-label>
    +<fo:list-item-body start-indent="body-start()">
    +<fo:block font-size="11pt" page-break-inside="avoid">
    +<fo:block text-align-last="justify">
    +<fo:inline>
    +<fo:basic-link internal-destination="Batch">Using JDBC batch operations<fo:leader leader-pattern="dots"/>
    +<fo:page-number-citation ref-id="Batch"/>
    +</fo:basic-link>
    +</fo:inline>
    +</fo:block>
    +</fo:block>
    +</fo:list-item-body>
    +</fo:list-item>
    +</fo:list-block>
    +</fo:block>
    +</fo:block>
    +</fo:list-item-body>
    +</fo:list-item>
    +</fo:list-block>
    +</fo:block>
    +<fo:block break-after="page"/>
    +<fo:block font-family="Georgia" font-size="18pt" padding-top="12pt" padding-bottom="12pt" page-break-after="avoid" id="JOOQ">
    +<fo:marker marker-class-name="section">
    +<fo:block>1. jOOQ classes and their usage</fo:block>
    +</fo:marker>1. jOOQ classes and their usage</fo:block>
    +<fo:block font-size="11pt">
    +					In these sections, you will learn about how to use jOOQ object
    +					factories and the jOOQ query model, to express
    +					your SQL in jOOQ
    +				</fo:block>
    +					<fo:block font-family="Georgia" font-size="16pt" padding-top="10pt" padding-bottom="10pt" page-break-after="avoid">Overview</fo:block>
    +					<fo:block font-size="11pt">jOOQ essentially has two packages:</fo:block>
    +					<fo:block padding-top="16pt" padding-bottom="16pt" page-break-inside="avoid">
    +<fo:list-block>
    +						<fo:list-item>
    +<fo:list-item-label>
    +<fo:block font-size="11pt" page-break-inside="avoid">-</fo:block>
    +</fo:list-item-label>
    +<fo:list-item-body start-indent="body-start()">
    +<fo:block font-size="11pt" page-break-inside="avoid">org.jooq: the jOOQ API. Here you will find interfaces for all
    +							SQL concepts
    +						</fo:block>
    +</fo:list-item-body>
    +</fo:list-item>
    +						<fo:list-item>
    +<fo:list-item-label>
    +<fo:block font-size="11pt" page-break-inside="avoid">-</fo:block>
    +</fo:list-item-label>
    +<fo:list-item-body start-indent="body-start()">
    +<fo:block font-size="11pt" page-break-inside="avoid">org.jooq.impl: the jOOQ implementation and factories. Most
    +							implementation classes are package private, you can only access
    +							them using the <fo:basic-link font-size="11pt" color="#882222" font-weight="bold" text-shadow="0 1px 2px #666666" internal-destination="Factory">org.jooq.impl.Factory</fo:basic-link>
    +						</fo:block>
    +</fo:list-item-body>
    +</fo:list-item>
    +					</fo:list-block>
    +</fo:block>
    +					<fo:block font-size="11pt">
    +						This section is about the main jOOQ classes and the global
    +						architecture. Most of the time, however, you will be using the
    +						<fo:basic-link font-size="11pt" color="#882222" font-weight="bold" text-shadow="0 1px 2px #666666" internal-destination="DSL">DSL or fluent API. Where SQL meets Java</fo:basic-link>
    +						in order to create queries
    +						the way you're used to in SQL
    +					</fo:block>
    +				<fo:block font-family="Georgia" font-size="18pt" padding-top="12pt" padding-bottom="12pt" page-break-after="avoid" id="ExampleDatabase">
    +<fo:marker marker-class-name="section">
    +<fo:block>1.1. The example database</fo:block>
    +</fo:marker>1.1. The example database</fo:block>
    +<fo:block font-size="11pt">
    +							For the examples in this manual, the same database will always be
    +							referred to. It essentially consists of these entities created using
    +							the Oracle dialect
    +						</fo:block>
    +							<fo:block font-family="Georgia" font-size="16pt" padding-top="10pt" padding-bottom="10pt" page-break-after="avoid">Example CREATE TABLE statements</fo:block>
    +<fo:block font-family="Courier" linefeed-treatment="preserve" white-space-collapse="false" white-space-treatment="preserve" font-size="6pt" margin="12pt" padding="4pt" border="2px solid #882222" background-color="#FFEEDD" page-break-inside="avoid">CREATE TABLE t_language (
    +  id NUMBER(7) NOT NULL PRIMARY KEY,
    +  cd CHAR(2) NOT NULL,
    +  description VARCHAR2(50)
    +)
    +
    +CREATE TABLE t_author (
    +  id NUMBER(7) NOT NULL PRIMARY KEY,
    +  first_name VARCHAR2(50),
    +  last_name VARCHAR2(50) NOT NULL,
    +  date_of_birth DATE,
    +  year_of_birth NUMBER(7)
    +)
    +
    +CREATE TABLE t_book (
    +  id NUMBER(7) NOT NULL PRIMARY KEY,
    +  author_id NUMBER(7) NOT NULL,
    +  title VARCHAR2(400) NOT NULL,
    +  published_in NUMBER(7) NOT NULL,
    +  language_id NUMBER(7) NOT NULL,
    +  FOREIGN KEY (AUTHOR_ID) REFERENCES T_AUTHOR(ID),
    +  FOREIGN KEY (LANGUAGE_ID) REFERENCES T_LANGUAGE(ID)
    +)
    +
    +CREATE TABLE t_book_store (
    +  name VARCHAR2(400) NOT NULL UNIQUE
    +)
    +
    +CREATE TABLE t_book_to_book_store (
    +  book_store_name VARCHAR2(400) NOT NULL,
    +  book_id INTEGER NOT NULL,
    +  stock INTEGER,
    +  PRIMARY KEY(book_store_name, book_id),
    +  CONSTRAINT b2bs_book_store_id
    +    FOREIGN KEY (book_store_name)
    +    REFERENCES t_book_store (name)
    +    ON DELETE CASCADE,
    +  CONSTRAINT b2bs_book_id
    +    FOREIGN KEY (book_id)
    +    REFERENCES t_book (id)
    +    ON DELETE CASCADE
    +)</fo:block>
    +							<fo:block font-size="11pt">
    +								More entities, types (e.g. UDT's, ARRAY types, ENUM types, etc),
    +								stored procedures and packages are introduced for specific examples
    +							</fo:block>
    +						<fo:block font-family="Georgia" font-size="18pt" padding-top="12pt" padding-bottom="12pt" page-break-after="avoid" id="Factory">
    +<fo:marker marker-class-name="section">
    +<fo:block>1.2. The Factory class</fo:block>
    +</fo:marker>1.2. The Factory class</fo:block>
    +<fo:block font-size="11pt">
    +							jOOQ hides most implementation facts from you by letting you
    +							use the jOOQ Factory as a single entry point to all of the jOOQ API.
    +							This way, you can discover all of the API using syntax auto-completion, for
    +							instance.
    +						</fo:block>
    +							<fo:block font-family="Georgia" font-size="16pt" padding-top="10pt" padding-bottom="10pt" page-break-after="avoid">The Factory and the jOOQ API</fo:block>
    +							<fo:block font-size="11pt">
    +								jOOQ exposes a lot of interfaces and hides most implementation facts
    +								from client code. The reasons for this are:
    +							</fo:block>
    +							<fo:block padding-top="16pt" padding-bottom="16pt" page-break-inside="avoid">
    +<fo:list-block>
    +								<fo:list-item>
    +<fo:list-item-label>
    +<fo:block font-size="11pt" page-break-inside="avoid">-</fo:block>
    +</fo:list-item-label>
    +<fo:list-item-body start-indent="body-start()">
    +<fo:block font-size="11pt" page-break-inside="avoid">Interface-driven design. This allows for modelling queries in a fluent API most efficiently</fo:block>
    +</fo:list-item-body>
    +</fo:list-item>
    +								<fo:list-item>
    +<fo:list-item-label>
    +<fo:block font-size="11pt" page-break-inside="avoid">-</fo:block>
    +</fo:list-item-label>
    +<fo:list-item-body start-indent="body-start()">
    +<fo:block font-size="11pt" page-break-inside="avoid">Reduction of complexity for client code.</fo:block>
    +</fo:list-item-body>
    +</fo:list-item>
    +								<fo:list-item>
    +<fo:list-item-label>
    +<fo:block font-size="11pt" page-break-inside="avoid">-</fo:block>
    +</fo:list-item-label>
    +<fo:list-item-body start-indent="body-start()">
    +<fo:block font-size="11pt" page-break-inside="avoid">API guarantee. You only depend on the exposed interfaces, not concrete (potentially dialect-specific) implementations.</fo:block>
    +</fo:list-item-body>
    +</fo:list-item>
    +							</fo:list-block>
    +</fo:block>
    +							<fo:block font-size="11pt">
    +								The <fo:basic-link font-size="11pt" color="#882222" font-weight="bold" text-shadow="0 1px 2px #666666" external-destination="url('http://www.jooq.org/javadoc/latest/org/jooq/impl/Factory.html')">org.jooq.impl.Factory</fo:basic-link>
    +								class is the main class from where you will create all jOOQ objects.
    +								The Factory implements <fo:basic-link font-size="11pt" color="#882222" font-weight="bold" text-shadow="0 1px 2px #666666" external-destination="url('http://www.jooq.org/javadoc/latest/org/jooq/Configuration.html')">org.jooq.Configuration</fo:basic-link>
    +								and needs to be instanciated with the Configuration's properties:
    +							</fo:block>
    +							<fo:block padding-top="16pt" padding-bottom="16pt" page-break-inside="avoid">
    +<fo:list-block>
    +								<fo:list-item>
    +<fo:list-item-label>
    +<fo:block font-size="11pt" page-break-inside="avoid">-</fo:block>
    +</fo:list-item-label>
    +<fo:list-item-body start-indent="body-start()">
    +<fo:block font-size="11pt" page-break-inside="avoid">
    +<fo:basic-link font-size="11pt" color="#882222" font-weight="bold" text-shadow="0 1px 2px #666666" external-destination="url('http://www.jooq.org/javadoc/latest/org/jooq/SQLDialect.html')">org.jooq.SQLDialect</fo:basic-link> :
    +								The dialect of your database. This may be any of the currently
    +								supported database types</fo:block>
    +</fo:list-item-body>
    +</fo:list-item>
    +								<fo:list-item>
    +<fo:list-item-label>
    +<fo:block font-size="11pt" page-break-inside="avoid">-</fo:block>
    +</fo:list-item-label>
    +<fo:list-item-body start-indent="body-start()">
    +<fo:block font-size="11pt" page-break-inside="avoid">
    +<fo:basic-link font-size="11pt" color="#882222" font-weight="bold" text-shadow="0 1px 2px #666666" external-destination="url('http://download.oracle.com/javase/6/docs/api/java/sql/Connection.html')">java.sql.Connection</fo:basic-link> :
    +								A JDBC Connection that will be re-used for the whole
    +    							lifecycle of your Factory</fo:block>
    +</fo:list-item-body>
    +</fo:list-item>
    +    							<fo:list-item>
    +<fo:list-item-label>
    +<fo:block font-size="11pt" page-break-inside="avoid">-</fo:block>
    +</fo:list-item-label>
    +<fo:list-item-body start-indent="body-start()">
    +<fo:block font-size="11pt" page-break-inside="avoid">
    +<fo:basic-link font-size="11pt" color="#882222" font-weight="bold" text-shadow="0 1px 2px #666666" external-destination="url('http://www.jooq.org/javadoc/latest/org/jooq/conf/Settings.html')">org.jooq.conf.Settings</fo:basic-link> :
    +    							An optional runtime configuration.</fo:block>
    +</fo:list-item-body>
    +</fo:list-item>
    +							</fo:list-block>
    +</fo:block>
    +							<fo:block font-size="11pt">If you are planning on using several RDBMS (= SQLDialects) or
    +								several distinct JDBC Connections in your software, this will mean
    +								that you have to create a new Factory every time. </fo:block>
    +
    +							<fo:block font-family="Georgia" font-size="16pt" padding-top="10pt" padding-bottom="10pt" page-break-after="avoid">Factory settings</fo:block>
    +							<fo:block font-size="11pt">
    +								The jOOQ Factory allows for some optional configuration elements to be used by advanced users.
    +								The <fo:basic-link font-size="11pt" color="#882222" font-weight="bold" text-shadow="0 1px 2px #666666" external-destination="url('http://www.jooq.org/javadoc/latest/org/jooq/conf/Settings.html')">Settings</fo:basic-link> class is a JAXB-annotated
    +								type, that can be provided to a Factory in several ways:
    +							</fo:block>
    +							<fo:block padding-top="16pt" padding-bottom="16pt" page-break-inside="avoid">
    +<fo:list-block>
    +								<fo:list-item>
    +<fo:list-item-label>
    +<fo:block font-size="11pt" page-break-inside="avoid">-</fo:block>
    +</fo:list-item-label>
    +<fo:list-item-body start-indent="body-start()">
    +<fo:block font-size="11pt" page-break-inside="avoid">In the constructor. This will override default settings below</fo:block>
    +</fo:list-item-body>
    +</fo:list-item>
    +								<fo:list-item>
    +<fo:list-item-label>
    +<fo:block font-size="11pt" page-break-inside="avoid">-</fo:block>
    +</fo:list-item-label>
    +<fo:list-item-body start-indent="body-start()">
    +<fo:block font-size="11pt" page-break-inside="avoid">From a location specified by a JVM parameter: -Dorg.jooq.settings</fo:block>
    +</fo:list-item-body>
    +</fo:list-item>
    +								<fo:list-item>
    +<fo:list-item-label>
    +<fo:block font-size="11pt" page-break-inside="avoid">-</fo:block>
    +</fo:list-item-label>
    +<fo:list-item-body start-indent="body-start()">
    +<fo:block font-size="11pt" page-break-inside="avoid">From the classpath at /jooq-settings.xml</fo:block>
    +</fo:list-item-body>
    +</fo:list-item>
    +								<fo:list-item>
    +<fo:list-item-label>
    +<fo:block font-size="11pt" page-break-inside="avoid">-</fo:block>
    +</fo:list-item-label>
    +<fo:list-item-body start-indent="body-start()">
    +<fo:block font-size="11pt" page-break-inside="avoid">From the settings defaults, as specified in
    +								    <fo:basic-link font-size="11pt" color="#882222" font-weight="bold" text-shadow="0 1px 2px #666666" external-destination="url('http://www.jooq.org/xsd/jooq-runtime-2.1.0.xsd')">http://www.jooq.org/xsd/jooq-runtime-2.1.0.xsd</fo:basic-link>
    +								</fo:block>
    +</fo:list-item-body>
    +</fo:list-item>
    +							</fo:list-block>
    +</fo:block>
    +							<fo:block font-size="11pt">
    +								Subsequent sections of the manual contain some more in-depth explanations about these settings:
    +							</fo:block>
    +							<fo:block padding-top="16pt" padding-bottom="16pt" page-break-inside="avoid">
    +<fo:list-block>
    +								<fo:list-item>
    +<fo:list-item-label>
    +<fo:block font-size="11pt" page-break-inside="avoid">-</fo:block>
    +</fo:list-item-label>
    +<fo:list-item-body start-indent="body-start()">
    +<fo:block font-size="11pt" page-break-inside="avoid">
    +     								<fo:basic-link font-size="11pt" color="#882222" font-weight="bold" text-shadow="0 1px 2px #666666" internal-destination="SchemaMapping">Runtime schema and table mapping</fo:basic-link>
    +   								</fo:block>
    +</fo:list-item-body>
    +</fo:list-item>
    +     							<fo:list-item>
    +<fo:list-item-label>
    +<fo:block font-size="11pt" page-break-inside="avoid">-</fo:block>
    +</fo:list-item-label>
    +<fo:list-item-body start-indent="body-start()">
    +<fo:block font-size="11pt" page-break-inside="avoid">
    +     								<fo:basic-link font-size="11pt" color="#882222" font-weight="bold" text-shadow="0 1px 2px #666666" internal-destination="ExecuteListener">Execute listeners and SQL tracing</fo:basic-link>
    +     							</fo:block>
    +</fo:list-item-body>
    +</fo:list-item>
    +   							</fo:list-block>
    +</fo:block>
    +							<fo:block font-size="11pt">
    +								Please refer to the jOOQ runtime configuration XSD for more details:<fo:block/>
    +								<fo:basic-link font-size="11pt" color="#882222" font-weight="bold" text-shadow="0 1px 2px #666666" external-destination="url('http://www.jooq.org/xsd/jooq-runtime-2.1.0.xsd')">http://www.jooq.org/xsd/jooq-runtime-2.1.0.xsd</fo:basic-link>
    +							</fo:block>
    +
    +							<fo:block font-family="Georgia" font-size="16pt" padding-top="10pt" padding-bottom="10pt" page-break-after="avoid">Factory subclasses</fo:block>
    +							<fo:block font-size="11pt">
    +								There are a couple of subclasses for the general Factory. Each SQL
    +								dialect has its own dialect-specific factory. For instance, if you're
    +								only using the MySQL dialect, you can choose to create a new Factory
    +								using any of the following types:
    +							</fo:block>
    +<fo:block font-family="Courier" linefeed-treatment="preserve" white-space-collapse="false" white-space-treatment="preserve" font-size="6pt" margin="12pt" padding="4pt" border="2px solid #882222" background-color="#FFEEDD" page-break-inside="avoid">// A general, dialect-unspecific factory
    +Factory create = new Factory(connection, SQLDialect.MYSQL);
    +
    +// A MySQL-specific factory
    +MySQLFactory create = new MySQLFactory(connection);</fo:block>
    +							<fo:block font-size="11pt">
    +								The advantage of using a dialect-specific Factory lies in the fact,
    +								that you have access to more proprietary RDMBS functionality. This may
    +								include:
    +							</fo:block>
    +							<fo:block padding-top="16pt" padding-bottom="16pt" page-break-inside="avoid">
    +<fo:list-block>
    +								<fo:list-item>
    +<fo:list-item-label>
    +<fo:block font-size="11pt" page-break-inside="avoid">-</fo:block>
    +</fo:list-item-label>
    +<fo:list-item-body start-indent="body-start()">
    +<fo:block font-size="11pt" page-break-inside="avoid">Oracle's <fo:basic-link font-size="11pt" color="#882222" font-weight="bold" text-shadow="0 1px 2px #666666" internal-destination="CONNECTBY">CONNECT BY</fo:basic-link>
    +								    pseudo columns and functions</fo:block>
    +</fo:list-item-body>
    +</fo:list-item>
    +    							<fo:list-item>
    +<fo:list-item-label>
    +<fo:block font-size="11pt" page-break-inside="avoid">-</fo:block>
    +</fo:list-item-label>
    +<fo:list-item-body start-indent="body-start()">
    +<fo:block font-size="11pt" page-break-inside="avoid">MySQL's encryption functions</fo:block>
    +</fo:list-item-body>
    +</fo:list-item>
    +    							<fo:list-item>
    +<fo:list-item-label>
    +<fo:block font-size="11pt" page-break-inside="avoid">-</fo:block>
    +</fo:list-item-label>
    +<fo:list-item-body start-indent="body-start()">
    +<fo:block font-size="11pt" page-break-inside="avoid">PL/SQL constructs, pgplsql, or any other dialect's ROUTINE-language (maybe in the future)</fo:block>
    +</fo:list-item-body>
    +</fo:list-item>
    +							</fo:list-block>
    +</fo:block>
    +							<fo:block font-size="11pt">
    +								Another type of Factory subclasses are each generated schema's
    +								factories. If you generate your schema TEST, then you will have access
    +								to a TestFactory. This will be useful in the future, when access to
    +								schema artefacts will be unified. Currently, this has no use.
    +							</fo:block>
    +
    +							<fo:block font-family="Georgia" font-size="16pt" padding-top="10pt" padding-bottom="10pt" page-break-after="avoid">Static Factory methods</fo:block>
    +							<fo:block font-size="11pt">
    +								With jOOQ 2.0, static factory methods have been introduced in order to
    +								make your code look more like SQL. Ideally, when working with jOOQ, you
    +								will simply static import all methods from the Factory class:
    +							</fo:block>
    +							<fo:block font-family="Courier" linefeed-treatment="preserve" white-space-collapse="false" white-space-treatment="preserve" font-size="6pt" margin="12pt" padding="4pt" border="2px solid #882222" background-color="#FFEEDD" page-break-inside="avoid">import static org.jooq.impl.Factory.*;</fo:block>
    +							<fo:block font-size="11pt">
    +								This will allow to access functions even more fluently:
    +							</fo:block>
    +
    +<fo:block font-family="Courier" linefeed-treatment="preserve" white-space-collapse="false" white-space-treatment="preserve" font-size="6pt" margin="12pt" padding="4pt" border="2px solid #882222" background-color="#FFEEDD" page-break-inside="avoid">concat(trim(FIRST_NAME), trim(LAST_NAME));
    +// ... which is in fact the same as:
    +Factory.concat(Factory.trim(FIRST_NAME), Factory.trim(LAST_NAME));</fo:block>
    +							<fo:block font-size="11pt">
    +								Objects created statically from the Factory do not need a reference to
    +								any factory, as they can be constructed independently from your Configuration
    +								(connection, dialect, schema mapping). They will access that information at
    +								render / bind time. See
    +								<fo:basic-link font-size="11pt" color="#882222" font-weight="bold" text-shadow="0 1px 2px #666666" internal-destination="QueryPart">more details on the QueryParts' internals</fo:basic-link>
    +							</fo:block>
    +
    +							<fo:block font-family="Georgia" font-size="16pt" padding-top="10pt" padding-bottom="10pt" page-break-after="avoid">Potential problems</fo:block>
    +							<fo:block font-size="11pt">
    +								The jOOQ Factory expects its underlying
    +								<fo:basic-link font-size="11pt" color="#882222" font-weight="bold" text-shadow="0 1px 2px #666666" external-destination="url('http://download.oracle.com/javase/6/docs/api/java/sql/Connection.html')">java.sql.Connection</fo:basic-link>
    +								to be <fo:inline font-weight="bold">open and ready</fo:inline>
    +								for
    +								<fo:basic-link font-size="11pt" color="#882222" font-weight="bold" text-shadow="0 1px 2px #666666" external-destination="url('http://download.oracle.com/javase/6/docs/api/java/sql/PreparedStatement.html')">java.sql.PreparedStatement</fo:basic-link>
    +								creation. You are responsible yourself for the
    +								lifecycle dependency between Factory and Connection. This means:
    +							</fo:block>
    +							<fo:block padding-top="16pt" padding-bottom="16pt" page-break-inside="avoid">
    +<fo:list-block>
    +								<fo:list-item>
    +<fo:list-item-label>
    +<fo:block font-size="11pt" page-break-inside="avoid">-</fo:block>
    +</fo:list-item-label>
    +<fo:list-item-body start-indent="body-start()">
    +<fo:block font-size="11pt" page-break-inside="avoid">jOOQ will never close the Connection.</fo:block>
    +</fo:list-item-body>
    +</fo:list-item>
    +								<fo:list-item>
    +<fo:list-item-label>
    +<fo:block font-size="11pt" page-break-inside="avoid">-</fo:block>
    +</fo:list-item-label>
    +<fo:list-item-body start-indent="body-start()">
    +<fo:block font-size="11pt" page-break-inside="avoid">jOOQ will never commit or rollback on the Connection
    +									(Except for CSV-imports, if explicitly configured in the <fo:basic-link font-size="11pt" color="#882222" font-weight="bold" text-shadow="0 1px 2px #666666" internal-destination="Import">Import API</fo:basic-link>)</fo:block>
    +</fo:list-item-body>
    +</fo:list-item>
    +								<fo:list-item>
    +<fo:list-item-label>
    +<fo:block font-size="11pt" page-break-inside="avoid">-</fo:block>
    +</fo:list-item-label>
    +<fo:list-item-body start-indent="body-start()">
    +<fo:block font-size="11pt" page-break-inside="avoid">jOOQ will never start any transactions.</fo:block>
    +</fo:list-item-body>
    +</fo:list-item>
    +								<fo:list-item>
    +<fo:list-item-label>
    +<fo:block font-size="11pt" page-break-inside="avoid">-</fo:block>
    +</fo:list-item-label>
    +<fo:list-item-body start-indent="body-start()">
    +<fo:block font-size="11pt" page-break-inside="avoid">
    +									jOOQ does not know the concept of a session as for instance
    +									<fo:basic-link font-size="11pt" color="#882222" font-weight="bold" text-shadow="0 1px 2px #666666" external-destination="url('http://docs.jboss.org/hibernate/core/3.6/reference/en-US/html/architecture.html#architecture-current-session')">Hibernate</fo:basic-link>
    +								</fo:block>
    +</fo:list-item-body>
    +</fo:list-item>
    +								<fo:list-item>
    +<fo:list-item-label>
    +<fo:block font-size="11pt" page-break-inside="avoid">-</fo:block>
    +</fo:list-item-label>
    +<fo:list-item-body start-indent="body-start()">
    +<fo:block font-size="11pt" page-break-inside="avoid">jOOQ does not know the concept of a second-level cache. SQL is
    +									executed directly on the underlying RDBMS.</fo:block>
    +</fo:list-item-body>
    +</fo:list-item>
    +								<fo:list-item>
    +<fo:list-item-label>
    +<fo:block font-size="11pt" page-break-inside="avoid">-</fo:block>
    +</fo:list-item-label>
    +<fo:list-item-body start-indent="body-start()">
    +<fo:block font-size="11pt" page-break-inside="avoid">jOOQ does not make assumptions about the origin of the Connection.
    +									If it is container managed, that is fine.</fo:block>
    +</fo:list-item-body>
    +</fo:list-item>
    +							</fo:list-block>
    +</fo:block>
    +							<fo:block font-size="11pt">
    +								So if you want your queries to run in separate transactions, if you
    +								want to roll back a transaction, if you want to close a Connection and
    +								return it to your container, you will have to take care of that
    +								yourself. jOOQ's Factory will always expect its Connection to be in a
    +								ready state for creating new PreparedStatements. If it is not, you have
    +								to create a new Factory.
    +							</fo:block>
    +							<fo:block font-size="11pt">
    +								Please keep in mind that many jOOQ objects will reference your Factory
    +								for their whole lifecycle. This is especially interesting, when dealing
    +								with <fo:basic-link font-size="11pt" color="#882222" font-weight="bold" text-shadow="0 1px 2px #666666" internal-destination="UpdatableRecord">Updatable Records</fo:basic-link>,
    +								that can perform CRUD operations on the
    +								Factory's underlying Connection.
    +							</fo:block>
    +						<fo:block font-family="Georgia" font-size="18pt" padding-top="12pt" padding-bottom="12pt" page-break-after="avoid" id="Table">
    +<fo:marker marker-class-name="section">
    +<fo:block>1.3. Tables and Fields</fo:block>
    +</fo:marker>1.3. Tables and Fields</fo:block>
    +<fo:block font-size="11pt">
    +							Tables and their Fields are probably the most important objects in
    +							jOOQ. Tables represent any entity in your underlying RDBMS, that holds
    +							data for selection, insertion, updates, and deletion. In other words,
    +							views are also considered tables by jOOQ.
    +						</fo:block>
    +							<fo:block font-family="Georgia" font-size="16pt" padding-top="10pt" padding-bottom="10pt" page-break-after="avoid">The Table</fo:block>
    +							<fo:block font-size="11pt">The formal definition of a <fo:basic-link font-size="11pt" color="#882222" font-weight="bold" text-shadow="0 1px 2px #666666" external-destination="url('http://www.jooq.org/javadoc/latest/org/jooq/Table.html')">org.jooq.Table</fo:basic-link> starts with </fo:block>
    +							<fo:block font-family="Courier" linefeed-treatment="preserve" white-space-collapse="false" white-space-treatment="preserve" font-size="6pt" margin="12pt" padding="4pt" border="2px solid #882222" background-color="#FFEEDD" page-break-inside="avoid">public interface Table&lt;R extends Record&gt; // [...]</fo:block>
    +							<fo:block font-size="11pt">
    +								This means that every table is associated with a subtype of the
    +								<fo:basic-link font-size="11pt" color="#882222" font-weight="bold" text-shadow="0 1px 2px #666666" external-destination="url('http://www.jooq.org/javadoc/latest/org/jooq/Record.html')">org.jooq.Record</fo:basic-link>
    +								class (see also
    +								<fo:basic-link font-size="11pt" color="#882222" font-weight="bold" text-shadow="0 1px 2px #666666" internal-destination="Result">Results and Records</fo:basic-link>
    +								). For anonymous or ad-hoc tables,
    +								&lt;R&gt; will always bind to Record itself.
    +							</fo:block>
    +							<fo:block font-size="11pt">
    +								Unlike in the
    +								<fo:basic-link font-size="11pt" color="#882222" font-weight="bold" text-shadow="0 1px 2px #666666" external-destination="url('http://download.oracle.com/javaee/6/tutorial/doc/gjitv.html')">JPA CriteriaQuery API</fo:basic-link>,
    +								this generic type
    +								&lt;R&gt;
    +								is not given so much importance as far as
    +								type-safety is concerned.
    +								SQL itself is highly typesafe. You have
    +								incredible flexibility of creating anonymous or ad-hoc
    +								types and
    +								reusing them from
    +								<fo:basic-link font-size="11pt" color="#882222" font-weight="bold" text-shadow="0 1px 2px #666666" internal-destination="NESTED">NESTED SELECT statements</fo:basic-link>
    +								or from many other
    +								use-cases. There is no way that this typesafety can be
    +								mapped to the Java world in a convenient way. If
    +								&lt;R&gt; would play a role as important
    +								as in JPA, jOOQ would suffer from the same verbosity, or inflexibility
    +								that JPA CriteriaQueries may have.
    +							</fo:block>
    +
    +							<fo:block font-family="Georgia" font-size="16pt" padding-top="10pt" padding-bottom="10pt" page-break-after="avoid">The Field</fo:block>
    +							<fo:block font-size="11pt">The formal definition of a Field starts with </fo:block>
    +							<fo:block font-family="Courier" linefeed-treatment="preserve" white-space-collapse="false" white-space-treatment="preserve" font-size="6pt" margin="12pt" padding="4pt" border="2px solid #882222" background-color="#FFEEDD" page-break-inside="avoid">public interface Field&lt;T&gt; // [...]</fo:block>
    +							<fo:block font-size="11pt">
    +								Fields are generically parameterised with a Java type
    +								&lt;T&gt;
    +								that reflects the closest match to the RDMBS's underlying datatype for that
    +								field. For instance, if you have a VARCHAR2 type Field in Oracle,
    +								&lt;T&gt;
    +								would bind to
    +								<fo:basic-link font-size="11pt" color="#882222" font-weight="bold" text-shadow="0 1px 2px #666666" external-destination="url('http://download.oracle.com/javase/6/docs/api/java/lang/String.html')">java.lang.String</fo:basic-link>
    +								for that Field in jOOQ. Oracle's NUMBER(7) would
    +								let
    +								&lt;T&gt;
    +								bind to
    +								<fo:basic-link font-size="11pt" color="#882222" font-weight="bold" text-shadow="0 1px 2px #666666" external-destination="url('http://download.oracle.com/javase/6/docs/api/java/lang/Integer.html')">java.lang.Integer</fo:basic-link>,
    +								etc. This generic type is useful for two purposes:
    +							</fo:block>
    +							<fo:block padding-top="16pt" padding-bottom="16pt" page-break-inside="avoid">
    +<fo:list-block>
    +								<fo:list-item>
    +<fo:list-item-label>
    +<fo:block font-size="11pt" page-break-inside="avoid">-</fo:block>
    +</fo:list-item-label>
    +<fo:list-item-body start-indent="body-start()">
    +<fo:block font-size="11pt" page-break-inside="avoid">It allows you to write type safe queries. For instance, you cannot
    +									compare Field
    +									&lt;String&gt;
    +									with Field
    +									&lt;Integer&gt;</fo:block>
    +</fo:list-item-body>
    +</fo:list-item>
    +
    +								<fo:list-item>
    +<fo:list-item-label>
    +<fo:block font-size="11pt" page-break-inside="avoid">-</fo:block>
    +</fo:list-item-label>
    +<fo:list-item-body start-indent="body-start()">
    +<fo:block font-size="11pt" page-break-inside="avoid">It
    +									allows you to fetch correctly cast and converted values from
    +									your database result set. This is especially useful when &lt;T&gt; binds
    +									to
    +									advanced data types, such as
    +									<fo:basic-link font-size="11pt" color="#882222" font-weight="bold" text-shadow="0 1px 2px #666666" internal-destination="UDT">UDT's, ARRAY or ENUM types</fo:basic-link>
    +									, where jOOQ
    +									does the difficult non-standardised JDBC data type conversions for you.
    +								</fo:block>
    +</fo:list-item-body>
    +</fo:list-item>
    +							</fo:list-block>
    +</fo:block>
    +
    +							<fo:block font-family="Georgia" font-size="16pt" padding-top="10pt" padding-bottom="10pt" page-break-after="avoid">Fields and tables put into action</fo:block>
    +							<fo:block font-size="11pt">The Field itself is a very broad concept. Other tools, or databases
    +								refer to it as expression or column. When you just want to </fo:block>
    +
    +							<fo:block font-family="Courier" linefeed-treatment="preserve" white-space-collapse="false" white-space-treatment="preserve" font-size="6pt" margin="12pt" padding="4pt" border="2px solid #882222" background-color="#FFEEDD" page-break-inside="avoid">SELECT 1 FROM DUAL</fo:block>
    +							<fo:block font-size="11pt">
    +								Then 1 is considered a Field or more explicitly, a
    +								<fo:basic-link font-size="11pt" color="#882222" font-weight="bold" text-shadow="0 1px 2px #666666" external-destination="url('http://www.jooq.org/javadoc/latest/org/jooq/impl/Constant.html')">org.jooq.impl.Constant</fo:basic-link>,
    +								which implements Field, and DUAL is considered a Table or more explicitly
    +								<fo:basic-link font-size="11pt" color="#882222" font-weight="bold" text-shadow="0 1px 2px #666666" external-destination="url('http://www.jooq.org/javadoc/latest/org/jooq/impl/Dual.html')">org.jooq.impl.Dual</fo:basic-link>, which implements Table
    +							</fo:block>
    +							<fo:block font-size="11pt">
    +								More advanced uses become clear quickly, when you do things like
    +							</fo:block>
    +							<fo:block font-family="Courier" linefeed-treatment="preserve" white-space-collapse="false" white-space-treatment="preserve" font-size="6pt" margin="12pt" padding="4pt" border="2px solid #882222" background-color="#FFEEDD" page-break-inside="avoid">SELECT 1 + 1 FROM DUAL</fo:block>
    +							<fo:block font-size="11pt">
    +								Where 1 + 1 itself is a Field or more explicitly, an
    +								<fo:basic-link font-size="11pt" color="#882222" font-weight="bold" text-shadow="0 1px 2px #666666" external-destination="url('http://www.jooq.org/javadoc/latest/org/jooq/impl/Expression.html')">org.jooq.impl.Expression</fo:basic-link>
    +								joining two Constants together.
    +							</fo:block>
    +							<fo:block font-size="11pt">
    +								See some details about how to create these queries in the
    +								<fo:basic-link font-size="11pt" color="#882222" font-weight="bold" text-shadow="0 1px 2px #666666" internal-destination="Query">Query section</fo:basic-link> of the manual
    +							</fo:block>
    +
    +							<fo:block font-family="Georgia" font-size="16pt" padding-top="10pt" padding-bottom="10pt" page-break-after="avoid">TableFields</fo:block>
    +							<fo:block font-size="11pt">
    +								A specific type of field is the
    +								<fo:basic-link font-size="11pt" color="#882222" font-weight="bold" text-shadow="0 1px 2px #666666" external-destination="url('http://www.jooq.org/javadoc/latest/org/jooq/TableField.html')">org.jooq.TableField</fo:basic-link>,
    +								which represents a physical
    +								Field in a physical Table. Both the
    +								TableField and its referenced Table
    +								know each other. The physical aspect
    +								of their nature is represented in
    +								jOOQ by
    +								<fo:basic-link font-size="11pt" color="#882222" font-weight="bold" text-shadow="0 1px 2px #666666" internal-destination="TABLE">meta model code generation</fo:basic-link>,
    +								where every entity in your database
    +								schema will be generated into a
    +								corresponding Java class.
    +							</fo:block>
    +							<fo:block font-size="11pt">
    +								TableFields join both &lt;R&gt; and &lt;T&gt; generic parameters into their specification:
    +							</fo:block>
    +							<fo:block font-family="Courier" linefeed-treatment="preserve" white-space-collapse="false" white-space-treatment="preserve" font-size="6pt" margin="12pt" padding="4pt" border="2px solid #882222" background-color="#FFEEDD" page-break-inside="avoid">public interface TableField&lt;R extends Record, T&gt; // [...]</fo:block>
    +							<fo:block font-size="11pt">
    +								This can be used for additional type safety in the future, or by client code.
    +							</fo:block>
    +						<fo:block font-family="Georgia" font-size="18pt" padding-top="12pt" padding-bottom="12pt" page-break-after="avoid" id="Result">
    +<fo:marker marker-class-name="section">
    +<fo:block>1.4. Results and Records</fo:block>
    +</fo:marker>1.4. Results and Records</fo:block>
    +<fo:block font-size="11pt">
    +							Results and their Records come into play, when SELECT statements are
    +							executed. There are various ways to fetch data from a jOOQ SELECT
    +							statement. Essentially, the query results are always provided in the
    +							Result API
    +						</fo:block>
    +							<fo:block font-family="Georgia" font-size="16pt" padding-top="10pt" padding-bottom="10pt" page-break-after="avoid">The Result</fo:block>
    +							<fo:block font-size="11pt">
    +								The
    +								<fo:basic-link font-size="11pt" color="#882222" font-weight="bold" text-shadow="0 1px 2px #666666" external-destination="url('http://www.jooq.org/javadoc/latest/org/jooq/Result.html')">Result</fo:basic-link>&lt;R extends <fo:basic-link font-size="11pt" color="#882222" font-weight="bold" text-shadow="0 1px 2px #666666" external-destination="url('http://www.jooq.org/javadoc/latest/org/jooq/Record.html')">Record</fo:basic-link>&gt;
    +								is essentially a wrapper for a List&lt;R extends Record&gt;
    +								providing
    +								many convenience methods for accessing single elements in
    +								the result
    +								set. Depending on the type of SELECT statement,
    +								&lt;R&gt; can be bound
    +								to a sub-type of Record, for instance to an
    +								<fo:basic-link font-size="11pt" color="#882222" font-weight="bold" text-shadow="0 1px 2px #666666" external-destination="url('http://www.jooq.org/javadoc/latest/org/jooq/UpdatableRecord.html')">org.jooq.UpdatableRecord</fo:basic-link>.
    +								See the section on
    +								<fo:basic-link font-size="11pt" color="#882222" font-weight="bold" text-shadow="0 1px 2px #666666" internal-destination="UpdatableRecord">Updatable Records</fo:basic-link>
    +								for further details.
    +							</fo:block>
    +
    +							<fo:block font-family="Georgia" font-size="16pt" padding-top="10pt" padding-bottom="10pt" page-break-after="avoid">The Cursor</fo:block>
    +							<fo:block font-size="11pt">
    +								A similar object is the
    +								<fo:basic-link font-size="11pt" color="#882222" font-weight="bold" text-shadow="0 1px 2px #666666" external-destination="url('http://www.jooq.org/javadoc/latest/org/jooq/Cursor.html')">Cursor</fo:basic-link>&lt;R extends Record&gt;.
    +								Unlike the Result, the cursor has not fetched all data from the database yet.
    +								This means, you save memory (and potentially speed), but you can only access
    +								data sequentially and you have to keep a JDBC ResultSet alive. Cursors behave
    +								very much like the <fo:basic-link font-size="11pt" color="#882222" font-weight="bold" text-shadow="0 1px 2px #666666" external-destination="url('http://download.oracle.com/javase/6/docs/api/java/util/Iterator.html')">java.util.Iterator</fo:basic-link>,
    +								by providing a very simple API. Some sample methods are:
    +							</fo:block>
    +<fo:block font-family="Courier" linefeed-treatment="preserve" white-space-collapse="false" white-space-treatment="preserve" font-size="6pt" margin="12pt" padding="4pt" border="2px solid #882222" background-color="#FFEEDD" page-break-inside="avoid">// Check whether there are any more records to be fetched
    +boolean hasNext() throws SQLException;
    +
    +// Fetch the next record from the underlying JDBC ResultSet
    +R fetchOne() throws SQLException;
    +
    +// Close the underlying JDBC ResultSet. Don't forget to call this, before disposing the Cursor.
    +void close() throws SQLException;</fo:block>
    +
    +							<fo:block font-family="Georgia" font-size="16pt" padding-top="10pt" padding-bottom="10pt" page-break-after="avoid">The Record</fo:block>
    +							<fo:block font-size="11pt">
    +								The Record itself holds all the data from your selected tuple. If it is
    +								a <fo:basic-link font-size="11pt" color="#882222" font-weight="bold" text-shadow="0 1px 2px #666666" external-destination="url('http://www.jooq.org/javadoc/latest/org/jooq/TableRecord.html')">org.jooq.TableRecord</fo:basic-link>, then it corresponds exactly to the type of one of your
    +								physical tables in your database. But any anonymous or ad-hoc tuple can
    +								be represented by the plain Record. A record mainly provides access to
    +								its data and adds convenience methods for data type conversion. These
    +								are the main access ways:
    +							</fo:block>
    +<fo:block font-family="Courier" linefeed-treatment="preserve" white-space-collapse="false" white-space-treatment="preserve" font-size="6pt" margin="12pt" padding="4pt" border="2px solid #882222" background-color="#FFEEDD" page-break-inside="avoid">// If you can keep a reference of the selected field, then you can get the corresponding value type-safely
    +&lt;T&gt; T getValue(Field&lt;T&gt; field);
    +
    +// If you know the name of the selected field within the tuple,
    +// then you can get its value without any type information
    +Object getValue(String fieldName);
    +
    +// If you know the index of the selected field within the tuple,
    +// then you can get its value without any type information
    +Object getValue(int index);</fo:block>
    +							<fo:block font-size="11pt">
    +								In some cases, you will not be able to reference the selected Fields
    +								both when you create the SELECT statement and when you fetch data from
    +								Records. Then you might use field names or indexes, as with JDBC.
    +								However, of course, the type information will then be lost as well. If
    +								you know what type you want to get, you can always use the Record's
    +								convenience methods for type conversion, however. Some examples:
    +							</fo:block>
    +<fo:block font-family="Courier" linefeed-treatment="preserve" white-space-collapse="false" white-space-treatment="preserve" font-size="6pt" margin="12pt" padding="4pt" border="2px solid #882222" background-color="#FFEEDD" page-break-inside="avoid">// These methods will try to convert a value to a BigDecimal.
    +// This will work for all numeric types and for CHAR/VARCHAR types, if they contain numeric values:
    +BigDecimal getValueAsBigDecimal(String fieldName);
    +BigDecimal getValueAsBigDecimal(int fieldIndex);
    +
    +// This method can perform arbitrary conversions
    +&lt;T&gt; T getValue(String fieldName, Class&lt;? extends T&gt; type);
    +&lt;T&gt; T getValue(int fieldIndex, Class&lt;? extends T&gt; type);</fo:block>
    +
    +							<fo:block font-size="11pt">
    +								For more information about the type conversions that are supported by
    +								jOOQ, read the Javadoc on
    +								<fo:basic-link font-size="11pt" color="#882222" font-weight="bold" text-shadow="0 1px 2px #666666" external-destination="url('http://www.jooq.org/javadoc/latest/org/jooq/tools/Convert.html')">org.jooq.tools.Convert</fo:basic-link>
    +							</fo:block>
    +						<fo:block font-family="Georgia" font-size="18pt" padding-top="12pt" padding-bottom="12pt" page-break-after="avoid" id="UpdatableRecord">
    +<fo:marker marker-class-name="section">
    +<fo:block>1.5. Updatable Records</fo:block>
    +</fo:marker>1.5. Updatable Records</fo:block>
    +<fo:block font-size="11pt">
    +							UpdatableRecords are a specific subtype of TableRecord that have
    +							primary key information associated with them.
    +						</fo:block>
    +							<fo:block font-family="Georgia" font-size="16pt" padding-top="10pt" padding-bottom="10pt" page-break-after="avoid">CRUD Operations</fo:block>
    +							<fo:block font-size="11pt">As of jOOQ 1.5, the UpdatableRecord essentially contains three additional
    +							 methods <fo:basic-link font-size="11pt" color="#882222" font-weight="bold" text-shadow="0 1px 2px #666666" external-destination="url('http://de.wikipedia.org/wiki/CRUD')">CRUD</fo:basic-link>
    +							 (Create Read Update Delete) operations: </fo:block>
    +<fo:block font-family="Courier" linefeed-treatment="preserve" white-space-collapse="false" white-space-treatment="preserve" font-size="6pt" margin="12pt" padding="4pt" border="2px solid #882222" background-color="#FFEEDD" page-break-inside="avoid">// Store any changes made to this record to the database.
    +// The record executes an INSERT if the PRIMARY KEY is NULL or has been changed. Otherwise, an UPDATE is performed.
    +int store();
    +
    +// Deletes the record from the database.
    +int delete();
    +
    +// Reflects changes made in the database to this Record
    +void refresh();</fo:block>
    +							<fo:block font-size="11pt">An example lifecycle of a book can be implemented as such:</fo:block>
    +<fo:block font-family="Courier" linefeed-treatment="preserve" white-space-collapse="false" white-space-treatment="preserve" font-size="6pt" margin="12pt" padding="4pt" border="2px solid #882222" background-color="#FFEEDD" page-break-inside="avoid">// Create a new record and insert it into the database
    +TBookRecord book = create.newRecord(T_BOOK);
    +book.setTitle("My first book");
    +book.store();
    +
    +// Update it with new values
    +book.setPublishedIn(2010);
    +book.store();
    +
    +// Delete it
    +book.delete();</fo:block>
    +							<fo:block font-size="11pt">These operations are very simple utilities. They do not
    +							reflect the functionality offered by <fo:basic-link font-size="11pt" color="#882222" font-weight="bold" text-shadow="0 1px 2px #666666" external-destination="url('http://www.hibernate.org/')">Hibernate</fo:basic-link>
    +							or other persistence managers. </fo:block>
    +
    +							<fo:block font-family="Georgia" font-size="16pt" padding-top="10pt" padding-bottom="10pt" page-break-after="avoid">Performing CRUD on non-updatable records</fo:block>
    +							<fo:block font-size="11pt">
    +								If the jOOQ code-generator cannot detect any PRIMARY KEY, or UNIQUE KEY
    +								on your tables, then the generated artefacts implement TableRecord,
    +								instead of UpdatableRecord. A TableRecord can perform the same CRUD
    +								operations as we have seen before, if you provide it with the necessary
    +								key fields. The API looks like this:
    +							</fo:block>
    +
    +<fo:block font-family="Courier" linefeed-treatment="preserve" white-space-collapse="false" white-space-treatment="preserve" font-size="6pt" margin="12pt" padding="4pt" border="2px solid #882222" background-color="#FFEEDD" page-break-inside="avoid">// INSERT or UPDATE the record using the provided keys
    +int storeUsing(TableField&lt;R, ?&gt;... keys)
    +
    +// DELETE a record using the provided keys
    +int deleteUsing(TableField&lt;R, ?&gt;... keys);
    +
    +// Reflects changes made in the database to this Record
    +void refreshUsing(TableField&lt;R, ?&gt;... keys);</fo:block>
    +
    +							<fo:block font-size="11pt">
    +								This is useful if your RDBMS does not support referential constraints (e.g. MySQL's
    +								<fo:basic-link font-size="11pt" color="#882222" font-weight="bold" text-shadow="0 1px 2px #666666" external-destination="url('http://en.wikipedia.org/wiki/MyISAM')">MyISAM</fo:basic-link>), or if you want to
    +								store records to an unconstrained view. An example lifecycle of a book without
    +								any keys can then be implemented as such:
    +							</fo:block>
    +<fo:block font-family="Courier" linefeed-treatment="preserve" white-space-collapse="false" white-space-treatment="preserve" font-size="6pt" margin="12pt" padding="4pt" border="2px solid #882222" background-color="#FFEEDD" page-break-inside="avoid">// Create a new record and insert it into the database
    +TBookRecord book = create.newRecord(T_BOOK);
    +book.setTitle("My first book");
    +book.storeUsing(TBook.ID);
    +
    +// Update it with new values
    +book.setPublishedIn(2010);
    +book.storeUsing(TBook.ID);
    +
    +// Delete it
    +book.deleteUsing(TBook.ID);</fo:block>
    +						<fo:block font-family="Georgia" font-size="18pt" padding-top="12pt" padding-bottom="12pt" page-break-after="avoid" id="Query">
    +<fo:marker marker-class-name="section">
    +<fo:block>1.6. The Query and its various subtypes</fo:block>
    +</fo:marker>1.6. The Query and its various subtypes</fo:block>
    +<fo:block font-size="11pt">
    +							The Query type hierarchy is what you use to execute queries. It has the
    +							following subtypes for each kind of operation
    +						</fo:block>
    +							<fo:block font-family="Georgia" font-size="16pt" padding-top="10pt" padding-bottom="10pt" page-break-after="avoid">SELECT statements</fo:block>
    +							<fo:block font-size="11pt">
    +								There are essentially two ways of creating SELECT statements in jOOQ.
    +								For historical reasons, you can create
    +								<fo:basic-link font-size="11pt" color="#882222" font-weight="bold" text-shadow="0 1px 2px #666666" external-destination="url('http://www.jooq.org/javadoc/latest/org/jooq/SimpleSelectQuery.html')">org.jooq.SimpleSelectQuery</fo:basic-link> or
    +								<fo:basic-link font-size="11pt" color="#882222" font-weight="bold" text-shadow="0 1px 2px #666666" external-destination="url('http://www.jooq.org/javadoc/latest/org/jooq/SelectQuery.html')">org.jooq.SelectQuery</fo:basic-link>
    +								objects and add additional query clauses, such as
    +								<fo:basic-link font-size="11pt" color="#882222" font-weight="bold" text-shadow="0 1px 2px #666666" external-destination="url('http://www.jooq.org/javadoc/latest/org/jooq/Condition.html')">Conditions</fo:basic-link> or
    +								<fo:basic-link font-size="11pt" color="#882222" font-weight="bold" text-shadow="0 1px 2px #666666" external-destination="url('http://www.jooq.org/javadoc/latest/org/jooq/SortField.html')">SortFields</fo:basic-link> to it.
    +								Since jOOQ 1.3, there is also the possibility to
    +								create SELECT statements using jOOQ's
    +								<fo:basic-link font-size="11pt" color="#882222" font-weight="bold" text-shadow="0 1px 2px #666666" internal-destination="DSL">DSL API</fo:basic-link> in a much more intuitive
    +								and SQL-like way.
    +							</fo:block>
    +							<fo:block font-size="11pt">Use the DSL API when: </fo:block>
    +							<fo:block padding-top="16pt" padding-bottom="16pt" page-break-inside="avoid">
    +<fo:list-block>
    +								<fo:list-item>
    +<fo:list-item-label>
    +<fo:block font-size="11pt" page-break-inside="avoid">-</fo:block>
    +</fo:list-item-label>
    +<fo:list-item-body start-indent="body-start()">
    +<fo:block font-size="11pt" page-break-inside="avoid">You want your code to look like SQL</fo:block>
    +</fo:list-item-body>
    +</fo:list-item>
    +								<fo:list-item>
    +<fo:list-item-label>
    +<fo:block font-size="11pt" page-break-inside="avoid">-</fo:block>
    +</fo:list-item-label>
    +<fo:list-item-body start-indent="body-start()">
    +<fo:block font-size="11pt" page-break-inside="avoid">You want your IDE to help you with auto-completion (you will not be able to write select .. order by .. where .. join or any of that stuff) </fo:block>
    +</fo:list-item-body>
    +</fo:list-item>
    +							</fo:list-block>
    +</fo:block>
    +							<fo:block font-size="11pt">Use the regular API when: </fo:block>
    +							<fo:block padding-top="16pt" padding-bottom="16pt" page-break-inside="avoid">
    +<fo:list-block>
    +								<fo:list-item>
    +<fo:list-item-label>
    +<fo:block font-size="11pt" page-break-inside="avoid">-</fo:block>
    +</fo:list-item-label>
    +<fo:list-item-body start-indent="body-start()">
    +<fo:block font-size="11pt" page-break-inside="avoid">You want to create your query step-by-step, creating query parts one-by-one</fo:block>
    +</fo:list-item-body>
    +</fo:list-item>
    +							    <fo:list-item>
    +<fo:list-item-label>
    +<fo:block font-size="11pt" page-break-inside="avoid">-</fo:block>
    +</fo:list-item-label>
    +<fo:list-item-body start-indent="body-start()">
    +<fo:block font-size="11pt" page-break-inside="avoid">You need to assemble your query from various places, passing the query around, adding new conditions and joins on the way </fo:block>
    +</fo:list-item-body>
    +</fo:list-item>
    +							</fo:list-block>
    +</fo:block>
    +							<fo:block font-size="11pt">In any case, all API's will construct the same underlying
    +								implementation object, and in many cases, you can combine the two
    +								approaches. Let's check out the various SELECT statement types: </fo:block>
    +
    +							<fo:block padding-top="16pt" padding-bottom="16pt" page-break-inside="avoid">
    +<fo:list-block>
    +								<fo:list-item>
    +<fo:list-item-label>
    +<fo:block font-size="11pt" page-break-inside="avoid">-</fo:block>
    +</fo:list-item-label>
    +<fo:list-item-body start-indent="body-start()">
    +<fo:block font-size="11pt" page-break-inside="avoid">
    +<fo:basic-link font-size="11pt" color="#882222" font-weight="bold" text-shadow="0 1px 2px #666666" external-destination="url('http://www.jooq.org/javadoc/latest/org/jooq/Select.html')">org.jooq.Select</fo:basic-link>:
    +								    This Query subtype stands for a general type of SELECT statement.
    +								    It is also the main Select type for the
    +								    <fo:basic-link font-size="11pt" color="#882222" font-weight="bold" text-shadow="0 1px 2px #666666" internal-destination="DSL">DSL API</fo:basic-link>. When executed, this object
    +								    will hold a <fo:basic-link font-size="11pt" color="#882222" font-weight="bold" text-shadow="0 1px 2px #666666" internal-destination="Result">Result containing the resulting Records</fo:basic-link>.
    +								    This type is further subtyped for the various uses of a SELECT statement as such:</fo:block>
    +</fo:list-item-body>
    +</fo:list-item>
    +								<fo:list-item>
    +<fo:list-item-label>
    +<fo:block font-size="11pt" page-break-inside="avoid">-</fo:block>
    +</fo:list-item-label>
    +<fo:list-item-body start-indent="body-start()">
    +<fo:block font-size="11pt" page-break-inside="avoid">
    +<fo:basic-link font-size="11pt" color="#882222" font-weight="bold" text-shadow="0 1px 2px #666666" external-destination="url('http://www.jooq.org/javadoc/latest/org/jooq/SimpleSelectQuery.html')">org.jooq.SimpleSelectQuery</fo:basic-link>:
    +									This Query will allow for selecting from single physical Tables only.
    +									It therefore has access to the Table's generic type parameter
    +									&lt;R extends Record&gt; and will provide a matching Result&lt;R&gt;.
    +									This is especially useful if &lt;R&gt; is a subtype of
    +									<fo:basic-link font-size="11pt" color="#882222" font-weight="bold" text-shadow="0 1px 2px #666666" internal-destination="UpdatableRecord">UpdatableRecord</fo:basic-link>.
    +									Then you will be able to perform updates on your result set immediately.</fo:block>
    +</fo:list-item-body>
    +</fo:list-item>
    +								<fo:list-item>
    +<fo:list-item-label>
    +<fo:block font-size="11pt" page-break-inside="avoid">-</fo:block>
    +</fo:list-item-label>
    +<fo:list-item-body start-indent="body-start()">
    +<fo:block font-size="11pt" page-break-inside="avoid">
    +<fo:basic-link font-size="11pt" color="#882222" font-weight="bold" text-shadow="0 1px 2px #666666" external-destination="url('http://www.jooq.org/javadoc/latest/org/jooq/SelectQuery.html')">org.jooq.SelectQuery</fo:basic-link>:
    +									This Query will allow for selecting a subset of Fields from several
    +									Tables. Because the results of such a query are considered of an anonymous
    +									or ad-hoc type, this Query will bind &lt;R&gt; to the general type Record
    +									itself. The purpose of this Query type is to allow for full SQL support,
    +									including SELECT, JOIN and GROUP BY clauses. </fo:block>
    +</fo:list-item-body>
    +</fo:list-item>
    +							</fo:list-block>
    +</fo:block>
    +
    +							<fo:block font-family="Georgia" font-size="16pt" padding-top="10pt" padding-bottom="10pt" page-break-after="avoid">Example: SQL query and DSL query</fo:block>
    +							<fo:table width="100%" table-layout="fixed">
    +<fo:table-column column-width="88mm"/>
    +<fo:table-column column-width="88mm"/>
    +<fo:table-body>
    +<fo:table-row>
    +<fo:table-cell>
    +<fo:block>
    +<fo:block font-family="Courier" linefeed-treatment="preserve" white-space-collapse="false" white-space-treatment="preserve" font-size="6pt" margin="12pt" padding="4pt" border="2px solid #882222" background-color="#FFEEDD" page-break-inside="avoid">-- Select all books by authors born after 1920, named "Paulo"
    +-- from a catalogue consisting of authors and books:
    +
    +
    +SELECT *
    +  FROM t_author
    +  JOIN t_book
    +    ON t_author.id = t_book.author_id
    + WHERE t_author.year_of_birth &gt; 1920
    +   AND t_author.first_name = 'Paulo'
    + ORDER BY t_book.title</fo:block>
    +</fo:block>
    +</fo:table-cell>
    +<fo:table-cell>
    +<fo:block>
    +<fo:block font-family="Courier" linefeed-treatment="preserve" white-space-collapse="false" white-space-treatment="preserve" font-size="6pt" margin="12pt" padding="4pt" border="2px solid #882222" background-color="#FFEEDD" page-break-inside="avoid">// Instanciate your factory using a JDBC connection.
    +Factory create = new Factory(connection, SQLDialect.ORACLE);
    +
    +// Execute the query "on a single line"
    +Result&lt;Record&gt; result = create.select()
    +    .from(T_AUTHOR)
    +    .join(T_BOOK)
    +    .on(T_AUTHOR.ID.equal(T_BOOK.AUTHOR_ID))
    +    .where(T_AUTHOR.YEAR_OF_BIRTH.greaterThan(1920)
    +    .and(T_AUTHOR.FIRST_NAME.equal("Paulo")))
    +    .orderBy(T_BOOK.TITLE).fetch();</fo:block>
    +</fo:block>
    +</fo:table-cell>
    +</fo:table-row>
    +</fo:table-body>
    +</fo:table>
    +
    +							<fo:block font-size="11pt">
    +								In the above example, some generated artefacts are used for querying.
    +								In this case, T_AUTHOR and T_BOOK are instances of types
    +								<fo:basic-link font-size="11pt" color="#882222" font-weight="bold" text-shadow="0 1px 2px #666666" external-destination="url('http://www.jooq.org/javadoc/latest/org/jooq/test/oracle/generatedclasses/tables/TAuthor.html')">TAuthor</fo:basic-link> and
    +								<fo:basic-link font-size="11pt" color="#882222" font-weight="bold" text-shadow="0 1px 2px #666666" external-destination="url('http://www.jooq.org/javadoc/latest/org/jooq/test/oracle/generatedclasses/tables/TBook.html')">TBook</fo:basic-link> respectively.
    +								Their full qualification would read TAuthor.T_AUTHOR and TBook.T_BOOK, but in many cases,
    +								it's useful to static import elements involved with queries, in order to decrease verbosity:
    +								<fo:block font-family="Courier" linefeed-treatment="preserve" white-space-collapse="false" white-space-treatment="preserve" font-size="6pt" margin="12pt" padding="4pt" border="2px solid #882222" background-color="#FFEEDD" page-break-inside="avoid">import static com.example.jooq.Tables.*;</fo:block>
    +							</fo:block>
    +
    +							<fo:block font-size="11pt">
    +								Apart from the singleton Table instances TAuthor.T_AUTHOR and
    +								TBook.T_BOOK, these generated classes also contain one member
    +								for every physical field, such as TAuthor.ID or TBook.TAUTHOR_ID, etc.
    +								Depending on your configuration, those members can be static members
    +								(better for static imports) or instance members (better for aliasing)
    +							</fo:block>
    +
    +							<fo:block padding-top="16pt" padding-bottom="16pt" page-break-inside="avoid">
    +<fo:list-block>
    +								<fo:list-item>
    +<fo:list-item-label>
    +<fo:block font-size="11pt" page-break-inside="avoid">-</fo:block>
    +</fo:list-item-label>
    +<fo:list-item-body start-indent="body-start()">
    +<fo:block font-size="11pt" page-break-inside="avoid">For more information about code generation, check out the manual's section about
    +									<fo:basic-link font-size="11pt" color="#882222" font-weight="bold" text-shadow="0 1px 2px #666666" internal-destination="META">Meta model source code generation</fo:basic-link>.</fo:block>
    +</fo:list-item-body>
    +</fo:list-item>
    +    							<fo:list-item>
    +<fo:list-item-label>
    +<fo:block font-size="11pt" page-break-inside="avoid">-</fo:block>
    +</fo:list-item-label>
    +<fo:list-item-body start-indent="body-start()">
    +<fo:block font-size="11pt" page-break-inside="avoid">For more DSL examples, please consider the manual's section about the
    +    								<fo:basic-link font-size="11pt" color="#882222" font-weight="bold" text-shadow="0 1px 2px #666666" internal-destination="DSL">DSL API</fo:basic-link>.</fo:block>
    +</fo:list-item-body>
    +</fo:list-item>
    +							</fo:list-block>
    +</fo:block>
    +
    +							<fo:block font-family="Georgia" font-size="16pt" padding-top="10pt" padding-bottom="10pt" page-break-after="avoid">Example: Non-DSL query</fo:block>
    +							<fo:block font-size="11pt">
    +								If you choose not to use the DSL API (for instance, because you don't
    +								want to add Query parts in the order SQL expects them), you can use
    +								this syntax:
    +							</fo:block>
    +<fo:block font-family="Courier" linefeed-treatment="preserve" white-space-collapse="false" white-space-treatment="preserve" font-size="6pt" margin="12pt" padding="4pt" border="2px solid #882222" background-color="#FFEEDD" page-break-inside="avoid">// Re-use the factory to create a SelectQuery. This example will not make use of static imports...
    +SelectQuery q = create.selectQuery();
    +q.addFrom(T_AUTHOR);
    +
    +// This example shows some "mixed" API usage, where the JOIN is added with the standard API, and the
    +// Condition is created using the DSL API
    +q.addJoin(T_BOOK, T_AUTHOR.ID.equal(T_BOOK.AUTHOR_ID));
    +
    +// The AND operator between Conditions is implicit here
    +q.addConditions(T_AUTHOR.YEAR_OF_BIRTH.greaterThan(1920));
    +q.addConditions(T_AUTHOR.FIRST_NAME.equal("Paulo"));
    +q.addOrderBy(T_BOOK.TITLE);</fo:block>
    +
    +							<fo:block font-family="Georgia" font-size="16pt" padding-top="10pt" padding-bottom="10pt" page-break-after="avoid">Fetching data</fo:block>
    +							<fo:block font-size="11pt">
    +								The <fo:basic-link font-size="11pt" color="#882222" font-weight="bold" text-shadow="0 1px 2px #666666" external-destination="url('http://www.jooq.org/javadoc/latest/org/jooq/Select.html')">org.jooq.Select</fo:basic-link> interface extends
    +								<fo:basic-link font-size="11pt" color="#882222" font-weight="bold" text-shadow="0 1px 2px #666666" external-destination="url('http://www.jooq.org/javadoc/latest/org/jooq/ResultQuery.html')">org.jooq.ResultQuery</fo:basic-link>,
    +								which provides a range of methods to fetch data from the database.
    +								Once you have constructed your SELECT query (see examples above), you
    +								may choose to either simply execute() it, or use a variety of convenience
    +								fetchXXX() methods.
    +							</fo:block>
    +							<fo:block font-size="11pt">
    +								See the manual's
    +								<fo:basic-link font-size="11pt" color="#882222" font-weight="bold" text-shadow="0 1px 2px #666666" internal-destination="ResultQuery">section on the ResultQuery</fo:basic-link>
    +								for more details.
    +							</fo:block>
    +
    +
    +							<fo:block font-family="Georgia" font-size="16pt" padding-top="10pt" padding-bottom="10pt" page-break-after="avoid">INSERT Statements</fo:block>
    +							<fo:block font-size="11pt">jOOQ supports two modes for INSERT statements.
    +							The INSERT VALUES and the INSERT SELECT syntax</fo:block>
    +
    +							<fo:block font-family="Georgia" font-size="16pt" padding-top="10pt" padding-bottom="10pt" page-break-after="avoid">Example: SQL query and DSL query</fo:block>
    +							<fo:table width="100%" table-layout="fixed">
    +<fo:table-column column-width="88mm"/>
    +<fo:table-column column-width="88mm"/>
    +<fo:table-body>
    +<fo:table-row>
    +<fo:table-cell>
    +<fo:block>
    +<fo:block font-family="Courier" linefeed-treatment="preserve" white-space-collapse="false" white-space-treatment="preserve" font-size="6pt" margin="12pt" padding="4pt" border="2px solid #882222" background-color="#FFEEDD" page-break-inside="avoid">INSERT INTO T_AUTHOR
    +    (ID, FIRST_NAME, LAST_NAME)
    +VALUES
    +    (100, 'Hermann', 'Hesse'),
    +    (101, 'Alfred', 'Döblin');</fo:block>
    +</fo:block>
    +</fo:table-cell>
    +<fo:table-cell>
    +<fo:block>
    +<fo:block font-family="Courier" linefeed-treatment="preserve" white-space-collapse="false" white-space-treatment="preserve" font-size="6pt" margin="12pt" padding="4pt" border="2px solid #882222" background-color="#FFEEDD" page-break-inside="avoid">create.insertInto(T_AUTHOR,
    +        T_AUTHOR.ID, T_AUTHOR.FIRST_NAME, T_AUTHOR.LAST_NAME)
    +      .values(100, "Hermann", "Hesse")
    +      .values(101, "Alfred", "Döblin")
    +      .execute();</fo:block>
    +</fo:block>
    +</fo:table-cell>
    +</fo:table-row>
    +</fo:table-body>
    +</fo:table>
    +
    +							<fo:block font-size="11pt">The DSL syntax tries to stay close to actual SQL. In detail,
    +								however, Java is limited in its possibilities. That's why the
    +								.values() clause is repeated for every record in multi-record inserts.
    +								Some RDBMS support
    +								inserting several records at the same time. This is also supported in
    +								jOOQ, and simulated using UNION clauses for those RDBMS that don't
    +								support this syntax.
    +								<fo:block font-family="Courier" linefeed-treatment="preserve" white-space-collapse="false" white-space-treatment="preserve" font-size="6pt" margin="12pt" padding="4pt" border="2px solid #882222" background-color="#FFEEDD" page-break-inside="avoid">INSERT INTO .. SELECT .. UNION ALL SELECT ..</fo:block>
    +							</fo:block>
    +							<fo:block font-size="11pt">Note: Just like in SQL itself, you can have syntax errors when you
    +								don't have matching numbers of fields/values. Also, you can run into
    +								runtime problems, if your field/value types don't match. </fo:block>
    +
    +							<fo:block font-family="Georgia" font-size="16pt" padding-top="10pt" padding-bottom="10pt" page-break-after="avoid">Example: DSL Query, alternative syntax</fo:block>
    +							<fo:block font-size="11pt">MySQL (and some other RDBMS) allow for using an UPDATE-like syntax
    +								for INSERT statements. This is also supported in jOOQ, should you
    +								prefer that syntax. The above INSERT statement can also be expressed
    +								as follows: </fo:block>
    +<fo:block font-family="Courier" linefeed-treatment="preserve" white-space-collapse="false" white-space-treatment="preserve" font-size="6pt" margin="12pt" padding="4pt" border="2px solid #882222" background-color="#FFEEDD" page-break-inside="avoid">create.insertInto(T_AUTHOR)
    +      .set(T_AUTHOR.ID, 100)
    +      .set(T_AUTHOR.FIRST_NAME, "Hermann")
    +      .set(T_AUTHOR.LAST_NAME, "Hesse")
    +      .newRecord()
    +      .set(T_AUTHOR.ID, 101)
    +      .set(T_AUTHOR.FIRST_NAME, "Alfred")
    +      .set(T_AUTHOR.LAST_NAME, "Döblin")
    +      .execute();</fo:block>
    +							<fo:block font-size="11pt">As you can see, this syntax is a bit more verbose, but also more
    +								type-safe, as every field can be matched with its value.</fo:block>
    +
    +							<fo:block font-family="Georgia" font-size="16pt" padding-top="10pt" padding-bottom="10pt" page-break-after="avoid">Example: ON DUPLICATE KEY UPDATE clause</fo:block>
    +							<fo:block font-size="11pt">The MySQL database supports a very convenient way to INSERT or
    +								UPDATE a record. This is a non-standard extension to the SQL syntax,
    +								which is supported by jOOQ and simulated in other RDBMS, where this is
    +								possible. Here is an example how to use the ON DUPLICATE KEY UPDATE
    +								clause: </fo:block>
    +<fo:block font-family="Courier" linefeed-treatment="preserve" white-space-collapse="false" white-space-treatment="preserve" font-size="6pt" margin="12pt" padding="4pt" border="2px solid #882222" background-color="#FFEEDD" page-break-inside="avoid">// Add a new author called "Koontz" with ID 3.
    +// If that ID is already present, update the author's name
    +create.insertInto(T_AUTHOR, T_AUTHOR.ID, T_AUTHOR.LAST_NAME)
    +      .values(3, "Koontz")
    +      .onDuplicateKeyUpdate()
    +      .set(T_AUTHOR.LAST_NAME, "Koontz")
    +      .execute();</fo:block>
    +
    +      						<fo:block font-family="Georgia" font-size="16pt" padding-top="10pt" padding-bottom="10pt" page-break-after="avoid">Example: INSERT .. RETURNING clause</fo:block>
    +							<fo:block font-size="11pt">The Postgres database has native support for an INSERT .. RETURNING
    +								clause. This is a very powerful concept that is simulated for all
    +								other dialects using JDBC's
    +								<fo:basic-link font-size="11pt" color="#882222" font-weight="bold" text-shadow="0 1px 2px #666666" external-destination="url('http://download.oracle.com/javase/6/docs/api/java/sql/Statement.html#getGeneratedKeys()')">getGeneratedKeys()</fo:basic-link>
    +								method. Take this example:</fo:block>
    +
    +<fo:block font-family="Courier" linefeed-treatment="preserve" white-space-collapse="false" white-space-treatment="preserve" font-size="6pt" margin="12pt" padding="4pt" border="2px solid #882222" background-color="#FFEEDD" page-break-inside="avoid">// Add another author, with a generated ID
    +Record&lt;?&gt; record =
    +create.insertInto(T_AUTHOR, T_AUTHOR.FIRST_NAME, T_AUTHOR.LAST_NAME)
    +      .values("Charlotte", "Roche")
    +      .returning(T_AUTHOR.ID)
    +      .fetchOne();
    +
    +System.out.println(record.getValue(T_AUTHOR.ID));
    +
    +// For some RDBMS, this also works when inserting several values
    +// The following should return a 2x2 table
    +Result&lt;?&gt; result =
    +create.insertInto(T_AUTHOR, T_AUTHOR.FIRST_NAME, T_AUTHOR.LAST_NAME)
    +      .values("Johann Wolfgang", "von Goethe")
    +      .values("Friedrich", "Schiller")
    +      // You can request any field. Also trigger-generated values
    +      .returning(T_AUTHOR.ID, T_AUTHOR.CREATION_DATE)
    +      .fetch();</fo:block>
    +
    +      						<fo:block font-size="11pt">
    +      							Be aware though, that this can lead to race-conditions
    +      							in those databases that cannot properly return generated
    +      							ID values.
    +      						</fo:block>
    +
    +      						<fo:block font-family="Georgia" font-size="16pt" padding-top="10pt" padding-bottom="10pt" page-break-after="avoid">Example: Non-DSL Query</fo:block>
    +      						<fo:block font-size="11pt">You can always use the more verbose regular syntax of the InsertQuery, if you need more control: </fo:block>
    +<fo:block font-family="Courier" linefeed-treatment="preserve" white-space-collapse="false" white-space-treatment="preserve" font-size="6pt" margin="12pt" padding="4pt" border="2px solid #882222" background-color="#FFEEDD" page-break-inside="avoid">// Insert a new author into the T_AUTHOR table
    +InsertQuery&lt;TAuthorRecord&gt; i = create.insertQuery(T_AUTHOR);
    +i.addValue(T_AUTHOR.ID, 100);
    +i.addValue(T_AUTHOR.FIRST_NAME, "Hermann");
    +i.addValue(T_AUTHOR.LAST_NAME, "Hesse");
    +
    +i.newRecord();
    +i.addValue(T_AUTHOR.ID, 101);
    +i.addValue(T_AUTHOR.FIRST_NAME, "Alfred");
    +i.addValue(T_AUTHOR.LAST_NAME, "Döblin");
    +i.execute();</fo:block>
    +
    +							<fo:block font-family="Georgia" font-size="16pt" padding-top="10pt" padding-bottom="10pt" page-break-after="avoid">Example: INSERT Query combined with SELECT statements</fo:block>
    +							<fo:block font-size="11pt">The InsertQuery.addValue() method is overloaded, such that you can
    +								also provide a Field, potentially containing an expression: </fo:block>
    +<fo:block font-family="Courier" linefeed-treatment="preserve" white-space-collapse="false" white-space-treatment="preserve" font-size="6pt" margin="12pt" padding="4pt" border="2px solid #882222" background-color="#FFEEDD" page-break-inside="avoid">// Insert a new author into the T_AUTHOR table
    +InsertQuery&lt;TAuthorRecord&gt; i = create.insertQuery(T_AUTHOR);
    +i.addValue(T_AUTHOR.ID, create.select(max(T_AUTHOR.ID).add(1)).from(T_AUTHOR).asField())
    +i.addValue(T_AUTHOR.FIRST_NAME, "Hermann");
    +i.addValue(T_AUTHOR.LAST_NAME, "Hesse");
    +i.execute();</fo:block>
    +							<fo:block font-size="11pt">Note that especially MySQL (and some other RDBMS) has some
    +								limitations regarding that syntax. You may not be able to
    +								select from the same table you're inserting into</fo:block>
    +
    +							<fo:block font-family="Georgia" font-size="16pt" padding-top="10pt" padding-bottom="10pt" page-break-after="avoid">Example: INSERT SELECT syntax support</fo:block>
    +							<fo:block font-size="11pt">In some occasions, you may prefer the INSERT SELECT syntax, for instance, when
    +								you copy records from one table to another: </fo:block>
    +<fo:block font-family="Courier" linefeed-treatment="preserve" white-space-collapse="false" white-space-treatment="preserve" font-size="6pt" margin="12pt" padding="4pt" border="2px solid #882222" background-color="#FFEEDD" page-break-inside="avoid">Insert i = create.insertInto(T_AUTHOR_ARCHIVE)
    +                 .select(create.selectFrom(T_AUTHOR).where(T_AUTHOR.DECEASED.isTrue()));
    +i.execute();</fo:block>
    +
    +
    +							<fo:block font-family="Georgia" font-size="16pt" padding-top="10pt" padding-bottom="10pt" page-break-after="avoid">UPDATE Statements</fo:block>
    +							<fo:block font-size="11pt">UPDATE statements are only possible on single tables. Support for
    +							multi-table updates will be implemented in the near future. </fo:block>
    +
    +							<fo:block font-family="Georgia" font-size="16pt" padding-top="10pt" padding-bottom="10pt" page-break-after="avoid">Example: SQL query and DSL query</fo:block>
    +							<fo:table width="100%" table-layout="fixed">
    +<fo:table-column column-width="88mm"/>
    +<fo:table-column column-width="88mm"/>
    +<fo:table-body>
    +<fo:table-row>
    +<fo:table-cell>
    +<fo:block>
    +<fo:block font-family="Courier" linefeed-treatment="preserve" white-space-collapse="false" white-space-treatment="preserve" font-size="6pt" margin="12pt" padding="4pt" border="2px solid #882222" background-color="#FFEEDD" page-break-inside="avoid">UPDATE T_AUTHOR
    +   SET FIRST_NAME = 'Hermann',
    +       LAST_NAME = 'Hesse'
    + WHERE ID = 3;
    + </fo:block>
    +</fo:block>
    +</fo:table-cell>
    +<fo:table-cell>
    +<fo:block>
    +<fo:block font-family="Courier" linefeed-treatment="preserve" white-space-collapse="false" white-space-treatment="preserve" font-size="6pt" margin="12pt" padding="4pt" border="2px solid #882222" background-color="#FFEEDD" page-break-inside="avoid">create.update(T_AUTHOR)
    +      .set(T_AUTHOR.FIRST_NAME, "Hermann")
    +      .set(T_AUTHOR.LAST_NAME, "Hesse")
    +      .where(T_AUTHOR.ID.equal(3))
    +      .execute();</fo:block>
    +</fo:block>
    +</fo:table-cell>
    +</fo:table-row>
    +</fo:table-body>
    +</fo:table>
    +
    +							<fo:block font-family="Georgia" font-size="16pt" padding-top="10pt" padding-bottom="10pt" page-break-after="avoid">Example: Non-DSL Query</fo:block>
    +							<fo:block font-size="11pt">Using the <fo:basic-link font-size="11pt" color="#882222" font-weight="bold" text-shadow="0 1px 2px #666666" external-destination="url('http://www.jooq.org/javadoc/latest/org/jooq/UpdateQuery.html')">org.jooq.UpdateQuery</fo:basic-link> class,
    +							this is how you could express an UPDATE statement:</fo:block>
    +<fo:block font-family="Courier" linefeed-treatment="preserve" white-space-collapse="false" white-space-treatment="preserve" font-size="6pt" margin="12pt" padding="4pt" border="2px solid #882222" background-color="#FFEEDD" page-break-inside="avoid">UpdateQuery&lt;TAuthorRecord&gt; u = create.updateQuery(T_AUTHOR);
    +u.addValue(T_AUTHOR.FIRST_NAME, "Hermann");
    +u.addValue(T_AUTHOR.FIRST_NAME, "Hesse");
    +u.addConditions(T_AUTHOR.ID.equal(3));
    +u.execute();</fo:block>
    +
    +
    +							<fo:block font-family="Georgia" font-size="16pt" padding-top="10pt" padding-bottom="10pt" page-break-after="avoid">DELETE Statements</fo:block>
    +							<fo:block font-size="11pt">DELETE statements are only possible on single tables. Support for
    +							multi-table deletes will be implemented in the near future. </fo:block>
    +
    +							<fo:block font-family="Georgia" font-size="16pt" padding-top="10pt" padding-bottom="10pt" page-break-after="avoid">Example: SQL query and DSL query</fo:block>
    +							<fo:table width="100%" table-layout="fixed">
    +<fo:table-column column-width="88mm"/>
    +<fo:table-column column-width="88mm"/>
    +<fo:table-body>
    +<fo:table-row>
    +<fo:table-cell>
    +<fo:block>
    +<fo:block font-family="Courier" linefeed-treatment="preserve" white-space-collapse="false" white-space-treatment="preserve" font-size="6pt" margin="12pt" padding="4pt" border="2px solid #882222" background-color="#FFEEDD" page-break-inside="avoid">DELETE T_AUTHOR
    + WHERE ID = 100;
    + </fo:block>
    +</fo:block>
    +</fo:table-cell>
    +<fo:table-cell>
    +<fo:block>
    +<fo:block font-family="Courier" linefeed-treatment="preserve" white-space-collapse="false" white-space-treatment="preserve" font-size="6pt" margin="12pt" padding="4pt" border="2px solid #882222" background-color="#FFEEDD" page-break-inside="avoid">create.delete(T_AUTHOR)
    +      .where(T_AUTHOR.ID.equal(100))
    +      .execute();</fo:block>
    +</fo:block>
    +</fo:table-cell>
    +</fo:table-row>
    +</fo:table-body>
    +</fo:table>
    +
    +							<fo:block font-family="Georgia" font-size="16pt" padding-top="10pt" padding-bottom="10pt" page-break-after="avoid">Example: Non-DSL Query</fo:block>
    +							<fo:block font-size="11pt">Using the <fo:basic-link font-size="11pt" color="#882222" font-weight="bold" text-shadow="0 1px 2px #666666" external-destination="url('http://www.jooq.org/javadoc/latest/org/jooq/DeleteQuery.html')">org.jooq.DeleteQuery</fo:basic-link> class,
    +							this is how you could express a DELETE statement: </fo:block>
    +<fo:block font-family="Courier" linefeed-treatment="preserve" white-space-collapse="false" white-space-treatment="preserve" font-size="6pt" margin="12pt" padding="4pt" border="2px solid #882222" background-color="#FFEEDD" page-break-inside="avoid">DeleteQuery&lt;TAuthorRecord&gt; d = create.deleteQuery(T_AUTHOR);
    +d.addConditions(T_AUTHOR.ID.equal(100));
    +d.execute();</fo:block>
    +
    +
    +							<fo:block font-family="Georgia" font-size="16pt" padding-top="10pt" padding-bottom="10pt" page-break-after="avoid">MERGE Statement</fo:block>
    +							<fo:block font-size="11pt">
    +								The MERGE statement is one of the most advanced standardised SQL
    +								constructs, which is supported by DB2, HSQLDB, Oracle, SQL Server and
    +								Sybase (MySQL has the similar INSERT .. ON DUPLICATE KEY UPDATE
    +								construct. H2's MERGE variant is currently not supported.)
    +							</fo:block>
    +							<fo:block font-size="11pt">
    +								The point of the standard MERGE statement is to take a TARGET table, and
    +								merge (INSERT, UPDATE) data from a SOURCE table into it. DB2, Oracle,
    +								SQL Server and Sybase also allow for DELETING some data and for adding
    +								many additional clauses. With jOOQ 2.0.1, only Oracle's MERGE extensions are supported.
    +								Here is an example:
    +							</fo:block>
    +
    +							<fo:table width="100%" table-layout="fixed">
    +<fo:table-column column-width="88mm"/>
    +<fo:table-column column-width="88mm"/>
    +<fo:table-body>
    +<fo:table-row>
    +<fo:table-cell>
    +<fo:block>
    +<fo:block font-family="Courier" linefeed-treatment="preserve" white-space-collapse="false" white-space-treatment="preserve" font-size="6pt" margin="12pt" padding="4pt" border="2px solid #882222" background-color="#FFEEDD" page-break-inside="avoid">-- Check if there is already an author called 'Hitchcock'
    +-- If there is, rename him to John. If there isn't add him.
    +
    +MERGE INTO T_AUTHOR
    +USING (SELECT 1 FROM DUAL)
    +ON (LAST_NAME = 'Hitchcock')
    +WHEN MATCHED THEN UPDATE SET FIRST_NAME = 'John'
    +WHEN NOT MATCHED THEN INSERT (LAST_NAME)
    +                      VALUES ('Hitchcock')</fo:block>
    +</fo:block>
    +</fo:table-cell>
    +<fo:table-cell>
    +<fo:block>
    +<fo:block font-family="Courier" linefeed-treatment="preserve" white-space-collapse="false" white-space-treatment="preserve" font-size="6pt" margin="12pt" padding="4pt" border="2px solid #882222" background-color="#FFEEDD" page-break-inside="avoid">create.mergeInto(T_AUTHOR)
    +      .using(create().selectOne())
    +      .on(T_AUTHOR.LAST_NAME.equal("Hitchcock"))
    +      .whenMatchedThenUpdate()
    +      .set(T_AUTHOR.FIRST_NAME, "John")
    +      .whenNotMatchedThenInsert(T_AUTHOR.LAST_NAME)
    +      .values("Hitchcock")
    +      .execute();
    +
    +</fo:block>
    +</fo:block>
    +</fo:table-cell>
    +</fo:table-row>
    +</fo:table-body>
    +</fo:table>
    +
    +
    +							<fo:block font-family="Georgia" font-size="16pt" padding-top="10pt" padding-bottom="10pt" page-break-after="avoid">TRUNCATE Statement</fo:block>
    +							<fo:block font-size="11pt">
    +								The syntax is trivial:
    +							</fo:block>
    +
    +							<fo:table width="100%" table-layout="fixed">
    +<fo:table-column column-width="88mm"/>
    +<fo:table-column column-width="88mm"/>
    +<fo:table-body>
    +<fo:table-row>
    +<fo:table-cell>
    +<fo:block>
    +<fo:block font-family="Courier" linefeed-treatment="preserve" white-space-collapse="false" white-space-treatment="preserve" font-size="6pt" margin="12pt" padding="4pt" border="2px solid #882222" background-color="#FFEEDD" page-break-inside="avoid">TRUNCATE TABLE T_AUTHOR;</fo:block>
    +</fo:block>
    +</fo:table-cell>
    +<fo:table-cell>
    +<fo:block>
    +<fo:block font-family="Courier" linefeed-treatment="preserve" white-space-collapse="false" white-space-treatment="preserve" font-size="6pt" margin="12pt" padding="4pt" border="2px solid #882222" background-color="#FFEEDD" page-break-inside="avoid">create.truncate(T_AUTHOR).execute();</fo:block>
    +</fo:block>
    +</fo:table-cell>
    +</fo:table-row>
    +</fo:table-body>
    +</fo:table>
    +							<fo:block font-size="11pt">This is not supported by Ingres and SQLite. jOOQ will execute a DELETE FROM
    +								T_AUTHOR statement instead. </fo:block>
    +						<fo:block font-family="Georgia" font-size="18pt" padding-top="12pt" padding-bottom="12pt" page-break-after="avoid" id="ResultQuery">
    +<fo:marker marker-class-name="section">
    +<fo:block>1.7. ResultQuery and various ways of fetching data</fo:block>
    +</fo:marker>1.7. ResultQuery and various ways of fetching data</fo:block>
    +<fo:block font-size="11pt">
    +							Various jOOQ query type extend the ResultQuery which provides many means of
    +							fetching data. In general, fetching means executing and returning some
    +							sort of result.
    +						</fo:block>
    +							<fo:block font-family="Georgia" font-size="16pt" padding-top="10pt" padding-bottom="10pt" page-break-after="avoid">The ResultQuery provides many convenience methods</fo:block>
    +							<fo:block font-size="11pt">These methods allow for fetching a jOOQ Result or parts of it.</fo:block>
    +
    +<fo:block font-family="Courier" linefeed-treatment="preserve" white-space-collapse="false" white-space-treatment="preserve" font-size="6pt" margin="12pt" padding="4pt" border="2px solid #882222" background-color="#FFEEDD" page-break-inside="avoid"><![CDATA[// Fetch the whole result
    +Result<R> fetch();
    +
    +// Fetch a single field from the result
    +<T> List<T> fetch(Field<T> field);
    +    List<?> fetch(int fieldIndex);
    +<T> List<T> fetch(int fieldIndex, Class<? extends T> type);
    +    List<?> fetch(String fieldName);
    +<T> List<T> fetch(String fieldName, Class<? extends T> type);
    +
    +// Fetch the first Record
    +R fetchAny();
    +
    +// Fetch exactly one Record
    +R fetchOne();
    +
    +// Fetch a single field of exactly one Record
    +<T> T  fetchOne(Field<T> field);
    +Object fetchOne(int fieldIndex);
    +<T> T  fetchOne(int fieldIndex, Class<? extends T> type);
    +Object fetchOne(String fieldName);
    +<T> T  fetchOne(String fieldName, Class<? extends T> type);]]></fo:block>
    +
    +							<fo:block font-size="11pt">These methods transform the result into another form, if org.jooq.Result is not optimal</fo:block>
    +
    +<fo:block font-family="Courier" linefeed-treatment="preserve" white-space-collapse="false" white-space-treatment="preserve" font-size="6pt" margin="12pt" padding="4pt" border="2px solid #882222" background-color="#FFEEDD" page-break-inside="avoid"><![CDATA[// Fetch the resulting records as Maps
    +List<Map<String, Object>> fetchMaps();
    +     Map<String, Object>  fetchOneMap();
    +
    +// Fetch the result as a Map
    +<K>    Map<K, R> fetchMap(Field<K> key);
    +<K, V> Map<K, V> fetchMap(Field<K> key, Field<V> value);
    +
    +// Fetch the resulting records as arrays
    +Object[][] fetchArrays();
    +Object[]   fetchOneArray();
    +
    +// Fetch a single field as an array
    +<T>  T[] fetchArray(Field<T> field);
    +Object[] fetchArray(int fieldIndex);
    +<T>  T[] fetchArray(int fieldIndex, Class<? extends T> type);
    +Object[] fetchArray(String fieldName);
    +<T>  T[] fetchArray(String fieldName, Class<? extends T> type);]]></fo:block>
    +
    +							<fo:block font-size="11pt">These methods transform the result into a user-defined form, if org.jooq.Result is not optimal</fo:block>
    +
    +<fo:block font-family="Courier" linefeed-treatment="preserve" white-space-collapse="false" white-space-treatment="preserve" font-size="6pt" margin="12pt" padding="4pt" border="2px solid #882222" background-color="#FFEEDD" page-break-inside="avoid"><![CDATA[// Fetch the resulting records into a custom POJO
    +// type, which may or may not be JPA-annotated
    +// Use the generator's <pojos>true</pojos> and <jpaAnnotation>true</jpaAnnotation>
    +// configurations to generate such POJOs with jOOQ
    +<E> List<E> fetchInto(Class<? extends E> type);
    +
    +// Fetch the resulting records into a custom
    +// record handler, similar to how Spring JdbcTemplate's
    +// RowMapper or the Ollin Framework works.
    +<H extends RecordHandler<R>> H fetchInto(H handler);
    +
    +// These change the behaviour of fetching itself,
    +// especially, when not all data should be
    +// fetched at once
    +// ----------------------------------------------
    +
    +// Fetch a Cursor for lazy iteration
    +Cursor<R> fetchLazy();
    +
    +// Or a JDBC ResultSet, if you prefer that
    +ResultSet fetchResultSet();
    +
    +// Fetch data asynchronously and let client code
    +// decide, when the data must be available.
    +// This makes use of the java.util.concurrent API,
    +// Similar to how Avajé Ebean works.
    +FutureResult<R> fetchLater();
    +FutureResult<R> fetchLater(ExecutorService executor);]]></fo:block>
    +						<fo:block font-family="Georgia" font-size="18pt" padding-top="12pt" padding-bottom="12pt" page-break-after="avoid" id="BindValues">
    +<fo:marker marker-class-name="section">
    +<fo:block>1.8. Bind values</fo:block>
    +</fo:marker>1.8. Bind values</fo:block>
    +<fo:block font-size="11pt">
    +							Variable binding has a great impact on how you design your SQL queries.
    +							It will influence your SQL queries' security aspect as well as execution speed.
    +						</fo:block>
    +							<fo:block font-family="Georgia" font-size="16pt" padding-top="10pt" padding-bottom="10pt" page-break-after="avoid">Bind values</fo:block>
    +							<fo:block font-size="11pt">
    +								Bind values are used in SQL / JDBC for various reasons. Among the most
    +								obvious ones are:
    +							</fo:block>
    +							<fo:block padding-top="16pt" padding-bottom="16pt" page-break-inside="avoid">
    +<fo:list-block>
    +								<fo:list-item>
    +<fo:list-item-label>
    +<fo:block font-size="11pt" page-break-inside="avoid">-</fo:block>
    +</fo:list-item-label>
    +<fo:list-item-body start-indent="body-start()">
    +<fo:block font-size="11pt" page-break-inside="avoid">
    +									Protection against SQL injection. Instead of inlining values
    +									possibly originating from user input, you bind those values to
    +									your prepared statement and let the JDBC driver / database take
    +									care of handling security aspects.
    +								</fo:block>
    +</fo:list-item-body>
    +</fo:list-item>
    +								<fo:list-item>
    +<fo:list-item-label>
    +<fo:block font-size="11pt" page-break-inside="avoid">-</fo:block>
    +</fo:list-item-label>
    +<fo:list-item-body start-indent="body-start()">
    +<fo:block font-size="11pt" page-break-inside="avoid">
    +									Increased speed. Advanced databases such as Oracle can keep
    +									execution plans of similar queries in a dedicated cache to prevent
    +									hard-parsing your query again and again. In many cases, the actual
    +									value of a bind variable does not influence the execution plan, hence
    +									it can be reused. Preparing a statement will thus be faster
    +								</fo:block>
    +</fo:list-item-body>
    +</fo:list-item>
    +								<fo:list-item>
    +<fo:list-item-label>
    +<fo:block font-size="11pt" page-break-inside="avoid">-</fo:block>
    +</fo:list-item-label>
    +<fo:list-item-body start-indent="body-start()">
    +<fo:block font-size="11pt" page-break-inside="avoid">
    +									On a JDBC level, you can also reuse the SQL string and prepared statement
    +									object instead of constructing it again, as you can bind new values to
    +									the prepared statement. This is currently not supported by jOOQ, though
    +								</fo:block>
    +</fo:list-item-body>
    +</fo:list-item>
    +							</fo:list-block>
    +</fo:block>
    +
    +							<fo:block font-family="Georgia" font-size="16pt" padding-top="10pt" padding-bottom="10pt" page-break-after="avoid">Ways to introduce bind values with jOOQ</fo:block>
    +							<fo:block font-size="11pt">
    +								Bind values are omni-present in jOOQ. Whenever you create a condition,
    +								you're actually also adding a bind value:
    +							</fo:block>
    +<fo:block font-family="Courier" linefeed-treatment="preserve" white-space-collapse="false" white-space-treatment="preserve" font-size="6pt" margin="12pt" padding="4pt" border="2px solid #882222" background-color="#FFEEDD" page-break-inside="avoid">// In jOOQ, "Poe" will be the bind value bound to the condition
    +LAST_NAME.equal("Poe");</fo:block>
    +
    +
    +							<fo:block font-size="11pt">
    +								The above notation is actually convenient way to explicitly create
    +								a bind value for "Poe". You could also write this, instead:
    +							</fo:block>
    +<fo:block font-family="Courier" linefeed-treatment="preserve" white-space-collapse="false" white-space-treatment="preserve" font-size="6pt" margin="12pt" padding="4pt" border="2px solid #882222" background-color="#FFEEDD" page-break-inside="avoid">// The Factory allows for explicitly creating bind values
    +LAST_NAME.equal(Factory.val("Poe"));
    +
    +// Or, when static importing Factory.val:
    +LAST_NAME.equal(val("Poe"))</fo:block>
    +
    +							<fo:block font-size="11pt">
    +								Once created, bind values are part of the query's syntax tree (see
    +								<fo:basic-link font-size="11pt" color="#882222" font-weight="bold" text-shadow="0 1px 2px #666666" internal-destination="QueryPart">the manual's section about jOOQ's architecture</fo:basic-link>
    +							    for more information about jOOQ's internals),
    +								and cannot be modified directly anymore. If you wish to reuse a query and
    +								modify bind values between subsequent query executions, you can access them again
    +								through the <fo:basic-link font-size="11pt" color="#882222" font-weight="bold" text-shadow="0 1px 2px #666666" external-destination="url('http://www.jooq.org/javadoc/latest/org/jooq/Query.html')">org.jooq.Query</fo:basic-link> interface:
    +							</fo:block>
    +
    +<fo:block font-family="Courier" linefeed-treatment="preserve" white-space-collapse="false" white-space-treatment="preserve" font-size="6pt" margin="12pt" padding="4pt" border="2px solid #882222" background-color="#FFEEDD" page-break-inside="avoid"><![CDATA[// Access the first bind value from a query. Indexes are counted from 1, just as with JDBC
    +Query query = create.select().from(T_AUTHOR).where(LAST_NAME.equal("Poe"));
    +Param<?> param = query.getParam("1");
    +
    +// You could now modify the Query's underlying bind value:
    +if ("Poe".equal(param.getValue())) {
    +    param.setConverted("Orwell");
    +}]]></fo:block>
    +
    +							<fo:block font-size="11pt">
    +								The <fo:basic-link font-size="11pt" color="#882222" font-weight="bold" text-shadow="0 1px 2px #666666" external-destination="url('http://www.jooq.org/javadoc/latest/org/jooq/Param.html')">org.jooq.Param</fo:basic-link> type can also be named explicitly
    +								using the Factory's param() methods:
    +							</fo:block>
    +<fo:block font-family="Courier" linefeed-treatment="preserve" white-space-collapse="false" white-space-treatment="preserve" font-size="6pt" margin="12pt" padding="4pt" border="2px solid #882222" background-color="#FFEEDD" page-break-inside="avoid"><![CDATA[// Create a query with a named parameter. You can then use that name for accessing the parameter again
    +Query query1 = create.select().from(T_AUTHOR).where(LAST_NAME.equal(param("lastName", "Poe")));
    +Param<?> param1 = query.getParam("lastName");
    +
    +// Or, keep a reference to the typed parameter in order not to lose the <T> type information:
    +Param<String> param2 = param("lastName", "Poe");
    +Query query2 = create.select().from(T_AUTHOR).where(LAST_NAME.equal(param2));
    +
    +// You can now change the bind value directly on the Param reference:
    +param2.setValue("Orwell");
    +]]></fo:block>
    +
    +							<fo:block font-size="11pt">
    +								The <fo:basic-link font-size="11pt" color="#882222" font-weight="bold" text-shadow="0 1px 2px #666666" external-destination="url('http://www.jooq.org/javadoc/latest/org/jooq/Query.html')">org.jooq.Query</fo:basic-link> interface also allows for
    +								setting new bind values directly, without accessing the Param type:
    +							</fo:block>
    +
    +<fo:block font-family="Courier" linefeed-treatment="preserve" white-space-collapse="false" white-space-treatment="preserve" font-size="6pt" margin="12pt" padding="4pt" border="2px solid #882222" background-color="#FFEEDD" page-break-inside="avoid">Query query1 = create.select().from(T_AUTHOR).where(LAST_NAME.equal("Poe"));
    +query1.bind(1, "Orwell");
    +
    +// Or, with named parameters
    +Query query2 = create.select().from(T_AUTHOR).where(LAST_NAME.equal(param("lastName", "Poe")));
    +query2.bind("lastName", "Orwell");</fo:block>
    +
    +							<fo:block font-size="11pt">
    +								NOTE: Should you wish to use jOOQ only as a query builder and execute
    +								queries with another tool, such as Spring Data instead, you can also
    +								use the Factory's renderNamedParams() method, to actually render named
    +								parameter names in generated SQL:
    +							</fo:block>
    +
    +							<fo:table width="100%" table-layout="fixed">
    +<fo:table-column column-width="88mm"/>
    +<fo:table-column column-width="88mm"/>
    +<fo:table-body>
    +<fo:table-row>
    +<fo:table-cell>
    +<fo:block>
    +<fo:block font-family="Courier" linefeed-treatment="preserve" white-space-collapse="false" white-space-treatment="preserve" font-size="6pt" margin="12pt" padding="4pt" border="2px solid #882222" background-color="#FFEEDD" page-break-inside="avoid">-- The named bind variable can be rendered
    +
    +SELECT *
    +FROM T_AUTHOR
    +WHERE LAST_NAME = :lastName
    +</fo:block>
    +</fo:block>
    +</fo:table-cell>
    +<fo:table-cell>
    +<fo:block>
    +<fo:block font-family="Courier" linefeed-treatment="preserve" white-space-collapse="false" white-space-treatment="preserve" font-size="6pt" margin="12pt" padding="4pt" border="2px solid #882222" background-color="#FFEEDD" page-break-inside="avoid">create.renderNamedParams(
    +    create.select()
    +          .from(T_AUTHOR)
    +          .where(LAST_NAME.equal(
    +                 param("lastName", "Poe"))));</fo:block>
    +</fo:block>
    +</fo:table-cell>
    +</fo:table-row>
    +</fo:table-body>
    +</fo:table>
    +						<fo:block font-family="Georgia" font-size="18pt" padding-top="12pt" padding-bottom="12pt" page-break-after="avoid" id="QueryPart">
    +<fo:marker marker-class-name="section">
    +<fo:block>1.9. QueryParts and the global architecture</fo:block>
    +</fo:marker>1.9. QueryParts and the global architecture</fo:block>
    +<fo:block font-size="11pt">When constructing Query objects in jOOQ, everything is
    +							considered a QueryPart. The purpose of this quickly becomes clear when
    +							checking out the QueryPart API essentials</fo:block>
    +							<fo:block font-family="Georgia" font-size="16pt" padding-top="10pt" padding-bottom="10pt" page-break-after="avoid">Everything is a QueryPart</fo:block>
    +							<fo:block font-size="11pt">
    +								A
    +								<fo:basic-link font-size="11pt" color="#882222" font-weight="bold" text-shadow="0 1px 2px #666666" external-destination="url('http://www.jooq.org/javadoc/latest/org/jooq/Query.html')">org.jooq.Query</fo:basic-link>
    +								and all its contained objects is a
    +								<fo:basic-link font-size="11pt" color="#882222" font-weight="bold" text-shadow="0 1px 2px #666666" external-destination="url('http://www.jooq.org/javadoc/latest/org/jooq/QueryPart.html')">org.jooq.QueryPart</fo:basic-link>.
    +								QueryParts essentially provide this functionality:
    +							</fo:block>
    +							<fo:block padding-top="16pt" padding-bottom="16pt" page-break-inside="avoid">
    +<fo:list-block>
    +								<fo:list-item>
    +<fo:list-item-label>
    +<fo:block font-size="11pt" page-break-inside="avoid">-</fo:block>
    +</fo:list-item-label>
    +<fo:list-item-body start-indent="body-start()">
    +<fo:block font-size="11pt" page-break-inside="avoid">they can render SQL using the toSQL(RenderContext) method</fo:block>
    +</fo:list-item-body>
    +</fo:list-item>
    +								<fo:list-item>
    +<fo:list-item-label>
    +<fo:block font-size="11pt" page-break-inside="avoid">-</fo:block>
    +</fo:list-item-label>
    +<fo:list-item-body start-indent="body-start()">
    +<fo:block font-size="11pt" page-break-inside="avoid">they can bind variables using the bind(BindContext) method</fo:block>
    +</fo:list-item-body>
    +</fo:list-item>
    +							</fo:list-block>
    +</fo:block>
    +
    +							<fo:block font-size="11pt">Both of these methods are contained in jOOQ's internal API's
    +							   <fo:basic-link font-size="11pt" color="#882222" font-weight="bold" text-shadow="0 1px 2px #666666" external-destination="url('http://www.jooq.org/javadoc/latest/org/jooq/QueryPartInternal.html')">org.jooq.QueryPartInternal</fo:basic-link>, which is
    +							   internally implemented by every QueryPart. QueryPart internals are best
    +							   illustrated with an example.</fo:block>
    +
    +						   <fo:block font-family="Georgia" font-size="16pt" padding-top="10pt" padding-bottom="10pt" page-break-after="avoid">Example: CompareCondition</fo:block>
    +						   <fo:block font-size="11pt">A simple example can be provided by checking out jOOQ's internal
    +								representation of a
    +								<fo:basic-link font-size="11pt" color="#882222" font-weight="bold" text-shadow="0 1px 2px #666666" external-destination="url('http://www.jooq.org/javadoc/latest/org/jooq/impl/CompareCondition.html')">org.jooq.impl.CompareCondition</fo:basic-link>.
    +								It is used for any condition
    +								comparing two fields as for example the T_AUTHOR.ID = T_BOOK.AUTHOR_ID
    +								condition here: </fo:block>
    +<fo:block font-family="Courier" linefeed-treatment="preserve" white-space-collapse="false" white-space-treatment="preserve" font-size="6pt" margin="12pt" padding="4pt" border="2px solid #882222" background-color="#FFEEDD" page-break-inside="avoid">-- [...]
    +FROM T_AUTHOR
    +JOIN T_BOOK ON T_AUTHOR.ID = T_BOOK.AUTHOR_ID
    +-- [...]</fo:block>
    +
    +							<fo:block font-size="11pt">This is how jOOQ implements such a condition: </fo:block>
    +
    +<fo:block font-family="Courier" linefeed-treatment="preserve" white-space-collapse="false" white-space-treatment="preserve" font-size="6pt" margin="12pt" padding="4pt" border="2px solid #882222" background-color="#FFEEDD" page-break-inside="avoid"><![CDATA[@Override
    +public final void bind(BindContext context) throws SQLException {
    +    // The CompareCondition itself does not bind any variables.
    +    // But the two fields involved in the condition might do so...
    +    context.bind(field1).bind(field2);
    +}
    +
    +@Override
    +public final void toSQL(RenderContext context) {
    +    // The CompareCondition delegates rendering of the Fields to the Fields
    +    // themselves and connects them using the Condition's comparator operator:
    +    context.sql(field1)
    +           .sql(" ");
    +
    +    // If the second field is null, some convenience behaviour can be
    +    // implemented here
    +    if (field2.isNullLiteral()) {
    +        switch (comparator) {
    +            case EQUALS:
    +                context.sql("is null");
    +                break;
    +
    +            case NOT_EQUALS:
    +                context.sql("is not null");
    +                break;
    +
    +            default:
    +                throw new IllegalStateException("Cannot compare null with " + comparator);
    +        }
    +    }
    +
    +    // By default, also delegate the right hand side's SQL rendering to the
    +    // underlying field
    +    else {
    +        context.sql(comparator.toSQL())
    +               .sql(" ")
    +               .sql(field2);
    +    }
    +}
    +]]></fo:block>
    +							<fo:block font-size="11pt">For more complex examples, please refer to the codebase, directly</fo:block>
    +						<fo:block font-family="Georgia" font-size="18pt" padding-top="12pt" padding-bottom="12pt" page-break-after="avoid" id="Serializability">
    +<fo:marker marker-class-name="section">
    +<fo:block>1.10. Serializability of QueryParts and Results</fo:block>
    +</fo:marker>1.10. Serializability of QueryParts and Results</fo:block>
    +<fo:block font-size="11pt">Most of the jOOQ API implements the Serializable interface.
    +							This helps storing queries and partial queries in files, transferring
    +							queries or result data over TCP/IP, etc. </fo:block>
    +							<fo:block font-family="Georgia" font-size="16pt" padding-top="10pt" padding-bottom="10pt" page-break-after="avoid">Attaching QueryParts</fo:block>
    +							<fo:block font-size="11pt">
    +								The only transient element in any jOOQ object is the
    +								<fo:basic-link font-size="11pt" color="#882222" font-weight="bold" text-shadow="0 1px 2px #666666" internal-destination="Factory">The Factory class</fo:basic-link>'s
    +								underlying
    +								<fo:basic-link font-size="11pt" color="#882222" font-weight="bold" text-shadow="0 1px 2px #666666" external-destination="url('http://download.oracle.com/javase/6/docs/api/java/sql/Connection.html')">java.sql.Connection</fo:basic-link>. When you want to execute queries after
    +								de-serialisation, or when you want to store/refresh/delete
    +								<fo:basic-link font-size="11pt" color="#882222" font-weight="bold" text-shadow="0 1px 2px #666666" internal-destination="UpdatableRecord">Updatable Records</fo:basic-link>,
    +								you will have to "import" or "re-attach" them to a Factory
    +							</fo:block>
    +<fo:block font-family="Courier" linefeed-treatment="preserve" white-space-collapse="false" white-space-treatment="preserve" font-size="6pt" margin="12pt" padding="4pt" border="2px solid #882222" background-color="#FFEEDD" page-break-inside="avoid">// Deserialise a SELECT statement
    +ObjectInputStream in = new ObjectInputStream(...);
    +Select&lt;?&gt; select = (Select&lt;?&gt;) in.readObject();
    +
    +// This will throw a DetachedException:
    +select.execute();
    +
    +// In order to execute the above select, attach it first
    +Factory create = new Factory(connection, SQLDialect.ORACLE);
    +create.attach(select);</fo:block>
    +
    +
    +							<fo:block font-family="Georgia" font-size="16pt" padding-top="10pt" padding-bottom="10pt" page-break-after="avoid">Automatically attaching QueryParts</fo:block>
    +							<fo:block font-size="11pt">
    +								Note, this functionality is deprecated with jOOQ 2.1.0.
    +								Please use the <fo:basic-link font-size="11pt" color="#882222" font-weight="bold" text-shadow="0 1px 2px #666666" internal-destination="ExecuteListener">ExecuteListener</fo:basic-link> API
    +								instead, to provide jOOQ queries with a
    +								<fo:basic-link font-size="11pt" color="#882222" font-weight="bold" text-shadow="0 1px 2px #666666" external-destination="url('http://download.oracle.com/javase/6/docs/api/java/sql/Connection.html')">java.sql.Connection</fo:basic-link> before
    +								execution.
    +							</fo:block>
    +							<fo:block font-size="11pt">In simple cases, you can register a ConfigurationProvider in jOOQ's ConfigurationRegistry</fo:block>
    +<fo:block font-family="Courier" linefeed-treatment="preserve" white-space-collapse="false" white-space-treatment="preserve" font-size="6pt" margin="12pt" padding="4pt" border="2px solid #882222" background-color="#FFEEDD" page-break-inside="avoid">// Create your own custom ConfigurationProvider that will make
    +// your default Factory available to jOOQ
    +ConfigurationProvider provider = new CustomConfigurationProvider();
    +
    +// Statically register the provider to jOOQ's ConfigurationRegistry
    +ConfigurationRegistry.setProvider(provider);</fo:block>
    +
    +							<fo:block font-size="11pt">Once you have executed these steps, all subsequent deserialisations
    +								will try to access a Configuration (containing a JDBC Connection) from
    +								your ConfigurationProvider. This may be useful when </fo:block>
    +							<fo:block padding-top="16pt" padding-bottom="16pt" page-break-inside="avoid">
    +<fo:list-block>
    +								<fo:list-item>
    +<fo:list-item-label>
    +<fo:block font-size="11pt" page-break-inside="avoid">-</fo:block>
    +</fo:list-item-label>
    +<fo:list-item-body start-indent="body-start()">
    +<fo:block font-size="11pt" page-break-inside="avoid">transporting jOOQ QueryParts or Records via TCP/IP, RMI, etc (e.g.
    +									between client and server), before immediately executing queries,
    +									storing UpdatableRecords</fo:block>
    +</fo:list-item-body>
    +</fo:list-item>
    +								<fo:list-item>
    +<fo:list-item-label>
    +<fo:block font-size="11pt" page-break-inside="avoid">-</fo:block>
    +</fo:list-item-label>
    +<fo:list-item-body start-indent="body-start()">
    +<fo:block font-size="11pt" page-break-inside="avoid">
    +									Using automatic mechanisms as known in
    +									<fo:basic-link font-size="11pt" color="#882222" font-weight="bold" text-shadow="0 1px 2px #666666" external-destination="url('http://wicket.apache.org/')">Wicket</fo:basic-link>
    +								</fo:block>
    +</fo:list-item-body>
    +</fo:list-item>
    +							</fo:list-block>
    +</fo:block>
    +						<fo:block font-family="Georgia" font-size="18pt" padding-top="12pt" padding-bottom="12pt" page-break-after="avoid" id="Extend">
    +<fo:marker marker-class-name="section">
    +<fo:block>1.11. Extend jOOQ with custom types</fo:block>
    +</fo:marker>1.11. Extend jOOQ with custom types</fo:block>
    +<fo:block font-size="11pt">Maybe jOOQ is missing functionality that you would like to see,
    +							or you can't wait for the next release... In this case, you can extend
    +							any of the following open jOOQ implementation classes</fo:block>
    +							<fo:block font-family="Georgia" font-size="16pt" padding-top="10pt" padding-bottom="10pt" page-break-after="avoid">Write your own QueryPart implementations</fo:block>
    +							<fo:block font-size="11pt">If a SQL clause is too complex to express with jOOQ, you can extend
    +								either one of the following types for use directly in a jOOQ query:</fo:block>
    +<fo:block font-family="Courier" linefeed-treatment="preserve" white-space-collapse="false" white-space-treatment="preserve" font-size="6pt" margin="12pt" padding="4pt" border="2px solid #882222" background-color="#FFEEDD" page-break-inside="avoid">public abstract class CustomField&lt;T&gt; extends AbstractField&lt;T&gt; {
    +  // [...]
    +}
    +public abstract class CustomCondition extends AbstractCondition {
    +  // [...]
    +}</fo:block>
    +
    +							<fo:block font-size="11pt">These two classes are declared public and covered by integration
    +								tests. When you extend these classes, you will have to provide your
    +								own implementations for the <fo:basic-link font-size="11pt" color="#882222" font-weight="bold" text-shadow="0 1px 2px #666666" internal-destination="QueryPart">QueryParts</fo:basic-link>'
    +								bind(<fo:basic-link font-size="11pt" color="#882222" font-weight="bold" text-shadow="0 1px 2px #666666" external-destination="url('http://www.jooq.org/javadoc/latest/org/jooq/BindContext.html')">BindContext</fo:basic-link>) and
    +								toSQL(<fo:basic-link font-size="11pt" color="#882222" font-weight="bold" text-shadow="0 1px 2px #666666" external-destination="url('http://www.jooq.org/javadoc/latest/org/jooq/RenderContext.html')">RenderContext</fo:basic-link>) methods:</fo:block>
    +<fo:block font-family="Courier" linefeed-treatment="preserve" white-space-collapse="false" white-space-treatment="preserve" font-size="6pt" margin="12pt" padding="4pt" border="2px solid #882222" background-color="#FFEEDD" page-break-inside="avoid">// This method must produce valid SQL. If your QueryPart contains other QueryParts, you may delegate SQL code generation to them
    +// in the correct order, passing the render context.
    +//
    +// If context.inline() is true, you must inline all bind variables
    +// If context.inline() is false, you must generate ? for your bind variables
    +public void toSQL(RenderContext context);
    +
    +// This method must bind all bind variables to a PreparedStatement. If your QueryPart contains other QueryParts, you may delegate
    +// variable binding to them in the correct order, passing the bind context.
    +//
    +// Every QueryPart must ensure, that it starts binding its variables at context.nextIndex().
    +public void bind(BindContext context) throws DataAccessException;</fo:block>
    +
    +							<fo:block font-size="11pt">The above contract may be a bit tricky to understand at first. The
    +								best thing is to check out jOOQ source code and have a look at a
    +								couple of QueryParts, to see how it's done.</fo:block>
    +							<fo:block font-family="Georgia" font-size="16pt" padding-top="10pt" padding-bottom="10pt" page-break-after="avoid">Plain SQL as an alternative</fo:block>
    +							<fo:block font-size="11pt">If you don't need integration of rather complex QueryParts into
    +								jOOQ, then you might be safer using simple
    +								<fo:basic-link font-size="11pt" color="#882222" font-weight="bold" text-shadow="0 1px 2px #666666" internal-destination="SQL">Plain SQL</fo:basic-link> functionality,
    +								where you can provide jOOQ with a simple String representation of your
    +								embedded SQL. </fo:block>
    +						<fo:block break-after="page"/>
    +<fo:block font-family="Georgia" font-size="18pt" padding-top="12pt" padding-bottom="12pt" page-break-after="avoid" id="META">
    +<fo:marker marker-class-name="section">
    +<fo:block>2. Meta model code generation</fo:block>
    +</fo:marker>2. Meta model code generation</fo:block>
    +<fo:block font-size="11pt">In these sections you will learn about how to configure and use
    +					jOOQ's source code generator</fo:block>
    +					<fo:block font-family="Georgia" font-size="16pt" padding-top="10pt" padding-bottom="10pt" page-break-after="avoid">Overview</fo:block>
    +					<fo:block font-size="11pt">
    +						In the previous chapter, we have seen how to use the
    +						<fo:basic-link font-size="11pt" color="#882222" font-weight="bold" text-shadow="0 1px 2px #666666" internal-destination="Factory">Factory</fo:basic-link> in order to create
    +						<fo:basic-link font-size="11pt" color="#882222" font-weight="bold" text-shadow="0 1px 2px #666666" internal-destination="Query">Queries</fo:basic-link> and fetch data in
    +						<fo:basic-link font-size="11pt" color="#882222" font-weight="bold" text-shadow="0 1px 2px #666666" internal-destination="Result">Results</fo:basic-link>. The strength of jOOQ not
    +						only lies in its object-oriented
    +						<fo:basic-link font-size="11pt" color="#882222" font-weight="bold" text-shadow="0 1px 2px #666666" internal-destination="QueryPart">Query model</fo:basic-link>,
    +						but also in the fact
    +						that Java source code is generated from your database schema into the
    +						META data model. jOOQ follows the paradigm, that your database comes
    +						first (see also <fo:basic-link font-size="11pt" color="#882222" font-weight="bold" text-shadow="0 1px 2px #666666" external-destination="url('&lt;?=$root?&gt;/')">home page</fo:basic-link>).
    +						This means that you should not modify
    +						generated source code, but only adapt entities in your database. Every
    +						change in your database is reflected in a corresponding change in your
    +						generated meta-model.
    +					</fo:block>
    +					<fo:block font-size="11pt">
    +						Artefacts, such as tables, views, user defined types, sequences, stored
    +						procedures, packages have a corresponding artefact in Java.
    +					</fo:block>
    +				<fo:block font-family="Georgia" font-size="18pt" padding-top="12pt" padding-bottom="12pt" page-break-after="avoid" id="Configuration">
    +<fo:marker marker-class-name="section">
    +<fo:block>2.1. Configuration and setup of the generator</fo:block>
    +</fo:marker>2.1. Configuration and setup of the generator</fo:block>
    +<fo:block font-size="11pt">jOOQ uses a simple configuration file to configure source code generation.</fo:block>
    +							<fo:block font-family="Georgia" font-size="16pt" padding-top="10pt" padding-bottom="10pt" page-break-after="avoid">The deliverables</fo:block>
    +							<fo:block font-size="11pt">
    +								There are three binaries available with jOOQ, to be downloaded from
    +								<fo:basic-link font-size="11pt" color="#882222" font-weight="bold" text-shadow="0 1px 2px #666666" external-destination="url('https://sourceforge.net/projects/jooq/')">SourceForge</fo:basic-link>
    +								or from Maven central:
    +							</fo:block>
    +							<fo:block padding-top="16pt" padding-bottom="16pt" page-break-inside="avoid">
    +<fo:list-block>
    +								<fo:list-item>
    +<fo:list-item-label>
    +<fo:block font-size="11pt" page-break-inside="avoid">-</fo:block>
    +</fo:list-item-label>
    +<fo:list-item-body start-indent="body-start()">
    +<fo:block font-size="11pt" page-break-inside="avoid">
    +									<fo:inline font-weight="bold">jOOQ.jar</fo:inline>
    +									<fo:block/>
    +									The main library that you will include in your application to run jOOQ
    +								</fo:block>
    +</fo:list-item-body>
    +</fo:list-item>
    +								<fo:list-item>
    +<fo:list-item-label>
    +<fo:block font-size="11pt" page-break-inside="avoid">-</fo:block>
    +</fo:list-item-label>
    +<fo:list-item-body start-indent="body-start()">
    +<fo:block font-size="11pt" page-break-inside="avoid">
    +									<fo:inline font-weight="bold">jOOQ-meta.jar</fo:inline>
    +									<fo:block/>
    +									The utility that you will include in your build to navigate your
    +									database schema for code generation. This can be used as a schema
    +									crawler as well.
    +								</fo:block>
    +</fo:list-item-body>
    +</fo:list-item>
    +								<fo:list-item>
    +<fo:list-item-label>
    +<fo:block font-size="11pt" page-break-inside="avoid">-</fo:block>
    +</fo:list-item-label>
    +<fo:list-item-body start-indent="body-start()">
    +<fo:block font-size="11pt" page-break-inside="avoid">
    +									<fo:inline font-weight="bold">jOOQ-codegen.jar</fo:inline>
    +									<fo:block/>
    +									The utility that you will include in your build to generate your
    +									database schema
    +								</fo:block>
    +</fo:list-item-body>
    +</fo:list-item>
    +							</fo:list-block>
    +</fo:block>
    +
    +							<fo:block font-family="Georgia" font-size="16pt" padding-top="10pt" padding-bottom="10pt" page-break-after="avoid">Dependencies</fo:block>
    +							<fo:block font-size="11pt">All of jOOQ's dependencies are "optional", i.e. you can run
    +								jOOQ without any of those libraries.
    +								For instance, jOOQ maintains an "optional" dependency on log4j and slf4j.
    +								This means, that jOOQ tries to find log4j (and /log4j.xml) or slf4j on the
    +								classpath. If they are not present, then java.util.logging.Logger is
    +								used instead.
    +							</fo:block>
    +							<fo:block font-size="11pt">
    +								Other optional dependencies are the JPA API, and the Oracle JDBC driver,
    +								which is needed for Oracle's advanced data types, only
    +							</fo:block>
    +
    +
    +							<fo:block font-family="Georgia" font-size="16pt" padding-top="10pt" padding-bottom="10pt" page-break-after="avoid">Configure jOOQ's code generator</fo:block>
    +							<fo:block font-size="11pt">You need to tell jOOQ some things about your database connection.
    +								Here's an example of how to do it for an Oracle database </fo:block>
    +<fo:block font-family="Courier" linefeed-treatment="preserve" white-space-collapse="false" white-space-treatment="preserve" font-size="6pt" margin="12pt" padding="4pt" border="2px solid #882222" background-color="#FFEEDD" page-break-inside="avoid"><![CDATA[<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
    +<configuration>
    +  <!-- Configure the database connection here -->
    +  <jdbc>
    +    <driver>oracle.jdbc.OracleDriver</driver>
    +    <url>jdbc:oracle:thin:@[your jdbc connection parameters]</url>
    +    <user>[your database user]</user>
    +    <password>[your database password]</password>
    +    <!-- You can also pass user/password and other JDBC properties in the optional properties tag: -->
    +    <properties>
    +      <property><key>user</key><value>[db-user]</value></property>
    +      <property><key>password</key><value>[db-password]</value></property>
    +    </properties>
    +  </jdbc>
    +
    +  <generator>
    +    <database>
    +      <!-- The database dialect from jooq-meta. Available dialects are
    +           named org.util.[database].[database]Database. Known values are:
    +
    +           org.jooq.util.ase.ASEDatabase
    +           org.jooq.util.db2.DB2Database
    +           org.jooq.util.derby.DerbyDatabase
    +           org.jooq.util.h2.H2Database
    +           org.jooq.util.hsqldb.HSQLDBDatabase
    +           org.jooq.util.ingres.IngresDatabase
    +           org.jooq.util.mysql.MySQLDatabase
    +           org.jooq.util.oracle.OracleDatabase
    +           org.jooq.util.postgres.PostgresDatabase
    +           org.jooq.util.sqlite.SQLiteDatabaes
    +           org.jooq.util.sqlserver.SQLServerDatabase
    +           org.jooq.util.sybase.SybaseDatabase
    +
    +           You can also provide your own org.jooq.util.Database implementation
    +           here, if your database is currently not supported -->
    +      <name>org.jooq.util.oracle.OracleDatabase</name>
    +
    +      <!-- All elements that are generated from your schema (several Java
    +           regular expressions, separated by comma) Watch out for
    +           case-sensitivity. Depending on your database, this might be
    +           important! You can create case-insensitive regular expressions
    +           using this syntax: (?i:expr)A comma-separated list of regular
    +           expressions -->
    +      <includes>.*</includes>
    +
    +      <!-- All elements that are excluded from your schema (several Java
    +           regular expressions, separated by comma). Excludes match before
    +           includes -->
    +      <excludes></excludes>
    +
    +      <!-- The schema that is used locally as a source for meta information.
    +           This could be your development schema or the production schema, etc
    +           This cannot be combined with the schemata element. -->
    +      <inputSchema>[your database schema / owner / name]</inputSchema>
    +    </database>
    +
    +    <generate>
    +      <!-- See advanced configuration properties -->
    +    </generate>
    +
    +    <target>
    +      <!-- The destination package of your generated classes (within the
    +           destination directory) -->
    +      <packageName>[org.jooq.your.packagename]</packageName>
    +
    +      <!-- The destination directory of your generated classes -->
    +      <directory>[/path/to/your/dir]</directory>
    +    </target>
    +  </generator>
    +</configuration>]]></fo:block>
    +
    +							<fo:block font-size="11pt">
    +								There are also lots of advanced configuration parameters, which will be
    +								treated in the <fo:basic-link font-size="11pt" color="#882222" font-weight="bold" text-shadow="0 1px 2px #666666" internal-destination="AdvancedConfiguration">manual's next section</fo:basic-link>
    +								Note, you can find the official XSD file at
    +							   <fo:basic-link font-size="11pt" color="#882222" font-weight="bold" text-shadow="0 1px 2px #666666" external-destination="url('http://www.jooq.org/xsd/jooq-codegen-2.1.0.xsd')">http://www.jooq.org/xsd/jooq-codegen-2.1.0.xsd</fo:basic-link>
    +							   for a formal specification</fo:block>
    +
    +							<fo:block font-family="Georgia" font-size="16pt" padding-top="10pt" padding-bottom="10pt" page-break-after="avoid">Run jOOQ code generation</fo:block>
    +							<fo:block font-size="11pt">Code generation works by calling this class with the above property file as argument.</fo:block>
    +							<fo:block font-family="Courier" linefeed-treatment="preserve" white-space-collapse="false" white-space-treatment="preserve" font-size="6pt" margin="12pt" padding="4pt" border="2px solid #882222" background-color="#FFEEDD" page-break-inside="avoid">org.jooq.util.GenerationTool /jooq-config.xml</fo:block>
    +							<fo:block font-size="11pt">Be sure that these elements are located on the classpath: </fo:block>
    +							<fo:block padding-top="16pt" padding-bottom="16pt" page-break-inside="avoid">
    +<fo:list-block>
    +								<fo:list-item>
    +<fo:list-item-label>
    +<fo:block font-size="11pt" page-break-inside="avoid">-</fo:block>
    +</fo:list-item-label>
    +<fo:list-item-body start-indent="body-start()">
    +<fo:block font-size="11pt" page-break-inside="avoid">The property file</fo:block>
    +</fo:list-item-body>
    +</fo:list-item>
    +								<fo:list-item>
    +<fo:list-item-label>
    +<fo:block font-size="11pt" page-break-inside="avoid">-</fo:block>
    +</fo:list-item-label>
    +<fo:list-item-body start-indent="body-start()">
    +<fo:block font-size="11pt" page-break-inside="avoid">jooq.jar, jooq-meta.jar, jooq-codegen.jar</fo:block>
    +</fo:list-item-body>
    +</fo:list-item>
    +								<fo:list-item>
    +<fo:list-item-label>
    +<fo:block font-size="11pt" page-break-inside="avoid">-</fo:block>
    +</fo:list-item-label>
    +<fo:list-item-body start-indent="body-start()">
    +<fo:block font-size="11pt" page-break-inside="avoid">The JDBC driver you configured</fo:block>
    +</fo:list-item-body>
    +</fo:list-item>
    +							</fo:list-block>
    +</fo:block>
    +
    +							<fo:block font-family="Georgia" font-size="16pt" padding-top="10pt" padding-bottom="10pt" page-break-after="avoid">A command-line example (For Windows, unix/linux/etc will be similar)</fo:block>
    +							<fo:block padding-top="16pt" padding-bottom="16pt" page-break-inside="avoid">
    +<fo:list-block>
    +								<fo:list-item>
    +<fo:list-item-label>
    +<fo:block font-size="11pt" page-break-inside="avoid">-</fo:block>
    +</fo:list-item-label>
    +<fo:list-item-body start-indent="body-start()">
    +<fo:block font-size="11pt" page-break-inside="avoid">Put the property file, jooq*.jar and the JDBC driver into
    +									a directory, e.g. C:\temp\jooq</fo:block>
    +</fo:list-item-body>
    +</fo:list-item>
    +							    <fo:list-item>
    +<fo:list-item-label>
    +<fo:block font-size="11pt" page-break-inside="avoid">-</fo:block>
    +</fo:list-item-label>
    +<fo:list-item-body start-indent="body-start()">
    +<fo:block font-size="11pt" page-break-inside="avoid">Go to C:\temp\jooq</fo:block>
    +</fo:list-item-body>
    +</fo:list-item>
    +							    <fo:list-item>
    +<fo:list-item-label>
    +<fo:block font-size="11pt" page-break-inside="avoid">-</fo:block>
    +</fo:list-item-label>
    +<fo:list-item-body start-indent="body-start()">
    +<fo:block font-size="11pt" page-break-inside="avoid">Run java -cp jooq.jar;jooq-meta.jar;jooq-codegen.jar;[JDBC-driver].jar;. org.jooq.util.GenerationTool /[property file] </fo:block>
    +</fo:list-item-body>
    +</fo:list-item>
    +							</fo:list-block>
    +</fo:block>
    +							<fo:block font-size="11pt">Note that the property file must be passed as a classpath resource</fo:block>
    +
    +							<fo:block font-family="Georgia" font-size="16pt" padding-top="10pt" padding-bottom="10pt" page-break-after="avoid">Run code generation from Eclipse</fo:block>
    +							<fo:block font-size="11pt">Of course, you can also run code generation from your IDE. In
    +								Eclipse, set up a project like this. Note that this example uses
    +								jOOQ's log4j support by adding log4j.xml and log4j.jar to the project
    +								classpath: </fo:block>
    +							<fo:block font-size="11pt">
    +							<fo:block text-align="center">
    +<fo:external-graphic padding-top="10pt" padding-bottom="10pt" src="url('C:/Users/lukas/workspace/jOOQ-website/img/eclipse-example-01.png')"/>
    +</fo:block>
    +							</fo:block>
    +
    +							<fo:block font-size="11pt">Once the project is set up correctly with all required artefacts on
    +								the classpath, you can configure an Eclipse Run Configuration for
    +								org.jooq.util.GenerationTool. </fo:block>
    +							<fo:block font-size="11pt">
    +							<fo:block text-align="center">
    +<fo:external-graphic padding-top="10pt" padding-bottom="10pt" src="url('C:/Users/lukas/workspace/jOOQ-website/img/eclipse-example-02.png')"/>
    +</fo:block>
    +							</fo:block>
    +
    +							<fo:block font-size="11pt">With the properties file as an argument </fo:block>
    +							<fo:block font-size="11pt">
    +							<fo:block text-align="center">
    +<fo:external-graphic padding-top="10pt" padding-bottom="10pt" src="url('C:/Users/lukas/workspace/jOOQ-website/img/eclipse-example-03.png')"/>
    +</fo:block>
    +							</fo:block>
    +
    +							<fo:block font-size="11pt">And the classpath set up correctly</fo:block>
    +							<fo:block font-size="11pt">
    +							<fo:block text-align="center">
    +<fo:external-graphic padding-top="10pt" padding-bottom="10pt" src="url('C:/Users/lukas/workspace/jOOQ-website/img/eclipse-example-04.png')"/>
    +</fo:block>
    +							</fo:block>
    +
    +							<fo:block font-size="11pt">Finally, run the code generation and see your generated artefacts</fo:block>
    +							<fo:block font-size="11pt">
    +							<fo:block text-align="center">
    +<fo:external-graphic padding-top="10pt" padding-bottom="10pt" src="url('C:/Users/lukas/workspace/jOOQ-website/img/eclipse-example-05.png')"/>
    +</fo:block>
    +							</fo:block>
    +
    +							<fo:block font-family="Georgia" font-size="16pt" padding-top="10pt" padding-bottom="10pt" page-break-after="avoid">Run generation with ant</fo:block>
    +							<fo:block font-size="11pt">
    +								You can also use an ant task to generate your classes. As a rule of thumb,
    +								remove the dots "." and dashes "-" from the .properties file's property names to get the
    +								ant task's arguments:
    +							</fo:block>
    +<fo:block font-family="Courier" linefeed-treatment="preserve" white-space-collapse="false" white-space-treatment="preserve" font-size="6pt" margin="12pt" padding="4pt" border="2px solid #882222" background-color="#FFEEDD" page-break-inside="avoid"><![CDATA[<!-- Task definition -->
    +<taskdef name="generate-classes" classname="org.jooq.util.GenerationTask">
    +  <classpath>
    +    <fileset dir="${path.to.jooq.distribution}">
    +      <include name="jOOQ.jar"/>
    +      <include name="jOOQ-meta.jar"/>
    +      <include name="jOOQ-codegen.jar"/>
    +    </fileset>
    +    <fileset dir="${path.to.mysql.driver}">
    +      <include name="${mysql.driver}.jar"/>
    +    </fileset>
    +  </classpath>
    +</taskdef>
    +
    +<!-- Run the code generation task -->
    +<target name="generate-test-classes">
    +  <generate-classes
    +      jdbcurl="jdbc:mysql://localhost/test"
    +      jdbcuser="root"
    +      jdbcpassword=""
    +      generatordatabaseinputschema="test"
    +      generatortargetpackage="org.jooq.test.generatedclasses"
    +      generatortargetdirectory="${basedir}/src"/>
    +</target>]]></fo:block>
    +
    +							<fo:block font-size="11pt">
    +								Note that when running code generation with ant's &lt;java/&gt; task,
    +								you may have to set fork="true":
    +							</fo:block>
    +
    +<fo:block font-family="Courier" linefeed-treatment="preserve" white-space-collapse="false" white-space-treatment="preserve" font-size="6pt" margin="12pt" padding="4pt" border="2px solid #882222" background-color="#FFEEDD" page-break-inside="avoid"><![CDATA[<!-- Run the code generation task -->
    +<target name="generate-test-classes">
    +  <java fork="true" classname="org.jooq.util.GenerationTool">
    +    [...]
    +  </java>
    +</target>
    +]]></fo:block>
    +							<fo:block font-family="Georgia" font-size="16pt" padding-top="10pt" padding-bottom="10pt" page-break-after="avoid">Integrate generation with Maven</fo:block>
    +							<fo:block font-size="11pt">Using the official jOOQ-codegen-maven plugin, you can integrate
    +								source code generation in your Maven build process: </fo:block>
    +
    +<fo:block font-family="Courier" linefeed-treatment="preserve" white-space-collapse="false" white-space-treatment="preserve" font-size="6pt" margin="12pt" padding="4pt" border="2px solid #882222" background-color="#FFEEDD" page-break-inside="avoid"><![CDATA[<plugin>
    +
    +  <!-- Specify the maven code generator plugin -->
    +  <groupId>org.jooq</groupId>
    +  <artifactId>jooq-codegen-maven</artifactId>
    +  <version>1.6.7</version>
    +
    +  <!-- The plugin should hook into the generate goal -->
    +  <executions>
    +    <execution>
    +      <goals>
    +        <goal>generate</goal>
    +      </goals>
    +    </execution>
    +  </executions>
    +
    +  <!-- Manage the plugin's dependency. In this example, we'll use a Postgres database -->
    +  <dependencies>
    +    <dependency>
    +      <groupId>postgresql</groupId>
    +      <artifactId>postgresql</artifactId>
    +      <version>8.4-702.jdbc4</version>
    +    </dependency>
    +  </dependencies>
    +
    +  <!-- Specify the plugin configuration -->
    +  <configuration>
    +
    +    <!-- JDBC connection parameters -->
    +    <jdbc>
    +      <driver>org.postgresql.Driver</driver>
    +      <url>jdbc:postgresql:postgres</url>
    +      <user>postgres</user>
    +      <password>test</password>
    +    </jdbc>
    +
    +    <!-- Generator parameters -->
    +    <generator>
    +      <name>org.jooq.util.DefaultGenerator</name>
    +      <database>
    +        <name>org.jooq.util.postgres.PostgresDatabase</name>
    +        <includes>.*</includes>
    +        <excludes></excludes>
    +        <inputSchema>public</inputSchema>
    +      </database>
    +      <generate>
    +        <relations>true</relations>
    +        <deprecated>false</deprecated>
    +      </generate>
    +      <target>
    +        <packageName>org.jooq.util.maven.example</packageName>
    +        <directory>target/generated-sources/jooq</directory>
    +      </target>
    +    </generator>
    +  </configuration>
    +</plugin>
    +]]></fo:block>
    +							<fo:block font-size="11pt">See the full example of a pom.xml including the jOOQ-codegen artefact here:
    +							<fo:basic-link font-size="11pt" color="#882222" font-weight="bold" text-shadow="0 1px 2px #666666" external-destination="url('https://github.com/lukaseder/jOOQ/blob/master/jOOQ-codegen-maven-example/pom.xml')">https://github.com/lukaseder/jOOQ/blob/master/jOOQ-codegen-maven-example/pom.xml</fo:basic-link>
    +</fo:block>
    +
    +                            <fo:block font-family="Georgia" font-size="16pt" padding-top="10pt" padding-bottom="10pt" page-break-after="avoid">Migrate properties files from jOOQ 1.7, early versions of jOOQ 2.0.x:</fo:block>
    +                            <fo:block font-size="11pt">
    +                                Before jOOQ 2.0.4, the code generator was configured using properties files
    +                                These files are still supported for source code generation, but their syntax
    +                                won't be maintained any longer. If you wish to migrate to XML, you can
    +                                migrate the file using this command on the command line
    +                            </fo:block>
    +							<fo:block font-family="Courier" linefeed-treatment="preserve" white-space-collapse="false" white-space-treatment="preserve" font-size="6pt" margin="12pt" padding="4pt" border="2px solid #882222" background-color="#FFEEDD" page-break-inside="avoid">org.jooq.util.GenerationTool /jooq-config.properties migrate</fo:block>
    +							<fo:block font-size="11pt">
    +								Using the migrate flag, jOOQ will read the properties file and output
    +								a corresponding XML file on system out
    +							</fo:block>
    +
    +							<fo:block font-family="Georgia" font-size="16pt" padding-top="10pt" padding-bottom="10pt" page-break-after="avoid">Use jOOQ generated classes in your application</fo:block>
    +							<fo:block font-size="11pt">Be sure, both jOOQ.jar and your generated package (see
    +								configuration) are located on your classpath. Once this is done, you
    +								can execute SQL statements with your generated classes.</fo:block>
    +						<fo:block font-family="Georgia" font-size="18pt" padding-top="12pt" padding-bottom="12pt" page-break-after="avoid" id="AdvancedConfiguration">
    +<fo:marker marker-class-name="section">
    +<fo:block>2.2. Advanced configuration of the generator</fo:block>
    +</fo:marker>2.2. Advanced configuration of the generator</fo:block>
    +<fo:block font-size="11pt">jOOQ power users may want to fine-tune their source code generation settings. Here's how to do this</fo:block>
    +							<fo:block font-family="Georgia" font-size="16pt" padding-top="10pt" padding-bottom="10pt" page-break-after="avoid">Code generation</fo:block>
    +							<fo:block font-size="11pt">
    +								In the <fo:basic-link font-size="11pt" color="#882222" font-weight="bold" text-shadow="0 1px 2px #666666" internal-destination="Configuration">previous section</fo:basic-link>
    +								we have seen how jOOQ's source code generator is configured and
    +								run within a few steps. In this chapter we'll treat some advanced
    +								settings
    +							</fo:block>
    +
    +<fo:block font-family="Courier" linefeed-treatment="preserve" white-space-collapse="false" white-space-treatment="preserve" font-size="6pt" margin="12pt" padding="4pt" border="2px solid #882222" background-color="#FFEEDD" page-break-inside="avoid"><![CDATA[<!-- These properties can be added directly to the generator element: -->
    +<generator>
    +  <!-- The default code generator. You can override this one, to generate your own code style
    +       Defaults to org.jooq.util.DefaultGenerator -->
    +  <name>org.jooq.util.DefaultGenerator</name>
    +
    +  <!-- The naming strategy used for class and field names.
    +       You may override this with your custom naming strategy. Some examples follow
    +       Defaults to org.jooq.util.DefaultGeneratorStrategy -->
    +  <strategy>
    +    <name>org.jooq.util.DefaultGeneratorStrategy</name>
    +  </strategy>
    +</generator>]]></fo:block>
    +
    +							<fo:block font-size="11pt">
    +								The following example shows how you can override the
    +								DefaultGeneratorStrategy to render table and column names the way
    +								they are defined in the database, rather than switching them to
    +								camel case:
    +							</fo:block>
    +
    +<fo:block font-family="Courier" linefeed-treatment="preserve" white-space-collapse="false" white-space-treatment="preserve" font-size="6pt" margin="12pt" padding="4pt" border="2px solid #882222" background-color="#FFEEDD" page-break-inside="avoid">/**
    + * It is recommended that you extend the DefaultGeneratorStrategy. Most of the
    + * GeneratorStrategy API is already declared final. You only need to override any
    + * of the following methods, for whatever generation behaviour you'd like to achieve
    + *
    + * Beware that most methods also receive a "Mode" object, to tell you whether a
    + * TableDefinition is being rendered as a Table, Record, POJO, etc. Depending on
    + * that information, you can add a suffix only for TableRecords, not for Tables
    + */
    +public class AsInDatabaseStrategy extends DefaultGeneratorStrategy {
    +
    +    /**
    +     * Override this to specifiy what identifiers in Java should look like.
    +     * This will just take the identifier as defined in the database.
    +     */
    +    @Override
    +    public String getJavaIdentifier(Definition definition) {
    +        return definition.getOutputName();
    +    }
    +
    +    /**
    +     * Override these to specify what a setter in Java should look like. Setters
    +     * are used in TableRecords, UDTRecords, and POJOs. This example will name
    +     * setters "set[NAME_IN_DATABASE]"
    +     */
    +    @Override
    +    public String getJavaSetterName(Definition definition, Mode mode) {
    +        return "set" + definition.getOutputName();
    +    }
    +
    +    /**
    +     * Just like setters...
    +     */
    +    @Override
    +    public String getJavaGetterName(Definition definition, Mode mode) {
    +        return "get" + definition.getOutputName();
    +    }
    +
    +    /**
    +     * Override this method to define what a Java method generated from a database
    +     * Definition should look like. This is used mostly for convenience methods
    +     * when calling stored procedures and functions. This example shows how to
    +     * set a prefix to a CamelCase version of your procedure
    +     */
    +    @Override
    +    public String getJavaMethodName(Definition definition, Mode mode) {
    +        return "call" + org.jooq.tools.StringUtils.toCamelCase(definition.getOutputName());
    +    }
    +
    +    /**
    +     * Override this method to define how your Java classes and Java files should
    +     * be named. This example applies no custom setting and uses CamelCase versions
    +     * instead
    +     */
    +    @Override
    +    public String getJavaClassName(Definition definition, Mode mode) {
    +        return super.getJavaClassName(definition, mode);
    +    }
    +
    +    /**
    +     * Override this method to re-define the package names of your generated
    +     * artefacts.
    +     */
    +    @Override
    +    public String getJavaPackageName(Definition definition, Mode mode) {
    +        return super.getJavaPackageName(definition, mode);
    +    }
    +
    +    /**
    +     * Override this method to define how Java members should be named. This is
    +     * used for POJOs and method arguments
    +     */
    +    @Override
    +    public String getJavaMemberName(Definition definition, Mode mode) {
    +        return definition.getOutputName();
    +    }
    +}</fo:block>
    +
    +                            <fo:block font-family="Georgia" font-size="16pt" padding-top="10pt" padding-bottom="10pt" page-break-after="avoid">jooq-meta configuration</fo:block>
    +							<fo:block font-size="11pt">
    +								Within the &lt;generator/&gt; element, there are other configuration elements:
    +							</fo:block>
    +
    +<fo:block font-family="Courier" linefeed-treatment="preserve" white-space-collapse="false" white-space-treatment="preserve" font-size="6pt" margin="12pt" padding="4pt" border="2px solid #882222" background-color="#FFEEDD" page-break-inside="avoid"><![CDATA[<!-- These properties can be added to the database element: -->
    +<database>
    +  <!-- Generate java.sql.Timestamp fields for DATE columns. This is
    +       particularly useful for Oracle databases.
    +       Defaults to false -->
    +  <dateAsTimestamp>false</dateAsTimestamp>
    +
    +  <!-- Generate jOOU data types for your unsigned data types, which are
    +       not natively supported in Java.
    +       Defaults to true -->
    +  <unsignedTypes>true</unsignedTypes>
    +
    +  <!-- The schema that is used in generated source code. This will be the
    +       production schema. Use this to override your local development
    +       schema name for source code generation. If not specified, this
    +       will be the same as the input-schema. -->
    +  <outputSchema>[your database schema / owner / name]</outputSchema>
    +
    +  <!-- A configuration element to configure several input and/or output
    +       schemata for jooq-meta, in case you're using jooq-meta in a multi-
    +       schema environment.
    +       This cannot be combined with the above inputSchema / outputSchema -->
    +  <schemata>
    +    <schema>
    +      <inputSchema>...</inputSchema>
    +      <outputSchema>...</outputSchema>
    +    </schema>
    +    [ <schema>...</schema> ... ]
    +  </schemata>
    +
    +  <!-- A configuration element to configure master data table enum classes -->
    +  <masterDataTables>...</masterDataTables>
    +
    +  <!-- A configuration element to configure custom data types -->
    +  <customTypes>...</customTypes>
    +
    +  <!-- A configuration element to configure type overrides for generated
    +       artefacts (e.g. in combination with customTypes) -->
    +  <forcedTypes>...</forcedTypes>
    +</database>]]></fo:block>
    +
    +							<fo:block font-size="11pt">
    +								Check out the some of the manual's "advanced" sections
    +								to find out more about the advanced configuration parameters.
    +							</fo:block>
    +							<fo:block padding-top="16pt" padding-bottom="16pt" page-break-inside="avoid">
    +<fo:list-block>
    +								<fo:list-item>
    +<fo:list-item-label>
    +<fo:block font-size="11pt" page-break-inside="avoid">-</fo:block>
    +</fo:list-item-label>
    +<fo:list-item-body start-indent="body-start()">
    +<fo:block font-size="11pt" page-break-inside="avoid">
    +<fo:basic-link font-size="11pt" color="#882222" font-weight="bold" text-shadow="0 1px 2px #666666" internal-destination="SchemaMapping">Schema mapping</fo:basic-link>
    +</fo:block>
    +</fo:list-item-body>
    +</fo:list-item>
    +								<fo:list-item>
    +<fo:list-item-label>
    +<fo:block font-size="11pt" page-break-inside="avoid">-</fo:block>
    +</fo:list-item-label>
    +<fo:list-item-body start-indent="body-start()">
    +<fo:block font-size="11pt" page-break-inside="avoid">
    +<fo:basic-link font-size="11pt" color="#882222" font-weight="bold" text-shadow="0 1px 2px #666666" internal-destination="MasterData">Master data types</fo:basic-link>
    +</fo:block>
    +</fo:list-item-body>
    +</fo:list-item>
    +								<fo:list-item>
    +<fo:list-item-label>
    +<fo:block font-size="11pt" page-break-inside="avoid">-</fo:block>
    +</fo:list-item-label>
    +<fo:list-item-body start-indent="body-start()">
    +<fo:block font-size="11pt" page-break-inside="avoid">
    +<fo:basic-link font-size="11pt" color="#882222" font-weight="bold" text-shadow="0 1px 2px #666666" internal-destination="CustomTypes">Custom types</fo:basic-link>
    +</fo:block>
    +</fo:list-item-body>
    +</fo:list-item>
    +							</fo:list-block>
    +</fo:block>
    +
    +							<fo:block font-family="Georgia" font-size="16pt" padding-top="10pt" padding-bottom="10pt" page-break-after="avoid">jooq-codegen configuration</fo:block>
    +                            <fo:block font-size="11pt">Also, you can add some optional advanced configuration parameters for the generator: </fo:block>
    +
    +<fo:block font-family="Courier" linefeed-treatment="preserve" white-space-collapse="false" white-space-treatment="preserve" font-size="6pt" margin="12pt" padding="4pt" border="2px solid #882222" background-color="#FFEEDD" page-break-inside="avoid"><![CDATA[<!-- These properties can be added to the generate element: -->
    +<generate>
    +  <!-- Primary key / foreign key relations should be generated and used.
    +       This is a prerequisite for various advanced features.
    +       Defaults to false -->
    +  <relations>false</relations>
    +
    +  <!-- Generate navigation methods to navigate foreign key relationships
    +       directly from Record classes. This is only relevant if relations
    +       is set to true, too.
    +       Defaults to true -->
    +  <navigationMethods>true</navigationMethods>
    +
    +  <!-- Generate deprecated code for backwards compatibility
    +       Defaults to true -->
    +  <deprecated>true</deprecated>
    +
    +  <!-- Generate instance fields in your tables, as opposed to static
    +       fields. This simplifies aliasing.
    +       Defaults to true -->
    +  <instanceFields>true</instanceFields>
    +
    +  <!-- Generate the javax.annotation.Generated annotation to indicate
    +       jOOQ version used for source code.
    +       Defaults to true -->
    +  <generatedAnnotation>true</generatedAnnotation>
    +
    +  <!-- Generate jOOQ Record classes for type-safe querying. You can
    +       turn this off, if you don't need "active records" for CRUD
    +       Defaults to true -->
    +  <records>true</records>
    +
    +  <!-- Generate POJOs in addition to Record classes for usage of the
    +       ResultQuery.fetchInto(Class) API
    +       Defaults to false -->
    +  <pojos>false</pojos>
    +
    +  <!-- Annotate POJOs and Records with JPA annotations for increased
    +       compatibility and better integration with JPA/Hibernate, etc
    +       Defaults to false -->
    +  <jpaAnnotations>false</jpaAnnotations>
    +</generate>]]></fo:block>
    +						<fo:block font-family="Georgia" font-size="18pt" padding-top="12pt" padding-bottom="12pt" page-break-after="avoid" id="SCHEMA">
    +<fo:marker marker-class-name="section">
    +<fo:block>2.3. The schema, top-level generated artefact</fo:block>
    +</fo:marker>2.3. The schema, top-level generated artefact</fo:block>
    +<fo:block font-size="11pt">The schema is the top-level generated object in jOOQ. In many
    +							RDBMS, the schema coincides with the owner of tables and other objects
    +						</fo:block>
    +							<fo:block font-family="Georgia" font-size="16pt" padding-top="10pt" padding-bottom="10pt" page-break-after="avoid">The Schema</fo:block>
    +							<fo:block font-size="11pt">
    +								As of jOOQ 1.5, the top-level generated object is the
    +								<fo:basic-link font-size="11pt" color="#882222" font-weight="bold" text-shadow="0 1px 2px #666666" external-destination="url('http://www.jooq.org/javadoc/latest/org/jooq/Schema.html')">org.jooq.Schema</fo:basic-link>.
    +								The Schema itself has no relevant functionality, except for holding
    +								the schema name for all dependent generated artefacts. jOOQ queries try
    +								to always fully qualify an entity within the database using that Schema
    +							</fo:block>
    +
    +							<fo:block font-size="11pt">
    +								Currently, it is not possible to link generated artefacts from various
    +								schemata. If you have a stored function from Schema A, which returns a
    +								UDT from Schema B, the types cannot be linked. This enhancement is on
    +								the roadmap, though: <fo:basic-link font-size="11pt" color="#882222" font-weight="bold" text-shadow="0 1px 2px #666666" external-destination="url('https://sourceforge.net/apps/trac/jooq/ticket/282')">#282</fo:basic-link>.
    +							</fo:block>
    +
    +							<fo:block font-size="11pt">
    +								When you have several schemata that are logically equivalent (i.e. they
    +								contain identical entities, but the schemata stand for different
    +								users/customers/clients, etc), there is a solution for that. Check out
    +								the manual's section on support for
    +								<fo:basic-link font-size="11pt" color="#882222" font-weight="bold" text-shadow="0 1px 2px #666666" internal-destination="SchemaMapping">multiple equivalent schemata</fo:basic-link>
    +							</fo:block>
    +
    +							<fo:block font-family="Georgia" font-size="16pt" padding-top="10pt" padding-bottom="10pt" page-break-after="avoid">Schema contents</fo:block>
    +							<fo:block font-size="11pt">The schema can be used to dynamically discover generate database
    +								artefacts. Tables, sequences, and other items are accessible from the
    +								schema. For example:</fo:block>
    +<fo:block font-family="Courier" linefeed-treatment="preserve" white-space-collapse="false" white-space-treatment="preserve" font-size="6pt" margin="12pt" padding="4pt" border="2px solid #882222" background-color="#FFEEDD" page-break-inside="avoid">public final java.util.List&lt;org.jooq.Sequence&lt;?&gt;&gt; getSequences();
    +public final java.util.List&lt;org.jooq.Table&lt;?&gt;&gt; getTables();</fo:block>
    +						<fo:block font-family="Georgia" font-size="18pt" padding-top="12pt" padding-bottom="12pt" page-break-after="avoid" id="TABLE">
    +<fo:marker marker-class-name="section">
    +<fo:block>2.4. Tables, views and their corresponding records</fo:block>
    +</fo:marker>2.4. Tables, views and their corresponding records</fo:block>
    +<fo:block font-size="11pt">
    +							The most important generated artefacts are Tables and TableRecords.
    +							Every Table has a Record type associated with it that models a single tuple
    +							of that entity: Table&lt;R extends Record&gt;.
    +						</fo:block>
    +							<fo:block font-family="Georgia" font-size="16pt" padding-top="10pt" padding-bottom="10pt" page-break-after="avoid">Tables and TableRecords</fo:block>
    +							<fo:block font-size="11pt">
    +								The most important generated artefacts are
    +								<fo:basic-link font-size="11pt" color="#882222" font-weight="bold" text-shadow="0 1px 2px #666666" external-destination="url('http://www.jooq.org/javadoc/latest/org/jooq/Table.html')">Tables</fo:basic-link> and
    +								<fo:basic-link font-size="11pt" color="#882222" font-weight="bold" text-shadow="0 1px 2px #666666" external-destination="url('http://www.jooq.org/javadoc/latest/org/jooq/TableRecord.html')">TableRecords</fo:basic-link>. As
    +								discussed in previous chapters about
    +								<fo:basic-link font-size="11pt" color="#882222" font-weight="bold" text-shadow="0 1px 2px #666666" internal-destination="Table">Tables</fo:basic-link> and
    +								<fo:basic-link font-size="11pt" color="#882222" font-weight="bold" text-shadow="0 1px 2px #666666" internal-destination="Result">Results</fo:basic-link>, jOOQ uses the
    +								Table class to model entities (both tables and views) in your database
    +								Schema. Every Table has a Record type associated with it that models a
    +								single tuple of that entity: Table&lt;R extends Record&gt;. This
    +								couple of Table&lt;R&gt; and R are generated as such:
    +							</fo:block>
    +							<fo:block font-size="11pt">
    +								Suppose we have the tables as defined in the
    +								<fo:basic-link font-size="11pt" color="#882222" font-weight="bold" text-shadow="0 1px 2px #666666" internal-destination="ExampleDatabase">example database</fo:basic-link>.
    +								Then, using a
    +								default configuration, these (simplified for the example) classes will
    +								be generated:
    +							</fo:block>
    +
    +							<fo:block font-family="Georgia" font-size="16pt" padding-top="10pt" padding-bottom="10pt" page-break-after="avoid">The Table as an entity meta model</fo:block>
    +<fo:block font-family="Courier" linefeed-treatment="preserve" white-space-collapse="false" white-space-treatment="preserve" font-size="6pt" margin="12pt" padding="4pt" border="2px solid #882222" background-color="#FFEEDD" page-break-inside="avoid">public class TAuthor extends UpdatableTableImpl&lt;TAuthorRecord&gt; {
    +
    +    // The singleton instance of the Table
    +    public static final TAuthor T_AUTHOR = new TAuthor();
    +
    +    // The Table's fields.
    +    // Depending on your jooq-codegen configuraiton, they can also be static
    +    public final TableField&lt;TAuthorRecord, Integer&gt; ID =            // [...]
    +    public final TableField&lt;TAuthorRecord, String&gt; FIRST_NAME =     // [...]
    +    public final TableField&lt;TAuthorRecord, String&gt; LAST_NAME =      // [...]
    +    public final TableField&lt;TAuthorRecord, Date&gt; DATE_OF_BIRTH =    // [...]
    +    public final TableField&lt;TAuthorRecord, Integer&gt; YEAR_OF_BIRTH = // [...]
    +
    +    // When you don't choose the static meta model, you can typesafely alias your tables.
    +    // Aliased tables will then hold references to the above final fields, too
    +    public TAuthor as(String alias) {
    +      // [...]
    +    }
    +}</fo:block>
    +
    +							<fo:block font-family="Georgia" font-size="16pt" padding-top="10pt" padding-bottom="10pt" page-break-after="avoid">The Table's associated TableRecord</fo:block>
    +							<fo:block font-size="11pt">If you use the
    +								<fo:basic-link font-size="11pt" color="#882222" font-weight="bold" text-shadow="0 1px 2px #666666" internal-destination="Query">SimpleSelectQuery</fo:basic-link>
    +								 syntax (both in standard and DSL
    +								mode), then your SELECT statement will return the single Table&lt;R
    +								extends Record&gt;'s associated Record type &lt;R&gt;. In the case of
    +								the above TAuthor Table, this will be a TAuthorRecord. </fo:block>
    +
    +<fo:block font-family="Courier" linefeed-treatment="preserve" white-space-collapse="false" white-space-treatment="preserve" font-size="6pt" margin="12pt" padding="4pt" border="2px solid #882222" background-color="#FFEEDD" page-break-inside="avoid">public class TAuthorRecord extends UpdatableRecordImpl&lt;TAuthorRecord&gt; {
    +
    +    // Getters and setters for the various fields
    +    public void setId(Integer value) {       // [...]
    +    public Integer getId() {                 // [...]
    +    public void setFirstName(String value) { // [...]
    +    public String getFirstName() {           // [...]
    +    public void setLastName(String value) {  // [...]
    +    public String getLastName() {            // [...]
    +    public void setDateOfBirth(Date value) { // [...]
    +    public Date getDateOfBirth() {           // [...]
    +
    +    // Navigation methods for foreign keys
    +    public List&lt;TBookRecord&gt; fetchTBooks() { // [...]
    +}</fo:block>
    +
    +
    +							<fo:block font-family="Georgia" font-size="16pt" padding-top="10pt" padding-bottom="10pt" page-break-after="avoid">Generated or custom POJO's instead of jOOQ's Records</fo:block>
    +							<fo:block font-size="11pt">
    +								If you're using jOOQ along with Hibernate / JPA, or if you
    +								want to use your own, custom domain-model instead of jOOQ's
    +								Record type-hierarchy, you can choose to select values into
    +								POJOs. Let's say you defined a POJO for authors:
    +							</fo:block>
    +
    +<fo:block font-family="Courier" linefeed-treatment="preserve" white-space-collapse="false" white-space-treatment="preserve" font-size="6pt" margin="12pt" padding="4pt" border="2px solid #882222" background-color="#FFEEDD" page-break-inside="avoid"><![CDATA[package com.example;
    +
    +import javax.persistence.Column;
    +import javax.persistence.Entity;
    +
    +@Entity
    +public class MyAuthor {
    +    // Some fields may be public
    +    @Column(name = "ID")
    +    public int id;
    +
    +    // Others are private and have associated getters / setters:
    +    private String firstName;
    +    private String lastName;
    +
    +    public void setFirstName(String firstName) {
    +        this.firstName = firstName;
    +    }
    +
    +    @Column(name = "FIRST_NAME")
    +    public String getFirstName() {
    +        return firstName;
    +    }
    +
    +    public void setLastName(String lastName) {
    +        this.lastName = lastName;
    +    }
    +
    +    @Column(name = "LAST_NAME")
    +    public String getLastName() {
    +        return lastName;
    +    }
    +}]]></fo:block>
    +
    +                            <fo:block font-size="11pt">
    +                            	The above could be your custom POJO or a POJO generated
    +                            	by jooq-codegen (see
    +                            	<fo:basic-link font-size="11pt" color="#882222" font-weight="bold" text-shadow="0 1px 2px #666666" internal-destination="AdvancedConfiguration">the manual's section about advanced codegen configuration</fo:basic-link>
    +                            	for more details). Also, JPA-annotations are not necessary
    +                            	if you wish to let jOOQ map record columns onto your POJO
    +                            	attributes by convention. Instead of fetching records normally,
    +                            	you can now let jOOQ fetch records "into" your custom type:
    +                            </fo:block>
    +
    +<fo:block font-family="Courier" linefeed-treatment="preserve" white-space-collapse="false" white-space-treatment="preserve" font-size="6pt" margin="12pt" padding="4pt" border="2px solid #882222" background-color="#FFEEDD" page-break-inside="avoid"><![CDATA[List<MyAuthor> results = create.select().from(TAuthor.T_AUTHOR).fetchInto(MyAuthor.class);]]></fo:block>
    +
    +							<fo:block font-size="11pt">
    +								Read the javadoc for
    +								<fo:basic-link font-size="11pt" color="#882222" font-weight="bold" text-shadow="0 1px 2px #666666" external-destination="url('http://www.jooq.org/javadoc/latest/org/jooq/Record.html#into%28java.lang.Class%29')">Record.into()</fo:basic-link>
    +								for more details.
    +							</fo:block>
    +						<fo:block font-family="Georgia" font-size="18pt" padding-top="12pt" padding-bottom="12pt" page-break-after="avoid" id="PROCEDURE">
    +<fo:marker marker-class-name="section">
    +<fo:block>2.5. Procedures and packages</fo:block>
    +</fo:marker>2.5. Procedures and packages</fo:block>
    +<fo:block font-size="11pt">
    +							Procedure support is one of the most important reasons why you should consider
    +							jOOQ. jOOQ heavily facilitates the use of stored procedures and
    +							functions via its source code generation.
    +						</fo:block>
    +							<fo:block font-family="Georgia" font-size="16pt" padding-top="10pt" padding-bottom="10pt" page-break-after="avoid">Stored procedures in modern RDBMS</fo:block>
    +							<fo:block font-size="11pt">This is one of the most important reasons why you should consider
    +								jOOQ. Read also my
    +								<fo:basic-link font-size="11pt" color="#882222" font-weight="bold" text-shadow="0 1px 2px #666666" external-destination="url('http://java.dzone.com/articles/2011-great-year-stored')">article on dzone</fo:basic-link>
    +								about why stored procedures become
    +								more and more important in future versions of RDMBS. In this section
    +								of the manual, we will learn how jOOQ handles stored procedures in
    +								code generation. Especially before
    +								<fo:basic-link font-size="11pt" color="#882222" font-weight="bold" text-shadow="0 1px 2px #666666" internal-destination="UDT">UDT and ARRAY support</fo:basic-link> was
    +								introduced to major RDBMS, these procedures tend to have dozens of
    +								parameters, with IN, OUT, IN OUT parameters mixed in all variations.
    +								JDBC only knows very basic, low-level support for those constructs.
    +								jOOQ heavily facilitates the use of stored procedures and functions
    +								via its source code generation. Essentially, it comes down to this:
    +							</fo:block>
    +
    +							<fo:block font-family="Georgia" font-size="16pt" padding-top="10pt" padding-bottom="10pt" page-break-after="avoid">"Standalone" stored procedures and functions</fo:block>
    +							<fo:block font-size="11pt">Let's say you have these stored procedures and functions in your Oracle database </fo:block>
    +<fo:block font-family="Courier" linefeed-treatment="preserve" white-space-collapse="false" white-space-treatment="preserve" font-size="6pt" margin="12pt" padding="4pt" border="2px solid #882222" background-color="#FFEEDD" page-break-inside="avoid">-- Check whether there is an author in T_AUTHOR by that name
    +CREATE OR REPLACE FUNCTION f_author_exists (author_name VARCHAR2) RETURN NUMBER;
    +
    +-- Check whether there is an author in T_AUTHOR by that name
    +CREATE OR REPLACE PROCEDURE p_author_exists (author_name VARCHAR2, result OUT NUMBER);
    +
    +-- Check whether there is an author in T_AUTHOR by that name and get his ID
    +CREATE OR REPLACE PROCEDURE p_author_exists_2 (author_name VARCHAR2, result OUT NUMBER, id OUT NUMBER);</fo:block>
    +
    +							<fo:block font-size="11pt">jOOQ will essentially generate two artefacts for every procedure/function: </fo:block>
    +							<fo:block padding-top="16pt" padding-bottom="16pt" page-break-inside="avoid">
    +<fo:list-block>
    +								<fo:list-item>
    +<fo:list-item-label>
    +<fo:block font-size="11pt" page-break-inside="avoid">-</fo:block>
    +</fo:list-item-label>
    +<fo:list-item-body start-indent="body-start()">
    +<fo:block font-size="11pt" page-break-inside="avoid">A class holding a formal Java representation of the procedure/function</fo:block>
    +</fo:list-item-body>
    +</fo:list-item>
    +    							<fo:list-item>
    +<fo:list-item-label>
    +<fo:block font-size="11pt" page-break-inside="avoid">-</fo:block>
    +</fo:list-item-label>
    +<fo:list-item-body start-indent="body-start()">
    +<fo:block font-size="11pt" page-break-inside="avoid">Some convenience methods to facilitate calling that procedure/function </fo:block>
    +</fo:list-item-body>
    +</fo:list-item>
    +							</fo:list-block>
    +</fo:block>
    +							<fo:block font-size="11pt">Let's see what these things look like, in Java. The classes (simplified for the example): </fo:block>
    +
    +<fo:block font-family="Courier" linefeed-treatment="preserve" white-space-collapse="false" white-space-treatment="preserve" font-size="6pt" margin="12pt" padding="4pt" border="2px solid #882222" background-color="#FFEEDD" page-break-inside="avoid">// The function has a generic type parameter &lt;T&gt; bound to its return value
    +public class FAuthorExists extends org.jooq.impl.AbstractRoutine&lt;BigDecimal&gt; {
    +
    +    // Much like Tables, functions have static parameter definitions
    +    public static final Parameter&lt;String&gt; AUTHOR_NAME = // [...]
    +
    +    // And much like TableRecords, they have setters for their parameters
    +    public void setAuthorName(String value) { // [...]
    +    public void setAuthorName(Field&lt;String&gt; value) { // [...]
    +}
    +
    +public class PAuthorExists extends org.jooq.impl.AbstractRoutine&lt;java.lang.Void&gt; {
    +
    +    // In procedures, IN, OUT, IN OUT parameters are all represented
    +    // as static parameter definitions as well
    +    public static final Parameter&lt;String&gt; AUTHOR_NAME = // [...]
    +    public static final Parameter&lt;BigDecimal&gt; RESULT = // [...]
    +
    +    // IN and IN OUT parameters have generated setters
    +    public void setAuthorName(String value) { // [...]
    +
    +    // OUT and IN OUT parameters have generated getters
    +    public BigDecimal getResult() { // [...]
    +}
    +
    +public class PAuthorExists_2 extends org.jooq.impl.AbstractRoutine&lt;java.lang.Void&gt; {
    +    public static final Parameter&lt;String&gt; AUTHOR_NAME = // [...]
    +    public static final Parameter&lt;BigDecimal&gt; RESULT = // [...]
    +    public static final Parameter&lt;BigDecimal&gt; ID = // [...]
    +
    +    // the setters...
    +    public void setAuthorName(String value) { // [...]
    +
    +    // the getters...
    +    public BigDecimal getResult() { // [...]
    +    public BigDecimal getId() { // [...]
    +}</fo:block>
    +
    +							<fo:block font-size="11pt">An example invocation of such a stored procedure might look like this: </fo:block>
    +
    +<fo:block font-family="Courier" linefeed-treatment="preserve" white-space-collapse="false" white-space-treatment="preserve" font-size="6pt" margin="12pt" padding="4pt" border="2px solid #882222" background-color="#FFEEDD" page-break-inside="avoid">PAuthorExists p = new PAuthorExists();
    +p.setAuthorName("Paulo");
    +p.execute(configuration);
    +assertEquals(BigDecimal.ONE, p.getResult());</fo:block>
    +
    +							<fo:block font-size="11pt">
    +								The above configuration is a
    +								<fo:basic-link font-size="11pt" color="#882222" font-weight="bold" text-shadow="0 1px 2px #666666" internal-destination="Factory">Factory</fo:basic-link>,
    +								holding a reference to a JDBC connection, as discussed in a previous section.
    +
    +								If you use the generated convenience methods, however, things are much simpler, still:
    +							</fo:block>
    +<fo:block font-family="Courier" linefeed-treatment="preserve" white-space-collapse="false" white-space-treatment="preserve" font-size="6pt" margin="12pt" padding="4pt" border="2px solid #882222" background-color="#FFEEDD" page-break-inside="avoid">// Every schema has a single Routines class with convenience methods
    +public final class Routines {
    +
    +    // Convenience method to directly call the stored function
    +    public static BigDecimal fAuthorExists(Configuration configuration, String authorName) { // [...]
    +
    +    // Convenience methods to transform the stored function into a
    +    // Field&lt;BigDecimal&gt;, such that it can be used in SQL
    +    public static Field&lt;BigDecimal&gt; fAuthorExists(Field&lt;String&gt; authorName) { // [...]
    +    public static Field&lt;BigDecimal&gt; fAuthorExists(String authorName) { // [...]
    +
    +    // Procedures with 0 OUT parameters create void methods
    +    // Procedures with 1 OUT parameter create methods as such:
    +    public static BigDecimal pAuthorExists(Configuration configuration, String authorName) { // [...]
    +
    +    // Procedures with more than 1 OUT parameter return the procedure
    +    // object (see above example)
    +    public static PAuthorExists_2 pAuthorExists_2(Configuration configuration, String authorName) { // [...]
    +}</fo:block>
    +
    +							<fo:block font-size="11pt">An sample invocation, equivalent to the previous example:</fo:block>
    +<fo:block font-family="Courier" linefeed-treatment="preserve" white-space-collapse="false" white-space-treatment="preserve" font-size="6pt" margin="12pt" padding="4pt" border="2px solid #882222" background-color="#FFEEDD" page-break-inside="avoid">assertEquals(BigDecimal.ONE, Procedures.pAuthorExists(configuration, "Paulo"));</fo:block>
    +
    +
    +							<fo:block font-family="Georgia" font-size="16pt" padding-top="10pt" padding-bottom="10pt" page-break-after="avoid">jOOQ's understanding of procedures vs functions</fo:block>
    +							<fo:block font-size="11pt">
    +								jOOQ does not formally distinguish procedures from functions.
    +								jOOQ only knows about routines, which can have return values
    +								and/or OUT parameters. This is the best option to handle the
    +								variety of stored procedure / function support across the
    +								various supported RDBMS. For more details, read on about this
    +								topic, here:
    +							</fo:block>
    +							<fo:block font-size="11pt">
    +								<fo:basic-link font-size="11pt" color="#882222" font-weight="bold" text-shadow="0 1px 2px #666666" external-destination="url('http://lukaseder.wordpress.com/2011/10/17/what-are-procedures-and-functions-after-all/')">lukaseder.wordpress.com/2011/10/17/what-are-procedures-and-functions-after-all/</fo:basic-link>
    +							</fo:block>
    +
    +							<fo:block font-family="Georgia" font-size="16pt" padding-top="10pt" padding-bottom="10pt" page-break-after="avoid">Packages in Oracle</fo:block>
    +							<fo:block font-size="11pt">
    +								Oracle uses the concept of a PACKAGE to group several
    +								procedures/functions into a sort of namespace. The
    +								<fo:basic-link font-size="11pt" color="#882222" font-weight="bold" text-shadow="0 1px 2px #666666" external-destination="url('http://www.contrib.andrew.cmu.edu/~shadow/sql/sql1992.txt')">SQL standard</fo:basic-link>
    +								talks about "modules", to represent this concept, even if this is
    +								rarely implemented. This is reflected in jOOQ by the use of Java
    +								sub-packages in the source code generation destination package. Every
    +								Oracle package will be reflected by
    +							</fo:block>
    +							<fo:block padding-top="16pt" padding-bottom="16pt" page-break-inside="avoid">
    +<fo:list-block>
    +								<fo:list-item>
    +<fo:list-item-label>
    +<fo:block font-size="11pt" page-break-inside="avoid">-</fo:block>
    +</fo:list-item-label>
    +<fo:list-item-body start-indent="body-start()">
    +<fo:block font-size="11pt" page-break-inside="avoid">A Java package holding classes for formal Java representations of
    +									the procedure/function in that package
    +								</fo:block>
    +</fo:list-item-body>
    +</fo:list-item>
    +								<fo:list-item>
    +<fo:list-item-label>
    +<fo:block font-size="11pt" page-break-inside="avoid">-</fo:block>
    +</fo:list-item-label>
    +<fo:list-item-body start-indent="body-start()">
    +<fo:block font-size="11pt" page-break-inside="avoid">A Java class holding convenience methods to facilitate calling
    +									those procedures/functions
    +								</fo:block>
    +</fo:list-item-body>
    +</fo:list-item>
    +							</fo:list-block>
    +</fo:block>
    +							<fo:block font-size="11pt">
    +								Apart from this, the generated source code looks exactly like the
    +								one for
    +								standalone procedures/functions.
    +							</fo:block>
    +
    +							<fo:block font-family="Georgia" font-size="16pt" padding-top="10pt" padding-bottom="10pt" page-break-after="avoid">Member functions and procedures in Oracle</fo:block>
    +							<fo:block font-size="11pt">
    +								Oracle UDT's can have object-oriented structures including member functions
    +								and procedures. With Oracle, you can do things like this:
    +							</fo:block>
    +<fo:block font-family="Courier" linefeed-treatment="preserve" white-space-collapse="false" white-space-treatment="preserve" font-size="6pt" margin="12pt" padding="4pt" border="2px solid #882222" background-color="#FFEEDD" page-break-inside="avoid">CREATE OR REPLACE TYPE u_author_type AS OBJECT (
    +  id NUMBER(7),
    +  first_name VARCHAR2(50),
    +  last_name VARCHAR2(50),
    +
    +  MEMBER PROCEDURE LOAD,
    +  MEMBER FUNCTION count_books RETURN NUMBER
    +)
    +
    +-- The type body is omitted for the example
    +</fo:block>
    +
    +							<fo:block font-size="11pt">
    +								These member functions and procedures can simply be mapped to Java
    +								methods:
    +							</fo:block>
    +
    +<fo:block font-family="Courier" linefeed-treatment="preserve" white-space-collapse="false" white-space-treatment="preserve" font-size="6pt" margin="12pt" padding="4pt" border="2px solid #882222" background-color="#FFEEDD" page-break-inside="avoid">
    +// Create an empty, attached UDT record from the Factory
    +UAuthorType author = create.newRecord(U_AUTHOR_TYPE);
    +
    +// Set the author ID and load the record using the LOAD procedure
    +author.setId(1);
    +author.load();
    +
    +// The record is now updated with the LOAD implementation's content
    +assertNotNull(author.getFirstName());
    +assertNotNull(author.getLastName());</fo:block>
    +
    +							<fo:block font-size="11pt">For more details about UDT's see the Manual's section on
    +							<fo:basic-link font-size="11pt" color="#882222" font-weight="bold" text-shadow="0 1px 2px #666666" internal-destination="UDT">User Defined Types</fo:basic-link>
    +</fo:block>
    +
    +						<fo:block font-family="Georgia" font-size="18pt" padding-top="12pt" padding-bottom="12pt" page-break-after="avoid" id="UDT">
    +<fo:marker marker-class-name="section">
    +<fo:block>2.6. UDT's including ARRAY and ENUM types</fo:block>
    +</fo:marker>2.6. UDT's including ARRAY and ENUM types</fo:block>
    +<fo:block font-size="11pt">
    +							Databases become more powerful when you can structure your data in user
    +							defined types. It's time for Java developers to give some credit to
    +							that.
    +						</fo:block>
    +							<fo:block font-family="Georgia" font-size="16pt" padding-top="10pt" padding-bottom="10pt" page-break-after="avoid">Increased RDBMS support for UDT's</fo:block>
    +							<fo:block font-size="11pt">
    +								In recent years, most RDBMS have started to implement some support for
    +								advanced data types. This support has not been adopted very well by
    +								database users in the Java world, for several reasons:
    +							</fo:block>
    +							<fo:block padding-top="16pt" padding-bottom="16pt" page-break-inside="avoid">
    +<fo:list-block>
    +								<fo:list-item>
    +<fo:list-item-label>
    +<fo:block font-size="11pt" page-break-inside="avoid">-</fo:block>
    +</fo:list-item-label>
    +<fo:list-item-body start-indent="body-start()">
    +<fo:block font-size="11pt" page-break-inside="avoid">They are usually orthogonal to relational concepts. It is not easy
    +									to modify a UDT once it is referenced by a table column.</fo:block>
    +</fo:list-item-body>
    +</fo:list-item>
    +								<fo:list-item>
    +<fo:list-item-label>
    +<fo:block font-size="11pt" page-break-inside="avoid">-</fo:block>
    +</fo:list-item-label>
    +<fo:list-item-body start-indent="body-start()">
    +<fo:block font-size="11pt" page-break-inside="avoid">There is little standard support of accessing them from JDBC (and
    +									probably other database connectivity standards). </fo:block>
    +</fo:list-item-body>
    +</fo:list-item>
    +							</fo:list-block>
    +</fo:block>
    +							<fo:block font-size="11pt">
    +								On the other hand, especially with stored procedures, these data types
    +								are likely to become more and more useful in the future. If you have a
    +								look at Postgres' capabilities of dealing with advanced data types
    +								(<fo:basic-link font-size="11pt" color="#882222" font-weight="bold" text-shadow="0 1px 2px #666666" external-destination="url('http://www.postgresql.org/docs/9.0/interactive/datatype-enum.html')">ENUMs</fo:basic-link>,
    +								<fo:basic-link font-size="11pt" color="#882222" font-weight="bold" text-shadow="0 1px 2px #666666" external-destination="url('http://www.postgresql.org/docs/9.0/interactive/arrays.html')">ARRAYs</fo:basic-link>,
    +								<fo:basic-link font-size="11pt" color="#882222" font-weight="bold" text-shadow="0 1px 2px #666666" external-destination="url('http://www.postgresql.org/docs/9.0/interactive/rowtypes.html')">UDT's</fo:basic-link>),
    +								 this becomes more and more obvious.
    +							</fo:block>
    +							<fo:block font-size="11pt">It is a central strategy for jOOQ, to standardise access to these
    +								kinds of types (as well as to
    +								<fo:basic-link font-size="11pt" color="#882222" font-weight="bold" text-shadow="0 1px 2px #666666" internal-destination="PROCEDURE">stored procedures</fo:basic-link>, of course) across all
    +								RDBMS, where these types are supported. </fo:block>
    +
    +							<fo:block font-family="Georgia" font-size="16pt" padding-top="10pt" padding-bottom="10pt" page-break-after="avoid">UDT types</fo:block>
    +							<fo:block font-size="11pt">User Defined Types (UDT) are helpful in major RDMBS with lots
    +							of proprietary functionality. The biggest player is clearly Oracle.
    +							Currently, jOOQ provides UDT support for only two databases: </fo:block>
    +							<fo:block padding-top="16pt" padding-bottom="16pt" page-break-inside="avoid">
    +<fo:list-block>
    +								<fo:list-item>
    +<fo:list-item-label>
    +<fo:block font-size="11pt" page-break-inside="avoid">-</fo:block>
    +</fo:list-item-label>
    +<fo:list-item-body start-indent="body-start()">
    +<fo:block font-size="11pt" page-break-inside="avoid">Oracle</fo:block>
    +</fo:list-item-body>
    +</fo:list-item>
    +								<fo:list-item>
    +<fo:list-item-label>
    +<fo:block font-size="11pt" page-break-inside="avoid">-</fo:block>
    +</fo:list-item-label>
    +<fo:list-item-body start-indent="body-start()">
    +<fo:block font-size="11pt" page-break-inside="avoid">Postgres</fo:block>
    +</fo:list-item-body>
    +</fo:list-item>
    +							</fo:list-block>
    +</fo:block>
    +							<fo:block font-size="11pt">Apart from that, </fo:block>
    +							<fo:block padding-top="16pt" padding-bottom="16pt" page-break-inside="avoid">
    +<fo:list-block>
    +								<fo:list-item>
    +<fo:list-item-label>
    +<fo:block font-size="11pt" page-break-inside="avoid">-</fo:block>
    +</fo:list-item-label>
    +<fo:list-item-body start-indent="body-start()">
    +<fo:block font-size="11pt" page-break-inside="avoid">
    +									DB2 UDT's are not supported as they are very tough to
    +									serialise/deserialise. We don't think that this is a big enough
    +									requirement to put more effort in those, right now (see also the
    +									developers' discussion on
    +									<fo:basic-link font-size="11pt" color="#882222" font-weight="bold" text-shadow="0 1px 2px #666666" external-destination="url('https://sourceforge.net/apps/trac/jooq/ticket/164')">#164</fo:basic-link>)
    +								</fo:block>
    +</fo:list-item-body>
    +</fo:list-item>
    +							</fo:list-block>
    +</fo:block>
    +
    +							<fo:block font-size="11pt">In Oracle, you would define UDTs like this: </fo:block>
    +<fo:block font-family="Courier" linefeed-treatment="preserve" white-space-collapse="false" white-space-treatment="preserve" font-size="6pt" margin="12pt" padding="4pt" border="2px solid #882222" background-color="#FFEEDD" page-break-inside="avoid">CREATE TYPE u_street_type AS OBJECT (
    +  street VARCHAR2(100),
    +  no VARCHAR2(30)
    +)
    +
    +CREATE TYPE u_address_type AS OBJECT (
    +  street u_street_type,
    +  zip VARCHAR2(50),
    +  city VARCHAR2(50),
    +  country VARCHAR2(50),
    +  since DATE,
    +  code NUMBER(7)
    +)</fo:block>
    +
    +							<fo:block font-size="11pt">These types could then be used in tables and/or stored procedures like such: </fo:block>
    +<fo:block font-family="Courier" linefeed-treatment="preserve" white-space-collapse="false" white-space-treatment="preserve" font-size="6pt" margin="12pt" padding="4pt" border="2px solid #882222" background-color="#FFEEDD" page-break-inside="avoid">CREATE TABLE t_author (
    +  id NUMBER(7) NOT NULL PRIMARY KEY,
    +  -- [...]
    +  address u_address_type
    +)
    +
    +CREATE OR REPLACE PROCEDURE p_check_address (address IN OUT u_address_type);</fo:block>
    +
    +							<fo:block font-size="11pt">
    +								Standard JDBC UDT support encourages JDBC-driver developers to implement
    +								interfaces such as
    +								<fo:basic-link font-size="11pt" color="#882222" font-weight="bold" text-shadow="0 1px 2px #666666" external-destination="url('http://download.oracle.com/javase/6/docs/api/java/sql/SQLData.html')">java.sql.SQLData</fo:basic-link>,
    +								<fo:basic-link font-size="11pt" color="#882222" font-weight="bold" text-shadow="0 1px 2px #666666" external-destination="url('http://download.oracle.com/javase/6/docs/api/java/sql/SQLInput.html')">java.sql.SQLInput</fo:basic-link> and
    +								<fo:basic-link font-size="11pt" color="#882222" font-weight="bold" text-shadow="0 1px 2px #666666" external-destination="url('http://download.oracle.com/javase/6/docs/api/java/sql/SQLOutput.html')">java.sql.SQLOutput</fo:basic-link>.
    +								Those interfaces are non-trivial to implement, or
    +								to hook into. Also access to
    +								<fo:basic-link font-size="11pt" color="#882222" font-weight="bold" text-shadow="0 1px 2px #666666" external-destination="url('http://download.oracle.com/javase/6/docs/api/java/sql/Struct.html')">java.sql.Struct</fo:basic-link>
    +								is not really simple. Due
    +								to the lack of a well-defined JDBC standard, Oracle's JDBC driver
    +								rolls their own proprietary methods of dealing with these types. jOOQ
    +								goes a different way, it hides those facts from you entirely. With
    +								jOOQ, the above UDT's will be generated in simple
    +								<fo:basic-link font-size="11pt" color="#882222" font-weight="bold" text-shadow="0 1px 2px #666666" external-destination="url('http://www.jooq.org/javadoc/latest/org/jooq/UDT.html')">UDT meta-model classes</fo:basic-link> and
    +								<fo:basic-link font-size="11pt" color="#882222" font-weight="bold" text-shadow="0 1px 2px #666666" external-destination="url('http://www.jooq.org/javadoc/latest/org/jooq/UDTRecord.html')">UDT record classes</fo:basic-link> as such:
    +							</fo:block>
    +<fo:block font-family="Courier" linefeed-treatment="preserve" white-space-collapse="false" white-space-treatment="preserve" font-size="6pt" margin="12pt" padding="4pt" border="2px solid #882222" background-color="#FFEEDD" page-break-inside="avoid">// There is an analogy between UDT/Table and UDTRecord/TableRecord...
    +public class UAddressType extends UDTImpl&lt;UAddressTypeRecord&gt; {
    +
    +    // The UDT meta-model singleton instance
    +    public static final UAddressType U_ADDRESS_TYPE = new UAddressType();
    +
    +    // UDT attributes are modeled as static members. Nested UDT's
    +    // behave similarly
    +    public static final UDTField&lt;UAddressTypeRecord, UStreetTypeRecord&gt; STREET = // [...]
    +    public static final UDTField&lt;UAddressTypeRecord, String&gt; ZIP =               // [...]
    +    public static final UDTField&lt;UAddressTypeRecord, String&gt; CITY =              // [...]
    +    public static final UDTField&lt;UAddressTypeRecord, String&gt; COUNTRY =           // [...]
    +    public static final UDTField&lt;UAddressTypeRecord, Date&gt; SINCE =               // [...]
    +    public static final UDTField&lt;UAddressTypeRecord, Integer&gt; CODE =             // [...]
    +}</fo:block>
    +
    +							<fo:block font-size="11pt">Now, when you interact with entities or procedures that hold UDT's, that's very simple as well. Here is an example: </fo:block>
    +<fo:block font-family="Courier" linefeed-treatment="preserve" white-space-collapse="false" white-space-treatment="preserve" font-size="6pt" margin="12pt" padding="4pt" border="2px solid #882222" background-color="#FFEEDD" page-break-inside="avoid">// Fetch any author from the T_AUTHOR table
    +TAuthorRecord author = create.selectFrom(T_AUTHOR).fetchAny();
    +
    +// Print out the author's address's house number
    +System.out.println(author.getAddress().getStreet().getNo());</fo:block>
    +
    +							<fo:block font-size="11pt">A similar thing can be achieved when interacting with the example stored procedure: </fo:block>
    +<fo:block font-family="Courier" linefeed-treatment="preserve" white-space-collapse="false" white-space-treatment="preserve" font-size="6pt" margin="12pt" padding="4pt" border="2px solid #882222" background-color="#FFEEDD" page-break-inside="avoid">// Create a new UDTRecord of type U_ADDRESS_TYPE
    +UAddressTypeRecord address = new UAddressTypeRecord();
    +address.setCountry("Switzerland");
    +
    +// Call the stored procedure with IN OUT parameter of type U_ADDRESS_TYPE
    +address = Procedures.pCheckAddress(connection, address);</fo:block>
    +
    +
    +							<fo:block font-family="Georgia" font-size="16pt" padding-top="10pt" padding-bottom="10pt" page-break-after="avoid">ARRAY types</fo:block>
    +							<fo:block font-size="11pt">
    +								The notion of ARRAY types in RDBMS is not standardised at all. Very
    +								modern databases (especially the Java-based ones) have implemented
    +								ARRAY types exactly as what they are. "ARRAYs of something". In other
    +								words, an ARRAY OF VARCHAR would be something very similar to Java's
    +								notion of String[]. An ARRAY OF ARRAY OF VARCHAR would then be a
    +								String[][] in Java. Some RDMBS, however, enforce stronger typing and
    +								need the explicit creation of types for every ARRAY as well. These are
    +								example String[] ARRAY types in various SQL dialects supported by jOOQ
    +								1.5.4:
    +							</fo:block>
    +							<fo:block padding-top="16pt" padding-bottom="16pt" page-break-inside="avoid">
    +<fo:list-block>
    +								<fo:list-item>
    +<fo:list-item-label>
    +<fo:block font-size="11pt" page-break-inside="avoid">-</fo:block>
    +</fo:list-item-label>
    +<fo:list-item-body start-indent="body-start()">
    +<fo:block font-size="11pt" page-break-inside="avoid">Oracle: VARRAY OF VARCHAR2. A strongly typed object encapsulating an ARRAY of a given type. See the <fo:basic-link font-size="11pt" color="#882222" font-weight="bold" text-shadow="0 1px 2px #666666" external-destination="url('http://download.oracle.com/docs/cd/B19306_01/appdev.102/b14261/collection_definition.htm')">documentation.</fo:basic-link>
    +</fo:block>
    +</fo:list-item-body>
    +</fo:list-item>
    +								<fo:list-item>
    +<fo:list-item-label>
    +<fo:block font-size="11pt" page-break-inside="avoid">-</fo:block>
    +</fo:list-item-label>
    +<fo:list-item-body start-indent="body-start()">
    +<fo:block font-size="11pt" page-break-inside="avoid">Postgres: text[]. Any data type can be turned into an array by suffixing it with []. See the <fo:basic-link font-size="11pt" color="#882222" font-weight="bold" text-shadow="0 1px 2px #666666" external-destination="url('http://www.postgresql.org/docs/9.0/interactive/arrays.html')">documentation</fo:basic-link>
    +</fo:block>
    +</fo:list-item-body>
    +</fo:list-item>
    +								<fo:list-item>
    +<fo:list-item-label>
    +<fo:block font-size="11pt" page-break-inside="avoid">-</fo:block>
    +</fo:list-item-label>
    +<fo:list-item-body start-indent="body-start()">
    +<fo:block font-size="11pt" page-break-inside="avoid">HSQLDB: VARCHAR ARRAY. Any data type can be turned into an array by suffixing it with ARRAY. See the <fo:basic-link font-size="11pt" color="#882222" font-weight="bold" text-shadow="0 1px 2px #666666" external-destination="url('http://hsqldb.org/doc/2.0/guide/sqlgeneral-chapt.html#N1070F')">documentation</fo:basic-link>
    +</fo:block>
    +</fo:list-item-body>
    +</fo:list-item>
    +								<fo:list-item>
    +<fo:list-item-label>
    +<fo:block font-size="11pt" page-break-inside="avoid">-</fo:block>
    +</fo:list-item-label>
    +<fo:list-item-body start-indent="body-start()">
    +<fo:block font-size="11pt" page-break-inside="avoid">H2: ARRAY. H2 does not know of typed arrays. All ARRAYs are mapped to Object[]. See the <fo:basic-link font-size="11pt" color="#882222" font-weight="bold" text-shadow="0 1px 2px #666666" external-destination="url('http://www.h2database.com/html/datatypes.html#array_type')">documentation</fo:basic-link>
    +</fo:block>
    +</fo:list-item-body>
    +</fo:list-item>
    +							</fo:list-block>
    +</fo:block>
    +							<fo:block font-size="11pt">Soon to be supported: </fo:block>
    +							<fo:block padding-top="16pt" padding-bottom="16pt" page-break-inside="avoid">
    +<fo:list-block>
    +								<fo:list-item>
    +<fo:list-item-label>
    +<fo:block font-size="11pt" page-break-inside="avoid">-</fo:block>
    +</fo:list-item-label>
    +<fo:list-item-body start-indent="body-start()">
    +<fo:block font-size="11pt" page-break-inside="avoid">DB2: Knows a similar strongly-typed ARRAY type, like Oracle </fo:block>
    +</fo:list-item-body>
    +</fo:list-item>
    +							</fo:list-block>
    +</fo:block>
    +							<fo:block font-size="11pt">
    +								From jOOQ's perspective, the ARRAY types fit in just like any other
    +								type wherever the
    +								&lt;T&gt; generic type parameter is existent. It integrates well with tables
    +									and stored procedures.
    +							</fo:block>
    +
    +							<fo:block font-family="Georgia" font-size="16pt" padding-top="10pt" padding-bottom="10pt" page-break-after="avoid">Example: General ARRAY types</fo:block>
    +							<fo:block font-size="11pt">An example usage of ARRAYs is given here for the Postgres dialect </fo:block>
    +
    +<fo:block font-family="Courier" linefeed-treatment="preserve" white-space-collapse="false" white-space-treatment="preserve" font-size="6pt" margin="12pt" padding="4pt" border="2px solid #882222" background-color="#FFEEDD" page-break-inside="avoid">CREATE TABLE t_arrays (
    +  id integer not null primary key,
    +  string_array VARCHAR(20)[],
    +  number_array INTEGER[]
    +)
    +
    +CREATE FUNCTION f_arrays(in_array IN text[]) RETURNS text[]</fo:block>
    +
    +							<fo:block font-size="11pt">When generating source code from the above entities, these artefacts will be created in Java: </fo:block>
    +<fo:block font-family="Courier" linefeed-treatment="preserve" white-space-collapse="false" white-space-treatment="preserve" font-size="6pt" margin="12pt" padding="4pt" border="2px solid #882222" background-color="#FFEEDD" page-break-inside="avoid">public class TArrays extends UpdatableTableImpl&lt;TArraysRecord&gt; {
    +
    +    // The generic type parameter &lt;T&gt; is bound to an array of a matching type
    +    public static final TableField&lt;TArraysRecord, String[]&gt; STRING_ARRAY =  // [...]
    +    public static final TableField&lt;TArraysRecord, Integer[]&gt; NUMBER_ARRAY = // [...]
    +}
    +
    +// The convenience class is enhanced with these methods
    +public final class Functions {
    +    public static String[] fArrays(Connection connection, String[] inArray) { // [...]
    +    public static Field&lt;String[]&gt; fArrays(String[] inArray) {                                     // [...]
    +    public static Field&lt;String[]&gt; fArrays(Field&lt;String[]&gt; inArray) {                              // [...]
    +}</fo:block>
    +
    +							<fo:block font-family="Georgia" font-size="16pt" padding-top="10pt" padding-bottom="10pt" page-break-after="avoid">Example: Oracle VARRAY types</fo:block>
    +							<fo:block font-size="11pt">In Oracle, a VARRAY type is something slightly different than in
    +								other RDMBS. It is a type that encapsules the actual ARRAY and creates
    +								a new type from it. While all text[] types are equal and thus
    +								compatible in Postgres, this does not apply for all VARRAY OF VARCHAR2
    +								types. Hence, it is important to provide access to VARRAY types and
    +								generated objects from those types as well. The example above would
    +								read like this in Oracle: </fo:block>
    +
    +<fo:block font-family="Courier" linefeed-treatment="preserve" white-space-collapse="false" white-space-treatment="preserve" font-size="6pt" margin="12pt" padding="4pt" border="2px solid #882222" background-color="#FFEEDD" page-break-inside="avoid">CREATE TYPE u_string_array AS VARRAY(4) OF VARCHAR2(20)
    +CREATE TYPE u_number_array AS VARRAY(4) OF NUMBER(7)
    +
    +CREATE TABLE t_arrays (
    +  id NUMBER(7) not null primary key,
    +  string_array u_string_array,
    +  number_array u_number_array
    +)
    +
    +CREATE OR REPLACE FUNCTION f_arrays (in_array u_string_array)
    +RETURN u_string_array</fo:block>
    +
    +							<fo:block font-size="11pt">Note that it becomes clear immediately, that a mapping from
    +								U_STRING_ARRAY to String[] is obvious. But a mapping from String[] to
    +								U_STRING_ARRAY is not. These are the generated
    +								<fo:basic-link font-size="11pt" color="#882222" font-weight="bold" text-shadow="0 1px 2px #666666" external-destination="url('http://www.jooq.org/javadoc/latest/org/jooq/ArrayRecord.html')">org.jooq.ArrayRecord</fo:basic-link> and other
    +								artefacts in Oracle: </fo:block>
    +
    +<fo:block font-family="Courier" linefeed-treatment="preserve" white-space-collapse="false" white-space-treatment="preserve" font-size="6pt" margin="12pt" padding="4pt" border="2px solid #882222" background-color="#FFEEDD" page-break-inside="avoid">public class UStringArrayRecord extends ArrayRecordImpl&lt;String&gt; {  // [...]
    +public class UNumberArrayRecord extends ArrayRecordImpl&lt;Integer&gt; { // [...]
    +
    +public class TArrays extends UpdatableTableImpl&lt;TArraysRecord&gt; {
    +    public static final TableField&lt;TArraysRecord, UStringArrayRecord&gt; STRING_ARRAY = // [...]
    +    public static final TableField&lt;TArraysRecord, UNumberArrayRecord&gt; NUMBER_ARRAY = // [...]
    +}
    +
    +public final class Functions {
    +    public static UStringArrayRecord fArrays3(Connection connection, UStringArrayRecord inArray) { // [...]
    +    public static Field&lt;UStringArrayRecord&gt; fArrays3(UStringArrayRecord inArray) {                 // [...]
    +    public static Field&lt;UStringArrayRecord&gt; fArrays3(Field&lt;UStringArrayRecord&gt; inArray) {          // [...]
    +}</fo:block>
    +
    +
    +							<fo:block font-family="Georgia" font-size="16pt" padding-top="10pt" padding-bottom="10pt" page-break-after="avoid">ENUM types</fo:block>
    +							<fo:block font-size="11pt">True ENUM types are a rare species in the RDBMS world. Currently,
    +								MySQL and Postgres are the only RDMBS supported by jOOQ, that provide
    +								ENUM types. </fo:block>
    +
    +							<fo:block padding-top="16pt" padding-bottom="16pt" page-break-inside="avoid">
    +<fo:list-block>
    +								<fo:list-item>
    +<fo:list-item-label>
    +<fo:block font-size="11pt" page-break-inside="avoid">-</fo:block>
    +</fo:list-item-label>
    +<fo:list-item-body start-indent="body-start()">
    +<fo:block font-size="11pt" page-break-inside="avoid">In MySQL, an ENUM type is declared directly upon a column. It cannot be reused as a type. See the <fo:basic-link font-size="11pt" color="#882222" font-weight="bold" text-shadow="0 1px 2px #666666" external-destination="url('http://dev.mysql.com/doc/refman/5.5/en/enum.html')">documentation.</fo:basic-link> </fo:block>
    +</fo:list-item-body>
    +</fo:list-item>
    +								<fo:list-item>
    +<fo:list-item-label>
    +<fo:block font-size="11pt" page-break-inside="avoid">-</fo:block>
    +</fo:list-item-label>
    +<fo:list-item-body start-indent="body-start()">
    +<fo:block font-size="11pt" page-break-inside="avoid">In Postgres, the ENUM type is declared independently and can be reused among tables, functions, etc. See the <fo:basic-link font-size="11pt" color="#882222" font-weight="bold" text-shadow="0 1px 2px #666666" external-destination="url('http://www.postgresql.org/docs/9.0/interactive/datatype-enum.html')">documentation.</fo:basic-link> </fo:block>
    +</fo:list-item-body>
    +</fo:list-item>
    +								<fo:list-item>
    +<fo:list-item-label>
    +<fo:block font-size="11pt" page-break-inside="avoid">-</fo:block>
    +</fo:list-item-label>
    +<fo:list-item-body start-indent="body-start()">
    +<fo:block font-size="11pt" page-break-inside="avoid">Other RDMBS know about "ENUM constraints", such as the Oracle CHECK constraint. These are not true ENUMS, however. jOOQ refrains from using their information for source code generation </fo:block>
    +</fo:list-item-body>
    +</fo:list-item>
    +							</fo:list-block>
    +</fo:block>
    +
    +							<fo:block font-size="11pt">Some examples: </fo:block>
    +<fo:block font-family="Courier" linefeed-treatment="preserve" white-space-collapse="false" white-space-treatment="preserve" font-size="6pt" margin="12pt" padding="4pt" border="2px solid #882222" background-color="#FFEEDD" page-break-inside="avoid">-- An example enum type
    +CREATE TYPE u_book_status AS ENUM ('SOLD OUT', 'ON STOCK', 'ORDERED')
    +
    +-- An example useage of that enum type
    +CREATE TABLE t_book (
    +  id INTEGER NOT NULL PRIMARY KEY,
    +
    +  -- [...]
    +  status u_book_status
    +)</fo:block>
    +
    +							<fo:block font-size="11pt">The above Postgres ENUM type will be generated as </fo:block>
    +<fo:block font-family="Courier" linefeed-treatment="preserve" white-space-collapse="false" white-space-treatment="preserve" font-size="6pt" margin="12pt" padding="4pt" border="2px solid #882222" background-color="#FFEEDD" page-break-inside="avoid">public enum UBookStatus implements EnumType {
    +    ORDERED("ORDERED"),
    +    ON_STOCK("ON STOCK"),
    +    SOLD_OUT("SOLD OUT");
    +
    +    // [...]
    +}</fo:block>
    +							<fo:block font-size="11pt">Intuitively, the generated classes for the T_BOOK table in Postgres would look like this: </fo:block>
    +<fo:block font-family="Courier" linefeed-treatment="preserve" white-space-collapse="false" white-space-treatment="preserve" font-size="6pt" margin="12pt" padding="4pt" border="2px solid #882222" background-color="#FFEEDD" page-break-inside="avoid">// The meta-model class
    +public class TBook extends UpdatableTableImpl&lt;TBookRecord&gt; {
    +
    +    // The TableField STATUS binds &lt;T&gt; to UBookStatus
    +    public static final TableField&lt;TBookRecord, UBookStatus&gt; STATUS = // [...]
    +
    +    // [...]
    +}
    +
    +// The record class
    +public class TBookRecord extends UpdatableRecordImpl&lt;TBookRecord&gt; {
    +
    +    // Corresponding to the Table meta-model, also setters and getters
    +    // deal with the generated UBookStatus
    +    public void setStatus(UBookStatus value) { // [...]
    +    public UBookStatus getStatus() {           // [...]
    +}</fo:block>
    +
    +							<fo:block font-size="11pt">Note that jOOQ allows you to simulate ENUM types where this makes
    +								sense in your data model. See the section on
    +								<fo:basic-link font-size="11pt" color="#882222" font-weight="bold" text-shadow="0 1px 2px #666666" internal-destination="MasterData">master data</fo:basic-link> for more
    +								details. </fo:block>
    +						<fo:block font-family="Georgia" font-size="18pt" padding-top="12pt" padding-bottom="12pt" page-break-after="avoid" id="SEQUENCE">
    +<fo:marker marker-class-name="section">
    +<fo:block>2.7. Sequences</fo:block>
    +</fo:marker>2.7. Sequences</fo:block>
    +<fo:block font-size="11pt">
    +							jOOQ also generates convenience artefacts for sequences, where this is
    +							supported: DB2, Derby, H2, HSQLDB, Oracle, Postgres, and more.
    +						</fo:block>
    +							<fo:block font-family="Georgia" font-size="16pt" padding-top="10pt" padding-bottom="10pt" page-break-after="avoid">Sequences as a source for identity values</fo:block>
    +							<fo:block font-size="11pt"> Sequences implement the
    +							<fo:basic-link font-size="11pt" color="#882222" font-weight="bold" text-shadow="0 1px 2px #666666" external-destination="url('http://www.jooq.org/javadoc/latest/org/jooq/Sequence.html')">org.jooq.Sequence</fo:basic-link> interface, providing essentially this functionality:</fo:block>
    +
    +<fo:block font-family="Courier" linefeed-treatment="preserve" white-space-collapse="false" white-space-treatment="preserve" font-size="6pt" margin="12pt" padding="4pt" border="2px solid #882222" background-color="#FFEEDD" page-break-inside="avoid">// Get a field for the CURRVAL sequence property
    +Field&lt;T&gt; currval();
    +
    +// Get a field for the NEXTVAL sequence property
    +Field&lt;T&gt; nextval();</fo:block>
    +							<fo:block font-size="11pt">So if you have a sequence like this in Oracle: </fo:block>
    +							<fo:block font-family="Courier" linefeed-treatment="preserve" white-space-collapse="false" white-space-treatment="preserve" font-size="6pt" margin="12pt" padding="4pt" border="2px solid #882222" background-color="#FFEEDD" page-break-inside="avoid">CREATE SEQUENCE s_author_id</fo:block>
    +							<fo:block font-size="11pt">This is what jOOQ will generate: </fo:block>
    +<fo:block font-family="Courier" linefeed-treatment="preserve" white-space-collapse="false" white-space-treatment="preserve" font-size="6pt" margin="12pt" padding="4pt" border="2px solid #882222" background-color="#FFEEDD" page-break-inside="avoid">public final class Sequences {
    +
    +    // A static sequence instance
    +    public static final Sequence&lt;BigInteger&gt; S_AUTHOR_ID = // [...]
    +}</fo:block>
    +
    +							<fo:block font-size="11pt">Which you can use in a select statement as such: </fo:block>
    +<fo:block font-family="Courier" linefeed-treatment="preserve" white-space-collapse="false" white-space-treatment="preserve" font-size="6pt" margin="12pt" padding="4pt" border="2px solid #882222" background-color="#FFEEDD" page-break-inside="avoid">Field&lt;BigInteger&gt; s = Sequences.S_AUTHOR_ID.nextval();
    +BigInteger nextID   = create.select(s).fetchOne(s);</fo:block>
    +
    +							<fo:block font-size="11pt">Or directly fetch currval() and nextval() from the sequence using the Factory: </fo:block>
    +<fo:block font-family="Courier" linefeed-treatment="preserve" white-space-collapse="false" white-space-treatment="preserve" font-size="6pt" margin="12pt" padding="4pt" border="2px solid #882222" background-color="#FFEEDD" page-break-inside="avoid">BigInteger currval = create.currval(Sequences.S_AUTHOR_ID);
    +BigInteger nextval = create.nextval(Sequences.S_AUTHOR_ID);</fo:block>
    +						<fo:block break-after="page"/>
    +<fo:block font-family="Georgia" font-size="18pt" padding-top="12pt" padding-bottom="12pt" page-break-after="avoid" id="DSL">
    +<fo:marker marker-class-name="section">
    +<fo:block>3. DSL or fluent API. Where SQL meets Java</fo:block>
    +</fo:marker>3. DSL or fluent API. Where SQL meets Java</fo:block>
    +<fo:block font-size="11pt">
    +					In these sections you will learn about how jOOQ makes SQL available to
    +					Java as if Java natively supported SQL
    +				</fo:block>
    +					<fo:block font-family="Georgia" font-size="16pt" padding-top="10pt" padding-bottom="10pt" page-break-after="avoid">Overview</fo:block>
    +					<fo:block font-size="11pt">jOOQ ships with its own DSL (or
    +						<fo:basic-link font-size="11pt" color="#882222" font-weight="bold" text-shadow="0 1px 2px #666666" external-destination="url('http://en.wikipedia.org/wiki/Domain-specific_language')">Domain Specific Language</fo:basic-link>) that
    +						simulates SQL as good as possible in Java. This means, that you can
    +						write SQL statements almost as if Java natively supported that syntax
    +						just like .NET's C# does with <fo:basic-link font-size="11pt" color="#882222" font-weight="bold" text-shadow="0 1px 2px #666666" external-destination="url('http://msdn.microsoft.com/en-us/library/bb425822.aspx')">LINQ to SQL.</fo:basic-link>
    +</fo:block>
    +
    +					<fo:block font-size="11pt">Here is an example to show you what that means. When you want to write a query like this in SQL: </fo:block>
    +					<fo:table width="100%" table-layout="fixed">
    +<fo:table-column column-width="88mm"/>
    +<fo:table-column column-width="88mm"/>
    +<fo:table-body>
    +<fo:table-row>
    +<fo:table-cell>
    +<fo:block>
    +<fo:block font-family="Courier" linefeed-treatment="preserve" white-space-collapse="false" white-space-treatment="preserve" font-size="6pt" margin="12pt" padding="4pt" border="2px solid #882222" background-color="#FFEEDD" page-break-inside="avoid">-- Select all books by authors born after 1920,
    +-- named "Paulo" from a catalogue:
    +SELECT *
    +  FROM t_author a
    +  JOIN t_book b ON a.id = b.author_id
    + WHERE a.year_of_birth &gt; 1920
    +   AND a.first_name = 'Paulo'
    + ORDER BY b.title</fo:block>
    +</fo:block>
    +</fo:table-cell>
    +<fo:table-cell>
    +<fo:block>
    +<fo:block font-family="Courier" linefeed-treatment="preserve" white-space-collapse="false" white-space-treatment="preserve" font-size="6pt" margin="12pt" padding="4pt" border="2px solid #882222" background-color="#FFEEDD" page-break-inside="avoid">Result&lt;Record&gt; result =
    +create.select()
    +      .from(T_AUTHOR.as("a"))
    +      .join(T_BOOK.as("b")).on(a.ID.equal(b.AUTHOR_ID))
    +      .where(a.YEAR_OF_BIRTH.greaterThan(1920)
    +      .and(a.FIRST_NAME.equal("Paulo")))
    +      .orderBy(b.TITLE)
    +      .fetch();</fo:block>
    +</fo:block>
    +</fo:table-cell>
    +</fo:table-row>
    +</fo:table-body>
    +</fo:table>
    +
    +					<fo:block font-size="11pt">
    +						You couldn't come much closer to SQL itself in Java, without re-writing the compiler.
    +						We'll see how the aliasing works later in the section about
    +						<fo:basic-link font-size="11pt" color="#882222" font-weight="bold" text-shadow="0 1px 2px #666666" internal-destination="ALIAS">aliasing</fo:basic-link>
    +					</fo:block>
    +				<fo:block font-family="Georgia" font-size="18pt" padding-top="12pt" padding-bottom="12pt" page-break-after="avoid" id="SELECT">
    +<fo:marker marker-class-name="section">
    +<fo:block>3.1. Complete SELECT syntax</fo:block>
    +</fo:marker>3.1. Complete SELECT syntax</fo:block>
    +<fo:block font-size="11pt">
    +							A SELECT statement is more than just the R in CRUD. It allows for
    +							transforming your relational data into any other form using concepts
    +							such as equi-join, semi-join, anti-join, outer-join and much more. jOOQ
    +							helps you think in precisely those relational concepts.
    +						</fo:block>
    +							<fo:block font-family="Georgia" font-size="16pt" padding-top="10pt" padding-bottom="10pt" page-break-after="avoid">SELECT from anonymous or ad-hoc types</fo:block>
    +							<fo:block font-size="11pt">When you don't just perform CRUD (i.e. SELECT * FROM your_table WHERE ID = ?),
    +							you're usually generating new types using custom projections. With jOOQ, this is
    +							as intuitive, as if using SQL directly. A more or less complete example of the "standard" SQL syntax, plus
    +							some extensions, is provided by a query like this:
    +							</fo:block>
    +
    +<fo:block font-family="Courier" linefeed-treatment="preserve" white-space-collapse="false" white-space-treatment="preserve" font-size="6pt" margin="12pt" padding="4pt" border="2px solid #882222" background-color="#FFEEDD" page-break-inside="avoid">-- get all authors' first and last names, and the number
    +-- of books they've written in German, if they have written
    +-- more than five books in German in the last three years
    +-- (from 2011), and sort those authors by last names
    +-- limiting results to the second and third row, locking
    +-- the rows for a subsequent update... whew!
    +
    +  SELECT T_AUTHOR.FIRST_NAME, T_AUTHOR.LAST_NAME, COUNT(*)
    +    FROM T_AUTHOR
    +    JOIN T_BOOK ON T_AUTHOR.ID = T_BOOK.AUTHOR_ID
    +   WHERE T_BOOK.LANGUAGE = 'DE'
    +     AND T_BOOK.PUBLISHED &gt; '2008-01-01'
    +GROUP BY T_AUTHOR.FIRST_NAME, T_AUTHOR.LAST_NAME
    +  HAVING COUNT(*) &gt; 5
    +ORDER BY T_AUTHOR.LAST_NAME ASC NULLS FIRST
    +   LIMIT 2
    +  OFFSET 1
    +     FOR UPDATE</fo:block>
    +
    +     						<fo:block font-size="11pt">So that's daily business. How to do it with jOOQ: When you first create a SELECT statement using the Factory's select() methods </fo:block>
    +<fo:block font-family="Courier" linefeed-treatment="preserve" white-space-collapse="false" white-space-treatment="preserve" font-size="6pt" margin="12pt" padding="4pt" border="2px solid #882222" background-color="#FFEEDD" page-break-inside="avoid">SelectFromStep select(Field&lt;?&gt;... fields);
    +
    +// Example:
    +create.select(T_AUTHOR.FIRST_NAME, T_AUTHOR.LAST_NAME, count());</fo:block>
    +
    +							<fo:block font-size="11pt">
    +								jOOQ will return an "intermediary" type to you, representing the
    +								SELECT statement about to be created (by the way, check out the
    +								section on <fo:basic-link font-size="11pt" color="#882222" font-weight="bold" text-shadow="0 1px 2px #666666" internal-destination="FUNCTIONS">aggregate operators</fo:basic-link>
    +								 to learn more about the COUNT(*)
    +								function). This type is the
    +								<fo:basic-link font-size="11pt" color="#882222" font-weight="bold" text-shadow="0 1px 2px #666666" external-destination="url('http://www.jooq.org/javadoc/latest/org/jooq/SelectFromStep.html')">org.jooq.SelectFromStep</fo:basic-link>.
    +								When you have a reference
    +								to this type, you may add a FROM clause, although that clause is
    +								optional. This is reflected by the fact, that the SelectFromStep type
    +								extends
    +								<fo:basic-link font-size="11pt" color="#882222" font-weight="bold" text-shadow="0 1px 2px #666666" external-destination="url('http://www.jooq.org/javadoc/latest/org/jooq/SelectJoinStep.html')">org.jooq.SelectJoinStep</fo:basic-link>,
    +								which allows for adding the subsequent
    +								clauses. Let's say you do decide to add a FROM clause, then you can
    +								use this method for instance:
    +							</fo:block>
    +<fo:block font-family="Courier" linefeed-treatment="preserve" white-space-collapse="false" white-space-treatment="preserve" font-size="6pt" margin="12pt" padding="4pt" border="2px solid #882222" background-color="#FFEEDD" page-break-inside="avoid">SelectJoinStep from(TableLike&lt;?&gt;... table);
    +
    +// The example, continued:
    +create.select(T_AUTHOR.FIRST_NAME, T_AUTHOR.LAST_NAME, count())
    +      .from(T_AUTHOR);</fo:block>
    +
    +							<fo:block font-size="11pt">After adding the table-like structures (mostly just Tables) to
    +								select from, you may optionally choose to add a JOIN clause, as the
    +								type returned by jOOQ is the step where you can add JOINs. Again,
    +								adding these clauses is optional, as the
    +								<fo:basic-link font-size="11pt" color="#882222" font-weight="bold" text-shadow="0 1px 2px #666666" external-destination="url('http://www.jooq.org/javadoc/latest/org/jooq/SelectJoinStep.html')">org.jooq.SelectJoinStep</fo:basic-link> extends
    +								<fo:basic-link font-size="11pt" color="#882222" font-weight="bold" text-shadow="0 1px 2px #666666" external-destination="url('http://www.jooq.org/javadoc/latest/org/jooq/SelectWhereStep.html')">org.jooq.SelectWhereStep</fo:basic-link>.
    +								But let's say we add a JOIN: </fo:block>
    +<fo:block font-family="Courier" linefeed-treatment="preserve" white-space-collapse="false" white-space-treatment="preserve" font-size="6pt" margin="12pt" padding="4pt" border="2px solid #882222" background-color="#FFEEDD" page-break-inside="avoid">// These join types are supported
    +SelectOnStep                    join(Table&lt;?&gt; table);
    +SelectOnStep           leftOuterJoin(Table&lt;?&gt; table);
    +SelectOnStep          rightOuterJoin(Table&lt;?&gt; table);
    +SelectOnStep           fullOuterJoin(Table&lt;?&gt; table);
    +SelectJoinStep             crossJoin(Table&lt;?&gt; table);
    +SelectJoinStep           naturalJoin(Table&lt;?&gt; table);
    +SelectJoinStep  naturalLeftOuterJoin(Table&lt;?&gt; table);
    +SelectJoinStep naturalRightOuterJoin(Table&lt;?&gt; table);
    +
    +// The example, continued:
    +create.select(T_AUTHOR.FIRST_NAME, T_AUTHOR.LAST_NAME, count())
    +      .from(T_AUTHOR)
    +      .join(T_BOOK);</fo:block>
    +
    +							<fo:block font-size="11pt">Now, if you do add a JOIN clause, you have to specify the JOIN .. ON
    +								condition before you can add more clauses. That's not an optional step
    +								for some JOIN types. This is reflected by the fact that
    +								<fo:basic-link font-size="11pt" color="#882222" font-weight="bold" text-shadow="0 1px 2px #666666" external-destination="url('http://www.jooq.org/javadoc/latest/org/jooq/SelectOnStep.html')">org.jooq.SelectOnStep</fo:basic-link>
    +								is a top-level interface. </fo:block>
    +
    +<fo:block font-family="Courier" linefeed-treatment="preserve" white-space-collapse="false" white-space-treatment="preserve" font-size="6pt" margin="12pt" padding="4pt" border="2px solid #882222" background-color="#FFEEDD" page-break-inside="avoid"><![CDATA[// These join conditions are supported
    +SelectJoinStep    on(Condition... conditions);
    +SelectJoinStep onKey();
    +SelectJoinStep onKey(TableField<?, ?>... keyFields);
    +SelectJoinStep onKey(ForeignKey<?, ?> key);
    +SelectJoinStep using(Field<?>... fields);
    +
    +// The example, continued:
    +create.select(T_AUTHOR.FIRST_NAME, T_AUTHOR.LAST_NAME, count())
    +      .from(T_AUTHOR)
    +      .join(T_BOOK).on(T_BOOK.AUTHOR_ID.equal(T_AUTHOR.ID));]]></fo:block>
    +
    +							<fo:block font-size="11pt">
    +								See the section about
    +								<fo:basic-link font-size="11pt" color="#882222" font-weight="bold" text-shadow="0 1px 2px #666666" internal-destination="CONDITION">conditions</fo:basic-link>
    +								to learn more about the many ways
    +								to create Conditions in jOOQ.
    +								See also the section about
    +								<fo:basic-link font-size="11pt" color="#882222" font-weight="bold" text-shadow="0 1px 2px #666666" internal-destination="TABLESOURCE">table sources</fo:basic-link>
    +								to learn more about the various ways of creating JOIN
    +								expressions
    +							</fo:block>
    +							<fo:block font-size="11pt">
    +								Now we're half way through. As you can
    +								see above, we're back to the SelectJoinStep. This means, we can
    +								re-iterate and add another JOIN clause, just like in SQL. Or we go on
    +								to the next step, adding conditions in the
    +								<fo:basic-link font-size="11pt" color="#882222" font-weight="bold" text-shadow="0 1px 2px #666666" external-destination="url('http://www.jooq.org/javadoc/latest/org/jooq/SelectWhereStep.html')">org.jooq.SelectWhereStep</fo:basic-link>: </fo:block>
    +<fo:block font-family="Courier" linefeed-treatment="preserve" white-space-collapse="false" white-space-treatment="preserve" font-size="6pt" margin="12pt" padding="4pt" border="2px solid #882222" background-color="#FFEEDD" page-break-inside="avoid">SelectConditionStep where(Condition... conditions);
    +
    +// The example, continued:
    +create.select(TAuthor.FIRST_NAME, TAuthor.LAST_NAME, count())
    +      .from(T_AUTHOR)
    +      .join(T_BOOK).on(T_BOOK.AUTHOR_ID.equal(T_AUTHOR.ID))
    +      .where(T_BOOK.LANGUAGE.equal("DE"));</fo:block>
    +
    +							<fo:block font-size="11pt">Now the returned type
    +								<fo:basic-link font-size="11pt" color="#882222" font-weight="bold" text-shadow="0 1px 2px #666666" external-destination="url('http://www.jooq.org/javadoc/latest/org/jooq/SelectConditionStep.html')">org.jooq.SelectConditionStep</fo:basic-link> is a special one, where
    +								you can add more conditions to the already existing WHERE clause.
    +								Every time you add a condition, you will return to that
    +								SelectConditionStep, as the number of additional conditions is
    +								unlimited. Note that of course you can also just add a single combined
    +								condition, if that is more readable or suitable for your use-case.
    +								Here's how we add another condition: </fo:block>
    +<fo:block font-family="Courier" linefeed-treatment="preserve" white-space-collapse="false" white-space-treatment="preserve" font-size="6pt" margin="12pt" padding="4pt" border="2px solid #882222" background-color="#FFEEDD" page-break-inside="avoid">SelectConditionStep and(Condition condition);
    +
    +// The example, continued:
    +create.select(T_AUTHOR.FIRST_NAME, T_AUTHOR.LAST_NAME, count())
    +      .from(T_AUTHOR)
    +      .join(T_BOOK).on(T_BOOK.AUTHOR_ID.equal(T_AUTHOR.ID))
    +      .where(T_BOOK.LANGUAGE.equal("DE"))
    +      .and(T_BOOK.PUBLISHED.greaterThan(parseDate('2008-01-01')));</fo:block>
    +
    +							<fo:block font-size="11pt">Let's assume we have that method parseDate() creating a
    +								<fo:basic-link font-size="11pt" color="#882222" font-weight="bold" text-shadow="0 1px 2px #666666" external-destination="url('http://download.oracle.com/javase/6/docs/api/java/sql/Date.html')">java.sql.Date</fo:basic-link> for us.
    +								Then we'll continue adding the GROUP BY clause
    +							</fo:block>
    +<fo:block font-family="Courier" linefeed-treatment="preserve" white-space-collapse="false" white-space-treatment="preserve" font-size="6pt" margin="12pt" padding="4pt" border="2px solid #882222" background-color="#FFEEDD" page-break-inside="avoid">SelectHavingStep groupBy(Field&lt;?&gt;... fields);
    +
    +// The example, continued:
    +create.select(T_AUTHOR.FIRST_NAME, T_AUTHOR.LAST_NAME, count())
    +      .from(T_AUTHOR)
    +      .join(T_BOOK).on(T_BOOK.AUTHOR_ID.equal(T_AUTHOR.ID))
    +      .where(T_BOOK.LANGUAGE.equal("DE"))
    +      .and(T_BOOK.PUBLISHED.greaterThan(parseDate('2008-01-01')))
    +      .groupBy(T_AUTHOR.FIRST_NAME, T_AUTHOR.LAST_NAME);</fo:block>
    +
    +      						<fo:block font-size="11pt">and the HAVING clause: </fo:block>
    +<fo:block font-family="Courier" linefeed-treatment="preserve" white-space-collapse="false" white-space-treatment="preserve" font-size="6pt" margin="12pt" padding="4pt" border="2px solid #882222" background-color="#FFEEDD" page-break-inside="avoid">SelectOrderByStep having(Condition... conditions);
    +
    +// The example, continued:
    +create.select(T_AUTHOR.FIRST_NAME, T_AUTHOR.LAST_NAME, count())
    +      .from(T_AUTHOR)
    +      .join(T_BOOK).on(T_BOOK.AUTHOR_ID.equal(T_AUTHOR.ID))
    +      .where(T_BOOK.LANGUAGE.equal("DE"))
    +      .and(T_BOOK.PUBLISHED.greaterThan(parseDate('2008-01-01')))
    +      .groupBy(T_AUTHOR.FIRST_NAME, T_AUTHOR.LAST_NAME)
    +      .having(count().greaterThan(5));</fo:block>
    +
    +							<fo:block font-size="11pt">and the ORDER BY clause. Some RDBMS support NULLS FIRST and NULLS
    +								LAST extensions to the ORDER BY clause. If this is not supported by
    +								the RDBMS, then the behaviour is simulated with an additional CASE
    +								WHEN ... IS NULL THEN 1 ELSE 0 END clause. </fo:block>
    +<fo:block font-family="Courier" linefeed-treatment="preserve" white-space-collapse="false" white-space-treatment="preserve" font-size="6pt" margin="12pt" padding="4pt" border="2px solid #882222" background-color="#FFEEDD" page-break-inside="avoid">SelectLimitStep orderBy(Field&lt;?&gt;... fields);
    +
    +// The example, continued:
    +create.select(T_AUTHOR.FIRST_NAME, T_AUTHOR.LAST_NAME, count())
    +      .from(T_AUTHOR)
    +      .join(T_BOOK).on(T_BOOK.AUTHOR_ID.equal(T_AUTHOR.ID))
    +      .where(T_BOOK.LANGUAGE.equal("DE"))
    +      .and(T_BOOK.PUBLISHED.greaterThan(parseDate('2008-01-01')))
    +      .groupBy(T_AUTHOR.FIRST_NAME, T_AUTHOR.LAST_NAME)
    +      .having(count().greaterThan(5))
    +      .orderBy(T_AUTHOR.LAST_NAME.asc().nullsFirst());</fo:block>
    +
    +							<fo:block font-size="11pt">and finally the LIMIT clause. Most dialects have a means of limiting
    +								the number of result records (except Oracle). Some even support having
    +								an OFFSET to the LIMIT clause. Even if your RDBMS does not support the
    +								full LIMIT ... OFFSET ... (or TOP ... START AT ..., or FETCH FIRST ... ROWS ONLY, etc)
    +								clause, jOOQ will simulate the LIMIT clause using nested selects and filtering on
    +								ROWNUM (for Oracle), or on ROW_NUMBER() (for DB2 and SQL
    +								Server): </fo:block>
    +<fo:block font-family="Courier" linefeed-treatment="preserve" white-space-collapse="false" white-space-treatment="preserve" font-size="6pt" margin="12pt" padding="4pt" border="2px solid #882222" background-color="#FFEEDD" page-break-inside="avoid">SelectFinalStep limit(int offset, int numberOfRows);
    +
    +// The example, continued:
    +create.select(T_AUTHOR.FIRST_NAME, T_AUTHOR.LAST_NAME, count())
    +      .from(T_AUTHOR)
    +      .join(T_BOOK).on(T_BOOK.AUTHOR_ID.equal(T_AUTHOR.ID))
    +      .where(T_BOOK.LANGUAGE.equal("DE"))
    +      .and(T_BOOK.PUBLISHED.greaterThan(parseDate('2008-01-01')))
    +      .groupBy(T_AUTHOR.FIRST_NAME, T_AUTHOR.LAST_NAME)
    +      .having(count().greaterThan(5))
    +      .orderBy(T_AUTHOR.LAST_NAME.asc().nullsFirst())
    +      .limit(1, 2);</fo:block>
    +
    +							<fo:block font-size="11pt">In the final step, there are some proprietary extensions available
    +								only in some RDBMS. One of those extensions are the FOR UPDATE
    +								(supported in most RDBMS) and FOR SHARE clauses (supported only in
    +								MySQL and Postgres): </fo:block>
    +<fo:block font-family="Courier" linefeed-treatment="preserve" white-space-collapse="false" white-space-treatment="preserve" font-size="6pt" margin="12pt" padding="4pt" border="2px solid #882222" background-color="#FFEEDD" page-break-inside="avoid">SelectFinalStep forUpdate();
    +
    +// The example, continued:
    +create.select(T_AUTHOR.FIRST_NAME, T_AUTHOR.LAST_NAME, count())
    +      .from(T_AUTHOR)
    +      .join(T_BOOK).on(T_BOOK.AUTHOR_ID.equal(T_AUTHOR.ID))
    +      .where(T_BOOK.LANGUAGE.equal("DE"))
    +      .and(T_BOOK.PUBLISHED.greaterThan(parseDate('2008-01-01')))
    +      .groupBy(T_AUTHOR.FIRST_NAME, T_AUTHOR.LAST_NAME)
    +      .having(count().greaterThan(5))
    +      .orderBy(T_AUTHOR.LAST_NAME.asc().nullsFirst())
    +      .limit(1, 2)
    +      .forUpdate();</fo:block>
    +
    +							<fo:block font-size="11pt">
    +								Now the most relevant super-type of the object we have just created is
    +								<fo:basic-link font-size="11pt" color="#882222" font-weight="bold" text-shadow="0 1px 2px #666666" external-destination="url('http://www.jooq.org/javadoc/latest/org/jooq/Select.html')">org.jooq.Select</fo:basic-link>.
    +								This type can be reused in various expressions such as in the
    +								<fo:basic-link font-size="11pt" color="#882222" font-weight="bold" text-shadow="0 1px 2px #666666" internal-destination="UNION">UNION and other set operations</fo:basic-link>,
    +								<fo:basic-link font-size="11pt" color="#882222" font-weight="bold" text-shadow="0 1px 2px #666666" internal-destination="EXISTS">Nested select statements using the EXISTS operator</fo:basic-link>,
    +								etc. If you just want to execute this select
    +								statement, you can choose any of these methods as discussed in the
    +								section about the <fo:basic-link font-size="11pt" color="#882222" font-weight="bold" text-shadow="0 1px 2px #666666" internal-destination="ResultQuery">ResultQuery</fo:basic-link>:
    +							</fo:block>
    +
    +<fo:block font-family="Courier" linefeed-treatment="preserve" white-space-collapse="false" white-space-treatment="preserve" font-size="6pt" margin="12pt" padding="4pt" border="2px solid #882222" background-color="#FFEEDD" page-break-inside="avoid">// Just execute the query.
    +int execute();
    +
    +// Execute the query and retrieve the results
    +Result&lt;Record&gt; fetch();
    +
    +// Execute the query and retrieve the first Record
    +Record fetchAny();
    +
    +// Execute the query and retrieve the single Record
    +// An Exception is thrown if more records were available
    +Record fetchOne();
    +
    +// [...]</fo:block>
    +
    +
    +							<fo:block font-family="Georgia" font-size="16pt" padding-top="10pt" padding-bottom="10pt" page-break-after="avoid">SELECT from single physical tables</fo:block>
    +							<fo:block font-size="11pt">A very similar, but limited API is available, if you want to select from single
    +								physical tables in order to retrieve TableRecords or even
    +								UpdatableRecords (see also the manual's section on
    +								<fo:basic-link font-size="11pt" color="#882222" font-weight="bold" text-shadow="0 1px 2px #666666" internal-destination="Query">SelectQuery vs SimpleSelectQuery</fo:basic-link>).
    +								The decision, which type of select to create is
    +								already made at the very first step, when you create the SELECT
    +								statement with the Factory: </fo:block>
    +
    +							<fo:block font-family="Courier" linefeed-treatment="preserve" white-space-collapse="false" white-space-treatment="preserve" font-size="6pt" margin="12pt" padding="4pt" border="2px solid #882222" background-color="#FFEEDD" page-break-inside="avoid">public &lt;R extends Record&gt; SimpleSelectWhereStep&lt;R&gt; selectFrom(Table&lt;R&gt; table);</fo:block>
    +							<fo:block font-size="11pt">As you can see, there is no way to further restrict/project the selected
    +								fields. This just selects all known TableFields in the supplied Table,
    +								and it also binds &lt;R extends Record&gt; to your Table's associated
    +								Record. An example of such a Query would then be: </fo:block>
    +<fo:block font-family="Courier" linefeed-treatment="preserve" white-space-collapse="false" white-space-treatment="preserve" font-size="6pt" margin="12pt" padding="4pt" border="2px solid #882222" background-color="#FFEEDD" page-break-inside="avoid">TBook book = create.selectFrom(T_BOOK)
    +                   .where(TBook.LANGUAGE.equal("DE"))
    +                   .orderBy(TBook.TITLE)
    +                   .fetchAny();</fo:block>
    +						<fo:block font-family="Georgia" font-size="18pt" padding-top="12pt" padding-bottom="12pt" page-break-after="avoid" id="TABLESOURCE">
    +<fo:marker marker-class-name="section">
    +<fo:block>3.2. Table sources</fo:block>
    +</fo:marker>3.2. Table sources</fo:block>
    +<fo:block font-size="11pt">
    +							When OLTP selects/updates/inserts/deletes records in single tables, OLAP is all about
    +							creating custom table sources or ad-hoc row types
    +						</fo:block>
    +							<fo:block font-family="Georgia" font-size="16pt" padding-top="10pt" padding-bottom="10pt" page-break-after="avoid">Create complex and nested table sources with jOOQ</fo:block>
    +							<fo:block font-size="11pt">
    +								In the <fo:basic-link font-size="11pt" color="#882222" font-weight="bold" text-shadow="0 1px 2px #666666" external-destination="url('http://en.wikipedia.org/wiki/Relational_model')">relational data model</fo:basic-link>,
    +								there are many operations performed on entities, i.e. tables in order to join them together
    +								before applying predicates, renaming operations and projections. Apart from the convenience
    +								methods for joining table sources in the
    +								<fo:basic-link font-size="11pt" color="#882222" font-weight="bold" text-shadow="0 1px 2px #666666" internal-destination="SELECT">manual's section about the full SELECT syntax</fo:basic-link>,
    +								the <fo:basic-link font-size="11pt" color="#882222" font-weight="bold" text-shadow="0 1px 2px #666666" external-destination="url('http://www.jooq.org/javadoc/latest/org/jooq/Table.html')">Table</fo:basic-link> type itself provides a
    +								rich API for creating joined table sources. See an extract of the Table API:
    +							</fo:block>
    +<fo:block font-family="Courier" linefeed-treatment="preserve" white-space-collapse="false" white-space-treatment="preserve" font-size="6pt" margin="12pt" padding="4pt" border="2px solid #882222" background-color="#FFEEDD" page-break-inside="avoid"><![CDATA[// These are the various supported JOIN clauses. These JOIN types
    +// are followed by an additional ON / ON KEY / USING clause
    +TableOnStep join(TableLike<?> table);
    +TableOnStep join(String sql);
    +TableOnStep join(String sql, Object... bindings);
    +
    +// All other JOIN types are equally overloaded with "String sql" convenience methods...
    +TableOnStep  leftOuterJoin(TableLike<?> table);
    +TableOnStep rightOuterJoin(TableLike<?> table);
    +TableOnStep  fullOuterJoin(TableLike<?> table);
    +
    +// These JOIN types don't take any additional clause
    +Table<Record>             crossJoin(TableLike<?> table);
    +Table<Record>           naturalJoin(TableLike<?> table);
    +Table<Record>  naturalLeftOuterJoin(TableLike<?> table);
    +Table<Record> naturalRightOuterJoin(TableLike<?> table);
    +
    +// Oracle and SQL Server also know PIVOT / UNPIVOT clauses for transforming a
    +// table into another one using a list of PIVOT values
    +PivotForStep pivot(Field<?>... aggregateFunctions);
    +PivotForStep pivot(Collection<? extends Field<?>> aggregateFunctions);
    +
    +// Relational division can be applied to a table, transforming it into a
    +// "quotient" using an intuitive syntax
    +DivideByOnStep divideBy(Table<?> divisor);]]></fo:block>
    +
    +							<fo:block font-size="11pt">
    +								The <fo:basic-link font-size="11pt" color="#882222" font-weight="bold" text-shadow="0 1px 2px #666666" external-destination="url('http://www.jooq.org/javadoc/latest/org/jooq/TableOnStep.html')">TableOnStep</fo:basic-link> type
    +								contains methods for constructing the ON / ON KEY / USING clauses
    +							</fo:block>
    +
    +<fo:block font-family="Courier" linefeed-treatment="preserve" white-space-collapse="false" white-space-treatment="preserve" font-size="6pt" margin="12pt" padding="4pt" border="2px solid #882222" background-color="#FFEEDD" page-break-inside="avoid"><![CDATA[// The ON clause is the most widely used JOIN condition. Provide arbitrary conditions as arguments
    +TableOnConditionStep on(Condition... conditions);
    +TableOnConditionStep on(String sql);
    +TableOnConditionStep on(String sql, Object... bindings);
    +
    +// The USING clause is also part of the SQL standard. Use this if joined tables contain identical field names.
    +// The USING clause is simulated in databases that do not support it.
    +Table<Record> using(Field<?>... fields);
    +Table<Record> using(Collection<? extends Field<?>> fields);
    +
    +// The ON KEY clause is a "synthetic" clause that does not exist in any SQL dialect. jOOQ usually has all
    +// foreign key relationship information to dynamically render "ON [ condition ... ]" clauses
    +TableOnConditionStep onKey() throws DataAccessException;
    +TableOnConditionStep onKey(TableField<?, ?>... keyFields) throws DataAccessException;
    +TableOnConditionStep onKey(ForeignKey<?, ?> key);]]></fo:block>
    +
    +							<fo:block padding-top="16pt" padding-bottom="16pt" page-break-inside="avoid">
    +<fo:list-block>
    +							<fo:list-item>
    +<fo:list-item-label>
    +<fo:block font-size="11pt" page-break-inside="avoid">-</fo:block>
    +</fo:list-item-label>
    +<fo:list-item-body start-indent="body-start()">
    +<fo:block font-size="11pt" page-break-inside="avoid">
    +								For more details about the PIVOT clause, see the
    +								<fo:basic-link font-size="11pt" color="#882222" font-weight="bold" text-shadow="0 1px 2px #666666" internal-destination="PIVOT">manual's section about the Oracle PIVOT syntax</fo:basic-link>
    +							</fo:block>
    +</fo:list-item-body>
    +</fo:list-item>
    +							<fo:list-item>
    +<fo:list-item-label>
    +<fo:block font-size="11pt" page-break-inside="avoid">-</fo:block>
    +</fo:list-item-label>
    +<fo:list-item-body start-indent="body-start()">
    +<fo:block font-size="11pt" page-break-inside="avoid">
    +								For more details about the DIVIDE BY clause, see the
    +								<fo:basic-link font-size="11pt" color="#882222" font-weight="bold" text-shadow="0 1px 2px #666666" internal-destination="DIVISION">manual's section about the relational division syntax</fo:basic-link>
    +							</fo:block>
    +</fo:list-item-body>
    +</fo:list-item>
    +							</fo:list-block>
    +</fo:block>
    +						<fo:block font-family="Georgia" font-size="18pt" padding-top="12pt" padding-bottom="12pt" page-break-after="avoid" id="CONDITION">
    +<fo:marker marker-class-name="section">
    +<fo:block>3.3. Conditions</fo:block>
    +</fo:marker>3.3. Conditions</fo:block>
    +<fo:block font-size="11pt">
    +							The creation of conditions is the part of any database abstraction that
    +							attracts the most attention.
    +						</fo:block>
    +							<fo:block font-family="Georgia" font-size="16pt" padding-top="10pt" padding-bottom="10pt" page-break-after="avoid">Conditions are the SELECT's core business</fo:block>
    +							<fo:block font-size="11pt">In your average application, you will typically have 3-4 SQL queries
    +								that have quite a long list of predicates (and possibly JOINs), such
    +								that you start to lose track over the overall boolean expression that
    +								you're trying to apply.</fo:block>
    +							<fo:block font-size="11pt">In jOOQ, most Conditions can be created and combined almost as
    +								easily as in SQL itself. The two main participants for creating
    +								Conditions are the <fo:basic-link font-size="11pt" color="#882222" font-weight="bold" text-shadow="0 1px 2px #666666" external-destination="url('http://www.jooq.org/javadoc/latest/org/jooq/Field.html')">Field</fo:basic-link>,
    +								which is typically a participant of a
    +								condition, and the <fo:basic-link font-size="11pt" color="#882222" font-weight="bold" text-shadow="0 1px 2px #666666" external-destination="url('http://www.jooq.org/javadoc/latest/org/jooq/Condition.html')">Condition</fo:basic-link>
    +								itself: </fo:block>
    +<fo:block font-family="Courier" linefeed-treatment="preserve" white-space-collapse="false" white-space-treatment="preserve" font-size="6pt" margin="12pt" padding="4pt" border="2px solid #882222" background-color="#FFEEDD" page-break-inside="avoid">public interface Condition {
    +    Condition and(Condition other);
    +    Condition and(String sql);
    +    Condition and(String sql, Object... bindings);
    +    Condition andNot(Condition other);
    +    Condition andExists(Select&lt;?&gt; select);
    +    Condition andNotExists(Select&lt;?&gt; select);
    +    Condition or(Condition other);
    +    Condition or(String sql);
    +    Condition or(String sql, Object... bindings);
    +    Condition orNot(Condition other);
    +    Condition orExists(Select&lt;?&gt; select);
    +    Condition orNotExists(Select&lt;?&gt; select);
    +    Condition not();
    +}</fo:block>
    +
    +							<fo:block font-size="11pt">The above example describes the essence of boolean logic in jOOQ. As
    +								soon as you have a Condition object, you can connect that to other
    +								Conditions, which will then give you a combined condition with exactly
    +								the same properties. There are also convenience methods to create an
    +								EXISTS clause and connect it to an existing condition. In order to
    +								create a new Condition you are going to depart from a Field in most
    +								cases. Here are some important API elements in the Field interface:
    +							</fo:block>
    +
    +<fo:block font-family="Courier" linefeed-treatment="preserve" white-space-collapse="false" white-space-treatment="preserve" font-size="6pt" margin="12pt" padding="4pt" border="2px solid #882222" background-color="#FFEEDD" page-break-inside="avoid"><![CDATA[public interface Field<T> {
    +    Condition isNull();
    +    Condition isNotNull();
    +    Condition like(T value);
    +    Condition notLike(T value);
    +    Condition in(T... values);
    +    Condition in(Select<?> query);
    +    Condition notIn(Collection<T> values);
    +    Condition notIn(T... values);
    +    Condition notIn(Select<?> query);
    +    Condition in(Collection<T> values);
    +    Condition between(T minValue, T maxValue);
    +    Condition contains(T value);
    +    Condition contains(Field<T> value);
    +    Condition equal(T value);
    +    Condition equal(Field<T> field);
    +    Condition equal(Select<?> query);
    +    Condition equalAny(Select<?> query);
    +    Condition equalAny(T... array);
    +    Condition equalAny(Field<T[]> array);
    +    Condition equalAll(Select<?> query);
    +    Condition equalAll(T... array);
    +    Condition equalAll(Field<T[]> array);
    +    Condition equalIgnoreCase(String value);
    +    Condition equalIgnoreCase(Field<String> value);
    +    Condition notEqual(T value);
    +    Condition notEqual(Field<T> field);
    +    Condition notEqual(Select<?> query);
    +    Condition notEqualAny(Select<?> query);
    +    Condition notEqualAny(T... array);
    +    Condition notEqualAny(Field<T[]> array);
    +    Condition notEqualAll(Select<?> query);
    +    Condition notEqualAll(T... array);
    +    Condition notEqualAll(Field<T[]> array);
    +
    +    // Subselects, ANY and ALL quantifiers are also supported for these:
    +    Condition lessThan(T value);
    +    Condition lessOrEqual(T value);
    +    Condition greaterThan(T value);
    +    Condition greaterOrEqual(T value);
    +}]]></fo:block>
    +
    +							<fo:block font-size="11pt">As you see in the partially displayed API above, you can compare a
    +								Field either with other Fields, with constant values (which is a
    +								shortcut for calling Factory.val(T value)), or with a nested SELECT
    +								statement. See some more
    +								<fo:basic-link font-size="11pt" color="#882222" font-weight="bold" text-shadow="0 1px 2px #666666" internal-destination="NESTED">Examples of nested SELECTs</fo:basic-link>. </fo:block>
    +							<fo:block font-size="11pt">Combining the API of Field and Condition you can express complex predicates like this: </fo:block>
    +
    +<fo:block font-family="Courier" linefeed-treatment="preserve" white-space-collapse="false" white-space-treatment="preserve" font-size="6pt" margin="12pt" padding="4pt" border="2px solid #882222" background-color="#FFEEDD" page-break-inside="avoid">(T_BOOK.TYPE_CODE IN (1, 2, 5, 8, 13, 21)       AND T_BOOK.LANGUAGE = 'DE') OR
    +(T_BOOK.TYPE_CODE IN (2, 3, 5, 7, 11, 13)       AND T_BOOK.LANGUAGE = 'FR') OR
    +(T_BOOK.TYPE_CODE IN (SELECT CODE FROM T_TYPES) AND T_BOOK.LANGUAGE = 'EN')</fo:block>
    +
    +							<fo:block font-size="11pt">Just write: </fo:block>
    +<fo:block font-family="Courier" linefeed-treatment="preserve" white-space-collapse="false" white-space-treatment="preserve" font-size="6pt" margin="12pt" padding="4pt" border="2px solid #882222" background-color="#FFEEDD" page-break-inside="avoid">T_BOOK.TYPE_CODE.in(1, 2, 5, 8, 13, 21)                       .and(T_BOOK.LANGUAGE.equal("DE")).or(
    +T_BOOK.TYPE_CODE.in(2, 3, 5, 7, 11, 13)                       .and(T_BOOK.LANGUAGE.equal("FR")).or(
    +T_BOOK.TYPE_CODE.in(create.select(T_TYPES.CODE).from(T_TYPES)).and(T_BOOK.LANGUAGE.equal("EN"))));</fo:block>
    +						<fo:block font-family="Georgia" font-size="18pt" padding-top="12pt" padding-bottom="12pt" page-break-after="avoid" id="ALIAS">
    +<fo:marker marker-class-name="section">
    +<fo:block>3.4. Aliased tables and fields</fo:block>
    +</fo:marker>3.4. Aliased tables and fields</fo:block>
    +<fo:block font-size="11pt">
    +							Aliasing is at the core of SQL and relational algebra. When you join
    +							the same entity multiple times, you can rename it to distinguish the
    +							various meanings of the same entity
    +						</fo:block>
    +							<fo:block font-family="Georgia" font-size="16pt" padding-top="10pt" padding-bottom="10pt" page-break-after="avoid">Aliasing Tables</fo:block>
    +							<fo:block font-size="11pt">A typical example of what you might want to do in SQL is this: </fo:block>
    +<fo:block font-family="Courier" linefeed-treatment="preserve" white-space-collapse="false" white-space-treatment="preserve" font-size="6pt" margin="12pt" padding="4pt" border="2px solid #882222" background-color="#FFEEDD" page-break-inside="avoid">SELECT a.ID, b.ID
    +  FROM T_AUTHOR a
    +  JOIN T_BOOK b on a.ID = b.AUTHOR_ID</fo:block>
    +
    +  							<fo:block font-size="11pt">
    +  								In this example, we are aliasing Tables, calling them a and b.
    +  								The way aliasing works depends on how you generate your meta model
    +  								using jooq-codegen (see the manual's section about
    +  								<fo:basic-link font-size="11pt" color="#882222" font-weight="bold" text-shadow="0 1px 2px #666666" internal-destination="TABLE">generating tables</fo:basic-link>). Things become
    +  								simpler when you choose the instance/dynamic model, instead of the
    +  								static one.
    +  								Here is how you can create Table aliases in jOOQ:
    +  							</fo:block>
    +
    +<fo:block font-family="Courier" linefeed-treatment="preserve" white-space-collapse="false" white-space-treatment="preserve" font-size="6pt" margin="12pt" padding="4pt" border="2px solid #882222" background-color="#FFEEDD" page-break-inside="avoid">Table&lt;TBookRecord&gt; book = T_BOOK.as("b");
    +Table&lt;TAuthorRecord&gt; author = T_AUTHOR.as("a");
    +
    +// If you choose not to generate a static meta model, this becomes even better
    +TBook book = T_BOOK.as("b");
    +TAuthor author = T_AUTHOR.as("a");</fo:block>
    +
    +							<fo:block font-size="11pt">Now, if you want to reference any fields from those Tables, you may
    +								not use the original T_BOOK or T_AUTHOR meta-model objects anymore.
    +								Instead, you have to get the fields from the new book and author Table
    +								aliases: </fo:block>
    +
    +<fo:block font-family="Courier" linefeed-treatment="preserve" white-space-collapse="false" white-space-treatment="preserve" font-size="6pt" margin="12pt" padding="4pt" border="2px solid #882222" background-color="#FFEEDD" page-break-inside="avoid"><![CDATA[Field<Integer> bookID = book.getField(TBook.ID);
    +Field<Integer> authorID = author.getField(TAuthor.ID);
    +
    +// Or with the instance field model:
    +Field<Integer> bookID = book.ID;
    +Field<Integer> authorID = author.ID;]]></fo:block>
    +
    +							<fo:block font-size="11pt">
    +								So this is how the above SQL statement would read in jOOQ:
    +							</fo:block>
    +<fo:block font-family="Courier" linefeed-treatment="preserve" white-space-collapse="false" white-space-treatment="preserve" font-size="6pt" margin="12pt" padding="4pt" border="2px solid #882222" background-color="#FFEEDD" page-break-inside="avoid">create.select(authorID, bookID)
    +      .from(author)
    +      .join(book).on(authorID.equal(book.getField(T_BOOK.AUTHOR_ID)));
    +
    +// Or with the instance field model:
    +create.select(author.ID, book.ID)
    +      .from(author)
    +      .join(book).on(author.ID.equal(book.AUTHOR_ID))</fo:block>
    +
    +
    +      						<fo:block font-family="Georgia" font-size="16pt" padding-top="10pt" padding-bottom="10pt" page-break-after="avoid">Aliasing nested selects as tables</fo:block>
    +							<fo:block font-size="11pt">There is an interesting, more advanced example of how you can select
    +								from an aliased nested select in the manual's section about
    +								<fo:basic-link font-size="11pt" color="#882222" font-weight="bold" text-shadow="0 1px 2px #666666" internal-destination="NESTED">nested selects</fo:basic-link>
    +</fo:block>
    +
    +
    +							<fo:block font-family="Georgia" font-size="16pt" padding-top="10pt" padding-bottom="10pt" page-break-after="avoid">Aliasing fields</fo:block>
    +							<fo:block font-size="11pt">Fields can also be aliased independently from Tables. Most often,
    +								this is done when using functions or aggregate operators. Here is an
    +								example: </fo:block>
    +<fo:block font-family="Courier" linefeed-treatment="preserve" white-space-collapse="false" white-space-treatment="preserve" font-size="6pt" margin="12pt" padding="4pt" border="2px solid #882222" background-color="#FFEEDD" page-break-inside="avoid">  SELECT FIRST_NAME || ' ' || LAST_NAME author, COUNT(*) books
    +    FROM T_AUTHOR
    +    JOIN T_BOOK ON T_AUTHOR.ID = AUTHOR_ID
    +GROUP BY FIRST_NAME, LAST_NAME;</fo:block>
    +							<fo:block font-size="11pt">Here is how it's done with jOOQ: </fo:block>
    +<fo:block font-family="Courier" linefeed-treatment="preserve" white-space-collapse="false" white-space-treatment="preserve" font-size="6pt" margin="12pt" padding="4pt" border="2px solid #882222" background-color="#FFEEDD" page-break-inside="avoid">Record record = create.select(
    +         concat(T_AUTHOR.FIRST_NAME, " ", T_AUTHOR.LAST_NAME).as("author"),
    +         count().as("books"))
    +      .from(T_AUTHOR)
    +      .join(T_BOOK).on(T_AUTHOR.ID.equal(T_BOOK.AUTHOR_ID))
    +      .groupBy(T_AUTHOR.FIRST_NAME, T_AUTHOR.LAST_NAME).fetchAny();</fo:block>
    +      						<fo:block font-size="11pt">When you alias Fields like above, you can access those Fields' values using the alias name: </fo:block>
    +<fo:block font-family="Courier" linefeed-treatment="preserve" white-space-collapse="false" white-space-treatment="preserve" font-size="6pt" margin="12pt" padding="4pt" border="2px solid #882222" background-color="#FFEEDD" page-break-inside="avoid">System.out.println("Author : " + record.getValue("author"));
    +System.out.println("Books  : " + record.getValue("books"));</fo:block>
    +						<fo:block font-family="Georgia" font-size="18pt" padding-top="12pt" padding-bottom="12pt" page-break-after="avoid" id="IN">
    +<fo:marker marker-class-name="section">
    +<fo:block>3.5. Nested SELECT using the IN operator</fo:block>
    +</fo:marker>3.5. Nested SELECT using the IN operator</fo:block>
    +<fo:block font-size="11pt">
    +							Set equal operations are very common when you want to select multiple
    +							records. The IN operator can also be used for semi-joins, though
    +						</fo:block>
    +							<fo:block font-family="Georgia" font-size="16pt" padding-top="10pt" padding-bottom="10pt" page-break-after="avoid">The IN operator for use in semi-joins or anti-joins</fo:block>
    +							<fo:block font-size="11pt">
    +								In addition to a list of constant values, the IN operator in
    +								<fo:basic-link font-size="11pt" color="#882222" font-weight="bold" text-shadow="0 1px 2px #666666" external-destination="url('http://www.jooq.org/javadoc/latest/org/jooq/Field.html')">org.jooq.Field</fo:basic-link>
    +								also supports a
    +								<fo:basic-link font-size="11pt" color="#882222" font-weight="bold" text-shadow="0 1px 2px #666666" external-destination="url('http://www.jooq.org/javadoc/latest/org/jooq/Select.html')">org.jooq.Select</fo:basic-link> as an argument.
    +								This can be any type of select as
    +								discussed in the manual's section about
    +								<fo:basic-link font-size="11pt" color="#882222" font-weight="bold" text-shadow="0 1px 2px #666666" internal-destination="Query">Query types</fo:basic-link>.
    +								However, you must
    +								ensure yourself, that the provided Select will only select a single
    +								Field.
    +							</fo:block>
    +							<fo:block font-size="11pt">Let's say you want to select books by authors born in 1920. Of
    +								course, this is possible with a plain JOIN as well, but let's say we
    +								want to use the IN operator. Then you have two possibilities: </fo:block>
    +
    +							<fo:table width="100%" table-layout="fixed">
    +<fo:table-column column-width="88mm"/>
    +<fo:table-column column-width="88mm"/>
    +<fo:table-body>
    +<fo:table-row>
    +<fo:table-cell>
    +<fo:block>
    +<fo:block font-family="Courier" linefeed-treatment="preserve" white-space-collapse="false" white-space-treatment="preserve" font-size="6pt" margin="12pt" padding="4pt" border="2px solid #882222" background-color="#FFEEDD" page-break-inside="avoid">SELECT *
    +  FROM T_BOOK
    + WHERE T_BOOK.AUTHOR_ID IN (
    +           SELECT ID FROM T_AUTHOR
    +            WHERE T_AUTHOR.BORN = 1920)
    +
    +-- OR:
    +
    +SELECT T_BOOK.*
    +  FROM T_BOOK
    +  JOIN T_AUTHOR ON (T_BOOK.AUTHOR_ID = T_AUTHOR.ID
    +                AND T_AUTHOR.BORN    = 1920)</fo:block>
    +</fo:block>
    +</fo:table-cell>
    +<fo:table-cell>
    +<fo:block>
    +<fo:block font-family="Courier" linefeed-treatment="preserve" white-space-collapse="false" white-space-treatment="preserve" font-size="6pt" margin="12pt" padding="4pt" border="2px solid #882222" background-color="#FFEEDD" page-break-inside="avoid">create.select()
    +      .from(T_BOOK)
    +      .where(T_BOOK.AUTHOR_ID.in(
    +          create.select(T_AUTHOR.ID).from(T_AUTHOR)
    +                .where(T_AUTHOR.BORN.equal(1920))));
    +
    +// OR:
    +
    +create.select(T_BOOK.getFields())
    +      .from(T_BOOK)
    +      .join(T_AUTHOR).on(T_BOOK.AUTHOR_ID.equal(TAuthor.ID)
    +                     .and(T_AUTHOR.BORN.equal(1920)));</fo:block>
    +</fo:block>
    +</fo:table-cell>
    +</fo:table-row>
    +</fo:table-body>
    +</fo:table>
    +						<fo:block font-family="Georgia" font-size="18pt" padding-top="12pt" padding-bottom="12pt" page-break-after="avoid" id="EXISTS">
    +<fo:marker marker-class-name="section">
    +<fo:block>3.6. Nested SELECT using the EXISTS operator</fo:block>
    +</fo:marker>3.6. Nested SELECT using the EXISTS operator</fo:block>
    +<fo:block font-size="11pt">The EXISTS operator is a bit different from all other SQL
    +							elements, as it cannot really be applied to any object in a DSL.
    +						</fo:block>
    +							<fo:block font-family="Georgia" font-size="16pt" padding-top="10pt" padding-bottom="10pt" page-break-after="avoid">The EXISTS operator for use in semi-joins or anti-joins</fo:block>
    +							<fo:block font-size="11pt">The EXISTS operator is rather independent and can stand any place
    +								where there may be a new condition: </fo:block>
    +							<fo:block padding-top="16pt" padding-bottom="16pt" page-break-inside="avoid">
    +<fo:list-block>
    +								<fo:list-item>
    +<fo:list-item-label>
    +<fo:block font-size="11pt" page-break-inside="avoid">-</fo:block>
    +</fo:list-item-label>
    +<fo:list-item-body start-indent="body-start()">
    +<fo:block font-size="11pt" page-break-inside="avoid">It may be placed right after a WHERE keyword </fo:block>
    +</fo:list-item-body>
    +</fo:list-item>
    +								<fo:list-item>
    +<fo:list-item-label>
    +<fo:block font-size="11pt" page-break-inside="avoid">-</fo:block>
    +</fo:list-item-label>
    +<fo:list-item-body start-indent="body-start()">
    +<fo:block font-size="11pt" page-break-inside="avoid">It may be the right-hand-side of a boolean operator</fo:block>
    +</fo:list-item-body>
    +</fo:list-item>
    +								<fo:list-item>
    +<fo:list-item-label>
    +<fo:block font-size="11pt" page-break-inside="avoid">-</fo:block>
    +</fo:list-item-label>
    +<fo:list-item-body start-indent="body-start()">
    +<fo:block font-size="11pt" page-break-inside="avoid">It may be placed right after a ON or HAVING keyword (although, this is less likely to be done...) </fo:block>
    +</fo:list-item-body>
    +</fo:list-item>
    +							</fo:list-block>
    +</fo:block>
    +
    +							<fo:block font-size="11pt">This is reflected by the fact that an EXISTS clause is usually
    +								created directly from the Factory: </fo:block>
    +
    +<fo:block font-family="Courier" linefeed-treatment="preserve" white-space-collapse="false" white-space-treatment="preserve" font-size="6pt" margin="12pt" padding="4pt" border="2px solid #882222" background-color="#FFEEDD" page-break-inside="avoid">Condition exists(Select&lt;?&gt; query);
    +Condition notExists(Select&lt;?&gt; query);</fo:block>
    +
    +							<fo:block font-size="11pt">When you create such a Condition, it can then be connected to any
    +								other condition using AND, OR operators (see also the manual's section
    +								on
    +								<fo:basic-link font-size="11pt" color="#882222" font-weight="bold" text-shadow="0 1px 2px #666666" internal-destination="CONDITION">Conditions</fo:basic-link>). There are also quite a few
    +								convenience methods, where they might be useful. For instance in the
    +								<fo:basic-link font-size="11pt" color="#882222" font-weight="bold" text-shadow="0 1px 2px #666666" external-destination="url('http://www.jooq.org/javadoc/latest/org/jooq/Condition.html')">org.jooq.Condition</fo:basic-link> itself: </fo:block>
    +
    +<fo:block font-family="Courier" linefeed-treatment="preserve" white-space-collapse="false" white-space-treatment="preserve" font-size="6pt" margin="12pt" padding="4pt" border="2px solid #882222" background-color="#FFEEDD" page-break-inside="avoid">Condition andExists(Select&lt;?&gt; select);
    +Condition andNotExists(Select&lt;?&gt; select);
    +Condition orExists(Select&lt;?&gt; select);
    +Condition orNotExists(Select&lt;?&gt; select);</fo:block>
    +
    +							<fo:block font-size="11pt">Or in the <fo:basic-link font-size="11pt" color="#882222" font-weight="bold" text-shadow="0 1px 2px #666666" external-destination="url('http://www.jooq.org/javadoc/latest/org/jooq/SelectWhereStep.html')">org.jooq.SelectWhereStep</fo:basic-link>:</fo:block>
    +
    +<fo:block font-family="Courier" linefeed-treatment="preserve" white-space-collapse="false" white-space-treatment="preserve" font-size="6pt" margin="12pt" padding="4pt" border="2px solid #882222" background-color="#FFEEDD" page-break-inside="avoid">SelectConditionStep whereExists(Select&lt;?&gt; select);
    +SelectConditionStep whereNotExists(Select&lt;?&gt; select);</fo:block>
    +
    +							<fo:block font-size="11pt">Or in the <fo:basic-link font-size="11pt" color="#882222" font-weight="bold" text-shadow="0 1px 2px #666666" external-destination="url('http://www.jooq.org/javadoc/latest/org/jooq/SelectConditionStep.html')">org.jooq.SelectConditionStep</fo:basic-link>: </fo:block>
    +
    +<fo:block font-family="Courier" linefeed-treatment="preserve" white-space-collapse="false" white-space-treatment="preserve" font-size="6pt" margin="12pt" padding="4pt" border="2px solid #882222" background-color="#FFEEDD" page-break-inside="avoid">SelectConditionStep andExists(Select&lt;?&gt; select);
    +SelectConditionStep andNotExists(Select&lt;?&gt; select);
    +SelectConditionStep orExists(Select&lt;?&gt; select);
    +SelectConditionStep orNotExists(Select&lt;?&gt; select);</fo:block>
    +
    +							<fo:block font-size="11pt">An example of how to use it is quickly given. Get all authors that haven't written any books: </fo:block>
    +							<fo:table width="100%" table-layout="fixed">
    +<fo:table-column column-width="88mm"/>
    +<fo:table-column column-width="88mm"/>
    +<fo:table-body>
    +<fo:table-row>
    +<fo:table-cell>
    +<fo:block>
    +<fo:block font-family="Courier" linefeed-treatment="preserve" white-space-collapse="false" white-space-treatment="preserve" font-size="6pt" margin="12pt" padding="4pt" border="2px solid #882222" background-color="#FFEEDD" page-break-inside="avoid">SELECT *
    +  FROM T_AUTHOR
    + WHERE NOT EXISTS (SELECT 1
    +                     FROM T_BOOK
    +                    WHERE T_BOOK.AUTHOR_ID = T_AUTHOR.ID)</fo:block>
    +</fo:block>
    +</fo:table-cell>
    +<fo:table-cell>
    +<fo:block>
    +<fo:block font-family="Courier" linefeed-treatment="preserve" white-space-collapse="false" white-space-treatment="preserve" font-size="6pt" margin="12pt" padding="4pt" border="2px solid #882222" background-color="#FFEEDD" page-break-inside="avoid">create.select()
    +      .from(T_AUTHOR)
    +      .whereNotExists(create.selectOne()
    +            .from(T_BOOK)
    +            .where(T_BOOK.AUTHOR_ID.equal(T_AUTHOR.ID)));</fo:block>
    +</fo:block>
    +</fo:table-cell>
    +</fo:table-row>
    +</fo:table-body>
    +</fo:table>
    +						<fo:block font-family="Georgia" font-size="18pt" padding-top="12pt" padding-bottom="12pt" page-break-after="avoid" id="NESTED">
    +<fo:marker marker-class-name="section">
    +<fo:block>3.7. Other types of nested SELECT</fo:block>
    +</fo:marker>3.7. Other types of nested SELECT</fo:block>
    +<fo:block font-size="11pt">Apart from the most common IN and EXISTS clauses that encourage
    +							the use of nested selects, SQL knows a few more syntaxes to make use
    +							of such constructs. </fo:block>
    +							<fo:block font-family="Georgia" font-size="16pt" padding-top="10pt" padding-bottom="10pt" page-break-after="avoid">Comparison with single-field SELECT clause</fo:block>
    +							<fo:block font-size="11pt">If you can ensure that a nested SELECT will only return one Record
    +								with one Field, then you can test for equality. This is how it is done
    +								in SQL: </fo:block>
    +
    +							<fo:table width="100%" table-layout="fixed">
    +<fo:table-column column-width="88mm"/>
    +<fo:table-column column-width="88mm"/>
    +<fo:table-body>
    +<fo:table-row>
    +<fo:table-cell>
    +<fo:block>
    +<fo:block font-family="Courier" linefeed-treatment="preserve" white-space-collapse="false" white-space-treatment="preserve" font-size="6pt" margin="12pt" padding="4pt" border="2px solid #882222" background-color="#FFEEDD" page-break-inside="avoid">SELECT *
    +  FROM T_BOOK
    + WHERE T_BOOK.AUTHOR_ID = (
    + 		SELECT ID
    +          FROM T_AUTHOR
    +         WHERE LAST_NAME = 'Orwell')</fo:block>
    +</fo:block>
    +</fo:table-cell>
    +<fo:table-cell>
    +<fo:block>
    +<fo:block font-family="Courier" linefeed-treatment="preserve" white-space-collapse="false" white-space-treatment="preserve" font-size="6pt" margin="12pt" padding="4pt" border="2px solid #882222" background-color="#FFEEDD" page-break-inside="avoid">create.select()
    +      .from(T_BOOK)
    +      .where(T_BOOK.AUTHOR_ID.equal(create
    +             .select(T_AUTHOR.ID)
    +             .from(T_AUTHOR)
    +             .where(T_AUTHOR.LAST_NAME.equal("Orwell"))));</fo:block>
    +</fo:block>
    +</fo:table-cell>
    +</fo:table-row>
    +</fo:table-body>
    +</fo:table>
    +
    +                            <fo:block font-size="11pt">More examples like the above can be guessed from the
    +                            <fo:basic-link font-size="11pt" color="#882222" font-weight="bold" text-shadow="0 1px 2px #666666" external-destination="url('http://www.jooq.org/javadoc/latest/org/jooq/Field.html')">org.jooq.Field</fo:basic-link> API, as documented in the manual's section about
    +                            <fo:basic-link font-size="11pt" color="#882222" font-weight="bold" text-shadow="0 1px 2px #666666" internal-destination="CONDITION">Conditions</fo:basic-link>. For the = operator, the available comparisons are these:</fo:block>
    +
    +<fo:block font-family="Courier" linefeed-treatment="preserve" white-space-collapse="false" white-space-treatment="preserve" font-size="6pt" margin="12pt" padding="4pt" border="2px solid #882222" background-color="#FFEEDD" page-break-inside="avoid">Condition equal(Select&lt;?&gt; query);
    +Condition equalAny(Select&lt;?&gt; query);
    +Condition equalAll(Select&lt;?&gt; query);</fo:block>
    +
    +
    +                            <fo:block font-family="Georgia" font-size="16pt" padding-top="10pt" padding-bottom="10pt" page-break-after="avoid">Selecting from a SELECT - SELECT acts as a Table</fo:block>
    +							<fo:block font-size="11pt">Often, you need to nest a SELECT statement simply because SQL is
    +								limited in power. For instance, if you want to find out which author
    +								has written the most books, then you cannot do this: </fo:block>
    +
    +<fo:block font-family="Courier" linefeed-treatment="preserve" white-space-collapse="false" white-space-treatment="preserve" font-size="6pt" margin="12pt" padding="4pt" border="2px solid #882222" background-color="#FFEEDD" page-break-inside="avoid">  SELECT AUTHOR_ID, count(*) books
    +    FROM T_BOOK
    +GROUP BY AUTHOR_ID
    +ORDER BY books DESC</fo:block>
    +
    +							<fo:block font-size="11pt">Instead, you have to do this (or something similar). For jOOQ, this
    +								is an excellent example, combining various SQL features into a single
    +								statement. Here's how to do it: </fo:block>
    +
    +							<fo:table width="100%" table-layout="fixed">
    +<fo:table-column column-width="88mm"/>
    +<fo:table-column column-width="88mm"/>
    +<fo:table-body>
    +<fo:table-row>
    +<fo:table-cell>
    +<fo:block>
    +<fo:block font-family="Courier" linefeed-treatment="preserve" white-space-collapse="false" white-space-treatment="preserve" font-size="6pt" margin="12pt" padding="4pt" border="2px solid #882222" background-color="#FFEEDD" page-break-inside="avoid">SELECT nested.* FROM (
    +      SELECT AUTHOR_ID, count(*) books
    +        FROM T_BOOK
    +    GROUP BY AUTHOR_ID
    +) nested
    +ORDER BY nested.books DESC
    +
    +
    +</fo:block>
    +</fo:block>
    +</fo:table-cell>
    +<fo:table-cell>
    +<fo:block>
    +<fo:block font-family="Courier" linefeed-treatment="preserve" white-space-collapse="false" white-space-treatment="preserve" font-size="6pt" margin="12pt" padding="4pt" border="2px solid #882222" background-color="#FFEEDD" page-break-inside="avoid">Table&lt;Record&gt; nested =
    +    create.select(T_BOOK.AUTHOR_ID, count().as("books"))
    +          .from(T_BOOK)
    +          .groupBy(T_BOOK.AUTHOR_ID).asTable("nested");
    +
    +create.select(nested.getFields())
    +      .from(nested)
    +      .orderBy(nested.getField("books"));</fo:block>
    +</fo:block>
    +</fo:table-cell>
    +</fo:table-row>
    +</fo:table-body>
    +</fo:table>
    +
    +							<fo:block font-size="11pt">You'll notice how some verbosity seems inevitable when you combine nested SELECT statements with aliasing. </fo:block>
    +
    +	                    	<fo:block font-family="Georgia" font-size="16pt" padding-top="10pt" padding-bottom="10pt" page-break-after="avoid">Selecting a SELECT - SELECT acts as a Field</fo:block>
    +							<fo:block font-size="11pt">Now SQL is even more powerful than that. You can also have SELECT
    +								statements, wherever you can have Fields. It get's harder and harder
    +								to find good examples, because there is always an easier way to
    +								express the same thing. But why not just count the number of books the
    +								really hard way? :-) But then again, maybe you want to take advantage
    +								of <fo:basic-link font-size="11pt" color="#882222" font-weight="bold" text-shadow="0 1px 2px #666666" external-destination="url('http://lukaseder.wordpress.com/2011/09/02/oracle-scalar-subquery-caching/')">Oracle Scalar Subquery Caching</fo:basic-link>
    +</fo:block>
    +
    +							<fo:table width="100%" table-layout="fixed">
    +<fo:table-column column-width="88mm"/>
    +<fo:table-column column-width="88mm"/>
    +<fo:table-body>
    +<fo:table-row>
    +<fo:table-cell>
    +<fo:block>
    +<fo:block font-family="Courier" linefeed-treatment="preserve" white-space-collapse="false" white-space-treatment="preserve" font-size="6pt" margin="12pt" padding="4pt" border="2px solid #882222" background-color="#FFEEDD" page-break-inside="avoid">  SELECT LAST_NAME, (
    +      SELECT COUNT(*)
    +       FROM T_BOOK
    +      WHERE T_BOOK.AUTHOR_ID = T_AUTHOR.ID) books
    +    FROM T_AUTHOR
    +ORDER BY books DESC
    +
    +
    +
    +</fo:block>
    +</fo:block>
    +</fo:table-cell>
    +<fo:table-cell>
    +<fo:block>
    +<fo:block font-family="Courier" linefeed-treatment="preserve" white-space-collapse="false" white-space-treatment="preserve" font-size="6pt" margin="12pt" padding="4pt" border="2px solid #882222" background-color="#FFEEDD" page-break-inside="avoid">// The type of books cannot be inferred from the Select&lt;?&gt;
    +Field&lt;Object&gt; books =
    +    create.selectCount()
    +          .from(T_BOOK)
    +          .where(T_BOOK.AUTHOR_ID.equal(T_AUTHOR.ID))
    +          .asField("books");
    +create.select(T_AUTHOR.ID, books)
    +      .from(T_AUTHOR)
    +      .orderBy(books, T_AUTHOR.ID));</fo:block>
    +</fo:block>
    +</fo:table-cell>
    +</fo:table-row>
    +</fo:table-body>
    +</fo:table>
    +                    	<fo:block font-family="Georgia" font-size="18pt" padding-top="12pt" padding-bottom="12pt" page-break-after="avoid" id="UNION">
    +<fo:marker marker-class-name="section">
    +<fo:block>3.8. UNION and other set operations</fo:block>
    +</fo:marker>3.8. UNION and other set operations</fo:block>
    +<fo:block font-size="11pt">Unions, differences and intersections are vital set operations taken from set theory.</fo:block>
    +							<fo:block font-family="Georgia" font-size="16pt" padding-top="10pt" padding-bottom="10pt" page-break-after="avoid">jOOQ's set operation API</fo:block>
    +							<fo:block font-size="11pt">The
    +								<fo:basic-link font-size="11pt" color="#882222" font-weight="bold" text-shadow="0 1px 2px #666666" external-destination="url('http://www.jooq.org/javadoc/latest/org/jooq/Select.html')">org.jooq.Select</fo:basic-link> API directly supports the UNION
    +								syntax for all types of Select as discussed in the manual's section about
    +								<fo:basic-link font-size="11pt" color="#882222" font-weight="bold" text-shadow="0 1px 2px #666666" internal-destination="Query">Queries and Query subtypes</fo:basic-link>.
    +								It consists of these methods: </fo:block>
    +
    +<fo:block font-family="Courier" linefeed-treatment="preserve" white-space-collapse="false" white-space-treatment="preserve" font-size="6pt" margin="12pt" padding="4pt" border="2px solid #882222" background-color="#FFEEDD" page-break-inside="avoid">public interface Select&lt;R extends Record&gt; {
    +    Select&lt;R&gt; union(Select&lt;R&gt; select);
    +    Select&lt;R&gt; unionAll(Select&lt;R&gt; select);
    +    Select&lt;R&gt; except(Select&lt;R&gt; select);
    +    Select&lt;R&gt; intersect(Select&lt;R&gt; select);
    +}</fo:block>
    +
    +							<fo:block font-size="11pt">Hence, this is how you can write a simple UNION with jOOQ:</fo:block>
    +							<fo:table width="100%" table-layout="fixed">
    +<fo:table-column column-width="88mm"/>
    +<fo:table-column column-width="88mm"/>
    +<fo:table-body>
    +<fo:table-row>
    +<fo:table-cell>
    +<fo:block>
    +<fo:block font-family="Courier" linefeed-treatment="preserve" white-space-collapse="false" white-space-treatment="preserve" font-size="6pt" margin="12pt" padding="4pt" border="2px solid #882222" background-color="#FFEEDD" page-break-inside="avoid">SELECT TITLE
    +  FROM T_BOOK
    + WHERE PUBLISHED_IN &gt; 1945
    +UNION
    +SELECT TITLE
    +  FROM T_BOOK
    + WHERE AUTHOR_ID = 1</fo:block>
    +</fo:block>
    +</fo:table-cell>
    +<fo:table-cell>
    +<fo:block>
    +<fo:block font-family="Courier" linefeed-treatment="preserve" white-space-collapse="false" white-space-treatment="preserve" font-size="6pt" margin="12pt" padding="4pt" border="2px solid #882222" background-color="#FFEEDD" page-break-inside="avoid">create.select(TBook.TITLE)
    +      .from(T_BOOK)
    +      .where(T_BOOK.PUBLISHED_IN.greaterThan(1945))
    +      .union(
    +create.select(T_BOOK.TITLE)
    +      .from(T_BOOK)
    +      .where(T_BOOK.AUTHOR_ID.equal(1)));</fo:block>
    +</fo:block>
    +</fo:table-cell>
    +</fo:table-row>
    +</fo:table-body>
    +</fo:table>
    +
    +							<fo:block font-family="Georgia" font-size="16pt" padding-top="10pt" padding-bottom="10pt" page-break-after="avoid">Nested UNIONs</fo:block>
    +							<fo:block font-size="11pt">In some SQL dialects, you can arbitrarily nest UNIONs to several
    +								levels. Be aware, though, that SQLite, Derby and MySQL have serious
    +								syntax limitations. jOOQ tries to render correct UNION SQL statements,
    +								but unfortunately, you can create situations that will cause syntax
    +								errors in the aforementioned dialects. </fo:block>
    +
    +							<fo:block font-size="11pt">An example of advanced UNION usage is the following statement in jOOQ: </fo:block>
    +<fo:block font-family="Courier" linefeed-treatment="preserve" white-space-collapse="false" white-space-treatment="preserve" font-size="6pt" margin="12pt" padding="4pt" border="2px solid #882222" background-color="#FFEEDD" page-break-inside="avoid">// Create a UNION of several types of books
    +Select&lt;?&gt; union =
    +    create.select(T_BOOK.TITLE, T_BOOK.AUTHOR_ID).from(T_BOOK).where(T_BOOK.PUBLISHED_IN.greaterThan(1945)).union(
    +    create.select(T_BOOK.TITLE, T_BOOK.AUTHOR_ID).from(T_BOOK).where(T_BOOK.AUTHOR_ID.equal(1)));
    +
    +// Now, re-use the above UNION and order it by author
    +create.select(union.getField(T_BOOK.TITLE))
    +      .from(union)
    +      .orderBy(union.getField(T_BOOK.AUTHOR_ID).descending());</fo:block>
    +
    +							<fo:block font-size="11pt">This example does not seem surprising, when you have read the
    +								previous chapters about
    +								<fo:basic-link font-size="11pt" color="#882222" font-weight="bold" text-shadow="0 1px 2px #666666" internal-destination="NESTED">nested SELECT statements</fo:basic-link>.
    +								But when you check
    +								out the rendered SQL: </fo:block>
    +
    +<fo:block font-family="Courier" linefeed-treatment="preserve" white-space-collapse="false" white-space-treatment="preserve" font-size="6pt" margin="12pt" padding="4pt" border="2px solid #882222" background-color="#FFEEDD" page-break-inside="avoid">-- alias_38173 is an example of a generated alias,
    +-- generated by jOOQ for union queries
    +SELECT alias_38173.TITLE FROM (
    +  SELECT T_BOOK.TITLE, T_BOOK.AUTHOR_ID FROM T_BOOK WHERE T_BOOK.PUBLISHED_IN &gt; 1945
    +  UNION
    +  SELECT T_BOOK.TITLE, T_BOOK.AUTHOR_ID FROM T_BOOK WHERE T_BOOK.AUTHOR_ID = 1
    +) alias_38173
    +ORDER BY alias_38173.AUTHOR_ID DESC</fo:block>
    +
    +							<fo:block font-size="11pt">You can see that jOOQ takes care of many syntax pitfalls, when
    +								you're not used to the various dialects' unique requirements. The
    +								above automatic aliasing was added in order to be compliant with
    +								MySQL's requirements about aliasing nested selects. </fo:block>
    +
    +							<fo:block font-family="Georgia" font-size="16pt" padding-top="10pt" padding-bottom="10pt" page-break-after="avoid">Several UNIONs</fo:block>
    +							<fo:block font-size="11pt">It is no problem either for you to create SQL statements with several unions. Just write: </fo:block>
    +<fo:block font-family="Courier" linefeed-treatment="preserve" white-space-collapse="false" white-space-treatment="preserve" font-size="6pt" margin="12pt" padding="4pt" border="2px solid #882222" background-color="#FFEEDD" page-break-inside="avoid">Select&lt;?&gt; part1;
    +Select&lt;?&gt; part2;
    +Select&lt;?&gt; part3;
    +Select&lt;?&gt; part4;
    +
    +// [...]
    +
    +part1.union(part2).union(part3).union(part4);</fo:block>
    +
    +							<fo:block font-family="Georgia" font-size="16pt" padding-top="10pt" padding-bottom="10pt" page-break-after="avoid">UNION and the ORDER BY clause</fo:block>
    +							<fo:block font-size="11pt">
    +								Strictly speaking, in SQL, you cannot order a subselect that is part
    +								of a UNION operation. You can only order the whole set. In set theory,
    +								or relational algebra, it wouldn't make sense to order subselects
    +								anyway, as a set operation cannot guarantee order correctness. Often,
    +								you still want to do it, because you apply a LIMIT to every subselect.
    +								Let's say, you want to find the employees with the highest salary in
    +								every department in Postgres syntax:
    +							</fo:block>
    +							<fo:table width="100%" table-layout="fixed">
    +<fo:table-column column-width="88mm"/>
    +<fo:table-column column-width="88mm"/>
    +<fo:table-body>
    +<fo:table-row>
    +<fo:table-cell>
    +<fo:block>
    +<fo:block font-family="Courier" linefeed-treatment="preserve" white-space-collapse="false" white-space-treatment="preserve" font-size="6pt" margin="12pt" padding="4pt" border="2px solid #882222" background-color="#FFEEDD" page-break-inside="avoid">SELECT * FROM (
    +  SELECT * FROM emp WHERE dept = 'IT'
    +  ORDER BY salary LIMIT 1
    +) UNION (
    +  SELECT * FROM emp WHERE dept = 'Marketing'
    +  ORDER BY salary LIMIT 1
    +) UNION (
    +  SELECT * FROM emp WHERE dept = 'R&amp;D'
    +  ORDER BY salary LIMIT 1
    +)</fo:block>
    +</fo:block>
    +</fo:table-cell>
    +<fo:table-cell>
    +<fo:block>
    +<fo:block font-family="Courier" linefeed-treatment="preserve" white-space-collapse="false" white-space-treatment="preserve" font-size="6pt" margin="12pt" padding="4pt" border="2px solid #882222" background-color="#FFEEDD" page-break-inside="avoid">create.selectFrom(EMP).where(DEPT.equal("IT"))
    +      .orderBy(SALARY).limit(1)
    +      .union(
    +create.selectFrom(EMP).where(DEPT.equal("Marketing"))
    +      .orderBy(SALARY).limit(1))
    +      .union(
    +create.selectFrom(EMP).where(DEPT.equal("R&amp;D")
    +      .orderBy(SALARY).limit(1)))
    +
    +
    +</fo:block>
    +</fo:block>
    +</fo:table-cell>
    +</fo:table-row>
    +</fo:table-body>
    +</fo:table>
    +
    +							<fo:block font-size="11pt">There is a subtle difference between the above two queries.
    +								In SQL, every UNION subselect is in fact a
    +							<fo:basic-link font-size="11pt" color="#882222" font-weight="bold" text-shadow="0 1px 2px #666666" internal-destination="NESTED">nested SELECT</fo:basic-link>, wrapped in parentheses.
    +							In this example, the notion of "nested SELECT" and "subselect" are slightly
    +							different.</fo:block>
    +						<fo:block font-family="Georgia" font-size="18pt" padding-top="12pt" padding-bottom="12pt" page-break-after="avoid" id="FUNCTIONS">
    +<fo:marker marker-class-name="section">
    +<fo:block>3.9. Functions and aggregate operators</fo:block>
    +</fo:marker>3.9. Functions and aggregate operators</fo:block>
    +<fo:block font-size="11pt">
    +							Highly effective SQL cannot do without functions. Operations on
    +							VARCHAR, DATE, and NUMERIC types in GROUP BY or ORDER BY clauses allow
    +							for very elegant queries.
    +						</fo:block>
    +							<fo:block font-family="Georgia" font-size="16pt" padding-top="10pt" padding-bottom="10pt" page-break-after="avoid">jOOQ's strategy for supporting vendor-specific functions</fo:block>
    +							<fo:block font-size="11pt">jOOQ allows you to access native functions from your RDBMS. jOOQ
    +								follows two strategies: </fo:block>
    +							<fo:block padding-top="16pt" padding-bottom="16pt" page-break-inside="avoid">
    +<fo:list-block>
    +								<fo:list-item>
    +<fo:list-item-label>
    +<fo:block font-size="11pt" page-break-inside="avoid">-</fo:block>
    +</fo:list-item-label>
    +<fo:list-item-body start-indent="body-start()">
    +<fo:block font-size="11pt" page-break-inside="avoid">Implement all SQL-92, SQL:1999, SQL:2003, and SQL:2008 standard
    +									functions, aggregate operators, and window functions. Standard
    +									functions could be
    +									<fo:basic-link font-size="11pt" color="#882222" font-weight="bold" text-shadow="0 1px 2px #666666" external-destination="url('http://oreilly.com/catalog/sqlnut/chapter/ch04.html')">these functions as listed by O'Reilly</fo:basic-link>. </fo:block>
    +</fo:list-item-body>
    +</fo:list-item>
    +								<fo:list-item>
    +<fo:list-item-label>
    +<fo:block font-size="11pt" page-break-inside="avoid">-</fo:block>
    +</fo:list-item-label>
    +<fo:list-item-body start-indent="body-start()">
    +<fo:block font-size="11pt" page-break-inside="avoid">Take the most useful of vendor-specific functions and simulate
    +									them for other RDBMS, where they may not be supported. An example for
    +									this are
    +									<fo:basic-link font-size="11pt" color="#882222" font-weight="bold" text-shadow="0 1px 2px #666666" external-destination="url('http://psoug.org/reference/analytic_functions.html')">Oracle Analytic Functions</fo:basic-link>
    +</fo:block>
    +</fo:list-item-body>
    +</fo:list-item>
    +							</fo:list-block>
    +</fo:block>
    +
    +							<fo:block font-family="Georgia" font-size="16pt" padding-top="10pt" padding-bottom="10pt" page-break-after="avoid">Functions </fo:block>
    +							<fo:block font-size="11pt">These are just a few functions in the Factory, so you get the idea: </fo:block>
    +
    +<fo:block font-family="Courier" linefeed-treatment="preserve" white-space-collapse="false" white-space-treatment="preserve" font-size="6pt" margin="12pt" padding="4pt" border="2px solid #882222" background-color="#FFEEDD" page-break-inside="avoid"><![CDATA[Field<String> rpad(Field<String> field, Field<? extends Number> length);
    +Field<String> rpad(Field<String> field, int length);
    +Field<String> rpad(Field<String> field, Field<? extends Number> length, Field<String> c);
    +Field<String> rpad(Field<String> field, int length, char c);
    +Field<String> lpad(Field<String> field, Field<? extends Number> length);
    +Field<String> lpad(Field<String> field, int length);
    +Field<String> lpad(Field<String> field, Field<? extends Number> length, Field<String> c);
    +Field<String> lpad(Field<String> field, int length, char c);
    +Field<String> replace(Field<String> field, Field<String> search);
    +Field<String> replace(Field<String> field, String search);
    +Field<String> replace(Field<String> field, Field<String> search, Field<String> replace);
    +Field<String> replace(Field<String> field, String search, String replace);
    +Field<Integer> position(Field<String> field, String search);
    +Field<Integer> position(Field<String> field, Field<String> search);]]></fo:block>
    +
    +							<fo:block font-family="Georgia" font-size="16pt" padding-top="10pt" padding-bottom="10pt" page-break-after="avoid">Aggregate operators</fo:block>
    +							<fo:block font-size="11pt">Aggregate operators work just like functions, even if they have a
    +								slightly different semantics. Here are some examples from
    +								Factory: </fo:block>
    +
    +<fo:block font-family="Courier" linefeed-treatment="preserve" white-space-collapse="false" white-space-treatment="preserve" font-size="6pt" margin="12pt" padding="4pt" border="2px solid #882222" background-color="#FFEEDD" page-break-inside="avoid"><![CDATA[// Every-day, SQL standard aggregate functions
    +AggregateFunction<Integer> count(Field<?> field);
    +AggregateFunction<T> max(Field<T> field);
    +AggregateFunction<T> min(Field<T> field);
    +AggregateFunction<BigDecimal> sum(Field<? extends Number> field);
    +AggregateFunction<BigDecimal> avg(Field<? extends Number> field);
    +
    +
    +// DISTINCT keyword in aggregate functions
    +AggregateFunction<Integer> countDistinct(Field<?> field);
    +AggregateFunction<T> maxDistinct(Field<T> field);
    +AggregateFunction<T> minDistinct(Field<T> field);
    +AggregateFunction<BigDecimal> sumDistinct(Field<? extends Number> field);
    +AggregateFunction<BigDecimal> avgDistinct(Field<? extends Number> field);
    +
    +// String aggregate functions
    +AggregateFunction<String> groupConcat(Field<?> field);
    +AggregateFunction<String> groupConcatDistinct(Field<?> field);
    +OrderedAggregateFunction<String> listAgg(Field<?> field);
    +OrderedAggregateFunction<String> listAgg(Field<?> field, String separator);
    +
    +// Statistical functions
    +AggregateFunction<BigDecimal> median(Field<? extends Number> field);
    +AggregateFunction<BigDecimal> stddevPop(Field<? extends Number> field);
    +AggregateFunction<BigDecimal> stddevSamp(Field<? extends Number> field);
    +AggregateFunction<BigDecimal> varPop(Field<? extends Number> field);
    +AggregateFunction<BigDecimal> varSamp(Field<? extends Number> field);
    +]]></fo:block>
    +
    +							<fo:block font-size="11pt">A typical example of how to use an aggregate operator is when
    +								generating the next key on insertion of an ID. When you want to
    +								achieve something like this </fo:block>
    +
    +							<fo:table width="100%" table-layout="fixed">
    +<fo:table-column column-width="88mm"/>
    +<fo:table-column column-width="88mm"/>
    +<fo:table-body>
    +<fo:table-row>
    +<fo:table-cell>
    +<fo:block>
    +<fo:block font-family="Courier" linefeed-treatment="preserve" white-space-collapse="false" white-space-treatment="preserve" font-size="6pt" margin="12pt" padding="4pt" border="2px solid #882222" background-color="#FFEEDD" page-break-inside="avoid">SELECT MAX(ID) + 1 AS next_id
    +  FROM T_AUTHOR</fo:block>
    +</fo:block>
    +</fo:table-cell>
    +<fo:table-cell>
    +<fo:block>
    +<fo:block font-family="Courier" linefeed-treatment="preserve" white-space-collapse="false" white-space-treatment="preserve" font-size="6pt" margin="12pt" padding="4pt" border="2px solid #882222" background-color="#FFEEDD" page-break-inside="avoid">create.select(max(ID).add(1).as("next_id"))
    +      .from(T_AUTHOR);</fo:block>
    +</fo:block>
    +</fo:table-cell>
    +</fo:table-row>
    +</fo:table-body>
    +</fo:table>
    +
    +							<fo:block font-size="11pt">See also the section about
    +								<fo:basic-link font-size="11pt" color="#882222" font-weight="bold" text-shadow="0 1px 2px #666666" internal-destination="ARITHMETIC">Arithmetic operations</fo:basic-link>
    +</fo:block>
    +
    +							<fo:block font-family="Georgia" font-size="16pt" padding-top="10pt" padding-bottom="10pt" page-break-after="avoid">Window functions</fo:block>
    +							<fo:block font-size="11pt">Most major RDBMS support the concept of window functions. jOOQ knows
    +								of implementations in DB2, Oracle, Postgres, SQL Server, and Sybase
    +								SQL Anywhere,
    +								and supports most of their specific syntaxes. Window functions can be
    +								used for things like calculating a "running total". The following example
    +								fetches transactions and the running total for every transaction going
    +								back to the beginning of the transaction table (ordered by booked_at).
    +
    +								They are accessible from the previously seen AggregateFunction type using
    +								the over() method:
    +							</fo:block>
    +
    +							<fo:table width="100%" table-layout="fixed">
    +<fo:table-column column-width="88mm"/>
    +<fo:table-column column-width="88mm"/>
    +<fo:table-body>
    +<fo:table-row>
    +<fo:table-cell>
    +<fo:block>
    +<fo:block font-family="Courier" linefeed-treatment="preserve" white-space-collapse="false" white-space-treatment="preserve" font-size="6pt" margin="12pt" padding="4pt" border="2px solid #882222" background-color="#FFEEDD" page-break-inside="avoid">SELECT booked_at, amount,
    +   SUM(amount) OVER (PARTITION BY 1
    +                     ORDER BY booked_at
    +                     ROWS BETWEEN UNBOUNDED PRECEDING
    +                     AND CURRENT ROW) AS total
    +  FROM transactions</fo:block>
    +</fo:block>
    +</fo:table-cell>
    +<fo:table-cell>
    +<fo:block>
    +<fo:block font-family="Courier" linefeed-treatment="preserve" white-space-collapse="false" white-space-treatment="preserve" font-size="6pt" margin="12pt" padding="4pt" border="2px solid #882222" background-color="#FFEEDD" page-break-inside="avoid">create.select(t.BOOKED_AT, t.AMOUNT,
    +         sum(t.AMOUNT).over().partitionByOne()
    +                      .orderBy(t.BOOKED_AT)
    +                      .rowsBetweenUnboundedPreceding()
    +                      .andCurrentRow().as("total")
    +      .from(TRANSACTIONS.as("t"));</fo:block>
    +</fo:block>
    +</fo:table-cell>
    +</fo:table-row>
    +</fo:table-body>
    +</fo:table>
    +						<fo:block font-family="Georgia" font-size="18pt" padding-top="12pt" padding-bottom="12pt" page-break-after="avoid" id="PROCEDURES">
    +<fo:marker marker-class-name="section">
    +<fo:block>3.10. Stored procedures and functions</fo:block>
    +</fo:marker>3.10. Stored procedures and functions</fo:block>
    +<fo:block font-size="11pt">
    +							The full power of your database's vendor-specific extensions can hardly
    +							be obtained outside of the
    +							database itself. Most modern RDBMS support
    +							their own procedural language. With jOOQ, stored procedures are
    +							integrated easily
    +						</fo:block>
    +							<fo:block font-family="Georgia" font-size="16pt" padding-top="10pt" padding-bottom="10pt" page-break-after="avoid">Interaction with stored procedures</fo:block>
    +							<fo:block font-size="11pt">The main way to interact with your RDBMS's stored procedures and
    +								functions is by using the generated artefacts. See the manual's
    +								section about
    +								<fo:basic-link font-size="11pt" color="#882222" font-weight="bold" text-shadow="0 1px 2px #666666" internal-destination="PROCEDURE">generating procedures and packages</fo:basic-link>
    +							    for more details
    +								about the source code generation for stored procedures and functions.
    +							</fo:block>
    +
    +							<fo:block font-family="Georgia" font-size="16pt" padding-top="10pt" padding-bottom="10pt" page-break-after="avoid">Stored functions</fo:block>
    +							<fo:block font-size="11pt">When it comes to DSL, stored functions can be very handy in SQL
    +								statements as well. Every stored function (this also applies to
    +								FUNCTIONS in Oracle PACKAGES) can generate a Field representing a call
    +								to that function. Typically, if you have this type of function in your
    +								database: </fo:block>
    +
    +<fo:block font-family="Courier" linefeed-treatment="preserve" white-space-collapse="false" white-space-treatment="preserve" font-size="6pt" margin="12pt" padding="4pt" border="2px solid #882222" background-color="#FFEEDD" page-break-inside="avoid">CREATE OR REPLACE FUNCTION f_author_exists (author_name VARCHAR2)
    +RETURN NUMBER;</fo:block>
    +
    +							<fo:block font-size="11pt">Then convenience methods like these are generated: </fo:block>
    +<fo:block font-family="Courier" linefeed-treatment="preserve" white-space-collapse="false" white-space-treatment="preserve" font-size="6pt" margin="12pt" padding="4pt" border="2px solid #882222" background-color="#FFEEDD" page-break-inside="avoid">// Create a field representing a function with another field as parameter
    +public static Field&lt;BigDecimal&gt; fAuthorExists(Field&lt;String&gt; authorName) { // [...]
    +
    +// Create a field representing a function with a constant parameter
    +public static Field&lt;BigDecimal&gt; fAuthorExists(String authorName) { // [...]</fo:block>
    +
    +							<fo:block font-size="11pt">Let's say, you have a T_PERSON table with persons' names in it, and
    +								you want to know whether there exists an author with precisely that
    +								name, you can reuse the above stored function in a SQL query: </fo:block>
    +
    +							<fo:table width="100%" table-layout="fixed">
    +<fo:table-column column-width="88mm"/>
    +<fo:table-column column-width="88mm"/>
    +<fo:table-body>
    +<fo:table-row>
    +<fo:table-cell>
    +<fo:block>
    +<fo:block font-family="Courier" linefeed-treatment="preserve" white-space-collapse="false" white-space-treatment="preserve" font-size="6pt" margin="12pt" padding="4pt" border="2px solid #882222" background-color="#FFEEDD" page-break-inside="avoid">SELECT T_PERSON.NAME, F_AUTHOR_EXISTS(T_PERSON.NAME)
    +  FROM T_PERSON
    +
    +-- OR:
    +
    +SELECT T_PERSON.NAME
    +  FROM T_PERSON
    + WHERE F_AUTHOR_EXISTS(T_PERSON.NAME) = 1</fo:block>
    +</fo:block>
    +</fo:table-cell>
    +<fo:table-cell>
    +<fo:block>
    +<fo:block font-family="Courier" linefeed-treatment="preserve" white-space-collapse="false" white-space-treatment="preserve" font-size="6pt" margin="12pt" padding="4pt" border="2px solid #882222" background-color="#FFEEDD" page-break-inside="avoid">create.select(T_PERSON.NAME, Functions.fAuthorExists(T_PERSON.NAME))
    +      .from(T_PERSON);
    +
    +// OR: Note, the static import of Functions.*
    +create.select(T_PERSON.NAME)
    +      .from(T_PERSON)
    +      .where(fAuthorExists(T_PERSON.NAME));</fo:block>
    +</fo:block>
    +</fo:table-cell>
    +</fo:table-row>
    +</fo:table-body>
    +</fo:table>
    +
    +							<fo:block font-family="Georgia" font-size="16pt" padding-top="10pt" padding-bottom="10pt" page-break-after="avoid">Stored procedures</fo:block>
    +							<fo:block font-size="11pt">The notion of a stored procedure is implemented in most RDBMS by the
    +								fact, that the procedure has no RETURN VALUE (like void in Java), but
    +								it may well have OUT parameters. Since there is not a standard way how
    +								to embed stored procedures in SQL, they cannot be integrated in jOOQ's
    +								DSL either. </fo:block>
    +						<fo:block font-family="Georgia" font-size="18pt" padding-top="12pt" padding-bottom="12pt" page-break-after="avoid" id="ARITHMETIC">
    +<fo:marker marker-class-name="section">
    +<fo:block>3.11. Arithmetic operations and concatenation</fo:block>
    +</fo:marker>3.11. Arithmetic operations and concatenation</fo:block>
    +<fo:block font-size="11pt">
    +							Your database can do the math for you. Most arithmetic operations are
    +							supported, but also string concatenation can be very efficient if done
    +							already in the database.
    +						</fo:block>
    +							<fo:block font-family="Georgia" font-size="16pt" padding-top="10pt" padding-bottom="10pt" page-break-after="avoid">Mathematical operations</fo:block>
    +							<fo:block font-size="11pt">Arithmetic operations are implemented just like
    +								<fo:basic-link font-size="11pt" color="#882222" font-weight="bold" text-shadow="0 1px 2px #666666" internal-destination="FUNCTIONS">functions</fo:basic-link>, with
    +								similar limitations as far as type restrictions are concerned. You can
    +								use any of these operators: </fo:block>
    +
    +							<fo:block font-family="Courier" linefeed-treatment="preserve" white-space-collapse="false" white-space-treatment="preserve" font-size="6pt" margin="12pt" padding="4pt" border="2px solid #882222" background-color="#FFEEDD" page-break-inside="avoid">  +  -  *  /  %</fo:block>
    +
    +							<fo:block font-size="11pt">In order to express a SQL query like this one: </fo:block>
    +							<fo:block font-family="Courier" linefeed-treatment="preserve" white-space-collapse="false" white-space-treatment="preserve" font-size="6pt" margin="12pt" padding="4pt" border="2px solid #882222" background-color="#FFEEDD" page-break-inside="avoid">SELECT ((1 + 2) * (5 - 3) / 2) % 10 FROM DUAL</fo:block>
    +							<fo:block font-size="11pt">You can write something like this in jOOQ: </fo:block>
    +							<fo:block font-family="Courier" linefeed-treatment="preserve" white-space-collapse="false" white-space-treatment="preserve" font-size="6pt" margin="12pt" padding="4pt" border="2px solid #882222" background-color="#FFEEDD" page-break-inside="avoid">create.select(create.val(1).add(2).mul(create.val(5).sub(3)).div(2).mod(10));	</fo:block>
    +
    +							<fo:block font-family="Georgia" font-size="16pt" padding-top="10pt" padding-bottom="10pt" page-break-after="avoid">Datetime arithmetic</fo:block>
    +							<fo:block font-size="11pt">jOOQ also supports the Oracle-style syntax for adding days to a Field&lt;? extends java.util.Date&gt; </fo:block>
    +							<fo:table width="100%" table-layout="fixed">
    +<fo:table-column column-width="88mm"/>
    +<fo:table-column column-width="88mm"/>
    +<fo:table-body>
    +<fo:table-row>
    +<fo:table-cell>
    +<fo:block>
    +<fo:block font-family="Courier" linefeed-treatment="preserve" white-space-collapse="false" white-space-treatment="preserve" font-size="6pt" margin="12pt" padding="4pt" border="2px solid #882222" background-color="#FFEEDD" page-break-inside="avoid">SELECT SYSDATE + 3 FROM DUAL;</fo:block>
    +</fo:block>
    +</fo:table-cell>
    +<fo:table-cell>
    +<fo:block>
    +<fo:block font-family="Courier" linefeed-treatment="preserve" white-space-collapse="false" white-space-treatment="preserve" font-size="6pt" margin="12pt" padding="4pt" border="2px solid #882222" background-color="#FFEEDD" page-break-inside="avoid">create.select(create.currentTimestamp().add(3));</fo:block>
    +</fo:block>
    +</fo:table-cell>
    +</fo:table-row>
    +</fo:table-body>
    +</fo:table>
    +
    +							<fo:block font-family="Georgia" font-size="16pt" padding-top="10pt" padding-bottom="10pt" page-break-after="avoid">String concatenation</fo:block>
    +							<fo:block font-size="11pt">This is not really an arithmetic expression, but it's still an
    +								expression with operators: The string concatenation. jOOQ
    +								provides you with the Field's concat() method:</fo:block>
    +							<fo:table width="100%" table-layout="fixed">
    +<fo:table-column column-width="88mm"/>
    +<fo:table-column column-width="88mm"/>
    +<fo:table-body>
    +<fo:table-row>
    +<fo:table-cell>
    +<fo:block>
    +<fo:block font-family="Courier" linefeed-treatment="preserve" white-space-collapse="false" white-space-treatment="preserve" font-size="6pt" margin="12pt" padding="4pt" border="2px solid #882222" background-color="#FFEEDD" page-break-inside="avoid">SELECT 'A' || 'B' || 'C' FROM DUAL
    +
    +-- Or in MySQL:
    +SELECT concat('A', 'B', 'C')</fo:block>
    +</fo:block>
    +</fo:table-cell>
    +<fo:table-cell>
    +<fo:block>
    +<fo:block font-family="Courier" linefeed-treatment="preserve" white-space-collapse="false" white-space-treatment="preserve" font-size="6pt" margin="12pt" padding="4pt" border="2px solid #882222" background-color="#FFEEDD" page-break-inside="avoid"> 
    +// For all RDBMS, including MySQL:
    +create.select(concat("A", "B", "C"));
    +
    +</fo:block>
    +</fo:block>
    +</fo:table-cell>
    +</fo:table-row>
    +</fo:table-body>
    +</fo:table>
    +						<fo:block font-family="Georgia" font-size="18pt" padding-top="12pt" padding-bottom="12pt" page-break-after="avoid" id="CASE">
    +<fo:marker marker-class-name="section">
    +<fo:block>3.12. The CASE clause</fo:block>
    +</fo:marker>3.12. The CASE clause</fo:block>
    +<fo:block font-size="11pt">
    +							The SQL standard supports a CASE clause, which works very similar to
    +							Java's if-else statement. In complex SQL, this is very useful for value
    +							mapping
    +						</fo:block>
    +							<fo:block font-family="Georgia" font-size="16pt" padding-top="10pt" padding-bottom="10pt" page-break-after="avoid">The two flavours of CASE</fo:block>
    +							<fo:block font-size="11pt">The CASE clause is part of the standard SQL syntax. While some RDBMS
    +								also offer an IF clause, or a DECODE function, you can always rely on
    +								the two types of CASE syntax: </fo:block>
    +
    +							<fo:table width="100%" table-layout="fixed">
    +<fo:table-column column-width="88mm"/>
    +<fo:table-column column-width="88mm"/>
    +<fo:table-body>
    +<fo:table-row>
    +<fo:table-cell>
    +<fo:block>
    +<fo:block font-family="Courier" linefeed-treatment="preserve" white-space-collapse="false" white-space-treatment="preserve" font-size="6pt" margin="12pt" padding="4pt" border="2px solid #882222" background-color="#FFEEDD" page-break-inside="avoid">CASE WHEN T_AUTHOR.FIRST_NAME = 'Paulo'  THEN 'brazilian'
    +     WHEN T_AUTHOR.FIRST_NAME = 'George' THEN 'english'
    +                                         ELSE 'unknown'
    +END
    +
    +-- OR:
    +
    +CASE T_AUTHOR.FIRST_NAME WHEN 'Paulo'  THEN 'brazilian'
    +                         WHEN 'George' THEN 'english'
    +                                       ELSE 'unknown'
    +END </fo:block>
    +</fo:block>
    +</fo:table-cell>
    +<fo:table-cell>
    +<fo:block>
    +<fo:block font-family="Courier" linefeed-treatment="preserve" white-space-collapse="false" white-space-treatment="preserve" font-size="6pt" margin="12pt" padding="4pt" border="2px solid #882222" background-color="#FFEEDD" page-break-inside="avoid">create.decode()
    +      .when(T_AUTHOR.FIRST_NAME.equal("Paulo"), "brazilian")
    +      .when(T_AUTHOR.FIRST_NAME.equal("George"), "english")
    +      .otherwise("unknown");
    +
    +// OR:
    +
    +create.decode().value(T_AUTHOR.FIRST_NAME)
    +               .when("Paulo", "brazilian")
    +               .when("George", "english")
    +               .otherwise("unknown");</fo:block>
    +</fo:block>
    +</fo:table-cell>
    +</fo:table-row>
    +</fo:table-body>
    +</fo:table>
    +
    +							<fo:block font-size="11pt">
    +								In jOOQ, both syntaxes are supported (although, Derby only knows the
    +								first one, which is more general). Unfortunately, both case and else
    +								are reserved words in Java. jOOQ chose to use decode() from the Oracle
    +								DECODE function, and otherwise(), which means the same as else. Please
    +								note that in the above examples, all values were always constants. You
    +								can of course also use Field instead of the various constants.
    +							</fo:block>
    +							<fo:block font-size="11pt">A CASE clause can be used anywhere where you can place a Field. For
    +								instance, you can SELECT the above expression, if you're selecting
    +								from T_AUTHOR: </fo:block>
    +<fo:block font-family="Courier" linefeed-treatment="preserve" white-space-collapse="false" white-space-treatment="preserve" font-size="6pt" margin="12pt" padding="4pt" border="2px solid #882222" background-color="#FFEEDD" page-break-inside="avoid">SELECT T_AUTHOR.FIRST_NAME, [... CASE EXPR ...] AS nationality
    +  FROM T_AUTHOR</fo:block>
    +
    +
    +  							<fo:block font-family="Georgia" font-size="16pt" padding-top="10pt" padding-bottom="10pt" page-break-after="avoid">CASE clauses in an ORDER BY clause</fo:block>
    +							<fo:block font-size="11pt">Sort indirection is often implemented with a CASE clause of a
    +								SELECT's ORDER BY clause. In SQL, this reads: </fo:block>
    +
    +<fo:block font-family="Courier" linefeed-treatment="preserve" white-space-collapse="false" white-space-treatment="preserve" font-size="6pt" margin="12pt" padding="4pt" border="2px solid #882222" background-color="#FFEEDD" page-break-inside="avoid">SELECT *
    +FROM T_AUTHOR
    +ORDER BY CASE FIRST_NAME WHEN 'Paulo'  THEN 1
    +                         WHEN 'George' THEN 2
    +                                       ELSE null
    +         END</fo:block>
    +
    +							<fo:block font-size="11pt">This will order your authors such that all 'Paulo' come first, then
    +								all 'George' and everyone else last (depending on your RDBMS' handling
    +								of NULL values in sorting). This is a very common task, such that jOOQ
    +								simplifies its use: </fo:block>
    +<fo:block font-family="Courier" linefeed-treatment="preserve" white-space-collapse="false" white-space-treatment="preserve" font-size="6pt" margin="12pt" padding="4pt" border="2px solid #882222" background-color="#FFEEDD" page-break-inside="avoid">create.select()
    +      .from(T_AUTHOR)
    +      .orderBy(T_AUTHOR.FIRST_NAME.sortAsc("Paulo", "George"))
    +      .execute();</fo:block>
    +						<fo:block font-family="Georgia" font-size="18pt" padding-top="12pt" padding-bottom="12pt" page-break-after="avoid" id="CAST">
    +<fo:marker marker-class-name="section">
    +<fo:block>3.13. Type casting</fo:block>
    +</fo:marker>3.13. Type casting</fo:block>
    +<fo:block font-size="11pt">
    +							Many RDBMS allow for implicit or explicit conversion between types.
    +							Apart from true type conversion, this is most often done with casting.
    +						</fo:block>
    +							<fo:block font-family="Georgia" font-size="16pt" padding-top="10pt" padding-bottom="10pt" page-break-after="avoid">Enforcing a specific type when you need it</fo:block>
    +							<fo:block font-size="11pt">jOOQ's source code generator tries to find the most accurate type
    +								mapping between your vendor-specific data types and a matching Java
    +								type. For instance, most VARCHAR, CHAR, CLOB types will map to String.
    +								Most BINARY, BYTEA, BLOB types will map to byte[]. NUMERIC types will
    +								default to java.math.BigDecimal, but can also be any of
    +								java.math.BigInteger, Long, Integer, Short, Byte, Double, Float. </fo:block>
    +							<fo:block font-size="11pt">Sometimes, this automatic mapping might not be what you needed, or
    +								jOOQ cannot know the type of a field (because you created it from a
    +								<fo:basic-link font-size="11pt" color="#882222" font-weight="bold" text-shadow="0 1px 2px #666666" internal-destination="NESTED">nested select</fo:basic-link>).
    +								In those cases you would write SQL type CASTs like
    +								this: </fo:block>
    +<fo:block font-family="Courier" linefeed-treatment="preserve" white-space-collapse="false" white-space-treatment="preserve" font-size="6pt" margin="12pt" padding="4pt" border="2px solid #882222" background-color="#FFEEDD" page-break-inside="avoid">-- Let's say, your Postgres column LAST_NAME was VARCHAR(30)
    +-- Then you could do this:
    +SELECT CAST(T_AUTHOR.LAST_NAME AS TEXT) FROM DUAL</fo:block>
    +							<fo:block font-size="11pt">in jOOQ, you can write something like that: </fo:block>
    +							<fo:block font-family="Courier" linefeed-treatment="preserve" white-space-collapse="false" white-space-treatment="preserve" font-size="6pt" margin="12pt" padding="4pt" border="2px solid #882222" background-color="#FFEEDD" page-break-inside="avoid">create.select(TAuthor.LAST_NAME.cast(PostgresDataType.TEXT));</fo:block>
    +							<fo:block font-size="11pt">The same thing can be achieved by casting a Field directly to
    +								String.class, as TEXT is the default data type in Postgres to map to
    +								Java's String</fo:block>
    +							<fo:block font-family="Courier" linefeed-treatment="preserve" white-space-collapse="false" white-space-treatment="preserve" font-size="6pt" margin="12pt" padding="4pt" border="2px solid #882222" background-color="#FFEEDD" page-break-inside="avoid">create.select(TAuthor.LAST_NAME.cast(String.class));</fo:block>
    +							<fo:block font-size="11pt">The complete CAST API in Field consists of these three methods: </fo:block>
    +<fo:block font-family="Courier" linefeed-treatment="preserve" white-space-collapse="false" white-space-treatment="preserve" font-size="6pt" margin="12pt" padding="4pt" border="2px solid #882222" background-color="#FFEEDD" page-break-inside="avoid">public interface Field&lt;T&gt; {
    +    &lt;Z&gt; Field&lt;Z&gt; cast(Field&lt;Z&gt; field);
    +    &lt;Z&gt; Field&lt;Z&gt; cast(DataType&lt;Z&gt; type);
    +    &lt;Z&gt; Field&lt;Z&gt; cast(Class&lt;? extends Z&gt; type);
    +}
    +
    +// And additional convenience methods in the Factory:
    +public class Factory {
    +    &lt;T&gt; Field&lt;T&gt; cast(Object object, Field&lt;T&gt; field);
    +    &lt;T&gt; Field&lt;T&gt; cast(Object object, DataType&lt;T&gt; type);
    +    &lt;T&gt; Field&lt;T&gt; cast(Object object, Class&lt;? extends T&gt; type);
    +    &lt;T&gt; Field&lt;T&gt; castNull(Field&lt;T&gt; field);
    +    &lt;T&gt; Field&lt;T&gt; castNull(DataType&lt;T&gt; type);
    +    &lt;T&gt; Field&lt;T&gt; castNull(Class&lt;? extends T&gt; type);
    +}</fo:block>
    +						<fo:block font-family="Georgia" font-size="18pt" padding-top="12pt" padding-bottom="12pt" page-break-after="avoid" id="SQL">
    +<fo:marker marker-class-name="section">
    +<fo:block>3.14. When it's just easier: Plain SQL</fo:block>
    +</fo:marker>3.14. When it's just easier: Plain SQL</fo:block>
    +<fo:block font-size="11pt">
    +							jOOQ cannot foresee all possible vendor-specific SQL features for your
    +							database. And sometimes, even jOOQ code becomes too verbose. Then, you
    +							shouldn't hesitate to provide jOOQ with plain SQL, as you'd do with
    +							JDBC
    +						</fo:block>
    +							<fo:block font-family="Georgia" font-size="16pt" padding-top="10pt" padding-bottom="10pt" page-break-after="avoid">Plain SQL in jOOQ</fo:block>
    +							<fo:block font-size="11pt">A DSL is a nice thing to have, it feels "fluent" and "natural",
    +								especially if it models a well-known language, such as SQL. But a DSL
    +								is always expressed in another language (Java in this case), which was
    +								not made for exactly that DSL. If it were, then jOOQ would be
    +								implemented on a compiler-level, similar to Linq in .NET. But it's
    +								not, and so, the DSL is limited. We have seen many functionalities
    +								where the DSL becomes verbose. This can be especially true for: </fo:block>
    +							<fo:block padding-top="16pt" padding-bottom="16pt" page-break-inside="avoid">
    +<fo:list-block>
    +								<fo:list-item>
    +<fo:list-item-label>
    +<fo:block font-size="11pt" page-break-inside="avoid">-</fo:block>
    +</fo:list-item-label>
    +<fo:list-item-body start-indent="body-start()">
    +<fo:block font-size="11pt" page-break-inside="avoid">
    +<fo:basic-link font-size="11pt" color="#882222" font-weight="bold" text-shadow="0 1px 2px #666666" internal-destination="ALIAS">aliasing</fo:basic-link>
    +</fo:block>
    +</fo:list-item-body>
    +</fo:list-item>
    +								<fo:list-item>
    +<fo:list-item-label>
    +<fo:block font-size="11pt" page-break-inside="avoid">-</fo:block>
    +</fo:list-item-label>
    +<fo:list-item-body start-indent="body-start()">
    +<fo:block font-size="11pt" page-break-inside="avoid">
    +<fo:basic-link font-size="11pt" color="#882222" font-weight="bold" text-shadow="0 1px 2px #666666" internal-destination="NESTED">nested selects</fo:basic-link>
    +</fo:block>
    +</fo:list-item-body>
    +</fo:list-item>
    +								<fo:list-item>
    +<fo:list-item-label>
    +<fo:block font-size="11pt" page-break-inside="avoid">-</fo:block>
    +</fo:list-item-label>
    +<fo:list-item-body start-indent="body-start()">
    +<fo:block font-size="11pt" page-break-inside="avoid">
    +<fo:basic-link font-size="11pt" color="#882222" font-weight="bold" text-shadow="0 1px 2px #666666" internal-destination="ARITHMETIC">arithmetic expressions</fo:basic-link>
    +</fo:block>
    +</fo:list-item-body>
    +</fo:list-item>
    +								<fo:list-item>
    +<fo:list-item-label>
    +<fo:block font-size="11pt" page-break-inside="avoid">-</fo:block>
    +</fo:list-item-label>
    +<fo:list-item-body start-indent="body-start()">
    +<fo:block font-size="11pt" page-break-inside="avoid">
    +<fo:basic-link font-size="11pt" color="#882222" font-weight="bold" text-shadow="0 1px 2px #666666" internal-destination="CAST">casting</fo:basic-link>
    +</fo:block>
    +</fo:list-item-body>
    +</fo:list-item>
    +							</fo:list-block>
    +</fo:block>
    +							<fo:block font-size="11pt">You'll probably find other examples. If verbosity scares you off,
    +								don't worry. The verbose use-cases for jOOQ are rather rare, and when
    +								they come up, you do have an option. Just write SQL the way you're
    +								used to! </fo:block>
    +							<fo:block font-size="11pt">jOOQ allows you to embed SQL as a String in these contexts: </fo:block>
    +							<fo:block padding-top="16pt" padding-bottom="16pt" page-break-inside="avoid">
    +<fo:list-block>
    +								<fo:list-item>
    +<fo:list-item-label>
    +<fo:block font-size="11pt" page-break-inside="avoid">-</fo:block>
    +</fo:list-item-label>
    +<fo:list-item-body start-indent="body-start()">
    +<fo:block font-size="11pt" page-break-inside="avoid">Plain SQL as a condition </fo:block>
    +</fo:list-item-body>
    +</fo:list-item>
    +								<fo:list-item>
    +<fo:list-item-label>
    +<fo:block font-size="11pt" page-break-inside="avoid">-</fo:block>
    +</fo:list-item-label>
    +<fo:list-item-body start-indent="body-start()">
    +<fo:block font-size="11pt" page-break-inside="avoid">Plain SQL as a field </fo:block>
    +</fo:list-item-body>
    +</fo:list-item>
    +								<fo:list-item>
    +<fo:list-item-label>
    +<fo:block font-size="11pt" page-break-inside="avoid">-</fo:block>
    +</fo:list-item-label>
    +<fo:list-item-body start-indent="body-start()">
    +<fo:block font-size="11pt" page-break-inside="avoid">Plain SQL as a function </fo:block>
    +</fo:list-item-body>
    +</fo:list-item>
    +								<fo:list-item>
    +<fo:list-item-label>
    +<fo:block font-size="11pt" page-break-inside="avoid">-</fo:block>
    +</fo:list-item-label>
    +<fo:list-item-body start-indent="body-start()">
    +<fo:block font-size="11pt" page-break-inside="avoid">Plain SQL as a table </fo:block>
    +</fo:list-item-body>
    +</fo:list-item>
    +								<fo:list-item>
    +<fo:list-item-label>
    +<fo:block font-size="11pt" page-break-inside="avoid">-</fo:block>
    +</fo:list-item-label>
    +<fo:list-item-body start-indent="body-start()">
    +<fo:block font-size="11pt" page-break-inside="avoid">Plain SQL as a query </fo:block>
    +</fo:list-item-body>
    +</fo:list-item>
    +							</fo:list-block>
    +</fo:block>
    +
    +							<fo:block font-size="11pt">To construct artefacts wrapping plain SQL, you should use any of
    +								these methods from the Factory class: </fo:block>
    +
    +<fo:block font-family="Courier" linefeed-treatment="preserve" white-space-collapse="false" white-space-treatment="preserve" font-size="6pt" margin="12pt" padding="4pt" border="2px solid #882222" background-color="#FFEEDD" page-break-inside="avoid"><![CDATA[// A condition
    +Condition condition(String sql);
    +Condition condition(String sql, Object... bindings);
    +
    +// A field with an unknown data type
    +Field<Object> field(String sql);
    +Field<Object> field(String sql, Object... bindings);
    +
    +// A field with a known data type
    +<T> Field<T> field(String sql, Class<T> type);
    +<T> Field<T> field(String sql, Class<T> type, Object... bindings);
    +<T> Field<T> field(String sql, DataType<T> type);
    +<T> Field<T> field(String sql, DataType<T> type, Object... bindings);
    +
    +// A function
    +<T> Field<T> function(String name, Class<T> type, Field<?>... arguments);
    +<T> Field<T> function(String name, DataType<T> type, Field<?>... arguments);
    +
    +// A table
    +Table<?> table(String sql);
    +Table<?> table(String sql, Object... bindings);
    +
    +// A query without results (update, insert, etc)
    +Query query(String sql);
    +Query query(String sql, Object... bindings);
    +
    +// A query with results
    +ResultQuery<Record> resultQuery(String sql);
    +ResultQuery<Record> resultQuery(String sql, Object... bindings);
    +
    +// A query with results. This is the same as resultQuery(...).fetch();
    +Result<Record> fetch(String sql);
    +Result<Record> fetch(String sql, Object... bindings);]]></fo:block>
    +
    +							<fo:block font-size="11pt">Apart from the general factory methods, plain SQL is useful also in
    +								various other contexts. For instance, when adding a .where("a = b")
    +								clause to a query. Hence, there exist several convenience methods
    +								where plain SQL can be inserted usefully. This is an example
    +								displaying all various use-cases in one single query: </fo:block>
    +<fo:block font-family="Courier" linefeed-treatment="preserve" white-space-collapse="false" white-space-treatment="preserve" font-size="6pt" margin="12pt" padding="4pt" border="2px solid #882222" background-color="#FFEEDD" page-break-inside="avoid"><![CDATA[// You can use your table aliases in plain SQL fields
    +// As long as that will produce syntactically correct SQL
    +Field<?> LAST_NAME    = create.field("a.LAST_NAME");
    +
    +// You can alias your plain SQL fields
    +Field<?> COUNT1       = create.field("count(*) x");
    +
    +// If you know a reasonable Java type for your field, you
    +// can also provide jOOQ with that type
    +Field<Integer> COUNT2 = create.field("count(*) y", Integer.class);
    +
    +       // Use plain SQL as select fields
    +create.select(LAST_NAME, COUNT1, COUNT2)
    +
    +       // Use plain SQL as aliased tables (be aware of syntax!)
    +      .from("t_author a")
    +      .join("t_book b")
    +
    +       // Use plain SQL for conditions both in JOIN and WHERE clauses
    +      .on("a.id = b.author_id")
    +
    +       // Bind a variable in plain SQL
    +      .where("b.title != ?", "Brida")
    +
    +       // Use plain SQL again as fields in GROUP BY and ORDER BY clauses
    +      .groupBy(LAST_NAME)
    +      .orderBy(LAST_NAME);]]></fo:block>
    +
    +							<fo:block font-size="11pt">There are some important things to keep in mind when using plain
    +								SQL: </fo:block>
    +							<fo:block padding-top="16pt" padding-bottom="16pt" page-break-inside="avoid">
    +<fo:list-block>
    +								<fo:list-item>
    +<fo:list-item-label>
    +<fo:block font-size="11pt" page-break-inside="avoid">-</fo:block>
    +</fo:list-item-label>
    +<fo:list-item-body start-indent="body-start()">
    +<fo:block font-size="11pt" page-break-inside="avoid">jOOQ doesn't know what you're doing. You're on your own again!
    +								</fo:block>
    +</fo:list-item-body>
    +</fo:list-item>
    +								<fo:list-item>
    +<fo:list-item-label>
    +<fo:block font-size="11pt" page-break-inside="avoid">-</fo:block>
    +</fo:list-item-label>
    +<fo:list-item-body start-indent="body-start()">
    +<fo:block font-size="11pt" page-break-inside="avoid">You have to provide something that will be syntactically correct.
    +									If it's not, then jOOQ won't know. Only your JDBC driver or your
    +									RDBMS will detect the syntax error. </fo:block>
    +</fo:list-item-body>
    +</fo:list-item>
    +								<fo:list-item>
    +<fo:list-item-label>
    +<fo:block font-size="11pt" page-break-inside="avoid">-</fo:block>
    +</fo:list-item-label>
    +<fo:list-item-body start-indent="body-start()">
    +<fo:block font-size="11pt" page-break-inside="avoid">You have to provide consistency when you use variable binding. The
    +									number of ? must match the number of variables </fo:block>
    +</fo:list-item-body>
    +</fo:list-item>
    +								<fo:list-item>
    +<fo:list-item-label>
    +<fo:block font-size="11pt" page-break-inside="avoid">-</fo:block>
    +</fo:list-item-label>
    +<fo:list-item-body start-indent="body-start()">
    +<fo:block font-size="11pt" page-break-inside="avoid">Your SQL is inserted into jOOQ queries without further checks.
    +									Hence, jOOQ can't prevent SQL injection. </fo:block>
    +</fo:list-item-body>
    +</fo:list-item>
    +							</fo:list-block>
    +</fo:block>
    +						<fo:block break-after="page"/>
    +<fo:block font-family="Georgia" font-size="18pt" padding-top="12pt" padding-bottom="12pt" page-break-after="avoid" id="ADVANCED">
    +<fo:marker marker-class-name="section">
    +<fo:block>4. Advanced topics</fo:block>
    +</fo:marker>4. Advanced topics</fo:block>
    +<fo:block font-size="11pt">In these sections you will learn about advanced concepts that
    +					you might not use every day</fo:block>
    +					<fo:block font-family="Georgia" font-size="16pt" padding-top="10pt" padding-bottom="10pt" page-break-after="avoid">Overview</fo:block>
    +					<fo:block font-size="11pt">This section covers some advanced topics and features that don't fit into any other section. </fo:block>
    +				<fo:block font-family="Georgia" font-size="18pt" padding-top="12pt" padding-bottom="12pt" page-break-after="avoid" id="MasterData">
    +<fo:marker marker-class-name="section">
    +<fo:block>4.1. Master data generation. Enumeration tables</fo:block>
    +</fo:marker>4.1. Master data generation. Enumeration tables</fo:block>
    +<fo:block font-size="11pt">Enumerations are a powerful concept. Unfortunately, almost no
    +							RDBMS supports them, leaving you to create numerous tables for your
    +							enumerated values. But these values are still enumerations!</fo:block>
    +							<fo:block font-family="Georgia" font-size="16pt" padding-top="10pt" padding-bottom="10pt" page-break-after="avoid">Enumeration tables</fo:block>
    +							<fo:block font-size="11pt">Only MySQL and Postgres databases support true ENUM types natively.
    +								Some other RDBMS allow you to map the concept of an ENUM data type to
    +								a CHECK constraint, but those constraints can contain arbitrary SQL.
    +								 With jOOQ, you
    +								can "simulate" ENUM types by declaring a table as a "master data
    +								table" in the configuration. At code-generation time, this table will
    +								be treated specially, and a Java enum type is generated from its data.
    +							</fo:block>
    +
    +							<fo:block font-family="Georgia" font-size="16pt" padding-top="10pt" padding-bottom="10pt" page-break-after="avoid">Configure master data tables</fo:block>
    +							<fo:block font-size="11pt">As previously discussed in the
    +							  <fo:basic-link font-size="11pt" color="#882222" font-weight="bold" text-shadow="0 1px 2px #666666" internal-destination="Configuration">configuration and setup</fo:basic-link>
    +							   section, you can configure master data tables as follows: </fo:block>
    +<fo:block font-family="Courier" linefeed-treatment="preserve" white-space-collapse="false" white-space-treatment="preserve" font-size="6pt" margin="12pt" padding="4pt" border="2px solid #882222" background-color="#FFEEDD" page-break-inside="avoid"><![CDATA[<!-- These properties can be added to the database element: -->
    +<database>
    +  <masterDataTables>
    +    <masterDataTable>
    +      <!-- The name of a master data table -->
    +      <name>[a table name]</name>
    +
    +      <!-- The column used for enum literals -->
    +      <literal>[a column name]</literal>
    +
    +      <!-- The column used for documentation -->
    +      <description>[a column name]</description>
    +    </masterDataTable>
    +
    +    [ <masterDataTable>...</masterDataTable> ... ]
    +  </masterDataTables>
    + </database>]]></fo:block>
    +
    +							<fo:block font-size="11pt">The results of this will be a Java enum that looks similar to this: </fo:block>
    +<fo:block font-family="Courier" linefeed-treatment="preserve" white-space-collapse="false" white-space-treatment="preserve" font-size="6pt" margin="12pt" padding="4pt" border="2px solid #882222" background-color="#FFEEDD" page-break-inside="avoid"><![CDATA[public enum TLanguage implements MasterDataType<Integer> {
    +
    +  /**
    +   * English
    +   */
    +  en(1, "en", "English"),
    +
    +  /**
    +   * Deutsch
    +   */
    +  de(2, "de", "Deutsch"),
    +
    +  /**
    +   * Français
    +   */
    +  fr(3, "fr", "Français"),
    +
    +  /**
    +   * null
    +   */
    +  pt(4, "pt", null),
    +  ;
    +
    +  private final Integer id;
    +  private final String cd;
    +  private final String description;
    +
    +  // [ ... constructor and getters for the above properties ]
    +}]]></fo:block>
    +
    +							<fo:block font-size="11pt">In the above example, you can see how the configured primary key is
    +								mapped to the id member, the configured literal column is mapped to
    +								the cd member and the configured description member is mapped to the
    +								description member and output as Javadoc. In other words, T_LANGUAGE
    +								is a table with 4 rows and at least three columns. </fo:block>
    +							<fo:block font-size="11pt">The general contract (with jOOQ 1.6.2+) is that there must be </fo:block>
    +							<fo:block padding-top="16pt" padding-bottom="16pt" page-break-inside="avoid">
    +<fo:list-block>
    +								<fo:list-item>
    +<fo:list-item-label>
    +<fo:block font-size="11pt" page-break-inside="avoid">-</fo:block>
    +</fo:list-item-label>
    +<fo:list-item-body start-indent="body-start()">
    +<fo:block font-size="11pt" page-break-inside="avoid"> A single-column primary key column of character or integer type
    +								</fo:block>
    +</fo:list-item-body>
    +</fo:list-item>
    +								<fo:list-item>
    +<fo:list-item-label>
    +<fo:block font-size="11pt" page-break-inside="avoid">-</fo:block>
    +</fo:list-item-label>
    +<fo:list-item-body start-indent="body-start()">
    +<fo:block font-size="11pt" page-break-inside="avoid">An optional unique literal column of character or integer type
    +									(otherwise, the primary key is used as enum literal) </fo:block>
    +</fo:list-item-body>
    +</fo:list-item>
    +								<fo:list-item>
    +<fo:list-item-label>
    +<fo:block font-size="11pt" page-break-inside="avoid">-</fo:block>
    +</fo:list-item-label>
    +<fo:list-item-body start-indent="body-start()">
    +<fo:block font-size="11pt" page-break-inside="avoid">An optional description column of any type </fo:block>
    +</fo:list-item-body>
    +</fo:list-item>
    +							</fo:list-block>
    +</fo:block>
    +
    +							<fo:block font-family="Georgia" font-size="16pt" padding-top="10pt" padding-bottom="10pt" page-break-after="avoid">Using MasterDataTypes</fo:block>
    +							<fo:block font-size="11pt">The point of MasterDataTypes in jOOQ is that they behave exactly
    +								like true ENUM types. When the above T_LANGUAGE table is referenced by
    +								T_BOOK, instead of generating foreign key navigation methods and a
    +								LANGUAGE_ID Field&lt;Integer&gt;, a Field&lt;TLanguage&gt; is
    +								generated: </fo:block>
    +
    +<fo:block font-family="Courier" linefeed-treatment="preserve" white-space-collapse="false" white-space-treatment="preserve" font-size="6pt" margin="12pt" padding="4pt" border="2px solid #882222" background-color="#FFEEDD" page-break-inside="avoid"><![CDATA[public class TBook extends UpdatableTableImpl<TBookRecord> {
    +
    +  // [...]
    +  public static final TableField<TBookRecord, TLanguage> LANGUAGE_ID =
    +                  new TableFieldImpl<TBookRecord, TLanguage>( /* ... */ );
    +}]]></fo:block>
    +
    +							<fo:block font-size="11pt">Which can then be used in the TBookRecord directly: </fo:block>
    +<fo:block font-family="Courier" linefeed-treatment="preserve" white-space-collapse="false" white-space-treatment="preserve" font-size="6pt" margin="12pt" padding="4pt" border="2px solid #882222" background-color="#FFEEDD" page-break-inside="avoid"><![CDATA[public class TBookRecord extends UpdatableRecordImpl<TBookRecord> {
    +
    +  // [...]
    +  public TLanguage getLanguageId() { // [...]
    +  public void setLanguageId(TLanguage value) { // [...]
    +}]]></fo:block>
    +
    +							<fo:block font-family="Georgia" font-size="16pt" padding-top="10pt" padding-bottom="10pt" page-break-after="avoid">When to use MasterDataTypes</fo:block>
    +							<fo:block font-size="11pt">You can use master data types when you're actually mapping master
    +								data to a Java enum. When the underlying table changes frequently,
    +								those updates will not be reflected by the statically generated code.
    +								Also, be aware that it will be difficult to perform actual JOIN
    +								operations on the underlying table with jOOQ, once the master data
    +								type is generated. </fo:block>
    +						<fo:block font-family="Georgia" font-size="18pt" padding-top="12pt" padding-bottom="12pt" page-break-after="avoid" id="CustomTypes">
    +<fo:marker marker-class-name="section">
    +<fo:block>4.2. Custom data types and type conversion</fo:block>
    +</fo:marker>4.2. Custom data types and type conversion</fo:block>
    +<fo:block font-size="11pt">
    +							SQL data types are very limited in number. While some databases offer
    +							enumeration types or user-defined types, others only ship with the SQL
    +							standard. Read this chapter to see how to use custom types with jOOQ
    +						</fo:block>
    +							<fo:block font-family="Georgia" font-size="16pt" padding-top="10pt" padding-bottom="10pt" page-break-after="avoid">Your custom type and its associated Converter</fo:block>
    +							<fo:block font-size="11pt">
    +								When using a custom type in jOOQ, you need to let jOOQ know about
    +								its associated <fo:basic-link font-size="11pt" color="#882222" font-weight="bold" text-shadow="0 1px 2px #666666" external-destination="url('http://www.jooq.org/javadoc/latest/org/jooq/Converter.html')">org.jooq.Converter</fo:basic-link>.
    +								A converter essentially has two generic type parameters:
    +							</fo:block>
    +							<fo:block padding-top="16pt" padding-bottom="16pt" page-break-inside="avoid">
    +<fo:list-block>
    +								<fo:list-item>
    +<fo:list-item-label>
    +<fo:block font-size="11pt" page-break-inside="avoid">-</fo:block>
    +</fo:list-item-label>
    +<fo:list-item-body start-indent="body-start()">
    +<fo:block font-size="11pt" page-break-inside="avoid">&lt;U&gt;: The user-defined Java type. This could be <fo:basic-link font-size="11pt" color="#882222" font-weight="bold" text-shadow="0 1px 2px #666666" external-destination="url('http://download.oracle.com/javase/6/docs/api/java/util/GregorianCalendar.html')">java.util.GregorianCalendar</fo:basic-link>, for instance.</fo:block>
    +</fo:list-item-body>
    +</fo:list-item>
    +								<fo:list-item>
    +<fo:list-item-label>
    +<fo:block font-size="11pt" page-break-inside="avoid">-</fo:block>
    +</fo:list-item-label>
    +<fo:list-item-body start-indent="body-start()">
    +<fo:block font-size="11pt" page-break-inside="avoid">&lt;T&gt;: The database / SQL type. This could be <fo:basic-link font-size="11pt" color="#882222" font-weight="bold" text-shadow="0 1px 2px #666666" external-destination="url('http://download.oracle.com/javase/6/docs/api/java/sql/Timestamp.html')">java.sql.Timestamp</fo:basic-link>, for instance.</fo:block>
    +</fo:list-item-body>
    +</fo:list-item>
    +							</fo:list-block>
    +</fo:block>
    +							<fo:block font-size="11pt">
    +								The above conversion implies that you may want to use a GregorianCalendar for
    +								SQL timestamps, rather than the timestamp type itself. You could then write
    +								a Converter like this:
    +							</fo:block>
    +
    +<fo:block font-family="Courier" linefeed-treatment="preserve" white-space-collapse="false" white-space-treatment="preserve" font-size="6pt" margin="12pt" padding="4pt" border="2px solid #882222" background-color="#FFEEDD" page-break-inside="avoid"><![CDATA[package com.example;
    +
    +import java.sql.Timestamp;
    +import java.util.Calendar;
    +import java.util.GregorianCalendar;
    +
    +import org.jooq.Converter;
    +
    +// Bind T to Timestamp and U to Gregorian calendar, here
    +public class CalendarConverter implements Converter<Timestamp, GregorianCalendar> {
    +
    +    // Provide jOOQ with Class<?> objects of <U> and <T>. These are used by
    +    // jOOQ to discover your converter based on your custom type
    +    // --------------------------------------------------------------------
    +    @Override
    +    public Class<Timestamp> fromType() {
    +        return Timestamp.class;
    +    }
    +
    +    @Override
    +    public Class<GregorianCalendar> toType() {
    +        return GregorianCalendar.class;
    +    }
    +
    +    // Implement the type conversion methods. Convert your user-defined type
    +    // "from" the SQL type when reading "from" the database, or "to" the SQL
    +    // type when writing "to" the database.
    +    @Override
    +    public GregorianCalendar from(Timestamp databaseObject) {
    +        GregorianCalendar calendar = (GregorianCalendar) Calendar.getInstance();
    +        calendar.setTimeInMillis(databaseObject.getTime());
    +        return calendar;
    +    }
    +
    +    @Override
    +    public Timestamp to(GregorianCalendar userObject) {
    +        return new Timestamp(userObject.getTime().getTime());
    +    }
    +}
    +]]></fo:block>
    +
    +							<fo:block font-size="11pt">
    +								Such a Converter can now be used in various places of the jOOQ
    +								API, especially when reading data from the database:
    +							</fo:block>
    +
    +<fo:block font-family="Courier" linefeed-treatment="preserve" white-space-collapse="false" white-space-treatment="preserve" font-size="6pt" margin="12pt" padding="4pt" border="2px solid #882222" background-color="#FFEEDD" page-break-inside="avoid"><![CDATA[List<GregorianCalendar> result =
    +create.select(T_AUTHOR.DATE_OF_BIRTH)
    +      .from(T_AUTHOR)
    +      .fetch(0, new CalendarConverter());]]></fo:block>
    +
    +      						<fo:block font-family="Georgia" font-size="16pt" padding-top="10pt" padding-bottom="10pt" page-break-after="avoid">Using Converters in generated code</fo:block>
    +      						<fo:block font-size="11pt">
    +								A more common use-case, however, is to let jOOQ know about custom
    +								types at code generation time. Use the following configuration elements
    +								to specify, that you'd like to use GregorianCalendar for all database
    +								fields that start with DATE_OF_
    +      						</fo:block>
    +
    +<fo:block font-family="Courier" linefeed-treatment="preserve" white-space-collapse="false" white-space-treatment="preserve" font-size="6pt" margin="12pt" padding="4pt" border="2px solid #882222" background-color="#FFEEDD" page-break-inside="avoid"><![CDATA[<database>
    +  <!-- First, register your custom types here -->
    +  <customTypes>
    +    <customType>
    +      <!-- Specify the fully-qualified class name of your custom type -->
    +      <name>java.util.GregorianCalendar</name>
    +
    +      <!-- Associate that custom type with your converter. Note, a
    +           custom type can only have one converter in jOOQ -->
    +      <converter>com.example.CalendarConverter</converter>
    +    </customType>
    +  </customTypes>
    +
    +  <!-- Then, associate custom types with database columns -->
    +  <forcedTypes>
    +    <forcedType>
    +      <!-- Specify again he fully-qualified class name of your custom type -->
    +      <name>java.util.GregorianCalendar</name>
    +
    +      <!-- Add a list of comma-separated regular expressions matching columns -->
    +      <expressions>.*\.DATE_OF_.*</expressions>
    +    </forcedType>
    +  </forcedTypes>
    +</database>]]></fo:block>
    +
    +                            <fo:block font-size="11pt">
    +                            	The above configuration will lead to T_AUTHOR.DATE_OF_BIRTH
    +                            	being generated like this:
    +                            </fo:block>
    +
    +<fo:block font-family="Courier" linefeed-treatment="preserve" white-space-collapse="false" white-space-treatment="preserve" font-size="6pt" margin="12pt" padding="4pt" border="2px solid #882222" background-color="#FFEEDD" page-break-inside="avoid">public class TAuthor extends UpdatableTableImpl&lt;TAuthorRecord&gt; {
    +
    +    // [...]
    +    public final TableField&lt;TAuthorRecord, GregorianCalendar&gt; DATE_OF_BIRTH =    // [...]
    +    // [...]
    +
    +}</fo:block>
    +
    +                            <fo:block font-size="11pt">
    +                            	This means that the bound of &lt;T&gt; will be GregorianCalendar,
    +                            	wherever you reference DATE_OF_BIRTH. jOOQ will use your custom
    +                            	converter when binding variables and when fetching data from
    +                            	<fo:basic-link font-size="11pt" color="#882222" font-weight="bold" text-shadow="0 1px 2px #666666" external-destination="url('http://download.oracle.com/javase/6/docs/api/java/util/ResultSet.html')">java.util.ResultSet</fo:basic-link>:
    +                            </fo:block>
    +
    +<fo:block font-family="Courier" linefeed-treatment="preserve" white-space-collapse="false" white-space-treatment="preserve" font-size="6pt" margin="12pt" padding="4pt" border="2px solid #882222" background-color="#FFEEDD" page-break-inside="avoid"><![CDATA[// Get all date of births of authors born after 1980
    +List<GregorianCalendar> result =
    +create.selectFrom(T_AUTHOR)
    +      .where(T_AUTHOR.DATE_OF_BIRTH.greaterThan(new GregorianCalendar(1980, 0, 1)))
    +      .fetch(T_AUTHOR.DATE_OF_BIRTH);]]></fo:block>
    +
    +      						<fo:block font-size="11pt">
    +      						    Read more about advanced code generation configuration in
    +      						    <fo:basic-link font-size="11pt" color="#882222" font-weight="bold" text-shadow="0 1px 2px #666666" internal-destination="AdvancedConfiguration">the manual's section about advanced code generation configuration</fo:basic-link>.
    +      						</fo:block>
    +
    +      						<fo:block font-family="Georgia" font-size="16pt" padding-top="10pt" padding-bottom="10pt" page-break-after="avoid">Using Converters for enum types</fo:block>
    +      						<fo:block font-size="11pt">
    +      							Java's Enum types can be very useful in SQL too.
    +      							Some databases support enumeration types natively (MySQL, Postgres).
    +      							In other cases, you can use the above custom type configuration
    +      							also to provide jOOQ with Converters for your custom Enum types.
    +      							Instead of implementing <fo:basic-link font-size="11pt" color="#882222" font-weight="bold" text-shadow="0 1px 2px #666666" external-destination="url('http://www.jooq.org/javadoc/latest/org/jooq/Converter.html')">org.jooq.Converter</fo:basic-link>,
    +      							you may choose to extend <fo:basic-link font-size="11pt" color="#882222" font-weight="bold" text-shadow="0 1px 2px #666666" external-destination="url('http://www.jooq.org/javadoc/latest/org/jooq/impl/EnumConverter.html')">org.jooq.impl.EnumConverter</fo:basic-link>
    +      							instead, which provides some enum-specific default behaviour.
    +      						</fo:block>
    +						<fo:block font-family="Georgia" font-size="18pt" padding-top="12pt" padding-bottom="12pt" page-break-after="avoid" id="SchemaMapping">
    +<fo:marker marker-class-name="section">
    +<fo:block>4.3. Mapping generated schemata and tables</fo:block>
    +</fo:marker>4.3. Mapping generated schemata and tables</fo:block>
    +<fo:block font-size="11pt">
    +							Sometimes, you cannot control productive schema names, because your
    +							application is deployed on a shared host, and you only get one schema
    +							to work with.
    +						</fo:block>
    +							<fo:block font-family="Georgia" font-size="16pt" padding-top="10pt" padding-bottom="10pt" page-break-after="avoid">Mapping your DEV schema to a productive environment</fo:block>
    +							<fo:block font-size="11pt">You may wish to design your database in a way that you have several
    +								instances of your schema. This is useful when you want to cleanly
    +								separate data belonging to several customers / organisation units /
    +								branches / users and put each of those entities' data in a separate
    +								database or schema. </fo:block>
    +							<fo:block font-size="11pt">In our T_AUTHOR example this would mean that you provide a book
    +								reference database to several companies, such as My Book World and
    +								Books R Us. In that case, you'll probably have a schema setup like
    +								this: </fo:block>
    +							<fo:block padding-top="16pt" padding-bottom="16pt" page-break-inside="avoid">
    +<fo:list-block>
    +								<fo:list-item>
    +<fo:list-item-label>
    +<fo:block font-size="11pt" page-break-inside="avoid">-</fo:block>
    +</fo:list-item-label>
    +<fo:list-item-body start-indent="body-start()">
    +<fo:block font-size="11pt" page-break-inside="avoid">DEV: Your development schema. This will be the schema that you
    +									base code generation upon, with jOOQ </fo:block>
    +</fo:list-item-body>
    +</fo:list-item>
    +								<fo:list-item>
    +<fo:list-item-label>
    +<fo:block font-size="11pt" page-break-inside="avoid">-</fo:block>
    +</fo:list-item-label>
    +<fo:list-item-body start-indent="body-start()">
    +<fo:block font-size="11pt" page-break-inside="avoid">MY_BOOK_WORLD: The schema instance for My Book World </fo:block>
    +</fo:list-item-body>
    +</fo:list-item>
    +								<fo:list-item>
    +<fo:list-item-label>
    +<fo:block font-size="11pt" page-break-inside="avoid">-</fo:block>
    +</fo:list-item-label>
    +<fo:list-item-body start-indent="body-start()">
    +<fo:block font-size="11pt" page-break-inside="avoid">BOOKS_R_US: The schema instance for Books R Us </fo:block>
    +</fo:list-item-body>
    +</fo:list-item>
    +							</fo:list-block>
    +</fo:block>
    +
    +
    +							<fo:block font-family="Georgia" font-size="16pt" padding-top="10pt" padding-bottom="10pt" page-break-after="avoid">Mapping DEV to MY_BOOK_WORLD with jOOQ</fo:block>
    +							<fo:block font-size="11pt">When a user from My Book World logs in, you want them to access the
    +								MY_BOOK_WORLD schema using classes generated from DEV. This can be
    +								achieved with the
    +								<fo:basic-link font-size="11pt" color="#882222" font-weight="bold" text-shadow="0 1px 2px #666666" external-destination="url('http://www.jooq.org/javadoc/latest/org/jooq/conf/RenderMapping.html')">org.jooq.conf.RenderMapping</fo:basic-link>
    +								class, that you can equip your Factory's settings
    +								with. Take the following example: </fo:block>
    +
    +<fo:block font-family="Courier" linefeed-treatment="preserve" white-space-collapse="false" white-space-treatment="preserve" font-size="6pt" margin="12pt" padding="4pt" border="2px solid #882222" background-color="#FFEEDD" page-break-inside="avoid">Settings settings = new Settings()
    +    .withRenderMapping(new RenderMapping()
    +    .withSchemata(
    +        new MappedSchema().withInput("DEV")
    +                          .withOutput("MY_BOOK_WORLD")));
    +
    +// Add the settings to the factory
    +Factory create = new Factory(connection, SQLDialect.ORACLE, settings);
    +
    +// Run queries with the "mapped" factory
    +create.selectFrom(T_AUTHOR).fetch();</fo:block>
    +
    +							<fo:block font-size="11pt">The query executed with a Factory equipped with the above mapping
    +								will in fact produce this SQL statement: </fo:block>
    +							<fo:block font-family="Courier" linefeed-treatment="preserve" white-space-collapse="false" white-space-treatment="preserve" font-size="6pt" margin="12pt" padding="4pt" border="2px solid #882222" background-color="#FFEEDD" page-break-inside="avoid">SELECT * FROM MY_BOOK_WORLD.T_AUTHOR</fo:block>
    +							<fo:block font-size="11pt">Even if T_AUTHOR was generated from DEV. </fo:block>
    +
    +							<fo:block font-family="Georgia" font-size="16pt" padding-top="10pt" padding-bottom="10pt" page-break-after="avoid">Mapping several schemata</fo:block>
    +							<fo:block font-size="11pt">Your development database may not be restricted to hold only one DEV
    +								schema. You may also have a LOG schema and a MASTER schema. Let's say
    +								the MASTER schema is shared among all customers, but each customer has
    +								their own LOG schema instance. Then you can enhance your RenderMapping
    +								like this (e.g. using an XML configuration file): </fo:block>
    +
    +<fo:block font-family="Courier" linefeed-treatment="preserve" white-space-collapse="false" white-space-treatment="preserve" font-size="6pt" margin="12pt" padding="4pt" border="2px solid #882222" background-color="#FFEEDD" page-break-inside="avoid"><![CDATA[<settings xmlns="http://www.jooq.org/xsd/jooq-runtime-2.1.0.xsd">
    +  <renderMapping>
    +    <schemata>
    +      <schema>
    +        <input>DEV</input>
    +        <output>MY_BOOK_WORLD</output>
    +      </schema>
    +      <schema>
    +        <input>LOG</input>
    +        <output>MY_BOOK_WORLD_LOG</output>
    +      </schema>
    +    </schemata>
    +  </renderMapping>
    +</settings>]]></fo:block>
    +
    +                            <fo:block font-size="11pt">Note, you can load the above XML file like this:</fo:block>
    +
    +<fo:block font-family="Courier" linefeed-treatment="preserve" white-space-collapse="false" white-space-treatment="preserve" font-size="6pt" margin="12pt" padding="4pt" border="2px solid #882222" background-color="#FFEEDD" page-break-inside="avoid">Settings settings = JAXB.unmarshal(new File("jooq-runtime.xml"), Settings.class);</fo:block>
    +
    +							<fo:block font-size="11pt">This will map generated classes from DEV to MY_BOOK_WORLD, from LOG
    +								to MY_BOOK_WORLD_LOG, but leave the MASTER schema alone. Whenever you
    +								want to change your mapping configuration, you will have to create a
    +								new Factory</fo:block>
    +
    +
    +							<fo:block font-family="Georgia" font-size="16pt" padding-top="10pt" padding-bottom="10pt" page-break-after="avoid">Using a default schema</fo:block>
    +							<fo:block font-size="11pt">Another option to switch schema names is to use a default schema for
    +								the Factory's underlying Connection. Many RDBMS support a USE or SET
    +								SCHEMA command, which you can call like this: </fo:block>
    +
    +<fo:block font-family="Courier" linefeed-treatment="preserve" white-space-collapse="false" white-space-treatment="preserve" font-size="6pt" margin="12pt" padding="4pt" border="2px solid #882222" background-color="#FFEEDD" page-break-inside="avoid">// Set the default schema
    +Schema MY_BOOK_WORLD = ...
    +create.use(MY_BOOK_WORLD);
    +
    +// Run queries with factory having a default schema
    +create.selectFrom(T_AUTHOR).fetch();</fo:block>
    +							<fo:block font-size="11pt">Queries generated from the above Factory will produce this kind of SQL statement: </fo:block>
    +
    +<fo:block font-family="Courier" linefeed-treatment="preserve" white-space-collapse="false" white-space-treatment="preserve" font-size="6pt" margin="12pt" padding="4pt" border="2px solid #882222" background-color="#FFEEDD" page-break-inside="avoid">-- the schema name is omitted from all SQL constructs.
    +SELECT * FROM T_AUTHOR</fo:block>
    +
    +
    +							<fo:block font-family="Georgia" font-size="16pt" padding-top="10pt" padding-bottom="10pt" page-break-after="avoid">Mapping of tables</fo:block>
    +							<fo:block font-size="11pt">Not only schemata can be mapped, but also tables. If you are not the
    +								owner of the database your application connects to, you might need to
    +								install your schema with some sort of prefix to every table. In our
    +								examples, this might mean that you will have to map DEV.T_AUTHOR to
    +								something MY_BOOK_WORLD.MY_APP__T_AUTHOR, where MY_APP__ is a prefix
    +								applied to all of your tables. This can be achieved by creating the
    +								following mapping: </fo:block>
    +
    +<fo:block font-family="Courier" linefeed-treatment="preserve" white-space-collapse="false" white-space-treatment="preserve" font-size="6pt" margin="12pt" padding="4pt" border="2px solid #882222" background-color="#FFEEDD" page-break-inside="avoid">Settings settings = new Settings()
    +    .withRenderMapping(new RenderMapping()
    +    .withSchemata(
    +        new MappedSchema().withInput("DEV")
    +                          .withOutput("MY_BOOK_WORLD")
    +                          .withTables(
    +         new MappedTable().withInput("T_AUTHOR")
    +                          .withOutput("MY_APP__T_AUTHOR"))));
    +
    +// Add the settings to the factory
    +Factory create = new Factory(connection, SQLDialect.ORACLE, settings);
    +
    +// Run queries with the "mapped" factory
    +create.selectFrom(T_AUTHOR).fetch();</fo:block>
    +
    +							<fo:block font-size="11pt">The query executed with a Factory equipped with the above mapping will in fact produce this SQL statement: </fo:block>
    +<fo:block font-family="Courier" linefeed-treatment="preserve" white-space-collapse="false" white-space-treatment="preserve" font-size="6pt" margin="12pt" padding="4pt" border="2px solid #882222" background-color="#FFEEDD" page-break-inside="avoid">SELECT * FROM MY_BOOK_WORLD.MY_APP__T_AUTHOR</fo:block>
    +
    +							<fo:block font-family="Georgia" font-size="16pt" padding-top="10pt" padding-bottom="10pt" page-break-after="avoid">Mapping at code generation time</fo:block>
    +							<fo:block font-size="11pt">
    +								Note that you can also hard-wire schema mapping in generated artefacts
    +								at code generation time, e.g. when you have 5 developers with their own
    +								dedicated developer databases, and a common integration database. In the
    +								code generation configuration, you would then write.
    +							</fo:block>
    +<fo:block font-family="Courier" linefeed-treatment="preserve" white-space-collapse="false" white-space-treatment="preserve" font-size="6pt" margin="12pt" padding="4pt" border="2px solid #882222" background-color="#FFEEDD" page-break-inside="avoid"><![CDATA[<schemata>
    +  <schema>
    +    <!-- Use this as the developer's schema: -->
    +    <inputSchema>LUKAS_DEV_SCHEMA</inputSchema>
    +
    +    <!-- Use this as the integration / production database: -->
    +    <outputSchema>PROD</outputSchema>
    +  </schema>
    +</schemata>]]></fo:block>
    +							<fo:block font-size="11pt">
    +								See the manual's section about
    +								<fo:basic-link font-size="11pt" color="#882222" font-weight="bold" text-shadow="0 1px 2px #666666" internal-destination="META">jooq-codegen configuration</fo:basic-link>
    +								for more details
    +							</fo:block>
    +						<fo:block font-family="Georgia" font-size="18pt" padding-top="12pt" padding-bottom="12pt" page-break-after="avoid" id="ExecuteListener">
    +<fo:marker marker-class-name="section">
    +<fo:block>4.4. Execute listeners and the jOOQ Console</fo:block>
    +</fo:marker>4.4. Execute listeners and the jOOQ Console</fo:block>
    +<fo:block font-size="11pt">
    +							Feel the heart beat of your SQL statements at a very low level using listeners
    +						</fo:block>
    +							<fo:block font-family="Georgia" font-size="16pt" padding-top="10pt" padding-bottom="10pt" page-break-after="avoid">ExecuteListener</fo:block>
    +							<fo:block font-size="11pt">
    +								The <fo:basic-link font-size="11pt" color="#882222" font-weight="bold" text-shadow="0 1px 2px #666666" internal-destination="Factory">jOOQ Factory Settings</fo:basic-link>
    +								let you specify a list of <fo:basic-link font-size="11pt" color="#882222" font-weight="bold" text-shadow="0 1px 2px #666666" external-destination="url('http://www.jooq.org/javadoc/latest/org/jooq/ExecuteListener.html')">org.jooq.ExecuteListener</fo:basic-link> classes.
    +								The ExecuteListener is essentially an event listener for
    +								Query, Routine, or ResultSet render, prepare, bind, execute, fetch steps. It is a
    +								base type for loggers, debuggers, profilers, data collectors. Advanced ExecuteListeners
    +								can also provide custom implementations of Connection, PreparedStatement and ResultSet
    +								to jOOQ in apropriate methods. For convenience, consider extending
    +								<fo:basic-link font-size="11pt" color="#882222" font-weight="bold" text-shadow="0 1px 2px #666666" external-destination="url('http://www.jooq.org/javadoc/latest/org/jooq/impl/DefaultExecuteListener.html')">org.jooq.impl.DefaultExecuteListener</fo:basic-link>
    +								instead of implementing this interface.
    +							</fo:block>
    +							<fo:block font-size="11pt">
    +								Here is a sample implementation of an ExecuteListener, that is simply counting
    +								the number of queries per type that are being executed using jOOQ:
    +							</fo:block>
    +
    +<fo:block font-family="Courier" linefeed-treatment="preserve" white-space-collapse="false" white-space-treatment="preserve" font-size="6pt" margin="12pt" padding="4pt" border="2px solid #882222" background-color="#FFEEDD" page-break-inside="avoid"><![CDATA[package com.example;
    +
    +public class StatisticsListener extends DefaultExecuteListener {
    +    public static Map<ExecuteType, Integer> STATISTICS = new HashMap<ExecuteType, Integer>();
    +
    +    // Count "start" events for every type of query executed by jOOQ
    +    @Override
    +    public void start(ExecuteContext ctx) {
    +        Integer count = STATISTICS.get(ctx.type());
    +
    +        if (count == null) {
    +            count = 0;
    +        }
    +
    +        STATISTICS.put(ctx.type(), count + 1);
    +    }
    +}]]></fo:block>
    +
    +							<fo:block font-size="11pt">
    +								Now, configure jOOQ's runtime to load your listener
    +							</fo:block>
    +
    +<fo:block font-family="Courier" linefeed-treatment="preserve" white-space-collapse="false" white-space-treatment="preserve" font-size="6pt" margin="12pt" padding="4pt" border="2px solid #882222" background-color="#FFEEDD" page-break-inside="avoid"><![CDATA[<settings>
    +  <executeListeners>
    +    <executeListener>com.example.StatisticsListener</executeListener>
    +  </executeListeners>
    +</settings>]]></fo:block>
    +
    +							<fo:block font-size="11pt">
    +								And log results any time with a snippet like this:
    +							</fo:block>
    +
    +<fo:block font-family="Courier" linefeed-treatment="preserve" white-space-collapse="false" white-space-treatment="preserve" font-size="6pt" margin="12pt" padding="4pt" border="2px solid #882222" background-color="#FFEEDD" page-break-inside="avoid"><![CDATA[log.info("STATISTICS");
    +log.info("----------");
    +
    +for (ExecuteType type : ExecuteType.values()) {
    +    log.info(type.name(), StatisticsListener.STATISTICS.get(type) + " executions");
    +}]]></fo:block>
    +                            <fo:block font-size="11pt">
    +                            	This may result in the following log output:
    +                            </fo:block>
    +
    +<fo:block font-family="Courier" linefeed-treatment="preserve" white-space-collapse="false" white-space-treatment="preserve" font-size="6pt" margin="12pt" padding="4pt" border="2px solid #882222" background-color="#FFEEDD" page-break-inside="avoid">15:16:52,982  INFO - TEST STATISTICS
    +15:16:52,982  INFO - ---------------
    +15:16:52,983  INFO - READ                     : 919 executions
    +15:16:52,983  INFO - WRITE                    : 117 executions
    +15:16:52,983  INFO - DDL                      : 2 executions
    +15:16:52,983  INFO - BATCH                    : 4 executions
    +15:16:52,983  INFO - ROUTINE                  : 21 executions
    +15:16:52,983  INFO - OTHER                    : 30 executions</fo:block>
    +							<fo:block font-size="11pt">
    +								Please read the
    +								<fo:basic-link font-size="11pt" color="#882222" font-weight="bold" text-shadow="0 1px 2px #666666" external-destination="url('http://www.jooq.org/javadoc/latest/org/jooq/ExecuteListener.html')">ExecuteListener Javadoc</fo:basic-link>
    +								for more details
    +							</fo:block>
    +
    +							<fo:block font-family="Georgia" font-size="16pt" padding-top="10pt" padding-bottom="10pt" page-break-after="avoid">jOOQ Console</fo:block>
    +							<fo:block font-size="11pt">
    +							    The ExecuteListener API was driven by a feature request by Christopher Deckers, who has
    +							    had the courtesy to contribute the jOOQ Console, a sample application interfacing
    +							    with jOOQ's ExecuteListeners. The jOOQ Console logs all queries executed by jOOQ and
    +							    displays them nicely in a Swing application. With the jOOQ Console's logger, you can:
    +						    </fo:block>
    +						    <fo:block padding-top="16pt" padding-bottom="16pt" page-break-inside="avoid">
    +<fo:list-block>
    +						    	<fo:list-item>
    +<fo:list-item-label>
    +<fo:block font-size="11pt" page-break-inside="avoid">-</fo:block>
    +</fo:list-item-label>
    +<fo:list-item-body start-indent="body-start()">
    +<fo:block font-size="11pt" page-break-inside="avoid">Activate the console's DebugListener anytime (in-process or if the remote server is active).</fo:block>
    +</fo:list-item-body>
    +</fo:list-item>
    +						    	<fo:list-item>
    +<fo:list-item-label>
    +<fo:block font-size="11pt" page-break-inside="avoid">-</fo:block>
    +</fo:list-item-label>
    +<fo:list-item-body start-indent="body-start()">
    +<fo:block font-size="11pt" page-break-inside="avoid">View simple and batch queries and their parameters.</fo:block>
    +</fo:list-item-body>
    +</fo:list-item>
    +						    	<fo:list-item>
    +<fo:list-item-label>
    +<fo:block font-size="11pt" page-break-inside="avoid">-</fo:block>
    +</fo:list-item-label>
    +<fo:list-item-body start-indent="body-start()">
    +<fo:block font-size="11pt" page-break-inside="avoid">Reformat queries along with syntax highlighting for better readability.</fo:block>
    +</fo:list-item-body>
    +</fo:list-item>
    +						    	<fo:list-item>
    +<fo:list-item-label>
    +<fo:block font-size="11pt" page-break-inside="avoid">-</fo:block>
    +</fo:list-item-label>
    +<fo:list-item-body start-indent="body-start()">
    +<fo:block font-size="11pt" page-break-inside="avoid">View stack trace of originator of the call.</fo:block>
    +</fo:list-item-body>
    +</fo:list-item>
    +						    	<fo:list-item>
    +<fo:list-item-label>
    +<fo:block font-size="11pt" page-break-inside="avoid">-</fo:block>
    +</fo:list-item-label>
    +<fo:list-item-body start-indent="body-start()">
    +<fo:block font-size="11pt" page-break-inside="avoid">Dump the stack to stdout when in an IDE, to directly navigate to relevant classes.</fo:block>
    +</fo:list-item-body>
    +</fo:list-item>
    +						    	<fo:list-item>
    +<fo:list-item-label>
    +<fo:block font-size="11pt" page-break-inside="avoid">-</fo:block>
    +</fo:list-item-label>
    +<fo:list-item-body start-indent="body-start()">
    +<fo:block font-size="11pt" page-break-inside="avoid">Track execution time, binding time, parsing time, rows read, fields read.</fo:block>
    +</fo:list-item-body>
    +</fo:list-item>
    +						    	<fo:list-item>
    +<fo:list-item-label>
    +<fo:block font-size="11pt" page-break-inside="avoid">-</fo:block>
    +</fo:list-item-label>
    +<fo:list-item-body start-indent="body-start()">
    +<fo:block font-size="11pt" page-break-inside="avoid">Show/hide queries depending on their type (SELECT, UPDATE, etc.).</fo:block>
    +</fo:list-item-body>
    +</fo:list-item>
    +						    	<fo:list-item>
    +<fo:list-item-label>
    +<fo:block font-size="11pt" page-break-inside="avoid">-</fo:block>
    +</fo:list-item-label>
    +<fo:list-item-body start-indent="body-start()">
    +<fo:block font-size="11pt" page-break-inside="avoid">Sort any column (timing columns, queries, types, etc.)</fo:block>
    +</fo:list-item-body>
    +</fo:list-item>
    +						    	<fo:list-item>
    +<fo:list-item-label>
    +<fo:block font-size="11pt" page-break-inside="avoid">-</fo:block>
    +</fo:list-item-label>
    +<fo:list-item-body start-indent="body-start()">
    +<fo:block font-size="11pt" page-break-inside="avoid">Easy copy paste of rows/columns to Spreadsheet editors.</fo:block>
    +</fo:list-item-body>
    +</fo:list-item>
    +						    </fo:list-block>
    +</fo:block>
    +
    +						    <fo:block font-size="11pt">
    +						    	A short overview of such a debugging session can be seen here:
    +						    </fo:block>
    +   							<fo:block font-size="11pt">
    +								<fo:block text-align="center">
    +<fo:external-graphic padding-top="10pt" padding-bottom="10pt" src="url('C:/Users/lukas/workspace/jOOQ-website/img/jooq-console-01.png')"/>
    +</fo:block>
    +							</fo:block>
    +						    <fo:block font-size="11pt">
    +							    Please note that the jOOQ Console is still experimental.
    +							    Any feedback is very welcome on
    +							    <fo:basic-link font-size="11pt" color="#882222" font-weight="bold" text-shadow="0 1px 2px #666666" external-destination="url('http://groups.google.com/group/jooq-user')">the jooq-user group</fo:basic-link>
    +							</fo:block>
    +							<fo:block font-family="Georgia" font-size="16pt" padding-top="10pt" padding-bottom="10pt" page-break-after="avoid">jOOQ Console operation modes</fo:block>
    +							<fo:block font-size="11pt">
    +								The jOOQ Console can be run in two different modes:
    +							</fo:block>
    +							<fo:block padding-top="16pt" padding-bottom="16pt" page-break-inside="avoid">
    +<fo:list-block>
    +								<fo:list-item>
    +<fo:list-item-label>
    +<fo:block font-size="11pt" page-break-inside="avoid">-</fo:block>
    +</fo:list-item-label>
    +<fo:list-item-body start-indent="body-start()">
    +<fo:block font-size="11pt" page-break-inside="avoid">In-process mode: running in the same process as the queries you're analysing</fo:block>
    +</fo:list-item-body>
    +</fo:list-item>
    +								<fo:list-item>
    +<fo:list-item-label>
    +<fo:block font-size="11pt" page-break-inside="avoid">-</fo:block>
    +</fo:list-item-label>
    +<fo:list-item-body start-indent="body-start()">
    +<fo:block font-size="11pt" page-break-inside="avoid">"headless" mode: running remotely</fo:block>
    +</fo:list-item-body>
    +</fo:list-item>
    +							</fo:list-block>
    +</fo:block>
    +
    +							<fo:block font-size="11pt">
    +								Both modes will require that you set the
    +								<fo:basic-link font-size="11pt" color="#882222" font-weight="bold" text-shadow="0 1px 2px #666666" external-destination="url('http://www.jooq.org/javadoc/latest/org/jooq/debug/DebugListener.html')">org.jooq.debug.DebugListener</fo:basic-link>
    +								in the Factory's settings. When using XML settings:
    +							</fo:block>
    +
    +<fo:block font-family="Courier" linefeed-treatment="preserve" white-space-collapse="false" white-space-treatment="preserve" font-size="6pt" margin="12pt" padding="4pt" border="2px solid #882222" background-color="#FFEEDD" page-break-inside="avoid"><![CDATA[<settings>
    +  <executeListeners>
    +    <executeListener>org.jooq.debug.DebugListener</executeListener>
    +  </executeListeners>
    +</settings>]]></fo:block>
    +
    +							<fo:block font-size="11pt">
    +								Or when using programmatic settings:
    +							</fo:block>
    +<fo:block font-family="Courier" linefeed-treatment="preserve" white-space-collapse="false" white-space-treatment="preserve" font-size="6pt" margin="12pt" padding="4pt" border="2px solid #882222" background-color="#FFEEDD" page-break-inside="avoid"><![CDATA[Settings settings = new Settings()
    +    .getExecuteListeners().add("org.jooq.debug.DebugListener");
    +Factory factory = new Factory(connection, dialect, settings);]]></fo:block>
    +
    +							<fo:block font-family="Georgia" font-size="16pt" padding-top="10pt" padding-bottom="10pt" page-break-after="avoid">In-process mode</fo:block>
    +							<fo:block font-size="11pt">
    +								The in-process mode is useful for Swing applications or other,
    +								locally run Java programs accessing the database via jOOQ.
    +								In order to launch the jOOQ Console "in-process", specify the
    +								previously documented settings and launch the Console as follows:
    +							</fo:block>
    +
    +<fo:block font-family="Courier" linefeed-treatment="preserve" white-space-collapse="false" white-space-treatment="preserve" font-size="6pt" margin="12pt" padding="4pt" border="2px solid #882222" background-color="#FFEEDD" page-break-inside="avoid"><![CDATA[// Define a DatabaseDescriptor for the "in-process" mode
    +// It is needed for the "Editor" tab
    +DatabaseDescriptor descriptor = new DatabaseDescriptor() {
    +
    +    // Return your generated schema. This is used by the console
    +    // to introspect your schema data
    +    @Override
    +    public Schema getSchema() {
    +        return com.example.MySchema.MY_SCHEMA;
    +    }
    +
    +    // Return the SQL dialect that you're using
    +    @Override
    +    public SQLDialect getSQLDialect() {
    +        return SQLDialect.ORACLE;
    +    }
    +
    +    // Return a connection
    +    @Override
    +    public Connection createConnection() {
    +        try {
    +            return DriverManager.getConnection("jdbc:oracle:thin:@localhost:1521:xe", "test", "test");
    +        }
    +        catch (Exception ignore) {}
    +    }
    +};
    +
    +// Now pass this database descriptor to the Console and make it visible
    +try {
    +
    +    // Use this for a nicer look-and-feel
    +    UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName());
    +
    +    // Create a new Console
    +    Console console = new Console(descriptor, true);
    +    console.setLoggingActive(true);
    +    console.setVisible(true);
    +}
    +catch (Exception ignore) {}
    +]]></fo:block>
    +
    +							<fo:block font-size="11pt">
    +								Only in the in-process mode, you can execute ad-hoc queries directly
    +								from the console, if you provide it with proper DatabaseDescriptor.
    +								These queries are executed from the Editor pane which features:
    +							</fo:block>
    +							<fo:block padding-top="16pt" padding-bottom="16pt" page-break-inside="avoid">
    +<fo:list-block>
    +								<fo:list-item>
    +<fo:list-item-label>
    +<fo:block font-size="11pt" page-break-inside="avoid">-</fo:block>
    +</fo:list-item-label>
    +<fo:list-item-body start-indent="body-start()">
    +<fo:block font-size="11pt" page-break-inside="avoid">SQL editing within the console.</fo:block>
    +</fo:list-item-body>
    +</fo:list-item>
    +								<fo:list-item>
    +<fo:list-item-label>
    +<fo:block font-size="11pt" page-break-inside="avoid">-</fo:block>
    +</fo:list-item-label>
    +<fo:list-item-body start-indent="body-start()">
    +<fo:block font-size="11pt" page-break-inside="avoid">Incremental search on tables.</fo:block>
    +</fo:list-item-body>
    +</fo:list-item>
    +								<fo:list-item>
    +<fo:list-item-label>
    +<fo:block font-size="11pt" page-break-inside="avoid">-</fo:block>
    +</fo:list-item-label>
    +<fo:list-item-body start-indent="body-start()">
    +<fo:block font-size="11pt" page-break-inside="avoid">Simple code completion with tables/columns/SQL keywords.</fo:block>
    +</fo:list-item-body>
    +</fo:list-item>
    +								<fo:list-item>
    +<fo:list-item-label>
    +<fo:block font-size="11pt" page-break-inside="avoid">-</fo:block>
    +</fo:list-item-label>
    +<fo:list-item-body start-indent="body-start()">
    +<fo:block font-size="11pt" page-break-inside="avoid">Syntax highlighting and formatting capabilities.</fo:block>
    +</fo:list-item-body>
    +</fo:list-item>
    +								<fo:list-item>
    +<fo:list-item-label>
    +<fo:block font-size="11pt" page-break-inside="avoid">-</fo:block>
    +</fo:list-item-label>
    +<fo:list-item-body start-indent="body-start()">
    +<fo:block font-size="11pt" page-break-inside="avoid">Results shown in one or several tabs.</fo:block>
    +</fo:list-item-body>
    +</fo:list-item>
    +								<fo:list-item>
    +<fo:list-item-label>
    +<fo:block font-size="11pt" page-break-inside="avoid">-</fo:block>
    +</fo:list-item-label>
    +<fo:list-item-body start-indent="body-start()">
    +<fo:block font-size="11pt" page-break-inside="avoid">Easy analysis of Logger output by copy/pasting/running queries in the Editor.</fo:block>
    +</fo:list-item-body>
    +</fo:list-item>
    +							</fo:list-block>
    +</fo:block>
    +   							<fo:block font-size="11pt">
    +								<fo:block text-align="center">
    +<fo:external-graphic padding-top="10pt" padding-bottom="10pt" src="url('C:/Users/lukas/workspace/jOOQ-website/img/jooq-console-02.png')"/>
    +</fo:block>
    +							</fo:block>
    +
    +                            <fo:block font-family="Georgia" font-size="16pt" padding-top="10pt" padding-bottom="10pt" page-break-after="avoid">"Headless" mode</fo:block>
    +							<fo:block font-size="11pt">
    +								In J2EE or other server/client environments, you may not be able
    +								to run the console in the same process as your application. You
    +								can then run the jOOQ Console in "headless" mode. In addition to
    +								the previously documented settings, you'll have to start a
    +								debugger server in your application process, that the console can
    +								connect to:
    +							</fo:block>
    +
    +<fo:block font-family="Courier" linefeed-treatment="preserve" white-space-collapse="false" white-space-treatment="preserve" font-size="6pt" margin="12pt" padding="4pt" border="2px solid #882222" background-color="#FFEEDD" page-break-inside="avoid">// Create a new RemoteDebuggerServer in your application that listens to
    +// incoming connections on a given port
    +SERVER = new RemoteDebuggerServer(DEBUGGER_PORT);</fo:block>
    +
    +							<fo:block font-size="11pt">
    +								Now start your application along with the debugger server
    +								and launch the console with this command:
    +							</fo:block>
    +
    +<fo:block font-family="Courier" linefeed-treatment="preserve" white-space-collapse="false" white-space-treatment="preserve" font-size="6pt" margin="12pt" padding="4pt" border="2px solid #882222" background-color="#FFEEDD" page-break-inside="avoid">java -jar jooq-console-2.1.0.jar [host] [port]</fo:block>
    +
    +							<fo:block font-size="11pt">
    +								Depending on your distribution, you may have to manually add
    +								rsyntaxtextarea-1.5.0.jar and jOOQ artefacts on your classpath.
    +							</fo:block>
    +						<fo:block font-family="Georgia" font-size="18pt" padding-top="12pt" padding-bottom="12pt" page-break-after="avoid" id="OracleHints">
    +<fo:marker marker-class-name="section">
    +<fo:block>4.5. Adding Oracle hints to queries</fo:block>
    +</fo:marker>4.5. Adding Oracle hints to queries</fo:block>
    +<fo:block font-size="11pt">
    +							Oracle has a powerful syntax to add hints as comments directly in your SQL
    +						</fo:block>
    +							<fo:block font-family="Georgia" font-size="16pt" padding-top="10pt" padding-bottom="10pt" page-break-after="avoid">How to embed Oracle hints in SELECT</fo:block>
    +							<fo:block font-size="11pt">If you are closely coupling your application to an Oracle database,
    +								you might need to be able to pass hints of the form /*+HINT*/ with
    +								your SQL statements to the Oracle database. For example: </fo:block>
    +<fo:block font-family="Courier" linefeed-treatment="preserve" white-space-collapse="false" white-space-treatment="preserve" font-size="6pt" margin="12pt" padding="4pt" border="2px solid #882222" background-color="#FFEEDD" page-break-inside="avoid">SELECT /*+ALL_ROWS*/ FIRST_NAME, LAST_NAME
    +  FROM T_AUTHOR</fo:block>
    +
    +  							<fo:block font-size="11pt">This can be done in jOOQ using the .hint() clause in your SELECT statement: </fo:block>
    +<fo:block font-family="Courier" linefeed-treatment="preserve" white-space-collapse="false" white-space-treatment="preserve" font-size="6pt" margin="12pt" padding="4pt" border="2px solid #882222" background-color="#FFEEDD" page-break-inside="avoid">create.select(FIRST_NAME, LAST_NAME)
    +      .hint("/*+ALL_ROWS*/")
    +      .from(T_AUTHOR);</fo:block>
    +
    +							<fo:block font-size="11pt">Note that you can pass any string in the .hint() clause. If you use
    +								that clause, the passed string will always be put in between the
    +								SELECT [DISTINCT] keywords and the actual projection list </fo:block>
    +						<fo:block font-family="Georgia" font-size="18pt" padding-top="12pt" padding-bottom="12pt" page-break-after="avoid" id="CONNECTBY">
    +<fo:marker marker-class-name="section">
    +<fo:block>4.6. The Oracle CONNECT BY clause</fo:block>
    +</fo:marker>4.6. The Oracle CONNECT BY clause</fo:block>
    +<fo:block font-size="11pt">
    +							Hierarchical queries are supported by many RDBMS using the WITH clause.
    +							Oracle has a very neat and much less verbose syntax for hierarchical
    +							queries: CONNECT BY .. STARTS WITH
    +						</fo:block>
    +							<fo:block font-family="Georgia" font-size="16pt" padding-top="10pt" padding-bottom="10pt" page-break-after="avoid">CONNECT BY .. STARTS WITH</fo:block>
    +							<fo:block font-size="11pt">If you are closely coupling your application to an Oracle database,
    +								you can take advantage of some Oracle-specific features, such as the
    +								CONNECT BY clause, used for hierarchical queries. The formal syntax
    +								definition is as follows: </fo:block>
    +
    +<fo:block font-family="Courier" linefeed-treatment="preserve" white-space-collapse="false" white-space-treatment="preserve" font-size="6pt" margin="12pt" padding="4pt" border="2px solid #882222" background-color="#FFEEDD" page-break-inside="avoid">--   SELECT ..
    +--     FROM ..
    +--    WHERE ..
    + CONNECT BY [NOCYCLE] condition [AND condition, ...] [START WITH condition]
    +-- GROUP BY ..</fo:block>
    +							<fo:block font-size="11pt">This can be done in jOOQ using the .connectBy(Condition) clauses in your SELECT statement: </fo:block>
    +<fo:block font-family="Courier" linefeed-treatment="preserve" white-space-collapse="false" white-space-treatment="preserve" font-size="6pt" margin="12pt" padding="4pt" border="2px solid #882222" background-color="#FFEEDD" page-break-inside="avoid">// Some Oracle-specific features are only available
    +// from the OracleFactory
    +OracleFactory create = new OracleFactory(connection);
    +
    +// Get a table with elements 1, 2, 3, 4, 5
    +create.select(create.rownum())
    +      .connectBy(create.level().lessOrEqual(5))
    +      .fetch();</fo:block>
    +
    +							<fo:block font-size="11pt">Here's a more complex example where you can recursively fetch
    +								directories in your database, and concatenate them to a path:</fo:block>
    +<fo:block font-family="Courier" linefeed-treatment="preserve" white-space-collapse="false" white-space-treatment="preserve" font-size="6pt" margin="12pt" padding="4pt" border="2px solid #882222" background-color="#FFEEDD" page-break-inside="avoid"><![CDATA[ OracleFactory ora = new OracleFactory(connection);
    +
    + List<?> paths =
    + ora.select(ora.sysConnectByPath(DIRECTORY.NAME, "/").substring(2))
    +    .from(DIRECTORY)
    +    .connectBy(ora.prior(DIRECTORY.ID).equal(DIRECTORY.PARENT_ID))
    +    .startWith(DIRECTORY.PARENT_ID.isNull())
    +    .orderBy(ora.literal(1))
    +    .fetch(0);]]></fo:block>
    +
    +    						<fo:block font-size="11pt">The output might then look like this</fo:block>
    +<fo:block font-family="Courier" linefeed-treatment="preserve" white-space-collapse="false" white-space-treatment="preserve" font-size="6pt" margin="12pt" padding="4pt" border="2px solid #882222" background-color="#FFEEDD" page-break-inside="avoid">+------------------------------------------------+
    +|substring                                       |
    ++------------------------------------------------+
    +|C:                                              |
    +|C:/eclipse                                      |
    +|C:/eclipse/configuration                        |
    +|C:/eclipse/dropins                              |
    +|C:/eclipse/eclipse.exe                          |
    ++------------------------------------------------+
    +|...21 record(s) truncated...
    +</fo:block>
    +						<fo:block font-family="Georgia" font-size="18pt" padding-top="12pt" padding-bottom="12pt" page-break-after="avoid" id="PIVOT">
    +<fo:marker marker-class-name="section">
    +<fo:block>4.7. The Oracle 11g PIVOT clause</fo:block>
    +</fo:marker>4.7. The Oracle 11g PIVOT clause</fo:block>
    +<fo:block font-size="11pt">
    +				    	    Oracle 11g has formally introduced the very powerful PIVOT clause, which
    +				    	    allows to specify a pivot column, expected grouping values for pivoting,
    +				    	    as well as a set of aggregate functions
    +						</fo:block>
    +							<fo:block font-family="Georgia" font-size="16pt" padding-top="10pt" padding-bottom="10pt" page-break-after="avoid">PIVOT (aggregate FOR column IN (columns))</fo:block>
    +							<fo:block font-size="11pt">If you are closely coupling your application to an Oracle database,
    +								you can take advantage of some Oracle-specific features, such as the
    +								PIVOT clause, used for statistical analyses. The formal syntax
    +								definition is as follows: </fo:block>
    +<fo:block font-family="Courier" linefeed-treatment="preserve" white-space-collapse="false" white-space-treatment="preserve" font-size="6pt" margin="12pt" padding="4pt" border="2px solid #882222" background-color="#FFEEDD" page-break-inside="avoid">-- SELECT ..
    +     FROM table PIVOT (aggregateFunction [, aggregateFunction] FOR column IN (expression [, expression]))
    +--  WHERE ..</fo:block>
    +
    +							<fo:block font-size="11pt">
    +								The PIVOT clause is available from the
    +								<fo:basic-link font-size="11pt" color="#882222" font-weight="bold" text-shadow="0 1px 2px #666666" external-destination="url('http://www.jooq.org/javadoc/latest/org/jooq/Table.html')">org.jooq.Table</fo:basic-link>
    +								type, as pivoting is done directly on a table.
    +								Currently, only Oracle's PIVOT clause is supported. Support for SQL Server's
    +								PIVOT clause will be added later. Also, jOOQ may simulate PIVOT for other
    +								dialects in the future.
    +							</fo:block>
    +						<fo:block font-family="Georgia" font-size="18pt" padding-top="12pt" padding-bottom="12pt" page-break-after="avoid" id="DIVISION">
    +<fo:marker marker-class-name="section">
    +<fo:block>4.8. jOOQ's relational division syntax</fo:block>
    +</fo:marker>4.8. jOOQ's relational division syntax</fo:block>
    +<fo:block font-size="11pt">
    +				    	    Relational division is a rather academic topic that is not used in
    +				    	    every-day SQL. Nevertheless, it can be extremely powerful in some
    +				    	    remote cases. jOOQ supports it intuitively
    +						</fo:block>
    +							<fo:block font-family="Georgia" font-size="16pt" padding-top="10pt" padding-bottom="10pt" page-break-after="avoid">Relational division</fo:block>
    +							<fo:block font-size="11pt">
    +							    There is one operation in relational algebra that is not given
    +							    a lot of attention, because it is rarely used in real-world
    +							    applications. It is the relational division, the opposite operation
    +							    of the cross product (or, relational multiplication).
    +								The following is an approximate definition of a relational division:
    +							</fo:block>
    +
    +<fo:block font-family="Courier" linefeed-treatment="preserve" white-space-collapse="false" white-space-treatment="preserve" font-size="6pt" margin="12pt" padding="4pt" border="2px solid #882222" background-color="#FFEEDD" page-break-inside="avoid">Assume the following cross join / cartesian product
    +C = A × B
    +
    +Then it can be said that
    +A = C ÷ B
    +B = C ÷ A</fo:block>
    +
    +
    +							<fo:block font-size="11pt">
    +							   With jOOQ, you can simplify using relational divisions
    +							   by using the following syntax:
    +							</fo:block>
    +
    +<fo:block font-family="Courier" linefeed-treatment="preserve" white-space-collapse="false" white-space-treatment="preserve" font-size="6pt" margin="12pt" padding="4pt" border="2px solid #882222" background-color="#FFEEDD" page-break-inside="avoid">C.divideBy(B).on(C.ID.equal(B.C_ID)).returning(C.TEXT)</fo:block>
    +
    +							<fo:block font-size="11pt">The above roughly translates to</fo:block>
    +
    +<fo:block font-family="Courier" linefeed-treatment="preserve" white-space-collapse="false" white-space-treatment="preserve" font-size="6pt" margin="12pt" padding="4pt" border="2px solid #882222" background-color="#FFEEDD" page-break-inside="avoid">SELECT DISTINCT C.TEXT FROM C "c1"
    +WHERE NOT EXISTS (
    +  SELECT 1 FROM B
    +  WHERE NOT EXISTS (
    +    SELECT 1 FROM C "c2"
    +    WHERE "c2".TEXT = "c1".TEXT
    +    AND "c2".ID = B.C_ID
    +  )
    +)</fo:block>
    +
    +							<fo:block font-size="11pt">
    +								Or in plain text: Find those TEXT values in C
    +								whose ID's correspond to all ID's in B. Note
    +								that from the above SQL statement, it is immediately
    +								clear that proper indexing is of the essence.
    +								Be sure to have indexes on all columns referenced
    +								from the on(...) and returning(...) clauses.
    +							</fo:block>
    +
    +							<fo:block font-size="11pt">
    +								For more information about relational division
    +								and some nice, real-life examples, see
    +							</fo:block>
    +
    +							<fo:block padding-top="16pt" padding-bottom="16pt" page-break-inside="avoid">
    +<fo:list-block>
    +								<fo:list-item>
    +<fo:list-item-label>
    +<fo:block font-size="11pt" page-break-inside="avoid">-</fo:block>
    +</fo:list-item-label>
    +<fo:list-item-body start-indent="body-start()">
    +<fo:block font-size="11pt" page-break-inside="avoid">
    +									<fo:basic-link font-size="11pt" color="#882222" font-weight="bold" text-shadow="0 1px 2px #666666" external-destination="url('http://en.wikipedia.org/wiki/Relational_algebra#Division')">http://en.wikipedia.org/wiki/Relational_algebra#Division</fo:basic-link>
    +								</fo:block>
    +</fo:list-item-body>
    +</fo:list-item>
    +								<fo:list-item>
    +<fo:list-item-label>
    +<fo:block font-size="11pt" page-break-inside="avoid">-</fo:block>
    +</fo:list-item-label>
    +<fo:list-item-body start-indent="body-start()">
    +<fo:block font-size="11pt" page-break-inside="avoid">
    +									<fo:basic-link font-size="11pt" color="#882222" font-weight="bold" text-shadow="0 1px 2px #666666" external-destination="url('http://www.simple-talk.com/sql/t-sql-programming/divided-we-stand-the-sql-of-relational-division/')">http://www.simple-talk.com/sql/t-sql-programming/divided-we-stand-the-sql-of-relational-division/</fo:basic-link>
    +								</fo:block>
    +</fo:list-item-body>
    +</fo:list-item>
    +							</fo:list-block>
    +</fo:block>
    +						<fo:block font-family="Georgia" font-size="18pt" padding-top="12pt" padding-bottom="12pt" page-break-after="avoid" id="Export">
    +<fo:marker marker-class-name="section">
    +<fo:block>4.9. Exporting to XML, CSV, JSON, HTML, Text</fo:block>
    +</fo:marker>4.9. Exporting to XML, CSV, JSON, HTML, Text</fo:block>
    +<fo:block font-size="11pt">
    +							Get your data out of the Java world. Stream your data using any of the supported, wide-spread formats
    +						</fo:block>
    +							<fo:block font-family="Georgia" font-size="16pt" padding-top="10pt" padding-bottom="10pt" page-break-after="avoid">Exporting with jOOQ</fo:block>
    +							<fo:block font-size="11pt">If you are using jOOQ for scripting purposes or in a slim, unlayered
    +								application server, you might be interested in using jOOQ's exporting
    +								functionality (see also importing functionality). You can export any
    +								Result&lt;Record&gt; into any of these formats: </fo:block>
    +
    +							<fo:block font-family="Georgia" font-size="16pt" padding-top="10pt" padding-bottom="10pt" page-break-after="avoid">XML</fo:block>
    +							<fo:block font-size="11pt">Export your results as XML: </fo:block>
    +<fo:block font-family="Courier" linefeed-treatment="preserve" white-space-collapse="false" white-space-treatment="preserve" font-size="6pt" margin="12pt" padding="4pt" border="2px solid #882222" background-color="#FFEEDD" page-break-inside="avoid">// Fetch books and format them as XML
    +String xml = create.selectFrom(T_BOOK).fetch().formatXML();</fo:block>
    +
    +							<fo:block font-size="11pt">The above query will result in an XML document looking like the following one: </fo:block>
    +<fo:block font-family="Courier" linefeed-treatment="preserve" white-space-collapse="false" white-space-treatment="preserve" font-size="6pt" margin="12pt" padding="4pt" border="2px solid #882222" background-color="#FFEEDD" page-break-inside="avoid"><![CDATA[<!-- Find the XSD definition on www.jooq.org: -->
    +<jooq-export:result xmlns:jooq-export="http://www.jooq.org/xsd/jooq-export-1.6.2.xsd">
    +  <fields>
    +    <field name="ID"/>
    +    <field name="AUTHOR_ID"/>
    +    <field name="TITLE"/>
    +  </fields>
    +  <records>
    +    <record>
    +      <value field="ID">1</value>
    +      <value field="AUTHOR_ID">1</value>
    +      <value field="TITLE">1984</value>
    +    </record>
    +    <record>
    +      <value field="ID">2</value>
    +      <value field="AUTHOR_ID">1</value>
    +      <value field="TITLE">Animal Farm</value>
    +    </record>
    +  </records>
    +</jooq-export:result>]]></fo:block>
    +
    +							<fo:block font-family="Georgia" font-size="16pt" padding-top="10pt" padding-bottom="10pt" page-break-after="avoid">CSV</fo:block>
    +							<fo:block font-size="11pt">Export your results as CSV: </fo:block>
    +<fo:block font-family="Courier" linefeed-treatment="preserve" white-space-collapse="false" white-space-treatment="preserve" font-size="6pt" margin="12pt" padding="4pt" border="2px solid #882222" background-color="#FFEEDD" page-break-inside="avoid">// Fetch books and format them as CSV
    +String csv = create.selectFrom(T_BOOK).fetch().formatCSV();</fo:block>
    +
    +							<fo:block font-size="11pt">The above query will result in a CSV document looking like the following one: </fo:block>
    +<fo:block font-family="Courier" linefeed-treatment="preserve" white-space-collapse="false" white-space-treatment="preserve" font-size="6pt" margin="12pt" padding="4pt" border="2px solid #882222" background-color="#FFEEDD" page-break-inside="avoid">ID;AUTHOR_ID;TITLE
    +1;1;1984
    +2;1;Animal Farm</fo:block>
    +
    +
    +							<fo:block font-family="Georgia" font-size="16pt" padding-top="10pt" padding-bottom="10pt" page-break-after="avoid">JSON</fo:block>
    +							<fo:block font-size="11pt">Export your results as JSON: </fo:block>
    +
    +<fo:block font-family="Courier" linefeed-treatment="preserve" white-space-collapse="false" white-space-treatment="preserve" font-size="6pt" margin="12pt" padding="4pt" border="2px solid #882222" background-color="#FFEEDD" page-break-inside="avoid">// Fetch books and format them as JSON
    +String json = create.selectFrom(T_BOOK).fetch().formatJSON();</fo:block>
    +							<fo:block font-size="11pt">The above query will result in a JSON document looking like the following one: </fo:block>
    +<fo:block font-family="Courier" linefeed-treatment="preserve" white-space-collapse="false" white-space-treatment="preserve" font-size="6pt" margin="12pt" padding="4pt" border="2px solid #882222" background-color="#FFEEDD" page-break-inside="avoid">{fields:["ID","AUTHOR_ID","TITLE"],
    + records:[[1,1,"1984"],[2,1,"Animal Farm"]]}</fo:block>
    +
    + 							<fo:block font-family="Georgia" font-size="16pt" padding-top="10pt" padding-bottom="10pt" page-break-after="avoid">HTML </fo:block>
    + 							<fo:block font-size="11pt">Export your results as HTML: </fo:block>
    +<fo:block font-family="Courier" linefeed-treatment="preserve" white-space-collapse="false" white-space-treatment="preserve" font-size="6pt" margin="12pt" padding="4pt" border="2px solid #882222" background-color="#FFEEDD" page-break-inside="avoid">// Fetch books and format them as HTML
    +String html = create.selectFrom(T_BOOK).fetch().formatHTML();</fo:block>
    +							<fo:block font-size="11pt">The above query will result in an HTML document looking like the following one: </fo:block>
    +<fo:block font-family="Courier" linefeed-treatment="preserve" white-space-collapse="false" white-space-treatment="preserve" font-size="6pt" margin="12pt" padding="4pt" border="2px solid #882222" background-color="#FFEEDD" page-break-inside="avoid"><![CDATA[<table>
    +  <thead>
    +    <tr>
    +      <th>ID</th>
    +      <th>AUTHOR_ID</th>
    +      <th>TITLE</th>
    +    </tr>
    +  </thead>
    +  <tbody>
    +    <tr>
    +      <td>1</td>
    +      <td>1</td>
    +      <td>1984</td>
    +    </tr>
    +    <tr>
    +      <td>2</td>
    +      <td>1</td>
    +      <td>Animal Farm</td>
    +    </tr>
    +  </tbody>
    +</table>]]></fo:block>
    +
    +							<fo:block font-family="Georgia" font-size="16pt" padding-top="10pt" padding-bottom="10pt" page-break-after="avoid">Text</fo:block>
    +							<fo:block font-size="11pt">Export your results as text: </fo:block>
    +<fo:block font-family="Courier" linefeed-treatment="preserve" white-space-collapse="false" white-space-treatment="preserve" font-size="6pt" margin="12pt" padding="4pt" border="2px solid #882222" background-color="#FFEEDD" page-break-inside="avoid">// Fetch books and format them as text
    +String text = create.selectFrom(T_BOOK).fetch().format();</fo:block>
    +
    +							<fo:block font-size="11pt">The above query will result in a text document looking like the following one: </fo:block>
    +<fo:block font-family="Courier" linefeed-treatment="preserve" white-space-collapse="false" white-space-treatment="preserve" font-size="6pt" margin="12pt" padding="4pt" border="2px solid #882222" background-color="#FFEEDD" page-break-inside="avoid">+---+---------+-----------+
    +| ID|AUTHOR_ID|TITLE      |
    ++---+---------+-----------+
    +|  1|        1|1984       |
    +|  2|        1|Animal Farm|
    ++---+---------+-----------+</fo:block>
    +						<fo:block font-family="Georgia" font-size="18pt" padding-top="12pt" padding-bottom="12pt" page-break-after="avoid" id="Import">
    +<fo:marker marker-class-name="section">
    +<fo:block>4.10. Importing data from XML, CSV</fo:block>
    +</fo:marker>4.10. Importing data from XML, CSV</fo:block>
    +<fo:block font-size="11pt">
    +							Use jOOQ to easily merge imported data into your database.
    +						</fo:block>
    +							<fo:block font-family="Georgia" font-size="16pt" padding-top="10pt" padding-bottom="10pt" page-break-after="avoid">Importing with jOOQ</fo:block>
    +							<fo:block font-size="11pt">If you are using jOOQ for scripting purposes or in a slim, unlayered
    +								application server, you might be interested in using jOOQ's importing
    +								functionality (see also exporting functionality). You can import data
    +								directly into a table from any of these formats: </fo:block>
    +
    +							<fo:block font-family="Georgia" font-size="16pt" padding-top="10pt" padding-bottom="10pt" page-break-after="avoid">CSV</fo:block>
    +							<fo:block font-size="11pt">The below CSV data represents two author records that may have been
    +								exported previously, by jOOQ's exporting functionality, and then
    +								modified in Microsoft Excel or any other spreadsheet tool: </fo:block>
    +
    +<fo:block font-family="Courier" linefeed-treatment="preserve" white-space-collapse="false" white-space-treatment="preserve" font-size="6pt" margin="12pt" padding="4pt" border="2px solid #882222" background-color="#FFEEDD" page-break-inside="avoid">ID;AUTHOR_ID;TITLE
    +1;1;1984
    +2;1;Animal Farm</fo:block>
    +
    +							<fo:block font-size="11pt">With jOOQ, you can load this data using various parameters from the
    +								loader API. A simple load may look like this: </fo:block>
    +
    +<fo:block font-family="Courier" linefeed-treatment="preserve" white-space-collapse="false" white-space-treatment="preserve" font-size="6pt" margin="12pt" padding="4pt" border="2px solid #882222" background-color="#FFEEDD" page-break-inside="avoid">Factory create = new Factory(connection, SQLDialect.ORACLE);
    +
    +// Load data into the T_AUTHOR table from an input stream
    +// holding the CSV data.
    +create.loadInto(T_AUTHOR)
    +      .loadCSV(inputstream)
    +      .fields(ID, AUTHOR_ID, TITLE)
    +      .execute();</fo:block>
    +
    +      						<fo:block font-size="11pt">Here are various other examples: </fo:block>
    +<fo:block font-family="Courier" linefeed-treatment="preserve" white-space-collapse="false" white-space-treatment="preserve" font-size="6pt" margin="12pt" padding="4pt" border="2px solid #882222" background-color="#FFEEDD" page-break-inside="avoid">// Ignore the AUTHOR_ID column from the CSV file when inserting
    +create.loadInto(T_AUTHOR)
    +      .loadCSV(inputstream)
    +      .fields(ID, null, TITLE)
    +      .execute();
    +
    +// Specify behaviour for duplicate records.
    +create.loadInto(T_AUTHOR)
    +
    +      // choose any of these methods
    +      .onDuplicateKeyUpdate()
    +      .onDuplicateKeyIgnore()
    +      .onDuplicateKeyError() // the default
    +
    +      .loadCSV(inputstream)
    +      .fields(ID, null, TITLE)
    +      .execute();
    +
    +// Specify behaviour when errors occur.
    +create.loadInto(T_AUTHOR)
    +
    +      // choose any of these methods
    +      .onErrorIgnore()
    +      .onErrorAbort() // the default
    +
    +      .loadCSV(inputstream)
    +      .fields(ID, null, TITLE)
    +      .execute();
    +
    +// Specify transactional behaviour where this is possible
    +// (e.g. not in container-managed transactions)
    +create.loadInto(T_AUTHOR)
    +
    +      // choose any of these methods
    +      .commitEach()
    +      .commitAfter(10)
    +      .commitAll()
    +      .commitNone() // the default
    +
    +      .loadCSV(inputstream)
    +      .fields(ID, null, TITLE)
    +      .execute();</fo:block>
    +
    +							<fo:block font-size="11pt">Any of the above configuration methods can be combined to achieve
    +								the type of load you need. Please refer to the API's Javadoc to learn
    +								about more details. Errors that occur during the load are reported by
    +								the execute method's result: </fo:block>
    +
    +<fo:block font-family="Courier" linefeed-treatment="preserve" white-space-collapse="false" white-space-treatment="preserve" font-size="6pt" margin="12pt" padding="4pt" border="2px solid #882222" background-color="#FFEEDD" page-break-inside="avoid"><![CDATA[Loader<TAuthor> loader = /* .. */ .execute();
    +
    +// The number of processed rows
    +int processed = loader.processed();
    +
    +// The number of stored rows (INSERT or UPDATE)
    +int stored = loader.stored();
    +
    +// The number of ignored rows (due to errors, or duplicate rule)
    +int ignored = loader.ignored();
    +
    +// The errors that may have occurred during loading
    +List<LoaderError> errors = loader.errors();
    +LoaderError error = errors.get(0);
    +
    +// The exception that caused the error
    +SQLException exception = error.exception();
    +
    +// The row that caused the error
    +int rowIndex = error.rowIndex();
    +String[] row = error.row();
    +
    +// The query that caused the error
    +Query query = error.query();]]></fo:block>
    +
    +							<fo:block font-family="Georgia" font-size="16pt" padding-top="10pt" padding-bottom="10pt" page-break-after="avoid">XML </fo:block>
    +							<fo:block font-size="11pt">This will be implemented soon... </fo:block>
    +						<fo:block font-family="Georgia" font-size="18pt" padding-top="12pt" padding-bottom="12pt" page-break-after="avoid" id="Batch">
    +<fo:marker marker-class-name="section">
    +<fo:block>4.11. Using JDBC batch operations</fo:block>
    +</fo:marker>4.11. Using JDBC batch operations</fo:block>
    +<fo:block font-size="11pt">
    +							Some JDBC drivers have highly optimised means of executing batch
    +							operations. The JDBC interface for those operations is a bit verbose.
    +							jOOQ abstracts that by re-using the existing query API's
    +						</fo:block>
    +							<fo:block font-family="Georgia" font-size="16pt" padding-top="10pt" padding-bottom="10pt" page-break-after="avoid">JDBC batch operations</fo:block>
    +							<fo:block font-size="11pt">With JDBC, you can easily execute several statements at once using
    +								the addBatch() method. Essentially, there are two modes in JDBC</fo:block>
    +
    +							<fo:block padding-top="16pt" padding-bottom="16pt">
    +<fo:list-block>
    +								<fo:list-item>
    +<fo:list-item-label>
    +<fo:block font-size="11pt" page-break-inside="avoid">o</fo:block>
    +</fo:list-item-label>
    +<fo:list-item-body start-indent="body-start()">
    +<fo:block font-size="11pt" page-break-inside="avoid">Execute several queries without bind values</fo:block>
    +</fo:list-item-body>
    +</fo:list-item>
    +								<fo:list-item>
    +<fo:list-item-label>
    +<fo:block font-size="11pt" page-break-inside="avoid">o</fo:block>
    +</fo:list-item-label>
    +<fo:list-item-body start-indent="body-start()">
    +<fo:block font-size="11pt" page-break-inside="avoid">Execute one query several times with bind values</fo:block>
    +</fo:list-item-body>
    +</fo:list-item>
    +							</fo:list-block>
    +</fo:block>
    +
    +							<fo:block font-size="11pt">In code, this looks like the following snippet:</fo:block>
    +<fo:block font-family="Courier" linefeed-treatment="preserve" white-space-collapse="false" white-space-treatment="preserve" font-size="6pt" margin="12pt" padding="4pt" border="2px solid #882222" background-color="#FFEEDD" page-break-inside="avoid"><![CDATA[// 1. several queries
    +// ------------------
    +Statement stmt = connection.createStatement();
    +stmt.addBatch("INSERT INTO author VALUES (1, 'Erich Gamma')");
    +stmt.addBatch("INSERT INTO author VALUES (2, 'Richard Helm')");
    +stmt.addBatch("INSERT INTO author VALUES (3, 'Ralph Johnson')");
    +stmt.addBatch("INSERT INTO author VALUES (4, 'John Vlissides')");
    +int[] result = stmt.executeBatch();
    +
    +// 2. a single query
    +// -----------------
    +PreparedStatement stmt = connection.prepareStatement("INSERT INTO autho VALUES (?, ?)");
    +stmt.setInt(1, 1);
    +stmt.setString(2, "Erich Gamma");
    +stmt.addBatch();
    +
    +stmt.setInt(1, 2);
    +stmt.setString(2, "Richard Helm");
    +stmt.addBatch();
    +
    +stmt.setInt(1, 3);
    +stmt.setString(2, "Ralph Johnson");
    +stmt.addBatch();
    +
    +stmt.setInt(1, 4);
    +stmt.setString(2, "John Vlissides");
    +stmt.addBatch();
    +
    +int[] result = stmt.executeBatch();]]></fo:block>
    +
    +
    +							<fo:block font-family="Georgia" font-size="16pt" padding-top="10pt" padding-bottom="10pt" page-break-after="avoid">This will also be supported by jOOQ</fo:block>
    +							<fo:block font-size="11pt">Version 1.6.9 of jOOQ now supports executing queries in batch
    +								mode as follows:</fo:block>
    +<fo:block font-family="Courier" linefeed-treatment="preserve" white-space-collapse="false" white-space-treatment="preserve" font-size="6pt" margin="12pt" padding="4pt" border="2px solid #882222" background-color="#FFEEDD" page-break-inside="avoid"><![CDATA[// 1. several queries
    +// ------------------
    +create.batch(
    +	create.insertInto(AUTHOR, ID, NAME).values(1, "Erich Gamma"),
    +	create.insertInto(AUTHOR, ID, NAME).values(2, "Richard Helm"),
    +	create.insertInto(AUTHOR, ID, NAME).values(3, "Ralph Johnson"),
    +	create.insertInto(AUTHOR, ID, NAME).values(4, "John Vlissides"))
    +.execute();
    +
    +// 2. a single query
    +// -----------------
    +create.batch(create.insertInto(AUTHOR, ID, NAME).values("?", "?"))
    +	  .bind(1, "Erich Gamma")
    +	  .bind(2, "Richard Helm")
    +	  .bind(3, "Ralph Johnson")
    +	  .bind(4, "John Vlissides")
    +	  .execute();]]></fo:block>
    +						<fo:block id="last-page"/>
    +</fo:flow>
    +</fo:page-sequence>
    +</fo:root>
    diff --git a/jOOQ-website/manual-pdf/jOOQ-manual.pdf b/jOOQ-website/manual-pdf/jOOQ-manual.pdf
    new file mode 100644
    index 00000000000..ea563b000fe
    Binary files /dev/null and b/jOOQ-website/manual-pdf/jOOQ-manual.pdf differ
    diff --git a/jOOQ-website/manual-single-page/index.php b/jOOQ-website/manual-single-page/index.php
    new file mode 100644
    index 00000000000..8d9d604162f
    --- /dev/null
    +++ b/jOOQ-website/manual-single-page/index.php
    @@ -0,0 +1,5401 @@
    +
    +<?php 
    +// The following content has been XSL transformed from manual.xml using html-page.xsl
    +// Please do not edit this content manually
    +require '../frame.php';
    +function getH1() {
    +    return "The jOOQ User Manual. Single Page";
    +}
    +function getActiveMenu() {
    +	return "manual";
    +}
    +function getSlogan() {
    +	return "The manual is the central reference for most of jOOQ's functionality.";
    +}
    +function printContent() {
    +    global $root;
    +?>
    +
    +			
    +				<h3>All manuals</h3>
    +				<ul>
    +					
    +<li>
    +<a href="<?=$root?>/manual-single-page" title="The jOOQ Manual on one single page">A single-paged HTML manual</a>
    +</li>
    +					
    +<li>
    +<a href="<?=$root?>/manual" title="The jOOQ Manual on multiple pages">A multi-paged HTML manual</a>
    +</li>
    +					
    +<li>
    +<a href="<?=$root?>/manual-pdf/jOOQ-manual.pdf" title="The jOOQ Manual as a PDF">A downloadable PDF manual</a>
    +</li>
    +				
    +</ul>
    +			
    +			<h3>Overview</h3>
    +			<p>This manual is divided into four main sections:</p>
    +			<ul>
    +				
    +<li>
    +					
    +<a href="#JOOQ" title="jOOQ Manual reference: jOOQ classes and their usage">jOOQ classes and their usage</a>
    +					
    +<p>
    +						See these chapters for an overview of the jOOQ internal architecture
    +						and all types that are involved with jOOQ's query creation and
    +						execution. This is the important part for you, also, if you wish to
    +						extend jOOQ
    +					</p>
    +				
    +</li>
    +				
    +<li>
    +					
    +<a href="#META" title="jOOQ Manual reference: Meta model code generation">Meta model code generation</a>
    +					
    +<p>
    +						See these chapters to understand how you can use jOOQ as a source code
    +						generator, and what type of artefacts are generated by jOOQ
    +					</p>
    +				
    +</li>
    +				
    +<li>
    +					
    +<a href="#DSL" title="jOOQ Manual reference: DSL or fluent API. Where SQL meets Java">DSL or fluent API. Where SQL meets Java</a>
    +					
    +<p>
    +						See these chapters to learn about how to use jOOQ in every day's work. The
    +						jOOQ DSL is the main way to create and execute jOOQ queries almost as
    +						if SQL was embedded in Java directly
    +					</p>
    +				
    +</li>
    +				
    +<li>
    +					
    +<a href="#ADVANCED" title="jOOQ Manual reference: Advanced topics">Advanced topics</a>
    +					
    +<p>
    +						Some advanced topics including not-everyday functionality
    +					</p>
    +				
    +</li>
    +			
    +</ul>
    +		<h3>Table of contents</h3><ol>
    +<li>
    +<a title="jOOQ classes and their usage" href="#JOOQ">jOOQ classes and their usage</a>
    +<ol>
    +<li>
    +<a title="The example database" href="#ExampleDatabase">The example database</a>
    +</li>
    +<li>
    +<a title="The Factory class" href="#Factory">The Factory class</a>
    +</li>
    +<li>
    +<a title="Tables and Fields" href="#Table">Tables and Fields</a>
    +</li>
    +<li>
    +<a title="Results and Records" href="#Result">Results and Records</a>
    +</li>
    +<li>
    +<a title="Updatable Records" href="#UpdatableRecord">Updatable Records</a>
    +</li>
    +<li>
    +<a title="The Query and its various subtypes" href="#Query">The Query and its various subtypes</a>
    +</li>
    +<li>
    +<a title="ResultQuery and various ways of fetching data" href="#ResultQuery">ResultQuery and various ways of fetching data</a>
    +</li>
    +<li>
    +<a title="Bind values" href="#BindValues">Bind values</a>
    +</li>
    +<li>
    +<a title="QueryParts and the global architecture" href="#QueryPart">QueryParts and the global architecture</a>
    +</li>
    +<li>
    +<a title="Serializability of QueryParts and Results" href="#Serializability">Serializability of QueryParts and Results</a>
    +</li>
    +<li>
    +<a title="Extend jOOQ with custom types" href="#Extend">Extend jOOQ with custom types</a>
    +</li>
    +</ol>
    +</li>
    +<li>
    +<a title="Meta model code generation" href="#META">Meta model code generation</a>
    +<ol>
    +<li>
    +<a title="Configuration and setup of the generator" href="#Configuration">Configuration and setup of the generator</a>
    +</li>
    +<li>
    +<a title="Advanced configuration of the generator" href="#AdvancedConfiguration">Advanced configuration of the generator</a>
    +</li>
    +<li>
    +<a title="The schema, top-level generated artefact" href="#SCHEMA">The schema, top-level generated artefact</a>
    +</li>
    +<li>
    +<a title="Tables, views and their corresponding records" href="#TABLE">Tables, views and their corresponding records</a>
    +</li>
    +<li>
    +<a title="Procedures and packages" href="#PROCEDURE">Procedures and packages</a>
    +</li>
    +<li>
    +<a title="UDT's including ARRAY and ENUM types" href="#UDT">UDT's including ARRAY and ENUM types</a>
    +</li>
    +<li>
    +<a title="Sequences" href="#SEQUENCE">Sequences</a>
    +</li>
    +</ol>
    +</li>
    +<li>
    +<a title="DSL or fluent API. Where SQL meets Java" href="#DSL">DSL or fluent API. Where SQL meets Java</a>
    +<ol>
    +<li>
    +<a title="Complete SELECT syntax" href="#SELECT">Complete SELECT syntax</a>
    +</li>
    +<li>
    +<a title="Table sources" href="#TABLESOURCE">Table sources</a>
    +</li>
    +<li>
    +<a title="Conditions" href="#CONDITION">Conditions</a>
    +</li>
    +<li>
    +<a title="Aliased tables and fields" href="#ALIAS">Aliased tables and fields</a>
    +</li>
    +<li>
    +<a title="Nested SELECT using the IN operator" href="#IN">Nested SELECT using the IN operator</a>
    +</li>
    +<li>
    +<a title="Nested SELECT using the EXISTS operator" href="#EXISTS">Nested SELECT using the EXISTS operator</a>
    +</li>
    +<li>
    +<a title="Other types of nested SELECT" href="#NESTED">Other types of nested SELECT</a>
    +</li>
    +<li>
    +<a title="UNION and other set operations" href="#UNION">UNION and other set operations</a>
    +</li>
    +<li>
    +<a title="Functions and aggregate operators" href="#FUNCTIONS">Functions and aggregate operators</a>
    +</li>
    +<li>
    +<a title="Stored procedures and functions" href="#PROCEDURES">Stored procedures and functions</a>
    +</li>
    +<li>
    +<a title="Arithmetic operations and concatenation" href="#ARITHMETIC">Arithmetic operations and concatenation</a>
    +</li>
    +<li>
    +<a title="The CASE clause" href="#CASE">The CASE clause</a>
    +</li>
    +<li>
    +<a title="Type casting" href="#CAST">Type casting</a>
    +</li>
    +<li>
    +<a title="When it's just easier: Plain SQL" href="#SQL">When it's just easier: Plain SQL</a>
    +</li>
    +</ol>
    +</li>
    +<li>
    +<a title="Advanced topics" href="#ADVANCED">Advanced topics</a>
    +<ol>
    +<li>
    +<a title="Master data generation. Enumeration tables" href="#MasterData">Master data generation. Enumeration tables</a>
    +</li>
    +<li>
    +<a title="Custom data types and type conversion" href="#CustomTypes">Custom data types and type conversion</a>
    +</li>
    +<li>
    +<a title="Mapping generated schemata and tables" href="#SchemaMapping">Mapping generated schemata and tables</a>
    +</li>
    +<li>
    +<a title="Execute listeners and the jOOQ Console" href="#ExecuteListener">Execute listeners and the jOOQ Console</a>
    +</li>
    +<li>
    +<a title="Adding Oracle hints to queries" href="#OracleHints">Adding Oracle hints to queries</a>
    +</li>
    +<li>
    +<a title="The Oracle CONNECT BY clause" href="#CONNECTBY">The Oracle CONNECT BY clause</a>
    +</li>
    +<li>
    +<a title="The Oracle 11g PIVOT clause" href="#PIVOT">The Oracle 11g PIVOT clause</a>
    +</li>
    +<li>
    +<a title="jOOQ's relational division syntax" href="#DIVISION">jOOQ's relational division syntax</a>
    +</li>
    +<li>
    +<a title="Exporting to XML, CSV, JSON, HTML, Text" href="#Export">Exporting to XML, CSV, JSON, HTML, Text</a>
    +</li>
    +<li>
    +<a title="Importing data from XML, CSV" href="#Import">Importing data from XML, CSV</a>
    +</li>
    +<li>
    +<a title="Using JDBC batch operations" href="#Batch">Using JDBC batch operations</a>
    +</li>
    +</ol>
    +</li>
    +</ol><h1 id="JOOQ">
    +<a name="JOOQ"></a>1. jOOQ classes and their usage</h1><p>
    +					In these sections, you will learn about how to use jOOQ object
    +					factories and the jOOQ query model, to express
    +					your SQL in jOOQ
    +				</p>
    +					<h2>Overview</h2>
    +					<p>jOOQ essentially has two packages:</p>
    +					<ul>
    +						
    +<li>org.jooq: the jOOQ API. Here you will find interfaces for all
    +							SQL concepts
    +						</li>
    +						
    +<li>org.jooq.impl: the jOOQ implementation and factories. Most
    +							implementation classes are package private, you can only access
    +							them using the <a href="#Factory" title="jOOQ Manual reference: The Factory class">org.jooq.impl.Factory</a>
    +						
    +</li>
    +					
    +</ul>
    +					<p>
    +						This section is about the main jOOQ classes and the global
    +						architecture. Most of the time, however, you will be using the
    +						<a href="#DSL" title="jOOQ Manual reference: DSL or fluent API. Where SQL meets Java">DSL or fluent API. Where SQL meets Java</a>
    +						in order to create queries
    +						the way you're used to in SQL
    +					</p>
    +				<h1 id="ExampleDatabase">
    +<a name="ExampleDatabase"></a>1.1. The example database</h1><p>
    +							For the examples in this manual, the same database will always be
    +							referred to. It essentially consists of these entities created using
    +							the Oracle dialect
    +						</p>
    +							<h2>Example CREATE TABLE statements</h2>
    +<pre class="prettyprint lang-sql">CREATE TABLE t_language (
    +  id NUMBER(7) NOT NULL PRIMARY KEY,
    +  cd CHAR(2) NOT NULL,
    +  description VARCHAR2(50)
    +)
    +
    +CREATE TABLE t_author (
    +  id NUMBER(7) NOT NULL PRIMARY KEY,
    +  first_name VARCHAR2(50),
    +  last_name VARCHAR2(50) NOT NULL,
    +  date_of_birth DATE,
    +  year_of_birth NUMBER(7)
    +)
    +
    +CREATE TABLE t_book (
    +  id NUMBER(7) NOT NULL PRIMARY KEY,
    +  author_id NUMBER(7) NOT NULL,
    +  title VARCHAR2(400) NOT NULL,
    +  published_in NUMBER(7) NOT NULL,
    +  language_id NUMBER(7) NOT NULL,
    +  FOREIGN KEY (AUTHOR_ID) REFERENCES T_AUTHOR(ID),
    +  FOREIGN KEY (LANGUAGE_ID) REFERENCES T_LANGUAGE(ID)
    +)
    +
    +CREATE TABLE t_book_store (
    +  name VARCHAR2(400) NOT NULL UNIQUE
    +)
    +
    +CREATE TABLE t_book_to_book_store (
    +  book_store_name VARCHAR2(400) NOT NULL,
    +  book_id INTEGER NOT NULL,
    +  stock INTEGER,
    +  PRIMARY KEY(book_store_name, book_id),
    +  CONSTRAINT b2bs_book_store_id
    +    FOREIGN KEY (book_store_name)
    +    REFERENCES t_book_store (name)
    +    ON DELETE CASCADE,
    +  CONSTRAINT b2bs_book_id
    +    FOREIGN KEY (book_id)
    +    REFERENCES t_book (id)
    +    ON DELETE CASCADE
    +)</pre>
    +							<p>
    +								More entities, types (e.g. UDT's, ARRAY types, ENUM types, etc),
    +								stored procedures and packages are introduced for specific examples
    +							</p>
    +						<h1 id="Factory">
    +<a name="Factory"></a>1.2. The Factory class</h1><p>
    +							jOOQ hides most implementation facts from you by letting you
    +							use the jOOQ Factory as a single entry point to all of the jOOQ API.
    +							This way, you can discover all of the API using syntax auto-completion, for
    +							instance.
    +						</p>
    +							<h2>The Factory and the jOOQ API</h2>
    +							<p>
    +								jOOQ exposes a lot of interfaces and hides most implementation facts
    +								from client code. The reasons for this are:
    +							</p>
    +							<ul>
    +								
    +<li>Interface-driven design. This allows for modelling queries in a fluent API most efficiently</li>
    +								
    +<li>Reduction of complexity for client code.</li>
    +								
    +<li>API guarantee. You only depend on the exposed interfaces, not concrete (potentially dialect-specific) implementations.</li>
    +							
    +</ul>
    +							<p>
    +								The <a href="http://www.jooq.org/javadoc/latest/org/jooq/impl/Factory.html" title="Internal API reference: org.jooq.impl.Factory">org.jooq.impl.Factory</a>
    +								class is the main class from where you will create all jOOQ objects.
    +								The Factory implements <a href="http://www.jooq.org/javadoc/latest/org/jooq/Configuration.html" title="Internal API reference: org.jooq.Configuration">org.jooq.Configuration</a>
    +								and needs to be instanciated with the Configuration's properties:
    +							</p>
    +							<ul>
    +								
    +<li>
    +<a href="http://www.jooq.org/javadoc/latest/org/jooq/SQLDialect.html" title="Internal API reference: org.jooq.SQLDialect">org.jooq.SQLDialect</a> :
    +								The dialect of your database. This may be any of the currently
    +								supported database types</li>
    +								
    +<li>
    +<a href="http://download.oracle.com/javase/6/docs/api/java/sql/Connection.html" title="External API reference: java.sql.Connection">java.sql.Connection</a> :
    +								A JDBC Connection that will be re-used for the whole
    +    							lifecycle of your Factory</li>
    +    							
    +<li>
    +<a href="http://www.jooq.org/javadoc/latest/org/jooq/conf/Settings.html" title="Internal API reference: org.jooq.conf.Settings">org.jooq.conf.Settings</a> :
    +    							An optional runtime configuration.</li>
    +							
    +</ul>
    +							<p>If you are planning on using several RDBMS (= SQLDialects) or
    +								several distinct JDBC Connections in your software, this will mean
    +								that you have to create a new Factory every time. </p>
    +
    +							<h3>Factory settings</h3>
    +							<p>
    +								The jOOQ Factory allows for some optional configuration elements to be used by advanced users.
    +								The <a href="http://www.jooq.org/javadoc/latest/org/jooq/conf/Settings.html" title="Internal API reference: org.jooq.conf.Settings">Settings</a> class is a JAXB-annotated
    +								type, that can be provided to a Factory in several ways:
    +							</p>
    +							<ul>
    +								
    +<li>In the constructor. This will override default settings below</li>
    +								
    +<li>From a location specified by a JVM parameter: -Dorg.jooq.settings</li>
    +								
    +<li>From the classpath at /jooq-settings.xml</li>
    +								
    +<li>From the settings defaults, as specified in
    +								    <a href="http://www.jooq.org/xsd/jooq-runtime-2.1.0.xsd" title="The jOOQ Runtime configuration XSD">http://www.jooq.org/xsd/jooq-runtime-2.1.0.xsd</a>
    +								
    +</li>
    +							
    +</ul>
    +							<p>
    +								Subsequent sections of the manual contain some more in-depth explanations about these settings:
    +							</p>
    +							<ul>
    +								
    +<li>
    +     								
    +<a href="#SchemaMapping" title="jOOQ Manual reference: Mapping generated schemata and tables">Runtime schema and table mapping</a>
    +   								
    +</li>
    +     							
    +<li>
    +     								
    +<a href="#ExecuteListener" title="jOOQ Manual reference: Execute listeners and the jOOQ Console">Execute listeners and SQL tracing</a>
    +     							
    +</li>
    +   							
    +</ul>
    +							<p>
    +								Please refer to the jOOQ runtime configuration XSD for more details:<br>
    +								
    +<a href="http://www.jooq.org/xsd/jooq-runtime-2.1.0.xsd" title="The jOOQ Runtime configuration XSD">http://www.jooq.org/xsd/jooq-runtime-2.1.0.xsd</a>
    +							
    +</p>
    +
    +							<h3>Factory subclasses</h3>
    +							<p>
    +								There are a couple of subclasses for the general Factory. Each SQL
    +								dialect has its own dialect-specific factory. For instance, if you're
    +								only using the MySQL dialect, you can choose to create a new Factory
    +								using any of the following types:
    +							</p>
    +<pre class="prettyprint lang-java">// A general, dialect-unspecific factory
    +Factory create = new Factory(connection, SQLDialect.MYSQL);
    +
    +// A MySQL-specific factory
    +MySQLFactory create = new MySQLFactory(connection);</pre>
    +							<p>
    +								The advantage of using a dialect-specific Factory lies in the fact,
    +								that you have access to more proprietary RDMBS functionality. This may
    +								include:
    +							</p>
    +							<ul>
    +								
    +<li>Oracle's <a href="#CONNECTBY" title="jOOQ Manual reference: The Oracle CONNECT BY clause">CONNECT BY</a>
    +								    pseudo columns and functions</li>
    +    							
    +<li>MySQL's encryption functions</li>
    +    							
    +<li>PL/SQL constructs, pgplsql, or any other dialect's ROUTINE-language (maybe in the future)</li>
    +							
    +</ul>
    +							<p>
    +								Another type of Factory subclasses are each generated schema's
    +								factories. If you generate your schema TEST, then you will have access
    +								to a TestFactory. This will be useful in the future, when access to
    +								schema artefacts will be unified. Currently, this has no use.
    +							</p>
    +
    +							<h3>Static Factory methods</h3>
    +							<p>
    +								With jOOQ 2.0, static factory methods have been introduced in order to
    +								make your code look more like SQL. Ideally, when working with jOOQ, you
    +								will simply static import all methods from the Factory class:
    +							</p>
    +							<pre class="prettyprint lang-java">import static org.jooq.impl.Factory.*;</pre>
    +							<p>
    +								This will allow to access functions even more fluently:
    +							</p>
    +
    +<pre class="prettyprint lang-java">concat(trim(FIRST_NAME), trim(LAST_NAME));
    +// ... which is in fact the same as:
    +Factory.concat(Factory.trim(FIRST_NAME), Factory.trim(LAST_NAME));</pre>
    +							<p>
    +								Objects created statically from the Factory do not need a reference to
    +								any factory, as they can be constructed independently from your Configuration
    +								(connection, dialect, schema mapping). They will access that information at
    +								render / bind time. See
    +								<a href="#QueryPart" title="jOOQ Manual reference: QueryParts and the global architecture">more details on the QueryParts' internals</a>
    +							
    +</p>
    +
    +							<h3>Potential problems</h3>
    +							<p>
    +								The jOOQ Factory expects its underlying
    +								<a href="http://download.oracle.com/javase/6/docs/api/java/sql/Connection.html" title="External API reference: java.sql.Connection">java.sql.Connection</a>
    +								to be <strong>open and ready</strong>
    +								for
    +								<a href="http://download.oracle.com/javase/6/docs/api/java/sql/PreparedStatement.html" title="External API reference: java.sql.PreparedStatement">java.sql.PreparedStatement</a>
    +								creation. You are responsible yourself for the
    +								lifecycle dependency between Factory and Connection. This means:
    +							</p>
    +							<ul>
    +								
    +<li>jOOQ will never close the Connection.</li>
    +								
    +<li>jOOQ will never commit or rollback on the Connection
    +									(Except for CSV-imports, if explicitly configured in the <a href="#Import" title="jOOQ Manual reference: Importing data from XML, CSV">Import API</a>)</li>
    +								
    +<li>jOOQ will never start any transactions.</li>
    +								
    +<li>
    +									jOOQ does not know the concept of a session as for instance
    +									<a href="http://docs.jboss.org/hibernate/core/3.6/reference/en-US/html/architecture.html#architecture-current-session">Hibernate</a>
    +								
    +</li>
    +								
    +<li>jOOQ does not know the concept of a second-level cache. SQL is
    +									executed directly on the underlying RDBMS.</li>
    +								
    +<li>jOOQ does not make assumptions about the origin of the Connection.
    +									If it is container managed, that is fine.</li>
    +							
    +</ul>
    +							<p>
    +								So if you want your queries to run in separate transactions, if you
    +								want to roll back a transaction, if you want to close a Connection and
    +								return it to your container, you will have to take care of that
    +								yourself. jOOQ's Factory will always expect its Connection to be in a
    +								ready state for creating new PreparedStatements. If it is not, you have
    +								to create a new Factory.
    +							</p>
    +							<p>
    +								Please keep in mind that many jOOQ objects will reference your Factory
    +								for their whole lifecycle. This is especially interesting, when dealing
    +								with <a href="#UpdatableRecord" title="jOOQ Manual reference: Updatable Records">Updatable Records</a>,
    +								that can perform CRUD operations on the
    +								Factory's underlying Connection.
    +							</p>
    +						<h1 id="Table">
    +<a name="Table"></a>1.3. Tables and Fields</h1><p>
    +							Tables and their Fields are probably the most important objects in
    +							jOOQ. Tables represent any entity in your underlying RDBMS, that holds
    +							data for selection, insertion, updates, and deletion. In other words,
    +							views are also considered tables by jOOQ.
    +						</p>
    +							<h2>The Table</h2>
    +							<p>The formal definition of a <a href="http://www.jooq.org/javadoc/latest/org/jooq/Table.html" title="Internal API reference: org.jooq.Table">org.jooq.Table</a> starts with </p>
    +							<pre class="prettyprint lang-java">public interface Table&lt;R extends Record&gt; // [...]</pre>
    +							<p>
    +								This means that every table is associated with a subtype of the
    +								<a href="http://www.jooq.org/javadoc/latest/org/jooq/Record.html" title="Internal API reference: org.jooq.Record">org.jooq.Record</a>
    +								class (see also
    +								<a href="#Result" title="jOOQ Manual reference: Results and Records">Results and Records</a>
    +								). For anonymous or ad-hoc tables,
    +								&lt;R&gt; will always bind to Record itself.
    +							</p>
    +							<p>
    +								Unlike in the
    +								<a href="http://download.oracle.com/javaee/6/tutorial/doc/gjitv.html" title="Tutorial about JPA CriteriaQuery">JPA CriteriaQuery API</a>,
    +								this generic type
    +								&lt;R&gt;
    +								is not given so much importance as far as
    +								type-safety is concerned.
    +								SQL itself is highly typesafe. You have
    +								incredible flexibility of creating anonymous or ad-hoc
    +								types and
    +								reusing them from
    +								<a href="#NESTED" title="jOOQ Manual reference: Other types of nested SELECT">NESTED SELECT statements</a>
    +								or from many other
    +								use-cases. There is no way that this typesafety can be
    +								mapped to the Java world in a convenient way. If
    +								&lt;R&gt; would play a role as important
    +								as in JPA, jOOQ would suffer from the same verbosity, or inflexibility
    +								that JPA CriteriaQueries may have.
    +							</p>
    +
    +							<h2>The Field</h2>
    +							<p>The formal definition of a Field starts with </p>
    +							<pre class="prettyprint lang-java">public interface Field&lt;T&gt; // [...]</pre>
    +							<p>
    +								Fields are generically parameterised with a Java type
    +								&lt;T&gt;
    +								that reflects the closest match to the RDMBS's underlying datatype for that
    +								field. For instance, if you have a VARCHAR2 type Field in Oracle,
    +								&lt;T&gt;
    +								would bind to
    +								<a href="http://download.oracle.com/javase/6/docs/api/java/lang/String.html" title="External API reference: java.lang.String">java.lang.String</a>
    +								for that Field in jOOQ. Oracle's NUMBER(7) would
    +								let
    +								&lt;T&gt;
    +								bind to
    +								<a href="http://download.oracle.com/javase/6/docs/api/java/lang/Integer.html" title="External API reference: java.lang.Integer">java.lang.Integer</a>,
    +								etc. This generic type is useful for two purposes:
    +							</p>
    +							<ul>
    +								
    +<li>It allows you to write type safe queries. For instance, you cannot
    +									compare Field
    +									&lt;String&gt;
    +									with Field
    +									&lt;Integer&gt;</li>
    +
    +								
    +<li>It
    +									allows you to fetch correctly cast and converted values from
    +									your database result set. This is especially useful when &lt;T&gt; binds
    +									to
    +									advanced data types, such as
    +									<a href="#UDT" title="jOOQ Manual reference: UDT's including ARRAY and ENUM types">UDT's, ARRAY or ENUM types</a>
    +									, where jOOQ
    +									does the difficult non-standardised JDBC data type conversions for you.
    +								</li>
    +							
    +</ul>
    +
    +							<h2>Fields and tables put into action</h2>
    +							<p>The Field itself is a very broad concept. Other tools, or databases
    +								refer to it as expression or column. When you just want to </p>
    +
    +							<pre class="prettyprint lang-sql">SELECT 1 FROM DUAL</pre>
    +							<p>
    +								Then 1 is considered a Field or more explicitly, a
    +								<a href="http://www.jooq.org/javadoc/latest/org/jooq/impl/Constant.html" title="Internal API reference: org.jooq.impl.Constant">org.jooq.impl.Constant</a>,
    +								which implements Field, and DUAL is considered a Table or more explicitly
    +								<a href="http://www.jooq.org/javadoc/latest/org/jooq/impl/Dual.html" title="Internal API reference: org.jooq.impl.Dual">org.jooq.impl.Dual</a>, which implements Table
    +							</p>
    +							<p>
    +								More advanced uses become clear quickly, when you do things like
    +							</p>
    +							<pre class="prettyprint lang-sql">SELECT 1 + 1 FROM DUAL</pre>
    +							<p>
    +								Where 1 + 1 itself is a Field or more explicitly, an
    +								<a href="http://www.jooq.org/javadoc/latest/org/jooq/impl/Expression.html" title="Internal API reference: org.jooq.impl.Expression">org.jooq.impl.Expression</a>
    +								joining two Constants together.
    +							</p>
    +							<p>
    +								See some details about how to create these queries in the
    +								<a href="#Query" title="jOOQ Manual reference: The Query and its various subtypes">Query section</a> of the manual
    +							</p>
    +
    +							<h2>TableFields</h2>
    +							<p>
    +								A specific type of field is the
    +								<a href="http://www.jooq.org/javadoc/latest/org/jooq/TableField.html" title="Internal API reference: org.jooq.TableField">org.jooq.TableField</a>,
    +								which represents a physical
    +								Field in a physical Table. Both the
    +								TableField and its referenced Table
    +								know each other. The physical aspect
    +								of their nature is represented in
    +								jOOQ by
    +								<a href="#TABLE" title="jOOQ Manual reference: Tables, views and their corresponding records">meta model code generation</a>,
    +								where every entity in your database
    +								schema will be generated into a
    +								corresponding Java class.
    +							</p>
    +							<p>
    +								TableFields join both &lt;R&gt; and &lt;T&gt; generic parameters into their specification:
    +							</p>
    +							<pre class="prettyprint lang-java">public interface TableField&lt;R extends Record, T&gt; // [...]</pre>
    +							<p>
    +								This can be used for additional type safety in the future, or by client code.
    +							</p>
    +						<h1 id="Result">
    +<a name="Result"></a>1.4. Results and Records</h1><p>
    +							Results and their Records come into play, when SELECT statements are
    +							executed. There are various ways to fetch data from a jOOQ SELECT
    +							statement. Essentially, the query results are always provided in the
    +							Result API
    +						</p>
    +							<h2>The Result</h2>
    +							<p>
    +								The
    +								<a href="http://www.jooq.org/javadoc/latest/org/jooq/Result.html" title="Internal API reference: org.jooq.Result">Result</a>&lt;R extends <a href="http://www.jooq.org/javadoc/latest/org/jooq/Record.html" title="Internal API reference: org.jooq.Record">Record</a>&gt;
    +								is essentially a wrapper for a List&lt;R extends Record&gt;
    +								providing
    +								many convenience methods for accessing single elements in
    +								the result
    +								set. Depending on the type of SELECT statement,
    +								&lt;R&gt; can be bound
    +								to a sub-type of Record, for instance to an
    +								<a href="http://www.jooq.org/javadoc/latest/org/jooq/UpdatableRecord.html" title="Internal API reference: org.jooq.UpdatableRecord">org.jooq.UpdatableRecord</a>.
    +								See the section on
    +								<a href="#UpdatableRecord" title="jOOQ Manual reference: Updatable Records">Updatable Records</a>
    +								for further details.
    +							</p>
    +
    +							<h2>The Cursor</h2>
    +							<p>
    +								A similar object is the
    +								<a href="http://www.jooq.org/javadoc/latest/org/jooq/Cursor.html" title="Internal API reference: org.jooq.Cursor">Cursor</a>&lt;R extends Record&gt;.
    +								Unlike the Result, the cursor has not fetched all data from the database yet.
    +								This means, you save memory (and potentially speed), but you can only access
    +								data sequentially and you have to keep a JDBC ResultSet alive. Cursors behave
    +								very much like the <a href="http://download.oracle.com/javase/6/docs/api/java/util/Iterator.html" title="External API reference: java.util.Iterator">java.util.Iterator</a>,
    +								by providing a very simple API. Some sample methods are:
    +							</p>
    +<pre class="prettyprint lang-java">// Check whether there are any more records to be fetched
    +boolean hasNext() throws SQLException;
    +
    +// Fetch the next record from the underlying JDBC ResultSet
    +R fetchOne() throws SQLException;
    +
    +// Close the underlying JDBC ResultSet. Don't forget to call this, before disposing the Cursor.
    +void close() throws SQLException;</pre>
    +
    +							<h2>The Record</h2>
    +							<p>
    +								The Record itself holds all the data from your selected tuple. If it is
    +								a <a href="http://www.jooq.org/javadoc/latest/org/jooq/TableRecord.html" title="Internal API reference: org.jooq.TableRecord">org.jooq.TableRecord</a>, then it corresponds exactly to the type of one of your
    +								physical tables in your database. But any anonymous or ad-hoc tuple can
    +								be represented by the plain Record. A record mainly provides access to
    +								its data and adds convenience methods for data type conversion. These
    +								are the main access ways:
    +							</p>
    +<pre class="prettyprint lang-java">// If you can keep a reference of the selected field, then you can get the corresponding value type-safely
    +&lt;T&gt; T getValue(Field&lt;T&gt; field);
    +
    +// If you know the name of the selected field within the tuple,
    +// then you can get its value without any type information
    +Object getValue(String fieldName);
    +
    +// If you know the index of the selected field within the tuple,
    +// then you can get its value without any type information
    +Object getValue(int index);</pre>
    +							<p>
    +								In some cases, you will not be able to reference the selected Fields
    +								both when you create the SELECT statement and when you fetch data from
    +								Records. Then you might use field names or indexes, as with JDBC.
    +								However, of course, the type information will then be lost as well. If
    +								you know what type you want to get, you can always use the Record's
    +								convenience methods for type conversion, however. Some examples:
    +							</p>
    +<pre class="prettyprint lang-java">// These methods will try to convert a value to a BigDecimal.
    +// This will work for all numeric types and for CHAR/VARCHAR types, if they contain numeric values:
    +BigDecimal getValueAsBigDecimal(String fieldName);
    +BigDecimal getValueAsBigDecimal(int fieldIndex);
    +
    +// This method can perform arbitrary conversions
    +&lt;T&gt; T getValue(String fieldName, Class&lt;? extends T&gt; type);
    +&lt;T&gt; T getValue(int fieldIndex, Class&lt;? extends T&gt; type);</pre>
    +
    +							<p>
    +								For more information about the type conversions that are supported by
    +								jOOQ, read the Javadoc on
    +								<a href="http://www.jooq.org/javadoc/latest/org/jooq/tools/Convert.html" title="Internal API reference: org.jooq.tools.Convert">org.jooq.tools.Convert</a>
    +							
    +</p>
    +						<h1 id="UpdatableRecord">
    +<a name="UpdatableRecord"></a>1.5. Updatable Records</h1><p>
    +							UpdatableRecords are a specific subtype of TableRecord that have
    +							primary key information associated with them.
    +						</p>
    +							<h2>CRUD Operations</h2>
    +							<p>As of jOOQ 1.5, the UpdatableRecord essentially contains three additional
    +							 methods <a href="http://de.wikipedia.org/wiki/CRUD">CRUD</a>
    +							 (Create Read Update Delete) operations: </p>
    +<pre class="prettyprint lang-java">// Store any changes made to this record to the database.
    +// The record executes an INSERT if the PRIMARY KEY is NULL or has been changed. Otherwise, an UPDATE is performed.
    +int store();
    +
    +// Deletes the record from the database.
    +int delete();
    +
    +// Reflects changes made in the database to this Record
    +void refresh();</pre>
    +							<p>An example lifecycle of a book can be implemented as such:</p>
    +<pre class="prettyprint lang-java">// Create a new record and insert it into the database
    +TBookRecord book = create.newRecord(T_BOOK);
    +book.setTitle("My first book");
    +book.store();
    +
    +// Update it with new values
    +book.setPublishedIn(2010);
    +book.store();
    +
    +// Delete it
    +book.delete();</pre>
    +							<p>These operations are very simple utilities. They do not
    +							reflect the functionality offered by <a href="http://www.hibernate.org/">Hibernate</a>
    +							or other persistence managers. </p>
    +
    +							<h2>Performing CRUD on non-updatable records</h2>
    +							<p>
    +								If the jOOQ code-generator cannot detect any PRIMARY KEY, or UNIQUE KEY
    +								on your tables, then the generated artefacts implement TableRecord,
    +								instead of UpdatableRecord. A TableRecord can perform the same CRUD
    +								operations as we have seen before, if you provide it with the necessary
    +								key fields. The API looks like this:
    +							</p>
    +
    +<pre class="prettyprint lang-java">// INSERT or UPDATE the record using the provided keys
    +int storeUsing(TableField&lt;R, ?&gt;... keys)
    +
    +// DELETE a record using the provided keys
    +int deleteUsing(TableField&lt;R, ?&gt;... keys);
    +
    +// Reflects changes made in the database to this Record
    +void refreshUsing(TableField&lt;R, ?&gt;... keys);</pre>
    +
    +							<p>
    +								This is useful if your RDBMS does not support referential constraints (e.g. MySQL's
    +								<a href="http://en.wikipedia.org/wiki/MyISAM">MyISAM</a>), or if you want to
    +								store records to an unconstrained view. An example lifecycle of a book without
    +								any keys can then be implemented as such:
    +							</p>
    +<pre class="prettyprint lang-java">// Create a new record and insert it into the database
    +TBookRecord book = create.newRecord(T_BOOK);
    +book.setTitle("My first book");
    +book.storeUsing(TBook.ID);
    +
    +// Update it with new values
    +book.setPublishedIn(2010);
    +book.storeUsing(TBook.ID);
    +
    +// Delete it
    +book.deleteUsing(TBook.ID);</pre>
    +						<h1 id="Query">
    +<a name="Query"></a>1.6. The Query and its various subtypes</h1><p>
    +							The Query type hierarchy is what you use to execute queries. It has the
    +							following subtypes for each kind of operation
    +						</p>
    +							<h2>SELECT statements</h2>
    +							<p>
    +								There are essentially two ways of creating SELECT statements in jOOQ.
    +								For historical reasons, you can create
    +								<a href="http://www.jooq.org/javadoc/latest/org/jooq/SimpleSelectQuery.html" title="Internal API reference: org.jooq.SimpleSelectQuery">org.jooq.SimpleSelectQuery</a> or
    +								<a href="http://www.jooq.org/javadoc/latest/org/jooq/SelectQuery.html" title="Internal API reference: org.jooq.SelectQuery">org.jooq.SelectQuery</a>
    +								objects and add additional query clauses, such as
    +								<a href="http://www.jooq.org/javadoc/latest/org/jooq/Condition.html" title="Internal API reference: org.jooq.Condition">Conditions</a> or
    +								<a href="http://www.jooq.org/javadoc/latest/org/jooq/SortField.html" title="Internal API reference: org.jooq.SortField">SortFields</a> to it.
    +								Since jOOQ 1.3, there is also the possibility to
    +								create SELECT statements using jOOQ's
    +								<a href="#DSL" title="jOOQ Manual reference: DSL or fluent API. Where SQL meets Java">DSL API</a> in a much more intuitive
    +								and SQL-like way.
    +							</p>
    +							<p>Use the DSL API when: </p>
    +							<ul>
    +								
    +<li>You want your code to look like SQL</li>
    +								
    +<li>You want your IDE to help you with auto-completion (you will not be able to write select .. order by .. where .. join or any of that stuff) </li>
    +							
    +</ul>
    +							<p>Use the regular API when: </p>
    +							<ul>
    +								
    +<li>You want to create your query step-by-step, creating query parts one-by-one</li>
    +							    
    +<li>You need to assemble your query from various places, passing the query around, adding new conditions and joins on the way </li>
    +							
    +</ul>
    +							<p>In any case, all API's will construct the same underlying
    +								implementation object, and in many cases, you can combine the two
    +								approaches. Let's check out the various SELECT statement types: </p>
    +
    +							<ul>
    +								
    +<li>
    +<a href="http://www.jooq.org/javadoc/latest/org/jooq/Select.html" title="Internal API reference: org.jooq.Select">org.jooq.Select</a>:
    +								    This Query subtype stands for a general type of SELECT statement.
    +								    It is also the main Select type for the
    +								    <a href="#DSL" title="jOOQ Manual reference: DSL or fluent API. Where SQL meets Java">DSL API</a>. When executed, this object
    +								    will hold a <a href="#Result" title="jOOQ Manual reference: Results and Records">Result containing the resulting Records</a>.
    +								    This type is further subtyped for the various uses of a SELECT statement as such:</li>
    +								
    +<li>
    +<a href="http://www.jooq.org/javadoc/latest/org/jooq/SimpleSelectQuery.html" title="Internal API reference: org.jooq.SimpleSelectQuery">org.jooq.SimpleSelectQuery</a>:
    +									This Query will allow for selecting from single physical Tables only.
    +									It therefore has access to the Table's generic type parameter
    +									&lt;R extends Record&gt; and will provide a matching Result&lt;R&gt;.
    +									This is especially useful if &lt;R&gt; is a subtype of
    +									<a href="#UpdatableRecord" title="jOOQ Manual reference: Updatable Records">UpdatableRecord</a>.
    +									Then you will be able to perform updates on your result set immediately.</li>
    +								
    +<li>
    +<a href="http://www.jooq.org/javadoc/latest/org/jooq/SelectQuery.html" title="Internal API reference: org.jooq.SelectQuery">org.jooq.SelectQuery</a>:
    +									This Query will allow for selecting a subset of Fields from several
    +									Tables. Because the results of such a query are considered of an anonymous
    +									or ad-hoc type, this Query will bind &lt;R&gt; to the general type Record
    +									itself. The purpose of this Query type is to allow for full SQL support,
    +									including SELECT, JOIN and GROUP BY clauses. </li>
    +							
    +</ul>
    +
    +							<h3>Example: SQL query and DSL query</h3>
    +							<table cellspacing="0" cellpadding="0" width="100%">
    +<tr>
    +<td class="left" width="50%">
    +<pre class="prettyprint lang-sql">-- Select all books by authors born after 1920, named "Paulo"
    +-- from a catalogue consisting of authors and books:
    +
    +
    +SELECT *
    +  FROM t_author
    +  JOIN t_book
    +    ON t_author.id = t_book.author_id
    + WHERE t_author.year_of_birth &gt; 1920
    +   AND t_author.first_name = 'Paulo'
    + ORDER BY t_book.title</pre>
    +</td><td class="right" width="50%">
    +<pre class="prettyprint lang-java">// Instanciate your factory using a JDBC connection.
    +Factory create = new Factory(connection, SQLDialect.ORACLE);
    +
    +// Execute the query "on a single line"
    +Result&lt;Record&gt; result = create.select()
    +    .from(T_AUTHOR)
    +    .join(T_BOOK)
    +    .on(T_AUTHOR.ID.equal(T_BOOK.AUTHOR_ID))
    +    .where(T_AUTHOR.YEAR_OF_BIRTH.greaterThan(1920)
    +    .and(T_AUTHOR.FIRST_NAME.equal("Paulo")))
    +    .orderBy(T_BOOK.TITLE).fetch();</pre>
    +</td>
    +</tr>
    +</table>
    +
    +							<p>
    +								In the above example, some generated artefacts are used for querying.
    +								In this case, T_AUTHOR and T_BOOK are instances of types
    +								<a href="https://github.com/lukaseder/jOOQ/blob/master/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/tables/TAuthor.java" title="Internal API reference: org.jooq.test.oracle.generatedclasses.tables.TAuthor">TAuthor</a> and
    +								<a href="https://github.com/lukaseder/jOOQ/blob/master/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/tables/TBook.java" title="Internal API reference: org.jooq.test.oracle.generatedclasses.tables.TBook">TBook</a> respectively.
    +								Their full qualification would read TAuthor.T_AUTHOR and TBook.T_BOOK, but in many cases,
    +								it's useful to static import elements involved with queries, in order to decrease verbosity:
    +								<pre class="prettyprint lang-java">import static com.example.jooq.Tables.*;</pre>
    +							
    +</p>
    +
    +							<p>
    +								Apart from the singleton Table instances TAuthor.T_AUTHOR and
    +								TBook.T_BOOK, these generated classes also contain one member
    +								for every physical field, such as TAuthor.ID or TBook.TAUTHOR_ID, etc.
    +								Depending on your configuration, those members can be static members
    +								(better for static imports) or instance members (better for aliasing)
    +							</p>
    +
    +							<ul>
    +								
    +<li>For more information about code generation, check out the manual's section about
    +									<a href="#META" title="jOOQ Manual reference: Meta model code generation">Meta model source code generation</a>.</li>
    +    							
    +<li>For more DSL examples, please consider the manual's section about the
    +    								<a href="#DSL" title="jOOQ Manual reference: DSL or fluent API. Where SQL meets Java">DSL API</a>.</li>
    +							
    +</ul>
    +
    +							<h3>Example: Non-DSL query</h3>
    +							<p>
    +								If you choose not to use the DSL API (for instance, because you don't
    +								want to add Query parts in the order SQL expects them), you can use
    +								this syntax:
    +							</p>
    +<pre class="prettyprint lang-java">// Re-use the factory to create a SelectQuery. This example will not make use of static imports...
    +SelectQuery q = create.selectQuery();
    +q.addFrom(T_AUTHOR);
    +
    +// This example shows some "mixed" API usage, where the JOIN is added with the standard API, and the
    +// Condition is created using the DSL API
    +q.addJoin(T_BOOK, T_AUTHOR.ID.equal(T_BOOK.AUTHOR_ID));
    +
    +// The AND operator between Conditions is implicit here
    +q.addConditions(T_AUTHOR.YEAR_OF_BIRTH.greaterThan(1920));
    +q.addConditions(T_AUTHOR.FIRST_NAME.equal("Paulo"));
    +q.addOrderBy(T_BOOK.TITLE);</pre>
    +
    +							<h3>Fetching data</h3>
    +							<p>
    +								The <a href="http://www.jooq.org/javadoc/latest/org/jooq/Select.html" title="Internal API reference: org.jooq.Select">org.jooq.Select</a> interface extends
    +								<a href="http://www.jooq.org/javadoc/latest/org/jooq/ResultQuery.html" title="Internal API reference: org.jooq.ResultQuery">org.jooq.ResultQuery</a>,
    +								which provides a range of methods to fetch data from the database.
    +								Once you have constructed your SELECT query (see examples above), you
    +								may choose to either simply execute() it, or use a variety of convenience
    +								fetchXXX() methods.
    +							</p>
    +							<p>
    +								See the manual's
    +								<a href="#ResultQuery" title="jOOQ Manual reference: ResultQuery and various ways of fetching data">section on the ResultQuery</a>
    +								for more details.
    +							</p>
    +
    +
    +							<h2>INSERT Statements</h2>
    +							<p>jOOQ supports two modes for INSERT statements.
    +							The INSERT VALUES and the INSERT SELECT syntax</p>
    +
    +							<h3>Example: SQL query and DSL query</h3>
    +							<table cellspacing="0" cellpadding="0" width="100%">
    +<tr>
    +<td class="left" width="50%">
    +<pre class="prettyprint lang-sql">INSERT INTO T_AUTHOR
    +    (ID, FIRST_NAME, LAST_NAME)
    +VALUES
    +    (100, 'Hermann', 'Hesse'),
    +    (101, 'Alfred', 'D&ouml;blin');</pre>
    +</td><td class="right" width="50%">
    +<pre class="prettyprint lang-java">create.insertInto(T_AUTHOR,
    +        T_AUTHOR.ID, T_AUTHOR.FIRST_NAME, T_AUTHOR.LAST_NAME)
    +      .values(100, "Hermann", "Hesse")
    +      .values(101, "Alfred", "D&ouml;blin")
    +      .execute();</pre>
    +</td>
    +</tr>
    +</table>
    +
    +							<p>The DSL syntax tries to stay close to actual SQL. In detail,
    +								however, Java is limited in its possibilities. That's why the
    +								.values() clause is repeated for every record in multi-record inserts.
    +								Some RDBMS support
    +								inserting several records at the same time. This is also supported in
    +								jOOQ, and simulated using UNION clauses for those RDBMS that don't
    +								support this syntax.
    +								<pre class="prettyprint lang-sql">INSERT INTO .. SELECT .. UNION ALL SELECT ..</pre>
    +							
    +</p>
    +							<p>Note: Just like in SQL itself, you can have syntax errors when you
    +								don't have matching numbers of fields/values. Also, you can run into
    +								runtime problems, if your field/value types don't match. </p>
    +
    +							<h3>Example: DSL Query, alternative syntax</h3>
    +							<p>MySQL (and some other RDBMS) allow for using an UPDATE-like syntax
    +								for INSERT statements. This is also supported in jOOQ, should you
    +								prefer that syntax. The above INSERT statement can also be expressed
    +								as follows: </p>
    +<pre class="prettyprint lang-java">create.insertInto(T_AUTHOR)
    +      .set(T_AUTHOR.ID, 100)
    +      .set(T_AUTHOR.FIRST_NAME, "Hermann")
    +      .set(T_AUTHOR.LAST_NAME, "Hesse")
    +      .newRecord()
    +      .set(T_AUTHOR.ID, 101)
    +      .set(T_AUTHOR.FIRST_NAME, "Alfred")
    +      .set(T_AUTHOR.LAST_NAME, "D&ouml;blin")
    +      .execute();</pre>
    +							<p>As you can see, this syntax is a bit more verbose, but also more
    +								type-safe, as every field can be matched with its value.</p>
    +
    +							<h3>Example: ON DUPLICATE KEY UPDATE clause</h3>
    +							<p>The MySQL database supports a very convenient way to INSERT or
    +								UPDATE a record. This is a non-standard extension to the SQL syntax,
    +								which is supported by jOOQ and simulated in other RDBMS, where this is
    +								possible. Here is an example how to use the ON DUPLICATE KEY UPDATE
    +								clause: </p>
    +<pre class="prettyprint lang-java">// Add a new author called "Koontz" with ID 3.
    +// If that ID is already present, update the author's name
    +create.insertInto(T_AUTHOR, T_AUTHOR.ID, T_AUTHOR.LAST_NAME)
    +      .values(3, "Koontz")
    +      .onDuplicateKeyUpdate()
    +      .set(T_AUTHOR.LAST_NAME, "Koontz")
    +      .execute();</pre>
    +
    +      						<h3>Example: INSERT .. RETURNING clause</h3>
    +							<p>The Postgres database has native support for an INSERT .. RETURNING
    +								clause. This is a very powerful concept that is simulated for all
    +								other dialects using JDBC's
    +								<a href="http://download.oracle.com/javase/6/docs/api/java/sql/Statement.html#getGeneratedKeys()" title="External API reference: java.sql.Statement">getGeneratedKeys()</a>
    +								method. Take this example:</p>
    +
    +<pre class="prettyprint lang-java">// Add another author, with a generated ID
    +Record&lt;?&gt; record =
    +create.insertInto(T_AUTHOR, T_AUTHOR.FIRST_NAME, T_AUTHOR.LAST_NAME)
    +      .values("Charlotte", "Roche")
    +      .returning(T_AUTHOR.ID)
    +      .fetchOne();
    +
    +System.out.println(record.getValue(T_AUTHOR.ID));
    +
    +// For some RDBMS, this also works when inserting several values
    +// The following should return a 2x2 table
    +Result&lt;?&gt; result =
    +create.insertInto(T_AUTHOR, T_AUTHOR.FIRST_NAME, T_AUTHOR.LAST_NAME)
    +      .values("Johann Wolfgang", "von Goethe")
    +      .values("Friedrich", "Schiller")
    +      // You can request any field. Also trigger-generated values
    +      .returning(T_AUTHOR.ID, T_AUTHOR.CREATION_DATE)
    +      .fetch();</pre>
    +
    +      						<p>
    +      							Be aware though, that this can lead to race-conditions
    +      							in those databases that cannot properly return generated
    +      							ID values.
    +      						</p>
    +
    +      						<h3>Example: Non-DSL Query</h3>
    +      						<p>You can always use the more verbose regular syntax of the InsertQuery, if you need more control: </p>
    +<pre class="prettyprint lang-java">// Insert a new author into the T_AUTHOR table
    +InsertQuery&lt;TAuthorRecord&gt; i = create.insertQuery(T_AUTHOR);
    +i.addValue(T_AUTHOR.ID, 100);
    +i.addValue(T_AUTHOR.FIRST_NAME, "Hermann");
    +i.addValue(T_AUTHOR.LAST_NAME, "Hesse");
    +
    +i.newRecord();
    +i.addValue(T_AUTHOR.ID, 101);
    +i.addValue(T_AUTHOR.FIRST_NAME, "Alfred");
    +i.addValue(T_AUTHOR.LAST_NAME, "D&ouml;blin");
    +i.execute();</pre>
    +
    +							<h3>Example: INSERT Query combined with SELECT statements</h3>
    +							<p>The InsertQuery.addValue() method is overloaded, such that you can
    +								also provide a Field, potentially containing an expression: </p>
    +<pre class="prettyprint lang-java">// Insert a new author into the T_AUTHOR table
    +InsertQuery&lt;TAuthorRecord&gt; i = create.insertQuery(T_AUTHOR);
    +i.addValue(T_AUTHOR.ID, create.select(max(T_AUTHOR.ID).add(1)).from(T_AUTHOR).asField())
    +i.addValue(T_AUTHOR.FIRST_NAME, "Hermann");
    +i.addValue(T_AUTHOR.LAST_NAME, "Hesse");
    +i.execute();</pre>
    +							<p>Note that especially MySQL (and some other RDBMS) has some
    +								limitations regarding that syntax. You may not be able to
    +								select from the same table you're inserting into</p>
    +
    +							<h3>Example: INSERT SELECT syntax support</h3>
    +							<p>In some occasions, you may prefer the INSERT SELECT syntax, for instance, when
    +								you copy records from one table to another: </p>
    +<pre class="prettyprint lang-java">Insert i = create.insertInto(T_AUTHOR_ARCHIVE)
    +                 .select(create.selectFrom(T_AUTHOR).where(T_AUTHOR.DECEASED.isTrue()));
    +i.execute();</pre>
    +
    +
    +							<h2>UPDATE Statements</h2>
    +							<p>UPDATE statements are only possible on single tables. Support for
    +							multi-table updates will be implemented in the near future. </p>
    +
    +							<h3>Example: SQL query and DSL query</h3>
    +							<table cellspacing="0" cellpadding="0" width="100%">
    +<tr>
    +<td class="left" width="50%">
    +<pre class="prettyprint lang-sql">UPDATE T_AUTHOR
    +   SET FIRST_NAME = 'Hermann',
    +       LAST_NAME = 'Hesse'
    + WHERE ID = 3;
    + </pre>
    +</td><td class="right" width="50%">
    +<pre class="prettyprint lang-java">create.update(T_AUTHOR)
    +      .set(T_AUTHOR.FIRST_NAME, "Hermann")
    +      .set(T_AUTHOR.LAST_NAME, "Hesse")
    +      .where(T_AUTHOR.ID.equal(3))
    +      .execute();</pre>
    +</td>
    +</tr>
    +</table>
    +
    +							<h3>Example: Non-DSL Query</h3>
    +							<p>Using the <a href="http://www.jooq.org/javadoc/latest/org/jooq/UpdateQuery.html" title="Internal API reference: org.jooq.UpdateQuery">org.jooq.UpdateQuery</a> class,
    +							this is how you could express an UPDATE statement:</p>
    +<pre class="prettyprint lang-java">UpdateQuery&lt;TAuthorRecord&gt; u = create.updateQuery(T_AUTHOR);
    +u.addValue(T_AUTHOR.FIRST_NAME, "Hermann");
    +u.addValue(T_AUTHOR.FIRST_NAME, "Hesse");
    +u.addConditions(T_AUTHOR.ID.equal(3));
    +u.execute();</pre>
    +
    +
    +							<h2>DELETE Statements</h2>
    +							<p>DELETE statements are only possible on single tables. Support for
    +							multi-table deletes will be implemented in the near future. </p>
    +
    +							<h3>Example: SQL query and DSL query</h3>
    +							<table cellspacing="0" cellpadding="0" width="100%">
    +<tr>
    +<td class="left" width="50%">
    +<pre class="prettyprint lang-sql">DELETE T_AUTHOR
    + WHERE ID = 100;
    + </pre>
    +</td><td class="right" width="50%">
    +<pre class="prettyprint lang-java">create.delete(T_AUTHOR)
    +      .where(T_AUTHOR.ID.equal(100))
    +      .execute();</pre>
    +</td>
    +</tr>
    +</table>
    +
    +							<h3>Example: Non-DSL Query</h3>
    +							<p>Using the <a href="http://www.jooq.org/javadoc/latest/org/jooq/DeleteQuery.html" title="Internal API reference: org.jooq.DeleteQuery">org.jooq.DeleteQuery</a> class,
    +							this is how you could express a DELETE statement: </p>
    +<pre class="prettyprint lang-java">DeleteQuery&lt;TAuthorRecord&gt; d = create.deleteQuery(T_AUTHOR);
    +d.addConditions(T_AUTHOR.ID.equal(100));
    +d.execute();</pre>
    +
    +
    +							<h2>MERGE Statement</h2>
    +							<p>
    +								The MERGE statement is one of the most advanced standardised SQL
    +								constructs, which is supported by DB2, HSQLDB, Oracle, SQL Server and
    +								Sybase (MySQL has the similar INSERT .. ON DUPLICATE KEY UPDATE
    +								construct. H2's MERGE variant is currently not supported.)
    +							</p>
    +							<p>
    +								The point of the standard MERGE statement is to take a TARGET table, and
    +								merge (INSERT, UPDATE) data from a SOURCE table into it. DB2, Oracle,
    +								SQL Server and Sybase also allow for DELETING some data and for adding
    +								many additional clauses. With jOOQ 2.0.1, only Oracle's MERGE extensions are supported.
    +								Here is an example:
    +							</p>
    +
    +							<table cellspacing="0" cellpadding="0" width="100%">
    +<tr>
    +<td class="left" width="50%">
    +<pre class="prettyprint lang-sql">-- Check if there is already an author called 'Hitchcock'
    +-- If there is, rename him to John. If there isn't add him.
    +
    +MERGE INTO T_AUTHOR
    +USING (SELECT 1 FROM DUAL)
    +ON (LAST_NAME = 'Hitchcock')
    +WHEN MATCHED THEN UPDATE SET FIRST_NAME = 'John'
    +WHEN NOT MATCHED THEN INSERT (LAST_NAME)
    +                      VALUES ('Hitchcock')</pre>
    +</td><td class="right" width="50%">
    +<pre class="prettyprint lang-java">create.mergeInto(T_AUTHOR)
    +      .using(create().selectOne())
    +      .on(T_AUTHOR.LAST_NAME.equal("Hitchcock"))
    +      .whenMatchedThenUpdate()
    +      .set(T_AUTHOR.FIRST_NAME, "John")
    +      .whenNotMatchedThenInsert(T_AUTHOR.LAST_NAME)
    +      .values("Hitchcock")
    +      .execute();
    +
    +</pre>
    +</td>
    +</tr>
    +</table>
    +
    +
    +							<h2>TRUNCATE Statement</h2>
    +							<p>
    +								The syntax is trivial:
    +							</p>
    +
    +							<table cellspacing="0" cellpadding="0" width="100%">
    +<tr>
    +<td class="left" width="50%">
    +<pre class="prettyprint lang-sql">TRUNCATE TABLE T_AUTHOR;</pre>
    +</td><td class="right" width="50%">
    +<pre class="prettyprint lang-java">create.truncate(T_AUTHOR).execute();</pre>
    +</td>
    +</tr>
    +</table>
    +							<p>This is not supported by Ingres and SQLite. jOOQ will execute a DELETE FROM
    +								T_AUTHOR statement instead. </p>
    +						<h1 id="ResultQuery">
    +<a name="ResultQuery"></a>1.7. ResultQuery and various ways of fetching data</h1><p>
    +							Various jOOQ query type extend the ResultQuery which provides many means of
    +							fetching data. In general, fetching means executing and returning some
    +							sort of result.
    +						</p>
    +							<h2>The ResultQuery provides many convenience methods</h2>
    +							<p>These methods allow for fetching a jOOQ Result or parts of it.</p>
    +
    +<pre class="prettyprint lang-java">// Fetch the whole result
    +Result&lt;R&gt; fetch();
    +
    +// Fetch a single field from the result
    +&lt;T&gt; List&lt;T&gt; fetch(Field&lt;T&gt; field);
    +    List&lt;?&gt; fetch(int fieldIndex);
    +&lt;T&gt; List&lt;T&gt; fetch(int fieldIndex, Class&lt;? extends T&gt; type);
    +    List&lt;?&gt; fetch(String fieldName);
    +&lt;T&gt; List&lt;T&gt; fetch(String fieldName, Class&lt;? extends T&gt; type);
    +
    +// Fetch the first Record
    +R fetchAny();
    +
    +// Fetch exactly one Record
    +R fetchOne();
    +
    +// Fetch a single field of exactly one Record
    +&lt;T&gt; T  fetchOne(Field&lt;T&gt; field);
    +Object fetchOne(int fieldIndex);
    +&lt;T&gt; T  fetchOne(int fieldIndex, Class&lt;? extends T&gt; type);
    +Object fetchOne(String fieldName);
    +&lt;T&gt; T  fetchOne(String fieldName, Class&lt;? extends T&gt; type);</pre>
    +
    +							<p>These methods transform the result into another form, if org.jooq.Result is not optimal</p>
    +
    +<pre class="prettyprint lang-java">// Fetch the resulting records as Maps
    +List&lt;Map&lt;String, Object&gt;&gt; fetchMaps();
    +     Map&lt;String, Object&gt;  fetchOneMap();
    +
    +// Fetch the result as a Map
    +&lt;K&gt;    Map&lt;K, R&gt; fetchMap(Field&lt;K&gt; key);
    +&lt;K, V&gt; Map&lt;K, V&gt; fetchMap(Field&lt;K&gt; key, Field&lt;V&gt; value);
    +
    +// Fetch the resulting records as arrays
    +Object[][] fetchArrays();
    +Object[]   fetchOneArray();
    +
    +// Fetch a single field as an array
    +&lt;T&gt;  T[] fetchArray(Field&lt;T&gt; field);
    +Object[] fetchArray(int fieldIndex);
    +&lt;T&gt;  T[] fetchArray(int fieldIndex, Class&lt;? extends T&gt; type);
    +Object[] fetchArray(String fieldName);
    +&lt;T&gt;  T[] fetchArray(String fieldName, Class&lt;? extends T&gt; type);</pre>
    +
    +							<p>These methods transform the result into a user-defined form, if org.jooq.Result is not optimal</p>
    +
    +<pre class="prettyprint lang-java">// Fetch the resulting records into a custom POJO
    +// type, which may or may not be JPA-annotated
    +// Use the generator's &lt;pojos&gt;true&lt;/pojos&gt; and &lt;jpaAnnotation&gt;true&lt;/jpaAnnotation&gt;
    +// configurations to generate such POJOs with jOOQ
    +&lt;E&gt; List&lt;E&gt; fetchInto(Class&lt;? extends E&gt; type);
    +
    +// Fetch the resulting records into a custom
    +// record handler, similar to how Spring JdbcTemplate's
    +// RowMapper or the Ollin Framework works.
    +&lt;H extends RecordHandler&lt;R&gt;&gt; H fetchInto(H handler);
    +
    +// These change the behaviour of fetching itself,
    +// especially, when not all data should be
    +// fetched at once
    +// ----------------------------------------------
    +
    +// Fetch a Cursor for lazy iteration
    +Cursor&lt;R&gt; fetchLazy();
    +
    +// Or a JDBC ResultSet, if you prefer that
    +ResultSet fetchResultSet();
    +
    +// Fetch data asynchronously and let client code
    +// decide, when the data must be available.
    +// This makes use of the java.util.concurrent API,
    +// Similar to how Avaj&eacute; Ebean works.
    +FutureResult&lt;R&gt; fetchLater();
    +FutureResult&lt;R&gt; fetchLater(ExecutorService executor);</pre>
    +						<h1 id="BindValues">
    +<a name="BindValues"></a>1.8. Bind values</h1><p>
    +							Variable binding has a great impact on how you design your SQL queries.
    +							It will influence your SQL queries' security aspect as well as execution speed.
    +						</p>
    +							<h2>Bind values</h2>
    +							<p>
    +								Bind values are used in SQL / JDBC for various reasons. Among the most
    +								obvious ones are:
    +							</p>
    +							<ul>
    +								
    +<li>
    +									Protection against SQL injection. Instead of inlining values
    +									possibly originating from user input, you bind those values to
    +									your prepared statement and let the JDBC driver / database take
    +									care of handling security aspects.
    +								</li>
    +								
    +<li>
    +									Increased speed. Advanced databases such as Oracle can keep
    +									execution plans of similar queries in a dedicated cache to prevent
    +									hard-parsing your query again and again. In many cases, the actual
    +									value of a bind variable does not influence the execution plan, hence
    +									it can be reused. Preparing a statement will thus be faster
    +								</li>
    +								
    +<li>
    +									On a JDBC level, you can also reuse the SQL string and prepared statement
    +									object instead of constructing it again, as you can bind new values to
    +									the prepared statement. This is currently not supported by jOOQ, though
    +								</li>
    +							
    +</ul>
    +
    +							<h3>Ways to introduce bind values with jOOQ</h3>
    +							<p>
    +								Bind values are omni-present in jOOQ. Whenever you create a condition,
    +								you're actually also adding a bind value:
    +							</p>
    +<pre class="prettyprint lang-java">// In jOOQ, "Poe" will be the bind value bound to the condition
    +LAST_NAME.equal("Poe");</pre>
    +
    +
    +							<p>
    +								The above notation is actually convenient way to explicitly create
    +								a bind value for "Poe". You could also write this, instead:
    +							</p>
    +<pre class="prettyprint lang-java">// The Factory allows for explicitly creating bind values
    +LAST_NAME.equal(Factory.val("Poe"));
    +
    +// Or, when static importing Factory.val:
    +LAST_NAME.equal(val("Poe"))</pre>
    +
    +							<p>
    +								Once created, bind values are part of the query's syntax tree (see
    +								<a href="#QueryPart" title="jOOQ Manual reference: QueryParts and the global architecture">the manual's section about jOOQ's architecture</a>
    +							    for more information about jOOQ's internals),
    +								and cannot be modified directly anymore. If you wish to reuse a query and
    +								modify bind values between subsequent query executions, you can access them again
    +								through the <a href="http://www.jooq.org/javadoc/latest/org/jooq/Query.html" title="Internal API reference: org.jooq.Query">org.jooq.Query</a> interface:
    +							</p>
    +
    +<pre class="prettyprint lang-java">// Access the first bind value from a query. Indexes are counted from 1, just as with JDBC
    +Query query = create.select().from(T_AUTHOR).where(LAST_NAME.equal("Poe"));
    +Param&lt;?&gt; param = query.getParam("1");
    +
    +// You could now modify the Query's underlying bind value:
    +if ("Poe".equal(param.getValue())) {
    +    param.setConverted("Orwell");
    +}</pre>
    +
    +							<p>
    +								The <a href="http://www.jooq.org/javadoc/latest/org/jooq/Param.html" title="Internal API reference: org.jooq.Param">org.jooq.Param</a> type can also be named explicitly
    +								using the Factory's param() methods:
    +							</p>
    +<pre class="prettyprint lang-java">// Create a query with a named parameter. You can then use that name for accessing the parameter again
    +Query query1 = create.select().from(T_AUTHOR).where(LAST_NAME.equal(param("lastName", "Poe")));
    +Param&lt;?&gt; param1 = query.getParam("lastName");
    +
    +// Or, keep a reference to the typed parameter in order not to lose the &lt;T&gt; type information:
    +Param&lt;String&gt; param2 = param("lastName", "Poe");
    +Query query2 = create.select().from(T_AUTHOR).where(LAST_NAME.equal(param2));
    +
    +// You can now change the bind value directly on the Param reference:
    +param2.setValue("Orwell");
    +</pre>
    +
    +							<p>
    +								The <a href="http://www.jooq.org/javadoc/latest/org/jooq/Query.html" title="Internal API reference: org.jooq.Query">org.jooq.Query</a> interface also allows for
    +								setting new bind values directly, without accessing the Param type:
    +							</p>
    +
    +<pre class="prettyprint lang-java">Query query1 = create.select().from(T_AUTHOR).where(LAST_NAME.equal("Poe"));
    +query1.bind(1, "Orwell");
    +
    +// Or, with named parameters
    +Query query2 = create.select().from(T_AUTHOR).where(LAST_NAME.equal(param("lastName", "Poe")));
    +query2.bind("lastName", "Orwell");</pre>
    +
    +							<p>
    +								NOTE: Should you wish to use jOOQ only as a query builder and execute
    +								queries with another tool, such as Spring Data instead, you can also
    +								use the Factory's renderNamedParams() method, to actually render named
    +								parameter names in generated SQL:
    +							</p>
    +
    +							<table cellspacing="0" cellpadding="0" width="100%">
    +<tr>
    +<td class="left" width="50%">
    +<pre class="prettyprint lang-sql">-- The named bind variable can be rendered
    +
    +SELECT *
    +FROM T_AUTHOR
    +WHERE LAST_NAME = :lastName
    +</pre>
    +</td><td class="right" width="50%">
    +<pre class="prettyprint lang-java">create.renderNamedParams(
    +    create.select()
    +          .from(T_AUTHOR)
    +          .where(LAST_NAME.equal(
    +                 param("lastName", "Poe"))));</pre>
    +</td>
    +</tr>
    +</table>
    +						<h1 id="QueryPart">
    +<a name="QueryPart"></a>1.9. QueryParts and the global architecture</h1><p>When constructing Query objects in jOOQ, everything is
    +							considered a QueryPart. The purpose of this quickly becomes clear when
    +							checking out the QueryPart API essentials</p>
    +							<h2>Everything is a QueryPart</h2>
    +							<p>
    +								A
    +								<a href="http://www.jooq.org/javadoc/latest/org/jooq/Query.html" title="Internal API reference: org.jooq.Query">org.jooq.Query</a>
    +								and all its contained objects is a
    +								<a href="http://www.jooq.org/javadoc/latest/org/jooq/QueryPart.html" title="Internal API reference: org.jooq.QueryPart">org.jooq.QueryPart</a>.
    +								QueryParts essentially provide this functionality:
    +							</p>
    +							<ul>
    +								
    +<li>they can render SQL using the toSQL(RenderContext) method</li>
    +								
    +<li>they can bind variables using the bind(BindContext) method</li>
    +							
    +</ul>
    +
    +							<p>Both of these methods are contained in jOOQ's internal API's
    +							   <a href="http://www.jooq.org/javadoc/latest/org/jooq/QueryPartInternal.html" title="Internal API reference: org.jooq.QueryPartInternal">org.jooq.QueryPartInternal</a>, which is
    +							   internally implemented by every QueryPart. QueryPart internals are best
    +							   illustrated with an example.</p>
    +
    +						   <h2>Example: CompareCondition</h2>
    +						   <p>A simple example can be provided by checking out jOOQ's internal
    +								representation of a
    +								<a href="http://www.jooq.org/javadoc/latest/org/jooq/impl/CompareCondition.html" title="Internal API reference: org.jooq.impl.CompareCondition">org.jooq.impl.CompareCondition</a>.
    +								It is used for any condition
    +								comparing two fields as for example the T_AUTHOR.ID = T_BOOK.AUTHOR_ID
    +								condition here: </p>
    +<pre class="prettyprint lang-sql">-- [...]
    +FROM T_AUTHOR
    +JOIN T_BOOK ON T_AUTHOR.ID = T_BOOK.AUTHOR_ID
    +-- [...]</pre>
    +
    +							<p>This is how jOOQ implements such a condition: </p>
    +
    +<pre class="prettyprint lang-java">@Override
    +public final void bind(BindContext context) throws SQLException {
    +    // The CompareCondition itself does not bind any variables.
    +    // But the two fields involved in the condition might do so...
    +    context.bind(field1).bind(field2);
    +}
    +
    +@Override
    +public final void toSQL(RenderContext context) {
    +    // The CompareCondition delegates rendering of the Fields to the Fields
    +    // themselves and connects them using the Condition's comparator operator:
    +    context.sql(field1)
    +           .sql(" ");
    +
    +    // If the second field is null, some convenience behaviour can be
    +    // implemented here
    +    if (field2.isNullLiteral()) {
    +        switch (comparator) {
    +            case EQUALS:
    +                context.sql("is null");
    +                break;
    +
    +            case NOT_EQUALS:
    +                context.sql("is not null");
    +                break;
    +
    +            default:
    +                throw new IllegalStateException("Cannot compare null with " + comparator);
    +        }
    +    }
    +
    +    // By default, also delegate the right hand side's SQL rendering to the
    +    // underlying field
    +    else {
    +        context.sql(comparator.toSQL())
    +               .sql(" ")
    +               .sql(field2);
    +    }
    +}
    +</pre>
    +							<p>For more complex examples, please refer to the codebase, directly</p>
    +						<h1 id="Serializability">
    +<a name="Serializability"></a>1.10. Serializability of QueryParts and Results</h1><p>Most of the jOOQ API implements the Serializable interface.
    +							This helps storing queries and partial queries in files, transferring
    +							queries or result data over TCP/IP, etc. </p>
    +							<h2>Attaching QueryParts</h2>
    +							<p>
    +								The only transient element in any jOOQ object is the
    +								<a href="#Factory" title="jOOQ Manual reference: The Factory class">The Factory class</a>'s
    +								underlying
    +								<a href="http://download.oracle.com/javase/6/docs/api/java/sql/Connection.html" title="External API reference: java.sql.Connection">java.sql.Connection</a>. When you want to execute queries after
    +								de-serialisation, or when you want to store/refresh/delete
    +								<a href="#UpdatableRecord" title="jOOQ Manual reference: Updatable Records">Updatable Records</a>,
    +								you will have to "import" or "re-attach" them to a Factory
    +							</p>
    +<pre class="prettyprint lang-java">// Deserialise a SELECT statement
    +ObjectInputStream in = new ObjectInputStream(...);
    +Select&lt;?&gt; select = (Select&lt;?&gt;) in.readObject();
    +
    +// This will throw a DetachedException:
    +select.execute();
    +
    +// In order to execute the above select, attach it first
    +Factory create = new Factory(connection, SQLDialect.ORACLE);
    +create.attach(select);</pre>
    +
    +
    +							<h2>Automatically attaching QueryParts</h2>
    +							<p>
    +								Note, this functionality is deprecated with jOOQ 2.1.0.
    +								Please use the <a href="#ExecuteListener" title="jOOQ Manual reference: Execute listeners and the jOOQ Console">ExecuteListener</a> API
    +								instead, to provide jOOQ queries with a
    +								<a href="http://download.oracle.com/javase/6/docs/api/java/sql/Connection.html" title="External API reference: java.sql.Connection">java.sql.Connection</a> before
    +								execution.
    +							</p>
    +							<p>In simple cases, you can register a ConfigurationProvider in jOOQ's ConfigurationRegistry</p>
    +<pre class="prettyprint lang-java">// Create your own custom ConfigurationProvider that will make
    +// your default Factory available to jOOQ
    +ConfigurationProvider provider = new CustomConfigurationProvider();
    +
    +// Statically register the provider to jOOQ's ConfigurationRegistry
    +ConfigurationRegistry.setProvider(provider);</pre>
    +
    +							<p>Once you have executed these steps, all subsequent deserialisations
    +								will try to access a Configuration (containing a JDBC Connection) from
    +								your ConfigurationProvider. This may be useful when </p>
    +							<ul>
    +								
    +<li>transporting jOOQ QueryParts or Records via TCP/IP, RMI, etc (e.g.
    +									between client and server), before immediately executing queries,
    +									storing UpdatableRecords</li>
    +								
    +<li>
    +									Using automatic mechanisms as known in
    +									<a href="http://wicket.apache.org/">Wicket</a>
    +								
    +</li>
    +							
    +</ul>
    +						<h1 id="Extend">
    +<a name="Extend"></a>1.11. Extend jOOQ with custom types</h1><p>Maybe jOOQ is missing functionality that you would like to see,
    +							or you can't wait for the next release... In this case, you can extend
    +							any of the following open jOOQ implementation classes</p>
    +							<h2>Write your own QueryPart implementations</h2>
    +							<p>If a SQL clause is too complex to express with jOOQ, you can extend
    +								either one of the following types for use directly in a jOOQ query:</p>
    +<pre class="prettyprint lang-java">public abstract class CustomField&lt;T&gt; extends AbstractField&lt;T&gt; {
    +  // [...]
    +}
    +public abstract class CustomCondition extends AbstractCondition {
    +  // [...]
    +}</pre>
    +
    +							<p>These two classes are declared public and covered by integration
    +								tests. When you extend these classes, you will have to provide your
    +								own implementations for the <a href="#QueryPart" title="jOOQ Manual reference: QueryParts and the global architecture">QueryParts</a>'
    +								bind(<a href="http://www.jooq.org/javadoc/latest/org/jooq/BindContext.html" title="Internal API reference: org.jooq.BindContext">BindContext</a>) and
    +								toSQL(<a href="http://www.jooq.org/javadoc/latest/org/jooq/RenderContext.html" title="Internal API reference: org.jooq.RenderContext">RenderContext</a>) methods:</p>
    +<pre class="prettyprint lang-java">// This method must produce valid SQL. If your QueryPart contains other QueryParts, you may delegate SQL code generation to them
    +// in the correct order, passing the render context.
    +//
    +// If context.inline() is true, you must inline all bind variables
    +// If context.inline() is false, you must generate ? for your bind variables
    +public void toSQL(RenderContext context);
    +
    +// This method must bind all bind variables to a PreparedStatement. If your QueryPart contains other QueryParts, you may delegate
    +// variable binding to them in the correct order, passing the bind context.
    +//
    +// Every QueryPart must ensure, that it starts binding its variables at context.nextIndex().
    +public void bind(BindContext context) throws DataAccessException;</pre>
    +
    +							<p>The above contract may be a bit tricky to understand at first. The
    +								best thing is to check out jOOQ source code and have a look at a
    +								couple of QueryParts, to see how it's done.</p>
    +							<h2>Plain SQL as an alternative</h2>
    +							<p>If you don't need integration of rather complex QueryParts into
    +								jOOQ, then you might be safer using simple
    +								<a href="#SQL" title="jOOQ Manual reference: When it's just easier: Plain SQL">Plain SQL</a> functionality,
    +								where you can provide jOOQ with a simple String representation of your
    +								embedded SQL. </p>
    +						<h1 id="META">
    +<a name="META"></a>2. Meta model code generation</h1><p>In these sections you will learn about how to configure and use
    +					jOOQ's source code generator</p>
    +					<h2>Overview</h2>
    +					<p>
    +						In the previous chapter, we have seen how to use the
    +						<a href="#Factory" title="jOOQ Manual reference: The Factory class">Factory</a> in order to create
    +						<a href="#Query" title="jOOQ Manual reference: The Query and its various subtypes">Queries</a> and fetch data in
    +						<a href="#Result" title="jOOQ Manual reference: Results and Records">Results</a>. The strength of jOOQ not
    +						only lies in its object-oriented
    +						<a href="#QueryPart" title="jOOQ Manual reference: QueryParts and the global architecture">Query model</a>,
    +						but also in the fact
    +						that Java source code is generated from your database schema into the
    +						META data model. jOOQ follows the paradigm, that your database comes
    +						first (see also <a href="<?=$root?>/">home page</a>).
    +						This means that you should not modify
    +						generated source code, but only adapt entities in your database. Every
    +						change in your database is reflected in a corresponding change in your
    +						generated meta-model.
    +					</p>
    +					<p>
    +						Artefacts, such as tables, views, user defined types, sequences, stored
    +						procedures, packages have a corresponding artefact in Java.
    +					</p>
    +				<h1 id="Configuration">
    +<a name="Configuration"></a>2.1. Configuration and setup of the generator</h1><p>jOOQ uses a simple configuration file to configure source code generation.</p>
    +							<h2>The deliverables</h2>
    +							<p>
    +								There are three binaries available with jOOQ, to be downloaded from
    +								<a href="https://sourceforge.net/projects/jooq/">SourceForge</a>
    +								or from Maven central:
    +							</p>
    +							<ul>
    +								
    +<li>
    +									
    +<strong>jOOQ.jar</strong>
    +									
    +<br>
    +									The main library that you will include in your application to run jOOQ
    +								</li>
    +								
    +<li>
    +									
    +<strong>jOOQ-meta.jar</strong>
    +									
    +<br>
    +									The utility that you will include in your build to navigate your
    +									database schema for code generation. This can be used as a schema
    +									crawler as well.
    +								</li>
    +								
    +<li>
    +									
    +<strong>jOOQ-codegen.jar</strong>
    +									
    +<br>
    +									The utility that you will include in your build to generate your
    +									database schema
    +								</li>
    +							
    +</ul>
    +
    +							<h2>Dependencies</h2>
    +							<p>All of jOOQ's dependencies are "optional", i.e. you can run
    +								jOOQ without any of those libraries.
    +								For instance, jOOQ maintains an "optional" dependency on log4j and slf4j.
    +								This means, that jOOQ tries to find log4j (and /log4j.xml) or slf4j on the
    +								classpath. If they are not present, then java.util.logging.Logger is
    +								used instead.
    +							</p>
    +							<p>
    +								Other optional dependencies are the JPA API, and the Oracle JDBC driver,
    +								which is needed for Oracle's advanced data types, only
    +							</p>
    +
    +
    +							<h2>Configure jOOQ's code generator</h2>
    +							<p>You need to tell jOOQ some things about your database connection.
    +								Here's an example of how to do it for an Oracle database </p>
    +<pre class="prettyprint lang-xml">&lt;?xml version="1.0" encoding="UTF-8" standalone="yes"?&gt;
    +&lt;configuration&gt;
    +  &lt;!-- Configure the database connection here --&gt;
    +  &lt;jdbc&gt;
    +    &lt;driver&gt;oracle.jdbc.OracleDriver&lt;/driver&gt;
    +    &lt;url&gt;jdbc:oracle:thin:@[your jdbc connection parameters]&lt;/url&gt;
    +    &lt;user&gt;[your database user]&lt;/user&gt;
    +    &lt;password&gt;[your database password]&lt;/password&gt;
    +    &lt;!-- You can also pass user/password and other JDBC properties in the optional properties tag: --&gt;
    +    &lt;properties&gt;
    +      &lt;property&gt;&lt;key&gt;user&lt;/key&gt;&lt;value&gt;[db-user]&lt;/value&gt;&lt;/property&gt;
    +      &lt;property&gt;&lt;key&gt;password&lt;/key&gt;&lt;value&gt;[db-password]&lt;/value&gt;&lt;/property&gt;
    +    &lt;/properties&gt;
    +  &lt;/jdbc&gt;
    +
    +  &lt;generator&gt;
    +    &lt;database&gt;
    +      &lt;!-- The database dialect from jooq-meta. Available dialects are
    +           named org.util.[database].[database]Database. Known values are:
    +
    +           org.jooq.util.ase.ASEDatabase
    +           org.jooq.util.db2.DB2Database
    +           org.jooq.util.derby.DerbyDatabase
    +           org.jooq.util.h2.H2Database
    +           org.jooq.util.hsqldb.HSQLDBDatabase
    +           org.jooq.util.ingres.IngresDatabase
    +           org.jooq.util.mysql.MySQLDatabase
    +           org.jooq.util.oracle.OracleDatabase
    +           org.jooq.util.postgres.PostgresDatabase
    +           org.jooq.util.sqlite.SQLiteDatabaes
    +           org.jooq.util.sqlserver.SQLServerDatabase
    +           org.jooq.util.sybase.SybaseDatabase
    +
    +           You can also provide your own org.jooq.util.Database implementation
    +           here, if your database is currently not supported --&gt;
    +      &lt;name&gt;org.jooq.util.oracle.OracleDatabase&lt;/name&gt;
    +
    +      &lt;!-- All elements that are generated from your schema (several Java
    +           regular expressions, separated by comma) Watch out for
    +           case-sensitivity. Depending on your database, this might be
    +           important! You can create case-insensitive regular expressions
    +           using this syntax: (?i:expr)A comma-separated list of regular
    +           expressions --&gt;
    +      &lt;includes&gt;.*&lt;/includes&gt;
    +
    +      &lt;!-- All elements that are excluded from your schema (several Java
    +           regular expressions, separated by comma). Excludes match before
    +           includes --&gt;
    +      &lt;excludes&gt;&lt;/excludes&gt;
    +
    +      &lt;!-- The schema that is used locally as a source for meta information.
    +           This could be your development schema or the production schema, etc
    +           This cannot be combined with the schemata element. --&gt;
    +      &lt;inputSchema&gt;[your database schema / owner / name]&lt;/inputSchema&gt;
    +    &lt;/database&gt;
    +
    +    &lt;generate&gt;
    +      &lt;!-- See advanced configuration properties --&gt;
    +    &lt;/generate&gt;
    +
    +    &lt;target&gt;
    +      &lt;!-- The destination package of your generated classes (within the
    +           destination directory) --&gt;
    +      &lt;packageName&gt;[org.jooq.your.packagename]&lt;/packageName&gt;
    +
    +      &lt;!-- The destination directory of your generated classes --&gt;
    +      &lt;directory&gt;[/path/to/your/dir]&lt;/directory&gt;
    +    &lt;/target&gt;
    +  &lt;/generator&gt;
    +&lt;/configuration&gt;</pre>
    +
    +							<p>
    +								There are also lots of advanced configuration parameters, which will be
    +								treated in the <a href="#AdvancedConfiguration" title="jOOQ Manual reference: Advanced configuration of the generator">manual's next section</a>
    +								Note, you can find the official XSD file at
    +							   <a href="http://www.jooq.org/xsd/jooq-codegen-2.1.0.xsd" title="The jOOQ-codegen configuration XSD">http://www.jooq.org/xsd/jooq-codegen-2.1.0.xsd</a>
    +							   for a formal specification</p>
    +
    +							<h2>Run jOOQ code generation</h2>
    +							<p>Code generation works by calling this class with the above property file as argument.</p>
    +							<pre class="prettyprint">org.jooq.util.GenerationTool /jooq-config.xml</pre>
    +							<p>Be sure that these elements are located on the classpath: </p>
    +							<ul>
    +								
    +<li>The property file</li>
    +								
    +<li>jooq.jar, jooq-meta.jar, jooq-codegen.jar</li>
    +								
    +<li>The JDBC driver you configured</li>
    +							
    +</ul>
    +
    +							<h3>A command-line example (For Windows, unix/linux/etc will be similar)</h3>
    +							<ul>
    +								
    +<li>Put the property file, jooq*.jar and the JDBC driver into
    +									a directory, e.g. C:\temp\jooq</li>
    +							    
    +<li>Go to C:\temp\jooq</li>
    +							    
    +<li>Run java -cp jooq.jar;jooq-meta.jar;jooq-codegen.jar;[JDBC-driver].jar;. org.jooq.util.GenerationTool /[property file] </li>
    +							
    +</ul>
    +							<p>Note that the property file must be passed as a classpath resource</p>
    +
    +							<h3>Run code generation from Eclipse</h3>
    +							<p>Of course, you can also run code generation from your IDE. In
    +								Eclipse, set up a project like this. Note that this example uses
    +								jOOQ's log4j support by adding log4j.xml and log4j.jar to the project
    +								classpath: </p>
    +							<div class="screenshot">
    +							
    +<img alt="Eclipse configuration" class="screenshot" src="<?=$root?>/img/eclipse-example-01.png">
    +							</div>
    +
    +							<p>Once the project is set up correctly with all required artefacts on
    +								the classpath, you can configure an Eclipse Run Configuration for
    +								org.jooq.util.GenerationTool. </p>
    +							<div class="screenshot">
    +							
    +<img alt="Eclipse configuration" class="screenshot" src="<?=$root?>/img/eclipse-example-02.png">
    +							</div>
    +
    +							<p>With the properties file as an argument </p>
    +							<div class="screenshot">
    +							
    +<img alt="Eclipse configuration" class="screenshot" src="<?=$root?>/img/eclipse-example-03.png">
    +							</div>
    +
    +							<p>And the classpath set up correctly</p>
    +							<div class="screenshot">
    +							
    +<img alt="Eclipse configuration" class="screenshot" src="<?=$root?>/img/eclipse-example-04.png">
    +							</div>
    +
    +							<p>Finally, run the code generation and see your generated artefacts</p>
    +							<div class="screenshot">
    +							
    +<img alt="Eclipse configuration" class="screenshot" src="<?=$root?>/img/eclipse-example-05.png">
    +							</div>
    +
    +							<h3>Run generation with ant</h3>
    +							<p>
    +								You can also use an ant task to generate your classes. As a rule of thumb,
    +								remove the dots "." and dashes "-" from the .properties file's property names to get the
    +								ant task's arguments:
    +							</p>
    +<pre class="prettyprint lang-xml">&lt;!-- Task definition --&gt;
    +&lt;taskdef name="generate-classes" classname="org.jooq.util.GenerationTask"&gt;
    +  &lt;classpath&gt;
    +    &lt;fileset dir="${path.to.jooq.distribution}"&gt;
    +      &lt;include name="jOOQ.jar"/&gt;
    +      &lt;include name="jOOQ-meta.jar"/&gt;
    +      &lt;include name="jOOQ-codegen.jar"/&gt;
    +    &lt;/fileset&gt;
    +    &lt;fileset dir="${path.to.mysql.driver}"&gt;
    +      &lt;include name="${mysql.driver}.jar"/&gt;
    +    &lt;/fileset&gt;
    +  &lt;/classpath&gt;
    +&lt;/taskdef&gt;
    +
    +&lt;!-- Run the code generation task --&gt;
    +&lt;target name="generate-test-classes"&gt;
    +  &lt;generate-classes
    +      jdbcurl="jdbc:mysql://localhost/test"
    +      jdbcuser="root"
    +      jdbcpassword=""
    +      generatordatabaseinputschema="test"
    +      generatortargetpackage="org.jooq.test.generatedclasses"
    +      generatortargetdirectory="${basedir}/src"/&gt;
    +&lt;/target&gt;</pre>
    +
    +							<p>
    +								Note that when running code generation with ant's &lt;java/&gt; task,
    +								you may have to set fork="true":
    +							</p>
    +
    +<pre class="prettyprint lang-xml">&lt;!-- Run the code generation task --&gt;
    +&lt;target name="generate-test-classes"&gt;
    +  &lt;java fork="true" classname="org.jooq.util.GenerationTool"&gt;
    +    [...]
    +  &lt;/java&gt;
    +&lt;/target&gt;
    +</pre>
    +							<h3>Integrate generation with Maven</h3>
    +							<p>Using the official jOOQ-codegen-maven plugin, you can integrate
    +								source code generation in your Maven build process: </p>
    +
    +<pre class="prettyprint lang-xml">&lt;plugin&gt;
    +
    +  &lt;!-- Specify the maven code generator plugin --&gt;
    +  &lt;groupId&gt;org.jooq&lt;/groupId&gt;
    +  &lt;artifactId&gt;jooq-codegen-maven&lt;/artifactId&gt;
    +  &lt;version&gt;1.6.7&lt;/version&gt;
    +
    +  &lt;!-- The plugin should hook into the generate goal --&gt;
    +  &lt;executions&gt;
    +    &lt;execution&gt;
    +      &lt;goals&gt;
    +        &lt;goal&gt;generate&lt;/goal&gt;
    +      &lt;/goals&gt;
    +    &lt;/execution&gt;
    +  &lt;/executions&gt;
    +
    +  &lt;!-- Manage the plugin's dependency. In this example, we'll use a Postgres database --&gt;
    +  &lt;dependencies&gt;
    +    &lt;dependency&gt;
    +      &lt;groupId&gt;postgresql&lt;/groupId&gt;
    +      &lt;artifactId&gt;postgresql&lt;/artifactId&gt;
    +      &lt;version&gt;8.4-702.jdbc4&lt;/version&gt;
    +    &lt;/dependency&gt;
    +  &lt;/dependencies&gt;
    +
    +  &lt;!-- Specify the plugin configuration --&gt;
    +  &lt;configuration&gt;
    +
    +    &lt;!-- JDBC connection parameters --&gt;
    +    &lt;jdbc&gt;
    +      &lt;driver&gt;org.postgresql.Driver&lt;/driver&gt;
    +      &lt;url&gt;jdbc:postgresql:postgres&lt;/url&gt;
    +      &lt;user&gt;postgres&lt;/user&gt;
    +      &lt;password&gt;test&lt;/password&gt;
    +    &lt;/jdbc&gt;
    +
    +    &lt;!-- Generator parameters --&gt;
    +    &lt;generator&gt;
    +      &lt;name&gt;org.jooq.util.DefaultGenerator&lt;/name&gt;
    +      &lt;database&gt;
    +        &lt;name&gt;org.jooq.util.postgres.PostgresDatabase&lt;/name&gt;
    +        &lt;includes&gt;.*&lt;/includes&gt;
    +        &lt;excludes&gt;&lt;/excludes&gt;
    +        &lt;inputSchema&gt;public&lt;/inputSchema&gt;
    +      &lt;/database&gt;
    +      &lt;generate&gt;
    +        &lt;relations&gt;true&lt;/relations&gt;
    +        &lt;deprecated&gt;false&lt;/deprecated&gt;
    +      &lt;/generate&gt;
    +      &lt;target&gt;
    +        &lt;packageName&gt;org.jooq.util.maven.example&lt;/packageName&gt;
    +        &lt;directory&gt;target/generated-sources/jooq&lt;/directory&gt;
    +      &lt;/target&gt;
    +    &lt;/generator&gt;
    +  &lt;/configuration&gt;
    +&lt;/plugin&gt;
    +</pre>
    +							<p>See the full example of a pom.xml including the jOOQ-codegen artefact here:
    +							<a href="https://github.com/lukaseder/jOOQ/blob/master/jOOQ-codegen-maven-example/pom.xml" title="jOOQ-codegen-maven example pom.xml file">https://github.com/lukaseder/jOOQ/blob/master/jOOQ-codegen-maven-example/pom.xml</a>
    +</p>
    +
    +                            <h3>Migrate properties files from jOOQ 1.7, early versions of jOOQ 2.0.x:</h3>
    +                            <p>
    +                                Before jOOQ 2.0.4, the code generator was configured using properties files
    +                                These files are still supported for source code generation, but their syntax
    +                                won't be maintained any longer. If you wish to migrate to XML, you can
    +                                migrate the file using this command on the command line
    +                            </p>
    +							<pre class="prettyprint">org.jooq.util.GenerationTool /jooq-config.properties migrate</pre>
    +							<p>
    +								Using the migrate flag, jOOQ will read the properties file and output
    +								a corresponding XML file on system out
    +							</p>
    +
    +							<h3>Use jOOQ generated classes in your application</h3>
    +							<p>Be sure, both jOOQ.jar and your generated package (see
    +								configuration) are located on your classpath. Once this is done, you
    +								can execute SQL statements with your generated classes.</p>
    +						<h1 id="AdvancedConfiguration">
    +<a name="AdvancedConfiguration"></a>2.2. Advanced configuration of the generator</h1><p>jOOQ power users may want to fine-tune their source code generation settings. Here's how to do this</p>
    +							<h2>Code generation</h2>
    +							<p>
    +								In the <a href="#Configuration" title="jOOQ Manual reference: Configuration and setup of the generator">previous section</a>
    +								we have seen how jOOQ's source code generator is configured and
    +								run within a few steps. In this chapter we'll treat some advanced
    +								settings
    +							</p>
    +
    +<pre class="prettyprint lang-xml">&lt;!-- These properties can be added directly to the generator element: --&gt;
    +&lt;generator&gt;
    +  &lt;!-- The default code generator. You can override this one, to generate your own code style
    +       Defaults to org.jooq.util.DefaultGenerator --&gt;
    +  &lt;name&gt;org.jooq.util.DefaultGenerator&lt;/name&gt;
    +
    +  &lt;!-- The naming strategy used for class and field names.
    +       You may override this with your custom naming strategy. Some examples follow
    +       Defaults to org.jooq.util.DefaultGeneratorStrategy --&gt;
    +  &lt;strategy&gt;
    +    &lt;name&gt;org.jooq.util.DefaultGeneratorStrategy&lt;/name&gt;
    +  &lt;/strategy&gt;
    +&lt;/generator&gt;</pre>
    +
    +							<p>
    +								The following example shows how you can override the
    +								DefaultGeneratorStrategy to render table and column names the way
    +								they are defined in the database, rather than switching them to
    +								camel case:
    +							</p>
    +
    +<pre class="prettyprint lang-java">/**
    + * It is recommended that you extend the DefaultGeneratorStrategy. Most of the
    + * GeneratorStrategy API is already declared final. You only need to override any
    + * of the following methods, for whatever generation behaviour you'd like to achieve
    + *
    + * Beware that most methods also receive a "Mode" object, to tell you whether a
    + * TableDefinition is being rendered as a Table, Record, POJO, etc. Depending on
    + * that information, you can add a suffix only for TableRecords, not for Tables
    + */
    +public class AsInDatabaseStrategy extends DefaultGeneratorStrategy {
    +
    +    /**
    +     * Override this to specifiy what identifiers in Java should look like.
    +     * This will just take the identifier as defined in the database.
    +     */
    +    @Override
    +    public String getJavaIdentifier(Definition definition) {
    +        return definition.getOutputName();
    +    }
    +
    +    /**
    +     * Override these to specify what a setter in Java should look like. Setters
    +     * are used in TableRecords, UDTRecords, and POJOs. This example will name
    +     * setters "set[NAME_IN_DATABASE]"
    +     */
    +    @Override
    +    public String getJavaSetterName(Definition definition, Mode mode) {
    +        return "set" + definition.getOutputName();
    +    }
    +
    +    /**
    +     * Just like setters...
    +     */
    +    @Override
    +    public String getJavaGetterName(Definition definition, Mode mode) {
    +        return "get" + definition.getOutputName();
    +    }
    +
    +    /**
    +     * Override this method to define what a Java method generated from a database
    +     * Definition should look like. This is used mostly for convenience methods
    +     * when calling stored procedures and functions. This example shows how to
    +     * set a prefix to a CamelCase version of your procedure
    +     */
    +    @Override
    +    public String getJavaMethodName(Definition definition, Mode mode) {
    +        return "call" + org.jooq.tools.StringUtils.toCamelCase(definition.getOutputName());
    +    }
    +
    +    /**
    +     * Override this method to define how your Java classes and Java files should
    +     * be named. This example applies no custom setting and uses CamelCase versions
    +     * instead
    +     */
    +    @Override
    +    public String getJavaClassName(Definition definition, Mode mode) {
    +        return super.getJavaClassName(definition, mode);
    +    }
    +
    +    /**
    +     * Override this method to re-define the package names of your generated
    +     * artefacts.
    +     */
    +    @Override
    +    public String getJavaPackageName(Definition definition, Mode mode) {
    +        return super.getJavaPackageName(definition, mode);
    +    }
    +
    +    /**
    +     * Override this method to define how Java members should be named. This is
    +     * used for POJOs and method arguments
    +     */
    +    @Override
    +    public String getJavaMemberName(Definition definition, Mode mode) {
    +        return definition.getOutputName();
    +    }
    +}</pre>
    +
    +                            <h3>jooq-meta configuration</h3>
    +							<p>
    +								Within the &lt;generator/&gt; element, there are other configuration elements:
    +							</p>
    +
    +<pre class="prettyprint lang-xml">&lt;!-- These properties can be added to the database element: --&gt;
    +&lt;database&gt;
    +  &lt;!-- Generate java.sql.Timestamp fields for DATE columns. This is
    +       particularly useful for Oracle databases.
    +       Defaults to false --&gt;
    +  &lt;dateAsTimestamp&gt;false&lt;/dateAsTimestamp&gt;
    +
    +  &lt;!-- Generate jOOU data types for your unsigned data types, which are
    +       not natively supported in Java.
    +       Defaults to true --&gt;
    +  &lt;unsignedTypes&gt;true&lt;/unsignedTypes&gt;
    +
    +  &lt;!-- The schema that is used in generated source code. This will be the
    +       production schema. Use this to override your local development
    +       schema name for source code generation. If not specified, this
    +       will be the same as the input-schema. --&gt;
    +  &lt;outputSchema&gt;[your database schema / owner / name]&lt;/outputSchema&gt;
    +
    +  &lt;!-- A configuration element to configure several input and/or output
    +       schemata for jooq-meta, in case you're using jooq-meta in a multi-
    +       schema environment.
    +       This cannot be combined with the above inputSchema / outputSchema --&gt;
    +  &lt;schemata&gt;
    +    &lt;schema&gt;
    +      &lt;inputSchema&gt;...&lt;/inputSchema&gt;
    +      &lt;outputSchema&gt;...&lt;/outputSchema&gt;
    +    &lt;/schema&gt;
    +    [ &lt;schema&gt;...&lt;/schema&gt; ... ]
    +  &lt;/schemata&gt;
    +
    +  &lt;!-- A configuration element to configure master data table enum classes --&gt;
    +  &lt;masterDataTables&gt;...&lt;/masterDataTables&gt;
    +
    +  &lt;!-- A configuration element to configure custom data types --&gt;
    +  &lt;customTypes&gt;...&lt;/customTypes&gt;
    +
    +  &lt;!-- A configuration element to configure type overrides for generated
    +       artefacts (e.g. in combination with customTypes) --&gt;
    +  &lt;forcedTypes&gt;...&lt;/forcedTypes&gt;
    +&lt;/database&gt;</pre>
    +
    +							<p>
    +								Check out the some of the manual's "advanced" sections
    +								to find out more about the advanced configuration parameters.
    +							</p>
    +							<ul>
    +								
    +<li>
    +<a href="#SchemaMapping" title="jOOQ Manual reference: Mapping generated schemata and tables">Schema mapping</a>
    +</li>
    +								
    +<li>
    +<a href="#MasterData" title="jOOQ Manual reference: Master data generation. Enumeration tables">Master data types</a>
    +</li>
    +								
    +<li>
    +<a href="#CustomTypes" title="jOOQ Manual reference: Custom data types and type conversion">Custom types</a>
    +</li>
    +							
    +</ul>
    +
    +							<h3>jooq-codegen configuration</h3>
    +                            <p>Also, you can add some optional advanced configuration parameters for the generator: </p>
    +
    +<pre class="prettyprint lang-xml">&lt;!-- These properties can be added to the generate element: --&gt;
    +&lt;generate&gt;
    +  &lt;!-- Primary key / foreign key relations should be generated and used.
    +       This is a prerequisite for various advanced features.
    +       Defaults to false --&gt;
    +  &lt;relations&gt;false&lt;/relations&gt;
    +
    +  &lt;!-- Generate navigation methods to navigate foreign key relationships
    +       directly from Record classes. This is only relevant if relations
    +       is set to true, too.
    +       Defaults to true --&gt;
    +  &lt;navigationMethods&gt;true&lt;/navigationMethods&gt;
    +
    +  &lt;!-- Generate deprecated code for backwards compatibility
    +       Defaults to true --&gt;
    +  &lt;deprecated&gt;true&lt;/deprecated&gt;
    +
    +  &lt;!-- Generate instance fields in your tables, as opposed to static
    +       fields. This simplifies aliasing.
    +       Defaults to true --&gt;
    +  &lt;instanceFields&gt;true&lt;/instanceFields&gt;
    +
    +  &lt;!-- Generate the javax.annotation.Generated annotation to indicate
    +       jOOQ version used for source code.
    +       Defaults to true --&gt;
    +  &lt;generatedAnnotation&gt;true&lt;/generatedAnnotation&gt;
    +
    +  &lt;!-- Generate jOOQ Record classes for type-safe querying. You can
    +       turn this off, if you don't need "active records" for CRUD
    +       Defaults to true --&gt;
    +  &lt;records&gt;true&lt;/records&gt;
    +
    +  &lt;!-- Generate POJOs in addition to Record classes for usage of the
    +       ResultQuery.fetchInto(Class) API
    +       Defaults to false --&gt;
    +  &lt;pojos&gt;false&lt;/pojos&gt;
    +
    +  &lt;!-- Annotate POJOs and Records with JPA annotations for increased
    +       compatibility and better integration with JPA/Hibernate, etc
    +       Defaults to false --&gt;
    +  &lt;jpaAnnotations&gt;false&lt;/jpaAnnotations&gt;
    +&lt;/generate&gt;</pre>
    +						<h1 id="SCHEMA">
    +<a name="SCHEMA"></a>2.3. The schema, top-level generated artefact</h1><p>The schema is the top-level generated object in jOOQ. In many
    +							RDBMS, the schema coincides with the owner of tables and other objects
    +						</p>
    +							<h2>The Schema</h2>
    +							<p>
    +								As of jOOQ 1.5, the top-level generated object is the
    +								<a href="http://www.jooq.org/javadoc/latest/org/jooq/Schema.html" title="Internal API reference: org.jooq.Schema">org.jooq.Schema</a>.
    +								The Schema itself has no relevant functionality, except for holding
    +								the schema name for all dependent generated artefacts. jOOQ queries try
    +								to always fully qualify an entity within the database using that Schema
    +							</p>
    +
    +							<p>
    +								Currently, it is not possible to link generated artefacts from various
    +								schemata. If you have a stored function from Schema A, which returns a
    +								UDT from Schema B, the types cannot be linked. This enhancement is on
    +								the roadmap, though: <a href="https://sourceforge.net/apps/trac/jooq/ticket/282" title="Trac ticket: #282">#282</a>.
    +							</p>
    +
    +							<p>
    +								When you have several schemata that are logically equivalent (i.e. they
    +								contain identical entities, but the schemata stand for different
    +								users/customers/clients, etc), there is a solution for that. Check out
    +								the manual's section on support for
    +								<a href="#SchemaMapping" title="jOOQ Manual reference: Mapping generated schemata and tables">multiple equivalent schemata</a>
    +							
    +</p>
    +
    +							<h3>Schema contents</h3>
    +							<p>The schema can be used to dynamically discover generate database
    +								artefacts. Tables, sequences, and other items are accessible from the
    +								schema. For example:</p>
    +<pre class="prettyprint lang-java">public final java.util.List&lt;org.jooq.Sequence&lt;?&gt;&gt; getSequences();
    +public final java.util.List&lt;org.jooq.Table&lt;?&gt;&gt; getTables();</pre>
    +						<h1 id="TABLE">
    +<a name="TABLE"></a>2.4. Tables, views and their corresponding records</h1><p>
    +							The most important generated artefacts are Tables and TableRecords.
    +							Every Table has a Record type associated with it that models a single tuple
    +							of that entity: Table&lt;R extends Record&gt;.
    +						</p>
    +							<h2>Tables and TableRecords</h2>
    +							<p>
    +								The most important generated artefacts are
    +								<a href="http://www.jooq.org/javadoc/latest/org/jooq/Table.html" title="Internal API reference: org.jooq.Table">Tables</a> and
    +								<a href="http://www.jooq.org/javadoc/latest/org/jooq/TableRecord.html" title="Internal API reference: org.jooq.TableRecord">TableRecords</a>. As
    +								discussed in previous chapters about
    +								<a href="#Table" title="jOOQ Manual reference: Tables and Fields">Tables</a> and
    +								<a href="#Result" title="jOOQ Manual reference: Results and Records">Results</a>, jOOQ uses the
    +								Table class to model entities (both tables and views) in your database
    +								Schema. Every Table has a Record type associated with it that models a
    +								single tuple of that entity: Table&lt;R extends Record&gt;. This
    +								couple of Table&lt;R&gt; and R are generated as such:
    +							</p>
    +							<p>
    +								Suppose we have the tables as defined in the
    +								<a href="#ExampleDatabase" title="jOOQ Manual reference: The example database">example database</a>.
    +								Then, using a
    +								default configuration, these (simplified for the example) classes will
    +								be generated:
    +							</p>
    +
    +							<h3>The Table as an entity meta model</h3>
    +<pre class="prettyprint lang-java">public class TAuthor extends UpdatableTableImpl&lt;TAuthorRecord&gt; {
    +
    +    // The singleton instance of the Table
    +    public static final TAuthor T_AUTHOR = new TAuthor();
    +
    +    // The Table's fields.
    +    // Depending on your jooq-codegen configuraiton, they can also be static
    +    public final TableField&lt;TAuthorRecord, Integer&gt; ID =            // [...]
    +    public final TableField&lt;TAuthorRecord, String&gt; FIRST_NAME =     // [...]
    +    public final TableField&lt;TAuthorRecord, String&gt; LAST_NAME =      // [...]
    +    public final TableField&lt;TAuthorRecord, Date&gt; DATE_OF_BIRTH =    // [...]
    +    public final TableField&lt;TAuthorRecord, Integer&gt; YEAR_OF_BIRTH = // [...]
    +
    +    // When you don't choose the static meta model, you can typesafely alias your tables.
    +    // Aliased tables will then hold references to the above final fields, too
    +    public TAuthor as(String alias) {
    +      // [...]
    +    }
    +}</pre>
    +
    +							<h3>The Table's associated TableRecord</h3>
    +							<p>If you use the
    +								<a href="#Query" title="jOOQ Manual reference: The Query and its various subtypes">SimpleSelectQuery</a>
    +								 syntax (both in standard and DSL
    +								mode), then your SELECT statement will return the single Table&lt;R
    +								extends Record&gt;'s associated Record type &lt;R&gt;. In the case of
    +								the above TAuthor Table, this will be a TAuthorRecord. </p>
    +
    +<pre class="prettyprint lang-java">public class TAuthorRecord extends UpdatableRecordImpl&lt;TAuthorRecord&gt; {
    +
    +    // Getters and setters for the various fields
    +    public void setId(Integer value) {       // [...]
    +    public Integer getId() {                 // [...]
    +    public void setFirstName(String value) { // [...]
    +    public String getFirstName() {           // [...]
    +    public void setLastName(String value) {  // [...]
    +    public String getLastName() {            // [...]
    +    public void setDateOfBirth(Date value) { // [...]
    +    public Date getDateOfBirth() {           // [...]
    +
    +    // Navigation methods for foreign keys
    +    public List&lt;TBookRecord&gt; fetchTBooks() { // [...]
    +}</pre>
    +
    +
    +							<h3>Generated or custom POJO's instead of jOOQ's Records</h3>
    +							<p>
    +								If you're using jOOQ along with Hibernate / JPA, or if you
    +								want to use your own, custom domain-model instead of jOOQ's
    +								Record type-hierarchy, you can choose to select values into
    +								POJOs. Let's say you defined a POJO for authors:
    +							</p>
    +
    +<pre class="prettyprint lang-java">package com.example;
    +
    +import javax.persistence.Column;
    +import javax.persistence.Entity;
    +
    +@Entity
    +public class MyAuthor {
    +    // Some fields may be public
    +    @Column(name = "ID")
    +    public int id;
    +
    +    // Others are private and have associated getters / setters:
    +    private String firstName;
    +    private String lastName;
    +
    +    public void setFirstName(String firstName) {
    +        this.firstName = firstName;
    +    }
    +
    +    @Column(name = "FIRST_NAME")
    +    public String getFirstName() {
    +        return firstName;
    +    }
    +
    +    public void setLastName(String lastName) {
    +        this.lastName = lastName;
    +    }
    +
    +    @Column(name = "LAST_NAME")
    +    public String getLastName() {
    +        return lastName;
    +    }
    +}</pre>
    +
    +                            <p>
    +                            	The above could be your custom POJO or a POJO generated
    +                            	by jooq-codegen (see
    +                            	<a href="#AdvancedConfiguration" title="jOOQ Manual reference: Advanced configuration of the generator">the manual's section about advanced codegen configuration</a>
    +                            	for more details). Also, JPA-annotations are not necessary
    +                            	if you wish to let jOOQ map record columns onto your POJO
    +                            	attributes by convention. Instead of fetching records normally,
    +                            	you can now let jOOQ fetch records "into" your custom type:
    +                            </p>
    +
    +<pre class="prettyprint lang-java">List&lt;MyAuthor&gt; results = create.select().from(TAuthor.T_AUTHOR).fetchInto(MyAuthor.class);</pre>
    +
    +							<p>
    +								Read the javadoc for
    +								<a href="http://www.jooq.org/javadoc/latest/org/jooq/Record.html#into%28java.lang.Class%29" title="Record.into() javadoc, explaining about how to map jOOQ Records onto custom types">Record.into()</a>
    +								for more details.
    +							</p>
    +						<h1 id="PROCEDURE">
    +<a name="PROCEDURE"></a>2.5. Procedures and packages</h1><p>
    +							Procedure support is one of the most important reasons why you should consider
    +							jOOQ. jOOQ heavily facilitates the use of stored procedures and
    +							functions via its source code generation.
    +						</p>
    +							<h2>Stored procedures in modern RDBMS</h2>
    +							<p>This is one of the most important reasons why you should consider
    +								jOOQ. Read also my
    +								<a href="http://java.dzone.com/articles/2011-great-year-stored" title="Article on stored procedures and how to use them with jOOQ">article on dzone</a>
    +								about why stored procedures become
    +								more and more important in future versions of RDMBS. In this section
    +								of the manual, we will learn how jOOQ handles stored procedures in
    +								code generation. Especially before
    +								<a href="#UDT" title="jOOQ Manual reference: UDT's including ARRAY and ENUM types">UDT and ARRAY support</a> was
    +								introduced to major RDBMS, these procedures tend to have dozens of
    +								parameters, with IN, OUT, IN OUT parameters mixed in all variations.
    +								JDBC only knows very basic, low-level support for those constructs.
    +								jOOQ heavily facilitates the use of stored procedures and functions
    +								via its source code generation. Essentially, it comes down to this:
    +							</p>
    +
    +							<h3>"Standalone" stored procedures and functions</h3>
    +							<p>Let's say you have these stored procedures and functions in your Oracle database </p>
    +<pre class="prettyprint lang-sql">-- Check whether there is an author in T_AUTHOR by that name
    +CREATE OR REPLACE FUNCTION f_author_exists (author_name VARCHAR2) RETURN NUMBER;
    +
    +-- Check whether there is an author in T_AUTHOR by that name
    +CREATE OR REPLACE PROCEDURE p_author_exists (author_name VARCHAR2, result OUT NUMBER);
    +
    +-- Check whether there is an author in T_AUTHOR by that name and get his ID
    +CREATE OR REPLACE PROCEDURE p_author_exists_2 (author_name VARCHAR2, result OUT NUMBER, id OUT NUMBER);</pre>
    +
    +							<p>jOOQ will essentially generate two artefacts for every procedure/function: </p>
    +							<ul>
    +								
    +<li>A class holding a formal Java representation of the procedure/function</li>
    +    							
    +<li>Some convenience methods to facilitate calling that procedure/function </li>
    +							
    +</ul>
    +							<p>Let's see what these things look like, in Java. The classes (simplified for the example): </p>
    +
    +<pre class="prettyprint lang-java">// The function has a generic type parameter &lt;T&gt; bound to its return value
    +public class FAuthorExists extends org.jooq.impl.AbstractRoutine&lt;BigDecimal&gt; {
    +
    +    // Much like Tables, functions have static parameter definitions
    +    public static final Parameter&lt;String&gt; AUTHOR_NAME = // [...]
    +
    +    // And much like TableRecords, they have setters for their parameters
    +    public void setAuthorName(String value) { // [...]
    +    public void setAuthorName(Field&lt;String&gt; value) { // [...]
    +}
    +
    +public class PAuthorExists extends org.jooq.impl.AbstractRoutine&lt;java.lang.Void&gt; {
    +
    +    // In procedures, IN, OUT, IN OUT parameters are all represented
    +    // as static parameter definitions as well
    +    public static final Parameter&lt;String&gt; AUTHOR_NAME = // [...]
    +    public static final Parameter&lt;BigDecimal&gt; RESULT = // [...]
    +
    +    // IN and IN OUT parameters have generated setters
    +    public void setAuthorName(String value) { // [...]
    +
    +    // OUT and IN OUT parameters have generated getters
    +    public BigDecimal getResult() { // [...]
    +}
    +
    +public class PAuthorExists_2 extends org.jooq.impl.AbstractRoutine&lt;java.lang.Void&gt; {
    +    public static final Parameter&lt;String&gt; AUTHOR_NAME = // [...]
    +    public static final Parameter&lt;BigDecimal&gt; RESULT = // [...]
    +    public static final Parameter&lt;BigDecimal&gt; ID = // [...]
    +
    +    // the setters...
    +    public void setAuthorName(String value) { // [...]
    +
    +    // the getters...
    +    public BigDecimal getResult() { // [...]
    +    public BigDecimal getId() { // [...]
    +}</pre>
    +
    +							<p>An example invocation of such a stored procedure might look like this: </p>
    +
    +<pre class="prettyprint lang-java">PAuthorExists p = new PAuthorExists();
    +p.setAuthorName("Paulo");
    +p.execute(configuration);
    +assertEquals(BigDecimal.ONE, p.getResult());</pre>
    +
    +							<p>
    +								The above configuration is a
    +								<a href="#Factory" title="jOOQ Manual reference: The Factory class">Factory</a>,
    +								holding a reference to a JDBC connection, as discussed in a previous section.
    +
    +								If you use the generated convenience methods, however, things are much simpler, still:
    +							</p>
    +<pre class="prettyprint lang-java">// Every schema has a single Routines class with convenience methods
    +public final class Routines {
    +
    +    // Convenience method to directly call the stored function
    +    public static BigDecimal fAuthorExists(Configuration configuration, String authorName) { // [...]
    +
    +    // Convenience methods to transform the stored function into a
    +    // Field&lt;BigDecimal&gt;, such that it can be used in SQL
    +    public static Field&lt;BigDecimal&gt; fAuthorExists(Field&lt;String&gt; authorName) { // [...]
    +    public static Field&lt;BigDecimal&gt; fAuthorExists(String authorName) { // [...]
    +
    +    // Procedures with 0 OUT parameters create void methods
    +    // Procedures with 1 OUT parameter create methods as such:
    +    public static BigDecimal pAuthorExists(Configuration configuration, String authorName) { // [...]
    +
    +    // Procedures with more than 1 OUT parameter return the procedure
    +    // object (see above example)
    +    public static PAuthorExists_2 pAuthorExists_2(Configuration configuration, String authorName) { // [...]
    +}</pre>
    +
    +							<p>An sample invocation, equivalent to the previous example:</p>
    +<pre class="prettyprint lang-java">assertEquals(BigDecimal.ONE, Procedures.pAuthorExists(configuration, "Paulo"));</pre>
    +
    +
    +							<h3>jOOQ's understanding of procedures vs functions</h3>
    +							<p>
    +								jOOQ does not formally distinguish procedures from functions.
    +								jOOQ only knows about routines, which can have return values
    +								and/or OUT parameters. This is the best option to handle the
    +								variety of stored procedure / function support across the
    +								various supported RDBMS. For more details, read on about this
    +								topic, here:
    +							</p>
    +							<p>
    +								
    +<a href="http://lukaseder.wordpress.com/2011/10/17/what-are-procedures-and-functions-after-all/" title="Blog post about the difference between procedures and functions in various RDBMS">lukaseder.wordpress.com/2011/10/17/what-are-procedures-and-functions-after-all/</a>
    +							
    +</p>
    +
    +							<h3>Packages in Oracle</h3>
    +							<p>
    +								Oracle uses the concept of a PACKAGE to group several
    +								procedures/functions into a sort of namespace. The
    +								<a href="http://www.contrib.andrew.cmu.edu/~shadow/sql/sql1992.txt" title="SQL 92 standard">SQL standard</a>
    +								talks about "modules", to represent this concept, even if this is
    +								rarely implemented. This is reflected in jOOQ by the use of Java
    +								sub-packages in the source code generation destination package. Every
    +								Oracle package will be reflected by
    +							</p>
    +							<ul>
    +								
    +<li>A Java package holding classes for formal Java representations of
    +									the procedure/function in that package
    +								</li>
    +								
    +<li>A Java class holding convenience methods to facilitate calling
    +									those procedures/functions
    +								</li>
    +							
    +</ul>
    +							<p>
    +								Apart from this, the generated source code looks exactly like the
    +								one for
    +								standalone procedures/functions.
    +							</p>
    +
    +							<h3>Member functions and procedures in Oracle</h3>
    +							<p>
    +								Oracle UDT's can have object-oriented structures including member functions
    +								and procedures. With Oracle, you can do things like this:
    +							</p>
    +<pre class="prettyprint lang-sql">CREATE OR REPLACE TYPE u_author_type AS OBJECT (
    +  id NUMBER(7),
    +  first_name VARCHAR2(50),
    +  last_name VARCHAR2(50),
    +
    +  MEMBER PROCEDURE LOAD,
    +  MEMBER FUNCTION count_books RETURN NUMBER
    +)
    +
    +-- The type body is omitted for the example
    +</pre>
    +
    +							<p>
    +								These member functions and procedures can simply be mapped to Java
    +								methods:
    +							</p>
    +
    +<pre class="prettyprint lang-java">
    +// Create an empty, attached UDT record from the Factory
    +UAuthorType author = create.newRecord(U_AUTHOR_TYPE);
    +
    +// Set the author ID and load the record using the LOAD procedure
    +author.setId(1);
    +author.load();
    +
    +// The record is now updated with the LOAD implementation's content
    +assertNotNull(author.getFirstName());
    +assertNotNull(author.getLastName());</pre>
    +
    +							<p>For more details about UDT's see the Manual's section on
    +							<a href="#UDT" title="jOOQ Manual reference: UDT's including ARRAY and ENUM types">User Defined Types</a>
    +</p>
    +
    +						<h1 id="UDT">
    +<a name="UDT"></a>2.6. UDT's including ARRAY and ENUM types</h1><p>
    +							Databases become more powerful when you can structure your data in user
    +							defined types. It's time for Java developers to give some credit to
    +							that.
    +						</p>
    +							<h2>Increased RDBMS support for UDT's</h2>
    +							<p>
    +								In recent years, most RDBMS have started to implement some support for
    +								advanced data types. This support has not been adopted very well by
    +								database users in the Java world, for several reasons:
    +							</p>
    +							<ul>
    +								
    +<li>They are usually orthogonal to relational concepts. It is not easy
    +									to modify a UDT once it is referenced by a table column.</li>
    +								
    +<li>There is little standard support of accessing them from JDBC (and
    +									probably other database connectivity standards). </li>
    +							
    +</ul>
    +							<p>
    +								On the other hand, especially with stored procedures, these data types
    +								are likely to become more and more useful in the future. If you have a
    +								look at Postgres' capabilities of dealing with advanced data types
    +								(<a href="http://www.postgresql.org/docs/9.0/interactive/datatype-enum.html">ENUMs</a>,
    +								<a href="http://www.postgresql.org/docs/9.0/interactive/arrays.html">ARRAYs</a>,
    +								<a href="http://www.postgresql.org/docs/9.0/interactive/rowtypes.html">UDT's</a>),
    +								 this becomes more and more obvious.
    +							</p>
    +							<p>It is a central strategy for jOOQ, to standardise access to these
    +								kinds of types (as well as to
    +								<a href="#PROCEDURE" title="jOOQ Manual reference: Procedures and packages">stored procedures</a>, of course) across all
    +								RDBMS, where these types are supported. </p>
    +
    +							<h2>UDT types</h2>
    +							<p>User Defined Types (UDT) are helpful in major RDMBS with lots
    +							of proprietary functionality. The biggest player is clearly Oracle.
    +							Currently, jOOQ provides UDT support for only two databases: </p>
    +							<ul>
    +								
    +<li>Oracle</li>
    +								
    +<li>Postgres</li>
    +							
    +</ul>
    +							<p>Apart from that, </p>
    +							<ul>
    +								
    +<li>
    +									DB2 UDT's are not supported as they are very tough to
    +									serialise/deserialise. We don't think that this is a big enough
    +									requirement to put more effort in those, right now (see also the
    +									developers' discussion on
    +									<a href="https://sourceforge.net/apps/trac/jooq/ticket/164" title="Trac ticket: #164">#164</a>)
    +								</li>
    +							
    +</ul>
    +
    +							<p>In Oracle, you would define UDTs like this: </p>
    +<pre class="prettyprint lang-sql">CREATE TYPE u_street_type AS OBJECT (
    +  street VARCHAR2(100),
    +  no VARCHAR2(30)
    +)
    +
    +CREATE TYPE u_address_type AS OBJECT (
    +  street u_street_type,
    +  zip VARCHAR2(50),
    +  city VARCHAR2(50),
    +  country VARCHAR2(50),
    +  since DATE,
    +  code NUMBER(7)
    +)</pre>
    +
    +							<p>These types could then be used in tables and/or stored procedures like such: </p>
    +<pre class="prettyprint lang-sql">CREATE TABLE t_author (
    +  id NUMBER(7) NOT NULL PRIMARY KEY,
    +  -- [...]
    +  address u_address_type
    +)
    +
    +CREATE OR REPLACE PROCEDURE p_check_address (address IN OUT u_address_type);</pre>
    +
    +							<p>
    +								Standard JDBC UDT support encourages JDBC-driver developers to implement
    +								interfaces such as
    +								<a href="http://download.oracle.com/javase/6/docs/api/java/sql/SQLData.html" title="External API reference: java.sql.SQLData">java.sql.SQLData</a>,
    +								<a href="http://download.oracle.com/javase/6/docs/api/java/sql/SQLInput.html" title="External API reference: java.sql.SQLInput">java.sql.SQLInput</a> and
    +								<a href="http://download.oracle.com/javase/6/docs/api/java/sql/SQLOutput.html" title="External API reference: java.sql.SQLOutput">java.sql.SQLOutput</a>.
    +								Those interfaces are non-trivial to implement, or
    +								to hook into. Also access to
    +								<a href="http://download.oracle.com/javase/6/docs/api/java/sql/Struct.html" title="External API reference: java.sql.Struct">java.sql.Struct</a>
    +								is not really simple. Due
    +								to the lack of a well-defined JDBC standard, Oracle's JDBC driver
    +								rolls their own proprietary methods of dealing with these types. jOOQ
    +								goes a different way, it hides those facts from you entirely. With
    +								jOOQ, the above UDT's will be generated in simple
    +								<a href="http://www.jooq.org/javadoc/latest/org/jooq/UDT.html" title="Internal API reference: org.jooq.UDT">UDT meta-model classes</a> and
    +								<a href="http://www.jooq.org/javadoc/latest/org/jooq/UDTRecord.html" title="Internal API reference: org.jooq.UDTRecord">UDT record classes</a> as such:
    +							</p>
    +<pre class="prettyprint lang-java">// There is an analogy between UDT/Table and UDTRecord/TableRecord...
    +public class UAddressType extends UDTImpl&lt;UAddressTypeRecord&gt; {
    +
    +    // The UDT meta-model singleton instance
    +    public static final UAddressType U_ADDRESS_TYPE = new UAddressType();
    +
    +    // UDT attributes are modeled as static members. Nested UDT's
    +    // behave similarly
    +    public static final UDTField&lt;UAddressTypeRecord, UStreetTypeRecord&gt; STREET = // [...]
    +    public static final UDTField&lt;UAddressTypeRecord, String&gt; ZIP =               // [...]
    +    public static final UDTField&lt;UAddressTypeRecord, String&gt; CITY =              // [...]
    +    public static final UDTField&lt;UAddressTypeRecord, String&gt; COUNTRY =           // [...]
    +    public static final UDTField&lt;UAddressTypeRecord, Date&gt; SINCE =               // [...]
    +    public static final UDTField&lt;UAddressTypeRecord, Integer&gt; CODE =             // [...]
    +}</pre>
    +
    +							<p>Now, when you interact with entities or procedures that hold UDT's, that's very simple as well. Here is an example: </p>
    +<pre class="prettyprint lang-java">// Fetch any author from the T_AUTHOR table
    +TAuthorRecord author = create.selectFrom(T_AUTHOR).fetchAny();
    +
    +// Print out the author's address's house number
    +System.out.println(author.getAddress().getStreet().getNo());</pre>
    +
    +							<p>A similar thing can be achieved when interacting with the example stored procedure: </p>
    +<pre class="prettyprint lang-java">// Create a new UDTRecord of type U_ADDRESS_TYPE
    +UAddressTypeRecord address = new UAddressTypeRecord();
    +address.setCountry("Switzerland");
    +
    +// Call the stored procedure with IN OUT parameter of type U_ADDRESS_TYPE
    +address = Procedures.pCheckAddress(connection, address);</pre>
    +
    +
    +							<h2>ARRAY types</h2>
    +							<p>
    +								The notion of ARRAY types in RDBMS is not standardised at all. Very
    +								modern databases (especially the Java-based ones) have implemented
    +								ARRAY types exactly as what they are. "ARRAYs of something". In other
    +								words, an ARRAY OF VARCHAR would be something very similar to Java's
    +								notion of String[]. An ARRAY OF ARRAY OF VARCHAR would then be a
    +								String[][] in Java. Some RDMBS, however, enforce stronger typing and
    +								need the explicit creation of types for every ARRAY as well. These are
    +								example String[] ARRAY types in various SQL dialects supported by jOOQ
    +								1.5.4:
    +							</p>
    +							<ul>
    +								
    +<li>Oracle: VARRAY OF VARCHAR2. A strongly typed object encapsulating an ARRAY of a given type. See the <a href="http://download.oracle.com/docs/cd/B19306_01/appdev.102/b14261/collection_definition.htm">documentation.</a>
    +</li>
    +								
    +<li>Postgres: text[]. Any data type can be turned into an array by suffixing it with []. See the <a href="http://www.postgresql.org/docs/9.0/interactive/arrays.html">documentation</a>
    +</li>
    +								
    +<li>HSQLDB: VARCHAR ARRAY. Any data type can be turned into an array by suffixing it with ARRAY. See the <a href="http://hsqldb.org/doc/2.0/guide/sqlgeneral-chapt.html#N1070F">documentation</a>
    +</li>
    +								
    +<li>H2: ARRAY. H2 does not know of typed arrays. All ARRAYs are mapped to Object[]. See the <a href="http://www.h2database.com/html/datatypes.html#array_type">documentation</a>
    +</li>
    +							
    +</ul>
    +							<p>Soon to be supported: </p>
    +							<ul>
    +								
    +<li>DB2: Knows a similar strongly-typed ARRAY type, like Oracle </li>
    +							
    +</ul>
    +							<p>
    +								From jOOQ's perspective, the ARRAY types fit in just like any other
    +								type wherever the
    +								&lt;T&gt; generic type parameter is existent. It integrates well with tables
    +									and stored procedures.
    +							</p>
    +
    +							<h3>Example: General ARRAY types</h3>
    +							<p>An example usage of ARRAYs is given here for the Postgres dialect </p>
    +
    +<pre class="prettyprint lang-sql">CREATE TABLE t_arrays (
    +  id integer not null primary key,
    +  string_array VARCHAR(20)[],
    +  number_array INTEGER[]
    +)
    +
    +CREATE FUNCTION f_arrays(in_array IN text[]) RETURNS text[]</pre>
    +
    +							<p>When generating source code from the above entities, these artefacts will be created in Java: </p>
    +<pre class="prettyprint lang-java">public class TArrays extends UpdatableTableImpl&lt;TArraysRecord&gt; {
    +
    +    // The generic type parameter &lt;T&gt; is bound to an array of a matching type
    +    public static final TableField&lt;TArraysRecord, String[]&gt; STRING_ARRAY =  // [...]
    +    public static final TableField&lt;TArraysRecord, Integer[]&gt; NUMBER_ARRAY = // [...]
    +}
    +
    +// The convenience class is enhanced with these methods
    +public final class Functions {
    +    public static String[] fArrays(Connection connection, String[] inArray) { // [...]
    +    public static Field&lt;String[]&gt; fArrays(String[] inArray) {                                     // [...]
    +    public static Field&lt;String[]&gt; fArrays(Field&lt;String[]&gt; inArray) {                              // [...]
    +}</pre>
    +
    +							<h3>Example: Oracle VARRAY types</h3>
    +							<p>In Oracle, a VARRAY type is something slightly different than in
    +								other RDMBS. It is a type that encapsules the actual ARRAY and creates
    +								a new type from it. While all text[] types are equal and thus
    +								compatible in Postgres, this does not apply for all VARRAY OF VARCHAR2
    +								types. Hence, it is important to provide access to VARRAY types and
    +								generated objects from those types as well. The example above would
    +								read like this in Oracle: </p>
    +
    +<pre class="prettyprint lang-sql">CREATE TYPE u_string_array AS VARRAY(4) OF VARCHAR2(20)
    +CREATE TYPE u_number_array AS VARRAY(4) OF NUMBER(7)
    +
    +CREATE TABLE t_arrays (
    +  id NUMBER(7) not null primary key,
    +  string_array u_string_array,
    +  number_array u_number_array
    +)
    +
    +CREATE OR REPLACE FUNCTION f_arrays (in_array u_string_array)
    +RETURN u_string_array</pre>
    +
    +							<p>Note that it becomes clear immediately, that a mapping from
    +								U_STRING_ARRAY to String[] is obvious. But a mapping from String[] to
    +								U_STRING_ARRAY is not. These are the generated
    +								<a href="http://www.jooq.org/javadoc/latest/org/jooq/ArrayRecord.html" title="Internal API reference: org.jooq.ArrayRecord">org.jooq.ArrayRecord</a> and other
    +								artefacts in Oracle: </p>
    +
    +<pre class="prettyprint lang-java">public class UStringArrayRecord extends ArrayRecordImpl&lt;String&gt; {  // [...]
    +public class UNumberArrayRecord extends ArrayRecordImpl&lt;Integer&gt; { // [...]
    +
    +public class TArrays extends UpdatableTableImpl&lt;TArraysRecord&gt; {
    +    public static final TableField&lt;TArraysRecord, UStringArrayRecord&gt; STRING_ARRAY = // [...]
    +    public static final TableField&lt;TArraysRecord, UNumberArrayRecord&gt; NUMBER_ARRAY = // [...]
    +}
    +
    +public final class Functions {
    +    public static UStringArrayRecord fArrays3(Connection connection, UStringArrayRecord inArray) { // [...]
    +    public static Field&lt;UStringArrayRecord&gt; fArrays3(UStringArrayRecord inArray) {                 // [...]
    +    public static Field&lt;UStringArrayRecord&gt; fArrays3(Field&lt;UStringArrayRecord&gt; inArray) {          // [...]
    +}</pre>
    +
    +
    +							<h2>ENUM types</h2>
    +							<p>True ENUM types are a rare species in the RDBMS world. Currently,
    +								MySQL and Postgres are the only RDMBS supported by jOOQ, that provide
    +								ENUM types. </p>
    +
    +							<ul>
    +								
    +<li>In MySQL, an ENUM type is declared directly upon a column. It cannot be reused as a type. See the <a href="http://dev.mysql.com/doc/refman/5.5/en/enum.html">documentation.</a> 
    +</li>
    +								
    +<li>In Postgres, the ENUM type is declared independently and can be reused among tables, functions, etc. See the <a href="http://www.postgresql.org/docs/9.0/interactive/datatype-enum.html">documentation.</a> 
    +</li>
    +								
    +<li>Other RDMBS know about "ENUM constraints", such as the Oracle CHECK constraint. These are not true ENUMS, however. jOOQ refrains from using their information for source code generation </li>
    +							
    +</ul>
    +
    +							<p>Some examples: </p>
    +<pre class="prettyprint lang-sql">-- An example enum type
    +CREATE TYPE u_book_status AS ENUM ('SOLD OUT', 'ON STOCK', 'ORDERED')
    +
    +-- An example useage of that enum type
    +CREATE TABLE t_book (
    +  id INTEGER NOT NULL PRIMARY KEY,
    +
    +  -- [...]
    +  status u_book_status
    +)</pre>
    +
    +							<p>The above Postgres ENUM type will be generated as </p>
    +<pre class="prettyprint lang-java">public enum UBookStatus implements EnumType {
    +    ORDERED("ORDERED"),
    +    ON_STOCK("ON STOCK"),
    +    SOLD_OUT("SOLD OUT");
    +
    +    // [...]
    +}</pre>
    +							<p>Intuitively, the generated classes for the T_BOOK table in Postgres would look like this: </p>
    +<pre class="prettyprint lang-sql">// The meta-model class
    +public class TBook extends UpdatableTableImpl&lt;TBookRecord&gt; {
    +
    +    // The TableField STATUS binds &lt;T&gt; to UBookStatus
    +    public static final TableField&lt;TBookRecord, UBookStatus&gt; STATUS = // [...]
    +
    +    // [...]
    +}
    +
    +// The record class
    +public class TBookRecord extends UpdatableRecordImpl&lt;TBookRecord&gt; {
    +
    +    // Corresponding to the Table meta-model, also setters and getters
    +    // deal with the generated UBookStatus
    +    public void setStatus(UBookStatus value) { // [...]
    +    public UBookStatus getStatus() {           // [...]
    +}</pre>
    +
    +							<p>Note that jOOQ allows you to simulate ENUM types where this makes
    +								sense in your data model. See the section on
    +								<a href="#MasterData" title="jOOQ Manual reference: Master data generation. Enumeration tables">master data</a> for more
    +								details. </p>
    +						<h1 id="SEQUENCE">
    +<a name="SEQUENCE"></a>2.7. Sequences</h1><p>
    +							jOOQ also generates convenience artefacts for sequences, where this is
    +							supported: DB2, Derby, H2, HSQLDB, Oracle, Postgres, and more.
    +						</p>
    +							<h2>Sequences as a source for identity values</h2>
    +							<p> Sequences implement the
    +							<a href="http://www.jooq.org/javadoc/latest/org/jooq/Sequence.html" title="Internal API reference: org.jooq.Sequence">org.jooq.Sequence</a> interface, providing essentially this functionality:</p>
    +
    +<pre class="prettyprint lang-java">// Get a field for the CURRVAL sequence property
    +Field&lt;T&gt; currval();
    +
    +// Get a field for the NEXTVAL sequence property
    +Field&lt;T&gt; nextval();</pre>
    +							<p>So if you have a sequence like this in Oracle: </p>
    +							<pre class="prettyprint lang-sql">CREATE SEQUENCE s_author_id</pre>
    +							<p>This is what jOOQ will generate: </p>
    +<pre class="prettyprint lang-java">public final class Sequences {
    +
    +    // A static sequence instance
    +    public static final Sequence&lt;BigInteger&gt; S_AUTHOR_ID = // [...]
    +}</pre>
    +
    +							<p>Which you can use in a select statement as such: </p>
    +<pre class="prettyprint lang-java">Field&lt;BigInteger&gt; s = Sequences.S_AUTHOR_ID.nextval();
    +BigInteger nextID   = create.select(s).fetchOne(s);</pre>
    +
    +							<p>Or directly fetch currval() and nextval() from the sequence using the Factory: </p>
    +<pre class="prettyprint lang-java">BigInteger currval = create.currval(Sequences.S_AUTHOR_ID);
    +BigInteger nextval = create.nextval(Sequences.S_AUTHOR_ID);</pre>
    +						<h1 id="DSL">
    +<a name="DSL"></a>3. DSL or fluent API. Where SQL meets Java</h1><p>
    +					In these sections you will learn about how jOOQ makes SQL available to
    +					Java as if Java natively supported SQL
    +				</p>
    +					<h2>Overview</h2>
    +					<p>jOOQ ships with its own DSL (or
    +						<a href="http://en.wikipedia.org/wiki/Domain-specific_language" title="Domain Specific Language">Domain Specific Language</a>) that
    +						simulates SQL as good as possible in Java. This means, that you can
    +						write SQL statements almost as if Java natively supported that syntax
    +						just like .NET's C# does with <a href="http://msdn.microsoft.com/en-us/library/bb425822.aspx">LINQ to SQL.</a>
    +</p>
    +
    +					<p>Here is an example to show you what that means. When you want to write a query like this in SQL: </p>
    +					<table cellspacing="0" cellpadding="0" width="100%">
    +<tr>
    +<td class="left" width="50%">
    +<pre class="prettyprint lang-sql">-- Select all books by authors born after 1920,
    +-- named "Paulo" from a catalogue:
    +SELECT *
    +  FROM t_author a
    +  JOIN t_book b ON a.id = b.author_id
    + WHERE a.year_of_birth &gt; 1920
    +   AND a.first_name = 'Paulo'
    + ORDER BY b.title</pre>
    +</td><td class="right" width="50%">
    +<pre class="prettyprint lang-java">Result&lt;Record&gt; result =
    +create.select()
    +      .from(T_AUTHOR.as("a"))
    +      .join(T_BOOK.as("b")).on(a.ID.equal(b.AUTHOR_ID))
    +      .where(a.YEAR_OF_BIRTH.greaterThan(1920)
    +      .and(a.FIRST_NAME.equal("Paulo")))
    +      .orderBy(b.TITLE)
    +      .fetch();</pre>
    +</td>
    +</tr>
    +</table>
    +
    +					<p>
    +						You couldn't come much closer to SQL itself in Java, without re-writing the compiler.
    +						We'll see how the aliasing works later in the section about
    +						<a href="#ALIAS" title="jOOQ Manual reference: Aliased tables and fields">aliasing</a>
    +					
    +</p>
    +				<h1 id="SELECT">
    +<a name="SELECT"></a>3.1. Complete SELECT syntax</h1><p>
    +							A SELECT statement is more than just the R in CRUD. It allows for
    +							transforming your relational data into any other form using concepts
    +							such as equi-join, semi-join, anti-join, outer-join and much more. jOOQ
    +							helps you think in precisely those relational concepts.
    +						</p>
    +							<h2>SELECT from anonymous or ad-hoc types</h2>
    +							<p>When you don't just perform CRUD (i.e. SELECT * FROM your_table WHERE ID = ?),
    +							you're usually generating new types using custom projections. With jOOQ, this is
    +							as intuitive, as if using SQL directly. A more or less complete example of the "standard" SQL syntax, plus
    +							some extensions, is provided by a query like this:
    +							</p>
    +
    +<pre class="prettyprint lang-sql">-- get all authors' first and last names, and the number
    +-- of books they've written in German, if they have written
    +-- more than five books in German in the last three years
    +-- (from 2011), and sort those authors by last names
    +-- limiting results to the second and third row, locking
    +-- the rows for a subsequent update... whew!
    +
    +  SELECT T_AUTHOR.FIRST_NAME, T_AUTHOR.LAST_NAME, COUNT(*)
    +    FROM T_AUTHOR
    +    JOIN T_BOOK ON T_AUTHOR.ID = T_BOOK.AUTHOR_ID
    +   WHERE T_BOOK.LANGUAGE = 'DE'
    +     AND T_BOOK.PUBLISHED &gt; '2008-01-01'
    +GROUP BY T_AUTHOR.FIRST_NAME, T_AUTHOR.LAST_NAME
    +  HAVING COUNT(*) &gt; 5
    +ORDER BY T_AUTHOR.LAST_NAME ASC NULLS FIRST
    +   LIMIT 2
    +  OFFSET 1
    +     FOR UPDATE</pre>
    +
    +     						<p>So that's daily business. How to do it with jOOQ: When you first create a SELECT statement using the Factory's select() methods </p>
    +<pre class="prettyprint lang-java">SelectFromStep select(Field&lt;?&gt;... fields);
    +
    +// Example:
    +create.select(T_AUTHOR.FIRST_NAME, T_AUTHOR.LAST_NAME, count());</pre>
    +
    +							<p>
    +								jOOQ will return an "intermediary" type to you, representing the
    +								SELECT statement about to be created (by the way, check out the
    +								section on <a href="#FUNCTIONS" title="jOOQ Manual reference: Functions and aggregate operators">aggregate operators</a>
    +								 to learn more about the COUNT(*)
    +								function). This type is the
    +								<a href="http://www.jooq.org/javadoc/latest/org/jooq/SelectFromStep.html" title="Internal API reference: org.jooq.SelectFromStep">org.jooq.SelectFromStep</a>.
    +								When you have a reference
    +								to this type, you may add a FROM clause, although that clause is
    +								optional. This is reflected by the fact, that the SelectFromStep type
    +								extends
    +								<a href="http://www.jooq.org/javadoc/latest/org/jooq/SelectJoinStep.html" title="Internal API reference: org.jooq.SelectJoinStep">org.jooq.SelectJoinStep</a>,
    +								which allows for adding the subsequent
    +								clauses. Let's say you do decide to add a FROM clause, then you can
    +								use this method for instance:
    +							</p>
    +<pre class="prettyprint lang-java">SelectJoinStep from(TableLike&lt;?&gt;... table);
    +
    +// The example, continued:
    +create.select(T_AUTHOR.FIRST_NAME, T_AUTHOR.LAST_NAME, count())
    +      .from(T_AUTHOR);</pre>
    +
    +							<p>After adding the table-like structures (mostly just Tables) to
    +								select from, you may optionally choose to add a JOIN clause, as the
    +								type returned by jOOQ is the step where you can add JOINs. Again,
    +								adding these clauses is optional, as the
    +								<a href="http://www.jooq.org/javadoc/latest/org/jooq/SelectJoinStep.html" title="Internal API reference: org.jooq.SelectJoinStep">org.jooq.SelectJoinStep</a> extends
    +								<a href="http://www.jooq.org/javadoc/latest/org/jooq/SelectWhereStep.html" title="Internal API reference: org.jooq.SelectWhereStep">org.jooq.SelectWhereStep</a>.
    +								But let's say we add a JOIN: </p>
    +<pre class="prettyprint lang-java">// These join types are supported
    +SelectOnStep                    join(Table&lt;?&gt; table);
    +SelectOnStep           leftOuterJoin(Table&lt;?&gt; table);
    +SelectOnStep          rightOuterJoin(Table&lt;?&gt; table);
    +SelectOnStep           fullOuterJoin(Table&lt;?&gt; table);
    +SelectJoinStep             crossJoin(Table&lt;?&gt; table);
    +SelectJoinStep           naturalJoin(Table&lt;?&gt; table);
    +SelectJoinStep  naturalLeftOuterJoin(Table&lt;?&gt; table);
    +SelectJoinStep naturalRightOuterJoin(Table&lt;?&gt; table);
    +
    +// The example, continued:
    +create.select(T_AUTHOR.FIRST_NAME, T_AUTHOR.LAST_NAME, count())
    +      .from(T_AUTHOR)
    +      .join(T_BOOK);</pre>
    +
    +							<p>Now, if you do add a JOIN clause, you have to specify the JOIN .. ON
    +								condition before you can add more clauses. That's not an optional step
    +								for some JOIN types. This is reflected by the fact that
    +								<a href="http://www.jooq.org/javadoc/latest/org/jooq/SelectOnStep.html" title="Internal API reference: org.jooq.SelectOnStep">org.jooq.SelectOnStep</a>
    +								is a top-level interface. </p>
    +
    +<pre class="prettyprint lang-java">// These join conditions are supported
    +SelectJoinStep    on(Condition... conditions);
    +SelectJoinStep onKey();
    +SelectJoinStep onKey(TableField&lt;?, ?&gt;... keyFields);
    +SelectJoinStep onKey(ForeignKey&lt;?, ?&gt; key);
    +SelectJoinStep using(Field&lt;?&gt;... fields);
    +
    +// The example, continued:
    +create.select(T_AUTHOR.FIRST_NAME, T_AUTHOR.LAST_NAME, count())
    +      .from(T_AUTHOR)
    +      .join(T_BOOK).on(T_BOOK.AUTHOR_ID.equal(T_AUTHOR.ID));</pre>
    +
    +							<p>
    +								See the section about
    +								<a href="#CONDITION" title="jOOQ Manual reference: Conditions">conditions</a>
    +								to learn more about the many ways
    +								to create Conditions in jOOQ.
    +								See also the section about
    +								<a href="#TABLESOURCE" title="jOOQ Manual reference: Table sources">table sources</a>
    +								to learn more about the various ways of creating JOIN
    +								expressions
    +							</p>
    +							<p>
    +								Now we're half way through. As you can
    +								see above, we're back to the SelectJoinStep. This means, we can
    +								re-iterate and add another JOIN clause, just like in SQL. Or we go on
    +								to the next step, adding conditions in the
    +								<a href="http://www.jooq.org/javadoc/latest/org/jooq/SelectWhereStep.html" title="Internal API reference: org.jooq.SelectWhereStep">org.jooq.SelectWhereStep</a>: </p>
    +<pre class="prettyprint lang-java">SelectConditionStep where(Condition... conditions);
    +
    +// The example, continued:
    +create.select(TAuthor.FIRST_NAME, TAuthor.LAST_NAME, count())
    +      .from(T_AUTHOR)
    +      .join(T_BOOK).on(T_BOOK.AUTHOR_ID.equal(T_AUTHOR.ID))
    +      .where(T_BOOK.LANGUAGE.equal("DE"));</pre>
    +
    +							<p>Now the returned type
    +								<a href="http://www.jooq.org/javadoc/latest/org/jooq/SelectConditionStep.html" title="Internal API reference: org.jooq.SelectConditionStep">org.jooq.SelectConditionStep</a> is a special one, where
    +								you can add more conditions to the already existing WHERE clause.
    +								Every time you add a condition, you will return to that
    +								SelectConditionStep, as the number of additional conditions is
    +								unlimited. Note that of course you can also just add a single combined
    +								condition, if that is more readable or suitable for your use-case.
    +								Here's how we add another condition: </p>
    +<pre class="prettyprint lang-java">SelectConditionStep and(Condition condition);
    +
    +// The example, continued:
    +create.select(T_AUTHOR.FIRST_NAME, T_AUTHOR.LAST_NAME, count())
    +      .from(T_AUTHOR)
    +      .join(T_BOOK).on(T_BOOK.AUTHOR_ID.equal(T_AUTHOR.ID))
    +      .where(T_BOOK.LANGUAGE.equal("DE"))
    +      .and(T_BOOK.PUBLISHED.greaterThan(parseDate('2008-01-01')));</pre>
    +
    +							<p>Let's assume we have that method parseDate() creating a
    +								<a href="http://download.oracle.com/javase/6/docs/api/java/sql/Date.html" title="External API reference: java.sql.Date">java.sql.Date</a> for us.
    +								Then we'll continue adding the GROUP BY clause
    +							</p>
    +<pre class="prettyprint lang-java">SelectHavingStep groupBy(Field&lt;?&gt;... fields);
    +
    +// The example, continued:
    +create.select(T_AUTHOR.FIRST_NAME, T_AUTHOR.LAST_NAME, count())
    +      .from(T_AUTHOR)
    +      .join(T_BOOK).on(T_BOOK.AUTHOR_ID.equal(T_AUTHOR.ID))
    +      .where(T_BOOK.LANGUAGE.equal("DE"))
    +      .and(T_BOOK.PUBLISHED.greaterThan(parseDate('2008-01-01')))
    +      .groupBy(T_AUTHOR.FIRST_NAME, T_AUTHOR.LAST_NAME);</pre>
    +
    +      						<p>and the HAVING clause: </p>
    +<pre class="prettyprint lang-java">SelectOrderByStep having(Condition... conditions);
    +
    +// The example, continued:
    +create.select(T_AUTHOR.FIRST_NAME, T_AUTHOR.LAST_NAME, count())
    +      .from(T_AUTHOR)
    +      .join(T_BOOK).on(T_BOOK.AUTHOR_ID.equal(T_AUTHOR.ID))
    +      .where(T_BOOK.LANGUAGE.equal("DE"))
    +      .and(T_BOOK.PUBLISHED.greaterThan(parseDate('2008-01-01')))
    +      .groupBy(T_AUTHOR.FIRST_NAME, T_AUTHOR.LAST_NAME)
    +      .having(count().greaterThan(5));</pre>
    +
    +							<p>and the ORDER BY clause. Some RDBMS support NULLS FIRST and NULLS
    +								LAST extensions to the ORDER BY clause. If this is not supported by
    +								the RDBMS, then the behaviour is simulated with an additional CASE
    +								WHEN ... IS NULL THEN 1 ELSE 0 END clause. </p>
    +<pre class="prettyprint lang-java">SelectLimitStep orderBy(Field&lt;?&gt;... fields);
    +
    +// The example, continued:
    +create.select(T_AUTHOR.FIRST_NAME, T_AUTHOR.LAST_NAME, count())
    +      .from(T_AUTHOR)
    +      .join(T_BOOK).on(T_BOOK.AUTHOR_ID.equal(T_AUTHOR.ID))
    +      .where(T_BOOK.LANGUAGE.equal("DE"))
    +      .and(T_BOOK.PUBLISHED.greaterThan(parseDate('2008-01-01')))
    +      .groupBy(T_AUTHOR.FIRST_NAME, T_AUTHOR.LAST_NAME)
    +      .having(count().greaterThan(5))
    +      .orderBy(T_AUTHOR.LAST_NAME.asc().nullsFirst());</pre>
    +
    +							<p>and finally the LIMIT clause. Most dialects have a means of limiting
    +								the number of result records (except Oracle). Some even support having
    +								an OFFSET to the LIMIT clause. Even if your RDBMS does not support the
    +								full LIMIT ... OFFSET ... (or TOP ... START AT ..., or FETCH FIRST ... ROWS ONLY, etc)
    +								clause, jOOQ will simulate the LIMIT clause using nested selects and filtering on
    +								ROWNUM (for Oracle), or on ROW_NUMBER() (for DB2 and SQL
    +								Server): </p>
    +<pre class="prettyprint lang-java">SelectFinalStep limit(int offset, int numberOfRows);
    +
    +// The example, continued:
    +create.select(T_AUTHOR.FIRST_NAME, T_AUTHOR.LAST_NAME, count())
    +      .from(T_AUTHOR)
    +      .join(T_BOOK).on(T_BOOK.AUTHOR_ID.equal(T_AUTHOR.ID))
    +      .where(T_BOOK.LANGUAGE.equal("DE"))
    +      .and(T_BOOK.PUBLISHED.greaterThan(parseDate('2008-01-01')))
    +      .groupBy(T_AUTHOR.FIRST_NAME, T_AUTHOR.LAST_NAME)
    +      .having(count().greaterThan(5))
    +      .orderBy(T_AUTHOR.LAST_NAME.asc().nullsFirst())
    +      .limit(1, 2);</pre>
    +
    +							<p>In the final step, there are some proprietary extensions available
    +								only in some RDBMS. One of those extensions are the FOR UPDATE
    +								(supported in most RDBMS) and FOR SHARE clauses (supported only in
    +								MySQL and Postgres): </p>
    +<pre class="prettyprint lang-java">SelectFinalStep forUpdate();
    +
    +// The example, continued:
    +create.select(T_AUTHOR.FIRST_NAME, T_AUTHOR.LAST_NAME, count())
    +      .from(T_AUTHOR)
    +      .join(T_BOOK).on(T_BOOK.AUTHOR_ID.equal(T_AUTHOR.ID))
    +      .where(T_BOOK.LANGUAGE.equal("DE"))
    +      .and(T_BOOK.PUBLISHED.greaterThan(parseDate('2008-01-01')))
    +      .groupBy(T_AUTHOR.FIRST_NAME, T_AUTHOR.LAST_NAME)
    +      .having(count().greaterThan(5))
    +      .orderBy(T_AUTHOR.LAST_NAME.asc().nullsFirst())
    +      .limit(1, 2)
    +      .forUpdate();</pre>
    +
    +							<p>
    +								Now the most relevant super-type of the object we have just created is
    +								<a href="http://www.jooq.org/javadoc/latest/org/jooq/Select.html" title="Internal API reference: org.jooq.Select">org.jooq.Select</a>.
    +								This type can be reused in various expressions such as in the
    +								<a href="#UNION" title="jOOQ Manual reference: UNION and other set operations">UNION and other set operations</a>,
    +								<a href="#EXISTS" title="jOOQ Manual reference: Nested SELECT using the EXISTS operator">Nested select statements using the EXISTS operator</a>,
    +								etc. If you just want to execute this select
    +								statement, you can choose any of these methods as discussed in the
    +								section about the <a href="#ResultQuery" title="jOOQ Manual reference: ResultQuery and various ways of fetching data">ResultQuery</a>:
    +							</p>
    +
    +<pre class="prettyprint lang-java">// Just execute the query.
    +int execute();
    +
    +// Execute the query and retrieve the results
    +Result&lt;Record&gt; fetch();
    +
    +// Execute the query and retrieve the first Record
    +Record fetchAny();
    +
    +// Execute the query and retrieve the single Record
    +// An Exception is thrown if more records were available
    +Record fetchOne();
    +
    +// [...]</pre>
    +
    +
    +							<h2>SELECT from single physical tables</h2>
    +							<p>A very similar, but limited API is available, if you want to select from single
    +								physical tables in order to retrieve TableRecords or even
    +								UpdatableRecords (see also the manual's section on
    +								<a href="#Query" title="jOOQ Manual reference: The Query and its various subtypes">SelectQuery vs SimpleSelectQuery</a>).
    +								The decision, which type of select to create is
    +								already made at the very first step, when you create the SELECT
    +								statement with the Factory: </p>
    +
    +							<pre class="prettyprint lang-java">public &lt;R extends Record&gt; SimpleSelectWhereStep&lt;R&gt; selectFrom(Table&lt;R&gt; table);</pre>
    +							<p>As you can see, there is no way to further restrict/project the selected
    +								fields. This just selects all known TableFields in the supplied Table,
    +								and it also binds &lt;R extends Record&gt; to your Table's associated
    +								Record. An example of such a Query would then be: </p>
    +<pre class="prettyprint lang-java">TBook book = create.selectFrom(T_BOOK)
    +                   .where(TBook.LANGUAGE.equal("DE"))
    +                   .orderBy(TBook.TITLE)
    +                   .fetchAny();</pre>
    +						<h1 id="TABLESOURCE">
    +<a name="TABLESOURCE"></a>3.2. Table sources</h1><p>
    +							When OLTP selects/updates/inserts/deletes records in single tables, OLAP is all about
    +							creating custom table sources or ad-hoc row types
    +						</p>
    +							<h2>Create complex and nested table sources with jOOQ</h2>
    +							<p>
    +								In the <a href="http://en.wikipedia.org/wiki/Relational_model" title="The Relational Data Model">relational data model</a>,
    +								there are many operations performed on entities, i.e. tables in order to join them together
    +								before applying predicates, renaming operations and projections. Apart from the convenience
    +								methods for joining table sources in the
    +								<a href="#SELECT" title="jOOQ Manual reference: Complete SELECT syntax">manual's section about the full SELECT syntax</a>,
    +								the <a href="http://www.jooq.org/javadoc/latest/org/jooq/Table.html" title="Internal API reference: org.jooq.Table">Table</a> type itself provides a
    +								rich API for creating joined table sources. See an extract of the Table API:
    +							</p>
    +<pre class="prettyprint lang-java">// These are the various supported JOIN clauses. These JOIN types
    +// are followed by an additional ON / ON KEY / USING clause
    +TableOnStep join(TableLike&lt;?&gt; table);
    +TableOnStep join(String sql);
    +TableOnStep join(String sql, Object... bindings);
    +
    +// All other JOIN types are equally overloaded with "String sql" convenience methods...
    +TableOnStep  leftOuterJoin(TableLike&lt;?&gt; table);
    +TableOnStep rightOuterJoin(TableLike&lt;?&gt; table);
    +TableOnStep  fullOuterJoin(TableLike&lt;?&gt; table);
    +
    +// These JOIN types don't take any additional clause
    +Table&lt;Record&gt;             crossJoin(TableLike&lt;?&gt; table);
    +Table&lt;Record&gt;           naturalJoin(TableLike&lt;?&gt; table);
    +Table&lt;Record&gt;  naturalLeftOuterJoin(TableLike&lt;?&gt; table);
    +Table&lt;Record&gt; naturalRightOuterJoin(TableLike&lt;?&gt; table);
    +
    +// Oracle and SQL Server also know PIVOT / UNPIVOT clauses for transforming a
    +// table into another one using a list of PIVOT values
    +PivotForStep pivot(Field&lt;?&gt;... aggregateFunctions);
    +PivotForStep pivot(Collection&lt;? extends Field&lt;?&gt;&gt; aggregateFunctions);
    +
    +// Relational division can be applied to a table, transforming it into a
    +// "quotient" using an intuitive syntax
    +DivideByOnStep divideBy(Table&lt;?&gt; divisor);</pre>
    +
    +							<p>
    +								The <a href="http://www.jooq.org/javadoc/latest/org/jooq/TableOnStep.html" title="Internal API reference: org.jooq.TableOnStep">TableOnStep</a> type
    +								contains methods for constructing the ON / ON KEY / USING clauses
    +							</p>
    +
    +<pre class="prettyprint lang-java">// The ON clause is the most widely used JOIN condition. Provide arbitrary conditions as arguments
    +TableOnConditionStep on(Condition... conditions);
    +TableOnConditionStep on(String sql);
    +TableOnConditionStep on(String sql, Object... bindings);
    +
    +// The USING clause is also part of the SQL standard. Use this if joined tables contain identical field names.
    +// The USING clause is simulated in databases that do not support it.
    +Table&lt;Record&gt; using(Field&lt;?&gt;... fields);
    +Table&lt;Record&gt; using(Collection&lt;? extends Field&lt;?&gt;&gt; fields);
    +
    +// The ON KEY clause is a "synthetic" clause that does not exist in any SQL dialect. jOOQ usually has all
    +// foreign key relationship information to dynamically render "ON [ condition ... ]" clauses
    +TableOnConditionStep onKey() throws DataAccessException;
    +TableOnConditionStep onKey(TableField&lt;?, ?&gt;... keyFields) throws DataAccessException;
    +TableOnConditionStep onKey(ForeignKey&lt;?, ?&gt; key);</pre>
    +
    +							<ul>
    +							
    +<li>
    +								For more details about the PIVOT clause, see the
    +								<a href="#PIVOT" title="jOOQ Manual reference: The Oracle 11g PIVOT clause">manual's section about the Oracle PIVOT syntax</a>
    +							
    +</li>
    +							
    +<li>
    +								For more details about the DIVIDE BY clause, see the
    +								<a href="#DIVISION" title="jOOQ Manual reference: jOOQ's relational division syntax">manual's section about the relational division syntax</a>
    +							
    +</li>
    +							
    +</ul>
    +						<h1 id="CONDITION">
    +<a name="CONDITION"></a>3.3. Conditions</h1><p>
    +							The creation of conditions is the part of any database abstraction that
    +							attracts the most attention.
    +						</p>
    +							<h2>Conditions are the SELECT's core business</h2>
    +							<p>In your average application, you will typically have 3-4 SQL queries
    +								that have quite a long list of predicates (and possibly JOINs), such
    +								that you start to lose track over the overall boolean expression that
    +								you're trying to apply.</p>
    +							<p>In jOOQ, most Conditions can be created and combined almost as
    +								easily as in SQL itself. The two main participants for creating
    +								Conditions are the <a href="http://www.jooq.org/javadoc/latest/org/jooq/Field.html" title="Internal API reference: org.jooq.Field">Field</a>,
    +								which is typically a participant of a
    +								condition, and the <a href="http://www.jooq.org/javadoc/latest/org/jooq/Condition.html" title="Internal API reference: org.jooq.Condition">Condition</a>
    +								itself: </p>
    +<pre class="prettyprint lang-java">public interface Condition {
    +    Condition and(Condition other);
    +    Condition and(String sql);
    +    Condition and(String sql, Object... bindings);
    +    Condition andNot(Condition other);
    +    Condition andExists(Select&lt;?&gt; select);
    +    Condition andNotExists(Select&lt;?&gt; select);
    +    Condition or(Condition other);
    +    Condition or(String sql);
    +    Condition or(String sql, Object... bindings);
    +    Condition orNot(Condition other);
    +    Condition orExists(Select&lt;?&gt; select);
    +    Condition orNotExists(Select&lt;?&gt; select);
    +    Condition not();
    +}</pre>
    +
    +							<p>The above example describes the essence of boolean logic in jOOQ. As
    +								soon as you have a Condition object, you can connect that to other
    +								Conditions, which will then give you a combined condition with exactly
    +								the same properties. There are also convenience methods to create an
    +								EXISTS clause and connect it to an existing condition. In order to
    +								create a new Condition you are going to depart from a Field in most
    +								cases. Here are some important API elements in the Field interface:
    +							</p>
    +
    +<pre class="prettyprint lang-java">public interface Field&lt;T&gt; {
    +    Condition isNull();
    +    Condition isNotNull();
    +    Condition like(T value);
    +    Condition notLike(T value);
    +    Condition in(T... values);
    +    Condition in(Select&lt;?&gt; query);
    +    Condition notIn(Collection&lt;T&gt; values);
    +    Condition notIn(T... values);
    +    Condition notIn(Select&lt;?&gt; query);
    +    Condition in(Collection&lt;T&gt; values);
    +    Condition between(T minValue, T maxValue);
    +    Condition contains(T value);
    +    Condition contains(Field&lt;T&gt; value);
    +    Condition equal(T value);
    +    Condition equal(Field&lt;T&gt; field);
    +    Condition equal(Select&lt;?&gt; query);
    +    Condition equalAny(Select&lt;?&gt; query);
    +    Condition equalAny(T... array);
    +    Condition equalAny(Field&lt;T[]&gt; array);
    +    Condition equalAll(Select&lt;?&gt; query);
    +    Condition equalAll(T... array);
    +    Condition equalAll(Field&lt;T[]&gt; array);
    +    Condition equalIgnoreCase(String value);
    +    Condition equalIgnoreCase(Field&lt;String&gt; value);
    +    Condition notEqual(T value);
    +    Condition notEqual(Field&lt;T&gt; field);
    +    Condition notEqual(Select&lt;?&gt; query);
    +    Condition notEqualAny(Select&lt;?&gt; query);
    +    Condition notEqualAny(T... array);
    +    Condition notEqualAny(Field&lt;T[]&gt; array);
    +    Condition notEqualAll(Select&lt;?&gt; query);
    +    Condition notEqualAll(T... array);
    +    Condition notEqualAll(Field&lt;T[]&gt; array);
    +
    +    // Subselects, ANY and ALL quantifiers are also supported for these:
    +    Condition lessThan(T value);
    +    Condition lessOrEqual(T value);
    +    Condition greaterThan(T value);
    +    Condition greaterOrEqual(T value);
    +}</pre>
    +
    +							<p>As you see in the partially displayed API above, you can compare a
    +								Field either with other Fields, with constant values (which is a
    +								shortcut for calling Factory.val(T value)), or with a nested SELECT
    +								statement. See some more
    +								<a href="#NESTED" title="jOOQ Manual reference: Other types of nested SELECT">Examples of nested SELECTs</a>. </p>
    +							<p>Combining the API of Field and Condition you can express complex predicates like this: </p>
    +
    +<pre class="prettyprint lang-sql">(T_BOOK.TYPE_CODE IN (1, 2, 5, 8, 13, 21)       AND T_BOOK.LANGUAGE = 'DE') OR
    +(T_BOOK.TYPE_CODE IN (2, 3, 5, 7, 11, 13)       AND T_BOOK.LANGUAGE = 'FR') OR
    +(T_BOOK.TYPE_CODE IN (SELECT CODE FROM T_TYPES) AND T_BOOK.LANGUAGE = 'EN')</pre>
    +
    +							<p>Just write: </p>
    +<pre class="prettyprint lang-java">T_BOOK.TYPE_CODE.in(1, 2, 5, 8, 13, 21)                       .and(T_BOOK.LANGUAGE.equal("DE")).or(
    +T_BOOK.TYPE_CODE.in(2, 3, 5, 7, 11, 13)                       .and(T_BOOK.LANGUAGE.equal("FR")).or(
    +T_BOOK.TYPE_CODE.in(create.select(T_TYPES.CODE).from(T_TYPES)).and(T_BOOK.LANGUAGE.equal("EN"))));</pre>
    +						<h1 id="ALIAS">
    +<a name="ALIAS"></a>3.4. Aliased tables and fields</h1><p>
    +							Aliasing is at the core of SQL and relational algebra. When you join
    +							the same entity multiple times, you can rename it to distinguish the
    +							various meanings of the same entity
    +						</p>
    +							<h2>Aliasing Tables</h2>
    +							<p>A typical example of what you might want to do in SQL is this: </p>
    +<pre class="prettyprint lang-sql">SELECT a.ID, b.ID
    +  FROM T_AUTHOR a
    +  JOIN T_BOOK b on a.ID = b.AUTHOR_ID</pre>
    +
    +  							<p>
    +  								In this example, we are aliasing Tables, calling them a and b.
    +  								The way aliasing works depends on how you generate your meta model
    +  								using jooq-codegen (see the manual's section about
    +  								<a href="#TABLE" title="jOOQ Manual reference: Tables, views and their corresponding records">generating tables</a>). Things become
    +  								simpler when you choose the instance/dynamic model, instead of the
    +  								static one.
    +  								Here is how you can create Table aliases in jOOQ:
    +  							</p>
    +
    +<pre class="prettyprint lang-java">Table&lt;TBookRecord&gt; book = T_BOOK.as("b");
    +Table&lt;TAuthorRecord&gt; author = T_AUTHOR.as("a");
    +
    +// If you choose not to generate a static meta model, this becomes even better
    +TBook book = T_BOOK.as("b");
    +TAuthor author = T_AUTHOR.as("a");</pre>
    +
    +							<p>Now, if you want to reference any fields from those Tables, you may
    +								not use the original T_BOOK or T_AUTHOR meta-model objects anymore.
    +								Instead, you have to get the fields from the new book and author Table
    +								aliases: </p>
    +
    +<pre class="prettyprint lang-java">Field&lt;Integer&gt; bookID = book.getField(TBook.ID);
    +Field&lt;Integer&gt; authorID = author.getField(TAuthor.ID);
    +
    +// Or with the instance field model:
    +Field&lt;Integer&gt; bookID = book.ID;
    +Field&lt;Integer&gt; authorID = author.ID;</pre>
    +
    +							<p>
    +								So this is how the above SQL statement would read in jOOQ:
    +							</p>
    +<pre class="prettyprint lang-java">create.select(authorID, bookID)
    +      .from(author)
    +      .join(book).on(authorID.equal(book.getField(T_BOOK.AUTHOR_ID)));
    +
    +// Or with the instance field model:
    +create.select(author.ID, book.ID)
    +      .from(author)
    +      .join(book).on(author.ID.equal(book.AUTHOR_ID))</pre>
    +
    +
    +      						<h3>Aliasing nested selects as tables</h3>
    +							<p>There is an interesting, more advanced example of how you can select
    +								from an aliased nested select in the manual's section about
    +								<a href="#NESTED" title="jOOQ Manual reference: Other types of nested SELECT">nested selects</a>
    +</p>
    +
    +
    +							<h2>Aliasing fields</h2>
    +							<p>Fields can also be aliased independently from Tables. Most often,
    +								this is done when using functions or aggregate operators. Here is an
    +								example: </p>
    +<pre class="prettyprint lang-sql">  SELECT FIRST_NAME || ' ' || LAST_NAME author, COUNT(*) books
    +    FROM T_AUTHOR
    +    JOIN T_BOOK ON T_AUTHOR.ID = AUTHOR_ID
    +GROUP BY FIRST_NAME, LAST_NAME;</pre>
    +							<p>Here is how it's done with jOOQ: </p>
    +<pre class="prettyprint lang-java">Record record = create.select(
    +         concat(T_AUTHOR.FIRST_NAME, " ", T_AUTHOR.LAST_NAME).as("author"),
    +         count().as("books"))
    +      .from(T_AUTHOR)
    +      .join(T_BOOK).on(T_AUTHOR.ID.equal(T_BOOK.AUTHOR_ID))
    +      .groupBy(T_AUTHOR.FIRST_NAME, T_AUTHOR.LAST_NAME).fetchAny();</pre>
    +      						<p>When you alias Fields like above, you can access those Fields' values using the alias name: </p>
    +<pre class="prettyprint lang-java">System.out.println("Author : " + record.getValue("author"));
    +System.out.println("Books  : " + record.getValue("books"));</pre>
    +						<h1 id="IN">
    +<a name="IN"></a>3.5. Nested SELECT using the IN operator</h1><p>
    +							Set equal operations are very common when you want to select multiple
    +							records. The IN operator can also be used for semi-joins, though
    +						</p>
    +							<h2>The IN operator for use in semi-joins or anti-joins</h2>
    +							<p>
    +								In addition to a list of constant values, the IN operator in
    +								<a href="http://www.jooq.org/javadoc/latest/org/jooq/Field.html" title="Internal API reference: org.jooq.Field">org.jooq.Field</a>
    +								also supports a
    +								<a href="http://www.jooq.org/javadoc/latest/org/jooq/Select.html" title="Internal API reference: org.jooq.Select">org.jooq.Select</a> as an argument.
    +								This can be any type of select as
    +								discussed in the manual's section about
    +								<a href="#Query" title="jOOQ Manual reference: The Query and its various subtypes">Query types</a>.
    +								However, you must
    +								ensure yourself, that the provided Select will only select a single
    +								Field.
    +							</p>
    +							<p>Let's say you want to select books by authors born in 1920. Of
    +								course, this is possible with a plain JOIN as well, but let's say we
    +								want to use the IN operator. Then you have two possibilities: </p>
    +
    +							<table cellspacing="0" cellpadding="0" width="100%">
    +<tr>
    +<td class="left" width="50%">
    +<pre class="prettyprint lang-sql">SELECT *
    +  FROM T_BOOK
    + WHERE T_BOOK.AUTHOR_ID IN (
    +           SELECT ID FROM T_AUTHOR
    +            WHERE T_AUTHOR.BORN = 1920)
    +
    +-- OR:
    +
    +SELECT T_BOOK.*
    +  FROM T_BOOK
    +  JOIN T_AUTHOR ON (T_BOOK.AUTHOR_ID = T_AUTHOR.ID
    +                AND T_AUTHOR.BORN    = 1920)</pre>
    +</td><td class="right" width="50%">
    +<pre class="prettyprint lang-java">create.select()
    +      .from(T_BOOK)
    +      .where(T_BOOK.AUTHOR_ID.in(
    +          create.select(T_AUTHOR.ID).from(T_AUTHOR)
    +                .where(T_AUTHOR.BORN.equal(1920))));
    +
    +// OR:
    +
    +create.select(T_BOOK.getFields())
    +      .from(T_BOOK)
    +      .join(T_AUTHOR).on(T_BOOK.AUTHOR_ID.equal(TAuthor.ID)
    +                     .and(T_AUTHOR.BORN.equal(1920)));</pre>
    +</td>
    +</tr>
    +</table>
    +						<h1 id="EXISTS">
    +<a name="EXISTS"></a>3.6. Nested SELECT using the EXISTS operator</h1><p>The EXISTS operator is a bit different from all other SQL
    +							elements, as it cannot really be applied to any object in a DSL.
    +						</p>
    +							<h2>The EXISTS operator for use in semi-joins or anti-joins</h2>
    +							<p>The EXISTS operator is rather independent and can stand any place
    +								where there may be a new condition: </p>
    +							<ul>
    +								
    +<li>It may be placed right after a WHERE keyword </li>
    +								
    +<li>It may be the right-hand-side of a boolean operator</li>
    +								
    +<li>It may be placed right after a ON or HAVING keyword (although, this is less likely to be done...) </li>
    +							
    +</ul>
    +
    +							<p>This is reflected by the fact that an EXISTS clause is usually
    +								created directly from the Factory: </p>
    +
    +<pre class="prettyprint lang-java">Condition exists(Select&lt;?&gt; query);
    +Condition notExists(Select&lt;?&gt; query);</pre>
    +
    +							<p>When you create such a Condition, it can then be connected to any
    +								other condition using AND, OR operators (see also the manual's section
    +								on
    +								<a href="#CONDITION" title="jOOQ Manual reference: Conditions">Conditions</a>). There are also quite a few
    +								convenience methods, where they might be useful. For instance in the
    +								<a href="http://www.jooq.org/javadoc/latest/org/jooq/Condition.html" title="Internal API reference: org.jooq.Condition">org.jooq.Condition</a> itself: </p>
    +
    +<pre class="prettyprint lang-java">Condition andExists(Select&lt;?&gt; select);
    +Condition andNotExists(Select&lt;?&gt; select);
    +Condition orExists(Select&lt;?&gt; select);
    +Condition orNotExists(Select&lt;?&gt; select);</pre>
    +
    +							<p>Or in the <a href="http://www.jooq.org/javadoc/latest/org/jooq/SelectWhereStep.html" title="Internal API reference: org.jooq.SelectWhereStep">org.jooq.SelectWhereStep</a>:</p>
    +
    +<pre class="prettyprint lang-java">SelectConditionStep whereExists(Select&lt;?&gt; select);
    +SelectConditionStep whereNotExists(Select&lt;?&gt; select);</pre>
    +
    +							<p>Or in the <a href="http://www.jooq.org/javadoc/latest/org/jooq/SelectConditionStep.html" title="Internal API reference: org.jooq.SelectConditionStep">org.jooq.SelectConditionStep</a>: </p>
    +
    +<pre class="prettyprint lang-java">SelectConditionStep andExists(Select&lt;?&gt; select);
    +SelectConditionStep andNotExists(Select&lt;?&gt; select);
    +SelectConditionStep orExists(Select&lt;?&gt; select);
    +SelectConditionStep orNotExists(Select&lt;?&gt; select);</pre>
    +
    +							<p>An example of how to use it is quickly given. Get all authors that haven't written any books: </p>
    +							<table cellspacing="0" cellpadding="0" width="100%">
    +<tr>
    +<td class="left" width="50%">
    +<pre class="prettyprint lang-sql">SELECT *
    +  FROM T_AUTHOR
    + WHERE NOT EXISTS (SELECT 1
    +                     FROM T_BOOK
    +                    WHERE T_BOOK.AUTHOR_ID = T_AUTHOR.ID)</pre>
    +</td><td class="right" width="50%">
    +<pre class="prettyprint lang-java">create.select()
    +      .from(T_AUTHOR)
    +      .whereNotExists(create.selectOne()
    +            .from(T_BOOK)
    +            .where(T_BOOK.AUTHOR_ID.equal(T_AUTHOR.ID)));</pre>
    +</td>
    +</tr>
    +</table>
    +						<h1 id="NESTED">
    +<a name="NESTED"></a>3.7. Other types of nested SELECT</h1><p>Apart from the most common IN and EXISTS clauses that encourage
    +							the use of nested selects, SQL knows a few more syntaxes to make use
    +							of such constructs. </p>
    +							<h2>Comparison with single-field SELECT clause</h2>
    +							<p>If you can ensure that a nested SELECT will only return one Record
    +								with one Field, then you can test for equality. This is how it is done
    +								in SQL: </p>
    +
    +							<table cellspacing="0" cellpadding="0" width="100%">
    +<tr>
    +<td class="left" width="50%">
    +<pre class="prettyprint lang-sql">SELECT *
    +  FROM T_BOOK
    + WHERE T_BOOK.AUTHOR_ID = (
    + 		SELECT ID
    +          FROM T_AUTHOR
    +         WHERE LAST_NAME = 'Orwell')</pre>
    +</td><td class="right" width="50%">
    +<pre class="prettyprint lang-java">create.select()
    +      .from(T_BOOK)
    +      .where(T_BOOK.AUTHOR_ID.equal(create
    +             .select(T_AUTHOR.ID)
    +             .from(T_AUTHOR)
    +             .where(T_AUTHOR.LAST_NAME.equal("Orwell"))));</pre>
    +</td>
    +</tr>
    +</table>
    +
    +                            <p>More examples like the above can be guessed from the
    +                            <a href="http://www.jooq.org/javadoc/latest/org/jooq/Field.html" title="Internal API reference: org.jooq.Field">org.jooq.Field</a> API, as documented in the manual's section about
    +                            <a href="#CONDITION" title="jOOQ Manual reference: Conditions">Conditions</a>. For the = operator, the available comparisons are these:</p>
    +
    +<pre class="prettyprint lang-java">Condition equal(Select&lt;?&gt; query);
    +Condition equalAny(Select&lt;?&gt; query);
    +Condition equalAll(Select&lt;?&gt; query);</pre>
    +
    +
    +                            <h2>Selecting from a SELECT - SELECT acts as a Table</h2>
    +							<p>Often, you need to nest a SELECT statement simply because SQL is
    +								limited in power. For instance, if you want to find out which author
    +								has written the most books, then you cannot do this: </p>
    +
    +<pre class="prettyprint lang-sql">  SELECT AUTHOR_ID, count(*) books
    +    FROM T_BOOK
    +GROUP BY AUTHOR_ID
    +ORDER BY books DESC</pre>
    +
    +							<p>Instead, you have to do this (or something similar). For jOOQ, this
    +								is an excellent example, combining various SQL features into a single
    +								statement. Here's how to do it: </p>
    +
    +							<table cellspacing="0" cellpadding="0" width="100%">
    +<tr>
    +<td class="left" width="50%">
    +<pre class="prettyprint lang-sql">SELECT nested.* FROM (
    +      SELECT AUTHOR_ID, count(*) books
    +        FROM T_BOOK
    +    GROUP BY AUTHOR_ID
    +) nested
    +ORDER BY nested.books DESC
    +
    +
    +</pre>
    +</td><td class="right" width="50%">
    +<pre class="prettyprint lang-java">Table&lt;Record&gt; nested =
    +    create.select(T_BOOK.AUTHOR_ID, count().as("books"))
    +          .from(T_BOOK)
    +          .groupBy(T_BOOK.AUTHOR_ID).asTable("nested");
    +
    +create.select(nested.getFields())
    +      .from(nested)
    +      .orderBy(nested.getField("books"));</pre>
    +</td>
    +</tr>
    +</table>
    +
    +							<p>You'll notice how some verbosity seems inevitable when you combine nested SELECT statements with aliasing. </p>
    +
    +	                    	<h2>Selecting a SELECT - SELECT acts as a Field</h2>
    +							<p>Now SQL is even more powerful than that. You can also have SELECT
    +								statements, wherever you can have Fields. It get's harder and harder
    +								to find good examples, because there is always an easier way to
    +								express the same thing. But why not just count the number of books the
    +								really hard way? :-) But then again, maybe you want to take advantage
    +								of <a href="http://lukaseder.wordpress.com/2011/09/02/oracle-scalar-subquery-caching/" title="Oracle Scalar Subquery Caching with jOOQ">Oracle Scalar Subquery Caching</a>
    +</p>
    +
    +							<table cellspacing="0" cellpadding="0" width="100%">
    +<tr>
    +<td class="left" width="50%">
    +<pre class="prettyprint lang-sql">  SELECT LAST_NAME, (
    +      SELECT COUNT(*)
    +       FROM T_BOOK
    +      WHERE T_BOOK.AUTHOR_ID = T_AUTHOR.ID) books
    +    FROM T_AUTHOR
    +ORDER BY books DESC
    +
    +
    +
    +</pre>
    +</td><td class="right" width="50%">
    +<pre class="prettyprint lang-java">// The type of books cannot be inferred from the Select&lt;?&gt;
    +Field&lt;Object&gt; books =
    +    create.selectCount()
    +          .from(T_BOOK)
    +          .where(T_BOOK.AUTHOR_ID.equal(T_AUTHOR.ID))
    +          .asField("books");
    +create.select(T_AUTHOR.ID, books)
    +      .from(T_AUTHOR)
    +      .orderBy(books, T_AUTHOR.ID));</pre>
    +</td>
    +</tr>
    +</table>
    +                    	<h1 id="UNION">
    +<a name="UNION"></a>3.8. UNION and other set operations</h1><p>Unions, differences and intersections are vital set operations taken from set theory.</p>
    +							<h2>jOOQ's set operation API</h2>
    +							<p>The
    +								<a href="http://www.jooq.org/javadoc/latest/org/jooq/Select.html" title="Internal API reference: org.jooq.Select">org.jooq.Select</a> API directly supports the UNION
    +								syntax for all types of Select as discussed in the manual's section about
    +								<a href="#Query" title="jOOQ Manual reference: The Query and its various subtypes">Queries and Query subtypes</a>.
    +								It consists of these methods: </p>
    +
    +<pre class="prettyprint lang-java">public interface Select&lt;R extends Record&gt; {
    +    Select&lt;R&gt; union(Select&lt;R&gt; select);
    +    Select&lt;R&gt; unionAll(Select&lt;R&gt; select);
    +    Select&lt;R&gt; except(Select&lt;R&gt; select);
    +    Select&lt;R&gt; intersect(Select&lt;R&gt; select);
    +}</pre>
    +
    +							<p>Hence, this is how you can write a simple UNION with jOOQ:</p>
    +							<table cellspacing="0" cellpadding="0" width="100%">
    +<tr>
    +<td class="left" width="50%">
    +<pre class="prettyprint lang-sql">SELECT TITLE
    +  FROM T_BOOK
    + WHERE PUBLISHED_IN &gt; 1945
    +UNION
    +SELECT TITLE
    +  FROM T_BOOK
    + WHERE AUTHOR_ID = 1</pre>
    +</td><td class="right" width="50%">
    +<pre class="prettyprint lang-java">create.select(TBook.TITLE)
    +      .from(T_BOOK)
    +      .where(T_BOOK.PUBLISHED_IN.greaterThan(1945))
    +      .union(
    +create.select(T_BOOK.TITLE)
    +      .from(T_BOOK)
    +      .where(T_BOOK.AUTHOR_ID.equal(1)));</pre>
    +</td>
    +</tr>
    +</table>
    +
    +							<h2>Nested UNIONs</h2>
    +							<p>In some SQL dialects, you can arbitrarily nest UNIONs to several
    +								levels. Be aware, though, that SQLite, Derby and MySQL have serious
    +								syntax limitations. jOOQ tries to render correct UNION SQL statements,
    +								but unfortunately, you can create situations that will cause syntax
    +								errors in the aforementioned dialects. </p>
    +
    +							<p>An example of advanced UNION usage is the following statement in jOOQ: </p>
    +<pre class="prettyprint lang-java">// Create a UNION of several types of books
    +Select&lt;?&gt; union =
    +    create.select(T_BOOK.TITLE, T_BOOK.AUTHOR_ID).from(T_BOOK).where(T_BOOK.PUBLISHED_IN.greaterThan(1945)).union(
    +    create.select(T_BOOK.TITLE, T_BOOK.AUTHOR_ID).from(T_BOOK).where(T_BOOK.AUTHOR_ID.equal(1)));
    +
    +// Now, re-use the above UNION and order it by author
    +create.select(union.getField(T_BOOK.TITLE))
    +      .from(union)
    +      .orderBy(union.getField(T_BOOK.AUTHOR_ID).descending());</pre>
    +
    +							<p>This example does not seem surprising, when you have read the
    +								previous chapters about
    +								<a href="#NESTED" title="jOOQ Manual reference: Other types of nested SELECT">nested SELECT statements</a>.
    +								But when you check
    +								out the rendered SQL: </p>
    +
    +<pre class="prettyprint lang-sql">-- alias_38173 is an example of a generated alias,
    +-- generated by jOOQ for union queries
    +SELECT alias_38173.TITLE FROM (
    +  SELECT T_BOOK.TITLE, T_BOOK.AUTHOR_ID FROM T_BOOK WHERE T_BOOK.PUBLISHED_IN &gt; 1945
    +  UNION
    +  SELECT T_BOOK.TITLE, T_BOOK.AUTHOR_ID FROM T_BOOK WHERE T_BOOK.AUTHOR_ID = 1
    +) alias_38173
    +ORDER BY alias_38173.AUTHOR_ID DESC</pre>
    +
    +							<p>You can see that jOOQ takes care of many syntax pitfalls, when
    +								you're not used to the various dialects' unique requirements. The
    +								above automatic aliasing was added in order to be compliant with
    +								MySQL's requirements about aliasing nested selects. </p>
    +
    +							<h2>Several UNIONs</h2>
    +							<p>It is no problem either for you to create SQL statements with several unions. Just write: </p>
    +<pre class="prettyprint lang-java">Select&lt;?&gt; part1;
    +Select&lt;?&gt; part2;
    +Select&lt;?&gt; part3;
    +Select&lt;?&gt; part4;
    +
    +// [...]
    +
    +part1.union(part2).union(part3).union(part4);</pre>
    +
    +							<h2>UNION and the ORDER BY clause</h2>
    +							<p>
    +								Strictly speaking, in SQL, you cannot order a subselect that is part
    +								of a UNION operation. You can only order the whole set. In set theory,
    +								or relational algebra, it wouldn't make sense to order subselects
    +								anyway, as a set operation cannot guarantee order correctness. Often,
    +								you still want to do it, because you apply a LIMIT to every subselect.
    +								Let's say, you want to find the employees with the highest salary in
    +								every department in Postgres syntax:
    +							</p>
    +							<table cellspacing="0" cellpadding="0" width="100%">
    +<tr>
    +<td class="left" width="50%">
    +<pre class="prettyprint lang-sql">SELECT * FROM (
    +  SELECT * FROM emp WHERE dept = 'IT'
    +  ORDER BY salary LIMIT 1
    +) UNION (
    +  SELECT * FROM emp WHERE dept = 'Marketing'
    +  ORDER BY salary LIMIT 1
    +) UNION (
    +  SELECT * FROM emp WHERE dept = 'R&amp;D'
    +  ORDER BY salary LIMIT 1
    +)</pre>
    +</td><td class="right" width="50%">
    +<pre class="prettyprint lang-java">create.selectFrom(EMP).where(DEPT.equal("IT"))
    +      .orderBy(SALARY).limit(1)
    +      .union(
    +create.selectFrom(EMP).where(DEPT.equal("Marketing"))
    +      .orderBy(SALARY).limit(1))
    +      .union(
    +create.selectFrom(EMP).where(DEPT.equal("R&amp;D")
    +      .orderBy(SALARY).limit(1)))
    +
    +
    +</pre>
    +</td>
    +</tr>
    +</table>
    +
    +							<p>There is a subtle difference between the above two queries.
    +								In SQL, every UNION subselect is in fact a
    +							<a href="#NESTED" title="jOOQ Manual reference: Other types of nested SELECT">nested SELECT</a>, wrapped in parentheses.
    +							In this example, the notion of "nested SELECT" and "subselect" are slightly
    +							different.</p>
    +						<h1 id="FUNCTIONS">
    +<a name="FUNCTIONS"></a>3.9. Functions and aggregate operators</h1><p>
    +							Highly effective SQL cannot do without functions. Operations on
    +							VARCHAR, DATE, and NUMERIC types in GROUP BY or ORDER BY clauses allow
    +							for very elegant queries.
    +						</p>
    +							<h2>jOOQ's strategy for supporting vendor-specific functions</h2>
    +							<p>jOOQ allows you to access native functions from your RDBMS. jOOQ
    +								follows two strategies: </p>
    +							<ul>
    +								
    +<li>Implement all SQL-92, SQL:1999, SQL:2003, and SQL:2008 standard
    +									functions, aggregate operators, and window functions. Standard
    +									functions could be
    +									<a href="http://oreilly.com/catalog/sqlnut/chapter/ch04.html" title="O'Reilly listing of SQL-92 standard functions and deviations thereof">these functions as listed by O'Reilly</a>. </li>
    +								
    +<li>Take the most useful of vendor-specific functions and simulate
    +									them for other RDBMS, where they may not be supported. An example for
    +									this are
    +									<a href="http://psoug.org/reference/analytic_functions.html" title="An example listing of Oracle Analytic Functions">Oracle Analytic Functions</a>
    +</li>
    +							
    +</ul>
    +
    +							<h2>Functions </h2>
    +							<p>These are just a few functions in the Factory, so you get the idea: </p>
    +
    +<pre class="prettyprint lang-java">Field&lt;String&gt; rpad(Field&lt;String&gt; field, Field&lt;? extends Number&gt; length);
    +Field&lt;String&gt; rpad(Field&lt;String&gt; field, int length);
    +Field&lt;String&gt; rpad(Field&lt;String&gt; field, Field&lt;? extends Number&gt; length, Field&lt;String&gt; c);
    +Field&lt;String&gt; rpad(Field&lt;String&gt; field, int length, char c);
    +Field&lt;String&gt; lpad(Field&lt;String&gt; field, Field&lt;? extends Number&gt; length);
    +Field&lt;String&gt; lpad(Field&lt;String&gt; field, int length);
    +Field&lt;String&gt; lpad(Field&lt;String&gt; field, Field&lt;? extends Number&gt; length, Field&lt;String&gt; c);
    +Field&lt;String&gt; lpad(Field&lt;String&gt; field, int length, char c);
    +Field&lt;String&gt; replace(Field&lt;String&gt; field, Field&lt;String&gt; search);
    +Field&lt;String&gt; replace(Field&lt;String&gt; field, String search);
    +Field&lt;String&gt; replace(Field&lt;String&gt; field, Field&lt;String&gt; search, Field&lt;String&gt; replace);
    +Field&lt;String&gt; replace(Field&lt;String&gt; field, String search, String replace);
    +Field&lt;Integer&gt; position(Field&lt;String&gt; field, String search);
    +Field&lt;Integer&gt; position(Field&lt;String&gt; field, Field&lt;String&gt; search);</pre>
    +
    +							<h2>Aggregate operators</h2>
    +							<p>Aggregate operators work just like functions, even if they have a
    +								slightly different semantics. Here are some examples from
    +								Factory: </p>
    +
    +<pre class="prettyprint lang-java">// Every-day, SQL standard aggregate functions
    +AggregateFunction&lt;Integer&gt; count(Field&lt;?&gt; field);
    +AggregateFunction&lt;T&gt; max(Field&lt;T&gt; field);
    +AggregateFunction&lt;T&gt; min(Field&lt;T&gt; field);
    +AggregateFunction&lt;BigDecimal&gt; sum(Field&lt;? extends Number&gt; field);
    +AggregateFunction&lt;BigDecimal&gt; avg(Field&lt;? extends Number&gt; field);
    +
    +
    +// DISTINCT keyword in aggregate functions
    +AggregateFunction&lt;Integer&gt; countDistinct(Field&lt;?&gt; field);
    +AggregateFunction&lt;T&gt; maxDistinct(Field&lt;T&gt; field);
    +AggregateFunction&lt;T&gt; minDistinct(Field&lt;T&gt; field);
    +AggregateFunction&lt;BigDecimal&gt; sumDistinct(Field&lt;? extends Number&gt; field);
    +AggregateFunction&lt;BigDecimal&gt; avgDistinct(Field&lt;? extends Number&gt; field);
    +
    +// String aggregate functions
    +AggregateFunction&lt;String&gt; groupConcat(Field&lt;?&gt; field);
    +AggregateFunction&lt;String&gt; groupConcatDistinct(Field&lt;?&gt; field);
    +OrderedAggregateFunction&lt;String&gt; listAgg(Field&lt;?&gt; field);
    +OrderedAggregateFunction&lt;String&gt; listAgg(Field&lt;?&gt; field, String separator);
    +
    +// Statistical functions
    +AggregateFunction&lt;BigDecimal&gt; median(Field&lt;? extends Number&gt; field);
    +AggregateFunction&lt;BigDecimal&gt; stddevPop(Field&lt;? extends Number&gt; field);
    +AggregateFunction&lt;BigDecimal&gt; stddevSamp(Field&lt;? extends Number&gt; field);
    +AggregateFunction&lt;BigDecimal&gt; varPop(Field&lt;? extends Number&gt; field);
    +AggregateFunction&lt;BigDecimal&gt; varSamp(Field&lt;? extends Number&gt; field);
    +</pre>
    +
    +							<p>A typical example of how to use an aggregate operator is when
    +								generating the next key on insertion of an ID. When you want to
    +								achieve something like this </p>
    +
    +							<table cellspacing="0" cellpadding="0" width="100%">
    +<tr>
    +<td class="left" width="50%">
    +<pre class="prettyprint lang-sql">SELECT MAX(ID) + 1 AS next_id
    +  FROM T_AUTHOR</pre>
    +</td><td class="right" width="50%">
    +<pre class="prettyprint lang-java">create.select(max(ID).add(1).as("next_id"))
    +      .from(T_AUTHOR);</pre>
    +</td>
    +</tr>
    +</table>
    +
    +							<p>See also the section about
    +								<a href="#ARITHMETIC" title="jOOQ Manual reference: Arithmetic operations and concatenation">Arithmetic operations</a>
    +</p>
    +
    +							<h2>Window functions</h2>
    +							<p>Most major RDBMS support the concept of window functions. jOOQ knows
    +								of implementations in DB2, Oracle, Postgres, SQL Server, and Sybase
    +								SQL Anywhere,
    +								and supports most of their specific syntaxes. Window functions can be
    +								used for things like calculating a "running total". The following example
    +								fetches transactions and the running total for every transaction going
    +								back to the beginning of the transaction table (ordered by booked_at).
    +
    +								They are accessible from the previously seen AggregateFunction type using
    +								the over() method:
    +							</p>
    +
    +							<table cellspacing="0" cellpadding="0" width="100%">
    +<tr>
    +<td class="left" width="50%">
    +<pre class="prettyprint lang-sql">SELECT booked_at, amount,
    +   SUM(amount) OVER (PARTITION BY 1
    +                     ORDER BY booked_at
    +                     ROWS BETWEEN UNBOUNDED PRECEDING
    +                     AND CURRENT ROW) AS total
    +  FROM transactions</pre>
    +</td><td class="right" width="50%">
    +<pre class="prettyprint lang-java">create.select(t.BOOKED_AT, t.AMOUNT,
    +         sum(t.AMOUNT).over().partitionByOne()
    +                      .orderBy(t.BOOKED_AT)
    +                      .rowsBetweenUnboundedPreceding()
    +                      .andCurrentRow().as("total")
    +      .from(TRANSACTIONS.as("t"));</pre>
    +</td>
    +</tr>
    +</table>
    +						<h1 id="PROCEDURES">
    +<a name="PROCEDURES"></a>3.10. Stored procedures and functions</h1><p>
    +							The full power of your database's vendor-specific extensions can hardly
    +							be obtained outside of the
    +							database itself. Most modern RDBMS support
    +							their own procedural language. With jOOQ, stored procedures are
    +							integrated easily
    +						</p>
    +							<h2>Interaction with stored procedures</h2>
    +							<p>The main way to interact with your RDBMS's stored procedures and
    +								functions is by using the generated artefacts. See the manual's
    +								section about
    +								<a href="#PROCEDURE" title="jOOQ Manual reference: Procedures and packages">generating procedures and packages</a>
    +							    for more details
    +								about the source code generation for stored procedures and functions.
    +							</p>
    +
    +							<h2>Stored functions</h2>
    +							<p>When it comes to DSL, stored functions can be very handy in SQL
    +								statements as well. Every stored function (this also applies to
    +								FUNCTIONS in Oracle PACKAGES) can generate a Field representing a call
    +								to that function. Typically, if you have this type of function in your
    +								database: </p>
    +
    +<pre class="prettyprint lang-sql">CREATE OR REPLACE FUNCTION f_author_exists (author_name VARCHAR2)
    +RETURN NUMBER;</pre>
    +
    +							<p>Then convenience methods like these are generated: </p>
    +<pre class="prettyprint lang-java">// Create a field representing a function with another field as parameter
    +public static Field&lt;BigDecimal&gt; fAuthorExists(Field&lt;String&gt; authorName) { // [...]
    +
    +// Create a field representing a function with a constant parameter
    +public static Field&lt;BigDecimal&gt; fAuthorExists(String authorName) { // [...]</pre>
    +
    +							<p>Let's say, you have a T_PERSON table with persons' names in it, and
    +								you want to know whether there exists an author with precisely that
    +								name, you can reuse the above stored function in a SQL query: </p>
    +
    +							<table cellspacing="0" cellpadding="0" width="100%">
    +<tr>
    +<td class="left" width="50%">
    +<pre class="prettyprint lang-sql">SELECT T_PERSON.NAME, F_AUTHOR_EXISTS(T_PERSON.NAME)
    +  FROM T_PERSON
    +
    +-- OR:
    +
    +SELECT T_PERSON.NAME
    +  FROM T_PERSON
    + WHERE F_AUTHOR_EXISTS(T_PERSON.NAME) = 1</pre>
    +</td><td class="right" width="50%">
    +<pre class="prettyprint lang-java">create.select(T_PERSON.NAME, Functions.fAuthorExists(T_PERSON.NAME))
    +      .from(T_PERSON);
    +
    +// OR: Note, the static import of Functions.*
    +create.select(T_PERSON.NAME)
    +      .from(T_PERSON)
    +      .where(fAuthorExists(T_PERSON.NAME));</pre>
    +</td>
    +</tr>
    +</table>
    +
    +							<h2>Stored procedures</h2>
    +							<p>The notion of a stored procedure is implemented in most RDBMS by the
    +								fact, that the procedure has no RETURN VALUE (like void in Java), but
    +								it may well have OUT parameters. Since there is not a standard way how
    +								to embed stored procedures in SQL, they cannot be integrated in jOOQ's
    +								DSL either. </p>
    +						<h1 id="ARITHMETIC">
    +<a name="ARITHMETIC"></a>3.11. Arithmetic operations and concatenation</h1><p>
    +							Your database can do the math for you. Most arithmetic operations are
    +							supported, but also string concatenation can be very efficient if done
    +							already in the database.
    +						</p>
    +							<h2>Mathematical operations</h2>
    +							<p>Arithmetic operations are implemented just like
    +								<a href="#FUNCTIONS" title="jOOQ Manual reference: Functions and aggregate operators">functions</a>, with
    +								similar limitations as far as type restrictions are concerned. You can
    +								use any of these operators: </p>
    +
    +							<pre class="prettyprint">  +  -  *  /  %</pre>
    +
    +							<p>In order to express a SQL query like this one: </p>
    +							<pre class="prettyprint lang-sql">SELECT ((1 + 2) * (5 - 3) / 2) % 10 FROM DUAL</pre>
    +							<p>You can write something like this in jOOQ: </p>
    +							<pre class="prettyprint lang-java">create.select(create.val(1).add(2).mul(create.val(5).sub(3)).div(2).mod(10));	</pre>
    +
    +							<h2>Datetime arithmetic</h2>
    +							<p>jOOQ also supports the Oracle-style syntax for adding days to a Field&lt;? extends java.util.Date&gt; </p>
    +							<table cellspacing="0" cellpadding="0" width="100%">
    +<tr>
    +<td class="left" width="50%">
    +<pre class="prettyprint lang-sql">SELECT SYSDATE + 3 FROM DUAL;</pre>
    +</td><td class="right" width="50%">
    +<pre class="prettyprint lang-java">create.select(create.currentTimestamp().add(3));</pre>
    +</td>
    +</tr>
    +</table>
    +
    +							<h2>String concatenation</h2>
    +							<p>This is not really an arithmetic expression, but it's still an
    +								expression with operators: The string concatenation. jOOQ
    +								provides you with the Field's concat() method:</p>
    +							<table cellspacing="0" cellpadding="0" width="100%">
    +<tr>
    +<td class="left" width="50%">
    +<pre class="prettyprint lang-sql">SELECT 'A' || 'B' || 'C' FROM DUAL
    +
    +-- Or in MySQL:
    +SELECT concat('A', 'B', 'C')</pre>
    +</td><td class="right" width="50%">
    +<pre class="prettyprint lang-java">&nbsp;
    +// For all RDBMS, including MySQL:
    +create.select(concat("A", "B", "C"));
    +
    +</pre>
    +</td>
    +</tr>
    +</table>
    +						<h1 id="CASE">
    +<a name="CASE"></a>3.12. The CASE clause</h1><p>
    +							The SQL standard supports a CASE clause, which works very similar to
    +							Java's if-else statement. In complex SQL, this is very useful for value
    +							mapping
    +						</p>
    +							<h2>The two flavours of CASE</h2>
    +							<p>The CASE clause is part of the standard SQL syntax. While some RDBMS
    +								also offer an IF clause, or a DECODE function, you can always rely on
    +								the two types of CASE syntax: </p>
    +
    +							<table cellspacing="0" cellpadding="0" width="100%">
    +<tr>
    +<td class="left" width="50%">
    +<pre class="prettyprint lang-sql">CASE WHEN T_AUTHOR.FIRST_NAME = 'Paulo'  THEN 'brazilian'
    +     WHEN T_AUTHOR.FIRST_NAME = 'George' THEN 'english'
    +                                         ELSE 'unknown'
    +END
    +
    +-- OR:
    +
    +CASE T_AUTHOR.FIRST_NAME WHEN 'Paulo'  THEN 'brazilian'
    +                         WHEN 'George' THEN 'english'
    +                                       ELSE 'unknown'
    +END </pre>
    +</td><td class="right" width="50%">
    +<pre class="prettyprint lang-java">create.decode()
    +      .when(T_AUTHOR.FIRST_NAME.equal("Paulo"), "brazilian")
    +      .when(T_AUTHOR.FIRST_NAME.equal("George"), "english")
    +      .otherwise("unknown");
    +
    +// OR:
    +
    +create.decode().value(T_AUTHOR.FIRST_NAME)
    +               .when("Paulo", "brazilian")
    +               .when("George", "english")
    +               .otherwise("unknown");</pre>
    +</td>
    +</tr>
    +</table>
    +
    +							<p>
    +								In jOOQ, both syntaxes are supported (although, Derby only knows the
    +								first one, which is more general). Unfortunately, both case and else
    +								are reserved words in Java. jOOQ chose to use decode() from the Oracle
    +								DECODE function, and otherwise(), which means the same as else. Please
    +								note that in the above examples, all values were always constants. You
    +								can of course also use Field instead of the various constants.
    +							</p>
    +							<p>A CASE clause can be used anywhere where you can place a Field. For
    +								instance, you can SELECT the above expression, if you're selecting
    +								from T_AUTHOR: </p>
    +<pre class="prettyprint lang-sql">SELECT T_AUTHOR.FIRST_NAME, [... CASE EXPR ...] AS nationality
    +  FROM T_AUTHOR</pre>
    +
    +
    +  							<h2>CASE clauses in an ORDER BY clause</h2>
    +							<p>Sort indirection is often implemented with a CASE clause of a
    +								SELECT's ORDER BY clause. In SQL, this reads: </p>
    +
    +<pre class="prettyprint lang-sql">SELECT *
    +FROM T_AUTHOR
    +ORDER BY CASE FIRST_NAME WHEN 'Paulo'  THEN 1
    +                         WHEN 'George' THEN 2
    +                                       ELSE null
    +         END</pre>
    +
    +							<p>This will order your authors such that all 'Paulo' come first, then
    +								all 'George' and everyone else last (depending on your RDBMS' handling
    +								of NULL values in sorting). This is a very common task, such that jOOQ
    +								simplifies its use: </p>
    +<pre class="prettyprint lang-java">create.select()
    +      .from(T_AUTHOR)
    +      .orderBy(T_AUTHOR.FIRST_NAME.sortAsc("Paulo", "George"))
    +      .execute();</pre>
    +						<h1 id="CAST">
    +<a name="CAST"></a>3.13. Type casting</h1><p>
    +							Many RDBMS allow for implicit or explicit conversion between types.
    +							Apart from true type conversion, this is most often done with casting.
    +						</p>
    +							<h2>Enforcing a specific type when you need it</h2>
    +							<p>jOOQ's source code generator tries to find the most accurate type
    +								mapping between your vendor-specific data types and a matching Java
    +								type. For instance, most VARCHAR, CHAR, CLOB types will map to String.
    +								Most BINARY, BYTEA, BLOB types will map to byte[]. NUMERIC types will
    +								default to java.math.BigDecimal, but can also be any of
    +								java.math.BigInteger, Long, Integer, Short, Byte, Double, Float. </p>
    +							<p>Sometimes, this automatic mapping might not be what you needed, or
    +								jOOQ cannot know the type of a field (because you created it from a
    +								<a href="#NESTED" title="jOOQ Manual reference: Other types of nested SELECT">nested select</a>).
    +								In those cases you would write SQL type CASTs like
    +								this: </p>
    +<pre class="prettyprint lang-sql">-- Let's say, your Postgres column LAST_NAME was VARCHAR(30)
    +-- Then you could do this:
    +SELECT CAST(T_AUTHOR.LAST_NAME AS TEXT) FROM DUAL</pre>
    +							<p>in jOOQ, you can write something like that: </p>
    +							<pre class="prettyprint lang-java">create.select(TAuthor.LAST_NAME.cast(PostgresDataType.TEXT));</pre>
    +							<p>The same thing can be achieved by casting a Field directly to
    +								String.class, as TEXT is the default data type in Postgres to map to
    +								Java's String</p>
    +							<pre class="prettyprint lang-java">create.select(TAuthor.LAST_NAME.cast(String.class));</pre>
    +							<p>The complete CAST API in Field consists of these three methods: </p>
    +<pre class="prettyprint lang-java">public interface Field&lt;T&gt; {
    +    &lt;Z&gt; Field&lt;Z&gt; cast(Field&lt;Z&gt; field);
    +    &lt;Z&gt; Field&lt;Z&gt; cast(DataType&lt;Z&gt; type);
    +    &lt;Z&gt; Field&lt;Z&gt; cast(Class&lt;? extends Z&gt; type);
    +}
    +
    +// And additional convenience methods in the Factory:
    +public class Factory {
    +    &lt;T&gt; Field&lt;T&gt; cast(Object object, Field&lt;T&gt; field);
    +    &lt;T&gt; Field&lt;T&gt; cast(Object object, DataType&lt;T&gt; type);
    +    &lt;T&gt; Field&lt;T&gt; cast(Object object, Class&lt;? extends T&gt; type);
    +    &lt;T&gt; Field&lt;T&gt; castNull(Field&lt;T&gt; field);
    +    &lt;T&gt; Field&lt;T&gt; castNull(DataType&lt;T&gt; type);
    +    &lt;T&gt; Field&lt;T&gt; castNull(Class&lt;? extends T&gt; type);
    +}</pre>
    +						<h1 id="SQL">
    +<a name="SQL"></a>3.14. When it's just easier: Plain SQL</h1><p>
    +							jOOQ cannot foresee all possible vendor-specific SQL features for your
    +							database. And sometimes, even jOOQ code becomes too verbose. Then, you
    +							shouldn't hesitate to provide jOOQ with plain SQL, as you'd do with
    +							JDBC
    +						</p>
    +							<h2>Plain SQL in jOOQ</h2>
    +							<p>A DSL is a nice thing to have, it feels "fluent" and "natural",
    +								especially if it models a well-known language, such as SQL. But a DSL
    +								is always expressed in another language (Java in this case), which was
    +								not made for exactly that DSL. If it were, then jOOQ would be
    +								implemented on a compiler-level, similar to Linq in .NET. But it's
    +								not, and so, the DSL is limited. We have seen many functionalities
    +								where the DSL becomes verbose. This can be especially true for: </p>
    +							<ul>
    +								
    +<li>
    +<a href="#ALIAS" title="jOOQ Manual reference: Aliased tables and fields">aliasing</a>
    +</li>
    +								
    +<li>
    +<a href="#NESTED" title="jOOQ Manual reference: Other types of nested SELECT">nested selects</a>
    +</li>
    +								
    +<li>
    +<a href="#ARITHMETIC" title="jOOQ Manual reference: Arithmetic operations and concatenation">arithmetic expressions</a>
    +</li>
    +								
    +<li>
    +<a href="#CAST" title="jOOQ Manual reference: Type casting">casting</a>
    +</li>
    +							
    +</ul>
    +							<p>You'll probably find other examples. If verbosity scares you off,
    +								don't worry. The verbose use-cases for jOOQ are rather rare, and when
    +								they come up, you do have an option. Just write SQL the way you're
    +								used to! </p>
    +							<p>jOOQ allows you to embed SQL as a String in these contexts: </p>
    +							<ul>
    +								
    +<li>Plain SQL as a condition </li>
    +								
    +<li>Plain SQL as a field </li>
    +								
    +<li>Plain SQL as a function </li>
    +								
    +<li>Plain SQL as a table </li>
    +								
    +<li>Plain SQL as a query </li>
    +							
    +</ul>
    +
    +							<p>To construct artefacts wrapping plain SQL, you should use any of
    +								these methods from the Factory class: </p>
    +
    +<pre class="prettyprint lang-java">// A condition
    +Condition condition(String sql);
    +Condition condition(String sql, Object... bindings);
    +
    +// A field with an unknown data type
    +Field&lt;Object&gt; field(String sql);
    +Field&lt;Object&gt; field(String sql, Object... bindings);
    +
    +// A field with a known data type
    +&lt;T&gt; Field&lt;T&gt; field(String sql, Class&lt;T&gt; type);
    +&lt;T&gt; Field&lt;T&gt; field(String sql, Class&lt;T&gt; type, Object... bindings);
    +&lt;T&gt; Field&lt;T&gt; field(String sql, DataType&lt;T&gt; type);
    +&lt;T&gt; Field&lt;T&gt; field(String sql, DataType&lt;T&gt; type, Object... bindings);
    +
    +// A function
    +&lt;T&gt; Field&lt;T&gt; function(String name, Class&lt;T&gt; type, Field&lt;?&gt;... arguments);
    +&lt;T&gt; Field&lt;T&gt; function(String name, DataType&lt;T&gt; type, Field&lt;?&gt;... arguments);
    +
    +// A table
    +Table&lt;?&gt; table(String sql);
    +Table&lt;?&gt; table(String sql, Object... bindings);
    +
    +// A query without results (update, insert, etc)
    +Query query(String sql);
    +Query query(String sql, Object... bindings);
    +
    +// A query with results
    +ResultQuery&lt;Record&gt; resultQuery(String sql);
    +ResultQuery&lt;Record&gt; resultQuery(String sql, Object... bindings);
    +
    +// A query with results. This is the same as resultQuery(...).fetch();
    +Result&lt;Record&gt; fetch(String sql);
    +Result&lt;Record&gt; fetch(String sql, Object... bindings);</pre>
    +
    +							<p>Apart from the general factory methods, plain SQL is useful also in
    +								various other contexts. For instance, when adding a .where("a = b")
    +								clause to a query. Hence, there exist several convenience methods
    +								where plain SQL can be inserted usefully. This is an example
    +								displaying all various use-cases in one single query: </p>
    +<pre class="prettyprint lang-java">// You can use your table aliases in plain SQL fields
    +// As long as that will produce syntactically correct SQL
    +Field&lt;?&gt; LAST_NAME    = create.field("a.LAST_NAME");
    +
    +// You can alias your plain SQL fields
    +Field&lt;?&gt; COUNT1       = create.field("count(*) x");
    +
    +// If you know a reasonable Java type for your field, you
    +// can also provide jOOQ with that type
    +Field&lt;Integer&gt; COUNT2 = create.field("count(*) y", Integer.class);
    +
    +       // Use plain SQL as select fields
    +create.select(LAST_NAME, COUNT1, COUNT2)
    +
    +       // Use plain SQL as aliased tables (be aware of syntax!)
    +      .from("t_author a")
    +      .join("t_book b")
    +
    +       // Use plain SQL for conditions both in JOIN and WHERE clauses
    +      .on("a.id = b.author_id")
    +
    +       // Bind a variable in plain SQL
    +      .where("b.title != ?", "Brida")
    +
    +       // Use plain SQL again as fields in GROUP BY and ORDER BY clauses
    +      .groupBy(LAST_NAME)
    +      .orderBy(LAST_NAME);</pre>
    +
    +							<p>There are some important things to keep in mind when using plain
    +								SQL: </p>
    +							<ul>
    +								
    +<li>jOOQ doesn't know what you're doing. You're on your own again!
    +								</li>
    +								
    +<li>You have to provide something that will be syntactically correct.
    +									If it's not, then jOOQ won't know. Only your JDBC driver or your
    +									RDBMS will detect the syntax error. </li>
    +								
    +<li>You have to provide consistency when you use variable binding. The
    +									number of ? must match the number of variables </li>
    +								
    +<li>Your SQL is inserted into jOOQ queries without further checks.
    +									Hence, jOOQ can't prevent SQL injection. </li>
    +							
    +</ul>
    +						<h1 id="ADVANCED">
    +<a name="ADVANCED"></a>4. Advanced topics</h1><p>In these sections you will learn about advanced concepts that
    +					you might not use every day</p>
    +					<h2>Overview</h2>
    +					<p>This section covers some advanced topics and features that don't fit into any other section. </p>
    +				<h1 id="MasterData">
    +<a name="MasterData"></a>4.1. Master data generation. Enumeration tables</h1><p>Enumerations are a powerful concept. Unfortunately, almost no
    +							RDBMS supports them, leaving you to create numerous tables for your
    +							enumerated values. But these values are still enumerations!</p>
    +							<h2>Enumeration tables</h2>
    +							<p>Only MySQL and Postgres databases support true ENUM types natively.
    +								Some other RDBMS allow you to map the concept of an ENUM data type to
    +								a CHECK constraint, but those constraints can contain arbitrary SQL.
    +								 With jOOQ, you
    +								can "simulate" ENUM types by declaring a table as a "master data
    +								table" in the configuration. At code-generation time, this table will
    +								be treated specially, and a Java enum type is generated from its data.
    +							</p>
    +
    +							<h2>Configure master data tables</h2>
    +							<p>As previously discussed in the
    +							  <a href="#Configuration" title="jOOQ Manual reference: Configuration and setup of the generator">configuration and setup</a>
    +							   section, you can configure master data tables as follows: </p>
    +<pre class="prettyprint lang-xml">&lt;!-- These properties can be added to the database element: --&gt;
    +&lt;database&gt;
    +  &lt;masterDataTables&gt;
    +    &lt;masterDataTable&gt;
    +      &lt;!-- The name of a master data table --&gt;
    +      &lt;name&gt;[a table name]&lt;/name&gt;
    +
    +      &lt;!-- The column used for enum literals --&gt;
    +      &lt;literal&gt;[a column name]&lt;/literal&gt;
    +
    +      &lt;!-- The column used for documentation --&gt;
    +      &lt;description&gt;[a column name]&lt;/description&gt;
    +    &lt;/masterDataTable&gt;
    +
    +    [ &lt;masterDataTable&gt;...&lt;/masterDataTable&gt; ... ]
    +  &lt;/masterDataTables&gt;
    + &lt;/database&gt;</pre>
    +
    +							<p>The results of this will be a Java enum that looks similar to this: </p>
    +<pre class="prettyprint lang-java">public enum TLanguage implements MasterDataType&lt;Integer&gt; {
    +
    +  /**
    +   * English
    +   */
    +  en(1, "en", "English"),
    +
    +  /**
    +   * Deutsch
    +   */
    +  de(2, "de", "Deutsch"),
    +
    +  /**
    +   * Fran&ccedil;ais
    +   */
    +  fr(3, "fr", "Fran&ccedil;ais"),
    +
    +  /**
    +   * null
    +   */
    +  pt(4, "pt", null),
    +  ;
    +
    +  private final Integer id;
    +  private final String cd;
    +  private final String description;
    +
    +  // [ ... constructor and getters for the above properties ]
    +}</pre>
    +
    +							<p>In the above example, you can see how the configured primary key is
    +								mapped to the id member, the configured literal column is mapped to
    +								the cd member and the configured description member is mapped to the
    +								description member and output as Javadoc. In other words, T_LANGUAGE
    +								is a table with 4 rows and at least three columns. </p>
    +							<p>The general contract (with jOOQ 1.6.2+) is that there must be </p>
    +							<ul>
    +								
    +<li> A single-column primary key column of character or integer type
    +								</li>
    +								
    +<li>An optional unique literal column of character or integer type
    +									(otherwise, the primary key is used as enum literal) </li>
    +								
    +<li>An optional description column of any type </li>
    +							
    +</ul>
    +
    +							<h2>Using MasterDataTypes</h2>
    +							<p>The point of MasterDataTypes in jOOQ is that they behave exactly
    +								like true ENUM types. When the above T_LANGUAGE table is referenced by
    +								T_BOOK, instead of generating foreign key navigation methods and a
    +								LANGUAGE_ID Field&lt;Integer&gt;, a Field&lt;TLanguage&gt; is
    +								generated: </p>
    +
    +<pre class="prettyprint lang-java">public class TBook extends UpdatableTableImpl&lt;TBookRecord&gt; {
    +
    +  // [...]
    +  public static final TableField&lt;TBookRecord, TLanguage&gt; LANGUAGE_ID =
    +                  new TableFieldImpl&lt;TBookRecord, TLanguage&gt;( /* ... */ );
    +}</pre>
    +
    +							<p>Which can then be used in the TBookRecord directly: </p>
    +<pre class="prettyprint lang-java">public class TBookRecord extends UpdatableRecordImpl&lt;TBookRecord&gt; {
    +
    +  // [...]
    +  public TLanguage getLanguageId() { // [...]
    +  public void setLanguageId(TLanguage value) { // [...]
    +}</pre>
    +
    +							<h2>When to use MasterDataTypes</h2>
    +							<p>You can use master data types when you're actually mapping master
    +								data to a Java enum. When the underlying table changes frequently,
    +								those updates will not be reflected by the statically generated code.
    +								Also, be aware that it will be difficult to perform actual JOIN
    +								operations on the underlying table with jOOQ, once the master data
    +								type is generated. </p>
    +						<h1 id="CustomTypes">
    +<a name="CustomTypes"></a>4.2. Custom data types and type conversion</h1><p>
    +							SQL data types are very limited in number. While some databases offer
    +							enumeration types or user-defined types, others only ship with the SQL
    +							standard. Read this chapter to see how to use custom types with jOOQ
    +						</p>
    +							<h2>Your custom type and its associated Converter</h2>
    +							<p>
    +								When using a custom type in jOOQ, you need to let jOOQ know about
    +								its associated <a href="http://www.jooq.org/javadoc/latest/org/jooq/Converter.html" title="Internal API reference: org.jooq.Converter">org.jooq.Converter</a>.
    +								A converter essentially has two generic type parameters:
    +							</p>
    +							<ul>
    +								
    +<li>&lt;U&gt;: The user-defined Java type. This could be <a href="http://download.oracle.com/javase/6/docs/api/java/util/GregorianCalendar.html" title="External API reference: java.util.GregorianCalendar">java.util.GregorianCalendar</a>, for instance.</li>
    +								
    +<li>&lt;T&gt;: The database / SQL type. This could be <a href="http://download.oracle.com/javase/6/docs/api/java/sql/Timestamp.html" title="External API reference: java.sql.Timestamp">java.sql.Timestamp</a>, for instance.</li>
    +							
    +</ul>
    +							<p>
    +								The above conversion implies that you may want to use a GregorianCalendar for
    +								SQL timestamps, rather than the timestamp type itself. You could then write
    +								a Converter like this:
    +							</p>
    +
    +<pre class="prettyprint lang-java">package com.example;
    +
    +import java.sql.Timestamp;
    +import java.util.Calendar;
    +import java.util.GregorianCalendar;
    +
    +import org.jooq.Converter;
    +
    +// Bind T to Timestamp and U to Gregorian calendar, here
    +public class CalendarConverter implements Converter&lt;Timestamp, GregorianCalendar&gt; {
    +
    +    // Provide jOOQ with Class&lt;?&gt; objects of &lt;U&gt; and &lt;T&gt;. These are used by
    +    // jOOQ to discover your converter based on your custom type
    +    // --------------------------------------------------------------------
    +    @Override
    +    public Class&lt;Timestamp&gt; fromType() {
    +        return Timestamp.class;
    +    }
    +
    +    @Override
    +    public Class&lt;GregorianCalendar&gt; toType() {
    +        return GregorianCalendar.class;
    +    }
    +
    +    // Implement the type conversion methods. Convert your user-defined type
    +    // "from" the SQL type when reading "from" the database, or "to" the SQL
    +    // type when writing "to" the database.
    +    @Override
    +    public GregorianCalendar from(Timestamp databaseObject) {
    +        GregorianCalendar calendar = (GregorianCalendar) Calendar.getInstance();
    +        calendar.setTimeInMillis(databaseObject.getTime());
    +        return calendar;
    +    }
    +
    +    @Override
    +    public Timestamp to(GregorianCalendar userObject) {
    +        return new Timestamp(userObject.getTime().getTime());
    +    }
    +}
    +</pre>
    +
    +							<p>
    +								Such a Converter can now be used in various places of the jOOQ
    +								API, especially when reading data from the database:
    +							</p>
    +
    +<pre class="prettyprint lang-java">List&lt;GregorianCalendar&gt; result =
    +create.select(T_AUTHOR.DATE_OF_BIRTH)
    +      .from(T_AUTHOR)
    +      .fetch(0, new CalendarConverter());</pre>
    +
    +      						<h3>Using Converters in generated code</h3>
    +      						<p>
    +								A more common use-case, however, is to let jOOQ know about custom
    +								types at code generation time. Use the following configuration elements
    +								to specify, that you'd like to use GregorianCalendar for all database
    +								fields that start with DATE_OF_
    +      						</p>
    +
    +<pre class="prettyprint lang-xml">&lt;database&gt;
    +  &lt;!-- First, register your custom types here --&gt;
    +  &lt;customTypes&gt;
    +    &lt;customType&gt;
    +      &lt;!-- Specify the fully-qualified class name of your custom type --&gt;
    +      &lt;name&gt;java.util.GregorianCalendar&lt;/name&gt;
    +
    +      &lt;!-- Associate that custom type with your converter. Note, a
    +           custom type can only have one converter in jOOQ --&gt;
    +      &lt;converter&gt;com.example.CalendarConverter&lt;/converter&gt;
    +    &lt;/customType&gt;
    +  &lt;/customTypes&gt;
    +
    +  &lt;!-- Then, associate custom types with database columns --&gt;
    +  &lt;forcedTypes&gt;
    +    &lt;forcedType&gt;
    +      &lt;!-- Specify again he fully-qualified class name of your custom type --&gt;
    +      &lt;name&gt;java.util.GregorianCalendar&lt;/name&gt;
    +
    +      &lt;!-- Add a list of comma-separated regular expressions matching columns --&gt;
    +      &lt;expressions&gt;.*\.DATE_OF_.*&lt;/expressions&gt;
    +    &lt;/forcedType&gt;
    +  &lt;/forcedTypes&gt;
    +&lt;/database&gt;</pre>
    +
    +                            <p>
    +                            	The above configuration will lead to T_AUTHOR.DATE_OF_BIRTH
    +                            	being generated like this:
    +                            </p>
    +
    +<pre class="prettyprint lang-java">public class TAuthor extends UpdatableTableImpl&lt;TAuthorRecord&gt; {
    +
    +    // [...]
    +    public final TableField&lt;TAuthorRecord, GregorianCalendar&gt; DATE_OF_BIRTH =    // [...]
    +    // [...]
    +
    +}</pre>
    +
    +                            <p>
    +                            	This means that the bound of &lt;T&gt; will be GregorianCalendar,
    +                            	wherever you reference DATE_OF_BIRTH. jOOQ will use your custom
    +                            	converter when binding variables and when fetching data from
    +                            	<a href="http://download.oracle.com/javase/6/docs/api/java/util/ResultSet.html" title="External API reference: java.util.ResultSet">java.util.ResultSet</a>:
    +                            </p>
    +
    +<pre class="prettyprint lang-java">// Get all date of births of authors born after 1980
    +List&lt;GregorianCalendar&gt; result =
    +create.selectFrom(T_AUTHOR)
    +      .where(T_AUTHOR.DATE_OF_BIRTH.greaterThan(new GregorianCalendar(1980, 0, 1)))
    +      .fetch(T_AUTHOR.DATE_OF_BIRTH);</pre>
    +
    +      						<p>
    +      						    Read more about advanced code generation configuration in
    +      						    <a href="#AdvancedConfiguration" title="jOOQ Manual reference: Advanced configuration of the generator">the manual's section about advanced code generation configuration</a>.
    +      						</p>
    +
    +      						<h3>Using Converters for enum types</h3>
    +      						<p>
    +      							Java's Enum types can be very useful in SQL too.
    +      							Some databases support enumeration types natively (MySQL, Postgres).
    +      							In other cases, you can use the above custom type configuration
    +      							also to provide jOOQ with Converters for your custom Enum types.
    +      							Instead of implementing <a href="http://www.jooq.org/javadoc/latest/org/jooq/Converter.html" title="Internal API reference: org.jooq.Converter">org.jooq.Converter</a>,
    +      							you may choose to extend <a href="http://www.jooq.org/javadoc/latest/org/jooq/impl/EnumConverter.html" title="Internal API reference: org.jooq.impl.EnumConverter">org.jooq.impl.EnumConverter</a>
    +      							instead, which provides some enum-specific default behaviour.
    +      						</p>
    +						<h1 id="SchemaMapping">
    +<a name="SchemaMapping"></a>4.3. Mapping generated schemata and tables</h1><p>
    +							Sometimes, you cannot control productive schema names, because your
    +							application is deployed on a shared host, and you only get one schema
    +							to work with.
    +						</p>
    +							<h2>Mapping your DEV schema to a productive environment</h2>
    +							<p>You may wish to design your database in a way that you have several
    +								instances of your schema. This is useful when you want to cleanly
    +								separate data belonging to several customers / organisation units /
    +								branches / users and put each of those entities' data in a separate
    +								database or schema. </p>
    +							<p>In our T_AUTHOR example this would mean that you provide a book
    +								reference database to several companies, such as My Book World and
    +								Books R Us. In that case, you'll probably have a schema setup like
    +								this: </p>
    +							<ul>
    +								
    +<li>DEV: Your development schema. This will be the schema that you
    +									base code generation upon, with jOOQ </li>
    +								
    +<li>MY_BOOK_WORLD: The schema instance for My Book World </li>
    +								
    +<li>BOOKS_R_US: The schema instance for Books R Us </li>
    +							
    +</ul>
    +
    +
    +							<h2>Mapping DEV to MY_BOOK_WORLD with jOOQ</h2>
    +							<p>When a user from My Book World logs in, you want them to access the
    +								MY_BOOK_WORLD schema using classes generated from DEV. This can be
    +								achieved with the
    +								<a href="http://www.jooq.org/javadoc/latest/org/jooq/conf/RenderMapping.html" title="Internal API reference: org.jooq.conf.RenderMapping">org.jooq.conf.RenderMapping</a>
    +								class, that you can equip your Factory's settings
    +								with. Take the following example: </p>
    +
    +<pre class="prettyprint lang-java">Settings settings = new Settings()
    +    .withRenderMapping(new RenderMapping()
    +    .withSchemata(
    +        new MappedSchema().withInput("DEV")
    +                          .withOutput("MY_BOOK_WORLD")));
    +
    +// Add the settings to the factory
    +Factory create = new Factory(connection, SQLDialect.ORACLE, settings);
    +
    +// Run queries with the "mapped" factory
    +create.selectFrom(T_AUTHOR).fetch();</pre>
    +
    +							<p>The query executed with a Factory equipped with the above mapping
    +								will in fact produce this SQL statement: </p>
    +							<pre class="prettyprint lang-sql">SELECT * FROM MY_BOOK_WORLD.T_AUTHOR</pre>
    +							<p>Even if T_AUTHOR was generated from DEV. </p>
    +
    +							<h2>Mapping several schemata</h2>
    +							<p>Your development database may not be restricted to hold only one DEV
    +								schema. You may also have a LOG schema and a MASTER schema. Let's say
    +								the MASTER schema is shared among all customers, but each customer has
    +								their own LOG schema instance. Then you can enhance your RenderMapping
    +								like this (e.g. using an XML configuration file): </p>
    +
    +<pre class="prettyprint lang-xml">&lt;settings xmlns="http://www.jooq.org/xsd/jooq-runtime-2.1.0.xsd"&gt;
    +  &lt;renderMapping&gt;
    +    &lt;schemata&gt;
    +      &lt;schema&gt;
    +        &lt;input&gt;DEV&lt;/input&gt;
    +        &lt;output&gt;MY_BOOK_WORLD&lt;/output&gt;
    +      &lt;/schema&gt;
    +      &lt;schema&gt;
    +        &lt;input&gt;LOG&lt;/input&gt;
    +        &lt;output&gt;MY_BOOK_WORLD_LOG&lt;/output&gt;
    +      &lt;/schema&gt;
    +    &lt;/schemata&gt;
    +  &lt;/renderMapping&gt;
    +&lt;/settings&gt;</pre>
    +
    +                            <p>Note, you can load the above XML file like this:</p>
    +
    +<pre class="prettyprint lang-java">Settings settings = JAXB.unmarshal(new File("jooq-runtime.xml"), Settings.class);</pre>
    +
    +							<p>This will map generated classes from DEV to MY_BOOK_WORLD, from LOG
    +								to MY_BOOK_WORLD_LOG, but leave the MASTER schema alone. Whenever you
    +								want to change your mapping configuration, you will have to create a
    +								new Factory</p>
    +
    +
    +							<h2>Using a default schema</h2>
    +							<p>Another option to switch schema names is to use a default schema for
    +								the Factory's underlying Connection. Many RDBMS support a USE or SET
    +								SCHEMA command, which you can call like this: </p>
    +
    +<pre class="prettyprint lang-java">// Set the default schema
    +Schema MY_BOOK_WORLD = ...
    +create.use(MY_BOOK_WORLD);
    +
    +// Run queries with factory having a default schema
    +create.selectFrom(T_AUTHOR).fetch();</pre>
    +							<p>Queries generated from the above Factory will produce this kind of SQL statement: </p>
    +
    +<pre class="prettyprint lang-sql">-- the schema name is omitted from all SQL constructs.
    +SELECT * FROM T_AUTHOR</pre>
    +
    +
    +							<h2>Mapping of tables</h2>
    +							<p>Not only schemata can be mapped, but also tables. If you are not the
    +								owner of the database your application connects to, you might need to
    +								install your schema with some sort of prefix to every table. In our
    +								examples, this might mean that you will have to map DEV.T_AUTHOR to
    +								something MY_BOOK_WORLD.MY_APP__T_AUTHOR, where MY_APP__ is a prefix
    +								applied to all of your tables. This can be achieved by creating the
    +								following mapping: </p>
    +
    +<pre class="prettyprint lang-java">Settings settings = new Settings()
    +    .withRenderMapping(new RenderMapping()
    +    .withSchemata(
    +        new MappedSchema().withInput("DEV")
    +                          .withOutput("MY_BOOK_WORLD")
    +                          .withTables(
    +         new MappedTable().withInput("T_AUTHOR")
    +                          .withOutput("MY_APP__T_AUTHOR"))));
    +
    +// Add the settings to the factory
    +Factory create = new Factory(connection, SQLDialect.ORACLE, settings);
    +
    +// Run queries with the "mapped" factory
    +create.selectFrom(T_AUTHOR).fetch();</pre>
    +
    +							<p>The query executed with a Factory equipped with the above mapping will in fact produce this SQL statement: </p>
    +<pre class="prettyprint lang-sql">SELECT * FROM MY_BOOK_WORLD.MY_APP__T_AUTHOR</pre>
    +
    +							<h2>Mapping at code generation time</h2>
    +							<p>
    +								Note that you can also hard-wire schema mapping in generated artefacts
    +								at code generation time, e.g. when you have 5 developers with their own
    +								dedicated developer databases, and a common integration database. In the
    +								code generation configuration, you would then write.
    +							</p>
    +<pre class="prettyprint lang-xml">&lt;schemata&gt;
    +  &lt;schema&gt;
    +    &lt;!-- Use this as the developer's schema: --&gt;
    +    &lt;inputSchema&gt;LUKAS_DEV_SCHEMA&lt;/inputSchema&gt;
    +
    +    &lt;!-- Use this as the integration / production database: --&gt;
    +    &lt;outputSchema&gt;PROD&lt;/outputSchema&gt;
    +  &lt;/schema&gt;
    +&lt;/schemata&gt;</pre>
    +							<p>
    +								See the manual's section about
    +								<a href="#META" title="jOOQ Manual reference: Meta model code generation">jooq-codegen configuration</a>
    +								for more details
    +							</p>
    +						<h1 id="ExecuteListener">
    +<a name="ExecuteListener"></a>4.4. Execute listeners and the jOOQ Console</h1><p>
    +							Feel the heart beat of your SQL statements at a very low level using listeners
    +						</p>
    +							<h2>ExecuteListener</h2>
    +							<p>
    +								The <a href="#Factory" title="jOOQ Manual reference: The Factory class">jOOQ Factory Settings</a>
    +								let you specify a list of <a href="http://www.jooq.org/javadoc/latest/org/jooq/ExecuteListener.html" title="Internal API reference: org.jooq.ExecuteListener">org.jooq.ExecuteListener</a> classes.
    +								The ExecuteListener is essentially an event listener for
    +								Query, Routine, or ResultSet render, prepare, bind, execute, fetch steps. It is a
    +								base type for loggers, debuggers, profilers, data collectors. Advanced ExecuteListeners
    +								can also provide custom implementations of Connection, PreparedStatement and ResultSet
    +								to jOOQ in apropriate methods. For convenience, consider extending
    +								<a href="http://www.jooq.org/javadoc/latest/org/jooq/impl/DefaultExecuteListener.html" title="Internal API reference: org.jooq.impl.DefaultExecuteListener">org.jooq.impl.DefaultExecuteListener</a>
    +								instead of implementing this interface.
    +							</p>
    +							<p>
    +								Here is a sample implementation of an ExecuteListener, that is simply counting
    +								the number of queries per type that are being executed using jOOQ:
    +							</p>
    +
    +<pre class="prettyprint lang-java">package com.example;
    +
    +public class StatisticsListener extends DefaultExecuteListener {
    +    public static Map&lt;ExecuteType, Integer&gt; STATISTICS = new HashMap&lt;ExecuteType, Integer&gt;();
    +
    +    // Count "start" events for every type of query executed by jOOQ
    +    @Override
    +    public void start(ExecuteContext ctx) {
    +        Integer count = STATISTICS.get(ctx.type());
    +
    +        if (count == null) {
    +            count = 0;
    +        }
    +
    +        STATISTICS.put(ctx.type(), count + 1);
    +    }
    +}</pre>
    +
    +							<p>
    +								Now, configure jOOQ's runtime to load your listener
    +							</p>
    +
    +<pre class="prettyprint lang-xml">&lt;settings&gt;
    +  &lt;executeListeners&gt;
    +    &lt;executeListener&gt;com.example.StatisticsListener&lt;/executeListener&gt;
    +  &lt;/executeListeners&gt;
    +&lt;/settings&gt;</pre>
    +
    +							<p>
    +								And log results any time with a snippet like this:
    +							</p>
    +
    +<pre class="prettyprint lang-java">log.info("STATISTICS");
    +log.info("----------");
    +
    +for (ExecuteType type : ExecuteType.values()) {
    +    log.info(type.name(), StatisticsListener.STATISTICS.get(type) + " executions");
    +}</pre>
    +                            <p>
    +                            	This may result in the following log output:
    +                            </p>
    +
    +<pre class="prettyprint">15:16:52,982  INFO - TEST STATISTICS
    +15:16:52,982  INFO - ---------------
    +15:16:52,983  INFO - READ                     : 919 executions
    +15:16:52,983  INFO - WRITE                    : 117 executions
    +15:16:52,983  INFO - DDL                      : 2 executions
    +15:16:52,983  INFO - BATCH                    : 4 executions
    +15:16:52,983  INFO - ROUTINE                  : 21 executions
    +15:16:52,983  INFO - OTHER                    : 30 executions</pre>
    +							<p>
    +								Please read the
    +								<a href="http://www.jooq.org/javadoc/latest/org/jooq/ExecuteListener.html" title="ExecuteListener Javadoc">ExecuteListener Javadoc</a>
    +								for more details
    +							</p>
    +
    +							<h2>jOOQ Console</h2>
    +							<p>
    +							    The ExecuteListener API was driven by a feature request by Christopher Deckers, who has
    +							    had the courtesy to contribute the jOOQ Console, a sample application interfacing
    +							    with jOOQ's ExecuteListeners. The jOOQ Console logs all queries executed by jOOQ and
    +							    displays them nicely in a Swing application. With the jOOQ Console's logger, you can:
    +						    </p>
    +						    <ul>
    +						    	
    +<li>Activate the console's DebugListener anytime (in-process or if the remote server is active).</li>
    +						    	
    +<li>View simple and batch queries and their parameters.</li>
    +						    	
    +<li>Reformat queries along with syntax highlighting for better readability.</li>
    +						    	
    +<li>View stack trace of originator of the call.</li>
    +						    	
    +<li>Dump the stack to stdout when in an IDE, to directly navigate to relevant classes.</li>
    +						    	
    +<li>Track execution time, binding time, parsing time, rows read, fields read.</li>
    +						    	
    +<li>Show/hide queries depending on their type (SELECT, UPDATE, etc.).</li>
    +						    	
    +<li>Sort any column (timing columns, queries, types, etc.)</li>
    +						    	
    +<li>Easy copy paste of rows/columns to Spreadsheet editors.</li>
    +						    
    +</ul>
    +
    +						    <p>
    +						    	A short overview of such a debugging session can be seen here:
    +						    </p>
    +   							<div class="screenshot">
    +								
    +<img alt="jOOQ Console example" class="screenshot" src="<?=$root?>/img/jooq-console-01.png">
    +							</div>
    +						    <p>
    +							    Please note that the jOOQ Console is still experimental.
    +							    Any feedback is very welcome on
    +							    <a href="http://groups.google.com/group/jooq-user" title="the jooq-user group">the jooq-user group</a>
    +							
    +</p>
    +							<h2>jOOQ Console operation modes</h2>
    +							<p>
    +								The jOOQ Console can be run in two different modes:
    +							</p>
    +							<ul>
    +								
    +<li>In-process mode: running in the same process as the queries you're analysing</li>
    +								
    +<li>"headless" mode: running remotely</li>
    +							
    +</ul>
    +
    +							<p>
    +								Both modes will require that you set the
    +								<a href="https://github.com/lukaseder/jOOQ/blob/master/jOOQ-console/src/org/jooq/debug/DebugListener.java" title="Internal API reference: org.jooq.debug.DebugListener">org.jooq.debug.DebugListener</a>
    +								in the Factory's settings. When using XML settings:
    +							</p>
    +
    +<pre class="prettyprint lang-xml">&lt;settings&gt;
    +  &lt;executeListeners&gt;
    +    &lt;executeListener&gt;org.jooq.debug.DebugListener&lt;/executeListener&gt;
    +  &lt;/executeListeners&gt;
    +&lt;/settings&gt;</pre>
    +
    +							<p>
    +								Or when using programmatic settings:
    +							</p>
    +<pre class="prettyprint lang-java">Settings settings = new Settings()
    +    .getExecuteListeners().add("org.jooq.debug.DebugListener");
    +Factory factory = new Factory(connection, dialect, settings);</pre>
    +
    +							<h3>In-process mode</h3>
    +							<p>
    +								The in-process mode is useful for Swing applications or other,
    +								locally run Java programs accessing the database via jOOQ.
    +								In order to launch the jOOQ Console "in-process", specify the
    +								previously documented settings and launch the Console as follows:
    +							</p>
    +
    +<pre class="prettyprint lang-java">// Define a DatabaseDescriptor for the "in-process" mode
    +// It is needed for the "Editor" tab
    +DatabaseDescriptor descriptor = new DatabaseDescriptor() {
    +
    +    // Return your generated schema. This is used by the console
    +    // to introspect your schema data
    +    @Override
    +    public Schema getSchema() {
    +        return com.example.MySchema.MY_SCHEMA;
    +    }
    +
    +    // Return the SQL dialect that you're using
    +    @Override
    +    public SQLDialect getSQLDialect() {
    +        return SQLDialect.ORACLE;
    +    }
    +
    +    // Return a connection
    +    @Override
    +    public Connection createConnection() {
    +        try {
    +            return DriverManager.getConnection("jdbc:oracle:thin:@localhost:1521:xe", "test", "test");
    +        }
    +        catch (Exception ignore) {}
    +    }
    +};
    +
    +// Now pass this database descriptor to the Console and make it visible
    +try {
    +
    +    // Use this for a nicer look-and-feel
    +    UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName());
    +
    +    // Create a new Console
    +    Console console = new Console(descriptor, true);
    +    console.setLoggingActive(true);
    +    console.setVisible(true);
    +}
    +catch (Exception ignore) {}
    +</pre>
    +
    +							<p>
    +								Only in the in-process mode, you can execute ad-hoc queries directly
    +								from the console, if you provide it with proper DatabaseDescriptor.
    +								These queries are executed from the Editor pane which features:
    +							</p>
    +							<ul>
    +								
    +<li>SQL editing within the console.</li>
    +								
    +<li>Incremental search on tables.</li>
    +								
    +<li>Simple code completion with tables/columns/SQL keywords.</li>
    +								
    +<li>Syntax highlighting and formatting capabilities.</li>
    +								
    +<li>Results shown in one or several tabs.</li>
    +								
    +<li>Easy analysis of Logger output by copy/pasting/running queries in the Editor.</li>
    +							
    +</ul>
    +   							<div class="screenshot">
    +								
    +<img alt="jOOQ Console example" class="screenshot" src="<?=$root?>/img/jooq-console-02.png">
    +							</div>
    +
    +                            <h3>"Headless" mode</h3>
    +							<p>
    +								In J2EE or other server/client environments, you may not be able
    +								to run the console in the same process as your application. You
    +								can then run the jOOQ Console in "headless" mode. In addition to
    +								the previously documented settings, you'll have to start a
    +								debugger server in your application process, that the console can
    +								connect to:
    +							</p>
    +
    +<pre class="prettyprint lang-java">// Create a new RemoteDebuggerServer in your application that listens to
    +// incoming connections on a given port
    +SERVER = new RemoteDebuggerServer(DEBUGGER_PORT);</pre>
    +
    +							<p>
    +								Now start your application along with the debugger server
    +								and launch the console with this command:
    +							</p>
    +
    +<pre class="prettyprint">java -jar jooq-console-2.1.0.jar [host] [port]</pre>
    +
    +							<p>
    +								Depending on your distribution, you may have to manually add
    +								rsyntaxtextarea-1.5.0.jar and jOOQ artefacts on your classpath.
    +							</p>
    +						<h1 id="OracleHints">
    +<a name="OracleHints"></a>4.5. Adding Oracle hints to queries</h1><p>
    +							Oracle has a powerful syntax to add hints as comments directly in your SQL
    +						</p>
    +							<h2>How to embed Oracle hints in SELECT</h2>
    +							<p>If you are closely coupling your application to an Oracle database,
    +								you might need to be able to pass hints of the form /*+HINT*/ with
    +								your SQL statements to the Oracle database. For example: </p>
    +<pre class="prettyprint lang-sql">SELECT /*+ALL_ROWS*/ FIRST_NAME, LAST_NAME
    +  FROM T_AUTHOR</pre>
    +
    +  							<p>This can be done in jOOQ using the .hint() clause in your SELECT statement: </p>
    +<pre class="prettyprint lang-java">create.select(FIRST_NAME, LAST_NAME)
    +      .hint("/*+ALL_ROWS*/")
    +      .from(T_AUTHOR);</pre>
    +
    +							<p>Note that you can pass any string in the .hint() clause. If you use
    +								that clause, the passed string will always be put in between the
    +								SELECT [DISTINCT] keywords and the actual projection list </p>
    +						<h1 id="CONNECTBY">
    +<a name="CONNECTBY"></a>4.6. The Oracle CONNECT BY clause</h1><p>
    +							Hierarchical queries are supported by many RDBMS using the WITH clause.
    +							Oracle has a very neat and much less verbose syntax for hierarchical
    +							queries: CONNECT BY .. STARTS WITH
    +						</p>
    +							<h2>CONNECT BY .. STARTS WITH</h2>
    +							<p>If you are closely coupling your application to an Oracle database,
    +								you can take advantage of some Oracle-specific features, such as the
    +								CONNECT BY clause, used for hierarchical queries. The formal syntax
    +								definition is as follows: </p>
    +
    +<pre class="prettyprint lang-sql">--   SELECT ..
    +--     FROM ..
    +--    WHERE ..
    + CONNECT BY [NOCYCLE] condition [AND condition, ...] [START WITH condition]
    +-- GROUP BY ..</pre>
    +							<p>This can be done in jOOQ using the .connectBy(Condition) clauses in your SELECT statement: </p>
    +<pre class="prettyprint lang-java">// Some Oracle-specific features are only available
    +// from the OracleFactory
    +OracleFactory create = new OracleFactory(connection);
    +
    +// Get a table with elements 1, 2, 3, 4, 5
    +create.select(create.rownum())
    +      .connectBy(create.level().lessOrEqual(5))
    +      .fetch();</pre>
    +
    +							<p>Here's a more complex example where you can recursively fetch
    +								directories in your database, and concatenate them to a path:</p>
    +<pre class="prettyprint lang-java"> OracleFactory ora = new OracleFactory(connection);
    +
    + List&lt;?&gt; paths =
    + ora.select(ora.sysConnectByPath(DIRECTORY.NAME, "/").substring(2))
    +    .from(DIRECTORY)
    +    .connectBy(ora.prior(DIRECTORY.ID).equal(DIRECTORY.PARENT_ID))
    +    .startWith(DIRECTORY.PARENT_ID.isNull())
    +    .orderBy(ora.literal(1))
    +    .fetch(0);</pre>
    +
    +    						<p>The output might then look like this</p>
    +<pre>+------------------------------------------------+
    +|substring                                       |
    ++------------------------------------------------+
    +|C:                                              |
    +|C:/eclipse                                      |
    +|C:/eclipse/configuration                        |
    +|C:/eclipse/dropins                              |
    +|C:/eclipse/eclipse.exe                          |
    ++------------------------------------------------+
    +|...21 record(s) truncated...
    +</pre>
    +						<h1 id="PIVOT">
    +<a name="PIVOT"></a>4.7. The Oracle 11g PIVOT clause</h1><p>
    +				    	    Oracle 11g has formally introduced the very powerful PIVOT clause, which
    +				    	    allows to specify a pivot column, expected grouping values for pivoting,
    +				    	    as well as a set of aggregate functions
    +						</p>
    +							<h2>PIVOT (aggregate FOR column IN (columns))</h2>
    +							<p>If you are closely coupling your application to an Oracle database,
    +								you can take advantage of some Oracle-specific features, such as the
    +								PIVOT clause, used for statistical analyses. The formal syntax
    +								definition is as follows: </p>
    +<pre class="prettyprint lang-sql">-- SELECT ..
    +     FROM table PIVOT (aggregateFunction [, aggregateFunction] FOR column IN (expression [, expression]))
    +--  WHERE ..</pre>
    +
    +							<p>
    +								The PIVOT clause is available from the
    +								<a href="http://www.jooq.org/javadoc/latest/org/jooq/Table.html" title="Internal API reference: org.jooq.Table">org.jooq.Table</a>
    +								type, as pivoting is done directly on a table.
    +								Currently, only Oracle's PIVOT clause is supported. Support for SQL Server's
    +								PIVOT clause will be added later. Also, jOOQ may simulate PIVOT for other
    +								dialects in the future.
    +							</p>
    +						<h1 id="DIVISION">
    +<a name="DIVISION"></a>4.8. jOOQ's relational division syntax</h1><p>
    +				    	    Relational division is a rather academic topic that is not used in
    +				    	    every-day SQL. Nevertheless, it can be extremely powerful in some
    +				    	    remote cases. jOOQ supports it intuitively
    +						</p>
    +							<h2>Relational division</h2>
    +							<p>
    +							    There is one operation in relational algebra that is not given
    +							    a lot of attention, because it is rarely used in real-world
    +							    applications. It is the relational division, the opposite operation
    +							    of the cross product (or, relational multiplication).
    +								The following is an approximate definition of a relational division:
    +							</p>
    +
    +<pre class="prettyprint">Assume the following cross join / cartesian product
    +C = A &times; B
    +
    +Then it can be said that
    +A = C &divide; B
    +B = C &divide; A</pre>
    +
    +
    +							<p>
    +							   With jOOQ, you can simplify using relational divisions
    +							   by using the following syntax:
    +							</p>
    +
    +<pre class="prettyprint lang-java">C.divideBy(B).on(C.ID.equal(B.C_ID)).returning(C.TEXT)</pre>
    +
    +							<p>The above roughly translates to</p>
    +
    +<pre class="prettyprint lang-sql">SELECT DISTINCT C.TEXT FROM C "c1"
    +WHERE NOT EXISTS (
    +  SELECT 1 FROM B
    +  WHERE NOT EXISTS (
    +    SELECT 1 FROM C "c2"
    +    WHERE "c2".TEXT = "c1".TEXT
    +    AND "c2".ID = B.C_ID
    +  )
    +)</pre>
    +
    +							<p>
    +								Or in plain text: Find those TEXT values in C
    +								whose ID's correspond to all ID's in B. Note
    +								that from the above SQL statement, it is immediately
    +								clear that proper indexing is of the essence.
    +								Be sure to have indexes on all columns referenced
    +								from the on(...) and returning(...) clauses.
    +							</p>
    +
    +							<p>
    +								For more information about relational division
    +								and some nice, real-life examples, see
    +							</p>
    +
    +							<ul>
    +								
    +<li>
    +									
    +<a href="http://en.wikipedia.org/wiki/Relational_algebra#Division" title="Wikipedia article on relational division">http://en.wikipedia.org/wiki/Relational_algebra#Division</a>
    +								
    +</li>
    +								
    +<li>
    +									
    +<a href="http://www.simple-talk.com/sql/t-sql-programming/divided-we-stand-the-sql-of-relational-division/" title="A nice summary of what relational division is and how it is best implemented in SQL">http://www.simple-talk.com/sql/t-sql-programming/divided-we-stand-the-sql-of-relational-division/</a>
    +								
    +</li>
    +							
    +</ul>
    +						<h1 id="Export">
    +<a name="Export"></a>4.9. Exporting to XML, CSV, JSON, HTML, Text</h1><p>
    +							Get your data out of the Java world. Stream your data using any of the supported, wide-spread formats
    +						</p>
    +							<h2>Exporting with jOOQ</h2>
    +							<p>If you are using jOOQ for scripting purposes or in a slim, unlayered
    +								application server, you might be interested in using jOOQ's exporting
    +								functionality (see also importing functionality). You can export any
    +								Result&lt;Record&gt; into any of these formats: </p>
    +
    +							<h3>XML</h3>
    +							<p>Export your results as XML: </p>
    +<pre class="prettyprint lang-java">// Fetch books and format them as XML
    +String xml = create.selectFrom(T_BOOK).fetch().formatXML();</pre>
    +
    +							<p>The above query will result in an XML document looking like the following one: </p>
    +<pre class="prettyprint lang-xml">&lt;!-- Find the XSD definition on www.jooq.org: --&gt;
    +&lt;jooq-export:result xmlns:jooq-export="http://www.jooq.org/xsd/jooq-export-1.6.2.xsd"&gt;
    +  &lt;fields&gt;
    +    &lt;field name="ID"/&gt;
    +    &lt;field name="AUTHOR_ID"/&gt;
    +    &lt;field name="TITLE"/&gt;
    +  &lt;/fields&gt;
    +  &lt;records&gt;
    +    &lt;record&gt;
    +      &lt;value field="ID"&gt;1&lt;/value&gt;
    +      &lt;value field="AUTHOR_ID"&gt;1&lt;/value&gt;
    +      &lt;value field="TITLE"&gt;1984&lt;/value&gt;
    +    &lt;/record&gt;
    +    &lt;record&gt;
    +      &lt;value field="ID"&gt;2&lt;/value&gt;
    +      &lt;value field="AUTHOR_ID"&gt;1&lt;/value&gt;
    +      &lt;value field="TITLE"&gt;Animal Farm&lt;/value&gt;
    +    &lt;/record&gt;
    +  &lt;/records&gt;
    +&lt;/jooq-export:result&gt;</pre>
    +
    +							<h3>CSV</h3>
    +							<p>Export your results as CSV: </p>
    +<pre class="prettyprint lang-java">// Fetch books and format them as CSV
    +String csv = create.selectFrom(T_BOOK).fetch().formatCSV();</pre>
    +
    +							<p>The above query will result in a CSV document looking like the following one: </p>
    +<pre>ID;AUTHOR_ID;TITLE
    +1;1;1984
    +2;1;Animal Farm</pre>
    +
    +
    +							<h3>JSON</h3>
    +							<p>Export your results as JSON: </p>
    +
    +<pre class="prettyprint lang-java">// Fetch books and format them as JSON
    +String json = create.selectFrom(T_BOOK).fetch().formatJSON();</pre>
    +							<p>The above query will result in a JSON document looking like the following one: </p>
    +<pre>{fields:["ID","AUTHOR_ID","TITLE"],
    + records:[[1,1,"1984"],[2,1,"Animal Farm"]]}</pre>
    +
    + 							<h3>HTML </h3>
    + 							<p>Export your results as HTML: </p>
    +<pre class="prettyprint lang-java">// Fetch books and format them as HTML
    +String html = create.selectFrom(T_BOOK).fetch().formatHTML();</pre>
    +							<p>The above query will result in an HTML document looking like the following one: </p>
    +<pre class="prettyprint lang-xml">&lt;table&gt;
    +  &lt;thead&gt;
    +    &lt;tr&gt;
    +      &lt;th&gt;ID&lt;/th&gt;
    +      &lt;th&gt;AUTHOR_ID&lt;/th&gt;
    +      &lt;th&gt;TITLE&lt;/th&gt;
    +    &lt;/tr&gt;
    +  &lt;/thead&gt;
    +  &lt;tbody&gt;
    +    &lt;tr&gt;
    +      &lt;td&gt;1&lt;/td&gt;
    +      &lt;td&gt;1&lt;/td&gt;
    +      &lt;td&gt;1984&lt;/td&gt;
    +    &lt;/tr&gt;
    +    &lt;tr&gt;
    +      &lt;td&gt;2&lt;/td&gt;
    +      &lt;td&gt;1&lt;/td&gt;
    +      &lt;td&gt;Animal Farm&lt;/td&gt;
    +    &lt;/tr&gt;
    +  &lt;/tbody&gt;
    +&lt;/table&gt;</pre>
    +
    +							<h3>Text</h3>
    +							<p>Export your results as text: </p>
    +<pre class="prettyprint lang-java">// Fetch books and format them as text
    +String text = create.selectFrom(T_BOOK).fetch().format();</pre>
    +
    +							<p>The above query will result in a text document looking like the following one: </p>
    +<pre>+---+---------+-----------+
    +| ID|AUTHOR_ID|TITLE      |
    ++---+---------+-----------+
    +|  1|        1|1984       |
    +|  2|        1|Animal Farm|
    ++---+---------+-----------+</pre>
    +						<h1 id="Import">
    +<a name="Import"></a>4.10. Importing data from XML, CSV</h1><p>
    +							Use jOOQ to easily merge imported data into your database.
    +						</p>
    +							<h2>Importing with jOOQ</h2>
    +							<p>If you are using jOOQ for scripting purposes or in a slim, unlayered
    +								application server, you might be interested in using jOOQ's importing
    +								functionality (see also exporting functionality). You can import data
    +								directly into a table from any of these formats: </p>
    +
    +							<h3>CSV</h3>
    +							<p>The below CSV data represents two author records that may have been
    +								exported previously, by jOOQ's exporting functionality, and then
    +								modified in Microsoft Excel or any other spreadsheet tool: </p>
    +
    +<pre>ID;AUTHOR_ID;TITLE
    +1;1;1984
    +2;1;Animal Farm</pre>
    +
    +							<p>With jOOQ, you can load this data using various parameters from the
    +								loader API. A simple load may look like this: </p>
    +
    +<pre class="prettyprint lang-java">Factory create = new Factory(connection, SQLDialect.ORACLE);
    +
    +// Load data into the T_AUTHOR table from an input stream
    +// holding the CSV data.
    +create.loadInto(T_AUTHOR)
    +      .loadCSV(inputstream)
    +      .fields(ID, AUTHOR_ID, TITLE)
    +      .execute();</pre>
    +
    +      						<p>Here are various other examples: </p>
    +<pre class="prettyprint lang-java">// Ignore the AUTHOR_ID column from the CSV file when inserting
    +create.loadInto(T_AUTHOR)
    +      .loadCSV(inputstream)
    +      .fields(ID, null, TITLE)
    +      .execute();
    +
    +// Specify behaviour for duplicate records.
    +create.loadInto(T_AUTHOR)
    +
    +      // choose any of these methods
    +      .onDuplicateKeyUpdate()
    +      .onDuplicateKeyIgnore()
    +      .onDuplicateKeyError() // the default
    +
    +      .loadCSV(inputstream)
    +      .fields(ID, null, TITLE)
    +      .execute();
    +
    +// Specify behaviour when errors occur.
    +create.loadInto(T_AUTHOR)
    +
    +      // choose any of these methods
    +      .onErrorIgnore()
    +      .onErrorAbort() // the default
    +
    +      .loadCSV(inputstream)
    +      .fields(ID, null, TITLE)
    +      .execute();
    +
    +// Specify transactional behaviour where this is possible
    +// (e.g. not in container-managed transactions)
    +create.loadInto(T_AUTHOR)
    +
    +      // choose any of these methods
    +      .commitEach()
    +      .commitAfter(10)
    +      .commitAll()
    +      .commitNone() // the default
    +
    +      .loadCSV(inputstream)
    +      .fields(ID, null, TITLE)
    +      .execute();</pre>
    +
    +							<p>Any of the above configuration methods can be combined to achieve
    +								the type of load you need. Please refer to the API's Javadoc to learn
    +								about more details. Errors that occur during the load are reported by
    +								the execute method's result: </p>
    +
    +<pre class="prettyprint lang-java">Loader&lt;TAuthor&gt; loader = /* .. */ .execute();
    +
    +// The number of processed rows
    +int processed = loader.processed();
    +
    +// The number of stored rows (INSERT or UPDATE)
    +int stored = loader.stored();
    +
    +// The number of ignored rows (due to errors, or duplicate rule)
    +int ignored = loader.ignored();
    +
    +// The errors that may have occurred during loading
    +List&lt;LoaderError&gt; errors = loader.errors();
    +LoaderError error = errors.get(0);
    +
    +// The exception that caused the error
    +SQLException exception = error.exception();
    +
    +// The row that caused the error
    +int rowIndex = error.rowIndex();
    +String[] row = error.row();
    +
    +// The query that caused the error
    +Query query = error.query();</pre>
    +
    +							<h3>XML </h3>
    +							<p>This will be implemented soon... </p>
    +						<h1 id="Batch">
    +<a name="Batch"></a>4.11. Using JDBC batch operations</h1><p>
    +							Some JDBC drivers have highly optimised means of executing batch
    +							operations. The JDBC interface for those operations is a bit verbose.
    +							jOOQ abstracts that by re-using the existing query API's
    +						</p>
    +							<h2>JDBC batch operations</h2>
    +							<p>With JDBC, you can easily execute several statements at once using
    +								the addBatch() method. Essentially, there are two modes in JDBC</p>
    +
    +							<ol>
    +								
    +<li>Execute several queries without bind values</li>
    +								
    +<li>Execute one query several times with bind values</li>
    +							
    +</ol>
    +
    +							<p>In code, this looks like the following snippet:</p>
    +<pre class="prettyprint lang-java">// 1. several queries
    +// ------------------
    +Statement stmt = connection.createStatement();
    +stmt.addBatch("INSERT INTO author VALUES (1, 'Erich Gamma')");
    +stmt.addBatch("INSERT INTO author VALUES (2, 'Richard Helm')");
    +stmt.addBatch("INSERT INTO author VALUES (3, 'Ralph Johnson')");
    +stmt.addBatch("INSERT INTO author VALUES (4, 'John Vlissides')");
    +int[] result = stmt.executeBatch();
    +
    +// 2. a single query
    +// -----------------
    +PreparedStatement stmt = connection.prepareStatement("INSERT INTO autho VALUES (?, ?)");
    +stmt.setInt(1, 1);
    +stmt.setString(2, "Erich Gamma");
    +stmt.addBatch();
    +
    +stmt.setInt(1, 2);
    +stmt.setString(2, "Richard Helm");
    +stmt.addBatch();
    +
    +stmt.setInt(1, 3);
    +stmt.setString(2, "Ralph Johnson");
    +stmt.addBatch();
    +
    +stmt.setInt(1, 4);
    +stmt.setString(2, "John Vlissides");
    +stmt.addBatch();
    +
    +int[] result = stmt.executeBatch();</pre>
    +
    +
    +							<h2>This will also be supported by jOOQ</h2>
    +							<p>Version 1.6.9 of jOOQ now supports executing queries in batch
    +								mode as follows:</p>
    +<pre class="prettyprint lang-java">// 1. several queries
    +// ------------------
    +create.batch(
    +	create.insertInto(AUTHOR, ID, NAME).values(1, "Erich Gamma"),
    +	create.insertInto(AUTHOR, ID, NAME).values(2, "Richard Helm"),
    +	create.insertInto(AUTHOR, ID, NAME).values(3, "Ralph Johnson"),
    +	create.insertInto(AUTHOR, ID, NAME).values(4, "John Vlissides"))
    +.execute();
    +
    +// 2. a single query
    +// -----------------
    +create.batch(create.insertInto(AUTHOR, ID, NAME).values("?", "?"))
    +	  .bind(1, "Erich Gamma")
    +	  .bind(2, "Richard Helm")
    +	  .bind(3, "Ralph Johnson")
    +	  .bind(4, "John Vlissides")
    +	  .execute();</pre>
    +						
    +<?php 
    +}
    +?>
    diff --git a/jOOQ-website/manual/ADVANCED/Batch/index.php b/jOOQ-website/manual/ADVANCED/Batch/index.php
    new file mode 100644
    index 00000000000..d8f2672f46f
    --- /dev/null
    +++ b/jOOQ-website/manual/ADVANCED/Batch/index.php
    @@ -0,0 +1,99 @@
    +
    +<?php 
    +// The following content has been XSL transformed from manual.xml using html-pages.xsl
    +// Please do not edit this content manually
    +require '../../../frame.php';
    +function getH1() {
    +    return "Using JDBC batch operations";
    +}
    +function getActiveMenu() {
    +	return "manual";
    +}
    +function getSlogan() {
    +	return "
    +							Some JDBC drivers have highly optimised means of executing batch
    +							operations. The JDBC interface for those operations is a bit verbose.
    +							jOOQ abstracts that by re-using the existing query API's
    +						";
    +}
    +function printContent() {
    +    global $root;
    +?>
    +<table width="100%" border="0" cellspacing="0" cellpadding="0">
    +<tr>
    +<td valign="top" align="left"><a href="<?=$root?>/manual/">The jOOQ User Manual</a> : <a href="<?=$root?>/manual/ADVANCED/">Advanced topics</a> : <a href="<?=$root?>/manual/ADVANCED/Batch/">Using JDBC batch operations</a></td><td style="white-space: nowrap" valign="top" align="right"><a title="Previous section: Importing data from XML, CSV" href="<?=$root?>/manual/ADVANCED/Import/">previous</a></td>
    +</tr>
    +</table>
    +							<h2>JDBC batch operations</h2>
    +							<p>With JDBC, you can easily execute several statements at once using
    +								the addBatch() method. Essentially, there are two modes in JDBC</p>
    +
    +							<ol>
    +								
    +<li>Execute several queries without bind values</li>
    +								
    +<li>Execute one query several times with bind values</li>
    +							
    +</ol>
    +
    +							<p>In code, this looks like the following snippet:</p>
    +<pre class="prettyprint lang-java">// 1. several queries
    +// ------------------
    +Statement stmt = connection.createStatement();
    +stmt.addBatch("INSERT INTO author VALUES (1, 'Erich Gamma')");
    +stmt.addBatch("INSERT INTO author VALUES (2, 'Richard Helm')");
    +stmt.addBatch("INSERT INTO author VALUES (3, 'Ralph Johnson')");
    +stmt.addBatch("INSERT INTO author VALUES (4, 'John Vlissides')");
    +int[] result = stmt.executeBatch();
    +
    +// 2. a single query
    +// -----------------
    +PreparedStatement stmt = connection.prepareStatement("INSERT INTO autho VALUES (?, ?)");
    +stmt.setInt(1, 1);
    +stmt.setString(2, "Erich Gamma");
    +stmt.addBatch();
    +
    +stmt.setInt(1, 2);
    +stmt.setString(2, "Richard Helm");
    +stmt.addBatch();
    +
    +stmt.setInt(1, 3);
    +stmt.setString(2, "Ralph Johnson");
    +stmt.addBatch();
    +
    +stmt.setInt(1, 4);
    +stmt.setString(2, "John Vlissides");
    +stmt.addBatch();
    +
    +int[] result = stmt.executeBatch();</pre>
    +
    +
    +							<h2>This will also be supported by jOOQ</h2>
    +							<p>Version 1.6.9 of jOOQ now supports executing queries in batch
    +								mode as follows:</p>
    +<pre class="prettyprint lang-java">// 1. several queries
    +// ------------------
    +create.batch(
    +	create.insertInto(AUTHOR, ID, NAME).values(1, "Erich Gamma"),
    +	create.insertInto(AUTHOR, ID, NAME).values(2, "Richard Helm"),
    +	create.insertInto(AUTHOR, ID, NAME).values(3, "Ralph Johnson"),
    +	create.insertInto(AUTHOR, ID, NAME).values(4, "John Vlissides"))
    +.execute();
    +
    +// 2. a single query
    +// -----------------
    +create.batch(create.insertInto(AUTHOR, ID, NAME).values("?", "?"))
    +	  .bind(1, "Erich Gamma")
    +	  .bind(2, "Richard Helm")
    +	  .bind(3, "Ralph Johnson")
    +	  .bind(4, "John Vlissides")
    +	  .execute();</pre>
    +						<br><table width="100%" border="0" cellspacing="0" cellpadding="0">
    +<tr>
    +<td valign="top" align="left"><a href="<?=$root?>/manual/">The jOOQ User Manual</a> : <a href="<?=$root?>/manual/ADVANCED/">Advanced topics</a> : <a href="<?=$root?>/manual/ADVANCED/Batch/">Using JDBC batch operations</a></td><td style="white-space: nowrap" valign="top" align="right"><a title="Previous section: Importing data from XML, CSV" href="<?=$root?>/manual/ADVANCED/Import/">previous</a></td>
    +</tr>
    +</table>
    +<?php 
    +}
    +?>
    +
    diff --git a/jOOQ-website/manual/ADVANCED/CONNECTBY/index.php b/jOOQ-website/manual/ADVANCED/CONNECTBY/index.php
    new file mode 100644
    index 00000000000..5582652f6ed
    --- /dev/null
    +++ b/jOOQ-website/manual/ADVANCED/CONNECTBY/index.php
    @@ -0,0 +1,80 @@
    +
    +<?php 
    +// The following content has been XSL transformed from manual.xml using html-pages.xsl
    +// Please do not edit this content manually
    +require '../../../frame.php';
    +function getH1() {
    +    return "The Oracle CONNECT BY clause";
    +}
    +function getActiveMenu() {
    +	return "manual";
    +}
    +function getSlogan() {
    +	return "
    +							Hierarchical queries are supported by many RDBMS using the WITH clause.
    +							Oracle has a very neat and much less verbose syntax for hierarchical
    +							queries: CONNECT BY .. STARTS WITH
    +						";
    +}
    +function printContent() {
    +    global $root;
    +?>
    +<table width="100%" border="0" cellspacing="0" cellpadding="0">
    +<tr>
    +<td valign="top" align="left"><a href="<?=$root?>/manual/">The jOOQ User Manual</a> : <a href="<?=$root?>/manual/ADVANCED/">Advanced topics</a> : <a href="<?=$root?>/manual/ADVANCED/CONNECTBY/">The Oracle CONNECT BY clause</a></td><td style="white-space: nowrap" valign="top" align="right"><a title="Previous section: Adding Oracle hints to queries" href="<?=$root?>/manual/ADVANCED/OracleHints/">previous</a> : <a title="Next section: The Oracle 11g PIVOT clause" href="<?=$root?>/manual/ADVANCED/PIVOT/">next</a></td>
    +</tr>
    +</table>
    +							<h2>CONNECT BY .. STARTS WITH</h2>
    +							<p>If you are closely coupling your application to an Oracle database,
    +								you can take advantage of some Oracle-specific features, such as the
    +								CONNECT BY clause, used for hierarchical queries. The formal syntax
    +								definition is as follows: </p>
    +
    +<pre class="prettyprint lang-sql">--   SELECT ..
    +--     FROM ..
    +--    WHERE ..
    + CONNECT BY [NOCYCLE] condition [AND condition, ...] [START WITH condition]
    +-- GROUP BY ..</pre>
    +							<p>This can be done in jOOQ using the .connectBy(Condition) clauses in your SELECT statement: </p>
    +<pre class="prettyprint lang-java">// Some Oracle-specific features are only available
    +// from the OracleFactory
    +OracleFactory create = new OracleFactory(connection);
    +
    +// Get a table with elements 1, 2, 3, 4, 5
    +create.select(create.rownum())
    +      .connectBy(create.level().lessOrEqual(5))
    +      .fetch();</pre>
    +
    +							<p>Here's a more complex example where you can recursively fetch
    +								directories in your database, and concatenate them to a path:</p>
    +<pre class="prettyprint lang-java"> OracleFactory ora = new OracleFactory(connection);
    +
    + List&lt;?&gt; paths =
    + ora.select(ora.sysConnectByPath(DIRECTORY.NAME, "/").substring(2))
    +    .from(DIRECTORY)
    +    .connectBy(ora.prior(DIRECTORY.ID).equal(DIRECTORY.PARENT_ID))
    +    .startWith(DIRECTORY.PARENT_ID.isNull())
    +    .orderBy(ora.literal(1))
    +    .fetch(0);</pre>
    +
    +    						<p>The output might then look like this</p>
    +<pre>+------------------------------------------------+
    +|substring                                       |
    ++------------------------------------------------+
    +|C:                                              |
    +|C:/eclipse                                      |
    +|C:/eclipse/configuration                        |
    +|C:/eclipse/dropins                              |
    +|C:/eclipse/eclipse.exe                          |
    ++------------------------------------------------+
    +|...21 record(s) truncated...
    +</pre>
    +						<br><table width="100%" border="0" cellspacing="0" cellpadding="0">
    +<tr>
    +<td valign="top" align="left"><a href="<?=$root?>/manual/">The jOOQ User Manual</a> : <a href="<?=$root?>/manual/ADVANCED/">Advanced topics</a> : <a href="<?=$root?>/manual/ADVANCED/CONNECTBY/">The Oracle CONNECT BY clause</a></td><td style="white-space: nowrap" valign="top" align="right"><a title="Previous section: Adding Oracle hints to queries" href="<?=$root?>/manual/ADVANCED/OracleHints/">previous</a> : <a title="Next section: The Oracle 11g PIVOT clause" href="<?=$root?>/manual/ADVANCED/PIVOT/">next</a></td>
    +</tr>
    +</table>
    +<?php 
    +}
    +?>
    +
    diff --git a/jOOQ-website/manual/ADVANCED/CustomTypes/index.php b/jOOQ-website/manual/ADVANCED/CustomTypes/index.php
    new file mode 100644
    index 00000000000..75550e8094e
    --- /dev/null
    +++ b/jOOQ-website/manual/ADVANCED/CustomTypes/index.php
    @@ -0,0 +1,179 @@
    +
    +<?php 
    +// The following content has been XSL transformed from manual.xml using html-pages.xsl
    +// Please do not edit this content manually
    +require '../../../frame.php';
    +function getH1() {
    +    return "Custom data types and type conversion";
    +}
    +function getActiveMenu() {
    +	return "manual";
    +}
    +function getSlogan() {
    +	return "
    +							SQL data types are very limited in number. While some databases offer
    +							enumeration types or user-defined types, others only ship with the SQL
    +							standard. Read this chapter to see how to use custom types with jOOQ
    +						";
    +}
    +function printContent() {
    +    global $root;
    +?>
    +<table width="100%" border="0" cellspacing="0" cellpadding="0">
    +<tr>
    +<td valign="top" align="left"><a href="<?=$root?>/manual/">The jOOQ User Manual</a> : <a href="<?=$root?>/manual/ADVANCED/">Advanced topics</a> : <a href="<?=$root?>/manual/ADVANCED/CustomTypes/">Custom data types and type conversion</a></td><td style="white-space: nowrap" valign="top" align="right"><a title="Previous section: Master data generation. Enumeration tables" href="<?=$root?>/manual/ADVANCED/MasterData/">previous</a> : <a title="Next section: Mapping generated schemata and tables" href="<?=$root?>/manual/ADVANCED/SchemaMapping/">next</a></td>
    +</tr>
    +</table>
    +							<h2>Your custom type and its associated Converter</h2>
    +							<p>
    +								When using a custom type in jOOQ, you need to let jOOQ know about
    +								its associated <a href="http://www.jooq.org/javadoc/latest/org/jooq/Converter.html" title="Internal API reference: org.jooq.Converter">org.jooq.Converter</a>.
    +								A converter essentially has two generic type parameters:
    +							</p>
    +							<ul>
    +								
    +<li>&lt;U&gt;: The user-defined Java type. This could be <a href="http://download.oracle.com/javase/6/docs/api/java/util/GregorianCalendar.html" title="External API reference: java.util.GregorianCalendar">java.util.GregorianCalendar</a>, for instance.</li>
    +								
    +<li>&lt;T&gt;: The database / SQL type. This could be <a href="http://download.oracle.com/javase/6/docs/api/java/sql/Timestamp.html" title="External API reference: java.sql.Timestamp">java.sql.Timestamp</a>, for instance.</li>
    +							
    +</ul>
    +							<p>
    +								The above conversion implies that you may want to use a GregorianCalendar for
    +								SQL timestamps, rather than the timestamp type itself. You could then write
    +								a Converter like this:
    +							</p>
    +
    +<pre class="prettyprint lang-java">package com.example;
    +
    +import java.sql.Timestamp;
    +import java.util.Calendar;
    +import java.util.GregorianCalendar;
    +
    +import org.jooq.Converter;
    +
    +// Bind T to Timestamp and U to Gregorian calendar, here
    +public class CalendarConverter implements Converter&lt;Timestamp, GregorianCalendar&gt; {
    +
    +    // Provide jOOQ with Class&lt;?&gt; objects of &lt;U&gt; and &lt;T&gt;. These are used by
    +    // jOOQ to discover your converter based on your custom type
    +    // --------------------------------------------------------------------
    +    @Override
    +    public Class&lt;Timestamp&gt; fromType() {
    +        return Timestamp.class;
    +    }
    +
    +    @Override
    +    public Class&lt;GregorianCalendar&gt; toType() {
    +        return GregorianCalendar.class;
    +    }
    +
    +    // Implement the type conversion methods. Convert your user-defined type
    +    // "from" the SQL type when reading "from" the database, or "to" the SQL
    +    // type when writing "to" the database.
    +    @Override
    +    public GregorianCalendar from(Timestamp databaseObject) {
    +        GregorianCalendar calendar = (GregorianCalendar) Calendar.getInstance();
    +        calendar.setTimeInMillis(databaseObject.getTime());
    +        return calendar;
    +    }
    +
    +    @Override
    +    public Timestamp to(GregorianCalendar userObject) {
    +        return new Timestamp(userObject.getTime().getTime());
    +    }
    +}
    +</pre>
    +
    +							<p>
    +								Such a Converter can now be used in various places of the jOOQ
    +								API, especially when reading data from the database:
    +							</p>
    +
    +<pre class="prettyprint lang-java">List&lt;GregorianCalendar&gt; result =
    +create.select(T_AUTHOR.DATE_OF_BIRTH)
    +      .from(T_AUTHOR)
    +      .fetch(0, new CalendarConverter());</pre>
    +
    +      						<h3>Using Converters in generated code</h3>
    +      						<p>
    +								A more common use-case, however, is to let jOOQ know about custom
    +								types at code generation time. Use the following configuration elements
    +								to specify, that you'd like to use GregorianCalendar for all database
    +								fields that start with DATE_OF_
    +      						</p>
    +
    +<pre class="prettyprint lang-xml">&lt;database&gt;
    +  &lt;!-- First, register your custom types here --&gt;
    +  &lt;customTypes&gt;
    +    &lt;customType&gt;
    +      &lt;!-- Specify the fully-qualified class name of your custom type --&gt;
    +      &lt;name&gt;java.util.GregorianCalendar&lt;/name&gt;
    +
    +      &lt;!-- Associate that custom type with your converter. Note, a
    +           custom type can only have one converter in jOOQ --&gt;
    +      &lt;converter&gt;com.example.CalendarConverter&lt;/converter&gt;
    +    &lt;/customType&gt;
    +  &lt;/customTypes&gt;
    +
    +  &lt;!-- Then, associate custom types with database columns --&gt;
    +  &lt;forcedTypes&gt;
    +    &lt;forcedType&gt;
    +      &lt;!-- Specify again he fully-qualified class name of your custom type --&gt;
    +      &lt;name&gt;java.util.GregorianCalendar&lt;/name&gt;
    +
    +      &lt;!-- Add a list of comma-separated regular expressions matching columns --&gt;
    +      &lt;expressions&gt;.*\.DATE_OF_.*&lt;/expressions&gt;
    +    &lt;/forcedType&gt;
    +  &lt;/forcedTypes&gt;
    +&lt;/database&gt;</pre>
    +
    +                            <p>
    +                            	The above configuration will lead to T_AUTHOR.DATE_OF_BIRTH
    +                            	being generated like this:
    +                            </p>
    +
    +<pre class="prettyprint lang-java">public class TAuthor extends UpdatableTableImpl&lt;TAuthorRecord&gt; {
    +
    +    // [...]
    +    public final TableField&lt;TAuthorRecord, GregorianCalendar&gt; DATE_OF_BIRTH =    // [...]
    +    // [...]
    +
    +}</pre>
    +
    +                            <p>
    +                            	This means that the bound of &lt;T&gt; will be GregorianCalendar,
    +                            	wherever you reference DATE_OF_BIRTH. jOOQ will use your custom
    +                            	converter when binding variables and when fetching data from
    +                            	<a href="http://download.oracle.com/javase/6/docs/api/java/util/ResultSet.html" title="External API reference: java.util.ResultSet">java.util.ResultSet</a>:
    +                            </p>
    +
    +<pre class="prettyprint lang-java">// Get all date of births of authors born after 1980
    +List&lt;GregorianCalendar&gt; result =
    +create.selectFrom(T_AUTHOR)
    +      .where(T_AUTHOR.DATE_OF_BIRTH.greaterThan(new GregorianCalendar(1980, 0, 1)))
    +      .fetch(T_AUTHOR.DATE_OF_BIRTH);</pre>
    +
    +      						<p>
    +      						    Read more about advanced code generation configuration in
    +      						    <a href="<?=$root?>/manual/META/AdvancedConfiguration/" title="jOOQ Manual reference: Advanced configuration of the generator">the manual's section about advanced code generation configuration</a>.
    +      						</p>
    +
    +      						<h3>Using Converters for enum types</h3>
    +      						<p>
    +      							Java's Enum types can be very useful in SQL too.
    +      							Some databases support enumeration types natively (MySQL, Postgres).
    +      							In other cases, you can use the above custom type configuration
    +      							also to provide jOOQ with Converters for your custom Enum types.
    +      							Instead of implementing <a href="http://www.jooq.org/javadoc/latest/org/jooq/Converter.html" title="Internal API reference: org.jooq.Converter">org.jooq.Converter</a>,
    +      							you may choose to extend <a href="http://www.jooq.org/javadoc/latest/org/jooq/impl/EnumConverter.html" title="Internal API reference: org.jooq.impl.EnumConverter">org.jooq.impl.EnumConverter</a>
    +      							instead, which provides some enum-specific default behaviour.
    +      						</p>
    +						<br><table width="100%" border="0" cellspacing="0" cellpadding="0">
    +<tr>
    +<td valign="top" align="left"><a href="<?=$root?>/manual/">The jOOQ User Manual</a> : <a href="<?=$root?>/manual/ADVANCED/">Advanced topics</a> : <a href="<?=$root?>/manual/ADVANCED/CustomTypes/">Custom data types and type conversion</a></td><td style="white-space: nowrap" valign="top" align="right"><a title="Previous section: Master data generation. Enumeration tables" href="<?=$root?>/manual/ADVANCED/MasterData/">previous</a> : <a title="Next section: Mapping generated schemata and tables" href="<?=$root?>/manual/ADVANCED/SchemaMapping/">next</a></td>
    +</tr>
    +</table>
    +<?php 
    +}
    +?>
    +
    diff --git a/jOOQ-website/manual/ADVANCED/DIVISION/index.php b/jOOQ-website/manual/ADVANCED/DIVISION/index.php
    new file mode 100644
    index 00000000000..75a3fc6a440
    --- /dev/null
    +++ b/jOOQ-website/manual/ADVANCED/DIVISION/index.php
    @@ -0,0 +1,100 @@
    +
    +<?php 
    +// The following content has been XSL transformed from manual.xml using html-pages.xsl
    +// Please do not edit this content manually
    +require '../../../frame.php';
    +function getH1() {
    +    return "jOOQ's relational division syntax";
    +}
    +function getActiveMenu() {
    +	return "manual";
    +}
    +function getSlogan() {
    +	return "
    +				    	    Relational division is a rather academic topic that is not used in
    +				    	    every-day SQL. Nevertheless, it can be extremely powerful in some
    +				    	    remote cases. jOOQ supports it intuitively
    +						";
    +}
    +function printContent() {
    +    global $root;
    +?>
    +<table width="100%" border="0" cellspacing="0" cellpadding="0">
    +<tr>
    +<td valign="top" align="left"><a href="<?=$root?>/manual/">The jOOQ User Manual</a> : <a href="<?=$root?>/manual/ADVANCED/">Advanced topics</a> : <a href="<?=$root?>/manual/ADVANCED/DIVISION/">jOOQ's relational division syntax</a></td><td style="white-space: nowrap" valign="top" align="right"><a title="Previous section: The Oracle 11g PIVOT clause" href="<?=$root?>/manual/ADVANCED/PIVOT/">previous</a> : <a title="Next section: Exporting to XML, CSV, JSON, HTML, Text" href="<?=$root?>/manual/ADVANCED/Export/">next</a></td>
    +</tr>
    +</table>
    +							<h2>Relational division</h2>
    +							<p>
    +							    There is one operation in relational algebra that is not given
    +							    a lot of attention, because it is rarely used in real-world
    +							    applications. It is the relational division, the opposite operation
    +							    of the cross product (or, relational multiplication).
    +								The following is an approximate definition of a relational division:
    +							</p>
    +
    +<pre class="prettyprint">Assume the following cross join / cartesian product
    +C = A &times; B
    +
    +Then it can be said that
    +A = C &divide; B
    +B = C &divide; A</pre>
    +
    +
    +							<p>
    +							   With jOOQ, you can simplify using relational divisions
    +							   by using the following syntax:
    +							</p>
    +
    +<pre class="prettyprint lang-java">C.divideBy(B).on(C.ID.equal(B.C_ID)).returning(C.TEXT)</pre>
    +
    +							<p>The above roughly translates to</p>
    +
    +<pre class="prettyprint lang-sql">SELECT DISTINCT C.TEXT FROM C "c1"
    +WHERE NOT EXISTS (
    +  SELECT 1 FROM B
    +  WHERE NOT EXISTS (
    +    SELECT 1 FROM C "c2"
    +    WHERE "c2".TEXT = "c1".TEXT
    +    AND "c2".ID = B.C_ID
    +  )
    +)</pre>
    +
    +							<p>
    +								Or in plain text: Find those TEXT values in C
    +								whose ID's correspond to all ID's in B. Note
    +								that from the above SQL statement, it is immediately
    +								clear that proper indexing is of the essence.
    +								Be sure to have indexes on all columns referenced
    +								from the on(...) and returning(...) clauses.
    +							</p>
    +
    +							<p>
    +								For more information about relational division
    +								and some nice, real-life examples, see
    +							</p>
    +
    +							<ul>
    +								
    +<li>
    +									
    +<a href="http://en.wikipedia.org/wiki/Relational_algebra#Division" title="Wikipedia article on relational division">http://en.wikipedia.org/wiki/Relational_algebra#Division</a>
    +								
    +</li>
    +								
    +<li>
    +									
    +<a href="http://www.simple-talk.com/sql/t-sql-programming/divided-we-stand-the-sql-of-relational-division/" title="A nice summary of what relational division is and how it is best implemented in SQL">http://www.simple-talk.com/sql/t-sql-programming/divided-we-stand-the-sql-of-relational-division/</a>
    +								
    +</li>
    +							
    +</ul>
    +						<br><table width="100%" border="0" cellspacing="0" cellpadding="0">
    +<tr>
    +<td valign="top" align="left"><a href="<?=$root?>/manual/">The jOOQ User Manual</a> : <a href="<?=$root?>/manual/ADVANCED/">Advanced topics</a> : <a href="<?=$root?>/manual/ADVANCED/DIVISION/">jOOQ's relational division syntax</a></td><td style="white-space: nowrap" valign="top" align="right"><a title="Previous section: The Oracle 11g PIVOT clause" href="<?=$root?>/manual/ADVANCED/PIVOT/">previous</a> : <a title="Next section: Exporting to XML, CSV, JSON, HTML, Text" href="<?=$root?>/manual/ADVANCED/Export/">next</a></td>
    +</tr>
    +</table>
    +<?php 
    +}
    +?>
    +
    diff --git a/jOOQ-website/manual/ADVANCED/ExecuteListener/index.php b/jOOQ-website/manual/ADVANCED/ExecuteListener/index.php
    new file mode 100644
    index 00000000000..cdb822e4618
    --- /dev/null
    +++ b/jOOQ-website/manual/ADVANCED/ExecuteListener/index.php
    @@ -0,0 +1,278 @@
    +
    +<?php 
    +// The following content has been XSL transformed from manual.xml using html-pages.xsl
    +// Please do not edit this content manually
    +require '../../../frame.php';
    +function getH1() {
    +    return "Execute listeners and the jOOQ Console";
    +}
    +function getActiveMenu() {
    +	return "manual";
    +}
    +function getSlogan() {
    +	return "
    +							Feel the heart beat of your SQL statements at a very low level using listeners
    +						";
    +}
    +function printContent() {
    +    global $root;
    +?>
    +<table width="100%" border="0" cellspacing="0" cellpadding="0">
    +<tr>
    +<td valign="top" align="left"><a href="<?=$root?>/manual/">The jOOQ User Manual</a> : <a href="<?=$root?>/manual/ADVANCED/">Advanced topics</a> : <a href="<?=$root?>/manual/ADVANCED/ExecuteListener/">Execute listeners and the jOOQ Console</a></td><td style="white-space: nowrap" valign="top" align="right"><a title="Previous section: Mapping generated schemata and tables" href="<?=$root?>/manual/ADVANCED/SchemaMapping/">previous</a> : <a title="Next section: Adding Oracle hints to queries" href="<?=$root?>/manual/ADVANCED/OracleHints/">next</a></td>
    +</tr>
    +</table>
    +							<h2>ExecuteListener</h2>
    +							<p>
    +								The <a href="<?=$root?>/manual/JOOQ/Factory/" title="jOOQ Manual reference: The Factory class">jOOQ Factory Settings</a>
    +								let you specify a list of <a href="http://www.jooq.org/javadoc/latest/org/jooq/ExecuteListener.html" title="Internal API reference: org.jooq.ExecuteListener">org.jooq.ExecuteListener</a> classes.
    +								The ExecuteListener is essentially an event listener for
    +								Query, Routine, or ResultSet render, prepare, bind, execute, fetch steps. It is a
    +								base type for loggers, debuggers, profilers, data collectors. Advanced ExecuteListeners
    +								can also provide custom implementations of Connection, PreparedStatement and ResultSet
    +								to jOOQ in apropriate methods. For convenience, consider extending
    +								<a href="http://www.jooq.org/javadoc/latest/org/jooq/impl/DefaultExecuteListener.html" title="Internal API reference: org.jooq.impl.DefaultExecuteListener">org.jooq.impl.DefaultExecuteListener</a>
    +								instead of implementing this interface.
    +							</p>
    +							<p>
    +								Here is a sample implementation of an ExecuteListener, that is simply counting
    +								the number of queries per type that are being executed using jOOQ:
    +							</p>
    +
    +<pre class="prettyprint lang-java">package com.example;
    +
    +public class StatisticsListener extends DefaultExecuteListener {
    +    public static Map&lt;ExecuteType, Integer&gt; STATISTICS = new HashMap&lt;ExecuteType, Integer&gt;();
    +
    +    // Count "start" events for every type of query executed by jOOQ
    +    @Override
    +    public void start(ExecuteContext ctx) {
    +        Integer count = STATISTICS.get(ctx.type());
    +
    +        if (count == null) {
    +            count = 0;
    +        }
    +
    +        STATISTICS.put(ctx.type(), count + 1);
    +    }
    +}</pre>
    +
    +							<p>
    +								Now, configure jOOQ's runtime to load your listener
    +							</p>
    +
    +<pre class="prettyprint lang-xml">&lt;settings&gt;
    +  &lt;executeListeners&gt;
    +    &lt;executeListener&gt;com.example.StatisticsListener&lt;/executeListener&gt;
    +  &lt;/executeListeners&gt;
    +&lt;/settings&gt;</pre>
    +
    +							<p>
    +								And log results any time with a snippet like this:
    +							</p>
    +
    +<pre class="prettyprint lang-java">log.info("STATISTICS");
    +log.info("----------");
    +
    +for (ExecuteType type : ExecuteType.values()) {
    +    log.info(type.name(), StatisticsListener.STATISTICS.get(type) + " executions");
    +}</pre>
    +                            <p>
    +                            	This may result in the following log output:
    +                            </p>
    +
    +<pre class="prettyprint">15:16:52,982  INFO - TEST STATISTICS
    +15:16:52,982  INFO - ---------------
    +15:16:52,983  INFO - READ                     : 919 executions
    +15:16:52,983  INFO - WRITE                    : 117 executions
    +15:16:52,983  INFO - DDL                      : 2 executions
    +15:16:52,983  INFO - BATCH                    : 4 executions
    +15:16:52,983  INFO - ROUTINE                  : 21 executions
    +15:16:52,983  INFO - OTHER                    : 30 executions</pre>
    +							<p>
    +								Please read the
    +								<a href="http://www.jooq.org/javadoc/latest/org/jooq/ExecuteListener.html" title="ExecuteListener Javadoc">ExecuteListener Javadoc</a>
    +								for more details
    +							</p>
    +
    +							<h2>jOOQ Console</h2>
    +							<p>
    +							    The ExecuteListener API was driven by a feature request by Christopher Deckers, who has
    +							    had the courtesy to contribute the jOOQ Console, a sample application interfacing
    +							    with jOOQ's ExecuteListeners. The jOOQ Console logs all queries executed by jOOQ and
    +							    displays them nicely in a Swing application. With the jOOQ Console's logger, you can:
    +						    </p>
    +						    <ul>
    +						    	
    +<li>Activate the console's DebugListener anytime (in-process or if the remote server is active).</li>
    +						    	
    +<li>View simple and batch queries and their parameters.</li>
    +						    	
    +<li>Reformat queries along with syntax highlighting for better readability.</li>
    +						    	
    +<li>View stack trace of originator of the call.</li>
    +						    	
    +<li>Dump the stack to stdout when in an IDE, to directly navigate to relevant classes.</li>
    +						    	
    +<li>Track execution time, binding time, parsing time, rows read, fields read.</li>
    +						    	
    +<li>Show/hide queries depending on their type (SELECT, UPDATE, etc.).</li>
    +						    	
    +<li>Sort any column (timing columns, queries, types, etc.)</li>
    +						    	
    +<li>Easy copy paste of rows/columns to Spreadsheet editors.</li>
    +						    
    +</ul>
    +
    +						    <p>
    +						    	A short overview of such a debugging session can be seen here:
    +						    </p>
    +   							<div class="screenshot">
    +								
    +<img alt="jOOQ Console example" class="screenshot" src="<?=$root?>/img/jooq-console-01.png">
    +							</div>
    +						    <p>
    +							    Please note that the jOOQ Console is still experimental.
    +							    Any feedback is very welcome on
    +							    <a href="http://groups.google.com/group/jooq-user" title="the jooq-user group">the jooq-user group</a>
    +							
    +</p>
    +							<h2>jOOQ Console operation modes</h2>
    +							<p>
    +								The jOOQ Console can be run in two different modes:
    +							</p>
    +							<ul>
    +								
    +<li>In-process mode: running in the same process as the queries you're analysing</li>
    +								
    +<li>"headless" mode: running remotely</li>
    +							
    +</ul>
    +
    +							<p>
    +								Both modes will require that you set the
    +								<a href="https://github.com/lukaseder/jOOQ/blob/master/jOOQ-console/src/org/jooq/debug/DebugListener.java" title="Internal API reference: org.jooq.debug.DebugListener">org.jooq.debug.DebugListener</a>
    +								in the Factory's settings. When using XML settings:
    +							</p>
    +
    +<pre class="prettyprint lang-xml">&lt;settings&gt;
    +  &lt;executeListeners&gt;
    +    &lt;executeListener&gt;org.jooq.debug.DebugListener&lt;/executeListener&gt;
    +  &lt;/executeListeners&gt;
    +&lt;/settings&gt;</pre>
    +
    +							<p>
    +								Or when using programmatic settings:
    +							</p>
    +<pre class="prettyprint lang-java">Settings settings = new Settings()
    +    .getExecuteListeners().add("org.jooq.debug.DebugListener");
    +Factory factory = new Factory(connection, dialect, settings);</pre>
    +
    +							<h3>In-process mode</h3>
    +							<p>
    +								The in-process mode is useful for Swing applications or other,
    +								locally run Java programs accessing the database via jOOQ.
    +								In order to launch the jOOQ Console "in-process", specify the
    +								previously documented settings and launch the Console as follows:
    +							</p>
    +
    +<pre class="prettyprint lang-java">// Define a DatabaseDescriptor for the "in-process" mode
    +// It is needed for the "Editor" tab
    +DatabaseDescriptor descriptor = new DatabaseDescriptor() {
    +
    +    // Return your generated schema. This is used by the console
    +    // to introspect your schema data
    +    @Override
    +    public Schema getSchema() {
    +        return com.example.MySchema.MY_SCHEMA;
    +    }
    +
    +    // Return the SQL dialect that you're using
    +    @Override
    +    public SQLDialect getSQLDialect() {
    +        return SQLDialect.ORACLE;
    +    }
    +
    +    // Return a connection
    +    @Override
    +    public Connection createConnection() {
    +        try {
    +            return DriverManager.getConnection("jdbc:oracle:thin:@localhost:1521:xe", "test", "test");
    +        }
    +        catch (Exception ignore) {}
    +    }
    +};
    +
    +// Now pass this database descriptor to the Console and make it visible
    +try {
    +
    +    // Use this for a nicer look-and-feel
    +    UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName());
    +
    +    // Create a new Console
    +    Console console = new Console(descriptor, true);
    +    console.setLoggingActive(true);
    +    console.setVisible(true);
    +}
    +catch (Exception ignore) {}
    +</pre>
    +
    +							<p>
    +								Only in the in-process mode, you can execute ad-hoc queries directly
    +								from the console, if you provide it with proper DatabaseDescriptor.
    +								These queries are executed from the Editor pane which features:
    +							</p>
    +							<ul>
    +								
    +<li>SQL editing within the console.</li>
    +								
    +<li>Incremental search on tables.</li>
    +								
    +<li>Simple code completion with tables/columns/SQL keywords.</li>
    +								
    +<li>Syntax highlighting and formatting capabilities.</li>
    +								
    +<li>Results shown in one or several tabs.</li>
    +								
    +<li>Easy analysis of Logger output by copy/pasting/running queries in the Editor.</li>
    +							
    +</ul>
    +   							<div class="screenshot">
    +								
    +<img alt="jOOQ Console example" class="screenshot" src="<?=$root?>/img/jooq-console-02.png">
    +							</div>
    +
    +                            <h3>"Headless" mode</h3>
    +							<p>
    +								In J2EE or other server/client environments, you may not be able
    +								to run the console in the same process as your application. You
    +								can then run the jOOQ Console in "headless" mode. In addition to
    +								the previously documented settings, you'll have to start a
    +								debugger server in your application process, that the console can
    +								connect to:
    +							</p>
    +
    +<pre class="prettyprint lang-java">// Create a new RemoteDebuggerServer in your application that listens to
    +// incoming connections on a given port
    +SERVER = new RemoteDebuggerServer(DEBUGGER_PORT);</pre>
    +
    +							<p>
    +								Now start your application along with the debugger server
    +								and launch the console with this command:
    +							</p>
    +
    +<pre class="prettyprint">java -jar jooq-console-2.1.0.jar [host] [port]</pre>
    +
    +							<p>
    +								Depending on your distribution, you may have to manually add
    +								rsyntaxtextarea-1.5.0.jar and jOOQ artefacts on your classpath.
    +							</p>
    +						<br><table width="100%" border="0" cellspacing="0" cellpadding="0">
    +<tr>
    +<td valign="top" align="left"><a href="<?=$root?>/manual/">The jOOQ User Manual</a> : <a href="<?=$root?>/manual/ADVANCED/">Advanced topics</a> : <a href="<?=$root?>/manual/ADVANCED/ExecuteListener/">Execute listeners and the jOOQ Console</a></td><td style="white-space: nowrap" valign="top" align="right"><a title="Previous section: Mapping generated schemata and tables" href="<?=$root?>/manual/ADVANCED/SchemaMapping/">previous</a> : <a title="Next section: Adding Oracle hints to queries" href="<?=$root?>/manual/ADVANCED/OracleHints/">next</a></td>
    +</tr>
    +</table>
    +<?php 
    +}
    +?>
    +
    diff --git a/jOOQ-website/manual/ADVANCED/Export/index.php b/jOOQ-website/manual/ADVANCED/Export/index.php
    new file mode 100644
    index 00000000000..3d0c56af7f3
    --- /dev/null
    +++ b/jOOQ-website/manual/ADVANCED/Export/index.php
    @@ -0,0 +1,125 @@
    +
    +<?php 
    +// The following content has been XSL transformed from manual.xml using html-pages.xsl
    +// Please do not edit this content manually
    +require '../../../frame.php';
    +function getH1() {
    +    return "Exporting to XML, CSV, JSON, HTML, Text";
    +}
    +function getActiveMenu() {
    +	return "manual";
    +}
    +function getSlogan() {
    +	return "
    +							Get your data out of the Java world. Stream your data using any of the supported, wide-spread formats
    +						";
    +}
    +function printContent() {
    +    global $root;
    +?>
    +<table width="100%" border="0" cellspacing="0" cellpadding="0">
    +<tr>
    +<td valign="top" align="left"><a href="<?=$root?>/manual/">The jOOQ User Manual</a> : <a href="<?=$root?>/manual/ADVANCED/">Advanced topics</a> : <a href="<?=$root?>/manual/ADVANCED/Export/">Exporting to XML, CSV, JSON, HTML, Text</a></td><td style="white-space: nowrap" valign="top" align="right"><a title="Previous section: jOOQ's relational division syntax" href="<?=$root?>/manual/ADVANCED/DIVISION/">previous</a> : <a title="Next section: Importing data from XML, CSV" href="<?=$root?>/manual/ADVANCED/Import/">next</a></td>
    +</tr>
    +</table>
    +							<h2>Exporting with jOOQ</h2>
    +							<p>If you are using jOOQ for scripting purposes or in a slim, unlayered
    +								application server, you might be interested in using jOOQ's exporting
    +								functionality (see also importing functionality). You can export any
    +								Result&lt;Record&gt; into any of these formats: </p>
    +
    +							<h3>XML</h3>
    +							<p>Export your results as XML: </p>
    +<pre class="prettyprint lang-java">// Fetch books and format them as XML
    +String xml = create.selectFrom(T_BOOK).fetch().formatXML();</pre>
    +
    +							<p>The above query will result in an XML document looking like the following one: </p>
    +<pre class="prettyprint lang-xml">&lt;!-- Find the XSD definition on www.jooq.org: --&gt;
    +&lt;jooq-export:result xmlns:jooq-export="http://www.jooq.org/xsd/jooq-export-1.6.2.xsd"&gt;
    +  &lt;fields&gt;
    +    &lt;field name="ID"/&gt;
    +    &lt;field name="AUTHOR_ID"/&gt;
    +    &lt;field name="TITLE"/&gt;
    +  &lt;/fields&gt;
    +  &lt;records&gt;
    +    &lt;record&gt;
    +      &lt;value field="ID"&gt;1&lt;/value&gt;
    +      &lt;value field="AUTHOR_ID"&gt;1&lt;/value&gt;
    +      &lt;value field="TITLE"&gt;1984&lt;/value&gt;
    +    &lt;/record&gt;
    +    &lt;record&gt;
    +      &lt;value field="ID"&gt;2&lt;/value&gt;
    +      &lt;value field="AUTHOR_ID"&gt;1&lt;/value&gt;
    +      &lt;value field="TITLE"&gt;Animal Farm&lt;/value&gt;
    +    &lt;/record&gt;
    +  &lt;/records&gt;
    +&lt;/jooq-export:result&gt;</pre>
    +
    +							<h3>CSV</h3>
    +							<p>Export your results as CSV: </p>
    +<pre class="prettyprint lang-java">// Fetch books and format them as CSV
    +String csv = create.selectFrom(T_BOOK).fetch().formatCSV();</pre>
    +
    +							<p>The above query will result in a CSV document looking like the following one: </p>
    +<pre>ID;AUTHOR_ID;TITLE
    +1;1;1984
    +2;1;Animal Farm</pre>
    +
    +
    +							<h3>JSON</h3>
    +							<p>Export your results as JSON: </p>
    +
    +<pre class="prettyprint lang-java">// Fetch books and format them as JSON
    +String json = create.selectFrom(T_BOOK).fetch().formatJSON();</pre>
    +							<p>The above query will result in a JSON document looking like the following one: </p>
    +<pre>{fields:["ID","AUTHOR_ID","TITLE"],
    + records:[[1,1,"1984"],[2,1,"Animal Farm"]]}</pre>
    +
    + 							<h3>HTML </h3>
    + 							<p>Export your results as HTML: </p>
    +<pre class="prettyprint lang-java">// Fetch books and format them as HTML
    +String html = create.selectFrom(T_BOOK).fetch().formatHTML();</pre>
    +							<p>The above query will result in an HTML document looking like the following one: </p>
    +<pre class="prettyprint lang-xml">&lt;table&gt;
    +  &lt;thead&gt;
    +    &lt;tr&gt;
    +      &lt;th&gt;ID&lt;/th&gt;
    +      &lt;th&gt;AUTHOR_ID&lt;/th&gt;
    +      &lt;th&gt;TITLE&lt;/th&gt;
    +    &lt;/tr&gt;
    +  &lt;/thead&gt;
    +  &lt;tbody&gt;
    +    &lt;tr&gt;
    +      &lt;td&gt;1&lt;/td&gt;
    +      &lt;td&gt;1&lt;/td&gt;
    +      &lt;td&gt;1984&lt;/td&gt;
    +    &lt;/tr&gt;
    +    &lt;tr&gt;
    +      &lt;td&gt;2&lt;/td&gt;
    +      &lt;td&gt;1&lt;/td&gt;
    +      &lt;td&gt;Animal Farm&lt;/td&gt;
    +    &lt;/tr&gt;
    +  &lt;/tbody&gt;
    +&lt;/table&gt;</pre>
    +
    +							<h3>Text</h3>
    +							<p>Export your results as text: </p>
    +<pre class="prettyprint lang-java">// Fetch books and format them as text
    +String text = create.selectFrom(T_BOOK).fetch().format();</pre>
    +
    +							<p>The above query will result in a text document looking like the following one: </p>
    +<pre>+---+---------+-----------+
    +| ID|AUTHOR_ID|TITLE      |
    ++---+---------+-----------+
    +|  1|        1|1984       |
    +|  2|        1|Animal Farm|
    ++---+---------+-----------+</pre>
    +						<br><table width="100%" border="0" cellspacing="0" cellpadding="0">
    +<tr>
    +<td valign="top" align="left"><a href="<?=$root?>/manual/">The jOOQ User Manual</a> : <a href="<?=$root?>/manual/ADVANCED/">Advanced topics</a> : <a href="<?=$root?>/manual/ADVANCED/Export/">Exporting to XML, CSV, JSON, HTML, Text</a></td><td style="white-space: nowrap" valign="top" align="right"><a title="Previous section: jOOQ's relational division syntax" href="<?=$root?>/manual/ADVANCED/DIVISION/">previous</a> : <a title="Next section: Importing data from XML, CSV" href="<?=$root?>/manual/ADVANCED/Import/">next</a></td>
    +</tr>
    +</table>
    +<?php 
    +}
    +?>
    +
    diff --git a/jOOQ-website/manual/ADVANCED/Import/index.php b/jOOQ-website/manual/ADVANCED/Import/index.php
    new file mode 100644
    index 00000000000..9bcf3dd1a23
    --- /dev/null
    +++ b/jOOQ-website/manual/ADVANCED/Import/index.php
    @@ -0,0 +1,136 @@
    +
    +<?php 
    +// The following content has been XSL transformed from manual.xml using html-pages.xsl
    +// Please do not edit this content manually
    +require '../../../frame.php';
    +function getH1() {
    +    return "Importing data from XML, CSV";
    +}
    +function getActiveMenu() {
    +	return "manual";
    +}
    +function getSlogan() {
    +	return "
    +							Use jOOQ to easily merge imported data into your database.
    +						";
    +}
    +function printContent() {
    +    global $root;
    +?>
    +<table width="100%" border="0" cellspacing="0" cellpadding="0">
    +<tr>
    +<td valign="top" align="left"><a href="<?=$root?>/manual/">The jOOQ User Manual</a> : <a href="<?=$root?>/manual/ADVANCED/">Advanced topics</a> : <a href="<?=$root?>/manual/ADVANCED/Import/">Importing data from XML, CSV</a></td><td style="white-space: nowrap" valign="top" align="right"><a title="Previous section: Exporting to XML, CSV, JSON, HTML, Text" href="<?=$root?>/manual/ADVANCED/Export/">previous</a> : <a title="Next section: Using JDBC batch operations" href="<?=$root?>/manual/ADVANCED/Batch/">next</a></td>
    +</tr>
    +</table>
    +							<h2>Importing with jOOQ</h2>
    +							<p>If you are using jOOQ for scripting purposes or in a slim, unlayered
    +								application server, you might be interested in using jOOQ's importing
    +								functionality (see also exporting functionality). You can import data
    +								directly into a table from any of these formats: </p>
    +
    +							<h3>CSV</h3>
    +							<p>The below CSV data represents two author records that may have been
    +								exported previously, by jOOQ's exporting functionality, and then
    +								modified in Microsoft Excel or any other spreadsheet tool: </p>
    +
    +<pre>ID;AUTHOR_ID;TITLE
    +1;1;1984
    +2;1;Animal Farm</pre>
    +
    +							<p>With jOOQ, you can load this data using various parameters from the
    +								loader API. A simple load may look like this: </p>
    +
    +<pre class="prettyprint lang-java">Factory create = new Factory(connection, SQLDialect.ORACLE);
    +
    +// Load data into the T_AUTHOR table from an input stream
    +// holding the CSV data.
    +create.loadInto(T_AUTHOR)
    +      .loadCSV(inputstream)
    +      .fields(ID, AUTHOR_ID, TITLE)
    +      .execute();</pre>
    +
    +      						<p>Here are various other examples: </p>
    +<pre class="prettyprint lang-java">// Ignore the AUTHOR_ID column from the CSV file when inserting
    +create.loadInto(T_AUTHOR)
    +      .loadCSV(inputstream)
    +      .fields(ID, null, TITLE)
    +      .execute();
    +
    +// Specify behaviour for duplicate records.
    +create.loadInto(T_AUTHOR)
    +
    +      // choose any of these methods
    +      .onDuplicateKeyUpdate()
    +      .onDuplicateKeyIgnore()
    +      .onDuplicateKeyError() // the default
    +
    +      .loadCSV(inputstream)
    +      .fields(ID, null, TITLE)
    +      .execute();
    +
    +// Specify behaviour when errors occur.
    +create.loadInto(T_AUTHOR)
    +
    +      // choose any of these methods
    +      .onErrorIgnore()
    +      .onErrorAbort() // the default
    +
    +      .loadCSV(inputstream)
    +      .fields(ID, null, TITLE)
    +      .execute();
    +
    +// Specify transactional behaviour where this is possible
    +// (e.g. not in container-managed transactions)
    +create.loadInto(T_AUTHOR)
    +
    +      // choose any of these methods
    +      .commitEach()
    +      .commitAfter(10)
    +      .commitAll()
    +      .commitNone() // the default
    +
    +      .loadCSV(inputstream)
    +      .fields(ID, null, TITLE)
    +      .execute();</pre>
    +
    +							<p>Any of the above configuration methods can be combined to achieve
    +								the type of load you need. Please refer to the API's Javadoc to learn
    +								about more details. Errors that occur during the load are reported by
    +								the execute method's result: </p>
    +
    +<pre class="prettyprint lang-java">Loader&lt;TAuthor&gt; loader = /* .. */ .execute();
    +
    +// The number of processed rows
    +int processed = loader.processed();
    +
    +// The number of stored rows (INSERT or UPDATE)
    +int stored = loader.stored();
    +
    +// The number of ignored rows (due to errors, or duplicate rule)
    +int ignored = loader.ignored();
    +
    +// The errors that may have occurred during loading
    +List&lt;LoaderError&gt; errors = loader.errors();
    +LoaderError error = errors.get(0);
    +
    +// The exception that caused the error
    +SQLException exception = error.exception();
    +
    +// The row that caused the error
    +int rowIndex = error.rowIndex();
    +String[] row = error.row();
    +
    +// The query that caused the error
    +Query query = error.query();</pre>
    +
    +							<h3>XML </h3>
    +							<p>This will be implemented soon... </p>
    +						<br><table width="100%" border="0" cellspacing="0" cellpadding="0">
    +<tr>
    +<td valign="top" align="left"><a href="<?=$root?>/manual/">The jOOQ User Manual</a> : <a href="<?=$root?>/manual/ADVANCED/">Advanced topics</a> : <a href="<?=$root?>/manual/ADVANCED/Import/">Importing data from XML, CSV</a></td><td style="white-space: nowrap" valign="top" align="right"><a title="Previous section: Exporting to XML, CSV, JSON, HTML, Text" href="<?=$root?>/manual/ADVANCED/Export/">previous</a> : <a title="Next section: Using JDBC batch operations" href="<?=$root?>/manual/ADVANCED/Batch/">next</a></td>
    +</tr>
    +</table>
    +<?php 
    +}
    +?>
    +
    diff --git a/jOOQ-website/manual/ADVANCED/MasterData/index.php b/jOOQ-website/manual/ADVANCED/MasterData/index.php
    new file mode 100644
    index 00000000000..81568a80297
    --- /dev/null
    +++ b/jOOQ-website/manual/ADVANCED/MasterData/index.php
    @@ -0,0 +1,143 @@
    +
    +<?php 
    +// The following content has been XSL transformed from manual.xml using html-pages.xsl
    +// Please do not edit this content manually
    +require '../../../frame.php';
    +function getH1() {
    +    return "Master data generation. Enumeration tables";
    +}
    +function getActiveMenu() {
    +	return "manual";
    +}
    +function getSlogan() {
    +	return "Enumerations are a powerful concept. Unfortunately, almost no
    +							RDBMS supports them, leaving you to create numerous tables for your
    +							enumerated values. But these values are still enumerations!";
    +}
    +function printContent() {
    +    global $root;
    +?>
    +<table width="100%" border="0" cellspacing="0" cellpadding="0">
    +<tr>
    +<td valign="top" align="left"><a href="<?=$root?>/manual/">The jOOQ User Manual</a> : <a href="<?=$root?>/manual/ADVANCED/">Advanced topics</a> : <a href="<?=$root?>/manual/ADVANCED/MasterData/">Master data generation. Enumeration tables</a></td><td style="white-space: nowrap" valign="top" align="right"><a title="Previous section: Advanced topics" href="<?=$root?>/manual/ADVANCED/">previous</a> : <a title="Next section: Custom data types and type conversion" href="<?=$root?>/manual/ADVANCED/CustomTypes/">next</a></td>
    +</tr>
    +</table>
    +							<h2>Enumeration tables</h2>
    +							<p>Only MySQL and Postgres databases support true ENUM types natively.
    +								Some other RDBMS allow you to map the concept of an ENUM data type to
    +								a CHECK constraint, but those constraints can contain arbitrary SQL.
    +								 With jOOQ, you
    +								can "simulate" ENUM types by declaring a table as a "master data
    +								table" in the configuration. At code-generation time, this table will
    +								be treated specially, and a Java enum type is generated from its data.
    +							</p>
    +
    +							<h2>Configure master data tables</h2>
    +							<p>As previously discussed in the
    +							  <a href="<?=$root?>/manual/META/Configuration/" title="jOOQ Manual reference: Configuration and setup of the generator">configuration and setup</a>
    +							   section, you can configure master data tables as follows: </p>
    +<pre class="prettyprint lang-xml">&lt;!-- These properties can be added to the database element: --&gt;
    +&lt;database&gt;
    +  &lt;masterDataTables&gt;
    +    &lt;masterDataTable&gt;
    +      &lt;!-- The name of a master data table --&gt;
    +      &lt;name&gt;[a table name]&lt;/name&gt;
    +
    +      &lt;!-- The column used for enum literals --&gt;
    +      &lt;literal&gt;[a column name]&lt;/literal&gt;
    +
    +      &lt;!-- The column used for documentation --&gt;
    +      &lt;description&gt;[a column name]&lt;/description&gt;
    +    &lt;/masterDataTable&gt;
    +
    +    [ &lt;masterDataTable&gt;...&lt;/masterDataTable&gt; ... ]
    +  &lt;/masterDataTables&gt;
    + &lt;/database&gt;</pre>
    +
    +							<p>The results of this will be a Java enum that looks similar to this: </p>
    +<pre class="prettyprint lang-java">public enum TLanguage implements MasterDataType&lt;Integer&gt; {
    +
    +  /**
    +   * English
    +   */
    +  en(1, "en", "English"),
    +
    +  /**
    +   * Deutsch
    +   */
    +  de(2, "de", "Deutsch"),
    +
    +  /**
    +   * Fran&ccedil;ais
    +   */
    +  fr(3, "fr", "Fran&ccedil;ais"),
    +
    +  /**
    +   * null
    +   */
    +  pt(4, "pt", null),
    +  ;
    +
    +  private final Integer id;
    +  private final String cd;
    +  private final String description;
    +
    +  // [ ... constructor and getters for the above properties ]
    +}</pre>
    +
    +							<p>In the above example, you can see how the configured primary key is
    +								mapped to the id member, the configured literal column is mapped to
    +								the cd member and the configured description member is mapped to the
    +								description member and output as Javadoc. In other words, T_LANGUAGE
    +								is a table with 4 rows and at least three columns. </p>
    +							<p>The general contract (with jOOQ 1.6.2+) is that there must be </p>
    +							<ul>
    +								
    +<li> A single-column primary key column of character or integer type
    +								</li>
    +								
    +<li>An optional unique literal column of character or integer type
    +									(otherwise, the primary key is used as enum literal) </li>
    +								
    +<li>An optional description column of any type </li>
    +							
    +</ul>
    +
    +							<h2>Using MasterDataTypes</h2>
    +							<p>The point of MasterDataTypes in jOOQ is that they behave exactly
    +								like true ENUM types. When the above T_LANGUAGE table is referenced by
    +								T_BOOK, instead of generating foreign key navigation methods and a
    +								LANGUAGE_ID Field&lt;Integer&gt;, a Field&lt;TLanguage&gt; is
    +								generated: </p>
    +
    +<pre class="prettyprint lang-java">public class TBook extends UpdatableTableImpl&lt;TBookRecord&gt; {
    +
    +  // [...]
    +  public static final TableField&lt;TBookRecord, TLanguage&gt; LANGUAGE_ID =
    +                  new TableFieldImpl&lt;TBookRecord, TLanguage&gt;( /* ... */ );
    +}</pre>
    +
    +							<p>Which can then be used in the TBookRecord directly: </p>
    +<pre class="prettyprint lang-java">public class TBookRecord extends UpdatableRecordImpl&lt;TBookRecord&gt; {
    +
    +  // [...]
    +  public TLanguage getLanguageId() { // [...]
    +  public void setLanguageId(TLanguage value) { // [...]
    +}</pre>
    +
    +							<h2>When to use MasterDataTypes</h2>
    +							<p>You can use master data types when you're actually mapping master
    +								data to a Java enum. When the underlying table changes frequently,
    +								those updates will not be reflected by the statically generated code.
    +								Also, be aware that it will be difficult to perform actual JOIN
    +								operations on the underlying table with jOOQ, once the master data
    +								type is generated. </p>
    +						<br><table width="100%" border="0" cellspacing="0" cellpadding="0">
    +<tr>
    +<td valign="top" align="left"><a href="<?=$root?>/manual/">The jOOQ User Manual</a> : <a href="<?=$root?>/manual/ADVANCED/">Advanced topics</a> : <a href="<?=$root?>/manual/ADVANCED/MasterData/">Master data generation. Enumeration tables</a></td><td style="white-space: nowrap" valign="top" align="right"><a title="Previous section: Advanced topics" href="<?=$root?>/manual/ADVANCED/">previous</a> : <a title="Next section: Custom data types and type conversion" href="<?=$root?>/manual/ADVANCED/CustomTypes/">next</a></td>
    +</tr>
    +</table>
    +<?php 
    +}
    +?>
    +
    diff --git a/jOOQ-website/manual/ADVANCED/OracleHints/index.php b/jOOQ-website/manual/ADVANCED/OracleHints/index.php
    new file mode 100644
    index 00000000000..8c397adc923
    --- /dev/null
    +++ b/jOOQ-website/manual/ADVANCED/OracleHints/index.php
    @@ -0,0 +1,48 @@
    +
    +<?php 
    +// The following content has been XSL transformed from manual.xml using html-pages.xsl
    +// Please do not edit this content manually
    +require '../../../frame.php';
    +function getH1() {
    +    return "Adding Oracle hints to queries";
    +}
    +function getActiveMenu() {
    +	return "manual";
    +}
    +function getSlogan() {
    +	return "
    +							Oracle has a powerful syntax to add hints as comments directly in your SQL
    +						";
    +}
    +function printContent() {
    +    global $root;
    +?>
    +<table width="100%" border="0" cellspacing="0" cellpadding="0">
    +<tr>
    +<td valign="top" align="left"><a href="<?=$root?>/manual/">The jOOQ User Manual</a> : <a href="<?=$root?>/manual/ADVANCED/">Advanced topics</a> : <a href="<?=$root?>/manual/ADVANCED/OracleHints/">Adding Oracle hints to queries</a></td><td style="white-space: nowrap" valign="top" align="right"><a title="Previous section: Execute listeners and the jOOQ Console" href="<?=$root?>/manual/ADVANCED/ExecuteListener/">previous</a> : <a title="Next section: The Oracle CONNECT BY clause" href="<?=$root?>/manual/ADVANCED/CONNECTBY/">next</a></td>
    +</tr>
    +</table>
    +							<h2>How to embed Oracle hints in SELECT</h2>
    +							<p>If you are closely coupling your application to an Oracle database,
    +								you might need to be able to pass hints of the form /*+HINT*/ with
    +								your SQL statements to the Oracle database. For example: </p>
    +<pre class="prettyprint lang-sql">SELECT /*+ALL_ROWS*/ FIRST_NAME, LAST_NAME
    +  FROM T_AUTHOR</pre>
    +
    +  							<p>This can be done in jOOQ using the .hint() clause in your SELECT statement: </p>
    +<pre class="prettyprint lang-java">create.select(FIRST_NAME, LAST_NAME)
    +      .hint("/*+ALL_ROWS*/")
    +      .from(T_AUTHOR);</pre>
    +
    +							<p>Note that you can pass any string in the .hint() clause. If you use
    +								that clause, the passed string will always be put in between the
    +								SELECT [DISTINCT] keywords and the actual projection list </p>
    +						<br><table width="100%" border="0" cellspacing="0" cellpadding="0">
    +<tr>
    +<td valign="top" align="left"><a href="<?=$root?>/manual/">The jOOQ User Manual</a> : <a href="<?=$root?>/manual/ADVANCED/">Advanced topics</a> : <a href="<?=$root?>/manual/ADVANCED/OracleHints/">Adding Oracle hints to queries</a></td><td style="white-space: nowrap" valign="top" align="right"><a title="Previous section: Execute listeners and the jOOQ Console" href="<?=$root?>/manual/ADVANCED/ExecuteListener/">previous</a> : <a title="Next section: The Oracle CONNECT BY clause" href="<?=$root?>/manual/ADVANCED/CONNECTBY/">next</a></td>
    +</tr>
    +</table>
    +<?php 
    +}
    +?>
    +
    diff --git a/jOOQ-website/manual/ADVANCED/PIVOT/index.php b/jOOQ-website/manual/ADVANCED/PIVOT/index.php
    new file mode 100644
    index 00000000000..68d50092bf8
    --- /dev/null
    +++ b/jOOQ-website/manual/ADVANCED/PIVOT/index.php
    @@ -0,0 +1,52 @@
    +
    +<?php 
    +// The following content has been XSL transformed from manual.xml using html-pages.xsl
    +// Please do not edit this content manually
    +require '../../../frame.php';
    +function getH1() {
    +    return "The Oracle 11g PIVOT clause";
    +}
    +function getActiveMenu() {
    +	return "manual";
    +}
    +function getSlogan() {
    +	return "
    +				    	    Oracle 11g has formally introduced the very powerful PIVOT clause, which
    +				    	    allows to specify a pivot column, expected grouping values for pivoting,
    +				    	    as well as a set of aggregate functions
    +						";
    +}
    +function printContent() {
    +    global $root;
    +?>
    +<table width="100%" border="0" cellspacing="0" cellpadding="0">
    +<tr>
    +<td valign="top" align="left"><a href="<?=$root?>/manual/">The jOOQ User Manual</a> : <a href="<?=$root?>/manual/ADVANCED/">Advanced topics</a> : <a href="<?=$root?>/manual/ADVANCED/PIVOT/">The Oracle 11g PIVOT clause</a></td><td style="white-space: nowrap" valign="top" align="right"><a title="Previous section: The Oracle CONNECT BY clause" href="<?=$root?>/manual/ADVANCED/CONNECTBY/">previous</a> : <a title="Next section: jOOQ's relational division syntax" href="<?=$root?>/manual/ADVANCED/DIVISION/">next</a></td>
    +</tr>
    +</table>
    +							<h2>PIVOT (aggregate FOR column IN (columns))</h2>
    +							<p>If you are closely coupling your application to an Oracle database,
    +								you can take advantage of some Oracle-specific features, such as the
    +								PIVOT clause, used for statistical analyses. The formal syntax
    +								definition is as follows: </p>
    +<pre class="prettyprint lang-sql">-- SELECT ..
    +     FROM table PIVOT (aggregateFunction [, aggregateFunction] FOR column IN (expression [, expression]))
    +--  WHERE ..</pre>
    +
    +							<p>
    +								The PIVOT clause is available from the
    +								<a href="http://www.jooq.org/javadoc/latest/org/jooq/Table.html" title="Internal API reference: org.jooq.Table">org.jooq.Table</a>
    +								type, as pivoting is done directly on a table.
    +								Currently, only Oracle's PIVOT clause is supported. Support for SQL Server's
    +								PIVOT clause will be added later. Also, jOOQ may simulate PIVOT for other
    +								dialects in the future.
    +							</p>
    +						<br><table width="100%" border="0" cellspacing="0" cellpadding="0">
    +<tr>
    +<td valign="top" align="left"><a href="<?=$root?>/manual/">The jOOQ User Manual</a> : <a href="<?=$root?>/manual/ADVANCED/">Advanced topics</a> : <a href="<?=$root?>/manual/ADVANCED/PIVOT/">The Oracle 11g PIVOT clause</a></td><td style="white-space: nowrap" valign="top" align="right"><a title="Previous section: The Oracle CONNECT BY clause" href="<?=$root?>/manual/ADVANCED/CONNECTBY/">previous</a> : <a title="Next section: jOOQ's relational division syntax" href="<?=$root?>/manual/ADVANCED/DIVISION/">next</a></td>
    +</tr>
    +</table>
    +<?php 
    +}
    +?>
    +
    diff --git a/jOOQ-website/manual/ADVANCED/SchemaMapping/index.php b/jOOQ-website/manual/ADVANCED/SchemaMapping/index.php
    new file mode 100644
    index 00000000000..4cdd8ebdb42
    --- /dev/null
    +++ b/jOOQ-website/manual/ADVANCED/SchemaMapping/index.php
    @@ -0,0 +1,179 @@
    +
    +<?php 
    +// The following content has been XSL transformed from manual.xml using html-pages.xsl
    +// Please do not edit this content manually
    +require '../../../frame.php';
    +function getH1() {
    +    return "Mapping generated schemata and tables";
    +}
    +function getActiveMenu() {
    +	return "manual";
    +}
    +function getSlogan() {
    +	return "
    +							Sometimes, you cannot control productive schema names, because your
    +							application is deployed on a shared host, and you only get one schema
    +							to work with.
    +						";
    +}
    +function printContent() {
    +    global $root;
    +?>
    +<table width="100%" border="0" cellspacing="0" cellpadding="0">
    +<tr>
    +<td valign="top" align="left"><a href="<?=$root?>/manual/">The jOOQ User Manual</a> : <a href="<?=$root?>/manual/ADVANCED/">Advanced topics</a> : <a href="<?=$root?>/manual/ADVANCED/SchemaMapping/">Mapping generated schemata and tables</a></td><td style="white-space: nowrap" valign="top" align="right"><a title="Previous section: Custom data types and type conversion" href="<?=$root?>/manual/ADVANCED/CustomTypes/">previous</a> : <a title="Next section: Execute listeners and the jOOQ Console" href="<?=$root?>/manual/ADVANCED/ExecuteListener/">next</a></td>
    +</tr>
    +</table>
    +							<h2>Mapping your DEV schema to a productive environment</h2>
    +							<p>You may wish to design your database in a way that you have several
    +								instances of your schema. This is useful when you want to cleanly
    +								separate data belonging to several customers / organisation units /
    +								branches / users and put each of those entities' data in a separate
    +								database or schema. </p>
    +							<p>In our T_AUTHOR example this would mean that you provide a book
    +								reference database to several companies, such as My Book World and
    +								Books R Us. In that case, you'll probably have a schema setup like
    +								this: </p>
    +							<ul>
    +								
    +<li>DEV: Your development schema. This will be the schema that you
    +									base code generation upon, with jOOQ </li>
    +								
    +<li>MY_BOOK_WORLD: The schema instance for My Book World </li>
    +								
    +<li>BOOKS_R_US: The schema instance for Books R Us </li>
    +							
    +</ul>
    +
    +
    +							<h2>Mapping DEV to MY_BOOK_WORLD with jOOQ</h2>
    +							<p>When a user from My Book World logs in, you want them to access the
    +								MY_BOOK_WORLD schema using classes generated from DEV. This can be
    +								achieved with the
    +								<a href="http://www.jooq.org/javadoc/latest/org/jooq/conf/RenderMapping.html" title="Internal API reference: org.jooq.conf.RenderMapping">org.jooq.conf.RenderMapping</a>
    +								class, that you can equip your Factory's settings
    +								with. Take the following example: </p>
    +
    +<pre class="prettyprint lang-java">Settings settings = new Settings()
    +    .withRenderMapping(new RenderMapping()
    +    .withSchemata(
    +        new MappedSchema().withInput("DEV")
    +                          .withOutput("MY_BOOK_WORLD")));
    +
    +// Add the settings to the factory
    +Factory create = new Factory(connection, SQLDialect.ORACLE, settings);
    +
    +// Run queries with the "mapped" factory
    +create.selectFrom(T_AUTHOR).fetch();</pre>
    +
    +							<p>The query executed with a Factory equipped with the above mapping
    +								will in fact produce this SQL statement: </p>
    +							<pre class="prettyprint lang-sql">SELECT * FROM MY_BOOK_WORLD.T_AUTHOR</pre>
    +							<p>Even if T_AUTHOR was generated from DEV. </p>
    +
    +							<h2>Mapping several schemata</h2>
    +							<p>Your development database may not be restricted to hold only one DEV
    +								schema. You may also have a LOG schema and a MASTER schema. Let's say
    +								the MASTER schema is shared among all customers, but each customer has
    +								their own LOG schema instance. Then you can enhance your RenderMapping
    +								like this (e.g. using an XML configuration file): </p>
    +
    +<pre class="prettyprint lang-xml">&lt;settings xmlns="http://www.jooq.org/xsd/jooq-runtime-2.1.0.xsd"&gt;
    +  &lt;renderMapping&gt;
    +    &lt;schemata&gt;
    +      &lt;schema&gt;
    +        &lt;input&gt;DEV&lt;/input&gt;
    +        &lt;output&gt;MY_BOOK_WORLD&lt;/output&gt;
    +      &lt;/schema&gt;
    +      &lt;schema&gt;
    +        &lt;input&gt;LOG&lt;/input&gt;
    +        &lt;output&gt;MY_BOOK_WORLD_LOG&lt;/output&gt;
    +      &lt;/schema&gt;
    +    &lt;/schemata&gt;
    +  &lt;/renderMapping&gt;
    +&lt;/settings&gt;</pre>
    +
    +                            <p>Note, you can load the above XML file like this:</p>
    +
    +<pre class="prettyprint lang-java">Settings settings = JAXB.unmarshal(new File("jooq-runtime.xml"), Settings.class);</pre>
    +
    +							<p>This will map generated classes from DEV to MY_BOOK_WORLD, from LOG
    +								to MY_BOOK_WORLD_LOG, but leave the MASTER schema alone. Whenever you
    +								want to change your mapping configuration, you will have to create a
    +								new Factory</p>
    +
    +
    +							<h2>Using a default schema</h2>
    +							<p>Another option to switch schema names is to use a default schema for
    +								the Factory's underlying Connection. Many RDBMS support a USE or SET
    +								SCHEMA command, which you can call like this: </p>
    +
    +<pre class="prettyprint lang-java">// Set the default schema
    +Schema MY_BOOK_WORLD = ...
    +create.use(MY_BOOK_WORLD);
    +
    +// Run queries with factory having a default schema
    +create.selectFrom(T_AUTHOR).fetch();</pre>
    +							<p>Queries generated from the above Factory will produce this kind of SQL statement: </p>
    +
    +<pre class="prettyprint lang-sql">-- the schema name is omitted from all SQL constructs.
    +SELECT * FROM T_AUTHOR</pre>
    +
    +
    +							<h2>Mapping of tables</h2>
    +							<p>Not only schemata can be mapped, but also tables. If you are not the
    +								owner of the database your application connects to, you might need to
    +								install your schema with some sort of prefix to every table. In our
    +								examples, this might mean that you will have to map DEV.T_AUTHOR to
    +								something MY_BOOK_WORLD.MY_APP__T_AUTHOR, where MY_APP__ is a prefix
    +								applied to all of your tables. This can be achieved by creating the
    +								following mapping: </p>
    +
    +<pre class="prettyprint lang-java">Settings settings = new Settings()
    +    .withRenderMapping(new RenderMapping()
    +    .withSchemata(
    +        new MappedSchema().withInput("DEV")
    +                          .withOutput("MY_BOOK_WORLD")
    +                          .withTables(
    +         new MappedTable().withInput("T_AUTHOR")
    +                          .withOutput("MY_APP__T_AUTHOR"))));
    +
    +// Add the settings to the factory
    +Factory create = new Factory(connection, SQLDialect.ORACLE, settings);
    +
    +// Run queries with the "mapped" factory
    +create.selectFrom(T_AUTHOR).fetch();</pre>
    +
    +							<p>The query executed with a Factory equipped with the above mapping will in fact produce this SQL statement: </p>
    +<pre class="prettyprint lang-sql">SELECT * FROM MY_BOOK_WORLD.MY_APP__T_AUTHOR</pre>
    +
    +							<h2>Mapping at code generation time</h2>
    +							<p>
    +								Note that you can also hard-wire schema mapping in generated artefacts
    +								at code generation time, e.g. when you have 5 developers with their own
    +								dedicated developer databases, and a common integration database. In the
    +								code generation configuration, you would then write.
    +							</p>
    +<pre class="prettyprint lang-xml">&lt;schemata&gt;
    +  &lt;schema&gt;
    +    &lt;!-- Use this as the developer's schema: --&gt;
    +    &lt;inputSchema&gt;LUKAS_DEV_SCHEMA&lt;/inputSchema&gt;
    +
    +    &lt;!-- Use this as the integration / production database: --&gt;
    +    &lt;outputSchema&gt;PROD&lt;/outputSchema&gt;
    +  &lt;/schema&gt;
    +&lt;/schemata&gt;</pre>
    +							<p>
    +								See the manual's section about
    +								<a href="<?=$root?>/manual/META/" title="jOOQ Manual reference: Meta model code generation">jooq-codegen configuration</a>
    +								for more details
    +							</p>
    +						<br><table width="100%" border="0" cellspacing="0" cellpadding="0">
    +<tr>
    +<td valign="top" align="left"><a href="<?=$root?>/manual/">The jOOQ User Manual</a> : <a href="<?=$root?>/manual/ADVANCED/">Advanced topics</a> : <a href="<?=$root?>/manual/ADVANCED/SchemaMapping/">Mapping generated schemata and tables</a></td><td style="white-space: nowrap" valign="top" align="right"><a title="Previous section: Custom data types and type conversion" href="<?=$root?>/manual/ADVANCED/CustomTypes/">previous</a> : <a title="Next section: Execute listeners and the jOOQ Console" href="<?=$root?>/manual/ADVANCED/ExecuteListener/">next</a></td>
    +</tr>
    +</table>
    +<?php 
    +}
    +?>
    +
    diff --git a/jOOQ-website/manual/ADVANCED/index.php b/jOOQ-website/manual/ADVANCED/index.php
    new file mode 100644
    index 00000000000..43a400d19ba
    --- /dev/null
    +++ b/jOOQ-website/manual/ADVANCED/index.php
    @@ -0,0 +1,68 @@
    +
    +<?php 
    +// The following content has been XSL transformed from manual.xml using html-pages.xsl
    +// Please do not edit this content manually
    +require '../../frame.php';
    +function getH1() {
    +    return "Advanced topics";
    +}
    +function getActiveMenu() {
    +	return "manual";
    +}
    +function getSlogan() {
    +	return "In these sections you will learn about advanced concepts that
    +					you might not use every day";
    +}
    +function printContent() {
    +    global $root;
    +?>
    +<table width="100%" border="0" cellspacing="0" cellpadding="0">
    +<tr>
    +<td valign="top" align="left"><a href="<?=$root?>/manual/">The jOOQ User Manual</a> : <a href="<?=$root?>/manual/ADVANCED/">Advanced topics</a></td><td style="white-space: nowrap" valign="top" align="right"><a title="Previous section: When it's just easier: Plain SQL" href="<?=$root?>/manual/DSL/SQL/">previous</a> : <a title="Next section: Master data generation. Enumeration tables" href="<?=$root?>/manual/ADVANCED/MasterData/">next</a></td>
    +</tr>
    +</table>
    +					<h2>Overview</h2>
    +					<p>This section covers some advanced topics and features that don't fit into any other section. </p>
    +				<h3>Table of contents</h3><ol>
    +<li>
    +<a title="Master data generation. Enumeration tables" href="<?=$root?>/manual/ADVANCED/MasterData/">Master data generation. Enumeration tables</a>
    +</li>
    +<li>
    +<a title="Custom data types and type conversion" href="<?=$root?>/manual/ADVANCED/CustomTypes/">Custom data types and type conversion</a>
    +</li>
    +<li>
    +<a title="Mapping generated schemata and tables" href="<?=$root?>/manual/ADVANCED/SchemaMapping/">Mapping generated schemata and tables</a>
    +</li>
    +<li>
    +<a title="Execute listeners and the jOOQ Console" href="<?=$root?>/manual/ADVANCED/ExecuteListener/">Execute listeners and the jOOQ Console</a>
    +</li>
    +<li>
    +<a title="Adding Oracle hints to queries" href="<?=$root?>/manual/ADVANCED/OracleHints/">Adding Oracle hints to queries</a>
    +</li>
    +<li>
    +<a title="The Oracle CONNECT BY clause" href="<?=$root?>/manual/ADVANCED/CONNECTBY/">The Oracle CONNECT BY clause</a>
    +</li>
    +<li>
    +<a title="The Oracle 11g PIVOT clause" href="<?=$root?>/manual/ADVANCED/PIVOT/">The Oracle 11g PIVOT clause</a>
    +</li>
    +<li>
    +<a title="jOOQ's relational division syntax" href="<?=$root?>/manual/ADVANCED/DIVISION/">jOOQ's relational division syntax</a>
    +</li>
    +<li>
    +<a title="Exporting to XML, CSV, JSON, HTML, Text" href="<?=$root?>/manual/ADVANCED/Export/">Exporting to XML, CSV, JSON, HTML, Text</a>
    +</li>
    +<li>
    +<a title="Importing data from XML, CSV" href="<?=$root?>/manual/ADVANCED/Import/">Importing data from XML, CSV</a>
    +</li>
    +<li>
    +<a title="Using JDBC batch operations" href="<?=$root?>/manual/ADVANCED/Batch/">Using JDBC batch operations</a>
    +</li>
    +</ol><br><table width="100%" border="0" cellspacing="0" cellpadding="0">
    +<tr>
    +<td valign="top" align="left"><a href="<?=$root?>/manual/">The jOOQ User Manual</a> : <a href="<?=$root?>/manual/ADVANCED/">Advanced topics</a></td><td style="white-space: nowrap" valign="top" align="right"><a title="Previous section: When it's just easier: Plain SQL" href="<?=$root?>/manual/DSL/SQL/">previous</a> : <a title="Next section: Master data generation. Enumeration tables" href="<?=$root?>/manual/ADVANCED/MasterData/">next</a></td>
    +</tr>
    +</table>
    +<?php 
    +}
    +?>
    +
    diff --git a/jOOQ-website/manual/DSL/ALIAS/index.php b/jOOQ-website/manual/DSL/ALIAS/index.php
    new file mode 100644
    index 00000000000..f1f5766102f
    --- /dev/null
    +++ b/jOOQ-website/manual/DSL/ALIAS/index.php
    @@ -0,0 +1,108 @@
    +
    +<?php 
    +// The following content has been XSL transformed from manual.xml using html-pages.xsl
    +// Please do not edit this content manually
    +require '../../../frame.php';
    +function getH1() {
    +    return "Aliased tables and fields";
    +}
    +function getActiveMenu() {
    +	return "manual";
    +}
    +function getSlogan() {
    +	return "
    +							Aliasing is at the core of SQL and relational algebra. When you join
    +							the same entity multiple times, you can rename it to distinguish the
    +							various meanings of the same entity
    +						";
    +}
    +function printContent() {
    +    global $root;
    +?>
    +<table width="100%" border="0" cellspacing="0" cellpadding="0">
    +<tr>
    +<td valign="top" align="left"><a href="<?=$root?>/manual/">The jOOQ User Manual</a> : <a href="<?=$root?>/manual/DSL/">DSL or fluent API. Where SQL meets Java</a> : <a href="<?=$root?>/manual/DSL/ALIAS/">Aliased tables and fields</a></td><td style="white-space: nowrap" valign="top" align="right"><a title="Previous section: Conditions" href="<?=$root?>/manual/DSL/CONDITION/">previous</a> : <a title="Next section: Nested SELECT using the IN operator" href="<?=$root?>/manual/DSL/IN/">next</a></td>
    +</tr>
    +</table>
    +							<h2>Aliasing Tables</h2>
    +							<p>A typical example of what you might want to do in SQL is this: </p>
    +<pre class="prettyprint lang-sql">SELECT a.ID, b.ID
    +  FROM T_AUTHOR a
    +  JOIN T_BOOK b on a.ID = b.AUTHOR_ID</pre>
    +
    +  							<p>
    +  								In this example, we are aliasing Tables, calling them a and b.
    +  								The way aliasing works depends on how you generate your meta model
    +  								using jooq-codegen (see the manual's section about
    +  								<a href="<?=$root?>/manual/META/TABLE/" title="jOOQ Manual reference: Tables, views and their corresponding records">generating tables</a>). Things become
    +  								simpler when you choose the instance/dynamic model, instead of the
    +  								static one.
    +  								Here is how you can create Table aliases in jOOQ:
    +  							</p>
    +
    +<pre class="prettyprint lang-java">Table&lt;TBookRecord&gt; book = T_BOOK.as("b");
    +Table&lt;TAuthorRecord&gt; author = T_AUTHOR.as("a");
    +
    +// If you choose not to generate a static meta model, this becomes even better
    +TBook book = T_BOOK.as("b");
    +TAuthor author = T_AUTHOR.as("a");</pre>
    +
    +							<p>Now, if you want to reference any fields from those Tables, you may
    +								not use the original T_BOOK or T_AUTHOR meta-model objects anymore.
    +								Instead, you have to get the fields from the new book and author Table
    +								aliases: </p>
    +
    +<pre class="prettyprint lang-java">Field&lt;Integer&gt; bookID = book.getField(TBook.ID);
    +Field&lt;Integer&gt; authorID = author.getField(TAuthor.ID);
    +
    +// Or with the instance field model:
    +Field&lt;Integer&gt; bookID = book.ID;
    +Field&lt;Integer&gt; authorID = author.ID;</pre>
    +
    +							<p>
    +								So this is how the above SQL statement would read in jOOQ:
    +							</p>
    +<pre class="prettyprint lang-java">create.select(authorID, bookID)
    +      .from(author)
    +      .join(book).on(authorID.equal(book.getField(T_BOOK.AUTHOR_ID)));
    +
    +// Or with the instance field model:
    +create.select(author.ID, book.ID)
    +      .from(author)
    +      .join(book).on(author.ID.equal(book.AUTHOR_ID))</pre>
    +
    +
    +      						<h3>Aliasing nested selects as tables</h3>
    +							<p>There is an interesting, more advanced example of how you can select
    +								from an aliased nested select in the manual's section about
    +								<a href="<?=$root?>/manual/DSL/NESTED/" title="jOOQ Manual reference: Other types of nested SELECT">nested selects</a>
    +</p>
    +
    +
    +							<h2>Aliasing fields</h2>
    +							<p>Fields can also be aliased independently from Tables. Most often,
    +								this is done when using functions or aggregate operators. Here is an
    +								example: </p>
    +<pre class="prettyprint lang-sql">  SELECT FIRST_NAME || ' ' || LAST_NAME author, COUNT(*) books
    +    FROM T_AUTHOR
    +    JOIN T_BOOK ON T_AUTHOR.ID = AUTHOR_ID
    +GROUP BY FIRST_NAME, LAST_NAME;</pre>
    +							<p>Here is how it's done with jOOQ: </p>
    +<pre class="prettyprint lang-java">Record record = create.select(
    +         concat(T_AUTHOR.FIRST_NAME, " ", T_AUTHOR.LAST_NAME).as("author"),
    +         count().as("books"))
    +      .from(T_AUTHOR)
    +      .join(T_BOOK).on(T_AUTHOR.ID.equal(T_BOOK.AUTHOR_ID))
    +      .groupBy(T_AUTHOR.FIRST_NAME, T_AUTHOR.LAST_NAME).fetchAny();</pre>
    +      						<p>When you alias Fields like above, you can access those Fields' values using the alias name: </p>
    +<pre class="prettyprint lang-java">System.out.println("Author : " + record.getValue("author"));
    +System.out.println("Books  : " + record.getValue("books"));</pre>
    +						<br><table width="100%" border="0" cellspacing="0" cellpadding="0">
    +<tr>
    +<td valign="top" align="left"><a href="<?=$root?>/manual/">The jOOQ User Manual</a> : <a href="<?=$root?>/manual/DSL/">DSL or fluent API. Where SQL meets Java</a> : <a href="<?=$root?>/manual/DSL/ALIAS/">Aliased tables and fields</a></td><td style="white-space: nowrap" valign="top" align="right"><a title="Previous section: Conditions" href="<?=$root?>/manual/DSL/CONDITION/">previous</a> : <a title="Next section: Nested SELECT using the IN operator" href="<?=$root?>/manual/DSL/IN/">next</a></td>
    +</tr>
    +</table>
    +<?php 
    +}
    +?>
    +
    diff --git a/jOOQ-website/manual/DSL/ARITHMETIC/index.php b/jOOQ-website/manual/DSL/ARITHMETIC/index.php
    new file mode 100644
    index 00000000000..54631a981dd
    --- /dev/null
    +++ b/jOOQ-website/manual/DSL/ARITHMETIC/index.php
    @@ -0,0 +1,80 @@
    +
    +<?php 
    +// The following content has been XSL transformed from manual.xml using html-pages.xsl
    +// Please do not edit this content manually
    +require '../../../frame.php';
    +function getH1() {
    +    return "Arithmetic operations and concatenation";
    +}
    +function getActiveMenu() {
    +	return "manual";
    +}
    +function getSlogan() {
    +	return "
    +							Your database can do the math for you. Most arithmetic operations are
    +							supported, but also string concatenation can be very efficient if done
    +							already in the database.
    +						";
    +}
    +function printContent() {
    +    global $root;
    +?>
    +<table width="100%" border="0" cellspacing="0" cellpadding="0">
    +<tr>
    +<td valign="top" align="left"><a href="<?=$root?>/manual/">The jOOQ User Manual</a> : <a href="<?=$root?>/manual/DSL/">DSL or fluent API. Where SQL meets Java</a> : <a href="<?=$root?>/manual/DSL/ARITHMETIC/">Arithmetic operations and concatenation</a></td><td style="white-space: nowrap" valign="top" align="right"><a title="Previous section: Stored procedures and functions" href="<?=$root?>/manual/DSL/PROCEDURES/">previous</a> : <a title="Next section: The CASE clause" href="<?=$root?>/manual/DSL/CASE/">next</a></td>
    +</tr>
    +</table>
    +							<h2>Mathematical operations</h2>
    +							<p>Arithmetic operations are implemented just like
    +								<a href="<?=$root?>/manual/DSL/FUNCTIONS/" title="jOOQ Manual reference: Functions and aggregate operators">functions</a>, with
    +								similar limitations as far as type restrictions are concerned. You can
    +								use any of these operators: </p>
    +
    +							<pre class="prettyprint">  +  -  *  /  %</pre>
    +
    +							<p>In order to express a SQL query like this one: </p>
    +							<pre class="prettyprint lang-sql">SELECT ((1 + 2) * (5 - 3) / 2) % 10 FROM DUAL</pre>
    +							<p>You can write something like this in jOOQ: </p>
    +							<pre class="prettyprint lang-java">create.select(create.val(1).add(2).mul(create.val(5).sub(3)).div(2).mod(10));	</pre>
    +
    +							<h2>Datetime arithmetic</h2>
    +							<p>jOOQ also supports the Oracle-style syntax for adding days to a Field&lt;? extends java.util.Date&gt; </p>
    +							<table cellspacing="0" cellpadding="0" width="100%">
    +<tr>
    +<td class="left" width="50%">
    +<pre class="prettyprint lang-sql">SELECT SYSDATE + 3 FROM DUAL;</pre>
    +</td><td class="right" width="50%">
    +<pre class="prettyprint lang-java">create.select(create.currentTimestamp().add(3));</pre>
    +</td>
    +</tr>
    +</table>
    +
    +							<h2>String concatenation</h2>
    +							<p>This is not really an arithmetic expression, but it's still an
    +								expression with operators: The string concatenation. jOOQ
    +								provides you with the Field's concat() method:</p>
    +							<table cellspacing="0" cellpadding="0" width="100%">
    +<tr>
    +<td class="left" width="50%">
    +<pre class="prettyprint lang-sql">SELECT 'A' || 'B' || 'C' FROM DUAL
    +
    +-- Or in MySQL:
    +SELECT concat('A', 'B', 'C')</pre>
    +</td><td class="right" width="50%">
    +<pre class="prettyprint lang-java">&nbsp;
    +// For all RDBMS, including MySQL:
    +create.select(concat("A", "B", "C"));
    +
    +</pre>
    +</td>
    +</tr>
    +</table>
    +						<br><table width="100%" border="0" cellspacing="0" cellpadding="0">
    +<tr>
    +<td valign="top" align="left"><a href="<?=$root?>/manual/">The jOOQ User Manual</a> : <a href="<?=$root?>/manual/DSL/">DSL or fluent API. Where SQL meets Java</a> : <a href="<?=$root?>/manual/DSL/ARITHMETIC/">Arithmetic operations and concatenation</a></td><td style="white-space: nowrap" valign="top" align="right"><a title="Previous section: Stored procedures and functions" href="<?=$root?>/manual/DSL/PROCEDURES/">previous</a> : <a title="Next section: The CASE clause" href="<?=$root?>/manual/DSL/CASE/">next</a></td>
    +</tr>
    +</table>
    +<?php 
    +}
    +?>
    +
    diff --git a/jOOQ-website/manual/DSL/CASE/index.php b/jOOQ-website/manual/DSL/CASE/index.php
    new file mode 100644
    index 00000000000..786f74bbc96
    --- /dev/null
    +++ b/jOOQ-website/manual/DSL/CASE/index.php
    @@ -0,0 +1,104 @@
    +
    +<?php 
    +// The following content has been XSL transformed from manual.xml using html-pages.xsl
    +// Please do not edit this content manually
    +require '../../../frame.php';
    +function getH1() {
    +    return "The CASE clause";
    +}
    +function getActiveMenu() {
    +	return "manual";
    +}
    +function getSlogan() {
    +	return "
    +							The SQL standard supports a CASE clause, which works very similar to
    +							Java's if-else statement. In complex SQL, this is very useful for value
    +							mapping
    +						";
    +}
    +function printContent() {
    +    global $root;
    +?>
    +<table width="100%" border="0" cellspacing="0" cellpadding="0">
    +<tr>
    +<td valign="top" align="left"><a href="<?=$root?>/manual/">The jOOQ User Manual</a> : <a href="<?=$root?>/manual/DSL/">DSL or fluent API. Where SQL meets Java</a> : <a href="<?=$root?>/manual/DSL/CASE/">The CASE clause</a></td><td style="white-space: nowrap" valign="top" align="right"><a title="Previous section: Arithmetic operations and concatenation" href="<?=$root?>/manual/DSL/ARITHMETIC/">previous</a> : <a title="Next section: Type casting" href="<?=$root?>/manual/DSL/CAST/">next</a></td>
    +</tr>
    +</table>
    +							<h2>The two flavours of CASE</h2>
    +							<p>The CASE clause is part of the standard SQL syntax. While some RDBMS
    +								also offer an IF clause, or a DECODE function, you can always rely on
    +								the two types of CASE syntax: </p>
    +
    +							<table cellspacing="0" cellpadding="0" width="100%">
    +<tr>
    +<td class="left" width="50%">
    +<pre class="prettyprint lang-sql">CASE WHEN T_AUTHOR.FIRST_NAME = 'Paulo'  THEN 'brazilian'
    +     WHEN T_AUTHOR.FIRST_NAME = 'George' THEN 'english'
    +                                         ELSE 'unknown'
    +END
    +
    +-- OR:
    +
    +CASE T_AUTHOR.FIRST_NAME WHEN 'Paulo'  THEN 'brazilian'
    +                         WHEN 'George' THEN 'english'
    +                                       ELSE 'unknown'
    +END </pre>
    +</td><td class="right" width="50%">
    +<pre class="prettyprint lang-java">create.decode()
    +      .when(T_AUTHOR.FIRST_NAME.equal("Paulo"), "brazilian")
    +      .when(T_AUTHOR.FIRST_NAME.equal("George"), "english")
    +      .otherwise("unknown");
    +
    +// OR:
    +
    +create.decode().value(T_AUTHOR.FIRST_NAME)
    +               .when("Paulo", "brazilian")
    +               .when("George", "english")
    +               .otherwise("unknown");</pre>
    +</td>
    +</tr>
    +</table>
    +
    +							<p>
    +								In jOOQ, both syntaxes are supported (although, Derby only knows the
    +								first one, which is more general). Unfortunately, both case and else
    +								are reserved words in Java. jOOQ chose to use decode() from the Oracle
    +								DECODE function, and otherwise(), which means the same as else. Please
    +								note that in the above examples, all values were always constants. You
    +								can of course also use Field instead of the various constants.
    +							</p>
    +							<p>A CASE clause can be used anywhere where you can place a Field. For
    +								instance, you can SELECT the above expression, if you're selecting
    +								from T_AUTHOR: </p>
    +<pre class="prettyprint lang-sql">SELECT T_AUTHOR.FIRST_NAME, [... CASE EXPR ...] AS nationality
    +  FROM T_AUTHOR</pre>
    +
    +
    +  							<h2>CASE clauses in an ORDER BY clause</h2>
    +							<p>Sort indirection is often implemented with a CASE clause of a
    +								SELECT's ORDER BY clause. In SQL, this reads: </p>
    +
    +<pre class="prettyprint lang-sql">SELECT *
    +FROM T_AUTHOR
    +ORDER BY CASE FIRST_NAME WHEN 'Paulo'  THEN 1
    +                         WHEN 'George' THEN 2
    +                                       ELSE null
    +         END</pre>
    +
    +							<p>This will order your authors such that all 'Paulo' come first, then
    +								all 'George' and everyone else last (depending on your RDBMS' handling
    +								of NULL values in sorting). This is a very common task, such that jOOQ
    +								simplifies its use: </p>
    +<pre class="prettyprint lang-java">create.select()
    +      .from(T_AUTHOR)
    +      .orderBy(T_AUTHOR.FIRST_NAME.sortAsc("Paulo", "George"))
    +      .execute();</pre>
    +						<br><table width="100%" border="0" cellspacing="0" cellpadding="0">
    +<tr>
    +<td valign="top" align="left"><a href="<?=$root?>/manual/">The jOOQ User Manual</a> : <a href="<?=$root?>/manual/DSL/">DSL or fluent API. Where SQL meets Java</a> : <a href="<?=$root?>/manual/DSL/CASE/">The CASE clause</a></td><td style="white-space: nowrap" valign="top" align="right"><a title="Previous section: Arithmetic operations and concatenation" href="<?=$root?>/manual/DSL/ARITHMETIC/">previous</a> : <a title="Next section: Type casting" href="<?=$root?>/manual/DSL/CAST/">next</a></td>
    +</tr>
    +</table>
    +<?php 
    +}
    +?>
    +
    diff --git a/jOOQ-website/manual/DSL/CAST/index.php b/jOOQ-website/manual/DSL/CAST/index.php
    new file mode 100644
    index 00000000000..965495cd859
    --- /dev/null
    +++ b/jOOQ-website/manual/DSL/CAST/index.php
    @@ -0,0 +1,71 @@
    +
    +<?php 
    +// The following content has been XSL transformed from manual.xml using html-pages.xsl
    +// Please do not edit this content manually
    +require '../../../frame.php';
    +function getH1() {
    +    return "Type casting";
    +}
    +function getActiveMenu() {
    +	return "manual";
    +}
    +function getSlogan() {
    +	return "
    +							Many RDBMS allow for implicit or explicit conversion between types.
    +							Apart from true type conversion, this is most often done with casting.
    +						";
    +}
    +function printContent() {
    +    global $root;
    +?>
    +<table width="100%" border="0" cellspacing="0" cellpadding="0">
    +<tr>
    +<td valign="top" align="left"><a href="<?=$root?>/manual/">The jOOQ User Manual</a> : <a href="<?=$root?>/manual/DSL/">DSL or fluent API. Where SQL meets Java</a> : <a href="<?=$root?>/manual/DSL/CAST/">Type casting</a></td><td style="white-space: nowrap" valign="top" align="right"><a title="Previous section: The CASE clause" href="<?=$root?>/manual/DSL/CASE/">previous</a> : <a title="Next section: When it's just easier: Plain SQL" href="<?=$root?>/manual/DSL/SQL/">next</a></td>
    +</tr>
    +</table>
    +							<h2>Enforcing a specific type when you need it</h2>
    +							<p>jOOQ's source code generator tries to find the most accurate type
    +								mapping between your vendor-specific data types and a matching Java
    +								type. For instance, most VARCHAR, CHAR, CLOB types will map to String.
    +								Most BINARY, BYTEA, BLOB types will map to byte[]. NUMERIC types will
    +								default to java.math.BigDecimal, but can also be any of
    +								java.math.BigInteger, Long, Integer, Short, Byte, Double, Float. </p>
    +							<p>Sometimes, this automatic mapping might not be what you needed, or
    +								jOOQ cannot know the type of a field (because you created it from a
    +								<a href="<?=$root?>/manual/DSL/NESTED/" title="jOOQ Manual reference: Other types of nested SELECT">nested select</a>).
    +								In those cases you would write SQL type CASTs like
    +								this: </p>
    +<pre class="prettyprint lang-sql">-- Let's say, your Postgres column LAST_NAME was VARCHAR(30)
    +-- Then you could do this:
    +SELECT CAST(T_AUTHOR.LAST_NAME AS TEXT) FROM DUAL</pre>
    +							<p>in jOOQ, you can write something like that: </p>
    +							<pre class="prettyprint lang-java">create.select(TAuthor.LAST_NAME.cast(PostgresDataType.TEXT));</pre>
    +							<p>The same thing can be achieved by casting a Field directly to
    +								String.class, as TEXT is the default data type in Postgres to map to
    +								Java's String</p>
    +							<pre class="prettyprint lang-java">create.select(TAuthor.LAST_NAME.cast(String.class));</pre>
    +							<p>The complete CAST API in Field consists of these three methods: </p>
    +<pre class="prettyprint lang-java">public interface Field&lt;T&gt; {
    +    &lt;Z&gt; Field&lt;Z&gt; cast(Field&lt;Z&gt; field);
    +    &lt;Z&gt; Field&lt;Z&gt; cast(DataType&lt;Z&gt; type);
    +    &lt;Z&gt; Field&lt;Z&gt; cast(Class&lt;? extends Z&gt; type);
    +}
    +
    +// And additional convenience methods in the Factory:
    +public class Factory {
    +    &lt;T&gt; Field&lt;T&gt; cast(Object object, Field&lt;T&gt; field);
    +    &lt;T&gt; Field&lt;T&gt; cast(Object object, DataType&lt;T&gt; type);
    +    &lt;T&gt; Field&lt;T&gt; cast(Object object, Class&lt;? extends T&gt; type);
    +    &lt;T&gt; Field&lt;T&gt; castNull(Field&lt;T&gt; field);
    +    &lt;T&gt; Field&lt;T&gt; castNull(DataType&lt;T&gt; type);
    +    &lt;T&gt; Field&lt;T&gt; castNull(Class&lt;? extends T&gt; type);
    +}</pre>
    +						<br><table width="100%" border="0" cellspacing="0" cellpadding="0">
    +<tr>
    +<td valign="top" align="left"><a href="<?=$root?>/manual/">The jOOQ User Manual</a> : <a href="<?=$root?>/manual/DSL/">DSL or fluent API. Where SQL meets Java</a> : <a href="<?=$root?>/manual/DSL/CAST/">Type casting</a></td><td style="white-space: nowrap" valign="top" align="right"><a title="Previous section: The CASE clause" href="<?=$root?>/manual/DSL/CASE/">previous</a> : <a title="Next section: When it's just easier: Plain SQL" href="<?=$root?>/manual/DSL/SQL/">next</a></td>
    +</tr>
    +</table>
    +<?php 
    +}
    +?>
    +
    diff --git a/jOOQ-website/manual/DSL/CONDITION/index.php b/jOOQ-website/manual/DSL/CONDITION/index.php
    new file mode 100644
    index 00000000000..291ddda7cfe
    --- /dev/null
    +++ b/jOOQ-website/manual/DSL/CONDITION/index.php
    @@ -0,0 +1,127 @@
    +
    +<?php 
    +// The following content has been XSL transformed from manual.xml using html-pages.xsl
    +// Please do not edit this content manually
    +require '../../../frame.php';
    +function getH1() {
    +    return "Conditions";
    +}
    +function getActiveMenu() {
    +	return "manual";
    +}
    +function getSlogan() {
    +	return "
    +							The creation of conditions is the part of any database abstraction that
    +							attracts the most attention.
    +						";
    +}
    +function printContent() {
    +    global $root;
    +?>
    +<table width="100%" border="0" cellspacing="0" cellpadding="0">
    +<tr>
    +<td valign="top" align="left"><a href="<?=$root?>/manual/">The jOOQ User Manual</a> : <a href="<?=$root?>/manual/DSL/">DSL or fluent API. Where SQL meets Java</a> : <a href="<?=$root?>/manual/DSL/CONDITION/">Conditions</a></td><td style="white-space: nowrap" valign="top" align="right"><a title="Previous section: Table sources" href="<?=$root?>/manual/DSL/TABLESOURCE/">previous</a> : <a title="Next section: Aliased tables and fields" href="<?=$root?>/manual/DSL/ALIAS/">next</a></td>
    +</tr>
    +</table>
    +							<h2>Conditions are the SELECT's core business</h2>
    +							<p>In your average application, you will typically have 3-4 SQL queries
    +								that have quite a long list of predicates (and possibly JOINs), such
    +								that you start to lose track over the overall boolean expression that
    +								you're trying to apply.</p>
    +							<p>In jOOQ, most Conditions can be created and combined almost as
    +								easily as in SQL itself. The two main participants for creating
    +								Conditions are the <a href="http://www.jooq.org/javadoc/latest/org/jooq/Field.html" title="Internal API reference: org.jooq.Field">Field</a>,
    +								which is typically a participant of a
    +								condition, and the <a href="http://www.jooq.org/javadoc/latest/org/jooq/Condition.html" title="Internal API reference: org.jooq.Condition">Condition</a>
    +								itself: </p>
    +<pre class="prettyprint lang-java">public interface Condition {
    +    Condition and(Condition other);
    +    Condition and(String sql);
    +    Condition and(String sql, Object... bindings);
    +    Condition andNot(Condition other);
    +    Condition andExists(Select&lt;?&gt; select);
    +    Condition andNotExists(Select&lt;?&gt; select);
    +    Condition or(Condition other);
    +    Condition or(String sql);
    +    Condition or(String sql, Object... bindings);
    +    Condition orNot(Condition other);
    +    Condition orExists(Select&lt;?&gt; select);
    +    Condition orNotExists(Select&lt;?&gt; select);
    +    Condition not();
    +}</pre>
    +
    +							<p>The above example describes the essence of boolean logic in jOOQ. As
    +								soon as you have a Condition object, you can connect that to other
    +								Conditions, which will then give you a combined condition with exactly
    +								the same properties. There are also convenience methods to create an
    +								EXISTS clause and connect it to an existing condition. In order to
    +								create a new Condition you are going to depart from a Field in most
    +								cases. Here are some important API elements in the Field interface:
    +							</p>
    +
    +<pre class="prettyprint lang-java">public interface Field&lt;T&gt; {
    +    Condition isNull();
    +    Condition isNotNull();
    +    Condition like(T value);
    +    Condition notLike(T value);
    +    Condition in(T... values);
    +    Condition in(Select&lt;?&gt; query);
    +    Condition notIn(Collection&lt;T&gt; values);
    +    Condition notIn(T... values);
    +    Condition notIn(Select&lt;?&gt; query);
    +    Condition in(Collection&lt;T&gt; values);
    +    Condition between(T minValue, T maxValue);
    +    Condition contains(T value);
    +    Condition contains(Field&lt;T&gt; value);
    +    Condition equal(T value);
    +    Condition equal(Field&lt;T&gt; field);
    +    Condition equal(Select&lt;?&gt; query);
    +    Condition equalAny(Select&lt;?&gt; query);
    +    Condition equalAny(T... array);
    +    Condition equalAny(Field&lt;T[]&gt; array);
    +    Condition equalAll(Select&lt;?&gt; query);
    +    Condition equalAll(T... array);
    +    Condition equalAll(Field&lt;T[]&gt; array);
    +    Condition equalIgnoreCase(String value);
    +    Condition equalIgnoreCase(Field&lt;String&gt; value);
    +    Condition notEqual(T value);
    +    Condition notEqual(Field&lt;T&gt; field);
    +    Condition notEqual(Select&lt;?&gt; query);
    +    Condition notEqualAny(Select&lt;?&gt; query);
    +    Condition notEqualAny(T... array);
    +    Condition notEqualAny(Field&lt;T[]&gt; array);
    +    Condition notEqualAll(Select&lt;?&gt; query);
    +    Condition notEqualAll(T... array);
    +    Condition notEqualAll(Field&lt;T[]&gt; array);
    +
    +    // Subselects, ANY and ALL quantifiers are also supported for these:
    +    Condition lessThan(T value);
    +    Condition lessOrEqual(T value);
    +    Condition greaterThan(T value);
    +    Condition greaterOrEqual(T value);
    +}</pre>
    +
    +							<p>As you see in the partially displayed API above, you can compare a
    +								Field either with other Fields, with constant values (which is a
    +								shortcut for calling Factory.val(T value)), or with a nested SELECT
    +								statement. See some more
    +								<a href="<?=$root?>/manual/DSL/NESTED/" title="jOOQ Manual reference: Other types of nested SELECT">Examples of nested SELECTs</a>. </p>
    +							<p>Combining the API of Field and Condition you can express complex predicates like this: </p>
    +
    +<pre class="prettyprint lang-sql">(T_BOOK.TYPE_CODE IN (1, 2, 5, 8, 13, 21)       AND T_BOOK.LANGUAGE = 'DE') OR
    +(T_BOOK.TYPE_CODE IN (2, 3, 5, 7, 11, 13)       AND T_BOOK.LANGUAGE = 'FR') OR
    +(T_BOOK.TYPE_CODE IN (SELECT CODE FROM T_TYPES) AND T_BOOK.LANGUAGE = 'EN')</pre>
    +
    +							<p>Just write: </p>
    +<pre class="prettyprint lang-java">T_BOOK.TYPE_CODE.in(1, 2, 5, 8, 13, 21)                       .and(T_BOOK.LANGUAGE.equal("DE")).or(
    +T_BOOK.TYPE_CODE.in(2, 3, 5, 7, 11, 13)                       .and(T_BOOK.LANGUAGE.equal("FR")).or(
    +T_BOOK.TYPE_CODE.in(create.select(T_TYPES.CODE).from(T_TYPES)).and(T_BOOK.LANGUAGE.equal("EN"))));</pre>
    +						<br><table width="100%" border="0" cellspacing="0" cellpadding="0">
    +<tr>
    +<td valign="top" align="left"><a href="<?=$root?>/manual/">The jOOQ User Manual</a> : <a href="<?=$root?>/manual/DSL/">DSL or fluent API. Where SQL meets Java</a> : <a href="<?=$root?>/manual/DSL/CONDITION/">Conditions</a></td><td style="white-space: nowrap" valign="top" align="right"><a title="Previous section: Table sources" href="<?=$root?>/manual/DSL/TABLESOURCE/">previous</a> : <a title="Next section: Aliased tables and fields" href="<?=$root?>/manual/DSL/ALIAS/">next</a></td>
    +</tr>
    +</table>
    +<?php 
    +}
    +?>
    +
    diff --git a/jOOQ-website/manual/DSL/EXISTS/index.php b/jOOQ-website/manual/DSL/EXISTS/index.php
    new file mode 100644
    index 00000000000..94e4872b3b3
    --- /dev/null
    +++ b/jOOQ-website/manual/DSL/EXISTS/index.php
    @@ -0,0 +1,94 @@
    +
    +<?php 
    +// The following content has been XSL transformed from manual.xml using html-pages.xsl
    +// Please do not edit this content manually
    +require '../../../frame.php';
    +function getH1() {
    +    return "Nested SELECT using the EXISTS operator";
    +}
    +function getActiveMenu() {
    +	return "manual";
    +}
    +function getSlogan() {
    +	return "The EXISTS operator is a bit different from all other SQL
    +							elements, as it cannot really be applied to any object in a DSL.
    +						";
    +}
    +function printContent() {
    +    global $root;
    +?>
    +<table width="100%" border="0" cellspacing="0" cellpadding="0">
    +<tr>
    +<td valign="top" align="left"><a href="<?=$root?>/manual/">The jOOQ User Manual</a> : <a href="<?=$root?>/manual/DSL/">DSL or fluent API. Where SQL meets Java</a> : <a href="<?=$root?>/manual/DSL/EXISTS/">Nested SELECT using the EXISTS operator</a></td><td style="white-space: nowrap" valign="top" align="right"><a title="Previous section: Nested SELECT using the IN operator" href="<?=$root?>/manual/DSL/IN/">previous</a> : <a title="Next section: Other types of nested SELECT" href="<?=$root?>/manual/DSL/NESTED/">next</a></td>
    +</tr>
    +</table>
    +							<h2>The EXISTS operator for use in semi-joins or anti-joins</h2>
    +							<p>The EXISTS operator is rather independent and can stand any place
    +								where there may be a new condition: </p>
    +							<ul>
    +								
    +<li>It may be placed right after a WHERE keyword </li>
    +								
    +<li>It may be the right-hand-side of a boolean operator</li>
    +								
    +<li>It may be placed right after a ON or HAVING keyword (although, this is less likely to be done...) </li>
    +							
    +</ul>
    +
    +							<p>This is reflected by the fact that an EXISTS clause is usually
    +								created directly from the Factory: </p>
    +
    +<pre class="prettyprint lang-java">Condition exists(Select&lt;?&gt; query);
    +Condition notExists(Select&lt;?&gt; query);</pre>
    +
    +							<p>When you create such a Condition, it can then be connected to any
    +								other condition using AND, OR operators (see also the manual's section
    +								on
    +								<a href="<?=$root?>/manual/DSL/CONDITION/" title="jOOQ Manual reference: Conditions">Conditions</a>). There are also quite a few
    +								convenience methods, where they might be useful. For instance in the
    +								<a href="http://www.jooq.org/javadoc/latest/org/jooq/Condition.html" title="Internal API reference: org.jooq.Condition">org.jooq.Condition</a> itself: </p>
    +
    +<pre class="prettyprint lang-java">Condition andExists(Select&lt;?&gt; select);
    +Condition andNotExists(Select&lt;?&gt; select);
    +Condition orExists(Select&lt;?&gt; select);
    +Condition orNotExists(Select&lt;?&gt; select);</pre>
    +
    +							<p>Or in the <a href="http://www.jooq.org/javadoc/latest/org/jooq/SelectWhereStep.html" title="Internal API reference: org.jooq.SelectWhereStep">org.jooq.SelectWhereStep</a>:</p>
    +
    +<pre class="prettyprint lang-java">SelectConditionStep whereExists(Select&lt;?&gt; select);
    +SelectConditionStep whereNotExists(Select&lt;?&gt; select);</pre>
    +
    +							<p>Or in the <a href="http://www.jooq.org/javadoc/latest/org/jooq/SelectConditionStep.html" title="Internal API reference: org.jooq.SelectConditionStep">org.jooq.SelectConditionStep</a>: </p>
    +
    +<pre class="prettyprint lang-java">SelectConditionStep andExists(Select&lt;?&gt; select);
    +SelectConditionStep andNotExists(Select&lt;?&gt; select);
    +SelectConditionStep orExists(Select&lt;?&gt; select);
    +SelectConditionStep orNotExists(Select&lt;?&gt; select);</pre>
    +
    +							<p>An example of how to use it is quickly given. Get all authors that haven't written any books: </p>
    +							<table cellspacing="0" cellpadding="0" width="100%">
    +<tr>
    +<td class="left" width="50%">
    +<pre class="prettyprint lang-sql">SELECT *
    +  FROM T_AUTHOR
    + WHERE NOT EXISTS (SELECT 1
    +                     FROM T_BOOK
    +                    WHERE T_BOOK.AUTHOR_ID = T_AUTHOR.ID)</pre>
    +</td><td class="right" width="50%">
    +<pre class="prettyprint lang-java">create.select()
    +      .from(T_AUTHOR)
    +      .whereNotExists(create.selectOne()
    +            .from(T_BOOK)
    +            .where(T_BOOK.AUTHOR_ID.equal(T_AUTHOR.ID)));</pre>
    +</td>
    +</tr>
    +</table>
    +						<br><table width="100%" border="0" cellspacing="0" cellpadding="0">
    +<tr>
    +<td valign="top" align="left"><a href="<?=$root?>/manual/">The jOOQ User Manual</a> : <a href="<?=$root?>/manual/DSL/">DSL or fluent API. Where SQL meets Java</a> : <a href="<?=$root?>/manual/DSL/EXISTS/">Nested SELECT using the EXISTS operator</a></td><td style="white-space: nowrap" valign="top" align="right"><a title="Previous section: Nested SELECT using the IN operator" href="<?=$root?>/manual/DSL/IN/">previous</a> : <a title="Next section: Other types of nested SELECT" href="<?=$root?>/manual/DSL/NESTED/">next</a></td>
    +</tr>
    +</table>
    +<?php 
    +}
    +?>
    +
    diff --git a/jOOQ-website/manual/DSL/FUNCTIONS/index.php b/jOOQ-website/manual/DSL/FUNCTIONS/index.php
    new file mode 100644
    index 00000000000..e1b4fe7a251
    --- /dev/null
    +++ b/jOOQ-website/manual/DSL/FUNCTIONS/index.php
    @@ -0,0 +1,157 @@
    +
    +<?php 
    +// The following content has been XSL transformed from manual.xml using html-pages.xsl
    +// Please do not edit this content manually
    +require '../../../frame.php';
    +function getH1() {
    +    return "Functions and aggregate operators";
    +}
    +function getActiveMenu() {
    +	return "manual";
    +}
    +function getSlogan() {
    +	return "
    +							Highly effective SQL cannot do without functions. Operations on
    +							VARCHAR, DATE, and NUMERIC types in GROUP BY or ORDER BY clauses allow
    +							for very elegant queries.
    +						";
    +}
    +function printContent() {
    +    global $root;
    +?>
    +<table width="100%" border="0" cellspacing="0" cellpadding="0">
    +<tr>
    +<td valign="top" align="left"><a href="<?=$root?>/manual/">The jOOQ User Manual</a> : <a href="<?=$root?>/manual/DSL/">DSL or fluent API. Where SQL meets Java</a> : <a href="<?=$root?>/manual/DSL/FUNCTIONS/">Functions and aggregate operators</a></td><td style="white-space: nowrap" valign="top" align="right"><a title="Previous section: UNION and other set operations" href="<?=$root?>/manual/DSL/UNION/">previous</a> : <a title="Next section: Stored procedures and functions" href="<?=$root?>/manual/DSL/PROCEDURES/">next</a></td>
    +</tr>
    +</table>
    +							<h2>jOOQ's strategy for supporting vendor-specific functions</h2>
    +							<p>jOOQ allows you to access native functions from your RDBMS. jOOQ
    +								follows two strategies: </p>
    +							<ul>
    +								
    +<li>Implement all SQL-92, SQL:1999, SQL:2003, and SQL:2008 standard
    +									functions, aggregate operators, and window functions. Standard
    +									functions could be
    +									<a href="http://oreilly.com/catalog/sqlnut/chapter/ch04.html" title="O'Reilly listing of SQL-92 standard functions and deviations thereof">these functions as listed by O'Reilly</a>. </li>
    +								
    +<li>Take the most useful of vendor-specific functions and simulate
    +									them for other RDBMS, where they may not be supported. An example for
    +									this are
    +									<a href="http://psoug.org/reference/analytic_functions.html" title="An example listing of Oracle Analytic Functions">Oracle Analytic Functions</a>
    +</li>
    +							
    +</ul>
    +
    +							<h2>Functions </h2>
    +							<p>These are just a few functions in the Factory, so you get the idea: </p>
    +
    +<pre class="prettyprint lang-java">Field&lt;String&gt; rpad(Field&lt;String&gt; field, Field&lt;? extends Number&gt; length);
    +Field&lt;String&gt; rpad(Field&lt;String&gt; field, int length);
    +Field&lt;String&gt; rpad(Field&lt;String&gt; field, Field&lt;? extends Number&gt; length, Field&lt;String&gt; c);
    +Field&lt;String&gt; rpad(Field&lt;String&gt; field, int length, char c);
    +Field&lt;String&gt; lpad(Field&lt;String&gt; field, Field&lt;? extends Number&gt; length);
    +Field&lt;String&gt; lpad(Field&lt;String&gt; field, int length);
    +Field&lt;String&gt; lpad(Field&lt;String&gt; field, Field&lt;? extends Number&gt; length, Field&lt;String&gt; c);
    +Field&lt;String&gt; lpad(Field&lt;String&gt; field, int length, char c);
    +Field&lt;String&gt; replace(Field&lt;String&gt; field, Field&lt;String&gt; search);
    +Field&lt;String&gt; replace(Field&lt;String&gt; field, String search);
    +Field&lt;String&gt; replace(Field&lt;String&gt; field, Field&lt;String&gt; search, Field&lt;String&gt; replace);
    +Field&lt;String&gt; replace(Field&lt;String&gt; field, String search, String replace);
    +Field&lt;Integer&gt; position(Field&lt;String&gt; field, String search);
    +Field&lt;Integer&gt; position(Field&lt;String&gt; field, Field&lt;String&gt; search);</pre>
    +
    +							<h2>Aggregate operators</h2>
    +							<p>Aggregate operators work just like functions, even if they have a
    +								slightly different semantics. Here are some examples from
    +								Factory: </p>
    +
    +<pre class="prettyprint lang-java">// Every-day, SQL standard aggregate functions
    +AggregateFunction&lt;Integer&gt; count(Field&lt;?&gt; field);
    +AggregateFunction&lt;T&gt; max(Field&lt;T&gt; field);
    +AggregateFunction&lt;T&gt; min(Field&lt;T&gt; field);
    +AggregateFunction&lt;BigDecimal&gt; sum(Field&lt;? extends Number&gt; field);
    +AggregateFunction&lt;BigDecimal&gt; avg(Field&lt;? extends Number&gt; field);
    +
    +
    +// DISTINCT keyword in aggregate functions
    +AggregateFunction&lt;Integer&gt; countDistinct(Field&lt;?&gt; field);
    +AggregateFunction&lt;T&gt; maxDistinct(Field&lt;T&gt; field);
    +AggregateFunction&lt;T&gt; minDistinct(Field&lt;T&gt; field);
    +AggregateFunction&lt;BigDecimal&gt; sumDistinct(Field&lt;? extends Number&gt; field);
    +AggregateFunction&lt;BigDecimal&gt; avgDistinct(Field&lt;? extends Number&gt; field);
    +
    +// String aggregate functions
    +AggregateFunction&lt;String&gt; groupConcat(Field&lt;?&gt; field);
    +AggregateFunction&lt;String&gt; groupConcatDistinct(Field&lt;?&gt; field);
    +OrderedAggregateFunction&lt;String&gt; listAgg(Field&lt;?&gt; field);
    +OrderedAggregateFunction&lt;String&gt; listAgg(Field&lt;?&gt; field, String separator);
    +
    +// Statistical functions
    +AggregateFunction&lt;BigDecimal&gt; median(Field&lt;? extends Number&gt; field);
    +AggregateFunction&lt;BigDecimal&gt; stddevPop(Field&lt;? extends Number&gt; field);
    +AggregateFunction&lt;BigDecimal&gt; stddevSamp(Field&lt;? extends Number&gt; field);
    +AggregateFunction&lt;BigDecimal&gt; varPop(Field&lt;? extends Number&gt; field);
    +AggregateFunction&lt;BigDecimal&gt; varSamp(Field&lt;? extends Number&gt; field);
    +</pre>
    +
    +							<p>A typical example of how to use an aggregate operator is when
    +								generating the next key on insertion of an ID. When you want to
    +								achieve something like this </p>
    +
    +							<table cellspacing="0" cellpadding="0" width="100%">
    +<tr>
    +<td class="left" width="50%">
    +<pre class="prettyprint lang-sql">SELECT MAX(ID) + 1 AS next_id
    +  FROM T_AUTHOR</pre>
    +</td><td class="right" width="50%">
    +<pre class="prettyprint lang-java">create.select(max(ID).add(1).as("next_id"))
    +      .from(T_AUTHOR);</pre>
    +</td>
    +</tr>
    +</table>
    +
    +							<p>See also the section about
    +								<a href="<?=$root?>/manual/DSL/ARITHMETIC/" title="jOOQ Manual reference: Arithmetic operations and concatenation">Arithmetic operations</a>
    +</p>
    +
    +							<h2>Window functions</h2>
    +							<p>Most major RDBMS support the concept of window functions. jOOQ knows
    +								of implementations in DB2, Oracle, Postgres, SQL Server, and Sybase
    +								SQL Anywhere,
    +								and supports most of their specific syntaxes. Window functions can be
    +								used for things like calculating a "running total". The following example
    +								fetches transactions and the running total for every transaction going
    +								back to the beginning of the transaction table (ordered by booked_at).
    +
    +								They are accessible from the previously seen AggregateFunction type using
    +								the over() method:
    +							</p>
    +
    +							<table cellspacing="0" cellpadding="0" width="100%">
    +<tr>
    +<td class="left" width="50%">
    +<pre class="prettyprint lang-sql">SELECT booked_at, amount,
    +   SUM(amount) OVER (PARTITION BY 1
    +                     ORDER BY booked_at
    +                     ROWS BETWEEN UNBOUNDED PRECEDING
    +                     AND CURRENT ROW) AS total
    +  FROM transactions</pre>
    +</td><td class="right" width="50%">
    +<pre class="prettyprint lang-java">create.select(t.BOOKED_AT, t.AMOUNT,
    +         sum(t.AMOUNT).over().partitionByOne()
    +                      .orderBy(t.BOOKED_AT)
    +                      .rowsBetweenUnboundedPreceding()
    +                      .andCurrentRow().as("total")
    +      .from(TRANSACTIONS.as("t"));</pre>
    +</td>
    +</tr>
    +</table>
    +						<br><table width="100%" border="0" cellspacing="0" cellpadding="0">
    +<tr>
    +<td valign="top" align="left"><a href="<?=$root?>/manual/">The jOOQ User Manual</a> : <a href="<?=$root?>/manual/DSL/">DSL or fluent API. Where SQL meets Java</a> : <a href="<?=$root?>/manual/DSL/FUNCTIONS/">Functions and aggregate operators</a></td><td style="white-space: nowrap" valign="top" align="right"><a title="Previous section: UNION and other set operations" href="<?=$root?>/manual/DSL/UNION/">previous</a> : <a title="Next section: Stored procedures and functions" href="<?=$root?>/manual/DSL/PROCEDURES/">next</a></td>
    +</tr>
    +</table>
    +<?php 
    +}
    +?>
    +
    diff --git a/jOOQ-website/manual/DSL/IN/index.php b/jOOQ-website/manual/DSL/IN/index.php
    new file mode 100644
    index 00000000000..fc710884ebd
    --- /dev/null
    +++ b/jOOQ-website/manual/DSL/IN/index.php
    @@ -0,0 +1,82 @@
    +
    +<?php 
    +// The following content has been XSL transformed from manual.xml using html-pages.xsl
    +// Please do not edit this content manually
    +require '../../../frame.php';
    +function getH1() {
    +    return "Nested SELECT using the IN operator";
    +}
    +function getActiveMenu() {
    +	return "manual";
    +}
    +function getSlogan() {
    +	return "
    +							Set equal operations are very common when you want to select multiple
    +							records. The IN operator can also be used for semi-joins, though
    +						";
    +}
    +function printContent() {
    +    global $root;
    +?>
    +<table width="100%" border="0" cellspacing="0" cellpadding="0">
    +<tr>
    +<td valign="top" align="left"><a href="<?=$root?>/manual/">The jOOQ User Manual</a> : <a href="<?=$root?>/manual/DSL/">DSL or fluent API. Where SQL meets Java</a> : <a href="<?=$root?>/manual/DSL/IN/">Nested SELECT using the IN operator</a></td><td style="white-space: nowrap" valign="top" align="right"><a title="Previous section: Aliased tables and fields" href="<?=$root?>/manual/DSL/ALIAS/">previous</a> : <a title="Next section: Nested SELECT using the EXISTS operator" href="<?=$root?>/manual/DSL/EXISTS/">next</a></td>
    +</tr>
    +</table>
    +							<h2>The IN operator for use in semi-joins or anti-joins</h2>
    +							<p>
    +								In addition to a list of constant values, the IN operator in
    +								<a href="http://www.jooq.org/javadoc/latest/org/jooq/Field.html" title="Internal API reference: org.jooq.Field">org.jooq.Field</a>
    +								also supports a
    +								<a href="http://www.jooq.org/javadoc/latest/org/jooq/Select.html" title="Internal API reference: org.jooq.Select">org.jooq.Select</a> as an argument.
    +								This can be any type of select as
    +								discussed in the manual's section about
    +								<a href="<?=$root?>/manual/JOOQ/Query/" title="jOOQ Manual reference: The Query and its various subtypes">Query types</a>.
    +								However, you must
    +								ensure yourself, that the provided Select will only select a single
    +								Field.
    +							</p>
    +							<p>Let's say you want to select books by authors born in 1920. Of
    +								course, this is possible with a plain JOIN as well, but let's say we
    +								want to use the IN operator. Then you have two possibilities: </p>
    +
    +							<table cellspacing="0" cellpadding="0" width="100%">
    +<tr>
    +<td class="left" width="50%">
    +<pre class="prettyprint lang-sql">SELECT *
    +  FROM T_BOOK
    + WHERE T_BOOK.AUTHOR_ID IN (
    +           SELECT ID FROM T_AUTHOR
    +            WHERE T_AUTHOR.BORN = 1920)
    +
    +-- OR:
    +
    +SELECT T_BOOK.*
    +  FROM T_BOOK
    +  JOIN T_AUTHOR ON (T_BOOK.AUTHOR_ID = T_AUTHOR.ID
    +                AND T_AUTHOR.BORN    = 1920)</pre>
    +</td><td class="right" width="50%">
    +<pre class="prettyprint lang-java">create.select()
    +      .from(T_BOOK)
    +      .where(T_BOOK.AUTHOR_ID.in(
    +          create.select(T_AUTHOR.ID).from(T_AUTHOR)
    +                .where(T_AUTHOR.BORN.equal(1920))));
    +
    +// OR:
    +
    +create.select(T_BOOK.getFields())
    +      .from(T_BOOK)
    +      .join(T_AUTHOR).on(T_BOOK.AUTHOR_ID.equal(TAuthor.ID)
    +                     .and(T_AUTHOR.BORN.equal(1920)));</pre>
    +</td>
    +</tr>
    +</table>
    +						<br><table width="100%" border="0" cellspacing="0" cellpadding="0">
    +<tr>
    +<td valign="top" align="left"><a href="<?=$root?>/manual/">The jOOQ User Manual</a> : <a href="<?=$root?>/manual/DSL/">DSL or fluent API. Where SQL meets Java</a> : <a href="<?=$root?>/manual/DSL/IN/">Nested SELECT using the IN operator</a></td><td style="white-space: nowrap" valign="top" align="right"><a title="Previous section: Aliased tables and fields" href="<?=$root?>/manual/DSL/ALIAS/">previous</a> : <a title="Next section: Nested SELECT using the EXISTS operator" href="<?=$root?>/manual/DSL/EXISTS/">next</a></td>
    +</tr>
    +</table>
    +<?php 
    +}
    +?>
    +
    diff --git a/jOOQ-website/manual/DSL/NESTED/index.php b/jOOQ-website/manual/DSL/NESTED/index.php
    new file mode 100644
    index 00000000000..9dc9f8260b8
    --- /dev/null
    +++ b/jOOQ-website/manual/DSL/NESTED/index.php
    @@ -0,0 +1,143 @@
    +
    +<?php 
    +// The following content has been XSL transformed from manual.xml using html-pages.xsl
    +// Please do not edit this content manually
    +require '../../../frame.php';
    +function getH1() {
    +    return "Other types of nested SELECT";
    +}
    +function getActiveMenu() {
    +	return "manual";
    +}
    +function getSlogan() {
    +	return "Apart from the most common IN and EXISTS clauses that encourage
    +							the use of nested selects, SQL knows a few more syntaxes to make use
    +							of such constructs. ";
    +}
    +function printContent() {
    +    global $root;
    +?>
    +<table width="100%" border="0" cellspacing="0" cellpadding="0">
    +<tr>
    +<td valign="top" align="left"><a href="<?=$root?>/manual/">The jOOQ User Manual</a> : <a href="<?=$root?>/manual/DSL/">DSL or fluent API. Where SQL meets Java</a> : <a href="<?=$root?>/manual/DSL/NESTED/">Other types of nested SELECT</a></td><td style="white-space: nowrap" valign="top" align="right"><a title="Previous section: Nested SELECT using the EXISTS operator" href="<?=$root?>/manual/DSL/EXISTS/">previous</a> : <a title="Next section: UNION and other set operations" href="<?=$root?>/manual/DSL/UNION/">next</a></td>
    +</tr>
    +</table>
    +							<h2>Comparison with single-field SELECT clause</h2>
    +							<p>If you can ensure that a nested SELECT will only return one Record
    +								with one Field, then you can test for equality. This is how it is done
    +								in SQL: </p>
    +
    +							<table cellspacing="0" cellpadding="0" width="100%">
    +<tr>
    +<td class="left" width="50%">
    +<pre class="prettyprint lang-sql">SELECT *
    +  FROM T_BOOK
    + WHERE T_BOOK.AUTHOR_ID = (
    + 		SELECT ID
    +          FROM T_AUTHOR
    +         WHERE LAST_NAME = 'Orwell')</pre>
    +</td><td class="right" width="50%">
    +<pre class="prettyprint lang-java">create.select()
    +      .from(T_BOOK)
    +      .where(T_BOOK.AUTHOR_ID.equal(create
    +             .select(T_AUTHOR.ID)
    +             .from(T_AUTHOR)
    +             .where(T_AUTHOR.LAST_NAME.equal("Orwell"))));</pre>
    +</td>
    +</tr>
    +</table>
    +
    +                            <p>More examples like the above can be guessed from the
    +                            <a href="http://www.jooq.org/javadoc/latest/org/jooq/Field.html" title="Internal API reference: org.jooq.Field">org.jooq.Field</a> API, as documented in the manual's section about
    +                            <a href="<?=$root?>/manual/DSL/CONDITION/" title="jOOQ Manual reference: Conditions">Conditions</a>. For the = operator, the available comparisons are these:</p>
    +
    +<pre class="prettyprint lang-java">Condition equal(Select&lt;?&gt; query);
    +Condition equalAny(Select&lt;?&gt; query);
    +Condition equalAll(Select&lt;?&gt; query);</pre>
    +
    +
    +                            <h2>Selecting from a SELECT - SELECT acts as a Table</h2>
    +							<p>Often, you need to nest a SELECT statement simply because SQL is
    +								limited in power. For instance, if you want to find out which author
    +								has written the most books, then you cannot do this: </p>
    +
    +<pre class="prettyprint lang-sql">  SELECT AUTHOR_ID, count(*) books
    +    FROM T_BOOK
    +GROUP BY AUTHOR_ID
    +ORDER BY books DESC</pre>
    +
    +							<p>Instead, you have to do this (or something similar). For jOOQ, this
    +								is an excellent example, combining various SQL features into a single
    +								statement. Here's how to do it: </p>
    +
    +							<table cellspacing="0" cellpadding="0" width="100%">
    +<tr>
    +<td class="left" width="50%">
    +<pre class="prettyprint lang-sql">SELECT nested.* FROM (
    +      SELECT AUTHOR_ID, count(*) books
    +        FROM T_BOOK
    +    GROUP BY AUTHOR_ID
    +) nested
    +ORDER BY nested.books DESC
    +
    +
    +</pre>
    +</td><td class="right" width="50%">
    +<pre class="prettyprint lang-java">Table&lt;Record&gt; nested =
    +    create.select(T_BOOK.AUTHOR_ID, count().as("books"))
    +          .from(T_BOOK)
    +          .groupBy(T_BOOK.AUTHOR_ID).asTable("nested");
    +
    +create.select(nested.getFields())
    +      .from(nested)
    +      .orderBy(nested.getField("books"));</pre>
    +</td>
    +</tr>
    +</table>
    +
    +							<p>You'll notice how some verbosity seems inevitable when you combine nested SELECT statements with aliasing. </p>
    +
    +	                    	<h2>Selecting a SELECT - SELECT acts as a Field</h2>
    +							<p>Now SQL is even more powerful than that. You can also have SELECT
    +								statements, wherever you can have Fields. It get's harder and harder
    +								to find good examples, because there is always an easier way to
    +								express the same thing. But why not just count the number of books the
    +								really hard way? :-) But then again, maybe you want to take advantage
    +								of <a href="http://lukaseder.wordpress.com/2011/09/02/oracle-scalar-subquery-caching/" title="Oracle Scalar Subquery Caching with jOOQ">Oracle Scalar Subquery Caching</a>
    +</p>
    +
    +							<table cellspacing="0" cellpadding="0" width="100%">
    +<tr>
    +<td class="left" width="50%">
    +<pre class="prettyprint lang-sql">  SELECT LAST_NAME, (
    +      SELECT COUNT(*)
    +       FROM T_BOOK
    +      WHERE T_BOOK.AUTHOR_ID = T_AUTHOR.ID) books
    +    FROM T_AUTHOR
    +ORDER BY books DESC
    +
    +
    +
    +</pre>
    +</td><td class="right" width="50%">
    +<pre class="prettyprint lang-java">// The type of books cannot be inferred from the Select&lt;?&gt;
    +Field&lt;Object&gt; books =
    +    create.selectCount()
    +          .from(T_BOOK)
    +          .where(T_BOOK.AUTHOR_ID.equal(T_AUTHOR.ID))
    +          .asField("books");
    +create.select(T_AUTHOR.ID, books)
    +      .from(T_AUTHOR)
    +      .orderBy(books, T_AUTHOR.ID));</pre>
    +</td>
    +</tr>
    +</table>
    +                    	<br><table width="100%" border="0" cellspacing="0" cellpadding="0">
    +<tr>
    +<td valign="top" align="left"><a href="<?=$root?>/manual/">The jOOQ User Manual</a> : <a href="<?=$root?>/manual/DSL/">DSL or fluent API. Where SQL meets Java</a> : <a href="<?=$root?>/manual/DSL/NESTED/">Other types of nested SELECT</a></td><td style="white-space: nowrap" valign="top" align="right"><a title="Previous section: Nested SELECT using the EXISTS operator" href="<?=$root?>/manual/DSL/EXISTS/">previous</a> : <a title="Next section: UNION and other set operations" href="<?=$root?>/manual/DSL/UNION/">next</a></td>
    +</tr>
    +</table>
    +<?php 
    +}
    +?>
    +
    diff --git a/jOOQ-website/manual/DSL/PROCEDURES/index.php b/jOOQ-website/manual/DSL/PROCEDURES/index.php
    new file mode 100644
    index 00000000000..37734d6d411
    --- /dev/null
    +++ b/jOOQ-website/manual/DSL/PROCEDURES/index.php
    @@ -0,0 +1,96 @@
    +
    +<?php 
    +// The following content has been XSL transformed from manual.xml using html-pages.xsl
    +// Please do not edit this content manually
    +require '../../../frame.php';
    +function getH1() {
    +    return "Stored procedures and functions";
    +}
    +function getActiveMenu() {
    +	return "manual";
    +}
    +function getSlogan() {
    +	return "
    +							The full power of your database's vendor-specific extensions can hardly
    +							be obtained outside of the
    +							database itself. Most modern RDBMS support
    +							their own procedural language. With jOOQ, stored procedures are
    +							integrated easily
    +						";
    +}
    +function printContent() {
    +    global $root;
    +?>
    +<table width="100%" border="0" cellspacing="0" cellpadding="0">
    +<tr>
    +<td valign="top" align="left"><a href="<?=$root?>/manual/">The jOOQ User Manual</a> : <a href="<?=$root?>/manual/DSL/">DSL or fluent API. Where SQL meets Java</a> : <a href="<?=$root?>/manual/DSL/PROCEDURES/">Stored procedures and functions</a></td><td style="white-space: nowrap" valign="top" align="right"><a title="Previous section: Functions and aggregate operators" href="<?=$root?>/manual/DSL/FUNCTIONS/">previous</a> : <a title="Next section: Arithmetic operations and concatenation" href="<?=$root?>/manual/DSL/ARITHMETIC/">next</a></td>
    +</tr>
    +</table>
    +							<h2>Interaction with stored procedures</h2>
    +							<p>The main way to interact with your RDBMS's stored procedures and
    +								functions is by using the generated artefacts. See the manual's
    +								section about
    +								<a href="<?=$root?>/manual/META/PROCEDURE/" title="jOOQ Manual reference: Procedures and packages">generating procedures and packages</a>
    +							    for more details
    +								about the source code generation for stored procedures and functions.
    +							</p>
    +
    +							<h2>Stored functions</h2>
    +							<p>When it comes to DSL, stored functions can be very handy in SQL
    +								statements as well. Every stored function (this also applies to
    +								FUNCTIONS in Oracle PACKAGES) can generate a Field representing a call
    +								to that function. Typically, if you have this type of function in your
    +								database: </p>
    +
    +<pre class="prettyprint lang-sql">CREATE OR REPLACE FUNCTION f_author_exists (author_name VARCHAR2)
    +RETURN NUMBER;</pre>
    +
    +							<p>Then convenience methods like these are generated: </p>
    +<pre class="prettyprint lang-java">// Create a field representing a function with another field as parameter
    +public static Field&lt;BigDecimal&gt; fAuthorExists(Field&lt;String&gt; authorName) { // [...]
    +
    +// Create a field representing a function with a constant parameter
    +public static Field&lt;BigDecimal&gt; fAuthorExists(String authorName) { // [...]</pre>
    +
    +							<p>Let's say, you have a T_PERSON table with persons' names in it, and
    +								you want to know whether there exists an author with precisely that
    +								name, you can reuse the above stored function in a SQL query: </p>
    +
    +							<table cellspacing="0" cellpadding="0" width="100%">
    +<tr>
    +<td class="left" width="50%">
    +<pre class="prettyprint lang-sql">SELECT T_PERSON.NAME, F_AUTHOR_EXISTS(T_PERSON.NAME)
    +  FROM T_PERSON
    +
    +-- OR:
    +
    +SELECT T_PERSON.NAME
    +  FROM T_PERSON
    + WHERE F_AUTHOR_EXISTS(T_PERSON.NAME) = 1</pre>
    +</td><td class="right" width="50%">
    +<pre class="prettyprint lang-java">create.select(T_PERSON.NAME, Functions.fAuthorExists(T_PERSON.NAME))
    +      .from(T_PERSON);
    +
    +// OR: Note, the static import of Functions.*
    +create.select(T_PERSON.NAME)
    +      .from(T_PERSON)
    +      .where(fAuthorExists(T_PERSON.NAME));</pre>
    +</td>
    +</tr>
    +</table>
    +
    +							<h2>Stored procedures</h2>
    +							<p>The notion of a stored procedure is implemented in most RDBMS by the
    +								fact, that the procedure has no RETURN VALUE (like void in Java), but
    +								it may well have OUT parameters. Since there is not a standard way how
    +								to embed stored procedures in SQL, they cannot be integrated in jOOQ's
    +								DSL either. </p>
    +						<br><table width="100%" border="0" cellspacing="0" cellpadding="0">
    +<tr>
    +<td valign="top" align="left"><a href="<?=$root?>/manual/">The jOOQ User Manual</a> : <a href="<?=$root?>/manual/DSL/">DSL or fluent API. Where SQL meets Java</a> : <a href="<?=$root?>/manual/DSL/PROCEDURES/">Stored procedures and functions</a></td><td style="white-space: nowrap" valign="top" align="right"><a title="Previous section: Functions and aggregate operators" href="<?=$root?>/manual/DSL/FUNCTIONS/">previous</a> : <a title="Next section: Arithmetic operations and concatenation" href="<?=$root?>/manual/DSL/ARITHMETIC/">next</a></td>
    +</tr>
    +</table>
    +<?php 
    +}
    +?>
    +
    diff --git a/jOOQ-website/manual/DSL/SELECT/index.php b/jOOQ-website/manual/DSL/SELECT/index.php
    new file mode 100644
    index 00000000000..e553a12487c
    --- /dev/null
    +++ b/jOOQ-website/manual/DSL/SELECT/index.php
    @@ -0,0 +1,296 @@
    +
    +<?php 
    +// The following content has been XSL transformed from manual.xml using html-pages.xsl
    +// Please do not edit this content manually
    +require '../../../frame.php';
    +function getH1() {
    +    return "Complete SELECT syntax";
    +}
    +function getActiveMenu() {
    +	return "manual";
    +}
    +function getSlogan() {
    +	return "
    +							A SELECT statement is more than just the R in CRUD. It allows for
    +							transforming your relational data into any other form using concepts
    +							such as equi-join, semi-join, anti-join, outer-join and much more. jOOQ
    +							helps you think in precisely those relational concepts.
    +						";
    +}
    +function printContent() {
    +    global $root;
    +?>
    +<table width="100%" border="0" cellspacing="0" cellpadding="0">
    +<tr>
    +<td valign="top" align="left"><a href="<?=$root?>/manual/">The jOOQ User Manual</a> : <a href="<?=$root?>/manual/DSL/">DSL or fluent API. Where SQL meets Java</a> : <a href="<?=$root?>/manual/DSL/SELECT/">Complete SELECT syntax</a></td><td style="white-space: nowrap" valign="top" align="right"><a title="Previous section: DSL or fluent API. Where SQL meets Java" href="<?=$root?>/manual/DSL/">previous</a> : <a title="Next section: Table sources" href="<?=$root?>/manual/DSL/TABLESOURCE/">next</a></td>
    +</tr>
    +</table>
    +							<h2>SELECT from anonymous or ad-hoc types</h2>
    +							<p>When you don't just perform CRUD (i.e. SELECT * FROM your_table WHERE ID = ?),
    +							you're usually generating new types using custom projections. With jOOQ, this is
    +							as intuitive, as if using SQL directly. A more or less complete example of the "standard" SQL syntax, plus
    +							some extensions, is provided by a query like this:
    +							</p>
    +
    +<pre class="prettyprint lang-sql">-- get all authors' first and last names, and the number
    +-- of books they've written in German, if they have written
    +-- more than five books in German in the last three years
    +-- (from 2011), and sort those authors by last names
    +-- limiting results to the second and third row, locking
    +-- the rows for a subsequent update... whew!
    +
    +  SELECT T_AUTHOR.FIRST_NAME, T_AUTHOR.LAST_NAME, COUNT(*)
    +    FROM T_AUTHOR
    +    JOIN T_BOOK ON T_AUTHOR.ID = T_BOOK.AUTHOR_ID
    +   WHERE T_BOOK.LANGUAGE = 'DE'
    +     AND T_BOOK.PUBLISHED &gt; '2008-01-01'
    +GROUP BY T_AUTHOR.FIRST_NAME, T_AUTHOR.LAST_NAME
    +  HAVING COUNT(*) &gt; 5
    +ORDER BY T_AUTHOR.LAST_NAME ASC NULLS FIRST
    +   LIMIT 2
    +  OFFSET 1
    +     FOR UPDATE</pre>
    +
    +     						<p>So that's daily business. How to do it with jOOQ: When you first create a SELECT statement using the Factory's select() methods </p>
    +<pre class="prettyprint lang-java">SelectFromStep select(Field&lt;?&gt;... fields);
    +
    +// Example:
    +create.select(T_AUTHOR.FIRST_NAME, T_AUTHOR.LAST_NAME, count());</pre>
    +
    +							<p>
    +								jOOQ will return an "intermediary" type to you, representing the
    +								SELECT statement about to be created (by the way, check out the
    +								section on <a href="<?=$root?>/manual/DSL/FUNCTIONS/" title="jOOQ Manual reference: Functions and aggregate operators">aggregate operators</a>
    +								 to learn more about the COUNT(*)
    +								function). This type is the
    +								<a href="http://www.jooq.org/javadoc/latest/org/jooq/SelectFromStep.html" title="Internal API reference: org.jooq.SelectFromStep">org.jooq.SelectFromStep</a>.
    +								When you have a reference
    +								to this type, you may add a FROM clause, although that clause is
    +								optional. This is reflected by the fact, that the SelectFromStep type
    +								extends
    +								<a href="http://www.jooq.org/javadoc/latest/org/jooq/SelectJoinStep.html" title="Internal API reference: org.jooq.SelectJoinStep">org.jooq.SelectJoinStep</a>,
    +								which allows for adding the subsequent
    +								clauses. Let's say you do decide to add a FROM clause, then you can
    +								use this method for instance:
    +							</p>
    +<pre class="prettyprint lang-java">SelectJoinStep from(TableLike&lt;?&gt;... table);
    +
    +// The example, continued:
    +create.select(T_AUTHOR.FIRST_NAME, T_AUTHOR.LAST_NAME, count())
    +      .from(T_AUTHOR);</pre>
    +
    +							<p>After adding the table-like structures (mostly just Tables) to
    +								select from, you may optionally choose to add a JOIN clause, as the
    +								type returned by jOOQ is the step where you can add JOINs. Again,
    +								adding these clauses is optional, as the
    +								<a href="http://www.jooq.org/javadoc/latest/org/jooq/SelectJoinStep.html" title="Internal API reference: org.jooq.SelectJoinStep">org.jooq.SelectJoinStep</a> extends
    +								<a href="http://www.jooq.org/javadoc/latest/org/jooq/SelectWhereStep.html" title="Internal API reference: org.jooq.SelectWhereStep">org.jooq.SelectWhereStep</a>.
    +								But let's say we add a JOIN: </p>
    +<pre class="prettyprint lang-java">// These join types are supported
    +SelectOnStep                    join(Table&lt;?&gt; table);
    +SelectOnStep           leftOuterJoin(Table&lt;?&gt; table);
    +SelectOnStep          rightOuterJoin(Table&lt;?&gt; table);
    +SelectOnStep           fullOuterJoin(Table&lt;?&gt; table);
    +SelectJoinStep             crossJoin(Table&lt;?&gt; table);
    +SelectJoinStep           naturalJoin(Table&lt;?&gt; table);
    +SelectJoinStep  naturalLeftOuterJoin(Table&lt;?&gt; table);
    +SelectJoinStep naturalRightOuterJoin(Table&lt;?&gt; table);
    +
    +// The example, continued:
    +create.select(T_AUTHOR.FIRST_NAME, T_AUTHOR.LAST_NAME, count())
    +      .from(T_AUTHOR)
    +      .join(T_BOOK);</pre>
    +
    +							<p>Now, if you do add a JOIN clause, you have to specify the JOIN .. ON
    +								condition before you can add more clauses. That's not an optional step
    +								for some JOIN types. This is reflected by the fact that
    +								<a href="http://www.jooq.org/javadoc/latest/org/jooq/SelectOnStep.html" title="Internal API reference: org.jooq.SelectOnStep">org.jooq.SelectOnStep</a>
    +								is a top-level interface. </p>
    +
    +<pre class="prettyprint lang-java">// These join conditions are supported
    +SelectJoinStep    on(Condition... conditions);
    +SelectJoinStep onKey();
    +SelectJoinStep onKey(TableField&lt;?, ?&gt;... keyFields);
    +SelectJoinStep onKey(ForeignKey&lt;?, ?&gt; key);
    +SelectJoinStep using(Field&lt;?&gt;... fields);
    +
    +// The example, continued:
    +create.select(T_AUTHOR.FIRST_NAME, T_AUTHOR.LAST_NAME, count())
    +      .from(T_AUTHOR)
    +      .join(T_BOOK).on(T_BOOK.AUTHOR_ID.equal(T_AUTHOR.ID));</pre>
    +
    +							<p>
    +								See the section about
    +								<a href="<?=$root?>/manual/DSL/CONDITION/" title="jOOQ Manual reference: Conditions">conditions</a>
    +								to learn more about the many ways
    +								to create Conditions in jOOQ.
    +								See also the section about
    +								<a href="<?=$root?>/manual/DSL/TABLESOURCE/" title="jOOQ Manual reference: Table sources">table sources</a>
    +								to learn more about the various ways of creating JOIN
    +								expressions
    +							</p>
    +							<p>
    +								Now we're half way through. As you can
    +								see above, we're back to the SelectJoinStep. This means, we can
    +								re-iterate and add another JOIN clause, just like in SQL. Or we go on
    +								to the next step, adding conditions in the
    +								<a href="http://www.jooq.org/javadoc/latest/org/jooq/SelectWhereStep.html" title="Internal API reference: org.jooq.SelectWhereStep">org.jooq.SelectWhereStep</a>: </p>
    +<pre class="prettyprint lang-java">SelectConditionStep where(Condition... conditions);
    +
    +// The example, continued:
    +create.select(TAuthor.FIRST_NAME, TAuthor.LAST_NAME, count())
    +      .from(T_AUTHOR)
    +      .join(T_BOOK).on(T_BOOK.AUTHOR_ID.equal(T_AUTHOR.ID))
    +      .where(T_BOOK.LANGUAGE.equal("DE"));</pre>
    +
    +							<p>Now the returned type
    +								<a href="http://www.jooq.org/javadoc/latest/org/jooq/SelectConditionStep.html" title="Internal API reference: org.jooq.SelectConditionStep">org.jooq.SelectConditionStep</a> is a special one, where
    +								you can add more conditions to the already existing WHERE clause.
    +								Every time you add a condition, you will return to that
    +								SelectConditionStep, as the number of additional conditions is
    +								unlimited. Note that of course you can also just add a single combined
    +								condition, if that is more readable or suitable for your use-case.
    +								Here's how we add another condition: </p>
    +<pre class="prettyprint lang-java">SelectConditionStep and(Condition condition);
    +
    +// The example, continued:
    +create.select(T_AUTHOR.FIRST_NAME, T_AUTHOR.LAST_NAME, count())
    +      .from(T_AUTHOR)
    +      .join(T_BOOK).on(T_BOOK.AUTHOR_ID.equal(T_AUTHOR.ID))
    +      .where(T_BOOK.LANGUAGE.equal("DE"))
    +      .and(T_BOOK.PUBLISHED.greaterThan(parseDate('2008-01-01')));</pre>
    +
    +							<p>Let's assume we have that method parseDate() creating a
    +								<a href="http://download.oracle.com/javase/6/docs/api/java/sql/Date.html" title="External API reference: java.sql.Date">java.sql.Date</a> for us.
    +								Then we'll continue adding the GROUP BY clause
    +							</p>
    +<pre class="prettyprint lang-java">SelectHavingStep groupBy(Field&lt;?&gt;... fields);
    +
    +// The example, continued:
    +create.select(T_AUTHOR.FIRST_NAME, T_AUTHOR.LAST_NAME, count())
    +      .from(T_AUTHOR)
    +      .join(T_BOOK).on(T_BOOK.AUTHOR_ID.equal(T_AUTHOR.ID))
    +      .where(T_BOOK.LANGUAGE.equal("DE"))
    +      .and(T_BOOK.PUBLISHED.greaterThan(parseDate('2008-01-01')))
    +      .groupBy(T_AUTHOR.FIRST_NAME, T_AUTHOR.LAST_NAME);</pre>
    +
    +      						<p>and the HAVING clause: </p>
    +<pre class="prettyprint lang-java">SelectOrderByStep having(Condition... conditions);
    +
    +// The example, continued:
    +create.select(T_AUTHOR.FIRST_NAME, T_AUTHOR.LAST_NAME, count())
    +      .from(T_AUTHOR)
    +      .join(T_BOOK).on(T_BOOK.AUTHOR_ID.equal(T_AUTHOR.ID))
    +      .where(T_BOOK.LANGUAGE.equal("DE"))
    +      .and(T_BOOK.PUBLISHED.greaterThan(parseDate('2008-01-01')))
    +      .groupBy(T_AUTHOR.FIRST_NAME, T_AUTHOR.LAST_NAME)
    +      .having(count().greaterThan(5));</pre>
    +
    +							<p>and the ORDER BY clause. Some RDBMS support NULLS FIRST and NULLS
    +								LAST extensions to the ORDER BY clause. If this is not supported by
    +								the RDBMS, then the behaviour is simulated with an additional CASE
    +								WHEN ... IS NULL THEN 1 ELSE 0 END clause. </p>
    +<pre class="prettyprint lang-java">SelectLimitStep orderBy(Field&lt;?&gt;... fields);
    +
    +// The example, continued:
    +create.select(T_AUTHOR.FIRST_NAME, T_AUTHOR.LAST_NAME, count())
    +      .from(T_AUTHOR)
    +      .join(T_BOOK).on(T_BOOK.AUTHOR_ID.equal(T_AUTHOR.ID))
    +      .where(T_BOOK.LANGUAGE.equal("DE"))
    +      .and(T_BOOK.PUBLISHED.greaterThan(parseDate('2008-01-01')))
    +      .groupBy(T_AUTHOR.FIRST_NAME, T_AUTHOR.LAST_NAME)
    +      .having(count().greaterThan(5))
    +      .orderBy(T_AUTHOR.LAST_NAME.asc().nullsFirst());</pre>
    +
    +							<p>and finally the LIMIT clause. Most dialects have a means of limiting
    +								the number of result records (except Oracle). Some even support having
    +								an OFFSET to the LIMIT clause. Even if your RDBMS does not support the
    +								full LIMIT ... OFFSET ... (or TOP ... START AT ..., or FETCH FIRST ... ROWS ONLY, etc)
    +								clause, jOOQ will simulate the LIMIT clause using nested selects and filtering on
    +								ROWNUM (for Oracle), or on ROW_NUMBER() (for DB2 and SQL
    +								Server): </p>
    +<pre class="prettyprint lang-java">SelectFinalStep limit(int offset, int numberOfRows);
    +
    +// The example, continued:
    +create.select(T_AUTHOR.FIRST_NAME, T_AUTHOR.LAST_NAME, count())
    +      .from(T_AUTHOR)
    +      .join(T_BOOK).on(T_BOOK.AUTHOR_ID.equal(T_AUTHOR.ID))
    +      .where(T_BOOK.LANGUAGE.equal("DE"))
    +      .and(T_BOOK.PUBLISHED.greaterThan(parseDate('2008-01-01')))
    +      .groupBy(T_AUTHOR.FIRST_NAME, T_AUTHOR.LAST_NAME)
    +      .having(count().greaterThan(5))
    +      .orderBy(T_AUTHOR.LAST_NAME.asc().nullsFirst())
    +      .limit(1, 2);</pre>
    +
    +							<p>In the final step, there are some proprietary extensions available
    +								only in some RDBMS. One of those extensions are the FOR UPDATE
    +								(supported in most RDBMS) and FOR SHARE clauses (supported only in
    +								MySQL and Postgres): </p>
    +<pre class="prettyprint lang-java">SelectFinalStep forUpdate();
    +
    +// The example, continued:
    +create.select(T_AUTHOR.FIRST_NAME, T_AUTHOR.LAST_NAME, count())
    +      .from(T_AUTHOR)
    +      .join(T_BOOK).on(T_BOOK.AUTHOR_ID.equal(T_AUTHOR.ID))
    +      .where(T_BOOK.LANGUAGE.equal("DE"))
    +      .and(T_BOOK.PUBLISHED.greaterThan(parseDate('2008-01-01')))
    +      .groupBy(T_AUTHOR.FIRST_NAME, T_AUTHOR.LAST_NAME)
    +      .having(count().greaterThan(5))
    +      .orderBy(T_AUTHOR.LAST_NAME.asc().nullsFirst())
    +      .limit(1, 2)
    +      .forUpdate();</pre>
    +
    +							<p>
    +								Now the most relevant super-type of the object we have just created is
    +								<a href="http://www.jooq.org/javadoc/latest/org/jooq/Select.html" title="Internal API reference: org.jooq.Select">org.jooq.Select</a>.
    +								This type can be reused in various expressions such as in the
    +								<a href="<?=$root?>/manual/DSL/UNION/" title="jOOQ Manual reference: UNION and other set operations">UNION and other set operations</a>,
    +								<a href="<?=$root?>/manual/DSL/EXISTS/" title="jOOQ Manual reference: Nested SELECT using the EXISTS operator">Nested select statements using the EXISTS operator</a>,
    +								etc. If you just want to execute this select
    +								statement, you can choose any of these methods as discussed in the
    +								section about the <a href="<?=$root?>/manual/JOOQ/ResultQuery/" title="jOOQ Manual reference: ResultQuery and various ways of fetching data">ResultQuery</a>:
    +							</p>
    +
    +<pre class="prettyprint lang-java">// Just execute the query.
    +int execute();
    +
    +// Execute the query and retrieve the results
    +Result&lt;Record&gt; fetch();
    +
    +// Execute the query and retrieve the first Record
    +Record fetchAny();
    +
    +// Execute the query and retrieve the single Record
    +// An Exception is thrown if more records were available
    +Record fetchOne();
    +
    +// [...]</pre>
    +
    +
    +							<h2>SELECT from single physical tables</h2>
    +							<p>A very similar, but limited API is available, if you want to select from single
    +								physical tables in order to retrieve TableRecords or even
    +								UpdatableRecords (see also the manual's section on
    +								<a href="<?=$root?>/manual/JOOQ/Query/" title="jOOQ Manual reference: The Query and its various subtypes">SelectQuery vs SimpleSelectQuery</a>).
    +								The decision, which type of select to create is
    +								already made at the very first step, when you create the SELECT
    +								statement with the Factory: </p>
    +
    +							<pre class="prettyprint lang-java">public &lt;R extends Record&gt; SimpleSelectWhereStep&lt;R&gt; selectFrom(Table&lt;R&gt; table);</pre>
    +							<p>As you can see, there is no way to further restrict/project the selected
    +								fields. This just selects all known TableFields in the supplied Table,
    +								and it also binds &lt;R extends Record&gt; to your Table's associated
    +								Record. An example of such a Query would then be: </p>
    +<pre class="prettyprint lang-java">TBook book = create.selectFrom(T_BOOK)
    +                   .where(TBook.LANGUAGE.equal("DE"))
    +                   .orderBy(TBook.TITLE)
    +                   .fetchAny();</pre>
    +						<br><table width="100%" border="0" cellspacing="0" cellpadding="0">
    +<tr>
    +<td valign="top" align="left"><a href="<?=$root?>/manual/">The jOOQ User Manual</a> : <a href="<?=$root?>/manual/DSL/">DSL or fluent API. Where SQL meets Java</a> : <a href="<?=$root?>/manual/DSL/SELECT/">Complete SELECT syntax</a></td><td style="white-space: nowrap" valign="top" align="right"><a title="Previous section: DSL or fluent API. Where SQL meets Java" href="<?=$root?>/manual/DSL/">previous</a> : <a title="Next section: Table sources" href="<?=$root?>/manual/DSL/TABLESOURCE/">next</a></td>
    +</tr>
    +</table>
    +<?php 
    +}
    +?>
    +
    diff --git a/jOOQ-website/manual/DSL/SQL/index.php b/jOOQ-website/manual/DSL/SQL/index.php
    new file mode 100644
    index 00000000000..89e4b5a198a
    --- /dev/null
    +++ b/jOOQ-website/manual/DSL/SQL/index.php
    @@ -0,0 +1,170 @@
    +
    +<?php 
    +// The following content has been XSL transformed from manual.xml using html-pages.xsl
    +// Please do not edit this content manually
    +require '../../../frame.php';
    +function getH1() {
    +    return "When it's just easier: Plain SQL";
    +}
    +function getActiveMenu() {
    +	return "manual";
    +}
    +function getSlogan() {
    +	return "
    +							jOOQ cannot foresee all possible vendor-specific SQL features for your
    +							database. And sometimes, even jOOQ code becomes too verbose. Then, you
    +							shouldn't hesitate to provide jOOQ with plain SQL, as you'd do with
    +							JDBC
    +						";
    +}
    +function printContent() {
    +    global $root;
    +?>
    +<table width="100%" border="0" cellspacing="0" cellpadding="0">
    +<tr>
    +<td valign="top" align="left"><a href="<?=$root?>/manual/">The jOOQ User Manual</a> : <a href="<?=$root?>/manual/DSL/">DSL or fluent API. Where SQL meets Java</a> : <a href="<?=$root?>/manual/DSL/SQL/">When it's just easier: Plain SQL</a></td><td style="white-space: nowrap" valign="top" align="right"><a title="Previous section: Type casting" href="<?=$root?>/manual/DSL/CAST/">previous</a> : <a title="Next section: Advanced topics" href="<?=$root?>/manual/ADVANCED/">next</a></td>
    +</tr>
    +</table>
    +							<h2>Plain SQL in jOOQ</h2>
    +							<p>A DSL is a nice thing to have, it feels "fluent" and "natural",
    +								especially if it models a well-known language, such as SQL. But a DSL
    +								is always expressed in another language (Java in this case), which was
    +								not made for exactly that DSL. If it were, then jOOQ would be
    +								implemented on a compiler-level, similar to Linq in .NET. But it's
    +								not, and so, the DSL is limited. We have seen many functionalities
    +								where the DSL becomes verbose. This can be especially true for: </p>
    +							<ul>
    +								
    +<li>
    +<a href="<?=$root?>/manual/DSL/ALIAS/" title="jOOQ Manual reference: Aliased tables and fields">aliasing</a>
    +</li>
    +								
    +<li>
    +<a href="<?=$root?>/manual/DSL/NESTED/" title="jOOQ Manual reference: Other types of nested SELECT">nested selects</a>
    +</li>
    +								
    +<li>
    +<a href="<?=$root?>/manual/DSL/ARITHMETIC/" title="jOOQ Manual reference: Arithmetic operations and concatenation">arithmetic expressions</a>
    +</li>
    +								
    +<li>
    +<a href="<?=$root?>/manual/DSL/CAST/" title="jOOQ Manual reference: Type casting">casting</a>
    +</li>
    +							
    +</ul>
    +							<p>You'll probably find other examples. If verbosity scares you off,
    +								don't worry. The verbose use-cases for jOOQ are rather rare, and when
    +								they come up, you do have an option. Just write SQL the way you're
    +								used to! </p>
    +							<p>jOOQ allows you to embed SQL as a String in these contexts: </p>
    +							<ul>
    +								
    +<li>Plain SQL as a condition </li>
    +								
    +<li>Plain SQL as a field </li>
    +								
    +<li>Plain SQL as a function </li>
    +								
    +<li>Plain SQL as a table </li>
    +								
    +<li>Plain SQL as a query </li>
    +							
    +</ul>
    +
    +							<p>To construct artefacts wrapping plain SQL, you should use any of
    +								these methods from the Factory class: </p>
    +
    +<pre class="prettyprint lang-java">// A condition
    +Condition condition(String sql);
    +Condition condition(String sql, Object... bindings);
    +
    +// A field with an unknown data type
    +Field&lt;Object&gt; field(String sql);
    +Field&lt;Object&gt; field(String sql, Object... bindings);
    +
    +// A field with a known data type
    +&lt;T&gt; Field&lt;T&gt; field(String sql, Class&lt;T&gt; type);
    +&lt;T&gt; Field&lt;T&gt; field(String sql, Class&lt;T&gt; type, Object... bindings);
    +&lt;T&gt; Field&lt;T&gt; field(String sql, DataType&lt;T&gt; type);
    +&lt;T&gt; Field&lt;T&gt; field(String sql, DataType&lt;T&gt; type, Object... bindings);
    +
    +// A function
    +&lt;T&gt; Field&lt;T&gt; function(String name, Class&lt;T&gt; type, Field&lt;?&gt;... arguments);
    +&lt;T&gt; Field&lt;T&gt; function(String name, DataType&lt;T&gt; type, Field&lt;?&gt;... arguments);
    +
    +// A table
    +Table&lt;?&gt; table(String sql);
    +Table&lt;?&gt; table(String sql, Object... bindings);
    +
    +// A query without results (update, insert, etc)
    +Query query(String sql);
    +Query query(String sql, Object... bindings);
    +
    +// A query with results
    +ResultQuery&lt;Record&gt; resultQuery(String sql);
    +ResultQuery&lt;Record&gt; resultQuery(String sql, Object... bindings);
    +
    +// A query with results. This is the same as resultQuery(...).fetch();
    +Result&lt;Record&gt; fetch(String sql);
    +Result&lt;Record&gt; fetch(String sql, Object... bindings);</pre>
    +
    +							<p>Apart from the general factory methods, plain SQL is useful also in
    +								various other contexts. For instance, when adding a .where("a = b")
    +								clause to a query. Hence, there exist several convenience methods
    +								where plain SQL can be inserted usefully. This is an example
    +								displaying all various use-cases in one single query: </p>
    +<pre class="prettyprint lang-java">// You can use your table aliases in plain SQL fields
    +// As long as that will produce syntactically correct SQL
    +Field&lt;?&gt; LAST_NAME    = create.field("a.LAST_NAME");
    +
    +// You can alias your plain SQL fields
    +Field&lt;?&gt; COUNT1       = create.field("count(*) x");
    +
    +// If you know a reasonable Java type for your field, you
    +// can also provide jOOQ with that type
    +Field&lt;Integer&gt; COUNT2 = create.field("count(*) y", Integer.class);
    +
    +       // Use plain SQL as select fields
    +create.select(LAST_NAME, COUNT1, COUNT2)
    +
    +       // Use plain SQL as aliased tables (be aware of syntax!)
    +      .from("t_author a")
    +      .join("t_book b")
    +
    +       // Use plain SQL for conditions both in JOIN and WHERE clauses
    +      .on("a.id = b.author_id")
    +
    +       // Bind a variable in plain SQL
    +      .where("b.title != ?", "Brida")
    +
    +       // Use plain SQL again as fields in GROUP BY and ORDER BY clauses
    +      .groupBy(LAST_NAME)
    +      .orderBy(LAST_NAME);</pre>
    +
    +							<p>There are some important things to keep in mind when using plain
    +								SQL: </p>
    +							<ul>
    +								
    +<li>jOOQ doesn't know what you're doing. You're on your own again!
    +								</li>
    +								
    +<li>You have to provide something that will be syntactically correct.
    +									If it's not, then jOOQ won't know. Only your JDBC driver or your
    +									RDBMS will detect the syntax error. </li>
    +								
    +<li>You have to provide consistency when you use variable binding. The
    +									number of ? must match the number of variables </li>
    +								
    +<li>Your SQL is inserted into jOOQ queries without further checks.
    +									Hence, jOOQ can't prevent SQL injection. </li>
    +							
    +</ul>
    +						<br><table width="100%" border="0" cellspacing="0" cellpadding="0">
    +<tr>
    +<td valign="top" align="left"><a href="<?=$root?>/manual/">The jOOQ User Manual</a> : <a href="<?=$root?>/manual/DSL/">DSL or fluent API. Where SQL meets Java</a> : <a href="<?=$root?>/manual/DSL/SQL/">When it's just easier: Plain SQL</a></td><td style="white-space: nowrap" valign="top" align="right"><a title="Previous section: Type casting" href="<?=$root?>/manual/DSL/CAST/">previous</a> : <a title="Next section: Advanced topics" href="<?=$root?>/manual/ADVANCED/">next</a></td>
    +</tr>
    +</table>
    +<?php 
    +}
    +?>
    +
    diff --git a/jOOQ-website/manual/DSL/TABLESOURCE/index.php b/jOOQ-website/manual/DSL/TABLESOURCE/index.php
    new file mode 100644
    index 00000000000..3473fd7a650
    --- /dev/null
    +++ b/jOOQ-website/manual/DSL/TABLESOURCE/index.php
    @@ -0,0 +1,106 @@
    +
    +<?php 
    +// The following content has been XSL transformed from manual.xml using html-pages.xsl
    +// Please do not edit this content manually
    +require '../../../frame.php';
    +function getH1() {
    +    return "Table sources";
    +}
    +function getActiveMenu() {
    +	return "manual";
    +}
    +function getSlogan() {
    +	return "
    +							When OLTP selects/updates/inserts/deletes records in single tables, OLAP is all about
    +							creating custom table sources or ad-hoc row types
    +						";
    +}
    +function printContent() {
    +    global $root;
    +?>
    +<table width="100%" border="0" cellspacing="0" cellpadding="0">
    +<tr>
    +<td valign="top" align="left"><a href="<?=$root?>/manual/">The jOOQ User Manual</a> : <a href="<?=$root?>/manual/DSL/">DSL or fluent API. Where SQL meets Java</a> : <a href="<?=$root?>/manual/DSL/TABLESOURCE/">Table sources</a></td><td style="white-space: nowrap" valign="top" align="right"><a title="Previous section: Complete SELECT syntax" href="<?=$root?>/manual/DSL/SELECT/">previous</a> : <a title="Next section: Conditions" href="<?=$root?>/manual/DSL/CONDITION/">next</a></td>
    +</tr>
    +</table>
    +							<h2>Create complex and nested table sources with jOOQ</h2>
    +							<p>
    +								In the <a href="http://en.wikipedia.org/wiki/Relational_model" title="The Relational Data Model">relational data model</a>,
    +								there are many operations performed on entities, i.e. tables in order to join them together
    +								before applying predicates, renaming operations and projections. Apart from the convenience
    +								methods for joining table sources in the
    +								<a href="<?=$root?>/manual/DSL/SELECT/" title="jOOQ Manual reference: Complete SELECT syntax">manual's section about the full SELECT syntax</a>,
    +								the <a href="http://www.jooq.org/javadoc/latest/org/jooq/Table.html" title="Internal API reference: org.jooq.Table">Table</a> type itself provides a
    +								rich API for creating joined table sources. See an extract of the Table API:
    +							</p>
    +<pre class="prettyprint lang-java">// These are the various supported JOIN clauses. These JOIN types
    +// are followed by an additional ON / ON KEY / USING clause
    +TableOnStep join(TableLike&lt;?&gt; table);
    +TableOnStep join(String sql);
    +TableOnStep join(String sql, Object... bindings);
    +
    +// All other JOIN types are equally overloaded with "String sql" convenience methods...
    +TableOnStep  leftOuterJoin(TableLike&lt;?&gt; table);
    +TableOnStep rightOuterJoin(TableLike&lt;?&gt; table);
    +TableOnStep  fullOuterJoin(TableLike&lt;?&gt; table);
    +
    +// These JOIN types don't take any additional clause
    +Table&lt;Record&gt;             crossJoin(TableLike&lt;?&gt; table);
    +Table&lt;Record&gt;           naturalJoin(TableLike&lt;?&gt; table);
    +Table&lt;Record&gt;  naturalLeftOuterJoin(TableLike&lt;?&gt; table);
    +Table&lt;Record&gt; naturalRightOuterJoin(TableLike&lt;?&gt; table);
    +
    +// Oracle and SQL Server also know PIVOT / UNPIVOT clauses for transforming a
    +// table into another one using a list of PIVOT values
    +PivotForStep pivot(Field&lt;?&gt;... aggregateFunctions);
    +PivotForStep pivot(Collection&lt;? extends Field&lt;?&gt;&gt; aggregateFunctions);
    +
    +// Relational division can be applied to a table, transforming it into a
    +// "quotient" using an intuitive syntax
    +DivideByOnStep divideBy(Table&lt;?&gt; divisor);</pre>
    +
    +							<p>
    +								The <a href="http://www.jooq.org/javadoc/latest/org/jooq/TableOnStep.html" title="Internal API reference: org.jooq.TableOnStep">TableOnStep</a> type
    +								contains methods for constructing the ON / ON KEY / USING clauses
    +							</p>
    +
    +<pre class="prettyprint lang-java">// The ON clause is the most widely used JOIN condition. Provide arbitrary conditions as arguments
    +TableOnConditionStep on(Condition... conditions);
    +TableOnConditionStep on(String sql);
    +TableOnConditionStep on(String sql, Object... bindings);
    +
    +// The USING clause is also part of the SQL standard. Use this if joined tables contain identical field names.
    +// The USING clause is simulated in databases that do not support it.
    +Table&lt;Record&gt; using(Field&lt;?&gt;... fields);
    +Table&lt;Record&gt; using(Collection&lt;? extends Field&lt;?&gt;&gt; fields);
    +
    +// The ON KEY clause is a "synthetic" clause that does not exist in any SQL dialect. jOOQ usually has all
    +// foreign key relationship information to dynamically render "ON [ condition ... ]" clauses
    +TableOnConditionStep onKey() throws DataAccessException;
    +TableOnConditionStep onKey(TableField&lt;?, ?&gt;... keyFields) throws DataAccessException;
    +TableOnConditionStep onKey(ForeignKey&lt;?, ?&gt; key);</pre>
    +
    +							<ul>
    +							
    +<li>
    +								For more details about the PIVOT clause, see the
    +								<a href="<?=$root?>/manual/ADVANCED/PIVOT/" title="jOOQ Manual reference: The Oracle 11g PIVOT clause">manual's section about the Oracle PIVOT syntax</a>
    +							
    +</li>
    +							
    +<li>
    +								For more details about the DIVIDE BY clause, see the
    +								<a href="<?=$root?>/manual/ADVANCED/DIVISION/" title="jOOQ Manual reference: jOOQ's relational division syntax">manual's section about the relational division syntax</a>
    +							
    +</li>
    +							
    +</ul>
    +						<br><table width="100%" border="0" cellspacing="0" cellpadding="0">
    +<tr>
    +<td valign="top" align="left"><a href="<?=$root?>/manual/">The jOOQ User Manual</a> : <a href="<?=$root?>/manual/DSL/">DSL or fluent API. Where SQL meets Java</a> : <a href="<?=$root?>/manual/DSL/TABLESOURCE/">Table sources</a></td><td style="white-space: nowrap" valign="top" align="right"><a title="Previous section: Complete SELECT syntax" href="<?=$root?>/manual/DSL/SELECT/">previous</a> : <a title="Next section: Conditions" href="<?=$root?>/manual/DSL/CONDITION/">next</a></td>
    +</tr>
    +</table>
    +<?php 
    +}
    +?>
    +
    diff --git a/jOOQ-website/manual/DSL/TABLESOURCES/index.php b/jOOQ-website/manual/DSL/TABLESOURCES/index.php
    new file mode 100644
    index 00000000000..0d5609af3c7
    --- /dev/null
    +++ b/jOOQ-website/manual/DSL/TABLESOURCES/index.php
    @@ -0,0 +1,92 @@
    +
    +<?php 
    +// The following content has been XSL transformed from manual.xml using html-pages.xsl
    +// Please do not edit this content manually
    +require '../../../frame.php';
    +function getH1() {
    +    return "Table sources";
    +}
    +function getActiveMenu() {
    +	return "manual";
    +}
    +function getSlogan() {
    +	return "
    +							When OLTP selects/updates/inserts/deletes records in single tables, OLAP is all about
    +							creating custom table sources or ad-hoc row types
    +						";
    +}
    +function printContent() {
    +    global $root;
    +?>
    +<table width="100%" border="0" cellspacing="0" cellpadding="0">
    +<tr>
    +<td valign="top" align="left"><a href="<?=$root?>/manual/">The jOOQ User Manual</a> : <a href="<?=$root?>/manual/DSL/">DSL or fluent API. Where SQL meets Java</a> : <a href="<?=$root?>/manual/DSL/TABLESOURCES/">Table sources</a></td><td style="white-space: nowrap" valign="top" align="right"><a title="Previous section: Complete SELECT syntax" href="<?=$root?>/manual/DSL/SELECT/">previous</a> : <a title="Next section: Conditions" href="<?=$root?>/manual/DSL/CONDITION/">next</a></td>
    +</tr>
    +</table>
    +							<h2>Create complex and nested table sources with jOOQ</h2>
    +							<p>
    +								In the <a href="http://en.wikipedia.org/wiki/Relational_model" title="The Relational Data Model">relational data model</a>,
    +								there are many operations performed on entities, i.e. tables in order to join them together
    +								before applying predicates, renaming operations and projections. Apart from the convenience
    +								methods for joining table sources in the
    +								<a href="<?=$root?>/manual/DSL/SELECT/" title="jOOQ Manual reference: Complete SELECT syntax">manual's section about the full SELECT syntax</a>,
    +								the <a href="https://github.com/lukaseder/jOOQ/blob/master/jOOQ/src/main/java/org/jooq/Table.java" title="Internal API reference: org.jooq.Table">Table</a> type itself provides a
    +								rich API for creating joined table sources. See an extract of the Table API:
    +							</p>
    +<pre class="prettyprint lang-java">// These are the various supported JOIN clauses. These JOIN types
    +// are followed by an additional ON / ON KEY / USING clause
    +TableOnStep join(TableLike&lt;?&gt; table);
    +TableOnStep join(String sql);
    +TableOnStep join(String sql, Object... bindings);
    +
    +// All other JOIN types are equally overloaded with "String sql" argument methods...
    +TableOnStep leftOuterJoin(TableLike&lt;?&gt; table);
    +TableOnStep rightOuterJoin(TableLike&lt;?&gt; table);
    +TableOnStep fullOuterJoin(TableLike&lt;?&gt; table);
    +
    +// These JOIN types don't take any additional clause
    +Table&lt;Record&gt; crossJoin(TableLike&lt;?&gt; table);
    +Table&lt;Record&gt; naturalJoin(TableLike&lt;?&gt; table);
    +Table&lt;Record&gt; naturalLeftOuterJoin(TableLike&lt;?&gt; table);
    +Table&lt;Record&gt; naturalRightOuterJoin(TableLike&lt;?&gt; table);
    +
    +// Oracle and SQL Server also know PIVOT / UNPIVOT clauses for transforming a
    +// table into another one using a list of PIVOT values
    +PivotForStep pivot(Field&lt;?&gt;... aggregateFunctions);
    +PivotForStep pivot(Collection&lt;? extends Field&lt;?&gt;&gt; aggregateFunctions);</pre>
    +
    +							<p>
    +								The <a href="https://github.com/lukaseder/jOOQ/blob/master/jOOQ/src/main/java/org/jooq/TableOnStep.java" title="Internal API reference: org.jooq.TableOnStep">TableOnStep</a> type
    +								contains methods for constructing the ON / ON KEY / USING clauses
    +							</p>
    +
    +<pre class="prettyprint lang-java">// The ON clause is the most widely used JOIN condition. Provide arbitrary conditions as arguments
    +TableOnConditionStep on(Condition... conditions);
    +TableOnConditionStep on(String sql);
    +TableOnConditionStep on(String sql, Object... bindings);
    +
    +// The USING clause is also part of the SQL standard. Use this if joined tables contain identical field names.
    +// The USING clause is simulated in databases that do not support it.
    +Table&lt;Record&gt; using(Field&lt;?&gt;... fields);
    +Table&lt;Record&gt; using(Collection&lt;? extends Field&lt;?&gt;&gt; fields);
    +
    +// The ON KEY clause is a "synthetic" clause that does not exist in any SQL dialect. jOOQ usually has all
    +// foreign key relationship information to dynamically render "ON [ condition ... ]" clauses
    +TableOnConditionStep onKey() throws DataAccessException;
    +TableOnConditionStep onKey(TableField&lt;?, ?&gt;... keyFields) throws DataAccessException;
    +TableOnConditionStep onKey(ForeignKey&lt;?, ?&gt; key);</pre>
    +
    +							<p>
    +								For more details about the PIVOT clause, see the
    +								<a href="<?=$root?>/manual/ADVANCED/PIVOT/" title="jOOQ Manual reference: The Oracle 11g PIVOT clause">manual's section about the Oracle PIVOT syntax</a>
    +							
    +</p>
    +						<br><table width="100%" border="0" cellspacing="0" cellpadding="0">
    +<tr>
    +<td valign="top" align="left"><a href="<?=$root?>/manual/">The jOOQ User Manual</a> : <a href="<?=$root?>/manual/DSL/">DSL or fluent API. Where SQL meets Java</a> : <a href="<?=$root?>/manual/DSL/TABLESOURCES/">Table sources</a></td><td style="white-space: nowrap" valign="top" align="right"><a title="Previous section: Complete SELECT syntax" href="<?=$root?>/manual/DSL/SELECT/">previous</a> : <a title="Next section: Conditions" href="<?=$root?>/manual/DSL/CONDITION/">next</a></td>
    +</tr>
    +</table>
    +<?php 
    +}
    +?>
    +
    diff --git a/jOOQ-website/manual/DSL/UNION/index.php b/jOOQ-website/manual/DSL/UNION/index.php
    new file mode 100644
    index 00000000000..bd0a0756e80
    --- /dev/null
    +++ b/jOOQ-website/manual/DSL/UNION/index.php
    @@ -0,0 +1,161 @@
    +
    +<?php 
    +// The following content has been XSL transformed from manual.xml using html-pages.xsl
    +// Please do not edit this content manually
    +require '../../../frame.php';
    +function getH1() {
    +    return "UNION and other set operations";
    +}
    +function getActiveMenu() {
    +	return "manual";
    +}
    +function getSlogan() {
    +	return "Unions, differences and intersections are vital set operations taken from set theory.";
    +}
    +function printContent() {
    +    global $root;
    +?>
    +<table width="100%" border="0" cellspacing="0" cellpadding="0">
    +<tr>
    +<td valign="top" align="left"><a href="<?=$root?>/manual/">The jOOQ User Manual</a> : <a href="<?=$root?>/manual/DSL/">DSL or fluent API. Where SQL meets Java</a> : <a href="<?=$root?>/manual/DSL/UNION/">UNION and other set operations</a></td><td style="white-space: nowrap" valign="top" align="right"><a title="Previous section: Other types of nested SELECT" href="<?=$root?>/manual/DSL/NESTED/">previous</a> : <a title="Next section: Functions and aggregate operators" href="<?=$root?>/manual/DSL/FUNCTIONS/">next</a></td>
    +</tr>
    +</table>
    +							<h2>jOOQ's set operation API</h2>
    +							<p>The
    +								<a href="http://www.jooq.org/javadoc/latest/org/jooq/Select.html" title="Internal API reference: org.jooq.Select">org.jooq.Select</a> API directly supports the UNION
    +								syntax for all types of Select as discussed in the manual's section about
    +								<a href="<?=$root?>/manual/JOOQ/Query/" title="jOOQ Manual reference: The Query and its various subtypes">Queries and Query subtypes</a>.
    +								It consists of these methods: </p>
    +
    +<pre class="prettyprint lang-java">public interface Select&lt;R extends Record&gt; {
    +    Select&lt;R&gt; union(Select&lt;R&gt; select);
    +    Select&lt;R&gt; unionAll(Select&lt;R&gt; select);
    +    Select&lt;R&gt; except(Select&lt;R&gt; select);
    +    Select&lt;R&gt; intersect(Select&lt;R&gt; select);
    +}</pre>
    +
    +							<p>Hence, this is how you can write a simple UNION with jOOQ:</p>
    +							<table cellspacing="0" cellpadding="0" width="100%">
    +<tr>
    +<td class="left" width="50%">
    +<pre class="prettyprint lang-sql">SELECT TITLE
    +  FROM T_BOOK
    + WHERE PUBLISHED_IN &gt; 1945
    +UNION
    +SELECT TITLE
    +  FROM T_BOOK
    + WHERE AUTHOR_ID = 1</pre>
    +</td><td class="right" width="50%">
    +<pre class="prettyprint lang-java">create.select(TBook.TITLE)
    +      .from(T_BOOK)
    +      .where(T_BOOK.PUBLISHED_IN.greaterThan(1945))
    +      .union(
    +create.select(T_BOOK.TITLE)
    +      .from(T_BOOK)
    +      .where(T_BOOK.AUTHOR_ID.equal(1)));</pre>
    +</td>
    +</tr>
    +</table>
    +
    +							<h2>Nested UNIONs</h2>
    +							<p>In some SQL dialects, you can arbitrarily nest UNIONs to several
    +								levels. Be aware, though, that SQLite, Derby and MySQL have serious
    +								syntax limitations. jOOQ tries to render correct UNION SQL statements,
    +								but unfortunately, you can create situations that will cause syntax
    +								errors in the aforementioned dialects. </p>
    +
    +							<p>An example of advanced UNION usage is the following statement in jOOQ: </p>
    +<pre class="prettyprint lang-java">// Create a UNION of several types of books
    +Select&lt;?&gt; union =
    +    create.select(T_BOOK.TITLE, T_BOOK.AUTHOR_ID).from(T_BOOK).where(T_BOOK.PUBLISHED_IN.greaterThan(1945)).union(
    +    create.select(T_BOOK.TITLE, T_BOOK.AUTHOR_ID).from(T_BOOK).where(T_BOOK.AUTHOR_ID.equal(1)));
    +
    +// Now, re-use the above UNION and order it by author
    +create.select(union.getField(T_BOOK.TITLE))
    +      .from(union)
    +      .orderBy(union.getField(T_BOOK.AUTHOR_ID).descending());</pre>
    +
    +							<p>This example does not seem surprising, when you have read the
    +								previous chapters about
    +								<a href="<?=$root?>/manual/DSL/NESTED/" title="jOOQ Manual reference: Other types of nested SELECT">nested SELECT statements</a>.
    +								But when you check
    +								out the rendered SQL: </p>
    +
    +<pre class="prettyprint lang-sql">-- alias_38173 is an example of a generated alias,
    +-- generated by jOOQ for union queries
    +SELECT alias_38173.TITLE FROM (
    +  SELECT T_BOOK.TITLE, T_BOOK.AUTHOR_ID FROM T_BOOK WHERE T_BOOK.PUBLISHED_IN &gt; 1945
    +  UNION
    +  SELECT T_BOOK.TITLE, T_BOOK.AUTHOR_ID FROM T_BOOK WHERE T_BOOK.AUTHOR_ID = 1
    +) alias_38173
    +ORDER BY alias_38173.AUTHOR_ID DESC</pre>
    +
    +							<p>You can see that jOOQ takes care of many syntax pitfalls, when
    +								you're not used to the various dialects' unique requirements. The
    +								above automatic aliasing was added in order to be compliant with
    +								MySQL's requirements about aliasing nested selects. </p>
    +
    +							<h2>Several UNIONs</h2>
    +							<p>It is no problem either for you to create SQL statements with several unions. Just write: </p>
    +<pre class="prettyprint lang-java">Select&lt;?&gt; part1;
    +Select&lt;?&gt; part2;
    +Select&lt;?&gt; part3;
    +Select&lt;?&gt; part4;
    +
    +// [...]
    +
    +part1.union(part2).union(part3).union(part4);</pre>
    +
    +							<h2>UNION and the ORDER BY clause</h2>
    +							<p>
    +								Strictly speaking, in SQL, you cannot order a subselect that is part
    +								of a UNION operation. You can only order the whole set. In set theory,
    +								or relational algebra, it wouldn't make sense to order subselects
    +								anyway, as a set operation cannot guarantee order correctness. Often,
    +								you still want to do it, because you apply a LIMIT to every subselect.
    +								Let's say, you want to find the employees with the highest salary in
    +								every department in Postgres syntax:
    +							</p>
    +							<table cellspacing="0" cellpadding="0" width="100%">
    +<tr>
    +<td class="left" width="50%">
    +<pre class="prettyprint lang-sql">SELECT * FROM (
    +  SELECT * FROM emp WHERE dept = 'IT'
    +  ORDER BY salary LIMIT 1
    +) UNION (
    +  SELECT * FROM emp WHERE dept = 'Marketing'
    +  ORDER BY salary LIMIT 1
    +) UNION (
    +  SELECT * FROM emp WHERE dept = 'R&amp;D'
    +  ORDER BY salary LIMIT 1
    +)</pre>
    +</td><td class="right" width="50%">
    +<pre class="prettyprint lang-java">create.selectFrom(EMP).where(DEPT.equal("IT"))
    +      .orderBy(SALARY).limit(1)
    +      .union(
    +create.selectFrom(EMP).where(DEPT.equal("Marketing"))
    +      .orderBy(SALARY).limit(1))
    +      .union(
    +create.selectFrom(EMP).where(DEPT.equal("R&amp;D")
    +      .orderBy(SALARY).limit(1)))
    +
    +
    +</pre>
    +</td>
    +</tr>
    +</table>
    +
    +							<p>There is a subtle difference between the above two queries.
    +								In SQL, every UNION subselect is in fact a
    +							<a href="<?=$root?>/manual/DSL/NESTED/" title="jOOQ Manual reference: Other types of nested SELECT">nested SELECT</a>, wrapped in parentheses.
    +							In this example, the notion of "nested SELECT" and "subselect" are slightly
    +							different.</p>
    +						<br><table width="100%" border="0" cellspacing="0" cellpadding="0">
    +<tr>
    +<td valign="top" align="left"><a href="<?=$root?>/manual/">The jOOQ User Manual</a> : <a href="<?=$root?>/manual/DSL/">DSL or fluent API. Where SQL meets Java</a> : <a href="<?=$root?>/manual/DSL/UNION/">UNION and other set operations</a></td><td style="white-space: nowrap" valign="top" align="right"><a title="Previous section: Other types of nested SELECT" href="<?=$root?>/manual/DSL/NESTED/">previous</a> : <a title="Next section: Functions and aggregate operators" href="<?=$root?>/manual/DSL/FUNCTIONS/">next</a></td>
    +</tr>
    +</table>
    +<?php 
    +}
    +?>
    +
    diff --git a/jOOQ-website/manual/DSL/index.php b/jOOQ-website/manual/DSL/index.php
    new file mode 100644
    index 00000000000..2ed8fdaf020
    --- /dev/null
    +++ b/jOOQ-website/manual/DSL/index.php
    @@ -0,0 +1,116 @@
    +
    +<?php 
    +// The following content has been XSL transformed from manual.xml using html-pages.xsl
    +// Please do not edit this content manually
    +require '../../frame.php';
    +function getH1() {
    +    return "DSL or fluent API. Where SQL meets Java";
    +}
    +function getActiveMenu() {
    +	return "manual";
    +}
    +function getSlogan() {
    +	return "
    +					In these sections you will learn about how jOOQ makes SQL available to
    +					Java as if Java natively supported SQL
    +				";
    +}
    +function printContent() {
    +    global $root;
    +?>
    +<table width="100%" border="0" cellspacing="0" cellpadding="0">
    +<tr>
    +<td valign="top" align="left"><a href="<?=$root?>/manual/">The jOOQ User Manual</a> : <a href="<?=$root?>/manual/DSL/">DSL or fluent API. Where SQL meets Java</a></td><td style="white-space: nowrap" valign="top" align="right"><a title="Previous section: Sequences" href="<?=$root?>/manual/META/SEQUENCE/">previous</a> : <a title="Next section: Complete SELECT syntax" href="<?=$root?>/manual/DSL/SELECT/">next</a></td>
    +</tr>
    +</table>
    +					<h2>Overview</h2>
    +					<p>jOOQ ships with its own DSL (or
    +						<a href="http://en.wikipedia.org/wiki/Domain-specific_language" title="Domain Specific Language">Domain Specific Language</a>) that
    +						simulates SQL as good as possible in Java. This means, that you can
    +						write SQL statements almost as if Java natively supported that syntax
    +						just like .NET's C# does with <a href="http://msdn.microsoft.com/en-us/library/bb425822.aspx">LINQ to SQL.</a>
    +</p>
    +
    +					<p>Here is an example to show you what that means. When you want to write a query like this in SQL: </p>
    +					<table cellspacing="0" cellpadding="0" width="100%">
    +<tr>
    +<td class="left" width="50%">
    +<pre class="prettyprint lang-sql">-- Select all books by authors born after 1920,
    +-- named "Paulo" from a catalogue:
    +SELECT *
    +  FROM t_author a
    +  JOIN t_book b ON a.id = b.author_id
    + WHERE a.year_of_birth &gt; 1920
    +   AND a.first_name = 'Paulo'
    + ORDER BY b.title</pre>
    +</td><td class="right" width="50%">
    +<pre class="prettyprint lang-java">Result&lt;Record&gt; result =
    +create.select()
    +      .from(T_AUTHOR.as("a"))
    +      .join(T_BOOK.as("b")).on(a.ID.equal(b.AUTHOR_ID))
    +      .where(a.YEAR_OF_BIRTH.greaterThan(1920)
    +      .and(a.FIRST_NAME.equal("Paulo")))
    +      .orderBy(b.TITLE)
    +      .fetch();</pre>
    +</td>
    +</tr>
    +</table>
    +
    +					<p>
    +						You couldn't come much closer to SQL itself in Java, without re-writing the compiler.
    +						We'll see how the aliasing works later in the section about
    +						<a href="<?=$root?>/manual/DSL/ALIAS/" title="jOOQ Manual reference: Aliased tables and fields">aliasing</a>
    +					
    +</p>
    +				<h3>Table of contents</h3><ol>
    +<li>
    +<a title="Complete SELECT syntax" href="<?=$root?>/manual/DSL/SELECT/">Complete SELECT syntax</a>
    +</li>
    +<li>
    +<a title="Table sources" href="<?=$root?>/manual/DSL/TABLESOURCE/">Table sources</a>
    +</li>
    +<li>
    +<a title="Conditions" href="<?=$root?>/manual/DSL/CONDITION/">Conditions</a>
    +</li>
    +<li>
    +<a title="Aliased tables and fields" href="<?=$root?>/manual/DSL/ALIAS/">Aliased tables and fields</a>
    +</li>
    +<li>
    +<a title="Nested SELECT using the IN operator" href="<?=$root?>/manual/DSL/IN/">Nested SELECT using the IN operator</a>
    +</li>
    +<li>
    +<a title="Nested SELECT using the EXISTS operator" href="<?=$root?>/manual/DSL/EXISTS/">Nested SELECT using the EXISTS operator</a>
    +</li>
    +<li>
    +<a title="Other types of nested SELECT" href="<?=$root?>/manual/DSL/NESTED/">Other types of nested SELECT</a>
    +</li>
    +<li>
    +<a title="UNION and other set operations" href="<?=$root?>/manual/DSL/UNION/">UNION and other set operations</a>
    +</li>
    +<li>
    +<a title="Functions and aggregate operators" href="<?=$root?>/manual/DSL/FUNCTIONS/">Functions and aggregate operators</a>
    +</li>
    +<li>
    +<a title="Stored procedures and functions" href="<?=$root?>/manual/DSL/PROCEDURES/">Stored procedures and functions</a>
    +</li>
    +<li>
    +<a title="Arithmetic operations and concatenation" href="<?=$root?>/manual/DSL/ARITHMETIC/">Arithmetic operations and concatenation</a>
    +</li>
    +<li>
    +<a title="The CASE clause" href="<?=$root?>/manual/DSL/CASE/">The CASE clause</a>
    +</li>
    +<li>
    +<a title="Type casting" href="<?=$root?>/manual/DSL/CAST/">Type casting</a>
    +</li>
    +<li>
    +<a title="When it's just easier: Plain SQL" href="<?=$root?>/manual/DSL/SQL/">When it's just easier: Plain SQL</a>
    +</li>
    +</ol><br><table width="100%" border="0" cellspacing="0" cellpadding="0">
    +<tr>
    +<td valign="top" align="left"><a href="<?=$root?>/manual/">The jOOQ User Manual</a> : <a href="<?=$root?>/manual/DSL/">DSL or fluent API. Where SQL meets Java</a></td><td style="white-space: nowrap" valign="top" align="right"><a title="Previous section: Sequences" href="<?=$root?>/manual/META/SEQUENCE/">previous</a> : <a title="Next section: Complete SELECT syntax" href="<?=$root?>/manual/DSL/SELECT/">next</a></td>
    +</tr>
    +</table>
    +<?php 
    +}
    +?>
    +
    diff --git a/jOOQ-website/manual/JOOQ/BindValues/index.php b/jOOQ-website/manual/JOOQ/BindValues/index.php
    new file mode 100644
    index 00000000000..501251fd122
    --- /dev/null
    +++ b/jOOQ-website/manual/JOOQ/BindValues/index.php
    @@ -0,0 +1,154 @@
    +
    +<?php 
    +// The following content has been XSL transformed from manual.xml using html-pages.xsl
    +// Please do not edit this content manually
    +require '../../../frame.php';
    +function getH1() {
    +    return "Bind values";
    +}
    +function getActiveMenu() {
    +	return "manual";
    +}
    +function getSlogan() {
    +	return "
    +							Variable binding has a great impact on how you design your SQL queries.
    +							It will influence your SQL queries' security aspect as well as execution speed.
    +						";
    +}
    +function printContent() {
    +    global $root;
    +?>
    +<table width="100%" border="0" cellspacing="0" cellpadding="0">
    +<tr>
    +<td valign="top" align="left"><a href="<?=$root?>/manual/">The jOOQ User Manual</a> : <a href="<?=$root?>/manual/JOOQ/">jOOQ classes and their usage</a> : <a href="<?=$root?>/manual/JOOQ/BindValues/">Bind values</a></td><td style="white-space: nowrap" valign="top" align="right"><a title="Previous section: ResultQuery and various ways of fetching data" href="<?=$root?>/manual/JOOQ/ResultQuery/">previous</a> : <a title="Next section: QueryParts and the global architecture" href="<?=$root?>/manual/JOOQ/QueryPart/">next</a></td>
    +</tr>
    +</table>
    +							<h2>Bind values</h2>
    +							<p>
    +								Bind values are used in SQL / JDBC for various reasons. Among the most
    +								obvious ones are:
    +							</p>
    +							<ul>
    +								
    +<li>
    +									Protection against SQL injection. Instead of inlining values
    +									possibly originating from user input, you bind those values to
    +									your prepared statement and let the JDBC driver / database take
    +									care of handling security aspects.
    +								</li>
    +								
    +<li>
    +									Increased speed. Advanced databases such as Oracle can keep
    +									execution plans of similar queries in a dedicated cache to prevent
    +									hard-parsing your query again and again. In many cases, the actual
    +									value of a bind variable does not influence the execution plan, hence
    +									it can be reused. Preparing a statement will thus be faster
    +								</li>
    +								
    +<li>
    +									On a JDBC level, you can also reuse the SQL string and prepared statement
    +									object instead of constructing it again, as you can bind new values to
    +									the prepared statement. This is currently not supported by jOOQ, though
    +								</li>
    +							
    +</ul>
    +
    +							<h3>Ways to introduce bind values with jOOQ</h3>
    +							<p>
    +								Bind values are omni-present in jOOQ. Whenever you create a condition,
    +								you're actually also adding a bind value:
    +							</p>
    +<pre class="prettyprint lang-java">// In jOOQ, "Poe" will be the bind value bound to the condition
    +LAST_NAME.equal("Poe");</pre>
    +
    +
    +							<p>
    +								The above notation is actually convenient way to explicitly create
    +								a bind value for "Poe". You could also write this, instead:
    +							</p>
    +<pre class="prettyprint lang-java">// The Factory allows for explicitly creating bind values
    +LAST_NAME.equal(Factory.val("Poe"));
    +
    +// Or, when static importing Factory.val:
    +LAST_NAME.equal(val("Poe"))</pre>
    +
    +							<p>
    +								Once created, bind values are part of the query's syntax tree (see
    +								<a href="<?=$root?>/manual/JOOQ/QueryPart/" title="jOOQ Manual reference: QueryParts and the global architecture">the manual's section about jOOQ's architecture</a>
    +							    for more information about jOOQ's internals),
    +								and cannot be modified directly anymore. If you wish to reuse a query and
    +								modify bind values between subsequent query executions, you can access them again
    +								through the <a href="http://www.jooq.org/javadoc/latest/org/jooq/Query.html" title="Internal API reference: org.jooq.Query">org.jooq.Query</a> interface:
    +							</p>
    +
    +<pre class="prettyprint lang-java">// Access the first bind value from a query. Indexes are counted from 1, just as with JDBC
    +Query query = create.select().from(T_AUTHOR).where(LAST_NAME.equal("Poe"));
    +Param&lt;?&gt; param = query.getParam("1");
    +
    +// You could now modify the Query's underlying bind value:
    +if ("Poe".equal(param.getValue())) {
    +    param.setConverted("Orwell");
    +}</pre>
    +
    +							<p>
    +								The <a href="http://www.jooq.org/javadoc/latest/org/jooq/Param.html" title="Internal API reference: org.jooq.Param">org.jooq.Param</a> type can also be named explicitly
    +								using the Factory's param() methods:
    +							</p>
    +<pre class="prettyprint lang-java">// Create a query with a named parameter. You can then use that name for accessing the parameter again
    +Query query1 = create.select().from(T_AUTHOR).where(LAST_NAME.equal(param("lastName", "Poe")));
    +Param&lt;?&gt; param1 = query.getParam("lastName");
    +
    +// Or, keep a reference to the typed parameter in order not to lose the &lt;T&gt; type information:
    +Param&lt;String&gt; param2 = param("lastName", "Poe");
    +Query query2 = create.select().from(T_AUTHOR).where(LAST_NAME.equal(param2));
    +
    +// You can now change the bind value directly on the Param reference:
    +param2.setValue("Orwell");
    +</pre>
    +
    +							<p>
    +								The <a href="http://www.jooq.org/javadoc/latest/org/jooq/Query.html" title="Internal API reference: org.jooq.Query">org.jooq.Query</a> interface also allows for
    +								setting new bind values directly, without accessing the Param type:
    +							</p>
    +
    +<pre class="prettyprint lang-java">Query query1 = create.select().from(T_AUTHOR).where(LAST_NAME.equal("Poe"));
    +query1.bind(1, "Orwell");
    +
    +// Or, with named parameters
    +Query query2 = create.select().from(T_AUTHOR).where(LAST_NAME.equal(param("lastName", "Poe")));
    +query2.bind("lastName", "Orwell");</pre>
    +
    +							<p>
    +								NOTE: Should you wish to use jOOQ only as a query builder and execute
    +								queries with another tool, such as Spring Data instead, you can also
    +								use the Factory's renderNamedParams() method, to actually render named
    +								parameter names in generated SQL:
    +							</p>
    +
    +							<table cellspacing="0" cellpadding="0" width="100%">
    +<tr>
    +<td class="left" width="50%">
    +<pre class="prettyprint lang-sql">-- The named bind variable can be rendered
    +
    +SELECT *
    +FROM T_AUTHOR
    +WHERE LAST_NAME = :lastName
    +</pre>
    +</td><td class="right" width="50%">
    +<pre class="prettyprint lang-java">create.renderNamedParams(
    +    create.select()
    +          .from(T_AUTHOR)
    +          .where(LAST_NAME.equal(
    +                 param("lastName", "Poe"))));</pre>
    +</td>
    +</tr>
    +</table>
    +						<br><table width="100%" border="0" cellspacing="0" cellpadding="0">
    +<tr>
    +<td valign="top" align="left"><a href="<?=$root?>/manual/">The jOOQ User Manual</a> : <a href="<?=$root?>/manual/JOOQ/">jOOQ classes and their usage</a> : <a href="<?=$root?>/manual/JOOQ/BindValues/">Bind values</a></td><td style="white-space: nowrap" valign="top" align="right"><a title="Previous section: ResultQuery and various ways of fetching data" href="<?=$root?>/manual/JOOQ/ResultQuery/">previous</a> : <a title="Next section: QueryParts and the global architecture" href="<?=$root?>/manual/JOOQ/QueryPart/">next</a></td>
    +</tr>
    +</table>
    +<?php 
    +}
    +?>
    +
    diff --git a/jOOQ-website/manual/JOOQ/ExampleDatabase/index.php b/jOOQ-website/manual/JOOQ/ExampleDatabase/index.php
    new file mode 100644
    index 00000000000..9ae73572665
    --- /dev/null
    +++ b/jOOQ-website/manual/JOOQ/ExampleDatabase/index.php
    @@ -0,0 +1,82 @@
    +
    +<?php 
    +// The following content has been XSL transformed from manual.xml using html-pages.xsl
    +// Please do not edit this content manually
    +require '../../../frame.php';
    +function getH1() {
    +    return "The example database";
    +}
    +function getActiveMenu() {
    +	return "manual";
    +}
    +function getSlogan() {
    +	return "
    +							For the examples in this manual, the same database will always be
    +							referred to. It essentially consists of these entities created using
    +							the Oracle dialect
    +						";
    +}
    +function printContent() {
    +    global $root;
    +?>
    +<table width="100%" border="0" cellspacing="0" cellpadding="0">
    +<tr>
    +<td valign="top" align="left"><a href="<?=$root?>/manual/">The jOOQ User Manual</a> : <a href="<?=$root?>/manual/JOOQ/">jOOQ classes and their usage</a> : <a href="<?=$root?>/manual/JOOQ/ExampleDatabase/">The example database</a></td><td style="white-space: nowrap" valign="top" align="right"><a title="Previous section: jOOQ classes and their usage" href="<?=$root?>/manual/JOOQ/">previous</a> : <a title="Next section: The Factory class" href="<?=$root?>/manual/JOOQ/Factory/">next</a></td>
    +</tr>
    +</table>
    +							<h2>Example CREATE TABLE statements</h2>
    +<pre class="prettyprint lang-sql">CREATE TABLE t_language (
    +  id NUMBER(7) NOT NULL PRIMARY KEY,
    +  cd CHAR(2) NOT NULL,
    +  description VARCHAR2(50)
    +)
    +
    +CREATE TABLE t_author (
    +  id NUMBER(7) NOT NULL PRIMARY KEY,
    +  first_name VARCHAR2(50),
    +  last_name VARCHAR2(50) NOT NULL,
    +  date_of_birth DATE,
    +  year_of_birth NUMBER(7)
    +)
    +
    +CREATE TABLE t_book (
    +  id NUMBER(7) NOT NULL PRIMARY KEY,
    +  author_id NUMBER(7) NOT NULL,
    +  title VARCHAR2(400) NOT NULL,
    +  published_in NUMBER(7) NOT NULL,
    +  language_id NUMBER(7) NOT NULL,
    +  FOREIGN KEY (AUTHOR_ID) REFERENCES T_AUTHOR(ID),
    +  FOREIGN KEY (LANGUAGE_ID) REFERENCES T_LANGUAGE(ID)
    +)
    +
    +CREATE TABLE t_book_store (
    +  name VARCHAR2(400) NOT NULL UNIQUE
    +)
    +
    +CREATE TABLE t_book_to_book_store (
    +  book_store_name VARCHAR2(400) NOT NULL,
    +  book_id INTEGER NOT NULL,
    +  stock INTEGER,
    +  PRIMARY KEY(book_store_name, book_id),
    +  CONSTRAINT b2bs_book_store_id
    +    FOREIGN KEY (book_store_name)
    +    REFERENCES t_book_store (name)
    +    ON DELETE CASCADE,
    +  CONSTRAINT b2bs_book_id
    +    FOREIGN KEY (book_id)
    +    REFERENCES t_book (id)
    +    ON DELETE CASCADE
    +)</pre>
    +							<p>
    +								More entities, types (e.g. UDT's, ARRAY types, ENUM types, etc),
    +								stored procedures and packages are introduced for specific examples
    +							</p>
    +						<br><table width="100%" border="0" cellspacing="0" cellpadding="0">
    +<tr>
    +<td valign="top" align="left"><a href="<?=$root?>/manual/">The jOOQ User Manual</a> : <a href="<?=$root?>/manual/JOOQ/">jOOQ classes and their usage</a> : <a href="<?=$root?>/manual/JOOQ/ExampleDatabase/">The example database</a></td><td style="white-space: nowrap" valign="top" align="right"><a title="Previous section: jOOQ classes and their usage" href="<?=$root?>/manual/JOOQ/">previous</a> : <a title="Next section: The Factory class" href="<?=$root?>/manual/JOOQ/Factory/">next</a></td>
    +</tr>
    +</table>
    +<?php 
    +}
    +?>
    +
    diff --git a/jOOQ-website/manual/JOOQ/Extend/index.php b/jOOQ-website/manual/JOOQ/Extend/index.php
    new file mode 100644
    index 00000000000..d2ce3950ef6
    --- /dev/null
    +++ b/jOOQ-website/manual/JOOQ/Extend/index.php
    @@ -0,0 +1,70 @@
    +
    +<?php 
    +// The following content has been XSL transformed from manual.xml using html-pages.xsl
    +// Please do not edit this content manually
    +require '../../../frame.php';
    +function getH1() {
    +    return "Extend jOOQ with custom types";
    +}
    +function getActiveMenu() {
    +	return "manual";
    +}
    +function getSlogan() {
    +	return "Maybe jOOQ is missing functionality that you would like to see,
    +							or you can't wait for the next release... In this case, you can extend
    +							any of the following open jOOQ implementation classes";
    +}
    +function printContent() {
    +    global $root;
    +?>
    +<table width="100%" border="0" cellspacing="0" cellpadding="0">
    +<tr>
    +<td valign="top" align="left"><a href="<?=$root?>/manual/">The jOOQ User Manual</a> : <a href="<?=$root?>/manual/JOOQ/">jOOQ classes and their usage</a> : <a href="<?=$root?>/manual/JOOQ/Extend/">Extend jOOQ with custom types</a></td><td style="white-space: nowrap" valign="top" align="right"><a title="Previous section: Serializability of QueryParts and Results" href="<?=$root?>/manual/JOOQ/Serializability/">previous</a> : <a title="Next section: Meta model code generation" href="<?=$root?>/manual/META/">next</a></td>
    +</tr>
    +</table>
    +							<h2>Write your own QueryPart implementations</h2>
    +							<p>If a SQL clause is too complex to express with jOOQ, you can extend
    +								either one of the following types for use directly in a jOOQ query:</p>
    +<pre class="prettyprint lang-java">public abstract class CustomField&lt;T&gt; extends AbstractField&lt;T&gt; {
    +  // [...]
    +}
    +public abstract class CustomCondition extends AbstractCondition {
    +  // [...]
    +}</pre>
    +
    +							<p>These two classes are declared public and covered by integration
    +								tests. When you extend these classes, you will have to provide your
    +								own implementations for the <a href="<?=$root?>/manual/JOOQ/QueryPart/" title="jOOQ Manual reference: QueryParts and the global architecture">QueryParts</a>'
    +								bind(<a href="http://www.jooq.org/javadoc/latest/org/jooq/BindContext.html" title="Internal API reference: org.jooq.BindContext">BindContext</a>) and
    +								toSQL(<a href="http://www.jooq.org/javadoc/latest/org/jooq/RenderContext.html" title="Internal API reference: org.jooq.RenderContext">RenderContext</a>) methods:</p>
    +<pre class="prettyprint lang-java">// This method must produce valid SQL. If your QueryPart contains other QueryParts, you may delegate SQL code generation to them
    +// in the correct order, passing the render context.
    +//
    +// If context.inline() is true, you must inline all bind variables
    +// If context.inline() is false, you must generate ? for your bind variables
    +public void toSQL(RenderContext context);
    +
    +// This method must bind all bind variables to a PreparedStatement. If your QueryPart contains other QueryParts, you may delegate
    +// variable binding to them in the correct order, passing the bind context.
    +//
    +// Every QueryPart must ensure, that it starts binding its variables at context.nextIndex().
    +public void bind(BindContext context) throws DataAccessException;</pre>
    +
    +							<p>The above contract may be a bit tricky to understand at first. The
    +								best thing is to check out jOOQ source code and have a look at a
    +								couple of QueryParts, to see how it's done.</p>
    +							<h2>Plain SQL as an alternative</h2>
    +							<p>If you don't need integration of rather complex QueryParts into
    +								jOOQ, then you might be safer using simple
    +								<a href="<?=$root?>/manual/DSL/SQL/" title="jOOQ Manual reference: When it's just easier: Plain SQL">Plain SQL</a> functionality,
    +								where you can provide jOOQ with a simple String representation of your
    +								embedded SQL. </p>
    +						<br><table width="100%" border="0" cellspacing="0" cellpadding="0">
    +<tr>
    +<td valign="top" align="left"><a href="<?=$root?>/manual/">The jOOQ User Manual</a> : <a href="<?=$root?>/manual/JOOQ/">jOOQ classes and their usage</a> : <a href="<?=$root?>/manual/JOOQ/Extend/">Extend jOOQ with custom types</a></td><td style="white-space: nowrap" valign="top" align="right"><a title="Previous section: Serializability of QueryParts and Results" href="<?=$root?>/manual/JOOQ/Serializability/">previous</a> : <a title="Next section: Meta model code generation" href="<?=$root?>/manual/META/">next</a></td>
    +</tr>
    +</table>
    +<?php 
    +}
    +?>
    +
    diff --git a/jOOQ-website/manual/JOOQ/Factory/index.php b/jOOQ-website/manual/JOOQ/Factory/index.php
    new file mode 100644
    index 00000000000..5f69c6e4ced
    --- /dev/null
    +++ b/jOOQ-website/manual/JOOQ/Factory/index.php
    @@ -0,0 +1,226 @@
    +
    +<?php 
    +// The following content has been XSL transformed from manual.xml using html-pages.xsl
    +// Please do not edit this content manually
    +require '../../../frame.php';
    +function getH1() {
    +    return "The Factory class";
    +}
    +function getActiveMenu() {
    +	return "manual";
    +}
    +function getSlogan() {
    +	return "
    +							jOOQ hides most implementation facts from you by letting you
    +							use the jOOQ Factory as a single entry point to all of the jOOQ API.
    +							This way, you can discover all of the API using syntax auto-completion, for
    +							instance.
    +						";
    +}
    +function printContent() {
    +    global $root;
    +?>
    +<table width="100%" border="0" cellspacing="0" cellpadding="0">
    +<tr>
    +<td valign="top" align="left"><a href="<?=$root?>/manual/">The jOOQ User Manual</a> : <a href="<?=$root?>/manual/JOOQ/">jOOQ classes and their usage</a> : <a href="<?=$root?>/manual/JOOQ/Factory/">The Factory class</a></td><td style="white-space: nowrap" valign="top" align="right"><a title="Previous section: The example database" href="<?=$root?>/manual/JOOQ/ExampleDatabase/">previous</a> : <a title="Next section: Tables and Fields" href="<?=$root?>/manual/JOOQ/Table/">next</a></td>
    +</tr>
    +</table>
    +							<h2>The Factory and the jOOQ API</h2>
    +							<p>
    +								jOOQ exposes a lot of interfaces and hides most implementation facts
    +								from client code. The reasons for this are:
    +							</p>
    +							<ul>
    +								
    +<li>Interface-driven design. This allows for modelling queries in a fluent API most efficiently</li>
    +								
    +<li>Reduction of complexity for client code.</li>
    +								
    +<li>API guarantee. You only depend on the exposed interfaces, not concrete (potentially dialect-specific) implementations.</li>
    +							
    +</ul>
    +							<p>
    +								The <a href="http://www.jooq.org/javadoc/latest/org/jooq/impl/Factory.html" title="Internal API reference: org.jooq.impl.Factory">org.jooq.impl.Factory</a>
    +								class is the main class from where you will create all jOOQ objects.
    +								The Factory implements <a href="http://www.jooq.org/javadoc/latest/org/jooq/Configuration.html" title="Internal API reference: org.jooq.Configuration">org.jooq.Configuration</a>
    +								and needs to be instanciated with the Configuration's properties:
    +							</p>
    +							<ul>
    +								
    +<li>
    +<a href="http://www.jooq.org/javadoc/latest/org/jooq/SQLDialect.html" title="Internal API reference: org.jooq.SQLDialect">org.jooq.SQLDialect</a> :
    +								The dialect of your database. This may be any of the currently
    +								supported database types</li>
    +								
    +<li>
    +<a href="http://download.oracle.com/javase/6/docs/api/java/sql/Connection.html" title="External API reference: java.sql.Connection">java.sql.Connection</a> :
    +								A JDBC Connection that will be re-used for the whole
    +    							lifecycle of your Factory</li>
    +    							
    +<li>
    +<a href="http://www.jooq.org/javadoc/latest/org/jooq/conf/Settings.html" title="Internal API reference: org.jooq.conf.Settings">org.jooq.conf.Settings</a> :
    +    							An optional runtime configuration.</li>
    +							
    +</ul>
    +							<p>If you are planning on using several RDBMS (= SQLDialects) or
    +								several distinct JDBC Connections in your software, this will mean
    +								that you have to create a new Factory every time. </p>
    +
    +							<h3>Factory settings</h3>
    +							<p>
    +								The jOOQ Factory allows for some optional configuration elements to be used by advanced users.
    +								The <a href="http://www.jooq.org/javadoc/latest/org/jooq/conf/Settings.html" title="Internal API reference: org.jooq.conf.Settings">Settings</a> class is a JAXB-annotated
    +								type, that can be provided to a Factory in several ways:
    +							</p>
    +							<ul>
    +								
    +<li>In the constructor. This will override default settings below</li>
    +								
    +<li>From a location specified by a JVM parameter: -Dorg.jooq.settings</li>
    +								
    +<li>From the classpath at /jooq-settings.xml</li>
    +								
    +<li>From the settings defaults, as specified in
    +								    <a href="http://www.jooq.org/xsd/jooq-runtime-2.1.0.xsd" title="The jOOQ Runtime configuration XSD">http://www.jooq.org/xsd/jooq-runtime-2.1.0.xsd</a>
    +								
    +</li>
    +							
    +</ul>
    +							<p>
    +								Subsequent sections of the manual contain some more in-depth explanations about these settings:
    +							</p>
    +							<ul>
    +								
    +<li>
    +     								
    +<a href="<?=$root?>/manual/ADVANCED/SchemaMapping/" title="jOOQ Manual reference: Mapping generated schemata and tables">Runtime schema and table mapping</a>
    +   								
    +</li>
    +     							
    +<li>
    +     								
    +<a href="<?=$root?>/manual/ADVANCED/ExecuteListener/" title="jOOQ Manual reference: Execute listeners and the jOOQ Console">Execute listeners and SQL tracing</a>
    +     							
    +</li>
    +   							
    +</ul>
    +							<p>
    +								Please refer to the jOOQ runtime configuration XSD for more details:<br>
    +								
    +<a href="http://www.jooq.org/xsd/jooq-runtime-2.1.0.xsd" title="The jOOQ Runtime configuration XSD">http://www.jooq.org/xsd/jooq-runtime-2.1.0.xsd</a>
    +							
    +</p>
    +
    +							<h3>Factory subclasses</h3>
    +							<p>
    +								There are a couple of subclasses for the general Factory. Each SQL
    +								dialect has its own dialect-specific factory. For instance, if you're
    +								only using the MySQL dialect, you can choose to create a new Factory
    +								using any of the following types:
    +							</p>
    +<pre class="prettyprint lang-java">// A general, dialect-unspecific factory
    +Factory create = new Factory(connection, SQLDialect.MYSQL);
    +
    +// A MySQL-specific factory
    +MySQLFactory create = new MySQLFactory(connection);</pre>
    +							<p>
    +								The advantage of using a dialect-specific Factory lies in the fact,
    +								that you have access to more proprietary RDMBS functionality. This may
    +								include:
    +							</p>
    +							<ul>
    +								
    +<li>Oracle's <a href="<?=$root?>/manual/ADVANCED/CONNECTBY/" title="jOOQ Manual reference: The Oracle CONNECT BY clause">CONNECT BY</a>
    +								    pseudo columns and functions</li>
    +    							
    +<li>MySQL's encryption functions</li>
    +    							
    +<li>PL/SQL constructs, pgplsql, or any other dialect's ROUTINE-language (maybe in the future)</li>
    +							
    +</ul>
    +							<p>
    +								Another type of Factory subclasses are each generated schema's
    +								factories. If you generate your schema TEST, then you will have access
    +								to a TestFactory. This will be useful in the future, when access to
    +								schema artefacts will be unified. Currently, this has no use.
    +							</p>
    +
    +							<h3>Static Factory methods</h3>
    +							<p>
    +								With jOOQ 2.0, static factory methods have been introduced in order to
    +								make your code look more like SQL. Ideally, when working with jOOQ, you
    +								will simply static import all methods from the Factory class:
    +							</p>
    +							<pre class="prettyprint lang-java">import static org.jooq.impl.Factory.*;</pre>
    +							<p>
    +								This will allow to access functions even more fluently:
    +							</p>
    +
    +<pre class="prettyprint lang-java">concat(trim(FIRST_NAME), trim(LAST_NAME));
    +// ... which is in fact the same as:
    +Factory.concat(Factory.trim(FIRST_NAME), Factory.trim(LAST_NAME));</pre>
    +							<p>
    +								Objects created statically from the Factory do not need a reference to
    +								any factory, as they can be constructed independently from your Configuration
    +								(connection, dialect, schema mapping). They will access that information at
    +								render / bind time. See
    +								<a href="<?=$root?>/manual/JOOQ/QueryPart/" title="jOOQ Manual reference: QueryParts and the global architecture">more details on the QueryParts' internals</a>
    +							
    +</p>
    +
    +							<h3>Potential problems</h3>
    +							<p>
    +								The jOOQ Factory expects its underlying
    +								<a href="http://download.oracle.com/javase/6/docs/api/java/sql/Connection.html" title="External API reference: java.sql.Connection">java.sql.Connection</a>
    +								to be <strong>open and ready</strong>
    +								for
    +								<a href="http://download.oracle.com/javase/6/docs/api/java/sql/PreparedStatement.html" title="External API reference: java.sql.PreparedStatement">java.sql.PreparedStatement</a>
    +								creation. You are responsible yourself for the
    +								lifecycle dependency between Factory and Connection. This means:
    +							</p>
    +							<ul>
    +								
    +<li>jOOQ will never close the Connection.</li>
    +								
    +<li>jOOQ will never commit or rollback on the Connection
    +									(Except for CSV-imports, if explicitly configured in the <a href="<?=$root?>/manual/ADVANCED/Import/" title="jOOQ Manual reference: Importing data from XML, CSV">Import API</a>)</li>
    +								
    +<li>jOOQ will never start any transactions.</li>
    +								
    +<li>
    +									jOOQ does not know the concept of a session as for instance
    +									<a href="http://docs.jboss.org/hibernate/core/3.6/reference/en-US/html/architecture.html#architecture-current-session">Hibernate</a>
    +								
    +</li>
    +								
    +<li>jOOQ does not know the concept of a second-level cache. SQL is
    +									executed directly on the underlying RDBMS.</li>
    +								
    +<li>jOOQ does not make assumptions about the origin of the Connection.
    +									If it is container managed, that is fine.</li>
    +							
    +</ul>
    +							<p>
    +								So if you want your queries to run in separate transactions, if you
    +								want to roll back a transaction, if you want to close a Connection and
    +								return it to your container, you will have to take care of that
    +								yourself. jOOQ's Factory will always expect its Connection to be in a
    +								ready state for creating new PreparedStatements. If it is not, you have
    +								to create a new Factory.
    +							</p>
    +							<p>
    +								Please keep in mind that many jOOQ objects will reference your Factory
    +								for their whole lifecycle. This is especially interesting, when dealing
    +								with <a href="<?=$root?>/manual/JOOQ/UpdatableRecord/" title="jOOQ Manual reference: Updatable Records">Updatable Records</a>,
    +								that can perform CRUD operations on the
    +								Factory's underlying Connection.
    +							</p>
    +						<br><table width="100%" border="0" cellspacing="0" cellpadding="0">
    +<tr>
    +<td valign="top" align="left"><a href="<?=$root?>/manual/">The jOOQ User Manual</a> : <a href="<?=$root?>/manual/JOOQ/">jOOQ classes and their usage</a> : <a href="<?=$root?>/manual/JOOQ/Factory/">The Factory class</a></td><td style="white-space: nowrap" valign="top" align="right"><a title="Previous section: The example database" href="<?=$root?>/manual/JOOQ/ExampleDatabase/">previous</a> : <a title="Next section: Tables and Fields" href="<?=$root?>/manual/JOOQ/Table/">next</a></td>
    +</tr>
    +</table>
    +<?php 
    +}
    +?>
    +
    diff --git a/jOOQ-website/manual/JOOQ/Query/index.php b/jOOQ-website/manual/JOOQ/Query/index.php
    new file mode 100644
    index 00000000000..9f6551e2a76
    --- /dev/null
    +++ b/jOOQ-website/manual/JOOQ/Query/index.php
    @@ -0,0 +1,446 @@
    +
    +<?php 
    +// The following content has been XSL transformed from manual.xml using html-pages.xsl
    +// Please do not edit this content manually
    +require '../../../frame.php';
    +function getH1() {
    +    return "The Query and its various subtypes";
    +}
    +function getActiveMenu() {
    +	return "manual";
    +}
    +function getSlogan() {
    +	return "
    +							The Query type hierarchy is what you use to execute queries. It has the
    +							following subtypes for each kind of operation
    +						";
    +}
    +function printContent() {
    +    global $root;
    +?>
    +<table width="100%" border="0" cellspacing="0" cellpadding="0">
    +<tr>
    +<td valign="top" align="left"><a href="<?=$root?>/manual/">The jOOQ User Manual</a> : <a href="<?=$root?>/manual/JOOQ/">jOOQ classes and their usage</a> : <a href="<?=$root?>/manual/JOOQ/Query/">The Query and its various subtypes</a></td><td style="white-space: nowrap" valign="top" align="right"><a title="Previous section: Updatable Records" href="<?=$root?>/manual/JOOQ/UpdatableRecord/">previous</a> : <a title="Next section: ResultQuery and various ways of fetching data" href="<?=$root?>/manual/JOOQ/ResultQuery/">next</a></td>
    +</tr>
    +</table>
    +							<h2>SELECT statements</h2>
    +							<p>
    +								There are essentially two ways of creating SELECT statements in jOOQ.
    +								For historical reasons, you can create
    +								<a href="http://www.jooq.org/javadoc/latest/org/jooq/SimpleSelectQuery.html" title="Internal API reference: org.jooq.SimpleSelectQuery">org.jooq.SimpleSelectQuery</a> or
    +								<a href="http://www.jooq.org/javadoc/latest/org/jooq/SelectQuery.html" title="Internal API reference: org.jooq.SelectQuery">org.jooq.SelectQuery</a>
    +								objects and add additional query clauses, such as
    +								<a href="http://www.jooq.org/javadoc/latest/org/jooq/Condition.html" title="Internal API reference: org.jooq.Condition">Conditions</a> or
    +								<a href="http://www.jooq.org/javadoc/latest/org/jooq/SortField.html" title="Internal API reference: org.jooq.SortField">SortFields</a> to it.
    +								Since jOOQ 1.3, there is also the possibility to
    +								create SELECT statements using jOOQ's
    +								<a href="<?=$root?>/manual/DSL/" title="jOOQ Manual reference: DSL or fluent API. Where SQL meets Java">DSL API</a> in a much more intuitive
    +								and SQL-like way.
    +							</p>
    +							<p>Use the DSL API when: </p>
    +							<ul>
    +								
    +<li>You want your code to look like SQL</li>
    +								
    +<li>You want your IDE to help you with auto-completion (you will not be able to write select .. order by .. where .. join or any of that stuff) </li>
    +							
    +</ul>
    +							<p>Use the regular API when: </p>
    +							<ul>
    +								
    +<li>You want to create your query step-by-step, creating query parts one-by-one</li>
    +							    
    +<li>You need to assemble your query from various places, passing the query around, adding new conditions and joins on the way </li>
    +							
    +</ul>
    +							<p>In any case, all API's will construct the same underlying
    +								implementation object, and in many cases, you can combine the two
    +								approaches. Let's check out the various SELECT statement types: </p>
    +
    +							<ul>
    +								
    +<li>
    +<a href="http://www.jooq.org/javadoc/latest/org/jooq/Select.html" title="Internal API reference: org.jooq.Select">org.jooq.Select</a>:
    +								    This Query subtype stands for a general type of SELECT statement.
    +								    It is also the main Select type for the
    +								    <a href="<?=$root?>/manual/DSL/" title="jOOQ Manual reference: DSL or fluent API. Where SQL meets Java">DSL API</a>. When executed, this object
    +								    will hold a <a href="<?=$root?>/manual/JOOQ/Result/" title="jOOQ Manual reference: Results and Records">Result containing the resulting Records</a>.
    +								    This type is further subtyped for the various uses of a SELECT statement as such:</li>
    +								
    +<li>
    +<a href="http://www.jooq.org/javadoc/latest/org/jooq/SimpleSelectQuery.html" title="Internal API reference: org.jooq.SimpleSelectQuery">org.jooq.SimpleSelectQuery</a>:
    +									This Query will allow for selecting from single physical Tables only.
    +									It therefore has access to the Table's generic type parameter
    +									&lt;R extends Record&gt; and will provide a matching Result&lt;R&gt;.
    +									This is especially useful if &lt;R&gt; is a subtype of
    +									<a href="<?=$root?>/manual/JOOQ/UpdatableRecord/" title="jOOQ Manual reference: Updatable Records">UpdatableRecord</a>.
    +									Then you will be able to perform updates on your result set immediately.</li>
    +								
    +<li>
    +<a href="http://www.jooq.org/javadoc/latest/org/jooq/SelectQuery.html" title="Internal API reference: org.jooq.SelectQuery">org.jooq.SelectQuery</a>:
    +									This Query will allow for selecting a subset of Fields from several
    +									Tables. Because the results of such a query are considered of an anonymous
    +									or ad-hoc type, this Query will bind &lt;R&gt; to the general type Record
    +									itself. The purpose of this Query type is to allow for full SQL support,
    +									including SELECT, JOIN and GROUP BY clauses. </li>
    +							
    +</ul>
    +
    +							<h3>Example: SQL query and DSL query</h3>
    +							<table cellspacing="0" cellpadding="0" width="100%">
    +<tr>
    +<td class="left" width="50%">
    +<pre class="prettyprint lang-sql">-- Select all books by authors born after 1920, named "Paulo"
    +-- from a catalogue consisting of authors and books:
    +
    +
    +SELECT *
    +  FROM t_author
    +  JOIN t_book
    +    ON t_author.id = t_book.author_id
    + WHERE t_author.year_of_birth &gt; 1920
    +   AND t_author.first_name = 'Paulo'
    + ORDER BY t_book.title</pre>
    +</td><td class="right" width="50%">
    +<pre class="prettyprint lang-java">// Instanciate your factory using a JDBC connection.
    +Factory create = new Factory(connection, SQLDialect.ORACLE);
    +
    +// Execute the query "on a single line"
    +Result&lt;Record&gt; result = create.select()
    +    .from(T_AUTHOR)
    +    .join(T_BOOK)
    +    .on(T_AUTHOR.ID.equal(T_BOOK.AUTHOR_ID))
    +    .where(T_AUTHOR.YEAR_OF_BIRTH.greaterThan(1920)
    +    .and(T_AUTHOR.FIRST_NAME.equal("Paulo")))
    +    .orderBy(T_BOOK.TITLE).fetch();</pre>
    +</td>
    +</tr>
    +</table>
    +
    +							<p>
    +								In the above example, some generated artefacts are used for querying.
    +								In this case, T_AUTHOR and T_BOOK are instances of types
    +								<a href="https://github.com/lukaseder/jOOQ/blob/master/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/tables/TAuthor.java" title="Internal API reference: org.jooq.test.oracle.generatedclasses.tables.TAuthor">TAuthor</a> and
    +								<a href="https://github.com/lukaseder/jOOQ/blob/master/jOOQ-test/src/org/jooq/test/oracle/generatedclasses/tables/TBook.java" title="Internal API reference: org.jooq.test.oracle.generatedclasses.tables.TBook">TBook</a> respectively.
    +								Their full qualification would read TAuthor.T_AUTHOR and TBook.T_BOOK, but in many cases,
    +								it's useful to static import elements involved with queries, in order to decrease verbosity:
    +								<pre class="prettyprint lang-java">import static com.example.jooq.Tables.*;</pre>
    +							
    +</p>
    +
    +							<p>
    +								Apart from the singleton Table instances TAuthor.T_AUTHOR and
    +								TBook.T_BOOK, these generated classes also contain one member
    +								for every physical field, such as TAuthor.ID or TBook.TAUTHOR_ID, etc.
    +								Depending on your configuration, those members can be static members
    +								(better for static imports) or instance members (better for aliasing)
    +							</p>
    +
    +							<ul>
    +								
    +<li>For more information about code generation, check out the manual's section about
    +									<a href="<?=$root?>/manual/META/" title="jOOQ Manual reference: Meta model code generation">Meta model source code generation</a>.</li>
    +    							
    +<li>For more DSL examples, please consider the manual's section about the
    +    								<a href="<?=$root?>/manual/DSL/" title="jOOQ Manual reference: DSL or fluent API. Where SQL meets Java">DSL API</a>.</li>
    +							
    +</ul>
    +
    +							<h3>Example: Non-DSL query</h3>
    +							<p>
    +								If you choose not to use the DSL API (for instance, because you don't
    +								want to add Query parts in the order SQL expects them), you can use
    +								this syntax:
    +							</p>
    +<pre class="prettyprint lang-java">// Re-use the factory to create a SelectQuery. This example will not make use of static imports...
    +SelectQuery q = create.selectQuery();
    +q.addFrom(T_AUTHOR);
    +
    +// This example shows some "mixed" API usage, where the JOIN is added with the standard API, and the
    +// Condition is created using the DSL API
    +q.addJoin(T_BOOK, T_AUTHOR.ID.equal(T_BOOK.AUTHOR_ID));
    +
    +// The AND operator between Conditions is implicit here
    +q.addConditions(T_AUTHOR.YEAR_OF_BIRTH.greaterThan(1920));
    +q.addConditions(T_AUTHOR.FIRST_NAME.equal("Paulo"));
    +q.addOrderBy(T_BOOK.TITLE);</pre>
    +
    +							<h3>Fetching data</h3>
    +							<p>
    +								The <a href="http://www.jooq.org/javadoc/latest/org/jooq/Select.html" title="Internal API reference: org.jooq.Select">org.jooq.Select</a> interface extends
    +								<a href="http://www.jooq.org/javadoc/latest/org/jooq/ResultQuery.html" title="Internal API reference: org.jooq.ResultQuery">org.jooq.ResultQuery</a>,
    +								which provides a range of methods to fetch data from the database.
    +								Once you have constructed your SELECT query (see examples above), you
    +								may choose to either simply execute() it, or use a variety of convenience
    +								fetchXXX() methods.
    +							</p>
    +							<p>
    +								See the manual's
    +								<a href="<?=$root?>/manual/JOOQ/ResultQuery/" title="jOOQ Manual reference: ResultQuery and various ways of fetching data">section on the ResultQuery</a>
    +								for more details.
    +							</p>
    +
    +
    +							<h2>INSERT Statements</h2>
    +							<p>jOOQ supports two modes for INSERT statements.
    +							The INSERT VALUES and the INSERT SELECT syntax</p>
    +
    +							<h3>Example: SQL query and DSL query</h3>
    +							<table cellspacing="0" cellpadding="0" width="100%">
    +<tr>
    +<td class="left" width="50%">
    +<pre class="prettyprint lang-sql">INSERT INTO T_AUTHOR
    +    (ID, FIRST_NAME, LAST_NAME)
    +VALUES
    +    (100, 'Hermann', 'Hesse'),
    +    (101, 'Alfred', 'D&ouml;blin');</pre>
    +</td><td class="right" width="50%">
    +<pre class="prettyprint lang-java">create.insertInto(T_AUTHOR,
    +        T_AUTHOR.ID, T_AUTHOR.FIRST_NAME, T_AUTHOR.LAST_NAME)
    +      .values(100, "Hermann", "Hesse")
    +      .values(101, "Alfred", "D&ouml;blin")
    +      .execute();</pre>
    +</td>
    +</tr>
    +</table>
    +
    +							<p>The DSL syntax tries to stay close to actual SQL. In detail,
    +								however, Java is limited in its possibilities. That's why the
    +								.values() clause is repeated for every record in multi-record inserts.
    +								Some RDBMS support
    +								inserting several records at the same time. This is also supported in
    +								jOOQ, and simulated using UNION clauses for those RDBMS that don't
    +								support this syntax.
    +								<pre class="prettyprint lang-sql">INSERT INTO .. SELECT .. UNION ALL SELECT ..</pre>
    +							
    +</p>
    +							<p>Note: Just like in SQL itself, you can have syntax errors when you
    +								don't have matching numbers of fields/values. Also, you can run into
    +								runtime problems, if your field/value types don't match. </p>
    +
    +							<h3>Example: DSL Query, alternative syntax</h3>
    +							<p>MySQL (and some other RDBMS) allow for using an UPDATE-like syntax
    +								for INSERT statements. This is also supported in jOOQ, should you
    +								prefer that syntax. The above INSERT statement can also be expressed
    +								as follows: </p>
    +<pre class="prettyprint lang-java">create.insertInto(T_AUTHOR)
    +      .set(T_AUTHOR.ID, 100)
    +      .set(T_AUTHOR.FIRST_NAME, "Hermann")
    +      .set(T_AUTHOR.LAST_NAME, "Hesse")
    +      .newRecord()
    +      .set(T_AUTHOR.ID, 101)
    +      .set(T_AUTHOR.FIRST_NAME, "Alfred")
    +      .set(T_AUTHOR.LAST_NAME, "D&ouml;blin")
    +      .execute();</pre>
    +							<p>As you can see, this syntax is a bit more verbose, but also more
    +								type-safe, as every field can be matched with its value.</p>
    +
    +							<h3>Example: ON DUPLICATE KEY UPDATE clause</h3>
    +							<p>The MySQL database supports a very convenient way to INSERT or
    +								UPDATE a record. This is a non-standard extension to the SQL syntax,
    +								which is supported by jOOQ and simulated in other RDBMS, where this is
    +								possible. Here is an example how to use the ON DUPLICATE KEY UPDATE
    +								clause: </p>
    +<pre class="prettyprint lang-java">// Add a new author called "Koontz" with ID 3.
    +// If that ID is already present, update the author's name
    +create.insertInto(T_AUTHOR, T_AUTHOR.ID, T_AUTHOR.LAST_NAME)
    +      .values(3, "Koontz")
    +      .onDuplicateKeyUpdate()
    +      .set(T_AUTHOR.LAST_NAME, "Koontz")
    +      .execute();</pre>
    +
    +      						<h3>Example: INSERT .. RETURNING clause</h3>
    +							<p>The Postgres database has native support for an INSERT .. RETURNING
    +								clause. This is a very powerful concept that is simulated for all
    +								other dialects using JDBC's
    +								<a href="http://download.oracle.com/javase/6/docs/api/java/sql/Statement.html#getGeneratedKeys()" title="External API reference: java.sql.Statement">getGeneratedKeys()</a>
    +								method. Take this example:</p>
    +
    +<pre class="prettyprint lang-java">// Add another author, with a generated ID
    +Record&lt;?&gt; record =
    +create.insertInto(T_AUTHOR, T_AUTHOR.FIRST_NAME, T_AUTHOR.LAST_NAME)
    +      .values("Charlotte", "Roche")
    +      .returning(T_AUTHOR.ID)
    +      .fetchOne();
    +
    +System.out.println(record.getValue(T_AUTHOR.ID));
    +
    +// For some RDBMS, this also works when inserting several values
    +// The following should return a 2x2 table
    +Result&lt;?&gt; result =
    +create.insertInto(T_AUTHOR, T_AUTHOR.FIRST_NAME, T_AUTHOR.LAST_NAME)
    +      .values("Johann Wolfgang", "von Goethe")
    +      .values("Friedrich", "Schiller")
    +      // You can request any field. Also trigger-generated values
    +      .returning(T_AUTHOR.ID, T_AUTHOR.CREATION_DATE)
    +      .fetch();</pre>
    +
    +      						<p>
    +      							Be aware though, that this can lead to race-conditions
    +      							in those databases that cannot properly return generated
    +      							ID values.
    +      						</p>
    +
    +      						<h3>Example: Non-DSL Query</h3>
    +      						<p>You can always use the more verbose regular syntax of the InsertQuery, if you need more control: </p>
    +<pre class="prettyprint lang-java">// Insert a new author into the T_AUTHOR table
    +InsertQuery&lt;TAuthorRecord&gt; i = create.insertQuery(T_AUTHOR);
    +i.addValue(T_AUTHOR.ID, 100);
    +i.addValue(T_AUTHOR.FIRST_NAME, "Hermann");
    +i.addValue(T_AUTHOR.LAST_NAME, "Hesse");
    +
    +i.newRecord();
    +i.addValue(T_AUTHOR.ID, 101);
    +i.addValue(T_AUTHOR.FIRST_NAME, "Alfred");
    +i.addValue(T_AUTHOR.LAST_NAME, "D&ouml;blin");
    +i.execute();</pre>
    +
    +							<h3>Example: INSERT Query combined with SELECT statements</h3>
    +							<p>The InsertQuery.addValue() method is overloaded, such that you can
    +								also provide a Field, potentially containing an expression: </p>
    +<pre class="prettyprint lang-java">// Insert a new author into the T_AUTHOR table
    +InsertQuery&lt;TAuthorRecord&gt; i = create.insertQuery(T_AUTHOR);
    +i.addValue(T_AUTHOR.ID, create.select(max(T_AUTHOR.ID).add(1)).from(T_AUTHOR).asField())
    +i.addValue(T_AUTHOR.FIRST_NAME, "Hermann");
    +i.addValue(T_AUTHOR.LAST_NAME, "Hesse");
    +i.execute();</pre>
    +							<p>Note that especially MySQL (and some other RDBMS) has some
    +								limitations regarding that syntax. You may not be able to
    +								select from the same table you're inserting into</p>
    +
    +							<h3>Example: INSERT SELECT syntax support</h3>
    +							<p>In some occasions, you may prefer the INSERT SELECT syntax, for instance, when
    +								you copy records from one table to another: </p>
    +<pre class="prettyprint lang-java">Insert i = create.insertInto(T_AUTHOR_ARCHIVE)
    +                 .select(create.selectFrom(T_AUTHOR).where(T_AUTHOR.DECEASED.isTrue()));
    +i.execute();</pre>
    +
    +
    +							<h2>UPDATE Statements</h2>
    +							<p>UPDATE statements are only possible on single tables. Support for
    +							multi-table updates will be implemented in the near future. </p>
    +
    +							<h3>Example: SQL query and DSL query</h3>
    +							<table cellspacing="0" cellpadding="0" width="100%">
    +<tr>
    +<td class="left" width="50%">
    +<pre class="prettyprint lang-sql">UPDATE T_AUTHOR
    +   SET FIRST_NAME = 'Hermann',
    +       LAST_NAME = 'Hesse'
    + WHERE ID = 3;
    + </pre>
    +</td><td class="right" width="50%">
    +<pre class="prettyprint lang-java">create.update(T_AUTHOR)
    +      .set(T_AUTHOR.FIRST_NAME, "Hermann")
    +      .set(T_AUTHOR.LAST_NAME, "Hesse")
    +      .where(T_AUTHOR.ID.equal(3))
    +      .execute();</pre>
    +</td>
    +</tr>
    +</table>
    +
    +							<h3>Example: Non-DSL Query</h3>
    +							<p>Using the <a href="http://www.jooq.org/javadoc/latest/org/jooq/UpdateQuery.html" title="Internal API reference: org.jooq.UpdateQuery">org.jooq.UpdateQuery</a> class,
    +							this is how you could express an UPDATE statement:</p>
    +<pre class="prettyprint lang-java">UpdateQuery&lt;TAuthorRecord&gt; u = create.updateQuery(T_AUTHOR);
    +u.addValue(T_AUTHOR.FIRST_NAME, "Hermann");
    +u.addValue(T_AUTHOR.FIRST_NAME, "Hesse");
    +u.addConditions(T_AUTHOR.ID.equal(3));
    +u.execute();</pre>
    +
    +
    +							<h2>DELETE Statements</h2>
    +							<p>DELETE statements are only possible on single tables. Support for
    +							multi-table deletes will be implemented in the near future. </p>
    +
    +							<h3>Example: SQL query and DSL query</h3>
    +							<table cellspacing="0" cellpadding="0" width="100%">
    +<tr>
    +<td class="left" width="50%">
    +<pre class="prettyprint lang-sql">DELETE T_AUTHOR
    + WHERE ID = 100;
    + </pre>
    +</td><td class="right" width="50%">
    +<pre class="prettyprint lang-java">create.delete(T_AUTHOR)
    +      .where(T_AUTHOR.ID.equal(100))
    +      .execute();</pre>
    +</td>
    +</tr>
    +</table>
    +
    +							<h3>Example: Non-DSL Query</h3>
    +							<p>Using the <a href="http://www.jooq.org/javadoc/latest/org/jooq/DeleteQuery.html" title="Internal API reference: org.jooq.DeleteQuery">org.jooq.DeleteQuery</a> class,
    +							this is how you could express a DELETE statement: </p>
    +<pre class="prettyprint lang-java">DeleteQuery&lt;TAuthorRecord&gt; d = create.deleteQuery(T_AUTHOR);
    +d.addConditions(T_AUTHOR.ID.equal(100));
    +d.execute();</pre>
    +
    +
    +							<h2>MERGE Statement</h2>
    +							<p>
    +								The MERGE statement is one of the most advanced standardised SQL
    +								constructs, which is supported by DB2, HSQLDB, Oracle, SQL Server and
    +								Sybase (MySQL has the similar INSERT .. ON DUPLICATE KEY UPDATE
    +								construct. H2's MERGE variant is currently not supported.)
    +							</p>
    +							<p>
    +								The point of the standard MERGE statement is to take a TARGET table, and
    +								merge (INSERT, UPDATE) data from a SOURCE table into it. DB2, Oracle,
    +								SQL Server and Sybase also allow for DELETING some data and for adding
    +								many additional clauses. With jOOQ 2.0.1, only Oracle's MERGE extensions are supported.
    +								Here is an example:
    +							</p>
    +
    +							<table cellspacing="0" cellpadding="0" width="100%">
    +<tr>
    +<td class="left" width="50%">
    +<pre class="prettyprint lang-sql">-- Check if there is already an author called 'Hitchcock'
    +-- If there is, rename him to John. If there isn't add him.
    +
    +MERGE INTO T_AUTHOR
    +USING (SELECT 1 FROM DUAL)
    +ON (LAST_NAME = 'Hitchcock')
    +WHEN MATCHED THEN UPDATE SET FIRST_NAME = 'John'
    +WHEN NOT MATCHED THEN INSERT (LAST_NAME)
    +                      VALUES ('Hitchcock')</pre>
    +</td><td class="right" width="50%">
    +<pre class="prettyprint lang-java">create.mergeInto(T_AUTHOR)
    +      .using(create().selectOne())
    +      .on(T_AUTHOR.LAST_NAME.equal("Hitchcock"))
    +      .whenMatchedThenUpdate()
    +      .set(T_AUTHOR.FIRST_NAME, "John")
    +      .whenNotMatchedThenInsert(T_AUTHOR.LAST_NAME)
    +      .values("Hitchcock")
    +      .execute();
    +
    +</pre>
    +</td>
    +</tr>
    +</table>
    +
    +
    +							<h2>TRUNCATE Statement</h2>
    +							<p>
    +								The syntax is trivial:
    +							</p>
    +
    +							<table cellspacing="0" cellpadding="0" width="100%">
    +<tr>
    +<td class="left" width="50%">
    +<pre class="prettyprint lang-sql">TRUNCATE TABLE T_AUTHOR;</pre>
    +</td><td class="right" width="50%">
    +<pre class="prettyprint lang-java">create.truncate(T_AUTHOR).execute();</pre>
    +</td>
    +</tr>
    +</table>
    +							<p>This is not supported by Ingres and SQLite. jOOQ will execute a DELETE FROM
    +								T_AUTHOR statement instead. </p>
    +						<br><table width="100%" border="0" cellspacing="0" cellpadding="0">
    +<tr>
    +<td valign="top" align="left"><a href="<?=$root?>/manual/">The jOOQ User Manual</a> : <a href="<?=$root?>/manual/JOOQ/">jOOQ classes and their usage</a> : <a href="<?=$root?>/manual/JOOQ/Query/">The Query and its various subtypes</a></td><td style="white-space: nowrap" valign="top" align="right"><a title="Previous section: Updatable Records" href="<?=$root?>/manual/JOOQ/UpdatableRecord/">previous</a> : <a title="Next section: ResultQuery and various ways of fetching data" href="<?=$root?>/manual/JOOQ/ResultQuery/">next</a></td>
    +</tr>
    +</table>
    +<?php 
    +}
    +?>
    +
    diff --git a/jOOQ-website/manual/JOOQ/QueryPart/index.php b/jOOQ-website/manual/JOOQ/QueryPart/index.php
    new file mode 100644
    index 00000000000..334dfe6bb07
    --- /dev/null
    +++ b/jOOQ-website/manual/JOOQ/QueryPart/index.php
    @@ -0,0 +1,109 @@
    +
    +<?php 
    +// The following content has been XSL transformed from manual.xml using html-pages.xsl
    +// Please do not edit this content manually
    +require '../../../frame.php';
    +function getH1() {
    +    return "QueryParts and the global architecture";
    +}
    +function getActiveMenu() {
    +	return "manual";
    +}
    +function getSlogan() {
    +	return "When constructing Query objects in jOOQ, everything is
    +							considered a QueryPart. The purpose of this quickly becomes clear when
    +							checking out the QueryPart API essentials";
    +}
    +function printContent() {
    +    global $root;
    +?>
    +<table width="100%" border="0" cellspacing="0" cellpadding="0">
    +<tr>
    +<td valign="top" align="left"><a href="<?=$root?>/manual/">The jOOQ User Manual</a> : <a href="<?=$root?>/manual/JOOQ/">jOOQ classes and their usage</a> : <a href="<?=$root?>/manual/JOOQ/QueryPart/">QueryParts and the global architecture</a></td><td style="white-space: nowrap" valign="top" align="right"><a title="Previous section: Bind values" href="<?=$root?>/manual/JOOQ/BindValues/">previous</a> : <a title="Next section: Serializability of QueryParts and Results" href="<?=$root?>/manual/JOOQ/Serializability/">next</a></td>
    +</tr>
    +</table>
    +							<h2>Everything is a QueryPart</h2>
    +							<p>
    +								A
    +								<a href="http://www.jooq.org/javadoc/latest/org/jooq/Query.html" title="Internal API reference: org.jooq.Query">org.jooq.Query</a>
    +								and all its contained objects is a
    +								<a href="http://www.jooq.org/javadoc/latest/org/jooq/QueryPart.html" title="Internal API reference: org.jooq.QueryPart">org.jooq.QueryPart</a>.
    +								QueryParts essentially provide this functionality:
    +							</p>
    +							<ul>
    +								
    +<li>they can render SQL using the toSQL(RenderContext) method</li>
    +								
    +<li>they can bind variables using the bind(BindContext) method</li>
    +							
    +</ul>
    +
    +							<p>Both of these methods are contained in jOOQ's internal API's
    +							   <a href="http://www.jooq.org/javadoc/latest/org/jooq/QueryPartInternal.html" title="Internal API reference: org.jooq.QueryPartInternal">org.jooq.QueryPartInternal</a>, which is
    +							   internally implemented by every QueryPart. QueryPart internals are best
    +							   illustrated with an example.</p>
    +
    +						   <h2>Example: CompareCondition</h2>
    +						   <p>A simple example can be provided by checking out jOOQ's internal
    +								representation of a
    +								<a href="http://www.jooq.org/javadoc/latest/org/jooq/impl/CompareCondition.html" title="Internal API reference: org.jooq.impl.CompareCondition">org.jooq.impl.CompareCondition</a>.
    +								It is used for any condition
    +								comparing two fields as for example the T_AUTHOR.ID = T_BOOK.AUTHOR_ID
    +								condition here: </p>
    +<pre class="prettyprint lang-sql">-- [...]
    +FROM T_AUTHOR
    +JOIN T_BOOK ON T_AUTHOR.ID = T_BOOK.AUTHOR_ID
    +-- [...]</pre>
    +
    +							<p>This is how jOOQ implements such a condition: </p>
    +
    +<pre class="prettyprint lang-java">@Override
    +public final void bind(BindContext context) throws SQLException {
    +    // The CompareCondition itself does not bind any variables.
    +    // But the two fields involved in the condition might do so...
    +    context.bind(field1).bind(field2);
    +}
    +
    +@Override
    +public final void toSQL(RenderContext context) {
    +    // The CompareCondition delegates rendering of the Fields to the Fields
    +    // themselves and connects them using the Condition's comparator operator:
    +    context.sql(field1)
    +           .sql(" ");
    +
    +    // If the second field is null, some convenience behaviour can be
    +    // implemented here
    +    if (field2.isNullLiteral()) {
    +        switch (comparator) {
    +            case EQUALS:
    +                context.sql("is null");
    +                break;
    +
    +            case NOT_EQUALS:
    +                context.sql("is not null");
    +                break;
    +
    +            default:
    +                throw new IllegalStateException("Cannot compare null with " + comparator);
    +        }
    +    }
    +
    +    // By default, also delegate the right hand side's SQL rendering to the
    +    // underlying field
    +    else {
    +        context.sql(comparator.toSQL())
    +               .sql(" ")
    +               .sql(field2);
    +    }
    +}
    +</pre>
    +							<p>For more complex examples, please refer to the codebase, directly</p>
    +						<br><table width="100%" border="0" cellspacing="0" cellpadding="0">
    +<tr>
    +<td valign="top" align="left"><a href="<?=$root?>/manual/">The jOOQ User Manual</a> : <a href="<?=$root?>/manual/JOOQ/">jOOQ classes and their usage</a> : <a href="<?=$root?>/manual/JOOQ/QueryPart/">QueryParts and the global architecture</a></td><td style="white-space: nowrap" valign="top" align="right"><a title="Previous section: Bind values" href="<?=$root?>/manual/JOOQ/BindValues/">previous</a> : <a title="Next section: Serializability of QueryParts and Results" href="<?=$root?>/manual/JOOQ/Serializability/">next</a></td>
    +</tr>
    +</table>
    +<?php 
    +}
    +?>
    +
    diff --git a/jOOQ-website/manual/JOOQ/Result/index.php b/jOOQ-website/manual/JOOQ/Result/index.php
    new file mode 100644
    index 00000000000..46428ee37e8
    --- /dev/null
    +++ b/jOOQ-website/manual/JOOQ/Result/index.php
    @@ -0,0 +1,114 @@
    +
    +<?php 
    +// The following content has been XSL transformed from manual.xml using html-pages.xsl
    +// Please do not edit this content manually
    +require '../../../frame.php';
    +function getH1() {
    +    return "Results and Records";
    +}
    +function getActiveMenu() {
    +	return "manual";
    +}
    +function getSlogan() {
    +	return "
    +							Results and their Records come into play, when SELECT statements are
    +							executed. There are various ways to fetch data from a jOOQ SELECT
    +							statement. Essentially, the query results are always provided in the
    +							Result API
    +						";
    +}
    +function printContent() {
    +    global $root;
    +?>
    +<table width="100%" border="0" cellspacing="0" cellpadding="0">
    +<tr>
    +<td valign="top" align="left"><a href="<?=$root?>/manual/">The jOOQ User Manual</a> : <a href="<?=$root?>/manual/JOOQ/">jOOQ classes and their usage</a> : <a href="<?=$root?>/manual/JOOQ/Result/">Results and Records</a></td><td style="white-space: nowrap" valign="top" align="right"><a title="Previous section: Tables and Fields" href="<?=$root?>/manual/JOOQ/Table/">previous</a> : <a title="Next section: Updatable Records" href="<?=$root?>/manual/JOOQ/UpdatableRecord/">next</a></td>
    +</tr>
    +</table>
    +							<h2>The Result</h2>
    +							<p>
    +								The
    +								<a href="http://www.jooq.org/javadoc/latest/org/jooq/Result.html" title="Internal API reference: org.jooq.Result">Result</a>&lt;R extends <a href="http://www.jooq.org/javadoc/latest/org/jooq/Record.html" title="Internal API reference: org.jooq.Record">Record</a>&gt;
    +								is essentially a wrapper for a List&lt;R extends Record&gt;
    +								providing
    +								many convenience methods for accessing single elements in
    +								the result
    +								set. Depending on the type of SELECT statement,
    +								&lt;R&gt; can be bound
    +								to a sub-type of Record, for instance to an
    +								<a href="http://www.jooq.org/javadoc/latest/org/jooq/UpdatableRecord.html" title="Internal API reference: org.jooq.UpdatableRecord">org.jooq.UpdatableRecord</a>.
    +								See the section on
    +								<a href="<?=$root?>/manual/JOOQ/UpdatableRecord/" title="jOOQ Manual reference: Updatable Records">Updatable Records</a>
    +								for further details.
    +							</p>
    +
    +							<h2>The Cursor</h2>
    +							<p>
    +								A similar object is the
    +								<a href="http://www.jooq.org/javadoc/latest/org/jooq/Cursor.html" title="Internal API reference: org.jooq.Cursor">Cursor</a>&lt;R extends Record&gt;.
    +								Unlike the Result, the cursor has not fetched all data from the database yet.
    +								This means, you save memory (and potentially speed), but you can only access
    +								data sequentially and you have to keep a JDBC ResultSet alive. Cursors behave
    +								very much like the <a href="http://download.oracle.com/javase/6/docs/api/java/util/Iterator.html" title="External API reference: java.util.Iterator">java.util.Iterator</a>,
    +								by providing a very simple API. Some sample methods are:
    +							</p>
    +<pre class="prettyprint lang-java">// Check whether there are any more records to be fetched
    +boolean hasNext() throws SQLException;
    +
    +// Fetch the next record from the underlying JDBC ResultSet
    +R fetchOne() throws SQLException;
    +
    +// Close the underlying JDBC ResultSet. Don't forget to call this, before disposing the Cursor.
    +void close() throws SQLException;</pre>
    +
    +							<h2>The Record</h2>
    +							<p>
    +								The Record itself holds all the data from your selected tuple. If it is
    +								a <a href="http://www.jooq.org/javadoc/latest/org/jooq/TableRecord.html" title="Internal API reference: org.jooq.TableRecord">org.jooq.TableRecord</a>, then it corresponds exactly to the type of one of your
    +								physical tables in your database. But any anonymous or ad-hoc tuple can
    +								be represented by the plain Record. A record mainly provides access to
    +								its data and adds convenience methods for data type conversion. These
    +								are the main access ways:
    +							</p>
    +<pre class="prettyprint lang-java">// If you can keep a reference of the selected field, then you can get the corresponding value type-safely
    +&lt;T&gt; T getValue(Field&lt;T&gt; field);
    +
    +// If you know the name of the selected field within the tuple,
    +// then you can get its value without any type information
    +Object getValue(String fieldName);
    +
    +// If you know the index of the selected field within the tuple,
    +// then you can get its value without any type information
    +Object getValue(int index);</pre>
    +							<p>
    +								In some cases, you will not be able to reference the selected Fields
    +								both when you create the SELECT statement and when you fetch data from
    +								Records. Then you might use field names or indexes, as with JDBC.
    +								However, of course, the type information will then be lost as well. If
    +								you know what type you want to get, you can always use the Record's
    +								convenience methods for type conversion, however. Some examples:
    +							</p>
    +<pre class="prettyprint lang-java">// These methods will try to convert a value to a BigDecimal.
    +// This will work for all numeric types and for CHAR/VARCHAR types, if they contain numeric values:
    +BigDecimal getValueAsBigDecimal(String fieldName);
    +BigDecimal getValueAsBigDecimal(int fieldIndex);
    +
    +// This method can perform arbitrary conversions
    +&lt;T&gt; T getValue(String fieldName, Class&lt;? extends T&gt; type);
    +&lt;T&gt; T getValue(int fieldIndex, Class&lt;? extends T&gt; type);</pre>
    +
    +							<p>
    +								For more information about the type conversions that are supported by
    +								jOOQ, read the Javadoc on
    +								<a href="http://www.jooq.org/javadoc/latest/org/jooq/tools/Convert.html" title="Internal API reference: org.jooq.tools.Convert">org.jooq.tools.Convert</a>
    +							
    +</p>
    +						<br><table width="100%" border="0" cellspacing="0" cellpadding="0">
    +<tr>
    +<td valign="top" align="left"><a href="<?=$root?>/manual/">The jOOQ User Manual</a> : <a href="<?=$root?>/manual/JOOQ/">jOOQ classes and their usage</a> : <a href="<?=$root?>/manual/JOOQ/Result/">Results and Records</a></td><td style="white-space: nowrap" valign="top" align="right"><a title="Previous section: Tables and Fields" href="<?=$root?>/manual/JOOQ/Table/">previous</a> : <a title="Next section: Updatable Records" href="<?=$root?>/manual/JOOQ/UpdatableRecord/">next</a></td>
    +</tr>
    +</table>
    +<?php 
    +}
    +?>
    +
    diff --git a/jOOQ-website/manual/JOOQ/ResultQuery/index.php b/jOOQ-website/manual/JOOQ/ResultQuery/index.php
    new file mode 100644
    index 00000000000..0e8a63ed49e
    --- /dev/null
    +++ b/jOOQ-website/manual/JOOQ/ResultQuery/index.php
    @@ -0,0 +1,112 @@
    +
    +<?php 
    +// The following content has been XSL transformed from manual.xml using html-pages.xsl
    +// Please do not edit this content manually
    +require '../../../frame.php';
    +function getH1() {
    +    return "ResultQuery and various ways of fetching data";
    +}
    +function getActiveMenu() {
    +	return "manual";
    +}
    +function getSlogan() {
    +	return "
    +							Various jOOQ query type extend the ResultQuery which provides many means of
    +							fetching data. In general, fetching means executing and returning some
    +							sort of result.
    +						";
    +}
    +function printContent() {
    +    global $root;
    +?>
    +<table width="100%" border="0" cellspacing="0" cellpadding="0">
    +<tr>
    +<td valign="top" align="left"><a href="<?=$root?>/manual/">The jOOQ User Manual</a> : <a href="<?=$root?>/manual/JOOQ/">jOOQ classes and their usage</a> : <a href="<?=$root?>/manual/JOOQ/ResultQuery/">ResultQuery and various ways of fetching data</a></td><td style="white-space: nowrap" valign="top" align="right"><a title="Previous section: The Query and its various subtypes" href="<?=$root?>/manual/JOOQ/Query/">previous</a> : <a title="Next section: Bind values" href="<?=$root?>/manual/JOOQ/BindValues/">next</a></td>
    +</tr>
    +</table>
    +							<h2>The ResultQuery provides many convenience methods</h2>
    +							<p>These methods allow for fetching a jOOQ Result or parts of it.</p>
    +
    +<pre class="prettyprint lang-java">// Fetch the whole result
    +Result&lt;R&gt; fetch();
    +
    +// Fetch a single field from the result
    +&lt;T&gt; List&lt;T&gt; fetch(Field&lt;T&gt; field);
    +    List&lt;?&gt; fetch(int fieldIndex);
    +&lt;T&gt; List&lt;T&gt; fetch(int fieldIndex, Class&lt;? extends T&gt; type);
    +    List&lt;?&gt; fetch(String fieldName);
    +&lt;T&gt; List&lt;T&gt; fetch(String fieldName, Class&lt;? extends T&gt; type);
    +
    +// Fetch the first Record
    +R fetchAny();
    +
    +// Fetch exactly one Record
    +R fetchOne();
    +
    +// Fetch a single field of exactly one Record
    +&lt;T&gt; T  fetchOne(Field&lt;T&gt; field);
    +Object fetchOne(int fieldIndex);
    +&lt;T&gt; T  fetchOne(int fieldIndex, Class&lt;? extends T&gt; type);
    +Object fetchOne(String fieldName);
    +&lt;T&gt; T  fetchOne(String fieldName, Class&lt;? extends T&gt; type);</pre>
    +
    +							<p>These methods transform the result into another form, if org.jooq.Result is not optimal</p>
    +
    +<pre class="prettyprint lang-java">// Fetch the resulting records as Maps
    +List&lt;Map&lt;String, Object&gt;&gt; fetchMaps();
    +     Map&lt;String, Object&gt;  fetchOneMap();
    +
    +// Fetch the result as a Map
    +&lt;K&gt;    Map&lt;K, R&gt; fetchMap(Field&lt;K&gt; key);
    +&lt;K, V&gt; Map&lt;K, V&gt; fetchMap(Field&lt;K&gt; key, Field&lt;V&gt; value);
    +
    +// Fetch the resulting records as arrays
    +Object[][] fetchArrays();
    +Object[]   fetchOneArray();
    +
    +// Fetch a single field as an array
    +&lt;T&gt;  T[] fetchArray(Field&lt;T&gt; field);
    +Object[] fetchArray(int fieldIndex);
    +&lt;T&gt;  T[] fetchArray(int fieldIndex, Class&lt;? extends T&gt; type);
    +Object[] fetchArray(String fieldName);
    +&lt;T&gt;  T[] fetchArray(String fieldName, Class&lt;? extends T&gt; type);</pre>
    +
    +							<p>These methods transform the result into a user-defined form, if org.jooq.Result is not optimal</p>
    +
    +<pre class="prettyprint lang-java">// Fetch the resulting records into a custom POJO
    +// type, which may or may not be JPA-annotated
    +// Use the generator's &lt;pojos&gt;true&lt;/pojos&gt; and &lt;jpaAnnotation&gt;true&lt;/jpaAnnotation&gt;
    +// configurations to generate such POJOs with jOOQ
    +&lt;E&gt; List&lt;E&gt; fetchInto(Class&lt;? extends E&gt; type);
    +
    +// Fetch the resulting records into a custom
    +// record handler, similar to how Spring JdbcTemplate's
    +// RowMapper or the Ollin Framework works.
    +&lt;H extends RecordHandler&lt;R&gt;&gt; H fetchInto(H handler);
    +
    +// These change the behaviour of fetching itself,
    +// especially, when not all data should be
    +// fetched at once
    +// ----------------------------------------------
    +
    +// Fetch a Cursor for lazy iteration
    +Cursor&lt;R&gt; fetchLazy();
    +
    +// Or a JDBC ResultSet, if you prefer that
    +ResultSet fetchResultSet();
    +
    +// Fetch data asynchronously and let client code
    +// decide, when the data must be available.
    +// This makes use of the java.util.concurrent API,
    +// Similar to how Avaj&eacute; Ebean works.
    +FutureResult&lt;R&gt; fetchLater();
    +FutureResult&lt;R&gt; fetchLater(ExecutorService executor);</pre>
    +						<br><table width="100%" border="0" cellspacing="0" cellpadding="0">
    +<tr>
    +<td valign="top" align="left"><a href="<?=$root?>/manual/">The jOOQ User Manual</a> : <a href="<?=$root?>/manual/JOOQ/">jOOQ classes and their usage</a> : <a href="<?=$root?>/manual/JOOQ/ResultQuery/">ResultQuery and various ways of fetching data</a></td><td style="white-space: nowrap" valign="top" align="right"><a title="Previous section: The Query and its various subtypes" href="<?=$root?>/manual/JOOQ/Query/">previous</a> : <a title="Next section: Bind values" href="<?=$root?>/manual/JOOQ/BindValues/">next</a></td>
    +</tr>
    +</table>
    +<?php 
    +}
    +?>
    +
    diff --git a/jOOQ-website/manual/JOOQ/Serializability/index.php b/jOOQ-website/manual/JOOQ/Serializability/index.php
    new file mode 100644
    index 00000000000..dd796194d00
    --- /dev/null
    +++ b/jOOQ-website/manual/JOOQ/Serializability/index.php
    @@ -0,0 +1,87 @@
    +
    +<?php 
    +// The following content has been XSL transformed from manual.xml using html-pages.xsl
    +// Please do not edit this content manually
    +require '../../../frame.php';
    +function getH1() {
    +    return "Serializability of QueryParts and Results";
    +}
    +function getActiveMenu() {
    +	return "manual";
    +}
    +function getSlogan() {
    +	return "Most of the jOOQ API implements the Serializable interface.
    +							This helps storing queries and partial queries in files, transferring
    +							queries or result data over TCP/IP, etc. ";
    +}
    +function printContent() {
    +    global $root;
    +?>
    +<table width="100%" border="0" cellspacing="0" cellpadding="0">
    +<tr>
    +<td valign="top" align="left"><a href="<?=$root?>/manual/">The jOOQ User Manual</a> : <a href="<?=$root?>/manual/JOOQ/">jOOQ classes and their usage</a> : <a href="<?=$root?>/manual/JOOQ/Serializability/">Serializability of QueryParts and Results</a></td><td style="white-space: nowrap" valign="top" align="right"><a title="Previous section: QueryParts and the global architecture" href="<?=$root?>/manual/JOOQ/QueryPart/">previous</a> : <a title="Next section: Extend jOOQ with custom types" href="<?=$root?>/manual/JOOQ/Extend/">next</a></td>
    +</tr>
    +</table>
    +							<h2>Attaching QueryParts</h2>
    +							<p>
    +								The only transient element in any jOOQ object is the
    +								<a href="<?=$root?>/manual/JOOQ/Factory/" title="jOOQ Manual reference: The Factory class">The Factory class</a>'s
    +								underlying
    +								<a href="http://download.oracle.com/javase/6/docs/api/java/sql/Connection.html" title="External API reference: java.sql.Connection">java.sql.Connection</a>. When you want to execute queries after
    +								de-serialisation, or when you want to store/refresh/delete
    +								<a href="<?=$root?>/manual/JOOQ/UpdatableRecord/" title="jOOQ Manual reference: Updatable Records">Updatable Records</a>,
    +								you will have to "import" or "re-attach" them to a Factory
    +							</p>
    +<pre class="prettyprint lang-java">// Deserialise a SELECT statement
    +ObjectInputStream in = new ObjectInputStream(...);
    +Select&lt;?&gt; select = (Select&lt;?&gt;) in.readObject();
    +
    +// This will throw a DetachedException:
    +select.execute();
    +
    +// In order to execute the above select, attach it first
    +Factory create = new Factory(connection, SQLDialect.ORACLE);
    +create.attach(select);</pre>
    +
    +
    +							<h2>Automatically attaching QueryParts</h2>
    +							<p>
    +								Note, this functionality is deprecated with jOOQ 2.1.0.
    +								Please use the <a href="<?=$root?>/manual/ADVANCED/ExecuteListener/" title="jOOQ Manual reference: Execute listeners and the jOOQ Console">ExecuteListener</a> API
    +								instead, to provide jOOQ queries with a
    +								<a href="http://download.oracle.com/javase/6/docs/api/java/sql/Connection.html" title="External API reference: java.sql.Connection">java.sql.Connection</a> before
    +								execution.
    +							</p>
    +							<p>In simple cases, you can register a ConfigurationProvider in jOOQ's ConfigurationRegistry</p>
    +<pre class="prettyprint lang-java">// Create your own custom ConfigurationProvider that will make
    +// your default Factory available to jOOQ
    +ConfigurationProvider provider = new CustomConfigurationProvider();
    +
    +// Statically register the provider to jOOQ's ConfigurationRegistry
    +ConfigurationRegistry.setProvider(provider);</pre>
    +
    +							<p>Once you have executed these steps, all subsequent deserialisations
    +								will try to access a Configuration (containing a JDBC Connection) from
    +								your ConfigurationProvider. This may be useful when </p>
    +							<ul>
    +								
    +<li>transporting jOOQ QueryParts or Records via TCP/IP, RMI, etc (e.g.
    +									between client and server), before immediately executing queries,
    +									storing UpdatableRecords</li>
    +								
    +<li>
    +									Using automatic mechanisms as known in
    +									<a href="http://wicket.apache.org/">Wicket</a>
    +								
    +</li>
    +							
    +</ul>
    +						<br><table width="100%" border="0" cellspacing="0" cellpadding="0">
    +<tr>
    +<td valign="top" align="left"><a href="<?=$root?>/manual/">The jOOQ User Manual</a> : <a href="<?=$root?>/manual/JOOQ/">jOOQ classes and their usage</a> : <a href="<?=$root?>/manual/JOOQ/Serializability/">Serializability of QueryParts and Results</a></td><td style="white-space: nowrap" valign="top" align="right"><a title="Previous section: QueryParts and the global architecture" href="<?=$root?>/manual/JOOQ/QueryPart/">previous</a> : <a title="Next section: Extend jOOQ with custom types" href="<?=$root?>/manual/JOOQ/Extend/">next</a></td>
    +</tr>
    +</table>
    +<?php 
    +}
    +?>
    +
    diff --git a/jOOQ-website/manual/JOOQ/Table/index.php b/jOOQ-website/manual/JOOQ/Table/index.php
    new file mode 100644
    index 00000000000..7c7285c206e
    --- /dev/null
    +++ b/jOOQ-website/manual/JOOQ/Table/index.php
    @@ -0,0 +1,153 @@
    +
    +<?php 
    +// The following content has been XSL transformed from manual.xml using html-pages.xsl
    +// Please do not edit this content manually
    +require '../../../frame.php';
    +function getH1() {
    +    return "Tables and Fields";
    +}
    +function getActiveMenu() {
    +	return "manual";
    +}
    +function getSlogan() {
    +	return "
    +							Tables and their Fields are probably the most important objects in
    +							jOOQ. Tables represent any entity in your underlying RDBMS, that holds
    +							data for selection, insertion, updates, and deletion. In other words,
    +							views are also considered tables by jOOQ.
    +						";
    +}
    +function printContent() {
    +    global $root;
    +?>
    +<table width="100%" border="0" cellspacing="0" cellpadding="0">
    +<tr>
    +<td valign="top" align="left"><a href="<?=$root?>/manual/">The jOOQ User Manual</a> : <a href="<?=$root?>/manual/JOOQ/">jOOQ classes and their usage</a> : <a href="<?=$root?>/manual/JOOQ/Table/">Tables and Fields</a></td><td style="white-space: nowrap" valign="top" align="right"><a title="Previous section: The Factory class" href="<?=$root?>/manual/JOOQ/Factory/">previous</a> : <a title="Next section: Results and Records" href="<?=$root?>/manual/JOOQ/Result/">next</a></td>
    +</tr>
    +</table>
    +							<h2>The Table</h2>
    +							<p>The formal definition of a <a href="http://www.jooq.org/javadoc/latest/org/jooq/Table.html" title="Internal API reference: org.jooq.Table">org.jooq.Table</a> starts with </p>
    +							<pre class="prettyprint lang-java">public interface Table&lt;R extends Record&gt; // [...]</pre>
    +							<p>
    +								This means that every table is associated with a subtype of the
    +								<a href="http://www.jooq.org/javadoc/latest/org/jooq/Record.html" title="Internal API reference: org.jooq.Record">org.jooq.Record</a>
    +								class (see also
    +								<a href="<?=$root?>/manual/JOOQ/Result/" title="jOOQ Manual reference: Results and Records">Results and Records</a>
    +								). For anonymous or ad-hoc tables,
    +								&lt;R&gt; will always bind to Record itself.
    +							</p>
    +							<p>
    +								Unlike in the
    +								<a href="http://download.oracle.com/javaee/6/tutorial/doc/gjitv.html" title="Tutorial about JPA CriteriaQuery">JPA CriteriaQuery API</a>,
    +								this generic type
    +								&lt;R&gt;
    +								is not given so much importance as far as
    +								type-safety is concerned.
    +								SQL itself is highly typesafe. You have
    +								incredible flexibility of creating anonymous or ad-hoc
    +								types and
    +								reusing them from
    +								<a href="<?=$root?>/manual/DSL/NESTED/" title="jOOQ Manual reference: Other types of nested SELECT">NESTED SELECT statements</a>
    +								or from many other
    +								use-cases. There is no way that this typesafety can be
    +								mapped to the Java world in a convenient way. If
    +								&lt;R&gt; would play a role as important
    +								as in JPA, jOOQ would suffer from the same verbosity, or inflexibility
    +								that JPA CriteriaQueries may have.
    +							</p>
    +
    +							<h2>The Field</h2>
    +							<p>The formal definition of a Field starts with </p>
    +							<pre class="prettyprint lang-java">public interface Field&lt;T&gt; // [...]</pre>
    +							<p>
    +								Fields are generically parameterised with a Java type
    +								&lt;T&gt;
    +								that reflects the closest match to the RDMBS's underlying datatype for that
    +								field. For instance, if you have a VARCHAR2 type Field in Oracle,
    +								&lt;T&gt;
    +								would bind to
    +								<a href="http://download.oracle.com/javase/6/docs/api/java/lang/String.html" title="External API reference: java.lang.String">java.lang.String</a>
    +								for that Field in jOOQ. Oracle's NUMBER(7) would
    +								let
    +								&lt;T&gt;
    +								bind to
    +								<a href="http://download.oracle.com/javase/6/docs/api/java/lang/Integer.html" title="External API reference: java.lang.Integer">java.lang.Integer</a>,
    +								etc. This generic type is useful for two purposes:
    +							</p>
    +							<ul>
    +								
    +<li>It allows you to write type safe queries. For instance, you cannot
    +									compare Field
    +									&lt;String&gt;
    +									with Field
    +									&lt;Integer&gt;</li>
    +
    +								
    +<li>It
    +									allows you to fetch correctly cast and converted values from
    +									your database result set. This is especially useful when &lt;T&gt; binds
    +									to
    +									advanced data types, such as
    +									<a href="<?=$root?>/manual/META/UDT/" title="jOOQ Manual reference: UDT's including ARRAY and ENUM types">UDT's, ARRAY or ENUM types</a>
    +									, where jOOQ
    +									does the difficult non-standardised JDBC data type conversions for you.
    +								</li>
    +							
    +</ul>
    +
    +							<h2>Fields and tables put into action</h2>
    +							<p>The Field itself is a very broad concept. Other tools, or databases
    +								refer to it as expression or column. When you just want to </p>
    +
    +							<pre class="prettyprint lang-sql">SELECT 1 FROM DUAL</pre>
    +							<p>
    +								Then 1 is considered a Field or more explicitly, a
    +								<a href="http://www.jooq.org/javadoc/latest/org/jooq/impl/Constant.html" title="Internal API reference: org.jooq.impl.Constant">org.jooq.impl.Constant</a>,
    +								which implements Field, and DUAL is considered a Table or more explicitly
    +								<a href="http://www.jooq.org/javadoc/latest/org/jooq/impl/Dual.html" title="Internal API reference: org.jooq.impl.Dual">org.jooq.impl.Dual</a>, which implements Table
    +							</p>
    +							<p>
    +								More advanced uses become clear quickly, when you do things like
    +							</p>
    +							<pre class="prettyprint lang-sql">SELECT 1 + 1 FROM DUAL</pre>
    +							<p>
    +								Where 1 + 1 itself is a Field or more explicitly, an
    +								<a href="http://www.jooq.org/javadoc/latest/org/jooq/impl/Expression.html" title="Internal API reference: org.jooq.impl.Expression">org.jooq.impl.Expression</a>
    +								joining two Constants together.
    +							</p>
    +							<p>
    +								See some details about how to create these queries in the
    +								<a href="<?=$root?>/manual/JOOQ/Query/" title="jOOQ Manual reference: The Query and its various subtypes">Query section</a> of the manual
    +							</p>
    +
    +							<h2>TableFields</h2>
    +							<p>
    +								A specific type of field is the
    +								<a href="http://www.jooq.org/javadoc/latest/org/jooq/TableField.html" title="Internal API reference: org.jooq.TableField">org.jooq.TableField</a>,
    +								which represents a physical
    +								Field in a physical Table. Both the
    +								TableField and its referenced Table
    +								know each other. The physical aspect
    +								of their nature is represented in
    +								jOOQ by
    +								<a href="<?=$root?>/manual/META/TABLE/" title="jOOQ Manual reference: Tables, views and their corresponding records">meta model code generation</a>,
    +								where every entity in your database
    +								schema will be generated into a
    +								corresponding Java class.
    +							</p>
    +							<p>
    +								TableFields join both &lt;R&gt; and &lt;T&gt; generic parameters into their specification:
    +							</p>
    +							<pre class="prettyprint lang-java">public interface TableField&lt;R extends Record, T&gt; // [...]</pre>
    +							<p>
    +								This can be used for additional type safety in the future, or by client code.
    +							</p>
    +						<br><table width="100%" border="0" cellspacing="0" cellpadding="0">
    +<tr>
    +<td valign="top" align="left"><a href="<?=$root?>/manual/">The jOOQ User Manual</a> : <a href="<?=$root?>/manual/JOOQ/">jOOQ classes and their usage</a> : <a href="<?=$root?>/manual/JOOQ/Table/">Tables and Fields</a></td><td style="white-space: nowrap" valign="top" align="right"><a title="Previous section: The Factory class" href="<?=$root?>/manual/JOOQ/Factory/">previous</a> : <a title="Next section: Results and Records" href="<?=$root?>/manual/JOOQ/Result/">next</a></td>
    +</tr>
    +</table>
    +<?php 
    +}
    +?>
    +
    diff --git a/jOOQ-website/manual/JOOQ/UpdatableRecord/index.php b/jOOQ-website/manual/JOOQ/UpdatableRecord/index.php
    new file mode 100644
    index 00000000000..f20d6fc8a81
    --- /dev/null
    +++ b/jOOQ-website/manual/JOOQ/UpdatableRecord/index.php
    @@ -0,0 +1,98 @@
    +
    +<?php 
    +// The following content has been XSL transformed from manual.xml using html-pages.xsl
    +// Please do not edit this content manually
    +require '../../../frame.php';
    +function getH1() {
    +    return "Updatable Records";
    +}
    +function getActiveMenu() {
    +	return "manual";
    +}
    +function getSlogan() {
    +	return "
    +							UpdatableRecords are a specific subtype of TableRecord that have
    +							primary key information associated with them.
    +						";
    +}
    +function printContent() {
    +    global $root;
    +?>
    +<table width="100%" border="0" cellspacing="0" cellpadding="0">
    +<tr>
    +<td valign="top" align="left"><a href="<?=$root?>/manual/">The jOOQ User Manual</a> : <a href="<?=$root?>/manual/JOOQ/">jOOQ classes and their usage</a> : <a href="<?=$root?>/manual/JOOQ/UpdatableRecord/">Updatable Records</a></td><td style="white-space: nowrap" valign="top" align="right"><a title="Previous section: Results and Records" href="<?=$root?>/manual/JOOQ/Result/">previous</a> : <a title="Next section: The Query and its various subtypes" href="<?=$root?>/manual/JOOQ/Query/">next</a></td>
    +</tr>
    +</table>
    +							<h2>CRUD Operations</h2>
    +							<p>As of jOOQ 1.5, the UpdatableRecord essentially contains three additional
    +							 methods <a href="http://de.wikipedia.org/wiki/CRUD">CRUD</a>
    +							 (Create Read Update Delete) operations: </p>
    +<pre class="prettyprint lang-java">// Store any changes made to this record to the database.
    +// The record executes an INSERT if the PRIMARY KEY is NULL or has been changed. Otherwise, an UPDATE is performed.
    +int store();
    +
    +// Deletes the record from the database.
    +int delete();
    +
    +// Reflects changes made in the database to this Record
    +void refresh();</pre>
    +							<p>An example lifecycle of a book can be implemented as such:</p>
    +<pre class="prettyprint lang-java">// Create a new record and insert it into the database
    +TBookRecord book = create.newRecord(T_BOOK);
    +book.setTitle("My first book");
    +book.store();
    +
    +// Update it with new values
    +book.setPublishedIn(2010);
    +book.store();
    +
    +// Delete it
    +book.delete();</pre>
    +							<p>These operations are very simple utilities. They do not
    +							reflect the functionality offered by <a href="http://www.hibernate.org/">Hibernate</a>
    +							or other persistence managers. </p>
    +
    +							<h2>Performing CRUD on non-updatable records</h2>
    +							<p>
    +								If the jOOQ code-generator cannot detect any PRIMARY KEY, or UNIQUE KEY
    +								on your tables, then the generated artefacts implement TableRecord,
    +								instead of UpdatableRecord. A TableRecord can perform the same CRUD
    +								operations as we have seen before, if you provide it with the necessary
    +								key fields. The API looks like this:
    +							</p>
    +
    +<pre class="prettyprint lang-java">// INSERT or UPDATE the record using the provided keys
    +int storeUsing(TableField&lt;R, ?&gt;... keys)
    +
    +// DELETE a record using the provided keys
    +int deleteUsing(TableField&lt;R, ?&gt;... keys);
    +
    +// Reflects changes made in the database to this Record
    +void refreshUsing(TableField&lt;R, ?&gt;... keys);</pre>
    +
    +							<p>
    +								This is useful if your RDBMS does not support referential constraints (e.g. MySQL's
    +								<a href="http://en.wikipedia.org/wiki/MyISAM">MyISAM</a>), or if you want to
    +								store records to an unconstrained view. An example lifecycle of a book without
    +								any keys can then be implemented as such:
    +							</p>
    +<pre class="prettyprint lang-java">// Create a new record and insert it into the database
    +TBookRecord book = create.newRecord(T_BOOK);
    +book.setTitle("My first book");
    +book.storeUsing(TBook.ID);
    +
    +// Update it with new values
    +book.setPublishedIn(2010);
    +book.storeUsing(TBook.ID);
    +
    +// Delete it
    +book.deleteUsing(TBook.ID);</pre>
    +						<br><table width="100%" border="0" cellspacing="0" cellpadding="0">
    +<tr>
    +<td valign="top" align="left"><a href="<?=$root?>/manual/">The jOOQ User Manual</a> : <a href="<?=$root?>/manual/JOOQ/">jOOQ classes and their usage</a> : <a href="<?=$root?>/manual/JOOQ/UpdatableRecord/">Updatable Records</a></td><td style="white-space: nowrap" valign="top" align="right"><a title="Previous section: Results and Records" href="<?=$root?>/manual/JOOQ/Result/">previous</a> : <a title="Next section: The Query and its various subtypes" href="<?=$root?>/manual/JOOQ/Query/">next</a></td>
    +</tr>
    +</table>
    +<?php 
    +}
    +?>
    +
    diff --git a/jOOQ-website/manual/JOOQ/index.php b/jOOQ-website/manual/JOOQ/index.php
    new file mode 100644
    index 00000000000..2f3db8590c8
    --- /dev/null
    +++ b/jOOQ-website/manual/JOOQ/index.php
    @@ -0,0 +1,91 @@
    +
    +<?php 
    +// The following content has been XSL transformed from manual.xml using html-pages.xsl
    +// Please do not edit this content manually
    +require '../../frame.php';
    +function getH1() {
    +    return "jOOQ classes and their usage";
    +}
    +function getActiveMenu() {
    +	return "manual";
    +}
    +function getSlogan() {
    +	return "
    +					In these sections, you will learn about how to use jOOQ object
    +					factories and the jOOQ query model, to express
    +					your SQL in jOOQ
    +				";
    +}
    +function printContent() {
    +    global $root;
    +?>
    +<table width="100%" border="0" cellspacing="0" cellpadding="0">
    +<tr>
    +<td valign="top" align="left"><a href="<?=$root?>/manual/">The jOOQ User Manual</a> : <a href="<?=$root?>/manual/JOOQ/">jOOQ classes and their usage</a></td><td style="white-space: nowrap" valign="top" align="right"><a title="Previous section: The jOOQ User Manual" href="<?=$root?>/manual/">previous</a> : <a title="Next section: The example database" href="<?=$root?>/manual/JOOQ/ExampleDatabase/">next</a></td>
    +</tr>
    +</table>
    +					<h2>Overview</h2>
    +					<p>jOOQ essentially has two packages:</p>
    +					<ul>
    +						
    +<li>org.jooq: the jOOQ API. Here you will find interfaces for all
    +							SQL concepts
    +						</li>
    +						
    +<li>org.jooq.impl: the jOOQ implementation and factories. Most
    +							implementation classes are package private, you can only access
    +							them using the <a href="<?=$root?>/manual/JOOQ/Factory/" title="jOOQ Manual reference: The Factory class">org.jooq.impl.Factory</a>
    +						
    +</li>
    +					
    +</ul>
    +					<p>
    +						This section is about the main jOOQ classes and the global
    +						architecture. Most of the time, however, you will be using the
    +						<a href="<?=$root?>/manual/DSL/" title="jOOQ Manual reference: DSL or fluent API. Where SQL meets Java">DSL or fluent API. Where SQL meets Java</a>
    +						in order to create queries
    +						the way you're used to in SQL
    +					</p>
    +				<h3>Table of contents</h3><ol>
    +<li>
    +<a title="The example database" href="<?=$root?>/manual/JOOQ/ExampleDatabase/">The example database</a>
    +</li>
    +<li>
    +<a title="The Factory class" href="<?=$root?>/manual/JOOQ/Factory/">The Factory class</a>
    +</li>
    +<li>
    +<a title="Tables and Fields" href="<?=$root?>/manual/JOOQ/Table/">Tables and Fields</a>
    +</li>
    +<li>
    +<a title="Results and Records" href="<?=$root?>/manual/JOOQ/Result/">Results and Records</a>
    +</li>
    +<li>
    +<a title="Updatable Records" href="<?=$root?>/manual/JOOQ/UpdatableRecord/">Updatable Records</a>
    +</li>
    +<li>
    +<a title="The Query and its various subtypes" href="<?=$root?>/manual/JOOQ/Query/">The Query and its various subtypes</a>
    +</li>
    +<li>
    +<a title="ResultQuery and various ways of fetching data" href="<?=$root?>/manual/JOOQ/ResultQuery/">ResultQuery and various ways of fetching data</a>
    +</li>
    +<li>
    +<a title="Bind values" href="<?=$root?>/manual/JOOQ/BindValues/">Bind values</a>
    +</li>
    +<li>
    +<a title="QueryParts and the global architecture" href="<?=$root?>/manual/JOOQ/QueryPart/">QueryParts and the global architecture</a>
    +</li>
    +<li>
    +<a title="Serializability of QueryParts and Results" href="<?=$root?>/manual/JOOQ/Serializability/">Serializability of QueryParts and Results</a>
    +</li>
    +<li>
    +<a title="Extend jOOQ with custom types" href="<?=$root?>/manual/JOOQ/Extend/">Extend jOOQ with custom types</a>
    +</li>
    +</ol><br><table width="100%" border="0" cellspacing="0" cellpadding="0">
    +<tr>
    +<td valign="top" align="left"><a href="<?=$root?>/manual/">The jOOQ User Manual</a> : <a href="<?=$root?>/manual/JOOQ/">jOOQ classes and their usage</a></td><td style="white-space: nowrap" valign="top" align="right"><a title="Previous section: The jOOQ User Manual" href="<?=$root?>/manual/">previous</a> : <a title="Next section: The example database" href="<?=$root?>/manual/JOOQ/ExampleDatabase/">next</a></td>
    +</tr>
    +</table>
    +<?php 
    +}
    +?>
    +
    diff --git a/jOOQ-website/manual/META/AdvancedConfiguration/index.php b/jOOQ-website/manual/META/AdvancedConfiguration/index.php
    new file mode 100644
    index 00000000000..da341c65548
    --- /dev/null
    +++ b/jOOQ-website/manual/META/AdvancedConfiguration/index.php
    @@ -0,0 +1,249 @@
    +
    +<?php 
    +// The following content has been XSL transformed from manual.xml using html-pages.xsl
    +// Please do not edit this content manually
    +require '../../../frame.php';
    +function getH1() {
    +    return "Advanced configuration of the generator";
    +}
    +function getActiveMenu() {
    +	return "manual";
    +}
    +function getSlogan() {
    +	return "jOOQ power users may want to fine-tune their source code generation settings. Here's how to do this";
    +}
    +function printContent() {
    +    global $root;
    +?>
    +<table width="100%" border="0" cellspacing="0" cellpadding="0">
    +<tr>
    +<td valign="top" align="left"><a href="<?=$root?>/manual/">The jOOQ User Manual</a> : <a href="<?=$root?>/manual/META/">Meta model code generation</a> : <a href="<?=$root?>/manual/META/AdvancedConfiguration/">Advanced configuration of the generator</a></td><td style="white-space: nowrap" valign="top" align="right"><a title="Previous section: Configuration and setup of the generator" href="<?=$root?>/manual/META/Configuration/">previous</a> : <a title="Next section: The schema, top-level generated artefact" href="<?=$root?>/manual/META/SCHEMA/">next</a></td>
    +</tr>
    +</table>
    +							<h2>Code generation</h2>
    +							<p>
    +								In the <a href="<?=$root?>/manual/META/Configuration/" title="jOOQ Manual reference: Configuration and setup of the generator">previous section</a>
    +								we have seen how jOOQ's source code generator is configured and
    +								run within a few steps. In this chapter we'll treat some advanced
    +								settings
    +							</p>
    +
    +<pre class="prettyprint lang-xml">&lt;!-- These properties can be added directly to the generator element: --&gt;
    +&lt;generator&gt;
    +  &lt;!-- The default code generator. You can override this one, to generate your own code style
    +       Defaults to org.jooq.util.DefaultGenerator --&gt;
    +  &lt;name&gt;org.jooq.util.DefaultGenerator&lt;/name&gt;
    +
    +  &lt;!-- The naming strategy used for class and field names.
    +       You may override this with your custom naming strategy. Some examples follow
    +       Defaults to org.jooq.util.DefaultGeneratorStrategy --&gt;
    +  &lt;strategy&gt;
    +    &lt;name&gt;org.jooq.util.DefaultGeneratorStrategy&lt;/name&gt;
    +  &lt;/strategy&gt;
    +&lt;/generator&gt;</pre>
    +
    +							<p>
    +								The following example shows how you can override the
    +								DefaultGeneratorStrategy to render table and column names the way
    +								they are defined in the database, rather than switching them to
    +								camel case:
    +							</p>
    +
    +<pre class="prettyprint lang-java">/**
    + * It is recommended that you extend the DefaultGeneratorStrategy. Most of the
    + * GeneratorStrategy API is already declared final. You only need to override any
    + * of the following methods, for whatever generation behaviour you'd like to achieve
    + *
    + * Beware that most methods also receive a "Mode" object, to tell you whether a
    + * TableDefinition is being rendered as a Table, Record, POJO, etc. Depending on
    + * that information, you can add a suffix only for TableRecords, not for Tables
    + */
    +public class AsInDatabaseStrategy extends DefaultGeneratorStrategy {
    +
    +    /**
    +     * Override this to specifiy what identifiers in Java should look like.
    +     * This will just take the identifier as defined in the database.
    +     */
    +    @Override
    +    public String getJavaIdentifier(Definition definition) {
    +        return definition.getOutputName();
    +    }
    +
    +    /**
    +     * Override these to specify what a setter in Java should look like. Setters
    +     * are used in TableRecords, UDTRecords, and POJOs. This example will name
    +     * setters "set[NAME_IN_DATABASE]"
    +     */
    +    @Override
    +    public String getJavaSetterName(Definition definition, Mode mode) {
    +        return "set" + definition.getOutputName();
    +    }
    +
    +    /**
    +     * Just like setters...
    +     */
    +    @Override
    +    public String getJavaGetterName(Definition definition, Mode mode) {
    +        return "get" + definition.getOutputName();
    +    }
    +
    +    /**
    +     * Override this method to define what a Java method generated from a database
    +     * Definition should look like. This is used mostly for convenience methods
    +     * when calling stored procedures and functions. This example shows how to
    +     * set a prefix to a CamelCase version of your procedure
    +     */
    +    @Override
    +    public String getJavaMethodName(Definition definition, Mode mode) {
    +        return "call" + org.jooq.tools.StringUtils.toCamelCase(definition.getOutputName());
    +    }
    +
    +    /**
    +     * Override this method to define how your Java classes and Java files should
    +     * be named. This example applies no custom setting and uses CamelCase versions
    +     * instead
    +     */
    +    @Override
    +    public String getJavaClassName(Definition definition, Mode mode) {
    +        return super.getJavaClassName(definition, mode);
    +    }
    +
    +    /**
    +     * Override this method to re-define the package names of your generated
    +     * artefacts.
    +     */
    +    @Override
    +    public String getJavaPackageName(Definition definition, Mode mode) {
    +        return super.getJavaPackageName(definition, mode);
    +    }
    +
    +    /**
    +     * Override this method to define how Java members should be named. This is
    +     * used for POJOs and method arguments
    +     */
    +    @Override
    +    public String getJavaMemberName(Definition definition, Mode mode) {
    +        return definition.getOutputName();
    +    }
    +}</pre>
    +
    +                            <h3>jooq-meta configuration</h3>
    +							<p>
    +								Within the &lt;generator/&gt; element, there are other configuration elements:
    +							</p>
    +
    +<pre class="prettyprint lang-xml">&lt;!-- These properties can be added to the database element: --&gt;
    +&lt;database&gt;
    +  &lt;!-- Generate java.sql.Timestamp fields for DATE columns. This is
    +       particularly useful for Oracle databases.
    +       Defaults to false --&gt;
    +  &lt;dateAsTimestamp&gt;false&lt;/dateAsTimestamp&gt;
    +
    +  &lt;!-- Generate jOOU data types for your unsigned data types, which are
    +       not natively supported in Java.
    +       Defaults to true --&gt;
    +  &lt;unsignedTypes&gt;true&lt;/unsignedTypes&gt;
    +
    +  &lt;!-- The schema that is used in generated source code. This will be the
    +       production schema. Use this to override your local development
    +       schema name for source code generation. If not specified, this
    +       will be the same as the input-schema. --&gt;
    +  &lt;outputSchema&gt;[your database schema / owner / name]&lt;/outputSchema&gt;
    +
    +  &lt;!-- A configuration element to configure several input and/or output
    +       schemata for jooq-meta, in case you're using jooq-meta in a multi-
    +       schema environment.
    +       This cannot be combined with the above inputSchema / outputSchema --&gt;
    +  &lt;schemata&gt;
    +    &lt;schema&gt;
    +      &lt;inputSchema&gt;...&lt;/inputSchema&gt;
    +      &lt;outputSchema&gt;...&lt;/outputSchema&gt;
    +    &lt;/schema&gt;
    +    [ &lt;schema&gt;...&lt;/schema&gt; ... ]
    +  &lt;/schemata&gt;
    +
    +  &lt;!-- A configuration element to configure master data table enum classes --&gt;
    +  &lt;masterDataTables&gt;...&lt;/masterDataTables&gt;
    +
    +  &lt;!-- A configuration element to configure custom data types --&gt;
    +  &lt;customTypes&gt;...&lt;/customTypes&gt;
    +
    +  &lt;!-- A configuration element to configure type overrides for generated
    +       artefacts (e.g. in combination with customTypes) --&gt;
    +  &lt;forcedTypes&gt;...&lt;/forcedTypes&gt;
    +&lt;/database&gt;</pre>
    +
    +							<p>
    +								Check out the some of the manual's "advanced" sections
    +								to find out more about the advanced configuration parameters.
    +							</p>
    +							<ul>
    +								
    +<li>
    +<a href="<?=$root?>/manual/ADVANCED/SchemaMapping/" title="jOOQ Manual reference: Mapping generated schemata and tables">Schema mapping</a>
    +</li>
    +								
    +<li>
    +<a href="<?=$root?>/manual/ADVANCED/MasterData/" title="jOOQ Manual reference: Master data generation. Enumeration tables">Master data types</a>
    +</li>
    +								
    +<li>
    +<a href="<?=$root?>/manual/ADVANCED/CustomTypes/" title="jOOQ Manual reference: Custom data types and type conversion">Custom types</a>
    +</li>
    +							
    +</ul>
    +
    +							<h3>jooq-codegen configuration</h3>
    +                            <p>Also, you can add some optional advanced configuration parameters for the generator: </p>
    +
    +<pre class="prettyprint lang-xml">&lt;!-- These properties can be added to the generate element: --&gt;
    +&lt;generate&gt;
    +  &lt;!-- Primary key / foreign key relations should be generated and used.
    +       This is a prerequisite for various advanced features.
    +       Defaults to false --&gt;
    +  &lt;relations&gt;false&lt;/relations&gt;
    +
    +  &lt;!-- Generate navigation methods to navigate foreign key relationships
    +       directly from Record classes. This is only relevant if relations
    +       is set to true, too.
    +       Defaults to true --&gt;
    +  &lt;navigationMethods&gt;true&lt;/navigationMethods&gt;
    +
    +  &lt;!-- Generate deprecated code for backwards compatibility
    +       Defaults to true --&gt;
    +  &lt;deprecated&gt;true&lt;/deprecated&gt;
    +
    +  &lt;!-- Generate instance fields in your tables, as opposed to static
    +       fields. This simplifies aliasing.
    +       Defaults to true --&gt;
    +  &lt;instanceFields&gt;true&lt;/instanceFields&gt;
    +
    +  &lt;!-- Generate the javax.annotation.Generated annotation to indicate
    +       jOOQ version used for source code.
    +       Defaults to true --&gt;
    +  &lt;generatedAnnotation&gt;true&lt;/generatedAnnotation&gt;
    +
    +  &lt;!-- Generate jOOQ Record classes for type-safe querying. You can
    +       turn this off, if you don't need "active records" for CRUD
    +       Defaults to true --&gt;
    +  &lt;records&gt;true&lt;/records&gt;
    +
    +  &lt;!-- Generate POJOs in addition to Record classes for usage of the
    +       ResultQuery.fetchInto(Class) API
    +       Defaults to false --&gt;
    +  &lt;pojos&gt;false&lt;/pojos&gt;
    +
    +  &lt;!-- Annotate POJOs and Records with JPA annotations for increased
    +       compatibility and better integration with JPA/Hibernate, etc
    +       Defaults to false --&gt;
    +  &lt;jpaAnnotations&gt;false&lt;/jpaAnnotations&gt;
    +&lt;/generate&gt;</pre>
    +						<br><table width="100%" border="0" cellspacing="0" cellpadding="0">
    +<tr>
    +<td valign="top" align="left"><a href="<?=$root?>/manual/">The jOOQ User Manual</a> : <a href="<?=$root?>/manual/META/">Meta model code generation</a> : <a href="<?=$root?>/manual/META/AdvancedConfiguration/">Advanced configuration of the generator</a></td><td style="white-space: nowrap" valign="top" align="right"><a title="Previous section: Configuration and setup of the generator" href="<?=$root?>/manual/META/Configuration/">previous</a> : <a title="Next section: The schema, top-level generated artefact" href="<?=$root?>/manual/META/SCHEMA/">next</a></td>
    +</tr>
    +</table>
    +<?php 
    +}
    +?>
    +
    diff --git a/jOOQ-website/manual/META/Configuration/index.php b/jOOQ-website/manual/META/Configuration/index.php
    new file mode 100644
    index 00000000000..260155dd770
    --- /dev/null
    +++ b/jOOQ-website/manual/META/Configuration/index.php
    @@ -0,0 +1,351 @@
    +
    +<?php 
    +// The following content has been XSL transformed from manual.xml using html-pages.xsl
    +// Please do not edit this content manually
    +require '../../../frame.php';
    +function getH1() {
    +    return "Configuration and setup of the generator";
    +}
    +function getActiveMenu() {
    +	return "manual";
    +}
    +function getSlogan() {
    +	return "jOOQ uses a simple configuration file to configure source code generation.";
    +}
    +function printContent() {
    +    global $root;
    +?>
    +<table width="100%" border="0" cellspacing="0" cellpadding="0">
    +<tr>
    +<td valign="top" align="left"><a href="<?=$root?>/manual/">The jOOQ User Manual</a> : <a href="<?=$root?>/manual/META/">Meta model code generation</a> : <a href="<?=$root?>/manual/META/Configuration/">Configuration and setup of the generator</a></td><td style="white-space: nowrap" valign="top" align="right"><a title="Previous section: Meta model code generation" href="<?=$root?>/manual/META/">previous</a> : <a title="Next section: Advanced configuration of the generator" href="<?=$root?>/manual/META/AdvancedConfiguration/">next</a></td>
    +</tr>
    +</table>
    +							<h2>The deliverables</h2>
    +							<p>
    +								There are three binaries available with jOOQ, to be downloaded from
    +								<a href="https://sourceforge.net/projects/jooq/">SourceForge</a>
    +								or from Maven central:
    +							</p>
    +							<ul>
    +								
    +<li>
    +									
    +<strong>jOOQ.jar</strong>
    +									
    +<br>
    +									The main library that you will include in your application to run jOOQ
    +								</li>
    +								
    +<li>
    +									
    +<strong>jOOQ-meta.jar</strong>
    +									
    +<br>
    +									The utility that you will include in your build to navigate your
    +									database schema for code generation. This can be used as a schema
    +									crawler as well.
    +								</li>
    +								
    +<li>
    +									
    +<strong>jOOQ-codegen.jar</strong>
    +									
    +<br>
    +									The utility that you will include in your build to generate your
    +									database schema
    +								</li>
    +							
    +</ul>
    +
    +							<h2>Dependencies</h2>
    +							<p>All of jOOQ's dependencies are "optional", i.e. you can run
    +								jOOQ without any of those libraries.
    +								For instance, jOOQ maintains an "optional" dependency on log4j and slf4j.
    +								This means, that jOOQ tries to find log4j (and /log4j.xml) or slf4j on the
    +								classpath. If they are not present, then java.util.logging.Logger is
    +								used instead.
    +							</p>
    +							<p>
    +								Other optional dependencies are the JPA API, and the Oracle JDBC driver,
    +								which is needed for Oracle's advanced data types, only
    +							</p>
    +
    +
    +							<h2>Configure jOOQ's code generator</h2>
    +							<p>You need to tell jOOQ some things about your database connection.
    +								Here's an example of how to do it for an Oracle database </p>
    +<pre class="prettyprint lang-xml">&lt;?xml version="1.0" encoding="UTF-8" standalone="yes"?&gt;
    +&lt;configuration&gt;
    +  &lt;!-- Configure the database connection here --&gt;
    +  &lt;jdbc&gt;
    +    &lt;driver&gt;oracle.jdbc.OracleDriver&lt;/driver&gt;
    +    &lt;url&gt;jdbc:oracle:thin:@[your jdbc connection parameters]&lt;/url&gt;
    +    &lt;user&gt;[your database user]&lt;/user&gt;
    +    &lt;password&gt;[your database password]&lt;/password&gt;
    +    &lt;!-- You can also pass user/password and other JDBC properties in the optional properties tag: --&gt;
    +    &lt;properties&gt;
    +      &lt;property&gt;&lt;key&gt;user&lt;/key&gt;&lt;value&gt;[db-user]&lt;/value&gt;&lt;/property&gt;
    +      &lt;property&gt;&lt;key&gt;password&lt;/key&gt;&lt;value&gt;[db-password]&lt;/value&gt;&lt;/property&gt;
    +    &lt;/properties&gt;
    +  &lt;/jdbc&gt;
    +
    +  &lt;generator&gt;
    +    &lt;database&gt;
    +      &lt;!-- The database dialect from jooq-meta. Available dialects are
    +           named org.util.[database].[database]Database. Known values are:
    +
    +           org.jooq.util.ase.ASEDatabase
    +           org.jooq.util.db2.DB2Database
    +           org.jooq.util.derby.DerbyDatabase
    +           org.jooq.util.h2.H2Database
    +           org.jooq.util.hsqldb.HSQLDBDatabase
    +           org.jooq.util.ingres.IngresDatabase
    +           org.jooq.util.mysql.MySQLDatabase
    +           org.jooq.util.oracle.OracleDatabase
    +           org.jooq.util.postgres.PostgresDatabase
    +           org.jooq.util.sqlite.SQLiteDatabaes
    +           org.jooq.util.sqlserver.SQLServerDatabase
    +           org.jooq.util.sybase.SybaseDatabase
    +
    +           You can also provide your own org.jooq.util.Database implementation
    +           here, if your database is currently not supported --&gt;
    +      &lt;name&gt;org.jooq.util.oracle.OracleDatabase&lt;/name&gt;
    +
    +      &lt;!-- All elements that are generated from your schema (several Java
    +           regular expressions, separated by comma) Watch out for
    +           case-sensitivity. Depending on your database, this might be
    +           important! You can create case-insensitive regular expressions
    +           using this syntax: (?i:expr)A comma-separated list of regular
    +           expressions --&gt;
    +      &lt;includes&gt;.*&lt;/includes&gt;
    +
    +      &lt;!-- All elements that are excluded from your schema (several Java
    +           regular expressions, separated by comma). Excludes match before
    +           includes --&gt;
    +      &lt;excludes&gt;&lt;/excludes&gt;
    +
    +      &lt;!-- The schema that is used locally as a source for meta information.
    +           This could be your development schema or the production schema, etc
    +           This cannot be combined with the schemata element. --&gt;
    +      &lt;inputSchema&gt;[your database schema / owner / name]&lt;/inputSchema&gt;
    +    &lt;/database&gt;
    +
    +    &lt;generate&gt;
    +      &lt;!-- See advanced configuration properties --&gt;
    +    &lt;/generate&gt;
    +
    +    &lt;target&gt;
    +      &lt;!-- The destination package of your generated classes (within the
    +           destination directory) --&gt;
    +      &lt;packageName&gt;[org.jooq.your.packagename]&lt;/packageName&gt;
    +
    +      &lt;!-- The destination directory of your generated classes --&gt;
    +      &lt;directory&gt;[/path/to/your/dir]&lt;/directory&gt;
    +    &lt;/target&gt;
    +  &lt;/generator&gt;
    +&lt;/configuration&gt;</pre>
    +
    +							<p>
    +								There are also lots of advanced configuration parameters, which will be
    +								treated in the <a href="<?=$root?>/manual/META/AdvancedConfiguration/" title="jOOQ Manual reference: Advanced configuration of the generator">manual's next section</a>
    +								Note, you can find the official XSD file at
    +							   <a href="http://www.jooq.org/xsd/jooq-codegen-2.1.0.xsd" title="The jOOQ-codegen configuration XSD">http://www.jooq.org/xsd/jooq-codegen-2.1.0.xsd</a>
    +							   for a formal specification</p>
    +
    +							<h2>Run jOOQ code generation</h2>
    +							<p>Code generation works by calling this class with the above property file as argument.</p>
    +							<pre class="prettyprint">org.jooq.util.GenerationTool /jooq-config.xml</pre>
    +							<p>Be sure that these elements are located on the classpath: </p>
    +							<ul>
    +								
    +<li>The property file</li>
    +								
    +<li>jooq.jar, jooq-meta.jar, jooq-codegen.jar</li>
    +								
    +<li>The JDBC driver you configured</li>
    +							
    +</ul>
    +
    +							<h3>A command-line example (For Windows, unix/linux/etc will be similar)</h3>
    +							<ul>
    +								
    +<li>Put the property file, jooq*.jar and the JDBC driver into
    +									a directory, e.g. C:\temp\jooq</li>
    +							    
    +<li>Go to C:\temp\jooq</li>
    +							    
    +<li>Run java -cp jooq.jar;jooq-meta.jar;jooq-codegen.jar;[JDBC-driver].jar;. org.jooq.util.GenerationTool /[property file] </li>
    +							
    +</ul>
    +							<p>Note that the property file must be passed as a classpath resource</p>
    +
    +							<h3>Run code generation from Eclipse</h3>
    +							<p>Of course, you can also run code generation from your IDE. In
    +								Eclipse, set up a project like this. Note that this example uses
    +								jOOQ's log4j support by adding log4j.xml and log4j.jar to the project
    +								classpath: </p>
    +							<div class="screenshot">
    +							
    +<img alt="Eclipse configuration" class="screenshot" src="<?=$root?>/img/eclipse-example-01.png">
    +							</div>
    +
    +							<p>Once the project is set up correctly with all required artefacts on
    +								the classpath, you can configure an Eclipse Run Configuration for
    +								org.jooq.util.GenerationTool. </p>
    +							<div class="screenshot">
    +							
    +<img alt="Eclipse configuration" class="screenshot" src="<?=$root?>/img/eclipse-example-02.png">
    +							</div>
    +
    +							<p>With the properties file as an argument </p>
    +							<div class="screenshot">
    +							
    +<img alt="Eclipse configuration" class="screenshot" src="<?=$root?>/img/eclipse-example-03.png">
    +							</div>
    +
    +							<p>And the classpath set up correctly</p>
    +							<div class="screenshot">
    +							
    +<img alt="Eclipse configuration" class="screenshot" src="<?=$root?>/img/eclipse-example-04.png">
    +							</div>
    +
    +							<p>Finally, run the code generation and see your generated artefacts</p>
    +							<div class="screenshot">
    +							
    +<img alt="Eclipse configuration" class="screenshot" src="<?=$root?>/img/eclipse-example-05.png">
    +							</div>
    +
    +							<h3>Run generation with ant</h3>
    +							<p>
    +								You can also use an ant task to generate your classes. As a rule of thumb,
    +								remove the dots "." and dashes "-" from the .properties file's property names to get the
    +								ant task's arguments:
    +							</p>
    +<pre class="prettyprint lang-xml">&lt;!-- Task definition --&gt;
    +&lt;taskdef name="generate-classes" classname="org.jooq.util.GenerationTask"&gt;
    +  &lt;classpath&gt;
    +    &lt;fileset dir="${path.to.jooq.distribution}"&gt;
    +      &lt;include name="jOOQ.jar"/&gt;
    +      &lt;include name="jOOQ-meta.jar"/&gt;
    +      &lt;include name="jOOQ-codegen.jar"/&gt;
    +    &lt;/fileset&gt;
    +    &lt;fileset dir="${path.to.mysql.driver}"&gt;
    +      &lt;include name="${mysql.driver}.jar"/&gt;
    +    &lt;/fileset&gt;
    +  &lt;/classpath&gt;
    +&lt;/taskdef&gt;
    +
    +&lt;!-- Run the code generation task --&gt;
    +&lt;target name="generate-test-classes"&gt;
    +  &lt;generate-classes
    +      jdbcurl="jdbc:mysql://localhost/test"
    +      jdbcuser="root"
    +      jdbcpassword=""
    +      generatordatabaseinputschema="test"
    +      generatortargetpackage="org.jooq.test.generatedclasses"
    +      generatortargetdirectory="${basedir}/src"/&gt;
    +&lt;/target&gt;</pre>
    +
    +							<p>
    +								Note that when running code generation with ant's &lt;java/&gt; task,
    +								you may have to set fork="true":
    +							</p>
    +
    +<pre class="prettyprint lang-xml">&lt;!-- Run the code generation task --&gt;
    +&lt;target name="generate-test-classes"&gt;
    +  &lt;java fork="true" classname="org.jooq.util.GenerationTool"&gt;
    +    [...]
    +  &lt;/java&gt;
    +&lt;/target&gt;
    +</pre>
    +							<h3>Integrate generation with Maven</h3>
    +							<p>Using the official jOOQ-codegen-maven plugin, you can integrate
    +								source code generation in your Maven build process: </p>
    +
    +<pre class="prettyprint lang-xml">&lt;plugin&gt;
    +
    +  &lt;!-- Specify the maven code generator plugin --&gt;
    +  &lt;groupId&gt;org.jooq&lt;/groupId&gt;
    +  &lt;artifactId&gt;jooq-codegen-maven&lt;/artifactId&gt;
    +  &lt;version&gt;1.6.7&lt;/version&gt;
    +
    +  &lt;!-- The plugin should hook into the generate goal --&gt;
    +  &lt;executions&gt;
    +    &lt;execution&gt;
    +      &lt;goals&gt;
    +        &lt;goal&gt;generate&lt;/goal&gt;
    +      &lt;/goals&gt;
    +    &lt;/execution&gt;
    +  &lt;/executions&gt;
    +
    +  &lt;!-- Manage the plugin's dependency. In this example, we'll use a Postgres database --&gt;
    +  &lt;dependencies&gt;
    +    &lt;dependency&gt;
    +      &lt;groupId&gt;postgresql&lt;/groupId&gt;
    +      &lt;artifactId&gt;postgresql&lt;/artifactId&gt;
    +      &lt;version&gt;8.4-702.jdbc4&lt;/version&gt;
    +    &lt;/dependency&gt;
    +  &lt;/dependencies&gt;
    +
    +  &lt;!-- Specify the plugin configuration --&gt;
    +  &lt;configuration&gt;
    +
    +    &lt;!-- JDBC connection parameters --&gt;
    +    &lt;jdbc&gt;
    +      &lt;driver&gt;org.postgresql.Driver&lt;/driver&gt;
    +      &lt;url&gt;jdbc:postgresql:postgres&lt;/url&gt;
    +      &lt;user&gt;postgres&lt;/user&gt;
    +      &lt;password&gt;test&lt;/password&gt;
    +    &lt;/jdbc&gt;
    +
    +    &lt;!-- Generator parameters --&gt;
    +    &lt;generator&gt;
    +      &lt;name&gt;org.jooq.util.DefaultGenerator&lt;/name&gt;
    +      &lt;database&gt;
    +        &lt;name&gt;org.jooq.util.postgres.PostgresDatabase&lt;/name&gt;
    +        &lt;includes&gt;.*&lt;/includes&gt;
    +        &lt;excludes&gt;&lt;/excludes&gt;
    +        &lt;inputSchema&gt;public&lt;/inputSchema&gt;
    +      &lt;/database&gt;
    +      &lt;generate&gt;
    +        &lt;relations&gt;true&lt;/relations&gt;
    +        &lt;deprecated&gt;false&lt;/deprecated&gt;
    +      &lt;/generate&gt;
    +      &lt;target&gt;
    +        &lt;packageName&gt;org.jooq.util.maven.example&lt;/packageName&gt;
    +        &lt;directory&gt;target/generated-sources/jooq&lt;/directory&gt;
    +      &lt;/target&gt;
    +    &lt;/generator&gt;
    +  &lt;/configuration&gt;
    +&lt;/plugin&gt;
    +</pre>
    +							<p>See the full example of a pom.xml including the jOOQ-codegen artefact here:
    +							<a href="https://github.com/lukaseder/jOOQ/blob/master/jOOQ-codegen-maven-example/pom.xml" title="jOOQ-codegen-maven example pom.xml file">https://github.com/lukaseder/jOOQ/blob/master/jOOQ-codegen-maven-example/pom.xml</a>
    +</p>
    +
    +                            <h3>Migrate properties files from jOOQ 1.7, early versions of jOOQ 2.0.x:</h3>
    +                            <p>
    +                                Before jOOQ 2.0.4, the code generator was configured using properties files
    +                                These files are still supported for source code generation, but their syntax
    +                                won't be maintained any longer. If you wish to migrate to XML, you can
    +                                migrate the file using this command on the command line
    +                            </p>
    +							<pre class="prettyprint">org.jooq.util.GenerationTool /jooq-config.properties migrate</pre>
    +							<p>
    +								Using the migrate flag, jOOQ will read the properties file and output
    +								a corresponding XML file on system out
    +							</p>
    +
    +							<h3>Use jOOQ generated classes in your application</h3>
    +							<p>Be sure, both jOOQ.jar and your generated package (see
    +								configuration) are located on your classpath. Once this is done, you
    +								can execute SQL statements with your generated classes.</p>
    +						<br><table width="100%" border="0" cellspacing="0" cellpadding="0">
    +<tr>
    +<td valign="top" align="left"><a href="<?=$root?>/manual/">The jOOQ User Manual</a> : <a href="<?=$root?>/manual/META/">Meta model code generation</a> : <a href="<?=$root?>/manual/META/Configuration/">Configuration and setup of the generator</a></td><td style="white-space: nowrap" valign="top" align="right"><a title="Previous section: Meta model code generation" href="<?=$root?>/manual/META/">previous</a> : <a title="Next section: Advanced configuration of the generator" href="<?=$root?>/manual/META/AdvancedConfiguration/">next</a></td>
    +</tr>
    +</table>
    +<?php 
    +}
    +?>
    +
    diff --git a/jOOQ-website/manual/META/PROCEDURE/index.php b/jOOQ-website/manual/META/PROCEDURE/index.php
    new file mode 100644
    index 00000000000..40516e504d9
    --- /dev/null
    +++ b/jOOQ-website/manual/META/PROCEDURE/index.php
    @@ -0,0 +1,228 @@
    +
    +<?php 
    +// The following content has been XSL transformed from manual.xml using html-pages.xsl
    +// Please do not edit this content manually
    +require '../../../frame.php';
    +function getH1() {
    +    return "Procedures and packages";
    +}
    +function getActiveMenu() {
    +	return "manual";
    +}
    +function getSlogan() {
    +	return "
    +							Procedure support is one of the most important reasons why you should consider
    +							jOOQ. jOOQ heavily facilitates the use of stored procedures and
    +							functions via its source code generation.
    +						";
    +}
    +function printContent() {
    +    global $root;
    +?>
    +<table width="100%" border="0" cellspacing="0" cellpadding="0">
    +<tr>
    +<td valign="top" align="left"><a href="<?=$root?>/manual/">The jOOQ User Manual</a> : <a href="<?=$root?>/manual/META/">Meta model code generation</a> : <a href="<?=$root?>/manual/META/PROCEDURE/">Procedures and packages</a></td><td style="white-space: nowrap" valign="top" align="right"><a title="Previous section: Tables, views and their corresponding records" href="<?=$root?>/manual/META/TABLE/">previous</a> : <a title="Next section: UDT's including ARRAY and ENUM types" href="<?=$root?>/manual/META/UDT/">next</a></td>
    +</tr>
    +</table>
    +							<h2>Stored procedures in modern RDBMS</h2>
    +							<p>This is one of the most important reasons why you should consider
    +								jOOQ. Read also my
    +								<a href="http://java.dzone.com/articles/2011-great-year-stored" title="Article on stored procedures and how to use them with jOOQ">article on dzone</a>
    +								about why stored procedures become
    +								more and more important in future versions of RDMBS. In this section
    +								of the manual, we will learn how jOOQ handles stored procedures in
    +								code generation. Especially before
    +								<a href="<?=$root?>/manual/META/UDT/" title="jOOQ Manual reference: UDT's including ARRAY and ENUM types">UDT and ARRAY support</a> was
    +								introduced to major RDBMS, these procedures tend to have dozens of
    +								parameters, with IN, OUT, IN OUT parameters mixed in all variations.
    +								JDBC only knows very basic, low-level support for those constructs.
    +								jOOQ heavily facilitates the use of stored procedures and functions
    +								via its source code generation. Essentially, it comes down to this:
    +							</p>
    +
    +							<h3>"Standalone" stored procedures and functions</h3>
    +							<p>Let's say you have these stored procedures and functions in your Oracle database </p>
    +<pre class="prettyprint lang-sql">-- Check whether there is an author in T_AUTHOR by that name
    +CREATE OR REPLACE FUNCTION f_author_exists (author_name VARCHAR2) RETURN NUMBER;
    +
    +-- Check whether there is an author in T_AUTHOR by that name
    +CREATE OR REPLACE PROCEDURE p_author_exists (author_name VARCHAR2, result OUT NUMBER);
    +
    +-- Check whether there is an author in T_AUTHOR by that name and get his ID
    +CREATE OR REPLACE PROCEDURE p_author_exists_2 (author_name VARCHAR2, result OUT NUMBER, id OUT NUMBER);</pre>
    +
    +							<p>jOOQ will essentially generate two artefacts for every procedure/function: </p>
    +							<ul>
    +								
    +<li>A class holding a formal Java representation of the procedure/function</li>
    +    							
    +<li>Some convenience methods to facilitate calling that procedure/function </li>
    +							
    +</ul>
    +							<p>Let's see what these things look like, in Java. The classes (simplified for the example): </p>
    +
    +<pre class="prettyprint lang-java">// The function has a generic type parameter &lt;T&gt; bound to its return value
    +public class FAuthorExists extends org.jooq.impl.AbstractRoutine&lt;BigDecimal&gt; {
    +
    +    // Much like Tables, functions have static parameter definitions
    +    public static final Parameter&lt;String&gt; AUTHOR_NAME = // [...]
    +
    +    // And much like TableRecords, they have setters for their parameters
    +    public void setAuthorName(String value) { // [...]
    +    public void setAuthorName(Field&lt;String&gt; value) { // [...]
    +}
    +
    +public class PAuthorExists extends org.jooq.impl.AbstractRoutine&lt;java.lang.Void&gt; {
    +
    +    // In procedures, IN, OUT, IN OUT parameters are all represented
    +    // as static parameter definitions as well
    +    public static final Parameter&lt;String&gt; AUTHOR_NAME = // [...]
    +    public static final Parameter&lt;BigDecimal&gt; RESULT = // [...]
    +
    +    // IN and IN OUT parameters have generated setters
    +    public void setAuthorName(String value) { // [...]
    +
    +    // OUT and IN OUT parameters have generated getters
    +    public BigDecimal getResult() { // [...]
    +}
    +
    +public class PAuthorExists_2 extends org.jooq.impl.AbstractRoutine&lt;java.lang.Void&gt; {
    +    public static final Parameter&lt;String&gt; AUTHOR_NAME = // [...]
    +    public static final Parameter&lt;BigDecimal&gt; RESULT = // [...]
    +    public static final Parameter&lt;BigDecimal&gt; ID = // [...]
    +
    +    // the setters...
    +    public void setAuthorName(String value) { // [...]
    +
    +    // the getters...
    +    public BigDecimal getResult() { // [...]
    +    public BigDecimal getId() { // [...]
    +}</pre>
    +
    +							<p>An example invocation of such a stored procedure might look like this: </p>
    +
    +<pre class="prettyprint lang-java">PAuthorExists p = new PAuthorExists();
    +p.setAuthorName("Paulo");
    +p.execute(configuration);
    +assertEquals(BigDecimal.ONE, p.getResult());</pre>
    +
    +							<p>
    +								The above configuration is a
    +								<a href="<?=$root?>/manual/JOOQ/Factory/" title="jOOQ Manual reference: The Factory class">Factory</a>,
    +								holding a reference to a JDBC connection, as discussed in a previous section.
    +
    +								If you use the generated convenience methods, however, things are much simpler, still:
    +							</p>
    +<pre class="prettyprint lang-java">// Every schema has a single Routines class with convenience methods
    +public final class Routines {
    +
    +    // Convenience method to directly call the stored function
    +    public static BigDecimal fAuthorExists(Configuration configuration, String authorName) { // [...]
    +
    +    // Convenience methods to transform the stored function into a
    +    // Field&lt;BigDecimal&gt;, such that it can be used in SQL
    +    public static Field&lt;BigDecimal&gt; fAuthorExists(Field&lt;String&gt; authorName) { // [...]
    +    public static Field&lt;BigDecimal&gt; fAuthorExists(String authorName) { // [...]
    +
    +    // Procedures with 0 OUT parameters create void methods
    +    // Procedures with 1 OUT parameter create methods as such:
    +    public static BigDecimal pAuthorExists(Configuration configuration, String authorName) { // [...]
    +
    +    // Procedures with more than 1 OUT parameter return the procedure
    +    // object (see above example)
    +    public static PAuthorExists_2 pAuthorExists_2(Configuration configuration, String authorName) { // [...]
    +}</pre>
    +
    +							<p>An sample invocation, equivalent to the previous example:</p>
    +<pre class="prettyprint lang-java">assertEquals(BigDecimal.ONE, Procedures.pAuthorExists(configuration, "Paulo"));</pre>
    +
    +
    +							<h3>jOOQ's understanding of procedures vs functions</h3>
    +							<p>
    +								jOOQ does not formally distinguish procedures from functions.
    +								jOOQ only knows about routines, which can have return values
    +								and/or OUT parameters. This is the best option to handle the
    +								variety of stored procedure / function support across the
    +								various supported RDBMS. For more details, read on about this
    +								topic, here:
    +							</p>
    +							<p>
    +								
    +<a href="http://lukaseder.wordpress.com/2011/10/17/what-are-procedures-and-functions-after-all/" title="Blog post about the difference between procedures and functions in various RDBMS">lukaseder.wordpress.com/2011/10/17/what-are-procedures-and-functions-after-all/</a>
    +							
    +</p>
    +
    +							<h3>Packages in Oracle</h3>
    +							<p>
    +								Oracle uses the concept of a PACKAGE to group several
    +								procedures/functions into a sort of namespace. The
    +								<a href="http://www.contrib.andrew.cmu.edu/~shadow/sql/sql1992.txt" title="SQL 92 standard">SQL standard</a>
    +								talks about "modules", to represent this concept, even if this is
    +								rarely implemented. This is reflected in jOOQ by the use of Java
    +								sub-packages in the source code generation destination package. Every
    +								Oracle package will be reflected by
    +							</p>
    +							<ul>
    +								
    +<li>A Java package holding classes for formal Java representations of
    +									the procedure/function in that package
    +								</li>
    +								
    +<li>A Java class holding convenience methods to facilitate calling
    +									those procedures/functions
    +								</li>
    +							
    +</ul>
    +							<p>
    +								Apart from this, the generated source code looks exactly like the
    +								one for
    +								standalone procedures/functions.
    +							</p>
    +
    +							<h3>Member functions and procedures in Oracle</h3>
    +							<p>
    +								Oracle UDT's can have object-oriented structures including member functions
    +								and procedures. With Oracle, you can do things like this:
    +							</p>
    +<pre class="prettyprint lang-sql">CREATE OR REPLACE TYPE u_author_type AS OBJECT (
    +  id NUMBER(7),
    +  first_name VARCHAR2(50),
    +  last_name VARCHAR2(50),
    +
    +  MEMBER PROCEDURE LOAD,
    +  MEMBER FUNCTION count_books RETURN NUMBER
    +)
    +
    +-- The type body is omitted for the example
    +</pre>
    +
    +							<p>
    +								These member functions and procedures can simply be mapped to Java
    +								methods:
    +							</p>
    +
    +<pre class="prettyprint lang-java">
    +// Create an empty, attached UDT record from the Factory
    +UAuthorType author = create.newRecord(U_AUTHOR_TYPE);
    +
    +// Set the author ID and load the record using the LOAD procedure
    +author.setId(1);
    +author.load();
    +
    +// The record is now updated with the LOAD implementation's content
    +assertNotNull(author.getFirstName());
    +assertNotNull(author.getLastName());</pre>
    +
    +							<p>For more details about UDT's see the Manual's section on
    +							<a href="<?=$root?>/manual/META/UDT/" title="jOOQ Manual reference: UDT's including ARRAY and ENUM types">User Defined Types</a>
    +</p>
    +
    +						<br><table width="100%" border="0" cellspacing="0" cellpadding="0">
    +<tr>
    +<td valign="top" align="left"><a href="<?=$root?>/manual/">The jOOQ User Manual</a> : <a href="<?=$root?>/manual/META/">Meta model code generation</a> : <a href="<?=$root?>/manual/META/PROCEDURE/">Procedures and packages</a></td><td style="white-space: nowrap" valign="top" align="right"><a title="Previous section: Tables, views and their corresponding records" href="<?=$root?>/manual/META/TABLE/">previous</a> : <a title="Next section: UDT's including ARRAY and ENUM types" href="<?=$root?>/manual/META/UDT/">next</a></td>
    +</tr>
    +</table>
    +<?php 
    +}
    +?>
    +
    diff --git a/jOOQ-website/manual/META/SCHEMA/index.php b/jOOQ-website/manual/META/SCHEMA/index.php
    new file mode 100644
    index 00000000000..e42a67e6c93
    --- /dev/null
    +++ b/jOOQ-website/manual/META/SCHEMA/index.php
    @@ -0,0 +1,64 @@
    +
    +<?php 
    +// The following content has been XSL transformed from manual.xml using html-pages.xsl
    +// Please do not edit this content manually
    +require '../../../frame.php';
    +function getH1() {
    +    return "The schema, top-level generated artefact";
    +}
    +function getActiveMenu() {
    +	return "manual";
    +}
    +function getSlogan() {
    +	return "The schema is the top-level generated object in jOOQ. In many
    +							RDBMS, the schema coincides with the owner of tables and other objects
    +						";
    +}
    +function printContent() {
    +    global $root;
    +?>
    +<table width="100%" border="0" cellspacing="0" cellpadding="0">
    +<tr>
    +<td valign="top" align="left"><a href="<?=$root?>/manual/">The jOOQ User Manual</a> : <a href="<?=$root?>/manual/META/">Meta model code generation</a> : <a href="<?=$root?>/manual/META/SCHEMA/">The schema, top-level generated artefact</a></td><td style="white-space: nowrap" valign="top" align="right"><a title="Previous section: Advanced configuration of the generator" href="<?=$root?>/manual/META/AdvancedConfiguration/">previous</a> : <a title="Next section: Tables, views and their corresponding records" href="<?=$root?>/manual/META/TABLE/">next</a></td>
    +</tr>
    +</table>
    +							<h2>The Schema</h2>
    +							<p>
    +								As of jOOQ 1.5, the top-level generated object is the
    +								<a href="http://www.jooq.org/javadoc/latest/org/jooq/Schema.html" title="Internal API reference: org.jooq.Schema">org.jooq.Schema</a>.
    +								The Schema itself has no relevant functionality, except for holding
    +								the schema name for all dependent generated artefacts. jOOQ queries try
    +								to always fully qualify an entity within the database using that Schema
    +							</p>
    +
    +							<p>
    +								Currently, it is not possible to link generated artefacts from various
    +								schemata. If you have a stored function from Schema A, which returns a
    +								UDT from Schema B, the types cannot be linked. This enhancement is on
    +								the roadmap, though: <a href="https://sourceforge.net/apps/trac/jooq/ticket/282" title="Trac ticket: #282">#282</a>.
    +							</p>
    +
    +							<p>
    +								When you have several schemata that are logically equivalent (i.e. they
    +								contain identical entities, but the schemata stand for different
    +								users/customers/clients, etc), there is a solution for that. Check out
    +								the manual's section on support for
    +								<a href="<?=$root?>/manual/ADVANCED/SchemaMapping/" title="jOOQ Manual reference: Mapping generated schemata and tables">multiple equivalent schemata</a>
    +							
    +</p>
    +
    +							<h3>Schema contents</h3>
    +							<p>The schema can be used to dynamically discover generate database
    +								artefacts. Tables, sequences, and other items are accessible from the
    +								schema. For example:</p>
    +<pre class="prettyprint lang-java">public final java.util.List&lt;org.jooq.Sequence&lt;?&gt;&gt; getSequences();
    +public final java.util.List&lt;org.jooq.Table&lt;?&gt;&gt; getTables();</pre>
    +						<br><table width="100%" border="0" cellspacing="0" cellpadding="0">
    +<tr>
    +<td valign="top" align="left"><a href="<?=$root?>/manual/">The jOOQ User Manual</a> : <a href="<?=$root?>/manual/META/">Meta model code generation</a> : <a href="<?=$root?>/manual/META/SCHEMA/">The schema, top-level generated artefact</a></td><td style="white-space: nowrap" valign="top" align="right"><a title="Previous section: Advanced configuration of the generator" href="<?=$root?>/manual/META/AdvancedConfiguration/">previous</a> : <a title="Next section: Tables, views and their corresponding records" href="<?=$root?>/manual/META/TABLE/">next</a></td>
    +</tr>
    +</table>
    +<?php 
    +}
    +?>
    +
    diff --git a/jOOQ-website/manual/META/SEQUENCE/index.php b/jOOQ-website/manual/META/SEQUENCE/index.php
    new file mode 100644
    index 00000000000..ef8d5e482ef
    --- /dev/null
    +++ b/jOOQ-website/manual/META/SEQUENCE/index.php
    @@ -0,0 +1,59 @@
    +
    +<?php 
    +// The following content has been XSL transformed from manual.xml using html-pages.xsl
    +// Please do not edit this content manually
    +require '../../../frame.php';
    +function getH1() {
    +    return "Sequences";
    +}
    +function getActiveMenu() {
    +	return "manual";
    +}
    +function getSlogan() {
    +	return "
    +							jOOQ also generates convenience artefacts for sequences, where this is
    +							supported: DB2, Derby, H2, HSQLDB, Oracle, Postgres, and more.
    +						";
    +}
    +function printContent() {
    +    global $root;
    +?>
    +<table width="100%" border="0" cellspacing="0" cellpadding="0">
    +<tr>
    +<td valign="top" align="left"><a href="<?=$root?>/manual/">The jOOQ User Manual</a> : <a href="<?=$root?>/manual/META/">Meta model code generation</a> : <a href="<?=$root?>/manual/META/SEQUENCE/">Sequences</a></td><td style="white-space: nowrap" valign="top" align="right"><a title="Previous section: UDT's including ARRAY and ENUM types" href="<?=$root?>/manual/META/UDT/">previous</a> : <a title="Next section: DSL or fluent API. Where SQL meets Java" href="<?=$root?>/manual/DSL/">next</a></td>
    +</tr>
    +</table>
    +							<h2>Sequences as a source for identity values</h2>
    +							<p> Sequences implement the
    +							<a href="http://www.jooq.org/javadoc/latest/org/jooq/Sequence.html" title="Internal API reference: org.jooq.Sequence">org.jooq.Sequence</a> interface, providing essentially this functionality:</p>
    +
    +<pre class="prettyprint lang-java">// Get a field for the CURRVAL sequence property
    +Field&lt;T&gt; currval();
    +
    +// Get a field for the NEXTVAL sequence property
    +Field&lt;T&gt; nextval();</pre>
    +							<p>So if you have a sequence like this in Oracle: </p>
    +							<pre class="prettyprint lang-sql">CREATE SEQUENCE s_author_id</pre>
    +							<p>This is what jOOQ will generate: </p>
    +<pre class="prettyprint lang-java">public final class Sequences {
    +
    +    // A static sequence instance
    +    public static final Sequence&lt;BigInteger&gt; S_AUTHOR_ID = // [...]
    +}</pre>
    +
    +							<p>Which you can use in a select statement as such: </p>
    +<pre class="prettyprint lang-java">Field&lt;BigInteger&gt; s = Sequences.S_AUTHOR_ID.nextval();
    +BigInteger nextID   = create.select(s).fetchOne(s);</pre>
    +
    +							<p>Or directly fetch currval() and nextval() from the sequence using the Factory: </p>
    +<pre class="prettyprint lang-java">BigInteger currval = create.currval(Sequences.S_AUTHOR_ID);
    +BigInteger nextval = create.nextval(Sequences.S_AUTHOR_ID);</pre>
    +						<br><table width="100%" border="0" cellspacing="0" cellpadding="0">
    +<tr>
    +<td valign="top" align="left"><a href="<?=$root?>/manual/">The jOOQ User Manual</a> : <a href="<?=$root?>/manual/META/">Meta model code generation</a> : <a href="<?=$root?>/manual/META/SEQUENCE/">Sequences</a></td><td style="white-space: nowrap" valign="top" align="right"><a title="Previous section: UDT's including ARRAY and ENUM types" href="<?=$root?>/manual/META/UDT/">previous</a> : <a title="Next section: DSL or fluent API. Where SQL meets Java" href="<?=$root?>/manual/DSL/">next</a></td>
    +</tr>
    +</table>
    +<?php 
    +}
    +?>
    +
    diff --git a/jOOQ-website/manual/META/TABLE/index.php b/jOOQ-website/manual/META/TABLE/index.php
    new file mode 100644
    index 00000000000..268ccdeec22
    --- /dev/null
    +++ b/jOOQ-website/manual/META/TABLE/index.php
    @@ -0,0 +1,161 @@
    +
    +<?php 
    +// The following content has been XSL transformed from manual.xml using html-pages.xsl
    +// Please do not edit this content manually
    +require '../../../frame.php';
    +function getH1() {
    +    return "Tables, views and their corresponding records";
    +}
    +function getActiveMenu() {
    +	return "manual";
    +}
    +function getSlogan() {
    +	return "
    +							The most important generated artefacts are Tables and TableRecords.
    +							Every Table has a Record type associated with it that models a single tuple
    +							of that entity: Table&lt;R extends Record&gt;.
    +						";
    +}
    +function printContent() {
    +    global $root;
    +?>
    +<table width="100%" border="0" cellspacing="0" cellpadding="0">
    +<tr>
    +<td valign="top" align="left"><a href="<?=$root?>/manual/">The jOOQ User Manual</a> : <a href="<?=$root?>/manual/META/">Meta model code generation</a> : <a href="<?=$root?>/manual/META/TABLE/">Tables, views and their corresponding records</a></td><td style="white-space: nowrap" valign="top" align="right"><a title="Previous section: The schema, top-level generated artefact" href="<?=$root?>/manual/META/SCHEMA/">previous</a> : <a title="Next section: Procedures and packages" href="<?=$root?>/manual/META/PROCEDURE/">next</a></td>
    +</tr>
    +</table>
    +							<h2>Tables and TableRecords</h2>
    +							<p>
    +								The most important generated artefacts are
    +								<a href="http://www.jooq.org/javadoc/latest/org/jooq/Table.html" title="Internal API reference: org.jooq.Table">Tables</a> and
    +								<a href="http://www.jooq.org/javadoc/latest/org/jooq/TableRecord.html" title="Internal API reference: org.jooq.TableRecord">TableRecords</a>. As
    +								discussed in previous chapters about
    +								<a href="<?=$root?>/manual/JOOQ/Table/" title="jOOQ Manual reference: Tables and Fields">Tables</a> and
    +								<a href="<?=$root?>/manual/JOOQ/Result/" title="jOOQ Manual reference: Results and Records">Results</a>, jOOQ uses the
    +								Table class to model entities (both tables and views) in your database
    +								Schema. Every Table has a Record type associated with it that models a
    +								single tuple of that entity: Table&lt;R extends Record&gt;. This
    +								couple of Table&lt;R&gt; and R are generated as such:
    +							</p>
    +							<p>
    +								Suppose we have the tables as defined in the
    +								<a href="<?=$root?>/manual/JOOQ/ExampleDatabase/" title="jOOQ Manual reference: The example database">example database</a>.
    +								Then, using a
    +								default configuration, these (simplified for the example) classes will
    +								be generated:
    +							</p>
    +
    +							<h3>The Table as an entity meta model</h3>
    +<pre class="prettyprint lang-java">public class TAuthor extends UpdatableTableImpl&lt;TAuthorRecord&gt; {
    +
    +    // The singleton instance of the Table
    +    public static final TAuthor T_AUTHOR = new TAuthor();
    +
    +    // The Table's fields.
    +    // Depending on your jooq-codegen configuraiton, they can also be static
    +    public final TableField&lt;TAuthorRecord, Integer&gt; ID =            // [...]
    +    public final TableField&lt;TAuthorRecord, String&gt; FIRST_NAME =     // [...]
    +    public final TableField&lt;TAuthorRecord, String&gt; LAST_NAME =      // [...]
    +    public final TableField&lt;TAuthorRecord, Date&gt; DATE_OF_BIRTH =    // [...]
    +    public final TableField&lt;TAuthorRecord, Integer&gt; YEAR_OF_BIRTH = // [...]
    +
    +    // When you don't choose the static meta model, you can typesafely alias your tables.
    +    // Aliased tables will then hold references to the above final fields, too
    +    public TAuthor as(String alias) {
    +      // [...]
    +    }
    +}</pre>
    +
    +							<h3>The Table's associated TableRecord</h3>
    +							<p>If you use the
    +								<a href="<?=$root?>/manual/JOOQ/Query/" title="jOOQ Manual reference: The Query and its various subtypes">SimpleSelectQuery</a>
    +								 syntax (both in standard and DSL
    +								mode), then your SELECT statement will return the single Table&lt;R
    +								extends Record&gt;'s associated Record type &lt;R&gt;. In the case of
    +								the above TAuthor Table, this will be a TAuthorRecord. </p>
    +
    +<pre class="prettyprint lang-java">public class TAuthorRecord extends UpdatableRecordImpl&lt;TAuthorRecord&gt; {
    +
    +    // Getters and setters for the various fields
    +    public void setId(Integer value) {       // [...]
    +    public Integer getId() {                 // [...]
    +    public void setFirstName(String value) { // [...]
    +    public String getFirstName() {           // [...]
    +    public void setLastName(String value) {  // [...]
    +    public String getLastName() {            // [...]
    +    public void setDateOfBirth(Date value) { // [...]
    +    public Date getDateOfBirth() {           // [...]
    +
    +    // Navigation methods for foreign keys
    +    public List&lt;TBookRecord&gt; fetchTBooks() { // [...]
    +}</pre>
    +
    +
    +							<h3>Generated or custom POJO's instead of jOOQ's Records</h3>
    +							<p>
    +								If you're using jOOQ along with Hibernate / JPA, or if you
    +								want to use your own, custom domain-model instead of jOOQ's
    +								Record type-hierarchy, you can choose to select values into
    +								POJOs. Let's say you defined a POJO for authors:
    +							</p>
    +
    +<pre class="prettyprint lang-java">package com.example;
    +
    +import javax.persistence.Column;
    +import javax.persistence.Entity;
    +
    +@Entity
    +public class MyAuthor {
    +    // Some fields may be public
    +    @Column(name = "ID")
    +    public int id;
    +
    +    // Others are private and have associated getters / setters:
    +    private String firstName;
    +    private String lastName;
    +
    +    public void setFirstName(String firstName) {
    +        this.firstName = firstName;
    +    }
    +
    +    @Column(name = "FIRST_NAME")
    +    public String getFirstName() {
    +        return firstName;
    +    }
    +
    +    public void setLastName(String lastName) {
    +        this.lastName = lastName;
    +    }
    +
    +    @Column(name = "LAST_NAME")
    +    public String getLastName() {
    +        return lastName;
    +    }
    +}</pre>
    +
    +                            <p>
    +                            	The above could be your custom POJO or a POJO generated
    +                            	by jooq-codegen (see
    +                            	<a href="<?=$root?>/manual/META/AdvancedConfiguration/" title="jOOQ Manual reference: Advanced configuration of the generator">the manual's section about advanced codegen configuration</a>
    +                            	for more details). Also, JPA-annotations are not necessary
    +                            	if you wish to let jOOQ map record columns onto your POJO
    +                            	attributes by convention. Instead of fetching records normally,
    +                            	you can now let jOOQ fetch records "into" your custom type:
    +                            </p>
    +
    +<pre class="prettyprint lang-java">List&lt;MyAuthor&gt; results = create.select().from(TAuthor.T_AUTHOR).fetchInto(MyAuthor.class);</pre>
    +
    +							<p>
    +								Read the javadoc for
    +								<a href="http://www.jooq.org/javadoc/latest/org/jooq/Record.html#into%28java.lang.Class%29" title="Record.into() javadoc, explaining about how to map jOOQ Records onto custom types">Record.into()</a>
    +								for more details.
    +							</p>
    +						<br><table width="100%" border="0" cellspacing="0" cellpadding="0">
    +<tr>
    +<td valign="top" align="left"><a href="<?=$root?>/manual/">The jOOQ User Manual</a> : <a href="<?=$root?>/manual/META/">Meta model code generation</a> : <a href="<?=$root?>/manual/META/TABLE/">Tables, views and their corresponding records</a></td><td style="white-space: nowrap" valign="top" align="right"><a title="Previous section: The schema, top-level generated artefact" href="<?=$root?>/manual/META/SCHEMA/">previous</a> : <a title="Next section: Procedures and packages" href="<?=$root?>/manual/META/PROCEDURE/">next</a></td>
    +</tr>
    +</table>
    +<?php 
    +}
    +?>
    +
    diff --git a/jOOQ-website/manual/META/UDT/index.php b/jOOQ-website/manual/META/UDT/index.php
    new file mode 100644
    index 00000000000..d66c87b9c01
    --- /dev/null
    +++ b/jOOQ-website/manual/META/UDT/index.php
    @@ -0,0 +1,329 @@
    +
    +<?php 
    +// The following content has been XSL transformed from manual.xml using html-pages.xsl
    +// Please do not edit this content manually
    +require '../../../frame.php';
    +function getH1() {
    +    return "UDT's including ARRAY and ENUM types";
    +}
    +function getActiveMenu() {
    +	return "manual";
    +}
    +function getSlogan() {
    +	return "
    +							Databases become more powerful when you can structure your data in user
    +							defined types. It's time for Java developers to give some credit to
    +							that.
    +						";
    +}
    +function printContent() {
    +    global $root;
    +?>
    +<table width="100%" border="0" cellspacing="0" cellpadding="0">
    +<tr>
    +<td valign="top" align="left"><a href="<?=$root?>/manual/">The jOOQ User Manual</a> : <a href="<?=$root?>/manual/META/">Meta model code generation</a> : <a href="<?=$root?>/manual/META/UDT/">UDT's including ARRAY and ENUM types</a></td><td style="white-space: nowrap" valign="top" align="right"><a title="Previous section: Procedures and packages" href="<?=$root?>/manual/META/PROCEDURE/">previous</a> : <a title="Next section: Sequences" href="<?=$root?>/manual/META/SEQUENCE/">next</a></td>
    +</tr>
    +</table>
    +							<h2>Increased RDBMS support for UDT's</h2>
    +							<p>
    +								In recent years, most RDBMS have started to implement some support for
    +								advanced data types. This support has not been adopted very well by
    +								database users in the Java world, for several reasons:
    +							</p>
    +							<ul>
    +								
    +<li>They are usually orthogonal to relational concepts. It is not easy
    +									to modify a UDT once it is referenced by a table column.</li>
    +								
    +<li>There is little standard support of accessing them from JDBC (and
    +									probably other database connectivity standards). </li>
    +							
    +</ul>
    +							<p>
    +								On the other hand, especially with stored procedures, these data types
    +								are likely to become more and more useful in the future. If you have a
    +								look at Postgres' capabilities of dealing with advanced data types
    +								(<a href="http://www.postgresql.org/docs/9.0/interactive/datatype-enum.html">ENUMs</a>,
    +								<a href="http://www.postgresql.org/docs/9.0/interactive/arrays.html">ARRAYs</a>,
    +								<a href="http://www.postgresql.org/docs/9.0/interactive/rowtypes.html">UDT's</a>),
    +								 this becomes more and more obvious.
    +							</p>
    +							<p>It is a central strategy for jOOQ, to standardise access to these
    +								kinds of types (as well as to
    +								<a href="<?=$root?>/manual/META/PROCEDURE/" title="jOOQ Manual reference: Procedures and packages">stored procedures</a>, of course) across all
    +								RDBMS, where these types are supported. </p>
    +
    +							<h2>UDT types</h2>
    +							<p>User Defined Types (UDT) are helpful in major RDMBS with lots
    +							of proprietary functionality. The biggest player is clearly Oracle.
    +							Currently, jOOQ provides UDT support for only two databases: </p>
    +							<ul>
    +								
    +<li>Oracle</li>
    +								
    +<li>Postgres</li>
    +							
    +</ul>
    +							<p>Apart from that, </p>
    +							<ul>
    +								
    +<li>
    +									DB2 UDT's are not supported as they are very tough to
    +									serialise/deserialise. We don't think that this is a big enough
    +									requirement to put more effort in those, right now (see also the
    +									developers' discussion on
    +									<a href="https://sourceforge.net/apps/trac/jooq/ticket/164" title="Trac ticket: #164">#164</a>)
    +								</li>
    +							
    +</ul>
    +
    +							<p>In Oracle, you would define UDTs like this: </p>
    +<pre class="prettyprint lang-sql">CREATE TYPE u_street_type AS OBJECT (
    +  street VARCHAR2(100),
    +  no VARCHAR2(30)
    +)
    +
    +CREATE TYPE u_address_type AS OBJECT (
    +  street u_street_type,
    +  zip VARCHAR2(50),
    +  city VARCHAR2(50),
    +  country VARCHAR2(50),
    +  since DATE,
    +  code NUMBER(7)
    +)</pre>
    +
    +							<p>These types could then be used in tables and/or stored procedures like such: </p>
    +<pre class="prettyprint lang-sql">CREATE TABLE t_author (
    +  id NUMBER(7) NOT NULL PRIMARY KEY,
    +  -- [...]
    +  address u_address_type
    +)
    +
    +CREATE OR REPLACE PROCEDURE p_check_address (address IN OUT u_address_type);</pre>
    +
    +							<p>
    +								Standard JDBC UDT support encourages JDBC-driver developers to implement
    +								interfaces such as
    +								<a href="http://download.oracle.com/javase/6/docs/api/java/sql/SQLData.html" title="External API reference: java.sql.SQLData">java.sql.SQLData</a>,
    +								<a href="http://download.oracle.com/javase/6/docs/api/java/sql/SQLInput.html" title="External API reference: java.sql.SQLInput">java.sql.SQLInput</a> and
    +								<a href="http://download.oracle.com/javase/6/docs/api/java/sql/SQLOutput.html" title="External API reference: java.sql.SQLOutput">java.sql.SQLOutput</a>.
    +								Those interfaces are non-trivial to implement, or
    +								to hook into. Also access to
    +								<a href="http://download.oracle.com/javase/6/docs/api/java/sql/Struct.html" title="External API reference: java.sql.Struct">java.sql.Struct</a>
    +								is not really simple. Due
    +								to the lack of a well-defined JDBC standard, Oracle's JDBC driver
    +								rolls their own proprietary methods of dealing with these types. jOOQ
    +								goes a different way, it hides those facts from you entirely. With
    +								jOOQ, the above UDT's will be generated in simple
    +								<a href="http://www.jooq.org/javadoc/latest/org/jooq/UDT.html" title="Internal API reference: org.jooq.UDT">UDT meta-model classes</a> and
    +								<a href="http://www.jooq.org/javadoc/latest/org/jooq/UDTRecord.html" title="Internal API reference: org.jooq.UDTRecord">UDT record classes</a> as such:
    +							</p>
    +<pre class="prettyprint lang-java">// There is an analogy between UDT/Table and UDTRecord/TableRecord...
    +public class UAddressType extends UDTImpl&lt;UAddressTypeRecord&gt; {
    +
    +    // The UDT meta-model singleton instance
    +    public static final UAddressType U_ADDRESS_TYPE = new UAddressType();
    +
    +    // UDT attributes are modeled as static members. Nested UDT's
    +    // behave similarly
    +    public static final UDTField&lt;UAddressTypeRecord, UStreetTypeRecord&gt; STREET = // [...]
    +    public static final UDTField&lt;UAddressTypeRecord, String&gt; ZIP =               // [...]
    +    public static final UDTField&lt;UAddressTypeRecord, String&gt; CITY =              // [...]
    +    public static final UDTField&lt;UAddressTypeRecord, String&gt; COUNTRY =           // [...]
    +    public static final UDTField&lt;UAddressTypeRecord, Date&gt; SINCE =               // [...]
    +    public static final UDTField&lt;UAddressTypeRecord, Integer&gt; CODE =             // [...]
    +}</pre>
    +
    +							<p>Now, when you interact with entities or procedures that hold UDT's, that's very simple as well. Here is an example: </p>
    +<pre class="prettyprint lang-java">// Fetch any author from the T_AUTHOR table
    +TAuthorRecord author = create.selectFrom(T_AUTHOR).fetchAny();
    +
    +// Print out the author's address's house number
    +System.out.println(author.getAddress().getStreet().getNo());</pre>
    +
    +							<p>A similar thing can be achieved when interacting with the example stored procedure: </p>
    +<pre class="prettyprint lang-java">// Create a new UDTRecord of type U_ADDRESS_TYPE
    +UAddressTypeRecord address = new UAddressTypeRecord();
    +address.setCountry("Switzerland");
    +
    +// Call the stored procedure with IN OUT parameter of type U_ADDRESS_TYPE
    +address = Procedures.pCheckAddress(connection, address);</pre>
    +
    +
    +							<h2>ARRAY types</h2>
    +							<p>
    +								The notion of ARRAY types in RDBMS is not standardised at all. Very
    +								modern databases (especially the Java-based ones) have implemented
    +								ARRAY types exactly as what they are. "ARRAYs of something". In other
    +								words, an ARRAY OF VARCHAR would be something very similar to Java's
    +								notion of String[]. An ARRAY OF ARRAY OF VARCHAR would then be a
    +								String[][] in Java. Some RDMBS, however, enforce stronger typing and
    +								need the explicit creation of types for every ARRAY as well. These are
    +								example String[] ARRAY types in various SQL dialects supported by jOOQ
    +								1.5.4:
    +							</p>
    +							<ul>
    +								
    +<li>Oracle: VARRAY OF VARCHAR2. A strongly typed object encapsulating an ARRAY of a given type. See the <a href="http://download.oracle.com/docs/cd/B19306_01/appdev.102/b14261/collection_definition.htm">documentation.</a>
    +</li>
    +								
    +<li>Postgres: text[]. Any data type can be turned into an array by suffixing it with []. See the <a href="http://www.postgresql.org/docs/9.0/interactive/arrays.html">documentation</a>
    +</li>
    +								
    +<li>HSQLDB: VARCHAR ARRAY. Any data type can be turned into an array by suffixing it with ARRAY. See the <a href="http://hsqldb.org/doc/2.0/guide/sqlgeneral-chapt.html#N1070F">documentation</a>
    +</li>
    +								
    +<li>H2: ARRAY. H2 does not know of typed arrays. All ARRAYs are mapped to Object[]. See the <a href="http://www.h2database.com/html/datatypes.html#array_type">documentation</a>
    +</li>
    +							
    +</ul>
    +							<p>Soon to be supported: </p>
    +							<ul>
    +								
    +<li>DB2: Knows a similar strongly-typed ARRAY type, like Oracle </li>
    +							
    +</ul>
    +							<p>
    +								From jOOQ's perspective, the ARRAY types fit in just like any other
    +								type wherever the
    +								&lt;T&gt; generic type parameter is existent. It integrates well with tables
    +									and stored procedures.
    +							</p>
    +
    +							<h3>Example: General ARRAY types</h3>
    +							<p>An example usage of ARRAYs is given here for the Postgres dialect </p>
    +
    +<pre class="prettyprint lang-sql">CREATE TABLE t_arrays (
    +  id integer not null primary key,
    +  string_array VARCHAR(20)[],
    +  number_array INTEGER[]
    +)
    +
    +CREATE FUNCTION f_arrays(in_array IN text[]) RETURNS text[]</pre>
    +
    +							<p>When generating source code from the above entities, these artefacts will be created in Java: </p>
    +<pre class="prettyprint lang-java">public class TArrays extends UpdatableTableImpl&lt;TArraysRecord&gt; {
    +
    +    // The generic type parameter &lt;T&gt; is bound to an array of a matching type
    +    public static final TableField&lt;TArraysRecord, String[]&gt; STRING_ARRAY =  // [...]
    +    public static final TableField&lt;TArraysRecord, Integer[]&gt; NUMBER_ARRAY = // [...]
    +}
    +
    +// The convenience class is enhanced with these methods
    +public final class Functions {
    +    public static String[] fArrays(Connection connection, String[] inArray) { // [...]
    +    public static Field&lt;String[]&gt; fArrays(String[] inArray) {                                     // [...]
    +    public static Field&lt;String[]&gt; fArrays(Field&lt;String[]&gt; inArray) {                              // [...]
    +}</pre>
    +
    +							<h3>Example: Oracle VARRAY types</h3>
    +							<p>In Oracle, a VARRAY type is something slightly different than in
    +								other RDMBS. It is a type that encapsules the actual ARRAY and creates
    +								a new type from it. While all text[] types are equal and thus
    +								compatible in Postgres, this does not apply for all VARRAY OF VARCHAR2
    +								types. Hence, it is important to provide access to VARRAY types and
    +								generated objects from those types as well. The example above would
    +								read like this in Oracle: </p>
    +
    +<pre class="prettyprint lang-sql">CREATE TYPE u_string_array AS VARRAY(4) OF VARCHAR2(20)
    +CREATE TYPE u_number_array AS VARRAY(4) OF NUMBER(7)
    +
    +CREATE TABLE t_arrays (
    +  id NUMBER(7) not null primary key,
    +  string_array u_string_array,
    +  number_array u_number_array
    +)
    +
    +CREATE OR REPLACE FUNCTION f_arrays (in_array u_string_array)
    +RETURN u_string_array</pre>
    +
    +							<p>Note that it becomes clear immediately, that a mapping from
    +								U_STRING_ARRAY to String[] is obvious. But a mapping from String[] to
    +								U_STRING_ARRAY is not. These are the generated
    +								<a href="http://www.jooq.org/javadoc/latest/org/jooq/ArrayRecord.html" title="Internal API reference: org.jooq.ArrayRecord">org.jooq.ArrayRecord</a> and other
    +								artefacts in Oracle: </p>
    +
    +<pre class="prettyprint lang-java">public class UStringArrayRecord extends ArrayRecordImpl&lt;String&gt; {  // [...]
    +public class UNumberArrayRecord extends ArrayRecordImpl&lt;Integer&gt; { // [...]
    +
    +public class TArrays extends UpdatableTableImpl&lt;TArraysRecord&gt; {
    +    public static final TableField&lt;TArraysRecord, UStringArrayRecord&gt; STRING_ARRAY = // [...]
    +    public static final TableField&lt;TArraysRecord, UNumberArrayRecord&gt; NUMBER_ARRAY = // [...]
    +}
    +
    +public final class Functions {
    +    public static UStringArrayRecord fArrays3(Connection connection, UStringArrayRecord inArray) { // [...]
    +    public static Field&lt;UStringArrayRecord&gt; fArrays3(UStringArrayRecord inArray) {                 // [...]
    +    public static Field&lt;UStringArrayRecord&gt; fArrays3(Field&lt;UStringArrayRecord&gt; inArray) {          // [...]
    +}</pre>
    +
    +
    +							<h2>ENUM types</h2>
    +							<p>True ENUM types are a rare species in the RDBMS world. Currently,
    +								MySQL and Postgres are the only RDMBS supported by jOOQ, that provide
    +								ENUM types. </p>
    +
    +							<ul>
    +								
    +<li>In MySQL, an ENUM type is declared directly upon a column. It cannot be reused as a type. See the <a href="http://dev.mysql.com/doc/refman/5.5/en/enum.html">documentation.</a> 
    +</li>
    +								
    +<li>In Postgres, the ENUM type is declared independently and can be reused among tables, functions, etc. See the <a href="http://www.postgresql.org/docs/9.0/interactive/datatype-enum.html">documentation.</a> 
    +</li>
    +								
    +<li>Other RDMBS know about "ENUM constraints", such as the Oracle CHECK constraint. These are not true ENUMS, however. jOOQ refrains from using their information for source code generation </li>
    +							
    +</ul>
    +
    +							<p>Some examples: </p>
    +<pre class="prettyprint lang-sql">-- An example enum type
    +CREATE TYPE u_book_status AS ENUM ('SOLD OUT', 'ON STOCK', 'ORDERED')
    +
    +-- An example useage of that enum type
    +CREATE TABLE t_book (
    +  id INTEGER NOT NULL PRIMARY KEY,
    +
    +  -- [...]
    +  status u_book_status
    +)</pre>
    +
    +							<p>The above Postgres ENUM type will be generated as </p>
    +<pre class="prettyprint lang-java">public enum UBookStatus implements EnumType {
    +    ORDERED("ORDERED"),
    +    ON_STOCK("ON STOCK"),
    +    SOLD_OUT("SOLD OUT");
    +
    +    // [...]
    +}</pre>
    +							<p>Intuitively, the generated classes for the T_BOOK table in Postgres would look like this: </p>
    +<pre class="prettyprint lang-sql">// The meta-model class
    +public class TBook extends UpdatableTableImpl&lt;TBookRecord&gt; {
    +
    +    // The TableField STATUS binds &lt;T&gt; to UBookStatus
    +    public static final TableField&lt;TBookRecord, UBookStatus&gt; STATUS = // [...]
    +
    +    // [...]
    +}
    +
    +// The record class
    +public class TBookRecord extends UpdatableRecordImpl&lt;TBookRecord&gt; {
    +
    +    // Corresponding to the Table meta-model, also setters and getters
    +    // deal with the generated UBookStatus
    +    public void setStatus(UBookStatus value) { // [...]
    +    public UBookStatus getStatus() {           // [...]
    +}</pre>
    +
    +							<p>Note that jOOQ allows you to simulate ENUM types where this makes
    +								sense in your data model. See the section on
    +								<a href="<?=$root?>/manual/ADVANCED/MasterData/" title="jOOQ Manual reference: Master data generation. Enumeration tables">master data</a> for more
    +								details. </p>
    +						<br><table width="100%" border="0" cellspacing="0" cellpadding="0">
    +<tr>
    +<td valign="top" align="left"><a href="<?=$root?>/manual/">The jOOQ User Manual</a> : <a href="<?=$root?>/manual/META/">Meta model code generation</a> : <a href="<?=$root?>/manual/META/UDT/">UDT's including ARRAY and ENUM types</a></td><td style="white-space: nowrap" valign="top" align="right"><a title="Previous section: Procedures and packages" href="<?=$root?>/manual/META/PROCEDURE/">previous</a> : <a title="Next section: Sequences" href="<?=$root?>/manual/META/SEQUENCE/">next</a></td>
    +</tr>
    +</table>
    +<?php 
    +}
    +?>
    +
    diff --git a/jOOQ-website/manual/META/index.php b/jOOQ-website/manual/META/index.php
    new file mode 100644
    index 00000000000..86b568533c4
    --- /dev/null
    +++ b/jOOQ-website/manual/META/index.php
    @@ -0,0 +1,75 @@
    +
    +<?php 
    +// The following content has been XSL transformed from manual.xml using html-pages.xsl
    +// Please do not edit this content manually
    +require '../../frame.php';
    +function getH1() {
    +    return "Meta model code generation";
    +}
    +function getActiveMenu() {
    +	return "manual";
    +}
    +function getSlogan() {
    +	return "In these sections you will learn about how to configure and use
    +					jOOQ's source code generator";
    +}
    +function printContent() {
    +    global $root;
    +?>
    +<table width="100%" border="0" cellspacing="0" cellpadding="0">
    +<tr>
    +<td valign="top" align="left"><a href="<?=$root?>/manual/">The jOOQ User Manual</a> : <a href="<?=$root?>/manual/META/">Meta model code generation</a></td><td style="white-space: nowrap" valign="top" align="right"><a title="Previous section: Extend jOOQ with custom types" href="<?=$root?>/manual/JOOQ/Extend/">previous</a> : <a title="Next section: Configuration and setup of the generator" href="<?=$root?>/manual/META/Configuration/">next</a></td>
    +</tr>
    +</table>
    +					<h2>Overview</h2>
    +					<p>
    +						In the previous chapter, we have seen how to use the
    +						<a href="<?=$root?>/manual/JOOQ/Factory/" title="jOOQ Manual reference: The Factory class">Factory</a> in order to create
    +						<a href="<?=$root?>/manual/JOOQ/Query/" title="jOOQ Manual reference: The Query and its various subtypes">Queries</a> and fetch data in
    +						<a href="<?=$root?>/manual/JOOQ/Result/" title="jOOQ Manual reference: Results and Records">Results</a>. The strength of jOOQ not
    +						only lies in its object-oriented
    +						<a href="<?=$root?>/manual/JOOQ/QueryPart/" title="jOOQ Manual reference: QueryParts and the global architecture">Query model</a>,
    +						but also in the fact
    +						that Java source code is generated from your database schema into the
    +						META data model. jOOQ follows the paradigm, that your database comes
    +						first (see also <a href="<?=$root?>/">home page</a>).
    +						This means that you should not modify
    +						generated source code, but only adapt entities in your database. Every
    +						change in your database is reflected in a corresponding change in your
    +						generated meta-model.
    +					</p>
    +					<p>
    +						Artefacts, such as tables, views, user defined types, sequences, stored
    +						procedures, packages have a corresponding artefact in Java.
    +					</p>
    +				<h3>Table of contents</h3><ol>
    +<li>
    +<a title="Configuration and setup of the generator" href="<?=$root?>/manual/META/Configuration/">Configuration and setup of the generator</a>
    +</li>
    +<li>
    +<a title="Advanced configuration of the generator" href="<?=$root?>/manual/META/AdvancedConfiguration/">Advanced configuration of the generator</a>
    +</li>
    +<li>
    +<a title="The schema, top-level generated artefact" href="<?=$root?>/manual/META/SCHEMA/">The schema, top-level generated artefact</a>
    +</li>
    +<li>
    +<a title="Tables, views and their corresponding records" href="<?=$root?>/manual/META/TABLE/">Tables, views and their corresponding records</a>
    +</li>
    +<li>
    +<a title="Procedures and packages" href="<?=$root?>/manual/META/PROCEDURE/">Procedures and packages</a>
    +</li>
    +<li>
    +<a title="UDT's including ARRAY and ENUM types" href="<?=$root?>/manual/META/UDT/">UDT's including ARRAY and ENUM types</a>
    +</li>
    +<li>
    +<a title="Sequences" href="<?=$root?>/manual/META/SEQUENCE/">Sequences</a>
    +</li>
    +</ol><br><table width="100%" border="0" cellspacing="0" cellpadding="0">
    +<tr>
    +<td valign="top" align="left"><a href="<?=$root?>/manual/">The jOOQ User Manual</a> : <a href="<?=$root?>/manual/META/">Meta model code generation</a></td><td style="white-space: nowrap" valign="top" align="right"><a title="Previous section: Extend jOOQ with custom types" href="<?=$root?>/manual/JOOQ/Extend/">previous</a> : <a title="Next section: Configuration and setup of the generator" href="<?=$root?>/manual/META/Configuration/">next</a></td>
    +</tr>
    +</table>
    +<?php 
    +}
    +?>
    +
    diff --git a/jOOQ-website/manual/START/index.php b/jOOQ-website/manual/START/index.php
    new file mode 100644
    index 00000000000..fb073a38780
    --- /dev/null
    +++ b/jOOQ-website/manual/START/index.php
    @@ -0,0 +1,36 @@
    +
    +<?php 
    +// The following content has been XSL transformed from manual.xml using html-pages.xsl
    +// Please do not edit this content manually
    +require '../../frame.php';
    +function printH1() {
    +    print "Getting started quickly with jOOQ";
    +}
    +function getActiveMenu() {
    +	return "manual";
    +}
    +function getSlogan() {
    +	return "
    +					In these sections, you will find an overview of how to
    +					get started quickly with jOOQ. You can still read the other chapters
    +					for a more in-depth reference.
    +				";
    +}
    +function printContent() {
    +    global $root;
    +?>
    +<table width="100%" border="0" cellspacing="0" cellpadding="0">
    +<tr>
    +<td valign="top" align="left"><a href="<?=$root?>/manual/">The jOOQ User Manual</a> : <a href="<?=$root?>/manual/START/">Getting started quickly with jOOQ</a></td><td style="white-space: nowrap" valign="top" align="right"><a title="Previous section: The jOOQ User Manual" href="<?=$root?>/manual/">previous</a> : <a title="Next section: jOOQ classes and their usage" href="<?=$root?>/manual/JOOQ/">next</a></td>
    +</tr>
    +</table>
    +					asdf
    +				<br><table width="100%" border="0" cellspacing="0" cellpadding="0">
    +<tr>
    +<td valign="top" align="left"><a href="<?=$root?>/manual/">The jOOQ User Manual</a> : <a href="<?=$root?>/manual/START/">Getting started quickly with jOOQ</a></td><td style="white-space: nowrap" valign="top" align="right"><a title="Previous section: The jOOQ User Manual" href="<?=$root?>/manual/">previous</a> : <a title="Next section: jOOQ classes and their usage" href="<?=$root?>/manual/JOOQ/">next</a></td>
    +</tr>
    +</table>
    +<?php 
    +}
    +?>
    +
    diff --git a/jOOQ-website/manual/index.php b/jOOQ-website/manual/index.php
    new file mode 100644
    index 00000000000..97a372bdbe2
    --- /dev/null
    +++ b/jOOQ-website/manual/index.php
    @@ -0,0 +1,252 @@
    +
    +<?php 
    +// The following content has been XSL transformed from manual.xml using html-pages.xsl
    +// Please do not edit this content manually
    +require '../frame.php';
    +function getH1() {
    +    return "The jOOQ User Manual";
    +}
    +function getActiveMenu() {
    +	return "manual";
    +}
    +function getSlogan() {
    +	return "
    +			The manual is the central reference for most of jOOQ's functionality.
    +		";
    +}
    +function printContent() {
    +    global $root;
    +?>
    +<table width="100%" border="0" cellspacing="0" cellpadding="0">
    +<tr>
    +<td valign="top" align="left"><a href="<?=$root?>/manual/">The jOOQ User Manual</a></td><td style="white-space: nowrap" valign="top" align="right"><a title="Next section: jOOQ classes and their usage" href="<?=$root?>/manual/JOOQ/">next</a></td>
    +</tr>
    +</table>
    +			
    +				<h3>All manuals</h3>
    +				<ul>
    +					
    +<li>
    +<a href="<?=$root?>/manual-single-page" title="The jOOQ Manual on one single page">A single-paged HTML manual</a>
    +</li>
    +					
    +<li>
    +<a href="<?=$root?>/manual" title="The jOOQ Manual on multiple pages">A multi-paged HTML manual</a>
    +</li>
    +					
    +<li>
    +<a href="<?=$root?>/manual-pdf/jOOQ-manual.pdf" title="The jOOQ Manual as a PDF">A downloadable PDF manual</a>
    +</li>
    +				
    +</ul>
    +			
    +			<h3>Overview</h3>
    +			<p>This manual is divided into four main sections:</p>
    +			<ul>
    +				
    +<li>
    +					
    +<a href="<?=$root?>/manual/JOOQ/" title="jOOQ Manual reference: jOOQ classes and their usage">jOOQ classes and their usage</a>
    +					
    +<p>
    +						See these chapters for an overview of the jOOQ internal architecture
    +						and all types that are involved with jOOQ's query creation and
    +						execution. This is the important part for you, also, if you wish to
    +						extend jOOQ
    +					</p>
    +				
    +</li>
    +				
    +<li>
    +					
    +<a href="<?=$root?>/manual/META/" title="jOOQ Manual reference: Meta model code generation">Meta model code generation</a>
    +					
    +<p>
    +						See these chapters to understand how you can use jOOQ as a source code
    +						generator, and what type of artefacts are generated by jOOQ
    +					</p>
    +				
    +</li>
    +				
    +<li>
    +					
    +<a href="<?=$root?>/manual/DSL/" title="jOOQ Manual reference: DSL or fluent API. Where SQL meets Java">DSL or fluent API. Where SQL meets Java</a>
    +					
    +<p>
    +						See these chapters to learn about how to use jOOQ in every day's work. The
    +						jOOQ DSL is the main way to create and execute jOOQ queries almost as
    +						if SQL was embedded in Java directly
    +					</p>
    +				
    +</li>
    +				
    +<li>
    +					
    +<a href="<?=$root?>/manual/ADVANCED/" title="jOOQ Manual reference: Advanced topics">Advanced topics</a>
    +					
    +<p>
    +						Some advanced topics including not-everyday functionality
    +					</p>
    +				
    +</li>
    +			
    +</ul>
    +		<h3>Table of contents</h3><ol>
    +<li>
    +<a title="jOOQ classes and their usage" href="<?=$root?>/manual/JOOQ/">jOOQ classes and their usage</a>
    +<ol>
    +<li>
    +<a title="The example database" href="<?=$root?>/manual/JOOQ/ExampleDatabase/">The example database</a>
    +</li>
    +<li>
    +<a title="The Factory class" href="<?=$root?>/manual/JOOQ/Factory/">The Factory class</a>
    +</li>
    +<li>
    +<a title="Tables and Fields" href="<?=$root?>/manual/JOOQ/Table/">Tables and Fields</a>
    +</li>
    +<li>
    +<a title="Results and Records" href="<?=$root?>/manual/JOOQ/Result/">Results and Records</a>
    +</li>
    +<li>
    +<a title="Updatable Records" href="<?=$root?>/manual/JOOQ/UpdatableRecord/">Updatable Records</a>
    +</li>
    +<li>
    +<a title="The Query and its various subtypes" href="<?=$root?>/manual/JOOQ/Query/">The Query and its various subtypes</a>
    +</li>
    +<li>
    +<a title="ResultQuery and various ways of fetching data" href="<?=$root?>/manual/JOOQ/ResultQuery/">ResultQuery and various ways of fetching data</a>
    +</li>
    +<li>
    +<a title="Bind values" href="<?=$root?>/manual/JOOQ/BindValues/">Bind values</a>
    +</li>
    +<li>
    +<a title="QueryParts and the global architecture" href="<?=$root?>/manual/JOOQ/QueryPart/">QueryParts and the global architecture</a>
    +</li>
    +<li>
    +<a title="Serializability of QueryParts and Results" href="<?=$root?>/manual/JOOQ/Serializability/">Serializability of QueryParts and Results</a>
    +</li>
    +<li>
    +<a title="Extend jOOQ with custom types" href="<?=$root?>/manual/JOOQ/Extend/">Extend jOOQ with custom types</a>
    +</li>
    +</ol>
    +</li>
    +<li>
    +<a title="Meta model code generation" href="<?=$root?>/manual/META/">Meta model code generation</a>
    +<ol>
    +<li>
    +<a title="Configuration and setup of the generator" href="<?=$root?>/manual/META/Configuration/">Configuration and setup of the generator</a>
    +</li>
    +<li>
    +<a title="Advanced configuration of the generator" href="<?=$root?>/manual/META/AdvancedConfiguration/">Advanced configuration of the generator</a>
    +</li>
    +<li>
    +<a title="The schema, top-level generated artefact" href="<?=$root?>/manual/META/SCHEMA/">The schema, top-level generated artefact</a>
    +</li>
    +<li>
    +<a title="Tables, views and their corresponding records" href="<?=$root?>/manual/META/TABLE/">Tables, views and their corresponding records</a>
    +</li>
    +<li>
    +<a title="Procedures and packages" href="<?=$root?>/manual/META/PROCEDURE/">Procedures and packages</a>
    +</li>
    +<li>
    +<a title="UDT's including ARRAY and ENUM types" href="<?=$root?>/manual/META/UDT/">UDT's including ARRAY and ENUM types</a>
    +</li>
    +<li>
    +<a title="Sequences" href="<?=$root?>/manual/META/SEQUENCE/">Sequences</a>
    +</li>
    +</ol>
    +</li>
    +<li>
    +<a title="DSL or fluent API. Where SQL meets Java" href="<?=$root?>/manual/DSL/">DSL or fluent API. Where SQL meets Java</a>
    +<ol>
    +<li>
    +<a title="Complete SELECT syntax" href="<?=$root?>/manual/DSL/SELECT/">Complete SELECT syntax</a>
    +</li>
    +<li>
    +<a title="Table sources" href="<?=$root?>/manual/DSL/TABLESOURCE/">Table sources</a>
    +</li>
    +<li>
    +<a title="Conditions" href="<?=$root?>/manual/DSL/CONDITION/">Conditions</a>
    +</li>
    +<li>
    +<a title="Aliased tables and fields" href="<?=$root?>/manual/DSL/ALIAS/">Aliased tables and fields</a>
    +</li>
    +<li>
    +<a title="Nested SELECT using the IN operator" href="<?=$root?>/manual/DSL/IN/">Nested SELECT using the IN operator</a>
    +</li>
    +<li>
    +<a title="Nested SELECT using the EXISTS operator" href="<?=$root?>/manual/DSL/EXISTS/">Nested SELECT using the EXISTS operator</a>
    +</li>
    +<li>
    +<a title="Other types of nested SELECT" href="<?=$root?>/manual/DSL/NESTED/">Other types of nested SELECT</a>
    +</li>
    +<li>
    +<a title="UNION and other set operations" href="<?=$root?>/manual/DSL/UNION/">UNION and other set operations</a>
    +</li>
    +<li>
    +<a title="Functions and aggregate operators" href="<?=$root?>/manual/DSL/FUNCTIONS/">Functions and aggregate operators</a>
    +</li>
    +<li>
    +<a title="Stored procedures and functions" href="<?=$root?>/manual/DSL/PROCEDURES/">Stored procedures and functions</a>
    +</li>
    +<li>
    +<a title="Arithmetic operations and concatenation" href="<?=$root?>/manual/DSL/ARITHMETIC/">Arithmetic operations and concatenation</a>
    +</li>
    +<li>
    +<a title="The CASE clause" href="<?=$root?>/manual/DSL/CASE/">The CASE clause</a>
    +</li>
    +<li>
    +<a title="Type casting" href="<?=$root?>/manual/DSL/CAST/">Type casting</a>
    +</li>
    +<li>
    +<a title="When it's just easier: Plain SQL" href="<?=$root?>/manual/DSL/SQL/">When it's just easier: Plain SQL</a>
    +</li>
    +</ol>
    +</li>
    +<li>
    +<a title="Advanced topics" href="<?=$root?>/manual/ADVANCED/">Advanced topics</a>
    +<ol>
    +<li>
    +<a title="Master data generation. Enumeration tables" href="<?=$root?>/manual/ADVANCED/MasterData/">Master data generation. Enumeration tables</a>
    +</li>
    +<li>
    +<a title="Custom data types and type conversion" href="<?=$root?>/manual/ADVANCED/CustomTypes/">Custom data types and type conversion</a>
    +</li>
    +<li>
    +<a title="Mapping generated schemata and tables" href="<?=$root?>/manual/ADVANCED/SchemaMapping/">Mapping generated schemata and tables</a>
    +</li>
    +<li>
    +<a title="Execute listeners and the jOOQ Console" href="<?=$root?>/manual/ADVANCED/ExecuteListener/">Execute listeners and the jOOQ Console</a>
    +</li>
    +<li>
    +<a title="Adding Oracle hints to queries" href="<?=$root?>/manual/ADVANCED/OracleHints/">Adding Oracle hints to queries</a>
    +</li>
    +<li>
    +<a title="The Oracle CONNECT BY clause" href="<?=$root?>/manual/ADVANCED/CONNECTBY/">The Oracle CONNECT BY clause</a>
    +</li>
    +<li>
    +<a title="The Oracle 11g PIVOT clause" href="<?=$root?>/manual/ADVANCED/PIVOT/">The Oracle 11g PIVOT clause</a>
    +</li>
    +<li>
    +<a title="jOOQ's relational division syntax" href="<?=$root?>/manual/ADVANCED/DIVISION/">jOOQ's relational division syntax</a>
    +</li>
    +<li>
    +<a title="Exporting to XML, CSV, JSON, HTML, Text" href="<?=$root?>/manual/ADVANCED/Export/">Exporting to XML, CSV, JSON, HTML, Text</a>
    +</li>
    +<li>
    +<a title="Importing data from XML, CSV" href="<?=$root?>/manual/ADVANCED/Import/">Importing data from XML, CSV</a>
    +</li>
    +<li>
    +<a title="Using JDBC batch operations" href="<?=$root?>/manual/ADVANCED/Batch/">Using JDBC batch operations</a>
    +</li>
    +</ol>
    +</li>
    +</ol><br><table width="100%" border="0" cellspacing="0" cellpadding="0">
    +<tr>
    +<td valign="top" align="left"><a href="<?=$root?>/manual/">The jOOQ User Manual</a></td><td style="white-space: nowrap" valign="top" align="right"><a title="Next section: jOOQ classes and their usage" href="<?=$root?>/manual/JOOQ/">next</a></td>
    +</tr>
    +</table>
    +<?php 
    +}
    +?>
    +
    diff --git a/jOOQ-website/notes.php b/jOOQ-website/notes.php
    new file mode 100644
    index 00000000000..c9c71256f3d
    --- /dev/null
    +++ b/jOOQ-website/notes.php
    @@ -0,0 +1,96 @@
    +<?php
    +require 'frame.php';
    +function getH1() {
    +	return 'The history of jOOQ<br/>From 2009 to ' . date('Y');
    +}
    +function getSlogan() {
    +	return "jOOQ has come a long way. The community is growing as features are being added
    +			in the beginning, jOOQ was no more than type-safe querying for simple statements. See how
    +			jOOQ is growing to support almost all SQL constructs by 12 different RDBMS";
    +}
    +function getActiveMenu() {
    +	return "notes";
    +}
    +function printContent() {
    +	$contents = file('inc/RELEASENOTES.txt');
    +
    +	for ($i = 0; $i < count($contents); $i++) {
    +		if ($i + 1 < count($contents) && substr($contents[$i + 1], 0, 3) == '===') {
    +			print '<h2>';
    +			print $contents[$i];
    +			print '</h2>';
    +		}
    +		else if ($i + 1 < count($contents) && substr($contents[$i + 1], 0, 3) == '---') {
    +			print '<h3>';
    +			print $contents[$i];
    +			print '</h3>';
    +		}
    +
    +		else if (substr($contents[$i], 0, 3) == '===') {
    +			// Skip
    +		}
    +		else if (substr($contents[$i], 0, 3) == '---') {
    +			// Skip
    +		}
    +		else if (trim($contents[$i]) == '' && substr($contents[$i + 1], 0, 1) != '-') {
    +			print '<p>';
    +		}
    +
    +		// Create an <ul> from a list of "dashed" elements
    +		else if (substr($contents[$i], 0, 1) == '-') {
    +			print '<ul>';
    +
    +			while (trim($contents[$i]) != '') {
    +				print '<li>';
    +				print preg_replace('%-\s+(.*)%', '$1', markup($contents[$i]));
    +
    +				while (trim($contents[++$i]) != '' && substr($contents[$i], 0, 1) != '-') {
    +					print markup(htmlentities($contents[$i]));
    +				}
    +
    +				print '</li>';
    +			}
    +
    +			print '</ul><p>';
    +		}
    +
    +		// Create a ticket-table from a list of "hashed" elements
    +		else if (substr($contents[$i], 0, 1) == '#') {
    +			print '<table class="ticket-table">';
    +
    +			while (trim($contents[$i]) != '') {
    +				$ticket = preg_replace('%#(\d+).*%', '$1', $contents[$i]);
    +
    +				print '<tr>';
    +				print '<td width="80">';
    +				print '<a href="https://sourceforge.net/apps/trac/jooq/ticket/' . $ticket . '">#';
    +				print $ticket;
    +				print '</a>';
    +				print '</td>';
    +				print '<td>';
    +				print htmlentities(preg_replace('%#\d+\s+-\s+(.*)%', '$1', $contents[$i]));
    +
    +				while (trim($contents[++$i]) != '' && substr($contents[$i], 0, 1) != '#') {
    +					print htmlentities($contents[$i]);
    +				}
    +
    +				print '</td>';
    +				print '</tr>';
    +			}
    +
    +			print '</table>';
    +		}
    +		else {
    +		    print markup($contents[$i]);
    +		}
    +	}
    +}
    +
    +function markup($value) {
    +	$value = htmlentities($value);
    +	$value = preg_replace('%&lt;pre&gt;%', '<pre>', $value);
    +	$value = preg_replace('%&lt;/pre&gt;%', '</pre>', $value);
    +	$value = preg_replace('%(https?://\S+)%', '<a href="$1">$1</a>', $value);
    +	return $value;
    +}
    +?>
    \ No newline at end of file
    diff --git a/jOOQ-website/pom.xml b/jOOQ-website/pom.xml
    new file mode 100644
    index 00000000000..4ef98ae950c
    --- /dev/null
    +++ b/jOOQ-website/pom.xml
    @@ -0,0 +1,50 @@
    +<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
    +  <modelVersion>4.0.0</modelVersion>
    +  <groupId>jOOQ-website-man-builder</groupId>
    +  <artifactId>jOOQ-website-man-builder</artifactId>
    +  <version>0.0.1-SNAPSHOT</version>
    +  <dependencies>
    +  	<dependency>
    +  		<groupId>org.jooq</groupId>
    +  		<artifactId>joox</artifactId>
    +  		<version>0.9.3</version>
    +  		<type>jar</type>
    +  		<scope>compile</scope>
    +  	</dependency>
    +  	<dependency>
    +  		<groupId>commons-io</groupId>
    +  		<artifactId>commons-io</artifactId>
    +  		<version>2.1</version>
    +  		<type>jar</type>
    +  		<scope>compile</scope>
    +  	</dependency>
    +  	<dependency>
    +  		<groupId>org.apache.commons</groupId>
    +  		<artifactId>commons-lang3</artifactId>
    +  		<version>3.0.1</version>
    +  		<type>jar</type>
    +  		<scope>compile</scope>
    +  	</dependency>
    +  	<dependency>
    +  		<groupId>xalan</groupId>
    +  		<artifactId>xalan</artifactId>
    +  		<version>2.7.1</version>
    +  		<type>jar</type>
    +  		<scope>compile</scope>
    +  	</dependency>
    +  	<dependency>
    +  		<groupId>org.apache.xmlgraphics</groupId>
    +  		<artifactId>fop</artifactId>
    +  		<version>0.95</version>
    +  		<type>jar</type>
    +  		<scope>compile</scope>
    +  	</dependency>
    +  	<dependency>
    +  		<groupId>org.apache.avalon.framework</groupId>
    +  		<artifactId>avalon-framework-impl</artifactId>
    +  		<version>4.3.1</version>
    +  		<type>jar</type>
    +  		<scope>compile</scope>
    +  	</dependency>
    +  </dependencies>
    +</project>
    \ No newline at end of file
    diff --git a/jOOQ-website/robots.txt b/jOOQ-website/robots.txt
    new file mode 100644
    index 00000000000..bc1164092ce
    --- /dev/null
    +++ b/jOOQ-website/robots.txt
    @@ -0,0 +1,3 @@
    +User-agent: *
    +Allow: /
    +
    diff --git a/jOOQ-website/sql-as-seen-by-jooq.svg b/jOOQ-website/sql-as-seen-by-jooq.svg
    new file mode 100644
    index 00000000000..2f871cd000d
    --- /dev/null
    +++ b/jOOQ-website/sql-as-seen-by-jooq.svg
    @@ -0,0 +1,537 @@
    +<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><head><xhtml:meta xmlns:xhtml="http://www.w3.org/1999/xhtml" http-equiv="Content-Type" content="application/xhtml+xml"></xhtml:meta><xhtml:link xmlns:xhtml="http://www.w3.org/1999/xhtml" rel="shortcut icon" href="/favicon.ico"></xhtml:link><xhtml:title xmlns:xhtml="http://www.w3.org/1999/xhtml">Railroad Diagram Generator</xhtml:title><style type="text/css">
    +    ::-moz-selection
    +    {
    +      color: #FFFCF0;
    +      background: #4D3D00;
    +    }
    +    ::selection
    +    {
    +      color: #FFFCF0;
    +      background: #4D3D00;
    +    }      
    +    body
    +    {
    +      font: normal 12px Verdana, sans-serif;
    +      color: #4D3D00;
    +      background: #FFFCF0;
    +    }
    +    a:link, a:visited
    +    {
    +      color: #4D3D00;
    +    }
    +    a.button, #tabs li a
    +    {
    +      padding: 0.25em 0.5em;
    +      border: 1px solid #806600;
    +      background: #F1E8C6;
    +      color: #806600;
    +      text-decoration: none;
    +      font-weight: bold;
    +    }
    +    a:hover, #tabs li a:hover
    +    {
    +      color: #1A1400;
    +      background: #FFF4C7;
    +      border-color: #1A1400;       
    +    }     
    +    #tabs
    +    {
    +      padding: 3px 10px;
    +      margin-left: 0;
    +      margin-top: 58px;
    +      border-bottom: 1px solid #4D3D00;
    +    }  
    +    #tabs li
    +    {
    +      list-style: none;
    +      margin-left: 5px;
    +      display: inline;
    +    }
    +    #tabs li a
    +    {     
    +      border-bottom: 1px solid #4D3D00;
    +    }
    +    #tabs li a.active
    +    {
    +      color: #4D3D00;
    +      background: #FFFCF0;
    +      border-color: #4D3D00;
    +      border-bottom: 1px solid #FFFCF0;
    +      outline: none;
    +    }
    +    #divs div
    +    {
    +      display: none;
    +      overflow:auto;
    +    }
    +    #divs div.active
    +    {
    +      display: block;
    +    }
    +    #text
    +    {
    +      border-color: #806600;
    +      background: #FFFEFA;
    +      color: #1A1400;
    +    }
    +    td.time
    +    {
    +      vertical-align: top;
    +    }
    +    span.time
    +    {
    +      font-size: 9px;
    +      visibility: hidden;
    +    }
    +    td.time:hover span.time
    +    {
    +      visibility: visible;
    +    }
    +  </style><svg xmlns="http://www.w3.org/2000/svg"><defs><style type="text/css">
    +    @namespace "http://www.w3.org/2000/svg";
    +    .line                 {fill: none; stroke: #332900;}
    +    filled                {fill: #332900; stroke: none;}
    +    text                  {font-family: Verdana, Sans-serif;
    +                            font-size: 12px;
    +                            fill: #4D3D00;
    +                          }
    +    text.terminal         {font-family: Verdana, Sans-serif;
    +                            font-size: 12px;
    +                            fill: #4D3D00;
    +                            font-weight: bold;
    +                          }
    +    rect, circle, polygon {fill: #332900; stroke: #332900;}
    +    rect.terminal         {fill: #FFCC00; stroke: #332900;}
    +    rect.nonterminal      {fill: #FFEB99; stroke: #332900;}
    +    rect.text             {fill: none; stroke: none;}    
    +    polygon.regexp        {fill: #FFF5CC; stroke: #332900;}
    +  </style></defs></svg></head><body><xhtml:p xmlns:xhtml="http://www.w3.org/1999/xhtml" style="font-size: 14px; font-weight:bold"><xhtml:a name="QUERY">QUERY:</xhtml:a></xhtml:p><svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="220" height="344"><defs><style type="text/css">
    +    @namespace "http://www.w3.org/2000/svg";
    +    .line                 {fill: none; stroke: #332900;}
    +    filled                {fill: #332900; stroke: none;}
    +    text                  {font-family: Verdana, Sans-serif;
    +                            font-size: 12px;
    +                            fill: #4D3D00;
    +                          }
    +    text.terminal         {font-family: Verdana, Sans-serif;
    +                            font-size: 12px;
    +                            fill: #4D3D00;
    +                            font-weight: bold;
    +                          }
    +    rect, circle, polygon {fill: #332900; stroke: #332900;}
    +    rect.terminal         {fill: #FFCC00; stroke: #332900;}
    +    rect.nonterminal      {fill: #FFEB99; stroke: #332900;}
    +    rect.text             {fill: none; stroke: none;}    
    +    polygon.regexp        {fill: #FFF5CC; stroke: #332900;}
    +  </style></defs><polygon points="9 17 1 13 1 21" class="filled"></polygon><polygon points="17 17 9 13 9 21" class="filled"></polygon><line x1="17" y1="17" x2="19" y2="17" class="line"></line><a xlink:href="#SELECT" xlink:title="SELECT"><rect x="51" y="3" width="66" height="32"></rect><rect x="49" y="1" width="66" height="32" class="nonterminal"></rect><text class="nonterminal" x="59" y="21">SELECT</text></a><line x1="39" y1="17" x2="49" y2="17" class="line"></line><line x1="115" y1="17" x2="125" y2="17" class="line"></line><line x1="125" y1="17" x2="181" y2="17" class="line"></line><line x1="19" y1="17" x2="39" y2="17" class="line"></line><line x1="181" y1="17" x2="201" y2="17" class="line"></line><path d="M19 17 Q29 17 29 27" class="line"></path><path d="M191 27 Q191 17 201 17" class="line"></path><line x1="29" y1="27" x2="29" y2="51" class="line"></line><line x1="191" y1="51" x2="191" y2="27" class="line"></line><path d="M29 51 Q29 61 39 61" class="line"></path><path d="M181 61 Q191 61 191 51" class="line"></path><a xlink:href="#RESULT_QUERY" xlink:title="RESULT_QUERY"><rect x="51" y="47" width="116" height="32"></rect><rect x="49" y="45" width="116" height="32" class="nonterminal"></rect><text class="nonterminal" x="59" y="65">RESULT_QUERY</text></a><line x1="39" y1="61" x2="49" y2="61" class="line"></line><line x1="165" y1="61" x2="175" y2="61" class="line"></line><line x1="175" y1="61" x2="181" y2="61" class="line"></line><line x1="29" y1="51" x2="29" y2="71" class="line"></line><line x1="191" y1="71" x2="191" y2="51" class="line"></line><line x1="29" y1="71" x2="29" y2="95" class="line"></line><line x1="191" y1="95" x2="191" y2="71" class="line"></line><path d="M29 95 Q29 105 39 105" class="line"></path><path d="M181 105 Q191 105 191 95" class="line"></path><a xlink:href="#UPDATE" xlink:title="UPDATE"><rect x="51" y="91" width="68" height="32"></rect><rect x="49" y="89" width="68" height="32" class="nonterminal"></rect><text class="nonterminal" x="59" y="109">UPDATE</text></a><line x1="39" y1="105" x2="49" y2="105" class="line"></line><line x1="117" y1="105" x2="127" y2="105" class="line"></line><line x1="127" y1="105" x2="181" y2="105" class="line"></line><line x1="29" y1="95" x2="29" y2="115" class="line"></line><line x1="191" y1="115" x2="191" y2="95" class="line"></line><line x1="29" y1="115" x2="29" y2="139" class="line"></line><line x1="191" y1="139" x2="191" y2="115" class="line"></line><path d="M29 139 Q29 149 39 149" class="line"></path><path d="M181 149 Q191 149 191 139" class="line"></path><a xlink:href="#INSERT" xlink:title="INSERT"><rect x="51" y="135" width="64" height="32"></rect><rect x="49" y="133" width="64" height="32" class="nonterminal"></rect><text class="nonterminal" x="59" y="153">INSERT</text></a><line x1="39" y1="149" x2="49" y2="149" class="line"></line><line x1="113" y1="149" x2="123" y2="149" class="line"></line><line x1="123" y1="149" x2="181" y2="149" class="line"></line><line x1="29" y1="139" x2="29" y2="159" class="line"></line><line x1="191" y1="159" x2="191" y2="139" class="line"></line><line x1="29" y1="159" x2="29" y2="183" class="line"></line><line x1="191" y1="183" x2="191" y2="159" class="line"></line><path d="M29 183 Q29 193 39 193" class="line"></path><path d="M181 193 Q191 193 191 183" class="line"></path><a xlink:href="#DELETE" xlink:title="DELETE"><rect x="51" y="179" width="66" height="32"></rect><rect x="49" y="177" width="66" height="32" class="nonterminal"></rect><text class="nonterminal" x="59" y="197">DELETE</text></a><line x1="39" y1="193" x2="49" y2="193" class="line"></line><line x1="115" y1="193" x2="125" y2="193" class="line"></line><line x1="125" y1="193" x2="181" y2="193" class="line"></line><line x1="29" y1="183" x2="29" y2="203" class="line"></line><line x1="191" y1="203" x2="191" y2="183" class="line"></line><line x1="29" y1="203" x2="29" y2="227" class="line"></line><line x1="191" y1="227" x2="191" y2="203" class="line"></line><path d="M29 227 Q29 237 39 237" class="line"></path><path d="M181 237 Q191 237 191 227" class="line"></path><a xlink:href="#MERGE" xlink:title="MERGE"><rect x="51" y="223" width="62" height="32"></rect><rect x="49" y="221" width="62" height="32" class="nonterminal"></rect><text class="nonterminal" x="59" y="241">MERGE</text></a><line x1="39" y1="237" x2="49" y2="237" class="line"></line><line x1="111" y1="237" x2="121" y2="237" class="line"></line><line x1="121" y1="237" x2="181" y2="237" class="line"></line><line x1="29" y1="227" x2="29" y2="247" class="line"></line><line x1="191" y1="247" x2="191" y2="227" class="line"></line><line x1="29" y1="247" x2="29" y2="271" class="line"></line><line x1="191" y1="271" x2="191" y2="247" class="line"></line><path d="M29 271 Q29 281 39 281" class="line"></path><path d="M181 281 Q191 281 191 271" class="line"></path><a xlink:href="#TRUNCATE" xlink:title="TRUNCATE"><rect x="51" y="267" width="84" height="32"></rect><rect x="49" y="265" width="84" height="32" class="nonterminal"></rect><text class="nonterminal" x="59" y="285">TRUNCATE</text></a><line x1="39" y1="281" x2="49" y2="281" class="line"></line><line x1="133" y1="281" x2="143" y2="281" class="line"></line><line x1="143" y1="281" x2="181" y2="281" class="line"></line><line x1="29" y1="271" x2="29" y2="291" class="line"></line><line x1="191" y1="291" x2="191" y2="271" class="line"></line><line x1="29" y1="291" x2="29" y2="315" class="line"></line><line x1="191" y1="315" x2="191" y2="291" class="line"></line><path d="M29 315 Q29 325 39 325" class="line"></path><path d="M181 325 Q191 325 191 315" class="line"></path><rect x="51" y="311" width="58" height="32" rx="10"></rect><rect x="49" y="309" width="58" height="32" class="terminal" rx="10"></rect><text class="terminal" x="59" y="329">query</text><line x1="39" y1="325" x2="49" y2="325" class="line"></line><line x1="107" y1="325" x2="117" y2="325" class="line"></line><a xlink:href="#SQL" xlink:title="SQL"><rect x="129" y="311" width="44" height="32"></rect><rect x="127" y="309" width="44" height="32" class="nonterminal"></rect><text class="nonterminal" x="137" y="329">SQL</text></a><line x1="117" y1="325" x2="127" y2="325" class="line"></line><line x1="171" y1="325" x2="181" y2="325" class="line"></line><line x1="204" y1="17" x2="201" y2="17" class="line"></line><polygon points="211 17 219 13 219 21" class="filled"></polygon><polygon points="211 17 203 13 203 21" class="filled"></polygon></svg><xhtml:p xmlns:xhtml="http://www.w3.org/1999/xhtml">no references</xhtml:p><xhtml:br xmlns:xhtml="http://www.w3.org/1999/xhtml"></xhtml:br><xhtml:p xmlns:xhtml="http://www.w3.org/1999/xhtml" style="font-size: 14px; font-weight:bold"><xhtml:a name="RESULT_QUERY">RESULT_QUERY:</xhtml:a></xhtml:p><svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="260" height="80"><defs><style type="text/css">
    +
    +    @namespace "http://www.w3.org/2000/svg";
    +    .line                 {fill: none; stroke: #332900;}
    +    filled                {fill: #332900; stroke: none;}
    +    text                  {font-family: Verdana, Sans-serif;
    +                            font-size: 12px;
    +                            fill: #4D3D00;
    +                          }
    +    text.terminal         {font-family: Verdana, Sans-serif;
    +                            font-size: 12px;
    +                            fill: #4D3D00;
    +                            font-weight: bold;
    +                          }
    +    rect, circle, polygon {fill: #332900; stroke: #332900;}
    +    rect.terminal         {fill: #FFCC00; stroke: #332900;}
    +    rect.nonterminal      {fill: #FFEB99; stroke: #332900;}
    +    rect.text             {fill: none; stroke: none;}    
    +    polygon.regexp        {fill: #FFF5CC; stroke: #332900;}
    +  </style></defs><polygon points="9 17 1 13 1 21" class="filled"></polygon><polygon points="17 17 9 13 9 21" class="filled"></polygon><line x1="17" y1="17" x2="19" y2="17" class="line"></line><a xlink:href="#SELECT" xlink:title="SELECT"><rect x="51" y="3" width="66" height="32"></rect><rect x="49" y="1" width="66" height="32" class="nonterminal"></rect><text class="nonterminal" x="59" y="21">SELECT</text></a><line x1="39" y1="17" x2="49" y2="17" class="line"></line><line x1="115" y1="17" x2="125" y2="17" class="line"></line><line x1="125" y1="17" x2="221" y2="17" class="line"></line><line x1="19" y1="17" x2="39" y2="17" class="line"></line><line x1="221" y1="17" x2="241" y2="17" class="line"></line><path d="M19 17 Q29 17 29 27" class="line"></path><path d="M231 27 Q231 17 241 17" class="line"></path><line x1="29" y1="27" x2="29" y2="51" class="line"></line><line x1="231" y1="51" x2="231" y2="27" class="line"></line><path d="M29 51 Q29 61 39 61" class="line"></path><path d="M221 61 Q231 61 231 51" class="line"></path><rect x="51" y="47" width="98" height="32" rx="10"></rect><rect x="49" y="45" width="98" height="32" class="terminal" rx="10"></rect><text class="terminal" x="59" y="65">resultQuery</text><line x1="39" y1="61" x2="49" y2="61" class="line"></line><line x1="147" y1="61" x2="157" y2="61" class="line"></line><a xlink:href="#SQL" xlink:title="SQL"><rect x="169" y="47" width="44" height="32"></rect><rect x="167" y="45" width="44" height="32" class="nonterminal"></rect><text class="nonterminal" x="177" y="65">SQL</text></a><line x1="157" y1="61" x2="167" y2="61" class="line"></line><line x1="211" y1="61" x2="221" y2="61" class="line"></line><line x1="244" y1="17" x2="241" y2="17" class="line"></line><polygon points="251 17 259 13 259 21" class="filled"></polygon><polygon points="251 17 243 13 243 21" class="filled"></polygon></svg><xhtml:p xmlns:xhtml="http://www.w3.org/1999/xhtml">referenced by:<xhtml:ul><xhtml:li><xhtml:a href="#CURSOR" title="CURSOR">CURSOR</xhtml:a></xhtml:li><xhtml:li><xhtml:a href="#QUERY" title="QUERY">QUERY</xhtml:a></xhtml:li><xhtml:li><xhtml:a href="#RESULT" title="RESULT">RESULT</xhtml:a></xhtml:li></xhtml:ul></xhtml:p><xhtml:br xmlns:xhtml="http://www.w3.org/1999/xhtml"></xhtml:br><xhtml:p xmlns:xhtml="http://www.w3.org/1999/xhtml" style="font-size: 14px; font-weight:bold"><xhtml:a name="RESULT">RESULT:</xhtml:a></xhtml:p><svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="448" height="872"><defs><style type="text/css">
    +    @namespace "http://www.w3.org/2000/svg";
    +    .line                 {fill: none; stroke: #332900;}
    +    filled                {fill: #332900; stroke: none;}
    +    text                  {font-family: Verdana, Sans-serif;
    +                            font-size: 12px;
    +                            fill: #4D3D00;
    +                          }
    +    text.terminal         {font-family: Verdana, Sans-serif;
    +                            font-size: 12px;
    +                            fill: #4D3D00;
    +                            font-weight: bold;
    +                          }
    +    rect, circle, polygon {fill: #332900; stroke: #332900;}
    +    rect.terminal         {fill: #FFCC00; stroke: #332900;}
    +    rect.nonterminal      {fill: #FFEB99; stroke: #332900;}
    +    rect.text             {fill: none; stroke: none;}    
    +    polygon.regexp        {fill: #FFF5CC; stroke: #332900;}
    +  </style></defs><polygon points="9 17 1 13 1 21" class="filled"></polygon><polygon points="17 17 9 13 9 21" class="filled"></polygon><line x1="17" y1="17" x2="19" y2="17" class="line"></line><rect x="71" y="3" width="52" height="32" rx="10"></rect><rect x="69" y="1" width="52" height="32" class="terminal" rx="10"></rect><text class="terminal" x="79" y="21">fetch</text><line x1="59" y1="17" x2="69" y2="17" class="line"></line><line x1="121" y1="17" x2="131" y2="17" class="line"></line><line x1="131" y1="17" x2="167" y2="17" class="line"></line><line x1="39" y1="17" x2="59" y2="17" class="line"></line><line x1="167" y1="17" x2="187" y2="17" class="line"></line><path d="M39 17 Q49 17 49 27" class="line"></path><path d="M177 27 Q177 17 187 17" class="line"></path><line x1="49" y1="27" x2="49" y2="51" class="line"></line><line x1="177" y1="51" x2="177" y2="27" class="line"></line><path d="M49 51 Q49 61 59 61" class="line"></path><path d="M167 61 Q177 61 177 51" class="line"></path><rect x="71" y="47" width="88" height="32" rx="10"></rect><rect x="69" y="45" width="88" height="32" class="terminal" rx="10"></rect><text class="terminal" x="79" y="65">fetchMany</text><line x1="59" y1="61" x2="69" y2="61" class="line"></line><line x1="157" y1="61" x2="167" y2="61" class="line"></line><line x1="49" y1="51" x2="49" y2="71" class="line"></line><line x1="177" y1="71" x2="177" y2="51" class="line"></line><line x1="49" y1="71" x2="49" y2="95" class="line"></line><line x1="177" y1="95" x2="177" y2="71" class="line"></line><path d="M49 95 Q49 105 59 105" class="line"></path><path d="M167 105 Q177 105 177 95" class="line"></path><rect x="71" y="91" width="80" height="32" rx="10"></rect><rect x="69" y="89" width="80" height="32" class="terminal" rx="10"></rect><text class="terminal" x="79" y="109">fetchOne</text><line x1="59" y1="105" x2="69" y2="105" class="line"></line><line x1="149" y1="105" x2="159" y2="105" class="line"></line><line x1="159" y1="105" x2="167" y2="105" class="line"></line><a xlink:href="#SQL" xlink:title="SQL"><rect x="199" y="3" width="44" height="32"></rect><rect x="197" y="1" width="44" height="32" class="nonterminal"></rect><text class="nonterminal" x="207" y="21">SQL</text></a><line x1="187" y1="17" x2="197" y2="17" class="line"></line><line x1="241" y1="17" x2="251" y2="17" class="line"></line><line x1="251" y1="17" x2="409" y2="17" class="line"></line><line x1="19" y1="17" x2="39" y2="17" class="line"></line><line x1="409" y1="17" x2="429" y2="17" class="line"></line><path d="M19 17 Q29 17 29 27" class="line"></path><path d="M419 27 Q419 17 429 17" class="line"></path><line x1="29" y1="27" x2="29" y2="139" class="line"></line><line x1="419" y1="139" x2="419" y2="27" class="line"></line><path d="M29 139 Q29 149 39 149" class="line"></path><path d="M409 149 Q419 149 419 139" class="line"></path><rect x="71" y="135" width="52" height="32" rx="10"></rect><rect x="69" y="133" width="52" height="32" class="terminal" rx="10"></rect><text class="terminal" x="79" y="153">fetch</text><line x1="59" y1="149" x2="69" y2="149" class="line"></line><line x1="121" y1="149" x2="131" y2="149" class="line"></line><line x1="131" y1="149" x2="159" y2="149" class="line"></line><line x1="39" y1="149" x2="59" y2="149" class="line"></line><line x1="159" y1="149" x2="179" y2="149" class="line"></line><path d="M39 149 Q49 149 49 159" class="line"></path><path d="M169 159 Q169 149 179 149" class="line"></path><line x1="49" y1="159" x2="49" y2="183" class="line"></line><line x1="169" y1="183" x2="169" y2="159" class="line"></line><path d="M49 183 Q49 193 59 193" class="line"></path><path d="M159 193 Q169 193 169 183" class="line"></path><rect x="71" y="179" width="80" height="32" rx="10"></rect><rect x="69" y="177" width="80" height="32" class="terminal" rx="10"></rect><text class="terminal" x="79" y="197">fetchOne</text><line x1="59" y1="193" x2="69" y2="193" class="line"></line><line x1="149" y1="193" x2="159" y2="193" class="line"></line><a xlink:href="#TABLE" xlink:title="TABLE"><rect x="191" y="135" width="58" height="32"></rect><rect x="189" y="133" width="58" height="32" class="nonterminal"></rect><text class="nonterminal" x="199" y="153">TABLE</text></a><line x1="179" y1="149" x2="189" y2="149" class="line"></line><line x1="247" y1="149" x2="257" y2="149" class="line"></line><a xlink:href="#CONDITION" xlink:title="CONDITION"><rect x="289" y="135" width="92" height="32"></rect><rect x="287" y="133" width="92" height="32" class="nonterminal"></rect><text class="nonterminal" x="297" y="153">CONDITION</text></a><line x1="277" y1="149" x2="287" y2="149" class="line"></line><line x1="379" y1="149" x2="389" y2="149" class="line"></line><line x1="257" y1="149" x2="277" y2="149" class="line"></line><line x1="389" y1="149" x2="409" y2="149" class="line"></line><path d="M257 149 Q267 149 267 159" class="line"></path><path d="M399 159 Q399 149 409 149" class="line"></path><line x1="267" y1="159" x2="267" y2="173" class="line"></line><line x1="399" y1="173" x2="399" y2="159" class="line"></line><path d="M267 173 Q267 183 277 183" class="line"></path><path d="M389 183 Q399 183 399 173" class="line"></path><line x1="277" y1="183" x2="287" y2="183" class="line"></line><line x1="287" y1="183" x2="389" y2="183" class="line"></line><line x1="29" y1="139" x2="29" y2="159" class="line"></line><line x1="419" y1="159" x2="419" y2="139" class="line"></line><line x1="29" y1="159" x2="29" y2="227" class="line"></line><line x1="419" y1="227" x2="419" y2="159" class="line"></line><path d="M29 227 Q29 237 39 237" class="line"></path><path d="M409 237 Q419 237 419 227" class="line"></path><rect x="51" y="223" width="78" height="32" rx="10"></rect><rect x="49" y="221" width="78" height="32" class="terminal" rx="10"></rect><text class="terminal" x="59" y="241">fetchAny</text><line x1="39" y1="237" x2="49" y2="237" class="line"></line><line x1="127" y1="237" x2="137" y2="237" class="line"></line><a xlink:href="#TABLE" xlink:title="TABLE"><rect x="149" y="223" width="58" height="32"></rect><rect x="147" y="221" width="58" height="32" class="nonterminal"></rect><text class="nonterminal" x="157" y="241">TABLE</text></a><line x1="137" y1="237" x2="147" y2="237" class="line"></line><line x1="205" y1="237" x2="215" y2="237" class="line"></line><line x1="215" y1="237" x2="409" y2="237" class="line"></line><line x1="29" y1="227" x2="29" y2="247" class="line"></line><line x1="419" y1="247" x2="419" y2="227" class="line"></line><line x1="29" y1="247" x2="29" y2="271" class="line"></line><line x1="419" y1="271" x2="419" y2="247" class="line"></line><path d="M29 271 Q29 281 39 281" class="line"></path><path d="M409 281 Q419 281 419 271" class="line"></path><rect x="51" y="267" width="52" height="32" rx="10"></rect><rect x="49" y="265" width="52" height="32" class="terminal" rx="10"></rect><text class="terminal" x="59" y="285">fetch</text><line x1="39" y1="281" x2="49" y2="281" class="line"></line><line x1="101" y1="281" x2="111" y2="281" class="line"></line><rect x="123" y="267" width="122" height="32" rx="10"></rect><rect x="121" y="265" width="122" height="32" class="terminal" rx="10"></rect><text class="terminal" x="131" y="285">JDBC ResultSet</text><line x1="111" y1="281" x2="121" y2="281" class="line"></line><line x1="243" y1="281" x2="253" y2="281" class="line"></line><line x1="253" y1="281" x2="409" y2="281" class="line"></line><line x1="29" y1="271" x2="29" y2="291" class="line"></line><line x1="419" y1="291" x2="419" y2="271" class="line"></line><line x1="29" y1="291" x2="29" y2="315" class="line"></line><line x1="419" y1="315" x2="419" y2="291" class="line"></line><path d="M29 315 Q29 325 39 325" class="line"></path><path d="M409 325 Q419 325 419 315" class="line"></path><a xlink:href="#RESULT_QUERY" xlink:title="RESULT_QUERY"><rect x="51" y="311" width="116" height="32"></rect><rect x="49" y="309" width="116" height="32" class="nonterminal"></rect><text class="nonterminal" x="59" y="329">RESULT_QUERY</text></a><line x1="39" y1="325" x2="49" y2="325" class="line"></line><line x1="165" y1="325" x2="175" y2="325" class="line"></line><rect x="207" y="311" width="52" height="32" rx="10"></rect><rect x="205" y="309" width="52" height="32" class="terminal" rx="10"></rect><text class="terminal" x="215" y="329">fetch</text><line x1="195" y1="325" x2="205" y2="325" class="line"></line><line x1="257" y1="325" x2="267" y2="325" class="line"></line><line x1="267" y1="325" x2="389" y2="325" class="line"></line><line x1="175" y1="325" x2="195" y2="325" class="line"></line><line x1="389" y1="325" x2="409" y2="325" class="line"></line><path d="M175 325 Q185 325 185 335" class="line"></path><path d="M399 335 Q399 325 409 325" class="line"></path><line x1="185" y1="335" x2="185" y2="359" class="line"></line><line x1="399" y1="359" x2="399" y2="335" class="line"></line><path d="M185 359 Q185 369 195 369" class="line"></path><path d="M389 369 Q399 369 399 359" class="line"></path><rect x="207" y="355" width="88" height="32" rx="10"></rect><rect x="205" y="353" width="88" height="32" class="terminal" rx="10"></rect><text class="terminal" x="215" y="373">fetchMany</text><line x1="195" y1="369" x2="205" y2="369" class="line"></line><line x1="293" y1="369" x2="303" y2="369" class="line"></line><line x1="303" y1="369" x2="389" y2="369" class="line"></line><line x1="185" y1="359" x2="185" y2="379" class="line"></line><line x1="399" y1="379" x2="399" y2="359" class="line"></line><line x1="185" y1="379" x2="185" y2="403" class="line"></line><line x1="399" y1="403" x2="399" y2="379" class="line"></line><path d="M185 403 Q185 413 195 413" class="line"></path><path d="M389 413 Q399 413 399 403" class="line"></path><rect x="207" y="399" width="80" height="32" rx="10"></rect><rect x="205" y="397" width="80" height="32" class="terminal" rx="10"></rect><text class="terminal" x="215" y="417">fetchOne</text><line x1="195" y1="413" x2="205" y2="413" class="line"></line><line x1="285" y1="413" x2="295" y2="413" class="line"></line><line x1="295" y1="413" x2="389" y2="413" class="line"></line><line x1="185" y1="403" x2="185" y2="423" class="line"></line><line x1="399" y1="423" x2="399" y2="403" class="line"></line><line x1="185" y1="423" x2="185" y2="447" class="line"></line><line x1="399" y1="447" x2="399" y2="423" class="line"></line><path d="M185 447 Q185 457 195 457" class="line"></path><path d="M389 457 Q399 457 399 447" class="line"></path><rect x="207" y="443" width="78" height="32" rx="10"></rect><rect x="205" y="441" width="78" height="32" class="terminal" rx="10"></rect><text class="terminal" x="215" y="461">fetchAny</text><line x1="195" y1="457" x2="205" y2="457" class="line"></line><line x1="283" y1="457" x2="293" y2="457" class="line"></line><line x1="293" y1="457" x2="389" y2="457" class="line"></line><line x1="185" y1="447" x2="185" y2="467" class="line"></line><line x1="399" y1="467" x2="399" y2="447" class="line"></line><line x1="185" y1="467" x2="185" y2="491" class="line"></line><line x1="399" y1="491" x2="399" y2="467" class="line"></line><path d="M185 491 Q185 501 195 501" class="line"></path><path d="M389 501 Q399 501 399 491" class="line"></path><rect x="207" y="487" width="86" height="32" rx="10"></rect><rect x="205" y="485" width="86" height="32" class="terminal" rx="10"></rect><text class="terminal" x="215" y="505">fetchMaps</text><line x1="195" y1="501" x2="205" y2="501" class="line"></line><line x1="291" y1="501" x2="301" y2="501" class="line"></line><line x1="301" y1="501" x2="389" y2="501" class="line"></line><line x1="185" y1="491" x2="185" y2="511" class="line"></line><line x1="399" y1="511" x2="399" y2="491" class="line"></line><line x1="185" y1="511" x2="185" y2="535" class="line"></line><line x1="399" y1="535" x2="399" y2="511" class="line"></line><path d="M185 535 Q185 545 195 545" class="line"></path><path d="M389 545 Q399 545 399 535" class="line"></path><rect x="207" y="531" width="106" height="32" rx="10"></rect><rect x="205" y="529" width="106" height="32" class="terminal" rx="10"></rect><text class="terminal" x="215" y="549">fetchOneMap</text><line x1="195" y1="545" x2="205" y2="545" class="line"></line><line x1="311" y1="545" x2="321" y2="545" class="line"></line><line x1="321" y1="545" x2="389" y2="545" class="line"></line><line x1="185" y1="535" x2="185" y2="555" class="line"></line><line x1="399" y1="555" x2="399" y2="535" class="line"></line><line x1="185" y1="555" x2="185" y2="579" class="line"></line><line x1="399" y1="579" x2="399" y2="555" class="line"></line><path d="M185 579 Q185 589 195 589" class="line"></path><path d="M389 589 Q399 589 399 579" class="line"></path><rect x="207" y="575" width="80" height="32" rx="10"></rect><rect x="205" y="573" width="80" height="32" class="terminal" rx="10"></rect><text class="terminal" x="215" y="593">fetchMap</text><line x1="195" y1="589" x2="205" y2="589" class="line"></line><line x1="285" y1="589" x2="295" y2="589" class="line"></line><line x1="295" y1="589" x2="389" y2="589" class="line"></line><line x1="185" y1="579" x2="185" y2="599" class="line"></line><line x1="399" y1="599" x2="399" y2="579" class="line"></line><line x1="185" y1="599" x2="185" y2="623" class="line"></line><line x1="399" y1="623" x2="399" y2="599" class="line"></line><path d="M185 623 Q185 633 195 633" class="line"></path><path d="M389 633 Q399 633 399 623" class="line"></path><rect x="207" y="619" width="96" height="32" rx="10"></rect><rect x="205" y="617" width="96" height="32" class="terminal" rx="10"></rect><text class="terminal" x="215" y="637">fetchArrays</text><line x1="195" y1="633" x2="205" y2="633" class="line"></line><line x1="301" y1="633" x2="311" y2="633" class="line"></line><line x1="311" y1="633" x2="389" y2="633" class="line"></line><line x1="185" y1="623" x2="185" y2="643" class="line"></line><line x1="399" y1="643" x2="399" y2="623" class="line"></line><line x1="185" y1="643" x2="185" y2="667" class="line"></line><line x1="399" y1="667" x2="399" y2="643" class="line"></line><path d="M185 667 Q185 677 195 677" class="line"></path><path d="M389 677 Q399 677 399 667" class="line"></path><rect x="207" y="663" width="90" height="32" rx="10"></rect><rect x="205" y="661" width="90" height="32" class="terminal" rx="10"></rect><text class="terminal" x="215" y="681">fetchArray</text><line x1="195" y1="677" x2="205" y2="677" class="line"></line><line x1="295" y1="677" x2="305" y2="677" class="line"></line><line x1="305" y1="677" x2="389" y2="677" class="line"></line><line x1="185" y1="667" x2="185" y2="687" class="line"></line><line x1="399" y1="687" x2="399" y2="667" class="line"></line><line x1="185" y1="687" x2="185" y2="711" class="line"></line><line x1="399" y1="711" x2="399" y2="687" class="line"></line><path d="M185 711 Q185 721 195 721" class="line"></path><path d="M389 721 Q399 721 399 711" class="line"></path><rect x="207" y="707" width="116" height="32" rx="10"></rect><rect x="205" y="705" width="116" height="32" class="terminal" rx="10"></rect><text class="terminal" x="215" y="725">fetchOneArray</text><line x1="195" y1="721" x2="205" y2="721" class="line"></line><line x1="321" y1="721" x2="331" y2="721" class="line"></line><line x1="331" y1="721" x2="389" y2="721" class="line"></line><line x1="185" y1="711" x2="185" y2="731" class="line"></line><line x1="399" y1="731" x2="399" y2="711" class="line"></line><line x1="185" y1="731" x2="185" y2="755" class="line"></line><line x1="399" y1="755" x2="399" y2="731" class="line"></line><path d="M185 755 Q185 765 195 765" class="line"></path><path d="M389 765 Q399 765 399 755" class="line"></path><rect x="207" y="751" width="80" height="32" rx="10"></rect><rect x="205" y="749" width="80" height="32" class="terminal" rx="10"></rect><text class="terminal" x="215" y="769">fetchInto</text><line x1="195" y1="765" x2="205" y2="765" class="line"></line><line x1="285" y1="765" x2="295" y2="765" class="line"></line><line x1="295" y1="765" x2="389" y2="765" class="line"></line><line x1="185" y1="755" x2="185" y2="775" class="line"></line><line x1="399" y1="775" x2="399" y2="755" class="line"></line><line x1="185" y1="775" x2="185" y2="799" class="line"></line><line x1="399" y1="799" x2="399" y2="775" class="line"></line><path d="M185 799 Q185 809 195 809" class="line"></path><path d="M389 809 Q399 809 399 799" class="line"></path><rect x="207" y="795" width="88" height="32" rx="10"></rect><rect x="205" y="793" width="88" height="32" class="terminal" rx="10"></rect><text class="terminal" x="215" y="813">fetchLater</text><line x1="195" y1="809" x2="205" y2="809" class="line"></line><line x1="293" y1="809" x2="303" y2="809" class="line"></line><line x1="303" y1="809" x2="389" y2="809" class="line"></line><line x1="185" y1="799" x2="185" y2="819" class="line"></line><line x1="399" y1="819" x2="399" y2="799" class="line"></line><line x1="185" y1="819" x2="185" y2="843" class="line"></line><line x1="399" y1="843" x2="399" y2="819" class="line"></line><path d="M185 843 Q185 853 195 853" class="line"></path><path d="M389 853 Q399 853 399 843" class="line"></path><rect x="207" y="839" width="72" height="32" rx="10"></rect><rect x="205" y="837" width="72" height="32" class="terminal" rx="10"></rect><text class="terminal" x="215" y="857">execute</text><line x1="195" y1="853" x2="205" y2="853" class="line"></line><line x1="277" y1="853" x2="287" y2="853" class="line"></line><rect x="299" y="839" width="82" height="32" rx="10"></rect><rect x="297" y="837" width="82" height="32" class="terminal" rx="10"></rect><text class="terminal" x="307" y="857">getResult</text><line x1="287" y1="853" x2="297" y2="853" class="line"></line><line x1="379" y1="853" x2="389" y2="853" class="line"></line><line x1="432" y1="17" x2="429" y2="17" class="line"></line><polygon points="439 17 447 13 447 21" class="filled"></polygon><polygon points="439 17 431 13 431 21" class="filled"></polygon></svg><xhtml:p xmlns:xhtml="http://www.w3.org/1999/xhtml">no references</xhtml:p><xhtml:br xmlns:xhtml="http://www.w3.org/1999/xhtml"></xhtml:br><xhtml:p xmlns:xhtml="http://www.w3.org/1999/xhtml" style="font-size: 14px; font-weight:bold"><xhtml:a name="CURSOR">CURSOR:</xhtml:a></xhtml:p><svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="278" height="36"><defs><style type="text/css">
    +
    +    @namespace "http://www.w3.org/2000/svg";
    +    .line                 {fill: none; stroke: #332900;}
    +    filled                {fill: #332900; stroke: none;}
    +    text                  {font-family: Verdana, Sans-serif;
    +                            font-size: 12px;
    +                            fill: #4D3D00;
    +                          }
    +    text.terminal         {font-family: Verdana, Sans-serif;
    +                            font-size: 12px;
    +                            fill: #4D3D00;
    +                            font-weight: bold;
    +                          }
    +    rect, circle, polygon {fill: #332900; stroke: #332900;}
    +    rect.terminal         {fill: #FFCC00; stroke: #332900;}
    +    rect.nonterminal      {fill: #FFEB99; stroke: #332900;}
    +    rect.text             {fill: none; stroke: none;}    
    +    polygon.regexp        {fill: #FFF5CC; stroke: #332900;}
    +  </style></defs><polygon points="9 17 1 13 1 21" class="filled"></polygon><polygon points="17 17 9 13 9 21" class="filled"></polygon><line x1="17" y1="17" x2="19" y2="17" class="line"></line><a xlink:href="#RESULT_QUERY" xlink:title="RESULT_QUERY"><rect x="31" y="3" width="116" height="32"></rect><rect x="29" y="1" width="116" height="32" class="nonterminal"></rect><text class="nonterminal" x="39" y="21">RESULT_QUERY</text></a><line x1="19" y1="17" x2="29" y2="17" class="line"></line><line x1="145" y1="17" x2="155" y2="17" class="line"></line><rect x="167" y="3" width="84" height="32" rx="10"></rect><rect x="165" y="1" width="84" height="32" class="terminal" rx="10"></rect><text class="terminal" x="175" y="21">fetchLazy</text><line x1="155" y1="17" x2="165" y2="17" class="line"></line><line x1="249" y1="17" x2="259" y2="17" class="line"></line><line x1="262" y1="17" x2="259" y2="17" class="line"></line><polygon points="269 17 277 13 277 21" class="filled"></polygon><polygon points="269 17 261 13 261 21" class="filled"></polygon></svg><xhtml:p xmlns:xhtml="http://www.w3.org/1999/xhtml">no references</xhtml:p><xhtml:br xmlns:xhtml="http://www.w3.org/1999/xhtml"></xhtml:br><xhtml:p xmlns:xhtml="http://www.w3.org/1999/xhtml" style="font-size: 14px; font-weight:bold"><xhtml:a name="SELECT">SELECT:</xhtml:a></xhtml:p><svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="1200" height="1848"><defs><style type="text/css">
    +    @namespace "http://www.w3.org/2000/svg";
    +    .line                 {fill: none; stroke: #332900;}
    +    filled                {fill: #332900; stroke: none;}
    +    text                  {font-family: Verdana, Sans-serif;
    +                            font-size: 12px;
    +                            fill: #4D3D00;
    +                          }
    +    text.terminal         {font-family: Verdana, Sans-serif;
    +                            font-size: 12px;
    +                            fill: #4D3D00;
    +                            font-weight: bold;
    +                          }
    +    rect, circle, polygon {fill: #332900; stroke: #332900;}
    +    rect.terminal         {fill: #FFCC00; stroke: #332900;}
    +    rect.nonterminal      {fill: #FFEB99; stroke: #332900;}
    +    rect.text             {fill: none; stroke: none;}    
    +    polygon.regexp        {fill: #FFF5CC; stroke: #332900;}
    +  </style></defs><polygon points="9 49 1 45 1 53" class="filled"></polygon><polygon points="17 49 9 45 9 53" class="filled"></polygon><line x1="17" y1="49" x2="19" y2="49" class="line"></line><rect x="71" y="35" width="58" height="32" rx="10"></rect><rect x="69" y="33" width="58" height="32" class="terminal" rx="10"></rect><text class="terminal" x="79" y="53">select</text><line x1="59" y1="49" x2="69" y2="49" class="line"></line><line x1="127" y1="49" x2="137" y2="49" class="line"></line><line x1="137" y1="49" x2="187" y2="49" class="line"></line><line x1="39" y1="49" x2="59" y2="49" class="line"></line><line x1="187" y1="49" x2="207" y2="49" class="line"></line><path d="M39 49 Q49 49 49 59" class="line"></path><path d="M197 59 Q197 49 207 49" class="line"></path><line x1="49" y1="59" x2="49" y2="83" class="line"></line><line x1="197" y1="83" x2="197" y2="59" class="line"></line><path d="M49 83 Q49 93 59 93" class="line"></path><path d="M187 93 Q197 93 197 83" class="line"></path><rect x="71" y="79" width="108" height="32" rx="10"></rect><rect x="69" y="77" width="108" height="32" class="terminal" rx="10"></rect><text class="terminal" x="79" y="97">selectDistinct</text><line x1="59" y1="93" x2="69" y2="93" class="line"></line><line x1="177" y1="93" x2="187" y2="93" class="line"></line><a xlink:href="#FIELD" xlink:title="FIELD"><rect x="259" y="35" width="56" height="32"></rect><rect x="257" y="33" width="56" height="32" class="nonterminal"></rect><text class="nonterminal" x="267" y="53">FIELD</text></a><line x1="247" y1="49" x2="257" y2="49" class="line"></line><line x1="313" y1="49" x2="323" y2="49" class="line"></line><path d="M227 49 L247 49 M246 49 Q237 49 237 39 L237 27 Q237 17 247 17" class="line"></path><path d="M323 49 L343 49 M323 49 Q333 49 333 39 L333 27 Q333 17 323 17" class="line"></path><line x1="247" y1="17" x2="257" y2="17" class="line"></line><line x1="257" y1="17" x2="323" y2="17" class="line"></line><line x1="207" y1="49" x2="227" y2="49" class="line"></line><line x1="343" y1="49" x2="363" y2="49" class="line"></line><path d="M207 49 Q217 49 217 59" class="line"></path><path d="M353 59 Q353 49 363 49" class="line"></path><line x1="217" y1="59" x2="217" y2="73" class="line"></line><line x1="353" y1="73" x2="353" y2="59" class="line"></line><path d="M217 73 Q217 83 227 83" class="line"></path><path d="M343 83 Q353 83 353 73" class="line"></path><line x1="227" y1="83" x2="237" y2="83" class="line"></line><line x1="237" y1="83" x2="343" y2="83" class="line"></line><line x1="19" y1="49" x2="39" y2="49" class="line"></line><line x1="363" y1="49" x2="383" y2="49" class="line"></line><path d="M19 49 Q29 49 29 59" class="line"></path><path d="M373 59 Q373 49 383 49" class="line"></path><line x1="29" y1="59" x2="29" y2="127" class="line"></line><line x1="373" y1="127" x2="373" y2="59" class="line"></line><path d="M29 127 Q29 137 39 137" class="line"></path><path d="M363 137 Q373 137 373 127" class="line"></path><rect x="51" y="123" width="86" height="32" rx="10"></rect><rect x="49" y="121" width="86" height="32" class="terminal" rx="10"></rect><text class="terminal" x="59" y="141">selectOne</text><line x1="39" y1="137" x2="49" y2="137" class="line"></line><line x1="135" y1="137" x2="145" y2="137" class="line"></line><line x1="145" y1="137" x2="363" y2="137" class="line"></line><line x1="29" y1="127" x2="29" y2="147" class="line"></line><line x1="373" y1="147" x2="373" y2="127" class="line"></line><line x1="29" y1="147" x2="29" y2="171" class="line"></line><line x1="373" y1="171" x2="373" y2="147" class="line"></line><path d="M29 171 Q29 181 39 181" class="line"></path><path d="M363 181 Q373 181 373 171" class="line"></path><rect x="51" y="167" width="88" height="32" rx="10"></rect><rect x="49" y="165" width="88" height="32" class="terminal" rx="10"></rect><text class="terminal" x="59" y="185">selectZero</text><line x1="39" y1="181" x2="49" y2="181" class="line"></line><line x1="137" y1="181" x2="147" y2="181" class="line"></line><line x1="147" y1="181" x2="363" y2="181" class="line"></line><line x1="29" y1="171" x2="29" y2="191" class="line"></line><line x1="373" y1="191" x2="373" y2="171" class="line"></line><line x1="29" y1="191" x2="29" y2="215" class="line"></line><line x1="373" y1="215" x2="373" y2="191" class="line"></line><path d="M29 215 Q29 225 39 225" class="line"></path><path d="M363 225 Q373 225 373 215" class="line"></path><rect x="51" y="211" width="96" height="32" rx="10"></rect><rect x="49" y="209" width="96" height="32" class="terminal" rx="10"></rect><text class="terminal" x="59" y="229">selectCount</text><line x1="39" y1="225" x2="49" y2="225" class="line"></line><line x1="145" y1="225" x2="155" y2="225" class="line"></line><line x1="155" y1="225" x2="363" y2="225" class="line"></line><rect x="435" y="35" width="58" height="32" rx="10"></rect><rect x="433" y="33" width="58" height="32" class="terminal" rx="10"></rect><text class="terminal" x="443" y="53">select</text><line x1="423" y1="49" x2="433" y2="49" class="line"></line><line x1="491" y1="49" x2="501" y2="49" class="line"></line><a xlink:href="#FIELD" xlink:title="FIELD"><rect x="553" y="35" width="56" height="32"></rect><rect x="551" y="33" width="56" height="32" class="nonterminal"></rect><text class="nonterminal" x="561" y="53">FIELD</text></a><line x1="541" y1="49" x2="551" y2="49" class="line"></line><line x1="607" y1="49" x2="617" y2="49" class="line"></line><path d="M521 49 L541 49 M540 49 Q531 49 531 39 L531 27 Q531 17 541 17" class="line"></path><path d="M617 49 L637 49 M617 49 Q627 49 627 39 L627 27 Q627 17 617 17" class="line"></path><line x1="541" y1="17" x2="551" y2="17" class="line"></line><line x1="551" y1="17" x2="617" y2="17" class="line"></line><line x1="501" y1="49" x2="521" y2="49" class="line"></line><line x1="637" y1="49" x2="657" y2="49" class="line"></line><path d="M501 49 Q511 49 511 59" class="line"></path><path d="M647 59 Q647 49 657 49" class="line"></path><line x1="511" y1="59" x2="511" y2="73" class="line"></line><line x1="647" y1="73" x2="647" y2="59" class="line"></line><path d="M511 73 Q511 83 521 83" class="line"></path><path d="M637 83 Q647 83 647 73" class="line"></path><line x1="521" y1="83" x2="531" y2="83" class="line"></line><line x1="531" y1="83" x2="637" y2="83" class="line"></line><path d="M403 49 L423 49 M422 49 Q413 49 413 39 L413 11 Q413 1 423 1" class="line"></path><path d="M657 49 L677 49 M657 49 Q667 49 667 39 L667 11 Q667 1 657 1" class="line"></path><line x1="423" y1="1" x2="433" y2="1" class="line"></line><line x1="433" y1="1" x2="657" y2="1" class="line"></line><line x1="383" y1="49" x2="403" y2="49" class="line"></line><line x1="677" y1="49" x2="697" y2="49" class="line"></line><path d="M383 49 Q393 49 393 59" class="line"></path><path d="M687 59 Q687 49 697 49" class="line"></path><line x1="393" y1="59" x2="393" y2="89" class="line"></line><line x1="687" y1="89" x2="687" y2="59" class="line"></line><path d="M393 89 Q393 99 403 99" class="line"></path><path d="M677 99 Q687 99 687 89" class="line"></path><line x1="403" y1="99" x2="413" y2="99" class="line"></line><line x1="413" y1="99" x2="677" y2="99" class="line"></line><rect x="749" y="35" width="44" height="32" rx="10"></rect><rect x="747" y="33" width="44" height="32" class="terminal" rx="10"></rect><text class="terminal" x="757" y="53">hint</text><line x1="737" y1="49" x2="747" y2="49" class="line"></line><line x1="791" y1="49" x2="801" y2="49" class="line"></line><a xlink:href="#SQL" xlink:title="SQL"><rect x="813" y="35" width="44" height="32"></rect><rect x="811" y="33" width="44" height="32" class="nonterminal"></rect><text class="nonterminal" x="821" y="53">SQL</text></a><line x1="801" y1="49" x2="811" y2="49" class="line"></line><line x1="855" y1="49" x2="865" y2="49" class="line"></line><path d="M717 49 L737 49 M736 49 Q727 49 727 39 L727 27 Q727 17 737 17" class="line"></path><path d="M865 49 L885 49 M865 49 Q875 49 875 39 L875 27 Q875 17 865 17" class="line"></path><line x1="737" y1="17" x2="747" y2="17" class="line"></line><line x1="747" y1="17" x2="865" y2="17" class="line"></line><line x1="697" y1="49" x2="717" y2="49" class="line"></line><line x1="885" y1="49" x2="905" y2="49" class="line"></line><path d="M697 49 Q707 49 707 59" class="line"></path><path d="M895 59 Q895 49 905 49" class="line"></path><line x1="707" y1="59" x2="707" y2="73" class="line"></line><line x1="895" y1="73" x2="895" y2="59" class="line"></line><path d="M707 73 Q707 83 717 83" class="line"></path><path d="M885 83 Q895 83 895 73" class="line"></path><line x1="717" y1="83" x2="727" y2="83" class="line"></line><line x1="727" y1="83" x2="885" y2="83" class="line"></line><path class="line" d="M907 49 L909 49 M911 49 L913 49 M915 49 L917 49 M1 323 L3 323 M5 323 L7 323 M9 323 L11 323"></path><rect x="45" y="309" width="50" height="32" rx="10"></rect><rect x="43" y="307" width="50" height="32" class="terminal" rx="10"></rect><text class="terminal" x="53" y="327">from</text><line x1="33" y1="323" x2="43" y2="323" class="line"></line><line x1="93" y1="323" x2="103" y2="323" class="line"></line><a xlink:href="#TABLE" xlink:title="TABLE"><rect x="155" y="309" width="58" height="32"></rect><rect x="153" y="307" width="58" height="32" class="nonterminal"></rect><text class="nonterminal" x="163" y="327">TABLE</text></a><line x1="143" y1="323" x2="153" y2="323" class="line"></line><line x1="211" y1="323" x2="221" y2="323" class="line"></line><path d="M123 323 L143 323 M142 323 Q133 323 133 313 L133 301 Q133 291 143 291" class="line"></path><path d="M221 323 L241 323 M221 323 Q231 323 231 313 L231 301 Q231 291 221 291" class="line"></path><line x1="143" y1="291" x2="153" y2="291" class="line"></line><line x1="153" y1="291" x2="221" y2="291" class="line"></line><line x1="103" y1="323" x2="123" y2="323" class="line"></line><line x1="241" y1="323" x2="261" y2="323" class="line"></line><path d="M103 323 Q113 323 113 333" class="line"></path><path d="M251 333 Q251 323 261 323" class="line"></path><line x1="113" y1="333" x2="113" y2="357" class="line"></line><line x1="251" y1="357" x2="251" y2="333" class="line"></line><path d="M113 357 Q113 367 123 367" class="line"></path><path d="M241 367 Q251 367 251 357" class="line"></path><a xlink:href="#SQL" xlink:title="SQL"><rect x="135" y="353" width="44" height="32"></rect><rect x="133" y="351" width="44" height="32" class="nonterminal"></rect><text class="nonterminal" x="143" y="371">SQL</text></a><line x1="123" y1="367" x2="133" y2="367" class="line"></line><line x1="177" y1="367" x2="187" y2="367" class="line"></line><line x1="187" y1="367" x2="241" y2="367" class="line"></line><rect x="353" y="309" width="44" height="32" rx="10"></rect><rect x="351" y="307" width="44" height="32" class="terminal" rx="10"></rect><text class="terminal" x="361" y="327">join</text><line x1="341" y1="323" x2="351" y2="323" class="line"></line><line x1="395" y1="323" x2="405" y2="323" class="line"></line><line x1="405" y1="323" x2="477" y2="323" class="line"></line><line x1="321" y1="323" x2="341" y2="323" class="line"></line><line x1="477" y1="323" x2="497" y2="323" class="line"></line><path d="M321 323 Q331 323 331 333" class="line"></path><path d="M487 333 Q487 323 497 323" class="line"></path><line x1="331" y1="333" x2="331" y2="357" class="line"></line><line x1="487" y1="357" x2="487" y2="333" class="line"></line><path d="M331 357 Q331 367 341 367" class="line"></path><path d="M477 367 Q487 367 487 357" class="line"></path><rect x="353" y="353" width="106" height="32" rx="10"></rect><rect x="351" y="351" width="106" height="32" class="terminal" rx="10"></rect><text class="terminal" x="361" y="371">leftOuterJoin</text><line x1="341" y1="367" x2="351" y2="367" class="line"></line><line x1="457" y1="367" x2="467" y2="367" class="line"></line><line x1="467" y1="367" x2="477" y2="367" class="line"></line><line x1="331" y1="357" x2="331" y2="377" class="line"></line><line x1="487" y1="377" x2="487" y2="357" class="line"></line><line x1="331" y1="377" x2="331" y2="401" class="line"></line><line x1="487" y1="401" x2="487" y2="377" class="line"></line><path d="M331 401 Q331 411 341 411" class="line"></path><path d="M477 411 Q487 411 487 401" class="line"></path><rect x="353" y="397" width="116" height="32" rx="10"></rect><rect x="351" y="395" width="116" height="32" class="terminal" rx="10"></rect><text class="terminal" x="361" y="415">rightOuterJoin</text><line x1="341" y1="411" x2="351" y2="411" class="line"></line><line x1="467" y1="411" x2="477" y2="411" class="line"></line><line x1="331" y1="401" x2="331" y2="421" class="line"></line><line x1="487" y1="421" x2="487" y2="401" class="line"></line><line x1="331" y1="421" x2="331" y2="445" class="line"></line><line x1="487" y1="445" x2="487" y2="421" class="line"></line><path d="M331 445 Q331 455 341 455" class="line"></path><path d="M477 455 Q487 455 487 445" class="line"></path><rect x="353" y="441" width="106" height="32" rx="10"></rect><rect x="351" y="439" width="106" height="32" class="terminal" rx="10"></rect><text class="terminal" x="361" y="459">fullOuterJoin</text><line x1="341" y1="455" x2="351" y2="455" class="line"></line><line x1="457" y1="455" x2="467" y2="455" class="line"></line><line x1="467" y1="455" x2="477" y2="455" class="line"></line><a xlink:href="#TABLE" xlink:title="TABLE"><rect x="529" y="309" width="58" height="32"></rect><rect x="527" y="307" width="58" height="32" class="nonterminal"></rect><text class="nonterminal" x="537" y="327">TABLE</text></a><line x1="517" y1="323" x2="527" y2="323" class="line"></line><line x1="585" y1="323" x2="595" y2="323" class="line"></line><line x1="497" y1="323" x2="517" y2="323" class="line"></line><line x1="595" y1="323" x2="615" y2="323" class="line"></line><path d="M497 323 Q507 323 507 333" class="line"></path><path d="M605 333 Q605 323 615 323" class="line"></path><line x1="507" y1="333" x2="507" y2="357" class="line"></line><line x1="605" y1="357" x2="605" y2="333" class="line"></line><path d="M507 357 Q507 367 517 367" class="line"></path><path d="M595 367 Q605 367 605 357" class="line"></path><a xlink:href="#SQL" xlink:title="SQL"><rect x="529" y="353" width="44" height="32"></rect><rect x="527" y="351" width="44" height="32" class="nonterminal"></rect><text class="nonterminal" x="537" y="371">SQL</text></a><line x1="517" y1="367" x2="527" y2="367" class="line"></line><line x1="571" y1="367" x2="581" y2="367" class="line"></line><line x1="581" y1="367" x2="595" y2="367" class="line"></line><rect x="647" y="309" width="36" height="32" rx="10"></rect><rect x="645" y="307" width="36" height="32" class="terminal" rx="10"></rect><text class="terminal" x="655" y="327">on</text><line x1="635" y1="323" x2="645" y2="323" class="line"></line><line x1="681" y1="323" x2="691" y2="323" class="line"></line><a xlink:href="#CONDITION" xlink:title="CONDITION"><rect x="743" y="309" width="92" height="32"></rect><rect x="741" y="307" width="92" height="32" class="nonterminal"></rect><text class="nonterminal" x="751" y="327">CONDITION</text></a><line x1="731" y1="323" x2="741" y2="323" class="line"></line><line x1="833" y1="323" x2="843" y2="323" class="line"></line><path d="M711 323 L731 323 M730 323 Q721 323 721 313 L721 301 Q721 291 731 291" class="line"></path><path d="M843 323 L863 323 M843 323 Q853 323 853 313 L853 301 Q853 291 843 291" class="line"></path><line x1="731" y1="291" x2="741" y2="291" class="line"></line><line x1="741" y1="291" x2="843" y2="291" class="line"></line><line x1="691" y1="323" x2="711" y2="323" class="line"></line><line x1="863" y1="323" x2="883" y2="323" class="line"></line><path d="M691 323 Q701 323 701 333" class="line"></path><path d="M873 333 Q873 323 883 323" class="line"></path><line x1="701" y1="333" x2="701" y2="357" class="line"></line><line x1="873" y1="357" x2="873" y2="333" class="line"></line><path d="M701 357 Q701 367 711 367" class="line"></path><path d="M863 367 Q873 367 873 357" class="line"></path><a xlink:href="#SQL" xlink:title="SQL"><rect x="723" y="353" width="44" height="32"></rect><rect x="721" y="351" width="44" height="32" class="nonterminal"></rect><text class="nonterminal" x="731" y="371">SQL</text></a><line x1="711" y1="367" x2="721" y2="367" class="line"></line><line x1="765" y1="367" x2="775" y2="367" class="line"></line><line x1="775" y1="367" x2="863" y2="367" class="line"></line><a xlink:href="#MORE_CONDITIONS" xlink:title="MORE_CONDITIONS"><rect x="915" y="309" width="144" height="32"></rect><rect x="913" y="307" width="144" height="32" class="nonterminal"></rect><text class="nonterminal" x="923" y="327">MORE_CONDITIONS</text></a><line x1="903" y1="323" x2="913" y2="323" class="line"></line><line x1="1057" y1="323" x2="1067" y2="323" class="line"></line><line x1="883" y1="323" x2="903" y2="323" class="line"></line><line x1="1067" y1="323" x2="1087" y2="323" class="line"></line><path d="M883 323 Q893 323 893 333" class="line"></path><path d="M1077 333 Q1077 323 1087 323" class="line"></path><line x1="893" y1="333" x2="893" y2="347" class="line"></line><line x1="1077" y1="347" x2="1077" y2="333" class="line"></line><path d="M893 347 Q893 357 903 357" class="line"></path><path d="M1067 357 Q1077 357 1077 347" class="line"></path><line x1="903" y1="357" x2="913" y2="357" class="line"></line><line x1="913" y1="357" x2="1067" y2="357" class="line"></line><line x1="615" y1="323" x2="635" y2="323" class="line"></line><line x1="1087" y1="323" x2="1107" y2="323" class="line"></line><path d="M615 323 Q625 323 625 333" class="line"></path><path d="M1097 333 Q1097 323 1107 323" class="line"></path><line x1="625" y1="333" x2="625" y2="423" class="line"></line><line x1="1097" y1="423" x2="1097" y2="333" class="line"></line><path d="M625 423 Q625 433 635 433" class="line"></path><path d="M1087 433 Q1097 433 1097 423" class="line"></path><rect x="647" y="419" width="54" height="32" rx="10"></rect><rect x="645" y="417" width="54" height="32" class="terminal" rx="10"></rect><text class="terminal" x="655" y="437">using</text><line x1="635" y1="433" x2="645" y2="433" class="line"></line><line x1="699" y1="433" x2="709" y2="433" class="line"></line><a xlink:href="#FIELD" xlink:title="FIELD"><rect x="741" y="419" width="56" height="32"></rect><rect x="739" y="417" width="56" height="32" class="nonterminal"></rect><text class="nonterminal" x="749" y="437">FIELD</text></a><line x1="729" y1="433" x2="739" y2="433" class="line"></line><line x1="795" y1="433" x2="805" y2="433" class="line"></line><path d="M709 433 L729 433 M728 433 Q719 433 719 423 L719 411 Q719 401 729 401" class="line"></path><path d="M805 433 L825 433 M805 433 Q815 433 815 423 L815 411 Q815 401 805 401" class="line"></path><line x1="729" y1="401" x2="739" y2="401" class="line"></line><line x1="739" y1="401" x2="805" y2="401" class="line"></line><line x1="825" y1="433" x2="1087" y2="433" class="line"></line><line x1="301" y1="323" x2="321" y2="323" class="line"></line><line x1="1107" y1="323" x2="1127" y2="323" class="line"></line><path d="M301 323 Q311 323 311 333" class="line"></path><path d="M1117 333 Q1117 323 1127 323" class="line"></path><line x1="311" y1="333" x2="311" y2="489" class="line"></line><line x1="1117" y1="489" x2="1117" y2="333" class="line"></line><path d="M311 489 Q311 499 321 499" class="line"></path><path d="M1107 499 Q1117 499 1117 489" class="line"></path><rect x="353" y="485" width="82" height="32" rx="10"></rect><rect x="351" y="483" width="82" height="32" class="terminal" rx="10"></rect><text class="terminal" x="361" y="503">crossJoin</text><line x1="341" y1="499" x2="351" y2="499" class="line"></line><line x1="433" y1="499" x2="443" y2="499" class="line"></line><line x1="443" y1="499" x2="527" y2="499" class="line"></line><line x1="321" y1="499" x2="341" y2="499" class="line"></line><line x1="527" y1="499" x2="547" y2="499" class="line"></line><path d="M321 499 Q331 499 331 509" class="line"></path><path d="M537 509 Q537 499 547 499" class="line"></path><line x1="331" y1="509" x2="331" y2="533" class="line"></line><line x1="537" y1="533" x2="537" y2="509" class="line"></line><path d="M331 533 Q331 543 341 543" class="line"></path><path d="M527 543 Q537 543 537 533" class="line"></path><rect x="353" y="529" width="94" height="32" rx="10"></rect><rect x="351" y="527" width="94" height="32" class="terminal" rx="10"></rect><text class="terminal" x="361" y="547">naturalJoin</text><line x1="341" y1="543" x2="351" y2="543" class="line"></line><line x1="445" y1="543" x2="455" y2="543" class="line"></line><line x1="455" y1="543" x2="527" y2="543" class="line"></line><line x1="331" y1="533" x2="331" y2="553" class="line"></line><line x1="537" y1="553" x2="537" y2="533" class="line"></line><line x1="331" y1="553" x2="331" y2="577" class="line"></line><line x1="537" y1="577" x2="537" y2="553" class="line"></line><path d="M331 577 Q331 587 341 587" class="line"></path><path d="M527 587 Q537 587 537 577" class="line"></path><rect x="353" y="573" width="158" height="32" rx="10"></rect><rect x="351" y="571" width="158" height="32" class="terminal" rx="10"></rect><text class="terminal" x="361" y="591">naturalLeftOuterJoin</text><line x1="341" y1="587" x2="351" y2="587" class="line"></line><line x1="509" y1="587" x2="519" y2="587" class="line"></line><line x1="519" y1="587" x2="527" y2="587" class="line"></line><line x1="331" y1="577" x2="331" y2="597" class="line"></line><line x1="537" y1="597" x2="537" y2="577" class="line"></line><line x1="331" y1="597" x2="331" y2="621" class="line"></line><line x1="537" y1="621" x2="537" y2="597" class="line"></line><path d="M331 621 Q331 631 341 631" class="line"></path><path d="M527 631 Q537 631 537 621" class="line"></path><rect x="353" y="617" width="166" height="32" rx="10"></rect><rect x="351" y="615" width="166" height="32" class="terminal" rx="10"></rect><text class="terminal" x="361" y="635">naturalRightOuterJoin</text><line x1="341" y1="631" x2="351" y2="631" class="line"></line><line x1="517" y1="631" x2="527" y2="631" class="line"></line><a xlink:href="#TABLE" xlink:title="TABLE"><rect x="579" y="485" width="58" height="32"></rect><rect x="577" y="483" width="58" height="32" class="nonterminal"></rect><text class="nonterminal" x="587" y="503">TABLE</text></a><line x1="567" y1="499" x2="577" y2="499" class="line"></line><line x1="635" y1="499" x2="645" y2="499" class="line"></line><line x1="547" y1="499" x2="567" y2="499" class="line"></line><line x1="645" y1="499" x2="665" y2="499" class="line"></line><path d="M547 499 Q557 499 557 509" class="line"></path><path d="M655 509 Q655 499 665 499" class="line"></path><line x1="557" y1="509" x2="557" y2="533" class="line"></line><line x1="655" y1="533" x2="655" y2="509" class="line"></line><path d="M557 533 Q557 543 567 543" class="line"></path><path d="M645 543 Q655 543 655 533" class="line"></path><a xlink:href="#SQL" xlink:title="SQL"><rect x="579" y="529" width="44" height="32"></rect><rect x="577" y="527" width="44" height="32" class="nonterminal"></rect><text class="nonterminal" x="587" y="547">SQL</text></a><line x1="567" y1="543" x2="577" y2="543" class="line"></line><line x1="621" y1="543" x2="631" y2="543" class="line"></line><line x1="631" y1="543" x2="645" y2="543" class="line"></line><line x1="665" y1="499" x2="1107" y2="499" class="line"></line><path d="M281 323 L301 323 M300 323 Q291 323 291 313 L291 285 Q291 275 301 275" class="line"></path><path d="M1127 323 L1147 323 M1127 323 Q1137 323 1137 313 L1137 285 Q1137 275 1127 275" class="line"></path><line x1="301" y1="275" x2="311" y2="275" class="line"></line><line x1="311" y1="275" x2="1127" y2="275" class="line"></line><line x1="261" y1="323" x2="281" y2="323" class="line"></line><line x1="1147" y1="323" x2="1167" y2="323" class="line"></line><path d="M261 323 Q271 323 271 333" class="line"></path><path d="M1157 333 Q1157 323 1167 323" class="line"></path><line x1="271" y1="333" x2="271" y2="655" class="line"></line><line x1="1157" y1="655" x2="1157" y2="333" class="line"></line><path d="M271 655 Q271 665 281 665" class="line"></path><path d="M1147 665 Q1157 665 1157 655" class="line"></path><line x1="281" y1="665" x2="291" y2="665" class="line"></line><line x1="291" y1="665" x2="1147" y2="665" class="line"></line><line x1="13" y1="323" x2="33" y2="323" class="line"></line><line x1="1167" y1="323" x2="1187" y2="323" class="line"></line><path d="M13 323 Q23 323 23 333" class="line"></path><path d="M1177 333 Q1177 323 1187 323" class="line"></path><line x1="23" y1="333" x2="23" y2="671" class="line"></line><line x1="1177" y1="671" x2="1177" y2="333" class="line"></line><path d="M23 671 Q23 681 33 681" class="line"></path><path d="M1167 681 Q1177 681 1177 671" class="line"></path><line x1="33" y1="681" x2="43" y2="681" class="line"></line><line x1="43" y1="681" x2="1167" y2="681" class="line"></line><path class="line" d="M1189 323 L1191 323 M1193 323 L1195 323 M1197 323 L1199 323 M309 745 L311 745 M313 745 L315 745 M317 745 L319 745"></path><rect x="373" y="731" width="62" height="32" rx="10"></rect><rect x="371" y="729" width="62" height="32" class="terminal" rx="10"></rect><text class="terminal" x="381" y="749">where</text><line x1="361" y1="745" x2="371" y2="745" class="line"></line><line x1="433" y1="745" x2="443" y2="745" class="line"></line><a xlink:href="#CONDITION" xlink:title="CONDITION"><rect x="495" y="731" width="92" height="32"></rect><rect x="493" y="729" width="92" height="32" class="nonterminal"></rect><text class="nonterminal" x="503" y="749">CONDITION</text></a><line x1="483" y1="745" x2="493" y2="745" class="line"></line><line x1="585" y1="745" x2="595" y2="745" class="line"></line><path d="M463 745 L483 745 M482 745 Q473 745 473 735 L473 723 Q473 713 483 713" class="line"></path><path d="M595 745 L615 745 M595 745 Q605 745 605 735 L605 723 Q605 713 595 713" class="line"></path><line x1="483" y1="713" x2="493" y2="713" class="line"></line><line x1="493" y1="713" x2="595" y2="713" class="line"></line><line x1="443" y1="745" x2="463" y2="745" class="line"></line><line x1="615" y1="745" x2="635" y2="745" class="line"></line><path d="M443 745 Q453 745 453 755" class="line"></path><path d="M625 755 Q625 745 635 745" class="line"></path><line x1="453" y1="755" x2="453" y2="779" class="line"></line><line x1="625" y1="779" x2="625" y2="755" class="line"></line><path d="M453 779 Q453 789 463 789" class="line"></path><path d="M615 789 Q625 789 625 779" class="line"></path><a xlink:href="#SQL" xlink:title="SQL"><rect x="475" y="775" width="44" height="32"></rect><rect x="473" y="773" width="44" height="32" class="nonterminal"></rect><text class="nonterminal" x="483" y="793">SQL</text></a><line x1="463" y1="789" x2="473" y2="789" class="line"></line><line x1="517" y1="789" x2="527" y2="789" class="line"></line><line x1="527" y1="789" x2="615" y2="789" class="line"></line><line x1="341" y1="745" x2="361" y2="745" class="line"></line><line x1="635" y1="745" x2="655" y2="745" class="line"></line><path d="M341 745 Q351 745 351 755" class="line"></path><path d="M645 755 Q645 745 655 745" class="line"></path><line x1="351" y1="755" x2="351" y2="823" class="line"></line><line x1="645" y1="823" x2="645" y2="755" class="line"></line><path d="M351 823 Q351 833 361 833" class="line"></path><path d="M635 833 Q645 833 645 823" class="line"></path><rect x="393" y="819" width="100" height="32" rx="10"></rect><rect x="391" y="817" width="100" height="32" class="terminal" rx="10"></rect><text class="terminal" x="401" y="837">whereExists</text><line x1="381" y1="833" x2="391" y2="833" class="line"></line><line x1="491" y1="833" x2="501" y2="833" class="line"></line><line x1="501" y1="833" x2="525" y2="833" class="line"></line><line x1="361" y1="833" x2="381" y2="833" class="line"></line><line x1="525" y1="833" x2="545" y2="833" class="line"></line><path d="M361 833 Q371 833 371 843" class="line"></path><path d="M535 843 Q535 833 545 833" class="line"></path><line x1="371" y1="843" x2="371" y2="867" class="line"></line><line x1="535" y1="867" x2="535" y2="843" class="line"></line><path d="M371 867 Q371 877 381 877" class="line"></path><path d="M525 877 Q535 877 535 867" class="line"></path><rect x="393" y="863" width="124" height="32" rx="10"></rect><rect x="391" y="861" width="124" height="32" class="terminal" rx="10"></rect><text class="terminal" x="401" y="881">whereNotExists</text><line x1="381" y1="877" x2="391" y2="877" class="line"></line><line x1="515" y1="877" x2="525" y2="877" class="line"></line><a xlink:href="#SELECT" xlink:title="SELECT"><rect x="557" y="819" width="66" height="32"></rect><rect x="555" y="817" width="66" height="32" class="nonterminal"></rect><text class="nonterminal" x="565" y="837">SELECT</text></a><line x1="545" y1="833" x2="555" y2="833" class="line"></line><line x1="621" y1="833" x2="631" y2="833" class="line"></line><line x1="631" y1="833" x2="635" y2="833" class="line"></line><a xlink:href="#MORE_CONDITIONS" xlink:title="MORE_CONDITIONS"><rect x="687" y="731" width="144" height="32"></rect><rect x="685" y="729" width="144" height="32" class="nonterminal"></rect><text class="nonterminal" x="695" y="749">MORE_CONDITIONS</text></a><line x1="675" y1="745" x2="685" y2="745" class="line"></line><line x1="829" y1="745" x2="839" y2="745" class="line"></line><line x1="655" y1="745" x2="675" y2="745" class="line"></line><line x1="839" y1="745" x2="859" y2="745" class="line"></line><path d="M655 745 Q665 745 665 755" class="line"></path><path d="M849 755 Q849 745 859 745" class="line"></path><line x1="665" y1="755" x2="665" y2="769" class="line"></line><line x1="849" y1="769" x2="849" y2="755" class="line"></line><path d="M665 769 Q665 779 675 779" class="line"></path><path d="M839 779 Q849 779 849 769" class="line"></path><line x1="675" y1="779" x2="685" y2="779" class="line"></line><line x1="685" y1="779" x2="839" y2="779" class="line"></line><line x1="321" y1="745" x2="341" y2="745" class="line"></line><line x1="859" y1="745" x2="879" y2="745" class="line"></line><path d="M321 745 Q331 745 331 755" class="line"></path><path d="M869 755 Q869 745 879 745" class="line"></path><line x1="331" y1="755" x2="331" y2="901" class="line"></line><line x1="869" y1="901" x2="869" y2="755" class="line"></line><path d="M331 901 Q331 911 341 911" class="line"></path><path d="M859 911 Q869 911 869 901" class="line"></path><line x1="341" y1="911" x2="351" y2="911" class="line"></line><line x1="351" y1="911" x2="859" y2="911" class="line"></line><path class="line" d="M881 745 L883 745 M885 745 L887 745 M889 745 L891 745 M224 1003 L226 1003 M228 1003 L230 1003 M232 1003 L234 1003"></path><rect x="288" y="989" width="88" height="32" rx="10"></rect><rect x="286" y="987" width="88" height="32" class="terminal" rx="10"></rect><text class="terminal" x="296" y="1007">connectBy</text><line x1="276" y1="1003" x2="286" y2="1003" class="line"></line><line x1="374" y1="1003" x2="384" y2="1003" class="line"></line><line x1="384" y1="1003" x2="438" y2="1003" class="line"></line><line x1="256" y1="1003" x2="276" y2="1003" class="line"></line><line x1="438" y1="1003" x2="458" y2="1003" class="line"></line><path d="M256 1003 Q266 1003 266 1013" class="line"></path><path d="M448 1013 Q448 1003 458 1003" class="line"></path><line x1="266" y1="1013" x2="266" y2="1037" class="line"></line><line x1="448" y1="1037" x2="448" y2="1013" class="line"></line><path d="M266 1037 Q266 1047 276 1047" class="line"></path><path d="M438 1047 Q448 1047 448 1037" class="line"></path><rect x="288" y="1033" width="142" height="32" rx="10"></rect><rect x="286" y="1031" width="142" height="32" class="terminal" rx="10"></rect><text class="terminal" x="296" y="1051">connectByNoCycle</text><line x1="276" y1="1047" x2="286" y2="1047" class="line"></line><line x1="428" y1="1047" x2="438" y2="1047" class="line"></line><a xlink:href="#CONDITION" xlink:title="CONDITION"><rect x="510" y="989" width="92" height="32"></rect><rect x="508" y="987" width="92" height="32" class="nonterminal"></rect><text class="nonterminal" x="518" y="1007">CONDITION</text></a><line x1="498" y1="1003" x2="508" y2="1003" class="line"></line><line x1="600" y1="1003" x2="610" y2="1003" class="line"></line><line x1="478" y1="1003" x2="498" y2="1003" class="line"></line><line x1="610" y1="1003" x2="630" y2="1003" class="line"></line><path d="M478 1003 Q488 1003 488 1013" class="line"></path><path d="M620 1013 Q620 1003 630 1003" class="line"></path><line x1="488" y1="1013" x2="488" y2="1037" class="line"></line><line x1="620" y1="1037" x2="620" y2="1013" class="line"></line><path d="M488 1037 Q488 1047 498 1047" class="line"></path><path d="M610 1047 Q620 1047 620 1037" class="line"></path><a xlink:href="#SQL" xlink:title="SQL"><rect x="510" y="1033" width="44" height="32"></rect><rect x="508" y="1031" width="44" height="32" class="nonterminal"></rect><text class="nonterminal" x="518" y="1051">SQL</text></a><line x1="498" y1="1047" x2="508" y2="1047" class="line"></line><line x1="552" y1="1047" x2="562" y2="1047" class="line"></line><line x1="562" y1="1047" x2="610" y2="1047" class="line"></line><path d="M458 1003 L478 1003 M477 1003 Q468 1003 468 993 L468 969 Q468 959 478 959" class="line"></path><path d="M630 1003 L650 1003 M630 1003 Q640 1003 640 993 L640 969 Q640 959 630 959" class="line"></path><rect x="490" y="945" width="44" height="32" rx="10"></rect><rect x="488" y="943" width="44" height="32" class="terminal" rx="10"></rect><text class="terminal" x="498" y="963">and</text><line x1="478" y1="959" x2="488" y2="959" class="line"></line><line x1="532" y1="959" x2="542" y2="959" class="line"></line><line x1="542" y1="959" x2="630" y2="959" class="line"></line><rect x="682" y="989" width="82" height="32" rx="10"></rect><rect x="680" y="987" width="82" height="32" class="terminal" rx="10"></rect><text class="terminal" x="690" y="1007">startWith</text><line x1="670" y1="1003" x2="680" y2="1003" class="line"></line><line x1="762" y1="1003" x2="772" y2="1003" class="line"></line><a xlink:href="#CONDITION" xlink:title="CONDITION"><rect x="804" y="989" width="92" height="32"></rect><rect x="802" y="987" width="92" height="32" class="nonterminal"></rect><text class="nonterminal" x="812" y="1007">CONDITION</text></a><line x1="792" y1="1003" x2="802" y2="1003" class="line"></line><line x1="894" y1="1003" x2="904" y2="1003" class="line"></line><line x1="772" y1="1003" x2="792" y2="1003" class="line"></line><line x1="904" y1="1003" x2="924" y2="1003" class="line"></line><path d="M772 1003 Q782 1003 782 1013" class="line"></path><path d="M914 1013 Q914 1003 924 1003" class="line"></path><line x1="782" y1="1013" x2="782" y2="1037" class="line"></line><line x1="914" y1="1037" x2="914" y2="1013" class="line"></line><path d="M782 1037 Q782 1047 792 1047" class="line"></path><path d="M904 1047 Q914 1047 914 1037" class="line"></path><a xlink:href="#SQL" xlink:title="SQL"><rect x="804" y="1033" width="44" height="32"></rect><rect x="802" y="1031" width="44" height="32" class="nonterminal"></rect><text class="nonterminal" x="812" y="1051">SQL</text></a><line x1="792" y1="1047" x2="802" y2="1047" class="line"></line><line x1="846" y1="1047" x2="856" y2="1047" class="line"></line><line x1="856" y1="1047" x2="904" y2="1047" class="line"></line><line x1="650" y1="1003" x2="670" y2="1003" class="line"></line><line x1="924" y1="1003" x2="944" y2="1003" class="line"></line><path d="M650 1003 Q660 1003 660 1013" class="line"></path><path d="M934 1013 Q934 1003 944 1003" class="line"></path><line x1="660" y1="1013" x2="660" y2="1071" class="line"></line><line x1="934" y1="1071" x2="934" y2="1013" class="line"></line><path d="M660 1071 Q660 1081 670 1081" class="line"></path><path d="M924 1081 Q934 1081 934 1071" class="line"></path><line x1="670" y1="1081" x2="680" y2="1081" class="line"></line><line x1="680" y1="1081" x2="924" y2="1081" class="line"></line><line x1="236" y1="1003" x2="256" y2="1003" class="line"></line><line x1="944" y1="1003" x2="964" y2="1003" class="line"></line><path d="M236 1003 Q246 1003 246 1013" class="line"></path><path d="M954 1013 Q954 1003 964 1003" class="line"></path><line x1="246" y1="1013" x2="246" y2="1087" class="line"></line><line x1="954" y1="1087" x2="954" y2="1013" class="line"></line><path d="M246 1087 Q246 1097 256 1097" class="line"></path><path d="M944 1097 Q954 1097 954 1087" class="line"></path><line x1="256" y1="1097" x2="266" y2="1097" class="line"></line><line x1="266" y1="1097" x2="944" y2="1097" class="line"></line><path class="line" d="M966 1003 L968 1003 M970 1003 L972 1003 M974 1003 L976 1003 M177 1161 L179 1161 M181 1161 L183 1161 M185 1161 L187 1161"></path><rect x="221" y="1147" width="74" height="32" rx="10"></rect><rect x="219" y="1145" width="74" height="32" class="terminal" rx="10"></rect><text class="terminal" x="229" y="1165">groupBy</text><line x1="209" y1="1161" x2="219" y2="1161" class="line"></line><line x1="293" y1="1161" x2="303" y2="1161" class="line"></line><a xlink:href="#GROUP_FIELD" xlink:title="GROUP_FIELD"><rect x="335" y="1147" width="108" height="32"></rect><rect x="333" y="1145" width="108" height="32" class="nonterminal"></rect><text class="nonterminal" x="343" y="1165">GROUP_FIELD</text></a><line x1="323" y1="1161" x2="333" y2="1161" class="line"></line><line x1="441" y1="1161" x2="451" y2="1161" class="line"></line><path d="M303 1161 L323 1161 M322 1161 Q313 1161 313 1151 L313 1139 Q313 1129 323 1129" class="line"></path><path d="M451 1161 L471 1161 M451 1161 Q461 1161 461 1151 L461 1139 Q461 1129 451 1129" class="line"></path><line x1="323" y1="1129" x2="333" y2="1129" class="line"></line><line x1="333" y1="1129" x2="451" y2="1129" class="line"></line><line x1="189" y1="1161" x2="209" y2="1161" class="line"></line><line x1="471" y1="1161" x2="491" y2="1161" class="line"></line><path d="M189 1161 Q199 1161 199 1171" class="line"></path><path d="M481 1171 Q481 1161 491 1161" class="line"></path><line x1="199" y1="1171" x2="199" y2="1185" class="line"></line><line x1="481" y1="1185" x2="481" y2="1171" class="line"></line><path d="M199 1185 Q199 1195 209 1195" class="line"></path><path d="M471 1195 Q481 1195 481 1185" class="line"></path><line x1="209" y1="1195" x2="219" y2="1195" class="line"></line><line x1="219" y1="1195" x2="471" y2="1195" class="line"></line><rect x="523" y="1147" width="64" height="32" rx="10"></rect><rect x="521" y="1145" width="64" height="32" class="terminal" rx="10"></rect><text class="terminal" x="531" y="1165">having</text><line x1="511" y1="1161" x2="521" y2="1161" class="line"></line><line x1="585" y1="1161" x2="595" y2="1161" class="line"></line><a xlink:href="#CONDITION" xlink:title="CONDITION"><rect x="647" y="1147" width="92" height="32"></rect><rect x="645" y="1145" width="92" height="32" class="nonterminal"></rect><text class="nonterminal" x="655" y="1165">CONDITION</text></a><line x1="635" y1="1161" x2="645" y2="1161" class="line"></line><line x1="737" y1="1161" x2="747" y2="1161" class="line"></line><path d="M615 1161 L635 1161 M634 1161 Q625 1161 625 1151 L625 1139 Q625 1129 635 1129" class="line"></path><path d="M747 1161 L767 1161 M747 1161 Q757 1161 757 1151 L757 1139 Q757 1129 747 1129" class="line"></path><line x1="635" y1="1129" x2="645" y2="1129" class="line"></line><line x1="645" y1="1129" x2="747" y2="1129" class="line"></line><line x1="595" y1="1161" x2="615" y2="1161" class="line"></line><line x1="767" y1="1161" x2="787" y2="1161" class="line"></line><path d="M595 1161 Q605 1161 605 1171" class="line"></path><path d="M777 1171 Q777 1161 787 1161" class="line"></path><line x1="605" y1="1171" x2="605" y2="1195" class="line"></line><line x1="777" y1="1195" x2="777" y2="1171" class="line"></line><path d="M605 1195 Q605 1205 615 1205" class="line"></path><path d="M767 1205 Q777 1205 777 1195" class="line"></path><a xlink:href="#SQL" xlink:title="SQL"><rect x="627" y="1191" width="44" height="32"></rect><rect x="625" y="1189" width="44" height="32" class="nonterminal"></rect><text class="nonterminal" x="635" y="1209">SQL</text></a><line x1="615" y1="1205" x2="625" y2="1205" class="line"></line><line x1="669" y1="1205" x2="679" y2="1205" class="line"></line><line x1="679" y1="1205" x2="767" y2="1205" class="line"></line><a xlink:href="#MORE_CONDITIONS" xlink:title="MORE_CONDITIONS"><rect x="819" y="1147" width="144" height="32"></rect><rect x="817" y="1145" width="144" height="32" class="nonterminal"></rect><text class="nonterminal" x="827" y="1165">MORE_CONDITIONS</text></a><line x1="807" y1="1161" x2="817" y2="1161" class="line"></line><line x1="961" y1="1161" x2="971" y2="1161" class="line"></line><line x1="787" y1="1161" x2="807" y2="1161" class="line"></line><line x1="971" y1="1161" x2="991" y2="1161" class="line"></line><path d="M787 1161 Q797 1161 797 1171" class="line"></path><path d="M981 1171 Q981 1161 991 1161" class="line"></path><line x1="797" y1="1171" x2="797" y2="1185" class="line"></line><line x1="981" y1="1185" x2="981" y2="1171" class="line"></line><path d="M797 1185 Q797 1195 807 1195" class="line"></path><path d="M971 1195 Q981 1195 981 1185" class="line"></path><line x1="807" y1="1195" x2="817" y2="1195" class="line"></line><line x1="817" y1="1195" x2="971" y2="1195" class="line"></line><line x1="491" y1="1161" x2="511" y2="1161" class="line"></line><line x1="991" y1="1161" x2="1011" y2="1161" class="line"></line><path d="M491 1161 Q501 1161 501 1171" class="line"></path><path d="M1001 1171 Q1001 1161 1011 1161" class="line"></path><line x1="501" y1="1171" x2="501" y2="1229" class="line"></line><line x1="1001" y1="1229" x2="1001" y2="1171" class="line"></line><path d="M501 1229 Q501 1239 511 1239" class="line"></path><path d="M991 1239 Q1001 1239 1001 1229" class="line"></path><line x1="511" y1="1239" x2="521" y2="1239" class="line"></line><line x1="521" y1="1239" x2="991" y2="1239" class="line"></line><path class="line" d="M1013 1161 L1015 1161 M1017 1161 L1019 1161 M1021 1161 L1023 1161 M142 1303 L144 1303 M146 1303 L148 1303 M150 1303 L152 1303"></path><rect x="186" y="1289" width="72" height="32" rx="10"></rect><rect x="184" y="1287" width="72" height="32" class="terminal" rx="10"></rect><text class="terminal" x="194" y="1307">orderBy</text><line x1="174" y1="1303" x2="184" y2="1303" class="line"></line><line x1="256" y1="1303" x2="266" y2="1303" class="line"></line><a xlink:href="#FIELD" xlink:title="FIELD"><rect x="318" y="1289" width="56" height="32"></rect><rect x="316" y="1287" width="56" height="32" class="nonterminal"></rect><text class="nonterminal" x="326" y="1307">FIELD</text></a><line x1="306" y1="1303" x2="316" y2="1303" class="line"></line><line x1="372" y1="1303" x2="382" y2="1303" class="line"></line><path d="M286 1303 L306 1303 M305 1303 Q296 1303 296 1293 L296 1281 Q296 1271 306 1271" class="line"></path><path d="M382 1303 L402 1303 M382 1303 Q392 1303 392 1293 L392 1281 Q392 1271 382 1271" class="line"></path><line x1="306" y1="1271" x2="316" y2="1271" class="line"></line><line x1="316" y1="1271" x2="382" y2="1271" class="line"></line><line x1="402" y1="1303" x2="442" y2="1303" class="line"></line><line x1="266" y1="1303" x2="286" y2="1303" class="line"></line><line x1="442" y1="1303" x2="462" y2="1303" class="line"></line><path d="M266 1303 Q276 1303 276 1313" class="line"></path><path d="M452 1313 Q452 1303 462 1303" class="line"></path><line x1="276" y1="1313" x2="276" y2="1359" class="line"></line><line x1="452" y1="1359" x2="452" y2="1313" class="line"></line><path d="M276 1359 Q276 1369 286 1369" class="line"></path><path d="M442 1369 Q452 1369 452 1359" class="line"></path><a xlink:href="#SORT_FIELD" xlink:title="SORT_FIELD"><rect x="318" y="1355" width="96" height="32"></rect><rect x="316" y="1353" width="96" height="32" class="nonterminal"></rect><text class="nonterminal" x="326" y="1373">SORT_FIELD</text></a><line x1="306" y1="1369" x2="316" y2="1369" class="line"></line><line x1="412" y1="1369" x2="422" y2="1369" class="line"></line><path d="M286 1369 L306 1369 M305 1369 Q296 1369 296 1359 L296 1347 Q296 1337 306 1337" class="line"></path><path d="M422 1369 L442 1369 M422 1369 Q432 1369 432 1359 L432 1347 Q432 1337 422 1337" class="line"></path><line x1="306" y1="1337" x2="316" y2="1337" class="line"></line><line x1="316" y1="1337" x2="422" y2="1337" class="line"></line><line x1="276" y1="1359" x2="276" y2="1379" class="line"></line><line x1="452" y1="1379" x2="452" y2="1359" class="line"></line><line x1="276" y1="1379" x2="276" y2="1425" class="line"></line><line x1="452" y1="1425" x2="452" y2="1379" class="line"></line><path d="M276 1425 Q276 1435 286 1435" class="line"></path><path d="M442 1435 Q452 1435 452 1425" class="line"></path><a xlink:href="#INT" xlink:title="INT"><rect x="318" y="1421" width="40" height="32"></rect><rect x="316" y="1419" width="40" height="32" class="nonterminal"></rect><text class="nonterminal" x="326" y="1439">INT</text></a><line x1="306" y1="1435" x2="316" y2="1435" class="line"></line><line x1="356" y1="1435" x2="366" y2="1435" class="line"></line><path d="M286 1435 L306 1435 M305 1435 Q296 1435 296 1425 L296 1413 Q296 1403 306 1403" class="line"></path><path d="M366 1435 L386 1435 M366 1435 Q376 1435 376 1425 L376 1413 Q376 1403 366 1403" class="line"></path><line x1="306" y1="1403" x2="316" y2="1403" class="line"></line><line x1="316" y1="1403" x2="366" y2="1403" class="line"></line><line x1="386" y1="1435" x2="442" y2="1435" class="line"></line><line x1="154" y1="1303" x2="174" y2="1303" class="line"></line><line x1="462" y1="1303" x2="482" y2="1303" class="line"></line><path d="M154 1303 Q164 1303 164 1313" class="line"></path><path d="M472 1313 Q472 1303 482 1303" class="line"></path><line x1="164" y1="1313" x2="164" y2="1459" class="line"></line><line x1="472" y1="1459" x2="472" y2="1313" class="line"></line><path d="M164 1459 Q164 1469 174 1469" class="line"></path><path d="M462 1469 Q472 1469 472 1459" class="line"></path><line x1="174" y1="1469" x2="184" y2="1469" class="line"></line><line x1="184" y1="1469" x2="462" y2="1469" class="line"></line><rect x="514" y="1289" width="48" height="32" rx="10"></rect><rect x="512" y="1287" width="48" height="32" class="terminal" rx="10"></rect><text class="terminal" x="522" y="1307">limit</text><line x1="502" y1="1303" x2="512" y2="1303" class="line"></line><line x1="560" y1="1303" x2="570" y2="1303" class="line"></line><a xlink:href="#INT" xlink:title="INT"><rect x="582" y="1289" width="40" height="32"></rect><rect x="580" y="1287" width="40" height="32" class="nonterminal"></rect><text class="nonterminal" x="590" y="1307">INT</text></a><line x1="570" y1="1303" x2="580" y2="1303" class="line"></line><line x1="620" y1="1303" x2="630" y2="1303" class="line"></line><rect x="662" y="1289" width="58" height="32" rx="10"></rect><rect x="660" y="1287" width="58" height="32" class="terminal" rx="10"></rect><text class="terminal" x="670" y="1307">offset</text><line x1="650" y1="1303" x2="660" y2="1303" class="line"></line><line x1="718" y1="1303" x2="728" y2="1303" class="line"></line><a xlink:href="#INT" xlink:title="INT"><rect x="740" y="1289" width="40" height="32"></rect><rect x="738" y="1287" width="40" height="32" class="nonterminal"></rect><text class="nonterminal" x="748" y="1307">INT</text></a><line x1="728" y1="1303" x2="738" y2="1303" class="line"></line><line x1="778" y1="1303" x2="788" y2="1303" class="line"></line><line x1="630" y1="1303" x2="650" y2="1303" class="line"></line><line x1="788" y1="1303" x2="808" y2="1303" class="line"></line><path d="M630 1303 Q640 1303 640 1313" class="line"></path><path d="M798 1313 Q798 1303 808 1303" class="line"></path><line x1="640" y1="1313" x2="640" y2="1337" class="line"></line><line x1="798" y1="1337" x2="798" y2="1313" class="line"></line><path d="M640 1337 Q640 1347 650 1347" class="line"></path><path d="M788 1347 Q798 1347 798 1337" class="line"></path><a xlink:href="#INT" xlink:title="INT"><rect x="662" y="1333" width="40" height="32"></rect><rect x="660" y="1331" width="40" height="32" class="nonterminal"></rect><text class="nonterminal" x="670" y="1351">INT</text></a><line x1="650" y1="1347" x2="660" y2="1347" class="line"></line><line x1="700" y1="1347" x2="710" y2="1347" class="line"></line><line x1="710" y1="1347" x2="788" y2="1347" class="line"></line><line x1="640" y1="1337" x2="640" y2="1357" class="line"></line><line x1="798" y1="1357" x2="798" y2="1337" class="line"></line><line x1="640" y1="1357" x2="640" y2="1371" class="line"></line><line x1="798" y1="1371" x2="798" y2="1357" class="line"></line><path d="M640 1371 Q640 1381 650 1381" class="line"></path><path d="M788 1381 Q798 1381 798 1371" class="line"></path><line x1="650" y1="1381" x2="660" y2="1381" class="line"></line><line x1="660" y1="1381" x2="788" y2="1381" class="line"></line><line x1="808" y1="1303" x2="1026" y2="1303" class="line"></line><line x1="482" y1="1303" x2="502" y2="1303" class="line"></line><line x1="1026" y1="1303" x2="1046" y2="1303" class="line"></line><path d="M482 1303 Q492 1303 492 1313" class="line"></path><path d="M1036 1313 Q1036 1303 1046 1303" class="line"></path><line x1="492" y1="1313" x2="492" y2="1419" class="line"></line><line x1="1036" y1="1419" x2="1036" y2="1313" class="line"></line><path d="M492 1419 Q492 1429 502 1429" class="line"></path><path d="M1026 1429 Q1036 1429 1036 1419" class="line"></path><rect x="514" y="1415" width="86" height="32" rx="10"></rect><rect x="512" y="1413" width="86" height="32" class="terminal" rx="10"></rect><text class="terminal" x="522" y="1433">forUpdate</text><line x1="502" y1="1429" x2="512" y2="1429" class="line"></line><line x1="598" y1="1429" x2="608" y2="1429" class="line"></line><rect x="640" y="1415" width="32" height="32" rx="10"></rect><rect x="638" y="1413" width="32" height="32" class="terminal" rx="10"></rect><text class="terminal" x="648" y="1433">of</text><line x1="628" y1="1429" x2="638" y2="1429" class="line"></line><line x1="670" y1="1429" x2="680" y2="1429" class="line"></line><a xlink:href="#FIELD" xlink:title="FIELD"><rect x="732" y="1415" width="56" height="32"></rect><rect x="730" y="1413" width="56" height="32" class="nonterminal"></rect><text class="nonterminal" x="740" y="1433">FIELD</text></a><line x1="720" y1="1429" x2="730" y2="1429" class="line"></line><line x1="786" y1="1429" x2="796" y2="1429" class="line"></line><path d="M700 1429 L720 1429 M719 1429 Q710 1429 710 1419 L710 1407 Q710 1397 720 1397" class="line"></path><path d="M796 1429 L816 1429 M796 1429 Q806 1429 806 1419 L806 1407 Q806 1397 796 1397" class="line"></path><line x1="720" y1="1397" x2="730" y2="1397" class="line"></line><line x1="730" y1="1397" x2="796" y2="1397" class="line"></line><line x1="816" y1="1429" x2="818" y2="1429" class="line"></line><line x1="680" y1="1429" x2="700" y2="1429" class="line"></line><line x1="818" y1="1429" x2="838" y2="1429" class="line"></line><path d="M680 1429 Q690 1429 690 1439" class="line"></path><path d="M828 1439 Q828 1429 838 1429" class="line"></path><line x1="690" y1="1439" x2="690" y2="1485" class="line"></line><line x1="828" y1="1485" x2="828" y2="1439" class="line"></line><path d="M690 1485 Q690 1495 700 1495" class="line"></path><path d="M818 1495 Q828 1495 828 1485" class="line"></path><a xlink:href="#TABLE" xlink:title="TABLE"><rect x="732" y="1481" width="58" height="32"></rect><rect x="730" y="1479" width="58" height="32" class="nonterminal"></rect><text class="nonterminal" x="740" y="1499">TABLE</text></a><line x1="720" y1="1495" x2="730" y2="1495" class="line"></line><line x1="788" y1="1495" x2="798" y2="1495" class="line"></line><path d="M700 1495 L720 1495 M719 1495 Q710 1495 710 1485 L710 1473 Q710 1463 720 1463" class="line"></path><path d="M798 1495 L818 1495 M798 1495 Q808 1495 808 1485 L808 1473 Q808 1463 798 1463" class="line"></path><line x1="720" y1="1463" x2="730" y2="1463" class="line"></line><line x1="730" y1="1463" x2="798" y2="1463" class="line"></line><line x1="608" y1="1429" x2="628" y2="1429" class="line"></line><line x1="838" y1="1429" x2="858" y2="1429" class="line"></line><path d="M608 1429 Q618 1429 618 1439" class="line"></path><path d="M848 1439 Q848 1429 858 1429" class="line"></path><line x1="618" y1="1439" x2="618" y2="1519" class="line"></line><line x1="848" y1="1519" x2="848" y2="1439" class="line"></line><path d="M618 1519 Q618 1529 628 1529" class="line"></path><path d="M838 1529 Q848 1529 848 1519" class="line"></path><line x1="628" y1="1529" x2="638" y2="1529" class="line"></line><line x1="638" y1="1529" x2="838" y2="1529" class="line"></line><rect x="890" y="1415" width="48" height="32" rx="10"></rect><rect x="888" y="1413" width="48" height="32" class="terminal" rx="10"></rect><text class="terminal" x="898" y="1433">wait</text><line x1="878" y1="1429" x2="888" y2="1429" class="line"></line><line x1="936" y1="1429" x2="946" y2="1429" class="line"></line><a xlink:href="#INT" xlink:title="INT"><rect x="958" y="1415" width="40" height="32"></rect><rect x="956" y="1413" width="40" height="32" class="nonterminal"></rect><text class="nonterminal" x="966" y="1433">INT</text></a><line x1="946" y1="1429" x2="956" y2="1429" class="line"></line><line x1="996" y1="1429" x2="1006" y2="1429" class="line"></line><line x1="858" y1="1429" x2="878" y2="1429" class="line"></line><line x1="1006" y1="1429" x2="1026" y2="1429" class="line"></line><path d="M858 1429 Q868 1429 868 1439" class="line"></path><path d="M1016 1439 Q1016 1429 1026 1429" class="line"></path><line x1="868" y1="1439" x2="868" y2="1463" class="line"></line><line x1="1016" y1="1463" x2="1016" y2="1439" class="line"></line><path d="M868 1463 Q868 1473 878 1473" class="line"></path><path d="M1006 1473 Q1016 1473 1016 1463" class="line"></path><rect x="890" y="1459" width="66" height="32" rx="10"></rect><rect x="888" y="1457" width="66" height="32" class="terminal" rx="10"></rect><text class="terminal" x="898" y="1477">noWait</text><line x1="878" y1="1473" x2="888" y2="1473" class="line"></line><line x1="954" y1="1473" x2="964" y2="1473" class="line"></line><line x1="964" y1="1473" x2="1006" y2="1473" class="line"></line><line x1="868" y1="1463" x2="868" y2="1483" class="line"></line><line x1="1016" y1="1483" x2="1016" y2="1463" class="line"></line><line x1="868" y1="1483" x2="868" y2="1507" class="line"></line><line x1="1016" y1="1507" x2="1016" y2="1483" class="line"></line><path d="M868 1507 Q868 1517 878 1517" class="line"></path><path d="M1006 1517 Q1016 1517 1016 1507" class="line"></path><rect x="890" y="1503" width="94" height="32" rx="10"></rect><rect x="888" y="1501" width="94" height="32" class="terminal" rx="10"></rect><text class="terminal" x="898" y="1521">skipLocked</text><line x1="878" y1="1517" x2="888" y2="1517" class="line"></line><line x1="982" y1="1517" x2="992" y2="1517" class="line"></line><line x1="992" y1="1517" x2="1006" y2="1517" class="line"></line><line x1="868" y1="1507" x2="868" y2="1527" class="line"></line><line x1="1016" y1="1527" x2="1016" y2="1507" class="line"></line><line x1="868" y1="1527" x2="868" y2="1541" class="line"></line><line x1="1016" y1="1541" x2="1016" y2="1527" class="line"></line><path d="M868 1541 Q868 1551 878 1551" class="line"></path><path d="M1006 1551 Q1016 1551 1016 1541" class="line"></path><line x1="878" y1="1551" x2="888" y2="1551" class="line"></line><line x1="888" y1="1551" x2="1006" y2="1551" class="line"></line><line x1="492" y1="1419" x2="492" y2="1439" class="line"></line><line x1="1036" y1="1439" x2="1036" y2="1419" class="line"></line><line x1="492" y1="1439" x2="492" y2="1573" class="line"></line><line x1="1036" y1="1573" x2="1036" y2="1439" class="line"></line><path d="M492 1573 Q492 1583 502 1583" class="line"></path><path d="M1026 1583 Q1036 1583 1036 1573" class="line"></path><rect x="514" y="1569" width="78" height="32" rx="10"></rect><rect x="512" y="1567" width="78" height="32" class="terminal" rx="10"></rect><text class="terminal" x="522" y="1587">forShare</text><line x1="502" y1="1583" x2="512" y2="1583" class="line"></line><line x1="590" y1="1583" x2="600" y2="1583" class="line"></line><line x1="600" y1="1583" x2="1026" y2="1583" class="line"></line><line x1="492" y1="1573" x2="492" y2="1593" class="line"></line><line x1="1036" y1="1593" x2="1036" y2="1573" class="line"></line><line x1="492" y1="1593" x2="492" y2="1607" class="line"></line><line x1="1036" y1="1607" x2="1036" y2="1593" class="line"></line><path d="M492 1607 Q492 1617 502 1617" class="line"></path><path d="M1026 1617 Q1036 1617 1036 1607" class="line"></path><line x1="502" y1="1617" x2="512" y2="1617" class="line"></line><line x1="512" y1="1617" x2="1026" y2="1617" class="line"></line><path class="line" d="M1048 1303 L1050 1303 M1052 1303 L1054 1303 M1056 1303 L1058 1303 M865 1681 L867 1681 M869 1681 L871 1681 M873 1681 L875 1681"></path><rect x="949" y="1667" width="56" height="32" rx="10"></rect><rect x="947" y="1665" width="56" height="32" class="terminal" rx="10"></rect><text class="terminal" x="957" y="1685">union</text><line x1="937" y1="1681" x2="947" y2="1681" class="line"></line><line x1="1003" y1="1681" x2="1013" y2="1681" class="line"></line><line x1="1013" y1="1681" x2="1035" y2="1681" class="line"></line><line x1="917" y1="1681" x2="937" y2="1681" class="line"></line><line x1="1035" y1="1681" x2="1055" y2="1681" class="line"></line><path d="M917 1681 Q927 1681 927 1691" class="line"></path><path d="M1045 1691 Q1045 1681 1055 1681" class="line"></path><line x1="927" y1="1691" x2="927" y2="1715" class="line"></line><line x1="1045" y1="1715" x2="1045" y2="1691" class="line"></line><path d="M927 1715 Q927 1725 937 1725" class="line"></path><path d="M1035 1725 Q1045 1725 1045 1715" class="line"></path><rect x="949" y="1711" width="72" height="32" rx="10"></rect><rect x="947" y="1709" width="72" height="32" class="terminal" rx="10"></rect><text class="terminal" x="957" y="1729">unionAll</text><line x1="937" y1="1725" x2="947" y2="1725" class="line"></line><line x1="1019" y1="1725" x2="1029" y2="1725" class="line"></line><line x1="1029" y1="1725" x2="1035" y2="1725" class="line"></line><line x1="927" y1="1715" x2="927" y2="1735" class="line"></line><line x1="1045" y1="1735" x2="1045" y2="1715" class="line"></line><line x1="927" y1="1735" x2="927" y2="1759" class="line"></line><line x1="1045" y1="1759" x2="1045" y2="1735" class="line"></line><path d="M927 1759 Q927 1769 937 1769" class="line"></path><path d="M1035 1769 Q1045 1769 1045 1759" class="line"></path><rect x="949" y="1755" width="64" height="32" rx="10"></rect><rect x="947" y="1753" width="64" height="32" class="terminal" rx="10"></rect><text class="terminal" x="957" y="1773">except</text><line x1="937" y1="1769" x2="947" y2="1769" class="line"></line><line x1="1011" y1="1769" x2="1021" y2="1769" class="line"></line><line x1="1021" y1="1769" x2="1035" y2="1769" class="line"></line><line x1="927" y1="1759" x2="927" y2="1779" class="line"></line><line x1="1045" y1="1779" x2="1045" y2="1759" class="line"></line><line x1="927" y1="1779" x2="927" y2="1803" class="line"></line><line x1="1045" y1="1803" x2="1045" y2="1779" class="line"></line><path d="M927 1803 Q927 1813 937 1813" class="line"></path><path d="M1035 1813 Q1045 1813 1045 1803" class="line"></path><rect x="949" y="1799" width="78" height="32" rx="10"></rect><rect x="947" y="1797" width="78" height="32" class="terminal" rx="10"></rect><text class="terminal" x="957" y="1817">intersect</text><line x1="937" y1="1813" x2="947" y2="1813" class="line"></line><line x1="1025" y1="1813" x2="1035" y2="1813" class="line"></line><a xlink:href="#SELECT" xlink:title="SELECT"><rect x="1067" y="1667" width="66" height="32"></rect><rect x="1065" y="1665" width="66" height="32" class="nonterminal"></rect><text class="nonterminal" x="1075" y="1685">SELECT</text></a><line x1="1055" y1="1681" x2="1065" y2="1681" class="line"></line><line x1="1131" y1="1681" x2="1141" y2="1681" class="line"></line><path d="M897 1681 L917 1681 M916 1681 Q907 1681 907 1671 L907 1659 Q907 1649 917 1649" class="line"></path><path d="M1141 1681 L1161 1681 M1141 1681 Q1151 1681 1151 1671 L1151 1659 Q1151 1649 1141 1649" class="line"></path><line x1="917" y1="1649" x2="927" y2="1649" class="line"></line><line x1="927" y1="1649" x2="1141" y2="1649" class="line"></line><line x1="877" y1="1681" x2="897" y2="1681" class="line"></line><line x1="1161" y1="1681" x2="1181" y2="1681" class="line"></line><path d="M877 1681 Q887 1681 887 1691" class="line"></path><path d="M1171 1691 Q1171 1681 1181 1681" class="line"></path><line x1="887" y1="1691" x2="887" y2="1837" class="line"></line><line x1="1171" y1="1837" x2="1171" y2="1691" class="line"></line><path d="M887 1837 Q887 1847 897 1847" class="line"></path><path d="M1161 1847 Q1171 1847 1171 1837" class="line"></path><line x1="897" y1="1847" x2="907" y2="1847" class="line"></line><line x1="907" y1="1847" x2="1161" y2="1847" class="line"></line><line x1="1184" y1="1681" x2="1181" y2="1681" class="line"></line><polygon points="1191 1681 1199 1677 1199 1685" class="filled"></polygon><polygon points="1191 1681 1183 1677 1183 1685" class="filled"></polygon></svg><xhtml:p xmlns:xhtml="http://www.w3.org/1999/xhtml">referenced by:<xhtml:ul><xhtml:li><xhtml:a href="#CONDITION" title="CONDITION">CONDITION</xhtml:a></xhtml:li><xhtml:li><xhtml:a href="#DELETE" title="DELETE">DELETE</xhtml:a></xhtml:li><xhtml:li><xhtml:a href="#INSERT" title="INSERT">INSERT</xhtml:a></xhtml:li><xhtml:li><xhtml:a href="#MORE_CONDITIONS" title="MORE_CONDITIONS">MORE_CONDITIONS</xhtml:a></xhtml:li><xhtml:li><xhtml:a href="#QUERY" title="QUERY">QUERY</xhtml:a></xhtml:li><xhtml:li><xhtml:a href="#RESULT_QUERY" title="RESULT_QUERY">RESULT_QUERY</xhtml:a></xhtml:li><xhtml:li><xhtml:a href="#SELECT" title="SELECT">SELECT</xhtml:a></xhtml:li><xhtml:li><xhtml:a href="#TABLE" title="TABLE">TABLE</xhtml:a></xhtml:li><xhtml:li><xhtml:a href="#UPDATE" title="UPDATE">UPDATE</xhtml:a></xhtml:li></xhtml:ul></xhtml:p><xhtml:br xmlns:xhtml="http://www.w3.org/1999/xhtml"></xhtml:br><xhtml:p xmlns:xhtml="http://www.w3.org/1999/xhtml" style="font-size: 14px; font-weight:bold"><xhtml:a name="UPDATE">UPDATE:</xhtml:a></xhtml:p><svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="590" height="282"><defs><style type="text/css">
    +
    +    @namespace "http://www.w3.org/2000/svg";
    +    .line                 {fill: none; stroke: #332900;}
    +    filled                {fill: #332900; stroke: none;}
    +    text                  {font-family: Verdana, Sans-serif;
    +                            font-size: 12px;
    +                            fill: #4D3D00;
    +                          }
    +    text.terminal         {font-family: Verdana, Sans-serif;
    +                            font-size: 12px;
    +                            fill: #4D3D00;
    +                            font-weight: bold;
    +                          }
    +    rect, circle, polygon {fill: #332900; stroke: #332900;}
    +    rect.terminal         {fill: #FFCC00; stroke: #332900;}
    +    rect.nonterminal      {fill: #FFEB99; stroke: #332900;}
    +    rect.text             {fill: none; stroke: none;}    
    +    polygon.regexp        {fill: #FFF5CC; stroke: #332900;}
    +  </style></defs><polygon points="11 33 3 29 3 37" class="filled"></polygon><polygon points="19 33 11 29 11 37" class="filled"></polygon><line x1="19" y1="33" x2="21" y2="33" class="line"></line><rect x="33" y="19" width="64" height="32" rx="10"></rect><rect x="31" y="17" width="64" height="32" class="terminal" rx="10"></rect><text class="terminal" x="41" y="37">update</text><line x1="21" y1="33" x2="31" y2="33" class="line"></line><line x1="95" y1="33" x2="105" y2="33" class="line"></line><a xlink:href="#TABLE" xlink:title="TABLE"><rect x="117" y="19" width="58" height="32"></rect><rect x="115" y="17" width="58" height="32" class="nonterminal"></rect><text class="nonterminal" x="125" y="37">TABLE</text></a><line x1="105" y1="33" x2="115" y2="33" class="line"></line><line x1="173" y1="33" x2="183" y2="33" class="line"></line><rect x="215" y="19" width="40" height="32" rx="10"></rect><rect x="213" y="17" width="40" height="32" class="terminal" rx="10"></rect><text class="terminal" x="223" y="37">set</text><line x1="203" y1="33" x2="213" y2="33" class="line"></line><line x1="253" y1="33" x2="263" y2="33" class="line"></line><a xlink:href="#FIELD" xlink:title="FIELD"><rect x="275" y="19" width="56" height="32"></rect><rect x="273" y="17" width="56" height="32" class="nonterminal"></rect><text class="nonterminal" x="283" y="37">FIELD</text></a><line x1="263" y1="33" x2="273" y2="33" class="line"></line><line x1="329" y1="33" x2="339" y2="33" class="line"></line><a xlink:href="#FIELD" xlink:title="FIELD"><rect x="351" y="19" width="56" height="32"></rect><rect x="349" y="17" width="56" height="32" class="nonterminal"></rect><text class="nonterminal" x="359" y="37">FIELD</text></a><line x1="339" y1="33" x2="349" y2="33" class="line"></line><line x1="405" y1="33" x2="415" y2="33" class="line"></line><path d="M183 33 L203 33 M202 33 Q193 33 193 23 L193 11 Q193 1 203 1" class="line"></path><path d="M415 33 L435 33 M415 33 Q425 33 425 23 L425 11 Q425 1 415 1" class="line"></path><line x1="203" y1="1" x2="213" y2="1" class="line"></line><line x1="213" y1="1" x2="415" y2="1" class="line"></line><path class="line" d="M437 33 L439 33 M441 33 L443 33 M445 33 L447 33 M1 115 L3 115 M5 115 L7 115 M9 115 L11 115"></path><rect x="65" y="101" width="62" height="32" rx="10"></rect><rect x="63" y="99" width="62" height="32" class="terminal" rx="10"></rect><text class="terminal" x="73" y="119">where</text><line x1="53" y1="115" x2="63" y2="115" class="line"></line><line x1="125" y1="115" x2="135" y2="115" class="line"></line><a xlink:href="#CONDITION" xlink:title="CONDITION"><rect x="187" y="101" width="92" height="32"></rect><rect x="185" y="99" width="92" height="32" class="nonterminal"></rect><text class="nonterminal" x="195" y="119">CONDITION</text></a><line x1="175" y1="115" x2="185" y2="115" class="line"></line><line x1="277" y1="115" x2="287" y2="115" class="line"></line><path d="M155 115 L175 115 M174 115 Q165 115 165 105 L165 93 Q165 83 175 83" class="line"></path><path d="M287 115 L307 115 M287 115 Q297 115 297 105 L297 93 Q297 83 287 83" class="line"></path><line x1="175" y1="83" x2="185" y2="83" class="line"></line><line x1="185" y1="83" x2="287" y2="83" class="line"></line><line x1="135" y1="115" x2="155" y2="115" class="line"></line><line x1="307" y1="115" x2="327" y2="115" class="line"></line><path d="M135 115 Q145 115 145 125" class="line"></path><path d="M317 125 Q317 115 327 115" class="line"></path><line x1="145" y1="125" x2="145" y2="149" class="line"></line><line x1="317" y1="149" x2="317" y2="125" class="line"></line><path d="M145 149 Q145 159 155 159" class="line"></path><path d="M307 159 Q317 159 317 149" class="line"></path><a xlink:href="#SQL" xlink:title="SQL"><rect x="167" y="145" width="44" height="32"></rect><rect x="165" y="143" width="44" height="32" class="nonterminal"></rect><text class="nonterminal" x="175" y="163">SQL</text></a><line x1="155" y1="159" x2="165" y2="159" class="line"></line><line x1="209" y1="159" x2="219" y2="159" class="line"></line><line x1="219" y1="159" x2="307" y2="159" class="line"></line><line x1="33" y1="115" x2="53" y2="115" class="line"></line><line x1="327" y1="115" x2="347" y2="115" class="line"></line><path d="M33 115 Q43 115 43 125" class="line"></path><path d="M337 125 Q337 115 347 115" class="line"></path><line x1="43" y1="125" x2="43" y2="193" class="line"></line><line x1="337" y1="193" x2="337" y2="125" class="line"></line><path d="M43 193 Q43 203 53 203" class="line"></path><path d="M327 203 Q337 203 337 193" class="line"></path><rect x="85" y="189" width="100" height="32" rx="10"></rect><rect x="83" y="187" width="100" height="32" class="terminal" rx="10"></rect><text class="terminal" x="93" y="207">whereExists</text><line x1="73" y1="203" x2="83" y2="203" class="line"></line><line x1="183" y1="203" x2="193" y2="203" class="line"></line><line x1="193" y1="203" x2="217" y2="203" class="line"></line><line x1="53" y1="203" x2="73" y2="203" class="line"></line><line x1="217" y1="203" x2="237" y2="203" class="line"></line><path d="M53 203 Q63 203 63 213" class="line"></path><path d="M227 213 Q227 203 237 203" class="line"></path><line x1="63" y1="213" x2="63" y2="237" class="line"></line><line x1="227" y1="237" x2="227" y2="213" class="line"></line><path d="M63 237 Q63 247 73 247" class="line"></path><path d="M217 247 Q227 247 227 237" class="line"></path><rect x="85" y="233" width="124" height="32" rx="10"></rect><rect x="83" y="231" width="124" height="32" class="terminal" rx="10"></rect><text class="terminal" x="93" y="251">whereNotExists</text><line x1="73" y1="247" x2="83" y2="247" class="line"></line><line x1="207" y1="247" x2="217" y2="247" class="line"></line><a xlink:href="#SELECT" xlink:title="SELECT"><rect x="249" y="189" width="66" height="32"></rect><rect x="247" y="187" width="66" height="32" class="nonterminal"></rect><text class="nonterminal" x="257" y="207">SELECT</text></a><line x1="237" y1="203" x2="247" y2="203" class="line"></line><line x1="313" y1="203" x2="323" y2="203" class="line"></line><line x1="323" y1="203" x2="327" y2="203" class="line"></line><a xlink:href="#MORE_CONDITIONS" xlink:title="MORE_CONDITIONS"><rect x="379" y="101" width="144" height="32"></rect><rect x="377" y="99" width="144" height="32" class="nonterminal"></rect><text class="nonterminal" x="387" y="119">MORE_CONDITIONS</text></a><line x1="367" y1="115" x2="377" y2="115" class="line"></line><line x1="521" y1="115" x2="531" y2="115" class="line"></line><line x1="347" y1="115" x2="367" y2="115" class="line"></line><line x1="531" y1="115" x2="551" y2="115" class="line"></line><path d="M347 115 Q357 115 357 125" class="line"></path><path d="M541 125 Q541 115 551 115" class="line"></path><line x1="357" y1="125" x2="357" y2="139" class="line"></line><line x1="541" y1="139" x2="541" y2="125" class="line"></line><path d="M357 139 Q357 149 367 149" class="line"></path><path d="M531 149 Q541 149 541 139" class="line"></path><line x1="367" y1="149" x2="377" y2="149" class="line"></line><line x1="377" y1="149" x2="531" y2="149" class="line"></line><line x1="13" y1="115" x2="33" y2="115" class="line"></line><line x1="551" y1="115" x2="571" y2="115" class="line"></line><path d="M13 115 Q23 115 23 125" class="line"></path><path d="M561 125 Q561 115 571 115" class="line"></path><line x1="23" y1="125" x2="23" y2="271" class="line"></line><line x1="561" y1="271" x2="561" y2="125" class="line"></line><path d="M23 271 Q23 281 33 281" class="line"></path><path d="M551 281 Q561 281 561 271" class="line"></path><line x1="33" y1="281" x2="43" y2="281" class="line"></line><line x1="43" y1="281" x2="551" y2="281" class="line"></line><line x1="574" y1="115" x2="571" y2="115" class="line"></line><polygon points="581 115 589 111 589 119" class="filled"></polygon><polygon points="581 115 573 111 573 119" class="filled"></polygon></svg><xhtml:p xmlns:xhtml="http://www.w3.org/1999/xhtml">referenced by:<xhtml:ul><xhtml:li><xhtml:a href="#QUERY" title="QUERY">QUERY</xhtml:a></xhtml:li></xhtml:ul></xhtml:p><xhtml:br xmlns:xhtml="http://www.w3.org/1999/xhtml"></xhtml:br><xhtml:p xmlns:xhtml="http://www.w3.org/1999/xhtml" style="font-size: 14px; font-weight:bold"><xhtml:a name="INSERT">INSERT:</xhtml:a></xhtml:p><svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="1026" height="376"><defs><style type="text/css">
    +
    +    @namespace "http://www.w3.org/2000/svg";
    +    .line                 {fill: none; stroke: #332900;}
    +    filled                {fill: #332900; stroke: none;}
    +    text                  {font-family: Verdana, Sans-serif;
    +                            font-size: 12px;
    +                            fill: #4D3D00;
    +                          }
    +    text.terminal         {font-family: Verdana, Sans-serif;
    +                            font-size: 12px;
    +                            fill: #4D3D00;
    +                            font-weight: bold;
    +                          }
    +    rect, circle, polygon {fill: #332900; stroke: #332900;}
    +    rect.terminal         {fill: #FFCC00; stroke: #332900;}
    +    rect.nonterminal      {fill: #FFEB99; stroke: #332900;}
    +    rect.text             {fill: none; stroke: none;}    
    +    polygon.regexp        {fill: #FFF5CC; stroke: #332900;}
    +  </style></defs><polygon points="11 17 3 13 3 21" class="filled"></polygon><polygon points="19 17 11 13 11 21" class="filled"></polygon><line x1="19" y1="17" x2="21" y2="17" class="line"></line><rect x="33" y="3" width="84" height="32" rx="10"></rect><rect x="31" y="1" width="84" height="32" class="terminal" rx="10"></rect><text class="terminal" x="41" y="21">insertInto</text><line x1="21" y1="17" x2="31" y2="17" class="line"></line><line x1="115" y1="17" x2="125" y2="17" class="line"></line><path class="line" d="M127 17 L129 17 M131 17 L133 17 M135 17 L137 17 M1 83 L3 83 M5 83 L7 83 M9 83 L11 83"></path><a xlink:href="#SELECT" xlink:title="SELECT"><rect x="45" y="69" width="66" height="32"></rect><rect x="43" y="67" width="66" height="32" class="nonterminal"></rect><text class="nonterminal" x="53" y="87">SELECT</text></a><line x1="33" y1="83" x2="43" y2="83" class="line"></line><line x1="109" y1="83" x2="119" y2="83" class="line"></line><line x1="119" y1="83" x2="987" y2="83" class="line"></line><line x1="13" y1="83" x2="33" y2="83" class="line"></line><line x1="987" y1="83" x2="1007" y2="83" class="line"></line><path d="M13 83 Q23 83 23 93" class="line"></path><path d="M997 93 Q997 83 1007 83" class="line"></path><line x1="23" y1="93" x2="23" y2="183" class="line"></line><line x1="997" y1="183" x2="997" y2="93" class="line"></line><path d="M23 183 Q23 193 33 193" class="line"></path><path d="M987 193 Q997 193 997 183" class="line"></path><a xlink:href="#TABLE" xlink:title="TABLE"><rect x="45" y="179" width="58" height="32"></rect><rect x="43" y="177" width="58" height="32" class="nonterminal"></rect><text class="nonterminal" x="53" y="197">TABLE</text></a><line x1="33" y1="193" x2="43" y2="193" class="line"></line><line x1="101" y1="193" x2="111" y2="193" class="line"></line><rect x="183" y="179" width="40" height="32" rx="10"></rect><rect x="181" y="177" width="40" height="32" class="terminal" rx="10"></rect><text class="terminal" x="191" y="197">set</text><line x1="171" y1="193" x2="181" y2="193" class="line"></line><line x1="221" y1="193" x2="231" y2="193" class="line"></line><a xlink:href="#FIELD" xlink:title="FIELD"><rect x="243" y="179" width="56" height="32"></rect><rect x="241" y="177" width="56" height="32" class="nonterminal"></rect><text class="nonterminal" x="251" y="197">FIELD</text></a><line x1="231" y1="193" x2="241" y2="193" class="line"></line><line x1="297" y1="193" x2="307" y2="193" class="line"></line><a xlink:href="#FIELD" xlink:title="FIELD"><rect x="319" y="179" width="56" height="32"></rect><rect x="317" y="177" width="56" height="32" class="nonterminal"></rect><text class="nonterminal" x="327" y="197">FIELD</text></a><line x1="307" y1="193" x2="317" y2="193" class="line"></line><line x1="373" y1="193" x2="383" y2="193" class="line"></line><path d="M151 193 L171 193 M170 193 Q161 193 161 183 L161 171 Q161 161 171 161" class="line"></path><path d="M383 193 L403 193 M383 193 Q393 193 393 183 L393 171 Q393 161 383 161" class="line"></path><line x1="171" y1="161" x2="181" y2="161" class="line"></line><line x1="181" y1="161" x2="383" y2="161" class="line"></line><path d="M131 193 L151 193 M150 193 Q141 193 141 183 L141 137 Q141 127 151 127" class="line"></path><path d="M403 193 L423 193 M403 193 Q413 193 413 183 L413 137 Q413 127 403 127" class="line"></path><rect x="163" y="113" width="94" height="32" rx="10"></rect><rect x="161" y="111" width="94" height="32" class="terminal" rx="10"></rect><text class="terminal" x="171" y="131">newRecord</text><line x1="151" y1="127" x2="161" y2="127" class="line"></line><line x1="255" y1="127" x2="265" y2="127" class="line"></line><line x1="265" y1="127" x2="403" y2="127" class="line"></line><line x1="423" y1="193" x2="485" y2="193" class="line"></line><line x1="111" y1="193" x2="131" y2="193" class="line"></line><line x1="485" y1="193" x2="505" y2="193" class="line"></line><path d="M111 193 Q121 193 121 203" class="line"></path><path d="M495 203 Q495 193 505 193" class="line"></path><line x1="121" y1="203" x2="121" y2="265" class="line"></line><line x1="495" y1="265" x2="495" y2="203" class="line"></line><path d="M121 265 Q121 275 131 275" class="line"></path><path d="M485 275 Q495 275 495 265" class="line"></path><rect x="163" y="261" width="62" height="32" rx="10"></rect><rect x="161" y="259" width="62" height="32" class="terminal" rx="10"></rect><text class="terminal" x="171" y="279">values</text><line x1="151" y1="275" x2="161" y2="275" class="line"></line><line x1="223" y1="275" x2="233" y2="275" class="line"></line><a xlink:href="#FIELD" xlink:title="FIELD"><rect x="265" y="261" width="56" height="32"></rect><rect x="263" y="259" width="56" height="32" class="nonterminal"></rect><text class="nonterminal" x="273" y="279">FIELD</text></a><line x1="253" y1="275" x2="263" y2="275" class="line"></line><line x1="319" y1="275" x2="329" y2="275" class="line"></line><path d="M233 275 L253 275 M252 275 Q243 275 243 265 L243 253 Q243 243 253 243" class="line"></path><path d="M329 275 L349 275 M329 275 Q339 275 339 265 L339 253 Q339 243 329 243" class="line"></path><line x1="253" y1="243" x2="263" y2="243" class="line"></line><line x1="263" y1="243" x2="329" y2="243" class="line"></line><path d="M131 275 L151 275 M150 275 Q141 275 141 265 L141 237 Q141 227 151 227" class="line"></path><path d="M349 275 L369 275 M349 275 Q359 275 359 265 L359 237 Q359 227 349 227" class="line"></path><line x1="151" y1="227" x2="161" y2="227" class="line"></line><line x1="161" y1="227" x2="349" y2="227" class="line"></line><line x1="369" y1="275" x2="485" y2="275" class="line"></line><line x1="121" y1="265" x2="121" y2="285" class="line"></line><line x1="495" y1="285" x2="495" y2="265" class="line"></line><line x1="121" y1="285" x2="121" y2="347" class="line"></line><line x1="495" y1="347" x2="495" y2="285" class="line"></line><path d="M121 347 Q121 357 131 357" class="line"></path><path d="M485 357 Q495 357 495 347" class="line"></path><a xlink:href="#FIELD" xlink:title="FIELD"><rect x="163" y="343" width="56" height="32"></rect><rect x="161" y="341" width="56" height="32" class="nonterminal"></rect><text class="nonterminal" x="171" y="361">FIELD</text></a><line x1="151" y1="357" x2="161" y2="357" class="line"></line><line x1="217" y1="357" x2="227" y2="357" class="line"></line><path d="M131 357 L151 357 M150 357 Q141 357 141 347 L141 335 Q141 325 151 325" class="line"></path><path d="M227 357 L247 357 M227 357 Q237 357 237 347 L237 335 Q237 325 227 325" class="line"></path><line x1="151" y1="325" x2="161" y2="325" class="line"></line><line x1="161" y1="325" x2="227" y2="325" class="line"></line><rect x="279" y="343" width="62" height="32" rx="10"></rect><rect x="277" y="341" width="62" height="32" class="terminal" rx="10"></rect><text class="terminal" x="287" y="361">values</text><line x1="267" y1="357" x2="277" y2="357" class="line"></line><line x1="339" y1="357" x2="349" y2="357" class="line"></line><a xlink:href="#FIELD" xlink:title="FIELD"><rect x="381" y="343" width="56" height="32"></rect><rect x="379" y="341" width="56" height="32" class="nonterminal"></rect><text class="nonterminal" x="389" y="361">FIELD</text></a><line x1="369" y1="357" x2="379" y2="357" class="line"></line><line x1="435" y1="357" x2="445" y2="357" class="line"></line><path d="M349 357 L369 357 M368 357 Q359 357 359 347 L359 335 Q359 325 369 325" class="line"></path><path d="M445 357 L465 357 M445 357 Q455 357 455 347 L455 335 Q455 325 445 325" class="line"></path><line x1="369" y1="325" x2="379" y2="325" class="line"></line><line x1="379" y1="325" x2="445" y2="325" class="line"></line><path d="M247 357 L267 357 M266 357 Q257 357 257 347 L257 319 Q257 309 267 309" class="line"></path><path d="M465 357 L485 357 M465 357 Q475 357 475 347 L475 319 Q475 309 465 309" class="line"></path><line x1="267" y1="309" x2="277" y2="309" class="line"></line><line x1="277" y1="309" x2="465" y2="309" class="line"></line><rect x="537" y="179" width="170" height="32" rx="10"></rect><rect x="535" y="177" width="170" height="32" class="terminal" rx="10"></rect><text class="terminal" x="545" y="197">onDuplicateKeyUpdate</text><line x1="525" y1="193" x2="535" y2="193" class="line"></line><line x1="705" y1="193" x2="715" y2="193" class="line"></line><rect x="747" y="179" width="40" height="32" rx="10"></rect><rect x="745" y="177" width="40" height="32" class="terminal" rx="10"></rect><text class="terminal" x="755" y="197">set</text><line x1="735" y1="193" x2="745" y2="193" class="line"></line><line x1="785" y1="193" x2="795" y2="193" class="line"></line><a xlink:href="#FIELD" xlink:title="FIELD"><rect x="807" y="179" width="56" height="32"></rect><rect x="805" y="177" width="56" height="32" class="nonterminal"></rect><text class="nonterminal" x="815" y="197">FIELD</text></a><line x1="795" y1="193" x2="805" y2="193" class="line"></line><line x1="861" y1="193" x2="871" y2="193" class="line"></line><a xlink:href="#FIELD" xlink:title="FIELD"><rect x="883" y="179" width="56" height="32"></rect><rect x="881" y="177" width="56" height="32" class="nonterminal"></rect><text class="nonterminal" x="891" y="197">FIELD</text></a><line x1="871" y1="193" x2="881" y2="193" class="line"></line><line x1="937" y1="193" x2="947" y2="193" class="line"></line><path d="M715 193 L735 193 M734 193 Q725 193 725 183 L725 171 Q725 161 735 161" class="line"></path><path d="M947 193 L967 193 M947 193 Q957 193 957 183 L957 171 Q957 161 947 161" class="line"></path><line x1="735" y1="161" x2="745" y2="161" class="line"></line><line x1="745" y1="161" x2="947" y2="161" class="line"></line><line x1="505" y1="193" x2="525" y2="193" class="line"></line><line x1="967" y1="193" x2="987" y2="193" class="line"></line><path d="M505 193 Q515 193 515 203" class="line"></path><path d="M977 203 Q977 193 987 193" class="line"></path><line x1="515" y1="203" x2="515" y2="249" class="line"></line><line x1="977" y1="249" x2="977" y2="203" class="line"></line><path d="M515 249 Q515 259 525 259" class="line"></path><path d="M967 259 Q977 259 977 249" class="line"></path><rect x="537" y="245" width="80" height="32" rx="10"></rect><rect x="535" y="243" width="80" height="32" class="terminal" rx="10"></rect><text class="terminal" x="545" y="263">returning</text><line x1="525" y1="259" x2="535" y2="259" class="line"></line><line x1="615" y1="259" x2="625" y2="259" class="line"></line><a xlink:href="#FIELD" xlink:title="FIELD"><rect x="677" y="245" width="56" height="32"></rect><rect x="675" y="243" width="56" height="32" class="nonterminal"></rect><text class="nonterminal" x="685" y="263">FIELD</text></a><line x1="665" y1="259" x2="675" y2="259" class="line"></line><line x1="731" y1="259" x2="741" y2="259" class="line"></line><path d="M645 259 L665 259 M664 259 Q655 259 655 249 L655 237 Q655 227 665 227" class="line"></path><path d="M741 259 L761 259 M741 259 Q751 259 751 249 L751 237 Q751 227 741 227" class="line"></path><line x1="665" y1="227" x2="675" y2="227" class="line"></line><line x1="675" y1="227" x2="741" y2="227" class="line"></line><line x1="625" y1="259" x2="645" y2="259" class="line"></line><line x1="761" y1="259" x2="781" y2="259" class="line"></line><path d="M625 259 Q635 259 635 269" class="line"></path><path d="M771 269 Q771 259 781 259" class="line"></path><line x1="635" y1="269" x2="635" y2="283" class="line"></line><line x1="771" y1="283" x2="771" y2="269" class="line"></line><path d="M635 283 Q635 293 645 293" class="line"></path><path d="M761 293 Q771 293 771 283" class="line"></path><line x1="645" y1="293" x2="655" y2="293" class="line"></line><line x1="655" y1="293" x2="761" y2="293" class="line"></line><line x1="781" y1="259" x2="967" y2="259" class="line"></line><line x1="515" y1="249" x2="515" y2="269" class="line"></line><line x1="977" y1="269" x2="977" y2="249" class="line"></line><line x1="515" y1="269" x2="515" y2="299" class="line"></line><line x1="977" y1="299" x2="977" y2="269" class="line"></line><path d="M515 299 Q515 309 525 309" class="line"></path><path d="M967 309 Q977 309 977 299" class="line"></path><line x1="525" y1="309" x2="535" y2="309" class="line"></line><line x1="535" y1="309" x2="967" y2="309" class="line"></line><line x1="1010" y1="83" x2="1007" y2="83" class="line"></line><polygon points="1017 83 1025 79 1025 87" class="filled"></polygon><polygon points="1017 83 1009 79 1009 87" class="filled"></polygon></svg><xhtml:p xmlns:xhtml="http://www.w3.org/1999/xhtml">referenced by:<xhtml:ul><xhtml:li><xhtml:a href="#QUERY" title="QUERY">QUERY</xhtml:a></xhtml:li></xhtml:ul></xhtml:p><xhtml:br xmlns:xhtml="http://www.w3.org/1999/xhtml"></xhtml:br><xhtml:p xmlns:xhtml="http://www.w3.org/1999/xhtml" style="font-size: 14px; font-weight:bold"><xhtml:a name="DELETE">DELETE:</xhtml:a></xhtml:p><svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="754" height="200"><defs><style type="text/css">
    +
    +    @namespace "http://www.w3.org/2000/svg";
    +    .line                 {fill: none; stroke: #332900;}
    +    filled                {fill: #332900; stroke: none;}
    +    text                  {font-family: Verdana, Sans-serif;
    +                            font-size: 12px;
    +                            fill: #4D3D00;
    +                          }
    +    text.terminal         {font-family: Verdana, Sans-serif;
    +                            font-size: 12px;
    +                            fill: #4D3D00;
    +                            font-weight: bold;
    +                          }
    +    rect, circle, polygon {fill: #332900; stroke: #332900;}
    +    rect.terminal         {fill: #FFCC00; stroke: #332900;}
    +    rect.nonterminal      {fill: #FFEB99; stroke: #332900;}
    +    rect.text             {fill: none; stroke: none;}    
    +    polygon.regexp        {fill: #FFF5CC; stroke: #332900;}
    +  </style></defs><polygon points="9 33 1 29 1 37" class="filled"></polygon><polygon points="17 33 9 29 9 37" class="filled"></polygon><line x1="17" y1="33" x2="19" y2="33" class="line"></line><rect x="31" y="19" width="60" height="32" rx="10"></rect><rect x="29" y="17" width="60" height="32" class="terminal" rx="10"></rect><text class="terminal" x="39" y="37">delete</text><line x1="19" y1="33" x2="29" y2="33" class="line"></line><line x1="89" y1="33" x2="99" y2="33" class="line"></line><a xlink:href="#TABLE" xlink:title="TABLE"><rect x="111" y="19" width="58" height="32"></rect><rect x="109" y="17" width="58" height="32" class="nonterminal"></rect><text class="nonterminal" x="119" y="37">TABLE</text></a><line x1="99" y1="33" x2="109" y2="33" class="line"></line><line x1="167" y1="33" x2="177" y2="33" class="line"></line><rect x="229" y="19" width="62" height="32" rx="10"></rect><rect x="227" y="17" width="62" height="32" class="terminal" rx="10"></rect><text class="terminal" x="237" y="37">where</text><line x1="217" y1="33" x2="227" y2="33" class="line"></line><line x1="289" y1="33" x2="299" y2="33" class="line"></line><a xlink:href="#CONDITION" xlink:title="CONDITION"><rect x="351" y="19" width="92" height="32"></rect><rect x="349" y="17" width="92" height="32" class="nonterminal"></rect><text class="nonterminal" x="359" y="37">CONDITION</text></a><line x1="339" y1="33" x2="349" y2="33" class="line"></line><line x1="441" y1="33" x2="451" y2="33" class="line"></line><path d="M319 33 L339 33 M338 33 Q329 33 329 23 L329 11 Q329 1 339 1" class="line"></path><path d="M451 33 L471 33 M451 33 Q461 33 461 23 L461 11 Q461 1 451 1" class="line"></path><line x1="339" y1="1" x2="349" y2="1" class="line"></line><line x1="349" y1="1" x2="451" y2="1" class="line"></line><line x1="299" y1="33" x2="319" y2="33" class="line"></line><line x1="471" y1="33" x2="491" y2="33" class="line"></line><path d="M299 33 Q309 33 309 43" class="line"></path><path d="M481 43 Q481 33 491 33" class="line"></path><line x1="309" y1="43" x2="309" y2="67" class="line"></line><line x1="481" y1="67" x2="481" y2="43" class="line"></line><path d="M309 67 Q309 77 319 77" class="line"></path><path d="M471 77 Q481 77 481 67" class="line"></path><a xlink:href="#SQL" xlink:title="SQL"><rect x="331" y="63" width="44" height="32"></rect><rect x="329" y="61" width="44" height="32" class="nonterminal"></rect><text class="nonterminal" x="339" y="81">SQL</text></a><line x1="319" y1="77" x2="329" y2="77" class="line"></line><line x1="373" y1="77" x2="383" y2="77" class="line"></line><line x1="383" y1="77" x2="471" y2="77" class="line"></line><line x1="197" y1="33" x2="217" y2="33" class="line"></line><line x1="491" y1="33" x2="511" y2="33" class="line"></line><path d="M197 33 Q207 33 207 43" class="line"></path><path d="M501 43 Q501 33 511 33" class="line"></path><line x1="207" y1="43" x2="207" y2="111" class="line"></line><line x1="501" y1="111" x2="501" y2="43" class="line"></line><path d="M207 111 Q207 121 217 121" class="line"></path><path d="M491 121 Q501 121 501 111" class="line"></path><rect x="249" y="107" width="100" height="32" rx="10"></rect><rect x="247" y="105" width="100" height="32" class="terminal" rx="10"></rect><text class="terminal" x="257" y="125">whereExists</text><line x1="237" y1="121" x2="247" y2="121" class="line"></line><line x1="347" y1="121" x2="357" y2="121" class="line"></line><line x1="357" y1="121" x2="381" y2="121" class="line"></line><line x1="217" y1="121" x2="237" y2="121" class="line"></line><line x1="381" y1="121" x2="401" y2="121" class="line"></line><path d="M217 121 Q227 121 227 131" class="line"></path><path d="M391 131 Q391 121 401 121" class="line"></path><line x1="227" y1="131" x2="227" y2="155" class="line"></line><line x1="391" y1="155" x2="391" y2="131" class="line"></line><path d="M227 155 Q227 165 237 165" class="line"></path><path d="M381 165 Q391 165 391 155" class="line"></path><rect x="249" y="151" width="124" height="32" rx="10"></rect><rect x="247" y="149" width="124" height="32" class="terminal" rx="10"></rect><text class="terminal" x="257" y="169">whereNotExists</text><line x1="237" y1="165" x2="247" y2="165" class="line"></line><line x1="371" y1="165" x2="381" y2="165" class="line"></line><a xlink:href="#SELECT" xlink:title="SELECT"><rect x="413" y="107" width="66" height="32"></rect><rect x="411" y="105" width="66" height="32" class="nonterminal"></rect><text class="nonterminal" x="421" y="125">SELECT</text></a><line x1="401" y1="121" x2="411" y2="121" class="line"></line><line x1="477" y1="121" x2="487" y2="121" class="line"></line><line x1="487" y1="121" x2="491" y2="121" class="line"></line><a xlink:href="#MORE_CONDITIONS" xlink:title="MORE_CONDITIONS"><rect x="543" y="19" width="144" height="32"></rect><rect x="541" y="17" width="144" height="32" class="nonterminal"></rect><text class="nonterminal" x="551" y="37">MORE_CONDITIONS</text></a><line x1="531" y1="33" x2="541" y2="33" class="line"></line><line x1="685" y1="33" x2="695" y2="33" class="line"></line><line x1="511" y1="33" x2="531" y2="33" class="line"></line><line x1="695" y1="33" x2="715" y2="33" class="line"></line><path d="M511 33 Q521 33 521 43" class="line"></path><path d="M705 43 Q705 33 715 33" class="line"></path><line x1="521" y1="43" x2="521" y2="57" class="line"></line><line x1="705" y1="57" x2="705" y2="43" class="line"></line><path d="M521 57 Q521 67 531 67" class="line"></path><path d="M695 67 Q705 67 705 57" class="line"></path><line x1="531" y1="67" x2="541" y2="67" class="line"></line><line x1="541" y1="67" x2="695" y2="67" class="line"></line><line x1="177" y1="33" x2="197" y2="33" class="line"></line><line x1="715" y1="33" x2="735" y2="33" class="line"></line><path d="M177 33 Q187 33 187 43" class="line"></path><path d="M725 43 Q725 33 735 33" class="line"></path><line x1="187" y1="43" x2="187" y2="189" class="line"></line><line x1="725" y1="189" x2="725" y2="43" class="line"></line><path d="M187 189 Q187 199 197 199" class="line"></path><path d="M715 199 Q725 199 725 189" class="line"></path><line x1="197" y1="199" x2="207" y2="199" class="line"></line><line x1="207" y1="199" x2="715" y2="199" class="line"></line><line x1="738" y1="33" x2="735" y2="33" class="line"></line><polygon points="745 33 753 29 753 37" class="filled"></polygon><polygon points="745 33 737 29 737 37" class="filled"></polygon></svg><xhtml:p xmlns:xhtml="http://www.w3.org/1999/xhtml">referenced by:<xhtml:ul><xhtml:li><xhtml:a href="#QUERY" title="QUERY">QUERY</xhtml:a></xhtml:li></xhtml:ul></xhtml:p><xhtml:br xmlns:xhtml="http://www.w3.org/1999/xhtml"></xhtml:br><xhtml:p xmlns:xhtml="http://www.w3.org/1999/xhtml" style="font-size: 14px; font-weight:bold"><xhtml:a name="MERGE">MERGE:</xhtml:a></xhtml:p><svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="1038" height="390"><defs><style type="text/css">
    +    @namespace "http://www.w3.org/2000/svg";
    +    .line                 {fill: none; stroke: #332900;}
    +    filled                {fill: #332900; stroke: none;}
    +    text                  {font-family: Verdana, Sans-serif;
    +                            font-size: 12px;
    +                            fill: #4D3D00;
    +                          }
    +    text.terminal         {font-family: Verdana, Sans-serif;
    +                            font-size: 12px;
    +                            fill: #4D3D00;
    +                            font-weight: bold;
    +                          }
    +    rect, circle, polygon {fill: #332900; stroke: #332900;}
    +    rect.terminal         {fill: #FFCC00; stroke: #332900;}
    +    rect.nonterminal      {fill: #FFEB99; stroke: #332900;}
    +    rect.text             {fill: none; stroke: none;}    
    +    polygon.regexp        {fill: #FFF5CC; stroke: #332900;}
    +  </style></defs><polygon points="9 33 1 29 1 37" class="filled"></polygon><polygon points="17 33 9 29 9 37" class="filled"></polygon><line x1="17" y1="33" x2="19" y2="33" class="line"></line><rect x="31" y="19" width="88" height="32" rx="10"></rect><rect x="29" y="17" width="88" height="32" class="terminal" rx="10"></rect><text class="terminal" x="39" y="37">mergeInto</text><line x1="19" y1="33" x2="29" y2="33" class="line"></line><line x1="117" y1="33" x2="127" y2="33" class="line"></line><a xlink:href="#TABLE" xlink:title="TABLE"><rect x="139" y="19" width="58" height="32"></rect><rect x="137" y="17" width="58" height="32" class="nonterminal"></rect><text class="nonterminal" x="147" y="37">TABLE</text></a><line x1="127" y1="33" x2="137" y2="33" class="line"></line><line x1="195" y1="33" x2="205" y2="33" class="line"></line><rect x="237" y="19" width="54" height="32" rx="10"></rect><rect x="235" y="17" width="54" height="32" class="terminal" rx="10"></rect><text class="terminal" x="245" y="37">using</text><line x1="225" y1="33" x2="235" y2="33" class="line"></line><line x1="289" y1="33" x2="299" y2="33" class="line"></line><a xlink:href="#TABLE" xlink:title="TABLE"><rect x="311" y="19" width="58" height="32"></rect><rect x="309" y="17" width="58" height="32" class="nonterminal"></rect><text class="nonterminal" x="319" y="37">TABLE</text></a><line x1="299" y1="33" x2="309" y2="33" class="line"></line><line x1="367" y1="33" x2="377" y2="33" class="line"></line><line x1="205" y1="33" x2="225" y2="33" class="line"></line><line x1="377" y1="33" x2="397" y2="33" class="line"></line><path d="M205 33 Q215 33 215 43" class="line"></path><path d="M387 43 Q387 33 397 33" class="line"></path><line x1="215" y1="43" x2="215" y2="67" class="line"></line><line x1="387" y1="67" x2="387" y2="43" class="line"></line><path d="M215 67 Q215 77 225 77" class="line"></path><path d="M377 77 Q387 77 387 67" class="line"></path><rect x="237" y="63" width="84" height="32" rx="10"></rect><rect x="235" y="61" width="84" height="32" class="terminal" rx="10"></rect><text class="terminal" x="245" y="81">usingDual</text><line x1="225" y1="77" x2="235" y2="77" class="line"></line><line x1="319" y1="77" x2="329" y2="77" class="line"></line><line x1="329" y1="77" x2="377" y2="77" class="line"></line><rect x="409" y="19" width="36" height="32" rx="10"></rect><rect x="407" y="17" width="36" height="32" class="terminal" rx="10"></rect><text class="terminal" x="417" y="37">on</text><line x1="397" y1="33" x2="407" y2="33" class="line"></line><line x1="443" y1="33" x2="453" y2="33" class="line"></line><a xlink:href="#CONDITION" xlink:title="CONDITION"><rect x="505" y="19" width="92" height="32"></rect><rect x="503" y="17" width="92" height="32" class="nonterminal"></rect><text class="nonterminal" x="513" y="37">CONDITION</text></a><line x1="493" y1="33" x2="503" y2="33" class="line"></line><line x1="595" y1="33" x2="605" y2="33" class="line"></line><path d="M473 33 L493 33 M492 33 Q483 33 483 23 L483 11 Q483 1 493 1" class="line"></path><path d="M605 33 L625 33 M605 33 Q615 33 615 23 L615 11 Q615 1 605 1" class="line"></path><line x1="493" y1="1" x2="503" y2="1" class="line"></line><line x1="503" y1="1" x2="605" y2="1" class="line"></line><line x1="453" y1="33" x2="473" y2="33" class="line"></line><line x1="625" y1="33" x2="645" y2="33" class="line"></line><path d="M453 33 Q463 33 463 43" class="line"></path><path d="M635 43 Q635 33 645 33" class="line"></path><line x1="463" y1="43" x2="463" y2="67" class="line"></line><line x1="635" y1="67" x2="635" y2="43" class="line"></line><path d="M463 67 Q463 77 473 77" class="line"></path><path d="M625 77 Q635 77 635 67" class="line"></path><a xlink:href="#SQL" xlink:title="SQL"><rect x="485" y="63" width="44" height="32"></rect><rect x="483" y="61" width="44" height="32" class="nonterminal"></rect><text class="nonterminal" x="493" y="81">SQL</text></a><line x1="473" y1="77" x2="483" y2="77" class="line"></line><line x1="527" y1="77" x2="537" y2="77" class="line"></line><line x1="537" y1="77" x2="625" y2="77" class="line"></line><a xlink:href="#MORE_CONDITIONS" xlink:title="MORE_CONDITIONS"><rect x="677" y="19" width="144" height="32"></rect><rect x="675" y="17" width="144" height="32" class="nonterminal"></rect><text class="nonterminal" x="685" y="37">MORE_CONDITIONS</text></a><line x1="665" y1="33" x2="675" y2="33" class="line"></line><line x1="819" y1="33" x2="829" y2="33" class="line"></line><line x1="645" y1="33" x2="665" y2="33" class="line"></line><line x1="829" y1="33" x2="849" y2="33" class="line"></line><path d="M645 33 Q655 33 655 43" class="line"></path><path d="M839 43 Q839 33 849 33" class="line"></path><line x1="655" y1="43" x2="655" y2="57" class="line"></line><line x1="839" y1="57" x2="839" y2="43" class="line"></line><path d="M655 57 Q655 67 665 67" class="line"></path><path d="M829 67 Q839 67 839 57" class="line"></path><line x1="665" y1="67" x2="675" y2="67" class="line"></line><line x1="675" y1="67" x2="829" y2="67" class="line"></line><path class="line" d="M851 33 L853 33 M855 33 L857 33 M859 33 L861 33 M1 159 L3 159 M5 159 L7 159 M9 159 L11 159"></path><rect x="45" y="145" width="190" height="32" rx="10"></rect><rect x="43" y="143" width="190" height="32" class="terminal" rx="10"></rect><text class="terminal" x="53" y="163">whenMatchedThenUpdate</text><line x1="33" y1="159" x2="43" y2="159" class="line"></line><line x1="233" y1="159" x2="243" y2="159" class="line"></line><rect x="275" y="145" width="40" height="32" rx="10"></rect><rect x="273" y="143" width="40" height="32" class="terminal" rx="10"></rect><text class="terminal" x="283" y="163">set</text><line x1="263" y1="159" x2="273" y2="159" class="line"></line><line x1="313" y1="159" x2="323" y2="159" class="line"></line><a xlink:href="#FIELD" xlink:title="FIELD"><rect x="335" y="145" width="56" height="32"></rect><rect x="333" y="143" width="56" height="32" class="nonterminal"></rect><text class="nonterminal" x="343" y="163">FIELD</text></a><line x1="323" y1="159" x2="333" y2="159" class="line"></line><line x1="389" y1="159" x2="399" y2="159" class="line"></line><a xlink:href="#FIELD" xlink:title="FIELD"><rect x="411" y="145" width="56" height="32"></rect><rect x="409" y="143" width="56" height="32" class="nonterminal"></rect><text class="nonterminal" x="419" y="163">FIELD</text></a><line x1="399" y1="159" x2="409" y2="159" class="line"></line><line x1="465" y1="159" x2="475" y2="159" class="line"></line><path d="M243 159 L263 159 M262 159 Q253 159 253 149 L253 137 Q253 127 263 127" class="line"></path><path d="M475 159 L495 159 M475 159 Q485 159 485 149 L485 137 Q485 127 475 127" class="line"></path><line x1="263" y1="127" x2="273" y2="127" class="line"></line><line x1="273" y1="127" x2="475" y2="127" class="line"></line><rect x="527" y="145" width="62" height="32" rx="10"></rect><rect x="525" y="143" width="62" height="32" class="terminal" rx="10"></rect><text class="terminal" x="535" y="163">where</text><line x1="515" y1="159" x2="525" y2="159" class="line"></line><line x1="587" y1="159" x2="597" y2="159" class="line"></line><a xlink:href="#CONDITION" xlink:title="CONDITION"><rect x="609" y="145" width="92" height="32"></rect><rect x="607" y="143" width="92" height="32" class="nonterminal"></rect><text class="nonterminal" x="617" y="163">CONDITION</text></a><line x1="597" y1="159" x2="607" y2="159" class="line"></line><line x1="699" y1="159" x2="709" y2="159" class="line"></line><rect x="741" y="145" width="104" height="32" rx="10"></rect><rect x="739" y="143" width="104" height="32" class="terminal" rx="10"></rect><text class="terminal" x="749" y="163">deleteWhere</text><line x1="729" y1="159" x2="739" y2="159" class="line"></line><line x1="843" y1="159" x2="853" y2="159" class="line"></line><a xlink:href="#CONDITION" xlink:title="CONDITION"><rect x="865" y="145" width="92" height="32"></rect><rect x="863" y="143" width="92" height="32" class="nonterminal"></rect><text class="nonterminal" x="873" y="163">CONDITION</text></a><line x1="853" y1="159" x2="863" y2="159" class="line"></line><line x1="955" y1="159" x2="965" y2="159" class="line"></line><line x1="709" y1="159" x2="729" y2="159" class="line"></line><line x1="965" y1="159" x2="985" y2="159" class="line"></line><path d="M709 159 Q719 159 719 169" class="line"></path><path d="M975 169 Q975 159 985 159" class="line"></path><line x1="719" y1="169" x2="719" y2="183" class="line"></line><line x1="975" y1="183" x2="975" y2="169" class="line"></line><path d="M719 183 Q719 193 729 193" class="line"></path><path d="M965 193 Q975 193 975 183" class="line"></path><line x1="729" y1="193" x2="739" y2="193" class="line"></line><line x1="739" y1="193" x2="965" y2="193" class="line"></line><line x1="495" y1="159" x2="515" y2="159" class="line"></line><line x1="985" y1="159" x2="1005" y2="159" class="line"></line><path d="M495 159 Q505 159 505 169" class="line"></path><path d="M995 169 Q995 159 1005 159" class="line"></path><line x1="505" y1="169" x2="505" y2="199" class="line"></line><line x1="995" y1="199" x2="995" y2="169" class="line"></line><path d="M505 199 Q505 209 515 209" class="line"></path><path d="M985 209 Q995 209 995 199" class="line"></path><line x1="515" y1="209" x2="525" y2="209" class="line"></line><line x1="525" y1="209" x2="985" y2="209" class="line"></line><line x1="13" y1="159" x2="33" y2="159" class="line"></line><line x1="1005" y1="159" x2="1025" y2="159" class="line"></line><path d="M13 159 Q23 159 23 169" class="line"></path><path d="M1015 169 Q1015 159 1025 159" class="line"></path><line x1="23" y1="169" x2="23" y2="215" class="line"></line><line x1="1015" y1="215" x2="1015" y2="169" class="line"></line><path d="M23 215 Q23 225 33 225" class="line"></path><path d="M1005 225 Q1015 225 1015 215" class="line"></path><line x1="33" y1="225" x2="43" y2="225" class="line"></line><line x1="43" y1="225" x2="1005" y2="225" class="line"></line><path class="line" d="M1027 159 L1029 159 M1031 159 L1033 159 M1035 159 L1037 159 M153 289 L155 289 M157 289 L159 289 M161 289 L163 289"></path><rect x="197" y="275" width="206" height="32" rx="10"></rect><rect x="195" y="273" width="206" height="32" class="terminal" rx="10"></rect><text class="terminal" x="205" y="293">whenNotMatchedThenInsert</text><line x1="185" y1="289" x2="195" y2="289" class="line"></line><line x1="401" y1="289" x2="411" y2="289" class="line"></line><rect x="463" y="275" width="40" height="32" rx="10"></rect><rect x="461" y="273" width="40" height="32" class="terminal" rx="10"></rect><text class="terminal" x="471" y="293">set</text><line x1="451" y1="289" x2="461" y2="289" class="line"></line><line x1="501" y1="289" x2="511" y2="289" class="line"></line><a xlink:href="#FIELD" xlink:title="FIELD"><rect x="523" y="275" width="56" height="32"></rect><rect x="521" y="273" width="56" height="32" class="nonterminal"></rect><text class="nonterminal" x="531" y="293">FIELD</text></a><line x1="511" y1="289" x2="521" y2="289" class="line"></line><line x1="577" y1="289" x2="587" y2="289" class="line"></line><a xlink:href="#FIELD" xlink:title="FIELD"><rect x="599" y="275" width="56" height="32"></rect><rect x="597" y="273" width="56" height="32" class="nonterminal"></rect><text class="nonterminal" x="607" y="293">FIELD</text></a><line x1="587" y1="289" x2="597" y2="289" class="line"></line><line x1="653" y1="289" x2="663" y2="289" class="line"></line><path d="M431 289 L451 289 M450 289 Q441 289 441 279 L441 267 Q441 257 451 257" class="line"></path><path d="M663 289 L683 289 M663 289 Q673 289 673 279 L673 267 Q673 257 663 257" class="line"></path><line x1="451" y1="257" x2="461" y2="257" class="line"></line><line x1="461" y1="257" x2="663" y2="257" class="line"></line><line x1="683" y1="289" x2="745" y2="289" class="line"></line><line x1="411" y1="289" x2="431" y2="289" class="line"></line><line x1="745" y1="289" x2="765" y2="289" class="line"></line><path d="M411 289 Q421 289 421 299" class="line"></path><path d="M755 299 Q755 289 765 289" class="line"></path><line x1="421" y1="299" x2="421" y2="345" class="line"></line><line x1="755" y1="345" x2="755" y2="299" class="line"></line><path d="M421 345 Q421 355 431 355" class="line"></path><path d="M745 355 Q755 355 755 345" class="line"></path><a xlink:href="#FIELD" xlink:title="FIELD"><rect x="463" y="341" width="56" height="32"></rect><rect x="461" y="339" width="56" height="32" class="nonterminal"></rect><text class="nonterminal" x="471" y="359">FIELD</text></a><line x1="451" y1="355" x2="461" y2="355" class="line"></line><line x1="517" y1="355" x2="527" y2="355" class="line"></line><path d="M431 355 L451 355 M450 355 Q441 355 441 345 L441 333 Q441 323 451 323" class="line"></path><path d="M527 355 L547 355 M527 355 Q537 355 537 345 L537 333 Q537 323 527 323" class="line"></path><line x1="451" y1="323" x2="461" y2="323" class="line"></line><line x1="461" y1="323" x2="527" y2="323" class="line"></line><rect x="559" y="341" width="62" height="32" rx="10"></rect><rect x="557" y="339" width="62" height="32" class="terminal" rx="10"></rect><text class="terminal" x="567" y="359">values</text><line x1="547" y1="355" x2="557" y2="355" class="line"></line><line x1="619" y1="355" x2="629" y2="355" class="line"></line><a xlink:href="#FIELD" xlink:title="FIELD"><rect x="661" y="341" width="56" height="32"></rect><rect x="659" y="339" width="56" height="32" class="nonterminal"></rect><text class="nonterminal" x="669" y="359">FIELD</text></a><line x1="649" y1="355" x2="659" y2="355" class="line"></line><line x1="715" y1="355" x2="725" y2="355" class="line"></line><path d="M629 355 L649 355 M648 355 Q639 355 639 345 L639 333 Q639 323 649 323" class="line"></path><path d="M725 355 L745 355 M725 355 Q735 355 735 345 L735 333 Q735 323 725 323" class="line"></path><line x1="649" y1="323" x2="659" y2="323" class="line"></line><line x1="659" y1="323" x2="725" y2="323" class="line"></line><rect x="797" y="275" width="62" height="32" rx="10"></rect><rect x="795" y="273" width="62" height="32" class="terminal" rx="10"></rect><text class="terminal" x="805" y="293">where</text><line x1="785" y1="289" x2="795" y2="289" class="line"></line><line x1="857" y1="289" x2="867" y2="289" class="line"></line><a xlink:href="#CONDITION" xlink:title="CONDITION"><rect x="879" y="275" width="92" height="32"></rect><rect x="877" y="273" width="92" height="32" class="nonterminal"></rect><text class="nonterminal" x="887" y="293">CONDITION</text></a><line x1="867" y1="289" x2="877" y2="289" class="line"></line><line x1="969" y1="289" x2="979" y2="289" class="line"></line><line x1="765" y1="289" x2="785" y2="289" class="line"></line><line x1="979" y1="289" x2="999" y2="289" class="line"></line><path d="M765 289 Q775 289 775 299" class="line"></path><path d="M989 299 Q989 289 999 289" class="line"></path><line x1="775" y1="299" x2="775" y2="313" class="line"></line><line x1="989" y1="313" x2="989" y2="299" class="line"></line><path d="M775 313 Q775 323 785 323" class="line"></path><path d="M979 323 Q989 323 989 313" class="line"></path><line x1="785" y1="323" x2="795" y2="323" class="line"></line><line x1="795" y1="323" x2="979" y2="323" class="line"></line><line x1="165" y1="289" x2="185" y2="289" class="line"></line><line x1="999" y1="289" x2="1019" y2="289" class="line"></line><path d="M165 289 Q175 289 175 299" class="line"></path><path d="M1009 299 Q1009 289 1019 289" class="line"></path><line x1="175" y1="299" x2="175" y2="379" class="line"></line><line x1="1009" y1="379" x2="1009" y2="299" class="line"></line><path d="M175 379 Q175 389 185 389" class="line"></path><path d="M999 389 Q1009 389 1009 379" class="line"></path><line x1="185" y1="389" x2="195" y2="389" class="line"></line><line x1="195" y1="389" x2="999" y2="389" class="line"></line><line x1="1022" y1="289" x2="1019" y2="289" class="line"></line><polygon points="1029 289 1037 285 1037 293" class="filled"></polygon><polygon points="1029 289 1021 285 1021 293" class="filled"></polygon></svg><xhtml:p xmlns:xhtml="http://www.w3.org/1999/xhtml">referenced by:<xhtml:ul><xhtml:li><xhtml:a href="#QUERY" title="QUERY">QUERY</xhtml:a></xhtml:li></xhtml:ul></xhtml:p><xhtml:br xmlns:xhtml="http://www.w3.org/1999/xhtml"></xhtml:br><xhtml:p xmlns:xhtml="http://www.w3.org/1999/xhtml" style="font-size: 14px; font-weight:bold"><xhtml:a name="TRUNCATE">TRUNCATE:</xhtml:a></xhtml:p><svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="210" height="36"><defs><style type="text/css">
    +
    +    @namespace "http://www.w3.org/2000/svg";
    +    .line                 {fill: none; stroke: #332900;}
    +    filled                {fill: #332900; stroke: none;}
    +    text                  {font-family: Verdana, Sans-serif;
    +                            font-size: 12px;
    +                            fill: #4D3D00;
    +                          }
    +    text.terminal         {font-family: Verdana, Sans-serif;
    +                            font-size: 12px;
    +                            fill: #4D3D00;
    +                            font-weight: bold;
    +                          }
    +    rect, circle, polygon {fill: #332900; stroke: #332900;}
    +    rect.terminal         {fill: #FFCC00; stroke: #332900;}
    +    rect.nonterminal      {fill: #FFEB99; stroke: #332900;}
    +    rect.text             {fill: none; stroke: none;}    
    +    polygon.regexp        {fill: #FFF5CC; stroke: #332900;}
    +  </style></defs><polygon points="9 17 1 13 1 21" class="filled"></polygon><polygon points="17 17 9 13 9 21" class="filled"></polygon><line x1="17" y1="17" x2="19" y2="17" class="line"></line><rect x="31" y="3" width="74" height="32" rx="10"></rect><rect x="29" y="1" width="74" height="32" class="terminal" rx="10"></rect><text class="terminal" x="39" y="21">truncate</text><line x1="19" y1="17" x2="29" y2="17" class="line"></line><line x1="103" y1="17" x2="113" y2="17" class="line"></line><a xlink:href="#TABLE" xlink:title="TABLE"><rect x="125" y="3" width="58" height="32"></rect><rect x="123" y="1" width="58" height="32" class="nonterminal"></rect><text class="nonterminal" x="133" y="21">TABLE</text></a><line x1="113" y1="17" x2="123" y2="17" class="line"></line><line x1="181" y1="17" x2="191" y2="17" class="line"></line><line x1="194" y1="17" x2="191" y2="17" class="line"></line><polygon points="201 17 209 13 209 21" class="filled"></polygon><polygon points="201 17 193 13 193 21" class="filled"></polygon></svg><xhtml:p xmlns:xhtml="http://www.w3.org/1999/xhtml">referenced by:<xhtml:ul><xhtml:li><xhtml:a href="#QUERY" title="QUERY">QUERY</xhtml:a></xhtml:li></xhtml:ul></xhtml:p><xhtml:br xmlns:xhtml="http://www.w3.org/1999/xhtml"></xhtml:br><xhtml:p xmlns:xhtml="http://www.w3.org/1999/xhtml" style="font-size: 14px; font-weight:bold"><xhtml:a name="SQL">SQL:</xhtml:a></xhtml:p><svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="324" height="68"><defs><style type="text/css">
    +    @namespace "http://www.w3.org/2000/svg";
    +    .line                 {fill: none; stroke: #332900;}
    +    filled                {fill: #332900; stroke: none;}
    +    text                  {font-family: Verdana, Sans-serif;
    +                            font-size: 12px;
    +                            fill: #4D3D00;
    +                          }
    +    text.terminal         {font-family: Verdana, Sans-serif;
    +                            font-size: 12px;
    +                            fill: #4D3D00;
    +                            font-weight: bold;
    +                          }
    +    rect, circle, polygon {fill: #332900; stroke: #332900;}
    +    rect.terminal         {fill: #FFCC00; stroke: #332900;}
    +    rect.nonterminal      {fill: #FFEB99; stroke: #332900;}
    +    rect.text             {fill: none; stroke: none;}    
    +    polygon.regexp        {fill: #FFF5CC; stroke: #332900;}
    +  </style></defs><polygon points="9 33 1 29 1 37" class="filled"></polygon><polygon points="17 33 9 29 9 37" class="filled"></polygon><line x1="17" y1="33" x2="19" y2="33" class="line"></line><rect x="31" y="19" width="92" height="32" rx="10"></rect><rect x="29" y="17" width="92" height="32" class="terminal" rx="10"></rect><text class="terminal" x="39" y="37">SQL String</text><line x1="19" y1="33" x2="29" y2="33" class="line"></line><line x1="121" y1="33" x2="131" y2="33" class="line"></line><a xlink:href="#BINDING" xlink:title="BINDING"><rect x="183" y="19" width="74" height="32"></rect><rect x="181" y="17" width="74" height="32" class="nonterminal"></rect><text class="nonterminal" x="191" y="37">BINDING</text></a><line x1="171" y1="33" x2="181" y2="33" class="line"></line><line x1="255" y1="33" x2="265" y2="33" class="line"></line><path d="M151 33 L171 33 M170 33 Q161 33 161 23 L161 11 Q161 1 171 1" class="line"></path><path d="M265 33 L285 33 M265 33 Q275 33 275 23 L275 11 Q275 1 265 1" class="line"></path><line x1="171" y1="1" x2="181" y2="1" class="line"></line><line x1="181" y1="1" x2="265" y2="1" class="line"></line><line x1="131" y1="33" x2="151" y2="33" class="line"></line><line x1="285" y1="33" x2="305" y2="33" class="line"></line><path d="M131 33 Q141 33 141 43" class="line"></path><path d="M295 43 Q295 33 305 33" class="line"></path><line x1="141" y1="43" x2="141" y2="57" class="line"></line><line x1="295" y1="57" x2="295" y2="43" class="line"></line><path d="M141 57 Q141 67 151 67" class="line"></path><path d="M285 67 Q295 67 295 57" class="line"></path><line x1="151" y1="67" x2="161" y2="67" class="line"></line><line x1="161" y1="67" x2="285" y2="67" class="line"></line><line x1="308" y1="33" x2="305" y2="33" class="line"></line><polygon points="315 33 323 29 323 37" class="filled"></polygon><polygon points="315 33 307 29 307 37" class="filled"></polygon></svg><xhtml:p xmlns:xhtml="http://www.w3.org/1999/xhtml">referenced by:<xhtml:ul><xhtml:li><xhtml:a href="#CONDITION" title="CONDITION">CONDITION</xhtml:a></xhtml:li><xhtml:li><xhtml:a href="#DELETE" title="DELETE">DELETE</xhtml:a></xhtml:li><xhtml:li><xhtml:a href="#FIELD" title="FIELD">FIELD</xhtml:a></xhtml:li><xhtml:li><xhtml:a href="#MERGE" title="MERGE">MERGE</xhtml:a></xhtml:li><xhtml:li><xhtml:a href="#MORE_CONDITIONS" title="MORE_CONDITIONS">MORE_CONDITIONS</xhtml:a></xhtml:li><xhtml:li><xhtml:a href="#QUERY" title="QUERY">QUERY</xhtml:a></xhtml:li><xhtml:li><xhtml:a href="#RESULT" title="RESULT">RESULT</xhtml:a></xhtml:li><xhtml:li><xhtml:a href="#RESULT_QUERY" title="RESULT_QUERY">RESULT_QUERY</xhtml:a></xhtml:li><xhtml:li><xhtml:a href="#SELECT" title="SELECT">SELECT</xhtml:a></xhtml:li><xhtml:li><xhtml:a href="#TABLE" title="TABLE">TABLE</xhtml:a></xhtml:li><xhtml:li><xhtml:a href="#UPDATE" title="UPDATE">UPDATE</xhtml:a></xhtml:li></xhtml:ul></xhtml:p><xhtml:br xmlns:xhtml="http://www.w3.org/1999/xhtml"></xhtml:br><xhtml:p xmlns:xhtml="http://www.w3.org/1999/xhtml" style="font-size: 14px; font-weight:bold"><xhtml:a name="BINDING">BINDING:</xhtml:a></xhtml:p><svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="186" height="36"><defs><style type="text/css">
    +
    +    @namespace "http://www.w3.org/2000/svg";
    +    .line                 {fill: none; stroke: #332900;}
    +    filled                {fill: #332900; stroke: none;}
    +    text                  {font-family: Verdana, Sans-serif;
    +                            font-size: 12px;
    +                            fill: #4D3D00;
    +                          }
    +    text.terminal         {font-family: Verdana, Sans-serif;
    +                            font-size: 12px;
    +                            fill: #4D3D00;
    +                            font-weight: bold;
    +                          }
    +    rect, circle, polygon {fill: #332900; stroke: #332900;}
    +    rect.terminal         {fill: #FFCC00; stroke: #332900;}
    +    rect.nonterminal      {fill: #FFEB99; stroke: #332900;}
    +    rect.text             {fill: none; stroke: none;}    
    +    polygon.regexp        {fill: #FFF5CC; stroke: #332900;}
    +  </style></defs><polygon points="9 17 1 13 1 21" class="filled"></polygon><polygon points="17 17 9 13 9 21" class="filled"></polygon><line x1="17" y1="17" x2="19" y2="17" class="line"></line><rect x="31" y="3" width="128" height="32" rx="10"></rect><rect x="29" y="1" width="128" height="32" class="terminal" rx="10"></rect><text class="terminal" x="39" y="21">Any Java Object</text><line x1="19" y1="17" x2="29" y2="17" class="line"></line><line x1="157" y1="17" x2="167" y2="17" class="line"></line><line x1="170" y1="17" x2="167" y2="17" class="line"></line><polygon points="177 17 185 13 185 21" class="filled"></polygon><polygon points="177 17 169 13 169 21" class="filled"></polygon></svg><xhtml:p xmlns:xhtml="http://www.w3.org/1999/xhtml">referenced by:<xhtml:ul><xhtml:li><xhtml:a href="#FIELD" title="FIELD">FIELD</xhtml:a></xhtml:li><xhtml:li><xhtml:a href="#SORT_FIELD" title="SORT_FIELD">SORT_FIELD</xhtml:a></xhtml:li><xhtml:li><xhtml:a href="#SQL" title="SQL">SQL</xhtml:a></xhtml:li><xhtml:li><xhtml:a href="#TABLE" title="TABLE">TABLE</xhtml:a></xhtml:li></xhtml:ul></xhtml:p><xhtml:br xmlns:xhtml="http://www.w3.org/1999/xhtml"></xhtml:br><xhtml:p xmlns:xhtml="http://www.w3.org/1999/xhtml" style="font-size: 14px; font-weight:bold"><xhtml:a name="BINDING_MAP">BINDING_MAP:</xhtml:a></xhtml:p><svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="214" height="36"><defs><style type="text/css">
    +    @namespace "http://www.w3.org/2000/svg";
    +    .line                 {fill: none; stroke: #332900;}
    +    filled                {fill: #332900; stroke: none;}
    +    text                  {font-family: Verdana, Sans-serif;
    +                            font-size: 12px;
    +                            fill: #4D3D00;
    +                          }
    +    text.terminal         {font-family: Verdana, Sans-serif;
    +                            font-size: 12px;
    +                            fill: #4D3D00;
    +                            font-weight: bold;
    +                          }
    +    rect, circle, polygon {fill: #332900; stroke: #332900;}
    +    rect.terminal         {fill: #FFCC00; stroke: #332900;}
    +    rect.nonterminal      {fill: #FFEB99; stroke: #332900;}
    +    rect.text             {fill: none; stroke: none;}    
    +    polygon.regexp        {fill: #FFF5CC; stroke: #332900;}
    +  </style></defs><polygon points="9 17 1 13 1 21" class="filled"></polygon><polygon points="17 17 9 13 9 21" class="filled"></polygon><line x1="17" y1="17" x2="19" y2="17" class="line"></line><rect x="31" y="3" width="156" height="32" rx="10"></rect><rect x="29" y="1" width="156" height="32" class="terminal" rx="10"></rect><text class="terminal" x="39" y="21">A map of bind values</text><line x1="19" y1="17" x2="29" y2="17" class="line"></line><line x1="185" y1="17" x2="195" y2="17" class="line"></line><line x1="198" y1="17" x2="195" y2="17" class="line"></line><polygon points="205 17 213 13 213 21" class="filled"></polygon><polygon points="205 17 197 13 197 21" class="filled"></polygon></svg><xhtml:p xmlns:xhtml="http://www.w3.org/1999/xhtml">referenced by:<xhtml:ul><xhtml:li><xhtml:a href="#SORT_FIELD" title="SORT_FIELD">SORT_FIELD</xhtml:a></xhtml:li></xhtml:ul></xhtml:p><xhtml:br xmlns:xhtml="http://www.w3.org/1999/xhtml"></xhtml:br><xhtml:p xmlns:xhtml="http://www.w3.org/1999/xhtml" style="font-size: 14px; font-weight:bold"><xhtml:a name="FIELD">FIELD:</xhtml:a></xhtml:p><svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="886" height="4248"><defs><style type="text/css">
    +
    +    @namespace "http://www.w3.org/2000/svg";
    +    .line                 {fill: none; stroke: #332900;}
    +    filled                {fill: #332900; stroke: none;}
    +    text                  {font-family: Verdana, Sans-serif;
    +                            font-size: 12px;
    +                            fill: #4D3D00;
    +                          }
    +    text.terminal         {font-family: Verdana, Sans-serif;
    +                            font-size: 12px;
    +                            fill: #4D3D00;
    +                            font-weight: bold;
    +                          }
    +    rect, circle, polygon {fill: #332900; stroke: #332900;}
    +    rect.terminal         {fill: #FFCC00; stroke: #332900;}
    +    rect.nonterminal      {fill: #FFEB99; stroke: #332900;}
    +    rect.text             {fill: none; stroke: none;}    
    +    polygon.regexp        {fill: #FFF5CC; stroke: #332900;}
    +  </style></defs><polygon points="9 17 1 13 1 21" class="filled"></polygon><polygon points="17 17 9 13 9 21" class="filled"></polygon><line x1="17" y1="17" x2="19" y2="17" class="line"></line><rect x="51" y="3" width="164" height="32" rx="10"></rect><rect x="49" y="1" width="164" height="32" class="terminal" rx="10"></rect><text class="terminal" x="59" y="21">jOOQ generated Field</text><line x1="39" y1="17" x2="49" y2="17" class="line"></line><line x1="213" y1="17" x2="223" y2="17" class="line"></line><line x1="223" y1="17" x2="847" y2="17" class="line"></line><line x1="19" y1="17" x2="39" y2="17" class="line"></line><line x1="847" y1="17" x2="867" y2="17" class="line"></line><path d="M19 17 Q29 17 29 27" class="line"></path><path d="M857 27 Q857 17 867 17" class="line"></path><line x1="29" y1="27" x2="29" y2="51" class="line"></line><line x1="857" y1="51" x2="857" y2="27" class="line"></line><path d="M29 51 Q29 61 39 61" class="line"></path><path d="M847 61 Q857 61 857 51" class="line"></path><rect x="51" y="47" width="100" height="32" rx="10"></rect><rect x="49" y="45" width="100" height="32" class="terminal" rx="10"></rect><text class="terminal" x="59" y="65">CustomField</text><line x1="39" y1="61" x2="49" y2="61" class="line"></line><line x1="149" y1="61" x2="159" y2="61" class="line"></line><line x1="159" y1="61" x2="847" y2="61" class="line"></line><line x1="29" y1="51" x2="29" y2="71" class="line"></line><line x1="857" y1="71" x2="857" y2="51" class="line"></line><line x1="29" y1="71" x2="29" y2="95" class="line"></line><line x1="857" y1="95" x2="857" y2="71" class="line"></line><path d="M29 95 Q29 105 39 105" class="line"></path><path d="M847 105 Q857 105 857 95" class="line"></path><rect x="71" y="91" width="40" height="32" rx="10"></rect><rect x="69" y="89" width="40" height="32" class="terminal" rx="10"></rect><text class="terminal" x="79" y="109">val</text><line x1="59" y1="105" x2="69" y2="105" class="line"></line><line x1="109" y1="105" x2="119" y2="105" class="line"></line><line x1="119" y1="105" x2="135" y2="105" class="line"></line><line x1="39" y1="105" x2="59" y2="105" class="line"></line><line x1="135" y1="105" x2="155" y2="105" class="line"></line><path d="M39 105 Q49 105 49 115" class="line"></path><path d="M145 115 Q145 105 155 105" class="line"></path><line x1="49" y1="115" x2="49" y2="139" class="line"></line><line x1="145" y1="139" x2="145" y2="115" class="line"></line><path d="M49 139 Q49 149 59 149" class="line"></path><path d="M135 149 Q145 149 145 139" class="line"></path><rect x="71" y="135" width="56" height="32" rx="10"></rect><rect x="69" y="133" width="56" height="32" class="terminal" rx="10"></rect><text class="terminal" x="79" y="153">value</text><line x1="59" y1="149" x2="69" y2="149" class="line"></line><line x1="125" y1="149" x2="135" y2="149" class="line"></line><a xlink:href="#BINDING" xlink:title="BINDING"><rect x="167" y="91" width="74" height="32"></rect><rect x="165" y="89" width="74" height="32" class="nonterminal"></rect><text class="nonterminal" x="175" y="109">BINDING</text></a><line x1="155" y1="105" x2="165" y2="105" class="line"></line><line x1="239" y1="105" x2="249" y2="105" class="line"></line><line x1="249" y1="105" x2="847" y2="105" class="line"></line><line x1="29" y1="95" x2="29" y2="115" class="line"></line><line x1="857" y1="115" x2="857" y2="95" class="line"></line><line x1="29" y1="115" x2="29" y2="183" class="line"></line><line x1="857" y1="183" x2="857" y2="115" class="line"></line><path d="M29 183 Q29 193 39 193" class="line"></path><path d="M847 193 Q857 193 857 183" class="line"></path><rect x="51" y="179" width="62" height="32" rx="10"></rect><rect x="49" y="177" width="62" height="32" class="terminal" rx="10"></rect><text class="terminal" x="59" y="197">param</text><line x1="39" y1="193" x2="49" y2="193" class="line"></line><line x1="111" y1="193" x2="121" y2="193" class="line"></line><a xlink:href="#NAME" xlink:title="NAME"><rect x="133" y="179" width="54" height="32"></rect><rect x="131" y="177" width="54" height="32" class="nonterminal"></rect><text class="nonterminal" x="141" y="197">NAME</text></a><line x1="121" y1="193" x2="131" y2="193" class="line"></line><line x1="185" y1="193" x2="195" y2="193" class="line"></line><a xlink:href="#BINDING" xlink:title="BINDING"><rect x="227" y="179" width="74" height="32"></rect><rect x="225" y="177" width="74" height="32" class="nonterminal"></rect><text class="nonterminal" x="235" y="197">BINDING</text></a><line x1="215" y1="193" x2="225" y2="193" class="line"></line><line x1="299" y1="193" x2="309" y2="193" class="line"></line><line x1="195" y1="193" x2="215" y2="193" class="line"></line><line x1="309" y1="193" x2="329" y2="193" class="line"></line><path d="M195 193 Q205 193 205 203" class="line"></path><path d="M319 203 Q319 193 329 193" class="line"></path><line x1="205" y1="203" x2="205" y2="217" class="line"></line><line x1="319" y1="217" x2="319" y2="203" class="line"></line><path d="M205 217 Q205 227 215 227" class="line"></path><path d="M309 227 Q319 227 319 217" class="line"></path><line x1="215" y1="227" x2="225" y2="227" class="line"></line><line x1="225" y1="227" x2="309" y2="227" class="line"></line><line x1="329" y1="193" x2="847" y2="193" class="line"></line><line x1="29" y1="183" x2="29" y2="203" class="line"></line><line x1="857" y1="203" x2="857" y2="183" class="line"></line><line x1="29" y1="203" x2="29" y2="249" class="line"></line><line x1="857" y1="249" x2="857" y2="203" class="line"></line><path d="M29 249 Q29 259 39 259" class="line"></path><path d="M847 259 Q857 259 857 249" class="line"></path><rect x="51" y="245" width="58" height="32" rx="10"></rect><rect x="49" y="243" width="58" height="32" class="terminal" rx="10"></rect><text class="terminal" x="59" y="263">literal</text><line x1="39" y1="259" x2="49" y2="259" class="line"></line><line x1="107" y1="259" x2="117" y2="259" class="line"></line><a xlink:href="#BINDING" xlink:title="BINDING"><rect x="129" y="245" width="74" height="32"></rect><rect x="127" y="243" width="74" height="32" class="nonterminal"></rect><text class="nonterminal" x="137" y="263">BINDING</text></a><line x1="117" y1="259" x2="127" y2="259" class="line"></line><line x1="201" y1="259" x2="211" y2="259" class="line"></line><line x1="211" y1="259" x2="847" y2="259" class="line"></line><line x1="29" y1="249" x2="29" y2="269" class="line"></line><line x1="857" y1="269" x2="857" y2="249" class="line"></line><line x1="29" y1="269" x2="29" y2="293" class="line"></line><line x1="857" y1="293" x2="857" y2="269" class="line"></line><path d="M29 293 Q29 303 39 303" class="line"></path><path d="M847 303 Q857 303 857 293" class="line"></path><a xlink:href="#FIELD" xlink:title="FIELD"><rect x="51" y="289" width="56" height="32"></rect><rect x="49" y="287" width="56" height="32" class="nonterminal"></rect><text class="nonterminal" x="59" y="307">FIELD</text></a><line x1="39" y1="303" x2="49" y2="303" class="line"></line><line x1="105" y1="303" x2="115" y2="303" class="line"></line><rect x="127" y="289" width="34" height="32" rx="10"></rect><rect x="125" y="287" width="34" height="32" class="terminal" rx="10"></rect><text class="terminal" x="135" y="307">as</text><line x1="115" y1="303" x2="125" y2="303" class="line"></line><line x1="159" y1="303" x2="169" y2="303" class="line"></line><a xlink:href="#NAME" xlink:title="NAME"><rect x="181" y="289" width="54" height="32"></rect><rect x="179" y="287" width="54" height="32" class="nonterminal"></rect><text class="nonterminal" x="189" y="307">NAME</text></a><line x1="169" y1="303" x2="179" y2="303" class="line"></line><line x1="233" y1="303" x2="243" y2="303" class="line"></line><line x1="243" y1="303" x2="847" y2="303" class="line"></line><line x1="29" y1="293" x2="29" y2="313" class="line"></line><line x1="857" y1="313" x2="857" y2="293" class="line"></line><line x1="29" y1="313" x2="29" y2="337" class="line"></line><line x1="857" y1="337" x2="857" y2="313" class="line"></line><path d="M29 337 Q29 347 39 347" class="line"></path><path d="M847 347 Q857 347 857 337" class="line"></path><a xlink:href="#FIELD" xlink:title="FIELD"><rect x="51" y="333" width="56" height="32"></rect><rect x="49" y="331" width="56" height="32" class="nonterminal"></rect><text class="nonterminal" x="59" y="351">FIELD</text></a><line x1="39" y1="347" x2="49" y2="347" class="line"></line><line x1="105" y1="347" x2="115" y2="347" class="line"></line><rect x="127" y="333" width="46" height="32" rx="10"></rect><rect x="125" y="331" width="46" height="32" class="terminal" rx="10"></rect><text class="terminal" x="135" y="351">cast</text><line x1="115" y1="347" x2="125" y2="347" class="line"></line><line x1="171" y1="347" x2="181" y2="347" class="line"></line><a xlink:href="#TYPE" xlink:title="TYPE"><rect x="193" y="333" width="50" height="32"></rect><rect x="191" y="331" width="50" height="32" class="nonterminal"></rect><text class="nonterminal" x="201" y="351">TYPE</text></a><line x1="181" y1="347" x2="191" y2="347" class="line"></line><line x1="241" y1="347" x2="251" y2="347" class="line"></line><line x1="251" y1="347" x2="847" y2="347" class="line"></line><line x1="29" y1="337" x2="29" y2="357" class="line"></line><line x1="857" y1="357" x2="857" y2="337" class="line"></line><line x1="29" y1="357" x2="29" y2="381" class="line"></line><line x1="857" y1="381" x2="857" y2="357" class="line"></line><path d="M29 381 Q29 391 39 391" class="line"></path><path d="M847 391 Q857 391 857 381" class="line"></path><rect x="51" y="377" width="48" height="32" rx="10"></rect><rect x="49" y="375" width="48" height="32" class="terminal" rx="10"></rect><text class="terminal" x="59" y="395">zero</text><line x1="39" y1="391" x2="49" y2="391" class="line"></line><line x1="97" y1="391" x2="107" y2="391" class="line"></line><line x1="107" y1="391" x2="847" y2="391" class="line"></line><line x1="29" y1="381" x2="29" y2="401" class="line"></line><line x1="857" y1="401" x2="857" y2="381" class="line"></line><line x1="29" y1="401" x2="29" y2="425" class="line"></line><line x1="857" y1="425" x2="857" y2="401" class="line"></line><path d="M29 425 Q29 435 39 435" class="line"></path><path d="M847 435 Q857 435 857 425" class="line"></path><rect x="51" y="421" width="44" height="32" rx="10"></rect><rect x="49" y="419" width="44" height="32" class="terminal" rx="10"></rect><text class="terminal" x="59" y="439">one</text><line x1="39" y1="435" x2="49" y2="435" class="line"></line><line x1="93" y1="435" x2="103" y2="435" class="line"></line><line x1="103" y1="435" x2="847" y2="435" class="line"></line><line x1="29" y1="425" x2="29" y2="445" class="line"></line><line x1="857" y1="445" x2="857" y2="425" class="line"></line><line x1="29" y1="445" x2="29" y2="469" class="line"></line><line x1="857" y1="469" x2="857" y2="445" class="line"></line><path d="M29 469 Q29 479 39 479" class="line"></path><path d="M847 479 Q857 479 857 469" class="line"></path><rect x="51" y="465" width="44" height="32" rx="10"></rect><rect x="49" y="463" width="44" height="32" class="terminal" rx="10"></rect><text class="terminal" x="59" y="483">two</text><line x1="39" y1="479" x2="49" y2="479" class="line"></line><line x1="93" y1="479" x2="103" y2="479" class="line"></line><line x1="103" y1="479" x2="847" y2="479" class="line"></line><line x1="29" y1="469" x2="29" y2="489" class="line"></line><line x1="857" y1="489" x2="857" y2="469" class="line"></line><line x1="29" y1="489" x2="29" y2="513" class="line"></line><line x1="857" y1="513" x2="857" y2="489" class="line"></line><path d="M29 513 Q29 523 39 523" class="line"></path><path d="M847 523 Q857 523 857 513" class="line"></path><rect x="51" y="509" width="32" height="32" rx="10"></rect><rect x="49" y="507" width="32" height="32" class="terminal" rx="10"></rect><text class="terminal" x="59" y="527">pi</text><line x1="39" y1="523" x2="49" y2="523" class="line"></line><line x1="81" y1="523" x2="91" y2="523" class="line"></line><line x1="91" y1="523" x2="847" y2="523" class="line"></line><line x1="29" y1="513" x2="29" y2="533" class="line"></line><line x1="857" y1="533" x2="857" y2="513" class="line"></line><line x1="29" y1="533" x2="29" y2="557" class="line"></line><line x1="857" y1="557" x2="857" y2="533" class="line"></line><path d="M29 557 Q29 567 39 567" class="line"></path><path d="M847 567 Q857 567 857 557" class="line"></path><rect x="51" y="553" width="28" height="32" rx="10"></rect><rect x="49" y="551" width="28" height="32" class="terminal" rx="10"></rect><text class="terminal" x="59" y="571">e</text><line x1="39" y1="567" x2="49" y2="567" class="line"></line><line x1="77" y1="567" x2="87" y2="567" class="line"></line><line x1="87" y1="567" x2="847" y2="567" class="line"></line><line x1="29" y1="557" x2="29" y2="577" class="line"></line><line x1="857" y1="577" x2="857" y2="557" class="line"></line><line x1="29" y1="577" x2="29" y2="601" class="line"></line><line x1="857" y1="601" x2="857" y2="577" class="line"></line><path d="M29 601 Q29 611 39 611" class="line"></path><path d="M847 611 Q857 611 857 601" class="line"></path><rect x="51" y="597" width="98" height="32" rx="10"></rect><rect x="49" y="595" width="98" height="32" class="terminal" rx="10"></rect><text class="terminal" x="59" y="615">currentDate</text><line x1="39" y1="611" x2="49" y2="611" class="line"></line><line x1="147" y1="611" x2="157" y2="611" class="line"></line><line x1="157" y1="611" x2="847" y2="611" class="line"></line><line x1="29" y1="601" x2="29" y2="621" class="line"></line><line x1="857" y1="621" x2="857" y2="601" class="line"></line><line x1="29" y1="621" x2="29" y2="645" class="line"></line><line x1="857" y1="645" x2="857" y2="621" class="line"></line><path d="M29 645 Q29 655 39 655" class="line"></path><path d="M847 655 Q857 655 857 645" class="line"></path><rect x="51" y="641" width="100" height="32" rx="10"></rect><rect x="49" y="639" width="100" height="32" class="terminal" rx="10"></rect><text class="terminal" x="59" y="659">currentTime</text><line x1="39" y1="655" x2="49" y2="655" class="line"></line><line x1="149" y1="655" x2="159" y2="655" class="line"></line><line x1="159" y1="655" x2="847" y2="655" class="line"></line><line x1="29" y1="645" x2="29" y2="665" class="line"></line><line x1="857" y1="665" x2="857" y2="645" class="line"></line><line x1="29" y1="665" x2="29" y2="689" class="line"></line><line x1="857" y1="689" x2="857" y2="665" class="line"></line><path d="M29 689 Q29 699 39 699" class="line"></path><path d="M847 699 Q857 699 857 689" class="line"></path><rect x="51" y="685" width="140" height="32" rx="10"></rect><rect x="49" y="683" width="140" height="32" class="terminal" rx="10"></rect><text class="terminal" x="59" y="703">currentTimestamp</text><line x1="39" y1="699" x2="49" y2="699" class="line"></line><line x1="189" y1="699" x2="199" y2="699" class="line"></line><line x1="199" y1="699" x2="847" y2="699" class="line"></line><line x1="29" y1="689" x2="29" y2="709" class="line"></line><line x1="857" y1="709" x2="857" y2="689" class="line"></line><line x1="29" y1="709" x2="29" y2="733" class="line"></line><line x1="857" y1="733" x2="857" y2="709" class="line"></line><path d="M29 733 Q29 743 39 743" class="line"></path><path d="M847 743 Q857 743 857 733" class="line"></path><rect x="51" y="729" width="98" height="32" rx="10"></rect><rect x="49" y="727" width="98" height="32" class="terminal" rx="10"></rect><text class="terminal" x="59" y="747">currentUser</text><line x1="39" y1="743" x2="49" y2="743" class="line"></line><line x1="147" y1="743" x2="157" y2="743" class="line"></line><line x1="157" y1="743" x2="847" y2="743" class="line"></line><line x1="29" y1="733" x2="29" y2="753" class="line"></line><line x1="857" y1="753" x2="857" y2="733" class="line"></line><line x1="29" y1="753" x2="29" y2="777" class="line"></line><line x1="857" y1="777" x2="857" y2="753" class="line"></line><path d="M29 777 Q29 787 39 787" class="line"></path><path d="M847 787 Q857 787 857 777" class="line"></path><rect x="51" y="773" width="50" height="32" rx="10"></rect><rect x="49" y="771" width="50" height="32" class="terminal" rx="10"></rect><text class="terminal" x="59" y="791">rand</text><line x1="39" y1="787" x2="49" y2="787" class="line"></line><line x1="99" y1="787" x2="109" y2="787" class="line"></line><line x1="109" y1="787" x2="847" y2="787" class="line"></line><line x1="29" y1="777" x2="29" y2="797" class="line"></line><line x1="857" y1="797" x2="857" y2="777" class="line"></line><line x1="29" y1="797" x2="29" y2="821" class="line"></line><line x1="857" y1="821" x2="857" y2="797" class="line"></line><path d="M29 821 Q29 831 39 831" class="line"></path><path d="M847 831 Q857 831 857 821" class="line"></path><rect x="51" y="817" width="48" height="32" rx="10"></rect><rect x="49" y="815" width="48" height="32" class="terminal" rx="10"></rect><text class="terminal" x="59" y="835">field</text><line x1="39" y1="831" x2="49" y2="831" class="line"></line><line x1="97" y1="831" x2="107" y2="831" class="line"></line><a xlink:href="#SQL" xlink:title="SQL"><rect x="119" y="817" width="44" height="32"></rect><rect x="117" y="815" width="44" height="32" class="nonterminal"></rect><text class="nonterminal" x="127" y="835">SQL</text></a><line x1="107" y1="831" x2="117" y2="831" class="line"></line><line x1="161" y1="831" x2="171" y2="831" class="line"></line><line x1="171" y1="831" x2="847" y2="831" class="line"></line><line x1="29" y1="821" x2="29" y2="841" class="line"></line><line x1="857" y1="841" x2="857" y2="821" class="line"></line><line x1="29" y1="841" x2="29" y2="887" class="line"></line><line x1="857" y1="887" x2="857" y2="841" class="line"></line><path d="M29 887 Q29 897 39 897" class="line"></path><path d="M847 897 Q857 897 857 887" class="line"></path><rect x="51" y="883" width="72" height="32" rx="10"></rect><rect x="49" y="881" width="72" height="32" class="terminal" rx="10"></rect><text class="terminal" x="59" y="901">function</text><line x1="39" y1="897" x2="49" y2="897" class="line"></line><line x1="121" y1="897" x2="131" y2="897" class="line"></line><a xlink:href="#NAME" xlink:title="NAME"><rect x="143" y="883" width="54" height="32"></rect><rect x="141" y="881" width="54" height="32" class="nonterminal"></rect><text class="nonterminal" x="151" y="901">NAME</text></a><line x1="131" y1="897" x2="141" y2="897" class="line"></line><line x1="195" y1="897" x2="205" y2="897" class="line"></line><a xlink:href="#FIELD" xlink:title="FIELD"><rect x="257" y="883" width="56" height="32"></rect><rect x="255" y="881" width="56" height="32" class="nonterminal"></rect><text class="nonterminal" x="265" y="901">FIELD</text></a><line x1="245" y1="897" x2="255" y2="897" class="line"></line><line x1="311" y1="897" x2="321" y2="897" class="line"></line><path d="M225 897 L245 897 M244 897 Q235 897 235 887 L235 875 Q235 865 245 865" class="line"></path><path d="M321 897 L341 897 M321 897 Q331 897 331 887 L331 875 Q331 865 321 865" class="line"></path><line x1="245" y1="865" x2="255" y2="865" class="line"></line><line x1="255" y1="865" x2="321" y2="865" class="line"></line><line x1="205" y1="897" x2="225" y2="897" class="line"></line><line x1="341" y1="897" x2="361" y2="897" class="line"></line><path d="M205 897 Q215 897 215 907" class="line"></path><path d="M351 907 Q351 897 361 897" class="line"></path><line x1="215" y1="907" x2="215" y2="921" class="line"></line><line x1="351" y1="921" x2="351" y2="907" class="line"></line><path d="M215 921 Q215 931 225 931" class="line"></path><path d="M341 931 Q351 931 351 921" class="line"></path><line x1="225" y1="931" x2="235" y2="931" class="line"></line><line x1="235" y1="931" x2="341" y2="931" class="line"></line><line x1="361" y1="897" x2="847" y2="897" class="line"></line><line x1="29" y1="887" x2="29" y2="907" class="line"></line><line x1="857" y1="907" x2="857" y2="887" class="line"></line><line x1="29" y1="907" x2="29" y2="969" class="line"></line><line x1="857" y1="969" x2="857" y2="907" class="line"></line><path d="M29 969 Q29 979 39 979" class="line"></path><path d="M847 979 Q857 979 857 969" class="line"></path><rect x="51" y="965" width="66" height="32" rx="10"></rect><rect x="49" y="963" width="66" height="32" class="terminal" rx="10"></rect><text class="terminal" x="59" y="983">decode</text><line x1="39" y1="979" x2="49" y2="979" class="line"></line><line x1="115" y1="979" x2="125" y2="979" class="line"></line><rect x="177" y="965" width="56" height="32" rx="10"></rect><rect x="175" y="963" width="56" height="32" class="terminal" rx="10"></rect><text class="terminal" x="185" y="983">value</text><line x1="165" y1="979" x2="175" y2="979" class="line"></line><line x1="231" y1="979" x2="241" y2="979" class="line"></line><a xlink:href="#FIELD" xlink:title="FIELD"><rect x="253" y="965" width="56" height="32"></rect><rect x="251" y="963" width="56" height="32" class="nonterminal"></rect><text class="nonterminal" x="261" y="983">FIELD</text></a><line x1="241" y1="979" x2="251" y2="979" class="line"></line><line x1="307" y1="979" x2="317" y2="979" class="line"></line><rect x="349" y="965" width="56" height="32" rx="10"></rect><rect x="347" y="963" width="56" height="32" class="terminal" rx="10"></rect><text class="terminal" x="357" y="983">when</text><line x1="337" y1="979" x2="347" y2="979" class="line"></line><line x1="403" y1="979" x2="413" y2="979" class="line"></line><a xlink:href="#FIELD" xlink:title="FIELD"><rect x="425" y="965" width="56" height="32"></rect><rect x="423" y="963" width="56" height="32" class="nonterminal"></rect><text class="nonterminal" x="433" y="983">FIELD</text></a><line x1="413" y1="979" x2="423" y2="979" class="line"></line><line x1="479" y1="979" x2="489" y2="979" class="line"></line><a xlink:href="#FIELD" xlink:title="FIELD"><rect x="501" y="965" width="56" height="32"></rect><rect x="499" y="963" width="56" height="32" class="nonterminal"></rect><text class="nonterminal" x="509" y="983">FIELD</text></a><line x1="489" y1="979" x2="499" y2="979" class="line"></line><line x1="555" y1="979" x2="565" y2="979" class="line"></line><path d="M317 979 L337 979 M336 979 Q327 979 327 969 L327 957 Q327 947 337 947" class="line"></path><path d="M565 979 L585 979 M565 979 Q575 979 575 969 L575 957 Q575 947 565 947" class="line"></path><line x1="337" y1="947" x2="347" y2="947" class="line"></line><line x1="347" y1="947" x2="565" y2="947" class="line"></line><line x1="145" y1="979" x2="165" y2="979" class="line"></line><line x1="585" y1="979" x2="605" y2="979" class="line"></line><path d="M145 979 Q155 979 155 989" class="line"></path><path d="M595 989 Q595 979 605 979" class="line"></path><line x1="155" y1="989" x2="155" y2="1035" class="line"></line><line x1="595" y1="1035" x2="595" y2="989" class="line"></line><path d="M155 1035 Q155 1045 165 1045" class="line"></path><path d="M585 1045 Q595 1045 595 1035" class="line"></path><rect x="197" y="1031" width="56" height="32" rx="10"></rect><rect x="195" y="1029" width="56" height="32" class="terminal" rx="10"></rect><text class="terminal" x="205" y="1049">when</text><line x1="185" y1="1045" x2="195" y2="1045" class="line"></line><line x1="251" y1="1045" x2="261" y2="1045" class="line"></line><a xlink:href="#CONDITION" xlink:title="CONDITION"><rect x="273" y="1031" width="92" height="32"></rect><rect x="271" y="1029" width="92" height="32" class="nonterminal"></rect><text class="nonterminal" x="281" y="1049">CONDITION</text></a><line x1="261" y1="1045" x2="271" y2="1045" class="line"></line><line x1="363" y1="1045" x2="373" y2="1045" class="line"></line><a xlink:href="#FIELD" xlink:title="FIELD"><rect x="385" y="1031" width="56" height="32"></rect><rect x="383" y="1029" width="56" height="32" class="nonterminal"></rect><text class="nonterminal" x="393" y="1049">FIELD</text></a><line x1="373" y1="1045" x2="383" y2="1045" class="line"></line><line x1="439" y1="1045" x2="449" y2="1045" class="line"></line><path d="M165 1045 L185 1045 M184 1045 Q175 1045 175 1035 L175 1023 Q175 1013 185 1013" class="line"></path><path d="M449 1045 L469 1045 M449 1045 Q459 1045 459 1035 L459 1023 Q459 1013 449 1013" class="line"></path><line x1="185" y1="1013" x2="195" y2="1013" class="line"></line><line x1="195" y1="1013" x2="449" y2="1013" class="line"></line><line x1="469" y1="1045" x2="585" y2="1045" class="line"></line><rect x="637" y="965" width="86" height="32" rx="10"></rect><rect x="635" y="963" width="86" height="32" class="terminal" rx="10"></rect><text class="terminal" x="645" y="983">otherwise</text><line x1="625" y1="979" x2="635" y2="979" class="line"></line><line x1="721" y1="979" x2="731" y2="979" class="line"></line><a xlink:href="#FIELD" xlink:title="FIELD"><rect x="743" y="965" width="56" height="32"></rect><rect x="741" y="963" width="56" height="32" class="nonterminal"></rect><text class="nonterminal" x="751" y="983">FIELD</text></a><line x1="731" y1="979" x2="741" y2="979" class="line"></line><line x1="797" y1="979" x2="807" y2="979" class="line"></line><line x1="605" y1="979" x2="625" y2="979" class="line"></line><line x1="807" y1="979" x2="827" y2="979" class="line"></line><path d="M605 979 Q615 979 615 989" class="line"></path><path d="M817 989 Q817 979 827 979" class="line"></path><line x1="615" y1="989" x2="615" y2="1003" class="line"></line><line x1="817" y1="1003" x2="817" y2="989" class="line"></line><path d="M615 1003 Q615 1013 625 1013" class="line"></path><path d="M807 1013 Q817 1013 817 1003" class="line"></path><line x1="625" y1="1013" x2="635" y2="1013" class="line"></line><line x1="635" y1="1013" x2="807" y2="1013" class="line"></line><line x1="125" y1="979" x2="145" y2="979" class="line"></line><line x1="827" y1="979" x2="847" y2="979" class="line"></line><path d="M125 979 Q135 979 135 989" class="line"></path><path d="M837 989 Q837 979 847 979" class="line"></path><line x1="135" y1="989" x2="135" y2="1101" class="line"></line><line x1="837" y1="1101" x2="837" y2="989" class="line"></line><path d="M135 1101 Q135 1111 145 1111" class="line"></path><path d="M827 1111 Q837 1111 837 1101" class="line"></path><a xlink:href="#FIELD" xlink:title="FIELD"><rect x="177" y="1097" width="56" height="32"></rect><rect x="175" y="1095" width="56" height="32" class="nonterminal"></rect><text class="nonterminal" x="185" y="1115">FIELD</text></a><line x1="165" y1="1111" x2="175" y2="1111" class="line"></line><line x1="231" y1="1111" x2="241" y2="1111" class="line"></line><path d="M145 1111 L165 1111 M164 1111 Q155 1111 155 1101 L155 1089 Q155 1079 165 1079" class="line"></path><path d="M241 1111 L261 1111 M241 1111 Q251 1111 251 1101 L251 1089 Q251 1079 241 1079" class="line"></path><line x1="165" y1="1079" x2="175" y2="1079" class="line"></line><line x1="175" y1="1079" x2="241" y2="1079" class="line"></line><line x1="261" y1="1111" x2="827" y2="1111" class="line"></line><line x1="29" y1="969" x2="29" y2="989" class="line"></line><line x1="857" y1="989" x2="857" y2="969" class="line"></line><line x1="29" y1="989" x2="29" y2="1145" class="line"></line><line x1="857" y1="1145" x2="857" y2="989" class="line"></line><path d="M29 1145 Q29 1155 39 1155" class="line"></path><path d="M847 1155 Q857 1155 857 1145" class="line"></path><rect x="51" y="1141" width="78" height="32" rx="10"></rect><rect x="49" y="1139" width="78" height="32" class="terminal" rx="10"></rect><text class="terminal" x="59" y="1159">grouping</text><line x1="39" y1="1155" x2="49" y2="1155" class="line"></line><line x1="127" y1="1155" x2="137" y2="1155" class="line"></line><a xlink:href="#FIELD" xlink:title="FIELD"><rect x="149" y="1141" width="56" height="32"></rect><rect x="147" y="1139" width="56" height="32" class="nonterminal"></rect><text class="nonterminal" x="157" y="1159">FIELD</text></a><line x1="137" y1="1155" x2="147" y2="1155" class="line"></line><line x1="203" y1="1155" x2="213" y2="1155" class="line"></line><line x1="213" y1="1155" x2="847" y2="1155" class="line"></line><line x1="29" y1="1145" x2="29" y2="1165" class="line"></line><line x1="857" y1="1165" x2="857" y2="1145" class="line"></line><line x1="29" y1="1165" x2="29" y2="1211" class="line"></line><line x1="857" y1="1211" x2="857" y2="1165" class="line"></line><path d="M29 1211 Q29 1221 39 1221" class="line"></path><path d="M847 1221 Q857 1221 857 1211" class="line"></path><rect x="51" y="1207" width="92" height="32" rx="10"></rect><rect x="49" y="1205" width="92" height="32" class="terminal" rx="10"></rect><text class="terminal" x="59" y="1225">groupingId</text><line x1="39" y1="1221" x2="49" y2="1221" class="line"></line><line x1="141" y1="1221" x2="151" y2="1221" class="line"></line><a xlink:href="#FIELD" xlink:title="FIELD"><rect x="183" y="1207" width="56" height="32"></rect><rect x="181" y="1205" width="56" height="32" class="nonterminal"></rect><text class="nonterminal" x="191" y="1225">FIELD</text></a><line x1="171" y1="1221" x2="181" y2="1221" class="line"></line><line x1="237" y1="1221" x2="247" y2="1221" class="line"></line><path d="M151 1221 L171 1221 M170 1221 Q161 1221 161 1211 L161 1199 Q161 1189 171 1189" class="line"></path><path d="M247 1221 L267 1221 M247 1221 Q257 1221 257 1211 L257 1199 Q257 1189 247 1189" class="line"></path><line x1="171" y1="1189" x2="181" y2="1189" class="line"></line><line x1="181" y1="1189" x2="247" y2="1189" class="line"></line><line x1="267" y1="1221" x2="847" y2="1221" class="line"></line><line x1="29" y1="1211" x2="29" y2="1231" class="line"></line><line x1="857" y1="1231" x2="857" y2="1211" class="line"></line><line x1="29" y1="1231" x2="29" y2="1255" class="line"></line><line x1="857" y1="1255" x2="857" y2="1231" class="line"></line><path d="M29 1255 Q29 1265 39 1265" class="line"></path><path d="M847 1265 Q857 1265 857 1255" class="line"></path><rect x="51" y="1251" width="46" height="32" rx="10"></rect><rect x="49" y="1249" width="46" height="32" class="terminal" rx="10"></rect><text class="terminal" x="59" y="1269">cast</text><line x1="39" y1="1265" x2="49" y2="1265" class="line"></line><line x1="95" y1="1265" x2="105" y2="1265" class="line"></line><a xlink:href="#BINDING" xlink:title="BINDING"><rect x="117" y="1251" width="74" height="32"></rect><rect x="115" y="1249" width="74" height="32" class="nonterminal"></rect><text class="nonterminal" x="125" y="1269">BINDING</text></a><line x1="105" y1="1265" x2="115" y2="1265" class="line"></line><line x1="189" y1="1265" x2="199" y2="1265" class="line"></line><a xlink:href="#TYPE" xlink:title="TYPE"><rect x="211" y="1251" width="50" height="32"></rect><rect x="209" y="1249" width="50" height="32" class="nonterminal"></rect><text class="nonterminal" x="219" y="1269">TYPE</text></a><line x1="199" y1="1265" x2="209" y2="1265" class="line"></line><line x1="259" y1="1265" x2="269" y2="1265" class="line"></line><line x1="269" y1="1265" x2="847" y2="1265" class="line"></line><line x1="29" y1="1255" x2="29" y2="1275" class="line"></line><line x1="857" y1="1275" x2="857" y2="1255" class="line"></line><line x1="29" y1="1275" x2="29" y2="1299" class="line"></line><line x1="857" y1="1299" x2="857" y2="1275" class="line"></line><path d="M29 1299 Q29 1309 39 1309" class="line"></path><path d="M847 1309 Q857 1309 857 1299" class="line"></path><rect x="51" y="1295" width="72" height="32" rx="10"></rect><rect x="49" y="1293" width="72" height="32" class="terminal" rx="10"></rect><text class="terminal" x="59" y="1313">castNull</text><line x1="39" y1="1309" x2="49" y2="1309" class="line"></line><line x1="121" y1="1309" x2="131" y2="1309" class="line"></line><a xlink:href="#TYPE" xlink:title="TYPE"><rect x="143" y="1295" width="50" height="32"></rect><rect x="141" y="1293" width="50" height="32" class="nonterminal"></rect><text class="nonterminal" x="151" y="1313">TYPE</text></a><line x1="131" y1="1309" x2="141" y2="1309" class="line"></line><line x1="191" y1="1309" x2="201" y2="1309" class="line"></line><line x1="201" y1="1309" x2="847" y2="1309" class="line"></line><line x1="29" y1="1299" x2="29" y2="1319" class="line"></line><line x1="857" y1="1319" x2="857" y2="1299" class="line"></line><line x1="29" y1="1319" x2="29" y2="1365" class="line"></line><line x1="857" y1="1365" x2="857" y2="1319" class="line"></line><path d="M29 1365 Q29 1375 39 1375" class="line"></path><path d="M847 1375 Q857 1375 857 1365" class="line"></path><rect x="71" y="1361" width="76" height="32" rx="10"></rect><rect x="69" y="1359" width="76" height="32" class="terminal" rx="10"></rect><text class="terminal" x="79" y="1379">coalesce</text><line x1="59" y1="1375" x2="69" y2="1375" class="line"></line><line x1="145" y1="1375" x2="155" y2="1375" class="line"></line><line x1="39" y1="1375" x2="59" y2="1375" class="line"></line><line x1="155" y1="1375" x2="175" y2="1375" class="line"></line><path d="M39 1375 Q49 1375 49 1385" class="line"></path><path d="M165 1385 Q165 1375 175 1375" class="line"></path><line x1="49" y1="1385" x2="49" y2="1409" class="line"></line><line x1="165" y1="1409" x2="165" y2="1385" class="line"></line><path d="M49 1409 Q49 1419 59 1419" class="line"></path><path d="M155 1419 Q165 1419 165 1409" class="line"></path><rect x="71" y="1405" width="62" height="32" rx="10"></rect><rect x="69" y="1403" width="62" height="32" class="terminal" rx="10"></rect><text class="terminal" x="79" y="1423">concat</text><line x1="59" y1="1419" x2="69" y2="1419" class="line"></line><line x1="131" y1="1419" x2="141" y2="1419" class="line"></line><line x1="141" y1="1419" x2="155" y2="1419" class="line"></line><line x1="49" y1="1409" x2="49" y2="1429" class="line"></line><line x1="165" y1="1429" x2="165" y2="1409" class="line"></line><line x1="49" y1="1429" x2="49" y2="1453" class="line"></line><line x1="165" y1="1453" x2="165" y2="1429" class="line"></line><path d="M49 1453 Q49 1463 59 1463" class="line"></path><path d="M155 1463 Q165 1463 165 1453" class="line"></path><rect x="71" y="1449" width="74" height="32" rx="10"></rect><rect x="69" y="1447" width="74" height="32" class="terminal" rx="10"></rect><text class="terminal" x="79" y="1467">greatest</text><line x1="59" y1="1463" x2="69" y2="1463" class="line"></line><line x1="143" y1="1463" x2="153" y2="1463" class="line"></line><line x1="153" y1="1463" x2="155" y2="1463" class="line"></line><line x1="49" y1="1453" x2="49" y2="1473" class="line"></line><line x1="165" y1="1473" x2="165" y2="1453" class="line"></line><line x1="49" y1="1473" x2="49" y2="1497" class="line"></line><line x1="165" y1="1497" x2="165" y2="1473" class="line"></line><path d="M49 1497 Q49 1507 59 1507" class="line"></path><path d="M155 1507 Q165 1507 165 1497" class="line"></path><rect x="71" y="1493" width="52" height="32" rx="10"></rect><rect x="69" y="1491" width="52" height="32" class="terminal" rx="10"></rect><text class="terminal" x="79" y="1511">least</text><line x1="59" y1="1507" x2="69" y2="1507" class="line"></line><line x1="121" y1="1507" x2="131" y2="1507" class="line"></line><line x1="131" y1="1507" x2="155" y2="1507" class="line"></line><a xlink:href="#FIELD" xlink:title="FIELD"><rect x="207" y="1361" width="56" height="32"></rect><rect x="205" y="1359" width="56" height="32" class="nonterminal"></rect><text class="nonterminal" x="215" y="1379">FIELD</text></a><line x1="195" y1="1375" x2="205" y2="1375" class="line"></line><line x1="261" y1="1375" x2="271" y2="1375" class="line"></line><path d="M175 1375 L195 1375 M194 1375 Q185 1375 185 1365 L185 1353 Q185 1343 195 1343" class="line"></path><path d="M271 1375 L291 1375 M271 1375 Q281 1375 281 1365 L281 1353 Q281 1343 271 1343" class="line"></path><line x1="195" y1="1343" x2="205" y2="1343" class="line"></line><line x1="205" y1="1343" x2="271" y2="1343" class="line"></line><line x1="291" y1="1375" x2="847" y2="1375" class="line"></line><line x1="29" y1="1365" x2="29" y2="1385" class="line"></line><line x1="857" y1="1385" x2="857" y2="1365" class="line"></line><line x1="29" y1="1385" x2="29" y2="1541" class="line"></line><line x1="857" y1="1541" x2="857" y2="1385" class="line"></line><path d="M29 1541 Q29 1551 39 1551" class="line"></path><path d="M847 1551 Q857 1551 857 1541" class="line"></path><rect x="71" y="1537" width="40" height="32" rx="10"></rect><rect x="69" y="1535" width="40" height="32" class="terminal" rx="10"></rect><text class="terminal" x="79" y="1555">nvl</text><line x1="59" y1="1551" x2="69" y2="1551" class="line"></line><line x1="109" y1="1551" x2="119" y2="1551" class="line"></line><line x1="119" y1="1551" x2="131" y2="1551" class="line"></line><line x1="39" y1="1551" x2="59" y2="1551" class="line"></line><line x1="131" y1="1551" x2="151" y2="1551" class="line"></line><path d="M39 1551 Q49 1551 49 1561" class="line"></path><path d="M141 1561 Q141 1551 151 1551" class="line"></path><line x1="49" y1="1561" x2="49" y2="1585" class="line"></line><line x1="141" y1="1585" x2="141" y2="1561" class="line"></line><path d="M49 1585 Q49 1595 59 1595" class="line"></path><path d="M131 1595 Q141 1595 141 1585" class="line"></path><rect x="71" y="1581" width="52" height="32" rx="10"></rect><rect x="69" y="1579" width="52" height="32" class="terminal" rx="10"></rect><text class="terminal" x="79" y="1599">nullif</text><line x1="59" y1="1595" x2="69" y2="1595" class="line"></line><line x1="121" y1="1595" x2="131" y2="1595" class="line"></line><a xlink:href="#FIELD" xlink:title="FIELD"><rect x="163" y="1537" width="56" height="32"></rect><rect x="161" y="1535" width="56" height="32" class="nonterminal"></rect><text class="nonterminal" x="171" y="1555">FIELD</text></a><line x1="151" y1="1551" x2="161" y2="1551" class="line"></line><line x1="217" y1="1551" x2="227" y2="1551" class="line"></line><a xlink:href="#FIELD" xlink:title="FIELD"><rect x="239" y="1537" width="56" height="32"></rect><rect x="237" y="1535" width="56" height="32" class="nonterminal"></rect><text class="nonterminal" x="247" y="1555">FIELD</text></a><line x1="227" y1="1551" x2="237" y2="1551" class="line"></line><line x1="293" y1="1551" x2="303" y2="1551" class="line"></line><line x1="303" y1="1551" x2="847" y2="1551" class="line"></line><line x1="29" y1="1541" x2="29" y2="1561" class="line"></line><line x1="857" y1="1561" x2="857" y2="1541" class="line"></line><line x1="29" y1="1561" x2="29" y2="1629" class="line"></line><line x1="857" y1="1629" x2="857" y2="1561" class="line"></line><path d="M29 1629 Q29 1639 39 1639" class="line"></path><path d="M847 1639 Q857 1639 857 1629" class="line"></path><rect x="51" y="1625" width="48" height="32" rx="10"></rect><rect x="49" y="1623" width="48" height="32" class="terminal" rx="10"></rect><text class="terminal" x="59" y="1643">nvl2</text><line x1="39" y1="1639" x2="49" y2="1639" class="line"></line><line x1="97" y1="1639" x2="107" y2="1639" class="line"></line><a xlink:href="#FIELD" xlink:title="FIELD"><rect x="119" y="1625" width="56" height="32"></rect><rect x="117" y="1623" width="56" height="32" class="nonterminal"></rect><text class="nonterminal" x="127" y="1643">FIELD</text></a><line x1="107" y1="1639" x2="117" y2="1639" class="line"></line><line x1="173" y1="1639" x2="183" y2="1639" class="line"></line><a xlink:href="#FIELD" xlink:title="FIELD"><rect x="195" y="1625" width="56" height="32"></rect><rect x="193" y="1623" width="56" height="32" class="nonterminal"></rect><text class="nonterminal" x="203" y="1643">FIELD</text></a><line x1="183" y1="1639" x2="193" y2="1639" class="line"></line><line x1="249" y1="1639" x2="259" y2="1639" class="line"></line><a xlink:href="#FIELD" xlink:title="FIELD"><rect x="271" y="1625" width="56" height="32"></rect><rect x="269" y="1623" width="56" height="32" class="nonterminal"></rect><text class="nonterminal" x="279" y="1643">FIELD</text></a><line x1="259" y1="1639" x2="269" y2="1639" class="line"></line><line x1="325" y1="1639" x2="335" y2="1639" class="line"></line><line x1="335" y1="1639" x2="847" y2="1639" class="line"></line><line x1="29" y1="1629" x2="29" y2="1649" class="line"></line><line x1="857" y1="1649" x2="857" y2="1629" class="line"></line><line x1="29" y1="1649" x2="29" y2="1673" class="line"></line><line x1="857" y1="1673" x2="857" y2="1649" class="line"></line><path d="M29 1673 Q29 1683 39 1683" class="line"></path><path d="M847 1683 Q857 1683 857 1673" class="line"></path><rect x="71" y="1669" width="58" height="32" rx="10"></rect><rect x="69" y="1667" width="58" height="32" class="terminal" rx="10"></rect><text class="terminal" x="79" y="1687">upper</text><line x1="59" y1="1683" x2="69" y2="1683" class="line"></line><line x1="127" y1="1683" x2="137" y2="1683" class="line"></line><line x1="137" y1="1683" x2="177" y2="1683" class="line"></line><line x1="39" y1="1683" x2="59" y2="1683" class="line"></line><line x1="177" y1="1683" x2="197" y2="1683" class="line"></line><path d="M39 1683 Q49 1683 49 1693" class="line"></path><path d="M187 1693 Q187 1683 197 1683" class="line"></path><line x1="49" y1="1693" x2="49" y2="1717" class="line"></line><line x1="187" y1="1717" x2="187" y2="1693" class="line"></line><path d="M49 1717 Q49 1727 59 1727" class="line"></path><path d="M177 1727 Q187 1727 187 1717" class="line"></path><rect x="71" y="1713" width="58" height="32" rx="10"></rect><rect x="69" y="1711" width="58" height="32" class="terminal" rx="10"></rect><text class="terminal" x="79" y="1731">lower</text><line x1="59" y1="1727" x2="69" y2="1727" class="line"></line><line x1="127" y1="1727" x2="137" y2="1727" class="line"></line><line x1="137" y1="1727" x2="177" y2="1727" class="line"></line><line x1="49" y1="1717" x2="49" y2="1737" class="line"></line><line x1="187" y1="1737" x2="187" y2="1717" class="line"></line><line x1="49" y1="1737" x2="49" y2="1761" class="line"></line><line x1="187" y1="1761" x2="187" y2="1737" class="line"></line><path d="M49 1761 Q49 1771 59 1771" class="line"></path><path d="M177 1771 Q187 1771 187 1761" class="line"></path><rect x="71" y="1757" width="46" height="32" rx="10"></rect><rect x="69" y="1755" width="46" height="32" class="terminal" rx="10"></rect><text class="terminal" x="79" y="1775">trim</text><line x1="59" y1="1771" x2="69" y2="1771" class="line"></line><line x1="115" y1="1771" x2="125" y2="1771" class="line"></line><line x1="125" y1="1771" x2="177" y2="1771" class="line"></line><line x1="49" y1="1761" x2="49" y2="1781" class="line"></line><line x1="187" y1="1781" x2="187" y2="1761" class="line"></line><line x1="49" y1="1781" x2="49" y2="1805" class="line"></line><line x1="187" y1="1805" x2="187" y2="1781" class="line"></line><path d="M49 1805 Q49 1815 59 1815" class="line"></path><path d="M177 1815 Q187 1815 187 1805" class="line"></path><rect x="71" y="1801" width="52" height="32" rx="10"></rect><rect x="69" y="1799" width="52" height="32" class="terminal" rx="10"></rect><text class="terminal" x="79" y="1819">rtrim</text><line x1="59" y1="1815" x2="69" y2="1815" class="line"></line><line x1="121" y1="1815" x2="131" y2="1815" class="line"></line><line x1="131" y1="1815" x2="177" y2="1815" class="line"></line><line x1="49" y1="1805" x2="49" y2="1825" class="line"></line><line x1="187" y1="1825" x2="187" y2="1805" class="line"></line><line x1="49" y1="1825" x2="49" y2="1849" class="line"></line><line x1="187" y1="1849" x2="187" y2="1825" class="line"></line><path d="M49 1849 Q49 1859 59 1859" class="line"></path><path d="M177 1859 Q187 1859 187 1849" class="line"></path><rect x="71" y="1845" width="50" height="32" rx="10"></rect><rect x="69" y="1843" width="50" height="32" class="terminal" rx="10"></rect><text class="terminal" x="79" y="1863">ltrim</text><line x1="59" y1="1859" x2="69" y2="1859" class="line"></line><line x1="119" y1="1859" x2="129" y2="1859" class="line"></line><line x1="129" y1="1859" x2="177" y2="1859" class="line"></line><line x1="49" y1="1849" x2="49" y2="1869" class="line"></line><line x1="187" y1="1869" x2="187" y2="1849" class="line"></line><line x1="49" y1="1869" x2="49" y2="1893" class="line"></line><line x1="187" y1="1893" x2="187" y2="1869" class="line"></line><path d="M49 1893 Q49 1903 59 1903" class="line"></path><path d="M177 1903 Q187 1903 187 1893" class="line"></path><rect x="71" y="1889" width="50" height="32" rx="10"></rect><rect x="69" y="1887" width="50" height="32" class="terminal" rx="10"></rect><text class="terminal" x="79" y="1907">ascii</text><line x1="59" y1="1903" x2="69" y2="1903" class="line"></line><line x1="119" y1="1903" x2="129" y2="1903" class="line"></line><line x1="129" y1="1903" x2="177" y2="1903" class="line"></line><line x1="49" y1="1893" x2="49" y2="1913" class="line"></line><line x1="187" y1="1913" x2="187" y2="1893" class="line"></line><line x1="49" y1="1913" x2="49" y2="1937" class="line"></line><line x1="187" y1="1937" x2="187" y2="1913" class="line"></line><path d="M49 1937 Q49 1947 59 1947" class="line"></path><path d="M177 1947 Q187 1947 187 1937" class="line"></path><rect x="71" y="1933" width="60" height="32" rx="10"></rect><rect x="69" y="1931" width="60" height="32" class="terminal" rx="10"></rect><text class="terminal" x="79" y="1951">length</text><line x1="59" y1="1947" x2="69" y2="1947" class="line"></line><line x1="129" y1="1947" x2="139" y2="1947" class="line"></line><line x1="139" y1="1947" x2="177" y2="1947" class="line"></line><line x1="49" y1="1937" x2="49" y2="1957" class="line"></line><line x1="187" y1="1957" x2="187" y2="1937" class="line"></line><line x1="49" y1="1957" x2="49" y2="1981" class="line"></line><line x1="187" y1="1981" x2="187" y2="1957" class="line"></line><path d="M49 1981 Q49 1991 59 1991" class="line"></path><path d="M177 1991 Q187 1991 187 1981" class="line"></path><rect x="71" y="1977" width="94" height="32" rx="10"></rect><rect x="69" y="1975" width="94" height="32" class="terminal" rx="10"></rect><text class="terminal" x="79" y="1995">charLength</text><line x1="59" y1="1991" x2="69" y2="1991" class="line"></line><line x1="163" y1="1991" x2="173" y2="1991" class="line"></line><line x1="173" y1="1991" x2="177" y2="1991" class="line"></line><line x1="49" y1="1981" x2="49" y2="2001" class="line"></line><line x1="187" y1="2001" x2="187" y2="1981" class="line"></line><line x1="49" y1="2001" x2="49" y2="2025" class="line"></line><line x1="187" y1="2025" x2="187" y2="2001" class="line"></line><path d="M49 2025 Q49 2035 59 2035" class="line"></path><path d="M177 2035 Q187 2035 187 2025" class="line"></path><rect x="71" y="2021" width="82" height="32" rx="10"></rect><rect x="69" y="2019" width="82" height="32" class="terminal" rx="10"></rect><text class="terminal" x="79" y="2039">bitLength</text><line x1="59" y1="2035" x2="69" y2="2035" class="line"></line><line x1="151" y1="2035" x2="161" y2="2035" class="line"></line><line x1="161" y1="2035" x2="177" y2="2035" class="line"></line><line x1="49" y1="2025" x2="49" y2="2045" class="line"></line><line x1="187" y1="2045" x2="187" y2="2025" class="line"></line><line x1="49" y1="2045" x2="49" y2="2069" class="line"></line><line x1="187" y1="2069" x2="187" y2="2045" class="line"></line><path d="M49 2069 Q49 2079 59 2079" class="line"></path><path d="M177 2079 Q187 2079 187 2069" class="line"></path><rect x="71" y="2065" width="98" height="32" rx="10"></rect><rect x="69" y="2063" width="98" height="32" class="terminal" rx="10"></rect><text class="terminal" x="79" y="2083">octetLength</text><line x1="59" y1="2079" x2="69" y2="2079" class="line"></line><line x1="167" y1="2079" x2="177" y2="2079" class="line"></line><a xlink:href="#FIELD" xlink:title="FIELD"><rect x="209" y="1669" width="56" height="32"></rect><rect x="207" y="1667" width="56" height="32" class="nonterminal"></rect><text class="nonterminal" x="217" y="1687">FIELD</text></a><line x1="197" y1="1683" x2="207" y2="1683" class="line"></line><line x1="263" y1="1683" x2="273" y2="1683" class="line"></line><line x1="273" y1="1683" x2="847" y2="1683" class="line"></line><line x1="29" y1="1673" x2="29" y2="1693" class="line"></line><line x1="857" y1="1693" x2="857" y2="1673" class="line"></line><line x1="29" y1="1693" x2="29" y2="2113" class="line"></line><line x1="857" y1="2113" x2="857" y2="1693" class="line"></line><path d="M29 2113 Q29 2123 39 2123" class="line"></path><path d="M847 2123 Q857 2123 857 2113" class="line"></path><rect x="71" y="2109" width="50" height="32" rx="10"></rect><rect x="69" y="2107" width="50" height="32" class="terminal" rx="10"></rect><text class="terminal" x="79" y="2127">rpad</text><line x1="59" y1="2123" x2="69" y2="2123" class="line"></line><line x1="119" y1="2123" x2="129" y2="2123" class="line"></line><line x1="129" y1="2123" x2="159" y2="2123" class="line"></line><line x1="39" y1="2123" x2="59" y2="2123" class="line"></line><line x1="159" y1="2123" x2="179" y2="2123" class="line"></line><path d="M39 2123 Q49 2123 49 2133" class="line"></path><path d="M169 2133 Q169 2123 179 2123" class="line"></path><line x1="49" y1="2133" x2="49" y2="2157" class="line"></line><line x1="169" y1="2157" x2="169" y2="2133" class="line"></line><path d="M49 2157 Q49 2167 59 2167" class="line"></path><path d="M159 2167 Q169 2167 169 2157" class="line"></path><rect x="71" y="2153" width="48" height="32" rx="10"></rect><rect x="69" y="2151" width="48" height="32" class="terminal" rx="10"></rect><text class="terminal" x="79" y="2171">lpad</text><line x1="59" y1="2167" x2="69" y2="2167" class="line"></line><line x1="117" y1="2167" x2="127" y2="2167" class="line"></line><line x1="127" y1="2167" x2="159" y2="2167" class="line"></line><line x1="49" y1="2157" x2="49" y2="2177" class="line"></line><line x1="169" y1="2177" x2="169" y2="2157" class="line"></line><line x1="49" y1="2177" x2="49" y2="2201" class="line"></line><line x1="169" y1="2201" x2="169" y2="2177" class="line"></line><path d="M49 2201 Q49 2211 59 2211" class="line"></path><path d="M159 2211 Q169 2211 169 2201" class="line"></path><rect x="71" y="2197" width="68" height="32" rx="10"></rect><rect x="69" y="2195" width="68" height="32" class="terminal" rx="10"></rect><text class="terminal" x="79" y="2215">replace</text><line x1="59" y1="2211" x2="69" y2="2211" class="line"></line><line x1="137" y1="2211" x2="147" y2="2211" class="line"></line><line x1="147" y1="2211" x2="159" y2="2211" class="line"></line><line x1="49" y1="2201" x2="49" y2="2221" class="line"></line><line x1="169" y1="2221" x2="169" y2="2201" class="line"></line><line x1="49" y1="2221" x2="49" y2="2245" class="line"></line><line x1="169" y1="2245" x2="169" y2="2221" class="line"></line><path d="M49 2245 Q49 2255 59 2255" class="line"></path><path d="M159 2255 Q169 2255 169 2245" class="line"></path><rect x="71" y="2241" width="80" height="32" rx="10"></rect><rect x="69" y="2239" width="80" height="32" class="terminal" rx="10"></rect><text class="terminal" x="79" y="2259">substring</text><line x1="59" y1="2255" x2="69" y2="2255" class="line"></line><line x1="149" y1="2255" x2="159" y2="2255" class="line"></line><a xlink:href="#FIELD" xlink:title="FIELD"><rect x="191" y="2109" width="56" height="32"></rect><rect x="189" y="2107" width="56" height="32" class="nonterminal"></rect><text class="nonterminal" x="199" y="2127">FIELD</text></a><line x1="179" y1="2123" x2="189" y2="2123" class="line"></line><line x1="245" y1="2123" x2="255" y2="2123" class="line"></line><a xlink:href="#FIELD" xlink:title="FIELD"><rect x="267" y="2109" width="56" height="32"></rect><rect x="265" y="2107" width="56" height="32" class="nonterminal"></rect><text class="nonterminal" x="275" y="2127">FIELD</text></a><line x1="255" y1="2123" x2="265" y2="2123" class="line"></line><line x1="321" y1="2123" x2="331" y2="2123" class="line"></line><a xlink:href="#FIELD" xlink:title="FIELD"><rect x="363" y="2109" width="56" height="32"></rect><rect x="361" y="2107" width="56" height="32" class="nonterminal"></rect><text class="nonterminal" x="371" y="2127">FIELD</text></a><line x1="351" y1="2123" x2="361" y2="2123" class="line"></line><line x1="417" y1="2123" x2="427" y2="2123" class="line"></line><line x1="331" y1="2123" x2="351" y2="2123" class="line"></line><line x1="427" y1="2123" x2="447" y2="2123" class="line"></line><path d="M331 2123 Q341 2123 341 2133" class="line"></path><path d="M437 2133 Q437 2123 447 2123" class="line"></path><line x1="341" y1="2133" x2="341" y2="2147" class="line"></line><line x1="437" y1="2147" x2="437" y2="2133" class="line"></line><path d="M341 2147 Q341 2157 351 2157" class="line"></path><path d="M427 2157 Q437 2157 437 2147" class="line"></path><line x1="351" y1="2157" x2="361" y2="2157" class="line"></line><line x1="361" y1="2157" x2="427" y2="2157" class="line"></line><line x1="447" y1="2123" x2="847" y2="2123" class="line"></line><line x1="29" y1="2113" x2="29" y2="2133" class="line"></line><line x1="857" y1="2133" x2="857" y2="2113" class="line"></line><line x1="29" y1="2133" x2="29" y2="2289" class="line"></line><line x1="857" y1="2289" x2="857" y2="2133" class="line"></line><path d="M29 2289 Q29 2299 39 2299" class="line"></path><path d="M847 2299 Q857 2299 857 2289" class="line"></path><rect x="71" y="2285" width="62" height="32" rx="10"></rect><rect x="69" y="2283" width="62" height="32" class="terminal" rx="10"></rect><text class="terminal" x="79" y="2303">repeat</text><line x1="59" y1="2299" x2="69" y2="2299" class="line"></line><line x1="131" y1="2299" x2="141" y2="2299" class="line"></line><line x1="141" y1="2299" x2="151" y2="2299" class="line"></line><line x1="39" y1="2299" x2="59" y2="2299" class="line"></line><line x1="151" y1="2299" x2="171" y2="2299" class="line"></line><path d="M39 2299 Q49 2299 49 2309" class="line"></path><path d="M161 2309 Q161 2299 171 2299" class="line"></path><line x1="49" y1="2309" x2="49" y2="2333" class="line"></line><line x1="161" y1="2333" x2="161" y2="2309" class="line"></line><path d="M49 2333 Q49 2343 59 2343" class="line"></path><path d="M151 2343 Q161 2343 161 2333" class="line"></path><rect x="71" y="2329" width="72" height="32" rx="10"></rect><rect x="69" y="2327" width="72" height="32" class="terminal" rx="10"></rect><text class="terminal" x="79" y="2347">position</text><line x1="59" y1="2343" x2="69" y2="2343" class="line"></line><line x1="141" y1="2343" x2="151" y2="2343" class="line"></line><a xlink:href="#FIELD" xlink:title="FIELD"><rect x="183" y="2285" width="56" height="32"></rect><rect x="181" y="2283" width="56" height="32" class="nonterminal"></rect><text class="nonterminal" x="191" y="2303">FIELD</text></a><line x1="171" y1="2299" x2="181" y2="2299" class="line"></line><line x1="237" y1="2299" x2="247" y2="2299" class="line"></line><a xlink:href="#FIELD" xlink:title="FIELD"><rect x="259" y="2285" width="56" height="32"></rect><rect x="257" y="2283" width="56" height="32" class="nonterminal"></rect><text class="nonterminal" x="267" y="2303">FIELD</text></a><line x1="247" y1="2299" x2="257" y2="2299" class="line"></line><line x1="313" y1="2299" x2="323" y2="2299" class="line"></line><line x1="323" y1="2299" x2="847" y2="2299" class="line"></line><line x1="29" y1="2289" x2="29" y2="2309" class="line"></line><line x1="857" y1="2309" x2="857" y2="2289" class="line"></line><line x1="29" y1="2309" x2="29" y2="2377" class="line"></line><line x1="857" y1="2377" x2="857" y2="2309" class="line"></line><path d="M29 2377 Q29 2387 39 2387" class="line"></path><path d="M847 2387 Q857 2387 857 2377" class="line"></path><rect x="51" y="2373" width="66" height="32" rx="10"></rect><rect x="49" y="2371" width="66" height="32" class="terminal" rx="10"></rect><text class="terminal" x="59" y="2391">extract</text><line x1="39" y1="2387" x2="49" y2="2387" class="line"></line><line x1="115" y1="2387" x2="125" y2="2387" class="line"></line><a xlink:href="#FIELD" xlink:title="FIELD"><rect x="137" y="2373" width="56" height="32"></rect><rect x="135" y="2371" width="56" height="32" class="nonterminal"></rect><text class="nonterminal" x="145" y="2391">FIELD</text></a><line x1="125" y1="2387" x2="135" y2="2387" class="line"></line><line x1="191" y1="2387" x2="201" y2="2387" class="line"></line><a xlink:href="#FIELD" xlink:title="FIELD"><rect x="213" y="2373" width="56" height="32"></rect><rect x="211" y="2371" width="56" height="32" class="nonterminal"></rect><text class="nonterminal" x="221" y="2391">FIELD</text></a><line x1="201" y1="2387" x2="211" y2="2387" class="line"></line><line x1="267" y1="2387" x2="277" y2="2387" class="line"></line><line x1="277" y1="2387" x2="847" y2="2387" class="line"></line><line x1="29" y1="2377" x2="29" y2="2397" class="line"></line><line x1="857" y1="2397" x2="857" y2="2377" class="line"></line><line x1="29" y1="2397" x2="29" y2="2421" class="line"></line><line x1="857" y1="2421" x2="857" y2="2397" class="line"></line><path d="M29 2421 Q29 2431 39 2431" class="line"></path><path d="M847 2431 Q857 2431 857 2421" class="line"></path><rect x="71" y="2417" width="74" height="32" rx="10"></rect><rect x="69" y="2415" width="74" height="32" class="terminal" rx="10"></rect><text class="terminal" x="79" y="2435">bitCount</text><line x1="59" y1="2431" x2="69" y2="2431" class="line"></line><line x1="143" y1="2431" x2="153" y2="2431" class="line"></line><line x1="39" y1="2431" x2="59" y2="2431" class="line"></line><line x1="153" y1="2431" x2="173" y2="2431" class="line"></line><path d="M39 2431 Q49 2431 49 2441" class="line"></path><path d="M163 2441 Q163 2431 173 2431" class="line"></path><line x1="49" y1="2441" x2="49" y2="2465" class="line"></line><line x1="163" y1="2465" x2="163" y2="2441" class="line"></line><path d="M49 2465 Q49 2475 59 2475" class="line"></path><path d="M153 2475 Q163 2475 163 2465" class="line"></path><rect x="71" y="2461" width="60" height="32" rx="10"></rect><rect x="69" y="2459" width="60" height="32" class="terminal" rx="10"></rect><text class="terminal" x="79" y="2479">bitNot</text><line x1="59" y1="2475" x2="69" y2="2475" class="line"></line><line x1="129" y1="2475" x2="139" y2="2475" class="line"></line><line x1="139" y1="2475" x2="153" y2="2475" class="line"></line><a xlink:href="#FIELD" xlink:title="FIELD"><rect x="185" y="2417" width="56" height="32"></rect><rect x="183" y="2415" width="56" height="32" class="nonterminal"></rect><text class="nonterminal" x="193" y="2435">FIELD</text></a><line x1="173" y1="2431" x2="183" y2="2431" class="line"></line><line x1="239" y1="2431" x2="249" y2="2431" class="line"></line><line x1="249" y1="2431" x2="847" y2="2431" class="line"></line><line x1="29" y1="2421" x2="29" y2="2441" class="line"></line><line x1="857" y1="2441" x2="857" y2="2421" class="line"></line><line x1="29" y1="2441" x2="29" y2="2509" class="line"></line><line x1="857" y1="2509" x2="857" y2="2441" class="line"></line><path d="M29 2509 Q29 2519 39 2519" class="line"></path><path d="M847 2519 Q857 2519 857 2509" class="line"></path><rect x="71" y="2505" width="62" height="32" rx="10"></rect><rect x="69" y="2503" width="62" height="32" class="terminal" rx="10"></rect><text class="terminal" x="79" y="2523">bitAnd</text><line x1="59" y1="2519" x2="69" y2="2519" class="line"></line><line x1="131" y1="2519" x2="141" y2="2519" class="line"></line><line x1="141" y1="2519" x2="149" y2="2519" class="line"></line><line x1="39" y1="2519" x2="59" y2="2519" class="line"></line><line x1="149" y1="2519" x2="169" y2="2519" class="line"></line><path d="M39 2519 Q49 2519 49 2529" class="line"></path><path d="M159 2529 Q159 2519 169 2519" class="line"></path><line x1="49" y1="2529" x2="49" y2="2553" class="line"></line><line x1="159" y1="2553" x2="159" y2="2529" class="line"></line><path d="M49 2553 Q49 2563 59 2563" class="line"></path><path d="M149 2563 Q159 2563 159 2553" class="line"></path><rect x="71" y="2549" width="70" height="32" rx="10"></rect><rect x="69" y="2547" width="70" height="32" class="terminal" rx="10"></rect><text class="terminal" x="79" y="2567">bitNand</text><line x1="59" y1="2563" x2="69" y2="2563" class="line"></line><line x1="139" y1="2563" x2="149" y2="2563" class="line"></line><line x1="49" y1="2553" x2="49" y2="2573" class="line"></line><line x1="159" y1="2573" x2="159" y2="2553" class="line"></line><line x1="49" y1="2573" x2="49" y2="2597" class="line"></line><line x1="159" y1="2597" x2="159" y2="2573" class="line"></line><path d="M49 2597 Q49 2607 59 2607" class="line"></path><path d="M149 2607 Q159 2607 159 2597" class="line"></path><rect x="71" y="2593" width="54" height="32" rx="10"></rect><rect x="69" y="2591" width="54" height="32" class="terminal" rx="10"></rect><text class="terminal" x="79" y="2611">bitOr</text><line x1="59" y1="2607" x2="69" y2="2607" class="line"></line><line x1="123" y1="2607" x2="133" y2="2607" class="line"></line><line x1="133" y1="2607" x2="149" y2="2607" class="line"></line><line x1="49" y1="2597" x2="49" y2="2617" class="line"></line><line x1="159" y1="2617" x2="159" y2="2597" class="line"></line><line x1="49" y1="2617" x2="49" y2="2641" class="line"></line><line x1="159" y1="2641" x2="159" y2="2617" class="line"></line><path d="M49 2641 Q49 2651 59 2651" class="line"></path><path d="M149 2651 Q159 2651 159 2641" class="line"></path><rect x="71" y="2637" width="60" height="32" rx="10"></rect><rect x="69" y="2635" width="60" height="32" class="terminal" rx="10"></rect><text class="terminal" x="79" y="2655">bitNor</text><line x1="59" y1="2651" x2="69" y2="2651" class="line"></line><line x1="129" y1="2651" x2="139" y2="2651" class="line"></line><line x1="139" y1="2651" x2="149" y2="2651" class="line"></line><line x1="49" y1="2641" x2="49" y2="2661" class="line"></line><line x1="159" y1="2661" x2="159" y2="2641" class="line"></line><line x1="49" y1="2661" x2="49" y2="2685" class="line"></line><line x1="159" y1="2685" x2="159" y2="2661" class="line"></line><path d="M49 2685 Q49 2695 59 2695" class="line"></path><path d="M149 2695 Q159 2695 159 2685" class="line"></path><rect x="71" y="2681" width="60" height="32" rx="10"></rect><rect x="69" y="2679" width="60" height="32" class="terminal" rx="10"></rect><text class="terminal" x="79" y="2699">bitXor</text><line x1="59" y1="2695" x2="69" y2="2695" class="line"></line><line x1="129" y1="2695" x2="139" y2="2695" class="line"></line><line x1="139" y1="2695" x2="149" y2="2695" class="line"></line><line x1="49" y1="2685" x2="49" y2="2705" class="line"></line><line x1="159" y1="2705" x2="159" y2="2685" class="line"></line><line x1="49" y1="2705" x2="49" y2="2729" class="line"></line><line x1="159" y1="2729" x2="159" y2="2705" class="line"></line><path d="M49 2729 Q49 2739 59 2739" class="line"></path><path d="M149 2739 Q159 2739 159 2729" class="line"></path><rect x="71" y="2725" width="70" height="32" rx="10"></rect><rect x="69" y="2723" width="70" height="32" class="terminal" rx="10"></rect><text class="terminal" x="79" y="2743">bitXNor</text><line x1="59" y1="2739" x2="69" y2="2739" class="line"></line><line x1="139" y1="2739" x2="149" y2="2739" class="line"></line><line x1="49" y1="2729" x2="49" y2="2749" class="line"></line><line x1="159" y1="2749" x2="159" y2="2729" class="line"></line><line x1="49" y1="2749" x2="49" y2="2773" class="line"></line><line x1="159" y1="2773" x2="159" y2="2749" class="line"></line><path d="M49 2773 Q49 2783 59 2783" class="line"></path><path d="M149 2783 Q159 2783 159 2773" class="line"></path><rect x="71" y="2769" width="38" height="32" rx="10"></rect><rect x="69" y="2767" width="38" height="32" class="terminal" rx="10"></rect><text class="terminal" x="79" y="2787">shl</text><line x1="59" y1="2783" x2="69" y2="2783" class="line"></line><line x1="107" y1="2783" x2="117" y2="2783" class="line"></line><line x1="117" y1="2783" x2="149" y2="2783" class="line"></line><line x1="49" y1="2773" x2="49" y2="2793" class="line"></line><line x1="159" y1="2793" x2="159" y2="2773" class="line"></line><line x1="49" y1="2793" x2="49" y2="2817" class="line"></line><line x1="159" y1="2817" x2="159" y2="2793" class="line"></line><path d="M49 2817 Q49 2827 59 2827" class="line"></path><path d="M149 2827 Q159 2827 159 2817" class="line"></path><rect x="71" y="2813" width="40" height="32" rx="10"></rect><rect x="69" y="2811" width="40" height="32" class="terminal" rx="10"></rect><text class="terminal" x="79" y="2831">shr</text><line x1="59" y1="2827" x2="69" y2="2827" class="line"></line><line x1="109" y1="2827" x2="119" y2="2827" class="line"></line><line x1="119" y1="2827" x2="149" y2="2827" class="line"></line><a xlink:href="#FIELD" xlink:title="FIELD"><rect x="181" y="2505" width="56" height="32"></rect><rect x="179" y="2503" width="56" height="32" class="nonterminal"></rect><text class="nonterminal" x="189" y="2523">FIELD</text></a><line x1="169" y1="2519" x2="179" y2="2519" class="line"></line><line x1="235" y1="2519" x2="245" y2="2519" class="line"></line><a xlink:href="#FIELD" xlink:title="FIELD"><rect x="257" y="2505" width="56" height="32"></rect><rect x="255" y="2503" width="56" height="32" class="nonterminal"></rect><text class="nonterminal" x="265" y="2523">FIELD</text></a><line x1="245" y1="2519" x2="255" y2="2519" class="line"></line><line x1="311" y1="2519" x2="321" y2="2519" class="line"></line><line x1="321" y1="2519" x2="847" y2="2519" class="line"></line><line x1="29" y1="2509" x2="29" y2="2529" class="line"></line><line x1="857" y1="2529" x2="857" y2="2509" class="line"></line><line x1="29" y1="2529" x2="29" y2="2861" class="line"></line><line x1="857" y1="2861" x2="857" y2="2529" class="line"></line><path d="M29 2861 Q29 2871 39 2871" class="line"></path><path d="M847 2871 Q857 2871 857 2861" class="line"></path><a xlink:href="#FIELD" xlink:title="FIELD"><rect x="51" y="2857" width="56" height="32"></rect><rect x="49" y="2855" width="56" height="32" class="nonterminal"></rect><text class="nonterminal" x="59" y="2875">FIELD</text></a><line x1="39" y1="2871" x2="49" y2="2871" class="line"></line><line x1="105" y1="2871" x2="115" y2="2871" class="line"></line><rect x="127" y="2857" width="44" height="32" rx="10"></rect><rect x="125" y="2855" width="44" height="32" class="terminal" rx="10"></rect><text class="terminal" x="135" y="2875">neg</text><line x1="115" y1="2871" x2="125" y2="2871" class="line"></line><line x1="169" y1="2871" x2="179" y2="2871" class="line"></line><line x1="179" y1="2871" x2="847" y2="2871" class="line"></line><line x1="29" y1="2861" x2="29" y2="2881" class="line"></line><line x1="857" y1="2881" x2="857" y2="2861" class="line"></line><line x1="29" y1="2881" x2="29" y2="2905" class="line"></line><line x1="857" y1="2905" x2="857" y2="2881" class="line"></line><path d="M29 2905 Q29 2915 39 2915" class="line"></path><path d="M847 2915 Q857 2915 857 2905" class="line"></path><a xlink:href="#FIELD" xlink:title="FIELD"><rect x="51" y="2901" width="56" height="32"></rect><rect x="49" y="2899" width="56" height="32" class="nonterminal"></rect><text class="nonterminal" x="59" y="2919">FIELD</text></a><line x1="39" y1="2915" x2="49" y2="2915" class="line"></line><line x1="105" y1="2915" x2="115" y2="2915" class="line"></line><rect x="147" y="2901" width="44" height="32" rx="10"></rect><rect x="145" y="2899" width="44" height="32" class="terminal" rx="10"></rect><text class="terminal" x="155" y="2919">add</text><line x1="135" y1="2915" x2="145" y2="2915" class="line"></line><line x1="189" y1="2915" x2="199" y2="2915" class="line"></line><line x1="199" y1="2915" x2="203" y2="2915" class="line"></line><line x1="115" y1="2915" x2="135" y2="2915" class="line"></line><line x1="203" y1="2915" x2="223" y2="2915" class="line"></line><path d="M115 2915 Q125 2915 125 2925" class="line"></path><path d="M213 2925 Q213 2915 223 2915" class="line"></path><line x1="125" y1="2925" x2="125" y2="2949" class="line"></line><line x1="213" y1="2949" x2="213" y2="2925" class="line"></line><path d="M125 2949 Q125 2959 135 2959" class="line"></path><path d="M203 2959 Q213 2959 213 2949" class="line"></path><rect x="147" y="2945" width="42" height="32" rx="10"></rect><rect x="145" y="2943" width="42" height="32" class="terminal" rx="10"></rect><text class="terminal" x="155" y="2963">sub</text><line x1="135" y1="2959" x2="145" y2="2959" class="line"></line><line x1="187" y1="2959" x2="197" y2="2959" class="line"></line><line x1="197" y1="2959" x2="203" y2="2959" class="line"></line><line x1="125" y1="2949" x2="125" y2="2969" class="line"></line><line x1="213" y1="2969" x2="213" y2="2949" class="line"></line><line x1="125" y1="2969" x2="125" y2="2993" class="line"></line><line x1="213" y1="2993" x2="213" y2="2969" class="line"></line><path d="M125 2993 Q125 3003 135 3003" class="line"></path><path d="M203 3003 Q213 3003 213 2993" class="line"></path><rect x="147" y="2989" width="44" height="32" rx="10"></rect><rect x="145" y="2987" width="44" height="32" class="terminal" rx="10"></rect><text class="terminal" x="155" y="3007">mul</text><line x1="135" y1="3003" x2="145" y2="3003" class="line"></line><line x1="189" y1="3003" x2="199" y2="3003" class="line"></line><line x1="199" y1="3003" x2="203" y2="3003" class="line"></line><line x1="125" y1="2993" x2="125" y2="3013" class="line"></line><line x1="213" y1="3013" x2="213" y2="2993" class="line"></line><line x1="125" y1="3013" x2="125" y2="3037" class="line"></line><line x1="213" y1="3037" x2="213" y2="3013" class="line"></line><path d="M125 3037 Q125 3047 135 3047" class="line"></path><path d="M203 3047 Q213 3047 213 3037" class="line"></path><rect x="147" y="3033" width="40" height="32" rx="10"></rect><rect x="145" y="3031" width="40" height="32" class="terminal" rx="10"></rect><text class="terminal" x="155" y="3051">div</text><line x1="135" y1="3047" x2="145" y2="3047" class="line"></line><line x1="185" y1="3047" x2="195" y2="3047" class="line"></line><line x1="195" y1="3047" x2="203" y2="3047" class="line"></line><line x1="125" y1="3037" x2="125" y2="3057" class="line"></line><line x1="213" y1="3057" x2="213" y2="3037" class="line"></line><line x1="125" y1="3057" x2="125" y2="3081" class="line"></line><line x1="213" y1="3081" x2="213" y2="3057" class="line"></line><path d="M125 3081 Q125 3091 135 3091" class="line"></path><path d="M203 3091 Q213 3091 213 3081" class="line"></path><rect x="147" y="3077" width="48" height="32" rx="10"></rect><rect x="145" y="3075" width="48" height="32" class="terminal" rx="10"></rect><text class="terminal" x="155" y="3095">mod</text><line x1="135" y1="3091" x2="145" y2="3091" class="line"></line><line x1="193" y1="3091" x2="203" y2="3091" class="line"></line><a xlink:href="#FIELD" xlink:title="FIELD"><rect x="235" y="2901" width="56" height="32"></rect><rect x="233" y="2899" width="56" height="32" class="nonterminal"></rect><text class="nonterminal" x="243" y="2919">FIELD</text></a><line x1="223" y1="2915" x2="233" y2="2915" class="line"></line><line x1="289" y1="2915" x2="299" y2="2915" class="line"></line><line x1="299" y1="2915" x2="847" y2="2915" class="line"></line><line x1="29" y1="2905" x2="29" y2="2925" class="line"></line><line x1="857" y1="2925" x2="857" y2="2905" class="line"></line><line x1="29" y1="2925" x2="29" y2="3125" class="line"></line><line x1="857" y1="3125" x2="857" y2="2925" class="line"></line><path d="M29 3125 Q29 3135 39 3135" class="line"></path><path d="M847 3135 Q857 3135 857 3125" class="line"></path><rect x="71" y="3121" width="46" height="32" rx="10"></rect><rect x="69" y="3119" width="46" height="32" class="terminal" rx="10"></rect><text class="terminal" x="79" y="3139">sign</text><line x1="59" y1="3135" x2="69" y2="3135" class="line"></line><line x1="115" y1="3135" x2="125" y2="3135" class="line"></line><line x1="125" y1="3135" x2="129" y2="3135" class="line"></line><line x1="39" y1="3135" x2="59" y2="3135" class="line"></line><line x1="129" y1="3135" x2="149" y2="3135" class="line"></line><path d="M39 3135 Q49 3135 49 3145" class="line"></path><path d="M139 3145 Q139 3135 149 3135" class="line"></path><line x1="49" y1="3145" x2="49" y2="3169" class="line"></line><line x1="139" y1="3169" x2="139" y2="3145" class="line"></line><path d="M49 3169 Q49 3179 59 3179" class="line"></path><path d="M129 3179 Q139 3179 139 3169" class="line"></path><rect x="71" y="3165" width="42" height="32" rx="10"></rect><rect x="69" y="3163" width="42" height="32" class="terminal" rx="10"></rect><text class="terminal" x="79" y="3183">abs</text><line x1="59" y1="3179" x2="69" y2="3179" class="line"></line><line x1="111" y1="3179" x2="121" y2="3179" class="line"></line><line x1="121" y1="3179" x2="129" y2="3179" class="line"></line><line x1="49" y1="3169" x2="49" y2="3189" class="line"></line><line x1="139" y1="3189" x2="139" y2="3169" class="line"></line><line x1="49" y1="3189" x2="49" y2="3213" class="line"></line><line x1="139" y1="3213" x2="139" y2="3189" class="line"></line><path d="M49 3213 Q49 3223 59 3223" class="line"></path><path d="M129 3223 Q139 3223 139 3213" class="line"></path><rect x="71" y="3209" width="50" height="32" rx="10"></rect><rect x="69" y="3207" width="50" height="32" class="terminal" rx="10"></rect><text class="terminal" x="79" y="3227">floor</text><line x1="59" y1="3223" x2="69" y2="3223" class="line"></line><line x1="119" y1="3223" x2="129" y2="3223" class="line"></line><line x1="49" y1="3213" x2="49" y2="3233" class="line"></line><line x1="139" y1="3233" x2="139" y2="3213" class="line"></line><line x1="49" y1="3233" x2="49" y2="3257" class="line"></line><line x1="139" y1="3257" x2="139" y2="3233" class="line"></line><path d="M49 3257 Q49 3267 59 3267" class="line"></path><path d="M129 3267 Q139 3267 139 3257" class="line"></path><rect x="71" y="3253" width="42" height="32" rx="10"></rect><rect x="69" y="3251" width="42" height="32" class="terminal" rx="10"></rect><text class="terminal" x="79" y="3271">ceil</text><line x1="59" y1="3267" x2="69" y2="3267" class="line"></line><line x1="111" y1="3267" x2="121" y2="3267" class="line"></line><line x1="121" y1="3267" x2="129" y2="3267" class="line"></line><line x1="49" y1="3257" x2="49" y2="3277" class="line"></line><line x1="139" y1="3277" x2="139" y2="3257" class="line"></line><line x1="49" y1="3277" x2="49" y2="3301" class="line"></line><line x1="139" y1="3301" x2="139" y2="3277" class="line"></line><path d="M49 3301 Q49 3311 59 3311" class="line"></path><path d="M129 3311 Q139 3311 139 3301" class="line"></path><rect x="71" y="3297" width="46" height="32" rx="10"></rect><rect x="69" y="3295" width="46" height="32" class="terminal" rx="10"></rect><text class="terminal" x="79" y="3315">sqrt</text><line x1="59" y1="3311" x2="69" y2="3311" class="line"></line><line x1="115" y1="3311" x2="125" y2="3311" class="line"></line><line x1="125" y1="3311" x2="129" y2="3311" class="line"></line><line x1="49" y1="3301" x2="49" y2="3321" class="line"></line><line x1="139" y1="3321" x2="139" y2="3301" class="line"></line><line x1="49" y1="3321" x2="49" y2="3345" class="line"></line><line x1="139" y1="3345" x2="139" y2="3321" class="line"></line><path d="M49 3345 Q49 3355 59 3355" class="line"></path><path d="M129 3355 Q139 3355 139 3345" class="line"></path><rect x="71" y="3341" width="44" height="32" rx="10"></rect><rect x="69" y="3339" width="44" height="32" class="terminal" rx="10"></rect><text class="terminal" x="79" y="3359">exp</text><line x1="59" y1="3355" x2="69" y2="3355" class="line"></line><line x1="113" y1="3355" x2="123" y2="3355" class="line"></line><line x1="123" y1="3355" x2="129" y2="3355" class="line"></line><line x1="49" y1="3345" x2="49" y2="3365" class="line"></line><line x1="139" y1="3365" x2="139" y2="3345" class="line"></line><line x1="49" y1="3365" x2="49" y2="3389" class="line"></line><line x1="139" y1="3389" x2="139" y2="3365" class="line"></line><path d="M49 3389 Q49 3399 59 3399" class="line"></path><path d="M129 3399 Q139 3399 139 3389" class="line"></path><rect x="71" y="3385" width="32" height="32" rx="10"></rect><rect x="69" y="3383" width="32" height="32" class="terminal" rx="10"></rect><text class="terminal" x="79" y="3403">ln</text><line x1="59" y1="3399" x2="69" y2="3399" class="line"></line><line x1="101" y1="3399" x2="111" y2="3399" class="line"></line><line x1="111" y1="3399" x2="129" y2="3399" class="line"></line><line x1="49" y1="3389" x2="49" y2="3409" class="line"></line><line x1="139" y1="3409" x2="139" y2="3389" class="line"></line><line x1="49" y1="3409" x2="49" y2="3433" class="line"></line><line x1="139" y1="3433" x2="139" y2="3409" class="line"></line><path d="M49 3433 Q49 3443 59 3443" class="line"></path><path d="M129 3443 Q139 3443 139 3433" class="line"></path><rect x="71" y="3429" width="50" height="32" rx="10"></rect><rect x="69" y="3427" width="50" height="32" class="terminal" rx="10"></rect><text class="terminal" x="79" y="3447">acos</text><line x1="59" y1="3443" x2="69" y2="3443" class="line"></line><line x1="119" y1="3443" x2="129" y2="3443" class="line"></line><line x1="49" y1="3433" x2="49" y2="3453" class="line"></line><line x1="139" y1="3453" x2="139" y2="3433" class="line"></line><line x1="49" y1="3453" x2="49" y2="3477" class="line"></line><line x1="139" y1="3477" x2="139" y2="3453" class="line"></line><path d="M49 3477 Q49 3487 59 3487" class="line"></path><path d="M129 3487 Q139 3487 139 3477" class="line"></path><rect x="71" y="3473" width="46" height="32" rx="10"></rect><rect x="69" y="3471" width="46" height="32" class="terminal" rx="10"></rect><text class="terminal" x="79" y="3491">asin</text><line x1="59" y1="3487" x2="69" y2="3487" class="line"></line><line x1="115" y1="3487" x2="125" y2="3487" class="line"></line><line x1="125" y1="3487" x2="129" y2="3487" class="line"></line><line x1="49" y1="3477" x2="49" y2="3497" class="line"></line><line x1="139" y1="3497" x2="139" y2="3477" class="line"></line><line x1="49" y1="3497" x2="49" y2="3521" class="line"></line><line x1="139" y1="3521" x2="139" y2="3497" class="line"></line><path d="M49 3521 Q49 3531 59 3531" class="line"></path><path d="M129 3531 Q139 3531 139 3521" class="line"></path><rect x="71" y="3517" width="48" height="32" rx="10"></rect><rect x="69" y="3515" width="48" height="32" class="terminal" rx="10"></rect><text class="terminal" x="79" y="3535">atan</text><line x1="59" y1="3531" x2="69" y2="3531" class="line"></line><line x1="117" y1="3531" x2="127" y2="3531" class="line"></line><line x1="127" y1="3531" x2="129" y2="3531" class="line"></line><line x1="49" y1="3521" x2="49" y2="3541" class="line"></line><line x1="139" y1="3541" x2="139" y2="3521" class="line"></line><line x1="49" y1="3541" x2="49" y2="3565" class="line"></line><line x1="139" y1="3565" x2="139" y2="3541" class="line"></line><path d="M49 3565 Q49 3575 59 3575" class="line"></path><path d="M129 3575 Q139 3575 139 3565" class="line"></path><rect x="71" y="3561" width="42" height="32" rx="10"></rect><rect x="69" y="3559" width="42" height="32" class="terminal" rx="10"></rect><text class="terminal" x="79" y="3579">cos</text><line x1="59" y1="3575" x2="69" y2="3575" class="line"></line><line x1="111" y1="3575" x2="121" y2="3575" class="line"></line><line x1="121" y1="3575" x2="129" y2="3575" class="line"></line><line x1="49" y1="3565" x2="49" y2="3585" class="line"></line><line x1="139" y1="3585" x2="139" y2="3565" class="line"></line><line x1="49" y1="3585" x2="49" y2="3609" class="line"></line><line x1="139" y1="3609" x2="139" y2="3585" class="line"></line><path d="M49 3609 Q49 3619 59 3619" class="line"></path><path d="M129 3619 Q139 3619 139 3609" class="line"></path><rect x="71" y="3605" width="38" height="32" rx="10"></rect><rect x="69" y="3603" width="38" height="32" class="terminal" rx="10"></rect><text class="terminal" x="79" y="3623">sin</text><line x1="59" y1="3619" x2="69" y2="3619" class="line"></line><line x1="107" y1="3619" x2="117" y2="3619" class="line"></line><line x1="117" y1="3619" x2="129" y2="3619" class="line"></line><line x1="49" y1="3609" x2="49" y2="3629" class="line"></line><line x1="139" y1="3629" x2="139" y2="3609" class="line"></line><line x1="49" y1="3629" x2="49" y2="3653" class="line"></line><line x1="139" y1="3653" x2="139" y2="3629" class="line"></line><path d="M49 3653 Q49 3663 59 3663" class="line"></path><path d="M129 3663 Q139 3663 139 3653" class="line"></path><rect x="71" y="3649" width="40" height="32" rx="10"></rect><rect x="69" y="3647" width="40" height="32" class="terminal" rx="10"></rect><text class="terminal" x="79" y="3667">tan</text><line x1="59" y1="3663" x2="69" y2="3663" class="line"></line><line x1="109" y1="3663" x2="119" y2="3663" class="line"></line><line x1="119" y1="3663" x2="129" y2="3663" class="line"></line><line x1="49" y1="3653" x2="49" y2="3673" class="line"></line><line x1="139" y1="3673" x2="139" y2="3653" class="line"></line><line x1="49" y1="3673" x2="49" y2="3697" class="line"></line><line x1="139" y1="3697" x2="139" y2="3673" class="line"></line><path d="M49 3697 Q49 3707 59 3707" class="line"></path><path d="M129 3707 Q139 3707 139 3697" class="line"></path><rect x="71" y="3693" width="40" height="32" rx="10"></rect><rect x="69" y="3691" width="40" height="32" class="terminal" rx="10"></rect><text class="terminal" x="79" y="3711">cot</text><line x1="59" y1="3707" x2="69" y2="3707" class="line"></line><line x1="109" y1="3707" x2="119" y2="3707" class="line"></line><line x1="119" y1="3707" x2="129" y2="3707" class="line"></line><line x1="49" y1="3697" x2="49" y2="3717" class="line"></line><line x1="139" y1="3717" x2="139" y2="3697" class="line"></line><line x1="49" y1="3717" x2="49" y2="3741" class="line"></line><line x1="139" y1="3741" x2="139" y2="3717" class="line"></line><path d="M49 3741 Q49 3751 59 3751" class="line"></path><path d="M129 3751 Q139 3751 139 3741" class="line"></path><rect x="71" y="3737" width="46" height="32" rx="10"></rect><rect x="69" y="3735" width="46" height="32" class="terminal" rx="10"></rect><text class="terminal" x="79" y="3755">sinh</text><line x1="59" y1="3751" x2="69" y2="3751" class="line"></line><line x1="115" y1="3751" x2="125" y2="3751" class="line"></line><line x1="125" y1="3751" x2="129" y2="3751" class="line"></line><line x1="49" y1="3741" x2="49" y2="3761" class="line"></line><line x1="139" y1="3761" x2="139" y2="3741" class="line"></line><line x1="49" y1="3761" x2="49" y2="3785" class="line"></line><line x1="139" y1="3785" x2="139" y2="3761" class="line"></line><path d="M49 3785 Q49 3795 59 3795" class="line"></path><path d="M129 3795 Q139 3795 139 3785" class="line"></path><rect x="71" y="3781" width="50" height="32" rx="10"></rect><rect x="69" y="3779" width="50" height="32" class="terminal" rx="10"></rect><text class="terminal" x="79" y="3799">cosh</text><line x1="59" y1="3795" x2="69" y2="3795" class="line"></line><line x1="119" y1="3795" x2="129" y2="3795" class="line"></line><line x1="49" y1="3785" x2="49" y2="3805" class="line"></line><line x1="139" y1="3805" x2="139" y2="3785" class="line"></line><line x1="49" y1="3805" x2="49" y2="3829" class="line"></line><line x1="139" y1="3829" x2="139" y2="3805" class="line"></line><path d="M49 3829 Q49 3839 59 3839" class="line"></path><path d="M129 3839 Q139 3839 139 3829" class="line"></path><rect x="71" y="3825" width="48" height="32" rx="10"></rect><rect x="69" y="3823" width="48" height="32" class="terminal" rx="10"></rect><text class="terminal" x="79" y="3843">tanh</text><line x1="59" y1="3839" x2="69" y2="3839" class="line"></line><line x1="117" y1="3839" x2="127" y2="3839" class="line"></line><line x1="127" y1="3839" x2="129" y2="3839" class="line"></line><line x1="49" y1="3829" x2="49" y2="3849" class="line"></line><line x1="139" y1="3849" x2="139" y2="3829" class="line"></line><line x1="49" y1="3849" x2="49" y2="3873" class="line"></line><line x1="139" y1="3873" x2="139" y2="3849" class="line"></line><path d="M49 3873 Q49 3883 59 3883" class="line"></path><path d="M129 3883 Q139 3883 139 3873" class="line"></path><rect x="71" y="3869" width="48" height="32" rx="10"></rect><rect x="69" y="3867" width="48" height="32" class="terminal" rx="10"></rect><text class="terminal" x="79" y="3887">coth</text><line x1="59" y1="3883" x2="69" y2="3883" class="line"></line><line x1="117" y1="3883" x2="127" y2="3883" class="line"></line><line x1="127" y1="3883" x2="129" y2="3883" class="line"></line><line x1="49" y1="3873" x2="49" y2="3893" class="line"></line><line x1="139" y1="3893" x2="139" y2="3873" class="line"></line><line x1="49" y1="3893" x2="49" y2="3917" class="line"></line><line x1="139" y1="3917" x2="139" y2="3893" class="line"></line><path d="M49 3917 Q49 3927 59 3927" class="line"></path><path d="M129 3927 Q139 3927 139 3917" class="line"></path><rect x="71" y="3913" width="44" height="32" rx="10"></rect><rect x="69" y="3911" width="44" height="32" class="terminal" rx="10"></rect><text class="terminal" x="79" y="3931">deg</text><line x1="59" y1="3927" x2="69" y2="3927" class="line"></line><line x1="113" y1="3927" x2="123" y2="3927" class="line"></line><line x1="123" y1="3927" x2="129" y2="3927" class="line"></line><line x1="49" y1="3917" x2="49" y2="3937" class="line"></line><line x1="139" y1="3937" x2="139" y2="3917" class="line"></line><line x1="49" y1="3937" x2="49" y2="3961" class="line"></line><line x1="139" y1="3961" x2="139" y2="3937" class="line"></line><path d="M49 3961 Q49 3971 59 3971" class="line"></path><path d="M129 3971 Q139 3971 139 3961" class="line"></path><rect x="71" y="3957" width="42" height="32" rx="10"></rect><rect x="69" y="3955" width="42" height="32" class="terminal" rx="10"></rect><text class="terminal" x="79" y="3975">rad</text><line x1="59" y1="3971" x2="69" y2="3971" class="line"></line><line x1="111" y1="3971" x2="121" y2="3971" class="line"></line><line x1="121" y1="3971" x2="129" y2="3971" class="line"></line><a xlink:href="#FIELD" xlink:title="FIELD"><rect x="161" y="3121" width="56" height="32"></rect><rect x="159" y="3119" width="56" height="32" class="nonterminal"></rect><text class="nonterminal" x="169" y="3139">FIELD</text></a><line x1="149" y1="3135" x2="159" y2="3135" class="line"></line><line x1="215" y1="3135" x2="225" y2="3135" class="line"></line><line x1="225" y1="3135" x2="847" y2="3135" class="line"></line><line x1="29" y1="3125" x2="29" y2="3145" class="line"></line><line x1="857" y1="3145" x2="857" y2="3125" class="line"></line><line x1="29" y1="3145" x2="29" y2="4005" class="line"></line><line x1="857" y1="4005" x2="857" y2="3145" class="line"></line><path d="M29 4005 Q29 4015 39 4015" class="line"></path><path d="M847 4015 Q857 4015 857 4005" class="line"></path><rect x="71" y="4001" width="40" height="32" rx="10"></rect><rect x="69" y="3999" width="40" height="32" class="terminal" rx="10"></rect><text class="terminal" x="79" y="4019">log</text><line x1="59" y1="4015" x2="69" y2="4015" class="line"></line><line x1="109" y1="4015" x2="119" y2="4015" class="line"></line><line x1="119" y1="4015" x2="141" y2="4015" class="line"></line><line x1="39" y1="4015" x2="59" y2="4015" class="line"></line><line x1="141" y1="4015" x2="161" y2="4015" class="line"></line><path d="M39 4015 Q49 4015 49 4025" class="line"></path><path d="M151 4025 Q151 4015 161 4015" class="line"></path><line x1="49" y1="4025" x2="49" y2="4049" class="line"></line><line x1="151" y1="4049" x2="151" y2="4025" class="line"></line><path d="M49 4049 Q49 4059 59 4059" class="line"></path><path d="M141 4059 Q151 4059 151 4049" class="line"></path><rect x="71" y="4045" width="62" height="32" rx="10"></rect><rect x="69" y="4043" width="62" height="32" class="terminal" rx="10"></rect><text class="terminal" x="79" y="4063">power</text><line x1="59" y1="4059" x2="69" y2="4059" class="line"></line><line x1="131" y1="4059" x2="141" y2="4059" class="line"></line><line x1="49" y1="4049" x2="49" y2="4069" class="line"></line><line x1="151" y1="4069" x2="151" y2="4049" class="line"></line><line x1="49" y1="4069" x2="49" y2="4093" class="line"></line><line x1="151" y1="4093" x2="151" y2="4069" class="line"></line><path d="M49 4093 Q49 4103 59 4103" class="line"></path><path d="M141 4103 Q151 4103 151 4093" class="line"></path><rect x="71" y="4089" width="58" height="32" rx="10"></rect><rect x="69" y="4087" width="58" height="32" class="terminal" rx="10"></rect><text class="terminal" x="79" y="4107">atan2</text><line x1="59" y1="4103" x2="69" y2="4103" class="line"></line><line x1="127" y1="4103" x2="137" y2="4103" class="line"></line><line x1="137" y1="4103" x2="141" y2="4103" class="line"></line><a xlink:href="#FIELD" xlink:title="FIELD"><rect x="173" y="4001" width="56" height="32"></rect><rect x="171" y="3999" width="56" height="32" class="nonterminal"></rect><text class="nonterminal" x="181" y="4019">FIELD</text></a><line x1="161" y1="4015" x2="171" y2="4015" class="line"></line><line x1="227" y1="4015" x2="237" y2="4015" class="line"></line><a xlink:href="#FIELD" xlink:title="FIELD"><rect x="249" y="4001" width="56" height="32"></rect><rect x="247" y="3999" width="56" height="32" class="nonterminal"></rect><text class="nonterminal" x="257" y="4019">FIELD</text></a><line x1="237" y1="4015" x2="247" y2="4015" class="line"></line><line x1="303" y1="4015" x2="313" y2="4015" class="line"></line><line x1="313" y1="4015" x2="847" y2="4015" class="line"></line><line x1="29" y1="4005" x2="29" y2="4025" class="line"></line><line x1="857" y1="4025" x2="857" y2="4005" class="line"></line><line x1="29" y1="4025" x2="29" y2="4137" class="line"></line><line x1="857" y1="4137" x2="857" y2="4025" class="line"></line><path d="M29 4137 Q29 4147 39 4147" class="line"></path><path d="M847 4147 Q857 4147 857 4137" class="line"></path><rect x="51" y="4133" width="58" height="32" rx="10"></rect><rect x="49" y="4131" width="58" height="32" class="terminal" rx="10"></rect><text class="terminal" x="59" y="4151">round</text><line x1="39" y1="4147" x2="49" y2="4147" class="line"></line><line x1="107" y1="4147" x2="117" y2="4147" class="line"></line><a xlink:href="#FIELD" xlink:title="FIELD"><rect x="129" y="4133" width="56" height="32"></rect><rect x="127" y="4131" width="56" height="32" class="nonterminal"></rect><text class="nonterminal" x="137" y="4151">FIELD</text></a><line x1="117" y1="4147" x2="127" y2="4147" class="line"></line><line x1="183" y1="4147" x2="193" y2="4147" class="line"></line><a xlink:href="#FIELD" xlink:title="FIELD"><rect x="225" y="4133" width="56" height="32"></rect><rect x="223" y="4131" width="56" height="32" class="nonterminal"></rect><text class="nonterminal" x="233" y="4151">FIELD</text></a><line x1="213" y1="4147" x2="223" y2="4147" class="line"></line><line x1="279" y1="4147" x2="289" y2="4147" class="line"></line><line x1="193" y1="4147" x2="213" y2="4147" class="line"></line><line x1="289" y1="4147" x2="309" y2="4147" class="line"></line><path d="M193 4147 Q203 4147 203 4157" class="line"></path><path d="M299 4157 Q299 4147 309 4147" class="line"></path><line x1="203" y1="4157" x2="203" y2="4171" class="line"></line><line x1="299" y1="4171" x2="299" y2="4157" class="line"></line><path d="M203 4171 Q203 4181 213 4181" class="line"></path><path d="M289 4181 Q299 4181 299 4171" class="line"></path><line x1="213" y1="4181" x2="223" y2="4181" class="line"></line><line x1="223" y1="4181" x2="289" y2="4181" class="line"></line><line x1="309" y1="4147" x2="847" y2="4147" class="line"></line><line x1="29" y1="4137" x2="29" y2="4157" class="line"></line><line x1="857" y1="4157" x2="857" y2="4137" class="line"></line><line x1="29" y1="4157" x2="29" y2="4203" class="line"></line><line x1="857" y1="4203" x2="857" y2="4157" class="line"></line><path d="M29 4203 Q29 4213 39 4213" class="line"></path><path d="M847 4213 Q857 4213 857 4203" class="line"></path><a xlink:href="#AGGREGATE_FUNCTION" xlink:title="AGGREGATE_FUNCTION"><rect x="51" y="4199" width="166" height="32"></rect><rect x="49" y="4197" width="166" height="32" class="nonterminal"></rect><text class="nonterminal" x="59" y="4217">AGGREGATE_FUNCTION</text></a><line x1="39" y1="4213" x2="49" y2="4213" class="line"></line><line x1="215" y1="4213" x2="225" y2="4213" class="line"></line><rect x="257" y="4199" width="50" height="32" rx="10"></rect><rect x="255" y="4197" width="50" height="32" class="terminal" rx="10"></rect><text class="terminal" x="265" y="4217">over</text><line x1="245" y1="4213" x2="255" y2="4213" class="line"></line><line x1="305" y1="4213" x2="315" y2="4213" class="line"></line><a xlink:href="#PARTITION_CLAUSE" xlink:title="PARTITION_CLAUSE"><rect x="327" y="4199" width="144" height="32"></rect><rect x="325" y="4197" width="144" height="32" class="nonterminal"></rect><text class="nonterminal" x="335" y="4217">PARTITION_CLAUSE</text></a><line x1="315" y1="4213" x2="325" y2="4213" class="line"></line><line x1="469" y1="4213" x2="479" y2="4213" class="line"></line><line x1="225" y1="4213" x2="245" y2="4213" class="line"></line><line x1="479" y1="4213" x2="499" y2="4213" class="line"></line><path d="M225 4213 Q235 4213 235 4223" class="line"></path><path d="M489 4223 Q489 4213 499 4213" class="line"></path><line x1="235" y1="4223" x2="235" y2="4237" class="line"></line><line x1="489" y1="4237" x2="489" y2="4223" class="line"></line><path d="M235 4237 Q235 4247 245 4247" class="line"></path><path d="M479 4247 Q489 4247 489 4237" class="line"></path><line x1="245" y1="4247" x2="255" y2="4247" class="line"></line><line x1="255" y1="4247" x2="479" y2="4247" class="line"></line><line x1="499" y1="4213" x2="847" y2="4213" class="line"></line><line x1="870" y1="17" x2="867" y2="17" class="line"></line><polygon points="877 17 885 13 885 21" class="filled"></polygon><polygon points="877 17 869 13 869 21" class="filled"></polygon></svg><xhtml:p xmlns:xhtml="http://www.w3.org/1999/xhtml">referenced by:<xhtml:ul><xhtml:li><xhtml:a href="#AGGREGATE_FUNCTION" title="AGGREGATE_FUNCTION">AGGREGATE_FUNCTION</xhtml:a></xhtml:li><xhtml:li><xhtml:a href="#CONDITION" title="CONDITION">CONDITION</xhtml:a></xhtml:li><xhtml:li><xhtml:a href="#FIELD" title="FIELD">FIELD</xhtml:a></xhtml:li><xhtml:li><xhtml:a href="#GROUP_FIELD" title="GROUP_FIELD">GROUP_FIELD</xhtml:a></xhtml:li><xhtml:li><xhtml:a href="#INSERT" title="INSERT">INSERT</xhtml:a></xhtml:li><xhtml:li><xhtml:a href="#MERGE" title="MERGE">MERGE</xhtml:a></xhtml:li><xhtml:li><xhtml:a href="#PARTITION_CLAUSE" title="PARTITION_CLAUSE">PARTITION_CLAUSE</xhtml:a></xhtml:li><xhtml:li><xhtml:a href="#SELECT" title="SELECT">SELECT</xhtml:a></xhtml:li><xhtml:li><xhtml:a href="#SORT_FIELD" title="SORT_FIELD">SORT_FIELD</xhtml:a></xhtml:li><xhtml:li><xhtml:a href="#TABLE" title="TABLE">TABLE</xhtml:a></xhtml:li><xhtml:li><xhtml:a href="#UPDATE" title="UPDATE">UPDATE</xhtml:a></xhtml:li></xhtml:ul></xhtml:p><xhtml:br xmlns:xhtml="http://www.w3.org/1999/xhtml"></xhtml:br><xhtml:p xmlns:xhtml="http://www.w3.org/1999/xhtml" style="font-size: 14px; font-weight:bold"><xhtml:a name="AGGREGATE_FUNCTION">AGGREGATE_FUNCTION:</xhtml:a></xhtml:p><svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="680" height="960"><defs><style type="text/css">
    +
    +    @namespace "http://www.w3.org/2000/svg";
    +    .line                 {fill: none; stroke: #332900;}
    +    filled                {fill: #332900; stroke: none;}
    +    text                  {font-family: Verdana, Sans-serif;
    +                            font-size: 12px;
    +                            fill: #4D3D00;
    +                          }
    +    text.terminal         {font-family: Verdana, Sans-serif;
    +                            font-size: 12px;
    +                            fill: #4D3D00;
    +                            font-weight: bold;
    +                          }
    +    rect, circle, polygon {fill: #332900; stroke: #332900;}
    +    rect.terminal         {fill: #FFCC00; stroke: #332900;}
    +    rect.nonterminal      {fill: #FFEB99; stroke: #332900;}
    +    rect.text             {fill: none; stroke: none;}    
    +    polygon.regexp        {fill: #FFF5CC; stroke: #332900;}
    +  </style></defs><polygon points="9 17 1 13 1 21" class="filled"></polygon><polygon points="17 17 9 13 9 21" class="filled"></polygon><line x1="17" y1="17" x2="19" y2="17" class="line"></line><rect x="51" y="3" width="56" height="32" rx="10"></rect><rect x="49" y="1" width="56" height="32" class="terminal" rx="10"></rect><text class="terminal" x="59" y="21">count</text><line x1="39" y1="17" x2="49" y2="17" class="line"></line><line x1="105" y1="17" x2="115" y2="17" class="line"></line><line x1="115" y1="17" x2="641" y2="17" class="line"></line><line x1="19" y1="17" x2="39" y2="17" class="line"></line><line x1="641" y1="17" x2="661" y2="17" class="line"></line><path d="M19 17 Q29 17 29 27" class="line"></path><path d="M651 27 Q651 17 661 17" class="line"></path><line x1="29" y1="27" x2="29" y2="51" class="line"></line><line x1="651" y1="51" x2="651" y2="27" class="line"></line><path d="M29 51 Q29 61 39 61" class="line"></path><path d="M641 61 Q651 61 651 51" class="line"></path><rect x="51" y="47" width="98" height="32" rx="10"></rect><rect x="49" y="45" width="98" height="32" class="terminal" rx="10"></rect><text class="terminal" x="59" y="65">rowNumber</text><line x1="39" y1="61" x2="49" y2="61" class="line"></line><line x1="147" y1="61" x2="157" y2="61" class="line"></line><line x1="157" y1="61" x2="641" y2="61" class="line"></line><line x1="29" y1="51" x2="29" y2="71" class="line"></line><line x1="651" y1="71" x2="651" y2="51" class="line"></line><line x1="29" y1="71" x2="29" y2="95" class="line"></line><line x1="651" y1="95" x2="651" y2="71" class="line"></line><path d="M29 95 Q29 105 39 105" class="line"></path><path d="M641 105 Q651 105 651 95" class="line"></path><rect x="51" y="91" width="50" height="32" rx="10"></rect><rect x="49" y="89" width="50" height="32" class="terminal" rx="10"></rect><text class="terminal" x="59" y="109">rank</text><line x1="39" y1="105" x2="49" y2="105" class="line"></line><line x1="99" y1="105" x2="109" y2="105" class="line"></line><line x1="109" y1="105" x2="641" y2="105" class="line"></line><line x1="29" y1="95" x2="29" y2="115" class="line"></line><line x1="651" y1="115" x2="651" y2="95" class="line"></line><line x1="29" y1="115" x2="29" y2="139" class="line"></line><line x1="651" y1="139" x2="651" y2="115" class="line"></line><path d="M29 139 Q29 149 39 149" class="line"></path><path d="M641 149 Q651 149 651 139" class="line"></path><rect x="51" y="135" width="92" height="32" rx="10"></rect><rect x="49" y="133" width="92" height="32" class="terminal" rx="10"></rect><text class="terminal" x="59" y="153">denseRank</text><line x1="39" y1="149" x2="49" y2="149" class="line"></line><line x1="141" y1="149" x2="151" y2="149" class="line"></line><line x1="151" y1="149" x2="641" y2="149" class="line"></line><line x1="29" y1="139" x2="29" y2="159" class="line"></line><line x1="651" y1="159" x2="651" y2="139" class="line"></line><line x1="29" y1="159" x2="29" y2="183" class="line"></line><line x1="651" y1="183" x2="651" y2="159" class="line"></line><path d="M29 183 Q29 193 39 193" class="line"></path><path d="M641 193 Q651 193 651 183" class="line"></path><rect x="51" y="179" width="102" height="32" rx="10"></rect><rect x="49" y="177" width="102" height="32" class="terminal" rx="10"></rect><text class="terminal" x="59" y="197">percentRank</text><line x1="39" y1="193" x2="49" y2="193" class="line"></line><line x1="151" y1="193" x2="161" y2="193" class="line"></line><line x1="161" y1="193" x2="641" y2="193" class="line"></line><line x1="29" y1="183" x2="29" y2="203" class="line"></line><line x1="651" y1="203" x2="651" y2="183" class="line"></line><line x1="29" y1="203" x2="29" y2="227" class="line"></line><line x1="651" y1="227" x2="651" y2="203" class="line"></line><path d="M29 227 Q29 237 39 237" class="line"></path><path d="M641 237 Q651 237 651 227" class="line"></path><rect x="51" y="223" width="80" height="32" rx="10"></rect><rect x="49" y="221" width="80" height="32" class="terminal" rx="10"></rect><text class="terminal" x="59" y="241">cumeDist</text><line x1="39" y1="237" x2="49" y2="237" class="line"></line><line x1="129" y1="237" x2="139" y2="237" class="line"></line><line x1="139" y1="237" x2="641" y2="237" class="line"></line><line x1="29" y1="227" x2="29" y2="247" class="line"></line><line x1="651" y1="247" x2="651" y2="227" class="line"></line><line x1="29" y1="247" x2="29" y2="271" class="line"></line><line x1="651" y1="271" x2="651" y2="247" class="line"></line><path d="M29 271 Q29 281 39 281" class="line"></path><path d="M641 281 Q651 281 651 271" class="line"></path><rect x="71" y="267" width="56" height="32" rx="10"></rect><rect x="69" y="265" width="56" height="32" class="terminal" rx="10"></rect><text class="terminal" x="79" y="285">count</text><line x1="59" y1="281" x2="69" y2="281" class="line"></line><line x1="125" y1="281" x2="135" y2="281" class="line"></line><line x1="135" y1="281" x2="185" y2="281" class="line"></line><line x1="39" y1="281" x2="59" y2="281" class="line"></line><line x1="185" y1="281" x2="205" y2="281" class="line"></line><path d="M39 281 Q49 281 49 291" class="line"></path><path d="M195 291 Q195 281 205 281" class="line"></path><line x1="49" y1="291" x2="49" y2="315" class="line"></line><line x1="195" y1="315" x2="195" y2="291" class="line"></line><path d="M49 315 Q49 325 59 325" class="line"></path><path d="M185 325 Q195 325 195 315" class="line"></path><rect x="71" y="311" width="106" height="32" rx="10"></rect><rect x="69" y="309" width="106" height="32" class="terminal" rx="10"></rect><text class="terminal" x="79" y="329">countDistinct</text><line x1="59" y1="325" x2="69" y2="325" class="line"></line><line x1="175" y1="325" x2="185" y2="325" class="line"></line><line x1="49" y1="315" x2="49" y2="335" class="line"></line><line x1="195" y1="335" x2="195" y2="315" class="line"></line><line x1="49" y1="335" x2="49" y2="359" class="line"></line><line x1="195" y1="359" x2="195" y2="335" class="line"></line><path d="M49 359 Q49 369 59 369" class="line"></path><path d="M185 369 Q195 369 195 359" class="line"></path><rect x="71" y="355" width="48" height="32" rx="10"></rect><rect x="69" y="353" width="48" height="32" class="terminal" rx="10"></rect><text class="terminal" x="79" y="373">max</text><line x1="59" y1="369" x2="69" y2="369" class="line"></line><line x1="117" y1="369" x2="127" y2="369" class="line"></line><line x1="127" y1="369" x2="185" y2="369" class="line"></line><line x1="49" y1="359" x2="49" y2="379" class="line"></line><line x1="195" y1="379" x2="195" y2="359" class="line"></line><line x1="49" y1="379" x2="49" y2="403" class="line"></line><line x1="195" y1="403" x2="195" y2="379" class="line"></line><path d="M49 403 Q49 413 59 413" class="line"></path><path d="M185 413 Q195 413 195 403" class="line"></path><rect x="71" y="399" width="44" height="32" rx="10"></rect><rect x="69" y="397" width="44" height="32" class="terminal" rx="10"></rect><text class="terminal" x="79" y="417">min</text><line x1="59" y1="413" x2="69" y2="413" class="line"></line><line x1="113" y1="413" x2="123" y2="413" class="line"></line><line x1="123" y1="413" x2="185" y2="413" class="line"></line><line x1="49" y1="403" x2="49" y2="423" class="line"></line><line x1="195" y1="423" x2="195" y2="403" class="line"></line><line x1="49" y1="423" x2="49" y2="447" class="line"></line><line x1="195" y1="447" x2="195" y2="423" class="line"></line><path d="M49 447 Q49 457 59 457" class="line"></path><path d="M185 457 Q195 457 195 447" class="line"></path><rect x="71" y="443" width="46" height="32" rx="10"></rect><rect x="69" y="441" width="46" height="32" class="terminal" rx="10"></rect><text class="terminal" x="79" y="461">sum</text><line x1="59" y1="457" x2="69" y2="457" class="line"></line><line x1="115" y1="457" x2="125" y2="457" class="line"></line><line x1="125" y1="457" x2="185" y2="457" class="line"></line><line x1="49" y1="447" x2="49" y2="467" class="line"></line><line x1="195" y1="467" x2="195" y2="447" class="line"></line><line x1="49" y1="467" x2="49" y2="491" class="line"></line><line x1="195" y1="491" x2="195" y2="467" class="line"></line><path d="M49 491 Q49 501 59 501" class="line"></path><path d="M185 501 Q195 501 195 491" class="line"></path><rect x="71" y="487" width="44" height="32" rx="10"></rect><rect x="69" y="485" width="44" height="32" class="terminal" rx="10"></rect><text class="terminal" x="79" y="505">avg</text><line x1="59" y1="501" x2="69" y2="501" class="line"></line><line x1="113" y1="501" x2="123" y2="501" class="line"></line><line x1="123" y1="501" x2="185" y2="501" class="line"></line><line x1="49" y1="491" x2="49" y2="511" class="line"></line><line x1="195" y1="511" x2="195" y2="491" class="line"></line><line x1="49" y1="511" x2="49" y2="535" class="line"></line><line x1="195" y1="535" x2="195" y2="511" class="line"></line><path d="M49 535 Q49 545 59 545" class="line"></path><path d="M185 545 Q195 545 195 535" class="line"></path><rect x="71" y="531" width="68" height="32" rx="10"></rect><rect x="69" y="529" width="68" height="32" class="terminal" rx="10"></rect><text class="terminal" x="79" y="549">median</text><line x1="59" y1="545" x2="69" y2="545" class="line"></line><line x1="137" y1="545" x2="147" y2="545" class="line"></line><line x1="147" y1="545" x2="185" y2="545" class="line"></line><line x1="49" y1="535" x2="49" y2="555" class="line"></line><line x1="195" y1="555" x2="195" y2="535" class="line"></line><line x1="49" y1="555" x2="49" y2="579" class="line"></line><line x1="195" y1="579" x2="195" y2="555" class="line"></line><path d="M49 579 Q49 589 59 589" class="line"></path><path d="M185 589 Q195 589 195 579" class="line"></path><rect x="71" y="575" width="88" height="32" rx="10"></rect><rect x="69" y="573" width="88" height="32" class="terminal" rx="10"></rect><text class="terminal" x="79" y="593">stddevPop</text><line x1="59" y1="589" x2="69" y2="589" class="line"></line><line x1="157" y1="589" x2="167" y2="589" class="line"></line><line x1="167" y1="589" x2="185" y2="589" class="line"></line><line x1="49" y1="579" x2="49" y2="599" class="line"></line><line x1="195" y1="599" x2="195" y2="579" class="line"></line><line x1="49" y1="599" x2="49" y2="623" class="line"></line><line x1="195" y1="623" x2="195" y2="599" class="line"></line><path d="M49 623 Q49 633 59 633" class="line"></path><path d="M185 633 Q195 633 195 623" class="line"></path><rect x="71" y="619" width="100" height="32" rx="10"></rect><rect x="69" y="617" width="100" height="32" class="terminal" rx="10"></rect><text class="terminal" x="79" y="637">stddevSamp</text><line x1="59" y1="633" x2="69" y2="633" class="line"></line><line x1="169" y1="633" x2="179" y2="633" class="line"></line><line x1="179" y1="633" x2="185" y2="633" class="line"></line><line x1="49" y1="623" x2="49" y2="643" class="line"></line><line x1="195" y1="643" x2="195" y2="623" class="line"></line><line x1="49" y1="643" x2="49" y2="667" class="line"></line><line x1="195" y1="667" x2="195" y2="643" class="line"></line><path d="M49 667 Q49 677 59 677" class="line"></path><path d="M185 677 Q195 677 195 667" class="line"></path><rect x="71" y="663" width="66" height="32" rx="10"></rect><rect x="69" y="661" width="66" height="32" class="terminal" rx="10"></rect><text class="terminal" x="79" y="681">varPop</text><line x1="59" y1="677" x2="69" y2="677" class="line"></line><line x1="135" y1="677" x2="145" y2="677" class="line"></line><line x1="145" y1="677" x2="185" y2="677" class="line"></line><line x1="49" y1="667" x2="49" y2="687" class="line"></line><line x1="195" y1="687" x2="195" y2="667" class="line"></line><line x1="49" y1="687" x2="49" y2="711" class="line"></line><line x1="195" y1="711" x2="195" y2="687" class="line"></line><path d="M49 711 Q49 721 59 721" class="line"></path><path d="M185 721 Q195 721 195 711" class="line"></path><rect x="71" y="707" width="78" height="32" rx="10"></rect><rect x="69" y="705" width="78" height="32" class="terminal" rx="10"></rect><text class="terminal" x="79" y="725">varSamp</text><line x1="59" y1="721" x2="69" y2="721" class="line"></line><line x1="147" y1="721" x2="157" y2="721" class="line"></line><line x1="157" y1="721" x2="185" y2="721" class="line"></line><a xlink:href="#FIELD" xlink:title="FIELD"><rect x="217" y="267" width="56" height="32"></rect><rect x="215" y="265" width="56" height="32" class="nonterminal"></rect><text class="nonterminal" x="225" y="285">FIELD</text></a><line x1="205" y1="281" x2="215" y2="281" class="line"></line><line x1="271" y1="281" x2="281" y2="281" class="line"></line><line x1="281" y1="281" x2="641" y2="281" class="line"></line><line x1="29" y1="271" x2="29" y2="291" class="line"></line><line x1="651" y1="291" x2="651" y2="271" class="line"></line><line x1="29" y1="291" x2="29" y2="755" class="line"></line><line x1="651" y1="755" x2="651" y2="291" class="line"></line><path d="M29 755 Q29 765 39 765" class="line"></path><path d="M641 765 Q651 765 651 755" class="line"></path><rect x="51" y="751" width="48" height="32" rx="10"></rect><rect x="49" y="749" width="48" height="32" class="terminal" rx="10"></rect><text class="terminal" x="59" y="769">ntile</text><line x1="39" y1="765" x2="49" y2="765" class="line"></line><line x1="97" y1="765" x2="107" y2="765" class="line"></line><a xlink:href="#INT" xlink:title="INT"><rect x="119" y="751" width="40" height="32"></rect><rect x="117" y="749" width="40" height="32" class="nonterminal"></rect><text class="nonterminal" x="127" y="769">INT</text></a><line x1="107" y1="765" x2="117" y2="765" class="line"></line><line x1="157" y1="765" x2="167" y2="765" class="line"></line><line x1="167" y1="765" x2="641" y2="765" class="line"></line><line x1="29" y1="755" x2="29" y2="775" class="line"></line><line x1="651" y1="775" x2="651" y2="755" class="line"></line><line x1="29" y1="775" x2="29" y2="799" class="line"></line><line x1="651" y1="799" x2="651" y2="775" class="line"></line><path d="M29 799 Q29 809 39 809" class="line"></path><path d="M641 809 Q651 809 651 799" class="line"></path><rect x="91" y="795" width="84" height="32" rx="10"></rect><rect x="89" y="793" width="84" height="32" class="terminal" rx="10"></rect><text class="terminal" x="99" y="813">firstValue</text><line x1="79" y1="809" x2="89" y2="809" class="line"></line><line x1="173" y1="809" x2="183" y2="809" class="line"></line><line x1="59" y1="809" x2="79" y2="809" class="line"></line><line x1="183" y1="809" x2="203" y2="809" class="line"></line><path d="M59 809 Q69 809 69 819" class="line"></path><path d="M193 819 Q193 809 203 809" class="line"></path><line x1="69" y1="819" x2="69" y2="843" class="line"></line><line x1="193" y1="843" x2="193" y2="819" class="line"></line><path d="M69 843 Q69 853 79 853" class="line"></path><path d="M183 853 Q193 853 193 843" class="line"></path><rect x="91" y="839" width="80" height="32" rx="10"></rect><rect x="89" y="837" width="80" height="32" class="terminal" rx="10"></rect><text class="terminal" x="99" y="857">lastValue</text><line x1="79" y1="853" x2="89" y2="853" class="line"></line><line x1="169" y1="853" x2="179" y2="853" class="line"></line><line x1="179" y1="853" x2="183" y2="853" class="line"></line><a xlink:href="#FIELD" xlink:title="FIELD"><rect x="215" y="795" width="56" height="32"></rect><rect x="213" y="793" width="56" height="32" class="nonterminal"></rect><text class="nonterminal" x="223" y="813">FIELD</text></a><line x1="203" y1="809" x2="213" y2="809" class="line"></line><line x1="269" y1="809" x2="279" y2="809" class="line"></line><line x1="279" y1="809" x2="459" y2="809" class="line"></line><line x1="39" y1="809" x2="59" y2="809" class="line"></line><line x1="459" y1="809" x2="479" y2="809" class="line"></line><path d="M39 809 Q49 809 49 819" class="line"></path><path d="M469 819 Q469 809 479 809" class="line"></path><line x1="49" y1="819" x2="49" y2="887" class="line"></line><line x1="469" y1="887" x2="469" y2="819" class="line"></line><path d="M49 887 Q49 897 59 897" class="line"></path><path d="M459 897 Q469 897 469 887" class="line"></path><rect x="91" y="883" width="48" height="32" rx="10"></rect><rect x="89" y="881" width="48" height="32" class="terminal" rx="10"></rect><text class="terminal" x="99" y="901">lead</text><line x1="79" y1="897" x2="89" y2="897" class="line"></line><line x1="137" y1="897" x2="147" y2="897" class="line"></line><line x1="59" y1="897" x2="79" y2="897" class="line"></line><line x1="147" y1="897" x2="167" y2="897" class="line"></line><path d="M59 897 Q69 897 69 907" class="line"></path><path d="M157 907 Q157 897 167 897" class="line"></path><line x1="69" y1="907" x2="69" y2="931" class="line"></line><line x1="157" y1="931" x2="157" y2="907" class="line"></line><path d="M69 931 Q69 941 79 941" class="line"></path><path d="M147 941 Q157 941 157 931" class="line"></path><rect x="91" y="927" width="40" height="32" rx="10"></rect><rect x="89" y="925" width="40" height="32" class="terminal" rx="10"></rect><text class="terminal" x="99" y="945">lag</text><line x1="79" y1="941" x2="89" y2="941" class="line"></line><line x1="129" y1="941" x2="139" y2="941" class="line"></line><line x1="139" y1="941" x2="147" y2="941" class="line"></line><a xlink:href="#FIELD" xlink:title="FIELD"><rect x="179" y="883" width="56" height="32"></rect><rect x="177" y="881" width="56" height="32" class="nonterminal"></rect><text class="nonterminal" x="187" y="901">FIELD</text></a><line x1="167" y1="897" x2="177" y2="897" class="line"></line><line x1="233" y1="897" x2="243" y2="897" class="line"></line><a xlink:href="#INT" xlink:title="INT"><rect x="275" y="883" width="40" height="32"></rect><rect x="273" y="881" width="40" height="32" class="nonterminal"></rect><text class="nonterminal" x="283" y="901">INT</text></a><line x1="263" y1="897" x2="273" y2="897" class="line"></line><line x1="313" y1="897" x2="323" y2="897" class="line"></line><a xlink:href="#FIELD" xlink:title="FIELD"><rect x="355" y="883" width="56" height="32"></rect><rect x="353" y="881" width="56" height="32" class="nonterminal"></rect><text class="nonterminal" x="363" y="901">FIELD</text></a><line x1="343" y1="897" x2="353" y2="897" class="line"></line><line x1="409" y1="897" x2="419" y2="897" class="line"></line><line x1="323" y1="897" x2="343" y2="897" class="line"></line><line x1="419" y1="897" x2="439" y2="897" class="line"></line><path d="M323 897 Q333 897 333 907" class="line"></path><path d="M429 907 Q429 897 439 897" class="line"></path><line x1="333" y1="907" x2="333" y2="921" class="line"></line><line x1="429" y1="921" x2="429" y2="907" class="line"></line><path d="M333 921 Q333 931 343 931" class="line"></path><path d="M419 931 Q429 931 429 921" class="line"></path><line x1="343" y1="931" x2="353" y2="931" class="line"></line><line x1="353" y1="931" x2="419" y2="931" class="line"></line><line x1="243" y1="897" x2="263" y2="897" class="line"></line><line x1="439" y1="897" x2="459" y2="897" class="line"></line><path d="M243 897 Q253 897 253 907" class="line"></path><path d="M449 907 Q449 897 459 897" class="line"></path><line x1="253" y1="907" x2="253" y2="937" class="line"></line><line x1="449" y1="937" x2="449" y2="907" class="line"></line><path d="M253 937 Q253 947 263 947" class="line"></path><path d="M439 947 Q449 947 449 937" class="line"></path><line x1="263" y1="947" x2="273" y2="947" class="line"></line><line x1="273" y1="947" x2="439" y2="947" class="line"></line><rect x="511" y="795" width="94" height="32" rx="10"></rect><rect x="509" y="793" width="94" height="32" class="terminal" rx="10"></rect><text class="terminal" x="519" y="813">ignoreNulls</text><line x1="499" y1="809" x2="509" y2="809" class="line"></line><line x1="603" y1="809" x2="613" y2="809" class="line"></line><line x1="613" y1="809" x2="621" y2="809" class="line"></line><line x1="479" y1="809" x2="499" y2="809" class="line"></line><line x1="621" y1="809" x2="641" y2="809" class="line"></line><path d="M479 809 Q489 809 489 819" class="line"></path><path d="M631 819 Q631 809 641 809" class="line"></path><line x1="489" y1="819" x2="489" y2="843" class="line"></line><line x1="631" y1="843" x2="631" y2="819" class="line"></line><path d="M489 843 Q489 853 499 853" class="line"></path><path d="M621 853 Q631 853 631 843" class="line"></path><rect x="511" y="839" width="102" height="32" rx="10"></rect><rect x="509" y="837" width="102" height="32" class="terminal" rx="10"></rect><text class="terminal" x="519" y="857">respectNulls</text><line x1="499" y1="853" x2="509" y2="853" class="line"></line><line x1="611" y1="853" x2="621" y2="853" class="line"></line><line x1="489" y1="843" x2="489" y2="863" class="line"></line><line x1="631" y1="863" x2="631" y2="843" class="line"></line><line x1="489" y1="863" x2="489" y2="877" class="line"></line><line x1="631" y1="877" x2="631" y2="863" class="line"></line><path d="M489 877 Q489 887 499 887" class="line"></path><path d="M621 887 Q631 887 631 877" class="line"></path><line x1="499" y1="887" x2="509" y2="887" class="line"></line><line x1="509" y1="887" x2="621" y2="887" class="line"></line><line x1="664" y1="17" x2="661" y2="17" class="line"></line><polygon points="671 17 679 13 679 21" class="filled"></polygon><polygon points="671 17 663 13 663 21" class="filled"></polygon></svg><xhtml:p xmlns:xhtml="http://www.w3.org/1999/xhtml">referenced by:<xhtml:ul><xhtml:li><xhtml:a href="#FIELD" title="FIELD">FIELD</xhtml:a></xhtml:li><xhtml:li><xhtml:a href="#TABLE" title="TABLE">TABLE</xhtml:a></xhtml:li></xhtml:ul></xhtml:p><xhtml:br xmlns:xhtml="http://www.w3.org/1999/xhtml"></xhtml:br><xhtml:p xmlns:xhtml="http://www.w3.org/1999/xhtml" style="font-size: 14px; font-weight:bold"><xhtml:a name="PARTITION_CLAUSE">PARTITION_CLAUSE:</xhtml:a></xhtml:p><svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="954" height="622"><defs><style type="text/css">
    +
    +    @namespace "http://www.w3.org/2000/svg";
    +    .line                 {fill: none; stroke: #332900;}
    +    filled                {fill: #332900; stroke: none;}
    +    text                  {font-family: Verdana, Sans-serif;
    +                            font-size: 12px;
    +                            fill: #4D3D00;
    +                          }
    +    text.terminal         {font-family: Verdana, Sans-serif;
    +                            font-size: 12px;
    +                            fill: #4D3D00;
    +                            font-weight: bold;
    +                          }
    +    rect, circle, polygon {fill: #332900; stroke: #332900;}
    +    rect.terminal         {fill: #FFCC00; stroke: #332900;}
    +    rect.nonterminal      {fill: #FFEB99; stroke: #332900;}
    +    rect.text             {fill: none; stroke: none;}    
    +    polygon.regexp        {fill: #FFF5CC; stroke: #332900;}
    +  </style></defs><polygon points="11 33 3 29 3 37" class="filled"></polygon><polygon points="19 33 11 29 11 37" class="filled"></polygon><line x1="19" y1="33" x2="21" y2="33" class="line"></line><rect x="53" y="19" width="92" height="32" rx="10"></rect><rect x="51" y="17" width="92" height="32" class="terminal" rx="10"></rect><text class="terminal" x="61" y="37">partitionBy</text><line x1="41" y1="33" x2="51" y2="33" class="line"></line><line x1="143" y1="33" x2="153" y2="33" class="line"></line><a xlink:href="#FIELD" xlink:title="FIELD"><rect x="185" y="19" width="56" height="32"></rect><rect x="183" y="17" width="56" height="32" class="nonterminal"></rect><text class="nonterminal" x="193" y="37">FIELD</text></a><line x1="173" y1="33" x2="183" y2="33" class="line"></line><line x1="239" y1="33" x2="249" y2="33" class="line"></line><path d="M153 33 L173 33 M172 33 Q163 33 163 23 L163 11 Q163 1 173 1" class="line"></path><path d="M249 33 L269 33 M249 33 Q259 33 259 23 L259 11 Q259 1 249 1" class="line"></path><line x1="173" y1="1" x2="183" y2="1" class="line"></line><line x1="183" y1="1" x2="249" y2="1" class="line"></line><line x1="21" y1="33" x2="41" y2="33" class="line"></line><line x1="269" y1="33" x2="289" y2="33" class="line"></line><path d="M21 33 Q31 33 31 43" class="line"></path><path d="M279 43 Q279 33 289 33" class="line"></path><line x1="31" y1="43" x2="31" y2="67" class="line"></line><line x1="279" y1="67" x2="279" y2="43" class="line"></line><path d="M31 67 Q31 77 41 77" class="line"></path><path d="M269 77 Q279 77 279 67" class="line"></path><rect x="53" y="63" width="120" height="32" rx="10"></rect><rect x="51" y="61" width="120" height="32" class="terminal" rx="10"></rect><text class="terminal" x="61" y="81">partitionByOne</text><line x1="41" y1="77" x2="51" y2="77" class="line"></line><line x1="171" y1="77" x2="181" y2="77" class="line"></line><line x1="181" y1="77" x2="269" y2="77" class="line"></line><line x1="31" y1="67" x2="31" y2="87" class="line"></line><line x1="279" y1="87" x2="279" y2="67" class="line"></line><line x1="31" y1="87" x2="31" y2="101" class="line"></line><line x1="279" y1="101" x2="279" y2="87" class="line"></line><path d="M31 101 Q31 111 41 111" class="line"></path><path d="M269 111 Q279 111 279 101" class="line"></path><line x1="41" y1="111" x2="51" y2="111" class="line"></line><line x1="51" y1="111" x2="269" y2="111" class="line"></line><path class="line" d="M291 33 L293 33 M295 33 L297 33 M299 33 L301 33 M1 175 L3 175 M5 175 L7 175 M9 175 L11 175"></path><rect x="45" y="161" width="72" height="32" rx="10"></rect><rect x="43" y="159" width="72" height="32" class="terminal" rx="10"></rect><text class="terminal" x="53" y="179">orderBy</text><line x1="33" y1="175" x2="43" y2="175" class="line"></line><line x1="115" y1="175" x2="125" y2="175" class="line"></line><a xlink:href="#FIELD" xlink:title="FIELD"><rect x="177" y="161" width="56" height="32"></rect><rect x="175" y="159" width="56" height="32" class="nonterminal"></rect><text class="nonterminal" x="185" y="179">FIELD</text></a><line x1="165" y1="175" x2="175" y2="175" class="line"></line><line x1="231" y1="175" x2="241" y2="175" class="line"></line><path d="M145 175 L165 175 M164 175 Q155 175 155 165 L155 153 Q155 143 165 143" class="line"></path><path d="M241 175 L261 175 M241 175 Q251 175 251 165 L251 153 Q251 143 241 143" class="line"></path><line x1="165" y1="143" x2="175" y2="143" class="line"></line><line x1="175" y1="143" x2="241" y2="143" class="line"></line><line x1="261" y1="175" x2="301" y2="175" class="line"></line><line x1="125" y1="175" x2="145" y2="175" class="line"></line><line x1="301" y1="175" x2="321" y2="175" class="line"></line><path d="M125 175 Q135 175 135 185" class="line"></path><path d="M311 185 Q311 175 321 175" class="line"></path><line x1="135" y1="185" x2="135" y2="231" class="line"></line><line x1="311" y1="231" x2="311" y2="185" class="line"></line><path d="M135 231 Q135 241 145 241" class="line"></path><path d="M301 241 Q311 241 311 231" class="line"></path><a xlink:href="#SORT_FIELD" xlink:title="SORT_FIELD"><rect x="177" y="227" width="96" height="32"></rect><rect x="175" y="225" width="96" height="32" class="nonterminal"></rect><text class="nonterminal" x="185" y="245">SORT_FIELD</text></a><line x1="165" y1="241" x2="175" y2="241" class="line"></line><line x1="271" y1="241" x2="281" y2="241" class="line"></line><path d="M145 241 L165 241 M164 241 Q155 241 155 231 L155 219 Q155 209 165 209" class="line"></path><path d="M281 241 L301 241 M281 241 Q291 241 291 231 L291 219 Q291 209 281 209" class="line"></path><line x1="165" y1="209" x2="175" y2="209" class="line"></line><line x1="175" y1="209" x2="281" y2="209" class="line"></line><rect x="353" y="161" width="192" height="32" rx="10"></rect><rect x="351" y="159" width="192" height="32" class="terminal" rx="10"></rect><text class="terminal" x="361" y="179">rowsUnboundedPreceding</text><line x1="341" y1="175" x2="351" y2="175" class="line"></line><line x1="543" y1="175" x2="553" y2="175" class="line"></line><line x1="553" y1="175" x2="895" y2="175" class="line"></line><line x1="321" y1="175" x2="341" y2="175" class="line"></line><line x1="895" y1="175" x2="915" y2="175" class="line"></line><path d="M321 175 Q331 175 331 185" class="line"></path><path d="M905 185 Q905 175 915 175" class="line"></path><line x1="331" y1="185" x2="331" y2="209" class="line"></line><line x1="905" y1="209" x2="905" y2="185" class="line"></line><path d="M331 209 Q331 219 341 219" class="line"></path><path d="M895 219 Q905 219 905 209" class="line"></path><rect x="353" y="205" width="118" height="32" rx="10"></rect><rect x="351" y="203" width="118" height="32" class="terminal" rx="10"></rect><text class="terminal" x="361" y="223">rowsPreceding</text><line x1="341" y1="219" x2="351" y2="219" class="line"></line><line x1="469" y1="219" x2="479" y2="219" class="line"></line><a xlink:href="#INT" xlink:title="INT"><rect x="491" y="205" width="40" height="32"></rect><rect x="489" y="203" width="40" height="32" class="nonterminal"></rect><text class="nonterminal" x="499" y="223">INT</text></a><line x1="479" y1="219" x2="489" y2="219" class="line"></line><line x1="529" y1="219" x2="539" y2="219" class="line"></line><line x1="539" y1="219" x2="895" y2="219" class="line"></line><line x1="331" y1="209" x2="331" y2="229" class="line"></line><line x1="905" y1="229" x2="905" y2="209" class="line"></line><line x1="331" y1="229" x2="331" y2="253" class="line"></line><line x1="905" y1="253" x2="905" y2="229" class="line"></line><path d="M331 253 Q331 263 341 263" class="line"></path><path d="M895 263 Q905 263 905 253" class="line"></path><rect x="353" y="249" width="132" height="32" rx="10"></rect><rect x="351" y="247" width="132" height="32" class="terminal" rx="10"></rect><text class="terminal" x="361" y="267">rowsCurrentRow</text><line x1="341" y1="263" x2="351" y2="263" class="line"></line><line x1="483" y1="263" x2="493" y2="263" class="line"></line><line x1="493" y1="263" x2="895" y2="263" class="line"></line><line x1="331" y1="253" x2="331" y2="273" class="line"></line><line x1="905" y1="273" x2="905" y2="253" class="line"></line><line x1="331" y1="273" x2="331" y2="297" class="line"></line><line x1="905" y1="297" x2="905" y2="273" class="line"></line><path d="M331 297 Q331 307 341 307" class="line"></path><path d="M895 307 Q905 307 905 297" class="line"></path><rect x="353" y="293" width="190" height="32" rx="10"></rect><rect x="351" y="291" width="190" height="32" class="terminal" rx="10"></rect><text class="terminal" x="361" y="311">rowsUnboundedFollowing</text><line x1="341" y1="307" x2="351" y2="307" class="line"></line><line x1="541" y1="307" x2="551" y2="307" class="line"></line><line x1="551" y1="307" x2="895" y2="307" class="line"></line><line x1="331" y1="297" x2="331" y2="317" class="line"></line><line x1="905" y1="317" x2="905" y2="297" class="line"></line><line x1="331" y1="317" x2="331" y2="341" class="line"></line><line x1="905" y1="341" x2="905" y2="317" class="line"></line><path d="M331 341 Q331 351 341 351" class="line"></path><path d="M895 351 Q905 351 905 341" class="line"></path><rect x="353" y="337" width="116" height="32" rx="10"></rect><rect x="351" y="335" width="116" height="32" class="terminal" rx="10"></rect><text class="terminal" x="361" y="355">rowsFollowing</text><line x1="341" y1="351" x2="351" y2="351" class="line"></line><line x1="467" y1="351" x2="477" y2="351" class="line"></line><a xlink:href="#INT" xlink:title="INT"><rect x="489" y="337" width="40" height="32"></rect><rect x="487" y="335" width="40" height="32" class="nonterminal"></rect><text class="nonterminal" x="497" y="355">INT</text></a><line x1="477" y1="351" x2="487" y2="351" class="line"></line><line x1="527" y1="351" x2="537" y2="351" class="line"></line><line x1="537" y1="351" x2="895" y2="351" class="line"></line><line x1="331" y1="341" x2="331" y2="361" class="line"></line><line x1="905" y1="361" x2="905" y2="341" class="line"></line><line x1="331" y1="361" x2="331" y2="385" class="line"></line><line x1="905" y1="385" x2="905" y2="361" class="line"></line><path d="M331 385 Q331 395 341 395" class="line"></path><path d="M895 395 Q905 395 905 385" class="line"></path><rect x="373" y="381" width="250" height="32" rx="10"></rect><rect x="371" y="379" width="250" height="32" class="terminal" rx="10"></rect><text class="terminal" x="381" y="399">rowsBetweenUnboundedPreceding</text><line x1="361" y1="395" x2="371" y2="395" class="line"></line><line x1="621" y1="395" x2="631" y2="395" class="line"></line><line x1="341" y1="395" x2="361" y2="395" class="line"></line><line x1="631" y1="395" x2="651" y2="395" class="line"></line><path d="M341 395 Q351 395 351 405" class="line"></path><path d="M641 405 Q641 395 651 395" class="line"></path><line x1="351" y1="405" x2="351" y2="429" class="line"></line><line x1="641" y1="429" x2="641" y2="405" class="line"></line><path d="M351 429 Q351 439 361 439" class="line"></path><path d="M631 439 Q641 439 641 429" class="line"></path><rect x="373" y="425" width="176" height="32" rx="10"></rect><rect x="371" y="423" width="176" height="32" class="terminal" rx="10"></rect><text class="terminal" x="381" y="443">rowsBetweenPreceding</text><line x1="361" y1="439" x2="371" y2="439" class="line"></line><line x1="547" y1="439" x2="557" y2="439" class="line"></line><a xlink:href="#INT" xlink:title="INT"><rect x="569" y="425" width="40" height="32"></rect><rect x="567" y="423" width="40" height="32" class="nonterminal"></rect><text class="nonterminal" x="577" y="443">INT</text></a><line x1="557" y1="439" x2="567" y2="439" class="line"></line><line x1="607" y1="439" x2="617" y2="439" class="line"></line><line x1="617" y1="439" x2="631" y2="439" class="line"></line><line x1="351" y1="429" x2="351" y2="449" class="line"></line><line x1="641" y1="449" x2="641" y2="429" class="line"></line><line x1="351" y1="449" x2="351" y2="473" class="line"></line><line x1="641" y1="473" x2="641" y2="449" class="line"></line><path d="M351 473 Q351 483 361 483" class="line"></path><path d="M631 483 Q641 483 641 473" class="line"></path><rect x="373" y="469" width="190" height="32" rx="10"></rect><rect x="371" y="467" width="190" height="32" class="terminal" rx="10"></rect><text class="terminal" x="381" y="487">rowsBetweenCurrentRow</text><line x1="361" y1="483" x2="371" y2="483" class="line"></line><line x1="561" y1="483" x2="571" y2="483" class="line"></line><line x1="571" y1="483" x2="631" y2="483" class="line"></line><line x1="351" y1="473" x2="351" y2="493" class="line"></line><line x1="641" y1="493" x2="641" y2="473" class="line"></line><line x1="351" y1="493" x2="351" y2="517" class="line"></line><line x1="641" y1="517" x2="641" y2="493" class="line"></line><path d="M351 517 Q351 527 361 527" class="line"></path><path d="M631 527 Q641 527 641 517" class="line"></path><rect x="373" y="513" width="248" height="32" rx="10"></rect><rect x="371" y="511" width="248" height="32" class="terminal" rx="10"></rect><text class="terminal" x="381" y="531">rowsBetweenUnboundedFollowing</text><line x1="361" y1="527" x2="371" y2="527" class="line"></line><line x1="619" y1="527" x2="629" y2="527" class="line"></line><line x1="629" y1="527" x2="631" y2="527" class="line"></line><line x1="351" y1="517" x2="351" y2="537" class="line"></line><line x1="641" y1="537" x2="641" y2="517" class="line"></line><line x1="351" y1="537" x2="351" y2="561" class="line"></line><line x1="641" y1="561" x2="641" y2="537" class="line"></line><path d="M351 561 Q351 571 361 571" class="line"></path><path d="M631 571 Q641 571 641 561" class="line"></path><rect x="373" y="557" width="174" height="32" rx="10"></rect><rect x="371" y="555" width="174" height="32" class="terminal" rx="10"></rect><text class="terminal" x="381" y="575">rowsBetweenFollowing</text><line x1="361" y1="571" x2="371" y2="571" class="line"></line><line x1="545" y1="571" x2="555" y2="571" class="line"></line><a xlink:href="#INT" xlink:title="INT"><rect x="567" y="557" width="40" height="32"></rect><rect x="565" y="555" width="40" height="32" class="nonterminal"></rect><text class="nonterminal" x="575" y="575">INT</text></a><line x1="555" y1="571" x2="565" y2="571" class="line"></line><line x1="605" y1="571" x2="615" y2="571" class="line"></line><line x1="615" y1="571" x2="631" y2="571" class="line"></line><rect x="683" y="381" width="184" height="32" rx="10"></rect><rect x="681" y="379" width="184" height="32" class="terminal" rx="10"></rect><text class="terminal" x="691" y="399">andUnboundedPreceding</text><line x1="671" y1="395" x2="681" y2="395" class="line"></line><line x1="865" y1="395" x2="875" y2="395" class="line"></line><line x1="651" y1="395" x2="671" y2="395" class="line"></line><line x1="875" y1="395" x2="895" y2="395" class="line"></line><path d="M651 395 Q661 395 661 405" class="line"></path><path d="M885 405 Q885 395 895 395" class="line"></path><line x1="661" y1="405" x2="661" y2="429" class="line"></line><line x1="885" y1="429" x2="885" y2="405" class="line"></line><path d="M661 429 Q661 439 671 439" class="line"></path><path d="M875 439 Q885 439 885 429" class="line"></path><rect x="683" y="425" width="110" height="32" rx="10"></rect><rect x="681" y="423" width="110" height="32" class="terminal" rx="10"></rect><text class="terminal" x="691" y="443">andPreceding</text><line x1="671" y1="439" x2="681" y2="439" class="line"></line><line x1="791" y1="439" x2="801" y2="439" class="line"></line><a xlink:href="#INT" xlink:title="INT"><rect x="813" y="425" width="40" height="32"></rect><rect x="811" y="423" width="40" height="32" class="nonterminal"></rect><text class="nonterminal" x="821" y="443">INT</text></a><line x1="801" y1="439" x2="811" y2="439" class="line"></line><line x1="851" y1="439" x2="861" y2="439" class="line"></line><line x1="861" y1="439" x2="875" y2="439" class="line"></line><line x1="661" y1="429" x2="661" y2="449" class="line"></line><line x1="885" y1="449" x2="885" y2="429" class="line"></line><line x1="661" y1="449" x2="661" y2="473" class="line"></line><line x1="885" y1="473" x2="885" y2="449" class="line"></line><path d="M661 473 Q661 483 671 483" class="line"></path><path d="M875 483 Q885 483 885 473" class="line"></path><rect x="683" y="469" width="122" height="32" rx="10"></rect><rect x="681" y="467" width="122" height="32" class="terminal" rx="10"></rect><text class="terminal" x="691" y="487">andCurrentRow</text><line x1="671" y1="483" x2="681" y2="483" class="line"></line><line x1="803" y1="483" x2="813" y2="483" class="line"></line><line x1="813" y1="483" x2="875" y2="483" class="line"></line><line x1="661" y1="473" x2="661" y2="493" class="line"></line><line x1="885" y1="493" x2="885" y2="473" class="line"></line><line x1="661" y1="493" x2="661" y2="517" class="line"></line><line x1="885" y1="517" x2="885" y2="493" class="line"></line><path d="M661 517 Q661 527 671 527" class="line"></path><path d="M875 527 Q885 527 885 517" class="line"></path><rect x="683" y="513" width="182" height="32" rx="10"></rect><rect x="681" y="511" width="182" height="32" class="terminal" rx="10"></rect><text class="terminal" x="691" y="531">andUnboundedFollowing</text><line x1="671" y1="527" x2="681" y2="527" class="line"></line><line x1="863" y1="527" x2="873" y2="527" class="line"></line><line x1="873" y1="527" x2="875" y2="527" class="line"></line><line x1="661" y1="517" x2="661" y2="537" class="line"></line><line x1="885" y1="537" x2="885" y2="517" class="line"></line><line x1="661" y1="537" x2="661" y2="561" class="line"></line><line x1="885" y1="561" x2="885" y2="537" class="line"></line><path d="M661 561 Q661 571 671 571" class="line"></path><path d="M875 571 Q885 571 885 561" class="line"></path><rect x="683" y="557" width="108" height="32" rx="10"></rect><rect x="681" y="555" width="108" height="32" class="terminal" rx="10"></rect><text class="terminal" x="691" y="575">andFollowing</text><line x1="671" y1="571" x2="681" y2="571" class="line"></line><line x1="789" y1="571" x2="799" y2="571" class="line"></line><a xlink:href="#INT" xlink:title="INT"><rect x="811" y="557" width="40" height="32"></rect><rect x="809" y="555" width="40" height="32" class="nonterminal"></rect><text class="nonterminal" x="819" y="575">INT</text></a><line x1="799" y1="571" x2="809" y2="571" class="line"></line><line x1="849" y1="571" x2="859" y2="571" class="line"></line><line x1="859" y1="571" x2="875" y2="571" class="line"></line><line x1="331" y1="385" x2="331" y2="405" class="line"></line><line x1="905" y1="405" x2="905" y2="385" class="line"></line><line x1="331" y1="405" x2="331" y2="595" class="line"></line><line x1="905" y1="595" x2="905" y2="405" class="line"></line><path d="M331 595 Q331 605 341 605" class="line"></path><path d="M895 605 Q905 605 905 595" class="line"></path><line x1="341" y1="605" x2="351" y2="605" class="line"></line><line x1="351" y1="605" x2="895" y2="605" class="line"></line><line x1="13" y1="175" x2="33" y2="175" class="line"></line><line x1="915" y1="175" x2="935" y2="175" class="line"></line><path d="M13 175 Q23 175 23 185" class="line"></path><path d="M925 185 Q925 175 935 175" class="line"></path><line x1="23" y1="185" x2="23" y2="611" class="line"></line><line x1="925" y1="611" x2="925" y2="185" class="line"></line><path d="M23 611 Q23 621 33 621" class="line"></path><path d="M915 621 Q925 621 925 611" class="line"></path><line x1="33" y1="621" x2="43" y2="621" class="line"></line><line x1="43" y1="621" x2="915" y2="621" class="line"></line><line x1="938" y1="175" x2="935" y2="175" class="line"></line><polygon points="945 175 953 171 953 179" class="filled"></polygon><polygon points="945 175 937 171 937 179" class="filled"></polygon></svg><xhtml:p xmlns:xhtml="http://www.w3.org/1999/xhtml">referenced by:<xhtml:ul><xhtml:li><xhtml:a href="#FIELD" title="FIELD">FIELD</xhtml:a></xhtml:li></xhtml:ul></xhtml:p><xhtml:br xmlns:xhtml="http://www.w3.org/1999/xhtml"></xhtml:br><xhtml:p xmlns:xhtml="http://www.w3.org/1999/xhtml" style="font-size: 14px; font-weight:bold"><xhtml:a name="GROUP_FIELD">GROUP_FIELD:</xhtml:a></xhtml:p><svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="492" height="316"><defs><style type="text/css">
    +
    +    @namespace "http://www.w3.org/2000/svg";
    +    .line                 {fill: none; stroke: #332900;}
    +    filled                {fill: #332900; stroke: none;}
    +    text                  {font-family: Verdana, Sans-serif;
    +                            font-size: 12px;
    +                            fill: #4D3D00;
    +                          }
    +    text.terminal         {font-family: Verdana, Sans-serif;
    +                            font-size: 12px;
    +                            fill: #4D3D00;
    +                            font-weight: bold;
    +                          }
    +    rect, circle, polygon {fill: #332900; stroke: #332900;}
    +    rect.terminal         {fill: #FFCC00; stroke: #332900;}
    +    rect.nonterminal      {fill: #FFEB99; stroke: #332900;}
    +    rect.text             {fill: none; stroke: none;}    
    +    polygon.regexp        {fill: #FFF5CC; stroke: #332900;}
    +  </style></defs><polygon points="9 17 1 13 1 21" class="filled"></polygon><polygon points="17 17 9 13 9 21" class="filled"></polygon><line x1="17" y1="17" x2="19" y2="17" class="line"></line><a xlink:href="#FIELD" xlink:title="FIELD"><rect x="51" y="3" width="56" height="32"></rect><rect x="49" y="1" width="56" height="32" class="nonterminal"></rect><text class="nonterminal" x="59" y="21">FIELD</text></a><line x1="39" y1="17" x2="49" y2="17" class="line"></line><line x1="105" y1="17" x2="115" y2="17" class="line"></line><line x1="115" y1="17" x2="453" y2="17" class="line"></line><line x1="19" y1="17" x2="39" y2="17" class="line"></line><line x1="453" y1="17" x2="473" y2="17" class="line"></line><path d="M19 17 Q29 17 29 27" class="line"></path><path d="M463 27 Q463 17 473 17" class="line"></path><line x1="29" y1="27" x2="29" y2="73" class="line"></line><line x1="463" y1="73" x2="463" y2="27" class="line"></line><path d="M29 73 Q29 83 39 83" class="line"></path><path d="M453 83 Q463 83 463 73" class="line"></path><rect x="51" y="69" width="58" height="32" rx="10"></rect><rect x="49" y="67" width="58" height="32" class="terminal" rx="10"></rect><text class="terminal" x="59" y="87">rollup</text><line x1="39" y1="83" x2="49" y2="83" class="line"></line><line x1="107" y1="83" x2="117" y2="83" class="line"></line><a xlink:href="#FIELD" xlink:title="FIELD"><rect x="149" y="69" width="56" height="32"></rect><rect x="147" y="67" width="56" height="32" class="nonterminal"></rect><text class="nonterminal" x="157" y="87">FIELD</text></a><line x1="137" y1="83" x2="147" y2="83" class="line"></line><line x1="203" y1="83" x2="213" y2="83" class="line"></line><path d="M117 83 L137 83 M136 83 Q127 83 127 73 L127 61 Q127 51 137 51" class="line"></path><path d="M213 83 L233 83 M213 83 Q223 83 223 73 L223 61 Q223 51 213 51" class="line"></path><line x1="137" y1="51" x2="147" y2="51" class="line"></line><line x1="147" y1="51" x2="213" y2="51" class="line"></line><line x1="233" y1="83" x2="453" y2="83" class="line"></line><line x1="29" y1="73" x2="29" y2="93" class="line"></line><line x1="463" y1="93" x2="463" y2="73" class="line"></line><line x1="29" y1="93" x2="29" y2="139" class="line"></line><line x1="463" y1="139" x2="463" y2="93" class="line"></line><path d="M29 139 Q29 149 39 149" class="line"></path><path d="M453 149 Q463 149 463 139" class="line"></path><rect x="51" y="135" width="50" height="32" rx="10"></rect><rect x="49" y="133" width="50" height="32" class="terminal" rx="10"></rect><text class="terminal" x="59" y="153">cube</text><line x1="39" y1="149" x2="49" y2="149" class="line"></line><line x1="99" y1="149" x2="109" y2="149" class="line"></line><a xlink:href="#FIELD" xlink:title="FIELD"><rect x="141" y="135" width="56" height="32"></rect><rect x="139" y="133" width="56" height="32" class="nonterminal"></rect><text class="nonterminal" x="149" y="153">FIELD</text></a><line x1="129" y1="149" x2="139" y2="149" class="line"></line><line x1="195" y1="149" x2="205" y2="149" class="line"></line><path d="M109 149 L129 149 M128 149 Q119 149 119 139 L119 127 Q119 117 129 117" class="line"></path><path d="M205 149 L225 149 M205 149 Q215 149 215 139 L215 127 Q215 117 205 117" class="line"></path><line x1="129" y1="117" x2="139" y2="117" class="line"></line><line x1="139" y1="117" x2="205" y2="117" class="line"></line><line x1="225" y1="149" x2="453" y2="149" class="line"></line><line x1="29" y1="139" x2="29" y2="159" class="line"></line><line x1="463" y1="159" x2="463" y2="139" class="line"></line><line x1="29" y1="159" x2="29" y2="205" class="line"></line><line x1="463" y1="205" x2="463" y2="159" class="line"></line><path d="M29 205 Q29 215 39 215" class="line"></path><path d="M453 215 Q463 215 463 205" class="line"></path><rect x="51" y="201" width="106" height="32" rx="10"></rect><rect x="49" y="199" width="106" height="32" class="terminal" rx="10"></rect><text class="terminal" x="59" y="219">groupingSets</text><line x1="39" y1="215" x2="49" y2="215" class="line"></line><line x1="155" y1="215" x2="165" y2="215" class="line"></line><a xlink:href="#FIELD" xlink:title="FIELD"><rect x="217" y="201" width="56" height="32"></rect><rect x="215" y="199" width="56" height="32" class="nonterminal"></rect><text class="nonterminal" x="225" y="219">FIELD</text></a><line x1="205" y1="215" x2="215" y2="215" class="line"></line><line x1="271" y1="215" x2="281" y2="215" class="line"></line><path d="M185 215 L205 215 M204 215 Q195 215 195 205 L195 193 Q195 183 205 183" class="line"></path><path d="M281 215 L301 215 M281 215 Q291 215 291 205 L291 193 Q291 183 281 183" class="line"></path><line x1="205" y1="183" x2="215" y2="183" class="line"></line><line x1="215" y1="183" x2="281" y2="183" class="line"></line><line x1="301" y1="215" x2="433" y2="215" class="line"></line><line x1="165" y1="215" x2="185" y2="215" class="line"></line><line x1="433" y1="215" x2="453" y2="215" class="line"></line><path d="M165 215 Q175 215 175 225" class="line"></path><path d="M443 225 Q443 215 453 215" class="line"></path><line x1="175" y1="225" x2="175" y2="287" class="line"></line><line x1="443" y1="287" x2="443" y2="225" class="line"></line><path d="M175 287 Q175 297 185 297" class="line"></path><path d="M433 297 Q443 297 443 287" class="line"></path><rect x="217" y="283" width="26" height="32" rx="10"></rect><rect x="215" y="281" width="26" height="32" class="terminal" rx="10"></rect><text class="terminal" x="225" y="301">[</text><line x1="205" y1="297" x2="215" y2="297" class="line"></line><line x1="241" y1="297" x2="251" y2="297" class="line"></line><a xlink:href="#FIELD" xlink:title="FIELD"><rect x="283" y="283" width="56" height="32"></rect><rect x="281" y="281" width="56" height="32" class="nonterminal"></rect><text class="nonterminal" x="291" y="301">FIELD</text></a><line x1="271" y1="297" x2="281" y2="297" class="line"></line><line x1="337" y1="297" x2="347" y2="297" class="line"></line><path d="M251 297 L271 297 M270 297 Q261 297 261 287 L261 275 Q261 265 271 265" class="line"></path><path d="M347 297 L367 297 M347 297 Q357 297 357 287 L357 275 Q357 265 347 265" class="line"></path><line x1="271" y1="265" x2="281" y2="265" class="line"></line><line x1="281" y1="265" x2="347" y2="265" class="line"></line><rect x="379" y="283" width="26" height="32" rx="10"></rect><rect x="377" y="281" width="26" height="32" class="terminal" rx="10"></rect><text class="terminal" x="387" y="301">]</text><line x1="367" y1="297" x2="377" y2="297" class="line"></line><line x1="403" y1="297" x2="413" y2="297" class="line"></line><path d="M185 297 L205 297 M204 297 Q195 297 195 287 L195 259 Q195 249 205 249" class="line"></path><path d="M413 297 L433 297 M413 297 Q423 297 423 287 L423 259 Q423 249 413 249" class="line"></path><line x1="205" y1="249" x2="215" y2="249" class="line"></line><line x1="215" y1="249" x2="413" y2="249" class="line"></line><line x1="476" y1="17" x2="473" y2="17" class="line"></line><polygon points="483 17 491 13 491 21" class="filled"></polygon><polygon points="483 17 475 13 475 21" class="filled"></polygon></svg><xhtml:p xmlns:xhtml="http://www.w3.org/1999/xhtml">referenced by:<xhtml:ul><xhtml:li><xhtml:a href="#SELECT" title="SELECT">SELECT</xhtml:a></xhtml:li></xhtml:ul></xhtml:p><xhtml:br xmlns:xhtml="http://www.w3.org/1999/xhtml"></xhtml:br><xhtml:p xmlns:xhtml="http://www.w3.org/1999/xhtml" style="font-size: 14px; font-weight:bold"><xhtml:a name="SORT_FIELD">SORT_FIELD:</xhtml:a></xhtml:p><svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="526" height="256"><defs><style type="text/css">
    +    @namespace "http://www.w3.org/2000/svg";
    +    .line                 {fill: none; stroke: #332900;}
    +    filled                {fill: #332900; stroke: none;}
    +    text                  {font-family: Verdana, Sans-serif;
    +                            font-size: 12px;
    +                            fill: #4D3D00;
    +                          }
    +    text.terminal         {font-family: Verdana, Sans-serif;
    +                            font-size: 12px;
    +                            fill: #4D3D00;
    +                            font-weight: bold;
    +                          }
    +    rect, circle, polygon {fill: #332900; stroke: #332900;}
    +    rect.terminal         {fill: #FFCC00; stroke: #332900;}
    +    rect.nonterminal      {fill: #FFEB99; stroke: #332900;}
    +    rect.text             {fill: none; stroke: none;}    
    +    polygon.regexp        {fill: #FFF5CC; stroke: #332900;}
    +  </style></defs><polygon points="9 17 1 13 1 21" class="filled"></polygon><polygon points="17 17 9 13 9 21" class="filled"></polygon><line x1="17" y1="17" x2="19" y2="17" class="line"></line><a xlink:href="#FIELD" xlink:title="FIELD"><rect x="31" y="3" width="56" height="32"></rect><rect x="29" y="1" width="56" height="32" class="nonterminal"></rect><text class="nonterminal" x="39" y="21">FIELD</text></a><line x1="19" y1="17" x2="29" y2="17" class="line"></line><line x1="85" y1="17" x2="95" y2="17" class="line"></line><rect x="127" y="3" width="42" height="32" rx="10"></rect><rect x="125" y="1" width="42" height="32" class="terminal" rx="10"></rect><text class="terminal" x="135" y="21">asc</text><line x1="115" y1="17" x2="125" y2="17" class="line"></line><line x1="167" y1="17" x2="177" y2="17" class="line"></line><line x1="177" y1="17" x2="347" y2="17" class="line"></line><line x1="95" y1="17" x2="115" y2="17" class="line"></line><line x1="347" y1="17" x2="367" y2="17" class="line"></line><path d="M95 17 Q105 17 105 27" class="line"></path><path d="M357 27 Q357 17 367 17" class="line"></path><line x1="105" y1="27" x2="105" y2="51" class="line"></line><line x1="357" y1="51" x2="357" y2="27" class="line"></line><path d="M105 51 Q105 61 115 61" class="line"></path><path d="M347 61 Q357 61 357 51" class="line"></path><rect x="127" y="47" width="50" height="32" rx="10"></rect><rect x="125" y="45" width="50" height="32" class="terminal" rx="10"></rect><text class="terminal" x="135" y="65">desc</text><line x1="115" y1="61" x2="125" y2="61" class="line"></line><line x1="175" y1="61" x2="185" y2="61" class="line"></line><line x1="185" y1="61" x2="347" y2="61" class="line"></line><line x1="105" y1="51" x2="105" y2="71" class="line"></line><line x1="357" y1="71" x2="357" y2="51" class="line"></line><line x1="105" y1="71" x2="105" y2="117" class="line"></line><line x1="357" y1="117" x2="357" y2="71" class="line"></line><path d="M105 117 Q105 127 115 127" class="line"></path><path d="M347 127 Q357 127 357 117" class="line"></path><rect x="127" y="113" width="68" height="32" rx="10"></rect><rect x="125" y="111" width="68" height="32" class="terminal" rx="10"></rect><text class="terminal" x="135" y="131">sortAsc</text><line x1="115" y1="127" x2="125" y2="127" class="line"></line><line x1="193" y1="127" x2="203" y2="127" class="line"></line><a xlink:href="#BINDING" xlink:title="BINDING"><rect x="235" y="113" width="74" height="32"></rect><rect x="233" y="111" width="74" height="32" class="nonterminal"></rect><text class="nonterminal" x="243" y="131">BINDING</text></a><line x1="223" y1="127" x2="233" y2="127" class="line"></line><line x1="307" y1="127" x2="317" y2="127" class="line"></line><path d="M203 127 L223 127 M222 127 Q213 127 213 117 L213 105 Q213 95 223 95" class="line"></path><path d="M317 127 L337 127 M317 127 Q327 127 327 117 L327 105 Q327 95 317 95" class="line"></path><line x1="223" y1="95" x2="233" y2="95" class="line"></line><line x1="233" y1="95" x2="317" y2="95" class="line"></line><line x1="337" y1="127" x2="347" y2="127" class="line"></line><line x1="105" y1="117" x2="105" y2="137" class="line"></line><line x1="357" y1="137" x2="357" y2="117" class="line"></line><line x1="105" y1="137" x2="105" y2="183" class="line"></line><line x1="357" y1="183" x2="357" y2="137" class="line"></line><path d="M105 183 Q105 193 115 193" class="line"></path><path d="M347 193 Q357 193 357 183" class="line"></path><rect x="127" y="179" width="78" height="32" rx="10"></rect><rect x="125" y="177" width="78" height="32" class="terminal" rx="10"></rect><text class="terminal" x="135" y="197">sortDesc</text><line x1="115" y1="193" x2="125" y2="193" class="line"></line><line x1="203" y1="193" x2="213" y2="193" class="line"></line><a xlink:href="#BINDING" xlink:title="BINDING"><rect x="245" y="179" width="74" height="32"></rect><rect x="243" y="177" width="74" height="32" class="nonterminal"></rect><text class="nonterminal" x="253" y="197">BINDING</text></a><line x1="233" y1="193" x2="243" y2="193" class="line"></line><line x1="317" y1="193" x2="327" y2="193" class="line"></line><path d="M213 193 L233 193 M232 193 Q223 193 223 183 L223 171 Q223 161 233 161" class="line"></path><path d="M327 193 L347 193 M327 193 Q337 193 337 183 L337 171 Q337 161 327 161" class="line"></path><line x1="233" y1="161" x2="243" y2="161" class="line"></line><line x1="243" y1="161" x2="327" y2="161" class="line"></line><line x1="105" y1="183" x2="105" y2="203" class="line"></line><line x1="357" y1="203" x2="357" y2="183" class="line"></line><line x1="105" y1="203" x2="105" y2="227" class="line"></line><line x1="357" y1="227" x2="357" y2="203" class="line"></line><path d="M105 227 Q105 237 115 237" class="line"></path><path d="M347 237 Q357 237 357 227" class="line"></path><rect x="127" y="223" width="46" height="32" rx="10"></rect><rect x="125" y="221" width="46" height="32" class="terminal" rx="10"></rect><text class="terminal" x="135" y="241">sort</text><line x1="115" y1="237" x2="125" y2="237" class="line"></line><line x1="171" y1="237" x2="181" y2="237" class="line"></line><a xlink:href="#BINDING_MAP" xlink:title="BINDING_MAP"><rect x="193" y="223" width="108" height="32"></rect><rect x="191" y="221" width="108" height="32" class="nonterminal"></rect><text class="nonterminal" x="201" y="241">BINDING_MAP</text></a><line x1="181" y1="237" x2="191" y2="237" class="line"></line><line x1="299" y1="237" x2="309" y2="237" class="line"></line><line x1="309" y1="237" x2="347" y2="237" class="line"></line><rect x="399" y="3" width="80" height="32" rx="10"></rect><rect x="397" y="1" width="80" height="32" class="terminal" rx="10"></rect><text class="terminal" x="407" y="21">nullsFirst</text><line x1="387" y1="17" x2="397" y2="17" class="line"></line><line x1="477" y1="17" x2="487" y2="17" class="line"></line><line x1="367" y1="17" x2="387" y2="17" class="line"></line><line x1="487" y1="17" x2="507" y2="17" class="line"></line><path d="M367 17 Q377 17 377 27" class="line"></path><path d="M497 27 Q497 17 507 17" class="line"></path><line x1="377" y1="27" x2="377" y2="51" class="line"></line><line x1="497" y1="51" x2="497" y2="27" class="line"></line><path d="M377 51 Q377 61 387 61" class="line"></path><path d="M487 61 Q497 61 497 51" class="line"></path><rect x="399" y="47" width="78" height="32" rx="10"></rect><rect x="397" y="45" width="78" height="32" class="terminal" rx="10"></rect><text class="terminal" x="407" y="65">nullsLast</text><line x1="387" y1="61" x2="397" y2="61" class="line"></line><line x1="475" y1="61" x2="485" y2="61" class="line"></line><line x1="485" y1="61" x2="487" y2="61" class="line"></line><line x1="377" y1="51" x2="377" y2="71" class="line"></line><line x1="497" y1="71" x2="497" y2="51" class="line"></line><line x1="377" y1="71" x2="377" y2="85" class="line"></line><line x1="497" y1="85" x2="497" y2="71" class="line"></line><path d="M377 85 Q377 95 387 95" class="line"></path><path d="M487 95 Q497 95 497 85" class="line"></path><line x1="387" y1="95" x2="397" y2="95" class="line"></line><line x1="397" y1="95" x2="487" y2="95" class="line"></line><line x1="510" y1="17" x2="507" y2="17" class="line"></line><polygon points="517 17 525 13 525 21" class="filled"></polygon><polygon points="517 17 509 13 509 21" class="filled"></polygon></svg><xhtml:p xmlns:xhtml="http://www.w3.org/1999/xhtml">referenced by:<xhtml:ul><xhtml:li><xhtml:a href="#PARTITION_CLAUSE" title="PARTITION_CLAUSE">PARTITION_CLAUSE</xhtml:a></xhtml:li><xhtml:li><xhtml:a href="#SELECT" title="SELECT">SELECT</xhtml:a></xhtml:li></xhtml:ul></xhtml:p><xhtml:br xmlns:xhtml="http://www.w3.org/1999/xhtml"></xhtml:br><xhtml:p xmlns:xhtml="http://www.w3.org/1999/xhtml" style="font-size: 14px; font-weight:bold"><xhtml:a name="INT">INT:</xhtml:a></xhtml:p><svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="158" height="52"><defs><style type="text/css">
    +
    +    @namespace "http://www.w3.org/2000/svg";
    +    .line                 {fill: none; stroke: #332900;}
    +    filled                {fill: #332900; stroke: none;}
    +    text                  {font-family: Verdana, Sans-serif;
    +                            font-size: 12px;
    +                            fill: #4D3D00;
    +                          }
    +    text.terminal         {font-family: Verdana, Sans-serif;
    +                            font-size: 12px;
    +                            fill: #4D3D00;
    +                            font-weight: bold;
    +                          }
    +    rect, circle, polygon {fill: #332900; stroke: #332900;}
    +    rect.terminal         {fill: #FFCC00; stroke: #332900;}
    +    rect.nonterminal      {fill: #FFEB99; stroke: #332900;}
    +    rect.text             {fill: none; stroke: none;}    
    +    polygon.regexp        {fill: #FFF5CC; stroke: #332900;}
    +  </style></defs><polygon points="9 33 1 29 1 37" class="filled"></polygon><polygon points="17 33 9 29 9 37" class="filled"></polygon><line x1="17" y1="33" x2="19" y2="33" class="line"></line><polygon points="51 35 58 19 104 19 111 35 104 51 58 51"></polygon><polygon points="49 33 56 17 102 17 109 33 102 49 56 49" class="regexp"></polygon><text class="regexp" x="64" y="37">[0-9]</text><line x1="39" y1="33" x2="49" y2="33" class="line"></line><line x1="109" y1="33" x2="119" y2="33" class="line"></line><path d="M19 33 L39 33 M38 33 Q29 33 29 23 L29 11 Q29 1 39 1" class="line"></path><path d="M119 33 L139 33 M119 33 Q129 33 129 23 L129 11 Q129 1 119 1" class="line"></path><line x1="39" y1="1" x2="49" y2="1" class="line"></line><line x1="49" y1="1" x2="119" y2="1" class="line"></line><line x1="142" y1="33" x2="139" y2="33" class="line"></line><polygon points="149 33 157 29 157 37" class="filled"></polygon><polygon points="149 33 141 29 141 37" class="filled"></polygon></svg><xhtml:p xmlns:xhtml="http://www.w3.org/1999/xhtml">referenced by:<xhtml:ul><xhtml:li><xhtml:a href="#AGGREGATE_FUNCTION" title="AGGREGATE_FUNCTION">AGGREGATE_FUNCTION</xhtml:a></xhtml:li><xhtml:li><xhtml:a href="#PARTITION_CLAUSE" title="PARTITION_CLAUSE">PARTITION_CLAUSE</xhtml:a></xhtml:li><xhtml:li><xhtml:a href="#SELECT" title="SELECT">SELECT</xhtml:a></xhtml:li></xhtml:ul></xhtml:p><xhtml:br xmlns:xhtml="http://www.w3.org/1999/xhtml"></xhtml:br><xhtml:p xmlns:xhtml="http://www.w3.org/1999/xhtml" style="font-size: 14px; font-weight:bold"><xhtml:a name="NAME">NAME:</xhtml:a></xhtml:p><svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="198" height="140"><defs><style type="text/css">
    +    @namespace "http://www.w3.org/2000/svg";
    +    .line                 {fill: none; stroke: #332900;}
    +    filled                {fill: #332900; stroke: none;}
    +    text                  {font-family: Verdana, Sans-serif;
    +                            font-size: 12px;
    +                            fill: #4D3D00;
    +                          }
    +    text.terminal         {font-family: Verdana, Sans-serif;
    +                            font-size: 12px;
    +                            fill: #4D3D00;
    +                            font-weight: bold;
    +                          }
    +    rect, circle, polygon {fill: #332900; stroke: #332900;}
    +    rect.terminal         {fill: #FFCC00; stroke: #332900;}
    +    rect.nonterminal      {fill: #FFEB99; stroke: #332900;}
    +    rect.text             {fill: none; stroke: none;}    
    +    polygon.regexp        {fill: #FFF5CC; stroke: #332900;}
    +  </style></defs><polygon points="9 33 1 29 1 37" class="filled"></polygon><polygon points="17 33 9 29 9 37" class="filled"></polygon><line x1="17" y1="33" x2="19" y2="33" class="line"></line><polygon points="71 35 78 19 124 19 131 35 124 51 78 51"></polygon><polygon points="69 33 76 17 122 17 129 33 122 49 76 49" class="regexp"></polygon><text class="regexp" x="84" y="37">[A-Z]</text><line x1="59" y1="33" x2="69" y2="33" class="line"></line><line x1="129" y1="33" x2="139" y2="33" class="line"></line><line x1="39" y1="33" x2="59" y2="33" class="line"></line><line x1="139" y1="33" x2="159" y2="33" class="line"></line><path d="M39 33 Q49 33 49 43" class="line"></path><path d="M149 43 Q149 33 159 33" class="line"></path><line x1="49" y1="43" x2="49" y2="67" class="line"></line><line x1="149" y1="67" x2="149" y2="43" class="line"></line><path d="M49 67 Q49 77 59 77" class="line"></path><path d="M139 77 Q149 77 149 67" class="line"></path><polygon points="71 79 78 63 124 63 131 79 124 95 78 95"></polygon><polygon points="69 77 76 61 122 61 129 77 122 93 76 93" class="regexp"></polygon><text class="regexp" x="84" y="81">[a-z]</text><line x1="59" y1="77" x2="69" y2="77" class="line"></line><line x1="129" y1="77" x2="139" y2="77" class="line"></line><line x1="49" y1="67" x2="49" y2="87" class="line"></line><line x1="149" y1="87" x2="149" y2="67" class="line"></line><line x1="49" y1="87" x2="49" y2="111" class="line"></line><line x1="149" y1="111" x2="149" y2="87" class="line"></line><path d="M49 111 Q49 121 59 121" class="line"></path><path d="M139 121 Q149 121 149 111" class="line"></path><polygon points="71 123 78 107 124 107 131 123 124 139 78 139"></polygon><polygon points="69 121 76 105 122 105 129 121 122 137 76 137" class="regexp"></polygon><text class="regexp" x="84" y="125">[0-9]</text><line x1="59" y1="121" x2="69" y2="121" class="line"></line><line x1="129" y1="121" x2="139" y2="121" class="line"></line><path d="M19 33 L39 33 M38 33 Q29 33 29 23 L29 11 Q29 1 39 1" class="line"></path><path d="M159 33 L179 33 M159 33 Q169 33 169 23 L169 11 Q169 1 159 1" class="line"></path><line x1="39" y1="1" x2="49" y2="1" class="line"></line><line x1="49" y1="1" x2="159" y2="1" class="line"></line><line x1="182" y1="33" x2="179" y2="33" class="line"></line><polygon points="189 33 197 29 197 37" class="filled"></polygon><polygon points="189 33 181 29 181 37" class="filled"></polygon></svg><xhtml:p xmlns:xhtml="http://www.w3.org/1999/xhtml">referenced by:<xhtml:ul><xhtml:li><xhtml:a href="#FIELD" title="FIELD">FIELD</xhtml:a></xhtml:li><xhtml:li><xhtml:a href="#TABLE" title="TABLE">TABLE</xhtml:a></xhtml:li></xhtml:ul></xhtml:p><xhtml:br xmlns:xhtml="http://www.w3.org/1999/xhtml"></xhtml:br><xhtml:p xmlns:xhtml="http://www.w3.org/1999/xhtml" style="font-size: 14px; font-weight:bold"><xhtml:a name="TABLE">TABLE:</xhtml:a></xhtml:p><svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="710" height="410"><defs><style type="text/css">
    +
    +    @namespace "http://www.w3.org/2000/svg";
    +    .line                 {fill: none; stroke: #332900;}
    +    filled                {fill: #332900; stroke: none;}
    +    text                  {font-family: Verdana, Sans-serif;
    +                            font-size: 12px;
    +                            fill: #4D3D00;
    +                          }
    +    text.terminal         {font-family: Verdana, Sans-serif;
    +                            font-size: 12px;
    +                            fill: #4D3D00;
    +                            font-weight: bold;
    +                          }
    +    rect, circle, polygon {fill: #332900; stroke: #332900;}
    +    rect.terminal         {fill: #FFCC00; stroke: #332900;}
    +    rect.nonterminal      {fill: #FFEB99; stroke: #332900;}
    +    rect.text             {fill: none; stroke: none;}    
    +    polygon.regexp        {fill: #FFF5CC; stroke: #332900;}
    +  </style></defs><polygon points="9 17 1 13 1 21" class="filled"></polygon><polygon points="17 17 9 13 9 21" class="filled"></polygon><line x1="17" y1="17" x2="19" y2="17" class="line"></line><rect x="51" y="3" width="168" height="32" rx="10"></rect><rect x="49" y="1" width="168" height="32" class="terminal" rx="10"></rect><text class="terminal" x="59" y="21">jOOQ generated Table</text><line x1="39" y1="17" x2="49" y2="17" class="line"></line><line x1="217" y1="17" x2="227" y2="17" class="line"></line><line x1="227" y1="17" x2="671" y2="17" class="line"></line><line x1="19" y1="17" x2="39" y2="17" class="line"></line><line x1="671" y1="17" x2="691" y2="17" class="line"></line><path d="M19 17 Q29 17 29 27" class="line"></path><path d="M681 27 Q681 17 691 17" class="line"></path><line x1="29" y1="27" x2="29" y2="51" class="line"></line><line x1="681" y1="51" x2="681" y2="27" class="line"></line><path d="M29 51 Q29 61 39 61" class="line"></path><path d="M671 61 Q681 61 681 51" class="line"></path><rect x="51" y="47" width="104" height="32" rx="10"></rect><rect x="49" y="45" width="104" height="32" class="terminal" rx="10"></rect><text class="terminal" x="59" y="65">CustomTable</text><line x1="39" y1="61" x2="49" y2="61" class="line"></line><line x1="153" y1="61" x2="163" y2="61" class="line"></line><line x1="163" y1="61" x2="671" y2="61" class="line"></line><line x1="29" y1="51" x2="29" y2="71" class="line"></line><line x1="681" y1="71" x2="681" y2="51" class="line"></line><line x1="29" y1="71" x2="29" y2="95" class="line"></line><line x1="681" y1="95" x2="681" y2="71" class="line"></line><path d="M29 95 Q29 105 39 105" class="line"></path><path d="M671 105 Q681 105 681 95" class="line"></path><rect x="51" y="91" width="52" height="32" rx="10"></rect><rect x="49" y="89" width="52" height="32" class="terminal" rx="10"></rect><text class="terminal" x="59" y="109">table</text><line x1="39" y1="105" x2="49" y2="105" class="line"></line><line x1="101" y1="105" x2="111" y2="105" class="line"></line><a xlink:href="#SQL" xlink:title="SQL"><rect x="143" y="91" width="44" height="32"></rect><rect x="141" y="89" width="44" height="32" class="nonterminal"></rect><text class="nonterminal" x="151" y="109">SQL</text></a><line x1="131" y1="105" x2="141" y2="105" class="line"></line><line x1="185" y1="105" x2="195" y2="105" class="line"></line><line x1="195" y1="105" x2="217" y2="105" class="line"></line><line x1="111" y1="105" x2="131" y2="105" class="line"></line><line x1="217" y1="105" x2="237" y2="105" class="line"></line><path d="M111 105 Q121 105 121 115" class="line"></path><path d="M227 115 Q227 105 237 105" class="line"></path><line x1="121" y1="115" x2="121" y2="139" class="line"></line><line x1="227" y1="139" x2="227" y2="115" class="line"></line><path d="M121 139 Q121 149 131 149" class="line"></path><path d="M217 149 Q227 149 227 139" class="line"></path><a xlink:href="#SELECT" xlink:title="SELECT"><rect x="143" y="135" width="66" height="32"></rect><rect x="141" y="133" width="66" height="32" class="nonterminal"></rect><text class="nonterminal" x="151" y="153">SELECT</text></a><line x1="131" y1="149" x2="141" y2="149" class="line"></line><line x1="207" y1="149" x2="217" y2="149" class="line"></line><line x1="237" y1="105" x2="671" y2="105" class="line"></line><line x1="29" y1="95" x2="29" y2="115" class="line"></line><line x1="681" y1="115" x2="681" y2="95" class="line"></line><line x1="29" y1="115" x2="29" y2="183" class="line"></line><line x1="681" y1="183" x2="681" y2="115" class="line"></line><path d="M29 183 Q29 193 39 193" class="line"></path><path d="M671 193 Q681 193 681 183" class="line"></path><rect x="71" y="179" width="52" height="32" rx="10"></rect><rect x="69" y="177" width="52" height="32" class="terminal" rx="10"></rect><text class="terminal" x="79" y="197">table</text><line x1="59" y1="193" x2="69" y2="193" class="line"></line><line x1="121" y1="193" x2="131" y2="193" class="line"></line><line x1="131" y1="193" x2="143" y2="193" class="line"></line><line x1="39" y1="193" x2="59" y2="193" class="line"></line><line x1="143" y1="193" x2="163" y2="193" class="line"></line><path d="M39 193 Q49 193 49 203" class="line"></path><path d="M153 203 Q153 193 163 193" class="line"></path><line x1="49" y1="203" x2="49" y2="227" class="line"></line><line x1="153" y1="227" x2="153" y2="203" class="line"></line><path d="M49 227 Q49 237 59 237" class="line"></path><path d="M143 237 Q153 237 153 227" class="line"></path><rect x="71" y="223" width="64" height="32" rx="10"></rect><rect x="69" y="221" width="64" height="32" class="terminal" rx="10"></rect><text class="terminal" x="79" y="241">unnest</text><line x1="59" y1="237" x2="69" y2="237" class="line"></line><line x1="133" y1="237" x2="143" y2="237" class="line"></line><a xlink:href="#FIELD" xlink:title="FIELD"><rect x="195" y="179" width="56" height="32"></rect><rect x="193" y="177" width="56" height="32" class="nonterminal"></rect><text class="nonterminal" x="203" y="197">FIELD</text></a><line x1="183" y1="193" x2="193" y2="193" class="line"></line><line x1="249" y1="193" x2="259" y2="193" class="line"></line><line x1="259" y1="193" x2="317" y2="193" class="line"></line><line x1="163" y1="193" x2="183" y2="193" class="line"></line><line x1="317" y1="193" x2="337" y2="193" class="line"></line><path d="M163 193 Q173 193 173 203" class="line"></path><path d="M327 203 Q327 193 337 193" class="line"></path><line x1="173" y1="203" x2="173" y2="249" class="line"></line><line x1="327" y1="249" x2="327" y2="203" class="line"></line><path d="M173 249 Q173 259 183 259" class="line"></path><path d="M317 259 Q327 259 327 249" class="line"></path><a xlink:href="#BINDING" xlink:title="BINDING"><rect x="215" y="245" width="74" height="32"></rect><rect x="213" y="243" width="74" height="32" class="nonterminal"></rect><text class="nonterminal" x="223" y="263">BINDING</text></a><line x1="203" y1="259" x2="213" y2="259" class="line"></line><line x1="287" y1="259" x2="297" y2="259" class="line"></line><path d="M183 259 L203 259 M202 259 Q193 259 193 249 L193 237 Q193 227 203 227" class="line"></path><path d="M297 259 L317 259 M297 259 Q307 259 307 249 L307 237 Q307 227 297 227" class="line"></path><line x1="203" y1="227" x2="213" y2="227" class="line"></line><line x1="213" y1="227" x2="297" y2="227" class="line"></line><line x1="173" y1="249" x2="173" y2="269" class="line"></line><line x1="327" y1="269" x2="327" y2="249" class="line"></line><line x1="173" y1="269" x2="173" y2="283" class="line"></line><line x1="327" y1="283" x2="327" y2="269" class="line"></line><path d="M173 283 Q173 293 183 293" class="line"></path><path d="M317 293 Q327 293 327 283" class="line"></path><line x1="183" y1="293" x2="193" y2="293" class="line"></line><line x1="193" y1="293" x2="317" y2="293" class="line"></line><line x1="337" y1="193" x2="671" y2="193" class="line"></line><line x1="29" y1="183" x2="29" y2="203" class="line"></line><line x1="681" y1="203" x2="681" y2="183" class="line"></line><line x1="29" y1="203" x2="29" y2="315" class="line"></line><line x1="681" y1="315" x2="681" y2="203" class="line"></line><path d="M29 315 Q29 325 39 325" class="line"></path><path d="M671 325 Q681 325 681 315" class="line"></path><a xlink:href="#TABLE" xlink:title="TABLE"><rect x="51" y="311" width="58" height="32"></rect><rect x="49" y="309" width="58" height="32" class="nonterminal"></rect><text class="nonterminal" x="59" y="329">TABLE</text></a><line x1="39" y1="325" x2="49" y2="325" class="line"></line><line x1="107" y1="325" x2="117" y2="325" class="line"></line><rect x="129" y="311" width="34" height="32" rx="10"></rect><rect x="127" y="309" width="34" height="32" class="terminal" rx="10"></rect><text class="terminal" x="137" y="329">as</text><line x1="117" y1="325" x2="127" y2="325" class="line"></line><line x1="161" y1="325" x2="171" y2="325" class="line"></line><a xlink:href="#NAME" xlink:title="NAME"><rect x="183" y="311" width="54" height="32"></rect><rect x="181" y="309" width="54" height="32" class="nonterminal"></rect><text class="nonterminal" x="191" y="329">NAME</text></a><line x1="171" y1="325" x2="181" y2="325" class="line"></line><line x1="235" y1="325" x2="245" y2="325" class="line"></line><line x1="245" y1="325" x2="671" y2="325" class="line"></line><line x1="29" y1="315" x2="29" y2="335" class="line"></line><line x1="681" y1="335" x2="681" y2="315" class="line"></line><line x1="29" y1="335" x2="29" y2="381" class="line"></line><line x1="681" y1="381" x2="681" y2="335" class="line"></line><path d="M29 381 Q29 391 39 391" class="line"></path><path d="M671 391 Q681 391 681 381" class="line"></path><a xlink:href="#TABLE" xlink:title="TABLE"><rect x="51" y="377" width="58" height="32"></rect><rect x="49" y="375" width="58" height="32" class="nonterminal"></rect><text class="nonterminal" x="59" y="395">TABLE</text></a><line x1="39" y1="391" x2="49" y2="391" class="line"></line><line x1="107" y1="391" x2="117" y2="391" class="line"></line><rect x="129" y="377" width="52" height="32" rx="10"></rect><rect x="127" y="375" width="52" height="32" class="terminal" rx="10"></rect><text class="terminal" x="137" y="395">pivot</text><line x1="117" y1="391" x2="127" y2="391" class="line"></line><line x1="179" y1="391" x2="189" y2="391" class="line"></line><a xlink:href="#AGGREGATE_FUNCTION" xlink:title="AGGREGATE_FUNCTION"><rect x="201" y="377" width="166" height="32"></rect><rect x="199" y="375" width="166" height="32" class="nonterminal"></rect><text class="nonterminal" x="209" y="395">AGGREGATE_FUNCTION</text></a><line x1="189" y1="391" x2="199" y2="391" class="line"></line><line x1="365" y1="391" x2="375" y2="391" class="line"></line><rect x="387" y="377" width="32" height="32" rx="10"></rect><rect x="385" y="375" width="32" height="32" class="terminal" rx="10"></rect><text class="terminal" x="395" y="395">of</text><line x1="375" y1="391" x2="385" y2="391" class="line"></line><line x1="417" y1="391" x2="427" y2="391" class="line"></line><a xlink:href="#FIELD" xlink:title="FIELD"><rect x="439" y="377" width="56" height="32"></rect><rect x="437" y="375" width="56" height="32" class="nonterminal"></rect><text class="nonterminal" x="447" y="395">FIELD</text></a><line x1="427" y1="391" x2="437" y2="391" class="line"></line><line x1="493" y1="391" x2="503" y2="391" class="line"></line><rect x="515" y="377" width="32" height="32" rx="10"></rect><rect x="513" y="375" width="32" height="32" class="terminal" rx="10"></rect><text class="terminal" x="523" y="395">in</text><line x1="503" y1="391" x2="513" y2="391" class="line"></line><line x1="545" y1="391" x2="555" y2="391" class="line"></line><a xlink:href="#FIELD" xlink:title="FIELD"><rect x="587" y="377" width="56" height="32"></rect><rect x="585" y="375" width="56" height="32" class="nonterminal"></rect><text class="nonterminal" x="595" y="395">FIELD</text></a><line x1="575" y1="391" x2="585" y2="391" class="line"></line><line x1="641" y1="391" x2="651" y2="391" class="line"></line><path d="M555 391 L575 391 M574 391 Q565 391 565 381 L565 369 Q565 359 575 359" class="line"></path><path d="M651 391 L671 391 M651 391 Q661 391 661 381 L661 369 Q661 359 651 359" class="line"></path><line x1="575" y1="359" x2="585" y2="359" class="line"></line><line x1="585" y1="359" x2="651" y2="359" class="line"></line><line x1="694" y1="17" x2="691" y2="17" class="line"></line><polygon points="701 17 709 13 709 21" class="filled"></polygon><polygon points="701 17 693 13 693 21" class="filled"></polygon></svg><xhtml:p xmlns:xhtml="http://www.w3.org/1999/xhtml">referenced by:<xhtml:ul><xhtml:li><xhtml:a href="#DELETE" title="DELETE">DELETE</xhtml:a></xhtml:li><xhtml:li><xhtml:a href="#INSERT" title="INSERT">INSERT</xhtml:a></xhtml:li><xhtml:li><xhtml:a href="#MERGE" title="MERGE">MERGE</xhtml:a></xhtml:li><xhtml:li><xhtml:a href="#RESULT" title="RESULT">RESULT</xhtml:a></xhtml:li><xhtml:li><xhtml:a href="#SELECT" title="SELECT">SELECT</xhtml:a></xhtml:li><xhtml:li><xhtml:a href="#TABLE" title="TABLE">TABLE</xhtml:a></xhtml:li><xhtml:li><xhtml:a href="#TRUNCATE" title="TRUNCATE">TRUNCATE</xhtml:a></xhtml:li><xhtml:li><xhtml:a href="#UPDATE" title="UPDATE">UPDATE</xhtml:a></xhtml:li></xhtml:ul></xhtml:p><xhtml:br xmlns:xhtml="http://www.w3.org/1999/xhtml"></xhtml:br><xhtml:p xmlns:xhtml="http://www.w3.org/1999/xhtml" style="font-size: 14px; font-weight:bold"><xhtml:a name="CONDITION">CONDITION:</xhtml:a></xhtml:p><svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="498" height="1774"><defs><style type="text/css">
    +
    +    @namespace "http://www.w3.org/2000/svg";
    +    .line                 {fill: none; stroke: #332900;}
    +    filled                {fill: #332900; stroke: none;}
    +    text                  {font-family: Verdana, Sans-serif;
    +                            font-size: 12px;
    +                            fill: #4D3D00;
    +                          }
    +    text.terminal         {font-family: Verdana, Sans-serif;
    +                            font-size: 12px;
    +                            fill: #4D3D00;
    +                            font-weight: bold;
    +                          }
    +    rect, circle, polygon {fill: #332900; stroke: #332900;}
    +    rect.terminal         {fill: #FFCC00; stroke: #332900;}
    +    rect.nonterminal      {fill: #FFEB99; stroke: #332900;}
    +    rect.text             {fill: none; stroke: none;}    
    +    polygon.regexp        {fill: #FFF5CC; stroke: #332900;}
    +  </style></defs><polygon points="9 17 1 13 1 21" class="filled"></polygon><polygon points="17 17 9 13 9 21" class="filled"></polygon><line x1="17" y1="17" x2="19" y2="17" class="line"></line><a xlink:href="#CONDITION" xlink:title="CONDITION"><rect x="51" y="3" width="92" height="32"></rect><rect x="49" y="1" width="92" height="32" class="nonterminal"></rect><text class="nonterminal" x="59" y="21">CONDITION</text></a><line x1="39" y1="17" x2="49" y2="17" class="line"></line><line x1="141" y1="17" x2="151" y2="17" class="line"></line><a xlink:href="#MORE_CONDITIONS" xlink:title="MORE_CONDITIONS"><rect x="183" y="3" width="144" height="32"></rect><rect x="181" y="1" width="144" height="32" class="nonterminal"></rect><text class="nonterminal" x="191" y="21">MORE_CONDITIONS</text></a><line x1="171" y1="17" x2="181" y2="17" class="line"></line><line x1="325" y1="17" x2="335" y2="17" class="line"></line><line x1="151" y1="17" x2="171" y2="17" class="line"></line><line x1="335" y1="17" x2="355" y2="17" class="line"></line><path d="M151 17 Q161 17 161 27" class="line"></path><path d="M345 27 Q345 17 355 17" class="line"></path><line x1="161" y1="27" x2="161" y2="51" class="line"></line><line x1="345" y1="51" x2="345" y2="27" class="line"></line><path d="M161 51 Q161 61 171 61" class="line"></path><path d="M335 61 Q345 61 345 51" class="line"></path><rect x="183" y="47" width="40" height="32" rx="10"></rect><rect x="181" y="45" width="40" height="32" class="terminal" rx="10"></rect><text class="terminal" x="191" y="65">not</text><line x1="171" y1="61" x2="181" y2="61" class="line"></line><line x1="221" y1="61" x2="231" y2="61" class="line"></line><line x1="231" y1="61" x2="335" y2="61" class="line"></line><line x1="355" y1="17" x2="459" y2="17" class="line"></line><line x1="19" y1="17" x2="39" y2="17" class="line"></line><line x1="459" y1="17" x2="479" y2="17" class="line"></line><path d="M19 17 Q29 17 29 27" class="line"></path><path d="M469 27 Q469 17 479 17" class="line"></path><line x1="29" y1="27" x2="29" y2="95" class="line"></line><line x1="469" y1="95" x2="469" y2="27" class="line"></line><path d="M29 95 Q29 105 39 105" class="line"></path><path d="M459 105 Q469 105 469 95" class="line"></path><a xlink:href="#FIELD" xlink:title="FIELD"><rect x="51" y="91" width="56" height="32"></rect><rect x="49" y="89" width="56" height="32" class="nonterminal"></rect><text class="nonterminal" x="59" y="109">FIELD</text></a><line x1="39" y1="105" x2="49" y2="105" class="line"></line><line x1="105" y1="105" x2="115" y2="105" class="line"></line><rect x="147" y="91" width="56" height="32" rx="10"></rect><rect x="145" y="89" width="56" height="32" class="terminal" rx="10"></rect><text class="terminal" x="155" y="109">isNull</text><line x1="135" y1="105" x2="145" y2="105" class="line"></line><line x1="201" y1="105" x2="211" y2="105" class="line"></line><line x1="211" y1="105" x2="439" y2="105" class="line"></line><line x1="115" y1="105" x2="135" y2="105" class="line"></line><line x1="439" y1="105" x2="459" y2="105" class="line"></line><path d="M115 105 Q125 105 125 115" class="line"></path><path d="M449 115 Q449 105 459 105" class="line"></path><line x1="125" y1="115" x2="125" y2="139" class="line"></line><line x1="449" y1="139" x2="449" y2="115" class="line"></line><path d="M125 139 Q125 149 135 149" class="line"></path><path d="M439 149 Q449 149 449 139" class="line"></path><rect x="147" y="135" width="80" height="32" rx="10"></rect><rect x="145" y="133" width="80" height="32" class="terminal" rx="10"></rect><text class="terminal" x="155" y="153">isNotNull</text><line x1="135" y1="149" x2="145" y2="149" class="line"></line><line x1="225" y1="149" x2="235" y2="149" class="line"></line><line x1="235" y1="149" x2="439" y2="149" class="line"></line><line x1="125" y1="139" x2="125" y2="159" class="line"></line><line x1="449" y1="159" x2="449" y2="139" class="line"></line><line x1="125" y1="159" x2="125" y2="183" class="line"></line><line x1="449" y1="183" x2="449" y2="159" class="line"></line><path d="M125 183 Q125 193 135 193" class="line"></path><path d="M439 193 Q449 193 449 183" class="line"></path><rect x="147" y="179" width="60" height="32" rx="10"></rect><rect x="145" y="177" width="60" height="32" class="terminal" rx="10"></rect><text class="terminal" x="155" y="197">isTrue</text><line x1="135" y1="193" x2="145" y2="193" class="line"></line><line x1="205" y1="193" x2="215" y2="193" class="line"></line><line x1="215" y1="193" x2="439" y2="193" class="line"></line><line x1="125" y1="183" x2="125" y2="203" class="line"></line><line x1="449" y1="203" x2="449" y2="183" class="line"></line><line x1="125" y1="203" x2="125" y2="227" class="line"></line><line x1="449" y1="227" x2="449" y2="203" class="line"></line><path d="M125 227 Q125 237 135 237" class="line"></path><path d="M439 237 Q449 237 449 227" class="line"></path><rect x="147" y="223" width="66" height="32" rx="10"></rect><rect x="145" y="221" width="66" height="32" class="terminal" rx="10"></rect><text class="terminal" x="155" y="241">isFalse</text><line x1="135" y1="237" x2="145" y2="237" class="line"></line><line x1="211" y1="237" x2="221" y2="237" class="line"></line><line x1="221" y1="237" x2="439" y2="237" class="line"></line><line x1="125" y1="227" x2="125" y2="247" class="line"></line><line x1="449" y1="247" x2="449" y2="227" class="line"></line><line x1="125" y1="247" x2="125" y2="271" class="line"></line><line x1="449" y1="271" x2="449" y2="247" class="line"></line><path d="M125 271 Q125 281 135 281" class="line"></path><path d="M439 281 Q449 281 449 271" class="line"></path><rect x="147" y="267" width="76" height="32" rx="10"></rect><rect x="145" y="265" width="76" height="32" class="terminal" rx="10"></rect><text class="terminal" x="155" y="285">between</text><line x1="135" y1="281" x2="145" y2="281" class="line"></line><line x1="221" y1="281" x2="231" y2="281" class="line"></line><a xlink:href="#FIELD" xlink:title="FIELD"><rect x="243" y="267" width="56" height="32"></rect><rect x="241" y="265" width="56" height="32" class="nonterminal"></rect><text class="nonterminal" x="251" y="285">FIELD</text></a><line x1="231" y1="281" x2="241" y2="281" class="line"></line><line x1="297" y1="281" x2="307" y2="281" class="line"></line><a xlink:href="#FIELD" xlink:title="FIELD"><rect x="319" y="267" width="56" height="32"></rect><rect x="317" y="265" width="56" height="32" class="nonterminal"></rect><text class="nonterminal" x="327" y="285">FIELD</text></a><line x1="307" y1="281" x2="317" y2="281" class="line"></line><line x1="373" y1="281" x2="383" y2="281" class="line"></line><line x1="383" y1="281" x2="439" y2="281" class="line"></line><line x1="125" y1="271" x2="125" y2="291" class="line"></line><line x1="449" y1="291" x2="449" y2="271" class="line"></line><line x1="125" y1="291" x2="125" y2="315" class="line"></line><line x1="449" y1="315" x2="449" y2="291" class="line"></line><path d="M125 315 Q125 325 135 325" class="line"></path><path d="M439 325 Q449 325 449 315" class="line"></path><rect x="167" y="311" width="44" height="32" rx="10"></rect><rect x="165" y="309" width="44" height="32" class="terminal" rx="10"></rect><text class="terminal" x="175" y="329">like</text><line x1="155" y1="325" x2="165" y2="325" class="line"></line><line x1="209" y1="325" x2="219" y2="325" class="line"></line><line x1="219" y1="325" x2="297" y2="325" class="line"></line><line x1="135" y1="325" x2="155" y2="325" class="line"></line><line x1="297" y1="325" x2="317" y2="325" class="line"></line><path d="M135 325 Q145 325 145 335" class="line"></path><path d="M307 335 Q307 325 317 325" class="line"></path><line x1="145" y1="335" x2="145" y2="359" class="line"></line><line x1="307" y1="359" x2="307" y2="335" class="line"></line><path d="M145 359 Q145 369 155 369" class="line"></path><path d="M297 369 Q307 369 307 359" class="line"></path><rect x="167" y="355" width="68" height="32" rx="10"></rect><rect x="165" y="353" width="68" height="32" class="terminal" rx="10"></rect><text class="terminal" x="175" y="373">notLike</text><line x1="155" y1="369" x2="165" y2="369" class="line"></line><line x1="233" y1="369" x2="243" y2="369" class="line"></line><line x1="243" y1="369" x2="297" y2="369" class="line"></line><line x1="145" y1="359" x2="145" y2="379" class="line"></line><line x1="307" y1="379" x2="307" y2="359" class="line"></line><line x1="145" y1="379" x2="145" y2="403" class="line"></line><line x1="307" y1="403" x2="307" y2="379" class="line"></line><path d="M145 403 Q145 413 155 413" class="line"></path><path d="M297 413 Q307 413 307 403" class="line"></path><rect x="167" y="399" width="56" height="32" rx="10"></rect><rect x="165" y="397" width="56" height="32" class="terminal" rx="10"></rect><text class="terminal" x="175" y="417">equal</text><line x1="155" y1="413" x2="165" y2="413" class="line"></line><line x1="221" y1="413" x2="231" y2="413" class="line"></line><line x1="231" y1="413" x2="297" y2="413" class="line"></line><line x1="145" y1="403" x2="145" y2="423" class="line"></line><line x1="307" y1="423" x2="307" y2="403" class="line"></line><line x1="145" y1="423" x2="145" y2="447" class="line"></line><line x1="307" y1="447" x2="307" y2="423" class="line"></line><path d="M145 447 Q145 457 155 457" class="line"></path><path d="M297 457 Q307 457 307 447" class="line"></path><rect x="167" y="443" width="76" height="32" rx="10"></rect><rect x="165" y="441" width="76" height="32" class="terminal" rx="10"></rect><text class="terminal" x="175" y="461">notEqual</text><line x1="155" y1="457" x2="165" y2="457" class="line"></line><line x1="241" y1="457" x2="251" y2="457" class="line"></line><line x1="251" y1="457" x2="297" y2="457" class="line"></line><line x1="145" y1="447" x2="145" y2="467" class="line"></line><line x1="307" y1="467" x2="307" y2="447" class="line"></line><line x1="145" y1="467" x2="145" y2="491" class="line"></line><line x1="307" y1="491" x2="307" y2="467" class="line"></line><path d="M145 491 Q145 501 155 501" class="line"></path><path d="M297 501 Q307 501 307 491" class="line"></path><rect x="167" y="487" width="78" height="32" rx="10"></rect><rect x="165" y="485" width="78" height="32" class="terminal" rx="10"></rect><text class="terminal" x="175" y="505">lessThan</text><line x1="155" y1="501" x2="165" y2="501" class="line"></line><line x1="243" y1="501" x2="253" y2="501" class="line"></line><line x1="253" y1="501" x2="297" y2="501" class="line"></line><line x1="145" y1="491" x2="145" y2="511" class="line"></line><line x1="307" y1="511" x2="307" y2="491" class="line"></line><line x1="145" y1="511" x2="145" y2="535" class="line"></line><line x1="307" y1="535" x2="307" y2="511" class="line"></line><path d="M145 535 Q145 545 155 545" class="line"></path><path d="M297 545 Q307 545 307 535" class="line"></path><rect x="167" y="531" width="98" height="32" rx="10"></rect><rect x="165" y="529" width="98" height="32" class="terminal" rx="10"></rect><text class="terminal" x="175" y="549">lessOrEqual</text><line x1="155" y1="545" x2="165" y2="545" class="line"></line><line x1="263" y1="545" x2="273" y2="545" class="line"></line><line x1="273" y1="545" x2="297" y2="545" class="line"></line><line x1="145" y1="535" x2="145" y2="555" class="line"></line><line x1="307" y1="555" x2="307" y2="535" class="line"></line><line x1="145" y1="555" x2="145" y2="579" class="line"></line><line x1="307" y1="579" x2="307" y2="555" class="line"></line><path d="M145 579 Q145 589 155 589" class="line"></path><path d="M297 589 Q307 589 307 579" class="line"></path><rect x="167" y="575" width="100" height="32" rx="10"></rect><rect x="165" y="573" width="100" height="32" class="terminal" rx="10"></rect><text class="terminal" x="175" y="593">greaterThan</text><line x1="155" y1="589" x2="165" y2="589" class="line"></line><line x1="265" y1="589" x2="275" y2="589" class="line"></line><line x1="275" y1="589" x2="297" y2="589" class="line"></line><line x1="145" y1="579" x2="145" y2="599" class="line"></line><line x1="307" y1="599" x2="307" y2="579" class="line"></line><line x1="145" y1="599" x2="145" y2="623" class="line"></line><line x1="307" y1="623" x2="307" y2="599" class="line"></line><path d="M145 623 Q145 633 155 633" class="line"></path><path d="M297 633 Q307 633 307 623" class="line"></path><rect x="167" y="619" width="122" height="32" rx="10"></rect><rect x="165" y="617" width="122" height="32" class="terminal" rx="10"></rect><text class="terminal" x="175" y="637">greaterOrEqual</text><line x1="155" y1="633" x2="165" y2="633" class="line"></line><line x1="287" y1="633" x2="297" y2="633" class="line"></line><a xlink:href="#FIELD" xlink:title="FIELD"><rect x="329" y="311" width="56" height="32"></rect><rect x="327" y="309" width="56" height="32" class="nonterminal"></rect><text class="nonterminal" x="337" y="329">FIELD</text></a><line x1="317" y1="325" x2="327" y2="325" class="line"></line><line x1="383" y1="325" x2="393" y2="325" class="line"></line><line x1="393" y1="325" x2="439" y2="325" class="line"></line><line x1="125" y1="315" x2="125" y2="335" class="line"></line><line x1="449" y1="335" x2="449" y2="315" class="line"></line><line x1="125" y1="335" x2="125" y2="689" class="line"></line><line x1="449" y1="689" x2="449" y2="335" class="line"></line><path d="M125 689 Q125 699 135 699" class="line"></path><path d="M439 699 Q449 699 449 689" class="line"></path><rect x="167" y="685" width="32" height="32" rx="10"></rect><rect x="165" y="683" width="32" height="32" class="terminal" rx="10"></rect><text class="terminal" x="175" y="703">in</text><line x1="155" y1="699" x2="165" y2="699" class="line"></line><line x1="197" y1="699" x2="207" y2="699" class="line"></line><line x1="207" y1="699" x2="229" y2="699" class="line"></line><line x1="135" y1="699" x2="155" y2="699" class="line"></line><line x1="229" y1="699" x2="249" y2="699" class="line"></line><path d="M135 699 Q145 699 145 709" class="line"></path><path d="M239 709 Q239 699 249 699" class="line"></path><line x1="145" y1="709" x2="145" y2="733" class="line"></line><line x1="239" y1="733" x2="239" y2="709" class="line"></line><path d="M145 733 Q145 743 155 743" class="line"></path><path d="M229 743 Q239 743 239 733" class="line"></path><rect x="167" y="729" width="54" height="32" rx="10"></rect><rect x="165" y="727" width="54" height="32" class="terminal" rx="10"></rect><text class="terminal" x="175" y="747">notIn</text><line x1="155" y1="743" x2="165" y2="743" class="line"></line><line x1="219" y1="743" x2="229" y2="743" class="line"></line><a xlink:href="#FIELD" xlink:title="FIELD"><rect x="301" y="685" width="56" height="32"></rect><rect x="299" y="683" width="56" height="32" class="nonterminal"></rect><text class="nonterminal" x="309" y="703">FIELD</text></a><line x1="289" y1="699" x2="299" y2="699" class="line"></line><line x1="355" y1="699" x2="365" y2="699" class="line"></line><path d="M269 699 L289 699 M288 699 Q279 699 279 689 L279 677 Q279 667 289 667" class="line"></path><path d="M365 699 L385 699 M365 699 Q375 699 375 689 L375 677 Q375 667 365 667" class="line"></path><line x1="289" y1="667" x2="299" y2="667" class="line"></line><line x1="299" y1="667" x2="365" y2="667" class="line"></line><line x1="249" y1="699" x2="269" y2="699" class="line"></line><line x1="385" y1="699" x2="405" y2="699" class="line"></line><path d="M249 699 Q259 699 259 709" class="line"></path><path d="M395 709 Q395 699 405 699" class="line"></path><line x1="259" y1="709" x2="259" y2="733" class="line"></line><line x1="395" y1="733" x2="395" y2="709" class="line"></line><path d="M259 733 Q259 743 269 743" class="line"></path><path d="M385 743 Q395 743 395 733" class="line"></path><a xlink:href="#SELECT" xlink:title="SELECT"><rect x="281" y="729" width="66" height="32"></rect><rect x="279" y="727" width="66" height="32" class="nonterminal"></rect><text class="nonterminal" x="289" y="747">SELECT</text></a><line x1="269" y1="743" x2="279" y2="743" class="line"></line><line x1="345" y1="743" x2="355" y2="743" class="line"></line><line x1="355" y1="743" x2="385" y2="743" class="line"></line><line x1="405" y1="699" x2="439" y2="699" class="line"></line><line x1="125" y1="689" x2="125" y2="709" class="line"></line><line x1="449" y1="709" x2="449" y2="689" class="line"></line><line x1="125" y1="709" x2="125" y2="777" class="line"></line><line x1="449" y1="777" x2="449" y2="709" class="line"></line><path d="M125 777 Q125 787 135 787" class="line"></path><path d="M439 787 Q449 787 449 777" class="line"></path><rect x="167" y="773" width="80" height="32" rx="10"></rect><rect x="165" y="771" width="80" height="32" class="terminal" rx="10"></rect><text class="terminal" x="175" y="791">equalAny</text><line x1="155" y1="787" x2="165" y2="787" class="line"></line><line x1="245" y1="787" x2="255" y2="787" class="line"></line><line x1="255" y1="787" x2="333" y2="787" class="line"></line><line x1="135" y1="787" x2="155" y2="787" class="line"></line><line x1="333" y1="787" x2="353" y2="787" class="line"></line><path d="M135 787 Q145 787 145 797" class="line"></path><path d="M343 797 Q343 787 353 787" class="line"></path><line x1="145" y1="797" x2="145" y2="821" class="line"></line><line x1="343" y1="821" x2="343" y2="797" class="line"></line><path d="M145 821 Q145 831 155 831" class="line"></path><path d="M333 831 Q343 831 343 821" class="line"></path><rect x="167" y="817" width="92" height="32" rx="10"></rect><rect x="165" y="815" width="92" height="32" class="terminal" rx="10"></rect><text class="terminal" x="175" y="835">equalSome</text><line x1="155" y1="831" x2="165" y2="831" class="line"></line><line x1="257" y1="831" x2="267" y2="831" class="line"></line><line x1="267" y1="831" x2="333" y2="831" class="line"></line><line x1="145" y1="821" x2="145" y2="841" class="line"></line><line x1="343" y1="841" x2="343" y2="821" class="line"></line><line x1="145" y1="841" x2="145" y2="865" class="line"></line><line x1="343" y1="865" x2="343" y2="841" class="line"></line><path d="M145 865 Q145 875 155 875" class="line"></path><path d="M333 875 Q343 875 343 865" class="line"></path><rect x="167" y="861" width="72" height="32" rx="10"></rect><rect x="165" y="859" width="72" height="32" class="terminal" rx="10"></rect><text class="terminal" x="175" y="879">equalAll</text><line x1="155" y1="875" x2="165" y2="875" class="line"></line><line x1="237" y1="875" x2="247" y2="875" class="line"></line><line x1="247" y1="875" x2="333" y2="875" class="line"></line><line x1="145" y1="865" x2="145" y2="885" class="line"></line><line x1="343" y1="885" x2="343" y2="865" class="line"></line><line x1="145" y1="885" x2="145" y2="909" class="line"></line><line x1="343" y1="909" x2="343" y2="885" class="line"></line><path d="M145 909 Q145 919 155 919" class="line"></path><path d="M333 919 Q343 919 343 909" class="line"></path><rect x="167" y="905" width="102" height="32" rx="10"></rect><rect x="165" y="903" width="102" height="32" class="terminal" rx="10"></rect><text class="terminal" x="175" y="923">notEqualAny</text><line x1="155" y1="919" x2="165" y2="919" class="line"></line><line x1="267" y1="919" x2="277" y2="919" class="line"></line><line x1="277" y1="919" x2="333" y2="919" class="line"></line><line x1="145" y1="909" x2="145" y2="929" class="line"></line><line x1="343" y1="929" x2="343" y2="909" class="line"></line><line x1="145" y1="929" x2="145" y2="953" class="line"></line><line x1="343" y1="953" x2="343" y2="929" class="line"></line><path d="M145 953 Q145 963 155 963" class="line"></path><path d="M333 963 Q343 963 343 953" class="line"></path><rect x="167" y="949" width="114" height="32" rx="10"></rect><rect x="165" y="947" width="114" height="32" class="terminal" rx="10"></rect><text class="terminal" x="175" y="967">notEqualSome</text><line x1="155" y1="963" x2="165" y2="963" class="line"></line><line x1="279" y1="963" x2="289" y2="963" class="line"></line><line x1="289" y1="963" x2="333" y2="963" class="line"></line><line x1="145" y1="953" x2="145" y2="973" class="line"></line><line x1="343" y1="973" x2="343" y2="953" class="line"></line><line x1="145" y1="973" x2="145" y2="997" class="line"></line><line x1="343" y1="997" x2="343" y2="973" class="line"></line><path d="M145 997 Q145 1007 155 1007" class="line"></path><path d="M333 1007 Q343 1007 343 997" class="line"></path><rect x="167" y="993" width="94" height="32" rx="10"></rect><rect x="165" y="991" width="94" height="32" class="terminal" rx="10"></rect><text class="terminal" x="175" y="1011">notEqualAll</text><line x1="155" y1="1007" x2="165" y2="1007" class="line"></line><line x1="259" y1="1007" x2="269" y2="1007" class="line"></line><line x1="269" y1="1007" x2="333" y2="1007" class="line"></line><line x1="145" y1="997" x2="145" y2="1017" class="line"></line><line x1="343" y1="1017" x2="343" y2="997" class="line"></line><line x1="145" y1="1017" x2="145" y2="1041" class="line"></line><line x1="343" y1="1041" x2="343" y2="1017" class="line"></line><path d="M145 1041 Q145 1051 155 1051" class="line"></path><path d="M333 1051 Q343 1051 343 1041" class="line"></path><rect x="167" y="1037" width="102" height="32" rx="10"></rect><rect x="165" y="1035" width="102" height="32" class="terminal" rx="10"></rect><text class="terminal" x="175" y="1055">lessThanAny</text><line x1="155" y1="1051" x2="165" y2="1051" class="line"></line><line x1="267" y1="1051" x2="277" y2="1051" class="line"></line><line x1="277" y1="1051" x2="333" y2="1051" class="line"></line><line x1="145" y1="1041" x2="145" y2="1061" class="line"></line><line x1="343" y1="1061" x2="343" y2="1041" class="line"></line><line x1="145" y1="1061" x2="145" y2="1085" class="line"></line><line x1="343" y1="1085" x2="343" y2="1061" class="line"></line><path d="M145 1085 Q145 1095 155 1095" class="line"></path><path d="M333 1095 Q343 1095 343 1085" class="line"></path><rect x="167" y="1081" width="114" height="32" rx="10"></rect><rect x="165" y="1079" width="114" height="32" class="terminal" rx="10"></rect><text class="terminal" x="175" y="1099">lessThanSome</text><line x1="155" y1="1095" x2="165" y2="1095" class="line"></line><line x1="279" y1="1095" x2="289" y2="1095" class="line"></line><line x1="289" y1="1095" x2="333" y2="1095" class="line"></line><line x1="145" y1="1085" x2="145" y2="1105" class="line"></line><line x1="343" y1="1105" x2="343" y2="1085" class="line"></line><line x1="145" y1="1105" x2="145" y2="1129" class="line"></line><line x1="343" y1="1129" x2="343" y2="1105" class="line"></line><path d="M145 1129 Q145 1139 155 1139" class="line"></path><path d="M333 1139 Q343 1139 343 1129" class="line"></path><rect x="167" y="1125" width="94" height="32" rx="10"></rect><rect x="165" y="1123" width="94" height="32" class="terminal" rx="10"></rect><text class="terminal" x="175" y="1143">lessThanAll</text><line x1="155" y1="1139" x2="165" y2="1139" class="line"></line><line x1="259" y1="1139" x2="269" y2="1139" class="line"></line><line x1="269" y1="1139" x2="333" y2="1139" class="line"></line><line x1="145" y1="1129" x2="145" y2="1149" class="line"></line><line x1="343" y1="1149" x2="343" y2="1129" class="line"></line><line x1="145" y1="1149" x2="145" y2="1173" class="line"></line><line x1="343" y1="1173" x2="343" y2="1149" class="line"></line><path d="M145 1173 Q145 1183 155 1183" class="line"></path><path d="M333 1183 Q343 1183 343 1173" class="line"></path><rect x="167" y="1169" width="124" height="32" rx="10"></rect><rect x="165" y="1167" width="124" height="32" class="terminal" rx="10"></rect><text class="terminal" x="175" y="1187">lessOrEqualAny</text><line x1="155" y1="1183" x2="165" y2="1183" class="line"></line><line x1="289" y1="1183" x2="299" y2="1183" class="line"></line><line x1="299" y1="1183" x2="333" y2="1183" class="line"></line><line x1="145" y1="1173" x2="145" y2="1193" class="line"></line><line x1="343" y1="1193" x2="343" y2="1173" class="line"></line><line x1="145" y1="1193" x2="145" y2="1217" class="line"></line><line x1="343" y1="1217" x2="343" y2="1193" class="line"></line><path d="M145 1217 Q145 1227 155 1227" class="line"></path><path d="M333 1227 Q343 1227 343 1217" class="line"></path><rect x="167" y="1213" width="136" height="32" rx="10"></rect><rect x="165" y="1211" width="136" height="32" class="terminal" rx="10"></rect><text class="terminal" x="175" y="1231">lessOrEqualSome</text><line x1="155" y1="1227" x2="165" y2="1227" class="line"></line><line x1="301" y1="1227" x2="311" y2="1227" class="line"></line><line x1="311" y1="1227" x2="333" y2="1227" class="line"></line><line x1="145" y1="1217" x2="145" y2="1237" class="line"></line><line x1="343" y1="1237" x2="343" y2="1217" class="line"></line><line x1="145" y1="1237" x2="145" y2="1261" class="line"></line><line x1="343" y1="1261" x2="343" y2="1237" class="line"></line><path d="M145 1261 Q145 1271 155 1271" class="line"></path><path d="M333 1271 Q343 1271 343 1261" class="line"></path><rect x="167" y="1257" width="116" height="32" rx="10"></rect><rect x="165" y="1255" width="116" height="32" class="terminal" rx="10"></rect><text class="terminal" x="175" y="1275">lessOrEqualAll</text><line x1="155" y1="1271" x2="165" y2="1271" class="line"></line><line x1="281" y1="1271" x2="291" y2="1271" class="line"></line><line x1="291" y1="1271" x2="333" y2="1271" class="line"></line><line x1="145" y1="1261" x2="145" y2="1281" class="line"></line><line x1="343" y1="1281" x2="343" y2="1261" class="line"></line><line x1="145" y1="1281" x2="145" y2="1305" class="line"></line><line x1="343" y1="1305" x2="343" y2="1281" class="line"></line><path d="M145 1305 Q145 1315 155 1315" class="line"></path><path d="M333 1315 Q343 1315 343 1305" class="line"></path><rect x="167" y="1301" width="126" height="32" rx="10"></rect><rect x="165" y="1299" width="126" height="32" class="terminal" rx="10"></rect><text class="terminal" x="175" y="1319">greaterThanAny</text><line x1="155" y1="1315" x2="165" y2="1315" class="line"></line><line x1="291" y1="1315" x2="301" y2="1315" class="line"></line><line x1="301" y1="1315" x2="333" y2="1315" class="line"></line><line x1="145" y1="1305" x2="145" y2="1325" class="line"></line><line x1="343" y1="1325" x2="343" y2="1305" class="line"></line><line x1="145" y1="1325" x2="145" y2="1349" class="line"></line><line x1="343" y1="1349" x2="343" y2="1325" class="line"></line><path d="M145 1349 Q145 1359 155 1359" class="line"></path><path d="M333 1359 Q343 1359 343 1349" class="line"></path><rect x="167" y="1345" width="138" height="32" rx="10"></rect><rect x="165" y="1343" width="138" height="32" class="terminal" rx="10"></rect><text class="terminal" x="175" y="1363">greaterThanSome</text><line x1="155" y1="1359" x2="165" y2="1359" class="line"></line><line x1="303" y1="1359" x2="313" y2="1359" class="line"></line><line x1="313" y1="1359" x2="333" y2="1359" class="line"></line><line x1="145" y1="1349" x2="145" y2="1369" class="line"></line><line x1="343" y1="1369" x2="343" y2="1349" class="line"></line><line x1="145" y1="1369" x2="145" y2="1393" class="line"></line><line x1="343" y1="1393" x2="343" y2="1369" class="line"></line><path d="M145 1393 Q145 1403 155 1403" class="line"></path><path d="M333 1403 Q343 1403 343 1393" class="line"></path><rect x="167" y="1389" width="118" height="32" rx="10"></rect><rect x="165" y="1387" width="118" height="32" class="terminal" rx="10"></rect><text class="terminal" x="175" y="1407">greaterThanAll</text><line x1="155" y1="1403" x2="165" y2="1403" class="line"></line><line x1="283" y1="1403" x2="293" y2="1403" class="line"></line><line x1="293" y1="1403" x2="333" y2="1403" class="line"></line><line x1="145" y1="1393" x2="145" y2="1413" class="line"></line><line x1="343" y1="1413" x2="343" y2="1393" class="line"></line><line x1="145" y1="1413" x2="145" y2="1437" class="line"></line><line x1="343" y1="1437" x2="343" y2="1413" class="line"></line><path d="M145 1437 Q145 1447 155 1447" class="line"></path><path d="M333 1447 Q343 1447 343 1437" class="line"></path><rect x="167" y="1433" width="146" height="32" rx="10"></rect><rect x="165" y="1431" width="146" height="32" class="terminal" rx="10"></rect><text class="terminal" x="175" y="1451">greaterOrEqualAny</text><line x1="155" y1="1447" x2="165" y2="1447" class="line"></line><line x1="311" y1="1447" x2="321" y2="1447" class="line"></line><line x1="321" y1="1447" x2="333" y2="1447" class="line"></line><line x1="145" y1="1437" x2="145" y2="1457" class="line"></line><line x1="343" y1="1457" x2="343" y2="1437" class="line"></line><line x1="145" y1="1457" x2="145" y2="1481" class="line"></line><line x1="343" y1="1481" x2="343" y2="1457" class="line"></line><path d="M145 1481 Q145 1491 155 1491" class="line"></path><path d="M333 1491 Q343 1491 343 1481" class="line"></path><rect x="167" y="1477" width="158" height="32" rx="10"></rect><rect x="165" y="1475" width="158" height="32" class="terminal" rx="10"></rect><text class="terminal" x="175" y="1495">greaterOrEqualSome</text><line x1="155" y1="1491" x2="165" y2="1491" class="line"></line><line x1="323" y1="1491" x2="333" y2="1491" class="line"></line><line x1="145" y1="1481" x2="145" y2="1501" class="line"></line><line x1="343" y1="1501" x2="343" y2="1481" class="line"></line><line x1="145" y1="1501" x2="145" y2="1525" class="line"></line><line x1="343" y1="1525" x2="343" y2="1501" class="line"></line><path d="M145 1525 Q145 1535 155 1535" class="line"></path><path d="M333 1535 Q343 1535 343 1525" class="line"></path><rect x="167" y="1521" width="138" height="32" rx="10"></rect><rect x="165" y="1519" width="138" height="32" class="terminal" rx="10"></rect><text class="terminal" x="175" y="1539">greaterOrEqualAll</text><line x1="155" y1="1535" x2="165" y2="1535" class="line"></line><line x1="303" y1="1535" x2="313" y2="1535" class="line"></line><line x1="313" y1="1535" x2="333" y2="1535" class="line"></line><a xlink:href="#SELECT" xlink:title="SELECT"><rect x="365" y="773" width="66" height="32"></rect><rect x="363" y="771" width="66" height="32" class="nonterminal"></rect><text class="nonterminal" x="373" y="791">SELECT</text></a><line x1="353" y1="787" x2="363" y2="787" class="line"></line><line x1="429" y1="787" x2="439" y2="787" class="line"></line><line x1="29" y1="95" x2="29" y2="115" class="line"></line><line x1="469" y1="115" x2="469" y2="95" class="line"></line><line x1="29" y1="115" x2="29" y2="1569" class="line"></line><line x1="469" y1="1569" x2="469" y2="115" class="line"></line><path d="M29 1569 Q29 1579 39 1579" class="line"></path><path d="M459 1579 Q469 1579 469 1569" class="line"></path><rect x="51" y="1565" width="80" height="32" rx="10"></rect><rect x="49" y="1563" width="80" height="32" class="terminal" rx="10"></rect><text class="terminal" x="59" y="1583">condition</text><line x1="39" y1="1579" x2="49" y2="1579" class="line"></line><line x1="129" y1="1579" x2="139" y2="1579" class="line"></line><a xlink:href="#SQL" xlink:title="SQL"><rect x="151" y="1565" width="44" height="32"></rect><rect x="149" y="1563" width="44" height="32" class="nonterminal"></rect><text class="nonterminal" x="159" y="1583">SQL</text></a><line x1="139" y1="1579" x2="149" y2="1579" class="line"></line><line x1="193" y1="1579" x2="203" y2="1579" class="line"></line><line x1="203" y1="1579" x2="459" y2="1579" class="line"></line><line x1="29" y1="1569" x2="29" y2="1589" class="line"></line><line x1="469" y1="1589" x2="469" y2="1569" class="line"></line><line x1="29" y1="1589" x2="29" y2="1613" class="line"></line><line x1="469" y1="1613" x2="469" y2="1589" class="line"></line><path d="M29 1613 Q29 1623 39 1623" class="line"></path><path d="M459 1623 Q469 1623 469 1613" class="line"></path><rect x="51" y="1609" width="108" height="32" rx="10"></rect><rect x="49" y="1607" width="108" height="32" class="terminal" rx="10"></rect><text class="terminal" x="59" y="1627">trueCondition</text><line x1="39" y1="1623" x2="49" y2="1623" class="line"></line><line x1="157" y1="1623" x2="167" y2="1623" class="line"></line><line x1="167" y1="1623" x2="459" y2="1623" class="line"></line><line x1="29" y1="1613" x2="29" y2="1633" class="line"></line><line x1="469" y1="1633" x2="469" y2="1613" class="line"></line><line x1="29" y1="1633" x2="29" y2="1657" class="line"></line><line x1="469" y1="1657" x2="469" y2="1633" class="line"></line><path d="M29 1657 Q29 1667 39 1667" class="line"></path><path d="M459 1667 Q469 1667 469 1657" class="line"></path><rect x="51" y="1653" width="114" height="32" rx="10"></rect><rect x="49" y="1651" width="114" height="32" class="terminal" rx="10"></rect><text class="terminal" x="59" y="1671">falseCondition</text><line x1="39" y1="1667" x2="49" y2="1667" class="line"></line><line x1="163" y1="1667" x2="173" y2="1667" class="line"></line><line x1="173" y1="1667" x2="459" y2="1667" class="line"></line><line x1="29" y1="1657" x2="29" y2="1677" class="line"></line><line x1="469" y1="1677" x2="469" y2="1657" class="line"></line><line x1="29" y1="1677" x2="29" y2="1701" class="line"></line><line x1="469" y1="1701" x2="469" y2="1677" class="line"></line><path d="M29 1701 Q29 1711 39 1711" class="line"></path><path d="M459 1711 Q469 1711 469 1701" class="line"></path><rect x="71" y="1697" width="58" height="32" rx="10"></rect><rect x="69" y="1695" width="58" height="32" class="terminal" rx="10"></rect><text class="terminal" x="79" y="1715">exists</text><line x1="59" y1="1711" x2="69" y2="1711" class="line"></line><line x1="127" y1="1711" x2="137" y2="1711" class="line"></line><line x1="137" y1="1711" x2="159" y2="1711" class="line"></line><line x1="39" y1="1711" x2="59" y2="1711" class="line"></line><line x1="159" y1="1711" x2="179" y2="1711" class="line"></line><path d="M39 1711 Q49 1711 49 1721" class="line"></path><path d="M169 1721 Q169 1711 179 1711" class="line"></path><line x1="49" y1="1721" x2="49" y2="1745" class="line"></line><line x1="169" y1="1745" x2="169" y2="1721" class="line"></line><path d="M49 1745 Q49 1755 59 1755" class="line"></path><path d="M159 1755 Q169 1755 169 1745" class="line"></path><rect x="71" y="1741" width="80" height="32" rx="10"></rect><rect x="69" y="1739" width="80" height="32" class="terminal" rx="10"></rect><text class="terminal" x="79" y="1759">notExists</text><line x1="59" y1="1755" x2="69" y2="1755" class="line"></line><line x1="149" y1="1755" x2="159" y2="1755" class="line"></line><a xlink:href="#SELECT" xlink:title="SELECT"><rect x="191" y="1697" width="66" height="32"></rect><rect x="189" y="1695" width="66" height="32" class="nonterminal"></rect><text class="nonterminal" x="199" y="1715">SELECT</text></a><line x1="179" y1="1711" x2="189" y2="1711" class="line"></line><line x1="255" y1="1711" x2="265" y2="1711" class="line"></line><line x1="265" y1="1711" x2="459" y2="1711" class="line"></line><line x1="482" y1="17" x2="479" y2="17" class="line"></line><polygon points="489 17 497 13 497 21" class="filled"></polygon><polygon points="489 17 481 13 481 21" class="filled"></polygon></svg><xhtml:p xmlns:xhtml="http://www.w3.org/1999/xhtml">referenced by:<xhtml:ul><xhtml:li><xhtml:a href="#CONDITION" title="CONDITION">CONDITION</xhtml:a></xhtml:li><xhtml:li><xhtml:a href="#DELETE" title="DELETE">DELETE</xhtml:a></xhtml:li><xhtml:li><xhtml:a href="#FIELD" title="FIELD">FIELD</xhtml:a></xhtml:li><xhtml:li><xhtml:a href="#MERGE" title="MERGE">MERGE</xhtml:a></xhtml:li><xhtml:li><xhtml:a href="#MORE_CONDITIONS" title="MORE_CONDITIONS">MORE_CONDITIONS</xhtml:a></xhtml:li><xhtml:li><xhtml:a href="#RESULT" title="RESULT">RESULT</xhtml:a></xhtml:li><xhtml:li><xhtml:a href="#SELECT" title="SELECT">SELECT</xhtml:a></xhtml:li><xhtml:li><xhtml:a href="#UPDATE" title="UPDATE">UPDATE</xhtml:a></xhtml:li></xhtml:ul></xhtml:p><xhtml:br xmlns:xhtml="http://www.w3.org/1999/xhtml"></xhtml:br><xhtml:p xmlns:xhtml="http://www.w3.org/1999/xhtml" style="font-size: 14px; font-weight:bold"><xhtml:a name="MORE_CONDITIONS">MORE_CONDITIONS:</xhtml:a></xhtml:p><svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="374" height="360"><defs><style type="text/css">
    +
    +    @namespace "http://www.w3.org/2000/svg";
    +    .line                 {fill: none; stroke: #332900;}
    +    filled                {fill: #332900; stroke: none;}
    +    text                  {font-family: Verdana, Sans-serif;
    +                            font-size: 12px;
    +                            fill: #4D3D00;
    +                          }
    +    text.terminal         {font-family: Verdana, Sans-serif;
    +                            font-size: 12px;
    +                            fill: #4D3D00;
    +                            font-weight: bold;
    +                          }
    +    rect, circle, polygon {fill: #332900; stroke: #332900;}
    +    rect.terminal         {fill: #FFCC00; stroke: #332900;}
    +    rect.nonterminal      {fill: #FFEB99; stroke: #332900;}
    +    rect.text             {fill: none; stroke: none;}    
    +    polygon.regexp        {fill: #FFF5CC; stroke: #332900;}
    +  </style></defs><polygon points="9 33 1 29 1 37" class="filled"></polygon><polygon points="17 33 9 29 9 37" class="filled"></polygon><line x1="17" y1="33" x2="19" y2="33" class="line"></line><rect x="91" y="19" width="44" height="32" rx="10"></rect><rect x="89" y="17" width="44" height="32" class="terminal" rx="10"></rect><text class="terminal" x="99" y="37">and</text><line x1="79" y1="33" x2="89" y2="33" class="line"></line><line x1="133" y1="33" x2="143" y2="33" class="line"></line><line x1="59" y1="33" x2="79" y2="33" class="line"></line><line x1="143" y1="33" x2="163" y2="33" class="line"></line><path d="M59 33 Q69 33 69 43" class="line"></path><path d="M153 43 Q153 33 163 33" class="line"></path><line x1="69" y1="43" x2="69" y2="67" class="line"></line><line x1="153" y1="67" x2="153" y2="43" class="line"></line><path d="M69 67 Q69 77 79 77" class="line"></path><path d="M143 77 Q153 77 153 67" class="line"></path><rect x="91" y="63" width="34" height="32" rx="10"></rect><rect x="89" y="61" width="34" height="32" class="terminal" rx="10"></rect><text class="terminal" x="99" y="81">or</text><line x1="79" y1="77" x2="89" y2="77" class="line"></line><line x1="123" y1="77" x2="133" y2="77" class="line"></line><line x1="133" y1="77" x2="143" y2="77" class="line"></line><a xlink:href="#CONDITION" xlink:title="CONDITION"><rect x="195" y="19" width="92" height="32"></rect><rect x="193" y="17" width="92" height="32" class="nonterminal"></rect><text class="nonterminal" x="203" y="37">CONDITION</text></a><line x1="183" y1="33" x2="193" y2="33" class="line"></line><line x1="285" y1="33" x2="295" y2="33" class="line"></line><line x1="163" y1="33" x2="183" y2="33" class="line"></line><line x1="295" y1="33" x2="315" y2="33" class="line"></line><path d="M163 33 Q173 33 173 43" class="line"></path><path d="M305 43 Q305 33 315 33" class="line"></path><line x1="173" y1="43" x2="173" y2="67" class="line"></line><line x1="305" y1="67" x2="305" y2="43" class="line"></line><path d="M173 67 Q173 77 183 77" class="line"></path><path d="M295 77 Q305 77 305 67" class="line"></path><a xlink:href="#SQL" xlink:title="SQL"><rect x="195" y="63" width="44" height="32"></rect><rect x="193" y="61" width="44" height="32" class="nonterminal"></rect><text class="nonterminal" x="203" y="81">SQL</text></a><line x1="183" y1="77" x2="193" y2="77" class="line"></line><line x1="237" y1="77" x2="247" y2="77" class="line"></line><line x1="247" y1="77" x2="295" y2="77" class="line"></line><line x1="39" y1="33" x2="59" y2="33" class="line"></line><line x1="315" y1="33" x2="335" y2="33" class="line"></line><path d="M39 33 Q49 33 49 43" class="line"></path><path d="M325 43 Q325 33 335 33" class="line"></path><line x1="49" y1="43" x2="49" y2="111" class="line"></line><line x1="325" y1="111" x2="325" y2="43" class="line"></line><path d="M49 111 Q49 121 59 121" class="line"></path><path d="M315 121 Q325 121 325 111" class="line"></path><rect x="91" y="107" width="66" height="32" rx="10"></rect><rect x="89" y="105" width="66" height="32" class="terminal" rx="10"></rect><text class="terminal" x="99" y="125">andNot</text><line x1="79" y1="121" x2="89" y2="121" class="line"></line><line x1="155" y1="121" x2="165" y2="121" class="line"></line><line x1="59" y1="121" x2="79" y2="121" class="line"></line><line x1="165" y1="121" x2="185" y2="121" class="line"></line><path d="M59 121 Q69 121 69 131" class="line"></path><path d="M175 131 Q175 121 185 121" class="line"></path><line x1="69" y1="131" x2="69" y2="155" class="line"></line><line x1="175" y1="155" x2="175" y2="131" class="line"></line><path d="M69 155 Q69 165 79 165" class="line"></path><path d="M165 165 Q175 165 175 155" class="line"></path><rect x="91" y="151" width="56" height="32" rx="10"></rect><rect x="89" y="149" width="56" height="32" class="terminal" rx="10"></rect><text class="terminal" x="99" y="169">orNot</text><line x1="79" y1="165" x2="89" y2="165" class="line"></line><line x1="145" y1="165" x2="155" y2="165" class="line"></line><line x1="155" y1="165" x2="165" y2="165" class="line"></line><a xlink:href="#CONDITION" xlink:title="CONDITION"><rect x="197" y="107" width="92" height="32"></rect><rect x="195" y="105" width="92" height="32" class="nonterminal"></rect><text class="nonterminal" x="205" y="125">CONDITION</text></a><line x1="185" y1="121" x2="195" y2="121" class="line"></line><line x1="287" y1="121" x2="297" y2="121" class="line"></line><line x1="297" y1="121" x2="315" y2="121" class="line"></line><line x1="49" y1="111" x2="49" y2="131" class="line"></line><line x1="325" y1="131" x2="325" y2="111" class="line"></line><line x1="49" y1="131" x2="49" y2="199" class="line"></line><line x1="325" y1="199" x2="325" y2="131" class="line"></line><path d="M49 199 Q49 209 59 209" class="line"></path><path d="M315 209 Q325 209 325 199" class="line"></path><rect x="91" y="195" width="82" height="32" rx="10"></rect><rect x="89" y="193" width="82" height="32" class="terminal" rx="10"></rect><text class="terminal" x="99" y="213">andExists</text><line x1="79" y1="209" x2="89" y2="209" class="line"></line><line x1="171" y1="209" x2="181" y2="209" class="line"></line><line x1="181" y1="209" x2="205" y2="209" class="line"></line><line x1="59" y1="209" x2="79" y2="209" class="line"></line><line x1="205" y1="209" x2="225" y2="209" class="line"></line><path d="M59 209 Q69 209 69 219" class="line"></path><path d="M215 219 Q215 209 225 209" class="line"></path><line x1="69" y1="219" x2="69" y2="243" class="line"></line><line x1="215" y1="243" x2="215" y2="219" class="line"></line><path d="M69 243 Q69 253 79 253" class="line"></path><path d="M205 253 Q215 253 215 243" class="line"></path><rect x="91" y="239" width="106" height="32" rx="10"></rect><rect x="89" y="237" width="106" height="32" class="terminal" rx="10"></rect><text class="terminal" x="99" y="257">andNotExists</text><line x1="79" y1="253" x2="89" y2="253" class="line"></line><line x1="195" y1="253" x2="205" y2="253" class="line"></line><line x1="69" y1="243" x2="69" y2="263" class="line"></line><line x1="215" y1="263" x2="215" y2="243" class="line"></line><line x1="69" y1="263" x2="69" y2="287" class="line"></line><line x1="215" y1="287" x2="215" y2="263" class="line"></line><path d="M69 287 Q69 297 79 297" class="line"></path><path d="M205 297 Q215 297 215 287" class="line"></path><rect x="91" y="283" width="72" height="32" rx="10"></rect><rect x="89" y="281" width="72" height="32" class="terminal" rx="10"></rect><text class="terminal" x="99" y="301">orExists</text><line x1="79" y1="297" x2="89" y2="297" class="line"></line><line x1="161" y1="297" x2="171" y2="297" class="line"></line><line x1="171" y1="297" x2="205" y2="297" class="line"></line><line x1="69" y1="287" x2="69" y2="307" class="line"></line><line x1="215" y1="307" x2="215" y2="287" class="line"></line><line x1="69" y1="307" x2="69" y2="331" class="line"></line><line x1="215" y1="331" x2="215" y2="307" class="line"></line><path d="M69 331 Q69 341 79 341" class="line"></path><path d="M205 341 Q215 341 215 331" class="line"></path><rect x="91" y="327" width="96" height="32" rx="10"></rect><rect x="89" y="325" width="96" height="32" class="terminal" rx="10"></rect><text class="terminal" x="99" y="345">orNotExists</text><line x1="79" y1="341" x2="89" y2="341" class="line"></line><line x1="185" y1="341" x2="195" y2="341" class="line"></line><line x1="195" y1="341" x2="205" y2="341" class="line"></line><a xlink:href="#SELECT" xlink:title="SELECT"><rect x="237" y="195" width="66" height="32"></rect><rect x="235" y="193" width="66" height="32" class="nonterminal"></rect><text class="nonterminal" x="245" y="213">SELECT</text></a><line x1="225" y1="209" x2="235" y2="209" class="line"></line><line x1="301" y1="209" x2="311" y2="209" class="line"></line><line x1="311" y1="209" x2="315" y2="209" class="line"></line><path d="M19 33 L39 33 M38 33 Q29 33 29 23 L29 11 Q29 1 39 1" class="line"></path><path d="M335 33 L355 33 M335 33 Q345 33 345 23 L345 11 Q345 1 335 1" class="line"></path><line x1="39" y1="1" x2="49" y2="1" class="line"></line><line x1="49" y1="1" x2="335" y2="1" class="line"></line><line x1="358" y1="33" x2="355" y2="33" class="line"></line><polygon points="365 33 373 29 373 37" class="filled"></polygon><polygon points="365 33 357 29 357 37" class="filled"></polygon></svg><xhtml:p xmlns:xhtml="http://www.w3.org/1999/xhtml">referenced by:<xhtml:ul><xhtml:li><xhtml:a href="#CONDITION" title="CONDITION">CONDITION</xhtml:a></xhtml:li><xhtml:li><xhtml:a href="#DELETE" title="DELETE">DELETE</xhtml:a></xhtml:li><xhtml:li><xhtml:a href="#MERGE" title="MERGE">MERGE</xhtml:a></xhtml:li><xhtml:li><xhtml:a href="#SELECT" title="SELECT">SELECT</xhtml:a></xhtml:li><xhtml:li><xhtml:a href="#UPDATE" title="UPDATE">UPDATE</xhtml:a></xhtml:li></xhtml:ul></xhtml:p><xhtml:br xmlns:xhtml="http://www.w3.org/1999/xhtml"></xhtml:br></body></html>
    \ No newline at end of file
    diff --git a/jOOQ-website/sql-as-seen-by-jooq.txt b/jOOQ-website/sql-as-seen-by-jooq.txt
    new file mode 100644
    index 00000000000..86568e6a01d
    --- /dev/null
    +++ b/jOOQ-website/sql-as-seen-by-jooq.txt
    @@ -0,0 +1,214 @@
    +QUERY ::= ( SELECT | 
    +            RESULT_QUERY |
    +            UPDATE |
    +            INSERT |
    +            DELETE |
    +            MERGE |
    +            TRUNCATE |
    +            'query' SQL )
    +
    +RESULT_QUERY ::= ( SELECT |
    +                   'resultQuery' SQL )
    +
    +RESULT ::=   ( 'fetch' | 'fetchMany' | 'fetchOne' ) SQL |
    +             ( 'fetch' | 'fetchOne' ) TABLE CONDITION? |
    +             ( 'fetchAny' TABLE ) |
    +             ( 'fetch' 'JDBC ResultSet' ) |
    +             RESULT_QUERY
    +             ( 'fetch' |
    +               'fetchMany' |
    +               'fetchOne' |
    +               'fetchAny' |
    +               'fetchMaps' |
    +               'fetchOneMap' |
    +               'fetchMap' |
    +               'fetchArrays' |
    +               'fetchArray' |
    +               'fetchOneArray' |
    +               'fetchInto' |
    +               'fetchLater' |
    +               'execute' 'getResult' )
    +
    +CURSOR ::= ( RESULT_QUERY 'fetchLazy' )
    +
    +SELECT ::= ( ( 'select' | 'selectDistinct' ) FIELD* |
    +               'selectOne' |
    +               'selectZero' |
    +               'selectCount' )
    +             ( 'select' FIELD* )* 
    +             ( 'hint' SQL )*
    +             ( 'from' ( TABLE+ | SQL )
    +               ( ( 'join' | 'leftOuterJoin' | 'rightOuterJoin' | 'fullOuterJoin' )
    +                 ( TABLE | SQL ) 
    +                 ( 'on' ( CONDITION+ | SQL ) MORE_CONDITIONS? |
    +                   'using' FIELD+ ) |
    +                 ( 'crossJoin' | 'naturalJoin' | 'naturalLeftOuterJoin' | 'naturalRightOuterJoin' )
    +               ( TABLE | SQL ) )* )?
    +             ( ( 'where' ( CONDITION+ | SQL ) | 
    +                 ( 'whereExists' | 'whereNotExists' ) SELECT ) MORE_CONDITIONS? )?
    +             ( ( 'connectBy' | 'connectByNoCycle' )
    +               ( CONDITION | SQL )
    +               ( 'and' ( CONDITION | SQL ) )* 
    +               ( 'startWith' ( CONDITION | SQL ) )? )?
    +             ( 'groupBy' GROUP_FIELD+ )?
    +             ( 'having' ( CONDITION+ | SQL ) MORE_CONDITIONS? )?
    +             ( 'orderBy' ( FIELD+ | SORT_FIELD+ | INT+ ) )?
    +             ( ( 'limit' INT ( 'offset' INT | INT )? ) |
    +               ( ( 'forUpdate' 
    +                   ( 'of' ( FIELD+ | TABLE+ ) )? 
    +                   ( 'wait' INT |
    +                     'noWait' |
    +                     'skipLocked' )? ) |
    +                 'forShare' ) )?
    +           ( ( 'union' | 'unionAll' | 'except' | 'intersect' ) SELECT )*
    +
    +UPDATE ::=  ( 'update' TABLE )
    +            ( 'set' FIELD FIELD )+
    +            ( ( 'where' ( CONDITION+ | SQL ) | 
    +            ( 'whereExists' | 'whereNotExists' ) SELECT ) MORE_CONDITIONS? )?
    +
    +INSERT ::=  ( 'insertInto' )
    +            ( SELECT | 
    +              TABLE 
    +              ( ( ( 'set' FIELD FIELD )+ ( 'newRecord' ( 'set' FIELD FIELD )+ )* | 
    +                        ( 'values' FIELD+ )+ ) |
    +                FIELD+ ( 'values' FIELD+ )+ ) 
    +              ( ( 'onDuplicateKeyUpdate' ( 'set' FIELD FIELD )+ ) | 
    +                ( 'returning' FIELD* ) )? )
    +
    +DELETE ::=  ( 'delete' TABLE )
    +            ( ( 'where' ( CONDITION+ | SQL ) | 
    +            ( 'whereExists' | 'whereNotExists' ) SELECT ) MORE_CONDITIONS? )?
    +
    +MERGE ::= ( 'mergeInto' TABLE )
    +          ( 'using' TABLE | 'usingDual' )
    +          ( 'on' ( CONDITION+ | SQL ) MORE_CONDITIONS? )
    +          ( 'whenMatchedThenUpdate' 
    +            ( 'set' FIELD FIELD )+ 
    +            ( 'where' CONDITION 
    +              ( 'deleteWhere' CONDITION )? )? )?
    +          ( 'whenNotMatchedThenInsert' 
    +            ( ( 'set' FIELD FIELD )+ | 
    +              ( FIELD+ 'values' FIELD+) ) 
    +            ( 'where' CONDITION )? )?
    +
    +TRUNCATE ::= 'truncate' TABLE
    +
    +SQL ::= 'SQL String' BINDING*
    +
    +BINDING ::= 'Any Java Object'
    +BINDING_MAP ::= 'A map of bind values'
    +
    +FIELD ::= ( 'jOOQ generated Field' ) |
    +          ( 'CustomField' ) |
    +          ( ( 'val' | 'value' ) BINDING ) |
    +          ( 'param' NAME BINDING? ) |
    +          ( 'literal' BINDING ) |
    +          FIELD 'as' NAME |
    +          FIELD 'cast' TYPE |
    +          ( 'zero' | 'one' | 'two' | 'pi' | 'e' ) |
    +          ( 'currentDate' | 'currentTime' | 'currentTimestamp' | 'currentUser' ) |
    +          ( 'rand' ) |
    +          ( 'field' SQL ) |
    +          ( 'function' NAME FIELD* ) |
    +          ( ( 'decode' )
    +            ( ( ( ( 'value' FIELD )
    +                  ( 'when' FIELD FIELD )+ ) |
    +                  ( 'when' CONDITION FIELD )+ )
    +              ( 'otherwise' FIELD )? | 
    +              ( FIELD+ ) ) ) |
    +          ( 'grouping' FIELD ) |
    +          ( 'groupingId' FIELD+ ) |
    +          ( 'cast' BINDING TYPE ) |
    +          ( 'castNull' TYPE ) |
    +          ( ( 'coalesce' | 'concat' | 'greatest' | 'least' ) FIELD+ ) |
    +          ( ( 'nvl' | 'nullif' ) FIELD FIELD ) |
    +          ( 'nvl2' FIELD FIELD FIELD ) |
    +          ( ( 'upper' | 'lower' | 'trim' | 'rtrim' | 'ltrim' | 
    +              'ascii' | 'length' | 'charLength' | 'bitLength' | 'octetLength' ) FIELD ) |
    +          ( ( 'rpad' | 'lpad' | 'replace' | 'substring' ) FIELD FIELD FIELD? ) |
    +          ( ( 'repeat' | 'position' ) FIELD FIELD ) |
    +          ( 'extract' FIELD FIELD ) |
    +          ( ( 'bitCount' | 'bitNot' ) FIELD ) |
    +          ( ( 'bitAnd' | 'bitNand' | 'bitOr' | 'bitNor' | 'bitXor' | 'bitXNor' | 'shl' | 'shr' ) FIELD FIELD ) |
    +          ( FIELD 'neg' ) |
    +          ( FIELD ( 'add' | 'sub' | 'mul' | 'div' | 'mod' ) FIELD ) |
    +          ( ( 'sign' | 'abs' | 'floor' | 'ceil' | 'sqrt' | 'exp' | 'ln' | 
    +              'acos' | 'asin' | 'atan' | 'cos' | 'sin' | 'tan' | 'cot' |
    +              'sinh' | 'cosh' | 'tanh' | 'coth' | 'deg' | 'rad' ) FIELD ) |
    +          ( ( 'log' | 'power' | 'atan2' ) FIELD FIELD ) |
    +          ( 'round' FIELD FIELD? ) |
    +          AGGREGATE_FUNCTION ( 'over' PARTITION_CLAUSE )?
    +
    +AGGREGATE_FUNCTION ::=           
    +              'count' | 'rowNumber' | 'rank' | 'denseRank' | 'percentRank' | 'cumeDist' |
    +              ( ( 'count' | 'countDistinct' | 
    +			      'max' | 'maxDistinct' |
    +				  'min' | 'minDistinct' |
    +				  'sum' | 'sumDistinct' |
    +				  'avg' | 'avgDistinct' |
    +				  'median' | 
    +                  'stddevPop' | 'stddevSamp' | 'varPop' | 'varSamp' ) FIELD ) |
    +              ( 'ntile' INT ) | 
    +              ( ( ( 'firstValue' | 'lastValue' ) FIELD |
    +                  ( ( 'lead' | 'lag' ) FIELD ( INT FIELD? )? ) ) 
    +                ( 'ignoreNulls' | 'respectNulls' )? )
    +
    +PARTITION_CLAUSE ::= ( 'partitionBy' FIELD+ | 'partitionByOne' )?
    +                     ( 'orderBy' ( FIELD+ | SORT_FIELD+ )
    +                       ( 'rowsUnboundedPreceding' | 
    +                         'rowsPreceding' INT | 
    +                         'rowsCurrentRow' |
    +                         'rowsUnboundedFollowing' |
    +                         'rowsFollowing' INT | 
    +                         ( 'rowsBetweenUnboundedPreceding' | 
    +                           'rowsBetweenPreceding' INT |
    +                           'rowsBetweenCurrentRow' |
    +                           'rowsBetweenUnboundedFollowing' |
    +                           'rowsBetweenFollowing' INT ) 
    +                         ( 'andUnboundedPreceding' |
    +                           'andPreceding' INT |
    +                           'andCurrentRow' |
    +                           'andUnboundedFollowing' |
    +                           'andFollowing' INT ) )? )?
    +           
    +GROUP_FIELD ::= ( FIELD | 
    +                  'rollup' FIELD+ |
    +                  'cube' FIELD+ |
    +                  'groupingSets' ( FIELD+ | ( '[' FIELD+ ']' )+ ) )
    +
    +
    +SORT_FIELD ::= FIELD ( 'asc' | 'desc' | 'sortAsc' BINDING+ | 'sortDesc' BINDING+ | 'sort' BINDING_MAP )
    +                     ( 'nullsFirst' | 'nullsLast' )?
    +INT ::= [0-9]+ /* ws: explicit */
    +NAME ::= [A-Za-z0-9]+ /* ws: explicit */
    +TABLE ::= ( 'jOOQ generated Table' ) |
    +          ( 'CustomTable' ) |
    +          ( 'table' ( SQL | SELECT ) ) |
    +          ( ( 'table' | 'unnest' ) ( FIELD | BINDING* ) ) |
    +		  ( TABLE 'as' NAME ) |
    +		  ( TABLE 'pivot' AGGREGATE_FUNCTION+ 'on' FIELD 'in' FIELD+ )
    +
    +CONDITION ::= ( CONDITION ( MORE_CONDITIONS | 'not' ) ) |
    +              ( FIELD ( 'isNull' | 
    +                        'isNotNull' | 
    +                        'isTrue' | 
    +                        'isFalse' | 
    +                        'between' FIELD FIELD |
    +                        ( 'like' | 'notLike' | 'equal' | 'notEqual' |
    +                          'lessThan' | 'lessOrEqual' | 'greaterThan' | 'greaterOrEqual' ) FIELD |
    +                        ( 'in' | 'notIn' ) ( FIELD+ | SELECT ) |
    +                        ( 'equalAny' | 'equalSome' | 'equalAll' | 
    +                          'notEqualAny' | 'notEqualSome' | 'notEqualAll' |
    +                          'lessThanAny' | 'lessThanSome' | 'lessThanAll' |
    +                          'lessOrEqualAny' | 'lessOrEqualSome' | 'lessOrEqualAll' |
    +                          'greaterThanAny' | 'greaterThanSome' | 'greaterThanAll' |
    +                          'greaterOrEqualAny' | 'greaterOrEqualSome' | 'greaterOrEqualAll' ) SELECT ) ) |
    +              ( 'condition' SQL ) |
    +              ( 'trueCondition' | 'falseCondition' ) |
    +              ( 'exists' | 'notExists' ) SELECT
    +
    +MORE_CONDITIONS ::= ( ( 'and' | 'or') ( CONDITION | SQL ) | 
    +                      ( 'andNot' | 'orNot' ) CONDITION |
    +                      ( 'andExists' | 'andNotExists' | 'orExists' | 'orNotExists' ) SELECT )+
    +
    diff --git a/jOOQ-website/src/main/java/Transform.java b/jOOQ-website/src/main/java/Transform.java
    new file mode 100644
    index 00000000000..6227bf2aa9f
    --- /dev/null
    +++ b/jOOQ-website/src/main/java/Transform.java
    @@ -0,0 +1,204 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +import static org.joox.JOOX.$;
    +
    +import java.io.BufferedOutputStream;
    +import java.io.File;
    +import java.io.FileOutputStream;
    +import java.io.InputStream;
    +import java.io.OutputStream;
    +import java.util.Collections;
    +
    +import javax.xml.transform.Result;
    +import javax.xml.transform.Source;
    +import javax.xml.transform.Transformer;
    +import javax.xml.transform.TransformerFactory;
    +import javax.xml.transform.dom.DOMSource;
    +import javax.xml.transform.sax.SAXResult;
    +import javax.xml.transform.stream.StreamResult;
    +import javax.xml.transform.stream.StreamSource;
    +
    +import org.apache.commons.lang3.StringUtils;
    +import org.apache.fop.apps.FOUserAgent;
    +import org.apache.fop.apps.Fop;
    +import org.apache.fop.apps.FopFactory;
    +import org.apache.fop.apps.MimeConstants;
    +import org.joox.Match;
    +
    +/**
    + * XSL transformation utility for HTML pages
    + *
    + * @author Lukas Eder
    + */
    +public class Transform {
    +    private static FopFactory fopFactory = FopFactory.newInstance();
    +
    +    public static void main(String[] args) throws Exception {
    +        System.out.println("Transforming multi-page manual");
    +        System.out.println("------------------------------");
    +        multiplePages();
    +
    +        System.out.println();
    +        System.out.println("Transforming single-page manual");
    +        System.out.println("-------------------------------");
    +        singlePage();
    +
    +        System.out.println();
    +        System.out.println("Transforming PDF manual");
    +        System.out.println("-------------------------------");
    +        pdf();
    +    }
    +
    +    public static void multiplePages() throws Exception {
    +        InputStream isXML = Transform.class.getResourceAsStream("manual.xml");
    +        InputStream isXSL = Transform.class.getResourceAsStream("html-pages.xsl");
    +
    +        StreamSource xsl = new StreamSource(isXSL);
    +        TransformerFactory factory = TransformerFactory.newInstance();
    +        Transformer transformer = factory.newTransformer(xsl);
    +
    +        Match manual = $(isXML);
    +        for (Match section : manual.find("section").each()) {
    +            Match sections = section.add(section.parents("section")).reverse();
    +
    +            String path = StringUtils.join(sections.ids(), "/");
    +            String relativePath = StringUtils.join(Collections.nCopies(sections.size(), ".."), "/") + "/";
    +            File dir = new File(path);
    +            dir.mkdirs();
    +
    +            System.out.println("Transforming section " + path);
    +            FileOutputStream out = new FileOutputStream(new File(dir, "index.php"));
    +
    +            Source source = new DOMSource(manual.document());
    +            Result target = new StreamResult(out);
    +
    +            transformer.setParameter("sectionID", section.id());
    +            transformer.setParameter("relativePath", relativePath);
    +            transformer.transform(source, target);
    +
    +            out.close();
    +        }
    +    }
    +
    +    public static void singlePage() throws Exception {
    +        InputStream isXML = Transform.class.getResourceAsStream("manual.xml");
    +        InputStream isXSL = Transform.class.getResourceAsStream("html-page.xsl");
    +
    +        StreamSource xsl = new StreamSource(isXSL);
    +        TransformerFactory factory = TransformerFactory.newInstance();
    +        Transformer transformer = factory.newTransformer(xsl);
    +
    +        Match manual = $(isXML);
    +
    +        File dir = new File("manual-single-page");
    +        dir.mkdirs();
    +
    +        System.out.println("Transforming manual");
    +        FileOutputStream out = new FileOutputStream(new File(dir, "index.php"));
    +
    +        Source source = new DOMSource(manual.document());
    +        Result target = new StreamResult(out);
    +
    +        transformer.transform(source, target);
    +
    +        out.close();
    +    }
    +
    +    public static void pdf() throws Exception {
    +
    +        // XML -> FO
    +        // ---------------------------------------------------------------------
    +        System.out.println("Transforming XML -> FO");
    +        InputStream isXML = Transform.class.getResourceAsStream("manual.xml");
    +        InputStream isXSL = Transform.class.getResourceAsStream("pdf.xsl");
    +
    +        StreamSource xsl = new StreamSource(isXSL);
    +        TransformerFactory factory = TransformerFactory.newInstance();
    +        Transformer transformer = factory.newTransformer(xsl);
    +
    +        Match manual = $(isXML);
    +
    +        File dir = new File("manual-pdf");
    +        dir.mkdirs();
    +        FileOutputStream fout = new FileOutputStream(new File(dir, "jOOQ-manual.fo.xml"));
    +
    +        Source source = new DOMSource(manual.document());
    +        Result target = new StreamResult(fout);
    +
    +        transformer.transform(source, target);
    +        fout.close();
    +
    +        // FO -> PDF
    +        // ---------------------------------------------------------------------
    +        // See an example about how to do it here:
    +        // http://svn.apache.org/viewvc/xmlgraphics/fop/trunk/examples/embedding/java/embedding/ExampleFO2PDF.java?view=markup
    +        System.out.println("Transforming FO -> PDF");
    +
    +        OutputStream out = null;
    +
    +        fopFactory.setUserConfig(new File("C:/Users/lukas/workspace/jOOQ-website/src/main/resources/fop.config.xml"));
    +        FOUserAgent foUserAgent = fopFactory.newFOUserAgent();
    +        // configure foUserAgent as desired
    +
    +        // Setup output stream.  Note: Using BufferedOutputStream
    +        // for performance reasons (helpful with FileOutputStreams).
    +        out = new FileOutputStream(new File(dir, "jOOQ-manual.pdf"));
    +        out = new BufferedOutputStream(out);
    +
    +        // Construct fop with desired output format
    +        Fop fop = fopFactory.newFop(MimeConstants.MIME_PDF, foUserAgent, out);
    +
    +        // Setup JAXP using identity transformer
    +        transformer = factory.newTransformer(); // identity transformer
    +
    +        // Setup input stream
    +        Source src = new StreamSource(new File(dir, "jOOQ-manual.fo.xml"));
    +
    +        // Resulting SAX events (the generated FO) must be piped through to FOP
    +        Result res = new SAXResult(fop.getDefaultHandler());
    +
    +        // Start XSLT transformation and FOP processing
    +        transformer.transform(src, res);
    +
    +        out.flush();
    +        out.close();
    +
    +        // Open the PDF and check it
    +        Runtime.getRuntime().exec(new String[] {
    +                "C:\\Program Files (x86)\\Adobe\\Reader 9.0\\Reader\\AcroRd32.exe",
    +                "C:\\Users\\lukas\\workspace\\jOOQ-website\\manual-pdf\\jOOQ-manual.pdf" });
    +    }
    +}
    diff --git a/jOOQ-website/src/main/resources/fop.config.xml b/jOOQ-website/src/main/resources/fop.config.xml
    new file mode 100644
    index 00000000000..a9a4c95edb3
    --- /dev/null
    +++ b/jOOQ-website/src/main/resources/fop.config.xml
    @@ -0,0 +1,19 @@
    +<?xml version="1.0" encoding="UTF-8"?>
    +<fop version="1.0">
    +	<renderers>
    +		<renderer mime="application/pdf">
    +			<filterList>
    +				<!-- provides compression using zlib flate (default is on) -->
    +				<value>flate</value>
    +			</filterList>
    +			<fonts>
    +				<font 
    +					metrics-url="C:/Users/lukas/workspace/jOOQ-website/src/main/resources/georgia.xml" 
    +					embed-url="C:/Users/lukas/workspace/jOOQ-website/src/main/resources/georgia.ttf"
    +					kerning="yes">
    +					<font-triplet name="Georgia" style="normal" weight="normal" />
    +				</font>
    +			</fonts>
    +		</renderer>
    +	</renderers>
    +</fop>
    \ No newline at end of file
    diff --git a/jOOQ-website/src/main/resources/georgia.ttf b/jOOQ-website/src/main/resources/georgia.ttf
    new file mode 100644
    index 00000000000..317b851678e
    Binary files /dev/null and b/jOOQ-website/src/main/resources/georgia.ttf differ
    diff --git a/jOOQ-website/src/main/resources/georgia.xml b/jOOQ-website/src/main/resources/georgia.xml
    new file mode 100644
    index 00000000000..9a9636a79bd
    --- /dev/null
    +++ b/jOOQ-website/src/main/resources/georgia.xml
    @@ -0,0 +1,863 @@
    +<?xml version="1.0" encoding="UTF-8"?>
    +<font-metrics metrics-version="2" type="TYPE0">
    +	<font-name>Georgia</font-name>
    +	<full-name>Georgia</full-name>
    +	<family-name>Georgia</family-name>
    +	<embed />
    +	<cap-height>692</cap-height>
    +	<x-height>481</x-height>
    +	<ascender>756</ascender>
    +	<descender>-216</descender>
    +	<bbox>
    +		<left>-173</left>
    +		<bottom>-303</bottom>
    +		<right>1166</right>
    +		<top>949</top>
    +	</bbox>
    +	<flags>33</flags>
    +	<stemv>0</stemv>
    +	<italicangle>0</italicangle>
    +	<subtype>TYPE0</subtype>
    +	<multibyte-extras>
    +		<cid-type>CIDFontType2</cid-type>
    +		<default-width>0</default-width>
    +		<bfranges>
    +			<bf gi="3" ue="126" us="32" />
    +			<bf gi="3" ue="160" us="160" />
    +			<bf gi="163" ue="161" us="161" />
    +			<bf gi="132" ue="163" us="162" />
    +			<bf gi="584" ue="164" us="164" />
    +			<bf gi="150" ue="165" us="165" />
    +			<bf gi="230" ue="166" us="166" />
    +			<bf gi="134" ue="167" us="167" />
    +			<bf gi="142" ue="168" us="168" />
    +			<bf gi="139" ue="169" us="169" />
    +			<bf gi="157" ue="170" us="170" />
    +			<bf gi="169" ue="171" us="171" />
    +			<bf gi="164" ue="172" us="172" />
    +			<bf gi="16" ue="173" us="173" />
    +			<bf gi="138" ue="174" us="174" />
    +			<bf gi="256" ue="175" us="175" />
    +			<bf gi="131" ue="176" us="176" />
    +			<bf gi="147" ue="177" us="177" />
    +			<bf gi="240" ue="179" us="178" />
    +			<bf gi="141" ue="180" us="180" />
    +			<bf gi="151" ue="181" us="181" />
    +			<bf gi="136" ue="182" us="182" />
    +			<bf gi="257" ue="183" us="183" />
    +			<bf gi="220" ue="184" us="184" />
    +			<bf gi="239" ue="185" us="185" />
    +			<bf gi="158" ue="186" us="186" />
    +			<bf gi="170" ue="187" us="187" />
    +			<bf gi="243" ue="188" us="188" />
    +			<bf gi="242" ue="189" us="189" />
    +			<bf gi="244" ue="190" us="190" />
    +			<bf gi="162" ue="191" us="191" />
    +			<bf gi="172" ue="192" us="192" />
    +			<bf gi="200" ue="193" us="193" />
    +			<bf gi="198" ue="194" us="194" />
    +			<bf gi="173" ue="195" us="195" />
    +			<bf gi="98" ue="197" us="196" />
    +			<bf gi="144" ue="198" us="198" />
    +			<bf gi="100" ue="199" us="199" />
    +			<bf gi="202" ue="200" us="200" />
    +			<bf gi="101" ue="201" us="201" />
    +			<bf gi="199" ue="202" us="202" />
    +			<bf gi="201" ue="203" us="203" />
    +			<bf gi="206" ue="204" us="204" />
    +			<bf gi="203" ue="207" us="205" />
    +			<bf gi="231" ue="208" us="208" />
    +			<bf gi="102" ue="209" us="209" />
    +			<bf gi="209" ue="210" us="210" />
    +			<bf gi="207" ue="212" us="211" />
    +			<bf gi="174" ue="213" us="213" />
    +			<bf gi="103" ue="214" us="214" />
    +			<bf gi="238" ue="215" us="215" />
    +			<bf gi="145" ue="216" us="216" />
    +			<bf gi="212" ue="217" us="217" />
    +			<bf gi="210" ue="219" us="218" />
    +			<bf gi="104" ue="220" us="220" />
    +			<bf gi="233" ue="221" us="221" />
    +			<bf gi="235" ue="222" us="222" />
    +			<bf gi="137" ue="223" us="223" />
    +			<bf gi="106" ue="224" us="224" />
    +			<bf gi="105" ue="225" us="225" />
    +			<bf gi="107" ue="226" us="226" />
    +			<bf gi="109" ue="227" us="227" />
    +			<bf gi="108" ue="228" us="228" />
    +			<bf gi="110" ue="229" us="229" />
    +			<bf gi="160" ue="230" us="230" />
    +			<bf gi="111" ue="231" us="231" />
    +			<bf gi="113" ue="232" us="232" />
    +			<bf gi="112" ue="233" us="233" />
    +			<bf gi="114" ue="235" us="234" />
    +			<bf gi="117" ue="236" us="236" />
    +			<bf gi="116" ue="237" us="237" />
    +			<bf gi="118" ue="239" us="238" />
    +			<bf gi="232" ue="240" us="240" />
    +			<bf gi="120" ue="241" us="241" />
    +			<bf gi="122" ue="242" us="242" />
    +			<bf gi="121" ue="243" us="243" />
    +			<bf gi="123" ue="244" us="244" />
    +			<bf gi="125" ue="245" us="245" />
    +			<bf gi="124" ue="246" us="246" />
    +			<bf gi="183" ue="247" us="247" />
    +			<bf gi="161" ue="248" us="248" />
    +			<bf gi="127" ue="249" us="249" />
    +			<bf gi="126" ue="250" us="250" />
    +			<bf gi="128" ue="252" us="251" />
    +			<bf gi="234" ue="253" us="253" />
    +			<bf gi="236" ue="254" us="254" />
    +			<bf gi="185" ue="255" us="255" />
    +			<bf gi="324" ue="257" us="256" />
    +			<bf gi="258" ue="261" us="258" />
    +			<bf gi="251" ue="263" us="262" />
    +			<bf gi="326" ue="267" us="264" />
    +			<bf gi="253" ue="269" us="268" />
    +			<bf gi="262" ue="272" us="270" />
    +			<bf gi="255" ue="273" us="273" />
    +			<bf gi="330" ue="279" us="274" />
    +			<bf gi="265" ue="283" us="280" />
    +			<bf gi="336" ue="285" us="284" />
    +			<bf gi="246" ue="287" us="286" />
    +			<bf gi="338" ue="303" us="288" />
    +			<bf gi="248" ue="304" us="304" />
    +			<bf gi="213" ue="305" us="305" />
    +			<bf gi="312" ue="307" us="306" />
    +			<bf gi="354" ue="312" us="308" />
    +			<bf gi="269" ue="314" us="313" />
    +			<bf gi="359" ue="316" us="315" />
    +			<bf gi="271" ue="320" us="317" />
    +			<bf gi="224" ue="322" us="321" />
    +			<bf gi="275" ue="324" us="323" />
    +			<bf gi="361" ue="326" us="325" />
    +			<bf gi="277" ue="328" us="327" />
    +			<bf gi="314" ue="329" us="329" />
    +			<bf gi="363" ue="335" us="330" />
    +			<bf gi="279" ue="337" us="336" />
    +			<bf gi="175" ue="339" us="338" />
    +			<bf gi="281" ue="341" us="340" />
    +			<bf gi="369" ue="343" us="342" />
    +			<bf gi="283" ue="347" us="344" />
    +			<bf gi="371" ue="349" us="348" />
    +			<bf gi="249" ue="351" us="350" />
    +			<bf gi="226" ue="353" us="352" />
    +			<bf gi="593" ue="355" us="354" />
    +			<bf gi="289" ue="357" us="356" />
    +			<bf gi="373" ue="365" us="358" />
    +			<bf gi="291" ue="369" us="366" />
    +			<bf gi="381" ue="375" us="370" />
    +			<bf gi="186" ue="376" us="376" />
    +			<bf gi="295" ue="380" us="377" />
    +			<bf gi="228" ue="382" us="381" />
    +			<bf gi="387" ue="383" us="383" />
    +			<bf gi="166" ue="402" us="402" />
    +			<bf gi="388" ue="511" us="506" />
    +			<bf gi="582" ue="537" us="536" />
    +			<bf gi="287" ue="539" us="538" />
    +			<bf gi="214" ue="710" us="710" />
    +			<bf gi="223" ue="711" us="711" />
    +			<bf gi="216" ue="713" us="713" />
    +			<bf gi="217" ue="730" us="728" />
    +			<bf gi="222" ue="731" us="731" />
    +			<bf gi="215" ue="732" us="732" />
    +			<bf gi="221" ue="733" us="733" />
    +			<bf gi="577" ue="768" us="768" />
    +			<bf gi="576" ue="769" us="769" />
    +			<bf gi="578" ue="770" us="770" />
    +			<bf gi="580" ue="774" us="774" />
    +			<bf gi="575" ue="776" us="776" />
    +			<bf gi="581" ue="779" us="779" />
    +			<bf gi="579" ue="780" us="780" />
    +			<bf gi="412" ue="806" us="806" />
    +			<bf gi="30" ue="894" us="894" />
    +			<bf gi="413" ue="902" us="900" />
    +			<bf gi="394" ue="903" us="903" />
    +			<bf gi="416" ue="906" us="904" />
    +			<bf gi="419" ue="908" us="908" />
    +			<bf gi="420" ue="914" us="910" />
    +			<bf gi="299" ue="915" us="915" />
    +			<bf gi="425" ue="919" us="916" />
    +			<bf gi="300" ue="920" us="920" />
    +			<bf gi="429" ue="929" us="921" />
    +			<bf gi="438" ue="933" us="931" />
    +			<bf gi="301" ue="934" us="934" />
    +			<bf gi="441" ue="944" us="935" />
    +			<bf gi="302" ue="945" us="945" />
    +			<bf gi="451" ue="947" us="946" />
    +			<bf gi="303" ue="949" us="948" />
    +			<bf gi="453" ue="959" us="950" />
    +			<bf gi="570" ue="960" us="960" />
    +			<bf gi="463" ue="962" us="961" />
    +			<bf gi="305" ue="964" us="963" />
    +			<bf gi="465" ue="965" us="965" />
    +			<bf gi="307" ue="966" us="966" />
    +			<bf gi="466" ue="974" us="967" />
    +			<bf gi="474" ue="1036" us="1025" />
    +			<bf gi="486" ue="1103" us="1038" />
    +			<bf gi="552" ue="1116" us="1105" />
    +			<bf gi="564" ue="1119" us="1118" />
    +			<bf gi="566" ue="1169" us="1168" />
    +			<bf gi="395" ue="7813" us="7808" />
    +			<bf gi="401" ue="7923" us="7922" />
    +			<bf gi="177" ue="8212" us="8211" />
    +			<bf gi="568" ue="8213" us="8213" />
    +			<bf gi="308" ue="8215" us="8215" />
    +			<bf gi="181" ue="8217" us="8216" />
    +			<bf gi="195" ue="8218" us="8218" />
    +			<bf gi="403" ue="8219" us="8219" />
    +			<bf gi="179" ue="8221" us="8220" />
    +			<bf gi="196" ue="8222" us="8222" />
    +			<bf gi="130" ue="8224" us="8224" />
    +			<bf gi="193" ue="8225" us="8225" />
    +			<bf gi="135" ue="8226" us="8226" />
    +			<bf gi="171" ue="8230" us="8230" />
    +			<bf gi="197" ue="8240" us="8240" />
    +			<bf gi="315" ue="8243" us="8242" />
    +			<bf gi="189" ue="8250" us="8249" />
    +			<bf gi="309" ue="8252" us="8252" />
    +			<bf gi="404" ue="8254" us="8254" />
    +			<bf gi="187" ue="8260" us="8260" />
    +			<bf gi="571" ue="8309" us="8308" />
    +			<bf gi="573" ue="8312" us="8311" />
    +			<bf gi="310" ue="8319" us="8319" />
    +			<bf gi="245" ue="8355" us="8355" />
    +			<bf gi="405" ue="8356" us="8356" />
    +			<bf gi="311" ue="8359" us="8359" />
    +			<bf gi="188" ue="8364" us="8364" />
    +			<bf gi="317" ue="8453" us="8453" />
    +			<bf gi="318" ue="8467" us="8467" />
    +			<bf gi="569" ue="8470" us="8470" />
    +			<bf gi="585" ue="8480" us="8480" />
    +			<bf gi="140" ue="8482" us="8482" />
    +			<bf gi="159" ue="8486" us="8486" />
    +			<bf gi="406" ue="8494" us="8494" />
    +			<bf gi="407" ue="8542" us="8539" />
    +			<bf gi="152" ue="8706" us="8706" />
    +			<bf gi="168" ue="8710" us="8710" />
    +			<bf gi="154" ue="8719" us="8719" />
    +			<bf gi="153" ue="8721" us="8721" />
    +			<bf gi="237" ue="8722" us="8722" />
    +			<bf gi="187" ue="8725" us="8725" />
    +			<bf gi="194" ue="8729" us="8729" />
    +			<bf gi="165" ue="8730" us="8730" />
    +			<bf gi="146" ue="8734" us="8734" />
    +			<bf gi="156" ue="8747" us="8747" />
    +			<bf gi="167" ue="8776" us="8776" />
    +			<bf gi="143" ue="8800" us="8800" />
    +			<bf gi="148" ue="8805" us="8804" />
    +			<bf gi="586" ue="9472" us="9472" />
    +			<bf gi="587" ue="9474" us="9474" />
    +			<bf gi="588" ue="9484" us="9484" />
    +			<bf gi="589" ue="9488" us="9488" />
    +			<bf gi="590" ue="9492" us="9492" />
    +			<bf gi="591" ue="9496" us="9496" />
    +			<bf gi="319" ue="9633" us="9633" />
    +			<bf gi="320" ue="9643" us="9642" />
    +			<bf gi="184" ue="9674" us="9674" />
    +			<bf gi="322" ue="9679" us="9679" />
    +			<bf gi="323" ue="9702" us="9702" />
    +			<bf gi="592" ue="9834" us="9834" />
    +			<bf gi="191" ue="64258" us="64257" />
    +			<bf gi="0" ue="65535" us="65535" />
    +		</bfranges>
    +		<cid-widths start-index="0">
    +			<wx w="1000" />
    +			<wx w="0" />
    +			<wx w="241" />
    +			<wx w="241" />
    +			<wx w="331" />
    +			<wx w="411" />
    +			<wx w="643" />
    +			<wx w="609" />
    +			<wx w="817" />
    +			<wx w="710" />
    +			<wx w="215" />
    +			<wx w="375" />
    +			<wx w="375" />
    +			<wx w="472" />
    +			<wx w="643" />
    +			<wx w="269" />
    +			<wx w="374" />
    +			<wx w="269" />
    +			<wx w="468" />
    +			<wx w="613" />
    +			<wx w="429" />
    +			<wx w="558" />
    +			<wx w="551" />
    +			<wx w="564" />
    +			<wx w="528" />
    +			<wx w="565" />
    +			<wx w="502" />
    +			<wx w="596" />
    +			<wx w="565" />
    +			<wx w="312" />
    +			<wx w="312" />
    +			<wx w="643" />
    +			<wx w="643" />
    +			<wx w="643" />
    +			<wx w="478" />
    +			<wx w="928" />
    +			<wx w="670" />
    +			<wx w="653" />
    +			<wx w="642" />
    +			<wx w="749" />
    +			<wx w="653" />
    +			<wx w="599" />
    +			<wx w="725" />
    +			<wx w="814" />
    +			<wx w="389" />
    +			<wx w="517" />
    +			<wx w="694" />
    +			<wx w="603" />
    +			<wx w="927" />
    +			<wx w="767" />
    +			<wx w="744" />
    +			<wx w="609" />
    +			<wx w="744" />
    +			<wx w="701" />
    +			<wx w="561" />
    +			<wx w="618" />
    +			<wx w="756" />
    +			<wx w="666" />
    +			<wx w="975" />
    +			<wx w="710" />
    +			<wx w="615" />
    +			<wx w="601" />
    +			<wx w="375" />
    +			<wx w="468" />
    +			<wx w="375" />
    +			<wx w="643" />
    +			<wx w="643" />
    +			<wx w="500" />
    +			<wx w="503" />
    +			<wx w="560" />
    +			<wx w="454" />
    +			<wx w="574" />
    +			<wx w="483" />
    +			<wx w="325" />
    +			<wx w="509" />
    +			<wx w="582" />
    +			<wx w="292" />
    +			<wx w="291" />
    +			<wx w="535" />
    +			<wx w="286" />
    +			<wx w="880" />
    +			<wx w="590" />
    +			<wx w="539" />
    +			<wx w="571" />
    +			<wx w="559" />
    +			<wx w="409" />
    +			<wx w="432" />
    +			<wx w="345" />
    +			<wx w="575" />
    +			<wx w="496" />
    +			<wx w="737" />
    +			<wx w="504" />
    +			<wx w="492" />
    +			<wx w="443" />
    +			<wx w="430" />
    +			<wx w="375" />
    +			<wx w="430" />
    +			<wx w="643" />
    +			<wx w="670" />
    +			<wx w="670" />
    +			<wx w="642" />
    +			<wx w="653" />
    +			<wx w="767" />
    +			<wx w="744" />
    +			<wx w="756" />
    +			<wx w="503" />
    +			<wx w="503" />
    +			<wx w="503" />
    +			<wx w="503" />
    +			<wx w="503" />
    +			<wx w="503" />
    +			<wx w="454" />
    +			<wx w="483" />
    +			<wx w="483" />
    +			<wx w="483" />
    +			<wx w="483" />
    +			<wx w="292" />
    +			<wx w="292" />
    +			<wx w="292" />
    +			<wx w="292" />
    +			<wx w="590" />
    +			<wx w="539" />
    +			<wx w="539" />
    +			<wx w="539" />
    +			<wx w="539" />
    +			<wx w="539" />
    +			<wx w="575" />
    +			<wx w="575" />
    +			<wx w="575" />
    +			<wx w="575" />
    +			<wx w="472" />
    +			<wx w="419" />
    +			<wx w="555" />
    +			<wx w="622" />
    +			<wx w="500" />
    +			<wx w="392" />
    +			<wx w="500" />
    +			<wx w="548" />
    +			<wx w="941" />
    +			<wx w="941" />
    +			<wx w="942" />
    +			<wx w="500" />
    +			<wx w="500" />
    +			<wx w="643" />
    +			<wx w="970" />
    +			<wx w="744" />
    +			<wx w="716" />
    +			<wx w="643" />
    +			<wx w="643" />
    +			<wx w="643" />
    +			<wx w="614" />
    +			<wx w="566" />
    +			<wx w="576" />
    +			<wx w="705" />
    +			<wx w="834" />
    +			<wx w="591" />
    +			<wx w="499" />
    +			<wx w="500" />
    +			<wx w="500" />
    +			<wx w="778" />
    +			<wx w="736" />
    +			<wx w="539" />
    +			<wx w="478" />
    +			<wx w="331" />
    +			<wx w="643" />
    +			<wx w="668" />
    +			<wx w="519" />
    +			<wx w="643" />
    +			<wx w="668" />
    +			<wx w="581" />
    +			<wx w="581" />
    +			<wx w="807" />
    +			<wx w="670" />
    +			<wx w="670" />
    +			<wx w="744" />
    +			<wx w="998" />
    +			<wx w="816" />
    +			<wx w="643" />
    +			<wx w="856" />
    +			<wx w="410" />
    +			<wx w="410" />
    +			<wx w="226" />
    +			<wx w="226" />
    +			<wx w="643" />
    +			<wx w="561" />
    +			<wx w="492" />
    +			<wx w="615" />
    +			<wx w="81" />
    +			<wx w="642" />
    +			<wx w="415" />
    +			<wx w="415" />
    +			<wx w="582" />
    +			<wx w="589" />
    +			<wx w="472" />
    +			<wx w="279" />
    +			<wx w="226" />
    +			<wx w="410" />
    +			<wx w="1205" />
    +			<wx w="670" />
    +			<wx w="653" />
    +			<wx w="670" />
    +			<wx w="653" />
    +			<wx w="653" />
    +			<wx w="389" />
    +			<wx w="389" />
    +			<wx w="389" />
    +			<wx w="389" />
    +			<wx w="744" />
    +			<wx w="744" />
    +			<wx w="744" />
    +			<wx w="756" />
    +			<wx w="756" />
    +			<wx w="756" />
    +			<wx w="292" />
    +			<wx w="500" />
    +			<wx w="500" />
    +			<wx w="500" />
    +			<wx w="500" />
    +			<wx w="500" />
    +			<wx w="500" />
    +			<wx w="500" />
    +			<wx w="500" />
    +			<wx w="500" />
    +			<wx w="500" />
    +			<wx w="603" />
    +			<wx w="286" />
    +			<wx w="561" />
    +			<wx w="432" />
    +			<wx w="601" />
    +			<wx w="443" />
    +			<wx w="375" />
    +			<wx w="749" />
    +			<wx w="531" />
    +			<wx w="615" />
    +			<wx w="492" />
    +			<wx w="614" />
    +			<wx w="559" />
    +			<wx w="643" />
    +			<wx w="643" />
    +			<wx w="500" />
    +			<wx w="500" />
    +			<wx w="500" />
    +			<wx w="1049" />
    +			<wx w="1049" />
    +			<wx w="1049" />
    +			<wx w="622" />
    +			<wx w="725" />
    +			<wx w="509" />
    +			<wx w="389" />
    +			<wx w="561" />
    +			<wx w="432" />
    +			<wx w="642" />
    +			<wx w="454" />
    +			<wx w="642" />
    +			<wx w="454" />
    +			<wx w="574" />
    +			<wx w="643" />
    +			<wx w="279" />
    +			<wx w="670" />
    +			<wx w="503" />
    +			<wx w="670" />
    +			<wx w="503" />
    +			<wx w="749" />
    +			<wx w="665" />
    +			<wx w="749" />
    +			<wx w="653" />
    +			<wx w="483" />
    +			<wx w="653" />
    +			<wx w="483" />
    +			<wx w="603" />
    +			<wx w="286" />
    +			<wx w="603" />
    +			<wx w="376" />
    +			<wx w="603" />
    +			<wx w="420" />
    +			<wx w="767" />
    +			<wx w="590" />
    +			<wx w="767" />
    +			<wx w="590" />
    +			<wx w="744" />
    +			<wx w="539" />
    +			<wx w="701" />
    +			<wx w="409" />
    +			<wx w="701" />
    +			<wx w="409" />
    +			<wx w="561" />
    +			<wx w="432" />
    +			<wx w="618" />
    +			<wx w="345" />
    +			<wx w="618" />
    +			<wx w="345" />
    +			<wx w="756" />
    +			<wx w="575" />
    +			<wx w="756" />
    +			<wx w="575" />
    +			<wx w="601" />
    +			<wx w="443" />
    +			<wx w="601" />
    +			<wx w="443" />
    +			<wx w="583" />
    +			<wx w="744" />
    +			<wx w="766" />
    +			<wx w="597" />
    +			<wx w="539" />
    +			<wx w="468" />
    +			<wx w="572" />
    +			<wx w="450" />
    +			<wx w="695" />
    +			<wx w="643" />
    +			<wx w="575" />
    +			<wx w="525" />
    +			<wx w="1204" />
    +			<wx w="887" />
    +			<wx w="572" />
    +			<wx w="644" />
    +			<wx w="321" />
    +			<wx w="517" />
    +			<wx w="817" />
    +			<wx w="323" />
    +			<wx w="604" />
    +			<wx w="354" />
    +			<wx w="354" />
    +			<wx w="604" />
    +			<wx w="354" />
    +			<wx w="670" />
    +			<wx w="503" />
    +			<wx w="642" />
    +			<wx w="454" />
    +			<wx w="642" />
    +			<wx w="454" />
    +			<wx w="653" />
    +			<wx w="483" />
    +			<wx w="653" />
    +			<wx w="483" />
    +			<wx w="653" />
    +			<wx w="483" />
    +			<wx w="725" />
    +			<wx w="509" />
    +			<wx w="725" />
    +			<wx w="509" />
    +			<wx w="725" />
    +			<wx w="509" />
    +			<wx w="814" />
    +			<wx w="582" />
    +			<wx w="814" />
    +			<wx w="582" />
    +			<wx w="389" />
    +			<wx w="292" />
    +			<wx w="389" />
    +			<wx w="292" />
    +			<wx w="389" />
    +			<wx w="292" />
    +			<wx w="389" />
    +			<wx w="292" />
    +			<wx w="517" />
    +			<wx w="291" />
    +			<wx w="694" />
    +			<wx w="535" />
    +			<wx w="544" />
    +			<wx w="603" />
    +			<wx w="286" />
    +			<wx w="767" />
    +			<wx w="590" />
    +			<wx w="767" />
    +			<wx w="578" />
    +			<wx w="744" />
    +			<wx w="539" />
    +			<wx w="744" />
    +			<wx w="539" />
    +			<wx w="701" />
    +			<wx w="409" />
    +			<wx w="561" />
    +			<wx w="432" />
    +			<wx w="618" />
    +			<wx w="345" />
    +			<wx w="756" />
    +			<wx w="575" />
    +			<wx w="756" />
    +			<wx w="575" />
    +			<wx w="756" />
    +			<wx w="575" />
    +			<wx w="756" />
    +			<wx w="575" />
    +			<wx w="975" />
    +			<wx w="737" />
    +			<wx w="615" />
    +			<wx w="492" />
    +			<wx w="299" />
    +			<wx w="670" />
    +			<wx w="503" />
    +			<wx w="970" />
    +			<wx w="736" />
    +			<wx w="744" />
    +			<wx w="539" />
    +			<wx w="312" />
    +			<wx w="975" />
    +			<wx w="737" />
    +			<wx w="975" />
    +			<wx w="737" />
    +			<wx w="975" />
    +			<wx w="737" />
    +			<wx w="615" />
    +			<wx w="492" />
    +			<wx w="195" />
    +			<wx w="643" />
    +			<wx w="622" />
    +			<wx w="615" />
    +			<wx w="1049" />
    +			<wx w="1049" />
    +			<wx w="1049" />
    +			<wx w="1049" />
    +			<wx w="604" />
    +			<wx w="500" />
    +			<wx w="500" />
    +			<wx w="500" />
    +			<wx w="675" />
    +			<wx w="798" />
    +			<wx w="959" />
    +			<wx w="532" />
    +			<wx w="851" />
    +			<wx w="800" />
    +			<wx w="876" />
    +			<wx w="295" />
    +			<wx w="670" />
    +			<wx w="653" />
    +			<wx w="660" />
    +			<wx w="653" />
    +			<wx w="601" />
    +			<wx w="814" />
    +			<wx w="389" />
    +			<wx w="694" />
    +			<wx w="673" />
    +			<wx w="927" />
    +			<wx w="767" />
    +			<wx w="693" />
    +			<wx w="744" />
    +			<wx w="808" />
    +			<wx w="609" />
    +			<wx w="603" />
    +			<wx w="618" />
    +			<wx w="615" />
    +			<wx w="710" />
    +			<wx w="874" />
    +			<wx w="778" />
    +			<wx w="389" />
    +			<wx w="615" />
    +			<wx w="597" />
    +			<wx w="468" />
    +			<wx w="570" />
    +			<wx w="295" />
    +			<wx w="541" />
    +			<wx w="565" />
    +			<wx w="513" />
    +			<wx w="403" />
    +			<wx w="570" />
    +			<wx w="556" />
    +			<wx w="295" />
    +			<wx w="536" />
    +			<wx w="487" />
    +			<wx w="579" />
    +			<wx w="501" />
    +			<wx w="440" />
    +			<wx w="539" />
    +			<wx w="557" />
    +			<wx w="445" />
    +			<wx w="541" />
    +			<wx w="506" />
    +			<wx w="730" />
    +			<wx w="714" />
    +			<wx w="295" />
    +			<wx w="541" />
    +			<wx w="539" />
    +			<wx w="541" />
    +			<wx w="714" />
    +			<wx w="653" />
    +			<wx w="785" />
    +			<wx w="583" />
    +			<wx w="656" />
    +			<wx w="561" />
    +			<wx w="389" />
    +			<wx w="389" />
    +			<wx w="517" />
    +			<wx w="1011" />
    +			<wx w="1065" />
    +			<wx w="839" />
    +			<wx w="694" />
    +			<wx w="656" />
    +			<wx w="810" />
    +			<wx w="670" />
    +			<wx w="651" />
    +			<wx w="653" />
    +			<wx w="583" />
    +			<wx w="722" />
    +			<wx w="653" />
    +			<wx w="984" />
    +			<wx w="609" />
    +			<wx w="818" />
    +			<wx w="818" />
    +			<wx w="694" />
    +			<wx w="756" />
    +			<wx w="927" />
    +			<wx w="814" />
    +			<wx w="744" />
    +			<wx w="808" />
    +			<wx w="609" />
    +			<wx w="642" />
    +			<wx w="618" />
    +			<wx w="656" />
    +			<wx w="766" />
    +			<wx w="710" />
    +			<wx w="808" />
    +			<wx w="748" />
    +			<wx w="1098" />
    +			<wx w="1098" />
    +			<wx w="762" />
    +			<wx w="967" />
    +			<wx w="640" />
    +			<wx w="657" />
    +			<wx w="1065" />
    +			<wx w="696" />
    +			<wx w="503" />
    +			<wx w="540" />
    +			<wx w="518" />
    +			<wx w="439" />
    +			<wx w="559" />
    +			<wx w="483" />
    +			<wx w="787" />
    +			<wx w="473" />
    +			<wx w="612" />
    +			<wx w="612" />
    +			<wx w="551" />
    +			<wx w="581" />
    +			<wx w="715" />
    +			<wx w="608" />
    +			<wx w="539" />
    +			<wx w="601" />
    +			<wx w="571" />
    +			<wx w="454" />
    +			<wx w="470" />
    +			<wx w="492" />
    +			<wx w="752" />
    +			<wx w="504" />
    +			<wx w="602" />
    +			<wx w="572" />
    +			<wx w="863" />
    +			<wx w="864" />
    +			<wx w="577" />
    +			<wx w="757" />
    +			<wx w="497" />
    +			<wx w="486" />
    +			<wx w="789" />
    +			<wx w="547" />
    +			<wx w="483" />
    +			<wx w="570" />
    +			<wx w="439" />
    +			<wx w="486" />
    +			<wx w="432" />
    +			<wx w="292" />
    +			<wx w="292" />
    +			<wx w="291" />
    +			<wx w="773" />
    +			<wx w="797" />
    +			<wx w="582" />
    +			<wx w="551" />
    +			<wx w="492" />
    +			<wx w="603" />
    +			<wx w="576" />
    +			<wx w="430" />
    +			<wx w="856" />
    +			<wx w="1220" />
    +			<wx w="601" />
    +			<wx w="500" />
    +			<wx w="500" />
    +			<wx w="500" />
    +			<wx w="500" />
    +			<wx w="500" />
    +			<wx w="500" />
    +			<wx w="500" />
    +			<wx w="500" />
    +			<wx w="500" />
    +			<wx w="500" />
    +			<wx w="500" />
    +			<wx w="561" />
    +			<wx w="432" />
    +			<wx w="571" />
    +			<wx w="1073" />
    +			<wx w="708" />
    +			<wx w="708" />
    +			<wx w="708" />
    +			<wx w="708" />
    +			<wx w="708" />
    +			<wx w="708" />
    +			<wx w="500" />
    +			<wx w="618" />
    +			<wx w="345" />
    +			<wx w="292" />
    +		</cid-widths>
    +	</multibyte-extras>
    +</font-metrics>
    \ No newline at end of file
    diff --git a/jOOQ-website/src/main/resources/html-page.xsl b/jOOQ-website/src/main/resources/html-page.xsl
    new file mode 100644
    index 00000000000..77e46d1a469
    --- /dev/null
    +++ b/jOOQ-website/src/main/resources/html-page.xsl
    @@ -0,0 +1,82 @@
    +<?xml version="1.0" encoding="UTF-8"?>
    +
    +<xsl:stylesheet version="1.0"
    +	xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
    +
    +	<xsl:import href="src/main/resources/html-util.xsl"/>
    +	
    +	<xsl:output encoding="UTF-8" method="html" omit-xml-declaration="yes" indent="yes"/>
    +
    +	<xsl:variable name="apos">&apos;</xsl:variable>
    +
    +	<!-- Main match -->
    +
    +	<xsl:template match="/">
    +		<xsl:text disable-output-escaping="yes">
    +&lt;?php 
    +// The following content has been XSL transformed from manual.xml using html-page.xsl
    +// Please do not edit this content manually
    +require '../frame.php';
    +function getH1() {
    +    return "The jOOQ User Manual. Single Page";
    +}
    +function getActiveMenu() {
    +	return "manual";
    +}
    +function getSlogan() {
    +	return "The manual is the central reference for most of jOOQ's functionality.";
    +}
    +function printContent() {
    +    global $root;
    +?&gt;
    +</xsl:text>
    +		
    +		<!-- Display the main section's content -->
    +		<xsl:apply-templates select="/manual/section/content"/>
    +		
    +		<!-- Display the overall table of contents -->
    +		<h3>Table of contents</h3>
    +		<xsl:apply-templates select="/manual/section" mode="toc"/>
    +		
    +		<xsl:for-each select="/manual/section//section">
    +			<h1 id="{@id}">
    +				<a name="{@id}"/>
    +				<xsl:apply-templates select="." mode="chapter-number"/>
    +				<xsl:text> </xsl:text>
    +				<xsl:value-of select="title"/>
    +			</h1>
    +			<p>
    +				<xsl:value-of select="slogan"/>
    +			</p>
    +			
    +			<xsl:apply-templates select="content" />
    +		</xsl:for-each>
    +		
    +		<xsl:text disable-output-escaping="yes">
    +&lt;?php 
    +}
    +?&gt;
    +</xsl:text>
    +	</xsl:template>
    +
    +	<!-- matching templates -->
    +	
    +	<xsl:template match="//section" mode="content">
    +		<xsl:value-of select="@id"/>
    +		<br/>
    +	</xsl:template>
    +	
    +	<xsl:template match="section" mode="href">
    +		<xsl:text>#</xsl:text>
    +		<xsl:value-of select="@id"/>
    +	</xsl:template>
    +	
    +	<xsl:template match="section" mode="chapter-number">
    +		<xsl:if test="@id != 'manual'">
    +			<xsl:apply-templates select="../.." mode="chapter-number"/>
    +			
    +			<xsl:value-of select="count(preceding-sibling::section) + 1"/>
    +			<xsl:text>.</xsl:text>
    +		</xsl:if>
    +	</xsl:template>
    +</xsl:stylesheet>
    \ No newline at end of file
    diff --git a/jOOQ-website/src/main/resources/html-pages.xsl b/jOOQ-website/src/main/resources/html-pages.xsl
    new file mode 100644
    index 00000000000..be2030a7983
    --- /dev/null
    +++ b/jOOQ-website/src/main/resources/html-pages.xsl
    @@ -0,0 +1,165 @@
    +<?xml version="1.0" encoding="UTF-8"?>
    +
    +<xsl:stylesheet version="1.0"
    +	xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
    +
    +	<xsl:import href="src/main/resources/html-util.xsl"/>
    +
    +	<xsl:output encoding="UTF-8" method="html" omit-xml-declaration="yes" indent="yes"/>
    +	<xsl:param name="sectionID"/>
    +	<xsl:param name="relativePath"/>
    +
    +	<xsl:variable name="apos">&apos;</xsl:variable>
    +
    +	<!-- Main match -->
    +
    +	<xsl:template match="/">
    +		<xsl:text disable-output-escaping="yes">
    +&lt;?php 
    +// The following content has been XSL transformed from manual.xml using html-pages.xsl
    +// Please do not edit this content manually
    +require '</xsl:text>
    +		<xsl:value-of select="$relativePath"/>
    +<xsl:text disable-output-escaping="yes">frame.php';
    +function getH1() {
    +    return "</xsl:text>
    +	<xsl:value-of select="//section[@id = $sectionID]/title"/>
    +<xsl:text disable-output-escaping="yes">";
    +}
    +function getActiveMenu() {
    +	return "manual";
    +}
    +function getSlogan() {
    +	return "</xsl:text>
    +	<xsl:value-of select="//section[@id = $sectionID]/slogan"/>
    +<xsl:text disable-output-escaping="yes">";
    +}
    +function printContent() {
    +    global $root;
    +?&gt;
    +</xsl:text>
    +		<xsl:apply-templates select="//section[@id = $sectionID]" mode="content"/>
    +		<xsl:text disable-output-escaping="yes">
    +&lt;?php 
    +}
    +?&gt;
    +</xsl:text>
    +	</xsl:template>
    +
    +	<!-- matching templates -->
    +	
    +	<xsl:template match="//section[@id = $sectionID]" mode="content">
    +		<xsl:apply-templates select="." mode="navigation"/>
    +		<xsl:apply-templates select="content"/>
    +		
    +		<xsl:if test="count(sections/section) &gt; 0">
    +			<h3>Table of contents</h3>
    +		</xsl:if>
    +		<xsl:apply-templates select="." mode="toc"/>
    +		
    +		<br/>
    +		<xsl:apply-templates select="." mode="navigation"/>
    +	</xsl:template>
    +	
    +	<xsl:template match="section" mode="navigation">
    +		<table cellpadding="0" cellspacing="0" border="0" width="100%">
    +			<tr>
    +				<td align="left" valign="top">
    +					<xsl:apply-templates select="." mode="breadcrumb"/>
    +				</td>
    +				<td align="right" valign="top" style="white-space: nowrap">
    +					<xsl:apply-templates select="." mode="prev-next"/>
    +				</td>
    +			</tr>
    +		</table>
    +	</xsl:template>
    +	
    +	<xsl:template match="section" mode="breadcrumb">
    +		<xsl:if test="name(../..) = 'section'">
    +			<xsl:apply-templates select="../.." mode="breadcrumb"/>
    +			<xsl:text> : </xsl:text>
    +		</xsl:if>
    +		
    +		<xsl:variable name="href">
    +			<xsl:apply-templates select="." mode="href"/>
    +		</xsl:variable>
    +		
    +		<a href="{$href}">
    +			<xsl:value-of select="title"/>
    +		</a>
    +	</xsl:template>
    +	
    +	<xsl:template match="section" mode="href">
    +		<xsl:choose>
    +			<xsl:when test="name(../..) = 'section'">
    +				<xsl:apply-templates select="../.." mode="href"/>
    +			</xsl:when>
    +			<xsl:otherwise>
    +				<xsl:text>&lt;?=$root?&gt;/</xsl:text>
    +			</xsl:otherwise>
    +		</xsl:choose>
    +
    +		<xsl:value-of select="@id"/>
    +		<xsl:text>/</xsl:text>
    +	</xsl:template>
    +	
    +	<xsl:template match="section" mode="prev-next">
    +		<xsl:variable name="prev" select="(preceding::section | ancestor::section)[last()]"/>
    +		<xsl:variable name="prevhref">
    +			<xsl:apply-templates select="$prev" mode="href"/>
    +		</xsl:variable>
    +		
    +		<xsl:variable name="next" select="(following::section | descendant::section)[1]"/>
    +		<xsl:variable name="nexthref">
    +			<xsl:apply-templates select="$next" mode="href"/>
    +		</xsl:variable>
    +		
    +		<xsl:if test="$prev">
    +			<a href="{$prevhref}" title="Previous section: {$prev/title}">previous</a>
    +		</xsl:if>
    +		
    +		<xsl:if test="$prev and $next">
    +			<xsl:text> : </xsl:text>
    +		</xsl:if>
    +		
    +		<xsl:if test="$next">
    +			<a href="{$nexthref}" title="Next section: {$next/title}">next</a>
    +		</xsl:if>
    +	</xsl:template>
    +	
    +	<xsl:template match="section" mode="prev-id">
    +		<xsl:variable name="id" select="@id"/>
    +		
    +		<xsl:variable name="position">
    +			<xsl:for-each select="//section">
    +				<xsl:if test="@id = $id">
    +					<xsl:value-of select="position()"/>
    +				</xsl:if>
    +			</xsl:for-each>
    +		</xsl:variable>
    +		
    +		<xsl:for-each select="//section">
    +			<xsl:if test="position() = $position - 1">
    +				<xsl:value-of select="@id"/>
    +			</xsl:if>
    +		</xsl:for-each>
    +	</xsl:template>
    +	
    +	<xsl:template match="section" mode="next-id">
    +		<xsl:variable name="id" select="@id"/>
    +		
    +		<xsl:variable name="position">
    +			<xsl:for-each select="//section">
    +				<xsl:if test="@id = $id">
    +					<xsl:value-of select="position()"/>
    +				</xsl:if>
    +			</xsl:for-each>
    +		</xsl:variable>
    +		
    +		<xsl:for-each select="//section">
    +			<xsl:if test="position() = $position + 1">
    +				<xsl:value-of select="@id"/>
    +			</xsl:if>
    +		</xsl:for-each>
    +	</xsl:template>
    +</xsl:stylesheet>
    \ No newline at end of file
    diff --git a/jOOQ-website/src/main/resources/html-util.xsl b/jOOQ-website/src/main/resources/html-util.xsl
    new file mode 100644
    index 00000000000..d47a144d7a6
    --- /dev/null
    +++ b/jOOQ-website/src/main/resources/html-util.xsl
    @@ -0,0 +1,180 @@
    +<?xml version="1.0" encoding="UTF-8"?>
    +
    +<xsl:stylesheet version="1.0"
    +	xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
    +
    +	<xsl:output encoding="UTF-8" method="html" omit-xml-declaration="yes" indent="yes"/>
    +
    +	<xsl:template match="html-only" mode="content">
    +		<xsl:apply-templates mode="content"/>
    +	</xsl:template>
    +
    +	<xsl:template match="section" mode="toc">
    +		<xsl:if test="count(sections/section) &gt; 0">
    +			<ol>
    +				<xsl:for-each select="sections/section">
    +					<li>
    +						<xsl:variable name="href">
    +							<xsl:apply-templates select="." mode="href"/>
    +						</xsl:variable>
    +
    +						<a href="{$href}" title="{title}">
    +							<xsl:value-of select="title"/>
    +						</a>
    +
    +						<xsl:apply-templates select="." mode="toc"/>
    +					</li>
    +				</xsl:for-each>
    +			</ol>
    +		</xsl:if>
    +	</xsl:template>
    +
    +	<xsl:template match="content">
    +		<xsl:apply-templates select="@*|node()" mode="content"/>
    +	</xsl:template>
    +
    +	<xsl:template match="@*|node()" mode="content">
    +		<xsl:choose>
    +			<xsl:when test="name(.) = 'reference'">
    +				<xsl:variable name="id" select="@id"/>
    +
    +				<a>
    +					<xsl:attribute name="href">
    +						<xsl:choose>
    +							<xsl:when test="@id">
    +								<xsl:apply-templates select="//section[@id = $id]" mode="href"/>
    +								<xsl:value-of select="@anchor"/>
    +
    +								<xsl:if test="not(//section[@id = $id])">
    +									<xsl:message>
    +										<xsl:text>Reference not found: </xsl:text>
    +										<xsl:value-of select="$id"/>
    +									</xsl:message>
    +								</xsl:if>
    +							</xsl:when>
    +
    +							<xsl:when test="@class and starts-with(@class, 'org.jooq.test')">
    +								<xsl:text>https://github.com/lukaseder/jOOQ/blob/master/jOOQ-test/src/</xsl:text>
    +								<xsl:value-of select="translate(@class, '.', '/')"/>
    +								<xsl:text>.java</xsl:text>
    +								<xsl:value-of select="@anchor"/>
    +							</xsl:when>
    +
    +							<xsl:when test="@class and starts-with(@class, 'org.jooq.debug')">
    +								<xsl:text>https://github.com/lukaseder/jOOQ/blob/master/jOOQ-console/src/</xsl:text>
    +								<xsl:value-of select="translate(@class, '.', '/')"/>
    +								<xsl:text>.java</xsl:text>
    +								<xsl:value-of select="@anchor"/>
    +							</xsl:when>
    +
    +							<xsl:when test="@class and starts-with(@class, 'org.jooq')">
    +								<xsl:text>http://www.jooq.org/javadoc/latest/</xsl:text>
    +								<xsl:value-of select="translate(@class, '.', '/')"/>
    +								<xsl:text>.html</xsl:text>
    +								<xsl:value-of select="@anchor"/>
    +							</xsl:when>
    +
    +							<xsl:when test="@class and starts-with(@class, 'java')">
    +								<xsl:text>http://download.oracle.com/javase/6/docs/api/</xsl:text>
    +								<xsl:value-of select="translate(@class, '.', '/')"/>
    +								<xsl:text>.html</xsl:text>
    +								<xsl:value-of select="@anchor"/>
    +							</xsl:when>
    +
    +							<xsl:when test="@ticket">
    +								<xsl:text>https://sourceforge.net/apps/trac/jooq/ticket/</xsl:text>
    +								<xsl:value-of select="@ticket"/>
    +								<xsl:value-of select="@anchor"/>
    +							</xsl:when>
    +
    +							<xsl:otherwise>
    +								<xsl:message>
    +									<xsl:text>Reference not supported</xsl:text>
    +								</xsl:message>
    +							</xsl:otherwise>
    +						</xsl:choose>
    +					</xsl:attribute>
    +
    +					<xsl:attribute name="title">
    +						<xsl:choose>
    +							<xsl:when test="@id">
    +								<xsl:text>jOOQ Manual reference: </xsl:text>
    +								<xsl:value-of select="//section[@id = $id]/title"/>
    +							</xsl:when>
    +							<xsl:when test="@class and starts-with(@class, 'org.jooq')">
    +								<xsl:text>Internal API reference: </xsl:text>
    +								<xsl:value-of select="@class"/>
    +							</xsl:when>
    +							<xsl:when test="@class and starts-with(@class, 'java')">
    +								<xsl:text>External API reference: </xsl:text>
    +								<xsl:value-of select="@class"/>
    +							</xsl:when>
    +							<xsl:when test="@ticket">
    +								<xsl:text>Trac ticket: #</xsl:text>
    +								<xsl:value-of select="@ticket"/>
    +							</xsl:when>
    +						</xsl:choose>
    +					</xsl:attribute>
    +
    +					<xsl:choose>
    +						<xsl:when test="@title">
    +							<xsl:value-of select="@title"/>
    +						</xsl:when>
    +						<xsl:when test="@id">
    +							<xsl:value-of select="//section[@id = $id]/title"/>
    +						</xsl:when>
    +						<xsl:when test="@class">
    +							<xsl:value-of select="@class"/>
    +						</xsl:when>
    +						<xsl:when test="@ticket">
    +							<xsl:text>#</xsl:text>
    +							<xsl:value-of select="@ticket"/>
    +						</xsl:when>
    +					</xsl:choose>
    +				</a>
    +			</xsl:when>
    +			<xsl:when test="name(.) = 'java'">
    +				<pre class="prettyprint lang-java">
    +					<xsl:value-of select="text()"/>
    +				</pre>
    +			</xsl:when>
    +			<xsl:when test="name(.) = 'sql'">
    +				<pre class="prettyprint lang-sql">
    +					<xsl:value-of select="text()"/>
    +				</pre>
    +			</xsl:when>
    +			<xsl:when test="name(.) = 'xml'">
    +				<pre class="prettyprint lang-xml">
    +					<xsl:value-of select="text()"/>
    +				</pre>
    +			</xsl:when>
    +			<xsl:when test="name(.) = 'config'">
    +				<pre class="prettyprint">
    +					<xsl:value-of select="text()"/>
    +				</pre>
    +			</xsl:when>
    +			<xsl:when test="name(.) = 'text'">
    +				<pre>
    +					<xsl:value-of select="text()"/>
    +				</pre>
    +			</xsl:when>
    +			<xsl:when test="name(.) = 'code-pair'">
    +				<table width="100%" cellpadding="0" cellspacing="0">
    +				<tr>
    +					<td width="50%" class="left">
    +						<xsl:apply-templates select="sql" mode="content"/>
    +					</td>
    +					<td width="50%" class="right">
    +						<xsl:apply-templates select="java" mode="content"/>
    +					</td>
    +				</tr>
    +				</table>
    +			</xsl:when>
    +			<xsl:otherwise>
    +				<xsl:copy>
    +		            <xsl:apply-templates select="@*|node()" mode="content"/>
    +		        </xsl:copy>
    +			</xsl:otherwise>
    +		</xsl:choose>
    +    </xsl:template>
    +</xsl:stylesheet>
    \ No newline at end of file
    diff --git a/jOOQ-website/src/main/resources/manual.xml b/jOOQ-website/src/main/resources/manual.xml
    new file mode 100644
    index 00000000000..ee3400a6a8b
    --- /dev/null
    +++ b/jOOQ-website/src/main/resources/manual.xml
    @@ -0,0 +1,5171 @@
    +<?xml version="1.0" encoding="UTF-8"?>
    +<manual>
    +	<section id="manual">
    +		<title>The jOOQ User Manual</title>
    +		<slogan>
    +			The manual is the central reference for most of jOOQ's functionality.
    +		</slogan>
    +		<content>
    +			<html-only>
    +				<h3>All manuals</h3>
    +				<ul>
    +					<li><a href="&lt;?=$root?&gt;/manual-single-page" title="The jOOQ Manual on one single page">A single-paged HTML manual</a></li>
    +					<li><a href="&lt;?=$root?&gt;/manual" title="The jOOQ Manual on multiple pages">A multi-paged HTML manual</a></li>
    +					<li><a href="&lt;?=$root?&gt;/manual-pdf/jOOQ-manual.pdf" title="The jOOQ Manual as a PDF">A downloadable PDF manual</a></li>
    +				</ul>
    +			</html-only>
    +			<h3>Overview</h3>
    +			<p>This manual is divided into four main sections:</p>
    +			<ul>
    +				<li>
    +					<reference id="JOOQ"/>
    +					<p>
    +						See these chapters for an overview of the jOOQ internal architecture
    +						and all types that are involved with jOOQ's query creation and
    +						execution. This is the important part for you, also, if you wish to
    +						extend jOOQ
    +					</p>
    +				</li>
    +				<li>
    +					<reference id="META"/>
    +					<p>
    +						See these chapters to understand how you can use jOOQ as a source code
    +						generator, and what type of artefacts are generated by jOOQ
    +					</p>
    +				</li>
    +				<li>
    +					<reference id="DSL"/>
    +					<p>
    +						See these chapters to learn about how to use jOOQ in every day's work. The
    +						jOOQ DSL is the main way to create and execute jOOQ queries almost as
    +						if SQL was embedded in Java directly
    +					</p>
    +				</li>
    +				<li>
    +					<reference id="ADVANCED"/>
    +					<p>
    +						Some advanced topics including not-everyday functionality
    +					</p>
    +				</li>
    +			</ul>
    +		</content>
    +
    +
    +		<sections>
    +			<section id="JOOQ">
    +				<title>jOOQ classes and their usage</title>
    +				<slogan>
    +					In these sections, you will learn about how to use jOOQ object
    +					factories and the jOOQ query model, to express
    +					your SQL in jOOQ
    +				</slogan>
    +				<content>
    +					<h2>Overview</h2>
    +					<p>jOOQ essentially has two packages:</p>
    +					<ul>
    +						<li>org.jooq: the jOOQ API. Here you will find interfaces for all
    +							SQL concepts
    +						</li>
    +						<li>org.jooq.impl: the jOOQ implementation and factories. Most
    +							implementation classes are package private, you can only access
    +							them using the <reference id="Factory" title="org.jooq.impl.Factory"/>
    +						</li>
    +					</ul>
    +					<p>
    +						This section is about the main jOOQ classes and the global
    +						architecture. Most of the time, however, you will be using the
    +						<reference id="DSL" />
    +						in order to create queries
    +						the way you're used to in SQL
    +					</p>
    +				</content>
    +
    +
    +				<sections>
    +					<section id="ExampleDatabase">
    +						<title>The example database</title>
    +						<slogan>
    +							For the examples in this manual, the same database will always be
    +							referred to. It essentially consists of these entities created using
    +							the Oracle dialect
    +						</slogan>
    +						<content>
    +							<h2>Example CREATE TABLE statements</h2>
    +<sql>CREATE TABLE t_language (
    +  id NUMBER(7) NOT NULL PRIMARY KEY,
    +  cd CHAR(2) NOT NULL,
    +  description VARCHAR2(50)
    +)
    +
    +CREATE TABLE t_author (
    +  id NUMBER(7) NOT NULL PRIMARY KEY,
    +  first_name VARCHAR2(50),
    +  last_name VARCHAR2(50) NOT NULL,
    +  date_of_birth DATE,
    +  year_of_birth NUMBER(7)
    +)
    +
    +CREATE TABLE t_book (
    +  id NUMBER(7) NOT NULL PRIMARY KEY,
    +  author_id NUMBER(7) NOT NULL,
    +  title VARCHAR2(400) NOT NULL,
    +  published_in NUMBER(7) NOT NULL,
    +  language_id NUMBER(7) NOT NULL,
    +  FOREIGN KEY (AUTHOR_ID) REFERENCES T_AUTHOR(ID),
    +  FOREIGN KEY (LANGUAGE_ID) REFERENCES T_LANGUAGE(ID)
    +)
    +
    +CREATE TABLE t_book_store (
    +  name VARCHAR2(400) NOT NULL UNIQUE
    +)
    +
    +CREATE TABLE t_book_to_book_store (
    +  book_store_name VARCHAR2(400) NOT NULL,
    +  book_id INTEGER NOT NULL,
    +  stock INTEGER,
    +  PRIMARY KEY(book_store_name, book_id),
    +  CONSTRAINT b2bs_book_store_id
    +    FOREIGN KEY (book_store_name)
    +    REFERENCES t_book_store (name)
    +    ON DELETE CASCADE,
    +  CONSTRAINT b2bs_book_id
    +    FOREIGN KEY (book_id)
    +    REFERENCES t_book (id)
    +    ON DELETE CASCADE
    +)</sql>
    +							<p>
    +								More entities, types (e.g. UDT's, ARRAY types, ENUM types, etc),
    +								stored procedures and packages are introduced for specific examples
    +							</p>
    +						</content>
    +					</section>
    +
    +
    +					<section id="Factory">
    +						<title>The Factory class</title>
    +						<slogan>
    +							jOOQ hides most implementation facts from you by letting you
    +							use the jOOQ Factory as a single entry point to all of the jOOQ API.
    +							This way, you can discover all of the API using syntax auto-completion, for
    +							instance.
    +						</slogan>
    +						<content>
    +							<h2>The Factory and the jOOQ API</h2>
    +							<p>
    +								jOOQ exposes a lot of interfaces and hides most implementation facts
    +								from client code. The reasons for this are:
    +							</p>
    +							<ul>
    +								<li>Interface-driven design. This allows for modelling queries in a fluent API most efficiently</li>
    +								<li>Reduction of complexity for client code.</li>
    +								<li>API guarantee. You only depend on the exposed interfaces, not concrete (potentially dialect-specific) implementations.</li>
    +							</ul>
    +							<p>
    +								The <reference class="org.jooq.impl.Factory"/>
    +								class is the main class from where you will create all jOOQ objects.
    +								The Factory implements <reference class="org.jooq.Configuration"/>
    +								and needs to be instanciated with the Configuration's properties:
    +							</p>
    +							<ul>
    +								<li><reference class="org.jooq.SQLDialect"/> :
    +								The dialect of your database. This may be any of the currently
    +								supported database types</li>
    +								<li><reference class="java.sql.Connection"/> :
    +								A JDBC Connection that will be re-used for the whole
    +    							lifecycle of your Factory</li>
    +    							<li><reference class="org.jooq.conf.Settings"/> :
    +    							An optional runtime configuration.</li>
    +							</ul>
    +							<p>If you are planning on using several RDBMS (= SQLDialects) or
    +								several distinct JDBC Connections in your software, this will mean
    +								that you have to create a new Factory every time. </p>
    +
    +							<h3>Factory settings</h3>
    +							<p>
    +								The jOOQ Factory allows for some optional configuration elements to be used by advanced users.
    +								The <reference class="org.jooq.conf.Settings" title="Settings"/> class is a JAXB-annotated
    +								type, that can be provided to a Factory in several ways:
    +							</p>
    +							<ul>
    +								<li>In the constructor. This will override default settings below</li>
    +								<li>From a location specified by a JVM parameter: -Dorg.jooq.settings</li>
    +								<li>From the classpath at /jooq-settings.xml</li>
    +								<li>From the settings defaults, as specified in
    +								    <a href="http://www.jooq.org/xsd/jooq-runtime-2.1.0.xsd" title="The jOOQ Runtime configuration XSD">http://www.jooq.org/xsd/jooq-runtime-2.1.0.xsd</a>
    +								</li>
    +							</ul>
    +							<p>
    +								Subsequent sections of the manual contain some more in-depth explanations about these settings:
    +							</p>
    +							<ul>
    +								<li>
    +     								<reference id="SchemaMapping" title="Runtime schema and table mapping"/>
    +   								</li>
    +     							<li>
    +     								<reference id="ExecuteListener" title="Execute listeners and SQL tracing"/>
    +     							</li>
    +   							</ul>
    +							<p>
    +								Please refer to the jOOQ runtime configuration XSD for more details:<br/>
    +								<a href="http://www.jooq.org/xsd/jooq-runtime-2.1.0.xsd" title="The jOOQ Runtime configuration XSD">http://www.jooq.org/xsd/jooq-runtime-2.1.0.xsd</a>
    +							</p>
    +
    +							<h3>Factory subclasses</h3>
    +							<p>
    +								There are a couple of subclasses for the general Factory. Each SQL
    +								dialect has its own dialect-specific factory. For instance, if you're
    +								only using the MySQL dialect, you can choose to create a new Factory
    +								using any of the following types:
    +							</p>
    +<java>// A general, dialect-unspecific factory
    +Factory create = new Factory(connection, SQLDialect.MYSQL);
    +
    +// A MySQL-specific factory
    +MySQLFactory create = new MySQLFactory(connection);</java>
    +							<p>
    +								The advantage of using a dialect-specific Factory lies in the fact,
    +								that you have access to more proprietary RDMBS functionality. This may
    +								include:
    +							</p>
    +							<ul>
    +								<li>Oracle's <reference id="CONNECTBY" title="CONNECT BY"/>
    +								    pseudo columns and functions</li>
    +    							<li>MySQL's encryption functions</li>
    +    							<li>PL/SQL constructs, pgplsql, or any other dialect's ROUTINE-language (maybe in the future)</li>
    +							</ul>
    +							<p>
    +								Another type of Factory subclasses are each generated schema's
    +								factories. If you generate your schema TEST, then you will have access
    +								to a TestFactory. This will be useful in the future, when access to
    +								schema artefacts will be unified. Currently, this has no use.
    +							</p>
    +
    +							<h3>Static Factory methods</h3>
    +							<p>
    +								With jOOQ 2.0, static factory methods have been introduced in order to
    +								make your code look more like SQL. Ideally, when working with jOOQ, you
    +								will simply static import all methods from the Factory class:
    +							</p>
    +							<java>import static org.jooq.impl.Factory.*;</java>
    +							<p>
    +								This will allow to access functions even more fluently:
    +							</p>
    +
    +<java>concat(trim(FIRST_NAME), trim(LAST_NAME));
    +// ... which is in fact the same as:
    +Factory.concat(Factory.trim(FIRST_NAME), Factory.trim(LAST_NAME));</java>
    +							<p>
    +								Objects created statically from the Factory do not need a reference to
    +								any factory, as they can be constructed independently from your Configuration
    +								(connection, dialect, schema mapping). They will access that information at
    +								render / bind time. See
    +								<reference id="QueryPart" title="more details on the QueryParts' internals"/>
    +							</p>
    +
    +							<h3>Potential problems</h3>
    +							<p>
    +								The jOOQ Factory expects its underlying
    +								<reference class="java.sql.Connection" />
    +								to be <strong>open and ready</strong>
    +								for
    +								<reference class="java.sql.PreparedStatement" />
    +								creation. You are responsible yourself for the
    +								lifecycle dependency between Factory and Connection. This means:
    +							</p>
    +							<ul>
    +								<li>jOOQ will never close the Connection.</li>
    +								<li>jOOQ will never commit or rollback on the Connection
    +									(Except for CSV-imports, if explicitly configured in the <reference id="Import" title="Import API"/>)</li>
    +								<li>jOOQ will never start any transactions.</li>
    +								<li>
    +									jOOQ does not know the concept of a session as for instance
    +									<a href="http://docs.jboss.org/hibernate/core/3.6/reference/en-US/html/architecture.html#architecture-current-session">Hibernate</a>
    +								</li>
    +								<li>jOOQ does not know the concept of a second-level cache. SQL is
    +									executed directly on the underlying RDBMS.</li>
    +								<li>jOOQ does not make assumptions about the origin of the Connection.
    +									If it is container managed, that is fine.</li>
    +							</ul>
    +							<p>
    +								So if you want your queries to run in separate transactions, if you
    +								want to roll back a transaction, if you want to close a Connection and
    +								return it to your container, you will have to take care of that
    +								yourself. jOOQ's Factory will always expect its Connection to be in a
    +								ready state for creating new PreparedStatements. If it is not, you have
    +								to create a new Factory.
    +							</p>
    +							<p>
    +								Please keep in mind that many jOOQ objects will reference your Factory
    +								for their whole lifecycle. This is especially interesting, when dealing
    +								with <reference id="UpdatableRecord" title="Updatable Records"/>,
    +								that can perform CRUD operations on the
    +								Factory's underlying Connection.
    +							</p>
    +						</content>
    +					</section>
    +
    +
    +					<section id="Table">
    +						<title>Tables and Fields</title>
    +						<slogan>
    +							Tables and their Fields are probably the most important objects in
    +							jOOQ. Tables represent any entity in your underlying RDBMS, that holds
    +							data for selection, insertion, updates, and deletion. In other words,
    +							views are also considered tables by jOOQ.
    +						</slogan>
    +						<content>
    +							<h2>The Table</h2>
    +							<p>The formal definition of a <reference class="org.jooq.Table"/> starts with </p>
    +							<java>public interface Table&lt;R extends Record&gt; // [...]</java>
    +							<p>
    +								This means that every table is associated with a subtype of the
    +								<reference class="org.jooq.Record" />
    +								class (see also
    +								<reference id="Result" title="Results and Records" />
    +								). For anonymous or ad-hoc tables,
    +								&lt;R&gt; will always bind to Record itself.
    +							</p>
    +							<p>
    +								Unlike in the
    +								<a href="http://download.oracle.com/javaee/6/tutorial/doc/gjitv.html"
    +									title="Tutorial about JPA CriteriaQuery">JPA CriteriaQuery API</a>,
    +								this generic type
    +								&lt;R&gt;
    +								is not given so much importance as far as
    +								type-safety is concerned.
    +								SQL itself is highly typesafe. You have
    +								incredible flexibility of creating anonymous or ad-hoc
    +								types and
    +								reusing them from
    +								<reference id="NESTED" title="NESTED SELECT statements" />
    +								or from many other
    +								use-cases. There is no way that this typesafety can be
    +								mapped to the Java world in a convenient way. If
    +								&lt;R&gt; would play a role as important
    +								as in JPA, jOOQ would suffer from the same verbosity, or inflexibility
    +								that JPA CriteriaQueries may have.
    +							</p>
    +
    +							<h2>The Field</h2>
    +							<p>The formal definition of a Field starts with </p>
    +							<java>public interface Field&lt;T&gt; // [...]</java>
    +							<p>
    +								Fields are generically parameterised with a Java type
    +								&lt;T&gt;
    +								that reflects the closest match to the RDMBS's underlying datatype for that
    +								field. For instance, if you have a VARCHAR2 type Field in Oracle,
    +								&lt;T&gt;
    +								would bind to
    +								<reference class="java.lang.String" />
    +								for that Field in jOOQ. Oracle's NUMBER(7) would
    +								let
    +								&lt;T&gt;
    +								bind to
    +								<reference class="java.lang.Integer" />,
    +								etc. This generic type is useful for two purposes:
    +							</p>
    +							<ul>
    +								<li>It allows you to write type safe queries. For instance, you cannot
    +									compare Field
    +									&lt;String&gt;
    +									with Field
    +									&lt;Integer&gt;</li>
    +
    +								<li>It
    +									allows you to fetch correctly cast and converted values from
    +									your database result set. This is especially useful when &lt;T&gt; binds
    +									to
    +									advanced data types, such as
    +									<reference id="UDT" title="UDT's, ARRAY or ENUM types" />
    +									, where jOOQ
    +									does the difficult non-standardised JDBC data type conversions for you.
    +								</li>
    +							</ul>
    +
    +							<h2>Fields and tables put into action</h2>
    +							<p>The Field itself is a very broad concept. Other tools, or databases
    +								refer to it as expression or column. When you just want to </p>
    +
    +							<sql>SELECT 1 FROM DUAL</sql>
    +							<p>
    +								Then 1 is considered a Field or more explicitly, a
    +								<reference class="org.jooq.impl.Constant" />,
    +								which implements Field, and DUAL is considered a Table or more explicitly
    +								<reference class="org.jooq.impl.Dual"/>, which implements Table
    +							</p>
    +							<p>
    +								More advanced uses become clear quickly, when you do things like
    +							</p>
    +							<sql>SELECT 1 + 1 FROM DUAL</sql>
    +							<p>
    +								Where 1 + 1 itself is a Field or more explicitly, an
    +								<reference class="org.jooq.impl.Expression"/>
    +								joining two Constants together.
    +							</p>
    +							<p>
    +								See some details about how to create these queries in the
    +								<reference id="Query" title="Query section"/> of the manual
    +							</p>
    +
    +							<h2>TableFields</h2>
    +							<p>
    +								A specific type of field is the
    +								<reference class="org.jooq.TableField" />,
    +								which represents a physical
    +								Field in a physical Table. Both the
    +								TableField and its referenced Table
    +								know each other. The physical aspect
    +								of their nature is represented in
    +								jOOQ by
    +								<reference id="TABLE" title="meta model code generation" />,
    +								where every entity in your database
    +								schema will be generated into a
    +								corresponding Java class.
    +							</p>
    +							<p>
    +								TableFields join both &lt;R&gt; and &lt;T&gt; generic parameters into their specification:
    +							</p>
    +							<java>public interface TableField&lt;R extends Record, T&gt; // [...]</java>
    +							<p>
    +								This can be used for additional type safety in the future, or by client code.
    +							</p>
    +						</content>
    +					</section>
    +
    +
    +					<section id="Result">
    +						<title>Results and Records</title>
    +						<slogan>
    +							Results and their Records come into play, when SELECT statements are
    +							executed. There are various ways to fetch data from a jOOQ SELECT
    +							statement. Essentially, the query results are always provided in the
    +							Result API
    +						</slogan>
    +						<content>
    +							<h2>The Result</h2>
    +							<p>
    +								The
    +								<reference class="org.jooq.Result" title="Result" />&lt;R extends <reference class="org.jooq.Record" title="Record" />&gt;
    +								is essentially a wrapper for a List&lt;R extends Record&gt;
    +								providing
    +								many convenience methods for accessing single elements in
    +								the result
    +								set. Depending on the type of SELECT statement,
    +								&lt;R&gt; can be bound
    +								to a sub-type of Record, for instance to an
    +								<reference class="org.jooq.UpdatableRecord" />.
    +								See the section on
    +								<reference id="UpdatableRecord" title="Updatable Records" />
    +								for further details.
    +							</p>
    +
    +							<h2>The Cursor</h2>
    +							<p>
    +								A similar object is the
    +								<reference class="org.jooq.Cursor" title="Cursor"/>&lt;R extends Record&gt;.
    +								Unlike the Result, the cursor has not fetched all data from the database yet.
    +								This means, you save memory (and potentially speed), but you can only access
    +								data sequentially and you have to keep a JDBC ResultSet alive. Cursors behave
    +								very much like the <reference class="java.util.Iterator"/>,
    +								by providing a very simple API. Some sample methods are:
    +							</p>
    +<java>// Check whether there are any more records to be fetched
    +boolean hasNext() throws SQLException;
    +
    +// Fetch the next record from the underlying JDBC ResultSet
    +R fetchOne() throws SQLException;
    +
    +// Close the underlying JDBC ResultSet. Don't forget to call this, before disposing the Cursor.
    +void close() throws SQLException;</java>
    +
    +							<h2>The Record</h2>
    +							<p>
    +								The Record itself holds all the data from your selected tuple. If it is
    +								a <reference class="org.jooq.TableRecord"/>, then it corresponds exactly to the type of one of your
    +								physical tables in your database. But any anonymous or ad-hoc tuple can
    +								be represented by the plain Record. A record mainly provides access to
    +								its data and adds convenience methods for data type conversion. These
    +								are the main access ways:
    +							</p>
    +<java>// If you can keep a reference of the selected field, then you can get the corresponding value type-safely
    +&lt;T&gt; T getValue(Field&lt;T&gt; field);
    +
    +// If you know the name of the selected field within the tuple,
    +// then you can get its value without any type information
    +Object getValue(String fieldName);
    +
    +// If you know the index of the selected field within the tuple,
    +// then you can get its value without any type information
    +Object getValue(int index);</java>
    +							<p>
    +								In some cases, you will not be able to reference the selected Fields
    +								both when you create the SELECT statement and when you fetch data from
    +								Records. Then you might use field names or indexes, as with JDBC.
    +								However, of course, the type information will then be lost as well. If
    +								you know what type you want to get, you can always use the Record's
    +								convenience methods for type conversion, however. Some examples:
    +							</p>
    +<java>// These methods will try to convert a value to a BigDecimal.
    +// This will work for all numeric types and for CHAR/VARCHAR types, if they contain numeric values:
    +BigDecimal getValueAsBigDecimal(String fieldName);
    +BigDecimal getValueAsBigDecimal(int fieldIndex);
    +
    +// This method can perform arbitrary conversions
    +&lt;T&gt; T getValue(String fieldName, Class&lt;? extends T&gt; type);
    +&lt;T&gt; T getValue(int fieldIndex, Class&lt;? extends T&gt; type);</java>
    +
    +							<p>
    +								For more information about the type conversions that are supported by
    +								jOOQ, read the Javadoc on
    +								<reference class="org.jooq.tools.Convert"/>
    +							</p>
    +						</content>
    +					</section>
    +
    +
    +					<section id="UpdatableRecord">
    +						<title>Updatable Records</title>
    +						<slogan>
    +							UpdatableRecords are a specific subtype of TableRecord that have
    +							primary key information associated with them.
    +						</slogan>
    +						<content>
    +							<h2>CRUD Operations</h2>
    +							<p>As of jOOQ 1.5, the UpdatableRecord essentially contains three additional
    +							 methods <a href="http://de.wikipedia.org/wiki/CRUD">CRUD</a>
    +							 (Create Read Update Delete) operations: </p>
    +<java>// Store any changes made to this record to the database.
    +// The record executes an INSERT if the PRIMARY KEY is NULL or has been changed. Otherwise, an UPDATE is performed.
    +int store();
    +
    +// Deletes the record from the database.
    +int delete();
    +
    +// Reflects changes made in the database to this Record
    +void refresh();</java>
    +							<p>An example lifecycle of a book can be implemented as such:</p>
    +<java>// Create a new record and insert it into the database
    +TBookRecord book = create.newRecord(T_BOOK);
    +book.setTitle("My first book");
    +book.store();
    +
    +// Update it with new values
    +book.setPublishedIn(2010);
    +book.store();
    +
    +// Delete it
    +book.delete();</java>
    +							<p>These operations are very simple utilities. They do not
    +							reflect the functionality offered by <a href="http://www.hibernate.org/">Hibernate</a>
    +							or other persistence managers. </p>
    +
    +							<h2>Performing CRUD on non-updatable records</h2>
    +							<p>
    +								If the jOOQ code-generator cannot detect any PRIMARY KEY, or UNIQUE KEY
    +								on your tables, then the generated artefacts implement TableRecord,
    +								instead of UpdatableRecord. A TableRecord can perform the same CRUD
    +								operations as we have seen before, if you provide it with the necessary
    +								key fields. The API looks like this:
    +							</p>
    +
    +<java>// INSERT or UPDATE the record using the provided keys
    +int storeUsing(TableField&lt;R, ?&gt;... keys)
    +
    +// DELETE a record using the provided keys
    +int deleteUsing(TableField&lt;R, ?&gt;... keys);
    +
    +// Reflects changes made in the database to this Record
    +void refreshUsing(TableField&lt;R, ?&gt;... keys);</java>
    +
    +							<p>
    +								This is useful if your RDBMS does not support referential constraints (e.g. MySQL's
    +								<a href="http://en.wikipedia.org/wiki/MyISAM">MyISAM</a>), or if you want to
    +								store records to an unconstrained view. An example lifecycle of a book without
    +								any keys can then be implemented as such:
    +							</p>
    +<java>// Create a new record and insert it into the database
    +TBookRecord book = create.newRecord(T_BOOK);
    +book.setTitle("My first book");
    +book.storeUsing(TBook.ID);
    +
    +// Update it with new values
    +book.setPublishedIn(2010);
    +book.storeUsing(TBook.ID);
    +
    +// Delete it
    +book.deleteUsing(TBook.ID);</java>
    +						</content>
    +					</section>
    +
    +
    +					<section id="Query">
    +						<title>The Query and its various subtypes</title>
    +						<slogan>
    +							The Query type hierarchy is what you use to execute queries. It has the
    +							following subtypes for each kind of operation
    +						</slogan>
    +						<content>
    +							<h2>SELECT statements</h2>
    +							<p>
    +								There are essentially two ways of creating SELECT statements in jOOQ.
    +								For historical reasons, you can create
    +								<reference class="org.jooq.SimpleSelectQuery"/> or
    +								<reference class="org.jooq.SelectQuery"/>
    +								objects and add additional query clauses, such as
    +								<reference class="org.jooq.Condition" title="Conditions"/> or
    +								<reference class="org.jooq.SortField" title="SortFields"/> to it.
    +								Since jOOQ 1.3, there is also the possibility to
    +								create SELECT statements using jOOQ's
    +								<reference id="DSL" title="DSL API"/> in a much more intuitive
    +								and SQL-like way.
    +							</p>
    +							<p>Use the DSL API when: </p>
    +							<ul>
    +								<li>You want your code to look like SQL</li>
    +								<li>You want your IDE to help you with auto-completion (you will not be able to write select .. order by .. where .. join or any of that stuff) </li>
    +							</ul>
    +							<p>Use the regular API when: </p>
    +							<ul>
    +								<li>You want to create your query step-by-step, creating query parts one-by-one</li>
    +							    <li>You need to assemble your query from various places, passing the query around, adding new conditions and joins on the way </li>
    +							</ul>
    +							<p>In any case, all API's will construct the same underlying
    +								implementation object, and in many cases, you can combine the two
    +								approaches. Let's check out the various SELECT statement types: </p>
    +
    +							<ul>
    +								<li><reference class="org.jooq.Select"/>:
    +								    This Query subtype stands for a general type of SELECT statement.
    +								    It is also the main Select type for the
    +								    <reference id="DSL" title="DSL API"/>. When executed, this object
    +								    will hold a <reference id="Result" title="Result containing the resulting Records"/>.
    +								    This type is further subtyped for the various uses of a SELECT statement as such:</li>
    +								<li><reference class="org.jooq.SimpleSelectQuery"/>:
    +									This Query will allow for selecting from single physical Tables only.
    +									It therefore has access to the Table's generic type parameter
    +									&lt;R extends Record&gt; and will provide a matching Result&lt;R&gt;.
    +									This is especially useful if &lt;R&gt; is a subtype of
    +									<reference id="UpdatableRecord" title="UpdatableRecord"/>.
    +									Then you will be able to perform updates on your result set immediately.</li>
    +								<li><reference class="org.jooq.SelectQuery"/>:
    +									This Query will allow for selecting a subset of Fields from several
    +									Tables. Because the results of such a query are considered of an anonymous
    +									or ad-hoc type, this Query will bind &lt;R&gt; to the general type Record
    +									itself. The purpose of this Query type is to allow for full SQL support,
    +									including SELECT, JOIN and GROUP BY clauses. </li>
    +							</ul>
    +
    +							<h3>Example: SQL query and DSL query</h3>
    +							<code-pair>
    +<sql>-- Select all books by authors born after 1920, named "Paulo"
    +-- from a catalogue consisting of authors and books:
    +
    +
    +SELECT *
    +  FROM t_author
    +  JOIN t_book
    +    ON t_author.id = t_book.author_id
    + WHERE t_author.year_of_birth &gt; 1920
    +   AND t_author.first_name = 'Paulo'
    + ORDER BY t_book.title</sql>
    +<java>// Instanciate your factory using a JDBC connection.
    +Factory create = new Factory(connection, SQLDialect.ORACLE);
    +
    +// Execute the query "on a single line"
    +Result&lt;Record&gt; result = create.select()
    +    .from(T_AUTHOR)
    +    .join(T_BOOK)
    +    .on(T_AUTHOR.ID.equal(T_BOOK.AUTHOR_ID))
    +    .where(T_AUTHOR.YEAR_OF_BIRTH.greaterThan(1920)
    +    .and(T_AUTHOR.FIRST_NAME.equal("Paulo")))
    +    .orderBy(T_BOOK.TITLE).fetch();</java>
    +    						</code-pair>
    +
    +							<p>
    +								In the above example, some generated artefacts are used for querying.
    +								In this case, T_AUTHOR and T_BOOK are instances of types
    +								<reference class="org.jooq.test.oracle.generatedclasses.tables.TAuthor" title="TAuthor"/> and
    +								<reference class="org.jooq.test.oracle.generatedclasses.tables.TBook" title="TBook"/> respectively.
    +								Their full qualification would read TAuthor.T_AUTHOR and TBook.T_BOOK, but in many cases,
    +								it's useful to static import elements involved with queries, in order to decrease verbosity:
    +								<java>import static com.example.jooq.Tables.*;</java>
    +							</p>
    +
    +							<p>
    +								Apart from the singleton Table instances TAuthor.T_AUTHOR and
    +								TBook.T_BOOK, these generated classes also contain one member
    +								for every physical field, such as TAuthor.ID or TBook.TAUTHOR_ID, etc.
    +								Depending on your configuration, those members can be static members
    +								(better for static imports) or instance members (better for aliasing)
    +							</p>
    +
    +							<ul>
    +								<li>For more information about code generation, check out the manual's section about
    +									<reference id="META" title="Meta model source code generation"/>.</li>
    +    							<li>For more DSL examples, please consider the manual's section about the
    +    								<reference id="DSL" title="DSL API"/>.</li>
    +							</ul>
    +
    +							<h3>Example: Non-DSL query</h3>
    +							<p>
    +								If you choose not to use the DSL API (for instance, because you don't
    +								want to add Query parts in the order SQL expects them), you can use
    +								this syntax:
    +							</p>
    +<java>// Re-use the factory to create a SelectQuery. This example will not make use of static imports...
    +SelectQuery q = create.selectQuery();
    +q.addFrom(T_AUTHOR);
    +
    +// This example shows some "mixed" API usage, where the JOIN is added with the standard API, and the
    +// Condition is created using the DSL API
    +q.addJoin(T_BOOK, T_AUTHOR.ID.equal(T_BOOK.AUTHOR_ID));
    +
    +// The AND operator between Conditions is implicit here
    +q.addConditions(T_AUTHOR.YEAR_OF_BIRTH.greaterThan(1920));
    +q.addConditions(T_AUTHOR.FIRST_NAME.equal("Paulo"));
    +q.addOrderBy(T_BOOK.TITLE);</java>
    +
    +							<h3>Fetching data</h3>
    +							<p>
    +								The <reference class="org.jooq.Select"/> interface extends
    +								<reference class="org.jooq.ResultQuery"/>,
    +								which provides a range of methods to fetch data from the database.
    +								Once you have constructed your SELECT query (see examples above), you
    +								may choose to either simply execute() it, or use a variety of convenience
    +								fetchXXX() methods.
    +							</p>
    +							<p>
    +								See the manual's
    +								<reference id="ResultQuery" title="section on the ResultQuery"/>
    +								for more details.
    +							</p>
    +
    +
    +							<h2>INSERT Statements</h2>
    +							<p>jOOQ supports two modes for INSERT statements.
    +							The INSERT VALUES and the INSERT SELECT syntax</p>
    +
    +							<h3>Example: SQL query and DSL query</h3>
    +							<code-pair>
    +<sql>INSERT INTO T_AUTHOR
    +    (ID, FIRST_NAME, LAST_NAME)
    +VALUES
    +    (100, 'Hermann', 'Hesse'),
    +    (101, 'Alfred', 'Döblin');</sql>
    +<java>create.insertInto(T_AUTHOR,
    +        T_AUTHOR.ID, T_AUTHOR.FIRST_NAME, T_AUTHOR.LAST_NAME)
    +      .values(100, "Hermann", "Hesse")
    +      .values(101, "Alfred", "Döblin")
    +      .execute();</java></code-pair>
    +
    +							<p>The DSL syntax tries to stay close to actual SQL. In detail,
    +								however, Java is limited in its possibilities. That's why the
    +								.values() clause is repeated for every record in multi-record inserts.
    +								Some RDBMS support
    +								inserting several records at the same time. This is also supported in
    +								jOOQ, and simulated using UNION clauses for those RDBMS that don't
    +								support this syntax.
    +								<sql>INSERT INTO .. SELECT .. UNION ALL SELECT ..</sql>
    +							</p>
    +							<p>Note: Just like in SQL itself, you can have syntax errors when you
    +								don't have matching numbers of fields/values. Also, you can run into
    +								runtime problems, if your field/value types don't match. </p>
    +
    +							<h3>Example: DSL Query, alternative syntax</h3>
    +							<p>MySQL (and some other RDBMS) allow for using an UPDATE-like syntax
    +								for INSERT statements. This is also supported in jOOQ, should you
    +								prefer that syntax. The above INSERT statement can also be expressed
    +								as follows: </p>
    +<java>create.insertInto(T_AUTHOR)
    +      .set(T_AUTHOR.ID, 100)
    +      .set(T_AUTHOR.FIRST_NAME, "Hermann")
    +      .set(T_AUTHOR.LAST_NAME, "Hesse")
    +      .newRecord()
    +      .set(T_AUTHOR.ID, 101)
    +      .set(T_AUTHOR.FIRST_NAME, "Alfred")
    +      .set(T_AUTHOR.LAST_NAME, "Döblin")
    +      .execute();</java>
    +							<p>As you can see, this syntax is a bit more verbose, but also more
    +								type-safe, as every field can be matched with its value.</p>
    +
    +							<h3>Example: ON DUPLICATE KEY UPDATE clause</h3>
    +							<p>The MySQL database supports a very convenient way to INSERT or
    +								UPDATE a record. This is a non-standard extension to the SQL syntax,
    +								which is supported by jOOQ and simulated in other RDBMS, where this is
    +								possible. Here is an example how to use the ON DUPLICATE KEY UPDATE
    +								clause: </p>
    +<java>// Add a new author called "Koontz" with ID 3.
    +// If that ID is already present, update the author's name
    +create.insertInto(T_AUTHOR, T_AUTHOR.ID, T_AUTHOR.LAST_NAME)
    +      .values(3, "Koontz")
    +      .onDuplicateKeyUpdate()
    +      .set(T_AUTHOR.LAST_NAME, "Koontz")
    +      .execute();</java>
    +
    +      						<h3>Example: INSERT .. RETURNING clause</h3>
    +							<p>The Postgres database has native support for an INSERT .. RETURNING
    +								clause. This is a very powerful concept that is simulated for all
    +								other dialects using JDBC's
    +								<reference class="java.sql.Statement" anchor="#getGeneratedKeys()" title="getGeneratedKeys()"/>
    +								method. Take this example:</p>
    +
    +<java>// Add another author, with a generated ID
    +Record&lt;?&gt; record =
    +create.insertInto(T_AUTHOR, T_AUTHOR.FIRST_NAME, T_AUTHOR.LAST_NAME)
    +      .values("Charlotte", "Roche")
    +      .returning(T_AUTHOR.ID)
    +      .fetchOne();
    +
    +System.out.println(record.getValue(T_AUTHOR.ID));
    +
    +// For some RDBMS, this also works when inserting several values
    +// The following should return a 2x2 table
    +Result&lt;?&gt; result =
    +create.insertInto(T_AUTHOR, T_AUTHOR.FIRST_NAME, T_AUTHOR.LAST_NAME)
    +      .values("Johann Wolfgang", "von Goethe")
    +      .values("Friedrich", "Schiller")
    +      // You can request any field. Also trigger-generated values
    +      .returning(T_AUTHOR.ID, T_AUTHOR.CREATION_DATE)
    +      .fetch();</java>
    +
    +      						<p>
    +      							Be aware though, that this can lead to race-conditions
    +      							in those databases that cannot properly return generated
    +      							ID values.
    +      						</p>
    +
    +      						<h3>Example: Non-DSL Query</h3>
    +      						<p>You can always use the more verbose regular syntax of the InsertQuery, if you need more control: </p>
    +<java>// Insert a new author into the T_AUTHOR table
    +InsertQuery&lt;TAuthorRecord&gt; i = create.insertQuery(T_AUTHOR);
    +i.addValue(T_AUTHOR.ID, 100);
    +i.addValue(T_AUTHOR.FIRST_NAME, "Hermann");
    +i.addValue(T_AUTHOR.LAST_NAME, "Hesse");
    +
    +i.newRecord();
    +i.addValue(T_AUTHOR.ID, 101);
    +i.addValue(T_AUTHOR.FIRST_NAME, "Alfred");
    +i.addValue(T_AUTHOR.LAST_NAME, "Döblin");
    +i.execute();</java>
    +
    +							<h3>Example: INSERT Query combined with SELECT statements</h3>
    +							<p>The InsertQuery.addValue() method is overloaded, such that you can
    +								also provide a Field, potentially containing an expression: </p>
    +<java>// Insert a new author into the T_AUTHOR table
    +InsertQuery&lt;TAuthorRecord&gt; i = create.insertQuery(T_AUTHOR);
    +i.addValue(T_AUTHOR.ID, create.select(max(T_AUTHOR.ID).add(1)).from(T_AUTHOR).asField())
    +i.addValue(T_AUTHOR.FIRST_NAME, "Hermann");
    +i.addValue(T_AUTHOR.LAST_NAME, "Hesse");
    +i.execute();</java>
    +							<p>Note that especially MySQL (and some other RDBMS) has some
    +								limitations regarding that syntax. You may not be able to
    +								select from the same table you're inserting into</p>
    +
    +							<h3>Example: INSERT SELECT syntax support</h3>
    +							<p>In some occasions, you may prefer the INSERT SELECT syntax, for instance, when
    +								you copy records from one table to another: </p>
    +<java>Insert i = create.insertInto(T_AUTHOR_ARCHIVE)
    +                 .select(create.selectFrom(T_AUTHOR).where(T_AUTHOR.DECEASED.isTrue()));
    +i.execute();</java>
    +
    +
    +							<h2>UPDATE Statements</h2>
    +							<p>UPDATE statements are only possible on single tables. Support for
    +							multi-table updates will be implemented in the near future. </p>
    +
    +							<h3>Example: SQL query and DSL query</h3>
    +							<code-pair>
    +<sql>UPDATE T_AUTHOR
    +   SET FIRST_NAME = 'Hermann',
    +       LAST_NAME = 'Hesse'
    + WHERE ID = 3;
    + </sql>
    +<java>create.update(T_AUTHOR)
    +      .set(T_AUTHOR.FIRST_NAME, "Hermann")
    +      .set(T_AUTHOR.LAST_NAME, "Hesse")
    +      .where(T_AUTHOR.ID.equal(3))
    +      .execute();</java></code-pair>
    +
    +							<h3>Example: Non-DSL Query</h3>
    +							<p>Using the <reference class="org.jooq.UpdateQuery"/> class,
    +							this is how you could express an UPDATE statement:</p>
    +<java>UpdateQuery&lt;TAuthorRecord&gt; u = create.updateQuery(T_AUTHOR);
    +u.addValue(T_AUTHOR.FIRST_NAME, "Hermann");
    +u.addValue(T_AUTHOR.FIRST_NAME, "Hesse");
    +u.addConditions(T_AUTHOR.ID.equal(3));
    +u.execute();</java>
    +
    +
    +							<h2>DELETE Statements</h2>
    +							<p>DELETE statements are only possible on single tables. Support for
    +							multi-table deletes will be implemented in the near future. </p>
    +
    +							<h3>Example: SQL query and DSL query</h3>
    +							<code-pair>
    +<sql>DELETE T_AUTHOR
    + WHERE ID = 100;
    + </sql>
    +<java>create.delete(T_AUTHOR)
    +      .where(T_AUTHOR.ID.equal(100))
    +      .execute();</java></code-pair>
    +
    +							<h3>Example: Non-DSL Query</h3>
    +							<p>Using the <reference class="org.jooq.DeleteQuery"/> class,
    +							this is how you could express a DELETE statement: </p>
    +<java>DeleteQuery&lt;TAuthorRecord&gt; d = create.deleteQuery(T_AUTHOR);
    +d.addConditions(T_AUTHOR.ID.equal(100));
    +d.execute();</java>
    +
    +
    +							<h2>MERGE Statement</h2>
    +							<p>
    +								The MERGE statement is one of the most advanced standardised SQL
    +								constructs, which is supported by DB2, HSQLDB, Oracle, SQL Server and
    +								Sybase (MySQL has the similar INSERT .. ON DUPLICATE KEY UPDATE
    +								construct. H2's MERGE variant is currently not supported.)
    +							</p>
    +							<p>
    +								The point of the standard MERGE statement is to take a TARGET table, and
    +								merge (INSERT, UPDATE) data from a SOURCE table into it. DB2, Oracle,
    +								SQL Server and Sybase also allow for DELETING some data and for adding
    +								many additional clauses. With jOOQ 2.0.1, only Oracle's MERGE extensions are supported.
    +								Here is an example:
    +							</p>
    +
    +							<code-pair>
    +<sql>-- Check if there is already an author called 'Hitchcock'
    +-- If there is, rename him to John. If there isn't add him.
    +
    +MERGE INTO T_AUTHOR
    +USING (SELECT 1 FROM DUAL)
    +ON (LAST_NAME = 'Hitchcock')
    +WHEN MATCHED THEN UPDATE SET FIRST_NAME = 'John'
    +WHEN NOT MATCHED THEN INSERT (LAST_NAME)
    +                      VALUES ('Hitchcock')</sql>
    +<java>create.mergeInto(T_AUTHOR)
    +      .using(create().selectOne())
    +      .on(T_AUTHOR.LAST_NAME.equal("Hitchcock"))
    +      .whenMatchedThenUpdate()
    +      .set(T_AUTHOR.FIRST_NAME, "John")
    +      .whenNotMatchedThenInsert(T_AUTHOR.LAST_NAME)
    +      .values("Hitchcock")
    +      .execute();
    +
    +</java></code-pair>
    +
    +
    +							<h2>TRUNCATE Statement</h2>
    +							<p>
    +								The syntax is trivial:
    +							</p>
    +
    +							<code-pair>
    +								<sql>TRUNCATE TABLE T_AUTHOR;</sql>
    +								<java>create.truncate(T_AUTHOR).execute();</java>
    +							</code-pair>
    +							<p>This is not supported by Ingres and SQLite. jOOQ will execute a DELETE FROM
    +								T_AUTHOR statement instead. </p>
    +						</content>
    +					</section>
    +
    +
    +
    +					<section id="ResultQuery">
    +						<title>ResultQuery and various ways of fetching data</title>
    +						<slogan>
    +							Various jOOQ query type extend the ResultQuery which provides many means of
    +							fetching data. In general, fetching means executing and returning some
    +							sort of result.
    +						</slogan>
    +						<content>
    +							<h2>The ResultQuery provides many convenience methods</h2>
    +							<p>These methods allow for fetching a jOOQ Result or parts of it.</p>
    +
    +<java><![CDATA[// Fetch the whole result
    +Result<R> fetch();
    +
    +// Fetch a single field from the result
    +<T> List<T> fetch(Field<T> field);
    +    List<?> fetch(int fieldIndex);
    +<T> List<T> fetch(int fieldIndex, Class<? extends T> type);
    +    List<?> fetch(String fieldName);
    +<T> List<T> fetch(String fieldName, Class<? extends T> type);
    +
    +// Fetch the first Record
    +R fetchAny();
    +
    +// Fetch exactly one Record
    +R fetchOne();
    +
    +// Fetch a single field of exactly one Record
    +<T> T  fetchOne(Field<T> field);
    +Object fetchOne(int fieldIndex);
    +<T> T  fetchOne(int fieldIndex, Class<? extends T> type);
    +Object fetchOne(String fieldName);
    +<T> T  fetchOne(String fieldName, Class<? extends T> type);]]></java>
    +
    +							<p>These methods transform the result into another form, if org.jooq.Result is not optimal</p>
    +
    +<java><![CDATA[// Fetch the resulting records as Maps
    +List<Map<String, Object>> fetchMaps();
    +     Map<String, Object>  fetchOneMap();
    +
    +// Fetch the result as a Map
    +<K>    Map<K, R> fetchMap(Field<K> key);
    +<K, V> Map<K, V> fetchMap(Field<K> key, Field<V> value);
    +
    +// Fetch the resulting records as arrays
    +Object[][] fetchArrays();
    +Object[]   fetchOneArray();
    +
    +// Fetch a single field as an array
    +<T>  T[] fetchArray(Field<T> field);
    +Object[] fetchArray(int fieldIndex);
    +<T>  T[] fetchArray(int fieldIndex, Class<? extends T> type);
    +Object[] fetchArray(String fieldName);
    +<T>  T[] fetchArray(String fieldName, Class<? extends T> type);]]></java>
    +
    +							<p>These methods transform the result into a user-defined form, if org.jooq.Result is not optimal</p>
    +
    +<java><![CDATA[// Fetch the resulting records into a custom POJO
    +// type, which may or may not be JPA-annotated
    +// Use the generator's <pojos>true</pojos> and <jpaAnnotation>true</jpaAnnotation>
    +// configurations to generate such POJOs with jOOQ
    +<E> List<E> fetchInto(Class<? extends E> type);
    +
    +// Fetch the resulting records into a custom
    +// record handler, similar to how Spring JdbcTemplate's
    +// RowMapper or the Ollin Framework works.
    +<H extends RecordHandler<R>> H fetchInto(H handler);
    +
    +// These change the behaviour of fetching itself,
    +// especially, when not all data should be
    +// fetched at once
    +// ----------------------------------------------
    +
    +// Fetch a Cursor for lazy iteration
    +Cursor<R> fetchLazy();
    +
    +// Or a JDBC ResultSet, if you prefer that
    +ResultSet fetchResultSet();
    +
    +// Fetch data asynchronously and let client code
    +// decide, when the data must be available.
    +// This makes use of the java.util.concurrent API,
    +// Similar to how Avajé Ebean works.
    +FutureResult<R> fetchLater();
    +FutureResult<R> fetchLater(ExecutorService executor);]]></java>
    +						</content>
    +					</section>
    +
    +
    +					<section id="BindValues">
    +						<title>Bind values</title>
    +						<slogan>
    +							Variable binding has a great impact on how you design your SQL queries.
    +							It will influence your SQL queries' security aspect as well as execution speed.
    +						</slogan>
    +						<content>
    +							<h2>Bind values</h2>
    +							<p>
    +								Bind values are used in SQL / JDBC for various reasons. Among the most
    +								obvious ones are:
    +							</p>
    +							<ul>
    +								<li>
    +									Protection against SQL injection. Instead of inlining values
    +									possibly originating from user input, you bind those values to
    +									your prepared statement and let the JDBC driver / database take
    +									care of handling security aspects.
    +								</li>
    +								<li>
    +									Increased speed. Advanced databases such as Oracle can keep
    +									execution plans of similar queries in a dedicated cache to prevent
    +									hard-parsing your query again and again. In many cases, the actual
    +									value of a bind variable does not influence the execution plan, hence
    +									it can be reused. Preparing a statement will thus be faster
    +								</li>
    +								<li>
    +									On a JDBC level, you can also reuse the SQL string and prepared statement
    +									object instead of constructing it again, as you can bind new values to
    +									the prepared statement. This is currently not supported by jOOQ, though
    +								</li>
    +							</ul>
    +
    +							<h3>Ways to introduce bind values with jOOQ</h3>
    +							<p>
    +								Bind values are omni-present in jOOQ. Whenever you create a condition,
    +								you're actually also adding a bind value:
    +							</p>
    +<java>// In jOOQ, "Poe" will be the bind value bound to the condition
    +LAST_NAME.equal("Poe");</java>
    +
    +
    +							<p>
    +								The above notation is actually convenient way to explicitly create
    +								a bind value for "Poe". You could also write this, instead:
    +							</p>
    +<java>// The Factory allows for explicitly creating bind values
    +LAST_NAME.equal(Factory.val("Poe"));
    +
    +// Or, when static importing Factory.val:
    +LAST_NAME.equal(val("Poe"))</java>
    +
    +							<p>
    +								Once created, bind values are part of the query's syntax tree (see
    +								<reference id="QueryPart" title="the manual's section about jOOQ's architecture"/>
    +							    for more information about jOOQ's internals),
    +								and cannot be modified directly anymore. If you wish to reuse a query and
    +								modify bind values between subsequent query executions, you can access them again
    +								through the <reference class="org.jooq.Query"/> interface:
    +							</p>
    +
    +<java><![CDATA[// Access the first bind value from a query. Indexes are counted from 1, just as with JDBC
    +Query query = create.select().from(T_AUTHOR).where(LAST_NAME.equal("Poe"));
    +Param<?> param = query.getParam("1");
    +
    +// You could now modify the Query's underlying bind value:
    +if ("Poe".equal(param.getValue())) {
    +    param.setConverted("Orwell");
    +}]]></java>
    +
    +							<p>
    +								The <reference class="org.jooq.Param"/> type can also be named explicitly
    +								using the Factory's param() methods:
    +							</p>
    +<java><![CDATA[// Create a query with a named parameter. You can then use that name for accessing the parameter again
    +Query query1 = create.select().from(T_AUTHOR).where(LAST_NAME.equal(param("lastName", "Poe")));
    +Param<?> param1 = query.getParam("lastName");
    +
    +// Or, keep a reference to the typed parameter in order not to lose the <T> type information:
    +Param<String> param2 = param("lastName", "Poe");
    +Query query2 = create.select().from(T_AUTHOR).where(LAST_NAME.equal(param2));
    +
    +// You can now change the bind value directly on the Param reference:
    +param2.setValue("Orwell");
    +]]></java>
    +
    +							<p>
    +								The <reference class="org.jooq.Query"/> interface also allows for
    +								setting new bind values directly, without accessing the Param type:
    +							</p>
    +
    +<java>Query query1 = create.select().from(T_AUTHOR).where(LAST_NAME.equal("Poe"));
    +query1.bind(1, "Orwell");
    +
    +// Or, with named parameters
    +Query query2 = create.select().from(T_AUTHOR).where(LAST_NAME.equal(param("lastName", "Poe")));
    +query2.bind("lastName", "Orwell");</java>
    +
    +							<p>
    +								NOTE: Should you wish to use jOOQ only as a query builder and execute
    +								queries with another tool, such as Spring Data instead, you can also
    +								use the Factory's renderNamedParams() method, to actually render named
    +								parameter names in generated SQL:
    +							</p>
    +
    +							<code-pair>
    +<java>create.renderNamedParams(
    +    create.select()
    +          .from(T_AUTHOR)
    +          .where(LAST_NAME.equal(
    +                 param("lastName", "Poe"))));</java>
    +<sql>-- The named bind variable can be rendered
    +
    +SELECT *
    +FROM T_AUTHOR
    +WHERE LAST_NAME = :lastName
    +</sql>
    +							</code-pair>
    +						</content>
    +					</section>
    +
    +
    +					<section id="QueryPart">
    +						<title>QueryParts and the global architecture</title>
    +						<slogan>When constructing Query objects in jOOQ, everything is
    +							considered a QueryPart. The purpose of this quickly becomes clear when
    +							checking out the QueryPart API essentials</slogan>
    +						<content>
    +							<h2>Everything is a QueryPart</h2>
    +							<p>
    +								A
    +								<reference class="org.jooq.Query" />
    +								and all its contained objects is a
    +								<reference class="org.jooq.QueryPart" />.
    +								QueryParts essentially provide this functionality:
    +							</p>
    +							<ul>
    +								<li>they can render SQL using the toSQL(RenderContext) method</li>
    +								<li>they can bind variables using the bind(BindContext) method</li>
    +							</ul>
    +
    +							<p>Both of these methods are contained in jOOQ's internal API's
    +							   <reference class="org.jooq.QueryPartInternal"/>, which is
    +							   internally implemented by every QueryPart. QueryPart internals are best
    +							   illustrated with an example.</p>
    +
    +						   <h2>Example: CompareCondition</h2>
    +						   <p>A simple example can be provided by checking out jOOQ's internal
    +								representation of a
    +								<reference class="org.jooq.impl.CompareCondition"/>.
    +								It is used for any condition
    +								comparing two fields as for example the T_AUTHOR.ID = T_BOOK.AUTHOR_ID
    +								condition here: </p>
    +<sql>-- [...]
    +FROM T_AUTHOR
    +JOIN T_BOOK ON T_AUTHOR.ID = T_BOOK.AUTHOR_ID
    +-- [...]</sql>
    +
    +							<p>This is how jOOQ implements such a condition: </p>
    +
    +<java><![CDATA[@Override
    +public final void bind(BindContext context) throws SQLException {
    +    // The CompareCondition itself does not bind any variables.
    +    // But the two fields involved in the condition might do so...
    +    context.bind(field1).bind(field2);
    +}
    +
    +@Override
    +public final void toSQL(RenderContext context) {
    +    // The CompareCondition delegates rendering of the Fields to the Fields
    +    // themselves and connects them using the Condition's comparator operator:
    +    context.sql(field1)
    +           .sql(" ");
    +
    +    // If the second field is null, some convenience behaviour can be
    +    // implemented here
    +    if (field2.isNullLiteral()) {
    +        switch (comparator) {
    +            case EQUALS:
    +                context.sql("is null");
    +                break;
    +
    +            case NOT_EQUALS:
    +                context.sql("is not null");
    +                break;
    +
    +            default:
    +                throw new IllegalStateException("Cannot compare null with " + comparator);
    +        }
    +    }
    +
    +    // By default, also delegate the right hand side's SQL rendering to the
    +    // underlying field
    +    else {
    +        context.sql(comparator.toSQL())
    +               .sql(" ")
    +               .sql(field2);
    +    }
    +}
    +]]></java>
    +							<p>For more complex examples, please refer to the codebase, directly</p>
    +						</content>
    +					</section>
    +
    +
    +					<section id="Serializability">
    +						<title>Serializability of QueryParts and Results</title>
    +						<slogan>Most of the jOOQ API implements the Serializable interface.
    +							This helps storing queries and partial queries in files, transferring
    +							queries or result data over TCP/IP, etc. </slogan>
    +						<content>
    +							<h2>Attaching QueryParts</h2>
    +							<p>
    +								The only transient element in any jOOQ object is the
    +								<reference id="Factory"/>'s
    +								underlying
    +								<reference class="java.sql.Connection"/>. When you want to execute queries after
    +								de-serialisation, or when you want to store/refresh/delete
    +								<reference id="UpdatableRecord" title="Updatable Records"/>,
    +								you will have to "import" or "re-attach" them to a Factory
    +							</p>
    +<java>// Deserialise a SELECT statement
    +ObjectInputStream in = new ObjectInputStream(...);
    +Select&lt;?&gt; select = (Select&lt;?&gt;) in.readObject();
    +
    +// This will throw a DetachedException:
    +select.execute();
    +
    +// In order to execute the above select, attach it first
    +Factory create = new Factory(connection, SQLDialect.ORACLE);
    +create.attach(select);</java>
    +
    +
    +							<h2>Automatically attaching QueryParts</h2>
    +							<p>
    +								Note, this functionality is deprecated with jOOQ 2.1.0.
    +								Please use the <reference id="ExecuteListener" title="ExecuteListener"/> API
    +								instead, to provide jOOQ queries with a
    +								<reference class="java.sql.Connection"/> before
    +								execution.
    +							</p>
    +							<p>In simple cases, you can register a ConfigurationProvider in jOOQ's ConfigurationRegistry</p>
    +<java>// Create your own custom ConfigurationProvider that will make
    +// your default Factory available to jOOQ
    +ConfigurationProvider provider = new CustomConfigurationProvider();
    +
    +// Statically register the provider to jOOQ's ConfigurationRegistry
    +ConfigurationRegistry.setProvider(provider);</java>
    +
    +							<p>Once you have executed these steps, all subsequent deserialisations
    +								will try to access a Configuration (containing a JDBC Connection) from
    +								your ConfigurationProvider. This may be useful when </p>
    +							<ul>
    +								<li>transporting jOOQ QueryParts or Records via TCP/IP, RMI, etc (e.g.
    +									between client and server), before immediately executing queries,
    +									storing UpdatableRecords</li>
    +								<li>
    +									Using automatic mechanisms as known in
    +									<a href="http://wicket.apache.org/">Wicket</a>
    +								</li>
    +							</ul>
    +						</content>
    +					</section>
    +
    +
    +					<section id="Extend">
    +						<title>Extend jOOQ with custom types</title>
    +						<slogan>Maybe jOOQ is missing functionality that you would like to see,
    +							or you can't wait for the next release... In this case, you can extend
    +							any of the following open jOOQ implementation classes</slogan>
    +						<content>
    +							<h2>Write your own QueryPart implementations</h2>
    +							<p>If a SQL clause is too complex to express with jOOQ, you can extend
    +								either one of the following types for use directly in a jOOQ query:</p>
    +<java>public abstract class CustomField&lt;T&gt; extends AbstractField&lt;T&gt; {
    +  // [...]
    +}
    +public abstract class CustomCondition extends AbstractCondition {
    +  // [...]
    +}</java>
    +
    +							<p>These two classes are declared public and covered by integration
    +								tests. When you extend these classes, you will have to provide your
    +								own implementations for the <reference id="QueryPart" title="QueryParts"/>'
    +								bind(<reference class="org.jooq.BindContext" title="BindContext"/>) and
    +								toSQL(<reference class="org.jooq.RenderContext" title="RenderContext"/>) methods:</p>
    +<java>// This method must produce valid SQL. If your QueryPart contains other QueryParts, you may delegate SQL code generation to them
    +// in the correct order, passing the render context.
    +//
    +// If context.inline() is true, you must inline all bind variables
    +// If context.inline() is false, you must generate ? for your bind variables
    +public void toSQL(RenderContext context);
    +
    +// This method must bind all bind variables to a PreparedStatement. If your QueryPart contains other QueryParts, you may delegate
    +// variable binding to them in the correct order, passing the bind context.
    +//
    +// Every QueryPart must ensure, that it starts binding its variables at context.nextIndex().
    +public void bind(BindContext context) throws DataAccessException;</java>
    +
    +							<p>The above contract may be a bit tricky to understand at first. The
    +								best thing is to check out jOOQ source code and have a look at a
    +								couple of QueryParts, to see how it's done.</p>
    +							<h2>Plain SQL as an alternative</h2>
    +							<p>If you don't need integration of rather complex QueryParts into
    +								jOOQ, then you might be safer using simple
    +								<reference id="SQL" title="Plain SQL"/> functionality,
    +								where you can provide jOOQ with a simple String representation of your
    +								embedded SQL. </p>
    +						</content>
    +					</section>
    +				</sections>
    +			</section>
    +
    +
    +
    +
    +			<section id="META">
    +				<title>Meta model code generation</title>
    +				<slogan>In these sections you will learn about how to configure and use
    +					jOOQ's source code generator</slogan>
    +				<content>
    +					<h2>Overview</h2>
    +					<p>
    +						In the previous chapter, we have seen how to use the
    +						<reference id="Factory" title="Factory"/> in order to create
    +						<reference id="Query" title="Queries"/> and fetch data in
    +						<reference id="Result" title="Results"/>. The strength of jOOQ not
    +						only lies in its object-oriented
    +						<reference id="QueryPart" title="Query model"/>,
    +						but also in the fact
    +						that Java source code is generated from your database schema into the
    +						META data model. jOOQ follows the paradigm, that your database comes
    +						first (see also <a href="&lt;?=$root?&gt;/">home page</a>).
    +						This means that you should not modify
    +						generated source code, but only adapt entities in your database. Every
    +						change in your database is reflected in a corresponding change in your
    +						generated meta-model.
    +					</p>
    +					<p>
    +						Artefacts, such as tables, views, user defined types, sequences, stored
    +						procedures, packages have a corresponding artefact in Java.
    +					</p>
    +				</content>
    +
    +
    +				<sections>
    +					<section id="Configuration">
    +						<title>Configuration and setup of the generator</title>
    +						<slogan>jOOQ uses a simple configuration file to configure source code generation.</slogan>
    +						<content>
    +							<h2>The deliverables</h2>
    +							<p>
    +								There are three binaries available with jOOQ, to be downloaded from
    +								<a href="https://sourceforge.net/projects/jooq/">SourceForge</a>
    +								or from Maven central:
    +							</p>
    +							<ul>
    +								<li>
    +									<strong>jOOQ.jar</strong>
    +									<br />
    +									The main library that you will include in your application to run jOOQ
    +								</li>
    +								<li>
    +									<strong>jOOQ-meta.jar</strong>
    +									<br />
    +									The utility that you will include in your build to navigate your
    +									database schema for code generation. This can be used as a schema
    +									crawler as well.
    +								</li>
    +								<li>
    +									<strong>jOOQ-codegen.jar</strong>
    +									<br />
    +									The utility that you will include in your build to generate your
    +									database schema
    +								</li>
    +							</ul>
    +
    +							<h2>Dependencies</h2>
    +							<p>All of jOOQ's dependencies are "optional", i.e. you can run
    +								jOOQ without any of those libraries.
    +								For instance, jOOQ maintains an "optional" dependency on log4j and slf4j.
    +								This means, that jOOQ tries to find log4j (and /log4j.xml) or slf4j on the
    +								classpath. If they are not present, then java.util.logging.Logger is
    +								used instead.
    +							</p>
    +							<p>
    +								Other optional dependencies are the JPA API, and the Oracle JDBC driver,
    +								which is needed for Oracle's advanced data types, only
    +							</p>
    +
    +
    +							<h2>Configure jOOQ's code generator</h2>
    +							<p>You need to tell jOOQ some things about your database connection.
    +								Here's an example of how to do it for an Oracle database </p>
    +<xml><![CDATA[<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
    +<configuration>
    +  <!-- Configure the database connection here -->
    +  <jdbc>
    +    <driver>oracle.jdbc.OracleDriver</driver>
    +    <url>jdbc:oracle:thin:@[your jdbc connection parameters]</url>
    +    <user>[your database user]</user>
    +    <password>[your database password]</password>
    +    <!-- You can also pass user/password and other JDBC properties in the optional properties tag: -->
    +    <properties>
    +      <property><key>user</key><value>[db-user]</value></property>
    +      <property><key>password</key><value>[db-password]</value></property>
    +    </properties>
    +  </jdbc>
    +
    +  <generator>
    +    <database>
    +      <!-- The database dialect from jooq-meta. Available dialects are
    +           named org.util.[database].[database]Database. Known values are:
    +
    +           org.jooq.util.ase.ASEDatabase
    +           org.jooq.util.db2.DB2Database
    +           org.jooq.util.derby.DerbyDatabase
    +           org.jooq.util.h2.H2Database
    +           org.jooq.util.hsqldb.HSQLDBDatabase
    +           org.jooq.util.ingres.IngresDatabase
    +           org.jooq.util.mysql.MySQLDatabase
    +           org.jooq.util.oracle.OracleDatabase
    +           org.jooq.util.postgres.PostgresDatabase
    +           org.jooq.util.sqlite.SQLiteDatabaes
    +           org.jooq.util.sqlserver.SQLServerDatabase
    +           org.jooq.util.sybase.SybaseDatabase
    +
    +           You can also provide your own org.jooq.util.Database implementation
    +           here, if your database is currently not supported -->
    +      <name>org.jooq.util.oracle.OracleDatabase</name>
    +
    +      <!-- All elements that are generated from your schema (several Java
    +           regular expressions, separated by comma) Watch out for
    +           case-sensitivity. Depending on your database, this might be
    +           important! You can create case-insensitive regular expressions
    +           using this syntax: (?i:expr)A comma-separated list of regular
    +           expressions -->
    +      <includes>.*</includes>
    +
    +      <!-- All elements that are excluded from your schema (several Java
    +           regular expressions, separated by comma). Excludes match before
    +           includes -->
    +      <excludes></excludes>
    +
    +      <!-- The schema that is used locally as a source for meta information.
    +           This could be your development schema or the production schema, etc
    +           This cannot be combined with the schemata element. -->
    +      <inputSchema>[your database schema / owner / name]</inputSchema>
    +    </database>
    +
    +    <generate>
    +      <!-- See advanced configuration properties -->
    +    </generate>
    +
    +    <target>
    +      <!-- The destination package of your generated classes (within the
    +           destination directory) -->
    +      <packageName>[org.jooq.your.packagename]</packageName>
    +
    +      <!-- The destination directory of your generated classes -->
    +      <directory>[/path/to/your/dir]</directory>
    +    </target>
    +  </generator>
    +</configuration>]]></xml>
    +
    +							<p>
    +								There are also lots of advanced configuration parameters, which will be
    +								treated in the <reference id="AdvancedConfiguration" title="manual's next section"/>
    +								Note, you can find the official XSD file at
    +							   <a href="http://www.jooq.org/xsd/jooq-codegen-2.1.0.xsd" title="The jOOQ-codegen configuration XSD">http://www.jooq.org/xsd/jooq-codegen-2.1.0.xsd</a>
    +							   for a formal specification</p>
    +
    +							<h2>Run jOOQ code generation</h2>
    +							<p>Code generation works by calling this class with the above property file as argument.</p>
    +							<config>org.jooq.util.GenerationTool /jooq-config.xml</config>
    +							<p>Be sure that these elements are located on the classpath: </p>
    +							<ul>
    +								<li>The property file</li>
    +								<li>jooq.jar, jooq-meta.jar, jooq-codegen.jar</li>
    +								<li>The JDBC driver you configured</li>
    +							</ul>
    +
    +							<h3>A command-line example (For Windows, unix/linux/etc will be similar)</h3>
    +							<ul>
    +								<li>Put the property file, jooq*.jar and the JDBC driver into
    +									a directory, e.g. C:\temp\jooq</li>
    +							    <li>Go to C:\temp\jooq</li>
    +							    <li>Run java -cp jooq.jar;jooq-meta.jar;jooq-codegen.jar;[JDBC-driver].jar;. org.jooq.util.GenerationTool /[property file] </li>
    +							</ul>
    +							<p>Note that the property file must be passed as a classpath resource</p>
    +
    +							<h3>Run code generation from Eclipse</h3>
    +							<p>Of course, you can also run code generation from your IDE. In
    +								Eclipse, set up a project like this. Note that this example uses
    +								jOOQ's log4j support by adding log4j.xml and log4j.jar to the project
    +								classpath: </p>
    +							<div class="screenshot">
    +							<img class="screenshot" src="&lt;?=$root?&gt;/img/eclipse-example-01.png" alt="Eclipse configuration"/>
    +							</div>
    +
    +							<p>Once the project is set up correctly with all required artefacts on
    +								the classpath, you can configure an Eclipse Run Configuration for
    +								org.jooq.util.GenerationTool. </p>
    +							<div class="screenshot">
    +							<img class="screenshot" src="&lt;?=$root?&gt;/img/eclipse-example-02.png" alt="Eclipse configuration"/>
    +							</div>
    +
    +							<p>With the properties file as an argument </p>
    +							<div class="screenshot">
    +							<img class="screenshot" src="&lt;?=$root?&gt;/img/eclipse-example-03.png" alt="Eclipse configuration"/>
    +							</div>
    +
    +							<p>And the classpath set up correctly</p>
    +							<div class="screenshot">
    +							<img class="screenshot" src="&lt;?=$root?&gt;/img/eclipse-example-04.png" alt="Eclipse configuration"/>
    +							</div>
    +
    +							<p>Finally, run the code generation and see your generated artefacts</p>
    +							<div class="screenshot">
    +							<img class="screenshot" src="&lt;?=$root?&gt;/img/eclipse-example-05.png" alt="Eclipse configuration"/>
    +							</div>
    +
    +							<h3>Run generation with ant</h3>
    +							<p>
    +								You can also use an ant task to generate your classes. As a rule of thumb,
    +								remove the dots "." and dashes "-" from the .properties file's property names to get the
    +								ant task's arguments:
    +							</p>
    +<xml><![CDATA[<!-- Task definition -->
    +<taskdef name="generate-classes" classname="org.jooq.util.GenerationTask">
    +  <classpath>
    +    <fileset dir="${path.to.jooq.distribution}">
    +      <include name="jOOQ.jar"/>
    +      <include name="jOOQ-meta.jar"/>
    +      <include name="jOOQ-codegen.jar"/>
    +    </fileset>
    +    <fileset dir="${path.to.mysql.driver}">
    +      <include name="${mysql.driver}.jar"/>
    +    </fileset>
    +  </classpath>
    +</taskdef>
    +
    +<!-- Run the code generation task -->
    +<target name="generate-test-classes">
    +  <generate-classes
    +      jdbcurl="jdbc:mysql://localhost/test"
    +      jdbcuser="root"
    +      jdbcpassword=""
    +      generatordatabaseinputschema="test"
    +      generatortargetpackage="org.jooq.test.generatedclasses"
    +      generatortargetdirectory="${basedir}/src"/>
    +</target>]]></xml>
    +
    +							<p>
    +								Note that when running code generation with ant's &lt;java/&gt; task,
    +								you may have to set fork="true":
    +							</p>
    +
    +<xml><![CDATA[<!-- Run the code generation task -->
    +<target name="generate-test-classes">
    +  <java fork="true" classname="org.jooq.util.GenerationTool">
    +    [...]
    +  </java>
    +</target>
    +]]></xml>
    +							<h3>Integrate generation with Maven</h3>
    +							<p>Using the official jOOQ-codegen-maven plugin, you can integrate
    +								source code generation in your Maven build process: </p>
    +
    +<xml><![CDATA[<plugin>
    +
    +  <!-- Specify the maven code generator plugin -->
    +  <groupId>org.jooq</groupId>
    +  <artifactId>jooq-codegen-maven</artifactId>
    +  <version>1.6.7</version>
    +
    +  <!-- The plugin should hook into the generate goal -->
    +  <executions>
    +    <execution>
    +      <goals>
    +        <goal>generate</goal>
    +      </goals>
    +    </execution>
    +  </executions>
    +
    +  <!-- Manage the plugin's dependency. In this example, we'll use a Postgres database -->
    +  <dependencies>
    +    <dependency>
    +      <groupId>postgresql</groupId>
    +      <artifactId>postgresql</artifactId>
    +      <version>8.4-702.jdbc4</version>
    +    </dependency>
    +  </dependencies>
    +
    +  <!-- Specify the plugin configuration -->
    +  <configuration>
    +
    +    <!-- JDBC connection parameters -->
    +    <jdbc>
    +      <driver>org.postgresql.Driver</driver>
    +      <url>jdbc:postgresql:postgres</url>
    +      <user>postgres</user>
    +      <password>test</password>
    +    </jdbc>
    +
    +    <!-- Generator parameters -->
    +    <generator>
    +      <name>org.jooq.util.DefaultGenerator</name>
    +      <database>
    +        <name>org.jooq.util.postgres.PostgresDatabase</name>
    +        <includes>.*</includes>
    +        <excludes></excludes>
    +        <inputSchema>public</inputSchema>
    +      </database>
    +      <generate>
    +        <relations>true</relations>
    +        <deprecated>false</deprecated>
    +      </generate>
    +      <target>
    +        <packageName>org.jooq.util.maven.example</packageName>
    +        <directory>target/generated-sources/jooq</directory>
    +      </target>
    +    </generator>
    +  </configuration>
    +</plugin>
    +]]></xml>
    +							<p>See the full example of a pom.xml including the jOOQ-codegen artefact here:
    +							<a href="https://github.com/lukaseder/jOOQ/blob/master/jOOQ-codegen-maven-example/pom.xml" title="jOOQ-codegen-maven example pom.xml file">https://github.com/lukaseder/jOOQ/blob/master/jOOQ-codegen-maven-example/pom.xml</a></p>
    +
    +                            <h3>Migrate properties files from jOOQ 1.7, early versions of jOOQ 2.0.x:</h3>
    +                            <p>
    +                                Before jOOQ 2.0.4, the code generator was configured using properties files
    +                                These files are still supported for source code generation, but their syntax
    +                                won't be maintained any longer. If you wish to migrate to XML, you can
    +                                migrate the file using this command on the command line
    +                            </p>
    +							<config>org.jooq.util.GenerationTool /jooq-config.properties migrate</config>
    +							<p>
    +								Using the migrate flag, jOOQ will read the properties file and output
    +								a corresponding XML file on system out
    +							</p>
    +
    +							<h3>Use jOOQ generated classes in your application</h3>
    +							<p>Be sure, both jOOQ.jar and your generated package (see
    +								configuration) are located on your classpath. Once this is done, you
    +								can execute SQL statements with your generated classes.</p>
    +						</content>
    +					</section>
    +
    +
    +					<section id="AdvancedConfiguration">
    +					    <title>Advanced configuration of the generator</title>
    +						<slogan>jOOQ power users may want to fine-tune their source code generation settings. Here's how to do this</slogan>
    +						<content>
    +							<h2>Code generation</h2>
    +							<p>
    +								In the <reference id="Configuration" title="previous section"/>
    +								we have seen how jOOQ's source code generator is configured and
    +								run within a few steps. In this chapter we'll treat some advanced
    +								settings
    +							</p>
    +
    +<xml><![CDATA[<!-- These properties can be added directly to the generator element: -->
    +<generator>
    +  <!-- The default code generator. You can override this one, to generate your own code style
    +       Defaults to org.jooq.util.DefaultGenerator -->
    +  <name>org.jooq.util.DefaultGenerator</name>
    +
    +  <!-- The naming strategy used for class and field names.
    +       You may override this with your custom naming strategy. Some examples follow
    +       Defaults to org.jooq.util.DefaultGeneratorStrategy -->
    +  <strategy>
    +    <name>org.jooq.util.DefaultGeneratorStrategy</name>
    +  </strategy>
    +</generator>]]></xml>
    +
    +							<p>
    +								The following example shows how you can override the
    +								DefaultGeneratorStrategy to render table and column names the way
    +								they are defined in the database, rather than switching them to
    +								camel case:
    +							</p>
    +
    +<java>/**
    + * It is recommended that you extend the DefaultGeneratorStrategy. Most of the
    + * GeneratorStrategy API is already declared final. You only need to override any
    + * of the following methods, for whatever generation behaviour you'd like to achieve
    + *
    + * Beware that most methods also receive a "Mode" object, to tell you whether a
    + * TableDefinition is being rendered as a Table, Record, POJO, etc. Depending on
    + * that information, you can add a suffix only for TableRecords, not for Tables
    + */
    +public class AsInDatabaseStrategy extends DefaultGeneratorStrategy {
    +
    +    /**
    +     * Override this to specifiy what identifiers in Java should look like.
    +     * This will just take the identifier as defined in the database.
    +     */
    +    @Override
    +    public String getJavaIdentifier(Definition definition) {
    +        return definition.getOutputName();
    +    }
    +
    +    /**
    +     * Override these to specify what a setter in Java should look like. Setters
    +     * are used in TableRecords, UDTRecords, and POJOs. This example will name
    +     * setters "set[NAME_IN_DATABASE]"
    +     */
    +    @Override
    +    public String getJavaSetterName(Definition definition, Mode mode) {
    +        return "set" + definition.getOutputName();
    +    }
    +
    +    /**
    +     * Just like setters...
    +     */
    +    @Override
    +    public String getJavaGetterName(Definition definition, Mode mode) {
    +        return "get" + definition.getOutputName();
    +    }
    +
    +    /**
    +     * Override this method to define what a Java method generated from a database
    +     * Definition should look like. This is used mostly for convenience methods
    +     * when calling stored procedures and functions. This example shows how to
    +     * set a prefix to a CamelCase version of your procedure
    +     */
    +    @Override
    +    public String getJavaMethodName(Definition definition, Mode mode) {
    +        return "call" + org.jooq.tools.StringUtils.toCamelCase(definition.getOutputName());
    +    }
    +
    +    /**
    +     * Override this method to define how your Java classes and Java files should
    +     * be named. This example applies no custom setting and uses CamelCase versions
    +     * instead
    +     */
    +    @Override
    +    public String getJavaClassName(Definition definition, Mode mode) {
    +        return super.getJavaClassName(definition, mode);
    +    }
    +
    +    /**
    +     * Override this method to re-define the package names of your generated
    +     * artefacts.
    +     */
    +    @Override
    +    public String getJavaPackageName(Definition definition, Mode mode) {
    +        return super.getJavaPackageName(definition, mode);
    +    }
    +
    +    /**
    +     * Override this method to define how Java members should be named. This is
    +     * used for POJOs and method arguments
    +     */
    +    @Override
    +    public String getJavaMemberName(Definition definition, Mode mode) {
    +        return definition.getOutputName();
    +    }
    +}</java>
    +
    +                            <h3>jooq-meta configuration</h3>
    +							<p>
    +								Within the &lt;generator/&gt; element, there are other configuration elements:
    +							</p>
    +
    +<xml><![CDATA[<!-- These properties can be added to the database element: -->
    +<database>
    +  <!-- Generate java.sql.Timestamp fields for DATE columns. This is
    +       particularly useful for Oracle databases.
    +       Defaults to false -->
    +  <dateAsTimestamp>false</dateAsTimestamp>
    +
    +  <!-- Generate jOOU data types for your unsigned data types, which are
    +       not natively supported in Java.
    +       Defaults to true -->
    +  <unsignedTypes>true</unsignedTypes>
    +
    +  <!-- The schema that is used in generated source code. This will be the
    +       production schema. Use this to override your local development
    +       schema name for source code generation. If not specified, this
    +       will be the same as the input-schema. -->
    +  <outputSchema>[your database schema / owner / name]</outputSchema>
    +
    +  <!-- A configuration element to configure several input and/or output
    +       schemata for jooq-meta, in case you're using jooq-meta in a multi-
    +       schema environment.
    +       This cannot be combined with the above inputSchema / outputSchema -->
    +  <schemata>
    +    <schema>
    +      <inputSchema>...</inputSchema>
    +      <outputSchema>...</outputSchema>
    +    </schema>
    +    [ <schema>...</schema> ... ]
    +  </schemata>
    +
    +  <!-- A configuration element to configure master data table enum classes -->
    +  <masterDataTables>...</masterDataTables>
    +
    +  <!-- A configuration element to configure custom data types -->
    +  <customTypes>...</customTypes>
    +
    +  <!-- A configuration element to configure type overrides for generated
    +       artefacts (e.g. in combination with customTypes) -->
    +  <forcedTypes>...</forcedTypes>
    +</database>]]></xml>
    +
    +							<p>
    +								Check out the some of the manual's "advanced" sections
    +								to find out more about the advanced configuration parameters.
    +							</p>
    +							<ul>
    +								<li><reference id="SchemaMapping" title="Schema mapping"/></li>
    +								<li><reference id="MasterData" title="Master data types"/></li>
    +								<li><reference id="CustomTypes" title="Custom types"/></li>
    +							</ul>
    +
    +							<h3>jooq-codegen configuration</h3>
    +                            <p>Also, you can add some optional advanced configuration parameters for the generator: </p>
    +
    +<xml><![CDATA[<!-- These properties can be added to the generate element: -->
    +<generate>
    +  <!-- Primary key / foreign key relations should be generated and used.
    +       This is a prerequisite for various advanced features.
    +       Defaults to false -->
    +  <relations>false</relations>
    +
    +  <!-- Generate navigation methods to navigate foreign key relationships
    +       directly from Record classes. This is only relevant if relations
    +       is set to true, too.
    +       Defaults to true -->
    +  <navigationMethods>true</navigationMethods>
    +
    +  <!-- Generate deprecated code for backwards compatibility
    +       Defaults to true -->
    +  <deprecated>true</deprecated>
    +
    +  <!-- Generate instance fields in your tables, as opposed to static
    +       fields. This simplifies aliasing.
    +       Defaults to true -->
    +  <instanceFields>true</instanceFields>
    +
    +  <!-- Generate the javax.annotation.Generated annotation to indicate
    +       jOOQ version used for source code.
    +       Defaults to true -->
    +  <generatedAnnotation>true</generatedAnnotation>
    +
    +  <!-- Generate jOOQ Record classes for type-safe querying. You can
    +       turn this off, if you don't need "active records" for CRUD
    +       Defaults to true -->
    +  <records>true</records>
    +
    +  <!-- Generate POJOs in addition to Record classes for usage of the
    +       ResultQuery.fetchInto(Class) API
    +       Defaults to false -->
    +  <pojos>false</pojos>
    +
    +  <!-- Annotate POJOs and Records with JPA annotations for increased
    +       compatibility and better integration with JPA/Hibernate, etc
    +       Defaults to false -->
    +  <jpaAnnotations>false</jpaAnnotations>
    +</generate>]]></xml>
    +						</content>
    +					</section>
    +
    +
    +					<section id="SCHEMA">
    +						<title>The schema, top-level generated artefact</title>
    +						<slogan>The schema is the top-level generated object in jOOQ. In many
    +							RDBMS, the schema coincides with the owner of tables and other objects
    +						</slogan>
    +						<content>
    +							<h2>The Schema</h2>
    +							<p>
    +								As of jOOQ 1.5, the top-level generated object is the
    +								<reference class="org.jooq.Schema" />.
    +								The Schema itself has no relevant functionality, except for holding
    +								the schema name for all dependent generated artefacts. jOOQ queries try
    +								to always fully qualify an entity within the database using that Schema
    +							</p>
    +
    +							<p>
    +								Currently, it is not possible to link generated artefacts from various
    +								schemata. If you have a stored function from Schema A, which returns a
    +								UDT from Schema B, the types cannot be linked. This enhancement is on
    +								the roadmap, though: <reference ticket="282"/>.
    +							</p>
    +
    +							<p>
    +								When you have several schemata that are logically equivalent (i.e. they
    +								contain identical entities, but the schemata stand for different
    +								users/customers/clients, etc), there is a solution for that. Check out
    +								the manual's section on support for
    +								<reference id="SchemaMapping" title="multiple equivalent schemata"/>
    +							</p>
    +
    +							<h3>Schema contents</h3>
    +							<p>The schema can be used to dynamically discover generate database
    +								artefacts. Tables, sequences, and other items are accessible from the
    +								schema. For example:</p>
    +<java>public final java.util.List&lt;org.jooq.Sequence&lt;?&gt;&gt; getSequences();
    +public final java.util.List&lt;org.jooq.Table&lt;?&gt;&gt; getTables();</java>
    +						</content>
    +					</section>
    +
    +
    +					<section id="TABLE">
    +						<title>Tables, views and their corresponding records</title>
    +						<slogan>
    +							The most important generated artefacts are Tables and TableRecords.
    +							Every Table has a Record type associated with it that models a single tuple
    +							of that entity: Table&lt;R extends Record&gt;.
    +						</slogan>
    +						<content>
    +							<h2>Tables and TableRecords</h2>
    +							<p>
    +								The most important generated artefacts are
    +								<reference class="org.jooq.Table" title="Tables"/> and
    +								<reference class="org.jooq.TableRecord" title="TableRecords"/>. As
    +								discussed in previous chapters about
    +								<reference id="Table" title="Tables"/> and
    +								<reference id="Result" title="Results"/>, jOOQ uses the
    +								Table class to model entities (both tables and views) in your database
    +								Schema. Every Table has a Record type associated with it that models a
    +								single tuple of that entity: Table&lt;R extends Record&gt;. This
    +								couple of Table&lt;R&gt; and R are generated as such:
    +							</p>
    +							<p>
    +								Suppose we have the tables as defined in the
    +								<reference id="ExampleDatabase" title="example database"/>.
    +								Then, using a
    +								default configuration, these (simplified for the example) classes will
    +								be generated:
    +							</p>
    +
    +							<h3>The Table as an entity meta model</h3>
    +<java>public class TAuthor extends UpdatableTableImpl&lt;TAuthorRecord&gt; {
    +
    +    // The singleton instance of the Table
    +    public static final TAuthor T_AUTHOR = new TAuthor();
    +
    +    // The Table's fields.
    +    // Depending on your jooq-codegen configuraiton, they can also be static
    +    public final TableField&lt;TAuthorRecord, Integer&gt; ID =            // [...]
    +    public final TableField&lt;TAuthorRecord, String&gt; FIRST_NAME =     // [...]
    +    public final TableField&lt;TAuthorRecord, String&gt; LAST_NAME =      // [...]
    +    public final TableField&lt;TAuthorRecord, Date&gt; DATE_OF_BIRTH =    // [...]
    +    public final TableField&lt;TAuthorRecord, Integer&gt; YEAR_OF_BIRTH = // [...]
    +
    +    // When you don't choose the static meta model, you can typesafely alias your tables.
    +    // Aliased tables will then hold references to the above final fields, too
    +    public TAuthor as(String alias) {
    +      // [...]
    +    }
    +}</java>
    +
    +							<h3>The Table's associated TableRecord</h3>
    +							<p>If you use the
    +								<reference id="Query" title="SimpleSelectQuery"/>
    +								 syntax (both in standard and DSL
    +								mode), then your SELECT statement will return the single Table&lt;R
    +								extends Record&gt;'s associated Record type &lt;R&gt;. In the case of
    +								the above TAuthor Table, this will be a TAuthorRecord. </p>
    +
    +<java>public class TAuthorRecord extends UpdatableRecordImpl&lt;TAuthorRecord&gt; {
    +
    +    // Getters and setters for the various fields
    +    public void setId(Integer value) {       // [...]
    +    public Integer getId() {                 // [...]
    +    public void setFirstName(String value) { // [...]
    +    public String getFirstName() {           // [...]
    +    public void setLastName(String value) {  // [...]
    +    public String getLastName() {            // [...]
    +    public void setDateOfBirth(Date value) { // [...]
    +    public Date getDateOfBirth() {           // [...]
    +
    +    // Navigation methods for foreign keys
    +    public List&lt;TBookRecord&gt; fetchTBooks() { // [...]
    +}</java>
    +
    +
    +							<h3>Generated or custom POJO's instead of jOOQ's Records</h3>
    +							<p>
    +								If you're using jOOQ along with Hibernate / JPA, or if you
    +								want to use your own, custom domain-model instead of jOOQ's
    +								Record type-hierarchy, you can choose to select values into
    +								POJOs. Let's say you defined a POJO for authors:
    +							</p>
    +
    +<java><![CDATA[package com.example;
    +
    +import javax.persistence.Column;
    +import javax.persistence.Entity;
    +
    +@Entity
    +public class MyAuthor {
    +    // Some fields may be public
    +    @Column(name = "ID")
    +    public int id;
    +
    +    // Others are private and have associated getters / setters:
    +    private String firstName;
    +    private String lastName;
    +
    +    public void setFirstName(String firstName) {
    +        this.firstName = firstName;
    +    }
    +
    +    @Column(name = "FIRST_NAME")
    +    public String getFirstName() {
    +        return firstName;
    +    }
    +
    +    public void setLastName(String lastName) {
    +        this.lastName = lastName;
    +    }
    +
    +    @Column(name = "LAST_NAME")
    +    public String getLastName() {
    +        return lastName;
    +    }
    +}]]></java>
    +
    +                            <p>
    +                            	The above could be your custom POJO or a POJO generated
    +                            	by jooq-codegen (see
    +                            	<reference id="AdvancedConfiguration" title="the manual's section about advanced codegen configuration"/>
    +                            	for more details). Also, JPA-annotations are not necessary
    +                            	if you wish to let jOOQ map record columns onto your POJO
    +                            	attributes by convention. Instead of fetching records normally,
    +                            	you can now let jOOQ fetch records "into" your custom type:
    +                            </p>
    +
    +<java><![CDATA[List<MyAuthor> results = create.select().from(TAuthor.T_AUTHOR).fetchInto(MyAuthor.class);]]></java>
    +
    +							<p>
    +								Read the javadoc for
    +								<a href="http://www.jooq.org/javadoc/latest/org/jooq/Record.html#into%28java.lang.Class%29" title="Record.into() javadoc, explaining about how to map jOOQ Records onto custom types">Record.into()</a>
    +								for more details.
    +							</p>
    +						</content>
    +					</section>
    +
    +
    +					<section id="PROCEDURE">
    +						<title>Procedures and packages</title>
    +						<slogan>
    +							Procedure support is one of the most important reasons why you should consider
    +							jOOQ. jOOQ heavily facilitates the use of stored procedures and
    +							functions via its source code generation.
    +						</slogan>
    +						<content>
    +							<h2>Stored procedures in modern RDBMS</h2>
    +							<p>This is one of the most important reasons why you should consider
    +								jOOQ. Read also my
    +								<a href="http://java.dzone.com/articles/2011-great-year-stored" title="Article on stored procedures and how to use them with jOOQ">article on dzone</a>
    +								about why stored procedures become
    +								more and more important in future versions of RDMBS. In this section
    +								of the manual, we will learn how jOOQ handles stored procedures in
    +								code generation. Especially before
    +								<reference id="UDT" title="UDT and ARRAY support"/> was
    +								introduced to major RDBMS, these procedures tend to have dozens of
    +								parameters, with IN, OUT, IN OUT parameters mixed in all variations.
    +								JDBC only knows very basic, low-level support for those constructs.
    +								jOOQ heavily facilitates the use of stored procedures and functions
    +								via its source code generation. Essentially, it comes down to this:
    +							</p>
    +
    +							<h3>"Standalone" stored procedures and functions</h3>
    +							<p>Let's say you have these stored procedures and functions in your Oracle database </p>
    +<sql>-- Check whether there is an author in T_AUTHOR by that name
    +CREATE OR REPLACE FUNCTION f_author_exists (author_name VARCHAR2) RETURN NUMBER;
    +
    +-- Check whether there is an author in T_AUTHOR by that name
    +CREATE OR REPLACE PROCEDURE p_author_exists (author_name VARCHAR2, result OUT NUMBER);
    +
    +-- Check whether there is an author in T_AUTHOR by that name and get his ID
    +CREATE OR REPLACE PROCEDURE p_author_exists_2 (author_name VARCHAR2, result OUT NUMBER, id OUT NUMBER);</sql>
    +
    +							<p>jOOQ will essentially generate two artefacts for every procedure/function: </p>
    +							<ul>
    +								<li>A class holding a formal Java representation of the procedure/function</li>
    +    							<li>Some convenience methods to facilitate calling that procedure/function </li>
    +							</ul>
    +							<p>Let's see what these things look like, in Java. The classes (simplified for the example): </p>
    +
    +<java>// The function has a generic type parameter &lt;T&gt; bound to its return value
    +public class FAuthorExists extends org.jooq.impl.AbstractRoutine&lt;BigDecimal&gt; {
    +
    +    // Much like Tables, functions have static parameter definitions
    +    public static final Parameter&lt;String&gt; AUTHOR_NAME = // [...]
    +
    +    // And much like TableRecords, they have setters for their parameters
    +    public void setAuthorName(String value) { // [...]
    +    public void setAuthorName(Field&lt;String&gt; value) { // [...]
    +}
    +
    +public class PAuthorExists extends org.jooq.impl.AbstractRoutine&lt;java.lang.Void&gt; {
    +
    +    // In procedures, IN, OUT, IN OUT parameters are all represented
    +    // as static parameter definitions as well
    +    public static final Parameter&lt;String&gt; AUTHOR_NAME = // [...]
    +    public static final Parameter&lt;BigDecimal&gt; RESULT = // [...]
    +
    +    // IN and IN OUT parameters have generated setters
    +    public void setAuthorName(String value) { // [...]
    +
    +    // OUT and IN OUT parameters have generated getters
    +    public BigDecimal getResult() { // [...]
    +}
    +
    +public class PAuthorExists_2 extends org.jooq.impl.AbstractRoutine&lt;java.lang.Void&gt; {
    +    public static final Parameter&lt;String&gt; AUTHOR_NAME = // [...]
    +    public static final Parameter&lt;BigDecimal&gt; RESULT = // [...]
    +    public static final Parameter&lt;BigDecimal&gt; ID = // [...]
    +
    +    // the setters...
    +    public void setAuthorName(String value) { // [...]
    +
    +    // the getters...
    +    public BigDecimal getResult() { // [...]
    +    public BigDecimal getId() { // [...]
    +}</java>
    +
    +							<p>An example invocation of such a stored procedure might look like this: </p>
    +
    +<java>PAuthorExists p = new PAuthorExists();
    +p.setAuthorName("Paulo");
    +p.execute(configuration);
    +assertEquals(BigDecimal.ONE, p.getResult());</java>
    +
    +							<p>
    +								The above configuration is a
    +								<reference id="Factory" title="Factory"/>,
    +								holding a reference to a JDBC connection, as discussed in a previous section.
    +
    +								If you use the generated convenience methods, however, things are much simpler, still:
    +							</p>
    +<java>// Every schema has a single Routines class with convenience methods
    +public final class Routines {
    +
    +    // Convenience method to directly call the stored function
    +    public static BigDecimal fAuthorExists(Configuration configuration, String authorName) { // [...]
    +
    +    // Convenience methods to transform the stored function into a
    +    // Field&lt;BigDecimal&gt;, such that it can be used in SQL
    +    public static Field&lt;BigDecimal&gt; fAuthorExists(Field&lt;String&gt; authorName) { // [...]
    +    public static Field&lt;BigDecimal&gt; fAuthorExists(String authorName) { // [...]
    +
    +    // Procedures with 0 OUT parameters create void methods
    +    // Procedures with 1 OUT parameter create methods as such:
    +    public static BigDecimal pAuthorExists(Configuration configuration, String authorName) { // [...]
    +
    +    // Procedures with more than 1 OUT parameter return the procedure
    +    // object (see above example)
    +    public static PAuthorExists_2 pAuthorExists_2(Configuration configuration, String authorName) { // [...]
    +}</java>
    +
    +							<p>An sample invocation, equivalent to the previous example:</p>
    +<java>assertEquals(BigDecimal.ONE, Procedures.pAuthorExists(configuration, "Paulo"));</java>
    +
    +
    +							<h3>jOOQ's understanding of procedures vs functions</h3>
    +							<p>
    +								jOOQ does not formally distinguish procedures from functions.
    +								jOOQ only knows about routines, which can have return values
    +								and/or OUT parameters. This is the best option to handle the
    +								variety of stored procedure / function support across the
    +								various supported RDBMS. For more details, read on about this
    +								topic, here:
    +							</p>
    +							<p>
    +								<a href="http://lukaseder.wordpress.com/2011/10/17/what-are-procedures-and-functions-after-all/" title="Blog post about the difference between procedures and functions in various RDBMS">lukaseder.wordpress.com/2011/10/17/what-are-procedures-and-functions-after-all/</a>
    +							</p>
    +
    +							<h3>Packages in Oracle</h3>
    +							<p>
    +								Oracle uses the concept of a PACKAGE to group several
    +								procedures/functions into a sort of namespace. The
    +								<a href="http://www.contrib.andrew.cmu.edu/~shadow/sql/sql1992.txt"
    +									title="SQL 92 standard">SQL standard</a>
    +								talks about "modules", to represent this concept, even if this is
    +								rarely implemented. This is reflected in jOOQ by the use of Java
    +								sub-packages in the source code generation destination package. Every
    +								Oracle package will be reflected by
    +							</p>
    +							<ul>
    +								<li>A Java package holding classes for formal Java representations of
    +									the procedure/function in that package
    +								</li>
    +								<li>A Java class holding convenience methods to facilitate calling
    +									those procedures/functions
    +								</li>
    +							</ul>
    +							<p>
    +								Apart from this, the generated source code looks exactly like the
    +								one for
    +								standalone procedures/functions.
    +							</p>
    +
    +							<h3>Member functions and procedures in Oracle</h3>
    +							<p>
    +								Oracle UDT's can have object-oriented structures including member functions
    +								and procedures. With Oracle, you can do things like this:
    +							</p>
    +<sql>CREATE OR REPLACE TYPE u_author_type AS OBJECT (
    +  id NUMBER(7),
    +  first_name VARCHAR2(50),
    +  last_name VARCHAR2(50),
    +
    +  MEMBER PROCEDURE LOAD,
    +  MEMBER FUNCTION count_books RETURN NUMBER
    +)
    +
    +-- The type body is omitted for the example
    +</sql>
    +
    +							<p>
    +								These member functions and procedures can simply be mapped to Java
    +								methods:
    +							</p>
    +
    +<java>
    +// Create an empty, attached UDT record from the Factory
    +UAuthorType author = create.newRecord(U_AUTHOR_TYPE);
    +
    +// Set the author ID and load the record using the LOAD procedure
    +author.setId(1);
    +author.load();
    +
    +// The record is now updated with the LOAD implementation's content
    +assertNotNull(author.getFirstName());
    +assertNotNull(author.getLastName());</java>
    +
    +							<p>For more details about UDT's see the Manual's section on
    +							<reference id="UDT" title="User Defined Types"/></p>
    +
    +						</content>
    +					</section>
    +
    +
    +					<section id="UDT">
    +						<title>UDT's including ARRAY and ENUM types</title>
    +						<slogan>
    +							Databases become more powerful when you can structure your data in user
    +							defined types. It's time for Java developers to give some credit to
    +							that.
    +						</slogan>
    +						<content>
    +							<h2>Increased RDBMS support for UDT's</h2>
    +							<p>
    +								In recent years, most RDBMS have started to implement some support for
    +								advanced data types. This support has not been adopted very well by
    +								database users in the Java world, for several reasons:
    +							</p>
    +							<ul>
    +								<li>They are usually orthogonal to relational concepts. It is not easy
    +									to modify a UDT once it is referenced by a table column.</li>
    +								<li>There is little standard support of accessing them from JDBC (and
    +									probably other database connectivity standards). </li>
    +							</ul>
    +							<p>
    +								On the other hand, especially with stored procedures, these data types
    +								are likely to become more and more useful in the future. If you have a
    +								look at Postgres' capabilities of dealing with advanced data types
    +								(<a href="http://www.postgresql.org/docs/9.0/interactive/datatype-enum.html">ENUMs</a>,
    +								<a href="http://www.postgresql.org/docs/9.0/interactive/arrays.html">ARRAYs</a>,
    +								<a href="http://www.postgresql.org/docs/9.0/interactive/rowtypes.html">UDT's</a>),
    +								 this becomes more and more obvious.
    +							</p>
    +							<p>It is a central strategy for jOOQ, to standardise access to these
    +								kinds of types (as well as to
    +								<reference id="PROCEDURE" title="stored procedures"/>, of course) across all
    +								RDBMS, where these types are supported. </p>
    +
    +							<h2>UDT types</h2>
    +							<p>User Defined Types (UDT) are helpful in major RDMBS with lots
    +							of proprietary functionality. The biggest player is clearly Oracle.
    +							Currently, jOOQ provides UDT support for only two databases: </p>
    +							<ul>
    +								<li>Oracle</li>
    +								<li>Postgres</li>
    +							</ul>
    +							<p>Apart from that, </p>
    +							<ul>
    +								<li>
    +									DB2 UDT's are not supported as they are very tough to
    +									serialise/deserialise. We don't think that this is a big enough
    +									requirement to put more effort in those, right now (see also the
    +									developers' discussion on
    +									<reference ticket="164" />)
    +								</li>
    +							</ul>
    +
    +							<p>In Oracle, you would define UDTs like this: </p>
    +<sql>CREATE TYPE u_street_type AS OBJECT (
    +  street VARCHAR2(100),
    +  no VARCHAR2(30)
    +)
    +
    +CREATE TYPE u_address_type AS OBJECT (
    +  street u_street_type,
    +  zip VARCHAR2(50),
    +  city VARCHAR2(50),
    +  country VARCHAR2(50),
    +  since DATE,
    +  code NUMBER(7)
    +)</sql>
    +
    +							<p>These types could then be used in tables and/or stored procedures like such: </p>
    +<sql>CREATE TABLE t_author (
    +  id NUMBER(7) NOT NULL PRIMARY KEY,
    +  -- [...]
    +  address u_address_type
    +)
    +
    +CREATE OR REPLACE PROCEDURE p_check_address (address IN OUT u_address_type);</sql>
    +
    +							<p>
    +								Standard JDBC UDT support encourages JDBC-driver developers to implement
    +								interfaces such as
    +								<reference class="java.sql.SQLData"/>,
    +								<reference class="java.sql.SQLInput"/> and
    +								<reference class="java.sql.SQLOutput"/>.
    +								Those interfaces are non-trivial to implement, or
    +								to hook into. Also access to
    +								<reference class="java.sql.Struct"/>
    +								is not really simple. Due
    +								to the lack of a well-defined JDBC standard, Oracle's JDBC driver
    +								rolls their own proprietary methods of dealing with these types. jOOQ
    +								goes a different way, it hides those facts from you entirely. With
    +								jOOQ, the above UDT's will be generated in simple
    +								<reference class="org.jooq.UDT" title="UDT meta-model classes"/> and
    +								<reference class="org.jooq.UDTRecord" title="UDT record classes"/> as such:
    +							</p>
    +<java>// There is an analogy between UDT/Table and UDTRecord/TableRecord...
    +public class UAddressType extends UDTImpl&lt;UAddressTypeRecord&gt; {
    +
    +    // The UDT meta-model singleton instance
    +    public static final UAddressType U_ADDRESS_TYPE = new UAddressType();
    +
    +    // UDT attributes are modeled as static members. Nested UDT's
    +    // behave similarly
    +    public static final UDTField&lt;UAddressTypeRecord, UStreetTypeRecord&gt; STREET = // [...]
    +    public static final UDTField&lt;UAddressTypeRecord, String&gt; ZIP =               // [...]
    +    public static final UDTField&lt;UAddressTypeRecord, String&gt; CITY =              // [...]
    +    public static final UDTField&lt;UAddressTypeRecord, String&gt; COUNTRY =           // [...]
    +    public static final UDTField&lt;UAddressTypeRecord, Date&gt; SINCE =               // [...]
    +    public static final UDTField&lt;UAddressTypeRecord, Integer&gt; CODE =             // [...]
    +}</java>
    +
    +							<p>Now, when you interact with entities or procedures that hold UDT's, that's very simple as well. Here is an example: </p>
    +<java>// Fetch any author from the T_AUTHOR table
    +TAuthorRecord author = create.selectFrom(T_AUTHOR).fetchAny();
    +
    +// Print out the author's address's house number
    +System.out.println(author.getAddress().getStreet().getNo());</java>
    +
    +							<p>A similar thing can be achieved when interacting with the example stored procedure: </p>
    +<java>// Create a new UDTRecord of type U_ADDRESS_TYPE
    +UAddressTypeRecord address = new UAddressTypeRecord();
    +address.setCountry("Switzerland");
    +
    +// Call the stored procedure with IN OUT parameter of type U_ADDRESS_TYPE
    +address = Procedures.pCheckAddress(connection, address);</java>
    +
    +
    +							<h2>ARRAY types</h2>
    +							<p>
    +								The notion of ARRAY types in RDBMS is not standardised at all. Very
    +								modern databases (especially the Java-based ones) have implemented
    +								ARRAY types exactly as what they are. "ARRAYs of something". In other
    +								words, an ARRAY OF VARCHAR would be something very similar to Java's
    +								notion of String[]. An ARRAY OF ARRAY OF VARCHAR would then be a
    +								String[][] in Java. Some RDMBS, however, enforce stronger typing and
    +								need the explicit creation of types for every ARRAY as well. These are
    +								example String[] ARRAY types in various SQL dialects supported by jOOQ
    +								1.5.4:
    +							</p>
    +							<ul>
    +								<li>Oracle: VARRAY OF VARCHAR2. A strongly typed object encapsulating an ARRAY of a given type. See the <a href="http://download.oracle.com/docs/cd/B19306_01/appdev.102/b14261/collection_definition.htm">documentation.</a></li>
    +								<li>Postgres: text[]. Any data type can be turned into an array by suffixing it with []. See the <a href="http://www.postgresql.org/docs/9.0/interactive/arrays.html">documentation</a></li>
    +								<li>HSQLDB: VARCHAR ARRAY. Any data type can be turned into an array by suffixing it with ARRAY. See the <a href="http://hsqldb.org/doc/2.0/guide/sqlgeneral-chapt.html#N1070F">documentation</a></li>
    +								<li>H2: ARRAY. H2 does not know of typed arrays. All ARRAYs are mapped to Object[]. See the <a href="http://www.h2database.com/html/datatypes.html#array_type">documentation</a></li>
    +							</ul>
    +							<p>Soon to be supported: </p>
    +							<ul>
    +								<li>DB2: Knows a similar strongly-typed ARRAY type, like Oracle </li>
    +							</ul>
    +							<p>
    +								From jOOQ's perspective, the ARRAY types fit in just like any other
    +								type wherever the
    +								&lt;T&gt; generic type parameter is existent. It integrates well with tables
    +									and stored procedures.
    +							</p>
    +
    +							<h3>Example: General ARRAY types</h3>
    +							<p>An example usage of ARRAYs is given here for the Postgres dialect </p>
    +
    +<sql>CREATE TABLE t_arrays (
    +  id integer not null primary key,
    +  string_array VARCHAR(20)[],
    +  number_array INTEGER[]
    +)
    +
    +CREATE FUNCTION f_arrays(in_array IN text[]) RETURNS text[]</sql>
    +
    +							<p>When generating source code from the above entities, these artefacts will be created in Java: </p>
    +<java>public class TArrays extends UpdatableTableImpl&lt;TArraysRecord&gt; {
    +
    +    // The generic type parameter &lt;T&gt; is bound to an array of a matching type
    +    public static final TableField&lt;TArraysRecord, String[]&gt; STRING_ARRAY =  // [...]
    +    public static final TableField&lt;TArraysRecord, Integer[]&gt; NUMBER_ARRAY = // [...]
    +}
    +
    +// The convenience class is enhanced with these methods
    +public final class Functions {
    +    public static String[] fArrays(Connection connection, String[] inArray) { // [...]
    +    public static Field&lt;String[]&gt; fArrays(String[] inArray) {                                     // [...]
    +    public static Field&lt;String[]&gt; fArrays(Field&lt;String[]&gt; inArray) {                              // [...]
    +}</java>
    +
    +							<h3>Example: Oracle VARRAY types</h3>
    +							<p>In Oracle, a VARRAY type is something slightly different than in
    +								other RDMBS. It is a type that encapsules the actual ARRAY and creates
    +								a new type from it. While all text[] types are equal and thus
    +								compatible in Postgres, this does not apply for all VARRAY OF VARCHAR2
    +								types. Hence, it is important to provide access to VARRAY types and
    +								generated objects from those types as well. The example above would
    +								read like this in Oracle: </p>
    +
    +<sql>CREATE TYPE u_string_array AS VARRAY(4) OF VARCHAR2(20)
    +CREATE TYPE u_number_array AS VARRAY(4) OF NUMBER(7)
    +
    +CREATE TABLE t_arrays (
    +  id NUMBER(7) not null primary key,
    +  string_array u_string_array,
    +  number_array u_number_array
    +)
    +
    +CREATE OR REPLACE FUNCTION f_arrays (in_array u_string_array)
    +RETURN u_string_array</sql>
    +
    +							<p>Note that it becomes clear immediately, that a mapping from
    +								U_STRING_ARRAY to String[] is obvious. But a mapping from String[] to
    +								U_STRING_ARRAY is not. These are the generated
    +								<reference class="org.jooq.ArrayRecord" /> and other
    +								artefacts in Oracle: </p>
    +
    +<java>public class UStringArrayRecord extends ArrayRecordImpl&lt;String&gt; {  // [...]
    +public class UNumberArrayRecord extends ArrayRecordImpl&lt;Integer&gt; { // [...]
    +
    +public class TArrays extends UpdatableTableImpl&lt;TArraysRecord&gt; {
    +    public static final TableField&lt;TArraysRecord, UStringArrayRecord&gt; STRING_ARRAY = // [...]
    +    public static final TableField&lt;TArraysRecord, UNumberArrayRecord&gt; NUMBER_ARRAY = // [...]
    +}
    +
    +public final class Functions {
    +    public static UStringArrayRecord fArrays3(Connection connection, UStringArrayRecord inArray) { // [...]
    +    public static Field&lt;UStringArrayRecord&gt; fArrays3(UStringArrayRecord inArray) {                 // [...]
    +    public static Field&lt;UStringArrayRecord&gt; fArrays3(Field&lt;UStringArrayRecord&gt; inArray) {          // [...]
    +}</java>
    +
    +
    +							<h2>ENUM types</h2>
    +							<p>True ENUM types are a rare species in the RDBMS world. Currently,
    +								MySQL and Postgres are the only RDMBS supported by jOOQ, that provide
    +								ENUM types. </p>
    +
    +							<ul>
    +								<li>In MySQL, an ENUM type is declared directly upon a column. It cannot be reused as a type. See the <a href="http://dev.mysql.com/doc/refman/5.5/en/enum.html">documentation.</a> </li>
    +								<li>In Postgres, the ENUM type is declared independently and can be reused among tables, functions, etc. See the <a href="http://www.postgresql.org/docs/9.0/interactive/datatype-enum.html">documentation.</a> </li>
    +								<li>Other RDMBS know about "ENUM constraints", such as the Oracle CHECK constraint. These are not true ENUMS, however. jOOQ refrains from using their information for source code generation </li>
    +							</ul>
    +
    +							<p>Some examples: </p>
    +<sql>-- An example enum type
    +CREATE TYPE u_book_status AS ENUM ('SOLD OUT', 'ON STOCK', 'ORDERED')
    +
    +-- An example useage of that enum type
    +CREATE TABLE t_book (
    +  id INTEGER NOT NULL PRIMARY KEY,
    +
    +  -- [...]
    +  status u_book_status
    +)</sql>
    +
    +							<p>The above Postgres ENUM type will be generated as </p>
    +<java>public enum UBookStatus implements EnumType {
    +    ORDERED("ORDERED"),
    +    ON_STOCK("ON STOCK"),
    +    SOLD_OUT("SOLD OUT");
    +
    +    // [...]
    +}</java>
    +							<p>Intuitively, the generated classes for the T_BOOK table in Postgres would look like this: </p>
    +<sql>// The meta-model class
    +public class TBook extends UpdatableTableImpl&lt;TBookRecord&gt; {
    +
    +    // The TableField STATUS binds &lt;T&gt; to UBookStatus
    +    public static final TableField&lt;TBookRecord, UBookStatus&gt; STATUS = // [...]
    +
    +    // [...]
    +}
    +
    +// The record class
    +public class TBookRecord extends UpdatableRecordImpl&lt;TBookRecord&gt; {
    +
    +    // Corresponding to the Table meta-model, also setters and getters
    +    // deal with the generated UBookStatus
    +    public void setStatus(UBookStatus value) { // [...]
    +    public UBookStatus getStatus() {           // [...]
    +}</sql>
    +
    +							<p>Note that jOOQ allows you to simulate ENUM types where this makes
    +								sense in your data model. See the section on
    +								<reference id="MasterData" title="master data"/> for more
    +								details. </p>
    +						</content>
    +					</section>
    +
    +
    +					<section id="SEQUENCE">
    +						<title>Sequences</title>
    +						<slogan>
    +							jOOQ also generates convenience artefacts for sequences, where this is
    +							supported: DB2, Derby, H2, HSQLDB, Oracle, Postgres, and more.
    +						</slogan>
    +						<content>
    +							<h2>Sequences as a source for identity values</h2>
    +							<p> Sequences implement the
    +							<reference class="org.jooq.Sequence"/> interface, providing essentially this functionality:</p>
    +
    +<java>// Get a field for the CURRVAL sequence property
    +Field&lt;T&gt; currval();
    +
    +// Get a field for the NEXTVAL sequence property
    +Field&lt;T&gt; nextval();</java>
    +							<p>So if you have a sequence like this in Oracle: </p>
    +							<sql>CREATE SEQUENCE s_author_id</sql>
    +							<p>This is what jOOQ will generate: </p>
    +<java>public final class Sequences {
    +
    +    // A static sequence instance
    +    public static final Sequence&lt;BigInteger&gt; S_AUTHOR_ID = // [...]
    +}</java>
    +
    +							<p>Which you can use in a select statement as such: </p>
    +<java>Field&lt;BigInteger&gt; s = Sequences.S_AUTHOR_ID.nextval();
    +BigInteger nextID   = create.select(s).fetchOne(s);</java>
    +
    +							<p>Or directly fetch currval() and nextval() from the sequence using the Factory: </p>
    +<java>BigInteger currval = create.currval(Sequences.S_AUTHOR_ID);
    +BigInteger nextval = create.nextval(Sequences.S_AUTHOR_ID);</java>
    +						</content>
    +					</section>
    +				</sections>
    +			</section>
    +
    +
    +
    +
    +			<section id="DSL">
    +				<title>DSL or fluent API. Where SQL meets Java</title>
    +				<slogan>
    +					In these sections you will learn about how jOOQ makes SQL available to
    +					Java as if Java natively supported SQL
    +				</slogan>
    +				<content>
    +					<h2>Overview</h2>
    +					<p>jOOQ ships with its own DSL (or
    +						<a href="http://en.wikipedia.org/wiki/Domain-specific_language" title="Domain Specific Language">Domain Specific Language</a>) that
    +						simulates SQL as good as possible in Java. This means, that you can
    +						write SQL statements almost as if Java natively supported that syntax
    +						just like .NET's C# does with <a href="http://msdn.microsoft.com/en-us/library/bb425822.aspx">LINQ to SQL.</a></p>
    +
    +					<p>Here is an example to show you what that means. When you want to write a query like this in SQL: </p>
    +					<code-pair>
    +<sql>-- Select all books by authors born after 1920,
    +-- named "Paulo" from a catalogue:
    +SELECT *
    +  FROM t_author a
    +  JOIN t_book b ON a.id = b.author_id
    + WHERE a.year_of_birth &gt; 1920
    +   AND a.first_name = 'Paulo'
    + ORDER BY b.title</sql>
    +<java>Result&lt;Record&gt; result =
    +create.select()
    +      .from(T_AUTHOR.as("a"))
    +      .join(T_BOOK.as("b")).on(a.ID.equal(b.AUTHOR_ID))
    +      .where(a.YEAR_OF_BIRTH.greaterThan(1920)
    +      .and(a.FIRST_NAME.equal("Paulo")))
    +      .orderBy(b.TITLE)
    +      .fetch();</java></code-pair>
    +
    +					<p>
    +						You couldn't come much closer to SQL itself in Java, without re-writing the compiler.
    +						We'll see how the aliasing works later in the section about
    +						<reference id="ALIAS" title="aliasing"/>
    +					</p>
    +				</content>
    +
    +
    +				<sections>
    +					<section id="SELECT">
    +						<title>Complete SELECT syntax</title>
    +						<slogan>
    +							A SELECT statement is more than just the R in CRUD. It allows for
    +							transforming your relational data into any other form using concepts
    +							such as equi-join, semi-join, anti-join, outer-join and much more. jOOQ
    +							helps you think in precisely those relational concepts.
    +						</slogan>
    +						<content>
    +							<h2>SELECT from anonymous or ad-hoc types</h2>
    +							<p>When you don't just perform CRUD (i.e. SELECT * FROM your_table WHERE ID = ?),
    +							you're usually generating new types using custom projections. With jOOQ, this is
    +							as intuitive, as if using SQL directly. A more or less complete example of the "standard" SQL syntax, plus
    +							some extensions, is provided by a query like this:
    +							</p>
    +
    +<sql>-- get all authors' first and last names, and the number
    +-- of books they've written in German, if they have written
    +-- more than five books in German in the last three years
    +-- (from 2011), and sort those authors by last names
    +-- limiting results to the second and third row, locking
    +-- the rows for a subsequent update... whew!
    +
    +  SELECT T_AUTHOR.FIRST_NAME, T_AUTHOR.LAST_NAME, COUNT(*)
    +    FROM T_AUTHOR
    +    JOIN T_BOOK ON T_AUTHOR.ID = T_BOOK.AUTHOR_ID
    +   WHERE T_BOOK.LANGUAGE = 'DE'
    +     AND T_BOOK.PUBLISHED > '2008-01-01'
    +GROUP BY T_AUTHOR.FIRST_NAME, T_AUTHOR.LAST_NAME
    +  HAVING COUNT(*) > 5
    +ORDER BY T_AUTHOR.LAST_NAME ASC NULLS FIRST
    +   LIMIT 2
    +  OFFSET 1
    +     FOR UPDATE</sql>
    +
    +     						<p>So that's daily business. How to do it with jOOQ: When you first create a SELECT statement using the Factory's select() methods </p>
    +<java>SelectFromStep select(Field&lt;?&gt;... fields);
    +
    +// Example:
    +create.select(T_AUTHOR.FIRST_NAME, T_AUTHOR.LAST_NAME, count());</java>
    +
    +							<p>
    +								jOOQ will return an "intermediary" type to you, representing the
    +								SELECT statement about to be created (by the way, check out the
    +								section on <reference id="FUNCTIONS" title="aggregate operators"/>
    +								 to learn more about the COUNT(*)
    +								function). This type is the
    +								<reference class="org.jooq.SelectFromStep"/>.
    +								When you have a reference
    +								to this type, you may add a FROM clause, although that clause is
    +								optional. This is reflected by the fact, that the SelectFromStep type
    +								extends
    +								<reference class="org.jooq.SelectJoinStep"/>,
    +								which allows for adding the subsequent
    +								clauses. Let's say you do decide to add a FROM clause, then you can
    +								use this method for instance:
    +							</p>
    +<java>SelectJoinStep from(TableLike&lt;?&gt;... table);
    +
    +// The example, continued:
    +create.select(T_AUTHOR.FIRST_NAME, T_AUTHOR.LAST_NAME, count())
    +      .from(T_AUTHOR);</java>
    +
    +							<p>After adding the table-like structures (mostly just Tables) to
    +								select from, you may optionally choose to add a JOIN clause, as the
    +								type returned by jOOQ is the step where you can add JOINs. Again,
    +								adding these clauses is optional, as the
    +								<reference class="org.jooq.SelectJoinStep"/> extends
    +								<reference class="org.jooq.SelectWhereStep"/>.
    +								But let's say we add a JOIN: </p>
    +<java>// These join types are supported
    +SelectOnStep                    join(Table&lt;?&gt; table);
    +SelectOnStep           leftOuterJoin(Table&lt;?&gt; table);
    +SelectOnStep          rightOuterJoin(Table&lt;?&gt; table);
    +SelectOnStep           fullOuterJoin(Table&lt;?&gt; table);
    +SelectJoinStep             crossJoin(Table&lt;?&gt; table);
    +SelectJoinStep           naturalJoin(Table&lt;?&gt; table);
    +SelectJoinStep  naturalLeftOuterJoin(Table&lt;?&gt; table);
    +SelectJoinStep naturalRightOuterJoin(Table&lt;?&gt; table);
    +
    +// The example, continued:
    +create.select(T_AUTHOR.FIRST_NAME, T_AUTHOR.LAST_NAME, count())
    +      .from(T_AUTHOR)
    +      .join(T_BOOK);</java>
    +
    +							<p>Now, if you do add a JOIN clause, you have to specify the JOIN .. ON
    +								condition before you can add more clauses. That's not an optional step
    +								for some JOIN types. This is reflected by the fact that
    +								<reference class="org.jooq.SelectOnStep"/>
    +								is a top-level interface. </p>
    +
    +<java><![CDATA[// These join conditions are supported
    +SelectJoinStep    on(Condition... conditions);
    +SelectJoinStep onKey();
    +SelectJoinStep onKey(TableField<?, ?>... keyFields);
    +SelectJoinStep onKey(ForeignKey<?, ?> key);
    +SelectJoinStep using(Field<?>... fields);
    +
    +// The example, continued:
    +create.select(T_AUTHOR.FIRST_NAME, T_AUTHOR.LAST_NAME, count())
    +      .from(T_AUTHOR)
    +      .join(T_BOOK).on(T_BOOK.AUTHOR_ID.equal(T_AUTHOR.ID));]]></java>
    +
    +							<p>
    +								See the section about
    +								<reference id="CONDITION" title="conditions"/>
    +								to learn more about the many ways
    +								to create Conditions in jOOQ.
    +								See also the section about
    +								<reference id="TABLESOURCE" title="table sources"/>
    +								to learn more about the various ways of creating JOIN
    +								expressions
    +							</p>
    +							<p>
    +								Now we're half way through. As you can
    +								see above, we're back to the SelectJoinStep. This means, we can
    +								re-iterate and add another JOIN clause, just like in SQL. Or we go on
    +								to the next step, adding conditions in the
    +								<reference class="org.jooq.SelectWhereStep"/>: </p>
    +<java>SelectConditionStep where(Condition... conditions);
    +
    +// The example, continued:
    +create.select(TAuthor.FIRST_NAME, TAuthor.LAST_NAME, count())
    +      .from(T_AUTHOR)
    +      .join(T_BOOK).on(T_BOOK.AUTHOR_ID.equal(T_AUTHOR.ID))
    +      .where(T_BOOK.LANGUAGE.equal("DE"));</java>
    +
    +							<p>Now the returned type
    +								<reference class="org.jooq.SelectConditionStep"/> is a special one, where
    +								you can add more conditions to the already existing WHERE clause.
    +								Every time you add a condition, you will return to that
    +								SelectConditionStep, as the number of additional conditions is
    +								unlimited. Note that of course you can also just add a single combined
    +								condition, if that is more readable or suitable for your use-case.
    +								Here's how we add another condition: </p>
    +<java>SelectConditionStep and(Condition condition);
    +
    +// The example, continued:
    +create.select(T_AUTHOR.FIRST_NAME, T_AUTHOR.LAST_NAME, count())
    +      .from(T_AUTHOR)
    +      .join(T_BOOK).on(T_BOOK.AUTHOR_ID.equal(T_AUTHOR.ID))
    +      .where(T_BOOK.LANGUAGE.equal("DE"))
    +      .and(T_BOOK.PUBLISHED.greaterThan(parseDate('2008-01-01')));</java>
    +
    +							<p>Let's assume we have that method parseDate() creating a
    +								<reference class="java.sql.Date"/> for us.
    +								Then we'll continue adding the GROUP BY clause
    +							</p>
    +<java>SelectHavingStep groupBy(Field&lt;?&gt;... fields);
    +
    +// The example, continued:
    +create.select(T_AUTHOR.FIRST_NAME, T_AUTHOR.LAST_NAME, count())
    +      .from(T_AUTHOR)
    +      .join(T_BOOK).on(T_BOOK.AUTHOR_ID.equal(T_AUTHOR.ID))
    +      .where(T_BOOK.LANGUAGE.equal("DE"))
    +      .and(T_BOOK.PUBLISHED.greaterThan(parseDate('2008-01-01')))
    +      .groupBy(T_AUTHOR.FIRST_NAME, T_AUTHOR.LAST_NAME);</java>
    +
    +      						<p>and the HAVING clause: </p>
    +<java>SelectOrderByStep having(Condition... conditions);
    +
    +// The example, continued:
    +create.select(T_AUTHOR.FIRST_NAME, T_AUTHOR.LAST_NAME, count())
    +      .from(T_AUTHOR)
    +      .join(T_BOOK).on(T_BOOK.AUTHOR_ID.equal(T_AUTHOR.ID))
    +      .where(T_BOOK.LANGUAGE.equal("DE"))
    +      .and(T_BOOK.PUBLISHED.greaterThan(parseDate('2008-01-01')))
    +      .groupBy(T_AUTHOR.FIRST_NAME, T_AUTHOR.LAST_NAME)
    +      .having(count().greaterThan(5));</java>
    +
    +							<p>and the ORDER BY clause. Some RDBMS support NULLS FIRST and NULLS
    +								LAST extensions to the ORDER BY clause. If this is not supported by
    +								the RDBMS, then the behaviour is simulated with an additional CASE
    +								WHEN ... IS NULL THEN 1 ELSE 0 END clause. </p>
    +<java>SelectLimitStep orderBy(Field&lt;?&gt;... fields);
    +
    +// The example, continued:
    +create.select(T_AUTHOR.FIRST_NAME, T_AUTHOR.LAST_NAME, count())
    +      .from(T_AUTHOR)
    +      .join(T_BOOK).on(T_BOOK.AUTHOR_ID.equal(T_AUTHOR.ID))
    +      .where(T_BOOK.LANGUAGE.equal("DE"))
    +      .and(T_BOOK.PUBLISHED.greaterThan(parseDate('2008-01-01')))
    +      .groupBy(T_AUTHOR.FIRST_NAME, T_AUTHOR.LAST_NAME)
    +      .having(count().greaterThan(5))
    +      .orderBy(T_AUTHOR.LAST_NAME.asc().nullsFirst());</java>
    +
    +							<p>and finally the LIMIT clause. Most dialects have a means of limiting
    +								the number of result records (except Oracle). Some even support having
    +								an OFFSET to the LIMIT clause. Even if your RDBMS does not support the
    +								full LIMIT ... OFFSET ... (or TOP ... START AT ..., or FETCH FIRST ... ROWS ONLY, etc)
    +								clause, jOOQ will simulate the LIMIT clause using nested selects and filtering on
    +								ROWNUM (for Oracle), or on ROW_NUMBER() (for DB2 and SQL
    +								Server): </p>
    +<java>SelectFinalStep limit(int offset, int numberOfRows);
    +
    +// The example, continued:
    +create.select(T_AUTHOR.FIRST_NAME, T_AUTHOR.LAST_NAME, count())
    +      .from(T_AUTHOR)
    +      .join(T_BOOK).on(T_BOOK.AUTHOR_ID.equal(T_AUTHOR.ID))
    +      .where(T_BOOK.LANGUAGE.equal("DE"))
    +      .and(T_BOOK.PUBLISHED.greaterThan(parseDate('2008-01-01')))
    +      .groupBy(T_AUTHOR.FIRST_NAME, T_AUTHOR.LAST_NAME)
    +      .having(count().greaterThan(5))
    +      .orderBy(T_AUTHOR.LAST_NAME.asc().nullsFirst())
    +      .limit(1, 2);</java>
    +
    +							<p>In the final step, there are some proprietary extensions available
    +								only in some RDBMS. One of those extensions are the FOR UPDATE
    +								(supported in most RDBMS) and FOR SHARE clauses (supported only in
    +								MySQL and Postgres): </p>
    +<java>SelectFinalStep forUpdate();
    +
    +// The example, continued:
    +create.select(T_AUTHOR.FIRST_NAME, T_AUTHOR.LAST_NAME, count())
    +      .from(T_AUTHOR)
    +      .join(T_BOOK).on(T_BOOK.AUTHOR_ID.equal(T_AUTHOR.ID))
    +      .where(T_BOOK.LANGUAGE.equal("DE"))
    +      .and(T_BOOK.PUBLISHED.greaterThan(parseDate('2008-01-01')))
    +      .groupBy(T_AUTHOR.FIRST_NAME, T_AUTHOR.LAST_NAME)
    +      .having(count().greaterThan(5))
    +      .orderBy(T_AUTHOR.LAST_NAME.asc().nullsFirst())
    +      .limit(1, 2)
    +      .forUpdate();</java>
    +
    +							<p>
    +								Now the most relevant super-type of the object we have just created is
    +								<reference class="org.jooq.Select"/>.
    +								This type can be reused in various expressions such as in the
    +								<reference id="UNION" title="UNION and other set operations"/>,
    +								<reference id="EXISTS" title="Nested select statements using the EXISTS operator"/>,
    +								etc. If you just want to execute this select
    +								statement, you can choose any of these methods as discussed in the
    +								section about the <reference id="ResultQuery" title="ResultQuery"/>:
    +							</p>
    +
    +<java>// Just execute the query.
    +int execute();
    +
    +// Execute the query and retrieve the results
    +Result&lt;Record&gt; fetch();
    +
    +// Execute the query and retrieve the first Record
    +Record fetchAny();
    +
    +// Execute the query and retrieve the single Record
    +// An Exception is thrown if more records were available
    +Record fetchOne();
    +
    +// [...]</java>
    +
    +
    +							<h2>SELECT from single physical tables</h2>
    +							<p>A very similar, but limited API is available, if you want to select from single
    +								physical tables in order to retrieve TableRecords or even
    +								UpdatableRecords (see also the manual's section on
    +								<reference id="Query" title="SelectQuery vs SimpleSelectQuery"/>).
    +								The decision, which type of select to create is
    +								already made at the very first step, when you create the SELECT
    +								statement with the Factory: </p>
    +
    +							<java>public &lt;R extends Record&gt; SimpleSelectWhereStep&lt;R&gt; selectFrom(Table&lt;R&gt; table);</java>
    +							<p>As you can see, there is no way to further restrict/project the selected
    +								fields. This just selects all known TableFields in the supplied Table,
    +								and it also binds &lt;R extends Record&gt; to your Table's associated
    +								Record. An example of such a Query would then be: </p>
    +<java>TBook book = create.selectFrom(T_BOOK)
    +                   .where(TBook.LANGUAGE.equal("DE"))
    +                   .orderBy(TBook.TITLE)
    +                   .fetchAny();</java>
    +						</content>
    +					</section>
    +
    +
    +					<section id="TABLESOURCE">
    +						<title>Table sources</title>
    +						<slogan>
    +							When OLTP selects/updates/inserts/deletes records in single tables, OLAP is all about
    +							creating custom table sources or ad-hoc row types
    +						</slogan>
    +						<content>
    +							<h2>Create complex and nested table sources with jOOQ</h2>
    +							<p>
    +								In the <a href="http://en.wikipedia.org/wiki/Relational_model" title="The Relational Data Model">relational data model</a>,
    +								there are many operations performed on entities, i.e. tables in order to join them together
    +								before applying predicates, renaming operations and projections. Apart from the convenience
    +								methods for joining table sources in the
    +								<reference id="SELECT" title="manual's section about the full SELECT syntax"/>,
    +								the <reference class="org.jooq.Table" title="Table"/> type itself provides a
    +								rich API for creating joined table sources. See an extract of the Table API:
    +							</p>
    +<java><![CDATA[// These are the various supported JOIN clauses. These JOIN types
    +// are followed by an additional ON / ON KEY / USING clause
    +TableOnStep join(TableLike<?> table);
    +TableOnStep join(String sql);
    +TableOnStep join(String sql, Object... bindings);
    +
    +// All other JOIN types are equally overloaded with "String sql" convenience methods...
    +TableOnStep  leftOuterJoin(TableLike<?> table);
    +TableOnStep rightOuterJoin(TableLike<?> table);
    +TableOnStep  fullOuterJoin(TableLike<?> table);
    +
    +// These JOIN types don't take any additional clause
    +Table<Record>             crossJoin(TableLike<?> table);
    +Table<Record>           naturalJoin(TableLike<?> table);
    +Table<Record>  naturalLeftOuterJoin(TableLike<?> table);
    +Table<Record> naturalRightOuterJoin(TableLike<?> table);
    +
    +// Oracle and SQL Server also know PIVOT / UNPIVOT clauses for transforming a
    +// table into another one using a list of PIVOT values
    +PivotForStep pivot(Field<?>... aggregateFunctions);
    +PivotForStep pivot(Collection<? extends Field<?>> aggregateFunctions);
    +
    +// Relational division can be applied to a table, transforming it into a
    +// "quotient" using an intuitive syntax
    +DivideByOnStep divideBy(Table<?> divisor);]]></java>
    +
    +							<p>
    +								The <reference class="org.jooq.TableOnStep" title="TableOnStep"/> type
    +								contains methods for constructing the ON / ON KEY / USING clauses
    +							</p>
    +
    +<java><![CDATA[// The ON clause is the most widely used JOIN condition. Provide arbitrary conditions as arguments
    +TableOnConditionStep on(Condition... conditions);
    +TableOnConditionStep on(String sql);
    +TableOnConditionStep on(String sql, Object... bindings);
    +
    +// The USING clause is also part of the SQL standard. Use this if joined tables contain identical field names.
    +// The USING clause is simulated in databases that do not support it.
    +Table<Record> using(Field<?>... fields);
    +Table<Record> using(Collection<? extends Field<?>> fields);
    +
    +// The ON KEY clause is a "synthetic" clause that does not exist in any SQL dialect. jOOQ usually has all
    +// foreign key relationship information to dynamically render "ON [ condition ... ]" clauses
    +TableOnConditionStep onKey() throws DataAccessException;
    +TableOnConditionStep onKey(TableField<?, ?>... keyFields) throws DataAccessException;
    +TableOnConditionStep onKey(ForeignKey<?, ?> key);]]></java>
    +
    +							<ul>
    +							<li>
    +								For more details about the PIVOT clause, see the
    +								<reference id="PIVOT" title="manual's section about the Oracle PIVOT syntax"/>
    +							</li>
    +							<li>
    +								For more details about the DIVIDE BY clause, see the
    +								<reference id="DIVISION" title="manual's section about the relational division syntax"/>
    +							</li>
    +							</ul>
    +						</content>
    +					</section>
    +
    +
    +					<section id="CONDITION">
    +						<title>Conditions</title>
    +						<slogan>
    +							The creation of conditions is the part of any database abstraction that
    +							attracts the most attention.
    +						</slogan>
    +						<content>
    +							<h2>Conditions are the SELECT's core business</h2>
    +							<p>In your average application, you will typically have 3-4 SQL queries
    +								that have quite a long list of predicates (and possibly JOINs), such
    +								that you start to lose track over the overall boolean expression that
    +								you're trying to apply.</p>
    +							<p>In jOOQ, most Conditions can be created and combined almost as
    +								easily as in SQL itself. The two main participants for creating
    +								Conditions are the <reference class="org.jooq.Field" title="Field"/>,
    +								which is typically a participant of a
    +								condition, and the <reference class="org.jooq.Condition" title="Condition"/>
    +								itself: </p>
    +<java>public interface Condition {
    +    Condition and(Condition other);
    +    Condition and(String sql);
    +    Condition and(String sql, Object... bindings);
    +    Condition andNot(Condition other);
    +    Condition andExists(Select&lt;?&gt; select);
    +    Condition andNotExists(Select&lt;?&gt; select);
    +    Condition or(Condition other);
    +    Condition or(String sql);
    +    Condition or(String sql, Object... bindings);
    +    Condition orNot(Condition other);
    +    Condition orExists(Select&lt;?&gt; select);
    +    Condition orNotExists(Select&lt;?&gt; select);
    +    Condition not();
    +}</java>
    +
    +							<p>The above example describes the essence of boolean logic in jOOQ. As
    +								soon as you have a Condition object, you can connect that to other
    +								Conditions, which will then give you a combined condition with exactly
    +								the same properties. There are also convenience methods to create an
    +								EXISTS clause and connect it to an existing condition. In order to
    +								create a new Condition you are going to depart from a Field in most
    +								cases. Here are some important API elements in the Field interface:
    +							</p>
    +
    +<java><![CDATA[public interface Field<T> {
    +    Condition isNull();
    +    Condition isNotNull();
    +    Condition like(T value);
    +    Condition notLike(T value);
    +    Condition in(T... values);
    +    Condition in(Select<?> query);
    +    Condition notIn(Collection<T> values);
    +    Condition notIn(T... values);
    +    Condition notIn(Select<?> query);
    +    Condition in(Collection<T> values);
    +    Condition between(T minValue, T maxValue);
    +    Condition contains(T value);
    +    Condition contains(Field<T> value);
    +    Condition equal(T value);
    +    Condition equal(Field<T> field);
    +    Condition equal(Select<?> query);
    +    Condition equalAny(Select<?> query);
    +    Condition equalAny(T... array);
    +    Condition equalAny(Field<T[]> array);
    +    Condition equalAll(Select<?> query);
    +    Condition equalAll(T... array);
    +    Condition equalAll(Field<T[]> array);
    +    Condition equalIgnoreCase(String value);
    +    Condition equalIgnoreCase(Field<String> value);
    +    Condition notEqual(T value);
    +    Condition notEqual(Field<T> field);
    +    Condition notEqual(Select<?> query);
    +    Condition notEqualAny(Select<?> query);
    +    Condition notEqualAny(T... array);
    +    Condition notEqualAny(Field<T[]> array);
    +    Condition notEqualAll(Select<?> query);
    +    Condition notEqualAll(T... array);
    +    Condition notEqualAll(Field<T[]> array);
    +
    +    // Subselects, ANY and ALL quantifiers are also supported for these:
    +    Condition lessThan(T value);
    +    Condition lessOrEqual(T value);
    +    Condition greaterThan(T value);
    +    Condition greaterOrEqual(T value);
    +}]]></java>
    +
    +							<p>As you see in the partially displayed API above, you can compare a
    +								Field either with other Fields, with constant values (which is a
    +								shortcut for calling Factory.val(T value)), or with a nested SELECT
    +								statement. See some more
    +								<reference id="NESTED" title="Examples of nested SELECTs"/>. </p>
    +							<p>Combining the API of Field and Condition you can express complex predicates like this: </p>
    +
    +<sql>(T_BOOK.TYPE_CODE IN (1, 2, 5, 8, 13, 21)       AND T_BOOK.LANGUAGE = 'DE') OR
    +(T_BOOK.TYPE_CODE IN (2, 3, 5, 7, 11, 13)       AND T_BOOK.LANGUAGE = 'FR') OR
    +(T_BOOK.TYPE_CODE IN (SELECT CODE FROM T_TYPES) AND T_BOOK.LANGUAGE = 'EN')</sql>
    +
    +							<p>Just write: </p>
    +<java>T_BOOK.TYPE_CODE.in(1, 2, 5, 8, 13, 21)                       .and(T_BOOK.LANGUAGE.equal("DE")).or(
    +T_BOOK.TYPE_CODE.in(2, 3, 5, 7, 11, 13)                       .and(T_BOOK.LANGUAGE.equal("FR")).or(
    +T_BOOK.TYPE_CODE.in(create.select(T_TYPES.CODE).from(T_TYPES)).and(T_BOOK.LANGUAGE.equal("EN"))));</java>
    +						</content>
    +					</section>
    +
    +
    +					<section id="ALIAS">
    +						<title>Aliased tables and fields</title>
    +						<slogan>
    +							Aliasing is at the core of SQL and relational algebra. When you join
    +							the same entity multiple times, you can rename it to distinguish the
    +							various meanings of the same entity
    +						</slogan>
    +						<content>
    +							<h2>Aliasing Tables</h2>
    +							<p>A typical example of what you might want to do in SQL is this: </p>
    +<sql>SELECT a.ID, b.ID
    +  FROM T_AUTHOR a
    +  JOIN T_BOOK b on a.ID = b.AUTHOR_ID</sql>
    +
    +  							<p>
    +  								In this example, we are aliasing Tables, calling them a and b.
    +  								The way aliasing works depends on how you generate your meta model
    +  								using jooq-codegen (see the manual's section about
    +  								<reference id="TABLE" title="generating tables"/>). Things become
    +  								simpler when you choose the instance/dynamic model, instead of the
    +  								static one.
    +  								Here is how you can create Table aliases in jOOQ:
    +  							</p>
    +
    +<java>Table&lt;TBookRecord&gt; book = T_BOOK.as("b");
    +Table&lt;TAuthorRecord&gt; author = T_AUTHOR.as("a");
    +
    +// If you choose not to generate a static meta model, this becomes even better
    +TBook book = T_BOOK.as("b");
    +TAuthor author = T_AUTHOR.as("a");</java>
    +
    +							<p>Now, if you want to reference any fields from those Tables, you may
    +								not use the original T_BOOK or T_AUTHOR meta-model objects anymore.
    +								Instead, you have to get the fields from the new book and author Table
    +								aliases: </p>
    +
    +<java><![CDATA[Field<Integer> bookID = book.getField(TBook.ID);
    +Field<Integer> authorID = author.getField(TAuthor.ID);
    +
    +// Or with the instance field model:
    +Field<Integer> bookID = book.ID;
    +Field<Integer> authorID = author.ID;]]></java>
    +
    +							<p>
    +								So this is how the above SQL statement would read in jOOQ:
    +							</p>
    +<java>create.select(authorID, bookID)
    +      .from(author)
    +      .join(book).on(authorID.equal(book.getField(T_BOOK.AUTHOR_ID)));
    +
    +// Or with the instance field model:
    +create.select(author.ID, book.ID)
    +      .from(author)
    +      .join(book).on(author.ID.equal(book.AUTHOR_ID))</java>
    +
    +
    +      						<h3>Aliasing nested selects as tables</h3>
    +							<p>There is an interesting, more advanced example of how you can select
    +								from an aliased nested select in the manual's section about
    +								<reference id="NESTED" title="nested selects"/></p>
    +
    +
    +							<h2>Aliasing fields</h2>
    +							<p>Fields can also be aliased independently from Tables. Most often,
    +								this is done when using functions or aggregate operators. Here is an
    +								example: </p>
    +<sql>  SELECT FIRST_NAME || ' ' || LAST_NAME author, COUNT(*) books
    +    FROM T_AUTHOR
    +    JOIN T_BOOK ON T_AUTHOR.ID = AUTHOR_ID
    +GROUP BY FIRST_NAME, LAST_NAME;</sql>
    +							<p>Here is how it's done with jOOQ: </p>
    +<java>Record record = create.select(
    +         concat(T_AUTHOR.FIRST_NAME, " ", T_AUTHOR.LAST_NAME).as("author"),
    +         count().as("books"))
    +      .from(T_AUTHOR)
    +      .join(T_BOOK).on(T_AUTHOR.ID.equal(T_BOOK.AUTHOR_ID))
    +      .groupBy(T_AUTHOR.FIRST_NAME, T_AUTHOR.LAST_NAME).fetchAny();</java>
    +      						<p>When you alias Fields like above, you can access those Fields' values using the alias name: </p>
    +<java>System.out.println("Author : " + record.getValue("author"));
    +System.out.println("Books  : " + record.getValue("books"));</java>
    +						</content>
    +					</section>
    +
    +
    +					<section id="IN">
    +						<title>Nested SELECT using the IN operator</title>
    +						<slogan>
    +							Set equal operations are very common when you want to select multiple
    +							records. The IN operator can also be used for semi-joins, though
    +						</slogan>
    +						<content>
    +							<h2>The IN operator for use in semi-joins or anti-joins</h2>
    +							<p>
    +								In addition to a list of constant values, the IN operator in
    +								<reference class="org.jooq.Field"/>
    +								also supports a
    +								<reference class="org.jooq.Select"/> as an argument.
    +								This can be any type of select as
    +								discussed in the manual's section about
    +								<reference id="Query" title="Query types"/>.
    +								However, you must
    +								ensure yourself, that the provided Select will only select a single
    +								Field.
    +							</p>
    +							<p>Let's say you want to select books by authors born in 1920. Of
    +								course, this is possible with a plain JOIN as well, but let's say we
    +								want to use the IN operator. Then you have two possibilities: </p>
    +
    +							<code-pair>
    +<sql>SELECT *
    +  FROM T_BOOK
    + WHERE T_BOOK.AUTHOR_ID IN (
    +           SELECT ID FROM T_AUTHOR
    +            WHERE T_AUTHOR.BORN = 1920)
    +
    +-- OR:
    +
    +SELECT T_BOOK.*
    +  FROM T_BOOK
    +  JOIN T_AUTHOR ON (T_BOOK.AUTHOR_ID = T_AUTHOR.ID
    +                AND T_AUTHOR.BORN    = 1920)</sql>
    +<java>create.select()
    +      .from(T_BOOK)
    +      .where(T_BOOK.AUTHOR_ID.in(
    +          create.select(T_AUTHOR.ID).from(T_AUTHOR)
    +                .where(T_AUTHOR.BORN.equal(1920))));
    +
    +// OR:
    +
    +create.select(T_BOOK.getFields())
    +      .from(T_BOOK)
    +      .join(T_AUTHOR).on(T_BOOK.AUTHOR_ID.equal(TAuthor.ID)
    +                     .and(T_AUTHOR.BORN.equal(1920)));</java></code-pair>
    +						</content>
    +					</section>
    +
    +
    +					<section id="EXISTS">
    +						<title>Nested SELECT using the EXISTS operator</title>
    +						<slogan>The EXISTS operator is a bit different from all other SQL
    +							elements, as it cannot really be applied to any object in a DSL.
    +						</slogan>
    +						<content>
    +							<h2>The EXISTS operator for use in semi-joins or anti-joins</h2>
    +							<p>The EXISTS operator is rather independent and can stand any place
    +								where there may be a new condition: </p>
    +							<ul>
    +								<li>It may be placed right after a WHERE keyword </li>
    +								<li>It may be the right-hand-side of a boolean operator</li>
    +								<li>It may be placed right after a ON or HAVING keyword (although, this is less likely to be done...) </li>
    +							</ul>
    +
    +							<p>This is reflected by the fact that an EXISTS clause is usually
    +								created directly from the Factory: </p>
    +
    +<java>Condition exists(Select&lt;?&gt; query);
    +Condition notExists(Select&lt;?&gt; query);</java>
    +
    +							<p>When you create such a Condition, it can then be connected to any
    +								other condition using AND, OR operators (see also the manual's section
    +								on
    +								<reference id="CONDITION" title="Conditions"/>). There are also quite a few
    +								convenience methods, where they might be useful. For instance in the
    +								<reference class="org.jooq.Condition"/> itself: </p>
    +
    +<java>Condition andExists(Select&lt;?&gt; select);
    +Condition andNotExists(Select&lt;?&gt; select);
    +Condition orExists(Select&lt;?&gt; select);
    +Condition orNotExists(Select&lt;?&gt; select);</java>
    +
    +							<p>Or in the <reference class="org.jooq.SelectWhereStep"/>:</p>
    +
    +<java>SelectConditionStep whereExists(Select&lt;?&gt; select);
    +SelectConditionStep whereNotExists(Select&lt;?&gt; select);</java>
    +
    +							<p>Or in the <reference class="org.jooq.SelectConditionStep"/>: </p>
    +
    +<java>SelectConditionStep andExists(Select&lt;?&gt; select);
    +SelectConditionStep andNotExists(Select&lt;?&gt; select);
    +SelectConditionStep orExists(Select&lt;?&gt; select);
    +SelectConditionStep orNotExists(Select&lt;?&gt; select);</java>
    +
    +							<p>An example of how to use it is quickly given. Get all authors that haven't written any books: </p>
    +							<code-pair>
    +<sql>SELECT *
    +  FROM T_AUTHOR
    + WHERE NOT EXISTS (SELECT 1
    +                     FROM T_BOOK
    +                    WHERE T_BOOK.AUTHOR_ID = T_AUTHOR.ID)</sql>
    +<java>create.select()
    +      .from(T_AUTHOR)
    +      .whereNotExists(create.selectOne()
    +            .from(T_BOOK)
    +            .where(T_BOOK.AUTHOR_ID.equal(T_AUTHOR.ID)));</java>
    +							</code-pair>
    +						</content>
    +					</section>
    +
    +
    +					<section id="NESTED">
    +						<title>Other types of nested SELECT</title>
    +						<slogan>Apart from the most common IN and EXISTS clauses that encourage
    +							the use of nested selects, SQL knows a few more syntaxes to make use
    +							of such constructs. </slogan>
    +						<content>
    +							<h2>Comparison with single-field SELECT clause</h2>
    +							<p>If you can ensure that a nested SELECT will only return one Record
    +								with one Field, then you can test for equality. This is how it is done
    +								in SQL: </p>
    +
    +							<code-pair>
    +<sql>SELECT *
    +  FROM T_BOOK
    + WHERE T_BOOK.AUTHOR_ID = (
    + 		SELECT ID
    +          FROM T_AUTHOR
    +         WHERE LAST_NAME = 'Orwell')</sql>
    +<java>create.select()
    +      .from(T_BOOK)
    +      .where(T_BOOK.AUTHOR_ID.equal(create
    +             .select(T_AUTHOR.ID)
    +             .from(T_AUTHOR)
    +             .where(T_AUTHOR.LAST_NAME.equal("Orwell"))));</java>
    +                            </code-pair>
    +
    +                            <p>More examples like the above can be guessed from the
    +                            <reference class="org.jooq.Field"/> API, as documented in the manual's section about
    +                            <reference id="CONDITION" title="Conditions"/>. For the = operator, the available comparisons are these:</p>
    +
    +<java>Condition equal(Select&lt;?&gt; query);
    +Condition equalAny(Select&lt;?&gt; query);
    +Condition equalAll(Select&lt;?&gt; query);</java>
    +
    +
    +                            <h2>Selecting from a SELECT - SELECT acts as a Table</h2>
    +							<p>Often, you need to nest a SELECT statement simply because SQL is
    +								limited in power. For instance, if you want to find out which author
    +								has written the most books, then you cannot do this: </p>
    +
    +<sql>  SELECT AUTHOR_ID, count(*) books
    +    FROM T_BOOK
    +GROUP BY AUTHOR_ID
    +ORDER BY books DESC</sql>
    +
    +							<p>Instead, you have to do this (or something similar). For jOOQ, this
    +								is an excellent example, combining various SQL features into a single
    +								statement. Here's how to do it: </p>
    +
    +							<code-pair>
    +<sql>SELECT nested.* FROM (
    +      SELECT AUTHOR_ID, count(*) books
    +        FROM T_BOOK
    +    GROUP BY AUTHOR_ID
    +) nested
    +ORDER BY nested.books DESC
    +
    +
    +</sql>
    +<java>Table&lt;Record&gt; nested =
    +    create.select(T_BOOK.AUTHOR_ID, count().as("books"))
    +          .from(T_BOOK)
    +          .groupBy(T_BOOK.AUTHOR_ID).asTable("nested");
    +
    +create.select(nested.getFields())
    +      .from(nested)
    +      .orderBy(nested.getField("books"));</java>
    +							</code-pair>
    +
    +							<p>You'll notice how some verbosity seems inevitable when you combine nested SELECT statements with aliasing. </p>
    +
    +	                    	<h2>Selecting a SELECT - SELECT acts as a Field</h2>
    +							<p>Now SQL is even more powerful than that. You can also have SELECT
    +								statements, wherever you can have Fields. It get's harder and harder
    +								to find good examples, because there is always an easier way to
    +								express the same thing. But why not just count the number of books the
    +								really hard way? :-) But then again, maybe you want to take advantage
    +								of <a href="http://lukaseder.wordpress.com/2011/09/02/oracle-scalar-subquery-caching/" title="Oracle Scalar Subquery Caching with jOOQ">Oracle Scalar Subquery Caching</a></p>
    +
    +							<code-pair>
    +<sql>  SELECT LAST_NAME, (
    +      SELECT COUNT(*)
    +       FROM T_BOOK
    +      WHERE T_BOOK.AUTHOR_ID = T_AUTHOR.ID) books
    +    FROM T_AUTHOR
    +ORDER BY books DESC
    +
    +
    +
    +</sql>
    +<java>// The type of books cannot be inferred from the Select&lt;?&gt;
    +Field&lt;Object&gt; books =
    +    create.selectCount()
    +          .from(T_BOOK)
    +          .where(T_BOOK.AUTHOR_ID.equal(T_AUTHOR.ID))
    +          .asField("books");
    +create.select(T_AUTHOR.ID, books)
    +      .from(T_AUTHOR)
    +      .orderBy(books, T_AUTHOR.ID));</java>
    +							</code-pair>
    +                    	</content>
    +					</section>
    +
    +
    +					<section id="UNION">
    +						<title>UNION and other set operations</title>
    +						<slogan>Unions, differences and intersections are vital set operations taken from set theory.</slogan>
    +						<content>
    +							<h2>jOOQ's set operation API</h2>
    +							<p>The
    +								<reference class="org.jooq.Select"/> API directly supports the UNION
    +								syntax for all types of Select as discussed in the manual's section about
    +								<reference id="Query" title="Queries and Query subtypes"/>.
    +								It consists of these methods: </p>
    +
    +<java>public interface Select&lt;R extends Record&gt; {
    +    Select&lt;R&gt; union(Select&lt;R&gt; select);
    +    Select&lt;R&gt; unionAll(Select&lt;R&gt; select);
    +    Select&lt;R&gt; except(Select&lt;R&gt; select);
    +    Select&lt;R&gt; intersect(Select&lt;R&gt; select);
    +}</java>
    +
    +							<p>Hence, this is how you can write a simple UNION with jOOQ:</p>
    +							<code-pair>
    +<sql>SELECT TITLE
    +  FROM T_BOOK
    + WHERE PUBLISHED_IN &gt; 1945
    +UNION
    +SELECT TITLE
    +  FROM T_BOOK
    + WHERE AUTHOR_ID = 1</sql>
    +<java>create.select(TBook.TITLE)
    +      .from(T_BOOK)
    +      .where(T_BOOK.PUBLISHED_IN.greaterThan(1945))
    +      .union(
    +create.select(T_BOOK.TITLE)
    +      .from(T_BOOK)
    +      .where(T_BOOK.AUTHOR_ID.equal(1)));</java>
    +							</code-pair>
    +
    +							<h2>Nested UNIONs</h2>
    +							<p>In some SQL dialects, you can arbitrarily nest UNIONs to several
    +								levels. Be aware, though, that SQLite, Derby and MySQL have serious
    +								syntax limitations. jOOQ tries to render correct UNION SQL statements,
    +								but unfortunately, you can create situations that will cause syntax
    +								errors in the aforementioned dialects. </p>
    +
    +							<p>An example of advanced UNION usage is the following statement in jOOQ: </p>
    +<java>// Create a UNION of several types of books
    +Select&lt;?&gt; union =
    +    create.select(T_BOOK.TITLE, T_BOOK.AUTHOR_ID).from(T_BOOK).where(T_BOOK.PUBLISHED_IN.greaterThan(1945)).union(
    +    create.select(T_BOOK.TITLE, T_BOOK.AUTHOR_ID).from(T_BOOK).where(T_BOOK.AUTHOR_ID.equal(1)));
    +
    +// Now, re-use the above UNION and order it by author
    +create.select(union.getField(T_BOOK.TITLE))
    +      .from(union)
    +      .orderBy(union.getField(T_BOOK.AUTHOR_ID).descending());</java>
    +
    +							<p>This example does not seem surprising, when you have read the
    +								previous chapters about
    +								<reference id="NESTED" title="nested SELECT statements"/>.
    +								But when you check
    +								out the rendered SQL: </p>
    +
    +<sql>-- alias_38173 is an example of a generated alias,
    +-- generated by jOOQ for union queries
    +SELECT alias_38173.TITLE FROM (
    +  SELECT T_BOOK.TITLE, T_BOOK.AUTHOR_ID FROM T_BOOK WHERE T_BOOK.PUBLISHED_IN > 1945
    +  UNION
    +  SELECT T_BOOK.TITLE, T_BOOK.AUTHOR_ID FROM T_BOOK WHERE T_BOOK.AUTHOR_ID = 1
    +) alias_38173
    +ORDER BY alias_38173.AUTHOR_ID DESC</sql>
    +
    +							<p>You can see that jOOQ takes care of many syntax pitfalls, when
    +								you're not used to the various dialects' unique requirements. The
    +								above automatic aliasing was added in order to be compliant with
    +								MySQL's requirements about aliasing nested selects. </p>
    +
    +							<h2>Several UNIONs</h2>
    +							<p>It is no problem either for you to create SQL statements with several unions. Just write: </p>
    +<java>Select&lt;?&gt; part1;
    +Select&lt;?&gt; part2;
    +Select&lt;?&gt; part3;
    +Select&lt;?&gt; part4;
    +
    +// [...]
    +
    +part1.union(part2).union(part3).union(part4);</java>
    +
    +							<h2>UNION and the ORDER BY clause</h2>
    +							<p>
    +								Strictly speaking, in SQL, you cannot order a subselect that is part
    +								of a UNION operation. You can only order the whole set. In set theory,
    +								or relational algebra, it wouldn't make sense to order subselects
    +								anyway, as a set operation cannot guarantee order correctness. Often,
    +								you still want to do it, because you apply a LIMIT to every subselect.
    +								Let's say, you want to find the employees with the highest salary in
    +								every department in Postgres syntax:
    +							</p>
    +							<code-pair>
    +<sql>SELECT * FROM (
    +  SELECT * FROM emp WHERE dept = 'IT'
    +  ORDER BY salary LIMIT 1
    +) UNION (
    +  SELECT * FROM emp WHERE dept = 'Marketing'
    +  ORDER BY salary LIMIT 1
    +) UNION (
    +  SELECT * FROM emp WHERE dept = 'R&amp;D'
    +  ORDER BY salary LIMIT 1
    +)</sql>
    +<java>create.selectFrom(EMP).where(DEPT.equal("IT"))
    +      .orderBy(SALARY).limit(1)
    +      .union(
    +create.selectFrom(EMP).where(DEPT.equal("Marketing"))
    +      .orderBy(SALARY).limit(1))
    +      .union(
    +create.selectFrom(EMP).where(DEPT.equal("R&amp;D")
    +      .orderBy(SALARY).limit(1)))
    +
    +
    +</java>
    +							</code-pair>
    +
    +							<p>There is a subtle difference between the above two queries.
    +								In SQL, every UNION subselect is in fact a
    +							<reference id="NESTED" title="nested SELECT"/>, wrapped in parentheses.
    +							In this example, the notion of "nested SELECT" and "subselect" are slightly
    +							different.</p>
    +						</content>
    +					</section>
    +
    +
    +					<section id="FUNCTIONS">
    +						<title>Functions and aggregate operators</title>
    +						<slogan>
    +							Highly effective SQL cannot do without functions. Operations on
    +							VARCHAR, DATE, and NUMERIC types in GROUP BY or ORDER BY clauses allow
    +							for very elegant queries.
    +						</slogan>
    +						<content>
    +							<h2>jOOQ's strategy for supporting vendor-specific functions</h2>
    +							<p>jOOQ allows you to access native functions from your RDBMS. jOOQ
    +								follows two strategies: </p>
    +							<ul>
    +								<li>Implement all SQL-92, SQL:1999, SQL:2003, and SQL:2008 standard
    +									functions, aggregate operators, and window functions. Standard
    +									functions could be
    +									<a href="http://oreilly.com/catalog/sqlnut/chapter/ch04.html" title="O'Reilly listing of SQL-92 standard functions and deviations thereof">these functions as listed by O'Reilly</a>. </li>
    +								<li>Take the most useful of vendor-specific functions and simulate
    +									them for other RDBMS, where they may not be supported. An example for
    +									this are
    +									<a href="http://psoug.org/reference/analytic_functions.html" title="An example listing of Oracle Analytic Functions">Oracle Analytic Functions</a></li>
    +							</ul>
    +
    +							<h2>Functions </h2>
    +							<p>These are just a few functions in the Factory, so you get the idea: </p>
    +
    +<java><![CDATA[Field<String> rpad(Field<String> field, Field<? extends Number> length);
    +Field<String> rpad(Field<String> field, int length);
    +Field<String> rpad(Field<String> field, Field<? extends Number> length, Field<String> c);
    +Field<String> rpad(Field<String> field, int length, char c);
    +Field<String> lpad(Field<String> field, Field<? extends Number> length);
    +Field<String> lpad(Field<String> field, int length);
    +Field<String> lpad(Field<String> field, Field<? extends Number> length, Field<String> c);
    +Field<String> lpad(Field<String> field, int length, char c);
    +Field<String> replace(Field<String> field, Field<String> search);
    +Field<String> replace(Field<String> field, String search);
    +Field<String> replace(Field<String> field, Field<String> search, Field<String> replace);
    +Field<String> replace(Field<String> field, String search, String replace);
    +Field<Integer> position(Field<String> field, String search);
    +Field<Integer> position(Field<String> field, Field<String> search);]]></java>
    +
    +							<h2>Aggregate operators</h2>
    +							<p>Aggregate operators work just like functions, even if they have a
    +								slightly different semantics. Here are some examples from
    +								Factory: </p>
    +
    +<java><![CDATA[// Every-day, SQL standard aggregate functions
    +AggregateFunction<Integer> count(Field<?> field);
    +AggregateFunction<T> max(Field<T> field);
    +AggregateFunction<T> min(Field<T> field);
    +AggregateFunction<BigDecimal> sum(Field<? extends Number> field);
    +AggregateFunction<BigDecimal> avg(Field<? extends Number> field);
    +
    +
    +// DISTINCT keyword in aggregate functions
    +AggregateFunction<Integer> countDistinct(Field<?> field);
    +AggregateFunction<T> maxDistinct(Field<T> field);
    +AggregateFunction<T> minDistinct(Field<T> field);
    +AggregateFunction<BigDecimal> sumDistinct(Field<? extends Number> field);
    +AggregateFunction<BigDecimal> avgDistinct(Field<? extends Number> field);
    +
    +// String aggregate functions
    +AggregateFunction<String> groupConcat(Field<?> field);
    +AggregateFunction<String> groupConcatDistinct(Field<?> field);
    +OrderedAggregateFunction<String> listAgg(Field<?> field);
    +OrderedAggregateFunction<String> listAgg(Field<?> field, String separator);
    +
    +// Statistical functions
    +AggregateFunction<BigDecimal> median(Field<? extends Number> field);
    +AggregateFunction<BigDecimal> stddevPop(Field<? extends Number> field);
    +AggregateFunction<BigDecimal> stddevSamp(Field<? extends Number> field);
    +AggregateFunction<BigDecimal> varPop(Field<? extends Number> field);
    +AggregateFunction<BigDecimal> varSamp(Field<? extends Number> field);
    +]]></java>
    +
    +							<p>A typical example of how to use an aggregate operator is when
    +								generating the next key on insertion of an ID. When you want to
    +								achieve something like this </p>
    +
    +							<code-pair>
    +<sql>SELECT MAX(ID) + 1 AS next_id
    +  FROM T_AUTHOR</sql>
    +<java>create.select(max(ID).add(1).as("next_id"))
    +      .from(T_AUTHOR);</java>
    +							</code-pair>
    +
    +							<p>See also the section about
    +								<reference id="ARITHMETIC" title="Arithmetic operations"/></p>
    +
    +							<h2>Window functions</h2>
    +							<p>Most major RDBMS support the concept of window functions. jOOQ knows
    +								of implementations in DB2, Oracle, Postgres, SQL Server, and Sybase
    +								SQL Anywhere,
    +								and supports most of their specific syntaxes. Window functions can be
    +								used for things like calculating a "running total". The following example
    +								fetches transactions and the running total for every transaction going
    +								back to the beginning of the transaction table (ordered by booked_at).
    +
    +								They are accessible from the previously seen AggregateFunction type using
    +								the over() method:
    +							</p>
    +
    +							<code-pair>
    +<sql>SELECT booked_at, amount,
    +   SUM(amount) OVER (PARTITION BY 1
    +                     ORDER BY booked_at
    +                     ROWS BETWEEN UNBOUNDED PRECEDING
    +                     AND CURRENT ROW) AS total
    +  FROM transactions</sql>
    +<java>create.select(t.BOOKED_AT, t.AMOUNT,
    +         sum(t.AMOUNT).over().partitionByOne()
    +                      .orderBy(t.BOOKED_AT)
    +                      .rowsBetweenUnboundedPreceding()
    +                      .andCurrentRow().as("total")
    +      .from(TRANSACTIONS.as("t"));</java>
    +							</code-pair>
    +						</content>
    +					</section>
    +
    +
    +					<section id="PROCEDURES">
    +						<title>Stored procedures and functions</title>
    +						<slogan>
    +							The full power of your database's vendor-specific extensions can hardly
    +							be obtained outside of the
    +							database itself. Most modern RDBMS support
    +							their own procedural language. With jOOQ, stored procedures are
    +							integrated easily
    +						</slogan>
    +						<content>
    +							<h2>Interaction with stored procedures</h2>
    +							<p>The main way to interact with your RDBMS's stored procedures and
    +								functions is by using the generated artefacts. See the manual's
    +								section about
    +								<reference id="PROCEDURE" title="generating procedures and packages"/>
    +							    for more details
    +								about the source code generation for stored procedures and functions.
    +							</p>
    +
    +							<h2>Stored functions</h2>
    +							<p>When it comes to DSL, stored functions can be very handy in SQL
    +								statements as well. Every stored function (this also applies to
    +								FUNCTIONS in Oracle PACKAGES) can generate a Field representing a call
    +								to that function. Typically, if you have this type of function in your
    +								database: </p>
    +
    +<sql>CREATE OR REPLACE FUNCTION f_author_exists (author_name VARCHAR2)
    +RETURN NUMBER;</sql>
    +
    +							<p>Then convenience methods like these are generated: </p>
    +<java>// Create a field representing a function with another field as parameter
    +public static Field&lt;BigDecimal&gt; fAuthorExists(Field&lt;String&gt; authorName) { // [...]
    +
    +// Create a field representing a function with a constant parameter
    +public static Field&lt;BigDecimal&gt; fAuthorExists(String authorName) { // [...]</java>
    +
    +							<p>Let's say, you have a T_PERSON table with persons' names in it, and
    +								you want to know whether there exists an author with precisely that
    +								name, you can reuse the above stored function in a SQL query: </p>
    +
    +							<code-pair>
    +<sql>SELECT T_PERSON.NAME, F_AUTHOR_EXISTS(T_PERSON.NAME)
    +  FROM T_PERSON
    +
    +-- OR:
    +
    +SELECT T_PERSON.NAME
    +  FROM T_PERSON
    + WHERE F_AUTHOR_EXISTS(T_PERSON.NAME) = 1</sql>
    + <java>create.select(T_PERSON.NAME, Functions.fAuthorExists(T_PERSON.NAME))
    +      .from(T_PERSON);
    +
    +// OR: Note, the static import of Functions.*
    +create.select(T_PERSON.NAME)
    +      .from(T_PERSON)
    +      .where(fAuthorExists(T_PERSON.NAME));</java>
    +							</code-pair>
    +
    +							<h2>Stored procedures</h2>
    +							<p>The notion of a stored procedure is implemented in most RDBMS by the
    +								fact, that the procedure has no RETURN VALUE (like void in Java), but
    +								it may well have OUT parameters. Since there is not a standard way how
    +								to embed stored procedures in SQL, they cannot be integrated in jOOQ's
    +								DSL either. </p>
    +						</content>
    +					</section>
    +
    +
    +					<section id="ARITHMETIC">
    +						<title>Arithmetic operations and concatenation</title>
    +						<slogan>
    +							Your database can do the math for you. Most arithmetic operations are
    +							supported, but also string concatenation can be very efficient if done
    +							already in the database.
    +						</slogan>
    +						<content>
    +							<h2>Mathematical operations</h2>
    +							<p>Arithmetic operations are implemented just like
    +								<reference id="FUNCTIONS" title="functions"/>, with
    +								similar limitations as far as type restrictions are concerned. You can
    +								use any of these operators: </p>
    +
    +							<config>  +  -  *  /  %</config>
    +
    +							<p>In order to express a SQL query like this one: </p>
    +							<sql>SELECT ((1 + 2) * (5 - 3) / 2) % 10 FROM DUAL</sql>
    +							<p>You can write something like this in jOOQ: </p>
    +							<java>create.select(create.val(1).add(2).mul(create.val(5).sub(3)).div(2).mod(10));	</java>
    +
    +							<h2>Datetime arithmetic</h2>
    +							<p>jOOQ also supports the Oracle-style syntax for adding days to a Field&lt;? extends java.util.Date&gt; </p>
    +							<code-pair>
    +								<sql>SELECT SYSDATE + 3 FROM DUAL;</sql>
    +								<java>create.select(create.currentTimestamp().add(3));</java>
    +							</code-pair>
    +
    +							<h2>String concatenation</h2>
    +							<p>This is not really an arithmetic expression, but it's still an
    +								expression with operators: The string concatenation. jOOQ
    +								provides you with the Field's concat() method:</p>
    +							<code-pair>
    +<sql>SELECT 'A' || 'B' || 'C' FROM DUAL
    +
    +-- Or in MySQL:
    +SELECT concat('A', 'B', 'C')</sql>
    +<java>&#160;
    +// For all RDBMS, including MySQL:
    +create.select(concat("A", "B", "C"));
    +
    +</java>
    +							</code-pair>
    +						</content>
    +					</section>
    +
    +
    +					<section id="CASE">
    +						<title>The CASE clause</title>
    +						<slogan>
    +							The SQL standard supports a CASE clause, which works very similar to
    +							Java's if-else statement. In complex SQL, this is very useful for value
    +							mapping
    +						</slogan>
    +						<content>
    +							<h2>The two flavours of CASE</h2>
    +							<p>The CASE clause is part of the standard SQL syntax. While some RDBMS
    +								also offer an IF clause, or a DECODE function, you can always rely on
    +								the two types of CASE syntax: </p>
    +
    +							<code-pair>
    +<sql>CASE WHEN T_AUTHOR.FIRST_NAME = 'Paulo'  THEN 'brazilian'
    +     WHEN T_AUTHOR.FIRST_NAME = 'George' THEN 'english'
    +                                         ELSE 'unknown'
    +END
    +
    +-- OR:
    +
    +CASE T_AUTHOR.FIRST_NAME WHEN 'Paulo'  THEN 'brazilian'
    +                         WHEN 'George' THEN 'english'
    +                                       ELSE 'unknown'
    +END </sql>
    +<java>create.decode()
    +      .when(T_AUTHOR.FIRST_NAME.equal("Paulo"), "brazilian")
    +      .when(T_AUTHOR.FIRST_NAME.equal("George"), "english")
    +      .otherwise("unknown");
    +
    +// OR:
    +
    +create.decode().value(T_AUTHOR.FIRST_NAME)
    +               .when("Paulo", "brazilian")
    +               .when("George", "english")
    +               .otherwise("unknown");</java>
    +							</code-pair>
    +
    +							<p>
    +								In jOOQ, both syntaxes are supported (although, Derby only knows the
    +								first one, which is more general). Unfortunately, both case and else
    +								are reserved words in Java. jOOQ chose to use decode() from the Oracle
    +								DECODE function, and otherwise(), which means the same as else. Please
    +								note that in the above examples, all values were always constants. You
    +								can of course also use Field instead of the various constants.
    +							</p>
    +							<p>A CASE clause can be used anywhere where you can place a Field. For
    +								instance, you can SELECT the above expression, if you're selecting
    +								from T_AUTHOR: </p>
    +<sql>SELECT T_AUTHOR.FIRST_NAME, [... CASE EXPR ...] AS nationality
    +  FROM T_AUTHOR</sql>
    +
    +
    +  							<h2>CASE clauses in an ORDER BY clause</h2>
    +							<p>Sort indirection is often implemented with a CASE clause of a
    +								SELECT's ORDER BY clause. In SQL, this reads: </p>
    +
    +<sql>SELECT *
    +FROM T_AUTHOR
    +ORDER BY CASE FIRST_NAME WHEN 'Paulo'  THEN 1
    +                         WHEN 'George' THEN 2
    +                                       ELSE null
    +         END</sql>
    +
    +							<p>This will order your authors such that all 'Paulo' come first, then
    +								all 'George' and everyone else last (depending on your RDBMS' handling
    +								of NULL values in sorting). This is a very common task, such that jOOQ
    +								simplifies its use: </p>
    +<java>create.select()
    +      .from(T_AUTHOR)
    +      .orderBy(T_AUTHOR.FIRST_NAME.sortAsc("Paulo", "George"))
    +      .execute();</java>
    +						</content>
    +					</section>
    +
    +
    +					<section id="CAST">
    +						<title>Type casting</title>
    +						<slogan>
    +							Many RDBMS allow for implicit or explicit conversion between types.
    +							Apart from true type conversion, this is most often done with casting.
    +						</slogan>
    +						<content>
    +							<h2>Enforcing a specific type when you need it</h2>
    +							<p>jOOQ's source code generator tries to find the most accurate type
    +								mapping between your vendor-specific data types and a matching Java
    +								type. For instance, most VARCHAR, CHAR, CLOB types will map to String.
    +								Most BINARY, BYTEA, BLOB types will map to byte[]. NUMERIC types will
    +								default to java.math.BigDecimal, but can also be any of
    +								java.math.BigInteger, Long, Integer, Short, Byte, Double, Float. </p>
    +							<p>Sometimes, this automatic mapping might not be what you needed, or
    +								jOOQ cannot know the type of a field (because you created it from a
    +								<reference id="NESTED" title="nested select"/>).
    +								In those cases you would write SQL type CASTs like
    +								this: </p>
    +<sql>-- Let's say, your Postgres column LAST_NAME was VARCHAR(30)
    +-- Then you could do this:
    +SELECT CAST(T_AUTHOR.LAST_NAME AS TEXT) FROM DUAL</sql>
    +							<p>in jOOQ, you can write something like that: </p>
    +							<java>create.select(TAuthor.LAST_NAME.cast(PostgresDataType.TEXT));</java>
    +							<p>The same thing can be achieved by casting a Field directly to
    +								String.class, as TEXT is the default data type in Postgres to map to
    +								Java's String</p>
    +							<java>create.select(TAuthor.LAST_NAME.cast(String.class));</java>
    +							<p>The complete CAST API in Field consists of these three methods: </p>
    +<java>public interface Field&lt;T&gt; {
    +    &lt;Z&gt; Field&lt;Z&gt; cast(Field&lt;Z&gt; field);
    +    &lt;Z&gt; Field&lt;Z&gt; cast(DataType&lt;Z&gt; type);
    +    &lt;Z&gt; Field&lt;Z&gt; cast(Class&lt;? extends Z&gt; type);
    +}
    +
    +// And additional convenience methods in the Factory:
    +public class Factory {
    +    &lt;T&gt; Field&lt;T&gt; cast(Object object, Field&lt;T&gt; field);
    +    &lt;T&gt; Field&lt;T&gt; cast(Object object, DataType&lt;T&gt; type);
    +    &lt;T&gt; Field&lt;T&gt; cast(Object object, Class&lt;? extends T&gt; type);
    +    &lt;T&gt; Field&lt;T&gt; castNull(Field&lt;T&gt; field);
    +    &lt;T&gt; Field&lt;T&gt; castNull(DataType&lt;T&gt; type);
    +    &lt;T&gt; Field&lt;T&gt; castNull(Class&lt;? extends T&gt; type);
    +}</java>
    +						</content>
    +					</section>
    +
    +
    +					<section id="SQL">
    +						<title>When it's just easier: Plain SQL</title>
    +						<slogan>
    +							jOOQ cannot foresee all possible vendor-specific SQL features for your
    +							database. And sometimes, even jOOQ code becomes too verbose. Then, you
    +							shouldn't hesitate to provide jOOQ with plain SQL, as you'd do with
    +							JDBC
    +						</slogan>
    +						<content>
    +							<h2>Plain SQL in jOOQ</h2>
    +							<p>A DSL is a nice thing to have, it feels "fluent" and "natural",
    +								especially if it models a well-known language, such as SQL. But a DSL
    +								is always expressed in another language (Java in this case), which was
    +								not made for exactly that DSL. If it were, then jOOQ would be
    +								implemented on a compiler-level, similar to Linq in .NET. But it's
    +								not, and so, the DSL is limited. We have seen many functionalities
    +								where the DSL becomes verbose. This can be especially true for: </p>
    +							<ul>
    +								<li><reference id="ALIAS" title="aliasing"/></li>
    +								<li><reference id="NESTED" title="nested selects"/></li>
    +								<li><reference id="ARITHMETIC" title="arithmetic expressions"/></li>
    +								<li><reference id="CAST" title="casting"/></li>
    +							</ul>
    +							<p>You'll probably find other examples. If verbosity scares you off,
    +								don't worry. The verbose use-cases for jOOQ are rather rare, and when
    +								they come up, you do have an option. Just write SQL the way you're
    +								used to! </p>
    +							<p>jOOQ allows you to embed SQL as a String in these contexts: </p>
    +							<ul>
    +								<li>Plain SQL as a condition </li>
    +								<li>Plain SQL as a field </li>
    +								<li>Plain SQL as a function </li>
    +								<li>Plain SQL as a table </li>
    +								<li>Plain SQL as a query </li>
    +							</ul>
    +
    +							<p>To construct artefacts wrapping plain SQL, you should use any of
    +								these methods from the Factory class: </p>
    +
    +<java><![CDATA[// A condition
    +Condition condition(String sql);
    +Condition condition(String sql, Object... bindings);
    +
    +// A field with an unknown data type
    +Field<Object> field(String sql);
    +Field<Object> field(String sql, Object... bindings);
    +
    +// A field with a known data type
    +<T> Field<T> field(String sql, Class<T> type);
    +<T> Field<T> field(String sql, Class<T> type, Object... bindings);
    +<T> Field<T> field(String sql, DataType<T> type);
    +<T> Field<T> field(String sql, DataType<T> type, Object... bindings);
    +
    +// A function
    +<T> Field<T> function(String name, Class<T> type, Field<?>... arguments);
    +<T> Field<T> function(String name, DataType<T> type, Field<?>... arguments);
    +
    +// A table
    +Table<?> table(String sql);
    +Table<?> table(String sql, Object... bindings);
    +
    +// A query without results (update, insert, etc)
    +Query query(String sql);
    +Query query(String sql, Object... bindings);
    +
    +// A query with results
    +ResultQuery<Record> resultQuery(String sql);
    +ResultQuery<Record> resultQuery(String sql, Object... bindings);
    +
    +// A query with results. This is the same as resultQuery(...).fetch();
    +Result<Record> fetch(String sql);
    +Result<Record> fetch(String sql, Object... bindings);]]></java>
    +
    +							<p>Apart from the general factory methods, plain SQL is useful also in
    +								various other contexts. For instance, when adding a .where("a = b")
    +								clause to a query. Hence, there exist several convenience methods
    +								where plain SQL can be inserted usefully. This is an example
    +								displaying all various use-cases in one single query: </p>
    +<java><![CDATA[// You can use your table aliases in plain SQL fields
    +// As long as that will produce syntactically correct SQL
    +Field<?> LAST_NAME    = create.field("a.LAST_NAME");
    +
    +// You can alias your plain SQL fields
    +Field<?> COUNT1       = create.field("count(*) x");
    +
    +// If you know a reasonable Java type for your field, you
    +// can also provide jOOQ with that type
    +Field<Integer> COUNT2 = create.field("count(*) y", Integer.class);
    +
    +       // Use plain SQL as select fields
    +create.select(LAST_NAME, COUNT1, COUNT2)
    +
    +       // Use plain SQL as aliased tables (be aware of syntax!)
    +      .from("t_author a")
    +      .join("t_book b")
    +
    +       // Use plain SQL for conditions both in JOIN and WHERE clauses
    +      .on("a.id = b.author_id")
    +
    +       // Bind a variable in plain SQL
    +      .where("b.title != ?", "Brida")
    +
    +       // Use plain SQL again as fields in GROUP BY and ORDER BY clauses
    +      .groupBy(LAST_NAME)
    +      .orderBy(LAST_NAME);]]></java>
    +
    +							<p>There are some important things to keep in mind when using plain
    +								SQL: </p>
    +							<ul>
    +								<li>jOOQ doesn't know what you're doing. You're on your own again!
    +								</li>
    +								<li>You have to provide something that will be syntactically correct.
    +									If it's not, then jOOQ won't know. Only your JDBC driver or your
    +									RDBMS will detect the syntax error. </li>
    +								<li>You have to provide consistency when you use variable binding. The
    +									number of ? must match the number of variables </li>
    +								<li>Your SQL is inserted into jOOQ queries without further checks.
    +									Hence, jOOQ can't prevent SQL injection. </li>
    +							</ul>
    +						</content>
    +					</section>
    +				</sections>
    +			</section>
    +
    +
    +
    +			<section id="ADVANCED">
    +				<title>Advanced topics</title>
    +				<slogan>In these sections you will learn about advanced concepts that
    +					you might not use every day</slogan>
    +				<content>
    +					<h2>Overview</h2>
    +					<p>This section covers some advanced topics and features that don't fit into any other section. </p>
    +				</content>
    +
    +
    +				<sections>
    +					<section id="MasterData">
    +						<title>Master data generation. Enumeration tables</title>
    +						<slogan>Enumerations are a powerful concept. Unfortunately, almost no
    +							RDBMS supports them, leaving you to create numerous tables for your
    +							enumerated values. But these values are still enumerations!</slogan>
    +						<content>
    +							<h2>Enumeration tables</h2>
    +							<p>Only MySQL and Postgres databases support true ENUM types natively.
    +								Some other RDBMS allow you to map the concept of an ENUM data type to
    +								a CHECK constraint, but those constraints can contain arbitrary SQL.
    +								 With jOOQ, you
    +								can "simulate" ENUM types by declaring a table as a "master data
    +								table" in the configuration. At code-generation time, this table will
    +								be treated specially, and a Java enum type is generated from its data.
    +							</p>
    +
    +							<h2>Configure master data tables</h2>
    +							<p>As previously discussed in the
    +							  <reference id="Configuration" title="configuration and setup"/>
    +							   section, you can configure master data tables as follows: </p>
    +<xml><![CDATA[<!-- These properties can be added to the database element: -->
    +<database>
    +  <masterDataTables>
    +    <masterDataTable>
    +      <!-- The name of a master data table -->
    +      <name>[a table name]</name>
    +
    +      <!-- The column used for enum literals -->
    +      <literal>[a column name]</literal>
    +
    +      <!-- The column used for documentation -->
    +      <description>[a column name]</description>
    +    </masterDataTable>
    +
    +    [ <masterDataTable>...</masterDataTable> ... ]
    +  </masterDataTables>
    + </database>]]></xml>
    +
    +							<p>The results of this will be a Java enum that looks similar to this: </p>
    +<java><![CDATA[public enum TLanguage implements MasterDataType<Integer> {
    +
    +  /**
    +   * English
    +   */
    +  en(1, "en", "English"),
    +
    +  /**
    +   * Deutsch
    +   */
    +  de(2, "de", "Deutsch"),
    +
    +  /**
    +   * Français
    +   */
    +  fr(3, "fr", "Français"),
    +
    +  /**
    +   * null
    +   */
    +  pt(4, "pt", null),
    +  ;
    +
    +  private final Integer id;
    +  private final String cd;
    +  private final String description;
    +
    +  // [ ... constructor and getters for the above properties ]
    +}]]></java>
    +
    +							<p>In the above example, you can see how the configured primary key is
    +								mapped to the id member, the configured literal column is mapped to
    +								the cd member and the configured description member is mapped to the
    +								description member and output as Javadoc. In other words, T_LANGUAGE
    +								is a table with 4 rows and at least three columns. </p>
    +							<p>The general contract (with jOOQ 1.6.2+) is that there must be </p>
    +							<ul>
    +								<li> A single-column primary key column of character or integer type
    +								</li>
    +								<li>An optional unique literal column of character or integer type
    +									(otherwise, the primary key is used as enum literal) </li>
    +								<li>An optional description column of any type </li>
    +							</ul>
    +
    +							<h2>Using MasterDataTypes</h2>
    +							<p>The point of MasterDataTypes in jOOQ is that they behave exactly
    +								like true ENUM types. When the above T_LANGUAGE table is referenced by
    +								T_BOOK, instead of generating foreign key navigation methods and a
    +								LANGUAGE_ID Field&lt;Integer&gt;, a Field&lt;TLanguage&gt; is
    +								generated: </p>
    +
    +<java><![CDATA[public class TBook extends UpdatableTableImpl<TBookRecord> {
    +
    +  // [...]
    +  public static final TableField<TBookRecord, TLanguage> LANGUAGE_ID =
    +                  new TableFieldImpl<TBookRecord, TLanguage>( /* ... */ );
    +}]]></java>
    +
    +							<p>Which can then be used in the TBookRecord directly: </p>
    +<java><![CDATA[public class TBookRecord extends UpdatableRecordImpl<TBookRecord> {
    +
    +  // [...]
    +  public TLanguage getLanguageId() { // [...]
    +  public void setLanguageId(TLanguage value) { // [...]
    +}]]></java>
    +
    +							<h2>When to use MasterDataTypes</h2>
    +							<p>You can use master data types when you're actually mapping master
    +								data to a Java enum. When the underlying table changes frequently,
    +								those updates will not be reflected by the statically generated code.
    +								Also, be aware that it will be difficult to perform actual JOIN
    +								operations on the underlying table with jOOQ, once the master data
    +								type is generated. </p>
    +						</content>
    +					</section>
    +
    +
    +					<section id="CustomTypes">
    +						<title>Custom data types and type conversion</title>
    +						<slogan>
    +							SQL data types are very limited in number. While some databases offer
    +							enumeration types or user-defined types, others only ship with the SQL
    +							standard. Read this chapter to see how to use custom types with jOOQ
    +						</slogan>
    +						<content>
    +							<h2>Your custom type and its associated Converter</h2>
    +							<p>
    +								When using a custom type in jOOQ, you need to let jOOQ know about
    +								its associated <reference class="org.jooq.Converter"/>.
    +								A converter essentially has two generic type parameters:
    +							</p>
    +							<ul>
    +								<li>&lt;U&gt;: The user-defined Java type. This could be <reference class="java.util.GregorianCalendar"/>, for instance.</li>
    +								<li>&lt;T&gt;: The database / SQL type. This could be <reference class="java.sql.Timestamp"/>, for instance.</li>
    +							</ul>
    +							<p>
    +								The above conversion implies that you may want to use a GregorianCalendar for
    +								SQL timestamps, rather than the timestamp type itself. You could then write
    +								a Converter like this:
    +							</p>
    +
    +<java><![CDATA[package com.example;
    +
    +import java.sql.Timestamp;
    +import java.util.Calendar;
    +import java.util.GregorianCalendar;
    +
    +import org.jooq.Converter;
    +
    +// Bind T to Timestamp and U to Gregorian calendar, here
    +public class CalendarConverter implements Converter<Timestamp, GregorianCalendar> {
    +
    +    // Provide jOOQ with Class<?> objects of <U> and <T>. These are used by
    +    // jOOQ to discover your converter based on your custom type
    +    // --------------------------------------------------------------------
    +    @Override
    +    public Class<Timestamp> fromType() {
    +        return Timestamp.class;
    +    }
    +
    +    @Override
    +    public Class<GregorianCalendar> toType() {
    +        return GregorianCalendar.class;
    +    }
    +
    +    // Implement the type conversion methods. Convert your user-defined type
    +    // "from" the SQL type when reading "from" the database, or "to" the SQL
    +    // type when writing "to" the database.
    +    @Override
    +    public GregorianCalendar from(Timestamp databaseObject) {
    +        GregorianCalendar calendar = (GregorianCalendar) Calendar.getInstance();
    +        calendar.setTimeInMillis(databaseObject.getTime());
    +        return calendar;
    +    }
    +
    +    @Override
    +    public Timestamp to(GregorianCalendar userObject) {
    +        return new Timestamp(userObject.getTime().getTime());
    +    }
    +}
    +]]></java>
    +
    +							<p>
    +								Such a Converter can now be used in various places of the jOOQ
    +								API, especially when reading data from the database:
    +							</p>
    +
    +<java><![CDATA[List<GregorianCalendar> result =
    +create.select(T_AUTHOR.DATE_OF_BIRTH)
    +      .from(T_AUTHOR)
    +      .fetch(0, new CalendarConverter());]]></java>
    +
    +      						<h3>Using Converters in generated code</h3>
    +      						<p>
    +								A more common use-case, however, is to let jOOQ know about custom
    +								types at code generation time. Use the following configuration elements
    +								to specify, that you'd like to use GregorianCalendar for all database
    +								fields that start with DATE_OF_
    +      						</p>
    +
    +<xml><![CDATA[<database>
    +  <!-- First, register your custom types here -->
    +  <customTypes>
    +    <customType>
    +      <!-- Specify the fully-qualified class name of your custom type -->
    +      <name>java.util.GregorianCalendar</name>
    +
    +      <!-- Associate that custom type with your converter. Note, a
    +           custom type can only have one converter in jOOQ -->
    +      <converter>com.example.CalendarConverter</converter>
    +    </customType>
    +  </customTypes>
    +
    +  <!-- Then, associate custom types with database columns -->
    +  <forcedTypes>
    +    <forcedType>
    +      <!-- Specify again he fully-qualified class name of your custom type -->
    +      <name>java.util.GregorianCalendar</name>
    +
    +      <!-- Add a list of comma-separated regular expressions matching columns -->
    +      <expressions>.*\.DATE_OF_.*</expressions>
    +    </forcedType>
    +  </forcedTypes>
    +</database>]]></xml>
    +
    +                            <p>
    +                            	The above configuration will lead to T_AUTHOR.DATE_OF_BIRTH
    +                            	being generated like this:
    +                            </p>
    +
    +<java>public class TAuthor extends UpdatableTableImpl&lt;TAuthorRecord&gt; {
    +
    +    // [...]
    +    public final TableField&lt;TAuthorRecord, GregorianCalendar&gt; DATE_OF_BIRTH =    // [...]
    +    // [...]
    +
    +}</java>
    +
    +                            <p>
    +                            	This means that the bound of &lt;T&gt; will be GregorianCalendar,
    +                            	wherever you reference DATE_OF_BIRTH. jOOQ will use your custom
    +                            	converter when binding variables and when fetching data from
    +                            	<reference class="java.util.ResultSet"/>:
    +                            </p>
    +
    +<java><![CDATA[// Get all date of births of authors born after 1980
    +List<GregorianCalendar> result =
    +create.selectFrom(T_AUTHOR)
    +      .where(T_AUTHOR.DATE_OF_BIRTH.greaterThan(new GregorianCalendar(1980, 0, 1)))
    +      .fetch(T_AUTHOR.DATE_OF_BIRTH);]]></java>
    +
    +      						<p>
    +      						    Read more about advanced code generation configuration in
    +      						    <reference id="AdvancedConfiguration" title="the manual's section about advanced code generation configuration"/>.
    +      						</p>
    +
    +      						<h3>Using Converters for enum types</h3>
    +      						<p>
    +      							Java's Enum types can be very useful in SQL too.
    +      							Some databases support enumeration types natively (MySQL, Postgres).
    +      							In other cases, you can use the above custom type configuration
    +      							also to provide jOOQ with Converters for your custom Enum types.
    +      							Instead of implementing <reference class="org.jooq.Converter"/>,
    +      							you may choose to extend <reference class="org.jooq.impl.EnumConverter"/>
    +      							instead, which provides some enum-specific default behaviour.
    +      						</p>
    +						</content>
    +					</section>
    +
    +
    +					<section id="SchemaMapping">
    +						<title>Mapping generated schemata and tables</title>
    +						<slogan>
    +							Sometimes, you cannot control productive schema names, because your
    +							application is deployed on a shared host, and you only get one schema
    +							to work with.
    +						</slogan>
    +						<content>
    +							<h2>Mapping your DEV schema to a productive environment</h2>
    +							<p>You may wish to design your database in a way that you have several
    +								instances of your schema. This is useful when you want to cleanly
    +								separate data belonging to several customers / organisation units /
    +								branches / users and put each of those entities' data in a separate
    +								database or schema. </p>
    +							<p>In our T_AUTHOR example this would mean that you provide a book
    +								reference database to several companies, such as My Book World and
    +								Books R Us. In that case, you'll probably have a schema setup like
    +								this: </p>
    +							<ul>
    +								<li>DEV: Your development schema. This will be the schema that you
    +									base code generation upon, with jOOQ </li>
    +								<li>MY_BOOK_WORLD: The schema instance for My Book World </li>
    +								<li>BOOKS_R_US: The schema instance for Books R Us </li>
    +							</ul>
    +
    +
    +							<h2>Mapping DEV to MY_BOOK_WORLD with jOOQ</h2>
    +							<p>When a user from My Book World logs in, you want them to access the
    +								MY_BOOK_WORLD schema using classes generated from DEV. This can be
    +								achieved with the
    +								<reference class="org.jooq.conf.RenderMapping"/>
    +								class, that you can equip your Factory's settings
    +								with. Take the following example: </p>
    +
    +<java>Settings settings = new Settings()
    +    .withRenderMapping(new RenderMapping()
    +    .withSchemata(
    +        new MappedSchema().withInput("DEV")
    +                          .withOutput("MY_BOOK_WORLD")));
    +
    +// Add the settings to the factory
    +Factory create = new Factory(connection, SQLDialect.ORACLE, settings);
    +
    +// Run queries with the "mapped" factory
    +create.selectFrom(T_AUTHOR).fetch();</java>
    +
    +							<p>The query executed with a Factory equipped with the above mapping
    +								will in fact produce this SQL statement: </p>
    +							<sql>SELECT * FROM MY_BOOK_WORLD.T_AUTHOR</sql>
    +							<p>Even if T_AUTHOR was generated from DEV. </p>
    +
    +							<h2>Mapping several schemata</h2>
    +							<p>Your development database may not be restricted to hold only one DEV
    +								schema. You may also have a LOG schema and a MASTER schema. Let's say
    +								the MASTER schema is shared among all customers, but each customer has
    +								their own LOG schema instance. Then you can enhance your RenderMapping
    +								like this (e.g. using an XML configuration file): </p>
    +
    +<xml><![CDATA[<settings xmlns="http://www.jooq.org/xsd/jooq-runtime-2.1.0.xsd">
    +  <renderMapping>
    +    <schemata>
    +      <schema>
    +        <input>DEV</input>
    +        <output>MY_BOOK_WORLD</output>
    +      </schema>
    +      <schema>
    +        <input>LOG</input>
    +        <output>MY_BOOK_WORLD_LOG</output>
    +      </schema>
    +    </schemata>
    +  </renderMapping>
    +</settings>]]></xml>
    +
    +                            <p>Note, you can load the above XML file like this:</p>
    +
    +<java>Settings settings = JAXB.unmarshal(new File("jooq-runtime.xml"), Settings.class);</java>
    +
    +							<p>This will map generated classes from DEV to MY_BOOK_WORLD, from LOG
    +								to MY_BOOK_WORLD_LOG, but leave the MASTER schema alone. Whenever you
    +								want to change your mapping configuration, you will have to create a
    +								new Factory</p>
    +
    +
    +							<h2>Using a default schema</h2>
    +							<p>Another option to switch schema names is to use a default schema for
    +								the Factory's underlying Connection. Many RDBMS support a USE or SET
    +								SCHEMA command, which you can call like this: </p>
    +
    +<java>// Set the default schema
    +Schema MY_BOOK_WORLD = ...
    +create.use(MY_BOOK_WORLD);
    +
    +// Run queries with factory having a default schema
    +create.selectFrom(T_AUTHOR).fetch();</java>
    +							<p>Queries generated from the above Factory will produce this kind of SQL statement: </p>
    +
    +<sql>-- the schema name is omitted from all SQL constructs.
    +SELECT * FROM T_AUTHOR</sql>
    +
    +
    +							<h2>Mapping of tables</h2>
    +							<p>Not only schemata can be mapped, but also tables. If you are not the
    +								owner of the database your application connects to, you might need to
    +								install your schema with some sort of prefix to every table. In our
    +								examples, this might mean that you will have to map DEV.T_AUTHOR to
    +								something MY_BOOK_WORLD.MY_APP__T_AUTHOR, where MY_APP__ is a prefix
    +								applied to all of your tables. This can be achieved by creating the
    +								following mapping: </p>
    +
    +<java>Settings settings = new Settings()
    +    .withRenderMapping(new RenderMapping()
    +    .withSchemata(
    +        new MappedSchema().withInput("DEV")
    +                          .withOutput("MY_BOOK_WORLD")
    +                          .withTables(
    +         new MappedTable().withInput("T_AUTHOR")
    +                          .withOutput("MY_APP__T_AUTHOR"))));
    +
    +// Add the settings to the factory
    +Factory create = new Factory(connection, SQLDialect.ORACLE, settings);
    +
    +// Run queries with the "mapped" factory
    +create.selectFrom(T_AUTHOR).fetch();</java>
    +
    +							<p>The query executed with a Factory equipped with the above mapping will in fact produce this SQL statement: </p>
    +<sql>SELECT * FROM MY_BOOK_WORLD.MY_APP__T_AUTHOR</sql>
    +
    +							<h2>Mapping at code generation time</h2>
    +							<p>
    +								Note that you can also hard-wire schema mapping in generated artefacts
    +								at code generation time, e.g. when you have 5 developers with their own
    +								dedicated developer databases, and a common integration database. In the
    +								code generation configuration, you would then write.
    +							</p>
    +<xml><![CDATA[<schemata>
    +  <schema>
    +    <!-- Use this as the developer's schema: -->
    +    <inputSchema>LUKAS_DEV_SCHEMA</inputSchema>
    +
    +    <!-- Use this as the integration / production database: -->
    +    <outputSchema>PROD</outputSchema>
    +  </schema>
    +</schemata>]]></xml>
    +							<p>
    +								See the manual's section about
    +								<reference id="META" title="jooq-codegen configuration"/>
    +								for more details
    +							</p>
    +						</content>
    +					</section>
    +
    +
    +					<section id="ExecuteListener">
    +						<title>Execute listeners and the jOOQ Console</title>
    +						<slogan>
    +							Feel the heart beat of your SQL statements at a very low level using listeners
    +						</slogan>
    +						<content>
    +							<h2>ExecuteListener</h2>
    +							<p>
    +								The <reference id="Factory" title="jOOQ Factory Settings"/>
    +								let you specify a list of <reference class="org.jooq.ExecuteListener"/> classes.
    +								The ExecuteListener is essentially an event listener for
    +								Query, Routine, or ResultSet render, prepare, bind, execute, fetch steps. It is a
    +								base type for loggers, debuggers, profilers, data collectors. Advanced ExecuteListeners
    +								can also provide custom implementations of Connection, PreparedStatement and ResultSet
    +								to jOOQ in apropriate methods. For convenience, consider extending
    +								<reference class="org.jooq.impl.DefaultExecuteListener"/>
    +								instead of implementing this interface.
    +							</p>
    +							<p>
    +								Here is a sample implementation of an ExecuteListener, that is simply counting
    +								the number of queries per type that are being executed using jOOQ:
    +							</p>
    +
    +<java><![CDATA[package com.example;
    +
    +public class StatisticsListener extends DefaultExecuteListener {
    +    public static Map<ExecuteType, Integer> STATISTICS = new HashMap<ExecuteType, Integer>();
    +
    +    // Count "start" events for every type of query executed by jOOQ
    +    @Override
    +    public void start(ExecuteContext ctx) {
    +        Integer count = STATISTICS.get(ctx.type());
    +
    +        if (count == null) {
    +            count = 0;
    +        }
    +
    +        STATISTICS.put(ctx.type(), count + 1);
    +    }
    +}]]></java>
    +
    +							<p>
    +								Now, configure jOOQ's runtime to load your listener
    +							</p>
    +
    +<xml><![CDATA[<settings>
    +  <executeListeners>
    +    <executeListener>com.example.StatisticsListener</executeListener>
    +  </executeListeners>
    +</settings>]]></xml>
    +
    +							<p>
    +								And log results any time with a snippet like this:
    +							</p>
    +
    +<java><![CDATA[log.info("STATISTICS");
    +log.info("----------");
    +
    +for (ExecuteType type : ExecuteType.values()) {
    +    log.info(type.name(), StatisticsListener.STATISTICS.get(type) + " executions");
    +}]]></java>
    +                            <p>
    +                            	This may result in the following log output:
    +                            </p>
    +
    +<config>15:16:52,982  INFO - TEST STATISTICS
    +15:16:52,982  INFO - ---------------
    +15:16:52,983  INFO - READ                     : 919 executions
    +15:16:52,983  INFO - WRITE                    : 117 executions
    +15:16:52,983  INFO - DDL                      : 2 executions
    +15:16:52,983  INFO - BATCH                    : 4 executions
    +15:16:52,983  INFO - ROUTINE                  : 21 executions
    +15:16:52,983  INFO - OTHER                    : 30 executions</config>
    +							<p>
    +								Please read the
    +								<a href="http://www.jooq.org/javadoc/latest/org/jooq/ExecuteListener.html" title="ExecuteListener Javadoc">ExecuteListener Javadoc</a>
    +								for more details
    +							</p>
    +
    +							<h2>jOOQ Console</h2>
    +							<p>
    +							    The ExecuteListener API was driven by a feature request by Christopher Deckers, who has
    +							    had the courtesy to contribute the jOOQ Console, a sample application interfacing
    +							    with jOOQ's ExecuteListeners. The jOOQ Console logs all queries executed by jOOQ and
    +							    displays them nicely in a Swing application. With the jOOQ Console's logger, you can:
    +						    </p>
    +						    <ul>
    +						    	<li>Activate the console's DebugListener anytime (in-process or if the remote server is active).</li>
    +						    	<li>View simple and batch queries and their parameters.</li>
    +						    	<li>Reformat queries along with syntax highlighting for better readability.</li>
    +						    	<li>View stack trace of originator of the call.</li>
    +						    	<li>Dump the stack to stdout when in an IDE, to directly navigate to relevant classes.</li>
    +						    	<li>Track execution time, binding time, parsing time, rows read, fields read.</li>
    +						    	<li>Show/hide queries depending on their type (SELECT, UPDATE, etc.).</li>
    +						    	<li>Sort any column (timing columns, queries, types, etc.)</li>
    +						    	<li>Easy copy paste of rows/columns to Spreadsheet editors.</li>
    +						    </ul>
    +
    +						    <p>
    +						    	A short overview of such a debugging session can be seen here:
    +						    </p>
    +   							<div class="screenshot">
    +								<img class="screenshot" src="&lt;?=$root?&gt;/img/jooq-console-01.png" alt="jOOQ Console example"/>
    +							</div>
    +						    <p>
    +							    Please note that the jOOQ Console is still experimental.
    +							    Any feedback is very welcome on
    +							    <a href="http://groups.google.com/group/jooq-user" title="the jooq-user group">the jooq-user group</a>
    +							</p>
    +							<h2>jOOQ Console operation modes</h2>
    +							<p>
    +								The jOOQ Console can be run in two different modes:
    +							</p>
    +							<ul>
    +								<li>In-process mode: running in the same process as the queries you're analysing</li>
    +								<li>"headless" mode: running remotely</li>
    +							</ul>
    +
    +							<p>
    +								Both modes will require that you set the
    +								<reference class="org.jooq.debug.DebugListener"/>
    +								in the Factory's settings. When using XML settings:
    +							</p>
    +
    +<xml><![CDATA[<settings>
    +  <executeListeners>
    +    <executeListener>org.jooq.debug.DebugListener</executeListener>
    +  </executeListeners>
    +</settings>]]></xml>
    +
    +							<p>
    +								Or when using programmatic settings:
    +							</p>
    +<java><![CDATA[Settings settings = new Settings()
    +    .getExecuteListeners().add("org.jooq.debug.DebugListener");
    +Factory factory = new Factory(connection, dialect, settings);]]></java>
    +
    +							<h3>In-process mode</h3>
    +							<p>
    +								The in-process mode is useful for Swing applications or other,
    +								locally run Java programs accessing the database via jOOQ.
    +								In order to launch the jOOQ Console "in-process", specify the
    +								previously documented settings and launch the Console as follows:
    +							</p>
    +
    +<java><![CDATA[// Define a DatabaseDescriptor for the "in-process" mode
    +// It is needed for the "Editor" tab
    +DatabaseDescriptor descriptor = new DatabaseDescriptor() {
    +
    +    // Return your generated schema. This is used by the console
    +    // to introspect your schema data
    +    @Override
    +    public Schema getSchema() {
    +        return com.example.MySchema.MY_SCHEMA;
    +    }
    +
    +    // Return the SQL dialect that you're using
    +    @Override
    +    public SQLDialect getSQLDialect() {
    +        return SQLDialect.ORACLE;
    +    }
    +
    +    // Return a connection
    +    @Override
    +    public Connection createConnection() {
    +        try {
    +            return DriverManager.getConnection("jdbc:oracle:thin:@localhost:1521:xe", "test", "test");
    +        }
    +        catch (Exception ignore) {}
    +    }
    +};
    +
    +// Now pass this database descriptor to the Console and make it visible
    +try {
    +
    +    // Use this for a nicer look-and-feel
    +    UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName());
    +
    +    // Create a new Console
    +    Console console = new Console(descriptor, true);
    +    console.setLoggingActive(true);
    +    console.setVisible(true);
    +}
    +catch (Exception ignore) {}
    +]]></java>
    +
    +							<p>
    +								Only in the in-process mode, you can execute ad-hoc queries directly
    +								from the console, if you provide it with proper DatabaseDescriptor.
    +								These queries are executed from the Editor pane which features:
    +							</p>
    +							<ul>
    +								<li>SQL editing within the console.</li>
    +								<li>Incremental search on tables.</li>
    +								<li>Simple code completion with tables/columns/SQL keywords.</li>
    +								<li>Syntax highlighting and formatting capabilities.</li>
    +								<li>Results shown in one or several tabs.</li>
    +								<li>Easy analysis of Logger output by copy/pasting/running queries in the Editor.</li>
    +							</ul>
    +   							<div class="screenshot">
    +								<img class="screenshot" src="&lt;?=$root?&gt;/img/jooq-console-02.png" alt="jOOQ Console example"/>
    +							</div>
    +
    +                            <h3>"Headless" mode</h3>
    +							<p>
    +								In J2EE or other server/client environments, you may not be able
    +								to run the console in the same process as your application. You
    +								can then run the jOOQ Console in "headless" mode. In addition to
    +								the previously documented settings, you'll have to start a
    +								debugger server in your application process, that the console can
    +								connect to:
    +							</p>
    +
    +<java>// Create a new RemoteDebuggerServer in your application that listens to
    +// incoming connections on a given port
    +SERVER = new RemoteDebuggerServer(DEBUGGER_PORT);</java>
    +
    +							<p>
    +								Now start your application along with the debugger server
    +								and launch the console with this command:
    +							</p>
    +
    +<config>java -jar jooq-console-2.1.0.jar [host] [port]</config>
    +
    +							<p>
    +								Depending on your distribution, you may have to manually add
    +								rsyntaxtextarea-1.5.0.jar and jOOQ artefacts on your classpath.
    +							</p>
    +						</content>
    +					</section>
    +
    +
    +					<section id="OracleHints">
    +						<title>Adding Oracle hints to queries</title>
    +						<slogan>
    +							Oracle has a powerful syntax to add hints as comments directly in your SQL
    +						</slogan>
    +						<content>
    +							<h2>How to embed Oracle hints in SELECT</h2>
    +							<p>If you are closely coupling your application to an Oracle database,
    +								you might need to be able to pass hints of the form /*+HINT*/ with
    +								your SQL statements to the Oracle database. For example: </p>
    +<sql>SELECT /*+ALL_ROWS*/ FIRST_NAME, LAST_NAME
    +  FROM T_AUTHOR</sql>
    +
    +  							<p>This can be done in jOOQ using the .hint() clause in your SELECT statement: </p>
    +<java>create.select(FIRST_NAME, LAST_NAME)
    +      .hint("/*+ALL_ROWS*/")
    +      .from(T_AUTHOR);</java>
    +
    +							<p>Note that you can pass any string in the .hint() clause. If you use
    +								that clause, the passed string will always be put in between the
    +								SELECT [DISTINCT] keywords and the actual projection list </p>
    +						</content>
    +					</section>
    +
    +
    +					<section id="CONNECTBY">
    +						<title>The Oracle CONNECT BY clause</title>
    +						<slogan>
    +							Hierarchical queries are supported by many RDBMS using the WITH clause.
    +							Oracle has a very neat and much less verbose syntax for hierarchical
    +							queries: CONNECT BY .. STARTS WITH
    +						</slogan>
    +						<content>
    +							<h2>CONNECT BY .. STARTS WITH</h2>
    +							<p>If you are closely coupling your application to an Oracle database,
    +								you can take advantage of some Oracle-specific features, such as the
    +								CONNECT BY clause, used for hierarchical queries. The formal syntax
    +								definition is as follows: </p>
    +
    +<sql>--   SELECT ..
    +--     FROM ..
    +--    WHERE ..
    + CONNECT BY [NOCYCLE] condition [AND condition, ...] [START WITH condition]
    +-- GROUP BY ..</sql>
    +							<p>This can be done in jOOQ using the .connectBy(Condition) clauses in your SELECT statement: </p>
    +<java>// Some Oracle-specific features are only available
    +// from the OracleFactory
    +OracleFactory create = new OracleFactory(connection);
    +
    +// Get a table with elements 1, 2, 3, 4, 5
    +create.select(create.rownum())
    +      .connectBy(create.level().lessOrEqual(5))
    +      .fetch();</java>
    +
    +							<p>Here's a more complex example where you can recursively fetch
    +								directories in your database, and concatenate them to a path:</p>
    +<java><![CDATA[ OracleFactory ora = new OracleFactory(connection);
    +
    + List<?> paths =
    + ora.select(ora.sysConnectByPath(DIRECTORY.NAME, "/").substring(2))
    +    .from(DIRECTORY)
    +    .connectBy(ora.prior(DIRECTORY.ID).equal(DIRECTORY.PARENT_ID))
    +    .startWith(DIRECTORY.PARENT_ID.isNull())
    +    .orderBy(ora.literal(1))
    +    .fetch(0);]]></java>
    +
    +    						<p>The output might then look like this</p>
    +<text>+------------------------------------------------+
    +|substring                                       |
    ++------------------------------------------------+
    +|C:                                              |
    +|C:/eclipse                                      |
    +|C:/eclipse/configuration                        |
    +|C:/eclipse/dropins                              |
    +|C:/eclipse/eclipse.exe                          |
    ++------------------------------------------------+
    +|...21 record(s) truncated...
    +</text>
    +						</content>
    +					</section>
    +
    +
    +				    <section id="PIVOT">
    +				    	<title>The Oracle 11g PIVOT clause</title>
    +				    	<slogan>
    +				    	    Oracle 11g has formally introduced the very powerful PIVOT clause, which
    +				    	    allows to specify a pivot column, expected grouping values for pivoting,
    +				    	    as well as a set of aggregate functions
    +						</slogan>
    +						<content>
    +							<h2>PIVOT (aggregate FOR column IN (columns))</h2>
    +							<p>If you are closely coupling your application to an Oracle database,
    +								you can take advantage of some Oracle-specific features, such as the
    +								PIVOT clause, used for statistical analyses. The formal syntax
    +								definition is as follows: </p>
    +<sql>-- SELECT ..
    +     FROM table PIVOT (aggregateFunction [, aggregateFunction] FOR column IN (expression [, expression]))
    +--  WHERE ..</sql>
    +
    +							<p>
    +								The PIVOT clause is available from the
    +								<reference class="org.jooq.Table"/>
    +								type, as pivoting is done directly on a table.
    +								Currently, only Oracle's PIVOT clause is supported. Support for SQL Server's
    +								PIVOT clause will be added later. Also, jOOQ may simulate PIVOT for other
    +								dialects in the future.
    +							</p>
    +						</content>
    +				    </section>
    +
    +
    +				    <section id="DIVISION">
    +				    	<title>jOOQ's relational division syntax</title>
    +				    	<slogan>
    +				    	    Relational division is a rather academic topic that is not used in
    +				    	    every-day SQL. Nevertheless, it can be extremely powerful in some
    +				    	    remote cases. jOOQ supports it intuitively
    +						</slogan>
    +						<content>
    +							<h2>Relational division</h2>
    +							<p>
    +							    There is one operation in relational algebra that is not given
    +							    a lot of attention, because it is rarely used in real-world
    +							    applications. It is the relational division, the opposite operation
    +							    of the cross product (or, relational multiplication).
    +								The following is an approximate definition of a relational division:
    +							</p>
    +
    +<config>Assume the following cross join / cartesian product
    +C = A × B
    +
    +Then it can be said that
    +A = C ÷ B
    +B = C ÷ A</config>
    +
    +
    +							<p>
    +							   With jOOQ, you can simplify using relational divisions
    +							   by using the following syntax:
    +							</p>
    +
    +<java>C.divideBy(B).on(C.ID.equal(B.C_ID)).returning(C.TEXT)</java>
    +
    +							<p>The above roughly translates to</p>
    +
    +<sql>SELECT DISTINCT C.TEXT FROM C "c1"
    +WHERE NOT EXISTS (
    +  SELECT 1 FROM B
    +  WHERE NOT EXISTS (
    +    SELECT 1 FROM C "c2"
    +    WHERE "c2".TEXT = "c1".TEXT
    +    AND "c2".ID = B.C_ID
    +  )
    +)</sql>
    +
    +							<p>
    +								Or in plain text: Find those TEXT values in C
    +								whose ID's correspond to all ID's in B. Note
    +								that from the above SQL statement, it is immediately
    +								clear that proper indexing is of the essence.
    +								Be sure to have indexes on all columns referenced
    +								from the on(...) and returning(...) clauses.
    +							</p>
    +
    +							<p>
    +								For more information about relational division
    +								and some nice, real-life examples, see
    +							</p>
    +
    +							<ul>
    +								<li>
    +									<a href="http://en.wikipedia.org/wiki/Relational_algebra#Division" title="Wikipedia article on relational division">http://en.wikipedia.org/wiki/Relational_algebra#Division</a>
    +								</li>
    +								<li>
    +									<a href="http://www.simple-talk.com/sql/t-sql-programming/divided-we-stand-the-sql-of-relational-division/" title="A nice summary of what relational division is and how it is best implemented in SQL">http://www.simple-talk.com/sql/t-sql-programming/divided-we-stand-the-sql-of-relational-division/</a>
    +								</li>
    +							</ul>
    +						</content>
    +				    </section>
    +
    +
    +					<section id="Export">
    +						<title>Exporting to XML, CSV, JSON, HTML, Text</title>
    +						<slogan>
    +							Get your data out of the Java world. Stream your data using any of the supported, wide-spread formats
    +						</slogan>
    +						<content>
    +							<h2>Exporting with jOOQ</h2>
    +							<p>If you are using jOOQ for scripting purposes or in a slim, unlayered
    +								application server, you might be interested in using jOOQ's exporting
    +								functionality (see also importing functionality). You can export any
    +								Result&lt;Record&gt; into any of these formats: </p>
    +
    +							<h3>XML</h3>
    +							<p>Export your results as XML: </p>
    +<java>// Fetch books and format them as XML
    +String xml = create.selectFrom(T_BOOK).fetch().formatXML();</java>
    +
    +							<p>The above query will result in an XML document looking like the following one: </p>
    +<xml><![CDATA[<!-- Find the XSD definition on www.jooq.org: -->
    +<jooq-export:result xmlns:jooq-export="http://www.jooq.org/xsd/jooq-export-1.6.2.xsd">
    +  <fields>
    +    <field name="ID"/>
    +    <field name="AUTHOR_ID"/>
    +    <field name="TITLE"/>
    +  </fields>
    +  <records>
    +    <record>
    +      <value field="ID">1</value>
    +      <value field="AUTHOR_ID">1</value>
    +      <value field="TITLE">1984</value>
    +    </record>
    +    <record>
    +      <value field="ID">2</value>
    +      <value field="AUTHOR_ID">1</value>
    +      <value field="TITLE">Animal Farm</value>
    +    </record>
    +  </records>
    +</jooq-export:result>]]></xml>
    +
    +							<h3>CSV</h3>
    +							<p>Export your results as CSV: </p>
    +<java>// Fetch books and format them as CSV
    +String csv = create.selectFrom(T_BOOK).fetch().formatCSV();</java>
    +
    +							<p>The above query will result in a CSV document looking like the following one: </p>
    +<text>ID;AUTHOR_ID;TITLE
    +1;1;1984
    +2;1;Animal Farm</text>
    +
    +
    +							<h3>JSON</h3>
    +							<p>Export your results as JSON: </p>
    +
    +<java>// Fetch books and format them as JSON
    +String json = create.selectFrom(T_BOOK).fetch().formatJSON();</java>
    +							<p>The above query will result in a JSON document looking like the following one: </p>
    +<text>{fields:["ID","AUTHOR_ID","TITLE"],
    + records:[[1,1,"1984"],[2,1,"Animal Farm"]]}</text>
    +
    + 							<h3>HTML </h3>
    + 							<p>Export your results as HTML: </p>
    +<java>// Fetch books and format them as HTML
    +String html = create.selectFrom(T_BOOK).fetch().formatHTML();</java>
    +							<p>The above query will result in an HTML document looking like the following one: </p>
    +<xml><![CDATA[<table>
    +  <thead>
    +    <tr>
    +      <th>ID</th>
    +      <th>AUTHOR_ID</th>
    +      <th>TITLE</th>
    +    </tr>
    +  </thead>
    +  <tbody>
    +    <tr>
    +      <td>1</td>
    +      <td>1</td>
    +      <td>1984</td>
    +    </tr>
    +    <tr>
    +      <td>2</td>
    +      <td>1</td>
    +      <td>Animal Farm</td>
    +    </tr>
    +  </tbody>
    +</table>]]></xml>
    +
    +							<h3>Text</h3>
    +							<p>Export your results as text: </p>
    +<java>// Fetch books and format them as text
    +String text = create.selectFrom(T_BOOK).fetch().format();</java>
    +
    +							<p>The above query will result in a text document looking like the following one: </p>
    +<text>+---+---------+-----------+
    +| ID|AUTHOR_ID|TITLE      |
    ++---+---------+-----------+
    +|  1|        1|1984       |
    +|  2|        1|Animal Farm|
    ++---+---------+-----------+</text>
    +						</content>
    +					</section>
    +
    +
    +					<section id="Import">
    +						<title>Importing data from XML, CSV</title>
    +						<slogan>
    +							Use jOOQ to easily merge imported data into your database.
    +						</slogan>
    +						<content>
    +							<h2>Importing with jOOQ</h2>
    +							<p>If you are using jOOQ for scripting purposes or in a slim, unlayered
    +								application server, you might be interested in using jOOQ's importing
    +								functionality (see also exporting functionality). You can import data
    +								directly into a table from any of these formats: </p>
    +
    +							<h3>CSV</h3>
    +							<p>The below CSV data represents two author records that may have been
    +								exported previously, by jOOQ's exporting functionality, and then
    +								modified in Microsoft Excel or any other spreadsheet tool: </p>
    +
    +<text>ID;AUTHOR_ID;TITLE
    +1;1;1984
    +2;1;Animal Farm</text>
    +
    +							<p>With jOOQ, you can load this data using various parameters from the
    +								loader API. A simple load may look like this: </p>
    +
    +<java>Factory create = new Factory(connection, SQLDialect.ORACLE);
    +
    +// Load data into the T_AUTHOR table from an input stream
    +// holding the CSV data.
    +create.loadInto(T_AUTHOR)
    +      .loadCSV(inputstream)
    +      .fields(ID, AUTHOR_ID, TITLE)
    +      .execute();</java>
    +
    +      						<p>Here are various other examples: </p>
    +<java>// Ignore the AUTHOR_ID column from the CSV file when inserting
    +create.loadInto(T_AUTHOR)
    +      .loadCSV(inputstream)
    +      .fields(ID, null, TITLE)
    +      .execute();
    +
    +// Specify behaviour for duplicate records.
    +create.loadInto(T_AUTHOR)
    +
    +      // choose any of these methods
    +      .onDuplicateKeyUpdate()
    +      .onDuplicateKeyIgnore()
    +      .onDuplicateKeyError() // the default
    +
    +      .loadCSV(inputstream)
    +      .fields(ID, null, TITLE)
    +      .execute();
    +
    +// Specify behaviour when errors occur.
    +create.loadInto(T_AUTHOR)
    +
    +      // choose any of these methods
    +      .onErrorIgnore()
    +      .onErrorAbort() // the default
    +
    +      .loadCSV(inputstream)
    +      .fields(ID, null, TITLE)
    +      .execute();
    +
    +// Specify transactional behaviour where this is possible
    +// (e.g. not in container-managed transactions)
    +create.loadInto(T_AUTHOR)
    +
    +      // choose any of these methods
    +      .commitEach()
    +      .commitAfter(10)
    +      .commitAll()
    +      .commitNone() // the default
    +
    +      .loadCSV(inputstream)
    +      .fields(ID, null, TITLE)
    +      .execute();</java>
    +
    +							<p>Any of the above configuration methods can be combined to achieve
    +								the type of load you need. Please refer to the API's Javadoc to learn
    +								about more details. Errors that occur during the load are reported by
    +								the execute method's result: </p>
    +
    +<java><![CDATA[Loader<TAuthor> loader = /* .. */ .execute();
    +
    +// The number of processed rows
    +int processed = loader.processed();
    +
    +// The number of stored rows (INSERT or UPDATE)
    +int stored = loader.stored();
    +
    +// The number of ignored rows (due to errors, or duplicate rule)
    +int ignored = loader.ignored();
    +
    +// The errors that may have occurred during loading
    +List<LoaderError> errors = loader.errors();
    +LoaderError error = errors.get(0);
    +
    +// The exception that caused the error
    +SQLException exception = error.exception();
    +
    +// The row that caused the error
    +int rowIndex = error.rowIndex();
    +String[] row = error.row();
    +
    +// The query that caused the error
    +Query query = error.query();]]></java>
    +
    +							<h3>XML </h3>
    +							<p>This will be implemented soon... </p>
    +						</content>
    +					</section>
    +
    +
    +					<section id="Batch">
    +						<title>Using JDBC batch operations</title>
    +						<slogan>
    +							Some JDBC drivers have highly optimised means of executing batch
    +							operations. The JDBC interface for those operations is a bit verbose.
    +							jOOQ abstracts that by re-using the existing query API's
    +						</slogan>
    +						<content>
    +							<h2>JDBC batch operations</h2>
    +							<p>With JDBC, you can easily execute several statements at once using
    +								the addBatch() method. Essentially, there are two modes in JDBC</p>
    +
    +							<ol>
    +								<li>Execute several queries without bind values</li>
    +								<li>Execute one query several times with bind values</li>
    +							</ol>
    +
    +							<p>In code, this looks like the following snippet:</p>
    +<java><![CDATA[// 1. several queries
    +// ------------------
    +Statement stmt = connection.createStatement();
    +stmt.addBatch("INSERT INTO author VALUES (1, 'Erich Gamma')");
    +stmt.addBatch("INSERT INTO author VALUES (2, 'Richard Helm')");
    +stmt.addBatch("INSERT INTO author VALUES (3, 'Ralph Johnson')");
    +stmt.addBatch("INSERT INTO author VALUES (4, 'John Vlissides')");
    +int[] result = stmt.executeBatch();
    +
    +// 2. a single query
    +// -----------------
    +PreparedStatement stmt = connection.prepareStatement("INSERT INTO autho VALUES (?, ?)");
    +stmt.setInt(1, 1);
    +stmt.setString(2, "Erich Gamma");
    +stmt.addBatch();
    +
    +stmt.setInt(1, 2);
    +stmt.setString(2, "Richard Helm");
    +stmt.addBatch();
    +
    +stmt.setInt(1, 3);
    +stmt.setString(2, "Ralph Johnson");
    +stmt.addBatch();
    +
    +stmt.setInt(1, 4);
    +stmt.setString(2, "John Vlissides");
    +stmt.addBatch();
    +
    +int[] result = stmt.executeBatch();]]></java>
    +
    +
    +							<h2>This will also be supported by jOOQ</h2>
    +							<p>Version 1.6.9 of jOOQ now supports executing queries in batch
    +								mode as follows:</p>
    +<java><![CDATA[// 1. several queries
    +// ------------------
    +create.batch(
    +	create.insertInto(AUTHOR, ID, NAME).values(1, "Erich Gamma"),
    +	create.insertInto(AUTHOR, ID, NAME).values(2, "Richard Helm"),
    +	create.insertInto(AUTHOR, ID, NAME).values(3, "Ralph Johnson"),
    +	create.insertInto(AUTHOR, ID, NAME).values(4, "John Vlissides"))
    +.execute();
    +
    +// 2. a single query
    +// -----------------
    +create.batch(create.insertInto(AUTHOR, ID, NAME).values("?", "?"))
    +	  .bind(1, "Erich Gamma")
    +	  .bind(2, "Richard Helm")
    +	  .bind(3, "Ralph Johnson")
    +	  .bind(4, "John Vlissides")
    +	  .execute();]]></java>
    +						</content>
    +					</section>
    +				</sections>
    +			</section>
    +		</sections>
    +	</section>
    +</manual>
    \ No newline at end of file
    diff --git a/jOOQ-website/src/main/resources/pdf.xsl b/jOOQ-website/src/main/resources/pdf.xsl
    new file mode 100644
    index 00000000000..d9f00444fe9
    --- /dev/null
    +++ b/jOOQ-website/src/main/resources/pdf.xsl
    @@ -0,0 +1,520 @@
    +<?xml version="1.0" encoding="UTF-8"?>
    +<xsl:stylesheet version="1.0"
    +	xmlns:fo="http://www.w3.org/1999/XSL/Format"
    +	xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
    +
    +	<xsl:output encoding="UTF-8" method="xml" indent="yes"/>
    +
    +	<xsl:variable name="apos">&apos;</xsl:variable>
    +	<xsl:variable name="page-width">210</xsl:variable>
    +	<xsl:variable name="page-margin">17</xsl:variable>
    +	<xsl:variable name="content-width" select="$page-width - (2 * $page-margin)"/>
    +
    +	<xsl:attribute-set name="static">
    +		<xsl:attribute name="font-size">7pt</xsl:attribute>
    +		<xsl:attribute name="color">#555555</xsl:attribute>
    +	</xsl:attribute-set>
    +
    +	<xsl:attribute-set name="div">
    +		<xsl:attribute name="font-size">11pt</xsl:attribute>
    +	</xsl:attribute-set>
    +
    +	<xsl:attribute-set name="pre">
    +		<xsl:attribute name="font-family">Courier</xsl:attribute>
    +		<xsl:attribute name="linefeed-treatment">preserve</xsl:attribute>
    +		<xsl:attribute name="white-space-collapse">false</xsl:attribute>
    +		<xsl:attribute name="white-space-treatment">preserve</xsl:attribute>
    +		<xsl:attribute name="font-size">6pt</xsl:attribute>
    +		<xsl:attribute name="margin">12pt</xsl:attribute>
    +		<xsl:attribute name="padding">4pt</xsl:attribute>
    +		<xsl:attribute name="border">2px solid #882222</xsl:attribute>
    +		<xsl:attribute name="background-color">#FFEEDD</xsl:attribute>
    +		<xsl:attribute name="page-break-inside">avoid</xsl:attribute>
    +	</xsl:attribute-set>
    +
    +	<xsl:attribute-set name="strong">
    +		<xsl:attribute name="font-weight">bold</xsl:attribute>
    +	</xsl:attribute-set>
    +
    +	<xsl:attribute-set name="h1">
    +		<xsl:attribute name="font-family">Georgia</xsl:attribute>
    +		<xsl:attribute name="font-size">18pt</xsl:attribute>
    +		<xsl:attribute name="padding-top">12pt</xsl:attribute>
    +		<xsl:attribute name="padding-bottom">12pt</xsl:attribute>
    +		<xsl:attribute name="page-break-after">avoid</xsl:attribute>
    +	</xsl:attribute-set>
    +
    +	<xsl:attribute-set name="h2">
    +		<xsl:attribute name="font-family">Georgia</xsl:attribute>
    +		<xsl:attribute name="font-size">16pt</xsl:attribute>
    +		<xsl:attribute name="padding-top">10pt</xsl:attribute>
    +		<xsl:attribute name="padding-bottom">10pt</xsl:attribute>
    +		<xsl:attribute name="page-break-after">avoid</xsl:attribute>
    +	</xsl:attribute-set>
    +
    +	<xsl:attribute-set name="h3">
    +		<xsl:attribute name="font-family">Georgia</xsl:attribute>
    +		<xsl:attribute name="font-size">16pt</xsl:attribute>
    +		<xsl:attribute name="padding-top">10pt</xsl:attribute>
    +		<xsl:attribute name="padding-bottom">10pt</xsl:attribute>
    +		<xsl:attribute name="page-break-after">avoid</xsl:attribute>
    +	</xsl:attribute-set>
    +
    +	<xsl:attribute-set name="a">
    +		<xsl:attribute name="font-size">11pt</xsl:attribute>
    +		<xsl:attribute name="color">#882222</xsl:attribute>
    +		<xsl:attribute name="font-weight">bold</xsl:attribute>
    +		<xsl:attribute name="text-shadow">0 1px 2px #666666</xsl:attribute>
    +	</xsl:attribute-set>
    +
    +	<xsl:attribute-set name="p">
    +		<xsl:attribute name="font-size">11pt</xsl:attribute>
    +	</xsl:attribute-set>
    +
    +	<xsl:attribute-set name="ul">
    +		<xsl:attribute name="padding-top">16pt</xsl:attribute>
    +		<xsl:attribute name="padding-bottom">16pt</xsl:attribute>
    +		<xsl:attribute name="page-break-inside">avoid</xsl:attribute>
    +	</xsl:attribute-set>
    +
    +	<xsl:attribute-set name="ol-toc">
    +		<xsl:attribute name="margin-bottom">6pt</xsl:attribute>
    +	</xsl:attribute-set>
    +
    +	<xsl:attribute-set name="ol">
    +		<xsl:attribute name="padding-top">16pt</xsl:attribute>
    +		<xsl:attribute name="padding-bottom">16pt</xsl:attribute>
    +	</xsl:attribute-set>
    +
    +	<xsl:attribute-set name="li-toc">
    +		<xsl:attribute name="font-size">11pt</xsl:attribute>
    +		<xsl:attribute name="page-break-inside">avoid</xsl:attribute>
    +	</xsl:attribute-set>
    +
    +	<xsl:attribute-set name="li">
    +		<xsl:attribute name="font-size">11pt</xsl:attribute>
    +		<xsl:attribute name="page-break-inside">avoid</xsl:attribute>
    +	</xsl:attribute-set>
    +
    +	<xsl:attribute-set name="img">
    +		<xsl:attribute name="padding-top">10pt</xsl:attribute>
    +		<xsl:attribute name="padding-bottom">10pt</xsl:attribute>
    +	</xsl:attribute-set>
    +
    +	<!-- Main match -->
    +
    +	<xsl:template match="/">
    +		<fo:root xmlns:fo="http://www.w3.org/1999/XSL/Format">
    +			<fo:layout-master-set>
    +			    <fo:simple-page-master
    +			        page-height="297mm"
    +			        page-width="{$page-width}mm"
    +					master-name="simple">
    +
    +         			<fo:region-body
    +						region-name="xsl-region-body"
    +            			margin="{$page-margin}mm" />
    +					<fo:region-before
    +            			region-name="xsl-region-before"
    +            			extent="{$page-margin}mm" />
    +         			<fo:region-after
    +						region-name="xsl-region-after"
    +          				extent="{$page-margin}mm" />
    +      			</fo:simple-page-master>
    +   			</fo:layout-master-set>
    +
    +   			<fo:page-sequence master-reference="simple">
    +   				<fo:flow flow-name="xsl-region-body" font-family="Helvetica">
    +   					<fo:block width="100%" margin-left="20mm" margin-right="20mm" font-family="Georgia">
    +	   					<fo:block width="100%" text-align="center" font-size="36pt" padding-top="60mm">
    +	   						<xsl:text>The jOOQ User Manual</xsl:text>
    +	   					</fo:block>
    +	   					<fo:block width="100%" text-align="justify" font-size="12pt" color="#555555" padding-top="20mm">
    +	   						<xsl:text>SQL was never meant to be abstracted. To be confined in the narrow
    +	   						boundaries of heavy mappers, hiding the beauty and simplicity of relational data.
    +	   						SQL was never meant to be object-oriented. SQL was never meant to be anything
    +	   						other than... SQL!</xsl:text>
    +	   					</fo:block>
    +	   					<fo:block width="100%" text-align="center" padding-top="20mm">
    +	   						<fo:external-graphic
    +	   							src="url('C:/Users/lukas/workspace/jOOQ-website/img/logo.png')"
    +								xsl:use-attribute-sets="img"/>
    +	   					</fo:block>
    +   					</fo:block>
    +   				</fo:flow>
    +   			</fo:page-sequence>
    +
    +   			<fo:page-sequence master-reference="simple">
    +   				<fo:static-content flow-name="xsl-region-before" font-family="Helvetica">
    +   					<fo:block>
    +	   					<fo:table table-layout="fixed" width="100%">
    +							<fo:table-column column-width="proportional-column-width(1)"/>
    +							<fo:table-column column-width="150mm"/>
    +
    +							<fo:table-body>
    +							  	<fo:table-row>
    +							    	<fo:table-cell padding-left="{$page-margin}mm" padding-top="{$page-margin * 2 div 3}mm">
    +							      		<fo:block xsl:use-attribute-sets="static">
    +							      			<xsl:text>
    +							      			The jOOQ User Manual
    +							      			</xsl:text>
    +							      		</fo:block>
    +							    	</fo:table-cell>
    +							    	<fo:table-cell padding-right="{$page-margin}mm" padding-top="{$page-margin * 2 div 3}mm" text-align="right">
    +							     		<fo:block xsl:use-attribute-sets="static">
    +							     			<fo:retrieve-marker retrieve-class-name="section"/>
    +							     		</fo:block>
    +							    	</fo:table-cell>
    +							  	</fo:table-row>
    +							</fo:table-body>
    +						</fo:table>
    +   					</fo:block>
    +   				</fo:static-content>
    +
    +   				<fo:static-content flow-name="xsl-region-after" font-family="Helvetica">
    +   					<fo:block>
    +			      		<fo:table table-layout="fixed" width="100%">
    +							<fo:table-column column-width="150mm"/>
    +							<fo:table-column column-width="proportional-column-width(1)"/>
    +
    +							<fo:table-body>
    +							  	<fo:table-row>
    +							    	<fo:table-cell padding-left="{$page-margin}mm">
    +							      		<fo:block xsl:use-attribute-sets="static">
    +							      			<xsl:text>
    +							      			jOOQ is brought to you by Lukas Eder. Distributed under the Apache 2 licence
    +							      			</xsl:text>
    +							      		</fo:block>
    +							    	</fo:table-cell>
    +							    	<fo:table-cell padding-right="{$page-margin}mm" text-align="right">
    +							     		<fo:block xsl:use-attribute-sets="static">
    +							     			<xsl:text>Page&#160;</xsl:text>
    +							     			<fo:page-number/>
    +							     			<xsl:text>&#160;/&#160;</xsl:text>
    +							     			<fo:page-number-citation ref-id="last-page"/>
    +							     		</fo:block>
    +							    	</fo:table-cell>
    +							  	</fo:table-row>
    +							</fo:table-body>
    +						</fo:table>
    +					</fo:block>
    +			    </fo:static-content>
    +
    +      			<fo:flow flow-name="xsl-region-body" font-family="Helvetica">
    +					<!-- Display the main section's content -->
    +					<xsl:apply-templates select="/manual/section/content"/>
    +
    +					<!-- Display the overall table of contents -->
    +					<fo:block break-after='page'/>
    +					<fo:block xsl:use-attribute-sets="h3">Table of contents</fo:block>
    +					<xsl:apply-templates select="/manual/section" mode="toc"/>
    +
    +					<xsl:for-each select="/manual/section//section">
    +						<!-- Break before top-level chapters -->
    +						<xsl:variable name="id" select="@id"/>
    +						<xsl:if test="/manual/section/sections/section[@id = $id]">
    +							<fo:block break-after='page'/>
    +						</xsl:if>
    +
    +						<fo:block xsl:use-attribute-sets="h1" id="{@id}">
    +							<fo:marker marker-class-name="section">
    +								<fo:block>
    +									<xsl:apply-templates select="." mode="chapter-number"/>
    +									<xsl:text> </xsl:text>
    +									<xsl:value-of select="title"/>
    +								</fo:block>
    +							</fo:marker>
    +
    +							<xsl:apply-templates select="." mode="chapter-number"/>
    +							<xsl:text> </xsl:text>
    +							<xsl:value-of select="title"/>
    +						</fo:block>
    +						<fo:block xsl:use-attribute-sets="p">
    +							<xsl:value-of select="slogan"/>
    +						</fo:block>
    +
    +						<xsl:apply-templates select="content" />
    +					</xsl:for-each>
    +
    +					<fo:block id="last-page"/>
    +      			</fo:flow>
    +  			</fo:page-sequence>
    +		</fo:root>
    +	</xsl:template>
    +
    +	<xsl:template match="html-only" mode="content"/>
    +
    +	<xsl:template match="content">
    +		<xsl:apply-templates select="@*|node()" mode="content"/>
    +	</xsl:template>
    +
    +	<xsl:template match="div" mode="content">
    +		<fo:block xsl:use-attribute-sets="div">
    +			<xsl:apply-templates mode="content"/>
    +		</fo:block>
    +	</xsl:template>
    +
    +	<xsl:template match="h1" mode="content">
    +		<fo:block xsl:use-attribute-sets="h1">
    +			<xsl:apply-templates mode="content"/>
    +		</fo:block>
    +	</xsl:template>
    +
    +	<xsl:template match="h2" mode="content">
    +		<fo:block xsl:use-attribute-sets="h2">
    +			<xsl:apply-templates mode="content"/>
    +		</fo:block>
    +	</xsl:template>
    +
    +	<xsl:template match="h3" mode="content">
    +		<fo:block xsl:use-attribute-sets="h3">
    +			<xsl:apply-templates mode="content"/>
    +		</fo:block>
    +	</xsl:template>
    +
    +	<xsl:template match="a" mode="content">
    +		<fo:basic-link xsl:use-attribute-sets="a">
    +			<xsl:attribute name="external-destination">
    +				<xsl:text>url('</xsl:text>
    +				<xsl:value-of select="@href"/>
    +				<xsl:text>')</xsl:text>
    +			</xsl:attribute>
    +
    +			<xsl:apply-templates mode="content"/>
    +		</fo:basic-link>
    +	</xsl:template>
    +
    +	<xsl:template match="reference[@id]" mode="content">
    +		<fo:basic-link xsl:use-attribute-sets="a" internal-destination="{@id}">
    +			<xsl:apply-templates select="." mode="reference-content"/>
    +		</fo:basic-link>
    +	</xsl:template>
    +
    +	<xsl:template match="reference[@class and starts-with(@class, 'org.jooq.test')]" mode="content">
    +		<fo:basic-link xsl:use-attribute-sets="a">
    +			<xsl:attribute name="external-destination">
    +				<xsl:text>url('</xsl:text>
    +				<xsl:text>https://github.com/lukaseder/jOOQ/blob/master/jOOQ-test/src/</xsl:text>
    +				<xsl:value-of select="translate(@class, '.', '/')"/>
    +				<xsl:text>.java</xsl:text>
    +				<xsl:value-of select="@anchor"/>
    +				<xsl:text>')</xsl:text>
    +			</xsl:attribute>
    +
    +			<xsl:apply-templates select="." mode="reference-content"/>
    +		</fo:basic-link>
    +	</xsl:template>
    +
    +	<xsl:template match="reference[@class and starts-with(@class, 'org.jooq.debug')]" mode="content">
    +		<fo:basic-link xsl:use-attribute-sets="a">
    +			<xsl:attribute name="external-destination">
    +				<xsl:text>url('</xsl:text>
    +				<xsl:text>https://github.com/lukaseder/jOOQ/blob/master/jOOQ-console/src/</xsl:text>
    +				<xsl:value-of select="translate(@class, '.', '/')"/>
    +				<xsl:text>.java</xsl:text>
    +				<xsl:value-of select="@anchor"/>
    +				<xsl:text>')</xsl:text>
    +			</xsl:attribute>
    +
    +			<xsl:apply-templates select="." mode="reference-content"/>
    +		</fo:basic-link>
    +	</xsl:template>
    +
    +	<xsl:template match="reference[@class and starts-with(@class, 'org.jooq')]" mode="content">
    +		<fo:basic-link xsl:use-attribute-sets="a">
    +			<xsl:attribute name="external-destination">
    +				<xsl:text>url('</xsl:text>
    +				<xsl:text>http://www.jooq.org/javadoc/latest/</xsl:text>
    +				<xsl:value-of select="translate(@class, '.', '/')"/>
    +				<xsl:text>.html</xsl:text>
    +				<xsl:value-of select="@anchor"/>
    +				<xsl:text>')</xsl:text>
    +			</xsl:attribute>
    +
    +			<xsl:apply-templates select="." mode="reference-content"/>
    +		</fo:basic-link>
    +	</xsl:template>
    +
    +	<xsl:template match="reference[@class and starts-with(@class, 'java')]" mode="content">
    +		<fo:basic-link xsl:use-attribute-sets="a">
    +			<xsl:attribute name="external-destination">
    +				<xsl:text>url('</xsl:text>
    +				<xsl:text>http://download.oracle.com/javase/6/docs/api/</xsl:text>
    +				<xsl:value-of select="translate(@class, '.', '/')"/>
    +				<xsl:text>.html</xsl:text>
    +				<xsl:value-of select="@anchor"/>
    +				<xsl:text>')</xsl:text>
    +			</xsl:attribute>
    +
    +			<xsl:apply-templates select="." mode="reference-content"/>
    +		</fo:basic-link>
    +	</xsl:template>
    +
    +	<xsl:template match="reference[@ticket]" mode="content">
    +		<fo:basic-link xsl:use-attribute-sets="a">
    +			<xsl:attribute name="external-destination">
    +				<xsl:text>url('</xsl:text>
    +				<xsl:text>https://sourceforge.net/apps/trac/jooq/ticket/</xsl:text>
    +				<xsl:value-of select="@ticket"/>
    +				<xsl:value-of select="@anchor"/>
    +				<xsl:text>')</xsl:text>
    +			</xsl:attribute>
    +
    +			<xsl:apply-templates select="." mode="reference-content"/>
    +		</fo:basic-link>
    +	</xsl:template>
    +
    +	<xsl:template match="reference" mode="reference-content">
    +		<xsl:variable name="id" select="@id"/>
    +
    +		<xsl:choose>
    +			<xsl:when test="@title">
    +				<xsl:value-of select="@title"/>
    +			</xsl:when>
    +			<xsl:when test="@id">
    +				<xsl:value-of select="//section[@id = $id]/title"/>
    +			</xsl:when>
    +			<xsl:when test="@class">
    +				<xsl:value-of select="@class"/>
    +			</xsl:when>
    +			<xsl:when test="@ticket">
    +				<xsl:text>#</xsl:text>
    +				<xsl:value-of select="@ticket"/>
    +			</xsl:when>
    +		</xsl:choose>
    +	</xsl:template>
    +
    +	<xsl:template match="img" mode="content">
    +		<fo:block text-align="center">
    +			<fo:external-graphic
    +				src="url('C:/Users/lukas/workspace/jOOQ-website/img/{substring-after(@src, 'img/')}')"
    +				xsl:use-attribute-sets="img"/>
    +		</fo:block>
    +	</xsl:template>
    +
    +	<xsl:template match="p" mode="content">
    +		<fo:block xsl:use-attribute-sets="p">
    +			<xsl:apply-templates mode="content"/>
    +		</fo:block>
    +	</xsl:template>
    +
    +	<xsl:template match="ul" mode="content">
    +		<fo:block xsl:use-attribute-sets="ul">
    +			<fo:list-block>
    +				<xsl:apply-templates mode="content" />
    +			</fo:list-block>
    +		</fo:block>
    +	</xsl:template>
    +
    +	<xsl:template match="ol" mode="content">
    +		<fo:block xsl:use-attribute-sets="ol">
    +			<fo:list-block>
    +				<xsl:apply-templates mode="content" />
    +			</fo:list-block>
    +		</fo:block>
    +	</xsl:template>
    +
    +	<xsl:template match="li" mode="content">
    +		<fo:list-item>
    +			<fo:list-item-label>
    +				<fo:block xsl:use-attribute-sets="li">
    +					<xsl:choose>
    +						<xsl:when test="count(ancestor::ul)=1">-</xsl:when>
    +						<xsl:when test="count(ancestor::ul)=2">*</xsl:when>
    +						<xsl:otherwise>o</xsl:otherwise>
    +					</xsl:choose>
    +				</fo:block>
    +			</fo:list-item-label>
    +			<fo:list-item-body start-indent="body-start()">
    +				<fo:block xsl:use-attribute-sets="li">
    +					<xsl:apply-templates mode="content" />
    +				</fo:block>
    +			</fo:list-item-body>
    +		</fo:list-item>
    +	</xsl:template>
    +
    +	<xsl:template match="br" mode="content">
    +		<fo:block/>
    +	</xsl:template>
    +
    +	<xsl:template match="strong" mode="content">
    +		<fo:inline xsl:use-attribute-sets="strong">
    +			<xsl:apply-templates mode="content" />
    +		</fo:inline>
    +	</xsl:template>
    +
    +	<xsl:template match="code-pair" mode="content">
    +		<fo:table table-layout="fixed" width="100%">
    +			<fo:table-column column-width="{$content-width div 2}mm"/>
    +			<fo:table-column column-width="{$content-width div 2}mm"/>
    +
    +			<fo:table-body>
    +			  	<fo:table-row>
    +			    	<fo:table-cell>
    +			      		<fo:block>
    +			      			<xsl:apply-templates select="sql" mode="content" />
    +			      		</fo:block>
    +			    	</fo:table-cell>
    +			    	<fo:table-cell>
    +			     		<fo:block>
    +			     			<xsl:apply-templates select="java" mode="content" />
    +			     		</fo:block>
    +			    	</fo:table-cell>
    +			  	</fo:table-row>
    +			</fo:table-body>
    +		</fo:table>
    +	</xsl:template>
    +
    +	<xsl:template match="java | sql | xml | text | config" mode="content">
    +		<fo:block xsl:use-attribute-sets="pre">
    +			<xsl:apply-templates mode="content" />
    +        </fo:block>
    +	</xsl:template>
    +
    +	<xsl:template match="@*|node()" mode="content">
    +		<xsl:copy>
    +            <xsl:apply-templates select="@*|node()" mode="content"/>
    +        </xsl:copy>
    +    </xsl:template>
    +
    +   	<xsl:template match="section" mode="toc">
    +		<xsl:if test="count(sections/section) &gt; 0">
    +			<fo:block xsl:use-attribute-sets="ol-toc">
    +				<fo:list-block>
    +					<xsl:for-each select="sections/section">
    +						<fo:list-item>
    +			          		<fo:list-item-label>
    +			          			<fo:block xsl:use-attribute-sets="li-toc">
    +			            			<xsl:number format="1." />
    +		            			</fo:block>
    +			          		</fo:list-item-label>
    +			          		<fo:list-item-body start-indent="body-start()">
    +			          			<fo:block xsl:use-attribute-sets="li-toc">
    +			          				<fo:block text-align-last="justify">
    +				          				<fo:inline>
    +				          					<fo:basic-link internal-destination="{@id}">
    +						            			<xsl:value-of select="title" />
    +						            			<fo:leader leader-pattern="dots"/>
    +						            			<fo:page-number-citation ref-id="{@id}"/>
    +					            			</fo:basic-link>
    +				          				</fo:inline>
    +			          				</fo:block>
    +			            			<xsl:apply-templates select="." mode="toc"/>
    +			            		</fo:block>
    +			          		</fo:list-item-body>
    +			        	</fo:list-item>
    +					</xsl:for-each>
    +				</fo:list-block>
    +			</fo:block>
    +		</xsl:if>
    +	</xsl:template>
    +
    +	<xsl:template match="section" mode="chapter-number">
    +		<xsl:if test="@id != 'manual'">
    +			<xsl:apply-templates select="../.." mode="chapter-number"/>
    +
    +			<xsl:value-of select="count(preceding-sibling::section) + 1"/>
    +			<xsl:text>.</xsl:text>
    +		</xsl:if>
    +	</xsl:template>
    +</xsl:stylesheet>
    \ No newline at end of file
    diff --git a/jOOQ-website/tutorial.php b/jOOQ-website/tutorial.php
    new file mode 100644
    index 00000000000..a50d3689ac3
    --- /dev/null
    +++ b/jOOQ-website/tutorial.php
    @@ -0,0 +1,398 @@
    +<?php
    +require 'frame.php';
    +function getH1() {
    +    echo 'Tutorial: Getting started quickly with jOOQ';
    +}
    +function getSlogan() {
    +    return "Get up and running quickly with jOOQ following these first simple steps.";
    +}
    +function getActiveMenu() {
    +    return "tutorial";
    +}
    +function printContent() {
    +?>
    +<h2>Introduction</h2>
    +<p>
    +Download and run jOOQ in 6 easy steps:
    +</p>
    +
    +<ul>
    +    <li><a href="#step0">Preparation: Download jOOQ and your SQL driver</a></li>
    +    <li><a href="#step1">Step 1: Create a SQL database and a table</a></li>
    +    <li><a href="#step2">Step 2: Generate classes</a></li>
    +    <li><a href="#step3">Step 3: Write a main class and establish a MySQL connection</a></li>
    +    <li><a href="#step4">Step 4: Write a query using jOOQ's DSL</a></li>
    +    <li><a href="#step5">Step 5: Iterate over results</a></li>
    +    <li><a href="#step6">Step 6: Explore!</a></li>
    +    <li><a href="#FAQ">FAQ</a></li>
    +</ul>
    +
    +<h2 id="step0">Preparation: Download jOOQ and your SQL driver</h2>
    +<p>
    +If you haven't already downloaded them, download jOOQ:<br/>
    +<a href="https://sourceforge.net/projects/jooq/files/Release/" target="_blank" title="jOOQ download">https://sourceforge.net/projects/jooq/files/Release/</a>
    +</p>
    +<p>
    +Alternatively, you can create a Maven dependency:
    +</p>
    +<pre class="prettyprint lang-xml">
    +&lt;dependency&gt;
    +  &lt;groupId&gt;org.jooq&lt;/groupId&gt;
    +  &lt;!-- artefacts are jooq, jooq-meta, jooq-codegen --&gt;
    +  &lt;artifactId&gt;jooq&lt;/artifactId&gt;
    +  &lt;version&gt;2.0.0&lt;/version&gt;
    +&lt;/dependency&gt;
    +</pre>
    +<p>
    +For this example, we'll be using MySQL. If you haven't already downloaded MySQL Connector/J, download it here:<br/>
    +<a href="http://dev.mysql.com/downloads/connector/j/" target="_blank" title="MySQL JDBC driver">http://dev.mysql.com/downloads/connector/j/</a>
    +</p>
    +
    +
    +<h2 id="step1">Step 1: Create a SQL database and a table</h2>
    +<p>
    +We're going to create a database called "guestbook" and a corresponding "posts" table. Connect to MySQL via your command line client and type the following:
    +</p>
    +<pre class="prettyprint lang-sql">
    +CREATE DATABASE guestbook;
    +
    +CREATE TABLE `posts` (
    +  `id` bigint(20) NOT NULL,
    +  `body` varchar(255) DEFAULT NULL,
    +  `timestamp` datetime DEFAULT NULL,
    +  `title` varchar(255) DEFAULT NULL,
    +  PRIMARY KEY (`id`)
    +);
    +</pre>
    +
    +<h2 id="step2">Step 2: Generate classes</h2>
    +<p>
    +In this step, we're going to use jOOQ's command line tools to generate classes that
    +map to the Posts table we just created. More detailed information about how to
    +set up the jOOQ code generator can be found here:<br/>
    +<a href="http://www.jooq.org/manual/META/Configuration/" target="_blank" title="jOOQ manual pages about setting up the code generator">http://www.jooq.org/manual/META/Configuration/</a>
    +</p>
    +<p>
    +The easiest way to generate a schema is to copy the jOOQ jar files (there should be 3)
    +and the MySQL Connector jar file to a temporary directory. Then, create a guestbook.xml
    +that looks like this:
    +</p>
    +<pre class="prettyprint lang-xml">
    +&lt;?xml version="1.0" encoding="UTF-8" standalone="yes"?>
    +&lt;configuration xmlns="http://www.jooq.org/xsd/jooq-codegen-2.0.4.xsd">
    +  &lt;!-- Configure the database connection here -->
    +  &lt;jdbc>
    +    &lt;driver>com.mysql.jdbc.Driver&lt;/driver>
    +    &lt;url>jdbc:mysql://localhost:3306/guestbook&lt;/url>
    +    &lt;user>root&lt;/user>
    +    &lt;password>&lt;/password>
    +  &lt;/jdbc>
    +
    +  &lt;generator>
    +    &lt;!-- The default code generator. You can override this one, to generate your own code style
    +         Defaults to org.jooq.util.DefaultGenerator -->
    +    &lt;name>org.jooq.util.DefaultGenerator&lt;/name>
    +
    +    &lt;database>
    +      &lt;!-- The database type. The format here is:
    +           org.util.[database].[database]Database -->
    +      &lt;name>org.jooq.util.mysql.MySQLDatabase&lt;/name>
    +
    +      &lt;!-- The database schema (or owner, user, database name) to be generated -->
    +      &lt;inputSchema>guestbook&lt;/inputSchema>
    +
    +      &lt;!-- All elements that are generated from your schema (several Java regular expressions, separated by comma)
    +           Watch out for case-sensitivity. Depending on your database, this might be important! -->
    +      &lt;includes>.*&lt;/includes>
    +
    +      &lt;!-- All elements that are excluded from your schema (several Java regular expressions, separated by comma).
    +              Excludes match before includes -->
    +      &lt;excludes>&lt;/excludes>
    +    &lt;/database>
    +
    +    &lt;generate>
    +      &lt;!-- Primary key / foreign key relations should be generated and used.
    +           This will be a prerequisite for various advanced features
    +           Defaults to false -->
    +      &lt;relations>true&lt;/relations>
    +    &lt;/generate>
    +
    +    &lt;target>
    +      &lt;!-- The destination package of your generated classes (within the destination directory) -->
    +      &lt;packageName>test.generated&lt;/packageName>
    +
    +      &lt;!-- The destination directory of your generated classes -->
    +      &lt;directory>C:/workspace/MySQLTest/src&lt;/directory>
    +    &lt;/target>
    +  &lt;/generator>
    +&lt;/configuration>
    +</pre>
    +<p>
    +Replace the username with whatever user has the appropriate privileges.
    +You'll want to look at the other values and replace as necessary.
    +Here are the two interesting properties:
    +</p>
    +<p>
    +<code>generator.target.package</code> - set this to the parent package you want
    +to create for the generated classes. The setting of <code>test.generated</code>
    +will cause the <code>test.generated.Posts</code> and
    +<code>test.generated.PostsRecord</code> to be created
    +</p>
    +<p>
    +<code>generator.target.directory</code> - the directory to output to.
    +</p>
    +<p>
    +Once you have the JAR files and guestbook.xml in your temp directory, type this
    +(use colons instead of semi-colons on UNIX/Linux systems):
    +</p>
    +<pre>
    +java -classpath jooq-2.0.0.jar;jooq-meta-2.0.0.jar;jooq-codegen-2.0.0.jar;mysql-connector-java-5.1.18-bin.jar;. org.jooq.util.GenerationTool /guestbook.xml
    +</pre>
    +<p>
    +Note the prefix slash before guestbook.properies.
    +Even though it's in our working directory, we need to prepend a slash, as it is
    +loaded from the classpath.
    +Replace the filenames with your filenames.
    +In this example, jOOQ 2.0.0 is being used.
    +If everything has worked, you should see this in your console output:
    +</p>
    +<pre>
    +Nov 1, 2011 7:25:06 PM org.jooq.impl.JooqLogger info
    +INFO: Initialising properties  : /guestbook.xml
    +Nov 1, 2011 7:25:07 PM org.jooq.impl.JooqLogger info
    +INFO: Database parameters
    +Nov 1, 2011 7:25:07 PM org.jooq.impl.JooqLogger info
    +INFO: ----------------------------------------------------------
    +Nov 1, 2011 7:25:07 PM org.jooq.impl.JooqLogger info
    +INFO:   dialect                : MYSQL
    +Nov 1, 2011 7:25:07 PM org.jooq.impl.JooqLogger info
    +INFO:   schema                 : guestbook
    +Nov 1, 2011 7:25:07 PM org.jooq.impl.JooqLogger info
    +INFO:   target dir             : /Users/jOOQ/Documents/workspace/MySQLTest/src
    +Nov 1, 2011 7:25:07 PM org.jooq.impl.JooqLogger info
    +INFO:   target package         : test.generated
    +Nov 1, 2011 7:25:07 PM org.jooq.impl.JooqLogger info
    +INFO: ----------------------------------------------------------
    +Nov 1, 2011 7:25:07 PM org.jooq.impl.JooqLogger info
    +INFO: Emptying                 : /Users/jOOQ/workspace/MySQLTest/src/test/generated
    +Nov 1, 2011 7:25:07 PM org.jooq.impl.JooqLogger info
    +INFO: Generating classes in    : /Users/jOOQ/workspace/MySQLTest/src/test/generated
    +Nov 1, 2011 7:25:07 PM org.jooq.impl.JooqLogger info
    +INFO: Generating schema        : Guestbook.java
    +Nov 1, 2011 7:25:07 PM org.jooq.impl.JooqLogger info
    +INFO: Generating factory       : GuestbookFactory.java
    +Nov 1, 2011 7:25:07 PM org.jooq.impl.JooqLogger info
    +INFO: Schema generated         : Total: 122.18ms
    +Nov 1, 2011 7:25:07 PM org.jooq.impl.JooqLogger info
    +INFO: Sequences fetched        : 0 (0 included, 0 excluded)
    +Nov 1, 2011 7:25:07 PM org.jooq.impl.JooqLogger info
    +INFO: Masterdata tables fetched: 0 (0 included, 0 excluded)
    +Nov 1, 2011 7:25:07 PM org.jooq.impl.JooqLogger info
    +INFO: Tables fetched           : 5 (5 included, 0 excluded)
    +Nov 1, 2011 7:25:07 PM org.jooq.impl.JooqLogger info
    +INFO: Generating tables        : /Users/jOOQ/workspace/MySQLTest/src/test/generated/tables
    +Nov 1, 2011 7:25:07 PM org.jooq.impl.JooqLogger info
    +INFO: ARRAYs fetched           : 0 (0 included, 0 excluded)
    +Nov 1, 2011 7:25:07 PM org.jooq.impl.JooqLogger info
    +INFO: Enums fetched            : 0 (0 included, 0 excluded)
    +Nov 1, 2011 7:25:07 PM org.jooq.impl.JooqLogger info
    +INFO: UDTs fetched             : 0 (0 included, 0 excluded)
    +Nov 1, 2011 7:25:07 PM org.jooq.impl.JooqLogger info
    +INFO: Generating table         : Posts.java
    +Nov 1, 2011 7:25:07 PM org.jooq.impl.JooqLogger info
    +INFO: Tables generated         : Total: 680.464ms, +558.284ms
    +Nov 1, 2011 7:25:07 PM org.jooq.impl.JooqLogger info
    +INFO: Generating Keys          : /Users/jOOQ/workspace/MySQLTest/src/test/generated/tables
    +Nov 1, 2011 7:25:08 PM org.jooq.impl.JooqLogger info
    +INFO: Keys generated           : Total: 718.621ms, +38.157ms
    +Nov 1, 2011 7:25:08 PM org.jooq.impl.JooqLogger info
    +INFO: Generating records       : /Users/jOOQ/workspace/MySQLTest/src/test/generated/tables/records
    +Nov 1, 2011 7:25:08 PM org.jooq.impl.JooqLogger info
    +INFO: Generating record        : PostsRecord.java
    +Nov 1, 2011 7:25:08 PM org.jooq.impl.JooqLogger info
    +INFO: Table records generated  : Total: 782.545ms, +63.924ms
    +Nov 1, 2011 7:25:08 PM org.jooq.impl.JooqLogger info
    +INFO: Routines fetched         : 0 (0 included, 0 excluded)
    +Nov 1, 2011 7:25:08 PM org.jooq.impl.JooqLogger info
    +INFO: Packages fetched         : 0 (0 included, 0 excluded)
    +Nov 1, 2011 7:25:08 PM org.jooq.impl.JooqLogger info
    +INFO: GENERATION FINISHED!     : Total: 791.688ms, +9.143ms
    +</pre>
    +
    +
    +
    +<h2 id="step3">Step 3: Write a main class and establish a MySQL connection</h2>
    +<p>
    +Let's just write a vanilla main class in the project containing the generated classes:
    +</p>
    +<pre class="prettyprint lang-java">
    +// For convenience, always static import your generated tables and
    +// jOOQ functions to decrease verbosity:
    +import static test.generated.Tables.*;
    +import static org.jooq.impl.Factory.*;
    +
    +public class Main {
    +    public static void main(String[] args) throws Exception {
    +        Connection conn = null;
    +
    +        String userName = "root";
    +        String password = "";
    +        String url = "jdbc:mysql://localhost:3306/guestbook";
    +
    +        try {
    +            Class.forName("com.mysql.jdbc.Driver").newInstance();
    +            conn = DriverManager.getConnection(url, userName, password);
    +        } catch (Exception e) {
    +            e.printStackTrace();
    +        } finally {
    +            if (conn != null) {
    +                conn.close();
    +            }
    +        }
    +    }
    +}
    +</pre>
    +<p>
    +This is pretty standard code for establishing a MySQL connection.
    +</p>
    +
    +
    +<h2 id="step4">Step 4: Write a query using jOOQ's DSL</h2>
    +<p>
    +Let's add a simple query:
    +</p>
    +<pre class="prettyprint lang-java">
    +GuestbookFactory create = new GuestbookFactory(conn);
    +Result&lt;?&gt; result = create.select().from(POSTS).fetch();
    +</pre>
    +<p>
    +First get an instance of <code>GuestbookFactory</code> so we can write a simple
    +<code>SELECT</code> query. We pass an instance of the MySQL connection to
    +<code>GuestbookFactory</code>. Note that the factory doesn't close the connection.
    +We'll have to do that ourselves.
    +</p>
    +<p>
    +We then use jOOQ's DSL to return an instance of Result. We'll be using this result in
    +the next step.
    +</p>
    +
    +
    +<h2 id="step5">Step 5: Iterate over results</h2>
    +<p>
    +After the line where we retrieve the results, let's iterate over the results and
    +print out the data:
    +</p>
    +<pre class="prettyprint lang-java">
    +for (Record r : result) {
    +    Long id = r.getValue(POSTS.ID);
    +    String title = r.getValue(POSTS.TITLE);
    +    String description = r.getValue(POSTS.BODY);
    +
    +    System.out.println("ID: " + id + " title: " + title + " desciption: " + description);
    +}
    +</pre>
    +<p>
    +The full program should now look like this:
    +</p>
    +<pre class="prettyprint lang-java">
    +package test;
    +
    +// For convenience, always static import your generated tables and
    +// jOOQ functions to decrease verbosity:
    +import static test.generated.Tables.*;
    +import static org.jooq.impl.Factory.*;
    +
    +import java.sql.Connection;
    +import java.sql.DriverManager;
    +import java.sql.ResultSet;
    +import java.sql.Statement;
    +
    +import org.jooq.Record;
    +import org.jooq.Result;
    +
    +import test.generated.GuestbookFactory;
    +import test.generated.tables.Posts;
    +
    +public class Main {
    +
    +    /**
    +     * @param args
    +     */
    +    public static void main(String[] args) {
    +        Connection conn = null;
    +
    +        String userName = "root";
    +        String password = "";
    +        String url = "jdbc:mysql://localhost:3306/guestbook";
    +
    +        try {
    +            Class.forName("com.mysql.jdbc.Driver").newInstance();
    +            conn = DriverManager.getConnection(url, userName, password);
    +
    +            GuestbookFactory create = new GuestbookFactory(conn);
    +            Result result = create.select().from(POSTS).fetch();
    +
    +            for (Record r : result) {
    +                Long id = r.getValue(POSTS.ID);
    +                String title = r.getValue(POSTS.TITLE);
    +                String description = r.getValue(POSTS.BODY);
    +
    +                System.out.println("ID: " + id + " title: " + title + " desciption: " + description);
    +            }
    +        } catch (Exception e) {
    +            e.printStackTrace();
    +        } finally {
    +            if (conn != null) {
    +                conn.close();
    +            }
    +        }
    +    }
    +}
    +</pre>
    +
    +<h2 id="step6">Step 6: Explore!</h2>
    +<p>
    +jOOQ has grown to be a comprehensive SQL library. For more information, please consider the manual:<br/>
    +<a href="http://www.jooq.org/manual/" title="jOOQ Manual">http://www.jooq.org/manual/</a>
    +</p>
    +<p>
    +... explore the Javadoc:<br/>
    +<a href="http://www.jooq.org/javadoc/latest/" title="jOOQ Javadoc">http://www.jooq.org/javadoc/latest/</a>
    +</p>
    +<p>
    +... or join the news group:<br/>
    +<a href="https://groups.google.com/forum/#!forum/jooq-user" title="jOOQ news group">https://groups.google.com/forum/#!forum/jooq-user</a>
    +</p>
    +<p>
    +    This tutorial is the courtesy of Ikai Lan. See the original source here:<br/>
    +      <a href="http://ikaisays.com/2011/11/01/getting-started-with-jooq-a-tutorial/" target="_blank" title="Ikai Lan's jOOQ tutorial">http://ikaisays.com/2011/11/01/getting-started-with-jooq-a-tutorial/</a>
    +</p>
    +
    +<h2 id="FAQ">FAQ</h2>
    +<p>
    +Before you go on and read the whole manual, there are a couple of interesting questions that you might want to consider:
    +</p>
    +
    +<p>
    +<b class="mono">Q:</b> When I generate source code from MySQL, can I also use it on another database?<br/>
    +<b class="mono">A:</b> Yes! The generated Java code will work for all supported databases, not only for the database driver that you used when you generated the code.
    +</p>
    +
    +<p>
    +<b class="mono">Q:</b> When I generate source code from my developer database, can I also use it on production?<br/>
    +<b class="mono">A:</b> Yes! You can map your schema at code generation time or at run time. <a href="http://www.jooq.org/manual/ADVANCED/SchemaMapping/" title="Schema mapping functionality in jOOQ">See the manual for details.</a>
    +</p>
    +
    +<p>
    +<b class="mono">Q:</b> Can I use jOOQ without code generation?<br/>
    +<b class="mono">A:</b> Yes! You can define tables, fields, conditions using Strings. <a href="http://www.jooq.org/manual/DSL/SQL/" title="Plain SQL functionality in jOOQ">See the manual for details.</a>
    +</p>
    +
    +<p>
    +<b class="mono">Q:</b> Can I use jOOQ as a query builder and execute queries with Spring?<br/>
    +<b class="mono">A:</b> Yes! This has been done by other users and will be documented soon. <a href="http://stackoverflow.com/questions/4474365/jooq-and-spring" title="Stack Overflow question about using jOOQ with Spring">See this Stack Overflow question for details.</a>
    +</p>
    +
    +<?php
    +}
    +?>
    \ No newline at end of file
    diff --git a/jOOQ/.classpath b/jOOQ/.classpath
    new file mode 100644
    index 00000000000..c0821b01376
    --- /dev/null
    +++ b/jOOQ/.classpath
    @@ -0,0 +1,9 @@
    +<?xml version="1.0" encoding="UTF-8"?>
    +<classpath>
    +	<classpathentry kind="src" output="target/classes" path="src/main/java"/>
    +	<classpathentry kind="src" path="src/test/java"/>
    +	<classpathentry kind="src" path="src/main/resources"/>
    +	<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.6"/>
    +	<classpathentry exported="true" kind="con" path="org.maven.ide.eclipse.MAVEN2_CLASSPATH_CONTAINER"/>
    +	<classpathentry kind="output" path="target/classes"/>
    +</classpath>
    diff --git a/jOOQ/.gitignore b/jOOQ/.gitignore
    new file mode 100644
    index 00000000000..ea8c4bf7f35
    --- /dev/null
    +++ b/jOOQ/.gitignore
    @@ -0,0 +1 @@
    +/target
    diff --git a/jOOQ/.project b/jOOQ/.project
    new file mode 100644
    index 00000000000..62440fe006d
    --- /dev/null
    +++ b/jOOQ/.project
    @@ -0,0 +1,23 @@
    +<?xml version="1.0" encoding="UTF-8"?>
    +<projectDescription>
    +	<name>jOOQ</name>
    +	<comment></comment>
    +	<projects>
    +	</projects>
    +	<buildSpec>
    +		<buildCommand>
    +			<name>org.eclipse.jdt.core.javabuilder</name>
    +			<arguments>
    +			</arguments>
    +		</buildCommand>
    +		<buildCommand>
    +			<name>org.maven.ide.eclipse.maven2Builder</name>
    +			<arguments>
    +			</arguments>
    +		</buildCommand>
    +	</buildSpec>
    +	<natures>
    +		<nature>org.maven.ide.eclipse.maven2Nature</nature>
    +		<nature>org.eclipse.jdt.core.javanature</nature>
    +	</natures>
    +</projectDescription>
    diff --git a/jOOQ/.settings/org.eclipse.jdt.core.prefs b/jOOQ/.settings/org.eclipse.jdt.core.prefs
    new file mode 100644
    index 00000000000..eea4bca85e9
    --- /dev/null
    +++ b/jOOQ/.settings/org.eclipse.jdt.core.prefs
    @@ -0,0 +1,350 @@
    +#Sat Nov 05 12:53:40 CET 2011
    +eclipse.preferences.version=1
    +org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
    +org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.6
    +org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve
    +org.eclipse.jdt.core.compiler.compliance=1.6
    +org.eclipse.jdt.core.compiler.debug.lineNumber=generate
    +org.eclipse.jdt.core.compiler.debug.localVariable=generate
    +org.eclipse.jdt.core.compiler.debug.sourceFile=generate
    +org.eclipse.jdt.core.compiler.problem.annotationSuperInterface=warning
    +org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
    +org.eclipse.jdt.core.compiler.problem.autoboxing=ignore
    +org.eclipse.jdt.core.compiler.problem.comparingIdentical=warning
    +org.eclipse.jdt.core.compiler.problem.deadCode=warning
    +org.eclipse.jdt.core.compiler.problem.deprecation=warning
    +org.eclipse.jdt.core.compiler.problem.deprecationInDeprecatedCode=disabled
    +org.eclipse.jdt.core.compiler.problem.deprecationWhenOverridingDeprecatedMethod=disabled
    +org.eclipse.jdt.core.compiler.problem.discouragedReference=warning
    +org.eclipse.jdt.core.compiler.problem.emptyStatement=ignore
    +org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
    +org.eclipse.jdt.core.compiler.problem.fallthroughCase=ignore
    +org.eclipse.jdt.core.compiler.problem.fatalOptionalError=disabled
    +org.eclipse.jdt.core.compiler.problem.fieldHiding=warning
    +org.eclipse.jdt.core.compiler.problem.finalParameterBound=warning
    +org.eclipse.jdt.core.compiler.problem.finallyBlockNotCompletingNormally=warning
    +org.eclipse.jdt.core.compiler.problem.forbiddenReference=warning
    +org.eclipse.jdt.core.compiler.problem.hiddenCatchBlock=warning
    +org.eclipse.jdt.core.compiler.problem.incompatibleNonInheritedInterfaceMethod=warning
    +org.eclipse.jdt.core.compiler.problem.incompleteEnumSwitch=ignore
    +org.eclipse.jdt.core.compiler.problem.indirectStaticAccess=ignore
    +org.eclipse.jdt.core.compiler.problem.localVariableHiding=warning
    +org.eclipse.jdt.core.compiler.problem.methodWithConstructorName=warning
    +org.eclipse.jdt.core.compiler.problem.missingDeprecatedAnnotation=warning
    +org.eclipse.jdt.core.compiler.problem.missingHashCodeMethod=ignore
    +org.eclipse.jdt.core.compiler.problem.missingOverrideAnnotation=warning
    +org.eclipse.jdt.core.compiler.problem.missingOverrideAnnotationForInterfaceMethodImplementation=enabled
    +org.eclipse.jdt.core.compiler.problem.missingSerialVersion=warning
    +org.eclipse.jdt.core.compiler.problem.missingSynchronizedOnInheritedMethod=warning
    +org.eclipse.jdt.core.compiler.problem.noEffectAssignment=warning
    +org.eclipse.jdt.core.compiler.problem.noImplicitStringConversion=warning
    +org.eclipse.jdt.core.compiler.problem.nonExternalizedStringLiteral=ignore
    +org.eclipse.jdt.core.compiler.problem.nullReference=error
    +org.eclipse.jdt.core.compiler.problem.overridingPackageDefaultMethod=warning
    +org.eclipse.jdt.core.compiler.problem.parameterAssignment=ignore
    +org.eclipse.jdt.core.compiler.problem.possibleAccidentalBooleanAssignment=warning
    +org.eclipse.jdt.core.compiler.problem.potentialNullReference=warning
    +org.eclipse.jdt.core.compiler.problem.rawTypeReference=warning
    +org.eclipse.jdt.core.compiler.problem.redundantNullCheck=warning
    +org.eclipse.jdt.core.compiler.problem.redundantSuperinterface=warning
    +org.eclipse.jdt.core.compiler.problem.specialParameterHidingField=disabled
    +org.eclipse.jdt.core.compiler.problem.staticAccessReceiver=warning
    +org.eclipse.jdt.core.compiler.problem.suppressOptionalErrors=disabled
    +org.eclipse.jdt.core.compiler.problem.suppressWarnings=enabled
    +org.eclipse.jdt.core.compiler.problem.syntheticAccessEmulation=ignore
    +org.eclipse.jdt.core.compiler.problem.typeParameterHiding=warning
    +org.eclipse.jdt.core.compiler.problem.uncheckedTypeOperation=warning
    +org.eclipse.jdt.core.compiler.problem.undocumentedEmptyBlock=ignore
    +org.eclipse.jdt.core.compiler.problem.unhandledWarningToken=warning
    +org.eclipse.jdt.core.compiler.problem.unnecessaryElse=ignore
    +org.eclipse.jdt.core.compiler.problem.unnecessaryTypeCheck=warning
    +org.eclipse.jdt.core.compiler.problem.unqualifiedFieldAccess=ignore
    +org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownException=warning
    +org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionExemptExceptionAndThrowable=enabled
    +org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionIncludeDocCommentReference=enabled
    +org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionWhenOverriding=disabled
    +org.eclipse.jdt.core.compiler.problem.unusedImport=warning
    +org.eclipse.jdt.core.compiler.problem.unusedLabel=warning
    +org.eclipse.jdt.core.compiler.problem.unusedLocal=warning
    +org.eclipse.jdt.core.compiler.problem.unusedObjectAllocation=ignore
    +org.eclipse.jdt.core.compiler.problem.unusedParameter=warning
    +org.eclipse.jdt.core.compiler.problem.unusedParameterIncludeDocCommentReference=enabled
    +org.eclipse.jdt.core.compiler.problem.unusedParameterWhenImplementingAbstract=disabled
    +org.eclipse.jdt.core.compiler.problem.unusedParameterWhenOverridingConcrete=disabled
    +org.eclipse.jdt.core.compiler.problem.unusedPrivateMember=warning
    +org.eclipse.jdt.core.compiler.problem.unusedWarningToken=warning
    +org.eclipse.jdt.core.compiler.problem.varargsArgumentNeedCast=warning
    +org.eclipse.jdt.core.compiler.source=1.6
    +org.eclipse.jdt.core.formatter.align_type_members_on_columns=true
    +org.eclipse.jdt.core.formatter.alignment_for_arguments_in_allocation_expression=16
    +org.eclipse.jdt.core.formatter.alignment_for_arguments_in_annotation=0
    +org.eclipse.jdt.core.formatter.alignment_for_arguments_in_enum_constant=16
    +org.eclipse.jdt.core.formatter.alignment_for_arguments_in_explicit_constructor_call=16
    +org.eclipse.jdt.core.formatter.alignment_for_arguments_in_method_invocation=16
    +org.eclipse.jdt.core.formatter.alignment_for_arguments_in_qualified_allocation_expression=16
    +org.eclipse.jdt.core.formatter.alignment_for_assignment=0
    +org.eclipse.jdt.core.formatter.alignment_for_binary_expression=16
    +org.eclipse.jdt.core.formatter.alignment_for_compact_if=16
    +org.eclipse.jdt.core.formatter.alignment_for_conditional_expression=80
    +org.eclipse.jdt.core.formatter.alignment_for_enum_constants=49
    +org.eclipse.jdt.core.formatter.alignment_for_expressions_in_array_initializer=16
    +org.eclipse.jdt.core.formatter.alignment_for_method_declaration=0
    +org.eclipse.jdt.core.formatter.alignment_for_multiple_fields=16
    +org.eclipse.jdt.core.formatter.alignment_for_parameters_in_constructor_declaration=16
    +org.eclipse.jdt.core.formatter.alignment_for_parameters_in_method_declaration=16
    +org.eclipse.jdt.core.formatter.alignment_for_selector_in_method_invocation=16
    +org.eclipse.jdt.core.formatter.alignment_for_superclass_in_type_declaration=16
    +org.eclipse.jdt.core.formatter.alignment_for_superinterfaces_in_enum_declaration=16
    +org.eclipse.jdt.core.formatter.alignment_for_superinterfaces_in_type_declaration=16
    +org.eclipse.jdt.core.formatter.alignment_for_throws_clause_in_constructor_declaration=16
    +org.eclipse.jdt.core.formatter.alignment_for_throws_clause_in_method_declaration=16
    +org.eclipse.jdt.core.formatter.blank_lines_after_imports=1
    +org.eclipse.jdt.core.formatter.blank_lines_after_package=1
    +org.eclipse.jdt.core.formatter.blank_lines_before_field=0
    +org.eclipse.jdt.core.formatter.blank_lines_before_first_class_body_declaration=0
    +org.eclipse.jdt.core.formatter.blank_lines_before_imports=1
    +org.eclipse.jdt.core.formatter.blank_lines_before_member_type=1
    +org.eclipse.jdt.core.formatter.blank_lines_before_method=1
    +org.eclipse.jdt.core.formatter.blank_lines_before_new_chunk=1
    +org.eclipse.jdt.core.formatter.blank_lines_before_package=0
    +org.eclipse.jdt.core.formatter.blank_lines_between_import_groups=1
    +org.eclipse.jdt.core.formatter.blank_lines_between_type_declarations=1
    +org.eclipse.jdt.core.formatter.brace_position_for_annotation_type_declaration=end_of_line
    +org.eclipse.jdt.core.formatter.brace_position_for_anonymous_type_declaration=end_of_line
    +org.eclipse.jdt.core.formatter.brace_position_for_array_initializer=end_of_line
    +org.eclipse.jdt.core.formatter.brace_position_for_block=end_of_line
    +org.eclipse.jdt.core.formatter.brace_position_for_block_in_case=end_of_line
    +org.eclipse.jdt.core.formatter.brace_position_for_constructor_declaration=end_of_line
    +org.eclipse.jdt.core.formatter.brace_position_for_enum_constant=end_of_line
    +org.eclipse.jdt.core.formatter.brace_position_for_enum_declaration=end_of_line
    +org.eclipse.jdt.core.formatter.brace_position_for_method_declaration=end_of_line
    +org.eclipse.jdt.core.formatter.brace_position_for_switch=end_of_line
    +org.eclipse.jdt.core.formatter.brace_position_for_type_declaration=end_of_line
    +org.eclipse.jdt.core.formatter.comment.clear_blank_lines_in_block_comment=true
    +org.eclipse.jdt.core.formatter.comment.clear_blank_lines_in_javadoc_comment=true
    +org.eclipse.jdt.core.formatter.comment.format_block_comments=true
    +org.eclipse.jdt.core.formatter.comment.format_header=false
    +org.eclipse.jdt.core.formatter.comment.format_html=true
    +org.eclipse.jdt.core.formatter.comment.format_javadoc_comments=true
    +org.eclipse.jdt.core.formatter.comment.format_line_comments=true
    +org.eclipse.jdt.core.formatter.comment.format_source_code=true
    +org.eclipse.jdt.core.formatter.comment.indent_parameter_description=true
    +org.eclipse.jdt.core.formatter.comment.indent_root_tags=true
    +org.eclipse.jdt.core.formatter.comment.insert_new_line_before_root_tags=insert
    +org.eclipse.jdt.core.formatter.comment.insert_new_line_for_parameter=do not insert
    +org.eclipse.jdt.core.formatter.comment.line_length=80
    +org.eclipse.jdt.core.formatter.comment.new_lines_at_block_boundaries=true
    +org.eclipse.jdt.core.formatter.comment.new_lines_at_javadoc_boundaries=true
    +org.eclipse.jdt.core.formatter.comment.preserve_white_space_between_code_and_line_comments=false
    +org.eclipse.jdt.core.formatter.compact_else_if=true
    +org.eclipse.jdt.core.formatter.continuation_indentation=1
    +org.eclipse.jdt.core.formatter.continuation_indentation_for_array_initializer=1
    +org.eclipse.jdt.core.formatter.disabling_tag=@formatter\:off
    +org.eclipse.jdt.core.formatter.enabling_tag=@formatter\:on
    +org.eclipse.jdt.core.formatter.format_guardian_clause_on_one_line=false
    +org.eclipse.jdt.core.formatter.format_line_comment_starting_on_first_column=true
    +org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_annotation_declaration_header=true
    +org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_enum_constant_header=true
    +org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_enum_declaration_header=true
    +org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_type_header=true
    +org.eclipse.jdt.core.formatter.indent_breaks_compare_to_cases=true
    +org.eclipse.jdt.core.formatter.indent_empty_lines=false
    +org.eclipse.jdt.core.formatter.indent_statements_compare_to_block=true
    +org.eclipse.jdt.core.formatter.indent_statements_compare_to_body=true
    +org.eclipse.jdt.core.formatter.indent_switchstatements_compare_to_cases=true
    +org.eclipse.jdt.core.formatter.indent_switchstatements_compare_to_switch=true
    +org.eclipse.jdt.core.formatter.indentation.size=4
    +org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_field=insert
    +org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_local_variable=insert
    +org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_member=insert
    +org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_method=insert
    +org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_package=insert
    +org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_parameter=do not insert
    +org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_type=insert
    +org.eclipse.jdt.core.formatter.insert_new_line_after_label=do not insert
    +org.eclipse.jdt.core.formatter.insert_new_line_after_opening_brace_in_array_initializer=do not insert
    +org.eclipse.jdt.core.formatter.insert_new_line_at_end_of_file_if_missing=insert
    +org.eclipse.jdt.core.formatter.insert_new_line_before_catch_in_try_statement=insert
    +org.eclipse.jdt.core.formatter.insert_new_line_before_closing_brace_in_array_initializer=do not insert
    +org.eclipse.jdt.core.formatter.insert_new_line_before_else_in_if_statement=insert
    +org.eclipse.jdt.core.formatter.insert_new_line_before_finally_in_try_statement=insert
    +org.eclipse.jdt.core.formatter.insert_new_line_before_while_in_do_statement=insert
    +org.eclipse.jdt.core.formatter.insert_new_line_in_empty_annotation_declaration=do not insert
    +org.eclipse.jdt.core.formatter.insert_new_line_in_empty_anonymous_type_declaration=do not insert
    +org.eclipse.jdt.core.formatter.insert_new_line_in_empty_block=do not insert
    +org.eclipse.jdt.core.formatter.insert_new_line_in_empty_enum_constant=do not insert
    +org.eclipse.jdt.core.formatter.insert_new_line_in_empty_enum_declaration=do not insert
    +org.eclipse.jdt.core.formatter.insert_new_line_in_empty_method_body=do not insert
    +org.eclipse.jdt.core.formatter.insert_new_line_in_empty_type_declaration=do not insert
    +org.eclipse.jdt.core.formatter.insert_space_after_and_in_type_parameter=insert
    +org.eclipse.jdt.core.formatter.insert_space_after_assignment_operator=insert
    +org.eclipse.jdt.core.formatter.insert_space_after_at_in_annotation=do not insert
    +org.eclipse.jdt.core.formatter.insert_space_after_at_in_annotation_type_declaration=do not insert
    +org.eclipse.jdt.core.formatter.insert_space_after_binary_operator=insert
    +org.eclipse.jdt.core.formatter.insert_space_after_closing_angle_bracket_in_type_arguments=insert
    +org.eclipse.jdt.core.formatter.insert_space_after_closing_angle_bracket_in_type_parameters=insert
    +org.eclipse.jdt.core.formatter.insert_space_after_closing_brace_in_block=insert
    +org.eclipse.jdt.core.formatter.insert_space_after_closing_paren_in_cast=insert
    +org.eclipse.jdt.core.formatter.insert_space_after_colon_in_assert=insert
    +org.eclipse.jdt.core.formatter.insert_space_after_colon_in_case=insert
    +org.eclipse.jdt.core.formatter.insert_space_after_colon_in_conditional=insert
    +org.eclipse.jdt.core.formatter.insert_space_after_colon_in_for=insert
    +org.eclipse.jdt.core.formatter.insert_space_after_colon_in_labeled_statement=insert
    +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_allocation_expression=insert
    +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_annotation=insert
    +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_array_initializer=insert
    +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_constructor_declaration_parameters=insert
    +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_constructor_declaration_throws=insert
    +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_enum_constant_arguments=insert
    +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_enum_declarations=insert
    +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_explicitconstructorcall_arguments=insert
    +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_for_increments=insert
    +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_for_inits=insert
    +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_method_declaration_parameters=insert
    +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_method_declaration_throws=insert
    +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_method_invocation_arguments=insert
    +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_multiple_field_declarations=insert
    +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_multiple_local_declarations=insert
    +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_parameterized_type_reference=insert
    +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_superinterfaces=insert
    +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_type_arguments=insert
    +org.eclipse.jdt.core.formatter.insert_space_after_comma_in_type_parameters=insert
    +org.eclipse.jdt.core.formatter.insert_space_after_ellipsis=insert
    +org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_parameterized_type_reference=do not insert
    +org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_type_arguments=do not insert
    +org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_type_parameters=do not insert
    +org.eclipse.jdt.core.formatter.insert_space_after_opening_brace_in_array_initializer=insert
    +org.eclipse.jdt.core.formatter.insert_space_after_opening_bracket_in_array_allocation_expression=do not insert
    +org.eclipse.jdt.core.formatter.insert_space_after_opening_bracket_in_array_reference=do not insert
    +org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_annotation=do not insert
    +org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_cast=do not insert
    +org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_catch=do not insert
    +org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_constructor_declaration=do not insert
    +org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_enum_constant=do not insert
    +org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_for=do not insert
    +org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_if=do not insert
    +org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_method_declaration=do not insert
    +org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_method_invocation=do not insert
    +org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_parenthesized_expression=do not insert
    +org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_switch=do not insert
    +org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_synchronized=do not insert
    +org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_while=do not insert
    +org.eclipse.jdt.core.formatter.insert_space_after_postfix_operator=do not insert
    +org.eclipse.jdt.core.formatter.insert_space_after_prefix_operator=do not insert
    +org.eclipse.jdt.core.formatter.insert_space_after_question_in_conditional=insert
    +org.eclipse.jdt.core.formatter.insert_space_after_question_in_wildcard=do not insert
    +org.eclipse.jdt.core.formatter.insert_space_after_semicolon_in_for=insert
    +org.eclipse.jdt.core.formatter.insert_space_after_unary_operator=do not insert
    +org.eclipse.jdt.core.formatter.insert_space_before_and_in_type_parameter=insert
    +org.eclipse.jdt.core.formatter.insert_space_before_assignment_operator=insert
    +org.eclipse.jdt.core.formatter.insert_space_before_at_in_annotation_type_declaration=insert
    +org.eclipse.jdt.core.formatter.insert_space_before_binary_operator=insert
    +org.eclipse.jdt.core.formatter.insert_space_before_closing_angle_bracket_in_parameterized_type_reference=do not insert
    +org.eclipse.jdt.core.formatter.insert_space_before_closing_angle_bracket_in_type_arguments=do not insert
    +org.eclipse.jdt.core.formatter.insert_space_before_closing_angle_bracket_in_type_parameters=do not insert
    +org.eclipse.jdt.core.formatter.insert_space_before_closing_brace_in_array_initializer=insert
    +org.eclipse.jdt.core.formatter.insert_space_before_closing_bracket_in_array_allocation_expression=do not insert
    +org.eclipse.jdt.core.formatter.insert_space_before_closing_bracket_in_array_reference=do not insert
    +org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_annotation=do not insert
    +org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_cast=do not insert
    +org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_catch=do not insert
    +org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_constructor_declaration=do not insert
    +org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_enum_constant=do not insert
    +org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_for=do not insert
    +org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_if=do not insert
    +org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_method_declaration=do not insert
    +org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_method_invocation=do not insert
    +org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_parenthesized_expression=do not insert
    +org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_switch=do not insert
    +org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_synchronized=do not insert
    +org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_while=do not insert
    +org.eclipse.jdt.core.formatter.insert_space_before_colon_in_assert=insert
    +org.eclipse.jdt.core.formatter.insert_space_before_colon_in_case=do not insert
    +org.eclipse.jdt.core.formatter.insert_space_before_colon_in_conditional=insert
    +org.eclipse.jdt.core.formatter.insert_space_before_colon_in_default=do not insert
    +org.eclipse.jdt.core.formatter.insert_space_before_colon_in_for=insert
    +org.eclipse.jdt.core.formatter.insert_space_before_colon_in_labeled_statement=do not insert
    +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_allocation_expression=do not insert
    +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_annotation=do not insert
    +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_array_initializer=do not insert
    +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_constructor_declaration_parameters=do not insert
    +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_constructor_declaration_throws=do not insert
    +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_enum_constant_arguments=do not insert
    +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_enum_declarations=do not insert
    +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_explicitconstructorcall_arguments=do not insert
    +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_for_increments=do not insert
    +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_for_inits=do not insert
    +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_method_declaration_parameters=do not insert
    +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_method_declaration_throws=do not insert
    +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_method_invocation_arguments=do not insert
    +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_multiple_field_declarations=do not insert
    +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_multiple_local_declarations=do not insert
    +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_parameterized_type_reference=do not insert
    +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_superinterfaces=do not insert
    +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_type_arguments=do not insert
    +org.eclipse.jdt.core.formatter.insert_space_before_comma_in_type_parameters=do not insert
    +org.eclipse.jdt.core.formatter.insert_space_before_ellipsis=do not insert
    +org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_parameterized_type_reference=do not insert
    +org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_type_arguments=do not insert
    +org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_type_parameters=do not insert
    +org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_annotation_type_declaration=insert
    +org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_anonymous_type_declaration=insert
    +org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_array_initializer=insert
    +org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_block=insert
    +org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_constructor_declaration=insert
    +org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_enum_constant=insert
    +org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_enum_declaration=insert
    +org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_method_declaration=insert
    +org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_switch=insert
    +org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_type_declaration=insert
    +org.eclipse.jdt.core.formatter.insert_space_before_opening_bracket_in_array_allocation_expression=do not insert
    +org.eclipse.jdt.core.formatter.insert_space_before_opening_bracket_in_array_reference=do not insert
    +org.eclipse.jdt.core.formatter.insert_space_before_opening_bracket_in_array_type_reference=do not insert
    +org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_annotation=do not insert
    +org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_annotation_type_member_declaration=do not insert
    +org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_catch=insert
    +org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_constructor_declaration=do not insert
    +org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_enum_constant=do not insert
    +org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_for=insert
    +org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_if=insert
    +org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_method_declaration=do not insert
    +org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_method_invocation=do not insert
    +org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_parenthesized_expression=do not insert
    +org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_switch=insert
    +org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_synchronized=insert
    +org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_while=insert
    +org.eclipse.jdt.core.formatter.insert_space_before_parenthesized_expression_in_return=insert
    +org.eclipse.jdt.core.formatter.insert_space_before_parenthesized_expression_in_throw=insert
    +org.eclipse.jdt.core.formatter.insert_space_before_postfix_operator=do not insert
    +org.eclipse.jdt.core.formatter.insert_space_before_prefix_operator=do not insert
    +org.eclipse.jdt.core.formatter.insert_space_before_question_in_conditional=insert
    +org.eclipse.jdt.core.formatter.insert_space_before_question_in_wildcard=do not insert
    +org.eclipse.jdt.core.formatter.insert_space_before_semicolon=do not insert
    +org.eclipse.jdt.core.formatter.insert_space_before_semicolon_in_for=do not insert
    +org.eclipse.jdt.core.formatter.insert_space_before_unary_operator=do not insert
    +org.eclipse.jdt.core.formatter.insert_space_between_brackets_in_array_type_reference=do not insert
    +org.eclipse.jdt.core.formatter.insert_space_between_empty_braces_in_array_initializer=do not insert
    +org.eclipse.jdt.core.formatter.insert_space_between_empty_brackets_in_array_allocation_expression=do not insert
    +org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_annotation_type_member_declaration=do not insert
    +org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_constructor_declaration=do not insert
    +org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_enum_constant=do not insert
    +org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_method_declaration=do not insert
    +org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_method_invocation=do not insert
    +org.eclipse.jdt.core.formatter.join_lines_in_comments=true
    +org.eclipse.jdt.core.formatter.join_wrapped_lines=true
    +org.eclipse.jdt.core.formatter.keep_else_statement_on_same_line=false
    +org.eclipse.jdt.core.formatter.keep_empty_array_initializer_on_one_line=false
    +org.eclipse.jdt.core.formatter.keep_imple_if_on_one_line=false
    +org.eclipse.jdt.core.formatter.keep_then_statement_on_same_line=false
    +org.eclipse.jdt.core.formatter.lineSplit=120
    +org.eclipse.jdt.core.formatter.never_indent_block_comments_on_first_column=false
    +org.eclipse.jdt.core.formatter.never_indent_line_comments_on_first_column=false
    +org.eclipse.jdt.core.formatter.number_of_blank_lines_at_beginning_of_method_body=0
    +org.eclipse.jdt.core.formatter.number_of_empty_lines_to_preserve=1
    +org.eclipse.jdt.core.formatter.put_empty_statement_on_new_line=true
    +org.eclipse.jdt.core.formatter.tabulation.char=space
    +org.eclipse.jdt.core.formatter.tabulation.size=4
    +org.eclipse.jdt.core.formatter.use_on_off_tags=false
    +org.eclipse.jdt.core.formatter.use_tabs_only_for_leading_indentations=false
    +org.eclipse.jdt.core.formatter.wrap_before_binary_operator=true
    +org.eclipse.jdt.core.formatter.wrap_outer_expressions_when_nested=true
    diff --git a/jOOQ/.settings/org.eclipse.jdt.ui.prefs b/jOOQ/.settings/org.eclipse.jdt.ui.prefs
    new file mode 100644
    index 00000000000..b07f39ee3e9
    --- /dev/null
    +++ b/jOOQ/.settings/org.eclipse.jdt.ui.prefs
    @@ -0,0 +1,116 @@
    +#Sat Nov 05 13:02:50 CET 2011
    +cleanup.add_default_serial_version_id=false
    +cleanup.add_generated_serial_version_id=true
    +cleanup.add_missing_annotations=true
    +cleanup.add_missing_deprecated_annotations=true
    +cleanup.add_missing_methods=false
    +cleanup.add_missing_nls_tags=false
    +cleanup.add_missing_override_annotations=true
    +cleanup.add_missing_override_annotations_interface_methods=true
    +cleanup.add_serial_version_id=true
    +cleanup.always_use_blocks=true
    +cleanup.always_use_parentheses_in_expressions=false
    +cleanup.always_use_this_for_non_static_field_access=true
    +cleanup.always_use_this_for_non_static_method_access=false
    +cleanup.convert_to_enhanced_for_loop=false
    +cleanup.correct_indentation=true
    +cleanup.format_source_code=false
    +cleanup.format_source_code_changes_only=false
    +cleanup.make_local_variable_final=true
    +cleanup.make_parameters_final=false
    +cleanup.make_private_fields_final=true
    +cleanup.make_type_abstract_if_missing_method=false
    +cleanup.make_variable_declarations_final=false
    +cleanup.never_use_blocks=false
    +cleanup.never_use_parentheses_in_expressions=true
    +cleanup.organize_imports=true
    +cleanup.qualify_static_field_accesses_with_declaring_class=false
    +cleanup.qualify_static_member_accesses_through_instances_with_declaring_class=true
    +cleanup.qualify_static_member_accesses_through_subtypes_with_declaring_class=true
    +cleanup.qualify_static_member_accesses_with_declaring_class=true
    +cleanup.qualify_static_method_accesses_with_declaring_class=false
    +cleanup.remove_private_constructors=true
    +cleanup.remove_trailing_whitespaces=true
    +cleanup.remove_trailing_whitespaces_all=true
    +cleanup.remove_trailing_whitespaces_ignore_empty=false
    +cleanup.remove_unnecessary_casts=true
    +cleanup.remove_unnecessary_nls_tags=true
    +cleanup.remove_unused_imports=true
    +cleanup.remove_unused_local_variables=false
    +cleanup.remove_unused_private_fields=true
    +cleanup.remove_unused_private_members=false
    +cleanup.remove_unused_private_methods=true
    +cleanup.remove_unused_private_types=true
    +cleanup.sort_members=false
    +cleanup.sort_members_all=false
    +cleanup.use_blocks=true
    +cleanup.use_blocks_only_for_return_and_throw=false
    +cleanup.use_parentheses_in_expressions=false
    +cleanup.use_this_for_non_static_field_access=false
    +cleanup.use_this_for_non_static_field_access_only_if_necessary=false
    +cleanup.use_this_for_non_static_method_access=false
    +cleanup.use_this_for_non_static_method_access_only_if_necessary=true
    +cleanup_profile=_jOOQ
    +cleanup_settings_version=2
    +eclipse.preferences.version=1
    +editor_save_participant_org.eclipse.jdt.ui.postsavelistener.cleanup=true
    +formatter_profile=_jOOQ
    +formatter_settings_version=12
    +org.eclipse.jdt.ui.ignorelowercasenames=true
    +org.eclipse.jdt.ui.importorder=java;javax;org.jooq;org;com;
    +org.eclipse.jdt.ui.javadoc=false
    +org.eclipse.jdt.ui.ondemandthreshold=99
    +org.eclipse.jdt.ui.staticondemandthreshold=99
    +org.eclipse.jdt.ui.text.custom_code_templates=<?xml version\="1.0" encoding\="UTF-8" standalone\="no"?><templates><template autoinsert\="true" context\="gettercomment_context" deleted\="false" description\="Comment for getter method" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.gettercomment" name\="gettercomment">/**\r\n * @return The ${bare_field_name}.\r\n */</template><template autoinsert\="true" context\="settercomment_context" deleted\="false" description\="Comment for setter method" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.settercomment" name\="settercomment">/**\r\n * @param ${param} the ${bare_field_name} to set\r\n */</template><template autoinsert\="true" context\="constructorcomment_context" deleted\="false" description\="Comment for created constructors" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.constructorcomment" name\="constructorcomment">/**\r\n * ${tags}\r\n */</template><template autoinsert\="true" context\="filecomment_context" deleted\="false" description\="Comment for created Java files" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.filecomment" name\="filecomment">/**\r\n * \r\n */</template><template autoinsert\="false" context\="typecomment_context" deleted\="false" description\="Comment for created types" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.typecomment" name\="typecomment">/**\r\n * @author Lukas Eder\r\n */</template><template autoinsert\="true" context\="fieldcomment_context" deleted\="false" description\="Comment for fields" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.fieldcomment" name\="fieldcomment">/**\r\n *\r\n */</template><template autoinsert\="true" context\="methodcomment_context" deleted\="false" description\="Comment for non-overriding methods" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.methodcomment" name\="methodcomment">/**\r\n * ${tags}\r\n */</template><template autoinsert\="true" context\="overridecomment_context" deleted\="false" description\="Comment for overriding methods" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.overridecomment" name\="overridecomment">/**\r\n * {@inheritDoc}\r\n */</template><template autoinsert\="true" context\="delegatecomment_context" deleted\="false" description\="Comment for delegate methods" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.delegatecomment" name\="delegatecomment">/**\r\n * ${tags}\r\n * ${see_to_target}\r\n */</template><template autoinsert\="false" context\="newtype_context" deleted\="false" description\="Newly created files" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.newtype" name\="newtype">/**\r\n * Copyright (c) 2009-${year}, Lukas Eder, lukas.eder@gmail.com\r\n * All rights reserved.\r\n *\r\n * This software is licensed to you under the Apache License, Version 2.0\r\n * (the "License"); You may obtain a copy of the License at\r\n *\r\n *   http\://www.apache.org/licenses/LICENSE-2.0\r\n *\r\n * Redistribution and use in source and binary forms, with or without\r\n * modification, are permitted provided that the following conditions are met\:\r\n *\r\n * . Redistributions of source code must retain the above copyright notice, this\r\n *   list of conditions and the following disclaimer.\r\n *\r\n * . Redistributions in binary form must reproduce the above copyright notice,\r\n *   this list of conditions and the following disclaimer in the documentation\r\n *   and/or other materials provided with the distribution.\r\n *\r\n * . Neither the name "jOOQ" nor the names of its contributors may be\r\n *   used to endorse or promote products derived from this software without\r\n *   specific prior written permission.\r\n *\r\n * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"\r\n * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE\r\n * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE\r\n * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE\r\n * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR\r\n * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF\r\n * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS\r\n * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN\r\n * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)\r\n * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE\r\n * POSSIBILITY OF SUCH DAMAGE.\r\n */\r\n${package_declaration}\r\n\r\n${typecomment}\r\n${type_declaration}</template><template autoinsert\="true" context\="classbody_context" deleted\="false" description\="Code in new class type bodies" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.classbody" name\="classbody">\r\n</template><template autoinsert\="true" context\="interfacebody_context" deleted\="false" description\="Code in new interface type bodies" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.interfacebody" name\="interfacebody">\r\n</template><template autoinsert\="true" context\="enumbody_context" deleted\="false" description\="Code in new enum type bodies" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.enumbody" name\="enumbody">\r\n</template><template autoinsert\="true" context\="annotationbody_context" deleted\="false" description\="Code in new annotation type bodies" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.annotationbody" name\="annotationbody">\r\n</template><template autoinsert\="true" context\="catchblock_context" deleted\="false" description\="Code in new catch blocks" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.catchblock" name\="catchblock">${exception_var}.printStackTrace();</template><template autoinsert\="true" context\="methodbody_context" deleted\="false" description\="Code in created method stubs" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.methodbody" name\="methodbody">${body_statement}</template><template autoinsert\="true" context\="constructorbody_context" deleted\="false" description\="Code in created constructor stubs" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.constructorbody" name\="constructorbody">${body_statement}</template><template autoinsert\="true" context\="getterbody_context" deleted\="false" description\="Code in created getters" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.getterbody" name\="getterbody">return ${field};</template><template autoinsert\="true" context\="setterbody_context" deleted\="false" description\="Code in created setters" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.setterbody" name\="setterbody">${field} \= ${param};</template></templates>
    +sp_cleanup.add_default_serial_version_id=true
    +sp_cleanup.add_generated_serial_version_id=false
    +sp_cleanup.add_missing_annotations=true
    +sp_cleanup.add_missing_deprecated_annotations=true
    +sp_cleanup.add_missing_methods=false
    +sp_cleanup.add_missing_nls_tags=false
    +sp_cleanup.add_missing_override_annotations=true
    +sp_cleanup.add_missing_override_annotations_interface_methods=true
    +sp_cleanup.add_serial_version_id=false
    +sp_cleanup.always_use_blocks=true
    +sp_cleanup.always_use_parentheses_in_expressions=false
    +sp_cleanup.always_use_this_for_non_static_field_access=false
    +sp_cleanup.always_use_this_for_non_static_method_access=false
    +sp_cleanup.convert_to_enhanced_for_loop=false
    +sp_cleanup.correct_indentation=false
    +sp_cleanup.format_source_code=false
    +sp_cleanup.format_source_code_changes_only=false
    +sp_cleanup.make_local_variable_final=false
    +sp_cleanup.make_parameters_final=false
    +sp_cleanup.make_private_fields_final=true
    +sp_cleanup.make_type_abstract_if_missing_method=false
    +sp_cleanup.make_variable_declarations_final=false
    +sp_cleanup.never_use_blocks=false
    +sp_cleanup.never_use_parentheses_in_expressions=true
    +sp_cleanup.on_save_use_additional_actions=true
    +sp_cleanup.organize_imports=true
    +sp_cleanup.qualify_static_field_accesses_with_declaring_class=false
    +sp_cleanup.qualify_static_member_accesses_through_instances_with_declaring_class=true
    +sp_cleanup.qualify_static_member_accesses_through_subtypes_with_declaring_class=true
    +sp_cleanup.qualify_static_member_accesses_with_declaring_class=false
    +sp_cleanup.qualify_static_method_accesses_with_declaring_class=false
    +sp_cleanup.remove_private_constructors=true
    +sp_cleanup.remove_trailing_whitespaces=true
    +sp_cleanup.remove_trailing_whitespaces_all=true
    +sp_cleanup.remove_trailing_whitespaces_ignore_empty=false
    +sp_cleanup.remove_unnecessary_casts=true
    +sp_cleanup.remove_unnecessary_nls_tags=false
    +sp_cleanup.remove_unused_imports=true
    +sp_cleanup.remove_unused_local_variables=false
    +sp_cleanup.remove_unused_private_fields=true
    +sp_cleanup.remove_unused_private_members=false
    +sp_cleanup.remove_unused_private_methods=true
    +sp_cleanup.remove_unused_private_types=true
    +sp_cleanup.sort_members=false
    +sp_cleanup.sort_members_all=false
    +sp_cleanup.use_blocks=false
    +sp_cleanup.use_blocks_only_for_return_and_throw=false
    +sp_cleanup.use_parentheses_in_expressions=false
    +sp_cleanup.use_this_for_non_static_field_access=false
    +sp_cleanup.use_this_for_non_static_field_access_only_if_necessary=true
    +sp_cleanup.use_this_for_non_static_method_access=false
    +sp_cleanup.use_this_for_non_static_method_access_only_if_necessary=true
    diff --git a/jOOQ/.settings/org.maven.ide.eclipse.prefs b/jOOQ/.settings/org.maven.ide.eclipse.prefs
    new file mode 100644
    index 00000000000..c5172a20ac8
    --- /dev/null
    +++ b/jOOQ/.settings/org.maven.ide.eclipse.prefs
    @@ -0,0 +1,8 @@
    +#Sun Apr 10 10:03:42 CEST 2011
    +activeProfiles=
    +eclipse.preferences.version=1
    +fullBuildGoals=process-test-resources
    +resolveWorkspaceProjects=true
    +resourceFilterGoals=process-resources resources\:testResources
    +skipCompilerPlugin=true
    +version=1
    diff --git a/jOOQ/LICENSE.txt b/jOOQ/LICENSE.txt
    new file mode 100644
    index 00000000000..fd12d44afa0
    --- /dev/null
    +++ b/jOOQ/LICENSE.txt
    @@ -0,0 +1,33 @@
    +  Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    +  All rights reserved.
    + 
    +  This software is licensed to you under the Apache License, Version 2.0
    +  (the "License"); You may obtain a copy of the License at
    +
    +     http://www.apache.org/licenses/LICENSE-2.0
    + 
    +  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 "jOOQ" 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 COPYRIGHT OWNER 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.
    \ No newline at end of file
    diff --git a/jOOQ/build.xml b/jOOQ/build.xml
    new file mode 100644
    index 00000000000..9d0bdd74b49
    --- /dev/null
    +++ b/jOOQ/build.xml
    @@ -0,0 +1,35 @@
    +<?xml version="1.0"?>
    +<project name="jOOQ-codegen" basedir=".">
    +	<property name="dir.resources" value="${basedir}/src/main/resources" />
    +	<property name="dir.java" value="${basedir}/src/main/java" />
    +	<property name="dir.target" value="${dir.java}/org/jooq/conf" />
    +
    +	<taskdef name="xjc" classname="com.sun.tools.xjc.XJCTask">
    +		<classpath>
    +			<fileset dir="${basedir}/lib" includes="*.jar" />
    +			<fileset dir="${java.home}/lib" includes="rt.jar" />
    +		</classpath>
    +	</taskdef>
    +
    +	<!-- Run a full mvn clean package install deploy first before this -->
    +	<target name="xjc-generator" description="Generate JAXB artefacts from XSD">
    +		<mkdir dir="${dir.target}" />
    +		<xjc schema="${dir.resources}/xsd/jooq-runtime-2.1.0.xsd" destdir="${dir.java}" package="org.jooq.conf">
    +			<arg value="-extension"/>
    +			<arg value="-Xxew" />
    +			<arg value="-Xfluent-api" />
    +			<arg value="-Xdefault-value"/>
    +		    <arg value="-instantiate lazy" />
    +		</xjc>
    +
    +		<!-- Remove unnecessary artefacts again -->
    +		<delete>
    +			<fileset dir="${dir.target}">
    +				<include name="ExecuteListeners.java"/>
    +				<include name="MappedSchemata.java"/>
    +				<include name="MappedTables.java"/>
    +				<include name="ObjectFactory.java"/>
    +			</fileset>
    +		</delete>
    +	</target>
    +</project>
    \ No newline at end of file
    diff --git a/jOOQ/lib/activation.jar b/jOOQ/lib/activation.jar
    new file mode 100644
    index 00000000000..8cbef16f485
    Binary files /dev/null and b/jOOQ/lib/activation.jar differ
    diff --git a/jOOQ/lib/jaxb-api.jar b/jOOQ/lib/jaxb-api.jar
    new file mode 100644
    index 00000000000..3918383710b
    Binary files /dev/null and b/jOOQ/lib/jaxb-api.jar differ
    diff --git a/jOOQ/lib/jaxb-impl.jar b/jOOQ/lib/jaxb-impl.jar
    new file mode 100644
    index 00000000000..7ff2dac935d
    Binary files /dev/null and b/jOOQ/lib/jaxb-impl.jar differ
    diff --git a/jOOQ/lib/jaxb-xjc.jar b/jOOQ/lib/jaxb-xjc.jar
    new file mode 100644
    index 00000000000..e586232048c
    Binary files /dev/null and b/jOOQ/lib/jaxb-xjc.jar differ
    diff --git a/jOOQ/lib/jaxb1-impl.jar b/jOOQ/lib/jaxb1-impl.jar
    new file mode 100644
    index 00000000000..f6c8349da4c
    Binary files /dev/null and b/jOOQ/lib/jaxb1-impl.jar differ
    diff --git a/jOOQ/lib/jaxb2-default-value-1.1.jar b/jOOQ/lib/jaxb2-default-value-1.1.jar
    new file mode 100644
    index 00000000000..884897de55e
    Binary files /dev/null and b/jOOQ/lib/jaxb2-default-value-1.1.jar differ
    diff --git a/jOOQ/lib/jaxb2-fluent-api-3.0.jar b/jOOQ/lib/jaxb2-fluent-api-3.0.jar
    new file mode 100644
    index 00000000000..f3c384f497e
    Binary files /dev/null and b/jOOQ/lib/jaxb2-fluent-api-3.0.jar differ
    diff --git a/jOOQ/lib/jaxb2-value-constructor-3.0.jar b/jOOQ/lib/jaxb2-value-constructor-3.0.jar
    new file mode 100644
    index 00000000000..1d53dc15658
    Binary files /dev/null and b/jOOQ/lib/jaxb2-value-constructor-3.0.jar differ
    diff --git a/jOOQ/lib/jsr173_1.0_api.jar b/jOOQ/lib/jsr173_1.0_api.jar
    new file mode 100644
    index 00000000000..87ff1c1abba
    Binary files /dev/null and b/jOOQ/lib/jsr173_1.0_api.jar differ
    diff --git a/jOOQ/lib/xew.jar b/jOOQ/lib/xew.jar
    new file mode 100644
    index 00000000000..a7e6051e97e
    Binary files /dev/null and b/jOOQ/lib/xew.jar differ
    diff --git a/jOOQ/pom.xml b/jOOQ/pom.xml
    new file mode 100644
    index 00000000000..3757bbc405f
    --- /dev/null
    +++ b/jOOQ/pom.xml
    @@ -0,0 +1,238 @@
    +<?xml version="1.0" encoding="UTF-8"?>
    +<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    +	xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
    +	<parent>
    +		<artifactId>oss-parent</artifactId>
    +		<groupId>org.sonatype.oss</groupId>
    +		<version>7</version>
    +	</parent>
    +	<modelVersion>4.0.0</modelVersion>
    +
    +	<groupId>org.jooq</groupId>
    +	<artifactId>jooq</artifactId>
    +	<version>2.2.0</version>
    +	<packaging>jar</packaging>
    +
    +	<name>jOOQ</name>
    +	<description>jOOQ effectively combines complex SQL, typesafety, source code generation, active records, stored procedures, advanced data types, and Java in a fluent, intuitive DSL.</description>
    +	<url>http://www.jooq.org</url>
    +
    +
    +	<licenses>
    +		<license>
    +			<name>Apache License, Version 2.0</name>
    +			<url>http://www.jooq.org/inc/LICENSE.txt</url>
    +			<distribution>repo</distribution>
    +		</license>
    +	</licenses>
    +
    +	<scm>
    +		<developerConnection>scm:svn:https://jooq.svn.sourceforge.net/svnroot/jooq</developerConnection>
    +		<url>https://jooq.svn.sourceforge.net/svnroot/jooq</url>
    +		<connection>scm:svn:https://jooq.svn.sourceforge.net/svnroot/jooq</connection>
    +	</scm>
    +
    +	<build>
    +		<defaultGoal>deploy</defaultGoal>
    +		<finalName>${project.artifactId}-${project.version}</finalName>
    +
    +		<plugins>
    +			<plugin>
    +				<groupId>org.apache.maven.plugins</groupId>
    +				<artifactId>maven-gpg-plugin</artifactId>
    +				<version>1.1</version>
    +				<executions>
    +					<execution>
    +						<id>sign-artifacts</id>
    +						<phase>verify</phase>
    +						<goals>
    +							<goal>sign</goal>
    +						</goals>
    +					</execution>
    +				</executions>
    +			</plugin>
    +
    +			<plugin>
    +				<groupId>org.apache.maven.plugins</groupId>
    +				<artifactId>maven-compiler-plugin</artifactId>
    +				<version>2.3.2</version>
    +				<configuration>
    +					<fork>true</fork>
    +					<maxmem>512m</maxmem>
    +					<meminitial>256m</meminitial>
    +					<encoding>UTF-8</encoding>
    +					<source>1.6</source>
    +					<target>1.6</target>
    +					<debug>true</debug>
    +					<debuglevel>lines,vars,source</debuglevel>
    +				</configuration>
    +			</plugin>
    +
    +			<plugin>
    +				<inherited>true</inherited>
    +				<groupId>org.apache.maven.plugins</groupId>
    +				<artifactId>maven-source-plugin</artifactId>
    +				<version>2.1.2</version>
    +				<executions>
    +					<execution>
    +						<id>attach-sources</id>
    +						<goals>
    +							<goal>jar</goal>
    +						</goals>
    +					</execution>
    +				</executions>
    +
    +				<configuration>
    +					<excludeResources>true</excludeResources>
    +					<useDefaultExcludes>true</useDefaultExcludes>
    +				</configuration>
    +			</plugin>
    +
    +			<plugin>
    +				<inherited>true</inherited>
    +				<groupId>org.apache.maven.plugins</groupId>
    +				<artifactId>maven-javadoc-plugin</artifactId>
    +				<version>2.7</version>
    +				<executions>
    +					<execution>
    +						<id>bundle-sources</id>
    +						<phase>package</phase>
    +						<goals>
    +							<goal>jar</goal>
    +						</goals>
    +					</execution>
    +				</executions>
    +				<configuration>
    +					<maxmemory>512</maxmemory>
    +					<encoding>UTF-8</encoding>
    +					<show>protected</show>
    +					<notree>true</notree>
    +				</configuration>
    +			</plugin>
    +
    +			<plugin>
    +				<groupId>org.apache.maven.plugins</groupId>
    +				<artifactId>maven-resources-plugin</artifactId>
    +				<version>2.5</version>
    +				<configuration>
    +					<encoding>UTF-8</encoding>
    +				</configuration>
    +			</plugin>
    +
    +            <plugin>
    +                <groupId>org.apache.maven.plugins</groupId>
    +                <artifactId>maven-eclipse-plugin</artifactId>
    +                <version>2.8</version>
    +                <configuration>
    +                    <downloadSources>true</downloadSources>
    +                </configuration>
    +            </plugin>
    +
    +            <plugin>
    +                <groupId>org.apache.felix</groupId>
    +                <artifactId>maven-bundle-plugin</artifactId>
    +                <version>2.1.0</version>
    +                <extensions>true</extensions>
    +                <executions>
    +                    <execution>
    +                        <id>bundle-manifest</id>
    +                        <phase>process-classes</phase>
    +                        <goals>
    +                            <goal>manifest</goal>
    +                        </goals>
    +                    </execution>
    +                </executions>
    +                <configuration>
    +                    <supportedProjectTypes>
    +                        <supportedProjectType>jar</supportedProjectType>
    +                    </supportedProjectTypes>
    +                    <instructions>
    +                        <Bundle-SymbolicName>${project.artifactId}</Bundle-SymbolicName>
    +                        <Export-Package>*</Export-Package>
    +                        <Import-Package>
    +                            javax.persistence;resolution:=optional,
    +                            oracle.sql;resolution:=optional,
    +                            org.apache.log4j;resolution:=optional,
    +                            *
    +                        </Import-Package>
    +                        <_versionpolicy>[$(version;==;$(@)),$(version;+;$(@)))</_versionpolicy>
    +                    </instructions>
    +                </configuration>
    +            </plugin>
    +            <plugin>
    +            	<groupId>org.apache.maven.plugins</groupId>
    +                <artifactId>maven-jar-plugin</artifactId>
    +                <version>2.3.2</version>
    +                <configuration>
    +                    <archive>
    +                        <!-- add the generated manifest to the jar -->
    +                        <manifestFile>${project.build.outputDirectory}/META-INF/MANIFEST.MF</manifestFile>
    +                    </archive>
    +                </configuration>
    +            </plugin>
    +		</plugins>
    +    </build>
    +
    +	<issueManagement>
    +		<system>Trac</system>
    +		<url>https://sourceforge.net/apps/trac/jooq/report/6</url>
    +	</issueManagement>
    +	<developers>
    +		<developer>
    +			<name>Lukas Eder</name>
    +			<email>lukas.eder@gmail.com</email>
    +		</developer>
    +		<developer>
    +			<name>Espen Stromsnes</name>
    +			<email>estromsnes@gmail.com</email>
    +		</developer>
    +	</developers>
    +
    +	<dependencies>
    +		<dependency>
    +			<groupId>log4j</groupId>
    +			<artifactId>log4j</artifactId>
    +			<version>1.2.16</version>
    +			<type>jar</type>
    +			<scope>provided</scope>
    +			<optional>true</optional>
    +		</dependency>
    +		<dependency>
    +			<groupId>junit</groupId>
    +			<artifactId>junit</artifactId>
    +			<version>4.8.2</version>
    +			<type>jar</type>
    +			<scope>test</scope>
    +		</dependency>
    +		<dependency>
    +			<groupId>org.jmock</groupId>
    +			<artifactId>jmock-junit4</artifactId>
    +			<version>2.5.1</version>
    +			<type>jar</type>
    +			<scope>test</scope>
    +		</dependency>
    +		<dependency>
    +			<groupId>org.slf4j</groupId>
    +			<artifactId>integration</artifactId>
    +			<version>1.6.1</version>
    +			<type>jar</type>
    +			<scope>provided</scope>
    +			<optional>true</optional>
    +		</dependency>
    +		<dependency>
    +			<groupId>org.slf4j</groupId>
    +			<artifactId>slf4j-log4j12</artifactId>
    +			<version>1.6.1</version>
    +			<type>jar</type>
    +			<scope>test</scope>
    +		</dependency>
    +		<dependency>
    +			<groupId>javax.persistence</groupId>
    +			<artifactId>persistence-api</artifactId>
    +			<version>1.0</version>
    +			<type>jar</type>
    +			<scope>provided</scope>
    +			<optional>true</optional>
    +		</dependency>
    +	</dependencies>
    +</project>
    \ No newline at end of file
    diff --git a/jOOQ/src/main/java/org/jooq/Adapter.java b/jOOQ/src/main/java/org/jooq/Adapter.java
    new file mode 100644
    index 00000000000..41ef0b68495
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/Adapter.java
    @@ -0,0 +1,65 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq;
    +
    +/**
    + * A type that can dynamically implement another interface.
    + * <p>
    + * This interface is for JOOQ INTERNAL USE only. Do not reference directly
    + *
    + * @author Lukas Eder
    + */
    +public interface Adapter {
    +
    +    /**
    +     * Adapt to an internal type assuming its functionality
    +     * <p>
    +     * This is for JOOQ INTERNAL USE only. If you need to access the internal
    +     * API, these are the known possible interfaces:
    +     * <ul>
    +     * <li> {@link QueryPartInternal}: The internal API for {@link QueryPart}</li>
    +     * </ul>
    +     * Be aware though, that the internal API may change even between minor
    +     * releases.
    +     *
    +     * @param <I> The internal type's generic type parameter.
    +     * @param internalType The internal type
    +     * @return This object wrapped by or cast to an internal type
    +     * @throws ClassCastException If this object cannot be wrapped by or cast to
    +     *             the given internal type
    +     */
    +    <I> I internalAPI(Class<I> internalType) throws ClassCastException;
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/AggregateFunction.java b/jOOQ/src/main/java/org/jooq/AggregateFunction.java
    new file mode 100644
    index 00000000000..9192873eaa6
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/AggregateFunction.java
    @@ -0,0 +1,66 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq;
    +
    +import static org.jooq.SQLDialect.DB2;
    +import static org.jooq.SQLDialect.ORACLE;
    +import static org.jooq.SQLDialect.POSTGRES;
    +import static org.jooq.SQLDialect.SQLSERVER;
    +import static org.jooq.SQLDialect.SYBASE;
    +
    +/**
    + * An aggregate function is a special field that is usually used in a
    + * <code>GROUP BY</code> context. It is also the base for window function
    + * construction.
    + *
    + * @author Lukas Eder
    + */
    +public interface AggregateFunction<T> extends Field<T>, WindowOverStep<T> {
    +
    +    /**
    +     * Turn this aggregate function into a window function, for example
    +     * <p>
    +     * <code><pre>
    +     * MAX(ID) OVER (PARTITION BY 1)
    +     * </code></pre>
    +     * <p>
    +     * Window functions are supported in DB2, Postgres, Oracle, SQL Server and
    +     * Sybase.
    +     */
    +    @Override
    +    @Support({ DB2, POSTGRES, ORACLE, SQLSERVER, SYBASE })
    +    WindowPartitionByStep<T> over();
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/AliasProvider.java b/jOOQ/src/main/java/org/jooq/AliasProvider.java
    new file mode 100644
    index 00000000000..0aa5c6ddd0f
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/AliasProvider.java
    @@ -0,0 +1,61 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +
    +package org.jooq;
    +
    +/**
    + * A {@link QueryPart} that can create an aliased QueryPart of itself
    + *
    + * @param <Z> The self-binding alias provider subtype
    + * @author Lukas Eder
    + */
    +public interface AliasProvider<Z extends AliasProvider<Z>> extends QueryPart {
    +
    +    /**
    +     * Get an aliased QueryPart. An aliased QueryPart should render SQL as
    +     * follows:
    +     * <ul>
    +     * <li>In declarative query sections : [
    +     * {@link FactoryOperations#render(QueryPart)} &lt;alias&gt;]</li>
    +     * <li>In referencial query sections : [&lt;alias&gt;]</li>
    +     * </ul>
    +     *
    +     * @param alias The alias name
    +     * @return The aliased QueryPart
    +     */
    +    @Support
    +    Z as(String alias);
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/ArrayRecord.java b/jOOQ/src/main/java/org/jooq/ArrayRecord.java
    new file mode 100644
    index 00000000000..6ab277316cb
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/ArrayRecord.java
    @@ -0,0 +1,105 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq;
    +
    +import java.sql.Array;
    +import java.sql.SQLException;
    +import java.util.List;
    +
    +import org.jooq.exception.DetachedException;
    +
    +/**
    + * A "record" that encapsulates an Oracle-style ARRAY (or VARRAY), additionally
    + * providing some convenience methods
    + *
    + * @param <E> The array element type
    + * @author Lukas Eder
    + */
    +public interface ArrayRecord<E> extends Store<E>, Iterable<E> {
    +
    +    /**
    +     * Get the contained array
    +     */
    +    E[] get();
    +
    +    /**
    +     * Get the contained array as a {@link List}
    +     */
    +    List<E> getList();
    +
    +    /**
    +     * Set the contained array
    +     */
    +    void set(Array array) throws SQLException;
    +
    +    /**
    +     * Set the contained array
    +     */
    +    void set(E... array);
    +
    +    /**
    +     * Set the contained array as a {@link List}
    +     */
    +    void setList(List<? extends E> list);
    +
    +    /**
    +     * Get the size of the contained array
    +     */
    +    @Override
    +    int size();
    +
    +    /**
    +     * Get the name of the array type
    +     */
    +    String getName();
    +
    +    /**
    +     * Get the data type of the array type
    +     */
    +    DataType<E> getDataType();
    +
    +    /**
    +     * Create an {@link Array} from this ArrayRecord
    +     * <p>
    +     * This method is for INTERNAL use only. Do not call this method.
    +     *
    +     * @throws SQLException If something goes wrong during the creation of the
    +     *             JDBC {@link Array}
    +     * @throws DetachedException If this method is called on a detached
    +     *             <code>ArrayRecord</code>
    +     */
    +    Array createArray() throws SQLException, DetachedException;
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/Attachable.java b/jOOQ/src/main/java/org/jooq/Attachable.java
    new file mode 100644
    index 00000000000..e752b631b8e
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/Attachable.java
    @@ -0,0 +1,65 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq;
    +
    +import java.io.Serializable;
    +import java.sql.Connection;
    +
    +/**
    + * An object in jOOQ that can have an underlying {@link Configuration} attached
    + * or detached.
    + * <p>
    + * Detaching an <code>Attachable</code> from its configuration means, that the
    + * underlying {@link Connection} is removed. Attaching an
    + * <code>Attachable</code> to a new <code>Configuration</code> means, that its
    + * underlying <code>Connection</code> will be restored.
    + * <p>
    + * Detaching an <code>Attachable</code> will <b>NOT</b> close the underlying
    + * connection!
    + * <p>
    + * Attachables are also {@link Serializable}. The underlying Configuration is
    + * <code>transient</code>. Serialising an Attachable will always detach it
    + * first.
    + *
    + * @author Lukas Eder
    + */
    +public interface Attachable extends Adapter, Serializable {
    +
    +    /**
    +     * Attach this object to a new {@link Configuration}
    +     */
    +    void attach(Configuration configuration);
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/AttachableInternal.java b/jOOQ/src/main/java/org/jooq/AttachableInternal.java
    new file mode 100644
    index 00000000000..f6e357a57a3
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/AttachableInternal.java
    @@ -0,0 +1,61 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq;
    +
    +import java.util.List;
    +
    +/**
    + * Base functionality declaration for all {@link Attachable}s
    + * <p>
    + * This interface is for JOOQ INTERNAL USE only. Do not reference directly
    + *
    + * @author Lukas Eder
    + */
    +public interface AttachableInternal extends Attachable {
    +
    +    /**
    +     * Get the list of dependent <code>Attachables</code>
    +     * <p>
    +     * This method is for JOOQ INTERNAL USE only. Do not reference directly
    +     */
    +    List<Attachable> getAttachables();
    +
    +    /**
    +     * Get the underlying configuration
    +     */
    +    Configuration getConfiguration();
    +
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/Batch.java b/jOOQ/src/main/java/org/jooq/Batch.java
    new file mode 100644
    index 00000000000..1964ce4aa17
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/Batch.java
    @@ -0,0 +1,72 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq;
    +
    +import java.sql.Statement;
    +
    +import org.jooq.exception.DataAccessException;
    +
    +/**
    + * A wrapper for a JDBC batch operation. It has two modes:
    + * <p>
    + * <ol>
    + * <li><b>Execute several queries without bind values</b><code><pre>
    + * create.batch(query1,
    + *              query2,
    + *              query3)
    + *       .execute();
    + * </pre></code></li>
    + * <li><b>Execute one query several times with bind values</b><code><pre>
    + * create.batch(query)
    + *       .bind(valueA1, valueA2)
    + *       .bind(valueB1, valueB2)
    + *       .execute();
    + * </pre></code></li>
    + * </ol>
    + * 
    + * @author Lukas Eder
    + * @see Statement#executeBatch()
    + */
    +public interface Batch {
    +
    +    /**
    +     * Execute the batch operation.
    +     * 
    +     * @see Statement#executeBatch()
    +     * @throws DataAccessException if something went wrong executing the query
    +     */
    +    int[] execute() throws DataAccessException;
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/BatchBindStep.java b/jOOQ/src/main/java/org/jooq/BatchBindStep.java
    new file mode 100644
    index 00000000000..b4487479654
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/BatchBindStep.java
    @@ -0,0 +1,59 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq;
    +
    +import java.sql.Statement;
    +
    +import org.jooq.exception.DataAccessException;
    +
    +/**
    + * This type is used for the {@link Batch}'s DSL API.
    + * <p>
    + * Use it to add bind values to a single operation in the batch statement.
    + *
    + * @author Lukas Eder
    + * @see Batch
    + * @see Statement#executeBatch()
    + */
    +public interface BatchBindStep extends Batch {
    +
    +    /**
    +     * Set bind values on the batch statement
    +     *
    +     * @throws DataAccessException if something went wrong executing the query
    +     */
    +    BatchBindStep bind(Object... bindValues) throws DataAccessException;
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/BindContext.java b/jOOQ/src/main/java/org/jooq/BindContext.java
    new file mode 100644
    index 00000000000..37aa7904d26
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/BindContext.java
    @@ -0,0 +1,104 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq;
    +
    +import java.sql.PreparedStatement;
    +import java.util.Collection;
    +
    +import org.jooq.exception.DataAccessException;
    +
    +/**
    + * The bind context is used for binding {@link QueryPart}'s and their contained
    + * values to a {@link PreparedStatement}'s bind variables. A new bind context is
    + * instanciated every time a {@link Query} is bound. <code>QueryPart</code>'s
    + * will then pass the same context to their components
    + * <p>
    + * This interface is for JOOQ INTERNAL USE only. Do not reference directly
    + *
    + * @author Lukas Eder
    + * @see RenderContext
    + */
    +public interface BindContext extends Context<BindContext> {
    +
    +    /**
    +     * Retrieve the context's underlying {@link PreparedStatement}
    +     */
    +    PreparedStatement statement();
    +
    +    /**
    +     * Bind values from a {@link QueryPart}. This will also increment the
    +     * internal counter.
    +     *
    +     * @throws DataAccessException If something went wrong while binding a
    +     *             variable
    +     */
    +    BindContext bind(QueryPart part) throws DataAccessException;
    +
    +    /**
    +     * Bind values from several {@link QueryPart}'s. This will also increment
    +     * the internal counter.
    +     *
    +     * @throws DataAccessException If something went wrong while binding a
    +     *             variable
    +     */
    +    BindContext bind(Collection<? extends QueryPart> parts) throws DataAccessException;
    +
    +    /**
    +     * Bind values from several {@link QueryPart}'s. This will also increment
    +     * the internal counter.
    +     *
    +     * @throws DataAccessException If something went wrong while binding a
    +     *             variable
    +     */
    +    BindContext bind(QueryPart[] parts) throws DataAccessException;
    +
    +    /**
    +     * Bind a value using a specific type. This will also increment the internal
    +     * counter.
    +     *
    +     * @throws DataAccessException If something went wrong while binding a
    +     *             variable
    +     */
    +    BindContext bindValue(Object value, Class<?> type) throws DataAccessException;
    +
    +    /**
    +     * Bind several values. This will also increment the internal counter.
    +     *
    +     * @throws DataAccessException If something went wrong while binding a
    +     *             variable
    +     */
    +    BindContext bindValues(Object... values) throws DataAccessException;
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/Case.java b/jOOQ/src/main/java/org/jooq/Case.java
    new file mode 100644
    index 00000000000..ce0d7d105fc
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/Case.java
    @@ -0,0 +1,122 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq;
    +
    +import org.jooq.impl.Factory;
    +
    +
    +/**
    + * The SQL case statement.
    + * <p>
    + * This construct can be used to create expressions of the type <code><pre>
    + * CASE x WHEN 1 THEN 'one'
    + *        WHEN 2 THEN 'two'
    + *        ELSE        'three'
    + * END
    + * </pre></code> or of the type <code><pre>
    + * CASE WHEN x &lt; 1  THEN 'one'
    + *      WHEN x &gt;= 2 THEN 'two'
    + *      ELSE            'three'
    + * END
    + * </pre></code> Instances of Case are created through the
    + * {@link Factory#decode()} method
    + *
    + * @author Lukas Eder
    + */
    +public interface Case {
    +
    +    /**
    +     * This construct can be used to create expressions of the type <code><pre>
    +     * CASE value WHEN 1 THEN 'one'
    +     *            WHEN 2 THEN 'two'
    +     *            ELSE        'three'
    +     * END
    +     * </pre></code>
    +     *
    +     * @param <V> The generic value type parameter
    +     * @param value The value to do the case statement on
    +     * @return An intermediary step for case statement construction
    +     */
    +    @Support
    +    <V> CaseValueStep<V> value(V value);
    +
    +    /**
    +     * This construct can be used to create expressions of the type <code><pre>
    +     * CASE value WHEN 1 THEN 'one'
    +     *            WHEN 2 THEN 'two'
    +     *            ELSE        'three'
    +     * END
    +     * </pre></code>
    +     *
    +     * @param <V> The generic value type parameter
    +     * @param value The value to do the case statement on
    +     * @return An intermediary step for case statement construction
    +     */
    +    @Support
    +    <V> CaseValueStep<V> value(Field<V> value);
    +
    +    /**
    +     * This construct can be used to create expressions of the type <code><pre>
    +     * CASE WHEN x &lt; 1  THEN 'one'
    +     *      WHEN x &gt;= 2 THEN 'two'
    +     *      ELSE            'three'
    +     * END
    +     * </pre></code> Instances of Case are created through the
    +     *
    +     * @param <T> The generic field type parameter
    +     * @param condition A condition to check in the case statement
    +     * @param result The result if the condition holds true
    +     * @return An intermediary step for case statement construction
    +     */
    +    @Support
    +    <T> CaseConditionStep<T> when(Condition condition, T result);
    +
    +    /**
    +     * This construct can be used to create expressions of the type <code><pre>
    +     * CASE WHEN x &lt; 1  THEN 'one'
    +     *      WHEN x &gt;= 2 THEN 'two'
    +     *      ELSE            'three'
    +     * END
    +     * </pre></code> Instances of Case are created through the
    +     *
    +     * @param <T> The generic field type parameter
    +     * @param condition A condition to check in the case statement
    +     * @param result The result if the condition holds true
    +     * @return An intermediary step for case statement construction
    +     */
    +    @Support
    +    <T> CaseConditionStep<T> when(Condition condition, Field<T> result);
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/CaseConditionStep.java b/jOOQ/src/main/java/org/jooq/CaseConditionStep.java
    new file mode 100644
    index 00000000000..79c3556096d
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/CaseConditionStep.java
    @@ -0,0 +1,91 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq;
    +
    +/**
    + * The final step in creating a case statement of the type <code><pre>
    + * CASE WHEN x &lt; 1  THEN 'one'
    + *      WHEN x &gt;= 2 THEN 'two'
    + *      ELSE            'three'
    + * END
    + * </pre></code>
    + *
    + * @param <T> The type returned by this case statement
    + * @author Lukas Eder
    + * @see Case
    + */
    +public interface CaseConditionStep<T> extends Field<T> {
    +
    +    /**
    +     * Compare a condition to the already constructed case statement, return
    +     * result if the condition holds true
    +     *
    +     * @param condition The condition to add to the case statement
    +     * @param result The result value if the condition holds true
    +     * @return An intermediary step for case statement construction
    +     */
    +    @Support
    +    CaseConditionStep<T> when(Condition condition, T result);
    +
    +    /**
    +     * Compare a condition to the already constructed case statement, return
    +     * result if the condition holds true
    +     *
    +     * @param condition The condition to add to the case statement
    +     * @param result The result value if the condition holds true
    +     * @return An intermediary step for case statement construction
    +     */
    +    @Support
    +    CaseConditionStep<T> when(Condition condition, Field<T> result);
    +
    +    /**
    +     * Add an else clause to the already constructed case statement
    +     *
    +     * @param result The result value if no other value matches the case
    +     * @return The resulting field from case statement construction
    +     */
    +    @Support
    +    Field<T> otherwise(T result);
    +
    +    /**
    +     * Add an else clause to the already constructed case statement
    +     *
    +     * @param result The result value if no other value matches the case
    +     * @return The resulting field from case statement construction
    +     */
    +    @Support
    +    Field<T> otherwise(Field<T> result);
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/CaseValueStep.java b/jOOQ/src/main/java/org/jooq/CaseValueStep.java
    new file mode 100644
    index 00000000000..f8773e22b3a
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/CaseValueStep.java
    @@ -0,0 +1,103 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq;
    +
    +/**
    + * An intermediary step in creating a case statement of the type <code><pre>
    + * CASE x WHEN 1 THEN 'one'
    + *        WHEN 2 THEN 'two'
    + *        ELSE        'three'
    + * END
    + * </pre></code>
    + *
    + * @param <V> The type of values being compared in this case statement
    + * @author Lukas Eder
    + * @see Case
    + */
    +public interface CaseValueStep<V> {
    +
    +    /**
    +     * Compare a value to the already constructed case statement, return result
    +     * if values are equal.
    +     *
    +     * @param <T> The generic result field type parameter
    +     * @param compareValue The value to compare with the already constructed
    +     *            case statement
    +     * @param result The result value if values are equal
    +     * @return An intermediary step for case statement construction
    +     */
    +    @Support
    +    <T> CaseWhenStep<V, T> when(V compareValue, T result);
    +
    +    /**
    +     * Compare a value to the already constructed case statement, return result
    +     * if values are equal.
    +     *
    +     * @param <T> The generic result field type parameter
    +     * @param compareValue The value to compare with the already constructed
    +     *            case statement
    +     * @param result The result value if values are equal
    +     * @return An intermediary step for case statement construction
    +     */
    +    @Support
    +    <T> CaseWhenStep<V, T> when(V compareValue, Field<T> result);
    +
    +    /**
    +     * Compare a value to the already constructed case statement, return result
    +     * if values are equal.
    +     *
    +     * @param <T> The generic result field type parameter
    +     * @param compareValue The value to compare with the already constructed
    +     *            case statement
    +     * @param result The result value if values are equal
    +     * @return An intermediary step for case statement construction
    +     */
    +    @Support
    +    <T> CaseWhenStep<V, T> when(Field<V> compareValue, T result);
    +
    +    /**
    +     * Compare a value to the already constructed case statement, return result
    +     * if values are equal.
    +     *
    +     * @param <T> The generic result field type parameter
    +     * @param compareValue The value to compare with the already constructed
    +     *            case statement
    +     * @param result The result value if values are equal
    +     * @return An intermediary step for case statement construction
    +     */
    +    @Support
    +    <T> CaseWhenStep<V, T> when(Field<V> compareValue, Field<T> result);
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/CaseWhenStep.java b/jOOQ/src/main/java/org/jooq/CaseWhenStep.java
    new file mode 100644
    index 00000000000..47bdd493c9e
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/CaseWhenStep.java
    @@ -0,0 +1,118 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq;
    +
    +/**
    + * The final step in creating a case statement of the type <code><pre>
    + * CASE x WHEN 1 THEN 'one'
    + *        WHEN 2 THEN 'two'
    + *        ELSE        'three'
    + * END
    + * </pre></code>
    + *
    + * @param <V> The type of values being compared in this case statement
    + * @param <T> The type returned by this case statement
    + * @author Lukas Eder
    + * @see Case
    + */
    +public interface CaseWhenStep<V, T> extends Field<T> {
    +
    +    /**
    +     * Compare a value to the already constructed case statement, return result
    +     * if values are equal.
    +     *
    +     * @param compareValue The value to compare with the already constructed
    +     *            case statement
    +     * @param result The result value if values are equal
    +     * @return An intermediary step for case statement construction
    +     */
    +    @Support
    +    CaseWhenStep<V, T> when(V compareValue, T result);
    +
    +    /**
    +     * Compare a value to the already constructed case statement, return result
    +     * if values are equal.
    +     *
    +     * @param compareValue The value to compare with the already constructed
    +     *            case statement
    +     * @param result The result value if values are equal
    +     * @return An intermediary step for case statement construction
    +     */
    +    @Support
    +    CaseWhenStep<V, T> when(V compareValue, Field<T> result);
    +
    +    /**
    +     * Compare a value to the already constructed case statement, return result
    +     * if values are equal.
    +     *
    +     * @param compareValue The value to compare with the already constructed
    +     *            case statement
    +     * @param result The result value if values are equal
    +     * @return An intermediary step for case statement construction
    +     */
    +    @Support
    +    CaseWhenStep<V, T> when(Field<V> compareValue, T result);
    +
    +    /**
    +     * Compare a value to the already constructed case statement, return result
    +     * if values are equal.
    +     *
    +     * @param compareValue The value to compare with the already constructed
    +     *            case statement
    +     * @param result The result value if values are equal
    +     * @return An intermediary step for case statement construction
    +     */
    +    @Support
    +    CaseWhenStep<V, T> when(Field<V> compareValue, Field<T> result);
    +
    +    /**
    +     * Add an else clause to the already constructed case statement
    +     *
    +     * @param result The result value if no other value matches the case
    +     * @return The resulting field from case statement construction
    +     */
    +    @Support
    +    Field<T> otherwise(T result);
    +
    +    /**
    +     * Add an else clause to the already constructed case statement
    +     *
    +     * @param result The result value if no other value matches the case
    +     * @return The resulting field from case statement construction
    +     */
    +    @Support
    +    Field<T> otherwise(Field<T> result);
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/Comparator.java b/jOOQ/src/main/java/org/jooq/Comparator.java
    new file mode 100644
    index 00000000000..f09db0d4092
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/Comparator.java
    @@ -0,0 +1,79 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +
    +package org.jooq;
    +
    +/**
    + * A comparator to be used in conditions
    + *
    + * @author Lukas Eder
    + */
    +public enum Comparator {
    +
    +    @Support
    +    EQUALS("="),
    +
    +    @Support
    +    NOT_EQUALS("<>"),
    +
    +    @Support
    +    LESS("<"),
    +
    +    @Support
    +    LESS_OR_EQUAL("<="),
    +
    +    @Support
    +    GREATER(">"),
    +
    +    @Support
    +    GREATER_OR_EQUAL(">="),
    +
    +    @Support
    +    LIKE("like"),
    +
    +    @Support
    +    NOT_LIKE("not like");
    +
    +    private final String sql;
    +
    +    private Comparator(String sql) {
    +        this.sql = sql;
    +    }
    +
    +    public String toSQL() {
    +        return sql;
    +    }
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/Condition.java b/jOOQ/src/main/java/org/jooq/Condition.java
    new file mode 100644
    index 00000000000..fdb18119535
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/Condition.java
    @@ -0,0 +1,201 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +
    +package org.jooq;
    +
    +import org.jooq.impl.Factory;
    +
    +/**
    + * A condition to be used in a query's where part
    + *
    + * @author Lukas Eder
    + */
    +public interface Condition extends QueryPart {
    +
    +    /**
    +     * Combine this condition with another one using the {@link Operator#AND}
    +     * operator.
    +     *
    +     * @param other The other condition
    +     * @return The combined condition
    +     */
    +    @Support
    +    Condition and(Condition other);
    +
    +    /**
    +     * Combine this condition with another one using the {@link Operator#AND}
    +     * operator.
    +     * <p>
    +     * <b>NOTE</b>: When inserting plain SQL into jOOQ objects, you must
    +     * guarantee syntax integrity. You may also create the possibility of
    +     * malicious SQL injection. Be sure to properly use bind variables and/or
    +     * escape literals when concatenated into SQL clauses!
    +     *
    +     * @param sql The other condition
    +     * @return The combined condition
    +     * @see Factory#condition(String)
    +     */
    +    @Support
    +    Condition and(String sql);
    +
    +    /**
    +     * Combine this condition with another one using the {@link Operator#AND}
    +     * operator.
    +     * <p>
    +     * <b>NOTE</b>: When inserting plain SQL into jOOQ objects, you must
    +     * guarantee syntax integrity. You may also create the possibility of
    +     * malicious SQL injection. Be sure to properly use bind variables and/or
    +     * escape literals when concatenated into SQL clauses!
    +     *
    +     * @param sql The other condition
    +     * @param bindings The bindings
    +     * @return The combined condition
    +     * @see Factory#condition(String, Object...)
    +     */
    +    @Support
    +    Condition and(String sql, Object... bindings);
    +
    +    /**
    +     * Combine this condition with a negated other one using the
    +     * {@link Operator#AND} operator.
    +     *
    +     * @param other The other condition
    +     * @return The combined condition
    +     */
    +    @Support
    +    Condition andNot(Condition other);
    +
    +    /**
    +     * Combine this condition with an EXISTS clause using the
    +     * {@link Operator#AND} operator.
    +     *
    +     * @param select The EXISTS's subquery
    +     * @return The combined condition
    +     */
    +    @Support
    +    Condition andExists(Select<?> select);
    +
    +    /**
    +     * Combine this condition with a NOT EXIST clause using the
    +     * {@link Operator#AND} operator.
    +     *
    +     * @param select The EXISTS's subquery
    +     * @return The combined condition
    +     */
    +    @Support
    +    Condition andNotExists(Select<?> select);
    +
    +    /**
    +     * Combine this condition with another one using the {@link Operator#OR}
    +     * operator.
    +     *
    +     * @param other The other condition
    +     * @return The combined condition
    +     */
    +    @Support
    +    Condition or(Condition other);
    +
    +    /**
    +     * Combine this condition with another one using the {@link Operator#OR}
    +     * operator.
    +     * <p>
    +     * <b>NOTE</b>: When inserting plain SQL into jOOQ objects, you must
    +     * guarantee syntax integrity. You may also create the possibility of
    +     * malicious SQL injection. Be sure to properly use bind variables and/or
    +     * escape literals when concatenated into SQL clauses!
    +     *
    +     * @param sql The other condition
    +     * @return The combined condition
    +     * @see Factory#condition(String)
    +     */
    +    @Support
    +    Condition or(String sql);
    +
    +    /**
    +     * Combine this condition with another one using the {@link Operator#OR}
    +     * operator.
    +     * <p>
    +     * <b>NOTE</b>: When inserting plain SQL into jOOQ objects, you must
    +     * guarantee syntax integrity. You may also create the possibility of
    +     * malicious SQL injection. Be sure to properly use bind variables and/or
    +     * escape literals when concatenated into SQL clauses!
    +     *
    +     * @param sql The other condition
    +     * @param bindings The bindings
    +     * @return The combined condition
    +     * @see Factory#condition(String, Object...)
    +     */
    +    @Support
    +    Condition or(String sql, Object... bindings);
    +
    +    /**
    +     * Combine this condition with a negated other one using the
    +     * {@link Operator#OR} operator.
    +     *
    +     * @param other The other condition
    +     * @return The combined condition
    +     */
    +    @Support
    +    Condition orNot(Condition other);
    +
    +    /**
    +     * Combine this condition with an EXISTS clause using the
    +     * {@link Operator#OR} operator.
    +     *
    +     * @param select The EXISTS's subquery
    +     * @return The combined condition
    +     */
    +    @Support
    +    Condition orExists(Select<?> select);
    +
    +    /**
    +     * Combine this condition with a NOT EXIST clause using the
    +     * {@link Operator#OR} operator.
    +     *
    +     * @param select The EXISTS's subquery
    +     * @return The combined condition
    +     */
    +    @Support
    +    Condition orNotExists(Select<?> select);
    +
    +    /**
    +     * Invert this condition
    +     *
    +     * @return This condition, inverted
    +     */
    +    @Support
    +    Condition not();
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/ConditionProvider.java b/jOOQ/src/main/java/org/jooq/ConditionProvider.java
    new file mode 100644
    index 00000000000..37d4ac52a17
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/ConditionProvider.java
    @@ -0,0 +1,84 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +
    +package org.jooq;
    +
    +import java.util.Collection;
    +
    +/**
    + * A common interface for all objects holding conditions (e.g. queries)
    + *
    + * @author Lukas Eder
    + */
    +public interface ConditionProvider {
    +
    +    /**
    +     * Adds new conditions to the query, connecting them to existing
    +     * conditions with {@link Operator#AND}
    +     *
    +     * @param conditions The condition
    +     */
    +    @Support
    +    void addConditions(Condition... conditions);
    +
    +    /**
    +     * Adds new conditions to the query, connecting them to existing
    +     * conditions with {@link Operator#AND}
    +     *
    +     * @param conditions The condition
    +     */
    +    @Support
    +    void addConditions(Collection<Condition> conditions);
    +
    +    /**
    +     * Adds new conditions to the query, connecting them to existing
    +     * conditions with the provided operator
    +     *
    +     * @param conditions The condition
    +     */
    +    @Support
    +    void addConditions(Operator operator, Condition... conditions);
    +
    +    /**
    +     * Adds new conditions to the query, connecting them to existing
    +     * conditions with the provided operator
    +     *
    +     * @param conditions The condition
    +     */
    +    @Support
    +    void addConditions(Operator operator, Collection<Condition> conditions);
    +
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/Configuration.java b/jOOQ/src/main/java/org/jooq/Configuration.java
    new file mode 100644
    index 00000000000..ddd8aa8c101
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/Configuration.java
    @@ -0,0 +1,134 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq;
    +
    +import java.io.Serializable;
    +import java.sql.Connection;
    +import java.util.Map;
    +
    +import org.jooq.conf.Settings;
    +
    +/**
    + * The Configuration holds data about sql dialects and connections
    + *
    + * @author Lukas Eder
    + */
    +public interface Configuration extends Serializable {
    +
    +    /**
    +     * Retrieve the configured dialect
    +     */
    +    SQLDialect getDialect();
    +
    +    /**
    +     * Retrieve the configured connection
    +     */
    +    Connection getConnection();
    +
    +    /**
    +     * Set the configured connection
    +     */
    +    void setConnection(Connection connection);
    +
    +    /**
    +     * Retrieve the configured schema mapping
    +     *
    +     * @deprecated - 2.0.5 - Use {@link #getSettings()} instead
    +     */
    +    @Deprecated
    +    SchemaMapping getSchemaMapping();
    +
    +    /**
    +     * Retrieve the runtime configuration settings
    +     */
    +    Settings getSettings();
    +
    +    /**
    +     * Get all custom data from this <code>Configuration</code>
    +     * <p>
    +     * This is custom data that was previously set to the configuration using
    +     * {@link #setData(String, Object)}. Use custom data if you want to pass
    +     * data to your custom {@link QueryPart} or {@link ExecuteListener} objects to
    +     * be made available at render, bind, execution, fetch time.
    +     * <p>
    +     * See {@link ExecuteListener} for more details.
    +     *
    +     * @return The custom data. This is never <code>null</code>
    +     * @see ExecuteListener
    +     */
    +    Map<String, Object> getData();
    +
    +    /**
    +     * Get some custom data from this <code>Configuration</code>
    +     * <p>
    +     * This is custom data that was previously set to the configuration using
    +     * {@link #setData(String, Object)}. Use custom data if you want to pass
    +     * data to your custom {@link QueryPart} or {@link ExecuteListener} objects to
    +     * be made available at render, bind, execution, fetch time.
    +     * <p>
    +     * See {@link ExecuteListener} for more details.
    +     *
    +     * @param key A key to identify the custom data
    +     * @return The custom data or <code>null</code> if no such data is contained
    +     *         in this <code>Configuration</code>
    +     * @see ExecuteListener
    +     */
    +    Object getData(String key);
    +
    +    /**
    +     * Set some custom data to this <code>Configuration</code>
    +     * <p>
    +     * This is custom data that was previously set to the configuration using
    +     * {@link #setData(String, Object)}. Use custom data if you want to pass
    +     * data to your custom {@link QueryPart} or {@link ExecuteListener} objects to
    +     * be made available at render, bind, execution, fetch time.
    +     * <p>
    +     * Be sure that your custom data implements {@link Serializable} if you want
    +     * to serialise this <code>Configuration</code> or objects referencing this
    +     * <code>Configuration</code>, e.g. your {@link Record} types.
    +     * <p>
    +     * See {@link ExecuteListener} for more details.
    +     *
    +     * @param key A key to identify the custom data
    +     * @param value The custom data or <code>null</code> to unset the custom
    +     *            data
    +     * @return The previously set custom data or <code>null</code> if no data
    +     *         was previously set for the given key
    +     * @see ExecuteListener
    +     */
    +    Object setData(String key, Object value);
    +
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/ConfigurationProvider.java b/jOOQ/src/main/java/org/jooq/ConfigurationProvider.java
    new file mode 100644
    index 00000000000..604a4cf4aae
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/ConfigurationProvider.java
    @@ -0,0 +1,65 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq;
    +
    +import java.sql.Connection;
    +
    +/**
    + * Implement this interface and supply it to the {@link ConfigurationRegistry}.
    + * jOOQ will call back on your implementation upon deserialisation.
    + *
    + * @author Lukas Eder
    + * @deprecated - 2.1.0 [#1191] - Use
    + *             {@link ExecuteListener#start(ExecuteContext)} instead to provide
    + *             jOOQ with valid connections
    + */
    +@Deprecated
    +public interface ConfigurationProvider {
    +
    +    /**
    +     * Provide a {@link Configuration} to jOOQ, given a deserialised
    +     * <code>Configuration</code>.
    +     * <p>
    +     * As of jOOQ 1.5.9, this callback is used to re-initialise
    +     * {@link Connection} contained in {@link QueryPart}'s and {@link Store}'s
    +     *
    +     * @param configuration The <code>Configuration</code>, as jOOQ has
    +     *            deserialised it.
    +     * @return A substitute <code>Configuration</code> (or <code>null</code> if
    +     *         no substitution should be done)
    +     */
    +    Configuration provideFor(Configuration configuration);
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/ConfigurationRegistry.java b/jOOQ/src/main/java/org/jooq/ConfigurationRegistry.java
    new file mode 100644
    index 00000000000..8a6399753dd
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/ConfigurationRegistry.java
    @@ -0,0 +1,111 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq;
    +
    +import org.jooq.tools.JooqLogger;
    +
    +/**
    + * A public static registry that can provide factories ({@link Configuration}'s)
    + * to {@link Attachable}'s upon deserialisation. The registry acts as an
    + * interface between client code and jOOQ. Client code may register a
    + * {@link ConfigurationProvider} using
    + * {@link #setProvider(ConfigurationProvider)}
    + * <p>
    + * This functionality is experimental. It may change again in the future. Use it
    + * at your own risk.
    + *
    + * @author Lukas Eder
    + * @see <a
    + *      href="http://groups.google.com/group/jooq-user/browse_thread/thread/d33e9a902707d111">http://groups.google.com/group/jooq-user/browse_thread/thread/d33e9a902707d111</a>
    + * @deprecated - 2.1.0 [#1191] - Use
    + *             {@link ExecuteListener#start(ExecuteContext)} instead to provide
    + *             jOOQ with valid connections
    + */
    +@Deprecated
    +public final class ConfigurationRegistry {
    +
    +    private static JooqLogger log = JooqLogger.getLogger(ConfigurationRegistry.class);
    +
    +    /**
    +     * The provider instance
    +     */
    +    private static ConfigurationProvider provider;
    +
    +    /**
    +     * Communicate to client-registered {@link ConfigurationProvider}'s
    +     * <p>
    +     * This method is used by jOOQ retrieve a client-provided
    +     * <code>Configuration</code>. Do not call this method directly.
    +     */
    +    public static Configuration provideFor(Configuration configuration) {
    +        if (provider != null) {
    +            if (log.isTraceEnabled()) {
    +                log.trace("Providing for", configuration);
    +            }
    +
    +            Configuration result = provider.provideFor(configuration);
    +
    +            if (log.isTraceEnabled()) {
    +                log.trace("Provided", result);
    +            }
    +
    +            return result;
    +        }
    +
    +        return null;
    +    }
    +
    +    /**
    +     * Register a client {@link ConfigurationProvider} to provide jOOQ with
    +     * {@link Configuration}'s upon deserialisation.
    +     *
    +     * @param provider The client <code>ConfigurationProvider</code>
    +     *            implementation, providing jOOQ with
    +     *            <code>Configurations</code> after deserialisation. This may be
    +     *            <code>null</code> to reset the provider.
    +     */
    +    public static void setProvider(ConfigurationProvider provider) {
    +        log.warn("Deprecation", "org.jooq.ConfigurationRegistry is deprecated. Use org.jooq.ExecuteListener instead");
    +
    +        if (provider != null) {
    +            log.info("Registering provider", provider);
    +        }
    +        else {
    +            log.info("Unregistering provider");
    +        }
    +        ConfigurationRegistry.provider = provider;
    +    }
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/Constants.java b/jOOQ/src/main/java/org/jooq/Constants.java
    new file mode 100644
    index 00000000000..5bba94fd1a4
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/Constants.java
    @@ -0,0 +1,54 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq;
    +
    +/**
    + * Some publicly available constants used in jOOQ
    + *
    + * @author Lukas Eder
    + */
    +public final class Constants {
    +
    +    /**
    +     * The latest jOOQ version
    +     */
    +    public static final String VERSION = "2.2.0";
    +
    +    /**
    +     * No further instances
    +     */
    +    private Constants() {}
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/Context.java b/jOOQ/src/main/java/org/jooq/Context.java
    new file mode 100644
    index 00000000000..8bcfe6c3d38
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/Context.java
    @@ -0,0 +1,103 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq;
    +
    +import java.sql.PreparedStatement;
    +
    +/**
    + * A context type that is used for rendering SQL or for binding
    + * <p>
    + * This interface is for JOOQ INTERNAL USE only. Do not reference directly
    + *
    + * @author Lukas Eder
    + * @see BindContext
    + * @see RenderContext
    + */
    +public interface Context<C extends Context<C>> extends Configuration {
    +
    +    /**
    +     * Whether the current context is rendering a SQL field declaration (e.g. a
    +     * {@link Field} in the <code>SELECT</code> clause of the query).
    +     */
    +    boolean declareFields();
    +
    +    /**
    +     * Set the new context value for {@link #declareFields()}
    +     */
    +    C declareFields(boolean declareFields);
    +
    +    /**
    +     * Whether the current context is rendering a SQL table declaration (e.g. a
    +     * {@link Table} in the <code>FROM</code> or <code>JOIN</code> clause of the
    +     * query).
    +     */
    +    boolean declareTables();
    +
    +    /**
    +     * Set the new context value for {@link #declareTables()}
    +     */
    +    C declareTables(boolean declareTables);
    +
    +    /**
    +     * Whether the current context is rendering a sub-query (nested query)
    +     */
    +    boolean subquery();
    +
    +    /**
    +     * Set the new context value for {@link #subquery()}
    +     */
    +    C subquery(boolean subquery);
    +
    +    /**
    +     * Get the next bind index. This increments an internal counter. This is
    +     * relevant for two use-cases:
    +     * <ul>
    +     * <li>When binding variables to a {@link PreparedStatement}. Client code
    +     * must assure that calling {@link #nextIndex()} is followed by setting a
    +     * bind value to {@link BindContext#statement()}</li>
    +     * <li>When rendering unnamed bind variables with
    +     * {@link RenderContext#namedParams()} being to <code>true</code></li>
    +     * </ul>
    +     */
    +    int nextIndex();
    +
    +    /**
    +     * Peek the next bind index. This won't increment the internal counter,
    +     * unlike {@link #nextIndex()}
    +     */
    +    int peekIndex();
    +
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/Converter.java b/jOOQ/src/main/java/org/jooq/Converter.java
    new file mode 100644
    index 00000000000..6211e727537
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/Converter.java
    @@ -0,0 +1,105 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq;
    +
    +import java.io.Serializable;
    +
    +import org.jooq.impl.SQLDataType;
    +
    +/**
    + * A <code>Converter</code> for data types.
    + * <p>
    + * A general data type conversion interface that can be provided to jOOQ at
    + * various places in order to perform custom data type conversion. Conversion is
    + * directed, this means that the <code>Converter</code> is used
    + * <ul>
    + * <li>to load database types converting them to user types "FROM" the database.
    + * Hence, {@link #fromType()} is the type as defined in the database.</li>
    + * <li>to store user types converting them to database types "TO" the database.
    + * Hence, {@link #toType()} is the user-defined type</li>
    + * </ul>
    + * <p>
    + * Note: In order to avoid unwanted side-effects, it is highly recommended (yet
    + * not required) for {@link #from(Object)} and {@link #to(Object)} to be
    + * <strong>reciprocal</strong>. The two methods are reciprocal, if for all
    + * <code>X and Y</code>, it can be said that
    + * <ul>
    + * <li>if <code>Y.equals(converter.from(X))</code>, then
    + * <code>X.equals(converter.to(Y))</code>.</li>
    + * <li>
    + * <code>X.equals(converter.from(converter.to(X)))</code></li>
    + * <li><code>X.equals(converter.to(converter.from(X)))</code></li>
    + * </ul>
    + * <p>
    + * Furthermore, it is recommended (yet not required) that
    + * <ul>
    + * <li><code>converter.from(null) == null</code></li>
    + * <li><code>converter.to(null) == null</code></li>
    + * </ul>
    + *
    + * @author Lukas Eder
    + * @param <T> The database type - i.e. any type available from
    + *            {@link SQLDataType}
    + * @param <U> The user type
    + */
    +public interface Converter<T, U> extends Serializable {
    +
    +    /**
    +     * Convert a database object to a user object
    +     *
    +     * @param databaseObject The database object
    +     * @return The user object
    +     */
    +    U from(T databaseObject);
    +
    +    /**
    +     * Convert a user object to a database object
    +     *
    +     * @param userObject The user object
    +     * @return The database object
    +     */
    +    T to(U userObject);
    +
    +    /**
    +     * The database type
    +     */
    +    Class<T> fromType();
    +
    +    /**
    +     * The user type
    +     */
    +    Class<U> toType();
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/Cursor.java b/jOOQ/src/main/java/org/jooq/Cursor.java
    new file mode 100644
    index 00000000000..ce7093efea5
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/Cursor.java
    @@ -0,0 +1,223 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq;
    +
    +import java.sql.PreparedStatement;
    +import java.sql.ResultSet;
    +import java.util.Iterator;
    +import java.util.List;
    +
    +import org.jooq.exception.DataAccessException;
    +import org.jooq.exception.MappingException;
    +
    +/**
    + * Cursors allow for lazy, sequential access to an underlying JDBC
    + * {@link ResultSet}. Unlike {@link Result}, data can only be accessed
    + * sequentially, using an {@link Iterator}, or the cursor's {@link #hasNext()}
    + * and {@link #fetch()} methods.
    + * <p>
    + * Client code must close this {@link Cursor} in order to close the underlying
    + * {@link PreparedStatement} and {@link ResultSet}
    + *
    + * @param <R> The cursor's record type
    + * @author Lukas Eder
    + */
    +public interface Cursor<R extends Record> extends FieldProvider, Iterable<R> {
    +
    +    /**
    +     * Check whether this cursor has a next record
    +     * <p>
    +     * This will conveniently close the <code>Cursor</code>, after the last
    +     * <code>Record</code> was fetched.
    +     *
    +     * @throws DataAccessException if something went wrong executing the query
    +     */
    +    boolean hasNext() throws DataAccessException;
    +
    +    /**
    +     * Fetch all remaining records as a result.
    +     * <p>
    +     * This will conveniently close the <code>Cursor</code>, after the last
    +     * <code>Record</code> was fetched.
    +     *
    +     * @throws DataAccessException if something went wrong executing the query
    +     */
    +    Result<R> fetch() throws DataAccessException;
    +
    +    /**
    +     * Fetch the next couple of records from the cursor.
    +     * <p>
    +     * This will conveniently close the <code>Cursor</code>, after the last
    +     * <code>Record</code> was fetched.
    +     *
    +     * @param number The number of records to fetch. If this is <code>0</code>
    +     *            or negative an empty list is returned, the cursor is
    +     *            untouched. If this is greater than the number of remaining
    +     *            records, then all remaining records are returned.
    +     * @throws DataAccessException if something went wrong executing the query
    +     */
    +    Result<R> fetch(int number) throws DataAccessException;
    +
    +    /**
    +     * Fetch the next record from the cursor
    +     * <p>
    +     * This will conveniently close the <code>Cursor</code>, after the last
    +     * <code>Record</code> was fetched.
    +     *
    +     * @return The next record from the cursor, or <code>null</code> if there is
    +     *         no next record.
    +     * @throws DataAccessException if something went wrong executing the query
    +     */
    +    R fetchOne() throws DataAccessException;
    +
    +    /**
    +     * Fetch the next record into a custom handler callback
    +     * <p>
    +     * This will conveniently close the <code>Cursor</code>, after the last
    +     * <code>Record</code> was fetched.
    +     *
    +     * @param handler The handler callback
    +     * @return Convenience result, returning the parameter handler itself
    +     * @throws DataAccessException if something went wrong executing the query
    +     */
    +    <H extends RecordHandler<R>> H fetchOneInto(H handler) throws DataAccessException;
    +
    +    /**
    +     * Fetch results into a custom handler callback
    +     *
    +     * @param handler The handler callback
    +     * @return Convenience result, returning the parameter handler itself
    +     * @throws DataAccessException if something went wrong executing the query
    +     */
    +    <H extends RecordHandler<R>> H fetchInto(H handler) throws DataAccessException;
    +
    +    /**
    +     * Map the next resulting record onto a custom type.
    +     * <p>
    +     * This is the same as calling <code>fetchOne().into(type)</code>. See
    +     * {@link Record#into(Class)} for more details
    +     *
    +     * @param <E> The generic entity type.
    +     * @param type The entity type.
    +     * @see Record#into(Class)
    +     * @see Result#into(Class)
    +     * @throws DataAccessException if something went wrong executing the query
    +     * @throws MappingException wrapping any reflection or data type conversion
    +     *             exception that might have occurred while mapping records
    +     */
    +    <E> E fetchOneInto(Class<? extends E> type) throws DataAccessException, MappingException;
    +
    +    /**
    +     * Map resulting records onto a custom type.
    +     * <p>
    +     * This is the same as calling <code>fetch().into(type)</code>. See
    +     * {@link Record#into(Class)} for more details
    +     *
    +     * @param <E> The generic entity type.
    +     * @param type The entity type.
    +     * @see Record#into(Class)
    +     * @see Result#into(Class)
    +     * @throws DataAccessException if something went wrong executing the query
    +     * @throws MappingException wrapping any reflection or data type conversion
    +     *             exception that might have occurred while mapping records
    +     */
    +    <E> List<E> fetchInto(Class<? extends E> type) throws DataAccessException, MappingException;
    +
    +    /**
    +     * Map the next resulting record onto a custom record.
    +     * <p>
    +     * This is the same as calling <code>fetchOne().into(table)</code>. See
    +     * {@link Record#into(Class)} for more details
    +     *
    +     * @param <Z> The generic table record type.
    +     * @param table The table type.
    +     * @see Record#into(Class)
    +     * @see Result#into(Class)
    +     * @throws DataAccessException if something went wrong executing the query
    +     * @throws MappingException wrapping any reflection or data type conversion
    +     *             exception that might have occurred while mapping records
    +     */
    +    <Z extends Record> Z fetchOneInto(Table<Z> table) throws DataAccessException, MappingException;
    +
    +    /**
    +     * Map resulting records onto a custom record.
    +     * <p>
    +     * This is the same as calling <code>fetch().into(table)</code>. See
    +     * {@link Record#into(Class)} for more details
    +     *
    +     * @param <Z> The generic table record type.
    +     * @param table The table type.
    +     * @see Record#into(Class)
    +     * @see Result#into(Class)
    +     * @throws DataAccessException if something went wrong executing the query
    +     * @throws MappingException wrapping any reflection or data type conversion
    +     *             exception that might have occurred while mapping records
    +     */
    +    <Z extends Record> List<Z> fetchInto(Table<Z> table) throws DataAccessException, MappingException;
    +
    +    /**
    +     * Explicitly close the underlying {@link PreparedStatement} and
    +     * {@link ResultSet}
    +     * <p>
    +     * If you fetch all records from the underlying {@link ResultSet}, jOOQ
    +     * <code>Cursor</code> implementations will close themselves for you.
    +     * Calling <code>close()</code> again will have no effect.
    +     *
    +     * @throws DataAccessException if something went wrong executing the query
    +     */
    +    void close() throws DataAccessException;
    +
    +    /**
    +     * Check whether this <code>Cursor</code> has been explicitly or
    +     * "conveniently" closed.
    +     * <p>
    +     * Explicit closing can be achieved by calling {@link #close()} from client
    +     * code. "Convenient" closing is done by any of the other methods, when the
    +     * last record was fetched.
    +     */
    +    boolean isClosed();
    +
    +    /**
    +     * Get the <code>Cursor</code>'s underlying {@link ResultSet}
    +     * <p>
    +     * If you modify the underlying <code>ResultSet</code>, the
    +     * <code>Cursor</code> may be affected and in some cases, rendered unusable.
    +     *
    +     * @return The underlying <code>ResultSet</code>. May be <code>null</code>,
    +     *         for instance when the <code>Cursor</code> is closed.
    +     */
    +    ResultSet resultSet();
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/DataType.java b/jOOQ/src/main/java/org/jooq/DataType.java
    new file mode 100644
    index 00000000000..ea61c82dd6f
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/DataType.java
    @@ -0,0 +1,250 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq;
    +
    +import java.io.Serializable;
    +import java.sql.Types;
    +
    +import org.jooq.impl.SQLDataType;
    +import org.jooq.types.DayToSecond;
    +import org.jooq.types.YearToMonth;
    +
    +/**
    + * A common interface to all dialect-specific data types
    + *
    + * @param <T> The Java type associated with this SQL data type
    + * @author Lukas Eder
    + */
    +public interface DataType<T> extends Serializable {
    +
    +    /**
    +     * Get the standard SQL data type of this (dialect-specific) data type if
    +     * available.
    +     */
    +    SQLDataType<T> getSQLDataType();
    +
    +    /**
    +     * The dialect-specific data type representing this data type.
    +     */
    +    DataType<T> getDataType(Configuration configuration);
    +
    +    /**
    +     * Get JDBC {@link Types} value
    +     */
    +    int getSQLType();
    +
    +    /**
    +     * Retrieve the Java type associated with this data type
    +     */
    +    Class<? extends T> getType();
    +
    +    /**
    +     * Retrieve a Java type associated with this data type and precision/scale
    +     */
    +    Class<?> getType(int precision, int scale);
    +
    +    /**
    +     * Retrieve the Java type associated with ARRAYs of this data type
    +     */
    +    Class<? extends T[]> getArrayType();
    +
    +    /**
    +     * Retrieve the data type for an ARRAY of this data type
    +     */
    +    DataType<T[]> getArrayDataType();
    +
    +    /**
    +     * Retrieve the data type for an Oracle-style ARRAY of this data type
    +     */
    +    <A extends ArrayRecord<T>> DataType<A> asArrayDataType(Class<A> arrayDataType);
    +
    +    /**
    +     * Retrieve the data type for a given master data type
    +     */
    +    <M extends MasterDataType<T>> DataType<M> asMasterDataType(Class<M> masterDataType);
    +
    +    /**
    +     * Retrieve the data type for a given enum data type
    +     */
    +    <E extends EnumType> DataType<E> asEnumDataType(Class<E> enumDataType);
    +
    +    /**
    +     * Retrieve the data type for a given converter
    +     */
    +    <U> DataType<U> asConvertedDataType(Converter<? super T, U> converter);
    +
    +    /**
    +     * Retrieve the dialect-specific type name associated with this data type
    +     */
    +    String getTypeName();
    +
    +    /**
    +     * Retrieve the dialect-specific type name associated with this data type
    +     */
    +    String getTypeName(Configuration configuration);
    +
    +    /**
    +     * Retrieve the dialect-specific type name associated with this data type
    +     * used for casting
    +     * <p>
    +     * This is useful for some dialects that have specialised type names for
    +     * cast expressions. Other dialects require type-length binding when
    +     * casting, (e.g. VARCHAR(32767))
    +     */
    +    String getCastTypeName();
    +
    +    /**
    +     * Retrieve the dialect-specific type name associated with this data type
    +     * used for casting
    +     * <p>
    +     * This is useful for some dialects that have specialised type names for
    +     * cast expressions. Other dialects require type-length binding when
    +     * casting, (e.g. VARCHAR(32767))
    +     */
    +    String getCastTypeName(Configuration configuration);
    +
    +    /**
    +     * Retrieve the dialect-specific type name associated with this data type
    +     * used for casting
    +     * <p>
    +     * This is useful for some dialects that have specialised type names for
    +     * cast expressions. Other dialects require type-length binding when
    +     * casting, (e.g. DECIMAL(20,5))
    +     */
    +    String getCastTypeName(Configuration configuration, int precision, int scale);
    +
    +    /**
    +     * Retrieve the underlying {@link SQLDialect}
    +     */
    +    SQLDialect getDialect();
    +
    +    /**
    +     * Convert an arbitrary object into <code>&lt;T&gt;</code>
    +     *
    +     * @param object The object to be converted
    +     * @return The converted object
    +     * @throws RuntimeException An undisclosed unchecked exception, if
    +     *             conversion fails.
    +     */
    +    T convert(Object object);
    +
    +    /**
    +     * Whether this data type is any numeric data type. This applies to any of
    +     * these types:
    +     * <ul>
    +     * <li> {@link SQLDataType#TINYINT}</li>
    +     * <li> {@link SQLDataType#SMALLINT}</li>
    +     * <li> {@link SQLDataType#INTEGER}</li>
    +     * <li> {@link SQLDataType#BIGINT}</li>
    +     * <li> {@link SQLDataType#FLOAT}</li>
    +     * <li> {@link SQLDataType#DOUBLE}</li>
    +     * <li> {@link SQLDataType#REAL}</li>
    +     * <li> {@link SQLDataType#DECIMAL}</li>
    +     * <li> {@link SQLDataType#DECIMAL_INTEGER}</li>
    +     * <li> {@link SQLDataType#NUMERIC}</li>
    +     * </ul>
    +     */
    +    boolean isNumeric();
    +
    +    /**
    +     * Whether this data type is any character data type. This applies to any of
    +     * these types:
    +     * <ul>
    +     * <li> {@link SQLDataType#CHAR}</li>
    +     * <li> {@link SQLDataType#CLOB}</li>
    +     * <li> {@link SQLDataType#LONGNVARCHAR}</li>
    +     * <li> {@link SQLDataType#LONGVARCHAR}</li>
    +     * <li> {@link SQLDataType#NCHAR}</li>
    +     * <li> {@link SQLDataType#NCLOB}</li>
    +     * <li> {@link SQLDataType#NVARCHAR}</li>
    +     * <li> {@link SQLDataType#VARCHAR}</li>
    +     * </ul>
    +     */
    +    boolean isString();
    +
    +    /**
    +     * Whether this data type is any date or time type. This applies to any of
    +     * these types.
    +     * <ul>
    +     * <li> {@link SQLDataType#DATE}</li>
    +     * <li> {@link SQLDataType#TIME}</li>
    +     * <li> {@link SQLDataType#TIMESTAMP}</li>
    +     * </ul>
    +     */
    +    boolean isDateTime();
    +
    +    /**
    +     * Whether this data type is any date or time type. This applies to any of
    +     * these types.
    +     * <ul>
    +     * <li> {@link SQLDataType#DATE}</li>
    +     * <li> {@link SQLDataType#TIME}</li>
    +     * <li> {@link SQLDataType#TIMESTAMP}</li>
    +     * <li> {@link YearToMonth}</li>
    +     * <li> {@link DayToSecond}</li>
    +     * </ul>
    +     * <p>
    +     * This is a combination of {@link #isDateTime()} or {@link #isInterval()}
    +     */
    +    boolean isTemporal();
    +
    +    /**
    +     * Whether this data type is any interval type. This applies to any of
    +     * these types.
    +     * <ul>
    +     * <li> {@link YearToMonth}</li>
    +     * <li> {@link DayToSecond}</li>
    +     * </ul>
    +     */
    +    boolean isInterval();
    +
    +    /**
    +     * Whether this data type is any binary type. This applies to any of these
    +     * types.
    +     * <ul>
    +     * <li> {@link SQLDataType#BINARY}</li>
    +     * <li> {@link SQLDataType#BLOB}</li>
    +     * <li> {@link SQLDataType#LONGVARBINARY}</li>
    +     * <li> {@link SQLDataType#VARBINARY}</li>
    +     * </ul>
    +     */
    +    boolean isBinary();
    +
    +    /**
    +     * Whether this data type is an array type.
    +     */
    +    boolean isArray();
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/DatePart.java b/jOOQ/src/main/java/org/jooq/DatePart.java
    new file mode 100644
    index 00000000000..f3412cccf0e
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/DatePart.java
    @@ -0,0 +1,86 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +
    +package org.jooq;
    +
    +/**
    + * A date part can be used with SQL functions such as extract(). It describes a
    + * part of a date / datetime value
    + *
    + * @author Lukas Eder
    + */
    +public enum DatePart {
    +
    +    /**
    +     * The year
    +     */
    +    YEAR("year"),
    +
    +    /**
    +     * The month
    +     */
    +    MONTH("month"),
    +
    +    /**
    +     * The day
    +     */
    +    DAY("day"),
    +
    +    /**
    +     * The hour
    +     */
    +    HOUR("hour"),
    +
    +    /**
    +     * The minute
    +     */
    +    MINUTE("minute"),
    +
    +    /**
    +     * The second
    +     */
    +    SECOND("second");
    +
    +    private final String sql;
    +
    +    private DatePart(String sql) {
    +        this.sql = sql;
    +    }
    +
    +    public String toSQL() {
    +        return sql;
    +    }
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/Delete.java b/jOOQ/src/main/java/org/jooq/Delete.java
    new file mode 100644
    index 00000000000..79a620728b0
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/Delete.java
    @@ -0,0 +1,45 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq;
    +
    +/**
    + * A {@link Query} that can delete data in the database.
    + *
    + * @author Lukas Eder
    + */
    +public interface Delete<R extends Record> extends Query {
    +
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/DeleteConditionStep.java b/jOOQ/src/main/java/org/jooq/DeleteConditionStep.java
    new file mode 100644
    index 00000000000..8f421f4287e
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/DeleteConditionStep.java
    @@ -0,0 +1,155 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq;
    +
    +import org.jooq.impl.Factory;
    +
    +/**
    + * This type is used for the {@link Delete}'s DSL API.
    + * <p>
    + * Example: <code><pre>
    + * Factory create = new Factory();
    + *
    + * create.delete(table)
    + *       .where(field1.greaterThan(100))
    + *       .execute();
    + * </pre></code>
    + *
    + * @author Lukas Eder
    + */
    +public interface DeleteConditionStep<R extends Record> extends DeleteFinalStep<R> {
    +
    +    /**
    +     * Combine the currently assembled conditions with another one using the
    +     * {@link Operator#AND} operator
    +     */
    +    @Support
    +    DeleteConditionStep<R> and(Condition condition);
    +
    +    /**
    +     * Combine the currently assembled conditions with another one using the
    +     * {@link Operator#AND} operator
    +     * <p>
    +     * <b>NOTE</b>: When inserting plain SQL into jOOQ objects, you must
    +     * guarantee syntax integrity. You may also create the possibility of
    +     * malicious SQL injection. Be sure to properly use bind variables and/or
    +     * escape literals when concatenated into SQL clauses!
    +     *
    +     * @see Factory#condition(String)
    +     */
    +    DeleteConditionStep<R> and(String sql);
    +
    +    /**
    +     * Combine the currently assembled conditions with another one using the
    +     * {@link Operator#AND} operator
    +     * <p>
    +     * <b>NOTE</b>: When inserting plain SQL into jOOQ objects, you must
    +     * guarantee syntax integrity. You may also create the possibility of
    +     * malicious SQL injection. Be sure to properly use bind variables and/or
    +     * escape literals when concatenated into SQL clauses!
    +     *
    +     * @see Factory#condition(String, Object...)
    +     */
    +    DeleteConditionStep<R> and(String sql, Object... bindings);
    +
    +    /**
    +     * Combine the currently assembled conditions with a negated other one using
    +     * the {@link Operator#AND} operator
    +     */
    +    DeleteConditionStep<R> andNot(Condition condition);
    +
    +    /**
    +     * Combine the currently assembled conditions with an EXISTS clause using
    +     * the {@link Operator#AND} operator
    +     */
    +    DeleteConditionStep<R> andExists(Select<?> select);
    +
    +    /**
    +     * Combine the currently assembled conditions with a NOT EXISTS clause using
    +     * the {@link Operator#AND} operator
    +     */
    +    DeleteConditionStep<R> andNotExists(Select<?> select);
    +
    +    /**
    +     * Combine the currently assembled conditions with another one using the
    +     * {@link Operator#OR} operator
    +     */
    +    DeleteConditionStep<R> or(Condition condition);
    +
    +    /**
    +     * Combine the currently assembled conditions with another one using the
    +     * {@link Operator#OR} operator
    +     * <p>
    +     * <b>NOTE</b>: When inserting plain SQL into jOOQ objects, you must
    +     * guarantee syntax integrity. You may also create the possibility of
    +     * malicious SQL injection. Be sure to properly use bind variables and/or
    +     * escape literals when concatenated into SQL clauses!
    +     *
    +     * @see Factory#condition(String)
    +     */
    +    DeleteConditionStep<R> or(String sql);
    +
    +    /**
    +     * Combine the currently assembled conditions with another one using the
    +     * {@link Operator#OR} operator
    +     * <p>
    +     * <b>NOTE</b>: When inserting plain SQL into jOOQ objects, you must
    +     * guarantee syntax integrity. You may also create the possibility of
    +     * malicious SQL injection. Be sure to properly use bind variables and/or
    +     * escape literals when concatenated into SQL clauses!
    +     *
    +     * @see Factory#condition(String, Object...)
    +     */
    +    DeleteConditionStep<R> or(String sql, Object... bindings);
    +
    +    /**
    +     * Combine the currently assembled conditions with a negated other one using
    +     * the {@link Operator#OR} operator
    +     */
    +    DeleteConditionStep<R> orNot(Condition condition);
    +
    +    /**
    +     * Combine the currently assembled conditions with an EXISTS clause using
    +     * the {@link Operator#OR} operator
    +     */
    +    DeleteConditionStep<R> orExists(Select<?> select);
    +
    +    /**
    +     * Combine the currently assembled conditions with a NOT EXISTS clause using
    +     * the {@link Operator#OR} operator
    +     */
    +    DeleteConditionStep<R> orNotExists(Select<?> select);
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/DeleteFinalStep.java b/jOOQ/src/main/java/org/jooq/DeleteFinalStep.java
    new file mode 100644
    index 00000000000..ae6f6f83c20
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/DeleteFinalStep.java
    @@ -0,0 +1,53 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq;
    +
    +/**
    + * This type is used for the {@link Delete}'s DSL API.
    + * <p>
    + * Example: <code><pre>
    + * Factory create = new Factory();
    + *
    + * create.delete(table)
    + *       .where(field1.greaterThan(100))
    + *       .execute();
    + * </pre></code>
    + *
    + * @author Lukas Eder
    + */
    +public interface DeleteFinalStep<R extends Record> extends Delete<R> {
    +
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/DeleteQuery.java b/jOOQ/src/main/java/org/jooq/DeleteQuery.java
    new file mode 100644
    index 00000000000..fa8b689206f
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/DeleteQuery.java
    @@ -0,0 +1,47 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +
    +package org.jooq;
    +
    +/**
    + * A query used for deletion of data
    + *
    + * @param <R> The record type of the table being deleted from
    + * @author Lukas Eder
    + */
    +public interface DeleteQuery<R extends Record> extends ConditionProvider, Delete<R> {
    +
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/DeleteWhereStep.java b/jOOQ/src/main/java/org/jooq/DeleteWhereStep.java
    new file mode 100644
    index 00000000000..28245c92a24
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/DeleteWhereStep.java
    @@ -0,0 +1,106 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq;
    +
    +import java.util.Collection;
    +
    +import org.jooq.impl.Factory;
    +
    +/**
    + * This type is used for the {@link Delete}'s DSL API.
    + * <p>
    + * Example: <code><pre>
    + * Factory create = new Factory();
    + *
    + * create.delete(table)
    + *       .where(field1.greaterThan(100))
    + *       .execute();
    + * </pre></code>
    + *
    + * @author Lukas Eder
    + */
    +public interface DeleteWhereStep<R extends Record> extends DeleteFinalStep<R> {
    +
    +    /**
    +     * Add conditions to the query
    +     */
    +    @Support
    +    DeleteConditionStep<R> where(Condition... conditions);
    +
    +    /**
    +     * Add conditions to the query
    +     */
    +    @Support
    +    DeleteConditionStep<R> where(Collection<Condition> conditions);
    +
    +    /**
    +     * Add conditions to the query
    +     * <p>
    +     * <b>NOTE</b>: When inserting plain SQL into jOOQ objects, you must
    +     * guarantee syntax integrity. You may also create the possibility of
    +     * malicious SQL injection. Be sure to properly use bind variables and/or
    +     * escape literals when concatenated into SQL clauses!
    +     *
    +     * @see Factory#condition(String)
    +     */
    +    @Support
    +    DeleteConditionStep<R> where(String sql);
    +
    +    /**
    +     * Add conditions to the query
    +     * <p>
    +     * <b>NOTE</b>: When inserting plain SQL into jOOQ objects, you must
    +     * guarantee syntax integrity. You may also create the possibility of
    +     * malicious SQL injection. Be sure to properly use bind variables and/or
    +     * escape literals when concatenated into SQL clauses!
    +     *
    +     * @see Factory#condition(String, Object...)
    +     */
    +    @Support
    +    DeleteConditionStep<R> where(String sql, Object... bindings);
    +
    +    /**
    +     * Add an EXISTS clause to the query
    +     */
    +    @Support
    +    DeleteConditionStep<R> whereExists(Select<?> select);
    +
    +    /**
    +     * Add a NOT EXISTS clause to the query
    +     */
    +    @Support
    +    DeleteConditionStep<R> whereNotExists(Select<?> select);
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/DivideByOnConditionStep.java b/jOOQ/src/main/java/org/jooq/DivideByOnConditionStep.java
    new file mode 100644
    index 00000000000..aac117dbd64
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/DivideByOnConditionStep.java
    @@ -0,0 +1,159 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq;
    +
    +import org.jooq.impl.Factory;
    +
    +/**
    + * An intermediate type for the construction of a relational division. This type
    + * can be used as a convenience type for connecting more conditions.
    + *
    + * @author Lukas Eder
    + */
    +public interface DivideByOnConditionStep extends DivideByReturningStep {
    +
    +    /**
    +     * Combine the currently assembled conditions with another one using the
    +     * {@link Operator#AND} operator.
    +     */
    +    @Support
    +    DivideByOnConditionStep and(Condition condition);
    +
    +    /**
    +     * Combine the currently assembled conditions with another one using the
    +     * {@link Operator#AND} operator.
    +     * <p>
    +     * <b>NOTE</b>: When inserting plain SQL into jOOQ objects, you must
    +     * guarantee syntax integrity. You may also create the possibility of
    +     * malicious SQL injection. Be sure to properly use bind variables and/or
    +     * escape literals when concatenated into SQL clauses!
    +     *
    +     * @see Factory#condition(String)
    +     */
    +    @Support
    +    DivideByOnConditionStep and(String sql);
    +
    +    /**
    +     * Combine the currently assembled conditions with another one using the
    +     * {@link Operator#AND} operator.
    +     * <p>
    +     * <b>NOTE</b>: When inserting plain SQL into jOOQ objects, you must
    +     * guarantee syntax integrity. You may also create the possibility of
    +     * malicious SQL injection. Be sure to properly use bind variables and/or
    +     * escape literals when concatenated into SQL clauses!
    +     *
    +     * @see Factory#condition(String, Object...)
    +     */
    +    @Support
    +    DivideByOnConditionStep and(String sql, Object... bindings);
    +
    +    /**
    +     * Combine the currently assembled conditions with a negated other one using
    +     * the {@link Operator#AND} operator.
    +     */
    +    @Support
    +    DivideByOnConditionStep andNot(Condition condition);
    +
    +    /**
    +     * Combine the currently assembled conditions with an <code>EXISTS</code>
    +     * clause using the {@link Operator#AND} operator.
    +     */
    +    @Support
    +    DivideByOnConditionStep andExists(Select<?> select);
    +
    +    /**
    +     * Combine the currently assembled conditions with a <code>NOT EXISTS</code>
    +     * clause using the {@link Operator#AND} operator.
    +     */
    +    @Support
    +    DivideByOnConditionStep andNotExists(Select<?> select);
    +
    +    /**
    +     * Combine the currently assembled conditions with another one using the
    +     * {@link Operator#OR} operator.
    +     */
    +    @Support
    +    DivideByOnConditionStep or(Condition condition);
    +
    +    /**
    +     * Combine the currently assembled conditions with another one using the
    +     * {@link Operator#OR} operator.
    +     * <p>
    +     * <b>NOTE</b>: When inserting plain SQL into jOOQ objects, you must
    +     * guarantee syntax integrity. You may also create the possibility of
    +     * malicious SQL injection. Be sure to properly use bind variables and/or
    +     * escape literals when concatenated into SQL clauses!
    +     *
    +     * @see Factory#condition(String)
    +     */
    +    @Support
    +    DivideByOnConditionStep or(String sql);
    +
    +    /**
    +     * Combine the currently assembled conditions with another one using the
    +     * {@link Operator#OR} operator.
    +     * <p>
    +     * <b>NOTE</b>: When inserting plain SQL into jOOQ objects, you must
    +     * guarantee syntax integrity. You may also create the possibility of
    +     * malicious SQL injection. Be sure to properly use bind variables and/or
    +     * escape literals when concatenated into SQL clauses!
    +     *
    +     * @see Factory#condition(String, Object...)
    +     */
    +    @Support
    +    DivideByOnConditionStep or(String sql, Object... bindings);
    +
    +    /**
    +     * Combine the currently assembled conditions with a negated other one using
    +     * the {@link Operator#OR} operator.
    +     */
    +    @Support
    +    DivideByOnConditionStep orNot(Condition condition);
    +
    +    /**
    +     * Combine the currently assembled conditions with an <code>EXISTS</code>
    +     * clause using the {@link Operator#OR} operator.
    +     */
    +    @Support
    +    DivideByOnConditionStep orExists(Select<?> select);
    +
    +    /**
    +     * Combine the currently assembled conditions with a <code>NOT EXISTS</code>
    +     * clause using the {@link Operator#OR} operator.
    +     */
    +    @Support
    +    DivideByOnConditionStep orNotExists(Select<?> select);
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/DivideByOnStep.java b/jOOQ/src/main/java/org/jooq/DivideByOnStep.java
    new file mode 100644
    index 00000000000..b9d03d4a2c3
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/DivideByOnStep.java
    @@ -0,0 +1,78 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq;
    +
    +import org.jooq.impl.Factory;
    +
    +/**
    + * An intermediate type for the construction of a relational division
    + *
    + * @author Lukas Eder
    + */
    +public interface DivideByOnStep {
    +
    +    /**
    +     * Add a division condition to the <code>DIVIDE BY</code> clause
    +     */
    +    @Support
    +    DivideByOnConditionStep on(Condition... conditions);
    +
    +    /**
    +     * Add a division condition to the <code>DIVIDE BY</code> clause
    +     * <p>
    +     * <b>NOTE</b>: When inserting plain SQL into jOOQ objects, you must
    +     * guarantee syntax integrity. You may also create the possibility of
    +     * malicious SQL injection. Be sure to properly use bind variables and/or
    +     * escape literals when concatenated into SQL clauses!
    +     *
    +     * @see Factory#condition(String)
    +     */
    +    @Support
    +    DivideByOnConditionStep on(String sql);
    +
    +    /**
    +     * Add a division condition to the <code>DIVIDE BY</code> clause
    +     * <p>
    +     * <b>NOTE</b>: When inserting plain SQL into jOOQ objects, you must
    +     * guarantee syntax integrity. You may also create the possibility of
    +     * malicious SQL injection. Be sure to properly use bind variables and/or
    +     * escape literals when concatenated into SQL clauses!
    +     *
    +     * @see Factory#condition(String, Object...)
    +     */
    +    @Support
    +    DivideByOnConditionStep on(String sql, Object... bindings);
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/DivideByReturningStep.java b/jOOQ/src/main/java/org/jooq/DivideByReturningStep.java
    new file mode 100644
    index 00000000000..9fa1d8797f0
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/DivideByReturningStep.java
    @@ -0,0 +1,58 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq;
    +
    +import java.util.Collection;
    +
    +/**
    + * An intermediate type for the construction of a relational division
    + *
    + * @author Lukas Eder
    + */
    +public interface DivideByReturningStep {
    +
    +    /**
    +     * Specify the fields that you want the division to return from the dividend
    +     */
    +    @Support
    +    Table<Record> returning(Field<?>... fields);
    +
    +    /**
    +     * Specify the fields that you want the division to return from the dividend
    +     */
    +    @Support
    +    Table<Record> returning(Collection<? extends Field<?>> fields);
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/EnumType.java b/jOOQ/src/main/java/org/jooq/EnumType.java
    new file mode 100644
    index 00000000000..e4269608d8a
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/EnumType.java
    @@ -0,0 +1,61 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq;
    +
    +/**
    + * A SQL enum type. This can be any of the following:
    + * <ul>
    + * <li>In {@link SQLDialect#MYSQL}, this can be a column-scope enum type</li>
    + * <li>In {@link SQLDialect#POSTGRES}, this can be a schema-scope enum type</li>
    + * <li>In all other dialects, this can be an enum type as defined in the code
    + * generation configuration [#968]</li>
    + * </ul>
    + *
    + * @author Lukas Eder
    + */
    +public interface EnumType {
    +
    +    /**
    +     * The literal as defined in the database
    +     */
    +    String getLiteral();
    +
    +    /**
    +     * The type name as registered in the database, if applicable (Postgres
    +     * schema-scope enum type only). Otherwise, this returns <code>null</code>
    +     */
    +    String getName();
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/ExecuteContext.java b/jOOQ/src/main/java/org/jooq/ExecuteContext.java
    new file mode 100644
    index 00000000000..395b4d11120
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/ExecuteContext.java
    @@ -0,0 +1,208 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq;
    +
    +import java.sql.Connection;
    +import java.sql.PreparedStatement;
    +import java.sql.ResultSet;
    +
    +import org.jooq.conf.StatementType;
    +
    +/**
    + * A context object for {@link Query} execution passed to registered
    + * {@link ExecuteListener}'s.
    + * <p>
    + * Expect most of this context's objects to be <code>nullable</code>!
    + *
    + * @author Lukas Eder
    + * @see ExecuteListener
    + */
    +public interface ExecuteContext extends Configuration {
    +
    +    /**
    +     * The configuration wrapped by this context
    +     */
    +    Configuration configuration();
    +
    +    /**
    +     * The type of database interaction that is being executed
    +     *
    +     * @see ExecuteType
    +     */
    +    ExecuteType type();
    +
    +    /**
    +     * The jOOQ {@link Query} that is being executed or <code>null</code> if the
    +     * query is unknown, if it is a batch query, or if there was no jOOQ
    +     * <code>Query</code>
    +     *
    +     * @see #routine()
    +     * @see #batchQueries()
    +     */
    +    Query query();
    +
    +    /**
    +     * The jOOQ {@link Query} objects that are being executed in batch mode, or
    +     * empty if the query is unknown or if there was no jOOQ <code>Query</code>
    +     * <p>
    +     * If a single <code>Query</code> is executed in non-batch mode, this will
    +     * return an array of length <code>1</code>, containing that
    +     * <code>Query</code>
    +     *
    +     * @see #query()
    +     * @see #routine()
    +     * @return The executed <code>Query</code> object(s). This is never
    +     *         <code>null</code>
    +     */
    +    Query[] batchQueries();
    +
    +    /**
    +     * The jOOQ {@link Routine} that is being executed or <code>null</code> if
    +     * the query is unknown or if there was no jOOQ <code>Routine</code>
    +     *
    +     * @see #routine()
    +     */
    +    Routine<?> routine();
    +
    +    /**
    +     * The SQL that is being executed or <code>null</code> if the SQL statement
    +     * is unknown or if there was no SQL statement
    +     */
    +    String sql();
    +
    +    /**
    +     * Override the SQL statement that is being executed. This may have no
    +     * effect, if called at the wrong moment.
    +     *
    +     * @see ExecuteListener#renderEnd(ExecuteContext)
    +     * @see ExecuteListener#prepareStart(ExecuteContext)
    +     */
    +    void sql(String sql);
    +
    +    /**
    +     * The generated SQL statements that are being executed in batch mode, or
    +     * empty if the query is unknown or if there was no SQL statement
    +     * <p>
    +     * If a single <code>Query</code> is executed in non-batch mode, this will
    +     * return an array of length <code>1</code>, containing that
    +     * <code>Query</code>
    +     *
    +     * @see #query()
    +     * @see #routine()
    +     * @return The generated SQL statement(s). This is never <code>null</code>
    +     */
    +    String[] batchSQL();
    +
    +    /**
    +     * The {@link Connection} that is being used for execution.
    +     */
    +    @Override
    +    Connection getConnection();
    +
    +    /**
    +     * Override the {@link Connection} that is being used for execution. This
    +     * may have no effect, if called at the wrong moment.
    +     *
    +     * @see ExecuteListener#start(ExecuteContext)
    +     */
    +    @Override
    +    void setConnection(Connection connection);
    +
    +    /**
    +     * The {@link PreparedStatement} that is being executed or <code>null</code>
    +     * if the statement is unknown or if there was no statement.
    +     * <p>
    +     * This can be any of the following: <br/>
    +     * <br/>
    +     * <ul>
    +     * <li>A <code>java.sql.PreparedStatement</code> from your JDBC driver when
    +     * a jOOQ <code>Query</code> is being executed as
    +     * {@link StatementType#PREPARED_STATEMENT}</li>
    +     * <li>A <code>java.sql.Statement</code> from your JDBC driver wrapped in a
    +     * <code>java.sql.PreparedStatement</code> when your jOOQ <code>Query</code>
    +     * is being executed as {@link StatementType#STATIC_STATEMENT}</li>
    +     * <li>A <code>java.sql.CallableStatement</code> when you are executing a
    +     * jOOQ <code>Routine</code></li>
    +     * </ul>
    +     */
    +    PreparedStatement statement();
    +
    +    /**
    +     * Override the {@link PreparedStatement} that is being executed. This may
    +     * have no effect, if called at the wrong moment.
    +     *
    +     * @see ExecuteListener#prepareEnd(ExecuteContext)
    +     * @see ExecuteListener#bindStart(ExecuteContext)
    +     */
    +    void statement(PreparedStatement statement);
    +
    +    /**
    +     * The {@link ResultSet} that is being fetched or <code>null</code> if the
    +     * result set is unknown or if no result set is being fetched.
    +     */
    +    ResultSet resultSet();
    +
    +    /**
    +     * Override the {@link ResultSet} that is being fetched. This may have no
    +     * effect, if called at the wrong moment.
    +     *
    +     * @see ExecuteListener#executeEnd(ExecuteContext)
    +     * @see ExecuteListener#fetchStart(ExecuteContext)
    +     */
    +    void resultSet(ResultSet resultSet);
    +
    +    /**
    +     * The last record that was fetched from the result set, or
    +     * <code>null</code> if no record has been fetched.
    +     */
    +    Record record();
    +
    +    /**
    +     * Calling this has no effect. It is being used by jOOQ internally.
    +     */
    +    void record(Record record);
    +
    +    /**
    +     * The last result that was fetched from the result set, or
    +     * <code>null</code> if no result has been fetched.
    +     */
    +    Result<?> result();
    +
    +    /**
    +     * Calling this has no effect. It is being used by jOOQ internally.
    +     */
    +    void result(Result<?> result);
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/ExecuteListener.java b/jOOQ/src/main/java/org/jooq/ExecuteListener.java
    new file mode 100644
    index 00000000000..696787b08c8
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/ExecuteListener.java
    @@ -0,0 +1,851 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq;
    +
    +import java.sql.Connection;
    +import java.sql.PreparedStatement;
    +import java.sql.ResultSet;
    +
    +import org.jooq.conf.Settings;
    +import org.jooq.conf.StatementType;
    +import org.jooq.impl.DefaultExecuteListener;
    +import org.jooq.impl.Factory;
    +import org.jooq.tools.LoggerListener;
    +import org.jooq.tools.StopWatchListener;
    +
    +/**
    + * An event listener for {@link Query}, {@link Routine}, or {@link ResultSet}
    + * render, prepare, bind, execute, fetch steps.
    + * <p>
    + * <code>ExecuteListener</code> is a base type for loggers, debuggers,
    + * profilers, data collectors that can be hooked into a jOOQ {@link Factory}
    + * using the {@link Settings#getExecuteListeners()} property, passing
    + * <code>Settings</code> to
    + * {@link Factory#Factory(java.sql.Connection, SQLDialect, Settings)}. Advanced
    + * <code>ExecuteListeners</code> can also provide custom implementations of
    + * {@link Connection}, {@link PreparedStatement} and {@link ResultSet} to jOOQ
    + * in apropriate methods. For convenience, consider extending
    + * {@link DefaultExecuteListener} instead of implementing this interface. This
    + * will prevent compilation errors in future versions of jOOQ, when this
    + * interface might get new methods.
    + * <p>
    + * The following table explains how every type of statement / operation invokes
    + * callback methods in the correct order for all registered
    + * <code>ExecuteListeners</code>. Find a legend below the table for the various
    + * use cases.
    + * <table border="1">
    + * <tr>
    + * <th>Callback method</th>
    + * <th>Use case [1]</th>
    + * <th>Use case [2]</th>
    + * <th>Use case [3]</th>
    + * <th>Use case [4]</th>
    + * <th>Use case [5]</th>
    + * <th>Use case [6]</th>
    + * </tr>
    + * <tr>
    + * <td> {@link #start(ExecuteContext)}</code></td>
    + * <td>Yes, 1x</td>
    + * <td>Yes, 1x</td>
    + * <td>Yes, 1x</td>
    + * <td>Yes, 1x</td>
    + * <td>Yes, 1x</td>
    + * <td>Yes, 1x</td>
    + * </tr>
    + * <tr>
    + * <td> {@link #renderStart(ExecuteContext)}</td>
    + * <td>Yes, 1x</td>
    + * <td>Yes, 1x</td>
    + * <td>No</td>
    + * <td>Yes, 1x</td>
    + * <td>Yes, Nx (for every query)</td>
    + * <td>Yes, 1x</td>
    + * </tr>
    + * <tr>
    + * <td> {@link #renderEnd(ExecuteContext)}</td>
    + * <td>Yes, 1x</td>
    + * <td>Yes, 1x</td>
    + * <td>No</td>
    + * <td>Yes, 1x</td>
    + * <td>Yes, Nx (for every query)</td>
    + * <td>Yes, 1x</td>
    + * </tr>
    + * <tr>
    + * <td> {@link #prepareStart(ExecuteContext)}</td>
    + * <td>Yes, 1x</td>
    + * <td>Yes, 1x</td>
    + * <td>No</td>
    + * <td>Yes, 1x</td>
    + * <td>Yes, Nx (for every query)</td>
    + * <td>Yes, 1x</td>
    + * </tr>
    + * <tr>
    + * <td> {@link #prepareEnd(ExecuteContext)}</td>
    + * <td>Yes, 1x</td>
    + * <td>Yes, 1x</td>
    + * <td>No</td>
    + * <td>Yes, 1x</td>
    + * <td>Yes, Nx (for every query)</td>
    + * <td>Yes, 1x</td>
    + * </tr>
    + * <tr>
    + * <td> {@link #bindStart(ExecuteContext)}</td>
    + * <td>Yes, 1x</td>
    + * <td>No</td>
    + * <td>No</td>
    + * <td>Yes, Nx (for every value set)</td>
    + * <td>No</td>
    + * <td>Yes, 1x</td>
    + * </tr>
    + * <tr>
    + * <td> {@link #bindEnd(ExecuteContext)}</td>
    + * <td>Yes, 1x</td>
    + * <td>No</td>
    + * <td>No</td>
    + * <td>Yes, Nx (for every value set)</td>
    + * <td>No</td>
    + * <td>Yes, 1
    + * <tr>
    + * <td> {@link #executeStart(ExecuteContext)}</td>
    + * <td>Yes, 1x</td>
    + * <td>Yes, 1x</td>
    + * <td>No</td>
    + * <td>Yes, 1x</td>
    + * <td>Yes, 1x</td>
    + * <td>Yes, 1x</td>
    + * </tr>
    + * <tr>
    + * <td> {@link #executeEnd(ExecuteContext)}</td>
    + * <td>Yes, 1x</td>
    + * <td>Yes, 1x</td>
    + * <td>No</td>
    + * <td>Yes, 1x</td>
    + * <td>Yes, 1x</td>
    + * <td>Yes, 1x</td>
    + * </tr>
    + * <tr>
    + * <td> {@link #fetchStart(ExecuteContext)}</td>
    + * <td>Yes, 1x (Nx for {@link ResultQuery#fetchMany()}</td>
    + * <td>Yes, 1x (Nx for {@link ResultQuery#fetchMany()}</td>
    + * <td>Yes, 1x</td>
    + * <td>No</td>
    + * <td>No</td>
    + * <td>No</td>
    + * </tr>
    + * <tr>
    + * <td> {@link #resultStart(ExecuteContext)}</td>
    + * <td>Yes, 1x (Nx for {@link Cursor#fetch(int)}</td>
    + * <td>Yes, 1x (Nx for {@link Cursor#fetch(int)}</td>
    + * <td>Yes, 1x</td>
    + * <td>No</td>
    + * <td>No</td>
    + * <td>No</td>
    + * </tr>
    + * <tr>
    + * <td> {@link #recordStart(ExecuteContext)}<br/>
    + * </td>
    + * <td>Yes, Nx</td>
    + * <td>Yes, Nx</td>
    + * <td>Yes, Nx</td>
    + * <td>No</td>
    + * <td>No</td>
    + * <td>No</td>
    + * </tr>
    + * <tr>
    + * <td> {@link #recordEnd(ExecuteContext)}</td>
    + * <td>Yes, Nx</td>
    + * <td>Yes, Nx</td>
    + * <td>Yes, Nx</td>
    + * <td>No</td>
    + * <td>No</td>
    + * <td>No</td>
    + * </tr>
    + * <tr>
    + * <td> {@link #resultEnd(ExecuteContext)}</td>
    + * <td>Yes, 1x (Nx for {@link Cursor#fetch(int)}</td>
    + * <td>Yes, 1x (Nx for {@link Cursor#fetch(int)}</td>
    + * <td>Yes, 1x</td>
    + * <td>No</td>
    + * <td>No</td>
    + * <td>No</td>
    + * </tr>
    + * <tr>
    + * <td> {@link #fetchEnd(ExecuteContext)}</td>
    + * <td>Yes, 1x (Nx for {@link ResultQuery#fetchMany()}</td>
    + * <td>Yes, 1x (Nx for {@link ResultQuery#fetchMany()}</td>
    + * <td>Yes, 1x</td>
    + * <td>No</td>
    + * <td>No</td>
    + * <td>No</td>
    + * </tr>
    + * <tr>
    + * <td> {@link #end(ExecuteContext)}</td>
    + * <td>Yes, 1x</td>
    + * <td>Yes, 1x</td>
    + * <td>Yes, 1x</td>
    + * <td>Yes, 1x</td>
    + * <td>Yes, 1x</td>
    + * <td>Yes, 1x</td>
    + * </tr>
    + * </table>
    + * <br/>
    + * <h3>Legend:</h3>
    + * <ol>
    + * <li>Used with {@link ResultQuery} of statement type
    + * {@link StatementType#PREPARED_STATEMENT}</li>
    + * <li>Used with {@link ResultQuery} of statement type
    + * {@link StatementType#STATIC_STATEMENT}</li>
    + * <li>Used with {@link Factory#fetch(ResultSet)} or with
    + * {@link InsertResultStep#fetch()}</li>
    + * <li>Used with {@link Factory#batch(Query)}</li>
    + * <li>Used with {@link Factory#batch(Query[])}</li>
    + * <li>Used with a {@link Routine} standalone call</li>
    + * </ol>
    + * <p>
    + * If nothing is specified, the default is to use {@link LoggerListener} and
    + * {@link StopWatchListener} as the only event listeners.
    + *
    + * @author Lukas Eder
    + */
    +public interface ExecuteListener {
    +
    +    /**
    +     * Called to initialise an <code>ExecuteListener</code>
    +     * <p>
    +     * Available attributes from <code>ExecuteContext</code>:
    +     * <ul>
    +     * <li> {@link ExecuteContext#getConnection()}: The connection used for
    +     * execution</li>
    +     * <li> {@link ExecuteContext#configuration()}: The execution configuration</li>
    +     * <li> {@link ExecuteContext#query()}: The <code>Query</code> object, if a
    +     * jOOQ query is being executed or <code>null</code> otherwise</li>
    +     * <li> {@link ExecuteContext#routine()}: The <code>Routine</code> object, if
    +     * a jOOQ routine is being executed or <code>null</code> otherwise</li>
    +     * </ul>
    +     * Overridable attributes in <code>ExecuteContext</code>:
    +     * <ul>
    +     * <li> {@link ExecuteContext#setConnection(Connection)}: The connection used
    +     * for execution. This may be particularly interesting if a {@link Query}
    +     * was de-serialised and is thus lacking the underlying connection</li>
    +     * </ul>
    +     */
    +    void start(ExecuteContext ctx);
    +
    +    /**
    +     * Called before rendering SQL from a <code>QueryPart</code>
    +     * <p>
    +     * Available attributes from <code>ExecuteContext</code>:
    +     * <ul>
    +     * <li> {@link ExecuteContext#getConnection()}: The connection used for
    +     * execution</li>
    +     * <li> {@link ExecuteContext#configuration()}: The execution configuration</li>
    +     * <li> {@link ExecuteContext#query()}: The <code>Query</code> object, if a
    +     * jOOQ query is being executed or <code>null</code> otherwise</li>
    +     * <li> {@link ExecuteContext#routine()}: The <code>Routine</code> object, if
    +     * a jOOQ routine is being executed or <code>null</code> otherwise</li>
    +     * </ul>
    +     */
    +    void renderStart(ExecuteContext ctx);
    +
    +    /**
    +     * Called after rendering SQL from a <code>QueryPart</code>
    +     * <p>
    +     * Available attributes from <code>ExecuteContext</code>:
    +     * <ul>
    +     * <li> {@link ExecuteContext#getConnection()}: The connection used for
    +     * execution</li>
    +     * <li> {@link ExecuteContext#configuration()}: The execution configuration</li>
    +     * <li> {@link ExecuteContext#query()}: The <code>Query</code> object, if a
    +     * jOOQ query is being executed or <code>null</code> otherwise</li>
    +     * <li> {@link ExecuteContext#routine()}: The <code>Routine</code> object, if
    +     * a jOOQ routine is being executed or <code>null</code> otherwise</li>
    +     * <li> {@link ExecuteContext#sql()}: The rendered <code>SQL</code> statement
    +     * that is about to be executed, or <code>null</code> if the
    +     * <code>SQL</code> statement is unknown..</li>
    +     * </ul>
    +     * <p>
    +     * Overridable attributes in <code>ExecuteContext</code>:
    +     * <ul>
    +     * <li> {@link ExecuteContext#sql(String)}: The rendered <code>SQL</code>
    +     * statement that is about to be executed. You can modify this statement
    +     * freely.</li>
    +     * </ul>
    +     */
    +    void renderEnd(ExecuteContext ctx);
    +
    +    /**
    +     * Called before preparing / creating the SQL statement
    +     * <p>
    +     * Available attributes from <code>ExecuteContext</code>:
    +     * <ul>
    +     * <li> {@link ExecuteContext#getConnection()}: The connection used for
    +     * execution</li>
    +     * <li> {@link ExecuteContext#configuration()}: The execution configuration</li>
    +     * <li> {@link ExecuteContext#query()}: The <code>Query</code> object, if a
    +     * jOOQ query is being executed or <code>null</code> otherwise</li>
    +     * <li> {@link ExecuteContext#routine()}: The <code>Routine</code> object, if
    +     * a jOOQ routine is being executed or <code>null</code> otherwise</li>
    +     * <li> {@link ExecuteContext#sql()}: The rendered <code>SQL</code> statement
    +     * that is about to be executed, or <code>null</code> if the
    +     * <code>SQL</code> statement is unknown..</li>
    +     * </ul>
    +     * <p>
    +     * Overridable attributes in <code>ExecuteContext</code>:
    +     * <ul>
    +     * <li> {@link ExecuteContext#sql(String)}: The rendered <code>SQL</code>
    +     * statement that is about to be executed. You can modify this statement
    +     * freely.</li>
    +     * </ul>
    +     */
    +    void prepareStart(ExecuteContext ctx);
    +
    +    /**
    +     * Called after preparing / creating the SQL statement
    +     * <p>
    +     * Available attributes from <code>ExecuteContext</code>:
    +     * <ul>
    +     * <li> {@link ExecuteContext#getConnection()}: The connection used for
    +     * execution</li>
    +     * <li> {@link ExecuteContext#configuration()}: The execution configuration</li>
    +     * <li> {@link ExecuteContext#query()}: The <code>Query</code> object, if a
    +     * jOOQ query is being executed or <code>null</code> otherwise</li>
    +     * <li> {@link ExecuteContext#routine()}: The <code>Routine</code> object, if
    +     * a jOOQ routine is being executed or <code>null</code> otherwise</li>
    +     * <li> {@link ExecuteContext#sql()}: The rendered <code>SQL</code> statement
    +     * that is about to be executed, or <code>null</code> if the
    +     * <code>SQL</code> statement is unknown..</li>
    +     * <li> {@link ExecuteContext#statement()}: The
    +     * <code>PreparedStatement</code> that is about to be executed, or
    +     * <code>null</code> if no statement is known to jOOQ. This can be any of
    +     * the following: <br/>
    +     * <br/>
    +     * <ul>
    +     * <li>A <code>java.sql.PreparedStatement</code> from your JDBC driver when
    +     * a jOOQ <code>Query</code> is being executed as
    +     * {@link StatementType#PREPARED_STATEMENT}</li>
    +     * <li>A <code>java.sql.Statement</code> from your JDBC driver wrapped in a
    +     * <code>java.sql.PreparedStatement</code> when your jOOQ <code>Query</code>
    +     * is being executed as {@link StatementType#STATIC_STATEMENT}</li>
    +     * <li>A <code>java.sql.CallableStatement</code> when you are executing a
    +     * jOOQ <code>Routine</code></li>
    +     * </ul>
    +     * </li>
    +     * </ul>
    +     * <p>
    +     * Overridable attributes in <code>ExecuteContext</code>:
    +     * <ul>
    +     * <li> {@link ExecuteContext#statement(PreparedStatement)}: The
    +     * <code>Statement</code>, <code>PreparedStatement</code>, or
    +     * <code>CallableStatement</code> that is about to be executed. You can
    +     * modify this statement freely, or wrap {@link ExecuteContext#statement()}
    +     * with your enriched statement wrapper</li>
    +     * </ul>
    +     */
    +    void prepareEnd(ExecuteContext ctx);
    +
    +    /**
    +     * Called before binding variables to the <code>PreparedStatement</code>
    +     * <p>
    +     * Available attributes from <code>ExecuteContext</code>:
    +     * <ul>
    +     * <li> {@link ExecuteContext#getConnection()}: The connection used for
    +     * execution</li>
    +     * <li> {@link ExecuteContext#configuration()}: The execution configuration</li>
    +     * <li> {@link ExecuteContext#query()}: The <code>Query</code> object, if a
    +     * jOOQ query is being executed or <code>null</code> otherwise</li>
    +     * <li> {@link ExecuteContext#routine()}: The <code>Routine</code> object, if
    +     * a jOOQ routine is being executed or <code>null</code> otherwise</li>
    +     * <li> {@link ExecuteContext#sql()}: The rendered <code>SQL</code> statement
    +     * that is about to be executed, or <code>null</code> if the
    +     * <code>SQL</code> statement is unknown..</li>
    +     * <li> {@link ExecuteContext#statement()}: The
    +     * <code>PreparedStatement</code> that is about to be executed, or
    +     * <code>null</code> if no statement is known to jOOQ. This can be any of
    +     * the following: <br/>
    +     * <br/>
    +     * <ul>
    +     * <li>A <code>java.sql.PreparedStatement</code> from your JDBC driver when
    +     * a jOOQ <code>Query</code> is being executed as
    +     * {@link StatementType#PREPARED_STATEMENT}</li>
    +     * <li>A <code>java.sql.CallableStatement</code> when you are executing a
    +     * jOOQ <code>Routine</code></li>
    +     * </ul>
    +     * </li>
    +     * </ul>
    +     * <p>
    +     * Overridable attributes in <code>ExecuteContext</code>:
    +     * <ul>
    +     * <li> {@link ExecuteContext#statement(PreparedStatement)}: The
    +     * <code>PreparedStatement</code>, or <code>CallableStatement</code> that is
    +     * about to be executed. You can modify this statement freely, or wrap
    +     * {@link ExecuteContext#statement()} with your enriched statement wrapper</li>
    +     * </ul>
    +     * <p>
    +     * Note that this method is not called when executing queries of type
    +     * {@link StatementType#STATIC_STATEMENT}
    +     */
    +    void bindStart(ExecuteContext ctx);
    +
    +    /**
    +     * Called after binding variables to the <code>PreparedStatement</code>
    +     * <p>
    +     * Available attributes from <code>ExecuteContext</code>:
    +     * <ul>
    +     * <li> {@link ExecuteContext#getConnection()}: The connection used for
    +     * execution</li>
    +     * <li> {@link ExecuteContext#configuration()}: The execution configuration</li>
    +     * <li> {@link ExecuteContext#query()}: The <code>Query</code> object, if a
    +     * jOOQ query is being executed or <code>null</code> otherwise</li>
    +     * <li> {@link ExecuteContext#routine()}: The <code>Routine</code> object, if
    +     * a jOOQ routine is being executed or <code>null</code> otherwise</li>
    +     * <li> {@link ExecuteContext#sql()}: The rendered <code>SQL</code> statement
    +     * that is about to be executed, or <code>null</code> if the
    +     * <code>SQL</code> statement is unknown..</li>
    +     * <li> {@link ExecuteContext#statement()}: The
    +     * <code>PreparedStatement</code> that is about to be executed, or
    +     * <code>null</code> if no statement is known to jOOQ. This can be any of
    +     * the following: <br/>
    +     * <br/>
    +     * <ul>
    +     * <li>A <code>java.sql.PreparedStatement</code> from your JDBC driver when
    +     * a jOOQ <code>Query</code> is being executed as
    +     * {@link StatementType#PREPARED_STATEMENT}</li>
    +     * <li>A <code>java.sql.CallableStatement</code> when you are executing a
    +     * jOOQ <code>Routine</code></li>
    +     * </ul>
    +     * </li>
    +     * </ul>
    +     * <p>
    +     * Note that this method is not called when executing queries of type
    +     * {@link StatementType#STATIC_STATEMENT}
    +     */
    +    void bindEnd(ExecuteContext ctx);
    +
    +    /**
    +     * Called before executing a statement
    +     * <p>
    +     * Available attributes from <code>ExecuteContext</code>:
    +     * <ul>
    +     * <li> {@link ExecuteContext#getConnection()}: The connection used for
    +     * execution</li>
    +     * <li> {@link ExecuteContext#configuration()}: The execution configuration</li>
    +     * <li> {@link ExecuteContext#query()}: The <code>Query</code> object, if a
    +     * jOOQ query is being executed or <code>null</code> otherwise</li>
    +     * <li> {@link ExecuteContext#routine()}: The <code>Routine</code> object, if
    +     * a jOOQ routine is being executed or <code>null</code> otherwise</li>
    +     * <li> {@link ExecuteContext#sql()}: The rendered <code>SQL</code> statement
    +     * that is about to be executed, or <code>null</code> if the
    +     * <code>SQL</code> statement is unknown..</li>
    +     * <li> {@link ExecuteContext#statement()}: The
    +     * <code>PreparedStatement</code> that is about to be executed, or
    +     * <code>null</code> if no statement is known to jOOQ. This can be any of
    +     * the following: <br/>
    +     * <br/>
    +     * <ul>
    +     * <li>A <code>java.sql.PreparedStatement</code> from your JDBC driver when
    +     * a jOOQ <code>Query</code> is being executed as
    +     * {@link StatementType#PREPARED_STATEMENT}</li>
    +     * <li>A <code>java.sql.Statement</code> from your JDBC driver wrapped in a
    +     * <code>java.sql.PreparedStatement</code> when your jOOQ <code>Query</code>
    +     * is being executed as {@link StatementType#STATIC_STATEMENT}</li>
    +     * <li>A <code>java.sql.CallableStatement</code> when you are executing a
    +     * jOOQ <code>Routine</code></li>
    +     * </ul>
    +     * </li>
    +     * </ul>
    +     */
    +    void executeStart(ExecuteContext ctx);
    +
    +    /**
    +     * Called after executing a statement
    +     * <p>
    +     * Available attributes from <code>ExecuteContext</code>:
    +     * <ul>
    +     * <li> {@link ExecuteContext#getConnection()}: The connection used for
    +     * execution</li>
    +     * <li> {@link ExecuteContext#configuration()}: The execution configuration</li>
    +     * <li> {@link ExecuteContext#query()}: The <code>Query</code> object, if a
    +     * jOOQ query is being executed or <code>null</code> otherwise</li>
    +     * <li> {@link ExecuteContext#routine()}: The <code>Routine</code> object, if
    +     * a jOOQ routine is being executed or <code>null</code> otherwise</li>
    +     * <li> {@link ExecuteContext#sql()}: The rendered <code>SQL</code> statement
    +     * that is about to be executed, or <code>null</code> if the
    +     * <code>SQL</code> statement is unknown..</li>
    +     * <li> {@link ExecuteContext#statement()}: The
    +     * <code>PreparedStatement</code> that is about to be executed, or
    +     * <code>null</code> if no statement is known to jOOQ. This can be any of
    +     * the following: <br/>
    +     * <br/>
    +     * <ul>
    +     * <li>A <code>java.sql.PreparedStatement</code> from your JDBC driver when
    +     * a jOOQ <code>Query</code> is being executed as
    +     * {@link StatementType#PREPARED_STATEMENT}</li>
    +     * <li>A <code>java.sql.Statement</code> from your JDBC driver wrapped in a
    +     * <code>java.sql.PreparedStatement</code> when your jOOQ <code>Query</code>
    +     * is being executed as {@link StatementType#STATIC_STATEMENT}</li>
    +     * <li>A <code>java.sql.CallableStatement</code> when you are executing a
    +     * jOOQ <code>Routine</code></li>
    +     * </ul>
    +     * </li>
    +     * <li> {@link ExecuteContext#resultSet()}: The <code>ResultSet</code> that
    +     * is about to be fetched or <code>null</code>, if the <code>Query</code>
    +     * returns no result set, or if a <code>Routine</code> is being executed.</li>
    +     * </ul>
    +     * <p>
    +     * Overridable attributes in <code>ExecuteContext</code>:
    +     * <ul>
    +     * <li> {@link ExecuteContext#resultSet(ResultSet)}: The
    +     * <code>ResultSet</code> that is about to be fetched. You can modify this
    +     * result set freely, or wrap {@link ExecuteContext#resultSet()} with your
    +     * enriched result set wrapper</li>
    +     * </ul>
    +     */
    +    void executeEnd(ExecuteContext ctx);
    +
    +    /**
    +     * Called before fetching data from a <code>ResultSet</code>.
    +     * <p>
    +     * Available attributes from <code>ExecuteContext</code>:
    +     * <ul>
    +     * <li> {@link ExecuteContext#getConnection()}: The connection used for
    +     * execution</li>
    +     * <li> {@link ExecuteContext#configuration()}: The execution configuration</li>
    +     * <li> {@link ExecuteContext#query()}: The <code>Query</code> object, if a
    +     * jOOQ query is being executed or <code>null</code> otherwise</li>
    +     * <li> {@link ExecuteContext#routine()}: The <code>Routine</code> object, if
    +     * a jOOQ routine is being executed or <code>null</code> otherwise</li>
    +     * <li> {@link ExecuteContext#sql()}: The rendered <code>SQL</code> statement
    +     * that is about to be executed, or <code>null</code> if the
    +     * <code>SQL</code> statement is unknown..</li>
    +     * <li> {@link ExecuteContext#statement()}: The
    +     * <code>PreparedStatement</code> that is about to be executed, or
    +     * <code>null</code> if no statement is known to jOOQ. This can be any of
    +     * the following: <br/>
    +     * <br/>
    +     * <ul>
    +     * <li>A <code>java.sql.PreparedStatement</code> from your JDBC driver when
    +     * a jOOQ <code>Query</code> is being executed as
    +     * {@link StatementType#PREPARED_STATEMENT}</li>
    +     * <li>A <code>java.sql.Statement</code> from your JDBC driver wrapped in a
    +     * <code>java.sql.PreparedStatement</code> when your jOOQ <code>Query</code>
    +     * is being executed as {@link StatementType#STATIC_STATEMENT}</li>
    +     * <li>A <code>java.sql.CallableStatement</code> when you are executing a
    +     * jOOQ <code>Routine</code></li>
    +     * </ul>
    +     * </li>
    +     * <li> {@link ExecuteContext#resultSet()}: The <code>ResultSet</code> that
    +     * is about to be fetched.</li>
    +     * </ul>
    +     * <p>
    +     * Overridable attributes in <code>ExecuteContext</code>:
    +     * <ul>
    +     * <li> {@link ExecuteContext#resultSet(ResultSet)}: The
    +     * <code>ResultSet</code> that is about to be fetched. You can modify this
    +     * result set freely, or wrap {@link ExecuteContext#resultSet()} with your
    +     * enriched result set wrapper</li>
    +     * </ul>
    +     * <p>
    +     * In case of multiple <code>ResultSets</code> with
    +     * {@link ResultQuery#fetchMany()}, this is called several times, once per
    +     * <code>ResultSet</code>
    +     * <p>
    +     * Note that this method is not called when executing queries that do not
    +     * return a result, or when executing routines.
    +     */
    +    void fetchStart(ExecuteContext ctx);
    +
    +    /**
    +     * Called before fetching a set of records from a <code>ResultSet</code>
    +     * <p>
    +     * Available attributes from <code>ExecuteContext</code>:
    +     * <ul>
    +     * <li> {@link ExecuteContext#getConnection()}: The connection used for
    +     * execution</li>
    +     * <li> {@link ExecuteContext#configuration()}: The execution configuration</li>
    +     * <li> {@link ExecuteContext#query()}: The <code>Query</code> object, if a
    +     * jOOQ query is being executed or <code>null</code> otherwise</li>
    +     * <li> {@link ExecuteContext#routine()}: The <code>Routine</code> object, if
    +     * a jOOQ routine is being executed or <code>null</code> otherwise</li>
    +     * <li> {@link ExecuteContext#sql()}: The rendered <code>SQL</code> statement
    +     * that is about to be executed, or <code>null</code> if the
    +     * <code>SQL</code> statement is unknown..</li>
    +     * <li> {@link ExecuteContext#statement()}: The
    +     * <code>PreparedStatement</code> that is about to be executed, or
    +     * <code>null</code> if no statement is known to jOOQ. This can be any of
    +     * the following: <br/>
    +     * <br/>
    +     * <ul>
    +     * <li>A <code>java.sql.PreparedStatement</code> from your JDBC driver when
    +     * a jOOQ <code>Query</code> is being executed as
    +     * {@link StatementType#PREPARED_STATEMENT}</li>
    +     * <li>A <code>java.sql.Statement</code> from your JDBC driver wrapped in a
    +     * <code>java.sql.PreparedStatement</code> when your jOOQ <code>Query</code>
    +     * is being executed as {@link StatementType#STATIC_STATEMENT}</li>
    +     * <li>A <code>java.sql.CallableStatement</code> when you are executing a
    +     * jOOQ <code>Routine</code></li>
    +     * </ul>
    +     * </li>
    +     * <li> {@link ExecuteContext#resultSet()}: The <code>ResultSet</code> that
    +     * is about to be fetched.</li>
    +     * <li> {@link ExecuteContext#result()}: The set of records that are about to
    +     * be fetched.</li>
    +     * </ul>
    +     * <p>
    +     * Note that this method is not called when executing queries that do not
    +     * return a result, or when executing routines. This is also not called when
    +     * fetching single records, with {@link Cursor#fetchOne()} for instance.
    +     */
    +    void resultStart(ExecuteContext ctx);
    +
    +    /**
    +     * Called before fetching a record from a <code>ResultSet</code>
    +     * <p>
    +     * Available attributes from <code>ExecuteContext</code>:
    +     * <ul>
    +     * <li> {@link ExecuteContext#getConnection()}: The connection used for
    +     * execution</li>
    +     * <li> {@link ExecuteContext#configuration()}: The execution configuration</li>
    +     * <li> {@link ExecuteContext#query()}: The <code>Query</code> object, if a
    +     * jOOQ query is being executed or <code>null</code> otherwise</li>
    +     * <li> {@link ExecuteContext#routine()}: The <code>Routine</code> object, if
    +     * a jOOQ routine is being executed or <code>null</code> otherwise</li>
    +     * <li> {@link ExecuteContext#sql()}: The rendered <code>SQL</code> statement
    +     * that is about to be executed, or <code>null</code> if the
    +     * <code>SQL</code> statement is unknown..</li>
    +     * <li> {@link ExecuteContext#statement()}: The
    +     * <code>PreparedStatement</code> that is about to be executed, or
    +     * <code>null</code> if no statement is known to jOOQ. This can be any of
    +     * the following: <br/>
    +     * <br/>
    +     * <ul>
    +     * <li>A <code>java.sql.PreparedStatement</code> from your JDBC driver when
    +     * a jOOQ <code>Query</code> is being executed as
    +     * {@link StatementType#PREPARED_STATEMENT}</li>
    +     * <li>A <code>java.sql.Statement</code> from your JDBC driver wrapped in a
    +     * <code>java.sql.PreparedStatement</code> when your jOOQ <code>Query</code>
    +     * is being executed as {@link StatementType#STATIC_STATEMENT}</li>
    +     * <li>A <code>java.sql.CallableStatement</code> when you are executing a
    +     * jOOQ <code>Routine</code></li>
    +     * </ul>
    +     * </li>
    +     * <li> {@link ExecuteContext#resultSet()}: The <code>ResultSet</code> that
    +     * is about to be fetched.</li>
    +     * <li> {@link ExecuteContext#record()}: The <code>Record</code> that is
    +     * about to be fetched.</li>
    +     * </ul>
    +     * <p>
    +     * Note that this method is not called when executing queries that do not
    +     * return a result, or when executing routines.
    +     */
    +    void recordStart(ExecuteContext ctx);
    +
    +    /**
    +     * Called after fetching a record from a <code>ResultSet</code>
    +     * <p>
    +     * Available attributes from <code>ExecuteContext</code>:
    +     * <ul>
    +     * <li> {@link ExecuteContext#getConnection()}: The connection used for
    +     * execution</li>
    +     * <li> {@link ExecuteContext#configuration()}: The execution configuration</li>
    +     * <li> {@link ExecuteContext#query()}: The <code>Query</code> object, if a
    +     * jOOQ query is being executed or <code>null</code> otherwise</li>
    +     * <li> {@link ExecuteContext#routine()}: The <code>Routine</code> object, if
    +     * a jOOQ routine is being executed or <code>null</code> otherwise</li>
    +     * <li> {@link ExecuteContext#sql()}: The rendered <code>SQL</code> statement
    +     * that is about to be executed, or <code>null</code> if the
    +     * <code>SQL</code> statement is unknown..</li>
    +     * <li> {@link ExecuteContext#statement()}: The
    +     * <code>PreparedStatement</code> that is about to be executed, or
    +     * <code>null</code> if no statement is known to jOOQ. This can be any of
    +     * the following: <br/>
    +     * <br/>
    +     * <ul>
    +     * <li>A <code>java.sql.PreparedStatement</code> from your JDBC driver when
    +     * a jOOQ <code>Query</code> is being executed as
    +     * {@link StatementType#PREPARED_STATEMENT}</li>
    +     * <li>A <code>java.sql.Statement</code> from your JDBC driver wrapped in a
    +     * <code>java.sql.PreparedStatement</code> when your jOOQ <code>Query</code>
    +     * is being executed as {@link StatementType#STATIC_STATEMENT}</li>
    +     * <li>A <code>java.sql.CallableStatement</code> when you are executing a
    +     * jOOQ <code>Routine</code></li>
    +     * </ul>
    +     * </li>
    +     * <li> {@link ExecuteContext#resultSet()}: The <code>ResultSet</code> that
    +     * is about to be fetched.</li>
    +     * <li> {@link ExecuteContext#record()}: The last <code>Record</code> that
    +     * was fetched.</li>
    +     * </ul>
    +     * <p>
    +     * Note that this method is not called when executing queries that do not
    +     * return a result, or when executing routines.
    +     */
    +    void recordEnd(ExecuteContext ctx);
    +
    +    /**
    +     * Called after fetching a set of records from a <code>ResultSet</code>
    +     * <p>
    +     * Available attributes from <code>ExecuteContext</code>:
    +     * <ul>
    +     * <li> {@link ExecuteContext#getConnection()}: The connection used for
    +     * execution</li>
    +     * <li> {@link ExecuteContext#configuration()}: The execution configuration</li>
    +     * <li> {@link ExecuteContext#query()}: The <code>Query</code> object, if a
    +     * jOOQ query is being executed or <code>null</code> otherwise</li>
    +     * <li> {@link ExecuteContext#routine()}: The <code>Routine</code> object, if
    +     * a jOOQ routine is being executed or <code>null</code> otherwise</li>
    +     * <li> {@link ExecuteContext#sql()}: The rendered <code>SQL</code> statement
    +     * that is about to be executed, or <code>null</code> if the
    +     * <code>SQL</code> statement is unknown..</li>
    +     * <li> {@link ExecuteContext#statement()}: The
    +     * <code>PreparedStatement</code> that is about to be executed, or
    +     * <code>null</code> if no statement is known to jOOQ. This can be any of
    +     * the following: <br/>
    +     * <br/>
    +     * <ul>
    +     * <li>A <code>java.sql.PreparedStatement</code> from your JDBC driver when
    +     * a jOOQ <code>Query</code> is being executed as
    +     * {@link StatementType#PREPARED_STATEMENT}</li>
    +     * <li>A <code>java.sql.Statement</code> from your JDBC driver wrapped in a
    +     * <code>java.sql.PreparedStatement</code> when your jOOQ <code>Query</code>
    +     * is being executed as {@link StatementType#STATIC_STATEMENT}</li>
    +     * <li>A <code>java.sql.CallableStatement</code> when you are executing a
    +     * jOOQ <code>Routine</code></li>
    +     * </ul>
    +     * </li>
    +     * <li> {@link ExecuteContext#resultSet()}: The <code>ResultSet</code> that
    +     * is about to be fetched.</li>
    +     * <li> {@link ExecuteContext#record()}: The last <code>Record</code> that
    +     * was fetched.</li>
    +     * <li> {@link ExecuteContext#result()}: The set of records that were
    +     * fetched.</li>
    +     * </ul>
    +     * <p>
    +     * Note that this method is not called when executing queries that do not
    +     * return a result, or when executing routines. This is also not called when
    +     * fetching single records, with {@link Cursor#fetchOne()} for instance.
    +     */
    +    void resultEnd(ExecuteContext ctx);
    +
    +    /**
    +     * Called after fetching data from a <code>ResultSet</code>.
    +     * <p>
    +     * Available attributes from <code>ExecuteContext</code>:
    +     * <ul>
    +     * <li> {@link ExecuteContext#getConnection()}: The connection used for
    +     * execution</li>
    +     * <li> {@link ExecuteContext#configuration()}: The execution configuration</li>
    +     * <li> {@link ExecuteContext#query()}: The <code>Query</code> object, if a
    +     * jOOQ query is being executed or <code>null</code> otherwise</li>
    +     * <li> {@link ExecuteContext#routine()}: The <code>Routine</code> object, if
    +     * a jOOQ routine is being executed or <code>null</code> otherwise</li>
    +     * <li> {@link ExecuteContext#sql()}: The rendered <code>SQL</code> statement
    +     * that is about to be executed, or <code>null</code> if the
    +     * <code>SQL</code> statement is unknown..</li>
    +     * <li> {@link ExecuteContext#statement()}: The
    +     * <code>PreparedStatement</code> that is about to be executed, or
    +     * <code>null</code> if no statement is known to jOOQ. This can be any of
    +     * the following: <br/>
    +     * <br/>
    +     * <ul>
    +     * <li>A <code>java.sql.PreparedStatement</code> from your JDBC driver when
    +     * a jOOQ <code>Query</code> is being executed as
    +     * {@link StatementType#PREPARED_STATEMENT}</li>
    +     * <li>A <code>java.sql.Statement</code> from your JDBC driver wrapped in a
    +     * <code>java.sql.PreparedStatement</code> when your jOOQ <code>Query</code>
    +     * is being executed as {@link StatementType#STATIC_STATEMENT}</li>
    +     * <li>A <code>java.sql.CallableStatement</code> when you are executing a
    +     * jOOQ <code>Routine</code></li>
    +     * </ul>
    +     * Note that the <code>Statement</code> is already closed!</li>
    +     * <li> {@link ExecuteContext#resultSet()}: The <code>ResultSet</code> that
    +     * was fetched. Note that the <code>ResultSet</code> is already closed!</li>
    +     * <li> {@link ExecuteContext#record()}: The last <code>Record</code> that
    +     * was fetched.</li>
    +     * <li> {@link ExecuteContext#result()}: The last set of records that were
    +     * fetched.</li>
    +     * </ul>
    +     * <p>
    +     * In case of multiple <code>ResultSets</code> with
    +     * {@link ResultQuery#fetchMany()}, this is called several times, once per
    +     * <code>ResultSet</code>
    +     * <p>
    +     * Note that this method is not called when executing queries that do not
    +     * return a result, or when executing routines.
    +     */
    +    void fetchEnd(ExecuteContext ctx);
    +
    +    /**
    +     * Called at the end of the execution lifecycle..
    +     * <p>
    +     * Available attributes from <code>ExecuteContext</code>:
    +     * <ul>
    +     * <li> {@link ExecuteContext#getConnection()}: The connection used for
    +     * execution</li>
    +     * <li> {@link ExecuteContext#configuration()}: The execution configuration</li>
    +     * <li> {@link ExecuteContext#query()}: The <code>Query</code> object, if a
    +     * jOOQ query is being executed or <code>null</code> otherwise</li>
    +     * <li> {@link ExecuteContext#routine()}: The <code>Routine</code> object, if
    +     * a jOOQ routine is being executed or <code>null</code> otherwise</li>
    +     * <li> {@link ExecuteContext#sql()}: The rendered <code>SQL</code> statement
    +     * that is about to be executed, or <code>null</code> if the
    +     * <code>SQL</code> statement is unknown..</li>
    +     * <li> {@link ExecuteContext#statement()}: The
    +     * <code>PreparedStatement</code> that is about to be executed, or
    +     * <code>null</code> if no statement is known to jOOQ. This can be any of
    +     * the following: <br/>
    +     * <br/>
    +     * <ul>
    +     * <li>A <code>java.sql.PreparedStatement</code> from your JDBC driver when
    +     * a jOOQ <code>Query</code> is being executed as
    +     * {@link StatementType#PREPARED_STATEMENT}</li>
    +     * <li>A <code>java.sql.Statement</code> from your JDBC driver wrapped in a
    +     * <code>java.sql.PreparedStatement</code> when your jOOQ <code>Query</code>
    +     * is being executed as {@link StatementType#STATIC_STATEMENT}</li>
    +     * <li>A <code>java.sql.CallableStatement</code> when you are executing a
    +     * jOOQ <code>Routine</code></li>
    +     * </ul>
    +     * Note that the <code>Statement</code> is already closed!</li>
    +     * <li> {@link ExecuteContext#resultSet()}: The <code>ResultSet</code> that
    +     * was fetched or <code>null</code>, if no result set was fetched. Note that
    +     * if any <code>ResultSet</code> is already closed!</li>
    +     * <li> {@link ExecuteContext#record()}: The last <code>Record</code> that
    +     * was fetched or null if no records were fetched.</li>
    +     * <li> {@link ExecuteContext#result()}: The last set of records that were
    +     * fetched or null if no records were fetched.</li>
    +     * </ul>
    +     */
    +    void end(ExecuteContext ctx);
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/ExecuteType.java b/jOOQ/src/main/java/org/jooq/ExecuteType.java
    new file mode 100644
    index 00000000000..bad1c3e330c
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/ExecuteType.java
    @@ -0,0 +1,82 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq;
    +
    +/**
    + * The type of database interaction that is being executed with this context.
    + */
    +public enum ExecuteType {
    +
    +    /**
    +     * A <code>SELECT</code> query is being executed
    +     * <p>
    +     * This may also apply to plain SQL <code>WITH .. SELECT</code> queries
    +     * (selections with common table expressions), <code>FETCH</code> queries
    +     * and other types of vendor-specific queries.
    +     */
    +    READ,
    +
    +    /**
    +     * An <code>INSERT</code>, <code>UPDATE</code>, <code>DELETE</code>,
    +     * <code>MERGE</code> query is being executed
    +     * <p>
    +     * This may also apply to plain SQL <code>REPLACE</code>,
    +     * <code>UPSERT</code> and other vendor-specific queries.
    +     */
    +    WRITE,
    +
    +    /**
    +     * A DDL statement is being executed
    +     * <p>
    +     * Currently, this only applies to <code>TRUNCATE</code> statements
    +     */
    +    DDL,
    +
    +    /**
    +     * A batch statement is being executed (not yet supported)
    +     */
    +    BATCH,
    +
    +    /**
    +     * A routine (stored procedure or function) is being executed
    +     */
    +    ROUTINE,
    +
    +    /**
    +     * An other (unknown) type of database interaction is being executed
    +     */
    +    OTHER,
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/FactoryOperations.java b/jOOQ/src/main/java/org/jooq/FactoryOperations.java
    new file mode 100644
    index 00000000000..fe5fa1bbfe9
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/FactoryOperations.java
    @@ -0,0 +1,1285 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq;
    +
    +import static org.jooq.SQLDialect.ASE;
    +import static org.jooq.SQLDialect.CUBRID;
    +import static org.jooq.SQLDialect.DB2;
    +import static org.jooq.SQLDialect.DERBY;
    +import static org.jooq.SQLDialect.H2;
    +import static org.jooq.SQLDialect.HSQLDB;
    +import static org.jooq.SQLDialect.INGRES;
    +import static org.jooq.SQLDialect.MYSQL;
    +import static org.jooq.SQLDialect.ORACLE;
    +import static org.jooq.SQLDialect.POSTGRES;
    +import static org.jooq.SQLDialect.SQLITE;
    +import static org.jooq.SQLDialect.SQLSERVER;
    +import static org.jooq.SQLDialect.SYBASE;
    +
    +import java.math.BigInteger;
    +import java.sql.Connection;
    +import java.sql.PreparedStatement;
    +import java.sql.ResultSet;
    +import java.sql.Statement;
    +import java.util.Collection;
    +import java.util.List;
    +
    +import org.jooq.exception.DataAccessException;
    +import org.jooq.exception.MappingException;
    +import org.jooq.impl.Factory;
    +
    +/**
    + * The public API for the jOOQ {@link Factory}
    + *
    + * @author Sergey Epik
    + * @author Lukas Eder
    + * @see Factory
    + */
    +public interface FactoryOperations extends Configuration {
    +
    +    // -------------------------------------------------------------------------
    +    // RenderContext and BindContext accessors
    +    // -------------------------------------------------------------------------
    +
    +    /**
    +     * Render a QueryPart in the context of this factory
    +     * <p>
    +     * This is the same as calling <code>renderContext().render(part)</code>
    +     *
    +     * @param part The {@link QueryPart} to be rendered
    +     * @return The rendered SQL
    +     */
    +    String render(QueryPart part);
    +
    +    /**
    +     * Render a QueryPart in the context of this factory, rendering bind
    +     * variables as named parameters.
    +     * <p>
    +     * This is the same as calling
    +     * <code>renderContext().namedParams(true).render(part)</code>
    +     *
    +     * @param part The {@link QueryPart} to be rendered
    +     * @return The rendered SQL
    +     */
    +    String renderNamedParams(QueryPart part);
    +
    +    /**
    +     * Render a QueryPart in the context of this factory, inlining all bind
    +     * variables.
    +     * <p>
    +     * This is the same as calling
    +     * <code>renderContext().inline(true).render(part)</code>
    +     *
    +     * @param part The {@link QueryPart} to be rendered
    +     * @return The rendered SQL
    +     */
    +    String renderInlined(QueryPart part);
    +
    +    // -------------------------------------------------------------------------
    +    // Attachable and Serializable API
    +    // -------------------------------------------------------------------------
    +
    +    /**
    +     * Attach this <code>Factory</code> to some attachables
    +     */
    +    void attach(Attachable... attachables);
    +
    +    /**
    +     * Attach this <code>Factory</code> to some attachables
    +     */
    +    void attach(Collection<Attachable> attachables);
    +
    +    // -------------------------------------------------------------------------
    +    // Access to the loader API
    +    // -------------------------------------------------------------------------
    +
    +    /**
    +     * Create a new <code>Loader</code> object to load data from a CSV or XML
    +     * source
    +     */
    +    @Support
    +    <R extends TableRecord<R>> LoaderOptionsStep<R> loadInto(Table<R> table);
    +
    +    // -------------------------------------------------------------------------
    +    // Plain SQL object factory
    +    // -------------------------------------------------------------------------
    +
    +    /**
    +     * Create a new query holding plain SQL. There must not be any binding
    +     * variables contained in the SQL
    +     * <p>
    +     * Example:
    +     * <p>
    +     * <code><pre>
    +     * String sql = "SET SCHEMA 'abc'";</pre></code>
    +     * <p>
    +     * <b>NOTE</b>: When inserting plain SQL into jOOQ objects, you must
    +     * guarantee syntax integrity. You may also create the possibility of
    +     * malicious SQL injection. Be sure to properly use bind variables and/or
    +     * escape literals when concatenated into SQL clauses!
    +     *
    +     * @param sql The SQL
    +     * @return A query wrapping the plain SQL
    +     */
    +    @Support
    +    Query query(String sql);
    +
    +    /**
    +     * Create a new query holding plain SQL. There must be as many binding
    +     * variables contained in the SQL, as passed in the bindings parameter
    +     * <p>
    +     * Example:
    +     * <p>
    +     * <code><pre>
    +     * String sql = "SET SCHEMA 'abc'";</pre></code>
    +     * <p>
    +     * <b>NOTE</b>: When inserting plain SQL into jOOQ objects, you must
    +     * guarantee syntax integrity. You may also create the possibility of
    +     * malicious SQL injection. Be sure to properly use bind variables and/or
    +     * escape literals when concatenated into SQL clauses!
    +     *
    +     * @param sql The SQL
    +     * @param bindings The bindings
    +     * @return A query wrapping the plain SQL
    +     */
    +    @Support
    +    Query query(String sql, Object... bindings);
    +
    +    // -------------------------------------------------------------------------
    +    // JDBC convenience methods
    +    // -------------------------------------------------------------------------
    +
    +    /**
    +     * Fetch all data from a JDBC {@link ResultSet} and transform it to a jOOQ
    +     * {@link Result}. After fetching all data, the JDBC ResultSet will be
    +     * closed.
    +     *
    +     * @param rs The JDBC ResultSet to fetch data from
    +     * @return The resulting jOOQ Result
    +     * @throws DataAccessException if something went wrong executing the query
    +     */
    +    @Support
    +    Result<Record> fetch(ResultSet rs) throws DataAccessException;
    +
    +    // -------------------------------------------------------------------------
    +    // Global Query factory
    +    // -------------------------------------------------------------------------
    +
    +    /**
    +     * Create a new DSL select statement
    +     * <p>
    +     * Example: <code><pre>
    +     * SELECT * FROM [table] WHERE [conditions] ORDER BY [ordering] LIMIT [limit clause]
    +     * </pre></code>
    +     */
    +    @Support
    +    <R extends Record> SimpleSelectWhereStep<R> selectFrom(Table<R> table);
    +
    +    /**
    +     * Create a new DSL select statement.
    +     * <p>
    +     * Example: <code><pre>
    +     * Factory create = new Factory();
    +     *
    +     * create.select(field1, field2)
    +     *       .from(table1)
    +     *       .join(table2).on(field1.equal(field2))
    +     *       .where(field1.greaterThan(100))
    +     *       .orderBy(field2)
    +     *       .execute();
    +     * </pre></code>
    +     */
    +    @Support
    +    SelectSelectStep select(Field<?>... fields);
    +
    +    /**
    +     * Create a new DSL select statement for constant <code>0</code> literal
    +     * <p>
    +     * Example: <code><pre>
    +     * Factory create = new Factory();
    +     *
    +     * create.selectZero()
    +     *       .from(table1)
    +     *       .join(table2).on(field1.equal(field2))
    +     *       .where(field1.greaterThan(100))
    +     *       .orderBy(field2)
    +     *       .execute();
    +     * </pre></code>
    +     *
    +     * @see Factory#zero()
    +     */
    +    @Support
    +    SelectSelectStep selectZero();
    +
    +    /**
    +     * Create a new DSL select statement for constant <code>1</code> literal
    +     * <p>
    +     * Example: <code><pre>
    +     * Factory create = new Factory();
    +     *
    +     * create.selectOne()
    +     *       .from(table1)
    +     *       .join(table2).on(field1.equal(field2))
    +     *       .where(field1.greaterThan(100))
    +     *       .orderBy(field2)
    +     *       .execute();
    +     * </pre></code>
    +     *
    +     * @see Factory#one()
    +     */
    +    @Support
    +    SelectSelectStep selectOne();
    +
    +    /**
    +     * Create a new DSL select statement for <code>COUNT(*)</code>
    +     * <p>
    +     * Example: <code><pre>
    +     * Factory create = new Factory();
    +     *
    +     * create.selectCount()
    +     *       .from(table1)
    +     *       .join(table2).on(field1.equal(field2))
    +     *       .where(field1.greaterThan(100))
    +     *       .orderBy(field2)
    +     *       .execute();
    +     * </pre></code>
    +     */
    +    @Support
    +    SelectSelectStep selectCount();
    +
    +    /**
    +     * Create a new DSL select statement.
    +     * <p>
    +     * Example: <code><pre>
    +     * Factory create = new Factory();
    +     *
    +     * create.selectDistinct(field1, field2)
    +     *       .from(table1)
    +     *       .join(table2).on(field1.equal(field2))
    +     *       .where(field1.greaterThan(100))
    +     *       .orderBy(field2);
    +     * </pre></code>
    +     */
    +    @Support
    +    SelectSelectStep selectDistinct(Field<?>... fields);
    +
    +    /**
    +     * Create a new DSL select statement.
    +     * <p>
    +     * Example: <code><pre>
    +     * Factory create = new Factory();
    +     *
    +     * create.select(fields)
    +     *       .from(table1)
    +     *       .join(table2).on(field1.equal(field2))
    +     *       .where(field1.greaterThan(100))
    +     *       .orderBy(field2);
    +     * </pre></code>
    +     */
    +    @Support
    +    SelectSelectStep select(Collection<? extends Field<?>> fields);
    +
    +    /**
    +     * Create a new DSL select statement.
    +     * <p>
    +     * Example: <code><pre>
    +     * Factory create = new Factory();
    +     *
    +     * create.selectDistinct(fields)
    +     *       .from(table1)
    +     *       .join(table2).on(field1.equal(field2))
    +     *       .where(field1.greaterThan(100))
    +     *       .orderBy(field2);
    +     * </pre></code>
    +     */
    +    @Support
    +    SelectSelectStep selectDistinct(Collection<? extends Field<?>> fields);
    +
    +    /**
    +     * Create a new {@link SelectQuery}
    +     */
    +    @Support
    +    SelectQuery selectQuery();
    +
    +    /**
    +     * Create a new {@link SelectQuery}
    +     *
    +     * @param table The table to select data from
    +     * @return The new {@link SelectQuery}
    +     */
    +    @Support
    +    <R extends Record> SimpleSelectQuery<R> selectQuery(TableLike<R> table);
    +
    +    /**
    +     * Create a new {@link InsertQuery}
    +     *
    +     * @param into The table to insert data into
    +     * @return The new {@link InsertQuery}
    +     */
    +    @Support
    +    <R extends Record> InsertQuery<R> insertQuery(Table<R> into);
    +
    +    /**
    +     * Create a new DSL insert statement. This type of insert may feel more
    +     * convenient to some users, as it uses the <code>UPDATE</code> statement's
    +     * <code>SET a = b</code> syntax.
    +     * <p>
    +     * Example: <code><pre>
    +     * Factory create = new Factory();
    +     *
    +     * create.insertInto(table)
    +     *       .set(field1, value1)
    +     *       .set(field2, value2)
    +     *       .newRecord()
    +     *       .set(field1, value3)
    +     *       .set(field2, value4)
    +     *       .onDuplicateKeyUpdate()
    +     *       .set(field1, value1)
    +     *       .set(field2, value2)
    +     *       .execute();
    +     * </pre></code>
    +     */
    +    @Support
    +    <R extends Record> InsertSetStep<R> insertInto(Table<R> into);
    +
    +    /**
    +     * Create a new DSL insert statement.
    +     * <p>
    +     * Example: <code><pre>
    +     * Factory create = new Factory();
    +     *
    +     * create.insertInto(table, field1, field2)
    +     *       .values(value1, value2)
    +     *       .values(value3, value4)
    +     *       .onDuplicateKeyUpdate()
    +     *       .set(field1, value1)
    +     *       .set(field2, value2)
    +     *       .execute();
    +     * </pre></code>
    +     */
    +    @Support
    +    <R extends Record> InsertValuesStep<R> insertInto(Table<R> into, Field<?>... fields);
    +
    +    /**
    +     * Create a new DSL insert statement.
    +     * <p>
    +     * Example: <code><pre>
    +     * Factory create = new Factory();
    +     *
    +     * create.insertInto(table, field1, field2)
    +     *       .values(value1, value2)
    +     *       .values(value3, value4)
    +     *       .onDuplicateKeyUpdate()
    +     *       .set(field1, value1)
    +     *       .set(field2, value2)
    +     *       .execute();
    +     * </pre></code>
    +     */
    +    @Support
    +    <R extends Record> InsertValuesStep<R> insertInto(Table<R> into, Collection<? extends Field<?>> fields);
    +
    +    /**
    +     * Create a new DSL insert statement.
    +     * <p>
    +     * Example: <code><pre>
    +     * Factory create = new Factory();
    +     *
    +     * create.insertInto(table, create.select(1))
    +     *       .execute();
    +     * </pre></code>
    +     *
    +     * @deprecated - 2.0.3 - Use any of these methods instead:
    +     *             <ul>
    +     *             <li>{@link #insertInto(Table)} and
    +     *             {@link InsertSetStep#select(Select)}</li> <li>
    +     *             {@link #insertInto(Table, Field...)} and
    +     *             {@link InsertValuesStep#select(Select)}</li> <li>
    +     *             {@link #insertInto(Table, Collection)} and
    +     *             {@link InsertValuesStep#select(Select)}</li>
    +     *             </ul>
    +     */
    +    @Deprecated
    +    @Support
    +    <R extends Record> Insert<R> insertInto(Table<R> into, Select<?> select);
    +
    +    /**
    +     * Create a new {@link UpdateQuery}
    +     *
    +     * @param table The table to update data into
    +     * @return The new {@link UpdateQuery}
    +     */
    +    @Support
    +    <R extends Record> UpdateQuery<R> updateQuery(Table<R> table);
    +
    +    /**
    +     * Create a new DSL update statement.
    +     * <p>
    +     * Example: <code><pre>
    +     * Factory create = new Factory();
    +     *
    +     * create.update(table)
    +     *       .set(field1, value1)
    +     *       .set(field2, value2)
    +     *       .where(field1.greaterThan(100))
    +     *       .execute();
    +     * </pre></code>
    +     */
    +    @Support
    +    <R extends Record> UpdateSetStep<R> update(Table<R> table);
    +
    +    /**
    +     * Create a new DSL merge statement.
    +     * <p>
    +     * This statement is available from DSL syntax only. It is known to be
    +     * supported in some way by any of these dialects:
    +     * <table border="1">
    +     * <tr>
    +     * <th>dialect</th>
    +     * <th>support type</th>
    +     * <th>documentation</th>
    +     * </tr>
    +     * <tr>
    +     * <td>DB2</td>
    +     * <td>SQL:2008 standard and major enhancements</td>
    +     * <td><a href=
    +     * "http://publib.boulder.ibm.com/infocenter/db2luw/v9/index.jsp?topic=/com.ibm.db2.udb.admin.doc/doc/r0010873.htm"
    +     * >http://publib.boulder.ibm.com/infocenter/db2luw/v9/index.jsp?topic=/com.
    +     * ibm.db2.udb.admin.doc/doc/r0010873.htm</a></td>
    +     * </tr>
    +     * <tr>
    +     * <td>HSQLDB</td>
    +     * <td>SQL:2008 standard</td>
    +     * <td><a
    +     * href="http://hsqldb.org/doc/2.0/guide/dataaccess-chapt.html#N129BA"
    +     * >http://hsqldb.org/doc/2.0/guide/dataaccess-chapt.html#N129BA</a></td>
    +     * </tr>
    +     * <tr>
    +     * <td>Oracle</td>
    +     * <td>SQL:2008 standard and minor enhancements</td>
    +     * <td><a href=
    +     * "http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/statements_9016.htm"
    +     * >http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/
    +     * statements_9016.htm</a></td>
    +     * </tr>
    +     * <tr>
    +     * <td>SQL Server</td>
    +     * <td>Similar to SQL:2008 standard with some major enhancements</td>
    +     * <td><a href= "http://msdn.microsoft.com/de-de/library/bb510625.aspx"
    +     * >http://msdn.microsoft.com/de-de/library/bb510625.aspx</a></td>
    +     * </tr>
    +     * <tr>
    +     * <td>Sybase</td>
    +     * <td>Similar to SQL:2008 standard with some major enhancements</td>
    +     * <td><a href=
    +     * "http://dcx.sybase.com/1100/en/dbreference_en11/merge-statement.html"
    +     * >http://dcx.sybase.com/1100/en/dbreference_en11/merge-statement.html</a></td>
    +     * </tr>
    +     * </table>
    +     * <p>
    +     * Example: <code><pre>
    +     * Factory create = new Factory();
    +     *
    +     * create.mergeInto(table)
    +     *       .using(select)
    +     *       .on(condition)
    +     *       .whenMatchedThenUpdate()
    +     *       .set(field1, value1)
    +     *       .set(field2, value2)
    +     *       .whenNotMatchedThenInsert(field1, field2)
    +     *       .values(value1, value2)
    +     *       .execute();
    +     * </pre></code>
    +     */
    +    @Support({ DB2, HSQLDB, ORACLE, SQLSERVER, SYBASE })
    +    <R extends Record> MergeUsingStep<R> mergeInto(Table<R> table);
    +
    +    /**
    +     * Create a new {@link DeleteQuery}
    +     *
    +     * @param table The table to delete data from
    +     * @return The new {@link DeleteQuery}
    +     */
    +    @Support
    +    <R extends Record> DeleteQuery<R> deleteQuery(Table<R> table);
    +
    +    /**
    +     * Create a new DSL delete statement.
    +     * <p>
    +     * Example: <code><pre>
    +     * Factory create = new Factory();
    +     *
    +     * create.delete(table)
    +     *       .where(field1.greaterThan(100))
    +     *       .execute();
    +     * </pre></code>
    +     */
    +    @Support
    +    <R extends Record> DeleteWhereStep<R> delete(Table<R> table);
    +
    +    /**
    +     * Execute a set of queries in batch mode (without bind values).
    +     * <p>
    +     * This essentially runs the following logic: <code><pre>
    +     * Statement s = connection.createStatement();
    +     *
    +     * for (Query query : queries) {
    +     *     s.addBatch(query.getSQL(true));
    +     * }
    +     *
    +     * s.execute();
    +     * </pre></code>
    +     *
    +     * @see Statement#executeBatch()
    +     */
    +    @Support
    +    Batch batch(Query... queries);
    +
    +    /**
    +     * Execute a set of queries in batch mode (without bind values).
    +     * <p>
    +     * This essentially runs the following logic: <code><pre>
    +     * Statement s = connection.createStatement();
    +     *
    +     * for (Query query : queries) {
    +     *     s.addBatch(query.getSQL(true));
    +     * }
    +     *
    +     * s.execute();
    +     * </pre></code>
    +     *
    +     * @see Statement#executeBatch()
    +     */
    +    @Support
    +    Batch batch(Collection<? extends Query> queries);
    +
    +    /**
    +     * Execute a set of queries in batch mode (with bind values).
    +     * <p>
    +     * When running <code><pre>
    +     * create.batch(query)
    +     *       .bind(valueA1, valueA2)
    +     *       .bind(valueB1, valueB2)
    +     *       .execute();
    +     * </pre></code>
    +     * <p>
    +     * This essentially runs the following logic: <code><pre>
    +     * Statement s = connection.prepareStatement(query.getSQL(false));
    +     *
    +     * for (Object[] bindValues : allBindValues) {
    +     *     for (Object bindValue : bindValues) {
    +     *         s.setXXX(bindValue);
    +     *     }
    +     *
    +     *     s.addBatch();
    +     * }
    +     *
    +     * s.execute();
    +     * </pre></code>
    +     *
    +     * @see Statement#executeBatch()
    +     */
    +    @Support
    +    BatchBindStep batch(Query query);
    +
    +    // -------------------------------------------------------------------------
    +    // DDL Statements
    +    // -------------------------------------------------------------------------
    +
    +    /**
    +     * Create a new DSL truncate statement.
    +     * <p>
    +     * Example: <code><pre>
    +     * Factory create = new Factory();
    +     *
    +     * create.truncate(table)
    +     *       .execute();
    +     * </pre></code>
    +     * <p>
    +     * Most dialects implement the <code>TRUNCATE</code> statement. If it is not
    +     * supported, it is simulated using an equivalent <code>DELETE</code>
    +     * statement. This is particularly true for these dialects:
    +     * <ul>
    +     * <li> {@link SQLDialect#INGRES}</li>
    +     * <li> {@link SQLDialect#SQLITE}</li>
    +     * </ul>
    +     * <p>
    +     * Note, this statement is only supported in DSL mode. Immediate execution
    +     * is omitted for future extensibility of this command.
    +     */
    +    @Support
    +    <R extends TableRecord<R>> Truncate<R> truncate(Table<R> table);
    +
    +    // -------------------------------------------------------------------------
    +    // Other queries for identities and sequences
    +    // -------------------------------------------------------------------------
    +
    +    /**
    +     * Retrieve the last inserted ID.
    +     * <p>
    +     * Note, there are some restrictions to the following dialects:
    +     * <ul>
    +     * <li> {@link SQLDialect#DB2} doesn't support this</li>
    +     * <li> {@link SQLDialect#ORACLE} doesn't support this</li>
    +     * <li> {@link SQLDialect#POSTGRES} doesn't support this</li>
    +     * <li> {@link SQLDialect#SQLITE} supports this, but its support is poorly
    +     * documented.</li>
    +     * </ul>
    +     *
    +     * @return The last inserted ID. This may be <code>null</code> in some
    +     *         dialects, if no such number is available.
    +     * @throws DataAccessException if something went wrong executing the query
    +     */
    +    @Support({ ASE, CUBRID, DERBY, H2, HSQLDB, INGRES, MYSQL, SQLITE, SQLSERVER, SYBASE })
    +    BigInteger lastID() throws DataAccessException;
    +
    +    /**
    +     * Convenience method to fetch the NEXTVAL for a sequence directly from this
    +     * {@link Factory}'s underlying JDBC {@link Connection}
    +     *
    +     * @throws DataAccessException if something went wrong executing the query
    +     */
    +    @Support({ CUBRID, DB2, DERBY, H2, HSQLDB, INGRES, ORACLE, POSTGRES, SYBASE })
    +    <T extends Number> T nextval(Sequence<T> sequence) throws DataAccessException;
    +
    +    /**
    +     * Convenience method to fetch the CURRVAL for a sequence directly from this
    +     * {@link Factory}'s underlying JDBC {@link Connection}
    +     *
    +     * @throws DataAccessException if something went wrong executing the query
    +     */
    +    @Support({ CUBRID, DB2, H2, INGRES, ORACLE, POSTGRES, SYBASE })
    +    <T extends Number> T currval(Sequence<T> sequence) throws DataAccessException;
    +
    +    /**
    +     * Use a schema as the default schema of the underlying connection.
    +     * <p>
    +     * This has two effects.
    +     * <ol>
    +     * <li>The <code>USE [schema]</code> statement is executed on those RDBMS
    +     * that support this</li>
    +     * <li>The supplied {@link Schema} is used as the default schema resulting
    +     * in omitting that schema in rendered SQL.</li>
    +     * </ol>
    +     * <p>
    +     * The <code>USE [schema]</code> statement translates to the various
    +     * dialects as follows:
    +     * <table>
    +     * <tr>
    +     * <th>Dialect</th>
    +     * <th>Command</th>
    +     * </tr>
    +     * <tr>
    +     * <td>DB2</td>
    +     * <td><code>SET SCHEMA [schema]</code></td>
    +     * </tr>
    +     * <tr>
    +     * <td>Derby:</td>
    +     * <td><code>SET SCHEMA [schema]</code></td>
    +     * </tr>
    +     * <tr>
    +     * <td>H2:</td>
    +     * <td><code>SET SCHEMA [schema]</code></td>
    +     * </tr>
    +     * <tr>
    +     * <td>HSQLDB:</td>
    +     * <td><code>SET SCHEMA [schema]</code></td>
    +     * </tr>
    +     * <tr>
    +     * <td>MySQL:</td>
    +     * <td><code>USE [schema]</code></td>
    +     * </tr>
    +     * <tr>
    +     * <td>Oracle:</td>
    +     * <td><code>ALTER SESSION SET CURRENT_SCHEMA = [schema]</code></td>
    +     * </tr>
    +     * <tr>
    +     * <td>Postgres:</td>
    +     * <td><code>SET SEARCH_PATH = [schema]</code></td>
    +     * </tr>
    +     * <tr>
    +     * <td>Sybase:</td>
    +     * <td><code>USE [schema]</code></td>
    +     * </tr>
    +     * </table>
    +     *
    +     * @throws DataAccessException if something went wrong executing the query
    +     */
    +    @Support({ DB2, DERBY, H2, HSQLDB, MYSQL, SYBASE, ORACLE, POSTGRES, SYBASE })
    +    int use(Schema schema) throws DataAccessException;
    +
    +    /**
    +     * Use a schema as the default schema of the underlying connection.
    +     *
    +     * @see #use(Schema)
    +     * @throws DataAccessException if something went wrong executing the query
    +     */
    +    @Support({ DB2, DERBY, H2, HSQLDB, MYSQL, SYBASE, ORACLE, POSTGRES, SYBASE })
    +    int use(String schema) throws DataAccessException;
    +
    +    // -------------------------------------------------------------------------
    +    // Global Record factory
    +    // -------------------------------------------------------------------------
    +
    +    /**
    +     * Create a new attached {@link UDTRecord}.
    +     *
    +     * @param <R> The generic record type
    +     * @param type The UDT describing records of type &lt;R&gt;
    +     * @return The new record
    +     */
    +    <R extends UDTRecord<R>> R newRecord(UDT<R> type);
    +
    +    /**
    +     * Create a new {@link Record} that can be inserted into the corresponding
    +     * table.
    +     *
    +     * @param <R> The generic record type
    +     * @param table The table holding records of type &lt;R&gt;
    +     * @return The new record
    +     */
    +    <R extends TableRecord<R>> R newRecord(Table<R> table);
    +
    +    /**
    +     * Create a new pre-filled {@link Record} that can be inserted into the
    +     * corresponding table.
    +     * <p>
    +     * This performs roughly the inverse operation of {@link Record#into(Class)}
    +     *
    +     * @param <R> The generic record type
    +     * @param table The table holding records of type &lt;R&gt;
    +     * @param source The source to be used to fill the new record
    +     * @return The new record
    +     * @throws MappingException wrapping any reflection or data type conversion exception that might
    +     *             have occurred while mapping records
    +     * @see Record#from(Object)
    +     * @see Record#into(Class)
    +     */
    +    <R extends TableRecord<R>> R newRecord(Table<R> table, Object source) throws MappingException;
    +
    +    // -------------------------------------------------------------------------
    +    // Fast querying
    +    // -------------------------------------------------------------------------
    +
    +    /**
    +     * Execute and return all records for
    +     * <code><pre>SELECT * FROM [table]</pre></code>
    +     *
    +     * @throws DataAccessException if something went wrong executing the query
    +     */
    +    @Support
    +    <R extends Record> Result<R> fetch(Table<R> table) throws DataAccessException;
    +
    +    /**
    +     * Execute and return all records for
    +     * <code><pre>SELECT * FROM [table] WHERE [condition] </pre></code>
    +     *
    +     * @throws DataAccessException if something went wrong executing the query
    +     */
    +    @Support
    +    <R extends Record> Result<R> fetch(Table<R> table, Condition condition) throws DataAccessException;
    +
    +    /**
    +     * Execute and return zero or one record for
    +     * <code><pre>SELECT * FROM [table]</pre></code>
    +     *
    +     * @return The record or <code>null</code> if no record was returned
    +     * @throws DataAccessException if something went wrong executing the query
    +     */
    +    @Support
    +    <R extends Record> R fetchOne(Table<R> table) throws DataAccessException;
    +
    +    /**
    +     * Execute and return zero or one record for
    +     * <code><pre>SELECT * FROM [table] WHERE [condition] </pre></code>
    +     *
    +     * @return The record or <code>null</code> if no record was returned
    +     * @throws DataAccessException if something went wrong executing the query
    +     */
    +    @Support
    +    <R extends Record> R fetchOne(Table<R> table, Condition condition) throws DataAccessException;
    +
    +    /**
    +     * Execute and return zero or one record for
    +     * <code><pre>SELECT * FROM [table] LIMIT 1</pre></code>
    +     *
    +     * @return The record or <code>null</code> if no record was returned
    +     * @throws DataAccessException if something went wrong executing the query
    +     */
    +    @Support
    +    <R extends Record> R fetchAny(Table<R> table) throws DataAccessException;
    +
    +    /**
    +     * Insert one record
    +     * <code><pre>INSERT INTO [table] ... VALUES [record] </pre></code>
    +     *
    +     * @return The number of inserted records
    +     * @throws DataAccessException if something went wrong executing the query
    +     */
    +    @Support
    +    <R extends TableRecord<R>> int executeInsert(Table<R> table, R record) throws DataAccessException;
    +
    +    /**
    +     * Update a table
    +     * <code><pre>UPDATE [table] SET [modified values in record] </pre></code>
    +     *
    +     * @return The number of updated records
    +     * @throws DataAccessException if something went wrong executing the query
    +     */
    +    @Support
    +    <R extends TableRecord<R>> int executeUpdate(Table<R> table, R record) throws DataAccessException;
    +
    +    /**
    +     * Update a table
    +     * <code><pre>UPDATE [table] SET [modified values in record] WHERE [condition]</pre></code>
    +     *
    +     * @return The number of updated records
    +     * @throws DataAccessException if something went wrong executing the query
    +     */
    +    @Support
    +    <R extends TableRecord<R>, T> int executeUpdate(Table<R> table, R record, Condition condition)
    +        throws DataAccessException;
    +
    +    /**
    +     * Update one record in a table
    +     * <code><pre>UPDATE [table] SET [modified values in record]</pre></code>
    +     *
    +     * @return The number of updated records
    +     * @throws DataAccessException if something went wrong executing the query
    +     */
    +    @Support
    +    <R extends TableRecord<R>> int executeUpdateOne(Table<R> table, R record) throws DataAccessException;
    +
    +    /**
    +     * Update one record in a table
    +     * <code><pre>UPDATE [table] SET [modified values in record] WHERE [condition]</pre></code>
    +     *
    +     * @return The number of updated records
    +     * @throws DataAccessException if something went wrong executing the query
    +     */
    +    @Support
    +    <R extends TableRecord<R>, T> int executeUpdateOne(Table<R> table, R record, Condition condition)
    +        throws DataAccessException;
    +
    +    /**
    +     * Delete records from a table <code><pre>DELETE FROM [table]</pre></code>
    +     *
    +     * @return The number of deleted records
    +     * @throws DataAccessException if something went wrong executing the query
    +     */
    +    @Support
    +    <R extends TableRecord<R>> int executeDelete(Table<R> table) throws DataAccessException;
    +
    +    /**
    +     * Delete records from a table
    +     * <code><pre>DELETE FROM [table] WHERE [condition]</pre></code>
    +     *
    +     * @return The number of deleted records
    +     * @throws DataAccessException if something went wrong executing the query
    +     */
    +    @Support
    +    <R extends TableRecord<R>, T> int executeDelete(Table<R> table, Condition condition) throws DataAccessException;
    +
    +    /**
    +     * Delete one record in a table <code><pre>DELETE FROM [table]</pre></code>
    +     *
    +     * @return The number of deleted records
    +     * @throws DataAccessException if something went wrong executing the query
    +     */
    +    @Support
    +    <R extends TableRecord<R>> int executeDeleteOne(Table<R> table) throws DataAccessException;
    +
    +    /**
    +     * Delete one record in a table
    +     * <code><pre>DELETE FROM [table] WHERE [condition]</pre></code>
    +     *
    +     * @return The number of deleted records
    +     * @throws DataAccessException if something went wrong executing the query
    +     */
    +    @Support
    +    <R extends TableRecord<R>, T> int executeDeleteOne(Table<R> table, Condition condition) throws DataAccessException;
    +
    +    /**
    +     * Execute a new query holding plain SQL.
    +     * <p>
    +     * Example (Postgres):
    +     * <p>
    +     * <code><pre>
    +     * String sql = "FETCH ALL IN \"<unnamed cursor 1>\"";</pre></code> Example
    +     * (SQLite):
    +     * <p>
    +     * <code><pre>
    +     * String sql = "pragma table_info('my_table')";</pre></code>
    +     * <p>
    +     * <b>NOTE</b>: When inserting plain SQL into jOOQ objects, you must
    +     * guarantee syntax integrity. You may also create the possibility of
    +     * malicious SQL injection. Be sure to properly use bind variables and/or
    +     * escape literals when concatenated into SQL clauses!
    +     *
    +     * @param sql The SQL
    +     * @return The results from the executed query. This is never
    +     *         <code>null</code>, even if the database returns no
    +     *         {@link ResultSet}
    +     * @throws DataAccessException if something went wrong executing the query
    +     */
    +    @Support
    +    Result<Record> fetch(String sql) throws DataAccessException;
    +
    +    /**
    +     * Execute a new query holding plain SQL. There must be as many binding
    +     * variables contained in the SQL, as passed in the bindings parameter
    +     * <p>
    +     * Example (Postgres):
    +     * <p>
    +     * <code><pre>
    +     * String sql = "FETCH ALL IN \"<unnamed cursor 1>\"";</pre></code> Example
    +     * (SQLite):
    +     * <p>
    +     * <code><pre>
    +     * String sql = "pragma table_info('my_table')";</pre></code>
    +     * <p>
    +     * <b>NOTE</b>: When inserting plain SQL into jOOQ objects, you must
    +     * guarantee syntax integrity. You may also create the possibility of
    +     * malicious SQL injection. Be sure to properly use bind variables and/or
    +     * escape literals when concatenated into SQL clauses!
    +     *
    +     * @param sql The SQL
    +     * @param bindings The bindings
    +     * @return The results from the executed query. This is never
    +     *         <code>null</code>, even if the database returns no
    +     *         {@link ResultSet}
    +     * @throws DataAccessException if something went wrong executing the query
    +     */
    +    @Support
    +    Result<Record> fetch(String sql, Object... bindings) throws DataAccessException;
    +
    +    /**
    +     * Execute a new query holding plain SQL and "lazily" return the generated
    +     * result.
    +     * <p>
    +     * The returned {@link Cursor} holds a reference to the executed
    +     * {@link PreparedStatement} and the associated {@link ResultSet}. Data can
    +     * be fetched (or iterated over) lazily, fetching records from the
    +     * {@link ResultSet} one by one.
    +     * <p>
    +     * Example (Postgres):
    +     * <p>
    +     * <code><pre>
    +     * String sql = "FETCH ALL IN \"<unnamed cursor 1>\"";</pre></code> Example
    +     * (SQLite):
    +     * <p>
    +     * <code><pre>
    +     * String sql = "pragma table_info('my_table')";</pre></code>
    +     * <p>
    +     * <b>NOTE</b>: When inserting plain SQL into jOOQ objects, you must
    +     * guarantee syntax integrity. You may also create the possibility of
    +     * malicious SQL injection. Be sure to properly use bind variables and/or
    +     * escape literals when concatenated into SQL clauses!
    +     *
    +     * @param sql The SQL
    +     * @return The results from the executed query. This is never
    +     *         <code>null</code>, even if the database returns no
    +     *         {@link ResultSet}
    +     * @throws DataAccessException if something went wrong executing the query
    +     */
    +    @Support
    +    Cursor<Record> fetchLazy(String sql) throws DataAccessException;
    +
    +    /**
    +     * Execute a new query holding plain SQL and "lazily" return the generated
    +     * result. There must be as many binding variables contained in the SQL, as
    +     * passed in the bindings parameter
    +     * <p>
    +     * The returned {@link Cursor} holds a reference to the executed
    +     * {@link PreparedStatement} and the associated {@link ResultSet}. Data can
    +     * be fetched (or iterated over) lazily, fetching records from the
    +     * {@link ResultSet} one by one.
    +     * <p>
    +     * Example (Postgres):
    +     * <p>
    +     * <code><pre>
    +     * String sql = "FETCH ALL IN \"<unnamed cursor 1>\"";</pre></code> Example
    +     * (SQLite):
    +     * <p>
    +     * <code><pre>
    +     * String sql = "pragma table_info('my_table')";</pre></code>
    +     * <p>
    +     * <b>NOTE</b>: When inserting plain SQL into jOOQ objects, you must
    +     * guarantee syntax integrity. You may also create the possibility of
    +     * malicious SQL injection. Be sure to properly use bind variables and/or
    +     * escape literals when concatenated into SQL clauses!
    +     *
    +     * @param sql The SQL
    +     * @param bindings The bindings
    +     * @return The results from the executed query. This is never
    +     *         <code>null</code>, even if the database returns no
    +     *         {@link ResultSet}
    +     * @throws DataAccessException if something went wrong executing the query
    +     */
    +    @Support
    +    Cursor<Record> fetchLazy(String sql, Object... bindings) throws DataAccessException;
    +
    +    /**
    +     * Execute a new query holding plain SQL, possibly returning several result
    +     * sets
    +     * <p>
    +     * Example (Sybase ASE):
    +     * <p>
    +     * <code><pre>
    +     * String sql = "sp_help 'my_table'";</pre></code>
    +     * <p>
    +     * <b>NOTE</b>: When inserting plain SQL into jOOQ objects, you must
    +     * guarantee syntax integrity. You may also create the possibility of
    +     * malicious SQL injection. Be sure to properly use bind variables and/or
    +     * escape literals when concatenated into SQL clauses!
    +     *
    +     * @param sql The SQL
    +     * @return The results from the executed query. This is never
    +     *         <code>null</code>, even if the database returns no
    +     *         {@link ResultSet}
    +     * @throws DataAccessException if something went wrong executing the query
    +     */
    +    @Support
    +    List<Result<Record>> fetchMany(String sql) throws DataAccessException;
    +
    +    /**
    +     * Execute a new query holding plain SQL, possibly returning several result
    +     * sets. There must be as many binding variables contained in the SQL, as
    +     * passed in the bindings parameter
    +     * <p>
    +     * Example (Sybase ASE):
    +     * <p>
    +     * <code><pre>
    +     * String sql = "sp_help 'my_table'";</pre></code>
    +     * <p>
    +     * <b>NOTE</b>: When inserting plain SQL into jOOQ objects, you must
    +     * guarantee syntax integrity. You may also create the possibility of
    +     * malicious SQL injection. Be sure to properly use bind variables and/or
    +     * escape literals when concatenated into SQL clauses!
    +     *
    +     * @param sql The SQL
    +     * @param bindings The bindings
    +     * @return The results from the executed query. This is never
    +     *         <code>null</code>, even if the database returns no
    +     *         {@link ResultSet}
    +     * @throws DataAccessException if something went wrong executing the query
    +     */
    +    @Support
    +    List<Result<Record>> fetchMany(String sql, Object... bindings) throws DataAccessException;
    +
    +    /**
    +     * Execute a new query holding plain SQL.
    +     * <p>
    +     * Example (Postgres):
    +     * <p>
    +     * <code><pre>
    +     * String sql = "FETCH ALL IN \"<unnamed cursor 1>\"";</pre></code> Example
    +     * (SQLite):
    +     * <p>
    +     * <code><pre>
    +     * String sql = "pragma table_info('my_table')";</pre></code>
    +     * <p>
    +     * <b>NOTE</b>: When inserting plain SQL into jOOQ objects, you must
    +     * guarantee syntax integrity. You may also create the possibility of
    +     * malicious SQL injection. Be sure to properly use bind variables and/or
    +     * escape literals when concatenated into SQL clauses!
    +     *
    +     * @param sql The SQL
    +     * @return The results from the executed query. This is never
    +     *         <code>null</code>, even if the database returns no
    +     *         {@link ResultSet}
    +     * @throws DataAccessException if something went wrong executing the query
    +     */
    +    @Support
    +    Record fetchOne(String sql) throws DataAccessException;
    +
    +    /**
    +     * Execute a new query holding plain SQL. There must be as many binding
    +     * variables contained in the SQL, as passed in the bindings parameter
    +     * <p>
    +     * Example (Postgres):
    +     * <p>
    +     * <code><pre>
    +     * String sql = "FETCH ALL IN \"<unnamed cursor 1>\"";</pre></code> Example
    +     * (SQLite):
    +     * <p>
    +     * <code><pre>
    +     * String sql = "pragma table_info('my_table')";</pre></code>
    +     * <p>
    +     * <b>NOTE</b>: When inserting plain SQL into jOOQ objects, you must
    +     * guarantee syntax integrity. You may also create the possibility of
    +     * malicious SQL injection. Be sure to properly use bind variables and/or
    +     * escape literals when concatenated into SQL clauses!
    +     *
    +     * @param sql The SQL
    +     * @param bindings The bindings
    +     * @return The results from the executed query. This is never
    +     *         <code>null</code>, even if the database returns no
    +     *         {@link ResultSet}
    +     * @throws DataAccessException if something went wrong executing the query
    +     */
    +    @Support
    +    Record fetchOne(String sql, Object... bindings) throws DataAccessException;
    +
    +    /**
    +     * Execute a query holding plain SQL.
    +     * <p>
    +     * <b>NOTE</b>: When inserting plain SQL into jOOQ objects, you must
    +     * guarantee syntax integrity. You may also create the possibility of
    +     * malicious SQL injection. Be sure to properly use bind variables and/or
    +     * escape literals when concatenated into SQL clauses!
    +     *
    +     * @param sql The SQL
    +     * @return The results from the executed query
    +     * @throws DataAccessException if something went wrong executing the query
    +     */
    +    @Support
    +    int execute(String sql) throws DataAccessException;
    +
    +    /**
    +     * Execute a new query holding plain SQL. There must be as many binding
    +     * variables contained in the SQL, as passed in the bindings parameter
    +     * <p>
    +     * <p>
    +     * <b>NOTE</b>: When inserting plain SQL into jOOQ objects, you must
    +     * guarantee syntax integrity. You may also create the possibility of
    +     * malicious SQL injection. Be sure to properly use bind variables and/or
    +     * escape literals when concatenated into SQL clauses!
    +     *
    +     * @param sql The SQL
    +     * @param bindings The bindings
    +     * @return The results from the executed query
    +     * @throws DataAccessException if something went wrong executing the query
    +     */
    +    @Support
    +    int execute(String sql, Object... bindings) throws DataAccessException;
    +
    +    /**
    +     * Create a new query holding plain SQL. There must not be any binding
    +     * variables contained in the SQL
    +     * <p>
    +     * Use this method, when you want to take advantage of the many ways to
    +     * fetch results in jOOQ, using {@link ResultQuery}. Some examples:
    +     * <p>
    +     * <table border="1">
    +     * <tr>
    +     * <td> {@link ResultQuery#fetchLazy()}</td>
    +     * <td>Open a cursor and fetch records one by one</td>
    +     * </tr>
    +     * <tr>
    +     * <td> {@link ResultQuery#fetchInto(Class)}</td>
    +     * <td>Fetch records into a custom POJO (optionally annotated with JPA
    +     * annotations)</td>
    +     * </tr>
    +     * <tr>
    +     * <td> {@link ResultQuery#fetchInto(RecordHandler)}</td>
    +     * <td>Fetch records into a custom callback (similar to Spring's RowMapper)</td>
    +     * </tr>
    +     * <tr>
    +     * <td> {@link ResultQuery#fetchLater()}</td>
    +     * <td>Fetch records of a long-running query asynchronously</td>
    +     * </tr>
    +     * </table>
    +     * <p>
    +     * Example (Postgres):
    +     * <p>
    +     * <code><pre>
    +     * String sql = "FETCH ALL IN \"<unnamed cursor 1>\"";</pre></code> Example
    +     * (SQLite):
    +     * <p>
    +     * <code><pre>
    +     * String sql = "pragma table_info('my_table')";</pre></code>
    +     * <p>
    +     * <b>NOTE</b>: When inserting plain SQL into jOOQ objects, you must
    +     * guarantee syntax integrity. You may also create the possibility of
    +     * malicious SQL injection. Be sure to properly use bind variables and/or
    +     * escape literals when concatenated into SQL clauses!
    +     *
    +     * @param sql The SQL
    +     * @return An executable query
    +     * @throws DataAccessException if something went wrong executing the query
    +     */
    +    @Support
    +    ResultQuery<Record> resultQuery(String sql) throws DataAccessException;
    +
    +    /**
    +     * Create a new query holding plain SQL. There must be as many binding
    +     * variables contained in the SQL, as passed in the bindings parameter
    +     * <p>
    +     * Use this method, when you want to take advantage of the many ways to
    +     * fetch results in jOOQ, using {@link ResultQuery}. Some examples:
    +     * <p>
    +     * <table border="1">
    +     * <tr>
    +     * <td> {@link ResultQuery#fetchLazy()}</td>
    +     * <td>Open a cursor and fetch records one by one</td>
    +     * </tr>
    +     * <tr>
    +     * <td> {@link ResultQuery#fetchInto(Class)}</td>
    +     * <td>Fetch records into a custom POJO (optionally annotated with JPA
    +     * annotations)</td>
    +     * </tr>
    +     * <tr>
    +     * <td> {@link ResultQuery#fetchInto(RecordHandler)}</td>
    +     * <td>Fetch records into a custom callback (similar to Spring's RowMapper)</td>
    +     * </tr>
    +     * <tr>
    +     * <td> {@link ResultQuery#fetchLater()}</td>
    +     * <td>Fetch records of a long-running query asynchronously</td>
    +     * </tr>
    +     * </table>
    +     * <p>
    +     * Example (Postgres):
    +     * <p>
    +     * <code><pre>
    +     * String sql = "FETCH ALL IN \"<unnamed cursor 1>\"";</pre></code> Example
    +     * (SQLite):
    +     * <p>
    +     * <code><pre>
    +     * String sql = "pragma table_info('my_table')";</pre></code>
    +     * <p>
    +     * <b>NOTE</b>: When inserting plain SQL into jOOQ objects, you must
    +     * guarantee syntax integrity. You may also create the possibility of
    +     * malicious SQL injection. Be sure to properly use bind variables and/or
    +     * escape literals when concatenated into SQL clauses!
    +     *
    +     * @param sql The SQL
    +     * @param bindings The bindings
    +     * @return An executable query
    +     * @throws DataAccessException if something went wrong executing the query
    +     */
    +    @Support
    +    ResultQuery<Record> resultQuery(String sql, Object... bindings) throws DataAccessException;
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/Field.java b/jOOQ/src/main/java/org/jooq/Field.java
    new file mode 100644
    index 00000000000..76278308be6
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/Field.java
    @@ -0,0 +1,2349 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +
    +package org.jooq;
    +
    +import static org.jooq.SQLDialect.ASE;
    +import static org.jooq.SQLDialect.CUBRID;
    +import static org.jooq.SQLDialect.DB2;
    +import static org.jooq.SQLDialect.DERBY;
    +import static org.jooq.SQLDialect.H2;
    +import static org.jooq.SQLDialect.HSQLDB;
    +import static org.jooq.SQLDialect.INGRES;
    +import static org.jooq.SQLDialect.MYSQL;
    +import static org.jooq.SQLDialect.ORACLE;
    +import static org.jooq.SQLDialect.POSTGRES;
    +import static org.jooq.SQLDialect.SQLITE;
    +import static org.jooq.SQLDialect.SQLSERVER;
    +import static org.jooq.SQLDialect.SYBASE;
    +
    +import java.math.BigDecimal;
    +import java.util.Collection;
    +import java.util.Map;
    +
    +import org.jooq.impl.Factory;
    +import org.jooq.types.Interval;
    +
    +/**
    + * A field used in tables and conditions
    + *
    + * @param <T> The field type
    + * @author Lukas Eder
    + */
    +public interface Field<T> extends NamedTypeProviderQueryPart<T>, AliasProvider<Field<T>> {
    +
    +    // ------------------------------------------------------------------------
    +    // API
    +    // ------------------------------------------------------------------------
    +
    +    /**
    +     * The name of the field.
    +     * <p>
    +     * The name is any of these:
    +     * <ul>
    +     * <li>The formal name of the field, if it is a <i>physical table/view field</i></li>
    +     * <li>The alias of an <i>aliased field</i></li>
    +     * <li>A generated / unspecified value for any other <i>expression</i></li>
    +     * <li>The name of a parameter if it is a named {@link Param}</li>
    +     * </ul>
    +     */
    +    @Override
    +    String getName();
    +
    +    /**
    +     * The Java type of the field.
    +     */
    +    @Override
    +    Class<? extends T> getType();
    +
    +    /**
    +     * Create an alias for this field
    +     *
    +     * @param alias The alias name
    +     * @return The field alias
    +     */
    +    @Override
    +    @Support
    +    Field<T> as(String alias);
    +
    +    /**
    +     * Watch out! This is {@link Object#equals(Object)}, not a jOOQ feature! :-)
    +     */
    +    @Override
    +    boolean equals(Object other);
    +
    +    /**
    +     * Whether this field represents a <code>null</code> literal.
    +     * <p>
    +     * This method is for JOOQ INTERNAL USE only!
    +     * <p>
    +     * This method was added to be able to recognise <code>null</code> literals
    +     * within jOOQ and handle them specially, as some SQL dialects have a rather
    +     * un-intuitive way of handling <code>null</code> values.
    +     */
    +    boolean isNullLiteral();
    +
    +    // ------------------------------------------------------------------------
    +    // Type casts
    +    // ------------------------------------------------------------------------
    +
    +    /**
    +     * Cast this field to the type of another field.
    +     * <p>
    +     * This results in the same as casting this field to
    +     * {@link DataType#getCastTypeName()}
    +     *
    +     * @param <Z> The generic type of the cast field
    +     * @param field The field whose type is used for the cast
    +     * @return The cast field
    +     * @see #cast(DataType)
    +     */
    +    @Support
    +    <Z> Field<Z> cast(Field<Z> field);
    +
    +    /**
    +     * Cast this field to a dialect-specific data type.
    +     *
    +     * @param <Z> The generic type of the cast field
    +     * @param type
    +     */
    +    @Support
    +    <Z> Field<Z> cast(DataType<Z> type);
    +
    +    /**
    +     * Cast this field to another type
    +     * <p>
    +     * The actual cast may not be accurate as the {@link DataType} has to be
    +     * "guessed" from the jOOQ-configured data types. Use
    +     * {@link #cast(DataType)} for more accurate casts.
    +     *
    +     * @param <Z> The generic type of the cast field
    +     * @param type The type that is used for the cast
    +     * @return The cast field
    +     * @see #cast(DataType)
    +     */
    +    @Support
    +    <Z> Field<Z> cast(Class<? extends Z> type);
    +
    +    // ------------------------------------------------------------------------
    +    // Conversion of field into a sort field
    +    // ------------------------------------------------------------------------
    +
    +    /**
    +     * Create an ascending sort field from this field
    +     *
    +     * @return This field as an ascending sort field
    +     */
    +    @Support
    +    SortField<T> asc();
    +
    +    /**
    +     * Create a descending sort field from this field
    +     *
    +     * @return This field as a descending sort field
    +     */
    +    @Support
    +    SortField<T> desc();
    +
    +    /**
    +     * Create a sort field of the form <code><pre>
    +     * CASE [this] WHEN [sortList.get(0)] THEN 0
    +     *             WHEN [sortList.get(1)] THEN 1
    +     *             ...
    +     *             WHEN [sortList.get(n)] THEN n
    +     *                                    ELSE null
    +     * END ASC
    +     * </pre></code>
    +     * <p>
    +     * Note: You can use this in combination with {@link SortField#nullsFirst()}
    +     * or {@link SortField#nullsLast()} to specify whether the default should
    +     * have highest or lowest priority.
    +     *
    +     * @param sortList The list containing sort value preferences
    +     * @return The sort field
    +     */
    +    @Support
    +    SortField<Integer> sortAsc(Collection<T> sortList);
    +
    +    /**
    +     * Create a sort field of the form <code><pre>
    +     * CASE [this] WHEN [sortList[0]] THEN 0
    +     *             WHEN [sortList[1]] THEN 1
    +     *             ...
    +     *             WHEN [sortList[n]] THEN n
    +     *                                ELSE null
    +     * END ASC
    +     * </pre></code>
    +     * <p>
    +     * Note: You can use this in combination with {@link SortField#nullsFirst()}
    +     * or {@link SortField#nullsLast()} to specify whether the default should
    +     * have highest or lowest priority.
    +     *
    +     * @param sortList The list containing sort value preferences
    +     * @return The sort field
    +     */
    +    @Support
    +    SortField<Integer> sortAsc(T... sortList);
    +
    +    /**
    +     * Create a sort field of the form <code><pre>
    +     * CASE [this] WHEN [sortList.get(0)] THEN 0
    +     *             WHEN [sortList.get(1)] THEN 1
    +     *             ...
    +     *             WHEN [sortList.get(n)] THEN n
    +     *                                    ELSE null
    +     * END DESC
    +     * </pre></code>
    +     * <p>
    +     * Note: You can use this in combination with {@link SortField#nullsFirst()}
    +     * or {@link SortField#nullsLast()} to specify whether the default should
    +     * have highest or lowest priority.
    +     *
    +     * @param sortList The list containing sort value preferences
    +     * @return The sort field
    +     */
    +    @Support
    +    SortField<Integer> sortDesc(Collection<T> sortList);
    +
    +    /**
    +     * Create a sort field of the form <code><pre>
    +     * CASE [this] WHEN [sortList[0]] THEN 0
    +     *             WHEN [sortList[1]] THEN 1
    +     *             ...
    +     *             WHEN [sortList[n]] THEN n
    +     *                                    ELSE null
    +     * END DESC
    +     * </pre></code>
    +     * <p>
    +     * Note: You can use this in combination with {@link SortField#nullsFirst()}
    +     * or {@link SortField#nullsLast()} to specify whether the default should
    +     * have highest or lowest priority.
    +     *
    +     * @param sortList The list containing sort value preferences
    +     * @return The sort field
    +     */
    +    @Support
    +    SortField<Integer> sortDesc(T... sortList);
    +
    +    /**
    +     * Create a sort field of the form (in pseudo code)<code><pre>
    +     * CASE [this] WHEN [sortMap.key(0)] THEN sortMap.value(0)
    +     *             WHEN [sortMap.key(1)] THEN sortMap.value(1)
    +     *             ...
    +     *             WHEN [sortMap.key(n)] THEN sortMap.value(n)
    +     *                                   ELSE null
    +     * END DESC
    +     * </pre></code>
    +     * <p>
    +     * Note: You can use this in combination with {@link SortField#nullsFirst()}
    +     * or {@link SortField#nullsLast()} to specify whether the default should
    +     * have highest or lowest priority.
    +     *
    +     * @param sortMap The list containing sort value preferences
    +     * @return The sort field
    +     */
    +    @Support
    +    <Z> SortField<Z> sort(Map<T, Z> sortMap);
    +
    +    // ------------------------------------------------------------------------
    +    // Arithmetic operations
    +    // ------------------------------------------------------------------------
    +
    +    /**
    +     * Negate this field to get its negative value.
    +     * <p>
    +     * This renders the same on all dialects:
    +     * <code><pre>-[this]</pre></code>
    +     */
    +    @Support
    +    Field<T> neg();
    +
    +    /**
    +     * An arithmetic expression adding this to value.
    +     *
    +     * @see #add(Field)
    +     */
    +    @Support
    +    Field<T> add(Number value);
    +
    +    /**
    +     * An arithmetic expression to add value to this.
    +     * <p>
    +     * The behaviour of this operation is as follows:
    +     * <table border="1">
    +     * <tr>
    +     * <th>Operand 1</th>
    +     * <th>Operand 2</th>
    +     * <th>Result Type</th>
    +     * </tr>
    +     * <tr>
    +     * <td>Numeric</td>
    +     * <td>Numeric</td>
    +     * <td>Numeric</td>
    +     * </tr>
    +     * <tr>
    +     * <td>Date / Time</td>
    +     * <td>Numeric</td>
    +     * <td>Date / Time</td>
    +     * </tr>
    +     * <tr>
    +     * <td>Date / Time</td>
    +     * <td>Interval</td>
    +     * <td>Date / Time</td>
    +     * </tr>
    +     * <tr>
    +     * <td>Interval</td>
    +     * <td>Interval</td>
    +     * <td>Interval</td>
    +     * </tr>
    +     * </table>
    +     */
    +    @Support
    +    Field<T> add(Field<?> value);
    +
    +    /**
    +     * An arithmetic expression subtracting value from this.
    +     *
    +     * @see #sub(Field)
    +     */
    +    @Support
    +    Field<T> sub(Number value);
    +
    +    /**
    +     * An arithmetic expression subtracting value from this.
    +     * <p>
    +     * <table border="1">
    +     * <tr>
    +     * <th>Operand 1</th>
    +     * <th>Operand 2</th>
    +     * <th>Result Type</th>
    +     * </tr>
    +     * <tr>
    +     * <td>Numeric</td>
    +     * <td>Numeric</td>
    +     * <td>Numeric</td>
    +     * </tr>
    +     * <tr>
    +     * <td>Date / Time</td>
    +     * <td>Numeric</td>
    +     * <td>Date / Time</td>
    +     * </tr>
    +     * <tr>
    +     * <td>Date / Time</td>
    +     * <td>Interval</td>
    +     * <td>Date / Time</td>
    +     * </tr>
    +     * <tr>
    +     * <td>Interval</td>
    +     * <td>Interval</td>
    +     * <td>Interval</td>
    +     * </tr>
    +     * </table>
    +     * <p>
    +     * In order to subtract one date time field from another, use any of these
    +     * methods:
    +     * <ul>
    +     * <li> {@link Factory#dateDiff(Field, Field)}</li>
    +     * <li> {@link Factory#timestampDiff(Field, Field)}</li>
    +     * </ul>
    +     */
    +    @Support
    +    Field<T> sub(Field<?> value);
    +
    +    /**
    +     * An arithmetic expression multiplying this with value
    +     * <p>
    +     * <ul>
    +     * <li>If this is a numeric field, then the result is a number of the same
    +     * type as this field.</li>
    +     * <li>If this is an <code>INTERVAL</code> field, then the result is also an
    +     * <code>INTERVAL</code> field (see {@link Interval})</li>
    +     * </ul>
    +     */
    +    @Support
    +    Field<T> mul(Number value);
    +
    +    /**
    +     * An arithmetic expression multiplying this with value
    +     * <p>
    +     * <ul>
    +     * <li>If this is a numeric field, then the result is a number of the same
    +     * type as this field.</li>
    +     * <li>If this is an <code>INTERVAL</code> field, then the result is also an
    +     * <code>INTERVAL</code> field (see {@link Interval})</li>
    +     * </ul>
    +     */
    +    @Support
    +    Field<T> mul(Field<? extends Number> value);
    +
    +    /**
    +     * An arithmetic expression dividing this by value
    +     * <p>
    +     * <ul>
    +     * <li>If this is a numeric field, then the result is a number of the same
    +     * type as this field.</li>
    +     * <li>If this is an <code>INTERVAL</code> field, then the result is also an
    +     * <code>INTERVAL</code> field (see {@link Interval})</li>
    +     * </ul>
    +     */
    +    @Support
    +    Field<T> div(Number value);
    +
    +    /**
    +     * An arithmetic expression dividing this by value
    +     * <p>
    +     * <ul>
    +     * <li>If this is a numeric field, then the result is a number of the same
    +     * type as this field.</li>
    +     * <li>If this is an <code>INTERVAL</code> field, then the result is also an
    +     * <code>INTERVAL</code> field (see {@link Interval})</li>
    +     * </ul>
    +     */
    +    @Support
    +    Field<T> div(Field<? extends Number> value);
    +
    +    /**
    +     * An arithmetic expression getting the modulo of this divided by value
    +     * <p>
    +     * This renders the modulo operation where available:
    +     * <code><pre>[this] % [value]</pre></code>
    +     * ... or the modulo function elsewhere:
    +     * <code><pre>mod([this], [value])</pre></code>
    +     */
    +    @Support
    +    Field<T> mod(Number value);
    +
    +    /**
    +     * An arithmetic expression getting the modulo of this divided by value
    +     * <p>
    +     * This renders the modulo operation where available:
    +     * <code><pre>[this] % [value]</pre></code>
    +     * ... or the modulo function elsewhere:
    +     * <code><pre>mod([this], [value])</pre></code>
    +     */
    +    @Support
    +    Field<T> mod(Field<? extends Number> value);
    +
    +    // ------------------------------------------------------------------------
    +    // Conditions created from this field
    +    // ------------------------------------------------------------------------
    +
    +    /**
    +     * Create a condition to check this field against <code>null</code>.
    +     * <p>
    +     * SQL: <code>this is null</code>
    +     */
    +    @Support
    +    Condition isNull();
    +
    +    /**
    +     * Create a condition to check this field against <code>null</code>.
    +     * <p>
    +     * SQL: <code>this is not null</code>
    +     */
    +    @Support
    +    Condition isNotNull();
    +
    +    /**
    +     * Create a condition to check this field against known string literals for
    +     * <code>true</code>
    +     * <p>
    +     * SQL:
    +     * <code>lcase(this) in ("1", "y", "yes", "true", "on", "enabled")</code>
    +     */
    +    @Support
    +    Condition isTrue();
    +
    +    /**
    +     * Create a condition to check this field against known string literals for
    +     * <code>false</code>
    +     * <p>
    +     * SQL:
    +     * <code>lcase(this) in ("0", "n", "no", "false", "off", "disabled")</code>
    +     */
    +    @Support
    +    Condition isFalse();
    +
    +    /**
    +     * Create a condition to pattern-check this field against a value
    +     * <p>
    +     * SQL: <code>this like value</code>
    +     */
    +    @Support
    +    Condition like(Field<String> value);
    +
    +    /**
    +     * Create a condition to pattern-check this field against a value
    +     * <p>
    +     * SQL: <code>this like value escape 'e'</code>
    +     */
    +    @Support
    +    Condition like(Field<String> value, char escape);
    +
    +    /**
    +     * Create a condition to pattern-check this field against a value
    +     * <p>
    +     * SQL: <code>this like value</code>
    +     */
    +    @Support
    +    Condition like(String value);
    +
    +    /**
    +     * Create a condition to pattern-check this field against a value
    +     * <p>
    +     * SQL: <code>this like value escape 'e'</code>
    +     */
    +    @Support
    +    Condition like(String value, char escape);
    +
    +    /**
    +     * Create a condition to pattern-check this field against a value
    +     * <p>
    +     * SQL: <code>this not like value</code>
    +     */
    +    @Support
    +    Condition notLike(Field<String> value);
    +
    +    /**
    +     * Create a condition to pattern-check this field against a value
    +     * <p>
    +     * SQL: <code>this not like value escape 'e'</code>
    +     */
    +    @Support
    +    Condition notLike(Field<String> value, char escape);
    +
    +    /**
    +     * Create a condition to pattern-check this field against a value
    +     * <p>
    +     * SQL: <code>this not like value</code>
    +     */
    +    @Support
    +    Condition notLike(String value);
    +
    +    /**
    +     * Create a condition to pattern-check this field against a value
    +     * <p>
    +     * SQL: <code>this not like value escape 'e'</code>
    +     */
    +    @Support
    +    Condition notLike(String value, char escape);
    +
    +    /**
    +     * Convenience method for {@link #like(String, char)} including proper
    +     * adding of wildcards and escaping
    +     * <p>
    +     * SQL: <code>this like ('%' || escape(value, '\') || '%') escape '\'</code>
    +     * <p>
    +     * Note: This also works with numbers, for instance
    +     * <code>val(1133).contains(13)</code>
    +     * <p>
    +     * If you're using {@link SQLDialect#POSTGRES}, then you can use this method also to express the "ARRAY contains" operator. For example:
    +     * <code><pre>
    +     * // Use this expression
    +     * val(new Integer[] { 1, 2, 3 }).contains(new Integer[] { 1, 2 })
    +     *
    +     * // ... to render this SQL
    +     * ARRAY[1, 2, 3] @> ARRAY[1, 2]
    +     * </pre></code>
    +     *
    +     * @see Factory#escape(String, char)
    +     * @see #like(String, char)
    +     */
    +    @Support
    +    Condition contains(T value);
    +
    +    /**
    +     * Convenience method for {@link #like(String, char)} including proper
    +     * adding of wildcards and escaping
    +     * <p>
    +     * SQL: <code>this like ('%' || escape(value, '\') || '%') escape '\'</code>
    +     * <p>
    +     * Note: This also works with numbers, for instance
    +     * <code>val(1133).contains(13)</code>
    +     * <p>
    +     * If you're using {@link SQLDialect#POSTGRES}, then you can use this method also to express the "ARRAY contains" operator. For example:
    +     * <code><pre>
    +     * // Use this expression
    +     * val(new Integer[] { 1, 2, 3 }).contains(new Integer[] { 1, 2 })
    +     *
    +     * // ... to render this SQL
    +     * ARRAY[1, 2, 3] @> ARRAY[1, 2]
    +     * </pre></code>
    +     *
    +     * @see Factory#escape(Field, char)
    +     * @see #like(Field, char)
    +     */
    +    @Support({ ASE, CUBRID, DB2, H2, HSQLDB, INGRES, MYSQL, ORACLE, POSTGRES, SQLSERVER, SYBASE, SQLITE })
    +    Condition contains(Field<T> value);
    +
    +    /**
    +     * Convenience method for {@link #like(String, char)} including proper
    +     * adding of wildcards and escaping
    +     * <p>
    +     * SQL: <code>this like (escape(value, '\') || '%') escape '\'</code>
    +     * <p>
    +     * Note: This also works with numbers, for instance
    +     * <code>val(1133).startsWith(11)</code>
    +     *
    +     * @see Factory#escape(String, char)
    +     * @see #like(String, char)
    +     */
    +    @Support
    +    Condition startsWith(T value);
    +
    +    /**
    +     * Convenience method for {@link #like(String, char)} including proper
    +     * adding of wildcards and escaping
    +     * <p>
    +     * SQL: <code>this like (escape(value, '\') || '%') escape '\'</code>
    +     * <p>
    +     * Note: This also works with numbers, for instance
    +     * <code>val(1133).startsWith(11)</code>
    +     *
    +     * @see Factory#escape(Field, char)
    +     * @see #like(Field, char)
    +     */
    +    @Support({ ASE, CUBRID, DB2, H2, HSQLDB, INGRES, MYSQL, ORACLE, POSTGRES, SQLSERVER, SYBASE, SQLITE })
    +    Condition startsWith(Field<T> value);
    +
    +    /**
    +     * Convenience method for {@link #like(String, char)} including proper
    +     * adding of wildcards and escaping
    +     * <p>
    +     * SQL: <code>this like ('%' || escape(value, '\')) escape '\'</code>
    +     * <p>
    +     * Note: This also works with numbers, for instance
    +     * <code>val(1133).endsWith(33)</code>
    +     *
    +     * @see Factory#escape(String, char)
    +     * @see #like(String, char)
    +     */
    +    @Support
    +    Condition endsWith(T value);
    +
    +    /**
    +     * Convenience method for {@link #like(String, char)} including proper
    +     * adding of wildcards and escaping
    +     * <p>
    +     * SQL: <code>this like ('%' || escape(value, '\')) escape '\'</code>
    +     * <p>
    +     * Note: This also works with numbers, for instance
    +     * <code>val(1133).endsWith(33)</code>
    +     *
    +     * @see Factory#escape(Field, char)
    +     * @see #like(Field, char)
    +     */
    +    @Support({ ASE, CUBRID, DB2, H2, HSQLDB, INGRES, MYSQL, ORACLE, POSTGRES, SQLSERVER, SYBASE, SQLITE })
    +    Condition endsWith(Field<T> value);
    +
    +    /**
    +     * Create a condition to check this field against several values
    +     * <p>
    +     * SQL: <code>this in (values...)</code>
    +     */
    +    @Support
    +    Condition in(Collection<T> values);
    +
    +    /**
    +     * Create a condition to check this field against several values
    +     * <p>
    +     * SQL: <code>this in (values...)</code>
    +     */
    +    @Support
    +    Condition in(T... values);
    +
    +    /**
    +     * Create a condition to check this field against several values
    +     * <p>
    +     * SQL: <code>this in (values...)</code>
    +     */
    +    @Support
    +    Condition in(Field<?>... values);
    +
    +    /**
    +     * Create a condition to check this field against a subquery
    +     * <p>
    +     * Note that the subquery must return exactly one field. This is not checked
    +     * by jOOQ and will result in syntax errors on the database, if not used
    +     * correctly.
    +     * <p>
    +     * SQL: <code>this in (select...)</code>
    +     */
    +    @Support
    +    Condition in(Select<?> query);
    +
    +    /**
    +     * Create a condition to check this field against several values
    +     * <p>
    +     * Note that if any of the passed values is <code>NULL</code>, then the
    +     * condition will be <code>NULL</code> (or <code>false</code>, depending on
    +     * the dialect) as well. This is standard SQL behaviour.
    +     * <p>
    +     * SQL: <code>this not in (values...)</code>
    +     */
    +    @Support
    +    Condition notIn(Collection<T> values);
    +
    +    /**
    +     * Create a condition to check this field against several values
    +     * <p>
    +     * Note that if any of the passed values is <code>NULL</code>, then the
    +     * condition will be <code>NULL</code> (or <code>false</code>, depending on
    +     * the dialect) as well. This is standard SQL behaviour.
    +     * <p>
    +     * SQL: <code>this not in (values...)</code>
    +     */
    +    @Support
    +    Condition notIn(T... values);
    +
    +    /**
    +     * Create a condition to check this field against several values
    +     * <p>
    +     * Note that if any of the passed values is <code>NULL</code>, then the
    +     * condition will be <code>NULL</code> (or <code>false</code>, depending on
    +     * the dialect) as well. This is standard SQL behaviour.
    +     * <p>
    +     * SQL: <code>this not in (values...)</code>
    +     */
    +    @Support
    +    Condition notIn(Field<?>... values);
    +
    +    /**
    +     * Create a condition to check this field against a subquery
    +     * <p>
    +     * Note that the subquery must return exactly one field. This is not checked
    +     * by jOOQ and will result in syntax errors on the database, if not used
    +     * correctly.
    +     * <p>
    +     * Note that if any of the passed values is <code>NULL</code>, then the
    +     * condition will be <code>NULL</code> (or <code>false</code>, depending on
    +     * the dialect) as well. This is standard SQL behaviour.
    +     * <p>
    +     * SQL: <code>this not in (select...)</code>
    +     */
    +    @Support
    +    Condition notIn(Select<?> query);
    +
    +    /**
    +     * Create a condition to check this field against some bounds
    +     * <p>
    +     * SQL: <code>this between minValue and maxValue</code>
    +     */
    +    @Support
    +    Condition between(T minValue, T maxValue);
    +
    +    /**
    +     * Create a condition to check this field against some bounds
    +     * <p>
    +     * SQL: <code>this between minValue and maxValue</code>
    +     */
    +    @Support
    +    Condition between(Field<T> minValue, Field<T> maxValue);
    +
    +    /**
    +     * Create a condition to check this field against some bounds
    +     * <p>
    +     * SQL: <code>this not between minValue and maxValue</code>
    +     */
    +    @Support
    +    Condition notBetween(T minValue, T maxValue);
    +
    +    /**
    +     * Create a condition to check this field against some bounds
    +     * <p>
    +     * SQL: <code>this not between minValue and maxValue</code>
    +     */
    +    @Support
    +    Condition notBetween(Field<T> minValue, Field<T> maxValue);
    +
    +    /**
    +     * <code>this = value</code>
    +     * <p>
    +     * If <code>value == null</code>, then this will return a condition
    +     * equivalent to {@link #isNull()} for convenience. SQL's ternary
    +     * <code>NULL</code> logic is rarely of use for Java programmers.
    +     */
    +    @Support
    +    Condition equal(T value);
    +
    +    /**
    +     * <code>this = field</code>
    +     */
    +    @Support
    +    Condition equal(Field<T> field);
    +
    +    /**
    +     * <code>lower(this) = lower(value)</code>
    +     */
    +    @Support
    +    Condition equalIgnoreCase(String value);
    +
    +    /**
    +     * <code>lower(this) = lower(value)</code>
    +     */
    +    @Support
    +    Condition equalIgnoreCase(Field<String> value);
    +
    +    /**
    +     * <code>this = (Select<?> ...)</code>
    +     */
    +    @Support
    +    Condition equal(Select<?> query);
    +
    +    /**
    +     * <code>this = any (Select<?> ...)</code>
    +     */
    +    @Support({ ASE, CUBRID, DB2, DERBY, H2, HSQLDB, INGRES, MYSQL, ORACLE, POSTGRES, SQLSERVER, SYBASE })
    +    Condition equalAny(Select<?> query);
    +
    +    /**
    +     * <code>this = any (array)</code>
    +     * <p>
    +     * This is natively supported by {@link SQLDialect#POSTGRES}. Other dialects
    +     * will render a subselect unnesting the array.
    +     */
    +    @Support({ ASE, CUBRID, DB2, DERBY, H2, HSQLDB, INGRES, MYSQL, ORACLE, POSTGRES, SQLSERVER, SYBASE })
    +    Condition equalAny(T... array);
    +
    +    /**
    +     * <code>this = any (array)</code>
    +     * <p>
    +     * This is natively supported by {@link SQLDialect#POSTGRES}. Other dialects
    +     * will render a subselect unnesting the array.
    +     */
    +    @Support({ H2, CUBRID, HSQLDB, POSTGRES })
    +    Condition equalAny(Field<T[]> array);
    +
    +    /**
    +     * <code>this = some (Select<?> ...)</code>
    +     *
    +     * @deprecated - 2.0.2 - Use {@link #equalAny(Select)} instead
    +     */
    +    @Deprecated
    +    @Support({ ASE, CUBRID, DB2, DERBY, H2, HSQLDB, INGRES, MYSQL, ORACLE, POSTGRES, SQLSERVER, SYBASE })
    +    Condition equalSome(Select<?> query);
    +
    +    /**
    +     * <code>this = all (Select<?> ...)</code>
    +     */
    +    @Support({ ASE, CUBRID, DB2, DERBY, H2, HSQLDB, INGRES, MYSQL, ORACLE, POSTGRES, SQLSERVER, SYBASE })
    +    Condition equalAll(Select<?> query);
    +
    +    /**
    +     * <code>this = all (array)</code>
    +     * <p>
    +     * This is natively supported by {@link SQLDialect#POSTGRES}. Other dialects
    +     * will render a subselect unnesting the array.
    +     */
    +    @Support({ ASE, CUBRID, DB2, DERBY, H2, HSQLDB, INGRES, MYSQL, ORACLE, POSTGRES, SQLSERVER, SYBASE })
    +    Condition equalAll(T... array);
    +
    +    /**
    +     * <code>this = all (array)</code>
    +     * <p>
    +     * This is natively supported by {@link SQLDialect#POSTGRES}. Other dialects
    +     * will render a subselect unnesting the array.
    +     */
    +    @Support({ H2, HSQLDB, POSTGRES })
    +    Condition equalAll(Field<T[]> array);
    +
    +    /**
    +     * <code>this != value</code>
    +     * <p>
    +     * If <code>value == null</code>, then this will return a condition
    +     * equivalent to {@link #isNotNull()} for convenience. SQL's ternary
    +     * <code>NULL</code> logic is rarely of use for Java programmers.
    +     */
    +    @Support
    +    Condition notEqual(T value);
    +
    +    /**
    +     * <code>this != field</code>
    +     */
    +    @Support
    +    Condition notEqual(Field<T> field);
    +
    +    /**
    +     * <code>lower(this) != lower(value)</code>
    +     */
    +    @Support
    +    Condition notEqualIgnoreCase(String value);
    +
    +    /**
    +     * <code>lower(this) != lower(value)</code>
    +     */
    +    @Support
    +    Condition notEqualIgnoreCase(Field<String> value);
    +
    +    /**
    +     * <code>this != (Select<?> ...)</code>
    +     */
    +    @Support
    +    Condition notEqual(Select<?> query);
    +
    +    /**
    +     * <code>this != any (Select<?> ...)</code>
    +     */
    +    @Support({ ASE, CUBRID, DB2, DERBY, H2, HSQLDB, INGRES, MYSQL, ORACLE, POSTGRES, SQLSERVER, SYBASE })
    +    Condition notEqualAny(Select<?> query);
    +
    +    /**
    +     * <code>this != any (array)</code>
    +     * <p>
    +     * This is natively supported by {@link SQLDialect#POSTGRES}. Other dialects
    +     * will render a subselect unnesting the array.
    +     */
    +    @Support({ ASE, CUBRID, DB2, DERBY, H2, HSQLDB, INGRES, MYSQL, ORACLE, POSTGRES, SQLSERVER, SYBASE })
    +    Condition notEqualAny(T... array);
    +
    +    /**
    +     * <code>this != any (array)</code>
    +     * <p>
    +     * This is natively supported by {@link SQLDialect#POSTGRES}. Other dialects
    +     * will render a subselect unnesting the array.
    +     */
    +    @Support({ H2, HSQLDB, POSTGRES })
    +    Condition notEqualAny(Field<T[]> array);
    +
    +    /**
    +     * <code>this != some (Select<?> ...)</code>
    +     *
    +     * @deprecated - 2.0.2 - Use {@link #notEqualAny(Select)} instead
    +     */
    +    @Deprecated
    +    @Support({ ASE, CUBRID, DB2, DERBY, H2, HSQLDB, INGRES, MYSQL, ORACLE, POSTGRES, SQLSERVER, SYBASE })
    +    Condition notEqualSome(Select<?> query);
    +
    +    /**
    +     * <code>this != all (Select<?> ...)</code>
    +     */
    +    @Support({ ASE, CUBRID, DB2, DERBY, H2, HSQLDB, INGRES, MYSQL, ORACLE, POSTGRES, SQLSERVER, SYBASE })
    +    Condition notEqualAll(Select<?> query);
    +
    +    /**
    +     * <code>this != all (array)</code>
    +     * <p>
    +     * This is natively supported by {@link SQLDialect#POSTGRES}. Other dialects
    +     * will render a subselect unnesting the array.
    +     */
    +    @Support({ ASE, CUBRID, DB2, DERBY, H2, HSQLDB, INGRES, MYSQL, ORACLE, POSTGRES, SQLSERVER, SYBASE })
    +    Condition notEqualAll(T... array);
    +
    +    /**
    +     * <code>this != all (array)</code>
    +     * <p>
    +     * This is natively supported by {@link SQLDialect#POSTGRES}. Other dialects
    +     * will render a subselect unnesting the array.
    +     */
    +    @Support({ H2, HSQLDB, POSTGRES })
    +    Condition notEqualAll(Field<T[]> array);
    +
    +    /**
    +     * <code>this < value</code>
    +     */
    +    @Support
    +    Condition lessThan(T value);
    +
    +    /**
    +     * <code>this < field</code>
    +     */
    +    @Support
    +    Condition lessThan(Field<T> field);
    +
    +    /**
    +     * <code>this < (Select<?> ...)</code>
    +     */
    +    @Support
    +    Condition lessThan(Select<?> query);
    +
    +    /**
    +     * <code>this < any (Select<?> ...)</code>
    +     */
    +    @Support({ ASE, CUBRID, DB2, DERBY, H2, HSQLDB, INGRES, MYSQL, ORACLE, POSTGRES, SQLSERVER, SYBASE })
    +    Condition lessThanAny(Select<?> query);
    +
    +    /**
    +     * <code>this < any (array)</code>
    +     * <p>
    +     * This is natively supported by {@link SQLDialect#POSTGRES}. Other dialects
    +     * will render a subselect unnesting the array.
    +     */
    +    @Support({ ASE, CUBRID, DB2, DERBY, H2, HSQLDB, INGRES, MYSQL, ORACLE, POSTGRES, SQLSERVER, SYBASE })
    +    Condition lessThanAny(T... array);
    +
    +    /**
    +     * <code>this < any (array)</code>
    +     * <p>
    +     * This is natively supported by {@link SQLDialect#POSTGRES}. Other dialects
    +     * will render a subselect unnesting the array.
    +     */
    +    @Support({ H2, HSQLDB, POSTGRES })
    +    Condition lessThanAny(Field<T[]> array);
    +
    +    /**
    +     * <code>this < some (Select<?> ...)</code>
    +     *
    +     * @deprecated - 2.0.2 - Use {@link #lessThanAny(Select)} instead
    +     */
    +    @Deprecated
    +    @Support({ ASE, CUBRID, DB2, DERBY, H2, HSQLDB, INGRES, MYSQL, ORACLE, POSTGRES, SQLSERVER, SYBASE })
    +    Condition lessThanSome(Select<?> query);
    +
    +    /**
    +     * <code>this < all (Select<?> ...)</code>
    +     */
    +    @Support({ ASE, CUBRID, DB2, DERBY, H2, HSQLDB, INGRES, MYSQL, ORACLE, POSTGRES, SQLSERVER, SYBASE })
    +    Condition lessThanAll(Select<?> query);
    +
    +    /**
    +     * <code>this < all (array)</code>
    +     * <p>
    +     * This is natively supported by {@link SQLDialect#POSTGRES}. Other dialects
    +     * will render a subselect unnesting the array.
    +     */
    +    @Support({ ASE, CUBRID, DB2, DERBY, H2, HSQLDB, INGRES, MYSQL, ORACLE, POSTGRES, SQLSERVER, SYBASE })
    +    Condition lessThanAll(T... array);
    +
    +    /**
    +     * <code>this < all (array)</code>
    +     * <p>
    +     * This is natively supported by {@link SQLDialect#POSTGRES}. Other dialects
    +     * will render a subselect unnesting the array.
    +     */
    +    @Support({ H2, HSQLDB, POSTGRES })
    +    Condition lessThanAll(Field<T[]> array);
    +
    +    /**
    +     * <code>this <= value</code>
    +     */
    +    @Support
    +    Condition lessOrEqual(T value);
    +
    +    /**
    +     * <code>this <= field</code>
    +     */
    +    @Support
    +    Condition lessOrEqual(Field<T> field);
    +
    +    /**
    +     * <code>this <= (Select<?> ...)</code>
    +     */
    +    @Support
    +    Condition lessOrEqual(Select<?> query);
    +
    +    /**
    +     * <code>this <= any (Select<?> ...)</code>
    +     */
    +    @Support({ ASE, CUBRID, DB2, DERBY, H2, HSQLDB, INGRES, MYSQL, ORACLE, POSTGRES, SQLSERVER, SYBASE })
    +    Condition lessOrEqualAny(Select<?> query);
    +
    +    /**
    +     * <code>this <= any (array)</code>
    +     * <p>
    +     * This is natively supported by {@link SQLDialect#POSTGRES}. Other dialects
    +     * will render a subselect unnesting the array.
    +     */
    +    @Support({ ASE, CUBRID, DB2, DERBY, H2, HSQLDB, INGRES, MYSQL, ORACLE, POSTGRES, SQLSERVER, SYBASE })
    +    Condition lessOrEqualAny(T... array);
    +
    +    /**
    +     * <code>this <= any (array)</code>
    +     * <p>
    +     * This is natively supported by {@link SQLDialect#POSTGRES}. Other dialects
    +     * will render a subselect unnesting the array.
    +     */
    +    @Support({ H2, HSQLDB, POSTGRES })
    +    Condition lessOrEqualAny(Field<T[]> array);
    +
    +    /**
    +     * <code>this <= some (Select<?> ...)</code>
    +     *
    +     * @deprecated - 2.0.2 - Use {@link #lessOrEqualAny(Select)} instead
    +     */
    +    @Deprecated
    +    @Support({ ASE, CUBRID, DB2, DERBY, H2, HSQLDB, INGRES, MYSQL, ORACLE, POSTGRES, SQLSERVER, SYBASE })
    +    Condition lessOrEqualSome(Select<?> query);
    +
    +    /**
    +     * <code>this <= all (Select<?> ...)</code>
    +     */
    +    @Support({ ASE, CUBRID, DB2, DERBY, H2, HSQLDB, INGRES, MYSQL, ORACLE, POSTGRES, SQLSERVER, SYBASE })
    +    Condition lessOrEqualAll(Select<?> query);
    +
    +    /**
    +     * <code>this <= all (array)</code>
    +     * <p>
    +     * This is natively supported by {@link SQLDialect#POSTGRES}. Other dialects
    +     * will render a subselect unnesting the array.
    +     */
    +    @Support({ ASE, CUBRID, DB2, DERBY, H2, HSQLDB, INGRES, MYSQL, ORACLE, POSTGRES, SQLSERVER, SYBASE })
    +    Condition lessOrEqualAll(T... array);
    +
    +    /**
    +     * <code>this <= all (array)</code>
    +     * <p>
    +     * This is natively supported by {@link SQLDialect#POSTGRES}. Other dialects
    +     * will render a subselect unnesting the array.
    +     */
    +    @Support({ H2, HSQLDB, POSTGRES })
    +    Condition lessOrEqualAll(Field<T[]> array);
    +
    +    /**
    +     * <code>this > value</code>
    +     */
    +    @Support
    +    Condition greaterThan(T value);
    +
    +    /**
    +     * <code>this > field</code>
    +     */
    +    @Support
    +    Condition greaterThan(Field<T> field);
    +
    +    /**
    +     * <code>this > (Select<?> ...)</code>
    +     */
    +    @Support
    +    Condition greaterThan(Select<?> query);
    +
    +    /**
    +     * <code>this > any (Select<?> ...)</code>
    +     */
    +    @Support({ ASE, CUBRID, DB2, DERBY, H2, HSQLDB, INGRES, MYSQL, ORACLE, POSTGRES, SQLSERVER, SYBASE })
    +    Condition greaterThanAny(Select<?> query);
    +
    +    /**
    +     * <code>this > any (array)</code>
    +     * <p>
    +     * This is natively supported by {@link SQLDialect#POSTGRES}. Other dialects
    +     * will render a subselect unnesting the array.
    +     */
    +    @Support({ ASE, CUBRID, DB2, DERBY, H2, HSQLDB, INGRES, MYSQL, ORACLE, POSTGRES, SQLSERVER, SYBASE })
    +    Condition greaterThanAny(T... array);
    +
    +    /**
    +     * <code>this > any (array)</code>
    +     * <p>
    +     * This is natively supported by {@link SQLDialect#POSTGRES}. Other dialects
    +     * will render a subselect unnesting the array.
    +     */
    +    @Support({ H2, HSQLDB, POSTGRES })
    +    Condition greaterThanAny(Field<T[]> array);
    +
    +    /**
    +     * <code>this > some (Select<?> ...)</code>
    +     *
    +     * @deprecated - 2.0.2 - Use {@link #greaterThanAny(Select)} instead
    +     */
    +    @Deprecated
    +    @Support({ ASE, CUBRID, DB2, DERBY, H2, HSQLDB, INGRES, MYSQL, ORACLE, POSTGRES, SQLSERVER, SYBASE })
    +    Condition greaterThanSome(Select<?> query);
    +
    +    /**
    +     * <code>this > all (Select<?> ...)</code>
    +     */
    +    @Support({ ASE, CUBRID, DB2, DERBY, H2, HSQLDB, INGRES, MYSQL, ORACLE, POSTGRES, SQLSERVER, SYBASE })
    +    Condition greaterThanAll(Select<?> query);
    +
    +    /**
    +     * <code>this > all (array)</code>
    +     * <p>
    +     * This is natively supported by {@link SQLDialect#POSTGRES}. Other dialects
    +     * will render a subselect unnesting the array.
    +     */
    +    @Support({ ASE, CUBRID, DB2, DERBY, H2, HSQLDB, INGRES, MYSQL, ORACLE, POSTGRES, SQLSERVER, SYBASE })
    +    Condition greaterThanAll(T... array);
    +
    +    /**
    +     * <code>this > all (array)</code>
    +     * <p>
    +     * This is natively supported by {@link SQLDialect#POSTGRES}. Other dialects
    +     * will render a subselect unnesting the array.
    +     */
    +    @Support({ H2, HSQLDB, POSTGRES })
    +    Condition greaterThanAll(Field<T[]> array);
    +
    +    /**
    +     * <code>this >= value</code>
    +     */
    +    @Support
    +    Condition greaterOrEqual(T value);
    +
    +    /**
    +     * <code>this >= field</code>
    +     */
    +    @Support
    +    Condition greaterOrEqual(Field<T> field);
    +
    +    /**
    +     * <code>this >= (Select<?> ...)</code>
    +     */
    +    @Support
    +    Condition greaterOrEqual(Select<?> query);
    +
    +    /**
    +     * <code>this >= any (Select<?> ...)</code>
    +     */
    +    @Support({ ASE, CUBRID, DB2, DERBY, H2, HSQLDB, INGRES, MYSQL, ORACLE, POSTGRES, SQLSERVER, SYBASE })
    +    Condition greaterOrEqualAny(Select<?> query);
    +
    +    /**
    +     * <code>this >= any (array)</code>
    +     * <p>
    +     * This is natively supported by {@link SQLDialect#POSTGRES}. Other dialects
    +     * will render a subselect unnesting the array.
    +     */
    +    @Support({ ASE, CUBRID, DB2, DERBY, H2, HSQLDB, INGRES, MYSQL, ORACLE, POSTGRES, SQLSERVER, SYBASE })
    +    Condition greaterOrEqualAny(T... array);
    +
    +    /**
    +     * <code>this >= any (array)</code>
    +     * <p>
    +     * This is natively supported by {@link SQLDialect#POSTGRES}. Other dialects
    +     * will render a subselect unnesting the array.
    +     */
    +    @Support({ H2, HSQLDB, POSTGRES })
    +    Condition greaterOrEqualAny(Field<T[]> array);
    +
    +    /**
    +     * <code>this >= some (Select<?> ...)</code>
    +     *
    +     * @deprecated - 2.0.2 - Use {@link #greaterOrEqualAny(Select)} instead
    +     */
    +    @Deprecated
    +    @Support({ ASE, CUBRID, DB2, DERBY, H2, HSQLDB, INGRES, MYSQL, ORACLE, POSTGRES, SQLSERVER, SYBASE })
    +    Condition greaterOrEqualSome(Select<?> query);
    +
    +    /**
    +     * <code>this >= all (Select<?> ...)</code>
    +     */
    +    @Support({ ASE, CUBRID, DB2, DERBY, H2, HSQLDB, INGRES, MYSQL, ORACLE, POSTGRES, SQLSERVER, SYBASE })
    +    Condition greaterOrEqualAll(Select<?> query);
    +
    +    /**
    +     * <code>this >= all (array)</code>
    +     * <p>
    +     * This is natively supported by {@link SQLDialect#POSTGRES}. Other dialects
    +     * will render a subselect unnesting the array.
    +     */
    +    @Support({ ASE, CUBRID, DB2, DERBY, H2, HSQLDB, INGRES, MYSQL, ORACLE, POSTGRES, SQLSERVER, SYBASE })
    +    Condition greaterOrEqualAll(T... array);
    +
    +    /**
    +     * <code>this >= all (array)</code>
    +     * <p>
    +     * This is natively supported by {@link SQLDialect#POSTGRES}. Other dialects
    +     * will render a subselect unnesting the array.
    +     */
    +    @Support({ H2, HSQLDB, POSTGRES })
    +    Condition greaterOrEqualAll(Field<T[]> array);
    +
    +    // ------------------------------------------------------------------------
    +    // Pre-2.0 API. This API is maintained for backwards-compatibility. It will
    +    // be removed in the future. Consider using equivalent methods from
    +    // org.jooq.Factory
    +    // ------------------------------------------------------------------------
    +
    +    /**
    +     * This method is part of the pre-2.0 API. This API is maintained for
    +     * backwards-compatibility. It may be removed in the future. Consider using
    +     * equivalent methods from {@link Factory}
    +     *
    +     * @see Factory#sign(Field)
    +     */
    +    @Support
    +    Field<Integer> sign();
    +
    +    /**
    +     * This method is part of the pre-2.0 API. This API is maintained for
    +     * backwards-compatibility. It may be removed in the future. Consider using
    +     * equivalent methods from {@link Factory}
    +     *
    +     * @see Factory#abs(Field)
    +     */
    +    @Support
    +    Field<T> abs();
    +
    +    /**
    +     * This method is part of the pre-2.0 API. This API is maintained for
    +     * backwards-compatibility. It may be removed in the future. Consider using
    +     * equivalent methods from {@link Factory}
    +     *
    +     * @see Factory#round(Field)
    +     */
    +    @Support
    +    Field<T> round();
    +
    +    /**
    +     * This method is part of the pre-2.0 API. This API is maintained for
    +     * backwards-compatibility. It may be removed in the future. Consider using
    +     * equivalent methods from {@link Factory}
    +     *
    +     * @see Factory#round(Field, int)
    +     */
    +    @Support
    +    Field<T> round(int decimals);
    +
    +    /**
    +     * This method is part of the pre-2.0 API. This API is maintained for
    +     * backwards-compatibility. It may be removed in the future. Consider using
    +     * equivalent methods from {@link Factory}
    +     *
    +     * @see Factory#floor(Field)
    +     */
    +    @Support
    +    Field<T> floor();
    +
    +    /**
    +     * This method is part of the pre-2.0 API. This API is maintained for
    +     * backwards-compatibility. It may be removed in the future. Consider using
    +     * equivalent methods from {@link Factory}
    +     *
    +     * @see Factory#ceil(Field)
    +     */
    +    @Support
    +    Field<T> ceil();
    +
    +    /**
    +     * This method is part of the pre-2.0 API. This API is maintained for
    +     * backwards-compatibility. It may be removed in the future. Consider using
    +     * equivalent methods from {@link Factory}
    +     *
    +     * @see Factory#sqrt(Field)
    +     */
    +    @Support({ ASE, CUBRID, DB2, DERBY, H2, HSQLDB, INGRES, MYSQL, ORACLE, POSTGRES, SQLSERVER, SYBASE })
    +    Field<BigDecimal> sqrt();
    +
    +    /**
    +     * This method is part of the pre-2.0 API. This API is maintained for
    +     * backwards-compatibility. It may be removed in the future. Consider using
    +     * equivalent methods from {@link Factory}
    +     *
    +     * @see Factory#exp(Field)
    +     */
    +    @Support({ ASE, CUBRID, DB2, DERBY, H2, HSQLDB, INGRES, MYSQL, ORACLE, POSTGRES, SQLSERVER, SYBASE })
    +    Field<BigDecimal> exp();
    +
    +    /**
    +     * This method is part of the pre-2.0 API. This API is maintained for
    +     * backwards-compatibility. It may be removed in the future. Consider using
    +     * equivalent methods from {@link Factory}
    +     *
    +     * @see Factory#ln(Field)
    +     */
    +    @Support({ ASE, CUBRID, DB2, DERBY, H2, HSQLDB, INGRES, MYSQL, ORACLE, POSTGRES, SQLSERVER, SYBASE })
    +    Field<BigDecimal> ln();
    +
    +    /**
    +     * This method is part of the pre-2.0 API. This API is maintained for
    +     * backwards-compatibility. It may be removed in the future. Consider using
    +     * equivalent methods from {@link Factory}
    +     *
    +     * @see Factory#log(Field, int)
    +     */
    +    @Support({ ASE, CUBRID, DB2, DERBY, H2, HSQLDB, INGRES, MYSQL, ORACLE, POSTGRES, SQLSERVER, SYBASE })
    +    Field<BigDecimal> log(int base);
    +
    +    /**
    +     * This method is part of the pre-2.0 API. This API is maintained for
    +     * backwards-compatibility. It may be removed in the future. Consider using
    +     * equivalent methods from {@link Factory}
    +     *
    +     * @see Factory#power(Field, Number)
    +     */
    +    @Support({ ASE, CUBRID, DB2, DERBY, H2, HSQLDB, INGRES, MYSQL, ORACLE, POSTGRES, SQLSERVER, SYBASE })
    +    Field<BigDecimal> power(Number exponent);
    +
    +    /**
    +     * This method is part of the pre-2.0 API. This API is maintained for
    +     * backwards-compatibility. It may be removed in the future. Consider using
    +     * equivalent methods from {@link Factory}
    +     *
    +     * @see Factory#acos(Field)
    +     */
    +    @Support({ ASE, CUBRID, DB2, DERBY, H2, HSQLDB, INGRES, MYSQL, ORACLE, POSTGRES, SQLSERVER, SYBASE })
    +    Field<BigDecimal> acos();
    +
    +    /**
    +     * This method is part of the pre-2.0 API. This API is maintained for
    +     * backwards-compatibility. It may be removed in the future. Consider using
    +     * equivalent methods from {@link Factory}
    +     *
    +     * @see Factory#asin(Field)
    +     */
    +    @Support({ ASE, CUBRID, DB2, DERBY, H2, HSQLDB, INGRES, MYSQL, ORACLE, POSTGRES, SQLSERVER, SYBASE })
    +    Field<BigDecimal> asin();
    +
    +    /**
    +     * This method is part of the pre-2.0 API. This API is maintained for
    +     * backwards-compatibility. It may be removed in the future. Consider using
    +     * equivalent methods from {@link Factory}
    +     *
    +     * @see Factory#atan(Field)
    +     */
    +    @Support({ ASE, CUBRID, DB2, DERBY, H2, HSQLDB, INGRES, MYSQL, ORACLE, POSTGRES, SQLSERVER, SYBASE })
    +    Field<BigDecimal> atan();
    +
    +    /**
    +     * This method is part of the pre-2.0 API. This API is maintained for
    +     * backwards-compatibility. It may be removed in the future. Consider using
    +     * equivalent methods from {@link Factory}
    +     *
    +     * @see Factory#atan2(Field, Number)
    +     */
    +    @Support({ ASE, CUBRID, DB2, DERBY, H2, HSQLDB, INGRES, MYSQL, ORACLE, POSTGRES, SQLSERVER, SYBASE })
    +    Field<BigDecimal> atan2(Number y);
    +
    +    /**
    +     * This method is part of the pre-2.0 API. This API is maintained for
    +     * backwards-compatibility. It may be removed in the future. Consider using
    +     * equivalent methods from {@link Factory}
    +     *
    +     * @see Factory#atan2(Field, Field)
    +     */
    +    @Support({ ASE, CUBRID, DB2, DERBY, H2, HSQLDB, INGRES, MYSQL, ORACLE, POSTGRES, SQLSERVER, SYBASE })
    +    Field<BigDecimal> atan2(Field<? extends Number> y);
    +
    +    /**
    +     * This method is part of the pre-2.0 API. This API is maintained for
    +     * backwards-compatibility. It may be removed in the future. Consider using
    +     * equivalent methods from {@link Factory}
    +     *
    +     * @see Factory#cos(Field)
    +     */
    +    @Support({ ASE, CUBRID, DB2, DERBY, H2, HSQLDB, INGRES, MYSQL, ORACLE, POSTGRES, SQLSERVER, SYBASE })
    +    Field<BigDecimal> cos();
    +
    +    /**
    +     * This method is part of the pre-2.0 API. This API is maintained for
    +     * backwards-compatibility. It may be removed in the future. Consider using
    +     * equivalent methods from {@link Factory}
    +     *
    +     * @see Factory#sin(Field)
    +     */
    +    @Support({ ASE, CUBRID, DB2, DERBY, H2, HSQLDB, INGRES, MYSQL, ORACLE, POSTGRES, SQLSERVER, SYBASE })
    +    Field<BigDecimal> sin();
    +
    +    /**
    +     * This method is part of the pre-2.0 API. This API is maintained for
    +     * backwards-compatibility. It may be removed in the future. Consider using
    +     * equivalent methods from {@link Factory}
    +     *
    +     * @see Factory#tan(Field)
    +     */
    +    @Support({ ASE, CUBRID, DB2, DERBY, H2, HSQLDB, INGRES, MYSQL, ORACLE, POSTGRES, SQLSERVER, SYBASE })
    +    Field<BigDecimal> tan();
    +
    +    /**
    +     * This method is part of the pre-2.0 API. This API is maintained for
    +     * backwards-compatibility. It may be removed in the future. Consider using
    +     * equivalent methods from {@link Factory}
    +     *
    +     * @see Factory#cot(Field)
    +     */
    +    @Support({ ASE, CUBRID, DB2, DERBY, H2, HSQLDB, INGRES, MYSQL, ORACLE, POSTGRES, SQLSERVER, SYBASE })
    +    Field<BigDecimal> cot();
    +
    +    /**
    +     * This method is part of the pre-2.0 API. This API is maintained for
    +     * backwards-compatibility. It may be removed in the future. Consider using
    +     * equivalent methods from {@link Factory}
    +     *
    +     * @see Factory#sinh(Field)
    +     */
    +    @Support({ ASE, CUBRID, DB2, DERBY, H2, HSQLDB, INGRES, MYSQL, ORACLE, POSTGRES, SQLSERVER, SYBASE })
    +    Field<BigDecimal> sinh();
    +
    +    /**
    +     * This method is part of the pre-2.0 API. This API is maintained for
    +     * backwards-compatibility. It may be removed in the future. Consider using
    +     * equivalent methods from {@link Factory}
    +     *
    +     * @see Factory#cosh(Field)
    +     */
    +    @Support({ ASE, CUBRID, DB2, DERBY, H2, HSQLDB, INGRES, MYSQL, ORACLE, POSTGRES, SQLSERVER, SYBASE })
    +    Field<BigDecimal> cosh();
    +
    +    /**
    +     * This method is part of the pre-2.0 API. This API is maintained for
    +     * backwards-compatibility. It may be removed in the future. Consider using
    +     * equivalent methods from {@link Factory}
    +     *
    +     * @see Factory#tanh(Field)
    +     */
    +    @Support({ ASE, CUBRID, DB2, DERBY, H2, HSQLDB, INGRES, MYSQL, ORACLE, POSTGRES, SQLSERVER, SYBASE })
    +    Field<BigDecimal> tanh();
    +
    +    /**
    +     * This method is part of the pre-2.0 API. This API is maintained for
    +     * backwards-compatibility. It may be removed in the future. Consider using
    +     * equivalent methods from {@link Factory}
    +     *
    +     * @see Factory#coth(Field)
    +     */
    +    @Support({ ASE, CUBRID, DB2, DERBY, H2, HSQLDB, INGRES, MYSQL, ORACLE, POSTGRES, SQLSERVER, SYBASE })
    +    Field<BigDecimal> coth();
    +
    +    /**
    +     * This method is part of the pre-2.0 API. This API is maintained for
    +     * backwards-compatibility. It may be removed in the future. Consider using
    +     * equivalent methods from {@link Factory}
    +     *
    +     * @see Factory#deg(Field)
    +     */
    +    @Support
    +    Field<BigDecimal> deg();
    +
    +    /**
    +     * This method is part of the pre-2.0 API. This API is maintained for
    +     * backwards-compatibility. It may be removed in the future. Consider using
    +     * equivalent methods from {@link Factory}
    +     *
    +     * @see Factory#rad(Field)
    +     */
    +    @Support
    +    Field<BigDecimal> rad();
    +
    +    /**
    +     * This method is part of the pre-2.0 API. This API is maintained for
    +     * backwards-compatibility. It may be removed in the future. Consider using
    +     * equivalent methods from {@link Factory}
    +     *
    +     * @see Factory#count(Field)
    +     */
    +    @Support
    +    Field<Integer> count();
    +
    +    /**
    +     * This method is part of the pre-2.0 API. This API is maintained for
    +     * backwards-compatibility. It may be removed in the future. Consider using
    +     * equivalent methods from {@link Factory}
    +     *
    +     * @see Factory#countDistinct(Field)
    +     */
    +    @Support
    +    Field<Integer> countDistinct();
    +
    +    /**
    +     * This method is part of the pre-2.0 API. This API is maintained for
    +     * backwards-compatibility. It may be removed in the future. Consider using
    +     * equivalent methods from {@link Factory}
    +     *
    +     * @see Factory#max(Field)
    +     */
    +    @Support
    +    Field<T> max();
    +
    +    /**
    +     * This method is part of the pre-2.0 API. This API is maintained for
    +     * backwards-compatibility. It may be removed in the future. Consider using
    +     * equivalent methods from {@link Factory}
    +     *
    +     * @see Factory#min(Field)
    +     */
    +    @Support
    +    Field<T> min();
    +
    +    /**
    +     * This method is part of the pre-2.0 API. This API is maintained for
    +     * backwards-compatibility. It may be removed in the future. Consider using
    +     * equivalent methods from {@link Factory}
    +     *
    +     * @see Factory#sum(Field)
    +     */
    +    @Support
    +    Field<BigDecimal> sum();
    +
    +    /**
    +     * This method is part of the pre-2.0 API. This API is maintained for
    +     * backwards-compatibility. It may be removed in the future. Consider using
    +     * equivalent methods from {@link Factory}
    +     *
    +     * @see Factory#avg(Field)
    +     */
    +    @Support
    +    Field<BigDecimal> avg();
    +
    +    /**
    +     * This method is part of the pre-2.0 API. This API is maintained for
    +     * backwards-compatibility. It may be removed in the future. Consider using
    +     * equivalent methods from {@link Factory}
    +     *
    +     * @see Factory#median(Field)
    +     */
    +    @Support({ HSQLDB, ORACLE, SYBASE })
    +    Field<BigDecimal> median();
    +
    +    /**
    +     * This method is part of the pre-2.0 API. This API is maintained for
    +     * backwards-compatibility. It may be removed in the future. Consider using
    +     * equivalent methods from {@link Factory}
    +     *
    +     * @see Factory#stddevPop(Field)
    +     */
    +    @Support({ ASE, CUBRID, DB2, H2, HSQLDB, INGRES, MYSQL, ORACLE, POSTGRES, SQLSERVER, SYBASE })
    +    Field<BigDecimal> stddevPop();
    +
    +    /**
    +     * This method is part of the pre-2.0 API. This API is maintained for
    +     * backwards-compatibility. It may be removed in the future. Consider using
    +     * equivalent methods from {@link Factory}
    +     *
    +     * @see Factory#stddevSamp(Field)
    +     */
    +    @Support({ ASE, CUBRID, DB2, H2, HSQLDB, INGRES, MYSQL, ORACLE, POSTGRES, SQLSERVER, SYBASE })
    +    Field<BigDecimal> stddevSamp();
    +
    +    /**
    +     * This method is part of the pre-2.0 API. This API is maintained for
    +     * backwards-compatibility. It may be removed in the future. Consider using
    +     * equivalent methods from {@link Factory}
    +     *
    +     * @see Factory#varPop(Field)
    +     */
    +    @Support({ ASE, CUBRID, DB2, H2, HSQLDB, INGRES, MYSQL, ORACLE, POSTGRES, SQLSERVER, SYBASE })
    +    Field<BigDecimal> varPop();
    +
    +    /**
    +     * This method is part of the pre-2.0 API. This API is maintained for
    +     * backwards-compatibility. It may be removed in the future. Consider using
    +     * equivalent methods from {@link Factory}
    +     *
    +     * @see Factory#varSamp(Field)
    +     */
    +    @Support({ ASE, CUBRID, DB2, H2, HSQLDB, INGRES, MYSQL, ORACLE, POSTGRES, SQLSERVER, SYBASE })
    +    Field<BigDecimal> varSamp();
    +
    +    /**
    +     * This method is part of the pre-2.0 API. This API is maintained for
    +     * backwards-compatibility. It may be removed in the future. Consider using
    +     * equivalent methods from {@link Factory}
    +     *
    +     * @see Factory#count(Field)
    +     * @see AggregateFunction#over()
    +     */
    +    @Support({ DB2, POSTGRES, ORACLE, SQLSERVER, SYBASE })
    +    WindowPartitionByStep<Integer> countOver();
    +
    +    /**
    +     * This method is part of the pre-2.0 API. This API is maintained for
    +     * backwards-compatibility. It may be removed in the future. Consider using
    +     * equivalent methods from {@link Factory}
    +     *
    +     * @see Factory#max(Field)
    +     * @see AggregateFunction#over()
    +     */
    +    @Support({ DB2, POSTGRES, ORACLE, SQLSERVER, SYBASE })
    +    WindowPartitionByStep<T> maxOver();
    +
    +    /**
    +     * This method is part of the pre-2.0 API. This API is maintained for
    +     * backwards-compatibility. It may be removed in the future. Consider using
    +     * equivalent methods from {@link Factory}
    +     *
    +     * @see Factory#min(Field)
    +     * @see AggregateFunction#over()
    +     */
    +    @Support({ DB2, POSTGRES, ORACLE, SQLSERVER, SYBASE })
    +    WindowPartitionByStep<T> minOver();
    +
    +    /**
    +     * This method is part of the pre-2.0 API. This API is maintained for
    +     * backwards-compatibility. It may be removed in the future. Consider using
    +     * equivalent methods from {@link Factory}
    +     *
    +     * @see Factory#sum(Field)
    +     * @see AggregateFunction#over()
    +     */
    +    @Support({ DB2, POSTGRES, ORACLE, SQLSERVER, SYBASE })
    +    WindowPartitionByStep<BigDecimal> sumOver();
    +
    +    /**
    +     * This method is part of the pre-2.0 API. This API is maintained for
    +     * backwards-compatibility. It may be removed in the future. Consider using
    +     * equivalent methods from {@link Factory}
    +     *
    +     * @see Factory#avg(Field)
    +     * @see AggregateFunction#over()
    +     */
    +    @Support({ DB2, POSTGRES, ORACLE, SQLSERVER, SYBASE })
    +    WindowPartitionByStep<BigDecimal> avgOver();
    +
    +    /**
    +     * This method is part of the pre-2.0 API. This API is maintained for
    +     * backwards-compatibility. It may be removed in the future. Consider using
    +     * equivalent methods from {@link Factory}
    +     *
    +     * @see Factory#firstValue(Field)
    +     * @see AggregateFunction#over()
    +     */
    +    @Support({ DB2, POSTGRES, ORACLE, SYBASE })
    +    WindowIgnoreNullsStep<T> firstValue();
    +
    +    /**
    +     * This method is part of the pre-2.0 API. This API is maintained for
    +     * backwards-compatibility. It may be removed in the future. Consider using
    +     * equivalent methods from {@link Factory}
    +     *
    +     * @see Factory#lastValue(Field)
    +     * @see AggregateFunction#over()
    +     */
    +    @Support({ DB2, POSTGRES, ORACLE, SYBASE })
    +    WindowIgnoreNullsStep<T> lastValue();
    +
    +    /**
    +     * This method is part of the pre-2.0 API. This API is maintained for
    +     * backwards-compatibility. It may be removed in the future. Consider using
    +     * equivalent methods from {@link Factory}
    +     *
    +     * @see Factory#lead(Field)
    +     * @see AggregateFunction#over()
    +     */
    +    @Support({ DB2, POSTGRES, ORACLE })
    +    WindowIgnoreNullsStep<T> lead();
    +
    +    /**
    +     * This method is part of the pre-2.0 API. This API is maintained for
    +     * backwards-compatibility. It may be removed in the future. Consider using
    +     * equivalent methods from {@link Factory}
    +     *
    +     * @see Factory#lead(Field, int)
    +     * @see AggregateFunction#over()
    +     */
    +    @Support({ DB2, POSTGRES, ORACLE })
    +    WindowIgnoreNullsStep<T> lead(int offset);
    +
    +    /**
    +     * This method is part of the pre-2.0 API. This API is maintained for
    +     * backwards-compatibility. It may be removed in the future. Consider using
    +     * equivalent methods from {@link Factory}
    +     *
    +     * @see Factory#lead(Field, int, Object)
    +     * @see AggregateFunction#over()
    +     */
    +    @Support({ DB2, POSTGRES, ORACLE })
    +    WindowIgnoreNullsStep<T> lead(int offset, T defaultValue);
    +
    +    /**
    +     * This method is part of the pre-2.0 API. This API is maintained for
    +     * backwards-compatibility. It may be removed in the future. Consider using
    +     * equivalent methods from {@link Factory}
    +     *
    +     * @see Factory#lead(Field, int, Field)
    +     * @see AggregateFunction#over()
    +     */
    +    @Support({ DB2, POSTGRES, ORACLE })
    +    WindowIgnoreNullsStep<T> lead(int offset, Field<T> defaultValue);
    +
    +    /**
    +     * This method is part of the pre-2.0 API. This API is maintained for
    +     * backwards-compatibility. It may be removed in the future. Consider using
    +     * equivalent methods from {@link Factory}
    +     *
    +     * @see Factory#lag(Field)
    +     * @see AggregateFunction#over()
    +     */
    +    @Support({ DB2, POSTGRES, ORACLE })
    +    WindowIgnoreNullsStep<T> lag();
    +
    +    /**
    +     * This method is part of the pre-2.0 API. This API is maintained for
    +     * backwards-compatibility. It may be removed in the future. Consider using
    +     * equivalent methods from {@link Factory}
    +     *
    +     * @see Factory#lag(Field, int)
    +     * @see AggregateFunction#over()
    +     */
    +    @Support({ DB2, POSTGRES, ORACLE })
    +    WindowIgnoreNullsStep<T> lag(int offset);
    +
    +    /**
    +     * This method is part of the pre-2.0 API. This API is maintained for
    +     * backwards-compatibility. It may be removed in the future. Consider using
    +     * equivalent methods from {@link Factory}
    +     *
    +     * @see Factory#lag(Field, int, Object)
    +     * @see AggregateFunction#over()
    +     */
    +    @Support({ DB2, POSTGRES, ORACLE })
    +    WindowIgnoreNullsStep<T> lag(int offset, T defaultValue);
    +
    +    /**
    +     * This method is part of the pre-2.0 API. This API is maintained for
    +     * backwards-compatibility. It may be removed in the future. Consider using
    +     * equivalent methods from {@link Factory}
    +     *
    +     * @see Factory#lag(Field, int, Field)
    +     * @see AggregateFunction#over()
    +     */
    +    @Support({ DB2, POSTGRES, ORACLE })
    +    WindowIgnoreNullsStep<T> lag(int offset, Field<T> defaultValue);
    +
    +    /**
    +     * This method is part of the pre-2.0 API. This API is maintained for
    +     * backwards-compatibility. It may be removed in the future. Consider using
    +     * equivalent methods from {@link Factory}
    +     *
    +     * @see Factory#stddevPop(Field)
    +     * @see AggregateFunction#over()
    +     */
    +    @Support({ DB2, POSTGRES, ORACLE, SQLSERVER, SYBASE })
    +    WindowPartitionByStep<BigDecimal> stddevPopOver();
    +
    +    /**
    +     * This method is part of the pre-2.0 API. This API is maintained for
    +     * backwards-compatibility. It may be removed in the future. Consider using
    +     * equivalent methods from {@link Factory}
    +     *
    +     * @see Factory#stddevSamp(Field)
    +     * @see AggregateFunction#over()
    +     */
    +    @Support({ DB2, POSTGRES, ORACLE, SQLSERVER, SYBASE })
    +    WindowPartitionByStep<BigDecimal> stddevSampOver();
    +
    +    /**
    +     * This method is part of the pre-2.0 API. This API is maintained for
    +     * backwards-compatibility. It may be removed in the future. Consider using
    +     * equivalent methods from {@link Factory}
    +     *
    +     * @see Factory#varPop(Field)
    +     * @see AggregateFunction#over()
    +     */
    +    @Support({ DB2, POSTGRES, ORACLE, SQLSERVER, SYBASE })
    +    WindowPartitionByStep<BigDecimal> varPopOver();
    +
    +    /**
    +     * This method is part of the pre-2.0 API. This API is maintained for
    +     * backwards-compatibility. It may be removed in the future. Consider using
    +     * equivalent methods from {@link Factory}
    +     *
    +     * @see Factory#varSamp(Field)
    +     * @see AggregateFunction#over()
    +     */
    +    @Support({ DB2, POSTGRES, ORACLE, SQLSERVER, SYBASE })
    +    WindowPartitionByStep<BigDecimal> varSampOver();
    +
    +    /**
    +     * This method is part of the pre-2.0 API. This API is maintained for
    +     * backwards-compatibility. It may be removed in the future. Consider using
    +     * equivalent methods from {@link Factory}
    +     *
    +     * @see Factory#upper(Field)
    +     */
    +    @Support
    +    Field<String> upper();
    +
    +    /**
    +     * This method is part of the pre-2.0 API. This API is maintained for
    +     * backwards-compatibility. It may be removed in the future. Consider using
    +     * equivalent methods from {@link Factory}
    +     *
    +     * @see Factory#lower(Field)
    +     */
    +    @Support
    +    Field<String> lower();
    +
    +    /**
    +     * This method is part of the pre-2.0 API. This API is maintained for
    +     * backwards-compatibility. It may be removed in the future. Consider using
    +     * equivalent methods from {@link Factory}
    +     *
    +     * @see Factory#trim(Field)
    +     */
    +    @Support
    +    Field<String> trim();
    +
    +    /**
    +     * This method is part of the pre-2.0 API. This API is maintained for
    +     * backwards-compatibility. It may be removed in the future. Consider using
    +     * equivalent methods from {@link Factory}
    +     *
    +     * @see Factory#rtrim(Field)
    +     */
    +    @Support
    +    Field<String> rtrim();
    +
    +    /**
    +     * This method is part of the pre-2.0 API. This API is maintained for
    +     * backwards-compatibility. It may be removed in the future. Consider using
    +     * equivalent methods from {@link Factory}
    +     *
    +     * @see Factory#ltrim(Field)
    +     */
    +    @Support
    +    Field<String> ltrim();
    +
    +    /**
    +     * This method is part of the pre-2.0 API. This API is maintained for
    +     * backwards-compatibility. It may be removed in the future. Consider using
    +     * equivalent methods from {@link Factory}
    +     *
    +     * @see Factory#rpad(Field, Field)
    +     */
    +    @Support({ ASE, CUBRID, DB2, H2, HSQLDB, INGRES, MYSQL, ORACLE, POSTGRES, SQLSERVER, SYBASE })
    +    Field<String> rpad(Field<? extends Number> length);
    +
    +    /**
    +     * This method is part of the pre-2.0 API. This API is maintained for
    +     * backwards-compatibility. It may be removed in the future. Consider using
    +     * equivalent methods from {@link Factory}
    +     *
    +     * @see Factory#rpad(Field, int)
    +     */
    +    @Support({ ASE, CUBRID, DB2, H2, HSQLDB, INGRES, MYSQL, ORACLE, POSTGRES, SQLSERVER, SYBASE })
    +    Field<String> rpad(int length);
    +
    +    /**
    +     * This method is part of the pre-2.0 API. This API is maintained for
    +     * backwards-compatibility. It may be removed in the future. Consider using
    +     * equivalent methods from {@link Factory}
    +     *
    +     * @see Factory#rpad(Field, Field, Field)
    +     */
    +    @Support({ ASE, CUBRID, DB2, H2, HSQLDB, INGRES, MYSQL, ORACLE, POSTGRES, SQLSERVER, SYBASE })
    +    Field<String> rpad(Field<? extends Number> length, Field<String> character);
    +
    +    /**
    +     * This method is part of the pre-2.0 API. This API is maintained for
    +     * backwards-compatibility. It may be removed in the future. Consider using
    +     * equivalent methods from {@link Factory}
    +     *
    +     * @see Factory#rpad(Field, int, char)
    +     */
    +    @Support({ ASE, CUBRID, DB2, H2, HSQLDB, INGRES, MYSQL, ORACLE, POSTGRES, SQLSERVER, SYBASE })
    +    Field<String> rpad(int length, char character);
    +
    +    /**
    +     * This method is part of the pre-2.0 API. This API is maintained for
    +     * backwards-compatibility. It may be removed in the future. Consider using
    +     * equivalent methods from {@link Factory}
    +     *
    +     * @see Factory#lpad(Field, Field)
    +     */
    +    @Support({ ASE, CUBRID, DB2, H2, HSQLDB, INGRES, MYSQL, ORACLE, POSTGRES, SQLSERVER, SYBASE })
    +    Field<String> lpad(Field<? extends Number> length);
    +
    +    /**
    +     * This method is part of the pre-2.0 API. This API is maintained for
    +     * backwards-compatibility. It may be removed in the future. Consider using
    +     * equivalent methods from {@link Factory}
    +     *
    +     * @see Factory#lpad(Field, int)
    +     */
    +    @Support({ ASE, CUBRID, DB2, H2, HSQLDB, INGRES, MYSQL, ORACLE, POSTGRES, SQLSERVER, SYBASE })
    +    Field<String> lpad(int length);
    +
    +    /**
    +     * This method is part of the pre-2.0 API. This API is maintained for
    +     * backwards-compatibility. It may be removed in the future. Consider using
    +     * equivalent methods from {@link Factory}
    +     *
    +     * @see Factory#lpad(Field, Field, Field)
    +     */
    +    @Support({ ASE, CUBRID, DB2, H2, HSQLDB, INGRES, MYSQL, ORACLE, POSTGRES, SQLSERVER, SYBASE })
    +    Field<String> lpad(Field<? extends Number> length, Field<String> character);
    +
    +    /**
    +     * This method is part of the pre-2.0 API. This API is maintained for
    +     * backwards-compatibility. It may be removed in the future. Consider using
    +     * equivalent methods from {@link Factory}
    +     *
    +     * @see Factory#lpad(Field, int, char)
    +     */
    +    @Support({ ASE, CUBRID, DB2, H2, HSQLDB, INGRES, MYSQL, ORACLE, POSTGRES, SQLSERVER, SYBASE })
    +    Field<String> lpad(int length, char character);
    +
    +    /**
    +     * This method is part of the pre-2.0 API. This API is maintained for
    +     * backwards-compatibility. It may be removed in the future. Consider using
    +     * equivalent methods from {@link Factory}
    +     *
    +     * @see Factory#repeat(Field, int)
    +     */
    +    @Support({ ASE, CUBRID, DB2, H2, HSQLDB, INGRES, MYSQL, ORACLE, POSTGRES, SQLSERVER, SYBASE })
    +    Field<String> repeat(Number count);
    +
    +    /**
    +     * This method is part of the pre-2.0 API. This API is maintained for
    +     * backwards-compatibility. It may be removed in the future. Consider using
    +     * equivalent methods from {@link Factory}
    +     *
    +     * @see Factory#repeat(Field, Field)
    +     */
    +    @Support({ ASE, CUBRID, DB2, H2, HSQLDB, INGRES, MYSQL, ORACLE, POSTGRES, SQLSERVER, SYBASE })
    +    Field<String> repeat(Field<? extends Number> count);
    +
    +    /**
    +     * This method is part of the pre-2.0 API. This API is maintained for
    +     * backwards-compatibility. It may be removed in the future. Consider using
    +     * equivalent methods from {@link Factory}
    +     *
    +     * @see Factory#replace(Field, Field)
    +     */
    +    @Support({ ASE, CUBRID, DB2, H2, HSQLDB, INGRES, MYSQL, ORACLE, POSTGRES, SQLSERVER, SYBASE, SQLITE })
    +    Field<String> replace(Field<String> search);
    +
    +    /**
    +     * This method is part of the pre-2.0 API. This API is maintained for
    +     * backwards-compatibility. It may be removed in the future. Consider using
    +     * equivalent methods from {@link Factory}
    +     *
    +     * @see Factory#replace(Field, String)
    +     */
    +    @Support({ ASE, CUBRID, DB2, H2, HSQLDB, INGRES, MYSQL, ORACLE, POSTGRES, SQLSERVER, SYBASE, SQLITE })
    +    Field<String> replace(String search);
    +
    +    /**
    +     * This method is part of the pre-2.0 API. This API is maintained for
    +     * backwards-compatibility. It may be removed in the future. Consider using
    +     * equivalent methods from {@link Factory}
    +     *
    +     * @see Factory#replace(Field, Field, Field)
    +     */
    +    @Support({ ASE, CUBRID, DB2, H2, HSQLDB, INGRES, MYSQL, ORACLE, POSTGRES, SQLSERVER, SYBASE, SQLITE })
    +    Field<String> replace(Field<String> search, Field<String> replace);
    +
    +    /**
    +     * This method is part of the pre-2.0 API. This API is maintained for
    +     * backwards-compatibility. It may be removed in the future. Consider using
    +     * equivalent methods from {@link Factory}
    +     *
    +     * @see Factory#replace(Field, String, String)
    +     */
    +    @Support({ ASE, CUBRID, DB2, H2, HSQLDB, INGRES, MYSQL, ORACLE, POSTGRES, SQLSERVER, SYBASE, SQLITE })
    +    Field<String> replace(String search, String replace);
    +
    +    /**
    +     * This method is part of the pre-2.0 API. This API is maintained for
    +     * backwards-compatibility. It may be removed in the future. Consider using
    +     * equivalent methods from {@link Factory}
    +     *
    +     * @see Factory#position(Field, String)
    +     */
    +    @Support({ ASE, CUBRID, DB2, DERBY, H2, HSQLDB, INGRES, MYSQL, ORACLE, POSTGRES, SQLSERVER, SYBASE })
    +    Field<Integer> position(String search);
    +
    +    /**
    +     * This method is part of the pre-2.0 API. This API is maintained for
    +     * backwards-compatibility. It may be removed in the future. Consider using
    +     * equivalent methods from {@link Factory}
    +     *
    +     * @see Factory#position(Field, Field)
    +     */
    +    @Support({ ASE, CUBRID, DB2, DERBY, H2, HSQLDB, INGRES, MYSQL, ORACLE, POSTGRES, SQLSERVER, SYBASE })
    +    Field<Integer> position(Field<String> search);
    +
    +    /**
    +     * This method is part of the pre-2.0 API. This API is maintained for
    +     * backwards-compatibility. It may be removed in the future. Consider using
    +     * equivalent methods from {@link Factory}
    +     *
    +     * @see Factory#ascii(Field)
    +     */
    +    @Support({ ASE, CUBRID, DB2, H2, HSQLDB, MYSQL, ORACLE, POSTGRES, SQLSERVER, SYBASE })
    +    Field<Integer> ascii();
    +
    +    /**
    +     * This method is part of the pre-2.0 API. This API is maintained for
    +     * backwards-compatibility. It may be removed in the future. Consider using
    +     * equivalent methods from {@link Factory}
    +     *
    +     * @see Factory#concat(Field...)
    +     */
    +    @Support
    +    Field<String> concat(Field<?>... fields);
    +
    +    /**
    +     * This method is part of the pre-2.0 API. This API is maintained for
    +     * backwards-compatibility. It may be removed in the future. Consider using
    +     * equivalent methods from {@link Factory}
    +     *
    +     * @see Factory#concat(String...)
    +     */
    +    @Support
    +    Field<String> concat(String... values);
    +
    +    /**
    +     * This method is part of the pre-2.0 API. This API is maintained for
    +     * backwards-compatibility. It may be removed in the future. Consider using
    +     * equivalent methods from {@link Factory}
    +     *
    +     * @see Factory#substring(Field, int)
    +     */
    +    @Support
    +    Field<String> substring(int startingPosition);
    +
    +    /**
    +     * This method is part of the pre-2.0 API. This API is maintained for
    +     * backwards-compatibility. It may be removed in the future. Consider using
    +     * equivalent methods from {@link Factory}
    +     *
    +     * @see Factory#substring(Field, Field)
    +     */
    +    @Support
    +    Field<String> substring(Field<? extends Number> startingPosition);
    +
    +    /**
    +     * This method is part of the pre-2.0 API. This API is maintained for
    +     * backwards-compatibility. It may be removed in the future. Consider using
    +     * equivalent methods from {@link Factory}
    +     *
    +     * @see Factory#substring(Field, int, int)
    +     */
    +    @Support
    +    Field<String> substring(int startingPosition, int length);
    +
    +    /**
    +     * This method is part of the pre-2.0 API. This API is maintained for
    +     * backwards-compatibility. It may be removed in the future. Consider using
    +     * equivalent methods from {@link Factory}
    +     *
    +     * @see Factory#substring(Field, Field, Field)
    +     */
    +    @Support
    +    Field<String> substring(Field<? extends Number> startingPosition, Field<? extends Number> length);
    +
    +    /**
    +     * This method is part of the pre-2.0 API. This API is maintained for
    +     * backwards-compatibility. It may be removed in the future. Consider using
    +     * equivalent methods from {@link Factory}
    +     *
    +     * @see Factory#length(Field)
    +     */
    +    @Support
    +    Field<Integer> length();
    +
    +    /**
    +     * This method is part of the pre-2.0 API. This API is maintained for
    +     * backwards-compatibility. It may be removed in the future. Consider using
    +     * equivalent methods from {@link Factory}
    +     *
    +     * @see Factory#charLength(Field)
    +     */
    +    @Support
    +    Field<Integer> charLength();
    +
    +    /**
    +     * This method is part of the pre-2.0 API. This API is maintained for
    +     * backwards-compatibility. It may be removed in the future. Consider using
    +     * equivalent methods from {@link Factory}
    +     *
    +     * @see Factory#bitLength(Field)
    +     */
    +    @Support
    +    Field<Integer> bitLength();
    +
    +    /**
    +     * This method is part of the pre-2.0 API. This API is maintained for
    +     * backwards-compatibility. It may be removed in the future. Consider using
    +     * equivalent methods from {@link Factory}
    +     *
    +     * @see Factory#octetLength(Field)
    +     */
    +    @Support
    +    Field<Integer> octetLength();
    +
    +    /**
    +     * This method is part of the pre-2.0 API. This API is maintained for
    +     * backwards-compatibility. It may be removed in the future. Consider using
    +     * equivalent methods from {@link Factory}
    +     *
    +     * @see Factory#extract(Field, DatePart)
    +     */
    +    @Support
    +    Field<Integer> extract(DatePart datePart);
    +
    +    /**
    +     * This method is part of the pre-2.0 API. This API is maintained for
    +     * backwards-compatibility. It may be removed in the future. Consider using
    +     * equivalent methods from {@link Factory}
    +     *
    +     * @see Factory#greatest(Field, Field...)
    +     */
    +    @Support
    +    Field<T> greatest(T... others);
    +
    +    /**
    +     * This method is part of the pre-2.0 API. This API is maintained for
    +     * backwards-compatibility. It may be removed in the future. Consider using
    +     * equivalent methods from {@link Factory}
    +     *
    +     * @see Factory#greatest(Field, Field...)
    +     */
    +    @Support
    +    Field<T> greatest(Field<?>... others);
    +
    +    /**
    +     * This method is part of the pre-2.0 API. This API is maintained for
    +     * backwards-compatibility. It may be removed in the future. Consider using
    +     * equivalent methods from {@link Factory}
    +     *
    +     * @see Factory#least(Field, Field...)
    +     */
    +    @Support
    +    Field<T> least(T... others);
    +
    +    /**
    +     * This method is part of the pre-2.0 API. This API is maintained for
    +     * backwards-compatibility. It may be removed in the future. Consider using
    +     * equivalent methods from {@link Factory}
    +     *
    +     * @see Factory#least(Field, Field...)
    +     */
    +    @Support
    +    Field<T> least(Field<?>... others);
    +
    +    /**
    +     * This method is part of the pre-2.0 API. This API is maintained for
    +     * backwards-compatibility. It may be removed in the future. Consider using
    +     * equivalent methods from {@link Factory}
    +     *
    +     * @see Factory#nvl(Field, Object)
    +     */
    +    @Support
    +    Field<T> nvl(T defaultValue);
    +
    +    /**
    +     * This method is part of the pre-2.0 API. This API is maintained for
    +     * backwards-compatibility. It may be removed in the future. Consider using
    +     * equivalent methods from {@link Factory}
    +     *
    +     * @see Factory#nvl(Field, Field)
    +     */
    +    @Support
    +    Field<T> nvl(Field<T> defaultValue);
    +
    +    /**
    +     * This method is part of the pre-2.0 API. This API is maintained for
    +     * backwards-compatibility. It may be removed in the future. Consider using
    +     * equivalent methods from {@link Factory}
    +     *
    +     * @see Factory#nvl2(Field, Object, Object)
    +     */
    +    @Support
    +    <Z> Field<Z> nvl2(Z valueIfNotNull, Z valueIfNull);
    +
    +    /**
    +     * This method is part of the pre-2.0 API. This API is maintained for
    +     * backwards-compatibility. It may be removed in the future. Consider using
    +     * equivalent methods from {@link Factory}
    +     *
    +     * @see Factory#nvl2(Field, Field, Field)
    +     */
    +    @Support
    +    <Z> Field<Z> nvl2(Field<Z> valueIfNotNull, Field<Z> valueIfNull);
    +
    +    /**
    +     * This method is part of the pre-2.0 API. This API is maintained for
    +     * backwards-compatibility. It may be removed in the future. Consider using
    +     * equivalent methods from {@link Factory}
    +     *
    +     * @see Factory#nullif(Field, Object)
    +     */
    +    @Support
    +    Field<T> nullif(T other);
    +
    +    /**
    +     * This method is part of the pre-2.0 API. This API is maintained for
    +     * backwards-compatibility. It may be removed in the future. Consider using
    +     * equivalent methods from {@link Factory}
    +     *
    +     * @see Factory#nullif(Field, Field)
    +     */
    +    @Support
    +    Field<T> nullif(Field<T> other);
    +
    +    /**
    +     * This method is part of the pre-2.0 API. This API is maintained for
    +     * backwards-compatibility. It may be removed in the future. Consider using
    +     * equivalent methods from {@link Factory}
    +     *
    +     * @see Factory#decode(Object, Object, Object)
    +     */
    +    @Support
    +    <Z> Field<Z> decode(T search, Z result);
    +
    +    /**
    +     * This method is part of the pre-2.0 API. This API is maintained for
    +     * backwards-compatibility. It may be removed in the future. Consider using
    +     * equivalent methods from {@link Factory}
    +     *
    +     * @see Factory#decode(Object, Object, Object, Object...)
    +     */
    +    @Support
    +    <Z> Field<Z> decode(T search, Z result, Object... more);
    +
    +    /**
    +     * This method is part of the pre-2.0 API. This API is maintained for
    +     * backwards-compatibility. It may be removed in the future. Consider using
    +     * equivalent methods from {@link Factory}
    +     *
    +     * @see Factory#decode(Field, Field, Field)
    +     */
    +    @Support
    +    <Z> Field<Z> decode(Field<T> search, Field<Z> result);
    +
    +    /**
    +     * This method is part of the pre-2.0 API. This API is maintained for
    +     * backwards-compatibility. It may be removed in the future. Consider using
    +     * equivalent methods from {@link Factory}
    +     *
    +     * @see Factory#decode(Field, Field, Field, Field...)
    +     */
    +    @Support
    +    <Z> Field<Z> decode(Field<T> search, Field<Z> result, Field<?>... more);
    +
    +    /**
    +     * This method is part of the pre-2.0 API. This API is maintained for
    +     * backwards-compatibility. It may be removed in the future. Consider using
    +     * equivalent methods from {@link Factory}
    +     *
    +     * @see Factory#coalesce(Object, Object...)
    +     */
    +    @Support
    +    Field<T> coalesce(T option, T... options);
    +
    +    /**
    +     * This method is part of the pre-2.0 API. This API is maintained for
    +     * backwards-compatibility. It may be removed in the future. Consider using
    +     * equivalent methods from {@link Factory}
    +     *
    +     * @see Factory#coalesce(Field, Field...)
    +     */
    +    @Support
    +    Field<T> coalesce(Field<T> option, Field<?>... options);
    +
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/FieldLike.java b/jOOQ/src/main/java/org/jooq/FieldLike.java
    new file mode 100644
    index 00000000000..e182571de34
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/FieldLike.java
    @@ -0,0 +1,65 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq;
    +
    +/**
    + * An object that can behave like a field (a field-like object)
    + *
    + * @author Lukas Eder
    + */
    +public interface FieldLike {
    +
    +    /**
    +     * The underlying field representation of this object
    +     * <p>
    +     * This method is useful for things like
    +     * <code>SELECT y.*, (SELECT a FROM x) FROM y</code>
    +     *
    +     * @return This result provider as a Field&lt;?&gt; object
    +     */
    +    <T> Field<T> asField();
    +
    +    /**
    +     * The underlying field representation of this object
    +     * <p>
    +     * This method is useful for things like
    +     * <code>SELECT y.*, (SELECT a FROM x) [alias] FROM y</code>
    +     *
    +     * @return This result provider as a Field&lt;?&gt; object
    +     */
    +    <T> Field<T> asField(String alias);
    +
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/FieldProvider.java b/jOOQ/src/main/java/org/jooq/FieldProvider.java
    new file mode 100644
    index 00000000000..f7a2b44adc6
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/FieldProvider.java
    @@ -0,0 +1,91 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq;
    +
    +import java.util.List;
    +
    +/**
    + * An object (not necessarily a {@link QueryPart}) that holds a list of
    + * {@link Field}s. Especially the {@link #getField(Field)} method is
    + * interesting, as it may return an aliased version of the given field
    + *
    + * @author Lukas Eder
    + */
    +public interface FieldProvider {
    +
    +    /**
    +     * Get a specific field from this field provider.
    +     * <p>
    +     * Usually, this will return the field itself. However, if this is an
    +     * aliased table, the field will be aliased accordingly.
    +     *
    +     * @param <T> The generic field type
    +     * @param field The field to fetch
    +     * @return The field itself or an aliased field
    +     */
    +    <T> Field<T> getField(Field<T> field);
    +
    +    /**
    +     * Get a specific field from this field provider.
    +     *
    +     * @param name The field to fetch
    +     * @return The field with the given name
    +     */
    +    Field<?> getField(String name);
    +
    +    /**
    +     * Get a specific field from this field provider.
    +     *
    +     * @param index The field's index of the field to fetch
    +     * @return The field with the given name
    +     */
    +    Field<?> getField(int index);
    +
    +    /**
    +     * @return All available fields
    +     */
    +    List<Field<?>> getFields();
    +
    +    /**
    +     * Get a fields index from this field provider
    +     *
    +     * @param field The field to look for
    +     * @return The field's index
    +     * @throws IllegalArgumentException if the field is not contained in this
    +     *             provider.
    +     */
    +    int getIndex(Field<?> field) throws IllegalArgumentException;
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/ForeignKey.java b/jOOQ/src/main/java/org/jooq/ForeignKey.java
    new file mode 100644
    index 00000000000..fc057bacfdb
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/ForeignKey.java
    @@ -0,0 +1,52 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq;
    +
    +/**
    + * A <code>ForeignKey</code> is an object referencing a {@link UniqueKey}. It
    + * represents a <code>FOREIGN KEY</code> relationship between two tables.
    + * 
    + * @param <R> The <code>FOREIGN KEY</code>'s owner table record
    + * @param <U> The referenced <code>KEY</code>'s owner table record
    + * @author Lukas Eder
    + */
    +public interface ForeignKey<R extends Record, U extends Record> extends Key<R> {
    +
    +    /**
    +     * The referenced <code>Key</code>
    +     */
    +    UniqueKey<U> getKey();
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/FutureResult.java b/jOOQ/src/main/java/org/jooq/FutureResult.java
    new file mode 100644
    index 00000000000..d6fbdc08c1a
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/FutureResult.java
    @@ -0,0 +1,57 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq;
    +
    +import java.util.concurrent.Future;
    +
    +/**
    + * Fetch results asynchronously.
    + * <p>
    + * This type wraps fetching of records in a {@link java.util.concurrent.Future},
    + * such that you can access the actual records at a future instant. This is
    + * especially useful when
    + * <ul>
    + * <li>You want to load heavy data in the background, for instance when the user
    + * logs in and accesses a pre-calculated dashboard screen, before they access
    + * the heavy data.</li>
    + * <li>You want to parallelise several independent OLAP queries before merging
    + * all data into a single report</li>
    + * <li>...</li>
    + * </ul>
    + */
    +public interface FutureResult<R extends Record> extends Future<Result<R>> {
    +
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/GroupConcatOrderByStep.java b/jOOQ/src/main/java/org/jooq/GroupConcatOrderByStep.java
    new file mode 100644
    index 00000000000..28c59b68b9c
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/GroupConcatOrderByStep.java
    @@ -0,0 +1,77 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq;
    +
    +import static org.jooq.SQLDialect.CUBRID;
    +import static org.jooq.SQLDialect.DB2;
    +import static org.jooq.SQLDialect.H2;
    +import static org.jooq.SQLDialect.HSQLDB;
    +import static org.jooq.SQLDialect.MYSQL;
    +import static org.jooq.SQLDialect.ORACLE;
    +import static org.jooq.SQLDialect.POSTGRES;
    +import static org.jooq.SQLDialect.SYBASE;
    +
    +import java.util.Collection;
    +
    +import org.jooq.impl.Factory;
    +
    +
    +/**
    + * MySQL's <code>GROUP_CONCAT</code> function.
    + *
    + * @author Lukas Eder
    + * @see Factory#listAgg(Field)
    + */
    +public interface GroupConcatOrderByStep extends GroupConcatSeparatorStep {
    +
    +    /**
    +     * Add an <code>ORDER BY</code> clause to the query
    +     */
    +    @Support({ CUBRID, DB2, H2, HSQLDB, MYSQL, ORACLE, POSTGRES, SYBASE })
    +    GroupConcatSeparatorStep orderBy(Field<?>... fields);
    +
    +    /**
    +     * Add an <code>ORDER BY</code> clause to the query
    +     */
    +    @Support({ CUBRID, DB2, H2, HSQLDB, MYSQL, ORACLE, POSTGRES, SYBASE })
    +    GroupConcatSeparatorStep orderBy(SortField<?>... fields);
    +
    +    /**
    +     * Add an <code>ORDER BY</code> clause to the query
    +     */
    +    @Support({ CUBRID, DB2, H2, HSQLDB, MYSQL, ORACLE, POSTGRES, SYBASE })
    +    GroupConcatSeparatorStep orderBy(Collection<SortField<?>> fields);
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/GroupConcatSeparatorStep.java b/jOOQ/src/main/java/org/jooq/GroupConcatSeparatorStep.java
    new file mode 100644
    index 00000000000..68de4f5059b
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/GroupConcatSeparatorStep.java
    @@ -0,0 +1,62 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq;
    +
    +import static org.jooq.SQLDialect.CUBRID;
    +import static org.jooq.SQLDialect.DB2;
    +import static org.jooq.SQLDialect.H2;
    +import static org.jooq.SQLDialect.HSQLDB;
    +import static org.jooq.SQLDialect.MYSQL;
    +import static org.jooq.SQLDialect.ORACLE;
    +import static org.jooq.SQLDialect.POSTGRES;
    +import static org.jooq.SQLDialect.SYBASE;
    +
    +import org.jooq.impl.Factory;
    +
    +/**
    + * MySQL's <code>GROUP_CONCAT</code> function.
    + *
    + * @author Lukas Eder
    + * @see Factory#listAgg(Field)
    + */
    +public interface GroupConcatSeparatorStep extends AggregateFunction<String> {
    +
    +    /**
    +     * Specify the separator on the <code>GROUP_CONCAT</code> function
    +     */
    +    @Support({ CUBRID, DB2, H2, HSQLDB, MYSQL, ORACLE, POSTGRES, SYBASE })
    +    AggregateFunction<String> separator(String separator);
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/Identity.java b/jOOQ/src/main/java/org/jooq/Identity.java
    new file mode 100644
    index 00000000000..bddd9a09faf
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/Identity.java
    @@ -0,0 +1,61 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq;
    +
    +import java.io.Serializable;
    +
    +/**
    + * An <code>Identity</code> is an object representing an <code>IDENTITY</code>
    + * column as understood by the SQL:2003 standard. In most RDBMS, this is
    + * actually called an <code>IDENTITY</code> column. Some RDMBS such as MySQL
    + * call it <code>AUTO_INCREMENT</code> columns.
    + *
    + * @param <R> The <code>IDENTITY</code>'s owner table record
    + * @param <T> The <code>IDENTITY</code>'s field type
    + * @author Lukas Eder
    + */
    +public interface Identity<R extends Record, T> extends Serializable {
    +
    +    /**
    +     * The <code>IDENTITY</code>'s owner table
    +     */
    +    Table<R> getTable();
    +
    +    /**
    +     * The <code>IDENTITY</code> column.
    +     */
    +    TableField<R, T> getField();
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/Insert.java b/jOOQ/src/main/java/org/jooq/Insert.java
    new file mode 100644
    index 00000000000..414af70c237
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/Insert.java
    @@ -0,0 +1,45 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq;
    +
    +/**
    + * A {@link Query} that can insert data in the database.
    + *
    + * @author Lukas Eder
    + */
    +public interface Insert<R extends Record> extends Query {
    +
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/InsertFinalStep.java b/jOOQ/src/main/java/org/jooq/InsertFinalStep.java
    new file mode 100644
    index 00000000000..20e4d180461
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/InsertFinalStep.java
    @@ -0,0 +1,58 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq;
    +
    +
    +/**
    + * This type is used for the {@link Insert}'s DSL API.
    + * <p>
    + * Example: <code><pre>
    + * Factory create = new Factory();
    + *
    + * create.insertInto(table, field1, field2)
    + *       .values(value1, value2)
    + *       .values(value3, value4)
    + *       .onDuplicateKeyUpdate()
    + *       .set(field1, value1)
    + *       .set(field2, value2)
    + *       .execute();
    + * </pre></code>
    + *
    + * @author Lukas Eder
    + */
    +public interface InsertFinalStep<R extends Record> extends Insert<R> {
    +
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/InsertOnDuplicateSetMoreStep.java b/jOOQ/src/main/java/org/jooq/InsertOnDuplicateSetMoreStep.java
    new file mode 100644
    index 00000000000..7bc3de383ca
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/InsertOnDuplicateSetMoreStep.java
    @@ -0,0 +1,57 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq;
    +
    +/**
    + * This type is used for the {@link Insert}'s DSL API.
    + * <p>
    + * Example: <code><pre>
    + * Factory create = new Factory();
    + *
    + * create.insertInto(table, field1, field2)
    + *       .values(value1, value2)
    + *       .values(value3, value4)
    + *       .onDuplicateKeyUpdate()
    + *       .set(field1, value1)
    + *       .set(field2, value2)
    + *       .execute();
    + * </pre></code>
    + *
    + * @author Lukas Eder
    + */
    +public interface InsertOnDuplicateSetMoreStep<R extends Record> extends InsertOnDuplicateSetStep<R>, InsertFinalStep<R> {
    +
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/InsertOnDuplicateSetStep.java b/jOOQ/src/main/java/org/jooq/InsertOnDuplicateSetStep.java
    new file mode 100644
    index 00000000000..3b10695b537
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/InsertOnDuplicateSetStep.java
    @@ -0,0 +1,92 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq;
    +
    +import static org.jooq.SQLDialect.CUBRID;
    +import static org.jooq.SQLDialect.DB2;
    +import static org.jooq.SQLDialect.HSQLDB;
    +import static org.jooq.SQLDialect.MYSQL;
    +import static org.jooq.SQLDialect.ORACLE;
    +import static org.jooq.SQLDialect.SQLSERVER;
    +import static org.jooq.SQLDialect.SYBASE;
    +
    +import java.util.Map;
    +
    +/**
    + * This type is used for the {@link Insert}'s DSL API.
    + * <p>
    + * Example: <code><pre>
    + * Factory create = new Factory();
    + *
    + * create.insertInto(table, field1, field2)
    + *       .values(value1, value2)
    + *       .values(value3, value4)
    + *       .onDuplicateKeyUpdate()
    + *       .set(field1, value1)
    + *       .set(field2, value2)
    + *       .execute();
    + * </pre></code>
    + *
    + * @author Lukas Eder
    + */
    +public interface InsertOnDuplicateSetStep<R extends Record> {
    +
    +    /**
    +     * Set values for <code>UPDATE</code> in the <code>INSERT</code> statement's
    +     * <code>ON DUPLICATE KEY UPDATE</code> clause
    +     */
    +    @Support({ CUBRID, DB2, HSQLDB, MYSQL, ORACLE, SQLSERVER, SYBASE })
    +    <T> InsertOnDuplicateSetMoreStep<R> set(Field<T> field, T value);
    +
    +    /**
    +     * Set values for <code>UPDATE</code> in the <code>INSERT</code> statement's
    +     * <code>ON DUPLICATE KEY UPDATE</code> clause
    +     */
    +    @Support({ CUBRID, DB2, HSQLDB, MYSQL, ORACLE, SQLSERVER, SYBASE })
    +    <T> InsertOnDuplicateSetMoreStep<R> set(Field<T> field, Field<T> value);
    +
    +    /**
    +     * Set multiple values for <code>UPDATE</code> in the <code>INSERT</code>
    +     * statement's <code>ON DUPLICATE KEY UPDATE</code> clause
    +     * <p>
    +     * Please assure that key/value pairs have matching <code>&lt;T&gt;</code>
    +     * types. Values can either be of type <code>&lt;T&gt;</code> or
    +     * <code>Field&lt;T&gt;</code>
    +     */
    +    @Support({ CUBRID, DB2, HSQLDB, MYSQL, ORACLE, SQLSERVER, SYBASE })
    +    InsertOnDuplicateSetMoreStep<R> set(Map<? extends Field<?>, ?> map);
    +
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/InsertOnDuplicateStep.java b/jOOQ/src/main/java/org/jooq/InsertOnDuplicateStep.java
    new file mode 100644
    index 00000000000..5f001c87889
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/InsertOnDuplicateStep.java
    @@ -0,0 +1,89 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq;
    +
    +import static org.jooq.SQLDialect.CUBRID;
    +import static org.jooq.SQLDialect.DB2;
    +import static org.jooq.SQLDialect.HSQLDB;
    +import static org.jooq.SQLDialect.MYSQL;
    +import static org.jooq.SQLDialect.ORACLE;
    +import static org.jooq.SQLDialect.SQLSERVER;
    +import static org.jooq.SQLDialect.SYBASE;
    +
    +import org.jooq.impl.Factory;
    +
    +/**
    + * This type is used for the {@link Insert}'s DSL API.
    + * <p>
    + * Example: <code><pre>
    + * Factory create = new Factory();
    + *
    + * create.insertInto(table, field1, field2)
    + *       .values(value1, value2)
    + *       .values(value3, value4)
    + *       .onDuplicateKeyUpdate()
    + *       .set(field1, value1)
    + *       .set(field2, value2)
    + *       .execute();
    + * </pre></code>
    + *
    + * @author Lukas Eder
    + */
    +public interface InsertOnDuplicateStep<R extends Record> extends InsertFinalStep<R>, InsertReturningStep<R> {
    +
    +    /**
    +     * Add an <code>ON DUPLICATE KEY UPDATE</code> clause to this insert query.
    +     * <p>
    +     * This will try to <code>INSERT</code> a record. If there is a primary key
    +     * or unique key in this <code>INSERT</code> statement's affected table that
    +     * matches the value being inserted, then the <code>UPDATE</code> clause is
    +     * executed instead.
    +     * <p>
    +     * MySQL and CUBRID natively implements this type of clause. jOOQ can
    +     * simulate this clause using a <code>MERGE</code> statement on some other
    +     * databases. The conditions for a RDBMS to simulate this clause are:
    +     * <ul>
    +     * <li>The <code>INSERT</code> statement's table is an
    +     * {@link UpdatableTable}</li>
    +     * <li>The RDBMS supports the <code>MERGE</code> clause (see
    +     * {@link Factory#mergeInto(Table)}).</li>
    +     * </ul>
    +     * <p>
    +     * These are the dialects that fulfill the above requirements:
    +     */
    +    @Support({ CUBRID, DB2, HSQLDB, MYSQL, ORACLE, SQLSERVER, SYBASE })
    +    InsertOnDuplicateSetStep<R> onDuplicateKeyUpdate();
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/InsertQuery.java b/jOOQ/src/main/java/org/jooq/InsertQuery.java
    new file mode 100644
    index 00000000000..97bf13d4268
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/InsertQuery.java
    @@ -0,0 +1,218 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +
    +package org.jooq;
    +
    +import static org.jooq.SQLDialect.CUBRID;
    +import static org.jooq.SQLDialect.DB2;
    +import static org.jooq.SQLDialect.HSQLDB;
    +import static org.jooq.SQLDialect.MYSQL;
    +import static org.jooq.SQLDialect.ORACLE;
    +import static org.jooq.SQLDialect.SQLSERVER;
    +import static org.jooq.SQLDialect.SYBASE;
    +
    +import java.util.Collection;
    +import java.util.Map;
    +
    +/**
    + * A query for data insertion
    + *
    + * @param <R> The record type of the table being inserted into
    + * @author Lukas Eder
    + */
    +public interface InsertQuery<R extends Record> extends StoreQuery<R>, Insert<R> {
    +
    +    /**
    +     * Adds a new Record to the insert statement for multi-record inserts
    +     * <p>
    +     * Calling this method will cause subsequent calls to
    +     * {@link #addValue(Field, Object)} (and similar) to fill the next record.
    +     * <p>
    +     * If this call is not followed by {@link #addValue(Field, Object)} calls,
    +     * then this call has no effect.
    +     * <p>
    +     * If this call is done on a fresh insert statement (without any values
    +     * yet), then this call has no effect either.
    +     */
    +    @Support
    +    void newRecord();
    +
    +    /**
    +     * Short for calling <code>
    +     * newRecord();
    +     * setRecord(record);
    +     * </code>
    +     *
    +     * @param record The record to add to this insert statement.
    +     */
    +    @Support
    +    void addRecord(R record);
    +
    +    /**
    +     * Whether a <code>ON DUPLICATE KEY UPDATE</code> clause should be added to
    +     * this <code>INSERT</code> statement.
    +     *
    +     * @see InsertOnDuplicateStep#onDuplicateKeyUpdate()
    +     */
    +    @Support({ CUBRID, DB2, HSQLDB, MYSQL, ORACLE, SQLSERVER, SYBASE })
    +    void onDuplicateKeyUpdate(boolean flag);
    +
    +    /**
    +     * Add a value to the <code>ON DUPLICATE KEY UPDATE</code> clause of this
    +     * <code>INSERT</code> statement, where this is supported.
    +     *
    +     * @see InsertOnDuplicateStep#onDuplicateKeyUpdate()
    +     */
    +    @Support({ DB2, HSQLDB, MYSQL, ORACLE, SQLSERVER, SYBASE })
    +    <T> void addValueForUpdate(Field<T> field, T value);
    +
    +    /**
    +     * Add a value to the <code>ON DUPLICATE KEY UPDATE</code> clause of this
    +     * <code>INSERT</code> statement, where this is supported.
    +     *
    +     * @see InsertOnDuplicateStep#onDuplicateKeyUpdate()
    +     */
    +    @Support({ DB2, HSQLDB, MYSQL, ORACLE, SQLSERVER, SYBASE })
    +    <T> void addValueForUpdate(Field<T> field, Field<T> value);
    +
    +    /**
    +     * Add multiple values to the <code>ON DUPLICATE KEY UPDATE</code> clause of
    +     * this <code>INSERT</code> statement, where this is supported.
    +     * <p>
    +     * Please assure that key/value pairs have matching <code>&lt;T&gt;</code>
    +     * types. Values can either be of type <code>&lt;T&gt;</code> or
    +     * <code>Field&lt;T&gt;</code>
    +     *
    +     * @see InsertOnDuplicateStep#onDuplicateKeyUpdate()
    +     */
    +    @Support({ DB2, HSQLDB, MYSQL, ORACLE, SQLSERVER, SYBASE })
    +    void addValuesForUpdate(Map<? extends Field<?>, ?> map);
    +
    +    /**
    +     * Configure the <code>INSERT</code> statement to return all fields in
    +     * <code>R</code>.
    +     *
    +     * @see #getReturnedRecords()
    +     */
    +    @Support
    +    void setReturning();
    +
    +    /**
    +     * Configure the <code>INSERT</code> statement to return the generated
    +     * identity value.
    +     *
    +     * @param identity The table's identity
    +     * @see #getReturnedRecords()
    +     */
    +    @Support
    +    void setReturning(Identity<R, ? extends Number> identity);
    +
    +    /**
    +     * Configure the <code>INSERT</code> statement to return a list of fields in
    +     * <code>R</code>.
    +     *
    +     * @param fields Fields to be returned
    +     * @see #getReturnedRecords()
    +     */
    +    @Support
    +    void setReturning(Field<?>... fields);
    +
    +    /**
    +     * Configure the <code>INSERT</code> statement to return a list of fields in
    +     * <code>R</code>.
    +     *
    +     * @param fields Fields to be returned
    +     * @see #getReturnedRecords()
    +     */
    +    @Support
    +    void setReturning(Collection<? extends Field<?>> fields);
    +
    +    /**
    +     * The record holding returned values as specified by any of the
    +     * {@link #setReturning()} methods.
    +     * <p>
    +     * If the insert statement returns several records, this is the same as
    +     * calling <code>getReturnedRecords().get(0)</code>
    +     * <p>
    +     * This implemented differently for every dialect:
    +     * <ul>
    +     * <li>Postgres has native support for <code>INSERT .. RETURNING</code>
    +     * clauses</li>
    +     * <li>HSQLDB, Oracle, and DB2 JDBC drivers allow for retrieving any table
    +     * column as "generated key" in one statement</li>
    +     * <li>Derby, H2, Ingres, MySQL, SQL Server only allow for retrieving
    +     * IDENTITY column values as "generated key". If other fields are requested,
    +     * a second statement is issued. Client code must assure transactional
    +     * integrity between the two statements.</li>
    +     * <li>Sybase and SQLite allow for retrieving IDENTITY values as
    +     * <code>@@identity</code> or <code>last_inserted_rowid()</code> values.
    +     * Those values are fetched in a separate <code>SELECT</code> statement. If
    +     * other fields are requested, a second statement is issued. Client code
    +     * must assure transactional integrity between the two statements.</li>
    +     * </ul>
    +     *
    +     * @see #getReturnedRecords()
    +     */
    +    @Support
    +    R getReturnedRecord();
    +
    +    /**
    +     * The records holding returned values as specified by any of the
    +     * {@link #setReturning()} methods.
    +     * <p>
    +     * This implemented differently for every dialect:
    +     * <ul>
    +     * <li>Postgres has native support for <code>INSERT .. RETURNING</code>
    +     * clauses</li>
    +     * <li>HSQLDB, Oracle, and DB2 JDBC drivers allow for retrieving any table
    +     * column as "generated key" in one statement</li>
    +     * <li>Derby, H2, Ingres, MySQL, SQL Server only allow for retrieving
    +     * IDENTITY column values as "generated key". If other fields are requested,
    +     * a second statement is issued. Client code must assure transactional
    +     * integrity between the two statements.</li>
    +     * <li>Sybase and SQLite allow for retrieving IDENTITY values as
    +     * <code>@@identity</code> or <code>last_inserted_rowid()</code> values.
    +     * Those values are fetched in a separate <code>SELECT</code> statement. If
    +     * other fields are requested, a second statement is issued. Client code
    +     * must assure transactional integrity between the two statements.</li>
    +     * </ul>
    +     * <p>
    +     * This currently only works well for DB2, HSQLDB, MySQL, and Postgres
    +     */
    +    @Support
    +    Result<R> getReturnedRecords();
    +
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/InsertResultStep.java b/jOOQ/src/main/java/org/jooq/InsertResultStep.java
    new file mode 100644
    index 00000000000..320d0068b10
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/InsertResultStep.java
    @@ -0,0 +1,92 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq;
    +
    +import org.jooq.exception.DataAccessException;
    +
    +/**
    + * This type is used for the {@link Insert}'s DSL API.
    + * <p>
    + * Example: <code><pre>
    + * Factory create = new Factory();
    + *
    + * TableRecord<?> record =
    + * create.insertInto(table, field1, field2)
    + *       .values(value1, value2)
    + *       .returning(field1)
    + *       .fetchOne();
    + * </pre></code>
    + * <p>
    + * This implemented differently for every dialect:
    + * <ul>
    + * <li>Postgres has native support for <code>INSERT .. RETURNING</code> clauses</li>
    + * <li>HSQLDB, Oracle, and DB2 JDBC drivers allow for retrieving any table
    + * column as "generated key" in one statement</li>
    + * <li>Derby, H2, Ingres, MySQL, SQL Server only allow for retrieving IDENTITY
    + * column values as "generated key". If other fields are requested, a second
    + * statement is issued. Client code must assure transactional integrity between
    + * the two statements.</li>
    + * <li>Sybase and SQLite allow for retrieving IDENTITY values as
    + * <code>@@identity</code> or <code>last_inserted_rowid()</code> values. Those
    + * values are fetched in a separate <code>SELECT</code> statement. If other
    + * fields are requested, another statement is issued. Client code must assure
    + * transactional integrity between these statements.</li>
    + * </ul>
    + *
    + * @author Lukas Eder
    + */
    +public interface InsertResultStep<R extends Record> extends Insert<R> {
    +
    +    /**
    +     * The result holding returned values as specified by the
    +     * {@link InsertReturningStep}
    +     * <p>
    +     * This currently only works well for DB2, HSQLDB, MySQL, and Postgres
    +     *
    +     * @throws DataAccessException if something went wrong executing the query
    +     */
    +    @Support
    +    Result<R> fetch() throws DataAccessException;
    +
    +    /**
    +     * The record holding returned values as specified by the
    +     * {@link InsertReturningStep}
    +     *
    +     * @throws DataAccessException if something went wrong executing the query
    +     */
    +    @Support
    +    R fetchOne() throws DataAccessException;
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/InsertReturningStep.java b/jOOQ/src/main/java/org/jooq/InsertReturningStep.java
    new file mode 100644
    index 00000000000..43927165293
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/InsertReturningStep.java
    @@ -0,0 +1,101 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq;
    +
    +import java.util.Collection;
    +
    +/**
    + * This type is used for the {@link Insert}'s DSL API.
    + * <p>
    + * Example: <code><pre>
    + * Factory create = new Factory();
    + *
    + * TableRecord<?> record =
    + * create.insertInto(table, field1, field2)
    + *       .values(value1, value2)
    + *       .returning(field1)
    + *       .fetchOne();
    + * </pre></code>
    + * <p>
    + * This implemented differently for every dialect:
    + * <ul>
    + * <li>Postgres has native support for <code>INSERT .. RETURNING</code> clauses</li>
    + * <li>HSQLDB, Oracle, and DB2 JDBC drivers allow for retrieving any table
    + * column as "generated key" in one statement</li>
    + * <li>Derby, H2, Ingres, MySQL, SQL Server only allow for retrieving IDENTITY
    + * column values as "generated key". If other fields are requested, a second
    + * statement is issued. Client code must assure transactional integrity between
    + * the two statements.</li>
    + * <li>Sybase and SQLite allow for retrieving IDENTITY values as
    + * <code>@@identity</code> or <code>last_inserted_rowid()</code> values. Those
    + * values are fetched in a separate <code>SELECT</code> statement. If other
    + * fields are requested, a second statement is issued. Client code must assure
    + * transactional integrity between the two statements.</li>
    + * </ul>
    + *
    + * @author Lukas Eder
    + */
    +public interface InsertReturningStep<R extends Record> {
    +
    +    /**
    +     * Configure the <code>INSERT</code> statement to return all fields in
    +     * <code>R</code>.
    +     *
    +     * @see InsertResultStep
    +     */
    +    @Support
    +    InsertResultStep<R> returning();
    +
    +    /**
    +     * Configure the <code>INSERT</code> statement to return a list of fields in
    +     * <code>R</code>.
    +     *
    +     * @param fields Fields to be returned
    +     * @see InsertResultStep
    +     */
    +    @Support
    +    InsertResultStep<R> returning(Field<?>... fields);
    +
    +    /**
    +     * Configure the <code>INSERT</code> statement to return a list of fields in
    +     * <code>R</code>.
    +     *
    +     * @param fields Fields to be returned
    +     * @see InsertResultStep
    +     */
    +    @Support
    +    InsertResultStep<R> returning(Collection<? extends Field<?>> fields);
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/InsertSetMoreStep.java b/jOOQ/src/main/java/org/jooq/InsertSetMoreStep.java
    new file mode 100644
    index 00000000000..b1e50de0eb6
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/InsertSetMoreStep.java
    @@ -0,0 +1,67 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq;
    +
    +/**
    + * This type is used for the {@link Insert}'s alternative DSL API.
    + * <p>
    + * Example: <code><pre>
    + * Factory create = new Factory();
    + *
    + * create.insertInto(table)
    + *       .set(field1, value1)
    + *       .set(field2, value2)
    + *       .newRecord()
    + *       .set(field1, value3)
    + *       .set(field2, value4)
    + *       .onDuplicateKeyUpdate()
    + *       .set(field1, value1)
    + *       .set(field2, value2)
    + *       .execute();
    + * </pre></code>
    + *
    + * @author Lukas Eder
    + */
    +public interface InsertSetMoreStep<R extends Record> extends InsertSetStep<R>, InsertOnDuplicateStep<R> {
    +
    +    /**
    +     * Add an additional record to the <code>INSERT</code> statement
    +     *
    +     * @see InsertQuery#newRecord()
    +     */
    +    @Support
    +    InsertSetStep<R> newRecord();
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/InsertSetStep.java b/jOOQ/src/main/java/org/jooq/InsertSetStep.java
    new file mode 100644
    index 00000000000..62f02bb7200
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/InsertSetStep.java
    @@ -0,0 +1,116 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq;
    +
    +import java.util.Collection;
    +import java.util.Map;
    +
    +/**
    + * This type is used for the {@link Insert}'s alternative DSL API.
    + * <p>
    + * Example: <code><pre>
    + * Factory create = new Factory();
    + *
    + * create.insertInto(table)
    + *       .set(field1, value1)
    + *       .set(field2, value2)
    + *       .newRecord()
    + *       .set(field1, value3)
    + *       .set(field2, value4)
    + *       .onDuplicateKeyUpdate()
    + *       .set(field1, value1)
    + *       .set(field2, value2)
    + *       .execute();
    + * </pre></code>
    + *
    + * @author Lukas Eder
    + */
    +public interface InsertSetStep<R extends Record> {
    +
    +    /**
    +     * Set a value for a field in the <code>UPDATE</code> statement
    +     */
    +    @Support
    +    <T> InsertSetMoreStep<R> set(Field<T> field, T value);
    +
    +    /**
    +     * Set a value for a field in the <code>UPDATE</code> statement
    +     */
    +    @Support
    +    <T> InsertSetMoreStep<R> set(Field<T> field, Field<T> value);
    +
    +    /**
    +     * Set a value for a field in the <code>UPDATE</code> statement
    +     * <p>
    +     * Please assure that key/value pairs have matching <code>&lt;T&gt;</code>
    +     * types. Values can either be of type <code>&lt;T&gt;</code> or
    +     * <code>Field&lt;T&gt;</code>
    +     */
    +    @Support
    +    InsertSetMoreStep<R> set(Map<? extends Field<?>, ?> map);
    +
    +    /**
    +     * Add values to the insert statement with implicit field names
    +     */
    +    @Support
    +    InsertValuesStep<R> values(Object... values);
    +
    +    /**
    +     * Add values to the insert statement with implicit field names
    +     */
    +    @Support
    +    InsertValuesStep<R> values(Field<?>... values);
    +
    +    /**
    +     * Add values to the insert statement with implicit field names
    +     */
    +    @Support
    +    InsertValuesStep<R> values(Collection<?> values);
    +
    +    /**
    +     * Use a <code>SELECT</code> statement as the source of values for the
    +     * <code>INSERT</code> statement
    +     * <p>
    +     * This variant of the <code>INSERT .. SELECT</code> statement does not
    +     * allow for specifying a subset of the fields inserted into. It will insert
    +     * into all fields of the table specified in the <code>INTO</code> clause.
    +     * Use {@link FactoryOperations#insertInto(Table, Field...)} or
    +     * {@link FactoryOperations#insertInto(Table, Collection)} instead, to
    +     * define a field set for insertion.
    +     */
    +    @Support
    +    Insert<R> select(Select<?> select);
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/InsertValuesStep.java b/jOOQ/src/main/java/org/jooq/InsertValuesStep.java
    new file mode 100644
    index 00000000000..4c678aec8d3
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/InsertValuesStep.java
    @@ -0,0 +1,89 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq;
    +
    +import java.util.Collection;
    +
    +/**
    + * This type is used for the {@link Insert}'s DSL API.
    + * <p>
    + * Example: <code><pre>
    + * Factory create = new Factory();
    + *
    + * create.insertInto(table, field1, field2)
    + *       .values(value1, value2)
    + *       .values(value3, value4)
    + *       .onDuplicateKeyUpdate()
    + *       .set(field1, value1)
    + *       .set(field2, value2)
    + *       .execute();
    + * </pre></code>
    + *
    + * @author Lukas Eder
    + */
    +public interface InsertValuesStep<R extends Record> extends InsertOnDuplicateStep<R> {
    +
    +    /**
    +     * Add values to the insert statement
    +     */
    +    @Support
    +    InsertValuesStep<R> values(Object... values);
    +
    +    /**
    +     * Add values to the insert statement
    +     */
    +    @Support
    +    InsertValuesStep<R> values(Field<?>... values);
    +
    +    /**
    +     * Add values to the insert statement
    +     */
    +    @Support
    +    InsertValuesStep<R> values(Collection<?> values);
    +
    +    /**
    +     * Use a <code>SELECT</code> statement as the source of values for the
    +     * <code>INSERT</code> statement
    +     * <p>
    +     * This variant of the <code>INSERT .. SELECT</code> statement expects a
    +     * select returning exactly as many fields as specified previously in the
    +     * <code>INTO</code> clause:
    +     * {@link FactoryOperations#insertInto(Table, Field...)} or
    +     * {@link FactoryOperations#insertInto(Table, Collection)}
    +     */
    +    @Support
    +    Insert<R> select(Select<?> select);
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/JoinType.java b/jOOQ/src/main/java/org/jooq/JoinType.java
    new file mode 100644
    index 00000000000..93a32a2f36f
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/JoinType.java
    @@ -0,0 +1,106 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +
    +package org.jooq;
    +
    +
    +/**
    + * The type of join
    + *
    + * @author Lukas Eder
    + */
    +public enum JoinType {
    +
    +    /**
    +     * <code>INNER JOIN</code> two tables
    +     */
    +    @Support
    +    JOIN("join"),
    +
    +    /**
    +     * <code>CROSS JOIN</code> two tables
    +     */
    +    @Support
    +    CROSS_JOIN("cross join"),
    +
    +    /**
    +     * <code>LEFT OUTER JOIN</code> two tables
    +     */
    +    @Support
    +    LEFT_OUTER_JOIN("left outer join"),
    +
    +    /**
    +     * <code>RIGHT OUTER JOIN</code> two tables
    +     */
    +    @Support
    +    RIGHT_OUTER_JOIN("right outer join"),
    +
    +    /**
    +     * <code>FULL OUTER JOIN</code> two tables
    +     */
    +    @Support
    +    FULL_OUTER_JOIN("full outer join"),
    +
    +    /**
    +     * <code>NATURAL INNER JOIN</code> two tables
    +     */
    +    @Support
    +    NATURAL_JOIN("natural join"),
    +
    +    /**
    +     * <code>NATURAL LEFT OUTER JOIN</code> two tables
    +     */
    +    @Support
    +    NATURAL_LEFT_OUTER_JOIN("natural left outer join"),
    +
    +    /**
    +     * <code>NATURAL RIGHT OUTER JOIN</code> two tables
    +     */
    +    @Support
    +    NATURAL_RIGHT_OUTER_JOIN("natural right outer join"),
    +
    +    ;
    +
    +    private final String sql;
    +
    +    private JoinType(String sql) {
    +        this.sql = sql;
    +    }
    +
    +    public final String toSQL() {
    +        return sql;
    +    }
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/Key.java b/jOOQ/src/main/java/org/jooq/Key.java
    new file mode 100644
    index 00000000000..4290242d7be
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/Key.java
    @@ -0,0 +1,67 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq;
    +
    +import java.io.Serializable;
    +import java.util.List;
    +
    +
    +/**
    + * A <code>Key</code> is an object representing a <code>UNIQUE KEY</code>, a
    + * <code>PRIMARY KEY</code>, or a <code>FOREIGN KEY</code>.
    + *
    + * @param <R> The <code>KEY</code>'s owner table record
    + * @author Lukas Eder
    + */
    +public interface Key<R extends Record> extends Serializable {
    +
    +    /**
    +     * The <code>Key</code>'s owner table
    +     */
    +    Table<R> getTable();
    +
    +    /**
    +     * The fields that make up the <code>KEY</code>
    +     */
    +    List<TableField<R, ?>> getFields();
    +
    +    /**
    +     * The fields that make up the <code>KEY</code>
    +     *
    +     * @see #getFields()
    +     */
    +    TableField<R, ?>[] getFieldsArray();
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/Loader.java b/jOOQ/src/main/java/org/jooq/Loader.java
    new file mode 100644
    index 00000000000..2ef140961b2
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/Loader.java
    @@ -0,0 +1,70 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq;
    +
    +import java.util.List;
    +
    +/**
    + * The <code>Loader</code> API is used for configuring data loads.
    + * <p>
    + * This type is the final type holding information about the outcome of the data
    + * load.
    + *
    + * @author Lukas Eder
    + */
    +public interface Loader<R extends TableRecord<R>> {
    +
    +    /**
    +     * A list of errors that might have happened during the load.
    +     */
    +    List<LoaderError> errors();
    +
    +    /**
    +     * The number of processed rows
    +     */
    +    int processed();
    +
    +    /**
    +     * The number of ignored rows
    +     */
    +    int ignored();
    +
    +    /**
    +     * The number of inserted or updated rows
    +     */
    +    int stored();
    +
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/LoaderCSVOptionsStep.java b/jOOQ/src/main/java/org/jooq/LoaderCSVOptionsStep.java
    new file mode 100644
    index 00000000000..db3ef3bae58
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/LoaderCSVOptionsStep.java
    @@ -0,0 +1,71 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq;
    +
    +/**
    + * The <code>Loader</code> API is used for configuring data loads.
    + * <p>
    + * The step in constructing the {@link Loader} object where you can set the
    + * optional CSV loader options.
    + *
    + * @author Lukas Eder
    + */
    +public interface LoaderCSVOptionsStep<R extends TableRecord<R>> extends LoaderLoadStep<R> {
    +
    +    /**
    +     * Specify that a certain number of rows should be ignored from the CSV
    +     * file. This is useful for skipping processing information
    +     * <p>
    +     * By default, this is set to <code>1</code>, as CSV files are expected to
    +     * hold a header row.
    +     *
    +     * @param number The number of rows to ignore.
    +     */
    +    @Support
    +    LoaderCSVOptionsStep<R> ignoreRows(int number);
    +
    +    /**
    +     * Specify the quote character. By default, this is <code>"</code>
    +     */
    +    @Support
    +    LoaderCSVOptionsStep<R> quote(char quote);
    +
    +    /**
    +     * Specify the separator character. By default, this is <code>,</code>
    +     */
    +    @Support
    +    LoaderCSVOptionsStep<R> separator(char separator);
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/LoaderCSVStep.java b/jOOQ/src/main/java/org/jooq/LoaderCSVStep.java
    new file mode 100644
    index 00000000000..4781d74269d
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/LoaderCSVStep.java
    @@ -0,0 +1,69 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq;
    +
    +import java.util.Collection;
    +
    +/**
    + * The <code>Loader</code> API is used for configuring data loads.
    + * <p>
    + * The step in constructing the {@link Loader} object where you can set the
    + * mandatory CSV loader options.
    + *
    + * @author Lukas Eder
    + */
    +public interface LoaderCSVStep<R extends TableRecord<R>> {
    +
    +    /**
    +     * Specify the the fields to be loaded into the table in the correct order.
    +     * The CSV column at index <code>i</code> is inserted into the table field
    +     * at index <code>i</code>. If <code>fields[i] == null</code>, then the CSV
    +     * column is skipped.
    +     */
    +    @Support
    +    LoaderCSVOptionsStep<R> fields(Field<?>... fields);
    +
    +    /**
    +     * Specify the the fields to be loaded into the table in the correct order.
    +     * The CSV column at index <code>i</code> is inserted into the table field
    +     * at index <code>i</code>. If
    +     * <code>new ArrayList(fields).get(i) == null</code>, then the CSV column is
    +     * skipped.
    +     */
    +    @Support
    +    LoaderCSVOptionsStep<R> fields(Collection<? extends Field<?>> fields);
    +
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/LoaderError.java b/jOOQ/src/main/java/org/jooq/LoaderError.java
    new file mode 100644
    index 00000000000..7e0bf7ee099
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/LoaderError.java
    @@ -0,0 +1,70 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq;
    +
    +import java.io.IOException;
    +
    +import org.jooq.exception.DataAccessException;
    +
    +/**
    + * An error that occurred during loading. Errors are only handled when they were
    + * caused by {@link DataAccessException}'s. {@link IOException}'s and other problems
    + * will abort loading fatally.
    + *
    + * @author Lukas Eder
    + */
    +public interface LoaderError {
    +
    +    /**
    +     * The underlying {@link DataAccessException} that caused the error
    +     */
    +    DataAccessException exception();
    +
    +    /**
    +     * The processed row index starting with <code>0</code> that caused the error
    +     */
    +    int rowIndex();
    +
    +    /**
    +     * The row data that caused the error
    +     */
    +    String[] row();
    +
    +    /**
    +     * The query whose execution failed
    +     */
    +    Query query();
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/LoaderLoadStep.java b/jOOQ/src/main/java/org/jooq/LoaderLoadStep.java
    new file mode 100644
    index 00000000000..9fc44ddb24e
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/LoaderLoadStep.java
    @@ -0,0 +1,57 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq;
    +
    +import java.io.IOException;
    +
    +/**
    + * The <code>Loader</code> API is used for configuring data loads.
    + * <p>
    + * The step in constructing the {@link Loader} object where you can execute the
    + * load.
    + *
    + * @author Lukas Eder
    + */
    +public interface LoaderLoadStep<R extends TableRecord<R>> {
    +
    +    /**
    +     * Execute the load. All exceptions are caught and wrapped in the resulting
    +     * <code>Loader</code> object. They can be accessed using
    +     * {@link Loader#errors()}
    +     */
    +    @Support
    +    Loader<R> execute() throws IOException;
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/LoaderOptionsStep.java b/jOOQ/src/main/java/org/jooq/LoaderOptionsStep.java
    new file mode 100644
    index 00000000000..4198b611baa
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/LoaderOptionsStep.java
    @@ -0,0 +1,203 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq;
    +
    +import static org.jooq.SQLDialect.CUBRID;
    +import static org.jooq.SQLDialect.DB2;
    +import static org.jooq.SQLDialect.HSQLDB;
    +import static org.jooq.SQLDialect.MYSQL;
    +import static org.jooq.SQLDialect.ORACLE;
    +import static org.jooq.SQLDialect.SQLSERVER;
    +import static org.jooq.SQLDialect.SYBASE;
    +
    +import java.sql.Connection;
    +
    +/**
    + * The <code>Loader</code> API is used for configuring data loads.
    + * <p>
    + * Add options to for the loading behaviour
    + *
    + * @author Lukas Eder
    + */
    +public interface LoaderOptionsStep<R extends TableRecord<R>> extends LoaderSourceStep<R> {
    +
    +    /**
    +     * Instruct the <code>Loader</code> to update duplicate records if the main
    +     * unique key's value is already in the database. This is only supported if
    +     * {@link InsertQuery#onDuplicateKeyUpdate(boolean)} is supported, too.
    +     * <p>
    +     * If the loaded table does not have a main key, then all records are
    +     * inserted and this clause behaves like {@link #onDuplicateKeyIgnore()}
    +     * <p>
    +     * If you don't specify a behaviour, {@link #onDuplicateKeyError()} will be
    +     * the default. This cannot be combined with {@link #onDuplicateKeyError()}
    +     * or {@link #onDuplicateKeyIgnore()}
    +     */
    +    @Support({ CUBRID, DB2, HSQLDB, MYSQL, ORACLE, SQLSERVER, SYBASE })
    +    LoaderOptionsStep<R> onDuplicateKeyUpdate();
    +
    +    /**
    +     * Instruct the <code>Loader</code> to skip duplicate records if the main
    +     * unique key's value is already in the database.
    +     * <p>
    +     * If the loaded table does not have a main key, then all records are
    +     * inserted.
    +     * <p>
    +     * If you don't specify a behaviour, {@link #onDuplicateKeyError()} will be
    +     * the default. This cannot be combined with {@link #onDuplicateKeyError()}
    +     * or {@link #onDuplicateKeyUpdate()}
    +     */
    +    @Support
    +    LoaderOptionsStep<R> onDuplicateKeyIgnore();
    +
    +    /**
    +     * Instruct the <code>Loader</code> to cause an error in loading if there
    +     * are any duplicate records.
    +     * <p>
    +     * If this is combined with {@link #onErrorAbort()} and {@link #commitAll()}
    +     * in a later step of <code>Loader</code>, then loading is rollbacked on
    +     * abort.
    +     * <p>
    +     * If you don't specify a behaviour, this will be the default. This cannot
    +     * be combined with {@link #onDuplicateKeyIgnore()} or
    +     * {@link #onDuplicateKeyUpdate()}
    +     */
    +    @Support
    +    LoaderOptionsStep<R> onDuplicateKeyError();
    +
    +    /**
    +     * Instruct the <code>Loader</code> to ignore any errors that might occur
    +     * when inserting a record. The <code>Loader</code> will then skip the
    +     * record and try inserting the next one. After loading, you can access
    +     * errors with {@link Loader#errors()}
    +     * <p>
    +     * If you don't specify a behaviour, {@link #onErrorAbort()} will be the
    +     * default. This cannot be combined with {@link #onErrorAbort()}
    +     */
    +    @Support
    +    LoaderOptionsStep<R> onErrorIgnore();
    +
    +    /**
    +     * Instruct the <code>Loader</code> to abort loading after the first error
    +     * that might occur when inserting a record. After loading, you can access
    +     * errors with {@link Loader#errors()}
    +     * <p>
    +     * If this is combined with {@link #commitAll()} in a later step of
    +     * <code>Loader</code>, then loading is rollbacked on abort.
    +     * <p>
    +     * If you don't specify a behaviour, this will be the default. This cannot
    +     * be combined with {@link #onErrorIgnore()}
    +     */
    +    @Support
    +    LoaderOptionsStep<R> onErrorAbort();
    +
    +    /**
    +     * Commit each loaded record. This will prevent batch <code>INSERT</code>'s
    +     * altogether. Otherwise, this is the same as calling
    +     * {@link #commitAfter(int)} with <code>1</code> as parameter.
    +     * <p>
    +     * With this clause, errors will never result in a rollback, even when you
    +     * specify {@link #onDuplicateKeyError()} or {@link #onErrorAbort()}
    +     * <p>
    +     * The COMMIT OPTIONS might be useful for fine-tuning performance behaviour
    +     * in some RDBMS, where large commits lead to a high level of concurrency in
    +     * the database. Use this on fresh transactions only. Commits/Rollbacks are
    +     * executed directly upon {@link Configuration#getConnection()}. This might
    +     * not work with container-managed transactions, or when
    +     * {@link Connection#getAutoCommit()} is set to true.
    +     * <p>
    +     * If you don't specify a COMMIT OPTION, {@link #commitNone()} will be the
    +     * default, leaving transaction handling up to you.
    +     */
    +    @Support
    +    LoaderOptionsStep<R> commitEach();
    +
    +    /**
    +     * Commit after a certain number of inserted records. This may enable batch
    +     * <code>INSERT</code>'s for at most <code>number</code> records.
    +     * <p>
    +     * With this clause, errors will never result in a rollback, even when you
    +     * specify {@link #onDuplicateKeyError()} or {@link #onErrorAbort()}
    +     * <p>
    +     * The COMMIT OPTIONS might be useful for fine-tuning performance behaviour
    +     * in some RDBMS, where large commits lead to a high level of concurrency in
    +     * the database. Use this on fresh transactions only. Commits/Rollbacks are
    +     * executed directly upon {@link Configuration#getConnection()}. This might
    +     * not work with container-managed transactions, or when
    +     * {@link Connection#getAutoCommit()} is set to true.
    +     * <p>
    +     * If you don't specify a COMMIT OPTION, {@link #commitNone()} will be the
    +     * default, leaving transaction handling up to you.
    +     *
    +     * @param number The number of records that are committed together.
    +     */
    +    @Support
    +    LoaderOptionsStep<R> commitAfter(int number);
    +
    +    /**
    +     * Commit only after inserting all records. If this is used together with
    +     * {@link #onDuplicateKeyError()} or {@link #onErrorAbort()}, an abort will
    +     * result in a rollback of previously loaded records.
    +     * <p>
    +     * The COMMIT OPTIONS might be useful for fine-tuning performance behaviour
    +     * in some RDBMS, where large commits lead to a high level of concurrency in
    +     * the database. Use this on fresh transactions only. Commits/Rollbacks are
    +     * executed directly upon {@link Configuration#getConnection()}. This might
    +     * not work with container-managed transactions, or when
    +     * {@link Connection#getAutoCommit()} is set to true.
    +     * <p>
    +     * If you don't specify a COMMIT OPTION, {@link #commitNone()} will be the
    +     * default, leaving transaction handling up to you.
    +     */
    +    @Support
    +    LoaderOptionsStep<R> commitAll();
    +
    +    /**
    +     * Leave committing / rollbacking up to client code.
    +     * <p>
    +     * The COMMIT OPTIONS might be useful for fine-tuning performance behaviour
    +     * in some RDBMS, where large commits lead to a high level of concurrency in
    +     * the database.
    +     * <p>
    +     * If you don't specify a COMMIT OPTION, this will be the default, leaving
    +     * transaction handling up to you. This should be your choice, when you use
    +     * container-managed transactions, too, or your
    +     * {@link Connection#getAutoCommit()} value is set to true.
    +     */
    +    @Support
    +    LoaderOptionsStep<R> commitNone();
    +
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/LoaderSourceStep.java b/jOOQ/src/main/java/org/jooq/LoaderSourceStep.java
    new file mode 100644
    index 00000000000..4715f078040
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/LoaderSourceStep.java
    @@ -0,0 +1,108 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq;
    +
    +import java.io.File;
    +import java.io.FileNotFoundException;
    +import java.io.InputStream;
    +import java.io.Reader;
    +
    +import org.xml.sax.InputSource;
    +
    +/**
    + * The <code>Loader</code> API is used for configuring data loads.
    + * <p>
    + * The step in constructing the {@link Loader} object where you can specify the
    + * load type and data source.
    + *
    + * @author Lukas Eder
    + */
    +public interface LoaderSourceStep<R extends TableRecord<R>> {
    +
    +    /**
    +     * Load CSV data
    +     */
    +    @Support
    +    LoaderCSVStep<R> loadCSV(File file) throws FileNotFoundException;
    +
    +    /**
    +     * Load CSV data
    +     */
    +    @Support
    +    LoaderCSVStep<R> loadCSV(String data);
    +
    +    /**
    +     * Load CSV data
    +     */
    +    @Support
    +    LoaderCSVStep<R> loadCSV(InputStream stream);
    +
    +    /**
    +     * Load CSV data
    +     */
    +    @Support
    +    LoaderCSVStep<R> loadCSV(Reader reader);
    +
    +    /**
    +     * Load XML data
    +     */
    +    @Support
    +    LoaderXMLStep<R> loadXML(File file) throws FileNotFoundException;
    +
    +    /**
    +     * Load XML data
    +     */
    +    @Support
    +    LoaderXMLStep<R> loadXML(String data);
    +
    +    /**
    +     * Load XML data
    +     */
    +    @Support
    +    LoaderXMLStep<R> loadXML(InputStream stream);
    +
    +    /**
    +     * Load XML data
    +     */
    +    @Support
    +    LoaderXMLStep<R> loadXML(Reader reader);
    +
    +    /**
    +     * Load XML data
    +     */
    +    @Support
    +    LoaderXMLStep<R> loadXML(InputSource source);
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/LoaderXMLStep.java b/jOOQ/src/main/java/org/jooq/LoaderXMLStep.java
    new file mode 100644
    index 00000000000..70c29f01df1
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/LoaderXMLStep.java
    @@ -0,0 +1,50 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq;
    +
    +/**
    + * The <code>Loader</code> API is used for configuring data loads.
    + * <p>
    + * The step in constructing the {@link Loader} object where you can set the
    + * mandatory XML loader options.
    + *
    + * @author Lukas Eder
    + */
    +public interface LoaderXMLStep<R extends TableRecord<R>> {
    +
    +    // [...] This API is not yet defined
    +
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/LockProvider.java b/jOOQ/src/main/java/org/jooq/LockProvider.java
    new file mode 100644
    index 00000000000..7fe662f6966
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/LockProvider.java
    @@ -0,0 +1,240 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq;
    +
    +import static org.jooq.SQLDialect.ASE;
    +import static org.jooq.SQLDialect.DB2;
    +import static org.jooq.SQLDialect.DERBY;
    +import static org.jooq.SQLDialect.H2;
    +import static org.jooq.SQLDialect.HSQLDB;
    +import static org.jooq.SQLDialect.INGRES;
    +import static org.jooq.SQLDialect.MYSQL;
    +import static org.jooq.SQLDialect.ORACLE;
    +import static org.jooq.SQLDialect.POSTGRES;
    +import static org.jooq.SQLDialect.SYBASE;
    +
    +import java.util.Collection;
    +
    +/**
    + * A query part (mostly a {@link Select} statement) providing the possibility of
    + * locking tables, rows using a <code>FOR UPDATE</code> clause
    + *
    + * @author Lukas Eder
    + */
    +public interface LockProvider {
    +
    +    /**
    +     * Sets the "FOR UPDATE" flag onto the query
    +     * <p>
    +     * This has been observed to be supported by any of these dialects:
    +     * <ul>
    +     * <li><a href=
    +     * "http://publib.boulder.ibm.com/infocenter/db2luw/v9r7/index.jsp?topic=/com.ibm.db2.luw.sql.ref.doc/doc/r0000879.html"
    +     * >DB2 FOR UPDATE and similar clauses</a></li>
    +     * <li><a
    +     * href="http://db.apache.org/derby/docs/10.7/ref/rrefsqlj31783.html">
    +     * Derby's FOR UPDATE clause</a></li>
    +     * <li><a href="http://www.h2database.com/html/grammar.html#select">H2's FOR
    +     * UPDATE clause</a></li>
    +     * <li><a
    +     * href="http://www.hsqldb.org/doc/2.0/guide/dataaccess-chapt.html#N11DA9"
    +     * >HSQLDB's FOR UPDATE clause</a></li>
    +     * <li><a
    +     * href="http://dev.mysql.com/doc/refman/5.5/en/innodb-locking-reads.html"
    +     * >MySQL's InnoDB locking reads</a></li>
    +     * <li><a
    +     * href="http://www.techonthenet.com/oracle/cursors/for_update.php">Oracle's
    +     * PL/SQL FOR UPDATE clause</a></li>
    +     * <li><a href=
    +     * "http://www.postgresql.org/docs/9.0/static/sql-select.html#SQL-FOR-UPDATE-SHARE"
    +     * >Postgres FOR UPDATE / FOR SHARE</a></li>
    +     * </ul>
    +     * <p>
    +     * These dialects are known not to support the <code>FOR UPDATE</code>
    +     * clause in regular SQL:
    +     * <ul>
    +     * <li> {@link SQLDialect#SQLITE}</li>
    +     * <li> {@link SQLDialect#SQLSERVER}</li>
    +     * </ul>
    +     * <p>
    +     * If your dialect does not support this clause, jOOQ will still render it,
    +     * if you apply it to your query. This might then cause syntax errors
    +     * reported either by your database or your JDBC driver.
    +     * <p>
    +     * You shouldn't combine this with {@link #setForShare(boolean)}
    +     *
    +     * @param forUpdate The flag's value
    +     */
    +    @Support({ ASE, DB2, DERBY, H2, HSQLDB, INGRES, MYSQL, ORACLE, POSTGRES, SYBASE })
    +    void setForUpdate(boolean forUpdate);
    +
    +    /**
    +     * Some RDBMS allow for specifying the fields that should be locked by the
    +     * <code>FOR UPDATE</code> clause, instead of the full row.
    +     * <p>
    +     * This automatically sets the {@link #setForUpdate(boolean)} flag, and
    +     * unsets the {@link #setForShare(boolean)} flag, if it was previously set.
    +     * <p>
    +     * This has been observed to be natively supported by any of these dialects:
    +     * <ul>
    +     * <li>DB2</li>
    +     * <li>Derby</li>
    +     * <li>H2</li>
    +     * <li>HSQLDB</li>
    +     * <li>Ingres</li>
    +     * <li>Oracle</li>
    +     * <li>Sybase</li>
    +     * </ul>
    +     *
    +     * @param fields The fields that should be locked
    +     */
    +    @Support({ DB2, DERBY, H2, HSQLDB, INGRES, ORACLE, SYBASE })
    +    void setForUpdateOf(Field<?>... fields);
    +
    +    /**
    +     * Some RDBMS allow for specifying the fields that should be locked by the
    +     * <code>FOR UPDATE</code> clause, instead of the full row.
    +     * <p>
    +     *
    +     * @see #setForUpdateOf(Field...)
    +     */
    +    @Support({ DB2, DERBY, H2, HSQLDB, INGRES, ORACLE, SYBASE })
    +    void setForUpdateOf(Collection<? extends Field<?>> fields);
    +
    +    /**
    +     * Some RDBMS allow for specifying the tables that should be locked by the
    +     * <code>FOR UPDATE</code> clause, instead of the full row.
    +     * <p>
    +     * This automatically sets the {@link #setForUpdate(boolean)} flag, and
    +     * unsets the {@link #setForShare(boolean)} flag, if it was previously set.
    +     * <p>
    +     * This has been observed to be natively supported by any of these dialects:
    +     * <ul>
    +     * <li>Postgres</li>
    +     * <li>H2</li>
    +     * <li>HSQLDB</li>
    +     * <li>Sybase</li>
    +     * </ul>
    +     * <p>
    +     * jOOQ simulates this by locking all known fields of [<code>tables</code>]
    +     * for any of these dialects:
    +     * <ul>
    +     * <li>DB2</li>
    +     * <li>Derby</li>
    +     * <li>Ingres</li>
    +     * <li>Oracle</li>
    +     * </ul>
    +     *
    +     * @param tables The tables that should be locked
    +     */
    +    @Support({ DB2, DERBY, H2, HSQLDB, INGRES, POSTGRES, ORACLE, SYBASE })
    +    void setForUpdateOf(Table<?>... tables);
    +
    +    /**
    +     * Some RDBMS allow for specifying the locking mode for the applied
    +     * <code>FOR UPDATE</code> clause. In this case, the session will wait for
    +     * some <code>seconds</code>, before aborting the lock acquirement if the
    +     * lock is not available.
    +     * <p>
    +     * This automatically sets the {@link #setForUpdate(boolean)} flag, and
    +     * unsets the {@link #setForShare(boolean)} flag, if it was previously set.
    +     * <p>
    +     * This has been observed to be supported by any of these dialects:
    +     * <ul>
    +     * <li>Oracle</li>
    +     * </ul>
    +     *
    +     * @param seconds The number of seconds to wait for a lock
    +     */
    +    @Support(ORACLE)
    +    void setForUpdateWait(int seconds);
    +
    +    /**
    +     * Some RDBMS allow for specifying the locking mode for the applied
    +     * <code>FOR UPDATE</code> clause. In this case, the session will not wait
    +     * before aborting the lock acquirement if the lock is not available.
    +     * <p>
    +     * This automatically sets the {@link #setForUpdate(boolean)} flag, and
    +     * unsets the {@link #setForShare(boolean)} flag, if it was previously set.
    +     * <p>
    +     * This has been observed to be supported by any of these dialects:
    +     * <ul>
    +     * <li>Oracle</li>
    +     * </ul>
    +     */
    +    @Support(ORACLE)
    +    void setForUpdateNoWait();
    +
    +    /**
    +     * Some RDBMS allow for specifying the locking mode for the applied
    +     * <code>FOR UPDATE</code> clause. In this case, the session will skip all
    +     * locked rows from the select statement, whose lock is not available.
    +     * <p>
    +     * This automatically sets the {@link #setForUpdate(boolean)} flag, and
    +     * unsets the {@link #setForShare(boolean)} flag, if it was previously set.
    +     * <p>
    +     * This has been observed to be supported by any of these dialects:
    +     * <ul>
    +     * <li>Oracle</li>
    +     * </ul>
    +     */
    +    @Support(ORACLE)
    +    void setForUpdateSkipLocked();
    +
    +    /**
    +     * Sets the "FOR SHARE" flag onto the query
    +     * <p>
    +     * This has been observed to be supported by any of these dialects:
    +     * <ul>
    +     * <li><a
    +     * href="http://dev.mysql.com/doc/refman/5.5/en/innodb-locking-reads.html"
    +     * >MySQL's InnoDB locking reads</a></li>
    +     * <li><a href=
    +     * "http://www.postgresql.org/docs/9.0/static/sql-select.html#SQL-FOR-UPDATE-SHARE"
    +     * >Postgres FOR UPDATE / FOR SHARE</a></li>
    +     * </ul>
    +     * <p>
    +     * If your dialect does not support this clause, jOOQ will still render it,
    +     * if you apply it to your query. This might then cause syntax errors
    +     * reported either by your database or your JDBC driver.
    +     * <p>
    +     * You shouldn't combine this with {@link #setForUpdate(boolean)}
    +     *
    +     * @param forShare The flag's value
    +     */
    +    @Support({ MYSQL, POSTGRES })
    +    void setForShare(boolean forShare);
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/MasterDataType.java b/jOOQ/src/main/java/org/jooq/MasterDataType.java
    new file mode 100644
    index 00000000000..1166a59df30
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/MasterDataType.java
    @@ -0,0 +1,49 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq;
    +
    +/**
    + * A type holding master data.
    + *
    + * @author Lukas Eder
    + */
    +public interface MasterDataType<T> {
    +
    +    /**
    +     * Get the primary key value for this master data type
    +     */
    +    T getPrimaryKey();
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/Merge.java b/jOOQ/src/main/java/org/jooq/Merge.java
    new file mode 100644
    index 00000000000..e16bff287fc
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/Merge.java
    @@ -0,0 +1,45 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq;
    +
    +/**
    + * A {@link Query} that can merge data in the database.
    + *
    + * @author Lukas Eder
    + */
    +public interface Merge<R extends Record> extends Query {
    +
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/MergeFinalStep.java b/jOOQ/src/main/java/org/jooq/MergeFinalStep.java
    new file mode 100644
    index 00000000000..a9d00fc810d
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/MergeFinalStep.java
    @@ -0,0 +1,59 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq;
    +
    +/**
    + * This type is used for the {@link Merge}'s DSL API.
    + * <p>
    + * Example: <code><pre>
    + * Factory create = new Factory();
    + *
    + * create.mergeInto(table)
    + *       .using(select)
    + *       .on(condition)
    + *       .whenMatchedThenUpdate()
    + *       .set(field1, value1)
    + *       .set(field2, value2)
    + *       .whenNotMatchedThenInsert(field1, field2)
    + *       .values(value1, value2)
    + *       .execute();
    + * </pre></code>
    + *
    + * @author Lukas Eder
    + */
    +public interface MergeFinalStep<R extends Record> extends Merge<R> {
    +
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/MergeMatchedDeleteStep.java b/jOOQ/src/main/java/org/jooq/MergeMatchedDeleteStep.java
    new file mode 100644
    index 00000000000..f5826ac91fd
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/MergeMatchedDeleteStep.java
    @@ -0,0 +1,75 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq;
    +
    +import static org.jooq.SQLDialect.ORACLE;
    +
    +/**
    + * This type is used for the {@link Merge}'s DSL API.
    + * <p>
    + * Example: <code><pre>
    + * Factory create = new Factory();
    + *
    + * create.mergeInto(table)
    + *       .using(select)
    + *       .on(condition)
    + *       .whenMatchedThenUpdate()
    + *       .set(field1, value1)
    + *       .set(field2, value2)
    + *       .whenNotMatchedThenInsert(field1, field2)
    + *       .values(value1, value2)
    + *       .execute();
    + * </pre></code>
    + *
    + * @author Lukas Eder
    + */
    +public interface MergeMatchedDeleteStep<R extends Record> extends MergeNotMatchedStep<R> {
    +
    +    /**
    +     * Add an additional <code>DELETE WHERE</code> clause to the preceding
    +     * <code>WHEN MATCHED THEN UPDATE</code> clause.
    +     * <p>
    +     * <b>Note:</b> This syntax is only available for the
    +     * {@link SQLDialect#ORACLE} database!
    +     * <p>
    +     * See <a href=
    +     * "http://docs.oracle.com/cd/B19306_01/server.102/b14200/statements_9016.htm"
    +     * >http://docs.oracle.com/cd/B19306_01/server.102/b14200/statements_9016.
    +     * htm</a> for a full definition of the Oracle <code>MERGE</code> statement
    +     */
    +    @Support(ORACLE)
    +    MergeNotMatchedStep<R> deleteWhere(Condition condition);
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/MergeMatchedSetMoreStep.java b/jOOQ/src/main/java/org/jooq/MergeMatchedSetMoreStep.java
    new file mode 100644
    index 00000000000..4f77fc62324
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/MergeMatchedSetMoreStep.java
    @@ -0,0 +1,62 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq;
    +
    +/**
    + * This type is used for the {@link Merge}'s DSL API.
    + * <p>
    + * Example: <code><pre>
    + * Factory create = new Factory();
    + *
    + * create.mergeInto(table)
    + *       .using(select)
    + *       .on(condition)
    + *       .whenMatchedThenUpdate()
    + *       .set(field1, value1)
    + *       .set(field2, value2)
    + *       .whenNotMatchedThenInsert(field1, field2)
    + *       .values(value1, value2)
    + *       .execute();
    + * </pre></code>
    + *
    + * @author Lukas Eder
    + */
    +public interface MergeMatchedSetMoreStep<R extends Record>
    +   extends
    +       MergeMatchedSetStep<R>,
    +       MergeMatchedWhereStep<R> {
    +
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/MergeMatchedSetStep.java b/jOOQ/src/main/java/org/jooq/MergeMatchedSetStep.java
    new file mode 100644
    index 00000000000..79f1dac564e
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/MergeMatchedSetStep.java
    @@ -0,0 +1,91 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq;
    +
    +import static org.jooq.SQLDialect.DB2;
    +import static org.jooq.SQLDialect.HSQLDB;
    +import static org.jooq.SQLDialect.ORACLE;
    +import static org.jooq.SQLDialect.SQLSERVER;
    +import static org.jooq.SQLDialect.SYBASE;
    +
    +import java.util.Map;
    +
    +/**
    + * This type is used for the {@link Merge}'s DSL API.
    + * <p>
    + * Example: <code><pre>
    + * Factory create = new Factory();
    + *
    + * create.mergeInto(table)
    + *       .using(select)
    + *       .on(condition)
    + *       .whenMatchedThenUpdate()
    + *       .set(field1, value1)
    + *       .set(field2, value2)
    + *       .whenNotMatchedThenInsert(field1, field2)
    + *       .values(value1, value2)
    + *       .execute();
    + * </pre></code>
    + *
    + * @author Lukas Eder
    + */
    +public interface MergeMatchedSetStep<R extends Record> {
    +
    +    /**
    +     * Set values for <code>UPDATE</code> in the <code>MERGE</code> statement's
    +     * <code>WHEN MATCHED</code> clause
    +     */
    +    @Support({ DB2, HSQLDB, ORACLE, SQLSERVER, SYBASE })
    +    <T> MergeMatchedSetMoreStep<R> set(Field<T> field, T value);
    +
    +    /**
    +     * Set values for <code>UPDATE</code> in the <code>MERGE</code> statement's
    +     * <code>WHEN MATCHED</code> clause
    +     */
    +    @Support({ DB2, HSQLDB, ORACLE, SQLSERVER, SYBASE })
    +    <T> MergeMatchedSetMoreStep<R> set(Field<T> field, Field<T> value);
    +
    +    /**
    +     * Set multiple values for <code>UPDATE</code> in the <code>MERGE</code>
    +     * statement's <code>WHEN MATCHED</code> clause.
    +     * <p>
    +     * Please assure that key/value pairs have matching <code>&lt;T&gt;</code>
    +     * types. Values can either be of type <code>&lt;T&gt;</code> or
    +     * <code>Field&lt;T&gt;</code>
    +     */
    +    @Support({ DB2, HSQLDB, ORACLE, SQLSERVER, SYBASE })
    +    MergeMatchedSetMoreStep<R> set(Map<? extends Field<?>, ?> map);
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/MergeMatchedStep.java b/jOOQ/src/main/java/org/jooq/MergeMatchedStep.java
    new file mode 100644
    index 00000000000..5007aecb31b
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/MergeMatchedStep.java
    @@ -0,0 +1,71 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq;
    +
    +import static org.jooq.SQLDialect.DB2;
    +import static org.jooq.SQLDialect.HSQLDB;
    +import static org.jooq.SQLDialect.ORACLE;
    +import static org.jooq.SQLDialect.SQLSERVER;
    +import static org.jooq.SQLDialect.SYBASE;
    +
    +/**
    + * This type is used for the {@link Merge}'s DSL API.
    + * <p>
    + * Example: <code><pre>
    + * Factory create = new Factory();
    + *
    + * create.mergeInto(table)
    + *       .using(select)
    + *       .on(condition)
    + *       .whenMatchedThenUpdate()
    + *       .set(field1, value1)
    + *       .set(field2, value2)
    + *       .whenNotMatchedThenInsert(field1, field2)
    + *       .values(value1, value2)
    + *       .execute();
    + * </pre></code>
    + *
    + * @author Lukas Eder
    + */
    +public interface MergeMatchedStep<R extends Record> extends MergeNotMatchedStep<R> {
    +
    +    /**
    +     * Add the <code>WHEN MATCHED THEN UPDATE</code> clause to the
    +     * <code>MERGE</code> statement
    +     */
    +    @Support({ DB2, HSQLDB, ORACLE, SQLSERVER, SYBASE })
    +    MergeMatchedSetStep<R> whenMatchedThenUpdate();
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/MergeMatchedWhereStep.java b/jOOQ/src/main/java/org/jooq/MergeMatchedWhereStep.java
    new file mode 100644
    index 00000000000..e4a3521681e
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/MergeMatchedWhereStep.java
    @@ -0,0 +1,75 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq;
    +
    +import static org.jooq.SQLDialect.ORACLE;
    +
    +/**
    + * This type is used for the {@link Merge}'s DSL API.
    + * <p>
    + * Example: <code><pre>
    + * Factory create = new Factory();
    + *
    + * create.mergeInto(table)
    + *       .using(select)
    + *       .on(condition)
    + *       .whenMatchedThenUpdate()
    + *       .set(field1, value1)
    + *       .set(field2, value2)
    + *       .whenNotMatchedThenInsert(field1, field2)
    + *       .values(value1, value2)
    + *       .execute();
    + * </pre></code>
    + *
    + * @author Lukas Eder
    + */
    +public interface MergeMatchedWhereStep<R extends Record> extends MergeNotMatchedStep<R> {
    +
    +    /**
    +     * Add an additional <code>WHERE</code> clause to the preceding
    +     * <code>WHEN MATCHED THEN UPDATE</code> clause.
    +     * <p>
    +     * <b>Note:</b> This syntax is only available for the
    +     * {@link SQLDialect#ORACLE} database!
    +     * <p>
    +     * See <a href=
    +     * "http://docs.oracle.com/cd/B19306_01/server.102/b14200/statements_9016.htm"
    +     * >http://docs.oracle.com/cd/B19306_01/server.102/b14200/statements_9016.
    +     * htm</a> for a full definition of the Oracle <code>MERGE</code> statement
    +     */
    +    @Support(ORACLE)
    +    MergeMatchedDeleteStep<R> where(Condition condition);
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/MergeNotMatchedSetMoreStep.java b/jOOQ/src/main/java/org/jooq/MergeNotMatchedSetMoreStep.java
    new file mode 100644
    index 00000000000..78cd7448e82
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/MergeNotMatchedSetMoreStep.java
    @@ -0,0 +1,62 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq;
    +
    +/**
    + * This type is used for the {@link Merge}'s DSL API.
    + * <p>
    + * Example: <code><pre>
    + * Factory create = new Factory();
    + *
    + * create.mergeInto(table)
    + *       .using(select)
    + *       .on(condition)
    + *       .whenMatchedThenUpdate()
    + *       .set(field1, value1)
    + *       .set(field2, value2)
    + *       .whenNotMatchedThenInsert(field1, field2)
    + *       .values(value1, value2)
    + *       .execute();
    + * </pre></code>
    + *
    + * @author Lukas Eder
    + */
    +public interface MergeNotMatchedSetMoreStep<R extends Record>
    +   extends
    +       MergeNotMatchedSetStep<R>,
    +       MergeNotMatchedWhereStep<R> {
    +
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/MergeNotMatchedSetStep.java b/jOOQ/src/main/java/org/jooq/MergeNotMatchedSetStep.java
    new file mode 100644
    index 00000000000..53c0ed6a689
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/MergeNotMatchedSetStep.java
    @@ -0,0 +1,91 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq;
    +
    +import static org.jooq.SQLDialect.DB2;
    +import static org.jooq.SQLDialect.HSQLDB;
    +import static org.jooq.SQLDialect.ORACLE;
    +import static org.jooq.SQLDialect.SQLSERVER;
    +import static org.jooq.SQLDialect.SYBASE;
    +
    +import java.util.Map;
    +
    +/**
    + * This type is used for the {@link Merge}'s DSL API.
    + * <p>
    + * Example: <code><pre>
    + * Factory create = new Factory();
    + *
    + * create.mergeInto(table)
    + *       .using(select)
    + *       .on(condition)
    + *       .whenMatchedThenUpdate()
    + *       .set(field1, value1)
    + *       .set(field2, value2)
    + *       .whenNotMatchedThenInsert(field1, field2)
    + *       .values(value1, value2)
    + *       .execute();
    + * </pre></code>
    + *
    + * @author Lukas Eder
    + */
    +public interface MergeNotMatchedSetStep<R extends Record> {
    +
    +    /**
    +     * Set values for <code>INSERT</code> in the <code>MERGE</code> statement's
    +     * <code>WHEN NOT MATCHED</code> clause
    +     */
    +    @Support({ DB2, HSQLDB, ORACLE, SQLSERVER, SYBASE })
    +    <T> MergeNotMatchedSetMoreStep<R> set(Field<T> field, T value);
    +
    +    /**
    +     * Set values for <code>INSERT</code> in the <code>MERGE</code> statement's
    +     * <code>WHEN NOT MATCHED</INSERT> clause
    +     */
    +    @Support({ DB2, HSQLDB, ORACLE, SQLSERVER, SYBASE })
    +    <T> MergeNotMatchedSetMoreStep<R> set(Field<T> field, Field<T> value);
    +
    +    /**
    +     * Set multiple values for <code>INSERT</code> in the <code>MERGE</code>
    +     * statement's <code>WHEN NOT MATCHED</code> clause.
    +     * <p>
    +     * Please assure that key/value pairs have matching <code>&lt;T&gt;</code>
    +     * types. Values can either be of type <code>&lt;T&gt;</code> or
    +     * <code>Field&lt;T&gt;</code>
    +     */
    +    @Support({ DB2, HSQLDB, ORACLE, SQLSERVER, SYBASE })
    +    MergeNotMatchedSetMoreStep<R> set(Map<? extends Field<?>, ?> map);
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/MergeNotMatchedStep.java b/jOOQ/src/main/java/org/jooq/MergeNotMatchedStep.java
    new file mode 100644
    index 00000000000..2086bbee777
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/MergeNotMatchedStep.java
    @@ -0,0 +1,92 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq;
    +
    +import static org.jooq.SQLDialect.DB2;
    +import static org.jooq.SQLDialect.HSQLDB;
    +import static org.jooq.SQLDialect.ORACLE;
    +import static org.jooq.SQLDialect.SQLSERVER;
    +import static org.jooq.SQLDialect.SYBASE;
    +
    +import java.util.Collection;
    +
    +/**
    + * This type is used for the {@link Merge}'s DSL API.
    + * <p>
    + * Example: <code><pre>
    + * Factory create = new Factory();
    + *
    + * create.mergeInto(table)
    + *       .using(select)
    + *       .on(condition)
    + *       .whenMatchedThenUpdate()
    + *       .set(field1, value1)
    + *       .set(field2, value2)
    + *       .whenNotMatchedThenInsert(field1, field2)
    + *       .values(value1, value2)
    + *       .execute();
    + * </pre></code>
    + *
    + * @author Lukas Eder
    + */
    +public interface MergeNotMatchedStep<R extends Record> extends MergeFinalStep<R> {
    +
    +    /**
    +     * Add the <code>WHEN NOT MATCHED THEN INSERT</code> clause to the
    +     * <code>MERGE</code> statement.
    +     * <p>
    +     * Unlike the {@link #whenNotMatchedThenInsert(Field...)} and
    +     * {@link #whenNotMatchedThenInsert(Collection)} methods, this will give
    +     * access to a MySQL-like API allowing for
    +     * <code>INSERT SET a = x, b = y</code> syntax.
    +     */
    +    @Support({ DB2, HSQLDB, ORACLE, SQLSERVER, SYBASE })
    +    MergeNotMatchedSetStep<R> whenNotMatchedThenInsert();
    +
    +    /**
    +     * Add the <code>WHEN NOT MATCHED THEN INSERT</code> clause to the
    +     * <code>MERGE</code> statement
    +     */
    +    @Support({ DB2, HSQLDB, ORACLE, SQLSERVER, SYBASE })
    +    MergeNotMatchedValuesStep<R> whenNotMatchedThenInsert(Field<?>... fields);
    +
    +    /**
    +     * Add the <code>WHEN MATCHED THEN UPDATE</code> clause to the
    +     * <code>MERGE</code> statement
    +     */
    +    @Support({ DB2, HSQLDB, ORACLE, SQLSERVER, SYBASE })
    +    MergeNotMatchedValuesStep<R> whenNotMatchedThenInsert(Collection<? extends Field<?>> fields);
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/MergeNotMatchedValuesStep.java b/jOOQ/src/main/java/org/jooq/MergeNotMatchedValuesStep.java
    new file mode 100644
    index 00000000000..a849068afdd
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/MergeNotMatchedValuesStep.java
    @@ -0,0 +1,87 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq;
    +
    +import static org.jooq.SQLDialect.DB2;
    +import static org.jooq.SQLDialect.HSQLDB;
    +import static org.jooq.SQLDialect.ORACLE;
    +import static org.jooq.SQLDialect.SQLSERVER;
    +import static org.jooq.SQLDialect.SYBASE;
    +
    +import java.util.Collection;
    +
    +/**
    + * This type is used for the {@link Merge}'s DSL API.
    + * <p>
    + * Example: <code><pre>
    + * Factory create = new Factory();
    + *
    + * create.mergeInto(table)
    + *       .using(select)
    + *       .on(condition)
    + *       .whenMatchedThenUpdate()
    + *       .set(field1, value1)
    + *       .set(field2, value2)
    + *       .whenNotMatchedThenInsert(field1, field2)
    + *       .values(value1, value2)
    + *       .execute();
    + * </pre></code>
    + *
    + * @author Lukas Eder
    + */
    +public interface MergeNotMatchedValuesStep<R extends Record> {
    +
    +    /**
    +     * Set <code>VALUES</code> for <code>INSERT</code> in the <code>MERGE</code>
    +     * statement's <code>WHEN NOT MATCHED THEN INSERT</code> clause.
    +     */
    +    @Support({ DB2, HSQLDB, ORACLE, SQLSERVER, SYBASE })
    +    MergeNotMatchedWhereStep<R> values(Object... values);
    +
    +    /**
    +     * Set <code>VALUES</code> for <code>INSERT</code> in the <code>MERGE</code>
    +     * statement's <code>WHEN NOT MATCHED THEN INSERT</code> clause.
    +     */
    +    @Support({ DB2, HSQLDB, ORACLE, SQLSERVER, SYBASE })
    +    MergeNotMatchedWhereStep<R> values(Field<?>... values);
    +
    +    /**
    +     * Set <code>VALUES</code> for <code>INSERT</code> in the <code>MERGE</code>
    +     * statement's <code>WHEN NOT MATCHED THEN INSERT</code> clause.
    +     */
    +    @Support({ DB2, HSQLDB, ORACLE, SQLSERVER, SYBASE })
    +    MergeNotMatchedWhereStep<R> values(Collection<?> values);
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/MergeNotMatchedWhereStep.java b/jOOQ/src/main/java/org/jooq/MergeNotMatchedWhereStep.java
    new file mode 100644
    index 00000000000..a85c60bdaf4
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/MergeNotMatchedWhereStep.java
    @@ -0,0 +1,75 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq;
    +
    +import static org.jooq.SQLDialect.ORACLE;
    +
    +/**
    + * This type is used for the {@link Merge}'s DSL API.
    + * <p>
    + * Example: <code><pre>
    + * Factory create = new Factory();
    + *
    + * create.mergeInto(table)
    + *       .using(select)
    + *       .on(condition)
    + *       .whenMatchedThenUpdate()
    + *       .set(field1, value1)
    + *       .set(field2, value2)
    + *       .whenNotMatchedThenInsert(field1, field2)
    + *       .values(value1, value2)
    + *       .execute();
    + * </pre></code>
    + *
    + * @author Lukas Eder
    + */
    +public interface MergeNotMatchedWhereStep<R extends Record> extends MergeFinalStep<R> {
    +
    +    /**
    +     * Add an additional <code>WHERE</code> clause to the preceding
    +     * <code>WHEN NOT MATCHED THEN INSERT</code> clause.
    +     * <p>
    +     * <b>Note:</b> This syntax is only available for the
    +     * {@link SQLDialect#ORACLE} database!
    +     * <p>
    +     * See <a href=
    +     * "http://docs.oracle.com/cd/B19306_01/server.102/b14200/statements_9016.htm"
    +     * >http://docs.oracle.com/cd/B19306_01/server.102/b14200/statements_9016.
    +     * htm</a> for a full definition of the Oracle <code>MERGE</code> statement
    +     */
    +    @Support(ORACLE)
    +    MergeFinalStep<R> where(Condition condition);
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/MergeOnConditionStep.java b/jOOQ/src/main/java/org/jooq/MergeOnConditionStep.java
    new file mode 100644
    index 00000000000..d9a7a16defa
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/MergeOnConditionStep.java
    @@ -0,0 +1,178 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq;
    +
    +import static org.jooq.SQLDialect.DB2;
    +import static org.jooq.SQLDialect.HSQLDB;
    +import static org.jooq.SQLDialect.ORACLE;
    +import static org.jooq.SQLDialect.SQLSERVER;
    +import static org.jooq.SQLDialect.SYBASE;
    +
    +import org.jooq.impl.Factory;
    +
    +/**
    + * This type is used for the {@link Merge}'s DSL API.
    + * <p>
    + * Example: <code><pre>
    + * Factory create = new Factory();
    + *
    + * create.mergeInto(table)
    + *       .using(select)
    + *       .on(condition)
    + *       .whenMatchedThenUpdate()
    + *       .set(field1, value1)
    + *       .set(field2, value2)
    + *       .whenNotMatchedThenInsert(field1, field2)
    + *       .values(value1, value2)
    + *       .execute();
    + * </pre></code>
    + *
    + * @author Lukas Eder
    + */
    +public interface MergeOnConditionStep<R extends Record> extends MergeMatchedStep<R> {
    +
    +    /**
    +     * Combine the currently assembled conditions with another one using the
    +     * {@link Operator#AND} operator and proceed to the next step.
    +     */
    +    @Support({ DB2, HSQLDB, ORACLE, SQLSERVER, SYBASE })
    +    MergeOnConditionStep<R> and(Condition condition);
    +
    +    /**
    +     * Combine the currently assembled conditions with another one using the
    +     * {@link Operator#AND} operator and proceed to the next step.
    +     * <p>
    +     * <b>NOTE</b>: When inserting plain SQL into jOOQ objects, you must
    +     * guarantee syntax integrity. You may also create the possibility of
    +     * malicious SQL injection. Be sure to properly use bind variables and/or
    +     * escape literals when concatenated into SQL clauses!
    +     *
    +     * @see Factory#condition(String)
    +     */
    +    @Support({ DB2, HSQLDB, ORACLE, SQLSERVER, SYBASE })
    +    MergeOnConditionStep<R> and(String sql);
    +
    +    /**
    +     * Combine the currently assembled conditions with another one using the
    +     * {@link Operator#AND} operator and proceed to the next step.
    +     * <p>
    +     * <b>NOTE</b>: When inserting plain SQL into jOOQ objects, you must
    +     * guarantee syntax integrity. You may also create the possibility of
    +     * malicious SQL injection. Be sure to properly use bind variables and/or
    +     * escape literals when concatenated into SQL clauses!
    +     *
    +     * @see Factory#condition(String, Object...)
    +     */
    +    @Support({ DB2, HSQLDB, ORACLE, SQLSERVER, SYBASE })
    +    MergeOnConditionStep<R> and(String sql, Object... bindings);
    +
    +    /**
    +     * Combine the currently assembled conditions with a negated other one using
    +     * the {@link Operator#AND} operator and proceed to the next step.
    +     */
    +    @Support({ DB2, HSQLDB, ORACLE, SQLSERVER, SYBASE })
    +    MergeOnConditionStep<R> andNot(Condition condition);
    +
    +    /**
    +     * Combine the currently assembled conditions with an EXISTS clause using
    +     * the {@link Operator#AND} operator and proceed to the next step.
    +     */
    +    @Support({ DB2, HSQLDB, ORACLE, SQLSERVER, SYBASE })
    +    MergeOnConditionStep<R> andExists(Select<?> select);
    +
    +    /**
    +     * Combine the currently assembled conditions with a NOT EXISTS clause using
    +     * the {@link Operator#AND} operator and proceed to the next step.
    +     */
    +    @Support({ DB2, HSQLDB, ORACLE, SQLSERVER, SYBASE })
    +    MergeOnConditionStep<R> andNotExists(Select<?> select);
    +
    +    /**
    +     * Combine the currently assembled conditions with another one using the
    +     * {@link Operator#OR} operator and proceed to the next step.
    +     */
    +    @Support({ DB2, HSQLDB, ORACLE, SQLSERVER, SYBASE })
    +    MergeOnConditionStep<R> or(Condition condition);
    +
    +    /**
    +     * Combine the currently assembled conditions with another one using the
    +     * {@link Operator#OR} operator and proceed to the next step.
    +     * <p>
    +     * <b>NOTE</b>: When inserting plain SQL into jOOQ objects, you must
    +     * guarantee syntax integrity. You may also create the possibility of
    +     * malicious SQL injection. Be sure to properly use bind variables and/or
    +     * escape literals when concatenated into SQL clauses!
    +     *
    +     * @see Factory#condition(String)
    +     */
    +    @Support({ DB2, HSQLDB, ORACLE, SQLSERVER, SYBASE })
    +    MergeOnConditionStep<R> or(String sql);
    +
    +    /**
    +     * Combine the currently assembled conditions with another one using the
    +     * {@link Operator#OR} operator and proceed to the next step.
    +     * <p>
    +     * <b>NOTE</b>: When inserting plain SQL into jOOQ objects, you must
    +     * guarantee syntax integrity. You may also create the possibility of
    +     * malicious SQL injection. Be sure to properly use bind variables and/or
    +     * escape literals when concatenated into SQL clauses!
    +     *
    +     * @see Factory#condition(String, Object...)
    +     */
    +    @Support({ DB2, HSQLDB, ORACLE, SQLSERVER, SYBASE })
    +    MergeOnConditionStep<R> or(String sql, Object... bindings);
    +
    +    /**
    +     * Combine the currently assembled conditions with a negated other one using
    +     * the {@link Operator#OR} operator and proceed to the next step.
    +     */
    +    @Support({ DB2, HSQLDB, ORACLE, SQLSERVER, SYBASE })
    +    MergeOnConditionStep<R> orNot(Condition condition);
    +
    +    /**
    +     * Combine the currently assembled conditions with an EXISTS clause using
    +     * the {@link Operator#OR} operator and proceed to the next step.
    +     */
    +    @Support({ DB2, HSQLDB, ORACLE, SQLSERVER, SYBASE })
    +    MergeOnConditionStep<R> orExists(Select<?> select);
    +
    +    /**
    +     * Combine the currently assembled conditions with a NOT EXISTS clause using
    +     * the {@link Operator#OR} operator and proceed to the next step.
    +     */
    +    @Support({ DB2, HSQLDB, ORACLE, SQLSERVER, SYBASE })
    +    MergeOnConditionStep<R> orNotExists(Select<?> select);
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/MergeOnStep.java b/jOOQ/src/main/java/org/jooq/MergeOnStep.java
    new file mode 100644
    index 00000000000..3eb914afc3d
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/MergeOnStep.java
    @@ -0,0 +1,98 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq;
    +
    +import static org.jooq.SQLDialect.DB2;
    +import static org.jooq.SQLDialect.HSQLDB;
    +import static org.jooq.SQLDialect.ORACLE;
    +import static org.jooq.SQLDialect.SQLSERVER;
    +import static org.jooq.SQLDialect.SYBASE;
    +
    +import org.jooq.impl.Factory;
    +
    +/**
    + * This type is used for the {@link Merge}'s DSL API.
    + * <p>
    + * Example: <code><pre>
    + * Factory create = new Factory();
    + *
    + * create.mergeInto(table)
    + *       .using(select)
    + *       .on(condition)
    + *       .whenMatchedThenUpdate()
    + *       .set(field1, value1)
    + *       .set(field2, value2)
    + *       .whenNotMatchedThenInsert(field1, field2)
    + *       .values(value1, value2)
    + *       .execute();
    + * </pre></code>
    + *
    + * @author Lukas Eder
    + */
    +public interface MergeOnStep<R extends Record> {
    +
    +    /**
    +     * Provide join conditions and proceed to the next step
    +     */
    +    @Support({ DB2, HSQLDB, ORACLE, SQLSERVER, SYBASE })
    +    MergeOnConditionStep<R> on(Condition... conditions);
    +
    +    /**
    +     * Provide join conditions and proceed to the next step
    +     * <p>
    +     * <b>NOTE</b>: When inserting plain SQL into jOOQ objects, you must
    +     * guarantee syntax integrity. You may also create the possibility of
    +     * malicious SQL injection. Be sure to properly use bind variables and/or
    +     * escape literals when concatenated into SQL clauses!
    +     *
    +     * @see Factory#condition(String)
    +     */
    +    @Support({ DB2, HSQLDB, ORACLE, SQLSERVER, SYBASE })
    +    MergeOnConditionStep<R> on(String sql);
    +
    +    /**
    +     * Provide join conditions and proceed to the next step
    +     * <p>
    +     * <b>NOTE</b>: When inserting plain SQL into jOOQ objects, you must
    +     * guarantee syntax integrity. You may also create the possibility of
    +     * malicious SQL injection. Be sure to properly use bind variables and/or
    +     * escape literals when concatenated into SQL clauses!
    +     *
    +     * @see Factory#condition(String, Object...)
    +     */
    +    @Support({ DB2, HSQLDB, ORACLE, SQLSERVER, SYBASE })
    +    MergeOnConditionStep<R> on(String sql, Object... bindings);
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/MergeUsingStep.java b/jOOQ/src/main/java/org/jooq/MergeUsingStep.java
    new file mode 100644
    index 00000000000..fb5cd12aa2c
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/MergeUsingStep.java
    @@ -0,0 +1,80 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq;
    +
    +import static org.jooq.SQLDialect.DB2;
    +import static org.jooq.SQLDialect.HSQLDB;
    +import static org.jooq.SQLDialect.ORACLE;
    +import static org.jooq.SQLDialect.SQLSERVER;
    +import static org.jooq.SQLDialect.SYBASE;
    +
    +/**
    + * This type is used for the {@link Merge}'s DSL API.
    + * <p>
    + * Example: <code><pre>
    + * Factory create = new Factory();
    + *
    + * create.mergeInto(table)
    + *       .using(select)
    + *       .on(condition)
    + *       .whenMatchedThenUpdate()
    + *       .set(field1, value1)
    + *       .set(field2, value2)
    + *       .whenNotMatchedThenInsert(field1, field2)
    + *       .values(value1, value2)
    + *       .execute();
    + * </pre></code>
    + *
    + * @author Lukas Eder
    + */
    +public interface MergeUsingStep<R extends Record> {
    +
    +    /**
    +     * Add the <code>USING</code> clause to the <code>MERGE</code> statement
    +     */
    +    @Support({ DB2, HSQLDB, ORACLE, SQLSERVER, SYBASE })
    +    MergeOnStep<R> using(TableLike<?> table);
    +
    +    /**
    +     * Add a dummy <code>USING</code> clause to the <code>MERGE</code> statement
    +     * <p>
    +     * This results in <code>USING(SELECT 1 FROM DUAL)</code> for most RDBMS, or
    +     * in <code>USING(SELECT 1) AS [dummy_table(dummy_field)]</code> in SQL
    +     * Server, where derived tables need to be aliased.
    +     */
    +    @Support({ DB2, HSQLDB, ORACLE, SQLSERVER, SYBASE })
    +    MergeOnStep<R> usingDual();
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/NamedQueryPart.java b/jOOQ/src/main/java/org/jooq/NamedQueryPart.java
    new file mode 100644
    index 00000000000..53f877b7dc0
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/NamedQueryPart.java
    @@ -0,0 +1,52 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +
    +package org.jooq;
    +
    +/**
    + * A common interface for query parts that have a name. All
    + * {@link NamedQueryPart}s are have a lexicographic case-independent natural
    + * order.
    + *
    + * @author Lukas Eder
    + */
    +public interface NamedQueryPart extends QueryPart, Comparable<NamedQueryPart> {
    +
    +    /**
    +     * The name of this query part
    +     */
    +    String getName();
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/NamedTypeProviderQueryPart.java b/jOOQ/src/main/java/org/jooq/NamedTypeProviderQueryPart.java
    new file mode 100644
    index 00000000000..d221de3dd9d
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/NamedTypeProviderQueryPart.java
    @@ -0,0 +1,62 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +
    +package org.jooq;
    +
    +/**
    + * Any object providing a type.
    + *
    + * @param <T> The type provided by this type provider
    + * @author Lukas Eder
    + */
    +public interface NamedTypeProviderQueryPart<T> extends NamedQueryPart {
    +
    +    /**
    +     * The type of this object
    +     */
    +    Class<? extends T> getType();
    +
    +    /**
    +     * The type of this object (might not be dialect-specific)
    +     */
    +    DataType<T> getDataType();
    +
    +    /**
    +     * The dialect-specific type of this object
    +     */
    +    DataType<T> getDataType(Configuration configuration);
    +
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/Operator.java b/jOOQ/src/main/java/org/jooq/Operator.java
    new file mode 100644
    index 00000000000..426993f6f3c
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/Operator.java
    @@ -0,0 +1,55 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +
    +package org.jooq;
    +
    +/**
    + * An operator used for combining conditions
    + *
    + * @author Lukas Eder
    + */
    +public enum Operator {
    +
    +    /**
    +     * The and operator
    +     */
    +    AND,
    +
    +    /**
    +     * The or operator
    +     */
    +    OR;
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/OrderProvider.java b/jOOQ/src/main/java/org/jooq/OrderProvider.java
    new file mode 100644
    index 00000000000..8929e5ea13d
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/OrderProvider.java
    @@ -0,0 +1,198 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq;
    +
    +import static org.jooq.SQLDialect.CUBRID;
    +import static org.jooq.SQLDialect.DB2;
    +import static org.jooq.SQLDialect.DERBY;
    +import static org.jooq.SQLDialect.H2;
    +import static org.jooq.SQLDialect.HSQLDB;
    +import static org.jooq.SQLDialect.INGRES;
    +import static org.jooq.SQLDialect.MYSQL;
    +import static org.jooq.SQLDialect.ORACLE;
    +import static org.jooq.SQLDialect.POSTGRES;
    +import static org.jooq.SQLDialect.SQLITE;
    +import static org.jooq.SQLDialect.SQLSERVER;
    +import static org.jooq.SQLDialect.SYBASE;
    +
    +import java.util.Collection;
    +
    +/**
    + * A query that can be ordered and limited
    + *
    + * @author Lukas Eder
    + */
    +public interface OrderProvider {
    +
    +    /**
    +     * Adds ordering fields, ordering by the default sort order
    +     *
    +     * @param fields The ordering fields
    +     */
    +    @Support
    +    void addOrderBy(Field<?>... fields);
    +
    +    /**
    +     * Adds ordering fields
    +     *
    +     * @param fields The ordering fields
    +     */
    +    @Support
    +    void addOrderBy(SortField<?>... fields);
    +
    +    /**
    +     * Adds ordering fields
    +     *
    +     * @param fields The ordering fields
    +     */
    +    @Support
    +    void addOrderBy(Collection<SortField<?>> fields);
    +
    +    /**
    +     * Adds ordering fields
    +     * <p>
    +     * Indexes start at <code>1</code> in SQL!
    +     * <p>
    +     * Note, you can use <code>addOrderBy(Factory.val(1).desc())</code> or
    +     * <code>addOrderBy(Factory.literal(1).desc())</code> to apply descending
    +     * ordering
    +     *
    +     * @param fieldIndexes The ordering fields
    +     */
    +    @Support
    +    void addOrderBy(int... fieldIndexes);
    +
    +    /**
    +     * Limit the results of this select
    +     * <p>
    +     * This is the same as calling {@link #addLimit(int, int)} with offset = 0
    +     *
    +     * @param numberOfRows The number of rows to return
    +     */
    +    @Support
    +    void addLimit(int numberOfRows);
    +
    +    /**
    +     * Limit the results of this select using named parameters
    +     * <p>
    +     * Note that some dialects do not support bind values at all in
    +     * <code>LIMIT</code> or <code>TOP</code> clauses!
    +     * <p>
    +     * If there is no <code>LIMIT</code> or <code>TOP</code> clause in your
    +     * RDBMS, or the <code>LIMIT</code> or <code>TOP</code> clause does not
    +     * support bind values, this may be simulated with a
    +     * <code>ROW_NUMBER()</code> window function and nested <code>SELECT</code>
    +     * statements.
    +     * <p>
    +     * This is the same as calling {@link #addLimit(int, int)} with offset = 0
    +     *
    +     * @param numberOfRows The number of rows to return
    +     */
    +    @Support({ CUBRID, DB2, DERBY, H2, HSQLDB, MYSQL, ORACLE, POSTGRES, SQLITE, SQLSERVER, SYBASE })
    +    void addLimit(Param<Integer> numberOfRows);
    +
    +    /**
    +     * Limit the results of this select
    +     * <p>
    +     * Note that some dialects do not support bind values at all in
    +     * <code>LIMIT</code> or <code>TOP</code> clauses!
    +     * <p>
    +     * If there is no <code>LIMIT</code> or <code>TOP</code> clause in your
    +     * RDBMS, or if your RDBMS does not natively support offsets, this is
    +     * simulated with a <code>ROW_NUMBER()</code> window function and nested
    +     * <code>SELECT</code> statements.
    +     *
    +     * @param offset The lowest offset starting at 0
    +     * @param numberOfRows The number of rows to return
    +     */
    +    @Support({ CUBRID, DB2, DERBY, H2, HSQLDB, INGRES, MYSQL, ORACLE, POSTGRES, SQLITE, SQLSERVER, SYBASE })
    +    void addLimit(int offset, int numberOfRows);
    +
    +    /**
    +     * Limit the results of this select
    +     * <p>
    +     * Note that some dialects do not support bind values at all in
    +     * <code>LIMIT</code> or <code>TOP</code> clauses!
    +     * <p>
    +     * If there is no <code>LIMIT</code> or <code>TOP</code> clause in your
    +     * RDBMS, or the <code>LIMIT</code> or <code>TOP</code> clause does not
    +     * support bind values, or if your RDBMS does not natively support offsets,
    +     * this may be simulated with a <code>ROW_NUMBER()</code> window function
    +     * and nested <code>SELECT</code> statements.
    +     *
    +     * @param offset The lowest offset starting at 0
    +     * @param numberOfRows The number of rows to return
    +     */
    +    @Support({ CUBRID, DB2, DERBY, H2, HSQLDB, MYSQL, ORACLE, POSTGRES, SQLITE, SQLSERVER, SYBASE })
    +    void addLimit(Param<Integer> offset, int numberOfRows);
    +
    +    /**
    +     * Limit the results of this select using named parameters
    +     * <p>
    +     * Note that some dialects do not support bind values at all in
    +     * <code>LIMIT</code> or <code>TOP</code> clauses!
    +     * <p>
    +     * If there is no <code>LIMIT</code> or <code>TOP</code> clause in your
    +     * RDBMS, or the <code>LIMIT</code> or <code>TOP</code> clause does not
    +     * support bind values, or if your RDBMS does not natively support offsets,
    +     * this may be simulated with a <code>ROW_NUMBER()</code> window function
    +     * and nested <code>SELECT</code> statements.
    +     *
    +     * @param offset The lowest offset starting at 0
    +     * @param numberOfRows The number of rows to return
    +     */
    +    @Support({ CUBRID, DB2, DERBY, H2, HSQLDB, MYSQL, ORACLE, POSTGRES, SQLITE, SQLSERVER, SYBASE })
    +    void addLimit(int offset, Param<Integer> numberOfRows);
    +
    +    /**
    +     * Limit the results of this select using named parameters
    +     * <p>
    +     * Note that some dialects do not support bind values at all in
    +     * <code>LIMIT</code> or <code>TOP</code> clauses!
    +     * <p>
    +     * If there is no <code>LIMIT</code> or <code>TOP</code> clause in your
    +     * RDBMS, or the <code>LIMIT</code> or <code>TOP</code> clause does not
    +     * support bind values, or if your RDBMS does not natively support offsets,
    +     * this may be simulated with a <code>ROW_NUMBER()</code> window function
    +     * and nested <code>SELECT</code> statements.
    +     *
    +     * @param offset The lowest offset starting at 0
    +     * @param numberOfRows The number of rows to return
    +     */
    +    @Support({ CUBRID, DB2, DERBY, H2, HSQLDB, MYSQL, ORACLE, POSTGRES, SQLITE, SQLSERVER, SYBASE })
    +    void addLimit(Param<Integer> offset, Param<Integer> numberOfRows);
    +
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/OrderedAggregateFunction.java b/jOOQ/src/main/java/org/jooq/OrderedAggregateFunction.java
    new file mode 100644
    index 00000000000..2a04d364828
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/OrderedAggregateFunction.java
    @@ -0,0 +1,87 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq;
    +
    +import static org.jooq.SQLDialect.ORACLE;
    +
    +import java.util.Collection;
    +
    +/**
    + * An ordered aggregate function.
    + * <p>
    + * An ordered aggregate function is an aggregate function with a mandatory
    + * Oracle-specific <code>WITHIN GROUP (ORDER BY ..)</code> clause. An example is
    + * <code>LISTAGG</code>: <code><pre>
    + * SELECT   LISTAGG(TITLE, ', ')
    + *          WITHIN GROUP (ORDER BY TITLE)
    + * FROM     T_BOOK
    + * GROUP BY AUTHOR_ID
    + * </pre></code> The above function groups books by author and aggregates titles
    + * into a concatenated string.
    + * <p>
    + * Ordered aggregate functions can be further converted into window functions
    + * using the <code>OVER(PARTITION BY ..)</code> clause. For example: <code><pre>
    + * SELECT LISTAGG(TITLE, ', ')
    + *        WITHIN GROUP (ORDER BY TITLE)
    + *        OVER (PARTITION BY AUTHOR_ID)
    + * FROM   T_BOOK
    + * </pre></code>
    + *
    + * @author Lukas Eder
    + */
    +public interface OrderedAggregateFunction<T> {
    +
    +    /**
    +     * Add an <code>WITHIN GROUP (ORDER BY ..)</code> clause to the ordered
    +     * aggregate function
    +     */
    +    @Support(ORACLE)
    +    AggregateFunction<T> withinGroupOrderBy(Field<?>... fields);
    +
    +    /**
    +     * Add an <code>WITHIN GROUP (ORDER BY ..)</code> clause to the ordered
    +     * aggregate function
    +     */
    +    @Support(ORACLE)
    +    AggregateFunction<T> withinGroupOrderBy(SortField<?>... fields);
    +
    +    /**
    +     * Add an <code>WITHIN GROUP (ORDER BY ..)</code> clause to the ordered
    +     * aggregate function
    +     */
    +    @Support(ORACLE)
    +    AggregateFunction<T> withinGroupOrderBy(Collection<SortField<?>> fields);
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/Package.java b/jOOQ/src/main/java/org/jooq/Package.java
    new file mode 100644
    index 00000000000..0fd8b983fac
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/Package.java
    @@ -0,0 +1,47 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq;
    +
    +/**
    + * A container for stored procedures and functions
    + * <p>
    + * This is only supported in the {@link SQLDialect#ORACLE} dialect
    + *
    + * @author Lukas Eder
    + */
    +public interface Package extends NamedQueryPart, SchemaProvider {
    +
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/Param.java b/jOOQ/src/main/java/org/jooq/Param.java
    new file mode 100644
    index 00000000000..9bdbb40f267
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/Param.java
    @@ -0,0 +1,94 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq;
    +
    +import org.jooq.exception.DataTypeException;
    +import org.jooq.impl.Factory;
    +import org.jooq.tools.Convert;
    +
    +/**
    + * A named parameter
    + *
    + * @author Lukas Eder
    + * @see Factory#param(String, Object)
    + */
    +public interface Param<T> extends Field<T> {
    +
    +    /**
    +     * {@inheritDoc}
    +     * <hr/>
    +     * The <code>Param</code>'s value for {@link #getName()} coincides with
    +     * {@link #getParamName()}
    +     */
    +    @Override
    +    String getName();
    +
    +    /**
    +     * The parameter name. This name is useful for two things:
    +     * <ul>
    +     * <li>Named parameters in frameworks that support them, such as Spring's
    +     * <code>JdbcTemplate</code></li>
    +     * <li>Accessing the parameter from the {@link Query} API, with
    +     * {@link Query#getParam(String)}, {@link Query#getParams()}</li>
    +     * </ul>
    +     */
    +    String getParamName();
    +
    +    /**
    +     * Get the parameter's underlying value. This returns <code>null</code> if
    +     * no value has been set yet.
    +     */
    +    T getValue();
    +
    +    /**
    +     * Set the parameter's underlying value. This is the same as
    +     * {@link #setConverted(Object)}, but ensures generic type-safety.
    +     *
    +     * @see #setConverted(Object)
    +     */
    +    void setValue(T value);
    +
    +    /**
    +     * Sets a converted value, using this {@link Param}'s underlying
    +     * {@link DataType}, obtained from {@link #getDataType()}
    +     *
    +     * @see DataType#convert(Object)
    +     * @see Convert#convert(Object, Class)
    +     * @throws DataTypeException If <code>value</code> cannot be converted into
    +     *             this parameter's data type.
    +     */
    +    void setConverted(Object value) throws DataTypeException;
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/Parameter.java b/jOOQ/src/main/java/org/jooq/Parameter.java
    new file mode 100644
    index 00000000000..093aa695913
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/Parameter.java
    @@ -0,0 +1,80 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +
    +package org.jooq;
    +
    +import static org.jooq.SQLDialect.ORACLE;
    +
    +/**
    + * A parameter to a stored procedure or function.
    + *
    + * @param <T> The parameter type
    + * @author Lukas Eder
    + */
    +public interface Parameter<T> extends NamedTypeProviderQueryPart<T> {
    +
    +    /**
    +     * Whether this parameter has a default value
    +     * <p>
    +     * Procedures and functions with defaulted parameters behave slightly
    +     * different from ones without defaulted parameters. In PL/SQL and other
    +     * procedural languages, it is possible to pass parameters by name,
    +     * reordering names and omitting defaulted parameters: <code><pre>
    +     * CREATE PROCEDURE MY_PROCEDURE (P_DEFAULTED IN NUMBER := 0
    +     *                                P_MANDATORY IN NUMBER);
    +     *
    +     * -- The above procedure can be called as such:
    +     * BEGIN
    +     *   -- Assign parameters by index
    +     *   MY_PROCEDURE(1, 2);
    +     *
    +     *   -- Assign parameters by name
    +     *   MY_PROCEDURE(P_DEFAULTED => 1,
    +     *                P_MANDATORY => 2);
    +     *
    +     *   -- Omitting defaulted parameters
    +     *   MY_PROCEDURE(P_MANDATORY => 2);
    +     * END;
    +     * </pre></code>
    +     * <p>
    +     * If a procedure has defaulted parameters, jOOQ binds them by name, rather
    +     * than by index.
    +     * <p>
    +     * Currently, this is only supported for Oracle
    +     */
    +    @Support({ ORACLE })
    +    boolean isDefaulted();
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/PivotForStep.java b/jOOQ/src/main/java/org/jooq/PivotForStep.java
    new file mode 100644
    index 00000000000..ae2412679f0
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/PivotForStep.java
    @@ -0,0 +1,59 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq;
    +
    +import static org.jooq.SQLDialect.ORACLE;
    +
    +/**
    + * This type is used for the Oracle <code>PIVOT</code> clause DSL API, pivoting
    + * {@link Table} objects to new tables.
    + *
    + * @author Lukas Eder
    + */
    +public interface PivotForStep {
    +
    +    /**
    +     * Add a list of fields to the <code>PIVOT</code> clause. Normally, the
    +     * keyword used here would be <code>FOR</code>, but <code>for</code> is a
    +     * reserved word in Java and cannot be used. <code>on</code> is close
    +     * enough.
    +     *
    +     * @param field The pivoting field
    +     * @return A DSL object to create the <code>PIVOT</code> expression
    +     */
    +    @Support({ ORACLE })
    +    <T> PivotInStep<T> on(Field<T> field);
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/PivotInStep.java b/jOOQ/src/main/java/org/jooq/PivotInStep.java
    new file mode 100644
    index 00000000000..11f574b856a
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/PivotInStep.java
    @@ -0,0 +1,84 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq;
    +
    +import static org.jooq.SQLDialect.ORACLE;
    +
    +import java.util.Collection;
    +
    +/**
    + * This type is used for the Oracle <code>PIVOT</code> clause DSL API, pivoting
    + * {@link Table} objects to new tables.
    + *
    + * @author Lukas Eder
    + */
    +public interface PivotInStep<T> {
    +
    +    /**
    +     * Specify the acceptable values for pivoting
    +     *
    +     * @param values The pivoting values
    +     * @return A new pivoted table
    +     */
    +    @Support({ ORACLE })
    +    Table<Record> in(T... values);
    +
    +    /**
    +     * Specify the acceptable values for pivoting
    +     * <p>
    +     * This clause is generally only supported by {@link SQLDialect#ORACLE}.
    +     * {@link SQLDialect#SQLSERVER} accepts only literals, use
    +     * {@link #in(Object...)} instead.
    +     *
    +     * @param fields The pivoting values
    +     * @return A new pivoted table
    +     */
    +    @Support(ORACLE)
    +    Table<Record> in(Field<?>... fields);
    +
    +    /**
    +     * Specify the acceptable values for pivoting
    +     * <p>
    +     * This clause is generally only supported by {@link SQLDialect#ORACLE}.
    +     * {@link SQLDialect#SQLSERVER} accepts only literals, use
    +     * {@link #in(Object...)} instead.
    +     *
    +     * @param fields The pivoting values
    +     * @return A new pivoted table
    +     */
    +    @Support(ORACLE)
    +    Table<Record> in(Collection<? extends Field<T>> fields);
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/Query.java b/jOOQ/src/main/java/org/jooq/Query.java
    new file mode 100644
    index 00000000000..6062ab059ac
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/Query.java
    @@ -0,0 +1,184 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +
    +package org.jooq;
    +
    +import java.sql.PreparedStatement;
    +import java.sql.Statement;
    +import java.util.List;
    +import java.util.Map;
    +
    +import org.jooq.conf.Settings;
    +import org.jooq.conf.StatementType;
    +import org.jooq.exception.DataAccessException;
    +import org.jooq.exception.DataTypeException;
    +import org.jooq.impl.Factory;
    +
    +/**
    + * Any query
    + *
    + * @author Lukas Eder
    + */
    +public interface Query extends QueryPart {
    +
    +    /**
    +     * Execute the query, if it has been created with a properly configured
    +     * factory
    +     *
    +     * @return A result value, depending on the concrete implementation of
    +     *         {@link Query}:
    +     *         <ul>
    +     *         <li> {@link Delete} : the number of deleted records</li>
    +     *         <li> {@link Insert} : the number of inserted records</li>
    +     *         <li> {@link Merge} : the result may have no meaning</li>
    +     *         <li> {@link Select} : the number of resulting records</li>
    +     *         <li> {@link Truncate} : the result may have no meaning</li>
    +     *         <li> {@link Update} : the number of updated records</li>
    +     *         </ul>
    +     * @throws DataAccessException If anything goes wrong in the database
    +     */
    +    int execute() throws DataAccessException;
    +
    +    /**
    +     * Retrieve the SQL code rendered by this Query
    +     * <p>
    +     * This method can be expected to work correctly for any SQL dialect, as a
    +     * query is usually "attached" when created from a {@link Factory}.
    +     * <p>
    +     * Use this method, when you want to use jOOQ for object oriented query
    +     * creation, but execute the query with some other technology, such as
    +     * <ul>
    +     * <li>JDBC</li>
    +     * <li>Spring Templates</li>
    +     * <li>JPA native queries</li>
    +     * <li>etc...</li>
    +     * </ul>
    +     * <p>
    +     * Note, this is the same as calling {@link #getSQL(boolean)}. The boolean
    +     * parameter will depend on your {@link Factory}'s {@link Settings}:
    +     * <table border="1">
    +     * <tr>
    +     * <th><code>StatementType</code></th>
    +     * <th>boolean parameter</th>
    +     * <th>effect</th>
    +     * </tr>
    +     * <tr>
    +     * <td> {@link StatementType#PREPARED_STATEMENT}</td>
    +     * <td><code>false</code> (default)</td>
    +     * <td>This will render bind variables to be used with a JDBC
    +     * {@link PreparedStatement}. You can extract bind values from this
    +     * <code>Query</code> using {@link #getBindValues()}</td>
    +     * </tr>
    +     * <tr>
    +     * <td> {@link StatementType#STATIC_STATEMENT}</td>
    +     * <td><code>true</code></td>
    +     * <td>This will inline all bind variables in a statement to be used with a
    +     * JDBC {@link Statement}</td>
    +     * </tr>
    +     * </table>
    +     *
    +     * @see #getSQL(boolean)
    +     */
    +    String getSQL();
    +
    +    /**
    +     * Retrieve the SQL code rendered by this Query
    +     * <p>
    +     * See {@link #getSQL()} for more details
    +     *
    +     * @param inline Whether to inline bind variables. This overrides values in
    +     *            {@link Settings#getStatementType()}
    +     * @return The generated SQL
    +     */
    +    String getSQL(boolean inline);
    +
    +    /**
    +     * Retrieve the bind values that will be bound by this Query. This
    +     * <code>List</code> cannot be modified. To modify bind values, use
    +     * {@link #getParams()} instead.
    +     */
    +    List<Object> getBindValues();
    +
    +    /**
    +     * Get a <code>Map</code> of named parameters. The <code>Map</code> itself
    +     * cannot be modified, but the {@link Param} elements allow for modifying
    +     * bind values on an existing {@link Query}.
    +     * <p>
    +     * Bind values created with {@link Factory#val(Object)} will have their bind
    +     * index as name.
    +     *
    +     * @see Param
    +     * @see Factory#param(String, Object)
    +     */
    +    Map<String, Param<?>> getParams();
    +
    +    /**
    +     * Get a named parameter from the {@link Query}, provided its name.
    +     * <p>
    +     * Bind values created with {@link Factory#val(Object)} will have their bind
    +     * index as name.
    +     *
    +     * @see Param
    +     * @see Factory#param(String, Object)
    +     */
    +    Param<?> getParam(String name);
    +
    +    /**
    +     * Bind a new value to a named parameter
    +     *
    +     * @param param The named parameter name. If this is a number, then this is
    +     *            the same as calling {@link #bind(int, Object)}
    +     * @param value The new bind value.
    +     * @throws IllegalArgumentException if there is no parameter by the given
    +     *             parameter name or index.
    +     * @throws DataTypeException if <code>value</code> cannot be converted into
    +     *             the parameter's data type
    +     */
    +    Query bind(String param, Object value) throws IllegalArgumentException, DataTypeException;
    +
    +    /**
    +     * Bind a new value to an indexed parameter
    +     *
    +     * @param index The parameter index, starting with 1
    +     * @param value The new bind value.
    +     * @throws IllegalArgumentException if there is no parameter by the given
    +     *             parameter index.
    +     * @throws DataTypeException if <code>value</code> cannot be converted into
    +     *             the parameter's data type
    +     */
    +    Query bind(int index, Object value) throws IllegalArgumentException, DataTypeException;
    +
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/QueryPart.java b/jOOQ/src/main/java/org/jooq/QueryPart.java
    new file mode 100644
    index 00000000000..a373e71b44c
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/QueryPart.java
    @@ -0,0 +1,53 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq;
    +
    +
    +/**
    + * The common base type for all objects that can be used for query composition.
    + * <p>
    + * All <code>QueryPart</code> implementations can be cast to
    + * {@link QueryPartInternal} in order to access the internal API. See also
    + * {@link #internalAPI(Class)}
    + * <p>
    + * A <code>QueryPart</code> essentially combines the {@link Attachable}
    + * interface with SQL code generation and variable binding functionality.
    + *
    + * @author Lukas Eder
    + */
    +public interface QueryPart extends Attachable {
    +
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/QueryPartInternal.java b/jOOQ/src/main/java/org/jooq/QueryPartInternal.java
    new file mode 100644
    index 00000000000..8b805b765b0
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/QueryPartInternal.java
    @@ -0,0 +1,144 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +
    +package org.jooq;
    +
    +import java.util.List;
    +import java.util.Map;
    +
    +import org.jooq.exception.DataAccessException;
    +
    +/**
    + * Base functionality declaration for all query objects
    + * <p>
    + * This interface is for JOOQ INTERNAL USE only. Do not reference directly
    + *
    + * @author Lukas Eder
    + */
    +public interface QueryPartInternal extends QueryPart {
    +
    +    /**
    +     * Render this {@link QueryPart} to a SQL string contained in
    +     * <code>context.sql()</code>. The <code>context</code> will contain
    +     * additional information about how to render this <code>QueryPart</code>,
    +     * e.g. whether this <code>QueryPart</code> should be rendered as a
    +     * declaration or reference, whether this <code>QueryPart</code>'s contained
    +     * bind variables should be inlined or replaced by <code>'?'</code>, etc.
    +     */
    +    void toSQL(RenderContext context);
    +
    +    /**
    +     * Retrieve the SQL that will be rendered by this {@link QueryPart}
    +     * <p>
    +     * This method is exposed publicly in {@link Query#getSQL()}
    +     */
    +    String getSQL();
    +
    +    /**
    +     * Retrieve the SQL that will be rendered by this {@link QueryPart}
    +     * <p>
    +     * This method is exposed publicly in {@link Query#getSQL(boolean)}
    +     */
    +    String getSQL(boolean inline);
    +
    +    /**
    +     * Retrieve the bind values that will be bound by this {@link QueryPart}
    +     * <p>
    +     * This method is exposed publicly in {@link Query#getBindValues()}
    +     */
    +    List<Object> getBindValues();
    +
    +    /**
    +     * Retrieve the named parameters that will be bound by this {@link QueryPart}
    +     * <p>
    +     * This method is exposed publicly in {@link Query#getParams()}
    +     */
    +    Map<String, Param<?>> getParams();
    +
    +    /**
    +     * Retrieve a named parameter that will be bound by this {@link QueryPart}
    +     * <p>
    +     * This method is exposed publicly in {@link Query#getParam(String)}
    +     */
    +    Param<?> getParam(String name);
    +
    +    /**
    +     * Bind all parameters of this {@link QueryPart} to a PreparedStatement
    +     * <p>
    +     * This method is for JOOQ INTERNAL USE only. Do not reference directly
    +     *
    +     * @param context The context holding the next bind index and other
    +     *            information for variable binding
    +     * @throws DataAccessException If something went wrong while binding a
    +     *             variable
    +     */
    +    void bind(BindContext context) throws DataAccessException;
    +
    +    /**
    +     * Reproduce the SQL dialect this {@link QueryPart} was created with
    +     * <p>
    +     * This method is for JOOQ INTERNAL USE only. Do not reference directly
    +     *
    +     * @return The SQL dialect
    +     * @deprecated - 2.0.2 - The attached SQL dialect of a {@link QueryPart}
    +     *             should no longer be referenced, as query parts become more
    +     *             and more {@link Configuration} - independent
    +     */
    +    @Deprecated
    +    SQLDialect getDialect();
    +
    +    /**
    +     * Check whether this {@link QueryPart} is able to declare fields in a
    +     * <code>SELECT</code> clause.
    +     * <p>
    +     * This method can be used by any {@link Context} to check how a certain SQL
    +     * clause should be rendered.
    +     * <p>
    +     * This method is for JOOQ INTERNAL USE only. Do not reference directly
    +     */
    +    boolean declaresFields();
    +
    +    /**
    +     * Check whether this {@link QueryPart} is able to declare tables in a
    +     * <code>FROM</code> clause or <code>JOIN</code> clause.
    +     * <p>
    +     * This method can be used by any {@link Context} to check how a certain SQL
    +     * clause should be rendered.
    +     * <p>
    +     * This method is for JOOQ INTERNAL USE only. Do not reference directly
    +     */
    +    boolean declaresTables();
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/Record.java b/jOOQ/src/main/java/org/jooq/Record.java
    new file mode 100644
    index 00000000000..721ba02dbc5
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/Record.java
    @@ -0,0 +1,1248 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +
    +package org.jooq;
    +
    +import java.lang.reflect.Constructor;
    +import java.math.BigDecimal;
    +import java.math.BigInteger;
    +import java.sql.Date;
    +import java.sql.Time;
    +import java.sql.Timestamp;
    +
    +import javax.persistence.Column;
    +
    +import org.jooq.exception.DataTypeException;
    +import org.jooq.exception.MappingException;
    +import org.jooq.tools.Convert;
    +
    +/**
    + * A wrapper for database result records returned by
    + * <code>{@link SelectQuery}</code>
    + *
    + * @author Lukas Eder
    + * @see SelectQuery#getResult()
    + */
    +public interface Record extends FieldProvider, Store<Object> {
    +
    +    /**
    +     * Get a value from this Record, providing a field.
    +     *
    +     * @param <T> The generic field parameter
    +     * @param field The field
    +     * @return The value of a field contained in this record
    +     * @throws IllegalArgumentException If the argument field is not contained
    +     *             in {@link #getFields()}
    +     */
    +    <T> T getValue(Field<T> field) throws IllegalArgumentException;
    +
    +    /**
    +     * Get a value from this record, providing a field.
    +     *
    +     * @param <T> The generic field parameter
    +     * @param field The field
    +     * @param defaultValue The default value instead of <code>null</code>
    +     * @return The value of a field contained in this record, or defaultValue,
    +     *         if <code>null</code>
    +     * @throws IllegalArgumentException If the argument field is not contained
    +     *             in {@link #getFields()}
    +     */
    +    <T> T getValue(Field<T> field, T defaultValue) throws IllegalArgumentException;
    +
    +    /**
    +     * Get an array value from this Record, providing an {@link ArrayRecord}
    +     * field.
    +     *
    +     * @param <A> The generic field parameter
    +     * @param <T> The {@link ArrayRecord} type parameter
    +     * @param field The field
    +     * @return The value of a field contained in this record
    +     * @throws IllegalArgumentException If the argument field is not contained
    +     *             in {@link #getFields()}
    +     */
    +    <A extends ArrayRecord<T>, T> T[] getValueAsArray(Field<A> field) throws IllegalArgumentException;
    +
    +    /**
    +     * Get an array value from this Record, providing an {@link ArrayRecord}
    +     * field.
    +     *
    +     * @param <A> The generic field parameter
    +     * @param <T> The {@link ArrayRecord} type parameter
    +     * @param field The field
    +     * @param defaultValue The default value instead of <code>null</code>
    +     * @return The value of a field contained in this record
    +     * @throws IllegalArgumentException If the argument field is not contained
    +     *             in {@link #getFields()}
    +     */
    +    <A extends ArrayRecord<T>, T> T[] getValueAsArray(Field<A> field, T[] defaultValue) throws IllegalArgumentException;
    +
    +    /**
    +     * Get a value from this Record, providing a field name.
    +     *
    +     * @param fieldName The field's name
    +     * @return The value of a field's name contained in this record
    +     * @throws IllegalArgumentException If the argument fieldName is not
    +     *             contained in the record
    +     */
    +    Object getValue(String fieldName) throws IllegalArgumentException;
    +
    +    /**
    +     * Get a value from this record, providing a field name.
    +     *
    +     * @param fieldName The field's name
    +     * @param defaultValue The default value instead of <code>null</code>
    +     * @return The value of a field's name contained in this record, or
    +     *         defaultValue, if <code>null</code>
    +     * @throws IllegalArgumentException If the argument fieldName is not
    +     *             contained in the record
    +     */
    +    Object getValue(String fieldName, Object defaultValue) throws IllegalArgumentException;
    +
    +    /**
    +     * Get a value from this Record, providing a field.
    +     *
    +     * @param field The field
    +     * @return The converted value of a field contained in this record
    +     * @throws IllegalArgumentException If the argument field is not contained
    +     *             in {@link #getFields()}
    +     * @throws DataTypeException wrapping any data type conversion exception
    +     *             that might have occurred
    +     */
    +    String getValueAsString(Field<?> field) throws IllegalArgumentException, DataTypeException;
    +
    +    /**
    +     * Get a value from this record, providing a field.
    +     *
    +     * @param field The field
    +     * @param defaultValue The default value instead of <code>null</code>
    +     * @return The converted value of a field contained in this record, or
    +     *         defaultValue, if <code>null</code>
    +     * @throws IllegalArgumentException If the argument field is not contained
    +     *             in {@link #getFields()}
    +     * @throws DataTypeException wrapping any data type conversion exception
    +     *             that might have occurred
    +     */
    +    String getValueAsString(Field<?> field, String defaultValue) throws IllegalArgumentException, DataTypeException;
    +
    +    /**
    +     * Get a value from this Record, providing a field name.
    +     *
    +     * @param fieldName The field's name
    +     * @return The converted value of a field's index contained in this record
    +     * @throws IllegalArgumentException If the argument fieldName is not
    +     *             contained in the record
    +     * @throws DataTypeException wrapping any data type conversion exception
    +     *             that might have occurred
    +     */
    +    String getValueAsString(String fieldName) throws IllegalArgumentException, DataTypeException;
    +
    +    /**
    +     * Get a value from this record, providing a field name.
    +     *
    +     * @param fieldName The field's name
    +     * @param defaultValue The default value instead of <code>null</code>
    +     * @return The converted value of a field's name contained in this record,
    +     *         or defaultValue, if <code>null</code>
    +     * @throws IllegalArgumentException If the argument fieldName is not
    +     *             contained in the record
    +     * @throws DataTypeException wrapping any data type conversion exception
    +     *             that might have occurred
    +     */
    +    String getValueAsString(String fieldName, String defaultValue) throws IllegalArgumentException, DataTypeException;
    +
    +    /**
    +     * Get a value from this Record, providing a field.
    +     *
    +     * @param field The field
    +     * @return The converted value of a field contained in this record
    +     * @throws IllegalArgumentException If the argument field is not contained
    +     *             in {@link #getFields()}
    +     * @throws DataTypeException wrapping any data type conversion exception
    +     *             that might have occurred
    +     */
    +    Byte getValueAsByte(Field<?> field) throws IllegalArgumentException, DataTypeException;
    +
    +    /**
    +     * Get a value from this record, providing a field.
    +     *
    +     * @param field The field
    +     * @param defaultValue The default value instead of <code>null</code>
    +     * @return The converted value of a field contained in this record, or
    +     *         defaultValue, if <code>null</code>
    +     * @throws IllegalArgumentException If the argument field is not contained
    +     *             in {@link #getFields()}
    +     * @throws DataTypeException wrapping any data type conversion exception
    +     *             that might have occurred
    +     */
    +    Byte getValueAsByte(Field<?> field, Byte defaultValue) throws IllegalArgumentException, DataTypeException;
    +
    +    /**
    +     * Get a value from this Record, providing a field name.
    +     *
    +     * @param fieldName The field's name
    +     * @return The converted value of a field's index contained in this record
    +     * @throws IllegalArgumentException If the argument fieldName is not
    +     *             contained in the record
    +     * @throws DataTypeException wrapping any data type conversion exception
    +     *             that might have occurred
    +     */
    +    Byte getValueAsByte(String fieldName) throws IllegalArgumentException, DataTypeException;
    +
    +    /**
    +     * Get a value from this record, providing a field name.
    +     *
    +     * @param fieldName The field's name
    +     * @param defaultValue The default value instead of <code>null</code>
    +     * @return The converted value of a field's name contained in this record,
    +     *         or defaultValue, if <code>null</code>
    +     * @throws IllegalArgumentException If the argument fieldName is not
    +     *             contained in the record
    +     * @throws DataTypeException wrapping any data type conversion exception
    +     *             that might have occurred
    +     */
    +    Byte getValueAsByte(String fieldName, Byte defaultValue) throws IllegalArgumentException, DataTypeException;
    +
    +    /**
    +     * Get a value from this Record, providing a field.
    +     *
    +     * @param field The field
    +     * @return The converted value of a field contained in this record
    +     * @throws IllegalArgumentException If the argument field is not contained
    +     *             in {@link #getFields()}
    +     * @throws DataTypeException wrapping any data type conversion exception
    +     *             that might have occurred
    +     */
    +    Short getValueAsShort(Field<?> field) throws IllegalArgumentException, DataTypeException;
    +
    +    /**
    +     * Get a value from this record, providing a field.
    +     *
    +     * @param field The field
    +     * @param defaultValue The default value instead of <code>null</code>
    +     * @return The converted value of a field contained in this record, or
    +     *         defaultValue, if <code>null</code>
    +     * @throws IllegalArgumentException If the argument field is not contained
    +     *             in {@link #getFields()}
    +     * @throws DataTypeException wrapping any data type conversion exception
    +     *             that might have occurred
    +     */
    +    Short getValueAsShort(Field<?> field, Short defaultValue) throws IllegalArgumentException, DataTypeException;
    +
    +    /**
    +     * Get a value from this Record, providing a field name.
    +     *
    +     * @param fieldName The field's name
    +     * @return The converted value of a field's index contained in this record
    +     * @throws IllegalArgumentException If the argument fieldName is not
    +     *             contained in the record
    +     * @throws DataTypeException wrapping any data type conversion exception
    +     *             that might have occurred
    +     */
    +    Short getValueAsShort(String fieldName) throws IllegalArgumentException, DataTypeException;
    +
    +    /**
    +     * Get a value from this record, providing a field name.
    +     *
    +     * @param fieldName The field's name
    +     * @param defaultValue The default value instead of <code>null</code>
    +     * @return The converted value of a field's name contained in this record,
    +     *         or defaultValue, if <code>null</code>
    +     * @throws IllegalArgumentException If the argument fieldName is not
    +     *             contained in the record
    +     * @throws DataTypeException wrapping any data type conversion exception
    +     *             that might have occurred
    +     */
    +    Short getValueAsShort(String fieldName, Short defaultValue) throws IllegalArgumentException, DataTypeException;
    +
    +    /**
    +     * Get a value from this Record, providing a field.
    +     *
    +     * @param field The field
    +     * @return The converted value of a field contained in this record
    +     * @throws IllegalArgumentException If the argument field is not contained
    +     *             in {@link #getFields()}
    +     * @throws DataTypeException wrapping any data type conversion exception
    +     *             that might have occurred
    +     */
    +    Integer getValueAsInteger(Field<?> field) throws IllegalArgumentException, DataTypeException;
    +
    +    /**
    +     * Get a value from this record, providing a field.
    +     *
    +     * @param field The field
    +     * @param defaultValue The default value instead of <code>null</code>
    +     * @return The converted value of a field contained in this record, or
    +     *         defaultValue, if <code>null</code>
    +     * @throws IllegalArgumentException If the argument field is not contained
    +     *             in {@link #getFields()}
    +     * @throws DataTypeException wrapping any data type conversion exception
    +     *             that might have occurred
    +     */
    +    Integer getValueAsInteger(Field<?> field, Integer defaultValue) throws IllegalArgumentException, DataTypeException;
    +
    +    /**
    +     * Get a value from this Record, providing a field name.
    +     *
    +     * @param fieldName The field's name
    +     * @return The converted value of a field's index contained in this record
    +     * @throws IllegalArgumentException If the argument fieldName is not
    +     *             contained in the record
    +     * @throws DataTypeException wrapping any data type conversion exception
    +     *             that might have occurred
    +     */
    +    Integer getValueAsInteger(String fieldName) throws IllegalArgumentException, DataTypeException;
    +
    +    /**
    +     * Get a value from this record, providing a field name.
    +     *
    +     * @param fieldName The field's name
    +     * @param defaultValue The default value instead of <code>null</code>
    +     * @return The converted value of a field's name contained in this record,
    +     *         or defaultValue, if <code>null</code>
    +     * @throws IllegalArgumentException If the argument fieldName is not
    +     *             contained in the record
    +     * @throws DataTypeException wrapping any data type conversion exception
    +     *             that might have occurred
    +     */
    +    Integer getValueAsInteger(String fieldName, Integer defaultValue) throws IllegalArgumentException,
    +        DataTypeException;
    +
    +    /**
    +     * Get a value from this Record, providing a field.
    +     *
    +     * @param field The field
    +     * @return The converted value of a field contained in this record
    +     * @throws IllegalArgumentException If the argument field is not contained
    +     *             in {@link #getFields()}
    +     * @throws DataTypeException wrapping any data type conversion exception
    +     *             that might have occurred
    +     */
    +    Long getValueAsLong(Field<?> field) throws IllegalArgumentException, DataTypeException;
    +
    +    /**
    +     * Get a value from this record, providing a field.
    +     *
    +     * @param field The field
    +     * @param defaultValue The default value instead of <code>null</code>
    +     * @return The converted value of a field contained in this record, or
    +     *         defaultValue, if <code>null</code>
    +     * @throws IllegalArgumentException If the argument field is not contained
    +     *             in {@link #getFields()}
    +     * @throws DataTypeException wrapping any data type conversion exception
    +     *             that might have occurred
    +     */
    +    Long getValueAsLong(Field<?> field, Long defaultValue) throws IllegalArgumentException, DataTypeException;
    +
    +    /**
    +     * Get a value from this Record, providing a field name.
    +     *
    +     * @param fieldName The field's name
    +     * @return The converted value of a field's index contained in this record
    +     * @throws IllegalArgumentException If the argument fieldName is not
    +     *             contained in the record
    +     * @throws DataTypeException wrapping any data type conversion exception
    +     *             that might have occurred
    +     */
    +    Long getValueAsLong(String fieldName) throws IllegalArgumentException, DataTypeException;
    +
    +    /**
    +     * Get a value from this record, providing a field name.
    +     *
    +     * @param fieldName The field's name
    +     * @param defaultValue The default value instead of <code>null</code>
    +     * @return The converted value of a field's name contained in this record,
    +     *         or defaultValue, if <code>null</code>
    +     * @throws IllegalArgumentException If the argument fieldName is not
    +     *             contained in the record
    +     * @throws DataTypeException wrapping any data type conversion exception
    +     *             that might have occurred
    +     */
    +    Long getValueAsLong(String fieldName, Long defaultValue) throws IllegalArgumentException, DataTypeException;
    +
    +    /**
    +     * Get a value from this Record, providing a field.
    +     *
    +     * @param field The field
    +     * @return The converted value of a field contained in this record
    +     * @throws IllegalArgumentException If the argument field is not contained
    +     *             in {@link #getFields()}
    +     * @throws DataTypeException wrapping any data type conversion exception
    +     *             that might have occurred
    +     */
    +    BigInteger getValueAsBigInteger(Field<?> field) throws IllegalArgumentException, DataTypeException;
    +
    +    /**
    +     * Get a value from this record, providing a field.
    +     *
    +     * @param field The field
    +     * @param defaultValue The default value instead of <code>null</code>
    +     * @return The converted value of a field contained in this record, or
    +     *         defaultValue, if <code>null</code>
    +     * @throws IllegalArgumentException If the argument field is not contained
    +     *             in {@link #getFields()}
    +     * @throws DataTypeException wrapping any data type conversion exception
    +     *             that might have occurred
    +     */
    +    BigInteger getValueAsBigInteger(Field<?> field, BigInteger defaultValue) throws IllegalArgumentException,
    +        DataTypeException;
    +
    +    /**
    +     * Get a value from this Record, providing a field name.
    +     *
    +     * @param fieldName The field's name
    +     * @return The converted value of a field's index contained in this record
    +     * @throws IllegalArgumentException If the argument fieldName is not
    +     *             contained in the record
    +     * @throws DataTypeException wrapping any data type conversion exception
    +     *             that might have occurred
    +     */
    +    BigInteger getValueAsBigInteger(String fieldName) throws IllegalArgumentException, DataTypeException;
    +
    +    /**
    +     * Get a value from this record, providing a field name.
    +     *
    +     * @param fieldName The field's name
    +     * @param defaultValue The default value instead of <code>null</code>
    +     * @return The converted value of a field's name contained in this record,
    +     *         or defaultValue, if <code>null</code>
    +     * @throws IllegalArgumentException If the argument fieldName is not
    +     *             contained in the record
    +     * @throws DataTypeException wrapping any data type conversion exception
    +     *             that might have occurred
    +     */
    +    BigInteger getValueAsBigInteger(String fieldName, BigInteger defaultValue) throws IllegalArgumentException,
    +        DataTypeException;
    +
    +    /**
    +     * Get a value from this Record, providing a field.
    +     *
    +     * @param field The field
    +     * @return The converted value of a field contained in this record
    +     * @throws IllegalArgumentException If the argument field is not contained
    +     *             in {@link #getFields()}
    +     * @throws DataTypeException wrapping any data type conversion exception
    +     *             that might have occurred
    +     */
    +    Float getValueAsFloat(Field<?> field) throws IllegalArgumentException, DataTypeException;
    +
    +    /**
    +     * Get a value from this record, providing a field.
    +     *
    +     * @param field The field
    +     * @param defaultValue The default value instead of <code>null</code>
    +     * @return The converted value of a field contained in this record, or
    +     *         defaultValue, if <code>null</code>
    +     * @throws IllegalArgumentException If the argument field is not contained
    +     *             in {@link #getFields()}
    +     * @throws DataTypeException wrapping any data type conversion exception
    +     *             that might have occurred
    +     */
    +    Float getValueAsFloat(Field<?> field, Float defaultValue) throws IllegalArgumentException, DataTypeException;
    +
    +    /**
    +     * Get a value from this Record, providing a field name.
    +     *
    +     * @param fieldName The field's name
    +     * @return The converted value of a field's index contained in this record
    +     * @throws IllegalArgumentException If the argument fieldName is not
    +     *             contained in the record
    +     * @throws DataTypeException wrapping any data type conversion exception
    +     *             that might have occurred
    +     */
    +    Float getValueAsFloat(String fieldName) throws IllegalArgumentException, DataTypeException;
    +
    +    /**
    +     * Get a value from this record, providing a field name.
    +     *
    +     * @param fieldName The field's name
    +     * @param defaultValue The default value instead of <code>null</code>
    +     * @return The converted value of a field's name contained in this record,
    +     *         or defaultValue, if <code>null</code>
    +     * @throws IllegalArgumentException If the argument fieldName is not
    +     *             contained in the record
    +     * @throws DataTypeException wrapping any data type conversion exception
    +     *             that might have occurred
    +     */
    +    Float getValueAsFloat(String fieldName, Float defaultValue) throws IllegalArgumentException, DataTypeException;
    +
    +    /**
    +     * Get a value from this Record, providing a field.
    +     *
    +     * @param field The field
    +     * @return The converted value of a field contained in this record
    +     * @throws IllegalArgumentException If the argument field is not contained
    +     *             in {@link #getFields()}
    +     * @throws DataTypeException wrapping any data type conversion exception
    +     *             that might have occurred
    +     */
    +    Double getValueAsDouble(Field<?> field) throws IllegalArgumentException, DataTypeException;
    +
    +    /**
    +     * Get a value from this record, providing a field.
    +     *
    +     * @param field The field
    +     * @param defaultValue The default value instead of <code>null</code>
    +     * @return The converted value of a field contained in this record, or
    +     *         defaultValue, if <code>null</code>
    +     * @throws IllegalArgumentException If the argument field is not contained
    +     *             in {@link #getFields()}
    +     * @throws DataTypeException wrapping any data type conversion exception
    +     *             that might have occurred
    +     */
    +    Double getValueAsDouble(Field<?> field, Double defaultValue) throws IllegalArgumentException, DataTypeException;
    +
    +    /**
    +     * Get a value from this Record, providing a field name.
    +     *
    +     * @param fieldName The field's name
    +     * @return The converted value of a field's index contained in this record
    +     * @throws IllegalArgumentException If the argument fieldName is not
    +     *             contained in the record
    +     * @throws DataTypeException wrapping any data type conversion exception
    +     *             that might have occurred
    +     */
    +    Double getValueAsDouble(String fieldName) throws IllegalArgumentException, DataTypeException;
    +
    +    /**
    +     * Get a value from this record, providing a field name.
    +     *
    +     * @param fieldName The field's name
    +     * @param defaultValue The default value instead of <code>null</code>
    +     * @return The converted value of a field's name contained in this record,
    +     *         or defaultValue, if <code>null</code>
    +     * @throws IllegalArgumentException If the argument fieldName is not
    +     *             contained in the record
    +     * @throws DataTypeException wrapping any data type conversion exception
    +     *             that might have occurred
    +     */
    +    Double getValueAsDouble(String fieldName, Double defaultValue) throws IllegalArgumentException, DataTypeException;
    +
    +    /**
    +     * Get a value from this Record, providing a field.
    +     *
    +     * @param field The field
    +     * @return The converted value of a field contained in this record
    +     * @throws IllegalArgumentException If the argument field is not contained
    +     *             in {@link #getFields()}
    +     * @throws DataTypeException wrapping any data type conversion exception
    +     *             that might have occurred
    +     */
    +    BigDecimal getValueAsBigDecimal(Field<?> field) throws IllegalArgumentException, DataTypeException;
    +
    +    /**
    +     * Get a value from this record, providing a field.
    +     *
    +     * @param field The field
    +     * @param defaultValue The default value instead of <code>null</code>
    +     * @return The converted value of a field contained in this record, or
    +     *         defaultValue, if <code>null</code>
    +     * @throws IllegalArgumentException If the argument field is not contained
    +     *             in {@link #getFields()}
    +     * @throws DataTypeException wrapping any data type conversion exception
    +     *             that might have occurred
    +     */
    +    BigDecimal getValueAsBigDecimal(Field<?> field, BigDecimal defaultValue) throws IllegalArgumentException,
    +        DataTypeException;
    +
    +    /**
    +     * Get a value from this Record, providing a field name.
    +     *
    +     * @param fieldName The field's name
    +     * @return The converted value of a field's index contained in this record
    +     * @throws IllegalArgumentException If the argument fieldName is not
    +     *             contained in the record
    +     * @throws DataTypeException wrapping any data type conversion exception
    +     *             that might have occurred
    +     */
    +    BigDecimal getValueAsBigDecimal(String fieldName) throws IllegalArgumentException, DataTypeException;
    +
    +    /**
    +     * Get a value from this record, providing a field name.
    +     *
    +     * @param fieldName The field's name
    +     * @param defaultValue The default value instead of <code>null</code>
    +     * @return The converted value of a field's name contained in this record,
    +     *         or defaultValue, if <code>null</code>
    +     * @throws IllegalArgumentException If the argument fieldName is not
    +     *             contained in the record
    +     * @throws DataTypeException wrapping any data type conversion exception
    +     *             that might have occurred
    +     */
    +    BigDecimal getValueAsBigDecimal(String fieldName, BigDecimal defaultValue) throws IllegalArgumentException,
    +        DataTypeException;
    +
    +    /**
    +     * Get a value from this Record, providing a field.
    +     * <p>
    +     * boolean values for <code>true</code> are any of these case-insensitive
    +     * strings:
    +     * <ul>
    +     * <li><code>1</code></li>
    +     * <li><code>y</code></li>
    +     * <li><code>yes</code></li>
    +     * <li><code>true</code></li>
    +     * <li><code>on</code></li>
    +     * <li><code>enabled</code></li>
    +     * </ul>
    +     * <p>
    +     * boolean values for <code>false</code> are any of these case-insensitive
    +     * strings:
    +     * <ul>
    +     * <li><code>0</code></li>
    +     * <li><code>n</code></li>
    +     * <li><code>no</code></li>
    +     * <li><code>false</code></li>
    +     * <li><code>off</code></li>
    +     * <li><code>disabled</code></li>
    +     * </ul>
    +     * <p>
    +     * All other values evaluate to <code>null</code>
    +     *
    +     * @param field The field
    +     * @return The converted value of a field contained in this record
    +     * @throws IllegalArgumentException If the argument field is not contained
    +     *             in {@link #getFields()}
    +     * @throws DataTypeException wrapping any data type conversion exception
    +     *             that might have occurred
    +     */
    +    Boolean getValueAsBoolean(Field<?> field) throws IllegalArgumentException, DataTypeException;
    +
    +    /**
    +     * Get a value from this record, providing a field.
    +     * <p>
    +     * boolean values for <code>true</code> are any of these case-insensitive
    +     * strings:
    +     * <ul>
    +     * <li><code>1</code></li>
    +     * <li><code>y</code></li>
    +     * <li><code>yes</code></li>
    +     * <li><code>true</code></li>
    +     * <li><code>on</code></li>
    +     * <li><code>enabled</code></li>
    +     * </ul>
    +     * <p>
    +     * boolean values for <code>false</code> are any of these case-insensitive
    +     * strings:
    +     * <ul>
    +     * <li><code>0</code></li>
    +     * <li><code>n</code></li>
    +     * <li><code>no</code></li>
    +     * <li><code>false</code></li>
    +     * <li><code>off</code></li>
    +     * <li><code>disabled</code></li>
    +     * </ul>
    +     * <p>
    +     * All other values evaluate to <code>null</code>
    +     *
    +     * @param field The field
    +     * @param defaultValue The default value instead of <code>null</code>
    +     * @return The converted value of a field contained in this record, or
    +     *         defaultValue, if <code>null</code>
    +     * @throws IllegalArgumentException If the argument field is not contained
    +     *             in {@link #getFields()}
    +     * @throws DataTypeException wrapping any data type conversion exception
    +     *             that might have occurred
    +     */
    +    Boolean getValueAsBoolean(Field<?> field, Boolean defaultValue) throws IllegalArgumentException, DataTypeException;
    +
    +    /**
    +     * Get a value from this Record, providing a field name.
    +     * <p>
    +     * boolean values for <code>true</code> are any of these case-insensitive
    +     * strings:
    +     * <ul>
    +     * <li><code>1</code></li>
    +     * <li><code>y</code></li>
    +     * <li><code>yes</code></li>
    +     * <li><code>true</code></li>
    +     * <li><code>on</code></li>
    +     * <li><code>enabled</code></li>
    +     * </ul>
    +     * <p>
    +     * boolean values for <code>false</code> are any of these case-insensitive
    +     * strings:
    +     * <ul>
    +     * <li><code>0</code></li>
    +     * <li><code>n</code></li>
    +     * <li><code>no</code></li>
    +     * <li><code>false</code></li>
    +     * <li><code>off</code></li>
    +     * <li><code>disabled</code></li>
    +     * </ul>
    +     * <p>
    +     * All other values evaluate to <code>null</code>
    +     *
    +     * @param fieldName The field's name
    +     * @return The converted value of a field's index contained in this record
    +     * @throws IllegalArgumentException If the argument fieldName is not
    +     *             contained in the record
    +     * @throws DataTypeException wrapping any data type conversion exception
    +     *             that might have occurred
    +     */
    +    Boolean getValueAsBoolean(String fieldName) throws IllegalArgumentException, DataTypeException;
    +
    +    /**
    +     * Get a value from this record, providing a field name.
    +     * <p>
    +     * boolean values for <code>true</code> are any of these case-insensitive
    +     * strings:
    +     * <ul>
    +     * <li><code>1</code></li>
    +     * <li><code>y</code></li>
    +     * <li><code>yes</code></li>
    +     * <li><code>true</code></li>
    +     * <li><code>on</code></li>
    +     * <li><code>enabled</code></li>
    +     * </ul>
    +     * <p>
    +     * boolean values for <code>false</code> are any of these case-insensitive
    +     * strings:
    +     * <ul>
    +     * <li><code>0</code></li>
    +     * <li><code>n</code></li>
    +     * <li><code>no</code></li>
    +     * <li><code>false</code></li>
    +     * <li><code>off</code></li>
    +     * <li><code>disabled</code></li>
    +     * </ul>
    +     * <p>
    +     * All other values evaluate to <code>null</code>
    +     *
    +     * @param fieldName The field's name
    +     * @param defaultValue The default value instead of <code>null</code>
    +     * @return The converted value of a field's name contained in this record,
    +     *         or defaultValue, if <code>null</code>
    +     * @throws IllegalArgumentException If the argument fieldName is not
    +     *             contained in the record
    +     * @throws DataTypeException wrapping any data type conversion exception
    +     *             that might have occurred
    +     */
    +    Boolean getValueAsBoolean(String fieldName, Boolean defaultValue) throws IllegalArgumentException,
    +        DataTypeException;
    +
    +    /**
    +     * Get a value from this Record, providing a field.
    +     *
    +     * @param field The field
    +     * @return The converted value of a field contained in this record
    +     * @throws IllegalArgumentException If the argument field is not contained
    +     *             in {@link #getFields()}
    +     * @throws DataTypeException wrapping any data type conversion exception
    +     *             that might have occurred
    +     */
    +    Timestamp getValueAsTimestamp(Field<?> field) throws IllegalArgumentException, DataTypeException;
    +
    +    /**
    +     * Get a value from this record, providing a field.
    +     *
    +     * @param field The field
    +     * @param defaultValue The default value instead of <code>null</code>
    +     * @return The converted value of a field contained in this record, or
    +     *         defaultValue, if <code>null</code>
    +     * @throws IllegalArgumentException If the argument field is not contained
    +     *             in {@link #getFields()}
    +     * @throws DataTypeException wrapping any data type conversion exception
    +     *             that might have occurred
    +     */
    +    Timestamp getValueAsTimestamp(Field<?> field, Timestamp defaultValue) throws IllegalArgumentException,
    +        DataTypeException;
    +
    +    /**
    +     * Get a value from this Record, providing a field name.
    +     *
    +     * @param fieldName The field's name
    +     * @return The converted value of a field's index contained in this record
    +     * @throws IllegalArgumentException If the argument fieldName is not
    +     *             contained in the record
    +     * @throws DataTypeException wrapping any data type conversion exception
    +     *             that might have occurred
    +     */
    +    Timestamp getValueAsTimestamp(String fieldName) throws IllegalArgumentException, DataTypeException;
    +
    +    /**
    +     * Get a value from this record, providing a field name.
    +     *
    +     * @param fieldName The field's name
    +     * @param defaultValue The default value instead of <code>null</code>
    +     * @return The converted value of a field's name contained in this record,
    +     *         or defaultValue, if <code>null</code>
    +     * @throws IllegalArgumentException If the argument fieldName is not
    +     *             contained in the record
    +     * @throws DataTypeException wrapping any data type conversion exception
    +     *             that might have occurred
    +     */
    +    Timestamp getValueAsTimestamp(String fieldName, Timestamp defaultValue) throws IllegalArgumentException,
    +        DataTypeException;
    +
    +    /**
    +     * Get a value from this Record, providing a field.
    +     *
    +     * @param field The field
    +     * @return The converted value of a field contained in this record
    +     * @throws IllegalArgumentException If the argument field is not contained
    +     *             in {@link #getFields()}
    +     * @throws DataTypeException wrapping any data type conversion exception
    +     *             that might have occurred
    +     */
    +    Date getValueAsDate(Field<?> field) throws IllegalArgumentException, DataTypeException;
    +
    +    /**
    +     * Get a value from this record, providing a field.
    +     *
    +     * @param field The field
    +     * @param defaultValue The default value instead of <code>null</code>
    +     * @return The converted value of a field contained in this record, or
    +     *         defaultValue, if <code>null</code>
    +     * @throws IllegalArgumentException If the argument field is not contained
    +     *             in {@link #getFields()}
    +     * @throws DataTypeException wrapping any data type conversion exception
    +     *             that might have occurred
    +     */
    +    Date getValueAsDate(Field<?> field, Date defaultValue) throws IllegalArgumentException, DataTypeException;
    +
    +    /**
    +     * Get a value from this Record, providing a field name.
    +     *
    +     * @param fieldName The field's name
    +     * @return The converted value of a field's index contained in this record
    +     * @throws IllegalArgumentException If the argument fieldName is not
    +     *             contained in the record
    +     * @throws DataTypeException wrapping any data type conversion exception
    +     *             that might have occurred
    +     */
    +    Date getValueAsDate(String fieldName) throws IllegalArgumentException, DataTypeException;
    +
    +    /**
    +     * Get a value from this record, providing a field name.
    +     *
    +     * @param fieldName The field's name
    +     * @param defaultValue The default value instead of <code>null</code>
    +     * @return The converted value of a field's name contained in this record,
    +     *         or defaultValue, if <code>null</code>
    +     * @throws IllegalArgumentException If the argument fieldName is not
    +     *             contained in the record
    +     * @throws DataTypeException wrapping any data type conversion exception
    +     *             that might have occurred
    +     */
    +    Date getValueAsDate(String fieldName, Date defaultValue) throws IllegalArgumentException, DataTypeException;
    +
    +    /**
    +     * Get a value from this Record, providing a field.
    +     *
    +     * @param field The field
    +     * @return The converted value of a field contained in this record
    +     * @throws IllegalArgumentException If the argument field is not contained
    +     *             in {@link #getFields()}
    +     * @throws DataTypeException wrapping any data type conversion exception
    +     *             that might have occurred
    +     */
    +    Time getValueAsTime(Field<?> field) throws IllegalArgumentException, DataTypeException;
    +
    +    /**
    +     * Get a value from this record, providing a field.
    +     *
    +     * @param field The field
    +     * @param defaultValue The default value instead of <code>null</code>
    +     * @return The converted value of a field contained in this record, or
    +     *         defaultValue, if <code>null</code>
    +     * @throws IllegalArgumentException If the argument field is not contained
    +     *             in {@link #getFields()}
    +     * @throws DataTypeException wrapping any data type conversion exception
    +     *             that might have occurred
    +     */
    +    Time getValueAsTime(Field<?> field, Time defaultValue) throws IllegalArgumentException, DataTypeException;
    +
    +    /**
    +     * Get a value from this Record, providing a field name.
    +     *
    +     * @param fieldName The field's name
    +     * @return The converted value of a field's index contained in this record
    +     * @throws IllegalArgumentException If the argument fieldName is not
    +     *             contained in the record
    +     * @throws DataTypeException wrapping any data type conversion exception
    +     *             that might have occurred
    +     */
    +    Time getValueAsTime(String fieldName) throws IllegalArgumentException, DataTypeException;
    +
    +    /**
    +     * Get a value from this record, providing a field name.
    +     *
    +     * @param fieldName The field's name
    +     * @param defaultValue The default value instead of <code>null</code>
    +     * @return The converted value of a field's name contained in this record,
    +     *         or defaultValue, if <code>null</code>
    +     * @throws IllegalArgumentException If the argument fieldName is not
    +     *             contained in the record
    +     * @throws DataTypeException wrapping any data type conversion exception
    +     *             that might have occurred
    +     */
    +    Time getValueAsTime(String fieldName, Time defaultValue) throws IllegalArgumentException, DataTypeException;
    +
    +    /**
    +     * Get a converted value from this Record, providing a field.
    +     *
    +     * @param <T> The conversion type parameter
    +     * @param field The field
    +     * @param type The conversion type
    +     * @return The value of a field contained in this record
    +     * @throws IllegalArgumentException If the argument field is not contained
    +     *             in {@link #getFields()}
    +     * @throws DataTypeException wrapping any data type conversion exception
    +     *             that might have occurred
    +     * @throws DataTypeException wrapping any data type conversion exception
    +     *             that might have occurred
    +     * @see Convert#convert(Object, Class)
    +     */
    +    <T> T getValue(Field<?> field, Class<? extends T> type) throws IllegalArgumentException, DataTypeException;
    +
    +    /**
    +     * Get a converted value from this record, providing a field.
    +     *
    +     * @param <T> The conversion type parameter
    +     * @param field The field
    +     * @param type The conversion type
    +     * @param defaultValue The default value instead of <code>null</code>
    +     * @return The value of a field contained in this record, or defaultValue,
    +     *         if <code>null</code>
    +     * @throws IllegalArgumentException If the argument field is not contained
    +     *             in {@link #getFields()}
    +     * @throws DataTypeException wrapping any data type conversion exception
    +     *             that might have occurred
    +     * @see Convert#convert(Object, Class)
    +     */
    +    <T> T getValue(Field<?> field, Class<? extends T> type, T defaultValue) throws IllegalArgumentException,
    +        DataTypeException;
    +
    +    /**
    +     * Get a converted value from this Record, providing a field.
    +     *
    +     * @param <T> The database type parameter
    +     * @param <U> The conversion type parameter
    +     * @param field The field
    +     * @param converter The data type converter
    +     * @return The value of a field contained in this record
    +     * @throws IllegalArgumentException If the argument field is not contained
    +     *             in {@link #getFields()}
    +     * @throws DataTypeException wrapping any data type conversion exception
    +     *             that might have occurred
    +     * @see Convert#convert(Object, Converter)
    +     */
    +    <T, U> U getValue(Field<T> field, Converter<? super T, U> converter) throws IllegalArgumentException, DataTypeException;
    +
    +    /**
    +     * Get a converted value from this record, providing a field.
    +     *
    +     * @param <T> The database type parameter
    +     * @param <U> The conversion type parameter
    +     * @param field The field
    +     * @param converter The data type converter
    +     * @param defaultValue The default value instead of <code>null</code>
    +     * @return The value of a field contained in this record, or defaultValue,
    +     *         if <code>null</code>
    +     * @throws IllegalArgumentException If the argument field is not contained
    +     *             in {@link #getFields()}
    +     * @throws DataTypeException wrapping any data type conversion exception
    +     *             that might have occurred
    +     * @see Convert#convert(Object, Converter)
    +     */
    +    <T, U> U getValue(Field<T> field, Converter<? super T, U> converter, U defaultValue) throws IllegalArgumentException,
    +        DataTypeException;
    +
    +    /**
    +     * Get a converted value from this Record, providing a field name.
    +     *
    +     * @param <T> The conversion type parameter
    +     * @param fieldName The field's name
    +     * @param type The conversion type
    +     * @return The value of a field's name contained in this record
    +     * @throws IllegalArgumentException If the argument fieldName is not
    +     *             contained in the record
    +     * @throws DataTypeException wrapping any data type conversion exception
    +     *             that might have occurred
    +     * @see Convert#convert(Object, Class)
    +     */
    +    <T> T getValue(String fieldName, Class<? extends T> type) throws IllegalArgumentException, DataTypeException;
    +
    +    /**
    +     * Get a converted value from this record, providing a field name.
    +     *
    +     * @param <T> The conversion type parameter
    +     * @param fieldName The field's name
    +     * @param type The conversion type
    +     * @param defaultValue The default value instead of <code>null</code>
    +     * @return The value of a field's name contained in this record, or
    +     *         defaultValue, if <code>null</code>
    +     * @throws IllegalArgumentException If the argument fieldName is not
    +     *             contained in the record
    +     * @throws DataTypeException wrapping any data type conversion exception
    +     *             that might have occurred
    +     * @see Convert#convert(Object, Class)
    +     */
    +    <T> T getValue(String fieldName, Class<? extends T> type, T defaultValue) throws IllegalArgumentException,
    +        DataTypeException;
    +
    +    /**
    +     * Get a converted value from this Store, providing a field index.
    +     *
    +     * @param <U> The conversion type parameter
    +     * @param index The field's index
    +     * @param converter The data type converter
    +     * @return The value of a field's index contained in this Store
    +     * @throws IllegalArgumentException If the argument index is not contained
    +     *             in the Store
    +     * @throws DataTypeException wrapping data type conversion exception that
    +     *             might have occurred
    +     * @see Convert#convert(Object, Converter)
    +     */
    +    <U> U getValue(int index, Converter<?, U> converter) throws IllegalArgumentException, DataTypeException;
    +
    +    /**
    +     * Get a converted value from this Store, providing a field index.
    +     *
    +     * @param <U> The conversion type parameter
    +     * @param index The field's index
    +     * @param converter The data type converter
    +     * @param defaultValue The default value instead of <code>null</code>
    +     * @return The value of a field's index contained in this Store, or
    +     *         defaultValue, if <code>null</code>
    +     * @throws IllegalArgumentException If the argument index is not contained
    +     *             in the Store
    +     * @throws DataTypeException wrapping data type conversion exception that
    +     *             might have occurred
    +     * @see Convert#convert(Object, Converter)
    +     */
    +    <U> U getValue(int index, Converter<?, U> converter, U defaultValue) throws IllegalArgumentException,
    +        DataTypeException;
    +
    +    /**
    +     * Get a converted value from this Record, providing a field name.
    +     *
    +     * @param <U> The conversion type parameter
    +     * @param fieldName The field's name
    +     * @param converter The data type converter
    +     * @return The value of a field's name contained in this record
    +     * @throws IllegalArgumentException If the argument fieldName is not
    +     *             contained in the record
    +     * @throws DataTypeException wrapping any data type conversion exception
    +     *             that might have occurred
    +     * @see Convert#convert(Object, Converter)
    +     */
    +    <U> U getValue(String fieldName, Converter<?, U> converter) throws IllegalArgumentException, DataTypeException;
    +
    +    /**
    +     * Get a converted value from this record, providing a field name.
    +     *
    +     * @param <U> The conversion type parameter
    +     * @param fieldName The field's name
    +     * @param converter The data type converter
    +     * @param defaultValue The default value instead of <code>null</code>
    +     * @return The value of a field's name contained in this record, or
    +     *         defaultValue, if <code>null</code>
    +     * @throws IllegalArgumentException If the argument fieldName is not
    +     *             contained in the record
    +     * @throws DataTypeException wrapping any data type conversion exception
    +     *             that might have occurred
    +     * @see Convert#convert(Object, Converter)
    +     */
    +    <U> U getValue(String fieldName, Converter<?, U> converter, U defaultValue) throws IllegalArgumentException,
    +        DataTypeException;
    +
    +    /**
    +     * Set a value into this record.
    +     *
    +     * @param <T> The generic field parameter
    +     * @param field The field
    +     * @param value The value
    +     */
    +    <T> void setValue(Field<T> field, T value);
    +
    +    /**
    +     * Set a value into this record.
    +     *
    +     * @param <T> The generic field parameter
    +     * @param <U> The conversion type parameter
    +     * @param field The field
    +     * @param value The value
    +     * @param converter The converter used to convert <code>value</code> into an
    +     *            appropriate type
    +     */
    +    <T, U> void setValue(Field<T> field, U value, Converter<T, ? super U> converter);
    +
    +    /**
    +     * Convert this record into an array.
    +     * <p>
    +     * The resulting array has the same number of elements as this record has
    +     * fields. The resulting array contains data as such:
    +     * <p>
    +     * <code><pre>
    +     * // For arbitrary values of i
    +     * record.getValue(i) == record.intoArray()[i]
    +     * </pre></code>
    +     * <p>
    +     * This is the same as calling <code>into(Object[].class)</code>
    +     *
    +     * @return This record as an array
    +     */
    +    Object[] intoArray();
    +
    +    /**
    +     * Map resulting records onto a custom type. The mapping algorithm is this:
    +     * <h3>If <code>type</code> is an array:</h3> The resulting array is of the
    +     * nature described in {@link #intoArray()}. Arrays more specific than
    +     * <code>Object[]</code> can be specified as well, e.g.
    +     * <code>String[]</code>. If conversion fails, a {@link MappingException}
    +     * is thrown, wrapping conversion exceptions.
    +     * <p>
    +     * <h3>If any JPA {@link Column} annotations are found on the provided
    +     * <code>type</code>, only those are used:</h3>
    +     * <ul>
    +     * <li>If <code>type</code> contains public single-argument instance methods
    +     * annotated with <code>Column</code>, those methods are invoked</li>
    +     * <li>If <code>type</code> contains public no-argument instance methods
    +     * starting with <code>getXXX</code> or <code>isXXX</code>, annotated with
    +     * <code>Column</code>, then matching public <code>setXXX()</code> instance
    +     * methods are invoked</li>
    +     * <li>If <code>type</code> contains public instance member fields annotated
    +     * with <code>Column</code>, those members are set</li>
    +     * </ul>
    +     * Additional rules:
    +     * <ul>
    +     * <li>The same annotation can be re-used for several methods/members</li>
    +     * <li>{@link Column#name()} must match {@link Field#getName()}. All other
    +     * annotation attributes are ignored</li>
    +     * <li>Static methods / member fields are ignored</li>
    +     * <li>Final member fields are ignored</li>
    +     * </ul>
    +     * <h3>If there are no JPA <code>Column</code> annotations, or jOOQ can't
    +     * find the <code>javax.persistence</code> API on the classpath, jOOQ will
    +     * map <code>Record</code> values by naming convention:</h3> If
    +     * {@link Field#getName()} is <code>MY_field</code> (case-sensitive!), then
    +     * this field's value will be set on all of these:
    +     * <ul>
    +     * <li>Public single-argument instance method <code>MY_field(...)</code></li>
    +     * <li>Public single-argument instance method <code>myField(...)</code></li>
    +     * <li>Public single-argument instance method <code>setMY_field(...)</code></li>
    +     * <li>Public single-argument instance method <code>setMyField(...)</code></li>
    +     * <li>Public non-final instance member field <code>MY_field</code></li>
    +     * <li>Public non-final instance member field <code>myField</code></li>
    +     * </ul>
    +     * <h3>Other restrictions</h3>
    +     * <ul>
    +     * <li><code>type</code> must provide a default constructor. Non-public
    +     * default constructors are made accessible using
    +     * {@link Constructor#setAccessible(boolean)}</li>
    +     * <li>primitive types are supported. If a value is <code>null</code>, this
    +     * will result in setting the primitive type's default value (zero for
    +     * numbers, or <code>false</code> for booleans). Hence, there is no way of
    +     * distinguishing <code>null</code> and <code>0</code> in that case.</li>
    +     * </ul>
    +     *
    +     * @param <E> The generic entity type.
    +     * @param type The entity type.
    +     * @throws MappingException wrapping any reflection exception that might
    +     *             have occurred while mapping records
    +     * @see #from(Object)
    +     */
    +    <E> E into(Class<? extends E> type) throws MappingException;
    +
    +    /**
    +     * Map resulting records onto a custom record type. The mapping algorithm is
    +     * this: <h3>jOOQ will map <code>Record</code> values by equal field names:</h3>
    +     * If a field's value for {@link Field#getName()} is <code>MY_field</code>
    +     * (case-sensitive!), then there must be a field in <code>table</code> with
    +     * the exact same name. <h3>Other restrictions</h3>
    +     * <ul>
    +     * <li>{@link Table#getRecordType()} must return a class of type
    +     * {@link TableRecord}, which must provide a default constructor. Non-public
    +     * default constructors are made accessible using
    +     * {@link Constructor#setAccessible(boolean)}</li>
    +     * </ul>
    +     *
    +     * @param <R> The generic table record type.
    +     * @param table The table type.
    +     */
    +    <R extends Record> R into(Table<R> table);
    +
    +    /**
    +     * Load data into this record from a source. The mapping algorithm is this:
    +     * <h3>If any JPA {@link Column} annotations are found on the {@link Class}
    +     * of the provided <code>source</code>, only those are used. Matching
    +     * candidates are:</h3>
    +     * <ul>
    +     * <li>Public no-argument instance methods annotated with
    +     * <code>Column</code></li>
    +     * <li>Public no-argument instance methods starting with <code>getXXX</code>
    +     * or <code>isXXX</code>, if there exists a matching public single-argument
    +     * <code>setXXX()</code> instance method that is annotated with
    +     * <code>Column</code></li>
    +     * <li>Public instance member fields annotated with <code>Column</code></li>
    +     * </ul>
    +     * Additional matching rules:
    +     * <ul>
    +     * <li>{@link Column#name()} must match {@link Field#getName()}. All other
    +     * annotation attributes are ignored</li>
    +     * <li>Only the first match per field is used</li>
    +     * <li>Matching methods have a higher priority than matching member fields</li>
    +     * <li>Explicitly matching methods have a higher priority than implicitly
    +     * matching methods (implicitly matching getter = setter is annotated)</li>
    +     * <li>Static methods / member fields are ignored</li>
    +     * </ul>
    +     * <h3>If there are no JPA <code>Column</code> annotations, or jOOQ can't
    +     * find the <code>javax.persistence</code> API on the classpath, jOOQ will
    +     * map members by naming convention:</h3> If {@link Field#getName()} is
    +     * <code>MY_field</code> (case-sensitive!), then this field's value will be
    +     * fetched from the first of these:
    +     * <ul>
    +     * <li>Public no-argument instance method <code>MY_field()</code></li>
    +     * <li>Public no-argument instance method <code>myField()</code></li>
    +     * <li>Public no-argument instance method <code>getMY_field()</code></li>
    +     * <li>Public no-argument instance method <code>getMyField()</code></li>
    +     * <li>Public instance member field <code>MY_field</code></li>
    +     * <li>Public instance member field <code>myField</code></li>
    +     * </ul>
    +     * <h3>Other restrictions</h3>
    +     * <ul>
    +     * <li>primitive types are supported.</li>
    +     * </ul>
    +     *
    +     * @param source The source object to copy data from
    +     * @throws MappingException wrapping any reflection exception that might
    +     *             have occurred while mapping records
    +     * @see #into(Class)
    +     */
    +    void from(Object source) throws MappingException;
    +
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/RecordHandler.java b/jOOQ/src/main/java/org/jooq/RecordHandler.java
    new file mode 100644
    index 00000000000..0cb47a491d0
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/RecordHandler.java
    @@ -0,0 +1,50 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq;
    +
    +/**
    + * A <code>RecordHandler</code> is a handler that can receive {@link Record}
    + * objects, when fetching data from the database.
    + *
    + * @author Lukas Eder
    + */
    +public interface RecordHandler<R extends Record> {
    +
    +    /**
    +     * A callback method indicating that the next record has been fetched.
    +     */
    +    void next(R record);
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/RenamedSchema.java b/jOOQ/src/main/java/org/jooq/RenamedSchema.java
    new file mode 100644
    index 00000000000..5814e919438
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/RenamedSchema.java
    @@ -0,0 +1,76 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq;
    +
    +import java.util.List;
    +
    +import org.jooq.impl.SchemaImpl;
    +
    +/**
    + * A mapped schema
    + *
    + * @author Lukas Eder
    + */
    +class RenamedSchema extends SchemaImpl {
    +
    +    /**
    +     * Generated UID
    +     */
    +    private static final long serialVersionUID = -3579885830845728730L;
    +
    +    private final Schema      delegate;
    +
    +    RenamedSchema(Schema delegate, String rename) {
    +        super(rename);
    +
    +        this.delegate = delegate;
    +    }
    +
    +    @Override
    +    public final List<Table<?>> getTables() {
    +        return delegate.getTables();
    +    }
    +
    +    @Override
    +    public final List<UDT<?>> getUDTs() {
    +        return delegate.getUDTs();
    +    }
    +
    +    @Override
    +    public final List<Sequence<?>> getSequences() {
    +        return delegate.getSequences();
    +    }
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/RenamedTable.java b/jOOQ/src/main/java/org/jooq/RenamedTable.java
    new file mode 100644
    index 00000000000..db545db0cc4
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/RenamedTable.java
    @@ -0,0 +1,59 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq;
    +
    +import org.jooq.impl.TableImpl;
    +
    +/**
    + * A mapped table
    + *
    + * @author Lukas Eder
    + */
    +class RenamedTable extends TableImpl<Record> {
    +
    +    /**
    +     * Generated UID
    +     */
    +    private static final long serialVersionUID = -309012919785933903L;
    +
    +    RenamedTable(Table<?> delegate, String rename) {
    +        super(rename, delegate.getSchema());
    +
    +        for (Field<?> field : delegate.getFields()) {
    +            createField(field.getName(), field.getDataType(), this);
    +        }
    +    }
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/RenderContext.java b/jOOQ/src/main/java/org/jooq/RenderContext.java
    new file mode 100644
    index 00000000000..1b62ac65c6e
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/RenderContext.java
    @@ -0,0 +1,261 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq;
    +
    +import org.jooq.conf.RenderKeywordStyle;
    +import org.jooq.conf.Settings;
    +
    +/**
    + * The render context is used for rendering {@link QueryPart}'s to SQL. A new
    + * render context is instanciated every time a {@link Query} is rendered.
    + * <code>QueryPart</code>'s will then pass the same context to their components
    + * <p>
    + * This interface is for JOOQ INTERNAL USE only. Do not reference directly
    + *
    + * @author Lukas Eder
    + * @see BindContext
    + */
    +public interface RenderContext extends Context<RenderContext> {
    +
    +    /**
    +     * Peek the next alias that will be generated by {@link #nextAlias()}
    +     */
    +    String peekAlias();
    +
    +    /**
    +     * Return a new alias that is unique for the scope of one query. These
    +     * aliases are sometimes needed when unaliased projections are defined in
    +     * subqueries, which can lead to syntax errors.
    +     */
    +    String nextAlias();
    +
    +    /**
    +     * Render the context's underlying SQL statement
    +     */
    +    String render();
    +
    +    /**
    +     * Render a query part in a new context derived from this one. The rendered
    +     * SQL will not be appended to this context.
    +     */
    +    String render(QueryPart part);
    +
    +    /**
    +     * Append a SQL keyword to the context's contained {@link StringBuilder}
    +     * <p>
    +     * Use this to have your SQL keyword rendered in {@link RenderKeywordStyle}
    +     * (upper or lower case)
    +     */
    +    RenderContext keyword(String keyword);
    +
    +    /**
    +     * Append some SQL to the context's contained {@link StringBuilder}
    +     */
    +    RenderContext sql(String sql);
    +
    +    /**
    +     * Append some SQL to the context's contained {@link StringBuilder}
    +     */
    +    RenderContext sql(char sql);
    +
    +    /**
    +     * Append some SQL to the context's contained {@link StringBuilder}
    +     */
    +    RenderContext sql(int sql);
    +
    +    /**
    +     * Recurse rendering
    +     */
    +    RenderContext sql(QueryPart part);
    +
    +    /**
    +     * Render a new line character (only if {@link Settings#isRenderFormatted()}
    +     * is set to <code>true</code>)
    +     */
    +    RenderContext formatNewLine();
    +
    +    /**
    +     * Render a new line character (only if {@link Settings#isRenderFormatted()}
    +     * is set to <code>true</code>), or a whitespace separator character
    +     * otherwise
    +     */
    +    RenderContext formatSeparator();
    +
    +    /**
    +     * Start indenting subsequent SQL by one level (two characters), if
    +     * {@link Settings#isRenderFormatted()} is set to <code>true</code>
    +     * <p>
    +     * This is the same as calling {@link #formatIndentStart(int)} with a
    +     * parameter of <code>2</code>
    +     */
    +    RenderContext formatIndentStart();
    +
    +    /**
    +     * Start indenting subsequent SQL by a number of characters, if
    +     * {@link Settings#isRenderFormatted()} is set to <code>true</code>
    +     */
    +    RenderContext formatIndentStart(int indent);
    +
    +    /**
    +     * Start indenting subsequent SQL at the same level as the current line, if
    +     * {@link Settings#isRenderFormatted()} is set to <code>true</code>
    +     */
    +    RenderContext formatIndentLockStart();
    +
    +    /**
    +     * Stop indenting subsequent SQL by one level (two characters), if
    +     * {@link Settings#isRenderFormatted()} is set to <code>true</code>
    +     * <p>
    +     * This is the same as calling {@link #formatIndentEnd(int)} with a
    +     * parameter of <code>2</code>
    +     */
    +    RenderContext formatIndentEnd();
    +
    +    /**
    +     * Stop indenting subsequent SQL by a number of characters, if
    +     * {@link Settings#isRenderFormatted()} is set to <code>true</code>
    +     */
    +    RenderContext formatIndentEnd(int indent);
    +
    +    /**
    +     * Stop indenting subsequent SQL at the same level as the current line, if
    +     * {@link Settings#isRenderFormatted()} is set to <code>true</code>
    +     */
    +    RenderContext formatIndentLockEnd();
    +
    +    /**
    +     * Append some (quoted) literal to the context's contained
    +     * {@link StringBuilder}
    +     */
    +    RenderContext literal(String literal);
    +
    +    /**
    +     * Whether bind variables should be inlined, rather than rendered as
    +     * <code>'?'</code>
    +     */
    +    boolean inline();
    +
    +    /**
    +     * Set the new context value for {@link #inline()}
    +     */
    +    RenderContext inline(boolean inline);
    +
    +    /**
    +     * Whether bind variables should be rendered as named parameters:<br/>
    +     * <code>&#160; :1, :2, :custom_name</code>
    +     * <p>
    +     * or as JDBC bind variables <br/>
    +     * <code>&#160; ?</code>
    +     */
    +    boolean namedParams();
    +
    +    /**
    +     * Set the new context value for {@link #namedParams()}
    +     */
    +    RenderContext namedParams(boolean renderNamedParams);
    +
    +    /**
    +     * The currently applied cast mode for bind values
    +     */
    +    CastMode castMode();
    +
    +    /**
    +     * Set the new cast mode for {@link #castMode()}
    +     */
    +    RenderContext castMode(CastMode mode);
    +
    +    /**
    +     * Whether casting must be applied. The result follows this logic:
    +     * <table border="1">
    +     * <tr>
    +     * <th>CastMode</th>
    +     * <th>result</th>
    +     * </tr>
    +     * <tr>
    +     * <td><code>ALWAYS</code></td>
    +     * <td><code>true</code></td>
    +     * </tr>
    +     * <tr>
    +     * <td><code>NEVER</code></td>
    +     * <td><code>false</code></td>
    +     * </tr>
    +     * <tr>
    +     * <td><code>SOME</code></td>
    +     * <td><code>true</code> or <code>false</code> depending on the dialect</td>
    +     * </tr>
    +     * <tr>
    +     * <td><code>DEFAULT</code></td>
    +     * <td><code>null</code></td>
    +     * </tr>
    +     * </table>
    +     */
    +    Boolean cast();
    +
    +    /**
    +     * Set the new cast mode to {@link CastMode#SOME} for a list of dialects
    +     */
    +    RenderContext castModeSome(SQLDialect... dialects);
    +
    +    /**
    +     * The cast mode for bind values.
    +     *
    +     * @see RenderContext#castMode()
    +     */
    +    enum CastMode {
    +
    +        /**
    +         * Cast all bind values to their respective type
    +         */
    +        ALWAYS,
    +
    +        /**
    +         * Cast no bind values to their respective type
    +         */
    +        NEVER,
    +
    +        /**
    +         * Cast bind values only in some dialects. The specified dialects assume
    +         * {@link #ALWAYS} behaviour, all the other dialects assume
    +         * {@link #NEVER}
    +         */
    +        SOME,
    +
    +        /**
    +         * Cast when needed. This is the default mode if not specified otherwise
    +         */
    +        DEFAULT
    +    }
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/Result.java b/jOOQ/src/main/java/org/jooq/Result.java
    new file mode 100644
    index 00000000000..b202bcf8b65
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/Result.java
    @@ -0,0 +1,1837 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +
    +package org.jooq;
    +
    +import java.math.BigDecimal;
    +import java.math.BigInteger;
    +import java.sql.Date;
    +import java.sql.Time;
    +import java.sql.Timestamp;
    +import java.util.List;
    +
    +import org.jooq.exception.MappingException;
    +import org.jooq.tools.Convert;
    +
    +import org.w3c.dom.Document;
    +
    +/**
    + * A wrapper for database results returned by <code>{@link SelectQuery}</code>
    + *
    + * @param <R> The record type contained in this result
    + * @author Lukas Eder
    + * @see SelectQuery#getResult()
    + */
    +public interface Result<R extends Record> extends FieldProvider, List<R>, Attachable {
    +
    +    /**
    +     * Convenience method to fetch a value at a given position in the result.
    +     *
    +     * @param <T> The value's field's generic type parameter
    +     * @param index The record's index
    +     * @param field The value's field
    +     * @return The value
    +     * @throws IndexOutOfBoundsException
    +     */
    +    <T> T getValue(int index, Field<T> field) throws IndexOutOfBoundsException;
    +
    +    /**
    +     * Convenience method to fetch a value at a given position in the result.
    +     *
    +     * @param <T> The value's field's generic type parameter
    +     * @param index The record's index
    +     * @param field The value's field
    +     * @param defaultValue The default value if the value was <code>null</code>
    +     * @return The value
    +     * @throws IndexOutOfBoundsException
    +     */
    +    <T> T getValue(int index, Field<T> field, T defaultValue) throws IndexOutOfBoundsException;
    +
    +    /**
    +     * Convenience method to fetch a value at a given position in the result.
    +     *
    +     * @param index The record's index
    +     * @param fieldIndex The value's field index
    +     * @return The value
    +     * @throws IndexOutOfBoundsException
    +     */
    +    Object getValue(int index, int fieldIndex) throws IndexOutOfBoundsException;
    +
    +    /**
    +     * Convenience method to fetch a value at a given position in the result.
    +     *
    +     * @param index The record's index
    +     * @param fieldIndex The value's field index
    +     * @param defaultValue The default value if the value was <code>null</code>
    +     * @return The value
    +     * @throws IndexOutOfBoundsException
    +     */
    +    Object getValue(int index, int fieldIndex, Object defaultValue) throws IndexOutOfBoundsException;
    +
    +    /**
    +     * Convenience method to fetch a value at a given position in the result.
    +     *
    +     * @param index The record's index
    +     * @param fieldName The value's field name
    +     * @return The value
    +     * @throws IndexOutOfBoundsException
    +     */
    +    Object getValue(int index, String fieldName) throws IndexOutOfBoundsException;
    +
    +    /**
    +     * Convenience method to fetch a value at a given position in the result.
    +     *
    +     * @param index The record's index
    +     * @param fieldName The value's field name
    +     * @param defaultValue The default value if the value was <code>null</code>
    +     * @return The value
    +     * @throws IndexOutOfBoundsException
    +     */
    +    Object getValue(int index, String fieldName, Object defaultValue) throws IndexOutOfBoundsException;
    +
    +    /**
    +     * Convenience method to fetch a value at a given position in the result.
    +     *
    +     * @param <A> The value's field's generic type parameter
    +     * @param <T> The {@link ArrayRecord} type parameter
    +     * @param index The record's index
    +     * @param field The value's field
    +     * @return The value
    +     * @throws IndexOutOfBoundsException
    +     */
    +    <A extends ArrayRecord<T>, T> T[] getValueAsArray(int index, Field<A> field) throws IndexOutOfBoundsException;
    +
    +    /**
    +     * Convenience method to fetch a value at a given position in the result.
    +     *
    +     * @param <A> The value's field's generic type parameter
    +     * @param <T> The {@link ArrayRecord} type parameter
    +     * @param index The record's index
    +     * @param field The value's field
    +     * @param defaultValue The default value if the value was <code>null</code>
    +     * @return The value
    +     * @throws IndexOutOfBoundsException
    +     */
    +    <A extends ArrayRecord<T>, T> T[] getValueAsArray(int index, Field<A> field, T[] defaultValue)
    +        throws IndexOutOfBoundsException;
    +
    +    /**
    +     * Convenience method to fetch a value at a given position in the result.
    +     *
    +     * @param index The record's index
    +     * @param field The field
    +     * @return The converted value of a field contained in this record
    +     * @throws IllegalArgumentException If the argument field is not contained
    +     *             in {@link #getFields()}
    +     */
    +    String getValueAsString(int index, Field<?> field) throws IllegalArgumentException;
    +
    +    /**
    +     * Convenience method to fetch a value at a given position in the result.
    +     *
    +     * @param index The record's index
    +     * @param field The field
    +     * @param defaultValue The default value instead of <code>null</code>
    +     * @return The converted value of a field contained in this record, or
    +     *         defaultValue, if <code>null</code>
    +     * @throws IllegalArgumentException If the argument field is not contained
    +     *             in {@link #getFields()}
    +     */
    +    String getValueAsString(int index, Field<?> field, String defaultValue) throws IllegalArgumentException;
    +
    +    /**
    +     * Convenience method to fetch a value at a given position in the result.
    +     *
    +     * @param index The record's index
    +     * @param fieldIndex The field's index
    +     * @return The converted value of a field's index contained in this record
    +     * @throws IllegalArgumentException If the argument index is not contained
    +     *             in the record
    +     */
    +    String getValueAsString(int index, int fieldIndex) throws IllegalArgumentException;
    +
    +    /**
    +     * Convenience method to fetch a value at a given position in the result.
    +     *
    +     * @param index The record's index
    +     * @param fieldIndex The field's index
    +     * @param defaultValue The default value instead of <code>null</code>
    +     * @return The converted value of a field's index contained in this record,
    +     *         or defaultValue, if <code>null</code>
    +     * @throws IllegalArgumentException If the argument index is not contained
    +     *             in the record
    +     */
    +    String getValueAsString(int index, int fieldIndex, String defaultValue) throws IllegalArgumentException;
    +
    +    /**
    +     * Convenience method to fetch a value at a given position in the result.
    +     *
    +     * @param index The record's index
    +     * @param fieldName The field's name
    +     * @return The converted value of a field's name contained in this record
    +     * @throws IllegalArgumentException If the argument name is not contained in
    +     *             the record
    +     */
    +    String getValueAsString(int index, String fieldName) throws IllegalArgumentException;
    +
    +    /**
    +     * Convenience method to fetch a value at a given position in the result.
    +     *
    +     * @param index The record's index
    +     * @param fieldName The field's name
    +     * @param defaultValue The default value instead of <code>null</code>
    +     * @return The converted value of a field's name contained in this record,
    +     *         or defaultValue, if <code>null</code>
    +     * @throws IllegalArgumentException If the argument name is not contained in
    +     *             the record
    +     */
    +    String getValueAsString(int index, String fieldName, String defaultValue) throws IllegalArgumentException;
    +
    +    /**
    +     * Convenience method to fetch a value at a given position in the result.
    +     *
    +     * @param index The record's index
    +     * @param field The field
    +     * @return The converted value of a field contained in this record
    +     * @throws IllegalArgumentException If the argument field is not contained
    +     *             in {@link #getFields()}
    +     */
    +    Byte getValueAsByte(int index, Field<?> field) throws IllegalArgumentException;
    +
    +    /**
    +     * Convenience method to fetch a value at a given position in the result.
    +     *
    +     * @param index The record's index
    +     * @param field The field
    +     * @param defaultValue The default value instead of <code>null</code>
    +     * @return The converted value of a field contained in this record, or
    +     *         defaultValue, if <code>null</code>
    +     * @throws IllegalArgumentException If the argument field is not contained
    +     *             in {@link #getFields()}
    +     */
    +    Byte getValueAsByte(int index, Field<?> field, Byte defaultValue) throws IllegalArgumentException;
    +
    +    /**
    +     * Convenience method to fetch a value at a given position in the result.
    +     *
    +     * @param index The record's index
    +     * @param fieldIndex The field's index
    +     * @return The converted value of a field's index contained in this record
    +     * @throws IllegalArgumentException If the argument index is not contained
    +     *             in the record
    +     */
    +    Byte getValueAsByte(int index, int fieldIndex) throws IllegalArgumentException;
    +
    +    /**
    +     * Convenience method to fetch a value at a given position in the result.
    +     *
    +     * @param index The record's index
    +     * @param fieldIndex The field's index
    +     * @param defaultValue The default value instead of <code>null</code>
    +     * @return The converted value of a field's index contained in this record,
    +     *         or defaultValue, if <code>null</code>
    +     * @throws IllegalArgumentException If the argument index is not contained
    +     *             in the record
    +     */
    +    Byte getValueAsByte(int index, int fieldIndex, Byte defaultValue) throws IllegalArgumentException;
    +
    +    /**
    +     * Convenience method to fetch a value at a given position in the result.
    +     *
    +     * @param index The record's index
    +     * @param fieldName The field's name
    +     * @return The converted value of a field's name contained in this record
    +     * @throws IllegalArgumentException If the argument name is not contained in
    +     *             the record
    +     */
    +    Byte getValueAsByte(int index, String fieldName) throws IllegalArgumentException;
    +
    +    /**
    +     * Convenience method to fetch a value at a given position in the result.
    +     *
    +     * @param index The record's index
    +     * @param fieldName The field's name
    +     * @param defaultValue The default value instead of <code>null</code>
    +     * @return The converted value of a field's name contained in this record,
    +     *         or defaultValue, if <code>null</code>
    +     * @throws IllegalArgumentException If the argument name is not contained in
    +     *             the record
    +     */
    +    Byte getValueAsByte(int index, String fieldName, Byte defaultValue) throws IllegalArgumentException;
    +
    +    /**
    +     * Convenience method to fetch a value at a given position in the result.
    +     *
    +     * @param index The record's index
    +     * @param field The field
    +     * @return The converted value of a field contained in this record
    +     * @throws IllegalArgumentException If the argument field is not contained
    +     *             in {@link #getFields()}
    +     */
    +    Short getValueAsShort(int index, Field<?> field) throws IllegalArgumentException;
    +
    +    /**
    +     * Convenience method to fetch a value at a given position in the result.
    +     *
    +     * @param index The record's index
    +     * @param field The field
    +     * @param defaultValue The default value instead of <code>null</code>
    +     * @return The converted value of a field contained in this record, or
    +     *         defaultValue, if <code>null</code>
    +     * @throws IllegalArgumentException If the argument field is not contained
    +     *             in {@link #getFields()}
    +     */
    +    Short getValueAsShort(int index, Field<?> field, Short defaultValue) throws IllegalArgumentException;
    +
    +    /**
    +     * Convenience method to fetch a value at a given position in the result.
    +     *
    +     * @param index The record's index
    +     * @param fieldIndex The field's index
    +     * @return The converted value of a field's index contained in this record
    +     * @throws IllegalArgumentException If the argument index is not contained
    +     *             in the record
    +     */
    +    Short getValueAsShort(int index, int fieldIndex) throws IllegalArgumentException;
    +
    +    /**
    +     * Convenience method to fetch a value at a given position in the result.
    +     *
    +     * @param index The record's index
    +     * @param fieldIndex The field's index
    +     * @param defaultValue The default value instead of <code>null</code>
    +     * @return The converted value of a field's index contained in this record,
    +     *         or defaultValue, if <code>null</code>
    +     * @throws IllegalArgumentException If the argument index is not contained
    +     *             in the record
    +     */
    +    Short getValueAsShort(int index, int fieldIndex, Short defaultValue) throws IllegalArgumentException;
    +
    +    /**
    +     * Convenience method to fetch a value at a given position in the result.
    +     *
    +     * @param index The record's index
    +     * @param fieldName The field's name
    +     * @return The converted value of a field's name contained in this record
    +     * @throws IllegalArgumentException If the argument name is not contained in
    +     *             the record
    +     */
    +    Short getValueAsShort(int index, String fieldName) throws IllegalArgumentException;
    +
    +    /**
    +     * Convenience method to fetch a value at a given position in the result.
    +     *
    +     * @param index The record's index
    +     * @param fieldName The field's name
    +     * @param defaultValue The default value instead of <code>null</code>
    +     * @return The converted value of a field's name contained in this record,
    +     *         or defaultValue, if <code>null</code>
    +     * @throws IllegalArgumentException If the argument name is not contained in
    +     *             the record
    +     */
    +    Short getValueAsShort(int index, String fieldName, Short defaultValue) throws IllegalArgumentException;
    +
    +    /**
    +     * Convenience method to fetch a value at a given position in the result.
    +     *
    +     * @param index The record's index
    +     * @param field The field
    +     * @return The converted value of a field contained in this record
    +     * @throws IllegalArgumentException If the argument field is not contained
    +     *             in {@link #getFields()}
    +     */
    +    Integer getValueAsInteger(int index, Field<?> field) throws IllegalArgumentException;
    +
    +    /**
    +     * Convenience method to fetch a value at a given position in the result.
    +     *
    +     * @param index The record's index
    +     * @param field The field
    +     * @param defaultValue The default value instead of <code>null</code>
    +     * @return The converted value of a field contained in this record, or
    +     *         defaultValue, if <code>null</code>
    +     * @throws IllegalArgumentException If the argument field is not contained
    +     *             in {@link #getFields()}
    +     */
    +    Integer getValueAsInteger(int index, Field<?> field, Integer defaultValue) throws IllegalArgumentException;
    +
    +    /**
    +     * Convenience method to fetch a value at a given position in the result.
    +     *
    +     * @param index The record's index
    +     * @param fieldIndex The field's index
    +     * @return The converted value of a field's index contained in this record
    +     * @throws IllegalArgumentException If the argument index is not contained
    +     *             in the record
    +     */
    +    Integer getValueAsInteger(int index, int fieldIndex) throws IllegalArgumentException;
    +
    +    /**
    +     * Convenience method to fetch a value at a given position in the result.
    +     *
    +     * @param index The record's index
    +     * @param fieldIndex The field's index
    +     * @param defaultValue The default value instead of <code>null</code>
    +     * @return The converted value of a field's index contained in this record,
    +     *         or defaultValue, if <code>null</code>
    +     * @throws IllegalArgumentException If the argument index is not contained
    +     *             in the record
    +     */
    +    Integer getValueAsInteger(int index, int fieldIndex, Integer defaultValue) throws IllegalArgumentException;
    +
    +    /**
    +     * Convenience method to fetch a value at a given position in the result.
    +     *
    +     * @param index The record's index
    +     * @param fieldName The field's name
    +     * @return The converted value of a field's name contained in this record
    +     * @throws IllegalArgumentException If the argument name is not contained in
    +     *             the record
    +     */
    +    Integer getValueAsInteger(int index, String fieldName) throws IllegalArgumentException;
    +
    +    /**
    +     * Convenience method to fetch a value at a given position in the result.
    +     *
    +     * @param index The record's index
    +     * @param fieldName The field's name
    +     * @param defaultValue The default value instead of <code>null</code>
    +     * @return The converted value of a field's name contained in this record,
    +     *         or defaultValue, if <code>null</code>
    +     * @throws IllegalArgumentException If the argument name is not contained in
    +     *             the record
    +     */
    +    Integer getValueAsInteger(int index, String fieldName, Integer defaultValue) throws IllegalArgumentException;
    +
    +    /**
    +     * Convenience method to fetch a value at a given position in the result.
    +     *
    +     * @param index The record's index
    +     * @param field The field
    +     * @return The converted value of a field contained in this record
    +     * @throws IllegalArgumentException If the argument field is not contained
    +     *             in {@link #getFields()}
    +     */
    +    Long getValueAsLong(int index, Field<?> field) throws IllegalArgumentException;
    +
    +    /**
    +     * Convenience method to fetch a value at a given position in the result.
    +     *
    +     * @param index The record's index
    +     * @param field The field
    +     * @param defaultValue The default value instead of <code>null</code>
    +     * @return The converted value of a field contained in this record, or
    +     *         defaultValue, if <code>null</code>
    +     * @throws IllegalArgumentException If the argument field is not contained
    +     *             in {@link #getFields()}
    +     */
    +    Long getValueAsLong(int index, Field<?> field, Long defaultValue) throws IllegalArgumentException;
    +
    +    /**
    +     * Convenience method to fetch a value at a given position in the result.
    +     *
    +     * @param index The record's index
    +     * @param fieldIndex The field's index
    +     * @return The converted value of a field's index contained in this record
    +     * @throws IllegalArgumentException If the argument index is not contained
    +     *             in the record
    +     */
    +    Long getValueAsLong(int index, int fieldIndex) throws IllegalArgumentException;
    +
    +    /**
    +     * Convenience method to fetch a value at a given position in the result.
    +     *
    +     * @param index The record's index
    +     * @param fieldIndex The field's index
    +     * @param defaultValue The default value instead of <code>null</code>
    +     * @return The converted value of a field's index contained in this record,
    +     *         or defaultValue, if <code>null</code>
    +     * @throws IllegalArgumentException If the argument index is not contained
    +     *             in the record
    +     */
    +    Long getValueAsLong(int index, int fieldIndex, Long defaultValue) throws IllegalArgumentException;
    +
    +    /**
    +     * Convenience method to fetch a value at a given position in the result.
    +     *
    +     * @param index The record's index
    +     * @param fieldName The field's name
    +     * @return The converted value of a field's name contained in this record
    +     * @throws IllegalArgumentException If the argument name is not contained in
    +     *             the record
    +     */
    +    Long getValueAsLong(int index, String fieldName) throws IllegalArgumentException;
    +
    +    /**
    +     * Convenience method to fetch a value at a given position in the result.
    +     *
    +     * @param index The record's index
    +     * @param fieldName The field's name
    +     * @param defaultValue The default value instead of <code>null</code>
    +     * @return The converted value of a field's name contained in this record,
    +     *         or defaultValue, if <code>null</code>
    +     * @throws IllegalArgumentException If the argument name is not contained in
    +     *             the record
    +     */
    +    Long getValueAsLong(int index, String fieldName, Long defaultValue) throws IllegalArgumentException;
    +
    +    /**
    +     * Convenience method to fetch a value at a given position in the result.
    +     *
    +     * @param index The record's index
    +     * @param field The field
    +     * @return The converted value of a field contained in this record
    +     * @throws IllegalArgumentException If the argument field is not contained
    +     *             in {@link #getFields()}
    +     */
    +    BigInteger getValueAsBigInteger(int index, Field<?> field) throws IllegalArgumentException;
    +
    +    /**
    +     * Convenience method to fetch a value at a given position in the result.
    +     *
    +     * @param index The record's index
    +     * @param field The field
    +     * @param defaultValue The default value instead of <code>null</code>
    +     * @return The converted value of a field contained in this record, or
    +     *         defaultValue, if <code>null</code>
    +     * @throws IllegalArgumentException If the argument field is not contained
    +     *             in {@link #getFields()}
    +     */
    +    BigInteger getValueAsBigInteger(int index, Field<?> field, BigInteger defaultValue) throws IllegalArgumentException;
    +
    +    /**
    +     * Convenience method to fetch a value at a given position in the result.
    +     *
    +     * @param index The record's index
    +     * @param fieldIndex The field's index
    +     * @return The converted value of a field's index contained in this record
    +     * @throws IllegalArgumentException If the argument index is not contained
    +     *             in the record
    +     */
    +    BigInteger getValueAsBigInteger(int index, int fieldIndex) throws IllegalArgumentException;
    +
    +    /**
    +     * Convenience method to fetch a value at a given position in the result.
    +     *
    +     * @param index The record's index
    +     * @param fieldIndex The field's index
    +     * @param defaultValue The default value instead of <code>null</code>
    +     * @return The converted value of a field's index contained in this record,
    +     *         or defaultValue, if <code>null</code>
    +     * @throws IllegalArgumentException If the argument index is not contained
    +     *             in the record
    +     */
    +    BigInteger getValueAsBigInteger(int index, int fieldIndex, BigInteger defaultValue) throws IllegalArgumentException;
    +
    +    /**
    +     * Convenience method to fetch a value at a given position in the result.
    +     *
    +     * @param index The record's index
    +     * @param fieldName The field's name
    +     * @return The converted value of a field's name contained in this record
    +     * @throws IllegalArgumentException If the argument name is not contained in
    +     *             the record
    +     */
    +    BigInteger getValueAsBigInteger(int index, String fieldName) throws IllegalArgumentException;
    +
    +    /**
    +     * Convenience method to fetch a value at a given position in the result.
    +     *
    +     * @param index The record's index
    +     * @param fieldName The field's name
    +     * @param defaultValue The default value instead of <code>null</code>
    +     * @return The converted value of a field's name contained in this record,
    +     *         or defaultValue, if <code>null</code>
    +     * @throws IllegalArgumentException If the argument name is not contained in
    +     *             the record
    +     */
    +    BigInteger getValueAsBigInteger(int index, String fieldName, BigInteger defaultValue)
    +        throws IllegalArgumentException;
    +
    +    /**
    +     * Convenience method to fetch a value at a given position in the result.
    +     *
    +     * @param index The record's index
    +     * @param field The field
    +     * @return The converted value of a field contained in this record
    +     * @throws IllegalArgumentException If the argument field is not contained
    +     *             in {@link #getFields()}
    +     */
    +    Float getValueAsFloat(int index, Field<?> field) throws IllegalArgumentException;
    +
    +    /**
    +     * Convenience method to fetch a value at a given position in the result.
    +     *
    +     * @param index The record's index
    +     * @param field The field
    +     * @param defaultValue The default value instead of <code>null</code>
    +     * @return The converted value of a field contained in this record, or
    +     *         defaultValue, if <code>null</code>
    +     * @throws IllegalArgumentException If the argument field is not contained
    +     *             in {@link #getFields()}
    +     */
    +    Float getValueAsFloat(int index, Field<?> field, Float defaultValue) throws IllegalArgumentException;
    +
    +    /**
    +     * Convenience method to fetch a value at a given position in the result.
    +     *
    +     * @param index The record's index
    +     * @param fieldIndex The field's index
    +     * @return The converted value of a field's index contained in this record
    +     * @throws IllegalArgumentException If the argument index is not contained
    +     *             in the record
    +     */
    +    Float getValueAsFloat(int index, int fieldIndex) throws IllegalArgumentException;
    +
    +    /**
    +     * Convenience method to fetch a value at a given position in the result.
    +     *
    +     * @param index The record's index
    +     * @param fieldIndex The field's index
    +     * @param defaultValue The default value instead of <code>null</code>
    +     * @return The converted value of a field's index contained in this record,
    +     *         or defaultValue, if <code>null</code>
    +     * @throws IllegalArgumentException If the argument index is not contained
    +     *             in the record
    +     */
    +    Float getValueAsFloat(int index, int fieldIndex, Float defaultValue) throws IllegalArgumentException;
    +
    +    /**
    +     * Convenience method to fetch a value at a given position in the result.
    +     *
    +     * @param index The record's index
    +     * @param fieldName The field's name
    +     * @return The converted value of a field's name contained in this record
    +     * @throws IllegalArgumentException If the argument name is not contained in
    +     *             the record
    +     */
    +    Float getValueAsFloat(int index, String fieldName) throws IllegalArgumentException;
    +
    +    /**
    +     * Convenience method to fetch a value at a given position in the result.
    +     *
    +     * @param index The record's index
    +     * @param fieldName The field's name
    +     * @param defaultValue The default value instead of <code>null</code>
    +     * @return The converted value of a field's name contained in this record,
    +     *         or defaultValue, if <code>null</code>
    +     * @throws IllegalArgumentException If the argument name is not contained in
    +     *             the record
    +     */
    +    Float getValueAsFloat(int index, String fieldName, Float defaultValue) throws IllegalArgumentException;
    +
    +    /**
    +     * Convenience method to fetch a value at a given position in the result.
    +     *
    +     * @param index The record's index
    +     * @param field The field
    +     * @return The converted value of a field contained in this record
    +     * @throws IllegalArgumentException If the argument field is not contained
    +     *             in {@link #getFields()}
    +     */
    +    Double getValueAsDouble(int index, Field<?> field) throws IllegalArgumentException;
    +
    +    /**
    +     * Convenience method to fetch a value at a given position in the result.
    +     *
    +     * @param index The record's index
    +     * @param field The field
    +     * @param defaultValue The default value instead of <code>null</code>
    +     * @return The converted value of a field contained in this record, or
    +     *         defaultValue, if <code>null</code>
    +     * @throws IllegalArgumentException If the argument field is not contained
    +     *             in {@link #getFields()}
    +     */
    +    Double getValueAsDouble(int index, Field<?> field, Double defaultValue) throws IllegalArgumentException;
    +
    +    /**
    +     * Convenience method to fetch a value at a given position in the result.
    +     *
    +     * @param index The record's index
    +     * @param fieldIndex The field's index
    +     * @return The converted value of a field's index contained in this record
    +     * @throws IllegalArgumentException If the argument index is not contained
    +     *             in the record
    +     */
    +    Double getValueAsDouble(int index, int fieldIndex) throws IllegalArgumentException;
    +
    +    /**
    +     * Convenience method to fetch a value at a given position in the result.
    +     *
    +     * @param index The record's index
    +     * @param fieldIndex The field's index
    +     * @param defaultValue The default value instead of <code>null</code>
    +     * @return The converted value of a field's index contained in this record,
    +     *         or defaultValue, if <code>null</code>
    +     * @throws IllegalArgumentException If the argument index is not contained
    +     *             in the record
    +     */
    +    Double getValueAsDouble(int index, int fieldIndex, Double defaultValue) throws IllegalArgumentException;
    +
    +    /**
    +     * Convenience method to fetch a value at a given position in the result.
    +     *
    +     * @param index The record's index
    +     * @param fieldName The field's name
    +     * @return The converted value of a field's name contained in this record
    +     * @throws IllegalArgumentException If the argument name is not contained in
    +     *             the record
    +     */
    +    Double getValueAsDouble(int index, String fieldName) throws IllegalArgumentException;
    +
    +    /**
    +     * Convenience method to fetch a value at a given position in the result.
    +     *
    +     * @param index The record's index
    +     * @param fieldName The field's name
    +     * @param defaultValue The default value instead of <code>null</code>
    +     * @return The converted value of a field's name contained in this record,
    +     *         or defaultValue, if <code>null</code>
    +     * @throws IllegalArgumentException If the argument name is not contained in
    +     *             the record
    +     */
    +    Double getValueAsDouble(int index, String fieldName, Double defaultValue) throws IllegalArgumentException;
    +
    +    /**
    +     * Convenience method to fetch a value at a given position in the result.
    +     *
    +     * @param index The record's index
    +     * @param field The field
    +     * @return The converted value of a field contained in this record
    +     * @throws IllegalArgumentException If the argument field is not contained
    +     *             in {@link #getFields()}
    +     */
    +    BigDecimal getValueAsBigDecimal(int index, Field<?> field) throws IllegalArgumentException;
    +
    +    /**
    +     * Convenience method to fetch a value at a given position in the result.
    +     *
    +     * @param index The record's index
    +     * @param field The field
    +     * @param defaultValue The default value instead of <code>null</code>
    +     * @return The converted value of a field contained in this record, or
    +     *         defaultValue, if <code>null</code>
    +     * @throws IllegalArgumentException If the argument field is not contained
    +     *             in {@link #getFields()}
    +     */
    +    BigDecimal getValueAsBigDecimal(int index, Field<?> field, BigDecimal defaultValue) throws IllegalArgumentException;
    +
    +    /**
    +     * Convenience method to fetch a value at a given position in the result.
    +     *
    +     * @param index The record's index
    +     * @param fieldIndex The field's index
    +     * @return The converted value of a field's index contained in this record
    +     * @throws IllegalArgumentException If the argument index is not contained
    +     *             in the record
    +     */
    +    BigDecimal getValueAsBigDecimal(int index, int fieldIndex) throws IllegalArgumentException;
    +
    +    /**
    +     * Convenience method to fetch a value at a given position in the result.
    +     *
    +     * @param index The record's index
    +     * @param fieldIndex The field's index
    +     * @param defaultValue The default value instead of <code>null</code>
    +     * @return The converted value of a field's index contained in this record,
    +     *         or defaultValue, if <code>null</code>
    +     * @throws IllegalArgumentException If the argument index is not contained
    +     *             in the record
    +     */
    +    BigDecimal getValueAsBigDecimal(int index, int fieldIndex, BigDecimal defaultValue) throws IllegalArgumentException;
    +
    +    /**
    +     * Convenience method to fetch a value at a given position in the result.
    +     *
    +     * @param index The record's index
    +     * @param fieldName The field's name
    +     * @return The converted value of a field's name contained in this record
    +     * @throws IllegalArgumentException If the argument name is not contained in
    +     *             the record
    +     */
    +    BigDecimal getValueAsBigDecimal(int index, String fieldName) throws IllegalArgumentException;
    +
    +    /**
    +     * Convenience method to fetch a value at a given position in the result.
    +     *
    +     * @param index The record's index
    +     * @param fieldName The field's name
    +     * @param defaultValue The default value instead of <code>null</code>
    +     * @return The converted value of a field's name contained in this record,
    +     *         or defaultValue, if <code>null</code>
    +     * @throws IllegalArgumentException If the argument name is not contained in
    +     *             the record
    +     */
    +    BigDecimal getValueAsBigDecimal(int index, String fieldName, BigDecimal defaultValue)
    +        throws IllegalArgumentException;
    +
    +    /**
    +     * Convenience method to fetch a value at a given position in the result.
    +     * <p>
    +     * boolean values for <code>true</code> are any of these case-insensitive
    +     * strings:
    +     * <ul>
    +     * <li><code>1</code></li>
    +     * <li><code>y</code></li>
    +     * <li><code>yes</code></li>
    +     * <li><code>true</code></li>
    +     * <li><code>on</code></li>
    +     * <li><code>enabled</code></li>
    +     * </ul>
    +     * <p>
    +     * boolean values for <code>false</code> are any of these case-insensitive
    +     * strings:
    +     * <ul>
    +     * <li><code>0</code></li>
    +     * <li><code>n</code></li>
    +     * <li><code>no</code></li>
    +     * <li><code>false</code></li>
    +     * <li><code>off</code></li>
    +     * <li><code>disabled</code></li>
    +     * </ul>
    +     * <p>
    +     * All other values evaluate to <code>null</code>
    +     *
    +     * @param index The record's index
    +     * @param field The field
    +     * @return The converted value of a field contained in this record
    +     * @throws IllegalArgumentException If the argument field is not contained
    +     *             in {@link #getFields()}
    +     */
    +    Boolean getValueAsBoolean(int index, Field<?> field) throws IllegalArgumentException;
    +
    +    /**
    +     * Convenience method to fetch a value at a given position in the result.
    +     * <p>
    +     * boolean values for <code>true</code> are any of these case-insensitive
    +     * strings:
    +     * <ul>
    +     * <li><code>1</code></li>
    +     * <li><code>y</code></li>
    +     * <li><code>yes</code></li>
    +     * <li><code>true</code></li>
    +     * <li><code>on</code></li>
    +     * <li><code>enabled</code></li>
    +     * </ul>
    +     * <p>
    +     * boolean values for <code>false</code> are any of these case-insensitive
    +     * strings:
    +     * <ul>
    +     * <li><code>0</code></li>
    +     * <li><code>n</code></li>
    +     * <li><code>no</code></li>
    +     * <li><code>false</code></li>
    +     * <li><code>off</code></li>
    +     * <li><code>disabled</code></li>
    +     * </ul>
    +     * <p>
    +     * All other values evaluate to <code>null</code>
    +     *
    +     * @param index The record's index
    +     * @param field The field
    +     * @param defaultValue The default value instead of <code>null</code>
    +     * @return The converted value of a field contained in this record, or
    +     *         defaultValue, if <code>null</code>
    +     * @throws IllegalArgumentException If the argument field is not contained
    +     *             in {@link #getFields()}
    +     */
    +    Boolean getValueAsBoolean(int index, Field<?> field, Boolean defaultValue) throws IllegalArgumentException;
    +
    +    /**
    +     * Convenience method to fetch a value at a given position in the result.
    +     * <p>
    +     * boolean values for <code>true</code> are any of these case-insensitive
    +     * strings:
    +     * <ul>
    +     * <li><code>1</code></li>
    +     * <li><code>y</code></li>
    +     * <li><code>yes</code></li>
    +     * <li><code>true</code></li>
    +     * <li><code>on</code></li>
    +     * <li><code>enabled</code></li>
    +     * </ul>
    +     * <p>
    +     * boolean values for <code>false</code> are any of these case-insensitive
    +     * strings:
    +     * <ul>
    +     * <li><code>0</code></li>
    +     * <li><code>n</code></li>
    +     * <li><code>no</code></li>
    +     * <li><code>false</code></li>
    +     * <li><code>off</code></li>
    +     * <li><code>disabled</code></li>
    +     * </ul>
    +     * <p>
    +     * All other values evaluate to <code>null</code>
    +     *
    +     * @param index The record's index
    +     * @param fieldIndex The field's index
    +     * @return The converted value of a field's index contained in this record
    +     * @throws IllegalArgumentException If the argument index is not contained
    +     *             in the record
    +     */
    +    Boolean getValueAsBoolean(int index, int fieldIndex) throws IllegalArgumentException;
    +
    +    /**
    +     * Convenience method to fetch a value at a given position in the result.
    +     * <p>
    +     * boolean values for <code>true</code> are any of these case-insensitive
    +     * strings:
    +     * <ul>
    +     * <li><code>1</code></li>
    +     * <li><code>y</code></li>
    +     * <li><code>yes</code></li>
    +     * <li><code>true</code></li>
    +     * <li><code>on</code></li>
    +     * <li><code>enabled</code></li>
    +     * </ul>
    +     * <p>
    +     * boolean values for <code>false</code> are any of these case-insensitive
    +     * strings:
    +     * <ul>
    +     * <li><code>0</code></li>
    +     * <li><code>n</code></li>
    +     * <li><code>no</code></li>
    +     * <li><code>false</code></li>
    +     * <li><code>off</code></li>
    +     * <li><code>disabled</code></li>
    +     * </ul>
    +     * <p>
    +     * All other values evaluate to <code>null</code>
    +     *
    +     * @param index The record's index
    +     * @param fieldIndex The field's index
    +     * @param defaultValue The default value instead of <code>null</code>
    +     * @return The converted value of a field's index contained in this record,
    +     *         or defaultValue, if <code>null</code>
    +     * @throws IllegalArgumentException If the argument index is not contained
    +     *             in the record
    +     */
    +    Boolean getValueAsBoolean(int index, int fieldIndex, Boolean defaultValue) throws IllegalArgumentException;
    +
    +    /**
    +     * Convenience method to fetch a value at a given position in the result.
    +     * <p>
    +     * boolean values for <code>true</code> are any of these case-insensitive
    +     * strings:
    +     * <ul>
    +     * <li><code>1</code></li>
    +     * <li><code>y</code></li>
    +     * <li><code>yes</code></li>
    +     * <li><code>true</code></li>
    +     * <li><code>on</code></li>
    +     * <li><code>enabled</code></li>
    +     * </ul>
    +     * <p>
    +     * boolean values for <code>false</code> are any of these case-insensitive
    +     * strings:
    +     * <ul>
    +     * <li><code>0</code></li>
    +     * <li><code>n</code></li>
    +     * <li><code>no</code></li>
    +     * <li><code>false</code></li>
    +     * <li><code>off</code></li>
    +     * <li><code>disabled</code></li>
    +     * </ul>
    +     * <p>
    +     * All other values evaluate to <code>null</code>
    +     *
    +     * @param index The record's index
    +     * @param fieldName The field's name
    +     * @return The converted value of a field's name contained in this record
    +     * @throws IllegalArgumentException If the argument name is not contained in
    +     *             the record
    +     */
    +    Boolean getValueAsBoolean(int index, String fieldName) throws IllegalArgumentException;
    +
    +    /**
    +     * Convenience method to fetch a value at a given position in the result.
    +     * <p>
    +     * boolean values for <code>true</code> are any of these case-insensitive
    +     * strings:
    +     * <ul>
    +     * <li><code>1</code></li>
    +     * <li><code>y</code></li>
    +     * <li><code>yes</code></li>
    +     * <li><code>true</code></li>
    +     * <li><code>on</code></li>
    +     * <li><code>enabled</code></li>
    +     * </ul>
    +     * <p>
    +     * boolean values for <code>false</code> are any of these case-insensitive
    +     * strings:
    +     * <ul>
    +     * <li><code>0</code></li>
    +     * <li><code>n</code></li>
    +     * <li><code>no</code></li>
    +     * <li><code>false</code></li>
    +     * <li><code>off</code></li>
    +     * <li><code>disabled</code></li>
    +     * </ul>
    +     * <p>
    +     * All other values evaluate to <code>null</code>
    +     *
    +     * @param index The record's index
    +     * @param fieldName The field's name
    +     * @param defaultValue The default value instead of <code>null</code>
    +     * @return The converted value of a field's name contained in this record,
    +     *         or defaultValue, if <code>null</code>
    +     * @throws IllegalArgumentException If the argument name is not contained in
    +     *             the record
    +     */
    +    Boolean getValueAsBoolean(int index, String fieldName, Boolean defaultValue) throws IllegalArgumentException;
    +
    +    /**
    +     * Convenience method to fetch a value at a given position in the result.
    +     *
    +     * @param index The record's index
    +     * @param field The field
    +     * @return The converted value of a field contained in this record
    +     * @throws IllegalArgumentException If the argument field is not contained
    +     *             in {@link #getFields()}
    +     */
    +    Timestamp getValueAsTimestamp(int index, Field<?> field) throws IllegalArgumentException;
    +
    +    /**
    +     * Convenience method to fetch a value at a given position in the result.
    +     *
    +     * @param index The record's index
    +     * @param field The field
    +     * @param defaultValue The default value instead of <code>null</code>
    +     * @return The converted value of a field contained in this record, or
    +     *         defaultValue, if <code>null</code>
    +     * @throws IllegalArgumentException If the argument field is not contained
    +     *             in {@link #getFields()}
    +     */
    +    Timestamp getValueAsTimestamp(int index, Field<?> field, Timestamp defaultValue) throws IllegalArgumentException;
    +
    +    /**
    +     * Convenience method to fetch a value at a given position in the result.
    +     *
    +     * @param index The record's index
    +     * @param fieldIndex The field's index
    +     * @return The converted value of a field's index contained in this record
    +     * @throws IllegalArgumentException If the argument index is not contained
    +     *             in the record
    +     */
    +    Timestamp getValueAsTimestamp(int index, int fieldIndex) throws IllegalArgumentException;
    +
    +    /**
    +     * Convenience method to fetch a value at a given position in the result.
    +     *
    +     * @param index The record's index
    +     * @param fieldIndex The field's index
    +     * @param defaultValue The default value instead of <code>null</code>
    +     * @return The converted value of a field's index contained in this record,
    +     *         or defaultValue, if <code>null</code>
    +     * @throws IllegalArgumentException If the argument index is not contained
    +     *             in the record
    +     */
    +    Timestamp getValueAsTimestamp(int index, int fieldIndex, Timestamp defaultValue) throws IllegalArgumentException;
    +
    +    /**
    +     * Convenience method to fetch a value at a given position in the result.
    +     *
    +     * @param index The record's index
    +     * @param fieldName The field's name
    +     * @return The converted value of a field's name contained in this record
    +     * @throws IllegalArgumentException If the argument name is not contained in
    +     *             the record
    +     */
    +    Timestamp getValueAsTimestamp(int index, String fieldName) throws IllegalArgumentException;
    +
    +    /**
    +     * Convenience method to fetch a value at a given position in the result.
    +     *
    +     * @param index The record's index
    +     * @param fieldName The field's name
    +     * @param defaultValue The default value instead of <code>null</code>
    +     * @return The converted value of a field's name contained in this record,
    +     *         or defaultValue, if <code>null</code>
    +     * @throws IllegalArgumentException If the argument name is not contained in
    +     *             the record
    +     */
    +    Timestamp getValueAsTimestamp(int index, String fieldName, Timestamp defaultValue) throws IllegalArgumentException;
    +
    +    /**
    +     * Convenience method to fetch a value at a given position in the result.
    +     *
    +     * @param index The record's index
    +     * @param field The field
    +     * @return The converted value of a field contained in this record
    +     * @throws IllegalArgumentException If the argument field is not contained
    +     *             in {@link #getFields()}
    +     */
    +    Date getValueAsDate(int index, Field<?> field) throws IllegalArgumentException;
    +
    +    /**
    +     * Convenience method to fetch a value at a given position in the result.
    +     *
    +     * @param index The record's index
    +     * @param field The field
    +     * @param defaultValue The default value instead of <code>null</code>
    +     * @return The converted value of a field contained in this record, or
    +     *         defaultValue, if <code>null</code>
    +     * @throws IllegalArgumentException If the argument field is not contained
    +     *             in {@link #getFields()}
    +     */
    +    Date getValueAsDate(int index, Field<?> field, Date defaultValue) throws IllegalArgumentException;
    +
    +    /**
    +     * Convenience method to fetch a value at a given position in the result.
    +     *
    +     * @param index The record's index
    +     * @param fieldIndex The field's index
    +     * @return The converted value of a field's index contained in this record
    +     * @throws IllegalArgumentException If the argument index is not contained
    +     *             in the record
    +     */
    +    Date getValueAsDate(int index, int fieldIndex) throws IllegalArgumentException;
    +
    +    /**
    +     * Convenience method to fetch a value at a given position in the result.
    +     *
    +     * @param index The record's index
    +     * @param fieldIndex The field's index
    +     * @param defaultValue The default value instead of <code>null</code>
    +     * @return The converted value of a field's index contained in this record,
    +     *         or defaultValue, if <code>null</code>
    +     * @throws IllegalArgumentException If the argument index is not contained
    +     *             in the record
    +     */
    +    Date getValueAsDate(int index, int fieldIndex, Date defaultValue) throws IllegalArgumentException;
    +
    +    /**
    +     * Convenience method to fetch a value at a given position in the result.
    +     *
    +     * @param index The record's index
    +     * @param fieldName The field's name
    +     * @return The converted value of a field's name contained in this record
    +     * @throws IllegalArgumentException If the argument name is not contained in
    +     *             the record
    +     */
    +    Date getValueAsDate(int index, String fieldName) throws IllegalArgumentException;
    +
    +    /**
    +     * Convenience method to fetch a value at a given position in the result.
    +     *
    +     * @param index The record's index
    +     * @param fieldName The field's name
    +     * @param defaultValue The default value instead of <code>null</code>
    +     * @return The converted value of a field's name contained in this record,
    +     *         or defaultValue, if <code>null</code>
    +     * @throws IllegalArgumentException If the argument name is not contained in
    +     *             the record
    +     */
    +    Date getValueAsDate(int index, String fieldName, Date defaultValue) throws IllegalArgumentException;
    +
    +    /**
    +     * Convenience method to fetch a value at a given position in the result.
    +     *
    +     * @param index The record's index
    +     * @param field The field
    +     * @return The converted value of a field contained in this record
    +     * @throws IllegalArgumentException If the argument field is not contained
    +     *             in {@link #getFields()}
    +     */
    +    Time getValueAsTime(int index, Field<?> field) throws IllegalArgumentException;
    +
    +    /**
    +     * Convenience method to fetch a value at a given position in the result.
    +     *
    +     * @param index The record's index
    +     * @param field The field
    +     * @param defaultValue The default value instead of <code>null</code>
    +     * @return The converted value of a field contained in this record, or
    +     *         defaultValue, if <code>null</code>
    +     * @throws IllegalArgumentException If the argument field is not contained
    +     *             in {@link #getFields()}
    +     */
    +    Time getValueAsTime(int index, Field<?> field, Time defaultValue) throws IllegalArgumentException;
    +
    +    /**
    +     * Convenience method to fetch a value at a given position in the result.
    +     *
    +     * @param index The record's index
    +     * @param fieldIndex The field's index
    +     * @return The converted value of a field's index contained in this record
    +     * @throws IllegalArgumentException If the argument index is not contained
    +     *             in the record
    +     */
    +    Time getValueAsTime(int index, int fieldIndex) throws IllegalArgumentException;
    +
    +    /**
    +     * Convenience method to fetch a value at a given position in the result.
    +     *
    +     * @param index The record's index
    +     * @param fieldIndex The field's index
    +     * @param defaultValue The default value instead of <code>null</code>
    +     * @return The converted value of a field's index contained in this record,
    +     *         or defaultValue, if <code>null</code>
    +     * @throws IllegalArgumentException If the argument index is not contained
    +     *             in the record
    +     */
    +    Time getValueAsTime(int index, int fieldIndex, Time defaultValue) throws IllegalArgumentException;
    +
    +    /**
    +     * Convenience method to fetch a value at a given position in the result.
    +     *
    +     * @param index The record's index
    +     * @param fieldName The field's name
    +     * @return The converted value of a field's name contained in this record
    +     * @throws IllegalArgumentException If the argument name is not contained in
    +     *             the record
    +     */
    +    Time getValueAsTime(int index, String fieldName) throws IllegalArgumentException;
    +
    +    /**
    +     * Convenience method to fetch a value at a given position in the result.
    +     *
    +     * @param index The record's index
    +     * @param fieldName The field's name
    +     * @param defaultValue The default value instead of <code>null</code>
    +     * @return The converted value of a field's name contained in this record,
    +     *         or defaultValue, if <code>null</code>
    +     * @throws IllegalArgumentException If the argument name is not contained in
    +     *             the record
    +     */
    +    Time getValueAsTime(int index, String fieldName, Time defaultValue) throws IllegalArgumentException;
    +
    +    /**
    +     * Convenience method to fetch all values for a given field. This is
    +     * especially useful, when selecting only a single field.
    +     *
    +     * @param <T> The values' field's generic type parameter
    +     * @param field The values' field
    +     * @return The values
    +     */
    +    <T> List<T> getValues(Field<T> field);
    +
    +    /**
    +     * Convenience method to fetch all values for a given field. This is
    +     * especially useful, when selecting only a single field.
    +     *
    +     * @param field The values' field
    +     * @param type The type used for type conversion
    +     * @return The values
    +     * @see Record#getValue(Field, Class)
    +     * @see Convert#convert(Object, Class)
    +     */
    +    <T> List<T> getValues(Field<?> field, Class<? extends T> type);
    +
    +    /**
    +     * Convenience method to fetch all values for a given field. This is
    +     * especially useful, when selecting only a single field.
    +     *
    +     * @param field The values' field
    +     * @param converter The data type converter used for type conversion
    +     * @return The values
    +     * @see Record#getValue(Field, Converter)
    +     * @see Convert#convert(Object, Converter)
    +     */
    +    <T, U> List<U> getValues(Field<T> field, Converter<? super T, U> converter);
    +
    +    /**
    +     * Convenience method to fetch all values for a given field. This is
    +     * especially useful, when selecting only a single field.
    +     *
    +     * @param fieldIndex The values' field index
    +     * @return The values
    +     */
    +    List<?> getValues(int fieldIndex);
    +
    +    /**
    +     * Convenience method to fetch all values for a given field. This is
    +     * especially useful, when selecting only a single field.
    +     *
    +     * @param fieldIndex The values' field index
    +     * @param type The type used for type conversion
    +     * @return The values
    +     * @see Record#getValue(int, Class)
    +     * @see Convert#convert(Object, Class)
    +     */
    +    <T> List<T> getValues(int fieldIndex, Class<? extends T> type);
    +
    +    /**
    +     * Convenience method to fetch all values for a given field. This is
    +     * especially useful, when selecting only a single field.
    +     *
    +     * @param fieldIndex The values' field index
    +     * @param converter The data type converter used for type conversion
    +     * @return The values
    +     * @see Record#getValue(int, Converter)
    +     * @see Convert#convert(Object, Converter)
    +     */
    +    <U> List<U> getValues(int fieldIndex, Converter<?, U> converter);
    +
    +    /**
    +     * Convenience method to fetch all values for a given field. This is
    +     * especially useful, when selecting only a single field.
    +     *
    +     * @param fieldName The values' field name
    +     * @return The values
    +     */
    +    List<?> getValues(String fieldName);
    +
    +    /**
    +     * Convenience method to fetch all values for a given field. This is
    +     * especially useful, when selecting only a single field.
    +     *
    +     * @param fieldName The values' field name
    +     * @param type The type used for type conversion
    +     * @return The values
    +     * @see Record#getValue(String, Class)
    +     * @see Convert#convert(Object, Class)
    +     */
    +    <T> List<T> getValues(String fieldName, Class<? extends T> type);
    +
    +    /**
    +     * Convenience method to fetch all values for a given field. This is
    +     * especially useful, when selecting only a single field.
    +     *
    +     * @param fieldName The values' field name
    +     * @param converter The data type converter used for type conversion
    +     * @return The values
    +     * @see Record#getValue(String, Converter)
    +     * @see Convert#convert(Object, Converter)
    +     */
    +    <U> List<U> getValues(String fieldName, Converter<?, U> converter);
    +
    +    /**
    +     * Convenience method to fetch all values for a given field. This is
    +     * especially useful, when selecting only a single field.
    +     *
    +     * @param field The values' field
    +     * @return The converted values
    +     */
    +    List<BigDecimal> getValuesAsBigDecimal(Field<?> field);
    +
    +    /**
    +     * Convenience method to fetch all values for a given field. This is
    +     * especially useful, when selecting only a single field.
    +     *
    +     * @param fieldIndex The values' field index
    +     * @return The converted values
    +     */
    +    List<BigDecimal> getValuesAsBigDecimal(int fieldIndex);
    +
    +    /**
    +     * Convenience method to fetch all values for a given field. This is
    +     * especially useful, when selecting only a single field.
    +     *
    +     * @param fieldName The values' field name
    +     * @return The converted values
    +     */
    +    List<BigDecimal> getValuesAsBigDecimal(String fieldName);
    +
    +    /**
    +     * Convenience method to fetch all values for a given field. This is
    +     * especially useful, when selecting only a single field.
    +     *
    +     * @param field The values' field
    +     * @return The converted values
    +     */
    +    List<BigInteger> getValuesAsBigInteger(Field<?> field);
    +
    +    /**
    +     * Convenience method to fetch all values for a given field. This is
    +     * especially useful, when selecting only a single field.
    +     *
    +     * @param fieldIndex The values' field index
    +     * @return The converted values
    +     */
    +    List<BigInteger> getValuesAsBigInteger(int fieldIndex);
    +
    +    /**
    +     * Convenience method to fetch all values for a given field. This is
    +     * especially useful, when selecting only a single field.
    +     *
    +     * @param fieldName The values' field name
    +     * @return The converted values
    +     */
    +    List<BigInteger> getValuesAsBigInteger(String fieldName);
    +
    +    /**
    +     * Convenience method to fetch all values for a given field. This is
    +     * especially useful, when selecting only a single field.
    +     *
    +     * @param field The values' field
    +     * @return The converted values
    +     */
    +    List<Byte> getValuesAsByte(Field<?> field);
    +
    +    /**
    +     * Convenience method to fetch all values for a given field. This is
    +     * especially useful, when selecting only a single field.
    +     *
    +     * @param fieldIndex The values' field index
    +     * @return The converted values
    +     */
    +    List<Byte> getValuesAsByte(int fieldIndex);
    +
    +    /**
    +     * Convenience method to fetch all values for a given field. This is
    +     * especially useful, when selecting only a single field.
    +     *
    +     * @param fieldName The values' field name
    +     * @return The converted values
    +     */
    +    List<Byte> getValuesAsByte(String fieldName);
    +
    +    /**
    +     * Convenience method to fetch all values for a given field. This is
    +     * especially useful, when selecting only a single field.
    +     *
    +     * @param field The values' field
    +     * @return The converted values
    +     */
    +    List<Date> getValuesAsDate(Field<?> field);
    +
    +    /**
    +     * Convenience method to fetch all values for a given field. This is
    +     * especially useful, when selecting only a single field.
    +     *
    +     * @param fieldIndex The values' field index
    +     * @return The converted values
    +     */
    +    List<Date> getValuesAsDate(int fieldIndex);
    +
    +    /**
    +     * Convenience method to fetch all values for a given field. This is
    +     * especially useful, when selecting only a single field.
    +     *
    +     * @param fieldName The values' field name
    +     * @return The converted values
    +     */
    +    List<Date> getValuesAsDate(String fieldName);
    +
    +    /**
    +     * Convenience method to fetch all values for a given field. This is
    +     * especially useful, when selecting only a single field.
    +     *
    +     * @param field The values' field
    +     * @return The converted values
    +     */
    +    List<Double> getValuesAsDouble(Field<?> field);
    +
    +    /**
    +     * Convenience method to fetch all values for a given field. This is
    +     * especially useful, when selecting only a single field.
    +     *
    +     * @param fieldIndex The values' field index
    +     * @return The converted values
    +     */
    +    List<Double> getValuesAsDouble(int fieldIndex);
    +
    +    /**
    +     * Convenience method to fetch all values for a given field. This is
    +     * especially useful, when selecting only a single field.
    +     *
    +     * @param fieldName The values' field name
    +     * @return The converted values
    +     */
    +    List<Double> getValuesAsDouble(String fieldName);
    +
    +    /**
    +     * Convenience method to fetch all values for a given field. This is
    +     * especially useful, when selecting only a single field.
    +     *
    +     * @param field The values' field
    +     * @return The converted values
    +     */
    +    List<Float> getValuesAsFloat(Field<?> field);
    +
    +    /**
    +     * Convenience method to fetch all values for a given field. This is
    +     * especially useful, when selecting only a single field.
    +     *
    +     * @param fieldIndex The values' field index
    +     * @return The converted values
    +     */
    +    List<Float> getValuesAsFloat(int fieldIndex);
    +
    +    /**
    +     * Convenience method to fetch all values for a given field. This is
    +     * especially useful, when selecting only a single field.
    +     *
    +     * @param fieldName The values' field name
    +     * @return The converted values
    +     */
    +    List<Float> getValuesAsFloat(String fieldName);
    +
    +    /**
    +     * Convenience method to fetch all values for a given field. This is
    +     * especially useful, when selecting only a single field.
    +     *
    +     * @param field The values' field
    +     * @return The converted values
    +     */
    +    List<Integer> getValuesAsInteger(Field<?> field);
    +
    +    /**
    +     * Convenience method to fetch all values for a given field. This is
    +     * especially useful, when selecting only a single field.
    +     *
    +     * @param fieldIndex The values' field index
    +     * @return The converted values
    +     */
    +    List<Integer> getValuesAsInteger(int fieldIndex);
    +
    +    /**
    +     * Convenience method to fetch all values for a given field. This is
    +     * especially useful, when selecting only a single field.
    +     *
    +     * @param fieldName The values' field name
    +     * @return The converted values
    +     */
    +    List<Integer> getValuesAsInteger(String fieldName);
    +
    +    /**
    +     * Convenience method to fetch all values for a given field. This is
    +     * especially useful, when selecting only a single field.
    +     *
    +     * @param field The values' field
    +     * @return The converted values
    +     */
    +    List<Long> getValuesAsLong(Field<?> field);
    +
    +    /**
    +     * Convenience method to fetch all values for a given field. This is
    +     * especially useful, when selecting only a single field.
    +     *
    +     * @param fieldIndex The values' field index
    +     * @return The converted values
    +     */
    +    List<Long> getValuesAsLong(int fieldIndex);
    +
    +    /**
    +     * Convenience method to fetch all values for a given field. This is
    +     * especially useful, when selecting only a single field.
    +     *
    +     * @param fieldName The values' field name
    +     * @return The converted values
    +     */
    +    List<Long> getValuesAsLong(String fieldName);
    +
    +    /**
    +     * Convenience method to fetch all values for a given field. This is
    +     * especially useful, when selecting only a single field.
    +     *
    +     * @param field The values' field
    +     * @return The converted values
    +     */
    +    List<Short> getValuesAsShort(Field<?> field);
    +
    +    /**
    +     * Convenience method to fetch all values for a given field. This is
    +     * especially useful, when selecting only a single field.
    +     *
    +     * @param fieldIndex The values' field index
    +     * @return The converted values
    +     */
    +    List<Short> getValuesAsShort(int fieldIndex);
    +
    +    /**
    +     * Convenience method to fetch all values for a given field. This is
    +     * especially useful, when selecting only a single field.
    +     *
    +     * @param fieldName The values' field name
    +     * @return The converted values
    +     */
    +    List<Short> getValuesAsShort(String fieldName);
    +
    +    /**
    +     * Convenience method to fetch all values for a given field. This is
    +     * especially useful, when selecting only a single field.
    +     *
    +     * @param field The values' field
    +     * @return The converted values
    +     */
    +    List<String> getValuesAsString(Field<?> field);
    +
    +    /**
    +     * Convenience method to fetch all values for a given field. This is
    +     * especially useful, when selecting only a single field.
    +     *
    +     * @param fieldIndex The values' field index
    +     * @return The converted values
    +     */
    +    List<String> getValuesAsString(int fieldIndex);
    +
    +    /**
    +     * Convenience method to fetch all values for a given field. This is
    +     * especially useful, when selecting only a single field.
    +     *
    +     * @param fieldName The values' field name
    +     * @return The converted values
    +     */
    +    List<String> getValuesAsString(String fieldName);
    +
    +    /**
    +     * Convenience method to fetch all values for a given field. This is
    +     * especially useful, when selecting only a single field.
    +     *
    +     * @param field The values' field
    +     * @return The converted values
    +     */
    +    List<Time> getValuesAsTime(Field<?> field);
    +
    +    /**
    +     * Convenience method to fetch all values for a given field. This is
    +     * especially useful, when selecting only a single field.
    +     *
    +     * @param fieldIndex The values' field index
    +     * @return The converted values
    +     */
    +    List<Time> getValuesAsTime(int fieldIndex);
    +
    +    /**
    +     * Convenience method to fetch all values for a given field. This is
    +     * especially useful, when selecting only a single field.
    +     *
    +     * @param fieldName The values' field name
    +     * @return The converted values
    +     */
    +    List<Time> getValuesAsTime(String fieldName);
    +
    +    /**
    +     * Convenience method to fetch all values for a given field. This is
    +     * especially useful, when selecting only a single field.
    +     *
    +     * @param field The values' field
    +     * @return The converted values
    +     */
    +    List<Timestamp> getValuesAsTimestamp(Field<?> field);
    +
    +    /**
    +     * Convenience method to fetch all values for a given field. This is
    +     * especially useful, when selecting only a single field.
    +     *
    +     * @param fieldIndex The values' field index
    +     * @return The converted values
    +     */
    +    List<Timestamp> getValuesAsTimestamp(int fieldIndex);
    +
    +    /**
    +     * Convenience method to fetch all values for a given field. This is
    +     * especially useful, when selecting only a single field.
    +     *
    +     * @param fieldName The values' field name
    +     * @return The converted values
    +     */
    +    List<Timestamp> getValuesAsTimestamp(String fieldName);
    +
    +    /**
    +     * Whether there are any records contained in this <code>Result</code>
    +     */
    +    @Override
    +    boolean isEmpty();
    +
    +    /**
    +     * Whether there are any records contained in this <code>Result</code>
    +     */
    +    boolean isNotEmpty();
    +
    +    /**
    +     * Get a simple formatted representation of this result.
    +     * <p>
    +     * This is the same as calling {@link #format(int)} with
    +     * <code>maxRows = 50</code>
    +     *
    +     * @return The formatted result
    +     */
    +    String format();
    +
    +    /**
    +     * Get a simple formatted representation of this result.
    +     *
    +     * @param maxRecords The maximum number of records to include in the
    +     *            formatted result
    +     * @return The formatted result
    +     */
    +    String format(int maxRecords);
    +
    +    /**
    +     * Get a simple formatted representation of this result as HTML.
    +     * <p>
    +     * The HTML code is formatted as follows: <code><pre>
    +     * &lt;table&gt;
    +     *   &lt;thead&gt;
    +     *     &lt;tr&gt;
    +     *       &lt;th&gt;field-1&lt;/th&gt;
    +     *       &lt;th&gt;field-2&lt;/th&gt;
    +     *       ...
    +     *       &lt;th&gt;field-n&lt;/th&gt;
    +     *     &lt;/tr&gt;
    +     *   &lt;/thead&gt;
    +     *   &lt;tbody&gt;
    +     *     &lt;tr&gt;
    +     *       &lt;th&gt;value-1-1&lt;/th&gt;
    +     *       &lt;th&gt;value-1-2&lt;/th&gt;
    +     *       ...
    +     *       &lt;th&gt;value-1-n&lt;/th&gt;
    +     *     &lt;/tr&gt;
    +     *     &lt;tr&gt;
    +     *       &lt;th&gt;value-2-1&lt;/th&gt;
    +     *       &lt;th&gt;value-2-2&lt;/th&gt;
    +     *       ...
    +     *       &lt;th&gt;value-2-n&lt;/th&gt;
    +     *     &lt;/tr&gt;
    +     *     ...
    +     *   &lt;/tbody&gt;
    +     * &lt;/table&gt;
    +     * </pre></code>
    +     *
    +     * @return The formatted result
    +     */
    +    String formatHTML();
    +
    +    /**
    +     * Get a simple formatted representation of this result as CSV.
    +     * <p>
    +     * This is the same as calling <code>formatCSV(',')</code>
    +     *
    +     * @return The formatted result
    +     */
    +    String formatCSV();
    +
    +    /**
    +     * Get a simple formatted representation of this result as CSV.
    +     *
    +     * @param delimiter The delimiter to use between records
    +     * @return The formatted result
    +     */
    +    String formatCSV(char delimiter);
    +
    +    /**
    +     * Get a simple formatted representation of this result as a JSON array of
    +     * array. The format is the following: <code><pre>
    +     * {"fields":["field-1","field-2",...,"field-n"],
    +     *  "records":[[value-1-1,value-1-2,...,value-1-n],
    +     *             [value-2-1,value-2-2,...,value-2-n]]}
    +     * </pre></code>
    +     *
    +     * @return The formatted result
    +     */
    +    String formatJSON();
    +
    +    /**
    +     * Get this result formatted as XML
    +     *
    +     * @see #exportXML()
    +     * @see <a
    +     *      href="http://www.jooq.org/xsd/jooq-export-1.6.2.xsd">http://www.jooq.org/xsd/jooq-export-1.6.2.xsd</a>
    +     */
    +    String formatXML();
    +
    +    /**
    +     * Get this result as XML
    +     *
    +     * @deprecated - 2.0.5 - Use {@link #intoXML()} instead
    +     */
    +    @Deprecated
    +    Document exportXML();
    +
    +    /**
    +     * Get this result as XML
    +     *
    +     * @see #formatXML()
    +     * @see <a
    +     *      href="http://www.jooq.org/xsd/jooq-export-1.6.2.xsd">http://www.jooq.org/xsd/jooq-export-1.6.2.xsd</a>
    +     */
    +    Document intoXML();
    +
    +    /**
    +     * Convert this result into an array of arrays
    +     * <p>
    +     * The resulting array has the same number of first-dimension elements as this result has records. It has the same number of second-dimension elements as this result's records have fields.
    +     * The resulting array contains data as such:
    +     * <p>
    +     * <code><pre>
    +     * // For arbitrary values of i, j
    +     * result.getValue(i, j) == result.intoArray()[i][j]
    +     * </pre></code>
    +     * <p>
    +     * This is the same as calling <code>into(Object[].class)</code>
    +     *
    +     * @return This result as an array of arrays
    +     * @throws MappingException wrapping any conversion exception that might
    +     *             have occurred while mapping records
    +     * @see Record#intoArray()
    +     */
    +    Object[][] intoArray() throws MappingException;
    +
    +    /**
    +     * Map resulting records onto a custom type.
    +     * <p>
    +     * This is the same as calling <code>record.into(type)</code> on every
    +     * record contained in this <code>Result</code>. See
    +     * {@link Record#into(Class)} for more details
    +     *
    +     * @param <E> The generic entity type.
    +     * @param type The entity type.
    +     * @throws MappingException wrapping any reflection or data type conversion
    +     *             exception that might have occurred while mapping records
    +     * @see Record#into(Class)
    +     */
    +    <E> List<E> into(Class<? extends E> type) throws MappingException;
    +
    +    /**
    +     * Map resulting records onto a custom record.
    +     * <p>
    +     * This is the same as calling <code>record.into(table)</code> on every
    +     * record contained in this <code>Result</code>. See
    +     * {@link Record#into(Table)} for more details
    +     *
    +     * @param <Z> The generic table record type.
    +     * @param table The table type.
    +     * @throws MappingException wrapping any reflection or data type conversion
    +     *             exception that might have occurred while mapping records
    +     * @see Record#into(Table)
    +     */
    +    <Z extends Record> Result<Z> into(Table<Z> table) throws MappingException;
    +
    +    /**
    +     * Map results into a custom handler callback
    +     *
    +     * @param handler The handler callback
    +     * @return Convenience result, returning the parameter handler itself
    +     */
    +    <H extends RecordHandler<R>> H into(H handler);
    +
    +
    +
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/ResultQuery.java b/jOOQ/src/main/java/org/jooq/ResultQuery.java
    new file mode 100644
    index 00000000000..5266a1c71c3
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/ResultQuery.java
    @@ -0,0 +1,755 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +
    +package org.jooq;
    +
    +import java.sql.PreparedStatement;
    +import java.sql.ResultSet;
    +import java.sql.Statement;
    +import java.util.List;
    +import java.util.Map;
    +import java.util.concurrent.ExecutorService;
    +
    +import org.jooq.exception.DataAccessException;
    +import org.jooq.exception.DataTypeException;
    +import org.jooq.exception.MappingException;
    +
    +/**
    + * A query that can return results. Mostly, this is a {@link Select} query used
    + * for a <code>SELECT</code> statement.
    + * <p>
    + * However, some RDBMS also allow for other constructs, such as Postgres'
    + * <code>FETCH ALL IN {cursor-name}</code>. The easiest way to execute such a
    + * query is by using <code><pre>
    + * Factory create = new PostgresFactory(connection);
    + * Result&lt;Record&gt; result = create.fetch("FETCH ALL IN \"&lt;unnamed cursor 1&gt;\"");
    + * </pre></code> Another example (for SQLite): <code><pre>
    + * Result&lt;Record&gt; result = create.fetch("pragma table_info('my_table')");
    + * </pre></code>
    + *
    + * @author Lukas Eder
    + */
    +public interface ResultQuery<R extends Record> extends Query {
    +
    +    /**
    +     * Return the result generated by a previous call to execute();
    +     *
    +     * @return The result or <code>null</code> if no call to execute() was done
    +     *         previously.
    +     */
    +    Result<R> getResult();
    +
    +    /**
    +     * Execute the query and return the generated result
    +     * <p>
    +     * This is the same as calling {@link #execute()} and then
    +     * {@link #getResult()}
    +     *
    +     * @return The result.
    +     * @throws DataAccessException if something went wrong executing the query
    +     */
    +    Result<R> fetch() throws DataAccessException;
    +
    +    /**
    +     * Execute the query and return the generated result as a JDBC
    +     * {@link ResultSet}
    +     * <p>
    +     * This will return the {@link ResultSet} returned by the JDBC driver,
    +     * leaving it untouched. Use this method when you want to use jOOQ for query
    +     * execution, but not for result fetching.
    +     * <p>
    +     * The returned <code>ResultSet</code> can be used with
    +     * {@link FactoryOperations#fetch(ResultSet)}
    +     *
    +     * @return The result.
    +     * @throws DataAccessException if something went wrong executing the query
    +     */
    +    ResultSet fetchResultSet() throws DataAccessException;
    +
    +    /**
    +     * Execute the query and "lazily" return the generated result
    +     * <p>
    +     * The returned {@link Cursor} holds a reference to the executed
    +     * {@link PreparedStatement} and the associated {@link ResultSet}. Data can
    +     * be fetched (or iterated over) lazily, fetching records from the
    +     * {@link ResultSet} one by one.
    +     * <p>
    +     * Depending on your JDBC driver's default behaviour, this may load the
    +     * whole database result into the driver's memory. In order to indicate to
    +     * the driver that you may not want to fetch all records at once, use
    +     * {@link #fetchLazy(int)}
    +     * <p>
    +     * Client code is responsible for closing the cursor after use.
    +     *
    +     * @return The resulting cursor.
    +     * @throws DataAccessException if something went wrong executing the query
    +     * @see #fetchLazy(int)
    +     */
    +    Cursor<R> fetchLazy() throws DataAccessException;
    +
    +    /**
    +     * Execute the query and "lazily" return the generated result
    +     * <p>
    +     * The returned {@link Cursor} holds a reference to the executed
    +     * {@link PreparedStatement} and the associated {@link ResultSet}. Data can
    +     * be fetched (or iterated over) lazily, fetching records from the
    +     * {@link ResultSet} one by one.
    +     * <p>
    +     * Depending on your JDBC driver's behaviour, this will load only
    +     * <code>fetchSize</code> records from the database into memory at once. For
    +     * more details, see also {@link Statement#setFetchSize(int)}
    +     * <p>
    +     * Client code is responsible for closing the cursor after use.
    +     *
    +     * @return The resulting cursor.
    +     * @throws DataAccessException if something went wrong executing the query
    +     * @see #fetchLazy()
    +     * @see Statement#setFetchSize(int)
    +     */
    +    Cursor<R> fetchLazy(int fetchSize) throws DataAccessException;
    +
    +    /**
    +     * Execute a query, possibly returning several result sets.
    +     * <p>
    +     * Example (Sybase ASE):
    +     * <p>
    +     * <code><pre>
    +     * String sql = "sp_help 'my_table'";</pre></code>
    +     *
    +     * @return The resulting records
    +     * @throws DataAccessException if something went wrong executing the query
    +     */
    +    List<Result<Record>> fetchMany() throws DataAccessException;
    +
    +    /**
    +     * Execute the query and return all values for a field from the generated
    +     * result.
    +     * <p>
    +     * This is the same as calling {@link #fetch()} and then
    +     * {@link Result#getValues(Field)}
    +     *
    +     * @return The resulting values.
    +     * @throws DataAccessException if something went wrong executing the query
    +     */
    +    <T> List<T> fetch(Field<T> field) throws DataAccessException;
    +
    +    /**
    +     * Execute the query and return all values for a field from the generated
    +     * result.
    +     * <p>
    +     * This is the same as calling {@link #fetch()} and then
    +     * {@link Result#getValues(Field, Class)}
    +     *
    +     * @return The resulting values.
    +     * @throws DataAccessException if something went wrong executing the query
    +     * @see Record#getValue(Field, Class)
    +     */
    +    <T> List<T> fetch(Field<?> field, Class<? extends T> type) throws DataAccessException;
    +
    +    /**
    +     * Execute the query and return all values for a field from the generated
    +     * result.
    +     * <p>
    +     * This is the same as calling {@link #fetch()} and then
    +     * {@link Result#getValues(Field, Converter)}
    +     *
    +     * @return The resulting values.
    +     * @throws DataAccessException if something went wrong executing the query
    +     * @see Record#getValue(Field, Converter)
    +     */
    +    <T, U> List<U> fetch(Field<T> field, Converter<? super T, U> converter) throws DataAccessException;
    +
    +    /**
    +     * Execute the query and return all values for a field index from the
    +     * generated result.
    +     * <p>
    +     * This is the same as calling {@link #fetch()} and then
    +     * {@link Result#getValues(int)}
    +     *
    +     * @return The resulting values.
    +     * @throws DataAccessException if something went wrong executing the query
    +     */
    +    List<?> fetch(int fieldIndex) throws DataAccessException;
    +
    +    /**
    +     * Execute the query and return all values for a field index from the
    +     * generated result.
    +     * <p>
    +     * This is the same as calling {@link #fetch()} and then
    +     * {@link Result#getValues(int, Class)}
    +     *
    +     * @return The resulting values.
    +     * @throws DataAccessException if something went wrong executing the query
    +     * @see Record#getValue(int, Class)
    +     */
    +    <T> List<T> fetch(int fieldIndex, Class<? extends T> type) throws DataAccessException;
    +
    +    /**
    +     * Execute the query and return all values for a field index from the
    +     * generated result.
    +     * <p>
    +     * This is the same as calling {@link #fetch()} and then
    +     * {@link Result#getValues(int, Converter)}
    +     *
    +     * @return The resulting values.
    +     * @throws DataAccessException if something went wrong executing the query
    +     * @see Record#getValue(int, Converter)
    +     */
    +    <U> List<U> fetch(int fieldIndex, Converter<?, U> converter) throws DataAccessException;
    +
    +    /**
    +     * Execute the query and return all values for a field name from the
    +     * generated result.
    +     * <p>
    +     * This is the same as calling {@link #fetch()} and then
    +     * {@link Result#getValues(String)}
    +     *
    +     * @return The resulting values.
    +     * @throws DataAccessException if something went wrong executing the query
    +     */
    +    List<?> fetch(String fieldName) throws DataAccessException;
    +
    +    /**
    +     * Execute the query and return all values for a field name from the
    +     * generated result.
    +     * <p>
    +     * This is the same as calling {@link #fetch()} and then
    +     * {@link Result#getValues(String, Class)}
    +     *
    +     * @return The resulting values.
    +     * @throws DataAccessException if something went wrong executing the query
    +     * @see Record#getValue(String, Class)
    +     */
    +    <T> List<T> fetch(String fieldName, Class<? extends T> type) throws DataAccessException;
    +
    +    /**
    +     * Execute the query and return all values for a field name from the
    +     * generated result.
    +     * <p>
    +     * This is the same as calling {@link #fetch()} and then
    +     * {@link Result#getValues(String, Converter)}
    +     *
    +     * @return The resulting values.
    +     * @throws DataAccessException if something went wrong executing the query
    +     * @see Record#getValue(String, Converter)
    +     */
    +    <U> List<U> fetch(String fieldName, Converter<?, U> converter) throws DataAccessException;
    +
    +    /**
    +     * Execute the query and return return at most one resulting value for a
    +     * field from the generated result.
    +     * <p>
    +     * This is the same as calling {@link #fetchOne()} and then
    +     * {@link Record#getValue(Field)}
    +     *
    +     * @return The resulting value or <code>null</code> if the query returned no
    +     *         records.
    +     * @throws DataAccessException This exception is thrown
    +     *             <ul>
    +     *             <li>if something went wrong executing the query</li> <li>if
    +     *             the query returned more than one value</li>
    +     *             </ul>
    +     */
    +    <T> T fetchOne(Field<T> field) throws DataAccessException;
    +
    +    /**
    +     * Execute the query and return return at most one resulting value for a
    +     * field from the generated result.
    +     * <p>
    +     * This is the same as calling {@link #fetchOne()} and then
    +     * {@link Record#getValue(Field, Class)}
    +     *
    +     * @return The resulting value or <code>null</code> if the query returned no
    +     *         records.
    +     * @throws DataAccessException This exception is thrown
    +     *             <ul>
    +     *             <li>if something went wrong executing the query</li> <li>if
    +     *             the query returned more than one value</li>
    +     *             </ul>
    +     */
    +    <T> T fetchOne(Field<?> field, Class<? extends T> type) throws DataAccessException;
    +
    +    /**
    +     * Execute the query and return return at most one resulting value for a
    +     * field from the generated result.
    +     * <p>
    +     * This is the same as calling {@link #fetchOne()} and then
    +     * {@link Record#getValue(Field, Converter)}
    +     *
    +     * @return The resulting value or <code>null</code> if the query returned no
    +     *         records.
    +     * @throws DataAccessException This exception is thrown
    +     *             <ul>
    +     *             <li>if something went wrong executing the query</li> <li>if
    +     *             the query returned more than one value</li>
    +     *             </ul>
    +     */
    +    <T, U> U fetchOne(Field<T> field, Converter<? super T, U> converter) throws DataAccessException;
    +
    +    /**
    +     * Execute the query and return return at most one resulting value for a
    +     * field index from the generated result.
    +     * <p>
    +     * This is the same as calling {@link #fetchOne()} and then
    +     * {@link Record#getValue(int)}
    +     *
    +     * @return The resulting value or <code>null</code> if the query returned no
    +     *         records.
    +     * @throws DataAccessException This exception is thrown
    +     *             <ul>
    +     *             <li>if something went wrong executing the query</li> <li>if
    +     *             the query returned more than one value</li>
    +     *             </ul>
    +     */
    +    Object fetchOne(int fieldIndex) throws DataAccessException;
    +
    +    /**
    +     * Execute the query and return return at most one resulting value for a
    +     * field index from the generated result.
    +     * <p>
    +     * This is the same as calling {@link #fetchOne()} and then
    +     * {@link Record#getValue(int, Class)}
    +     *
    +     * @return The resulting value or <code>null</code> if the query returned no
    +     *         records.
    +     * @throws DataAccessException This exception is thrown
    +     *             <ul>
    +     *             <li>if something went wrong executing the query</li> <li>if
    +     *             the query returned more than one value</li>
    +     *             </ul>
    +     */
    +    <T> T fetchOne(int fieldIndex, Class<? extends T> type) throws DataAccessException;
    +
    +    /**
    +     * Execute the query and return return at most one resulting value for a
    +     * field index from the generated result.
    +     * <p>
    +     * This is the same as calling {@link #fetchOne()} and then
    +     * {@link Record#getValue(int, Converter)}
    +     *
    +     * @return The resulting value or <code>null</code> if the query returned no
    +     *         records.
    +     * @throws DataAccessException This exception is thrown
    +     *             <ul>
    +     *             <li>if something went wrong executing the query</li> <li>if
    +     *             the query returned more than one value</li>
    +     *             </ul>
    +     */
    +    <U> U fetchOne(int fieldIndex, Converter<?, U> converter) throws DataAccessException;
    +
    +    /**
    +     * Execute the query and return return at most one resulting value for a
    +     * field name from the generated result.
    +     * <p>
    +     * This is the same as calling {@link #fetchOne()} and then
    +     * {@link Record#getValue(int)}
    +     *
    +     * @return The resulting value or <code>null</code> if the query returned no
    +     *         records.
    +     * @throws DataAccessException This exception is thrown
    +     *             <ul>
    +     *             <li>if something went wrong executing the query</li> <li>if
    +     *             the query returned more than one value</li>
    +     *             </ul>
    +     */
    +    Object fetchOne(String fieldName) throws DataAccessException;
    +
    +    /**
    +     * Execute the query and return return at most one resulting value for a
    +     * field name from the generated result.
    +     * <p>
    +     * This is the same as calling {@link #fetchOne()} and then
    +     * {@link Record#getValue(String, Class)}
    +     *
    +     * @return The resulting value or <code>null</code> if the query returned no
    +     *         records.
    +     * @throws DataAccessException This exception is thrown
    +     *             <ul>
    +     *             <li>if something went wrong executing the query</li> <li>if
    +     *             the query returned more than one value</li>
    +     *             </ul>
    +     */
    +    <T> T fetchOne(String fieldName, Class<? extends T> type) throws DataAccessException;
    +
    +    /**
    +     * Execute the query and return return at most one resulting value for a
    +     * field name from the generated result.
    +     * <p>
    +     * This is the same as calling {@link #fetchOne()} and then
    +     * {@link Record#getValue(String, Converter)}
    +     *
    +     * @return The resulting value or <code>null</code> if the query returned no
    +     *         records.
    +     * @throws DataAccessException This exception is thrown
    +     *             <ul>
    +     *             <li>if something went wrong executing the query</li> <li>if
    +     *             the query returned more than one value</li>
    +     *             </ul>
    +     */
    +    <U> U fetchOne(String fieldName, Converter<?, U> converter) throws DataAccessException;
    +
    +    /**
    +     * Execute the query and return at most one resulting record.
    +     *
    +     * @return The resulting record or <code>null</code> if the query returns no
    +     *         records.
    +     * @throws DataAccessException This exception is thrown
    +     *             <ul>
    +     *             <li>if something went wrong executing the query</li>
    +     *             <li>if the query returned more than one record</li>
    +     *             </ul>
    +     */
    +    R fetchOne() throws DataAccessException;
    +
    +    /**
    +     * Execute the query and return at most one resulting record.
    +     *
    +     * @return The first resulting record or <code>null</code> if the query
    +     *         returns no records.
    +     * @throws DataAccessException if something went wrong executing the query
    +     */
    +    R fetchAny() throws DataAccessException;
    +
    +    /**
    +     * Execute the query and return the generated result as a list of name/value
    +     * maps.
    +     *
    +     * @return The result.
    +     * @throws DataAccessException This exception is thrown
    +     *             <ul>
    +     *             <li>if something went wrong executing the query</li>
    +     *             <li>if several fields share the same name</li>
    +     *             </ul>
    +     */
    +    List<Map<String, Object>> fetchMaps() throws DataAccessException;
    +
    +    /**
    +     * Execute the query and return at most one resulting record as a name/value
    +     * map.
    +     *
    +     * @return The resulting record or <code>null</code> if the query returns no
    +     *         records.
    +     * @throws DataAccessException This exception is thrown
    +     *             <ul>
    +     *             <li>if something went wrong executing the query</li>
    +     *             <li>if the query returned more than one record</li>
    +     *             <li>if several fields share the same name</li>
    +     *             </ul>
    +     */
    +    Map<String, Object> fetchOneMap() throws DataAccessException;
    +
    +    /**
    +     * Execute the query and return a {@link Map} with one of the result's
    +     * columns as key and the corresponding records as value.
    +     * <p>
    +     * An exception is thrown, if the key turns out to be non-unique in the
    +     * result set.
    +     *
    +     * @param <K> The key's generic field type
    +     * @param key The key field. Client code must assure that this field is
    +     *            unique in the result set.
    +     * @return A Map containing the results
    +     * @throws DataAccessException This exception is thrown
    +     *             <ul>
    +     *             <li>if something went wrong executing the query</li> <li>if
    +     *             the key field returned two or more equal values from the
    +     *             result set.</li>
    +     *             </ul>
    +     */
    +    <K> Map<K, R> fetchMap(Field<K> key) throws DataAccessException;
    +
    +    /**
    +     * Execute the query and return a {@link Map} with one of the result's
    +     * columns as key and another one of the result's columns as value
    +     * <p>
    +     * An exception is thrown, if the key turns out to be non-unique in the
    +     * result set.
    +     *
    +     * @param <K> The key's generic field type
    +     * @param <V> The value's generic field type
    +     * @param key The key field. Client code must assure that this field is
    +     *            unique in the result set.
    +     * @param value The value field
    +     * @return A Map containing the results
    +     * @throws DataAccessException This exception is thrown
    +     *             <ul>
    +     *             <li>if something went wrong executing the query</li> <li>if
    +     *             the key field returned two or more equal values from the
    +     *             result set.</li>
    +     *             </ul>
    +     */
    +    <K, V> Map<K, V> fetchMap(Field<K> key, Field<V> value) throws DataAccessException;
    +
    +    /**
    +     * Execute the query and return the generated result as an Object matrix
    +     * <p>
    +     * You can access data like this
    +     * <code><pre>query.fetchArray()[recordIndex][fieldIndex]</pre></code>
    +     *
    +     * @return The result.
    +     * @throws DataAccessException if something went wrong executing the query
    +     */
    +    Object[][] fetchArrays() throws DataAccessException;
    +
    +    /**
    +     * Execute the query and return all values for a field index from the
    +     * generated result.
    +     * <p>
    +     * You can access data like this
    +     * <code><pre>query.fetchArray(fieldIndex)[recordIndex]</pre></code>
    +     *
    +     * @return The resulting values.
    +     * @throws DataAccessException if something went wrong executing the query
    +     */
    +    Object[] fetchArray(int fieldIndex) throws DataAccessException;
    +
    +    /**
    +     * Execute the query and return all values for a field index from the
    +     * generated result.
    +     * <p>
    +     * You can access data like this
    +     * <code><pre>query.fetchArray(fieldIndex)[recordIndex]</pre></code>
    +     *
    +     * @return The resulting values.
    +     */
    +    <T> T[] fetchArray(int fieldIndex, Class<? extends T> type) throws DataAccessException;
    +
    +    /**
    +     * Execute the query and return all values for a field index from the
    +     * generated result.
    +     * <p>
    +     * You can access data like this
    +     * <code><pre>query.fetchArray(fieldIndex)[recordIndex]</pre></code>
    +     *
    +     * @return The resulting values.
    +     */
    +    <U> U[] fetchArray(int fieldIndex, Converter<?, U> converter) throws DataAccessException;
    +
    +    /**
    +     * Execute the query and return all values for a field name from the
    +     * generated result.
    +     * <p>
    +     * You can access data like this
    +     * <code><pre>query.fetchArray(fieldName)[recordIndex]</pre></code>
    +     *
    +     * @return The resulting values.
    +     * @throws DataAccessException if something went wrong executing the query
    +     */
    +    Object[] fetchArray(String fieldName) throws DataAccessException;
    +
    +    /**
    +     * Execute the query and return all values for a field name from the
    +     * generated result.
    +     * <p>
    +     * You can access data like this
    +     * <code><pre>query.fetchArray(fieldName)[recordIndex]</pre></code>
    +     *
    +     * @return The resulting values.
    +     * @throws DataAccessException if something went wrong executing the query
    +     */
    +    <U> U[] fetchArray(String fieldName, Converter<?, U> converter) throws DataAccessException;
    +
    +    /**
    +     * Execute the query and return all values for a field name from the
    +     * generated result.
    +     * <p>
    +     * You can access data like this
    +     * <code><pre>query.fetchArray(fieldName)[recordIndex]</pre></code>
    +     *
    +     * @return The resulting values.
    +     * @throws DataAccessException if something went wrong executing the query
    +     */
    +    <T> T[] fetchArray(String fieldName, Class<? extends T> type) throws DataAccessException;
    +
    +    /**
    +     * Execute the query and return all values for a field from the generated
    +     * result.
    +     * <p>
    +     * You can access data like this
    +     * <code><pre>query.fetchArray(field)[recordIndex]</pre></code>
    +     *
    +     * @return The resulting values.
    +     * @throws DataAccessException if something went wrong executing the query
    +     */
    +    <T> T[] fetchArray(Field<T> field) throws DataAccessException;
    +
    +    /**
    +     * Execute the query and return all values for a field from the generated
    +     * result.
    +     * <p>
    +     * You can access data like this
    +     * <code><pre>query.fetchArray(field)[recordIndex]</pre></code>
    +     *
    +     * @return The resulting values.
    +     * @throws DataAccessException if something went wrong executing the query
    +     */
    +    <T> T[] fetchArray(Field<?> field, Class<? extends T> type) throws DataAccessException;
    +
    +    /**
    +     * Execute the query and return all values for a field from the generated
    +     * result.
    +     * <p>
    +     * You can access data like this
    +     * <code><pre>query.fetchArray(field)[recordIndex]</pre></code>
    +     *
    +     * @return The resulting values.
    +     * @throws DataAccessException if something went wrong executing the query
    +     */
    +    <T, U> U[] fetchArray(Field<T> field, Converter<? super T, U> converter) throws DataAccessException;
    +
    +    /**
    +     * Execute the query and return at most one resulting record as an array
    +     * <p>
    +     * You can access data like this
    +     * <code><pre>query.fetchOneArray()[fieldIndex]</pre></code>
    +     *
    +     * @return The resulting record or <code>null</code> if the query returns no
    +     *         records.
    +     * @throws DataAccessException This exception is thrown
    +     *             <ul>
    +     *             <li>if something went wrong executing the query</li> <li>if
    +     *             the query returned more than one record</li>
    +     *             </ul>
    +     */
    +    Object[] fetchOneArray() throws DataAccessException;
    +
    +    /**
    +     * Map resulting records onto a custom type.
    +     * <p>
    +     * This is the same as calling <code>fetch().into(type)</code>. See
    +     * {@link Record#into(Class)} for more details
    +     *
    +     * @param <E> The generic entity type.
    +     * @param type The entity type.
    +     * @see Record#into(Class)
    +     * @see Result#into(Class)
    +     * @throws DataAccessException if something went wrong executing the query
    +     * @throws MappingException wrapping any reflection or data type conversion
    +     *             exception that might have occurred while mapping records
    +     */
    +    <E> List<E> fetchInto(Class<? extends E> type) throws DataAccessException, MappingException;
    +
    +    /**
    +     * Map resulting records onto a custom record.
    +     * <p>
    +     * This is the same as calling <code>fetch().into(table)</code>. See
    +     * {@link Record#into(Table)} for more details
    +     *
    +     * @param <Z> The generic table record type.
    +     * @param table The table type.
    +     * @see Record#into(Table)
    +     * @see Result#into(Table)
    +     * @throws DataAccessException if something went wrong executing the query
    +     */
    +    <Z extends Record> Result<Z> fetchInto(Table<Z> table) throws DataAccessException;
    +
    +    /**
    +     * Fetch results into a custom handler callback
    +     *
    +     * @param handler The handler callback
    +     * @return Convenience result, returning the parameter handler itself
    +     * @throws DataAccessException if something went wrong executing the query
    +     */
    +    <H extends RecordHandler<R>> H fetchInto(H handler) throws DataAccessException;
    +
    +    /**
    +     * Fetch results asynchronously.
    +     * <p>
    +     * This method wraps fetching of records in a
    +     * {@link java.util.concurrent.Future}, such that you can access the actual
    +     * records at a future instant. This is especially useful when
    +     * <ul>
    +     * <li>You want to load heavy data in the background, for instance when the
    +     * user logs in and accesses a pre-calculated dashboard screen, before they
    +     * access the heavy data.</li>
    +     * <li>You want to parallelise several independent OLAP queries before
    +     * merging all data into a single report</li>
    +     * <li>...</li>
    +     * </ul>
    +     * <p>
    +     * This will internally create a "single thread executor", that is shut down
    +     * at the end of the {@link FutureResult}'s lifecycle. Use
    +     * {@link #fetchLater(ExecutorService)} instead, if you want control over
    +     * your executing threads.
    +     *
    +     * @return A future result
    +     * @throws DataAccessException if something went wrong executing the query
    +     */
    +    FutureResult<R> fetchLater() throws DataAccessException;
    +
    +    /**
    +     * Fetch results asynchronously.
    +     * <p>
    +     * This method wraps fetching of records in a
    +     * {@link java.util.concurrent.Future}, such that you can access the actual
    +     * records at a future instant. This is especially useful when
    +     * <ul>
    +     * <li>You want to load heavy data in the background, for instance when the
    +     * user logs in and accesses a pre-calculated dashboard screen, before they
    +     * access the heavy data.</li>
    +     * <li>You want to parallelise several independent OLAP queries before
    +     * merging all data into a single report</li>
    +     * <li>...</li>
    +     * </ul>
    +     * <p>
    +     * Use this method rather than {@link #fetchLater()}, in order to keep
    +     * control over thread lifecycles, if you manage threads in a J2EE container
    +     * or with Spring, for instance.
    +     *
    +     * @param executor A custom executor
    +     * @return A future result
    +     * @throws DataAccessException if something went wrong executing the query
    +     */
    +    FutureResult<R> fetchLater(ExecutorService executor) throws DataAccessException;
    +
    +    /**
    +     * The record type produced by this query
    +     */
    +    Class<? extends R> getRecordType();
    +
    +    /**
    +     * {@inheritDoc}
    +     */
    +    @Override
    +    ResultQuery<R> bind(String param, Object value) throws IllegalArgumentException, DataTypeException;
    +
    +    /**
    +     * {@inheritDoc}
    +     */
    +    @Override
    +    ResultQuery<R> bind(int index, Object value) throws IllegalArgumentException, DataTypeException;
    +
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/Routine.java b/jOOQ/src/main/java/org/jooq/Routine.java
    new file mode 100644
    index 00000000000..a711cc34721
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/Routine.java
    @@ -0,0 +1,140 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq;
    +
    +import java.util.List;
    +
    +import org.jooq.exception.DataAccessException;
    +
    +/**
    + * A routine is a callable object in your RDBMS.
    + * <p>
    + * Callable objects are mainly stored procedures and stored functions. The
    + * distinction between those two object types is very subtle and not well
    + * defined across various RDBMS. In general, this can be said:
    + * <p>
    + * Procedures:
    + * <p>
    + * <ul>
    + * <li>Are called as callable statements</li>
    + * <li>Have no return value</li>
    + * <li>Support OUT parameters</li>
    + * </ul>
    + * Functions
    + * <p>
    + * <ul>
    + * <li>Can be used in SQL statements</li>
    + * <li>Have a return value</li>
    + * <li>Don't support OUT parameters</li>
    + * </ul>
    + * But there are exceptions to these rules:
    + * <p>
    + * <ul>
    + * <li>DB2, H2, and HSQLDB don't allow for JDBC escape syntax when calling
    + * functions. Functions must be used in a SELECT statement</li>
    + * <li>H2 only knows functions (without OUT parameters)</li>
    + * <li>Oracle functions may have OUT parameters</li>
    + * <li>Oracle knows functions that mustn't be used in SQL statements</li>
    + * <li>Oracle parameters can have default values (to support this, jOOQ renders
    + * PL/SQL instead of the JDBC escape syntax)</li>
    + * <li>Postgres only knows functions (with all features combined)</li>
    + * <li>The Sybase JDBC driver doesn't handle null values correctly when using
    + * the JDBC escape syntax on functions</li>
    + * <li>etc...</li>
    + * </ul>
    + * <p>
    + * Hence, with #852, jOOQ 1.6.8, the distinction between procedures and
    + * functions becomes obsolete. All stored routines are simply referred to as
    + * "Routine".
    + *
    + * @author Lukas Eder
    + */
    +public interface Routine<T> extends NamedQueryPart, SchemaProvider {
    +
    +    /**
    +     * A list of OUT parameters passed to the stored procedure as argument. This
    +     * list contains all parameters that are either OUT or INOUT in their
    +     * respective order of appearance in {@link #getParameters()}.
    +     *
    +     * @return The list of out parameters
    +     * @see #getParameters()
    +     */
    +    List<Parameter<?>> getOutParameters();
    +
    +    /**
    +     * A list of IN parameters passed to the stored procedure as argument. This
    +     * list contains all parameters that are either IN or INOUT in their
    +     * respective order of appearance in {@link #getParameters()}.
    +     *
    +     * @return The list of in parameters
    +     * @see #getParameters()
    +     */
    +    List<Parameter<?>> getInParameters();
    +
    +    /**
    +     * @return The routine's return value (if it is a function)
    +     */
    +    T getReturnValue();
    +
    +    /**
    +     * @return A list of parameters passed to the stored object as argument
    +     */
    +    List<Parameter<?>> getParameters();
    +
    +    /**
    +     * The container package of this stored procedure or function.
    +     * <p>
    +     * This is only supported in the {@link SQLDialect#ORACLE} dialect.
    +     *
    +     * @return The container package of this object, or <code>null</code> if
    +     *         there is no such container.
    +     */
    +    Package getPackage();
    +
    +    /**
    +     * Execute the stored object using a {@link Configuration} object
    +     *
    +     * @throws DataAccessException if something went wrong executing the query
    +     */
    +    int execute(Configuration configuration) throws DataAccessException;
    +
    +    /**
    +     * Execute the stored object on an underlying connection
    +     *
    +     * @throws DataAccessException if something went wrong executing the query
    +     */
    +    int execute() throws DataAccessException;
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/SQLDialect.java b/jOOQ/src/main/java/org/jooq/SQLDialect.java
    new file mode 100644
    index 00000000000..7c05b771f69
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/SQLDialect.java
    @@ -0,0 +1,149 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +
    +package org.jooq;
    +
    +import org.jooq.impl.Factory;
    +import org.jooq.util.ase.ASEFactory;
    +import org.jooq.util.cubrid.CUBRIDFactory;
    +import org.jooq.util.db2.DB2Factory;
    +import org.jooq.util.derby.DerbyFactory;
    +import org.jooq.util.h2.H2Factory;
    +import org.jooq.util.hsqldb.HSQLDBFactory;
    +import org.jooq.util.ingres.IngresFactory;
    +import org.jooq.util.mysql.MySQLFactory;
    +import org.jooq.util.oracle.OracleFactory;
    +import org.jooq.util.postgres.PostgresFactory;
    +import org.jooq.util.sqlite.SQLiteFactory;
    +import org.jooq.util.sqlserver.SQLServerFactory;
    +import org.jooq.util.sybase.SybaseFactory;
    +
    +/**
    + * This enumeration lists all supported dialects.
    + *
    + * @author Lukas Eder
    + */
    +public enum SQLDialect {
    +    /**
    +     * The standard SQL dialect.
    +     *
    +     * @deprecated - Do not reference this pseudo-dialect. It is only used for
    +     *             unit testing
    +     */
    +    @Deprecated
    +    SQL99(null, null),
    +
    +    /**
    +     * The Sybase Adaptive Server SQL dialect
    +     */
    +    ASE("ASE", ASEFactory.class),
    +
    +    /**
    +     * The CUBRID SQL dialect
    +     */
    +    CUBRID("CUBRID", CUBRIDFactory.class),
    +
    +    /**
    +     * The IBM DB2 SQL dialect
    +     */
    +    DB2("DB2", DB2Factory.class),
    +
    +    /**
    +     * The Apache Derby SQL dialect
    +     */
    +    DERBY("Derby", DerbyFactory.class),
    +
    +    /**
    +     * The H2 SQL dialect
    +     */
    +    H2("H2", H2Factory.class),
    +
    +    /**
    +     * The Hypersonic SQL dialect
    +     */
    +    HSQLDB("HSQLDB", HSQLDBFactory.class),
    +
    +    /**
    +     * The Ingres dialect
    +     */
    +    INGRES("Ingres", IngresFactory.class),
    +
    +    /**
    +     * The MySQL dialect
    +     */
    +    MYSQL("MySQL", MySQLFactory.class),
    +
    +    /**
    +     * The Oracle dialect
    +     */
    +    ORACLE("Oracle", OracleFactory.class),
    +
    +    /**
    +     * The PostGres dialect
    +     */
    +    POSTGRES("Postgres", PostgresFactory.class),
    +
    +    /**
    +     * The SQLite dialect
    +     */
    +    SQLITE("SQLite", SQLiteFactory.class),
    +
    +    /**
    +     * The SQL Server dialect
    +     */
    +    SQLSERVER("SQLServer", SQLServerFactory.class),
    +
    +    /**
    +     * The Sybase dialect
    +     */
    +    SYBASE("Sybase", SybaseFactory.class);
    +
    +    private final String                   name;
    +    private final Class<? extends Factory> factory;
    +
    +    private SQLDialect(String name, Class<? extends Factory> factory) {
    +        this.name = name;
    +        this.factory = factory;
    +    }
    +
    +    public final String getName() {
    +        return name;
    +    }
    +
    +    public final Class<? extends Factory> getFactory() {
    +        return factory;
    +    }
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/Schema.java b/jOOQ/src/main/java/org/jooq/Schema.java
    new file mode 100644
    index 00000000000..0d7fb46ad4a
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/Schema.java
    @@ -0,0 +1,93 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +
    +package org.jooq;
    +
    +import java.sql.ResultSet;
    +import java.util.List;
    +import java.util.Map;
    +
    +/**
    + * An entity representing a database schema
    + *
    + * @author Lukas Eder
    + */
    +public interface Schema extends NamedQueryPart {
    +
    +    /**
    +     * The complete type mapping for this schema.
    +     * <p>
    +     * This method returns all generated types involved with this schema. The
    +     * result can be used in {@link ResultSet#getObject(int, Map)} and similar
    +     * methods.
    +     *
    +     * @see UDT#getTypeMapping() for a UDT-specific type mapping
    +     */
    +    Map<String, Class<?>> getTypeMapping();
    +
    +    /**
    +     * List all tables contained in this schema
    +     */
    +    List<Table<?>> getTables();
    +
    +    /**
    +     * Get a table by its name (case-sensitive) in this schema, or
    +     * <code>null</code> if no such table exists
    +     */
    +    Table<?> getTable(String name);
    +
    +    /**
    +     * List all UDTs contained in this schema
    +     */
    +    List<UDT<?>> getUDTs();
    +
    +    /**
    +     * Get a UDT by its name (case-sensitive) in this schema, or
    +     * <code>null</code> if no such UDT exists
    +     */
    +    UDT<?> getUDT(String name);
    +
    +    /**
    +     * List all sequences contained in this schema
    +     */
    +    List<Sequence<?>> getSequences();
    +
    +    /**
    +     * Get a sequence by its name (case-sensitive) in this schema, or
    +     * <code>null</code> if no such sequence exists
    +     */
    +    Sequence<?> getSequence(String name);
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/SchemaMapping.java b/jOOQ/src/main/java/org/jooq/SchemaMapping.java
    new file mode 100644
    index 00000000000..b5a2f37e201
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/SchemaMapping.java
    @@ -0,0 +1,431 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq;
    +
    +import static org.jooq.tools.StringUtils.isBlank;
    +
    +import java.io.Serializable;
    +import java.io.StringWriter;
    +import java.util.HashMap;
    +import java.util.Map;
    +import java.util.Map.Entry;
    +
    +import javax.xml.bind.JAXB;
    +
    +import org.jooq.conf.MappedSchema;
    +import org.jooq.conf.MappedTable;
    +import org.jooq.conf.RenderMapping;
    +import org.jooq.conf.Settings;
    +import org.jooq.conf.SettingsTools;
    +import org.jooq.tools.JooqLogger;
    +
    +/**
    + * General mapping of generated artefacts onto run-time substitutes.
    + * <p>
    + * There are several use cases, when the run-time schema configuration may be
    + * different from the compile-time (or code-generation-time) schema
    + * configuration. Say, you develop a schema called <code>DEV</code>. It contains
    + * a table <code>DEV.T</code>. When you install your database on a productive
    + * system, you might have two schemata:
    + * <ul>
    + * <li><code>PROD</code>: The productive schema. It contains the table
    + * <code>PROD.T</code></li>
    + * <li><code>BACKUP</code>: The productive backup schema. This schema might be
    + * shared with other applications, so you might have table name collisions.
    + * Therefore, you'd want to map your table <code>DEV.T</code> onto
    + * <code>BACKUP.MY_T</code>
    + * </ul>
    + * <p>
    + * This can be achieved with the <code>SchemaMapping</code>, where you can map
    + * schemata and tables, for them to render different names at run-time, than at
    + * compile-time.
    + *
    + * @author Lukas Eder
    + * @see <a
    + *      href="https://sourceforge.net/apps/trac/jooq/wiki/Manual/ADVANCED/SchemaMapping">https://sourceforge.net/apps/trac/jooq/wiki/Manual/ADVANCED/SchemaMapping</a>
    + * @since 1.5.2, 1.6.0
    + * @deprecated - 2.0.5 - Use runtime configuration {@link Settings} instead
    + */
    +@Deprecated
    +public class SchemaMapping implements Serializable {
    +
    +    /**
    +     * Generated UID
    +     */
    +    private static final long               serialVersionUID  = 8269660159338710470L;
    +    private static final JooqLogger         log               = JooqLogger.getLogger(SchemaMapping.class);
    +    private static volatile boolean         loggedDeprecation = false;
    +
    +    /**
    +     * The default, unmodifiable mapping that just takes generated schemata
    +     *
    +     * @deprecated - 2.0.5 - Do not reuse this SchemaMapping!
    +     */
    +    @Deprecated
    +    public static final SchemaMapping       NO_MAPPING        = new SchemaMapping(new Settings(), true);
    +
    +    private final RenderMapping             mapping;
    +    private final boolean                   ignoreMapping;
    +    private transient Map<String, Schema>   schemata;
    +    private transient Map<String, Table<?>> tables;
    +
    +    /**
    +     * Construct an empty mapping
    +     */
    +    public SchemaMapping() {
    +        this(null);
    +    }
    +
    +    /**
    +     * Construct a mapping from a {@link Settings} object
    +     */
    +    public SchemaMapping(Settings settings) {
    +        this(settings, false);
    +    }
    +
    +    /**
    +     * Auxiliary constructor used for backwards-compatibility.
    +     */
    +    private SchemaMapping(Settings settings, boolean ignore) {
    +        if (settings == null) {
    +            logDeprecation();
    +        }
    +
    +        this.mapping = SettingsTools.getRenderMapping(settings);
    +        this.ignoreMapping = ignore;
    +    }
    +
    +    private static void logDeprecation() {
    +        if (!loggedDeprecation) {
    +
    +            // Log only once
    +            loggedDeprecation = true;
    +            log.warn("DEPRECATION", "org.jooq.SchemaMapping is deprecated as of jOOQ 2.0.5. Consider using jOOQ's runtime configuration org.jooq.conf.Settings instead");
    +        }
    +    }
    +
    +    /**
    +     * Set a schema as the default schema. This results in the supplied schema
    +     * being omitted in generated SQL.
    +     * <p>
    +     * If the supplied mapping has already been added using
    +     * {@link #add(Schema, Schema)}, then <code>use()</code> has no effect.
    +     *
    +     * @param schema the default schema
    +     */
    +    public void use(Schema schema) {
    +        if (ignoreMapping) return;
    +        use(schema.getName());
    +    }
    +
    +    /**
    +     * Set a schema as the default schema. This results in the supplied schema
    +     * being omitted in generated SQL.
    +     * <p>
    +     * If the supplied mapping has already been added using
    +     * {@link #add(Schema, Schema)}, then <code>use()</code> has no effect.
    +     *
    +     * @param schemaName the default schema
    +     */
    +    public void use(String schemaName) {
    +        if (ignoreMapping) return;
    +        logDeprecation();
    +
    +        mapping.setDefaultSchema(schemaName);
    +    }
    +
    +    /**
    +     * Add schemata to this mapping
    +     *
    +     * @param inputSchema The schema known at codegen time to be mapped
    +     * @param outputSchema The schema configured at run time to be mapped
    +     */
    +    public void add(String inputSchema, String outputSchema) {
    +        if (ignoreMapping) return;
    +        logDeprecation();
    +
    +        // Find existing mapped schema
    +        MappedSchema schema = null;
    +        for (MappedSchema s : mapping.getSchemata()) {
    +            if (inputSchema.equals(s.getInput())) {
    +                schema = s;
    +                break;
    +            }
    +        }
    +
    +        if (schema == null) {
    +            schema = new MappedSchema().withInput(inputSchema);
    +            mapping.getSchemata().add(schema);
    +        }
    +
    +        // Add new mapping
    +        schema.setOutput(outputSchema);
    +    }
    +
    +    /**
    +     * Add schemata to this mapping
    +     *
    +     * @param inputSchema The schema known at codegen time to be mapped
    +     * @param outputSchema The schema configured at run time to be mapped
    +     */
    +    public void add(String inputSchema, Schema outputSchema) {
    +        if (ignoreMapping) return;
    +        add(inputSchema, outputSchema.getName());
    +    }
    +
    +    /**
    +     * Add schemata to this mapping
    +     *
    +     * @param inputSchema The schema known at codegen time to be mapped
    +     * @param outputSchema The schema configured at run time to be mapped
    +     */
    +    public void add(Schema inputSchema, Schema outputSchema) {
    +        if (ignoreMapping) return;
    +        add(inputSchema.getName(), outputSchema.getName());
    +    }
    +
    +    /**
    +     * Add schemata to this mapping
    +     *
    +     * @param inputSchema The schema known at codegen time to be mapped
    +     * @param outputSchema The schema configured at run time to be mapped
    +     */
    +    public void add(Schema inputSchema, String outputSchema) {
    +        if (ignoreMapping) return;
    +        add(inputSchema.getName(), outputSchema);
    +    }
    +
    +    /**
    +     * Add tables to this mapping
    +     *
    +     * @param inputTable The table known at codegen time to be mapped
    +     * @param outputTable The table configured at run time to be mapped
    +     */
    +    public void add(Table<?> inputTable, Table<?> outputTable) {
    +        if (ignoreMapping) return;
    +        add(inputTable, outputTable.getName());
    +    }
    +
    +    /**
    +     * Add tables to this mapping
    +     *
    +     * @param inputTable The table known at codegen time to be mapped
    +     * @param outputTable The table configured at run time to be mapped
    +     */
    +    public void add(final Table<?> inputTable, final String outputTable) {
    +        if (ignoreMapping) return;
    +        logDeprecation();
    +
    +        // Try to find a pre-existing schema mapping in the settings
    +        MappedSchema schema = null;
    +        MappedTable table = null;
    +
    +        for (MappedSchema s : mapping.getSchemata()) {
    +            if (inputTable.getSchema().getName().equals(s.getInput())) {
    +
    +                // Find existing mapped table
    +                tableLoop:
    +                for (MappedTable t : s.getTables()) {
    +                    if (inputTable.getName().equals(t.getInput())) {
    +                        table = t;
    +                        break tableLoop;
    +                    }
    +                }
    +
    +                schema = s;
    +                break;
    +            }
    +        }
    +
    +        if (schema == null) {
    +            schema = new MappedSchema().withInput(inputTable.getSchema().getName());
    +            mapping.getSchemata().add(schema);
    +        }
    +
    +        if (table == null) {
    +            table = new MappedTable().withInput(inputTable.getName());
    +            schema.getTables().add(table);
    +        }
    +
    +        // Add new mapping
    +        table.setOutput(outputTable);
    +    }
    +
    +    /**
    +     * Apply mapping to a given schema
    +     *
    +     * @param schema The schema to be mapped
    +     * @return The configured schema
    +     */
    +    public Schema map(Schema schema) {
    +        if (ignoreMapping) return schema;
    +        Schema result = null;
    +
    +        if (schema != null) {
    +            String schemaName = schema.getName();
    +
    +            // Lazy initialise schema mapping
    +            if (!getSchemata().containsKey(schemaName)) {
    +                Schema mapped = schema;
    +
    +                for (MappedSchema s : mapping.getSchemata()) {
    +
    +                    // A configured mapping was found, add a renamed schema
    +                    if (schemaName.equals(s.getInput())) {
    +
    +                        // Ignore self-mappings and void-mappings
    +                        if (!isBlank(s.getOutput()) && !s.getOutput().equals(s.getInput())) {
    +                            mapped = new RenamedSchema(schema, s.getOutput());
    +                        }
    +
    +                        break;
    +                    }
    +                }
    +
    +                // Add mapped schema or self if no mapping was found
    +                getSchemata().put(schemaName, mapped);
    +            }
    +
    +            result = getSchemata().get(schemaName);
    +
    +            // The configured default schema is mapped to "null". This prevents
    +            // it from being rendered to SQL
    +            if (result.getName().equals(mapping.getDefaultSchema())) {
    +                result = null;
    +            }
    +        }
    +
    +        return result;
    +    }
    +
    +    /**
    +     * Apply mapping to a given table
    +     *
    +     * @param table The generated table to be mapped
    +     * @return The configured table
    +     */
    +    public Table<?> map(Table<?> table) {
    +        if (ignoreMapping) return table;
    +        Table<?> result = null;
    +
    +        if (table != null) {
    +            Schema schema = table.getSchema();
    +
    +            // [#1189] Schema can be null in SQLite
    +            // [#1186] TODO: replace this by calling table.getQualifiedName()
    +            String schemaName = (schema == null) ? "" : schema.getName();
    +            String tableName = table.getName();
    +            String key = (schema == null) ? tableName : (schemaName + "." + tableName);
    +
    +            // Lazy initialise table mapping
    +            if (!getTables().containsKey(key)) {
    +                Table<?> mapped = table;
    +
    +                schemaLoop:
    +                for (MappedSchema s : mapping.getSchemata()) {
    +                    if (schemaName.equals(s.getInput())) {
    +                        for (MappedTable t : s.getTables()) {
    +
    +                            // A configured mapping was found, add a renamed table
    +                            if (tableName.equals(t.getInput())) {
    +
    +                                // Ignore self-mappings and void-mappings
    +                                if (!isBlank(t.getOutput()) && !t.getOutput().equals(t.getInput())) {
    +                                    mapped = new RenamedTable(table, t.getOutput());
    +                                }
    +
    +                                break schemaLoop;
    +                            }
    +                        }
    +                    }
    +                }
    +
    +                // Add mapped table or self if no mapping was found
    +                getTables().put(key, mapped);
    +            }
    +
    +            result = getTables().get(key);
    +        }
    +
    +        return result;
    +    }
    +
    +    /**
    +     * Synonym for {@link #use(String)}. Added for better interoperability with
    +     * Spring
    +     */
    +    public void setDefaultSchema(String schema) {
    +        if (ignoreMapping) return;
    +        use(schema);
    +    }
    +
    +    /**
    +     * Initialise SchemaMapping. Added for better interoperability with Spring
    +     */
    +    public void setSchemaMapping(Map<String, String> schemaMap) {
    +        if (ignoreMapping) return;
    +        for (Entry<String, String> entry : schemaMap.entrySet()) {
    +            add(entry.getKey(), entry.getValue());
    +        }
    +    }
    +
    +    private final Map<String, Schema> getSchemata() {
    +        if (schemata == null) {
    +            schemata = new HashMap<String, Schema>();
    +        }
    +
    +        return schemata;
    +    }
    +
    +    private final Map<String, Table<?>> getTables() {
    +        if (tables == null) {
    +            tables = new HashMap<String, Table<?>>();
    +        }
    +
    +        return tables;
    +    }
    +
    +    // ------------------------------------------------------------------------
    +    // Object API
    +    // ------------------------------------------------------------------------
    +
    +    @Override
    +    public String toString() {
    +        StringWriter writer = new StringWriter();
    +        JAXB.marshal(mapping, writer);
    +        return writer.toString();
    +    }
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/SchemaProvider.java b/jOOQ/src/main/java/org/jooq/SchemaProvider.java
    new file mode 100644
    index 00000000000..af474d7d810
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/SchemaProvider.java
    @@ -0,0 +1,52 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq;
    +
    +/**
    + * An object providing a {@link Schema}. This becomes particularly interesting,
    + * when the schema is mapped.
    + *
    + * @author Lukas Eder
    + * @since 1.5.2
    + */
    +public interface SchemaProvider {
    +
    +    /**
    +     * @return The contained schema
    +     */
    +    Schema getSchema();
    +
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/Select.java b/jOOQ/src/main/java/org/jooq/Select.java
    new file mode 100644
    index 00000000000..9e0f0c6a4dc
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/Select.java
    @@ -0,0 +1,76 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq;
    +
    +import java.util.List;
    +
    +/**
    + * A {@link Query} that can provide a {@link Result} after execution
    + *
    + * @param <R> The record type being returned by this query
    + * @author Lukas Eder
    + */
    +public interface Select<R extends Record> extends ResultQuery<R>, TableLike<R>, FieldLike, FieldProvider {
    +
    +    /**
    +     * Combine with other selects
    +     */
    +    @Support
    +    Select<R> union(Select<R> select);
    +
    +    /**
    +     * Combine with other selects
    +     */
    +    @Support
    +    Select<R> unionAll(Select<R> select);
    +
    +    /**
    +     * Combine with other selects
    +     */
    +    @Support
    +    Select<R> except(Select<R> select);
    +
    +    /**
    +     * Combine with other selects
    +     */
    +    @Support
    +    Select<R> intersect(Select<R> select);
    +
    +    /**
    +     * All fields selected in this query
    +     */
    +    List<Field<?>> getSelect();
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/SelectConditionStep.java b/jOOQ/src/main/java/org/jooq/SelectConditionStep.java
    new file mode 100644
    index 00000000000..2f538265810
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/SelectConditionStep.java
    @@ -0,0 +1,196 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq;
    +
    +import org.jooq.impl.Factory;
    +
    +/**
    + * This type is used for the {@link Select}'s DSL API when selecting generic
    + * {@link Record} types.
    + * <p>
    + * Example: <code><pre>
    + * -- get all authors' first and last names, and the number
    + * -- of books they've written in German, if they have written
    + * -- more than five books in German in the last three years
    + * -- (from 2011), and sort those authors by last names
    + * -- limiting results to the second and third row
    + *
    + *   SELECT T_AUTHOR.FIRST_NAME, T_AUTHOR.LAST_NAME, COUNT(*)
    + *     FROM T_AUTHOR
    + *     JOIN T_BOOK ON T_AUTHOR.ID = T_BOOK.AUTHOR_ID
    + *    WHERE T_BOOK.LANGUAGE = 'DE'
    + *      AND T_BOOK.PUBLISHED > '2008-01-01'
    + * GROUP BY T_AUTHOR.FIRST_NAME, T_AUTHOR.LAST_NAME
    + *   HAVING COUNT(*) > 5
    + * ORDER BY T_AUTHOR.LAST_NAME ASC NULLS FIRST
    + *    LIMIT 2
    + *   OFFSET 1
    + *      FOR UPDATE
    + *       OF FIRST_NAME, LAST_NAME
    + *       NO WAIT
    + * </pre></code> Its equivalent in jOOQ <code><pre>
    + * create.select(TAuthor.FIRST_NAME, TAuthor.LAST_NAME, create.count())
    + *       .from(T_AUTHOR)
    + *       .join(T_BOOK).on(TBook.AUTHOR_ID.equal(TAuthor.ID))
    + *       .where(TBook.LANGUAGE.equal("DE"))
    + *       .and(TBook.PUBLISHED.greaterThan(parseDate('2008-01-01')))
    + *       .groupBy(TAuthor.FIRST_NAME, TAuthor.LAST_NAME)
    + *       .having(create.count().greaterThan(5))
    + *       .orderBy(TAuthor.LAST_NAME.asc().nullsFirst())
    + *       .limit(2)
    + *       .offset(1)
    + *       .forUpdate()
    + *       .of(TAuthor.FIRST_NAME, TAuthor.LAST_NAME)
    + *       .noWait();
    + * </pre></code> Refer to the manual for more details
    + *
    + * @author Lukas Eder
    + */
    +public interface SelectConditionStep extends SelectConnectByStep {
    +
    +    /**
    +     * Combine the currently assembled conditions with another one using the
    +     * {@link Operator#AND} operator and proceed to the next step.
    +     */
    +    @Support
    +    SelectConditionStep and(Condition condition);
    +
    +    /**
    +     * Combine the currently assembled conditions with another one using the
    +     * {@link Operator#AND} operator and proceed to the next step.
    +     * <p>
    +     * <b>NOTE</b>: When inserting plain SQL into jOOQ objects, you must
    +     * guarantee syntax integrity. You may also create the possibility of
    +     * malicious SQL injection. Be sure to properly use bind variables and/or
    +     * escape literals when concatenated into SQL clauses!
    +     *
    +     * @see Factory#condition(String)
    +     */
    +    @Support
    +    SelectConditionStep and(String sql);
    +
    +    /**
    +     * Combine the currently assembled conditions with another one using the
    +     * {@link Operator#AND} operator and proceed to the next step.
    +     * <p>
    +     * <b>NOTE</b>: When inserting plain SQL into jOOQ objects, you must
    +     * guarantee syntax integrity. You may also create the possibility of
    +     * malicious SQL injection. Be sure to properly use bind variables and/or
    +     * escape literals when concatenated into SQL clauses!
    +     *
    +     * @see Factory#condition(String, Object...)
    +     */
    +    @Support
    +    SelectConditionStep and(String sql, Object... bindings);
    +
    +    /**
    +     * Combine the currently assembled conditions with a negated other one using
    +     * the {@link Operator#AND} operator and proceed to the next step.
    +     */
    +    @Support
    +    SelectConditionStep andNot(Condition condition);
    +
    +    /**
    +     * Combine the currently assembled conditions with an EXISTS clause using
    +     * the {@link Operator#AND} operator and proceed to the next step.
    +     */
    +    @Support
    +    SelectConditionStep andExists(Select<?> select);
    +
    +    /**
    +     * Combine the currently assembled conditions with a NOT EXISTS clause using
    +     * the {@link Operator#AND} operator and proceed to the next step.
    +     */
    +    @Support
    +    SelectConditionStep andNotExists(Select<?> select);
    +
    +    /**
    +     * Combine the currently assembled conditions with another one using the
    +     * {@link Operator#OR} operator and proceed to the next step.
    +     */
    +    @Support
    +    SelectConditionStep or(Condition condition);
    +
    +    /**
    +     * Combine the currently assembled conditions with another one using the
    +     * {@link Operator#OR} operator and proceed to the next step.
    +     * <p>
    +     * <b>NOTE</b>: When inserting plain SQL into jOOQ objects, you must
    +     * guarantee syntax integrity. You may also create the possibility of
    +     * malicious SQL injection. Be sure to properly use bind variables and/or
    +     * escape literals when concatenated into SQL clauses!
    +     *
    +     * @see Factory#condition(String)
    +     */
    +    @Support
    +    SelectConditionStep or(String sql);
    +
    +    /**
    +     * Combine the currently assembled conditions with another one using the
    +     * {@link Operator#OR} operator and proceed to the next step.
    +     * <p>
    +     * <b>NOTE</b>: When inserting plain SQL into jOOQ objects, you must
    +     * guarantee syntax integrity. You may also create the possibility of
    +     * malicious SQL injection. Be sure to properly use bind variables and/or
    +     * escape literals when concatenated into SQL clauses!
    +     *
    +     * @see Factory#condition(String, Object...)
    +     */
    +    @Support
    +    SelectConditionStep or(String sql, Object... bindings);
    +
    +    /**
    +     * Combine the currently assembled conditions with a negated other one using
    +     * the {@link Operator#OR} operator and proceed to the next step.
    +     */
    +    @Support
    +    SelectConditionStep orNot(Condition condition);
    +
    +    /**
    +     * Combine the currently assembled conditions with an EXISTS clause using
    +     * the {@link Operator#OR} operator and proceed to the next step.
    +     */
    +    @Support
    +    SelectConditionStep orExists(Select<?> select);
    +
    +    /**
    +     * Combine the currently assembled conditions with a NOT EXISTS clause using
    +     * the {@link Operator#OR} operator and proceed to the next step.
    +     */
    +    @Support
    +    SelectConditionStep orNotExists(Select<?> select);
    +
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/SelectConnectByConditionStep.java b/jOOQ/src/main/java/org/jooq/SelectConnectByConditionStep.java
    new file mode 100644
    index 00000000000..3787479c62a
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/SelectConnectByConditionStep.java
    @@ -0,0 +1,122 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq;
    +
    +import static org.jooq.SQLDialect.CUBRID;
    +import static org.jooq.SQLDialect.ORACLE;
    +
    +import org.jooq.impl.Factory;
    +
    +/**
    + * This type is used for the {@link Select}'s DSL API when selecting generic
    + * {@link Record} types.
    + * <p>
    + * Example: <code><pre>
    + * -- get all authors' first and last names, and the number
    + * -- of books they've written in German, if they have written
    + * -- more than five books in German in the last three years
    + * -- (from 2011), and sort those authors by last names
    + * -- limiting results to the second and third row
    + *
    + *   SELECT T_AUTHOR.FIRST_NAME, T_AUTHOR.LAST_NAME, COUNT(*)
    + *     FROM T_AUTHOR
    + *     JOIN T_BOOK ON T_AUTHOR.ID = T_BOOK.AUTHOR_ID
    + *    WHERE T_BOOK.LANGUAGE = 'DE'
    + *      AND T_BOOK.PUBLISHED > '2008-01-01'
    + * GROUP BY T_AUTHOR.FIRST_NAME, T_AUTHOR.LAST_NAME
    + *   HAVING COUNT(*) > 5
    + * ORDER BY T_AUTHOR.LAST_NAME ASC NULLS FIRST
    + *    LIMIT 2
    + *   OFFSET 1
    + *      FOR UPDATE
    + *       OF FIRST_NAME, LAST_NAME
    + *       NO WAIT
    + * </pre></code> Its equivalent in jOOQ <code><pre>
    + * create.select(TAuthor.FIRST_NAME, TAuthor.LAST_NAME, create.count())
    + *       .from(T_AUTHOR)
    + *       .join(T_BOOK).on(TBook.AUTHOR_ID.equal(TAuthor.ID))
    + *       .where(TBook.LANGUAGE.equal("DE"))
    + *       .and(TBook.PUBLISHED.greaterThan(parseDate('2008-01-01')))
    + *       .groupBy(TAuthor.FIRST_NAME, TAuthor.LAST_NAME)
    + *       .having(create.count().greaterThan(5))
    + *       .orderBy(TAuthor.LAST_NAME.asc().nullsFirst())
    + *       .limit(2)
    + *       .offset(1)
    + *       .forUpdate()
    + *       .of(TAuthor.FIRST_NAME, TAuthor.LAST_NAME)
    + *       .noWait();
    + * </pre></code> Refer to the manual for more details
    + *
    + * @author Lukas Eder
    + */
    +public interface SelectConnectByConditionStep extends SelectStartWithStep {
    +
    +    /**
    +     * Combine the currently assembled conditions with another one using the
    +     * {@link Operator#AND} operator and proceed to the next step.
    +     */
    +    @Support({CUBRID, ORACLE})
    +    SelectConnectByConditionStep and(Condition condition);
    +
    +    /**
    +     * Combine the currently assembled conditions with another one using the
    +     * {@link Operator#AND} operator and proceed to the next step.
    +     * <p>
    +     * <b>NOTE</b>: When inserting plain SQL into jOOQ objects, you must
    +     * guarantee syntax integrity. You may also create the possibility of
    +     * malicious SQL injection. Be sure to properly use bind variables and/or
    +     * escape literals when concatenated into SQL clauses!
    +     *
    +     * @see Factory#condition(String)
    +     */
    +    @Support({CUBRID, ORACLE})
    +    SelectConnectByConditionStep and(String sql);
    +
    +    /**
    +     * Combine the currently assembled conditions with another one using the
    +     * {@link Operator#AND} operator and proceed to the next step.
    +     * <p>
    +     * <b>NOTE</b>: When inserting plain SQL into jOOQ objects, you must
    +     * guarantee syntax integrity. You may also create the possibility of
    +     * malicious SQL injection. Be sure to properly use bind variables and/or
    +     * escape literals when concatenated into SQL clauses!
    +     *
    +     * @see Factory#condition(String, Object...)
    +     */
    +    @Support({ CUBRID, ORACLE })
    +    SelectConnectByConditionStep and(String sql, Object... bindings);
    +
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/SelectConnectByStep.java b/jOOQ/src/main/java/org/jooq/SelectConnectByStep.java
    new file mode 100644
    index 00000000000..1b3b0a86d9d
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/SelectConnectByStep.java
    @@ -0,0 +1,143 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq;
    +
    +import static org.jooq.SQLDialect.CUBRID;
    +import static org.jooq.SQLDialect.ORACLE;
    +
    +/**
    + * This type is used for the {@link Select}'s DSL API when selecting generic
    + * {@link Record} types.
    + * <p>
    + * Example: <code><pre>
    + * -- get all authors' first and last names, and the number
    + * -- of books they've written in German, if they have written
    + * -- more than five books in German in the last three years
    + * -- (from 2011), and sort those authors by last names
    + * -- limiting results to the second and third row
    + *
    + *   SELECT T_AUTHOR.FIRST_NAME, T_AUTHOR.LAST_NAME, COUNT(*)
    + *     FROM T_AUTHOR
    + *     JOIN T_BOOK ON T_AUTHOR.ID = T_BOOK.AUTHOR_ID
    + *    WHERE T_BOOK.LANGUAGE = 'DE'
    + *      AND T_BOOK.PUBLISHED > '2008-01-01'
    + * GROUP BY T_AUTHOR.FIRST_NAME, T_AUTHOR.LAST_NAME
    + *   HAVING COUNT(*) > 5
    + * ORDER BY T_AUTHOR.LAST_NAME ASC NULLS FIRST
    + *    LIMIT 2
    + *   OFFSET 1
    + *      FOR UPDATE
    + *       OF FIRST_NAME, LAST_NAME
    + *       NO WAIT
    + * </pre></code> Its equivalent in jOOQ <code><pre>
    + * create.select(TAuthor.FIRST_NAME, TAuthor.LAST_NAME, create.count())
    + *       .from(T_AUTHOR)
    + *       .join(T_BOOK).on(TBook.AUTHOR_ID.equal(TAuthor.ID))
    + *       .where(TBook.LANGUAGE.equal("DE"))
    + *       .and(TBook.PUBLISHED.greaterThan(parseDate('2008-01-01')))
    + *       .groupBy(TAuthor.FIRST_NAME, TAuthor.LAST_NAME)
    + *       .having(create.count().greaterThan(5))
    + *       .orderBy(TAuthor.LAST_NAME.asc().nullsFirst())
    + *       .limit(2)
    + *       .offset(1)
    + *       .forUpdate()
    + *       .of(TAuthor.FIRST_NAME, TAuthor.LAST_NAME)
    + *       .noWait();
    + * </pre></code> Refer to the manual for more details
    + *
    + * @author Lukas Eder
    + */
    +public interface SelectConnectByStep extends SelectGroupByStep {
    +
    +    /**
    +     * Add an Oracle-specific <code>CONNECT BY</code> clause to the query
    +     */
    +    @Support({ CUBRID, ORACLE })
    +    SelectConnectByConditionStep connectBy(Condition condition);
    +
    +    /**
    +     * Add an Oracle-specific <code>CONNECT BY</code> clause to the query
    +     * <p>
    +     * <b>NOTE</b>: When inserting plain SQL into jOOQ objects, you must
    +     * guarantee syntax integrity. You may also create the possibility of
    +     * malicious SQL injection. Be sure to properly use bind variables and/or
    +     * escape literals when concatenated into SQL clauses!
    +     */
    +    @Support({ CUBRID, ORACLE })
    +    SelectConnectByConditionStep connectBy(String sql);
    +
    +    /**
    +     * Add an Oracle-specific <code>CONNECT BY</code> clause to the query
    +     * <p>
    +     * <b>NOTE</b>: When inserting plain SQL into jOOQ objects, you must
    +     * guarantee syntax integrity. You may also create the possibility of
    +     * malicious SQL injection. Be sure to properly use bind variables and/or
    +     * escape literals when concatenated into SQL clauses!
    +     */
    +    @Support({ CUBRID, ORACLE })
    +    SelectConnectByConditionStep connectBy(String sql, Object... bindings);
    +
    +    /**
    +     * Add an Oracle-specific <code>CONNECT BY NOCYCLE</code> clause to the
    +     * query
    +     */
    +    @Support({ CUBRID, ORACLE })
    +    SelectConnectByConditionStep connectByNoCycle(Condition condition);
    +
    +    /**
    +     * Add an Oracle-specific <code>CONNECT BY NOCYCLE</code> clause to the
    +     * query
    +     * <p>
    +     * <b>NOTE</b>: When inserting plain SQL into jOOQ objects, you must
    +     * guarantee syntax integrity. You may also create the possibility of
    +     * malicious SQL injection. Be sure to properly use bind variables and/or
    +     * escape literals when concatenated into SQL clauses!
    +     */
    +    @Support({ CUBRID, ORACLE })
    +    SelectConnectByConditionStep connectByNoCycle(String sql);
    +
    +    /**
    +     * Add an Oracle-specific <code>CONNECT BY NOCYCLE</code> clause to the
    +     * query
    +     * <p>
    +     * <b>NOTE</b>: When inserting plain SQL into jOOQ objects, you must
    +     * guarantee syntax integrity. You may also create the possibility of
    +     * malicious SQL injection. Be sure to properly use bind variables and/or
    +     * escape literals when concatenated into SQL clauses!
    +     */
    +    @Support({ CUBRID, ORACLE })
    +    SelectConnectByConditionStep connectByNoCycle(String sql, Object... bindings);
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/SelectFinalStep.java b/jOOQ/src/main/java/org/jooq/SelectFinalStep.java
    new file mode 100644
    index 00000000000..7568f3a63bc
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/SelectFinalStep.java
    @@ -0,0 +1,87 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq;
    +
    +/**
    + * This type is used for the {@link Select}'s DSL API when selecting generic
    + * {@link Record} types.
    + * <p>
    + * Example: <code><pre>
    + * -- get all authors' first and last names, and the number
    + * -- of books they've written in German, if they have written
    + * -- more than five books in German in the last three years
    + * -- (from 2011), and sort those authors by last names
    + * -- limiting results to the second and third row
    + *
    + *   SELECT T_AUTHOR.FIRST_NAME, T_AUTHOR.LAST_NAME, COUNT(*)
    + *     FROM T_AUTHOR
    + *     JOIN T_BOOK ON T_AUTHOR.ID = T_BOOK.AUTHOR_ID
    + *    WHERE T_BOOK.LANGUAGE = 'DE'
    + *      AND T_BOOK.PUBLISHED > '2008-01-01'
    + * GROUP BY T_AUTHOR.FIRST_NAME, T_AUTHOR.LAST_NAME
    + *   HAVING COUNT(*) > 5
    + * ORDER BY T_AUTHOR.LAST_NAME ASC NULLS FIRST
    + *    LIMIT 2
    + *   OFFSET 1
    + *      FOR UPDATE
    + *       OF FIRST_NAME, LAST_NAME
    + *       NO WAIT
    + * </pre></code> Its equivalent in jOOQ <code><pre>
    + * create.select(TAuthor.FIRST_NAME, TAuthor.LAST_NAME, create.count())
    + *       .from(T_AUTHOR)
    + *       .join(T_BOOK).on(TBook.AUTHOR_ID.equal(TAuthor.ID))
    + *       .where(TBook.LANGUAGE.equal("DE"))
    + *       .and(TBook.PUBLISHED.greaterThan(parseDate('2008-01-01')))
    + *       .groupBy(TAuthor.FIRST_NAME, TAuthor.LAST_NAME)
    + *       .having(create.count().greaterThan(5))
    + *       .orderBy(TAuthor.LAST_NAME.asc().nullsFirst())
    + *       .limit(2)
    + *       .offset(1)
    + *       .forUpdate()
    + *       .of(TAuthor.FIRST_NAME, TAuthor.LAST_NAME)
    + *       .noWait();
    + * </pre></code> Refer to the manual for more details
    + *
    + * @author Lukas Eder
    + */
    +public interface SelectFinalStep extends Select<Record> {
    +
    +    /**
    +     * Get the underlying {@link Query} that is being constructed.
    +     */
    +    SelectQuery getQuery();
    +
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/SelectForUpdateOfStep.java b/jOOQ/src/main/java/org/jooq/SelectForUpdateOfStep.java
    new file mode 100644
    index 00000000000..36ceed9bab6
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/SelectForUpdateOfStep.java
    @@ -0,0 +1,123 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq;
    +
    +import static org.jooq.SQLDialect.DB2;
    +import static org.jooq.SQLDialect.DERBY;
    +import static org.jooq.SQLDialect.H2;
    +import static org.jooq.SQLDialect.HSQLDB;
    +import static org.jooq.SQLDialect.INGRES;
    +import static org.jooq.SQLDialect.ORACLE;
    +import static org.jooq.SQLDialect.POSTGRES;
    +import static org.jooq.SQLDialect.SYBASE;
    +
    +import java.util.Collection;
    +
    +/**
    + * This type is used for the {@link Select}'s DSL API when selecting generic
    + * {@link Record} types.
    + * <p>
    + * Example: <code><pre>
    + * -- get all authors' first and last names, and the number
    + * -- of books they've written in German, if they have written
    + * -- more than five books in German in the last three years
    + * -- (from 2011), and sort those authors by last names
    + * -- limiting results to the second and third row
    + *
    + *   SELECT T_AUTHOR.FIRST_NAME, T_AUTHOR.LAST_NAME, COUNT(*)
    + *     FROM T_AUTHOR
    + *     JOIN T_BOOK ON T_AUTHOR.ID = T_BOOK.AUTHOR_ID
    + *    WHERE T_BOOK.LANGUAGE = 'DE'
    + *      AND T_BOOK.PUBLISHED > '2008-01-01'
    + * GROUP BY T_AUTHOR.FIRST_NAME, T_AUTHOR.LAST_NAME
    + *   HAVING COUNT(*) > 5
    + * ORDER BY T_AUTHOR.LAST_NAME ASC NULLS FIRST
    + *    LIMIT 2
    + *   OFFSET 1
    + *      FOR UPDATE
    + *       OF FIRST_NAME, LAST_NAME
    + *       NO WAIT
    + * </pre></code> Its equivalent in jOOQ <code><pre>
    + * create.select(TAuthor.FIRST_NAME, TAuthor.LAST_NAME, create.count())
    + *       .from(T_AUTHOR)
    + *       .join(T_BOOK).on(TBook.AUTHOR_ID.equal(TAuthor.ID))
    + *       .where(TBook.LANGUAGE.equal("DE"))
    + *       .and(TBook.PUBLISHED.greaterThan(parseDate('2008-01-01')))
    + *       .groupBy(TAuthor.FIRST_NAME, TAuthor.LAST_NAME)
    + *       .having(create.count().greaterThan(5))
    + *       .orderBy(TAuthor.LAST_NAME.asc().nullsFirst())
    + *       .limit(2)
    + *       .offset(1)
    + *       .forUpdate()
    + *       .of(TAuthor.FIRST_NAME, TAuthor.LAST_NAME)
    + *       .noWait();
    + * </pre></code> Refer to the manual for more details
    + *
    + * @author Lukas Eder
    + */
    +public interface SelectForUpdateOfStep extends SelectForUpdateWaitStep {
    +
    +    /**
    +     * Add an <code>OF</code> clause to the <code>FOR UPDATE</code> clause at
    +     * the end of the query.
    +     *
    +     * @see LockProvider#setForUpdateOf(Field...) see LockProvider for more
    +     *      details
    +     */
    +    @Support({ DB2, DERBY, H2, HSQLDB, INGRES, ORACLE, SYBASE })
    +    SelectForUpdateWaitStep of(Field<?>... fields);
    +
    +    /**
    +     * Add an <code>OF</code> clause to the <code>FOR UPDATE</code> clause at
    +     * the end of the query.
    +     *
    +     * @see LockProvider#setForUpdateOf(Collection) see LockProvider for more
    +     *      details
    +     */
    +    @Support({ DB2, DERBY, H2, HSQLDB, INGRES, ORACLE, SYBASE })
    +    SelectForUpdateWaitStep of(Collection<Field<?>> fields);
    +
    +    /**
    +     * Add an <code>OF</code> clause to the <code>FOR UPDATE</code> clause at
    +     * the end of the query.
    +     *
    +     * @see LockProvider#setForUpdateOf(Table...) see LockProvider for more
    +     *      details
    +     */
    +    @Support({ DB2, DERBY, H2, HSQLDB, INGRES, POSTGRES, ORACLE, SYBASE })
    +    SelectForUpdateWaitStep of(Table<?>... tables);
    +
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/SelectForUpdateStep.java b/jOOQ/src/main/java/org/jooq/SelectForUpdateStep.java
    new file mode 100644
    index 00000000000..f4331c84803
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/SelectForUpdateStep.java
    @@ -0,0 +1,115 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq;
    +
    +import static org.jooq.SQLDialect.ASE;
    +import static org.jooq.SQLDialect.DB2;
    +import static org.jooq.SQLDialect.DERBY;
    +import static org.jooq.SQLDialect.H2;
    +import static org.jooq.SQLDialect.HSQLDB;
    +import static org.jooq.SQLDialect.INGRES;
    +import static org.jooq.SQLDialect.MYSQL;
    +import static org.jooq.SQLDialect.ORACLE;
    +import static org.jooq.SQLDialect.POSTGRES;
    +import static org.jooq.SQLDialect.SYBASE;
    +
    +/**
    + * This type is used for the {@link Select}'s DSL API when selecting generic
    + * {@link Record} types.
    + * <p>
    + * Example: <code><pre>
    + * -- get all authors' first and last names, and the number
    + * -- of books they've written in German, if they have written
    + * -- more than five books in German in the last three years
    + * -- (from 2011), and sort those authors by last names
    + * -- limiting results to the second and third row
    + *
    + *   SELECT T_AUTHOR.FIRST_NAME, T_AUTHOR.LAST_NAME, COUNT(*)
    + *     FROM T_AUTHOR
    + *     JOIN T_BOOK ON T_AUTHOR.ID = T_BOOK.AUTHOR_ID
    + *    WHERE T_BOOK.LANGUAGE = 'DE'
    + *      AND T_BOOK.PUBLISHED > '2008-01-01'
    + * GROUP BY T_AUTHOR.FIRST_NAME, T_AUTHOR.LAST_NAME
    + *   HAVING COUNT(*) > 5
    + * ORDER BY T_AUTHOR.LAST_NAME ASC NULLS FIRST
    + *    LIMIT 2
    + *   OFFSET 1
    + *      FOR UPDATE
    + *       OF FIRST_NAME, LAST_NAME
    + *       NO WAIT
    + * </pre></code> Its equivalent in jOOQ <code><pre>
    + * create.select(TAuthor.FIRST_NAME, TAuthor.LAST_NAME, create.count())
    + *       .from(T_AUTHOR)
    + *       .join(T_BOOK).on(TBook.AUTHOR_ID.equal(TAuthor.ID))
    + *       .where(TBook.LANGUAGE.equal("DE"))
    + *       .and(TBook.PUBLISHED.greaterThan(parseDate('2008-01-01')))
    + *       .groupBy(TAuthor.FIRST_NAME, TAuthor.LAST_NAME)
    + *       .having(create.count().greaterThan(5))
    + *       .orderBy(TAuthor.LAST_NAME.asc().nullsFirst())
    + *       .limit(2)
    + *       .offset(1)
    + *       .forUpdate()
    + *       .of(TAuthor.FIRST_NAME, TAuthor.LAST_NAME)
    + *       .noWait();
    + * </pre></code> Refer to the manual for more details
    + *
    + * @author Lukas Eder
    + */
    +public interface SelectForUpdateStep extends SelectFinalStep {
    +
    +    /**
    +     * Add a <code>FOR UPDATE</code> clause to the end of the query.
    +     * <p>
    +     * Note: not all SQL dialects allow for combining a <code>FOR UPDATE</code>
    +     * clause with <code>LIMIT .. OFFSET</code>, or with <code>GROUP BY</code>.
    +     * This essentially includes {@link SQLDialect#INGRES} and
    +     * {@link SQLDialect#ORACLE}. These incompatibilities are not reflected by
    +     * the jOOQ API.
    +     *
    +     * @see LockProvider#setForUpdate(boolean) see LockProvider for more details
    +     */
    +    @Support({ ASE, DB2, DERBY, H2, HSQLDB, INGRES, MYSQL, ORACLE, POSTGRES, SYBASE })
    +    SelectForUpdateOfStep forUpdate();
    +
    +    /**
    +     * Add a <code>FOR SHARE</code> clause to the end of the query.
    +     *
    +     * @see LockProvider#setForShare(boolean) see LockProvider for more details
    +     */
    +    @Support({ MYSQL, POSTGRES })
    +    SelectFinalStep forShare();
    +
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/SelectForUpdateWaitStep.java b/jOOQ/src/main/java/org/jooq/SelectForUpdateWaitStep.java
    new file mode 100644
    index 00000000000..715271c1b06
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/SelectForUpdateWaitStep.java
    @@ -0,0 +1,114 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq;
    +
    +import static org.jooq.SQLDialect.ORACLE;
    +
    +
    +/**
    + * This type is used for the {@link Select}'s DSL API when selecting generic
    + * {@link Record} types.
    + * <p>
    + * Example: <code><pre>
    + * -- get all authors' first and last names, and the number
    + * -- of books they've written in German, if they have written
    + * -- more than five books in German in the last three years
    + * -- (from 2011), and sort those authors by last names
    + * -- limiting results to the second and third row
    + *
    + *   SELECT T_AUTHOR.FIRST_NAME, T_AUTHOR.LAST_NAME, COUNT(*)
    + *     FROM T_AUTHOR
    + *     JOIN T_BOOK ON T_AUTHOR.ID = T_BOOK.AUTHOR_ID
    + *    WHERE T_BOOK.LANGUAGE = 'DE'
    + *      AND T_BOOK.PUBLISHED > '2008-01-01'
    + * GROUP BY T_AUTHOR.FIRST_NAME, T_AUTHOR.LAST_NAME
    + *   HAVING COUNT(*) > 5
    + * ORDER BY T_AUTHOR.LAST_NAME ASC NULLS FIRST
    + *    LIMIT 2
    + *   OFFSET 1
    + *      FOR UPDATE
    + *       OF FIRST_NAME, LAST_NAME
    + *       NO WAIT
    + * </pre></code> Its equivalent in jOOQ <code><pre>
    + * create.select(TAuthor.FIRST_NAME, TAuthor.LAST_NAME, create.count())
    + *       .from(T_AUTHOR)
    + *       .join(T_BOOK).on(TBook.AUTHOR_ID.equal(TAuthor.ID))
    + *       .where(TBook.LANGUAGE.equal("DE"))
    + *       .and(TBook.PUBLISHED.greaterThan(parseDate('2008-01-01')))
    + *       .groupBy(TAuthor.FIRST_NAME, TAuthor.LAST_NAME)
    + *       .having(create.count().greaterThan(5))
    + *       .orderBy(TAuthor.LAST_NAME.asc().nullsFirst())
    + *       .limit(2)
    + *       .offset(1)
    + *       .forUpdate()
    + *       .of(TAuthor.FIRST_NAME, TAuthor.LAST_NAME)
    + *       .noWait();
    + * </pre></code> Refer to the manual for more details
    + *
    + * @author Lukas Eder
    + */
    +public interface SelectForUpdateWaitStep extends SelectFinalStep {
    +
    +    /**
    +     * Add a <code>WAIT</code> clause to the <code>FOR UPDATE</code> clause at
    +     * the end of the query.
    +     * <p>
    +     * Be careful not to confuse this with {@link Object#wait(long)} !
    +     *
    +     * @see LockProvider#setForUpdateWait(int) see LockProvider for more details
    +     */
    +    @Support(ORACLE)
    +    SelectFinalStep wait(int seconds);
    +
    +    /**
    +     * Add a <code>WAIT</code> clause to the <code>FOR UPDATE</code> clause at
    +     * the end of the query.
    +     *
    +     * @see LockProvider#setForUpdateNoWait() see LockProvider for more details
    +     */
    +    @Support(ORACLE)
    +    SelectFinalStep noWait();
    +
    +    /**
    +     * Add a <code>WAIT</code> clause to the <code>FOR UPDATE</code> clause at
    +     * the end of the query.
    +     *
    +     * @see LockProvider#setForUpdateSkipLocked() see LockProvider for more
    +     *      details
    +     */
    +    @Support(ORACLE)
    +    SelectFinalStep skipLocked();
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/SelectFromStep.java b/jOOQ/src/main/java/org/jooq/SelectFromStep.java
    new file mode 100644
    index 00000000000..dcc1c9b08d3
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/SelectFromStep.java
    @@ -0,0 +1,141 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq;
    +
    +import static org.jooq.SQLDialect.CUBRID;
    +import static org.jooq.SQLDialect.ORACLE;
    +
    +import java.util.Collection;
    +
    +import org.jooq.impl.Factory;
    +
    +/**
    + * This type is used for the {@link Select}'s DSL API when selecting generic
    + * {@link Record} types.
    + * <p>
    + * Example: <code><pre>
    + * -- get all authors' first and last names, and the number
    + * -- of books they've written in German, if they have written
    + * -- more than five books in German in the last three years
    + * -- (from 2011), and sort those authors by last names
    + * -- limiting results to the second and third row
    + *
    + *   SELECT T_AUTHOR.FIRST_NAME, T_AUTHOR.LAST_NAME, COUNT(*)
    + *     FROM T_AUTHOR
    + *     JOIN T_BOOK ON T_AUTHOR.ID = T_BOOK.AUTHOR_ID
    + *    WHERE T_BOOK.LANGUAGE = 'DE'
    + *      AND T_BOOK.PUBLISHED > '2008-01-01'
    + * GROUP BY T_AUTHOR.FIRST_NAME, T_AUTHOR.LAST_NAME
    + *   HAVING COUNT(*) > 5
    + * ORDER BY T_AUTHOR.LAST_NAME ASC NULLS FIRST
    + *    LIMIT 2
    + *   OFFSET 1
    + *      FOR UPDATE
    + *       OF FIRST_NAME, LAST_NAME
    + *       NO WAIT
    + * </pre></code> Its equivalent in jOOQ <code><pre>
    + * create.select(TAuthor.FIRST_NAME, TAuthor.LAST_NAME, create.count())
    + *       .from(T_AUTHOR)
    + *       .join(T_BOOK).on(TBook.AUTHOR_ID.equal(TAuthor.ID))
    + *       .where(TBook.LANGUAGE.equal("DE"))
    + *       .and(TBook.PUBLISHED.greaterThan(parseDate('2008-01-01')))
    + *       .groupBy(TAuthor.FIRST_NAME, TAuthor.LAST_NAME)
    + *       .having(create.count().greaterThan(5))
    + *       .orderBy(TAuthor.LAST_NAME.asc().nullsFirst())
    + *       .limit(2)
    + *       .offset(1)
    + *       .forUpdate()
    + *       .of(TAuthor.FIRST_NAME, TAuthor.LAST_NAME)
    + *       .noWait();
    + * </pre></code> Refer to the manual for more details
    + *
    + * @author Lukas Eder
    + */
    +public interface SelectFromStep extends SelectWhereStep {
    +
    +    /**
    +     * Add a <code>FROM</code> clause to the query
    +     */
    +    @Support
    +    SelectJoinStep from(TableLike<?>... table);
    +
    +    /**
    +     * Add a <code>FROM</code> clause to the query
    +     */
    +    @Support
    +    SelectJoinStep from(Collection<? extends TableLike<?>> tables);
    +
    +    /**
    +     * Add a <code>FROM</code> clause to the query
    +     * <p>
    +     * <b>NOTE</b>: When inserting plain SQL into jOOQ objects, you must
    +     * guarantee syntax integrity. You may also create the possibility of
    +     * malicious SQL injection. Be sure to properly use bind variables and/or
    +     * escape literals when concatenated into SQL clauses!
    +     *
    +     * @see Factory#table(String)
    +     */
    +    @Support
    +    SelectJoinStep from(String sql);
    +
    +    /**
    +     * Add a <code>FROM</code> clause to the query
    +     * <p>
    +     * <b>NOTE</b>: When inserting plain SQL into jOOQ objects, you must
    +     * guarantee syntax integrity. You may also create the possibility of
    +     * malicious SQL injection. Be sure to properly use bind variables and/or
    +     * escape literals when concatenated into SQL clauses!
    +     *
    +     * @see Factory#table(String, Object...)
    +     */
    +    @Support
    +    SelectJoinStep from(String sql, Object... bindings);
    +
    +    /**
    +     * Add an Oracle-style hint to the preceding select clause
    +     * <p>
    +     * Example: <code><pre>
    +     * Factory create = new Factory();
    +     *
    +     * create.select(field1, field2)
    +     *       .hint("/*+ALL_ROWS&#42;/")
    +     *       .from(table1)
    +     *       .execute();
    +     * </pre></code>
    +     */
    +    @Support({ CUBRID, ORACLE })
    +    SelectFromStep hint(String hint);
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/SelectGroupByStep.java b/jOOQ/src/main/java/org/jooq/SelectGroupByStep.java
    new file mode 100644
    index 00000000000..75c0433a5a9
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/SelectGroupByStep.java
    @@ -0,0 +1,95 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq;
    +
    +import java.util.Collection;
    +
    +/**
    + * This type is used for the {@link Select}'s DSL API when selecting generic
    + * {@link Record} types.
    + * <p>
    + * Example: <code><pre>
    + * -- get all authors' first and last names, and the number
    + * -- of books they've written in German, if they have written
    + * -- more than five books in German in the last three years
    + * -- (from 2011), and sort those authors by last names
    + * -- limiting results to the second and third row
    + *
    + *   SELECT T_AUTHOR.FIRST_NAME, T_AUTHOR.LAST_NAME, COUNT(*)
    + *     FROM T_AUTHOR
    + *     JOIN T_BOOK ON T_AUTHOR.ID = T_BOOK.AUTHOR_ID
    + *    WHERE T_BOOK.LANGUAGE = 'DE'
    + *      AND T_BOOK.PUBLISHED > '2008-01-01'
    + * GROUP BY T_AUTHOR.FIRST_NAME, T_AUTHOR.LAST_NAME
    + *   HAVING COUNT(*) > 5
    + * ORDER BY T_AUTHOR.LAST_NAME ASC NULLS FIRST
    + *    LIMIT 2
    + *   OFFSET 1
    + *      FOR UPDATE
    + *       OF FIRST_NAME, LAST_NAME
    + *       NO WAIT
    + * </pre></code> Its equivalent in jOOQ <code><pre>
    + * create.select(TAuthor.FIRST_NAME, TAuthor.LAST_NAME, create.count())
    + *       .from(T_AUTHOR)
    + *       .join(T_BOOK).on(TBook.AUTHOR_ID.equal(TAuthor.ID))
    + *       .where(TBook.LANGUAGE.equal("DE"))
    + *       .and(TBook.PUBLISHED.greaterThan(parseDate('2008-01-01')))
    + *       .groupBy(TAuthor.FIRST_NAME, TAuthor.LAST_NAME)
    + *       .having(create.count().greaterThan(5))
    + *       .orderBy(TAuthor.LAST_NAME.asc().nullsFirst())
    + *       .limit(2)
    + *       .offset(1)
    + *       .forUpdate()
    + *       .of(TAuthor.FIRST_NAME, TAuthor.LAST_NAME)
    + *       .noWait();
    + * </pre></code> Refer to the manual for more details
    + *
    + * @author Lukas Eder
    + */
    +public interface SelectGroupByStep extends SelectHavingStep {
    +
    +    /**
    +     * Add a <code>GROUP BY</code> clause to the query
    +     */
    +    @Support
    +    SelectHavingStep groupBy(Field<?>... fields);
    +
    +    /**
    +     * Add a <code>GROUP BY</code> clause to the query
    +     */
    +    @Support
    +    SelectHavingStep groupBy(Collection<? extends Field<?>> fields);
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/SelectHavingConditionStep.java b/jOOQ/src/main/java/org/jooq/SelectHavingConditionStep.java
    new file mode 100644
    index 00000000000..7b9078487ba
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/SelectHavingConditionStep.java
    @@ -0,0 +1,195 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq;
    +
    +import org.jooq.impl.Factory;
    +
    +/**
    + * This type is used for the {@link Select}'s DSL API when selecting generic
    + * {@link Record} types.
    + * <p>
    + * Example: <code><pre>
    + * -- get all authors' first and last names, and the number
    + * -- of books they've written in German, if they have written
    + * -- more than five books in German in the last three years
    + * -- (from 2011), and sort those authors by last names
    + * -- limiting results to the second and third row
    + *
    + *   SELECT T_AUTHOR.FIRST_NAME, T_AUTHOR.LAST_NAME, COUNT(*)
    + *     FROM T_AUTHOR
    + *     JOIN T_BOOK ON T_AUTHOR.ID = T_BOOK.AUTHOR_ID
    + *    WHERE T_BOOK.LANGUAGE = 'DE'
    + *      AND T_BOOK.PUBLISHED > '2008-01-01'
    + * GROUP BY T_AUTHOR.FIRST_NAME, T_AUTHOR.LAST_NAME
    + *   HAVING COUNT(*) > 5
    + * ORDER BY T_AUTHOR.LAST_NAME ASC NULLS FIRST
    + *    LIMIT 2
    + *   OFFSET 1
    + *      FOR UPDATE
    + *       OF FIRST_NAME, LAST_NAME
    + *       NO WAIT
    + * </pre></code> Its equivalent in jOOQ <code><pre>
    + * create.select(TAuthor.FIRST_NAME, TAuthor.LAST_NAME, create.count())
    + *       .from(T_AUTHOR)
    + *       .join(T_BOOK).on(TBook.AUTHOR_ID.equal(TAuthor.ID))
    + *       .where(TBook.LANGUAGE.equal("DE"))
    + *       .and(TBook.PUBLISHED.greaterThan(parseDate('2008-01-01')))
    + *       .groupBy(TAuthor.FIRST_NAME, TAuthor.LAST_NAME)
    + *       .having(create.count().greaterThan(5))
    + *       .orderBy(TAuthor.LAST_NAME.asc().nullsFirst())
    + *       .limit(2)
    + *       .offset(1)
    + *       .forUpdate()
    + *       .of(TAuthor.FIRST_NAME, TAuthor.LAST_NAME)
    + *       .noWait();
    + * </pre></code> Refer to the manual for more details
    + *
    + * @author Lukas Eder
    + */
    +public interface SelectHavingConditionStep extends SelectOrderByStep {
    +
    +    /**
    +     * Combine the currently assembled conditions with another one using the
    +     * {@link Operator#AND} operator and proceed to the next step.
    +     */
    +    @Support
    +    SelectHavingConditionStep and(Condition condition);
    +
    +    /**
    +     * Combine the currently assembled conditions with another one using the
    +     * {@link Operator#AND} operator and proceed to the next step.
    +     * <p>
    +     * <b>NOTE</b>: When inserting plain SQL into jOOQ objects, you must
    +     * guarantee syntax integrity. You may also create the possibility of
    +     * malicious SQL injection. Be sure to properly use bind variables and/or
    +     * escape literals when concatenated into SQL clauses!
    +     *
    +     * @see Factory#condition(String)
    +     */
    +    @Support
    +    SelectHavingConditionStep and(String sql);
    +
    +    /**
    +     * Combine the currently assembled conditions with another one using the
    +     * {@link Operator#AND} operator and proceed to the next step.
    +     * <p>
    +     * <b>NOTE</b>: When inserting plain SQL into jOOQ objects, you must
    +     * guarantee syntax integrity. You may also create the possibility of
    +     * malicious SQL injection. Be sure to properly use bind variables and/or
    +     * escape literals when concatenated into SQL clauses!
    +     *
    +     * @see Factory#condition(String, Object...)
    +     */
    +    @Support
    +    SelectHavingConditionStep and(String sql, Object... bindings);
    +
    +    /**
    +     * Combine the currently assembled conditions with a negated other one using
    +     * the {@link Operator#AND} operator and proceed to the next step.
    +     */
    +    @Support
    +    SelectHavingConditionStep andNot(Condition condition);
    +
    +    /**
    +     * Combine the currently assembled conditions with an EXISTS clause using
    +     * the {@link Operator#AND} operator and proceed to the next step.
    +     */
    +    @Support
    +    SelectHavingConditionStep andExists(Select<?> select);
    +
    +    /**
    +     * Combine the currently assembled conditions with a NOT EXISTS clause using
    +     * the {@link Operator#AND} operator and proceed to the next step.
    +     */
    +    @Support
    +    SelectHavingConditionStep andNotExists(Select<?> select);
    +
    +    /**
    +     * Combine the currently assembled conditions with another one using the
    +     * {@link Operator#OR} operator and proceed to the next step.
    +     */
    +    @Support
    +    SelectHavingConditionStep or(Condition condition);
    +
    +    /**
    +     * Combine the currently assembled conditions with another one using the
    +     * {@link Operator#OR} operator and proceed to the next step.
    +     * <p>
    +     * <b>NOTE</b>: When inserting plain SQL into jOOQ objects, you must
    +     * guarantee syntax integrity. You may also create the possibility of
    +     * malicious SQL injection. Be sure to properly use bind variables and/or
    +     * escape literals when concatenated into SQL clauses!
    +     *
    +     * @see Factory#condition(String)
    +     */
    +    @Support
    +    SelectHavingConditionStep or(String sql);
    +
    +    /**
    +     * Combine the currently assembled conditions with another one using the
    +     * {@link Operator#OR} operator and proceed to the next step.
    +     * <p>
    +     * <b>NOTE</b>: When inserting plain SQL into jOOQ objects, you must
    +     * guarantee syntax integrity. You may also create the possibility of
    +     * malicious SQL injection. Be sure to properly use bind variables and/or
    +     * escape literals when concatenated into SQL clauses!
    +     *
    +     * @see Factory#condition(String, Object...)
    +     */
    +    @Support
    +    SelectHavingConditionStep or(String sql, Object... bindings);
    +
    +    /**
    +     * Combine the currently assembled conditions with a negated other one using
    +     * the {@link Operator#OR} operator and proceed to the next step.
    +     */
    +    @Support
    +    SelectHavingConditionStep orNot(Condition condition);
    +
    +    /**
    +     * Combine the currently assembled conditions with an EXISTS clause using
    +     * the {@link Operator#OR} operator and proceed to the next step.
    +     */
    +    @Support
    +    SelectHavingConditionStep orExists(Select<?> select);
    +
    +    /**
    +     * Combine the currently assembled conditions with a NOT EXISTS clause using
    +     * the {@link Operator#OR} operator and proceed to the next step.
    +     */
    +    @Support
    +    SelectHavingConditionStep orNotExists(Select<?> select);
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/SelectHavingStep.java b/jOOQ/src/main/java/org/jooq/SelectHavingStep.java
    new file mode 100644
    index 00000000000..0238d2ac917
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/SelectHavingStep.java
    @@ -0,0 +1,123 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq;
    +
    +import java.util.Collection;
    +
    +import org.jooq.impl.Factory;
    +
    +/**
    + * This type is used for the {@link Select}'s DSL API when selecting generic
    + * {@link Record} types.
    + * <p>
    + * Example: <code><pre>
    + * -- get all authors' first and last names, and the number
    + * -- of books they've written in German, if they have written
    + * -- more than five books in German in the last three years
    + * -- (from 2011), and sort those authors by last names
    + * -- limiting results to the second and third row
    + *
    + *   SELECT T_AUTHOR.FIRST_NAME, T_AUTHOR.LAST_NAME, COUNT(*)
    + *     FROM T_AUTHOR
    + *     JOIN T_BOOK ON T_AUTHOR.ID = T_BOOK.AUTHOR_ID
    + *    WHERE T_BOOK.LANGUAGE = 'DE'
    + *      AND T_BOOK.PUBLISHED > '2008-01-01'
    + * GROUP BY T_AUTHOR.FIRST_NAME, T_AUTHOR.LAST_NAME
    + *   HAVING COUNT(*) > 5
    + * ORDER BY T_AUTHOR.LAST_NAME ASC NULLS FIRST
    + *    LIMIT 2
    + *   OFFSET 1
    + *      FOR UPDATE
    + *       OF FIRST_NAME, LAST_NAME
    + *       NO WAIT
    + * </pre></code> Its equivalent in jOOQ <code><pre>
    + * create.select(TAuthor.FIRST_NAME, TAuthor.LAST_NAME, create.count())
    + *       .from(T_AUTHOR)
    + *       .join(T_BOOK).on(TBook.AUTHOR_ID.equal(TAuthor.ID))
    + *       .where(TBook.LANGUAGE.equal("DE"))
    + *       .and(TBook.PUBLISHED.greaterThan(parseDate('2008-01-01')))
    + *       .groupBy(TAuthor.FIRST_NAME, TAuthor.LAST_NAME)
    + *       .having(create.count().greaterThan(5))
    + *       .orderBy(TAuthor.LAST_NAME.asc().nullsFirst())
    + *       .limit(2)
    + *       .offset(1)
    + *       .forUpdate()
    + *       .of(TAuthor.FIRST_NAME, TAuthor.LAST_NAME)
    + *       .noWait();
    + * </pre></code> Refer to the manual for more details
    + *
    + * @author Lukas Eder
    + */
    +public interface SelectHavingStep extends SelectOrderByStep {
    +
    +    /**
    +     * Add a <code>HAVING</code> clause to the query
    +     */
    +    @Support
    +    SelectHavingConditionStep having(Condition... conditions);
    +
    +    /**
    +     * Add a <code>HAVING</code> clause to the query
    +     */
    +    @Support
    +    SelectHavingConditionStep having(Collection<Condition> conditions);
    +
    +    /**
    +     * Add a <code>HAVING</code> clause to the query
    +     * <p>
    +     * <b>NOTE</b>: When inserting plain SQL into jOOQ objects, you must
    +     * guarantee syntax integrity. You may also create the possibility of
    +     * malicious SQL injection. Be sure to properly use bind variables and/or
    +     * escape literals when concatenated into SQL clauses!
    +     *
    +     * @see Factory#condition(String)
    +     */
    +    @Support
    +    SelectHavingConditionStep having(String sql);
    +
    +    /**
    +     * Add a <code>HAVING</code> clause to the query
    +     * <p>
    +     * <b>NOTE</b>: When inserting plain SQL into jOOQ objects, you must
    +     * guarantee syntax integrity. You may also create the possibility of
    +     * malicious SQL injection. Be sure to properly use bind variables and/or
    +     * escape literals when concatenated into SQL clauses!
    +     *
    +     * @see Factory#condition(String, Object...)
    +     */
    +    @Support
    +    SelectHavingConditionStep having(String sql, Object... bindings);
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/SelectJoinStep.java b/jOOQ/src/main/java/org/jooq/SelectJoinStep.java
    new file mode 100644
    index 00000000000..c9c07b2ed57
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/SelectJoinStep.java
    @@ -0,0 +1,491 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq;
    +
    +import static org.jooq.SQLDialect.ASE;
    +import static org.jooq.SQLDialect.CUBRID;
    +import static org.jooq.SQLDialect.DB2;
    +import static org.jooq.SQLDialect.DERBY;
    +import static org.jooq.SQLDialect.H2;
    +import static org.jooq.SQLDialect.HSQLDB;
    +import static org.jooq.SQLDialect.INGRES;
    +import static org.jooq.SQLDialect.MYSQL;
    +import static org.jooq.SQLDialect.ORACLE;
    +import static org.jooq.SQLDialect.POSTGRES;
    +import static org.jooq.SQLDialect.SQLSERVER;
    +import static org.jooq.SQLDialect.SYBASE;
    +
    +import org.jooq.impl.Factory;
    +
    +/**
    + * This type is used for the {@link Select}'s DSL API when selecting generic
    + * {@link Record} types.
    + * <p>
    + * Example: <code><pre>
    + * -- get all authors' first and last names, and the number
    + * -- of books they've written in German, if they have written
    + * -- more than five books in German in the last three years
    + * -- (from 2011), and sort those authors by last names
    + * -- limiting results to the second and third row
    + *
    + *   SELECT T_AUTHOR.FIRST_NAME, T_AUTHOR.LAST_NAME, COUNT(*)
    + *     FROM T_AUTHOR
    + *     JOIN T_BOOK ON T_AUTHOR.ID = T_BOOK.AUTHOR_ID
    + *    WHERE T_BOOK.LANGUAGE = 'DE'
    + *      AND T_BOOK.PUBLISHED > '2008-01-01'
    + * GROUP BY T_AUTHOR.FIRST_NAME, T_AUTHOR.LAST_NAME
    + *   HAVING COUNT(*) > 5
    + * ORDER BY T_AUTHOR.LAST_NAME ASC NULLS FIRST
    + *    LIMIT 2
    + *   OFFSET 1
    + *      FOR UPDATE
    + *       OF FIRST_NAME, LAST_NAME
    + *       NO WAIT
    + * </pre></code> Its equivalent in jOOQ <code><pre>
    + * create.select(TAuthor.FIRST_NAME, TAuthor.LAST_NAME, create.count())
    + *       .from(T_AUTHOR)
    + *       .join(T_BOOK).on(TBook.AUTHOR_ID.equal(TAuthor.ID))
    + *       .where(TBook.LANGUAGE.equal("DE"))
    + *       .and(TBook.PUBLISHED.greaterThan(parseDate('2008-01-01')))
    + *       .groupBy(TAuthor.FIRST_NAME, TAuthor.LAST_NAME)
    + *       .having(create.count().greaterThan(5))
    + *       .orderBy(TAuthor.LAST_NAME.asc().nullsFirst())
    + *       .limit(2)
    + *       .offset(1)
    + *       .forUpdate()
    + *       .of(TAuthor.FIRST_NAME, TAuthor.LAST_NAME)
    + *       .noWait();
    + * </pre></code> Refer to the manual for more details
    + *
    + * @author Lukas Eder
    + */
    +public interface SelectJoinStep extends SelectWhereStep {
    +
    +    /**
    +     * Convenience method to <code>INNER JOIN</code> a table to the last table
    +     * added to the <code>FROM</code> clause using {@link Table#join(TableLike)}
    +     *
    +     * @see Table#join(TableLike)
    +     */
    +    @Support
    +    SelectOnStep join(TableLike<?> table);
    +
    +    /**
    +     * Convenience method to <code>INNER JOIN</code> a table to the last table
    +     * added to the <code>FROM</code> clause using {@link Table#join(String)}
    +     * <p>
    +     * <b>NOTE</b>: When inserting plain SQL into jOOQ objects, you must
    +     * guarantee syntax integrity. You may also create the possibility of
    +     * malicious SQL injection. Be sure to properly use bind variables and/or
    +     * escape literals when concatenated into SQL clauses!
    +     *
    +     * @see Factory#table(String)
    +     * @see Table#join(String)
    +     */
    +    @Support
    +    SelectOnStep join(String sql);
    +
    +    /**
    +     * Convenience method to <code>INNER JOIN</code> a table to the last table
    +     * added to the <code>FROM</code> clause using
    +     * {@link Table#join(String, Object...)}
    +     * <p>
    +     * <b>NOTE</b>: When inserting plain SQL into jOOQ objects, you must
    +     * guarantee syntax integrity. You may also create the possibility of
    +     * malicious SQL injection. Be sure to properly use bind variables and/or
    +     * escape literals when concatenated into SQL clauses!
    +     *
    +     * @see Factory#table(String, Object...)
    +     * @see Table#join(String, Object...)
    +     */
    +    @Support
    +    SelectOnStep join(String sql, Object... bindings);
    +
    +    /**
    +     * Convenience method to <code>CROSS JOIN</code> a table to the last table
    +     * added to the <code>FROM</code> clause using
    +     * {@link Table#crossJoin(TableLike)}
    +     * <p>
    +     * If this syntax is unavailable, it is simulated with a regular
    +     * <code>INNER JOIN</code>. The following two constructs are equivalent:
    +     * <code><pre>
    +     * A cross join B
    +     * A join B on 1 = 1
    +     * </pre></code>
    +     *
    +     * @see Table#crossJoin(TableLike)
    +     */
    +    @Support
    +    SelectJoinStep crossJoin(TableLike<?> table);
    +
    +    /**
    +     * Convenience method to <code>CROSS JOIN</code> a table to the last table
    +     * added to the <code>FROM</code> clause using
    +     * {@link Table#crossJoin(String)}
    +     * <p>
    +     * If this syntax is unavailable, it is simulated with a regular
    +     * <code>INNER JOIN</code>. The following two constructs are equivalent:
    +     * <code><pre>
    +     * A cross join B
    +     * A join B on 1 = 1
    +     * </pre></code>
    +     * <p>
    +     * <b>NOTE</b>: When inserting plain SQL into jOOQ objects, you must
    +     * guarantee syntax integrity. You may also create the possibility of
    +     * malicious SQL injection. Be sure to properly use bind variables and/or
    +     * escape literals when concatenated into SQL clauses!
    +     *
    +     * @see Factory#table(String)
    +     * @see Table#crossJoin(String)
    +     */
    +    @Support
    +    SelectJoinStep crossJoin(String sql);
    +
    +    /**
    +     * Convenience method to <code>CROSS JOIN</code> a table to the last table
    +     * added to the <code>FROM</code> clause using
    +     * {@link Table#crossJoin(String, Object...)}
    +     * <p>
    +     * If this syntax is unavailable, it is simulated with a regular
    +     * <code>INNER JOIN</code>. The following two constructs are equivalent:
    +     * <code><pre>
    +     * A cross join B
    +     * A join B on 1 = 1
    +     * </pre></code>
    +     * <p>
    +     * <b>NOTE</b>: When inserting plain SQL into jOOQ objects, you must
    +     * guarantee syntax integrity. You may also create the possibility of
    +     * malicious SQL injection. Be sure to properly use bind variables and/or
    +     * escape literals when concatenated into SQL clauses!
    +     *
    +     * @see Factory#table(String, Object...)
    +     * @see Table#crossJoin(String, Object...)
    +     */
    +    @Support
    +    SelectJoinStep crossJoin(String sql, Object... bindings);
    +
    +    /**
    +     * Convenience method to <code>LEFT OUTER JOIN</code> a table to the last
    +     * table added to the <code>FROM</code> clause using
    +     * {@link Table#leftOuterJoin(TableLike)}
    +     *
    +     * @see Table#leftOuterJoin(TableLike)
    +     */
    +    @Support
    +    SelectOnStep leftOuterJoin(TableLike<?> table);
    +
    +    /**
    +     * Convenience method to <code>LEFT OUTER JOIN</code> a table to the last
    +     * table added to the <code>FROM</code> clause using
    +     * {@link Table#leftOuterJoin(String)}
    +     * <p>
    +     * <b>NOTE</b>: When inserting plain SQL into jOOQ objects, you must
    +     * guarantee syntax integrity. You may also create the possibility of
    +     * malicious SQL injection. Be sure to properly use bind variables and/or
    +     * escape literals when concatenated into SQL clauses!
    +     *
    +     * @see Factory#table(String)
    +     * @see Table#leftOuterJoin(String)
    +     */
    +    @Support
    +    SelectOnStep leftOuterJoin(String sql);
    +
    +    /**
    +     * Convenience method to <code>LEFT OUTER JOIN</code> a table to the last
    +     * table added to the <code>FROM</code> clause using
    +     * {@link Table#leftOuterJoin(String, Object...)}
    +     * <p>
    +     * <b>NOTE</b>: When inserting plain SQL into jOOQ objects, you must
    +     * guarantee syntax integrity. You may also create the possibility of
    +     * malicious SQL injection. Be sure to properly use bind variables and/or
    +     * escape literals when concatenated into SQL clauses!
    +     *
    +     * @see Factory#table(String, Object...)
    +     * @see Table#leftOuterJoin(String, Object...)
    +     */
    +    @Support
    +    SelectOnStep leftOuterJoin(String sql, Object... bindings);
    +
    +    /**
    +     * Convenience method to <code>RIGHT OUTER JOIN</code> a table to the last
    +     * table added to the <code>FROM</code> clause using
    +     * {@link Table#rightOuterJoin(TableLike)}
    +     * <p>
    +     * This is only possible where the underlying RDBMS supports it
    +     *
    +     * @see Table#rightOuterJoin(TableLike)
    +     */
    +    @Support({ ASE, CUBRID, DB2, DERBY, H2, HSQLDB, INGRES, MYSQL, ORACLE, POSTGRES, SQLSERVER, SYBASE })
    +    SelectOnStep rightOuterJoin(TableLike<?> table);
    +
    +    /**
    +     * Convenience method to <code>RIGHT OUTER JOIN</code> a table to the last
    +     * table added to the <code>FROM</code> clause using
    +     * {@link Table#rightOuterJoin(String)}
    +     * <p>
    +     * This is only possible where the underlying RDBMS supports it
    +     * <p>
    +     * <b>NOTE</b>: When inserting plain SQL into jOOQ objects, you must
    +     * guarantee syntax integrity. You may also create the possibility of
    +     * malicious SQL injection. Be sure to properly use bind variables and/or
    +     * escape literals when concatenated into SQL clauses!
    +     *
    +     * @see Factory#table(String)
    +     * @see Table#rightOuterJoin(String)
    +     */
    +    @Support({ ASE, CUBRID, DB2, DERBY, H2, HSQLDB, INGRES, MYSQL, ORACLE, POSTGRES, SQLSERVER, SYBASE })
    +    SelectOnStep rightOuterJoin(String sql);
    +
    +    /**
    +     * Convenience method to <code>RIGHT OUTER JOIN</code> a table to the last
    +     * table added to the <code>FROM</code> clause using
    +     * {@link Table#rightOuterJoin(String, Object...)}
    +     * <p>
    +     * This is only possible where the underlying RDBMS supports it
    +     * <p>
    +     * <b>NOTE</b>: When inserting plain SQL into jOOQ objects, you must
    +     * guarantee syntax integrity. You may also create the possibility of
    +     * malicious SQL injection. Be sure to properly use bind variables and/or
    +     * escape literals when concatenated into SQL clauses!
    +     *
    +     * @see Factory#table(String, Object...)
    +     * @see Table#rightOuterJoin(String, Object...)
    +     */
    +    @Support({ ASE, CUBRID, DB2, DERBY, H2, HSQLDB, INGRES, MYSQL, ORACLE, POSTGRES, SQLSERVER, SYBASE })
    +    SelectOnStep rightOuterJoin(String sql, Object... bindings);
    +
    +    /**
    +     * Convenience method to <code>FULL OUTER JOIN</code> a table to the last
    +     * table added to the <code>FROM</code> clause using
    +     * {@link Table#fullOuterJoin(TableLike)}
    +     * <p>
    +     * This is only possible where the underlying RDBMS supports it
    +     *
    +     * @see Table#fullOuterJoin(TableLike)
    +     */
    +    @Support({ DB2, HSQLDB, INGRES, ORACLE, POSTGRES, SQLSERVER, SYBASE })
    +    SelectOnStep fullOuterJoin(TableLike<?> table);
    +
    +    /**
    +     * Convenience method to <code>FULL OUTER JOIN</code> a table to the last
    +     * table added to the <code>FROM</code> clause using
    +     * {@link Table#fullOuterJoin(String)}
    +     * <p>
    +     * This is only possible where the underlying RDBMS supports it
    +     * <p>
    +     * <b>NOTE</b>: When inserting plain SQL into jOOQ objects, you must
    +     * guarantee syntax integrity. You may also create the possibility of
    +     * malicious SQL injection. Be sure to properly use bind variables and/or
    +     * escape literals when concatenated into SQL clauses!
    +     *
    +     * @see Factory#table(String)
    +     * @see Table#fullOuterJoin(String)
    +     */
    +    @Support({ DB2, HSQLDB, INGRES, ORACLE, POSTGRES, SQLSERVER, SYBASE })
    +    SelectOnStep fullOuterJoin(String sql);
    +
    +    /**
    +     * Convenience method to <code>FULL OUTER JOIN</code> a tableto the last
    +     * table added to the <code>FROM</code> clause using
    +     * {@link Table#fullOuterJoin(String, Object...)}
    +     * <p>
    +     * This is only possible where the underlying RDBMS supports it
    +     * <p>
    +     * <b>NOTE</b>: When inserting plain SQL into jOOQ objects, you must
    +     * guarantee syntax integrity. You may also create the possibility of
    +     * malicious SQL injection. Be sure to properly use bind variables and/or
    +     * escape literals when concatenated into SQL clauses!
    +     *
    +     * @see Factory#table(String, Object...)
    +     * @see Table#fullOuterJoin(String, Object...)
    +     */
    +    @Support({ DB2, HSQLDB, INGRES, ORACLE, POSTGRES, SQLSERVER, SYBASE })
    +    SelectOnStep fullOuterJoin(String sql, Object... bindings);
    +
    +    /**
    +     * Convenience method to <code>NATURAL JOIN</code> a table to the last table
    +     * added to the <code>FROM</code> clause using
    +     * {@link Table#naturalJoin(TableLike)}
    +     * <p>
    +     * Natural joins are supported by most RDBMS. If they aren't supported, they
    +     * are simulated if jOOQ has enough information.
    +     *
    +     * @see Table#naturalJoin(TableLike)
    +     */
    +    @Support
    +    SelectJoinStep naturalJoin(TableLike<?> table);
    +
    +    /**
    +     * Convenience method to <code>NATURAL JOIN</code> a table to the last table
    +     * added to the <code>FROM</code> clause using
    +     * {@link Table#naturalJoin(String)}
    +     * <p>
    +     * Natural joins are supported by most RDBMS. If they aren't supported, they
    +     * are simulated if jOOQ has enough information.
    +     * <p>
    +     * <b>NOTE</b>: When inserting plain SQL into jOOQ objects, you must
    +     * guarantee syntax integrity. You may also create the possibility of
    +     * malicious SQL injection. Be sure to properly use bind variables and/or
    +     * escape literals when concatenated into SQL clauses!
    +     *
    +     * @see Factory#table(String)
    +     * @see Table#naturalJoin(String)
    +     */
    +    @Support
    +    SelectJoinStep naturalJoin(String sql);
    +
    +    /**
    +     * Convenience method to <code>NATURAL JOIN</code> a table to the last table
    +     * added to the <code>FROM</code> clause using
    +     * {@link Table#naturalJoin(String, Object...)}
    +     * <p>
    +     * Natural joins are supported by most RDBMS. If they aren't supported, they
    +     * are simulated if jOOQ has enough information.
    +     * <p>
    +     * <b>NOTE</b>: When inserting plain SQL into jOOQ objects, you must
    +     * guarantee syntax integrity. You may also create the possibility of
    +     * malicious SQL injection. Be sure to properly use bind variables and/or
    +     * escape literals when concatenated into SQL clauses!
    +     *
    +     * @see Factory#table(String, Object...)
    +     * @see Table#naturalJoin(String, Object...)
    +     */
    +    @Support
    +    SelectJoinStep naturalJoin(String sql, Object... bindings);
    +
    +    /**
    +     * Convenience method to <code>NATURAL LEFT OUTER JOIN</code> a table to the
    +     * last table added to the <code>FROM</code> clause using
    +     * {@link Table#naturalLeftOuterJoin(TableLike)}
    +     * <p>
    +     * Natural joins are supported by most RDBMS. If they aren't supported, they
    +     * are simulated if jOOQ has enough information.
    +     *
    +     * @see Table#naturalLeftOuterJoin(TableLike)
    +     */
    +    @Support
    +    SelectJoinStep naturalLeftOuterJoin(TableLike<?> table);
    +
    +    /**
    +     * Convenience method to <code>NATURAL LEFT OUTER JOIN</code> a table to the
    +     * last table added to the <code>FROM</code> clause using
    +     * {@link Table#naturalLeftOuterJoin(String)}
    +     * <p>
    +     * Natural joins are supported by most RDBMS. If they aren't supported, they
    +     * are simulated if jOOQ has enough information.
    +     * <p>
    +     * <b>NOTE</b>: When inserting plain SQL into jOOQ objects, you must
    +     * guarantee syntax integrity. You may also create the possibility of
    +     * malicious SQL injection. Be sure to properly use bind variables and/or
    +     * escape literals when concatenated into SQL clauses!
    +     *
    +     * @see Factory#table(String)
    +     * @see Table#naturalLeftOuterJoin(String)
    +     */
    +    @Support
    +    SelectJoinStep naturalLeftOuterJoin(String sql);
    +
    +    /**
    +     * Convenience method to <code>NATURAL LEFT OUTER JOIN</code> a table to the
    +     * last table added to the <code>FROM</code> clause using
    +     * {@link Table#naturalLeftOuterJoin(String, Object...)}
    +     * <p>
    +     * Natural joins are supported by most RDBMS. If they aren't supported, they
    +     * are simulated if jOOQ has enough information.
    +     * <p>
    +     * <b>NOTE</b>: When inserting plain SQL into jOOQ objects, you must
    +     * guarantee syntax integrity. You may also create the possibility of
    +     * malicious SQL injection. Be sure to properly use bind variables and/or
    +     * escape literals when concatenated into SQL clauses!
    +     *
    +     * @see Factory#table(String, Object...)
    +     * @see Table#naturalLeftOuterJoin(String, Object...)
    +     */
    +    @Support
    +    SelectJoinStep naturalLeftOuterJoin(String sql, Object... bindings);
    +
    +    /**
    +     * Convenience method to <code>NATURAL RIGHT OUTER JOIN</code> a table to
    +     * the last table added to the <code>FROM</code> clause using
    +     * {@link Table#naturalRightOuterJoin(TableLike)}
    +     * <p>
    +     * Natural joins are supported by most RDBMS. If they aren't supported, they
    +     * are simulated if jOOQ has enough information.
    +     *
    +     * @see Table#naturalRightOuterJoin(TableLike)
    +     */
    +    @Support({ ASE, CUBRID, DB2, DERBY, H2, HSQLDB, INGRES, MYSQL, ORACLE, POSTGRES, SQLSERVER, SYBASE })
    +    SelectJoinStep naturalRightOuterJoin(TableLike<?> table);
    +
    +    /**
    +     * Convenience method to <code>NATURAL RIGHT OUTER JOIN</code> a table to
    +     * the last table added to the <code>FROM</code> clause using
    +     * {@link Table#naturalRightOuterJoin(String)}
    +     * <p>
    +     * Natural joins are supported by most RDBMS. If they aren't supported, they
    +     * are simulated if jOOQ has enough information.
    +     * <p>
    +     * <b>NOTE</b>: When inserting plain SQL into jOOQ objects, you must
    +     * guarantee syntax integrity. You may also create the possibility of
    +     * malicious SQL injection. Be sure to properly use bind variables and/or
    +     * escape literals when concatenated into SQL clauses!
    +     *
    +     * @see Factory#table(String)
    +     * @see Table#naturalRightOuterJoin(String)
    +     */
    +    @Support({ ASE, CUBRID, DB2, DERBY, H2, HSQLDB, INGRES, MYSQL, ORACLE, POSTGRES, SQLSERVER, SYBASE })
    +    SelectJoinStep naturalRightOuterJoin(String sql);
    +
    +    /**
    +     * Convenience method to <code>NATURAL RIGHT OUTER JOIN</code> a table to
    +     * the last table added to the <code>FROM</code> clause using
    +     * {@link Table#naturalRightOuterJoin(String, Object...)}
    +     * <p>
    +     * Natural joins are supported by most RDBMS. If they aren't supported, they
    +     * are simulated if jOOQ has enough information.
    +     * <p>
    +     * <b>NOTE</b>: When inserting plain SQL into jOOQ objects, you must
    +     * guarantee syntax integrity. You may also create the possibility of
    +     * malicious SQL injection. Be sure to properly use bind variables and/or
    +     * escape literals when concatenated into SQL clauses!
    +     *
    +     * @see Factory#table(String, Object...)
    +     * @see Table#naturalRightOuterJoin(String, Object...)
    +     */
    +    @Support({ ASE, CUBRID, DB2, DERBY, H2, HSQLDB, INGRES, MYSQL, ORACLE, POSTGRES, SQLSERVER, SYBASE })
    +    SelectJoinStep naturalRightOuterJoin(String sql, Object... bindings);
    +
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/SelectLimitStep.java b/jOOQ/src/main/java/org/jooq/SelectLimitStep.java
    new file mode 100644
    index 00000000000..0dcd269b253
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/SelectLimitStep.java
    @@ -0,0 +1,184 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq;
    +
    +import static org.jooq.SQLDialect.CUBRID;
    +import static org.jooq.SQLDialect.DB2;
    +import static org.jooq.SQLDialect.DERBY;
    +import static org.jooq.SQLDialect.H2;
    +import static org.jooq.SQLDialect.HSQLDB;
    +import static org.jooq.SQLDialect.INGRES;
    +import static org.jooq.SQLDialect.MYSQL;
    +import static org.jooq.SQLDialect.ORACLE;
    +import static org.jooq.SQLDialect.POSTGRES;
    +import static org.jooq.SQLDialect.SQLITE;
    +import static org.jooq.SQLDialect.SQLSERVER;
    +import static org.jooq.SQLDialect.SYBASE;
    +
    +/**
    + * This type is used for the {@link Select}'s DSL API when selecting generic
    + * {@link Record} types.
    + * <p>
    + * Example: <code><pre>
    + * -- get all authors' first and last names, and the number
    + * -- of books they've written in German, if they have written
    + * -- more than five books in German in the last three years
    + * -- (from 2011), and sort those authors by last names
    + * -- limiting results to the second and third row
    + *
    + *   SELECT T_AUTHOR.FIRST_NAME, T_AUTHOR.LAST_NAME, COUNT(*)
    + *     FROM T_AUTHOR
    + *     JOIN T_BOOK ON T_AUTHOR.ID = T_BOOK.AUTHOR_ID
    + *    WHERE T_BOOK.LANGUAGE = 'DE'
    + *      AND T_BOOK.PUBLISHED > '2008-01-01'
    + * GROUP BY T_AUTHOR.FIRST_NAME, T_AUTHOR.LAST_NAME
    + *   HAVING COUNT(*) > 5
    + * ORDER BY T_AUTHOR.LAST_NAME ASC NULLS FIRST
    + *    LIMIT 2
    + *   OFFSET 1
    + *      FOR UPDATE
    + *       OF FIRST_NAME, LAST_NAME
    + *       NO WAIT
    + * </pre></code> Its equivalent in jOOQ <code><pre>
    + * create.select(TAuthor.FIRST_NAME, TAuthor.LAST_NAME, create.count())
    + *       .from(T_AUTHOR)
    + *       .join(T_BOOK).on(TBook.AUTHOR_ID.equal(TAuthor.ID))
    + *       .where(TBook.LANGUAGE.equal("DE"))
    + *       .and(TBook.PUBLISHED.greaterThan(parseDate('2008-01-01')))
    + *       .groupBy(TAuthor.FIRST_NAME, TAuthor.LAST_NAME)
    + *       .having(create.count().greaterThan(5))
    + *       .orderBy(TAuthor.LAST_NAME.asc().nullsFirst())
    + *       .limit(2)
    + *       .offset(1)
    + *       .forUpdate()
    + *       .of(TAuthor.FIRST_NAME, TAuthor.LAST_NAME)
    + *       .noWait();
    + * </pre></code> Refer to the manual for more details
    + *
    + * @author Lukas Eder
    + */
    +public interface SelectLimitStep extends SelectForUpdateStep {
    +
    +    /**
    +     * Add a <code>LIMIT</code> clause to the query
    +     * <p>
    +     * If there is no <code>LIMIT</code> or <code>TOP</code> clause in your
    +     * RDBMS, this may be simulated with a <code>ROW_NUMBER()</code> window
    +     * function and nested <code>SELECT</code> statements.
    +     * <p>
    +     * This is the same as calling {@link #limit(int, int)} with offset = 0, or
    +     * calling <code>.limit(numberOfRows).offset(0)</code>
    +     */
    +    @Support
    +    SelectOffsetStep limit(int numberOfRows);
    +
    +    /**
    +     * Add a <code>LIMIT</code> clause to the query using named parameters
    +     * <p>
    +     * Note that some dialects do not support bind values at all in
    +     * <code>LIMIT</code> or <code>TOP</code> clauses!
    +     * <p>
    +     * If there is no <code>LIMIT</code> or <code>TOP</code> clause in your
    +     * RDBMS, or the <code>LIMIT</code> or <code>TOP</code> clause does not
    +     * support bind values, this may be simulated with a
    +     * <code>ROW_NUMBER()</code> window function and nested <code>SELECT</code>
    +     * statements.
    +     * <p>
    +     * This is the same as calling {@link #limit(int, int)} with offset = 0, or
    +     * calling <code>.limit(numberOfRows).offset(0)</code>
    +     */
    +    @Support({ CUBRID, DB2, DERBY, H2, HSQLDB, MYSQL, ORACLE, POSTGRES, SQLITE, SQLSERVER, SYBASE })
    +    SelectOffsetStep limit(Param<Integer> numberOfRows);
    +
    +    /**
    +     * Add a <code>LIMIT</code> clause to the query
    +     * <p>
    +     * Note that some dialects do not support bind values at all in
    +     * <code>LIMIT</code> or <code>TOP</code> clauses!
    +     * <p>
    +     * If there is no <code>LIMIT</code> or <code>TOP</code> clause in your
    +     * RDBMS, or if your RDBMS does not natively support offsets, this is
    +     * simulated with a <code>ROW_NUMBER()</code> window function and nested
    +     * <code>SELECT</code> statements.
    +     */
    +    @Support({ CUBRID, DB2, DERBY, H2, HSQLDB, INGRES, MYSQL, ORACLE, POSTGRES, SQLITE, SQLSERVER, SYBASE })
    +    SelectForUpdateStep limit(int offset, int numberOfRows);
    +
    +    /**
    +     * Add a <code>LIMIT</code> clause to the query using named parameters
    +     * <p>
    +     * Note that some dialects do not support bind values at all in
    +     * <code>LIMIT</code> or <code>TOP</code> clauses!
    +     * <p>
    +     * If there is no <code>LIMIT</code> or <code>TOP</code> clause in your
    +     * RDBMS, or the <code>LIMIT</code> or <code>TOP</code> clause does not
    +     * support bind values, or if your RDBMS does not natively support offsets,
    +     * this may be simulated with a <code>ROW_NUMBER()</code> window function
    +     * and nested <code>SELECT</code> statements.
    +     */
    +    @Support({ CUBRID, DB2, DERBY, H2, HSQLDB, MYSQL, ORACLE, POSTGRES, SQLITE, SQLSERVER, SYBASE })
    +    SelectForUpdateStep limit(int offset, Param<Integer> numberOfRows);
    +
    +    /**
    +     * Add a <code>LIMIT</code> clause to the query using named parameters
    +     * <p>
    +     * Note that some dialects do not support bind values at all in
    +     * <code>LIMIT</code> or <code>TOP</code> clauses!
    +     * <p>
    +     * If there is no <code>LIMIT</code> or <code>TOP</code> clause in your
    +     * RDBMS, or the <code>LIMIT</code> or <code>TOP</code> clause does not
    +     * support bind values, or if your RDBMS does not natively support offsets,
    +     * this may be simulated with a <code>ROW_NUMBER()</code> window function
    +     * and nested <code>SELECT</code> statements.
    +     */
    +    @Support({ CUBRID, DB2, DERBY, H2, HSQLDB, MYSQL, ORACLE, POSTGRES, SQLITE, SQLSERVER, SYBASE })
    +    SelectForUpdateStep limit(Param<Integer> offset, int numberOfRows);
    +
    +    /**
    +     * Add a <code>LIMIT</code> clause to the query using named parameters
    +     * <p>
    +     * Note that some dialects do not support bind values at all in
    +     * <code>LIMIT</code> or <code>TOP</code> clauses!
    +     * <p>
    +     * If there is no <code>LIMIT</code> or <code>TOP</code> clause in your
    +     * RDBMS, or the <code>LIMIT</code> or <code>TOP</code> clause does not
    +     * support bind values, or if your RDBMS does not natively support offsets,
    +     * this may be simulated with a <code>ROW_NUMBER()</code> window function
    +     * and nested <code>SELECT</code> statements.
    +     */
    +    @Support({ CUBRID, DB2, DERBY, H2, HSQLDB, MYSQL, ORACLE, POSTGRES, SQLITE, SQLSERVER, SYBASE })
    +    SelectForUpdateStep limit(Param<Integer> offset, Param<Integer> numberOfRows);
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/SelectOffsetStep.java b/jOOQ/src/main/java/org/jooq/SelectOffsetStep.java
    new file mode 100644
    index 00000000000..7a0e9de25c4
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/SelectOffsetStep.java
    @@ -0,0 +1,116 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq;
    +
    +import static org.jooq.SQLDialect.CUBRID;
    +import static org.jooq.SQLDialect.DB2;
    +import static org.jooq.SQLDialect.DERBY;
    +import static org.jooq.SQLDialect.H2;
    +import static org.jooq.SQLDialect.HSQLDB;
    +import static org.jooq.SQLDialect.INGRES;
    +import static org.jooq.SQLDialect.MYSQL;
    +import static org.jooq.SQLDialect.ORACLE;
    +import static org.jooq.SQLDialect.POSTGRES;
    +import static org.jooq.SQLDialect.SQLITE;
    +import static org.jooq.SQLDialect.SQLSERVER;
    +import static org.jooq.SQLDialect.SYBASE;
    +
    +/**
    + * This type is used for the {@link Select}'s DSL API when selecting generic
    + * {@link Record} types.
    + * <p>
    + * Example: <code><pre>
    + * -- get all authors' first and last names, and the number
    + * -- of books they've written in German, if they have written
    + * -- more than five books in German in the last three years
    + * -- (from 2011), and sort those authors by last names
    + * -- limiting results to the second and third row
    + *
    + *   SELECT T_AUTHOR.FIRST_NAME, T_AUTHOR.LAST_NAME, COUNT(*)
    + *     FROM T_AUTHOR
    + *     JOIN T_BOOK ON T_AUTHOR.ID = T_BOOK.AUTHOR_ID
    + *    WHERE T_BOOK.LANGUAGE = 'DE'
    + *      AND T_BOOK.PUBLISHED > '2008-01-01'
    + * GROUP BY T_AUTHOR.FIRST_NAME, T_AUTHOR.LAST_NAME
    + *   HAVING COUNT(*) > 5
    + * ORDER BY T_AUTHOR.LAST_NAME ASC NULLS FIRST
    + *    LIMIT 2
    + *   OFFSET 1
    + *      FOR UPDATE
    + *       OF FIRST_NAME, LAST_NAME
    + *       NO WAIT
    + * </pre></code> Its equivalent in jOOQ <code><pre>
    + * create.select(TAuthor.FIRST_NAME, TAuthor.LAST_NAME, create.count())
    + *       .from(T_AUTHOR)
    + *       .join(T_BOOK).on(TBook.AUTHOR_ID.equal(TAuthor.ID))
    + *       .where(TBook.LANGUAGE.equal("DE"))
    + *       .and(TBook.PUBLISHED.greaterThan(parseDate('2008-01-01')))
    + *       .groupBy(TAuthor.FIRST_NAME, TAuthor.LAST_NAME)
    + *       .having(create.count().greaterThan(5))
    + *       .orderBy(TAuthor.LAST_NAME.asc().nullsFirst())
    + *       .limit(2)
    + *       .offset(1)
    + *       .forUpdate()
    + *       .of(TAuthor.FIRST_NAME, TAuthor.LAST_NAME)
    + *       .noWait();
    + * </pre></code> Refer to the manual for more details
    + *
    + * @author Lukas Eder
    + */
    +public interface SelectOffsetStep extends SelectForUpdateStep {
    +
    +    /**
    +     * Add an <code>OFFSET</code> clause to the query
    +     * <p>
    +     * If there is no <code>LIMIT .. OFFSET</code> or <code>TOP</code> clause in
    +     * your RDBMS, or if your RDBMS does not natively support offsets, this is
    +     * simulated with a <code>ROW_NUMBER()</code> window function and nested
    +     * <code>SELECT</code> statements.
    +     */
    +    @Support({ CUBRID, DB2, DERBY, H2, HSQLDB, INGRES, MYSQL, ORACLE, POSTGRES, SQLITE, SQLSERVER, SYBASE })
    +    SelectForUpdateStep offset(int offset);
    +
    +    /**
    +     * Add an <code>OFFSET</code> clause to the query using a named parameter
    +     * <p>
    +     * If there is no <code>LIMIT .. OFFSET</code> or <code>TOP</code> clause in
    +     * your RDBMS, or if your RDBMS does not natively support offsets, this is
    +     * simulated with a <code>ROW_NUMBER()</code> window function and nested
    +     * <code>SELECT</code> statements.
    +     */
    +    @Support({ CUBRID, DB2, DERBY, H2, HSQLDB, INGRES, MYSQL, ORACLE, POSTGRES, SQLITE, SQLSERVER, SYBASE })
    +    SelectForUpdateStep offset(Param<Integer> offset);
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/SelectOnConditionStep.java b/jOOQ/src/main/java/org/jooq/SelectOnConditionStep.java
    new file mode 100644
    index 00000000000..b64ec3168a8
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/SelectOnConditionStep.java
    @@ -0,0 +1,195 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq;
    +
    +import org.jooq.impl.Factory;
    +
    +/**
    + * This type is used for the {@link Select}'s DSL API when selecting generic
    + * {@link Record} types.
    + * <p>
    + * Example: <code><pre>
    + * -- get all authors' first and last names, and the number
    + * -- of books they've written in German, if they have written
    + * -- more than five books in German in the last three years
    + * -- (from 2011), and sort those authors by last names
    + * -- limiting results to the second and third row
    + *
    + *   SELECT T_AUTHOR.FIRST_NAME, T_AUTHOR.LAST_NAME, COUNT(*)
    + *     FROM T_AUTHOR
    + *     JOIN T_BOOK ON T_AUTHOR.ID = T_BOOK.AUTHOR_ID
    + *    WHERE T_BOOK.LANGUAGE = 'DE'
    + *      AND T_BOOK.PUBLISHED > '2008-01-01'
    + * GROUP BY T_AUTHOR.FIRST_NAME, T_AUTHOR.LAST_NAME
    + *   HAVING COUNT(*) > 5
    + * ORDER BY T_AUTHOR.LAST_NAME ASC NULLS FIRST
    + *    LIMIT 2
    + *   OFFSET 1
    + *      FOR UPDATE
    + *       OF FIRST_NAME, LAST_NAME
    + *       NO WAIT
    + * </pre></code> Its equivalent in jOOQ <code><pre>
    + * create.select(TAuthor.FIRST_NAME, TAuthor.LAST_NAME, create.count())
    + *       .from(T_AUTHOR)
    + *       .join(T_BOOK).on(TBook.AUTHOR_ID.equal(TAuthor.ID))
    + *       .where(TBook.LANGUAGE.equal("DE"))
    + *       .and(TBook.PUBLISHED.greaterThan(parseDate('2008-01-01')))
    + *       .groupBy(TAuthor.FIRST_NAME, TAuthor.LAST_NAME)
    + *       .having(create.count().greaterThan(5))
    + *       .orderBy(TAuthor.LAST_NAME.asc().nullsFirst())
    + *       .limit(2)
    + *       .offset(1)
    + *       .forUpdate()
    + *       .of(TAuthor.FIRST_NAME, TAuthor.LAST_NAME)
    + *       .noWait();
    + * </pre></code> Refer to the manual for more details
    + *
    + * @author Lukas Eder
    + */
    +public interface SelectOnConditionStep extends SelectJoinStep {
    +
    +    /**
    +     * Combine the currently assembled conditions with another one using the
    +     * {@link Operator#AND} operator and proceed to the next step.
    +     */
    +    @Support
    +    SelectOnConditionStep and(Condition condition);
    +
    +    /**
    +     * Combine the currently assembled conditions with another one using the
    +     * {@link Operator#AND} operator and proceed to the next step.
    +     * <p>
    +     * <b>NOTE</b>: When inserting plain SQL into jOOQ objects, you must
    +     * guarantee syntax integrity. You may also create the possibility of
    +     * malicious SQL injection. Be sure to properly use bind variables and/or
    +     * escape literals when concatenated into SQL clauses!
    +     *
    +     * @see Factory#condition(String)
    +     */
    +    @Support
    +    SelectOnConditionStep and(String sql);
    +
    +    /**
    +     * Combine the currently assembled conditions with another one using the
    +     * {@link Operator#AND} operator and proceed to the next step.
    +     * <p>
    +     * <b>NOTE</b>: When inserting plain SQL into jOOQ objects, you must
    +     * guarantee syntax integrity. You may also create the possibility of
    +     * malicious SQL injection. Be sure to properly use bind variables and/or
    +     * escape literals when concatenated into SQL clauses!
    +     *
    +     * @see Factory#condition(String, Object...)
    +     */
    +    @Support
    +    SelectOnConditionStep and(String sql, Object... bindings);
    +
    +    /**
    +     * Combine the currently assembled conditions with a negated other one using
    +     * the {@link Operator#AND} operator and proceed to the next step.
    +     */
    +    @Support
    +    SelectOnConditionStep andNot(Condition condition);
    +
    +    /**
    +     * Combine the currently assembled conditions with an EXISTS clause using
    +     * the {@link Operator#AND} operator and proceed to the next step.
    +     */
    +    @Support
    +    SelectOnConditionStep andExists(Select<?> select);
    +
    +    /**
    +     * Combine the currently assembled conditions with a NOT EXISTS clause using
    +     * the {@link Operator#AND} operator and proceed to the next step.
    +     */
    +    @Support
    +    SelectOnConditionStep andNotExists(Select<?> select);
    +
    +    /**
    +     * Combine the currently assembled conditions with another one using the
    +     * {@link Operator#OR} operator and proceed to the next step.
    +     */
    +    @Support
    +    SelectOnConditionStep or(Condition condition);
    +
    +    /**
    +     * Combine the currently assembled conditions with another one using the
    +     * {@link Operator#OR} operator and proceed to the next step.
    +     * <p>
    +     * <b>NOTE</b>: When inserting plain SQL into jOOQ objects, you must
    +     * guarantee syntax integrity. You may also create the possibility of
    +     * malicious SQL injection. Be sure to properly use bind variables and/or
    +     * escape literals when concatenated into SQL clauses!
    +     *
    +     * @see Factory#condition(String)
    +     */
    +    @Support
    +    SelectOnConditionStep or(String sql);
    +
    +    /**
    +     * Combine the currently assembled conditions with another one using the
    +     * {@link Operator#OR} operator and proceed to the next step.
    +     * <p>
    +     * <b>NOTE</b>: When inserting plain SQL into jOOQ objects, you must
    +     * guarantee syntax integrity. You may also create the possibility of
    +     * malicious SQL injection. Be sure to properly use bind variables and/or
    +     * escape literals when concatenated into SQL clauses!
    +     *
    +     * @see Factory#condition(String, Object...)
    +     */
    +    @Support
    +    SelectOnConditionStep or(String sql, Object... bindings);
    +
    +    /**
    +     * Combine the currently assembled conditions with a negated other one using
    +     * the {@link Operator#OR} operator and proceed to the next step.
    +     */
    +    @Support
    +    SelectOnConditionStep orNot(Condition condition);
    +
    +    /**
    +     * Combine the currently assembled conditions with an EXISTS clause using
    +     * the {@link Operator#OR} operator and proceed to the next step.
    +     */
    +    @Support
    +    SelectOnConditionStep orExists(Select<?> select);
    +
    +    /**
    +     * Combine the currently assembled conditions with a NOT EXISTS clause using
    +     * the {@link Operator#OR} operator and proceed to the next step.
    +     */
    +    @Support
    +    SelectOnConditionStep orNotExists(Select<?> select);
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/SelectOnStep.java b/jOOQ/src/main/java/org/jooq/SelectOnStep.java
    new file mode 100644
    index 00000000000..21808c42382
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/SelectOnStep.java
    @@ -0,0 +1,175 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq;
    +
    +import java.util.Collection;
    +
    +import org.jooq.exception.DataAccessException;
    +import org.jooq.impl.Factory;
    +
    +/**
    + * This type is used for the {@link Select}'s DSL API when selecting generic
    + * {@link Record} types.
    + * <p>
    + * Example: <code><pre>
    + * -- get all authors' first and last names, and the number
    + * -- of books they've written in German, if they have written
    + * -- more than five books in German in the last three years
    + * -- (from 2011), and sort those authors by last names
    + * -- limiting results to the second and third row
    + *
    + *   SELECT T_AUTHOR.FIRST_NAME, T_AUTHOR.LAST_NAME, COUNT(*)
    + *     FROM T_AUTHOR
    + *     JOIN T_BOOK ON T_AUTHOR.ID = T_BOOK.AUTHOR_ID
    + *    WHERE T_BOOK.LANGUAGE = 'DE'
    + *      AND T_BOOK.PUBLISHED > '2008-01-01'
    + * GROUP BY T_AUTHOR.FIRST_NAME, T_AUTHOR.LAST_NAME
    + *   HAVING COUNT(*) > 5
    + * ORDER BY T_AUTHOR.LAST_NAME ASC NULLS FIRST
    + *    LIMIT 2
    + *   OFFSET 1
    + *      FOR UPDATE
    + *       OF FIRST_NAME, LAST_NAME
    + *       NO WAIT
    + * </pre></code> Its equivalent in jOOQ <code><pre>
    + * create.select(TAuthor.FIRST_NAME, TAuthor.LAST_NAME, create.count())
    + *       .from(T_AUTHOR)
    + *       .join(T_BOOK).on(TBook.AUTHOR_ID.equal(TAuthor.ID))
    + *       .where(TBook.LANGUAGE.equal("DE"))
    + *       .and(TBook.PUBLISHED.greaterThan(parseDate('2008-01-01')))
    + *       .groupBy(TAuthor.FIRST_NAME, TAuthor.LAST_NAME)
    + *       .having(create.count().greaterThan(5))
    + *       .orderBy(TAuthor.LAST_NAME.asc().nullsFirst())
    + *       .limit(2)
    + *       .offset(1)
    + *       .forUpdate()
    + *       .of(TAuthor.FIRST_NAME, TAuthor.LAST_NAME)
    + *       .noWait();
    + * </pre></code> Refer to the manual for more details
    + *
    + * @author Lukas Eder
    + */
    +public interface SelectOnStep {
    +
    +    /**
    +     * Add an <code>ON</code> clause to the previous <code>JOIN</code>
    +     */
    +    @Support
    +    SelectOnConditionStep on(Condition... conditions);
    +
    +    /**
    +     * Add an <code>ON</code> clause to the previous <code>JOIN</code>
    +     * <p>
    +     * <b>NOTE</b>: When inserting plain SQL into jOOQ objects, you must
    +     * guarantee syntax integrity. You may also create the possibility of
    +     * malicious SQL injection. Be sure to properly use bind variables and/or
    +     * escape literals when concatenated into SQL clauses!
    +     *
    +     * @see Factory#condition(String)
    +     */
    +    @Support
    +    SelectOnConditionStep on(String sql);
    +
    +    /**
    +     * Add an <code>ON</code> clause to the previous <code>JOIN</code>
    +     * <p>
    +     * <b>NOTE</b>: When inserting plain SQL into jOOQ objects, you must
    +     * guarantee syntax integrity. You may also create the possibility of
    +     * malicious SQL injection. Be sure to properly use bind variables and/or
    +     * escape literals when concatenated into SQL clauses!
    +     *
    +     * @see Factory#condition(String, Object...)
    +     */
    +    @Support
    +    SelectOnConditionStep on(String sql, Object... bindings);
    +
    +    /**
    +     * Join the previous table on a non-ambiguous foreign key relationship
    +     * between the two joined tables.
    +     * <p>
    +     * See {@link TableOnStep#onKey(ForeignKey)} for examples.
    +     *
    +     * @see TableOnStep#onKey(ForeignKey)
    +     * @throws DataAccessException If there is no non-ambiguous key definition
    +     *             known to jOOQ
    +     */
    +    @Support
    +    SelectJoinStep onKey() throws DataAccessException;
    +
    +    /**
    +     * Join the previous table on a non-ambiguous foreign key relationship
    +     * between the two joined tables.
    +     * <p>
    +     * See {@link TableOnStep#onKey(ForeignKey)} for examples.
    +     *
    +     * @see TableOnStep#onKey(ForeignKey)
    +     * @throws DataAccessException If there is no non-ambiguous key definition
    +     *             known to jOOQ
    +     */
    +    @Support
    +    SelectJoinStep onKey(TableField<?, ?>... keyFields) throws DataAccessException;
    +
    +    /**
    +     * Join the table on a non-ambiguous foreign key relationship between the
    +     * two joined tables.
    +     * <p>
    +     * See {@link TableOnStep#onKey(ForeignKey)} for examples.
    +     *
    +     * @see TableOnStep#onKey(ForeignKey)
    +     */
    +    @Support
    +    SelectJoinStep onKey(ForeignKey<?, ?> key);
    +
    +    /**
    +     * Join the previous table with the <code>USING(column [, column...])</code>
    +     * syntax
    +     * <p>
    +     * If this is not supported by your RDBMS, then jOOQ will try to simulate
    +     * this behaviour using the information provided in this query.
    +     */
    +    @Support
    +    SelectJoinStep using(Field<?>... fields);
    +
    +    /**
    +     * Join the previous table with the <code>USING(column [, column...])</code>
    +     * syntax
    +     * <p>
    +     * If this is not supported by your RDBMS, then jOOQ will try to simulate
    +     * this behaviour using the information provided in this query.
    +     */
    +    @Support
    +    SelectJoinStep using(Collection<? extends Field<?>> fields);
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/SelectOrderByStep.java b/jOOQ/src/main/java/org/jooq/SelectOrderByStep.java
    new file mode 100644
    index 00000000000..a4a7013ea68
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/SelectOrderByStep.java
    @@ -0,0 +1,113 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq;
    +
    +import java.util.Collection;
    +
    +/**
    + * This type is used for the {@link Select}'s DSL API when selecting generic
    + * {@link Record} types.
    + * <p>
    + * Example: <code><pre>
    + * -- get all authors' first and last names, and the number
    + * -- of books they've written in German, if they have written
    + * -- more than five books in German in the last three years
    + * -- (from 2011), and sort those authors by last names
    + * -- limiting results to the second and third row
    + *
    + *   SELECT T_AUTHOR.FIRST_NAME, T_AUTHOR.LAST_NAME, COUNT(*)
    + *     FROM T_AUTHOR
    + *     JOIN T_BOOK ON T_AUTHOR.ID = T_BOOK.AUTHOR_ID
    + *    WHERE T_BOOK.LANGUAGE = 'DE'
    + *      AND T_BOOK.PUBLISHED > '2008-01-01'
    + * GROUP BY T_AUTHOR.FIRST_NAME, T_AUTHOR.LAST_NAME
    + *   HAVING COUNT(*) > 5
    + * ORDER BY T_AUTHOR.LAST_NAME ASC NULLS FIRST
    + *    LIMIT 2
    + *   OFFSET 1
    + *      FOR UPDATE
    + *       OF FIRST_NAME, LAST_NAME
    + *       NO WAIT
    + * </pre></code> Its equivalent in jOOQ <code><pre>
    + * create.select(TAuthor.FIRST_NAME, TAuthor.LAST_NAME, create.count())
    + *       .from(T_AUTHOR)
    + *       .join(T_BOOK).on(TBook.AUTHOR_ID.equal(TAuthor.ID))
    + *       .where(TBook.LANGUAGE.equal("DE"))
    + *       .and(TBook.PUBLISHED.greaterThan(parseDate('2008-01-01')))
    + *       .groupBy(TAuthor.FIRST_NAME, TAuthor.LAST_NAME)
    + *       .having(create.count().greaterThan(5))
    + *       .orderBy(TAuthor.LAST_NAME.asc().nullsFirst())
    + *       .limit(2)
    + *       .offset(1)
    + *       .forUpdate()
    + *       .of(TAuthor.FIRST_NAME, TAuthor.LAST_NAME)
    + *       .noWait();
    + * </pre></code> Refer to the manual for more details
    + *
    + * @author Lukas Eder
    + */
    +public interface SelectOrderByStep extends SelectLimitStep {
    +
    +    /**
    +     * Add an <code>ORDER BY</code> clause to the query
    +     */
    +    @Support
    +    SelectLimitStep orderBy(Field<?>... fields);
    +
    +    /**
    +     * Add an <code>ORDER BY</code> clause to the query
    +     */
    +    @Support
    +    SelectLimitStep orderBy(SortField<?>... fields);
    +
    +    /**
    +     * Add an <code>ORDER BY</code> clause to the query
    +     */
    +    @Support
    +    SelectLimitStep orderBy(Collection<SortField<?>> fields);
    +
    +    /**
    +     * Add an <code>ORDER BY</code> clause to the query
    +     * <p>
    +     * Indexes start at <code>1</code> in SQL!
    +     * <p>
    +     * Note, you can use <code>orderBy(Factory.val(1).desc())</code> or
    +     * <code>orderBy(Factory.literal(1).desc())</code> to apply descending
    +     * ordering
    +     */
    +    @Support
    +    SelectLimitStep orderBy(int... fieldIndexes);
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/SelectQuery.java b/jOOQ/src/main/java/org/jooq/SelectQuery.java
    new file mode 100644
    index 00000000000..aa8f9d035c6
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/SelectQuery.java
    @@ -0,0 +1,263 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +
    +package org.jooq;
    +
    +import static org.jooq.SQLDialect.CUBRID;
    +import static org.jooq.SQLDialect.ORACLE;
    +
    +import java.util.Collection;
    +
    +import org.jooq.exception.DataAccessException;
    +
    +/**
    + * A query for data selection
    + *
    + * @author Lukas Eder
    + */
    +public interface SelectQuery extends Select<Record>, ConditionProvider, OrderProvider, LockProvider {
    +
    +    /**
    +     * Add a list of select fields
    +     *
    +     * @param fields
    +     */
    +    @Support
    +    void addSelect(Field<?>... fields);
    +
    +    /**
    +     * Add a list of select fields
    +     *
    +     * @param fields
    +     */
    +    @Support
    +    void addSelect(Collection<? extends Field<?>> fields);
    +
    +    /**
    +     * Add "distinct" keyword to the select clause
    +     */
    +    @Support
    +    void setDistinct(boolean distinct);
    +
    +    /**
    +     * Add tables to the table product
    +     *
    +     * @param from The added tables
    +     */
    +    @Support
    +    void addFrom(TableLike<?>... from);
    +
    +    /**
    +     * Add tables to the table product
    +     *
    +     * @param from The added tables
    +     */
    +    @Support
    +    void addFrom(Collection<? extends TableLike<?>> from);
    +
    +    /**
    +     * Joins the existing table product to a new table using a condition
    +     *
    +     * @param table The joined table
    +     * @param conditions The joining conditions
    +     */
    +    @Support
    +    void addJoin(TableLike<?> table, Condition... conditions);
    +
    +    /**
    +     * Joins the existing table product to a new table using a condition
    +     *
    +     * @param table The joined table
    +     * @param type The type of join
    +     * @param conditions The joining conditions
    +     */
    +    @Support
    +    void addJoin(TableLike<?> table, JoinType type, Condition... conditions);
    +
    +    /**
    +     * Joins the existing table product to a new table with a <code>USING</code>
    +     * clause
    +     * <p>
    +     * If this is not supported by your RDBMS, then jOOQ will try to simulate
    +     * this behaviour using the information provided in this query.
    +     *
    +     * @param table The joined table
    +     * @param fields The fields for the <code>USING</code> clause
    +     */
    +    @Support
    +    void addJoinUsing(TableLike<?> table, Collection<? extends Field<?>> fields);
    +
    +    /**
    +     * Joins the existing table product to a new table with a <code>USING</code>
    +     * clause
    +     * <p>
    +     * If this is not supported by your RDBMS, then jOOQ will try to simulate
    +     * this behaviour using the information provided in this query.
    +     *
    +     * @param table The joined table
    +     * @param type The type of join
    +     * @param fields The fields for the <code>USING</code> clause
    +     */
    +    @Support
    +    void addJoinUsing(TableLike<?> table, JoinType type, Collection<? extends Field<?>> fields);
    +
    +    /**
    +     * Joins the existing table product to a new table using a foreign key
    +     *
    +     * @param table The joined table
    +     * @param type The type of join
    +     * @see TableOnStep#onKey(ForeignKey)
    +     * @throws DataAccessException If there is no non-ambiguous key definition
    +     *             known to jOOQ
    +     */
    +    @Support
    +    void addJoinOnKey(TableLike<?> table, JoinType type) throws DataAccessException;
    +
    +    /**
    +     * Joins the existing table product to a new table using a foreign key
    +     *
    +     * @param table The joined table
    +     * @param type The type of join
    +     * @param keyFields The foreign key fields
    +     * @see TableOnStep#onKey(ForeignKey)
    +     * @throws DataAccessException If there is no non-ambiguous key definition
    +     *             known to jOOQ
    +     */
    +    @Support
    +    void addJoinOnKey(TableLike<?> table, JoinType type, TableField<?, ?>... keyFields) throws DataAccessException;
    +
    +    /**
    +     * Joins the existing table product to a new table using a foreign key
    +     *
    +     * @param table The joined table
    +     * @param type The type of join
    +     * @param key The foreign key
    +     * @see TableOnStep#onKey(ForeignKey)
    +     */
    +    @Support
    +    void addJoinOnKey(TableLike<?> table, JoinType type, ForeignKey<?, ?> key);
    +
    +    /**
    +     * Adds grouping fields
    +     *
    +     * @param fields The grouping fields
    +     */
    +    @Support
    +    void addGroupBy(Field<?>... fields);
    +
    +    /**
    +     * Adds grouping fields
    +     *
    +     * @param fields The grouping fields
    +     */
    +    @Support
    +    void addGroupBy(Collection<? extends Field<?>> fields);
    +
    +    /**
    +     * Adds new conditions to the having clause of the query, connecting it to
    +     * existing conditions with the and operator.
    +     *
    +     * @param conditions The condition
    +     */
    +    @Support
    +    void addHaving(Condition... conditions);
    +
    +    /**
    +     * Adds new conditions to the having clause of the query, connecting it to
    +     * existing conditions with the and operator.
    +     *
    +     * @param conditions The condition
    +     */
    +    @Support
    +    void addHaving(Collection<Condition> conditions);
    +
    +    /**
    +     * Adds new conditions to the having clause of query, connecting them to
    +     * existing conditions with the provided operator
    +     *
    +     * @param operator The operator to use to add the conditions to the existing
    +     *            conditions
    +     * @param conditions The condition
    +     */
    +    @Support
    +    void addHaving(Operator operator, Condition... conditions);
    +
    +    /**
    +     * Adds new conditions to the having clause of query, connecting them to
    +     * existing conditions with the provided operator
    +     *
    +     * @param operator The operator to use to add the conditions to the existing
    +     *            conditions
    +     * @param conditions The condition
    +     */
    +    @Support
    +    void addHaving(Operator operator, Collection<Condition> conditions);
    +
    +    /**
    +     * Add an Oracle-style hint to the select clause
    +     * <p>
    +     * Example: <code><pre>
    +     * Factory create = new Factory();
    +     *
    +     * create.select(field1, field2)
    +     *       .hint("/*+ALL_ROWS&#42;/")
    +     *       .from(table1)
    +     *       .execute();
    +     * </pre></code>
    +     */
    +    @Support({ CUBRID, ORACLE })
    +    void addHint(String hint);
    +
    +    /**
    +     * Add an Oracle-specific <code>CONNECT BY</code> clause to the query
    +     */
    +    @Support({ CUBRID, ORACLE })
    +    void addConnectBy(Condition condition);
    +
    +    /**
    +     * Add an Oracle-specific <code>CONNECT BY NOCYCLE</code> clause to the
    +     * query
    +     */
    +    @Support({ CUBRID, ORACLE })
    +    void addConnectByNoCycle(Condition condition);
    +
    +    /**
    +     * Add an Oracle-specific <code>START WITH</code> clause to the query's
    +     * <code>CONNECT BY</code> clause
    +     */
    +    @Support({ CUBRID, ORACLE })
    +    void setConnectByStartWith(Condition condition);
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/SelectSelectStep.java b/jOOQ/src/main/java/org/jooq/SelectSelectStep.java
    new file mode 100644
    index 00000000000..4bef5a8423e
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/SelectSelectStep.java
    @@ -0,0 +1,96 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq;
    +
    +import java.util.Collection;
    +
    +
    +/**
    + * This type is used for the {@link Select}'s DSL API when selecting generic
    + * {@link Record} types.
    + * <p>
    + * Example: <code><pre>
    + * -- get all authors' first and last names, and the number
    + * -- of books they've written in German, if they have written
    + * -- more than five books in German in the last three years
    + * -- (from 2011), and sort those authors by last names
    + * -- limiting results to the second and third row
    + *
    + *   SELECT T_AUTHOR.FIRST_NAME, T_AUTHOR.LAST_NAME, COUNT(*)
    + *     FROM T_AUTHOR
    + *     JOIN T_BOOK ON T_AUTHOR.ID = T_BOOK.AUTHOR_ID
    + *    WHERE T_BOOK.LANGUAGE = 'DE'
    + *      AND T_BOOK.PUBLISHED > '2008-01-01'
    + * GROUP BY T_AUTHOR.FIRST_NAME, T_AUTHOR.LAST_NAME
    + *   HAVING COUNT(*) > 5
    + * ORDER BY T_AUTHOR.LAST_NAME ASC NULLS FIRST
    + *    LIMIT 2
    + *   OFFSET 1
    + *      FOR UPDATE
    + *       OF FIRST_NAME, LAST_NAME
    + *       NO WAIT
    + * </pre></code> Its equivalent in jOOQ <code><pre>
    + * create.select(TAuthor.FIRST_NAME, TAuthor.LAST_NAME, create.count())
    + *       .from(T_AUTHOR)
    + *       .join(T_BOOK).on(TBook.AUTHOR_ID.equal(TAuthor.ID))
    + *       .where(TBook.LANGUAGE.equal("DE"))
    + *       .and(TBook.PUBLISHED.greaterThan(parseDate('2008-01-01')))
    + *       .groupBy(TAuthor.FIRST_NAME, TAuthor.LAST_NAME)
    + *       .having(create.count().greaterThan(5))
    + *       .orderBy(TAuthor.LAST_NAME.asc().nullsFirst())
    + *       .limit(2)
    + *       .offset(1)
    + *       .forUpdate()
    + *       .of(TAuthor.FIRST_NAME, TAuthor.LAST_NAME)
    + *       .noWait();
    + * </pre></code> Refer to the manual for more details
    + *
    + * @author Lukas Eder
    + */
    +public interface SelectSelectStep extends SelectFromStep {
    +
    +    /**
    +     * Add additional fields to the <code>SELECT</code> clause of this query
    +     */
    +    @Support
    +    SelectSelectStep select(Field<?>... fields);
    +
    +    /**
    +     * Add additional fields to the <code>SELECT</code> clause of this query
    +     */
    +    @Support
    +    SelectSelectStep select(Collection<? extends Field<?>> fields);
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/SelectStartWithStep.java b/jOOQ/src/main/java/org/jooq/SelectStartWithStep.java
    new file mode 100644
    index 00000000000..830ec47e1b7
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/SelectStartWithStep.java
    @@ -0,0 +1,115 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq;
    +
    +import static org.jooq.SQLDialect.CUBRID;
    +import static org.jooq.SQLDialect.ORACLE;
    +
    +/**
    + * This type is used for the {@link Select}'s DSL API when selecting generic
    + * {@link Record} types.
    + * <p>
    + * Example: <code><pre>
    + * -- get all authors' first and last names, and the number
    + * -- of books they've written in German, if they have written
    + * -- more than five books in German in the last three years
    + * -- (from 2011), and sort those authors by last names
    + * -- limiting results to the second and third row
    + *
    + *   SELECT T_AUTHOR.FIRST_NAME, T_AUTHOR.LAST_NAME, COUNT(*)
    + *     FROM T_AUTHOR
    + *     JOIN T_BOOK ON T_AUTHOR.ID = T_BOOK.AUTHOR_ID
    + *    WHERE T_BOOK.LANGUAGE = 'DE'
    + *      AND T_BOOK.PUBLISHED > '2008-01-01'
    + * GROUP BY T_AUTHOR.FIRST_NAME, T_AUTHOR.LAST_NAME
    + *   HAVING COUNT(*) > 5
    + * ORDER BY T_AUTHOR.LAST_NAME ASC NULLS FIRST
    + *    LIMIT 2
    + *   OFFSET 1
    + *      FOR UPDATE
    + *       OF FIRST_NAME, LAST_NAME
    + *       NO WAIT
    + * </pre></code> Its equivalent in jOOQ <code><pre>
    + * create.select(TAuthor.FIRST_NAME, TAuthor.LAST_NAME, create.count())
    + *       .from(T_AUTHOR)
    + *       .join(T_BOOK).on(TBook.AUTHOR_ID.equal(TAuthor.ID))
    + *       .where(TBook.LANGUAGE.equal("DE"))
    + *       .and(TBook.PUBLISHED.greaterThan(parseDate('2008-01-01')))
    + *       .groupBy(TAuthor.FIRST_NAME, TAuthor.LAST_NAME)
    + *       .having(create.count().greaterThan(5))
    + *       .orderBy(TAuthor.LAST_NAME.asc().nullsFirst())
    + *       .limit(2)
    + *       .offset(1)
    + *       .forUpdate()
    + *       .of(TAuthor.FIRST_NAME, TAuthor.LAST_NAME)
    + *       .noWait();
    + * </pre></code> Refer to the manual for more details
    + *
    + * @author Lukas Eder
    + */
    +public interface SelectStartWithStep extends SelectGroupByStep {
    +
    +    /**
    +     * Add an Oracle-specific <code>START WITH</code> clause to the query's
    +     * <code>CONNECT BY</code> clause
    +     */
    +    @Support({ CUBRID, ORACLE })
    +    SelectGroupByStep startWith(Condition condition);
    +
    +    /**
    +     * Add an Oracle-specific <code>START WITH</code> clause to the query's
    +     * <code>CONNECT BY</code> clause
    +     * <p>
    +     * <b>NOTE</b>: When inserting plain SQL into jOOQ objects, you must
    +     * guarantee syntax integrity. You may also create the possibility of
    +     * malicious SQL injection. Be sure to properly use bind variables and/or
    +     * escape literals when concatenated into SQL clauses!
    +     */
    +    @Support({ CUBRID, ORACLE })
    +    SelectGroupByStep startWith(String sql);
    +
    +    /**
    +     * Add an Oracle-specific <code>START WITH</code> clause to the query's
    +     * <code>CONNECT BY</code> clause
    +     * <p>
    +     * <b>NOTE</b>: When inserting plain SQL into jOOQ objects, you must
    +     * guarantee syntax integrity. You may also create the possibility of
    +     * malicious SQL injection. Be sure to properly use bind variables and/or
    +     * escape literals when concatenated into SQL clauses!
    +     */
    +    @Support({ CUBRID, ORACLE })
    +    SelectGroupByStep startWith(String sql, Object... bindings);
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/SelectWhereStep.java b/jOOQ/src/main/java/org/jooq/SelectWhereStep.java
    new file mode 100644
    index 00000000000..a70dbd80627
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/SelectWhereStep.java
    @@ -0,0 +1,135 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq;
    +
    +import java.util.Collection;
    +
    +import org.jooq.impl.Factory;
    +
    +/**
    + * This type is used for the {@link Select}'s DSL API when selecting generic
    + * {@link Record} types.
    + * <p>
    + * Example: <code><pre>
    + * -- get all authors' first and last names, and the number
    + * -- of books they've written in German, if they have written
    + * -- more than five books in German in the last three years
    + * -- (from 2011), and sort those authors by last names
    + * -- limiting results to the second and third row
    + *
    + *   SELECT T_AUTHOR.FIRST_NAME, T_AUTHOR.LAST_NAME, COUNT(*)
    + *     FROM T_AUTHOR
    + *     JOIN T_BOOK ON T_AUTHOR.ID = T_BOOK.AUTHOR_ID
    + *    WHERE T_BOOK.LANGUAGE = 'DE'
    + *      AND T_BOOK.PUBLISHED > '2008-01-01'
    + * GROUP BY T_AUTHOR.FIRST_NAME, T_AUTHOR.LAST_NAME
    + *   HAVING COUNT(*) > 5
    + * ORDER BY T_AUTHOR.LAST_NAME ASC NULLS FIRST
    + *    LIMIT 2
    + *   OFFSET 1
    + *      FOR UPDATE
    + *       OF FIRST_NAME, LAST_NAME
    + *       NO WAIT
    + * </pre></code> Its equivalent in jOOQ <code><pre>
    + * create.select(TAuthor.FIRST_NAME, TAuthor.LAST_NAME, create.count())
    + *       .from(T_AUTHOR)
    + *       .join(T_BOOK).on(TBook.AUTHOR_ID.equal(TAuthor.ID))
    + *       .where(TBook.LANGUAGE.equal("DE"))
    + *       .and(TBook.PUBLISHED.greaterThan(parseDate('2008-01-01')))
    + *       .groupBy(TAuthor.FIRST_NAME, TAuthor.LAST_NAME)
    + *       .having(create.count().greaterThan(5))
    + *       .orderBy(TAuthor.LAST_NAME.asc().nullsFirst())
    + *       .limit(2)
    + *       .offset(1)
    + *       .forUpdate()
    + *       .of(TAuthor.FIRST_NAME, TAuthor.LAST_NAME)
    + *       .noWait();
    + * </pre></code> Refer to the manual for more details
    + *
    + * @author Lukas Eder
    + */
    +public interface SelectWhereStep extends SelectConnectByStep {
    +
    +    /**
    +     * Add a <code>WHERE</code> clause to the query
    +     */
    +    @Support
    +    SelectConditionStep where(Condition... conditions);
    +
    +    /**
    +     * Add a <code>WHERE</code> clause to the query
    +     */
    +    @Support
    +    SelectConditionStep where(Collection<Condition> conditions);
    +
    +    /**
    +     * Add a <code>WHERE</code> clause to the query
    +     * <p>
    +     * <b>NOTE</b>: When inserting plain SQL into jOOQ objects, you must
    +     * guarantee syntax integrity. You may also create the possibility of
    +     * malicious SQL injection. Be sure to properly use bind variables and/or
    +     * escape literals when concatenated into SQL clauses!
    +     *
    +     * @see Factory#condition(String)
    +     */
    +    @Support
    +    SelectConditionStep where(String sql);
    +
    +    /**
    +     * Add a <code>WHERE</code> clause to the query
    +     * <p>
    +     * <b>NOTE</b>: When inserting plain SQL into jOOQ objects, you must
    +     * guarantee syntax integrity. You may also create the possibility of
    +     * malicious SQL injection. Be sure to properly use bind variables and/or
    +     * escape literals when concatenated into SQL clauses!
    +     *
    +     * @see Factory#condition(String, Object...)
    +     */
    +    @Support
    +    SelectConditionStep where(String sql, Object... bindings);
    +
    +    /**
    +     * Add a <code>WHERE EXISTS</code> clause to the query
    +     */
    +    @Support
    +    SelectConditionStep whereExists(Select<?> select);
    +
    +    /**
    +     * Add a <code>WHERE NOT EXISTS</code> clause to the query
    +     */
    +    @Support
    +    SelectConditionStep whereNotExists(Select<?> select);
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/Sequence.java b/jOOQ/src/main/java/org/jooq/Sequence.java
    new file mode 100644
    index 00000000000..6633dffd0a1
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/Sequence.java
    @@ -0,0 +1,83 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq;
    +
    +import static org.jooq.SQLDialect.CUBRID;
    +import static org.jooq.SQLDialect.DB2;
    +import static org.jooq.SQLDialect.DERBY;
    +import static org.jooq.SQLDialect.H2;
    +import static org.jooq.SQLDialect.HSQLDB;
    +import static org.jooq.SQLDialect.INGRES;
    +import static org.jooq.SQLDialect.ORACLE;
    +import static org.jooq.SQLDialect.POSTGRES;
    +import static org.jooq.SQLDialect.SYBASE;
    +
    +import java.io.Serializable;
    +
    +/**
    + * A type representing sequences in databases that support this.
    + *
    + * @author Lukas Eder
    + */
    +public interface Sequence<T extends Number> extends Serializable {
    +
    +    /**
    +     * Get the sequence name
    +     */
    +    String getName();
    +
    +    /**
    +     * Get the sequence schema
    +     */
    +    Schema getSchema();
    +
    +    /**
    +     * Get the sequence data type
    +     */
    +    DataType<T> getDataType();
    +
    +    /**
    +     * Get the current value of this sequence
    +     */
    +    @Support({ CUBRID, DB2, H2, INGRES, ORACLE, POSTGRES, SYBASE })
    +    Field<T> currval();
    +
    +    /**
    +     * Increment the sequence and get the next value
    +     */
    +    @Support({ CUBRID, DB2, DERBY, H2, HSQLDB, INGRES, ORACLE, POSTGRES, SYBASE })
    +    Field<T> nextval();
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/SimpleSelectConditionStep.java b/jOOQ/src/main/java/org/jooq/SimpleSelectConditionStep.java
    new file mode 100644
    index 00000000000..2e117607533
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/SimpleSelectConditionStep.java
    @@ -0,0 +1,172 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq;
    +
    +import org.jooq.impl.Factory;
    +
    +/**
    + * This type is used for the {@link Select}'s DSL API when selecting specific
    + * {@link Record} types.
    + * <p>
    + * Example: <code><pre>
    + * create.selectFrom(T_AUTHOR)
    + *       .where(TBook.LANGUAGE.equal("DE"))
    + *       .and(TBook.PUBLISHED.greaterThan(parseDate('2008-01-01')))
    + *       .orderBy(TAuthor.LAST_NAME.asc().nullsFirst())
    + *       .limit(2)
    + *       .offset(1)
    + *       .forUpdate()
    + *       .of(TAuthor.FIRST_NAME, TAuthor.LAST_NAME)
    + *       .noWait();
    + * </pre></code> Refer to the manual for more details
    + *
    + * @param <R> The record type being returned by this query
    + * @author Lukas Eder
    + */
    +public interface SimpleSelectConditionStep<R extends Record> extends SimpleSelectOrderByStep<R> {
    +
    +    /**
    +     * Combine the currently assembled conditions with another one using the
    +     * {@link Operator#AND} operator and proceed to the next step.
    +     */
    +    @Support
    +    SimpleSelectConditionStep<R> and(Condition condition);
    +
    +    /**
    +     * Combine the currently assembled conditions with another one using the
    +     * {@link Operator#AND} operator and proceed to the next step.
    +     * <p>
    +     * <b>NOTE</b>: When inserting plain SQL into jOOQ objects, you must
    +     * guarantee syntax integrity. You may also create the possibility of
    +     * malicious SQL injection. Be sure to properly use bind variables and/or
    +     * escape literals when concatenated into SQL clauses!
    +     *
    +     * @see Factory#condition(String)
    +     */
    +    @Support
    +    SimpleSelectConditionStep<R> and(String sql);
    +
    +    /**
    +     * Combine the currently assembled conditions with another one using the
    +     * {@link Operator#AND} operator and proceed to the next step.
    +     * <p>
    +     * <b>NOTE</b>: When inserting plain SQL into jOOQ objects, you must
    +     * guarantee syntax integrity. You may also create the possibility of
    +     * malicious SQL injection. Be sure to properly use bind variables and/or
    +     * escape literals when concatenated into SQL clauses!
    +     *
    +     * @see Factory#condition(String, Object...)
    +     */
    +    @Support
    +    SimpleSelectConditionStep<R> and(String sql, Object... bindings);
    +
    +    /**
    +     * Combine the currently assembled conditions with a negated other one using
    +     * the {@link Operator#AND} operator and proceed to the next step.
    +     */
    +    @Support
    +    SimpleSelectConditionStep<R> andNot(Condition condition);
    +
    +    /**
    +     * Combine the currently assembled conditions with an EXISTS clause using
    +     * the {@link Operator#AND} operator and proceed to the next step.
    +     */
    +    @Support
    +    SimpleSelectConditionStep<R> andExists(Select<?> select);
    +
    +    /**
    +     * Combine the currently assembled conditions with a NOT EXISTS clause using
    +     * the {@link Operator#AND} operator and proceed to the next step.
    +     */
    +    @Support
    +    SimpleSelectConditionStep<R> andNotExists(Select<?> select);
    +
    +    /**
    +     * Combine the currently assembled conditions with another one using the
    +     * {@link Operator#OR} operator and proceed to the next step.
    +     */
    +    @Support
    +    SimpleSelectConditionStep<R> or(Condition condition);
    +
    +    /**
    +     * Combine the currently assembled conditions with another one using the
    +     * {@link Operator#OR} operator and proceed to the next step.
    +     * <p>
    +     * <b>NOTE</b>: When inserting plain SQL into jOOQ objects, you must
    +     * guarantee syntax integrity. You may also create the possibility of
    +     * malicious SQL injection. Be sure to properly use bind variables and/or
    +     * escape literals when concatenated into SQL clauses!
    +     *
    +     * @see Factory#condition(String)
    +     */
    +    @Support
    +    SimpleSelectConditionStep<R> or(String sql);
    +
    +    /**
    +     * Combine the currently assembled conditions with another one using the
    +     * {@link Operator#OR} operator and proceed to the next step.
    +     * <p>
    +     * <b>NOTE</b>: When inserting plain SQL into jOOQ objects, you must
    +     * guarantee syntax integrity. You may also create the possibility of
    +     * malicious SQL injection. Be sure to properly use bind variables and/or
    +     * escape literals when concatenated into SQL clauses!
    +     *
    +     * @see Factory#condition(String, Object...)
    +     */
    +    @Support
    +    SimpleSelectConditionStep<R> or(String sql, Object... bindings);
    +
    +    /**
    +     * Combine the currently assembled conditions with a negated other one using
    +     * the {@link Operator#OR} operator and proceed to the next step.
    +     */
    +    @Support
    +    SimpleSelectConditionStep<R> orNot(Condition condition);
    +
    +    /**
    +     * Combine the currently assembled conditions with an EXISTS clause using
    +     * the {@link Operator#OR} operator and proceed to the next step.
    +     */
    +    @Support
    +    SimpleSelectConditionStep<R> orExists(Select<?> select);
    +
    +    /**
    +     * Combine the currently assembled conditions with a NOT EXISTS clause using
    +     * the {@link Operator#OR} operator and proceed to the next step.
    +     */
    +    @Support
    +    SimpleSelectConditionStep<R> orNotExists(Select<?> select);
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/SimpleSelectFinalStep.java b/jOOQ/src/main/java/org/jooq/SimpleSelectFinalStep.java
    new file mode 100644
    index 00000000000..3f6368dc5b3
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/SimpleSelectFinalStep.java
    @@ -0,0 +1,64 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq;
    +
    +/**
    + * This type is used for the {@link Select}'s DSL API when selecting specific
    + * {@link Record} types.
    + * <p>
    + * Example: <code><pre>
    + * create.selectFrom(T_AUTHOR)
    + *       .where(TBook.LANGUAGE.equal("DE"))
    + *       .and(TBook.PUBLISHED.greaterThan(parseDate('2008-01-01')))
    + *       .orderBy(TAuthor.LAST_NAME.asc().nullsFirst())
    + *       .limit(2)
    + *       .offset(1)
    + *       .forUpdate()
    + *       .of(TAuthor.FIRST_NAME, TAuthor.LAST_NAME)
    + *       .noWait();
    + * </pre></code> Refer to the manual for more details
    + *
    + * @param <R> The record type being returned by this query
    + * @author Lukas Eder
    + */
    +public interface SimpleSelectFinalStep<R extends Record> extends Select<R> {
    +
    +    /**
    +     * Get the underlying {@link Query} that is being constructed.
    +     */
    +    SimpleSelectQuery<R> getQuery();
    +
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/SimpleSelectForUpdateOfStep.java b/jOOQ/src/main/java/org/jooq/SimpleSelectForUpdateOfStep.java
    new file mode 100644
    index 00000000000..acffa5db756
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/SimpleSelectForUpdateOfStep.java
    @@ -0,0 +1,100 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq;
    +
    +import static org.jooq.SQLDialect.DB2;
    +import static org.jooq.SQLDialect.DERBY;
    +import static org.jooq.SQLDialect.H2;
    +import static org.jooq.SQLDialect.HSQLDB;
    +import static org.jooq.SQLDialect.INGRES;
    +import static org.jooq.SQLDialect.ORACLE;
    +import static org.jooq.SQLDialect.POSTGRES;
    +import static org.jooq.SQLDialect.SYBASE;
    +
    +import java.util.Collection;
    +
    +/**
    + * This type is used for the {@link Select}'s DSL API when selecting specific
    + * {@link Record} types.
    + * <p>
    + * Example: <code><pre>
    + * create.selectFrom(T_AUTHOR)
    + *       .where(TBook.LANGUAGE.equal("DE"))
    + *       .and(TBook.PUBLISHED.greaterThan(parseDate('2008-01-01')))
    + *       .orderBy(TAuthor.LAST_NAME.asc().nullsFirst())
    + *       .limit(2)
    + *       .offset(1)
    + *       .forUpdate()
    + *       .of(TAuthor.FIRST_NAME, TAuthor.LAST_NAME)
    + *       .noWait();
    + * </pre></code> Refer to the manual for more details
    + *
    + * @param <R> The record type being returned by this query
    + * @author Lukas Eder
    + */
    +public interface SimpleSelectForUpdateOfStep<R extends Record> extends SimpleSelectForUpdateWaitStep<R> {
    +
    +    /**
    +     * Add an <code>OF</code> clause to the <code>FOR UPDATE</code> clause at
    +     * the end of the query.
    +     *
    +     * @see LockProvider#setForUpdateOf(Field...) see LockProvider for more
    +     *      details
    +     */
    +    @Support({ DB2, DERBY, H2, HSQLDB, INGRES, ORACLE, SYBASE })
    +    SimpleSelectForUpdateWaitStep<R> of(Field<?>... fields);
    +
    +    /**
    +     * Add an <code>OF</code> clause to the <code>FOR UPDATE</code> clause at
    +     * the end of the query.
    +     *
    +     * @see LockProvider#setForUpdateOf(Collection) see LockProvider for more
    +     *      details
    +     */
    +    @Support({ DB2, DERBY, H2, HSQLDB, INGRES, ORACLE, SYBASE })
    +    SimpleSelectForUpdateWaitStep<R> of(Collection<Field<?>> fields);
    +
    +    /**
    +     * Add an <code>OF</code> clause to the <code>FOR UPDATE</code> clause at
    +     * the end of the query.
    +     *
    +     * @see LockProvider#setForUpdateOf(Table...) see LockProvider for more
    +     *      details
    +     */
    +    @Support({ DB2, DERBY, H2, HSQLDB, INGRES, POSTGRES, ORACLE, SYBASE })
    +    SimpleSelectForUpdateWaitStep<R> of(Table<?>... tables);
    +
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/SimpleSelectForUpdateStep.java b/jOOQ/src/main/java/org/jooq/SimpleSelectForUpdateStep.java
    new file mode 100644
    index 00000000000..82870578246
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/SimpleSelectForUpdateStep.java
    @@ -0,0 +1,92 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq;
    +
    +import static org.jooq.SQLDialect.ASE;
    +import static org.jooq.SQLDialect.DB2;
    +import static org.jooq.SQLDialect.DERBY;
    +import static org.jooq.SQLDialect.H2;
    +import static org.jooq.SQLDialect.HSQLDB;
    +import static org.jooq.SQLDialect.INGRES;
    +import static org.jooq.SQLDialect.MYSQL;
    +import static org.jooq.SQLDialect.ORACLE;
    +import static org.jooq.SQLDialect.POSTGRES;
    +import static org.jooq.SQLDialect.SYBASE;
    +
    +/**
    + * This type is used for the {@link Select}'s DSL API when selecting specific
    + * {@link Record} types.
    + * <p>
    + * Example: <code><pre>
    + * create.selectFrom(T_AUTHOR)
    + *       .where(TBook.LANGUAGE.equal("DE"))
    + *       .and(TBook.PUBLISHED.greaterThan(parseDate('2008-01-01')))
    + *       .orderBy(TAuthor.LAST_NAME.asc().nullsFirst())
    + *       .limit(2)
    + *       .offset(1)
    + *       .forUpdate()
    + *       .of(TAuthor.FIRST_NAME, TAuthor.LAST_NAME)
    + *       .noWait();
    + * </pre></code> Refer to the manual for more details
    + *
    + * @param <R> The record type being returned by this query
    + * @author Lukas Eder
    + */
    +public interface SimpleSelectForUpdateStep<R extends Record> extends SimpleSelectFinalStep<R> {
    +
    +    /**
    +     * Add a <code>FOR UPDATE</code> clause to the end of the query.
    +     * <p>
    +     * Note: not all SQL dialects allow for combining a <code>FOR UPDATE</code>
    +     * clause with <code>LIMIT .. OFFSET</code>, or with <code>GROUP BY</code>.
    +     * This essentially includes {@link SQLDialect#INGRES} and
    +     * {@link SQLDialect#ORACLE}. These incompatibilities are not reflected by
    +     * the jOOQ API.
    +     *
    +     * @see LockProvider#setForUpdate(boolean) see LockProvider for more details
    +     */
    +    @Support({ ASE, DB2, DERBY, H2, HSQLDB, INGRES, MYSQL, ORACLE, POSTGRES, SYBASE })
    +    SimpleSelectForUpdateOfStep<R> forUpdate();
    +
    +    /**
    +     * Add a <code>FOR SHARE</code> clause to the end of the query.
    +     *
    +     * @see LockProvider#setForShare(boolean) see LockProvider for more details
    +     */
    +    @Support({ MYSQL, POSTGRES })
    +    SimpleSelectFinalStep<R> forShare();
    +
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/SimpleSelectForUpdateWaitStep.java b/jOOQ/src/main/java/org/jooq/SimpleSelectForUpdateWaitStep.java
    new file mode 100644
    index 00000000000..6b5fbf97c52
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/SimpleSelectForUpdateWaitStep.java
    @@ -0,0 +1,90 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq;
    +
    +import static org.jooq.SQLDialect.ORACLE;
    +
    +/**
    + * This type is used for the {@link Select}'s DSL API when selecting specific
    + * {@link Record} types.
    + * <p>
    + * Example: <code><pre>
    + * create.selectFrom(T_AUTHOR)
    + *       .where(TBook.LANGUAGE.equal("DE"))
    + *       .and(TBook.PUBLISHED.greaterThan(parseDate('2008-01-01')))
    + *       .orderBy(TAuthor.LAST_NAME.asc().nullsFirst())
    + *       .limit(2)
    + *       .offset(1)
    + *       .forUpdate()
    + *       .of(TAuthor.FIRST_NAME, TAuthor.LAST_NAME)
    + *       .noWait();
    + * </pre></code> Refer to the manual for more details
    + *
    + * @param <R> The record type being returned by this query
    + * @author Lukas Eder
    + */
    +public interface SimpleSelectForUpdateWaitStep<R extends Record> extends SimpleSelectFinalStep<R> {
    +
    +    /**
    +     * Add a <code>WAIT</code> clause to the <code>FOR UPDATE</code> clause at
    +     * the end of the query.
    +     * <p>
    +     * Be careful not to confuse this with {@link Object#wait(long)} !
    +     *
    +     * @see LockProvider#setForUpdateWait(int) see LockProvider for more details
    +     */
    +    @Support(ORACLE)
    +    SimpleSelectFinalStep<R> wait(int seconds);
    +
    +    /**
    +     * Add a <code>WAIT</code> clause to the <code>FOR UPDATE</code> clause at
    +     * the end of the query.
    +     *
    +     * @see LockProvider#setForUpdateNoWait() see LockProvider for more details
    +     */
    +    @Support(ORACLE)
    +    SimpleSelectFinalStep<R> noWait();
    +
    +    /**
    +     * Add a <code>WAIT</code> clause to the <code>FOR UPDATE</code> clause at
    +     * the end of the query.
    +     *
    +     * @see LockProvider#setForUpdateSkipLocked() see LockProvider for more
    +     *      details
    +     */
    +    @Support(ORACLE)
    +    SimpleSelectFinalStep<R> skipLocked();
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/SimpleSelectLimitStep.java b/jOOQ/src/main/java/org/jooq/SimpleSelectLimitStep.java
    new file mode 100644
    index 00000000000..fc3e41463c9
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/SimpleSelectLimitStep.java
    @@ -0,0 +1,160 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq;
    +
    +import static org.jooq.SQLDialect.CUBRID;
    +import static org.jooq.SQLDialect.DB2;
    +import static org.jooq.SQLDialect.DERBY;
    +import static org.jooq.SQLDialect.H2;
    +import static org.jooq.SQLDialect.HSQLDB;
    +import static org.jooq.SQLDialect.INGRES;
    +import static org.jooq.SQLDialect.MYSQL;
    +import static org.jooq.SQLDialect.ORACLE;
    +import static org.jooq.SQLDialect.POSTGRES;
    +import static org.jooq.SQLDialect.SQLITE;
    +import static org.jooq.SQLDialect.SQLSERVER;
    +import static org.jooq.SQLDialect.SYBASE;
    +
    +/**
    + * This type is used for the {@link Select}'s DSL API when selecting specific
    + * {@link Record} types.
    + * <p>
    + * Example: <code><pre>
    + * create.selectFrom(T_AUTHOR)
    + *       .where(TBook.LANGUAGE.equal("DE"))
    + *       .and(TBook.PUBLISHED.greaterThan(parseDate('2008-01-01')))
    + *       .orderBy(TAuthor.LAST_NAME.asc().nullsFirst())
    + *       .limit(2)
    + *       .offset(1)
    + *       .forUpdate()
    + *       .of(TAuthor.FIRST_NAME, TAuthor.LAST_NAME)
    + *       .noWait();
    + * </pre></code> Refer to the manual for more details
    + *
    + * @param <R> The record type being returned by this query
    + * @author Lukas Eder
    + */
    +public interface SimpleSelectLimitStep<R extends Record> extends SimpleSelectForUpdateStep<R> {
    +
    +    /**
    +     * Add a <code>LIMIT</code> clause to the query
    +     * <p>
    +     * If there is no <code>LIMIT</code> or <code>TOP</code> clause in your
    +     * RDBMS, this may be simulated with a <code>ROW_NUMBER()</code> window function
    +     * and nested <code>SELECT</code> statements.
    +     * <p>
    +     * This is the same as calling {@link #limit(int, int)} with offset = 0, or
    +     * calling <code>.limit(numberOfRows).offset(0)</code>
    +     */
    +    @Support
    +    SimpleSelectOffsetStep<R> limit(int numberOfRows);
    +
    +    /**
    +     * Add a <code>LIMIT</code> clause to the query using named parameters
    +     * <p>
    +     * Note that some dialects do not support bind values at all in
    +     * <code>LIMIT</code> or <code>TOP</code> clauses!
    +     * <p>
    +     * If there is no <code>LIMIT</code> or <code>TOP</code> clause in your
    +     * RDBMS, or the <code>LIMIT</code> or <code>TOP</code> clause does not
    +     * support bind values, this may be simulated with a <code>ROW_NUMBER()</code>
    +     * window function and nested <code>SELECT</code> statements.
    +     * <p>
    +     * This is the same as calling {@link #limit(int, int)} with offset = 0, or
    +     * calling <code>.limit(numberOfRows).offset(0)</code>
    +     */
    +    @Support({ CUBRID, DB2, DERBY, H2, HSQLDB, MYSQL, ORACLE, POSTGRES, SQLITE, SQLSERVER, SYBASE })
    +    SimpleSelectOffsetStep<R> limit(Param<Integer> numberOfRows);
    +
    +    /**
    +     * Add a <code>LIMIT</code> clause to the query
    +     * <p>
    +     * Note that some dialects do not support bind values at all in
    +     * <code>LIMIT</code> or <code>TOP</code> clauses!
    +     * <p>
    +     * If there is no <code>LIMIT</code> or <code>TOP</code> clause in your
    +     * RDBMS, or if your RDBMS does not natively support offsets, this is
    +     * simulated with a <code>ROW_NUMBER()</code> window function and nested
    +     * <code>SELECT</code> statements.
    +     */
    +    @Support({ CUBRID, DB2, DERBY, H2, HSQLDB, INGRES, MYSQL, ORACLE, POSTGRES, SQLITE, SQLSERVER, SYBASE })
    +    SimpleSelectForUpdateStep<R> limit(int offset, int numberOfRows);
    +
    +    /**
    +     * Add a <code>LIMIT</code> clause to the query using named parameters
    +     * <p>
    +     * Note that some dialects do not support bind values at all in
    +     * <code>LIMIT</code> or <code>TOP</code> clauses!
    +     * <p>
    +     * If there is no <code>LIMIT</code> or <code>TOP</code> clause in your
    +     * RDBMS, or the <code>LIMIT</code> or <code>TOP</code> clause does not
    +     * support bind values, or if your RDBMS does not natively support offsets,
    +     * this may be simulated with a <code>ROW_NUMBER()</code> window function and
    +     * nested <code>SELECT</code> statements.
    +     */
    +    @Support({ CUBRID, DB2, DERBY, H2, HSQLDB, MYSQL, ORACLE, POSTGRES, SQLITE, SQLSERVER, SYBASE })
    +    SimpleSelectForUpdateStep<R> limit(int offset, Param<Integer> numberOfRows);
    +
    +    /**
    +     * Add a <code>LIMIT</code> clause to the query using named parameters
    +     * <p>
    +     * Note that some dialects do not support bind values at all in
    +     * <code>LIMIT</code> or <code>TOP</code> clauses!
    +     * <p>
    +     * If there is no <code>LIMIT</code> or <code>TOP</code> clause in your
    +     * RDBMS, or the <code>LIMIT</code> or <code>TOP</code> clause does not
    +     * support bind values, or if your RDBMS does not natively support offsets,
    +     * this may be simulated with a <code>ROW_NUMBER()</code> window function and
    +     * nested <code>SELECT</code> statements.
    +     */
    +    @Support({ CUBRID, DB2, DERBY, H2, HSQLDB, MYSQL, ORACLE, POSTGRES, SQLITE, SQLSERVER, SYBASE })
    +    SimpleSelectForUpdateStep<R> limit(Param<Integer> offset, int numberOfRows);
    +
    +    /**
    +     * Add a <code>LIMIT</code> clause to the query using named parameters
    +     * <p>
    +     * Note that some dialects do not support bind values at all in
    +     * <code>LIMIT</code> or <code>TOP</code> clauses!
    +     * <p>
    +     * If there is no <code>LIMIT</code> or <code>TOP</code> clause in your
    +     * RDBMS, or the <code>LIMIT</code> or <code>TOP</code> clause does not
    +     * support bind values, or if your RDBMS does not natively support offsets,
    +     * this may be simulated with a <code>ROW_NUMBER()</code> window function
    +     * and nested <code>SELECT</code> statements.
    +     */
    +    @Support({ CUBRID, DB2, DERBY, H2, HSQLDB, MYSQL, ORACLE, POSTGRES, SQLITE, SQLSERVER, SYBASE })
    +    SimpleSelectForUpdateStep<R> limit(Param<Integer> offset, Param<Integer> numberOfRows);
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/SimpleSelectOffsetStep.java b/jOOQ/src/main/java/org/jooq/SimpleSelectOffsetStep.java
    new file mode 100644
    index 00000000000..d5fb4fc3aa9
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/SimpleSelectOffsetStep.java
    @@ -0,0 +1,93 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq;
    +
    +import static org.jooq.SQLDialect.CUBRID;
    +import static org.jooq.SQLDialect.DB2;
    +import static org.jooq.SQLDialect.DERBY;
    +import static org.jooq.SQLDialect.H2;
    +import static org.jooq.SQLDialect.HSQLDB;
    +import static org.jooq.SQLDialect.INGRES;
    +import static org.jooq.SQLDialect.MYSQL;
    +import static org.jooq.SQLDialect.ORACLE;
    +import static org.jooq.SQLDialect.POSTGRES;
    +import static org.jooq.SQLDialect.SQLITE;
    +import static org.jooq.SQLDialect.SQLSERVER;
    +import static org.jooq.SQLDialect.SYBASE;
    +
    +/**
    + * This type is used for the {@link Select}'s DSL API when selecting specific
    + * {@link Record} types.
    + * <p>
    + * Example: <code><pre>
    + * create.selectFrom(T_AUTHOR)
    + *       .where(TBook.LANGUAGE.equal("DE"))
    + *       .and(TBook.PUBLISHED.greaterThan(parseDate('2008-01-01')))
    + *       .orderBy(TAuthor.LAST_NAME.asc().nullsFirst())
    + *       .limit(2)
    + *       .offset(1)
    + *       .forUpdate()
    + *       .of(TAuthor.FIRST_NAME, TAuthor.LAST_NAME)
    + *       .noWait();
    + * </pre></code> Refer to the manual for more details
    + *
    + * @param <R> The record type being returned by this query
    + * @author Lukas Eder
    + */
    +public interface SimpleSelectOffsetStep<R extends Record> extends SimpleSelectForUpdateStep<R> {
    +
    +    /**
    +     * Add an <code>OFFSET</code> clause to the query
    +     * <p>
    +     * If there is no <code>LIMIT .. OFFSET</code> or <code>TOP</code> clause in
    +     * your RDBMS, or if your RDBMS does not natively support offsets, this is
    +     * simulated with a <code>ROW_NUMBER()</code> window function and nested
    +     * <code>SELECT</code> statements.
    +     */
    +    @Support({ CUBRID, DB2, DERBY, H2, HSQLDB, INGRES, MYSQL, ORACLE, POSTGRES, SQLITE, SQLSERVER, SYBASE })
    +    SimpleSelectForUpdateStep<R> offset(int offset);
    +
    +    /**
    +     * Add an <code>OFFSET</code> clause to the query using a named parameter
    +     * <p>
    +     * If there is no <code>LIMIT .. OFFSET</code> or <code>TOP</code> clause in
    +     * your RDBMS, or if your RDBMS does not natively support offsets, this is
    +     * simulated with a <code>ROW_NUMBER()</code> window function and nested
    +     * <code>SELECT</code> statements.
    +     */
    +    @Support({ CUBRID, DB2, DERBY, H2, HSQLDB, INGRES, MYSQL, ORACLE, POSTGRES, SQLITE, SQLSERVER, SYBASE })
    +    SimpleSelectForUpdateStep<R> offset(Param<Integer> offset);
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/SimpleSelectOrderByStep.java b/jOOQ/src/main/java/org/jooq/SimpleSelectOrderByStep.java
    new file mode 100644
    index 00000000000..2333e9a0f8c
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/SimpleSelectOrderByStep.java
    @@ -0,0 +1,90 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq;
    +
    +import java.util.Collection;
    +
    +/**
    + * This type is used for the {@link Select}'s DSL API when selecting specific
    + * {@link Record} types.
    + * <p>
    + * Example: <code><pre>
    + * create.selectFrom(T_AUTHOR)
    + *       .where(TBook.LANGUAGE.equal("DE"))
    + *       .and(TBook.PUBLISHED.greaterThan(parseDate('2008-01-01')))
    + *       .orderBy(TAuthor.LAST_NAME.asc().nullsFirst())
    + *       .limit(2)
    + *       .offset(1)
    + *       .forUpdate()
    + *       .of(TAuthor.FIRST_NAME, TAuthor.LAST_NAME)
    + *       .noWait();
    + * </pre></code> Refer to the manual for more details
    + *
    + * @param <R> The record type being returned by this query
    + * @author Lukas Eder
    + */
    +public interface SimpleSelectOrderByStep<R extends Record> extends SimpleSelectLimitStep<R> {
    +
    +    /**
    +     * Add an <code>ORDER BY</code> clause to the query
    +     */
    +    @Support
    +    SimpleSelectLimitStep<R> orderBy(Field<?>... fields);
    +
    +    /**
    +     * Add an <code>ORDER BY</code> clause to the query
    +     */
    +    @Support
    +    SimpleSelectLimitStep<R> orderBy(SortField<?>... fields);
    +
    +    /**
    +     * Add an <code>ORDER BY</code> clause to the query
    +     */
    +    @Support
    +    SimpleSelectLimitStep<R> orderBy(Collection<SortField<?>> fields);
    +
    +    /**
    +     * Add an <code>ORDER BY</code> clause to the query
    +     * <p>
    +     * Indexes start at <code>1</code> in SQL!
    +     * <p>
    +     * Note, you can use <code>orderBy(Factory.val(1).desc())</code> or
    +     * <code>orderBy(Factory.literal(1).desc())</code> to apply descending
    +     * ordering
    +     */
    +    @Support
    +    SimpleSelectLimitStep<R> orderBy(int... fieldIndexes);
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/SimpleSelectQuery.java b/jOOQ/src/main/java/org/jooq/SimpleSelectQuery.java
    new file mode 100644
    index 00000000000..d02ffbbe5e6
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/SimpleSelectQuery.java
    @@ -0,0 +1,54 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq;
    +
    +/**
    + * A simple select query that provides Records from a single table, with no
    + * joins allowed.
    + * <p>
    + * This is the type of query that is possible with a {@link SimpleSelectQuery}:
    + * <p>
    + * <code>
    + * SELECT * FROM [table] WHERE [conditions] ORDER BY [ordering] LIMIT [limit clause]
    + * </code>
    + *
    + * @param <R> The record type being returned by this query
    + * @author Lukas Eder
    + * @see SelectQuery
    + */
    +public interface SimpleSelectQuery<R extends Record> extends Select<R>, ConditionProvider, OrderProvider, LockProvider {
    +
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/SimpleSelectWhereStep.java b/jOOQ/src/main/java/org/jooq/SimpleSelectWhereStep.java
    new file mode 100644
    index 00000000000..837994484c6
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/SimpleSelectWhereStep.java
    @@ -0,0 +1,112 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq;
    +
    +import java.util.Collection;
    +
    +import org.jooq.impl.Factory;
    +
    +/**
    + * This type is used for the {@link Select}'s DSL API when selecting specific
    + * {@link Record} types.
    + * <p>
    + * Example: <code><pre>
    + * create.selectFrom(T_AUTHOR)
    + *       .where(TBook.LANGUAGE.equal("DE"))
    + *       .and(TBook.PUBLISHED.greaterThan(parseDate('2008-01-01')))
    + *       .orderBy(TAuthor.LAST_NAME.asc().nullsFirst())
    + *       .limit(2)
    + *       .offset(1)
    + *       .forUpdate()
    + *       .of(TAuthor.FIRST_NAME, TAuthor.LAST_NAME)
    + *       .noWait();
    + * </pre></code> Refer to the manual for more details
    + *
    + * @param <R> The record type being returned by this query
    + * @author Lukas Eder
    + */
    +public interface SimpleSelectWhereStep<R extends Record> extends SimpleSelectOrderByStep<R> {
    +
    +    /**
    +     * Add a <code>WHERE</code> clause to the query
    +     */
    +    @Support
    +    SimpleSelectConditionStep<R> where(Condition... conditions);
    +
    +    /**
    +     * Add a <code>WHERE</code> clause to the query
    +     */
    +    @Support
    +    SimpleSelectConditionStep<R> where(Collection<Condition> conditions);
    +
    +    /**
    +     * Add a <code>WHERE</code> clause to the query
    +     * <p>
    +     * <b>NOTE</b>: When inserting plain SQL into jOOQ objects, you must
    +     * guarantee syntax integrity. You may also create the possibility of
    +     * malicious SQL injection. Be sure to properly use bind variables and/or
    +     * escape literals when concatenated into SQL clauses!
    +     *
    +     * @see Factory#condition(String)
    +     */
    +    @Support
    +    SimpleSelectConditionStep<R> where(String sql);
    +
    +    /**
    +     * Add a <code>WHERE</code> clause to the query
    +     * <p>
    +     * <b>NOTE</b>: When inserting plain SQL into jOOQ objects, you must
    +     * guarantee syntax integrity. You may also create the possibility of
    +     * malicious SQL injection. Be sure to properly use bind variables and/or
    +     * escape literals when concatenated into SQL clauses!
    +     *
    +     * @see Factory#condition(String, Object...)
    +     */
    +    @Support
    +    SimpleSelectConditionStep<R> where(String sql, Object... bindings);
    +
    +    /**
    +     * Add a <code>WHERE EXISTS</code> clause to the query
    +     */
    +    @Support
    +    SimpleSelectConditionStep<R> whereExists(Select<?> select);
    +
    +    /**
    +     * Add a <code>WHERE NOT EXISTS</code> clause to the query
    +     */
    +    @Support
    +    SimpleSelectConditionStep<R> whereNotExists(Select<?> select);
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/SortField.java b/jOOQ/src/main/java/org/jooq/SortField.java
    new file mode 100644
    index 00000000000..99e6be20b91
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/SortField.java
    @@ -0,0 +1,65 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq;
    +
    +/**
    + * A wrapper for a {@link Field} and a {@link SortField}
    + *
    + * @param <T> The field type
    + * @author Lukas Eder
    + * @see Field#asc()
    + * @see Field#desc()
    + */
    +public interface SortField<T> extends NamedTypeProviderQueryPart<T> {
    +
    +    /**
    +     * Get the underlying sort order of this sort field
    +     */
    +    SortOrder getOrder();
    +
    +    /**
    +     * Add a <code>NULLS FIRST</code> clause to this sort field
    +     */
    +    @Support
    +    SortField<T> nullsFirst();
    +
    +    /**
    +     * Add a <code>NULLS LAST</code> clause to this sort field
    +     */
    +    @Support
    +    SortField<T> nullsLast();
    +
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/SortOrder.java b/jOOQ/src/main/java/org/jooq/SortOrder.java
    new file mode 100644
    index 00000000000..d85e9135928
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/SortOrder.java
    @@ -0,0 +1,67 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +
    +package org.jooq;
    +
    +/**
    + * The sorting order used in OrderByFieldLists
    + *
    + * @author Lukas Eder
    + */
    +public enum SortOrder {
    +
    +    /**
    +     * Ascending sort order
    +     */
    +    @Support
    +    ASC("asc"),
    +
    +    /**
    +     * Descending sort order
    +     */
    +    @Support
    +    DESC("desc");
    +
    +    private final String sql;
    +
    +    private SortOrder(String sql) {
    +        this.sql = sql;
    +    }
    +
    +    public String toSQL() {
    +        return sql;
    +    }
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/Store.java b/jOOQ/src/main/java/org/jooq/Store.java
    new file mode 100644
    index 00000000000..6e9be8ce1a5
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/Store.java
    @@ -0,0 +1,513 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq;
    +
    +import java.math.BigDecimal;
    +import java.math.BigInteger;
    +import java.sql.Date;
    +import java.sql.Time;
    +import java.sql.Timestamp;
    +
    +import org.jooq.exception.DataTypeException;
    +import org.jooq.tools.Convert;
    +
    +/**
    + * A common base type for {@link Record} and {@link ArrayRecord} providing
    + * common, index-based functionality for storage objects
    + * <p>
    + * <code>Store</code> implements {@link Attachable}, as some stores need a
    + * reference to an open JDBC connection to perform some actions on their
    + * elements.
    + *
    + * @param <E> The store's element type
    + * @author Lukas Eder
    + */
    +public interface Store<E> extends Attachable {
    +
    +    /**
    +     * Get the size of this {@link Store}.
    +     * <p>
    +     * If this is an {@link ArrayRecord}, then the array size is returned. If
    +     * this is a {@link Record}, then the number of fields is returned.
    +     * <p>
    +     * It can be said that <code>getValue(size() - 1)</code> will return a
    +     * value, if <code>size &gt; 0</code>
    +     */
    +    int size();
    +
    +    /**
    +     * Get a value from this Store, providing a field index.
    +     *
    +     * @param index The field's index
    +     * @return The value of a field's index contained in this Store
    +     * @throws IllegalArgumentException If the argument index is not contained
    +     *             in the Store
    +     */
    +    E getValue(int index) throws IllegalArgumentException;
    +
    +    /**
    +     * Get a value from this Store, providing a field index.
    +     *
    +     * @param index The field's index
    +     * @param defaultValue The default value instead of <code>null</code>
    +     * @return The value of a field's index contained in this Store, or
    +     *         defaultValue, if <code>null</code>
    +     * @throws IllegalArgumentException If the argument index is not contained
    +     *             in the Store
    +     */
    +    E getValue(int index, E defaultValue) throws IllegalArgumentException;
    +
    +    /**
    +     * Get a value from this Store, providing a field index.
    +     *
    +     * @param index The field's index
    +     * @return The converted value of a field's index contained in this Store
    +     * @throws IllegalArgumentException If the argument index is not contained
    +     *             in the Store
    +     * @throws DataTypeException wrapping data type conversion exception that
    +     *             might have occurred
    +     */
    +    BigDecimal getValueAsBigDecimal(int index) throws IllegalArgumentException, DataTypeException;
    +
    +    /**
    +     * Get a value from this Store, providing a field index.
    +     *
    +     * @param index The field's index
    +     * @param defaultValue The default value instead of <code>null</code>
    +     * @return The converted value of a field's index contained in this Store,
    +     *         or defaultValue, if <code>null</code>
    +     * @throws IllegalArgumentException If the argument index is not contained
    +     *             in the Store
    +     * @throws DataTypeException wrapping data type conversion exception that
    +     *             might have occurred
    +     */
    +    BigDecimal getValueAsBigDecimal(int index, BigDecimal defaultValue) throws IllegalArgumentException,
    +        DataTypeException;
    +
    +    /**
    +     * Get a value from this Store, providing a field index.
    +     * <p>
    +     * boolean values for <code>true</code> are any of these case-insensitive
    +     * strings:
    +     * <ul>
    +     * <li><code>1</code></li>
    +     * <li><code>y</code></li>
    +     * <li><code>yes</code></li>
    +     * <li><code>true</code></li>
    +     * <li><code>on</code></li>
    +     * <li><code>enabled</code></li>
    +     * </ul>
    +     * <p>
    +     * boolean values for <code>false</code> are any of these case-insensitive
    +     * strings:
    +     * <ul>
    +     * <li><code>0</code></li>
    +     * <li><code>n</code></li>
    +     * <li><code>no</code></li>
    +     * <li><code>false</code></li>
    +     * <li><code>off</code></li>
    +     * <li><code>disabled</code></li>
    +     * </ul>
    +     * <p>
    +     * All other values evaluate to <code>null</code>
    +     *
    +     * @param index The field's index
    +     * @return The converted value of a field's index contained in this Store
    +     * @throws IllegalArgumentException If the argument index is not contained
    +     *             in the Store
    +     * @throws DataTypeException wrapping data type conversion exception that
    +     *             might have occurred
    +     */
    +    Boolean getValueAsBoolean(int index) throws IllegalArgumentException, DataTypeException;
    +
    +    /**
    +     * Get a value from this Store, providing a field index.
    +     * <p>
    +     * boolean values for <code>true</code> are any of these case-insensitive
    +     * strings:
    +     * <ul>
    +     * <li><code>1</code></li>
    +     * <li><code>y</code></li>
    +     * <li><code>yes</code></li>
    +     * <li><code>true</code></li>
    +     * <li><code>on</code></li>
    +     * <li><code>enabled</code></li>
    +     * </ul>
    +     * <p>
    +     * boolean values for <code>false</code> are any of these case-insensitive
    +     * strings:
    +     * <ul>
    +     * <li><code>0</code></li>
    +     * <li><code>n</code></li>
    +     * <li><code>no</code></li>
    +     * <li><code>false</code></li>
    +     * <li><code>off</code></li>
    +     * <li><code>disabled</code></li>
    +     * </ul>
    +     * <p>
    +     * All other values evaluate to <code>null</code>
    +     *
    +     * @param index The field's index
    +     * @param defaultValue The default value instead of <code>null</code>
    +     * @return The converted value of a field's index contained in this Store,
    +     *         or defaultValue, if <code>null</code>
    +     * @throws IllegalArgumentException If the argument index is not contained
    +     *             in the Store
    +     * @throws DataTypeException wrapping data type conversion exception that
    +     *             might have occurred
    +     */
    +    Boolean getValueAsBoolean(int index, Boolean defaultValue) throws IllegalArgumentException, DataTypeException;
    +
    +    /**
    +     * Get a value from this Store, providing a field index.
    +     *
    +     * @param index The field's index
    +     * @return The converted value of a field's index contained in this Store
    +     * @throws IllegalArgumentException If the argument index is not contained
    +     *             in the Store
    +     * @throws DataTypeException wrapping data type conversion exception that
    +     *             might have occurred
    +     */
    +    BigInteger getValueAsBigInteger(int index) throws IllegalArgumentException, DataTypeException;
    +
    +    /**
    +     * Get a value from this Store, providing a field index.
    +     *
    +     * @param index The field's index
    +     * @param defaultValue The default value instead of <code>null</code>
    +     * @return The converted value of a field's index contained in this Store,
    +     *         or defaultValue, if <code>null</code>
    +     * @throws IllegalArgumentException If the argument index is not contained
    +     *             in the Store
    +     * @throws DataTypeException wrapping data type conversion exception that
    +     *             might have occurred
    +     */
    +    BigInteger getValueAsBigInteger(int index, BigInteger defaultValue) throws IllegalArgumentException,
    +        DataTypeException;
    +
    +    /**
    +     * Get a value from this Store, providing a field index.
    +     *
    +     * @param index The field's index
    +     * @return The converted value of a field's index contained in this Store
    +     * @throws IllegalArgumentException If the argument index is not contained
    +     *             in the Store
    +     * @throws DataTypeException wrapping data type conversion exception that
    +     *             might have occurred
    +     */
    +    Byte getValueAsByte(int index) throws IllegalArgumentException, DataTypeException;
    +
    +    /**
    +     * Get a value from this Store, providing a field index.
    +     *
    +     * @param index The field's index
    +     * @param defaultValue The default value instead of <code>null</code>
    +     * @return The converted value of a field's index contained in this Store,
    +     *         or defaultValue, if <code>null</code>
    +     * @throws IllegalArgumentException If the argument index is not contained
    +     *             in the Store
    +     * @throws DataTypeException wrapping data type conversion exception that
    +     *             might have occurred
    +     */
    +    Byte getValueAsByte(int index, Byte defaultValue) throws IllegalArgumentException, DataTypeException;
    +
    +    /**
    +     * Get a value from this Store, providing a field index.
    +     *
    +     * @param index The field's index
    +     * @return The converted value of a field's index contained in this Store
    +     * @throws IllegalArgumentException If the argument index is not contained
    +     *             in the Store
    +     * @throws DataTypeException wrapping data type conversion exception that
    +     *             might have occurred
    +     */
    +    Date getValueAsDate(int index) throws IllegalArgumentException, DataTypeException;
    +
    +    /**
    +     * Get a value from this Store, providing a field index.
    +     *
    +     * @param index The field's index
    +     * @param defaultValue The default value instead of <code>null</code>
    +     * @return The converted value of a field's index contained in this Store,
    +     *         or defaultValue, if <code>null</code>
    +     * @throws IllegalArgumentException If the argument index is not contained
    +     *             in the Store
    +     * @throws DataTypeException wrapping data type conversion exception that
    +     *             might have occurred
    +     */
    +    Date getValueAsDate(int index, Date defaultValue) throws IllegalArgumentException, DataTypeException;
    +
    +    /**
    +     * Get a value from this Store, providing a field index.
    +     *
    +     * @param index The field's index
    +     * @return The converted value of a field's index contained in this Store
    +     * @throws IllegalArgumentException If the argument index is not contained
    +     *             in the Store
    +     * @throws DataTypeException wrapping data type conversion exception that
    +     *             might have occurred
    +     */
    +    Double getValueAsDouble(int index) throws IllegalArgumentException, DataTypeException;
    +
    +    /**
    +     * Get a value from this Store, providing a field index.
    +     *
    +     * @param index The field's index
    +     * @param defaultValue The default value instead of <code>null</code>
    +     * @return The converted value of a field's index contained in this Store,
    +     *         or defaultValue, if <code>null</code>
    +     * @throws IllegalArgumentException If the argument index is not contained
    +     *             in the Store
    +     * @throws DataTypeException wrapping data type conversion exception that
    +     *             might have occurred
    +     */
    +    Double getValueAsDouble(int index, Double defaultValue) throws IllegalArgumentException, DataTypeException;
    +
    +    /**
    +     * Get a value from this Store, providing a field index.
    +     *
    +     * @param index The field's index
    +     * @return The converted value of a field's index contained in this Store
    +     * @throws IllegalArgumentException If the argument index is not contained
    +     *             in the Store
    +     * @throws DataTypeException wrapping data type conversion exception that
    +     *             might have occurred
    +     */
    +    Float getValueAsFloat(int index) throws IllegalArgumentException, DataTypeException;
    +
    +    /**
    +     * Get a value from this Store, providing a field index.
    +     *
    +     * @param index The field's index
    +     * @param defaultValue The default value instead of <code>null</code>
    +     * @return The converted value of a field's index contained in this Store,
    +     *         or defaultValue, if <code>null</code>
    +     * @throws IllegalArgumentException If the argument index is not contained
    +     *             in the Store
    +     * @throws DataTypeException wrapping data type conversion exception that
    +     *             might have occurred
    +     */
    +    Float getValueAsFloat(int index, Float defaultValue) throws IllegalArgumentException, DataTypeException;
    +
    +    /**
    +     * Get a value from this Store, providing a field index.
    +     *
    +     * @param index The field's index
    +     * @return The converted value of a field's index contained in this Store
    +     * @throws IllegalArgumentException If the argument index is not contained
    +     *             in the Store
    +     * @throws DataTypeException wrapping data type conversion exception that
    +     *             might have occurred
    +     */
    +    Integer getValueAsInteger(int index) throws IllegalArgumentException, DataTypeException;
    +
    +    /**
    +     * Get a value from this Store, providing a field index.
    +     *
    +     * @param index The field's index
    +     * @param defaultValue The default value instead of <code>null</code>
    +     * @return The converted value of a field's index contained in this Store,
    +     *         or defaultValue, if <code>null</code>
    +     * @throws IllegalArgumentException If the argument index is not contained
    +     *             in the Store
    +     * @throws DataTypeException wrapping data type conversion exception that
    +     *             might have occurred
    +     */
    +    Integer getValueAsInteger(int index, Integer defaultValue) throws IllegalArgumentException, DataTypeException;
    +
    +    /**
    +     * Get a value from this Store, providing a field index.
    +     *
    +     * @param index The field's index
    +     * @return The converted value of a field's index contained in this Store
    +     * @throws IllegalArgumentException If the argument index is not contained
    +     *             in the Store
    +     * @throws DataTypeException wrapping data type conversion exception that
    +     *             might have occurred
    +     */
    +    Long getValueAsLong(int index) throws IllegalArgumentException, DataTypeException;
    +
    +    /**
    +     * Get a value from this Store, providing a field index.
    +     *
    +     * @param index The field's index
    +     * @param defaultValue The default value instead of <code>null</code>
    +     * @return The converted value of a field's index contained in this Store,
    +     *         or defaultValue, if <code>null</code>
    +     * @throws IllegalArgumentException If the argument index is not contained
    +     *             in the Store
    +     * @throws DataTypeException wrapping data type conversion exception that
    +     *             might have occurred
    +     */
    +    Long getValueAsLong(int index, Long defaultValue) throws IllegalArgumentException, DataTypeException;
    +
    +    /**
    +     * Get a value from this Store, providing a field index.
    +     *
    +     * @param index The field's index
    +     * @return The converted value of a field's index contained in this Store
    +     * @throws IllegalArgumentException If the argument index is not contained
    +     *             in the Store
    +     * @throws DataTypeException wrapping data type conversion exception that
    +     *             might have occurred
    +     */
    +    Short getValueAsShort(int index) throws IllegalArgumentException, DataTypeException;
    +
    +    /**
    +     * Get a value from this Store, providing a field index.
    +     *
    +     * @param index The field's index
    +     * @param defaultValue The default value instead of <code>null</code>
    +     * @return The converted value of a field's index contained in this Store,
    +     *         or defaultValue, if <code>null</code>
    +     * @throws IllegalArgumentException If the argument index is not contained
    +     *             in the Store
    +     * @throws DataTypeException wrapping data type conversion exception that
    +     *             might have occurred
    +     */
    +    Short getValueAsShort(int index, Short defaultValue) throws IllegalArgumentException, DataTypeException;
    +
    +    /**
    +     * Get a value from this Store, providing a field index.
    +     *
    +     * @param index The field's index
    +     * @return The converted value of a field's index contained in this Store
    +     * @throws IllegalArgumentException If the argument index is not contained
    +     *             in the Store
    +     * @throws DataTypeException wrapping data type conversion exception that
    +     *             might have occurred
    +     */
    +    String getValueAsString(int index) throws IllegalArgumentException, DataTypeException;
    +
    +    /**
    +     * Get a value from this Store, providing a field index.
    +     *
    +     * @param index The field's index
    +     * @param defaultValue The default value instead of <code>null</code>
    +     * @return The converted value of a field's index contained in this Store,
    +     *         or defaultValue, if <code>null</code>
    +     * @throws IllegalArgumentException If the argument index is not contained
    +     *             in the Store
    +     * @throws DataTypeException wrapping data type conversion exception that
    +     *             might have occurred
    +     */
    +    String getValueAsString(int index, String defaultValue) throws IllegalArgumentException, DataTypeException;
    +
    +    /**
    +     * Get a value from this Store, providing a field index.
    +     *
    +     * @param index The field's index
    +     * @return The converted value of a field's index contained in this Store
    +     * @throws IllegalArgumentException If the argument index is not contained
    +     *             in the Store
    +     * @throws DataTypeException wrapping data type conversion exception that
    +     *             might have occurred
    +     */
    +    Time getValueAsTime(int index) throws IllegalArgumentException, DataTypeException;
    +
    +    /**
    +     * Get a value from this Store, providing a field index.
    +     *
    +     * @param index The field's index
    +     * @param defaultValue The default value instead of <code>null</code>
    +     * @return The converted value of a field's index contained in this Store,
    +     *         or defaultValue, if <code>null</code>
    +     * @throws IllegalArgumentException If the argument index is not contained
    +     *             in the Store
    +     * @throws DataTypeException wrapping data type conversion exception that
    +     *             might have occurred
    +     */
    +    Time getValueAsTime(int index, Time defaultValue) throws IllegalArgumentException, DataTypeException;
    +
    +    /**
    +     * Get a value from this Store, providing a field index.
    +     *
    +     * @param index The field's index
    +     * @return The converted value of a field's index contained in this Store
    +     * @throws IllegalArgumentException If the argument index is not contained
    +     *             in the Store
    +     * @throws DataTypeException wrapping data type conversion exception that
    +     *             might have occurred
    +     */
    +    Timestamp getValueAsTimestamp(int index) throws IllegalArgumentException, DataTypeException;
    +
    +    /**
    +     * Get a value from this Store, providing a field index.
    +     *
    +     * @param index The field's index
    +     * @param defaultValue The default value instead of <code>null</code>
    +     * @return The converted value of a field's index contained in this Store,
    +     *         or defaultValue, if <code>null</code>
    +     * @throws IllegalArgumentException If the argument index is not contained
    +     *             in the Store
    +     * @throws DataTypeException wrapping data type conversion exception that
    +     *             might have occurred
    +     */
    +    Timestamp getValueAsTimestamp(int index, Timestamp defaultValue) throws IllegalArgumentException, DataTypeException;
    +
    +    /**
    +     * Get a converted value from this Store, providing a field index.
    +     *
    +     * @param <T> The conversion type parameter
    +     * @param index The field's index
    +     * @param type The conversion type
    +     * @return The value of a field's index contained in this Store
    +     * @throws IllegalArgumentException If the argument index is not contained
    +     *             in the Store
    +     * @throws DataTypeException wrapping data type conversion exception that
    +     *             might have occurred
    +     * @see Convert#convert(Object, Class)
    +     */
    +    <T> T getValue(int index, Class<? extends T> type) throws IllegalArgumentException, DataTypeException;
    +
    +    /**
    +     * Get a converted value from this Store, providing a field index.
    +     *
    +     * @param <T> The conversion type parameter
    +     * @param index The field's index
    +     * @param type The conversion type
    +     * @param defaultValue The default value instead of <code>null</code>
    +     * @return The value of a field's index contained in this Store, or
    +     *         defaultValue, if <code>null</code>
    +     * @throws IllegalArgumentException If the argument index is not contained
    +     *             in the Store
    +     * @throws DataTypeException wrapping data type conversion exception that
    +     *             might have occurred
    +     * @see Convert#convert(Object, Class)
    +     */
    +    <T> T getValue(int index, Class<? extends T> type, T defaultValue) throws IllegalArgumentException,
    +        DataTypeException;
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/StoreQuery.java b/jOOQ/src/main/java/org/jooq/StoreQuery.java
    new file mode 100644
    index 00000000000..7cf6ef1b17c
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/StoreQuery.java
    @@ -0,0 +1,111 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq;
    +
    +import static org.jooq.SQLDialect.ORACLE;
    +
    +import java.util.List;
    +import java.util.Map;
    +
    +/**
    + * A query storing objects to the database. This is either an insert or an
    + * update query.
    + *
    + * @param <R> The record type of the table being modified
    + * @author Lukas Eder
    + */
    +public interface StoreQuery<R extends Record> extends Query {
    +
    +    /**
    +     * Add values to the store statement
    +     *
    +     * @param record The record holding values that are stored by the query
    +     */
    +    @Support
    +    void setRecord(R record);
    +
    +    /**
    +     * Add a value to the store statement
    +     *
    +     * @param field The field
    +     * @param value The value
    +     */
    +    @Support
    +    <T> void addValue(Field<T> field, T value);
    +
    +    /**
    +     * Add a value to the store statement
    +     *
    +     * @param field The field
    +     * @param value The value. If value is <code>null</code>, this results in
    +     *            calling {@link #addValue(Field, Object)} with null as a value.
    +     */
    +    @Support
    +    <T> void addValue(Field<T> field, Field<T> value);
    +
    +    /**
    +     * Add multiple values to the store statement.
    +     * <p>
    +     * Please assure that key/value pairs have matching <code>&lt;T&gt;</code>
    +     * types. Values can either be of type <code>&lt;T&gt;</code> or
    +     * <code>Field&lt;T&gt;</code>
    +     */
    +    @Support
    +    void addValues(Map<? extends Field<?>, ?> map);
    +
    +    /**
    +     * Add a value to the store statement
    +     *
    +     * @param <A> The field type
    +     * @param <T> The array type
    +     * @param field The field
    +     * @param value The value
    +     */
    +    @Support(ORACLE)
    +    <A extends ArrayRecord<T>, T> void addValueAsArray(Field<A> field, T... value);
    +
    +    /**
    +     * Add a value to the store statement
    +     *
    +     * @param <A> The field type
    +     * @param <T> The array type
    +     * @param field The field
    +     * @param value The value
    +     */
    +    @Support(ORACLE)
    +    <A extends ArrayRecord<T>, T> void addValueAsArray(Field<A> field, List<T> value);
    +
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/Support.java b/jOOQ/src/main/java/org/jooq/Support.java
    new file mode 100644
    index 00000000000..bbebf851b32
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/Support.java
    @@ -0,0 +1,83 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq;
    +
    +import static java.lang.annotation.RetentionPolicy.RUNTIME;
    +
    +import java.lang.annotation.ElementType;
    +import java.lang.annotation.Retention;
    +import java.lang.annotation.Target;
    +
    +import org.jooq.exception.SQLDialectNotSupportedException;
    +
    +/**
    + * A formal declaration of whether any API element is supported by a given
    + * {@link SQLDialect}
    + * <p>
    + * The annotation is mainly used in three modes:
    + * <ul>
    + * <li>The annotation is absent on a method. This means that the applied
    + * <code>SQLDialect</code> is irrelevant for that method. This is mostly the
    + * case for jOOQ's general API (creating factories, rendering SQL, binding
    + * variables, etc.) as well as utility methods.</li>
    + * <li>The annotation is present but "empty" on a method, i.e. it specifies no
    + * <code>SQLDialect</code>. This means that all of jOOQ's dialects are supported
    + * by this API method. This is typically the case with jOOQ's SQL construction
    + * API for very common clauses, such as the creation of <code>SELECT</code>,
    + * <code>UPDATE</code>, <code>INSERT</code>, <code>DELETE</code>.</li>
    + * <li>The annotation is present and specifies one or more dialects. A method
    + * annotated in such a way should be used only along with any of the dialects
    + * specified by the annotation. This is typically the case with jOOQ's SQL
    + * construction API for less common clauses, such as the creation of
    + * <code>MERGE</code>, etc.</li>
    + * </ul>
    + * <p>
    + * Future versions of jOOQ may use these annotations for throwing
    + * {@link SQLDialectNotSupportedException} where appropriate, or preprocessing
    + * jOOQ source code in order to mark unsupported API as {@link Deprecated}
    + *
    + * @author Lukas Eder
    + */
    +@Target({ElementType.METHOD, ElementType.FIELD})
    +@Retention(RUNTIME)
    +public @interface Support {
    +
    +    /**
    +     * A {@link SQLDialect} array containing all dialects that are supported by
    +     * the API method annotated with this annotation.
    +     */
    +    SQLDialect[] value() default {};
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/Table.java b/jOOQ/src/main/java/org/jooq/Table.java
    new file mode 100644
    index 00000000000..76214c25b50
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/Table.java
    @@ -0,0 +1,504 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +
    +package org.jooq;
    +
    +import static org.jooq.SQLDialect.ASE;
    +import static org.jooq.SQLDialect.CUBRID;
    +import static org.jooq.SQLDialect.DB2;
    +import static org.jooq.SQLDialect.DERBY;
    +import static org.jooq.SQLDialect.H2;
    +import static org.jooq.SQLDialect.HSQLDB;
    +import static org.jooq.SQLDialect.INGRES;
    +import static org.jooq.SQLDialect.MYSQL;
    +import static org.jooq.SQLDialect.ORACLE;
    +import static org.jooq.SQLDialect.POSTGRES;
    +import static org.jooq.SQLDialect.SQLSERVER;
    +import static org.jooq.SQLDialect.SYBASE;
    +
    +import java.util.Collection;
    +import java.util.List;
    +
    +import org.jooq.impl.Factory;
    +
    +/**
    + * A table to be used in queries
    + *
    + * @param <R> The record type associated with this table
    + * @author Lukas Eder
    + */
    +public interface Table<R extends Record> extends Type<R>, AliasProvider<Table<R>>, TableLike<R> {
    +
    +    /**
    +     * Retrieve the table's <code>IDENTITY</code> information, if available.
    +     * <p>
    +     * With SQL:2003, the concept of <code>IDENTITY</code> columns was
    +     * introduced in most RDBMS. These are special kinds of columns that have
    +     * auto-increment functionality when <code>INSERT</code> statements are
    +     * performed.
    +     * <p>
    +     * An <code>IDENTITY</code> column is usually part of the
    +     * <code>PRIMARY KEY</code> or of a <code>UNIQUE KEY</code> in the table,
    +     * although in some RDBMS, this is not required. There can only be at most
    +     * one <code>IDENTITY</code> column.
    +     * <p>
    +     * Note: Unfortunately, this is not supported in the Oracle dialect, where
    +     * identities simulated by triggers cannot be formally detected.
    +     *
    +     * @return The table's <code>IDENTITY</code> information, or
    +     *         <code>null</code>, if no such information is available.
    +     */
    +    Identity<R, ? extends Number> getIdentity();
    +
    +    /**
    +     * Get the list of <code>FOREIGN KEY</code>'s of this table
    +     *
    +     * @return This table's <code>FOREIGN KEY</code>'s. This is never
    +     *         <code>null</code>.
    +     */
    +    List<ForeignKey<R, ?>> getReferences();
    +
    +    /**
    +     * Get a list of <code>FOREIGN KEY</code>'s of this table, referencing a
    +     * specific table.
    +     *
    +     * @param <O> The other table's record type
    +     * @param other The other table of the foreign key relationship
    +     * @return This table's <code>FOREIGN KEY</code>'s towards an other table.
    +     *         This is never <code>null</code>.
    +     */
    +    <O extends Record> List<ForeignKey<R, O>> getReferencesTo(Table<O> other);
    +
    +    /**
    +     * Create a new <code>TABLE</code> reference from this table, pivoting it
    +     * into another form
    +     * <p>
    +     * This has been observed to work with
    +     * <ul>
    +     * <li> {@link SQLDialect#ORACLE}</li>
    +     * <li> {@link SQLDialect#SQLSERVER} (not yet officially supported)</li>
    +     * <li>Other dialects by using some means of simulation (not yet officially
    +     * supported)</li>
    +     * </ul>
    +     *
    +     * @param aggregateFunctions The aggregate functions used for pivoting.
    +     * @return A DSL object to create the <code>PIVOT</code> expression
    +     */
    +    @Support({ ORACLE })
    +    PivotForStep pivot(Field<?>... aggregateFunctions);
    +
    +    /**
    +     * Create a new <code>TABLE</code> reference from this table, pivoting it
    +     * into another form
    +     * <p>
    +     * For more details, see {@link #pivot(Field...)}
    +     *
    +     * @param aggregateFunctions The aggregate functions used for pivoting.
    +     * @return A DSL object to create the <code>PIVOT</code> expression
    +     * @see #pivot(Field...)
    +     */
    +    @Support({ ORACLE })
    +    PivotForStep pivot(Collection<? extends Field<?>> aggregateFunctions);
    +
    +    /**
    +     * Create a new <code>TABLE</code> reference from this table, applying
    +     * relational division.
    +     * <p>
    +     * Relational division is the inverse of a cross join operation. The
    +     * following is an approximate definition of a relational division:
    +     * <code><pre>
    +     * Assume the following cross join / cartesian product
    +     * C = A × B
    +     *
    +     * Then it can be said that
    +     * A = C ÷ B
    +     * B = C ÷ A
    +     * </pre></code>
    +     * <p>
    +     * With jOOQ, you can simplify using relational divisions by using the
    +     * following syntax: <code><pre>
    +     * C.divideBy(B).on(C.ID.equal(B.C_ID)).returning(C.TEXT)
    +     * </pre></code>
    +     * <p>
    +     * The above roughly translates to <code><pre>
    +     * SELECT DISTINCT C.TEXT FROM C "c1"
    +     * WHERE NOT EXISTS (
    +     *   SELECT 1 FROM B
    +     *   WHERE NOT EXISTS (
    +     *     SELECT 1 FROM C "c2"
    +     *     WHERE "c2".TEXT = "c1".TEXT
    +     *     AND "c2".ID = B.C_ID
    +     *   )
    +     * )
    +     * </pre></code>
    +     * <p>
    +     * Or in plain text: Find those TEXT values in C whose ID's correspond to
    +     * all ID's in B. Note that from the above SQL statement, it is immediately
    +     * clear that proper indexing is of the essence. Be sure to have indexes on
    +     * all columns referenced from the <code>on(...)</code> and
    +     * <code>returning(...)</code> clauses.
    +     * <p>
    +     * For more information about relational division and some nice, real-life
    +     * examples, see
    +     * <ul>
    +     * <li><a
    +     * href="http://en.wikipedia.org/wiki/Relational_algebra#Division">http://en.wikipedia.org/wiki/Relational_algebra#Division</a></li>
    +     * <li><a href=
    +     * "http://www.simple-talk.com/sql/t-sql-programming/divided-we-stand-the-sql-of-relational-division/"
    +     * >http://www.simple-talk.com/sql/t-sql-programming/divided-we-stand-the-sql-of-relational-division/</a></li>
    +     * </ul>
    +     * <p>
    +     * This has been observed to work with all dialects
    +     */
    +    @Support
    +    DivideByOnStep divideBy(Table<?> divisor);
    +
    +    /**
    +     * <code>INNER JOIN</code> a table to this table.
    +     */
    +    @Support
    +    TableOnStep join(TableLike<?> table);
    +
    +    /**
    +     * <code>INNER JOIN</code> a table to this table.
    +     * <p>
    +     * <b>NOTE</b>: When inserting plain SQL into jOOQ objects, you must
    +     * guarantee syntax integrity. You may also create the possibility of
    +     * malicious SQL injection. Be sure to properly use bind variables and/or
    +     * escape literals when concatenated into SQL clauses!
    +     *
    +     * @see Factory#table(String)
    +     */
    +    @Support
    +    TableOnStep join(String sql);
    +
    +    /**
    +     * <code>INNER JOIN</code> a table to this table.
    +     * <p>
    +     * <b>NOTE</b>: When inserting plain SQL into jOOQ objects, you must
    +     * guarantee syntax integrity. You may also create the possibility of
    +     * malicious SQL injection. Be sure to properly use bind variables and/or
    +     * escape literals when concatenated into SQL clauses!
    +     *
    +     * @see Factory#table(String, Object...)
    +     */
    +    @Support
    +    TableOnStep join(String sql, Object... bindings);
    +
    +    /**
    +     * <code>LEFT OUTER JOIN</code> a table to this table.
    +     */
    +    @Support
    +    TableOnStep leftOuterJoin(TableLike<?> table);
    +
    +    /**
    +     * <code>LEFT OUTER JOIN</code> a table to this table.
    +     * <p>
    +     * <b>NOTE</b>: When inserting plain SQL into jOOQ objects, you must
    +     * guarantee syntax integrity. You may also create the possibility of
    +     * malicious SQL injection. Be sure to properly use bind variables and/or
    +     * escape literals when concatenated into SQL clauses!
    +     *
    +     * @see Factory#table(String)
    +     */
    +    @Support
    +    TableOnStep leftOuterJoin(String sql);
    +
    +    /**
    +     * <code>LEFT OUTER JOIN</code> a table to this table.
    +     * <p>
    +     * <b>NOTE</b>: When inserting plain SQL into jOOQ objects, you must
    +     * guarantee syntax integrity. You may also create the possibility of
    +     * malicious SQL injection. Be sure to properly use bind variables and/or
    +     * escape literals when concatenated into SQL clauses!
    +     *
    +     * @see Factory#table(String, Object...)
    +     */
    +    @Support
    +    TableOnStep leftOuterJoin(String sql, Object... bindings);
    +
    +    /**
    +     * <code>RIGHT OUTER JOIN</code> a table to this table.
    +     * <p>
    +     * This is only possible where the underlying RDBMS supports it
    +     */
    +    @Support({ ASE, CUBRID, DB2, DERBY, H2, HSQLDB, INGRES, MYSQL, ORACLE, POSTGRES, SQLSERVER, SYBASE })
    +    TableOnStep rightOuterJoin(TableLike<?> table);
    +
    +    /**
    +     * <code>RIGHT OUTER JOIN</code> a table to this table.
    +     * <p>
    +     * This is only possible where the underlying RDBMS supports it
    +     * <p>
    +     * <b>NOTE</b>: When inserting plain SQL into jOOQ objects, you must
    +     * guarantee syntax integrity. You may also create the possibility of
    +     * malicious SQL injection. Be sure to properly use bind variables and/or
    +     * escape literals when concatenated into SQL clauses!
    +     *
    +     * @see Factory#table(String)
    +     */
    +    @Support({ ASE, CUBRID, DB2, DERBY, H2, HSQLDB, INGRES, MYSQL, ORACLE, POSTGRES, SQLSERVER, SYBASE })
    +    TableOnStep rightOuterJoin(String sql);
    +
    +    /**
    +     * <code>RIGHT OUTER JOIN</code> a table to this table.
    +     * <p>
    +     * This is only possible where the underlying RDBMS supports it
    +     * <p>
    +     * <b>NOTE</b>: When inserting plain SQL into jOOQ objects, you must
    +     * guarantee syntax integrity. You may also create the possibility of
    +     * malicious SQL injection. Be sure to properly use bind variables and/or
    +     * escape literals when concatenated into SQL clauses!
    +     *
    +     * @see Factory#table(String, Object...)
    +     */
    +    @Support({ ASE, CUBRID, DB2, DERBY, H2, HSQLDB, INGRES, MYSQL, ORACLE, POSTGRES, SQLSERVER, SYBASE })
    +    TableOnStep rightOuterJoin(String sql, Object... bindings);
    +
    +    /**
    +     * <code>FULL OUTER JOIN</code> a table to this table.
    +     * <p>
    +     * This is only possible where the underlying RDBMS supports it
    +     */
    +    @Support({ DB2, HSQLDB, INGRES, ORACLE, POSTGRES, SQLSERVER, SYBASE })
    +    TableOnStep fullOuterJoin(TableLike<?> table);
    +
    +    /**
    +     * <code>FULL OUTER JOIN</code> a table to this table.
    +     * <p>
    +     * This is only possible where the underlying RDBMS supports it
    +     * <p>
    +     * <b>NOTE</b>: When inserting plain SQL into jOOQ objects, you must
    +     * guarantee syntax integrity. You may also create the possibility of
    +     * malicious SQL injection. Be sure to properly use bind variables and/or
    +     * escape literals when concatenated into SQL clauses!
    +     *
    +     * @see Factory#table(String)
    +     */
    +    @Support({ DB2, HSQLDB, INGRES, ORACLE, POSTGRES, SQLSERVER, SYBASE })
    +    TableOnStep fullOuterJoin(String sql);
    +
    +    /**
    +     * <code>FULL OUTER JOIN</code> a table to this table.
    +     * <p>
    +     * This is only possible where the underlying RDBMS supports it
    +     * <p>
    +     * <b>NOTE</b>: When inserting plain SQL into jOOQ objects, you must
    +     * guarantee syntax integrity. You may also create the possibility of
    +     * malicious SQL injection. Be sure to properly use bind variables and/or
    +     * escape literals when concatenated into SQL clauses!
    +     *
    +     * @see Factory#table(String, Object...)
    +     */
    +    @Support({ DB2, HSQLDB, INGRES, ORACLE, POSTGRES, SQLSERVER, SYBASE })
    +    TableOnStep fullOuterJoin(String sql, Object... bindings);
    +
    +    /**
    +     * <code>CROSS JOIN</code> a table to this table.
    +     * <p>
    +     * If this syntax is unavailable, it is simulated with a regular
    +     * <code>INNER JOIN</code>. The following two constructs are equivalent:
    +     * <code><pre>
    +     * A cross join B
    +     * A join B on 1 = 1
    +     * </pre></code>
    +     */
    +    @Support
    +    Table<Record> crossJoin(TableLike<?> table);
    +
    +    /**
    +     * <code>CROSS JOIN</code> a table to this table.
    +     * <p>
    +     * If this syntax is unavailable, it is simulated with a regular
    +     * <code>INNER JOIN</code>. The following two constructs are equivalent:
    +     * <code><pre>
    +     * A cross join B
    +     * A join B on 1 = 1
    +     * </pre></code>
    +     * <p>
    +     * <b>NOTE</b>: When inserting plain SQL into jOOQ objects, you must
    +     * guarantee syntax integrity. You may also create the possibility of
    +     * malicious SQL injection. Be sure to properly use bind variables and/or
    +     * escape literals when concatenated into SQL clauses!
    +     *
    +     * @see Factory#table(String)
    +     */
    +    @Support
    +    Table<Record> crossJoin(String sql);
    +
    +    /**
    +     * <code>CROSS JOIN</code> a table to this table.
    +     * <p>
    +     * If this syntax is unavailable, it is simulated with a regular
    +     * <code>INNER JOIN</code>. The following two constructs are equivalent:
    +     * <code><pre>
    +     * A cross join B
    +     * A join B on 1 = 1
    +     * </pre></code>
    +     * <p>
    +     * <b>NOTE</b>: When inserting plain SQL into jOOQ objects, you must
    +     * guarantee syntax integrity. You may also create the possibility of
    +     * malicious SQL injection. Be sure to properly use bind variables and/or
    +     * escape literals when concatenated into SQL clauses!
    +     *
    +     * @see Factory#table(String, Object...)
    +     */
    +    @Support
    +    Table<Record> crossJoin(String sql, Object... bindings);
    +
    +    /**
    +     * <code>NATURAL JOIN</code> a table to this table.
    +     * <p>
    +     * If this is not supported by your RDBMS, then jOOQ will try to simulate
    +     * this behaviour using the information provided in this query.
    +     */
    +    @Support
    +    Table<Record> naturalJoin(TableLike<?> table);
    +
    +    /**
    +     * <code>NATURAL JOIN</code> a table to this table.
    +     * <p>
    +     * If this is not supported by your RDBMS, then jOOQ will try to simulate
    +     * this behaviour using the information provided in this query.
    +     * <p>
    +     * <b>NOTE</b>: When inserting plain SQL into jOOQ objects, you must
    +     * guarantee syntax integrity. You may also create the possibility of
    +     * malicious SQL injection. Be sure to properly use bind variables and/or
    +     * escape literals when concatenated into SQL clauses!
    +     *
    +     * @see Factory#table(String)
    +     */
    +    @Support
    +    Table<Record> naturalJoin(String sql);
    +
    +    /**
    +     * <code>NATURAL JOIN</code> a table to this table.
    +     * <p>
    +     * If this is not supported by your RDBMS, then jOOQ will try to simulate
    +     * this behaviour using the information provided in this query.
    +     * <p>
    +     * <b>NOTE</b>: When inserting plain SQL into jOOQ objects, you must
    +     * guarantee syntax integrity. You may also create the possibility of
    +     * malicious SQL injection. Be sure to properly use bind variables and/or
    +     * escape literals when concatenated into SQL clauses!
    +     *
    +     * @see Factory#table(String, Object...)
    +     */
    +    @Support
    +    Table<Record> naturalJoin(String sql, Object... bindings);
    +
    +    /**
    +     * <code>NATURAL LEFT OUTER JOIN</code> a table to this table.
    +     * <p>
    +     * If this is not supported by your RDBMS, then jOOQ will try to simulate
    +     * this behaviour using the information provided in this query.
    +     */
    +    @Support
    +    Table<Record> naturalLeftOuterJoin(TableLike<?> table);
    +
    +    /**
    +     * <code>NATURAL LEFT OUTER JOIN</code> a table to this table.
    +     * <p>
    +     * If this is not supported by your RDBMS, then jOOQ will try to simulate
    +     * this behaviour using the information provided in this query.
    +     * <p>
    +     * <b>NOTE</b>: When inserting plain SQL into jOOQ objects, you must
    +     * guarantee syntax integrity. You may also create the possibility of
    +     * malicious SQL injection. Be sure to properly use bind variables and/or
    +     * escape literals when concatenated into SQL clauses!
    +     *
    +     * @see Factory#table(String)
    +     */
    +    @Support
    +    Table<Record> naturalLeftOuterJoin(String sql);
    +
    +    /**
    +     * <code>NATURAL LEFT OUTER JOIN</code> a table to this table.
    +     * <p>
    +     * If this is not supported by your RDBMS, then jOOQ will try to simulate
    +     * this behaviour using the information provided in this query.
    +     * <p>
    +     * <b>NOTE</b>: When inserting plain SQL into jOOQ objects, you must
    +     * guarantee syntax integrity. You may also create the possibility of
    +     * malicious SQL injection. Be sure to properly use bind variables and/or
    +     * escape literals when concatenated into SQL clauses!
    +     *
    +     * @see Factory#table(String, Object...)
    +     */
    +    @Support
    +    Table<Record> naturalLeftOuterJoin(String sql, Object... bindings);
    +
    +    /**
    +     * <code>NATURAL RIGHT OUTER JOIN</code> a table to this table.
    +     * <p>
    +     * If this is not supported by your RDBMS, then jOOQ will try to simulate
    +     * this behaviour using the information provided in this query.
    +     */
    +    @Support({ ASE, CUBRID, DB2, DERBY, H2, HSQLDB, INGRES, MYSQL, ORACLE, POSTGRES, SQLSERVER, SYBASE })
    +    Table<Record> naturalRightOuterJoin(TableLike<?> table);
    +
    +    /**
    +     * <code>NATURAL RIGHT OUTER JOIN</code> a table to this table.
    +     * <p>
    +     * If this is not supported by your RDBMS, then jOOQ will try to simulate
    +     * this behaviour using the information provided in this query.
    +     * <p>
    +     * <b>NOTE</b>: When inserting plain SQL into jOOQ objects, you must
    +     * guarantee syntax integrity. You may also create the possibility of
    +     * malicious SQL injection. Be sure to properly use bind variables and/or
    +     * escape literals when concatenated into SQL clauses!
    +     *
    +     * @see Factory#table(String)
    +     */
    +    @Support({ ASE, CUBRID, DB2, DERBY, H2, HSQLDB, INGRES, MYSQL, ORACLE, POSTGRES, SQLSERVER, SYBASE })
    +    Table<Record> naturalRightOuterJoin(String sql);
    +
    +    /**
    +     * <code>NATURAL RIGHT OUTER JOIN</code> a table to this table.
    +     * <p>
    +     * If this is not supported by your RDBMS, then jOOQ will try to simulate
    +     * this behaviour using the information provided in this query.
    +     * <p>
    +     * <b>NOTE</b>: When inserting plain SQL into jOOQ objects, you must
    +     * guarantee syntax integrity. You may also create the possibility of
    +     * malicious SQL injection. Be sure to properly use bind variables and/or
    +     * escape literals when concatenated into SQL clauses!
    +     *
    +     * @see Factory#table(String, Object...)
    +     */
    +    @Support({ ASE, CUBRID, DB2, DERBY, H2, HSQLDB, INGRES, MYSQL, ORACLE, POSTGRES, SQLSERVER, SYBASE })
    +    Table<Record> naturalRightOuterJoin(String sql, Object... bindings);
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/TableField.java b/jOOQ/src/main/java/org/jooq/TableField.java
    new file mode 100644
    index 00000000000..f13cdf40df7
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/TableField.java
    @@ -0,0 +1,52 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +
    +package org.jooq;
    +
    +/**
    + * A field contained in a table
    + *
    + * @param <R> The record type
    + * @param <T> The field type
    + * @author Lukas Eder
    + */
    +public interface TableField<R extends Record, T> extends Field<T> {
    +
    +    /**
    +     * @return The table this field is contained in
    +     */
    +    Table<R> getTable();
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/TableLike.java b/jOOQ/src/main/java/org/jooq/TableLike.java
    new file mode 100644
    index 00000000000..a9670c74e49
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/TableLike.java
    @@ -0,0 +1,61 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq;
    +
    +/**
    + * An object that can behave like a table (a table-like object)
    + *
    + * @param <R> The record type
    + * @author Lukas Eder
    + */
    +public interface TableLike<R extends Record> extends QueryPart {
    +
    +    /**
    +     * The underlying table representation of this object
    +     * <p>
    +     * This method is useful for things like
    +     * <code>SELECT * FROM (SELECT * FROM x WHERE x.a = '1') WHERE ... </code>
    +     */
    +    Table<R> asTable();
    +
    +    /**
    +     * The underlying aliased table representation of this object
    +     * <p>
    +     * This method is useful for things like
    +     * <code>SELECT * FROM (SELECT * FROM x WHERE x.a = '1') [alias] WHERE ... </code>
    +     */
    +    Table<R> asTable(String alias);
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/TableOnConditionStep.java b/jOOQ/src/main/java/org/jooq/TableOnConditionStep.java
    new file mode 100644
    index 00000000000..c7d17ce0c72
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/TableOnConditionStep.java
    @@ -0,0 +1,161 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq;
    +
    +import org.jooq.impl.Factory;
    +
    +/**
    + * An intermediate (optional) type for the construction of a <code>JOIN</code>
    + * clause, where the join criteria is added using an <code>ON</code> clause
    + * (with a {@link Condition}. This type can be used as a convenience type for
    + * connecting more conditions.
    + *
    + * @author Lukas Eder
    + */
    +public interface TableOnConditionStep extends Table<Record> {
    +
    +    /**
    +     * Combine the currently assembled conditions with another one using the
    +     * {@link Operator#AND} operator.
    +     */
    +    @Support
    +    TableOnConditionStep and(Condition condition);
    +
    +    /**
    +     * Combine the currently assembled conditions with another one using the
    +     * {@link Operator#AND} operator.
    +     * <p>
    +     * <b>NOTE</b>: When inserting plain SQL into jOOQ objects, you must
    +     * guarantee syntax integrity. You may also create the possibility of
    +     * malicious SQL injection. Be sure to properly use bind variables and/or
    +     * escape literals when concatenated into SQL clauses!
    +     *
    +     * @see Factory#condition(String)
    +     */
    +    @Support
    +    TableOnConditionStep and(String sql);
    +
    +    /**
    +     * Combine the currently assembled conditions with another one using the
    +     * {@link Operator#AND} operator.
    +     * <p>
    +     * <b>NOTE</b>: When inserting plain SQL into jOOQ objects, you must
    +     * guarantee syntax integrity. You may also create the possibility of
    +     * malicious SQL injection. Be sure to properly use bind variables and/or
    +     * escape literals when concatenated into SQL clauses!
    +     *
    +     * @see Factory#condition(String, Object...)
    +     */
    +    @Support
    +    TableOnConditionStep and(String sql, Object... bindings);
    +
    +    /**
    +     * Combine the currently assembled conditions with a negated other one using
    +     * the {@link Operator#AND} operator.
    +     */
    +    @Support
    +    TableOnConditionStep andNot(Condition condition);
    +
    +    /**
    +     * Combine the currently assembled conditions with an <code>EXISTS</code>
    +     * clause using the {@link Operator#AND} operator.
    +     */
    +    @Support
    +    TableOnConditionStep andExists(Select<?> select);
    +
    +    /**
    +     * Combine the currently assembled conditions with a <code>NOT EXISTS</code>
    +     * clause using the {@link Operator#AND} operator.
    +     */
    +    @Support
    +    TableOnConditionStep andNotExists(Select<?> select);
    +
    +    /**
    +     * Combine the currently assembled conditions with another one using the
    +     * {@link Operator#OR} operator.
    +     */
    +    @Support
    +    TableOnConditionStep or(Condition condition);
    +
    +    /**
    +     * Combine the currently assembled conditions with another one using the
    +     * {@link Operator#OR} operator.
    +     * <p>
    +     * <b>NOTE</b>: When inserting plain SQL into jOOQ objects, you must
    +     * guarantee syntax integrity. You may also create the possibility of
    +     * malicious SQL injection. Be sure to properly use bind variables and/or
    +     * escape literals when concatenated into SQL clauses!
    +     *
    +     * @see Factory#condition(String)
    +     */
    +    @Support
    +    TableOnConditionStep or(String sql);
    +
    +    /**
    +     * Combine the currently assembled conditions with another one using the
    +     * {@link Operator#OR} operator.
    +     * <p>
    +     * <b>NOTE</b>: When inserting plain SQL into jOOQ objects, you must
    +     * guarantee syntax integrity. You may also create the possibility of
    +     * malicious SQL injection. Be sure to properly use bind variables and/or
    +     * escape literals when concatenated into SQL clauses!
    +     *
    +     * @see Factory#condition(String, Object...)
    +     */
    +    @Support
    +    TableOnConditionStep or(String sql, Object... bindings);
    +
    +    /**
    +     * Combine the currently assembled conditions with a negated other one using
    +     * the {@link Operator#OR} operator.
    +     */
    +    @Support
    +    TableOnConditionStep orNot(Condition condition);
    +
    +    /**
    +     * Combine the currently assembled conditions with an <code>EXISTS</code>
    +     * clause using the {@link Operator#OR} operator.
    +     */
    +    @Support
    +    TableOnConditionStep orExists(Select<?> select);
    +
    +    /**
    +     * Combine the currently assembled conditions with a <code>NOT EXISTS</code>
    +     * clause using the {@link Operator#OR} operator.
    +     */
    +    @Support
    +    TableOnConditionStep orNotExists(Select<?> select);
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/TableOnStep.java b/jOOQ/src/main/java/org/jooq/TableOnStep.java
    new file mode 100644
    index 00000000000..4cdbdc7ff31
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/TableOnStep.java
    @@ -0,0 +1,151 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq;
    +
    +import java.util.Collection;
    +
    +import org.jooq.exception.DataAccessException;
    +import org.jooq.impl.Factory;
    +
    +/**
    + * An intermediate type for the construction of a <code>JOIN</code> clause,
    + * where there must be a join criteria added using an <code>ON</code> clause
    + * (with a {@link Condition}), or using a <code>USING</code> clause (with a list
    + * of {@link Field})
    + *
    + * @author Lukas Eder
    + */
    +public interface TableOnStep {
    +
    +    /**
    +     * Add an <code>ON</code> clause to the <code>JOIN</code>
    +     */
    +    @Support
    +    TableOnConditionStep on(Condition... conditions);
    +
    +    /**
    +     * Add an <code>ON</code> clause to the <code>JOIN</code>
    +     * <p>
    +     * <b>NOTE</b>: When inserting plain SQL into jOOQ objects, you must
    +     * guarantee syntax integrity. You may also create the possibility of
    +     * malicious SQL injection. Be sure to properly use bind variables and/or
    +     * escape literals when concatenated into SQL clauses!
    +     *
    +     * @see Factory#condition(String)
    +     */
    +    @Support
    +    TableOnConditionStep on(String sql);
    +
    +    /**
    +     * Add an <code>ON</code> clause to the <code>JOIN</code>
    +     * <p>
    +     * <b>NOTE</b>: When inserting plain SQL into jOOQ objects, you must
    +     * guarantee syntax integrity. You may also create the possibility of
    +     * malicious SQL injection. Be sure to properly use bind variables and/or
    +     * escape literals when concatenated into SQL clauses!
    +     *
    +     * @see Factory#condition(String, Object...)
    +     */
    +    @Support
    +    TableOnConditionStep on(String sql, Object... bindings);
    +
    +    /**
    +     * Join the table with the <code>USING(column [, column...])</code> syntax
    +     * <p>
    +     * If this is not supported by your RDBMS, then jOOQ will try to simulate
    +     * this behaviour using the information provided in this query.
    +     */
    +    @Support
    +    Table<Record> using(Field<?>... fields);
    +
    +    /**
    +     * Join the table with the <code>USING(column [, column...])</code> syntax
    +     * <p>
    +     * If this is not supported by your RDBMS, then jOOQ will try to simulate
    +     * this behaviour using the information provided in this query.
    +     */
    +    @Support
    +    Table<Record> using(Collection<? extends Field<?>> fields);
    +
    +    /**
    +     * Join the table on a non-ambiguous foreign key relationship between the
    +     * two joined tables.
    +     * <p>
    +     * See {@link #onKey(ForeignKey)} for examples.
    +     *
    +     * @see #onKey(ForeignKey)
    +     * @throws DataAccessException If there is no non-ambiguous key definition
    +     *             known to jOOQ
    +     */
    +    @Support
    +    TableOnConditionStep onKey() throws DataAccessException;
    +
    +    /**
    +     * Join the table on a non-ambiguous foreign key relationship between the
    +     * two joined tables.
    +     * <p>
    +     * See {@link #onKey(ForeignKey)} for examples.
    +     *
    +     * @see #onKey(ForeignKey)
    +     * @throws DataAccessException If there is no non-ambiguous key definition
    +     *             known to jOOQ
    +     */
    +    @Support
    +    TableOnConditionStep onKey(TableField<?, ?>... keyFields) throws DataAccessException;
    +
    +    /**
    +     * Join the table on a non-ambiguous foreign key relationship between the
    +     * two joined tables.
    +     * <p>
    +     * An example: <code><pre>
    +     * // There is a single foreign key relationship between A and B and it can
    +     * // be obtained by A.getReferencesTo(B) or vice versa. The order of A and
    +     * // B is not important
    +     * A.join(B).onKey();
    +     *
    +     * // There are several foreign key relationships between A and B. In order
    +     * // to disambiguate, you can provide a formal org.jooq.Key reference from
    +     * // the generated Keys class
    +     * A.join(B).onKey(key);
    +     *
    +     * // There are several foreign key relationships between A and B. In order
    +     * // to disambiguate, you can provide any non-ambiguous foreign key column
    +     * A.join(B).onKey(B.A_ID);
    +     * </pre></code>
    +     */
    +    @Support
    +    TableOnConditionStep onKey(ForeignKey<?, ?> key);
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/TableRecord.java b/jOOQ/src/main/java/org/jooq/TableRecord.java
    new file mode 100644
    index 00000000000..f90baaea947
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/TableRecord.java
    @@ -0,0 +1,134 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq;
    +
    +import org.jooq.exception.DataAccessException;
    +
    +/**
    + * A record originating from a single table
    + *
    + * @param <R> The record type
    + * @author Lukas Eder
    + */
    +public interface TableRecord<R extends TableRecord<R>> extends Record {
    +
    +    /**
    +     * The table from which this record was read
    +     */
    +    Table<R> getTable();
    +
    +    /**
    +     * Store this record back to the database.
    +     * <p>
    +     * Depending on the state of the provided keys' value, an
    +     * <code>INSERT</code> or an <code>UPDATE</code> statement is executed.
    +     * <p>
    +     * <ul>
    +     * <li>If this record was created by client code, an <code>INSERT</code>
    +     * statement is executed</li>
    +     * <li>If this record was loaded by jOOQ, but the provided keys' value was
    +     * changed, an <code>INSERT</code> statement is executed. jOOQ expects that
    +     * primary key values will never change due to the principle of
    +     * normalisation in RDBMS. So if client code changes primary key values,
    +     * this is interpreted by jOOQ as client code wanting to duplicate this
    +     * record.</li>
    +     * <li>If this record was loaded by jOOQ, and the provided keys' value was
    +     * not changed, an <code>UPDATE</code> statement is executed.</li>
    +     * </ul>
    +     * <p>
    +     * In either statement, only those fields are inserted/updated, which had
    +     * been explicitly set by client code, in order to allow for
    +     * <code>DEFAULT</code> values to be applied by the underlying RDBMS. If no
    +     * fields were modified, neither an <code>UPDATE</code> nor an
    +     * <code>INSERT</code> will be executed.
    +     * <p>
    +     * Possible statements are
    +     * <ul>
    +     * <li>
    +     * <code><pre>
    +     * INSERT INTO [table] ([modified fields, including keys])
    +     * VALUES ([modified values, including keys])</pre></code></li>
    +     * <li>
    +     * <code><pre>
    +     * UPDATE [table]
    +     * SET [modified fields = modified values, excluding keys]
    +     * WHERE [key fields = key values]</pre></code></li>
    +     * </ul>
    +     *
    +     * @param keys The key fields used for deciding whether to execute an
    +     *            <code>INSERT</code> or <code>UPDATE</code> statement. If an
    +     *            <code>UPDATE</code> statement is executed, they are also the
    +     *            key fields for the <code>UPDATE</code> statement's
    +     *            <code>WHERE</code> clause.
    +     * @return The number of stored records.
    +     * @throws DataAccessException if something went wrong executing the query
    +     */
    +    int storeUsing(TableField<R, ?>... keys) throws DataAccessException;
    +
    +    /**
    +     * Deletes this record from the database, based on the value of the provided
    +     * keys.
    +     * <p>
    +     * The executed statement is <code><pre>
    +     * DELETE FROM [table]
    +     * WHERE [key fields = key values]</pre></code>
    +     *
    +     * @param keys The key fields for the <code>DELETE</code> statement's
    +     *            <code>WHERE</code> clause.
    +     * @return The number of deleted records.
    +     * @throws DataAccessException if something went wrong executing the query
    +     */
    +    int deleteUsing(TableField<R, ?>... keys) throws DataAccessException;
    +
    +    /**
    +     * Refresh this record from the database, based on the value of the provided
    +     * keys.
    +     * <p>
    +     * The executed statement is <code><pre>
    +     * SELECT * FROM [table]
    +     * WHERE [key fields = key values]</pre></code>
    +     *
    +     * @param keys The key fields for the <code>SELECT</code> statement's
    +     *            <code>WHERE</code> clause.
    +     * @throws DataAccessException This exception is thrown if
    +     *             <ul>
    +     *             <li>something went wrong executing the query</li> <li>the
    +     *             record does not exist anymore in the database</li> <li>the
    +     *             provided keys return several records.</li>
    +     *             </ul>
    +     */
    +    void refreshUsing(TableField<R, ?>... keys) throws DataAccessException;
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/Truncate.java b/jOOQ/src/main/java/org/jooq/Truncate.java
    new file mode 100644
    index 00000000000..ab8c7bc2289
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/Truncate.java
    @@ -0,0 +1,45 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq;
    +
    +/**
    + * A {@link Query} that can truncate a table in the database.
    + *
    + * @author Lukas Eder
    + */
    +public interface Truncate<R extends TableRecord<R>> extends Query {
    +
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/Type.java b/jOOQ/src/main/java/org/jooq/Type.java
    new file mode 100644
    index 00000000000..b47f0e2691c
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/Type.java
    @@ -0,0 +1,51 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq;
    +
    +/**
    + * A type (udt or table) that represents any database row
    + *
    + * @param <R> The record type
    + * @author Lukas Eder
    + */
    +public interface Type<R extends Record> extends NamedQueryPart, FieldProvider, SchemaProvider {
    +
    +    /**
    +     * @return The record type produced by this table
    +     */
    +    Class<? extends R> getRecordType();
    +
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/UDT.java b/jOOQ/src/main/java/org/jooq/UDT.java
    new file mode 100644
    index 00000000000..99ab8f5c5a1
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/UDT.java
    @@ -0,0 +1,66 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq;
    +
    +import java.sql.ResultSet;
    +import java.sql.SQLException;
    +import java.util.Map;
    +
    +/**
    + * UDT definition
    + *
    + * @param <R> The record type
    + * @author Lukas Eder
    + */
    +public interface UDT<R extends UDTRecord<R>> extends Type<R> {
    +
    +    /**
    +     * The complete type mapping for this UDT.
    +     * <p>
    +     * This method returns all types involved with this UDT, including nested
    +     * types. The result can be used in {@link ResultSet#getObject(int, Map)}
    +     * and similar methods.
    +     *
    +     * @see Schema#getTypeMapping() for the {@link Schema}'s complete type
    +     *      mapping
    +     */
    +    Map<String, Class<?>> getTypeMapping() throws SQLException;
    +
    +    /**
    +     * The UDT's data type as known to the database
    +     */
    +    DataType<R> getDataType();
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/UDTField.java b/jOOQ/src/main/java/org/jooq/UDTField.java
    new file mode 100644
    index 00000000000..fa401b90e31
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/UDTField.java
    @@ -0,0 +1,52 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +
    +package org.jooq;
    +
    +/**
    + * A field contained in a UDT
    + *
    + * @param <R> The record type
    + * @param <T> The field type
    + * @author Lukas Eder
    + */
    +public interface UDTField<R extends UDTRecord<R>, T> extends Field<T> {
    +
    +    /**
    +     * @return The UDT this field is contained in
    +     */
    +    UDT<R> getUDT();
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/UDTRecord.java b/jOOQ/src/main/java/org/jooq/UDTRecord.java
    new file mode 100644
    index 00000000000..90cd2c5fd01
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/UDTRecord.java
    @@ -0,0 +1,53 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq;
    +
    +import java.sql.SQLData;
    +
    +/**
    + * An object holding data of a UDT
    + *
    + * @param <R> The record type
    + * @author Lukas Eder
    + */
    +public interface UDTRecord<R extends UDTRecord<R>> extends Record, SQLData {
    +
    +    /**
    +     * The UDT from which this record was read
    +     */
    +    UDT<R> getUDT();
    +
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/UniqueKey.java b/jOOQ/src/main/java/org/jooq/UniqueKey.java
    new file mode 100644
    index 00000000000..2a145429cd8
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/UniqueKey.java
    @@ -0,0 +1,55 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq;
    +
    +import java.util.List;
    +
    +/**
    + * A <code>UniqueKey</code> is an object representing a <code>UNIQUE KEY</code>
    + * or a <code>PRIMARY KEY</code>. It can be referenced by a {@link ForeignKey}
    + *
    + * @param <R> The <code>KEY</code>'s owner table record
    + * @author Lukas Eder
    + */
    +public interface UniqueKey<R extends Record> extends Key<R> {
    +
    +    /**
    +     * A list of all <code>ForeignKeys</code>, referencing this
    +     * <code>UniqueKey</code>
    +     */
    +    List<ForeignKey<?, R>> getReferences();
    +
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/Updatable.java b/jOOQ/src/main/java/org/jooq/Updatable.java
    new file mode 100644
    index 00000000000..e4878b2542a
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/Updatable.java
    @@ -0,0 +1,48 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq;
    +
    +
    +/**
    + * A common interface for objects (tables, records) that can be updated or
    + * deleted using their primary keys.
    + *
    + * @param <R> The record type
    + * @author Lukas Eder
    + */
    +public interface Updatable<R extends Record> {
    +
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/UpdatableRecord.java b/jOOQ/src/main/java/org/jooq/UpdatableRecord.java
    new file mode 100644
    index 00000000000..f569b78ab88
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/UpdatableRecord.java
    @@ -0,0 +1,171 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq;
    +
    +import org.jooq.exception.DataAccessException;
    +
    +/**
    + * A common interface for records that can be stored back to the database again.
    + * <p>
    + * Any {@link Record} can be {@link Updatable}, if
    + * <p>
    + * <ol>
    + * <li>it represents a record from a table or view - a {@link TableRecord}</li>
    + * <li>its underlying table or view has a "main unique key", i.e. a primary key
    + * or at least one unique key</li>
    + * </ol>
    + * <p>
    + * The "main unique key" is used by jOOQ to perform the various operations that
    + * can be performed on an <code>UpdatableRecord</code>:
    + * <p>
    + * <ul>
    + * <li> {@link #delete()} : Deleting the record</li>
    + * <li> {@link #refresh()} : Refreshing the records attributes (or loading it for
    + * the first time)</li>
    + * <li> {@link #store()} : Storing the record to the database. This executes
    + * either an <code>INSERT</code> or an <code>UPDATE</code> statement</li>
    + * </ul>
    + * <p>
    + * <code>UpdatableRecords</code> are {@link Attachable}, which means that they
    + * hold an underlying {@link Configuration} that they can be detached from. They
    + * can also be instanciated without any underlying {@link Configuration}, in
    + * case of which they have to be attached first, in order to be refreshed,
    + * stored, or deleted.
    + *
    + * @param <R> The record type
    + * @author Lukas Eder
    + */
    +public interface UpdatableRecord<R extends UpdatableRecord<R>> extends Updatable<R>, TableRecord<R> {
    +
    +    /**
    +     * The table from which this record was read
    +     */
    +    @Override
    +    UpdatableTable<R> getTable();
    +
    +    /**
    +     * Store this record back to the database.
    +     * <p>
    +     * Depending on the state of the primary key's or main unique key's value,
    +     * an <code>INSERT</code> or an <code>UPDATE</code> statement is executed.
    +     * <p>
    +     * <ul>
    +     * <li>If this record was created by client code, an <code>INSERT</code>
    +     * statement is executed</li>
    +     * <li>If this record was loaded by jOOQ, but the primary key value was
    +     * changed, an <code>INSERT</code> statement is executed. jOOQ expects that
    +     * primary key values will never change due to the principle of
    +     * normalisation in RDBMS. So if client code changes primary key values,
    +     * this is interpreted by jOOQ as client code wanting to duplicate this
    +     * record.</li>
    +     * <li>If this record was loaded by jOOQ, and the primary key value was not
    +     * changed, an <code>UPDATE</code> statement is executed.</li>
    +     * </ul>
    +     * <p>
    +     * In either statement, only those fields are inserted/updated, which had
    +     * been explicitly set by client code, in order to allow for
    +     * <code>DEFAULT</code> values to be applied by the underlying RDBMS. If no
    +     * fields were modified, neither an <code>UPDATE</code> nor an
    +     * <code>INSERT</code> will be executed. Possible statements are
    +     * <ul>
    +     * <li>
    +     * <code><pre>
    +     * INSERT INTO [table] ([modified fields, including main key])
    +     * VALUES ([modified values, including main key])</pre></code></li>
    +     * <li>
    +     * <code><pre>
    +     * UPDATE [table]
    +     * SET [modified fields = modified values, excluding main key]
    +     * WHERE [main key fields = main key values]</pre></code></li>
    +     * </ul>
    +     * <p>
    +     * This is in fact the same as calling
    +     * <code>store(getTable().getMainKey().getFieldsArray())</code>
    +     *
    +     * @return <code>1</code> if the record was stored to the database. <code>0
    +     *         </code> if storing was not necessary.
    +     * @throws DataAccessException if something went wrong executing the query
    +     * @see #storeUsing(TableField...)
    +     */
    +    int store() throws DataAccessException;
    +
    +    /**
    +     * Deletes this record from the database, based on the value of the primary
    +     * key or main unique key.
    +     * <p>
    +     * The executed statement is <code><pre>
    +     * DELETE FROM [table]
    +     * WHERE [main key fields = main key values]</pre></code>
    +     * <p>
    +     * This is in fact the same as calling
    +     * <code>delete(getTable().getMainKey().getFieldsArray())</code>
    +     *
    +     * @return <code>1</code> if the record was deleted from the database.
    +     *         <code>0</code> if deletion was not necessary.
    +     * @throws DataAccessException if something went wrong executing the query
    +     * @see #deleteUsing(TableField...)
    +     */
    +    int delete() throws DataAccessException;
    +
    +    /**
    +     * Refresh this record from the database, based on the value of the primary
    +     * key or main unique key.
    +     * <p>
    +     * This is in fact the same as calling
    +     * <code>refresh(getTable().getMainKey().getFieldsArray())</code>
    +     * <p>
    +     * The executed statement is <code><pre>
    +     * SELECT * FROM [table]
    +     * WHERE [main key fields = main key values]</pre></code>
    +     *
    +     * @throws DataAccessException This exception is thrown if
    +     *             <ul>
    +     *             <li>something went wrong executing the query</li> <li>the
    +     *             record does not exist anymore in the database</li>
    +     *             </ul>
    +     * @see #refreshUsing(TableField...)
    +     */
    +    void refresh() throws DataAccessException;
    +
    +    /**
    +     * Duplicate this record (in memory) and reset all fields from the primary
    +     * key or main unique key, such that a subsequent call to {@link #store()}
    +     * will result in an <code>INSERT</code> statement.
    +     *
    +     * @return A new record, distinct from <code>this</code> record.
    +     */
    +    R copy();
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/UpdatableTable.java b/jOOQ/src/main/java/org/jooq/UpdatableTable.java
    new file mode 100644
    index 00000000000..aef71ac0a8f
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/UpdatableTable.java
    @@ -0,0 +1,82 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq;
    +
    +import java.util.List;
    +
    +/**
    + * A common interface for tables whose records can be stored back to the
    + * database again.
    + *
    + * @param <R> The record type of the table
    + * @see UpdatableRecord
    + * @author Lukas Eder
    + */
    +public interface UpdatableTable<R extends Record> extends Updatable<R>, Table<R> {
    +
    +    /**
    +     * Retrieve the table's main unique key. If there exists a
    +     * <code>PRIMARY KEY</code> in the table, the <code>PRIMARY KEY</code> is
    +     * returned. Otherwise, the most suitable <code>UNIQUE KEY</code> is
    +     * returned.
    +     *
    +     * @return The main key. This is never <code>null</code> because
    +     *         {@link UpdatableTable}'s always have at least one key.
    +     */
    +    UniqueKey<R> getMainKey();
    +
    +    /**
    +     * Retrieve all of the table's unique keys.
    +     *
    +     * @return All keys. This is never <code>null</code> or empty, because
    +     *         {@link UpdatableTable}'s always have at least one key. This
    +     *         method returns an unmodifiable list.
    +     */
    +    List<UniqueKey<R>> getKeys();
    +
    +    /**
    +     * Get a list of <code>FOREIGN KEY</code>'s of a specific table, referencing
    +     * a this table.
    +     *
    +     * @param <O> The other table's record type
    +     * @param other The other table of the foreign key relationship
    +     * @return Some other table's <code>FOREIGN KEY</code>'s towards an this
    +     *         table. This is never <code>null</code>. This method returns an
    +     *         unmodifiable list.
    +     */
    +    <O extends Record> List<ForeignKey<O, R>> getReferencesFrom(Table<O> other);
    +
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/Update.java b/jOOQ/src/main/java/org/jooq/Update.java
    new file mode 100644
    index 00000000000..a48424845dc
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/Update.java
    @@ -0,0 +1,45 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq;
    +
    +/**
    + * A {@link Query} that can update data in the database.
    + *
    + * @author Lukas Eder
    + */
    +public interface Update<R extends Record> extends Query {
    +
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/UpdateConditionStep.java b/jOOQ/src/main/java/org/jooq/UpdateConditionStep.java
    new file mode 100644
    index 00000000000..5ee5242c173
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/UpdateConditionStep.java
    @@ -0,0 +1,168 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq;
    +
    +import org.jooq.impl.Factory;
    +
    +/**
    + * This type is used for the {@link Update}'s DSL API.
    + * <p>
    + * Example: <code><pre>
    + * Factory create = new Factory();
    + *
    + * create.update(table)
    + *       .set(field1, value1)
    + *       .set(field2, value2)
    + *       .where(field1.greaterThan(100))
    + *       .execute();
    + * </pre></code>
    + *
    + * @author Lukas Eder
    + */
    +public interface UpdateConditionStep<R extends Record> extends UpdateFinalStep<R> {
    +
    +    /**
    +     * Combine the currently assembled conditions with another one using the
    +     * {@link Operator#AND} operator
    +     */
    +    @Support
    +    UpdateConditionStep<R> and(Condition condition);
    +
    +    /**
    +     * Combine the currently assembled conditions with another one using the
    +     * {@link Operator#AND} operator
    +     * <p>
    +     * <b>NOTE</b>: When inserting plain SQL into jOOQ objects, you must
    +     * guarantee syntax integrity. You may also create the possibility of
    +     * malicious SQL injection. Be sure to properly use bind variables and/or
    +     * escape literals when concatenated into SQL clauses!
    +     *
    +     * @see Factory#condition(String)
    +     */
    +    @Support
    +    UpdateConditionStep<R> and(String sql);
    +
    +    /**
    +     * Combine the currently assembled conditions with another one using the
    +     * {@link Operator#AND} operator
    +     * <p>
    +     * <b>NOTE</b>: When inserting plain SQL into jOOQ objects, you must
    +     * guarantee syntax integrity. You may also create the possibility of
    +     * malicious SQL injection. Be sure to properly use bind variables and/or
    +     * escape literals when concatenated into SQL clauses!
    +     *
    +     * @see Factory#condition(String, Object...)
    +     */
    +    @Support
    +    UpdateConditionStep<R> and(String sql, Object... bindings);
    +
    +    /**
    +     * Combine the currently assembled conditions with a negated other one using
    +     * the {@link Operator#AND} operator
    +     */
    +    @Support
    +    UpdateConditionStep<R> andNot(Condition condition);
    +
    +    /**
    +     * Combine the currently assembled conditions with an EXISTS clause using
    +     * the {@link Operator#AND} operator
    +     */
    +    @Support
    +    UpdateConditionStep<R> andExists(Select<?> select);
    +
    +    /**
    +     * Combine the currently assembled conditions with a NOT EXISTS clause using
    +     * the {@link Operator#AND} operator
    +     */
    +    @Support
    +    UpdateConditionStep<R> andNotExists(Select<?> select);
    +
    +    /**
    +     * Combine the currently assembled conditions with another one using the
    +     * {@link Operator#OR} operator
    +     */
    +    @Support
    +    UpdateConditionStep<R> or(Condition condition);
    +
    +    /**
    +     * Combine the currently assembled conditions with another one using the
    +     * {@link Operator#OR} operator
    +     * <p>
    +     * <b>NOTE</b>: When inserting plain SQL into jOOQ objects, you must
    +     * guarantee syntax integrity. You may also create the possibility of
    +     * malicious SQL injection. Be sure to properly use bind variables and/or
    +     * escape literals when concatenated into SQL clauses!
    +     *
    +     * @see Factory#condition(String)
    +     */
    +    @Support
    +    UpdateConditionStep<R> or(String sql);
    +
    +    /**
    +     * Combine the currently assembled conditions with another one using the
    +     * {@link Operator#OR} operator
    +     * <p>
    +     * <b>NOTE</b>: When inserting plain SQL into jOOQ objects, you must
    +     * guarantee syntax integrity. You may also create the possibility of
    +     * malicious SQL injection. Be sure to properly use bind variables and/or
    +     * escape literals when concatenated into SQL clauses!
    +     *
    +     * @see Factory#condition(String, Object...)
    +     */
    +    @Support
    +    UpdateConditionStep<R> or(String sql, Object... bindings);
    +
    +    /**
    +     * Combine the currently assembled conditions with a negated other one using
    +     * the {@link Operator#OR} operator
    +     */
    +    @Support
    +    UpdateConditionStep<R> orNot(Condition condition);
    +
    +    /**
    +     * Combine the currently assembled conditions with an EXISTS clause using
    +     * the {@link Operator#OR} operator
    +     */
    +    @Support
    +    UpdateConditionStep<R> orExists(Select<?> select);
    +
    +    /**
    +     * Combine the currently assembled conditions with a NOT EXISTS clause using
    +     * the {@link Operator#OR} operator
    +     */
    +    @Support
    +    UpdateConditionStep<R> orNotExists(Select<?> select);
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/UpdateFinalStep.java b/jOOQ/src/main/java/org/jooq/UpdateFinalStep.java
    new file mode 100644
    index 00000000000..798059cd1b5
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/UpdateFinalStep.java
    @@ -0,0 +1,55 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq;
    +
    +/**
    + * This type is used for the {@link Update}'s DSL API.
    + * <p>
    + * Example: <code><pre>
    + * Factory create = new Factory();
    + *
    + * create.update(table)
    + *       .set(field1, value1)
    + *       .set(field2, value2)
    + *       .where(field1.greaterThan(100))
    + *       .execute();
    + * </pre></code>
    + *
    + * @author Lukas Eder
    + */
    +public interface UpdateFinalStep<R extends Record> extends Update<R> {
    +
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/UpdateQuery.java b/jOOQ/src/main/java/org/jooq/UpdateQuery.java
    new file mode 100644
    index 00000000000..6e2860c3556
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/UpdateQuery.java
    @@ -0,0 +1,47 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +
    +package org.jooq;
    +
    +/**
    + * A query for data updating
    + *
    + * @param <R> The record type of the table being updated
    + * @author Lukas Eder
    + */
    +public interface UpdateQuery<R extends Record> extends StoreQuery<R>, ConditionProvider, Update<R> {
    +
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/UpdateSetMoreStep.java b/jOOQ/src/main/java/org/jooq/UpdateSetMoreStep.java
    new file mode 100644
    index 00000000000..52c61c6232a
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/UpdateSetMoreStep.java
    @@ -0,0 +1,55 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq;
    +
    +/**
    + * This type is used for the {@link Update}'s DSL API.
    + * <p>
    + * Example: <code><pre>
    + * Factory create = new Factory();
    + *
    + * create.update(table)
    + *       .set(field1, value1)
    + *       .set(field2, value2)
    + *       .where(field1.greaterThan(100))
    + *       .execute();
    + * </pre></code>
    + *
    + * @author Lukas Eder
    + */
    +public interface UpdateSetMoreStep<R extends Record> extends UpdateSetStep<R>, UpdateWhereStep<R> {
    +
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/UpdateSetStep.java b/jOOQ/src/main/java/org/jooq/UpdateSetStep.java
    new file mode 100644
    index 00000000000..b9601dca164
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/UpdateSetStep.java
    @@ -0,0 +1,78 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq;
    +
    +import java.util.Map;
    +
    +/**
    + * This type is used for the {@link Update}'s DSL API.
    + * <p>
    + * Example: <code><pre>
    + * Factory create = new Factory();
    + *
    + * create.update(table)
    + *       .set(field1, value1)
    + *       .set(field2, value2)
    + *       .where(field1.greaterThan(100))
    + *       .execute();
    + * </pre></code>
    + *
    + * @author Lukas Eder
    + */
    +public interface UpdateSetStep<R extends Record> {
    +
    +    /**
    +     * Set a value for a field in the <code>UPDATE</code> statement
    +     */
    +    @Support
    +    <T> UpdateSetMoreStep<R> set(Field<T> field, T value);
    +
    +    /**
    +     * Set a value for a field in the <code>UPDATE</code> statement
    +     */
    +    @Support
    +    <T> UpdateSetMoreStep<R> set(Field<T> field, Field<T> value);
    +
    +    /**
    +     * Set a value for a field in the <code>UPDATE</code> statement
    +     * <p>
    +     * Please assure that key/value pairs have matching <code>&lt;T&gt;</code>
    +     * types. Values can either be of type <code>&lt;T&gt;</code> or
    +     * <code>Field&lt;T&gt;</code>
    +     */
    +    @Support
    +    UpdateSetMoreStep<R> set(Map<? extends Field<?>, ?> map);
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/UpdateWhereStep.java b/jOOQ/src/main/java/org/jooq/UpdateWhereStep.java
    new file mode 100644
    index 00000000000..e311b8fade9
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/UpdateWhereStep.java
    @@ -0,0 +1,108 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq;
    +
    +import java.util.Collection;
    +
    +import org.jooq.impl.Factory;
    +
    +/**
    + * This type is used for the {@link Update}'s DSL API.
    + * <p>
    + * Example: <code><pre>
    + * Factory create = new Factory();
    + *
    + * create.update(table)
    + *       .set(field1, value1)
    + *       .set(field2, value2)
    + *       .where(field1.greaterThan(100))
    + *       .execute();
    + * </pre></code>
    + *
    + * @author Lukas Eder
    + */
    +public interface UpdateWhereStep<R extends Record> extends UpdateFinalStep<R> {
    +
    +    /**
    +     * Add conditions to the query
    +     */
    +    @Support
    +    UpdateConditionStep<R> where(Condition... conditions);
    +
    +    /**
    +     * Add conditions to the query
    +     */
    +    @Support
    +    UpdateConditionStep<R> where(Collection<Condition> conditions);
    +
    +    /**
    +     * Add conditions to the query
    +     * <p>
    +     * <b>NOTE</b>: When inserting plain SQL into jOOQ objects, you must
    +     * guarantee syntax integrity. You may also create the possibility of
    +     * malicious SQL injection. Be sure to properly use bind variables and/or
    +     * escape literals when concatenated into SQL clauses!
    +     *
    +     * @see Factory#condition(String)
    +     */
    +    @Support
    +    UpdateConditionStep<R> where(String sql);
    +
    +    /**
    +     * Add conditions to the query
    +     * <p>
    +     * <b>NOTE</b>: When inserting plain SQL into jOOQ objects, you must
    +     * guarantee syntax integrity. You may also create the possibility of
    +     * malicious SQL injection. Be sure to properly use bind variables and/or
    +     * escape literals when concatenated into SQL clauses!
    +     *
    +     * @see Factory#condition(String, Object...)
    +     */
    +    @Support
    +    UpdateConditionStep<R> where(String sql, Object... bindings);
    +
    +    /**
    +     * Add an EXISTS clause to the query
    +     */
    +    @Support
    +    UpdateConditionStep<R> whereExists(Select<?> select);
    +
    +    /**
    +     * Add a NOT EXISTS clause to the query
    +     */
    +    @Support
    +    UpdateConditionStep<R> whereNotExists(Select<?> select);
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/WindowFinalStep.java b/jOOQ/src/main/java/org/jooq/WindowFinalStep.java
    new file mode 100644
    index 00000000000..8ab30786896
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/WindowFinalStep.java
    @@ -0,0 +1,59 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq;
    +
    +/**
    + * This type is used for the window function DSL API.
    + * <p>
    + * Example: <code><pre>
    + * field.firstValue()
    + *      .ignoreNulls()
    + *      .over()
    + *      .partitionBy(AUTHOR_ID)
    + *      .orderBy(PUBLISHED_IN.asc())
    + *      .rowsBetweenUnboundedPreceding()
    + *      .andUnboundedFollowing()
    + * </pre></code>
    + * <p>
    + * Note, that the functionality provided by this interface is not supported in
    + * {@link SQLDialect#SQLSERVER}
    + *
    + * @param <T> The function return type
    + * @author Lukas Eder
    + */
    +public interface WindowFinalStep<T> extends Field<T> {
    +
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/WindowIgnoreNullsStep.java b/jOOQ/src/main/java/org/jooq/WindowIgnoreNullsStep.java
    new file mode 100644
    index 00000000000..c83258bfe3d
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/WindowIgnoreNullsStep.java
    @@ -0,0 +1,73 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq;
    +
    +import static org.jooq.SQLDialect.DB2;
    +import static org.jooq.SQLDialect.ORACLE;
    +import static org.jooq.SQLDialect.SYBASE;
    +
    +/**
    + * This type is used for the window function DSL API.
    + * <p>
    + * Example: <code><pre>
    + * field.firstValue()
    + *      .ignoreNulls()
    + *      .over()
    + *      .partitionBy(AUTHOR_ID)
    + *      .orderBy(PUBLISHED_IN.asc())
    + *      .rowsBetweenUnboundedPreceding()
    + *      .andUnboundedFollowing()
    + * </pre></code>
    + *
    + * @param <T> The function return type
    + * @author Lukas Eder
    + */
    +public interface WindowIgnoreNullsStep<T> extends WindowOverStep<T> {
    +
    +    /**
    +     * Add an <code>IGNORE NULLS</code> clause to the window function. This
    +     * might not be supported by all dialects.
    +     */
    +    @Support({ DB2, ORACLE, SYBASE })
    +    WindowOverStep<T> ignoreNulls();
    +
    +    /**
    +     * Add a <code>RESPECT NULLS</code> clause to the window function. This
    +     * might not be supported by all dialects.
    +     */
    +    @Support({ DB2, ORACLE, SYBASE })
    +    WindowOverStep<T> respectNulls();
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/WindowOrderByStep.java b/jOOQ/src/main/java/org/jooq/WindowOrderByStep.java
    new file mode 100644
    index 00000000000..3538b25bc7e
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/WindowOrderByStep.java
    @@ -0,0 +1,81 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq;
    +
    +import static org.jooq.SQLDialect.DB2;
    +import static org.jooq.SQLDialect.ORACLE;
    +import static org.jooq.SQLDialect.POSTGRES;
    +import static org.jooq.SQLDialect.SQLSERVER;
    +import static org.jooq.SQLDialect.SYBASE;
    +
    +import java.util.Collection;
    +
    +/**
    + * This type is used for the window function DSL API.
    + * <p>
    + * Example: <code><pre>
    + * field.firstValue()
    + *      .ignoreNulls()
    + *      .over()
    + *      .partitionBy(AUTHOR_ID)
    + *      .orderBy(PUBLISHED_IN.asc())
    + *      .rowsBetweenUnboundedPreceding()
    + *      .andUnboundedFollowing()
    + * </pre></code>
    + *
    + * @param <T> The function return type
    + * @author Lukas Eder
    + */
    +public interface WindowOrderByStep<T> extends WindowFinalStep<T> {
    +
    +    /**
    +     * Add an <code>ORDER BY</code> clause to the window function.
    +     */
    +    @Support({ DB2, POSTGRES, ORACLE, SQLSERVER, SYBASE })
    +    WindowRowsStep<T> orderBy(Field<?>... fields);
    +
    +    /**
    +     * Add an <code>ORDER BY</code> clause to the window function.
    +     */
    +    @Support({ DB2, POSTGRES, ORACLE, SQLSERVER, SYBASE })
    +    WindowRowsStep<T> orderBy(SortField<?>... fields);
    +
    +    /**
    +     * Add an <code>ORDER BY</code> clause to the window function.
    +     */
    +    @Support({ DB2, POSTGRES, ORACLE, SQLSERVER, SYBASE })
    +    WindowRowsStep<T> orderBy(Collection<SortField<?>> fields);
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/WindowOverStep.java b/jOOQ/src/main/java/org/jooq/WindowOverStep.java
    new file mode 100644
    index 00000000000..aee38160071
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/WindowOverStep.java
    @@ -0,0 +1,69 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq;
    +
    +import static org.jooq.SQLDialect.DB2;
    +import static org.jooq.SQLDialect.ORACLE;
    +import static org.jooq.SQLDialect.POSTGRES;
    +import static org.jooq.SQLDialect.SQLSERVER;
    +import static org.jooq.SQLDialect.SYBASE;
    +
    +
    +/**
    + * This type is used for the window function DSL API.
    + * <p>
    + * Example: <code><pre>
    + * field.firstValue()
    + *      .ignoreNulls()
    + *      .over()
    + *      .partitionBy(AUTHOR_ID)
    + *      .orderBy(PUBLISHED_IN.asc())
    + *      .rowsBetweenUnboundedPreceding()
    + *      .andUnboundedFollowing()
    + * </pre></code>
    + *
    + * @param <T> The function return type
    + * @author Lukas Eder
    + */
    +public interface WindowOverStep<T> {
    +
    +    /**
    +     * Add an <code>OVER</code> clause
    +     */
    +    @Support({ DB2, POSTGRES, ORACLE, SQLSERVER, SYBASE })
    +    WindowPartitionByStep<T> over();
    +
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/WindowPartitionByStep.java b/jOOQ/src/main/java/org/jooq/WindowPartitionByStep.java
    new file mode 100644
    index 00000000000..9d2cd96678f
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/WindowPartitionByStep.java
    @@ -0,0 +1,79 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq;
    +
    +import static org.jooq.SQLDialect.DB2;
    +import static org.jooq.SQLDialect.ORACLE;
    +import static org.jooq.SQLDialect.POSTGRES;
    +import static org.jooq.SQLDialect.SQLSERVER;
    +import static org.jooq.SQLDialect.SYBASE;
    +
    +
    +/**
    + * This type is used for the window function DSL API.
    + * <p>
    + * Example: <code><pre>
    + * field.firstValue()
    + *      .ignoreNulls()
    + *      .over()
    + *      .partitionBy(AUTHOR_ID)
    + *      .orderBy(PUBLISHED_IN.asc())
    + *      .rowsBetweenUnboundedPreceding()
    + *      .andUnboundedFollowing()
    + * </pre></code>
    + *
    + * @param <T> The function return type
    + * @author Lukas Eder
    + */
    +public interface WindowPartitionByStep<T> extends WindowOrderByStep<T> {
    +
    +    /**
    +     * Add a <code>PARTITION BY</code> clause to the window functions.
    +     */
    +    @Support({ DB2, POSTGRES, ORACLE, SQLSERVER, SYBASE })
    +    WindowOrderByStep<T> partitionBy(Field<?>... fields);
    +
    +    /**
    +     * Add a <code>PARTITION BY 1</code> clause to the window functions, where
    +     * such a clause is required by the syntax of an RDBMS.
    +     * <p>
    +     * This clause is not supported in the Sybase dialect. If you use it, jOOQ
    +     * will simply ignore it.
    +     */
    +    @Support({ DB2, POSTGRES, ORACLE, SQLSERVER, SYBASE })
    +    WindowOrderByStep<T> partitionByOne();
    +
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/WindowRowsAndStep.java b/jOOQ/src/main/java/org/jooq/WindowRowsAndStep.java
    new file mode 100644
    index 00000000000..24365fe453a
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/WindowRowsAndStep.java
    @@ -0,0 +1,98 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq;
    +
    +import static org.jooq.SQLDialect.DB2;
    +import static org.jooq.SQLDialect.ORACLE;
    +import static org.jooq.SQLDialect.POSTGRES;
    +import static org.jooq.SQLDialect.SYBASE;
    +
    +/**
    + * This type is used for the window function DSL API.
    + * <p>
    + * Example: <code><pre>
    + * field.firstValue()
    + *      .ignoreNulls()
    + *      .over()
    + *      .partitionBy(AUTHOR_ID)
    + *      .orderBy(PUBLISHED_IN.asc())
    + *      .rowsBetweenUnboundedPreceding()
    + *      .andUnboundedFollowing()
    + * </pre></code>
    + * <p>
    + * Note, that the functionality provided by this interface is not supported in
    + * {@link SQLDialect#SQLSERVER}
    + *
    + * @param <T> The function return type
    + * @author Lukas Eder
    + */
    +public interface WindowRowsAndStep<T> {
    +
    +    /**
    +     * Add a <code>... AND UNBOUNDED PRECEDING</code> frame clause to the window
    +     * function.
    +     */
    +    @Support({ DB2, POSTGRES, ORACLE, SYBASE })
    +    WindowFinalStep<T> andUnboundedPreceding();
    +
    +    /**
    +     * Add a <code>... AND [number] PRECEDING</code> frame clause to the window
    +     * function.
    +     */
    +    @Support({ DB2, POSTGRES, ORACLE, SYBASE })
    +    WindowFinalStep<T> andPreceding(int number);
    +
    +    /**
    +     * Add a <code>... AND CURRENT ROW</code> frame clause to the window
    +     * function.
    +     */
    +    @Support({ DB2, POSTGRES, ORACLE, SYBASE })
    +    WindowFinalStep<T> andCurrentRow();
    +
    +    /**
    +     * Add a <code>... AND UNBOUNDED FOLLOWING</code> frame clause to the window
    +     * function.
    +     */
    +    @Support({ DB2, POSTGRES, ORACLE, SYBASE })
    +    WindowFinalStep<T> andUnboundedFollowing();
    +
    +    /**
    +     * Add a <code>... AND [number] FOLLOWING</code> frame clause to the window
    +     * function.
    +     */
    +    @Support({ DB2, POSTGRES, ORACLE, SYBASE })
    +    WindowFinalStep<T> andFollowing(int number);
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/WindowRowsStep.java b/jOOQ/src/main/java/org/jooq/WindowRowsStep.java
    new file mode 100644
    index 00000000000..a9a23658572
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/WindowRowsStep.java
    @@ -0,0 +1,132 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq;
    +
    +import static org.jooq.SQLDialect.DB2;
    +import static org.jooq.SQLDialect.ORACLE;
    +import static org.jooq.SQLDialect.POSTGRES;
    +import static org.jooq.SQLDialect.SYBASE;
    +
    +/**
    + * This type is used for the window function DSL API.
    + * <p>
    + * Example: <code><pre>
    + * field.firstValue()
    + *      .ignoreNulls()
    + *      .over()
    + *      .partitionBy(AUTHOR_ID)
    + *      .orderBy(PUBLISHED_IN.asc())
    + *      .rowsBetweenUnboundedPreceding()
    + *      .andUnboundedFollowing()
    + * </pre></code>
    + * <p>
    + * Note, that the functionality provided by this interface is not supported in
    + * {@link SQLDialect#SQLSERVER}
    + *
    + * @param <T> The function return type
    + * @author Lukas Eder
    + */
    +public interface WindowRowsStep<T> extends WindowFinalStep<T> {
    +
    +    /**
    +     * Add a <code>ROWS UNBOUNDED PRECEDING</code> frame clause to the window
    +     * function.
    +     */
    +    @Support({ DB2, POSTGRES, ORACLE, SYBASE })
    +    WindowFinalStep<T> rowsUnboundedPreceding();
    +
    +    /**
    +     * Add a <code>ROWS [number] PRECEDING</code> frame clause to the window
    +     * function.
    +     */
    +    @Support({ DB2, POSTGRES, ORACLE, SYBASE })
    +    WindowFinalStep<T> rowsPreceding(int number);
    +
    +    /**
    +     * Add a <code>ROWS CURRENT ROW</code> frame clause to the window function.
    +     */
    +    @Support({ DB2, POSTGRES, ORACLE, SYBASE })
    +    WindowFinalStep<T> rowsCurrentRow();
    +
    +    /**
    +     * Add a <code>ROWS UNBOUNDED FOLLOWING</code> frame clause to the window
    +     * function.
    +     */
    +    @Support({ DB2, POSTGRES, ORACLE, SYBASE })
    +    WindowFinalStep<T> rowsUnboundedFollowing();
    +
    +    /**
    +     * Add a <code>ROWS [number] FOLLOWING</code> frame clause to the window
    +     * function.
    +     */
    +    @Support({ DB2, POSTGRES, ORACLE, SYBASE })
    +    WindowFinalStep<T> rowsFollowing(int number);
    +
    +    /**
    +     * Add a <code>ROWS BETWEEN UNBOUNDED PRECEDING ...</code> frame clause to
    +     * the window function.
    +     */
    +    @Support({ DB2, POSTGRES, ORACLE, SYBASE })
    +    WindowRowsAndStep<T> rowsBetweenUnboundedPreceding();
    +
    +    /**
    +     * Add a <code>ROWS BETWEEN [number] PRECEDING ...</code> frame clause to
    +     * the window function.
    +     */
    +    @Support({ DB2, POSTGRES, ORACLE, SYBASE })
    +    WindowRowsAndStep<T> rowsBetweenPreceding(int number);
    +
    +    /**
    +     * Add a <code>ROWS BETWEEN CURRENT ROW ...</code> frame clause to
    +     * the window function.
    +     */
    +    @Support({ DB2, POSTGRES, ORACLE, SYBASE })
    +    WindowRowsAndStep<T> rowsBetweenCurrentRow();
    +
    +    /**
    +     * Add a <code>ROWS BETWEEN UNBOUNDED FOLLOWING ...</code> frame clause to
    +     * the window function.
    +     */
    +    @Support({ DB2, POSTGRES, ORACLE, SYBASE })
    +    WindowRowsAndStep<T> rowsBetweenUnboundedFollowing();
    +
    +    /**
    +     * Add a <code>ROWS BETWEEN [number] FOLLOWING ...</code> frame clause to
    +     * the window function.
    +     */
    +    @Support({ DB2, POSTGRES, ORACLE, SYBASE })
    +    WindowRowsAndStep<T> rowsBetweenFollowing(int number);
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/conf/MappedSchema.java b/jOOQ/src/main/java/org/jooq/conf/MappedSchema.java
    new file mode 100644
    index 00000000000..90d0499e074
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/conf/MappedSchema.java
    @@ -0,0 +1,140 @@
    +//
    +// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, v2.0.5-b02-fcs 
    +// See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a> 
    +// Any modifications to this file will be lost upon recompilation of the source schema. 
    +// Generated on: 2012.03.01 at 10:44:24 PM MEZ 
    +//
    +
    +
    +package org.jooq.conf;
    +
    +import java.io.Serializable;
    +import java.util.ArrayList;
    +import java.util.Collection;
    +import java.util.List;
    +import javax.xml.bind.annotation.XmlAccessType;
    +import javax.xml.bind.annotation.XmlAccessorType;
    +import javax.xml.bind.annotation.XmlElement;
    +import javax.xml.bind.annotation.XmlElementWrapper;
    +import javax.xml.bind.annotation.XmlType;
    +
    +
    +/**
    + * <p>Java class for MappedSchema complex type.
    + * 
    + * <p>The following schema fragment specifies the expected content contained within this class.
    + * 
    + * <pre>
    + * &lt;complexType name="MappedSchema">
    + *   &lt;complexContent>
    + *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    + *       &lt;all>
    + *         &lt;element name="input" type="{http://www.w3.org/2001/XMLSchema}string"/>
    + *         &lt;element name="output" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
    + *         &lt;element name="tables" type="{http://www.jooq.org/xsd/jooq-runtime-2.1.0.xsd}MappedTables" minOccurs="0"/>
    + *       &lt;/all>
    + *     &lt;/restriction>
    + *   &lt;/complexContent>
    + * &lt;/complexType>
    + * </pre>
    + * 
    + * 
    + */
    +@XmlAccessorType(XmlAccessType.FIELD)
    +@XmlType(name = "MappedSchema", propOrder = {
    +
    +})
    +public class MappedSchema
    +    implements Serializable
    +{
    +
    +    private final static long serialVersionUID = 205L;
    +    @XmlElement(required = true)
    +    protected String input;
    +    protected String output;
    +    @XmlElementWrapper(name = "tables")
    +    @XmlElement(name = "table")
    +    protected List<MappedTable> tables;
    +
    +    /**
    +     * Gets the value of the input property.
    +     * 
    +     * @return
    +     *     possible object is
    +     *     {@link String }
    +     *     
    +     */
    +    public String getInput() {
    +        return input;
    +    }
    +
    +    /**
    +     * Sets the value of the input property.
    +     * 
    +     * @param value
    +     *     allowed object is
    +     *     {@link String }
    +     *     
    +     */
    +    public void setInput(String value) {
    +        this.input = value;
    +    }
    +
    +    /**
    +     * Gets the value of the output property.
    +     * 
    +     * @return
    +     *     possible object is
    +     *     {@link String }
    +     *     
    +     */
    +    public String getOutput() {
    +        return output;
    +    }
    +
    +    /**
    +     * Sets the value of the output property.
    +     * 
    +     * @param value
    +     *     allowed object is
    +     *     {@link String }
    +     *     
    +     */
    +    public void setOutput(String value) {
    +        this.output = value;
    +    }
    +
    +    public List<MappedTable> getTables() {
    +        if (tables == null) {
    +            tables = new ArrayList<MappedTable>();
    +        }
    +        return tables;
    +    }
    +
    +    public MappedSchema withInput(String value) {
    +        setInput(value);
    +        return this;
    +    }
    +
    +    public MappedSchema withOutput(String value) {
    +        setOutput(value);
    +        return this;
    +    }
    +
    +    public MappedSchema withTables(MappedTable... values) {
    +        if (values!= null) {
    +            for (MappedTable value: values) {
    +                getTables().add(value);
    +            }
    +        }
    +        return this;
    +    }
    +
    +    public MappedSchema withTables(Collection<MappedTable> values) {
    +        if (values!= null) {
    +            getTables().addAll(values);
    +        }
    +        return this;
    +    }
    +
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/conf/MappedTable.java b/jOOQ/src/main/java/org/jooq/conf/MappedTable.java
    new file mode 100644
    index 00000000000..332c84532cd
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/conf/MappedTable.java
    @@ -0,0 +1,110 @@
    +//
    +// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, v2.0.5-b02-fcs 
    +// See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a> 
    +// Any modifications to this file will be lost upon recompilation of the source schema. 
    +// Generated on: 2012.03.01 at 10:44:24 PM MEZ 
    +//
    +
    +
    +package org.jooq.conf;
    +
    +import java.io.Serializable;
    +import javax.xml.bind.annotation.XmlAccessType;
    +import javax.xml.bind.annotation.XmlAccessorType;
    +import javax.xml.bind.annotation.XmlElement;
    +import javax.xml.bind.annotation.XmlType;
    +
    +
    +/**
    + * <p>Java class for MappedTable complex type.
    + * 
    + * <p>The following schema fragment specifies the expected content contained within this class.
    + * 
    + * <pre>
    + * &lt;complexType name="MappedTable">
    + *   &lt;complexContent>
    + *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    + *       &lt;all>
    + *         &lt;element name="input" type="{http://www.w3.org/2001/XMLSchema}string"/>
    + *         &lt;element name="output" type="{http://www.w3.org/2001/XMLSchema}string"/>
    + *       &lt;/all>
    + *     &lt;/restriction>
    + *   &lt;/complexContent>
    + * &lt;/complexType>
    + * </pre>
    + * 
    + * 
    + */
    +@XmlAccessorType(XmlAccessType.FIELD)
    +@XmlType(name = "MappedTable", propOrder = {
    +
    +})
    +public class MappedTable
    +    implements Serializable
    +{
    +
    +    private final static long serialVersionUID = 205L;
    +    @XmlElement(required = true)
    +    protected String input;
    +    @XmlElement(required = true)
    +    protected String output;
    +
    +    /**
    +     * Gets the value of the input property.
    +     * 
    +     * @return
    +     *     possible object is
    +     *     {@link String }
    +     *     
    +     */
    +    public String getInput() {
    +        return input;
    +    }
    +
    +    /**
    +     * Sets the value of the input property.
    +     * 
    +     * @param value
    +     *     allowed object is
    +     *     {@link String }
    +     *     
    +     */
    +    public void setInput(String value) {
    +        this.input = value;
    +    }
    +
    +    /**
    +     * Gets the value of the output property.
    +     * 
    +     * @return
    +     *     possible object is
    +     *     {@link String }
    +     *     
    +     */
    +    public String getOutput() {
    +        return output;
    +    }
    +
    +    /**
    +     * Sets the value of the output property.
    +     * 
    +     * @param value
    +     *     allowed object is
    +     *     {@link String }
    +     *     
    +     */
    +    public void setOutput(String value) {
    +        this.output = value;
    +    }
    +
    +    public MappedTable withInput(String value) {
    +        setInput(value);
    +        return this;
    +    }
    +
    +    public MappedTable withOutput(String value) {
    +        setOutput(value);
    +        return this;
    +    }
    +
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/conf/RenderKeywordStyle.java b/jOOQ/src/main/java/org/jooq/conf/RenderKeywordStyle.java
    new file mode 100644
    index 00000000000..232db906079
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/conf/RenderKeywordStyle.java
    @@ -0,0 +1,43 @@
    +//
    +// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, v2.0.5-b02-fcs 
    +// See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a> 
    +// Any modifications to this file will be lost upon recompilation of the source schema. 
    +// Generated on: 2012.03.01 at 10:44:24 PM MEZ 
    +//
    +
    +
    +package org.jooq.conf;
    +
    +import javax.xml.bind.annotation.XmlEnum;
    +
    +
    +/**
    + * <p>Java class for RenderKeywordStyle.
    + * 
    + * <p>The following schema fragment specifies the expected content contained within this class.
    + * <p>
    + * <pre>
    + * &lt;simpleType name="RenderKeywordStyle">
    + *   &lt;restriction base="{http://www.w3.org/2001/XMLSchema}string">
    + *     &lt;enumeration value="LOWER"/>
    + *     &lt;enumeration value="UPPER"/>
    + *   &lt;/restriction>
    + * &lt;/simpleType>
    + * </pre>
    + * 
    + */
    +@XmlEnum
    +public enum RenderKeywordStyle {
    +
    +    LOWER,
    +    UPPER;
    +
    +    public String value() {
    +        return name();
    +    }
    +
    +    public static RenderKeywordStyle fromValue(String v) {
    +        return valueOf(v);
    +    }
    +
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/conf/RenderMapping.java b/jOOQ/src/main/java/org/jooq/conf/RenderMapping.java
    new file mode 100644
    index 00000000000..6fdf7aa7dfa
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/conf/RenderMapping.java
    @@ -0,0 +1,108 @@
    +//
    +// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, v2.0.5-b02-fcs 
    +// See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a> 
    +// Any modifications to this file will be lost upon recompilation of the source schema. 
    +// Generated on: 2012.03.01 at 10:44:24 PM MEZ 
    +//
    +
    +
    +package org.jooq.conf;
    +
    +import java.io.Serializable;
    +import java.util.ArrayList;
    +import java.util.Collection;
    +import java.util.List;
    +import javax.xml.bind.annotation.XmlAccessType;
    +import javax.xml.bind.annotation.XmlAccessorType;
    +import javax.xml.bind.annotation.XmlElement;
    +import javax.xml.bind.annotation.XmlElementWrapper;
    +import javax.xml.bind.annotation.XmlType;
    +
    +
    +/**
    + * <p>Java class for RenderMapping complex type.
    + * 
    + * <p>The following schema fragment specifies the expected content contained within this class.
    + * 
    + * <pre>
    + * &lt;complexType name="RenderMapping">
    + *   &lt;complexContent>
    + *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    + *       &lt;all>
    + *         &lt;element name="defaultSchema" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
    + *         &lt;element name="schemata" type="{http://www.jooq.org/xsd/jooq-runtime-2.1.0.xsd}MappedSchemata" minOccurs="0"/>
    + *       &lt;/all>
    + *     &lt;/restriction>
    + *   &lt;/complexContent>
    + * &lt;/complexType>
    + * </pre>
    + * 
    + * 
    + */
    +@XmlAccessorType(XmlAccessType.FIELD)
    +@XmlType(name = "RenderMapping", propOrder = {
    +
    +})
    +public class RenderMapping
    +    implements Serializable
    +{
    +
    +    private final static long serialVersionUID = 205L;
    +    protected String defaultSchema;
    +    @XmlElementWrapper(name = "schemata")
    +    @XmlElement(name = "schema")
    +    protected List<MappedSchema> schemata;
    +
    +    /**
    +     * Gets the value of the defaultSchema property.
    +     * 
    +     * @return
    +     *     possible object is
    +     *     {@link String }
    +     *     
    +     */
    +    public String getDefaultSchema() {
    +        return defaultSchema;
    +    }
    +
    +    /**
    +     * Sets the value of the defaultSchema property.
    +     * 
    +     * @param value
    +     *     allowed object is
    +     *     {@link String }
    +     *     
    +     */
    +    public void setDefaultSchema(String value) {
    +        this.defaultSchema = value;
    +    }
    +
    +    public List<MappedSchema> getSchemata() {
    +        if (schemata == null) {
    +            schemata = new ArrayList<MappedSchema>();
    +        }
    +        return schemata;
    +    }
    +
    +    public RenderMapping withDefaultSchema(String value) {
    +        setDefaultSchema(value);
    +        return this;
    +    }
    +
    +    public RenderMapping withSchemata(MappedSchema... values) {
    +        if (values!= null) {
    +            for (MappedSchema value: values) {
    +                getSchemata().add(value);
    +            }
    +        }
    +        return this;
    +    }
    +
    +    public RenderMapping withSchemata(Collection<MappedSchema> values) {
    +        if (values!= null) {
    +            getSchemata().addAll(values);
    +        }
    +        return this;
    +    }
    +
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/conf/RenderNameStyle.java b/jOOQ/src/main/java/org/jooq/conf/RenderNameStyle.java
    new file mode 100644
    index 00000000000..77f240bab55
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/conf/RenderNameStyle.java
    @@ -0,0 +1,47 @@
    +//
    +// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, v2.0.5-b02-fcs 
    +// See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a> 
    +// Any modifications to this file will be lost upon recompilation of the source schema. 
    +// Generated on: 2012.03.01 at 10:44:24 PM MEZ 
    +//
    +
    +
    +package org.jooq.conf;
    +
    +import javax.xml.bind.annotation.XmlEnum;
    +
    +
    +/**
    + * <p>Java class for RenderNameStyle.
    + * 
    + * <p>The following schema fragment specifies the expected content contained within this class.
    + * <p>
    + * <pre>
    + * &lt;simpleType name="RenderNameStyle">
    + *   &lt;restriction base="{http://www.w3.org/2001/XMLSchema}string">
    + *     &lt;enumeration value="QUOTED"/>
    + *     &lt;enumeration value="AS_IS"/>
    + *     &lt;enumeration value="LOWER"/>
    + *     &lt;enumeration value="UPPER"/>
    + *   &lt;/restriction>
    + * &lt;/simpleType>
    + * </pre>
    + * 
    + */
    +@XmlEnum
    +public enum RenderNameStyle {
    +
    +    QUOTED,
    +    AS_IS,
    +    LOWER,
    +    UPPER;
    +
    +    public String value() {
    +        return name();
    +    }
    +
    +    public static RenderNameStyle fromValue(String v) {
    +        return valueOf(v);
    +    }
    +
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/conf/Settings.java b/jOOQ/src/main/java/org/jooq/conf/Settings.java
    new file mode 100644
    index 00000000000..adc98501874
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/conf/Settings.java
    @@ -0,0 +1,269 @@
    +//
    +// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, v2.0.5-b02-fcs
    +// See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a>
    +// Any modifications to this file will be lost upon recompilation of the source schema.
    +// Generated on: 2012.03.01 at 10:44:24 PM MEZ
    +//
    +
    +
    +package org.jooq.conf;
    +
    +import java.io.Serializable;
    +import java.util.ArrayList;
    +import java.util.Collection;
    +import java.util.List;
    +
    +import javax.xml.bind.annotation.XmlAccessType;
    +import javax.xml.bind.annotation.XmlAccessorType;
    +import javax.xml.bind.annotation.XmlElement;
    +import javax.xml.bind.annotation.XmlElementWrapper;
    +import javax.xml.bind.annotation.XmlType;
    +
    +
    +/**
    + * <p>Java class for Settings complex type.
    + *
    + * <p>The following schema fragment specifies the expected content contained within this class.
    + *
    + * <pre>
    + * &lt;complexType name="Settings">
    + *   &lt;complexContent>
    + *     &lt;restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
    + *       &lt;all>
    + *         &lt;element name="renderMapping" type="{http://www.jooq.org/xsd/jooq-runtime-2.1.0.xsd}RenderMapping" minOccurs="0"/>
    + *         &lt;element name="renderNameStyle" type="{http://www.jooq.org/xsd/jooq-runtime-2.1.0.xsd}RenderNameStyle" minOccurs="0"/>
    + *         &lt;element name="renderKeywordStyle" type="{http://www.jooq.org/xsd/jooq-runtime-2.1.0.xsd}RenderKeywordStyle" minOccurs="0"/>
    + *         &lt;element name="renderFormatted" type="{http://www.w3.org/2001/XMLSchema}boolean" minOccurs="0"/>
    + *         &lt;element name="statementType" type="{http://www.jooq.org/xsd/jooq-runtime-2.1.0.xsd}StatementType" minOccurs="0"/>
    + *         &lt;element name="executeLogging" type="{http://www.w3.org/2001/XMLSchema}boolean" minOccurs="0"/>
    + *         &lt;element name="executeListeners" type="{http://www.jooq.org/xsd/jooq-runtime-2.1.0.xsd}ExecuteListeners" minOccurs="0"/>
    + *       &lt;/all>
    + *     &lt;/restriction>
    + *   &lt;/complexContent>
    + * &lt;/complexType>
    + * </pre>
    + *
    + *
    + */
    +@XmlAccessorType(XmlAccessType.FIELD)
    +@XmlType(name = "Settings", propOrder = {
    +
    +})
    +public class Settings
    +    implements Serializable
    +{
    +
    +    private final static long serialVersionUID = 205L;
    +    protected RenderMapping renderMapping;
    +    @XmlElement(defaultValue = "QUOTED")
    +    protected RenderNameStyle renderNameStyle = RenderNameStyle.QUOTED;
    +    @XmlElement(defaultValue = "LOWER")
    +    protected RenderKeywordStyle renderKeywordStyle = RenderKeywordStyle.LOWER;
    +    @XmlElement(defaultValue = "false")
    +    protected Boolean renderFormatted = false;
    +    @XmlElement(defaultValue = "PREPARED_STATEMENT")
    +    protected StatementType statementType = StatementType.PREPARED_STATEMENT;
    +    @XmlElement(defaultValue = "true")
    +    protected Boolean executeLogging = true;
    +    @XmlElementWrapper(name = "executeListeners")
    +    @XmlElement(name = "executeListener")
    +    protected List<String> executeListeners;
    +
    +    /**
    +     * Gets the value of the renderMapping property.
    +     *
    +     * @return
    +     *     possible object is
    +     *     {@link RenderMapping }
    +     *
    +     */
    +    public RenderMapping getRenderMapping() {
    +        return renderMapping;
    +    }
    +
    +    /**
    +     * Sets the value of the renderMapping property.
    +     *
    +     * @param value
    +     *     allowed object is
    +     *     {@link RenderMapping }
    +     *
    +     */
    +    public void setRenderMapping(RenderMapping value) {
    +        this.renderMapping = value;
    +    }
    +
    +    /**
    +     * Gets the value of the renderNameStyle property.
    +     *
    +     * @return
    +     *     possible object is
    +     *     {@link RenderNameStyle }
    +     *
    +     */
    +    public RenderNameStyle getRenderNameStyle() {
    +        return renderNameStyle;
    +    }
    +
    +    /**
    +     * Sets the value of the renderNameStyle property.
    +     *
    +     * @param value
    +     *     allowed object is
    +     *     {@link RenderNameStyle }
    +     *
    +     */
    +    public void setRenderNameStyle(RenderNameStyle value) {
    +        this.renderNameStyle = value;
    +    }
    +
    +    /**
    +     * Gets the value of the renderKeywordStyle property.
    +     *
    +     * @return
    +     *     possible object is
    +     *     {@link RenderKeywordStyle }
    +     *
    +     */
    +    public RenderKeywordStyle getRenderKeywordStyle() {
    +        return renderKeywordStyle;
    +    }
    +
    +    /**
    +     * Sets the value of the renderKeywordStyle property.
    +     *
    +     * @param value
    +     *     allowed object is
    +     *     {@link RenderKeywordStyle }
    +     *
    +     */
    +    public void setRenderKeywordStyle(RenderKeywordStyle value) {
    +        this.renderKeywordStyle = value;
    +    }
    +
    +    /**
    +     * Gets the value of the renderFormatted property.
    +     *
    +     * @return
    +     *     possible object is
    +     *     {@link Boolean }
    +     *
    +     */
    +    public Boolean isRenderFormatted() {
    +        return renderFormatted;
    +    }
    +
    +    /**
    +     * Sets the value of the renderFormatted property.
    +     *
    +     * @param value
    +     *     allowed object is
    +     *     {@link Boolean }
    +     *
    +     */
    +    public void setRenderFormatted(Boolean value) {
    +        this.renderFormatted = value;
    +    }
    +
    +    /**
    +     * Gets the value of the statementType property.
    +     *
    +     * @return
    +     *     possible object is
    +     *     {@link StatementType }
    +     *
    +     */
    +    public StatementType getStatementType() {
    +        return statementType;
    +    }
    +
    +    /**
    +     * Sets the value of the statementType property.
    +     *
    +     * @param value
    +     *     allowed object is
    +     *     {@link StatementType }
    +     *
    +     */
    +    public void setStatementType(StatementType value) {
    +        this.statementType = value;
    +    }
    +
    +    /**
    +     * Gets the value of the executeLogging property.
    +     *
    +     * @return
    +     *     possible object is
    +     *     {@link Boolean }
    +     *
    +     */
    +    public Boolean isExecuteLogging() {
    +        return executeLogging;
    +    }
    +
    +    /**
    +     * Sets the value of the executeLogging property.
    +     *
    +     * @param value
    +     *     allowed object is
    +     *     {@link Boolean }
    +     *
    +     */
    +    public void setExecuteLogging(Boolean value) {
    +        this.executeLogging = value;
    +    }
    +
    +    public List<String> getExecuteListeners() {
    +        if (executeListeners == null) {
    +            executeListeners = new ArrayList<String>();
    +        }
    +        return executeListeners;
    +    }
    +
    +    public Settings withRenderMapping(RenderMapping value) {
    +        setRenderMapping(value);
    +        return this;
    +    }
    +
    +    public Settings withRenderNameStyle(RenderNameStyle value) {
    +        setRenderNameStyle(value);
    +        return this;
    +    }
    +
    +    public Settings withRenderKeywordStyle(RenderKeywordStyle value) {
    +        setRenderKeywordStyle(value);
    +        return this;
    +    }
    +
    +    public Settings withRenderFormatted(Boolean value) {
    +        setRenderFormatted(value);
    +        return this;
    +    }
    +
    +    public Settings withStatementType(StatementType value) {
    +        setStatementType(value);
    +        return this;
    +    }
    +
    +    public Settings withExecuteLogging(Boolean value) {
    +        setExecuteLogging(value);
    +        return this;
    +    }
    +
    +    public Settings withExecuteListeners(String... values) {
    +        if (values!= null) {
    +            for (String value: values) {
    +                getExecuteListeners().add(value);
    +            }
    +        }
    +        return this;
    +    }
    +
    +    public Settings withExecuteListeners(Collection<String> values) {
    +        if (values!= null) {
    +            getExecuteListeners().addAll(values);
    +        }
    +        return this;
    +    }
    +
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/conf/SettingsTools.java b/jOOQ/src/main/java/org/jooq/conf/SettingsTools.java
    new file mode 100644
    index 00000000000..7da17b7af59
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/conf/SettingsTools.java
    @@ -0,0 +1,151 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq.conf;
    +
    +import static org.jooq.conf.StatementType.PREPARED_STATEMENT;
    +import static org.jooq.conf.StatementType.STATIC_STATEMENT;
    +
    +import java.io.File;
    +import java.io.InputStream;
    +import java.io.StringReader;
    +import java.io.StringWriter;
    +import java.sql.PreparedStatement;
    +import java.sql.Statement;
    +
    +import javax.xml.bind.JAXB;
    +
    +/**
    + * Convenience methods for jOOQ runtime settings
    + *
    + * @author Lukas Eder
    + */
    +public final class SettingsTools {
    +
    +    private static final Settings DEFAULT_SETTINGS;
    +
    +    static {
    +        Settings settings = null;
    +        String property = System.getProperty("org.jooq.settings");
    +
    +        if (property != null) {
    +
    +            // Check classpath first
    +            InputStream in = SettingsTools.class.getResourceAsStream(property);
    +            if (in != null) {
    +                settings = JAXB.unmarshal(in, Settings.class);
    +            }
    +            else {
    +                settings = JAXB.unmarshal(new File(property), Settings.class);
    +            }
    +        }
    +
    +        if (settings == null) {
    +            InputStream in = SettingsTools.class.getResourceAsStream("/jooq-settings.xml");
    +
    +            if (in != null) {
    +                settings = JAXB.unmarshal(in, Settings.class);
    +            }
    +        }
    +
    +        if (settings == null) {
    +            settings = new Settings();
    +        }
    +
    +        DEFAULT_SETTINGS = settings;
    +    }
    +
    +    /**
    +     * Get the statement type from the settings
    +     */
    +    public static final StatementType getStatementType(Settings settings) {
    +        if (settings != null) {
    +            StatementType result = settings.getStatementType();
    +
    +            if (result != null) {
    +                return result;
    +            }
    +        }
    +
    +        return PREPARED_STATEMENT;
    +    }
    +
    +    /**
    +     * Whether a {@link PreparedStatement} should be executed
    +     */
    +    public static final boolean executePreparedStatements(Settings settings) {
    +        return getStatementType(settings) == PREPARED_STATEMENT;
    +    }
    +
    +    /**
    +     * Whether static {@link Statement} should be executed
    +     */
    +    public static final boolean executeStaticStatements(Settings settings) {
    +        return getStatementType(settings) == STATIC_STATEMENT;
    +    }
    +
    +    /**
    +     * Lazy access to {@link RenderMapping}
    +     */
    +    public static final RenderMapping getRenderMapping(Settings settings) {
    +        if (settings.getRenderMapping() == null) {
    +            settings.setRenderMapping(new RenderMapping());
    +        }
    +
    +        return settings.getRenderMapping();
    +    }
    +
    +    /**
    +     * Retrieve the configured default settings
    +     * <p>
    +     * <ul>
    +     * <li>If the JVM flag <code>-Dorg.jooq.settings</code> points to a valid
    +     * settings file on the classpath, this will be loaded</li>
    +     * <li>If the JVM flag <code>-Dorg.jooq.settings</code> points to a valid
    +     * settings file on the file system, this will be loaded</li>
    +     * <li>If a valid settings file is found on the classpath at
    +     * <code>/jooq-settings.xml</code>, this will be loaded</li>
    +     * <li>Otherwise, a new <code>Settings</code> object is created with its
    +     * defaults</li>
    +     * </ul>
    +     */
    +    public static final Settings defaultSettings() {
    +
    +        // Clone the DEFAULT_SETTINGS to prevent modification
    +        StringWriter xml = new StringWriter();
    +        JAXB.marshal(DEFAULT_SETTINGS, xml);
    +        return JAXB.unmarshal(new StringReader(xml.toString()), Settings.class);
    +    }
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/conf/StatementType.java b/jOOQ/src/main/java/org/jooq/conf/StatementType.java
    new file mode 100644
    index 00000000000..14e02816509
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/conf/StatementType.java
    @@ -0,0 +1,43 @@
    +//
    +// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, v2.0.5-b02-fcs 
    +// See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a> 
    +// Any modifications to this file will be lost upon recompilation of the source schema. 
    +// Generated on: 2012.03.01 at 10:44:24 PM MEZ 
    +//
    +
    +
    +package org.jooq.conf;
    +
    +import javax.xml.bind.annotation.XmlEnum;
    +
    +
    +/**
    + * <p>Java class for StatementType.
    + * 
    + * <p>The following schema fragment specifies the expected content contained within this class.
    + * <p>
    + * <pre>
    + * &lt;simpleType name="StatementType">
    + *   &lt;restriction base="{http://www.w3.org/2001/XMLSchema}string">
    + *     &lt;enumeration value="STATIC_STATEMENT"/>
    + *     &lt;enumeration value="PREPARED_STATEMENT"/>
    + *   &lt;/restriction>
    + * &lt;/simpleType>
    + * </pre>
    + * 
    + */
    +@XmlEnum
    +public enum StatementType {
    +
    +    STATIC_STATEMENT,
    +    PREPARED_STATEMENT;
    +
    +    public String value() {
    +        return name();
    +    }
    +
    +    public static StatementType fromValue(String v) {
    +        return valueOf(v);
    +    }
    +
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/conf/package-info.java b/jOOQ/src/main/java/org/jooq/conf/package-info.java
    new file mode 100644
    index 00000000000..4d6556f1fe1
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/conf/package-info.java
    @@ -0,0 +1,9 @@
    +//
    +// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, v2.0.5-b02-fcs 
    +// See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a> 
    +// Any modifications to this file will be lost upon recompilation of the source schema. 
    +// Generated on: 2012.03.01 at 10:44:24 PM MEZ 
    +//
    +
    +@javax.xml.bind.annotation.XmlSchema(namespace = "http://www.jooq.org/xsd/jooq-runtime-2.1.0.xsd")
    +package org.jooq.conf;
    diff --git a/jOOQ/src/main/java/org/jooq/exception/DataAccessException.java b/jOOQ/src/main/java/org/jooq/exception/DataAccessException.java
    new file mode 100644
    index 00000000000..878342d151a
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/exception/DataAccessException.java
    @@ -0,0 +1,74 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq.exception;
    +
    +
    +/**
    + * The <code>DataAccessException</code> is a generic {@link RuntimeException}
    + * indicating that something went wrong while executing a SQL statement from
    + * jOOQ. The idea behind this unchecked exception is borrowed from Spring's
    + * JDBC's DataAccessException
    + *
    + * @author Sergey Epik - Merged into jOOQ from Spring JDBC Support
    + * @author Lukas Eder
    + */
    +public class DataAccessException extends RuntimeException {
    +
    +    /**
    +     * Generated UID
    +     */
    +    private static final long serialVersionUID = 491834858363345767L;
    +
    +    /**
    +     * Constructor for DataAccessException.
    +     *
    +     * @param message the detail message
    +     */
    +    public DataAccessException(String message) {
    +        super(message);
    +    }
    +
    +    /**
    +     * Constructor for DataAccessException.
    +     *
    +     * @param message the detail message
    +     * @param cause the root cause (usually from using a underlying data access
    +     *            API such as JDBC)
    +     */
    +    public DataAccessException(String message, Throwable cause) {
    +        super(message, cause);
    +    }
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/exception/DataTypeException.java b/jOOQ/src/main/java/org/jooq/exception/DataTypeException.java
    new file mode 100644
    index 00000000000..61ce4c51c45
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/exception/DataTypeException.java
    @@ -0,0 +1,71 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq.exception;
    +
    +
    +/**
    + * An error occurred while handling data types. This typically happens when
    + * converting types
    + *
    + * @author Lukas Eder
    + */
    +public class DataTypeException extends DataAccessException {
    +
    +    /**
    +     * Generated UID
    +     */
    +    private static final long serialVersionUID = -6460945824599280420L;
    +
    +    /**
    +     * Constructor for DataTypeException.
    +     *
    +     * @param message the detail message
    +     */
    +    public DataTypeException(String message) {
    +        super(message);
    +    }
    +
    +    /**
    +     * Constructor for DataTypeException.
    +     *
    +     * @param message the detail message
    +     * @param cause the root cause (usually from using a underlying data access
    +     *            API such as JDBC)
    +     */
    +    public DataTypeException(String message, Throwable cause) {
    +        super(message, cause);
    +    }
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/exception/DetachedException.java b/jOOQ/src/main/java/org/jooq/exception/DetachedException.java
    new file mode 100644
    index 00000000000..c4783ee2ea6
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/exception/DetachedException.java
    @@ -0,0 +1,63 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq.exception;
    +
    +import org.jooq.Query;
    +import org.jooq.QueryPart;
    +import org.jooq.UpdatableRecord;
    +
    +/**
    + * An operation was invoked on a detached object ({@link Query},
    + * {@link QueryPart}, or {@link UpdatableRecord}).
    + *
    + * @author Lukas Eder
    + */
    +public class DetachedException extends DataAccessException {
    +
    +    /**
    +     * Generated UID
    +     */
    +    private static final long serialVersionUID = -6460945824599280420L;
    +
    +    /**
    +     * Constructor for DetachedException.
    +     *
    +     * @param message the detail message
    +     */
    +    public DetachedException(String message) {
    +        super(message);
    +    }
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/exception/InvalidResultException.java b/jOOQ/src/main/java/org/jooq/exception/InvalidResultException.java
    new file mode 100644
    index 00000000000..c937b584750
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/exception/InvalidResultException.java
    @@ -0,0 +1,78 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq.exception;
    +
    +import org.jooq.Query;
    +import org.jooq.ResultQuery;
    +import org.jooq.TableRecord;
    +import org.jooq.UpdatableRecord;
    +
    +/**
    + * An unexpected result was encountered after executing a {@link Query}. This
    + * exception indicates wrong usage of jOOQ's various fetch methods, or an
    + * integrity problem in your data.
    + * <p>
    + * This is typically the case in the following situations:
    + * <ul>
    + * <li>When you call methods such as {@link ResultQuery#fetchOne()} and the
    + * database returns more than one record.</li>
    + * <li>When you call methods such as
    + * {@link ResultQuery#fetchMap(org.jooq.Field)} and the database returns several
    + * records per key.</li>
    + * <li>When you refresh a {@link TableRecord} using
    + * {@link TableRecord#refreshUsing(org.jooq.TableField...)}, or
    + * {@link UpdatableRecord#refresh()}, and the record does not exist anymore in
    + * the database.</li>
    + * </ul>
    + *
    + * @author Lukas Eder
    + */
    +public class InvalidResultException extends DataAccessException {
    +
    +    /**
    +     * Generated UID
    +     */
    +    private static final long serialVersionUID = -6460945824599280420L;
    +
    +    /**
    +     * Constructor for InvalidResultException.
    +     *
    +     * @param message the detail message
    +     */
    +    public InvalidResultException(String message) {
    +        super(message);
    +    }
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/exception/MappingException.java b/jOOQ/src/main/java/org/jooq/exception/MappingException.java
    new file mode 100644
    index 00000000000..5852f24a448
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/exception/MappingException.java
    @@ -0,0 +1,86 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq.exception;
    +
    +import org.jooq.Cursor;
    +import org.jooq.FactoryOperations;
    +import org.jooq.Record;
    +import org.jooq.Result;
    +import org.jooq.ResultQuery;
    +
    +/**
    + * An error occurred while fetching data into a user defined Java object with
    + * any of these methods:
    + * <ul>
    + * <li> {@link ResultQuery#fetchInto(Class)}</li>
    + * <li> {@link Cursor#fetchInto(Class)}</li>
    + * <li> {@link Result#into(Class)}</li>
    + * <li> {@link Record#into(Class)}</li>
    + * </ul>
    + * ... or when copying data into a {@link Record} with any of these methods
    + * <ul>
    + * <li> {@link FactoryOperations#newRecord(org.jooq.Table, Object)}</li>
    + * <li> {@link Record#from(Object)}</li>
    + * </ul>
    + *
    + * @author Lukas Eder
    + */
    +public class MappingException extends DataAccessException {
    +
    +    /**
    +     * Generated UID
    +     */
    +    private static final long serialVersionUID = -6460945824599280420L;
    +
    +    /**
    +     * Constructor for MappingException.
    +     *
    +     * @param message the detail message
    +     */
    +    public MappingException(String message) {
    +        super(message);
    +    }
    +
    +    /**
    +     * Constructor for MappingException.
    +     *
    +     * @param message the detail message
    +     * @param cause the root cause
    +     */
    +    public MappingException(String message, Throwable cause) {
    +        super(message, cause);
    +    }
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/exception/SQLDialectNotSupportedException.java b/jOOQ/src/main/java/org/jooq/exception/SQLDialectNotSupportedException.java
    new file mode 100644
    index 00000000000..a9d9741aa0b
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/exception/SQLDialectNotSupportedException.java
    @@ -0,0 +1,64 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +
    +package org.jooq.exception;
    +
    +import org.jooq.Configuration;
    +import org.jooq.tools.JooqLogger;
    +
    +/**
    + * An exception thrown if an SQL construct is used, which is not supported by
    + * the dialect set in {@link Configuration#getDialect()}
    + *
    + * @author Lukas Eder
    + */
    +public class SQLDialectNotSupportedException extends RuntimeException {
    +
    +    private static final long serialVersionUID = 8119718690889460970L;
    +    private static final JooqLogger log = JooqLogger.getLogger(SQLDialectNotSupportedException.class);
    +
    +    public SQLDialectNotSupportedException(String message) {
    +        this(message, true);
    +    }
    +
    +    public SQLDialectNotSupportedException(String message, boolean warn) {
    +        super(message);
    +
    +        if (warn) {
    +            log.warn("Not supported by dialect", message);
    +        }
    +    }
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/impl/AbstractBindContext.java b/jOOQ/src/main/java/org/jooq/impl/AbstractBindContext.java
    new file mode 100644
    index 00000000000..fdf661ce9ca
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/impl/AbstractBindContext.java
    @@ -0,0 +1,182 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq.impl;
    +
    +import java.sql.SQLException;
    +import java.util.Arrays;
    +import java.util.Collection;
    +
    +import org.jooq.BindContext;
    +import org.jooq.Configuration;
    +import org.jooq.QueryPart;
    +import org.jooq.QueryPartInternal;
    +
    +/**
    + * A base class for {@link BindContext} implementations
    + *
    + * @author Lukas Eder
    + */
    +abstract class AbstractBindContext extends AbstractContext<BindContext> implements BindContext {
    +
    +    /**
    +     * Generated UID
    +     */
    +    private static final long serialVersionUID = -319766597723101571L;
    +
    +    AbstractBindContext(Configuration configuration) {
    +        super(configuration);
    +    }
    +
    +    AbstractBindContext(BindContext context) {
    +        this((Configuration) context);
    +
    +        declareFields(context.declareFields());
    +        declareTables(context.declareTables());
    +    }
    +
    +    // ------------------------------------------------------------------------
    +    // BindContext API
    +    // ------------------------------------------------------------------------
    +
    +    @Override
    +    public final BindContext bind(Collection<? extends QueryPart> parts) {
    +        if (parts != null) {
    +            for (QueryPart part : parts) {
    +                bind(part);
    +            }
    +        }
    +
    +        return this;
    +    }
    +
    +    @Override
    +    public final BindContext bind(QueryPart[] parts) {
    +        if (parts != null) {
    +            bind(Arrays.asList(parts));
    +        }
    +
    +        return this;
    +    }
    +
    +    @Override
    +    public final BindContext bind(QueryPart part) {
    +        if (part != null) {
    +            QueryPartInternal internal = part.internalAPI(QueryPartInternal.class);
    +
    +            // If this is supposed to be a declaration section and the part isn't
    +            // able to declare anything, then disable declaration temporarily
    +
    +            // We're declaring fields, but "part" does not declare fields
    +            if (declareFields() && !internal.declaresFields()) {
    +                declareFields(false);
    +                bindInternal(internal);
    +                declareFields(true);
    +            }
    +
    +            // We're declaring tables, but "part" does not declare tables
    +            else if (declareTables() && !internal.declaresTables()) {
    +                declareTables(false);
    +                bindInternal(internal);
    +                declareTables(true);
    +            }
    +
    +            // We're not declaring, or "part" can declare
    +            else {
    +                bindInternal(internal);
    +            }
    +        }
    +
    +        return this;
    +    }
    +
    +    @Override
    +    public final BindContext bindValues(Object... values) {
    +
    +        // [#724] When values is null, this is probably due to API-misuse
    +        // The user probably meant new Object[] { null }
    +        if (values == null) {
    +            bindValues(new Object[] { null });
    +        }
    +        else {
    +            for (Object value : values) {
    +                Class<?> type = (value == null) ? Object.class : value.getClass();
    +                bindValue(value, type);
    +            }
    +        }
    +
    +        return this;
    +    }
    +
    +    @Override
    +    public final BindContext bindValue(Object value, Class<?> type) {
    +        try {
    +            return bindValue0(value, type);
    +        }
    +        catch (SQLException e) {
    +            throw Util.translate("DefaultBindContext.bindValue", null, e);
    +        }
    +    }
    +
    +    // ------------------------------------------------------------------------
    +    // AbstractBindContext template methods
    +    // ------------------------------------------------------------------------
    +
    +    /**
    +     * Subclasses may override this method to achieve different behaviour
    +     */
    +    protected void bindInternal(QueryPartInternal internal) {
    +        internal.bind(this);
    +    }
    +
    +    /**
    +     * Subclasses may override this method to achieve different behaviour
    +     */
    +    @SuppressWarnings("unused")
    +    protected BindContext bindValue0(Object value, Class<?> type) throws SQLException {
    +        return this;
    +    }
    +
    +    // ------------------------------------------------------------------------
    +    // Object API
    +    // ------------------------------------------------------------------------
    +
    +    @Override
    +    public String toString() {
    +        StringBuilder sb = new StringBuilder();
    +        toString(sb);
    +        return sb.toString();
    +    }
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/impl/AbstractCondition.java b/jOOQ/src/main/java/org/jooq/impl/AbstractCondition.java
    new file mode 100644
    index 00000000000..b3ac2325fea
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/impl/AbstractCondition.java
    @@ -0,0 +1,125 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq.impl;
    +
    +import static org.jooq.impl.Factory.condition;
    +import static org.jooq.impl.Factory.exists;
    +import static org.jooq.impl.Factory.notExists;
    +
    +import java.util.Arrays;
    +
    +import org.jooq.Condition;
    +import org.jooq.Operator;
    +import org.jooq.Select;
    +
    +/**
    + * @author Lukas Eder
    + */
    +abstract class AbstractCondition extends AbstractQueryPart implements Condition {
    +
    +    /**
    +     * Generated UID
    +     */
    +    private static final long serialVersionUID = -6683692251799468624L;
    +
    +    AbstractCondition() {
    +    }
    +
    +    @Override
    +    public final Condition and(Condition other) {
    +        return new CombinedCondition(Operator.AND, Arrays.asList(this, other));
    +    }
    +
    +    @Override
    +    public final Condition or(Condition other) {
    +        return new CombinedCondition(Operator.OR, Arrays.asList(this, other));
    +    }
    +
    +    @Override
    +    public final Condition and(String sql) {
    +        return and(condition(sql));
    +    }
    +
    +    @Override
    +    public final Condition and(String sql, Object... bindings) {
    +        return and(condition(sql, bindings));
    +    }
    +
    +    @Override
    +    public final Condition or(String sql) {
    +        return or(condition(sql));
    +    }
    +
    +    @Override
    +    public final Condition or(String sql, Object... bindings) {
    +        return or(condition(sql, bindings));
    +    }
    +
    +    @Override
    +    public final Condition andNot(Condition other) {
    +        return and(other.not());
    +    }
    +
    +    @Override
    +    public final Condition orNot(Condition other) {
    +        return or(other.not());
    +    }
    +
    +    @Override
    +    public final Condition andExists(Select<?> select) {
    +        return and(exists(select));
    +    }
    +
    +    @Override
    +    public final Condition andNotExists(Select<?> select) {
    +        return and(notExists(select));
    +    }
    +
    +    @Override
    +    public final Condition orExists(Select<?> select) {
    +        return or(exists(select));
    +    }
    +
    +    @Override
    +    public final Condition orNotExists(Select<?> select) {
    +        return or(notExists(select));
    +    }
    +
    +    @Override
    +    public final Condition not() {
    +        return new NotCondition(this);
    +    }
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/impl/AbstractConfiguration.java b/jOOQ/src/main/java/org/jooq/impl/AbstractConfiguration.java
    new file mode 100644
    index 00000000000..30f70f27724
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/impl/AbstractConfiguration.java
    @@ -0,0 +1,104 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq.impl;
    +
    +import java.sql.Connection;
    +import java.util.Map;
    +
    +import org.jooq.Configuration;
    +import org.jooq.SQLDialect;
    +import org.jooq.conf.Settings;
    +
    +/**
    + * A base class for all objects implementing {@link Configuration}, wrapping
    + * another configuration.
    + *
    + * @author Lukas Eder
    + */
    +abstract class AbstractConfiguration implements Configuration {
    +
    +    /**
    +     * Generated UID
    +     */
    +    private static final long   serialVersionUID = -8527430313425232841L;
    +
    +    final Configuration configuration;
    +
    +    AbstractConfiguration(Configuration configuration) {
    +        this.configuration = configuration;
    +    }
    +
    +    @Override
    +    public final SQLDialect getDialect() {
    +        return configuration.getDialect();
    +    }
    +
    +    @Override
    +    public final Connection getConnection() {
    +        return configuration.getConnection();
    +    }
    +
    +    @Override
    +    public final void setConnection(Connection connection) {
    +        configuration.setConnection(connection);
    +    }
    +
    +    @Override
    +    @Deprecated
    +    public final org.jooq.SchemaMapping getSchemaMapping() {
    +        return configuration.getSchemaMapping();
    +    }
    +
    +    @Override
    +    public final Settings getSettings() {
    +        return configuration.getSettings();
    +    }
    +
    +    @Override
    +    public final Map<String, Object> getData() {
    +        return configuration.getData();
    +    }
    +
    +    @Override
    +    public final Object getData(String key) {
    +        return configuration.getData(key);
    +    }
    +
    +    @Override
    +    public final Object setData(String key, Object value) {
    +        return configuration.setData(key, value);
    +    }
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/impl/AbstractContext.java b/jOOQ/src/main/java/org/jooq/impl/AbstractContext.java
    new file mode 100644
    index 00000000000..6673331cec5
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/impl/AbstractContext.java
    @@ -0,0 +1,140 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq.impl;
    +
    +import org.jooq.Configuration;
    +import org.jooq.Context;
    +
    +/**
    + * @author Lukas Eder
    + */
    +abstract class AbstractContext<C extends Context<C>> extends AbstractConfiguration implements Context<C> {
    +
    +    /**
    +     * Generated UID
    +     */
    +    private static final long serialVersionUID = 4796952332163571043L;
    +
    +    boolean                   declareFields;
    +    boolean                   declareTables;
    +    boolean                   subquery;
    +    int                       index;
    +
    +    AbstractContext(Configuration configuration) {
    +        super(configuration);
    +    }
    +
    +    AbstractContext(Configuration configuration, boolean declareFields, boolean declareTables) {
    +        this(configuration);
    +        this.declareFields = declareFields;
    +        this.declareTables = declareTables;
    +    }
    +
    +    // ------------------------------------------------------------------------
    +    // XXX Context API
    +    // ------------------------------------------------------------------------
    +
    +    @Override
    +    public final boolean declareFields() {
    +        return declareFields;
    +    }
    +
    +    @SuppressWarnings("unchecked")
    +    @Override
    +    public final C declareFields(boolean d) {
    +        this.declareFields = d;
    +        return (C) this;
    +    }
    +
    +    @Override
    +    public final boolean declareTables() {
    +        return declareTables;
    +    }
    +
    +    @SuppressWarnings("unchecked")
    +    @Override
    +    public final C declareTables(boolean d) {
    +        this.declareTables = d;
    +        return (C) this;
    +    }
    +
    +    @Override
    +    public final boolean subquery() {
    +        return subquery;
    +    }
    +
    +    @SuppressWarnings("unchecked")
    +    @Override
    +    public final C subquery(boolean s) {
    +        this.subquery = s;
    +        return (C) this;
    +    }
    +
    +    @Override
    +    public final int nextIndex() {
    +        return ++index;
    +    }
    +
    +    @Override
    +    public final int peekIndex() {
    +        return index + 1;
    +    }
    +
    +    // ------------------------------------------------------------------------
    +    // XXX Object API
    +    // ------------------------------------------------------------------------
    +
    +    void toString(StringBuilder sb) {
    +        sb.append(  "bind index   [");
    +        sb.append(index);
    +        sb.append("]");
    +        sb.append("\ndeclaring    [");
    +
    +        if (declareFields) {
    +            sb.append("fields");
    +        }
    +        else if (declareTables) {
    +            sb.append("tables");
    +        }
    +        else {
    +            sb.append("-");
    +        }
    +
    +        sb.append("]\nsubquery     [");
    +        sb.append(subquery);
    +        sb.append("]");
    +    }
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/impl/AbstractDataType.java b/jOOQ/src/main/java/org/jooq/impl/AbstractDataType.java
    new file mode 100644
    index 00000000000..6cd7a8fe808
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/impl/AbstractDataType.java
    @@ -0,0 +1,501 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq.impl;
    +
    +import java.lang.reflect.Array;
    +import java.math.BigDecimal;
    +import java.math.BigInteger;
    +import java.sql.Blob;
    +import java.sql.Clob;
    +import java.sql.Date;
    +import java.sql.Time;
    +import java.sql.Timestamp;
    +import java.sql.Types;
    +import java.util.LinkedHashMap;
    +import java.util.Map;
    +
    +import org.jooq.ArrayRecord;
    +import org.jooq.Configuration;
    +import org.jooq.Converter;
    +import org.jooq.DataType;
    +import org.jooq.EnumType;
    +import org.jooq.MasterDataType;
    +import org.jooq.Result;
    +import org.jooq.SQLDialect;
    +import org.jooq.UDTRecord;
    +import org.jooq.exception.SQLDialectNotSupportedException;
    +import org.jooq.tools.Convert;
    +import org.jooq.types.Interval;
    +
    +/**
    + * A common base class for data types.
    + * <p>
    + * This also acts as a static data type registry for jOOQ internally.
    + * <p>
    + * This type is for JOOQ INTERNAL USE only. Do not reference directly
    + *
    + * @author Lukas Eder
    + */
    +@SuppressWarnings("unchecked")
    +public abstract class AbstractDataType<T> implements DataType<T> {
    +
    +    /**
    +     * Generated UID
    +     */
    +    private static final long                            serialVersionUID = 4155588654449505119L;
    +    private static final Map<String, DataType<?>>[]      typesByTypeName;
    +    private static final Map<Class<?>, DataType<?>>[]    typesByType;
    +    private static final Map<DataType<?>, DataType<?>>[] typesBySQLDataType;
    +    private static final Map<Class<?>, DataType<?>>      sqlDataTypesByType;
    +
    +    private final SQLDialect                             dialect;
    +
    +    private final SQLDataType<T>                         sqlDataType;
    +    private final Class<? extends T>                     type;
    +    private final String                                 castTypeName;
    +    private final String                                 typeName;
    +
    +    private final Class<? extends T[]>                   arrayType;
    +
    +    private final boolean                                hasPrecisionAndScale;
    +
    +    static {
    +        typesBySQLDataType = new Map[SQLDialect.values().length];
    +        typesByTypeName = new Map[SQLDialect.values().length];
    +        typesByType = new Map[SQLDialect.values().length];
    +
    +        for (SQLDialect dialect : SQLDialect.values()) {
    +            typesBySQLDataType[dialect.ordinal()] = new LinkedHashMap<DataType<?>, DataType<?>>();
    +            typesByTypeName[dialect.ordinal()] = new LinkedHashMap<String, DataType<?>>();
    +            typesByType[dialect.ordinal()] = new LinkedHashMap<Class<?>, DataType<?>>();
    +        }
    +
    +        sqlDataTypesByType = new LinkedHashMap<Class<?>, DataType<?>>();
    +    }
    +
    +    protected AbstractDataType(SQLDialect dialect, SQLDataType<T> sqldatatype, Class<? extends T> type, String typeName) {
    +        this(dialect, sqldatatype, type, typeName, typeName, false);
    +    }
    +
    +    protected AbstractDataType(SQLDialect dialect, SQLDataType<T> sqldatatype, Class<? extends T> type, String typeName, String castTypeName) {
    +        this(dialect, sqldatatype, type, typeName, castTypeName, false);
    +    }
    +
    +    protected AbstractDataType(SQLDialect dialect, SQLDataType<T> sqldatatype, Class<? extends T> type, String typeName, boolean hasPrecisionAndScale) {
    +        this(dialect, sqldatatype, type, typeName, typeName, hasPrecisionAndScale);
    +    }
    +
    +    protected AbstractDataType(SQLDialect dialect, SQLDataType<T> sqlDataType, Class<? extends T> type, String typeName, String castTypeName, boolean hasPrecisionAndScale) {
    +        this.dialect = dialect;
    +
    +        // [#858] SQLDataTypes should reference themselves for more convenience
    +        this.sqlDataType = (SQLDataType<T>) ((this instanceof SQLDataType) ? this : sqlDataType);
    +        this.type = type;
    +        this.typeName = typeName;
    +        this.castTypeName = castTypeName;
    +        this.hasPrecisionAndScale = hasPrecisionAndScale;
    +        this.arrayType = (Class<? extends T[]>) Array.newInstance(type, 0).getClass();
    +
    +        init();
    +    }
    +
    +    private final void init() {
    +
    +        // Dialect-specific data types
    +        if (dialect != null) {
    +            if (typesByTypeName[dialect.ordinal()].get(FieldTypeHelper.normalise(typeName)) == null) {
    +                typesByTypeName[dialect.ordinal()].put(FieldTypeHelper.normalise(typeName), this);
    +            }
    +
    +            if (typesByType[dialect.ordinal()].get(type) == null) {
    +                typesByType[dialect.ordinal()].put(type, this);
    +            }
    +
    +            if (typesBySQLDataType[dialect.ordinal()].get(sqlDataType) == null) {
    +                typesBySQLDataType[dialect.ordinal()].put(sqlDataType, this);
    +            }
    +        }
    +
    +        // Global data types
    +        else {
    +            if (sqlDataTypesByType.get(type) == null) {
    +                sqlDataTypesByType.put(type, this);
    +            }
    +        }
    +    }
    +
    +    @Override
    +    public final SQLDataType<T> getSQLDataType() {
    +        return sqlDataType;
    +    }
    +
    +    @Override
    +    public final DataType<T> getDataType(Configuration configuration) {
    +
    +        // If this is a SQLDataType find the most suited dialect-specific
    +        // data type
    +        if (getDialect() == null) {
    +            DataType<?> dataType = typesBySQLDataType[configuration.getDialect().ordinal()].get(this);
    +
    +            if (dataType != null) {
    +                return (DataType<T>) dataType;
    +            }
    +        }
    +
    +        // If this is already the dialect's specific data type, return this
    +        else if (getDialect() == configuration.getDialect()) {
    +            return this;
    +        }
    +
    +        // If the SQL data type is not available stick with this data type
    +        else if (getSQLDataType() == null) {
    +            return this;
    +        }
    +
    +        // If this is another dialect's specific data type, recurse
    +        else {
    +            getSQLDataType().getDataType(configuration);
    +        }
    +
    +        return this;
    +    }
    +
    +    @Override
    +    public /* final */ int getSQLType() {
    +        // TODO [#1227] There is some confusion with these types, especially
    +        // when it comes to byte[] which can be mapped to BLOB, BINARY, VARBINARY
    +
    +        if (type == Blob.class) {
    +            return Types.BLOB;
    +        }
    +        else if (type == Boolean.class) {
    +            return Types.BOOLEAN;
    +        }
    +        else if (type == BigInteger.class) {
    +            return Types.BIGINT;
    +        }
    +        else if (type == BigDecimal.class) {
    +            return Types.DECIMAL;
    +        }
    +        else if (type == Byte.class) {
    +            return Types.TINYINT;
    +        }
    +        else if (type == byte[].class) {
    +            return Types.BLOB;
    +        }
    +        else if (type == Clob.class) {
    +            return Types.CLOB;
    +        }
    +        else if (type == Date.class) {
    +            return Types.DATE;
    +        }
    +        else if (type == Double.class) {
    +            return Types.DOUBLE;
    +        }
    +        else if (type == Float.class) {
    +            return Types.FLOAT;
    +        }
    +        else if (type == Integer.class) {
    +            return Types.INTEGER;
    +        }
    +        else if (type == Long.class) {
    +            return Types.BIGINT;
    +        }
    +        else if (type == Short.class) {
    +            return Types.SMALLINT;
    +        }
    +        else if (type == String.class) {
    +            return Types.VARCHAR;
    +        }
    +        else if (type == Time.class) {
    +            return Types.TIME;
    +        }
    +        else if (type == Timestamp.class) {
    +            return Types.TIMESTAMP;
    +        }
    +
    +        // The type byte[] is handled earlier.
    +        else if (type.isArray()) {
    +            return Types.ARRAY;
    +        }
    +        else if (ArrayRecord.class.isAssignableFrom(type)) {
    +            return Types.ARRAY;
    +        }
    +        else if (EnumType.class.isAssignableFrom(type)) {
    +            return Types.VARCHAR;
    +        }
    +        else if (MasterDataType.class.isAssignableFrom(type)) {
    +            return Types.BIGINT;
    +        }
    +        else if (UDTRecord.class.isAssignableFrom(type)) {
    +            return Types.STRUCT;
    +        }
    +        else if (Result.class.isAssignableFrom(type)) {
    +            switch (dialect) {
    +                case ORACLE:
    +                case H2:
    +                    return -10; // OracleTypes.CURSOR;
    +
    +                case POSTGRES:
    +                default:
    +                    return Types.OTHER;
    +            }
    +        }
    +        else {
    +            return Types.OTHER;
    +        }
    +    }
    +
    +    @Override
    +    public final Class<? extends T> getType() {
    +        return type;
    +    }
    +
    +    @Override
    +    public final Class<?> getType(int precision, int scale) {
    +        if (hasPrecisionAndScale) {
    +            return FieldTypeHelper.getClass(Types.NUMERIC, precision, scale);
    +        }
    +
    +        // If no precise type could be guessed, take the default
    +        return getType();
    +    }
    +
    +    @Override
    +    public final Class<? extends T[]> getArrayType() {
    +        return arrayType;
    +    }
    +
    +    @Override
    +    public final String getTypeName() {
    +        return typeName;
    +    }
    +
    +    @Override
    +    public String getTypeName(Configuration configuration) {
    +        return getDataType(configuration).getTypeName();
    +    }
    +
    +    @Override
    +    public final String getCastTypeName() {
    +        return castTypeName;
    +    }
    +
    +    @Override
    +    public /* final */ String getCastTypeName(Configuration configuration, int precision, int scale) {
    +        String result = getCastTypeName(configuration);
    +
    +        if (precision != 0) {
    +
    +            // Remove existing precision / scale information, first
    +            result = result.replaceAll("\\([^\\)]*\\)", "");
    +
    +            if (scale != 0) {
    +                result += "(" + precision + ", " + scale + ")";
    +            }
    +            else {
    +                result += "(" + precision + ")";
    +            }
    +        }
    +
    +        return result;
    +    }
    +
    +    @Override
    +    public String getCastTypeName(Configuration configuration) {
    +        return getDataType(configuration).getCastTypeName();
    +    }
    +
    +    @Override
    +    public final DataType<T[]> getArrayDataType() {
    +        return new ArrayDataType<T>(this);
    +    }
    +
    +    @Override
    +    public final <A extends ArrayRecord<T>> DataType<A> asArrayDataType(Class<A> arrayDataType) {
    +        return new DefaultDataType<A>(dialect, arrayDataType, typeName, castTypeName);
    +    }
    +
    +    @Override
    +    public final <M extends MasterDataType<T>> DataType<M> asMasterDataType(Class<M> masterDataType) {
    +        return new DefaultDataType<M>(dialect, masterDataType, typeName, castTypeName);
    +    }
    +
    +    @Override
    +    public final <E extends EnumType> DataType<E> asEnumDataType(Class<E> enumDataType) {
    +        return new DefaultDataType<E>(dialect, enumDataType, typeName, castTypeName);
    +    }
    +
    +    @Override
    +    public final <U> DataType<U> asConvertedDataType(Converter<? super T, U> converter) {
    +        return new ConvertedDataType<T, U>(this, converter);
    +    }
    +
    +    @Override
    +    public final SQLDialect getDialect() {
    +        return dialect;
    +    }
    +
    +    @Override
    +    public /* final */ T convert(Object object) {
    +        return Convert.convert(object, type);
    +    }
    +
    +    protected static DataType<Object> getDefaultDataType(SQLDialect dialect, String typeName) {
    +        return new DefaultDataType<Object>(dialect, Object.class, typeName, typeName);
    +    }
    +
    +    @SuppressWarnings("deprecation")
    +    protected static DataType<?> getDataType(SQLDialect dialect, String typeName) {
    +        DataType<?> result = typesByTypeName[dialect.ordinal()].get(FieldTypeHelper.normalise(typeName));
    +
    +        // UDT data types and others are registered using SQL99
    +        if (result == null) {
    +            result = typesByTypeName[SQLDialect.SQL99.ordinal()].get(FieldTypeHelper.normalise(typeName));
    +        }
    +
    +        if (result == null) {
    +            // #366 Don't log a warning here. The warning is logged when
    +            // catching the exception in jOOQ-codegen
    +            throw new SQLDialectNotSupportedException("Type " + typeName + " is not supported in dialect " + dialect, false);
    +        }
    +
    +        return result;
    +    }
    +
    +    protected static <T> DataType<T> getDataType(SQLDialect dialect, Class<? extends T> type) {
    +
    +        // Recurse for arrays
    +        if (byte[].class != type && type.isArray()) {
    +            return (DataType<T>) getDataType(dialect, type.getComponentType()).getArrayDataType();
    +        }
    +
    +        // Base types are registered statically
    +        else {
    +            DataType<?> result = null;
    +
    +            if (dialect != null) {
    +                result = typesByType[dialect.ordinal()].get(type);
    +            }
    +
    +            if (result == null) {
    +
    +                // jOOQ data types are handled here
    +                if (EnumType.class.isAssignableFrom(type) ||
    +                    UDTRecord.class.isAssignableFrom(type) ||
    +                    MasterDataType.class.isAssignableFrom(type) ||
    +                    ArrayRecord.class.isAssignableFrom(type)) {
    +
    +                    for (SQLDialect d : SQLDialect.values()) {
    +                        result = typesByType[d.ordinal()].get(type);
    +
    +                        if (result != null) {
    +                            break;
    +                        }
    +                    }
    +                }
    +            }
    +
    +            if (result == null) {
    +                if (sqlDataTypesByType.get(type) != null) {
    +                    return (DataType<T>) sqlDataTypesByType.get(type);
    +                }
    +
    +                // All other data types are illegal
    +                else {
    +                    throw new SQLDialectNotSupportedException("Type " + type + " is not supported in dialect " + dialect);
    +                }
    +            }
    +
    +            return (DataType<T>) result;
    +        }
    +    }
    +
    +    @Override
    +    public final boolean isNumeric() {
    +        return Number.class.isAssignableFrom(type) && !isInterval();
    +    }
    +
    +    @Override
    +    public final boolean isString() {
    +        return type == String.class;
    +    }
    +
    +    @Override
    +    public final boolean isDateTime() {
    +        return java.util.Date.class.isAssignableFrom(type);
    +    }
    +
    +    @Override
    +    public final boolean isTemporal() {
    +        return isDateTime() || isInterval();
    +    }
    +
    +    @Override
    +    public final boolean isInterval() {
    +        return Interval.class.isAssignableFrom(type);
    +    }
    +
    +    @Override
    +    public final boolean isBinary() {
    +        return type == byte[].class;
    +    }
    +
    +    @Override
    +    public final boolean isArray() {
    +        return ArrayRecord.class.isAssignableFrom(type)
    +            || (!isBinary() && type.isArray());
    +    }
    +
    +    // ------------------------------------------------------------------------
    +    // The Object API
    +    // ------------------------------------------------------------------------
    +
    +    @Override
    +    public String toString() {
    +        return getClass().getSimpleName() + " [" + type + ", " + typeName + "]";
    +    }
    +
    +    @Override
    +    public int hashCode() {
    +        return toString().hashCode();
    +    }
    +
    +    @Override
    +    public boolean equals(Object obj) {
    +        return toString().equals("" + obj);
    +    }
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/impl/AbstractDelegatingQueryPart.java b/jOOQ/src/main/java/org/jooq/impl/AbstractDelegatingQueryPart.java
    new file mode 100644
    index 00000000000..ff0f3d3f2b0
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/impl/AbstractDelegatingQueryPart.java
    @@ -0,0 +1,80 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq.impl;
    +
    +import java.util.List;
    +
    +import org.jooq.Attachable;
    +import org.jooq.AttachableInternal;
    +import org.jooq.BindContext;
    +import org.jooq.QueryPart;
    +import org.jooq.RenderContext;
    +
    +/**
    + * @author Lukas Eder
    + */
    +abstract class AbstractDelegatingQueryPart<Q extends QueryPart> extends AbstractQueryPart {
    +
    +    /**
    +     * Generated UID
    +     */
    +    private static final long serialVersionUID = 6710523592699040547L;
    +    private final Q           delegate;
    +
    +    AbstractDelegatingQueryPart(Q delegate) {
    +        super(delegate.internalAPI(AttachableInternal.class).getConfiguration());
    +        this.delegate = delegate;
    +    }
    +
    +    @Override
    +    public final void toSQL(RenderContext context) {
    +        context.sql(delegate);
    +    }
    +
    +    @Override
    +    public final void bind(BindContext context) {
    +        context.bind(delegate);
    +    }
    +
    +    @Override
    +    public final List<Attachable> getAttachables() {
    +        return getAttachables(delegate);
    +    }
    +
    +    final Q getDelegate() {
    +        return delegate;
    +    }
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/impl/AbstractDelegatingSelect.java b/jOOQ/src/main/java/org/jooq/impl/AbstractDelegatingSelect.java
    new file mode 100644
    index 00000000000..16745c57826
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/impl/AbstractDelegatingSelect.java
    @@ -0,0 +1,369 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq.impl;
    +
    +import java.sql.ResultSet;
    +import java.util.List;
    +import java.util.Map;
    +import java.util.concurrent.ExecutorService;
    +
    +import org.jooq.Converter;
    +import org.jooq.Cursor;
    +import org.jooq.Field;
    +import org.jooq.FutureResult;
    +import org.jooq.Record;
    +import org.jooq.RecordHandler;
    +import org.jooq.Result;
    +import org.jooq.ResultQuery;
    +import org.jooq.Select;
    +import org.jooq.Table;
    +
    +/**
    + * @author Lukas Eder
    + */
    +abstract class AbstractDelegatingSelect<R extends Record>
    +    extends AbstractDelegatingQueryPart<Select<R>>
    +    implements Select<R> {
    +
    +    /**
    +     * Generated UID
    +     */
    +    private static final long serialVersionUID = 3382400928803573548L;
    +
    +    AbstractDelegatingSelect(Select<R> query) {
    +        super(query);
    +    }
    +
    +    @Override
    +    public final ResultQuery<R> bind(String param, Object value) {
    +        return getDelegate().bind(param, value);
    +    }
    +
    +    @Override
    +    public final ResultQuery<R> bind(int index, Object value) {
    +        return getDelegate().bind(index, value);
    +    }
    +
    +    @Override
    +    public final Class<? extends R> getRecordType() {
    +        return getDelegate().getRecordType();
    +    }
    +
    +    @Override
    +    public final List<Field<?>> getSelect() {
    +        return getDelegate().getSelect();
    +    }
    +
    +    @Override
    +    public final Result<R> getResult() {
    +        return getDelegate().getResult();
    +    }
    +
    +    @Override
    +    public final Result<R> fetch() {
    +        return getDelegate().fetch();
    +    }
    +
    +    @Override
    +    public final ResultSet fetchResultSet() {
    +        return getDelegate().fetchResultSet();
    +    }
    +
    +    @Override
    +    public final Cursor<R> fetchLazy() {
    +        return getDelegate().fetchLazy();
    +    }
    +
    +    @Override
    +    public final Cursor<R> fetchLazy(int fetchSize) {
    +        return getDelegate().fetchLazy(fetchSize);
    +    }
    +
    +    @Override
    +    public final List<Result<Record>> fetchMany() {
    +        return getDelegate().fetchMany();
    +    }
    +
    +    @Override
    +    public final <T> List<T> fetch(Field<T> field) {
    +        return getDelegate().fetch(field);
    +    }
    +
    +    @Override
    +    public final <T> List<T> fetch(Field<?> field, Class<? extends T> type) {
    +        return getDelegate().fetch(field, type);
    +    }
    +
    +    @Override
    +    public final <T, U> List<U> fetch(Field<T> field, Converter<? super T, U> converter) {
    +        return getDelegate().fetch(field, converter);
    +    }
    +
    +    @Override
    +    public final List<?> fetch(int fieldIndex) {
    +        return getDelegate().fetch(fieldIndex);
    +    }
    +
    +    @Override
    +    public final <T> List<T> fetch(int fieldIndex, Class<? extends T> type) {
    +        return getDelegate().fetch(fieldIndex, type);
    +    }
    +
    +    @Override
    +    public final <U> List<U> fetch(int fieldIndex, Converter<?, U> converter) {
    +        return getDelegate().fetch(fieldIndex, converter);
    +    }
    +
    +    @Override
    +    public final List<?> fetch(String fieldName) {
    +        return getDelegate().fetch(fieldName);
    +    }
    +
    +    @Override
    +    public final <T> List<T> fetch(String fieldName, Class<? extends T> type) {
    +        return getDelegate().fetch(fieldName, type);
    +    }
    +
    +    @Override
    +    public final <U> List<U> fetch(String fieldName, Converter<?, U> converter) {
    +        return getDelegate().fetch(fieldName, converter);
    +    }
    +
    +    @Override
    +    public final <T> T fetchOne(Field<T> field) {
    +        return getDelegate().fetchOne(field);
    +    }
    +
    +    @Override
    +    public final <T> T fetchOne(Field<?> field, Class<? extends T> type) {
    +        return getDelegate().fetchOne(field, type);
    +    }
    +
    +    @Override
    +    public final <T, U> U fetchOne(Field<T> field, Converter<? super T, U> converter) {
    +        return getDelegate().fetchOne(field, converter);
    +    }
    +
    +    @Override
    +    public final Object fetchOne(int fieldIndex) {
    +        return getDelegate().fetchOne(fieldIndex);
    +    }
    +
    +    @Override
    +    public final <T> T fetchOne(int fieldIndex, Class<? extends T> type) {
    +        return getDelegate().fetchOne(fieldIndex, type);
    +    }
    +
    +    @Override
    +    public final <U> U fetchOne(int fieldIndex, Converter<?, U> converter) {
    +        return getDelegate().fetchOne(fieldIndex, converter);
    +    }
    +
    +    @Override
    +    public final Object fetchOne(String fieldName) {
    +        return getDelegate().fetchOne(fieldName);
    +    }
    +
    +    @Override
    +    public final <T> T fetchOne(String fieldName, Class<? extends T> type) {
    +        return getDelegate().fetchOne(fieldName, type);
    +    }
    +
    +    @Override
    +    public final <U> U fetchOne(String fieldName, Converter<?, U> converter) {
    +        return getDelegate().fetchOne(fieldName, converter);
    +    }
    +
    +    @Override
    +    public final R fetchOne() {
    +        return getDelegate().fetchOne();
    +    }
    +
    +    @Override
    +    public final R fetchAny() {
    +        return getDelegate().fetchAny();
    +    }
    +
    +    @Override
    +    public final <K> Map<K, R> fetchMap(Field<K> key) {
    +        return getDelegate().fetchMap(key);
    +    }
    +
    +    @Override
    +    public final <K, V> Map<K, V> fetchMap(Field<K> key, Field<V> value) {
    +        return getDelegate().fetchMap(key, value);
    +    }
    +
    +    @Override
    +    public final List<Map<String, Object>> fetchMaps() {
    +        return getDelegate().fetchMaps();
    +    }
    +
    +    @Override
    +    public final Map<String, Object> fetchOneMap() {
    +        return getDelegate().fetchOneMap();
    +    }
    +
    +    @Override
    +    public final Object[][] fetchArrays() {
    +        return getDelegate().fetchArrays();
    +    }
    +
    +    @Override
    +    public final Object[] fetchArray(int fieldIndex) {
    +        return getDelegate().fetchArray(fieldIndex);
    +    }
    +
    +    @Override
    +    public final <T> T[] fetchArray(int fieldIndex, Class<? extends T> type) {
    +        return getDelegate().fetchArray(fieldIndex, type);
    +    }
    +
    +    @Override
    +    public final <U> U[] fetchArray(int fieldIndex, Converter<?, U> converter) {
    +        return getDelegate().fetchArray(fieldIndex, converter);
    +    }
    +
    +    @Override
    +    public final Object[] fetchArray(String fieldName) {
    +        return getDelegate().fetchArray(fieldName);
    +    }
    +
    +    @Override
    +    public final <T> T[] fetchArray(String fieldName, Class<? extends T> type) {
    +        return getDelegate().fetchArray(fieldName, type);
    +    }
    +
    +    @Override
    +    public final <U> U[] fetchArray(String fieldName, Converter<?, U> converter) {
    +        return getDelegate().fetchArray(fieldName, converter);
    +    }
    +
    +    @Override
    +    public final <T> T[] fetchArray(Field<T> field) {
    +        return getDelegate().fetchArray(field);
    +    }
    +
    +    @Override
    +    public final <T> T[] fetchArray(Field<?> field, Class<? extends T> type) {
    +        return getDelegate().fetchArray(field, type);
    +    }
    +
    +    @Override
    +    public final <T, U> U[] fetchArray(Field<T> field, Converter<? super T, U> converter) {
    +        return getDelegate().fetchArray(field, converter);
    +    }
    +
    +    @Override
    +    public final Object[] fetchOneArray() {
    +        return getDelegate().fetchOneArray();
    +    }
    +
    +    @Override
    +    public final <T> List<T> fetchInto(Class<? extends T> type) {
    +        return getDelegate().fetchInto(type);
    +    }
    +
    +    @Override
    +    public final <Z extends Record> Result<Z> fetchInto(Table<Z> table) {
    +        return getDelegate().fetchInto(table);
    +    }
    +
    +    @Override
    +    public final <H extends RecordHandler<R>> H fetchInto(H handler) {
    +        return getDelegate().fetchInto(handler);
    +    }
    +
    +    @Override
    +    public final FutureResult<R> fetchLater() {
    +        return getDelegate().fetchLater();
    +    }
    +
    +    @Override
    +    public final FutureResult<R> fetchLater(ExecutorService executor) {
    +        return getDelegate().fetchLater(executor);
    +    }
    +
    +    @Override
    +    public final int execute() {
    +        return getDelegate().execute();
    +    }
    +
    +    @Override
    +    public final Table<R> asTable() {
    +        return getDelegate().asTable();
    +    }
    +
    +    @Override
    +    public final Table<R> asTable(String alias) {
    +        return getDelegate().asTable(alias);
    +    }
    +
    +    @Override
    +    public final <T> Field<T> asField() {
    +        return getDelegate().asField();
    +    }
    +
    +    @Override
    +    public final <T> Field<T> asField(String alias) {
    +        return getDelegate().asField(alias);
    +    }
    +
    +    @Override
    +    public final <T> Field<T> getField(Field<T> field) {
    +        return getDelegate().asTable().getField(field);
    +    }
    +
    +    @Override
    +    public final Field<?> getField(String name) {
    +        return getDelegate().asTable().getField(name);
    +    }
    +
    +    @Override
    +    public final Field<?> getField(int index) {
    +        return getDelegate().asTable().getField(index);
    +    }
    +
    +    @Override
    +    public final List<Field<?>> getFields() {
    +        return getDelegate().asTable().getFields();
    +    }
    +
    +    @Override
    +    public final int getIndex(Field<?> field) throws IllegalArgumentException {
    +        return getDelegate().asTable().getIndex(field);
    +    }
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/impl/AbstractField.java b/jOOQ/src/main/java/org/jooq/impl/AbstractField.java
    new file mode 100644
    index 00000000000..dede4134324
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/impl/AbstractField.java
    @@ -0,0 +1,1478 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq.impl;
    +
    +import static org.jooq.impl.ExpressionOperator.ADD;
    +import static org.jooq.impl.ExpressionOperator.DIVIDE;
    +import static org.jooq.impl.ExpressionOperator.MULTIPLY;
    +import static org.jooq.impl.ExpressionOperator.SUBTRACT;
    +import static org.jooq.impl.Factory.falseCondition;
    +import static org.jooq.impl.Factory.literal;
    +import static org.jooq.impl.Factory.nullSafe;
    +import static org.jooq.impl.Factory.trueCondition;
    +import static org.jooq.impl.Factory.val;
    +import static org.jooq.impl.Factory.vals;
    +
    +import java.math.BigDecimal;
    +import java.sql.Timestamp;
    +import java.util.ArrayList;
    +import java.util.Arrays;
    +import java.util.Collection;
    +import java.util.LinkedHashMap;
    +import java.util.List;
    +import java.util.Map;
    +import java.util.Map.Entry;
    +
    +import org.jooq.BindContext;
    +import org.jooq.CaseValueStep;
    +import org.jooq.CaseWhenStep;
    +import org.jooq.Comparator;
    +import org.jooq.Condition;
    +import org.jooq.DataType;
    +import org.jooq.DatePart;
    +import org.jooq.Field;
    +import org.jooq.RenderContext;
    +import org.jooq.Select;
    +import org.jooq.SortField;
    +import org.jooq.SortOrder;
    +import org.jooq.WindowIgnoreNullsStep;
    +import org.jooq.WindowPartitionByStep;
    +import org.jooq.tools.Convert;
    +import org.jooq.types.Interval;
    +
    +abstract class AbstractField<T> extends AbstractNamedTypeProviderQueryPart<T> implements Field<T> {
    +
    +    /**
    +     * Generated UID
    +     */
    +    private static final long serialVersionUID = 2884811923648354905L;
    +
    +    AbstractField(String name, DataType<T> type) {
    +        super(name, type);
    +    }
    +
    +    // ------------------------------------------------------------------------
    +    // API (not implemented)
    +    // ------------------------------------------------------------------------
    +
    +    @Override
    +    public abstract void toSQL(RenderContext context);
    +
    +    @Override
    +    public abstract void bind(BindContext context);
    +
    +    @Override
    +    public abstract boolean isNullLiteral();
    +
    +    // ------------------------------------------------------------------------
    +    // API
    +    // ------------------------------------------------------------------------
    +
    +    @Override
    +    public Field<T> as(String alias) {
    +        return new FieldAlias<T>(this, alias);
    +    }
    +
    +    // ------------------------------------------------------------------------
    +    // Type casts
    +    // ------------------------------------------------------------------------
    +
    +    @Override
    +    public final <Z> Field<Z> cast(Field<Z> field) {
    +        return cast(field.getDataType());
    +    }
    +
    +    @SuppressWarnings("unchecked")
    +    @Override
    +    public final <Z> Field<Z> cast(DataType<Z> type) {
    +
    +        // [#473] Prevent unnecessary casts
    +        if (getDataType().equals(type)) {
    +            return (Field<Z>) this;
    +        }
    +        else {
    +            return new Cast<Z>(this, type);
    +        }
    +    }
    +
    +    @Override
    +    public final <Z> Field<Z> cast(Class<? extends Z> type) {
    +        return cast(SQLDataType.getDataType(null, type));
    +    }
    +
    +    // ------------------------------------------------------------------------
    +    // Conversion of field into a sort field
    +    // ------------------------------------------------------------------------
    +
    +    @Override
    +    public final SortField<T> asc() {
    +        return new SortFieldImpl<T>(this, SortOrder.ASC);
    +    }
    +
    +    @Override
    +    public final SortField<T> desc() {
    +        return new SortFieldImpl<T>(this, SortOrder.DESC);
    +    }
    +
    +    @Override
    +    public final SortField<Integer> sortAsc(Collection<T> sortList) {
    +        Map<T, Integer> map = new LinkedHashMap<T, Integer>();
    +
    +        int i = 0;
    +        for (T value : sortList) {
    +            map.put(value, i++);
    +        }
    +
    +        return sort(map);
    +    }
    +
    +    @Override
    +    public final SortField<Integer> sortAsc(T... sortList) {
    +        return sortAsc(Arrays.asList(sortList));
    +    }
    +
    +    @Override
    +    public final SortField<Integer> sortDesc(Collection<T> sortList) {
    +        Map<T, Integer> map = new LinkedHashMap<T, Integer>();
    +
    +        int i = 0;
    +        for (T value : sortList) {
    +            map.put(value, i--);
    +        }
    +
    +        return sort(map);
    +    }
    +
    +    @Override
    +    public final SortField<Integer> sortDesc(T... sortList) {
    +        return sortDesc(Arrays.asList(sortList));
    +    }
    +
    +    @Override
    +    public final <Z> SortField<Z> sort(Map<T, Z> sortMap) {
    +        CaseValueStep<T> decode = Factory.decode().value(this);
    +        CaseWhenStep<T, Z> result = null;
    +
    +        for (Entry<T, Z> entry : sortMap.entrySet()) {
    +            if (result == null) {
    +                result = decode.when(entry.getKey(), entry.getValue());
    +            }
    +            else {
    +                result.when(entry.getKey(), entry.getValue());
    +            }
    +        }
    +
    +        if (result == null) {
    +            return null;
    +        }
    +        else {
    +            return result.asc();
    +        }
    +    }
    +
    +    // ------------------------------------------------------------------------
    +    // Arithmetic operations
    +    // ------------------------------------------------------------------------
    +
    +    @Override
    +    public final Field<T> neg() {
    +        return new Neg<T>(this, ExpressionOperator.SUBTRACT);
    +    }
    +
    +    @Override
    +    public final Field<T> add(Number value) {
    +        return add(val(value));
    +    }
    +
    +    /**
    +     * This default implementation is known to be overridden by
    +     * {@link Expression} to generate neater expressions
    +     */
    +    @Override
    +    public Field<T> add(Field<?> value) {
    +        return new Expression<T>(ADD, this, nullSafe(value));
    +    }
    +
    +    @Override
    +    public final Field<T> sub(Number value) {
    +        return sub(val(value));
    +    }
    +
    +    @Override
    +    public final Field<T> sub(Field<?> value) {
    +        return new Expression<T>(SUBTRACT, this, nullSafe(value));
    +    }
    +
    +    @Override
    +    public final Field<T> mul(Number value) {
    +        return mul(val(value));
    +    }
    +
    +    /**
    +     * This default implementation is known to be overridden by
    +     * {@link Expression} to generate neater expressions
    +     */
    +    @Override
    +    public Field<T> mul(Field<? extends Number> value) {
    +        return new Expression<T>(MULTIPLY, this, nullSafe(value));
    +    }
    +
    +    @Override
    +    public final Field<T> div(Number value) {
    +        return div(val(value));
    +    }
    +
    +    @Override
    +    public final Field<T> div(Field<? extends Number> value) {
    +        return new Expression<T>(DIVIDE, this, nullSafe(value));
    +    }
    +
    +    @Override
    +    public final Field<T> mod(Number value) {
    +        return mod(val(value));
    +    }
    +
    +    @Override
    +    public final Field<T> mod(Field<? extends Number> value) {
    +        return new Mod<T>(this, nullSafe(value));
    +    }
    +
    +    // ------------------------------------------------------------------------
    +    // Conditions created from this field
    +    // ------------------------------------------------------------------------
    +
    +    @Override
    +    public final Condition isNull() {
    +        return equal((T) null);
    +    }
    +
    +    @Override
    +    public final Condition isNotNull() {
    +        return notEqual((T) null);
    +    }
    +
    +    @SuppressWarnings("unchecked")
    +    @Override
    +    public final Condition isTrue() {
    +        Class<?> type = getType();
    +
    +        if (type == String.class) {
    +            return ((Field<String>) this).in(Convert.TRUE_VALUES);
    +        }
    +        else if (Number.class.isAssignableFrom(type)) {
    +            return ((Field<Number>) this).equal((Number) getDataType().convert(1));
    +        }
    +        else if (Boolean.class.isAssignableFrom(type)) {
    +            return ((Field<Boolean>) this).equal(true);
    +        }
    +        else {
    +            return cast(String.class).in(Convert.TRUE_VALUES);
    +        }
    +    }
    +
    +    @SuppressWarnings("unchecked")
    +    @Override
    +    public final Condition isFalse() {
    +        Class<?> type = getType();
    +
    +        if (type == String.class) {
    +            return ((Field<String>) this).in(Convert.FALSE_VALUES);
    +        }
    +        else if (Number.class.isAssignableFrom(type)) {
    +            return ((Field<Number>) this).equal((Number) getDataType().convert(0));
    +        }
    +        else if (Boolean.class.isAssignableFrom(type)) {
    +            return ((Field<Boolean>) this).equal(false);
    +        }
    +        else {
    +            return cast(String.class).in(Convert.FALSE_VALUES);
    +        }
    +    }
    +
    +    @Override
    +    public final Condition like(String value) {
    +        return like(val(value, String.class));
    +    }
    +
    +    @Override
    +    public final Condition like(String value, char escape) {
    +        return like(val(value, String.class), escape);
    +    }
    +
    +    @Override
    +    public final Condition like(Field<String> value) {
    +        return new CompareCondition(this, nullSafe(value), Comparator.LIKE);
    +    }
    +
    +    @Override
    +    public final Condition like(Field<String> value, char escape) {
    +        return new CompareCondition(this, nullSafe(value), Comparator.LIKE, escape);
    +    }
    +
    +    @Override
    +    public final Condition notLike(String value) {
    +        return notLike(val(value, String.class));
    +    }
    +
    +    @Override
    +    public final Condition notLike(String value, char escape) {
    +        return notLike(val(value, String.class), escape);
    +    }
    +
    +    @Override
    +    public final Condition notLike(Field<String> value) {
    +        return new CompareCondition(this, nullSafe(value), Comparator.NOT_LIKE);
    +    }
    +
    +    @Override
    +    public final Condition notLike(Field<String> value, char escape) {
    +        return new CompareCondition(this, nullSafe(value), Comparator.NOT_LIKE, escape);
    +    }
    +
    +    @Override
    +    public final Condition contains(T value) {
    +        return new Contains<T>(this, value);
    +    }
    +
    +    @Override
    +    public final Condition contains(Field<T> value) {
    +        return new Contains<T>(this, value);
    +    }
    +
    +    @Override
    +    public final Condition startsWith(T value) {
    +        Field<String> concat = Factory.concat(Util.escapeForLike(value), literal("'%'"));
    +        return like(concat, Util.ESCAPE);
    +    }
    +
    +    @Override
    +    public final Condition startsWith(Field<T> value) {
    +        Field<String> concat = Factory.concat(Util.escapeForLike(value), literal("'%'"));
    +        return like(concat, Util.ESCAPE);
    +    }
    +
    +    @Override
    +    public final Condition endsWith(T value) {
    +        Field<String> concat = Factory.concat(literal("'%'"), Util.escapeForLike(value));
    +        return like(concat, Util.ESCAPE);
    +    }
    +
    +    @Override
    +    public final Condition endsWith(Field<T> value) {
    +        Field<String> concat = Factory.concat(literal("'%'"), Util.escapeForLike(value));
    +        return like(concat, Util.ESCAPE);
    +    }
    +
    +    @Override
    +    public final Condition in(T... values) {
    +        return in(vals(values).toArray(new Field<?>[0]));
    +    }
    +
    +    @Override
    +    public final Condition in(Field<?>... values) {
    +        if (values == null || values.length == 0) {
    +            return falseCondition();
    +        }
    +        else {
    +            return new InCondition<T>(this, nullSafe(values), InOperator.IN);
    +        }
    +    }
    +
    +    @Override
    +    public final Condition in(Collection<T> values) {
    +        List<Field<?>> fields = new ArrayList<Field<?>>();
    +
    +        for (T value : values) {
    +            fields.add(val(value, this));
    +        }
    +
    +        return in(fields.toArray(new Field<?>[0]));
    +    }
    +
    +    @Override
    +    public final Condition in(Select<?> query) {
    +        return new SelectQueryAsSubQueryCondition(query, this, SubQueryOperator.IN);
    +    }
    +
    +    @Override
    +    public final Condition notIn(T... values) {
    +        if (values == null || values.length == 0) {
    +            return trueCondition();
    +        }
    +        else {
    +            return notIn(vals(values).toArray(new Field<?>[0]));
    +        }
    +    }
    +
    +    @Override
    +    public final Condition notIn(Field<?>... values) {
    +        return new InCondition<T>(this, nullSafe(values), InOperator.NOT_IN);
    +    }
    +
    +    @Override
    +    public final Condition notIn(Collection<T> values) {
    +        List<Field<?>> fields = new ArrayList<Field<?>>();
    +
    +        for (T value : values) {
    +            fields.add(val(value, this));
    +        }
    +
    +        return notIn(fields.toArray(new Field<?>[0]));
    +    }
    +
    +    @Override
    +    public final Condition notIn(Select<?> query) {
    +        return new SelectQueryAsSubQueryCondition(
    +            query, this, SubQueryOperator.NOT_IN);
    +    }
    +
    +    @Override
    +    public final Condition between(T minValue, T maxValue) {
    +        return between(val(minValue, this), val(maxValue, this));
    +    }
    +
    +    @Override
    +    public final Condition between(Field<T> minValue, Field<T> maxValue) {
    +        return new BetweenCondition<T>(this, nullSafe(minValue), nullSafe(maxValue), false);
    +    }
    +
    +    @Override
    +    public final Condition notBetween(T minValue, T maxValue) {
    +        return notBetween(val(minValue, this), val(maxValue, this));
    +    }
    +
    +    @Override
    +    public final Condition notBetween(Field<T> minValue, Field<T> maxValue) {
    +        return new BetweenCondition<T>(this, nullSafe(minValue), nullSafe(maxValue), true);
    +    }
    +
    +    @Override
    +    public final Condition equal(T value) {
    +        return equal(val(value, this));
    +    }
    +
    +    @Override
    +    public final Condition equal(Field<T> field) {
    +        return new CompareCondition(this, nullSafe(field), Comparator.EQUALS);
    +    }
    +
    +    @Override
    +    public final Condition equalIgnoreCase(String value) {
    +        return equalIgnoreCase(val(value, String.class));
    +    }
    +
    +    @Override
    +    public final Condition equalIgnoreCase(Field<String> value) {
    +        return Factory.lower(cast(String.class)).equal(Factory.lower(value));
    +    }
    +
    +    @Override
    +    public final Condition equal(Select<?> query) {
    +        return new SelectQueryAsSubQueryCondition(query, this, SubQueryOperator.EQUALS);
    +    }
    +
    +    @Override
    +    public final Condition equalAny(Select<?> query) {
    +        return new SelectQueryAsSubQueryCondition(query, this, SubQueryOperator.EQUALS_ANY);
    +    }
    +
    +    @Override
    +    public final Condition equalAny(T... array) {
    +        return equalAny(val(array));
    +    }
    +
    +    @Override
    +    public final Condition equalAny(Field<T[]> array) {
    +        return new ArrayAsSubqueryCondition<T>(nullSafe(array), this, SubQueryOperator.EQUALS_ANY);
    +    }
    +
    +    @Override
    +    @Deprecated
    +    public final Condition equalSome(Select<?> query) {
    +        return new SelectQueryAsSubQueryCondition(query, this, SubQueryOperator.EQUALS_SOME);
    +    }
    +
    +    @Override
    +    public final Condition equalAll(Select<?> query) {
    +        return new SelectQueryAsSubQueryCondition(query, this, SubQueryOperator.EQUALS_ALL);
    +    }
    +
    +    @Override
    +    public final Condition equalAll(T... array) {
    +        return equalAll(val(array));
    +    }
    +
    +    @Override
    +    public final Condition equalAll(Field<T[]> array) {
    +        return new ArrayAsSubqueryCondition<T>(nullSafe(array), this, SubQueryOperator.EQUALS_ALL);
    +    }
    +
    +    @Override
    +    public final Condition notEqual(T value) {
    +        return notEqual(val(value, this));
    +    }
    +
    +    @Override
    +    public final Condition notEqual(Field<T> field) {
    +        return new CompareCondition(this, nullSafe(field), Comparator.NOT_EQUALS);
    +    }
    +
    +    @Override
    +    public final Condition notEqualIgnoreCase(String value) {
    +        return notEqualIgnoreCase(val(value, String.class));
    +    }
    +
    +    @Override
    +    public final Condition notEqualIgnoreCase(Field<String> value) {
    +        return Factory.lower(cast(String.class)).notEqual(Factory.lower(value));
    +    }
    +
    +    @Override
    +    public final Condition notEqual(Select<?> query) {
    +        return new SelectQueryAsSubQueryCondition(query, this, SubQueryOperator.NOT_EQUALS);
    +    }
    +
    +    @Override
    +    public final Condition notEqualAny(Select<?> query) {
    +        return new SelectQueryAsSubQueryCondition(query, this, SubQueryOperator.NOT_EQUALS_ANY);
    +    }
    +
    +    @Override
    +    public final Condition notEqualAny(T... array) {
    +        return notEqualAny(val(array));
    +    }
    +
    +    @Override
    +    public final Condition notEqualAny(Field<T[]> array) {
    +        return new ArrayAsSubqueryCondition<T>(nullSafe(array), this, SubQueryOperator.NOT_EQUALS_ANY);
    +    }
    +
    +    @Override
    +    @Deprecated
    +    public final Condition notEqualSome(Select<?> query) {
    +        return new SelectQueryAsSubQueryCondition(query, this, SubQueryOperator.NOT_EQUALS_SOME);
    +    }
    +
    +    @Override
    +    public final Condition notEqualAll(Select<?> query) {
    +        return new SelectQueryAsSubQueryCondition(query, this, SubQueryOperator.NOT_EQUALS_ALL);
    +    }
    +
    +    @Override
    +    public final Condition notEqualAll(T... array) {
    +        return notEqualAll(val(array));
    +    }
    +
    +    @Override
    +    public final Condition notEqualAll(Field<T[]> array) {
    +        return new ArrayAsSubqueryCondition<T>(nullSafe(array), this, SubQueryOperator.NOT_EQUALS_ALL);
    +    }
    +
    +    @Override
    +    public final Condition lessThan(T value) {
    +        return lessThan(val(value, this));
    +    }
    +
    +    @Override
    +    public final Condition lessThan(Field<T> field) {
    +        return new CompareCondition(this, nullSafe(field), Comparator.LESS);
    +    }
    +
    +    @Override
    +    public final Condition lessThan(Select<?> query) {
    +        return new SelectQueryAsSubQueryCondition(query, this, SubQueryOperator.LESS);
    +    }
    +
    +    @Override
    +    public final Condition lessThanAny(Select<?> query) {
    +        return new SelectQueryAsSubQueryCondition(query, this, SubQueryOperator.LESS_THAN_ANY);
    +    }
    +
    +    @Override
    +    public final Condition lessThanAny(T... array) {
    +        return lessThanAny(val(array));
    +    }
    +
    +    @Override
    +    public final Condition lessThanAny(Field<T[]> array) {
    +        return new ArrayAsSubqueryCondition<T>(nullSafe(array), this, SubQueryOperator.LESS_THAN_ANY);
    +    }
    +
    +    @Override
    +    @Deprecated
    +    public final Condition lessThanSome(Select<?> query) {
    +        return new SelectQueryAsSubQueryCondition(query, this, SubQueryOperator.LESS_THAN_SOME);
    +    }
    +
    +    @Override
    +    public final Condition lessThanAll(Select<?> query) {
    +        return new SelectQueryAsSubQueryCondition(query, this, SubQueryOperator.LESS_THAN_ALL);
    +    }
    +
    +    @Override
    +    public final Condition lessThanAll(T... array) {
    +        return lessThanAll(val(array));
    +    }
    +
    +    @Override
    +    public final Condition lessThanAll(Field<T[]> array) {
    +        return new ArrayAsSubqueryCondition<T>(nullSafe(array), this, SubQueryOperator.LESS_THAN_ALL);
    +    }
    +
    +    @Override
    +    public final Condition lessOrEqual(T value) {
    +        return lessOrEqual(val(value, this));
    +    }
    +
    +    @Override
    +    public final Condition lessOrEqual(Field<T> field) {
    +        return new CompareCondition(this, nullSafe(field), Comparator.LESS_OR_EQUAL);
    +    }
    +
    +    @Override
    +    public final Condition lessOrEqual(Select<?> query) {
    +        return new SelectQueryAsSubQueryCondition(query, this, SubQueryOperator.LESS_OR_EQUAL);
    +    }
    +
    +    @Override
    +    public final Condition lessOrEqualAny(Select<?> query) {
    +        return new SelectQueryAsSubQueryCondition(query, this, SubQueryOperator.LESS_OR_EQUAL_ANY);
    +    }
    +
    +    @Override
    +    public final Condition lessOrEqualAny(T... array) {
    +        return lessOrEqualAny(val(array));
    +    }
    +
    +    @Override
    +    public final Condition lessOrEqualAny(Field<T[]> array) {
    +        return new ArrayAsSubqueryCondition<T>(nullSafe(array), this, SubQueryOperator.LESS_OR_EQUAL_ANY);
    +    }
    +
    +    @Override
    +    @Deprecated
    +    public final Condition lessOrEqualSome(Select<?> query) {
    +        return new SelectQueryAsSubQueryCondition(query, this, SubQueryOperator.LESS_OR_EQUAL_SOME);
    +    }
    +
    +    @Override
    +    public final Condition lessOrEqualAll(Select<?> query) {
    +        return new SelectQueryAsSubQueryCondition(query, this, SubQueryOperator.LESS_OR_EQUAL_ALL);
    +    }
    +
    +    @Override
    +    public final Condition lessOrEqualAll(T... array) {
    +        return lessOrEqualAll(val(array));
    +    }
    +
    +    @Override
    +    public final Condition lessOrEqualAll(Field<T[]> array) {
    +        return new ArrayAsSubqueryCondition<T>(nullSafe(array), this, SubQueryOperator.LESS_OR_EQUAL_ALL);
    +    }
    +
    +    @Override
    +    public final Condition greaterThan(T value) {
    +        return greaterThan(val(value, this));
    +    }
    +
    +    @Override
    +    public final Condition greaterThan(Field<T> field) {
    +        return new CompareCondition(this, nullSafe(field), Comparator.GREATER);
    +    }
    +
    +    @Override
    +    public final Condition greaterThan(Select<?> query) {
    +        return new SelectQueryAsSubQueryCondition(query, this, SubQueryOperator.GREATER);
    +    }
    +
    +    @Override
    +    public final Condition greaterThanAny(Select<?> query) {
    +        return new SelectQueryAsSubQueryCondition(query, this, SubQueryOperator.GREATER_THAN_ANY);
    +    }
    +
    +    @Override
    +    public final Condition greaterThanAny(T... array) {
    +        return greaterThanAny(val(array));
    +    }
    +
    +    @Override
    +    public final Condition greaterThanAny(Field<T[]> array) {
    +        return new ArrayAsSubqueryCondition<T>(nullSafe(array), this, SubQueryOperator.GREATER_THAN_ANY);
    +    }
    +
    +    @Override
    +    @Deprecated
    +    public final Condition greaterThanSome(Select<?> query) {
    +        return new SelectQueryAsSubQueryCondition(query, this, SubQueryOperator.GREATER_THAN_SOME);
    +    }
    +
    +    @Override
    +    public final Condition greaterThanAll(Select<?> query) {
    +        return new SelectQueryAsSubQueryCondition(query, this, SubQueryOperator.GREATER_THAN_ALL);
    +    }
    +
    +    @Override
    +    public final Condition greaterThanAll(T... array) {
    +        return greaterThanAll(val(array));
    +    }
    +
    +    @Override
    +    public final Condition greaterThanAll(Field<T[]> array) {
    +        return new ArrayAsSubqueryCondition<T>(nullSafe(array), this, SubQueryOperator.GREATER_THAN_ALL);
    +    }
    +
    +    @Override
    +    public final Condition greaterOrEqual(T value) {
    +        return greaterOrEqual(val(value, this));
    +    }
    +
    +    @Override
    +    public final Condition greaterOrEqual(Field<T> field) {
    +        return new CompareCondition(this, nullSafe(field), Comparator.GREATER_OR_EQUAL);
    +    }
    +
    +    @Override
    +    public final Condition greaterOrEqual(Select<?> query) {
    +        return new SelectQueryAsSubQueryCondition(query, this, SubQueryOperator.GREATER_OR_EQUAL);
    +    }
    +
    +    @Override
    +    public final Condition greaterOrEqualAny(Select<?> query) {
    +        return new SelectQueryAsSubQueryCondition(query, this, SubQueryOperator.GREATER_OR_EQUAL_ANY);
    +    }
    +
    +    @Override
    +    public final Condition greaterOrEqualAny(T... array) {
    +        return greaterOrEqualAny(val(array));
    +    }
    +
    +    @Override
    +    public final Condition greaterOrEqualAny(Field<T[]> array) {
    +        return new ArrayAsSubqueryCondition<T>(nullSafe(array), this, SubQueryOperator.GREATER_OR_EQUAL_ANY);
    +    }
    +
    +    @Override
    +    @Deprecated
    +    public final Condition greaterOrEqualSome(Select<?> query) {
    +        return new SelectQueryAsSubQueryCondition(query, this, SubQueryOperator.GREATER_OR_EQUAL_SOME);
    +    }
    +
    +    @Override
    +    public final Condition greaterOrEqualAll(Select<?> query) {
    +        return new SelectQueryAsSubQueryCondition(query, this, SubQueryOperator.GREATER_OR_EQUAL_ALL);
    +    }
    +
    +    @Override
    +    public final Condition greaterOrEqualAll(T... array) {
    +        return greaterOrEqualAll(val(array));
    +    }
    +
    +    @Override
    +    public final Condition greaterOrEqualAll(Field<T[]> array) {
    +        return new ArrayAsSubqueryCondition<T>(nullSafe(array), this, SubQueryOperator.GREATER_OR_EQUAL_ALL);
    +    }
    +
    +    // ------------------------------------------------------------------------
    +    // Pre-2.0 API. This API is maintained for backwards-compatibility. It will
    +    // be removed in the future. Consider using equivalent methods from
    +    // org.jooq.Factory
    +    // ------------------------------------------------------------------------
    +
    +    @SuppressWarnings("unchecked")
    +    private final <Z extends Number> Field<Z> numeric() {
    +        if (getDataType().isNumeric()) {
    +            return (Field<Z>) this;
    +        }
    +        else {
    +            return (Field<Z>) cast(BigDecimal.class);
    +        }
    +    }
    +
    +    @SuppressWarnings("unchecked")
    +    private final Field<String> varchar() {
    +        if (getDataType().isString()) {
    +            return (Field<String>) this;
    +        }
    +        else {
    +            return cast(String.class);
    +        }
    +    }
    +
    +    @SuppressWarnings("unchecked")
    +    private final <Z extends java.util.Date> Field<Z> date() {
    +        if (getDataType().isTemporal()) {
    +            return (Field<Z>) this;
    +        }
    +        else {
    +            return (Field<Z>) cast(Timestamp.class);
    +        }
    +    }
    +
    +    @Override
    +    @Deprecated
    +    public final Field<Integer> sign() {
    +        return Factory.sign(numeric());
    +    }
    +
    +    @SuppressWarnings("unchecked")
    +    @Override
    +    @Deprecated
    +    public final Field<T> abs() {
    +        return (Field<T>) Factory.abs(numeric());
    +    }
    +
    +    @SuppressWarnings("unchecked")
    +    @Override
    +    @Deprecated
    +    public final Field<T> round() {
    +        return (Field<T>) Factory.round(numeric());
    +    }
    +
    +    @SuppressWarnings("unchecked")
    +    @Override
    +    @Deprecated
    +    public final Field<T> round(int decimals) {
    +        return (Field<T>) Factory.round(numeric(), decimals);
    +    }
    +
    +    @SuppressWarnings("unchecked")
    +    @Override
    +    @Deprecated
    +    public final Field<T> floor() {
    +        return (Field<T>) Factory.floor(numeric());
    +    }
    +
    +    @SuppressWarnings("unchecked")
    +    @Override
    +    @Deprecated
    +    public final Field<T> ceil() {
    +        return (Field<T>) Factory.ceil(numeric());
    +    }
    +
    +    @Override
    +    @Deprecated
    +    public final Field<BigDecimal> sqrt() {
    +        return Factory.sqrt(numeric());
    +    }
    +
    +    @Override
    +    @Deprecated
    +    public final Field<BigDecimal> exp() {
    +        return Factory.exp(numeric());
    +    }
    +
    +    @Override
    +    @Deprecated
    +    public final Field<BigDecimal> ln() {
    +        return Factory.ln(numeric());
    +    }
    +
    +    @Override
    +    @Deprecated
    +    public final Field<BigDecimal> log(int base) {
    +        return Factory.log(numeric(), base);
    +    }
    +
    +    @Override
    +    @Deprecated
    +    public final Field<BigDecimal> power(Number exponent) {
    +        return Factory.power(numeric(), exponent);
    +    }
    +
    +    @Override
    +    @Deprecated
    +    public final Field<BigDecimal> acos() {
    +        return Factory.acos(numeric());
    +    }
    +
    +    @Override
    +    @Deprecated
    +    public final Field<BigDecimal> asin() {
    +        return Factory.asin(numeric());
    +    }
    +
    +    @Override
    +    @Deprecated
    +    public final Field<BigDecimal> atan() {
    +        return Factory.atan(numeric());
    +    }
    +
    +    @Override
    +    @Deprecated
    +    public final Field<BigDecimal> atan2(Number y) {
    +        return Factory.atan2(numeric(), y);
    +    }
    +
    +    @Override
    +    @Deprecated
    +    public final Field<BigDecimal> atan2(Field<? extends Number> y) {
    +        return Factory.atan2(numeric(), y);
    +    }
    +
    +    @Override
    +    @Deprecated
    +    public final Field<BigDecimal> cos() {
    +        return Factory.cos(numeric());
    +    }
    +
    +    @Override
    +    @Deprecated
    +    public final Field<BigDecimal> sin() {
    +        return Factory.sin(numeric());
    +    }
    +
    +    @Override
    +    @Deprecated
    +    public final Field<BigDecimal> tan() {
    +        return Factory.tan(numeric());
    +    }
    +
    +    @Override
    +    @Deprecated
    +    public final Field<BigDecimal> cot() {
    +        return Factory.cot(numeric());
    +    }
    +
    +    @Override
    +    @Deprecated
    +    public final Field<BigDecimal> sinh() {
    +        return Factory.sinh(numeric());
    +    }
    +
    +    @Override
    +    @Deprecated
    +    public final Field<BigDecimal> cosh() {
    +        return Factory.cosh(numeric());
    +    }
    +
    +    @Override
    +    @Deprecated
    +    public final Field<BigDecimal> tanh() {
    +        return Factory.tanh(numeric());
    +    }
    +
    +    @Override
    +    @Deprecated
    +    public final Field<BigDecimal> coth() {
    +        return Factory.coth(numeric());
    +    }
    +
    +    @Override
    +    @Deprecated
    +    public final Field<BigDecimal> deg() {
    +        return Factory.deg(numeric());
    +    }
    +
    +    @Override
    +    @Deprecated
    +    public final Field<BigDecimal> rad() {
    +        return Factory.rad(numeric());
    +    }
    +
    +    @Override
    +    @Deprecated
    +    public final Field<Integer> count() {
    +        return Factory.count(this);
    +    }
    +
    +    @Override
    +    @Deprecated
    +    public final Field<Integer> countDistinct() {
    +        return Factory.countDistinct(this);
    +    }
    +
    +    @Override
    +    @Deprecated
    +    public final Field<T> max() {
    +        return Factory.max(this);
    +    }
    +
    +    @Override
    +    @Deprecated
    +    public final Field<T> min() {
    +        return Factory.min(this);
    +    }
    +
    +    @Override
    +    @Deprecated
    +    public final Field<BigDecimal> sum() {
    +        return Factory.sum(numeric());
    +    }
    +
    +    @Override
    +    @Deprecated
    +    public final Field<BigDecimal> avg() {
    +        return Factory.avg(numeric());
    +    }
    +
    +    @Override
    +    @Deprecated
    +    public final Field<BigDecimal> median() {
    +        return Factory.median(numeric());
    +    }
    +
    +    @Override
    +    @Deprecated
    +    public final Field<BigDecimal> stddevPop() {
    +        return Factory.stddevPop(numeric());
    +    }
    +
    +    @Override
    +    @Deprecated
    +    public final Field<BigDecimal> stddevSamp() {
    +        return Factory.stddevSamp(numeric());
    +    }
    +
    +    @Override
    +    @Deprecated
    +    public final Field<BigDecimal> varPop() {
    +        return Factory.varPop(numeric());
    +    }
    +
    +    @Override
    +    @Deprecated
    +    public final Field<BigDecimal> varSamp() {
    +        return Factory.varSamp(numeric());
    +    }
    +
    +    @Override
    +    @Deprecated
    +    public final WindowPartitionByStep<Integer> countOver() {
    +        return Factory.count(this).over();
    +    }
    +
    +    @Override
    +    @Deprecated
    +    public final WindowPartitionByStep<T> maxOver() {
    +        return Factory.max(this).over();
    +    }
    +
    +    @Override
    +    @Deprecated
    +    public final WindowPartitionByStep<T> minOver() {
    +        return Factory.min(this).over();
    +    }
    +
    +    @Override
    +    @Deprecated
    +    public final WindowPartitionByStep<BigDecimal> sumOver() {
    +        return Factory.sum(numeric()).over();
    +    }
    +
    +    @Override
    +    @Deprecated
    +    public final WindowPartitionByStep<BigDecimal> avgOver() {
    +        return Factory.avg(numeric()).over();
    +    }
    +
    +    @Override
    +    @Deprecated
    +    public final WindowIgnoreNullsStep<T> firstValue() {
    +        return Factory.firstValue(this);
    +    }
    +
    +    @Override
    +    @Deprecated
    +    public final WindowIgnoreNullsStep<T> lastValue() {
    +        return Factory.lastValue(this);
    +    }
    +
    +    @Override
    +    @Deprecated
    +    public final WindowIgnoreNullsStep<T> lead() {
    +        return Factory.lead(this);
    +    }
    +
    +    @Override
    +    @Deprecated
    +    public final WindowIgnoreNullsStep<T> lead(int offset) {
    +        return Factory.lead(this, offset);
    +    }
    +
    +    @Override
    +    @Deprecated
    +    public final WindowIgnoreNullsStep<T> lead(int offset, T defaultValue) {
    +        return Factory.lead(this, offset, defaultValue);
    +    }
    +
    +    @Override
    +    @Deprecated
    +    public final WindowIgnoreNullsStep<T> lead(int offset, Field<T> defaultValue) {
    +        return Factory.lead(this, offset, defaultValue);
    +    }
    +
    +    @Override
    +    @Deprecated
    +    public final WindowIgnoreNullsStep<T> lag() {
    +        return Factory.lag(this);
    +    }
    +
    +    @Override
    +    @Deprecated
    +    public final WindowIgnoreNullsStep<T> lag(int offset) {
    +        return Factory.lag(this, offset);
    +    }
    +
    +    @Override
    +    @Deprecated
    +    public final WindowIgnoreNullsStep<T> lag(int offset, T defaultValue) {
    +        return Factory.lag(this, offset, defaultValue);
    +    }
    +
    +    @Override
    +    @Deprecated
    +    public final WindowIgnoreNullsStep<T> lag(int offset, Field<T> defaultValue) {
    +        return Factory.lag(this, offset, defaultValue);
    +    }
    +
    +    @Override
    +    @Deprecated
    +    public final WindowPartitionByStep<BigDecimal> stddevPopOver() {
    +        return Factory.stddevPop(numeric()).over();
    +    }
    +
    +    @Override
    +    @Deprecated
    +    public final WindowPartitionByStep<BigDecimal> stddevSampOver() {
    +        return Factory.stddevSamp(numeric()).over();
    +    }
    +
    +    @Override
    +    @Deprecated
    +    public final WindowPartitionByStep<BigDecimal> varPopOver() {
    +        return Factory.varPop(numeric()).over();
    +    }
    +
    +    @Override
    +    @Deprecated
    +    public final WindowPartitionByStep<BigDecimal> varSampOver() {
    +        return Factory.varSamp(numeric()).over();
    +    }
    +
    +    @Override
    +    @Deprecated
    +    public final Field<String> upper() {
    +        return Factory.upper(varchar());
    +    }
    +
    +    @Override
    +    @Deprecated
    +    public final Field<String> lower() {
    +        return Factory.lower(varchar());
    +    }
    +
    +    @Override
    +    @Deprecated
    +    public final Field<String> trim() {
    +        return Factory.trim(varchar());
    +    }
    +
    +    @Override
    +    @Deprecated
    +    public final Field<String> rtrim() {
    +        return Factory.rtrim(varchar());
    +    }
    +
    +    @Override
    +    @Deprecated
    +    public final Field<String> ltrim() {
    +        return Factory.ltrim(varchar());
    +    }
    +
    +    @Override
    +    @Deprecated
    +    public final Field<String> rpad(Field<? extends Number> length) {
    +        return Factory.rpad(varchar(), length);
    +    }
    +
    +    @Override
    +    @Deprecated
    +    public final Field<String> rpad(int length) {
    +        return Factory.rpad(varchar(), length);
    +    }
    +
    +    @Override
    +    @Deprecated
    +    public final Field<String> rpad(Field<? extends Number> length, Field<String> character) {
    +        return Factory.rpad(varchar(), length, character);
    +    }
    +
    +    @Override
    +    @Deprecated
    +    public final Field<String> rpad(int length, char character) {
    +        return Factory.rpad(varchar(), length, character);
    +    }
    +
    +    @Override
    +    @Deprecated
    +    public final Field<String> lpad(Field<? extends Number> length) {
    +        return Factory.lpad(varchar(), length);
    +    }
    +
    +    @Override
    +    @Deprecated
    +    public final Field<String> lpad(int length) {
    +        return Factory.lpad(varchar(), length);
    +    }
    +
    +    @Override
    +    @Deprecated
    +    public final Field<String> lpad(Field<? extends Number> length, Field<String> character) {
    +        return Factory.lpad(varchar(), length, character);
    +    }
    +
    +    @Override
    +    @Deprecated
    +    public final Field<String> lpad(int length, char character) {
    +        return Factory.lpad(varchar(), length, character);
    +    }
    +
    +    @Override
    +    @Deprecated
    +    public final Field<String> repeat(Number count) {
    +        return Factory.repeat(varchar(), count == null ? 0 : count.intValue());
    +    }
    +
    +    @Override
    +    @Deprecated
    +    public final Field<String> repeat(Field<? extends Number> count) {
    +        return Factory.repeat(varchar(), count);
    +    }
    +
    +    @Override
    +    @Deprecated
    +    public final Field<String> replace(Field<String> search) {
    +        return Factory.replace(varchar(), search);
    +    }
    +
    +    @Override
    +    @Deprecated
    +    public final Field<String> replace(String search) {
    +        return Factory.replace(varchar(), search);
    +    }
    +
    +    @Override
    +    @Deprecated
    +    public final Field<String> replace(Field<String> search, Field<String> replace) {
    +        return Factory.replace(varchar(), search, replace);
    +    }
    +
    +    @Override
    +    @Deprecated
    +    public final Field<String> replace(String search, String replace) {
    +        return Factory.replace(varchar(), search, replace);
    +    }
    +
    +    @Override
    +    @Deprecated
    +    public final Field<Integer> position(String search) {
    +        return Factory.position(varchar(), search);
    +    }
    +
    +    @Override
    +    @Deprecated
    +    public final Field<Integer> position(Field<String> search) {
    +        return Factory.position(varchar(), search);
    +    }
    +
    +    @Override
    +    @Deprecated
    +    public final Field<Integer> ascii() {
    +        return Factory.ascii(varchar());
    +    }
    +
    +    @Override
    +    @Deprecated
    +    public final Field<String> concat(Field<?>... fields) {
    +        return Factory.concat(Util.combine(this, fields));
    +    }
    +
    +    @Override
    +    @Deprecated
    +    public final Field<String> concat(String... values) {
    +        return Factory.concat(Util.combine(this, vals((Object[]) values).toArray(new Field[0])));
    +    }
    +
    +    @Override
    +    @Deprecated
    +    public final Field<String> substring(int startingPosition) {
    +        return Factory.substring(varchar(), startingPosition);
    +    }
    +
    +    @Override
    +    @Deprecated
    +    public final Field<String> substring(Field<? extends Number> startingPosition) {
    +        return Factory.substring(varchar(), startingPosition);
    +    }
    +
    +    @Override
    +    @Deprecated
    +    public final Field<String> substring(int startingPosition, int length) {
    +        return Factory.substring(varchar(), startingPosition, length);
    +    }
    +
    +    @Override
    +    @Deprecated
    +    public final Field<String> substring(Field<? extends Number> startingPosition, Field<? extends Number> length) {
    +        return Factory.substring(varchar(), startingPosition, length);
    +    }
    +
    +    @Override
    +    @Deprecated
    +    public final Field<Integer> length() {
    +        return Factory.length(varchar());
    +    }
    +
    +    @Override
    +    @Deprecated
    +    public final Field<Integer> charLength() {
    +        return Factory.charLength(varchar());
    +    }
    +
    +    @Override
    +    @Deprecated
    +    public final Field<Integer> bitLength() {
    +        return Factory.bitLength(varchar());
    +    }
    +
    +    @Override
    +    @Deprecated
    +    public final Field<Integer> octetLength() {
    +        return Factory.octetLength(varchar());
    +    }
    +
    +    @Override
    +    @Deprecated
    +    public final Field<Integer> extract(DatePart datePart) {
    +        return Factory.extract(date(), datePart);
    +    }
    +
    +    @Override
    +    @Deprecated
    +    public final Field<T> greatest(T... others) {
    +        return Factory.greatest(this, vals(others).toArray(new Field[0]));
    +    }
    +
    +    @Override
    +    @Deprecated
    +    public final Field<T> greatest(Field<?>... others) {
    +        return Factory.greatest(this, others);
    +    }
    +
    +    @Override
    +    @Deprecated
    +    public final Field<T> least(T... others) {
    +        return Factory.least(this, vals(others).toArray(new Field[0]));
    +    }
    +
    +    @Override
    +    @Deprecated
    +    public final Field<T> least(Field<?>... others) {
    +        return Factory.least(this, others);
    +    }
    +
    +    @Override
    +    @Deprecated
    +    public final Field<T> nvl(T defaultValue) {
    +        return Factory.nvl(this, defaultValue);
    +    }
    +
    +    @Override
    +    @Deprecated
    +    public final Field<T> nvl(Field<T> defaultValue) {
    +        return Factory.nvl(this, defaultValue);
    +    }
    +
    +    @Override
    +    @Deprecated
    +    public final <Z> Field<Z> nvl2(Z valueIfNotNull, Z valueIfNull) {
    +        return Factory.nvl2(this, valueIfNotNull, valueIfNull);
    +    }
    +
    +    @Override
    +    @Deprecated
    +    public final <Z> Field<Z> nvl2(Field<Z> valueIfNotNull, Field<Z> valueIfNull) {
    +        return Factory.nvl2(this, valueIfNotNull, valueIfNull);
    +    }
    +
    +    @Override
    +    @Deprecated
    +    public final Field<T> nullif(T other) {
    +        return Factory.nullif(this, other);
    +    }
    +
    +    @Override
    +    @Deprecated
    +    public final Field<T> nullif(Field<T> other) {
    +        return Factory.nullif(this, other);
    +    }
    +
    +    @Override
    +    @Deprecated
    +    public final <Z> Field<Z> decode(T search, Z result) {
    +        return Factory.decode(this, search, result);
    +    }
    +
    +    @Override
    +    @Deprecated
    +    public final <Z> Field<Z> decode(T search, Z result, Object... more) {
    +        return Factory.decode(this, search, result, more);
    +    }
    +
    +    @Override
    +    @Deprecated
    +    public final <Z> Field<Z> decode(Field<T> search, Field<Z> result) {
    +        return Factory.decode(this, search, result);
    +    }
    +
    +    @Override
    +    @Deprecated
    +    public final <Z> Field<Z> decode(Field<T> search, Field<Z> result, Field<?>... more) {
    +        return Factory.decode(this, search, result, more);
    +    }
    +
    +    @Override
    +    @Deprecated
    +    public final Field<T> coalesce(T option, T... options) {
    +        return Factory.coalesce(this, Util.combine(val(option), vals(options).toArray(new Field[0])));
    +    }
    +
    +    @Override
    +    @Deprecated
    +    public final Field<T> coalesce(Field<T> option, Field<?>... options) {
    +        return Factory.coalesce(this, Util.combine(option, options));
    +    }
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/impl/AbstractFunction.java b/jOOQ/src/main/java/org/jooq/impl/AbstractFunction.java
    new file mode 100644
    index 00000000000..1a8cd28f04f
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/impl/AbstractFunction.java
    @@ -0,0 +1,96 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq.impl;
    +
    +import java.util.List;
    +
    +import org.jooq.Attachable;
    +import org.jooq.BindContext;
    +import org.jooq.Configuration;
    +import org.jooq.DataType;
    +import org.jooq.Field;
    +import org.jooq.RenderContext;
    +
    +/**
    + * A base class for all built-in functions that have vendor-specific behaviour
    + *
    + * @author Lukas Eder
    + */
    +abstract class AbstractFunction<T> extends AbstractField<T> {
    +
    +    /**
    +     * Generated UID
    +     */
    +    private static final long  serialVersionUID = 8771262868110746571L;
    +
    +    private final Field<?>[]   arguments;
    +
    +    AbstractFunction(String name, DataType<T> type, Field<?>... arguments) {
    +        super(name, type);
    +
    +        this.arguments = arguments;
    +    }
    +
    +    @Override
    +    public final List<Attachable> getAttachables() {
    +        return getAttachables(arguments);
    +    }
    +
    +    @Override
    +    public final void toSQL(RenderContext context) {
    +        context.sql(getFunction(context));
    +    }
    +
    +    @Override
    +    public final void bind(BindContext context) {
    +        context.bind(getFunction(context));
    +    }
    +
    +    @Override
    +    public final boolean isNullLiteral() {
    +        return false;
    +    }
    +
    +    final Field<T> getFunction(Configuration configuration) {
    +        return getFunction0(configuration);
    +    }
    +
    +    final Field<?>[] getArguments() {
    +        return arguments;
    +    }
    +
    +    abstract Field<T> getFunction0(Configuration configuration);
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/impl/AbstractKey.java b/jOOQ/src/main/java/org/jooq/impl/AbstractKey.java
    new file mode 100644
    index 00000000000..15a6937a853
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/impl/AbstractKey.java
    @@ -0,0 +1,80 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq.impl;
    +
    +import java.util.Arrays;
    +import java.util.List;
    +
    +import org.jooq.Key;
    +import org.jooq.Record;
    +import org.jooq.Table;
    +import org.jooq.TableField;
    +
    +/**
    + * Common base class for <code>Key</code>'s
    + *
    + * @author Lukas Eder
    + */
    +abstract class AbstractKey<R extends Record> implements Key<R> {
    +
    +    /**
    +     * Generated UID
    +     */
    +    private static final long        serialVersionUID = 8176874459141379340L;
    +
    +    private final Table<R>           table;
    +    private final TableField<R, ?>[] fields;
    +
    +    AbstractKey(Table<R> table, TableField<R, ?>... fields) {
    +        this.table = table;
    +        this.fields = fields;
    +    }
    +
    +    @Override
    +    public final Table<R> getTable() {
    +        return table;
    +    }
    +
    +    @Override
    +    public final List<TableField<R, ?>> getFields() {
    +        return Arrays.asList(fields);
    +    }
    +
    +    @Override
    +    public final TableField<R, ?>[] getFieldsArray() {
    +        return fields;
    +    }
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/impl/AbstractKeys.java b/jOOQ/src/main/java/org/jooq/impl/AbstractKeys.java
    new file mode 100644
    index 00000000000..cfca7a09601
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/impl/AbstractKeys.java
    @@ -0,0 +1,80 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq.impl;
    +
    +import org.jooq.ForeignKey;
    +import org.jooq.Identity;
    +import org.jooq.Record;
    +import org.jooq.Table;
    +import org.jooq.TableField;
    +import org.jooq.UniqueKey;
    +
    +/**
    + * A base class for generated static references
    + * <p>
    + * This type is for JOOQ INTERNAL USE only. Do not reference directly
    + *
    + * @author Lukas Eder
    + */
    +public abstract class AbstractKeys {
    +
    +    /**
    +     * Factory method for identities
    +     */
    +    protected static <R extends Record, T> Identity<R, T> createIdentity(Table<R> table, TableField<R, T> field) {
    +        return new IdentityImpl<R, T>(table, field);
    +    }
    +
    +	/**
    +	 * Factory method for unique keys
    +	 */
    +    protected static <R extends Record> UniqueKey<R> createUniqueKey(Table<R> table, TableField<R, ?>... fields) {
    +        return new UniqueKeyImpl<R>(table, fields);
    +    }
    +
    +    /**
    +     * Factory method for foreign keys
    +     */
    +    protected static <R extends Record, U extends Record> ForeignKey<R, U> createForeignKey(UniqueKey<U> key, Table<R> table, TableField<R, ?>... fields) {
    +        ForeignKey<R, U> result = new ReferenceImpl<R, U>(key, table, fields);
    +
    +        if (key instanceof UniqueKeyImpl) {
    +            ((UniqueKeyImpl<U>) key).references.add(result);
    +        }
    +
    +        return result;
    +    }
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/impl/AbstractNamedQueryPart.java b/jOOQ/src/main/java/org/jooq/impl/AbstractNamedQueryPart.java
    new file mode 100644
    index 00000000000..022e14fb05b
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/impl/AbstractNamedQueryPart.java
    @@ -0,0 +1,66 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +
    +package org.jooq.impl;
    +
    +import org.jooq.NamedQueryPart;
    +
    +/**
    + * @author Lukas Eder
    + */
    +abstract class AbstractNamedQueryPart extends AbstractQueryPart implements NamedQueryPart {
    +
    +    private static final long serialVersionUID = -4496974591205380167L;
    +    private final String      name;
    +
    +    AbstractNamedQueryPart(String name) {
    +        this.name = name;
    +    }
    +
    +    @Override
    +    public final String getName() {
    +        return name;
    +    }
    +
    +    @Override
    +    public final int compareTo(NamedQueryPart that) {
    +        if (that == null) {
    +            return 1;
    +        }
    +
    +        return getName().compareToIgnoreCase(that.getName());
    +    }
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/impl/AbstractNamedTypeProviderQueryPart.java b/jOOQ/src/main/java/org/jooq/impl/AbstractNamedTypeProviderQueryPart.java
    new file mode 100644
    index 00000000000..5d781c990a6
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/impl/AbstractNamedTypeProviderQueryPart.java
    @@ -0,0 +1,76 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +
    +package org.jooq.impl;
    +
    +import org.jooq.Configuration;
    +import org.jooq.DataType;
    +import org.jooq.NamedTypeProviderQueryPart;
    +
    +/**
    + * @author Lukas Eder
    + */
    +abstract class AbstractNamedTypeProviderQueryPart<T> extends AbstractNamedQueryPart implements
    +    NamedTypeProviderQueryPart<T> {
    +
    +    private static final long serialVersionUID = -9087742153758783482L;
    +    private final DataType<T> type;
    +
    +    AbstractNamedTypeProviderQueryPart(String name, DataType<T> type) {
    +        super(name);
    +
    +        this.type = type;
    +    }
    +
    +    @Override
    +    public final DataType<T> getDataType() {
    +        return type;
    +    }
    +
    +    protected final SQLDataType<T> getSQLDataType() {
    +        return type.getSQLDataType();
    +    }
    +
    +    @Override
    +    public final DataType<T> getDataType(Configuration configuration) {
    +        return type.getDataType(configuration);
    +    }
    +
    +    @Override
    +    public final Class<? extends T> getType() {
    +        return type.getType();
    +    }
    +}
    \ No newline at end of file
    diff --git a/jOOQ/src/main/java/org/jooq/impl/AbstractQuery.java b/jOOQ/src/main/java/org/jooq/impl/AbstractQuery.java
    new file mode 100644
    index 00000000000..85cbefee591
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/impl/AbstractQuery.java
    @@ -0,0 +1,204 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +
    +package org.jooq.impl;
    +
    +import static org.jooq.conf.SettingsTools.executePreparedStatements;
    +
    +import java.sql.Connection;
    +import java.sql.SQLException;
    +
    +import org.jooq.Configuration;
    +import org.jooq.ExecuteContext;
    +import org.jooq.ExecuteListener;
    +import org.jooq.Param;
    +import org.jooq.Query;
    +import org.jooq.exception.DetachedException;
    +import org.jooq.tools.JooqLogger;
    +
    +/**
    + * @author Lukas Eder
    + */
    +abstract class AbstractQuery extends AbstractQueryPart implements Query {
    +
    +    private static final long       serialVersionUID = -8046199737354507547L;
    +    private static final JooqLogger log              = JooqLogger.getLogger(AbstractQuery.class);
    +
    +    AbstractQuery(Configuration configuration) {
    +        super(configuration);
    +    }
    +
    +    /**
    +     * Subclasses may override this for covariant result types
    +     * <p>
    +     * {@inheritDoc}
    +     */
    +    @Override
    +    public Query bind(String param, Object value) {
    +        try {
    +            int index = Integer.valueOf(param);
    +            return bind(index, value);
    +        }
    +        catch (NumberFormatException e) {
    +            Param<?> p = getParam(param);
    +
    +            if (p == null) {
    +                throw new IllegalArgumentException("No such parameter : " + param);
    +            }
    +
    +            p.setConverted(value);
    +            return this;
    +        }
    +    }
    +
    +    /**
    +     * Subclasses may override this for covariant result types
    +     * <p>
    +     * {@inheritDoc}
    +     */
    +    @Override
    +    public Query bind(int index, Object value) {
    +        Param<?>[] array = getParams().values().toArray(new Param[0]);
    +
    +        if (index < 1 || index > array.length) {
    +            throw new IllegalArgumentException("Index out of range for Query parameters : " + index);
    +        }
    +
    +        array[index - 1].setConverted(value);
    +        return this;
    +    }
    +
    +    @SuppressWarnings("deprecation")
    +    @Override
    +    public final int execute() {
    +        if (isExecutable()) {
    +
    +            // Let listeners provide a configuration to this query
    +            Configuration configuration = org.jooq.ConfigurationRegistry.provideFor(getConfiguration());
    +            if (configuration == null) {
    +                configuration = getConfiguration();
    +            }
    +
    +            // [#1191] The following triggers a start event on all listeners.
    +            // This may be used to provide jOOQ with a JDBC connection, in case
    +            // this Query / Configuration was previously deserialised
    +            ExecuteContext ctx = new DefaultExecuteContext(configuration, this);
    +            ExecuteListener listener = new ExecuteListeners(ctx);
    +
    +            Connection connection = configuration.getConnection();
    +            if (connection == null) {
    +                throw new DetachedException("Cannot execute query. No Connection configured");
    +            }
    +
    +            // Ensure that all depending Attachables are attached
    +            attach(configuration);
    +
    +            int result = 0;
    +            try {
    +                listener.renderStart(ctx);
    +                ctx.sql(getSQL());
    +                listener.renderEnd(ctx);
    +
    +                listener.prepareStart(ctx);
    +                prepare(ctx);
    +                listener.prepareEnd(ctx);
    +
    +                // [#1145] Bind variables only for true prepared statements
    +                if (executePreparedStatements(getConfiguration().getSettings())) {
    +                    listener.bindStart(ctx);
    +                    create(configuration).bind(this, ctx.statement());
    +                    listener.bindEnd(ctx);
    +                }
    +
    +                result = execute(ctx, listener);
    +                return result;
    +            }
    +            catch (SQLException e) {
    +                throw Util.translate("AbstractQuery.execute", ctx.sql(), e);
    +            }
    +            finally {
    +                if (!keepStatementOpen()) {
    +                    Util.safeClose(listener, ctx);
    +                }
    +            }
    +        }
    +        else {
    +            if (log.isDebugEnabled()) {
    +                log.debug("Query is not executable", this);
    +            }
    +
    +            return 0;
    +        }
    +    }
    +
    +    /**
    +     * Default implementation to indicate whether this query should close the
    +     * statement after execution. Subclasses may override this method.
    +     */
    +    protected boolean keepStatementOpen() {
    +        return false;
    +    }
    +
    +    /**
    +     * Default implementation for preparing a statement. Subclasses may override
    +     * this method.
    +     */
    +    protected void prepare(ExecuteContext ctx) throws SQLException {
    +        ctx.statement(ctx.getConnection().prepareStatement(ctx.sql()));
    +    }
    +
    +    /**
    +     * Default implementation for query execution using a prepared statement.
    +     * Subclasses may override this method.
    +     */
    +    protected int execute(ExecuteContext ctx, ExecuteListener listener) throws SQLException {
    +        int result = 0;
    +
    +        listener.executeStart(ctx);
    +        result = ctx.statement().executeUpdate();
    +        listener.executeEnd(ctx);
    +
    +        return result;
    +    }
    +
    +    /**
    +     * Default implementation for executable check. Subclasses may override this
    +     * method.
    +     */
    +    protected boolean isExecutable() {
    +        return true;
    +    }
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/impl/AbstractQueryPart.java b/jOOQ/src/main/java/org/jooq/impl/AbstractQueryPart.java
    new file mode 100644
    index 00000000000..146a4c78cfe
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/impl/AbstractQueryPart.java
    @@ -0,0 +1,288 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +
    +package org.jooq.impl;
    +
    +import static org.jooq.conf.SettingsTools.executePreparedStatements;
    +
    +import java.sql.SQLException;
    +import java.util.ArrayList;
    +import java.util.Arrays;
    +import java.util.Collection;
    +import java.util.Collections;
    +import java.util.List;
    +import java.util.Map;
    +
    +import org.jooq.Attachable;
    +import org.jooq.AttachableInternal;
    +import org.jooq.Configuration;
    +import org.jooq.Param;
    +import org.jooq.Query;
    +import org.jooq.QueryPart;
    +import org.jooq.QueryPartInternal;
    +import org.jooq.SQLDialect;
    +import org.jooq.Store;
    +import org.jooq.exception.DataAccessException;
    +import org.jooq.exception.SQLDialectNotSupportedException;
    +
    +/**
    + * @author Lukas Eder
    + */
    +abstract class AbstractQueryPart implements QueryPartInternal, AttachableInternal {
    +
    +    private static final long serialVersionUID = 2078114876079493107L;
    +
    +    private final AttachableImpl      attachable;
    +
    +    AbstractQueryPart() {
    +        this(DefaultConfiguration.DEFAULT_CONFIGURATION);
    +    }
    +
    +    AbstractQueryPart(Configuration configuration) {
    +        this.attachable = new AttachableImpl(this, configuration);
    +    }
    +
    +    @Override
    +    public final <I> I internalAPI(Class<I> internalType) {
    +        return internalType.cast(this);
    +    }
    +
    +    // -------------------------------------------------------------------------
    +    // The Attachable and Attachable internal API
    +    // -------------------------------------------------------------------------
    +
    +    /**
    +     * By default, nothing is done on an attachment event. Subclasses may
    +     * override this, however, in order to receive a connection when needed
    +     */
    +    @Override
    +    public void attach(Configuration configuration) {
    +        attachable.attach(configuration);
    +    }
    +
    +    @Override
    +    public final Configuration getConfiguration() {
    +        return attachable.getConfiguration();
    +    }
    +
    +    // -------------------------------------------------------------------------
    +    // The QueryPart and QueryPart internal API
    +    // -------------------------------------------------------------------------
    +
    +    @Override
    +    @Deprecated
    +    public final SQLDialect getDialect() {
    +        return getConfiguration().getDialect();
    +    }
    +
    +    /**
    +     * This method is also declared as {@link Query#getSQL()}
    +     * <p>
    +     * {@inheritDoc}
    +     */
    +    @Override
    +    public final String getSQL() {
    +        if (executePreparedStatements(getConfiguration().getSettings())) {
    +            return getSQL(false);
    +        }
    +        else {
    +            return getSQL(true);
    +        }
    +    }
    +
    +    /**
    +     * This method is also declared as {@link Query#getSQL(boolean)}
    +     * <p>
    +     * {@inheritDoc}
    +     */
    +    @Override
    +    public final String getSQL(boolean inline) {
    +        if (inline) {
    +            return create().renderInlined(this);
    +        }
    +        else {
    +            return create().render(this);
    +        }
    +    }
    +
    +    /**
    +     * This method is also declared as {@link Query#getBindValues()}
    +     * <p>
    +     * {@inheritDoc}
    +     */
    +    @Override
    +    public final List<Object> getBindValues() {
    +        List<Object> result = new ArrayList<Object>();
    +
    +        for (Param<?> param : getParams().values()) {
    +            result.add(param.getValue());
    +        }
    +
    +        return Collections.unmodifiableList(result);
    +    }
    +
    +    /**
    +     * This method is also declared as {@link Query#getParams()}
    +     * <p>
    +     * {@inheritDoc}
    +     */
    +    @Override
    +    public final Map<String, Param<?>> getParams() {
    +        ParamCollector collector = new ParamCollector(getConfiguration());
    +        collector.bind(this);
    +        return Collections.unmodifiableMap(collector.result);
    +    }
    +
    +    /**
    +     * This method is also declared as {@link Query#getParam(String)}
    +     * <p>
    +     * {@inheritDoc}
    +     */
    +    @Override
    +    public final Param<?> getParam(String name) {
    +        return getParams().get(name);
    +    }
    +
    +    /**
    +     * Subclasses may override this
    +     */
    +    @Override
    +    public boolean declaresFields() {
    +        return false;
    +    }
    +
    +    /**
    +     * Subclasses may override this
    +     */
    +    @Override
    +    public boolean declaresTables() {
    +        return false;
    +    }
    +
    +    // -------------------------------------------------------------------------
    +    // The Object API
    +    // -------------------------------------------------------------------------
    +
    +    @Override
    +    public boolean equals(Object that) {
    +        if (that instanceof QueryPart) {
    +            String sql1 = create().renderInlined(this);
    +            String sql2 = create().renderInlined((QueryPart) that);
    +
    +            return sql1.equals(sql2);
    +        }
    +
    +        return false;
    +    }
    +
    +    @Override
    +    public int hashCode() {
    +        return create().renderInlined(this).hashCode();
    +    }
    +
    +    @Override
    +    public String toString() {
    +        try {
    +            return create().renderInlined(this);
    +        }
    +        catch (SQLDialectNotSupportedException e) {
    +            return "[ ... " + e.getMessage() + " ... ]";
    +        }
    +    }
    +
    +    // -------------------------------------------------------------------------
    +    // Internal convenience methods
    +    // -------------------------------------------------------------------------
    +
    +    /**
    +     * Internal convenience method
    +     */
    +    protected final List<Attachable> getAttachables(Collection<? extends QueryPart> list) {
    +        List<Attachable> result = new ArrayList<Attachable>();
    +
    +        for (QueryPart item : list) {
    +            if (item != null) {
    +                result.add(item);
    +            }
    +        }
    +
    +        return result;
    +    }
    +
    +    /**
    +     * Internal convenience method
    +     */
    +    protected final List<Attachable> getAttachables(QueryPart... list) {
    +        return getAttachables(Arrays.asList(list));
    +    }
    +
    +    /**
    +     * Internal convenience method
    +     */
    +    protected final List<Attachable> getAttachables(Store<?> store) {
    +        return store == null
    +            ? Collections.<Attachable> emptyList()
    +            : store.internalAPI(AttachableInternal.class).getAttachables();
    +    }
    +
    +    /**
    +     * Internal convenience method
    +     */
    +    protected final Factory create() {
    +        return create(getConfiguration());
    +    }
    +
    +    /**
    +     * Internal convenience method
    +     */
    +    protected final Factory create(Configuration configuration) {
    +        return Factory.getNewFactory(configuration);
    +    }
    +
    +    /**
    +     * Internal convenience method
    +     */
    +    final Factory create(AttachableImpl a) {
    +        return create(a.getConfiguration());
    +    }
    +
    +    /**
    +     * Internal convenience method
    +     */
    +    protected final DataAccessException translate(String task, String sql, SQLException e) {
    +        return Util.translate(task, sql, e);
    +    }
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/impl/AbstractQueryPartMap.java b/jOOQ/src/main/java/org/jooq/impl/AbstractQueryPartMap.java
    new file mode 100644
    index 00000000000..8fb57214e4d
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/impl/AbstractQueryPartMap.java
    @@ -0,0 +1,151 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq.impl;
    +
    +import java.util.ArrayList;
    +import java.util.Collection;
    +import java.util.LinkedHashMap;
    +import java.util.List;
    +import java.util.Map;
    +import java.util.Set;
    +
    +import org.jooq.Attachable;
    +import org.jooq.BindContext;
    +import org.jooq.QueryPart;
    +import org.jooq.RenderContext;
    +
    +/**
    + * @author Lukas Eder
    + */
    +abstract class AbstractQueryPartMap<K extends QueryPart, V extends QueryPart>
    +extends AbstractQueryPart
    +implements Map<K, V> {
    +
    +    /**
    +     * Generated UID
    +     */
    +    private static final long serialVersionUID = -8751499214223081415L;
    +
    +    private final Map<K, V> map;
    +
    +    AbstractQueryPartMap() {
    +        map = new LinkedHashMap<K, V>();
    +    }
    +
    +    // -------------------------------------------------------------------------
    +    // The QueryPart API
    +    // -------------------------------------------------------------------------
    +
    +    @Override
    +    public abstract void toSQL(RenderContext context);
    +
    +    @Override
    +    public abstract void bind(BindContext context);
    +
    +    @Override
    +    public final List<Attachable> getAttachables() {
    +        List<Attachable> result = new ArrayList<Attachable>();
    +
    +        result.addAll(getAttachables(keySet()));
    +        result.addAll(getAttachables(values()));
    +
    +        return result;
    +    }
    +
    +    // -------------------------------------------------------------------------
    +    // The Map API
    +    // -------------------------------------------------------------------------
    +
    +    @Override
    +    public final int size() {
    +        return map.size();
    +    }
    +
    +    @Override
    +    public final boolean isEmpty() {
    +        return map.isEmpty();
    +    }
    +
    +    @Override
    +    public final boolean containsKey(Object key) {
    +        return map.containsKey(key);
    +    }
    +
    +    @Override
    +    public final boolean containsValue(Object value) {
    +        return map.containsValue(value);
    +    }
    +
    +    @Override
    +    public final V get(Object key) {
    +        return map.get(key);
    +    }
    +
    +    @Override
    +    public final V put(K key, V value) {
    +        return map.put(key, value);
    +    }
    +
    +    @Override
    +    public final V remove(Object key) {
    +        return map.remove(key);
    +    }
    +
    +    @Override
    +    public final void putAll(Map<? extends K, ? extends V> m) {
    +        map.putAll(m);
    +    }
    +
    +    @Override
    +    public final void clear() {
    +        map.clear();
    +    }
    +
    +    @Override
    +    public final Set<K> keySet() {
    +        return map.keySet();
    +    }
    +
    +    @Override
    +    public final Collection<V> values() {
    +        return map.values();
    +    }
    +
    +    @Override
    +    public final Set<Entry<K, V>> entrySet() {
    +        return map.entrySet();
    +    }
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/impl/AbstractRecord.java b/jOOQ/src/main/java/org/jooq/impl/AbstractRecord.java
    new file mode 100644
    index 00000000000..8ad36e40677
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/impl/AbstractRecord.java
    @@ -0,0 +1,783 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +
    +package org.jooq.impl;
    +
    +import static org.jooq.impl.Util.getAnnotatedGetter;
    +import static org.jooq.impl.Util.getAnnotatedMembers;
    +import static org.jooq.impl.Util.getAnnotatedSetters;
    +import static org.jooq.impl.Util.getMatchingGetter;
    +import static org.jooq.impl.Util.getMatchingMembers;
    +import static org.jooq.impl.Util.getMatchingSetters;
    +import static org.jooq.impl.Util.hasColumnAnnotations;
    +
    +import java.lang.reflect.Array;
    +import java.lang.reflect.Method;
    +import java.lang.reflect.Modifier;
    +import java.math.BigDecimal;
    +import java.math.BigInteger;
    +import java.sql.Date;
    +import java.sql.Time;
    +import java.sql.Timestamp;
    +import java.util.ArrayList;
    +import java.util.Arrays;
    +import java.util.List;
    +
    +import org.jooq.ArrayRecord;
    +import org.jooq.Attachable;
    +import org.jooq.Converter;
    +import org.jooq.Field;
    +import org.jooq.FieldProvider;
    +import org.jooq.Record;
    +import org.jooq.Table;
    +import org.jooq.UniqueKey;
    +import org.jooq.exception.MappingException;
    +import org.jooq.tools.Convert;
    +
    +/**
    + * @author Lukas Eder
    + */
    +abstract class AbstractRecord extends AbstractStore<Object> implements Record {
    +
    +    /**
    +     * Generated UID
    +     */
    +    private static final long   serialVersionUID = -6052512608911220404L;
    +
    +    private final FieldProvider fields;
    +    private Value<?>[]          values;
    +
    +    AbstractRecord(FieldProvider fields) {
    +        this.fields = fields;
    +    }
    +
    +    final FieldProvider getMetaData() {
    +        return fields;
    +    }
    +
    +    @Override
    +    public final List<Attachable> getAttachables() {
    +        List<Attachable> result = new ArrayList<Attachable>();
    +
    +        for (Field<?> field : getFields()) {
    +            Object value = getValue(field);
    +
    +            if (value instanceof Attachable) {
    +                result.add((Attachable) value);
    +            }
    +        }
    +
    +        return result;
    +    }
    +
    +    @Override
    +    public final List<Field<?>> getFields() {
    +        return fields.getFields();
    +    }
    +
    +    @Override
    +    public final <T> Field<T> getField(Field<T> field) {
    +        return fields.getField(field);
    +    }
    +
    +    @Override
    +    public final Field<?> getField(String name) {
    +        return fields.getField(name);
    +    }
    +
    +    @Override
    +    public final Field<?> getField(int index) {
    +        return fields.getField(index);
    +    }
    +
    +    @Override
    +    public final int size() {
    +        return getFields().size();
    +    }
    +
    +    @SuppressWarnings("unchecked")
    +    final <T> Value<T> getValue0(Field<T> field) {
    +        return (Value<T>) getValues()[getIndex(field)];
    +    }
    +
    +    final Value<?>[] getValues() {
    +        if (values == null) {
    +            init();
    +        }
    +
    +        return values;
    +    }
    +
    +    @Override
    +    public final int getIndex(Field<?> field) {
    +        return fields.getIndex(field);
    +    }
    +
    +    private final void init() {
    +        values = new Value<?>[fields.getFields().size()];
    +
    +        for (int i = 0; i < values.length; i++) {
    +            values[i] = new Value<Object>(null);
    +        }
    +    }
    +
    +    @Override
    +    public final <T> T getValue(Field<T> field) {
    +        return getValue0(field).getValue();
    +    }
    +
    +    @Override
    +    public final <T> T getValue(Field<T> field, T defaultValue) {
    +        return getValue0(field).getValue(defaultValue);
    +    }
    +
    +    @Override
    +    public final <T> void setValue(Field<T> field, T value) {
    +        UniqueKey<?> mainKey = getMainKey();
    +        Value<T> val = getValue0(field);
    +
    +        // Normal fields' changed flag is always set to true
    +        if (mainKey == null || !mainKey.getFields().contains(field)) {
    +            val.setValue(value);
    +        }
    +
    +        // The main key's changed flag might've been set previously
    +        else if (val.isChanged()) {
    +            val.setValue(value);
    +        }
    +
    +        // [#979] If the main key is being changed, all other fields' flags need
    +        // to be set to true for in case this record is stored again, an INSERT
    +        // statement will thus be issued
    +        else {
    +            val.setValue(value, true);
    +
    +            if (val.isChanged()) {
    +                for (Value<?> other : getValues()) {
    +                    other.setChanged(true);
    +                }
    +            }
    +        }
    +    }
    +
    +    @Override
    +    public final <T, U> void setValue(Field<T> field, U value, Converter<T, ? super U> converter) {
    +        setValue(field, converter.to(value));
    +    }
    +
    +    final <T> void setValue(Field<T> field, Value<T> value) {
    +        getValues()[getIndex(field)] = value;
    +    }
    +
    +    /**
    +     * Subclasses may override this
    +     */
    +    UniqueKey<?> getMainKey() {
    +        return null;
    +    }
    +
    +    @Override
    +    public String toString() {
    +        return getClass().getSimpleName() + " [values=" + Arrays.asList(getValues()) + "]";
    +    }
    +
    +    @Override
    +    public final String getValueAsString(Field<?> field) {
    +        return getValueAsString(getIndex(field));
    +    }
    +
    +    @Override
    +    public final String getValueAsString(Field<?> field, String defaultValue) {
    +        return getValueAsString(getIndex(field), defaultValue);
    +    }
    +
    +    @Override
    +    public final Byte getValueAsByte(Field<?> field) {
    +        return getValueAsByte(getIndex(field));
    +    }
    +
    +    @Override
    +    public final Byte getValueAsByte(Field<?> field, Byte defaultValue) {
    +        return getValueAsByte(getIndex(field), defaultValue);
    +    }
    +
    +    @Override
    +    public final Short getValueAsShort(Field<?> field) {
    +        return getValueAsShort(getIndex(field));
    +    }
    +
    +    @Override
    +    public final Short getValueAsShort(Field<?> field, Short defaultValue) {
    +        return getValueAsShort(getIndex(field), defaultValue);
    +    }
    +
    +    @Override
    +    public final Integer getValueAsInteger(Field<?> field) {
    +        return getValueAsInteger(getIndex(field));
    +    }
    +
    +    @Override
    +    public final Integer getValueAsInteger(Field<?> field, Integer defaultValue) {
    +        return getValueAsInteger(getIndex(field), defaultValue);
    +    }
    +
    +    @Override
    +    public final Long getValueAsLong(Field<?> field) {
    +        return getValueAsLong(getIndex(field));
    +    }
    +
    +    @Override
    +    public final Long getValueAsLong(Field<?> field, Long defaultValue) {
    +        return getValueAsLong(getIndex(field), defaultValue);
    +    }
    +
    +    @Override
    +    public final BigInteger getValueAsBigInteger(Field<?> field) {
    +        return getValueAsBigInteger(getIndex(field));
    +    }
    +
    +    @Override
    +    public final BigInteger getValueAsBigInteger(Field<?> field, BigInteger defaultValue)
    +        {
    +        return getValueAsBigInteger(getIndex(field), defaultValue);
    +    }
    +
    +    @Override
    +    public final Float getValueAsFloat(Field<?> field) {
    +        return getValueAsFloat(getIndex(field));
    +    }
    +
    +    @Override
    +    public final Float getValueAsFloat(Field<?> field, Float defaultValue) {
    +        return getValueAsFloat(getIndex(field), defaultValue);
    +    }
    +
    +    @Override
    +    public final Double getValueAsDouble(Field<?> field) {
    +        return getValueAsDouble(getIndex(field));
    +    }
    +
    +    @Override
    +    public final Double getValueAsDouble(Field<?> field, Double defaultValue) {
    +        return getValueAsDouble(getIndex(field), defaultValue);
    +    }
    +
    +    @Override
    +    public final BigDecimal getValueAsBigDecimal(Field<?> field) {
    +        return getValueAsBigDecimal(getIndex(field));
    +    }
    +
    +    @Override
    +    public final BigDecimal getValueAsBigDecimal(Field<?> field, BigDecimal defaultValue)
    +        {
    +        return getValueAsBigDecimal(getIndex(field), defaultValue);
    +    }
    +
    +    @Override
    +    public final Boolean getValueAsBoolean(Field<?> field) {
    +        return getValueAsBoolean(getIndex(field));
    +    }
    +
    +    @Override
    +    public final Boolean getValueAsBoolean(Field<?> field, Boolean defaultValue) {
    +        return getValueAsBoolean(getIndex(field), defaultValue);
    +    }
    +
    +    @Override
    +    public final Timestamp getValueAsTimestamp(Field<?> field) {
    +        return getValueAsTimestamp(getIndex(field));
    +    }
    +
    +    @Override
    +    public final Timestamp getValueAsTimestamp(Field<?> field, Timestamp defaultValue) {
    +        return getValueAsTimestamp(getIndex(field), defaultValue);
    +    }
    +
    +    @Override
    +    public final Date getValueAsDate(Field<?> field) {
    +        return getValueAsDate(getIndex(field));
    +    }
    +
    +    @Override
    +    public final Date getValueAsDate(Field<?> field, Date defaultValue) {
    +        return getValueAsDate(getIndex(field), defaultValue);
    +    }
    +
    +    @Override
    +    public final Time getValueAsTime(Field<?> field) {
    +        return getValueAsTime(getIndex(field));
    +    }
    +
    +    @Override
    +    public final Time getValueAsTime(Field<?> field, Time defaultValue) {
    +        return getValueAsTime(getIndex(field), defaultValue);
    +    }
    +
    +    @Override
    +    public final Object getValue(int index) {
    +        return getValue(getField(index));
    +    }
    +
    +    @Override
    +    public final Object getValue(String fieldName) {
    +        return getValue(getField(fieldName));
    +    }
    +
    +    @SuppressWarnings("unchecked")
    +    @Override
    +    public final Object getValue(String fieldName, Object defaultValue) {
    +        return getValue((Field<Object>) getField(fieldName), defaultValue);
    +    }
    +
    +    @Override
    +    public final <A extends ArrayRecord<T>, T> T[] getValueAsArray(Field<A> field) {
    +        A result = getValue(field);
    +        return result == null ? null : result.get();
    +    }
    +
    +    @Override
    +    public final <A extends ArrayRecord<T>, T> T[] getValueAsArray(Field<A> field, T[] defaultValue)
    +        {
    +        final T[] result = getValueAsArray(field);
    +        return result == null ? defaultValue : result;
    +    }
    +
    +    @Override
    +    public final String getValueAsString(String fieldName) {
    +        return getValueAsString(getField(fieldName));
    +    }
    +
    +    @Override
    +    public final String getValueAsString(String fieldName, String defaultValue) {
    +        return getValueAsString(getField(fieldName), defaultValue);
    +    }
    +
    +    @Override
    +    public final Byte getValueAsByte(String fieldName) {
    +        return getValueAsByte(getField(fieldName));
    +    }
    +
    +    @Override
    +    public final Byte getValueAsByte(String fieldName, Byte defaultValue) {
    +        return getValueAsByte(getField(fieldName), defaultValue);
    +    }
    +
    +    @Override
    +    public final Short getValueAsShort(String fieldName) {
    +        return getValueAsShort(getField(fieldName));
    +    }
    +
    +    @Override
    +    public final Short getValueAsShort(String fieldName, Short defaultValue) {
    +        return getValueAsShort(getField(fieldName), defaultValue);
    +    }
    +
    +    @Override
    +    public final Integer getValueAsInteger(String fieldName) {
    +        return getValueAsInteger(getField(fieldName));
    +    }
    +
    +    @Override
    +    public final Integer getValueAsInteger(String fieldName, Integer defaultValue) {
    +        return getValueAsInteger(getField(fieldName), defaultValue);
    +    }
    +
    +    @Override
    +    public final Long getValueAsLong(String fieldName) {
    +        return getValueAsLong(getField(fieldName));
    +    }
    +
    +    @Override
    +    public final Long getValueAsLong(String fieldName, Long defaultValue) {
    +        return getValueAsLong(getField(fieldName), defaultValue);
    +    }
    +
    +    @Override
    +    public final BigInteger getValueAsBigInteger(String fieldName) {
    +        return getValueAsBigInteger(getField(fieldName));
    +    }
    +
    +    @Override
    +    public final BigInteger getValueAsBigInteger(String fieldName, BigInteger defaultValue)
    +        {
    +        return getValueAsBigInteger(getField(fieldName), defaultValue);
    +    }
    +
    +    @Override
    +    public final Float getValueAsFloat(String fieldName) {
    +        return getValueAsFloat(getField(fieldName));
    +    }
    +
    +    @Override
    +    public final Float getValueAsFloat(String fieldName, Float defaultValue) {
    +        return getValueAsFloat(getField(fieldName), defaultValue);
    +    }
    +
    +    @Override
    +    public final Double getValueAsDouble(String fieldName) {
    +        return getValueAsDouble(getField(fieldName));
    +    }
    +
    +    @Override
    +    public final Double getValueAsDouble(String fieldName, Double defaultValue) {
    +        return getValueAsDouble(getField(fieldName), defaultValue);
    +    }
    +
    +    @Override
    +    public final BigDecimal getValueAsBigDecimal(String fieldName) {
    +        return getValueAsBigDecimal(getField(fieldName));
    +    }
    +
    +    @Override
    +    public final BigDecimal getValueAsBigDecimal(String fieldName, BigDecimal defaultValue)
    +        {
    +        return getValueAsBigDecimal(getField(fieldName), defaultValue);
    +    }
    +
    +    @Override
    +    public final Boolean getValueAsBoolean(String fieldName) {
    +        return getValueAsBoolean(getField(fieldName));
    +    }
    +
    +    @Override
    +    public final Boolean getValueAsBoolean(String fieldName, Boolean defaultValue) {
    +        return getValueAsBoolean(getField(fieldName), defaultValue);
    +    }
    +
    +    @Override
    +    public final Timestamp getValueAsTimestamp(String fieldName) {
    +        return getValueAsTimestamp(getField(fieldName));
    +    }
    +
    +    @Override
    +    public final Timestamp getValueAsTimestamp(String fieldName, Timestamp defaultValue)
    +        {
    +        return getValueAsTimestamp(getField(fieldName), defaultValue);
    +    }
    +
    +    @Override
    +    public final Date getValueAsDate(String fieldName) {
    +        return getValueAsDate(getField(fieldName));
    +    }
    +
    +    @Override
    +    public final Date getValueAsDate(String fieldName, Date defaultValue) {
    +        return getValueAsDate(getField(fieldName), defaultValue);
    +    }
    +
    +    @Override
    +    public final Time getValueAsTime(String fieldName) {
    +        return getValueAsTime(getField(fieldName));
    +    }
    +
    +    @Override
    +    public final Time getValueAsTime(String fieldName, Time defaultValue) {
    +        return getValueAsTime(getField(fieldName), defaultValue);
    +    }
    +
    +    @Override
    +    public final <T> T getValue(Field<?> field, Class<? extends T> type) {
    +        return Convert.convert(getValue(field), type);
    +    }
    +
    +    @Override
    +    public final <T> T getValue(Field<?> field, Class<? extends T> type, T defaultValue) {
    +        final T result = getValue(field, type);
    +        return result == null ? defaultValue : result;
    +    }
    +
    +    @Override
    +    public final <T> T getValue(String fieldName, Class<? extends T> type) {
    +        return Convert.convert(getValue(fieldName), type);
    +    }
    +
    +    @Override
    +    public final <Z> Z getValue(String fieldName, Class<? extends Z> type, Z defaultValue) {
    +        final Z result = getValue(fieldName, type);
    +        return result == null ? defaultValue : result;
    +    }
    +
    +    @Override
    +    public final <T, U> U getValue(Field<T> field, Converter<? super T, U> converter) {
    +        return converter.from(getValue(field));
    +    }
    +
    +    @Override
    +    public final <T, U> U getValue(Field<T> field, Converter<? super T, U> converter, U defaultValue) {
    +        final U result = getValue(field, converter);
    +        return result == null ? defaultValue : result;
    +    }
    +
    +    @Override
    +    public final <U> U getValue(int index, Converter<?, U> converter) {
    +        return Convert.convert(getValue(index), converter);
    +    }
    +
    +    @Override
    +    public final <U> U getValue(int index, Converter<?, U> converter, U defaultValue) {
    +        final U result = getValue(index, converter);
    +        return result == null ? defaultValue : result;
    +    }
    +
    +    @Override
    +    public final <U> U getValue(String fieldName, Converter<?, U> converter) {
    +        return Convert.convert(getValue(fieldName), converter);
    +    }
    +
    +    @Override
    +    public final <U> U getValue(String fieldName, Converter<?, U> converter, U defaultValue) {
    +        final U result = getValue(fieldName, converter);
    +        return result == null ? defaultValue : result;
    +    }
    +
    +    @Override
    +    public final Object[] intoArray() {
    +        return into(Object[].class);
    +    }
    +
    +    @Override
    +    public final <T> T into(Class<? extends T> type) {
    +        try {
    +            if (type.isArray()) {
    +                return intoArray(type);
    +            }
    +            else {
    +                return intoPOJO(type);
    +            }
    +        }
    +
    +        // All reflection exceptions are intercepted
    +        catch (Exception e) {
    +            throw new MappingException("An error ocurred when mapping record to " + type, e);
    +        }
    +    }
    +
    +    @SuppressWarnings("unchecked")
    +    private final <T> T intoArray(Class<? extends T> type) {
    +        int size = getFields().size();
    +        Class<?> componentType = type.getComponentType();
    +        Object[] result = (Object[]) Array.newInstance(componentType, size);
    +
    +        for (int i = 0; i < size; i++) {
    +            result[i] = Convert.convert(getValue(i), componentType);
    +        }
    +
    +        return (T) result;
    +    }
    +
    +    private final <T> T intoPOJO(Class<? extends T> type) throws Exception {
    +        T result = type.newInstance();
    +        boolean useAnnotations = hasColumnAnnotations(type);
    +
    +        for (Field<?> field : getFields()) {
    +            List<java.lang.reflect.Field> members;
    +            List<java.lang.reflect.Method> methods;
    +
    +            // Annotations are available and present
    +            if (useAnnotations) {
    +                members = getAnnotatedMembers(type, field.getName());
    +                methods = getAnnotatedSetters(type, field.getName());
    +            }
    +
    +            // No annotations are present
    +            else {
    +                members = getMatchingMembers(type, field.getName());
    +                methods = getMatchingSetters(type, field.getName());
    +            }
    +
    +            for (java.lang.reflect.Field member : members) {
    +
    +                // [#935] Avoid setting final fields
    +                if ((member.getModifiers() & Modifier.FINAL) == 0) {
    +                    into(result, member, field);
    +                }
    +            }
    +
    +            for (java.lang.reflect.Method method : methods) {
    +                method.invoke(result, getValue(field, method.getParameterTypes()[0]));
    +            }
    +        }
    +
    +        return result;
    +    }
    +
    +    @Override
    +    public final <R extends Record> R into(Table<R> table) {
    +        try {
    +            R result = Util.newRecord(table, getConfiguration());
    +
    +            for (Field<?> sourceField : getFields()) {
    +                Field<?> targetField = result.getField(sourceField);
    +
    +                if (targetField != null) {
    +                    Util.setValue(result, targetField, this, sourceField);
    +                }
    +            }
    +
    +            return result;
    +        }
    +
    +        // All reflection exceptions are intercepted
    +        catch (Exception e) {
    +            throw new MappingException("An error ocurred when mapping record to " + table, e);
    +        }
    +    }
    +
    +    @Override
    +    public final void from(Object source) {
    +        if (source == null) return;
    +
    +        Class<?> type = source.getClass();
    +
    +        try {
    +            boolean useAnnotations = hasColumnAnnotations(type);
    +
    +            for (Field<?> field : getFields()) {
    +                List<java.lang.reflect.Field> members;
    +                Method method;
    +
    +                // Annotations are available and present
    +                if (useAnnotations) {
    +                    members = getAnnotatedMembers(type, field.getName());
    +                    method = getAnnotatedGetter(type, field.getName());
    +                }
    +
    +                // No annotations are present
    +                else {
    +                    members = getMatchingMembers(type, field.getName());
    +                    method = getMatchingGetter(type, field.getName());
    +                }
    +
    +                // Use only the first applicable method or member
    +                if (method != null) {
    +                    Util.setValue(this, field, method.invoke(source));
    +                }
    +                else if (members.size() > 0) {
    +                    from(source, members.get(0), field);
    +                }
    +            }
    +        }
    +
    +        // All reflection exceptions are intercepted
    +        catch (Exception e) {
    +            throw new MappingException("An error ocurred when mapping record from " + type, e);
    +        }
    +    }
    +
    +    /**
    +     * This method was implemented with [#799]. It may be useful to make it
    +     * public for broader use...?
    +     */
    +    protected final void from(Record source) {
    +        for (Field<?> field : getFields()) {
    +            Field<?> sourceField = source.getField(field);
    +
    +            if (sourceField != null) {
    +                Util.setValue(this, field, source, sourceField);
    +            }
    +        }
    +    }
    +
    +    private final void into(Object result, java.lang.reflect.Field member, Field<?> field) throws IllegalAccessException {
    +        Class<?> mType = member.getType();
    +
    +        if (mType.isPrimitive()) {
    +            if (mType == byte.class) {
    +                member.setByte(result, getValue(field, byte.class));
    +            }
    +            else if (mType == short.class) {
    +                member.setShort(result, getValue(field, short.class));
    +            }
    +            else if (mType == int.class) {
    +                member.setInt(result, getValue(field, int.class));
    +            }
    +            else if (mType == long.class) {
    +                member.setLong(result, getValue(field, long.class));
    +            }
    +            else if (mType == float.class) {
    +                member.setFloat(result, getValue(field, float.class));
    +            }
    +            else if (mType == double.class) {
    +                member.setDouble(result, getValue(field, double.class));
    +            }
    +            else if (mType == boolean.class) {
    +                member.setBoolean(result, getValue(field, boolean.class));
    +            }
    +            else if (mType == char.class) {
    +                member.setChar(result, getValue(field, char.class));
    +            }
    +        }
    +        else {
    +            member.set(result, getValue(field, mType));
    +        }
    +    }
    +
    +    private final void from(Object source, java.lang.reflect.Field member, Field<?> field)
    +        throws IllegalAccessException {
    +
    +        Class<?> mType = member.getType();
    +
    +        if (mType.isPrimitive()) {
    +            if (mType == byte.class) {
    +                Util.setValue(this, field, member.getByte(source));
    +            }
    +            else if (mType == short.class) {
    +                Util.setValue(this, field, member.getShort(source));
    +            }
    +            else if (mType == int.class) {
    +                Util.setValue(this, field, member.getInt(source));
    +            }
    +            else if (mType == long.class) {
    +                Util.setValue(this, field, member.getLong(source));
    +            }
    +            else if (mType == float.class) {
    +                Util.setValue(this, field, member.getFloat(source));
    +            }
    +            else if (mType == double.class) {
    +                Util.setValue(this, field, member.getDouble(source));
    +            }
    +            else if (mType == boolean.class) {
    +                Util.setValue(this, field, member.getBoolean(source));
    +            }
    +            else if (mType == char.class) {
    +                Util.setValue(this, field, member.getChar(source));
    +            }
    +        }
    +        else {
    +            Util.setValue(this, field, member.get(source));
    +        }
    +    }
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/impl/AbstractResultQuery.java b/jOOQ/src/main/java/org/jooq/impl/AbstractResultQuery.java
    new file mode 100644
    index 00000000000..d5cb450051f
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/impl/AbstractResultQuery.java
    @@ -0,0 +1,558 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq.impl;
    +
    +import static java.util.concurrent.Executors.newSingleThreadExecutor;
    +import static org.jooq.SQLDialect.ASE;
    +
    +import java.lang.reflect.Array;
    +import java.sql.Connection;
    +import java.sql.ResultSet;
    +import java.sql.ResultSetMetaData;
    +import java.sql.SQLException;
    +import java.sql.Statement;
    +import java.util.ArrayList;
    +import java.util.LinkedHashMap;
    +import java.util.List;
    +import java.util.Map;
    +import java.util.concurrent.Callable;
    +import java.util.concurrent.ExecutorService;
    +import java.util.concurrent.Future;
    +
    +import org.jooq.Configuration;
    +import org.jooq.Converter;
    +import org.jooq.Cursor;
    +import org.jooq.ExecuteContext;
    +import org.jooq.ExecuteListener;
    +import org.jooq.Field;
    +import org.jooq.FieldProvider;
    +import org.jooq.FutureResult;
    +import org.jooq.Record;
    +import org.jooq.RecordHandler;
    +import org.jooq.Result;
    +import org.jooq.ResultQuery;
    +import org.jooq.SQLDialect;
    +import org.jooq.Table;
    +import org.jooq.exception.DataTypeException;
    +import org.jooq.exception.InvalidResultException;
    +import org.jooq.tools.Convert;
    +import org.jooq.tools.JooqLogger;
    +
    +/**
    + * A query that returns a {@link Result}
    + *
    + * @author Lukas Eder
    + */
    +abstract class AbstractResultQuery<R extends Record> extends AbstractQuery implements ResultQuery<R> {
    +
    +    /**
    +     * Generated UID
    +     */
    +    private static final long       serialVersionUID = -5588344253566055707L;
    +    private static final JooqLogger log              = JooqLogger.getLogger(AbstractResultQuery.class);
    +
    +    private transient boolean       lazy;
    +    private transient int           size;
    +    private transient boolean       many;
    +    private transient Cursor<R>     cursor;
    +    private Result<R>               result;
    +    private List<Result<Record>>    results;
    +
    +    AbstractResultQuery(Configuration configuration) {
    +        super(configuration);
    +    }
    +
    +    /**
    +     * Get a list of fields provided a result set.
    +     */
    +    protected abstract List<Field<?>> getFields(ResultSetMetaData rs) throws SQLException;
    +
    +    @SuppressWarnings("unchecked")
    +    @Override
    +    public final ResultQuery<R> bind(String param, Object value) throws IllegalArgumentException, DataTypeException {
    +        return (ResultQuery<R>) super.bind(param, value);
    +    }
    +
    +    @SuppressWarnings("unchecked")
    +    @Override
    +    public final ResultQuery<R> bind(int index, Object value) throws IllegalArgumentException, DataTypeException {
    +        return (ResultQuery<R>) super.bind(index, value);
    +    }
    +
    +    @Override
    +    protected final void prepare(ExecuteContext ctx) throws SQLException {
    +        super.prepare(ctx);
    +
    +        // [#1263] Allow for negative fetch sizes to support some non-standard
    +        // MySQL feature, where Integer.MIN_VALUE is used
    +        if (size != 0) {
    +            if (log.isDebugEnabled())
    +                log.debug("Setting fetch size", size);
    +
    +            ctx.statement().setFetchSize(size);
    +        }
    +    }
    +
    +    @Override
    +    protected final int execute(ExecuteContext ctx, ExecuteListener listener) throws SQLException {
    +        Connection connection = ctx.getConnection();
    +        boolean autoCommit = false;
    +
    +        // [#706] Postgres requires two separate queries running in the same
    +        // transaction to be executed when fetching refcursor types
    +        if (ctx.getDialect() == SQLDialect.POSTGRES && isSelectingRefCursor()) {
    +            autoCommit = connection.getAutoCommit();
    +
    +            if (autoCommit) {
    +                if (log.isDebugEnabled())
    +                    log.debug("Unsetting auto-commit", false);
    +
    +                connection.setAutoCommit(false);
    +            }
    +        }
    +
    +        try {
    +            listener.executeStart(ctx);
    +
    +            // JTDS doesn't seem to implement PreparedStatement.execute()
    +            // correctly, at least not for sp_help
    +            if (ctx.getDialect() == ASE) {
    +                ctx.resultSet(ctx.statement().executeQuery());
    +            }
    +
    +            // [#1232] Avoid executeQuery() in order to handle queries that may
    +            // not return a ResultSet, e.g. SQLite's pragma foreign_key_list(table)
    +            else if (ctx.statement().execute()) {
    +                ctx.resultSet(ctx.statement().getResultSet());
    +            }
    +
    +            listener.executeEnd(ctx);
    +
    +            // Fetch a single result set
    +            if (!many) {
    +                if (ctx.resultSet() != null) {
    +                    FieldList fields = new FieldList(getFields(ctx.resultSet().getMetaData()));
    +                    cursor = new CursorImpl<R>(ctx, listener, fields, getRecordType());
    +
    +                    if (!lazy) {
    +                        result = cursor.fetch();
    +                        cursor = null;
    +                    }
    +                }
    +                else {
    +                    result = new ResultImpl<R>(ctx, new FieldList());
    +                }
    +            }
    +
    +            // Fetch several result sets
    +            else {
    +                results = new ArrayList<Result<Record>>();
    +                boolean anyResults = false;
    +
    +                while (ctx.resultSet() != null) {
    +                    anyResults = true;
    +
    +                    FieldProvider fields = new MetaDataFieldProvider(ctx, ctx.resultSet().getMetaData());
    +                    Cursor<Record> c = new CursorImpl<Record>(ctx, listener, fields, true);
    +                    results.add(c.fetch());
    +
    +                    if (ctx.statement().getMoreResults()) {
    +                        ctx.resultSet(ctx.statement().getResultSet());
    +                    }
    +                    else {
    +                        ctx.resultSet(null);
    +                    }
    +                }
    +
    +                // Call this only when there was at least one ResultSet.
    +                // Otherwise, this call is not supported by ojdbc...
    +                if (anyResults) {
    +                    ctx.statement().getMoreResults(Statement.CLOSE_ALL_RESULTS);
    +                }
    +
    +                ctx.statement().close();
    +            }
    +        }
    +        finally {
    +            if (autoCommit) {
    +                if (log.isDebugEnabled())
    +                    log.debug("Resetting auto-commit", autoCommit);
    +
    +                connection.setAutoCommit(autoCommit);
    +            }
    +        }
    +
    +        return result != null ? result.size() : 0;
    +    }
    +
    +    @Override
    +    protected final boolean keepStatementOpen() {
    +        return lazy;
    +    }
    +
    +    /**
    +     * Subclasses should indicate whether a Postgres refcursor is being selected
    +     */
    +    abstract boolean isSelectingRefCursor();
    +
    +    @Override
    +    public final Result<R> fetch() {
    +        execute();
    +        return result;
    +    }
    +
    +    @Override
    +    public final ResultSet fetchResultSet() {
    +        return fetchLazy().resultSet();
    +    }
    +
    +    @Override
    +    public final Cursor<R> fetchLazy() {
    +        return fetchLazy(0);
    +    }
    +
    +    @Override
    +    public final Cursor<R> fetchLazy(int fetchSize) {
    +        lazy = true;
    +        size = fetchSize;
    +
    +        try {
    +            execute();
    +        }
    +        finally {
    +            lazy = false;
    +            size = 0;
    +        }
    +
    +        return cursor;
    +    }
    +
    +    @Override
    +    public final List<Result<Record>> fetchMany() {
    +        many = true;
    +        execute();
    +        many = false;
    +
    +        return results;
    +    }
    +
    +    @Override
    +    public final <T> List<T> fetch(Field<T> field) {
    +        return fetch().getValues(field);
    +    }
    +
    +    @Override
    +    public final <T> List<T> fetch(Field<?> field, Class<? extends T> type) {
    +        return fetch().getValues(field, type);
    +    }
    +
    +    @Override
    +    public final <T, U> List<U> fetch(Field<T> field, Converter<? super T, U> converter) {
    +        return fetch().getValues(field, converter);
    +    }
    +
    +    @Override
    +    public final List<?> fetch(int fieldIndex) {
    +        return fetch().getValues(fieldIndex);
    +    }
    +
    +    @Override
    +    public final <T> List<T> fetch(int fieldIndex, Class<? extends T> type) {
    +        return fetch().getValues(fieldIndex, type);
    +    }
    +
    +    @Override
    +    public final <U> List<U> fetch(int fieldIndex, Converter<?, U> converter) {
    +        return fetch().getValues(fieldIndex, converter);
    +    }
    +
    +    @Override
    +    public final List<?> fetch(String fieldName) {
    +        return fetch().getValues(fieldName);
    +    }
    +
    +    @Override
    +    public final <T> List<T> fetch(String fieldName, Class<? extends T> type) {
    +        return fetch().getValues(fieldName, type);
    +    }
    +
    +    @Override
    +    public final <U> List<U> fetch(String fieldName, Converter<?, U> converter) {
    +        return fetch().getValues(fieldName, converter);
    +    }
    +
    +    @Override
    +    public final <T> T fetchOne(Field<T> field) {
    +        R record = fetchOne();
    +        return record == null ? null : record.getValue(field);
    +    }
    +
    +    @Override
    +    public final <T> T fetchOne(Field<?> field, Class<? extends T> type) {
    +        return Convert.convert(fetchOne(field), type);
    +    }
    +
    +    @Override
    +    public final <T, U> U fetchOne(Field<T> field, Converter<? super T, U> converter) {
    +        return Convert.convert(fetchOne(field), converter);
    +    }
    +
    +    @Override
    +    public final Object fetchOne(int fieldIndex) {
    +        R record = fetchOne();
    +        return record == null ? null : record.getValue(fieldIndex);
    +    }
    +
    +    @Override
    +    public final <T> T fetchOne(int fieldIndex, Class<? extends T> type) {
    +        return Convert.convert(fetchOne(fieldIndex), type);
    +    }
    +
    +    @Override
    +    public final <U> U fetchOne(int fieldIndex, Converter<?, U> converter) {
    +        return Convert.convert(fetchOne(fieldIndex), converter);
    +    }
    +
    +    @Override
    +    public final Object fetchOne(String fieldName) {
    +        R record = fetchOne();
    +        return record == null ? null : record.getValue(fieldName);
    +    }
    +
    +    @Override
    +    public final <T> T fetchOne(String fieldName, Class<? extends T> type) {
    +        return Convert.convert(fetchOne(fieldName), type);
    +    }
    +
    +    @Override
    +    public final <U> U fetchOne(String fieldName, Converter<?, U> converter) {
    +        return Convert.convert(fetchOne(fieldName), converter);
    +    }
    +
    +    @Override
    +    public final R fetchOne() {
    +        Result<R> r = fetch();
    +
    +        if (r.size() == 1) {
    +            return r.get(0);
    +        }
    +        else if (r.size() > 1) {
    +            throw new InvalidResultException("Query returned more than one result");
    +        }
    +
    +        return null;
    +    }
    +
    +    @Override
    +    public final R fetchAny() {
    +        Cursor<R> c = fetchLazy();
    +
    +        try {
    +            return c.fetchOne();
    +        }
    +        finally {
    +            c.close();
    +        }
    +    }
    +
    +    @Override
    +    public final <K> Map<K, R> fetchMap(Field<K> key) {
    +        Map<K, R> map = new LinkedHashMap<K, R>();
    +
    +        for (R record : fetch()) {
    +            if (map.put(record.getValue(key), record) != null) {
    +                throw new InvalidResultException("Key " + key + " is not unique in Result for " + this);
    +            }
    +        }
    +
    +        return map;
    +    }
    +
    +    @Override
    +    public final <K, V> Map<K, V> fetchMap(Field<K> key, Field<V> value) {
    +        Map<K, V> map = new LinkedHashMap<K, V>();
    +
    +        for (Map.Entry<K, R> entry : fetchMap(key).entrySet()) {
    +            map.put(entry.getKey(), entry.getValue().getValue(value));
    +        }
    +
    +        return map;
    +    }
    +
    +    @Override
    +    public final List<Map<String, Object>> fetchMaps() {
    +        List<Map<String, Object>> list = new ArrayList<Map<String, Object>>();
    +
    +        for (R record : fetch()) {
    +            list.add(convertToMap(record));
    +        }
    +
    +        return list;
    +    }
    +
    +    @Override
    +    public final Map<String, Object> fetchOneMap() {
    +        return convertToMap(fetchOne());
    +    }
    +
    +    private final Map<String, Object> convertToMap(R record) {
    +        Map<String, Object> map = new LinkedHashMap<String, Object>();
    +
    +        for (Field<?> field : record.getFields()) {
    +            if (map.put(field.getName(), record.getValue(field)) != null) {
    +                throw new InvalidResultException("Field " + field.getName() + " is not unique in Record for " + this);
    +            }
    +        }
    +
    +        return map;
    +    }
    +
    +    @Override
    +    public final Object[][] fetchArrays() {
    +        return fetch().intoArray();
    +    }
    +
    +    @Override
    +    public final Object[] fetchArray(int fieldIndex) {
    +        return fetch(fieldIndex).toArray();
    +    }
    +
    +    @SuppressWarnings("unchecked")
    +    @Override
    +    public final <T> T[] fetchArray(int fieldIndex, Class<? extends T> type) {
    +        return (T[]) Convert.convertArray(fetchArray(fieldIndex), type);
    +    }
    +
    +    @SuppressWarnings("cast")
    +    @Override
    +    public final <U> U[] fetchArray(int fieldIndex, Converter<?, U> converter) {
    +        return (U[]) Convert.convertArray(fetchArray(fieldIndex), converter);
    +    }
    +
    +    @Override
    +    public final Object[] fetchArray(String fieldName) {
    +        return fetch(fieldName).toArray();
    +    }
    +
    +    @SuppressWarnings("unchecked")
    +    @Override
    +    public final <T> T[] fetchArray(String fieldName, Class<? extends T> type) {
    +        return (T[]) Convert.convertArray(fetchArray(fieldName), type);
    +    }
    +
    +    @SuppressWarnings("cast")
    +    @Override
    +    public final <U> U[] fetchArray(String fieldName, Converter<?, U> converter) {
    +        return (U[]) Convert.convertArray(fetchArray(fieldName), converter);
    +    }
    +
    +    @SuppressWarnings("unchecked")
    +    @Override
    +    public final <T> T[] fetchArray(Field<T> field) {
    +        return fetch(field).toArray((T[]) Array.newInstance(field.getType(), 0));
    +    }
    +
    +    @SuppressWarnings("unchecked")
    +    @Override
    +    public final <T> T[] fetchArray(Field<?> field, Class<? extends T> type) {
    +        return (T[]) Convert.convertArray(fetchArray(field), type);
    +    }
    +
    +    @SuppressWarnings("cast")
    +    @Override
    +    public final <T, U> U[] fetchArray(Field<T> field, Converter<? super T, U> converter) {
    +        return (U[]) Convert.convertArray(fetchArray(field), converter);
    +    }
    +
    +    /**
    +     * Subclasses may override this method
    +     * <p>
    +     * {@inheritDoc}
    +     */
    +    @Override
    +    public Class<? extends R> getRecordType() {
    +        return null;
    +    }
    +
    +    @Override
    +    public final Object[] fetchOneArray() {
    +        return fetchOne().intoArray();
    +    }
    +
    +    @Override
    +    public final <T> List<T> fetchInto(Class<? extends T> type) {
    +        return fetch().into(type);
    +    }
    +
    +    @Override
    +    public final <Z extends Record> Result<Z> fetchInto(Table<Z> table) {
    +        return fetch().into(table);
    +    }
    +
    +    @Override
    +    public final <H extends RecordHandler<R>> H fetchInto(H handler) {
    +        return fetch().into(handler);
    +    }
    +
    +    @Override
    +    public final FutureResult<R> fetchLater() {
    +        ExecutorService executor = newSingleThreadExecutor();
    +        Future<Result<R>> future = executor.submit(new ResultQueryCallable());
    +        return new FutureResultImpl<R>(future, executor);
    +    }
    +
    +    @Override
    +    public final FutureResult<R> fetchLater(ExecutorService executor) {
    +        Future<Result<R>> future = executor.submit(new ResultQueryCallable());
    +        return new FutureResultImpl<R>(future);
    +    }
    +
    +    @Override
    +    public final Result<R> getResult() {
    +        return result;
    +    }
    +
    +    /**
    +     * A wrapper for the {@link ResultQuery#fetch()} method
    +     */
    +    private final class ResultQueryCallable implements Callable<Result<R>> {
    +
    +        @Override
    +        public final Result<R> call() throws Exception {
    +            return fetch();
    +        }
    +    }
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/impl/AbstractRoutine.java b/jOOQ/src/main/java/org/jooq/impl/AbstractRoutine.java
    new file mode 100644
    index 00000000000..634782cdf20
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/impl/AbstractRoutine.java
    @@ -0,0 +1,733 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq.impl;
    +
    +import static org.jooq.impl.Factory.function;
    +import static org.jooq.impl.Factory.table;
    +import static org.jooq.impl.Factory.val;
    +
    +import java.sql.CallableStatement;
    +import java.sql.Connection;
    +import java.sql.SQLException;
    +import java.sql.Types;
    +import java.util.ArrayList;
    +import java.util.Collections;
    +import java.util.HashMap;
    +import java.util.HashSet;
    +import java.util.List;
    +import java.util.Map;
    +import java.util.Set;
    +
    +import org.jooq.ArrayRecord;
    +import org.jooq.Attachable;
    +import org.jooq.BindContext;
    +import org.jooq.Configuration;
    +import org.jooq.DataType;
    +import org.jooq.ExecuteContext;
    +import org.jooq.ExecuteListener;
    +import org.jooq.Field;
    +import org.jooq.Package;
    +import org.jooq.Parameter;
    +import org.jooq.RenderContext;
    +import org.jooq.Result;
    +import org.jooq.Routine;
    +import org.jooq.SQLDialect;
    +import org.jooq.Schema;
    +import org.jooq.UDTField;
    +import org.jooq.UDTRecord;
    +import org.jooq.tools.Convert;
    +
    +/**
    + * A common base class for stored procedures
    + * <p>
    + * This type is for JOOQ INTERNAL USE only. Do not reference directly
    + *
    + * @author Lukas Eder
    + */
    +public abstract class AbstractRoutine<T> extends AbstractSchemaProviderQueryPart implements Routine<T> {
    +
    +    /**
    +     * Generated UID
    +     */
    +    private static final long                 serialVersionUID = 6330037113167106443L;
    +
    +    // ------------------------------------------------------------------------
    +    // Meta-data attributes (the same for every call)
    +    // ------------------------------------------------------------------------
    +
    +    private final Package                     pkg;
    +    private final List<Parameter<?>>          allParameters;
    +    private final List<Parameter<?>>          inParameters;
    +    private final List<Parameter<?>>          outParameters;
    +    private final DataType<T>                 type;
    +    private Parameter<T>                      returnParameter;
    +    private boolean                           overloaded;
    +
    +    // ------------------------------------------------------------------------
    +    // Call-data attributes (call-specific)
    +    // ------------------------------------------------------------------------
    +
    +    private final Map<Parameter<?>, Field<?>> inValues;
    +    private final Set<Parameter<?>>           inValuesNonDefaulted;
    +    private transient Field<T>                function;
    +
    +    private final AttachableImpl              attachable;
    +    private final Map<Parameter<?>, Object>   results;
    +    private final Map<Parameter<?>, Integer>  parameterIndexes;
    +
    +    // ------------------------------------------------------------------------
    +    // Constructors
    +    // ------------------------------------------------------------------------
    +
    +    /**
    +     * @deprecated - 2.1.0 [#625] - Regenerate your schema
    +     */
    +    @SuppressWarnings("unused")
    +    @Deprecated
    +    protected AbstractRoutine(SQLDialect dialect, String name, Schema schema) {
    +        this(name, schema, null, null);
    +    }
    +
    +    /**
    +     * @deprecated - 2.1.0 [#625] - Regenerate your schema
    +     */
    +    @SuppressWarnings("unused")
    +    @Deprecated
    +    protected AbstractRoutine(SQLDialect dialect, String name, Schema schema, Package pkg) {
    +        this(name, schema, pkg, null);
    +    }
    +
    +    /**
    +     * @deprecated - 2.1.0 [#625] - Regenerate your schema
    +     */
    +    @SuppressWarnings("unused")
    +    @Deprecated
    +    protected AbstractRoutine(SQLDialect dialect, String name, Schema schema, DataType<T> type) {
    +        this(name, schema, null, type);
    +    }
    +
    +    /**
    +     * @deprecated - 2.1.0 [#625] - Regenerate your schema
    +     */
    +    @SuppressWarnings("unused")
    +    @Deprecated
    +    protected AbstractRoutine(SQLDialect dialect, String name, Schema schema, Package pkg, DataType<T> type) {
    +        this(name, schema, pkg, type);
    +    }
    +
    +    protected AbstractRoutine(String name, Schema schema) {
    +        this(name, schema, null, null);
    +    }
    +
    +    protected AbstractRoutine(String name, Schema schema, Package pkg) {
    +        this(name, schema, pkg, null);
    +    }
    +
    +    protected AbstractRoutine(String name, Schema schema, DataType<T> type) {
    +        this(name, schema, null, type);
    +    }
    +
    +    protected AbstractRoutine(String name, Schema schema, Package pkg, DataType<T> type) {
    +        super(name, schema);
    +
    +        this.attachable = new AttachableImpl(this);
    +        this.parameterIndexes = new HashMap<Parameter<?>, Integer>();
    +
    +        this.pkg = pkg;
    +        this.allParameters = new ArrayList<Parameter<?>>();
    +        this.inParameters = new ArrayList<Parameter<?>>();
    +        this.outParameters = new ArrayList<Parameter<?>>();
    +        this.inValues = new HashMap<Parameter<?>, Field<?>>();
    +        this.inValuesNonDefaulted = new HashSet<Parameter<?>>();
    +        this.results = new HashMap<Parameter<?>, Object>();
    +        this.type = type;
    +    }
    +
    +    // ------------------------------------------------------------------------
    +    // Initialise a routine call
    +    // ------------------------------------------------------------------------
    +
    +    protected final void setNumber(Parameter<? extends Number> parameter, Number value) {
    +        setValue(parameter, Convert.convert(value, parameter.getType()));
    +    }
    +
    +    protected final void setNumber(Parameter<? extends Number> parameter, Field<? extends Number> value) {
    +        setField(parameter, value);
    +    }
    +
    +    protected final void setValue(Parameter<?> parameter, Object value) {
    +        setField(parameter, val(value, parameter.getDataType()));
    +    }
    +
    +    /*
    +     * #326 - Avoid overloading setValue()
    +     */
    +    protected final void setField(Parameter<?> parameter, Field<?> value) {
    +        // Be sure null is correctly represented as a null field
    +        if (value == null) {
    +            setField(parameter, val(null, parameter.getDataType()));
    +        }
    +
    +        // [#1183] Add the field to the in-values and mark them as non-defaulted
    +        else {
    +            inValues.put(parameter, value);
    +            inValuesNonDefaulted.add(parameter);
    +        }
    +    }
    +
    +    // ------------------------------------------------------------------------
    +    // Call the routine
    +    // ------------------------------------------------------------------------
    +
    +    @Override
    +    public final void attach(Configuration configuration) {
    +        attachable.attach(configuration);
    +    }
    +
    +    @Override
    +    protected final List<Attachable> getAttachables0() {
    +        List<Attachable> result = new ArrayList<Attachable>();
    +
    +        result.addAll(getAttachables(pkg));
    +        result.addAll(getAttachables(allParameters));
    +        result.addAll(getAttachables(inValues.keySet()));
    +        result.addAll(getAttachables(inValues.values()));
    +
    +        return result;
    +    }
    +
    +    @Override
    +    public final int execute(Configuration configuration) {
    +
    +        // Ensure that all depending Attachables are attached
    +        attach(configuration);
    +        return execute();
    +    }
    +
    +    @Override
    +    public final int execute() {
    +        // Procedures (no return value) are always executed as CallableStatement
    +        if (type == null) {
    +            return executeCallableStatement();
    +        }
    +        else {
    +            switch (attachable.getConfiguration().getDialect()) {
    +
    +                // [#852] Some RDBMS don't allow for using JDBC procedure escape
    +                // syntax for functions. Select functions from DUAL instead
    +                case HSQLDB:
    +
    +                	// [#692] HSQLDB cannot SELECT f() FROM [...] when f()
    +                	// returns a cursor. Instead, SELECT * FROM table(f()) works
    +                    if (SQLDataType.RESULT.equals(type.getSQLDataType())) {
    +                        return executeSelectFrom();
    +                    }
    +
    +                    // Fall through
    +                    else {
    +                    }
    +
    +                case DB2:
    +                case H2:
    +
    +                // Sybase CallableStatement.wasNull() doesn't work :-(
    +                case SYBASE:
    +                    return executeSelect();
    +
    +                // [#773] If JDBC escape syntax is available for functions, use
    +                // it to prevent transactional issues when functions issue
    +                // DML statements
    +                default:
    +                    return executeCallableStatement();
    +            }
    +        }
    +    }
    +
    +    private final int executeSelectFrom() {
    +        Factory create = create(attachable);
    +        Result<?> result = create.selectFrom(table(asField())).fetch();
    +        results.put(returnParameter, result);
    +        return 0;
    +    }
    +
    +    private final int executeSelect() {
    +        final Field<T> field = asField();
    +        results.put(returnParameter, create(attachable).select(field).fetchOne(field));
    +        return 0;
    +    }
    +
    +    private final int executeCallableStatement() {
    +        Configuration configuration = attachable.getConfiguration();
    +        ExecuteContext ctx = new DefaultExecuteContext(configuration, this);
    +        ExecuteListener listener = new ExecuteListeners(ctx);
    +
    +        try {
    +            Connection connection = configuration.getConnection();
    +
    +            listener.renderStart(ctx);
    +            ctx.sql(create(configuration).render(this));
    +            listener.renderEnd(ctx);
    +
    +            listener.prepareStart(ctx);
    +            ctx.statement(connection.prepareCall(ctx.sql()));
    +            listener.prepareEnd(ctx);
    +
    +            listener.bindStart(ctx);
    +            create(configuration).bind(this, ctx.statement());
    +            registerOutParameters(configuration, (CallableStatement) ctx.statement());
    +            listener.bindEnd(ctx);
    +
    +            // Postgres requires two separate queries running in the same
    +            // transaction to be executed when fetching refcursor types
    +            boolean autoCommit = connection.getAutoCommit();
    +            if (autoCommit && configuration.getDialect() == SQLDialect.POSTGRES) {
    +                connection.setAutoCommit(false);
    +            }
    +
    +            listener.executeStart(ctx);
    +            ctx.statement().execute();
    +            listener.executeEnd(ctx);
    +
    +            if (autoCommit && configuration.getDialect() == SQLDialect.POSTGRES) {
    +                connection.setAutoCommit(autoCommit);
    +            }
    +
    +            fetchOutParameters(ctx);
    +            return 0;
    +        }
    +        catch (SQLException e) {
    +            throw translate("AbstractRoutine.executeCallableStatement", ctx.sql(), e);
    +        }
    +        finally {
    +            Util.safeClose(listener, ctx);
    +        }
    +    }
    +
    +    @Override
    +    public final void bind(BindContext context) {
    +        for (Parameter<?> parameter : getParameters()) {
    +
    +            // [#1183] Skip defaulted parameters
    +            if (getInParameters().contains(parameter) && !inValuesNonDefaulted.contains(parameter)) {
    +                continue;
    +            }
    +
    +            int index = context.peekIndex();
    +            parameterIndexes.put(parameter, index);
    +
    +            if (getInValues().get(parameter) != null) {
    +                context.bind(getInValues().get(parameter));
    +
    +                // [#391] This happens when null literals are used as IN/OUT
    +                // parameters. They're not bound as in value, but they need to
    +                // be registered as OUT parameter
    +                if (index == context.peekIndex() && getOutParameters().contains(parameter)) {
    +                    context.nextIndex();
    +                }
    +            }
    +
    +            // Skip one index for OUT parameters
    +            else {
    +                context.nextIndex();
    +            }
    +        }
    +    }
    +
    +    @Override
    +    public final void toSQL(RenderContext context) {
    +        toSQLBegin(context);
    +
    +        if (getReturnParameter() != null) {
    +            toSQLAssign(context);
    +        }
    +
    +        toSQLCall(context);
    +        context.sql("(");
    +
    +        String separator = "";
    +        for (Parameter<?> parameter : getParameters()) {
    +
    +            // The return value has already been written
    +            if (parameter.equals(getReturnParameter())) {
    +                continue;
    +            }
    +
    +            // OUT and IN OUT parameters are always written as a '?' bind variable
    +            else if (getOutParameters().contains(parameter)) {
    +                context.sql(separator);
    +                toSQLOutParam(context, parameter);
    +            }
    +
    +            // [#1183] Omit defaulted parameters
    +            else if (!inValuesNonDefaulted.contains(parameter)) {
    +                continue;
    +            }
    +
    +            // IN parameters are rendered normally
    +            else {
    +                Field<?> value = getInValues().get(parameter);
    +
    +                // Disambiguate overloaded procedure signatures
    +                if (SQLDialect.POSTGRES == context.getDialect() && isOverloaded()) {
    +                    value = value.cast(parameter.getType());
    +                }
    +
    +                context.sql(separator);
    +                toSQLInParam(context, parameter, value);
    +            }
    +
    +            separator = ", ";
    +        }
    +
    +        context.sql(")");
    +        toSQLEnd(context);
    +    }
    +
    +    private final void toSQLEnd(RenderContext context) {
    +        switch (context.getDialect()) {
    +            case ORACLE:
    +                context.sql(";")
    +                       .formatIndentEnd()
    +                       .formatSeparator()
    +                       .keyword("end;");
    +                break;
    +
    +            default:
    +                context.sql(" }");
    +                break;
    +        }
    +    }
    +
    +    private final void toSQLBegin(RenderContext context) {
    +        switch (context.getDialect()) {
    +            case ORACLE:
    +                context.keyword("begin")
    +                       .formatIndentStart()
    +                       .formatSeparator();
    +                break;
    +
    +            default:
    +                context.sql("{ ");
    +                break;
    +        }
    +    }
    +
    +    private final void toSQLAssign(RenderContext context) {
    +        switch (context.getDialect()) {
    +            case ORACLE:
    +                context.sql("? := ");
    +                break;
    +
    +            default:
    +                context.sql("? = ");
    +                break;
    +        }
    +    }
    +
    +    private final void toSQLCall(RenderContext context) {
    +        switch (context.getDialect()) {
    +            case ORACLE:
    +                break;
    +
    +            default:
    +                context.sql("call ");
    +                break;
    +        }
    +
    +        toSQLQualifiedName(context);
    +    }
    +
    +    private final void toSQLOutParam(RenderContext context, Parameter<?> parameter) {
    +        switch (context.getDialect()) {
    +            case ORACLE:
    +                context.sql(parameter);
    +                context.sql(" => ");
    +                break;
    +
    +            default:
    +                break;
    +        }
    +
    +        context.sql("?");
    +    }
    +
    +    private final void toSQLInParam(RenderContext context, Parameter<?> parameter, Field<?> value) {
    +        switch (context.getDialect()) {
    +            case ORACLE:
    +                context.sql(parameter);
    +                context.sql(" => ");
    +                break;
    +
    +            default:
    +                break;
    +        }
    +
    +        context.sql(value);
    +    }
    +
    +    private final void toSQLQualifiedName(RenderContext context) {
    +        if (Util.getMappedSchema(context, getSchema()) != null) {
    +            context.sql(Util.getMappedSchema(context, getSchema()));
    +            context.sql(".");
    +        }
    +
    +        if (getPackage() != null) {
    +            context.sql(getPackage());
    +            context.sql(".");
    +        }
    +
    +        context.literal(getName());
    +    }
    +
    +    private final void fetchOutParameters(ExecuteContext ctx) throws SQLException {
    +        for (Parameter<?> parameter : getParameters()) {
    +            if (parameter.equals(getReturnParameter()) ||
    +                getOutParameters().contains(parameter)) {
    +
    +                int index = parameterIndexes.get(parameter);
    +                results.put(parameter, FieldTypeHelper.getFromStatement(ctx, parameter.getType(), index));
    +            }
    +        }
    +    }
    +
    +    @SuppressWarnings("unchecked")
    +    private final void registerOutParameters(Configuration configuration, CallableStatement statement) throws SQLException {
    +
    +        // Register all out / inout parameters according to their position
    +        // Note that some RDBMS do not support binding by name very well
    +        for (Parameter<?> parameter : getParameters()) {
    +            if (parameter.equals(getReturnParameter()) ||
    +                getOutParameters().contains(parameter)) {
    +
    +                int index = parameterIndexes.get(parameter);
    +                int sqlType = parameter.getDataType().getDataType(configuration).getSQLType();
    +
    +                switch (configuration.getDialect()) {
    +
    +                    // For some user defined types Oracle needs to bind
    +                    // also the type name
    +                    case ORACLE: {
    +                        if (sqlType == Types.STRUCT) {
    +                            UDTRecord<?> record = Util.newRecord((Class<? extends UDTRecord<?>>) parameter.getType());
    +                            statement.registerOutParameter(index, Types.STRUCT, record.getSQLTypeName());
    +                        }
    +
    +                        else if (sqlType == Types.ARRAY) {
    +                            ArrayRecord<?> record = Util.newArrayRecord(
    +                                (Class<? extends ArrayRecord<?>>) parameter.getType(), configuration);
    +                            statement.registerOutParameter(index, Types.ARRAY, record.getName());
    +                        }
    +
    +                        // The default behaviour is not to register a type
    +                        // mapping
    +                        else {
    +                            statement.registerOutParameter(index, sqlType);
    +                        }
    +
    +                        break;
    +                    }
    +
    +                    default: {
    +                        statement.registerOutParameter(index, sqlType);
    +                        break;
    +                    }
    +                }
    +            }
    +        }
    +    }
    +
    +    // ------------------------------------------------------------------------
    +    // Fetch routine results
    +    // ------------------------------------------------------------------------
    +
    +    @Override
    +    public final T getReturnValue() {
    +        if (returnParameter != null) {
    +            return getValue(returnParameter);
    +        }
    +
    +        return null;
    +    }
    +
    +    @SuppressWarnings("unchecked")
    +    protected final <Z> Z getValue(Parameter<Z> parameter) {
    +        return (Z) results.get(parameter);
    +    }
    +
    +    protected final Map<Parameter<?>, Field<?>> getInValues() {
    +        return inValues;
    +    }
    +
    +    // ------------------------------------------------------------------------
    +    // Access to routine configuration objects
    +    // ------------------------------------------------------------------------
    +
    +    @Override
    +    public final List<Parameter<?>> getOutParameters() {
    +        return Collections.unmodifiableList(outParameters);
    +    }
    +
    +    @Override
    +    public final List<Parameter<?>> getInParameters() {
    +        return Collections.unmodifiableList(inParameters);
    +    }
    +
    +    @Override
    +    public final List<Parameter<?>> getParameters() {
    +        return Collections.unmodifiableList(allParameters);
    +    }
    +
    +    @Override
    +    public final Package getPackage() {
    +        return pkg;
    +    }
    +
    +    protected final Parameter<?> getReturnParameter() {
    +        return returnParameter;
    +    }
    +
    +    protected final void setOverloaded(boolean overloaded) {
    +        this.overloaded = overloaded;
    +    }
    +
    +    protected final boolean isOverloaded() {
    +        return overloaded;
    +    }
    +
    +    protected final void addInParameter(Parameter<?> parameter) {
    +        inParameters.add(parameter);
    +        allParameters.add(parameter);
    +
    +        // IN parameters are initialised with null by default
    +        inValues.put(parameter, val(null, parameter.getDataType()));
    +
    +        // [#1183] non-defaulted parameters are marked as such
    +        if (!parameter.isDefaulted()) {
    +            inValuesNonDefaulted.add(parameter);
    +        }
    +    }
    +
    +    protected final void addInOutParameter(Parameter<?> parameter) {
    +        addInParameter(parameter);
    +        outParameters.add(parameter);
    +    }
    +
    +    protected final void addOutParameter(Parameter<?> parameter) {
    +        outParameters.add(parameter);
    +        allParameters.add(parameter);
    +    }
    +
    +    protected final void setReturnParameter(Parameter<T> parameter) {
    +        returnParameter = parameter;
    +        allParameters.add(parameter);
    +    }
    +
    +    public final Field<T> asField() {
    +        if (function == null) {
    +            function = new RoutineField();
    +        }
    +
    +        return function;
    +    }
    +
    +    public final Field<T> asField(String alias) {
    +        return asField().as(alias);
    +    }
    +
    +    /**
    +     * Subclasses may call this method to create {@link UDTField} objects that
    +     * are linked to this table.
    +     *
    +     * @param name The name of the field (case-sensitive!)
    +     * @param type The data type of the field
    +     */
    +    protected static final <T> Parameter<T> createParameter(String name, DataType<T> type) {
    +        return createParameter(name, type, false);
    +    }
    +
    +    /**
    +     * Subclasses may call this method to create {@link UDTField} objects that
    +     * are linked to this table.
    +     *
    +     * @param name The name of the field (case-sensitive!)
    +     * @param type The data type of the field
    +     * @param isDefaulted Whether the parameter is defaulted (see
    +     *            {@link Parameter#isDefaulted()}
    +     */
    +    protected static final <T> Parameter<T> createParameter(String name, DataType<T> type, boolean isDefaulted) {
    +        return new ParameterImpl<T>(name, type, isDefaulted);
    +    }
    +
    +    /**
    +     * The {@link Field} representation of this {@link Routine}
    +     */
    +    private class RoutineField extends AbstractFunction<T> {
    +
    +        /**
    +         * Generated UID
    +         */
    +        private static final long serialVersionUID = -5730297947647252624L;
    +
    +        RoutineField() {
    +            super(AbstractRoutine.this.getName(),
    +                  AbstractRoutine.this.type);
    +        }
    +
    +        @Override
    +        final Field<T> getFunction0(Configuration configuration) {
    +            RenderContext local = create(configuration).renderContext();
    +            toSQLQualifiedName(local);
    +
    +            Field<?>[] array = new Field<?>[getInParameters().size()];
    +
    +            int i = 0;
    +            for (Parameter<?> p : getInParameters()) {
    +
    +                // Disambiguate overloaded function signatures
    +                if (SQLDialect.POSTGRES == configuration.getDialect() && isOverloaded()) {
    +                    array[i] = getInValues().get(p).cast(p.getType());
    +                }
    +                else {
    +                    array[i] = getInValues().get(p);
    +                }
    +
    +                i++;
    +            }
    +
    +            return function(local.render(), getDataType(), array);
    +        }
    +    }
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/impl/AbstractSchemaProviderQueryPart.java b/jOOQ/src/main/java/org/jooq/impl/AbstractSchemaProviderQueryPart.java
    new file mode 100644
    index 00000000000..e2fab297ec9
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/impl/AbstractSchemaProviderQueryPart.java
    @@ -0,0 +1,79 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq.impl;
    +
    +import java.util.ArrayList;
    +import java.util.List;
    +
    +import org.jooq.Attachable;
    +import org.jooq.Schema;
    +import org.jooq.SchemaProvider;
    +
    +/**
    + * @author Lukas Eder
    + */
    +abstract class AbstractSchemaProviderQueryPart extends AbstractNamedQueryPart implements SchemaProvider {
    +
    +    /**
    +     * Generated UID
    +     */
    +    private static final long serialVersionUID = -4323244225816421319L;
    +
    +    private final Schema      schema;
    +
    +    AbstractSchemaProviderQueryPart(String name, Schema schema) {
    +        super(name);
    +
    +        this.schema = schema;
    +    }
    +
    +    @Override
    +    public final List<Attachable> getAttachables() {
    +        List<Attachable> result = new ArrayList<Attachable>();
    +
    +        result.addAll(getAttachables(schema));
    +        result.addAll(getAttachables0());
    +
    +        return result;
    +    }
    +
    +    protected abstract List<Attachable> getAttachables0();
    +
    +    @Override
    +    public final Schema getSchema() {
    +        return schema;
    +    }
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/impl/AbstractSelect.java b/jOOQ/src/main/java/org/jooq/impl/AbstractSelect.java
    new file mode 100644
    index 00000000000..a0709c43c91
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/impl/AbstractSelect.java
    @@ -0,0 +1,158 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq.impl;
    +
    +import java.sql.ResultSetMetaData;
    +import java.util.List;
    +
    +import org.jooq.Configuration;
    +import org.jooq.DataType;
    +import org.jooq.Field;
    +import org.jooq.Record;
    +import org.jooq.Result;
    +import org.jooq.Select;
    +import org.jooq.Table;
    +
    +/**
    + * A common base class for all <code>SELECT</code> statements.
    + *
    + * @author Lukas Eder
    + */
    +abstract class AbstractSelect<R extends Record> extends AbstractResultQuery<R> implements Select<R> {
    +
    +    private static final long       serialVersionUID = 5432006637149005588L;
    +
    +    AbstractSelect(Configuration configuration) {
    +        super(configuration);
    +    }
    +
    +    @Override
    +    public final Select<R> union(Select<R> select) {
    +        return new Union<R>(getConfiguration(), this, select, CombineOperator.UNION);
    +    }
    +
    +    @Override
    +    public final Select<R> unionAll(Select<R> select) {
    +        return new Union<R>(getConfiguration(), this, select, CombineOperator.UNION_ALL);
    +    }
    +
    +    @Override
    +    public final Select<R> except(Select<R> select) {
    +        return new Union<R>(getConfiguration(), this, select, CombineOperator.EXCEPT);
    +    }
    +
    +    @Override
    +    public final Select<R> intersect(Select<R> select) {
    +        return new Union<R>(getConfiguration(), this, select, CombineOperator.INTERSECT);
    +    }
    +
    +    @SuppressWarnings("unchecked")
    +    @Override
    +    public final <T> Field<T> asField() {
    +        if (getSelect().size() != 1) {
    +            throw new IllegalStateException("Can only use single-column ResultProviderQuery as a field");
    +        }
    +
    +        return new SelectQueryAsField<T>(this, (DataType<T>) getSelect().get(0).getDataType());
    +    }
    +
    +    @Override
    +    public final <T> Field<T> asField(String alias) {
    +        return this.<T> asField().as(alias);
    +    }
    +
    +    @Override
    +    public final <T> Field<T> getField(Field<T> field) {
    +        return asTable().getField(field);
    +    }
    +
    +    @Override
    +    public final Field<?> getField(String name) {
    +        return asTable().getField(name);
    +    }
    +
    +    @Override
    +    public final Field<?> getField(int index) {
    +        return asTable().getField(index);
    +    }
    +
    +    @Override
    +    public final List<Field<?>> getFields() {
    +        return asTable().getFields();
    +    }
    +
    +    @Override
    +    public final int getIndex(Field<?> field) throws IllegalArgumentException {
    +        return asTable().getIndex(field);
    +    }
    +
    +    @Override
    +    public final Table<R> asTable() {
    +        // Its usually better to alias nested selects that are used in
    +        // the FROM clause of a query
    +        return new SelectQueryAsTable<R>(this).as("alias_" + Util.hash(this));
    +    }
    +
    +    @Override
    +    public final Table<R> asTable(String alias) {
    +        return new SelectQueryAsTable<R>(this).as(alias);
    +    }
    +
    +    @Override
    +    protected final List<Field<?>> getFields(ResultSetMetaData meta) {
    +    	List<Field<?>> select = getSelect();
    +
    +    	// If no projection was specified explicitly, create fields from result
    +    	// set meta data instead. This is typically the case for SELECT * ...
    +    	if (select.isEmpty()) {
    +            Configuration configuration = getConfiguration();
    +            return new MetaDataFieldProvider(configuration, meta).getFields();
    +        }
    +
    +        return select;
    +    }
    +
    +    @Override
    +    final boolean isSelectingRefCursor() {
    +        for (Field<?> field : getSelect()) {
    +            if (Result.class.isAssignableFrom(field.getType())) {
    +                return true;
    +            }
    +        }
    +
    +        return false;
    +    }
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/impl/AbstractStore.java b/jOOQ/src/main/java/org/jooq/impl/AbstractStore.java
    new file mode 100644
    index 00000000000..9236c50a8fe
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/impl/AbstractStore.java
    @@ -0,0 +1,319 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq.impl;
    +
    +import java.math.BigDecimal;
    +import java.math.BigInteger;
    +import java.sql.Date;
    +import java.sql.Time;
    +import java.sql.Timestamp;
    +import java.util.Arrays;
    +
    +import org.jooq.AttachableInternal;
    +import org.jooq.Configuration;
    +import org.jooq.Store;
    +import org.jooq.tools.Convert;
    +
    +/**
    + * @author Lukas Eder
    + */
    +abstract class AbstractStore<T> implements Store<T>, AttachableInternal {
    +
    +    /**
    +     * Generated UID
    +     */
    +    private static final long    serialVersionUID = -2989496800221194411L;
    +
    +    private final AttachableImpl attachable;
    +
    +    AbstractStore() {
    +        this(null);
    +    }
    +
    +    AbstractStore(Configuration configuration) {
    +        this.attachable = new AttachableImpl(this, configuration);
    +    }
    +
    +    // -------------------------------------------------------------------------
    +    // The Attachable API
    +    // -------------------------------------------------------------------------
    +
    +    @Override
    +    public final <I> I internalAPI(Class<I> internalType) {
    +        return internalType.cast(this);
    +    }
    +
    +    @Override
    +    public final void attach(Configuration configuration) {
    +        attachable.attach(configuration);
    +    }
    +
    +    @Override
    +    public final Configuration getConfiguration() {
    +        return attachable.getConfiguration();
    +    }
    +
    +    /**
    +     * This method is used in generated code!
    +     */
    +    protected final Factory create() {
    +        return Factory.getNewFactory(getConfiguration());
    +    }
    +
    +    // -------------------------------------------------------------------------
    +    // The Store API
    +    // -------------------------------------------------------------------------
    +
    +    @Override
    +    public final T getValue(int index, T defaultValue) {
    +        final T result = getValue(index);
    +        return result == null ? defaultValue : result;
    +    }
    +
    +    @Override
    +    public final BigDecimal getValueAsBigDecimal(int index) {
    +        return Convert.convert(getValue(index), BigDecimal.class);
    +    }
    +
    +    @Override
    +    public final BigDecimal getValueAsBigDecimal(int index, BigDecimal defaultValue) {
    +        final BigDecimal result = getValueAsBigDecimal(index);
    +        return result == null ? defaultValue : result;
    +    }
    +
    +    @Override
    +    public final Boolean getValueAsBoolean(int index) {
    +        return Convert.convert(getValue(index), Boolean.class);
    +    }
    +
    +    @Override
    +    public final Boolean getValueAsBoolean(int index, Boolean defaultValue) {
    +        final Boolean result = getValueAsBoolean(index);
    +        return result == null ? defaultValue : result;
    +    }
    +
    +    @Override
    +    public final BigInteger getValueAsBigInteger(int index) {
    +        return Convert.convert(getValue(index), BigInteger.class);
    +    }
    +
    +    @Override
    +    public final BigInteger getValueAsBigInteger(int index, BigInteger defaultValue) {
    +        final BigInteger result = getValueAsBigInteger(index);
    +        return result == null ? defaultValue : result;
    +    }
    +
    +    @Override
    +    public final Byte getValueAsByte(int index) {
    +        return Convert.convert(getValue(index), Byte.class);
    +    }
    +
    +    @Override
    +    public final Byte getValueAsByte(int index, Byte defaultValue) {
    +        final Byte result = getValueAsByte(index);
    +        return result == null ? defaultValue : result;
    +    }
    +
    +    @Override
    +    public final Date getValueAsDate(int index) {
    +        return Convert.convert(getValue(index), Date.class);
    +    }
    +
    +    @Override
    +    public final Date getValueAsDate(int index, Date defaultValue) {
    +        final Date result = getValueAsDate(index);
    +        return result == null ? defaultValue : result;
    +    }
    +
    +    @Override
    +    public final Double getValueAsDouble(int index) {
    +        return Convert.convert(getValue(index), Double.class);
    +    }
    +
    +    @Override
    +    public final Double getValueAsDouble(int index, Double defaultValue) {
    +        final Double result = getValueAsDouble(index);
    +        return result == null ? defaultValue : result;
    +    }
    +
    +    @Override
    +    public final Float getValueAsFloat(int index) {
    +        return Convert.convert(getValue(index), Float.class);
    +    }
    +
    +    @Override
    +    public final Float getValueAsFloat(int index, Float defaultValue) {
    +        final Float result = getValueAsFloat(index);
    +        return result == null ? defaultValue : result;
    +    }
    +
    +    @Override
    +    public final Integer getValueAsInteger(int index) {
    +        return Convert.convert(getValue(index), Integer.class);
    +    }
    +
    +    @Override
    +    public final Integer getValueAsInteger(int index, Integer defaultValue) {
    +        final Integer result = getValueAsInteger(index);
    +        return result == null ? defaultValue : result;
    +    }
    +
    +    @Override
    +    public final Long getValueAsLong(int index) {
    +        return Convert.convert(getValue(index), Long.class);
    +    }
    +
    +    @Override
    +    public final Long getValueAsLong(int index, Long defaultValue) {
    +        final Long result = getValueAsLong(index);
    +        return result == null ? defaultValue : result;
    +    }
    +
    +    @Override
    +    public final Short getValueAsShort(int index) {
    +        return Convert.convert(getValue(index), Short.class);
    +    }
    +
    +    @Override
    +    public final Short getValueAsShort(int index, Short defaultValue) {
    +        final Short result = getValueAsShort(index);
    +        return result == null ? defaultValue : result;
    +    }
    +
    +    @Override
    +    public final String getValueAsString(int index) {
    +        return Convert.convert(getValue(index), String.class);
    +    }
    +
    +    @Override
    +    public final String getValueAsString(int index, String defaultValue) {
    +        final String result = getValueAsString(index);
    +        return result == null ? defaultValue : result;
    +    }
    +
    +    @Override
    +    public final Time getValueAsTime(int index) {
    +        return Convert.convert(getValue(index), Time.class);
    +    }
    +
    +    @Override
    +    public final Time getValueAsTime(int index, Time defaultValue) {
    +        final Time result = getValueAsTime(index);
    +        return result == null ? defaultValue : result;
    +    }
    +
    +    @Override
    +    public final Timestamp getValueAsTimestamp(int index) {
    +        return Convert.convert(getValue(index), Timestamp.class);
    +    }
    +
    +    @Override
    +    public final Timestamp getValueAsTimestamp(int index, Timestamp defaultValue) {
    +        final Timestamp result = getValueAsTimestamp(index);
    +        return result == null ? defaultValue : result;
    +    }
    +
    +    @Override
    +    public final <Z> Z getValue(int index, Class<? extends Z> type) {
    +        return Convert.convert(getValue(index), type);
    +    }
    +
    +    @Override
    +    public final <Z> Z getValue(int index, Class<? extends Z> type, Z defaultValue) {
    +        final Z result = getValue(index, type);
    +        return result == null ? defaultValue : result;
    +    }
    +
    +    // -------------------------------------------------------------------------
    +    // equals and hashCode
    +    // -------------------------------------------------------------------------
    +
    +    @Override
    +    public int hashCode() {
    +        int hashCode = 1;
    +
    +        for (int i = 0; i < size(); i++) {
    +            final Object obj = getValue(i);
    +            hashCode = 31 * hashCode + (obj == null ? 0 : obj.hashCode());
    +        }
    +
    +        return hashCode;
    +    }
    +
    +    @Override
    +    public boolean equals(Object obj) {
    +        if (obj instanceof Store) {
    +            final Store<?> that = (Store<?>) obj;
    +
    +            if (size() == that.size()) {
    +                for (int i = 0; i < size(); i++) {
    +                    final Object thisValue = getValue(i);
    +                    final Object thatValue = that.getValue(i);
    +
    +                    if (thisValue == null || thatValue == null) {
    +                        return thisValue == thatValue;
    +                    }
    +
    +                    // [#985] Compare arrays too.
    +                    else if (thisValue.getClass().isArray() && thatValue.getClass().isArray()) {
    +
    +                        // Might be byte[]
    +                        if (thisValue.getClass() == byte[].class && thatValue.getClass() == byte[].class) {
    +                            return Arrays.equals((byte[]) thisValue, (byte[]) thatValue);
    +                        }
    +
    +                        // Other primitive types are not expected
    +                        else if (!thisValue.getClass().getComponentType().isPrimitive() &&
    +                                 !thatValue.getClass().getComponentType().isPrimitive()) {
    +                            return Arrays.equals((Object[]) thisValue, (Object[]) thatValue);
    +                        }
    +
    +                        else {
    +                            return false;
    +                        }
    +                    }
    +                    else if (!thisValue.equals(thatValue)) {
    +                        return false;
    +                    }
    +                }
    +
    +                return true;
    +            }
    +        }
    +
    +        return false;
    +    }
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/impl/AbstractStoreQuery.java b/jOOQ/src/main/java/org/jooq/impl/AbstractStoreQuery.java
    new file mode 100644
    index 00000000000..eefd4168acd
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/impl/AbstractStoreQuery.java
    @@ -0,0 +1,133 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq.impl;
    +
    +import static org.jooq.impl.Factory.val;
    +
    +import java.util.ArrayList;
    +import java.util.Arrays;
    +import java.util.List;
    +import java.util.Map;
    +
    +import org.jooq.ArrayRecord;
    +import org.jooq.Attachable;
    +import org.jooq.Configuration;
    +import org.jooq.Field;
    +import org.jooq.Record;
    +import org.jooq.StoreQuery;
    +import org.jooq.Table;
    +
    +/**
    + * A default implementation for store queries.
    + *
    + * @author Lukas Eder
    + */
    +abstract class AbstractStoreQuery<R extends Record> extends AbstractQuery implements StoreQuery<R> {
    +
    +    /**
    +     * Generated UID
    +     */
    +    private static final long                   serialVersionUID = 6864591335823160569L;
    +
    +    private final Table<R>                      into;
    +
    +    AbstractStoreQuery(Configuration configuration, Table<R> into) {
    +        super(configuration);
    +
    +        this.into = into;
    +    }
    +
    +    @Override
    +    public final List<Attachable> getAttachables() {
    +        List<Attachable> result = new ArrayList<Attachable>();
    +        result.addAll(getAttachables(into));
    +        result.addAll(getAttachables0());
    +        return result;
    +    }
    +
    +    protected abstract List<Attachable> getAttachables0();
    +    protected abstract Map<Field<?>, Field<?>> getValues();
    +
    +    final Table<R> getInto() {
    +        return into;
    +    }
    +
    +    final <T> void addValue(R record, Field<T> field) {
    +        addValue(field, record.getValue(field));
    +    }
    +
    +    @Override
    +    public final <T> void addValue(Field<T> field, T value) {
    +        addValue(field, val(value, field));
    +    }
    +
    +    @Override
    +    public final <T> void addValue(Field<T> field, Field<T> value) {
    +        if (value == null) {
    +            getValues().put(field, val(null, field));
    +        }
    +        else {
    +            getValues().put(field, value);
    +        }
    +    }
    +
    +    @Override
    +    public final <A extends ArrayRecord<T>, T> void addValueAsArray(Field<A> field, T... value) {
    +        if (value == null) {
    +            getValues().put(field, val(null, field));
    +        }
    +        else {
    +            addValueAsArray(field, Arrays.asList(value));
    +        }
    +    }
    +
    +    @Override
    +    public final <A extends ArrayRecord<T>, T> void addValueAsArray(Field<A> field, List<T> value) {
    +        if (value == null) {
    +            getValues().put(field, val(null, field));
    +        }
    +        else {
    +            try {
    +                A record = Util.newArrayRecord(field.getType(), getConfiguration());
    +                record.setList(value);
    +                addValue(field, record);
    +            }
    +            catch (Exception e) {
    +                throw new IllegalArgumentException("Field is not a valid ArrayRecord field: " + field);
    +            }
    +        }
    +    }
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/impl/AbstractSubSelect.java b/jOOQ/src/main/java/org/jooq/impl/AbstractSubSelect.java
    new file mode 100644
    index 00000000000..96ccf3b35cd
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/impl/AbstractSubSelect.java
    @@ -0,0 +1,842 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq.impl;
    +
    +import static org.jooq.SQLDialect.SQLSERVER;
    +import static org.jooq.impl.Factory.literal;
    +import static org.jooq.impl.Factory.one;
    +
    +import java.util.Arrays;
    +import java.util.Collection;
    +import java.util.List;
    +
    +import org.jooq.Attachable;
    +import org.jooq.BindContext;
    +import org.jooq.Condition;
    +import org.jooq.ConditionProvider;
    +import org.jooq.Configuration;
    +import org.jooq.Field;
    +import org.jooq.LockProvider;
    +import org.jooq.Operator;
    +import org.jooq.OrderProvider;
    +import org.jooq.Param;
    +import org.jooq.QueryPart;
    +import org.jooq.Record;
    +import org.jooq.RenderContext;
    +import org.jooq.SQLDialect;
    +import org.jooq.SortField;
    +import org.jooq.Table;
    +import org.jooq.TableLike;
    +import org.jooq.tools.StringUtils;
    +
    +/**
    + * A sub-select is a <code>SELECT</code> statement that can be combined with
    + * other <code>SELECT</code> statement in <code>UNION</code>s and similar
    + * operations.
    + *
    + * @author Lukas Eder
    + */
    +abstract class AbstractSubSelect<R extends Record>
    +extends AbstractSelect<R>
    +implements
    +    ConditionProvider,
    +    OrderProvider,
    +    LockProvider {
    +
    +    /**
    +     * Generated UID
    +     */
    +    private static final long           serialVersionUID = 1646393178384872967L;
    +
    +    private final FieldList             select;
    +    private String                      hint;
    +    private boolean                     distinct;
    +    private boolean                     forUpdate;
    +    private final FieldList             forUpdateOf;
    +    private final TableList             forUpdateOfTables;
    +    private ForUpdateMode               forUpdateMode;
    +    private int                         forUpdateWait;
    +    private boolean                     forShare;
    +    private final TableList             from;
    +    private final ConditionProviderImpl condition;
    +    private final ConditionProviderImpl connectBy;
    +    private boolean                     connectByNoCycle;
    +    private final ConditionProviderImpl connectByStartWith;
    +    private final FieldList             groupBy;
    +    private final ConditionProviderImpl having;
    +    private final SortFieldList         orderBy;
    +    private final Limit                 limit;
    +
    +
    +
    +    AbstractSubSelect(Configuration configuration) {
    +        this(configuration, null);
    +    }
    +
    +    AbstractSubSelect(Configuration configuration, TableLike<? extends R> from) {
    +        this(configuration, from, false);
    +    }
    +
    +    AbstractSubSelect(Configuration configuration, TableLike<? extends R> from, boolean distinct) {
    +        super(configuration);
    +
    +        this.distinct = distinct;
    +        this.select = new SelectFieldList();
    +        this.from = new TableList();
    +        this.condition = new ConditionProviderImpl();
    +        this.connectBy = new ConditionProviderImpl();
    +        this.connectByStartWith = new ConditionProviderImpl();
    +        this.groupBy = new FieldList();
    +        this.having = new ConditionProviderImpl();
    +        this.orderBy = new SortFieldList();
    +        this.limit = new Limit();
    +
    +        if (from != null) {
    +            this.from.add(from.asTable());
    +        }
    +
    +        this.forUpdateOf = new FieldList();
    +        this.forUpdateOfTables = new TableList();
    +    }
    +
    +    @Override
    +    public final List<Attachable> getAttachables() {
    +        if (limit.isApplicable()) {
    +            return getAttachables(select, from, condition, groupBy, having, orderBy, limit, forUpdateOf, forUpdateOfTables);
    +        }
    +        else {
    +            return getAttachables(select, from, condition, groupBy, having, orderBy, forUpdateOf, forUpdateOfTables);
    +        }
    +    }
    +
    +    @Override
    +    public final void bind(BindContext context) {
    +        context.declareFields(true)
    +               .bind((QueryPart) getSelect0())
    +               .declareFields(false)
    +               .declareTables(true)
    +               .bind((QueryPart) getFrom())
    +               .declareTables(false)
    +               .bind(getWhere())
    +               .bind(getConnectByStartWith())
    +               .bind(getConnectBy())
    +               .bind((QueryPart) getGroupBy())
    +               .bind(getHaving())
    +               .bind((QueryPart) getOrderBy());
    +
    +        // TOP clauses never bind values. So this can be safely applied at the
    +        // end for LIMIT .. OFFSET clauses, or ROW_NUMBER() filtering
    +        if (getLimit().isApplicable()) {
    +            context.bind(getLimit());
    +        }
    +
    +        context.bind((QueryPart) forUpdateOf)
    +               .bind((QueryPart) forUpdateOfTables);
    +    }
    +
    +    @Override
    +    public final void toSQL(RenderContext context) {
    +
    +        // If this is a nested select, be sure that indentation will stay on
    +        // the same level for the whole nested select
    +        context.formatIndentLockStart();
    +
    +        // If a limit applies
    +        if (getLimit().isApplicable()) {
    +            switch (context.getDialect()) {
    +
    +                // Oracle knows the ROWNUM pseudo-column. That makes things simple
    +                case ORACLE:
    +                    toSQLReferenceLimitOracle(context);
    +                    break;
    +
    +                // With DB2, there are two possibilities
    +                case DB2: {
    +
    +                    // DB2 natively supports a "FIRST ROWS" clause, without
    +                    // offset and without bind values
    +                    if (getLimit().offsetZero() && !getLimit().rendersParams()) {
    +                        toSQLReferenceLimitDefault(context);
    +                    }
    +
    +                    // "OFFSET" has to be simulated
    +                    else {
    +                        toSQLReferenceLimitDB2SQLServerSybase(context);
    +                    }
    +
    +                    break;
    +                }
    +
    +                // Sybase ASE and SQL Server support a TOP clause without OFFSET
    +                // OFFSET can be simulated in SQL Server, not in ASE
    +                case ASE:
    +                case SQLSERVER: {
    +
    +                    // Native TOP support, without OFFSET and without bind values
    +                    if (getLimit().offsetZero() && !getLimit().rendersParams()) {
    +                        toSQLReference0(context);
    +                    }
    +
    +                    // OFFSET simulation
    +                    else {
    +                        toSQLReferenceLimitDB2SQLServerSybase(context);
    +                    }
    +
    +                    break;
    +                }
    +
    +                // Sybase has TOP .. START AT support, but only without bind
    +                // variables
    +                case SYBASE: {
    +
    +                    // Native TOP support, without OFFSET and without bind values
    +                    if (!getLimit().rendersParams()) {
    +                        toSQLReference0(context);
    +                    }
    +
    +                    // OFFSET simulation
    +                    else {
    +                        toSQLReferenceLimitDB2SQLServerSybase(context);
    +                    }
    +
    +                    break;
    +                }
    +
    +                // By default, render the dialect's limit clause
    +                default: {
    +                    toSQLReferenceLimitDefault(context);
    +                    break;
    +                }
    +            }
    +        }
    +
    +        // If no limit applies, just render the rest of the query
    +        else {
    +            toSQLReference0(context);
    +        }
    +
    +        if (forUpdate) {
    +            context.formatSeparator()
    +                   .keyword("for update");
    +
    +            if (!forUpdateOf.isEmpty()) {
    +                context.keyword(" of ");
    +                Util.toSQLNames(context, forUpdateOf);
    +            }
    +            else if (!forUpdateOfTables.isEmpty()) {
    +                context.keyword(" of ");
    +
    +                switch (context.getDialect()) {
    +
    +                    // Some dialects don't allow for an OF [table-names] clause
    +                    // It can be simulated by listing the table's fields, though
    +                    case DB2:
    +                    case DERBY:
    +                    case INGRES:
    +                    case ORACLE: {
    +                        forUpdateOfTables.toSQLFieldNames(context);
    +                        break;
    +                    }
    +
    +                    // Render the OF [table-names] clause
    +                    default:
    +                        Util.toSQLNames(context, forUpdateOfTables);
    +                        break;
    +                }
    +            }
    +
    +            if (forUpdateMode != null) {
    +                context.sql(" ");
    +                context.keyword(forUpdateMode.toSQL());
    +
    +                if (forUpdateMode == ForUpdateMode.WAIT) {
    +                    context.sql(" ");
    +                    context.sql(forUpdateWait);
    +                }
    +            }
    +        }
    +        else if (forShare) {
    +            switch (context.getDialect()) {
    +
    +                // MySQL has a non-standard implementation for the "FOR SHARE" clause
    +                case MYSQL:
    +                    context.formatSeparator()
    +                           .keyword("lock in share mode");
    +                    break;
    +
    +                // Postgres is known to implement the "FOR SHARE" clause like this
    +                default:
    +                    context.formatSeparator()
    +                           .keyword("for share");
    +                    break;
    +            }
    +        }
    +
    +        // See start of method: Indent locking for nested selects
    +        context.formatIndentLockEnd();
    +    }
    +
    +    /**
    +     * The default LIMIT / OFFSET clause in most dialects
    +     */
    +    private void toSQLReferenceLimitDefault(RenderContext context) {
    +        toSQLReference0(context);
    +        context.sql(getLimit());
    +    }
    +
    +    /**
    +     * Simulate the LIMIT / OFFSET clause in the {@link SQLDialect#DB2},
    +     * {@link SQLDialect#SQLSERVER} and {@link SQLDialect#SYBASE} dialects
    +     */
    +    private final void toSQLReferenceLimitDB2SQLServerSybase(RenderContext context) {
    +        RenderContext local = new DefaultRenderContext(context);
    +        toSQLReference0(local);
    +        String enclosed = local.render();
    +
    +        String subqueryName = "limit_" + Util.hash(enclosed);
    +        String rownumName = "rownum_" + Util.hash(enclosed);
    +
    +        context.keyword("select * from (")
    +               .formatIndentStart()
    +               .formatNewLine()
    +               .keyword("select ")
    +               .sql(subqueryName)
    +               .sql(".*, row_number() ")
    +               .keyword("over (order by ");
    +
    +        if (getOrderBy().isEmpty()) {
    +            context.literal(getSelect().get(0).getName());
    +        }
    +        else {
    +            String separator = "";
    +
    +            for (SortField<?> field : getOrderBy()) {
    +                context.sql(separator)
    +                       .literal(field.getName())
    +                       .sql(" ")
    +                       .keyword(field.getOrder().toSQL());
    +
    +                separator = ", ";
    +            }
    +        }
    +
    +        context.keyword(") as ")
    +               .sql(rownumName)
    +               .formatSeparator()
    +               .keyword("from (")
    +               .formatIndentStart()
    +               .formatNewLine()
    +               .sql(enclosed)
    +               .formatIndentEnd()
    +               .formatNewLine()
    +               .keyword(") as ")
    +               .sql(subqueryName)
    +               .formatIndentEnd()
    +               .formatNewLine()
    +               .keyword(") as ")
    +               .sql("outer_")
    +               .sql(subqueryName)
    +               .formatSeparator()
    +               .keyword("where ")
    +               .sql(rownumName)
    +               .sql(" > ")
    +               .sql(getLimit().getLowerRownum())
    +               .formatSeparator()
    +               .keyword("and ")
    +               .sql(rownumName)
    +               .sql(" <= ")
    +               .sql(getLimit().getUpperRownum());
    +    }
    +
    +    /**
    +     * Simulate the LIMIT / OFFSET clause in the {@link SQLDialect#ORACLE}
    +     * dialect
    +     */
    +    private final void toSQLReferenceLimitOracle(RenderContext context) {
    +        RenderContext local = new DefaultRenderContext(context);
    +        toSQLReference0(local);
    +        String enclosed = local.render();
    +
    +        String subqueryName = "limit_" + Util.hash(enclosed);
    +        String rownumName = "rownum_" + Util.hash(enclosed);
    +
    +        context.keyword("select * from (")
    +               .formatIndentStart()
    +               .formatNewLine()
    +               .keyword("select ")
    +               .sql(subqueryName)
    +               .keyword(".*, rownum as ")
    +               .sql(rownumName)
    +               .formatSeparator()
    +               .keyword("from (")
    +               .formatIndentStart()
    +               .formatNewLine()
    +               .sql(enclosed)
    +               .formatIndentEnd()
    +               .formatNewLine()
    +               .sql(") ")
    +               .sql(subqueryName)
    +               .formatIndentEnd()
    +               .formatNewLine()
    +               .keyword(")")
    +               .formatSeparator()
    +               .keyword("where ")
    +               .sql(rownumName)
    +               .sql(" > ")
    +               .sql(getLimit().getLowerRownum())
    +               .formatSeparator()
    +               .keyword("and ")
    +               .sql(rownumName)
    +               .sql(" <= ")
    +               .sql(getLimit().getUpperRownum());
    +    }
    +
    +    /**
    +     * This method renders the main part of a query without the LIMIT clause.
    +     * This part is common to any type of limited query
    +     */
    +    private final void toSQLReference0(RenderContext context) {
    +
    +        // SELECT clause
    +        // -------------
    +        context.keyword("select ");
    +        if (distinct) {
    +            context.keyword("distinct ");
    +        }
    +
    +        if (!StringUtils.isBlank(hint)) {
    +            context.sql(hint).sql(" ");
    +        }
    +
    +        // Sybase and SQL Server have leading TOP clauses
    +        switch (context.getDialect()) {
    +            case ASE:
    +            case SQLSERVER: {
    +
    +                // If we have a TOP clause, it needs to be rendered here
    +                if (getLimit().isApplicable() && getLimit().offsetZero() && !getLimit().rendersParams()) {
    +                    context.sql(getLimit()).sql(" ");
    +                }
    +
    +                // If we don't have a limit, some subqueries still need a "TOP" clause
    +                else if (context.getDialect() == SQLSERVER && !getOrderBy().isEmpty()) {
    +
    +                    // [#759] The TOP 100% is only rendered in subqueries
    +                    if (context.subquery() || getLimit().isApplicable()) {
    +                        context.keyword("top 100 percent ");
    +                    }
    +                }
    +
    +                break;
    +            }
    +
    +            case SYBASE: {
    +                if (getLimit().isApplicable() && !getLimit().rendersParams()) {
    +                    context.sql(getLimit()).sql(" ");
    +                }
    +
    +                break;
    +            }
    +
    +            // [#780] Ordered subqueries should be handled for Ingres and ASE as well
    +            case INGRES: {
    +            }
    +        }
    +
    +        context.declareFields(true);
    +        context.sql(getSelect1());
    +        context.declareFields(false);
    +
    +        // FROM and JOIN clauses
    +        // ---------------------
    +        context.declareTables(true);
    +
    +        if (!context.render(getFrom()).isEmpty()) {
    +            context.formatSeparator()
    +                   .keyword("from ")
    +                   .sql(getFrom());
    +        }
    +
    +        context.declareTables(false);
    +
    +        // WHERE clause
    +        // ------------
    +        if (!(getWhere().getWhere() instanceof TrueCondition)) {
    +            context.formatSeparator()
    +                   .keyword("where ")
    +                   .sql(getWhere());
    +        }
    +
    +        // CONNECT BY clause
    +        // -----------------
    +        if (!(getConnectBy().getWhere() instanceof TrueCondition)) {
    +
    +            // CUBRID supports this clause only as [ START WITH .. ] CONNECT BY
    +            // Oracle also knows the CONNECT BY .. [ START WITH ] alternative
    +            // syntax
    +            toSQLStartWith(context);
    +            toSQLConnectBy(context);
    +        }
    +
    +        // GROUP BY and HAVING clause
    +        // --------------------------
    +        if (!getGroupBy().isEmpty()) {
    +            context.formatSeparator()
    +                   .keyword("group by ")
    +                   .sql(getGroupBy());
    +        }
    +
    +        if (!(getHaving().getWhere() instanceof TrueCondition)) {
    +            context.formatSeparator()
    +                   .keyword("having ")
    +                   .sql(getHaving());
    +        }
    +
    +        // ORDER BY clause
    +        // ---------------
    +        if (!getOrderBy().isEmpty()) {
    +            context.formatSeparator()
    +                   .keyword("order by ")
    +                   .sql(getOrderBy());
    +        }
    +    }
    +
    +    private void toSQLStartWith(RenderContext context) {
    +        if (!(getConnectByStartWith().getWhere() instanceof TrueCondition)) {
    +            context.formatSeparator()
    +                   .keyword("start with ")
    +                   .sql(getConnectByStartWith());
    +        }
    +    }
    +
    +    private void toSQLConnectBy(RenderContext context) {
    +        context.formatSeparator()
    +               .keyword("connect by");
    +
    +        if (connectByNoCycle) {
    +            context.keyword(" nocycle");
    +        }
    +
    +        context.sql(" ").sql(getConnectBy());
    +    }
    +
    +    // @Mixin - Declaration in SelectQuery
    +    public final void addSelect(Collection<? extends Field<?>> fields) {
    +        getSelect0().addAll(fields);
    +    }
    +
    +    // @Mixin - Declaration in SelectQuery
    +    public final void addSelect(Field<?>... fields) {
    +        addSelect(Arrays.asList(fields));
    +    }
    +
    +    // @Mixin - Declaration in SelectQuery
    +    public final void setDistinct(boolean distinct) {
    +        this.distinct = distinct;
    +    }
    +
    +    @Override
    +    public final void addLimit(int numberOfRows) {
    +        addLimit(0, numberOfRows);
    +    }
    +
    +    @Override
    +    public final void addLimit(Param<Integer> numberOfRows) {
    +        addLimit(0, numberOfRows);
    +    }
    +
    +    @Override
    +    public final void addLimit(int offset, int numberOfRows) {
    +        limit.setOffset(offset);
    +        limit.setNumberOfRows(numberOfRows);
    +    }
    +
    +    @Override
    +    public final void addLimit(int offset, Param<Integer> numberOfRows) {
    +        limit.setOffset(offset);
    +        limit.setNumberOfRows(numberOfRows);
    +    }
    +
    +    @Override
    +    public final void addLimit(Param<Integer> offset, int numberOfRows) {
    +        limit.setOffset(offset);
    +        limit.setNumberOfRows(numberOfRows);
    +    }
    +
    +    @Override
    +    public final void addLimit(Param<Integer> offset, Param<Integer> numberOfRows) {
    +        limit.setOffset(offset);
    +        limit.setNumberOfRows(numberOfRows);
    +    }
    +
    +    @Override
    +    public final void setForUpdate(boolean forUpdate) {
    +        this.forUpdate = forUpdate;
    +        this.forShare = false;
    +    }
    +
    +    @Override
    +    public final void setForUpdateOf(Field<?>... fields) {
    +        setForUpdateOf(Arrays.asList(fields));
    +    }
    +
    +    @Override
    +    public final void setForUpdateOf(Collection<? extends Field<?>> fields) {
    +        setForUpdate(true);
    +        forUpdateOf.clear();
    +        forUpdateOfTables.clear();
    +        forUpdateOf.addAll(fields);
    +    }
    +
    +    @Override
    +    public final void setForUpdateOf(Table<?>... tables) {
    +        setForUpdate(true);
    +        forUpdateOf.clear();
    +        forUpdateOfTables.clear();
    +        forUpdateOfTables.addAll(Arrays.asList(tables));
    +    }
    +
    +    @Override
    +    public final void setForUpdateWait(int seconds) {
    +        setForUpdate(true);
    +        forUpdateMode = ForUpdateMode.WAIT;
    +        forUpdateWait = seconds;
    +    }
    +
    +    @Override
    +    public final void setForUpdateNoWait() {
    +        setForUpdate(true);
    +        forUpdateMode = ForUpdateMode.NOWAIT;
    +        forUpdateWait = 0;
    +    }
    +
    +    @Override
    +    public final void setForUpdateSkipLocked() {
    +        setForUpdate(true);
    +        forUpdateMode = ForUpdateMode.SKIP_LOCKED;
    +        forUpdateWait = 0;
    +    }
    +
    +    @Override
    +    public final void setForShare(boolean forShare) {
    +        this.forUpdate = false;
    +        this.forShare = forShare;
    +        this.forUpdateOf.clear();
    +        this.forUpdateOfTables.clear();
    +        this.forUpdateMode = null;
    +        this.forUpdateWait = 0;
    +    }
    +
    +    @Override
    +    public final List<Field<?>> getSelect() {
    +        return getSelect1();
    +    }
    +
    +    final FieldList getSelect0() {
    +        return select;
    +    }
    +
    +    final FieldList getSelect1() {
    +        if (getSelect0().isEmpty()) {
    +            FieldList result = new SelectFieldList();
    +
    +            // [#109] [#489]: SELECT * is only applied when at least one table
    +            // from the table source is "unknown", i.e. not generated from a
    +            // physical table. Otherwise, the fields are selected explicitly
    +            if (knownTableSource()) {
    +                for (TableLike<?> table : getFrom()) {
    +                    for (Field<?> field : table.asTable().getFields()) {
    +                        result.add(field);
    +                    }
    +                }
    +            }
    +
    +            // The default is SELECT 1, when projections and table sources are
    +            // both empty
    +            if (getFrom().isEmpty()) {
    +                result.add(one());
    +            }
    +
    +            return result;
    +        }
    +
    +        return getSelect0();
    +    }
    +
    +    private final boolean knownTableSource() {
    +        for (Table<?> table : getFrom()) {
    +            if (!knownTable(table)) {
    +                return false;
    +            }
    +        }
    +
    +        return true;
    +    }
    +
    +    private final boolean knownTable(Table<?> table) {
    +        return table.getFields().size() > 0;
    +    }
    +
    +    @SuppressWarnings("unchecked")
    +    @Override
    +    public final Class<? extends R> getRecordType() {
    +        // Generated record classes only come into play, when the select is
    +        // - on a single table
    +        // - a select *
    +
    +        if (getFrom().size() == 1 && getSelect0().isEmpty()) {
    +            return (Class<? extends R>) getFrom().get(0).asTable().getRecordType();
    +        }
    +        else {
    +            return (Class<? extends R>) RecordImpl.class;
    +        }
    +    }
    +
    +    final TableList getFrom() {
    +        return from;
    +    }
    +
    +    final FieldList getGroupBy() {
    +        return groupBy;
    +    }
    +
    +    final Limit getLimit() {
    +        return limit;
    +    }
    +
    +    final ConditionProviderImpl getWhere() {
    +        return condition;
    +    }
    +
    +    final ConditionProviderImpl getConnectBy() {
    +        return connectBy;
    +    }
    +
    +    final ConditionProviderImpl getConnectByStartWith() {
    +        return connectByStartWith;
    +    }
    +
    +    final ConditionProviderImpl getHaving() {
    +        return having;
    +    }
    +
    +    final SortFieldList getOrderBy() {
    +        return orderBy;
    +    }
    +
    +    @Override
    +    public final void addOrderBy(Collection<SortField<?>> fields) {
    +        getOrderBy().addAll(fields);
    +    }
    +
    +    @Override
    +    public final void addOrderBy(Field<?>... fields) {
    +        getOrderBy().addAll(fields);
    +    }
    +
    +    @Override
    +    public final void addOrderBy(SortField<?>... fields) {
    +        addOrderBy(Arrays.asList(fields));
    +    }
    +
    +    @Override
    +    public final void addOrderBy(int... fieldIndexes) {
    +        Field<?>[] fields = new Field[fieldIndexes.length];
    +
    +        for (int i = 0; i < fieldIndexes.length; i++) {
    +            fields[i] = literal(fieldIndexes[i]);
    +        }
    +
    +        addOrderBy(fields);
    +    }
    +
    +    @Override
    +    public final void addConditions(Condition... conditions) {
    +        condition.addConditions(conditions);
    +    }
    +
    +    @Override
    +    public final void addConditions(Collection<Condition> conditions) {
    +        condition.addConditions(conditions);
    +    }
    +
    +    @Override
    +    public final void addConditions(Operator operator, Condition... conditions) {
    +        condition.addConditions(operator, conditions);
    +    }
    +
    +    @Override
    +    public final void addConditions(Operator operator, Collection<Condition> conditions) {
    +        condition.addConditions(operator, conditions);
    +    }
    +
    +    final void setConnectByNoCycle(boolean connectByNoCycle) {
    +        this.connectByNoCycle = connectByNoCycle;
    +    }
    +
    +    final void setStartWith(Condition condition) {
    +        connectByStartWith.addConditions(condition);
    +    }
    +
    +    final void setHint(String hint) {
    +        this.hint = hint;
    +    }
    +
    +    // -------------------------------------------------------------------------
    +    // Utility classes
    +    // -------------------------------------------------------------------------
    +
    +    /**
    +     * The lock mode for the <code>FOR UPDATE</code> clause, if set.
    +     */
    +    private static enum ForUpdateMode {
    +        WAIT("wait"),
    +        NOWAIT("nowait"),
    +        SKIP_LOCKED("skip locked"),
    +
    +        ;
    +
    +        private final String sql;
    +
    +        private ForUpdateMode(String sql) {
    +            this.sql = sql;
    +        }
    +
    +        public final String toSQL() {
    +            return sql;
    +        }
    +    }
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/impl/AbstractTable.java b/jOOQ/src/main/java/org/jooq/impl/AbstractTable.java
    new file mode 100644
    index 00000000000..e714e4fd94f
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/impl/AbstractTable.java
    @@ -0,0 +1,286 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq.impl;
    +
    +import static org.jooq.impl.Factory.table;
    +
    +import java.util.ArrayList;
    +import java.util.Collection;
    +import java.util.Collections;
    +import java.util.List;
    +
    +import org.jooq.DataType;
    +import org.jooq.DivideByOnStep;
    +import org.jooq.Field;
    +import org.jooq.ForeignKey;
    +import org.jooq.Identity;
    +import org.jooq.JoinType;
    +import org.jooq.PivotForStep;
    +import org.jooq.Record;
    +import org.jooq.Schema;
    +import org.jooq.Table;
    +import org.jooq.TableField;
    +import org.jooq.TableLike;
    +import org.jooq.TableOnStep;
    +
    +abstract class AbstractTable<R extends Record> extends AbstractType<R> implements Table<R> {
    +
    +    /**
    +     * Generated UID
    +     */
    +    private static final long serialVersionUID = 3155496238969274871L;
    +
    +    AbstractTable(String name) {
    +        this(name, null);
    +    }
    +
    +    AbstractTable(String name, Schema schema) {
    +        super(name, schema);
    +    }
    +
    +    // ------------------------------------------------------------------------
    +    // XXX: TableLike API
    +    // ------------------------------------------------------------------------
    +
    +    @Override
    +    public final Table<R> asTable() {
    +        return this;
    +    }
    +
    +    @Override
    +    public final Table<R> asTable(String alias) {
    +        return as(alias);
    +    }
    +
    +    // ------------------------------------------------------------------------
    +    // XXX: Table API
    +    // ------------------------------------------------------------------------
    +
    +    /**
    +     * {@inheritDoc}
    +     * <p>
    +     * Subclasses should override this method
    +     */
    +    @Override
    +    public Identity<R, ? extends Number> getIdentity() {
    +        return null;
    +    }
    +
    +    /**
    +     * {@inheritDoc}
    +     * <p>
    +     * Subclasses should override this method
    +     */
    +    @Override
    +    public List<ForeignKey<R, ?>> getReferences() {
    +        return Collections.emptyList();
    +    }
    +
    +    /**
    +     * {@inheritDoc}
    +     */
    +    @SuppressWarnings("unchecked")
    +    @Override
    +    public final <O extends Record> List<ForeignKey<R, O>> getReferencesTo(Table<O> other) {
    +        List<ForeignKey<R, O>> result = new ArrayList<ForeignKey<R, O>>();
    +
    +        for (ForeignKey<R, ?> reference : getReferences()) {
    +            if (other.equals(reference.getKey().getTable())) {
    +                result.add((ForeignKey<R, O>) reference);
    +            }
    +        }
    +
    +        return Collections.unmodifiableList(result);
    +    }
    +
    +    /**
    +     * Subclasses may call this method to create {@link TableField} objects that
    +     * are linked to this table.
    +     *
    +     * @param name The name of the field (case-sensitive!)
    +     * @param type The data type of the field
    +     */
    +    protected static final <R extends Record, T> TableField<R, T> createField(String name, DataType<T> type, Table<R> table) {
    +        return new TableFieldImpl<R, T>(name, type, table);
    +    }
    +
    +    // ------------------------------------------------------------------------
    +    // XXX: PIVOT API
    +    // ------------------------------------------------------------------------
    +
    +    @Override
    +    public final PivotForStep pivot(Field<?>... aggregateFunctions) {
    +        return new Pivot<Object>(this, aggregateFunctions);
    +    }
    +
    +    @Override
    +    public final PivotForStep pivot(Collection<? extends Field<?>> aggregateFunctions) {
    +        return pivot(aggregateFunctions.toArray(new Field[0]));
    +    }
    +
    +    // ------------------------------------------------------------------------
    +    // XXX: DIVISION API
    +    // ------------------------------------------------------------------------
    +
    +    @Override
    +    public final DivideByOnStep divideBy(Table<?> divisor) {
    +        return new DivideBy(this, divisor);
    +    }
    +
    +    // ------------------------------------------------------------------------
    +    // XXX: JOIN API
    +    // ------------------------------------------------------------------------
    +
    +    @Override
    +    public final TableOnStep join(TableLike<?> table) {
    +        return new JoinTable(this, table, JoinType.JOIN);
    +    }
    +
    +    @Override
    +    public final TableOnStep join(String sql) {
    +        return join(table(sql));
    +    }
    +
    +    @Override
    +    public final TableOnStep join(String sql, Object... bindings) {
    +        return join(table(sql, bindings));
    +    }
    +
    +    @Override
    +    public final TableOnStep leftOuterJoin(TableLike<?> table) {
    +        return new JoinTable(this, table, JoinType.LEFT_OUTER_JOIN);
    +    }
    +
    +    @Override
    +    public final TableOnStep leftOuterJoin(String sql) {
    +        return leftOuterJoin(table(sql));
    +    }
    +
    +    @Override
    +    public final TableOnStep leftOuterJoin(String sql, Object... bindings) {
    +        return leftOuterJoin(table(sql, bindings));
    +    }
    +
    +    @Override
    +    public final TableOnStep rightOuterJoin(TableLike<?> table) {
    +        return new JoinTable(this, table, JoinType.RIGHT_OUTER_JOIN);
    +    }
    +
    +    @Override
    +    public final TableOnStep rightOuterJoin(String sql) {
    +        return rightOuterJoin(table(sql));
    +    }
    +
    +    @Override
    +    public final TableOnStep rightOuterJoin(String sql, Object... bindings) {
    +        return rightOuterJoin(table(sql, bindings));
    +    }
    +
    +    @Override
    +    public final TableOnStep fullOuterJoin(TableLike<?> table) {
    +        return new JoinTable(this, table, JoinType.FULL_OUTER_JOIN);
    +    }
    +
    +    @Override
    +    public final TableOnStep fullOuterJoin(String sql) {
    +        return fullOuterJoin(table(sql));
    +    }
    +
    +    @Override
    +    public final TableOnStep fullOuterJoin(String sql, Object... bindings) {
    +        return fullOuterJoin(table(sql, bindings));
    +    }
    +
    +    @Override
    +    public final Table<Record> crossJoin(TableLike<?> table) {
    +        return new JoinTable(this, table, JoinType.CROSS_JOIN);
    +    }
    +
    +    @Override
    +    public final Table<Record> crossJoin(String sql) {
    +        return crossJoin(table(sql));
    +    }
    +
    +    @Override
    +    public final Table<Record> crossJoin(String sql, Object... bindings) {
    +        return crossJoin(table(sql, bindings));
    +    }
    +
    +    @Override
    +    public final Table<Record> naturalJoin(TableLike<?> table) {
    +        return new JoinTable(this, table, JoinType.NATURAL_JOIN);
    +    }
    +
    +    @Override
    +    public final Table<Record> naturalJoin(String sql) {
    +        return naturalJoin(table(sql));
    +    }
    +
    +    @Override
    +    public final Table<Record> naturalJoin(String sql, Object... bindings) {
    +        return naturalJoin(table(sql, bindings));
    +    }
    +
    +    @Override
    +    public final Table<Record> naturalLeftOuterJoin(TableLike<?> table) {
    +        return new JoinTable(this, table, JoinType.NATURAL_LEFT_OUTER_JOIN);
    +    }
    +
    +    @Override
    +    public final Table<Record> naturalLeftOuterJoin(String sql) {
    +        return naturalLeftOuterJoin(table(sql));
    +    }
    +
    +    @Override
    +    public final Table<Record> naturalLeftOuterJoin(String sql, Object... bindings) {
    +        return naturalLeftOuterJoin(table(sql, bindings));
    +    }
    +
    +    @Override
    +    public final Table<Record> naturalRightOuterJoin(TableLike<?> table) {
    +        return new JoinTable(this, table, JoinType.NATURAL_RIGHT_OUTER_JOIN);
    +    }
    +
    +    @Override
    +    public final Table<Record> naturalRightOuterJoin(String sql) {
    +        return naturalRightOuterJoin(table(sql));
    +    }
    +
    +    @Override
    +    public final Table<Record> naturalRightOuterJoin(String sql, Object... bindings) {
    +        return naturalRightOuterJoin(table(sql, bindings));
    +    }
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/impl/AbstractType.java b/jOOQ/src/main/java/org/jooq/impl/AbstractType.java
    new file mode 100644
    index 00000000000..83876ac45cf
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/impl/AbstractType.java
    @@ -0,0 +1,94 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq.impl;
    +
    +import java.util.ArrayList;
    +import java.util.List;
    +
    +import org.jooq.AliasProvider;
    +import org.jooq.Field;
    +import org.jooq.Record;
    +import org.jooq.Schema;
    +import org.jooq.Type;
    +
    +abstract class AbstractType<R extends Record> extends AbstractSchemaProviderQueryPart implements Type<R> {
    +
    +    /**
    +     * Generated UID
    +     */
    +    private static final long serialVersionUID = -4629861305735726005L;
    +
    +    AbstractType(String name) {
    +        this(name, null);
    +    }
    +
    +    AbstractType(String name, Schema schema) {
    +        super(name, schema);
    +    }
    +
    +    @Override
    +    public final List<Field<?>> getFields() {
    +        return new ArrayList<Field<?>>(getFieldList());
    +    }
    +
    +    @Override
    +    public final <T> Field<T> getField(Field<T> field) {
    +        return getFieldList().getField(field);
    +    }
    +
    +    @Override
    +    public final Field<?> getField(String name) {
    +        return getFieldList().getField(name);
    +    }
    +
    +    @Override
    +    public final Field<?> getField(int index) {
    +        return getFieldList().getField(index);
    +    }
    +
    +    @Override
    +    public final int getIndex(Field<?> field) throws IllegalArgumentException {
    +        return getFieldList().getIndex(field);
    +    }
    +
    +    /**
    +     * Subclasses should override this method to provide the set of fields
    +     * contained in the concrete table implementation. For example, a
    +     * {@link TableAlias} contains aliased fields of its {@link AliasProvider}
    +     * table.
    +     */
    +    protected abstract FieldList getFieldList();
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/impl/AliasProviderImpl.java b/jOOQ/src/main/java/org/jooq/impl/AliasProviderImpl.java
    new file mode 100644
    index 00000000000..14f58f6cd49
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/impl/AliasProviderImpl.java
    @@ -0,0 +1,159 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +
    +package org.jooq.impl;
    +
    +import static org.jooq.SQLDialect.DERBY;
    +import static org.jooq.SQLDialect.HSQLDB;
    +import static org.jooq.SQLDialect.MYSQL;
    +import static org.jooq.SQLDialect.POSTGRES;
    +
    +import java.util.Arrays;
    +import java.util.List;
    +
    +import org.jooq.AliasProvider;
    +import org.jooq.Attachable;
    +import org.jooq.BindContext;
    +import org.jooq.RenderContext;
    +
    +/**
    + * @author Lukas Eder
    + */
    +class AliasProviderImpl<T extends AliasProvider<T>> extends AbstractNamedQueryPart implements AliasProvider<T> {
    +
    +    private static final long serialVersionUID = -2456848365524191614L;
    +    private final T           aliasProvider;
    +    private final String      alias;
    +    private final boolean     wrapInParentheses;
    +
    +    AliasProviderImpl(T aliasProvider, String alias) {
    +        this(aliasProvider, alias, false);
    +    }
    +
    +    AliasProviderImpl(T aliasProvider, String alias, boolean wrapInParentheses) {
    +        super(alias);
    +
    +        this.aliasProvider = aliasProvider;
    +        this.alias = alias;
    +        this.wrapInParentheses = wrapInParentheses;
    +    }
    +
    +    @Override
    +    public final List<Attachable> getAttachables() {
    +        return getAttachables(aliasProvider);
    +    }
    +
    +    protected final T getAliasProvider() {
    +        return aliasProvider;
    +    }
    +
    +    @Override
    +    public final void toSQL(RenderContext context) {
    +        if (context.declareFields() || context.declareTables()) {
    +            if (wrapInParentheses) {
    +                context.sql("(");
    +            }
    +
    +            context.sql(aliasProvider);
    +
    +            if (wrapInParentheses) {
    +                context.sql(")");
    +            }
    +
    +            // [#291] some aliases cause trouble, if they are not explicitly marked using "as"
    +            if (Arrays.asList(DERBY, HSQLDB, MYSQL, POSTGRES).contains(context.getDialect())) {
    +                context.keyword(" as");
    +            }
    +
    +            context.sql(" ");
    +            context.literal(alias);
    +
    +            // [#756] If the aliased object is an anonymous table (usually an
    +            // unnested array), then field names must be part of the alias
    +            // declaration. For example:
    +            //
    +            // SELECT t.column_value FROM UNNEST(ARRAY[1, 2]) AS t(column_value)
    +
    +            // TODO: Is this still needed?
    +
    +            switch (context.getDialect()) {
    +                case HSQLDB:
    +                case POSTGRES: {
    +                    // The javac compiler doesn't like casting of generics
    +                    Object o = aliasProvider;
    +
    +                    if (context.declareTables() && o instanceof ArrayTable) {
    +                        ArrayTable table = (ArrayTable) o;
    +
    +                        context.sql("(");
    +                        Util.toSQLNames(context, table.getFields());
    +                        context.sql(")");
    +                    }
    +
    +                    break;
    +                }
    +            }
    +        }
    +        else {
    +            context.literal(alias);
    +        }
    +    }
    +
    +    @Override
    +    public final void bind(BindContext context) {
    +        if (context.declareFields() || context.declareTables()) {
    +            context.bind(aliasProvider);
    +        }
    +        else {
    +            // Don't bind any values
    +        }
    +    }
    +
    +    @Override
    +    public final T as(String as) {
    +        return aliasProvider.as(as);
    +    }
    +
    +    @Override
    +    public final boolean declaresFields() {
    +        return true;
    +    }
    +
    +    @Override
    +    public final boolean declaresTables() {
    +        return true;
    +    }
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/impl/ArrayAsSubqueryCondition.java b/jOOQ/src/main/java/org/jooq/impl/ArrayAsSubqueryCondition.java
    new file mode 100644
    index 00000000000..2e01153f83c
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/impl/ArrayAsSubqueryCondition.java
    @@ -0,0 +1,111 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq.impl;
    +
    +import static org.jooq.impl.Factory.table;
    +
    +import java.util.List;
    +
    +import org.jooq.Attachable;
    +import org.jooq.BindContext;
    +import org.jooq.Configuration;
    +import org.jooq.Field;
    +import org.jooq.QueryPart;
    +import org.jooq.RenderContext;
    +
    +/**
    + * @author Lukas Eder
    + */
    +class ArrayAsSubqueryCondition<T> extends AbstractCondition {
    +
    +    /**
    +     * Generated UID
    +     */
    +    private static final long      serialVersionUID = -1074020279396496305L;
    +
    +    private final Field<T[]>       array;
    +    private final Field<?>         field;
    +    private final SubQueryOperator operator;
    +
    +    ArrayAsSubqueryCondition(Field<T[]> array, Field<T> field, SubQueryOperator operator) {
    +        this.array = array;
    +        this.field = field;
    +        this.operator = operator;
    +    }
    +
    +    @Override
    +    public final List<Attachable> getAttachables() {
    +        return getAttachables(field);
    +    }
    +
    +    @Override
    +    public final void toSQL(RenderContext context) {
    +        context.sql(field)
    +               .sql(" ")
    +               .keyword(operator.toSQL())
    +               .sql(" (")
    +               .formatIndentLockStart()
    +               .sql(array(context))
    +               .formatIndentLockEnd()
    +               .sql(")");
    +    }
    +
    +    @Override
    +    public final void bind(BindContext context) {
    +        context.bind(field).bind(array(context));
    +    }
    +
    +    private final QueryPart array(Configuration context) {
    +        switch (context.getDialect()) {
    +
    +            // [#869] Postgres supports this syntax natively
    +            case POSTGRES: {
    +                return array;
    +            }
    +
    +            // [#869] H2 and HSQLDB can simulate this syntax by unnesting
    +            // the array in a subselect
    +            case H2:
    +            case HSQLDB:
    +
    +            // [#1048] All other dialects simulate unnesting of arrays using
    +            // UNION ALL-connected subselects
    +            default: {
    +                return create(context).select().from(table(array));
    +            }
    +        }
    +    }
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/impl/ArrayConstant.java b/jOOQ/src/main/java/org/jooq/impl/ArrayConstant.java
    new file mode 100644
    index 00000000000..6e88d0463d8
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/impl/ArrayConstant.java
    @@ -0,0 +1,102 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq.impl;
    +
    +import static org.jooq.impl.Factory.val;
    +
    +import java.util.ArrayList;
    +import java.util.List;
    +
    +import org.jooq.ArrayRecord;
    +import org.jooq.Attachable;
    +import org.jooq.BindContext;
    +import org.jooq.RenderContext;
    +
    +/**
    + * @author Lukas Eder
    + */
    +class ArrayConstant<T> extends AbstractField<T> {
    +
    +    private static final long    serialVersionUID = -8538560256712388066L;
    +    private final ArrayRecord<?> array;
    +
    +    ArrayConstant(ArrayRecord<T> array) {
    +        super(array.getName(), array.getDataType());
    +
    +        this.array = array;
    +    }
    +
    +    @Override
    +    public final List<Attachable> getAttachables() {
    +        List<Attachable> result = new ArrayList<Attachable>();
    +
    +        result.add(array);
    +        result.addAll(getAttachables(array));
    +
    +        return result;
    +    }
    +
    +    @Override
    +    public final void toSQL(RenderContext context) {
    +        if (context.inline()) {
    +            context.sql(array.getName());
    +            context.sql("(");
    +
    +            String separator = "";
    +            for (Object object : array.get()) {
    +                context.sql(separator);
    +                context.sql(val(object));
    +
    +                separator = ", ";
    +            }
    +
    +            context.sql(")");
    +        }
    +        else {
    +            context.sql("?");
    +        }
    +    }
    +
    +    @Override
    +    public final void bind(BindContext context) {
    +        context.bindValues(array);
    +    }
    +
    +    @Override
    +    public final boolean isNullLiteral() {
    +        return array == null;
    +    }
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/impl/ArrayDataType.java b/jOOQ/src/main/java/org/jooq/impl/ArrayDataType.java
    new file mode 100644
    index 00000000000..9aa714bb16c
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/impl/ArrayDataType.java
    @@ -0,0 +1,91 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq.impl;
    +
    +import org.jooq.Configuration;
    +import org.jooq.DataType;
    +
    +/**
    + * A wrapper for anonymous array data types
    + *
    + * @author Lukas Eder
    + */
    +class ArrayDataType<T> extends AbstractDataType<T[]> {
    +
    +    /**
    +     * Generated UID
    +     */
    +    private static final long serialVersionUID = 7883229760246533448L;
    +
    +    private final DataType<T> elementType;
    +
    +    public ArrayDataType(DataType<T> elementType) {
    +        super(null,
    +              null,
    +              elementType.getArrayType(),
    +              elementType.getTypeName(),
    +              elementType.getCastTypeName());
    +
    +        this.elementType = elementType;
    +    }
    +
    +    @Override
    +    public final String getTypeName(Configuration configuration) {
    +        String typeName = elementType.getTypeName(configuration);
    +        return getArrayType(configuration, typeName);
    +    }
    +
    +    @Override
    +    public final String getCastTypeName(Configuration configuration) {
    +        String castTypeName = elementType.getCastTypeName(configuration);
    +        return getArrayType(configuration, castTypeName);
    +    }
    +
    +    private static String getArrayType(Configuration configuration, String dataType) {
    +        switch (configuration.getDialect()) {
    +            case HSQLDB:
    +                return dataType + " array";
    +            case POSTGRES:
    +                return dataType + "[]";
    +            case H2:
    +                return "array";
    +
    +            // Default implementation is needed for hash-codes and toString()
    +            default:
    +                return dataType + "[]";
    +        }
    +    }
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/impl/ArrayRecordImpl.java b/jOOQ/src/main/java/org/jooq/impl/ArrayRecordImpl.java
    new file mode 100644
    index 00000000000..b1541924b32
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/impl/ArrayRecordImpl.java
    @@ -0,0 +1,251 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq.impl;
    +
    +import static org.jooq.impl.Util.getDriverConnection;
    +import static org.jooq.tools.reflect.Reflect.on;
    +
    +import java.lang.reflect.Array;
    +import java.sql.SQLException;
    +import java.util.ArrayList;
    +import java.util.Arrays;
    +import java.util.Collections;
    +import java.util.Iterator;
    +import java.util.List;
    +
    +import org.jooq.ArrayRecord;
    +import org.jooq.Attachable;
    +import org.jooq.Configuration;
    +import org.jooq.DataType;
    +import org.jooq.SQLDialect;
    +import org.jooq.Schema;
    +import org.jooq.exception.SQLDialectNotSupportedException;
    +import org.jooq.tools.Convert;
    +
    +/**
    + * A common base class for Oracle ARRAY types
    + * <p>
    + * This type is for JOOQ INTERNAL USE only. Do not reference directly
    + *
    + * @author Lukas Eder
    + */
    +public class ArrayRecordImpl<T> extends AbstractStore<T> implements ArrayRecord<T> {
    +
    +    /**
    +     * Generated UID
    +     */
    +    private static final long serialVersionUID = -908937248705184108L;
    +
    +    private final Schema      schema;
    +    private final DataType<T> type;
    +    private final String      name;
    +    private T[]               array;
    +
    +    /**
    +     * Create an empty array record
    +     *
    +     * @deprecated - 2.0.5 [#1179] - Please regenerate your schema and use
    +     *             {@link #ArrayRecordImpl(Schema, String, DataType, Configuration)}
    +     *             instead
    +     */
    +    @Deprecated
    +    protected ArrayRecordImpl(String name, DataType<T> type, Configuration configuration) {
    +        this(null, name, type, configuration);
    +    }
    +
    +    /**
    +     * Create an empty array record
    +     *
    +     * @deprecated - 2.0.5 [#1179] - Please regenerate your schema and use
    +     *             {@link #ArrayRecordImpl(Schema, String, DataType)} instead
    +     */
    +    @Deprecated
    +    protected ArrayRecordImpl(String name, DataType<T> type) {
    +        this(null, name, type);
    +    }
    +
    +    /**
    +     * Create an empty array record
    +     */
    +    protected ArrayRecordImpl(Schema schema, String name, DataType<T> type, Configuration configuration) {
    +        super(configuration);
    +
    +        this.schema = schema;
    +        this.name = name;
    +        this.type = type;
    +    }
    +
    +    /**
    +     * Create an empty array record
    +     */
    +    protected ArrayRecordImpl(Schema schema, String name, DataType<T> type) {
    +        this(schema, name, type, null);
    +    }
    +
    +    // -------------------------------------------------------------------------
    +    // The Attachable API
    +    // -------------------------------------------------------------------------
    +
    +    @Override
    +    public final List<Attachable> getAttachables() {
    +        List<Attachable> result = new ArrayList<Attachable>();
    +
    +        if (Attachable.class.isAssignableFrom(type.getType())) {
    +            for (T element : get()) {
    +                result.add((Attachable) element);
    +            }
    +        }
    +
    +        return result;
    +    }
    +
    +    // -------------------------------------------------------------------------
    +    // The ArrayRecord API
    +    // -------------------------------------------------------------------------
    +
    +    @Override
    +    public final T getValue(int index) throws IllegalArgumentException {
    +        return get()[index];
    +    }
    +
    +    @SuppressWarnings("unchecked")
    +    @Override
    +    public final T[] get() {
    +        if (array == null) {
    +            return (T[]) Array.newInstance(type.getType(), 0);
    +        }
    +        else {
    +            return array;
    +        }
    +    }
    +
    +    @Override
    +    public final List<T> getList() {
    +        if (array == null) {
    +            return Collections.emptyList();
    +        }
    +        else {
    +            return Arrays.asList(array);
    +        }
    +    }
    +
    +    @Override
    +    public final void set(T... array) {
    +        this.array = array;
    +    }
    +
    +    @Override
    +    public final void set(java.sql.Array array) throws SQLException {
    +        if (array == null) {
    +            this.array = null;
    +        }
    +        else {
    +            Object o;
    +
    +            // [#1179] This is needed to load TABLE OF OBJECT
    +            // [#884] TODO: This name is used in inlined SQL. It should be
    +            // correctly escaped and schema mapped!
    +            if (schema != null) {
    +                o = array.getArray(schema.getTypeMapping());
    +            }
    +            else {
    +                o = array.getArray();
    +            }
    +
    +            this.array = Convert.convert(o, type.getArrayType());
    +        }
    +    }
    +
    +    @SuppressWarnings("unchecked")
    +    @Override
    +    public final void setList(List<? extends T> list) {
    +        if (list == null) {
    +            array = null;
    +        }
    +        else {
    +            array = list.toArray((T[]) Array.newInstance(type.getType(), 0));
    +        }
    +    }
    +
    +    @Override
    +    public final int size() {
    +        return get().length;
    +    }
    +
    +    @Override
    +    public final String getName() {
    +
    +        // [#1179] When Schema is present, the name is not fully qualified
    +        if (schema != null) {
    +            return schema.getName() + "." + name;
    +        }
    +
    +        // When Schema is absent, the name is fully qualified (deprecated, pre 2.0.5)
    +        else {
    +            return name;
    +        }
    +    }
    +
    +    @Override
    +    public final DataType<T> getDataType() {
    +        return type;
    +    }
    +
    +    @Override
    +    public final java.sql.Array createArray() throws SQLException {
    +        SQLDialect dialect = getConfiguration().getDialect();
    +
    +        switch (dialect) {
    +            case ORACLE: {
    +                // [#1161] Use reflection to avoid compile-time on ojdbc
    +                return on(getDriverConnection(getConfiguration())).call("createARRAY", getName(), get()).get();
    +            }
    +
    +            default:
    +                throw new SQLDialectNotSupportedException("Cannot create Array for dialect : " + dialect);
    +        }
    +    }
    +
    +    @Override
    +    public String toString() {
    +        return getClass().getSimpleName() + " [values=" + getList() + "]";
    +    }
    +
    +    @Override
    +    public final Iterator<T> iterator() {
    +        return getList().iterator();
    +    }
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/impl/ArrayTable.java b/jOOQ/src/main/java/org/jooq/impl/ArrayTable.java
    new file mode 100644
    index 00000000000..bfd8dd47640
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/impl/ArrayTable.java
    @@ -0,0 +1,298 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq.impl;
    +
    +import java.util.Collections;
    +import java.util.List;
    +
    +import org.jooq.ArrayRecord;
    +import org.jooq.Attachable;
    +import org.jooq.BindContext;
    +import org.jooq.Configuration;
    +import org.jooq.Field;
    +import org.jooq.Param;
    +import org.jooq.Record;
    +import org.jooq.RenderContext;
    +import org.jooq.Table;
    +import org.jooq.UDTRecord;
    +import org.jooq.exception.DataAccessException;
    +import org.jooq.exception.DataTypeException;
    +import org.jooq.exception.SQLDialectNotSupportedException;
    +import org.jooq.util.h2.H2DataType;
    +
    +/**
    + * An unnested array
    + *
    + * @author Lukas Eder
    + */
    +class ArrayTable extends AbstractTable<Record> {
    +
    +    /**
    +     * Generated UID
    +     */
    +    private static final long serialVersionUID = 2380426377794577041L;
    +
    +    private final Field<?>          array;
    +    private final FieldList         field;
    +    private final String            alias;
    +
    +    ArrayTable(Field<?> array) {
    +        this(array, "array_table");
    +    }
    +
    +    @SuppressWarnings({ "rawtypes", "unchecked" })
    +    ArrayTable(Field<?> array, String alias) {
    +        super(alias);
    +
    +        Class<?> arrayType;
    +
    +        // TODO [#523] Solve this in a more object-oriented way...
    +        if (array.getDataType().getType().isArray()) {
    +            arrayType = array.getDataType().getType().getComponentType();
    +        }
    +
    +        // [#1110] Keep track of element type information of Oracle VARRAY / TABLE types
    +        else if (array instanceof ArrayConstant) {
    +            arrayType = array.getDataType().getType();
    +        }
    +
    +        // [#1111] Keep track of element type information of Oracle
    +        // VARRAY / TABLE types returned from functions
    +        else if (ArrayRecord.class.isAssignableFrom(array.getDataType().getType())) {
    +            // TODO [#523] This information should be available in ARRAY meta-data
    +            ArrayRecord<?> dummy = Util.newArrayRecord((Class<ArrayRecord<?>>) array.getDataType().getType(), DefaultConfiguration.DEFAULT_CONFIGURATION);
    +            arrayType = dummy.getDataType().getType();
    +        }
    +
    +        // Is this case possible?
    +        else {
    +            arrayType = Object.class;
    +        }
    +
    +        this.array = array;
    +        this.alias = alias;
    +        this.field = new FieldList();
    +
    +        // [#1114] VARRAY/TABLE of OBJECT have more than one field
    +        if (UDTRecord.class.isAssignableFrom(arrayType)) {
    +            try {
    +                UDTRecord<?> record = (UDTRecord<?>) arrayType.newInstance();
    +                for (Field<?> f : record.getFields()) {
    +                    this.field.add(new Qualifier(f.getDataType(), alias, f.getName()));
    +                }
    +            }
    +            catch (Exception e) {
    +                throw new DataTypeException("Bad UDT Type : " + arrayType, e);
    +            }
    +        }
    +
    +        // Simple array types have a synthetic field called "COLUMN_VALUE"
    +        else {
    +            this.field.add(new Qualifier(Factory.getDataType(arrayType), alias, "COLUMN_VALUE"));
    +        }
    +    }
    +
    +    @Override
    +    public final Class<? extends Record> getRecordType() {
    +        return RecordImpl.class;
    +    }
    +
    +    @Override
    +    public final Table<Record> as(String as) {
    +        return new ArrayTable(array, as);
    +    }
    +
    +    @Override
    +    public final boolean declaresTables() {
    +
    +        // Always true, because unnested tables are always aliased
    +        return true;
    +    }
    +
    +    @Override
    +    public final void toSQL(RenderContext context) {
    +        context.sql(table(context));
    +    }
    +
    +    @Override
    +    public final void bind(BindContext context) {
    +        context.bind(table(context));
    +    }
    +
    +    private final Table<Record> table(Configuration configuration) {
    +        switch (configuration.getDialect()) {
    +            case ORACLE: {
    +                if (array.getDataType().getType().isArray()) {
    +                    return simulate().as(alias);
    +                }
    +                else {
    +                    return new OracleArrayTable().as(alias);
    +                }
    +            }
    +
    +            case H2: {
    +                return new H2ArrayTable().as(alias);
    +            }
    +
    +            // [#756] These dialects need special care when aliasing unnested
    +            // arrays
    +            case HSQLDB:
    +            case POSTGRES: {
    +                return new PostgresHSQLDBTable().as(alias);
    +            }
    +
    +            // Other dialects can simulate unnested arrays using UNION ALL
    +            default: {
    +                if (array.getDataType().getType().isArray() && array instanceof Param) {
    +                    return simulate();
    +                }
    +
    +                else {
    +                    throw new SQLDialectNotSupportedException("ARRAY TABLE is not supported for " + configuration.getDialect());
    +                }
    +            }
    +        }
    +    }
    +
    +    private class PostgresHSQLDBTable extends DialectArrayTable {
    +
    +        /**
    +         * Generated UID
    +         */
    +        private static final long serialVersionUID = 6989279597964488457L;
    +
    +        @Override
    +        public void toSQL(RenderContext context) {
    +            context.keyword("(select * from unnest(")
    +                   .sql(array)
    +                   .keyword(") as ")
    +                   .literal(alias)
    +                   .sql("(")
    +                   .literal("COLUMN_VALUE")
    +                   .sql("))");
    +        }
    +    }
    +
    +    private class H2ArrayTable extends DialectArrayTable {
    +
    +        /**
    +         * Generated UID
    +         */
    +        private static final long serialVersionUID = 8679404596822098711L;
    +
    +        @Override
    +        public void toSQL(RenderContext context) {
    +            context.keyword("table(").sql("COLUMN_VALUE ");
    +
    +            // If the array type is unknown (e.g. because it's returned from
    +            // a stored function
    +            // Then the best choice for arbitrary types is varchar
    +            if (array.getDataType().getType() == Object[].class) {
    +                context.keyword(H2DataType.VARCHAR.getTypeName());
    +            }
    +            else {
    +                context.keyword(array.getDataType().getTypeName());
    +            }
    +
    +            context.sql(" = ").sql(array).sql(")");
    +        }
    +    }
    +
    +    private class OracleArrayTable extends DialectArrayTable {
    +
    +        /**
    +         * Generated UID
    +         */
    +        private static final long serialVersionUID = 1716687061980551706L;
    +
    +        @Override
    +        public void toSQL(RenderContext context) {
    +            context.keyword("table (").sql(array).sql(")");
    +        }
    +    }
    +
    +    private abstract class DialectArrayTable extends AbstractTable<Record> {
    +
    +        /**
    +         * Generated UID
    +         */
    +        private static final long serialVersionUID = 2662639259338694177L;
    +
    +        DialectArrayTable() {
    +            super(alias);
    +        }
    +
    +        @Override
    +        public Class<? extends Record> getRecordType() {
    +            return RecordImpl.class;
    +        }
    +
    +        @Override
    +        public Table<Record> as(String as) {
    +            return new TableAlias<Record>(this, as);
    +        }
    +
    +        @Override
    +        public void bind(BindContext context) throws DataAccessException {
    +            context.bind(array);
    +        }
    +
    +        @Override
    +        protected FieldList getFieldList() {
    +            return ArrayTable.this.getFieldList();
    +        }
    +
    +        @Override
    +        protected List<Attachable> getAttachables0() {
    +            return Collections.emptyList();
    +        }
    +    }
    +
    +    @SuppressWarnings("unchecked")
    +    private final ArrayTableSimulation simulate() {
    +        return new ArrayTableSimulation(((Param<Object[]>) array).getValue(), alias);
    +    }
    +
    +    @Override
    +    protected final FieldList getFieldList() {
    +        return field;
    +    }
    +
    +    @Override
    +    protected final List<Attachable> getAttachables0() {
    +        return Collections.emptyList();
    +    }
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/impl/ArrayTableSimulation.java b/jOOQ/src/main/java/org/jooq/impl/ArrayTableSimulation.java
    new file mode 100644
    index 00000000000..837dfae381c
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/impl/ArrayTableSimulation.java
    @@ -0,0 +1,153 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq.impl;
    +
    +import static org.jooq.impl.Factory.falseCondition;
    +import static org.jooq.impl.Factory.one;
    +
    +import java.util.Collections;
    +import java.util.List;
    +
    +import org.jooq.Attachable;
    +import org.jooq.BindContext;
    +import org.jooq.Configuration;
    +import org.jooq.Field;
    +import org.jooq.Record;
    +import org.jooq.RenderContext;
    +import org.jooq.Select;
    +import org.jooq.Table;
    +import org.jooq.exception.DataAccessException;
    +
    +/**
    + * Essentially, this is the same as {@link ArrayTable}, except that it simulates
    + * unnested arrays using <code>UNION ALL</code>
    + *
    + * @author Lukas Eder
    + */
    +class ArrayTableSimulation extends AbstractTable<Record> {
    +
    +    /**
    +     * Generated UID
    +     */
    +    private static final long       serialVersionUID = 2392515064450536343L;
    +
    +    private final Object[]          array;
    +    private final FieldList         field;
    +    private final String            alias;
    +
    +    private transient Table<Record> table;
    +
    +    ArrayTableSimulation(Object[] array) {
    +        this(array, "array_table");
    +    }
    +
    +    @SuppressWarnings({ "unchecked", "rawtypes" })
    +    ArrayTableSimulation(Object[] array, String alias) {
    +        super(alias);
    +
    +        this.array = array;
    +        this.field = new FieldList();
    +        this.alias = alias;
    +        this.field.add(new Qualifier(Factory.getDataType(array.getClass().getComponentType()), alias, "COLUMN_VALUE"));
    +    }
    +
    +    @Override
    +    public final Class<? extends Record> getRecordType() {
    +        return RecordImpl.class;
    +    }
    +
    +    @Override
    +    public final Table<Record> as(String as) {
    +        return new ArrayTableSimulation(array, as);
    +    }
    +
    +    @Override
    +    public final boolean declaresTables() {
    +
    +        // [#1055] Always true, because unnested tables are always aliased.
    +        // This is particularly important for simulated unnested arrays
    +        return true;
    +    }
    +
    +    @Override
    +    public final void toSQL(RenderContext context) {
    +        context.sql(table(context));
    +    }
    +
    +    @Override
    +    public final void bind(BindContext context) throws DataAccessException {
    +        context.bind(table(context));
    +    }
    +
    +    @Override
    +    protected final FieldList getFieldList() {
    +        return field;
    +    }
    +
    +    @Override
    +    protected final List<Attachable> getAttachables0() {
    +        return Collections.emptyList();
    +    }
    +
    +    private final Table<Record> table(Configuration configuration) {
    +        if (table == null) {
    +            Select<Record> select = null;
    +
    +            for (Object element : array) {
    +
    +                // [#1081] Be sure to get the correct cast type also for null
    +                Field<?> val = Factory.val(element, field.get(0).getDataType());
    +                Select<Record> subselect = create(configuration).select(val.as("COLUMN_VALUE"));
    +
    +                if (select == null) {
    +                    select = subselect;
    +                }
    +                else {
    +                    select = select.unionAll(subselect);
    +                }
    +            }
    +
    +            // Empty arrays should result in empty tables
    +            if (select == null) {
    +                select = create(configuration).select(one().as("COLUMN_VALUE")).where(falseCondition());
    +            }
    +
    +            table = select.asTable(alias);
    +        }
    +
    +        return table;
    +    }
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/impl/Ascii.java b/jOOQ/src/main/java/org/jooq/impl/Ascii.java
    new file mode 100644
    index 00000000000..52b55a604c1
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/impl/Ascii.java
    @@ -0,0 +1,73 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq.impl;
    +
    +import static org.jooq.impl.Factory.function;
    +
    +import org.jooq.Configuration;
    +import org.jooq.Field;
    +
    +/**
    + * @author Lukas Eder
    + */
    +class Ascii extends AbstractFunction<Integer> {
    +
    +    /**
    +     * Generated UID
    +     */
    +    private static final long             serialVersionUID = -7273879239726265322L;
    +
    +    private final Field<?>                string;
    +
    +    Ascii(Field<?> string) {
    +        super("ascii", SQLDataType.INTEGER, string);
    +
    +        this.string = string;
    +    }
    +
    +    @Override
    +    final Field<Integer> getFunction0(Configuration configuration) {
    +        switch (configuration.getDialect()) {
    +            // TODO [#862] [#864] simulate this for some dialects
    +            case DERBY:
    +            case INGRES:
    +            case SQLITE:
    +
    +            default:
    +                return function("ascii", SQLDataType.INTEGER, string);
    +        }
    +    }
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/impl/AttachableImpl.java b/jOOQ/src/main/java/org/jooq/impl/AttachableImpl.java
    new file mode 100644
    index 00000000000..4e9928a3842
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/impl/AttachableImpl.java
    @@ -0,0 +1,137 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq.impl;
    +
    +import static org.jooq.impl.Factory.isStaticFactory;
    +
    +import java.util.List;
    +
    +import org.jooq.Attachable;
    +import org.jooq.AttachableInternal;
    +import org.jooq.Configuration;
    +import org.jooq.SQLDialect;
    +import org.jooq.Store;
    +import org.jooq.conf.Settings;
    +import org.jooq.tools.JooqLogger;
    +
    +/**
    + * A default implementation for mixin of the {@link Attachable} interface
    + *
    + * @author Lukas Eder
    + */
    +class AttachableImpl implements AttachableInternal {
    +
    +    /**
    +     * Generated UID
    +     */
    +    private static final long        serialVersionUID = 8769475224067827057L;
    +    private static final JooqLogger  log              = JooqLogger.getLogger(AttachableImpl.class);
    +
    +    private Configuration            configuration;
    +    private final AttachableInternal delegate;
    +
    +    AttachableImpl(AttachableInternal delegate) {
    +        this(delegate, null);
    +    }
    +
    +    AttachableImpl(AttachableInternal delegate, Configuration configuration) {
    +        this.delegate = delegate;
    +        this.configuration = configuration;
    +    }
    +
    +    @Override
    +    public final <I> I internalAPI(Class<I> internalType) throws ClassCastException {
    +        return internalType.cast(this);
    +    }
    +
    +    @Override
    +    public final void attach(Configuration c) {
    +
    +        // Static factories or default configurations in QueryParts
    +        // shouldn't be attached
    +        if (!isStaticFactory(configuration)
    +
    +        // On the other hand, Stores (e.g. UDTRecord, ArrayRecord) should
    +        // always be attached
    +            || delegate instanceof Store) {
    +
    +            if (log.isTraceEnabled()) {
    +                log.trace("Attaching", delegate.getClass().getSimpleName() + " [ " + delegate + " ]");
    +            }
    +
    +            configuration = c;
    +        }
    +
    +        for (Attachable attachable : getAttachables()) {
    +            if (attachable != null) {
    +                attachable.attach(c);
    +            }
    +        }
    +    }
    +
    +    @Override
    +    public final Configuration getConfiguration() {
    +        return configuration;
    +    }
    +
    +    final SQLDialect getDialect() {
    +        return getConfiguration().getDialect();
    +    }
    +
    +    @Deprecated
    +    final org.jooq.SchemaMapping getSchemaMapping() {
    +        return getConfiguration().getSchemaMapping();
    +    }
    +
    +    final Settings getSettings() {
    +        return getConfiguration().getSettings();
    +    }
    +
    +    @Override
    +    public final List<Attachable> getAttachables() {
    +        return delegate.getAttachables();
    +    }
    +
    +    @Override
    +    public String toString() {
    +        if (configuration == null) {
    +            return "[ detached ]";
    +        }
    +        else {
    +            return configuration.toString();
    +        }
    +    }
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/impl/BatchMultiple.java b/jOOQ/src/main/java/org/jooq/impl/BatchMultiple.java
    new file mode 100644
    index 00000000000..05105f09233
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/impl/BatchMultiple.java
    @@ -0,0 +1,97 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq.impl;
    +
    +import java.sql.Connection;
    +import java.sql.SQLException;
    +
    +import org.jooq.Batch;
    +import org.jooq.ExecuteContext;
    +import org.jooq.ExecuteListener;
    +import org.jooq.Query;
    +
    +/**
    + * @author Lukas Eder
    + */
    +class BatchMultiple implements Batch {
    +
    +    private final Factory           create;
    +    private final Query[]           queries;
    +
    +    public BatchMultiple(Factory create, Query... queries) {
    +        this.create = create;
    +        this.queries = queries;
    +    }
    +
    +    @Override
    +    public final int[] execute() {
    +        Connection connection = create.getConnection();
    +
    +        ExecuteContext ctx = new DefaultExecuteContext(create, queries);
    +        ExecuteListener listener = new ExecuteListeners(ctx);
    +
    +        try {
    +            ctx.statement(new PreparedStatementProxy(connection));
    +
    +            String[] batchSQL = ctx.batchSQL();
    +            for (int i = 0; i < queries.length; i++) {
    +                listener.renderStart(ctx);
    +                batchSQL[i] = create.renderInlined(queries[i]);
    +                listener.renderEnd(ctx);
    +            }
    +
    +            for (String sql : batchSQL) {
    +                ctx.sql(sql);
    +                listener.prepareStart(ctx);
    +                ctx.statement().addBatch(sql);
    +                listener.prepareEnd(ctx);
    +                ctx.sql(null);
    +            }
    +
    +            listener.executeStart(ctx);
    +            int[] result = ctx.statement().executeBatch();
    +            listener.executeEnd(ctx);
    +
    +            return result;
    +        }
    +        catch (SQLException e) {
    +            throw Util.translate("BatchMultiple.execute", ctx.sql(), e);
    +        }
    +        finally {
    +            Util.safeClose(listener, ctx);
    +        }
    +    }
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/impl/BatchSingle.java b/jOOQ/src/main/java/org/jooq/impl/BatchSingle.java
    new file mode 100644
    index 00000000000..a7407d8838d
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/impl/BatchSingle.java
    @@ -0,0 +1,134 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq.impl;
    +
    +import static org.jooq.conf.SettingsTools.executeStaticStatements;
    +
    +import java.sql.Connection;
    +import java.sql.SQLException;
    +import java.util.ArrayList;
    +import java.util.List;
    +
    +import org.jooq.BatchBindStep;
    +import org.jooq.ExecuteContext;
    +import org.jooq.ExecuteListener;
    +import org.jooq.Query;
    +
    +/**
    + * @author Lukas Eder
    + */
    +class BatchSingle implements BatchBindStep {
    +
    +    private final Factory           create;
    +    private final Query             query;
    +    private final List<Object[]>    allBindValues;
    +
    +    public BatchSingle(Factory create, Query query) {
    +        this.create = create;
    +        this.query = query;
    +        this.allBindValues = new ArrayList<Object[]>();
    +    }
    +
    +    @Override
    +    public final BatchSingle bind(Object... bindValues) {
    +        allBindValues.add(bindValues);
    +        return this;
    +    }
    +
    +    @Override
    +    public final int[] execute() {
    +
    +        // [#1180] Run batch queries with BatchMultiple, if no bind variables
    +        // should be used...
    +        if (executeStaticStatements(create.getSettings())) {
    +            return executeStatic();
    +        }
    +        else {
    +            return executePrepared();
    +        }
    +    }
    +
    +    private final int[] executePrepared() {
    +        Connection connection = create.getConnection();
    +
    +        ExecuteContext ctx = new DefaultExecuteContext(create, new Query[] { query });
    +        ExecuteListener listener = new ExecuteListeners(ctx);
    +
    +        try {
    +            listener.renderStart(ctx);
    +            ctx.sql(create.render(query));
    +            listener.renderEnd(ctx);
    +
    +            listener.prepareStart(ctx);
    +            ctx.statement(connection.prepareStatement(ctx.sql()));
    +            listener.prepareEnd(ctx);
    +
    +            for (Object[] bindValues : allBindValues) {
    +                listener.bindStart(ctx);
    +                new DefaultBindContext(create, ctx.statement()).bindValues(bindValues);
    +                listener.bindEnd(ctx);
    +
    +                ctx.statement().addBatch();
    +            }
    +
    +            listener.executeStart(ctx);
    +            int[] result = ctx.statement().executeBatch();
    +            listener.executeEnd(ctx);
    +
    +            return result;
    +        }
    +        catch (SQLException e) {
    +            throw Util.translate("BatchSingle.execute", ctx.sql(), e);
    +        }
    +        finally {
    +            Util.safeClose(listener, ctx);
    +        }
    +    }
    +
    +    private final int[] executeStatic() {
    +        List<Query> queries = new ArrayList<Query>();
    +
    +        for (Object[] bindValues : allBindValues) {
    +            for (int i = 0; i < bindValues.length; i++) {
    +                query.bind(i + 1, bindValues[i]);
    +            }
    +
    +            queries.add(create.query(query.getSQL(true)));
    +        }
    +
    +        return create.batch(queries).execute();
    +    }
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/impl/BetweenCondition.java b/jOOQ/src/main/java/org/jooq/impl/BetweenCondition.java
    new file mode 100644
    index 00000000000..a4e6f04b5e3
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/impl/BetweenCondition.java
    @@ -0,0 +1,84 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +
    +package org.jooq.impl;
    +
    +import java.util.List;
    +
    +import org.jooq.Attachable;
    +import org.jooq.BindContext;
    +import org.jooq.Field;
    +import org.jooq.RenderContext;
    +
    +/**
    + * @author Lukas Eder
    + */
    +class BetweenCondition<T> extends AbstractCondition {
    +
    +    private static final long serialVersionUID = -4666251100802237878L;
    +
    +    private final boolean     not;
    +    private final Field<T>    field;
    +    private final Field<T>    minValue;
    +    private final Field<T>    maxValue;
    +
    +    BetweenCondition(Field<T> field, Field<T> minValue, Field<T> maxValue, boolean not) {
    +        this.field = field;
    +        this.minValue = minValue;
    +        this.maxValue = maxValue;
    +        this.not = not;
    +    }
    +
    +    @Override
    +    public final List<Attachable> getAttachables() {
    +        return getAttachables(field, minValue, maxValue);
    +    }
    +
    +    @Override
    +    public final void bind(BindContext context) {
    +        context.bind(field).bind(minValue).bind(maxValue);
    +    }
    +
    +    @Override
    +    public final void toSQL(RenderContext context) {
    +        context.sql(field)
    +               .keyword(not ? " not" : "")
    +               .keyword(" between ")
    +               .sql(minValue)
    +               .keyword(" and ")
    +               .sql(maxValue);
    +    }
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/impl/BindingProvider.java b/jOOQ/src/main/java/org/jooq/impl/BindingProvider.java
    new file mode 100644
    index 00000000000..23450e4c76a
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/impl/BindingProvider.java
    @@ -0,0 +1,59 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq.impl;
    +
    +import java.util.List;
    +
    +import org.jooq.Param;
    +import org.jooq.QueryPart;
    +import org.jooq.QueryPartInternal;
    +
    +/**
    + * An internal interface implemented by those {@link QueryPart} types that
    + * contain bind values (bound as {@link Param})
    + * <p>
    + * This interface is for JOOQ INTERNAL USE only. Do not reference directly
    + *
    + * @author Lukas Eder
    + */
    +interface BindingProvider extends QueryPartInternal {
    +
    +    /**
    +     * Get the list of bind values (bound as {@link Param}), contained in this
    +     * {@link QueryPart}
    +     */
    +    List<Param<?>> getBindings();
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/impl/BitCount.java b/jOOQ/src/main/java/org/jooq/impl/BitCount.java
    new file mode 100644
    index 00000000000..905e2409c46
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/impl/BitCount.java
    @@ -0,0 +1,222 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq.impl;
    +
    +import static org.jooq.impl.Factory.bitAnd;
    +import static org.jooq.impl.Factory.function;
    +import static org.jooq.impl.Factory.literal;
    +import static org.jooq.impl.Factory.shr;
    +
    +import org.jooq.Configuration;
    +import org.jooq.Field;
    +
    +/**
    + * @author Lukas Eder
    + */
    +class BitCount extends AbstractFunction<Integer> {
    +
    +    /**
    +     * Generated UID
    +     */
    +    private static final long serialVersionUID = 7624782102883057433L;
    +
    +    BitCount(Field<?> field) {
    +        super("bit_count", SQLDataType.INTEGER, field);
    +    }
    +
    +    @Override
    +    final Field<Integer> getFunction0(Configuration configuration) {
    +        final Field<?> field = getArguments()[0];
    +
    +        switch (configuration.getDialect()) {
    +            case MYSQL:
    +                return function("bit_count", getDataType(), getArguments());
    +
    +            // Warning, some severe madness lies ahead. Better solutions very welcome!
    +            // See also http://stackoverflow.com/questions/7946349/how-to-simulate-the-mysql-bit-count-function-in-sybase-sql-anywhere
    +            default: {
    +                if (field.getType() == Byte.class) {
    +                    @SuppressWarnings("unchecked")
    +                    Field<Byte> f = (Field<Byte>) field;
    +
    +                    byte i = 0;
    +                    return bitAnd(f, literal((byte) 0x01)).add(
    +                           shr(bitAnd(f, literal((byte) 0x02)), literal(++i))).add(
    +                           shr(bitAnd(f, literal((byte) 0x04)), literal(++i))).add(
    +                           shr(bitAnd(f, literal((byte) 0x08)), literal(++i))).add(
    +                           shr(bitAnd(f, literal((byte) 0x10)), literal(++i))).add(
    +                           shr(bitAnd(f, literal((byte) 0x20)), literal(++i))).add(
    +                           shr(bitAnd(f, literal((byte) 0x40)), literal(++i))).add(
    +                           shr(bitAnd(f, literal((byte) 0x80)), literal(++i))).cast(Integer.class);
    +                }
    +                else if (field.getType() == Short.class) {
    +                    @SuppressWarnings("unchecked")
    +                    Field<Short> f = (Field<Short>) field;
    +
    +                    short i = 0;
    +                    return bitAnd(f, literal((short) 0x0001)).add(
    +                           shr(bitAnd(f, literal((short) 0x0002)), literal(++i))).add(
    +                           shr(bitAnd(f, literal((short) 0x0004)), literal(++i))).add(
    +                           shr(bitAnd(f, literal((short) 0x0008)), literal(++i))).add(
    +                           shr(bitAnd(f, literal((short) 0x0010)), literal(++i))).add(
    +                           shr(bitAnd(f, literal((short) 0x0020)), literal(++i))).add(
    +                           shr(bitAnd(f, literal((short) 0x0040)), literal(++i))).add(
    +                           shr(bitAnd(f, literal((short) 0x0080)), literal(++i))).add(
    +                           shr(bitAnd(f, literal((short) 0x0100)), literal(++i))).add(
    +                           shr(bitAnd(f, literal((short) 0x0200)), literal(++i))).add(
    +                           shr(bitAnd(f, literal((short) 0x0400)), literal(++i))).add(
    +                           shr(bitAnd(f, literal((short) 0x0800)), literal(++i))).add(
    +                           shr(bitAnd(f, literal((short) 0x1000)), literal(++i))).add(
    +                           shr(bitAnd(f, literal((short) 0x2000)), literal(++i))).add(
    +                           shr(bitAnd(f, literal((short) 0x4000)), literal(++i))).add(
    +                           shr(bitAnd(f, literal((short) 0x8000)), literal(++i))).cast(Integer.class);
    +                }
    +                else if (field.getType() == Integer.class) {
    +                    @SuppressWarnings("unchecked")
    +                    Field<Integer> f = (Field<Integer>) field;
    +
    +                    int i = 0;
    +                    return bitAnd(f, literal(0x00000001)).add(
    +                           shr(bitAnd(f, literal(0x00000002)), literal(++i))).add(
    +                           shr(bitAnd(f, literal(0x00000004)), literal(++i))).add(
    +                           shr(bitAnd(f, literal(0x00000008)), literal(++i))).add(
    +                           shr(bitAnd(f, literal(0x00000010)), literal(++i))).add(
    +                           shr(bitAnd(f, literal(0x00000020)), literal(++i))).add(
    +                           shr(bitAnd(f, literal(0x00000040)), literal(++i))).add(
    +                           shr(bitAnd(f, literal(0x00000080)), literal(++i))).add(
    +                           shr(bitAnd(f, literal(0x00000100)), literal(++i))).add(
    +                           shr(bitAnd(f, literal(0x00000200)), literal(++i))).add(
    +                           shr(bitAnd(f, literal(0x00000400)), literal(++i))).add(
    +                           shr(bitAnd(f, literal(0x00000800)), literal(++i))).add(
    +                           shr(bitAnd(f, literal(0x00001000)), literal(++i))).add(
    +                           shr(bitAnd(f, literal(0x00002000)), literal(++i))).add(
    +                           shr(bitAnd(f, literal(0x00004000)), literal(++i))).add(
    +                           shr(bitAnd(f, literal(0x00008000)), literal(++i))).add(
    +                           shr(bitAnd(f, literal(0x00010000)), literal(++i))).add(
    +                           shr(bitAnd(f, literal(0x00020000)), literal(++i))).add(
    +                           shr(bitAnd(f, literal(0x00040000)), literal(++i))).add(
    +                           shr(bitAnd(f, literal(0x00080000)), literal(++i))).add(
    +                           shr(bitAnd(f, literal(0x00100000)), literal(++i))).add(
    +                           shr(bitAnd(f, literal(0x00200000)), literal(++i))).add(
    +                           shr(bitAnd(f, literal(0x00400000)), literal(++i))).add(
    +                           shr(bitAnd(f, literal(0x00800000)), literal(++i))).add(
    +                           shr(bitAnd(f, literal(0x01000000)), literal(++i))).add(
    +                           shr(bitAnd(f, literal(0x02000000)), literal(++i))).add(
    +                           shr(bitAnd(f, literal(0x04000000)), literal(++i))).add(
    +                           shr(bitAnd(f, literal(0x08000000)), literal(++i))).add(
    +                           shr(bitAnd(f, literal(0x10000000)), literal(++i))).add(
    +                           shr(bitAnd(f, literal(0x20000000)), literal(++i))).add(
    +                           shr(bitAnd(f, literal(0x40000000)), literal(++i))).add(
    +                           shr(bitAnd(f, literal(0x80000000)), literal(++i)));
    +                }
    +                else if (field.getType() == Long.class) {
    +                    @SuppressWarnings("unchecked")
    +                    Field<Long> f = (Field<Long>) field;
    +
    +                    long i = 0;
    +                    return bitAnd(f, literal(0x0000000000000001L)).add(
    +                           shr(bitAnd(f, literal(0x0000000000000002L)), literal(++i))).add(
    +                           shr(bitAnd(f, literal(0x0000000000000004L)), literal(++i))).add(
    +                           shr(bitAnd(f, literal(0x0000000000000008L)), literal(++i))).add(
    +                           shr(bitAnd(f, literal(0x0000000000000010L)), literal(++i))).add(
    +                           shr(bitAnd(f, literal(0x0000000000000020L)), literal(++i))).add(
    +                           shr(bitAnd(f, literal(0x0000000000000040L)), literal(++i))).add(
    +                           shr(bitAnd(f, literal(0x0000000000000080L)), literal(++i))).add(
    +                           shr(bitAnd(f, literal(0x0000000000000100L)), literal(++i))).add(
    +                           shr(bitAnd(f, literal(0x0000000000000200L)), literal(++i))).add(
    +                           shr(bitAnd(f, literal(0x0000000000000400L)), literal(++i))).add(
    +                           shr(bitAnd(f, literal(0x0000000000000800L)), literal(++i))).add(
    +                           shr(bitAnd(f, literal(0x0000000000001000L)), literal(++i))).add(
    +                           shr(bitAnd(f, literal(0x0000000000002000L)), literal(++i))).add(
    +                           shr(bitAnd(f, literal(0x0000000000004000L)), literal(++i))).add(
    +                           shr(bitAnd(f, literal(0x0000000000008000L)), literal(++i))).add(
    +                           shr(bitAnd(f, literal(0x0000000000010000L)), literal(++i))).add(
    +                           shr(bitAnd(f, literal(0x0000000000020000L)), literal(++i))).add(
    +                           shr(bitAnd(f, literal(0x0000000000040000L)), literal(++i))).add(
    +                           shr(bitAnd(f, literal(0x0000000000080000L)), literal(++i))).add(
    +                           shr(bitAnd(f, literal(0x0000000000100000L)), literal(++i))).add(
    +                           shr(bitAnd(f, literal(0x0000000000200000L)), literal(++i))).add(
    +                           shr(bitAnd(f, literal(0x0000000000400000L)), literal(++i))).add(
    +                           shr(bitAnd(f, literal(0x0000000000800000L)), literal(++i))).add(
    +                           shr(bitAnd(f, literal(0x0000000001000000L)), literal(++i))).add(
    +                           shr(bitAnd(f, literal(0x0000000002000000L)), literal(++i))).add(
    +                           shr(bitAnd(f, literal(0x0000000004000000L)), literal(++i))).add(
    +                           shr(bitAnd(f, literal(0x0000000008000000L)), literal(++i))).add(
    +                           shr(bitAnd(f, literal(0x0000000010000000L)), literal(++i))).add(
    +                           shr(bitAnd(f, literal(0x0000000020000000L)), literal(++i))).add(
    +                           shr(bitAnd(f, literal(0x0000000040000000L)), literal(++i))).add(
    +                           shr(bitAnd(f, literal(0x0000000080000000L)), literal(++i))).add(
    +                           shr(bitAnd(f, literal(0x0000000100000000L)), literal(++i))).add(
    +                           shr(bitAnd(f, literal(0x0000000200000000L)), literal(++i))).add(
    +                           shr(bitAnd(f, literal(0x0000000400000000L)), literal(++i))).add(
    +                           shr(bitAnd(f, literal(0x0000000800000000L)), literal(++i))).add(
    +                           shr(bitAnd(f, literal(0x0000001000000000L)), literal(++i))).add(
    +                           shr(bitAnd(f, literal(0x0000002000000000L)), literal(++i))).add(
    +                           shr(bitAnd(f, literal(0x0000004000000000L)), literal(++i))).add(
    +                           shr(bitAnd(f, literal(0x0000008000000000L)), literal(++i))).add(
    +                           shr(bitAnd(f, literal(0x0000010000000000L)), literal(++i))).add(
    +                           shr(bitAnd(f, literal(0x0000020000000000L)), literal(++i))).add(
    +                           shr(bitAnd(f, literal(0x0000040000000000L)), literal(++i))).add(
    +                           shr(bitAnd(f, literal(0x0000080000000000L)), literal(++i))).add(
    +                           shr(bitAnd(f, literal(0x0000100000000000L)), literal(++i))).add(
    +                           shr(bitAnd(f, literal(0x0000200000000000L)), literal(++i))).add(
    +                           shr(bitAnd(f, literal(0x0000400000000000L)), literal(++i))).add(
    +                           shr(bitAnd(f, literal(0x0000800000000000L)), literal(++i))).add(
    +                           shr(bitAnd(f, literal(0x0001000000000000L)), literal(++i))).add(
    +                           shr(bitAnd(f, literal(0x0002000000000000L)), literal(++i))).add(
    +                           shr(bitAnd(f, literal(0x0004000000000000L)), literal(++i))).add(
    +                           shr(bitAnd(f, literal(0x0008000000000000L)), literal(++i))).add(
    +                           shr(bitAnd(f, literal(0x0010000000000000L)), literal(++i))).add(
    +                           shr(bitAnd(f, literal(0x0020000000000000L)), literal(++i))).add(
    +                           shr(bitAnd(f, literal(0x0040000000000000L)), literal(++i))).add(
    +                           shr(bitAnd(f, literal(0x0080000000000000L)), literal(++i))).add(
    +                           shr(bitAnd(f, literal(0x0100000000000000L)), literal(++i))).add(
    +                           shr(bitAnd(f, literal(0x0200000000000000L)), literal(++i))).add(
    +                           shr(bitAnd(f, literal(0x0400000000000000L)), literal(++i))).add(
    +                           shr(bitAnd(f, literal(0x0800000000000000L)), literal(++i))).add(
    +                           shr(bitAnd(f, literal(0x1000000000000000L)), literal(++i))).add(
    +                           shr(bitAnd(f, literal(0x2000000000000000L)), literal(++i))).add(
    +                           shr(bitAnd(f, literal(0x4000000000000000L)), literal(++i))).add(
    +                           shr(bitAnd(f, literal(0x8000000000000000L)), literal(++i))).cast(Integer.class);
    +                }
    +                else {
    +                    // Currently not supported
    +                    return function("bit_count", getDataType(), getArguments());
    +                }
    +            }
    +        }
    +    }
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/impl/CaseConditionStepImpl.java b/jOOQ/src/main/java/org/jooq/impl/CaseConditionStepImpl.java
    new file mode 100644
    index 00000000000..07e0c113fc1
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/impl/CaseConditionStepImpl.java
    @@ -0,0 +1,159 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq.impl;
    +
    +import static org.jooq.impl.Factory.val;
    +
    +import java.util.ArrayList;
    +import java.util.List;
    +
    +import org.jooq.Attachable;
    +import org.jooq.BindContext;
    +import org.jooq.CaseConditionStep;
    +import org.jooq.Condition;
    +import org.jooq.Field;
    +import org.jooq.RenderContext;
    +
    +class CaseConditionStepImpl<T> extends AbstractField<T> implements CaseConditionStep<T> {
    +
    +    /**
    +     * Generated UID
    +     */
    +    private static final long     serialVersionUID = -1735676153683257465L;
    +
    +    private final List<Condition> conditions;
    +    private final List<Field<T>>  results;
    +    private Field<T>              otherwise;
    +
    +    CaseConditionStepImpl(Condition condition, Field<T> result) {
    +        super("case", result.getDataType());
    +
    +        this.conditions = new ArrayList<Condition>();
    +        this.results = new ArrayList<Field<T>>();
    +
    +        when(condition, result);
    +    }
    +
    +    @Override
    +    public final List<Attachable> getAttachables() {
    +        List<Attachable> result = new ArrayList<Attachable>();
    +
    +        result.addAll(getAttachables(conditions));
    +        result.addAll(getAttachables(results));
    +        result.addAll(getAttachables(otherwise));
    +
    +        return result;
    +    }
    +
    +    @Override
    +    public final CaseConditionStep<T> when(Condition condition, T result) {
    +        return when(condition, val(result));
    +    }
    +
    +    @Override
    +    public final CaseConditionStep<T> when(Condition condition, Field<T> result) {
    +        conditions.add(condition);
    +        results.add(result);
    +
    +        return this;
    +    }
    +
    +    @Override
    +    public final Field<T> otherwise(T result) {
    +        return otherwise(val(result));
    +    }
    +
    +    @Override
    +    public final Field<T> otherwise(Field<T> result) {
    +        this.otherwise = result;
    +
    +        return this;
    +    }
    +
    +    @Override
    +    public final void bind(BindContext context) {
    +        for (int i = 0; i < conditions.size(); i++) {
    +            context.bind(conditions.get(i));
    +            context.bind(results.get(i));
    +        }
    +
    +        if (otherwise != null) {
    +            context.bind(otherwise);
    +        }
    +    }
    +
    +    @Override
    +    public final void toSQL(RenderContext context) {
    +        context.formatIndentLockStart()
    +               .keyword("case")
    +               .formatIndentLockStart();
    +
    +        int size = conditions.size();
    +        for (int i = 0; i < size; i++) {
    +            if (i > 0) {
    +                context.formatNewLine();
    +            }
    +
    +            context.keyword(" when ")
    +                   .sql(conditions.get(i))
    +                   .keyword(" then ")
    +                   .sql(results.get(i));
    +        }
    +
    +        if (otherwise != null) {
    +            context.formatNewLine()
    +                   .keyword(" else ")
    +                   .sql(otherwise);
    +        }
    +
    +        context.formatIndentLockEnd();
    +
    +        if (size > 1 || otherwise != null) {
    +            context.formatSeparator();
    +        }
    +        else {
    +            context.sql(" ");
    +        }
    +
    +        context.keyword("end")
    +               .formatIndentLockEnd();
    +    }
    +
    +    @Override
    +    public final boolean isNullLiteral() {
    +        return false;
    +    }
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/impl/CaseImpl.java b/jOOQ/src/main/java/org/jooq/impl/CaseImpl.java
    new file mode 100644
    index 00000000000..c4325ab7169
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/impl/CaseImpl.java
    @@ -0,0 +1,73 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq.impl;
    +
    +import static org.jooq.impl.Factory.val;
    +
    +import org.jooq.Case;
    +import org.jooq.CaseConditionStep;
    +import org.jooq.CaseValueStep;
    +import org.jooq.Condition;
    +import org.jooq.Field;
    +
    +/**
    + * @author Lukas Eder
    + */
    +class CaseImpl implements Case {
    +
    +    CaseImpl() {
    +    }
    +
    +    @Override
    +    public final <V> CaseValueStep<V> value(V value) {
    +        return value(val(value));
    +    }
    +
    +    @Override
    +    public final <V> CaseValueStep<V> value(Field<V> value) {
    +        return new CaseValueStepImpl<V>(value);
    +    }
    +
    +    @Override
    +    public final <T> CaseConditionStep<T> when(Condition condition, T result) {
    +        return when(condition, val(result));
    +    }
    +
    +    @Override
    +    public final <T> CaseConditionStep<T> when(Condition condition, Field<T> result) {
    +        return new CaseConditionStepImpl<T>(condition, result);
    +    }
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/impl/CaseValueStepImpl.java b/jOOQ/src/main/java/org/jooq/impl/CaseValueStepImpl.java
    new file mode 100644
    index 00000000000..6375b6034aa
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/impl/CaseValueStepImpl.java
    @@ -0,0 +1,74 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq.impl;
    +
    +import static org.jooq.impl.Factory.val;
    +
    +import org.jooq.CaseValueStep;
    +import org.jooq.CaseWhenStep;
    +import org.jooq.Field;
    +
    +/**
    + * @author Lukas Eder
    + */
    +class CaseValueStepImpl<V> implements CaseValueStep<V> {
    +
    +    private final Field<V> value;
    +
    +    CaseValueStepImpl(Field<V> value) {
    +        this.value = value;
    +    }
    +
    +    @Override
    +    public <T> CaseWhenStep<V, T> when(V compareValue, T result) {
    +        return when(val(compareValue), val(result));
    +    }
    +
    +    @Override
    +    public <T> CaseWhenStep<V, T> when(V compareValue, Field<T> result) {
    +        return when(val(compareValue), result);
    +    }
    +
    +    @Override
    +    public <T> CaseWhenStep<V, T> when(Field<V> compareValue, T result) {
    +        return when(compareValue, val(result));
    +    }
    +
    +    @Override
    +    public <T> CaseWhenStep<V, T> when(Field<V> compareValue, Field<T> result) {
    +        return new CaseWhenStepImpl<V, T>(value, compareValue, result);
    +    }
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/impl/CaseWhenStepImpl.java b/jOOQ/src/main/java/org/jooq/impl/CaseWhenStepImpl.java
    new file mode 100644
    index 00000000000..69de2c8a383
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/impl/CaseWhenStepImpl.java
    @@ -0,0 +1,219 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq.impl;
    +
    +import static org.jooq.impl.Factory.val;
    +
    +import java.util.ArrayList;
    +import java.util.List;
    +
    +import org.jooq.Attachable;
    +import org.jooq.BindContext;
    +import org.jooq.CaseWhenStep;
    +import org.jooq.Field;
    +import org.jooq.RenderContext;
    +
    +class CaseWhenStepImpl<V, T> extends AbstractField<T> implements CaseWhenStep<V, T> {
    +
    +    /**
    +     * Generated UID
    +     */
    +    private static final long    serialVersionUID = -3817194006479624228L;
    +
    +    private final Field<V>       value;
    +    private final List<Field<V>> compareValues;
    +    private final List<Field<T>> results;
    +    private Field<T>             otherwise;
    +
    +    CaseWhenStepImpl(Field<V> value, Field<V> compareValue, Field<T> result) {
    +        super("case", result.getDataType());
    +
    +        this.value = value;
    +        this.compareValues = new ArrayList<Field<V>>();
    +        this.results = new ArrayList<Field<T>>();
    +
    +        when(compareValue, result);
    +    }
    +
    +    @Override
    +    public final List<Attachable> getAttachables() {
    +        List<Attachable> result = new ArrayList<Attachable>();
    +
    +        result.addAll(getAttachables(value));
    +        result.addAll(getAttachables(compareValues));
    +        result.addAll(getAttachables(results));
    +        result.addAll(getAttachables(otherwise));
    +
    +        return result;
    +    }
    +
    +    @Override
    +    public final Field<T> otherwise(T result) {
    +        return otherwise(val(result));
    +    }
    +
    +    @Override
    +    public final Field<T> otherwise(Field<T> result) {
    +        this.otherwise = result;
    +
    +        return this;
    +    }
    +
    +    @Override
    +    public final CaseWhenStep<V, T> when(V compareValue, T result) {
    +        return when(val(compareValue), val(result));
    +    }
    +
    +    @Override
    +    public final CaseWhenStep<V, T> when(V compareValue, Field<T> result) {
    +        return when(val(compareValue), result);
    +    }
    +
    +    @Override
    +    public final CaseWhenStep<V, T> when(Field<V> compareValue, T result) {
    +        return when(compareValue, val(result));
    +    }
    +
    +    @Override
    +    public final CaseWhenStep<V, T> when(Field<V> compareValue, Field<T> result) {
    +        compareValues.add(compareValue);
    +        results.add(result);
    +
    +        return this;
    +    }
    +
    +    @Override
    +    public final void bind(BindContext context) {
    +        switch (context.getDialect()) {
    +
    +            // The DERBY dialect doesn't support the simple CASE clause
    +            case DERBY: {
    +                for (int i = 0; i < compareValues.size(); i++) {
    +                    context.bind(value);
    +                    context.bind(compareValues.get(i));
    +                    context.bind(results.get(i));
    +                }
    +
    +                break;
    +            }
    +
    +            default: {
    +                context.bind(value);
    +
    +                for (int i = 0; i < compareValues.size(); i++) {
    +                    context.bind(compareValues.get(i));
    +                    context.bind(results.get(i));
    +                }
    +
    +                break;
    +            }
    +        }
    +
    +        if (otherwise != null) {
    +            context.bind(otherwise);
    +        }
    +    }
    +
    +    @Override
    +    public final void toSQL(RenderContext context) {
    +        context.formatIndentLockStart()
    +               .keyword("case");
    +
    +        int size = compareValues.size();
    +        switch (context.getDialect()) {
    +
    +            // The DERBY dialect doesn't support the simple CASE clause
    +            case DERBY: {
    +                context.formatIndentLockStart();
    +
    +                for (int i = 0; i < size; i++) {
    +                    if (i > 0) {
    +                        context.formatNewLine();
    +                    }
    +
    +                    context.keyword(" when ");
    +                    context.sql(value.equal(compareValues.get(i)));
    +                    context.keyword(" then ");
    +                    context.sql(results.get(i));
    +                }
    +
    +                break;
    +            }
    +
    +            default: {
    +                context.sql(" ")
    +                       .sql(value)
    +                       .formatIndentLockStart();
    +
    +                for (int i = 0; i < size; i++) {
    +                    if (i > 0) {
    +                        context.formatNewLine();
    +                    }
    +
    +                    context.keyword(" when ");
    +                    context.sql(compareValues.get(i));
    +                    context.keyword(" then ");
    +                    context.sql(results.get(i));
    +                }
    +
    +                break;
    +            }
    +        }
    +
    +        if (otherwise != null) {
    +            context.formatNewLine()
    +                   .keyword(" else ")
    +                   .sql(otherwise);
    +        }
    +
    +        context.formatIndentLockEnd();
    +
    +        if (size > 1 || otherwise != null) {
    +            context.formatSeparator();
    +        }
    +        else {
    +            context.sql(" ");
    +        }
    +
    +        context.keyword("end")
    +               .formatIndentLockEnd();
    +    }
    +
    +    @Override
    +    public final boolean isNullLiteral() {
    +        return false;
    +    }
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/impl/Cast.java b/jOOQ/src/main/java/org/jooq/impl/Cast.java
    new file mode 100644
    index 00000000000..2185ce7efd1
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/impl/Cast.java
    @@ -0,0 +1,199 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq.impl;
    +
    +import static java.util.Arrays.asList;
    +import static org.jooq.impl.Factory.literal;
    +import static org.jooq.impl.SQLDataType.BOOLEAN;
    +import static org.jooq.impl.SQLDataType.DOUBLE;
    +import static org.jooq.impl.SQLDataType.FLOAT;
    +import static org.jooq.impl.SQLDataType.REAL;
    +import static org.jooq.impl.SQLDataType.VARCHAR;
    +
    +import java.util.List;
    +
    +import org.jooq.Attachable;
    +import org.jooq.BindContext;
    +import org.jooq.DataType;
    +import org.jooq.Field;
    +import org.jooq.RenderContext;
    +import org.jooq.RenderContext.CastMode;
    +import org.jooq.SQLDialect;
    +
    +/**
    + * @author Lukas Eder
    + */
    +class Cast<T> extends AbstractField<T> {
    +
    +    /**
    +     * Generated UID
    +     */
    +    private static final long serialVersionUID = -6776617606751542856L;
    +
    +    private final Field<?>    field;
    +
    +    public Cast(Field<?> field, DataType<T> type) {
    +        super("cast", type);
    +
    +        this.field = field;
    +    }
    +
    +    @Override
    +    public final List<Attachable> getAttachables() {
    +        return getAttachables(field);
    +    }
    +
    +    @SuppressWarnings("unchecked")
    +    @Override
    +    public final void toSQL(RenderContext context) {
    +    	// Avoid casting bind values inside an explicit cast...
    +        CastMode castMode = context.castMode();
    +
    +        if (context.getDialect() == SQLDialect.DERBY) {
    +
    +            // [#857] Interestingly, Derby does not allow for casting numeric
    +            // types directly to VARCHAR. An intermediary cast to CHAR is needed
    +            if (field.getDataType().isNumeric() &&
    +                VARCHAR.equals(getSQLDataType())) {
    +
    +                context.keyword("trim(cast(")
    +                       .keyword("cast(")
    +                       .castMode(CastMode.NEVER)
    +                       .sql(field)
    +                       .castMode(castMode)
    +                       .keyword(" as char(38))")
    +                       .keyword(" as ")
    +                       .keyword(getDataType(context).getCastTypeName(context))
    +                       .sql("))");
    +
    +                return;
    +            }
    +
    +            // [#888] ... neither does casting character types to FLOAT (and similar)
    +            else if (field.getDataType().isString() &&
    +                     asList(FLOAT, DOUBLE, REAL).contains(getSQLDataType())) {
    +
    +                context.keyword("cast(")
    +                       .keyword("cast(")
    +                       .castMode(CastMode.NEVER)
    +                       .sql(field)
    +                       .castMode(castMode)
    +                       .keyword(" as decimal)")
    +                       .keyword(" as ")
    +                       .keyword(getDataType(context).getCastTypeName(context))
    +                       .sql(")");
    +
    +                return;
    +            }
    +
    +            // [#859] ... neither does casting numeric types to BOOLEAN
    +            else if (field.getDataType().isNumeric() &&
    +                     BOOLEAN.equals(getSQLDataType())) {
    +
    +                context.sql(asDecodeNumberToBoolean());
    +                return;
    +            }
    +
    +            // [#859] ... neither does casting character types to BOOLEAN
    +            else if (field.getDataType().isString() &&
    +                     BOOLEAN.equals(getSQLDataType())) {
    +
    +                context.sql(asDecodeVarcharToBoolean());
    +                return;
    +            }
    +        }
    +
    +        // Default rendering, if no special case has applied yet
    +        context.keyword("cast(")
    +               .castMode(CastMode.NEVER)
    +               .sql(field)
    +               .castMode(castMode)
    +               .keyword(" as ")
    +               .keyword(getDataType(context).getCastTypeName(context))
    +               .sql(")");
    +    }
    +
    +    @SuppressWarnings("unchecked")
    +    private Field<Boolean> asDecodeNumberToBoolean() {
    +
    +        // [#859] 0 => false, null => null, all else is true
    +        return Factory.decode().value((Field<Integer>) field)
    +                               .when(literal(0), literal(false))
    +                               .when(literal((Integer) null), literal((Boolean) null))
    +                               .otherwise(literal(true));
    +    }
    +
    +    @SuppressWarnings("unchecked")
    +    private Field<Boolean> asDecodeVarcharToBoolean() {
    +        Field<String> s = (Field<String>) field;
    +
    +        // [#859] '0', 'f', 'false' => false, null => null, all else is true
    +        return Factory.decode().when(s.equal(literal("'0'")), literal(false))
    +                               .when(Factory.lower(s).equal(literal("'false'")), literal(false))
    +                               .when(Factory.lower(s).equal(literal("'f'")), literal(false))
    +                               .when(s.isNull(), literal((Boolean) null))
    +                               .otherwise(literal(true));
    +    }
    +
    +    @Override
    +    public final void bind(BindContext context) {
    +        if (context.getDialect() == SQLDialect.DERBY) {
    +
    +            // [#859] casting numeric types to BOOLEAN
    +            if (field.getDataType().isNumeric() &&
    +                BOOLEAN.equals(getSQLDataType())) {
    +
    +                context.bind(asDecodeNumberToBoolean());
    +                return;
    +            }
    +
    +            // [#859] casting character types to BOOLEAN
    +            else if (field.getDataType().isString() &&
    +                     BOOLEAN.equals(getSQLDataType())) {
    +
    +                context.bind(asDecodeVarcharToBoolean());
    +                return;
    +            }
    +        }
    +
    +        context.bind(field);
    +    }
    +
    +    @Override
    +    public final boolean isNullLiteral() {
    +        return field.isNullLiteral();
    +    }
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/impl/Ceil.java b/jOOQ/src/main/java/org/jooq/impl/Ceil.java
    new file mode 100644
    index 00000000000..3a0dd11162a
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/impl/Ceil.java
    @@ -0,0 +1,78 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq.impl;
    +
    +import static org.jooq.impl.Factory.function;
    +
    +import org.jooq.Configuration;
    +import org.jooq.Field;
    +
    +/**
    + * @author Lukas Eder
    + */
    +class Ceil<T extends Number> extends AbstractFunction<T> {
    +
    +    /**
    +     * Generated UID
    +     */
    +    private static final long serialVersionUID = -7273879239726265322L;
    +
    +    private final Field<T>    argument;
    +
    +    Ceil(Field<T> argument) {
    +        super("ceil", argument.getDataType(), argument);
    +
    +        this.argument = argument;
    +    }
    +
    +    @Override
    +    final Field<T> getFunction0(Configuration configuration) {
    +        switch (configuration.getDialect()) {
    +
    +            // evaluate "ceil" if unavailable
    +            case SQLITE:
    +                return Factory.round(argument.add(0.499999999999999));
    +
    +            case ASE:
    +            case H2:
    +            case SQLSERVER:
    +                return function("ceiling", getDataType(), argument);
    +
    +            default:
    +                return function("ceil", getDataType(), argument);
    +        }
    +    }
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/impl/CombineOperator.java b/jOOQ/src/main/java/org/jooq/impl/CombineOperator.java
    new file mode 100644
    index 00000000000..db0375784cb
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/impl/CombineOperator.java
    @@ -0,0 +1,86 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +
    +package org.jooq.impl;
    +
    +import org.jooq.SQLDialect;
    +import org.jooq.Select;
    +
    +/**
    + * A combine operator is used to combine result sets of two arbitrary
    + * {@link Select} queries.
    + *
    + * @author Lukas Eder
    + */
    +enum CombineOperator {
    +
    +    /**
    +     * Unite the two {@link Select}'s disallowing duplicate records
    +     */
    +    UNION("union"),
    +
    +    /**
    +     * Unite the two {@link Select}'s allowing duplicate records
    +     */
    +    UNION_ALL("union all"),
    +
    +    /**
    +     * Remove all records encountered in the second {@link Select} from the
    +     * first {@link Select}
    +     */
    +    EXCEPT("except"),
    +
    +    /**
    +     * Retain all records encountered in both {@link Select}'s
    +     */
    +    INTERSECT("intersect");
    +
    +    private final String sql;
    +
    +    private CombineOperator(String sql) {
    +        this.sql = sql;
    +    }
    +
    +    public String toSQL(SQLDialect dialect) {
    +        if (this == EXCEPT) {
    +            if (dialect == SQLDialect.ORACLE) {
    +                return "minus";
    +            }
    +        }
    +
    +        return sql;
    +    }
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/impl/CombinedCondition.java b/jOOQ/src/main/java/org/jooq/impl/CombinedCondition.java
    new file mode 100644
    index 00000000000..8a5051e9639
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/impl/CombinedCondition.java
    @@ -0,0 +1,137 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +
    +package org.jooq.impl;
    +
    +import static org.jooq.impl.Factory.trueCondition;
    +
    +import java.util.ArrayList;
    +import java.util.Collection;
    +import java.util.List;
    +
    +import org.jooq.Attachable;
    +import org.jooq.BindContext;
    +import org.jooq.Condition;
    +import org.jooq.Operator;
    +import org.jooq.RenderContext;
    +
    +/**
    + * @author Lukas Eder
    + */
    +class CombinedCondition extends AbstractCondition {
    +
    +    private static final long     serialVersionUID = -7373293246207052549L;
    +
    +    private final Operator        operator;
    +    private final List<Condition> conditions;
    +
    +    CombinedCondition(Operator operator, Collection<Condition> conditions) {
    +        if (operator == null) {
    +            throw new IllegalArgumentException("The argument 'operator' must not be null");
    +        }
    +        if (conditions == null) {
    +            throw new IllegalArgumentException("The argument 'conditions' must not be null");
    +        }
    +        for (Condition condition : conditions) {
    +            if (condition == null) {
    +                throw new IllegalArgumentException("The argument 'conditions' must contain null");
    +            }
    +        }
    +
    +        this.operator = operator;
    +        this.conditions = new ArrayList<Condition>();
    +
    +        init(operator, conditions);
    +    }
    +
    +    private final void init(Operator op, Collection<Condition> cond) {
    +        for (Condition condition : cond) {
    +            if (condition instanceof CombinedCondition) {
    +                CombinedCondition combinedCondition = (CombinedCondition) condition;
    +                if (combinedCondition.operator == op) {
    +                    this.conditions.addAll(combinedCondition.conditions);
    +                }
    +                else {
    +                    this.conditions.add(condition);
    +                }
    +            }
    +            else {
    +                this.conditions.add(condition);
    +            }
    +        }
    +    }
    +
    +    @Override
    +    public final List<Attachable> getAttachables() {
    +        return getAttachables(conditions);
    +    }
    +
    +    @Override
    +    public final void bind(BindContext context) {
    +        context.bind(conditions);
    +    }
    +
    +    @Override
    +    public final void toSQL(RenderContext context) {
    +        if (conditions.isEmpty()) {
    +            context.sql(trueCondition());
    +        }
    +        else if (conditions.size() == 1) {
    +            context.sql(conditions.get(0));
    +        }
    +        else {
    +            context.sql("(")
    +                   .formatIndentLockStart();
    +
    +            String operatorName = " " + operator.name().toLowerCase() + " ";
    +            String separator = "";
    +
    +            for (int i = 0; i < conditions.size(); i++) {
    +                context.keyword(separator);
    +
    +                if (i > 0) {
    +                    context.formatNewLine();
    +                }
    +
    +                context.sql(conditions.get(i));
    +                separator = operatorName;
    +            }
    +
    +            context.sql(")")
    +                   .formatIndentLockEnd();
    +        }
    +    }
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/impl/CompareCondition.java b/jOOQ/src/main/java/org/jooq/impl/CompareCondition.java
    new file mode 100644
    index 00000000000..40dec913403
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/impl/CompareCondition.java
    @@ -0,0 +1,143 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +
    +package org.jooq.impl;
    +
    +import static java.util.Arrays.asList;
    +import static org.jooq.Comparator.EQUALS;
    +import static org.jooq.Comparator.LIKE;
    +import static org.jooq.Comparator.NOT_EQUALS;
    +import static org.jooq.Comparator.NOT_LIKE;
    +import static org.jooq.SQLDialect.ASE;
    +import static org.jooq.SQLDialect.DB2;
    +import static org.jooq.SQLDialect.DERBY;
    +import static org.jooq.SQLDialect.POSTGRES;
    +
    +import java.util.List;
    +
    +import org.jooq.Attachable;
    +import org.jooq.BindContext;
    +import org.jooq.Comparator;
    +import org.jooq.Field;
    +import org.jooq.RenderContext;
    +import org.jooq.SQLDialect;
    +
    +/**
    + * @author Lukas Eder
    + */
    +class CompareCondition extends AbstractCondition {
    +
    +    private static final long serialVersionUID = -747240442279619486L;
    +
    +    private final Field<?>    field1;
    +    private final Field<?>    field2;
    +    private final Comparator  comparator;
    +    private final Character   escape;
    +
    +    CompareCondition(Field<?> field1, Field<?> field2, Comparator comparator) {
    +        this(field1, field2, comparator, null);
    +    }
    +
    +    CompareCondition(Field<?> field1, Field<?> field2, Comparator comparator, Character escape) {
    +        this.field1 = field1;
    +        this.field2 = field2;
    +        this.comparator = comparator;
    +        this.escape = escape;
    +    }
    +
    +    @Override
    +    public final List<Attachable> getAttachables() {
    +        return getAttachables(field1, field2);
    +    }
    +
    +    @Override
    +    public final void bind(BindContext context) {
    +        context.bind(field1);
    +
    +        // [#1084] Bind field2 only if it is actually rendered
    +        if (!field2.isNullLiteral() || !asList(EQUALS, NOT_EQUALS).contains(comparator)) {
    +            context.bind(field2);
    +        }
    +    }
    +
    +    @Override
    +    public final void toSQL(RenderContext context) {
    +        SQLDialect dialect = context.getDialect();
    +        Field<?> lhs = field1;
    +
    +        // [#1159] Some dialects cannot auto-convert the LHS operand to a
    +        // VARCHAR when applying a LIKE predicate
    +        // [#293] TODO: This could apply to other operators, too
    +        if ((comparator == LIKE || comparator == NOT_LIKE)
    +                && field1.getType() != String.class
    +                && asList(ASE, DERBY, POSTGRES).contains(dialect)) {
    +
    +            lhs = lhs.cast(String.class);
    +        }
    +
    +        context.sql(lhs)
    +               .sql(" ");
    +
    +        if (field2.isNullLiteral()) {
    +            switch (comparator) {
    +                case EQUALS:
    +                    context.keyword("is null");
    +                    return;
    +
    +                case NOT_EQUALS:
    +                    context.keyword("is not null");
    +                    return;
    +            }
    +        }
    +
    +        // [#1131] Some weird DB2 issue stops "LIKE" from working with a
    +        // concatenated search expression, if the expression is more than 4000
    +        // characters long
    +        boolean castRhs = (dialect == DB2 && field2 instanceof Concat);
    +
    +        context.keyword(comparator.toSQL())
    +               .sql(" ")
    +               .keyword(castRhs ? "cast(" : "")
    +               .sql(field2)
    +               .keyword(castRhs ? " as varchar(4000))" : "");
    +
    +        if (escape != null) {
    +            context.keyword(" escape '")
    +                   .sql(escape)
    +                   .sql("'");
    +        }
    +    }
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/impl/Concat.java b/jOOQ/src/main/java/org/jooq/impl/Concat.java
    new file mode 100644
    index 00000000000..86b4ca4f692
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/impl/Concat.java
    @@ -0,0 +1,87 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq.impl;
    +
    +import static org.jooq.impl.ExpressionOperator.ADD;
    +import static org.jooq.impl.ExpressionOperator.CONCAT;
    +import static org.jooq.impl.Factory.castAll;
    +import static org.jooq.impl.Factory.function;
    +
    +import org.jooq.Configuration;
    +import org.jooq.Field;
    +
    +/**
    + * @author Lukas Eder
    + */
    +class Concat extends AbstractFunction<String> {
    +
    +    /**
    +     * Generated UID
    +     */
    +    private static final long serialVersionUID = -7273879239726265322L;
    +
    +    Concat(Field<?>... arguments) {
    +        super("concat", SQLDataType.VARCHAR, arguments);
    +    }
    +
    +    @SuppressWarnings("unchecked")
    +    @Override
    +    final Field<String> getFunction0(Configuration configuration) {
    +
    +        // [#461] Type cast the concat expression, if this isn't a VARCHAR field
    +        Field<String>[] cast = castAll(String.class, getArguments());
    +
    +        // If there is only one argument, return it immediately
    +        if (cast.length == 1) {
    +            return cast[0];
    +        }
    +
    +        Field<String> first = cast[0];
    +        Field<String>[] others = new Field[cast.length - 1];
    +        System.arraycopy(cast, 1, others, 0, others.length);
    +
    +        switch (configuration.getDialect()) {
    +            case MYSQL:
    +                return function("concat", SQLDataType.VARCHAR, cast);
    +
    +            case SQLSERVER:
    +                return new Expression<String>(ADD, first, others);
    +
    +            default:
    +                return new Expression<String>(CONCAT, first, others);
    +        }
    +    }
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/impl/ConditionProviderImpl.java b/jOOQ/src/main/java/org/jooq/impl/ConditionProviderImpl.java
    new file mode 100644
    index 00000000000..65490694a0d
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/impl/ConditionProviderImpl.java
    @@ -0,0 +1,200 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +
    +package org.jooq.impl;
    +
    +import static org.jooq.impl.Factory.trueCondition;
    +
    +import java.util.Arrays;
    +import java.util.Collection;
    +import java.util.List;
    +
    +import org.jooq.Attachable;
    +import org.jooq.BindContext;
    +import org.jooq.Condition;
    +import org.jooq.ConditionProvider;
    +import org.jooq.Operator;
    +import org.jooq.RenderContext;
    +import org.jooq.Select;
    +
    +/**
    + * @author Lukas Eder
    + */
    +class ConditionProviderImpl extends AbstractQueryPart implements ConditionProvider, Condition {
    +
    +    private static final long serialVersionUID = 6073328960551062973L;
    +
    +    private Condition         condition;
    +
    +    ConditionProviderImpl() {
    +    }
    +
    +    final Condition getWhere() {
    +        if (condition == null) {
    +            return trueCondition();
    +        }
    +
    +        return condition;
    +    }
    +
    +    // -------------------------------------------------------------------------
    +    // Attachable API
    +    // -------------------------------------------------------------------------
    +
    +    @Override
    +    public final List<Attachable> getAttachables() {
    +        return getAttachables(condition);
    +    }
    +
    +    // -------------------------------------------------------------------------
    +    // ConditionProvider API
    +    // -------------------------------------------------------------------------
    +
    +    @Override
    +    public final void addConditions(Condition... conditions) {
    +        addConditions(Operator.AND, conditions);
    +    }
    +
    +    @Override
    +    public final void addConditions(Collection<Condition> conditions) {
    +        addConditions(Operator.AND, conditions);
    +    }
    +
    +    @Override
    +    public final void addConditions(Operator operator, Condition... conditions) {
    +        addConditions(operator, Arrays.asList(conditions));
    +    }
    +
    +    @Override
    +    public final void addConditions(Operator operator, Collection<Condition> conditions) {
    +        if (!conditions.isEmpty()) {
    +            Condition c;
    +
    +            if (conditions.size() == 1) {
    +                c = conditions.iterator().next();
    +            }
    +            else {
    +                c = new CombinedCondition(operator, conditions);
    +            }
    +
    +            if (getWhere() instanceof TrueCondition) {
    +                condition = c;
    +            }
    +            else {
    +                condition = new CombinedCondition(operator, Arrays.asList(getWhere(), c));
    +            }
    +        }
    +    }
    +
    +    @Override
    +    public final void bind(BindContext context) {
    +        context.bind(getWhere());
    +    }
    +
    +    @Override
    +    public final void toSQL(RenderContext context) {
    +        context.sql(getWhere());
    +    }
    +
    +    // -------------------------------------------------------------------------
    +    // Condition API
    +    // -------------------------------------------------------------------------
    +
    +    @Override
    +    public final Condition and(Condition other) {
    +        return getWhere().and(other);
    +    }
    +
    +    @Override
    +    public final Condition and(String sql) {
    +        return getWhere().and(sql);
    +    }
    +
    +    @Override
    +    public final Condition and(String sql, Object... bindings) {
    +        return getWhere().and(sql, bindings);
    +    }
    +
    +    @Override
    +    public final Condition andNot(Condition other) {
    +        return getWhere().andNot(other);
    +    }
    +
    +    @Override
    +    public final Condition andExists(Select<?> select) {
    +        return getWhere().andExists(select);
    +    }
    +
    +    @Override
    +    public final Condition andNotExists(Select<?> select) {
    +        return getWhere().andNotExists(select);
    +    }
    +
    +    @Override
    +    public final Condition or(Condition other) {
    +        return getWhere().or(other);
    +    }
    +
    +    @Override
    +    public final Condition or(String sql) {
    +        return getWhere().or(sql);
    +    }
    +
    +    @Override
    +    public final Condition or(String sql, Object... bindings) {
    +        return getWhere().or(sql, bindings);
    +    }
    +
    +    @Override
    +    public final Condition orNot(Condition other) {
    +        return getWhere().orNot(other);
    +    }
    +
    +    @Override
    +    public final Condition orExists(Select<?> select) {
    +        return getWhere().orExists(select);
    +    }
    +
    +    @Override
    +    public final Condition orNotExists(Select<?> select) {
    +        return getWhere().orNotExists(select);
    +    }
    +
    +    @Override
    +    public final Condition not() {
    +        return getWhere().not();
    +    }
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/impl/ConnectionProxy.java b/jOOQ/src/main/java/org/jooq/impl/ConnectionProxy.java
    new file mode 100644
    index 00000000000..6b5f1566f48
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/impl/ConnectionProxy.java
    @@ -0,0 +1,367 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq.impl;
    +
    +import static org.jooq.conf.SettingsTools.executePreparedStatements;
    +
    +import java.sql.Array;
    +import java.sql.Blob;
    +import java.sql.CallableStatement;
    +import java.sql.Clob;
    +import java.sql.Connection;
    +import java.sql.DatabaseMetaData;
    +import java.sql.NClob;
    +import java.sql.PreparedStatement;
    +import java.sql.SQLClientInfoException;
    +import java.sql.SQLException;
    +import java.sql.SQLWarning;
    +import java.sql.SQLXML;
    +import java.sql.Savepoint;
    +import java.sql.Statement;
    +import java.sql.Struct;
    +import java.util.Map;
    +import java.util.Properties;
    +
    +import org.jooq.conf.Settings;
    +import org.jooq.conf.StatementType;
    +
    +/**
    + * A proxy for a JDBC {@link Connection} that handles creation of prepared
    + * statements according to the settings' {@link StatementType}
    + *
    + * @author Lukas Eder
    + */
    +class ConnectionProxy implements Connection {
    +
    +    private final Connection delegate;
    +    private final Settings settings;
    +
    +    ConnectionProxy(Connection delegate, Settings settings) {
    +        this.delegate = delegate;
    +        this.settings = settings;
    +    }
    +
    +    final Connection getDelegate() {
    +        return delegate;
    +    }
    +
    +    // ------------------------------------------------------------------------
    +    // XXX Creation of PreparedStatements
    +    // ------------------------------------------------------------------------
    +
    +    @Override
    +    public final PreparedStatement prepareStatement(String sql) throws SQLException {
    +        if (executePreparedStatements(settings)) {
    +            return delegate.prepareStatement(sql);
    +        }
    +        else {
    +            return new PreparedStatementProxy(delegate, sql);
    +        }
    +    }
    +
    +    @Override
    +    public final PreparedStatement prepareStatement(String sql, int resultSetType, int resultSetConcurrency)
    +        throws SQLException {
    +        if (executePreparedStatements(settings)) {
    +            return delegate.prepareStatement(sql, resultSetType, resultSetConcurrency);
    +        }
    +        else {
    +            return new PreparedStatementProxy(delegate, sql, resultSetType, resultSetConcurrency);
    +        }
    +    }
    +
    +    @Override
    +    public final PreparedStatement prepareStatement(String sql, int resultSetType, int resultSetConcurrency,
    +        int resultSetHoldability) throws SQLException {
    +        if (executePreparedStatements(settings)) {
    +            return delegate.prepareStatement(sql, resultSetType, resultSetConcurrency, resultSetHoldability);
    +        }
    +        else {
    +            return new PreparedStatementProxy(delegate, sql, resultSetType, resultSetConcurrency, resultSetHoldability);
    +        }
    +    }
    +
    +    @Override
    +    public final PreparedStatement prepareStatement(String sql, int autoGeneratedKeys) throws SQLException {
    +        if (executePreparedStatements(settings)) {
    +            return delegate.prepareStatement(sql, autoGeneratedKeys);
    +        }
    +        else {
    +            return new PreparedStatementProxy(delegate, sql, autoGeneratedKeys);
    +        }
    +    }
    +
    +    @Override
    +    public final PreparedStatement prepareStatement(String sql, int[] columnIndexes) throws SQLException {
    +        if (executePreparedStatements(settings)) {
    +            return delegate.prepareStatement(sql, columnIndexes);
    +        }
    +        else {
    +            return new PreparedStatementProxy(delegate, sql, columnIndexes);
    +        }
    +    }
    +
    +    @Override
    +    public final PreparedStatement prepareStatement(String sql, String[] columnNames) throws SQLException {
    +        if (executePreparedStatements(settings)) {
    +            return delegate.prepareStatement(sql, columnNames);
    +        }
    +        else {
    +            return new PreparedStatementProxy(delegate, sql, columnNames);
    +        }
    +    }
    +
    +    // ------------------------------------------------------------------------
    +    // XXX Other methods
    +    // ------------------------------------------------------------------------
    +
    +    @Override
    +    public final <T> T unwrap(Class<T> iface) throws SQLException {
    +        return delegate.unwrap(iface);
    +    }
    +
    +    @Override
    +    public final boolean isWrapperFor(Class<?> iface) throws SQLException {
    +        return delegate.isWrapperFor(iface);
    +    }
    +
    +    @Override
    +    public final Statement createStatement() throws SQLException {
    +        return delegate.createStatement();
    +    }
    +
    +    @Override
    +    public final CallableStatement prepareCall(String sql) throws SQLException {
    +        return delegate.prepareCall(sql);
    +    }
    +
    +    @Override
    +    public final String nativeSQL(String sql) throws SQLException {
    +        return delegate.nativeSQL(sql);
    +    }
    +
    +    @Override
    +    public final void setAutoCommit(boolean autoCommit) throws SQLException {
    +        delegate.setAutoCommit(autoCommit);
    +    }
    +
    +    @Override
    +    public final boolean getAutoCommit() throws SQLException {
    +        return delegate.getAutoCommit();
    +    }
    +
    +    @Override
    +    public final void commit() throws SQLException {
    +        delegate.commit();
    +    }
    +
    +    @Override
    +    public final void rollback() throws SQLException {
    +        delegate.rollback();
    +    }
    +
    +    @Override
    +    public final void close() throws SQLException {
    +        delegate.close();
    +    }
    +
    +    @Override
    +    public final boolean isClosed() throws SQLException {
    +        return delegate.isClosed();
    +    }
    +
    +    @Override
    +    public final DatabaseMetaData getMetaData() throws SQLException {
    +        return delegate.getMetaData();
    +    }
    +
    +    @Override
    +    public final void setReadOnly(boolean readOnly) throws SQLException {
    +        delegate.setReadOnly(readOnly);
    +    }
    +
    +    @Override
    +    public final boolean isReadOnly() throws SQLException {
    +        return delegate.isReadOnly();
    +    }
    +
    +    @Override
    +    public final void setCatalog(String catalog) throws SQLException {
    +        delegate.setCatalog(catalog);
    +    }
    +
    +    @Override
    +    public final String getCatalog() throws SQLException {
    +        return delegate.getCatalog();
    +    }
    +
    +    @Override
    +    public final void setTransactionIsolation(int level) throws SQLException {
    +        delegate.setTransactionIsolation(level);
    +    }
    +
    +    @Override
    +    public final int getTransactionIsolation() throws SQLException {
    +        return delegate.getTransactionIsolation();
    +    }
    +
    +    @Override
    +    public final SQLWarning getWarnings() throws SQLException {
    +        return delegate.getWarnings();
    +    }
    +
    +    @Override
    +    public final void clearWarnings() throws SQLException {
    +        delegate.clearWarnings();
    +    }
    +
    +    @Override
    +    public final Statement createStatement(int resultSetType, int resultSetConcurrency) throws SQLException {
    +        return delegate.createStatement(resultSetType, resultSetConcurrency);
    +    }
    +
    +    @Override
    +    public final CallableStatement prepareCall(String sql, int resultSetType, int resultSetConcurrency) throws SQLException {
    +        return delegate.prepareCall(sql, resultSetType, resultSetConcurrency);
    +    }
    +
    +    @Override
    +    public final Map<String, Class<?>> getTypeMap() throws SQLException {
    +        return delegate.getTypeMap();
    +    }
    +
    +    @Override
    +    public final void setTypeMap(Map<String, Class<?>> map) throws SQLException {
    +        delegate.setTypeMap(map);
    +    }
    +
    +    @Override
    +    public final void setHoldability(int holdability) throws SQLException {
    +        delegate.setHoldability(holdability);
    +    }
    +
    +    @Override
    +    public final int getHoldability() throws SQLException {
    +        return delegate.getHoldability();
    +    }
    +
    +    @Override
    +    public final Savepoint setSavepoint() throws SQLException {
    +        return delegate.setSavepoint();
    +    }
    +
    +    @Override
    +    public final Savepoint setSavepoint(String name) throws SQLException {
    +        return delegate.setSavepoint(name);
    +    }
    +
    +    @Override
    +    public final void rollback(Savepoint savepoint) throws SQLException {
    +        delegate.rollback(savepoint);
    +    }
    +
    +    @Override
    +    public final void releaseSavepoint(Savepoint savepoint) throws SQLException {
    +        delegate.releaseSavepoint(savepoint);
    +    }
    +
    +    @Override
    +    public final Statement createStatement(int resultSetType, int resultSetConcurrency, int resultSetHoldability)
    +        throws SQLException {
    +        return delegate.createStatement(resultSetType, resultSetConcurrency, resultSetHoldability);
    +    }
    +
    +    @Override
    +    public final CallableStatement prepareCall(String sql, int resultSetType, int resultSetConcurrency,
    +        int resultSetHoldability) throws SQLException {
    +        return delegate.prepareCall(sql, resultSetType, resultSetConcurrency, resultSetHoldability);
    +    }
    +
    +    @Override
    +    public final Clob createClob() throws SQLException {
    +        return delegate.createClob();
    +    }
    +
    +    @Override
    +    public final Blob createBlob() throws SQLException {
    +        return delegate.createBlob();
    +    }
    +
    +    @Override
    +    public final NClob createNClob() throws SQLException {
    +        return delegate.createNClob();
    +    }
    +
    +    @Override
    +    public final SQLXML createSQLXML() throws SQLException {
    +        return delegate.createSQLXML();
    +    }
    +
    +    @Override
    +    public final boolean isValid(int timeout) throws SQLException {
    +        return delegate.isValid(timeout);
    +    }
    +
    +    @Override
    +    public final void setClientInfo(String name, String value) throws SQLClientInfoException {
    +        delegate.setClientInfo(name, value);
    +    }
    +
    +    @Override
    +    public final void setClientInfo(Properties properties) throws SQLClientInfoException {
    +        delegate.setClientInfo(properties);
    +    }
    +
    +    @Override
    +    public final String getClientInfo(String name) throws SQLException {
    +        return delegate.getClientInfo(name);
    +    }
    +
    +    @Override
    +    public final Properties getClientInfo() throws SQLException {
    +        return delegate.getClientInfo();
    +    }
    +
    +    @Override
    +    public final Array createArrayOf(String typeName, Object[] elements) throws SQLException {
    +        return delegate.createArrayOf(typeName, elements);
    +    }
    +
    +    @Override
    +    public final Struct createStruct(String typeName, Object[] attributes) throws SQLException {
    +        return delegate.createStruct(typeName, attributes);
    +    }
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/impl/Contains.java b/jOOQ/src/main/java/org/jooq/impl/Contains.java
    new file mode 100644
    index 00000000000..d183864adf8
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/impl/Contains.java
    @@ -0,0 +1,144 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq.impl;
    +
    +import static org.jooq.impl.Factory.literal;
    +import static org.jooq.impl.Factory.val;
    +
    +import java.util.List;
    +
    +import org.jooq.Attachable;
    +import org.jooq.BindContext;
    +import org.jooq.Condition;
    +import org.jooq.Field;
    +import org.jooq.RenderContext;
    +import org.jooq.exception.DataAccessException;
    +
    +/**
    + * Abstraction for various "contains" operations
    + *
    + * @author Lukas Eder
    + */
    +class Contains<T> extends AbstractCondition {
    +
    +    /**
    +     * Generated UID
    +     */
    +    private static final long serialVersionUID = 6146303086487338550L;
    +
    +    private final Field<T>    lhs;
    +    private final Field<T>    rhs;
    +    private final T           value;
    +
    +    Contains(Field<T> field, T value) {
    +        this.lhs = field;
    +        this.rhs = null;
    +        this.value = value;
    +    }
    +
    +    Contains(Field<T> field, Field<T> rhs) {
    +        this.lhs = field;
    +        this.rhs = rhs;
    +        this.value = null;
    +    }
    +
    +    @Override
    +    public final void toSQL(RenderContext context) {
    +        context.sql(condition());
    +    }
    +
    +    @Override
    +    public final void bind(BindContext context) throws DataAccessException {
    +        context.bind(condition());
    +    }
    +
    +    @Override
    +    public final List<Attachable> getAttachables() {
    +        return getAttachables(lhs, rhs);
    +    }
    +
    +    private final Condition condition() {
    +
    +        // [#1107] Some dialects support "contains" operations for ARRAYs
    +        if (lhs.getDataType().isArray()) {
    +            return new PostgresArrayContains();
    +        }
    +
    +        // "contains" operations on Strings
    +        else {
    +            Field<String> concat;
    +
    +            if (rhs == null) {
    +                concat = Factory.concat(literal("'%'"), Util.escapeForLike(value), literal("'%'"));
    +            }
    +            else {
    +                concat = Factory.concat(literal("'%'"), Util.escapeForLike(rhs), literal("'%'"));
    +            }
    +
    +            return lhs.like(concat, Util.ESCAPE);
    +        }
    +    }
    +
    +    /**
    +     * The Postgres array contains operator
    +     */
    +    private class PostgresArrayContains extends AbstractCondition {
    +
    +        /**
    +         * Generated UID
    +         */
    +        private static final long serialVersionUID = 8083622843635168388L;
    +
    +        @Override
    +        public final void toSQL(RenderContext context) {
    +            context.sql(lhs).sql(" @> ").sql(rhs());
    +        }
    +
    +        @Override
    +        public final void bind(BindContext context) throws DataAccessException {
    +            context.bind(lhs).bind(rhs());
    +        }
    +
    +        private final Field<T> rhs() {
    +            return (rhs == null) ? val(value, lhs) : rhs;
    +        }
    +
    +        @Override
    +        public List<Attachable> getAttachables() {
    +            return getAttachables(lhs, rhs);
    +        }
    +    }
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/impl/ConvertedDataType.java b/jOOQ/src/main/java/org/jooq/impl/ConvertedDataType.java
    new file mode 100644
    index 00000000000..f52391c093d
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/impl/ConvertedDataType.java
    @@ -0,0 +1,93 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq.impl;
    +
    +import org.jooq.Configuration;
    +import org.jooq.Converter;
    +import org.jooq.DataType;
    +
    +/**
    + * A <code>DataType</code> used for converted types using {@link Converter}
    + *
    + * @author Lukas Eder
    + */
    +class ConvertedDataType<T, U> extends AbstractDataType<U> {
    +
    +    /**
    +     * Generated UID
    +     */
    +    private static final long             serialVersionUID = -2321926692580974126L;
    +
    +    private final DataType<T>             delegate;
    +    private final Converter<? super T, U> converter;
    +
    +    ConvertedDataType(DataType<T> delegate, Converter<? super T, U> converter) {
    +        super(null, null,
    +            converter.toType(),
    +            delegate.getTypeName(),
    +            delegate.getCastTypeName());
    +
    +        this.delegate = delegate;
    +        this.converter = converter;
    +
    +        DataTypes.registerConverter(converter.toType(), converter);
    +    }
    +
    +    @Override
    +    public int getSQLType() {
    +        return delegate.getSQLType();
    +    }
    +
    +    @Override
    +    public String getTypeName(Configuration configuration) {
    +        return delegate.getTypeName(configuration);
    +    }
    +
    +    @Override
    +    public String getCastTypeName(Configuration configuration) {
    +        return delegate.getCastTypeName(configuration);
    +    }
    +
    +    @Override
    +    public String getCastTypeName(Configuration configuration, int precision, int scale) {
    +        return delegate.getCastTypeName(configuration, precision, scale);
    +    }
    +
    +    @Override
    +    public U convert(Object object) {
    +        return converter.from(delegate.convert(converter.to((U) object)));
    +    }
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/impl/Cosh.java b/jOOQ/src/main/java/org/jooq/impl/Cosh.java
    new file mode 100644
    index 00000000000..46d2dfeb0fc
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/impl/Cosh.java
    @@ -0,0 +1,82 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq.impl;
    +
    +import static org.jooq.impl.Factory.function;
    +import static org.jooq.impl.Factory.one;
    +import static org.jooq.impl.Factory.two;
    +
    +import java.math.BigDecimal;
    +
    +import org.jooq.Configuration;
    +import org.jooq.Field;
    +
    +/**
    + * @author Lukas Eder
    + */
    +class Cosh extends AbstractFunction<BigDecimal> {
    +
    +    /**
    +     * Generated UID
    +     */
    +    private static final long             serialVersionUID = -7273879239726265322L;
    +
    +    private final Field<? extends Number> argument;
    +
    +    Cosh(Field<? extends Number> argument) {
    +        super("cosh", SQLDataType.NUMERIC, argument);
    +
    +        this.argument = argument;
    +    }
    +
    +    @Override
    +    final Field<BigDecimal> getFunction0(Configuration configuration) {
    +        switch (configuration.getDialect()) {
    +            case ASE:
    +            case CUBRID:
    +            case HSQLDB:
    +            case INGRES:
    +            case MYSQL:
    +            case POSTGRES:
    +            case SQLSERVER:
    +            case SYBASE:
    +                return Factory.exp(argument.mul(two())).add(one()).div(Factory.exp(argument).mul(two()));
    +
    +            default:
    +                return function("cosh", SQLDataType.NUMERIC, argument);
    +        }
    +    }
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/impl/Cot.java b/jOOQ/src/main/java/org/jooq/impl/Cot.java
    new file mode 100644
    index 00000000000..19dc40449d6
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/impl/Cot.java
    @@ -0,0 +1,74 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq.impl;
    +
    +import static org.jooq.impl.Factory.function;
    +
    +import java.math.BigDecimal;
    +
    +import org.jooq.Configuration;
    +import org.jooq.Field;
    +
    +/**
    + * @author Lukas Eder
    + */
    +class Cot extends AbstractFunction<BigDecimal> {
    +
    +    /**
    +     * Generated UID
    +     */
    +    private static final long             serialVersionUID = -7273879239726265322L;
    +
    +    private final Field<? extends Number> argument;
    +
    +    Cot(Field<? extends Number> argument) {
    +        super("cot", SQLDataType.NUMERIC, argument);
    +
    +        this.argument = argument;
    +    }
    +
    +    @Override
    +    final Field<BigDecimal> getFunction0(Configuration configuration) {
    +        switch (configuration.getDialect()) {
    +            case INGRES:
    +            case ORACLE:
    +                return Factory.cos(argument).div(Factory.sin(argument));
    +
    +            default:
    +                return function("cot", SQLDataType.NUMERIC, argument);
    +        }
    +    }
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/impl/CurrentDate.java b/jOOQ/src/main/java/org/jooq/impl/CurrentDate.java
    new file mode 100644
    index 00000000000..892b397e08a
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/impl/CurrentDate.java
    @@ -0,0 +1,83 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq.impl;
    +
    +import static org.jooq.impl.Factory.field;
    +import static org.jooq.impl.Factory.function;
    +
    +import java.sql.Date;
    +
    +import org.jooq.Configuration;
    +import org.jooq.Field;
    +
    +/**
    + * @author Lukas Eder
    + */
    +class CurrentDate extends AbstractFunction<Date> {
    +
    +    /**
    +     * Generated UID
    +     */
    +    private static final long serialVersionUID = -7273879239726265322L;
    +
    +    CurrentDate() {
    +        super("current_user", SQLDataType.DATE);
    +    }
    +
    +    @Override
    +    final Field<Date> getFunction0(Configuration configuration) {
    +        switch (configuration.getDialect()) {
    +            case ORACLE:
    +                return field("sysdate", SQLDataType.DATE);
    +
    +            case DB2:
    +            case DERBY:
    +            case HSQLDB:
    +            case INGRES:
    +            case POSTGRES:
    +            case SQLITE:
    +                return field("current_date", SQLDataType.DATE);
    +
    +            case SQLSERVER:
    +                return field("convert(date, current_timestamp)", SQLDataType.DATE);
    +
    +            case SYBASE:
    +                return field("current date", SQLDataType.DATE);
    +        }
    +
    +        return function("current_date", SQLDataType.DATE);
    +    }
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/impl/CurrentTime.java b/jOOQ/src/main/java/org/jooq/impl/CurrentTime.java
    new file mode 100644
    index 00000000000..ddd0d068ffa
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/impl/CurrentTime.java
    @@ -0,0 +1,83 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq.impl;
    +
    +import static org.jooq.impl.Factory.field;
    +import static org.jooq.impl.Factory.function;
    +
    +import java.sql.Time;
    +
    +import org.jooq.Configuration;
    +import org.jooq.Field;
    +
    +/**
    + * @author Lukas Eder
    + */
    +class CurrentTime extends AbstractFunction<Time> {
    +
    +    /**
    +     * Generated UID
    +     */
    +    private static final long serialVersionUID = -7273879239726265322L;
    +
    +    CurrentTime() {
    +        super("current_time", SQLDataType.TIME);
    +    }
    +
    +    @Override
    +    final Field<Time> getFunction0(Configuration configuration) {
    +        switch (configuration.getDialect()) {
    +            case ORACLE:
    +                return field("sysdate", SQLDataType.TIME);
    +
    +            case DB2:
    +            case DERBY:
    +            case HSQLDB:
    +            case INGRES:
    +            case POSTGRES:
    +            case SQLITE:
    +                return field("current_time", SQLDataType.TIME);
    +
    +            case SQLSERVER:
    +                return field("convert(time, current_timestamp)", SQLDataType.TIME);
    +
    +            case SYBASE:
    +                return field("current time", SQLDataType.TIME);
    +        }
    +
    +        return function("current_time", SQLDataType.TIME);
    +    }
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/impl/CurrentTimestamp.java b/jOOQ/src/main/java/org/jooq/impl/CurrentTimestamp.java
    new file mode 100644
    index 00000000000..8fe1ecb44a6
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/impl/CurrentTimestamp.java
    @@ -0,0 +1,84 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq.impl;
    +
    +import static org.jooq.impl.Factory.field;
    +import static org.jooq.impl.Factory.function;
    +
    +import java.sql.Timestamp;
    +
    +import org.jooq.Configuration;
    +import org.jooq.Field;
    +
    +/**
    + * @author Lukas Eder
    + */
    +class CurrentTimestamp extends AbstractFunction<Timestamp> {
    +
    +    /**
    +     * Generated UID
    +     */
    +    private static final long serialVersionUID = -7273879239726265322L;
    +
    +    CurrentTimestamp() {
    +        super("current_timestamp", SQLDataType.TIMESTAMP);
    +    }
    +
    +    @Override
    +    final Field<Timestamp> getFunction0(Configuration configuration) {
    +        switch (configuration.getDialect()) {
    +            case ASE:
    +                return function("current_bigdatetime", SQLDataType.TIMESTAMP);
    +
    +            case ORACLE:
    +                return field("sysdate", SQLDataType.TIMESTAMP);
    +
    +            case DB2:
    +            case DERBY:
    +            case HSQLDB:
    +            case INGRES:
    +            case POSTGRES:
    +            case SQLITE:
    +            case SQLSERVER:
    +                return field("current_timestamp", SQLDataType.TIMESTAMP);
    +
    +            case SYBASE:
    +                return field("current timestamp", SQLDataType.TIMESTAMP);
    +        }
    +
    +        return function("current_timestamp", SQLDataType.TIMESTAMP);
    +    }
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/impl/CurrentUser.java b/jOOQ/src/main/java/org/jooq/impl/CurrentUser.java
    new file mode 100644
    index 00000000000..89f68f0edee
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/impl/CurrentUser.java
    @@ -0,0 +1,78 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq.impl;
    +
    +import static org.jooq.impl.Factory.field;
    +import static org.jooq.impl.Factory.function;
    +
    +import org.jooq.Configuration;
    +import org.jooq.Field;
    +
    +/**
    + * @author Lukas Eder
    + */
    +class CurrentUser extends AbstractFunction<String> {
    +
    +    /**
    +     * Generated UID
    +     */
    +    private static final long serialVersionUID = -7273879239726265322L;
    +
    +    CurrentUser() {
    +        super("current_user", SQLDataType.VARCHAR);
    +    }
    +
    +    @Override
    +    final Field<String> getFunction0(Configuration configuration) {
    +        switch (configuration.getDialect()) {
    +            case ASE:
    +            case ORACLE:
    +                return field("user", SQLDataType.VARCHAR);
    +
    +            case DB2:
    +            case DERBY:
    +            case HSQLDB:
    +            case INGRES:
    +            case POSTGRES:
    +            case SQLSERVER:
    +            case SQLITE:
    +            case SYBASE:
    +                return field("current_user", String.class);
    +        }
    +
    +        return function("current_user", SQLDataType.VARCHAR);
    +    }
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/impl/CursorImpl.java b/jOOQ/src/main/java/org/jooq/impl/CursorImpl.java
    new file mode 100644
    index 00000000000..973cf44000e
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/impl/CursorImpl.java
    @@ -0,0 +1,1287 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq.impl;
    +
    +import java.io.InputStream;
    +import java.io.Reader;
    +import java.math.BigDecimal;
    +import java.net.URL;
    +import java.sql.Array;
    +import java.sql.Blob;
    +import java.sql.Clob;
    +import java.sql.Date;
    +import java.sql.NClob;
    +import java.sql.Ref;
    +import java.sql.ResultSet;
    +import java.sql.ResultSetMetaData;
    +import java.sql.RowId;
    +import java.sql.SQLException;
    +import java.sql.SQLWarning;
    +import java.sql.SQLXML;
    +import java.sql.Statement;
    +import java.sql.Time;
    +import java.sql.Timestamp;
    +import java.util.Calendar;
    +import java.util.Iterator;
    +import java.util.List;
    +import java.util.Map;
    +
    +import org.jooq.Cursor;
    +import org.jooq.ExecuteContext;
    +import org.jooq.ExecuteListener;
    +import org.jooq.Field;
    +import org.jooq.FieldProvider;
    +import org.jooq.Record;
    +import org.jooq.RecordHandler;
    +import org.jooq.Result;
    +import org.jooq.Table;
    +
    +/**
    + * @author Lukas Eder
    + */
    +class CursorImpl<R extends Record> implements Cursor<R> {
    +
    +    private final ExecuteContext      ctx;
    +    private final ExecuteListener     listener;
    +    private final FieldProvider       fields;
    +    private final Class<? extends R>  type;
    +    private boolean                   isClosed;
    +
    +    private transient CursorResultSet rs;
    +    private transient Iterator<R>     iterator;
    +
    +    CursorImpl(ExecuteContext ctx, ExecuteListener listener, FieldProvider fields) {
    +        this(ctx, listener, fields, false);
    +    }
    +
    +    @SuppressWarnings("unchecked")
    +    CursorImpl(ExecuteContext ctx, ExecuteListener listener, FieldProvider fields, boolean keepStatementOpen) {
    +        this(ctx, listener, fields, (Class<? extends R>) RecordImpl.class, keepStatementOpen);
    +    }
    +
    +    CursorImpl(ExecuteContext ctx, ExecuteListener listener, FieldProvider fields, Class<? extends R> type) {
    +        this(ctx, listener, fields, type, false);
    +    }
    +
    +    CursorImpl(ExecuteContext ctx, ExecuteListener listener, FieldProvider fields, Class<? extends R> type, boolean keepStatementOpen) {
    +        this.ctx = ctx;
    +        this.listener = (listener != null ? listener : new ExecuteListeners(ctx));
    +        this.fields = fields;
    +        this.type = type;
    +        this.rs = new CursorResultSet(keepStatementOpen);
    +    }
    +
    +    @Override
    +    public final List<Field<?>> getFields() {
    +        return fields.getFields();
    +    }
    +
    +    @Override
    +    public final <T> Field<T> getField(Field<T> field) {
    +        return fields.getField(field);
    +    }
    +
    +    @Override
    +    public final Field<?> getField(String name) {
    +        return fields.getField(name);
    +    }
    +
    +    @Override
    +    public final Field<?> getField(int index) {
    +        return fields.getField(index);
    +    }
    +
    +    @Override
    +    public final int getIndex(Field<?> field) throws IllegalArgumentException {
    +        return fields.getIndex(field);
    +    }
    +
    +    @Override
    +    public final Iterator<R> iterator() {
    +        if (iterator == null) {
    +            iterator = new CursorIterator();
    +            listener.fetchStart(ctx);
    +        }
    +
    +        return iterator;
    +    }
    +
    +    @Override
    +    public final boolean hasNext() {
    +        return iterator().hasNext();
    +    }
    +
    +    @Override
    +    public final Result<R> fetch() {
    +        return fetch(Integer.MAX_VALUE);
    +    }
    +
    +    @Override
    +    public final R fetchOne() {
    +        return iterator().next();
    +    }
    +
    +    @Override
    +    public final Result<R> fetch(int number) {
    +        // [#1157] This invokes listener.fetchStart(ctx), which has to be called
    +        // Before listener.resultStart(ctx)
    +        iterator();
    +
    +        ResultImpl<R> result = new ResultImpl<R>(ctx.configuration(), fields);
    +        R record = null;
    +
    +        ctx.result(result);
    +        listener.resultStart(ctx);
    +
    +        for (int i = 0; i < number && ((record = fetchOne()) != null); i++) {
    +            result.addRecord(record);
    +        }
    +
    +        ctx.result(result);
    +        listener.resultEnd(ctx);
    +
    +        return result;
    +    }
    +
    +    @Override
    +    public final <H extends RecordHandler<R>> H fetchOneInto(H handler) {
    +        handler.next(fetchOne());
    +        return handler;
    +    }
    +
    +    @Override
    +    public final <H extends RecordHandler<R>> H fetchInto(H handler) {
    +        while (hasNext()) {
    +            fetchOneInto(handler);
    +        }
    +
    +        return handler;
    +    }
    +
    +    @Override
    +    public final <E> E fetchOneInto(Class<? extends E> clazz) {
    +        return fetchOne().into(clazz);
    +    }
    +
    +    @Override
    +    public final <E> List<E> fetchInto(Class<? extends E> clazz) {
    +        return fetch().into(clazz);
    +    }
    +
    +    @Override
    +    public final <Z extends Record> Z fetchOneInto(Table<Z> table) {
    +        return fetchOne().into(table);
    +    }
    +
    +    @Override
    +    public final <Z extends Record> List<Z> fetchInto(Table<Z> table) {
    +        return fetch().into(table);
    +    }
    +
    +    @Override
    +    public final void close() {
    +        Util.safeClose(rs);
    +        rs = null;
    +        isClosed = true;
    +    }
    +
    +    @Override
    +    public final boolean isClosed() {
    +        return isClosed;
    +    }
    +
    +    @Override
    +    public final ResultSet resultSet() {
    +        return rs;
    +    }
    +
    +    /**
    +     * A wrapper for the underlying JDBC {@link ResultSet} and {@link Statement}
    +     */
    +    private final class CursorResultSet implements ResultSet {
    +
    +        private final boolean keepStatementOpen;
    +
    +        CursorResultSet(boolean keepStatementOpen) {
    +            this.keepStatementOpen = keepStatementOpen;
    +        }
    +
    +        @Override
    +        public final <T> T unwrap(Class<T> iface) throws SQLException {
    +            return ctx.resultSet().unwrap(iface);
    +        }
    +
    +        @Override
    +        public final boolean isWrapperFor(Class<?> iface) throws SQLException {
    +            return ctx.resultSet().isWrapperFor(iface);
    +        }
    +
    +        @Override
    +        public final boolean next() throws SQLException {
    +            return ctx.resultSet().next();
    +        }
    +
    +        @Override
    +        public final void close() throws SQLException {
    +            ctx.resultSet().close();
    +
    +            if (!keepStatementOpen) {
    +                ctx.statement().close();
    +            }
    +
    +            listener.fetchEnd(ctx);
    +        }
    +
    +        @Override
    +        public final boolean wasNull() throws SQLException {
    +            return ctx.resultSet().wasNull();
    +        }
    +
    +        @Override
    +        public final String getString(int columnIndex) throws SQLException {
    +            return ctx.resultSet().getString(columnIndex);
    +        }
    +
    +        @Override
    +        public final boolean getBoolean(int columnIndex) throws SQLException {
    +            return ctx.resultSet().getBoolean(columnIndex);
    +        }
    +
    +        @Override
    +        public final byte getByte(int columnIndex) throws SQLException {
    +            return ctx.resultSet().getByte(columnIndex);
    +        }
    +
    +        @Override
    +        public final short getShort(int columnIndex) throws SQLException {
    +            return ctx.resultSet().getShort(columnIndex);
    +        }
    +
    +        @Override
    +        public final int getInt(int columnIndex) throws SQLException {
    +            return ctx.resultSet().getInt(columnIndex);
    +        }
    +
    +        @Override
    +        public final long getLong(int columnIndex) throws SQLException {
    +            return ctx.resultSet().getLong(columnIndex);
    +        }
    +
    +        @Override
    +        public final float getFloat(int columnIndex) throws SQLException {
    +            return ctx.resultSet().getFloat(columnIndex);
    +        }
    +
    +        @Override
    +        public final double getDouble(int columnIndex) throws SQLException {
    +            return ctx.resultSet().getDouble(columnIndex);
    +        }
    +
    +        @Override
    +        @Deprecated
    +        public final BigDecimal getBigDecimal(int columnIndex, int scale) throws SQLException {
    +            return ctx.resultSet().getBigDecimal(columnIndex, scale);
    +        }
    +
    +        @Override
    +        public final byte[] getBytes(int columnIndex) throws SQLException {
    +            return ctx.resultSet().getBytes(columnIndex);
    +        }
    +
    +        @Override
    +        public final Date getDate(int columnIndex) throws SQLException {
    +            return ctx.resultSet().getDate(columnIndex);
    +        }
    +
    +        @Override
    +        public final Time getTime(int columnIndex) throws SQLException {
    +            return ctx.resultSet().getTime(columnIndex);
    +        }
    +
    +        @Override
    +        public final Timestamp getTimestamp(int columnIndex) throws SQLException {
    +            return ctx.resultSet().getTimestamp(columnIndex);
    +        }
    +
    +        @Override
    +        public final InputStream getAsciiStream(int columnIndex) throws SQLException {
    +            return ctx.resultSet().getAsciiStream(columnIndex);
    +        }
    +
    +        @Override
    +        @Deprecated
    +        public final InputStream getUnicodeStream(int columnIndex) throws SQLException {
    +            return ctx.resultSet().getUnicodeStream(columnIndex);
    +        }
    +
    +        @Override
    +        public final InputStream getBinaryStream(int columnIndex) throws SQLException {
    +            return ctx.resultSet().getBinaryStream(columnIndex);
    +        }
    +
    +        @Override
    +        public final String getString(String columnLabel) throws SQLException {
    +            return ctx.resultSet().getString(columnLabel);
    +        }
    +
    +        @Override
    +        public final boolean getBoolean(String columnLabel) throws SQLException {
    +            return ctx.resultSet().getBoolean(columnLabel);
    +        }
    +
    +        @Override
    +        public final byte getByte(String columnLabel) throws SQLException {
    +            return ctx.resultSet().getByte(columnLabel);
    +        }
    +
    +        @Override
    +        public final short getShort(String columnLabel) throws SQLException {
    +            return ctx.resultSet().getShort(columnLabel);
    +        }
    +
    +        @Override
    +        public final int getInt(String columnLabel) throws SQLException {
    +            return ctx.resultSet().getInt(columnLabel);
    +        }
    +
    +        @Override
    +        public final long getLong(String columnLabel) throws SQLException {
    +            return ctx.resultSet().getLong(columnLabel);
    +        }
    +
    +        @Override
    +        public final float getFloat(String columnLabel) throws SQLException {
    +            return ctx.resultSet().getFloat(columnLabel);
    +        }
    +
    +        @Override
    +        public final double getDouble(String columnLabel) throws SQLException {
    +            return ctx.resultSet().getDouble(columnLabel);
    +        }
    +
    +        @Override
    +        @Deprecated
    +        public final BigDecimal getBigDecimal(String columnLabel, int scale) throws SQLException {
    +            return ctx.resultSet().getBigDecimal(columnLabel, scale);
    +        }
    +
    +        @Override
    +        public final byte[] getBytes(String columnLabel) throws SQLException {
    +            return ctx.resultSet().getBytes(columnLabel);
    +        }
    +
    +        @Override
    +        public final Date getDate(String columnLabel) throws SQLException {
    +            return ctx.resultSet().getDate(columnLabel);
    +        }
    +
    +        @Override
    +        public final Time getTime(String columnLabel) throws SQLException {
    +            return ctx.resultSet().getTime(columnLabel);
    +        }
    +
    +        @Override
    +        public final Timestamp getTimestamp(String columnLabel) throws SQLException {
    +            return ctx.resultSet().getTimestamp(columnLabel);
    +        }
    +
    +        @Override
    +        public final InputStream getAsciiStream(String columnLabel) throws SQLException {
    +            return ctx.resultSet().getAsciiStream(columnLabel);
    +        }
    +
    +        @Override
    +        @Deprecated
    +        public final InputStream getUnicodeStream(String columnLabel) throws SQLException {
    +            return ctx.resultSet().getUnicodeStream(columnLabel);
    +        }
    +
    +        @Override
    +        public final InputStream getBinaryStream(String columnLabel) throws SQLException {
    +            return ctx.resultSet().getBinaryStream(columnLabel);
    +        }
    +
    +        @Override
    +        public final SQLWarning getWarnings() throws SQLException {
    +            return ctx.resultSet().getWarnings();
    +        }
    +
    +        @Override
    +        public final void clearWarnings() throws SQLException {
    +            ctx.resultSet().clearWarnings();
    +        }
    +
    +        @Override
    +        public final String getCursorName() throws SQLException {
    +            return ctx.resultSet().getCursorName();
    +        }
    +
    +        @Override
    +        public final ResultSetMetaData getMetaData() throws SQLException {
    +            return ctx.resultSet().getMetaData();
    +        }
    +
    +        @Override
    +        public final Object getObject(int columnIndex) throws SQLException {
    +            return ctx.resultSet().getObject(columnIndex);
    +        }
    +
    +        @Override
    +        public final Object getObject(String columnLabel) throws SQLException {
    +            return ctx.resultSet().getObject(columnLabel);
    +        }
    +
    +        @Override
    +        public final int findColumn(String columnLabel) throws SQLException {
    +            return ctx.resultSet().findColumn(columnLabel);
    +        }
    +
    +        @Override
    +        public final Reader getCharacterStream(int columnIndex) throws SQLException {
    +            return ctx.resultSet().getCharacterStream(columnIndex);
    +        }
    +
    +        @Override
    +        public final Reader getCharacterStream(String columnLabel) throws SQLException {
    +            return ctx.resultSet().getCharacterStream(columnLabel);
    +        }
    +
    +        @Override
    +        public final BigDecimal getBigDecimal(int columnIndex) throws SQLException {
    +            return ctx.resultSet().getBigDecimal(columnIndex);
    +        }
    +
    +        @Override
    +        public final BigDecimal getBigDecimal(String columnLabel) throws SQLException {
    +            return ctx.resultSet().getBigDecimal(columnLabel);
    +        }
    +
    +        @Override
    +        public final boolean isBeforeFirst() throws SQLException {
    +            return ctx.resultSet().isBeforeFirst();
    +        }
    +
    +        @Override
    +        public final boolean isAfterLast() throws SQLException {
    +            return ctx.resultSet().isAfterLast();
    +        }
    +
    +        @Override
    +        public final boolean isFirst() throws SQLException {
    +            return ctx.resultSet().isFirst();
    +        }
    +
    +        @Override
    +        public final boolean isLast() throws SQLException {
    +            return ctx.resultSet().isLast();
    +        }
    +
    +        @Override
    +        public final void beforeFirst() throws SQLException {
    +            ctx.resultSet().beforeFirst();
    +        }
    +
    +        @Override
    +        public final void afterLast() throws SQLException {
    +            ctx.resultSet().afterLast();
    +        }
    +
    +        @Override
    +        public final boolean first() throws SQLException {
    +            return ctx.resultSet().first();
    +        }
    +
    +        @Override
    +        public final boolean last() throws SQLException {
    +            return ctx.resultSet().last();
    +        }
    +
    +        @Override
    +        public final int getRow() throws SQLException {
    +            return ctx.resultSet().getRow();
    +        }
    +
    +        @Override
    +        public final boolean absolute(int row) throws SQLException {
    +            return ctx.resultSet().absolute(row);
    +        }
    +
    +        @Override
    +        public final boolean relative(int rows) throws SQLException {
    +            return ctx.resultSet().relative(rows);
    +        }
    +
    +        @Override
    +        public final boolean previous() throws SQLException {
    +            return ctx.resultSet().previous();
    +        }
    +
    +        @Override
    +        public final void setFetchDirection(int direction) throws SQLException {
    +            ctx.resultSet().setFetchDirection(direction);
    +        }
    +
    +        @Override
    +        public final int getFetchDirection() throws SQLException {
    +            return ctx.resultSet().getFetchDirection();
    +        }
    +
    +        @Override
    +        public final void setFetchSize(int rows) throws SQLException {
    +            ctx.resultSet().setFetchSize(rows);
    +        }
    +
    +        @Override
    +        public final int getFetchSize() throws SQLException {
    +            return ctx.resultSet().getFetchSize();
    +        }
    +
    +        @Override
    +        public final int getType() throws SQLException {
    +            return ctx.resultSet().getType();
    +        }
    +
    +        @Override
    +        public final int getConcurrency() throws SQLException {
    +            return ctx.resultSet().getConcurrency();
    +        }
    +
    +        @Override
    +        public final boolean rowUpdated() throws SQLException {
    +            return ctx.resultSet().rowUpdated();
    +        }
    +
    +        @Override
    +        public final boolean rowInserted() throws SQLException {
    +            return ctx.resultSet().rowInserted();
    +        }
    +
    +        @Override
    +        public final boolean rowDeleted() throws SQLException {
    +            return ctx.resultSet().rowDeleted();
    +        }
    +
    +        @Override
    +        public final void updateNull(int columnIndex) throws SQLException {
    +            ctx.resultSet().updateNull(columnIndex);
    +        }
    +
    +        @Override
    +        public final void updateBoolean(int columnIndex, boolean x) throws SQLException {
    +            ctx.resultSet().updateBoolean(columnIndex, x);
    +        }
    +
    +        @Override
    +        public final void updateByte(int columnIndex, byte x) throws SQLException {
    +            ctx.resultSet().updateByte(columnIndex, x);
    +        }
    +
    +        @Override
    +        public final void updateShort(int columnIndex, short x) throws SQLException {
    +            ctx.resultSet().updateShort(columnIndex, x);
    +        }
    +
    +        @Override
    +        public final void updateInt(int columnIndex, int x) throws SQLException {
    +            ctx.resultSet().updateInt(columnIndex, x);
    +        }
    +
    +        @Override
    +        public final void updateLong(int columnIndex, long x) throws SQLException {
    +            ctx.resultSet().updateLong(columnIndex, x);
    +        }
    +
    +        @Override
    +        public final void updateFloat(int columnIndex, float x) throws SQLException {
    +            ctx.resultSet().updateFloat(columnIndex, x);
    +        }
    +
    +        @Override
    +        public final void updateDouble(int columnIndex, double x) throws SQLException {
    +            ctx.resultSet().updateDouble(columnIndex, x);
    +        }
    +
    +        @Override
    +        public final void updateBigDecimal(int columnIndex, BigDecimal x) throws SQLException {
    +            ctx.resultSet().updateBigDecimal(columnIndex, x);
    +        }
    +
    +        @Override
    +        public final void updateString(int columnIndex, String x) throws SQLException {
    +            ctx.resultSet().updateString(columnIndex, x);
    +        }
    +
    +        @Override
    +        public final void updateBytes(int columnIndex, byte[] x) throws SQLException {
    +            ctx.resultSet().updateBytes(columnIndex, x);
    +        }
    +
    +        @Override
    +        public final void updateDate(int columnIndex, Date x) throws SQLException {
    +            ctx.resultSet().updateDate(columnIndex, x);
    +        }
    +
    +        @Override
    +        public final void updateTime(int columnIndex, Time x) throws SQLException {
    +            ctx.resultSet().updateTime(columnIndex, x);
    +        }
    +
    +        @Override
    +        public final void updateTimestamp(int columnIndex, Timestamp x) throws SQLException {
    +            ctx.resultSet().updateTimestamp(columnIndex, x);
    +        }
    +
    +        @Override
    +        public final void updateAsciiStream(int columnIndex, InputStream x, int length) throws SQLException {
    +            ctx.resultSet().updateAsciiStream(columnIndex, x, length);
    +        }
    +
    +        @Override
    +        public final void updateBinaryStream(int columnIndex, InputStream x, int length) throws SQLException {
    +            ctx.resultSet().updateBinaryStream(columnIndex, x, length);
    +        }
    +
    +        @Override
    +        public final void updateCharacterStream(int columnIndex, Reader x, int length) throws SQLException {
    +            ctx.resultSet().updateCharacterStream(columnIndex, x, length);
    +        }
    +
    +        @Override
    +        public final void updateObject(int columnIndex, Object x, int scaleOrLength) throws SQLException {
    +            ctx.resultSet().updateObject(columnIndex, x, scaleOrLength);
    +        }
    +
    +        @Override
    +        public final void updateObject(int columnIndex, Object x) throws SQLException {
    +            ctx.resultSet().updateObject(columnIndex, x);
    +        }
    +
    +        @Override
    +        public final void updateNull(String columnLabel) throws SQLException {
    +            ctx.resultSet().updateNull(columnLabel);
    +        }
    +
    +        @Override
    +        public final void updateBoolean(String columnLabel, boolean x) throws SQLException {
    +            ctx.resultSet().updateBoolean(columnLabel, x);
    +        }
    +
    +        @Override
    +        public final void updateByte(String columnLabel, byte x) throws SQLException {
    +            ctx.resultSet().updateByte(columnLabel, x);
    +        }
    +
    +        @Override
    +        public final void updateShort(String columnLabel, short x) throws SQLException {
    +            ctx.resultSet().updateShort(columnLabel, x);
    +        }
    +
    +        @Override
    +        public final void updateInt(String columnLabel, int x) throws SQLException {
    +            ctx.resultSet().updateInt(columnLabel, x);
    +        }
    +
    +        @Override
    +        public final void updateLong(String columnLabel, long x) throws SQLException {
    +            ctx.resultSet().updateLong(columnLabel, x);
    +        }
    +
    +        @Override
    +        public final void updateFloat(String columnLabel, float x) throws SQLException {
    +            ctx.resultSet().updateFloat(columnLabel, x);
    +        }
    +
    +        @Override
    +        public final void updateDouble(String columnLabel, double x) throws SQLException {
    +            ctx.resultSet().updateDouble(columnLabel, x);
    +        }
    +
    +        @Override
    +        public final void updateBigDecimal(String columnLabel, BigDecimal x) throws SQLException {
    +            ctx.resultSet().updateBigDecimal(columnLabel, x);
    +        }
    +
    +        @Override
    +        public final void updateString(String columnLabel, String x) throws SQLException {
    +            ctx.resultSet().updateString(columnLabel, x);
    +        }
    +
    +        @Override
    +        public final void updateBytes(String columnLabel, byte[] x) throws SQLException {
    +            ctx.resultSet().updateBytes(columnLabel, x);
    +        }
    +
    +        @Override
    +        public final void updateDate(String columnLabel, Date x) throws SQLException {
    +            ctx.resultSet().updateDate(columnLabel, x);
    +        }
    +
    +        @Override
    +        public final void updateTime(String columnLabel, Time x) throws SQLException {
    +            ctx.resultSet().updateTime(columnLabel, x);
    +        }
    +
    +        @Override
    +        public final void updateTimestamp(String columnLabel, Timestamp x) throws SQLException {
    +            ctx.resultSet().updateTimestamp(columnLabel, x);
    +        }
    +
    +        @Override
    +        public final void updateAsciiStream(String columnLabel, InputStream x, int length) throws SQLException {
    +            ctx.resultSet().updateAsciiStream(columnLabel, x, length);
    +        }
    +
    +        @Override
    +        public final void updateBinaryStream(String columnLabel, InputStream x, int length) throws SQLException {
    +            ctx.resultSet().updateBinaryStream(columnLabel, x, length);
    +        }
    +
    +        @Override
    +        public final void updateCharacterStream(String columnLabel, Reader reader, int length) throws SQLException {
    +            ctx.resultSet().updateCharacterStream(columnLabel, reader, length);
    +        }
    +
    +        @Override
    +        public final void updateObject(String columnLabel, Object x, int scaleOrLength) throws SQLException {
    +            ctx.resultSet().updateObject(columnLabel, x, scaleOrLength);
    +        }
    +
    +        @Override
    +        public final void updateObject(String columnLabel, Object x) throws SQLException {
    +            ctx.resultSet().updateObject(columnLabel, x);
    +        }
    +
    +        @Override
    +        public final void insertRow() throws SQLException {
    +            ctx.resultSet().insertRow();
    +        }
    +
    +        @Override
    +        public final void updateRow() throws SQLException {
    +            ctx.resultSet().updateRow();
    +        }
    +
    +        @Override
    +        public final void deleteRow() throws SQLException {
    +            ctx.resultSet().deleteRow();
    +        }
    +
    +        @Override
    +        public final void refreshRow() throws SQLException {
    +            ctx.resultSet().refreshRow();
    +        }
    +
    +        @Override
    +        public final void cancelRowUpdates() throws SQLException {
    +            ctx.resultSet().cancelRowUpdates();
    +        }
    +
    +        @Override
    +        public final void moveToInsertRow() throws SQLException {
    +            ctx.resultSet().moveToInsertRow();
    +        }
    +
    +        @Override
    +        public final void moveToCurrentRow() throws SQLException {
    +            ctx.resultSet().moveToCurrentRow();
    +        }
    +
    +        @Override
    +        public final Statement getStatement() throws SQLException {
    +            return ctx.resultSet().getStatement();
    +        }
    +
    +        @Override
    +        public final Object getObject(int columnIndex, Map<String, Class<?>> map) throws SQLException {
    +            return ctx.resultSet().getObject(columnIndex, map);
    +        }
    +
    +        @Override
    +        public final Ref getRef(int columnIndex) throws SQLException {
    +            return ctx.resultSet().getRef(columnIndex);
    +        }
    +
    +        @Override
    +        public final Blob getBlob(int columnIndex) throws SQLException {
    +            return ctx.resultSet().getBlob(columnIndex);
    +        }
    +
    +        @Override
    +        public final Clob getClob(int columnIndex) throws SQLException {
    +            return ctx.resultSet().getClob(columnIndex);
    +        }
    +
    +        @Override
    +        public final Array getArray(int columnIndex) throws SQLException {
    +            return ctx.resultSet().getArray(columnIndex);
    +        }
    +
    +        @Override
    +        public final Object getObject(String columnLabel, Map<String, Class<?>> map) throws SQLException {
    +            return ctx.resultSet().getObject(columnLabel, map);
    +        }
    +
    +        @Override
    +        public final Ref getRef(String columnLabel) throws SQLException {
    +            return ctx.resultSet().getRef(columnLabel);
    +        }
    +
    +        @Override
    +        public final Blob getBlob(String columnLabel) throws SQLException {
    +            return ctx.resultSet().getBlob(columnLabel);
    +        }
    +
    +        @Override
    +        public final Clob getClob(String columnLabel) throws SQLException {
    +            return ctx.resultSet().getClob(columnLabel);
    +        }
    +
    +        @Override
    +        public final Array getArray(String columnLabel) throws SQLException {
    +            return ctx.resultSet().getArray(columnLabel);
    +        }
    +
    +        @Override
    +        public final Date getDate(int columnIndex, Calendar cal) throws SQLException {
    +            return ctx.resultSet().getDate(columnIndex, cal);
    +        }
    +
    +        @Override
    +        public final Date getDate(String columnLabel, Calendar cal) throws SQLException {
    +            return ctx.resultSet().getDate(columnLabel, cal);
    +        }
    +
    +        @Override
    +        public final Time getTime(int columnIndex, Calendar cal) throws SQLException {
    +            return ctx.resultSet().getTime(columnIndex, cal);
    +        }
    +
    +        @Override
    +        public final Time getTime(String columnLabel, Calendar cal) throws SQLException {
    +            return ctx.resultSet().getTime(columnLabel, cal);
    +        }
    +
    +        @Override
    +        public final Timestamp getTimestamp(int columnIndex, Calendar cal) throws SQLException {
    +            return ctx.resultSet().getTimestamp(columnIndex, cal);
    +        }
    +
    +        @Override
    +        public final Timestamp getTimestamp(String columnLabel, Calendar cal) throws SQLException {
    +            return ctx.resultSet().getTimestamp(columnLabel, cal);
    +        }
    +
    +        @Override
    +        public final URL getURL(int columnIndex) throws SQLException {
    +            return ctx.resultSet().getURL(columnIndex);
    +        }
    +
    +        @Override
    +        public final URL getURL(String columnLabel) throws SQLException {
    +            return ctx.resultSet().getURL(columnLabel);
    +        }
    +
    +        @Override
    +        public final void updateRef(int columnIndex, Ref x) throws SQLException {
    +            ctx.resultSet().updateRef(columnIndex, x);
    +        }
    +
    +        @Override
    +        public final void updateRef(String columnLabel, Ref x) throws SQLException {
    +            ctx.resultSet().updateRef(columnLabel, x);
    +        }
    +
    +        @Override
    +        public final void updateBlob(int columnIndex, Blob x) throws SQLException {
    +            ctx.resultSet().updateBlob(columnIndex, x);
    +        }
    +
    +        @Override
    +        public final void updateBlob(String columnLabel, Blob x) throws SQLException {
    +            ctx.resultSet().updateBlob(columnLabel, x);
    +        }
    +
    +        @Override
    +        public final void updateClob(int columnIndex, Clob x) throws SQLException {
    +            ctx.resultSet().updateClob(columnIndex, x);
    +        }
    +
    +        @Override
    +        public final void updateClob(String columnLabel, Clob x) throws SQLException {
    +            ctx.resultSet().updateClob(columnLabel, x);
    +        }
    +
    +        @Override
    +        public final void updateArray(int columnIndex, Array x) throws SQLException {
    +            ctx.resultSet().updateArray(columnIndex, x);
    +        }
    +
    +        @Override
    +        public final void updateArray(String columnLabel, Array x) throws SQLException {
    +            ctx.resultSet().updateArray(columnLabel, x);
    +        }
    +
    +        @Override
    +        public final RowId getRowId(int columnIndex) throws SQLException {
    +            return ctx.resultSet().getRowId(columnIndex);
    +        }
    +
    +        @Override
    +        public final RowId getRowId(String columnLabel) throws SQLException {
    +            return ctx.resultSet().getRowId(columnLabel);
    +        }
    +
    +        @Override
    +        public final void updateRowId(int columnIndex, RowId x) throws SQLException {
    +            ctx.resultSet().updateRowId(columnIndex, x);
    +        }
    +
    +        @Override
    +        public final void updateRowId(String columnLabel, RowId x) throws SQLException {
    +            ctx.resultSet().updateRowId(columnLabel, x);
    +        }
    +
    +        @Override
    +        public final int getHoldability() throws SQLException {
    +            return ctx.resultSet().getHoldability();
    +        }
    +
    +        @Override
    +        public final boolean isClosed() throws SQLException {
    +            return ctx.resultSet().isClosed();
    +        }
    +
    +        @Override
    +        public final void updateNString(int columnIndex, String nString) throws SQLException {
    +            ctx.resultSet().updateNString(columnIndex, nString);
    +        }
    +
    +        @Override
    +        public final void updateNString(String columnLabel, String nString) throws SQLException {
    +            ctx.resultSet().updateNString(columnLabel, nString);
    +        }
    +
    +        @Override
    +        public final void updateNClob(int columnIndex, NClob nClob) throws SQLException {
    +            ctx.resultSet().updateNClob(columnIndex, nClob);
    +        }
    +
    +        @Override
    +        public final void updateNClob(String columnLabel, NClob nClob) throws SQLException {
    +            ctx.resultSet().updateNClob(columnLabel, nClob);
    +        }
    +
    +        @Override
    +        public final NClob getNClob(int columnIndex) throws SQLException {
    +            return ctx.resultSet().getNClob(columnIndex);
    +        }
    +
    +        @Override
    +        public final NClob getNClob(String columnLabel) throws SQLException {
    +            return ctx.resultSet().getNClob(columnLabel);
    +        }
    +
    +        @Override
    +        public final SQLXML getSQLXML(int columnIndex) throws SQLException {
    +            return ctx.resultSet().getSQLXML(columnIndex);
    +        }
    +
    +        @Override
    +        public final SQLXML getSQLXML(String columnLabel) throws SQLException {
    +            return ctx.resultSet().getSQLXML(columnLabel);
    +        }
    +
    +        @Override
    +        public final void updateSQLXML(int columnIndex, SQLXML xmlObject) throws SQLException {
    +            ctx.resultSet().updateSQLXML(columnIndex, xmlObject);
    +        }
    +
    +        @Override
    +        public final void updateSQLXML(String columnLabel, SQLXML xmlObject) throws SQLException {
    +            ctx.resultSet().updateSQLXML(columnLabel, xmlObject);
    +        }
    +
    +        @Override
    +        public final String getNString(int columnIndex) throws SQLException {
    +            return ctx.resultSet().getNString(columnIndex);
    +        }
    +
    +        @Override
    +        public final String getNString(String columnLabel) throws SQLException {
    +            return ctx.resultSet().getNString(columnLabel);
    +        }
    +
    +        @Override
    +        public final Reader getNCharacterStream(int columnIndex) throws SQLException {
    +            return ctx.resultSet().getNCharacterStream(columnIndex);
    +        }
    +
    +        @Override
    +        public final Reader getNCharacterStream(String columnLabel) throws SQLException {
    +            return ctx.resultSet().getNCharacterStream(columnLabel);
    +        }
    +
    +        @Override
    +        public final void updateNCharacterStream(int columnIndex, Reader x, long length) throws SQLException {
    +            ctx.resultSet().updateNCharacterStream(columnIndex, x, length);
    +        }
    +
    +        @Override
    +        public final void updateNCharacterStream(String columnLabel, Reader reader, long length) throws SQLException {
    +            ctx.resultSet().updateNCharacterStream(columnLabel, reader, length);
    +        }
    +
    +        @Override
    +        public final void updateAsciiStream(int columnIndex, InputStream x, long length) throws SQLException {
    +            ctx.resultSet().updateAsciiStream(columnIndex, x, length);
    +        }
    +
    +        @Override
    +        public final void updateBinaryStream(int columnIndex, InputStream x, long length) throws SQLException {
    +            ctx.resultSet().updateBinaryStream(columnIndex, x, length);
    +        }
    +
    +        @Override
    +        public final void updateCharacterStream(int columnIndex, Reader x, long length) throws SQLException {
    +            ctx.resultSet().updateCharacterStream(columnIndex, x, length);
    +        }
    +
    +        @Override
    +        public final void updateAsciiStream(String columnLabel, InputStream x, long length) throws SQLException {
    +            ctx.resultSet().updateAsciiStream(columnLabel, x, length);
    +        }
    +
    +        @Override
    +        public final void updateBinaryStream(String columnLabel, InputStream x, long length) throws SQLException {
    +            ctx.resultSet().updateBinaryStream(columnLabel, x, length);
    +        }
    +
    +        @Override
    +        public final void updateCharacterStream(String columnLabel, Reader reader, long length) throws SQLException {
    +            ctx.resultSet().updateCharacterStream(columnLabel, reader, length);
    +        }
    +
    +        @Override
    +        public final void updateBlob(int columnIndex, InputStream inputStream, long length) throws SQLException {
    +            ctx.resultSet().updateBlob(columnIndex, inputStream, length);
    +        }
    +
    +        @Override
    +        public final void updateBlob(String columnLabel, InputStream inputStream, long length) throws SQLException {
    +            ctx.resultSet().updateBlob(columnLabel, inputStream, length);
    +        }
    +
    +        @Override
    +        public final void updateClob(int columnIndex, Reader reader, long length) throws SQLException {
    +            ctx.resultSet().updateClob(columnIndex, reader, length);
    +        }
    +
    +        @Override
    +        public final void updateClob(String columnLabel, Reader reader, long length) throws SQLException {
    +            ctx.resultSet().updateClob(columnLabel, reader, length);
    +        }
    +
    +        @Override
    +        public final void updateNClob(int columnIndex, Reader reader, long length) throws SQLException {
    +            ctx.resultSet().updateNClob(columnIndex, reader, length);
    +        }
    +
    +        @Override
    +        public final void updateNClob(String columnLabel, Reader reader, long length) throws SQLException {
    +            ctx.resultSet().updateNClob(columnLabel, reader, length);
    +        }
    +
    +        @Override
    +        public final void updateNCharacterStream(int columnIndex, Reader x) throws SQLException {
    +            ctx.resultSet().updateNCharacterStream(columnIndex, x);
    +        }
    +
    +        @Override
    +        public final void updateNCharacterStream(String columnLabel, Reader reader) throws SQLException {
    +            ctx.resultSet().updateNCharacterStream(columnLabel, reader);
    +        }
    +
    +        @Override
    +        public final void updateAsciiStream(int columnIndex, InputStream x) throws SQLException {
    +            ctx.resultSet().updateAsciiStream(columnIndex, x);
    +        }
    +
    +        @Override
    +        public final void updateBinaryStream(int columnIndex, InputStream x) throws SQLException {
    +            ctx.resultSet().updateBinaryStream(columnIndex, x);
    +        }
    +
    +        @Override
    +        public final void updateCharacterStream(int columnIndex, Reader x) throws SQLException {
    +            ctx.resultSet().updateCharacterStream(columnIndex, x);
    +        }
    +
    +        @Override
    +        public final void updateAsciiStream(String columnLabel, InputStream x) throws SQLException {
    +            ctx.resultSet().updateAsciiStream(columnLabel, x);
    +        }
    +
    +        @Override
    +        public final void updateBinaryStream(String columnLabel, InputStream x) throws SQLException {
    +            ctx.resultSet().updateBinaryStream(columnLabel, x);
    +        }
    +
    +        @Override
    +        public final void updateCharacterStream(String columnLabel, Reader reader) throws SQLException {
    +            ctx.resultSet().updateCharacterStream(columnLabel, reader);
    +        }
    +
    +        @Override
    +        public final void updateBlob(int columnIndex, InputStream inputStream) throws SQLException {
    +            ctx.resultSet().updateBlob(columnIndex, inputStream);
    +        }
    +
    +        @Override
    +        public final void updateBlob(String columnLabel, InputStream inputStream) throws SQLException {
    +            ctx.resultSet().updateBlob(columnLabel, inputStream);
    +        }
    +
    +        @Override
    +        public final void updateClob(int columnIndex, Reader reader) throws SQLException {
    +            ctx.resultSet().updateClob(columnIndex, reader);
    +        }
    +
    +        @Override
    +        public final void updateClob(String columnLabel, Reader reader) throws SQLException {
    +            ctx.resultSet().updateClob(columnLabel, reader);
    +        }
    +
    +        @Override
    +        public final void updateNClob(int columnIndex, Reader reader) throws SQLException {
    +            ctx.resultSet().updateNClob(columnIndex, reader);
    +        }
    +
    +        @Override
    +        public final void updateNClob(String columnLabel, Reader reader) throws SQLException {
    +            ctx.resultSet().updateNClob(columnLabel, reader);
    +        }
    +    }
    +
    +    /**
    +     * An iterator for records fetched by this cursor
    +     */
    +    private final class CursorIterator implements Iterator<R> {
    +
    +        /**
    +         * The (potentially) pre-fetched next record
    +         */
    +        private R next;
    +
    +        /**
    +         * Whether the underlying {@link ResultSet} has a next record. This boolean has three states:
    +         * <ul>
    +         * <li>null: it's not known whether there is a next record</li>
    +         * <li>true: there is a next record, and it has been pre-fetched</li>
    +         * <li>false: there aren't any next records</li>
    +         * </ul>
    +         */
    +        private Boolean hasNext;
    +
    +        @Override
    +        public final boolean hasNext() {
    +            if (hasNext == null) {
    +                next = fetch();
    +                hasNext = (next != null);
    +            }
    +
    +            return hasNext;
    +        }
    +
    +        @Override
    +        public final R next() {
    +            if (hasNext == null) {
    +                return fetch();
    +            }
    +
    +            R result = next;
    +            hasNext = null;
    +            next = null;
    +            return result;
    +        }
    +
    +        private final R fetch() {
    +            R record = null;
    +
    +            try {
    +                if (!isClosed && rs.next()) {
    +                    record = Util.newRecord(type, fields, ctx.configuration());
    +
    +                    ctx.record(record);
    +                    listener.recordStart(ctx);
    +
    +                    final List<Field<?>> fieldList = fields.getFields();
    +                    final int size = fieldList.size();
    +
    +                    for (int i = 0; i < size; i++) {
    +                        setValue((AbstractRecord) record, fieldList.get(i), i);
    +                    }
    +
    +                    ctx.record(record);
    +                    listener.recordEnd(ctx);
    +                }
    +            }
    +            catch (SQLException e) {
    +                throw Util.translate("Cursor.fetch", ctx.sql(), e);
    +            }
    +
    +            // Conveniently close cursors and underlying objects after the last
    +            // Record was fetched
    +            if (record == null) {
    +                CursorImpl.this.close();
    +            }
    +
    +            return record;
    +        }
    +
    +        /**
    +         * Utility method to prevent unnecessary unchecked conversions
    +         */
    +        private final <T> void setValue(AbstractRecord record, Field<T> field, int index) throws SQLException {
    +            T value = FieldTypeHelper.getFromResultSet(ctx, field, index + 1);
    +            record.setValue(field, new Value<T>(value));
    +        }
    +
    +        @Override
    +        public final void remove() {
    +            throw new UnsupportedOperationException();
    +        }
    +    }
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/impl/CustomCondition.java b/jOOQ/src/main/java/org/jooq/impl/CustomCondition.java
    new file mode 100644
    index 00000000000..699eba9807a
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/impl/CustomCondition.java
    @@ -0,0 +1,126 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq.impl;
    +
    +import java.util.Collections;
    +import java.util.List;
    +
    +import org.jooq.Attachable;
    +import org.jooq.BindContext;
    +import org.jooq.Condition;
    +import org.jooq.Configuration;
    +import org.jooq.RenderContext;
    +import org.jooq.exception.DataAccessException;
    +
    +/**
    + * A base class for custom {@link Condition} implementations in client code.
    + * <p>
    + * Client code may provide proper {@link Condition} implementations extending
    + * this useful base class. All necessary parts of the {@link Condition}
    + * interface are already implemented. Only these two methods need further
    + * implementation:
    + * <ul>
    + * <li>{@link #toSQL(org.jooq.RenderContext)}</li>
    + * <li>{@link #bind(org.jooq.BindContext)}</li>
    + * </ul>
    + * Refer to those methods' Javadoc for further details about their expected
    + * behaviour.
    + *
    + * @author Lukas Eder
    + */
    +public abstract class CustomCondition extends AbstractCondition {
    +
    +    /**
    +     * Generated UID
    +     */
    +    private static final long serialVersionUID = -3439681086987884991L;
    +
    +    protected CustomCondition() {
    +    }
    +
    +    // -------------------------------------------------------------------------
    +    // Implementation required
    +    // -------------------------------------------------------------------------
    +
    +    /**
    +     * Subclasses must implement this method
    +     * <hr/>
    +     * {@inheritDoc}
    +     */
    +    @Override
    +    public abstract void toSQL(RenderContext context);
    +
    +    /**
    +     * Subclasses must implement this method
    +     * <hr/>
    +     * {@inheritDoc}
    +     */
    +    @Override
    +    public abstract void bind(BindContext context) throws DataAccessException;
    +
    +    // -------------------------------------------------------------------------
    +    // Further overrides allowed
    +    // -------------------------------------------------------------------------
    +
    +    /**
    +     * Subclasses may further override this method
    +     * <hr/>
    +     * {@inheritDoc}
    +     */
    +    @Override
    +    public List<Attachable> getAttachables() {
    +        return Collections.emptyList();
    +    }
    +
    +    @Override
    +    public void attach(Configuration configuration) {
    +        super.attach(configuration);
    +    }
    +
    +    // -------------------------------------------------------------------------
    +    // No further overrides allowed
    +    // -------------------------------------------------------------------------
    +
    +    @Override
    +    public final boolean declaresFields() {
    +        return super.declaresFields();
    +    }
    +
    +    @Override
    +    public final boolean declaresTables() {
    +        return super.declaresTables();
    +    }
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/impl/CustomField.java b/jOOQ/src/main/java/org/jooq/impl/CustomField.java
    new file mode 100644
    index 00000000000..ce308315721
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/impl/CustomField.java
    @@ -0,0 +1,157 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq.impl;
    +
    +import java.util.Collections;
    +import java.util.List;
    +
    +import org.jooq.Attachable;
    +import org.jooq.BindContext;
    +import org.jooq.Configuration;
    +import org.jooq.DataType;
    +import org.jooq.Field;
    +import org.jooq.RenderContext;
    +import org.jooq.exception.DataAccessException;
    +
    +/**
    + * A base class for custom {@link Field} implementations in client code.
    + * <p>
    + * Client code may provide proper {@link Field} implementations extending this
    + * useful base class. All necessary parts of the {@link Field} interface are
    + * already implemented. Only these two methods need further implementation:
    + * <ul>
    + * <li>{@link #toSQL(org.jooq.RenderContext)}</li>
    + * <li>{@link #bind(org.jooq.BindContext)}</li>
    + * </ul>
    + * Refer to those methods' Javadoc for further details about their expected
    + * behaviour.
    + *
    + * @author Lukas Eder
    + */
    +public abstract class CustomField<T> extends AbstractField<T> {
    +
    +    /**
    +     * Generated UID
    +     */
    +    private static final long serialVersionUID = -1778024624798672262L;
    +
    +    protected CustomField(String name, DataType<T> type) {
    +        super(name, type);
    +    }
    +
    +    // -------------------------------------------------------------------------
    +    // Implementation required
    +    // -------------------------------------------------------------------------
    +
    +    /**
    +     * Subclasses must implement this method
    +     * <hr/>
    +     * {@inheritDoc}
    +     */
    +    @Override
    +    public abstract void toSQL(RenderContext context);
    +
    +    /**
    +     * Subclasses must implement this method
    +     * <hr/>
    +     * {@inheritDoc}
    +     */
    +    @Override
    +    public abstract void bind(BindContext context) throws DataAccessException;
    +
    +    // -------------------------------------------------------------------------
    +    // Further overrides allowed
    +    // -------------------------------------------------------------------------
    +
    +    /**
    +     * Subclasses may further override this method
    +     * <hr/>
    +     * {@inheritDoc}
    +     */
    +    @Override
    +    public boolean isNullLiteral() {
    +        return false;
    +    }
    +
    +    /**
    +     * Subclasses may further override this method
    +     * <hr/>
    +     * {@inheritDoc}
    +     */
    +    @Override
    +    public List<Attachable> getAttachables() {
    +        return Collections.emptyList();
    +    }
    +
    +    /**
    +     * Subclasses may further override this method
    +     * <hr/>
    +     * {@inheritDoc}
    +     */
    +    @Override
    +    public void attach(Configuration configuration) {
    +        super.attach(configuration);
    +    }
    +
    +    // -------------------------------------------------------------------------
    +    // No further overrides allowed
    +    // -------------------------------------------------------------------------
    +
    +    @Override
    +    public final Field<T> as(String alias) {
    +        return super.as(alias);
    +    }
    +
    +    @Override
    +    public final Field<T> add(Field<?> value) {
    +        return super.add(value);
    +    }
    +
    +    @Override
    +    public final Field<T> mul(Field<? extends Number> value) {
    +        return super.mul(value);
    +    }
    +
    +    @Override
    +    public final boolean declaresFields() {
    +        return super.declaresFields();
    +    }
    +
    +    @Override
    +    public final boolean declaresTables() {
    +        return super.declaresTables();
    +    }
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/impl/CustomRecord.java b/jOOQ/src/main/java/org/jooq/impl/CustomRecord.java
    new file mode 100644
    index 00000000000..564c637d16a
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/impl/CustomRecord.java
    @@ -0,0 +1,82 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq.impl;
    +
    +import org.jooq.Cursor;
    +import org.jooq.Record;
    +import org.jooq.Result;
    +import org.jooq.ResultQuery;
    +import org.jooq.Table;
    +import org.jooq.TableRecord;
    +
    +/**
    + * A base class for custom {@link TableRecord} implementations in client code.
    + * <p>
    + * Client code may provide proper {@link TableRecord} implementations extending
    + * this useful base class. All necessary parts of the {@link TableRecord}
    + * interface are already implemented. No methods need further implementation.
    + * <p>
    + * Use this base class when providing custom tables to any of the following
    + * methods:
    + * <ul>
    + * <li>{@link ResultQuery#fetchInto(Table)}</li>
    + * <li>{@link Cursor#fetchInto(Table)}</li>
    + * <li>{@link Result#into(Table)}</li>
    + * <li>{@link Record#into(Table)}</li>
    + * </ul>
    + *
    + * @author Lukas Eder
    + */
    +public abstract class CustomRecord<R extends TableRecord<R>> extends TableRecordImpl<R> {
    +
    +    /**
    +     * Generated UID
    +     */
    +    private static final long serialVersionUID = 5287021930962460241L;
    +
    +    protected CustomRecord(Table<R> table) {
    +        super(table);
    +    }
    +
    +    // -------------------------------------------------------------------------
    +    // No further overrides allowed
    +    // -------------------------------------------------------------------------
    +
    +    @Override
    +    public final Table<R> getTable() {
    +        return super.getTable();
    +    }
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/impl/CustomTable.java b/jOOQ/src/main/java/org/jooq/impl/CustomTable.java
    new file mode 100644
    index 00000000000..e595c7a5ce5
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/impl/CustomTable.java
    @@ -0,0 +1,138 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq.impl;
    +
    +import java.util.List;
    +
    +import org.jooq.Configuration;
    +import org.jooq.Cursor;
    +import org.jooq.ForeignKey;
    +import org.jooq.Identity;
    +import org.jooq.Record;
    +import org.jooq.Result;
    +import org.jooq.ResultQuery;
    +import org.jooq.Schema;
    +import org.jooq.Table;
    +import org.jooq.TableRecord;
    +
    +/**
    + * A base class for custom {@link Table} implementations in client code.
    + * <p>
    + * Client code may provide proper {@link Table} implementations extending this
    + * useful base class. All necessary parts of the {@link Table} interface are
    + * already implemented. Only this method needs further implementation:
    + * <ul>
    + * <li>{@link #getRecordType()}</li>
    + * </ul>
    + * Refer to this method's Javadoc for further details about its expected
    + * behaviour.
    + * <p>
    + * Use this base class when providing custom tables to any of the following
    + * methods:
    + * <ul>
    + * <li>{@link ResultQuery#fetchInto(Table)}</li>
    + * <li>{@link Cursor#fetchInto(Table)}</li>
    + * <li>{@link Result#into(Table)}</li>
    + * <li>{@link Record#into(Table)}</li>
    + * </ul>
    + *
    + * @author Lukas Eder
    + */
    +public abstract class CustomTable<R extends TableRecord<R>> extends TableImpl<R> {
    +
    +    /**
    +     * Generated UID
    +     */
    +    private static final long serialVersionUID = 4300737872863697213L;
    +
    +    protected CustomTable(String name) {
    +        super(name);
    +    }
    +
    +    protected CustomTable(String name, Schema schema) {
    +        super(name, schema);
    +    }
    +
    +    // -------------------------------------------------------------------------
    +    // Implementation required
    +    // -------------------------------------------------------------------------
    +
    +    /**
    +     * Subclasses must implement this method
    +     * <hr/>
    +     * {@inheritDoc}
    +     */
    +    @Override
    +    public abstract Class<? extends R> getRecordType();
    +
    +    // -------------------------------------------------------------------------
    +    // Further overrides allowed
    +    // -------------------------------------------------------------------------
    +
    +    /**
    +     * Subclasses may further override this method
    +     * <hr/>
    +     * {@inheritDoc}
    +     */
    +    @Override
    +    public void attach(Configuration configuration) {
    +        super.attach(configuration);
    +    }
    +
    +    // -------------------------------------------------------------------------
    +    // No further overrides allowed
    +    // -------------------------------------------------------------------------
    +
    +    @Override
    +    public final Identity<R, ? extends Number> getIdentity() {
    +        return super.getIdentity();
    +    }
    +
    +    @Override
    +    public final List<ForeignKey<R, ?>> getReferences() {
    +        return super.getReferences();
    +    }
    +
    +    @Override
    +    public final boolean declaresFields() {
    +        return super.declaresFields();
    +    }
    +
    +    @Override
    +    public final boolean declaresTables() {
    +        return super.declaresTables();
    +    }
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/impl/DataTypes.java b/jOOQ/src/main/java/org/jooq/impl/DataTypes.java
    new file mode 100644
    index 00000000000..baf7df4d2e7
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/impl/DataTypes.java
    @@ -0,0 +1,120 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq.impl;
    +
    +import java.util.HashMap;
    +import java.util.Map;
    +
    +import org.jooq.Converter;
    +import org.jooq.DataType;
    +import org.jooq.exception.DataTypeException;
    +
    +/**
    + * A central {@link DataType} registry
    + *
    + * @author Lukas Eder
    + */
    +final class DataTypes {
    +
    +    private static final Map<Class<?>, Converter<?, ?>> CONVERTERS = new HashMap<Class<?>, Converter<?, ?>>();
    +
    +    // ------------------------------------------------------------------------
    +    // XXX: Public API used for initialisation from generated artefacts
    +    // (this may be rendered public in the future)
    +    // ------------------------------------------------------------------------
    +
    +    /**
    +     * Register a <code>Converter</code> for a custom type
    +     * <p>
    +     * This registers a {@link Converter} for a custom type. This converter will
    +     * be used by jOOQ to recognise custom types and to transform them back to
    +     * well-known database types (as defined in {@link Converter#fromType()}) in
    +     * rendering and binding steps
    +     * <p>
    +     * A custom type can be registered only once. Duplicate registrations will
    +     * be ignored
    +     * <p>
    +     * The converter class must provide a default constructor.
    +     *
    +     * @see #registerConverter(Class, Converter)
    +     */
    +    static final synchronized <U> void registerConverter(Class<U> customType,
    +        Class<? extends Converter<?, U>> converter) {
    +
    +        try {
    +            converter.getConstructor().setAccessible(true);
    +            registerConverter(customType, converter.newInstance());
    +        }
    +        catch (Exception e) {
    +            throw new DataTypeException("Cannot register converter", e);
    +        }
    +    }
    +
    +    /**
    +     * Register a <code>Converter</code> for a custom type
    +     * <p>
    +     * This registers a {@link Converter} for a custom type. This converter will
    +     * be used by jOOQ to recognise custom types and to transform them back to
    +     * well-known database types (as defined in {@link Converter#fromType()}) in
    +     * rendering and binding steps
    +     * <p>
    +     * A custom type can be registered only once. Duplicate registrations will
    +     * be ignored
    +     */
    +    static final synchronized <U> void registerConverter(Class<U> customType, Converter<?, U> converter) {
    +
    +        // A converter can be registered only once
    +        if (!CONVERTERS.containsKey(customType)) {
    +            CONVERTERS.put(customType, converter);
    +        }
    +    }
    +
    +    // ------------------------------------------------------------------------
    +    // XXX: Internal API
    +    // ------------------------------------------------------------------------
    +
    +    @SuppressWarnings("unchecked")
    +    static final <U> Converter<?, U> converter(Class<U> customType) {
    +
    +        // TODO: Is synchronisation needed? How to implement it most efficiently?
    +        return (Converter<?, U>) CONVERTERS.get(customType);
    +    }
    +
    +    /**
    +     * No instances
    +     */
    +    private DataTypes() {}
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/impl/DateDiff.java b/jOOQ/src/main/java/org/jooq/impl/DateDiff.java
    new file mode 100644
    index 00000000000..ed9dc8a61c3
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/impl/DateDiff.java
    @@ -0,0 +1,104 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq.impl;
    +
    +import static org.jooq.impl.Factory.field;
    +import static org.jooq.impl.Factory.function;
    +
    +import java.sql.Date;
    +
    +import org.jooq.Configuration;
    +import org.jooq.Field;
    +import org.jooq.exception.SQLDialectNotSupportedException;
    +
    +/**
    + * @author Lukas Eder
    + */
    +class DateDiff extends AbstractFunction<Integer> {
    +
    +    /**
    +     * Generated UID
    +     */
    +    private static final long serialVersionUID = -4813228000332771961L;
    +
    +    private final Field<Date> date1;
    +    private final Field<Date> date2;
    +
    +    DateDiff(Field<Date> date1, Field<Date> date2) {
    +        super("datediff", SQLDataType.INTEGER, date1, date2);
    +
    +        this.date1 = date1;
    +        this.date2 = date2;
    +    }
    +
    +    @Override
    +    final Field<Integer> getFunction0(Configuration configuration) {
    +        switch (configuration.getDialect()) {
    +            case ASE:
    +            case SQLSERVER:
    +            case SYBASE:
    +                return field("{datediff}(day, {0}, {1})", getDataType(), date2, date1);
    +
    +            case MYSQL:
    +                return function("datediff", getDataType(), date1, date2);
    +
    +            case DB2:
    +                return function("days", getDataType(), date1).sub(
    +                       function("days", getDataType(), date2));
    +
    +            case DERBY:
    +                return field("{fn {timestampdiff}({sql_tsi_day}, {0}, {1}) }", getDataType(), date2, date1);
    +
    +            case H2:
    +            case HSQLDB:
    +                return field("{datediff}('day', {0}, {1})", getDataType(), date2, date1);
    +
    +            case INGRES:
    +                throw new SQLDialectNotSupportedException("Date time arithmetic not supported in Ingres. Contributions welcome!");
    +
    +            case SQLITE:
    +                return field("({strftime}('%s', {0}) - {strftime}('%s', {1})) / 86400", getDataType(), date1, date2);
    +
    +            case CUBRID:
    +            case ORACLE:
    +            case POSTGRES:
    +                return field("{0} - {1}", getDataType(), date1, date2);
    +        }
    +
    +        // Default implementation for equals() and hashCode()
    +        return date1.sub(date2).cast(Integer.class);
    +    }
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/impl/Decode.java b/jOOQ/src/main/java/org/jooq/impl/Decode.java
    new file mode 100644
    index 00000000000..7462de3d0ce
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/impl/Decode.java
    @@ -0,0 +1,101 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq.impl;
    +
    +import static org.jooq.impl.Factory.function;
    +
    +import org.jooq.CaseConditionStep;
    +import org.jooq.Configuration;
    +import org.jooq.Field;
    +
    +/**
    + * @author Lukas Eder
    + */
    +class Decode<T, Z> extends AbstractFunction<Z> {
    +
    +    /**
    +     * Generated UID
    +     */
    +    private static final long serialVersionUID = -7273879239726265322L;
    +
    +    private final Field<T>    field;
    +    private final Field<T>    search;
    +    private final Field<Z>    result;
    +    private final Field<?>[]  more;
    +
    +    public Decode(Field<T> field, Field<T> search, Field<Z> result, Field<?>[] more) {
    +        super("decode", result.getDataType(), Util.combine(field, search, result, more));
    +
    +        this.field = field;
    +        this.search = search;
    +        this.result = result;
    +        this.more = more;
    +    }
    +
    +    @SuppressWarnings("unchecked")
    +    @Override
    +    final Field<Z> getFunction0(Configuration configuration) {
    +        switch (configuration.getDialect()) {
    +
    +            // Oracle actually has this function
    +            case ORACLE: {
    +                return function("decode", getDataType(), getArguments());
    +            }
    +
    +            // Other dialects simulate it with a CASE ... WHEN expression
    +            default: {
    +                CaseConditionStep<Z> when = Factory
    +                    .decode()
    +                    .when(field.equal(search), result);
    +
    +                for (int i = 0; i < more.length; i += 2) {
    +
    +                    // search/result pair
    +                    if (i + 1 < more.length) {
    +                        when = when.when(field.equal((Field<T>) more[i]), (Field<Z>) more[i + 1]);
    +                    }
    +
    +                    // trailing default value
    +                    else {
    +                        return when.otherwise((Field<Z>) more[i]);
    +                    }
    +                }
    +
    +                return when;
    +            }
    +        }
    +    }
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/impl/DefaultArray.java b/jOOQ/src/main/java/org/jooq/impl/DefaultArray.java
    new file mode 100644
    index 00000000000..5ecb92cd1bb
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/impl/DefaultArray.java
    @@ -0,0 +1,110 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq.impl;
    +
    +import java.sql.Array;
    +import java.sql.ResultSet;
    +import java.util.Map;
    +
    +import org.jooq.SQLDialect;
    +import org.jooq.exception.SQLDialectNotSupportedException;
    +
    +class DefaultArray implements Array {
    +
    +    private final SQLDialect dialect;
    +    private final Object[] array;
    +    private final Class<?> type;
    +
    +    public DefaultArray(SQLDialect dialect, Object[] array, Class<?> type) {
    +        this.dialect = dialect;
    +        this.array = array;
    +        this.type = type;
    +    }
    +
    +    @Override
    +    public String getBaseTypeName() {
    +        return FieldTypeHelper.getDataType(dialect, type.getComponentType()).getTypeName();
    +    }
    +
    +    @Override
    +    public int getBaseType() {
    +        throw new SQLDialectNotSupportedException("Array.getBaseType()");
    +    }
    +
    +    @Override
    +    public Object getArray() {
    +        return array;
    +    }
    +
    +    @Override
    +    public Object getArray(Map<String, Class<?>> map) {
    +        return array;
    +    }
    +
    +    @Override
    +    public Object getArray(long index, int count) {
    +        throw new SQLDialectNotSupportedException("Array.getArray(long, int)");
    +    }
    +
    +    @Override
    +    public Object getArray(long index, int count, Map<String, Class<?>> map) {
    +        throw new SQLDialectNotSupportedException("Array.getArray(long, int, Map)");
    +    }
    +
    +    @Override
    +    public ResultSet getResultSet() {
    +        throw new SQLDialectNotSupportedException("Array.getResultSet()");
    +    }
    +
    +    @Override
    +    public ResultSet getResultSet(Map<String, Class<?>> map) {
    +        throw new SQLDialectNotSupportedException("Array.getResultSet(Map)");
    +    }
    +
    +    @Override
    +    public ResultSet getResultSet(long index, int count) {
    +        throw new SQLDialectNotSupportedException("Array.getResultSet(long, int)");
    +    }
    +
    +    @Override
    +    public ResultSet getResultSet(long index, int count, Map<String, Class<?>> map) {
    +        throw new SQLDialectNotSupportedException("Array.getResultSet(long, int, Map)");
    +    }
    +
    +    @Override
    +    public void free() {
    +    }
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/impl/DefaultBindContext.java b/jOOQ/src/main/java/org/jooq/impl/DefaultBindContext.java
    new file mode 100644
    index 00000000000..c3c13c5fdda
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/impl/DefaultBindContext.java
    @@ -0,0 +1,319 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq.impl;
    +
    +import static java.util.Arrays.asList;
    +import static org.jooq.SQLDialect.POSTGRES;
    +import static org.jooq.SQLDialect.SQLITE;
    +import static org.jooq.SQLDialect.SQLSERVER;
    +import static org.jooq.SQLDialect.SYBASE;
    +import static org.jooq.util.postgres.PGIntervalConverter.toPGInterval;
    +
    +import java.math.BigDecimal;
    +import java.math.BigInteger;
    +import java.sql.Blob;
    +import java.sql.Clob;
    +import java.sql.Date;
    +import java.sql.PreparedStatement;
    +import java.sql.SQLException;
    +import java.sql.Time;
    +import java.sql.Timestamp;
    +import java.sql.Types;
    +import java.util.Arrays;
    +
    +import org.jooq.ArrayRecord;
    +import org.jooq.BindContext;
    +import org.jooq.Configuration;
    +import org.jooq.Converter;
    +import org.jooq.EnumType;
    +import org.jooq.MasterDataType;
    +import org.jooq.SQLDialect;
    +import org.jooq.UDTRecord;
    +import org.jooq.exception.SQLDialectNotSupportedException;
    +import org.jooq.tools.JooqLogger;
    +import org.jooq.tools.unsigned.UNumber;
    +import org.jooq.types.DayToSecond;
    +import org.jooq.types.YearToMonth;
    +
    +/**
    + * @author Lukas Eder
    + */
    +class DefaultBindContext extends AbstractBindContext {
    +
    +    /**
    +     * Generated UID
    +     */
    +    private static final long       serialVersionUID = -5457385919209241505L;
    +    private static final JooqLogger log              = JooqLogger.getLogger(Util.class);
    +
    +    private final PreparedStatement stmt;
    +
    +    DefaultBindContext(Configuration configuration, PreparedStatement stmt) {
    +        super(configuration);
    +
    +        this.stmt = stmt;
    +    }
    +
    +    DefaultBindContext(BindContext context) {
    +        this(context, context.statement());
    +
    +        declareFields(context.declareFields());
    +        declareTables(context.declareTables());
    +    }
    +
    +    @Override
    +    public final PreparedStatement statement() {
    +        return stmt;
    +    }
    +
    +    @Override
    +    @SuppressWarnings({ "unchecked", "rawtypes" })
    +    protected final BindContext bindValue0(Object value, Class<?> type) throws SQLException {
    +        SQLDialect dialect = configuration.getDialect();
    +
    +        // [#650] Check first, if we have a converter for the supplied type
    +        Converter<?, ?> converter = DataTypes.converter(type);
    +        if (converter != null) {
    +            value = ((Converter) converter).to(value);
    +            type = converter.fromType();
    +        }
    +
    +        if (log.isTraceEnabled()) {
    +            if (value != null && value.getClass().isArray() && value.getClass() != byte[].class) {
    +                log.trace("Binding variable " + peekIndex(), Arrays.asList((Object[]) value) + " (" + type + ")");
    +            }
    +            else {
    +                log.trace("Binding variable " + peekIndex(), value + " (" + type + ")");
    +            }
    +        }
    +
    +        // Setting null onto a prepared statement is subtly different for every
    +        // SQL dialect. See the following section for details
    +        if (value == null) {
    +            int sqlType = FieldTypeHelper.getDataType(dialect, type).getSQLType();
    +
    +            // Oracle-style ARRAY types need to be bound with their type name
    +            if (ArrayRecord.class.isAssignableFrom(type)) {
    +                String typeName = Util.newArrayRecord((Class<ArrayRecord<?>>) type, configuration).getName();
    +                stmt.setNull(nextIndex(), sqlType, typeName);
    +            }
    +
    +            // [#1126] Oracle's UDTs need to be bound with their type name
    +            else if (UDTRecord.class.isAssignableFrom(type)) {
    +                String typeName = Util.newRecord((Class<UDTRecord<?>>) type).getUDT().getName();
    +                stmt.setNull(nextIndex(), sqlType, typeName);
    +            }
    +
    +            // [#1225] [#1227] TODO Put this logic into DataType
    +            // Some dialects have trouble binding binary data as BLOB
    +            else if (asList(POSTGRES, SYBASE).contains(configuration.getDialect()) && sqlType == Types.BLOB) {
    +                stmt.setNull(nextIndex(), Types.BINARY);
    +            }
    +
    +            // All other types can be set to null if the JDBC type is known
    +            else if (sqlType != Types.OTHER) {
    +                stmt.setNull(nextIndex(), sqlType);
    +            }
    +
    +            // [#725] For SQL Server, unknown types should be set to null
    +            // explicitly, too
    +            else if (configuration.getDialect() == SQLSERVER) {
    +                stmt.setNull(nextIndex(), sqlType);
    +            }
    +
    +            // [#730] For Sybase, unknown types can be set to null using varchar
    +            else if (configuration.getDialect() == SYBASE) {
    +                stmt.setNull(nextIndex(), Types.VARCHAR);
    +            }
    +
    +            // [#729] In the absence of the correct JDBC type, try setObject
    +            else {
    +                stmt.setObject(nextIndex(), null);
    +            }
    +        }
    +        else if (type == Blob.class) {
    +            stmt.setBlob(nextIndex(), (Blob) value);
    +        }
    +        else if (type == Boolean.class) {
    +            stmt.setBoolean(nextIndex(), (Boolean) value);
    +        }
    +        else if (type == BigDecimal.class) {
    +            if (dialect == SQLITE) {
    +                stmt.setString(nextIndex(), value.toString());
    +            }
    +            else {
    +                stmt.setBigDecimal(nextIndex(), (BigDecimal) value);
    +            }
    +        }
    +        else if (type == BigInteger.class) {
    +            if (dialect == SQLITE) {
    +                stmt.setString(nextIndex(), value.toString());
    +            }
    +            else {
    +                stmt.setBigDecimal(nextIndex(), new BigDecimal((BigInteger) value));
    +            }
    +        }
    +        else if (type == Byte.class) {
    +            stmt.setByte(nextIndex(), (Byte) value);
    +        }
    +        else if (type == byte[].class) {
    +            stmt.setBytes(nextIndex(), (byte[]) value);
    +        }
    +        else if (type == Clob.class) {
    +            stmt.setClob(nextIndex(), (Clob) value);
    +        }
    +        else if (type == Double.class) {
    +            stmt.setDouble(nextIndex(), (Double) value);
    +        }
    +        else if (type == Float.class) {
    +            stmt.setFloat(nextIndex(), (Float) value);
    +        }
    +        else if (type == Integer.class) {
    +            stmt.setInt(nextIndex(), (Integer) value);
    +        }
    +        else if (type == Long.class) {
    +            stmt.setLong(nextIndex(), (Long) value);
    +        }
    +        else if (type == Short.class) {
    +            stmt.setShort(nextIndex(), (Short) value);
    +        }
    +        else if (type == String.class) {
    +            stmt.setString(nextIndex(), (String) value);
    +        }
    +
    +        // There is potential for trouble when binding date time as such
    +        // -------------------------------------------------------------
    +        else if (type == Date.class) {
    +            if (dialect == SQLITE) {
    +                stmt.setString(nextIndex(), ((Date) value).toString());
    +            }
    +            else {
    +                stmt.setDate(nextIndex(), (Date) value);
    +            }
    +        }
    +        else if (type == Time.class) {
    +            if (dialect == SQLITE) {
    +                stmt.setString(nextIndex(), ((Time) value).toString());
    +            }
    +            else {
    +                stmt.setTime(nextIndex(), (Time) value);
    +            }
    +        }
    +        else if (type == Timestamp.class) {
    +            if (dialect == SQLITE) {
    +                stmt.setString(nextIndex(), ((Timestamp) value).toString());
    +            }
    +            else {
    +                stmt.setTimestamp(nextIndex(), (Timestamp) value);
    +            }
    +        }
    +
    +        // [#566] Interval data types are best bound as Strings
    +        else if (type == YearToMonth.class) {
    +            if (dialect == POSTGRES) {
    +                stmt.setObject(nextIndex(), toPGInterval((YearToMonth) value));
    +            }
    +            else {
    +                stmt.setString(nextIndex(), value.toString());
    +            }
    +        }
    +        else if (type == DayToSecond.class) {
    +            if (dialect == POSTGRES) {
    +                stmt.setObject(nextIndex(), toPGInterval((DayToSecond) value));
    +            }
    +            else {
    +                stmt.setString(nextIndex(), value.toString());
    +            }
    +        }
    +        else if (UNumber.class.isAssignableFrom(type)) {
    +            stmt.setString(nextIndex(), value.toString());
    +        }
    +
    +        // The type byte[] is handled earlier. byte[][] can be handled here
    +        else if (type.isArray()) {
    +            switch (dialect) {
    +                case POSTGRES: {
    +                    StringBuilder sb = new StringBuilder();
    +                    sb.append("{");
    +
    +                    String separator = "";
    +                    for (Object o : (Object[]) value) {
    +                        sb.append(separator);
    +
    +                        // [#753] null must be set as a literal
    +                        if (o == null) {
    +                            sb.append(o);
    +                        }
    +                        else {
    +                            sb.append("\"");
    +                            sb.append(o.toString().replaceAll("\"", "\"\""));
    +                            sb.append("\"");
    +                        }
    +
    +                        separator = ", ";
    +                    }
    +
    +                    sb.append("}");
    +                    stmt.setString(nextIndex(), sb.toString());
    +                    break;
    +                }
    +                case HSQLDB:
    +                    stmt.setArray(nextIndex(), new DefaultArray(dialect, (Object[]) value, type));
    +                    break;
    +                case H2:
    +                    stmt.setObject(nextIndex(), value);
    +                    break;
    +                default:
    +                    throw new SQLDialectNotSupportedException("Cannot bind ARRAY types in dialect " + dialect);
    +            }
    +        }
    +        else if (ArrayRecord.class.isAssignableFrom(type)) {
    +            stmt.setArray(nextIndex(), ((ArrayRecord<?>) value).createArray());
    +        }
    +        else if (EnumType.class.isAssignableFrom(type)) {
    +            stmt.setString(nextIndex(), ((EnumType) value).getLiteral());
    +        }
    +        else if (MasterDataType.class.isAssignableFrom(type)) {
    +            Object primaryKey = ((MasterDataType<?>) value).getPrimaryKey();
    +            bindValue(primaryKey, primaryKey.getClass());
    +        }
    +        else {
    +            stmt.setObject(nextIndex(), value);
    +        }
    +
    +        return this;
    +    }
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/impl/DefaultConfiguration.java b/jOOQ/src/main/java/org/jooq/impl/DefaultConfiguration.java
    new file mode 100644
    index 00000000000..4614cacc4af
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/impl/DefaultConfiguration.java
    @@ -0,0 +1,113 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq.impl;
    +
    +import java.sql.Connection;
    +import java.util.HashMap;
    +import java.util.Map;
    +
    +import org.jooq.Configuration;
    +import org.jooq.SQLDialect;
    +import org.jooq.conf.Settings;
    +
    +/**
    + * The default configuration, if no other configuration is supplied
    + *
    + * @author Lukas Eder
    + */
    +final class DefaultConfiguration implements Configuration {
    +
    +    /**
    +     * Generated UID
    +     */
    +    private static final long  serialVersionUID      = -5746537675969065088L;
    +
    +    static final Configuration DEFAULT_CONFIGURATION = new DefaultConfiguration();
    +
    +    @SuppressWarnings("deprecation")
    +    @Override
    +    public final SQLDialect getDialect() {
    +        return SQLDialect.SQL99;
    +    }
    +
    +    @Override
    +    public final Connection getConnection() {
    +        return null;
    +    }
    +
    +    @Override
    +    public final void setConnection(Connection connection) {}
    +
    +    @Override
    +    @Deprecated
    +    public final org.jooq.SchemaMapping getSchemaMapping() {
    +        return org.jooq.SchemaMapping.NO_MAPPING;
    +    }
    +
    +    @Override
    +    public final Settings getSettings() {
    +        return new Settings();
    +    }
    +
    +    @Override
    +    public final Map<String, Object> getData() {
    +        return new HashMap<String, Object>();
    +    }
    +
    +    @Override
    +    public final Object getData(String key) {
    +        return null;
    +    }
    +
    +    @Override
    +    public final Object setData(String key, Object value) {
    +        return null;
    +    }
    +
    +    /**
    +     * No further instances
    +     */
    +    private DefaultConfiguration() {}
    +
    +    // -------------------------------------------------------------------------
    +    // XXX The Object API
    +    // -------------------------------------------------------------------------
    +
    +    @Override
    +    public String toString() {
    +        return new Factory(getConnection(), getDialect(), getSettings()).toString();
    +    }
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/impl/DefaultDataType.java b/jOOQ/src/main/java/org/jooq/impl/DefaultDataType.java
    new file mode 100644
    index 00000000000..baf7533c0cd
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/impl/DefaultDataType.java
    @@ -0,0 +1,56 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq.impl;
    +
    +import org.jooq.SQLDialect;
    +
    +/**
    + * A default data type for data types without any specific features or unknown
    + * data types.
    + *
    + * @author Lukas Eder
    + */
    +class DefaultDataType<T> extends AbstractDataType<T> {
    +
    +    /**
    +     * Generated UID
    +     */
    +    private static final long serialVersionUID = -2612295936942892367L;
    +
    +    DefaultDataType(SQLDialect dialect, Class<? extends T> type, String typeName, String castTypeName) {
    +        super(dialect, null, type, typeName, castTypeName);
    +    }
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/impl/DefaultExecuteContext.java b/jOOQ/src/main/java/org/jooq/impl/DefaultExecuteContext.java
    new file mode 100644
    index 00000000000..c90eaa91d94
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/impl/DefaultExecuteContext.java
    @@ -0,0 +1,269 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq.impl;
    +
    +import java.sql.PreparedStatement;
    +import java.sql.ResultSet;
    +
    +import org.jooq.Configuration;
    +import org.jooq.Delete;
    +import org.jooq.ExecuteContext;
    +import org.jooq.ExecuteType;
    +import org.jooq.Insert;
    +import org.jooq.Merge;
    +import org.jooq.Query;
    +import org.jooq.Record;
    +import org.jooq.Result;
    +import org.jooq.ResultQuery;
    +import org.jooq.Routine;
    +import org.jooq.Truncate;
    +import org.jooq.Update;
    +
    +/**
    + * A default iplementation for the {@link ExecuteContext}
    + *
    + * @author Lukas Eder
    + */
    +class DefaultExecuteContext extends AbstractConfiguration implements ExecuteContext {
    +
    +    /**
    +     * Generated UID
    +     */
    +    private static final long           serialVersionUID = -6653474082935089963L;
    +
    +    // Persistent attributes
    +    private final Query                 query;
    +    private final Routine<?>            routine;
    +    private String                      sql;
    +
    +    private final Query[]               batchQueries;
    +    private final String[]              batchSQL;
    +
    +    // Transient attributes
    +    private transient PreparedStatement statement;
    +    private transient ResultSet         resultSet;
    +    private transient Record            record;
    +    private transient Result<?>         result;
    +
    +    DefaultExecuteContext(Configuration configuration) {
    +        this(configuration, null, null, null);
    +    }
    +
    +    DefaultExecuteContext(Configuration configuration, Query[] batchQueries) {
    +        this(configuration, null, batchQueries, null);
    +    }
    +
    +    DefaultExecuteContext(Configuration configuration, Query query) {
    +        this(configuration, query, new Query[] { query }, null);
    +    }
    +
    +    DefaultExecuteContext(Configuration configuration, Routine<?> routine) {
    +        this(configuration, null, null, routine);
    +    }
    +
    +    private DefaultExecuteContext(Configuration configuration, Query query, Query[] batchQueries, Routine<?> routine) {
    +        super(configuration);
    +
    +        this.query = query;
    +        this.batchQueries = (batchQueries == null ? new Query[0] : batchQueries);
    +        this.routine = routine;
    +
    +        if (this.batchQueries.length > 0) {
    +            this.batchSQL = new String[this.batchQueries.length];
    +        }
    +        else if (routine != null) {
    +            this.batchSQL = new String[1];
    +        }
    +        else {
    +            this.batchSQL = new String[0];
    +        }
    +    }
    +
    +    @Override
    +    public final ExecuteType type() {
    +
    +        // This can only be a routine
    +        if (routine != null) {
    +            return ExecuteType.ROUTINE;
    +        }
    +
    +        // This can only be a BatchSingle execution
    +        else if (batchQueries.length == 1 && query == null) {
    +            return ExecuteType.BATCH;
    +        }
    +
    +        // This can only be a BatchMultiple execution
    +        else if (batchQueries.length > 1) {
    +            return ExecuteType.BATCH;
    +        }
    +
    +        // Any other type of query
    +        else if (query != null) {
    +            if (query instanceof ResultQuery) {
    +                return ExecuteType.READ;
    +            }
    +            else if (query instanceof Insert
    +                || query instanceof Update
    +                || query instanceof Delete
    +                || query instanceof Merge) {
    +
    +                return ExecuteType.WRITE;
    +            }
    +            else if (query instanceof Truncate) {
    +                return ExecuteType.DDL;
    +            }
    +
    +            // Analyse SQL in plain SQL queries:
    +            else {
    +                String s = query.getSQL().toLowerCase();
    +
    +                // TODO: Use a simple lexer to parse SQL here. Potentially, the
    +                // SQL Console's SQL formatter could be used...?
    +                if (s.matches("^(with\\b.*?\\bselect|select|explain)\\b.*?")) {
    +                    return ExecuteType.READ;
    +                }
    +
    +                // These are sample DML statements. There may be many more
    +                else if (s.matches("^(insert|update|delete|merge|replace|upsert|lock)\\b.*?")) {
    +                    return ExecuteType.WRITE;
    +                }
    +
    +                // These are only sample DDL statements. There may be many more
    +                else if (s.matches("^(create|alter|drop|truncate|grant|revoke|analyze|comment|flashback|enable|disable)\\b.*?")) {
    +                    return ExecuteType.DDL;
    +                }
    +
    +                // JDBC escape syntax for routines
    +                else if (s.matches("^\\s*\\{\\s*(\\?\\s*=\\s*)call.*?")) {
    +                    return ExecuteType.ROUTINE;
    +                }
    +
    +                // Vendor-specific calling of routines / procedural blocks
    +                else if (s.matches("^(call|begin|declare)\\b.*?")) {
    +                    return ExecuteType.ROUTINE;
    +                }
    +            }
    +        }
    +
    +        // Fetching JDBC result sets, e.g. with Factory.fetch(ResultSet)
    +        else if (resultSet != null) {
    +            return ExecuteType.READ;
    +        }
    +
    +        // No query available
    +        return ExecuteType.OTHER;
    +    }
    +
    +    @Override
    +    public final Query query() {
    +        return query;
    +    }
    +
    +    @Override
    +    public final Query[] batchQueries() {
    +        return batchQueries;
    +    }
    +
    +    @Override
    +    public final Routine<?> routine() {
    +        return routine;
    +    }
    +
    +    @Override
    +    public final void sql(String s) {
    +        this.sql = s;
    +
    +        // If this isn't a batch query
    +        if (batchSQL.length == 1) {
    +            batchSQL[0] = s;
    +        }
    +    }
    +
    +    @Override
    +    public final String sql() {
    +        return sql;
    +    }
    +
    +    @Override
    +    public final String[] batchSQL() {
    +        return batchSQL;
    +    }
    +
    +    @Override
    +    public final void statement(PreparedStatement s) {
    +        this.statement = s;
    +    }
    +
    +    @Override
    +    public final PreparedStatement statement() {
    +        return statement;
    +    }
    +
    +    @Override
    +    public final void resultSet(ResultSet rs) {
    +        this.resultSet = rs;
    +    }
    +
    +    @Override
    +    public final ResultSet resultSet() {
    +        return resultSet;
    +    }
    +
    +    @Override
    +    public final Configuration configuration() {
    +        return configuration;
    +    }
    +
    +    @Override
    +    public final void record(Record r) {
    +        this.record = r;
    +    }
    +
    +    @Override
    +    public final Record record() {
    +        return record;
    +    }
    +
    +    @Override
    +    public final void result(Result<?> r) {
    +        this.result = r;
    +    }
    +
    +    @Override
    +    public final Result<?> result() {
    +        return result;
    +    }
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/impl/DefaultExecuteListener.java b/jOOQ/src/main/java/org/jooq/impl/DefaultExecuteListener.java
    new file mode 100644
    index 00000000000..5871aa7066c
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/impl/DefaultExecuteListener.java
    @@ -0,0 +1,99 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq.impl;
    +
    +import org.jooq.ExecuteContext;
    +import org.jooq.ExecuteListener;
    +
    +/**
    + * A publicly available default implementation of {@link ExecuteListener}.
    + * <p>
    + * Use this to stay compatible with future API changes (i.e. added methods to
    + * <code>ExecuteListener</code>)
    + *
    + * @author Lukas Eder
    + */
    +public class DefaultExecuteListener implements ExecuteListener {
    +
    +    @Override
    +    public void start(ExecuteContext ctx) {}
    +
    +    @Override
    +    public void renderStart(ExecuteContext ctx) {}
    +
    +    @Override
    +    public void renderEnd(ExecuteContext ctx) {}
    +
    +    @Override
    +    public void prepareStart(ExecuteContext ctx) {}
    +
    +    @Override
    +    public void prepareEnd(ExecuteContext ctx) {}
    +
    +    @Override
    +    public void bindStart(ExecuteContext ctx) {}
    +
    +    @Override
    +    public void bindEnd(ExecuteContext ctx) {}
    +
    +    @Override
    +    public void executeStart(ExecuteContext ctx) {}
    +
    +    @Override
    +    public void executeEnd(ExecuteContext ctx) {}
    +
    +    @Override
    +    public void fetchStart(ExecuteContext ctx) {}
    +
    +    @Override
    +    public void resultStart(ExecuteContext ctx) {}
    +
    +    @Override
    +    public void recordStart(ExecuteContext ctx) {}
    +
    +    @Override
    +    public void recordEnd(ExecuteContext ctx) {}
    +
    +    @Override
    +    public void resultEnd(ExecuteContext ctx) {}
    +
    +    @Override
    +    public void fetchEnd(ExecuteContext ctx) {}
    +
    +    @Override
    +    public void end(ExecuteContext ctx) {}
    +
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/impl/DefaultRenderContext.java b/jOOQ/src/main/java/org/jooq/impl/DefaultRenderContext.java
    new file mode 100644
    index 00000000000..5f42ab85bd7
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/impl/DefaultRenderContext.java
    @@ -0,0 +1,381 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq.impl;
    +
    +import static java.util.Arrays.asList;
    +
    +import java.util.Stack;
    +
    +import org.jooq.Configuration;
    +import org.jooq.QueryPart;
    +import org.jooq.QueryPartInternal;
    +import org.jooq.RenderContext;
    +import org.jooq.SQLDialect;
    +import org.jooq.conf.RenderKeywordStyle;
    +import org.jooq.conf.RenderNameStyle;
    +import org.jooq.tools.StringUtils;
    +
    +/**
    + * @author Lukas Eder
    + */
    +class DefaultRenderContext extends AbstractContext<RenderContext> implements RenderContext {
    +
    +    /**
    +     * Generated UID
    +     */
    +    private static final long   serialVersionUID = -8358225526567622252L;
    +
    +    private final StringBuilder sql;
    +    private boolean             inline;
    +    private boolean             renderNamedParams;
    +    private int                 alias;
    +    private CastMode            castMode         = CastMode.DEFAULT;
    +    private SQLDialect[]        castDialects;
    +    private int                 indent;
    +    private Stack<Integer>      indentLock       = new Stack<Integer>();
    +
    +    DefaultRenderContext(Configuration configuration) {
    +        super(configuration);
    +
    +        this.sql = new StringBuilder();
    +    }
    +
    +    DefaultRenderContext(RenderContext context) {
    +        this((Configuration) context);
    +
    +        inline(context.inline());
    +        namedParams(context.namedParams());
    +        declareFields(context.declareFields());
    +        declareTables(context.declareTables());
    +    }
    +
    +    // ------------------------------------------------------------------------
    +    // RenderContext API
    +    // ------------------------------------------------------------------------
    +
    +    @Override
    +    public final String peekAlias() {
    +        return "alias_" + (alias + 1);
    +    }
    +
    +    @Override
    +    public final String nextAlias() {
    +        return "alias_" + (++alias);
    +    }
    +
    +    @Override
    +    public final String render() {
    +        return sql.toString();
    +    }
    +
    +    @Override
    +    public final String render(QueryPart part) {
    +        return new DefaultRenderContext(this).sql(part).render();
    +    }
    +
    +    @Override
    +    public final RenderContext keyword(String keyword) {
    +        if (RenderKeywordStyle.UPPER == getSettings().getRenderKeywordStyle()) {
    +            return sql(keyword.toUpperCase());
    +        }
    +        else {
    +            return sql(keyword.toLowerCase());
    +        }
    +    }
    +
    +    @Override
    +    public final RenderContext sql(String s) {
    +        if (s != null && Boolean.TRUE.equals(getSettings().isRenderFormatted())) {
    +            sql.append(s.replaceAll("[\\n\\r]", "$0" + indentation()));
    +        }
    +        else {
    +            sql.append(s);
    +        }
    +
    +        return this;
    +    }
    +
    +    @Override
    +    public final RenderContext sql(char c) {
    +        sql.append(c);
    +        return this;
    +    }
    +
    +    @Override
    +    public final RenderContext sql(int i) {
    +        sql.append(i);
    +        return this;
    +    }
    +
    +    @Override
    +    public final RenderContext formatNewLine() {
    +        if (Boolean.TRUE.equals(getSettings().isRenderFormatted())) {
    +            sql.append("\n");
    +            sql.append(indentation());
    +        }
    +
    +        return this;
    +    }
    +
    +    private final String indentation() {
    +        return StringUtils.leftPad("", indent, " ");
    +    }
    +
    +    @Override
    +    public final RenderContext formatSeparator() {
    +        if (Boolean.TRUE.equals(getSettings().isRenderFormatted())) {
    +            formatNewLine();
    +        }
    +        else {
    +            sql.append(" ");
    +        }
    +
    +        return this;
    +    }
    +
    +    @Override
    +    public final RenderContext formatIndentStart() {
    +        return formatIndentStart(2);
    +    }
    +
    +    @Override
    +    public final RenderContext formatIndentEnd() {
    +        return formatIndentEnd(2);
    +    }
    +
    +    @Override
    +    public final RenderContext formatIndentStart(int i) {
    +        if (Boolean.TRUE.equals(getSettings().isRenderFormatted())) {
    +            indent += i;
    +        }
    +
    +        return this;
    +    }
    +
    +    @Override
    +    public final RenderContext formatIndentEnd(int i) {
    +        if (Boolean.TRUE.equals(getSettings().isRenderFormatted())) {
    +            indent -= i;
    +        }
    +
    +        return this;
    +    }
    +
    +    @Override
    +    public final RenderContext formatIndentLockStart() {
    +        if (Boolean.TRUE.equals(getSettings().isRenderFormatted())) {
    +            indentLock.push(indent);
    +            String[] lines = sql.toString().split("[\\n\\r]");
    +            indent = lines[lines.length - 1].length();
    +        }
    +
    +        return this;
    +    }
    +
    +    @Override
    +    public final RenderContext formatIndentLockEnd() {
    +        if (Boolean.TRUE.equals(getSettings().isRenderFormatted())) {
    +            indent = indentLock.pop();
    +        }
    +
    +        return this;
    +    }
    +
    +    @Override
    +    public final RenderContext literal(String literal) {
    +        // Literal usually originates from NamedQueryPart.getName(). This could
    +        // be null for CustomTable et al.
    +        if (literal == null) {
    +            return this;
    +        }
    +
    +        RenderNameStyle style = configuration.getSettings().getRenderNameStyle();
    +
    +        if (RenderNameStyle.LOWER == style) {
    +            sql(literal.toLowerCase());
    +        }
    +        else if (RenderNameStyle.UPPER == style) {
    +            sql(literal.toUpperCase());
    +        }
    +        else if (RenderNameStyle.AS_IS == style) {
    +            sql(literal);
    +        }
    +        else {
    +            switch (configuration.getDialect()) {
    +                case MYSQL:
    +                    sql("`").sql(literal).sql("`");
    +                    break;
    +
    +                case CUBRID:
    +                case DB2:
    +                case DERBY:
    +                case H2:
    +                case HSQLDB:
    +                case INGRES:
    +                case ORACLE:
    +                case POSTGRES:
    +                    sql('"').sql(literal).sql('"');
    +                    break;
    +
    +                // SQLite is supposed to support all sorts of delimiters, but it
    +                // seems too buggy
    +                case SQLITE:
    +                    sql(literal);
    +                    break;
    +
    +                case ASE:
    +                case SQLSERVER:
    +                case SYBASE:
    +                    sql("[").sql(literal).sql("]");
    +                    break;
    +
    +                default:
    +                    sql(literal);
    +                    break;
    +            }
    +        }
    +
    +        return this;
    +    }
    +
    +    @Override
    +    public final RenderContext sql(QueryPart part) {
    +        if (part != null) {
    +            QueryPartInternal internal = part.internalAPI(QueryPartInternal.class);
    +
    +            // If this is supposed to be a declaration section and the part isn't
    +            // able to declare anything, then disable declaration temporarily
    +
    +            // We're declaring fields, but "part" does not declare fields
    +            if (declareFields() && !internal.declaresFields()) {
    +                declareFields(false);
    +                internal.toSQL(this);
    +                declareFields(true);
    +            }
    +
    +            // We're declaring tables, but "part" does not declare tables
    +            else if (declareTables() && !internal.declaresTables()) {
    +                declareTables(false);
    +                internal.toSQL(this);
    +                declareTables(true);
    +            }
    +
    +            // We're not declaring, or "part" can declare
    +            else {
    +                internal.toSQL(this);
    +            }
    +        }
    +
    +        return this;
    +    }
    +
    +    @Override
    +    public final boolean inline() {
    +        return inline;
    +    }
    +
    +    @Override
    +    public final RenderContext inline(boolean i) {
    +        this.inline = i;
    +        return this;
    +    }
    +
    +    @Override
    +    public final boolean namedParams() {
    +        return renderNamedParams;
    +    }
    +
    +    @Override
    +    public final RenderContext namedParams(boolean r) {
    +        this.renderNamedParams = r;
    +        return this;
    +    }
    +
    +    @Override
    +    public final CastMode castMode() {
    +        return castMode;
    +    }
    +
    +    @Override
    +    public final RenderContext castMode(CastMode mode) {
    +        this.castMode = mode;
    +        this.castDialects = null;
    +        return this;
    +    }
    +
    +    @Override
    +    public final Boolean cast() {
    +        switch (castMode) {
    +            case ALWAYS:
    +                return true;
    +            case NEVER:
    +                return false;
    +            case SOME:
    +                return asList(castDialects).contains(getDialect());
    +        }
    +
    +        return null;
    +    }
    +
    +    @Override
    +    public final RenderContext castModeSome(SQLDialect... dialects) {
    +        this.castMode = CastMode.SOME;
    +        this.castDialects = dialects;
    +        return this;
    +    }
    +
    +    // ------------------------------------------------------------------------
    +    // Object API
    +    // ------------------------------------------------------------------------
    +
    +    @Override
    +    public String toString() {
    +        StringBuilder sb = new StringBuilder();
    +
    +        sb.append("rendering    [");
    +        sb.append(render());
    +        sb.append("]\n");
    +        sb.append("inlining     [");
    +        sb.append(inline);
    +        sb.append("]\n");
    +        sb.append("named params [");
    +        sb.append(renderNamedParams);
    +        sb.append("]\n");
    +
    +        toString(sb);
    +        return sb.toString();
    +    }
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/impl/Degrees.java b/jOOQ/src/main/java/org/jooq/impl/Degrees.java
    new file mode 100644
    index 00000000000..f906f6091bb
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/impl/Degrees.java
    @@ -0,0 +1,77 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq.impl;
    +
    +import static org.jooq.impl.Factory.function;
    +import static org.jooq.impl.Factory.literal;
    +import static org.jooq.impl.Factory.pi;
    +
    +import java.math.BigDecimal;
    +
    +import org.jooq.Configuration;
    +import org.jooq.Field;
    +
    +/**
    + * @author Lukas Eder
    + */
    +class Degrees extends AbstractFunction<BigDecimal> {
    +
    +    /**
    +     * Generated UID
    +     */
    +    private static final long serialVersionUID = -7273879239726265322L;
    +
    +    private final Field<?>    argument;
    +
    +    Degrees(Field<?> argument) {
    +        super("degrees", SQLDataType.NUMERIC, argument);
    +
    +        this.argument = argument;
    +    }
    +
    +    @Override
    +    final Field<BigDecimal> getFunction0(Configuration configuration) {
    +        switch (configuration.getDialect()) {
    +            case INGRES:
    +            case ORACLE:
    +            case SQLITE:
    +                return argument.cast(BigDecimal.class).mul(literal(180)).div(pi());
    +
    +            default:
    +                return function("degrees", SQLDataType.NUMERIC, argument);
    +        }
    +    }
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/impl/DeleteImpl.java b/jOOQ/src/main/java/org/jooq/impl/DeleteImpl.java
    new file mode 100644
    index 00000000000..f5fc097fd67
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/impl/DeleteImpl.java
    @@ -0,0 +1,182 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq.impl;
    +
    +import static org.jooq.impl.Factory.condition;
    +import static org.jooq.impl.Factory.exists;
    +import static org.jooq.impl.Factory.notExists;
    +
    +import java.util.Collection;
    +
    +import org.jooq.Condition;
    +import org.jooq.Configuration;
    +import org.jooq.DeleteConditionStep;
    +import org.jooq.DeleteWhereStep;
    +import org.jooq.Operator;
    +import org.jooq.Query;
    +import org.jooq.Record;
    +import org.jooq.Select;
    +import org.jooq.Table;
    +
    +/**
    + * @author Lukas Eder
    + */
    +class DeleteImpl<R extends Record>
    +    extends AbstractDelegatingQueryPart<DeleteQueryImpl<R>>
    +    implements
    +
    +    // Cascading interface implementations for Delete behaviour
    +    DeleteWhereStep<R>,
    +    DeleteConditionStep<R> {
    +
    +    /**
    +     * Generated UID
    +     */
    +    private static final long        serialVersionUID = 2747566322757517382L;
    +
    +    DeleteImpl(Configuration configuration, Table<R> table) {
    +        super(new DeleteQueryImpl<R>(configuration, table));
    +    }
    +
    +    @Override
    +    public final int execute() {
    +        return getDelegate().execute();
    +    }
    +
    +    @Override
    +    public final Query bind(String param, Object value) {
    +        return getDelegate().bind(param, value);
    +    }
    +
    +    @Override
    +    public final Query bind(int index, Object value) {
    +        return getDelegate().bind(index, value);
    +    }
    +
    +    @Override
    +    public final DeleteImpl<R> where(Condition... conditions) {
    +        getDelegate().addConditions(conditions);
    +        return this;
    +    }
    +
    +    @Override
    +    public final DeleteImpl<R> where(Collection<Condition> conditions) {
    +        getDelegate().addConditions(conditions);
    +        return this;
    +    }
    +
    +    @Override
    +    public final DeleteImpl<R> where(String sql) {
    +        return where(condition(sql));
    +    }
    +
    +    @Override
    +    public final DeleteImpl<R> where(String sql, Object... bindings) {
    +        return where(condition(sql, bindings));
    +    }
    +
    +    @Override
    +    public final DeleteImpl<R> whereExists(Select<?> select) {
    +        return andExists(select);
    +    }
    +
    +    @Override
    +    public final DeleteImpl<R> whereNotExists(Select<?> select) {
    +        return andNotExists(select);
    +    }
    +
    +    @Override
    +    public final DeleteImpl<R> and(Condition condition) {
    +        getDelegate().addConditions(condition);
    +        return this;
    +    }
    +
    +    @Override
    +    public final DeleteImpl<R> and(String sql) {
    +        return and(condition(sql));
    +    }
    +
    +    @Override
    +    public final DeleteImpl<R> and(String sql, Object... bindings) {
    +        return and(condition(sql, bindings));
    +    }
    +
    +    @Override
    +    public final DeleteImpl<R> andNot(Condition condition) {
    +        return and(condition.not());
    +    }
    +
    +    @Override
    +    public final DeleteImpl<R> andExists(Select<?> select) {
    +        return and(exists(select));
    +    }
    +
    +    @Override
    +    public final DeleteImpl<R> andNotExists(Select<?> select) {
    +        return and(notExists(select));
    +    }
    +
    +    @Override
    +    public final DeleteImpl<R> or(Condition condition) {
    +        getDelegate().addConditions(Operator.OR, condition);
    +        return this;
    +    }
    +
    +    @Override
    +    public final DeleteImpl<R> or(String sql) {
    +        return or(condition(sql));
    +    }
    +
    +    @Override
    +    public final DeleteImpl<R> or(String sql, Object... bindings) {
    +        return or(condition(sql, bindings));
    +    }
    +
    +    @Override
    +    public final DeleteImpl<R> orNot(Condition condition) {
    +        return or(condition.not());
    +    }
    +
    +    @Override
    +    public final DeleteImpl<R> orExists(Select<?> select) {
    +        return or(exists(select));
    +    }
    +
    +    @Override
    +    public final DeleteImpl<R> orNotExists(Select<?> select) {
    +        return or(notExists(select));
    +    }
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/impl/DeleteQueryImpl.java b/jOOQ/src/main/java/org/jooq/impl/DeleteQueryImpl.java
    new file mode 100644
    index 00000000000..2e8790a6a9d
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/impl/DeleteQueryImpl.java
    @@ -0,0 +1,118 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +
    +package org.jooq.impl;
    +
    +import java.util.Collection;
    +import java.util.List;
    +
    +import org.jooq.Attachable;
    +import org.jooq.BindContext;
    +import org.jooq.Condition;
    +import org.jooq.Configuration;
    +import org.jooq.DeleteQuery;
    +import org.jooq.Operator;
    +import org.jooq.Record;
    +import org.jooq.RenderContext;
    +import org.jooq.Table;
    +
    +/**
    + * @author Lukas Eder
    + */
    +class DeleteQueryImpl<R extends Record> extends AbstractQuery implements DeleteQuery<R> {
    +
    +    private static final long           serialVersionUID = -1943687511774150929L;
    +
    +    private final Table<R>              table;
    +    private final ConditionProviderImpl condition;
    +
    +    DeleteQueryImpl(Configuration configuration, Table<R> table) {
    +        super(configuration);
    +
    +        this.table = table;
    +        this.condition = new ConditionProviderImpl();
    +    }
    +
    +    @Override
    +    public final List<Attachable> getAttachables() {
    +        return getAttachables(table, condition);
    +    }
    +
    +    @Override
    +    public final void bind(BindContext context) {
    +        context.bind(getFrom()).bind(getWhere());
    +    }
    +
    +    final Table<R> getFrom() {
    +        return table;
    +    }
    +
    +    final Condition getWhere() {
    +        return condition.getWhere();
    +    }
    +
    +    @Override
    +    public final void addConditions(Collection<Condition> conditions) {
    +        condition.addConditions(conditions);
    +    }
    +
    +    @Override
    +    public final void addConditions(Condition... conditions) {
    +        condition.addConditions(conditions);
    +    }
    +
    +    @Override
    +    public final void addConditions(Operator operator, Condition... conditions) {
    +        condition.addConditions(operator, conditions);
    +    }
    +
    +    @Override
    +    public final void addConditions(Operator operator, Collection<Condition> conditions) {
    +        condition.addConditions(operator, conditions);
    +    }
    +
    +    @Override
    +    public final void toSQL(RenderContext context) {
    +        context.keyword("delete from ");
    +        context.sql(getFrom());
    +
    +        if (!(getWhere() instanceof TrueCondition)) {
    +            context.formatSeparator()
    +                   .keyword("where ")
    +                   .sql(getWhere());
    +        }
    +    }
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/impl/DivideBy.java b/jOOQ/src/main/java/org/jooq/impl/DivideBy.java
    new file mode 100644
    index 00000000000..67c4bc0b043
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/impl/DivideBy.java
    @@ -0,0 +1,286 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq.impl;
    +
    +import static org.jooq.impl.Factory.condition;
    +import static org.jooq.impl.Factory.exists;
    +import static org.jooq.impl.Factory.notExists;
    +
    +import java.util.Arrays;
    +import java.util.Collection;
    +import java.util.List;
    +
    +import org.jooq.Attachable;
    +import org.jooq.BindContext;
    +import org.jooq.Condition;
    +import org.jooq.ConditionProvider;
    +import org.jooq.Configuration;
    +import org.jooq.DivideByOnConditionStep;
    +import org.jooq.DivideByOnStep;
    +import org.jooq.Field;
    +import org.jooq.Operator;
    +import org.jooq.Record;
    +import org.jooq.RenderContext;
    +import org.jooq.Select;
    +import org.jooq.Table;
    +
    +/**
    + * @author Lukas Eder
    + */
    +class DivideBy
    +extends AbstractTable<Record>
    +implements
    +    DivideByOnStep,
    +    DivideByOnConditionStep {
    +
    +    /**
    +     * Generated UID
    +     */
    +    private static final long serialVersionUID = -4999896035630325449L;
    +
    +    private final Table<?>              dividend;
    +    private final Table<?>              divisor;
    +    private final ConditionProviderImpl condition;
    +    private final FieldList             returning;
    +
    +    DivideBy(Table<?> dividend, Table<?> divisor) {
    +        super("division");
    +
    +        this.dividend = dividend;
    +        this.divisor = divisor;
    +
    +        this.condition = new ConditionProviderImpl();
    +        this.returning = new FieldList();
    +    }
    +
    +    // ------------------------------------------------------------------------
    +    // XXX: Table API
    +    // ------------------------------------------------------------------------
    +
    +    @Override
    +    public final Class<? extends Record> getRecordType() {
    +        return RecordImpl.class;
    +    }
    +
    +    @Override
    +    public final boolean declaresTables() {
    +        return true;
    +    }
    +
    +    @Override
    +    public final void toSQL(RenderContext context) {
    +        context.sql(table(context));
    +    }
    +
    +    @Override
    +    public final void bind(BindContext context) {
    +        context.bind(table(context));
    +    }
    +
    +    /**
    +     * Transform the relational division operation into SQL.
    +     * <p>
    +     * Various nice examples of how this can be achieved are found here: <a
    +     * href=
    +     * "http://www.simple-talk.com/sql/t-sql-programming/divided-we-stand-the-sql-of-relational-division/"
    +     * >http://www.simple-talk.com/sql/t-sql-programming/divided-we-stand-the-
    +     * sql-of-relational-division/</a>
    +     */
    +    private final Table<?> table(Configuration configuration) {
    +        Factory create = create(configuration);
    +
    +        ConditionProviderImpl selfJoin = new ConditionProviderImpl();
    +        FieldList select = new FieldList();
    +        Table<?> outer = dividend.as("dividend");
    +
    +        for (Field<?> field : returning) {
    +            Field<?> outerField = outer.getField(field);
    +
    +            // Fields from the RETURNING clause are added AS-IS to the SELECT
    +            // statement, if they're not contained in the dividend table
    +            if (outerField == null) {
    +                select.add(field);
    +            }
    +
    +            // Fields from the RETURNING clause need proper aliasing if they're
    +            // contained in the dividend table
    +            else {
    +                select.add(outerField);
    +                selfJoin(selfJoin, outer, dividend, field);
    +            }
    +        }
    +
    +        // Apply relational division using double-nested NOT EXISTS clauses
    +        // There are more efficient ways to express division in SQL, but those
    +        // are hard to simulate with jOOQ
    +        return create.selectDistinct(select)
    +                     .from(outer)
    +                     .whereNotExists(create
    +                         .selectOne()
    +                         .from(divisor)
    +                         .whereNotExists(create
    +                             .selectOne()
    +                             .from(dividend)
    +                             .where(selfJoin)
    +                             .and(condition)))
    +                     .asTable();
    +    }
    +
    +    /**
    +     * Extracted method for type-safety
    +     */
    +    private final <T> void selfJoin(ConditionProvider selfJoin, Table<?> outer, Table<?> inner, Field<T> field) {
    +        Field<T> outerField = outer.getField(field);
    +        Field<T> innerField = inner.getField(field);
    +
    +        if (outerField == null || innerField == null) {
    +            return;
    +        }
    +        else {
    +            selfJoin.addConditions(outerField.equal(innerField));
    +        }
    +    }
    +
    +    @Override
    +    public final Table<Record> as(String alias) {
    +        return new TableAlias<Record>(this, alias, true);
    +    }
    +
    +    @Override
    +    protected final FieldList getFieldList() {
    +        return new FieldList();
    +    }
    +
    +    @Override
    +    protected final List<Attachable> getAttachables0() {
    +        return getAttachables(dividend, divisor, condition, returning);
    +    }
    +
    +    // ------------------------------------------------------------------------
    +    // XXX: DivideBy API
    +    // ------------------------------------------------------------------------
    +
    +    @Override
    +    public final DivideBy on(Condition... conditions) {
    +        condition.addConditions(conditions);
    +        return this;
    +    }
    +
    +    @Override
    +    public final DivideBy on(String sql) {
    +        and(sql);
    +        return this;
    +    }
    +
    +    @Override
    +    public final DivideBy on(String sql, Object... bindings) {
    +        and(sql, bindings);
    +        return this;
    +    }
    +
    +    @Override
    +    public final DivideBy returning(Field<?>... fields) {
    +        return returning(Arrays.asList(fields));
    +    }
    +
    +    @Override
    +    public final DivideBy returning(Collection<? extends Field<?>> fields) {
    +        returning.addAll(fields);
    +        return this;
    +    }
    +
    +    @Override
    +    public final DivideBy and(Condition c) {
    +        condition.addConditions(c);
    +        return this;
    +    }
    +
    +    @Override
    +    public final DivideBy and(String sql) {
    +        return and(condition(sql));
    +    }
    +
    +    @Override
    +    public final DivideBy and(String sql, Object... bindings) {
    +        return and(condition(sql, bindings));
    +    }
    +
    +    @Override
    +    public final DivideBy andNot(Condition c) {
    +        return and(c.not());
    +    }
    +
    +    @Override
    +    public final DivideBy andExists(Select<?> select) {
    +        return and(exists(select));
    +    }
    +
    +    @Override
    +    public final DivideBy andNotExists(Select<?> select) {
    +        return and(notExists(select));
    +    }
    +
    +    @Override
    +    public final DivideBy or(Condition c) {
    +        condition.addConditions(Operator.OR, c);
    +        return this;
    +    }
    +
    +    @Override
    +    public final DivideBy or(String sql) {
    +        return or(condition(sql));
    +    }
    +
    +    @Override
    +    public final DivideBy or(String sql, Object... bindings) {
    +        return or(condition(sql, bindings));
    +    }
    +
    +    @Override
    +    public final DivideBy orNot(Condition c) {
    +        return or(c.not());
    +    }
    +
    +    @Override
    +    public final DivideBy orExists(Select<?> select) {
    +        return or(exists(select));
    +    }
    +
    +    @Override
    +    public final DivideBy orNotExists(Select<?> select) {
    +        return or(notExists(select));
    +    }
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/impl/Dual.java b/jOOQ/src/main/java/org/jooq/impl/Dual.java
    new file mode 100644
    index 00000000000..4052c66ba39
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/impl/Dual.java
    @@ -0,0 +1,131 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +
    +package org.jooq.impl;
    +
    +import java.util.Collections;
    +import java.util.List;
    +
    +import org.jooq.Attachable;
    +import org.jooq.BindContext;
    +import org.jooq.Record;
    +import org.jooq.RenderContext;
    +import org.jooq.Schema;
    +import org.jooq.Table;
    +
    +/**
    + * @author Lukas Eder
    + */
    +class Dual extends AbstractTable<Record> {
    +
    +    private static final long serialVersionUID = -7492790780048090156L;
    +
    +    Dual() {
    +        super("dual", (Schema) null);
    +    }
    +
    +    @Override
    +    public final Class<? extends Record> getRecordType() {
    +        return RecordImpl.class;
    +    }
    +
    +    @Override
    +    public final Table<Record> as(String alias) {
    +        return new TableAlias<Record>(this, alias);
    +    }
    +
    +    @Override
    +    public final void toSQL(RenderContext context) {
    +        switch (context.getDialect()) {
    +            case ASE:
    +            case POSTGRES:
    +            case SQLITE:
    +            case SQLSERVER:
    +                break;
    +
    +            case HSQLDB:
    +                context.literal("INFORMATION_SCHEMA")
    +                       .sql(".")
    +                       .literal("SYSTEM_USERS");
    +                break;
    +
    +            case CUBRID:
    +                context.literal("db_root");
    +                break;
    +
    +            // These dialects don't have a DUAL table. But simulation is needed
    +            // for queries like SELECT 1 WHERE 1 = 1
    +            case INGRES:
    +                context.keyword("(select 1 as dual) as dual");
    +                break;
    +
    +            case DB2:
    +                context.literal("SYSIBM")
    +                       .sql(".")
    +                       .literal("DUAL");
    +                break;
    +
    +            case DERBY:
    +                context.literal("SYSIBM")
    +                       .sql(".")
    +                       .literal("SYSDUMMY1");
    +                break;
    +
    +            case SYBASE:
    +                context.literal("SYS")
    +                       .sql(".")
    +                       .literal("DUMMY");
    +                break;
    +
    +            default:
    +                context.keyword("dual");
    +                break;
    +        }
    +    }
    +
    +    @Override
    +    public final void bind(BindContext context) {}
    +
    +    @Override
    +    protected final FieldList getFieldList() {
    +        return new FieldList();
    +    }
    +
    +    @Override
    +    protected final List<Attachable> getAttachables0() {
    +        return Collections.emptyList();
    +    }
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/impl/EnumConverter.java b/jOOQ/src/main/java/org/jooq/impl/EnumConverter.java
    new file mode 100644
    index 00000000000..21feacaf7ac
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/impl/EnumConverter.java
    @@ -0,0 +1,121 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq.impl;
    +
    +import static org.jooq.tools.Convert.convert;
    +
    +import java.util.LinkedHashMap;
    +import java.util.Map;
    +
    +import org.jooq.Converter;
    +
    +/**
    + * A base class for enum conversion.
    + *
    + * @author Lukas Eder
    + */
    +public class EnumConverter<T, U extends Enum<U>> implements Converter<T, U> {
    +
    +    /**
    +     * Generated UID
    +     */
    +    private static final long serialVersionUID = -6094337837408829491L;
    +
    +    private final Class<T>    fromType;
    +    private final Class<U>    toType;
    +    private final Map<T, U>   lookup;
    +    private final EnumType    enumType;
    +
    +    public EnumConverter(Class<T> fromType, Class<U> toType) {
    +        this.fromType = fromType;
    +        this.toType = toType;
    +        this.enumType = Number.class.isAssignableFrom(fromType) ? EnumType.ORDINAL : EnumType.STRING;
    +
    +        this.lookup = new LinkedHashMap<T, U>();
    +        for (U u : toType.getEnumConstants()) {
    +            this.lookup.put(to(u), u);
    +        }
    +    }
    +
    +    @Override
    +    public final U from(T databaseObject) {
    +        return lookup.get(databaseObject);
    +    }
    +
    +    /**
    +     * Subclasses may override this method to provide a custom reverse mapping
    +     * implementation
    +     * <p>
    +     * {@inheritDoc}
    +     */
    +    @Override
    +    public T to(U userObject) {
    +        if (enumType == EnumType.ORDINAL) {
    +            return convert(userObject.ordinal(), fromType);
    +        }
    +        else {
    +            return convert(userObject.name(), fromType);
    +        }
    +    }
    +
    +    @Override
    +    public final Class<T> fromType() {
    +        return fromType;
    +    }
    +
    +    @Override
    +    public final Class<U> toType() {
    +        return toType;
    +    }
    +
    +    /**
    +     * The type of the converted <code>Enum</code>.
    +     * <p>
    +     * This corresponds to JPA's <code>EnumType</code>
    +     */
    +    enum EnumType {
    +
    +        /**
    +         * Ordinal enum type
    +         */
    +        ORDINAL,
    +
    +        /**
    +         * String enum type
    +         */
    +        STRING
    +    }
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/impl/Euler.java b/jOOQ/src/main/java/org/jooq/impl/Euler.java
    new file mode 100644
    index 00000000000..54907d91929
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/impl/Euler.java
    @@ -0,0 +1,86 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq.impl;
    +
    +import static org.jooq.impl.Factory.function;
    +import static org.jooq.impl.Factory.literal;
    +import static org.jooq.impl.Factory.one;
    +
    +import java.math.BigDecimal;
    +
    +import org.jooq.Configuration;
    +import org.jooq.Field;
    +
    +/**
    + * @author Lukas Eder
    + */
    +class Euler extends AbstractFunction<BigDecimal> {
    +
    +    /**
    +     * Generated UID
    +     */
    +    private static final long serialVersionUID = -420788300355442056L;
    +
    +    Euler() {
    +        super("e", SQLDataType.NUMERIC);
    +    }
    +
    +    @Override
    +    final Field<BigDecimal> getFunction0(Configuration configuration) {
    +        switch (configuration.getDialect()) {
    +            case ASE:
    +            case CUBRID:
    +            case DB2:
    +            case DERBY:
    +            case H2:
    +            case HSQLDB:
    +            case INGRES:
    +            case MYSQL:
    +            case ORACLE:
    +            case POSTGRES:
    +            case SQLSERVER:
    +            case SYBASE:
    +                return Factory.exp(one());
    +
    +            case SQLITE:
    +                return literal(Math.E, BigDecimal.class);
    +
    +            // The Euler number doesn't seem to exist in any dialect...
    +            default:
    +                return function("e", getDataType());
    +        }
    +    }
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/impl/ExecuteListeners.java b/jOOQ/src/main/java/org/jooq/impl/ExecuteListeners.java
    new file mode 100644
    index 00000000000..50a0c020ec7
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/impl/ExecuteListeners.java
    @@ -0,0 +1,190 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq.impl;
    +
    +import java.util.List;
    +
    +import org.jooq.ExecuteContext;
    +import org.jooq.ExecuteListener;
    +import org.jooq.conf.Settings;
    +
    +/**
    + * A queue implementation for several {@link ExecuteListener} objects as defined
    + * in {@link Settings#getExecuteListeners()}
    + *
    + * @author Lukas Eder
    + */
    +class ExecuteListeners implements ExecuteListener {
    +
    +    private final List<ExecuteListener> listeners;
    +
    +    // In some setups, these two events may get mixed up chronologically by the
    +    // Cursor. Postpone fetchEnd event until after resultEnd event, if there is
    +    // an open Result
    +    private boolean                     resultStart;
    +    private boolean                     fetchEnd;
    +
    +    ExecuteListeners(ExecuteContext ctx) {
    +        listeners = Util.getListeners(ctx);
    +
    +        start(ctx);
    +    }
    +
    +    @Override
    +    public final void start(ExecuteContext ctx) {
    +        for (ExecuteListener listener : listeners) {
    +            listener.start(ctx);
    +        }
    +    }
    +
    +    @Override
    +    public final void renderStart(ExecuteContext ctx) {
    +        for (ExecuteListener listener : listeners) {
    +            listener.renderStart(ctx);
    +        }
    +    }
    +
    +    @Override
    +    public final void renderEnd(ExecuteContext ctx) {
    +        for (ExecuteListener listener : listeners) {
    +            listener.renderEnd(ctx);
    +        }
    +    }
    +
    +    @Override
    +    public final void prepareStart(ExecuteContext ctx) {
    +        for (ExecuteListener listener : listeners) {
    +            listener.prepareStart(ctx);
    +        }
    +    }
    +
    +    @Override
    +    public final void prepareEnd(ExecuteContext ctx) {
    +        for (ExecuteListener listener : listeners) {
    +            listener.prepareEnd(ctx);
    +        }
    +    }
    +
    +    @Override
    +    public final void bindStart(ExecuteContext ctx) {
    +        for (ExecuteListener listener : listeners) {
    +            listener.bindStart(ctx);
    +        }
    +    }
    +
    +    @Override
    +    public final void bindEnd(ExecuteContext ctx) {
    +        for (ExecuteListener listener : listeners) {
    +            listener.bindEnd(ctx);
    +        }
    +    }
    +
    +    @Override
    +    public final void executeStart(ExecuteContext ctx) {
    +        for (ExecuteListener listener : listeners) {
    +            listener.executeStart(ctx);
    +        }
    +    }
    +
    +    @Override
    +    public final void executeEnd(ExecuteContext ctx) {
    +        for (ExecuteListener listener : listeners) {
    +            listener.executeEnd(ctx);
    +        }
    +    }
    +
    +    @Override
    +    public final void fetchStart(ExecuteContext ctx) {
    +        for (ExecuteListener listener : listeners) {
    +            listener.fetchStart(ctx);
    +        }
    +    }
    +
    +    @Override
    +    public final void resultStart(ExecuteContext ctx) {
    +        resultStart = true;
    +
    +        for (ExecuteListener listener : listeners) {
    +            listener.resultStart(ctx);
    +        }
    +    }
    +
    +    @Override
    +    public final void recordStart(ExecuteContext ctx) {
    +        for (ExecuteListener listener : listeners) {
    +            listener.recordStart(ctx);
    +        }
    +    }
    +
    +    @Override
    +    public final void recordEnd(ExecuteContext ctx) {
    +        for (ExecuteListener listener : listeners) {
    +            listener.recordEnd(ctx);
    +        }
    +    }
    +
    +    @Override
    +    public final void resultEnd(ExecuteContext ctx) {
    +        resultStart = false;
    +
    +        for (ExecuteListener listener : listeners) {
    +            listener.resultEnd(ctx);
    +        }
    +
    +        if (fetchEnd) {
    +            fetchEnd(ctx);
    +        }
    +    }
    +
    +    @Override
    +    public final void fetchEnd(ExecuteContext ctx) {
    +        if (resultStart) {
    +            fetchEnd = true;
    +        }
    +        else {
    +            for (ExecuteListener listener : listeners) {
    +                listener.fetchEnd(ctx);
    +            }
    +        }
    +    }
    +
    +    @Override
    +    public final void end(ExecuteContext ctx) {
    +        for (ExecuteListener listener : listeners) {
    +            listener.end(ctx);
    +        }
    +    }
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/impl/ExistsOperator.java b/jOOQ/src/main/java/org/jooq/impl/ExistsOperator.java
    new file mode 100644
    index 00000000000..884cee9d333
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/impl/ExistsOperator.java
    @@ -0,0 +1,58 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +
    +package org.jooq.impl;
    +
    +/**
    + * An operator for the {@link ExistsCondition}
    + *
    + * @author Lukas Eder
    + */
    +enum ExistsOperator {
    +
    +    EXISTS("exists"),
    +    NOT_EXISTS("not exists");
    +
    +    private final String sql;
    +
    +    private ExistsOperator(String sql) {
    +        this.sql = sql;
    +    }
    +
    +    public String toSQL() {
    +        return sql;
    +    }
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/impl/Expression.java b/jOOQ/src/main/java/org/jooq/impl/Expression.java
    new file mode 100644
    index 00000000000..67ee64a5e6e
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/impl/Expression.java
    @@ -0,0 +1,512 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq.impl;
    +
    +import static java.util.Arrays.asList;
    +import static org.jooq.SQLDialect.ASE;
    +import static org.jooq.SQLDialect.DB2;
    +import static org.jooq.SQLDialect.H2;
    +import static org.jooq.SQLDialect.HSQLDB;
    +import static org.jooq.SQLDialect.INGRES;
    +import static org.jooq.SQLDialect.MYSQL;
    +import static org.jooq.SQLDialect.ORACLE;
    +import static org.jooq.SQLDialect.POSTGRES;
    +import static org.jooq.SQLDialect.SQLITE;
    +import static org.jooq.SQLDialect.SQLSERVER;
    +import static org.jooq.SQLDialect.SYBASE;
    +import static org.jooq.impl.ExpressionOperator.ADD;
    +import static org.jooq.impl.ExpressionOperator.BIT_AND;
    +import static org.jooq.impl.ExpressionOperator.BIT_NAND;
    +import static org.jooq.impl.ExpressionOperator.BIT_NOR;
    +import static org.jooq.impl.ExpressionOperator.BIT_OR;
    +import static org.jooq.impl.ExpressionOperator.BIT_XNOR;
    +import static org.jooq.impl.ExpressionOperator.BIT_XOR;
    +import static org.jooq.impl.ExpressionOperator.SHL;
    +import static org.jooq.impl.ExpressionOperator.SHR;
    +import static org.jooq.impl.ExpressionOperator.SUBTRACT;
    +import static org.jooq.impl.Factory.bitAnd;
    +import static org.jooq.impl.Factory.bitNot;
    +import static org.jooq.impl.Factory.bitOr;
    +import static org.jooq.impl.Factory.bitXor;
    +import static org.jooq.impl.Factory.field;
    +import static org.jooq.impl.Factory.function;
    +import static org.jooq.impl.Factory.two;
    +import static org.jooq.impl.Factory.val;
    +
    +import java.sql.Timestamp;
    +import java.util.Arrays;
    +import java.util.List;
    +
    +import org.jooq.Attachable;
    +import org.jooq.BindContext;
    +import org.jooq.Configuration;
    +import org.jooq.DataType;
    +import org.jooq.Field;
    +import org.jooq.Param;
    +import org.jooq.QueryPart;
    +import org.jooq.RenderContext;
    +import org.jooq.SQLDialect;
    +import org.jooq.exception.DataTypeException;
    +import org.jooq.exception.SQLDialectNotSupportedException;
    +import org.jooq.types.DayToSecond;
    +import org.jooq.types.Interval;
    +import org.jooq.types.YearToMonth;
    +
    +class Expression<T> extends AbstractFunction<T> {
    +
    +    /**
    +     * Generated UID
    +     */
    +    private static final long        serialVersionUID = -5522799070693019771L;
    +
    +    private final Field<T>           lhs;
    +    private final FieldList          rhs;
    +    private final ExpressionOperator operator;
    +
    +    Expression(ExpressionOperator operator, Field<T> lhs, Field<?>... rhs) {
    +        super(operator.toSQL(), lhs.getDataType(), Util.combine(lhs, rhs));
    +
    +        this.operator = operator;
    +        this.lhs = lhs;
    +        this.rhs = new FieldList();
    +        this.rhs.addAll(Arrays.asList(rhs));
    +    }
    +
    +    @Override
    +    public final Field<T> add(Field<?> value) {
    +        if (operator == ExpressionOperator.ADD) {
    +            rhs.add(value);
    +            return this;
    +        }
    +
    +        return super.add(value);
    +    }
    +
    +    @Override
    +    public final Field<T> mul(Field<? extends Number> value) {
    +        if (operator == ExpressionOperator.MULTIPLY) {
    +            rhs.add(value);
    +            return this;
    +        }
    +
    +        return super.mul(value);
    +    }
    +
    +    @SuppressWarnings("unchecked")
    +    @Override
    +    final Field<T> getFunction0(Configuration configuration) {
    +        SQLDialect dialect = configuration.getDialect();
    +
    +        // DB2, H2 and HSQLDB know functions, instead of operators
    +        if (BIT_AND == operator && asList(DB2, H2, HSQLDB, ORACLE).contains(dialect)) {
    +            return function("bitand", getDataType(), getArguments());
    +        }
    +        else if (BIT_XOR == operator && asList(DB2, H2, HSQLDB).contains(dialect)) {
    +            return function("bitxor", getDataType(), getArguments());
    +        }
    +        else if (BIT_OR == operator && asList(DB2, H2, HSQLDB).contains(dialect)) {
    +            return function("bitor", getDataType(), getArguments());
    +        }
    +
    +        // Oracle has to simulate or/xor
    +        else if (BIT_OR == operator && ORACLE == dialect) {
    +            return lhs.sub(bitAnd(lhsAsNumber(), rhsAsNumber())).add(rhsAsNumber());
    +        }
    +
    +        // ~(a & b) & (a | b)
    +        else if (BIT_XOR == operator && asList(ORACLE, SQLITE).contains(dialect)) {
    +            return (Field<T>) bitAnd(
    +                bitNot(bitAnd(lhsAsNumber(), rhsAsNumber())),
    +                bitOr(lhsAsNumber(), rhsAsNumber()));
    +        }
    +
    +        // Many dialects don't support shifts. Use multiplication/division instead
    +        else if (SHL == operator && asList(ASE, DB2, H2, HSQLDB, INGRES, ORACLE, SQLSERVER, SYBASE).contains(dialect)) {
    +            return lhs.mul(Factory.power(two(), rhsAsNumber()));
    +        }
    +        else if (SHR == operator && asList(ASE, DB2, H2, HSQLDB, INGRES, ORACLE, SQLSERVER, SYBASE).contains(dialect)) {
    +            return lhs.div(Factory.power(two(), rhsAsNumber()));
    +        }
    +
    +        // These operators are not supported in any dialect
    +        else if (BIT_NAND == operator) {
    +            return (Field<T>) bitNot(bitAnd(lhsAsNumber(), rhsAsNumber()));
    +        }
    +        else if (BIT_NOR == operator) {
    +            return (Field<T>) bitNot(bitOr(lhsAsNumber(), rhsAsNumber()));
    +        }
    +        else if (BIT_XNOR == operator) {
    +            return (Field<T>) bitNot(bitXor(lhsAsNumber(), rhsAsNumber()));
    +        }
    +
    +        // [#585] Date time arithmetic for numeric or interval RHS
    +        else if (asList(ADD, SUBTRACT).contains(operator) &&
    +             lhs.getDataType().isDateTime() &&
    +            (rhs.get(0).getDataType().isNumeric() ||
    +             rhs.get(0).getDataType().isInterval())) {
    +
    +            return new DateExpression();
    +        }
    +
    +        // Use the default operator expression for all other cases
    +        else {
    +            return new DefaultExpression();
    +        }
    +    }
    +
    +    /**
    +     * In some expressions, the lhs can be safely assumed to be a single number
    +     */
    +    @SuppressWarnings("unchecked")
    +    private final Field<Number> lhsAsNumber() {
    +        return (Field<Number>) lhs;
    +    }
    +
    +    /**
    +     * In some expressions, the rhs can be safely assumed to be a single number
    +     */
    +    @SuppressWarnings("unchecked")
    +    private final Field<Number> rhsAsNumber() {
    +        return (Field<Number>) rhs.get(0);
    +    }
    +
    +    @SuppressWarnings("unchecked")
    +    private final YearToMonth rhsAsYTM() {
    +        try {
    +            return ((Param<YearToMonth>) rhs.get(0)).getValue();
    +        }
    +        catch (ClassCastException e) {
    +            throw new DataTypeException("Cannot perform datetime arithmetic with a non-numeric, non-interval data type on the right hand side of the expression: " + rhs.get(0));
    +        }
    +    }
    +
    +    @SuppressWarnings("unchecked")
    +    private final DayToSecond rhsAsDTS() {
    +        try {
    +            return ((Param<DayToSecond>) rhs.get(0)).getValue();
    +        }
    +        catch (ClassCastException e) {
    +            throw new DataTypeException("Cannot perform datetime arithmetic with a non-numeric, non-interval data type on the right hand side of the expression: " + rhs.get(0));
    +        }
    +    }
    +
    +    @SuppressWarnings("unchecked")
    +    private final Interval rhsAsInterval() {
    +        try {
    +            return ((Param<Interval>) rhs.get(0)).getValue();
    +        }
    +        catch (ClassCastException e) {
    +            throw new DataTypeException("Cannot perform datetime arithmetic with a non-numeric, non-interval data type on the right hand side of the expression: " + rhs.get(0));
    +        }
    +    }
    +
    +    private class DateExpression extends AbstractFunction<T> {
    +
    +        /**
    +         * Generated UID
    +         */
    +        private static final long serialVersionUID = 3160679741902222262L;
    +
    +        DateExpression() {
    +            super(operator.toSQL(), lhs.getDataType());
    +        }
    +
    +        @Override
    +        final Field<T> getFunction0(Configuration configuration) {
    +            if (rhs.get(0).getDataType().isInterval()) {
    +                return getIntervalExpression(configuration);
    +            }
    +            else {
    +                return getNumberExpression(configuration);
    +            }
    +        }
    +
    +        /**
    +         * Return the expression to be rendered when the RHS is an interval type
    +         */
    +        private final Field<T> getIntervalExpression(Configuration configuration) {
    +            SQLDialect dialect = configuration.getDialect();
    +            int sign = (operator == ADD) ? 1 : -1;
    +
    +            switch (dialect) {
    +                case ASE:
    +                case SYBASE:
    +                case SQLSERVER: {
    +                    if (rhs.get(0).getType() == YearToMonth.class) {
    +                        return field("{dateadd}(mm, {0}, {1})", getDataType(), val(sign * rhsAsYTM().intValue()), lhs);
    +                    }
    +                    else {
    +                        // SQL Server needs this cast.
    +                        Field<Timestamp> lhsAsTS = lhs.cast(Timestamp.class);
    +                        DayToSecond interval = rhsAsDTS();
    +
    +                        // Be careful with 32-bit INT arithmetic. Sybase ASE
    +                        // may fatally overflow when using micro-second precision
    +                        if (interval.getNano() != 0) {
    +                            return field("{dateadd}(ss, {0}, {dateadd}(us, {1}, {2}))", getDataType(),
    +                                val(sign * (long) interval.getTotalSeconds()),
    +                                val(sign * interval.getMicro()),
    +                                lhsAsTS);
    +                        }
    +                        else {
    +                            return field("{dateadd}(ss, {0}, {1})", getDataType(), val(sign * (long) interval.getTotalSeconds()), lhsAsTS);
    +                        }
    +                    }
    +                }
    +
    +                case CUBRID:
    +                case MYSQL: {
    +                    Interval interval = rhsAsInterval();
    +
    +                    if (operator == SUBTRACT) {
    +                        interval = interval.neg();
    +                    }
    +
    +                    if (rhs.get(0).getType() == YearToMonth.class) {
    +                        return field("{date_add}({0}, {interval} {1} {year_month})", getDataType(), lhs, val(interval, String.class));
    +                    }
    +                    else {
    +                        if (dialect == MYSQL) {
    +                            return field("{date_add}({0}, {interval} {1} {day_microsecond})", getDataType(), lhs, val(interval, String.class));
    +                        }
    +                        else {
    +                            return field("{date_add}({0}, {interval} {1} {day_millisecond})", getDataType(), lhs, val(interval, String.class));
    +                        }
    +                    }
    +                }
    +
    +                case DB2: {
    +                    if (rhs.get(0).getType() == YearToMonth.class) {
    +                        if (operator == ADD) {
    +                            return lhs.add(field("{0} month", val(rhsAsYTM().intValue())));
    +                        }
    +                        else {
    +                            return lhs.sub(field("{0} month", val(rhsAsYTM().intValue())));
    +                        }
    +                    }
    +                    else {
    +                        // DB2 needs this cast if lhs is of type DATE.
    +                        DataType<T> type = lhs.getDataType();
    +
    +                        if (operator == ADD) {
    +                            return lhs.cast(Timestamp.class)
    +                                .add(field("{0} microseconds", val(rhsAsDTS().getTotalMicro())))
    +                                .cast(type);
    +                        }
    +                        else {
    +                            return lhs.cast(Timestamp.class)
    +                                .sub(field("{0} microseconds", val(rhsAsDTS().getTotalMicro())))
    +                                .cast(type);
    +                        }
    +                    }
    +                }
    +
    +                case DERBY:
    +                case HSQLDB: {
    +                    if (rhs.get(0).getType() == YearToMonth.class) {
    +                        return field("{fn {timestampadd}({sql_tsi_month}, {0}, {1}) }",
    +                            getDataType(), val(sign * rhsAsYTM().intValue()), lhs);
    +                    }
    +                    else {
    +                        return field("{fn {timestampadd}({sql_tsi_second}, {0}, {1}) }",
    +                            getDataType(), val(sign * (long) rhsAsDTS().getTotalSeconds()), lhs);
    +                    }
    +                }
    +
    +                case H2: {
    +                    if (rhs.get(0).getType() == YearToMonth.class) {
    +                        return field("{dateadd}('month', {0}, {1})", getDataType(), val(sign * rhsAsYTM().intValue()), lhs);
    +                    }
    +                    else {
    +                        return field("{dateadd}('ms', {0}, {1})", getDataType(), val(sign * (long) rhsAsDTS().getTotalMilli()), lhs);
    +                    }
    +                }
    +
    +                case INGRES: {
    +                    throw new SQLDialectNotSupportedException("Date time arithmetic not supported in Ingres. Contributions welcome!");
    +                }
    +
    +                case SQLITE: {
    +                    String prefix = (sign > 0) ? "+" : "-";
    +
    +                    if (rhs.get(0).getType() == YearToMonth.class) {
    +                        return field("{datetime}({0}, '" + prefix + rhsAsYTM().intValue() + " months')", getDataType(), lhs);
    +                    }
    +                    else {
    +                        return field("{datetime}({0}, '" + prefix + rhsAsDTS().getTotalSeconds() + " seconds')", getDataType(), lhs);
    +                    }
    +                }
    +
    +                case ORACLE:
    +                case POSTGRES:
    +                default:
    +                    return new DefaultExpression();
    +            }
    +        }
    +
    +        /**
    +         * Return the expression to be rendered when the RHS is a number type
    +         */
    +        private final Field<T> getNumberExpression(Configuration configuration) {
    +            switch (configuration.getDialect()) {
    +                case ASE:
    +                case SQLSERVER:
    +                case SYBASE: {
    +                    if (operator == ADD) {
    +                        return field("{dateadd}(day, {0}, {1})", getDataType(), rhsAsNumber(), lhs);
    +                    }
    +                    else {
    +                        return field("{dateadd}(day, {0}, {1})", getDataType(), rhsAsNumber().neg(), lhs);
    +                    }
    +                }
    +
    +                case DB2:
    +                case HSQLDB: {
    +                    if (operator == ADD) {
    +                        return lhs.add(field("{0} day", rhsAsNumber()));
    +                    }
    +                    else {
    +                        return lhs.sub(field("{0} day", rhsAsNumber()));
    +                    }
    +                }
    +
    +                case DERBY: {
    +                    if (operator == ADD) {
    +                        return field("{fn {timestampadd}({sql_tsi_day}, {0}, {1}) }", getDataType(), rhsAsNumber(), lhs);
    +                    }
    +                    else {
    +                        return field("{fn {timestampadd}({sql_tsi_day}, {0}, {1}) }", getDataType(), rhsAsNumber().neg(), lhs);
    +                    }
    +                }
    +
    +                case CUBRID:
    +                case MYSQL: {
    +                    if (operator == ADD) {
    +                        return field("{date_add}({0}, {interval} {1} {day})", getDataType(), lhs, rhsAsNumber());
    +                    }
    +                    else {
    +                        return field("{date_add}({0}, {interval} {1} {day})", getDataType(), lhs, rhsAsNumber().neg());
    +                    }
    +                }
    +
    +                // Ingres is not working yet
    +                case INGRES: {
    +                    if (operator == ADD) {
    +                        return lhs.add(field("{date}({0} || ' days')", Object.class, rhsAsNumber()));
    +                    }
    +                    else {
    +                        return lhs.sub(field("{date}({0} || ' days')", Object.class, rhsAsNumber()));
    +                    }
    +                }
    +
    +                case POSTGRES: {
    +
    +                    // This seems to be the most reliable way to avoid issues
    +                    // with incompatible data types and timezones
    +                    // ? + CAST (? || ' days' as interval)
    +                    if (operator == ADD) {
    +                        return lhs.add(rhsAsNumber().concat(" day").cast(DayToSecond.class));
    +                    }
    +                    else {
    +                        return lhs.sub(rhsAsNumber().concat(" day").cast(DayToSecond.class));
    +                    }
    +                }
    +
    +                case SQLITE:
    +                    if (operator == ADD) {
    +                        return field("{datetime}({0}, '+" + rhsAsNumber() + " day')", getDataType(), lhs);
    +                    }
    +                    else {
    +                        return field("{datetime}({0}, '-" + rhsAsNumber() + " day')", getDataType(), lhs);
    +                    }
    +
    +                // These dialects can add / subtract days using +/- operators
    +                case H2:
    +                case ORACLE:
    +                default:
    +                    return new DefaultExpression();
    +            }
    +        }
    +    }
    +
    +    private class DefaultExpression extends AbstractField<T> {
    +
    +        /**
    +         * Generated UID
    +         */
    +        private static final long serialVersionUID = -5105004317793995419L;
    +
    +        private DefaultExpression() {
    +            super(operator.toSQL(), lhs.getDataType());
    +        }
    +
    +        @Override
    +        public final List<Attachable> getAttachables() {
    +            return Expression.this.getAttachables();
    +        }
    +
    +        @Override
    +        public final void toSQL(RenderContext context) {
    +            String op = operator.toSQL();
    +
    +            if (operator == BIT_XOR && context.getDialect() == POSTGRES) {
    +                op = "#";
    +            }
    +
    +            context.sql("(");
    +            context.sql(lhs);
    +
    +            for (Field<?> field : rhs) {
    +                context.sql(" ")
    +                       .sql(op)
    +                       .sql(" ")
    +                       .sql(field);
    +            }
    +
    +            context.sql(")");
    +        }
    +
    +        @Override
    +        public final void bind(BindContext context) {
    +            context.bind(lhs).bind((QueryPart) rhs);
    +        }
    +
    +        @Override
    +        public final boolean isNullLiteral() {
    +            return false;
    +        }
    +    }
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/impl/ExpressionOperator.java b/jOOQ/src/main/java/org/jooq/impl/ExpressionOperator.java
    new file mode 100644
    index 00000000000..9414d3c45aa
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/impl/ExpressionOperator.java
    @@ -0,0 +1,131 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq.impl;
    +
    +/**
    + * The operator used in {@link Expression}
    + *
    + * @author Lukas Eder
    + */
    +enum ExpressionOperator {
    +
    +    /**
    +     * Concatenation
    +     */
    +    CONCAT("||"),
    +
    +    /**
    +     * Addition
    +     */
    +    ADD("+"),
    +
    +    /**
    +     * Subtraction
    +     */
    +    SUBTRACT("-"),
    +
    +    /**
    +     * Multiplication
    +     */
    +    MULTIPLY("*"),
    +
    +    /**
    +     * Division
    +     */
    +    DIVIDE("/"),
    +
    +    /**
    +     * Modulo
    +     */
    +    MODULO("%"),
    +
    +    /**
    +     * Bitwise not
    +     */
    +    BIT_NOT("~"),
    +
    +    /**
    +     * Bitwise and
    +     */
    +    BIT_AND("&"),
    +
    +    /**
    +     * Bitwise or
    +     */
    +    BIT_OR("|"),
    +
    +    /**
    +     * Bitwise xor
    +     */
    +    BIT_XOR("^"),
    +
    +    /**
    +     * Bitwise and
    +     */
    +    BIT_NAND("~&"),
    +
    +    /**
    +     * Bitwise or
    +     */
    +    BIT_NOR("~|"),
    +
    +    /**
    +     * Bitwise xor
    +     */
    +    BIT_XNOR("~^"),
    +
    +    /**
    +     * Bitwise shift left
    +     */
    +    SHL("<<"),
    +
    +    /**
    +     * Bitwise shift right
    +     */
    +    SHR(">>"),
    +
    +    ;
    +
    +    private final String sql;
    +
    +    private ExpressionOperator(String sql) {
    +        this.sql = sql;
    +    }
    +
    +    public String toSQL() {
    +        return sql;
    +    }
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/impl/Extract.java b/jOOQ/src/main/java/org/jooq/impl/Extract.java
    new file mode 100644
    index 00000000000..f0267ffd9e4
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/impl/Extract.java
    @@ -0,0 +1,153 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +
    +package org.jooq.impl;
    +
    +import static org.jooq.impl.Factory.field;
    +import static org.jooq.impl.Factory.function;
    +
    +import org.jooq.Configuration;
    +import org.jooq.DatePart;
    +import org.jooq.Field;
    +import org.jooq.exception.SQLDialectNotSupportedException;
    +
    +/**
    + * @author Lukas Eder
    + */
    +class Extract extends AbstractFunction<Integer> {
    +
    +    private static final long serialVersionUID = 3748640920856031034L;
    +
    +    private final Field<?>    field;
    +    private final DatePart    datePart;
    +
    +    Extract(Field<?> field, DatePart datePart) {
    +        super("extract", SQLDataType.INTEGER, field);
    +
    +        this.field = field;
    +        this.datePart = datePart;
    +    }
    +
    +    @Override
    +    final Field<Integer> getFunction0(Configuration configuration) {
    +        switch (configuration.getDialect()) {
    +            case SQLITE:
    +                switch (datePart) {
    +                    case YEAR:
    +                        return field("{strftime}('%Y', {0})", SQLDataType.INTEGER, field);
    +                    case MONTH:
    +                        return field("{strftime}('%m', {0})", SQLDataType.INTEGER, field);
    +                    case DAY:
    +                        return field("{strftime}('%d', {0})", SQLDataType.INTEGER, field);
    +                    case HOUR:
    +                        return field("{strftime}('%H', {0})", SQLDataType.INTEGER, field);
    +                    case MINUTE:
    +                        return field("{strftime}('%M', {0})", SQLDataType.INTEGER, field);
    +                    case SECOND:
    +                        return field("{strftime}('%S', {0})", SQLDataType.INTEGER, field);
    +                    default:
    +                        throw new SQLDialectNotSupportedException("DatePart not supported: " + datePart);
    +                }
    +
    +            case DERBY:
    +            case DB2:
    +                switch (datePart) {
    +                    case YEAR:
    +                        return function("year", SQLDataType.INTEGER, field);
    +                    case MONTH:
    +                        return function("month", SQLDataType.INTEGER, field);
    +                    case DAY:
    +                        return function("day", SQLDataType.INTEGER, field);
    +                    case HOUR:
    +                        return function("hour", SQLDataType.INTEGER, field);
    +                    case MINUTE:
    +                        return function("minute", SQLDataType.INTEGER, field);
    +                    case SECOND:
    +                        return function("second", SQLDataType.INTEGER, field);
    +                    default:
    +                        throw new SQLDialectNotSupportedException("DatePart not supported: " + datePart);
    +                }
    +
    +            case ORACLE:
    +                switch (datePart) {
    +                    case YEAR:
    +                        return field("{to_char}({0}, 'YYYY')", SQLDataType.INTEGER, field);
    +                    case MONTH:
    +                        return field("{to_char}({0}, 'MM')", SQLDataType.INTEGER, field);
    +                    case DAY:
    +                        return field("{to_char}({0}, 'DD')", SQLDataType.INTEGER, field);
    +                    case HOUR:
    +                        return field("{to_char}({0}, 'HH24')", SQLDataType.INTEGER, field);
    +                    case MINUTE:
    +                        return field("{to_char}({0}, 'MI')", SQLDataType.INTEGER, field);
    +                    case SECOND:
    +                        return field("{to_char}({0}, 'SS')", SQLDataType.INTEGER, field);
    +                    default:
    +                        throw new SQLDialectNotSupportedException("DatePart not supported: " + datePart);
    +                }
    +
    +            case ASE:
    +            case SQLSERVER:
    +            case SYBASE:
    +                switch (datePart) {
    +                    case YEAR:
    +                        return field("{datepart}(yy, {0})", SQLDataType.INTEGER, field);
    +                    case MONTH:
    +                        return field("{datepart}(mm, {0})", SQLDataType.INTEGER, field);
    +                    case DAY:
    +                        return field("{datepart}(dd, {0})", SQLDataType.INTEGER, field);
    +                    case HOUR:
    +                        return field("{datepart}(hh, {0})", SQLDataType.INTEGER, field);
    +                    case MINUTE:
    +                        return field("{datepart}(mi, {0})", SQLDataType.INTEGER, field);
    +                    case SECOND:
    +                        return field("{datepart}(ss, {0})", SQLDataType.INTEGER, field);
    +                    default:
    +                        throw new SQLDialectNotSupportedException("DatePart not supported: " + datePart);
    +                }
    +
    +            case INGRES:
    +            case MYSQL:
    +            case POSTGRES:
    +            case HSQLDB:
    +            case H2:
    +
    +            // A default implementation is necessary for hashCode() and toString()
    +            default:
    +                return field("{extract}({" + datePart.toSQL() + " from} {0})", SQLDataType.INTEGER, field);
    +        }
    +    }
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/impl/Factory.java b/jOOQ/src/main/java/org/jooq/impl/Factory.java
    new file mode 100644
    index 00000000000..39a1ad6d11f
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/impl/Factory.java
    @@ -0,0 +1,5255 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +
    +package org.jooq.impl;
    +
    +import static org.jooq.SQLDialect.ASE;
    +import static org.jooq.SQLDialect.CUBRID;
    +import static org.jooq.SQLDialect.DB2;
    +import static org.jooq.SQLDialect.DERBY;
    +import static org.jooq.SQLDialect.H2;
    +import static org.jooq.SQLDialect.HSQLDB;
    +import static org.jooq.SQLDialect.INGRES;
    +import static org.jooq.SQLDialect.MYSQL;
    +import static org.jooq.SQLDialect.ORACLE;
    +import static org.jooq.SQLDialect.POSTGRES;
    +import static org.jooq.SQLDialect.SQLITE;
    +import static org.jooq.SQLDialect.SQLSERVER;
    +import static org.jooq.SQLDialect.SYBASE;
    +import static org.jooq.conf.SettingsTools.getRenderMapping;
    +import static org.jooq.impl.Util.combine;
    +
    +import java.io.IOException;
    +import java.io.ObjectInputStream;
    +import java.io.ObjectOutputStream;
    +import java.io.StringWriter;
    +import java.math.BigDecimal;
    +import java.math.BigInteger;
    +import java.sql.Connection;
    +import java.sql.Date;
    +import java.sql.PreparedStatement;
    +import java.sql.ResultSet;
    +import java.sql.ResultSetMetaData;
    +import java.sql.SQLException;
    +import java.sql.Time;
    +import java.sql.Timestamp;
    +import java.util.Arrays;
    +import java.util.Collection;
    +import java.util.Collections;
    +import java.util.HashMap;
    +import java.util.List;
    +import java.util.Map;
    +
    +import javax.xml.bind.JAXB;
    +
    +import org.jooq.AggregateFunction;
    +import org.jooq.ArrayRecord;
    +import org.jooq.Attachable;
    +import org.jooq.Batch;
    +import org.jooq.BatchBindStep;
    +import org.jooq.BindContext;
    +import org.jooq.Case;
    +import org.jooq.Condition;
    +import org.jooq.Configuration;
    +import org.jooq.Cursor;
    +import org.jooq.DataType;
    +import org.jooq.DatePart;
    +import org.jooq.DeleteQuery;
    +import org.jooq.DeleteWhereStep;
    +import org.jooq.ExecuteContext;
    +import org.jooq.ExecuteListener;
    +import org.jooq.FactoryOperations;
    +import org.jooq.Field;
    +import org.jooq.FieldProvider;
    +import org.jooq.GroupConcatOrderByStep;
    +import org.jooq.Insert;
    +import org.jooq.InsertQuery;
    +import org.jooq.InsertSetStep;
    +import org.jooq.InsertValuesStep;
    +import org.jooq.LoaderOptionsStep;
    +import org.jooq.MergeUsingStep;
    +import org.jooq.OrderedAggregateFunction;
    +import org.jooq.Param;
    +import org.jooq.Query;
    +import org.jooq.QueryPart;
    +import org.jooq.Record;
    +import org.jooq.RenderContext;
    +import org.jooq.Result;
    +import org.jooq.ResultQuery;
    +import org.jooq.SQLDialect;
    +import org.jooq.Schema;
    +import org.jooq.Select;
    +import org.jooq.SelectQuery;
    +import org.jooq.SelectSelectStep;
    +import org.jooq.Sequence;
    +import org.jooq.SimpleSelectQuery;
    +import org.jooq.SimpleSelectWhereStep;
    +import org.jooq.Support;
    +import org.jooq.Table;
    +import org.jooq.TableLike;
    +import org.jooq.TableRecord;
    +import org.jooq.Truncate;
    +import org.jooq.UDT;
    +import org.jooq.UDTRecord;
    +import org.jooq.UpdateQuery;
    +import org.jooq.UpdateSetStep;
    +import org.jooq.WindowIgnoreNullsStep;
    +import org.jooq.WindowOverStep;
    +import org.jooq.conf.Settings;
    +import org.jooq.conf.SettingsTools;
    +import org.jooq.exception.DataAccessException;
    +import org.jooq.exception.InvalidResultException;
    +import org.jooq.exception.SQLDialectNotSupportedException;
    +import org.jooq.tools.JooqLogger;
    +import org.jooq.types.DayToSecond;
    +
    +/**
    + * A factory providing implementations to the org.jooq interfaces
    + * <p>
    + * This factory is the main entry point for client code, to access jOOQ classes
    + * and functionality. Here, you can instanciate all of those objects that cannot
    + * be accessed through other objects. For example, to create a {@link Field}
    + * representing a constant value, you can write:
    + * <p>
    + * <code><pre>
    + * Field&lt;String&gt; field = Factory.val("Hello World")
    + * </pre></code>
    + * <p>
    + * Also, some SQL clauses cannot be expressed easily with DSL, for instance the
    + * EXISTS clause, as it is not applied on a concrete object (yet). Hence you
    + * should write
    + * <p>
    + * <code><pre>
    + * Condition condition = Factory.exists(new Factory().select(...));
    + * </pre></code>
    + * <p>
    + * A <code>Factory</code> holds a reference to a JDBC {@link Connection} and
    + * operates upon that connection. This means, that a <code>Factory</code> is
    + * <i>not</i> thread-safe, since a JDBC Connection is not thread-safe either.
    + *
    + * @author Lukas Eder
    + */
    +public class Factory implements FactoryOperations {
    +
    +    /**
    +     * Generated UID
    +     */
    +    private static final long            serialVersionUID  = 2681360188806309513L;
    +    private static final JooqLogger      log               = JooqLogger.getLogger(Factory.class);
    +
    +    private static final Factory[]       DEFAULT_INSTANCES = new Factory[SQLDialect.values().length];
    +
    +    private transient Connection         connection;
    +    private final SQLDialect             dialect;
    +
    +    @SuppressWarnings("deprecation")
    +    private final org.jooq.SchemaMapping mapping;
    +    private final Settings               settings;
    +    private final Map<String, Object>    data;
    +
    +    // -------------------------------------------------------------------------
    +    // XXX Constructors
    +    // -------------------------------------------------------------------------
    +
    +    /**
    +     * Create a factory with connection and dialect configured
    +     *
    +     * @param connection The connection to use with objects created from this
    +     *            factory
    +     * @param dialect The dialect to use with objects created from this factory
    +     */
    +    public Factory(Connection connection, SQLDialect dialect) {
    +        this(connection, dialect, null, null, null);
    +    }
    +
    +    /**
    +     * Create a factory with connection, a dialect and a schema mapping
    +     * configured
    +     *
    +     * @param connection The connection to use with objects created from this
    +     *            factory
    +     * @param dialect The dialect to use with objects created from this factory
    +     * @param mapping The schema mapping to use with objects created from this
    +     *            factory
    +     * @deprecated - 2.0.5 - Use
    +     *             {@link #Factory(Connection, SQLDialect, Settings)} instead
    +     */
    +    @Deprecated
    +    public Factory(Connection connection, SQLDialect dialect, org.jooq.SchemaMapping mapping) {
    +        this(connection, dialect, null, null, null);
    +    }
    +
    +    /**
    +     * Create a factory with connection, a dialect and a schema mapping
    +     * configured
    +     *
    +     * @param connection The connection to use with objects created from this
    +     *            factory
    +     * @param dialect The dialect to use with objects created from this factory
    +     * @param settings The runtime settings to apply to objects created from
    +     *            this factory
    +     */
    +    @SuppressWarnings("deprecation")
    +    public Factory(Connection connection, SQLDialect dialect, Settings settings) {
    +        this(connection, dialect, settings, new org.jooq.SchemaMapping(settings), null);
    +    }
    +
    +    /**
    +     * Do the instanciation
    +     */
    +    @SuppressWarnings("deprecation")
    +    private Factory(Connection connection, SQLDialect dialect, Settings settings, org.jooq.SchemaMapping mapping, Map<String, Object> data) {
    +        this.connection = connection;
    +        this.dialect = dialect;
    +        this.settings = settings != null ? settings : SettingsTools.defaultSettings();
    +        this.mapping = mapping != null ? mapping : new org.jooq.SchemaMapping(this.settings);
    +        this.data = data != null ? data : new HashMap<String, Object>();
    +    }
    +
    +    // -------------------------------------------------------------------------
    +    // XXX Configuration API
    +    // -------------------------------------------------------------------------
    +
    +    /**
    +     * {@inheritDoc}
    +     */
    +    @Override
    +    public final SQLDialect getDialect() {
    +        return dialect;
    +    }
    +
    +    /**
    +     * {@inheritDoc}
    +     */
    +    @Override
    +    public final Connection getConnection() {
    +        if (connection == null) {
    +            return null;
    +        }
    +        else if (connection.getClass() == ConnectionProxy.class) {
    +            return connection;
    +        }
    +        else {
    +            return new ConnectionProxy(connection, settings);
    +        }
    +    }
    +
    +    @Override
    +    public final void setConnection(Connection connection) {
    +        this.connection = connection;
    +    }
    +
    +    /**
    +     * {@inheritDoc}
    +     */
    +    @Override
    +    @Deprecated
    +    public final org.jooq.SchemaMapping getSchemaMapping() {
    +        return mapping;
    +    }
    +
    +    /**
    +     * {@inheritDoc}
    +     */
    +    @Override
    +    public final Settings getSettings() {
    +        return settings;
    +    }
    +
    +    /**
    +     * {@inheritDoc}
    +     */
    +    @Override
    +    public final Map<String, Object> getData() {
    +        return data;
    +    }
    +
    +    /**
    +     * {@inheritDoc}
    +     */
    +    @Override
    +    public final Object getData(String key) {
    +        return data.get(key);
    +    }
    +
    +    /**
    +     * {@inheritDoc}
    +     */
    +    @Override
    +    public final Object setData(String key, Object value) {
    +        return data.put(key, value);
    +    }
    +
    +    // -------------------------------------------------------------------------
    +    // XXX RenderContext and BindContext accessors
    +    // -------------------------------------------------------------------------
    +
    +    /**
    +     * Get a new {@link RenderContext} for the context of this factory
    +     * <p>
    +     * This will return an initialised render context as such:
    +     * <ul>
    +     * <li> <code>{@link RenderContext#declareFields()} == false</code></li>
    +     * <li> <code>{@link RenderContext#declareTables()} == false</code></li>
    +     * <li> <code>{@link RenderContext#inline()} == false</code></li>
    +     * <li> <code>{@link RenderContext#namedParams()} == false</code></li>
    +     * </ul>
    +     * <p>
    +     * RenderContext for JOOQ INTERNAL USE only. Avoid referencing it directly
    +     */
    +    public final RenderContext renderContext() {
    +        return new DefaultRenderContext(this);
    +    }
    +
    +    /**
    +     * {@inheritDoc}
    +     */
    +    @Override
    +    public final String render(QueryPart part) {
    +        return renderContext().render(part);
    +    }
    +
    +    /**
    +     * {@inheritDoc}
    +     */
    +    @Override
    +    public final String renderNamedParams(QueryPart part) {
    +        return renderContext().namedParams(true).render(part);
    +    }
    +
    +    /**
    +     * {@inheritDoc}
    +     */
    +    @Override
    +    public final String renderInlined(QueryPart part) {
    +        return renderContext().inline(true).render(part);
    +    }
    +
    +    /**
    +     * Get a new {@link BindContext} for the context of this factory
    +     * <p>
    +     * This will return an initialised bind context as such:
    +     * <ul>
    +     * <li> <code>{@link RenderContext#declareFields()} == false</code></li>
    +     * <li> <code>{@link RenderContext#declareTables()} == false</code></li>
    +     * </ul>
    +     * <p>
    +     * RenderContext for JOOQ INTERNAL USE only. Avoid referencing it directly
    +     */
    +    public final BindContext bindContext(PreparedStatement stmt) {
    +        return new DefaultBindContext(this, stmt);
    +    }
    +
    +    /**
    +     * Get a new {@link BindContext} for the context of this factory
    +     * <p>
    +     * This will return an initialised bind context as such:
    +     * <ul>
    +     * <li> <code>{@link RenderContext#declareFields()} == false</code></li>
    +     * <li> <code>{@link RenderContext#declareTables()} == false</code></li>
    +     * </ul>
    +     * <p>
    +     * RenderContext for JOOQ INTERNAL USE only. Avoid referencing it directly
    +     */
    +    public final int bind(QueryPart part, PreparedStatement stmt) {
    +        return bindContext(stmt).bind(part).peekIndex();
    +    }
    +
    +    // -------------------------------------------------------------------------
    +    // XXX Attachable and Serializable API
    +    // -------------------------------------------------------------------------
    +
    +    /**
    +     * {@inheritDoc}
    +     */
    +    @Override
    +    public final void attach(Attachable... attachables) {
    +        attach(Arrays.asList(attachables));
    +    }
    +
    +    /**
    +     * {@inheritDoc}
    +     */
    +    @Override
    +    public final void attach(Collection<Attachable> attachables) {
    +        for (Attachable attachable : attachables) {
    +            attachable.attach(this);
    +        }
    +    }
    +
    +    // -------------------------------------------------------------------------
    +    // XXX Access to the loader API
    +    // -------------------------------------------------------------------------
    +
    +    /**
    +     * {@inheritDoc}
    +     */
    +    @Override
    +    public final <R extends TableRecord<R>> LoaderOptionsStep<R> loadInto(Table<R> table) {
    +        return new LoaderImpl<R>(this, table);
    +    }
    +
    +    // -------------------------------------------------------------------------
    +    // XXX Conversion of objects into tables
    +    // -------------------------------------------------------------------------
    +
    +    /**
    +     * A synonym for {@link Select#asTable()}. It might look a bit more fluent
    +     * like this, to some users
    +     *
    +     * @see Select#asTable()
    +     */
    +    public static <R extends Record> Table<R> table(Select<R> select) {
    +        return select.asTable();
    +    }
    +
    +    /**
    +     * A synonym for {@link #unnest(List)}
    +     *
    +     * @see #unnest(List)
    +     */
    +    @Support
    +    public static Table<?> table(List<?> list) {
    +        return table(list.toArray());
    +    }
    +
    +    /**
    +     * A synonym for {@link #unnest(Object[])}
    +     *
    +     * @see #unnest(Object[])
    +     */
    +    @Support
    +    public static Table<?> table(Object[] array) {
    +        return table(val(array));
    +    }
    +
    +    /**
    +     * A synonym for {@link #unnest(ArrayRecord)}
    +     *
    +     * @see #unnest(ArrayRecord)
    +     */
    +    @Support(ORACLE)
    +    public static Table<?> table(ArrayRecord<?> array) {
    +        return table(val(array));
    +    }
    +
    +    /**
    +     * A synonym for {@link #unnest(Field)}
    +     *
    +     * @see #unnest(Field)
    +     */
    +    @Support({ H2, HSQLDB, POSTGRES, ORACLE })
    +    public static Table<?> table(Field<?> cursor) {
    +        return unnest(cursor);
    +    }
    +
    +    /**
    +     * Create a table from a list of values
    +     * <p>
    +     * This is equivalent to the <code>TABLE</code> function for H2, or the
    +     * <code>UNNEST</code> function in HSQLDB and Postgres
    +     * <p>
    +     * For Oracle, use {@link #table(ArrayRecord)} instead, as Oracle knows only
    +     * typed arrays
    +     * <p>
    +     * In all other dialects, unnesting of arrays is simulated using several
    +     * <code>UNION ALL</code> connected subqueries.
    +     */
    +    @Support
    +    public static Table<?> unnest(List<?> list) {
    +        return unnest(list.toArray());
    +    }
    +
    +    /**
    +     * Create a table from an array of values
    +     * <p>
    +     * This is equivalent to the <code>TABLE</code> function for H2, or the
    +     * <code>UNNEST</code> function in HSQLDB and Postgres
    +     * <p>
    +     * For Oracle, use {@link #table(ArrayRecord)} instead, as Oracle knows only
    +     * typed arrays
    +     * <p>
    +     * In all other dialects, unnesting of arrays is simulated using several
    +     * <code>UNION ALL</code> connected subqueries.
    +     */
    +    @Support
    +    public static Table<?> unnest(Object[] array) {
    +        return unnest(val(array));
    +    }
    +
    +    /**
    +     * Create a table from an array of values
    +     * <p>
    +     * This wraps the argument array in a <code>TABLE</code> function for
    +     * Oracle. Currently, only Oracle knows typed arrays
    +     */
    +    @Support(ORACLE)
    +    public static Table<?> unnest(ArrayRecord<?> array) {
    +        return unnest(val(array));
    +    }
    +
    +    /**
    +     * Create a table from a field. The supplied field can have any of these
    +     * types:
    +     * <ul>
    +     * <li> {@link Result}: For <code>CURSOR</code> or <code>REF CURSOR</code>
    +     * fields, typically fetched from stored functions or from nested tables</li>
    +     * <li> {@link ArrayRecord}: For Oracle-style <code>VARRAY</code> types.</li>
    +     * <li> {@link Object}[]: Array types, for other RDBMS's ARRAY types (e.g.
    +     * H2, HSQLDB, and Postgres)</li>
    +     * <li> {@link Object}: Any other type that jOOQ will try to convert in an
    +     * array first, before converting that array into a table</li>
    +     * </ul>
    +     * <p>
    +     * This functionality has only limited scope when used in H2, as ARRAY types
    +     * involved with stored functions can only be of type <code>Object[]</code>.
    +     * Such arrays are converted into <code>VARCHAR</code> arrays by jOOQ.
    +     * <p>
    +     * In all dialects where arrays are not supported, unnesting of arrays is
    +     * simulated using several <code>UNION ALL</code> connected subqueries.
    +     */
    +    @Support({ H2, HSQLDB, POSTGRES, ORACLE })
    +    public static Table<?> unnest(Field<?> cursor) {
    +        if (cursor == null) {
    +            throw new IllegalArgumentException();
    +        }
    +
    +        // The field is an actual CURSOR or REF CURSOR returned from a stored
    +        // procedure or from a NESTED TABLE
    +        else if (cursor.getType() == Result.class) {
    +            return new FunctionTable<Record>(cursor);
    +        }
    +
    +        // The field is an Oracle-style VARRAY constant
    +        else if (ArrayConstant.class.isAssignableFrom(cursor.getClass())) {
    +            return new ArrayTable(cursor);
    +        }
    +
    +        // The field is an Oracle-style VARRAY field
    +        else if (ArrayRecord.class.isAssignableFrom(cursor.getDataType().getType())) {
    +            return new ArrayTable(cursor);
    +        }
    +
    +        // The field is a regular array
    +        else if (cursor.getType().isArray() && cursor.getType() != byte[].class) {
    +            return new ArrayTable(cursor);
    +        }
    +
    +        // The field has any other type. Try to make it an array
    +        throw new SQLDialectNotSupportedException("Converting arbitrary types into array tables is currently not supported");
    +    }
    +
    +    // -------------------------------------------------------------------------
    +    // XXX Plain SQL object factory
    +    // -------------------------------------------------------------------------
    +
    +    /**
    +     * A PlainSQLTable is a table that can contain user-defined plain SQL,
    +     * because sometimes it is easier to express things directly in SQL, for
    +     * instance complex, but static subqueries or tables from different schemas.
    +     * <p>
    +     * Example
    +     * <p>
    +     * <code><pre>
    +     * String sql = "SELECT * FROM USER_TABLES WHERE OWNER = 'MY_SCHEMA'";
    +     * </pre></code>
    +     * <p>
    +     * The provided SQL must evaluate as a table whose type can be dynamically
    +     * discovered using JDBC's {@link ResultSetMetaData} methods. That way, you
    +     * can be sure that calling methods, such as {@link Table#getFields()} will
    +     * list the actual fields returned from your result set.
    +     * <p>
    +     * <b>NOTE</b>: When inserting plain SQL into jOOQ objects, you must
    +     * guarantee syntax integrity. You may also create the possibility of
    +     * malicious SQL injection. Be sure to properly use bind variables and/or
    +     * escape literals when concatenated into SQL clauses!
    +     *
    +     * @param sql The SQL
    +     * @return A table wrapping the plain SQL
    +     */
    +    @Support
    +    public static Table<Record> table(String sql) {
    +        return table(sql, new Object[0]);
    +    }
    +
    +    /**
    +     * A PlainSQLTable is a table that can contain user-defined plain SQL,
    +     * because sometimes it is easier to express things directly in SQL, for
    +     * instance complex, but static subqueries or tables from different schemas.
    +     * There must be as many binding variables contained in the SQL, as passed
    +     * in the bindings parameter
    +     * <p>
    +     * Example
    +     * <p>
    +     * <code><pre>
    +     * String sql = "SELECT * FROM USER_TABLES WHERE OWNER = ?";
    +     * Object[] bindings = new Object[] { "MY_SCHEMA" };
    +     * </pre></code>
    +     * <p>
    +     * The provided SQL must evaluate as a table whose type can be dynamically
    +     * discovered using JDBC's {@link ResultSetMetaData} methods. That way, you
    +     * can be sure that calling methods, such as {@link Table#getFields()} will
    +     * list the actual fields returned from your result set.
    +     * <p>
    +     * <b>NOTE</b>: When inserting plain SQL into jOOQ objects, you must
    +     * guarantee syntax integrity. You may also create the possibility of
    +     * malicious SQL injection. Be sure to properly use bind variables and/or
    +     * escape literals when concatenated into SQL clauses!
    +     *
    +     * @param sql The SQL
    +     * @return A table wrapping the plain SQL
    +     */
    +    @Support
    +    public static Table<Record> table(String sql, Object... bindings) {
    +        return new SQLTable(sql, bindings);
    +    }
    +
    +    /**
    +     * A custom SQL clause that can render arbitrary SQL elements.
    +     * <p>
    +     * This is useful for constructing more complex SQL syntax elements wherever
    +     * <code>Field</code> types are expected. An example for this is MySQL's
    +     * <code>GROUP_CONCAT</code> aggregate function, which has MySQL-specific
    +     * keywords that are hard to reflect in jOOQ's DSL: <code><pre>
    +     * GROUP_CONCAT([DISTINCT] expr [,expr ...]
    +     *       [ORDER BY {unsigned_integer | col_name | expr}
    +     *           [ASC | DESC] [,col_name ...]]
    +     *       [SEPARATOR str_val])
    +     *       </pre></code>
    +     * <p>
    +     * The above MySQL function can be expressed as such: <code><pre>
    +     * clause("GROUP_CONCAT(DISTINCT {0} ORDER BY {1} ASC DEPARATOR '-')", expr1, expr2);
    +     * </pre></code>
    +     * <p>
    +     * <b>NOTE</b>: When inserting plain SQL into jOOQ objects, you must
    +     * guarantee syntax integrity. You may also create the possibility of
    +     * malicious SQL injection. Be sure to properly use bind variables and/or
    +     * escape literals when concatenated into SQL clauses!
    +     *
    +     * @param sql The SQL clause, containing {numbered placeholders} where query
    +     *            parts can be injected
    +     * @return A field wrapping the plain SQL
    +     */
    +    public static Field<Object> field(String sql, QueryPart... parts) {
    +        return new SQLClause<Object>(sql, SQLDataType.OTHER, parts);
    +    }
    +
    +    /**
    +     * A custom SQL clause that can render arbitrary SQL elements.
    +     * <p>
    +     * This is useful for constructing more complex SQL syntax elements wherever
    +     * <code>Field</code> types are expected. An example for this is MySQL's
    +     * <code>GROUP_CONCAT</code> aggregate function, which has MySQL-specific
    +     * keywords that are hard to reflect in jOOQ's DSL: <code><pre>
    +     * GROUP_CONCAT([DISTINCT] expr [,expr ...]
    +     *       [ORDER BY {unsigned_integer | col_name | expr}
    +     *           [ASC | DESC] [,col_name ...]]
    +     *       [SEPARATOR str_val])
    +     *       </pre></code>
    +     * <p>
    +     * The above MySQL function can be expressed as such: <code><pre>
    +     * clause("GROUP_CONCAT(DISTINCT {0} ORDER BY {1} ASC DEPARATOR '-')", expr1, expr2);
    +     * </pre></code>
    +     * <p>
    +     * <b>NOTE</b>: When inserting plain SQL into jOOQ objects, you must
    +     * guarantee syntax integrity. You may also create the possibility of
    +     * malicious SQL injection. Be sure to properly use bind variables and/or
    +     * escape literals when concatenated into SQL clauses!
    +     *
    +     * @param sql The SQL clause, containing {numbered placeholders} where query
    +     *            parts can be injected
    +     * @param type The field type
    +     * @return A field wrapping the plain SQL
    +     */
    +    public static <T> Field<T> field(String sql, Class<T> type, QueryPart... parts) {
    +        return new SQLClause<T>(sql, getDataType(type), parts);
    +    }
    +
    +    /**
    +     * A custom SQL clause that can render arbitrary SQL elements.
    +     * <p>
    +     * This is useful for constructing more complex SQL syntax elements wherever
    +     * <code>Field</code> types are expected. An example for this is MySQL's
    +     * <code>GROUP_CONCAT</code> aggregate function, which has MySQL-specific
    +     * keywords that are hard to reflect in jOOQ's DSL: <code><pre>
    +     * GROUP_CONCAT([DISTINCT] expr [,expr ...]
    +     *       [ORDER BY {unsigned_integer | col_name | expr}
    +     *           [ASC | DESC] [,col_name ...]]
    +     *       [SEPARATOR str_val])
    +     *       </pre></code>
    +     * <p>
    +     * The above MySQL function can be expressed as such: <code><pre>
    +     * clause("GROUP_CONCAT(DISTINCT {0} ORDER BY {1} ASC DEPARATOR '-')", expr1, expr2);
    +     * </pre></code>
    +     * <p>
    +     * <b>NOTE</b>: When inserting plain SQL into jOOQ objects, you must
    +     * guarantee syntax integrity. You may also create the possibility of
    +     * malicious SQL injection. Be sure to properly use bind variables and/or
    +     * escape literals when concatenated into SQL clauses!
    +     *
    +     * @param sql The SQL clause, containing {numbered placeholders} where query
    +     *            parts can be injected
    +     * @param type The field type
    +     * @return A field wrapping the plain SQL
    +     */
    +    public static <T> Field<T> field(String sql, DataType<T> type, QueryPart... parts) {
    +        return new SQLClause<T>(sql, type, parts);
    +    }
    +
    +    /**
    +     * A PlainSQLField is a field that can contain user-defined plain SQL,
    +     * because sometimes it is easier to express things directly in SQL, for
    +     * instance complex proprietary functions. There must not be any binding
    +     * variables contained in the SQL.
    +     * <p>
    +     * Example:
    +     * <p>
    +     * <code><pre>
    +     * String sql = "DECODE(MY_FIELD, 1, 100, 200)";
    +     * </pre></code>
    +     * <p>
    +     * <b>NOTE</b>: When inserting plain SQL into jOOQ objects, you must
    +     * guarantee syntax integrity. You may also create the possibility of
    +     * malicious SQL injection. Be sure to properly use bind variables and/or
    +     * escape literals when concatenated into SQL clauses!
    +     *
    +     * @param sql The SQL
    +     * @return A field wrapping the plain SQL
    +     */
    +    @Support
    +    public static Field<Object> field(String sql) {
    +        return field(sql, new Object[0]);
    +    }
    +
    +    /**
    +     * A PlainSQLField is a field that can contain user-defined plain SQL,
    +     * because sometimes it is easier to express things directly in SQL, for
    +     * instance complex proprietary functions. There must be as many binding
    +     * variables contained in the SQL, as passed in the bindings parameter
    +     * <p>
    +     * Example:
    +     * <p>
    +     * <code><pre>
    +     * String sql = "DECODE(MY_FIELD, ?, ?, ?)";
    +     * Object[] bindings = new Object[] { 1, 100, 200 };</pre></code>
    +     * <p>
    +     * <b>NOTE</b>: When inserting plain SQL into jOOQ objects, you must
    +     * guarantee syntax integrity. You may also create the possibility of
    +     * malicious SQL injection. Be sure to properly use bind variables and/or
    +     * escape literals when concatenated into SQL clauses!
    +     *
    +     * @param sql The SQL
    +     * @param bindings The bindings for the field
    +     * @return A field wrapping the plain SQL
    +     */
    +    @Support
    +    public static Field<Object> field(String sql, Object... bindings) {
    +        return field(sql, Object.class, bindings);
    +    }
    +
    +    /**
    +     * A PlainSQLField is a field that can contain user-defined plain SQL,
    +     * because sometimes it is easier to express things directly in SQL, for
    +     * instance complex proprietary functions. There must not be any binding
    +     * variables contained in the SQL.
    +     * <p>
    +     * Example:
    +     * <p>
    +     * <code><pre>
    +     * String sql = "DECODE(MY_FIELD, 1, 100, 200)";
    +     * </pre></code>
    +     * <p>
    +     * <b>NOTE</b>: When inserting plain SQL into jOOQ objects, you must
    +     * guarantee syntax integrity. You may also create the possibility of
    +     * malicious SQL injection. Be sure to properly use bind variables and/or
    +     * escape literals when concatenated into SQL clauses!
    +     *
    +     * @param sql The SQL
    +     * @param type The field type
    +     * @return A field wrapping the plain SQL
    +     */
    +    @Support
    +    public static <T> Field<T> field(String sql, Class<T> type) {
    +        return field(sql, type, new Object[0]);
    +    }
    +
    +    /**
    +     * A PlainSQLField is a field that can contain user-defined plain SQL,
    +     * because sometimes it is easier to express things directly in SQL, for
    +     * instance complex proprietary functions. There must be as many binding
    +     * variables contained in the SQL, as passed in the bindings parameter
    +     * <p>
    +     * Example:
    +     * <p>
    +     * <code><pre>
    +     * String sql = "DECODE(MY_FIELD, ?, ?, ?)";
    +     * Object[] bindings = new Object[] { 1, 100, 200 };</pre></code>
    +     * <p>
    +     * <b>NOTE</b>: When inserting plain SQL into jOOQ objects, you must
    +     * guarantee syntax integrity. You may also create the possibility of
    +     * malicious SQL injection. Be sure to properly use bind variables and/or
    +     * escape literals when concatenated into SQL clauses!
    +     *
    +     * @param sql The SQL
    +     * @param type The field type
    +     * @param bindings The bindings for the field
    +     * @return A field wrapping the plain SQL
    +     */
    +    @Support
    +    public static <T> Field<T> field(String sql, Class<T> type, Object... bindings) {
    +        return field(sql, getDataType(type), bindings);
    +    }
    +
    +    /**
    +     * A PlainSQLField is a field that can contain user-defined plain SQL,
    +     * because sometimes it is easier to express things directly in SQL, for
    +     * instance complex proprietary functions. There must not be any binding
    +     * variables contained in the SQL.
    +     * <p>
    +     * Example:
    +     * <p>
    +     * <code><pre>
    +     * String sql = "DECODE(MY_FIELD, 1, 100, 200)";
    +     * </pre></code>
    +     * <p>
    +     * <b>NOTE</b>: When inserting plain SQL into jOOQ objects, you must
    +     * guarantee syntax integrity. You may also create the possibility of
    +     * malicious SQL injection. Be sure to properly use bind variables and/or
    +     * escape literals when concatenated into SQL clauses!
    +     *
    +     * @param sql The SQL
    +     * @param type The field type
    +     * @return A field wrapping the plain SQL
    +     */
    +    @Support
    +    public static <T> Field<T> field(String sql, DataType<T> type) {
    +        return field(sql, type, new Object[0]);
    +    }
    +
    +    /**
    +     * A PlainSQLField is a field that can contain user-defined plain SQL,
    +     * because sometimes it is easier to express things directly in SQL, for
    +     * instance complex proprietary functions. There must be as many binding
    +     * variables contained in the SQL, as passed in the bindings parameter
    +     * <p>
    +     * Example:
    +     * <p>
    +     * <code><pre>
    +     * String sql = "DECODE(MY_FIELD, ?, ?, ?)";
    +     * Object[] bindings = new Object[] { 1, 100, 200 };</pre></code>
    +     * <p>
    +     * <b>NOTE</b>: When inserting plain SQL into jOOQ objects, you must
    +     * guarantee syntax integrity. You may also create the possibility of
    +     * malicious SQL injection. Be sure to properly use bind variables and/or
    +     * escape literals when concatenated into SQL clauses!
    +     *
    +     * @param sql The SQL
    +     * @param type The field type
    +     * @param bindings The bindings for the field
    +     * @return A field wrapping the plain SQL
    +     */
    +    @Support
    +    public static <T> Field<T> field(String sql, DataType<T> type, Object... bindings) {
    +        return new SQLField<T>(sql, type, bindings);
    +    }
    +
    +    /**
    +     * <code>function()</code> can be used to access native functions that are
    +     * not yet or insufficiently supported by jOOQ
    +     * <p>
    +     * <b>NOTE</b>: When inserting plain SQL into jOOQ objects, you must
    +     * guarantee syntax integrity. You may also create the possibility of
    +     * malicious SQL injection. Be sure to properly use bind variables and/or
    +     * escape literals when concatenated into SQL clauses!
    +     */
    +    @Support
    +    public static <T> Field<T> function(String name, Class<T> type, Field<?>... arguments) {
    +        return function(name, getDataType(type), nullSafe(arguments));
    +    }
    +
    +    /**
    +     * <code>function()</code> can be used to access native functions that are
    +     * not yet or insufficiently supported by jOOQ
    +     * <p>
    +     * <b>NOTE</b>: When inserting plain SQL into jOOQ objects, you must
    +     * guarantee syntax integrity. You may also create the possibility of
    +     * malicious SQL injection. Be sure to properly use bind variables and/or
    +     * escape literals when concatenated into SQL clauses!
    +     */
    +    @Support
    +    public static <T> Field<T> function(String name, DataType<T> type, Field<?>... arguments) {
    +        return new Function<T>(name, type, nullSafe(arguments));
    +    }
    +
    +    /**
    +     * Create a new condition holding plain SQL. There must not be any binding
    +     * variables contained in the SQL
    +     * <p>
    +     * Example:
    +     * <p>
    +     * <code><pre>
    +     * String sql = "(X = 1 and Y = 2)";</pre></code>
    +     * <p>
    +     * <b>NOTE</b>: When inserting plain SQL into jOOQ objects, you must
    +     * guarantee syntax integrity. You may also create the possibility of
    +     * malicious SQL injection. Be sure to properly use bind variables and/or
    +     * escape literals when concatenated into SQL clauses!
    +     *
    +     * @param sql The SQL
    +     * @return A condition wrapping the plain SQL
    +     */
    +    @Support
    +    public static Condition condition(String sql) {
    +        return condition(sql, new Object[0]);
    +    }
    +
    +    /**
    +     * Create a new condition holding plain SQL. There must be as many binding
    +     * variables contained in the SQL, as passed in the bindings parameter
    +     * <p>
    +     * Example:
    +     * <p>
    +     * <code><pre>
    +     * String sql = "(X = ? and Y = ?)";
    +     * Object[] bindings = new Object[] { 1, 2 };</pre></code>
    +     * <p>
    +     * <b>NOTE</b>: When inserting plain SQL into jOOQ objects, you must
    +     * guarantee syntax integrity. You may also create the possibility of
    +     * malicious SQL injection. Be sure to properly use bind variables and/or
    +     * escape literals when concatenated into SQL clauses!
    +     *
    +     * @param sql The SQL
    +     * @param bindings The bindings
    +     * @return A condition wrapping the plain SQL
    +     */
    +    @Support
    +    public static Condition condition(String sql, Object... bindings) {
    +        return new SQLCondition(sql, bindings);
    +    }
    +
    +    /**
    +     * {@inheritDoc}
    +     */
    +    @Override
    +    public final Query query(String sql) {
    +        return query(sql, new Object[0]);
    +    }
    +
    +    /**
    +     * {@inheritDoc}
    +     */
    +    @Override
    +    public final Query query(String sql, Object... bindings) {
    +        return new SQLQuery(this, sql, bindings);
    +    }
    +
    +    /**
    +     * {@inheritDoc}
    +     */
    +    @Override
    +    public final Result<Record> fetch(String sql) {
    +        return resultQuery(sql).fetch();
    +    }
    +
    +    /**
    +     * {@inheritDoc}
    +     */
    +    @Override
    +    public final Result<Record> fetch(String sql, Object... bindings) {
    +        return resultQuery(sql, bindings).fetch();
    +    }
    +
    +    /**
    +     * {@inheritDoc}
    +     */
    +    @Override
    +    public final Cursor<Record> fetchLazy(String sql) throws DataAccessException {
    +        return resultQuery(sql).fetchLazy();
    +    }
    +
    +    /**
    +     * {@inheritDoc}
    +     */
    +    @Override
    +    public final Cursor<Record> fetchLazy(String sql, Object... bindings) throws DataAccessException {
    +        return resultQuery(sql, bindings).fetchLazy();
    +    }
    +
    +    /**
    +     * {@inheritDoc}
    +     */
    +    @Override
    +    public final List<Result<Record>> fetchMany(String sql) {
    +        return resultQuery(sql).fetchMany();
    +    }
    +
    +    /**
    +     * {@inheritDoc}
    +     */
    +    @Override
    +    public final List<Result<Record>> fetchMany(String sql, Object... bindings) {
    +        return resultQuery(sql, bindings).fetchMany();
    +    }
    +
    +    /**
    +     * {@inheritDoc}
    +     */
    +    @Override
    +    public final Record fetchOne(String sql) {
    +        return resultQuery(sql).fetchOne();
    +    }
    +
    +    /**
    +     * {@inheritDoc}
    +     */
    +    @Override
    +    public final Record fetchOne(String sql, Object... bindings) {
    +        return resultQuery(sql, bindings).fetchOne();
    +    }
    +
    +    /**
    +     * {@inheritDoc}
    +     */
    +    @Override
    +    public final int execute(String sql) throws DataAccessException {
    +        return query(sql).execute();
    +    }
    +
    +    /**
    +     * {@inheritDoc}
    +     */
    +    @Override
    +    public final int execute(String sql, Object... bindings) throws DataAccessException {
    +        return query(sql, bindings).execute();
    +    }
    +
    +    /**
    +     * {@inheritDoc}
    +     */
    +    @Override
    +    public final ResultQuery<Record> resultQuery(String sql) throws DataAccessException {
    +        return resultQuery(sql, new Object[0]);
    +    }
    +
    +    /**
    +     * {@inheritDoc}
    +     */
    +    @Override
    +    public final ResultQuery<Record> resultQuery(String sql, Object... bindings) throws DataAccessException {
    +        return new SQLResultQuery(this, sql, bindings);
    +    }
    +
    +    // -------------------------------------------------------------------------
    +    // XXX JDBC convenience methods
    +    // -------------------------------------------------------------------------
    +
    +    /**
    +     * Fetch all data from a JDBC {@link ResultSet} and transform it to a jOOQ
    +     * {@link Result}. After fetching all data, the JDBC ResultSet will be
    +     * closed.
    +     *
    +     * @param rs The JDBC ResultSet to fetch data from
    +     * @return The resulting jOOQ Result
    +     */
    +    @Override
    +    public final Result<Record> fetch(ResultSet rs) {
    +        ExecuteContext ctx = new DefaultExecuteContext(this);
    +        ExecuteListener listener = new ExecuteListeners(ctx);
    +
    +        try {
    +            FieldProvider fields = new MetaDataFieldProvider(this, rs.getMetaData());
    +
    +            ctx.resultSet(rs);
    +            return new CursorImpl<Record>(ctx, listener, fields).fetch();
    +        }
    +        catch (SQLException e) {
    +            throw Util.translate("Factory.fetch", ctx.sql(), e);
    +        }
    +    }
    +
    +    // -------------------------------------------------------------------------
    +    // XXX Global Condition factory
    +    // -------------------------------------------------------------------------
    +
    +    /**
    +     * Return a <code>Condition</code> that will always evaluate to true
    +     */
    +    @Support
    +    public static Condition trueCondition() {
    +        return new TrueCondition();
    +    }
    +
    +    /**
    +     * Return a <code>Condition</code> that will always evaluate to false
    +     */
    +    @Support
    +    public static Condition falseCondition() {
    +        return new FalseCondition();
    +    }
    +
    +    /**
    +     * Create an exists condition.
    +     * <p>
    +     * <code>EXISTS ([query])</code>
    +     */
    +    @Support
    +    public static Condition exists(Select<?> query) {
    +        return new SelectQueryAsExistsCondition(query, ExistsOperator.EXISTS);
    +    }
    +
    +    /**
    +     * Create a not exists condition.
    +     * <p>
    +     * <code>NOT EXISTS ([query])</code>
    +     */
    +    @Support
    +    public static Condition notExists(Select<?> query) {
    +        return new SelectQueryAsExistsCondition(query, ExistsOperator.NOT_EXISTS);
    +    }
    +
    +    // -------------------------------------------------------------------------
    +    // XXX Global Query factory
    +    // -------------------------------------------------------------------------
    +
    +    /**
    +     * {@inheritDoc}
    +     */
    +    @Override
    +    public final <R extends Record> SimpleSelectWhereStep<R> selectFrom(Table<R> table) {
    +        return new SimpleSelectImpl<R>(this, table);
    +    }
    +
    +    /**
    +     * {@inheritDoc}
    +     */
    +    @Override
    +    public final SelectSelectStep select(Field<?>... fields) {
    +        return new SelectImpl(this).select(fields);
    +    }
    +
    +    /**
    +     * {@inheritDoc}
    +     */
    +    @Override
    +    public final SelectSelectStep selectZero() {
    +        return new SelectImpl(this).select(zero());
    +    }
    +
    +    /**
    +     * {@inheritDoc}
    +     */
    +    @Override
    +    public final SelectSelectStep selectOne() {
    +        return new SelectImpl(this).select(one());
    +    }
    +
    +    /**
    +     * {@inheritDoc}
    +     */
    +    @Override
    +    public final SelectSelectStep selectCount() {
    +        return new SelectImpl(this).select(count());
    +    }
    +
    +    /**
    +     * {@inheritDoc}
    +     */
    +    @Override
    +    public final SelectSelectStep selectDistinct(Field<?>... fields) {
    +        return new SelectImpl(this, true).select(fields);
    +    }
    +
    +    /**
    +     * {@inheritDoc}
    +     */
    +    @Override
    +    public final SelectSelectStep select(Collection<? extends Field<?>> fields) {
    +        return new SelectImpl(this).select(fields);
    +    }
    +
    +    /**
    +     * {@inheritDoc}
    +     */
    +    @Override
    +    public final SelectSelectStep selectDistinct(Collection<? extends Field<?>> fields) {
    +        return new SelectImpl(this, true).select(fields);
    +    }
    +
    +    /**
    +     * {@inheritDoc}
    +     */
    +    @Override
    +    public final SelectQuery selectQuery() {
    +        return new SelectQueryImpl(this);
    +    }
    +
    +    /**
    +     * {@inheritDoc}
    +     */
    +    @Override
    +    public final <R extends Record> SimpleSelectQuery<R> selectQuery(TableLike<R> table) {
    +        return new SimpleSelectQueryImpl<R>(this, table);
    +    }
    +
    +    /**
    +     * {@inheritDoc}
    +     */
    +    @Override
    +    public final <R extends Record> InsertQuery<R> insertQuery(Table<R> into) {
    +        return new InsertQueryImpl<R>(this, into);
    +    }
    +
    +    /**
    +     * {@inheritDoc}
    +     */
    +    @Override
    +    public final <R extends Record> InsertSetStep<R> insertInto(Table<R> into) {
    +        return new InsertImpl<R>(this, into, Collections.<Field<?>>emptyList());
    +    }
    +
    +    /**
    +     * {@inheritDoc}
    +     */
    +    @Override
    +    public final <R extends Record> InsertValuesStep<R> insertInto(Table<R> into, Field<?>... fields) {
    +        return new InsertImpl<R>(this, into, Arrays.asList(fields));
    +    }
    +
    +    /**
    +     * {@inheritDoc}
    +     */
    +    @Override
    +    public final <R extends Record> InsertValuesStep<R> insertInto(Table<R> into, Collection<? extends Field<?>> fields) {
    +        return new InsertImpl<R>(this, into, fields);
    +    }
    +
    +    /**
    +     * {@inheritDoc}
    +     */
    +    @Override
    +    @Deprecated
    +    public final <R extends Record> Insert<R> insertInto(Table<R> into, Select<?> select) {
    +        return new InsertSelectQueryImpl<R>(this, into, into.getFields(), select);
    +    }
    +
    +    /**
    +     * {@inheritDoc}
    +     */
    +    @Override
    +    public final <R extends Record> UpdateQuery<R> updateQuery(Table<R> table) {
    +        return new UpdateQueryImpl<R>(this, table);
    +    }
    +
    +    /**
    +     * {@inheritDoc}
    +     */
    +    @Override
    +    public final <R extends Record> UpdateSetStep<R> update(Table<R> table) {
    +        return new UpdateImpl<R>(this, table);
    +    }
    +
    +    /**
    +     * {@inheritDoc}
    +     */
    +    @Override
    +    public final <R extends Record> MergeUsingStep<R> mergeInto(Table<R> table) {
    +        return new MergeImpl<R>(this, table);
    +    }
    +
    +    /**
    +     * {@inheritDoc}
    +     */
    +    @Override
    +    public final <R extends Record> DeleteQuery<R> deleteQuery(Table<R> table) {
    +        return new DeleteQueryImpl<R>(this, table);
    +    }
    +
    +    /**
    +     * {@inheritDoc}
    +     */
    +    @Override
    +    public final <R extends Record> DeleteWhereStep<R> delete(Table<R> table) {
    +        return new DeleteImpl<R>(this, table);
    +    }
    +
    +    /**
    +     * {@inheritDoc}
    +     */
    +    @Override
    +    public final Batch batch(Query... queries) {
    +        return new BatchMultiple(this, queries);
    +    }
    +
    +    /**
    +     * {@inheritDoc}
    +     */
    +    @Override
    +    public final Batch batch(Collection<? extends Query> queries) {
    +        return batch(queries.toArray(new Query[queries.size()]));
    +    }
    +
    +    /**
    +     * {@inheritDoc}
    +     */
    +    @Override
    +    public final BatchBindStep batch(Query query) {
    +        return new BatchSingle(this, query);
    +    }
    +
    +    // -------------------------------------------------------------------------
    +    // XXX DDL Statements
    +    // -------------------------------------------------------------------------
    +
    +    /**
    +     * {@inheritDoc}
    +     */
    +    @Override
    +    public final <R extends TableRecord<R>> Truncate<R> truncate(Table<R> table) {
    +        return new TruncateImpl<R>(this, table);
    +    }
    +
    +    // -------------------------------------------------------------------------
    +    // XXX Other queries for identites and sequences
    +    // -------------------------------------------------------------------------
    +
    +    /**
    +     * {@inheritDoc}
    +     */
    +    @Override
    +    public final BigInteger lastID() {
    +        switch (getDialect()) {
    +            case DERBY: {
    +                Field<BigInteger> field = field("identity_val_local()", BigInteger.class);
    +                return select(field).fetchOne(field);
    +            }
    +
    +            case H2:
    +            case HSQLDB: {
    +                Field<BigInteger> field = field("identity()", BigInteger.class);
    +                return select(field).fetchOne(field);
    +            }
    +
    +            case INGRES: {
    +                Field<BigInteger> field = field("last_identity()", BigInteger.class);
    +                return select(field).fetchOne(field);
    +            }
    +
    +            case CUBRID:
    +            case MYSQL: {
    +                Field<BigInteger> field = field("last_insert_id()", BigInteger.class);
    +                return select(field).fetchOne(field);
    +            }
    +
    +            case SQLITE: {
    +                Field<BigInteger> field = field("last_insert_rowid()", BigInteger.class);
    +                return select(field).fetchOne(field);
    +            }
    +
    +            case ASE:
    +            case SQLSERVER:
    +            case SYBASE: {
    +                Field<BigInteger> field = field("@@identity", BigInteger.class);
    +                return select(field).fetchOne(field);
    +            }
    +
    +            default:
    +                throw new SQLDialectNotSupportedException("identity functionality not supported by " + getDialect());
    +        }
    +    }
    +
    +    /**
    +     * {@inheritDoc}
    +     */
    +    @Override
    +    public final <T extends Number> T nextval(Sequence<T> sequence) {
    +        Field<T> nextval = sequence.nextval();
    +        return select(nextval).fetchOne(nextval);
    +    }
    +
    +    /**
    +     * {@inheritDoc}
    +     */
    +    @Override
    +    public final <T extends Number> T currval(Sequence<T> sequence) {
    +        Field<T> currval = sequence.currval();
    +        return select(currval).fetchOne(currval);
    +    }
    +
    +    /**
    +     * {@inheritDoc}
    +     */
    +    @SuppressWarnings("deprecation")
    +    @Override
    +    public final int use(Schema schema) {
    +        int result = 0;
    +
    +        try {
    +            String schemaName = render(schema);
    +
    +            switch (dialect) {
    +                case DB2:
    +                case DERBY:
    +                case H2:
    +                case HSQLDB:
    +                    result = query("set schema " + schemaName).execute();
    +                    break;
    +
    +                case ASE:
    +                case MYSQL:
    +                case SYBASE:
    +                    result = query("use " + schemaName).execute();
    +                    break;
    +
    +                case ORACLE:
    +                    result = query("alter session set current_schema = " + schemaName).execute();
    +                    break;
    +
    +                case POSTGRES:
    +                    result = query("set search_path = " + schemaName).execute();
    +                    break;
    +
    +                // SQL Server do not support such a syntax for selecting
    +                // schemata, only for selecting databases
    +                case SQLSERVER:
    +                    break;
    +
    +                // CUBRID and SQLite don't have any schemata
    +                case CUBRID:
    +                case SQLITE:
    +                    break;
    +            }
    +        }
    +        finally {
    +            getRenderMapping(settings).setDefaultSchema(schema.getName());
    +            mapping.use(schema);
    +        }
    +
    +        return result;
    +    }
    +
    +    /**
    +     * {@inheritDoc}
    +     */
    +    @Override
    +    public final int use(String schema) {
    +        return use(new SchemaImpl(schema));
    +    }
    +
    +    // -------------------------------------------------------------------------
    +    // XXX Global Record factory
    +    // -------------------------------------------------------------------------
    +
    +    /**
    +     * {@inheritDoc}
    +     */
    +    @Override
    +    public final <R extends UDTRecord<R>> R newRecord(UDT<R> type) {
    +        return Util.newRecord(type, this);
    +    }
    +
    +    /**
    +     * {@inheritDoc}
    +     */
    +    @Override
    +    public final <R extends TableRecord<R>> R newRecord(Table<R> table) {
    +        return Util.newRecord(table, this);
    +    }
    +
    +    /**
    +     * {@inheritDoc}
    +     */
    +    @Override
    +    public final <R extends TableRecord<R>> R newRecord(Table<R> table, Object source) {
    +        R result = newRecord(table);
    +        result.from(source);
    +        return result;
    +    }
    +
    +    // -------------------------------------------------------------------------
    +    // XXX Global Field and Function factory
    +    // -------------------------------------------------------------------------
    +
    +    /**
    +     * Initialise a {@link Case} statement. Decode is used as a method name to
    +     * avoid name clashes with Java's reserved literal "case"
    +     *
    +     * @see Case
    +     */
    +    @Support
    +    public static Case decode() {
    +        return new CaseImpl();
    +    }
    +
    +    /**
    +     * Gets the Oracle-style
    +     * <code>DECODE(expression, search, result[, search , result]... [, default])</code>
    +     * function
    +     *
    +     * @see #decode(Field, Field, Field, Field[])
    +     */
    +    @Support
    +    public static <Z, T> Field<Z> decode(T value, T search, Z result) {
    +        return decode(value, search, result, new Object[0]);
    +    }
    +
    +    /**
    +     * Gets the Oracle-style
    +     * <code>DECODE(expression, search, result[, search , result]... [, default])</code>
    +     * function
    +     *
    +     * @see #decode(Field, Field, Field, Field[])
    +     */
    +    @Support
    +    public static <Z, T> Field<Z> decode(T value, T search, Z result, Object... more) {
    +        return decode(val(value), val(search), val(result), vals(more).toArray(new Field[0]));
    +    }
    +
    +    /**
    +     * Gets the Oracle-style
    +     * <code>DECODE(expression, search, result[, search , result]... [, default])</code>
    +     * function
    +     *
    +     * @see #decode(Field, Field, Field, Field[])
    +     */
    +    @Support
    +    public static <Z, T> Field<Z> decode(Field<T> value, Field<T> search, Field<Z> result) {
    +        return decode(nullSafe(value), nullSafe(search), nullSafe(result), new Field[0]);
    +    }
    +
    +    /**
    +     * Gets the Oracle-style
    +     * <code>DECODE(expression, search, result[, search , result]... [, default])</code>
    +     * function
    +     * <p>
    +     * Returns the dialect's equivalent to DECODE:
    +     * <ul>
    +     * <li>Oracle <a
    +     * href="http://www.techonthenet.com/oracle/functions/decode.php">DECODE</a></li>
    +     * </ul>
    +     * <p>
    +     * Other dialects: <code><pre>
    +     * CASE WHEN [this = search] THEN [result],
    +     *     [WHEN more...         THEN more...]
    +     *     [ELSE more...]
    +     * END
    +     * </pre></code>
    +     *
    +     * @param value The value to decode
    +     * @param search the mandatory first search parameter
    +     * @param result the mandatory first result candidate parameter
    +     * @param more the optional parameters. If <code>more.length</code> is even,
    +     *            then it is assumed that it contains more search/result pairs.
    +     *            If <code>more.length</code> is odd, then it is assumed that it
    +     *            contains more search/result pairs plus a default at the end.     *
    +     */
    +    @Support
    +    public static <Z, T> Field<Z> decode(Field<T> value, Field<T> search, Field<Z> result, Field<?>... more) {
    +        return new Decode<T, Z>(nullSafe(value), nullSafe(search), nullSafe(result), nullSafe(more));
    +    }
    +
    +    /**
    +     * Cast a value to the type of another field.
    +     *
    +     * @param <T> The generic type of the cast field
    +     * @param value The value to cast
    +     * @param as The field whose type is used for the cast
    +     * @return The cast field
    +     */
    +    @Support
    +    public static <T> Field<T> cast(Object value, Field<T> as) {
    +        return val(value, as).cast(as);
    +    }
    +
    +    /**
    +     * Cast null to the type of another field.
    +     *
    +     * @param <T> The generic type of the cast field
    +     * @param as The field whose type is used for the cast
    +     * @return The cast field
    +     */
    +    @Support
    +    public static <T> Field<T> castNull(Field<T> as) {
    +        return NULL().cast(as);
    +    }
    +
    +    /**
    +     * Cast a value to another type
    +     *
    +     * @param <T> The generic type of the cast field
    +     * @param value The value to cast
    +     * @param type The type that is used for the cast
    +     * @return The cast field
    +     */
    +    @Support
    +    public static <T> Field<T> cast(Object value, Class<? extends T> type) {
    +        return val(value, type).cast(type);
    +    }
    +
    +    /**
    +     * Cast null to a type
    +     *
    +     * @param <T> The generic type of the cast field
    +     * @param type The type that is used for the cast
    +     * @return The cast field
    +     */
    +    @Support
    +    public static <T> Field<T> castNull(DataType<T> type) {
    +        return NULL().cast(type);
    +    }
    +
    +    /**
    +     * Cast a value to another type
    +     *
    +     * @param <T> The generic type of the cast field
    +     * @param value The value to cast
    +     * @param type The type that is used for the cast
    +     * @return The cast field
    +     */
    +    @Support
    +    public static <T> Field<T> cast(Object value, DataType<T> type) {
    +        return val(value, type).cast(type);
    +    }
    +
    +    /**
    +     * Cast null to a type
    +     *
    +     * @param <T> The generic type of the cast field
    +     * @param type The type that is used for the cast
    +     * @return The cast field
    +     */
    +    @Support
    +    public static <T> Field<T> castNull(Class<? extends T> type) {
    +        return NULL().cast(type);
    +    }
    +
    +    /**
    +     * Cast all fields that need casting
    +     *
    +     * @param <T> The generic field type
    +     * @param type The type to cast to
    +     * @param fields The fields to be cast to a uniform type
    +     * @return The cast fields
    +     */
    +    @SuppressWarnings("unchecked")
    +    static <T> Field<T>[] castAll(Class<? extends T> type, Field<?>... fields) {
    +        Field<?>[] castFields = new Field<?>[fields.length];
    +
    +        for (int i = 0; i < fields.length; i++) {
    +            castFields[i] = fields[i].cast(type);
    +        }
    +
    +        return (Field<T>[]) castFields;
    +    }
    +
    +    /**
    +     * Gets the Oracle-style <code>COALESCE(value1, value2, ... , value n)</code>
    +     * function
    +     *
    +     * @see #coalesce(Field, Field...)
    +     */
    +    @Support
    +    public static <T> Field<T> coalesce(T value, T... values) {
    +        return coalesce(val(value), vals(values).toArray(new Field[0]));
    +    }
    +
    +    /**
    +     * Gets the Oracle-style <code>COALESCE(field1, field2, ... , field n)</code>
    +     * function
    +     * <p>
    +     * Returns the dialect's equivalent to COALESCE:
    +     * <ul>
    +     * <li>Oracle <a
    +     * href="http://www.techonthenet.com/oracle/functions/coalesce.php">COALESCE</a>
    +     * </li>
    +     * </ul>
    +     */
    +    @Support
    +    public static <T> Field<T> coalesce(Field<T> field, Field<?>... fields) {
    +        return function("coalesce", nullSafeDataType(field), nullSafe(combine(field, fields)));
    +    }
    +
    +    /**
    +     * Gets the Oracle-style NVL(value, defaultValue) function
    +     *
    +     * @see #nvl(Field, Field)
    +     */
    +    @Support
    +    public static <T> Field<T> nvl(T value, T defaultValue) {
    +        return nvl(val(value), val(defaultValue));
    +    }
    +
    +    /**
    +     * Gets the Oracle-style NVL(value, defaultValue) function
    +     *
    +     * @see #nvl(Field, Field)
    +     */
    +    @Support
    +    public static <T> Field<T> nvl(T value, Field<T> defaultValue) {
    +        return nvl(val(value), nullSafe(defaultValue));
    +    }
    +
    +    /**
    +     * Gets the Oracle-style NVL(value, defaultValue) function
    +     *
    +     * @see #nvl(Field, Field)
    +     */
    +    @Support
    +    public static <T> Field<T> nvl(Field<T> value, T defaultValue) {
    +        return nvl(nullSafe(value), val(defaultValue));
    +    }
    +
    +    /**
    +     * Gets the Oracle-style NVL(value, defaultValue) function
    +     * <p>
    +     * Returns the dialect's equivalent to NVL:
    +     * <ul>
    +     * <li>DB2 <a href=
    +     * "http://publib.boulder.ibm.com/infocenter/db2luw/v9r7/index.jsp?topic=/com.ibm.db2.luw.sql.ref.doc/doc/r0052627.html"
    +     * >NVL</a></li>
    +     * <li>Derby <a
    +     * href="http://db.apache.org/derby/docs/10.7/ref/rreffunccoalesce.html"
    +     * >COALESCE</a></li>
    +     * <li>H2 <a
    +     * href="http://www.h2database.com/html/functions.html#ifnull">IFNULL</a></li>
    +     * <li>HSQLDB <a
    +     * href="http://hsqldb.org/doc/2.0/guide/builtinfunctions-chapt.html"
    +     * >NVL</a></li>
    +     * <li>MySQL <a href=
    +     * "http://dev.mysql.com/doc/refman/5.0/en/control-flow-functions.html"
    +     * >IFNULL</a></li>
    +     * <li>Oracle <a
    +     * href="http://www.techonthenet.com/oracle/functions/nvl.php">NVL</a></li>
    +     * <li>Postgres <a href=
    +     * "http://www.postgresql.org/docs/8.1/static/functions-conditional.html"
    +     * >COALESCE</a></li>
    +     * <li>SQLite <a
    +     * href="http://www.sqlite.org/lang_corefunc.html#ifnull">IFNULL</a></li>
    +     * </ul>
    +     */
    +    @Support
    +    public static <T> Field<T> nvl(Field<T> value, Field<T> defaultValue) {
    +        return new Nvl<T>(nullSafe(value), nullSafe(defaultValue));
    +    }
    +
    +    /**
    +     * Gets the Oracle-style NVL2(value, valueIfNotNull, valueIfNull) function
    +     *
    +     * @see #nvl2(Field, Field, Field)
    +     */
    +    @Support
    +    public static <Z> Field<Z> nvl2(Field<?> value, Z valueIfNotNull, Z valueIfNull) {
    +        return nvl2(nullSafe(value), val(valueIfNotNull), val(valueIfNull));
    +    }
    +
    +    /**
    +     * Gets the Oracle-style NVL2(value, valueIfNotNull, valueIfNull) function
    +     *
    +     * @see #nvl2(Field, Field, Field)
    +     */
    +    @Support
    +    public static <Z> Field<Z> nvl2(Field<?> value, Z valueIfNotNull, Field<Z> valueIfNull) {
    +        return nvl2(nullSafe(value), val(valueIfNotNull), nullSafe(valueIfNull));
    +    }
    +
    +    /**
    +     * Gets the Oracle-style NVL2(value, valueIfNotNull, valueIfNull) function
    +     *
    +     * @see #nvl2(Field, Field, Field)
    +     */
    +    @Support
    +    public static <Z> Field<Z> nvl2(Field<?> value, Field<Z> valueIfNotNull, Z valueIfNull) {
    +        return nvl2(nullSafe(value), nullSafe(valueIfNotNull), val(valueIfNull));
    +    }
    +
    +    /**
    +     * Gets the Oracle-style NVL2(value, valueIfNotNull, valueIfNull) function
    +     * <p>
    +     * Returns the dialect's equivalent to NVL2:
    +     * <ul>
    +     * <li>Oracle <a
    +     * href="http://www.techonthenet.com/oracle/functions/nvl2.php">NVL2</a></li>
    +     * </ul>
    +     * <p>
    +     * Other dialects:
    +     * <code>CASE WHEN [value] IS NULL THEN [valueIfNull] ELSE [valueIfNotNull] END</code>
    +     */
    +    @Support
    +    public static <Z> Field<Z> nvl2(Field<?> value, Field<Z> valueIfNotNull, Field<Z> valueIfNull) {
    +        return new Nvl2<Z>(nullSafe(value), nullSafe(valueIfNotNull), nullSafe(valueIfNull));
    +    }
    +
    +    /**
    +     * Gets the Oracle-style NULLIF(value, other) function
    +     *
    +     * @see #nullif(Field, Field)
    +     */
    +    @Support
    +    public static <T> Field<T> nullif(T value, T other) {
    +        return nullif(val(value), val(other));
    +    }
    +
    +    /**
    +     * Gets the Oracle-style NULLIF(value, other) function
    +     *
    +     * @see #nullif(Field, Field)
    +     */
    +    @Support
    +    public static <T> Field<T> nullif(T value, Field<T> other) {
    +        return nullif(val(value), nullSafe(other));
    +    }
    +
    +    /**
    +     * Gets the Oracle-style NULLIF(value, other) function
    +     *
    +     * @see #nullif(Field, Field)
    +     */
    +    @Support
    +    public static <T> Field<T> nullif(Field<T> value, T other) {
    +        return nullif(nullSafe(value), val(other));
    +    }
    +
    +    /**
    +     * Gets the Oracle-style NULLIF(value, other) function
    +     * <p>
    +     * Returns the dialect's equivalent to NULLIF:
    +     * <ul>
    +     * <li>Oracle <a
    +     * href="http://www.techonthenet.com/oracle/functions/nullif.php">NULLIF</a></li>
    +     * </ul>
    +     * <p>
    +     */
    +    @Support
    +    public static <T> Field<T> nullif(Field<T> value, Field<T> other) {
    +        return function("nullif", nullSafeDataType(value), nullSafe(value), nullSafe(other));
    +    }
    +
    +    // -------------------------------------------------------------------------
    +    // XXX String function factory
    +    // -------------------------------------------------------------------------
    +
    +    /**
    +     * Get the upper(field) function
    +     *
    +     * @see #upper(Field)
    +     */
    +    @Support
    +    public static Field<String> upper(String value) {
    +        return upper(val(value));
    +    }
    +
    +    /**
    +     * Get the upper(field) function
    +     * <p>
    +     * This renders the upper function in all dialects:
    +     * <code><pre>upper([field])</pre></code>
    +     */
    +    @Support
    +    public static Field<String> upper(Field<String> field) {
    +        return function("upper", SQLDataType.VARCHAR, nullSafe(field));
    +    }
    +
    +    /**
    +     * Get the lower(field) function
    +     *
    +     * @see #lower(Field)
    +     */
    +    @Support
    +    public static Field<String> lower(String value) {
    +        return lower(val(value, String.class));
    +    }
    +
    +    /**
    +     * Get the lower(field) function
    +     * <p>
    +     * This renders the lower function in all dialects:
    +     * <code><pre>lower([field])</pre></code>
    +     */
    +    @Support
    +    public static Field<String> lower(Field<String> value) {
    +        return function("lower", SQLDataType.VARCHAR, nullSafe(value));
    +    }
    +
    +    /**
    +     * Get the trim(field) function
    +     *
    +     * @see #trim(Field)
    +     */
    +    @Support
    +    public static Field<String> trim(String value) {
    +        return trim(val(value, String.class));
    +    }
    +
    +    /**
    +     * Get the trim(field) function
    +     * <p>
    +     * This renders the trim function where available:
    +     * <code><pre>trim([field])</pre></code> ... or simulates it elsewhere using
    +     * rtrim and ltrim: <code><pre>ltrim(rtrim([field]))</pre></code>
    +     */
    +    @Support
    +    public static Field<String> trim(Field<String> field) {
    +        return new Trim(nullSafe(field));
    +    }
    +
    +    /**
    +     * Get the rtrim(field) function
    +     *
    +     * @see #rtrim(Field)
    +     */
    +    @Support
    +    public static Field<String> rtrim(String value) {
    +        return rtrim(val(value));
    +    }
    +
    +    /**
    +     * Get the rtrim(field) function
    +     * <p>
    +     * This renders the rtrim function in all dialects:
    +     * <code><pre>rtrim([field])</pre></code>
    +     */
    +    @Support
    +    public static Field<String> rtrim(Field<String> field) {
    +        return function("rtrim", SQLDataType.VARCHAR, nullSafe(field));
    +    }
    +
    +    /**
    +     * Get the ltrim(field) function
    +     *
    +     * @see #ltrim(Field)
    +     */
    +    @Support
    +    public static Field<String> ltrim(String value) {
    +        return ltrim(val(value, String.class));
    +    }
    +
    +    /**
    +     * Get the ltrim(field) function
    +     * <p>
    +     * This renders the ltrim function in all dialects:
    +     * <code><pre>ltrim([field])</pre></code>
    +     */
    +    @Support
    +    public static Field<String> ltrim(Field<String> value) {
    +        return function("ltrim", SQLDataType.VARCHAR, nullSafe(value));
    +    }
    +
    +    /**
    +     * Get the rpad(field, length) function
    +     *
    +     * @see #rpad(Field, Field)
    +     */
    +    @Support({ ASE, CUBRID, DB2, H2, HSQLDB, INGRES, MYSQL, ORACLE, POSTGRES, SQLSERVER, SYBASE })
    +    public static Field<String> rpad(Field<String> field, int length) {
    +        return rpad(nullSafe(field), val(length));
    +    }
    +
    +    /**
    +     * Get the rpad(field, length) function
    +     * <p>
    +     * This renders the rpad function where available:
    +     * <code><pre>rpad([field], [length])</pre></code> ... or simulates it
    +     * elsewhere using concat, repeat, and length, which may be simulated as
    +     * well, depending on the RDBMS:
    +     * <code><pre>concat([field], repeat(' ', [length] - length([field])))</pre></code>
    +     */
    +    @Support({ ASE, CUBRID, DB2, H2, HSQLDB, INGRES, MYSQL, ORACLE, POSTGRES, SQLSERVER, SYBASE })
    +    public static Field<String> rpad(Field<String> field, Field<? extends Number> length) {
    +        return new Rpad(nullSafe(field), nullSafe(length));
    +    }
    +
    +    /**
    +     * Get the rpad(field, length, character) function
    +     *
    +     * @see #rpad(Field, Field, Field)
    +     */
    +    @Support({ ASE, CUBRID, DB2, H2, HSQLDB, INGRES, MYSQL, ORACLE, POSTGRES, SQLSERVER, SYBASE })
    +    public static Field<String> rpad(Field<String> field, int length, char character) {
    +        return rpad(field, length, Character.toString(character));
    +    }
    +
    +    /**
    +     * Get the rpad(field, length, character) function
    +     *
    +     * @see #rpad(Field, Field, Field)
    +     */
    +    @Support({ ASE, CUBRID, DB2, H2, HSQLDB, INGRES, MYSQL, ORACLE, POSTGRES, SQLSERVER, SYBASE })
    +    public static Field<String> rpad(Field<String> field, int length, String character) {
    +        return rpad(nullSafe(field), val(length), val(character, String.class));
    +    }
    +
    +    /**
    +     * Get the rpad(field, length, character) function
    +     * <p>
    +     * This renders the rpad function where available:
    +     * <code><pre>rpad([field], [length])</pre></code> ... or simulates it
    +     * elsewhere using concat, repeat, and length, which may be simulated as
    +     * well, depending on the RDBMS:
    +     * <code><pre>concat([field], repeat([character], [length] - length([field])))</pre></code>
    +     */
    +    @Support({ ASE, CUBRID, DB2, H2, HSQLDB, INGRES, MYSQL, ORACLE, POSTGRES, SQLSERVER, SYBASE })
    +    public static Field<String> rpad(Field<String> field, Field<? extends Number> length, Field<String> character) {
    +        return new Rpad(nullSafe(field), nullSafe(length), nullSafe(character));
    +    }
    +
    +    /**
    +     * Get the lpad(field, length) function
    +     *
    +     * @see #lpad(Field, Field)
    +     */
    +    @Support({ ASE, CUBRID, DB2, H2, HSQLDB, INGRES, MYSQL, ORACLE, POSTGRES, SQLSERVER, SYBASE })
    +    public static Field<String> lpad(Field<String> field, int length) {
    +        return lpad(nullSafe(field), val(length));
    +    }
    +
    +    /**
    +     * Get the lpad(field, length) function
    +     * <p>
    +     * This renders the lpad function where available:
    +     * <code><pre>lpad([field], [length])</pre></code> ... or simulates it
    +     * elsewhere using concat, repeat, and length, which may be simulated as
    +     * well, depending on the RDBMS:
    +     * <code><pre>concat(repeat(' ', [length] - length([field])), [field])</pre></code>
    +     */
    +    @Support({ ASE, CUBRID, DB2, H2, HSQLDB, INGRES, MYSQL, ORACLE, POSTGRES, SQLSERVER, SYBASE })
    +    public static Field<String> lpad(Field<String> field, Field<? extends Number> length) {
    +        return new Lpad(nullSafe(field), nullSafe(length));
    +    }
    +
    +    /**
    +     * Get the lpad(field, length, character) function
    +     *
    +     * @see #lpad(Field, Field, Field)
    +     */
    +    @Support({ ASE, CUBRID, DB2, H2, HSQLDB, INGRES, MYSQL, ORACLE, POSTGRES, SQLSERVER, SYBASE })
    +    public static Field<String> lpad(Field<String> field, int length, char character) {
    +        return lpad(field, length, Character.toString(character));
    +    }
    +
    +    /**
    +     * Get the lpad(field, length, character) function
    +     *
    +     * @see #lpad(Field, Field, Field)
    +     */
    +    @Support({ ASE, CUBRID, DB2, H2, HSQLDB, INGRES, MYSQL, ORACLE, POSTGRES, SQLSERVER, SYBASE })
    +    public static Field<String> lpad(Field<String> field, int length, String character) {
    +        return lpad(nullSafe(field), val(length), val(character, String.class));
    +    }
    +
    +    /**
    +     * Get the lpad(field, length, character) function
    +     * <p>
    +     * This renders the lpad function where available:
    +     * <code><pre>lpad([field], [length])</pre></code> ... or simulates it
    +     * elsewhere using concat, repeat, and length, which may be simulated as
    +     * well, depending on the RDBMS:
    +     * <code><pre>concat(repeat([character], [length] - length([field])), [field])</pre></code>
    +     */
    +    @Support({ ASE, CUBRID, DB2, H2, HSQLDB, INGRES, MYSQL, ORACLE, POSTGRES, SQLSERVER, SYBASE })
    +    public static Field<String> lpad(Field<String> field, Field<? extends Number> length, Field<String> character) {
    +        return new Lpad(nullSafe(field), nullSafe(length), nullSafe(character));
    +    }
    +
    +    /**
    +     * Get the repeat(field, count) function
    +     *
    +     * @see #repeat(Field, Field)
    +     */
    +    @Support({ ASE, CUBRID, DB2, H2, HSQLDB, INGRES, MYSQL, ORACLE, POSTGRES, SQLSERVER, SYBASE })
    +    public static Field<String> repeat(String field, int count) {
    +        return repeat(val(field, String.class), val(count));
    +    }
    +
    +    /**
    +     * Get the repeat(field, count) function
    +     *
    +     * @see #repeat(Field, Field)
    +     */
    +    @Support({ ASE, CUBRID, DB2, H2, HSQLDB, INGRES, MYSQL, ORACLE, POSTGRES, SQLSERVER, SYBASE })
    +    public static Field<String> repeat(String field, Field<? extends Number> count) {
    +        return repeat(val(field, String.class), nullSafe(count));
    +    }
    +
    +    /**
    +     * Get the repeat(count) function
    +     *
    +     * @see #repeat(Field, Field)
    +     */
    +    @Support({ ASE, CUBRID, DB2, H2, HSQLDB, INGRES, MYSQL, ORACLE, POSTGRES, SQLSERVER, SYBASE })
    +    public static Field<String> repeat(Field<String> field, int count) {
    +        return repeat(nullSafe(field), val(count));
    +    }
    +
    +    /**
    +     * Get the repeat(field, count) function
    +     * <p>
    +     * This renders the repeat or replicate function where available:
    +     * <code><pre>repeat([field], [count]) or
    +     * replicate([field], [count])</pre></code> ... or simulates it elsewhere
    +     * using rpad and length, which may be simulated as well, depending on the
    +     * RDBMS:
    +     * <code><pre>rpad([field], length([field]) * [count], [field])</pre></code>
    +     */
    +    @Support({ ASE, CUBRID, DB2, H2, HSQLDB, INGRES, MYSQL, ORACLE, POSTGRES, SQLSERVER, SYBASE })
    +    public static Field<String> repeat(Field<String> field, Field<? extends Number> count) {
    +        return new Repeat(nullSafe(field), nullSafe(count));
    +    }
    +
    +    /**
    +     * Convenience method for {@link #replace(Field, String, String)} to escape
    +     * data for use with {@link Field#like(Field, char)}
    +     * <p>
    +     * Essentially, this escapes <code>%</code> and <code>_</code> characters
    +     *
    +     * @see #replace(Field, String, String)
    +     * @see Field#like(Field, char)
    +     */
    +    @Support
    +    public static String escape(String value, char escape) {
    +        return value.replace("%", escape + "%").replace("_", escape + "_");
    +    }
    +
    +    /**
    +     * Convenience method for {@link #replace(Field, String, String)} to escape
    +     * data for use with {@link Field#like(Field, char)}
    +     * <p>
    +     * Essentially, this escapes <code>%</code> and <code>_</code> characters
    +     *
    +     * @see #replace(Field, String, String)
    +     * @see Field#like(Field, char)
    +     */
    +    @Support({ ASE, CUBRID, DB2, H2, HSQLDB, INGRES, MYSQL, ORACLE, POSTGRES, SQLSERVER, SYBASE, SQLITE })
    +    public static Field<String> escape(Field<String> field, char escape) {
    +        Field<String> replace = field;
    +
    +        replace = replace(replace, literal("'%'"), literal("'" + escape + "%'"));
    +        replace = replace(replace, literal("'_'"), literal("'" + escape + "_'"));
    +
    +        return replace;
    +    }
    +
    +    /**
    +     * Get the replace(field, search) function
    +     *
    +     * @see #replace(Field, Field)
    +     */
    +    @Support({ ASE, CUBRID, DB2, H2, HSQLDB, INGRES, MYSQL, ORACLE, POSTGRES, SQLSERVER, SYBASE, SQLITE })
    +    public static Field<String> replace(Field<String> field, String search) {
    +        return replace(nullSafe(field), val(search, String.class));
    +    }
    +
    +    /**
    +     * Get the replace(field, search) function
    +     * <p>
    +     * This renders the replace or str_replace function where available:
    +     * <code><pre>replace([field], [search]) or
    +     * str_replace([field], [search])</pre></code> ... or simulates it elsewhere
    +     * using the three-argument replace function:
    +     * <code><pre>replace([field], [search], '')</pre></code>
    +     */
    +    @Support({ ASE, CUBRID, DB2, H2, HSQLDB, INGRES, MYSQL, ORACLE, POSTGRES, SQLSERVER, SYBASE, SQLITE })
    +    public static Field<String> replace(Field<String> field, Field<String> search) {
    +        return new Replace(nullSafe(field), nullSafe(search));
    +    }
    +
    +    /**
    +     * Get the replace(field, search, replace) function
    +     *
    +     * @see #replace(Field, Field, Field)
    +     */
    +    @Support({ ASE, CUBRID, DB2, H2, HSQLDB, INGRES, MYSQL, ORACLE, POSTGRES, SQLSERVER, SYBASE, SQLITE })
    +    public static Field<String> replace(Field<String> field, String search, String replace) {
    +        return replace(nullSafe(field), val(search, String.class), val(replace, String.class));
    +    }
    +
    +    /**
    +     * Get the replace(field, search, replace) function
    +     * <p>
    +     * This renders the replace or str_replace function:
    +     * <code><pre>replace([field], [search]) or
    +     * str_replace([field], [search])</pre></code>
    +     */
    +    @Support({ ASE, CUBRID, DB2, H2, HSQLDB, INGRES, MYSQL, ORACLE, POSTGRES, SQLSERVER, SYBASE, SQLITE })
    +    public static Field<String> replace(Field<String> field, Field<String> search, Field<String> replace) {
    +        return new Replace(nullSafe(field), nullSafe(search), nullSafe(replace));
    +    }
    +
    +    /**
    +     * Get the position(in, search) function
    +     *
    +     * @see #position(Field, Field)
    +     */
    +    @Support({ ASE, CUBRID, DB2, DERBY, H2, HSQLDB, INGRES, MYSQL, ORACLE, POSTGRES, SQLSERVER, SYBASE })
    +    public static Field<Integer> position(String in, String search) {
    +        return position(val(in, String.class), val(search, String.class));
    +    }
    +
    +    /**
    +     * Get the position(in, search) function
    +     *
    +     * @see #position(Field, Field)
    +     */
    +    @Support({ ASE, CUBRID, DB2, DERBY, H2, HSQLDB, INGRES, MYSQL, ORACLE, POSTGRES, SQLSERVER, SYBASE })
    +    public static Field<Integer> position(String in, Field<String> search) {
    +        return position(val(in, String.class), nullSafe(search));
    +    }
    +
    +    /**
    +     * Get the position(in, search) function
    +     *
    +     * @see #position(Field, Field)
    +     */
    +    @Support({ ASE, CUBRID, DB2, DERBY, H2, HSQLDB, INGRES, MYSQL, ORACLE, POSTGRES, SQLSERVER, SYBASE })
    +    public static Field<Integer> position(Field<String> in, String search) {
    +        return position(nullSafe(in), val(search, String.class));
    +    }
    +
    +    /**
    +     * Get the position(in, search) function
    +     * <p>
    +     * This renders the position or any equivalent function:
    +     * <code><pre>position([search] in [in]) or
    +     * locate([in], [search]) or
    +     * locate([search], [in]) or
    +     * instr([in], [search]) or
    +     * charindex([search], [in])</pre></code>
    +     */
    +    @Support({ ASE, CUBRID, DB2, DERBY, H2, HSQLDB, INGRES, MYSQL, ORACLE, POSTGRES, SQLSERVER, SYBASE })
    +    public static Field<Integer> position(Field<String> in, Field<String> search) {
    +        return new Position(nullSafe(search), nullSafe(in));
    +    }
    +
    +    /**
    +     * Get the ascii(field) function
    +     *
    +     * @see #ascii(Field)
    +     */
    +    @Support({ ASE, CUBRID, DB2, H2, HSQLDB, MYSQL, ORACLE, POSTGRES, SQLSERVER, SYBASE })
    +    public static Field<Integer> ascii(String field) {
    +        return ascii(val(field, String.class));
    +    }
    +
    +    /**
    +     * Get the ascii(field) function
    +     * <p>
    +     * This renders the ascii function:
    +     * <code><pre>ascii([field])</pre></code>
    +     */
    +    @Support({ ASE, CUBRID, DB2, H2, HSQLDB, MYSQL, ORACLE, POSTGRES, SQLSERVER, SYBASE })
    +    public static Field<Integer> ascii(Field<String> field) {
    +        return new Ascii(nullSafe(field));
    +    }
    +
    +    /**
    +     * Get the concat(value[, value, ...]) function
    +     *
    +     * @see #concat(Field...)
    +     */
    +    @Support
    +    public static Field<String> concat(String... values) {
    +        return concat(vals((Object[]) values).toArray(new Field[0]));
    +    }
    +
    +    /**
    +     * Get the concat(field[, field, ...]) function
    +     * <p>
    +     * This creates <code>fields[0] || fields[1] || ...</code> as an
    +     * expression, or <code>concat(fields[0], fields[1], ...)</code>,
    +     * depending on the dialect.
    +     * <p>
    +     * If any of the given fields is not a {@link String} field, they are cast
    +     * to <code>Field&lt;String&gt;</code> first using {@link #cast(Object, Class)}
    +     */
    +    @Support
    +    public static Field<String> concat(Field<?>... fields) {
    +        return new Concat(nullSafe(fields));
    +    }
    +
    +    /**
    +     * Get the substring(field, startingPosition) function
    +     *
    +     * @see #substring(Field, Field)
    +     */
    +    @Support
    +    public static Field<String> substring(Field<String> field, int startingPosition) {
    +        return substring(nullSafe(field), val(startingPosition));
    +    }
    +
    +    /**
    +     * Get the substring(field, startingPosition) function
    +     * <p>
    +     * This renders the substr or substring function:
    +     * <code><pre>substr([field], [startingPosition]) or
    +     * substring([field], [startingPosition])</pre></code>
    +     */
    +    @Support
    +    public static Field<String> substring(Field<String> field, Field<? extends Number> startingPosition) {
    +        return new Substring(nullSafe(field), nullSafe(startingPosition));
    +    }
    +
    +    /**
    +     * Get the substring(field, startingPosition, length) function
    +     *
    +     * @see #substring(Field, Field, Field)
    +     */
    +    @Support
    +    public static Field<String> substring(Field<String> field, int startingPosition, int length) {
    +        return substring(nullSafe(field), val(startingPosition), val(length));
    +    }
    +
    +    /**
    +     * Get the substring(field, startingPosition, length) function
    +     * <p>
    +     * This renders the substr or substring function:
    +     * <code><pre>substr([field], [startingPosition], [length]) or
    +     * substring([field], [startingPosition], [length])</pre></code>
    +     */
    +    @Support
    +    public static Field<String> substring(Field<String> field, Field<? extends Number> startingPosition, Field<? extends Number> length) {
    +        return new Substring(nullSafe(field), nullSafe(startingPosition), nullSafe(length));
    +    }
    +
    +    /**
    +     * Get the length of a <code>VARCHAR</code> type. This is a synonym for
    +     * {@link #charLength(String)}
    +     *
    +     * @see #charLength(String)
    +     */
    +    @Support
    +    public static Field<Integer> length(String value) {
    +        return length(val(value, String.class));
    +    }
    +
    +    /**
    +     * Get the length of a <code>VARCHAR</code> type. This is a synonym for
    +     * {@link #charLength(Field)}
    +     *
    +     * @see #charLength(Field)
    +     */
    +    @Support
    +    public static Field<Integer> length(Field<String> field) {
    +        return charLength(field);
    +    }
    +
    +    /**
    +     * Get the char_length(field) function
    +     * <p>
    +     * This translates into any dialect
    +     */
    +    @Support
    +    public static Field<Integer> charLength(String value) {
    +        return charLength(val(value));
    +    }
    +
    +    /**
    +     * Get the char_length(field) function
    +     * <p>
    +     * This translates into any dialect
    +     */
    +    @Support
    +    public static Field<Integer> charLength(Field<String> field) {
    +        return new Function<Integer>(Term.CHAR_LENGTH, SQLDataType.INTEGER, nullSafe(field));
    +    }
    +
    +    /**
    +     * Get the bit_length(field) function
    +     * <p>
    +     * This translates into any dialect
    +     */
    +    @Support
    +    public static Field<Integer> bitLength(String value) {
    +        return bitLength(val(value));
    +    }
    +
    +    /**
    +     * Get the bit_length(field) function
    +     * <p>
    +     * This translates into any dialect
    +     */
    +    @Support
    +    public static Field<Integer> bitLength(Field<String> field) {
    +        return new Function<Integer>(Term.BIT_LENGTH, SQLDataType.INTEGER, nullSafe(field));
    +    }
    +
    +    /**
    +     * Get the octet_length(field) function
    +     * <p>
    +     * This translates into any dialect
    +     */
    +    @Support
    +    public static Field<Integer> octetLength(String value) {
    +        return octetLength(val(value, String.class));
    +    }
    +
    +    /**
    +     * Get the octet_length(field) function
    +     * <p>
    +     * This translates into any dialect
    +     */
    +    @Support
    +    public static Field<Integer> octetLength(Field<String> field) {
    +        return new Function<Integer>(Term.OCTET_LENGTH, SQLDataType.INTEGER, nullSafe(field));
    +    }
    +
    +    // ------------------------------------------------------------------------
    +    // XXX Date and time functions
    +    // ------------------------------------------------------------------------
    +
    +    /**
    +     * Get the current_date() function
    +     * <p>
    +     * This translates into any dialect
    +     */
    +    @Support
    +    public static Field<Date> currentDate() {
    +        return new CurrentDate();
    +    }
    +
    +    /**
    +     * Get the current_time() function
    +     * <p>
    +     * This translates into any dialect
    +     */
    +    @Support
    +    public static Field<Time> currentTime() {
    +        return new CurrentTime();
    +    }
    +
    +    /**
    +     * Get the current_timestamp() function
    +     * <p>
    +     * This translates into any dialect
    +     */
    +    @Support
    +    public static Field<Timestamp> currentTimestamp() {
    +        return new CurrentTimestamp();
    +    }
    +
    +    /**
    +     * Get the date difference in number of days
    +     * <p>
    +     * This translates into any dialect
    +     *
    +     * @see Field#sub(Field)
    +     */
    +    @Support
    +    public static Field<Integer> dateDiff(Date date1, Date date2) {
    +        return dateDiff(val(date1), val(date2));
    +    }
    +
    +    /**
    +     * Get the date difference in number of days
    +     * <p>
    +     * This translates into any dialect
    +     *
    +     * @see Field#sub(Field)
    +     */
    +    @Support
    +    public static Field<Integer> dateDiff(Field<Date> date1, Date date2) {
    +        return dateDiff(nullSafe(date1), val(date2));
    +    }
    +
    +    /**
    +     * Get the date difference in number of days
    +     * <p>
    +     * This translates into any dialect
    +     *
    +     * @see Field#sub(Field)
    +     */
    +    @Support
    +    public static Field<Integer> dateDiff(Date date1, Field<Date> date2) {
    +        return dateDiff(val(date1), nullSafe(date2));
    +    }
    +
    +    /**
    +     * Get the date difference in number of days
    +     * <p>
    +     * This translates into any dialect
    +     *
    +     * @see Field#sub(Field)
    +     */
    +    @Support
    +    public static Field<Integer> dateDiff(Field<Date> date1, Field<Date> date2) {
    +        return new DateDiff(nullSafe(date1), nullSafe(date2));
    +    }
    +
    +    /**
    +     * Get the timestamp difference as a <code>INTERVAL DAY TO SECOND</code>
    +     * type
    +     * <p>
    +     * This translates into any dialect
    +     *
    +     * @see Field#sub(Field)
    +     */
    +    @Support
    +    public static Field<DayToSecond> timestampDiff(Timestamp timestamp1, Timestamp timestamp2) {
    +        return timestampDiff(val(timestamp1), val(timestamp2));
    +    }
    +
    +    /**
    +     * Get the timestamp difference as a <code>INTERVAL DAY TO SECOND</code>
    +     * type
    +     * <p>
    +     * This translates into any dialect
    +     *
    +     * @see Field#sub(Field)
    +     */
    +    @Support
    +    public static Field<DayToSecond> timestampDiff(Field<Timestamp> timestamp1, Timestamp timestamp2) {
    +        return timestampDiff(nullSafe(timestamp1), val(timestamp2));
    +    }
    +
    +    /**
    +     * Get the timestamp difference as a <code>INTERVAL DAY TO SECOND</code>
    +     * type
    +     * <p>
    +     * This translates into any dialect
    +     *
    +     * @see Field#sub(Field)
    +     */
    +    @Support
    +    public static Field<DayToSecond> timestampDiff(Timestamp timestamp1, Field<Timestamp> timestamp2) {
    +        return timestampDiff(val(timestamp1), nullSafe(timestamp2));
    +    }
    +
    +    /**
    +     * Get the timestamp difference as a <code>INTERVAL DAY TO SECOND</code>
    +     * type
    +     * <p>
    +     * This translates into any dialect
    +     *
    +     * @see Field#sub(Field)
    +     */
    +    @Support
    +    public static Field<DayToSecond> timestampDiff(Field<Timestamp> timestamp1, Field<Timestamp> timestamp2) {
    +        return new TimestampDiff(timestamp1, timestamp2);
    +    }
    +
    +    /**
    +     * Get the extract(field, datePart) function
    +     * <p>
    +     * This translates into any dialect
    +     */
    +    @Support
    +    public static Field<Integer> extract(java.util.Date value, DatePart datePart) {
    +        return extract(val(value), datePart);
    +    }
    +
    +    /**
    +     * Get the extract(field, datePart) function
    +     * <p>
    +     * This translates into any dialect
    +     */
    +    @Support
    +    public static Field<Integer> extract(Field<? extends java.util.Date> field, DatePart datePart) {
    +        return new Extract(nullSafe(field), datePart);
    +    }
    +
    +    /**
    +     * Get the year part of a date
    +     * <p>
    +     * This is the same as calling {@link #extract(java.util.Date, DatePart)}
    +     * with {@link DatePart#YEAR}
    +     */
    +    @Support
    +    public static Field<Integer> year(java.util.Date value) {
    +        return extract(value, DatePart.YEAR);
    +    }
    +
    +    /**
    +     * Get the year part of a date
    +     * <p>
    +     * This is the same as calling {@link #extract(Field, DatePart)}
    +     * with {@link DatePart#YEAR}
    +     */
    +    @Support
    +    public static Field<Integer> year(Field<? extends java.util.Date> field) {
    +        return extract(field, DatePart.YEAR);
    +    }
    +
    +    /**
    +     * Get the month part of a date
    +     * <p>
    +     * This is the same as calling {@link #extract(java.util.Date, DatePart)}
    +     * with {@link DatePart#MONTH}
    +     */
    +    @Support
    +    public static Field<Integer> month(java.util.Date value) {
    +        return extract(value, DatePart.MONTH);
    +    }
    +
    +    /**
    +     * Get the month part of a date
    +     * <p>
    +     * This is the same as calling {@link #extract(Field, DatePart)}
    +     * with {@link DatePart#MONTH}
    +     */
    +    @Support
    +    public static Field<Integer> month(Field<? extends java.util.Date> field) {
    +        return extract(field, DatePart.MONTH);
    +    }
    +
    +    /**
    +     * Get the day part of a date
    +     * <p>
    +     * This is the same as calling {@link #extract(java.util.Date, DatePart)}
    +     * with {@link DatePart#DAY}
    +     */
    +    @Support
    +    public static Field<Integer> day(java.util.Date value) {
    +        return extract(value, DatePart.DAY);
    +    }
    +
    +    /**
    +     * Get the day part of a date
    +     * <p>
    +     * This is the same as calling {@link #extract(Field, DatePart)}
    +     * with {@link DatePart#DAY}
    +     */
    +    @Support
    +    public static Field<Integer> day(Field<? extends java.util.Date> field) {
    +        return extract(field, DatePart.DAY);
    +    }
    +
    +    /**
    +     * Get the hour part of a date
    +     * <p>
    +     * This is the same as calling {@link #extract(java.util.Date, DatePart)}
    +     * with {@link DatePart#HOUR}
    +     */
    +    @Support
    +    public static Field<Integer> hour(java.util.Date value) {
    +        return extract(value, DatePart.HOUR);
    +    }
    +
    +    /**
    +     * Get the hour part of a date
    +     * <p>
    +     * This is the same as calling {@link #extract(Field, DatePart)}
    +     * with {@link DatePart#HOUR}
    +     */
    +    @Support
    +    public static Field<Integer> hour(Field<? extends java.util.Date> field) {
    +        return extract(field, DatePart.HOUR);
    +    }
    +
    +    /**
    +     * Get the minute part of a date
    +     * <p>
    +     * This is the same as calling {@link #extract(java.util.Date, DatePart)}
    +     * with {@link DatePart#MINUTE}
    +     */
    +    @Support
    +    public static Field<Integer> minute(java.util.Date value) {
    +        return extract(value, DatePart.MINUTE);
    +    }
    +
    +    /**
    +     * Get the minute part of a date
    +     * <p>
    +     * This is the same as calling {@link #extract(Field, DatePart)}
    +     * with {@link DatePart#MINUTE}
    +     */
    +    @Support
    +    public static Field<Integer> minute(Field<? extends java.util.Date> field) {
    +        return extract(field, DatePart.MINUTE);
    +    }
    +
    +    /**
    +     * Get the second part of a date
    +     * <p>
    +     * This is the same as calling {@link #extract(java.util.Date, DatePart)}
    +     * with {@link DatePart#SECOND}
    +     */
    +    @Support
    +    public static Field<Integer> second(java.util.Date value) {
    +        return extract(value, DatePart.SECOND);
    +    }
    +
    +    /**
    +     * Get the second part of a date
    +     * <p>
    +     * This is the same as calling {@link #extract(Field, DatePart)}
    +     * with {@link DatePart#SECOND}
    +     */
    +    @Support
    +    public static Field<Integer> second(Field<? extends java.util.Date> field) {
    +        return extract(field, DatePart.SECOND);
    +    }
    +
    +    // ------------------------------------------------------------------------
    +    // XXX Construction of special grouping functions
    +    // ------------------------------------------------------------------------
    +
    +    /**
    +     * Create a ROLLUP(field1, field2, .., fieldn) grouping field
    +     * <p>
    +     * This has been observed to work with the following databases:
    +     * <ul>
    +     * <li>CUBRID (simulated using the GROUP BY .. WITH ROLLUP clause)</li>
    +     * <li>DB2</li>
    +     * <li>MySQL (simulated using the GROUP BY .. WITH ROLLUP clause)</li>
    +     * <li>Oracle</li>
    +     * <li>SQL Server</li>
    +     * <li>Sybase SQL Anywhere</li>
    +     * </ul>
    +     * <p>
    +     * Please check the SQL Server documentation for a very nice explanation of
    +     * <code>CUBE</code>, <code>ROLLUP</code>, and <code>GROUPING SETS</code>
    +     * clauses in grouping contexts: <a
    +     * href="http://msdn.microsoft.com/en-US/library/bb522495.aspx"
    +     * >http://msdn.microsoft.com/en-US/library/bb522495.aspx</a>
    +     *
    +     * @param fields The fields that are part of the <code>ROLLUP</code>
    +     *            function
    +     * @return A field to be used in a <code>GROUP BY</code> clause
    +     */
    +    @Support({ CUBRID, DB2, MYSQL, ORACLE, SQLSERVER, SYBASE })
    +    public static Field<?> rollup(Field<?>... fields) {
    +        return new Rollup(nullSafe(fields));
    +    }
    +
    +    /**
    +     * Create a CUBE(field1, field2, .., fieldn) grouping field
    +     * <p>
    +     * This has been observed to work with the following databases:
    +     * <ul>
    +     * <li>DB2</li>
    +     * <li>Oracle</li>
    +     * <li>SQL Server</li>
    +     * <li>Sybase SQL Anywhere</li>
    +     * </ul>
    +     * <p>
    +     * Please check the SQL Server documentation for a very nice explanation of
    +     * <code>CUBE</code>, <code>ROLLUP</code>, and <code>GROUPING SETS</code>
    +     * clauses in grouping contexts: <a
    +     * href="http://msdn.microsoft.com/en-US/library/bb522495.aspx"
    +     * >http://msdn.microsoft.com/en-US/library/bb522495.aspx</a>
    +     *
    +     * @param fields The fields that are part of the <code>CUBE</code>
    +     *            function
    +     * @return A field to be used in a <code>GROUP BY</code> clause
    +     */
    +    @Support({ DB2, ORACLE, SQLSERVER, SYBASE })
    +    public static Field<?> cube(Field<?>... fields) {
    +        return function("cube", Object.class, nullSafe(fields));
    +    }
    +
    +    /**
    +     * Create a GROUPING SETS(field1, field2, .., fieldn) grouping field where
    +     * each grouping set only consists of a single field.
    +     * <p>
    +     * This has been observed to work with the following databases:
    +     * <ul>
    +     * <li>DB2</li>
    +     * <li>Oracle</li>
    +     * <li>SQL Server</li>
    +     * <li>Sybase SQL Anywhere</li>
    +     * </ul>
    +     * <p>
    +     * Please check the SQL Server documentation for a very nice explanation of
    +     * <code>CUBE</code>, <code>ROLLUP</code>, and <code>GROUPING SETS</code>
    +     * clauses in grouping contexts: <a
    +     * href="http://msdn.microsoft.com/en-US/library/bb522495.aspx"
    +     * >http://msdn.microsoft.com/en-US/library/bb522495.aspx</a>
    +     *
    +     * @param fields The fields that are part of the <code>GROUPING SETS</code>
    +     *            function
    +     * @return A field to be used in a <code>GROUP BY</code> clause
    +     */
    +    @SuppressWarnings("unchecked")
    +    @Support({ DB2, ORACLE, SQLSERVER, SYBASE })
    +    public static Field<?> groupingSets(Field<?>... fields) {
    +        List<Field<?>>[] array = new List[fields.length];
    +
    +        for (int i = 0; i < fields.length; i++) {
    +            array[i] = Arrays.<Field<?>>asList(fields[i]);
    +        }
    +
    +        return groupingSets(array);
    +    }
    +
    +    /**
    +     * Create a GROUPING SETS((field1a, field1b), (field2a), .., (fieldna,
    +     * fieldnb)) grouping field
    +     * <p>
    +     * This has been observed to work with the following databases:
    +     * <ul>
    +     * <li>DB2</li>
    +     * <li>Oracle</li>
    +     * <li>SQL Server</li>
    +     * <li>Sybase SQL Anywhere</li>
    +     * </ul>
    +     * <p>
    +     * Please check the SQL Server documentation for a very nice explanation of
    +     * <code>CUBE</code>, <code>ROLLUP</code>, and <code>GROUPING SETS</code>
    +     * clauses in grouping contexts: <a
    +     * href="http://msdn.microsoft.com/en-US/library/bb522495.aspx"
    +     * >http://msdn.microsoft.com/en-US/library/bb522495.aspx</a>
    +     *
    +     * @param fieldSets The fields that are part of the <code>GROUPING SETS</code>
    +     *            function
    +     * @return A field to be used in a <code>GROUP BY</code> clause
    +     */
    +    @SuppressWarnings("unchecked")
    +    @Support({ DB2, ORACLE, SQLSERVER, SYBASE })
    +    public static Field<?> groupingSets(Field<?>[]... fieldSets) {
    +        List<Field<?>>[] array = new List[fieldSets.length];
    +
    +        for (int i = 0; i < fieldSets.length; i++) {
    +            array[i] = Arrays.asList(fieldSets[i]);
    +        }
    +
    +        return groupingSets(array);
    +    }
    +
    +    /**
    +     * Create a GROUPING SETS((field1a, field1b), (field2a), .., (fieldna,
    +     * fieldnb)) grouping field
    +     * <p>
    +     * This has been observed to work with the following databases:
    +     * <ul>
    +     * <li>DB2</li>
    +     * <li>Oracle</li>
    +     * <li>SQL Server</li>
    +     * <li>Sybase SQL Anywhere</li>
    +     * </ul>
    +     * <p>
    +     * Please check the SQL Server documentation for a very nice explanation of
    +     * <code>CUBE</code>, <code>ROLLUP</code>, and <code>GROUPING SETS</code>
    +     * clauses in grouping contexts: <a
    +     * href="http://msdn.microsoft.com/en-US/library/bb522495.aspx"
    +     * >http://msdn.microsoft.com/en-US/library/bb522495.aspx</a>
    +     *
    +     * @param fieldSets The fields that are part of the <code>GROUPING SETS</code>
    +     *            function
    +     * @return A field to be used in a <code>GROUP BY</code> clause
    +     */
    +    @Support({ DB2, ORACLE, SQLSERVER, SYBASE })
    +    public static Field<?> groupingSets(Collection<Field<?>>... fieldSets) {
    +        WrappedList[] array = new WrappedList[fieldSets.length];
    +
    +        for (int i = 0; i < fieldSets.length; i++) {
    +            array[i] = new WrappedList(new FieldList(fieldSets[i]));
    +        }
    +
    +        return new Function<Object>("grouping sets", SQLDataType.OTHER, array);
    +    }
    +
    +    /**
    +     * Create a GROUPING(field) aggregation field to be used along with
    +     * <code>CUBE</code>, <code>ROLLUP</code>, and <code>GROUPING SETS</code>
    +     * groupings
    +     * <p>
    +     * This has been observed to work with the following databases:
    +     * <ul>
    +     * <li>DB2</li>
    +     * <li>Oracle</li>
    +     * <li>SQL Server</li>
    +     * <li>Sybase SQL Anywhere</li>
    +     * </ul>
    +     *
    +     * @param field The function argument
    +     * @return The <code>GROUPING</code> aggregation field
    +     * @see #cube(Field...)
    +     * @see #rollup(Field...)
    +     */
    +    @Support({ DB2, ORACLE, SQLSERVER, SYBASE })
    +    public static Field<Integer> grouping(Field<?> field) {
    +        return function("grouping", Integer.class, nullSafe(field));
    +    }
    +
    +    /**
    +     * Create a GROUPING_ID(field1, field2, .., fieldn) aggregation field to be
    +     * used along with <code>CUBE</code>, <code>ROLLUP</code>, and
    +     * <code>GROUPING SETS</code> groupings
    +     * <p>
    +     * This has been observed to work with the following databases:
    +     * <ul>
    +     * <li>Oracle</li>
    +     * <li>SQL Server</li>
    +     * </ul>
    +     *
    +     * @param fields The function arguments
    +     * @return The <code>GROUPING_ID</code> aggregation field
    +     * @see #cube(Field...)
    +     * @see #rollup(Field...)
    +     */
    +    @Support({ ORACLE, SQLSERVER})
    +    public static Field<Integer> groupingId(Field<?>... fields) {
    +        return function("grouping_id", Integer.class, nullSafe(fields));
    +    }
    +
    +    // ------------------------------------------------------------------------
    +    // XXX Bitwise operations
    +    // ------------------------------------------------------------------------
    +
    +    /**
    +     * The MySQL <code>BIT_COUNT(field)</code> function, counting the number of
    +     * bits that are set in this number.
    +     *
    +     * @see #bitCount(Field)
    +     */
    +    @Support({ CUBRID, H2, HSQLDB, MYSQL, ORACLE, POSTGRES, SYBASE, SQLITE })
    +    public static Field<Integer> bitCount(Number value) {
    +        return bitCount(val(value));
    +    }
    +
    +    /**
    +     * The MySQL <code>BIT_COUNT(field)</code> function, counting the number of
    +     * bits that are set in this number.
    +     * <p>
    +     * This function is simulated in most other databases like this (for a
    +     * TINYINT field): <code><pre>
    +     * ([field] &   1) +
    +     * ([field] &   2) >> 1 +
    +     * ([field] &   4) >> 2 +
    +     * ([field] &   8) >> 3 +
    +     * ([field] &  16) >> 4 +
    +     *  ...
    +     * ([field] & 128) >> 7
    +     * </pre></code>
    +     * <p>
    +     * More efficient algorithms are very welcome
    +     */
    +    @Support({ CUBRID, H2, HSQLDB, MYSQL, ORACLE, POSTGRES, SYBASE, SQLITE })
    +    public static Field<Integer> bitCount(Field<? extends Number> field) {
    +        return new BitCount(nullSafe(field));
    +    }
    +
    +    /**
    +     * The bitwise not operator.
    +     *
    +     * @see #bitNot(Field)
    +     */
    +    @Support({ ASE, CUBRID, DB2, H2, HSQLDB, MYSQL, ORACLE, POSTGRES, SQLSERVER, SYBASE, SQLITE })
    +    public static <T extends Number> Field<T> bitNot(T value) {
    +        return bitNot(val(value));
    +    }
    +
    +    /**
    +     * The bitwise not operator.
    +     * <p>
    +     * Most dialects natively support this using <code>~[field]</code>. jOOQ
    +     * simulates this operator in some dialects using <code>-[field] - 1</code>
    +     */
    +    @Support({ ASE, CUBRID, DB2, H2, HSQLDB, MYSQL, ORACLE, POSTGRES, SQLSERVER, SYBASE, SQLITE })
    +    public static <T extends Number> Field<T> bitNot(Field<T> field) {
    +        return new Neg<T>(nullSafe(field), ExpressionOperator.BIT_NOT);
    +    }
    +
    +    /**
    +     * The bitwise and operator.
    +     *
    +     * @see #bitAnd(Field, Field)
    +     */
    +    @Support({ ASE, CUBRID, DB2, H2, HSQLDB, MYSQL, ORACLE, POSTGRES, SQLSERVER, SYBASE, SQLITE })
    +    public static <T extends Number> Field<T> bitAnd(T value1, T value2) {
    +        return bitAnd(val(value1), val(value2));
    +    }
    +
    +    /**
    +     * The bitwise and operator.
    +     *
    +     * @see #bitAnd(Field, Field)
    +     */
    +    @Support({ ASE, CUBRID, DB2, H2, HSQLDB, MYSQL, ORACLE, POSTGRES, SQLSERVER, SYBASE, SQLITE })
    +    public static <T extends Number> Field<T> bitAnd(T value1, Field<T> value2) {
    +        return bitAnd(val(value1), nullSafe(value2));
    +    }
    +
    +    /**
    +     * The bitwise and operator.
    +     *
    +     * @see #bitAnd(Field, Field)
    +     */
    +    @Support({ ASE, CUBRID, DB2, H2, HSQLDB, MYSQL, ORACLE, POSTGRES, SQLSERVER, SYBASE, SQLITE })
    +    public static <T extends Number> Field<T> bitAnd(Field<T> value1, T value2) {
    +        return bitAnd(nullSafe(value1), val(value2));
    +    }
    +
    +    /**
    +     * The bitwise and operator.
    +     * <p>
    +     * This is not supported by Derby, Ingres
    +     * <p>
    +     * This renders the and operation where available:
    +     * <code><pre>[field1] & [field2]</pre></code>
    +     * ... or the and function elsewhere:
    +     * <code><pre>bitand([field1], [field2])</pre></code>
    +     */
    +    @Support({ ASE, CUBRID, DB2, H2, HSQLDB, MYSQL, ORACLE, POSTGRES, SQLSERVER, SYBASE, SQLITE })
    +    public static <T extends Number> Field<T> bitAnd(Field<T> field1, Field<T> field2) {
    +        return new Expression<T>(ExpressionOperator.BIT_AND, nullSafe(field1), nullSafe(field2));
    +    }
    +
    +    /**
    +     * The bitwise not and operator.
    +     *
    +     * @see #bitNand(Field, Field)
    +     * @see #bitNot(Field)
    +     */
    +    @Support({ ASE, CUBRID, DB2, H2, HSQLDB, MYSQL, ORACLE, POSTGRES, SQLSERVER, SYBASE, SQLITE })
    +    public static <T extends Number> Field<T> bitNand(T value1, T value2) {
    +        return bitNand(val(value1), val(value2));
    +    }
    +
    +    /**
    +     * The bitwise not and operator.
    +     *
    +     * @see #bitNand(Field, Field)
    +     * @see #bitNot(Field)
    +     */
    +    @Support({ ASE, CUBRID, DB2, H2, HSQLDB, MYSQL, ORACLE, POSTGRES, SQLSERVER, SYBASE, SQLITE })
    +    public static <T extends Number> Field<T> bitNand(T value1, Field<T> value2) {
    +        return bitNand(val(value1), nullSafe(value2));
    +    }
    +
    +    /**
    +     * The bitwise not and operator.
    +     *
    +     * @see #bitNand(Field, Field)
    +     * @see #bitNot(Field)
    +     */
    +    @Support({ ASE, CUBRID, DB2, H2, HSQLDB, MYSQL, ORACLE, POSTGRES, SQLSERVER, SYBASE, SQLITE })
    +    public static <T extends Number> Field<T> bitNand(Field<T> value1, T value2) {
    +        return bitNand(nullSafe(value1), val(value2));
    +    }
    +
    +    /**
    +     * The bitwise not and operator.
    +     * <p>
    +     * This is not supported by Derby, Ingres
    +     * <p>
    +     * This renders the not and operation where available:
    +     * <code><pre>~([field1] & [field2])</pre></code>
    +     * ... or the not and function elsewhere:
    +     * <code><pre>bitnot(bitand([field1], [field2]))</pre></code>
    +     *
    +     * @see #bitNot(Field)
    +     */
    +    @Support({ ASE, CUBRID, DB2, H2, HSQLDB, MYSQL, ORACLE, POSTGRES, SQLSERVER, SYBASE, SQLITE })
    +    public static <T extends Number> Field<T> bitNand(Field<T> field1, Field<T> field2) {
    +        return new Expression<T>(ExpressionOperator.BIT_NAND, nullSafe(field1), nullSafe(field2));
    +    }
    +
    +    /**
    +     * The bitwise or operator.
    +     *
    +     * @see #bitOr(Field, Field)
    +     */
    +    @Support({ ASE, CUBRID, DB2, H2, HSQLDB, MYSQL, ORACLE, POSTGRES, SQLSERVER, SYBASE, SQLITE })
    +    public static <T extends Number> Field<T> bitOr(T value1, T value2) {
    +        return bitOr(val(value1), val(value2));
    +    }
    +
    +    /**
    +     * The bitwise or operator.
    +     *
    +     * @see #bitOr(Field, Field)
    +     */
    +    @Support({ ASE, CUBRID, DB2, H2, HSQLDB, MYSQL, ORACLE, POSTGRES, SQLSERVER, SYBASE, SQLITE })
    +    public static <T extends Number> Field<T> bitOr(T value1, Field<T> value2) {
    +        return bitOr(val(value1), nullSafe(value2));
    +    }
    +
    +    /**
    +     * The bitwise or operator.
    +     *
    +     * @see #bitOr(Field, Field)
    +     */
    +    @Support({ ASE, CUBRID, DB2, H2, HSQLDB, MYSQL, ORACLE, POSTGRES, SQLSERVER, SYBASE, SQLITE })
    +    public static <T extends Number> Field<T> bitOr(Field<T> value1, T value2) {
    +        return bitOr(nullSafe(value1), val(value2));
    +    }
    +
    +    /**
    +     * The bitwise or operator.
    +     * <p>
    +     * This is not supported by Derby, Ingres
    +     * <p>
    +     * This renders the or operation where available:
    +     * <code><pre>[field1] | [field2]</pre></code>
    +     * ... or the or function elsewhere:
    +     * <code><pre>bitor([field1], [field2])</pre></code>
    +     */
    +    @Support({ ASE, CUBRID, DB2, H2, HSQLDB, MYSQL, ORACLE, POSTGRES, SQLSERVER, SYBASE, SQLITE })
    +    public static <T extends Number> Field<T> bitOr(Field<T> field1, Field<T> field2) {
    +        return new Expression<T>(ExpressionOperator.BIT_OR, nullSafe(field1), nullSafe(field2));
    +    }
    +
    +    /**
    +     * The bitwise not or operator.
    +     *
    +     * @see #bitNor(Field, Field)
    +     * @see #bitNot(Field)
    +     */
    +    @Support({ ASE, CUBRID, DB2, H2, HSQLDB, MYSQL, ORACLE, POSTGRES, SQLSERVER, SYBASE, SQLITE })
    +    public static <T extends Number> Field<T> bitNor(T value1, T value2) {
    +        return bitNor(val(value1), val(value2));
    +    }
    +    /**
    +     * The bitwise not or operator.
    +     *
    +     * @see #bitNor(Field, Field)
    +     * @see #bitNot(Field)
    +     */
    +    @Support({ ASE, CUBRID, DB2, H2, HSQLDB, MYSQL, ORACLE, POSTGRES, SQLSERVER, SYBASE, SQLITE })
    +    public static <T extends Number> Field<T> bitNor(T value1, Field<T> value2) {
    +        return bitNor(val(value1), nullSafe(value2));
    +    }
    +    /**
    +     * The bitwise not or operator.
    +     *
    +     * @see #bitNor(Field, Field)
    +     * @see #bitNot(Field)
    +     */
    +    @Support({ ASE, CUBRID, DB2, H2, HSQLDB, MYSQL, ORACLE, POSTGRES, SQLSERVER, SYBASE, SQLITE })
    +    public static <T extends Number> Field<T> bitNor(Field<T> value1, T value2) {
    +        return bitNor(nullSafe(value1), val(value2));
    +    }
    +
    +    /**
    +     * The bitwise not or operator.
    +     * <p>
    +     * This is not supported by Derby, Ingres
    +     * <p>
    +     * This renders the not or operation where available:
    +     * <code><pre>~([field1] | [field2])</pre></code>
    +     * ... or the not or function elsewhere:
    +     * <code><pre>bitnot(bitor([field1], [field2]))</pre></code>
    +     *
    +     * @see #bitNot(Field)
    +     */
    +    @Support({ ASE, CUBRID, DB2, H2, HSQLDB, MYSQL, ORACLE, POSTGRES, SQLSERVER, SYBASE, SQLITE })
    +    public static <T extends Number> Field<T> bitNor(Field<T> field1, Field<T> field2) {
    +        return new Expression<T>(ExpressionOperator.BIT_NOR, nullSafe(field1), nullSafe(field2));
    +    }
    +
    +    /**
    +     * The bitwise xor operator.
    +     *
    +     * @see #bitXor(Field, Field)
    +     */
    +    @Support({ ASE, CUBRID, DB2, H2, HSQLDB, MYSQL, ORACLE, POSTGRES, SQLSERVER, SYBASE, SQLITE })
    +    public static <T extends Number> Field<T> bitXor(T value1, T value2) {
    +        return bitXor(val(value1), val(value2));
    +    }
    +
    +    /**
    +     * The bitwise xor operator.
    +     *
    +     * @see #bitXor(Field, Field)
    +     */
    +    @Support({ ASE, CUBRID, DB2, H2, HSQLDB, MYSQL, ORACLE, POSTGRES, SQLSERVER, SYBASE, SQLITE })
    +    public static <T extends Number> Field<T> bitXor(T value1, Field<T> value2) {
    +        return bitXor(val(value1), nullSafe(value2));
    +    }
    +
    +    /**
    +     * The bitwise xor operator.
    +     *
    +     * @see #bitXor(Field, Field)
    +     */
    +    @Support({ ASE, CUBRID, DB2, H2, HSQLDB, MYSQL, ORACLE, POSTGRES, SQLSERVER, SYBASE, SQLITE })
    +    public static <T extends Number> Field<T> bitXor(Field<T> value1, T value2) {
    +        return bitXor(nullSafe(value1), val(value2));
    +    }
    +
    +    /**
    +     * The bitwise xor operator.
    +     * <p>
    +     * This is not supported by Derby, Ingres
    +     * <p>
    +     * This renders the or operation where available:
    +     * <code><pre>[field1] ^ [field2]</pre></code>
    +     * ... or the xor function elsewhere:
    +     * <code><pre>bitxor([field1], [field2])</pre></code>
    +     */
    +    @Support({ ASE, CUBRID, DB2, H2, HSQLDB, MYSQL, ORACLE, POSTGRES, SQLSERVER, SYBASE, SQLITE })
    +    public static <T extends Number> Field<T> bitXor(Field<T> field1, Field<T> field2) {
    +        return new Expression<T>(ExpressionOperator.BIT_XOR, nullSafe(field1), nullSafe(field2));
    +    }
    +
    +    /**
    +     * The bitwise not xor operator.
    +     *
    +     * @see #bitXNor(Field, Field)
    +     * @see #bitNot(Field)
    +     */
    +    @Support({ ASE, CUBRID, DB2, H2, HSQLDB, MYSQL, ORACLE, POSTGRES, SQLSERVER, SYBASE, SQLITE })
    +    public static <T extends Number> Field<T> bitXNor(T value1, T value2) {
    +        return bitXNor(val(value1), val(value2));
    +    }
    +
    +    /**
    +     * The bitwise not xor operator.
    +     *
    +     * @see #bitXNor(Field, Field)
    +     * @see #bitNot(Field)
    +     */
    +    @Support({ ASE, CUBRID, DB2, H2, HSQLDB, MYSQL, ORACLE, POSTGRES, SQLSERVER, SYBASE, SQLITE })
    +    public static <T extends Number> Field<T> bitXNor(T value1, Field<T> value2) {
    +        return bitXNor(val(value1), nullSafe(value2));
    +    }
    +
    +    /**
    +     * The bitwise not xor operator.
    +     *
    +     * @see #bitXNor(Field, Field)
    +     * @see #bitNot(Field)
    +     */
    +    @Support({ ASE, CUBRID, DB2, H2, HSQLDB, MYSQL, ORACLE, POSTGRES, SQLSERVER, SYBASE, SQLITE })
    +    public static <T extends Number> Field<T> bitXNor(Field<T> value1, T value2) {
    +        return bitXNor(nullSafe(value1), val(value2));
    +    }
    +
    +    /**
    +     * The bitwise not xor operator.
    +     * <p>
    +     * This is not supported by Derby, Ingres
    +     * <p>
    +     * This renders the or operation where available:
    +     * <code><pre>~([field1] ^ [field2])</pre></code>
    +     * ... or the not xor function elsewhere:
    +     * <code><pre>bitnot(bitxor([field1], [field2]))</pre></code>
    +     */
    +    @Support({ ASE, CUBRID, DB2, H2, HSQLDB, MYSQL, ORACLE, POSTGRES, SQLSERVER, SYBASE, SQLITE })
    +    public static <T extends Number> Field<T> bitXNor(Field<T> field1, Field<T> field2) {
    +        return new Expression<T>(ExpressionOperator.BIT_XNOR, nullSafe(field1), nullSafe(field2));
    +    }
    +
    +    /**
    +     * The bitwise left shift operator.
    +     *
    +     * @see #shl(Field, Field)
    +     * @see #power(Field, Number)
    +     */
    +    @Support({ ASE, CUBRID, DB2, H2, HSQLDB, MYSQL, ORACLE, POSTGRES, SQLSERVER, SYBASE, SQLITE })
    +    public static <T extends Number> Field<T> shl(T value1, T value2) {
    +        return shl(val(value1), val(value2));
    +    }
    +
    +    /**
    +     * The bitwise left shift operator.
    +     *
    +     * @see #shl(Field, Field)
    +     * @see #power(Field, Number)
    +     */
    +    @Support({ ASE, CUBRID, DB2, H2, HSQLDB, MYSQL, ORACLE, POSTGRES, SQLSERVER, SYBASE, SQLITE })
    +    public static <T extends Number> Field<T> shl(T value1, Field<T> value2) {
    +        return shl(val(value1), nullSafe(value2));
    +    }
    +
    +    /**
    +     * The bitwise left shift operator.
    +     *
    +     * @see #shl(Field, Field)
    +     * @see #power(Field, Number)
    +     */
    +    @Support({ ASE, CUBRID, DB2, H2, HSQLDB, MYSQL, ORACLE, POSTGRES, SQLSERVER, SYBASE, SQLITE })
    +    public static <T extends Number> Field<T> shl(Field<T>value1, T value2) {
    +        return shl(nullSafe(value1), val(value2));
    +    }
    +
    +    /**
    +     * The bitwise left shift operator.
    +     * <p>
    +     * Some dialects natively support this using <code>[field1] << [field2]</code>.
    +     * jOOQ simulates this operator in some dialects using
    +     * <code>[field1] * power(2, [field2])</code>, where power might also be simulated.
    +     *
    +     * @see #power(Field, Field)
    +     */
    +    @Support({ ASE, CUBRID, DB2, H2, HSQLDB, MYSQL, ORACLE, POSTGRES, SQLSERVER, SYBASE, SQLITE })
    +    public static <T extends Number> Field<T> shl(Field<T> field1, Field<T> field2) {
    +        return new Expression<T>(ExpressionOperator.SHL, nullSafe(field1), nullSafe(field2));
    +    }
    +
    +    /**
    +     * The bitwise right shift operator.
    +     *
    +     * @see #shr(Field, Field)
    +     * @see #power(Field, Number)
    +     */
    +    @Support({ ASE, CUBRID, DB2, H2, HSQLDB, MYSQL, ORACLE, POSTGRES, SQLSERVER, SYBASE, SQLITE })
    +    public static <T extends Number> Field<T> shr(T value1, T value2) {
    +        return shr(val(value1), val(value2));
    +    }
    +
    +    /**
    +     * The bitwise right shift operator.
    +     *
    +     * @see #shr(Field, Field)
    +     * @see #power(Field, Number)
    +     */
    +    @Support({ ASE, CUBRID, DB2, H2, HSQLDB, MYSQL, ORACLE, POSTGRES, SQLSERVER, SYBASE, SQLITE })
    +    public static <T extends Number> Field<T> shr(T value1, Field<T> value2) {
    +        return shr(val(value1), nullSafe(value2));
    +    }
    +
    +    /**
    +     * The bitwise right shift operator.
    +     *
    +     * @see #shr(Field, Field)
    +     * @see #power(Field, Number)
    +     */
    +    @Support({ ASE, CUBRID, DB2, H2, HSQLDB, MYSQL, ORACLE, POSTGRES, SQLSERVER, SYBASE, SQLITE })
    +    public static <T extends Number> Field<T> shr(Field<T> value1, T value2) {
    +        return shr(nullSafe(value1), val(value2));
    +    }
    +
    +    /**
    +     * The bitwise right shift operator.
    +     * <p>
    +     * Some dialects natively support this using <code>[field1] >> [field2]</code>.
    +     * jOOQ simulates this operator in some dialects using
    +     * <code>[field1] / power(2, [field2])</code>, where power might also be simulated.
    +     *
    +     * @see #power(Field, Field)
    +     */
    +    @Support({ ASE, CUBRID, DB2, H2, HSQLDB, MYSQL, ORACLE, POSTGRES, SQLSERVER, SYBASE, SQLITE })
    +    public static <T extends Number> Field<T> shr(Field<T> field1, Field<T> field2) {
    +        return new Expression<T>(ExpressionOperator.SHR, nullSafe(field1), nullSafe(field2));
    +    }
    +
    +    // ------------------------------------------------------------------------
    +    // XXX Mathematical functions
    +    // ------------------------------------------------------------------------
    +
    +    /**
    +     * Find the greatest among all values
    +     * <p>
    +     * This function has no equivalent in Adaptive Server, Derby, SQL Server and
    +     * Sybase SQL Anywhere. Its current simulation implementation has
    +     * <code>O(2^n)</code> complexity and should be avoided for
    +     * <code>n &gt; 5</code>! Better implementation suggestions are very
    +     * welcome.
    +     *
    +     * @see #greatest(Field, Field...)
    +     */
    +    @Support
    +    public static <T> Field<T> greatest(T value, T... values) {
    +        return greatest(val(value), vals(values).toArray(new Field[0]));
    +    }
    +
    +    /**
    +     * Find the greatest among all values
    +     * <p>
    +     * This function has no equivalent in Adaptive Server, Derby, SQL Server and
    +     * Sybase SQL Anywhere. Its current simulation implementation has
    +     * <code>O(2^n)</code> complexity and should be avoided for
    +     * <code>n &gt; 5</code>! Better implementation suggestions are very
    +     * welcome.
    +     */
    +    @Support
    +    public static <T> Field<T> greatest(Field<T> field, Field<?>... others) {
    +        return new Greatest<T>(nullSafeDataType(field), nullSafe(combine(field, others)));
    +    }
    +
    +    /**
    +     * Find the least among all values
    +     * <p>
    +     * This function has no equivalent in Adaptive Server, Derby, SQL Server and
    +     * Sybase SQL Anywhere. Its current simulation implementation has
    +     * <code>O(2^n)</code> complexity and should be avoided for
    +     * <code>n &gt; 5</code>! Better implementation suggestions are very
    +     * welcome.
    +     *
    +     * @see #least(Field, Field...)
    +     */
    +    @Support
    +    public static <T> Field<T> least(T value, T... values) {
    +        return least(val(value), vals(values).toArray(new Field[0]));
    +    }
    +
    +    /**
    +     * Find the least among all values
    +     * <p>
    +     * This function has no equivalent in Adaptive Server, Derby, SQL Server and
    +     * Sybase SQL Anywhere. Its current simulation implementation has
    +     * <code>O(2^n)</code> complexity and should be avoided for
    +     * <code>n &gt; 5</code>! Better implementation suggestions are very
    +     * welcome.
    +     */
    +    @Support
    +    public static <T> Field<T> least(Field<T> field, Field<?>... others) {
    +        return new Least<T>(nullSafeDataType(field), nullSafe(combine(field, others)));
    +    }
    +
    +    /**
    +     * Get the sign of a numeric field: sign(field)
    +     *
    +     * @see #sign(Field)
    +     */
    +    @Support
    +    public static Field<Integer> sign(Number value) {
    +        return sign(val(value));
    +    }
    +
    +    /**
    +     * Get the sign of a numeric field: sign(field)
    +     * <p>
    +     * This renders the sign function where available:
    +     * <code><pre>sign([field])</pre></code>
    +     * ... or simulates it elsewhere (without bind variables on values -1, 0, 1):
    +     * <code><pre>
    +     * CASE WHEN [this] > 0 THEN 1
    +     *      WHEN [this] < 0 THEN -1
    +     *      ELSE 0
    +     * END
    +     */
    +    @Support
    +    public static Field<Integer> sign(Field<? extends Number> field) {
    +        return new Sign(nullSafe(field));
    +    }
    +
    +    /**
    +     * Get the absolute value of a numeric field: abs(field)
    +     *
    +     * @see #abs(Field)
    +     */
    +    @Support
    +    public static <T extends Number> Field<T> abs(T value) {
    +        return abs(val(value));
    +    }
    +
    +    /**
    +     * Get the absolute value of a numeric field: abs(field)
    +     * <p>
    +     * This renders the same on all dialects:
    +     * <code><pre>abs([field])</pre></code>
    +     */
    +    @Support
    +    public static <T extends Number> Field<T> abs(Field<T> field) {
    +        return function("abs", nullSafeDataType(field), nullSafe(field));
    +    }
    +
    +    /**
    +     * Get rounded value of a numeric field: round(field)
    +     *
    +     * @see #round(Field)
    +     */
    +    @Support
    +    public static <T extends Number> Field<T> round(T value) {
    +        return round(val(value));
    +    }
    +
    +    /**
    +     * Get rounded value of a numeric field: round(field)
    +     * <p>
    +     * This renders the round function where available:
    +     * <code><pre>round([field]) or
    +     * round([field], 0)</pre></code>
    +     * ... or simulates it elsewhere using floor and ceil
    +     */
    +    @Support
    +    public static <T extends Number> Field<T> round(Field<T> field) {
    +        return new Round<T>(nullSafe(field));
    +    }
    +
    +    /**
    +     * Get rounded value of a numeric field: round(field, decimals)
    +     *
    +     * @see #round(Field, int)
    +     */
    +    @Support
    +    public static <T extends Number> Field<T> round(T value, int decimals) {
    +        return round(val(value), decimals);
    +    }
    +
    +    /**
    +     * Get rounded value of a numeric field: round(field, decimals)
    +     * <p>
    +     * This renders the round function where available:
    +     * <code><pre>round([field], [decimals])</pre></code>
    +     * ... or simulates it elsewhere using floor and ceil
    +     */
    +    @Support
    +    public static <T extends Number> Field<T> round(Field<T> field, int decimals) {
    +        return new Round<T>(nullSafe(field), decimals);
    +    }
    +
    +    /**
    +     * Get the largest integer value not greater than [this]
    +     *
    +     * @see #floor(Field)
    +     */
    +    @Support
    +    public static <T extends Number> Field<T> floor(T value) {
    +        return floor(val(value));
    +    }
    +
    +    /**
    +     * Get the largest integer value not greater than [this]
    +     * <p>
    +     * This renders the floor function where available:
    +     * <code><pre>floor([this])</pre></code>
    +     * ... or simulates it elsewhere using round:
    +     * <code><pre>round([this] - 0.499999999999999)</pre></code>
    +     */
    +    @Support
    +    public static <T extends Number> Field<T> floor(Field<T> field) {
    +        return new Floor<T>(nullSafe(field));
    +    }
    +
    +    /**
    +     * Get the smallest integer value not less than [this]
    +     *
    +     * @see #ceil(Field)
    +     */
    +    @Support
    +    public static <T extends Number> Field<T> ceil(T value) {
    +        return ceil(val(value));
    +    }
    +
    +    /**
    +     * Get the smallest integer value not less than [field]
    +     * <p>
    +     * This renders the ceil or ceiling function where available:
    +     * <code><pre>ceil([field]) or
    +     * ceiling([field])</pre></code>
    +     * ... or simulates it elsewhere using round:
    +     * <code><pre>round([field] + 0.499999999999999)</pre></code>
    +     */
    +    @Support
    +    public static <T extends Number> Field<T> ceil(Field<T> field) {
    +        return new Ceil<T>(nullSafe(field));
    +    }
    +
    +    /**
    +     * Get the sqrt(field) function
    +     *
    +     * @see #sqrt(Field)
    +     */
    +    @Support({ ASE, CUBRID, DB2, DERBY, H2, HSQLDB, INGRES, MYSQL, ORACLE, POSTGRES, SQLSERVER, SYBASE })
    +    public static Field<BigDecimal> sqrt(Number value) {
    +        return sqrt(val(value));
    +    }
    +
    +    /**
    +     * Get the sqrt(field) function
    +     * <p>
    +     * This renders the sqrt function where available:
    +     * <code><pre>sqrt([field])</pre></code> ... or simulates it elsewhere using
    +     * power (which in turn may also be simulated using ln and exp functions):
    +     * <code><pre>power([field], 0.5)</pre></code>
    +     */
    +    @Support({ ASE, CUBRID, DB2, DERBY, H2, HSQLDB, INGRES, MYSQL, ORACLE, POSTGRES, SQLSERVER, SYBASE })
    +    public static Field<BigDecimal> sqrt(Field<? extends Number> field) {
    +        return new Sqrt(nullSafe(field));
    +    }
    +
    +    /**
    +     * Get the exp(field) function, taking this field as the power of e
    +     *
    +     * @see #exp(Field)
    +     */
    +    @Support({ ASE, CUBRID, DB2, DERBY, H2, HSQLDB, INGRES, MYSQL, ORACLE, POSTGRES, SQLSERVER, SYBASE })
    +    public static Field<BigDecimal> exp(Number value) {
    +        return exp(val(value));
    +    }
    +
    +    /**
    +     * Get the exp(field) function, taking this field as the power of e
    +     * <p>
    +     * This renders the same on all dialects:
    +     * <code><pre>exp([field])</pre></code>
    +     */
    +    @Support({ ASE, CUBRID, DB2, DERBY, H2, HSQLDB, INGRES, MYSQL, ORACLE, POSTGRES, SQLSERVER, SYBASE })
    +    public static Field<BigDecimal> exp(Field<? extends Number> field) {
    +        return function("exp", SQLDataType.NUMERIC, nullSafe(field));
    +    }
    +
    +    /**
    +     * Get the ln(field) function, taking the natural logarithm of this field
    +     *
    +     * @see #ln(Field)
    +     */
    +    @Support({ ASE, CUBRID, DB2, DERBY, H2, HSQLDB, INGRES, MYSQL, ORACLE, POSTGRES, SQLSERVER, SYBASE })
    +    public static Field<BigDecimal> ln(Number value) {
    +        return ln(val(value));
    +    }
    +
    +    /**
    +     * Get the ln(field) function, taking the natural logarithm of this field
    +     * <p>
    +     * This renders the ln or log function where available:
    +     * <code><pre>ln([field]) or
    +     * log([field])</pre></code>
    +     */
    +    @Support({ ASE, CUBRID, DB2, DERBY, H2, HSQLDB, INGRES, MYSQL, ORACLE, POSTGRES, SQLSERVER, SYBASE })
    +    public static Field<BigDecimal> ln(Field<? extends Number> field) {
    +        return new Ln(nullSafe(field));
    +    }
    +
    +    /**
    +     * Get the log(field, base) function
    +     *
    +     * @see #log(Field, int)
    +     */
    +    @Support({ ASE, CUBRID, DB2, DERBY, H2, HSQLDB, INGRES, MYSQL, ORACLE, POSTGRES, SQLSERVER, SYBASE })
    +    public static Field<BigDecimal> log(Number value, int base) {
    +        return log(val(value), base);
    +    }
    +
    +    /**
    +     * Get the log(field, base) function
    +     * <p>
    +     * This renders the log function where available:
    +     * <code><pre>log([field])</pre></code> ... or simulates it elsewhere (in
    +     * most RDBMS) using the natural logarithm:
    +     * <code><pre>ln([field]) / ln([base])</pre></code>
    +     */
    +    @Support({ ASE, CUBRID, DB2, DERBY, H2, HSQLDB, INGRES, MYSQL, ORACLE, POSTGRES, SQLSERVER, SYBASE })
    +    public static Field<BigDecimal> log(Field<? extends Number> field, int base) {
    +        return new Ln(nullSafe(field), base);
    +    }
    +
    +    /**
    +     * Get the power(field, exponent) function
    +     *
    +     * @see #power(Field, Field)
    +     */
    +    @Support({ ASE, CUBRID, DB2, DERBY, H2, HSQLDB, INGRES, MYSQL, ORACLE, POSTGRES, SQLSERVER, SYBASE })
    +    public static Field<BigDecimal> power(Number value, Number exponent) {
    +        return power(val(value), val(exponent));
    +    }
    +
    +    /**
    +     * Get the power(field, exponent) function
    +     *
    +     * @see #power(Field, Field)
    +     */
    +    @Support({ ASE, CUBRID, DB2, DERBY, H2, HSQLDB, INGRES, MYSQL, ORACLE, POSTGRES, SQLSERVER, SYBASE })
    +    public static Field<BigDecimal> power(Field<? extends Number> field, Number exponent) {
    +        return power(nullSafe(field), val(exponent));
    +    }
    +
    +    /**
    +     * Get the power(field, exponent) function
    +     *
    +     * @see #power(Field, Field)
    +     */
    +    @Support({ ASE, CUBRID, DB2, DERBY, H2, HSQLDB, INGRES, MYSQL, ORACLE, POSTGRES, SQLSERVER, SYBASE })
    +    public static Field<BigDecimal> power(Number value, Field<? extends Number> exponent) {
    +        return power(val(value), nullSafe(exponent));
    +    }
    +
    +    /**
    +     * Get the power(field, exponent) function
    +     * <p>
    +     * This renders the power function where available:
    +     * <code><pre>power([field], [exponent])</pre></code> ... or simulates it
    +     * elsewhere using ln and exp:
    +     * <code><pre>exp(ln([field]) * [exponent])</pre></code>
    +     */
    +    @Support({ ASE, CUBRID, DB2, DERBY, H2, HSQLDB, INGRES, MYSQL, ORACLE, POSTGRES, SQLSERVER, SYBASE })
    +    public static Field<BigDecimal> power(Field<? extends Number> field, Field<? extends Number> exponent) {
    +        return new Power(nullSafe(field), nullSafe(exponent));
    +    }
    +
    +    /**
    +     * Get the arc cosine(field) function
    +     *
    +     * @see #acos(Field)
    +     */
    +    @Support({ ASE, CUBRID, DB2, DERBY, H2, HSQLDB, INGRES, MYSQL, ORACLE, POSTGRES, SQLSERVER, SYBASE })
    +    public static Field<BigDecimal> acos(Number value) {
    +        return acos(val(value));
    +    }
    +
    +    /**
    +     * Get the arc cosine(field) function
    +     * <p>
    +     * This renders the acos function where available:
    +     * <code><pre>acos([field])</pre></code>
    +     */
    +    @Support({ ASE, CUBRID, DB2, DERBY, H2, HSQLDB, INGRES, MYSQL, ORACLE, POSTGRES, SQLSERVER, SYBASE })
    +    public static Field<BigDecimal> acos(Field<? extends Number> field) {
    +        return function("acos", SQLDataType.NUMERIC, nullSafe(field));
    +    }
    +
    +    /**
    +     * Get the arc sine(field) function
    +     *
    +     * @see #asin(Field)
    +     */
    +    @Support({ ASE, CUBRID, DB2, DERBY, H2, HSQLDB, INGRES, MYSQL, ORACLE, POSTGRES, SQLSERVER, SYBASE })
    +    public static Field<BigDecimal> asin(Number value) {
    +        return asin(val(value));
    +    }
    +
    +    /**
    +     * Get the arc sine(field) function
    +     * <p>
    +     * This renders the asin function where available:
    +     * <code><pre>asin([field])</pre></code>
    +     */
    +    @Support({ ASE, CUBRID, DB2, DERBY, H2, HSQLDB, INGRES, MYSQL, ORACLE, POSTGRES, SQLSERVER, SYBASE })
    +    public static Field<BigDecimal> asin(Field<? extends Number> field) {
    +        return function("asin", SQLDataType.NUMERIC, nullSafe(field));
    +    }
    +
    +    /**
    +     * Get the arc tangent(field) function
    +     *
    +     * @see #atan(Field)
    +     */
    +    @Support({ ASE, CUBRID, DB2, DERBY, H2, HSQLDB, INGRES, MYSQL, ORACLE, POSTGRES, SQLSERVER, SYBASE })
    +    public static Field<BigDecimal> atan(Number value) {
    +        return atan(val(value));
    +    }
    +
    +    /**
    +     * Get the arc tangent(field) function
    +     * <p>
    +     * This renders the atan function where available:
    +     * <code><pre>atan([field])</pre></code>
    +     */
    +    @Support({ ASE, CUBRID, DB2, DERBY, H2, HSQLDB, INGRES, MYSQL, ORACLE, POSTGRES, SQLSERVER, SYBASE })
    +    public static Field<BigDecimal> atan(Field<? extends Number> field) {
    +        return function("atan", SQLDataType.NUMERIC, nullSafe(field));
    +    }
    +
    +    /**
    +     * Get the atan2(field, y) function
    +     *
    +     * @see #atan2(Field, Field)
    +     */
    +    @Support({ ASE, CUBRID, DB2, DERBY, H2, HSQLDB, INGRES, MYSQL, ORACLE, POSTGRES, SQLSERVER, SYBASE })
    +    public static Field<BigDecimal> atan2(Number x, Number y) {
    +        return atan2(val(x), val(y));
    +    }
    +
    +    /**
    +     * Get the atan2(field, y) function
    +     *
    +     * @see #atan2(Field, Field)
    +     */
    +    @Support({ ASE, CUBRID, DB2, DERBY, H2, HSQLDB, INGRES, MYSQL, ORACLE, POSTGRES, SQLSERVER, SYBASE })
    +    public static Field<BigDecimal> atan2(Number x, Field<? extends Number> y) {
    +        return atan2(val(x), nullSafe(y));
    +    }
    +
    +    /**
    +     * Get the atan2(field, y) function
    +      *
    +     * @see #atan2(Field, Field)
    +     */
    +    @Support({ ASE, CUBRID, DB2, DERBY, H2, HSQLDB, INGRES, MYSQL, ORACLE, POSTGRES, SQLSERVER, SYBASE })
    +    public static Field<BigDecimal> atan2(Field<? extends Number> x, Number y) {
    +        return atan2(nullSafe(x), val(y));
    +    }
    +
    +    /**
    +     * Get the atan2(field, y) function
    +     * <p>
    +     * This renders the atan2 or atn2 function where available:
    +     * <code><pre>atan2([x], [y]) or
    +     * atn2([x], [y])</pre></code>
    +     */
    +    @Support({ ASE, CUBRID, DB2, DERBY, H2, HSQLDB, INGRES, MYSQL, ORACLE, POSTGRES, SQLSERVER, SYBASE })
    +    public static Field<BigDecimal> atan2(Field<? extends Number> x, Field<? extends Number> y) {
    +        return new Function<BigDecimal>(Term.ATAN2, SQLDataType.NUMERIC, nullSafe(x), nullSafe(y));
    +    }
    +
    +    /**
    +     * Get the cosine(field) function
    +     *
    +     * @see #cos(Field)
    +     */
    +    @Support({ ASE, CUBRID, DB2, DERBY, H2, HSQLDB, INGRES, MYSQL, ORACLE, POSTGRES, SQLSERVER, SYBASE })
    +    public static Field<BigDecimal> cos(Number value) {
    +        return cos(val(value));
    +    }
    +
    +    /**
    +     * Get the cosine(field) function
    +     * <p>
    +     * This renders the cos function where available:
    +     * <code><pre>cos([field])</pre></code>
    +     */
    +    @Support({ ASE, CUBRID, DB2, DERBY, H2, HSQLDB, INGRES, MYSQL, ORACLE, POSTGRES, SQLSERVER, SYBASE })
    +    public static Field<BigDecimal> cos(Field<? extends Number> field) {
    +        return function("cos", SQLDataType.NUMERIC, nullSafe(field));
    +    }
    +
    +    /**
    +     * Get the sine(field) function
    +     *
    +     * @see #sin(Field)
    +     */
    +    @Support({ ASE, CUBRID, DB2, DERBY, H2, HSQLDB, INGRES, MYSQL, ORACLE, POSTGRES, SQLSERVER, SYBASE })
    +    public static Field<BigDecimal> sin(Number value) {
    +        return sin(val(value));
    +    }
    +
    +    /**
    +     * Get the sine(field) function
    +     * <p>
    +     * This renders the sin function where available:
    +     * <code><pre>sin([field])</pre></code>
    +     */
    +    @Support({ ASE, CUBRID, DB2, DERBY, H2, HSQLDB, INGRES, MYSQL, ORACLE, POSTGRES, SQLSERVER, SYBASE })
    +    public static Field<BigDecimal> sin(Field<? extends Number> field) {
    +        return function("sin", SQLDataType.NUMERIC, nullSafe(field));
    +    }
    +
    +    /**
    +     * Get the tangent(field) function
    +     *
    +     * @see #tan(Field)
    +     */
    +    @Support({ ASE, CUBRID, DB2, DERBY, H2, HSQLDB, INGRES, MYSQL, ORACLE, POSTGRES, SQLSERVER, SYBASE })
    +    public static Field<BigDecimal> tan(Number value) {
    +        return tan(val(value));
    +    }
    +
    +    /**
    +     * Get the tangent(field) function
    +     * <p>
    +     * This renders the tan function where available:
    +     * <code><pre>tan([field])</pre></code>
    +     */
    +    @Support({ ASE, CUBRID, DB2, DERBY, H2, HSQLDB, INGRES, MYSQL, ORACLE, POSTGRES, SQLSERVER, SYBASE })
    +    public static Field<BigDecimal> tan(Field<? extends Number> field) {
    +        return function("tan", SQLDataType.NUMERIC, nullSafe(field));
    +    }
    +
    +    /**
    +     * Get the cotangent(field) function
    +     *
    +     * @see #cot(Field)
    +     */
    +    @Support({ ASE, CUBRID, DB2, DERBY, H2, HSQLDB, INGRES, MYSQL, ORACLE, POSTGRES, SQLSERVER, SYBASE })
    +    public static Field<BigDecimal> cot(Number value) {
    +        return cot(val(value));
    +    }
    +
    +    /**
    +     * Get the cotangent(field) function
    +     * <p>
    +     * This renders the cot function where available:
    +     * <code><pre>cot([field])</pre></code> ... or simulates it elsewhere using
    +     * sin and cos: <code><pre>cos([field]) / sin([field])</pre></code>
    +     */
    +    @Support({ ASE, CUBRID, DB2, DERBY, H2, HSQLDB, INGRES, MYSQL, ORACLE, POSTGRES, SQLSERVER, SYBASE })
    +    public static Field<BigDecimal> cot(Field<? extends Number> field) {
    +        return new Cot(nullSafe(field));
    +    }
    +
    +    /**
    +     * Get the hyperbolic sine function: sinh(field)
    +     *
    +     * @see #sinh(Field)
    +     */
    +    @Support({ ASE, CUBRID, DB2, DERBY, H2, HSQLDB, INGRES, MYSQL, ORACLE, POSTGRES, SQLSERVER, SYBASE })
    +    public static Field<BigDecimal> sinh(Number value) {
    +        return sinh(val(value));
    +    }
    +
    +    /**
    +     * Get the hyperbolic sine function: sinh(field)
    +     * <p>
    +     * This renders the sinh function where available:
    +     * <code><pre>sinh([field])</pre></code> ... or simulates it elsewhere using
    +     * exp: <code><pre>(exp([field] * 2) - 1) / (exp([field] * 2))</pre></code>
    +     */
    +    @Support({ ASE, CUBRID, DB2, DERBY, H2, HSQLDB, INGRES, MYSQL, ORACLE, POSTGRES, SQLSERVER, SYBASE })
    +    public static Field<BigDecimal> sinh(Field<? extends Number> field) {
    +        return new Sinh(nullSafe(field));
    +    }
    +
    +    /**
    +     * Get the hyperbolic cosine function: cosh(field)
    +     *
    +     * @see #cosh(Field)
    +     */
    +    @Support({ ASE, CUBRID, DB2, DERBY, H2, HSQLDB, INGRES, MYSQL, ORACLE, POSTGRES, SQLSERVER, SYBASE })
    +    public static Field<BigDecimal> cosh(Number value) {
    +        return cosh(val(value));
    +    }
    +
    +    /**
    +     * Get the hyperbolic cosine function: cosh(field)
    +     * <p>
    +     * This renders the cosh function where available:
    +     * <code><pre>cosh([field])</pre></code> ... or simulates it elsewhere using
    +     * exp: <code><pre>(exp([field] * 2) + 1) / (exp([field] * 2))</pre></code>
    +     */
    +    @Support({ ASE, CUBRID, DB2, DERBY, H2, HSQLDB, INGRES, MYSQL, ORACLE, POSTGRES, SQLSERVER, SYBASE })
    +    public static Field<BigDecimal> cosh(Field<? extends Number> field) {
    +        return new Cosh(nullSafe(field));
    +    }
    +
    +    /**
    +     * Get the hyperbolic tangent function: tanh(field)
    +     *
    +     * @see #tanh(Field)
    +     */
    +    @Support({ ASE, CUBRID, DB2, DERBY, H2, HSQLDB, INGRES, MYSQL, ORACLE, POSTGRES, SQLSERVER, SYBASE })
    +    public static Field<BigDecimal> tanh(Number value) {
    +        return tanh(val(value));
    +    }
    +
    +    /**
    +     * Get the hyperbolic tangent function: tanh(field)
    +     * <p>
    +     * This renders the tanh function where available:
    +     * <code><pre>tanh([field])</pre></code> ... or simulates it elsewhere using
    +     * exp:
    +     * <code><pre>(exp([field] * 2) - 1) / (exp([field] * 2) + 1)</pre></code>
    +     */
    +    @Support({ ASE, CUBRID, DB2, DERBY, H2, HSQLDB, INGRES, MYSQL, ORACLE, POSTGRES, SQLSERVER, SYBASE })
    +    public static Field<BigDecimal> tanh(Field<? extends Number> field) {
    +        return new Tanh(nullSafe(field));
    +    }
    +
    +    /**
    +     * Get the hyperbolic cotangent function: coth(field)
    +     *
    +     * @see #coth(Field)
    +     */
    +    @Support({ ASE, CUBRID, DB2, DERBY, H2, HSQLDB, INGRES, MYSQL, ORACLE, POSTGRES, SQLSERVER, SYBASE })
    +    public static Field<BigDecimal> coth(Number value) {
    +        return coth(val(value));
    +    }
    +
    +    /**
    +     * Get the hyperbolic cotangent function: coth(field)
    +     * <p>
    +     * This is not supported by any RDBMS, but simulated using exp exp:
    +     * <code><pre>(exp([field] * 2) + 1) / (exp([field] * 2) - 1)</pre></code>
    +     */
    +    @Support({ ASE, CUBRID, DB2, DERBY, H2, HSQLDB, INGRES, MYSQL, ORACLE, POSTGRES, SQLSERVER, SYBASE })
    +    public static Field<BigDecimal> coth(Field<? extends Number> field) {
    +        field = nullSafe(field);
    +        return exp(field.mul(2)).add(1).div(exp(field.mul(2)).sub(1));
    +    }
    +
    +    /**
    +     * Calculate degrees from radians from this field
    +     *
    +     * @see #deg(Field)
    +     */
    +    @Support
    +    public static Field<BigDecimal> deg(Number value) {
    +        return deg(val(value));
    +    }
    +
    +    /**
    +     * Calculate degrees from radians from this field
    +     * <p>
    +     * This renders the degrees function where available:
    +     * <code><pre>degrees([field])</pre></code> ... or simulates it elsewhere:
    +     * <code><pre>[field] * 180 / PI</pre></code>
    +     */
    +    @Support
    +    public static Field<BigDecimal> deg(Field<? extends Number> field) {
    +        return new Degrees(nullSafe(field));
    +    }
    +
    +    /**
    +     * Calculate radians from degrees from this field
    +     *
    +     * @see #rad(Field)
    +     */
    +    @Support
    +    public static Field<BigDecimal> rad(Number value) {
    +        return rad(val(value));
    +    }
    +
    +    /**
    +     * Calculate radians from degrees from this field
    +     * <p>
    +     * This renders the degrees function where available:
    +     * <code><pre>degrees([field])</pre></code> ... or simulates it elsewhere:
    +     * <code><pre>[field] * PI / 180</pre></code>
    +     */
    +    @Support
    +    public static Field<BigDecimal> rad(Field<? extends Number> field) {
    +        return new Radians(nullSafe(field));
    +    }
    +
    +    // -------------------------------------------------------------------------
    +    // Pseudo-fields and functions for use in the context of a CONNECT BY clause
    +    // -------------------------------------------------------------------------
    +
    +    /**
    +     * Retrieve the Oracle-specific <code>LEVEL</code> pseudo-field (to be used
    +     * along with <code>CONNECT BY</code> clauses)
    +     */
    +    @Support({ CUBRID, ORACLE })
    +    public static Field<Integer> level() {
    +        return field("level", Integer.class);
    +    }
    +
    +    /**
    +     * Retrieve the Oracle-specific <code>CONNECT_BY_ISCYCLE</code> pseudo-field
    +     * (to be used along with <code>CONNECT BY</code> clauses)
    +     */
    +    @Support({ CUBRID, ORACLE })
    +    public static Field<Boolean> connectByIsCycle() {
    +        return field("connect_by_iscycle", Boolean.class);
    +    }
    +
    +    /**
    +     * Retrieve the Oracle-specific <code>CONNECT_BY_ISLEAF</code> pseudo-field
    +     * (to be used along with <code>CONNECT BY</code> clauses)
    +     */
    +    @Support({ CUBRID, ORACLE })
    +    public static Field<Boolean> connectByIsLeaf() {
    +        return field("connect_by_isleaf", Boolean.class);
    +    }
    +
    +    /**
    +     * Retrieve the Oracle-specific
    +     * <code>SYS_CONNECT_BY_PATH(field, separator)</code> function (to be used
    +     * along with <code>CONNECT BY</code> clauses).
    +     */
    +    @Support({ CUBRID, ORACLE })
    +    public static Field<String> sysConnectByPath(Field<?> field, String separator) {
    +        String escaped = "'" + separator.replace("'", "''") + "'";
    +        return function("sys_connect_by_path", String.class, field, literal(escaped));
    +    }
    +
    +    /**
    +     * Add the Oracle-specific <code>PRIOR</code> unary operator before a field
    +     * (to be used along with <code>CONNECT BY</code> clauses)
    +     */
    +    @Support({ CUBRID, ORACLE })
    +    public static <T> Field<T> prior(Field<T> field) {
    +        return field("{prior} {0}", nullSafe(field).getDataType(), field);
    +    }
    +
    +    // -------------------------------------------------------------------------
    +    // XXX Aggregate functions
    +    // -------------------------------------------------------------------------
    +
    +    /**
    +     * Get the count(*) function
    +     */
    +    @Support
    +    public static AggregateFunction<Integer> count() {
    +        return count(field("*", Integer.class));
    +    }
    +
    +    /**
    +     * Get the count(field) function
    +     */
    +    @Support
    +    public static AggregateFunction<Integer> count(Field<?> field) {
    +        return new Function<Integer>("count", SQLDataType.INTEGER, nullSafe(field));
    +    }
    +
    +    /**
    +     * Get the count(distinct field) function
    +     */
    +    @Support
    +    public static AggregateFunction<Integer> countDistinct(Field<?> field) {
    +        return new Function<Integer>("count", true, SQLDataType.INTEGER, nullSafe(field));
    +    }
    +
    +    /**
    +     * Get the max value over a field: max(field)
    +     */
    +    @Support
    +    public static <T> AggregateFunction<T> max(Field<T> field) {
    +        return new Function<T>("max", nullSafeDataType(field), nullSafe(field));
    +    }
    +
    +    /**
    +     * Get the max value over a field: max(distinct field)
    +     */
    +    @Support
    +    public static <T> AggregateFunction<T> maxDistinct(Field<T> field) {
    +        return new Function<T>("max", true, nullSafeDataType(field), nullSafe(field));
    +    }
    +
    +    /**
    +     * Get the min value over a field: min(field)
    +     */
    +    @Support
    +    public static <T> AggregateFunction<T> min(Field<T> field) {
    +        return new Function<T>("min", nullSafeDataType(field), nullSafe(field));
    +    }
    +
    +    /**
    +     * Get the min value over a field: min(distinct field)
    +     */
    +    @Support
    +    public static <T> AggregateFunction<T> minDistinct(Field<T> field) {
    +        return new Function<T>("min", true, nullSafeDataType(field), nullSafe(field));
    +    }
    +
    +    /**
    +     * Get the sum over a numeric field: sum(field)
    +     */
    +    @Support
    +    public static AggregateFunction<BigDecimal> sum(Field<? extends Number> field) {
    +        return new Function<BigDecimal>("sum", SQLDataType.NUMERIC, nullSafe(field));
    +    }
    +
    +    /**
    +     * Get the sum over a numeric field: sum(distinct field)
    +     */
    +    @Support
    +    public static AggregateFunction<BigDecimal> sumDistinct(Field<? extends Number> field) {
    +        return new Function<BigDecimal>("sum", true, SQLDataType.NUMERIC, nullSafe(field));
    +    }
    +
    +    /**
    +     * Get the average over a numeric field: avg(field)
    +     */
    +    @Support
    +    public static AggregateFunction<BigDecimal> avg(Field<? extends Number> field) {
    +        return new Function<BigDecimal>("avg", SQLDataType.NUMERIC, nullSafe(field));
    +    }
    +
    +    /**
    +     * Get the average over a numeric field: avg(distinct field)
    +     */
    +    @Support
    +    public static AggregateFunction<BigDecimal> avgDistinct(Field<? extends Number> field) {
    +        return new Function<BigDecimal>("avg", true, SQLDataType.NUMERIC, nullSafe(field));
    +    }
    +
    +    /**
    +     * Get the median over a numeric field: median(field)
    +     * <p>
    +     * This is known to be supported in any of these RDBMS:
    +     * <ul>
    +     * <li>HSQLDB</li>
    +     * <li>Oracle</li>
    +     * <li>Sybase SQL Anywhere</li>
    +     * </ul>
    +     */
    +    @Support({ HSQLDB, ORACLE, SYBASE })
    +    public static AggregateFunction<BigDecimal> median(Field<? extends Number> field) {
    +        return new Function<BigDecimal>("median", SQLDataType.NUMERIC, nullSafe(field));
    +    }
    +
    +    /**
    +     * Get the population standard deviation of a numeric field: stddev_pop(field)
    +     * <p>
    +     * This is known to be supported in any of these RDBMS:
    +     * <ul>
    +     * <li>DB2</li>
    +     * <li>H2</li>
    +     * <li>HSQLDB</li>
    +     * <li>Ingres</li>
    +     * <li>MySQL</li>
    +     * <li>Oracle</li>
    +     * <li>Postgres</li>
    +     * <li>SQL Server (stdev)</li>
    +     * <li>Sybase ASE</li>
    +     * <li>Sybase SQL Anywhere</li>
    +     * </ul>
    +     */
    +    @Support({ ASE, CUBRID, DB2, H2, HSQLDB, INGRES, MYSQL, ORACLE, POSTGRES, SQLSERVER, SYBASE })
    +    public static AggregateFunction<BigDecimal> stddevPop(Field<? extends Number> field) {
    +        return new Function<BigDecimal>(Term.STDDEV_POP, SQLDataType.NUMERIC, nullSafe(field));
    +    }
    +
    +    /**
    +     * Get the sample standard deviation of a numeric field: stddev_samp(field)
    +     * <p>
    +     * This is known to be supported in any of these RDBMS:
    +     * <ul>
    +     * <li>DB2</li>
    +     * <li>H2</li>
    +     * <li>HSQLDB</li>
    +     * <li>Ingres</li>
    +     * <li>MySQL</li>
    +     * <li>Oracle</li>
    +     * <li>Postgres</li>
    +     * <li>SQL Server (stdev)</li>
    +     * <li>Sybase ASE</li>
    +     * <li>Sybase SQL Anywhere</li>
    +     * </ul>
    +     */
    +    @Support({ ASE, CUBRID, DB2, H2, HSQLDB, INGRES, MYSQL, ORACLE, POSTGRES, SQLSERVER, SYBASE })
    +    public static AggregateFunction<BigDecimal> stddevSamp(Field<? extends Number> field) {
    +        return new Function<BigDecimal>(Term.STDDEV_SAMP, SQLDataType.NUMERIC, nullSafe(field));
    +    }
    +
    +    /**
    +     * Get the population variance of a numeric field: var_pop(field)
    +     * <p>
    +     * This is known to be supported in any of these RDBMS:
    +     * <ul>
    +     * <li>DB2</li>
    +     * <li>H2</li>
    +     * <li>HSQLDB</li>
    +     * <li>Ingres</li>
    +     * <li>MySQL</li>
    +     * <li>Oracle</li>
    +     * <li>Postgres</li>
    +     * <li>SQL Server (stdev)</li>
    +     * <li>Sybase ASE</li>
    +     * <li>Sybase SQL Anywhere</li>
    +     * </ul>
    +     */
    +    @Support({ ASE, CUBRID, DB2, H2, HSQLDB, INGRES, MYSQL, ORACLE, POSTGRES, SQLSERVER, SYBASE })
    +    public static AggregateFunction<BigDecimal> varPop(Field<? extends Number> field) {
    +        return new Function<BigDecimal>(Term.VAR_POP, SQLDataType.NUMERIC, nullSafe(field));
    +    }
    +
    +    /**
    +     * Get the sample variance of a numeric field: var_samp(field)
    +     * <p>
    +     * This is known to be supported in any of these RDBMS:
    +     * <ul>
    +     * <li>H2</li>
    +     * <li>HSQLDB</li>
    +     * <li>Ingres</li>
    +     * <li>MySQL</li>
    +     * <li>Oracle</li>
    +     * <li>Postgres</li>
    +     * <li>SQL Server (var)</li>
    +     * <li>Sybase SQL Anywhere</li>
    +     * </ul>
    +     */
    +    @Support({ ASE, CUBRID, DB2, H2, HSQLDB, INGRES, MYSQL, ORACLE, POSTGRES, SQLSERVER, SYBASE })
    +    public static AggregateFunction<BigDecimal> varSamp(Field<? extends Number> field) {
    +        return new Function<BigDecimal>(Term.VAR_SAMP, SQLDataType.NUMERIC, nullSafe(field));
    +    }
    +
    +    /**
    +     * Get the aggregated concatenation for a field.
    +     * <p>
    +     * This is natively supported by {@link SQLDialect#ORACLE}. It is simulated
    +     * by the following dialects:
    +     * <ul>
    +     * <li> {@link SQLDialect#CUBRID}: Using <code>GROUP_CONCAT()</code></li>
    +     * <li> {@link SQLDialect#DB2}: Using <code>XMLAGG()</code></li>
    +     * <li> {@link SQLDialect#H2}: Using <code>GROUP_CONCAT()</code></li>
    +     * <li> {@link SQLDialect#HSQLDB}: Using <code>GROUP_CONCAT()</code></li>
    +     * <li> {@link SQLDialect#MYSQL}: Using <code>GROUP_CONCAT()</code></li>
    +     * <li> {@link SQLDialect#POSTGRES}: Using <code>STRING_AGG()</code></li>
    +     * <li> {@link SQLDialect#SYBASE}: Using <code>LIST()</code></li>
    +     * </ul>
    +     *
    +     * @see #groupConcat(Field)
    +     */
    +    @Support({ CUBRID, DB2, H2, HSQLDB, MYSQL, ORACLE, POSTGRES, SYBASE })
    +    public static OrderedAggregateFunction<String> listAgg(Field<?> field) {
    +        return new Function<String>(Term.LIST_AGG, SQLDataType.VARCHAR, nullSafe(field));
    +    }
    +
    +    /**
    +     * Get the aggregated concatenation for a field.
    +     * <p>
    +     * This is natively supported by {@link SQLDialect#ORACLE}. It is simulated
    +     * by the following dialects:
    +     * <ul>
    +     * <li> {@link SQLDialect#CUBRID}: Using <code>GROUP_CONCAT</code></li>
    +     * <li> {@link SQLDialect#DB2}: Using <code>XMLAGG()</code></li>
    +     * <li> {@link SQLDialect#H2}: Using <code>GROUP_CONCAT</code></li>
    +     * <li> {@link SQLDialect#HSQLDB}: Using <code>GROUP_CONCAT</code></li>
    +     * <li> {@link SQLDialect#MYSQL}: Using <code>GROUP_CONCAT</code></li>
    +     * <li> {@link SQLDialect#POSTGRES}: Using <code>STRING_AGG()</code></li>
    +     * <li> {@link SQLDialect#SYBASE}: Using <code>LIST()</code></li>
    +     * </ul>
    +     *
    +     * @see #groupConcat(Field)
    +     */
    +    @Support({ CUBRID, DB2, H2, HSQLDB, MYSQL, ORACLE, POSTGRES, SYBASE })
    +    public static OrderedAggregateFunction<String> listAgg(Field<?> field, String separator) {
    +        Field<String> literal = literal("'" + separator.replace("'", "''") + "'");
    +        return new Function<String>(Term.LIST_AGG, SQLDataType.VARCHAR, nullSafe(field), literal);
    +    }
    +
    +    /**
    +     * Get the aggregated concatenation for a field.
    +     * <p>
    +     * This is natively supported by
    +     * <ul>
    +     * <li> {@link SQLDialect#CUBRID}</li>
    +     * <li> {@link SQLDialect#H2}</li>
    +     * <li> {@link SQLDialect#HSQLDB}</li>
    +     * <li> {@link SQLDialect#MYSQL}</li>
    +     * </ul>
    +     * <p>
    +     * It is simulated by the following dialects:
    +     * <ul>
    +     * <li> {@link SQLDialect#DB2}: Using <code>XMLAGG()</code></li>
    +     * <li> {@link SQLDialect#ORACLE}: Using <code>LISTAGG()</code></li>
    +     * <li> {@link SQLDialect#POSTGRES}: Using <code>STRING_AGG()</code></li>
    +     * <li> {@link SQLDialect#SYBASE}: Using <code>LIST()</code></li>
    +     * </ul>
    +     *
    +     * @see #listAgg(Field)
    +     */
    +    @Support({ CUBRID, DB2, H2, HSQLDB, MYSQL, ORACLE, POSTGRES, SYBASE })
    +    public static GroupConcatOrderByStep groupConcat(Field<?> field) {
    +        return new GroupConcat(nullSafe(field));
    +    }
    +
    +    /**
    +     * Get the aggregated concatenation for a field.
    +     * <p>
    +     * This is natively supported by
    +     * <ul>
    +     * <li> {@link SQLDialect#CUBRID}</li>
    +     * <li> {@link SQLDialect#H2}</li>
    +     * <li> {@link SQLDialect#HSQLDB}</li>
    +     * <li> {@link SQLDialect#MYSQL}</li>
    +     * </ul>
    +     * <p>
    +     * It is simulated by the following dialects:
    +     * <ul>
    +     * <li> {@link SQLDialect#SYBASE}: Using <code>LIST()</code></li>
    +     * <li> {@link SQLDialect#POSTGRES}: Using <code>STRING_AGG()</code></li>
    +     * </ul>
    +     *
    +     * @see #listAgg(Field)
    +     */
    +    @Support({ CUBRID, H2, HSQLDB, MYSQL, POSTGRES, SYBASE })
    +    public static GroupConcatOrderByStep groupConcatDistinct(Field<?> field) {
    +        return new GroupConcat(nullSafe(field), true);
    +    }
    +
    +    // -------------------------------------------------------------------------
    +    // XXX Window functions
    +    // -------------------------------------------------------------------------
    +
    +    /**
    +     * The <code>row_number() over ([analytic clause])</code> function.
    +     * <p>
    +     * Window functions are supported in DB2, Postgres, Oracle, SQL Server and
    +     * Sybase.
    +     */
    +    @Support({ DB2, POSTGRES, ORACLE, SQLSERVER, SYBASE })
    +    public static WindowOverStep<Integer> rowNumber() {
    +        return new Function<Integer>("row_number", SQLDataType.INTEGER);
    +    }
    +
    +    /**
    +     * The <code>rank_over() over ([analytic clause])</code> function.
    +     * <p>
    +     * Window functions are supported in DB2, Postgres, Oracle, SQL Server and
    +     * Sybase.
    +     */
    +    @Support({ DB2, POSTGRES, ORACLE, SQLSERVER, SYBASE })
    +    public static WindowOverStep<Integer> rank() {
    +        return new Function<Integer>("rank", SQLDataType.INTEGER);
    +    }
    +
    +    /**
    +     * The <code>dense_rank() over ([analytic clause])</code> function.
    +     * <p>
    +     * Window functions are supported in DB2, Postgres, Oracle, SQL Server and
    +     * Sybase.
    +     */
    +    @Support({ DB2, POSTGRES, ORACLE, SQLSERVER, SYBASE })
    +    public static WindowOverStep<Integer> denseRank() {
    +        return new Function<Integer>("dense_rank", SQLDataType.INTEGER);
    +    }
    +
    +    /**
    +     * The <code>precent_rank() over ([analytic clause])</code> function.
    +     * <p>
    +     * Window functions are supported in DB2, Postgres, Oracle, SQL Server and
    +     * Sybase.
    +     */
    +    @Support({ POSTGRES, ORACLE, SYBASE })
    +    public static WindowOverStep<BigDecimal> percentRank() {
    +        return new Function<BigDecimal>("percent_rank", SQLDataType.NUMERIC);
    +    }
    +
    +    /**
    +     * The <code>cume_dist() over ([analytic clause])</code> function.
    +     * <p>
    +     * Window functions are supported in DB2, Postgres, Oracle, SQL Server and
    +     * Sybase.
    +     */
    +    @Support({ POSTGRES, ORACLE, SYBASE })
    +    public static WindowOverStep<BigDecimal> cumeDist() {
    +        return new Function<BigDecimal>("cume_dist", SQLDataType.NUMERIC);
    +    }
    +
    +    /**
    +     * The <code>ntile([number]) over ([analytic clause])</code> function.
    +     * <p>
    +     * Window functions are supported in DB2, Postgres, Oracle, SQL Server and
    +     * Sybase.
    +     */
    +    @Support({ POSTGRES, ORACLE, SQLSERVER })
    +    public static WindowOverStep<Integer> ntile(int number) {
    +        return new Function<Integer>("ntile", SQLDataType.INTEGER, field("" + number, Integer.class));
    +    }
    +
    +    /**
    +     * The <code>first_value(field) over ([analytic clause])</code> function.
    +     * <p>
    +     * Window functions are supported in DB2, Postgres, Oracle, SQL Server and
    +     * Sybase.
    +     */
    +    @Support({ DB2, POSTGRES, ORACLE, SYBASE })
    +    public static <T> WindowIgnoreNullsStep<T> firstValue(Field<T> field) {
    +        return new Function<T>("first_value", nullSafeDataType(field), nullSafe(field));
    +    }
    +
    +    /**
    +     * The <code>last_value(field) over ([analytic clause])</code> function.
    +     * <p>
    +     * Window functions are supported in DB2, Postgres, Oracle, SQL Server and
    +     * Sybase.
    +     */
    +    @Support({ DB2, POSTGRES, ORACLE, SYBASE })
    +    public static <T> WindowIgnoreNullsStep<T> lastValue(Field<T> field) {
    +        return new Function<T>("last_value", nullSafeDataType(field), nullSafe(field));
    +    }
    +
    +    /**
    +     * The <code>lead(field) over ([analytic clause])</code> function.
    +     * <p>
    +     * Window functions are supported in DB2, Postgres, Oracle, SQL Server and
    +     * Sybase.
    +     */
    +    @Support({ DB2, POSTGRES, ORACLE })
    +    public static <T> WindowIgnoreNullsStep<T> lead(Field<T> field) {
    +        return new Function<T>("lead", nullSafeDataType(field), nullSafe(field));
    +    }
    +
    +    /**
    +     * The <code>lead(field, offset) over ([analytic clause])</code> function.
    +     * <p>
    +     * Window functions are supported in DB2, Postgres, Oracle, SQL Server and
    +     * Sybase.
    +     */
    +    @Support({ DB2, POSTGRES, ORACLE })
    +    public static <T> WindowIgnoreNullsStep<T> lead(Field<T> field, int offset) {
    +        return new Function<T>("lead", nullSafeDataType(field), nullSafe(field), literal(offset));
    +    }
    +
    +    /**
    +     * The
    +     * <code>lead(field, offset, defaultValue) over ([analytic clause])</code>
    +     * function.
    +     * <p>
    +     * Window functions are supported in DB2, Postgres, Oracle, SQL Server and
    +     * Sybase.
    +     */
    +    @Support({ DB2, POSTGRES, ORACLE })
    +    public static <T> WindowIgnoreNullsStep<T> lead(Field<T> field, int offset, T defaultValue) {
    +        return lead(nullSafe(field), offset, val(defaultValue));
    +    }
    +
    +    /**
    +     * The
    +     * <code>lead(field, offset, defaultValue) over ([analytic clause])</code>
    +     * function.
    +     * <p>
    +     * Window functions are supported in DB2, Postgres, Oracle, SQL Server and
    +     * Sybase.
    +     */
    +    @Support({ DB2, POSTGRES, ORACLE })
    +    public static <T> WindowIgnoreNullsStep<T> lead(Field<T> field, int offset, Field<T> defaultValue) {
    +        return new Function<T>("lead", nullSafeDataType(field), nullSafe(field), literal(offset), nullSafe(defaultValue));
    +    }
    +
    +    /**
    +     * The <code>lag(field) over ([analytic clause])</code> function.
    +     * <p>
    +     * Window functions are supported in DB2, Postgres, Oracle, SQL Server and
    +     * Sybase.
    +     */
    +    @Support({ DB2, POSTGRES, ORACLE })
    +    public static <T> WindowIgnoreNullsStep<T> lag(Field<T> field) {
    +        return new Function<T>("lag", nullSafeDataType(field), nullSafe(field));
    +    }
    +
    +    /**
    +     * The <code>lag(field, offset) over ([analytic clause])</code> function.
    +     * <p>
    +     * Window functions are supported in DB2, Postgres, Oracle, SQL Server and
    +     * Sybase.
    +     */
    +    @Support({ DB2, POSTGRES, ORACLE })
    +    public static <T> WindowIgnoreNullsStep<T> lag(Field<T> field, int offset) {
    +        return new Function<T>("lag", nullSafeDataType(field), nullSafe(field), literal(offset));
    +    }
    +
    +    /**
    +     * The
    +     * <code>lag(field, offset, defaultValue) over ([analytic clause])</code>
    +     * function.
    +     * <p>
    +     * Window functions are supported in DB2, Postgres, Oracle, SQL Server and
    +     * Sybase.
    +     */
    +    @Support({ DB2, POSTGRES, ORACLE })
    +    public static <T> WindowIgnoreNullsStep<T> lag(Field<T> field, int offset, T defaultValue) {
    +        return lag(nullSafe(field), offset, val(defaultValue));
    +    }
    +
    +    /**
    +     * The
    +     * <code>lag(field, offset, defaultValue) over ([analytic clause])</code>
    +     * function.
    +     * <p>
    +     * Window functions are supported in DB2, Postgres, Oracle, SQL Server and
    +     * Sybase.
    +     */
    +    @Support({ DB2, POSTGRES, ORACLE })
    +    public static <T> WindowIgnoreNullsStep<T> lag(Field<T> field, int offset, Field<T> defaultValue) {
    +        return new Function<T>("lag", nullSafeDataType(field), nullSafe(field), literal(offset), nullSafe(defaultValue));
    +    }
    +
    +    // -------------------------------------------------------------------------
    +    // XXX Bind values
    +    // -------------------------------------------------------------------------
    +
    +    /**
    +     * Create a named parameter with a generic type ({@link Object} /
    +     * {@link SQLDataType#OTHER}) and no initial value.
    +     * <p>
    +     * Try to avoid this method when using any of these databases, as these
    +     * databases may have trouble inferring the type of the bind value. Use
    +     * typed named parameters instead, using {@link #param(String, Class)} or
    +     * {@link #param(String, DataType)}
    +     * <ul>
    +     * <li> {@link SQLDialect#DB2}</li>
    +     * <li> {@link SQLDialect#DERBY}</li>
    +     * <li> {@link SQLDialect#H2}</li>
    +     * <li> {@link SQLDialect#HSQLDB}</li>
    +     * <li> {@link SQLDialect#INGRES}</li>
    +     * <li> {@link SQLDialect#SYBASE}</li>
    +     * </ul>
    +     *
    +     * @see #param(String, Object)
    +     */
    +    @Support
    +    public static Param<Object> param(String name) {
    +        return param(name, Object.class);
    +    }
    +
    +    /**
    +     * Create a named parameter with a defined type and no initial value.
    +     *
    +     * @see #param(String, Object)
    +     */
    +    @Support
    +    public static <T> Param<T> param(String name, Class<? extends T> type) {
    +        return param(name, SQLDataType.getDataType(null, type));
    +    }
    +
    +    /**
    +     * Create a named parameter with a defined type and no initial value.
    +     *
    +     * @see #param(String, Object)
    +     */
    +    @Support
    +    public static <T> Param<T> param(String name, DataType<T> type) {
    +        return new Val<T>(null, type, name);
    +    }
    +
    +    /**
    +     * Create a named parameter with an initial value.
    +     * <p>
    +     * Named parameters are useful for several use-cases:
    +     * <ul>
    +     * <li>They can be used with Spring's <code>JdbcTemplate</code>, which
    +     * supports named parameters. Use
    +     * {@link FactoryOperations#renderNamedParams(QueryPart)} to render
    +     * parameter names in SQL</li>
    +     * <li>Named parameters can be retrieved using a well-known name from
    +     * {@link Query#getParam(String)} and {@link Query#getParams()}.</li>
    +     * </ul>
    +     *
    +     * @see Query#getParam(String)
    +     * @see Query#getParams()
    +     * @see #renderNamedParams(QueryPart)
    +     */
    +    @Support
    +    public static <T> Param<T> param(String name, T value) {
    +        return new Val<T>(value, val(value).getDataType(), name);
    +    }
    +
    +    /**
    +     * A synonym for {@link #val(Object)} to be used in Scala and Groovy, where
    +     * <code>val</code> is a reserved keyword.
    +     *
    +     * @see #val(Object)
    +     */
    +    @Support
    +    public static <T> Field<T> value(T value) {
    +        return val(value);
    +    }
    +
    +    /**
    +     * A synonym for {@link #val(Object)} to be used in Scala and Groovy, where
    +     * <code>val</code> is a reserved keyword.
    +     *
    +     * @see #val(Object, Class)
    +     */
    +    @Support
    +    public static <T> Field<T> value(Object value, Class<? extends T> type) {
    +        return val(value, type);
    +    }
    +
    +    /**
    +     * A synonym for {@link #val(Object)} to be used in Scala and Groovy, where
    +     * <code>val</code> is a reserved keyword.
    +     *
    +     * @see #val(Object, Field)
    +     */
    +    @Support
    +    public static <T> Field<T> value(Object value, Field<T> field) {
    +        return val(value, field);
    +    }
    +
    +    /**
    +     * A synonym for {@link #val(Object)} to be used in Scala and Groovy, where
    +     * <code>val</code> is a reserved keyword.
    +     *
    +     * @see #val(Object, DataType)
    +     */
    +    @Support
    +    public static <T> Field<T> value(Object value, DataType<T> type) {
    +        return val(value, type);
    +    }
    +
    +    /**
    +     * Get a bind value
    +     * <p>
    +     * jOOQ tries to derive the RDBMS {@link DataType} from the provided Java
    +     * type <code>&lt;T&gt;</code>. This may not always be accurate, which can
    +     * lead to problems in some strongly typed RDMBS, especially when value is
    +     * <code>null</code>. These databases are namely:
    +     * <ul>
    +     * <li>{@link SQLDialect#DERBY}</li>
    +     * <li>{@link SQLDialect#DB2}</li>
    +     * <li>{@link SQLDialect#H2}</li>
    +     * <li>{@link SQLDialect#HSQLDB}</li>
    +     * <li>{@link SQLDialect#INGRES}</li>
    +     * <li>{@link SQLDialect#SYBASE}</li>
    +     * </ul>
    +     * <p>
    +     * If you need more type-safety, please use {@link #val(Object, DataType)}
    +     * instead, and provide the precise RDMBS-specific data type, that is
    +     * needed.
    +     *
    +     * @param <T> The generic value type
    +     * @param value The constant value
    +     * @return A field representing the constant value
    +     */
    +    @SuppressWarnings("unchecked")
    +    @Support
    +    public static <T> Field<T> val(T value) {
    +
    +        // Prevent errors due to type erasure and unchecked invocation
    +        if (value instanceof Field<?>) {
    +            return (Field<T>) value;
    +        }
    +
    +        // Default behaviour
    +        else {
    +            Class<?> type = (value == null) ? Object.class : value.getClass();
    +            return (Field<T>) val(value, getDataType(type));
    +        }
    +    }
    +
    +    /**
    +     * Get a bind value with an associated type, taken from a field
    +     *
    +     * @param <T> The generic value type
    +     * @param value The constant value
    +     * @param type The data type to enforce upon the value
    +     * @return A field representing the constant value
    +     * @see #val(Object, DataType)
    +     */
    +    @Support
    +    public static <T> Field<T> val(Object value, Class<? extends T> type) {
    +        return val(value, getDataType(type));
    +    }
    +
    +    /**
    +     * Get a bind value with an associated type, taken from a field
    +     *
    +     * @param <T> The generic value type
    +     * @param value The constant value
    +     * @param field The field whose data type to enforce upon the value
    +     * @return A field representing the constant value
    +     * @see #val(Object, DataType)
    +     */
    +    @Support
    +    public static <T> Field<T> val(Object value, Field<T> field) {
    +        return val(value, nullSafeDataType(field));
    +    }
    +
    +    /**
    +     * Get a bind value with an associated type
    +     * <p>
    +     * This will try to bind <code>value</code> as <code>type</code> in a
    +     * <code>PreparedStatement</code>. If <code>value</code> and
    +     * <code>type</code> are not compatible, jOOQ will first try to convert and
    +     * then to cast <code>value</code> to <code>type</code>.
    +     *
    +     * @param <T> The generic value type
    +     * @param value The constant value
    +     * @param type The data type to enforce upon the value
    +     * @return A field representing the constant value
    +     */
    +    @SuppressWarnings({ "unchecked", "rawtypes" })
    +    @Support
    +    public static <T> Field<T> val(Object value, DataType<T> type) {
    +
    +        // Prevent errors due to type erasure and unchecked invocation
    +        if (value instanceof Field<?>) {
    +            return (Field<T>) value;
    +        }
    +
    +        // Advanced data types have dedicated constant types
    +        else if (value instanceof UDTRecord) {
    +            return new UDTConstant((UDTRecord) value);
    +        }
    +        else if (value instanceof ArrayRecord) {
    +            return new ArrayConstant((ArrayRecord) value);
    +        }
    +
    +        // The default behaviour
    +        else {
    +            return new Val<T>(type.convert(value), type);
    +        }
    +    }
    +
    +    /**
    +     * Get a list of bind values and fields
    +     */
    +    @Support
    +    public static List<Field<?>> vals(Object... values) {
    +        FieldList result = new FieldList();
    +
    +        if (values != null) {
    +            for (Object value : values) {
    +
    +                // Fields can be mixed with constant values
    +                if (value instanceof Field<?>) {
    +                    result.add((Field<?>) value);
    +                }
    +                else {
    +                    result.add(val(value));
    +                }
    +            }
    +        }
    +
    +        return result;
    +    }
    +
    +    // -------------------------------------------------------------------------
    +    // XXX Literals
    +    // -------------------------------------------------------------------------
    +
    +    /**
    +     * Get a typed <code>Field</code> for a literal.
    +     * <p>
    +     * This is similar as calling {@link #field(String)}. A field
    +     * without bind variables will be generated.
    +     * <p>
    +     * <b>NOTE</b>: When inserting plain SQL into jOOQ objects, you must
    +     * guarantee syntax integrity. You may also create the possibility of
    +     * malicious SQL injection. Be sure to properly use bind variables and/or
    +     * escape literals when concatenated into SQL clauses!
    +     *
    +     * @param <T> The generic field type
    +     * @param literal The literal
    +     * @return The literal as a field
    +     */
    +    @SuppressWarnings("unchecked")
    +    @Support
    +    public static <T> Field<T> literal(T literal) {
    +        if (literal == null) {
    +            return (Field<T>) NULL();
    +        }
    +        else {
    +            return literal(literal, (Class<T>) literal.getClass());
    +        }
    +    }
    +
    +    /**
    +     * Get a typed <code>Field</code> for a literal.
    +     * <p>
    +     * This is similar as calling {@link #field(String)}. A field
    +     * without bind variables will be generated.
    +     * <p>
    +     * <b>NOTE</b>: When inserting plain SQL into jOOQ objects, you must
    +     * guarantee syntax integrity. You may also create the possibility of
    +     * malicious SQL injection. Be sure to properly use bind variables and/or
    +     * escape literals when concatenated into SQL clauses!
    +     *
    +     * @param <T> The generic field type
    +     * @param literal The literal
    +     * @param type The literal's data type
    +     * @return The literal as a field
    +     */
    +    @Support
    +    public static <T> Field<T> literal(Object literal, Class<T> type) {
    +        return literal(literal, getDataType(type));
    +    }
    +
    +    /**
    +     * Get a typed <code>Field</code> for a literal.
    +     * <p>
    +     * This is similar as calling {@link #field(String)}. A field
    +     * without bind variables will be generated.
    +     * <p>
    +     * <b>NOTE</b>: When inserting plain SQL into jOOQ objects, you must
    +     * guarantee syntax integrity. You may also create the possibility of
    +     * malicious SQL injection. Be sure to properly use bind variables and/or
    +     * escape literals when concatenated into SQL clauses!
    +     *
    +     * @param <T> The generic field type
    +     * @param literal The literal
    +     * @param type The literal's data type
    +     * @return The literal as a field
    +     */
    +    @SuppressWarnings("unchecked")
    +    @Support
    +    public static <T> Field<T> literal(Object literal, DataType<T> type) {
    +        if (literal == null) {
    +            return (Field<T>) NULL();
    +        }
    +        else {
    +            return field(literal.toString(), type);
    +        }
    +    }
    +
    +    /**
    +     * Get the null field
    +     */
    +    static Field<?> NULL() {
    +        return field("null");
    +    }
    +
    +    /**
    +     * Null-safety of a field
    +     */
    +    static <T> Field<T> nullSafe(Field<T> field) {
    +        return field == null ? val((T) null) : field;
    +    }
    +
    +    /**
    +     * Null-safety of a field
    +     */
    +    static Field<?>[] nullSafe(Field<?>... fields) {
    +        Field<?>[] result = new Field<?>[fields.length];
    +
    +        for (int i = 0; i < fields.length; i++) {
    +            result[i] = nullSafe(fields[i]);
    +        }
    +
    +        return result;
    +    }
    +
    +    /**
    +     * Get a default data type if a field is null
    +     */
    +    @SuppressWarnings("unchecked")
    +    static <T> DataType<T> nullSafeDataType(Field<T> field) {
    +        return (DataType<T>) (field == null ? SQLDataType.OTHER : field.getDataType());
    +    }
    +
    +    /**
    +     * A <code>0</code> literal.
    +     * <p>
    +     * This is useful for mathematical functions or for
    +     * <code>EXISTS (SELECT 0 ...)</code> or <code>PARTITION BY 0</code> clauses
    +     * and similar constructs. The <code>0</code> literal will not generate a
    +     * bind variable.
    +     *
    +     * @return A <code>0</code> literal as a <code>Field</code>
    +     */
    +    @Support
    +    public static Field<Integer> zero() {
    +        return literal(0);
    +    }
    +
    +    /**
    +     * A <code>1</code> literal.
    +     * <p>
    +     * This is useful for mathematical functions or for
    +     * <code>EXISTS (SELECT 1 ...)</code> or <code>PARTITION BY 1</code> clauses
    +     * and similar constructs. The <code>1</code> literal will not generate a
    +     * bind variable.
    +     *
    +     * @return A <code>1</code> literal as a <code>Field</code>
    +     */
    +    @Support
    +    public static Field<Integer> one() {
    +        return literal(1);
    +    }
    +
    +    /**
    +     * A <code>2</code> literal.
    +     * <p>
    +     * This is useful for mathematical functions. The <code>1</code> literal
    +     * will not generate a bind variable.
    +     *
    +     * @return A <code>2</code> literal as a <code>Field</code>
    +     */
    +    @Support
    +    public static Field<Integer> two() {
    +        return literal(2);
    +    }
    +
    +    /**
    +     * The <code>PI</code> literal.
    +     * <p>
    +     * This will be any of the following:
    +     * <ul>
    +     * <li>The underlying RDBMS' <code>PI</code> literal or <code>PI()</code> function</li>
    +     * <li>{@link Math#PI}</li>
    +     * </ul>
    +     */
    +    @Support
    +    public static Field<BigDecimal> pi() {
    +        return new Pi();
    +    }
    +
    +    /**
    +     * The <code>E</code> literal (Euler number)
    +     * <p>
    +     * This will be any of the following:
    +     * <ul>
    +     * <li>The underlying RDBMS' <code>E</code> literal or <code>E()</code> function</li>
    +     * <li>{@link Math#E}</li>
    +     * </ul>
    +     */
    +    @Support
    +    public static Field<BigDecimal> e() {
    +        return new Euler();
    +    }
    +
    +    // -------------------------------------------------------------------------
    +    // XXX other functions
    +    // -------------------------------------------------------------------------
    +
    +    /**
    +     * Get the current_user() function
    +     * <p>
    +     * This translates into any dialect
    +     */
    +    @Support({ ASE, CUBRID, DB2, DERBY, H2, HSQLDB, INGRES, MYSQL, ORACLE, POSTGRES, SQLSERVER, SYBASE })
    +    public static Field<String> currentUser() {
    +        return new CurrentUser();
    +    }
    +
    +    /**
    +     * Get the rand() function
    +     */
    +    @Support
    +    public static Field<BigDecimal> rand() {
    +        return new Rand();
    +    }
    +
    +    // -------------------------------------------------------------------------
    +    // XXX Fast querying
    +    // -------------------------------------------------------------------------
    +
    +    /**
    +     * {@inheritDoc}
    +     */
    +    @Override
    +    public final <R extends Record> Result<R> fetch(Table<R> table) {
    +        return fetch(table, trueCondition());
    +    }
    +
    +    /**
    +     * {@inheritDoc}
    +     */
    +    @Override
    +    public final <R extends Record> Result<R> fetch(Table<R> table, Condition condition) {
    +        return selectFrom(table).where(condition).fetch();
    +    }
    +
    +    /**
    +     * {@inheritDoc}
    +     */
    +    @Override
    +    public final <R extends Record> R fetchOne(Table<R> table) {
    +        return filterOne(fetch(table));
    +    }
    +
    +    /**
    +     * {@inheritDoc}
    +     */
    +    @Override
    +    public final <R extends Record> R fetchOne(Table<R> table, Condition condition) {
    +        return filterOne(fetch(table, condition));
    +    }
    +
    +    /**
    +     * {@inheritDoc}
    +     */
    +    @Override
    +    public final <R extends Record> R fetchAny(Table<R> table) {
    +        return filterOne(selectFrom(table).limit(1).fetch());
    +    }
    +
    +    /**
    +     * {@inheritDoc}
    +     */
    +    @Override
    +    public final <R extends TableRecord<R>> int executeInsert(Table<R> table, R record) {
    +        InsertQuery<R> insert = insertQuery(table);
    +        insert.setRecord(record);
    +        return insert.execute();
    +    }
    +
    +    /**
    +     * {@inheritDoc}
    +     */
    +    @Override
    +    public final <R extends TableRecord<R>> int executeUpdate(Table<R> table, R record) {
    +        return executeUpdate(table, record, trueCondition());
    +    }
    +
    +    /**
    +     * {@inheritDoc}
    +     */
    +    @Override
    +    public final <R extends TableRecord<R>, T> int executeUpdate(Table<R> table, R record, Condition condition) {
    +        UpdateQuery<R> update = updateQuery(table);
    +        update.addConditions(condition);
    +        update.setRecord(record);
    +        return update.execute();
    +    }
    +
    +    /**
    +     * {@inheritDoc}
    +     */
    +    @Override
    +    public final <R extends TableRecord<R>> int executeUpdateOne(Table<R> table, R record) {
    +        return filterUpdateOne(executeUpdate(table, record));
    +    }
    +
    +    /**
    +     * {@inheritDoc}
    +     */
    +    @Override
    +    public final <R extends TableRecord<R>, T> int executeUpdateOne(Table<R> table, R record, Condition condition) {
    +        return filterUpdateOne(executeUpdate(table, record, condition));
    +    }
    +
    +    /**
    +     * {@inheritDoc}
    +     */
    +    @Override
    +    public final <R extends TableRecord<R>> int executeDelete(Table<R> table) {
    +        return executeDelete(table, trueCondition());
    +    }
    +
    +    /**
    +     * {@inheritDoc}
    +     */
    +    @Override
    +    public final <R extends TableRecord<R>, T> int executeDelete(Table<R> table, Condition condition)
    +        {
    +        DeleteQuery<R> delete = deleteQuery(table);
    +        delete.addConditions(condition);
    +        return delete.execute();
    +    }
    +
    +    /**
    +     * {@inheritDoc}
    +     */
    +    @Override
    +    public final <R extends TableRecord<R>> int executeDeleteOne(Table<R> table) {
    +        return executeDeleteOne(table, trueCondition());
    +    }
    +
    +    /**
    +     * {@inheritDoc}
    +     */
    +    @Override
    +    public final <R extends TableRecord<R>, T> int executeDeleteOne(Table<R> table, Condition condition) {
    +        DeleteQuery<R> delete = deleteQuery(table);
    +        delete.addConditions(condition);
    +        return filterDeleteOne(delete.execute());
    +    }
    +
    +    /**
    +     * Get the default data type for the {@link Factory}'s underlying
    +     * {@link SQLDialect} and a given Java type.
    +     * <p>
    +     * This is a convenience method for calling
    +     * {@link FieldTypeHelper#getDataType(SQLDialect, Class)}
    +     *
    +     * @param <T> The generic type
    +     * @param type The Java type
    +     * @return The <code>Factory</code>'s underlying default data type.
    +     */
    +    @SuppressWarnings("deprecation")
    +    @Support
    +    public static <T> DataType<T> getDataType(Class<? extends T> type) {
    +        return FieldTypeHelper.getDataType(SQLDialect.SQL99, type);
    +    }
    +
    +    // -------------------------------------------------------------------------
    +    // XXX Static initialisation of dialect-specific data types
    +    // -------------------------------------------------------------------------
    +
    +    static {
    +        // Load all dialect-specific data types
    +        // TODO [#650] Make this more reliable using a data type registry
    +
    +        try {
    +            Class.forName(SQLDataType.class.getName());
    +        } catch (Exception ignore) {}
    +    }
    +
    +    // -------------------------------------------------------------------------
    +    // XXX Internals
    +    // -------------------------------------------------------------------------
    +
    +    private static int filterDeleteOne(int i) {
    +        return filterOne(i, "deleted");
    +    }
    +
    +    private static int filterUpdateOne(int i) {
    +        return filterOne(i, "updated");
    +    }
    +
    +    private static int filterOne(int i, String action) {
    +        if (i <= 1) {
    +            return i;
    +        }
    +        else {
    +            throw new InvalidResultException("Too many rows " + action + " : " + i);
    +        }
    +    }
    +
    +    private static <R extends Record> R filterOne(List<R> list) {
    +        if (filterOne(list.size(), "selected") == 1) {
    +            return list.get(0);
    +        }
    +
    +        return null;
    +    }
    +
    +    @Override
    +    public String toString() {
    +        StringWriter writer = new StringWriter();
    +        JAXB.marshal(settings, writer);
    +
    +        return "Factory [\n\tconnected=" + (connection != null) +
    +            ",\n\tdialect=" + dialect +
    +            ",\n\tdata=" + data +
    +            ",\n\tsettings=\n\t\t" + writer.toString().trim().replace("\n", "\n\t\t") +
    +            "\n]";
    +    }
    +
    +    static {
    +        for (SQLDialect dialect : SQLDialect.values()) {
    +            Factory.DEFAULT_INSTANCES[dialect.ordinal()] = new Factory(null, dialect);
    +        }
    +    }
    +
    +    /**
    +     * Get a default <code>Factory</code> without a {@link Connection}
    +     */
    +    final static Factory getNewFactory(SQLDialect dialect) {
    +        return getNewFactory(DEFAULT_INSTANCES[dialect.ordinal()]);
    +    }
    +
    +    /**
    +     * Get a default <code>Factory</code> without a {@link Connection}
    +     */
    +    final static Factory getStaticFactory(SQLDialect dialect) {
    +        return DEFAULT_INSTANCES[dialect.ordinal()];
    +    }
    +
    +    /**
    +     * Get a default <code>Factory</code> with a {@link Connection}
    +     */
    +    @SuppressWarnings("deprecation")
    +    final static Factory getNewFactory(Configuration configuration) {
    +        if (configuration == null) {
    +            return getNewFactory(DefaultConfiguration.DEFAULT_CONFIGURATION);
    +        }
    +        else {
    +            return new Factory(
    +                configuration.getConnection(),
    +                configuration.getDialect(),
    +                configuration.getSettings(),
    +                configuration.getSchemaMapping(),
    +                configuration.getData());
    +        }
    +    }
    +
    +    /**
    +     * Whether the supplied {@link Configuration} can be obtained with
    +     * {@link #getStaticFactory(SQLDialect)}
    +     */
    +    final static boolean isStaticFactory(Configuration configuration) {
    +        if (configuration == null) {
    +            return false;
    +        }
    +        else if (configuration instanceof DefaultConfiguration) {
    +            return true;
    +        }
    +        else {
    +            return getStaticFactory(configuration.getDialect()) == configuration;
    +        }
    +    }
    +
    +    // Serialisation magic.
    +
    +    private void writeObject(ObjectOutputStream out) throws IOException {
    +        out.defaultWriteObject();
    +    }
    +
    +    @SuppressWarnings("deprecation")
    +    private void readObject(ObjectInputStream in) throws IOException, ClassNotFoundException {
    +        in.defaultReadObject();
    +
    +        if (log.isDebugEnabled()) {
    +            log.debug("Deserialising", this);
    +        }
    +
    +        Configuration registered = org.jooq.ConfigurationRegistry.provideFor(this);
    +        if (registered != null) {
    +            connection = registered.getConnection();
    +        }
    +
    +        if (log.isDebugEnabled()) {
    +            log.debug("Deserialised", this);
    +        }
    +    }
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/impl/FalseCondition.java b/jOOQ/src/main/java/org/jooq/impl/FalseCondition.java
    new file mode 100644
    index 00000000000..812259426f3
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/impl/FalseCondition.java
    @@ -0,0 +1,67 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +
    +package org.jooq.impl;
    +
    +import java.util.Collections;
    +import java.util.List;
    +
    +import org.jooq.Attachable;
    +import org.jooq.BindContext;
    +import org.jooq.RenderContext;
    +
    +/**
    + * @author Lukas Eder
    + */
    +class FalseCondition extends AbstractCondition {
    +
    +    private static final long serialVersionUID = -3972466479081463547L;
    +
    +    @Override
    +    public void bind(BindContext context) {}
    +
    +    @Override
    +    public final void toSQL(RenderContext context) {
    +        context.sql("1 = 0");
    +    }
    +
    +    @Override
    +    public final List<Attachable> getAttachables() {
    +        return Collections.emptyList();
    +    }
    +
    +    FalseCondition() {}
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/impl/FieldAlias.java b/jOOQ/src/main/java/org/jooq/impl/FieldAlias.java
    new file mode 100644
    index 00000000000..c431a3b95e5
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/impl/FieldAlias.java
    @@ -0,0 +1,90 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +
    +package org.jooq.impl;
    +
    +import java.util.List;
    +
    +import org.jooq.Attachable;
    +import org.jooq.BindContext;
    +import org.jooq.Field;
    +import org.jooq.RenderContext;
    +
    +/**
    + * @author Lukas Eder
    + */
    +class FieldAlias<T> extends AbstractField<T> {
    +
    +    private static final long                 serialVersionUID = -85277321749681553L;
    +
    +    private final AliasProviderImpl<Field<T>> aliasProvider;
    +
    +    FieldAlias(Field<T> field, String alias) {
    +        super(alias, field.getDataType());
    +
    +        this.aliasProvider = new AliasProviderImpl<Field<T>>(field, alias, false);
    +    }
    +
    +    @Override
    +    public final List<Attachable> getAttachables() {
    +        return getAttachables(aliasProvider);
    +    }
    +
    +    @Override
    +    public final void toSQL(RenderContext context) {
    +        context.sql(aliasProvider);
    +    }
    +
    +    @Override
    +    public final void bind(BindContext context) {
    +        context.bind(aliasProvider);
    +    }
    +
    +    @Override
    +    public final Field<T> as(String alias) {
    +        return aliasProvider.as(alias);
    +    }
    +
    +    @Override
    +    public final boolean isNullLiteral() {
    +        return aliasProvider.getAliasProvider().isNullLiteral();
    +    }
    +
    +    @Override
    +    public final boolean declaresFields() {
    +        return true;
    +    }
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/impl/FieldList.java b/jOOQ/src/main/java/org/jooq/impl/FieldList.java
    new file mode 100644
    index 00000000000..f3255cad936
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/impl/FieldList.java
    @@ -0,0 +1,125 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +
    +package org.jooq.impl;
    +
    +import java.util.Collection;
    +import java.util.LinkedHashMap;
    +import java.util.List;
    +import java.util.Map;
    +
    +import org.jooq.Field;
    +import org.jooq.FieldProvider;
    +
    +/**
    + * @author Lukas Eder
    + */
    +class FieldList extends NamedQueryPartList<Field<?>> implements FieldProvider {
    +
    +    private static final long                serialVersionUID = -6911012275707591576L;
    +
    +    private transient Map<Field<?>, Integer> indexes;
    +
    +    FieldList() {
    +        super();
    +    }
    +
    +    FieldList(Collection<? extends Field<?>> wrappedList) {
    +        super(wrappedList);
    +    }
    +
    +    FieldList(Field<?>... wrappedList) {
    +        super(wrappedList);
    +    }
    +
    +    @SuppressWarnings("unchecked")
    +    @Override
    +    public final <T> Field<T> getField(Field<T> field) {
    +        if (field == null) {
    +            return null;
    +        }
    +
    +        return (Field<T>) getField(field.getName());
    +    }
    +
    +    @Override
    +    public final Field<?> getField(String name) {
    +        for (Field<?> f : this) {
    +            if (f.getName().equals(name)) {
    +                return f;
    +            }
    +        }
    +
    +        return null;
    +    }
    +
    +    @Override
    +    public final Field<?> getField(int index) {
    +        if (index >= 0 && index < size()) {
    +            return get(index);
    +        }
    +
    +        return null;
    +    }
    +
    +    @Override
    +    public final List<Field<?>> getFields() {
    +        return this;
    +    }
    +
    +    @Override
    +    public final int getIndex(Field<?> field) throws IllegalArgumentException {
    +        if (indexes == null) {
    +            indexes = new LinkedHashMap<Field<?>, Integer>();
    +
    +            for (int i = 0; i < size(); i++) {
    +                indexes.put(get(i), i);
    +            }
    +        }
    +
    +        // Return the field's index itself, if it is contained
    +        if (indexes.containsKey(field)) {
    +            return indexes.get(field);
    +        }
    +
    +        // Check if the field is an alias of a contained field
    +        if (indexes.containsKey(getField(field))) {
    +            return indexes.get(getField(field));
    +        }
    +
    +        throw new IllegalArgumentException("Field " + field + " is not contained in list");
    +    }
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/impl/FieldMapForInsert.java b/jOOQ/src/main/java/org/jooq/impl/FieldMapForInsert.java
    new file mode 100644
    index 00000000000..e5727a5a2f7
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/impl/FieldMapForInsert.java
    @@ -0,0 +1,157 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq.impl;
    +
    +import static org.jooq.impl.Factory.val;
    +
    +import java.util.Collection;
    +import java.util.Iterator;
    +import java.util.Map;
    +
    +import org.jooq.BindContext;
    +import org.jooq.Field;
    +import org.jooq.RenderContext;
    +
    +/**
    + * @author Lukas Eder
    + */
    +class FieldMapForInsert extends AbstractQueryPartMap<Field<?>, Field<?>> {
    +
    +    /**
    +     * Generated UID
    +     */
    +    private static final long serialVersionUID = -2192833491610583485L;
    +
    +    FieldMapForInsert() {
    +    }
    +
    +    @Override
    +    public final void toSQL(RenderContext context) {
    +        toSQLReferenceKeys(context);
    +        context.formatSeparator()
    +               .keyword("values ");
    +        toSQLReferenceValues(context);
    +    }
    +
    +    final void toSQLReferenceKeys(RenderContext context) {
    +        boolean indent = (size() > 1);
    +
    +        context.sql("(");
    +
    +        if (indent) {
    +            context.formatIndentStart();
    +        }
    +
    +        String separator = "";
    +        for (Field<?> field : keySet()) {
    +            context.sql(separator);
    +
    +            if (indent) {
    +                context.formatNewLine();
    +            }
    +
    +            context.literal(field.getName());
    +            separator = ", ";
    +        }
    +
    +        if (indent) {
    +            context.formatIndentEnd()
    +                   .formatNewLine();
    +        }
    +
    +        context.sql(")");
    +    }
    +
    +    final void toSQLReferenceValues(RenderContext context) {
    +        boolean indent = (size() > 1);
    +
    +        context.sql("(");
    +
    +        if (indent) {
    +            context.formatIndentStart();
    +        }
    +
    +        String separator = "";
    +        for (Field<?> field : values()) {
    +            context.sql(separator);
    +
    +            if (indent) {
    +                context.formatNewLine();
    +            }
    +
    +            context.sql(field);
    +            separator = ", ";
    +        }
    +
    +        if (indent) {
    +            context.formatIndentEnd()
    +                   .formatNewLine();
    +        }
    +
    +        context.sql(")");
    +    }
    +
    +    @Override
    +    public final void bind(BindContext context) {
    +        context.bind(keySet()).bind(values());
    +    }
    +
    +    final void putFields(Collection<? extends Field<?>> fields) {
    +        for (Field<?> field : fields) {
    +            put(field, null);
    +        }
    +    }
    +
    +    final void putValues(Collection<? extends Field<?>> values) {
    +        if (values.size() != size()) {
    +            throw new IllegalArgumentException("The number of values must match the number of fields: " + this);
    +        }
    +
    +        Iterator<? extends Field<?>> it = values.iterator();
    +        for (Entry<Field<?>, Field<?>> entry : entrySet()) {
    +            entry.setValue(it.next());
    +        }
    +    }
    +
    +    final void set(Map<? extends Field<?>, ?> map) {
    +        for (Entry<? extends Field<?>, ?> entry : map.entrySet()) {
    +            Field<?> field = entry.getKey();
    +            Object value = entry.getValue();
    +
    +            put(entry.getKey(), val(value, field));
    +        }
    +    }
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/impl/FieldMapForUpdate.java b/jOOQ/src/main/java/org/jooq/impl/FieldMapForUpdate.java
    new file mode 100644
    index 00000000000..9689ff62a92
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/impl/FieldMapForUpdate.java
    @@ -0,0 +1,99 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq.impl;
    +
    +import static org.jooq.impl.Factory.val;
    +
    +import java.util.Map;
    +
    +import org.jooq.BindContext;
    +import org.jooq.Field;
    +import org.jooq.RenderContext;
    +
    +/**
    + * @author Lukas Eder
    + */
    +class FieldMapForUpdate extends AbstractQueryPartMap<Field<?>, Field<?>> {
    +
    +    /**
    +     * Generated UID
    +     */
    +    private static final long serialVersionUID = -6139709404698673799L;
    +
    +    FieldMapForUpdate() {
    +    }
    +
    +    @Override
    +    public final void toSQL(RenderContext context) {
    +        if (size() > 0) {
    +            String separator = "";
    +
    +            for (Entry<Field<?>, Field<?>> entry : entrySet()) {
    +                context.sql(separator);
    +
    +                if (!"".equals(separator)) {
    +                    context.formatNewLine();
    +                }
    +
    +                context.literal(entry.getKey().getName())
    +                       .sql(" = ")
    +                       .sql(entry.getValue());
    +
    +                separator = ", ";
    +            }
    +        }
    +        else {
    +            context.sql("[ no fields are updated ]");
    +        }
    +    }
    +
    +    @Override
    +    public final void bind(BindContext context) {
    +        for (Entry<Field<?>, Field<?>> entry : entrySet()) {
    +            context.bind(entry.getKey());
    +            context.bind(entry.getValue());
    +        }
    +    }
    +
    +    final void set(Map<? extends Field<?>, ?> map) {
    +        for (Entry<? extends Field<?>, ?> entry : map.entrySet()) {
    +            Field<?> field = entry.getKey();
    +            Object value = entry.getValue();
    +
    +            put(entry.getKey(), val(value, field));
    +        }
    +    }
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/impl/FieldMapsForInsert.java b/jOOQ/src/main/java/org/jooq/impl/FieldMapsForInsert.java
    new file mode 100644
    index 00000000000..b99e77c39e0
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/impl/FieldMapsForInsert.java
    @@ -0,0 +1,168 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq.impl;
    +
    +import java.util.ArrayList;
    +import java.util.List;
    +
    +import org.jooq.Attachable;
    +import org.jooq.BindContext;
    +import org.jooq.Record;
    +import org.jooq.RenderContext;
    +import org.jooq.Select;
    +
    +/**
    + * @author Lukas Eder
    + */
    +class FieldMapsForInsert extends AbstractQueryPart {
    +
    +    /**
    +     * Generated UID
    +     */
    +    private static final long serialVersionUID = -6227074228534414225L;
    +
    +    private final List<FieldMapForInsert> insertMaps;
    +
    +    FieldMapsForInsert() {
    +        insertMaps = new ArrayList<FieldMapForInsert>();
    +        insertMaps.add(null);
    +    }
    +
    +    // -------------------------------------------------------------------------
    +    // The QueryPart API
    +    // -------------------------------------------------------------------------
    +
    +    @Override
    +    public final List<Attachable> getAttachables() {
    +        return getAttachables(insertMaps);
    +    }
    +
    +    @Override
    +    public final void toSQL(RenderContext context) {
    +        if (!isExecutable()) {
    +            context.sql("[ no fields are inserted ]");
    +        }
    +
    +        // Single record inserts can use the standard syntax in any dialect
    +        else if (insertMaps.size() == 1 || insertMaps.get(1) == null) {
    +            context.sql(insertMaps.get(0));
    +        }
    +
    +        // True SQL92 multi-record inserts aren't always supported
    +        else {
    +            switch (context.getDialect()) {
    +
    +                // Some dialects don't support multi-record inserts
    +                case ASE:
    +                case INGRES:
    +                case ORACLE:
    +                case SQLITE:
    +                    toSQLInsertSelect(context);
    +                    break;
    +
    +                default:
    +                    toSQL92Values(context);
    +                    break;
    +            }
    +        }
    +    }
    +
    +    private void toSQLInsertSelect(RenderContext context) {
    +        insertMaps.get(0).toSQLReferenceKeys(context);
    +        context.sql(" ");
    +
    +        Select<Record> select = null;
    +        for (FieldMapForInsert map : insertMaps) {
    +            if (map != null) {
    +                Select<Record> iteration = create().select(map.values());
    +
    +                if (select == null) {
    +                    select = iteration;
    +                }
    +                else {
    +                    select = select.unionAll(iteration);
    +                }
    +            }
    +        }
    +
    +        context.sql(select);
    +    }
    +
    +    private void toSQL92Values(RenderContext context) {
    +        context.sql(insertMaps.get(0));
    +
    +        int i = 0;
    +        for (FieldMapForInsert map : insertMaps) {
    +            if (map != null && i > 0) {
    +                context.sql(", ");
    +                map.toSQLReferenceValues(context);
    +            }
    +
    +            i++;
    +        }
    +    }
    +
    +    @Override
    +    public final void bind(BindContext context) {
    +        context.bind(insertMaps);
    +    }
    +
    +    // -------------------------------------------------------------------------
    +    // The FieldMapsForInsert API
    +    // -------------------------------------------------------------------------
    +
    +    final boolean isExecutable() {
    +        return !insertMaps.isEmpty() && insertMaps.get(0) != null;
    +    }
    +
    +    public final FieldMapForInsert getMap() {
    +        if (insertMaps.get(index()) == null) {
    +            insertMaps.set(index(), new FieldMapForInsert());
    +        }
    +
    +        return insertMaps.get(index());
    +    }
    +
    +    public final void newRecord() {
    +        if (insertMaps.get(index()) != null) {
    +            insertMaps.add(null);
    +        }
    +    }
    +
    +    private final int index() {
    +        return insertMaps.size() - 1;
    +    }
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/impl/FieldTypeHelper.java b/jOOQ/src/main/java/org/jooq/impl/FieldTypeHelper.java
    new file mode 100644
    index 00000000000..1ba886ea229
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/impl/FieldTypeHelper.java
    @@ -0,0 +1,1143 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +
    +package org.jooq.impl;
    +
    +import static org.jooq.SQLDialect.CUBRID;
    +import static org.jooq.SQLDialect.POSTGRES;
    +import static org.jooq.impl.Factory.getNewFactory;
    +
    +import java.math.BigDecimal;
    +import java.math.BigInteger;
    +import java.sql.Array;
    +import java.sql.Blob;
    +import java.sql.CallableStatement;
    +import java.sql.Clob;
    +import java.sql.Date;
    +import java.sql.ResultSet;
    +import java.sql.SQLException;
    +import java.sql.SQLInput;
    +import java.sql.SQLOutput;
    +import java.sql.Time;
    +import java.sql.Timestamp;
    +import java.sql.Types;
    +import java.text.ParseException;
    +import java.text.SimpleDateFormat;
    +import java.util.ArrayList;
    +import java.util.Calendar;
    +import java.util.List;
    +import java.util.Map;
    +
    +import org.jooq.ArrayRecord;
    +import org.jooq.Configuration;
    +import org.jooq.Converter;
    +import org.jooq.DataType;
    +import org.jooq.EnumType;
    +import org.jooq.ExecuteContext;
    +import org.jooq.Field;
    +import org.jooq.MasterDataType;
    +import org.jooq.Result;
    +import org.jooq.SQLDialect;
    +import org.jooq.UDTRecord;
    +import org.jooq.exception.SQLDialectNotSupportedException;
    +import org.jooq.tools.Convert;
    +import org.jooq.tools.JooqLogger;
    +import org.jooq.tools.unsigned.UByte;
    +import org.jooq.tools.unsigned.UInteger;
    +import org.jooq.tools.unsigned.ULong;
    +import org.jooq.tools.unsigned.UNumber;
    +import org.jooq.tools.unsigned.UShort;
    +import org.jooq.types.DayToSecond;
    +import org.jooq.types.YearToMonth;
    +import org.jooq.util.ase.ASEDataType;
    +import org.jooq.util.cubrid.CUBRIDDataType;
    +import org.jooq.util.db2.DB2DataType;
    +import org.jooq.util.derby.DerbyDataType;
    +import org.jooq.util.h2.H2DataType;
    +import org.jooq.util.hsqldb.HSQLDBDataType;
    +import org.jooq.util.ingres.IngresDataType;
    +import org.jooq.util.mysql.MySQLDataType;
    +import org.jooq.util.oracle.OracleDataType;
    +import org.jooq.util.postgres.PGIntervalConverter;
    +import org.jooq.util.postgres.PGobjectParser;
    +import org.jooq.util.postgres.PostgresDataType;
    +import org.jooq.util.sqlite.SQLiteDataType;
    +import org.jooq.util.sqlserver.SQLServerDataType;
    +import org.jooq.util.sybase.SybaseDataType;
    +
    +/**
    + * Utility methods related to the treatment of fields and their types
    + * <p>
    + * This class is for JOOQ INTERNAL USE only. Do not reference directly
    + *
    + * @author Lukas Eder
    + */
    +public final class FieldTypeHelper {
    +
    +    private static final int        LONG_PRECISION    = String.valueOf(Long.MAX_VALUE).length();
    +    private static final int        INTEGER_PRECISION = String.valueOf(Integer.MAX_VALUE).length();
    +    private static final int        SHORT_PRECISION   = String.valueOf(Short.MAX_VALUE).length();
    +    private static final int        BYTE_PRECISION    = String.valueOf(Byte.MAX_VALUE).length();
    +
    +    private static final JooqLogger log               = JooqLogger.getLogger(FieldTypeHelper.class);
    +
    +    @SuppressWarnings("unchecked")
    +    public static <T> T getFromSQLInput(Configuration configuration, SQLInput stream, Field<T> field) throws SQLException {
    +        Class<? extends T> type = field.getType();
    +
    +        if (type == Blob.class) {
    +            return (T) stream.readBlob();
    +        }
    +        else if (type == Boolean.class) {
    +            return (T) checkWasNull(stream, Boolean.valueOf(stream.readBoolean()));
    +        }
    +        else if (type == BigInteger.class) {
    +            BigDecimal result = stream.readBigDecimal();
    +            return (T) (result == null ? null : result.toBigInteger());
    +        }
    +        else if (type == BigDecimal.class) {
    +            return (T) stream.readBigDecimal();
    +        }
    +        else if (type == Byte.class) {
    +            return (T) checkWasNull(stream, Byte.valueOf(stream.readByte()));
    +        }
    +        else if (type == byte[].class) {
    +            return (T) stream.readBytes();
    +        }
    +        else if (type == Clob.class) {
    +            return (T) stream.readClob();
    +        }
    +        else if (type == Date.class) {
    +            return (T) stream.readDate();
    +        }
    +        else if (type == Double.class) {
    +            return (T) checkWasNull(stream, Double.valueOf(stream.readDouble()));
    +        }
    +        else if (type == Float.class) {
    +            return (T) checkWasNull(stream, Float.valueOf(stream.readFloat()));
    +        }
    +        else if (type == Integer.class) {
    +            return (T) checkWasNull(stream, Integer.valueOf(stream.readInt()));
    +        }
    +        else if (type == Long.class) {
    +            return (T) checkWasNull(stream, Long.valueOf(stream.readLong()));
    +        }
    +        else if (type == Short.class) {
    +            return (T) checkWasNull(stream, Short.valueOf(stream.readShort()));
    +        }
    +        else if (type == String.class) {
    +            return (T) stream.readString();
    +        }
    +        else if (type == Time.class) {
    +            return (T) stream.readTime();
    +        }
    +        else if (type == Timestamp.class) {
    +            return (T) stream.readTimestamp();
    +        }
    +        else if (type == YearToMonth.class) {
    +            String string = stream.readString();
    +            return (T) (string == null ? null : YearToMonth.valueOf(string));
    +        }
    +        else if (type == DayToSecond.class) {
    +            String string = stream.readString();
    +            return (T) (string == null ? null : DayToSecond.valueOf(string));
    +        }
    +        else if (type == UByte.class) {
    +            String string = stream.readString();
    +            return (T) (string == null ? null : new UByte(string));
    +        }
    +        else if (type == UShort.class) {
    +            String string = stream.readString();
    +            return (T) (string == null ? null : new UShort(string));
    +        }
    +        else if (type == UInteger.class) {
    +            String string = stream.readString();
    +            return (T) (string == null ? null : new UInteger(string));
    +        }
    +        else if (type == ULong.class) {
    +            String string = stream.readString();
    +            return (T) (string == null ? null : new ULong(string));
    +        }
    +
    +        // The type byte[] is handled earlier. byte[][] can be handled here
    +        else if (type.isArray()) {
    +            Array result = stream.readArray();
    +            return (T) (result == null ? null : result.getArray());
    +        }
    +        else if (ArrayRecord.class.isAssignableFrom(type)) {
    +            return (T) getArrayRecord(configuration, stream.readArray(), (Class<? extends ArrayRecord<?>>) type);
    +        }
    +        else if (EnumType.class.isAssignableFrom(type)) {
    +            return getEnumType(type, stream.readString());
    +        }
    +        else if (MasterDataType.class.isAssignableFrom(type)) {
    +            return (T) getMasterDataType(type, stream.readObject());
    +        }
    +        else if (UDTRecord.class.isAssignableFrom(type)) {
    +            return (T) stream.readObject();
    +        }
    +        else {
    +            return (T) stream.readObject();
    +        }
    +    }
    +
    +    public static <T> void writeToSQLOutput(SQLOutput stream, Field<T> field, T value) throws SQLException {
    +        Class<? extends T> type = field.getType();
    +
    +        writeToSQLOutput(stream, type, value);
    +    }
    +
    +    public static <T> void writeToSQLOutput(SQLOutput stream, Class<? extends T> type, T value) throws SQLException {
    +        if (value == null) {
    +            stream.writeObject(null);
    +        }
    +        else if (type == Blob.class) {
    +            stream.writeBlob((Blob) value);
    +        }
    +        else if (type == Boolean.class) {
    +            stream.writeBoolean((Boolean) value);
    +        }
    +        else if (type == BigInteger.class) {
    +            stream.writeBigDecimal(new BigDecimal((BigInteger) value));
    +        }
    +        else if (type == BigDecimal.class) {
    +            stream.writeBigDecimal((BigDecimal) value);
    +        }
    +        else if (type == Byte.class) {
    +            stream.writeByte((Byte) value);
    +        }
    +        else if (type == byte[].class) {
    +            stream.writeBytes((byte[]) value);
    +        }
    +        else if (type == Clob.class) {
    +            stream.writeClob((Clob) value);
    +        }
    +        else if (type == Date.class) {
    +            stream.writeDate((Date) value);
    +        }
    +        else if (type == Double.class) {
    +            stream.writeDouble((Double) value);
    +        }
    +        else if (type == Float.class) {
    +            stream.writeFloat((Float) value);
    +        }
    +        else if (type == Integer.class) {
    +            stream.writeInt((Integer) value);
    +        }
    +        else if (type == Long.class) {
    +            stream.writeLong((Long) value);
    +        }
    +        else if (type == Short.class) {
    +            stream.writeShort((Short) value);
    +        }
    +        else if (type == String.class) {
    +            stream.writeString((String) value);
    +        }
    +        else if (type == Time.class) {
    +            stream.writeTime((Time) value);
    +        }
    +        else if (type == Timestamp.class) {
    +            stream.writeTimestamp((Timestamp) value);
    +        }
    +        else if (type == YearToMonth.class) {
    +            stream.writeString(value.toString());
    +        }
    +        else if (type == DayToSecond.class) {
    +            stream.writeString(value.toString());
    +        }
    +//        else if (type.isArray()) {
    +//            stream.writeArray(value);
    +//        }
    +        else if (UNumber.class.isAssignableFrom(type)) {
    +            stream.writeString(value.toString());
    +        }
    +        else if (ArrayRecord.class.isAssignableFrom(type)) {
    +            stream.writeArray(((ArrayRecord<?>) value).createArray());
    +        }
    +        else if (EnumType.class.isAssignableFrom(type)) {
    +            stream.writeString(((EnumType) value).getLiteral());
    +        }
    +        else if (MasterDataType.class.isAssignableFrom(type)) {
    +            Object key = ((MasterDataType<?>) value).getPrimaryKey();
    +            writeToSQLOutput(stream, key.getClass(), key);
    +        }
    +        else if (UDTRecord.class.isAssignableFrom(type)) {
    +            stream.writeObject((UDTRecord<?>) value);
    +        }
    +        else {
    +            throw new UnsupportedOperationException("Type " + type + " is not supported");
    +        }
    +    }
    +
    +
    +    static <T, U> U getFromResultSet(ExecuteContext ctx, Field<U> field, int index)
    +        throws SQLException {
    +
    +        @SuppressWarnings("unchecked")
    +        Converter<T, U> converter = (Converter<T, U>) DataTypes.converter(field.getType());
    +
    +        if (converter != null) {
    +            return converter.from(getFromResultSet(ctx, converter.fromType(), index));
    +        }
    +        else {
    +            return getFromResultSet(ctx, field.getType(), index);
    +        }
    +    }
    +
    +    @SuppressWarnings("unchecked")
    +    private static <T> T getFromResultSet(ExecuteContext ctx, Class<? extends T> type, int index)
    +        throws SQLException {
    +
    +        ResultSet rs = ctx.resultSet();
    +
    +        if (type == Blob.class) {
    +            return (T) rs.getBlob(index);
    +        }
    +        else if (type == Boolean.class) {
    +            return (T) checkWasNull(rs, Boolean.valueOf(rs.getBoolean(index)));
    +        }
    +        else if (type == BigInteger.class) {
    +        	// The SQLite JDBC driver doesn't support BigDecimals
    +            if (ctx.getDialect() == SQLDialect.SQLITE) {
    +                return Convert.convert(rs.getString(index), (Class<? extends T>) BigInteger.class);
    +            }
    +            else {
    +                BigDecimal result = rs.getBigDecimal(index);
    +                return (T) (result == null ? null : result.toBigInteger());
    +            }
    +        }
    +        else if (type == BigDecimal.class) {
    +            // The SQLite JDBC driver doesn't support BigDecimals
    +            if (ctx.getDialect() == SQLDialect.SQLITE) {
    +                return Convert.convert(rs.getString(index), (Class<? extends T>) BigDecimal.class);
    +            }
    +            else {
    +                return (T) rs.getBigDecimal(index);
    +            }
    +        }
    +        else if (type == Byte.class) {
    +            return (T) checkWasNull(rs, Byte.valueOf(rs.getByte(index)));
    +        }
    +        else if (type == byte[].class) {
    +            return (T) rs.getBytes(index);
    +        }
    +        else if (type == Clob.class) {
    +            return (T) rs.getClob(index);
    +        }
    +        else if (type == Date.class) {
    +            return (T) getDate(ctx.getDialect(), rs, index);
    +        }
    +        else if (type == Double.class) {
    +            return (T) checkWasNull(rs, Double.valueOf(rs.getDouble(index)));
    +        }
    +        else if (type == Float.class) {
    +            return (T) checkWasNull(rs, Float.valueOf(rs.getFloat(index)));
    +        }
    +        else if (type == Integer.class) {
    +            return (T) checkWasNull(rs, Integer.valueOf(rs.getInt(index)));
    +        }
    +        else if (type == Long.class) {
    +            return (T) checkWasNull(rs, Long.valueOf(rs.getLong(index)));
    +        }
    +        else if (type == Short.class) {
    +            return (T) checkWasNull(rs, Short.valueOf(rs.getShort(index)));
    +        }
    +        else if (type == String.class) {
    +            return (T) rs.getString(index);
    +        }
    +        else if (type == Time.class) {
    +            return (T) getTime(ctx.getDialect(), rs, index);
    +        }
    +        else if (type == Timestamp.class) {
    +            return (T) getTimestamp(ctx.getDialect(), rs, index);
    +        }
    +        else if (type == YearToMonth.class) {
    +            if (ctx.getDialect() == POSTGRES) {
    +                Object object = rs.getObject(index);
    +                return (T) (object == null ? null : PGIntervalConverter.toYearToMonth(object));
    +            }
    +            else {
    +                String string = rs.getString(index);
    +                return (T) (string == null ? null : YearToMonth.valueOf(string));
    +            }
    +        }
    +        else if (type == DayToSecond.class) {
    +            if (ctx.getDialect() == POSTGRES) {
    +                Object object = rs.getObject(index);
    +                return (T) (object == null ? null : PGIntervalConverter.toDayToSecond(object));
    +            }
    +            else {
    +                String string = rs.getString(index);
    +                return (T) (string == null ? null : DayToSecond.valueOf(string));
    +            }
    +        }
    +        else if (type == UByte.class) {
    +            String string = rs.getString(index);
    +            return (T) (string == null ? null : new UByte(string));
    +        }
    +        else if (type == UShort.class) {
    +            String string = rs.getString(index);
    +            return (T) (string == null ? null : new UShort(string));
    +        }
    +        else if (type == UInteger.class) {
    +            String string = rs.getString(index);
    +            return (T) (string == null ? null : new UInteger(string));
    +        }
    +        else if (type == ULong.class) {
    +            String string = rs.getString(index);
    +            return (T) (string == null ? null : new ULong(string));
    +        }
    +
    +        // The type byte[] is handled earlier. byte[][] can be handled here
    +        else if (type.isArray()) {
    +            switch (ctx.getDialect()) {
    +                case POSTGRES: {
    +                    return pgGetArray(ctx, type, index);
    +                }
    +
    +                default:
    +                    // Note: due to a HSQLDB bug, it is not recommended to call rs.getObject() here:
    +                    // See https://sourceforge.net/tracker/?func=detail&aid=3181365&group_id=23316&atid=378131
    +                    return (T) convertArray(rs.getArray(index), (Class<? extends Object[]>) type);
    +            }
    +        }
    +        else if (ArrayRecord.class.isAssignableFrom(type)) {
    +            return (T) getArrayRecord(ctx, rs.getArray(index), (Class<? extends ArrayRecord<?>>) type);
    +        }
    +        else if (EnumType.class.isAssignableFrom(type)) {
    +            return getEnumType(type, rs.getString(index));
    +        }
    +        else if (MasterDataType.class.isAssignableFrom(type)) {
    +            return (T) getMasterDataType(type, rs.getObject(index));
    +        }
    +        else if (UDTRecord.class.isAssignableFrom(type)) {
    +            switch (ctx.getDialect()) {
    +                case POSTGRES:
    +                    return (T) pgNewUDTRecord(type, rs.getObject(index));
    +            }
    +
    +            return (T) rs.getObject(index, getTypeMapping(type));
    +        }
    +        else if (Result.class.isAssignableFrom(type)) {
    +            ResultSet nested = (ResultSet) rs.getObject(index);
    +            return (T) getNewFactory(ctx).fetch(nested);
    +        }
    +        else {
    +            return (T) rs.getObject(index);
    +        }
    +    }
    +
    +    private static ArrayRecord<?> getArrayRecord(Configuration configuration, Array array, Class<? extends ArrayRecord<?>> type)
    +        throws SQLException {
    +
    +        if (array == null) {
    +            return null;
    +        }
    +        else {
    +            // TODO: [#523] Use array record meta data instead
    +            ArrayRecord<?> record = Util.newArrayRecord(type, configuration);
    +            record.set(array);
    +            return record;
    +        }
    +    }
    +
    +    private static Object[] convertArray(Object array, Class<? extends Object[]> type) throws SQLException {
    +        if (array instanceof Object[]) {
    +            return Convert.convert(array, type);
    +        }
    +        else if (array instanceof Array) {
    +            return convertArray((Array) array, type);
    +        }
    +
    +        return null;
    +    }
    +
    +    private static Object[] convertArray(Array array, Class<? extends Object[]> type) throws SQLException {
    +        if (array != null) {
    +            return Convert.convert(array.getArray(), type);
    +        }
    +
    +        return null;
    +    }
    +
    +    private static Date getDate(SQLDialect dialect, ResultSet rs, int index) throws SQLException {
    +
    +        // SQLite's type affinity needs special care...
    +        if (dialect == SQLDialect.SQLITE) {
    +            String date = rs.getString(index);
    +
    +            if (date != null) {
    +                return new Date(parse("yyyy-MM-dd", date));
    +            }
    +
    +            return null;
    +        }
    +
    +        // Cubrid SQL dates are incorrectly fetched. Reset milliseconds...
    +        // See http://jira.cubrid.org/browse/APIS-159
    +        // See https://sourceforge.net/apps/trac/cubridinterface/ticket/140
    +        else if (dialect == CUBRID) {
    +            Date date = rs.getDate(index);
    +
    +            if (date != null) {
    +                Calendar cal = Calendar.getInstance();
    +                cal.setTimeInMillis(date.getTime());
    +                cal.set(Calendar.MILLISECOND, 0);
    +                date = new Date(cal.getTimeInMillis());
    +            }
    +
    +            return date;
    +        }
    +
    +        else {
    +            return rs.getDate(index);
    +        }
    +    }
    +
    +    private static Time getTime(SQLDialect dialect, ResultSet rs, int index) throws SQLException {
    +
    +        // SQLite's type affinity needs special care...
    +        if (dialect == SQLDialect.SQLITE) {
    +            String time = rs.getString(index);
    +
    +            if (time != null) {
    +                return new Time(parse("HH:mm:ss", time));
    +            }
    +
    +            return null;
    +        }
    +
    +        // Cubrid SQL dates are incorrectly fetched. Reset milliseconds...
    +        // See http://jira.cubrid.org/browse/APIS-159
    +        // See https://sourceforge.net/apps/trac/cubridinterface/ticket/140
    +        else if (dialect == CUBRID) {
    +            Time time = rs.getTime(index);
    +
    +            if (time != null) {
    +                Calendar cal = Calendar.getInstance();
    +                cal.setTimeInMillis(time.getTime());
    +                cal.set(Calendar.MILLISECOND, 0);
    +                time = new Time(cal.getTimeInMillis());
    +            }
    +
    +            return time;
    +        }
    +
    +        else {
    +            return rs.getTime(index);
    +        }
    +    }
    +
    +    private static Timestamp getTimestamp(SQLDialect dialect, ResultSet rs, int index) throws SQLException {
    +
    +        // SQLite's type affinity needs special care...
    +        if (dialect == SQLDialect.SQLITE) {
    +            String timestamp = rs.getString(index);
    +
    +            if (timestamp != null) {
    +                return new Timestamp(parse("yyyy-MM-dd HH:mm:ss", timestamp));
    +            }
    +
    +            return null;
    +        } else {
    +            return rs.getTimestamp(index);
    +        }
    +    }
    +
    +    private static long parse(String pattern, String date) throws SQLException {
    +        try {
    +
    +            // Try reading a plain number first
    +            try {
    +                return Long.valueOf(date);
    +            }
    +
    +            // If that fails, try reading a formatted date
    +            catch (NumberFormatException e) {
    +                return new SimpleDateFormat(pattern).parse(date).getTime();
    +            }
    +        }
    +        catch (ParseException e) {
    +            throw new SQLException("Could not parse date " + date, e);
    +        }
    +    }
    +
    +    public static Map<String, Class<?>> getTypeMapping(Class<?> udtType) throws SQLException {
    +        try {
    +            return ((UDTRecord<?>) udtType.newInstance()).getUDT().getTypeMapping();
    +        } catch (Exception e) {
    +            throw new SQLException("Cannot retrieve type mapping for " + udtType, e);
    +        }
    +    }
    +
    +    private static <T> T checkWasNull(SQLInput stream, T value) throws SQLException {
    +        return stream.wasNull() ? null : value;
    +    }
    +
    +    private static <T> T checkWasNull(ResultSet rs, T value) throws SQLException {
    +        return rs.wasNull() ? null : value;
    +    }
    +
    +    private static <T> T checkWasNull(CallableStatement statement, T value) throws SQLException {
    +        return statement.wasNull() ? null : value;
    +    }
    +
    +    @SuppressWarnings("unchecked")
    +    private static <T> T getEnumType(Class<? extends T> type, String literal) throws SQLException {
    +        try {
    +            Object[] list = (Object[]) type.getMethod("values").invoke(type);
    +
    +            for (Object e : list) {
    +                String l = ((EnumType) e).getLiteral();
    +
    +                if (l.equals(literal)) {
    +                    return (T) e;
    +                }
    +            }
    +        }
    +        catch (Exception e) {
    +            throw new SQLException("Unknown enum literal found : " + literal);
    +        }
    +
    +        return null;
    +    }
    +
    +
    +    static MasterDataType<?> getMasterDataType(Class<?> type, Object primaryKey) throws SQLException {
    +        try {
    +            Object[] values = (Object[]) type.getMethod("values").invoke(type);
    +
    +            for (Object value : values) {
    +                MasterDataType<?> result = (MasterDataType<?>) value;
    +
    +                if (String.valueOf(primaryKey).equals(String.valueOf(result.getPrimaryKey()))) {
    +                    return result;
    +                }
    +            }
    +        }
    +        catch (Exception e) {
    +            throw new SQLException("Unknown enum literal found : " + primaryKey);
    +        }
    +
    +        return null;
    +    }
    +
    +    @SuppressWarnings("unchecked")
    +    public static <T> T getFromStatement(ExecuteContext ctx, Class<? extends T> type, int index) throws SQLException {
    +        CallableStatement stmt = (CallableStatement) ctx.statement();
    +
    +        if (type == Blob.class) {
    +            return (T) stmt.getBlob(index);
    +        }
    +        else if (type == Boolean.class) {
    +            return (T) checkWasNull(stmt, Boolean.valueOf(stmt.getBoolean(index)));
    +        }
    +        else if (type == BigInteger.class) {
    +            BigDecimal result = stmt.getBigDecimal(index);
    +            return (T) (result == null ? null : result.toBigInteger());
    +        }
    +        else if (type == BigDecimal.class) {
    +            return (T) stmt.getBigDecimal(index);
    +        }
    +        else if (type == Byte.class) {
    +            return (T) checkWasNull(stmt, Byte.valueOf(stmt.getByte(index)));
    +        }
    +        else if (type == byte[].class) {
    +            return (T) stmt.getBytes(index);
    +        }
    +        else if (type == Clob.class) {
    +            return (T) stmt.getClob(index);
    +        }
    +        else if (type == Date.class) {
    +            return (T) stmt.getDate(index);
    +        }
    +        else if (type == Double.class) {
    +            return (T) checkWasNull(stmt, Double.valueOf(stmt.getDouble(index)));
    +        }
    +        else if (type == Float.class) {
    +            return (T) checkWasNull(stmt, Float.valueOf(stmt.getFloat(index)));
    +        }
    +        else if (type == Integer.class) {
    +            return (T) checkWasNull(stmt, Integer.valueOf(stmt.getInt(index)));
    +        }
    +        else if (type == Long.class) {
    +            return (T) checkWasNull(stmt, Long.valueOf(stmt.getLong(index)));
    +        }
    +        else if (type == Short.class) {
    +            return (T) checkWasNull(stmt, Short.valueOf(stmt.getShort(index)));
    +        }
    +        else if (type == String.class) {
    +            return (T) stmt.getString(index);
    +        }
    +        else if (type == Time.class) {
    +            return (T) stmt.getTime(index);
    +        }
    +        else if (type == Timestamp.class) {
    +            return (T) stmt.getTimestamp(index);
    +        }
    +        else if (type == YearToMonth.class) {
    +            if (ctx.getDialect() == POSTGRES) {
    +                Object object = stmt.getObject(index);
    +                return (T) (object == null ? null : PGIntervalConverter.toYearToMonth(object));
    +            }
    +            else {
    +                String string = stmt.getString(index);
    +                return (T) (string == null ? null : YearToMonth.valueOf(string));
    +            }
    +        }
    +        else if (type == DayToSecond.class) {
    +            if (ctx.getDialect() == POSTGRES) {
    +                Object object = stmt.getObject(index);
    +                return (T) (object == null ? null : PGIntervalConverter.toDayToSecond(object));
    +            }
    +            else {
    +                String string = stmt.getString(index);
    +                return (T) (string == null ? null : DayToSecond.valueOf(string));
    +            }
    +        }
    +        else if (type == UByte.class) {
    +            String string = stmt.getString(index);
    +            return (T) (string == null ? null : new UByte(string));
    +        }
    +        else if (type == UShort.class) {
    +            String string = stmt.getString(index);
    +            return (T) (string == null ? null : new UShort(string));
    +        }
    +        else if (type == UInteger.class) {
    +            String string = stmt.getString(index);
    +            return (T) (string == null ? null : new UInteger(string));
    +        }
    +        else if (type == ULong.class) {
    +            String string = stmt.getString(index);
    +            return (T) (string == null ? null : new ULong(string));
    +        }
    +
    +        // The type byte[] is handled earlier. byte[][] can be handled here
    +        else if (type.isArray()) {
    +            return (T) convertArray(stmt.getObject(index), (Class<? extends Object[]>)type);
    +        }
    +        else if (ArrayRecord.class.isAssignableFrom(type)) {
    +            return (T) getArrayRecord(ctx, stmt.getArray(index), (Class<? extends ArrayRecord<?>>) type);
    +        }
    +        else if (EnumType.class.isAssignableFrom(type)) {
    +            return getEnumType(type, stmt.getString(index));
    +        }
    +        else if (MasterDataType.class.isAssignableFrom(type)) {
    +            return (T) getMasterDataType(type, stmt.getString(index));
    +        }
    +        else if (UDTRecord.class.isAssignableFrom(type)) {
    +            switch (ctx.getDialect()) {
    +                case POSTGRES:
    +                    return (T) pgNewUDTRecord(type, stmt.getObject(index));
    +            }
    +
    +            return (T) stmt.getObject(index, getTypeMapping(type));
    +        }
    +        else if (Result.class.isAssignableFrom(type)) {
    +            ResultSet nested = (ResultSet) stmt.getObject(index);
    +            return (T) getNewFactory(ctx).fetch(nested);
    +        }
    +        else {
    +            return (T) stmt.getObject(index);
    +        }
    +    }
    +
    +    public static Class<?> getClass(int sqlType, int precision, int scale) {
    +        switch (sqlType) {
    +            case Types.BLOB:
    +            case Types.BINARY:
    +            case Types.LONGVARBINARY:
    +            case Types.VARBINARY:
    +                return byte[].class;
    +
    +            case Types.BOOLEAN:
    +            case Types.BIT:
    +                return Boolean.class;
    +
    +            case Types.TINYINT:
    +                return Byte.class;
    +
    +            case Types.SMALLINT:
    +                return Short.class;
    +
    +            case Types.INTEGER:
    +                return Integer.class;
    +
    +            case Types.BIGINT:
    +                return Long.class;
    +
    +            case Types.REAL:
    +                return Float.class;
    +
    +            case Types.DOUBLE:
    +            case Types.FLOAT:
    +                return Double.class;
    +
    +            case Types.DECIMAL:
    +            case Types.NUMERIC: {
    +
    +                // Integer numbers
    +                if (scale == 0 && precision != 0) {
    +                    if (precision < BYTE_PRECISION) {
    +                        return Byte.class;
    +                    }
    +                    if (precision < SHORT_PRECISION) {
    +                        return Short.class;
    +                    }
    +                    if (precision < INTEGER_PRECISION) {
    +                        return Integer.class;
    +                    }
    +                    if (precision < LONG_PRECISION) {
    +                        return Long.class;
    +                    }
    +
    +                    // Default integer number
    +                    return BigInteger.class;
    +                }
    +
    +                // Real numbers should not be represented as float or double
    +                else {
    +                    return BigDecimal.class;
    +                }
    +            }
    +
    +            case Types.CLOB:
    +            case Types.CHAR:
    +            case Types.LONGNVARCHAR:
    +            case Types.LONGVARCHAR:
    +            case Types.NCHAR:
    +            case Types.NCLOB:
    +            case Types.NVARCHAR:
    +            case Types.VARCHAR:
    +                return String.class;
    +
    +            case Types.DATE:
    +                return Date.class;
    +
    +            case Types.TIME:
    +                return Time.class;
    +
    +            case Types.TIMESTAMP:
    +                return Timestamp.class;
    +
    +            default:
    +                return Object.class;
    +        }
    +    }
    +
    +    public static <T> DataType<T> getDataType(SQLDialect dialect, Class<? extends T> type) {
    +        switch (dialect) {
    +            case ASE:
    +                return ASEDataType.getDataType(type);
    +            case CUBRID:
    +                return CUBRIDDataType.getDataType(type);
    +            case DB2:
    +                return DB2DataType.getDataType(type);
    +            case DERBY:
    +                return DerbyDataType.getDataType(type);
    +            case H2:
    +                return H2DataType.getDataType(type);
    +            case HSQLDB:
    +                return HSQLDBDataType.getDataType(type);
    +            case INGRES:
    +                return IngresDataType.getDataType(type);
    +            case MYSQL:
    +                return MySQLDataType.getDataType(type);
    +            case ORACLE:
    +                return OracleDataType.getDataType(type);
    +            case POSTGRES:
    +                return PostgresDataType.getDataType(type);
    +            case SQLITE:
    +                return SQLiteDataType.getDataType(type);
    +            case SQLSERVER:
    +                return SQLServerDataType.getDataType(type);
    +            case SYBASE:
    +                return SybaseDataType.getDataType(type);
    +
    +                // Default behaviour is needed for hashCode() and toString();
    +            default:
    +               return SQLDataType.getDataType(null, type);
    +        }
    +    }
    +
    +    /**
    +     * @return The type name without all special characters and white spaces
    +     */
    +    public static String normalise(String typeName) {
    +        return typeName.toUpperCase().replaceAll("\"|\\.|\\s|\\(\\w+(,\\w+)*\\)|(NOT\\s*NULL)?", "");
    +    }
    +
    +    // -------------------------------------------------------------------------
    +    // The following section has been added for Postgres UDT support. The
    +    // official Postgres JDBC driver does not implement SQLData and similar
    +    // interfaces. Instead, a string representation of a UDT has to be parsed
    +    // -------------------------------------------------------------------------
    +
    +    @SuppressWarnings("unchecked")
    +    private static <T> T pgFromString(Class<? extends T> type, String string) throws SQLException {
    +        if (string == null) {
    +            return null;
    +        }
    +        else if (type == Blob.class) {
    +            // Not supported
    +        }
    +        else if (type == Boolean.class) {
    +            return (T) Boolean.valueOf(string);
    +        }
    +        else if (type == BigInteger.class) {
    +            return (T) new BigInteger(string);
    +        }
    +        else if (type == BigDecimal.class) {
    +            return (T) new BigDecimal(string);
    +        }
    +        else if (type == Byte.class) {
    +            return (T) Byte.valueOf(string);
    +        }
    +        else if (type == byte[].class) {
    +            // Not supported
    +        }
    +        else if (type == Clob.class) {
    +            // Not supported
    +        }
    +        else if (type == Date.class) {
    +            SimpleDateFormat f = new SimpleDateFormat("yyyy-MM-dd");
    +            return (T) new Date(pgParseDate(string, f).getTime());
    +        }
    +        else if (type == Double.class) {
    +            return (T) Double.valueOf(string);
    +        }
    +        else if (type == Float.class) {
    +            return (T) Float.valueOf(string);
    +        }
    +        else if (type == Integer.class) {
    +            return (T) Integer.valueOf(string);
    +        }
    +        else if (type == Long.class) {
    +            return (T) Long.valueOf(string);
    +        }
    +        else if (type == Short.class) {
    +            return (T) Short.valueOf(string);
    +        }
    +        else if (type == String.class) {
    +            return (T) string;
    +        }
    +        else if (type == Time.class) {
    +            SimpleDateFormat f = new SimpleDateFormat("HH:mm:ss");
    +            return (T) new Time(pgParseDate(string, f).getTime());
    +        }
    +        else if (type == Timestamp.class) {
    +            SimpleDateFormat f = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
    +            return (T) new Timestamp(pgParseDate(string, f).getTime());
    +        }
    +        else if (type == UByte.class) {
    +            return (T) new UByte(string);
    +        }
    +        else if (type == UShort.class) {
    +            return (T) new UShort(string);
    +        }
    +        else if (type == UInteger.class) {
    +            return (T) new UInteger(string);
    +        }
    +        else if (type == ULong.class) {
    +            return (T) new ULong(string);
    +        }
    +        else if (type.isArray()) {
    +            return (T) pgNewArray(type, string);
    +        }
    +        else if (ArrayRecord.class.isAssignableFrom(type)) {
    +            // Not supported
    +        }
    +        else if (EnumType.class.isAssignableFrom(type)) {
    +            return getEnumType(type, string);
    +        }
    +        else if (MasterDataType.class.isAssignableFrom(type)) {
    +            return (T) getMasterDataType(type, string);
    +        }
    +        else if (UDTRecord.class.isAssignableFrom(type)) {
    +            return (T) pgNewUDTRecord(type, string);
    +        }
    +
    +        throw new UnsupportedOperationException("Class " + type + " is not supported");
    +    }
    +
    +    private static java.util.Date pgParseDate(String string, SimpleDateFormat f) throws SQLException {
    +        try {
    +            return f.parse(string);
    +        }
    +        catch (ParseException e) {
    +            throw new SQLException(e);
    +        }
    +    }
    +
    +    /**
    +     * Create a UDT record from a PGobject
    +     * <p>
    +     * Unfortunately, this feature is very poorly documented and true UDT
    +     * support by the PostGreSQL JDBC driver has been postponed for a long time.
    +     *
    +     * @param object An object of type PGobject. The actual argument type cannot
    +     *            be expressed in the method signature, as no explicit
    +     *            dependency to postgres logic is desired
    +     * @return The converted {@link UDTRecord}
    +     */
    +    private static UDTRecord<?> pgNewUDTRecord(Class<?> type, Object object) throws SQLException {
    +        if (object == null) {
    +            return null;
    +        }
    +
    +        @SuppressWarnings({ "unchecked", "rawtypes" })
    +        UDTRecord<?> record = (UDTRecord<?>) Util.newRecord((Class) type);
    +        List<String> values = new PGobjectParser().parse(object.toString());
    +
    +        List<Field<?>> fields = record.getFields();
    +        for (int i = 0; i < fields.size(); i++) {
    +            pgSetValue(record, fields.get(i), values.get(i));
    +        }
    +
    +        return record;
    +    }
    +
    +    /**
    +     * Workarounds for the unimplemented Postgres JDBC driver features
    +     */
    +    @SuppressWarnings("unchecked")
    +    private static <T> T pgGetArray(ExecuteContext ctx, Class<? extends T> type, int index)
    +        throws SQLException {
    +
    +        ResultSet rs = ctx.resultSet();
    +
    +        // Get the JDBC Array and check for null. If null, that's OK
    +        Array array = rs.getArray(index);
    +        if (array == null) {
    +            return null;
    +        }
    +
    +        // Try fetching a Java Object[]. That's gonna work for non-UDT types
    +        try {
    +            return (T) convertArray(rs.getArray(index), (Class<? extends Object[]>) type);
    +        }
    +
    +        // This might be a UDT (not implemented exception...)
    +        catch (Exception e) {
    +            List<Object> result = new ArrayList<Object>();
    +
    +            // Try fetching the array as a JDBC ResultSet
    +            try {
    +                ctx.resultSet(array.getResultSet());
    +                while (ctx.resultSet().next()) {
    +                    result.add(getFromResultSet(ctx, type.getComponentType(), 2));
    +                }
    +            }
    +
    +            // That might fail too, then we don't know any further...
    +            catch (Exception fatal) {
    +                log.error("Cannot parse Postgres array: " + rs.getString(index));
    +                log.error(fatal);
    +                return null;
    +            }
    +
    +            finally {
    +                ctx.resultSet(rs);
    +            }
    +
    +            return (T) convertArray(result.toArray(), (Class<? extends Object[]>) type);
    +        }
    +    }
    +
    +    /**
    +     * Create an array from a String
    +     * <p>
    +     * Unfortunately, this feature is very poorly documented and true UDT
    +     * support by the PostGreSQL JDBC driver has been postponed for a long time.
    +     *
    +     * @param string A String representation of an array
    +     * @return The converted array
    +     */
    +    private static Object[] pgNewArray(Class<?> type, String string) throws SQLException {
    +        if (string == null) {
    +            return null;
    +        }
    +
    +        try {
    +            Class<?> component = type.getComponentType();
    +            String values = string.replaceAll("^\\{(.*)\\}$", "$1");
    +
    +            if ("".equals(values)) {
    +                return (Object[]) java.lang.reflect.Array.newInstance(component, 0);
    +            }
    +            else {
    +                String[] split = values.split(",");
    +                Object[] result = (Object[]) java.lang.reflect.Array.newInstance(component, split.length);
    +
    +                for (int i = 0; i < split.length; i++) {
    +                    result[i] = pgFromString(type.getComponentType(), split[i]);
    +                }
    +
    +                return result;
    +            }
    +        }
    +        catch (Exception e) {
    +            throw new SQLException(e);
    +        }
    +    }
    +
    +    private static <T> void pgSetValue(UDTRecord<?> record, Field<T> field, String value)
    +        throws SQLException {
    +        record.setValue(field, pgFromString(field.getType(), value));
    +    }
    +
    +    private FieldTypeHelper() {}
    +
    +    /**
    +     * Convert a type name (using precision and scale) into a Java class
    +     */
    +    public static DataType<?> getDialectDataType(SQLDialect dialect, String t, int p, int s) throws SQLDialectNotSupportedException {
    +        DataType<?> result = AbstractDataType.getDataType(dialect, normalise(t));
    +
    +        if (result.getType() == BigDecimal.class) {
    +            result = AbstractDataType.getDataType(dialect, getClass(Types.NUMERIC, p, s));
    +        }
    +
    +        return result;
    +    }
    +
    +    /**
    +     * Convert a type name (using precision and scale) into a Java class
    +     */
    +    public static Class<?> getDialectJavaType(SQLDialect dialect, String t, int p, int s) throws SQLDialectNotSupportedException {
    +        return getDialectDataType(dialect, t, p, s).getType(p, s);
    +    }
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/impl/Floor.java b/jOOQ/src/main/java/org/jooq/impl/Floor.java
    new file mode 100644
    index 00000000000..a6c892eab4b
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/impl/Floor.java
    @@ -0,0 +1,73 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq.impl;
    +
    +import static org.jooq.impl.Factory.function;
    +
    +import org.jooq.Configuration;
    +import org.jooq.Field;
    +
    +/**
    + * @author Lukas Eder
    + */
    +class Floor<T extends Number> extends AbstractFunction<T> {
    +
    +    /**
    +     * Generated UID
    +     */
    +    private static final long serialVersionUID = -7273879239726265322L;
    +
    +    private final Field<T>    argument;
    +
    +    Floor(Field<T> argument) {
    +        super("floor", argument.getDataType(), argument);
    +
    +        this.argument = argument;
    +    }
    +
    +    @Override
    +    final Field<T> getFunction0(Configuration configuration) {
    +        switch (configuration.getDialect()) {
    +
    +            // evaluate "floor" if unavailable
    +            case SQLITE:
    +                return Factory.round(argument.sub(0.499999999999999));
    +
    +            default:
    +                return function("floor", getDataType(), argument);
    +        }
    +    }
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/impl/Function.java b/jOOQ/src/main/java/org/jooq/impl/Function.java
    new file mode 100644
    index 00000000000..ae880598ee2
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/impl/Function.java
    @@ -0,0 +1,605 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +
    +package org.jooq.impl;
    +
    +import static java.util.Arrays.asList;
    +import static org.jooq.SQLDialect.CUBRID;
    +import static org.jooq.SQLDialect.DB2;
    +import static org.jooq.SQLDialect.H2;
    +import static org.jooq.SQLDialect.HSQLDB;
    +import static org.jooq.SQLDialect.MYSQL;
    +import static org.jooq.SQLDialect.POSTGRES;
    +import static org.jooq.SQLDialect.SYBASE;
    +import static org.jooq.impl.Factory.one;
    +import static org.jooq.impl.Term.LIST_AGG;
    +
    +import java.util.Arrays;
    +import java.util.Collection;
    +import java.util.List;
    +
    +import org.jooq.AggregateFunction;
    +import org.jooq.Attachable;
    +import org.jooq.BindContext;
    +import org.jooq.DataType;
    +import org.jooq.Field;
    +import org.jooq.OrderedAggregateFunction;
    +import org.jooq.QueryPart;
    +import org.jooq.RenderContext;
    +import org.jooq.SQLDialect;
    +import org.jooq.SortField;
    +import org.jooq.WindowFinalStep;
    +import org.jooq.WindowIgnoreNullsStep;
    +import org.jooq.WindowOrderByStep;
    +import org.jooq.WindowOverStep;
    +import org.jooq.WindowPartitionByStep;
    +import org.jooq.WindowRowsAndStep;
    +import org.jooq.WindowRowsStep;
    +import org.jooq.util.db2.DB2DataType;
    +
    +/**
    + * A field that handles built-in functions, aggregate functions, and window
    + * functions.
    + *
    + * @author Lukas Eder
    + */
    +class Function<T> extends AbstractField<T> implements
    +
    +    // Cascading interface implementations for aggregate function behaviour
    +    OrderedAggregateFunction<T>,
    +    AggregateFunction<T>,
    +
    +    // and for window function behaviour
    +    WindowIgnoreNullsStep<T>,
    +    WindowPartitionByStep<T>,
    +    WindowRowsStep<T>,
    +    WindowRowsAndStep<T>
    +    {
    +
    +    private static final long              serialVersionUID = 347252741712134044L;
    +
    +    private final QueryPartList<QueryPart> arguments;
    +    private final Term                     term;
    +    private final boolean                  distinct;
    +    private final SortFieldList            withinGroupOrderBy;
    +    private final FieldList                partitionBy;
    +    private final SortFieldList            orderBy;
    +
    +    private boolean                        over;
    +    private boolean                        partitionByOne;
    +    private boolean                        ignoreNulls;
    +    private boolean                        respectNulls;
    +    private Integer                        rowsStart;
    +    private Integer                        rowsEnd;
    +
    +
    +    // -------------------------------------------------------------------------
    +    // XXX Constructors
    +    // -------------------------------------------------------------------------
    +
    +    Function(String name, DataType<T> type, QueryPart... arguments) {
    +        this(name, false, type, arguments);
    +    }
    +
    +    Function(Term term, DataType<T> type, QueryPart... arguments) {
    +        this(term, false, type, arguments);
    +    }
    +
    +    Function(String name, boolean distinct, DataType<T> type, QueryPart... arguments) {
    +        super(name, type);
    +
    +        this.term = null;
    +        this.distinct = distinct;
    +        this.arguments = new QueryPartList<QueryPart>(arguments);
    +        this.withinGroupOrderBy = new SortFieldList();
    +        this.partitionBy = new FieldList();
    +        this.orderBy = new SortFieldList();
    +    }
    +
    +    Function(Term term, boolean distinct, DataType<T> type, QueryPart... arguments) {
    +        super(term.name().toLowerCase(), type);
    +
    +        this.term = term;
    +        this.distinct = distinct;
    +        this.arguments = new QueryPartList<QueryPart>(arguments);
    +        this.withinGroupOrderBy = new SortFieldList();
    +        this.partitionBy = new FieldList();
    +        this.orderBy = new SortFieldList();
    +    }
    +
    +    // -------------------------------------------------------------------------
    +    // XXX QueryPart API
    +    // -------------------------------------------------------------------------
    +
    +    @Override
    +    public final List<Attachable> getAttachables() {
    +        return getAttachables(arguments, withinGroupOrderBy, partitionBy, orderBy);
    +    }
    +
    +    @Override
    +    public final void bind(BindContext context) {
    +
    +        if (term == LIST_AGG && asList(CUBRID, H2, HSQLDB, MYSQL).contains(context.getDialect())) {
    +            context.bind(arguments.get(0));
    +            context.bind((QueryPart) withinGroupOrderBy);
    +
    +            if (arguments.size() > 1) {
    +                context.bind(arguments.get(1));
    +            }
    +        }
    +        else {
    +            context.bind((QueryPart) arguments)
    +                   .bind((QueryPart) withinGroupOrderBy)
    +                   .bind((QueryPart) partitionBy)
    +                   .bind((QueryPart) orderBy);
    +        }
    +    }
    +
    +    @Override
    +    public final void toSQL(RenderContext context) {
    +        if (term == LIST_AGG && asList(CUBRID, H2, HSQLDB, MYSQL).contains(context.getDialect())) {
    +            toSQLGroupConcat(context);
    +        }
    +        else if (term == LIST_AGG && asList(POSTGRES, SYBASE).contains(context.getDialect())) {
    +            toSQLStringAgg(context);
    +        }
    +        else if (term == LIST_AGG && asList(DB2).contains(context.getDialect())) {
    +            toSQLXMLAGG(context);
    +        }
    +        else {
    +            toSQLArguments(context);
    +            toSQLWithinGroupClause(context);
    +            toSQLOverClause(context);
    +        }
    +    }
    +
    +    /**
    +     * [#1276] <code>LIST_AGG</code> simulation for DB2
    +     */
    +    private void toSQLXMLAGG(RenderContext context) {
    +
    +        // This is a complete view of what the below SQL will render
    +        // substr(xmlserialize(xmlagg(xmltext(concat(', ', title)) order by id) as varchar(1024)), 3)
    +        if (arguments.size() > 1) {
    +            context.keyword("substr(");
    +        }
    +
    +        context.keyword("xmlserialize(xmlagg(xmltext(");
    +
    +        if (arguments.size() > 1) {
    +            context.keyword("concat(")
    +                   .sql(arguments.get(1))
    +                   .sql(", ");
    +        }
    +
    +        context.sql(arguments.get(0));
    +
    +        if (arguments.size() > 1) {
    +            context.sql(")"); // CONCAT
    +        }
    +
    +        context.sql(")"); // XMLTEXT
    +
    +        if (!withinGroupOrderBy.isEmpty()) {
    +            context.keyword(" order by ")
    +                   .sql(withinGroupOrderBy);
    +        }
    +
    +        context.sql(")"); // XMLAGG
    +        context.keyword(" as ");
    +        context.sql(DB2DataType.VARCHAR.getCastTypeName());
    +        context.sql(")"); // XMLSERIALIZE
    +
    +        if (arguments.size() > 1) {
    +            context.sql(", ");
    +
    +            // The separator is of this form: [', '].
    +            // The example has length 4
    +            context.sql(arguments.get(1).toString().length() - 1);
    +            context.sql(")"); // SUBSTR
    +        }
    +    }
    +
    +    /**
    +     * [#1275] <code>LIST_AGG</code> simulation for Postgres, Sybase
    +     */
    +    private void toSQLStringAgg(RenderContext context) {
    +        context.sql(getFNName(context.getDialect()));
    +        context.sql("(");
    +
    +        if (distinct) {
    +            context.keyword("distinct ");
    +        }
    +
    +        // The explicit cast is needed in Postgres
    +        context.sql(((Field<?>) arguments.get(0)).cast(String.class));
    +
    +        if (arguments.size() > 1) {
    +            context.sql(", ");
    +            context.sql(arguments.get(1));
    +        }
    +        else {
    +            context.sql(", ''");
    +        }
    +
    +        if (!withinGroupOrderBy.isEmpty()) {
    +            context.keyword(" order by ")
    +                   .sql(withinGroupOrderBy);
    +        }
    +
    +        context.sql(")");
    +        toSQLOverClause(context);
    +    }
    +
    +    /**
    +     * [#1273] <code>LIST_AGG</code> simulation for MySQL and CUBRID
    +     */
    +    private final void toSQLGroupConcat(RenderContext context) {
    +        context.sql(getFNName(context.getDialect()));
    +        context.sql("(");
    +
    +        if (distinct) {
    +            context.keyword("distinct ");
    +        }
    +
    +        context.sql(arguments.get(0));
    +
    +        if (!withinGroupOrderBy.isEmpty()) {
    +            context.keyword(" order by ")
    +                   .sql(withinGroupOrderBy);
    +        }
    +
    +        if (arguments.size() > 1) {
    +            context.keyword(" separator ")
    +                   .sql(arguments.get(1));
    +        }
    +
    +        context.sql(")");
    +    }
    +
    +    private final void toSQLOverClause(RenderContext context) {
    +        if (!over) return;
    +
    +        String glue = "";
    +        context.keyword(" over (");
    +        if (!partitionBy.isEmpty()) {
    +            if (partitionByOne && context.getDialect() == SQLDialect.SYBASE) {
    +                // Ignore partition clause. Sybase does not support this construct
    +            }
    +            else {
    +                context.sql(glue)
    +                       .keyword("partition by ")
    +                       .sql(partitionBy);
    +
    +                glue = " ";
    +            }
    +        }
    +
    +        if (!orderBy.isEmpty()) {
    +            context.sql(glue)
    +                   .keyword("order by ");
    +
    +            switch (context.getDialect()) {
    +
    +                // SQL Server and Sybase don't allow for fully qualified fields
    +                // in the ORDER BY clause of an analytic expression
    +                case SQLSERVER: // No break
    +                case SYBASE: {
    +                    for (SortField<?> f : orderBy) {
    +                        SortFieldImpl<?> field = (SortFieldImpl<?>) f;
    +                        field.toSQLInAnalyticClause(context);
    +                    }
    +
    +                    break;
    +                }
    +
    +                default: {
    +                    context.sql(orderBy);
    +                    break;
    +                }
    +            }
    +
    +            glue = " ";
    +        }
    +
    +        if (rowsStart != null) {
    +            context.sql(glue);
    +            context.keyword("rows ");
    +
    +            if (rowsEnd != null) {
    +                context.keyword("between ");
    +                toSQLRows(context, rowsStart);
    +
    +                context.keyword(" and ");
    +                toSQLRows(context, rowsEnd);
    +            }
    +            else {
    +                toSQLRows(context, rowsStart);
    +            }
    +
    +            glue = " ";
    +        }
    +
    +        context.sql(")");
    +    }
    +
    +    /**
    +     * Render <code>WITHIN GROUP (ORDER BY ..)</code> clause
    +     */
    +    private final void toSQLWithinGroupClause(RenderContext context) {
    +        if (!withinGroupOrderBy.isEmpty()) {
    +            context.keyword(" within group (order by ")
    +                   .sql(withinGroupOrderBy)
    +                   .sql(")");
    +        }
    +    }
    +
    +    /**
    +     * Render function arguments and argument modifiers
    +     */
    +    private final void toSQLArguments(RenderContext context) {
    +        context.sql(getFNName(context.getDialect()));
    +        context.sql("(");
    +
    +        if (distinct) {
    +            context.keyword("distinct ");
    +        }
    +
    +        if (!arguments.isEmpty()) {
    +            context.sql(arguments);
    +        }
    +
    +        if (ignoreNulls) {
    +            if (context.getDialect() == SQLDialect.DB2) {
    +                context.sql(", 'IGNORE NULLS'");
    +            }
    +            else {
    +                context.keyword(" ignore nulls");
    +            }
    +        }
    +        else if (respectNulls) {
    +            if (context.getDialect() == SQLDialect.DB2) {
    +                context.sql(", 'RESPECT NULLS'");
    +            }
    +            else {
    +                context.keyword(" respect nulls");
    +            }
    +        }
    +
    +        context.sql(")");
    +    }
    +
    +    private final String getFNName(SQLDialect dialect) {
    +        if (term != null) {
    +            return term.translate(dialect);
    +        }
    +        else {
    +            return getName();
    +        }
    +    }
    +
    +    private final void toSQLRows(RenderContext context, Integer rows) {
    +        if (rows == Integer.MIN_VALUE) {
    +            context.keyword("unbounded preceding");
    +        }
    +        else if (rows == Integer.MAX_VALUE) {
    +            context.keyword("unbounded following");
    +        }
    +        else if (rows < 0) {
    +            context.sql(-rows);
    +            context.keyword(" preceding");
    +        }
    +        else if (rows > 0) {
    +            context.sql(rows);
    +            context.keyword(" following");
    +        }
    +        else {
    +            context.keyword("current row");
    +        }
    +    }
    +
    +    @Override
    +    public final boolean isNullLiteral() {
    +        return false;
    +    }
    +
    +    // -------------------------------------------------------------------------
    +    // XXX aggregate and window function fluent API methods
    +    // -------------------------------------------------------------------------
    +
    +    final QueryPartList<QueryPart> getArguments() {
    +        return arguments;
    +    }
    +
    +    @Override
    +    public final AggregateFunction<T> withinGroupOrderBy(Field<?>... fields) {
    +        withinGroupOrderBy.addAll(fields);
    +        return this;
    +    }
    +
    +    @Override
    +    public final AggregateFunction<T> withinGroupOrderBy(SortField<?>... fields) {
    +        withinGroupOrderBy.addAll(Arrays.asList(fields));
    +        return this;
    +    }
    +
    +    @Override
    +    public final AggregateFunction<T> withinGroupOrderBy(Collection<SortField<?>> fields) {
    +        withinGroupOrderBy.addAll(fields);
    +        return this;
    +    }
    +
    +    @Override
    +    public final WindowPartitionByStep<T> over() {
    +        over = true;
    +        return this;
    +    }
    +
    +    @Override
    +    public final WindowOverStep<T> ignoreNulls() {
    +        ignoreNulls = true;
    +        respectNulls = false;
    +        return this;
    +    }
    +
    +    @Override
    +    public final WindowOverStep<T> respectNulls() {
    +        ignoreNulls = false;
    +        respectNulls = true;
    +        return this;
    +    }
    +
    +    @Override
    +    public final WindowOrderByStep<T> partitionBy(Field<?>... fields) {
    +        partitionBy.addAll(Arrays.asList(fields));
    +        return this;
    +    }
    +
    +    @Override
    +    public final WindowOrderByStep<T> partitionByOne() {
    +        partitionByOne = true;
    +        partitionBy.add(one());
    +        return this;
    +    }
    +
    +    @Override
    +    public final WindowRowsStep<T> orderBy(Field<?>... fields) {
    +        orderBy.addAll(fields);
    +        return this;
    +    }
    +
    +    @Override
    +    public final WindowRowsStep<T> orderBy(SortField<?>... fields) {
    +        orderBy.addAll(Arrays.asList(fields));
    +        return this;
    +    }
    +
    +    @Override
    +    public final WindowRowsStep<T> orderBy(Collection<SortField<?>> fields) {
    +        orderBy.addAll(fields);
    +        return this;
    +    }
    +
    +    @Override
    +    public final WindowFinalStep<T> rowsUnboundedPreceding() {
    +        rowsStart = Integer.MIN_VALUE;
    +        return this;
    +    }
    +
    +    @Override
    +    public final WindowFinalStep<T> rowsPreceding(int number) {
    +        rowsStart = -number;
    +        return this;
    +    }
    +
    +    @Override
    +    public final WindowFinalStep<T> rowsCurrentRow() {
    +        rowsStart = 0;
    +        return this;
    +    }
    +
    +    @Override
    +    public final WindowFinalStep<T> rowsUnboundedFollowing() {
    +        rowsStart = Integer.MAX_VALUE;
    +        return this;
    +    }
    +
    +    @Override
    +    public final WindowFinalStep<T> rowsFollowing(int number) {
    +        rowsStart = number;
    +        return this;
    +    }
    +
    +    @Override
    +    public final WindowRowsAndStep<T> rowsBetweenUnboundedPreceding() {
    +        rowsUnboundedPreceding();
    +        return this;
    +    }
    +
    +    @Override
    +    public final WindowRowsAndStep<T> rowsBetweenPreceding(int number) {
    +        rowsPreceding(number);
    +        return this;
    +    }
    +
    +    @Override
    +    public final WindowRowsAndStep<T> rowsBetweenCurrentRow() {
    +        rowsCurrentRow();
    +        return this;
    +    }
    +
    +    @Override
    +    public final WindowRowsAndStep<T> rowsBetweenUnboundedFollowing() {
    +        rowsUnboundedFollowing();
    +        return this;
    +    }
    +
    +    @Override
    +    public final WindowRowsAndStep<T> rowsBetweenFollowing(int number) {
    +        rowsFollowing(number);
    +        return this;
    +    }
    +
    +    @Override
    +    public final WindowFinalStep<T> andUnboundedPreceding() {
    +        rowsEnd = Integer.MIN_VALUE;
    +        return this;
    +    }
    +
    +    @Override
    +    public final WindowFinalStep<T> andPreceding(int number) {
    +        rowsEnd = -number;
    +        return this;
    +    }
    +
    +    @Override
    +    public final WindowFinalStep<T> andCurrentRow() {
    +        rowsEnd = 0;
    +        return this;
    +    }
    +
    +    @Override
    +    public final WindowFinalStep<T> andUnboundedFollowing() {
    +        rowsEnd = Integer.MAX_VALUE;
    +        return this;
    +    }
    +
    +    @Override
    +    public final WindowFinalStep<T> andFollowing(int number) {
    +        rowsEnd = number;
    +        return this;
    +    }
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/impl/FunctionTable.java b/jOOQ/src/main/java/org/jooq/impl/FunctionTable.java
    new file mode 100644
    index 00000000000..ef4692ab28e
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/impl/FunctionTable.java
    @@ -0,0 +1,112 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq.impl;
    +
    +import java.util.Collections;
    +import java.util.List;
    +
    +import org.jooq.Attachable;
    +import org.jooq.BindContext;
    +import org.jooq.Field;
    +import org.jooq.Record;
    +import org.jooq.RenderContext;
    +import org.jooq.Table;
    +import org.jooq.exception.SQLDialectNotSupportedException;
    +
    +/**
    + * @author Lukas Eder
    + */
    +class FunctionTable<R extends Record> extends AbstractTable<R> {
    +
    +    /**
    +     * Generated UID
    +     */
    +    private static final long    serialVersionUID = 2380426377794577041L;
    +
    +    private final Field<?>       function;
    +
    +    FunctionTable(Field<?> function) {
    +        super("function_table");
    +
    +        this.function = function;
    +    }
    +
    +    @SuppressWarnings("unchecked")
    +    @Override
    +    public final Class<? extends R> getRecordType() {
    +        return (Class<? extends R>) RecordImpl.class;
    +    }
    +
    +    @Override
    +    public final Table<R> as(String as) {
    +        return new TableAlias<R>(new FunctionTable<R>(function), as);
    +    }
    +
    +    @Override
    +    public final void toSQL(RenderContext context) {
    +        switch (context.getDialect()) {
    +            case HSQLDB: {
    +                context.keyword("table(").sql(function).sql(")");
    +                break;
    +            }
    +
    +            default:
    +                throw new SQLDialectNotSupportedException("FUNCTION TABLE is not supported for " + context.getDialect());
    +        }
    +    }
    +
    +    @Override
    +    public final void bind(BindContext context) {
    +        switch (context.getDialect()) {
    +            case HSQLDB:
    +                context.bind(function);
    +                break;
    +
    +            default:
    +                throw new SQLDialectNotSupportedException("FUNCTION TABLE is not supported for " + context.getDialect());
    +        }
    +    }
    +
    +    @Override
    +    protected final FieldList getFieldList() {
    +        return new FieldList();
    +    }
    +
    +    @Override
    +    protected final List<Attachable> getAttachables0() {
    +        return Collections.emptyList();
    +    }
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/impl/FutureResultImpl.java b/jOOQ/src/main/java/org/jooq/impl/FutureResultImpl.java
    new file mode 100644
    index 00000000000..2bec695cb46
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/impl/FutureResultImpl.java
    @@ -0,0 +1,111 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq.impl;
    +
    +import java.util.concurrent.ExecutionException;
    +import java.util.concurrent.ExecutorService;
    +import java.util.concurrent.Future;
    +import java.util.concurrent.TimeUnit;
    +import java.util.concurrent.TimeoutException;
    +
    +import org.jooq.FutureResult;
    +import org.jooq.Record;
    +import org.jooq.Result;
    +
    +/**
    + * @author Lukas Eder
    + */
    +class FutureResultImpl<R extends Record> implements FutureResult<R> {
    +
    +    private final Future<Result<R>> future;
    +    private final ExecutorService executor;
    +
    +    FutureResultImpl(Future<Result<R>> future) {
    +        this(future, null);
    +    }
    +
    +    FutureResultImpl(Future<Result<R>> future, ExecutorService executor) {
    +        this.future = future;
    +        this.executor = executor;
    +    }
    +
    +    @Override
    +    public boolean cancel(boolean mayInterruptIfRunning) {
    +        try {
    +            return future.cancel(mayInterruptIfRunning);
    +        }
    +        finally {
    +            if (executor != null) {
    +                executor.shutdownNow();
    +            }
    +        }
    +    }
    +
    +    @Override
    +    public boolean isCancelled() {
    +        return future.isCancelled();
    +    }
    +
    +    @Override
    +    public boolean isDone() {
    +        return future.isDone();
    +    }
    +
    +    @Override
    +    public Result<R> get() throws InterruptedException, ExecutionException {
    +        try {
    +            return future.get();
    +        }
    +        finally {
    +            if (executor != null) {
    +                executor.shutdownNow();
    +            }
    +        }
    +    }
    +
    +    @Override
    +    public Result<R> get(long timeout, TimeUnit unit) throws InterruptedException, ExecutionException, TimeoutException {
    +        try {
    +            return future.get(timeout, unit);
    +        }
    +        finally {
    +            if (executor != null) {
    +                executor.shutdownNow();
    +            }
    +        }
    +    }
    +
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/impl/Greatest.java b/jOOQ/src/main/java/org/jooq/impl/Greatest.java
    new file mode 100644
    index 00000000000..64be8239fa6
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/impl/Greatest.java
    @@ -0,0 +1,101 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq.impl;
    +
    +import static org.jooq.impl.Factory.function;
    +
    +import org.jooq.Configuration;
    +import org.jooq.DataType;
    +import org.jooq.Field;
    +
    +/**
    + * @author Lukas Eder
    + */
    +class Greatest<T> extends AbstractFunction<T> {
    +
    +    /**
    +     * Generated UID
    +     */
    +    private static final long serialVersionUID = -7273879239726265322L;
    +
    +    Greatest(DataType<T> type, Field<?>... arguments) {
    +        super("greatest", type, arguments);
    +    }
    +
    +    @SuppressWarnings("unchecked")
    +    @Override
    +    final Field<T> getFunction0(Configuration configuration) {
    +
    +        // In any dialect, a single argument is always the greatest
    +        if (getArguments().length == 1) {
    +            return (Field<T>) getArguments()[0];
    +        }
    +
    +        switch (configuration.getDialect()) {
    +            // This implementation has O(2^n) complexity. Better implementations
    +            // are very welcome
    +            // [#1049] TODO Fix this!
    +
    +            case ASE:
    +            case DERBY:
    +            case SQLSERVER:
    +            case SYBASE: {
    +                Field<T> first = (Field<T>) getArguments()[0];
    +                Field<T> other = (Field<T>) getArguments()[1];
    +
    +                if (getArguments().length > 2) {
    +                    Field<?>[] remaining = new Field[getArguments().length - 2];
    +                    System.arraycopy(getArguments(), 2, remaining, 0, remaining.length);
    +
    +                    return Factory.decode()
    +                        .when(first.greaterThan(other), Factory.greatest(first, remaining))
    +                        .otherwise(Factory.greatest(other, remaining));
    +                }
    +                else {
    +                    return Factory.decode()
    +                        .when(first.greaterThan(other), first)
    +                        .otherwise(other);
    +                }
    +            }
    +
    +            case SQLITE:
    +                return function("max", getDataType(), getArguments());
    +
    +            default:
    +                return function("greatest", getDataType(), getArguments());
    +        }
    +    }
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/impl/GroupConcat.java b/jOOQ/src/main/java/org/jooq/impl/GroupConcat.java
    new file mode 100644
    index 00000000000..e2e5beab006
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/impl/GroupConcat.java
    @@ -0,0 +1,121 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq.impl;
    +
    +import static org.jooq.impl.Factory.literal;
    +
    +import java.util.Arrays;
    +import java.util.Collection;
    +
    +import org.jooq.AggregateFunction;
    +import org.jooq.Configuration;
    +import org.jooq.Field;
    +import org.jooq.GroupConcatOrderByStep;
    +import org.jooq.GroupConcatSeparatorStep;
    +import org.jooq.SortField;
    +import org.jooq.WindowPartitionByStep;
    +
    +/**
    + * @author Lukas Eder
    + */
    +class GroupConcat extends AbstractFunction<String> implements GroupConcatOrderByStep {
    +
    +    /**
    +     * Generated UID
    +     */
    +    private static final long   serialVersionUID = -6884415527559632960L;
    +
    +    private final Field<?>      field;
    +    private final boolean       distinct;
    +    private final SortFieldList orderBy;
    +    private String              separator;
    +
    +    GroupConcat(Field<?> field) {
    +        this(field, false);
    +    }
    +
    +    GroupConcat(Field<?> field, boolean distinct) {
    +        super("group_concat", SQLDataType.VARCHAR);
    +
    +        this.field = field;
    +        this.distinct = distinct;
    +        this.orderBy = new SortFieldList();
    +    }
    +
    +    @Override
    +    final Field<String> getFunction0(Configuration configuration) {
    +        Function<String> result;
    +
    +        if (separator == null) {
    +            result = new Function<String>(Term.LIST_AGG, distinct, SQLDataType.VARCHAR, field);
    +        }
    +        else {
    +            Field<String> literal = literal("'" + separator.replace("'", "''") + "'");
    +            result = new Function<String>(Term.LIST_AGG, distinct, SQLDataType.VARCHAR, field, literal);
    +        }
    +
    +        return result.withinGroupOrderBy(orderBy);
    +    }
    +
    +    @Override
    +    public final WindowPartitionByStep<String> over() {
    +        throw new UnsupportedOperationException("OVER() not supported on GROUP_CONCAT aggregate function");
    +    }
    +
    +    @Override
    +    public final AggregateFunction<String> separator(String s) {
    +        this.separator = s;
    +        return this;
    +    }
    +
    +    @Override
    +    public final GroupConcatSeparatorStep orderBy(Field<?>... fields) {
    +        orderBy.addAll(fields);
    +        return this;
    +    }
    +
    +    @Override
    +    public final GroupConcatSeparatorStep orderBy(SortField<?>... fields) {
    +        orderBy.addAll(Arrays.asList(fields));
    +        return this;
    +    }
    +
    +    @Override
    +    public final GroupConcatSeparatorStep orderBy(Collection<SortField<?>> fields) {
    +        orderBy.addAll(fields);
    +        return this;
    +    }
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/impl/IdentityImpl.java b/jOOQ/src/main/java/org/jooq/impl/IdentityImpl.java
    new file mode 100644
    index 00000000000..afe63225df2
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/impl/IdentityImpl.java
    @@ -0,0 +1,89 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq.impl;
    +
    +import org.jooq.Identity;
    +import org.jooq.Record;
    +import org.jooq.Table;
    +import org.jooq.TableField;
    +
    +/**
    + * @author Lukas Eder
    + */
    +class IdentityImpl<R extends Record, T> implements Identity<R, T> {
    +
    +    /**
    +     * Generated UID
    +     */
    +    private static final long      serialVersionUID = 162853300137140844L;
    +
    +    private final Table<R>         table;
    +    private final TableField<R, T> field;
    +
    +    IdentityImpl(Table<R> table, TableField<R, T> field) {
    +        this.table = table;
    +        this.field = field;
    +    }
    +
    +    @Override
    +    public final Table<R> getTable() {
    +        return table;
    +    }
    +
    +    @Override
    +    public final TableField<R, T> getField() {
    +        return field;
    +    }
    +
    +    @Override
    +    public int hashCode() {
    +        return toString().hashCode();
    +    }
    +
    +    @Override
    +    public boolean equals(Object obj) {
    +        if (obj instanceof Identity) {
    +            return toString().equals(obj.toString());
    +        }
    +
    +        return false;
    +    }
    +
    +    @Override
    +    public String toString() {
    +        return field.toString();
    +    }
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/impl/InCondition.java b/jOOQ/src/main/java/org/jooq/impl/InCondition.java
    new file mode 100644
    index 00000000000..7c173f37af5
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/impl/InCondition.java
    @@ -0,0 +1,140 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +
    +package org.jooq.impl;
    +
    +import java.util.ArrayList;
    +import java.util.Arrays;
    +import java.util.List;
    +
    +import org.jooq.Attachable;
    +import org.jooq.BindContext;
    +import org.jooq.Field;
    +import org.jooq.RenderContext;
    +
    +/**
    + * @author Lukas Eder
    + */
    +class InCondition<T> extends AbstractCondition {
    +
    +    private static final long serialVersionUID = -1653924248576930761L;
    +    private static final int  IN_LIMIT         = 1000;
    +
    +    private final Field<T>    field;
    +    private final Field<?>[]  values;
    +    private final InOperator  operator;
    +
    +    InCondition(Field<T> field, Field<?>[] values, InOperator operator) {
    +        this.field = field;
    +        this.values = values;
    +        this.operator = operator;
    +    }
    +
    +    @Override
    +    public final List<Attachable> getAttachables() {
    +        List<Attachable> result = new ArrayList<Attachable>();
    +
    +        result.addAll(getAttachables(field));
    +        result.addAll(getAttachables(values));
    +
    +        return result;
    +    }
    +
    +    @Override
    +    public final void bind(BindContext context) {
    +        context.bind(field).bind(values);
    +    }
    +
    +    @Override
    +    public final void toSQL(RenderContext context) {
    +        List<Field<?>> list = Arrays.asList(values);
    +
    +        if (list.size() > IN_LIMIT) {
    +            // [#798] Oracle and some other dialects can only hold 1000 values
    +            // in an IN (...) clause
    +            switch (context.getDialect()) {
    +                case ORACLE:
    +                case INGRES:
    +                case SQLSERVER: {
    +                    context.sql("(")
    +                           .formatIndentLockStart();
    +
    +                    for (int i = 0; i < list.size(); i += IN_LIMIT) {
    +                        if (i > 0) {
    +                            context.keyword(" or ")
    +                                   .formatSeparator();
    +                        }
    +
    +                        toSQLSubValues(context, list.subList(i, Math.min(i + IN_LIMIT, list.size())));
    +                    }
    +
    +                    context.sql(")")
    +                           .formatIndentLockEnd();
    +                    break;
    +                }
    +
    +                // Most dialects can handle larger lists
    +                default: {
    +                    toSQLSubValues(context, list);
    +                    break;
    +                }
    +            }
    +        }
    +        else {
    +            toSQLSubValues(context, list);
    +        }
    +    }
    +
    +    /**
    +     * Render the SQL for a sub-set of the <code>IN</code> clause's values
    +     */
    +    private void toSQLSubValues(RenderContext context, List<Field<?>> subValues) {
    +        context.sql(field)
    +               .sql(" ")
    +               .keyword(operator.toSQL())
    +               .sql(" (");
    +
    +        String separator = "";
    +        for (Field<?> value : subValues) {
    +            context.sql(separator);
    +            context.sql(value);
    +
    +            separator = ", ";
    +        }
    +
    +        context.sql(")");
    +    }
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/impl/InOperator.java b/jOOQ/src/main/java/org/jooq/impl/InOperator.java
    new file mode 100644
    index 00000000000..147924449c1
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/impl/InOperator.java
    @@ -0,0 +1,64 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq.impl;
    +
    +/**
    + * A comparator to be used in in conditions
    + *
    + * @author Lukas Eder
    + */
    +enum InOperator {
    +
    +    /**
    +     * IN
    +     */
    +    IN("in"),
    +
    +    /**
    +     * NOT IN
    +     */
    +    NOT_IN("not in");
    +
    +    private final String sql;
    +
    +    private InOperator(String sql) {
    +        this.sql = sql;
    +    }
    +
    +    public String toSQL() {
    +        return sql;
    +    }
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/impl/InsertImpl.java b/jOOQ/src/main/java/org/jooq/impl/InsertImpl.java
    new file mode 100644
    index 00000000000..b59deffe509
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/impl/InsertImpl.java
    @@ -0,0 +1,246 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq.impl;
    +
    +import java.util.ArrayList;
    +import java.util.Arrays;
    +import java.util.Collection;
    +import java.util.List;
    +import java.util.Map;
    +
    +import org.jooq.AttachableInternal;
    +import org.jooq.Configuration;
    +import org.jooq.Field;
    +import org.jooq.Insert;
    +import org.jooq.InsertOnDuplicateSetMoreStep;
    +import org.jooq.InsertQuery;
    +import org.jooq.InsertResultStep;
    +import org.jooq.InsertSetMoreStep;
    +import org.jooq.InsertValuesStep;
    +import org.jooq.Query;
    +import org.jooq.Record;
    +import org.jooq.Result;
    +import org.jooq.Select;
    +import org.jooq.Table;
    +
    +/**
    + * @author Lukas Eder
    + */
    +class InsertImpl<R extends Record>
    +    extends AbstractDelegatingQueryPart<InsertQuery<R>>
    +    implements
    +
    +    // Cascading interface implementations for Insert behaviour
    +    InsertValuesStep<R>,
    +    InsertSetMoreStep<R>,
    +    InsertOnDuplicateSetMoreStep<R>,
    +    InsertResultStep<R> {
    +
    +    /**
    +     * Generated UID
    +     */
    +    private static final long    serialVersionUID = 4222898879771679107L;
    +
    +    private final List<Field<?>> fields;
    +    private final Table<R>       into;
    +    private boolean              onDuplicateKeyUpdate;
    +
    +    InsertImpl(Configuration configuration, Table<R> into, Collection<? extends Field<?>> fields) {
    +        super(new InsertQueryImpl<R>(configuration, into));
    +
    +        this.into = into;
    +        this.fields = new ArrayList<Field<?>>(fields);
    +    }
    +
    +    // -------------------------------------------------------------------------
    +    // The Query API
    +    // -------------------------------------------------------------------------
    +
    +    @Override
    +    public final int execute() {
    +        return getDelegate().execute();
    +    }
    +
    +    @Override
    +    public final Query bind(String param, Object value) {
    +        return getDelegate().bind(param, value);
    +    }
    +
    +    @Override
    +    public final Query bind(int index, Object value) {
    +        return getDelegate().bind(index, value);
    +    }
    +
    +    // -------------------------------------------------------------------------
    +    // The DSL API
    +    // -------------------------------------------------------------------------
    +
    +    @Override
    +    public final Insert<R> select(Select<?> select) {
    +        Configuration configuration = getDelegate().internalAPI(AttachableInternal.class).getConfiguration();
    +        return new InsertSelectQueryImpl<R>(configuration, into, fields, select);
    +    }
    +
    +    @Override
    +    public final InsertImpl<R> values(Object... values) {
    +        if (getFields().size() != values.length) {
    +            throw new IllegalArgumentException("The number of values must match the number of fields");
    +        }
    +
    +        getDelegate().newRecord();
    +        for (int i = 0; i < getFields().size(); i++) {
    +            addValue(getDelegate(), getFields().get(i), values[i]);
    +        }
    +
    +        return this;
    +    }
    +
    +    @Override
    +    public final InsertImpl<R> values(Collection<?> values) {
    +        return values(values.toArray());
    +    }
    +
    +    private <T> void addValue(InsertQuery<R> delegate, Field<T> field, Object object) {
    +        delegate.addValue(field, field.getDataType().convert(object));
    +    }
    +
    +    @SuppressWarnings("unchecked")
    +    @Override
    +    public final InsertImpl<R> values(Field<?>... values) {
    +        List<Field<?>> values1 = Arrays.asList(values);
    +        if (getFields().size() != values1.size()) {
    +            throw new IllegalArgumentException("The number of values must match the number of fields");
    +        }
    +
    +        getDelegate().newRecord();
    +        for (int i = 0; i < getFields().size(); i++) {
    +            // javac has trouble when inferring Object for T. Use Void instead
    +            getDelegate().addValue((Field<Void>) getFields().get(i), (Field<Void>) values1.get(i));
    +        }
    +
    +        return this;
    +    }
    +
    +    private final List<Field<?>> getFields() {
    +
    +        // [#885] If this insert is called with an implicit field name set, take
    +        // the fields from the underlying table.
    +        if (fields.size() == 0) {
    +            fields.addAll(into.getFields());
    +        }
    +
    +        return fields;
    +    }
    +
    +    @Override
    +    public final InsertImpl<R> onDuplicateKeyUpdate() {
    +        onDuplicateKeyUpdate = true;
    +        getDelegate().onDuplicateKeyUpdate(true);
    +        return this;
    +    }
    +
    +    @Override
    +    public final <T> InsertImpl<R> set(Field<T> field, T value) {
    +        if (onDuplicateKeyUpdate) {
    +            getDelegate().addValueForUpdate(field, value);
    +        }
    +        else {
    +            getDelegate().addValue(field, value);
    +        }
    +
    +        return this;
    +    }
    +
    +    @Override
    +    public final <T> InsertImpl<R> set(Field<T> field, Field<T> value) {
    +        if (onDuplicateKeyUpdate) {
    +            getDelegate().addValueForUpdate(field, value);
    +        }
    +        else {
    +            getDelegate().addValue(field, value);
    +        }
    +
    +        return this;
    +    }
    +
    +    @Override
    +    public final InsertImpl<R> set(Map<? extends Field<?>, ?> map) {
    +        if (onDuplicateKeyUpdate) {
    +            getDelegate().addValuesForUpdate(map);
    +        }
    +        else {
    +            getDelegate().addValues(map);
    +        }
    +
    +        return this;
    +    }
    +
    +    @Override
    +    public final InsertImpl<R> newRecord() {
    +        getDelegate().newRecord();
    +        return this;
    +    }
    +
    +    @Override
    +    public final InsertImpl<R> returning() {
    +        getDelegate().setReturning();
    +        return this;
    +    }
    +
    +    @Override
    +    public final InsertImpl<R> returning(Field<?>... f) {
    +        getDelegate().setReturning(f);
    +        return this;
    +    }
    +
    +    @Override
    +    public final InsertImpl<R> returning(Collection<? extends Field<?>> f) {
    +        getDelegate().setReturning(f);
    +        return this;
    +    }
    +
    +    @Override
    +    public final Result<R> fetch() {
    +        getDelegate().execute();
    +        return getDelegate().getReturnedRecords();
    +    }
    +
    +    @Override
    +    public final R fetchOne() {
    +        getDelegate().execute();
    +        return getDelegate().getReturnedRecord();
    +    }
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/impl/InsertQueryImpl.java b/jOOQ/src/main/java/org/jooq/impl/InsertQueryImpl.java
    new file mode 100644
    index 00000000000..0811a2c7e9e
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/impl/InsertQueryImpl.java
    @@ -0,0 +1,553 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +
    +package org.jooq.impl;
    +
    +import static org.jooq.impl.Factory.val;
    +import static org.jooq.util.sqlite.SQLiteFactory.rowid;
    +
    +import java.sql.Connection;
    +import java.sql.ResultSet;
    +import java.sql.SQLException;
    +import java.sql.Statement;
    +import java.util.ArrayList;
    +import java.util.Arrays;
    +import java.util.Collection;
    +import java.util.List;
    +import java.util.Map;
    +
    +import org.jooq.Attachable;
    +import org.jooq.BindContext;
    +import org.jooq.Condition;
    +import org.jooq.Configuration;
    +import org.jooq.ExecuteContext;
    +import org.jooq.ExecuteListener;
    +import org.jooq.Field;
    +import org.jooq.Identity;
    +import org.jooq.InsertQuery;
    +import org.jooq.Merge;
    +import org.jooq.QueryPart;
    +import org.jooq.Record;
    +import org.jooq.RenderContext;
    +import org.jooq.Result;
    +import org.jooq.SQLDialect;
    +import org.jooq.Table;
    +import org.jooq.UpdatableTable;
    +import org.jooq.exception.SQLDialectNotSupportedException;
    +import org.jooq.util.sqlite.SQLiteFactory;
    +
    +/**
    + * @author Lukas Eder
    + */
    +class InsertQueryImpl<R extends Record> extends AbstractStoreQuery<R> implements InsertQuery<R> {
    +
    +    private static final long        serialVersionUID = 4466005417945353842L;
    +
    +    private final FieldMapForUpdate  updateMap;
    +    private final FieldMapsForInsert insertMaps;
    +    private final FieldList          returning;
    +    private Result<R>                returned;
    +    private boolean                  onDuplicateKeyUpdate;
    +
    +    InsertQueryImpl(Configuration configuration, Table<R> into) {
    +        super(configuration, into);
    +
    +        updateMap = new FieldMapForUpdate();
    +        insertMaps = new FieldMapsForInsert();
    +        returning = new FieldList();
    +    }
    +
    +    @Override
    +    protected final List<Attachable> getAttachables0() {
    +        return getAttachables(insertMaps, updateMap);
    +    }
    +
    +    @Override
    +    public final void setRecord(R record) {
    +        for (Field<?> field : record.getFields()) {
    +            addValue(record, field);
    +        }
    +    }
    +
    +    @Override
    +    public final void newRecord() {
    +        insertMaps.newRecord();
    +    }
    +
    +    @Override
    +    protected final FieldMapForInsert getValues() {
    +        return insertMaps.getMap();
    +    }
    +
    +    @Override
    +    public final void addRecord(R record) {
    +        newRecord();
    +        setRecord(record);
    +    }
    +
    +    @Override
    +    public final void onDuplicateKeyUpdate(boolean flag) {
    +        this.onDuplicateKeyUpdate = flag;
    +    }
    +
    +    @Override
    +    public final <T> void addValueForUpdate(Field<T> field, T value) {
    +        addValueForUpdate(field, val(value, field));
    +    }
    +
    +    @Override
    +    public final <T> void addValueForUpdate(Field<T> field, Field<T> value) {
    +        if (value == null) {
    +            updateMap.put(field, val(null, field));
    +        }
    +        else {
    +            updateMap.put(field, value);
    +        }
    +    }
    +
    +    @Override
    +    public final void addValuesForUpdate(Map<? extends Field<?>, ?> map) {
    +        updateMap.set(map);
    +    }
    +
    +    @Override
    +    public final void addValues(Map<? extends Field<?>, ?> map) {
    +        insertMaps.getMap().set(map);
    +    }
    +
    +    @Override
    +    public final void toSQL(RenderContext context) {
    +        if (!onDuplicateKeyUpdate) {
    +            toSQLInsert(context);
    +        }
    +
    +        // ON DUPLICATE KEY UPDATE clause
    +        else {
    +            switch (context.getDialect()) {
    +
    +                // MySQL has a nice syntax for this
    +                case CUBRID:
    +                case MYSQL: {
    +                    toSQLInsert(context);
    +                    context.formatSeparator()
    +                           .keyword("on duplicate key update ")
    +                           .sql(updateMap);
    +
    +                    break;
    +                }
    +
    +                // Some dialects can't really handle this clause. Simulation
    +                // should be done in two steps
    +                case H2: {
    +                    throw new SQLDialectNotSupportedException("The ON DUPLICATE KEY UPDATE clause cannot be simulated for " + context.getDialect());
    +                }
    +
    +                // Some databases allow for simulating this clause using a
    +                // MERGE statement
    +                case DB2:
    +                case HSQLDB:
    +                case ORACLE:
    +                case SQLSERVER:
    +                case SYBASE: {
    +                    context.sql(toMerge());
    +                    break;
    +                }
    +
    +                default:
    +                    throw new SQLDialectNotSupportedException("The ON DUPLICATE KEY UPDATE clause cannot be simulated for " + context.getDialect());
    +            }
    +        }
    +    }
    +
    +    @Override
    +    public final void bind(BindContext context) {
    +        if (!onDuplicateKeyUpdate) {
    +            bindInsert(context);
    +        }
    +
    +        // ON DUPLICATE KEY UPDATE clause
    +        else {
    +            switch (context.getDialect()) {
    +
    +                // MySQL has a nice syntax for this
    +                case CUBRID:
    +                case MYSQL: {
    +                    bindInsert(context);
    +                    break;
    +                }
    +
    +                // Some dialects can't really handle this clause. Simulation
    +                // is done in two steps
    +                case H2: {
    +                    throw new SQLDialectNotSupportedException("The ON DUPLICATE KEY UPDATE clause cannot be simulated for " + context.getDialect());
    +                }
    +
    +                // Some databases allow for simulating this clause using a
    +                // MERGE statement
    +                case DB2:
    +                case HSQLDB:
    +                case ORACLE:
    +                case SQLSERVER:
    +                case SYBASE: {
    +                    context.bind(toMerge());
    +                    break;
    +                }
    +
    +                default:
    +                    throw new SQLDialectNotSupportedException("The ON DUPLICATE KEY UPDATE clause cannot be simulated for " + context.getDialect());
    +            }
    +        }
    +    }
    +
    +    private final void toSQLInsert(RenderContext context) {
    +        context.keyword("insert into ")
    +               .sql(getInto())
    +               .sql(" ")
    +               .sql(insertMaps);
    +
    +        if (!returning.isEmpty()) {
    +            switch (context.getDialect()) {
    +                case POSTGRES:
    +                    context.formatSeparator()
    +                           .keyword("returning ")
    +                           .sql(returning);
    +                    break;
    +
    +                default:
    +                    // Other dialects don't render a RETURNING clause, but
    +                    // use JDBC's Statement.RETURN_GENERATED_KEYS mode instead
    +            }
    +        }
    +    }
    +
    +    private final void bindInsert(BindContext context) {
    +        context.bind(getInto())
    +               .bind(insertMaps)
    +               .bind(updateMap);
    +
    +        switch (context.getDialect()) {
    +            case POSTGRES:
    +                context.bind((QueryPart) returning);
    +                break;
    +
    +            default:
    +                // Other dialects don't bind a RETURNING clause, but
    +                // use JDBC's Statement.RETURN_GENERATED_KEYS mode instead
    +        }
    +    }
    +
    +    @SuppressWarnings("unchecked")
    +    private final Merge<R> toMerge() {
    +        if (getInto() instanceof UpdatableTable) {
    +            UpdatableTable<R> into = (UpdatableTable<R>) getInto();
    +
    +            Condition condition = null;
    +            List<Field<?>> key = new ArrayList<Field<?>>();
    +
    +            for (Field<?> f : into.getMainKey().getFields()) {
    +                Field<Object> field = (Field<Object>) f;
    +                Field<Object> value = (Field<Object>) insertMaps.getMap().get(field);
    +
    +                key.add(value);
    +                Condition other = field.equal(value);
    +
    +                if (condition == null) {
    +                    condition = other;
    +                }
    +                else {
    +                    condition = condition.and(other);
    +                }
    +            }
    +
    +            return create().mergeInto(into)
    +                           .usingDual()
    +                           .on(condition)
    +                           .whenMatchedThenUpdate()
    +                           .set(updateMap)
    +                           .whenNotMatchedThenInsert(insertMaps.getMap().keySet())
    +                           .values(insertMaps.getMap().values());
    +        }
    +        else {
    +            throw new IllegalStateException("The ON DUPLICATE KEY UPDATE clause cannot be simulated when inserting into non-updatable tables : " + getInto());
    +        }
    +    }
    +
    +    @Override
    +    protected final boolean isExecutable() {
    +        return insertMaps.isExecutable();
    +    }
    +
    +    @Override
    +    protected final void prepare(ExecuteContext ctx) throws SQLException {
    +        Connection connection = ctx.getConnection();
    +
    +        // Just in case, always set Sybase ASE statement mode to return
    +        // Generated keys if client code wants to SELECT @@identity afterwards
    +        if (ctx.getDialect() == SQLDialect.ASE) {
    +            ctx.statement(connection.prepareStatement(ctx.sql(), Statement.RETURN_GENERATED_KEYS));
    +            return;
    +        }
    +
    +        // Normal statement preparing if no values should be returned
    +        else if (returning.isEmpty()) {
    +            super.prepare(ctx);
    +            return;
    +        }
    +
    +        // Values should be returned from the INSERT
    +        else {
    +            switch (ctx.getDialect()) {
    +
    +                // Postgres uses the RETURNING clause in SQL
    +                case POSTGRES:
    +                // SQLite will select last_insert_rowid() after the INSER
    +                case SQLITE:
    +                // Sybase will select @@identity after the INSERT
    +                case CUBRID:
    +                case SYBASE:
    +                    super.prepare(ctx);
    +                    return;
    +
    +                // Some dialects can only return AUTO_INCREMENT values
    +                // Other values have to be fetched in a second step
    +                // [#1260] TODO CUBRID supports this, but there's a JDBC bug
    +                case ASE:
    +                case DERBY:
    +                case H2:
    +                case INGRES:
    +                case MYSQL:
    +                case SQLSERVER:
    +                    ctx.statement(connection.prepareStatement(ctx.sql(), Statement.RETURN_GENERATED_KEYS));
    +                    return;
    +
    +                // The default is to return all requested fields directly
    +                default: {
    +                    List<String> names = new ArrayList<String>();
    +
    +                    for (Field<?> field : returning) {
    +                        names.add(field.getName());
    +                    }
    +
    +                    ctx.statement(connection.prepareStatement(ctx.sql(), names.toArray(new String[names.size()])));
    +                    return;
    +                }
    +            }
    +        }
    +    }
    +
    +    @Override
    +    protected final int execute(ExecuteContext ctx, ExecuteListener listener) throws SQLException {
    +        if (returning.isEmpty()) {
    +            return super.execute(ctx, listener);
    +        }
    +        else {
    +            int result = 1;
    +            ResultSet rs;
    +            switch (ctx.getDialect()) {
    +
    +                // SQLite can select _rowid_ after the insert
    +                case SQLITE: {
    +                    listener.executeStart(ctx);
    +                    result = ctx.statement().executeUpdate();
    +                    listener.executeEnd(ctx);
    +
    +                    SQLiteFactory create = new SQLiteFactory(ctx.getConnection(), ctx.getSettings());
    +                    returned =
    +                    create.select(returning)
    +                          .from(getInto())
    +                          .where(rowid().equal(rowid().getDataType().convert(create.lastID())))
    +                          .fetchInto(getInto());
    +
    +                    return result;
    +                }
    +
    +                // Sybase can select @@identity after the insert
    +                // TODO [#832] Fix this. This might be a driver issue. JDBC
    +                // Generated keys don't work with jconn3, but they seem to work
    +                // with jTDS (which is used for Sybase ASE integration)
    +                case CUBRID:
    +                case SYBASE: {
    +                    listener.executeStart(ctx);
    +                    result = ctx.statement().executeUpdate();
    +                    listener.executeEnd(ctx);
    +
    +                    selectReturning(ctx.configuration(), create(ctx).lastID());
    +                    return result;
    +                }
    +
    +                // Some dialects can only retrieve "identity" (AUTO_INCREMENT) values
    +                // Additional values have to be fetched explicitly
    +                // [#1260] TODO CUBRID supports this, but there's a JDBC bug
    +                case ASE:
    +                case DERBY:
    +                case H2:
    +                case INGRES:
    +                case MYSQL:
    +                case SQLSERVER: {
    +                    listener.executeStart(ctx);
    +                    result = ctx.statement().executeUpdate();
    +                    listener.executeEnd(ctx);
    +
    +                    rs = ctx.statement().getGeneratedKeys();
    +
    +                    try {
    +                        List<Object> list = new ArrayList<Object>();
    +                        while (rs.next()) {
    +                            list.add(rs.getObject(1));
    +                        }
    +
    +                        selectReturning(ctx, list.toArray());
    +                        return result;
    +                    }
    +                    finally {
    +                        rs.close();
    +                    }
    +                }
    +
    +                // Postgres can execute the INSERT .. RETURNING clause like
    +                // a select clause. JDBC support is not implemented
    +                case POSTGRES: {
    +                    listener.executeStart(ctx);
    +                    rs = ctx.statement().executeQuery();
    +                    listener.executeEnd(ctx);
    +
    +                    break;
    +                }
    +
    +                // These dialects have full JDBC support
    +                case DB2:
    +                case HSQLDB:
    +                case ORACLE:
    +                default: {
    +                    listener.executeStart(ctx);
    +                    result = ctx.statement().executeUpdate();
    +                    listener.executeEnd(ctx);
    +
    +                    rs = ctx.statement().getGeneratedKeys();
    +                    break;
    +                }
    +            }
    +
    +            ExecuteContext ctx2 = new DefaultExecuteContext(ctx.configuration());
    +            ExecuteListener listener2 = new ExecuteListeners(ctx2);
    +
    +            ctx2.resultSet(rs);
    +            returned = new CursorImpl<R>(ctx2, listener2, returning, getInto().getRecordType()).fetch();
    +            return result;
    +        }
    +    }
    +
    +    /**
    +     * Get the returning record in those dialects that do not support fetching
    +     * arbitrary fields from JDBC's {@link Statement#getGeneratedKeys()} method.
    +     */
    +    @SuppressWarnings("unchecked")
    +    private final void selectReturning(Configuration configuration, Object... values) {
    +        if (values != null && values.length > 0) {
    +            Table<R> into = getInto();
    +
    +            // This shouldn't be null, as relevant dialects should
    +            // return empty generated keys ResultSet
    +            if (into.getIdentity() != null) {
    +                Field<Number> field = (Field<Number>) into.getIdentity().getField();
    +                Number[] ids = new Number[values.length];
    +                for (int i = 0; i < values.length; i++) {
    +                    ids[i] = field.getDataType().convert(values[i]);
    +                }
    +
    +                // Only the IDENTITY value was requested. No need for an
    +                // additional query
    +                if (returning.size() == 1 && returning.get(0).equals(field)) {
    +                    for (Number id : ids) {
    +                        R typed = Util.newRecord(into, configuration);
    +                        ((AbstractRecord) typed).setValue(field, new Value<Number>(id));
    +                        getReturnedRecords().add(typed);
    +                    }
    +                }
    +
    +                // Other values are requested, too. Run another query
    +                else {
    +                    returned =
    +                    create(configuration).select(returning)
    +                                         .from(into)
    +                                         .where(field.in(ids))
    +                                         .fetchInto(into);
    +                }
    +            }
    +        }
    +    }
    +
    +    @Override
    +    public final void setReturning() {
    +        setReturning(getInto().getFields());
    +    }
    +
    +    @Override
    +    public final void setReturning(Identity<R, ? extends Number> identity) {
    +        if (identity != null) {
    +            setReturning(identity.getField());
    +        }
    +    }
    +
    +    @Override
    +    public final void setReturning(Field<?>... fields) {
    +        setReturning(Arrays.asList(fields));
    +    }
    +
    +    @Override
    +    public final void setReturning(Collection<? extends Field<?>> fields) {
    +        returning.clear();
    +        returning.addAll(fields);
    +    }
    +
    +    @Override
    +    public final R getReturnedRecord() {
    +        if (getReturnedRecords().size() == 0) {
    +            return null;
    +        }
    +
    +        return getReturnedRecords().get(0);
    +    }
    +
    +    @Override
    +    public final Result<R> getReturnedRecords() {
    +        if (returned == null) {
    +            returned = new ResultImpl<R>(getConfiguration(), returning);
    +        }
    +
    +        return returned;
    +    }
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/impl/InsertSelectQueryImpl.java b/jOOQ/src/main/java/org/jooq/impl/InsertSelectQueryImpl.java
    new file mode 100644
    index 00000000000..0353c8a1d71
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/impl/InsertSelectQueryImpl.java
    @@ -0,0 +1,102 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq.impl;
    +
    +import java.util.List;
    +
    +import org.jooq.Attachable;
    +import org.jooq.BindContext;
    +import org.jooq.Configuration;
    +import org.jooq.Field;
    +import org.jooq.Insert;
    +import org.jooq.Record;
    +import org.jooq.RenderContext;
    +import org.jooq.Select;
    +import org.jooq.Table;
    +
    +/**
    + * @author Lukas Eder
    + */
    +class InsertSelectQueryImpl<R extends Record> extends AbstractQuery implements Insert<R> {
    +
    +    /**
    +     * Generated UID
    +     */
    +    private static final long    serialVersionUID = -1540775270159018516L;
    +
    +    private final Table<?>       into;
    +    private final List<Field<?>> fields;
    +    private final Select<?>      select;
    +
    +    InsertSelectQueryImpl(Configuration configuration, Table<?> into, List<Field<?>> fields, Select<?> select) {
    +        super(configuration);
    +
    +        this.into = into;
    +        this.fields = (fields == null || fields.isEmpty()) ? into.getFields() : fields;
    +        this.select = select;
    +    }
    +
    +    @Override
    +    public final List<Attachable> getAttachables() {
    +        return getAttachables(into, select);
    +    }
    +
    +    @Override
    +    public final void toSQL(RenderContext context) {
    +        context.keyword("insert into ")
    +               .sql(into)
    +               .sql(" (");
    +
    +        String separator = "";
    +        for (Field<?> field : fields) {
    +            context.sql(separator)
    +                   .literal(field.getName());
    +
    +            separator = ", ";
    +        }
    +
    +        context.sql(")")
    +               .formatSeparator()
    +               .sql(select);
    +    }
    +
    +    @Override
    +    public final void bind(BindContext context) {
    +        context.bind(into);
    +        context.bind(fields);
    +        context.bind(select);
    +    }
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/impl/JoinTable.java b/jOOQ/src/main/java/org/jooq/impl/JoinTable.java
    new file mode 100644
    index 00000000000..dcdebb33e7d
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/impl/JoinTable.java
    @@ -0,0 +1,427 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq.impl;
    +
    +import static java.util.Arrays.asList;
    +import static org.jooq.JoinType.CROSS_JOIN;
    +import static org.jooq.JoinType.JOIN;
    +import static org.jooq.JoinType.LEFT_OUTER_JOIN;
    +import static org.jooq.JoinType.NATURAL_JOIN;
    +import static org.jooq.JoinType.NATURAL_LEFT_OUTER_JOIN;
    +import static org.jooq.JoinType.NATURAL_RIGHT_OUTER_JOIN;
    +import static org.jooq.JoinType.RIGHT_OUTER_JOIN;
    +import static org.jooq.SQLDialect.ASE;
    +import static org.jooq.SQLDialect.CUBRID;
    +import static org.jooq.SQLDialect.DB2;
    +import static org.jooq.SQLDialect.H2;
    +import static org.jooq.SQLDialect.INGRES;
    +import static org.jooq.SQLDialect.SQLSERVER;
    +import static org.jooq.SQLDialect.SYBASE;
    +import static org.jooq.impl.Factory.condition;
    +import static org.jooq.impl.Factory.exists;
    +import static org.jooq.impl.Factory.notExists;
    +
    +import java.util.ArrayList;
    +import java.util.Collection;
    +import java.util.List;
    +
    +import org.jooq.Attachable;
    +import org.jooq.BindContext;
    +import org.jooq.Condition;
    +import org.jooq.Field;
    +import org.jooq.ForeignKey;
    +import org.jooq.JoinType;
    +import org.jooq.Operator;
    +import org.jooq.QueryPart;
    +import org.jooq.Record;
    +import org.jooq.RenderContext;
    +import org.jooq.Select;
    +import org.jooq.Table;
    +import org.jooq.TableField;
    +import org.jooq.TableLike;
    +import org.jooq.TableOnConditionStep;
    +import org.jooq.TableOnStep;
    +import org.jooq.exception.DataAccessException;
    +
    +/**
    + * A table consisting of two joined tables and possibly a join condition
    + *
    + * @author Lukas Eder
    + */
    +class JoinTable extends AbstractTable<Record> implements TableOnStep, TableOnConditionStep {
    +
    +    /**
    +     * Generated UID
    +     */
    +    private static final long           serialVersionUID = 8377996833996498178L;
    +
    +    private final Table<?>              lhs;
    +    private final Table<?>              rhs;
    +
    +    private final JoinType              type;
    +    private final ConditionProviderImpl condition;
    +    private final FieldList             using;
    +
    +    JoinTable(TableLike<?> lhs, TableLike<?> rhs, JoinType type) {
    +        super("join");
    +
    +        this.lhs = lhs.asTable();
    +        this.rhs = rhs.asTable();
    +        this.type = type;
    +
    +        this.condition = new ConditionProviderImpl();
    +        this.using = new FieldList();
    +    }
    +
    +    // ------------------------------------------------------------------------
    +    // Table API
    +    // ------------------------------------------------------------------------
    +
    +    @SuppressWarnings({ "unchecked", "rawtypes" })
    +    @Override
    +    public final List<ForeignKey<Record, ?>> getReferences() {
    +        List<ForeignKey<?, ?>> result = new ArrayList<ForeignKey<?, ?>>();
    +
    +        result.addAll(lhs.getReferences());
    +        result.addAll(rhs.getReferences());
    +
    +        return (List) result;
    +    }
    +
    +    @Override
    +    public final void toSQL(RenderContext context) {
    +        context.sql(lhs)
    +               .formatSeparator()
    +               .keyword(translateType(context).toSQL())
    +               .sql(" ")
    +
    +               // [#671] Some databases formally require nested JOINS to be
    +               // wrapped in parentheses (e.g. MySQL)
    +               .sql(rhs instanceof JoinTable ? "(" : "")
    +               .sql(rhs)
    +               .sql(rhs instanceof JoinTable ? ")" : "");
    +
    +        // CROSS JOIN and NATURAL JOIN do not have any condition clauses
    +        if (!asList(CROSS_JOIN,
    +                    NATURAL_JOIN,
    +                    NATURAL_LEFT_OUTER_JOIN,
    +                    NATURAL_RIGHT_OUTER_JOIN).contains(translateType(context))) {
    +            toSQLJoinCondition(context);
    +        }
    +    }
    +
    +    /**
    +     * Translate the join type for SQL rendering
    +     */
    +    final JoinType translateType(RenderContext context) {
    +        if (simulateCrossJoin(context)) {
    +            return JOIN;
    +        }
    +        else if (simulateNaturalJoin(context)) {
    +            return JOIN;
    +        }
    +        else if (simulateNaturalLeftOuterJoin(context)) {
    +            return LEFT_OUTER_JOIN;
    +        }
    +        else if (simulateNaturalRightOuterJoin(context)) {
    +            return RIGHT_OUTER_JOIN;
    +        }
    +        else {
    +            return type;
    +        }
    +    }
    +
    +    private final boolean simulateCrossJoin(RenderContext context) {
    +        return type == CROSS_JOIN && context.getDialect() == ASE;
    +    }
    +
    +    private final boolean simulateNaturalJoin(RenderContext context) {
    +        return type == NATURAL_JOIN && asList(ASE, CUBRID, DB2, INGRES, SQLSERVER).contains(context.getDialect());
    +    }
    +
    +    private final boolean simulateNaturalLeftOuterJoin(RenderContext context) {
    +        return type == NATURAL_LEFT_OUTER_JOIN && asList(ASE, CUBRID, DB2, H2, INGRES, SQLSERVER).contains(context.getDialect());
    +    }
    +
    +    private final boolean simulateNaturalRightOuterJoin(RenderContext context) {
    +        return type == NATURAL_RIGHT_OUTER_JOIN && asList(ASE, CUBRID, DB2, H2, INGRES, SQLSERVER).contains(context.getDialect());
    +    }
    +
    +    private final void toSQLJoinCondition(RenderContext context) {
    +        if (!using.isEmpty()) {
    +
    +            // [#582] Some dialects don't explicitly support a JOIN .. USING
    +            // syntax. This can be simulated with JOIN .. ON
    +            if (asList(ASE, CUBRID, DB2, H2, SQLSERVER, SYBASE).contains(context.getDialect())) {
    +                String glue = " on ";
    +                for (Field<?> field : using) {
    +                    context.keyword(glue)
    +                           .sql(lhs.getField(field))
    +                           .sql(" = ")
    +                           .sql(rhs.getField(field));
    +
    +                    glue = " and ";
    +                }
    +            }
    +
    +            // Native supporters of JOIN .. USING
    +            else {
    +                context.keyword(" using (");
    +                Util.toSQLNames(context, using);
    +                context.sql(")");
    +            }
    +        }
    +
    +        // [#577] If any NATURAL JOIN syntax needs to be simulated, find out
    +        // common fields in lhs and rhs of the JOIN clause
    +        else if (simulateNaturalJoin(context) ||
    +                 simulateNaturalLeftOuterJoin(context) ||
    +                 simulateNaturalRightOuterJoin(context)) {
    +
    +            String glue = " on ";
    +            for (Field<?> field : lhs.getFields()) {
    +                Field<?> other = rhs.getField(field);
    +
    +                if (other != null) {
    +                    context.keyword(glue)
    +                           .sql(field)
    +                           .sql(" = ")
    +                           .sql(other);
    +
    +                    glue = " and ";
    +                }
    +            }
    +        }
    +
    +        // Regular JOIN condition
    +        else {
    +            context.keyword(" on ").sql(condition);
    +        }
    +    }
    +
    +    @Override
    +    public final void bind(BindContext context) throws DataAccessException {
    +        context.bind(lhs).bind(rhs);
    +
    +        if (!using.isEmpty()) {
    +            context.bind((QueryPart) using);
    +        }
    +        else {
    +            context.bind(condition);
    +        }
    +    }
    +
    +    @Override
    +    public final Table<Record> as(String alias) {
    +        return new TableAlias<Record>(this, alias, true);
    +    }
    +
    +    @Override
    +    public final Class<? extends Record> getRecordType() {
    +        return RecordImpl.class;
    +    }
    +
    +    @Override
    +    protected final FieldList getFieldList() {
    +        FieldList result = new FieldList();
    +
    +        result.addAll(lhs.asTable().getFields());
    +        result.addAll(rhs.asTable().getFields());
    +
    +        return result;
    +    }
    +
    +    @Override
    +    protected final List<Attachable> getAttachables0() {
    +        return getAttachables(lhs, rhs, condition, using);
    +    }
    +
    +    @Override
    +    public final boolean declaresTables() {
    +        return true;
    +    }
    +
    +    // ------------------------------------------------------------------------
    +    // Join API
    +    // ------------------------------------------------------------------------
    +
    +    @Override
    +    public final JoinTable on(Condition... conditions) {
    +        condition.addConditions(conditions);
    +        return this;
    +    }
    +
    +    @Override
    +    public final JoinTable on(String sql) {
    +        and(sql);
    +        return this;
    +    }
    +
    +    @Override
    +    public final JoinTable on(String sql, Object... bindings) {
    +        and(sql, bindings);
    +        return this;
    +    }
    +
    +    @Override
    +    public final JoinTable onKey() throws DataAccessException {
    +        List<?> leftToRight = lhs.getReferencesTo(rhs);
    +        List<?> rightToLeft = rhs.getReferencesTo(lhs);
    +
    +        if (leftToRight.size() == 1 && rightToLeft.size() == 0) {
    +            return onKey((ForeignKey<?, ?>) leftToRight.get(0));
    +        }
    +        else if (rightToLeft.size() == 1 && leftToRight.size() == 0) {
    +            return onKey((ForeignKey<?, ?>) rightToLeft.get(0));
    +        }
    +
    +        throw onKeyException();
    +    }
    +
    +    @Override
    +    public final JoinTable onKey(TableField<?, ?>... keyFields) throws DataAccessException {
    +        if (keyFields != null && keyFields.length > 0) {
    +            if (keyFields[0].getTable().equals(lhs)) {
    +                for (ForeignKey<?, ?> key : lhs.getReferences()) {
    +                    if (key.getFields().containsAll(asList(keyFields))) {
    +                        return onKey(key);
    +                    }
    +                }
    +            }
    +            else if (keyFields[0].getTable().equals(rhs)) {
    +                for (ForeignKey<?, ?> key : rhs.getReferences()) {
    +                    if (key.getFields().containsAll(asList(keyFields))) {
    +                        return onKey(key);
    +                    }
    +                }
    +            }
    +        }
    +
    +        throw onKeyException();
    +    }
    +
    +    @SuppressWarnings("unchecked")
    +    @Override
    +    public final JoinTable onKey(ForeignKey<?, ?> key) {
    +        JoinTable result = this;
    +
    +        TableField<?, ?>[] references = key.getFieldsArray();
    +        TableField<?, ?>[] referenced = key.getKey().getFieldsArray();
    +
    +        for (int i = 0; i < references.length; i++) {
    +            result.and(((Field<Void>) references[i]).equal((Field<Void>) referenced[i]));
    +        }
    +
    +        return result;
    +    }
    +
    +    private final DataAccessException onKeyException() {
    +        return new DataAccessException("Key ambiguous between tables " + lhs + " and " + rhs);
    +    }
    +
    +    @Override
    +    public final JoinTable using(Field<?>... fields) {
    +        return using(asList(fields));
    +    }
    +
    +    @Override
    +    public final JoinTable using(Collection<? extends Field<?>> fields) {
    +        using.addAll(fields);
    +        return this;
    +    }
    +
    +    @Override
    +    public final JoinTable and(Condition c) {
    +        condition.addConditions(c);
    +        return this;
    +    }
    +
    +    @Override
    +    public final JoinTable and(String sql) {
    +        return and(condition(sql));
    +    }
    +
    +    @Override
    +    public final JoinTable and(String sql, Object... bindings) {
    +        return and(condition(sql, bindings));
    +    }
    +
    +    @Override
    +    public final JoinTable andNot(Condition c) {
    +        return and(c.not());
    +    }
    +
    +    @Override
    +    public final JoinTable andExists(Select<?> select) {
    +        return and(exists(select));
    +    }
    +
    +    @Override
    +    public final JoinTable andNotExists(Select<?> select) {
    +        return and(notExists(select));
    +    }
    +
    +    @Override
    +    public final JoinTable or(Condition c) {
    +        condition.addConditions(Operator.OR, c);
    +        return this;
    +    }
    +
    +    @Override
    +    public final JoinTable or(String sql) {
    +        return or(condition(sql));
    +    }
    +
    +    @Override
    +    public final JoinTable or(String sql, Object... bindings) {
    +        return or(condition(sql, bindings));
    +    }
    +
    +    @Override
    +    public final JoinTable orNot(Condition c) {
    +        return or(c.not());
    +    }
    +
    +    @Override
    +    public final JoinTable orExists(Select<?> select) {
    +        return or(exists(select));
    +    }
    +
    +    @Override
    +    public final JoinTable orNotExists(Select<?> select) {
    +        return or(notExists(select));
    +    }
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/impl/Least.java b/jOOQ/src/main/java/org/jooq/impl/Least.java
    new file mode 100644
    index 00000000000..963fc4244dd
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/impl/Least.java
    @@ -0,0 +1,100 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq.impl;
    +
    +import static org.jooq.impl.Factory.function;
    +
    +import org.jooq.Configuration;
    +import org.jooq.DataType;
    +import org.jooq.Field;
    +
    +/**
    + * @author Lukas Eder
    + */
    +class Least<T> extends AbstractFunction<T> {
    +
    +    /**
    +     * Generated UID
    +     */
    +    private static final long serialVersionUID = -7273879239726265322L;
    +
    +    Least(DataType<T> type, Field<?>... arguments) {
    +        super("least", type, arguments);
    +    }
    +
    +    @SuppressWarnings("unchecked")
    +    @Override
    +    final Field<T> getFunction0(Configuration configuration) {
    +
    +        // In any dialect, a single argument is always the least
    +        if (getArguments().length == 1) {
    +            return (Field<T>) getArguments()[0];
    +        }
    +
    +        switch (configuration.getDialect()) {
    +            // This implementation has O(2^n) complexity. Better implementations
    +            // are very welcome
    +
    +            case ASE:
    +            case DERBY:
    +            case SQLSERVER:
    +            case SYBASE: {
    +                Field<T> first = (Field<T>) getArguments()[0];
    +                Field<T> other = (Field<T>) getArguments()[1];
    +
    +                if (getArguments().length > 2) {
    +                    Field<?>[] remaining = new Field<?>[getArguments().length - 2];
    +                    System.arraycopy(getArguments(), 2, remaining, 0, remaining.length);
    +
    +                    return Factory.decode()
    +                        .when(first.lessThan(other), Factory.least(first, remaining))
    +                        .otherwise(Factory.least(other, remaining));
    +                }
    +                else {
    +                    return Factory.decode()
    +                        .when(first.lessThan(other), first)
    +                        .otherwise(other);
    +                }
    +            }
    +
    +            case SQLITE:
    +                return function("min", getDataType(), getArguments());
    +
    +            default:
    +                return function("least", getDataType(), getArguments());
    +        }
    +    }
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/impl/Limit.java b/jOOQ/src/main/java/org/jooq/impl/Limit.java
    new file mode 100644
    index 00000000000..046f8a002c2
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/impl/Limit.java
    @@ -0,0 +1,349 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq.impl;
    +
    +import static org.jooq.RenderContext.CastMode.NEVER;
    +import static org.jooq.impl.Factory.val;
    +
    +import java.util.Collections;
    +import java.util.List;
    +
    +import org.jooq.Attachable;
    +import org.jooq.BindContext;
    +import org.jooq.Field;
    +import org.jooq.Param;
    +import org.jooq.RenderContext;
    +import org.jooq.RenderContext.CastMode;
    +import org.jooq.exception.DataAccessException;
    +
    +/**
    + * @author Lukas Eder
    + */
    +class Limit extends AbstractQueryPart {
    +
    +    /**
    +     * Generated UID
    +     */
    +    private static final long serialVersionUID = 2053741242981425602L;
    +    private Field<Integer>    numberOfRows;
    +    private Field<Integer>    offset;
    +    private Field<Integer>    offsetOrZero     = val(0);
    +    private Field<Integer>    offsetPlusOne    = val(1);
    +    private boolean           rendersParams;;
    +
    +    @Override
    +    public final List<Attachable> getAttachables() {
    +        return Collections.emptyList();
    +    }
    +
    +    @Override
    +    public final void toSQL(RenderContext context) {
    +        boolean inline = context.inline();
    +        CastMode castMode = context.castMode();
    +
    +        switch (context.getDialect()) {
    +
    +            // True LIMIT / OFFSET support provided by the following dialects
    +            // -----------------------------------------------------------------
    +            case MYSQL:    // No break
    +            case H2:       // No break
    +            case HSQLDB:   // No break
    +            case POSTGRES: // No break
    +            case SQLITE: {
    +                context.castMode(NEVER)
    +                       .formatSeparator()
    +                       .keyword("limit ")
    +                       .sql(numberOfRows)
    +                       .keyword(" offset ")
    +                       .sql(offsetOrZero)
    +                       .castMode(castMode);
    +
    +                break;
    +            }
    +
    +            // LIMIT [offset], [limit] supported by CUBRID
    +            // -------------------------------------------
    +            case CUBRID: {
    +                context.castMode(NEVER)
    +                       .formatSeparator()
    +                       .keyword("limit ")
    +                       .sql(offsetOrZero)
    +                       .sql(", ")
    +                       .sql(numberOfRows)
    +                       .castMode(castMode);
    +
    +                break;
    +            }
    +
    +            case DERBY: {
    +
    +                // Casts are not supported here...
    +                context.castMode(NEVER)
    +                       .formatSeparator()
    +                       .keyword("offset ")
    +                       .sql(offsetOrZero)
    +                       .keyword(" rows fetch next ")
    +                       .sql(numberOfRows)
    +                       .keyword(" rows only")
    +                       .castMode(castMode);
    +
    +                break;
    +            }
    +
    +            case INGRES: {
    +
    +                // INGRES doesn't allow bind variables in the
    +                // OFFSET m FETCH FIRST n ROWS ONLY clause
    +                context.inline(true)
    +                       .formatSeparator()
    +                       .keyword("offset ")
    +                       .sql(offsetOrZero)
    +                       .keyword(" fetch first ")
    +                       .sql(numberOfRows)
    +                       .keyword(" rows only")
    +                       .inline(inline);
    +
    +                break;
    +            }
    +
    +            // Nice TOP .. START AT support
    +            // ----------------------------
    +            case SYBASE: {
    +                context.inline(true)
    +                       .keyword("top ")
    +                       .sql(numberOfRows)
    +                       .keyword(" start at ")
    +                       .sql(offsetPlusOne)
    +                       .inline(inline);
    +
    +                break;
    +            }
    +
    +            // Only "TOP" support provided by the following dialects.
    +            // "OFFSET" support is simulated with nested selects
    +            // -----------------------------------------------------------------
    +            case DB2: {
    +                if (offset != null) {
    +                    throw new DataAccessException("DB2 does not support offsets in FETCH FIRST ROWS ONLY clause");
    +                }
    +
    +                // DB2 doesn't allow bind variables here. Casting is not needed.
    +                context.inline(true)
    +                       .formatSeparator()
    +                       .keyword("fetch first ")
    +                       .sql(numberOfRows)
    +                       .keyword(" rows only")
    +                       .inline(inline);
    +
    +                break;
    +            }
    +
    +            case ASE:
    +            case SQLSERVER: {
    +                if (offset != null) {
    +                    throw new DataAccessException("Offsets in TOP clause not supported");
    +                }
    +
    +                // SQL Server and Sybase don't allow bind variables in the TOP n clause
    +                context.inline(true)
    +                       .keyword("top ")
    +                       .sql(numberOfRows)
    +                       .inline(inline);
    +
    +                break;
    +            }
    +
    +            // A default implementation is necessary for hashCode() and toString()
    +            default: {
    +                context.castMode(NEVER)
    +                       .formatSeparator()
    +                       .keyword("limit ")
    +                       .sql(numberOfRows)
    +                       .keyword(" offset ")
    +                       .sql(offsetOrZero)
    +                       .castMode(castMode);
    +
    +                break;
    +            }
    +        }
    +    }
    +
    +    @Override
    +    public final void bind(BindContext context) {
    +        switch (context.getDialect()) {
    +
    +            // OFFSET .. LIMIT support provided by the following dialects
    +            // ----------------------------------------------------------
    +            case DERBY: {
    +                context.bind(offsetOrZero);
    +                context.bind(numberOfRows);
    +                break;
    +            }
    +
    +            // LIMIT .. OFFSET support provided by the following dialects
    +            // ----------------------------------------------------------
    +            case MYSQL:
    +            case HSQLDB:
    +            case H2:
    +            case POSTGRES:
    +            case SQLITE: {
    +                context.bind(numberOfRows);
    +                context.bind(offsetOrZero);
    +                break;
    +            }
    +
    +            // LIMIT [offset], [limit] supported by CUBRID
    +            // -------------------------------------------
    +            case CUBRID: {
    +                context.bind(offsetOrZero);
    +                context.bind(numberOfRows);
    +                break;
    +            }
    +
    +            // These dialects don't support bind variables at all
    +            case ASE:
    +            case INGRES: {
    +                break;
    +            }
    +
    +            // No bind variables in the TOP .. START AT clause
    +            // -----------------------------------------------
    +            case SYBASE: {
    +
    +                // TOP .. START AT clauses without bind variables
    +                if (!rendersParams) {
    +                }
    +
    +                // With simulated OFFSETs, no break, fall through
    +                else {
    +                    context.bind(getLowerRownum());
    +                    context.bind(getUpperRownum());
    +                }
    +
    +                break;
    +            }
    +
    +            // These dialects don't allow bind variables in their TOP clauses
    +            // --------------------------------------------------------------
    +            case DB2:
    +            case SQLSERVER: {
    +
    +                // TOP clauses without bind variables
    +                if (offset == null && !rendersParams) {
    +                }
    +
    +                // With simulated OFFSETs, no break, fall through
    +                else {
    +                    context.bind(getLowerRownum());
    +                    context.bind(getUpperRownum());
    +                }
    +
    +                break;
    +            }
    +
    +            // Oracle knows no LIMIT or TOP clause, limits are always bound
    +            // ------------------------------------------------------------
    +            case ORACLE: {
    +                context.bind(getLowerRownum());
    +                context.bind(getUpperRownum());
    +                break;
    +            }
    +        }
    +    }
    +
    +    /**
    +     * Whether this limit has an offset of zero
    +     */
    +    final boolean offsetZero() {
    +        return offset == null;
    +    }
    +
    +    /**
    +     * The lower bound, such that ROW_NUMBER() > getLowerRownum()
    +     */
    +    final Field<Integer> getLowerRownum() {
    +        return offsetOrZero;
    +    }
    +
    +    /**
    +     * The upper bound, such that ROW_NUMBER() <= getUpperRownum()
    +     */
    +    final Field<Integer> getUpperRownum() {
    +        return offsetOrZero.add(numberOfRows);
    +    }
    +
    +    /**
    +     * Whether this LIMIT clause is applicable. If <code>false</code>, then no
    +     * LIMIT clause should be rendered.
    +     */
    +    final boolean isApplicable() {
    +        return offset != null || numberOfRows != null;
    +    }
    +
    +    /**
    +     * Whether this LIMIT clause renders {@link Param} objects. This indicates
    +     * to the <code>SELECT</code> statement, that it may need to prefer
    +     * <code>ROW_NUMBER()</code> filtering over a <code>TOP</code> clause to
    +     * allow for named parameters in the query, as the <code>TOP</code> clause
    +     * may not accept bind variables.
    +     */
    +    final boolean rendersParams() {
    +        return rendersParams;
    +    }
    +
    +    final void setOffset(int offset) {
    +        if (offset != 0) {
    +            this.offset = val(offset);
    +            this.offsetOrZero = this.offset;
    +            this.offsetPlusOne = val(offset + 1);
    +        }
    +    }
    +
    +    final void setOffset(Param<Integer> offset) {
    +        this.offset = offset;
    +        this.offsetOrZero = offset;
    +        this.rendersParams = true;
    +    }
    +
    +    final void setNumberOfRows(int numberOfRows) {
    +        this.numberOfRows = val(numberOfRows);
    +    }
    +
    +    final void setNumberOfRows(Param<Integer> numberOfRows) {
    +        this.numberOfRows = numberOfRows;
    +        this.rendersParams = true;
    +    }
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/impl/Ln.java b/jOOQ/src/main/java/org/jooq/impl/Ln.java
    new file mode 100644
    index 00000000000..89e67b207dd
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/impl/Ln.java
    @@ -0,0 +1,100 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq.impl;
    +
    +import static org.jooq.impl.Factory.function;
    +import static org.jooq.impl.Factory.literal;
    +
    +import java.math.BigDecimal;
    +
    +import org.jooq.Configuration;
    +import org.jooq.Field;
    +
    +/**
    + * @author Lukas Eder
    + */
    +class Ln extends AbstractFunction<BigDecimal> {
    +
    +    /**
    +     * Generated UID
    +     */
    +    private static final long             serialVersionUID = -7273879239726265322L;
    +
    +    private final Field<? extends Number> argument;
    +    private final Integer                 base;
    +
    +    Ln(Field<? extends Number> argument) {
    +        this(argument, null);
    +    }
    +
    +    Ln(Field<? extends Number> argument, Integer base) {
    +        super("ln", SQLDataType.NUMERIC, argument);
    +
    +        this.argument = argument;
    +        this.base = base;
    +    }
    +
    +    @Override
    +    final Field<BigDecimal> getFunction0(Configuration configuration) {
    +        if (base == null) {
    +            switch (configuration.getDialect()) {
    +                case ASE:
    +                case H2:
    +                case SQLSERVER:
    +                    return function("log", SQLDataType.NUMERIC, argument);
    +
    +                default:
    +                    return function("ln", SQLDataType.NUMERIC, argument);
    +            }
    +        }
    +        else {
    +            switch (configuration.getDialect()) {
    +                case ASE:
    +                case DB2:
    +                case DERBY:
    +                case H2:
    +                case HSQLDB:
    +                case INGRES:
    +                case SQLSERVER:
    +                case SYBASE:
    +                    return Factory.ln(argument).div(Factory.ln(literal(base)));
    +
    +                default:
    +                    return function("log", SQLDataType.NUMERIC, literal(base), argument);
    +            }
    +        }
    +    }
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/impl/LoaderErrorImpl.java b/jOOQ/src/main/java/org/jooq/impl/LoaderErrorImpl.java
    new file mode 100644
    index 00000000000..d489dd5980c
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/impl/LoaderErrorImpl.java
    @@ -0,0 +1,78 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq.impl;
    +
    +import org.jooq.LoaderError;
    +import org.jooq.Query;
    +import org.jooq.exception.DataAccessException;
    +
    +/**
    + * @author Lukas Eder
    + */
    +class LoaderErrorImpl implements LoaderError {
    +
    +    private final DataAccessException exception;
    +    private final int                 rowIndex;
    +    private final String[]            row;
    +    private final Query               query;
    +
    +    LoaderErrorImpl(DataAccessException exception, String[] row, int rowIndex, Query query) {
    +        this.exception = exception;
    +        this.row = row;
    +        this.rowIndex = rowIndex;
    +        this.query = query;
    +    }
    +
    +    @Override
    +    public DataAccessException exception() {
    +        return exception;
    +    }
    +
    +    @Override
    +    public int rowIndex() {
    +        return rowIndex;
    +    }
    +
    +    @Override
    +    public String[] row() {
    +        return row;
    +    }
    +
    +    @Override
    +    public Query query() {
    +        return query;
    +    }
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/impl/LoaderImpl.java b/jOOQ/src/main/java/org/jooq/impl/LoaderImpl.java
    new file mode 100644
    index 00000000000..63f8b0e89c4
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/impl/LoaderImpl.java
    @@ -0,0 +1,488 @@
    +/**
    +* Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    +* All rights reserved.
    +*
    +* This software is licensed to you under the Apache License, Version 2.0
    +* (the "License"); You may obtain a copy of the License at
    +*
    +*   http://www.apache.org/licenses/LICENSE-2.0
    +*
    +* 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    +*/
    +package org.jooq.impl;
    +
    +import java.io.BufferedReader;
    +import java.io.File;
    +import java.io.FileNotFoundException;
    +import java.io.FileReader;
    +import java.io.IOException;
    +import java.io.InputStream;
    +import java.io.InputStreamReader;
    +import java.io.Reader;
    +import java.io.StringReader;
    +import java.sql.SQLException;
    +import java.util.ArrayList;
    +import java.util.Collection;
    +import java.util.List;
    +
    +import org.jooq.Condition;
    +import org.jooq.Field;
    +import org.jooq.InsertQuery;
    +import org.jooq.Loader;
    +import org.jooq.LoaderCSVOptionsStep;
    +import org.jooq.LoaderCSVStep;
    +import org.jooq.LoaderError;
    +import org.jooq.LoaderOptionsStep;
    +import org.jooq.LoaderXMLStep;
    +import org.jooq.SimpleSelectQuery;
    +import org.jooq.Table;
    +import org.jooq.TableRecord;
    +import org.jooq.UpdatableTable;
    +import org.jooq.exception.DataAccessException;
    +import org.jooq.tools.csv.CSVParser;
    +import org.jooq.tools.csv.CSVReader;
    +
    +import org.xml.sax.InputSource;
    +
    +/**
    + * @author Lukas Eder
    + */
    +class LoaderImpl<R extends TableRecord<R>> implements
    +
    +    // Cascading interface implementations for Loader behaviour
    +    LoaderOptionsStep<R>,
    +    LoaderXMLStep<R>,
    +    LoaderCSVStep<R>,
    +    LoaderCSVOptionsStep<R>,
    +    Loader<R> {
    +
    +    // Configuration constants
    +    // -----------------------
    +    private static final int        ON_DUPLICATE_KEY_ERROR  = 0;
    +    private static final int        ON_DUPLICATE_KEY_IGNORE = 1;
    +    private static final int        ON_DUPLICATE_KEY_UPDATE = 2;
    +
    +    private static final int        ON_ERROR_ABORT          = 0;
    +    private static final int        ON_ERROR_IGNORE         = 1;
    +
    +    private static final int        COMMIT_NONE             = 0;
    +    private static final int        COMMIT_AFTER            = 1;
    +    private static final int        COMMIT_ALL              = 2;
    +
    +    private static final int        CONTENT_CSV             = 0;
    +    private static final int        CONTENT_XML             = 1;
    +
    +    // Configuration data
    +    // ------------------
    +    private final Factory           create;
    +    private final Table<R>          table;
    +    private final UpdatableTable<R> updatable;
    +    private int                     onDuplicate             = ON_DUPLICATE_KEY_ERROR;
    +    private int                     onError                 = ON_ERROR_ABORT;
    +    private int                     commit                  = COMMIT_NONE;
    +    private int                     commitAfter             = 1;
    +    private int                     content                 = CONTENT_CSV;
    +    private BufferedReader          data;
    +
    +    // CSV configuration data
    +    // ----------------------
    +    private int                     ignoreRows              = 1;
    +    private char                    quote                   = CSVParser.DEFAULT_QUOTE_CHARACTER;
    +    private char                    separator               = CSVParser.DEFAULT_SEPARATOR;
    +    private Field<?>[]              fields;
    +    private boolean[]               mainKey;
    +
    +    // Result data
    +    // -----------
    +    private int                     ignored;
    +    private int                     processed;
    +    private int                     stored;
    +    private final List<LoaderError> errors;
    +
    +    LoaderImpl(Factory create, Table<R> table) {
    +        this.create = create;
    +        this.table = table;
    +        this.errors = new ArrayList<LoaderError>();
    +
    +        if (table instanceof UpdatableTable) {
    +            this.updatable = (UpdatableTable<R>) table;
    +        }
    +        else {
    +            this.updatable = null;
    +        }
    +    }
    +
    +    // -------------------------------------------------------------------------
    +    // Configuration setup
    +    // -------------------------------------------------------------------------
    +
    +    @Override
    +    public final LoaderImpl<R> onDuplicateKeyError() {
    +        onDuplicate = ON_DUPLICATE_KEY_ERROR;
    +        return this;
    +    }
    +
    +    @Override
    +    public final LoaderImpl<R> onDuplicateKeyIgnore() {
    +        if (updatable == null) {
    +            throw new IllegalStateException("ON DUPLICATE KEY IGNORE only works on UpdatableTable. Table is not updatable : " + table);
    +        }
    +
    +        onDuplicate = ON_DUPLICATE_KEY_IGNORE;
    +        return this;
    +    }
    +
    +    @Override
    +    public final LoaderImpl<R> onDuplicateKeyUpdate() {
    +        if (updatable == null) {
    +            throw new IllegalStateException("ON DUPLICATE KEY UPDATE only works on UpdatableTable. Table is not updatable : " + table);
    +        }
    +
    +        onDuplicate = ON_DUPLICATE_KEY_UPDATE;
    +        return this;
    +    }
    +
    +    @Override
    +    public final LoaderImpl<R> onErrorIgnore() {
    +        onError = ON_ERROR_IGNORE;
    +        return this;
    +    }
    +
    +    @Override
    +    public final LoaderImpl<R> onErrorAbort() {
    +        onError = ON_ERROR_ABORT;
    +        return this;
    +    }
    +
    +    @Override
    +    public final LoaderImpl<R> commitEach() {
    +        commit = COMMIT_AFTER;
    +        return this;
    +    }
    +
    +    @Override
    +    public final LoaderImpl<R> commitAfter(int number) {
    +        commit = COMMIT_AFTER;
    +        commitAfter = number;
    +        return this;
    +    }
    +
    +    @Override
    +    public final LoaderImpl<R> commitAll() {
    +        commit = COMMIT_ALL;
    +        return this;
    +    }
    +
    +    @Override
    +    public final LoaderImpl<R> commitNone() {
    +        commit = COMMIT_NONE;
    +        return this;
    +    }
    +
    +    @Override
    +    public final LoaderImpl<R> loadCSV(File file) throws FileNotFoundException {
    +        content = CONTENT_CSV;
    +        data = new BufferedReader(new FileReader(file));
    +        return this;
    +    }
    +
    +    @Override
    +    public final LoaderImpl<R> loadCSV(String csv) {
    +        content = CONTENT_CSV;
    +        data = new BufferedReader(new StringReader(csv));
    +        return this;
    +    }
    +
    +    @Override
    +    public final LoaderImpl<R> loadCSV(InputStream stream) {
    +        content = CONTENT_CSV;
    +        data = new BufferedReader(new InputStreamReader(stream));
    +        return this;
    +    }
    +
    +    @Override
    +    public final LoaderImpl<R> loadCSV(Reader reader) {
    +        content = CONTENT_CSV;
    +        data = new BufferedReader(reader);
    +        return this;
    +    }
    +
    +    @Override
    +    public final LoaderImpl<R> loadXML(File file) throws FileNotFoundException {
    +        content = CONTENT_XML;
    +        throw new UnsupportedOperationException("This is not yet implemented");
    +    }
    +
    +    @Override
    +    public final LoaderImpl<R> loadXML(String xml) {
    +        content = CONTENT_XML;
    +        throw new UnsupportedOperationException("This is not yet implemented");
    +    }
    +
    +    @Override
    +    public final LoaderImpl<R> loadXML(InputStream stream) {
    +        content = CONTENT_XML;
    +        throw new UnsupportedOperationException("This is not yet implemented");
    +    }
    +
    +    @Override
    +    public final LoaderImpl<R> loadXML(Reader reader) {
    +        content = CONTENT_XML;
    +        throw new UnsupportedOperationException("This is not yet implemented");
    +    }
    +
    +    @Override
    +    public final LoaderImpl<R> loadXML(InputSource source) {
    +        content = CONTENT_XML;
    +        throw new UnsupportedOperationException("This is not yet implemented");
    +    }
    +
    +    // -------------------------------------------------------------------------
    +    // CSV configuration
    +    // -------------------------------------------------------------------------
    +
    +    @Override
    +    public final LoaderImpl<R> fields(Field<?>... f) {
    +        this.fields = f;
    +        this.mainKey = new boolean[f.length];
    +
    +        if (updatable != null) {
    +            for (int i = 0; i < fields.length; i++) {
    +                if (fields[i] != null) {
    +                    if (updatable.getMainKey().getFields().contains(fields[i])) {
    +                        mainKey[i] = true;
    +                    }
    +                }
    +            }
    +        }
    +
    +        return this;
    +    }
    +
    +    @Override
    +    public final LoaderImpl<R> fields(Collection<? extends Field<?>> f) {
    +        return fields(f.toArray(new Field[f.size()]));
    +    }
    +
    +    @Override
    +    public final LoaderImpl<R> ignoreRows(int number) {
    +        ignoreRows = number;
    +        return this;
    +    }
    +
    +    @Override
    +    public final LoaderImpl<R> quote(char q) {
    +        this.quote = q;
    +        return this;
    +    }
    +
    +    @Override
    +    public final LoaderImpl<R> separator(char s) {
    +        this.separator = s;
    +        return this;
    +    }
    +
    +    // -------------------------------------------------------------------------
    +    // XML configuration
    +    // -------------------------------------------------------------------------
    +
    +    // [...] to be specified
    +
    +    // -------------------------------------------------------------------------
    +    // Execution
    +    // -------------------------------------------------------------------------
    +
    +    @Override
    +    public final LoaderImpl<R> execute() throws IOException {
    +        if (content == CONTENT_CSV) {
    +            executeCSV();
    +        }
    +        else if (content == CONTENT_XML) {
    +            throw new UnsupportedOperationException();
    +        }
    +        else {
    +            throw new IllegalStateException();
    +        }
    +
    +        return this;
    +    }
    +
    +    private final void executeCSV() throws IOException {
    +        CSVReader reader = new CSVReader(data, separator, quote, ignoreRows);
    +
    +        try {
    +            String[] row = null;
    +
    +            // TODO: When running in COMMIT_AFTER > 1 or COMMIT_ALL mode, then
    +            // it might be better to bulk load / merge n records
    +            rowloop: while ((row = reader.readNext()) != null) {
    +                processed++;
    +                InsertQuery<R> insert = create.insertQuery(table);
    +
    +                for (int i = 0; i < row.length; i++) {
    +                    if (i < fields.length && fields[i] != null) {
    +                        addValue0(insert, fields[i], row[i]);
    +                    }
    +                }
    +
    +                // TODO: This is only supported by some dialects. Let other
    +                // dialects execute a SELECT and then either an INSERT or UPDATE
    +                if (onDuplicate == ON_DUPLICATE_KEY_UPDATE) {
    +                    insert.onDuplicateKeyUpdate(true);
    +
    +                    for (int i = 0; i < row.length; i++) {
    +                        if (i < fields.length && fields[i] != null && !mainKey[i]) {
    +                            addValueForUpdate0(insert, fields[i], row[i]);
    +                        }
    +                    }
    +                }
    +
    +                // TODO: This can be implemented faster using a MERGE statement
    +                // in some dialects
    +                else if (onDuplicate == ON_DUPLICATE_KEY_IGNORE) {
    +                    SimpleSelectQuery<R> select = create.selectQuery(table);
    +
    +                    for (int i = 0; i < row.length; i++) {
    +                        if (i < fields.length && mainKey[i]) {
    +                            select.addConditions(getCondition(fields[i], row[i]));
    +                        }
    +                    }
    +
    +                    try {
    +                        if (select.execute() > 0) {
    +                            ignored++;
    +                            continue rowloop;
    +                        }
    +                    }
    +                    catch (DataAccessException e) {
    +                        errors.add(new LoaderErrorImpl(e, row, processed - 1, select));
    +                    }
    +                }
    +
    +                // Don't do anything. Let the execution fail
    +                else if (onDuplicate == ON_DUPLICATE_KEY_ERROR) {
    +                }
    +
    +                try {
    +                    insert.execute();
    +                    stored++;
    +
    +                    if (commit == COMMIT_AFTER) {
    +                        if (processed % commitAfter == 0) {
    +                            create.getConnection().commit();
    +                        }
    +                    }
    +                }
    +                catch (DataAccessException e) {
    +                    errors.add(new LoaderErrorImpl(e, row, processed - 1, insert));
    +                    ignored++;
    +
    +                    if (onError == ON_ERROR_ABORT) {
    +                        break rowloop;
    +                    }
    +                }
    +            }
    +
    +            // Rollback on errors in COMMIT_ALL mode
    +            try {
    +                if (commit == COMMIT_ALL) {
    +                    if (!errors.isEmpty()) {
    +                        stored = 0;
    +                        create.getConnection().rollback();
    +                    }
    +                    else {
    +                        create.getConnection().commit();
    +                    }
    +                }
    +
    +                // Commit remaining elements in COMMIT_AFTER mode
    +                else if (commit == COMMIT_AFTER) {
    +                    if (processed % commitAfter != 0) {
    +                        create.getConnection().commit();
    +                    }
    +                }
    +            }
    +            catch (DataAccessException e) {
    +                errors.add(new LoaderErrorImpl(e, null, processed - 1, null));
    +            }
    +        }
    +
    +        // SQLExceptions originating from rollbacks or commits are always fatal
    +        // They are propagated, and not swallowed
    +        catch (SQLException e) {
    +            throw Util.translate("LoaderImpl.executeCSV", null, e);
    +        }
    +        finally {
    +            reader.close();
    +        }
    +    }
    +
    +    /**
    +     * Type-safety...
    +     */
    +    private <T> void addValue0(InsertQuery<R> insert, Field<T> field, String row) {
    +        insert.addValue(field, field.getDataType().convert(row));
    +    }
    +
    +    /**
    +     * Type-safety...
    +     */
    +    private <T> void addValueForUpdate0(InsertQuery<R> insert, Field<T> field, String row) {
    +        insert.addValueForUpdate(field, field.getDataType().convert(row));
    +    }
    +
    +    /**
    +     * Get a type-safe condition
    +     */
    +    private <T> Condition getCondition(Field<T> field, String string) {
    +        return field.equal(field.getDataType().convert(string));
    +    }
    +
    +    // -------------------------------------------------------------------------
    +    // Outcome
    +    // -------------------------------------------------------------------------
    +
    +    @Override
    +    public final List<LoaderError> errors() {
    +        return errors;
    +    }
    +
    +    @Override
    +    public final int processed() {
    +        return processed;
    +    }
    +
    +    @Override
    +    public final int ignored() {
    +        return ignored;
    +    }
    +
    +    @Override
    +    public final int stored() {
    +        return stored;
    +    }
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/impl/Lpad.java b/jOOQ/src/main/java/org/jooq/impl/Lpad.java
    new file mode 100644
    index 00000000000..dd8aae071d1
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/impl/Lpad.java
    @@ -0,0 +1,102 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq.impl;
    +
    +import static org.jooq.impl.Factory.function;
    +import static org.jooq.impl.Factory.val;
    +
    +import org.jooq.Configuration;
    +import org.jooq.Field;
    +import org.jooq.SQLDialect;
    +
    +/**
    + * @author Lukas Eder
    + */
    +class Lpad extends AbstractFunction<String> {
    +
    +    /**
    +     * Generated UID
    +     */
    +    private static final long             serialVersionUID = -7273879239726265322L;
    +
    +    private final Field<String>           field;
    +    private final Field<? extends Number> length;
    +    private final Field<String>           character;
    +
    +    Lpad(Field<String> field, Field<? extends Number> length) {
    +        this(field, length, null);
    +    }
    +
    +    Lpad(Field<String> field, Field<? extends Number> length, Field<String> character) {
    +        super("lpad", SQLDataType.VARCHAR, field, length, character);
    +
    +        this.field = field;
    +        this.length = length;
    +        this.character = character;
    +    }
    +
    +    @Override
    +    final Field<String> getFunction0(Configuration configuration) {
    +        switch (configuration.getDialect()) {
    +            case ASE:
    +            case SQLSERVER:
    +            case SYBASE: {
    +                if (character == null) {
    +                    return Factory.concat(Factory.repeat(" ", length.sub(Factory.length(field))), field);
    +                }
    +                else {
    +                    return Factory.concat(Factory.repeat(character, length.sub(Factory.length(field))), field);
    +                }
    +            }
    +
    +            default: {
    +
    +                // MySQL only knows the 3 parameter version
    +                if (character == null) {
    +                    if (configuration.getDialect() == SQLDialect.MYSQL) {
    +                        return function("lpad", SQLDataType.VARCHAR, field, length, val(" "));
    +                    }
    +                    else {
    +                        return function("lpad", SQLDataType.VARCHAR, field, length);
    +                    }
    +                }
    +                else {
    +                    return function("lpad", SQLDataType.VARCHAR, field, length, character);
    +                }
    +            }
    +        }
    +    }
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/impl/MergeImpl.java b/jOOQ/src/main/java/org/jooq/impl/MergeImpl.java
    new file mode 100644
    index 00000000000..baad69d472e
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/impl/MergeImpl.java
    @@ -0,0 +1,430 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq.impl;
    +
    +import static org.jooq.impl.Factory.condition;
    +import static org.jooq.impl.Factory.exists;
    +import static org.jooq.impl.Factory.notExists;
    +import static org.jooq.impl.Factory.nullSafe;
    +import static org.jooq.impl.Factory.val;
    +import static org.jooq.impl.Factory.vals;
    +import static org.jooq.impl.Util.convert;
    +
    +import java.util.ArrayList;
    +import java.util.Arrays;
    +import java.util.Collection;
    +import java.util.Collections;
    +import java.util.List;
    +import java.util.Map;
    +
    +import org.jooq.Attachable;
    +import org.jooq.BindContext;
    +import org.jooq.Condition;
    +import org.jooq.Configuration;
    +import org.jooq.Field;
    +import org.jooq.MergeMatchedDeleteStep;
    +import org.jooq.MergeMatchedSetMoreStep;
    +import org.jooq.MergeNotMatchedSetMoreStep;
    +import org.jooq.MergeNotMatchedValuesStep;
    +import org.jooq.MergeOnConditionStep;
    +import org.jooq.MergeOnStep;
    +import org.jooq.MergeUsingStep;
    +import org.jooq.Operator;
    +import org.jooq.Record;
    +import org.jooq.RenderContext;
    +import org.jooq.Select;
    +import org.jooq.Table;
    +import org.jooq.TableLike;
    +import org.jooq.tools.StringUtils;
    +
    +/**
    + * @author Lukas Eder
    + */
    +class MergeImpl<R extends Record> extends AbstractQuery
    +implements
    +
    +    // Cascading interface implementations for Merge behaviour
    +    MergeUsingStep<R>,
    +    MergeOnStep<R>,
    +    MergeOnConditionStep<R>,
    +    MergeMatchedSetMoreStep<R>,
    +    MergeMatchedDeleteStep<R>,
    +    MergeNotMatchedSetMoreStep<R>,
    +    MergeNotMatchedValuesStep<R> {
    +
    +    /**
    +     * Generated UID
    +     */
    +    private static final long           serialVersionUID = -8835479296876774391L;
    +
    +    private final Table<R>              table;
    +    private final ConditionProviderImpl on;
    +    private TableLike<?>                using;
    +
    +    // [#998] Oracle extensions to the MERGE statement
    +    private Condition                   matchedWhere;
    +    private Condition                   matchedDeleteWhere;
    +    private Condition                   notMatchedWhere;
    +
    +    // Flags to keep track of DSL object creation state
    +    private boolean                     matchedClause;
    +    private FieldMapForUpdate           matchedUpdate;
    +    private boolean                     notMatchedClause;
    +    private FieldMapForInsert           notMatchedInsert;
    +
    +    MergeImpl(Configuration configuration, Table<R> table) {
    +        super(configuration);
    +
    +        this.table = table;
    +        this.on = new ConditionProviderImpl();
    +    }
    +
    +    // -------------------------------------------------------------------------
    +    // QueryPart API
    +    // -------------------------------------------------------------------------
    +
    +    @Override
    +    public final MergeImpl<R> using(TableLike<?> u) {
    +        this.using = u;
    +        return this;
    +    }
    +
    +    @Override
    +    public final MergeImpl<R> usingDual() {
    +        this.using = create().selectOne();
    +        return this;
    +    }
    +
    +    @Override
    +    public final MergeImpl<R> on(Condition... conditions) {
    +        on.addConditions(conditions);
    +        return this;
    +    }
    +
    +    @Override
    +    public final MergeImpl<R> on(String sql) {
    +        return on(condition(sql));
    +    }
    +
    +    @Override
    +    public final MergeImpl<R> on(String sql, Object... bindings) {
    +        return on(condition(sql, bindings));
    +    }
    +
    +    @Override
    +    public final MergeImpl<R> and(Condition condition) {
    +        on.addConditions(condition);
    +        return this;
    +    }
    +
    +    @Override
    +    public final MergeImpl<R> and(String sql) {
    +        return and(condition(sql));
    +    }
    +
    +    @Override
    +    public final MergeImpl<R> and(String sql, Object... bindings) {
    +        return and(condition(sql, bindings));
    +    }
    +
    +    @Override
    +    public final MergeImpl<R> andNot(Condition condition) {
    +        return and(condition.not());
    +    }
    +
    +    @Override
    +    public final MergeImpl<R> andExists(Select<?> select) {
    +        return and(exists(select));
    +    }
    +
    +    @Override
    +    public final MergeImpl<R> andNotExists(Select<?> select) {
    +        return and(notExists(select));
    +    }
    +
    +    @Override
    +    public final MergeImpl<R> or(Condition condition) {
    +        on.addConditions(Operator.OR, condition);
    +        return this;
    +    }
    +
    +    @Override
    +    public final MergeImpl<R> or(String sql) {
    +        return or(condition(sql));
    +    }
    +
    +    @Override
    +    public final MergeImpl<R> or(String sql, Object... bindings) {
    +        return or(condition(sql, bindings));
    +    }
    +
    +    @Override
    +    public final MergeImpl<R> orNot(Condition condition) {
    +        return or(condition.not());
    +    }
    +
    +    @Override
    +    public final MergeImpl<R> orExists(Select<?> select) {
    +        return or(exists(select));
    +    }
    +
    +    @Override
    +    public final MergeImpl<R> orNotExists(Select<?> select) {
    +        return or(notExists(select));
    +    }
    +
    +    @Override
    +    public final MergeImpl<R> whenMatchedThenUpdate() {
    +        matchedClause = true;
    +        matchedUpdate = new FieldMapForUpdate();
    +
    +        notMatchedClause = false;
    +        return this;
    +    }
    +
    +    @Override
    +    public final <T> MergeImpl<R> set(Field<T> field, T value) {
    +        return set(field, val(value, field));
    +    }
    +
    +    @Override
    +    public final <T> MergeImpl<R> set(Field<T> field, Field<T> value) {
    +        if (matchedClause) {
    +            matchedUpdate.put(field, nullSafe(value));
    +        }
    +        else if (notMatchedClause) {
    +            notMatchedInsert.put(field, nullSafe(value));
    +        }
    +        else {
    +            throw new IllegalStateException("Cannot call where() on the current state of the MERGE statement");
    +        }
    +
    +        return this;
    +    }
    +
    +    @Override
    +    public final MergeImpl<R> set(Map<? extends Field<?>, ?> map) {
    +        if (matchedClause) {
    +            matchedUpdate.set(map);
    +        }
    +        else if (notMatchedClause) {
    +            notMatchedInsert.set(map);
    +        }
    +        else {
    +            throw new IllegalStateException("Cannot call where() on the current state of the MERGE statement");
    +        }
    +
    +        return this;
    +    }
    +
    +    @Override
    +    public final MergeImpl<R> whenNotMatchedThenInsert() {
    +        return whenNotMatchedThenInsert(Collections.<Field<?>>emptyList());
    +    }
    +
    +    @Override
    +    public final MergeImpl<R> whenNotMatchedThenInsert(Field<?>... fields) {
    +        return whenNotMatchedThenInsert(Arrays.asList(fields));
    +    }
    +
    +    @Override
    +    public final MergeImpl<R> whenNotMatchedThenInsert(Collection<? extends Field<?>> fields) {
    +        notMatchedClause = true;
    +        notMatchedInsert = new FieldMapForInsert();
    +        notMatchedInsert.putFields(fields);
    +
    +        matchedClause = false;
    +        return this;
    +    }
    +
    +    @Override
    +    public final MergeImpl<R> values(Object... values) {
    +        List<Field<?>> fields = new ArrayList<Field<?>>(notMatchedInsert.keySet());
    +        notMatchedInsert.putValues(vals(convert(fields, values)));
    +        return this;
    +    }
    +
    +    @Override
    +    public final MergeImpl<R> values(Field<?>... values) {
    +        return values((Object[]) values);
    +    }
    +
    +    @Override
    +    public final MergeImpl<R> values(Collection<?> values) {
    +        return values(values.toArray());
    +    }
    +
    +    @Override
    +    public final MergeImpl<R> where(Condition condition) {
    +        if (matchedClause) {
    +            matchedWhere = condition;
    +        }
    +        else if (notMatchedClause) {
    +            notMatchedWhere = condition;
    +        }
    +        else {
    +            throw new IllegalStateException("Cannot call where() on the current state of the MERGE statement");
    +        }
    +
    +        return this;
    +    }
    +
    +    @Override
    +    public final MergeImpl<R> deleteWhere(Condition condition) {
    +        matchedDeleteWhere = condition;
    +        return this;
    +    }
    +
    +    // -------------------------------------------------------------------------
    +    // QueryPart API
    +    // -------------------------------------------------------------------------
    +
    +    @Override
    +    public final void toSQL(RenderContext context) {
    +        context.keyword("merge into ")
    +               .declareTables(true)
    +               .sql(table)
    +               .formatSeparator()
    +               .keyword("using ")
    +               .formatIndentLockStart()
    +               .sql(Util.wrapInParentheses(context.render(using)))
    +               .formatIndentLockEnd()
    +               .declareTables(false);
    +
    +        switch (context.getDialect()) {
    +            case SQLSERVER:
    +            case SYBASE: {
    +                if (using instanceof Select) {
    +                    int hash = Util.hash(using);
    +
    +                    context.keyword(" as ")
    +                           .sql("dummy_")
    +                           .sql(hash)
    +                           .sql("(");
    +
    +                    String separator = "";
    +                    for (Field<?> field : ((Select<?>) using).getFields()) {
    +
    +                        // Some fields are unnamed
    +                        // [#579] Correct this
    +                        String name = StringUtils.isBlank(field.getName())
    +                            ? "dummy_" + hash + "_" + Util.hash(field)
    +                            : field.getName();
    +
    +                        context.sql(separator).literal(name);
    +                        separator = ", ";
    +                    }
    +
    +                    context.sql(")");
    +                }
    +
    +                break;
    +            }
    +        }
    +
    +        context.formatSeparator()
    +               .keyword("on ")
    +               .formatIndentLockStart()
    +               .sql(Util.wrapInParentheses(context.render(on)))
    +               .formatIndentLockEnd();
    +
    +        // [#999] WHEN MATCHED clause is optional
    +        if (matchedUpdate != null) {
    +            context.formatSeparator()
    +                   .keyword("when matched then update set ")
    +                   .sql(matchedUpdate);
    +        }
    +
    +        // [#998] Oracle MERGE extension: WHEN MATCHED THEN UPDATE .. WHERE
    +        if (matchedWhere != null) {
    +            context.formatSeparator()
    +                   .keyword("where ")
    +                   .sql(matchedWhere);
    +        }
    +
    +        // [#998] Oracle MERGE extension: WHEN MATCHED THEN UPDATE .. DELETE WHERE
    +        if (matchedDeleteWhere != null) {
    +            context.formatSeparator()
    +                   .keyword("delete where ")
    +                   .sql(matchedDeleteWhere);
    +        }
    +
    +        // [#999] WHEN NOT MATCHED clause is optional
    +        if (notMatchedInsert != null) {
    +            context.formatSeparator()
    +                   .sql("when not matched then insert ")
    +                   .sql(notMatchedInsert);
    +        }
    +
    +        // [#998] Oracle MERGE extension: WHEN NOT MATCHED THEN INSERT .. WHERE
    +        if (notMatchedWhere != null) {
    +            context.formatSeparator()
    +                   .keyword("where ")
    +                   .sql(notMatchedWhere);
    +        }
    +
    +        switch (context.getDialect()) {
    +            case SQLSERVER:
    +                context.sql(";");
    +                break;
    +        }
    +    }
    +
    +    @Override
    +    public final void bind(BindContext context) {
    +        context.declareTables(true)
    +               .bind(table)
    +               .bind(using)
    +               .declareTables(false)
    +               .bind(on)
    +               .bind(matchedUpdate)
    +               .bind(matchedWhere)
    +               .bind(matchedDeleteWhere)
    +               .bind(notMatchedInsert)
    +               .bind(notMatchedWhere);
    +    }
    +
    +    @Override
    +    public final List<Attachable> getAttachables() {
    +        return getAttachables(
    +            table, using, on,
    +            matchedUpdate,
    +            matchedWhere,
    +            matchedDeleteWhere,
    +            notMatchedInsert,
    +            notMatchedWhere);
    +    }
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/impl/MetaDataFieldProvider.java b/jOOQ/src/main/java/org/jooq/impl/MetaDataFieldProvider.java
    new file mode 100644
    index 00000000000..94e19c5be77
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/impl/MetaDataFieldProvider.java
    @@ -0,0 +1,164 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq.impl;
    +
    +import static org.jooq.impl.Factory.field;
    +
    +import java.io.Serializable;
    +import java.sql.ResultSetMetaData;
    +import java.sql.SQLException;
    +import java.util.List;
    +
    +import org.jooq.Configuration;
    +import org.jooq.DataType;
    +import org.jooq.Field;
    +import org.jooq.FieldProvider;
    +import org.jooq.exception.SQLDialectNotSupportedException;
    +import org.jooq.tools.JooqLogger;
    +
    +/**
    + * A <code>FieldProvider</code> providing fields for a JDBC
    + * {@link ResultSetMetaData} object.
    + * <p>
    + * This can be used when a <code>Cursor</code> doesn't know its fields before
    + * actually fetching data from the database. Use-cases for this are:
    + * <ul>
    + * <li>Plain SQL tables</li>
    + * <li>CURSOR type OUT parameters from stored procedures</li>
    + * <li>CURSOR type return values from stored functions</li>
    + * </ul>
    + *
    + * @author Lukas Eder
    + */
    +class MetaDataFieldProvider implements FieldProvider, Serializable {
    +
    +    /**
    +     * Generated UID
    +     */
    +    private static final long       serialVersionUID = -8482521025536063609L;
    +    private static final JooqLogger log              = JooqLogger.getLogger(MetaDataFieldProvider.class);
    +
    +    private final Configuration     configuration;
    +    private final FieldList         fields;
    +    private ResultSetMetaData       meta;
    +
    +    MetaDataFieldProvider(Configuration configuration, ResultSetMetaData meta) {
    +        this.configuration = configuration;
    +        this.meta = meta;
    +        this.fields = new FieldList();
    +
    +        init();
    +    }
    +
    +    private final void init() {
    +        int columnCount = 0;
    +
    +        try {
    +            columnCount = meta.getColumnCount();
    +        }
    +
    +        // This happens in Oracle for empty cursors returned from stored
    +        // procedures / functions
    +        catch (SQLException e) {
    +            log.warn("Cannot fetch column count for cursor : " + e.getMessage());
    +            fields.add(field("dummy"));
    +        }
    +
    +        try {
    +            for (int i = 1; i <= columnCount; i++) {
    +                String name = meta.getColumnLabel(i);
    +                int precision = meta.getPrecision(i);
    +                int scale = meta.getScale(i);
    +                DataType<?> dataType = SQLDataType.OTHER;
    +
    +                // TODO: [#650] Find a more intelligent way to strip the
    +                // schema from Oracle UDT names!
    +                String type = meta.getColumnTypeName(i).replaceAll(".*\\.", "");
    +
    +                try {
    +                    dataType = FieldTypeHelper.getDialectDataType(configuration.getDialect(), type, precision, scale);
    +                }
    +
    +                // [#650, #667] TODO This should not happen. All types
    +                // should be known at this point
    +                catch (SQLDialectNotSupportedException ignore) {
    +                    log.warn("Not supported by dialect", ignore.getMessage());
    +                }
    +
    +                fields.add(field(name, dataType));
    +            }
    +        }
    +        catch (SQLException e) {
    +            throw Util.translate("MetaFieldProvider.init", null, e);
    +        }
    +
    +        meta = null;
    +    }
    +
    +    @Override
    +    public final <T> Field<T> getField(Field<T> field) {
    +        return fields.getField(field);
    +    }
    +
    +    @Override
    +    public final Field<?> getField(String name) {
    +        return fields.getField(name);
    +    }
    +
    +    @Override
    +    public final Field<?> getField(int index) {
    +        return fields.getField(index);
    +    }
    +
    +    @Override
    +    public final List<Field<?>> getFields() {
    +        return fields.getFields();
    +    }
    +
    +    @Override
    +    public final int getIndex(Field<?> field) throws IllegalArgumentException {
    +        return fields.getIndex(field);
    +    }
    +
    +    // -------------------------------------------------------------------------
    +    // The Object API
    +    // -------------------------------------------------------------------------
    +
    +    @Override
    +    public String toString() {
    +        return fields.toString();
    +    }
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/impl/Mod.java b/jOOQ/src/main/java/org/jooq/impl/Mod.java
    new file mode 100644
    index 00000000000..f510edde601
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/impl/Mod.java
    @@ -0,0 +1,75 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq.impl;
    +
    +import static org.jooq.impl.ExpressionOperator.MODULO;
    +import static org.jooq.impl.Factory.function;
    +
    +import org.jooq.Configuration;
    +import org.jooq.Field;
    +
    +/**
    + * @author Lukas Eder
    + */
    +class Mod<T> extends AbstractFunction<T> {
    +
    +    /**
    +     * Generated UID
    +     */
    +    private static final long             serialVersionUID = -7273879239726265322L;
    +
    +    private final Field<T>                arg1;
    +    private final Field<? extends Number> arg2;
    +
    +    Mod(Field<T> arg1, Field<? extends Number> arg2) {
    +        super("mod", arg1.getDataType(), arg1, arg2);
    +
    +        this.arg1 = arg1;
    +        this.arg2 = arg2;
    +    }
    +
    +    @Override
    +    final Field<T> getFunction0(Configuration configuration) {
    +        switch (configuration.getDialect()) {
    +            case ASE:
    +            case SQLITE:
    +            case SQLSERVER:
    +                return new Expression<T>(MODULO, arg1, arg2);
    +        }
    +
    +        return function("mod", getDataType(), arg1, arg2);
    +    }
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/impl/NamedQueryPartList.java b/jOOQ/src/main/java/org/jooq/impl/NamedQueryPartList.java
    new file mode 100644
    index 00000000000..73d3990b758
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/impl/NamedQueryPartList.java
    @@ -0,0 +1,63 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq.impl;
    +
    +import java.util.Collection;
    +
    +import org.jooq.NamedQueryPart;
    +
    +/**
    + * @author Lukas Eder
    + */
    +class NamedQueryPartList<T extends NamedQueryPart> extends QueryPartList<T> {
    +
    +    /**
    +     * Generated UID
    +     */
    +    private static final long serialVersionUID = -1681173796579067917L;
    +
    +    NamedQueryPartList() {
    +        super();
    +    }
    +
    +    NamedQueryPartList(Collection<? extends T> wrappedList) {
    +        super(wrappedList);
    +    }
    +
    +    NamedQueryPartList(T... wrappedList) {
    +        super(wrappedList);
    +    }
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/impl/Neg.java b/jOOQ/src/main/java/org/jooq/impl/Neg.java
    new file mode 100644
    index 00000000000..d1396a5d5a3
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/impl/Neg.java
    @@ -0,0 +1,110 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq.impl;
    +
    +import static java.util.Arrays.asList;
    +import static org.jooq.SQLDialect.DB2;
    +import static org.jooq.SQLDialect.H2;
    +import static org.jooq.SQLDialect.HSQLDB;
    +import static org.jooq.SQLDialect.INGRES;
    +import static org.jooq.SQLDialect.ORACLE;
    +import static org.jooq.impl.ExpressionOperator.BIT_NOT;
    +
    +import java.util.List;
    +
    +import org.jooq.Attachable;
    +import org.jooq.BindContext;
    +import org.jooq.Field;
    +import org.jooq.RenderContext;
    +import org.jooq.SQLDialect;
    +
    +/**
    + * @author Lukas Eder
    + */
    +class Neg<T> extends AbstractField<T> {
    +
    +    /**
    +     * Generated UID
    +     */
    +    private static final long        serialVersionUID = 7624782102883057433L;
    +
    +    private final ExpressionOperator operator;
    +    private final Field<T>           field;
    +
    +    Neg(Field<T> field, ExpressionOperator operator) {
    +        super(operator.toSQL() + field.getName(), field.getDataType());
    +
    +        this.operator = operator;
    +        this.field = field;
    +    }
    +
    +    @Override
    +    public final List<Attachable> getAttachables() {
    +        return getAttachables(field);
    +    }
    +
    +    @Override
    +    public final void toSQL(RenderContext context) {
    +        SQLDialect dialect = context.getDialect();
    +
    +        if (operator == BIT_NOT && asList(H2, HSQLDB, INGRES, ORACLE).contains(dialect)) {
    +            context.sql("(0 -")
    +                   .sql(field)
    +                   .sql(" - 1)");
    +        }
    +        else if (operator == BIT_NOT && dialect == DB2) {
    +            context.keyword("bitnot(")
    +                   .sql(field)
    +                   .sql(")");
    +        }
    +        else {
    +            context.sql(operator.toSQL())
    +                   .sql("(")
    +                   .sql(field)
    +                   .sql(")");
    +        }
    +    }
    +
    +    @Override
    +    public final void bind(BindContext context) {
    +        context.bind(field);
    +    }
    +
    +    @Override
    +    public final boolean isNullLiteral() {
    +        return false;
    +    }
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/impl/NotCondition.java b/jOOQ/src/main/java/org/jooq/impl/NotCondition.java
    new file mode 100644
    index 00000000000..e90c0f98aad
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/impl/NotCondition.java
    @@ -0,0 +1,69 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq.impl;
    +
    +import java.util.List;
    +
    +import org.jooq.Attachable;
    +import org.jooq.BindContext;
    +import org.jooq.Condition;
    +import org.jooq.RenderContext;
    +
    +class NotCondition extends AbstractCondition {
    +
    +    private static final long serialVersionUID = 2921001862882237932L;
    +
    +    private final Condition   condition;
    +
    +    NotCondition(Condition condition) {
    +        this.condition = condition;
    +    }
    +
    +    @Override
    +    public final List<Attachable> getAttachables() {
    +        return getAttachables(condition);
    +    }
    +
    +    @Override
    +    public final void toSQL(RenderContext context) {
    +        context.keyword("not(").sql(condition).sql(")");
    +    }
    +
    +    @Override
    +    public final void bind(BindContext context) {
    +        context.bind(condition);
    +    }
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/impl/Nvl.java b/jOOQ/src/main/java/org/jooq/impl/Nvl.java
    new file mode 100644
    index 00000000000..4d49e71a8ca
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/impl/Nvl.java
    @@ -0,0 +1,85 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq.impl;
    +
    +import static org.jooq.impl.Factory.function;
    +
    +import org.jooq.Configuration;
    +import org.jooq.Field;
    +
    +/**
    + * @author Lukas Eder
    + */
    +class Nvl<T> extends AbstractFunction<T> {
    +
    +    /**
    +     * Generated UID
    +     */
    +    private static final long serialVersionUID = -7273879239726265322L;
    +
    +    private final Field<T>    arg1;
    +    private final Field<T>    arg2;
    +
    +    Nvl(Field<T> arg1, Field<T> arg2) {
    +        super("nvl", arg1.getDataType(), arg1, arg2);
    +
    +        this.arg1 = arg1;
    +        this.arg2 = arg2;
    +    }
    +
    +    @Override
    +    final Field<T> getFunction0(Configuration configuration) {
    +        switch (configuration.getDialect()) {
    +            case DB2:    // No break
    +            case H2:     // No break
    +            case HSQLDB: // No break
    +            case INGRES: // No break
    +            case ORACLE:
    +                return function("nvl", getDataType(), getArguments());
    +
    +            case DERBY:  // No break
    +            case POSTGRES:
    +                return function("coalesce", getDataType(), getArguments());
    +
    +            case MYSQL:  // No break
    +            case SQLITE: // No break
    +                return function("ifnull", getDataType(), getArguments());
    +
    +            default:
    +                return Factory.decode().when(arg1.isNotNull(), arg1).otherwise(arg2);
    +        }
    +    }
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/impl/Nvl2.java b/jOOQ/src/main/java/org/jooq/impl/Nvl2.java
    new file mode 100644
    index 00000000000..9ab1fbb9570
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/impl/Nvl2.java
    @@ -0,0 +1,77 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq.impl;
    +
    +import static org.jooq.impl.Factory.function;
    +
    +import org.jooq.Configuration;
    +import org.jooq.Field;
    +
    +/**
    + * @author Lukas Eder
    + */
    +class Nvl2<T> extends AbstractFunction<T> {
    +
    +    /**
    +     * Generated UID
    +     */
    +    private static final long serialVersionUID = -7273879239726265322L;
    +
    +    private final Field<?>    arg1;
    +    private final Field<T>    arg2;
    +    private final Field<T>    arg3;
    +
    +    Nvl2(Field<?> arg1, Field<T> arg2, Field<T> arg3) {
    +        super("nvl2", arg2.getDataType(), arg1, arg2, arg3);
    +
    +        this.arg1 = arg1;
    +        this.arg2 = arg2;
    +        this.arg3 = arg3;
    +    }
    +
    +    @Override
    +    final Field<T> getFunction0(Configuration configuration) {
    +        switch (configuration.getDialect()) {
    +            case H2:
    +            case INGRES:
    +            case ORACLE:
    +                return function("nvl2", getDataType(), getArguments());
    +
    +            default:
    +                return Factory.decode().when(arg1.isNotNull(), arg2).otherwise(arg3);
    +        }
    +    }
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/impl/PackageImpl.java b/jOOQ/src/main/java/org/jooq/impl/PackageImpl.java
    new file mode 100644
    index 00000000000..7f1bd5061e8
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/impl/PackageImpl.java
    @@ -0,0 +1,81 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq.impl;
    +
    +import java.util.Collections;
    +import java.util.List;
    +
    +import org.jooq.Attachable;
    +import org.jooq.BindContext;
    +import org.jooq.Package;
    +import org.jooq.RenderContext;
    +import org.jooq.SQLDialect;
    +import org.jooq.Schema;
    +
    +/**
    + * A default implementation for packages (containers of stored procedures and
    + * functions)
    + * <p>
    + * Currently, this is only supported for the {@link SQLDialect#ORACLE} dialect.
    + * <p>
    + * This type is for JOOQ INTERNAL USE only. Do not reference directly
    + *
    + * @author Lukas Eder
    + */
    +public class PackageImpl extends AbstractSchemaProviderQueryPart implements Package {
    +
    +    /**
    +     * Generated UID
    +     */
    +    private static final long serialVersionUID = 7466890004995197675L;
    +
    +    public PackageImpl(String name, Schema schema) {
    +        super(name, schema);
    +    }
    +
    +    @Override
    +    public final void toSQL(RenderContext context) {
    +        context.literal(getName());
    +    }
    +
    +    @Override
    +    public final void bind(BindContext context) {}
    +
    +    @Override
    +    protected List<Attachable> getAttachables0() {
    +        return Collections.emptyList();
    +    }
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/impl/ParamCollector.java b/jOOQ/src/main/java/org/jooq/impl/ParamCollector.java
    new file mode 100644
    index 00000000000..a3b74677e33
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/impl/ParamCollector.java
    @@ -0,0 +1,99 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq.impl;
    +
    +import java.sql.PreparedStatement;
    +import java.sql.SQLException;
    +import java.util.LinkedHashMap;
    +import java.util.Map;
    +
    +import org.jooq.BindContext;
    +import org.jooq.Configuration;
    +import org.jooq.Param;
    +import org.jooq.QueryPart;
    +import org.jooq.QueryPartInternal;
    +import org.jooq.tools.StringUtils;
    +
    +/**
    + * A stub {@link BindContext} that acts as a collector of {@link Param}
    + * {@link QueryPart}'s
    + *
    + * @author Lukas Eder
    + */
    +class ParamCollector extends AbstractBindContext {
    +
    +    /**
    +     * Generated UID
    +     */
    +    private static final long   serialVersionUID = -3741599479523459297L;
    +
    +    final Map<String, Param<?>> result           = new LinkedHashMap<String, Param<?>>();
    +
    +    ParamCollector(Configuration configuration) {
    +        super(configuration);
    +    }
    +
    +    @Override
    +    public final PreparedStatement statement() {
    +        throw new UnsupportedOperationException();
    +    }
    +
    +    @Override
    +    protected final void bindInternal(QueryPartInternal internal) {
    +        if (internal instanceof BindingProvider) {
    +            BindingProvider provider = (BindingProvider) internal;
    +
    +            for (Param<?> param : provider.getBindings()) {
    +                String i = String.valueOf(nextIndex());
    +
    +                if (StringUtils.isBlank(param.getParamName())) {
    +                    result.put(i, param);
    +                }
    +                else {
    +                    result.put(param.getParamName(), param);
    +                }
    +            }
    +        }
    +        else {
    +            super.bindInternal(internal);
    +        }
    +    }
    +
    +    @Override
    +    protected final BindContext bindValue0(Object value, Class<?> type) throws SQLException {
    +        throw new UnsupportedOperationException();
    +    }
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/impl/ParameterImpl.java b/jOOQ/src/main/java/org/jooq/impl/ParameterImpl.java
    new file mode 100644
    index 00000000000..985db2b7244
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/impl/ParameterImpl.java
    @@ -0,0 +1,82 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +
    +package org.jooq.impl;
    +
    +import java.util.Collections;
    +import java.util.List;
    +
    +import org.jooq.Attachable;
    +import org.jooq.BindContext;
    +import org.jooq.DataType;
    +import org.jooq.Parameter;
    +import org.jooq.RenderContext;
    +
    +/**
    + * A common base class for stored procedure parameters
    + *
    + * @author Lukas Eder
    + */
    +class ParameterImpl<T> extends AbstractNamedTypeProviderQueryPart<T> implements Parameter<T> {
    +
    +    private static final long serialVersionUID = -5277225593751085577L;
    +
    +    private final boolean     isDefaulted;
    +
    +    ParameterImpl(String name, DataType<T> type, boolean isDefaulted) {
    +        super(name, type);
    +
    +        this.isDefaulted = isDefaulted;
    +    }
    +
    +    @Override
    +    public final List<Attachable> getAttachables() {
    +        return Collections.emptyList();
    +    }
    +
    +    @Override
    +    public final void bind(BindContext context) {}
    +
    +    @Override
    +    public final void toSQL(RenderContext context) {
    +        context.literal(getName());
    +    }
    +
    +    @Override
    +    public final boolean isDefaulted() {
    +        return isDefaulted;
    +    }
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/impl/Pi.java b/jOOQ/src/main/java/org/jooq/impl/Pi.java
    new file mode 100644
    index 00000000000..95210c1d786
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/impl/Pi.java
    @@ -0,0 +1,76 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq.impl;
    +
    +import static org.jooq.impl.Factory.function;
    +import static org.jooq.impl.Factory.literal;
    +import static org.jooq.impl.Factory.one;
    +import static org.jooq.impl.Factory.two;
    +
    +import java.math.BigDecimal;
    +
    +import org.jooq.Configuration;
    +import org.jooq.Field;
    +
    +/**
    + * @author Lukas Eder
    + */
    +class Pi extends AbstractFunction<BigDecimal> {
    +
    +    /**
    +     * Generated UID
    +     */
    +    private static final long serialVersionUID = -420788300355442056L;
    +
    +    Pi() {
    +        super("pi", SQLDataType.NUMERIC);
    +    }
    +
    +    @Override
    +    final Field<BigDecimal> getFunction0(Configuration configuration) {
    +        switch (configuration.getDialect()) {
    +            case DB2:
    +            case ORACLE:
    +                return Factory.asin(one()).mul(two());
    +
    +            case SQLITE:
    +                return literal(Math.PI, BigDecimal.class);
    +
    +            default:
    +                return function("pi", getDataType());
    +        }
    +    }
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/impl/Pivot.java b/jOOQ/src/main/java/org/jooq/impl/Pivot.java
    new file mode 100644
    index 00000000000..8862c0cd878
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/impl/Pivot.java
    @@ -0,0 +1,347 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq.impl;
    +
    +import static org.jooq.impl.Factory.trueCondition;
    +import static org.jooq.impl.Factory.vals;
    +
    +import java.util.Collection;
    +import java.util.Collections;
    +import java.util.List;
    +
    +import org.jooq.Attachable;
    +import org.jooq.BindContext;
    +import org.jooq.Condition;
    +import org.jooq.Configuration;
    +import org.jooq.Context;
    +import org.jooq.Field;
    +import org.jooq.PivotForStep;
    +import org.jooq.PivotInStep;
    +import org.jooq.QueryPart;
    +import org.jooq.Record;
    +import org.jooq.RenderContext;
    +import org.jooq.Select;
    +import org.jooq.Table;
    +import org.jooq.exception.DataAccessException;
    +
    +/**
    + * A pivot table implementation
    + * <p>
    + * Future versions of jOOQ could simulate Oracle's <code>PIVOT</code> clause by
    + * rendering a subquery instead.
    + *
    + * @author Lukas Eder
    + */
    +class Pivot<T>
    +extends AbstractTable<Record>
    +implements
    +    PivotForStep,
    +    PivotInStep<T> {
    +
    +    /**
    +     * Generated UID
    +     */
    +    private static final long serialVersionUID = -7918219502110473521L;
    +
    +    private final Table<?>    table;
    +    private final FieldList   aggregateFunctions;
    +    private Field<T>          on;
    +    private FieldList         in;
    +
    +    Pivot(Table<?> table, Field<?>... aggregateFunctions) {
    +        super("pivot");
    +
    +        this.table = table;
    +        this.aggregateFunctions = new SelectFieldList(aggregateFunctions);
    +    }
    +
    +    // ------------------------------------------------------------------------
    +    // XXX: Table API
    +    // ------------------------------------------------------------------------
    +
    +    @Override
    +    public final Class<? extends Record> getRecordType() {
    +        return RecordImpl.class;
    +    }
    +
    +    @Override
    +    public final void toSQL(RenderContext context) {
    +        context.sql(pivot(context));
    +    }
    +
    +    private Table<?> pivot(Configuration configuration) {
    +        switch (configuration.getDialect()) {
    +
    +            // Oracle has native support for the PIVOT clause
    +            case ORACLE: {
    +                return new OraclePivotTable();
    +            }
    +
    +            // Some other dialects can simulate it. This implementation is
    +            // EXPERIMENTAL and not officially supported
    +            default: {
    +                return new DefaultPivotTable();
    +            }
    +        }
    +    }
    +
    +    /**
    +     * A simulation of Oracle's <code>PIVOT</code> table
    +     */
    +    private class DefaultPivotTable extends DialectPivotTable {
    +
    +        /**
    +         * Generated UID
    +         */
    +        private static final long serialVersionUID = -5930286639571867314L;
    +
    +        @Override
    +        public void toSQL(RenderContext context) {
    +            context.declareTables(true)
    +                   .sql(select(context))
    +                   .declareTables(false);
    +        }
    +
    +        @Override
    +        public void bind(BindContext context) throws DataAccessException {
    +            context.declareTables(true)
    +                   .bind(select(context))
    +                   .declareTables(false);
    +        }
    +
    +        private Table<Record> select(Context<?> context) {
    +            FieldList groupingFields = new FieldList();
    +            FieldList aliasedGroupingFields = new FieldList();
    +            FieldList aggregatedFields = new FieldList();
    +
    +            Table<?> pivot = table.as("pivot_outer");
    +
    +            // Clearly, the API should be improved to make this more object-
    +            // oriented...
    +
    +            // This loop finds all fields that are used in aggregate
    +            // functions. They're excluded from the GROUP BY clause
    +            for (Field<?> field : aggregateFunctions) {
    +                if (field instanceof Function) {
    +                    for (QueryPart argument : ((Function<?>) field).getArguments()) {
    +                        if (argument instanceof Field) {
    +                            aggregatedFields.add((Field<?>) argument);
    +                        }
    +                    }
    +                }
    +            }
    +
    +            // This loop finds all fields qualify for GROUP BY clauses
    +            for (Field<?> field : table.getFields()) {
    +                if (!aggregatedFields.contains(field)) {
    +                    if (!on.equals(field)) {
    +                        aliasedGroupingFields.add(pivot.getField(field));
    +                        groupingFields.add(field);
    +                    }
    +                }
    +            }
    +
    +            // The product {aggregateFunctions} x {in}
    +            FieldList aggregationSelects = new FieldList();
    +            for (Field<?> inField : in) {
    +                for (Field<?> aggregateFunction : aggregateFunctions) {
    +                    Condition join = trueCondition();
    +
    +                    for (Field<?> field : groupingFields) {
    +                        join = join.and(condition(pivot, field));
    +                    }
    +
    +                    Select<?> aggregateSelect = create(context)
    +                        .select(aggregateFunction)
    +                        .from(table)
    +                        .where(on.equal((Field<T>) inField))
    +                        .and(join);
    +
    +                    aggregationSelects.add(aggregateSelect.asField(inField.getName() + "_" + aggregateFunction.getName()));
    +                }
    +            }
    +
    +            // This is the complete select
    +            Table<Record> select =
    +            create(context).select(aliasedGroupingFields)
    +                           .select(aggregationSelects)
    +                           .from(pivot)
    +                           .where(pivot.getField(on).in(in.toArray(new Field[0])))
    +                           .groupBy(aliasedGroupingFields)
    +                           .asTable();
    +            return select;
    +        }
    +    }
    +
    +    /**
    +     * The Oracle-specific <code>PIVOT</code> implementation
    +     */
    +    private class OraclePivotTable extends DialectPivotTable {
    +
    +        /**
    +         * Generated UID
    +         */
    +        private static final long serialVersionUID = -3451610306872726958L;
    +
    +        @Override
    +        public void toSQL(RenderContext context) {
    +
    +            // Bind variables are not allowed inside of PIVOT clause
    +            boolean inline = context.inline();
    +            boolean declareFields = context.declareFields();
    +            boolean declareTables = context.declareFields();
    +
    +            context.declareTables(true)
    +                   .sql(table)
    +                   .declareTables(declareTables)
    +                   .formatSeparator()
    +                   .keyword("pivot(")
    +                   .inline(true)
    +                   .declareFields(true)
    +                   .sql(aggregateFunctions)
    +                   .formatSeparator()
    +                   .keyword("for ")
    +                   .literal(on.getName())
    +                   .formatSeparator()
    +                   .keyword("in (")
    +                   .sql(in)
    +                   .declareFields(declareFields)
    +                   .inline(inline)
    +                   .sql("))");
    +        }
    +
    +        @Override
    +        public void bind(BindContext context) throws DataAccessException {
    +            context.bind(table);
    +        }
    +    }
    +
    +    /**
    +     * A base class for dialect-specific implementations of the pivot table
    +     */
    +    private abstract class DialectPivotTable extends AbstractTable<Record> {
    +
    +        /**
    +         * Generated UID
    +         */
    +        private static final long serialVersionUID = 2662639259338694177L;
    +
    +        DialectPivotTable() {
    +            super("pivot");
    +        }
    +
    +        @Override
    +        public Class<? extends Record> getRecordType() {
    +            return RecordImpl.class;
    +        }
    +
    +        @Override
    +        public Table<Record> as(String as) {
    +            return new TableAlias<Record>(this, as);
    +        }
    +
    +        @Override
    +        protected FieldList getFieldList() {
    +            return Pivot.this.getFieldList();
    +        }
    +
    +        @Override
    +        protected List<Attachable> getAttachables0() {
    +            return Collections.emptyList();
    +        }
    +    }
    +
    +
    +    /**
    +     * Extracted method for type-safety
    +     */
    +    private <Z> Condition condition(Table<?> pivot, Field<Z> field) {
    +        return field.equal(pivot.getField(field));
    +    }
    +
    +    @Override
    +    public final boolean declaresTables() {
    +        return true;
    +    }
    +
    +    @Override
    +    public final void bind(BindContext context) throws DataAccessException {
    +        context.bind(pivot(context));
    +    }
    +
    +    @Override
    +    public final Table<Record> as(String alias) {
    +        return new TableAlias<Record>(this, alias, true);
    +    }
    +
    +    @Override
    +    protected final FieldList getFieldList() {
    +        return new FieldList();
    +    }
    +
    +    @Override
    +    protected final List<Attachable> getAttachables0() {
    +        return getAttachables(table, aggregateFunctions, on, in);
    +    }
    +
    +    // ------------------------------------------------------------------------
    +    // XXX: Pivot API
    +    // ------------------------------------------------------------------------
    +
    +    @SuppressWarnings("unchecked")
    +    @Override
    +    public final <Z> Pivot<Z> on(Field<Z> field) {
    +        // The previous bound of <T> is Object, but that's irrelevant
    +        this.on = (Field<T>) field;
    +        return (Pivot<Z>) this;
    +    }
    +
    +    @Override
    +    public final Table<Record> in(Object... values) {
    +        return in(vals(values).toArray(new Field<?>[0]));
    +    }
    +
    +    @Override
    +    public final Table<Record> in(Field<?>... f) {
    +        this.in = new SelectFieldList(f);
    +        return this;
    +    }
    +
    +    @Override
    +    public final Table<Record> in(Collection<? extends Field<T>> f) {
    +        return in(f.toArray(new Field[0]));
    +    }
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/impl/Position.java b/jOOQ/src/main/java/org/jooq/impl/Position.java
    new file mode 100644
    index 00000000000..becb48b97a1
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/impl/Position.java
    @@ -0,0 +1,83 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +
    +package org.jooq.impl;
    +
    +import static org.jooq.impl.Factory.function;
    +
    +import org.jooq.Configuration;
    +import org.jooq.Field;
    +
    +/**
    + * @author Lukas Eder
    + */
    +class Position extends AbstractFunction<Integer> {
    +
    +    private static final long   serialVersionUID = 3544690069533526544L;
    +
    +    private final Field<String> search;
    +    private final Field<?>      in;
    +
    +    Position(Field<String> search, Field<?> in) {
    +        super("position", SQLDataType.INTEGER, search, in);
    +
    +        this.search = search;
    +        this.in = in;
    +    }
    +
    +    @Override
    +    final Field<Integer> getFunction0(Configuration configuration) {
    +        switch (configuration.getDialect()) {
    +            case DB2:    // No break
    +            case DERBY:
    +                return function("locate", SQLDataType.INTEGER, search, in);
    +
    +            case INGRES: // No break
    +            case SYBASE:
    +                return function("locate", SQLDataType.INTEGER, in, search);
    +
    +            case ORACLE:
    +                return function("instr", SQLDataType.INTEGER, in, search);
    +
    +            case ASE:
    +            case SQLSERVER:
    +                return function("charindex", SQLDataType.INTEGER, search, in);
    +
    +            default:
    +                return new SQLClause<Integer>("{position}({0} {in} {1})", SQLDataType.INTEGER, search, in);
    +        }
    +    }
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/impl/Power.java b/jOOQ/src/main/java/org/jooq/impl/Power.java
    new file mode 100644
    index 00000000000..c8ee187c04f
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/impl/Power.java
    @@ -0,0 +1,76 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq.impl;
    +
    +import static org.jooq.impl.Factory.function;
    +
    +import java.math.BigDecimal;
    +
    +import org.jooq.Configuration;
    +import org.jooq.Field;
    +
    +/**
    + * @author Lukas Eder
    + */
    +class Power extends AbstractFunction<BigDecimal> {
    +
    +    /**
    +     * Generated UID
    +     */
    +    private static final long             serialVersionUID = -7273879239726265322L;
    +
    +    private final Field<? extends Number> arg1;
    +    private final Field<? extends Number> arg2;
    +
    +    Power(Field<? extends Number> arg1, Field<? extends Number> arg2) {
    +        super("ceil", SQLDataType.NUMERIC, arg1, arg2);
    +
    +        this.arg1 = arg1;
    +        this.arg2 = arg2;
    +    }
    +
    +    @Override
    +    final Field<BigDecimal> getFunction0(Configuration configuration) {
    +        switch (configuration.getDialect()) {
    +            case DERBY:
    +            case SQLITE:
    +                return Factory.exp(Factory.ln(arg1).mul(arg2));
    +
    +            default:
    +                return function("power", SQLDataType.NUMERIC, getArguments());
    +        }
    +    }
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/impl/PreparedStatementProxy.java b/jOOQ/src/main/java/org/jooq/impl/PreparedStatementProxy.java
    new file mode 100644
    index 00000000000..511b8a75df9
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/impl/PreparedStatementProxy.java
    @@ -0,0 +1,707 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq.impl;
    +
    +import java.io.InputStream;
    +import java.io.Reader;
    +import java.math.BigDecimal;
    +import java.net.URL;
    +import java.sql.Array;
    +import java.sql.Blob;
    +import java.sql.Clob;
    +import java.sql.Connection;
    +import java.sql.Date;
    +import java.sql.NClob;
    +import java.sql.ParameterMetaData;
    +import java.sql.PreparedStatement;
    +import java.sql.Ref;
    +import java.sql.ResultSet;
    +import java.sql.ResultSetMetaData;
    +import java.sql.RowId;
    +import java.sql.SQLException;
    +import java.sql.SQLWarning;
    +import java.sql.SQLXML;
    +import java.sql.Statement;
    +import java.sql.Time;
    +import java.sql.Timestamp;
    +import java.util.Calendar;
    +
    +/**
    + * A proxy for a JDBC {@link PreparedStatement} that simulates the API of a
    + * prepared statement, when in fact executing an ad-hoc {@link Statement}
    + *
    + * @author Lukas Eder
    + */
    +class PreparedStatementProxy implements PreparedStatement {
    +
    +    private final Connection connection;
    +    private final Statement  delegate;
    +    private final MethodType methodType;
    +    private final String     sql;
    +    private int              autoGeneratedKeys;
    +    private int[]            columnIndexes;
    +    private String[]         columnNames;
    +
    +    // ------------------------------------------------------------------------
    +    // XXX: Creation of PreparedStatements
    +    // ------------------------------------------------------------------------
    +
    +    private PreparedStatementProxy(Connection connection, String sql, MethodType type, Statement statement) {
    +        this.connection = connection;
    +        this.methodType = type;
    +        this.sql = sql;
    +        this.delegate = statement;
    +    }
    +
    +    private PreparedStatementProxy(Connection connection, String sql, MethodType type) throws SQLException {
    +        this(connection, sql, type, connection.createStatement());
    +    }
    +
    +    PreparedStatementProxy(Connection connection) throws SQLException {
    +        this(connection, null, MethodType.BATCH);
    +    }
    +
    +    PreparedStatementProxy(Connection connection, String sql) throws SQLException {
    +        this(connection, sql, MethodType.SQL);
    +    }
    +
    +    PreparedStatementProxy(Connection connection, String sql, int resultSetType, int resultSetConcurrency) throws SQLException {
    +        this(connection, sql, MethodType.SQL_RST_RSC, connection.createStatement(resultSetType, resultSetConcurrency));
    +    }
    +
    +    PreparedStatementProxy(Connection connection, String sql, int resultSetType, int resultSetConcurrency, int resultSetHoldability) throws SQLException {
    +        this(connection, sql, MethodType.SQL_RST_RSC_RSH, connection.createStatement(resultSetType, resultSetConcurrency, resultSetHoldability));
    +    }
    +
    +    PreparedStatementProxy(Connection connection, String sql, int autoGeneratedKeys) throws SQLException {
    +        this(connection, sql, MethodType.SQL_AGK);
    +
    +        this.autoGeneratedKeys = autoGeneratedKeys;
    +    }
    +
    +    PreparedStatementProxy(Connection connection, String sql, int[] columnIndexes) throws SQLException {
    +        this(connection, sql, MethodType.SQL_CI);
    +
    +        this.columnIndexes = columnIndexes;
    +    }
    +
    +    PreparedStatementProxy(Connection connection, String sql, String[] columnNames) throws SQLException {
    +        this(connection, sql, MethodType.SQL_CN);
    +
    +        this.columnNames = columnNames;
    +    }
    +
    +    // ------------------------------------------------------------------------
    +    // XXX: Utilities
    +    // ------------------------------------------------------------------------
    +
    +    /**
    +     * A descriptor for the various methods that can create a prespared
    +     * statement
    +     */
    +    private static enum MethodType {
    +
    +        /**
    +         * Corresponds to {@link Connection#prepareStatement(String)}
    +         */
    +        SQL,
    +
    +        /**
    +         * Corresponds to {@link Connection#prepareStatement(String, int, int)
             */
    +        SQL_RST_RSC,
    +
    +        /**
    +         * Corresponds to
    +         * {@link Connection#prepareStatement(String, int, int, int)
    +         */
    +        SQL_RST_RSC_RSH,
    +
    +        /**
    +         * Corresponds to
    +         * {@link Connection#prepareStatement(String, int)
    +         */
    +        SQL_AGK,
    +
    +        /**
    +         * Corresponds to
    +         * {@link Connection#prepareStatement(String, int[])
    +         */
    +        SQL_CI,
    +
    +        /**
    +         * Corresponds to
    +         * {@link Connection#prepareStatement(String, String[])
    +         */
    +        SQL_CN,
    +
    +        /**
    +         * Corresponds to {@link Connection#createStatement()} and
    +         * {@link Statement#executeBatch()}
    +         */
    +        BATCH
    +    }
    +
    +    // ------------------------------------------------------------------------
    +    // XXX: Irrelevant methods from java.sql.Statement
    +    // ------------------------------------------------------------------------
    +
    +    @Override
    +    public final void close() throws SQLException {
    +        delegate.close();
    +    }
    +
    +    @Override
    +    public final boolean isClosed() throws SQLException {
    +        return delegate.isClosed();
    +    }
    +
    +    @Override
    +    public final void cancel() throws SQLException {
    +        delegate.cancel();
    +    }
    +
    +    @Override
    +    public final int getMaxFieldSize() throws SQLException {
    +        return delegate.getMaxFieldSize();
    +    }
    +
    +    @Override
    +    public final void setMaxFieldSize(int max) throws SQLException {
    +        delegate.setMaxFieldSize(max);
    +    }
    +
    +    @Override
    +    public final int getMaxRows() throws SQLException {
    +        return delegate.getMaxRows();
    +    }
    +
    +    @Override
    +    public final void setMaxRows(int max) throws SQLException {
    +        delegate.setMaxRows(max);
    +    }
    +
    +    @Override
    +    public final void setEscapeProcessing(boolean enable) throws SQLException {
    +        delegate.setEscapeProcessing(enable);
    +    }
    +
    +    @Override
    +    public final int getQueryTimeout() throws SQLException {
    +        return delegate.getQueryTimeout();
    +    }
    +
    +    @Override
    +    public final void setQueryTimeout(int seconds) throws SQLException {
    +        delegate.setQueryTimeout(seconds);
    +    }
    +
    +    @Override
    +    public final SQLWarning getWarnings() throws SQLException {
    +        return delegate.getWarnings();
    +    }
    +
    +    @Override
    +    public final void clearWarnings() throws SQLException {
    +        delegate.clearWarnings();
    +    }
    +
    +    @Override
    +    public final void setCursorName(String name) throws SQLException {
    +        delegate.setCursorName(name);
    +    }
    +
    +    @Override
    +    public final ResultSet getResultSet() throws SQLException {
    +        return delegate.getResultSet();
    +    }
    +
    +    @Override
    +    public final int getUpdateCount() throws SQLException {
    +        return delegate.getUpdateCount();
    +    }
    +
    +    @Override
    +    public final boolean getMoreResults() throws SQLException {
    +        return delegate.getMoreResults();
    +    }
    +
    +    @Override
    +    public final void setPoolable(boolean poolable) throws SQLException {
    +        delegate.setPoolable(poolable);
    +    }
    +
    +    @Override
    +    public final boolean isPoolable() throws SQLException {
    +        return delegate.isPoolable();
    +    }
    +
    +    @Override
    +    public final <T> T unwrap(Class<T> iface) throws SQLException {
    +        return delegate.unwrap(iface);
    +    }
    +
    +    @Override
    +    public final boolean isWrapperFor(Class<?> iface) throws SQLException {
    +        return delegate.isWrapperFor(iface);
    +    }
    +
    +    @Override
    +    public final void setFetchDirection(int direction) throws SQLException {
    +        delegate.setFetchDirection(direction);
    +    }
    +
    +    @Override
    +    public final int getFetchDirection() throws SQLException {
    +        return delegate.getFetchDirection();
    +    }
    +
    +    @Override
    +    public final void setFetchSize(int rows) throws SQLException {
    +        delegate.setFetchSize(rows);
    +    }
    +
    +    @Override
    +    public final int getFetchSize() throws SQLException {
    +        return delegate.getFetchSize();
    +    }
    +
    +    @Override
    +    public final int getResultSetConcurrency() throws SQLException {
    +        return delegate.getResultSetConcurrency();
    +    }
    +
    +    @Override
    +    public final int getResultSetType() throws SQLException {
    +        return delegate.getResultSetType();
    +    }
    +
    +    @Override
    +    public final int getResultSetHoldability() throws SQLException {
    +        return delegate.getResultSetHoldability();
    +    }
    +
    +    @Override
    +    public final Connection getConnection() throws SQLException {
    +        return connection;
    +    }
    +
    +    @Override
    +    public final boolean getMoreResults(int current) throws SQLException {
    +        return delegate.getMoreResults();
    +    }
    +
    +    @Override
    +    public final ResultSet getGeneratedKeys() throws SQLException {
    +        return delegate.getGeneratedKeys();
    +    }
    +
    +    // ------------------------------------------------------------------------
    +    // XXX: Execute methods from java.sql.PreparedStatement
    +    // ------------------------------------------------------------------------
    +
    +    @Override
    +    public final ResultSet executeQuery() throws SQLException {
    +        return delegate.executeQuery(sql);
    +    }
    +
    +    @Override
    +    public final int executeUpdate() throws SQLException {
    +        switch (methodType) {
    +            case SQL_AGK:
    +                return delegate.executeUpdate(sql, autoGeneratedKeys);
    +            case SQL_CI:
    +                return delegate.executeUpdate(sql, columnIndexes);
    +            case SQL_CN:
    +                return delegate.executeUpdate(sql, columnNames);
    +
    +            case SQL:
    +            case SQL_RST_RSC:
    +            case SQL_RST_RSC_RSH:
    +            default:
    +                return delegate.executeUpdate(sql);
    +        }
    +    }
    +
    +    @Override
    +    public final boolean execute() throws SQLException {
    +        switch (methodType) {
    +            case SQL_AGK:
    +                return delegate.execute(sql, autoGeneratedKeys);
    +            case SQL_CI:
    +                return delegate.execute(sql, columnIndexes);
    +            case SQL_CN:
    +                return delegate.execute(sql, columnNames);
    +
    +            case SQL:
    +            case SQL_RST_RSC:
    +            case SQL_RST_RSC_RSH:
    +            default:
    +                return delegate.execute(sql);
    +        }
    +    }
    +
    +    // ------------------------------------------------------------------------
    +    // XXX: Supported and unsupported batch methods
    +    // ------------------------------------------------------------------------
    +
    +    @Override
    +    public final void addBatch() throws SQLException {
    +        throw new UnsupportedOperationException("Cannot batch execute statements on PreparedStatementProxy");
    +    }
    +
    +    @Override
    +    public final void clearBatch() throws SQLException {
    +        delegate.clearBatch();
    +    }
    +
    +    @Override
    +    public final int[] executeBatch() throws SQLException {
    +        return delegate.executeBatch();
    +    }
    +
    +    @Override
    +    public final void addBatch(String query) throws SQLException {
    +        delegate.addBatch(query);
    +    }
    +
    +    // ------------------------------------------------------------------------
    +    // XXX: Unsupported execute methods from java.sql.Statement
    +    // ------------------------------------------------------------------------
    +
    +    @Override
    +    public final boolean execute(String query) throws SQLException {
    +        throw new UnsupportedOperationException("Cannot use java.sql.Statement.executeXXX() methods on PreparedStatementProxy");
    +    }
    +
    +    @Override
    +    public final ResultSet executeQuery(String query) throws SQLException {
    +        throw new UnsupportedOperationException("Cannot use java.sql.Statement.executeXXX() methods on PreparedStatementProxy");
    +    }
    +
    +    @Override
    +    public final int executeUpdate(String query) throws SQLException {
    +        throw new UnsupportedOperationException("Cannot use java.sql.Statement.executeXXX() methods on PreparedStatementProxy");
    +    }
    +
    +    @Override
    +    public final int executeUpdate(String query, int pAutoGeneratedKeys) throws SQLException {
    +        throw new UnsupportedOperationException("Cannot use java.sql.Statement.executeXXX() methods on PreparedStatementProxy");
    +    }
    +
    +    @Override
    +    public final int executeUpdate(String query, int[] pColumnIndexes) throws SQLException {
    +        throw new UnsupportedOperationException("Cannot use java.sql.Statement.executeXXX() methods on PreparedStatementProxy");
    +    }
    +
    +    @Override
    +    public final int executeUpdate(String query, String[] pColumnNames) throws SQLException {
    +        throw new UnsupportedOperationException("Cannot use java.sql.Statement.executeXXX() methods on PreparedStatementProxy");
    +    }
    +
    +    @Override
    +    public final boolean execute(String query, int pAutoGeneratedKeys) throws SQLException {
    +        throw new UnsupportedOperationException("Cannot use java.sql.Statement.executeXXX() methods on PreparedStatementProxy");
    +    }
    +
    +    @Override
    +    public final boolean execute(String query, int[] pColumnIndexes) throws SQLException {
    +        throw new UnsupportedOperationException("Cannot use java.sql.Statement.executeXXX() methods on PreparedStatementProxy");
    +    }
    +
    +    @Override
    +    public final boolean execute(String query, String[] pColumnNames) throws SQLException {
    +        throw new UnsupportedOperationException("Cannot use java.sql.Statement.executeXXX() methods on PreparedStatementProxy");
    +    }
    +
    +    // ------------------------------------------------------------------------
    +    // XXX: Unsupported bind variable methods from java.sql.PreparedStatement
    +    // ------------------------------------------------------------------------
    +
    +    @Override
    +    public final ResultSetMetaData getMetaData() throws SQLException {
    +        throw new UnsupportedOperationException("Cannot fetch ResultSetMetaData early on PreparedStatementProxy");
    +    }
    +
    +    @Override
    +    public final void clearParameters() throws SQLException {
    +        throw new UnsupportedOperationException("Cannot operate on bind values on a PreparedStatementProxy");
    +    }
    +
    +    @Override
    +    public final ParameterMetaData getParameterMetaData() throws SQLException {
    +        throw new UnsupportedOperationException("Cannot operate on bind values on a PreparedStatementProxy");
    +    }
    +
    +    @Override
    +    public final void setNull(int parameterIndex, int sqlType) throws SQLException {
    +        throw new UnsupportedOperationException("Cannot set a bind value on a PreparedStatementProxy");
    +    }
    +
    +    @Override
    +    public final void setBoolean(int parameterIndex, boolean x) throws SQLException {
    +        throw new UnsupportedOperationException("Cannot set a bind value on a PreparedStatementProxy");
    +    }
    +
    +    @Override
    +    public final void setByte(int parameterIndex, byte x) throws SQLException {
    +        throw new UnsupportedOperationException("Cannot set a bind value on a PreparedStatementProxy");
    +    }
    +
    +    @Override
    +    public final void setShort(int parameterIndex, short x) throws SQLException {
    +        throw new UnsupportedOperationException("Cannot set a bind value on a PreparedStatementProxy");
    +    }
    +
    +    @Override
    +    public final void setInt(int parameterIndex, int x) throws SQLException {
    +        throw new UnsupportedOperationException("Cannot set a bind value on a PreparedStatementProxy");
    +    }
    +
    +    @Override
    +    public final void setLong(int parameterIndex, long x) throws SQLException {
    +        throw new UnsupportedOperationException("Cannot set a bind value on a PreparedStatementProxy");
    +    }
    +
    +    @Override
    +    public final void setFloat(int parameterIndex, float x) throws SQLException {
    +        throw new UnsupportedOperationException("Cannot set a bind value on a PreparedStatementProxy");
    +    }
    +
    +    @Override
    +    public final void setDouble(int parameterIndex, double x) throws SQLException {
    +        throw new UnsupportedOperationException("Cannot set a bind value on a PreparedStatementProxy");
    +    }
    +
    +    @Override
    +    public final void setBigDecimal(int parameterIndex, BigDecimal x) throws SQLException {
    +        throw new UnsupportedOperationException("Cannot set a bind value on a PreparedStatementProxy");
    +    }
    +
    +    @Override
    +    public final void setString(int parameterIndex, String x) throws SQLException {
    +        throw new UnsupportedOperationException("Cannot set a bind value on a PreparedStatementProxy");
    +    }
    +
    +    @Override
    +    public final void setBytes(int parameterIndex, byte[] x) throws SQLException {
    +        throw new UnsupportedOperationException("Cannot set a bind value on a PreparedStatementProxy");
    +    }
    +
    +    @Override
    +    public final void setDate(int parameterIndex, Date x) throws SQLException {
    +        throw new UnsupportedOperationException("Cannot set a bind value on a PreparedStatementProxy");
    +    }
    +
    +    @Override
    +    public final void setTime(int parameterIndex, Time x) throws SQLException {
    +        throw new UnsupportedOperationException("Cannot set a bind value on a PreparedStatementProxy");
    +    }
    +
    +    @Override
    +    public final void setTimestamp(int parameterIndex, Timestamp x) throws SQLException {
    +        throw new UnsupportedOperationException("Cannot set a bind value on a PreparedStatementProxy");
    +    }
    +
    +    @Override
    +    public final void setAsciiStream(int parameterIndex, InputStream x, int length) throws SQLException {
    +        throw new UnsupportedOperationException("Cannot set a bind value on a PreparedStatementProxy");
    +    }
    +
    +    @Override
    +    public final void setUnicodeStream(int parameterIndex, InputStream x, int length) throws SQLException {
    +        throw new UnsupportedOperationException("Cannot set a bind value on a PreparedStatementProxy");
    +    }
    +
    +    @Override
    +    public final void setBinaryStream(int parameterIndex, InputStream x, int length) throws SQLException {
    +        throw new UnsupportedOperationException("Cannot set a bind value on a PreparedStatementProxy");
    +    }
    +
    +    @Override
    +    public final void setObject(int parameterIndex, Object x, int targetSqlType) throws SQLException {
    +        throw new UnsupportedOperationException("Cannot set a bind value on a PreparedStatementProxy");
    +    }
    +
    +    @Override
    +    public final void setObject(int parameterIndex, Object x) throws SQLException {
    +        throw new UnsupportedOperationException("Cannot set a bind value on a PreparedStatementProxy");
    +    }
    +
    +    @Override
    +    public final void setCharacterStream(int parameterIndex, Reader reader, int length) throws SQLException {
    +        throw new UnsupportedOperationException("Cannot set a bind value on a PreparedStatementProxy");
    +    }
    +
    +    @Override
    +    public final void setRef(int parameterIndex, Ref x) throws SQLException {
    +        throw new UnsupportedOperationException("Cannot set a bind value on a PreparedStatementProxy");
    +    }
    +
    +    @Override
    +    public final void setBlob(int parameterIndex, Blob x) throws SQLException {
    +        throw new UnsupportedOperationException("Cannot set a bind value on a PreparedStatementProxy");
    +    }
    +
    +    @Override
    +    public final void setClob(int parameterIndex, Clob x) throws SQLException {
    +        throw new UnsupportedOperationException("Cannot set a bind value on a PreparedStatementProxy");
    +    }
    +
    +    @Override
    +    public final void setArray(int parameterIndex, Array x) throws SQLException {
    +        throw new UnsupportedOperationException("Cannot set a bind value on a PreparedStatementProxy");
    +    }
    +
    +    @Override
    +    public final void setDate(int parameterIndex, Date x, Calendar cal) throws SQLException {
    +        throw new UnsupportedOperationException("Cannot set a bind value on a PreparedStatementProxy");
    +    }
    +
    +    @Override
    +    public final void setTime(int parameterIndex, Time x, Calendar cal) throws SQLException {
    +        throw new UnsupportedOperationException("Cannot set a bind value on a PreparedStatementProxy");
    +    }
    +
    +    @Override
    +    public final void setTimestamp(int parameterIndex, Timestamp x, Calendar cal) throws SQLException {
    +        throw new UnsupportedOperationException("Cannot set a bind value on a PreparedStatementProxy");
    +    }
    +
    +    @Override
    +    public final void setNull(int parameterIndex, int sqlType, String typeName) throws SQLException {
    +        throw new UnsupportedOperationException("Cannot set a bind value on a PreparedStatementProxy");
    +    }
    +
    +    @Override
    +    public final void setURL(int parameterIndex, URL x) throws SQLException {
    +        throw new UnsupportedOperationException("Cannot set a bind value on a PreparedStatementProxy");
    +    }
    +
    +    @Override
    +    public final void setRowId(int parameterIndex, RowId x) throws SQLException {
    +        throw new UnsupportedOperationException("Cannot set a bind value on a PreparedStatementProxy");
    +    }
    +
    +    @Override
    +    public final void setNString(int parameterIndex, String value) throws SQLException {
    +        throw new UnsupportedOperationException("Cannot set a bind value on a PreparedStatementProxy");
    +    }
    +
    +    @Override
    +    public final void setNCharacterStream(int parameterIndex, Reader value, long length) throws SQLException {
    +        throw new UnsupportedOperationException("Cannot set a bind value on a PreparedStatementProxy");
    +    }
    +
    +    @Override
    +    public final void setNClob(int parameterIndex, NClob value) throws SQLException {
    +        throw new UnsupportedOperationException("Cannot set a bind value on a PreparedStatementProxy");
    +    }
    +
    +    @Override
    +    public final void setClob(int parameterIndex, Reader reader, long length) throws SQLException {
    +        throw new UnsupportedOperationException("Cannot set a bind value on a PreparedStatementProxy");
    +    }
    +
    +    @Override
    +    public final void setBlob(int parameterIndex, InputStream inputStream, long length) throws SQLException {
    +        throw new UnsupportedOperationException("Cannot set a bind value on a PreparedStatementProxy");
    +    }
    +
    +    @Override
    +    public final void setNClob(int parameterIndex, Reader reader, long length) throws SQLException {
    +        throw new UnsupportedOperationException("Cannot set a bind value on a PreparedStatementProxy");
    +    }
    +
    +    @Override
    +    public final void setSQLXML(int parameterIndex, SQLXML xmlObject) throws SQLException {
    +        throw new UnsupportedOperationException("Cannot set a bind value on a PreparedStatementProxy");
    +    }
    +
    +    @Override
    +    public final void setObject(int parameterIndex, Object x, int targetSqlType, int scaleOrLength) throws SQLException {
    +        throw new UnsupportedOperationException("Cannot set a bind value on a PreparedStatementProxy");
    +    }
    +
    +    @Override
    +    public final void setAsciiStream(int parameterIndex, InputStream x, long length) throws SQLException {
    +        throw new UnsupportedOperationException("Cannot set a bind value on a PreparedStatementProxy");
    +    }
    +
    +    @Override
    +    public final void setBinaryStream(int parameterIndex, InputStream x, long length) throws SQLException {
    +        throw new UnsupportedOperationException("Cannot set a bind value on a PreparedStatementProxy");
    +    }
    +
    +    @Override
    +    public final void setCharacterStream(int parameterIndex, Reader reader, long length) throws SQLException {
    +        throw new UnsupportedOperationException("Cannot set a bind value on a PreparedStatementProxy");
    +    }
    +
    +    @Override
    +    public final void setAsciiStream(int parameterIndex, InputStream x) throws SQLException {
    +        throw new UnsupportedOperationException("Cannot set a bind value on a PreparedStatementProxy");
    +    }
    +
    +    @Override
    +    public final void setBinaryStream(int parameterIndex, InputStream x) throws SQLException {
    +        throw new UnsupportedOperationException("Cannot set a bind value on a PreparedStatementProxy");
    +    }
    +
    +    @Override
    +    public final void setCharacterStream(int parameterIndex, Reader reader) throws SQLException {
    +        throw new UnsupportedOperationException("Cannot set a bind value on a PreparedStatementProxy");
    +    }
    +
    +    @Override
    +    public final void setNCharacterStream(int parameterIndex, Reader value) throws SQLException {
    +        throw new UnsupportedOperationException("Cannot set a bind value on a PreparedStatementProxy");
    +    }
    +
    +    @Override
    +    public final void setClob(int parameterIndex, Reader reader) throws SQLException {
    +        throw new UnsupportedOperationException("Cannot set a bind value on a PreparedStatementProxy");
    +    }
    +
    +    @Override
    +    public final void setBlob(int parameterIndex, InputStream inputStream) throws SQLException {
    +        throw new UnsupportedOperationException("Cannot set a bind value on a PreparedStatementProxy");
    +    }
    +
    +    @Override
    +    public final void setNClob(int parameterIndex, Reader reader) throws SQLException {
    +        throw new UnsupportedOperationException("Cannot set a bind value on a PreparedStatementProxy");
    +    }
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/impl/Qualifier.java b/jOOQ/src/main/java/org/jooq/impl/Qualifier.java
    new file mode 100644
    index 00000000000..5e6f5068fa7
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/impl/Qualifier.java
    @@ -0,0 +1,95 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq.impl;
    +
    +import java.util.Collections;
    +import java.util.List;
    +
    +import org.jooq.Attachable;
    +import org.jooq.BindContext;
    +import org.jooq.DataType;
    +import org.jooq.Field;
    +import org.jooq.RenderContext;
    +
    +/**
    + * A <code>Qualifier</code> is a {@link Field} that always renders a field name
    + * or alias as a literal using {@link RenderContext#literal(String)}
    + *
    + * @author Lukas Eder
    + */
    +class Qualifier<T> extends AbstractField<T> {
    +
    +    /**
    +     * Generated UID
    +     */
    +    private static final long serialVersionUID = 6937002867156868761L;
    +
    +    private final String[]    sql;
    +
    +    Qualifier(DataType<T> type, String... sql) {
    +        super(sql[sql.length - 1], type);
    +
    +        this.sql = sql;
    +    }
    +
    +    // ------------------------------------------------------------------------
    +    // Field API
    +    // ------------------------------------------------------------------------
    +
    +    @Override
    +    public final List<Attachable> getAttachables() {
    +        return Collections.emptyList();
    +    }
    +
    +    @Override
    +    public final void toSQL(RenderContext context) {
    +        String separator = "";
    +        for (String string : sql) {
    +            context.sql(separator);
    +            context.literal(string);
    +
    +            separator = ".";
    +        }
    +    }
    +
    +    @Override
    +    public final void bind(BindContext context) {}
    +
    +    @Override
    +    public final boolean isNullLiteral() {
    +        return false;
    +    }
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/impl/QueryPartList.java b/jOOQ/src/main/java/org/jooq/impl/QueryPartList.java
    new file mode 100644
    index 00000000000..ad5ed40ac4b
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/impl/QueryPartList.java
    @@ -0,0 +1,266 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +
    +package org.jooq.impl;
    +
    +import java.util.ArrayList;
    +import java.util.Arrays;
    +import java.util.Collection;
    +import java.util.Iterator;
    +import java.util.List;
    +import java.util.ListIterator;
    +
    +import org.jooq.Attachable;
    +import org.jooq.BindContext;
    +import org.jooq.QueryPart;
    +import org.jooq.RenderContext;
    +
    +/**
    + * @author Lukas Eder
    + */
    +class QueryPartList<T extends QueryPart> extends AbstractQueryPart implements List<T> {
    +
    +    private static final long serialVersionUID = -2936922742534009564L;
    +    private final List<T>     wrappedList      = new ArrayList<T>();
    +
    +    QueryPartList() {
    +        this((Collection<T>) null);
    +    }
    +
    +    QueryPartList(Collection<? extends T> wrappedList) {
    +        super();
    +
    +        if (wrappedList != null) {
    +            addAll(wrappedList);
    +        }
    +    }
    +
    +    QueryPartList(T... wrappedList) {
    +        this(Arrays.asList(wrappedList));
    +    }
    +
    +
    +    @Override
    +    public final List<Attachable> getAttachables() {
    +        return getAttachables(this);
    +    }
    +
    +    @Override
    +    public final void toSQL(RenderContext context) {
    +
    +        // Some lists render different SQL when empty
    +        if (isEmpty()) {
    +            toSQLEmptyList(context);
    +        }
    +
    +        else {
    +            String separator = "";
    +            boolean indent = (size() > 1);
    +
    +            if (indent)
    +                context.formatIndentStart();
    +
    +            for (T queryPart : this) {
    +                context.sql(separator);
    +
    +                if (indent)
    +                    context.formatNewLine();
    +
    +                context.sql(queryPart);
    +                separator = ", ";
    +            }
    +
    +            if (indent)
    +                context.formatIndentEnd();
    +        }
    +    }
    +
    +    @Override
    +    public final void bind(BindContext context) {
    +        context.bind(wrappedList);
    +    }
    +
    +    /**
    +     * Subclasses may override this method
    +     */
    +    @SuppressWarnings("unused")
    +    protected void toSQLEmptyList(RenderContext context) {
    +    }
    +
    +
    +
    +    // -------------------------------------------------------------------------
    +    // Implementations from the List API
    +    // -------------------------------------------------------------------------
    +
    +    @Override
    +    public final int size() {
    +        return wrappedList.size();
    +    }
    +
    +    @Override
    +    public final boolean isEmpty() {
    +        return wrappedList.isEmpty();
    +    }
    +
    +    @Override
    +    public final boolean contains(Object o) {
    +        return wrappedList.contains(o);
    +    }
    +
    +    @Override
    +    public final Iterator<T> iterator() {
    +        return wrappedList.iterator();
    +    }
    +
    +    @Override
    +    public final Object[] toArray() {
    +        return wrappedList.toArray();
    +    }
    +
    +    @Override
    +    public final <E> E[] toArray(E[] a) {
    +        return wrappedList.toArray(a);
    +    }
    +
    +    @Override
    +    public final boolean add(T e) {
    +        if (e != null) {
    +            return wrappedList.add(e);
    +        }
    +
    +        return false;
    +    }
    +
    +    @Override
    +    public final boolean remove(Object o) {
    +        return wrappedList.remove(o);
    +    }
    +
    +    @Override
    +    public final boolean containsAll(Collection<?> c) {
    +        return wrappedList.containsAll(c);
    +    }
    +
    +    @Override
    +    public final boolean addAll(Collection<? extends T> c) {
    +        return wrappedList.addAll(removeNulls(c));
    +    }
    +
    +    @Override
    +    public final boolean addAll(int index, Collection<? extends T> c) {
    +        return wrappedList.addAll(index, removeNulls(c));
    +    }
    +
    +    private final List<T> removeNulls(Collection<? extends T> c) {
    +        List<T> list = new ArrayList<T>(c);
    +        Iterator<T> it = list.iterator();
    +
    +        while (it.hasNext()) {
    +            if (it.next() == null) {
    +                it.remove();
    +            }
    +        }
    +
    +        return list;
    +    }
    +
    +    @Override
    +    public final boolean removeAll(Collection<?> c) {
    +        return wrappedList.removeAll(c);
    +    }
    +
    +    @Override
    +    public final boolean retainAll(Collection<?> c) {
    +        return wrappedList.retainAll(c);
    +    }
    +
    +    @Override
    +    public final void clear() {
    +        wrappedList.clear();
    +    }
    +
    +    @Override
    +    public final T get(int index) {
    +        return wrappedList.get(index);
    +    }
    +
    +    @Override
    +    public final T set(int index, T element) {
    +        if (element != null) {
    +            return wrappedList.set(index, element);
    +        }
    +
    +        return null;
    +    }
    +
    +    @Override
    +    public final void add(int index, T element) {
    +        if (element != null) {
    +            wrappedList.add(index, element);
    +        }
    +    }
    +
    +    @Override
    +    public final T remove(int index) {
    +        return wrappedList.remove(index);
    +    }
    +
    +    @Override
    +    public final int indexOf(Object o) {
    +        return wrappedList.indexOf(o);
    +    }
    +
    +    @Override
    +    public final int lastIndexOf(Object o) {
    +        return wrappedList.lastIndexOf(o);
    +    }
    +
    +    @Override
    +    public final ListIterator<T> listIterator() {
    +        return wrappedList.listIterator();
    +    }
    +
    +    @Override
    +    public final ListIterator<T> listIterator(int index) {
    +        return wrappedList.listIterator(index);
    +    }
    +
    +    @Override
    +    public final List<T> subList(int fromIndex, int toIndex) {
    +        return wrappedList.subList(fromIndex, toIndex);
    +    }
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/impl/Radians.java b/jOOQ/src/main/java/org/jooq/impl/Radians.java
    new file mode 100644
    index 00000000000..d924a7a0dd3
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/impl/Radians.java
    @@ -0,0 +1,77 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq.impl;
    +
    +import static org.jooq.impl.Factory.function;
    +import static org.jooq.impl.Factory.literal;
    +import static org.jooq.impl.Factory.pi;
    +
    +import java.math.BigDecimal;
    +
    +import org.jooq.Configuration;
    +import org.jooq.Field;
    +
    +/**
    + * @author Lukas Eder
    + */
    +class Radians extends AbstractFunction<BigDecimal> {
    +
    +    /**
    +     * Generated UID
    +     */
    +    private static final long serialVersionUID = -7273879239726265322L;
    +
    +    private final Field<?>    argument;
    +
    +    Radians(Field<?> argument) {
    +        super("radians", SQLDataType.NUMERIC, argument);
    +
    +        this.argument = argument;
    +    }
    +
    +    @Override
    +    final Field<BigDecimal> getFunction0(Configuration configuration) {
    +        switch (configuration.getDialect()) {
    +            case INGRES:
    +            case ORACLE:
    +            case SQLITE:
    +                return argument.cast(BigDecimal.class).mul(pi()).div(literal(180));
    +
    +            default:
    +                return function("radians", SQLDataType.NUMERIC, argument);
    +        }
    +    }
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/impl/Rand.java b/jOOQ/src/main/java/org/jooq/impl/Rand.java
    new file mode 100644
    index 00000000000..5b887b8410d
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/impl/Rand.java
    @@ -0,0 +1,75 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq.impl;
    +
    +import static org.jooq.impl.Factory.field;
    +import static org.jooq.impl.Factory.function;
    +
    +import java.math.BigDecimal;
    +
    +import org.jooq.Configuration;
    +import org.jooq.Field;
    +
    +/**
    + * @author Lukas Eder
    + */
    +class Rand extends AbstractFunction<BigDecimal> {
    +
    +    /**
    +     * Generated UID
    +     */
    +    private static final long serialVersionUID = -7273879239726265322L;
    +
    +    Rand() {
    +        super("rand", SQLDataType.NUMERIC);
    +    }
    +
    +    @Override
    +    final Field<BigDecimal> getFunction0(Configuration configuration) {
    +        switch (configuration.getDialect()) {
    +            case DERBY:
    +            case INGRES:
    +            case POSTGRES:
    +            case SQLITE:
    +                return function("random", SQLDataType.NUMERIC);
    +
    +            case ORACLE:
    +                return field("dbms_random.random", BigDecimal.class);
    +        }
    +
    +        return function("rand", SQLDataType.NUMERIC);
    +    }
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/impl/RecordImpl.java b/jOOQ/src/main/java/org/jooq/impl/RecordImpl.java
    new file mode 100644
    index 00000000000..7cda886fab7
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/impl/RecordImpl.java
    @@ -0,0 +1,58 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq.impl;
    +
    +import org.jooq.FieldProvider;
    +
    +/**
    + * A general purpose record, typically used for ad-hoc types.
    + *
    + * @author Lukas Eder
    + */
    +class RecordImpl extends AbstractRecord {
    +
    +    /**
    +     * Generated UID
    +     */
    +    private static final long serialVersionUID = -2201346180421463830L;
    +
    +    /**
    +     * Create a new general purpos record
    +     */
    +    public RecordImpl(FieldProvider fields) {
    +        super(fields);
    +    }
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/impl/ReferenceImpl.java b/jOOQ/src/main/java/org/jooq/impl/ReferenceImpl.java
    new file mode 100644
    index 00000000000..a1a8d24b424
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/impl/ReferenceImpl.java
    @@ -0,0 +1,66 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq.impl;
    +
    +import org.jooq.ForeignKey;
    +import org.jooq.Record;
    +import org.jooq.Table;
    +import org.jooq.TableField;
    +import org.jooq.UniqueKey;
    +
    +/**
    + * @author Lukas Eder
    + */
    +class ReferenceImpl<R extends Record, U extends Record> extends AbstractKey<R> implements ForeignKey<R, U> {
    +
    +    /**
    +     * Generated UID
    +     */
    +    private static final long  serialVersionUID = 3636724364192618701L;
    +
    +    private final UniqueKey<U> key;
    +
    +    ReferenceImpl(UniqueKey<U> key, Table<R> table, TableField<R, ?>... fields) {
    +        super(table, fields);
    +
    +        this.key = key;
    +    }
    +
    +    @Override
    +    public final UniqueKey<U> getKey() {
    +        return key;
    +    }
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/impl/Repeat.java b/jOOQ/src/main/java/org/jooq/impl/Repeat.java
    new file mode 100644
    index 00000000000..f1c5a1347d7
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/impl/Repeat.java
    @@ -0,0 +1,78 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq.impl;
    +
    +import static org.jooq.impl.Factory.function;
    +
    +import org.jooq.Configuration;
    +import org.jooq.Field;
    +
    +/**
    + * @author Lukas Eder
    + */
    +class Repeat extends AbstractFunction<String> {
    +
    +    /**
    +     * Generated UID
    +     */
    +    private static final long             serialVersionUID = -7273879239726265322L;
    +
    +    private final Field<String>           string;
    +    private final Field<? extends Number> count;
    +
    +    Repeat(Field<String> string, Field<? extends Number> count) {
    +        super("rpad", SQLDataType.VARCHAR, string, count);
    +
    +        this.string = string;
    +        this.count = count;
    +    }
    +
    +    @Override
    +    final Field<String> getFunction0(Configuration configuration) {
    +        switch (configuration.getDialect()) {
    +            case INGRES:
    +            case ORACLE:
    +                return Factory.rpad(string, Factory.length(string).mul(count), string);
    +
    +            case ASE:
    +            case SQLSERVER:
    +                return function("replicate", SQLDataType.VARCHAR, string, count);
    +
    +            default:
    +                return function("repeat", SQLDataType.VARCHAR, string, count);
    +        }
    +    }
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/impl/Replace.java b/jOOQ/src/main/java/org/jooq/impl/Replace.java
    new file mode 100644
    index 00000000000..ebee9767034
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/impl/Replace.java
    @@ -0,0 +1,96 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq.impl;
    +
    +import static org.jooq.impl.Factory.function;
    +import static org.jooq.impl.Factory.val;
    +import static org.jooq.impl.SQLDataType.VARCHAR;
    +
    +import org.jooq.Configuration;
    +import org.jooq.Field;
    +
    +/**
    + * @author Lukas Eder
    + */
    +class Replace extends AbstractFunction<String> {
    +
    +    /**
    +     * Generated UID
    +     */
    +    private static final long serialVersionUID = -7273879239726265322L;
    +
    +    Replace(Field<?>... arguments) {
    +        super("replace", SQLDataType.VARCHAR, arguments);
    +    }
    +
    +    @Override
    +    final Field<String> getFunction0(Configuration configuration) {
    +        Field<?>[] args = getArguments();
    +
    +        // [#861] Many dialects don't ship with a single-argument replace
    +        // function:
    +        switch (configuration.getDialect()) {
    +            case ASE: {
    +                if (args.length == 2) {
    +                    return function("str_replace", VARCHAR, args[0], args[1], val(null));
    +                }
    +                else {
    +                    return function("str_replace", VARCHAR, args);
    +                }
    +            }
    +
    +            case DB2:
    +            case HSQLDB:
    +            case INGRES:
    +            case MYSQL:
    +            case POSTGRES:
    +            case SQLITE:
    +            case SQLSERVER:
    +            case SYBASE: {
    +                if (args.length == 2) {
    +                    return function("replace", VARCHAR, args[0], args[1], val(""));
    +                }
    +                else {
    +                    return function("replace", VARCHAR, args);
    +                }
    +            }
    +
    +            default: {
    +                return function("replace", VARCHAR, args);
    +            }
    +        }
    +    }
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/impl/ResultImpl.java b/jOOQ/src/main/java/org/jooq/impl/ResultImpl.java
    new file mode 100644
    index 00000000000..b4e68eba57e
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/impl/ResultImpl.java
    @@ -0,0 +1,1441 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +
    +package org.jooq.impl;
    +
    +import static java.lang.Math.max;
    +import static java.lang.Math.min;
    +import static org.jooq.tools.StringUtils.abbreviate;
    +import static org.jooq.tools.StringUtils.leftPad;
    +import static org.jooq.tools.StringUtils.rightPad;
    +
    +import java.math.BigDecimal;
    +import java.math.BigInteger;
    +import java.sql.Date;
    +import java.sql.Time;
    +import java.sql.Timestamp;
    +import java.util.ArrayList;
    +import java.util.Arrays;
    +import java.util.Collection;
    +import java.util.HashMap;
    +import java.util.Iterator;
    +import java.util.LinkedHashMap;
    +import java.util.List;
    +import java.util.ListIterator;
    +import java.util.Map;
    +
    +import javax.xml.parsers.DocumentBuilder;
    +import javax.xml.parsers.DocumentBuilderFactory;
    +import javax.xml.parsers.ParserConfigurationException;
    +
    +import org.jooq.ArrayRecord;
    +import org.jooq.Attachable;
    +import org.jooq.AttachableInternal;
    +import org.jooq.Configuration;
    +import org.jooq.Converter;
    +import org.jooq.EnumType;
    +import org.jooq.Field;
    +import org.jooq.FieldProvider;
    +import org.jooq.Record;
    +import org.jooq.RecordHandler;
    +import org.jooq.Result;
    +import org.jooq.Store;
    +import org.jooq.Table;
    +import org.jooq.exception.MappingException;
    +import org.jooq.tools.Convert;
    +import org.jooq.tools.StringUtils;
    +import org.jooq.tools.json.JSONObject;
    +
    +import org.w3c.dom.Document;
    +import org.w3c.dom.Element;
    +
    +/**
    + * @author Lukas Eder
    + */
    +class ResultImpl<R extends Record> implements Result<R>, AttachableInternal {
    +
    +    /**
    +     * Generated UID
    +     */
    +    private static final long    serialVersionUID = 6416154375799578362L;
    +
    +    private final FieldProvider  fields;
    +    private final List<R>        records;
    +    private final AttachableImpl attachable;
    +
    +    ResultImpl(Configuration configuration, FieldProvider fields) {
    +        this.fields = fields;
    +        this.records = new ArrayList<R>();
    +        this.attachable = new AttachableImpl(this, configuration);
    +    }
    +
    +    // -------------------------------------------------------------------------
    +    // Attachable API
    +    // -------------------------------------------------------------------------
    +
    +    @Override
    +    public final <I> I internalAPI(Class<I> internalType) throws ClassCastException {
    +        return internalType.cast(this);
    +    }
    +
    +    @Override
    +    public final void attach(Configuration configuration) {
    +        attachable.attach(configuration);
    +    }
    +
    +    @Override
    +    public final List<Attachable> getAttachables() {
    +        List<Attachable> result = new ArrayList<Attachable>();
    +
    +        for (Store<?> item : records) {
    +            if (item != null) {
    +                result.add(item);
    +            }
    +        }
    +
    +        return result;
    +    }
    +
    +    @Override
    +    public final Configuration getConfiguration() {
    +        return attachable.getConfiguration();
    +    }
    +
    +    // -------------------------------------------------------------------------
    +    // Result API
    +    // -------------------------------------------------------------------------
    +
    +    @Override
    +    public final List<Field<?>> getFields() {
    +        return fields.getFields();
    +    }
    +
    +    @Override
    +    public final <T> Field<T> getField(Field<T> field) {
    +        return fields.getField(field);
    +    }
    +
    +    @Override
    +    public final Field<?> getField(String name) {
    +        return fields.getField(name);
    +    }
    +
    +    @Override
    +    public final Field<?> getField(int index) {
    +        return fields.getField(index);
    +    }
    +
    +    @Override
    +    public final int getIndex(Field<?> field) throws IllegalArgumentException {
    +        return fields.getIndex(field);
    +    }
    +
    +    @Override
    +    public final boolean isEmpty() {
    +        return records.isEmpty();
    +    }
    +
    +    @Override
    +    public final boolean isNotEmpty() {
    +        return !records.isEmpty();
    +    }
    +
    +    @Override
    +    public final <T> T getValue(int index, Field<T> field) throws IndexOutOfBoundsException {
    +        return get(index).getValue(field);
    +    }
    +
    +    @Override
    +    public final <T> T getValue(int index, Field<T> field, T defaultValue) throws IndexOutOfBoundsException {
    +        return get(index).getValue(field, defaultValue);
    +    }
    +
    +    @Override
    +    public final Object getValue(int index, int fieldIndex) throws IndexOutOfBoundsException {
    +        return get(index).getValue(fieldIndex);
    +    }
    +
    +    @Override
    +    public final Object getValue(int index, int fieldIndex, Object defaultValue) throws IndexOutOfBoundsException {
    +        return get(index).getValue(fieldIndex, defaultValue);
    +    }
    +
    +    @Override
    +    public final Object getValue(int index, String fieldName) throws IndexOutOfBoundsException {
    +        return get(index).getValue(fieldName);
    +    }
    +
    +    @Override
    +    public final Object getValue(int index, String fieldName, Object defaultValue) throws IndexOutOfBoundsException {
    +        return get(index).getValue(fieldName, defaultValue);
    +    }
    +
    +    @Override
    +    public final <A extends ArrayRecord<T>, T> T[] getValueAsArray(int index, Field<A> field)
    +        throws IndexOutOfBoundsException {
    +        return get(index).getValueAsArray(field);
    +    }
    +
    +    @Override
    +    public final <A extends ArrayRecord<T>, T> T[] getValueAsArray(int index, Field<A> field, T[] defaultValue)
    +        throws IndexOutOfBoundsException {
    +        return get(index).getValueAsArray(field, defaultValue);
    +    }
    +
    +    @Override
    +    public final String getValueAsString(int index, Field<?> field) throws IllegalArgumentException {
    +        return get(index).getValueAsString(field);
    +    }
    +
    +    @Override
    +    public final String getValueAsString(int index, Field<?> field, String defaultValue) throws IllegalArgumentException {
    +        return get(index).getValueAsString(field, defaultValue);
    +    }
    +
    +    @Override
    +    public final String getValueAsString(int index, int fieldIndex) throws IllegalArgumentException {
    +        return get(index).getValueAsString(fieldIndex);
    +    }
    +
    +    @Override
    +    public final String getValueAsString(int index, int fieldIndex, String defaultValue) throws IllegalArgumentException {
    +        return get(index).getValueAsString(fieldIndex, defaultValue);
    +    }
    +
    +    @Override
    +    public final Byte getValueAsByte(int index, Field<?> field) throws IllegalArgumentException {
    +        return get(index).getValueAsByte(field);
    +    }
    +
    +    @Override
    +    public final Byte getValueAsByte(int index, Field<?> field, Byte defaultValue) throws IllegalArgumentException {
    +        return get(index).getValueAsByte(field, defaultValue);
    +    }
    +
    +    @Override
    +    public final Byte getValueAsByte(int index, int fieldIndex) throws IllegalArgumentException {
    +        return get(index).getValueAsByte(fieldIndex);
    +    }
    +
    +    @Override
    +    public final Byte getValueAsByte(int index, int fieldIndex, Byte defaultValue) throws IllegalArgumentException {
    +        return get(index).getValueAsByte(fieldIndex, defaultValue);
    +    }
    +
    +    @Override
    +    public final Short getValueAsShort(int index, Field<?> field) throws IllegalArgumentException {
    +        return get(index).getValueAsShort(field);
    +    }
    +
    +    @Override
    +    public final Short getValueAsShort(int index, Field<?> field, Short defaultValue) throws IllegalArgumentException {
    +        return get(index).getValueAsShort(field, defaultValue);
    +    }
    +
    +    @Override
    +    public final Short getValueAsShort(int index, int fieldIndex) throws IllegalArgumentException {
    +        return get(index).getValueAsShort(fieldIndex);
    +    }
    +
    +    @Override
    +    public final Short getValueAsShort(int index, int fieldIndex, Short defaultValue) throws IllegalArgumentException {
    +        return get(index).getValueAsShort(fieldIndex, defaultValue);
    +    }
    +
    +    @Override
    +    public final Integer getValueAsInteger(int index, Field<?> field) throws IllegalArgumentException {
    +        return get(index).getValueAsInteger(field);
    +    }
    +
    +    @Override
    +    public final Integer getValueAsInteger(int index, Field<?> field, Integer defaultValue) throws IllegalArgumentException {
    +        return get(index).getValueAsInteger(field, defaultValue);
    +    }
    +
    +    @Override
    +    public final Integer getValueAsInteger(int index, int fieldIndex) throws IllegalArgumentException {
    +        return get(index).getValueAsInteger(fieldIndex);
    +    }
    +
    +    @Override
    +    public final Integer getValueAsInteger(int index, int fieldIndex, Integer defaultValue) throws IllegalArgumentException {
    +        return get(index).getValueAsInteger(fieldIndex, defaultValue);
    +    }
    +
    +    @Override
    +    public final Long getValueAsLong(int index, Field<?> field) throws IllegalArgumentException {
    +        return get(index).getValueAsLong(field);
    +    }
    +
    +    @Override
    +    public final Long getValueAsLong(int index, Field<?> field, Long defaultValue) throws IllegalArgumentException {
    +        return get(index).getValueAsLong(field, defaultValue);
    +    }
    +
    +    @Override
    +    public final Long getValueAsLong(int index, int fieldIndex) throws IllegalArgumentException {
    +        return get(index).getValueAsLong(fieldIndex);
    +    }
    +
    +    @Override
    +    public final Long getValueAsLong(int index, int fieldIndex, Long defaultValue) throws IllegalArgumentException {
    +        return get(index).getValueAsLong(fieldIndex, defaultValue);
    +    }
    +
    +    @Override
    +    public final BigInteger getValueAsBigInteger(int index, Field<?> field) throws IllegalArgumentException {
    +        return get(index).getValueAsBigInteger(field);
    +    }
    +
    +    @Override
    +    public final BigInteger getValueAsBigInteger(int index, Field<?> field, BigInteger defaultValue)
    +        throws IllegalArgumentException {
    +        return get(index).getValueAsBigInteger(field, defaultValue);
    +    }
    +
    +    @Override
    +    public final BigInteger getValueAsBigInteger(int index, int fieldIndex) throws IllegalArgumentException {
    +        return get(index).getValueAsBigInteger(fieldIndex);
    +    }
    +
    +    @Override
    +    public final BigInteger getValueAsBigInteger(int index, int fieldIndex, BigInteger defaultValue)
    +        throws IllegalArgumentException {
    +        return get(index).getValueAsBigInteger(fieldIndex, defaultValue);
    +    }
    +
    +    @Override
    +    public final Float getValueAsFloat(int index, Field<?> field) throws IllegalArgumentException {
    +        return get(index).getValueAsFloat(field);
    +    }
    +
    +    @Override
    +    public final Float getValueAsFloat(int index, Field<?> field, Float defaultValue) throws IllegalArgumentException {
    +        return get(index).getValueAsFloat(field, defaultValue);
    +    }
    +
    +    @Override
    +    public final Float getValueAsFloat(int index, int fieldIndex) throws IllegalArgumentException {
    +        return get(index).getValueAsFloat(fieldIndex);
    +    }
    +
    +    @Override
    +    public final Float getValueAsFloat(int index, int fieldIndex, Float defaultValue) throws IllegalArgumentException {
    +        return get(index).getValueAsFloat(fieldIndex, defaultValue);
    +    }
    +
    +    @Override
    +    public final Double getValueAsDouble(int index, Field<?> field) throws IllegalArgumentException {
    +        return get(index).getValueAsDouble(field);
    +    }
    +
    +    @Override
    +    public final Double getValueAsDouble(int index, Field<?> field, Double defaultValue) throws IllegalArgumentException {
    +        return get(index).getValueAsDouble(field, defaultValue);
    +    }
    +
    +    @Override
    +    public final Double getValueAsDouble(int index, int fieldIndex) throws IllegalArgumentException {
    +        return get(index).getValueAsDouble(fieldIndex);
    +    }
    +
    +    @Override
    +    public final Double getValueAsDouble(int index, int fieldIndex, Double defaultValue) throws IllegalArgumentException {
    +        return get(index).getValueAsDouble(fieldIndex, defaultValue);
    +    }
    +
    +    @Override
    +    public final BigDecimal getValueAsBigDecimal(int index, Field<?> field) throws IllegalArgumentException {
    +        return get(index).getValueAsBigDecimal(field);
    +    }
    +
    +    @Override
    +    public final BigDecimal getValueAsBigDecimal(int index, Field<?> field, BigDecimal defaultValue)
    +        throws IllegalArgumentException {
    +        return get(index).getValueAsBigDecimal(field, defaultValue);
    +    }
    +
    +    @Override
    +    public final BigDecimal getValueAsBigDecimal(int index, int fieldIndex) throws IllegalArgumentException {
    +        return get(index).getValueAsBigDecimal(fieldIndex);
    +    }
    +
    +    @Override
    +    public final BigDecimal getValueAsBigDecimal(int index, int fieldIndex, BigDecimal defaultValue)
    +        throws IllegalArgumentException {
    +        return get(index).getValueAsBigDecimal(fieldIndex, defaultValue);
    +    }
    +
    +    @Override
    +    public final Boolean getValueAsBoolean(int index, Field<?> field) throws IllegalArgumentException {
    +        return get(index).getValueAsBoolean(field);
    +    }
    +
    +    @Override
    +    public final Boolean getValueAsBoolean(int index, Field<?> field, Boolean defaultValue) throws IllegalArgumentException {
    +        return get(index).getValueAsBoolean(field, defaultValue);
    +    }
    +
    +    @Override
    +    public final Boolean getValueAsBoolean(int index, int fieldIndex) throws IllegalArgumentException {
    +        return get(index).getValueAsBoolean(fieldIndex);
    +    }
    +
    +    @Override
    +    public final Boolean getValueAsBoolean(int index, int fieldIndex, Boolean defaultValue) throws IllegalArgumentException {
    +        return get(index).getValueAsBoolean(fieldIndex, defaultValue);
    +    }
    +
    +    @Override
    +    public final Timestamp getValueAsTimestamp(int index, Field<?> field) throws IllegalArgumentException {
    +        return get(index).getValueAsTimestamp(field);
    +    }
    +
    +    @Override
    +    public final Timestamp getValueAsTimestamp(int index, Field<?> field, Timestamp defaultValue)
    +        throws IllegalArgumentException {
    +        return get(index).getValueAsTimestamp(field, defaultValue);
    +    }
    +
    +    @Override
    +    public final Timestamp getValueAsTimestamp(int index, int fieldIndex) throws IllegalArgumentException {
    +        return get(index).getValueAsTimestamp(fieldIndex);
    +    }
    +
    +    @Override
    +    public final Timestamp getValueAsTimestamp(int index, int fieldIndex, Timestamp defaultValue)
    +        throws IllegalArgumentException {
    +        return get(index).getValueAsTimestamp(fieldIndex, defaultValue);
    +    }
    +
    +    @Override
    +    public final Date getValueAsDate(int index, Field<?> field) throws IllegalArgumentException {
    +        return get(index).getValueAsDate(field);
    +    }
    +
    +    @Override
    +    public final Date getValueAsDate(int index, Field<?> field, Date defaultValue) throws IllegalArgumentException {
    +        return get(index).getValueAsDate(field, defaultValue);
    +    }
    +
    +    @Override
    +    public final Date getValueAsDate(int index, int fieldIndex) throws IllegalArgumentException {
    +        return get(index).getValueAsDate(fieldIndex);
    +    }
    +
    +    @Override
    +    public final Date getValueAsDate(int index, int fieldIndex, Date defaultValue) throws IllegalArgumentException {
    +        return get(index).getValueAsDate(fieldIndex, defaultValue);
    +    }
    +
    +    @Override
    +    public final Time getValueAsTime(int index, Field<?> field) throws IllegalArgumentException {
    +        return get(index).getValueAsTime(field);
    +    }
    +
    +    @Override
    +    public final Time getValueAsTime(int index, Field<?> field, Time defaultValue) throws IllegalArgumentException {
    +        return get(index).getValueAsTime(field, defaultValue);
    +    }
    +
    +    @Override
    +    public final Time getValueAsTime(int index, int fieldIndex) throws IllegalArgumentException {
    +        return get(index).getValueAsTime(fieldIndex);
    +    }
    +
    +    @Override
    +    public final Time getValueAsTime(int index, int fieldIndex, Time defaultValue) throws IllegalArgumentException {
    +        return get(index).getValueAsTime(fieldIndex, defaultValue);
    +    }
    +
    +    @Override
    +    public final String getValueAsString(int index, String fieldName) throws IllegalArgumentException {
    +        return get(index).getValueAsString(fieldName);
    +    }
    +
    +    @Override
    +    public final String getValueAsString(int index, String fieldName, String defaultValue) throws IllegalArgumentException {
    +        return get(index).getValueAsString(fieldName, defaultValue);
    +    }
    +
    +    @Override
    +    public final Byte getValueAsByte(int index, String fieldName) throws IllegalArgumentException {
    +        return get(index).getValueAsByte(fieldName);
    +    }
    +
    +    @Override
    +    public final Byte getValueAsByte(int index, String fieldName, Byte defaultValue) throws IllegalArgumentException {
    +        return get(index).getValueAsByte(fieldName, defaultValue);
    +    }
    +
    +    @Override
    +    public final Short getValueAsShort(int index, String fieldName) throws IllegalArgumentException {
    +        return get(index).getValueAsShort(fieldName);
    +    }
    +
    +    @Override
    +    public final Short getValueAsShort(int index, String fieldName, Short defaultValue) throws IllegalArgumentException {
    +        return get(index).getValueAsShort(fieldName, defaultValue);
    +    }
    +
    +    @Override
    +    public final Integer getValueAsInteger(int index, String fieldName) throws IllegalArgumentException {
    +        return get(index).getValueAsInteger(fieldName);
    +    }
    +
    +    @Override
    +    public final Integer getValueAsInteger(int index, String fieldName, Integer defaultValue) throws IllegalArgumentException {
    +        return get(index).getValueAsInteger(fieldName, defaultValue);
    +    }
    +
    +    @Override
    +    public final Long getValueAsLong(int index, String fieldName) throws IllegalArgumentException {
    +        return get(index).getValueAsLong(fieldName);
    +    }
    +
    +    @Override
    +    public final Long getValueAsLong(int index, String fieldName, Long defaultValue) throws IllegalArgumentException {
    +        return get(index).getValueAsLong(fieldName, defaultValue);
    +    }
    +
    +    @Override
    +    public final BigInteger getValueAsBigInteger(int index, String fieldName) throws IllegalArgumentException {
    +        return get(index).getValueAsBigInteger(fieldName);
    +    }
    +
    +    @Override
    +    public final BigInteger getValueAsBigInteger(int index, String fieldName, BigInteger defaultValue)
    +        throws IllegalArgumentException {
    +        return get(index).getValueAsBigInteger(fieldName, defaultValue);
    +    }
    +
    +    @Override
    +    public final Float getValueAsFloat(int index, String fieldName) throws IllegalArgumentException {
    +        return get(index).getValueAsFloat(fieldName);
    +    }
    +
    +    @Override
    +    public final Float getValueAsFloat(int index, String fieldName, Float defaultValue) throws IllegalArgumentException {
    +        return get(index).getValueAsFloat(fieldName, defaultValue);
    +    }
    +
    +    @Override
    +    public final Double getValueAsDouble(int index, String fieldName) throws IllegalArgumentException {
    +        return get(index).getValueAsDouble(fieldName);
    +    }
    +
    +    @Override
    +    public final Double getValueAsDouble(int index, String fieldName, Double defaultValue) throws IllegalArgumentException {
    +        return get(index).getValueAsDouble(fieldName, defaultValue);
    +    }
    +
    +    @Override
    +    public final BigDecimal getValueAsBigDecimal(int index, String fieldName) throws IllegalArgumentException {
    +        return get(index).getValueAsBigDecimal(fieldName);
    +    }
    +
    +    @Override
    +    public final BigDecimal getValueAsBigDecimal(int index, String fieldName, BigDecimal defaultValue)
    +        throws IllegalArgumentException {
    +        return get(index).getValueAsBigDecimal(fieldName, defaultValue);
    +    }
    +
    +    @Override
    +    public final Boolean getValueAsBoolean(int index, String fieldName) throws IllegalArgumentException {
    +        return get(index).getValueAsBoolean(fieldName);
    +    }
    +
    +    @Override
    +    public final Boolean getValueAsBoolean(int index, String fieldName, Boolean defaultValue) throws IllegalArgumentException {
    +        return get(index).getValueAsBoolean(fieldName, defaultValue);
    +    }
    +
    +    @Override
    +    public final Timestamp getValueAsTimestamp(int index, String fieldName) throws IllegalArgumentException {
    +        return get(index).getValueAsTimestamp(fieldName);
    +    }
    +
    +    @Override
    +    public final Timestamp getValueAsTimestamp(int index, String fieldName, Timestamp defaultValue)
    +        throws IllegalArgumentException {
    +        return get(index).getValueAsTimestamp(fieldName, defaultValue);
    +    }
    +
    +    @Override
    +    public final Date getValueAsDate(int index, String fieldName) throws IllegalArgumentException {
    +        return get(index).getValueAsDate(fieldName);
    +    }
    +
    +    @Override
    +    public final Date getValueAsDate(int index, String fieldName, Date defaultValue) throws IllegalArgumentException {
    +        return get(index).getValueAsDate(fieldName, defaultValue);
    +    }
    +
    +    @Override
    +    public final Time getValueAsTime(int index, String fieldName) throws IllegalArgumentException {
    +        return get(index).getValueAsTime(fieldName);
    +    }
    +
    +    @Override
    +    public final Time getValueAsTime(int index, String fieldName, Time defaultValue) throws IllegalArgumentException {
    +        return get(index).getValueAsTime(fieldName, defaultValue);
    +    }
    +    @Override
    +    public final <T> List<T> getValues(Field<T> field) {
    +        List<T> result = new ArrayList<T>();
    +
    +        for (R record : this) {
    +            result.add(record.getValue(field));
    +        }
    +
    +        return result;
    +    }
    +
    +    @Override
    +    public final <T> List<T> getValues(Field<?> field, Class<? extends T> type) {
    +        return Convert.convert(getValues(field), type);
    +    }
    +
    +    @Override
    +    public final <T, U> List<U> getValues(Field<T> field, Converter<? super T, U> converter) {
    +        return Convert.convert(getValues(field), converter);
    +    }
    +
    +    @Override
    +    public final List<?> getValues(int fieldIndex) {
    +        return getValues(getField(fieldIndex));
    +    }
    +
    +    @Override
    +    public final <T> List<T> getValues(int fieldIndex, Class<? extends T> type) {
    +        return Convert.convert(getValues(fieldIndex), type);
    +    }
    +
    +    @Override
    +    public final <U> List<U> getValues(int fieldIndex, Converter<?, U> converter) {
    +        return Convert.convert(getValues(fieldIndex), converter);
    +    }
    +
    +    @Override
    +    public final List<?> getValues(String fieldName) {
    +        return getValues(getField(fieldName));
    +    }
    +
    +    @Override
    +    public final <T> List<T> getValues(String fieldName, Class<? extends T> type) {
    +        return Convert.convert(getValues(fieldName), type);
    +    }
    +
    +    @Override
    +    public final <U> List<U> getValues(String fieldName, Converter<?, U> converter) {
    +        return Convert.convert(getValues(fieldName), converter);
    +    }
    +
    +    @Override
    +    public final List<BigDecimal> getValuesAsBigDecimal(Field<?> field) {
    +        List<BigDecimal> result = new ArrayList<BigDecimal>();
    +
    +        for (R record : this) {
    +            result.add(record.getValueAsBigDecimal(field));
    +        }
    +
    +        return result;
    +    }
    +
    +    @Override
    +    public final List<BigDecimal> getValuesAsBigDecimal(int fieldIndex) {
    +        return getValuesAsBigDecimal(getField(fieldIndex));
    +    }
    +
    +    @Override
    +    public final List<BigInteger> getValuesAsBigInteger(Field<?> field) {
    +        List<BigInteger> result = new ArrayList<BigInteger>();
    +
    +        for (R record : this) {
    +            result.add(record.getValueAsBigInteger(field));
    +        }
    +
    +        return result;
    +    }
    +
    +    @Override
    +    public final List<BigInteger> getValuesAsBigInteger(int fieldIndex) {
    +        return getValuesAsBigInteger(getField(fieldIndex));
    +    }
    +
    +    @Override
    +    public final List<Byte> getValuesAsByte(Field<?> field) {
    +        List<Byte> result = new ArrayList<Byte>();
    +
    +        for (R record : this) {
    +            result.add(record.getValueAsByte(field));
    +        }
    +
    +        return result;
    +    }
    +
    +    @Override
    +    public final List<Byte> getValuesAsByte(int fieldIndex) {
    +        return getValuesAsByte(getField(fieldIndex));
    +    }
    +
    +    @Override
    +    public final List<Date> getValuesAsDate(Field<?> field) {
    +        List<Date> result = new ArrayList<Date>();
    +
    +        for (R record : this) {
    +            result.add(record.getValueAsDate(field));
    +        }
    +
    +        return result;
    +    }
    +
    +    @Override
    +    public final List<Date> getValuesAsDate(int fieldIndex) {
    +        return getValuesAsDate(getField(fieldIndex));
    +    }
    +
    +    @Override
    +    public final List<Double> getValuesAsDouble(Field<?> field) {
    +        List<Double> result = new ArrayList<Double>();
    +
    +        for (R record : this) {
    +            result.add(record.getValueAsDouble(field));
    +        }
    +
    +        return result;
    +    }
    +
    +    @Override
    +    public final List<Double> getValuesAsDouble(int fieldIndex) {
    +        return getValuesAsDouble(getField(fieldIndex));
    +    }
    +
    +    @Override
    +    public final List<Float> getValuesAsFloat(Field<?> field) {
    +        List<Float> result = new ArrayList<Float>();
    +
    +        for (R record : this) {
    +            result.add(record.getValueAsFloat(field));
    +        }
    +
    +        return result;
    +    }
    +
    +    @Override
    +    public final List<Float> getValuesAsFloat(int fieldIndex) {
    +        return getValuesAsFloat(getField(fieldIndex));
    +    }
    +
    +    @Override
    +    public final List<Integer> getValuesAsInteger(Field<?> field) {
    +        List<Integer> result = new ArrayList<Integer>();
    +
    +        for (R record : this) {
    +            result.add(record.getValueAsInteger(field));
    +        }
    +
    +        return result;
    +    }
    +
    +    @Override
    +    public final List<Integer> getValuesAsInteger(int fieldIndex) {
    +        return getValuesAsInteger(getField(fieldIndex));
    +    }
    +
    +    @Override
    +    public final List<Long> getValuesAsLong(Field<?> field) {
    +        List<Long> result = new ArrayList<Long>();
    +
    +        for (R record : this) {
    +            result.add(record.getValueAsLong(field));
    +        }
    +
    +        return result;
    +    }
    +
    +    @Override
    +    public final List<Long> getValuesAsLong(int fieldIndex) {
    +        return getValuesAsLong(getField(fieldIndex));
    +    }
    +
    +    @Override
    +    public final List<Short> getValuesAsShort(Field<?> field) {
    +        List<Short> result = new ArrayList<Short>();
    +
    +        for (R record : this) {
    +            result.add(record.getValueAsShort(field));
    +        }
    +
    +        return result;
    +    }
    +
    +    @Override
    +    public final List<Short> getValuesAsShort(int fieldIndex) {
    +        return getValuesAsShort(getField(fieldIndex));
    +    }
    +
    +    @Override
    +    public final List<String> getValuesAsString(Field<?> field) {
    +        List<String> result = new ArrayList<String>();
    +
    +        for (R record : this) {
    +            result.add(record.getValueAsString(field));
    +        }
    +
    +        return result;
    +    }
    +
    +    @Override
    +    public final List<String> getValuesAsString(int fieldIndex) {
    +        return getValuesAsString(getField(fieldIndex));
    +    }
    +
    +    @Override
    +    public final List<Time> getValuesAsTime(Field<?> field) {
    +        List<Time> result = new ArrayList<Time>();
    +
    +        for (R record : this) {
    +            result.add(record.getValueAsTime(field));
    +        }
    +
    +        return result;
    +    }
    +
    +    @Override
    +    public final List<Time> getValuesAsTime(int fieldIndex) {
    +        return getValuesAsTime(getField(fieldIndex));
    +    }
    +
    +    @Override
    +    public final List<Timestamp> getValuesAsTimestamp(Field<?> field) {
    +        List<Timestamp> result = new ArrayList<Timestamp>();
    +
    +        for (R record : this) {
    +            result.add(record.getValueAsTimestamp(field));
    +        }
    +
    +        return result;
    +    }
    +
    +    @Override
    +    public final List<Timestamp> getValuesAsTimestamp(int fieldIndex) {
    +        return getValuesAsTimestamp(getField(fieldIndex));
    +    }
    +
    +    @Override
    +    public final List<BigDecimal> getValuesAsBigDecimal(String fieldName) {
    +        return getValuesAsBigDecimal(getField(fieldName));
    +    }
    +
    +    @Override
    +    public final List<BigInteger> getValuesAsBigInteger(String fieldName) {
    +        return getValuesAsBigInteger(getField(fieldName));
    +    }
    +
    +    @Override
    +    public final List<Byte> getValuesAsByte(String fieldName) {
    +        return getValuesAsByte(getField(fieldName));
    +    }
    +
    +    @Override
    +    public final List<Date> getValuesAsDate(String fieldName) {
    +        return getValuesAsDate(getField(fieldName));
    +    }
    +
    +    @Override
    +    public final List<Double> getValuesAsDouble(String fieldName) {
    +        return getValuesAsDouble(getField(fieldName));
    +    }
    +
    +    @Override
    +    public final List<Float> getValuesAsFloat(String fieldName) {
    +        return getValuesAsFloat(getField(fieldName));
    +    }
    +
    +    @Override
    +    public final List<Integer> getValuesAsInteger(String fieldName) {
    +        return getValuesAsInteger(getField(fieldName));
    +    }
    +
    +    @Override
    +    public final List<Long> getValuesAsLong(String fieldName) {
    +        return getValuesAsLong(getField(fieldName));
    +    }
    +
    +    @Override
    +    public final List<Short> getValuesAsShort(String fieldName) {
    +        return getValuesAsShort(getField(fieldName));
    +    }
    +
    +    @Override
    +    public final List<String> getValuesAsString(String fieldName) {
    +        return getValuesAsString(getField(fieldName));
    +    }
    +
    +    @Override
    +    public final List<Time> getValuesAsTime(String fieldName) {
    +        return getValuesAsTime(getField(fieldName));
    +    }
    +
    +    @Override
    +    public final List<Timestamp> getValuesAsTimestamp(String fieldName) {
    +        return getValuesAsTimestamp(getField(fieldName));
    +    }
    +
    +    final void addRecord(R record) {
    +        records.add(record);
    +    }
    +
    +    @Override
    +    public final String format() {
    +        return format(50);
    +    }
    +
    +    @Override
    +    public final String format(int maxRecords) {
    +        final int MAX_WIDTH = 50;
    +        final int MAX_RECORDS = 50;
    +
    +        StringBuilder sb = new StringBuilder();
    +        Map<Field<?>, Integer> widths = new HashMap<Field<?>, Integer>();
    +
    +        // Initialise widths
    +        for (Field<?> f : getFields()) {
    +            widths.put(f, 4);
    +        }
    +
    +        // Find width for every field to satisfy formatting the first 50 records
    +        for (Field<?> f : getFields()) {
    +            widths.put(f, min(MAX_WIDTH, max(widths.get(f), f.getName().length())));
    +
    +            for (int i = 0; i < min(MAX_RECORDS, size()); i++) {
    +                widths.put(f, min(MAX_WIDTH, max(widths.get(f), format0(getValue(i, f)).length())));
    +            }
    +        }
    +
    +        // Begin the writing
    +        // ---------------------------------------------------------------------
    +
    +        // Write top line
    +        sb.append("+");
    +        for (Field<?> f : getFields()) {
    +            sb.append(rightPad("", widths.get(f), "-"));
    +            sb.append("+");
    +        }
    +
    +        // Write headers
    +        sb.append("\n|");
    +        for (Field<?> f : getFields()) {
    +            String padded;
    +
    +            if (Number.class.isAssignableFrom(f.getType())) {
    +                padded = leftPad(f.getName(), widths.get(f));
    +            }
    +            else {
    +                padded = rightPad(f.getName(), widths.get(f));
    +            }
    +
    +            sb.append(abbreviate(padded, widths.get(f)));
    +            sb.append("|");
    +        }
    +
    +        // Write separator
    +        sb.append("\n+");
    +        for (Field<?> f : getFields()) {
    +            sb.append(rightPad("", widths.get(f), "-"));
    +            sb.append("+");
    +        }
    +
    +        // Write columns
    +        for (int i = 0; i < min(maxRecords, size()); i++) {
    +            sb.append("\n|");
    +            for (Field<?> f : getFields()) {
    +                String value = format0(getValue(i, f)).replace("\n", "{lf}").replace("\r", "{cr}");
    +                String padded;
    +
    +                if (Number.class.isAssignableFrom(f.getType())) {
    +                    padded = leftPad(value, widths.get(f));
    +                }
    +                else {
    +                    padded = rightPad(value, widths.get(f));
    +                }
    +
    +                sb.append(abbreviate(padded, widths.get(f)));
    +                sb.append("|");
    +            }
    +        }
    +
    +        // Write bottom line
    +        if (size() > 0) {
    +            sb.append("\n+");
    +            for (Field<?> f : getFields()) {
    +                sb.append(rightPad("", widths.get(f), "-"));
    +                sb.append("+");
    +            }
    +        }
    +
    +        // Write truncation message, if applicable
    +        if (maxRecords < size()) {
    +            sb.append("\n|...");
    +            sb.append(size() - maxRecords);
    +            sb.append(" record(s) truncated...");
    +        }
    +
    +        return sb.toString();
    +    }
    +
    +    @Override
    +    public final String formatHTML() {
    +        StringBuilder sb = new StringBuilder();
    +
    +        sb.append("<table>");
    +        sb.append("<thead>");
    +        sb.append("<tr>");
    +
    +        for (Field<?> field : getFields()) {
    +            sb.append("<th>");
    +            sb.append(field.getName());
    +            sb.append("</th>");
    +        }
    +
    +        sb.append("</tr>");
    +        sb.append("</thead>");
    +        sb.append("<tbody>");
    +
    +        for (Record record : this) {
    +            sb.append("<tr>");
    +
    +            for (Field<?> field : getFields()) {
    +                sb.append("<td>");
    +                sb.append(format0(record.getValue(field)));
    +                sb.append("</td>");
    +            }
    +
    +            sb.append("</tr>");
    +        }
    +
    +        sb.append("</tbody>");
    +        sb.append("</table>");
    +
    +        return sb.toString();
    +    }
    +
    +    @Override
    +    public final String formatCSV() {
    +        return formatCSV(',');
    +    }
    +
    +    @Override
    +    public final String formatCSV(char delimiter) {
    +        StringBuilder sb = new StringBuilder();
    +
    +        String sep1 = "";
    +        for (Field<?> field : getFields()) {
    +            sb.append(sep1);
    +            sb.append(formatCSV0(field.getName()));
    +
    +            sep1 = Character.toString(delimiter);
    +        }
    +
    +        sb.append("\n");
    +
    +        for (Record record : this) {
    +            String sep2 = "";
    +            for (Field<?> field : getFields()) {
    +                sb.append(sep2);
    +                sb.append(formatCSV0(record.getValue(field)));
    +
    +                sep2 = Character.toString(delimiter);
    +            }
    +
    +            sb.append("\n");
    +        }
    +
    +        return sb.toString();
    +    }
    +
    +    private final String formatCSV0(Object value) {
    +
    +        // Escape null and empty strings
    +        if (value == null || "".equals(value)) {
    +            return "\"\"";
    +        }
    +
    +        String result = format0(value);
    +
    +        if (StringUtils.containsAny(result, ',', ';', '\t', '"', '\n', '\r', '\'')) {
    +            return "\"" + result.replace("\"", "\"\"") + "\"";
    +        }
    +        else {
    +            return result;
    +        }
    +    }
    +
    +    private final String format0(Object value) {
    +        String formatted;
    +
    +        if (value == null) {
    +            formatted = "{null}";
    +        }
    +        else if (value.getClass() == byte[].class) {
    +            formatted = Arrays.toString((byte[]) value);
    +        }
    +        else if (value.getClass().isArray()) {
    +            formatted = Arrays.toString((Object[]) value);
    +        }
    +        else if (value instanceof EnumType) {
    +            formatted = ((EnumType) value).getLiteral();
    +        }
    +        else {
    +            formatted = value.toString();
    +        }
    +
    +        return formatted;
    +    }
    +
    +    @Override
    +    public final String formatJSON() {
    +        List<String> f = new ArrayList<String>();
    +        List<List<Object>> r = new ArrayList<List<Object>>();
    +
    +        for (Field<?> field : getFields()) {
    +            f.add(field.getName());
    +        }
    +
    +        for (Record record : this) {
    +            List<Object> list = new ArrayList<Object>();
    +
    +            for (Field<?> field : getFields()) {
    +                list.add(record.getValue(field));
    +            }
    +
    +            r.add(list);
    +        }
    +
    +        Map<String, List<?>> map = new LinkedHashMap<String, List<?>>();
    +
    +        map.put("fields", f);
    +        map.put("records", r);
    +
    +        return JSONObject.toJSONString(map);
    +    }
    +
    +    @Override
    +    public final String formatXML() {
    +        StringBuilder sb = new StringBuilder();
    +
    +        sb.append("<jooq-export:result xmlns:jooq-export=\"http://www.jooq.org/xsd/jooq-export-1.6.2.xsd\">");
    +        sb.append("<fields>");
    +
    +        for (Field<?> field : getFields()) {
    +            sb.append("<field name=\"");
    +            sb.append(escapeXML(field.getName()));
    +            sb.append("\"/>");
    +        }
    +
    +        sb.append("</fields>");
    +        sb.append("<records>");
    +
    +        for (Record record : this) {
    +            sb.append("<record>");
    +
    +            for (Field<?> field : getFields()) {
    +                Object value = record.getValue(field);
    +
    +                sb.append("<value field=\"");
    +                sb.append(escapeXML(field.getName()));
    +                sb.append("\"");
    +
    +                if (value == null) {
    +                    sb.append("/>");
    +                }
    +                else {
    +                    sb.append(">");
    +                    sb.append(escapeXML(format0(value)));
    +                    sb.append("</value>");
    +                }
    +            }
    +
    +            sb.append("</record>");
    +        }
    +
    +        sb.append("</records>");
    +        sb.append("</jooq-export:result>");
    +
    +        return sb.toString();
    +    }
    +
    +    @Override
    +    public final Document exportXML() {
    +        return intoXML();
    +    }
    +
    +    @Override
    +    public final Document intoXML() {
    +        try {
    +            DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();
    +            DocumentBuilder builder = factory.newDocumentBuilder();
    +            Document document = builder.newDocument();
    +
    +            Element eResult = document.createElement("jooq-export:result");
    +            eResult.setAttribute("xmlns:jooq-export", "http://www.jooq.org/xsd/jooq-export-1.6.2.xsd");
    +            document.appendChild(eResult);
    +
    +            Element eFields = document.createElement("fields");
    +            eResult.appendChild(eFields);
    +
    +            for (Field<?> field : getFields()) {
    +                Element eField = document.createElement("field");
    +                eField.setAttribute("name", field.getName());
    +                eFields.appendChild(eField);
    +            }
    +
    +            Element eRecords = document.createElement("records");
    +            eResult.appendChild(eRecords);
    +
    +            for (Record record : this) {
    +                Element eRecord = document.createElement("record");
    +                eRecords.appendChild(eRecord);
    +
    +                for (Field<?> field : getFields()) {
    +                    Object value = record.getValue(field);
    +
    +                    Element eValue = document.createElement("value");
    +                    eValue.setAttribute("field", field.getName());
    +                    eRecord.appendChild(eValue);
    +
    +                    if (value != null) {
    +                        eValue.setTextContent(format0(value));
    +                    }
    +                }
    +            }
    +
    +            return document;
    +        }
    +        catch (ParserConfigurationException ignore) {
    +            throw new RuntimeException(ignore);
    +        }
    +    }
    +
    +    private final String escapeXML(String string) {
    +        return StringUtils.replaceEach(string,
    +            new String[] { "\"", "'", "<", ">", "&" },
    +            new String[] { "&quot;", "&apos;", "&lt;", "&gt;", "&amp;"});
    +    }
    +
    +    @Override
    +    public final Object[][] intoArray() throws MappingException {
    +        int size = size();
    +        Object[][] array = new Object[size][];
    +
    +        for (int i = 0; i < size; i++) {
    +            array[i] = get(i).intoArray();
    +        }
    +
    +        return array;
    +    }
    +
    +    @Override
    +    public final <T> List<T> into(Class<? extends T> type) {
    +        List<T> list = new ArrayList<T>();
    +
    +        for (R record : this) {
    +            list.add(record.into(type));
    +        }
    +
    +        return list;
    +    }
    +
    +    @Override
    +    public final <Z extends Record> Result<Z> into(Table<Z> table) {
    +        Result<Z> list = new ResultImpl<Z>(getConfiguration(), table);
    +
    +        for (R record : this) {
    +            list.add(record.into(table));
    +        }
    +
    +        return list;
    +    }
    +
    +    @Override
    +    public final <H extends RecordHandler<R>> H into(H handler) {
    +        for (R record : this) {
    +            handler.next(record);
    +        }
    +
    +        return handler;
    +    }
    +
    +    // -------------------------------------------------------------------------
    +    // Object API
    +    // -------------------------------------------------------------------------
    +
    +    @Override
    +    public String toString() {
    +        return format();
    +    }
    +
    +    @Override
    +    public int hashCode() {
    +        return records.hashCode();
    +    }
    +
    +    @SuppressWarnings("unchecked")
    +    @Override
    +    public boolean equals(Object obj) {
    +        if (obj instanceof ResultImpl) {
    +            ResultImpl<R> other = (ResultImpl<R>) obj;
    +            return records.equals(other.records);
    +        }
    +
    +        return false;
    +    }
    +
    +    // -------------------------------------------------------------------------
    +    // List API
    +    // -------------------------------------------------------------------------
    +
    +    @Override
    +    public final int size() {
    +        return records.size();
    +    }
    +
    +    @Override
    +    public final boolean contains(Object o) {
    +        return records.contains(o);
    +    }
    +
    +    @Override
    +    public final Object[] toArray() {
    +        return records.toArray();
    +    }
    +
    +    @Override
    +    public final <T> T[] toArray(T[] a) {
    +        return records.toArray(a);
    +    }
    +
    +    @Override
    +    public final boolean add(R e) {
    +        return records.add(e);
    +    }
    +
    +    @Override
    +    public final boolean remove(Object o) {
    +        return records.remove(o);
    +    }
    +
    +    @Override
    +    public final boolean containsAll(Collection<?> c) {
    +        return records.containsAll(c);
    +    }
    +
    +    @Override
    +    public final boolean addAll(Collection<? extends R> c) {
    +        return records.addAll(c);
    +    }
    +
    +    @Override
    +    public final boolean addAll(int index, Collection<? extends R> c) {
    +        return records.addAll(index, c);
    +    }
    +
    +    @Override
    +    public final boolean removeAll(Collection<?> c) {
    +        return records.removeAll(c);
    +    }
    +
    +    @Override
    +    public final boolean retainAll(Collection<?> c) {
    +        return records.retainAll(c);
    +    }
    +
    +    @Override
    +    public final void clear() {
    +        records.clear();
    +    }
    +
    +    @Override
    +    public final R get(int index) {
    +        return records.get(index);
    +    }
    +
    +    @Override
    +    public final R set(int index, R element) {
    +        return records.set(index, element);
    +    }
    +
    +    @Override
    +    public final void add(int index, R element) {
    +        records.add(index, element);
    +    }
    +
    +    @Override
    +    public final R remove(int index) {
    +        return records.remove(index);
    +    }
    +
    +    @Override
    +    public final int indexOf(Object o) {
    +        return records.indexOf(o);
    +    }
    +
    +    @Override
    +    public final int lastIndexOf(Object o) {
    +        return records.lastIndexOf(o);
    +    }
    +
    +    @Override
    +    public final Iterator<R> iterator() {
    +        return records.iterator();
    +    }
    +
    +    @Override
    +    public final ListIterator<R> listIterator() {
    +        return records.listIterator();
    +    }
    +
    +    @Override
    +    public final ListIterator<R> listIterator(int index) {
    +        return records.listIterator(index);
    +    }
    +
    +    @Override
    +    public final List<R> subList(int fromIndex, int toIndex) {
    +        return records.subList(fromIndex, toIndex);
    +    }
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/impl/Rollup.java b/jOOQ/src/main/java/org/jooq/impl/Rollup.java
    new file mode 100644
    index 00000000000..87d951afa16
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/impl/Rollup.java
    @@ -0,0 +1,70 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq.impl;
    +
    +import static java.util.Arrays.asList;
    +import static org.jooq.impl.Factory.field;
    +import static org.jooq.impl.Factory.function;
    +
    +import org.jooq.Configuration;
    +import org.jooq.Field;
    +
    +/**
    + * @author Lukas Eder
    + */
    +class Rollup extends AbstractFunction<Object> {
    +
    +    /**
    +     * Generated UID
    +     */
    +    private static final long serialVersionUID = -5820608758939548704L;
    +
    +    Rollup(Field<?>... fields) {
    +        super("rollup", SQLDataType.OTHER, fields);
    +    }
    +
    +    @Override
    +    final Field<Object> getFunction0(Configuration configuration) {
    +        switch (configuration.getDialect()) {
    +            case CUBRID:
    +            case MYSQL:
    +                return field("{0} {with rollup}", new FieldList(asList(getArguments())));
    +
    +            default:
    +                return function("rollup", Object.class, getArguments());
    +        }
    +    }
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/impl/Round.java b/jOOQ/src/main/java/org/jooq/impl/Round.java
    new file mode 100644
    index 00000000000..f41a1c51618
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/impl/Round.java
    @@ -0,0 +1,123 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq.impl;
    +
    +import static org.jooq.impl.Factory.function;
    +import static org.jooq.impl.Factory.val;
    +
    +import java.math.BigDecimal;
    +
    +import org.jooq.Configuration;
    +import org.jooq.Field;
    +
    +/**
    + * @author Lukas Eder
    + */
    +class Round<T extends Number> extends AbstractFunction<T> {
    +
    +    /**
    +     * Generated UID
    +     */
    +    private static final long serialVersionUID = -7273879239726265322L;
    +
    +    private final Field<T>    argument;
    +    private final int         decimals;
    +
    +    Round(Field<T> argument) {
    +        this(argument, 0);
    +    }
    +
    +    Round(Field<T> argument, int decimals) {
    +        super("round", argument.getDataType(), argument);
    +
    +        this.argument = argument;
    +        this.decimals = decimals;
    +    }
    +
    +    @SuppressWarnings("unchecked")
    +    @Override
    +    final Field<T> getFunction0(Configuration configuration) {
    +        switch (configuration.getDialect()) {
    +
    +            // evaluate "round" if unavailable
    +            case DERBY: {
    +                if (decimals == 0) {
    +                    return Factory.decode()
    +                        .when(argument.sub(Factory.floor(argument))
    +                        .lessThan((T) Double.valueOf(0.5)), Factory.floor(argument))
    +                        .otherwise(Factory.ceil(argument));
    +                }
    +                else {
    +                    Field<BigDecimal> factor = Factory.val(BigDecimal.ONE.movePointRight(decimals));
    +                    Field<T> mul = argument.mul(factor);
    +
    +                    return Factory.decode()
    +                        .when(mul.sub(Factory.floor(mul))
    +                        .lessThan((T) Double.valueOf(0.5)), Factory.floor(mul).div(factor))
    +                        .otherwise(Factory.ceil(mul).div(factor));
    +                }
    +            }
    +
    +            // These dialects have a mandatory decimals argument
    +            case ASE:
    +            case INGRES:
    +            case SQLSERVER:
    +            case SYBASE: {
    +                return function("round", getDataType(), argument, val(decimals));
    +            }
    +
    +            // There's no function round(double precision, integer) in Postgres
    +            case POSTGRES: {
    +                if (decimals == 0) {
    +                    return function("round", getDataType(), argument);
    +                }
    +                else {
    +                    return function("round", getDataType(), argument.cast(BigDecimal.class), val(decimals));
    +                }
    +            }
    +
    +            // This is the optimal implementation by most RDBMS
    +            default: {
    +                if (decimals == 0) {
    +                    return function("round", getDataType(), argument);
    +                }
    +                else {
    +                    return function("round", getDataType(), argument, val(decimals));
    +                }
    +            }
    +        }
    +    }
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/impl/Rpad.java b/jOOQ/src/main/java/org/jooq/impl/Rpad.java
    new file mode 100644
    index 00000000000..441ffcc859e
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/impl/Rpad.java
    @@ -0,0 +1,102 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq.impl;
    +
    +import static org.jooq.impl.Factory.function;
    +import static org.jooq.impl.Factory.val;
    +
    +import org.jooq.Configuration;
    +import org.jooq.Field;
    +import org.jooq.SQLDialect;
    +
    +/**
    + * @author Lukas Eder
    + */
    +class Rpad extends AbstractFunction<String> {
    +
    +    /**
    +     * Generated UID
    +     */
    +    private static final long             serialVersionUID = -7273879239726265322L;
    +
    +    private final Field<String>           field;
    +    private final Field<? extends Number> length;
    +    private final Field<String>           character;
    +
    +    Rpad(Field<String> field, Field<? extends Number> length) {
    +        this(field, length, null);
    +    }
    +
    +    Rpad(Field<String> field, Field<? extends Number> length, Field<String> character) {
    +        super("rpad", SQLDataType.VARCHAR, field, length, character);
    +
    +        this.field = field;
    +        this.length = length;
    +        this.character = character;
    +    }
    +
    +    @Override
    +    final Field<String> getFunction0(Configuration configuration) {
    +        switch (configuration.getDialect()) {
    +            case ASE:
    +            case SQLSERVER:
    +            case SYBASE: {
    +                if (character == null) {
    +                    return Factory.concat(field, Factory.repeat(" ", length.sub(Factory.length(field))));
    +                }
    +                else {
    +                    return Factory.concat(field, Factory.repeat(character, length.sub(Factory.length(field))));
    +                }
    +            }
    +
    +            default: {
    +
    +                // MySQL only knows the 3 parameter version
    +                if (character == null) {
    +                    if (configuration.getDialect() == SQLDialect.MYSQL) {
    +                        return function("rpad", SQLDataType.VARCHAR, field, length, val(" "));
    +                    }
    +                    else {
    +                        return function("rpad", SQLDataType.VARCHAR, field, length);
    +                    }
    +                }
    +                else {
    +                    return function("rpad", SQLDataType.VARCHAR, field, length, character);
    +                }
    +            }
    +        }
    +    }
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/impl/SQLClause.java b/jOOQ/src/main/java/org/jooq/impl/SQLClause.java
    new file mode 100644
    index 00000000000..ead788058fa
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/impl/SQLClause.java
    @@ -0,0 +1,114 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq.impl;
    +
    +import java.util.List;
    +
    +import org.jooq.Attachable;
    +import org.jooq.BindContext;
    +import org.jooq.DataType;
    +import org.jooq.QueryPart;
    +import org.jooq.RenderContext;
    +import org.jooq.exception.DataAccessException;
    +import org.jooq.tools.StringUtils;
    +
    +/**
    + * @author Lukas Eder
    + */
    +class SQLClause<T> extends AbstractField<T> {
    +
    +    /**
    +     * Generated UID
    +     */
    +    private static final long serialVersionUID = 3132876322089761785L;
    +
    +    private final String      sql;
    +    private final QueryPart[] parts;
    +
    +    SQLClause(String sql, DataType<T> type, QueryPart... parts) {
    +        super(sql, type);
    +
    +        this.sql = sql;
    +        this.parts = parts;
    +    }
    +
    +    // ------------------------------------------------------------------------
    +    // Field API
    +    // ------------------------------------------------------------------------
    +
    +    @Override
    +    public final List<Attachable> getAttachables() {
    +        return getAttachables(parts);
    +    }
    +
    +    @Override
    +    public final void toSQL(RenderContext context) {
    +        // Tokenise {keywords} and placeholders {1} {2}.
    +        // Avoid tokenising JDBC escape syntax, e.g. {fn xx()}
    +        String[] sqlParts = StringUtils.split("\\{(?!(fn|d|t|ts)\\b)[\\w\\s]+\\}", sql);
    +
    +        int i = 0;
    +        for (String sqlPart : sqlParts) {
    +            if (sqlPart.matches("\\{\\d+\\}")) {
    +                if (i == parts.length) {
    +                    throw new DataAccessException("The number of placeholders must match the number of query parts : " + sql);
    +                }
    +
    +                context.sql(parts[i++]);
    +            }
    +            else if (sqlPart.matches("\\{[\\w\\s]+\\}")) {
    +                context.keyword(sqlPart.substring(1, sqlPart.length() - 1));
    +            }
    +            else {
    +                context.sql(sqlPart);
    +            }
    +        }
    +
    +        if (i != parts.length) {
    +            throw new DataAccessException("The number of placeholders must match the number of query parts : " + sql);
    +        }
    +    }
    +
    +    @Override
    +    public final void bind(BindContext context) {
    +        context.bind(parts);
    +    }
    +
    +    @Override
    +    public final boolean isNullLiteral() {
    +        return "null".equalsIgnoreCase(sql);
    +    }
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/impl/SQLCondition.java b/jOOQ/src/main/java/org/jooq/impl/SQLCondition.java
    new file mode 100644
    index 00000000000..7d33488b4d2
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/impl/SQLCondition.java
    @@ -0,0 +1,91 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq.impl;
    +
    +import java.util.Collections;
    +import java.util.List;
    +
    +import org.jooq.Attachable;
    +import org.jooq.BindContext;
    +import org.jooq.Param;
    +import org.jooq.RenderContext;
    +
    +class SQLCondition extends AbstractCondition implements BindingProvider {
    +
    +    /**
    +     * Generated UID
    +     */
    +    private static final long    serialVersionUID = -7661748411414898501L;
    +
    +    private final String         sql;
    +    private final List<Param<?>> bindings;
    +
    +    SQLCondition(String sql, Object[] bindings) {
    +        this.sql = sql;
    +        this.bindings = Util.bindings(bindings);
    +    }
    +
    +    // ------------------------------------------------------------------------
    +    // Condition API
    +    // ------------------------------------------------------------------------
    +
    +    @Override
    +    public final List<Attachable> getAttachables() {
    +        return Collections.emptyList();
    +    }
    +
    +    @Override
    +    public final void toSQL(RenderContext context) {
    +        // We have no control over the plain SQL content, hence we MUST put it
    +        // in parentheses to ensure correct semantics
    +
    +        Util.toSQLReferenceWithParentheses(context, sql, bindings);
    +    }
    +
    +    @Override
    +    public final void bind(BindContext context) {
    +        context.bind(bindings);
    +    }
    +
    +    // ------------------------------------------------------------------------
    +    // QueryPart API
    +    // ------------------------------------------------------------------------
    +
    +    @Override
    +    public final List<Param<?>> getBindings() {
    +        return bindings;
    +    }
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/impl/SQLDataType.java b/jOOQ/src/main/java/org/jooq/impl/SQLDataType.java
    new file mode 100644
    index 00000000000..158b736d1eb
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/impl/SQLDataType.java
    @@ -0,0 +1,335 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq.impl;
    +
    +import java.math.BigDecimal;
    +import java.math.BigInteger;
    +import java.sql.Date;
    +import java.sql.ResultSet;
    +import java.sql.Time;
    +import java.sql.Timestamp;
    +import java.sql.Types;
    +
    +import org.jooq.Record;
    +import org.jooq.Result;
    +import org.jooq.tools.unsigned.UByte;
    +import org.jooq.tools.unsigned.UInteger;
    +import org.jooq.tools.unsigned.ULong;
    +import org.jooq.tools.unsigned.UShort;
    +import org.jooq.types.DayToSecond;
    +import org.jooq.types.YearToMonth;
    +import org.jooq.util.ase.ASEDataType;
    +import org.jooq.util.cubrid.CUBRIDDataType;
    +import org.jooq.util.db2.DB2DataType;
    +import org.jooq.util.derby.DerbyDataType;
    +import org.jooq.util.h2.H2DataType;
    +import org.jooq.util.hsqldb.HSQLDBDataType;
    +import org.jooq.util.ingres.IngresDataType;
    +import org.jooq.util.mysql.MySQLDataType;
    +import org.jooq.util.oracle.OracleDataType;
    +import org.jooq.util.postgres.PostgresDataType;
    +import org.jooq.util.sqlite.SQLiteDataType;
    +import org.jooq.util.sqlserver.SQLServerDataType;
    +import org.jooq.util.sybase.SybaseDataType;
    +
    +
    +
    +/**
    + * The SQL standard data types, as described in {@link Types}.
    + * <p>
    + * These types are usually the ones that are referenced by generated source
    + * code. Most RDBMS have an almost 1:1 mapping between their vendor-specific
    + * types and the ones in this class (except Oracle). Some RDBMS also have
    + * extensions, e.g. for geospacial data types. See the dialect-specific data
    + * type classes for more information.
    + *
    + * @author Lukas Eder
    + */
    +public final class SQLDataType<T> extends AbstractDataType<T> {
    +
    +    /**
    +     * Generated UID
    +     */
    +    private static final long serialVersionUID = -3906638846383700655L;
    +
    +    // -------------------------------------------------------------------------
    +    // String types
    +    // -------------------------------------------------------------------------
    +
    +    /**
    +     * The {@link Types#VARCHAR} type
    +     */
    +    public static final SQLDataType<String> VARCHAR = new SQLDataType<String>(String.class, "varchar");
    +
    +    /**
    +     * The {@link Types#CHAR} type
    +     */
    +    public static final SQLDataType<String> CHAR = new SQLDataType<String>(String.class, "char");
    +
    +    /**
    +     * The {@link Types#LONGVARCHAR} type
    +     */
    +    public static final SQLDataType<String> LONGVARCHAR = new SQLDataType<String>(String.class, "longvarchar");
    +
    +    /**
    +     * The {@link Types#CLOB} type
    +     */
    +    public static final SQLDataType<String> CLOB = new SQLDataType<String>(String.class, "clob");
    +
    +    /**
    +     * The {@link Types#NVARCHAR} type
    +     */
    +    public static final SQLDataType<String> NVARCHAR = new SQLDataType<String>(String.class, "nvarchar");
    +
    +    /**
    +     * The {@link Types#NCHAR} type
    +     */
    +    public static final SQLDataType<String> NCHAR = new SQLDataType<String>(String.class, "nchar");
    +
    +    /**
    +     * The {@link Types#LONGNVARCHAR} type
    +     */
    +    public static final SQLDataType<String> LONGNVARCHAR = new SQLDataType<String>(String.class, "longnvarchar");
    +
    +    /**
    +     * The {@link Types#NCLOB} type
    +     */
    +    public static final SQLDataType<String> NCLOB = new SQLDataType<String>(String.class, "nclob");
    +
    +    // -------------------------------------------------------------------------
    +    // Boolean types
    +    // -------------------------------------------------------------------------
    +
    +    /**
    +     * The {@link Types#BOOLEAN} type
    +     */
    +    public static final SQLDataType<Boolean> BOOLEAN = new SQLDataType<Boolean>(Boolean.class, "boolean");
    +
    +    /**
    +     * The {@link Types#BIT} type
    +     */
    +    public static final SQLDataType<Boolean> BIT = new SQLDataType<Boolean>(Boolean.class, "bit");
    +
    +    // -------------------------------------------------------------------------
    +    // Integer types
    +    // -------------------------------------------------------------------------
    +
    +    /**
    +     * The {@link Types#TINYINT} type
    +     */
    +    public static final SQLDataType<Byte> TINYINT = new SQLDataType<Byte>(Byte.class, "tinyint");
    +
    +    /**
    +     * The {@link Types#SMALLINT} type
    +     */
    +    public static final SQLDataType<Short> SMALLINT = new SQLDataType<Short>(Short.class, "smallint");
    +
    +    /**
    +     * The {@link Types#INTEGER} type
    +     */
    +    public static final SQLDataType<Integer> INTEGER = new SQLDataType<Integer>(Integer.class, "integer");
    +
    +    /**
    +     * The {@link Types#BIGINT} type
    +     */
    +    public static final SQLDataType<Long> BIGINT = new SQLDataType<Long>(Long.class, "bigint");
    +
    +    /**
    +     * The zero-scale {@link Types#DECIMAL} type
    +     */
    +    public static final SQLDataType<BigInteger> DECIMAL_INTEGER = new SQLDataType<BigInteger>(BigInteger.class, "decimal_integer");
    +
    +    // -------------------------------------------------------------------------
    +    // Unsigned integer types
    +    // -------------------------------------------------------------------------
    +
    +    /**
    +     * The unsigned {@link Types#TINYINT} type
    +     */
    +    public static final SQLDataType<UByte> TINYINTUNSIGNED = new SQLDataType<UByte>(UByte.class, "tinyintunsigned");
    +
    +    /**
    +     * The unsigned {@link Types#SMALLINT} type
    +     */
    +    public static final SQLDataType<UShort> SMALLINTUNSIGNED = new SQLDataType<UShort>(UShort.class, "smallintunsigned");
    +
    +    /**
    +     * The unsigned {@link Types#INTEGER} type
    +     */
    +    public static final SQLDataType<UInteger> INTEGERUNSIGNED = new SQLDataType<UInteger>(UInteger.class, "integerunsigned");
    +
    +    /**
    +     * The unsigned {@link Types#BIGINT} type
    +     */
    +    public static final SQLDataType<ULong> BIGINTUNSIGNED = new SQLDataType<ULong>(ULong.class, "bigintunsigned");
    +
    +    // -------------------------------------------------------------------------
    +    // Floating point types
    +    // -------------------------------------------------------------------------
    +
    +    /**
    +     * The {@link Types#DOUBLE} type
    +     */
    +    public static final SQLDataType<Double> DOUBLE = new SQLDataType<Double>(Double.class, "double");
    +
    +    /**
    +     * The {@link Types#FLOAT} type
    +     */
    +    public static final SQLDataType<Double> FLOAT = new SQLDataType<Double>(Double.class, "float");
    +
    +    /**
    +     * The {@link Types#REAL} type
    +     */
    +    public static final SQLDataType<Float> REAL = new SQLDataType<Float>(Float.class, "real");
    +
    +    // -------------------------------------------------------------------------
    +    // Numeric types
    +    // -------------------------------------------------------------------------
    +
    +    /**
    +     * The {@link Types#NUMERIC} type
    +     */
    +    public static final SQLDataType<BigDecimal> NUMERIC = new SQLDataType<BigDecimal>(BigDecimal.class, "numeric", true);
    +
    +    /**
    +     * The {@link Types#DECIMAL} type
    +     */
    +    public static final SQLDataType<BigDecimal> DECIMAL = new SQLDataType<BigDecimal>(BigDecimal.class, "decimal", true);
    +
    +    // -------------------------------------------------------------------------
    +    // Datetime types
    +    // -------------------------------------------------------------------------
    +
    +    /**
    +     * The {@link Types#DATE} type
    +     */
    +    public static final SQLDataType<Date> DATE = new SQLDataType<Date>(Date.class, "date");
    +
    +    /**
    +     * The {@link Types#TIMESTAMP} type
    +     */
    +    public static final SQLDataType<Timestamp> TIMESTAMP = new SQLDataType<Timestamp>(Timestamp.class, "timestamp");
    +
    +    /**
    +     * The {@link Types#TIME} type
    +     */
    +    public static final SQLDataType<Time> TIME = new SQLDataType<Time>(Time.class, "time");
    +
    +    /**
    +     * The SQL standard <code>INTERVAL YEAR TO MONTH</code> data type
    +     */
    +    public static final SQLDataType<YearToMonth> INTERVALYEARTOMONTH = new SQLDataType<YearToMonth>(YearToMonth.class, "interval year to month");
    +
    +    /**
    +     * The SQL standard <code>INTERVAL DAY TO SECOND</code> data type
    +     */
    +    public static final SQLDataType<DayToSecond> INTERVALDAYTOSECOND = new SQLDataType<DayToSecond>(DayToSecond.class, "interval day to second");
    +
    +    // -------------------------------------------------------------------------
    +    // Binary types
    +    // -------------------------------------------------------------------------
    +
    +    /**
    +     * The {@link Types#BINARY} type
    +     */
    +    public static final SQLDataType<byte[]> BINARY = new SQLDataType<byte[]>(byte[].class, "binary");
    +
    +    /**
    +     * The {@link Types#VARBINARY} type
    +     */
    +    public static final SQLDataType<byte[]> VARBINARY = new SQLDataType<byte[]>(byte[].class, "varbinary");
    +
    +    /**
    +     * The {@link Types#LONGVARBINARY} type
    +     */
    +    public static final SQLDataType<byte[]> LONGVARBINARY = new SQLDataType<byte[]>(byte[].class, "longvarbinary");
    +
    +    /**
    +     * The {@link Types#BLOB} type
    +     */
    +    public static final SQLDataType<byte[]> BLOB = new SQLDataType<byte[]>(byte[].class, "blob");
    +
    +    // -------------------------------------------------------------------------
    +    // Other types
    +    // -------------------------------------------------------------------------
    +
    +    /**
    +     * The {@link Types#OTHER} type
    +     */
    +    public static final SQLDataType<Object> OTHER = new SQLDataType<Object>(Object.class, "other");
    +
    +    /**
    +     * The {@link ResultSet} type
    +     * <p>
    +     * This is not a SQL or JDBC standard. This type simulates REF CURSOR types
    +     * and similar constructs
    +     */
    +    @SuppressWarnings({ "unchecked", "rawtypes" })
    +    public static final SQLDataType<Result<Record>> RESULT = new SQLDataType<Result<Record>>((Class) Result.class, "result");
    +
    +    // -------------------------------------------------------------------------
    +    // Static initialisation of dialect-specific data types
    +    // -------------------------------------------------------------------------
    +
    +    static {
    +        // Load all dialect-specific data types
    +        // TODO [#650] Make this more reliable using a data type registry
    +
    +        try {
    +            Class.forName(ASEDataType.class.getName());
    +            Class.forName(CUBRIDDataType.class.getName());
    +            Class.forName(DB2DataType.class.getName());
    +            Class.forName(DerbyDataType.class.getName());
    +            Class.forName(H2DataType.class.getName());
    +            Class.forName(HSQLDBDataType.class.getName());
    +            Class.forName(IngresDataType.class.getName());
    +            Class.forName(MySQLDataType.class.getName());
    +            Class.forName(OracleDataType.class.getName());
    +            Class.forName(PostgresDataType.class.getName());
    +            Class.forName(SQLiteDataType.class.getName());
    +            Class.forName(SQLServerDataType.class.getName());
    +            Class.forName(SybaseDataType.class.getName());
    +        } catch (Exception ignore) {}
    +    }
    +
    +    private SQLDataType(Class<? extends T> type, String typeName) {
    +        this(type, typeName, false);
    +    }
    +
    +    private SQLDataType(Class<? extends T> type, String typeName, boolean hasPrecisionAndScale) {
    +        super(null, null, type, typeName, hasPrecisionAndScale);
    +    }
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/impl/SQLField.java b/jOOQ/src/main/java/org/jooq/impl/SQLField.java
    new file mode 100644
    index 00000000000..6c8cc22f0d5
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/impl/SQLField.java
    @@ -0,0 +1,96 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq.impl;
    +
    +import java.util.Collections;
    +import java.util.List;
    +
    +import org.jooq.Attachable;
    +import org.jooq.BindContext;
    +import org.jooq.DataType;
    +import org.jooq.Param;
    +import org.jooq.RenderContext;
    +
    +class SQLField<T> extends AbstractField<T> implements BindingProvider {
    +
    +    /**
    +     * Generated UID
    +     */
    +    private static final long    serialVersionUID = 6937002867156868761L;
    +
    +    private final String         sql;
    +    private final List<Param<?>> bindings;
    +
    +    SQLField(String sql, DataType<T> type, Object[] bindings) {
    +        super(sql, type);
    +
    +        this.sql = sql;
    +        this.bindings = Util.bindings(bindings);
    +    }
    +
    +    // ------------------------------------------------------------------------
    +    // Field API
    +    // ------------------------------------------------------------------------
    +
    +    @Override
    +    public final List<Attachable> getAttachables() {
    +        return Collections.emptyList();
    +    }
    +
    +    @Override
    +    public final void toSQL(RenderContext context) {
    +        Util.toSQLReference(context, sql, bindings);
    +    }
    +
    +    @Override
    +    public final void bind(BindContext context) {
    +        context.bind(bindings);
    +    }
    +
    +    @Override
    +    public final boolean isNullLiteral() {
    +        return "null".equalsIgnoreCase(("" + sql).trim());
    +    }
    +
    +    // ------------------------------------------------------------------------
    +    // QueryPart API
    +    // ------------------------------------------------------------------------
    +
    +    @Override
    +    public final List<Param<?>> getBindings() {
    +        return bindings;
    +    }
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/impl/SQLQuery.java b/jOOQ/src/main/java/org/jooq/impl/SQLQuery.java
    new file mode 100644
    index 00000000000..1f3485a1577
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/impl/SQLQuery.java
    @@ -0,0 +1,94 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq.impl;
    +
    +import java.util.Collections;
    +import java.util.List;
    +
    +import org.jooq.Attachable;
    +import org.jooq.BindContext;
    +import org.jooq.Configuration;
    +import org.jooq.Param;
    +import org.jooq.RenderContext;
    +
    +/**
    + * @author Lukas Eder
    + */
    +class SQLQuery extends AbstractQuery implements BindingProvider {
    +
    +    /**
    +     * Generated UID
    +     */
    +    private static final long    serialVersionUID = 1740879770879469220L;
    +
    +    private final String         sql;
    +    private final List<Param<?>> bindings;
    +
    +    public SQLQuery(Configuration configuration, String sql, Object[] bindings) {
    +        super(configuration);
    +
    +        this.sql = sql;
    +        this.bindings = Util.bindings(bindings);
    +    }
    +
    +    // ------------------------------------------------------------------------
    +    // Query API
    +    // ------------------------------------------------------------------------
    +
    +    @Override
    +    public final void toSQL(RenderContext context) {
    +        Util.toSQLReference(context, sql, bindings);
    +    }
    +
    +    @Override
    +    public final void bind(BindContext context) {
    +        context.bind(bindings);
    +    }
    +
    +    @Override
    +    public final List<Attachable> getAttachables() {
    +        return Collections.emptyList();
    +    }
    +
    +    // ------------------------------------------------------------------------
    +    // QueryPart API
    +    // ------------------------------------------------------------------------
    +
    +    @Override
    +    public final List<Param<?>> getBindings() {
    +        return bindings;
    +    }
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/impl/SQLResultQuery.java b/jOOQ/src/main/java/org/jooq/impl/SQLResultQuery.java
    new file mode 100644
    index 00000000000..d3c35583b39
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/impl/SQLResultQuery.java
    @@ -0,0 +1,115 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq.impl;
    +
    +import java.sql.ResultSetMetaData;
    +import java.util.Collections;
    +import java.util.List;
    +
    +import org.jooq.Attachable;
    +import org.jooq.BindContext;
    +import org.jooq.Configuration;
    +import org.jooq.Field;
    +import org.jooq.Param;
    +import org.jooq.Record;
    +import org.jooq.RenderContext;
    +
    +/**
    + * A plain SQL query that returns results
    + *
    + * @author Lukas Eder
    + */
    +class SQLResultQuery extends AbstractResultQuery<Record> implements BindingProvider {
    +
    +    /**
    +     * Generated UID
    +     */
    +    private static final long    serialVersionUID = 1740879770879469220L;
    +
    +    private final String         sql;
    +    private final List<Param<?>> bindings;
    +
    +    public SQLResultQuery(Configuration configuration, String sql, Object[] bindings) {
    +        super(configuration);
    +
    +        this.sql = sql;
    +        this.bindings = Util.bindings(bindings);
    +    }
    +
    +    // ------------------------------------------------------------------------
    +    // ResultQuery API
    +    // ------------------------------------------------------------------------
    +
    +    @Override
    +    public final void toSQL(RenderContext context) {
    +        Util.toSQLReference(context, sql, bindings);
    +    }
    +
    +    @Override
    +    public final void bind(BindContext context) {
    +        context.bind(bindings);
    +    }
    +
    +    @Override
    +    public final List<Attachable> getAttachables() {
    +        return Collections.emptyList();
    +    }
    +
    +    @Override
    +    public final Class<? extends Record> getRecordType() {
    +        return RecordImpl.class;
    +    }
    +
    +    @Override
    +    protected final List<Field<?>> getFields(ResultSetMetaData meta) {
    +        Configuration configuration = getConfiguration();
    +        return new MetaDataFieldProvider(configuration, meta).getFields();
    +    }
    +
    +    @Override
    +    final boolean isSelectingRefCursor() {
    +        return false;
    +    }
    +
    +    // ------------------------------------------------------------------------
    +    // QueryPart API
    +    // ------------------------------------------------------------------------
    +
    +    @Override
    +    public final List<Param<?>> getBindings() {
    +        return bindings;
    +    }
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/impl/SQLTable.java b/jOOQ/src/main/java/org/jooq/impl/SQLTable.java
    new file mode 100644
    index 00000000000..d21c30cb8a0
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/impl/SQLTable.java
    @@ -0,0 +1,107 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq.impl;
    +
    +import java.util.Collections;
    +import java.util.List;
    +
    +import org.jooq.Attachable;
    +import org.jooq.BindContext;
    +import org.jooq.Param;
    +import org.jooq.Record;
    +import org.jooq.RenderContext;
    +import org.jooq.Table;
    +
    +/**
    + * @author Lukas Eder
    + */
    +class SQLTable extends AbstractTable<Record> implements BindingProvider {
    +
    +    private static final long    serialVersionUID = -5122023013463718796L;
    +
    +    private final String         sql;
    +    private final List<Param<?>> bindings;
    +
    +    public SQLTable(String sql, Object[] bindings) {
    +        super("sql");
    +
    +        this.sql = sql;
    +        this.bindings = Util.bindings(bindings);
    +    }
    +
    +    // ------------------------------------------------------------------------
    +    // SQLTable API
    +    // ------------------------------------------------------------------------
    +
    +    @Override
    +    public final List<Attachable> getAttachables0() {
    +        return Collections.emptyList();
    +    }
    +
    +    @Override
    +    public final Class<? extends Record> getRecordType() {
    +        return RecordImpl.class;
    +    }
    +
    +    @Override
    +    public final Table<Record> as(String alias) {
    +        return new TableAlias<Record>(this, alias);
    +    }
    +
    +    @Override
    +    public final void toSQL(RenderContext context) {
    +        Util.toSQLReference(context, sql, bindings);
    +    }
    +
    +    @Override
    +    public final void bind(BindContext context) {
    +        context.bind(bindings);
    +    }
    +
    +    @Override
    +    protected final FieldList getFieldList() {
    +        return new FieldList();
    +    }
    +
    +    // ------------------------------------------------------------------------
    +    // QueryPart API
    +    // ------------------------------------------------------------------------
    +
    +    @Override
    +    public final List<Param<?>> getBindings() {
    +        return bindings;
    +    }
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/impl/SchemaImpl.java b/jOOQ/src/main/java/org/jooq/impl/SchemaImpl.java
    new file mode 100644
    index 00000000000..d00a1f296da
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/impl/SchemaImpl.java
    @@ -0,0 +1,155 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +
    +package org.jooq.impl;
    +
    +import java.util.Collections;
    +import java.util.HashMap;
    +import java.util.List;
    +import java.util.Map;
    +
    +import org.jooq.Attachable;
    +import org.jooq.BindContext;
    +import org.jooq.RenderContext;
    +import org.jooq.Schema;
    +import org.jooq.Sequence;
    +import org.jooq.Table;
    +import org.jooq.UDT;
    +
    +/**
    + * A common base class for database schemata
    + * <p>
    + * This type is for JOOQ INTERNAL USE only. Do not reference directly
    + *
    + * @author Lukas Eder
    + */
    +public class SchemaImpl extends AbstractNamedQueryPart implements Schema {
    +
    +    private static final long           serialVersionUID = -8101463810207566546L;
    +
    +    private final Map<String, Class<?>> typeMapping;
    +
    +    public SchemaImpl(String name) {
    +        super(name);
    +
    +        this.typeMapping = new HashMap<String, Class<?>>();
    +    }
    +
    +    @Override
    +    public final List<Attachable> getAttachables() {
    +        return Collections.emptyList();
    +    }
    +
    +    @Override
    +    public final void bind(BindContext context) {}
    +
    +    @Override
    +    public final void toSQL(RenderContext context) {
    +        context.literal(getName());
    +    }
    +
    +    @Override
    +    public final Map<String, Class<?>> getTypeMapping() {
    +        return Collections.unmodifiableMap(typeMapping);
    +    }
    +
    +    protected final void addMapping(String name, Class<?> type) {
    +        typeMapping.put(name, type);
    +    }
    +
    +    @Override
    +    public final Table<?> getTable(String name) {
    +        for (Table<?> table : getTables()) {
    +            if (table.getName().equals(name)) {
    +                return table;
    +            }
    +        }
    +
    +        return null;
    +    }
    +
    +    @Override
    +    public final UDT<?> getUDT(String name) {
    +        for (UDT<?> udt : getUDTs()) {
    +            if (udt.getName().equals(name)) {
    +                return udt;
    +            }
    +        }
    +
    +        return null;
    +    }
    +
    +    @Override
    +    public final Sequence<?> getSequence(String name) {
    +        for (Sequence<?> sequence : getSequences()) {
    +            if (sequence.getName().equals(name)) {
    +                return sequence;
    +            }
    +        }
    +
    +        return null;
    +    }
    +
    +    /**
    +     * {@inheritDoc}
    +     * <p>
    +     * Subclasses should override this method
    +     */
    +    @Override
    +    public List<Table<?>> getTables() {
    +        return Collections.emptyList();
    +    }
    +
    +    /**
    +     * {@inheritDoc}
    +     * <p>
    +     * Subclasses should override this method
    +     */
    +    @Override
    +    public List<UDT<?>> getUDTs() {
    +        return Collections.emptyList();
    +    }
    +
    +    /**
    +     * {@inheritDoc}
    +     * <p>
    +     * Subclasses should override this method
    +     */
    +    @Override
    +    public List<Sequence<?>> getSequences() {
    +        return Collections.emptyList();
    +    }
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/impl/SelectFieldList.java b/jOOQ/src/main/java/org/jooq/impl/SelectFieldList.java
    new file mode 100644
    index 00000000000..5ba148c4817
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/impl/SelectFieldList.java
    @@ -0,0 +1,72 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +
    +package org.jooq.impl;
    +
    +import java.util.Collection;
    +
    +import org.jooq.Field;
    +import org.jooq.RenderContext;
    +
    +/**
    + * @author Lukas Eder
    + */
    +class SelectFieldList extends FieldList {
    +
    +    private static final long serialVersionUID = 8850104968428500798L;
    +
    +    SelectFieldList() {
    +        super();
    +    }
    +
    +    SelectFieldList(Collection<? extends Field<?>> wrappedList) {
    +        super(wrappedList);
    +    }
    +
    +    SelectFieldList(Field<?>... wrappedList) {
    +        super(wrappedList);
    +    }
    +
    +    @Override
    +    protected void toSQLEmptyList(RenderContext context) {
    +        context.sql("*");
    +    }
    +
    +    @Override
    +    public final boolean declaresFields() {
    +        return true;
    +    }
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/impl/SelectImpl.java b/jOOQ/src/main/java/org/jooq/impl/SelectImpl.java
    new file mode 100644
    index 00000000000..482c009279c
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/impl/SelectImpl.java
    @@ -0,0 +1,775 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq.impl;
    +
    +import static org.jooq.impl.Factory.condition;
    +import static org.jooq.impl.Factory.exists;
    +import static org.jooq.impl.Factory.notExists;
    +import static org.jooq.impl.Factory.table;
    +
    +import java.util.Arrays;
    +import java.util.Collection;
    +
    +import org.jooq.Condition;
    +import org.jooq.Configuration;
    +import org.jooq.Field;
    +import org.jooq.ForeignKey;
    +import org.jooq.JoinType;
    +import org.jooq.Operator;
    +import org.jooq.Param;
    +import org.jooq.Record;
    +import org.jooq.Select;
    +import org.jooq.SelectConditionStep;
    +import org.jooq.SelectConnectByConditionStep;
    +import org.jooq.SelectForUpdateOfStep;
    +import org.jooq.SelectHavingConditionStep;
    +import org.jooq.SelectJoinStep;
    +import org.jooq.SelectOffsetStep;
    +import org.jooq.SelectOnConditionStep;
    +import org.jooq.SelectOnStep;
    +import org.jooq.SelectQuery;
    +import org.jooq.SelectSelectStep;
    +import org.jooq.SortField;
    +import org.jooq.Table;
    +import org.jooq.TableField;
    +import org.jooq.TableLike;
    +import org.jooq.exception.DataAccessException;
    +
    +/**
    + * A wrapper for a {@link SelectQuery}
    + *
    + * @author Lukas Eder
    + */
    +class SelectImpl extends AbstractDelegatingSelect<Record> implements
    +
    +    // Cascading interface implementations for Select behaviour
    +    SelectSelectStep,
    +    SelectOnStep,
    +    SelectOnConditionStep,
    +    SelectConditionStep,
    +    SelectConnectByConditionStep,
    +    SelectHavingConditionStep,
    +    SelectOffsetStep,
    +    SelectForUpdateOfStep {
    +
    +    /**
    +     * Generated UID
    +     */
    +    private static final long               serialVersionUID = -5425308887382166448L;
    +
    +    /**
    +     * A temporary member holding a join table
    +     */
    +    private transient TableLike<?>          joinTable;
    +
    +    /**
    +     * A temporary member holding a join type
    +     */
    +    private transient JoinType              joinType;
    +
    +    /**
    +     * A temporary member holding a join condition
    +     */
    +    private transient ConditionProviderImpl joinConditions;
    +
    +    /**
    +     * The step that is currently receiving new conditions
    +     */
    +    private transient ConditionStep         conditionStep;
    +
    +    /**
    +     * The limit that has been added in a limit(int).offset(int) construct
    +     */
    +    private transient Integer               limit;
    +    private transient Param<Integer>        limitParam;
    +
    +    SelectImpl(Configuration configuration) {
    +        this(configuration, false);
    +    }
    +
    +    SelectImpl(Configuration configuration, boolean distinct) {
    +        this(new SelectQueryImpl(configuration, distinct));
    +    }
    +
    +    SelectImpl(Select<Record> query) {
    +        super(query);
    +    }
    +
    +    @Override
    +    public final SelectQuery getQuery() {
    +        return (SelectQuery) getDelegate();
    +    }
    +
    +    @Override
    +    public final SelectImpl select(Field<?>... fields) {
    +        getQuery().addSelect(fields);
    +        return this;
    +    }
    +
    +    @Override
    +    public final SelectImpl select(Collection<? extends Field<?>> fields) {
    +        getQuery().addSelect(fields);
    +        return this;
    +    }
    +
    +    @Override
    +    public final SelectImpl hint(String hint) {
    +        getQuery().addHint(hint);
    +        return this;
    +    }
    +
    +    @Override
    +    public final SelectImpl from(TableLike<?>... tables) {
    +        getQuery().addFrom(tables);
    +        return this;
    +    }
    +
    +    @Override
    +    public final SelectImpl from(Collection<? extends TableLike<?>> tables) {
    +        getQuery().addFrom(tables);
    +        return this;
    +    }
    +
    +    @Override
    +    public final SelectImpl from(String sql) {
    +        return from(table(sql));
    +    }
    +
    +    @Override
    +    public final SelectImpl from(String sql, Object... bindings) {
    +        return from(table(sql, bindings));
    +    }
    +
    +    @Override
    +    public final SelectImpl where(Condition... conditions) {
    +        conditionStep = ConditionStep.WHERE;
    +        getQuery().addConditions(conditions);
    +        return this;
    +    }
    +
    +    @Override
    +    public final SelectImpl where(Collection<Condition> conditions) {
    +        conditionStep = ConditionStep.WHERE;
    +        getQuery().addConditions(conditions);
    +        return this;
    +    }
    +
    +    @Override
    +    public final SelectImpl where(String sql) {
    +        return where(condition(sql));
    +    }
    +
    +    @Override
    +    public final SelectImpl where(String sql, Object... bindings) {
    +        return where(condition(sql, bindings));
    +    }
    +
    +    @Override
    +    public final SelectImpl whereExists(Select<?> select) {
    +        conditionStep = ConditionStep.WHERE;
    +        return andExists(select);
    +    }
    +
    +    @Override
    +    public final SelectImpl whereNotExists(Select<?> select) {
    +        conditionStep = ConditionStep.WHERE;
    +        return andNotExists(select);
    +    }
    +
    +    @Override
    +    public final SelectImpl and(Condition condition) {
    +        switch (conditionStep) {
    +            case WHERE:
    +                getQuery().addConditions(condition);
    +                break;
    +            case CONNECT_BY:
    +                getQuery().addConnectBy(condition);
    +                break;
    +            case HAVING:
    +                getQuery().addHaving(condition);
    +                break;
    +            case ON:
    +                joinConditions.addConditions(condition);
    +                break;
    +        }
    +
    +        return this;
    +    }
    +
    +    @Override
    +    public final SelectImpl and(String sql) {
    +        return and(condition(sql));
    +    }
    +
    +    @Override
    +    public final SelectImpl and(String sql, Object... bindings) {
    +        return and(condition(sql, bindings));
    +    }
    +
    +    @Override
    +    public final SelectImpl andNot(Condition condition) {
    +        return and(condition.not());
    +    }
    +
    +    @Override
    +    public final SelectImpl andExists(Select<?> select) {
    +        return and(exists(select));
    +    }
    +
    +    @Override
    +    public final SelectImpl andNotExists(Select<?> select) {
    +        return and(notExists(select));
    +    }
    +
    +    @Override
    +    public final SelectImpl or(Condition condition) {
    +        switch (conditionStep) {
    +            case WHERE:
    +                getQuery().addConditions(Operator.OR, condition);
    +                break;
    +            case CONNECT_BY:
    +                throw new IllegalStateException("Cannot connect conditions for the CONNECT BY clause using the OR operator");
    +            case HAVING:
    +                getQuery().addHaving(Operator.OR, condition);
    +                break;
    +            case ON:
    +                joinConditions.addConditions(Operator.OR, condition);
    +                break;
    +        }
    +
    +        return this;
    +    }
    +
    +    @Override
    +    public final SelectImpl or(String sql) {
    +        return or(condition(sql));
    +    }
    +
    +    @Override
    +    public final SelectImpl or(String sql, Object... bindings) {
    +        return or(condition(sql, bindings));
    +    }
    +
    +    @Override
    +    public final SelectImpl orNot(Condition condition) {
    +        return or(condition.not());
    +    }
    +
    +    @Override
    +    public final SelectImpl orExists(Select<?> select) {
    +        return or(exists(select));
    +    }
    +
    +    @Override
    +    public final SelectImpl orNotExists(Select<?> select) {
    +        return or(notExists(select));
    +    }
    +
    +    @Override
    +    public final SelectImpl connectBy(Condition condition) {
    +        conditionStep = ConditionStep.CONNECT_BY;
    +        getQuery().addConnectBy(condition);
    +        return this;
    +    }
    +
    +    @Override
    +    public final SelectImpl connectBy(String sql) {
    +        return connectBy(condition(sql));
    +    }
    +
    +    @Override
    +    public final SelectImpl connectBy(String sql, Object... bindings) {
    +        return connectBy(condition(sql, bindings));
    +    }
    +
    +    @Override
    +    public final SelectImpl connectByNoCycle(Condition condition) {
    +        conditionStep = ConditionStep.CONNECT_BY;
    +        getQuery().addConnectByNoCycle(condition);
    +        return this;
    +    }
    +
    +    @Override
    +    public final SelectImpl connectByNoCycle(String sql) {
    +        return connectByNoCycle(condition(sql));
    +    }
    +
    +    @Override
    +    public final SelectImpl connectByNoCycle(String sql, Object... bindings) {
    +        return connectByNoCycle(condition(sql, bindings));
    +    }
    +
    +    @Override
    +    public final SelectImpl startWith(Condition condition) {
    +        getQuery().setConnectByStartWith(condition);
    +        return this;
    +    }
    +
    +    @Override
    +    public final SelectImpl startWith(String sql) {
    +        return startWith(condition(sql));
    +    }
    +
    +    @Override
    +    public final SelectImpl startWith(String sql, Object... bindings) {
    +        return startWith(condition(sql, bindings));
    +    }
    +
    +    @Override
    +    public final SelectImpl groupBy(Field<?>... fields) {
    +        getQuery().addGroupBy(fields);
    +        return this;
    +    }
    +
    +    @Override
    +    public final SelectImpl groupBy(Collection<? extends Field<?>> fields) {
    +        getQuery().addGroupBy(fields);
    +        return this;
    +    }
    +
    +    @Override
    +    public final SelectImpl orderBy(Field<?>... fields) {
    +        getQuery().addOrderBy(fields);
    +        return this;
    +    }
    +
    +    @Override
    +    public final SelectImpl orderBy(SortField<?>... fields) {
    +        getQuery().addOrderBy(fields);
    +        return this;
    +    }
    +
    +    @Override
    +    public final SelectImpl orderBy(Collection<SortField<?>> fields) {
    +        getQuery().addOrderBy(fields);
    +        return this;
    +    }
    +
    +    @Override
    +    public final SelectImpl orderBy(int... fieldIndexes) {
    +        getQuery().addOrderBy(fieldIndexes);
    +        return this;
    +    }
    +
    +    @Override
    +    public final SelectImpl limit(int numberOfRows) {
    +        this.limit = numberOfRows;
    +        this.limitParam = null;
    +        getQuery().addLimit(numberOfRows);
    +        return this;
    +    }
    +
    +    @Override
    +    public final SelectImpl limit(Param<Integer> numberOfRows) {
    +        this.limit = null;
    +        this.limitParam = numberOfRows;
    +        getQuery().addLimit(numberOfRows);
    +        return this;
    +    }
    +
    +    @Override
    +    public final SelectImpl limit(int offset, int numberOfRows) {
    +        getQuery().addLimit(offset, numberOfRows);
    +        return this;
    +    }
    +
    +    @Override
    +    public final SelectImpl limit(int offset, Param<Integer> numberOfRows) {
    +        getQuery().addLimit(offset, numberOfRows);
    +        return this;
    +    }
    +
    +    @Override
    +    public final SelectImpl limit(Param<Integer> offset, int numberOfRows) {
    +        getQuery().addLimit(offset, numberOfRows);
    +        return this;
    +    }
    +
    +    @Override
    +    public final SelectImpl limit(Param<Integer> offset, Param<Integer> numberOfRows) {
    +        getQuery().addLimit(offset, numberOfRows);
    +        return this;
    +    }
    +
    +    @Override
    +    public final SelectImpl offset(int offset) {
    +        if (limit != null) {
    +            getQuery().addLimit(offset, limit);
    +        }
    +        else if (limitParam != null) {
    +            getQuery().addLimit(offset, limitParam);
    +        }
    +
    +        return this;
    +    }
    +
    +    @Override
    +    public final SelectImpl offset(Param<Integer> offset) {
    +        if (limit != null) {
    +            getQuery().addLimit(offset, limit);
    +        }
    +        else if (limitParam != null) {
    +            getQuery().addLimit(offset, limitParam);
    +        }
    +
    +        return this;
    +    }
    +
    +    @Override
    +    public final SelectImpl forUpdate() {
    +        getQuery().setForUpdate(true);
    +        return this;
    +    }
    +
    +    @Override
    +    public final SelectImpl of(Field<?>... fields) {
    +        getQuery().setForUpdateOf(fields);
    +        return this;
    +    }
    +
    +    @Override
    +    public final SelectImpl of(Collection<Field<?>> fields) {
    +        getQuery().setForUpdateOf(fields);
    +        return this;
    +    }
    +
    +    @Override
    +    public final SelectImpl of(Table<?>... tables) {
    +        getQuery().setForUpdateOf(tables);
    +        return this;
    +    }
    +
    +    @Override
    +    public final SelectImpl wait(int seconds) {
    +        getQuery().setForUpdateWait(seconds);
    +        return this;
    +    }
    +
    +    @Override
    +    public final SelectImpl noWait() {
    +        getQuery().setForUpdateNoWait();
    +        return this;
    +    }
    +
    +    @Override
    +    public final SelectImpl skipLocked() {
    +        getQuery().setForUpdateSkipLocked();
    +        return this;
    +    }
    +
    +    @Override
    +    public final SelectImpl forShare() {
    +        getQuery().setForShare(true);
    +        return this;
    +    }
    +
    +    @Override
    +    public final SelectImpl union(Select<Record> select) {
    +        return new SelectImpl(getDelegate().union(select));
    +    }
    +
    +    @Override
    +    public final SelectImpl unionAll(Select<Record> select) {
    +        return new SelectImpl(getDelegate().unionAll(select));
    +    }
    +
    +    @Override
    +    public final SelectImpl except(Select<Record> select) {
    +        return new SelectImpl(getDelegate().except(select));
    +    }
    +
    +    @Override
    +    public final SelectImpl intersect(Select<Record> select) {
    +        return new SelectImpl(getDelegate().intersect(select));
    +    }
    +
    +    @Override
    +    public final SelectImpl having(Condition... conditions) {
    +        conditionStep = ConditionStep.HAVING;
    +        getQuery().addHaving(conditions);
    +        return this;
    +    }
    +
    +    @Override
    +    public final SelectImpl having(Collection<Condition> conditions) {
    +        conditionStep = ConditionStep.HAVING;
    +        getQuery().addHaving(conditions);
    +        return this;
    +    }
    +
    +    @Override
    +    public final SelectImpl having(String sql) {
    +        return having(condition(sql));
    +    }
    +
    +    @Override
    +    public final SelectImpl having(String sql, Object... bindings) {
    +        return having(condition(sql, bindings));
    +    }
    +
    +    @Override
    +    public final SelectImpl on(Condition... conditions) {
    +        conditionStep = ConditionStep.ON;
    +        joinConditions = new ConditionProviderImpl();
    +        joinConditions.addConditions(conditions);
    +        getQuery().addJoin(joinTable, joinType, joinConditions);
    +        joinTable = null;
    +        joinType = null;
    +        return this;
    +    }
    +
    +    @Override
    +    public final SelectImpl on(String sql) {
    +        return on(condition(sql));
    +    }
    +
    +    @Override
    +    public final SelectImpl on(String sql, Object... bindings) {
    +        return on(condition(sql, bindings));
    +    }
    +
    +    @Override
    +    public final SelectImpl onKey() throws DataAccessException {
    +        conditionStep = ConditionStep.ON;
    +        getQuery().addJoinOnKey(joinTable, joinType);
    +        joinTable = null;
    +        joinType = null;
    +        return this;
    +    }
    +
    +    @Override
    +    public final SelectImpl onKey(TableField<?, ?>... keyFields) throws DataAccessException {
    +        conditionStep = ConditionStep.ON;
    +        getQuery().addJoinOnKey(joinTable, joinType, keyFields);
    +        joinTable = null;
    +        joinType = null;
    +        return this;
    +    }
    +
    +    @Override
    +    public final SelectImpl onKey(ForeignKey<?, ?> key) {
    +        conditionStep = ConditionStep.ON;
    +        getQuery().addJoinOnKey(joinTable, joinType, key);
    +        joinTable = null;
    +        joinType = null;
    +        return this;
    +
    +    }
    +
    +    @Override
    +    public final SelectImpl using(Field<?>... fields) {
    +        return using(Arrays.asList(fields));
    +    }
    +
    +    @Override
    +    public final SelectImpl using(Collection<? extends Field<?>> fields) {
    +        getQuery().addJoinUsing(joinTable, joinType, fields);
    +        joinTable = null;
    +        joinType = null;
    +        return this;
    +    }
    +
    +    @Override
    +    public final SelectImpl join(TableLike<?> table) {
    +        return join0(table, JoinType.JOIN);
    +    }
    +
    +    @Override
    +    public final SelectImpl leftOuterJoin(TableLike<?> table) {
    +        return join0(table, JoinType.LEFT_OUTER_JOIN);
    +    }
    +
    +    @Override
    +    public final SelectImpl rightOuterJoin(TableLike<?> table) {
    +        return join0(table, JoinType.RIGHT_OUTER_JOIN);
    +    }
    +
    +    @Override
    +    public final SelectOnStep fullOuterJoin(TableLike<?> table) {
    +        return join0(table, JoinType.FULL_OUTER_JOIN);
    +    }
    +
    +    private final SelectImpl join0(TableLike<?> table, JoinType type) {
    +        conditionStep = ConditionStep.ON;
    +        joinTable = table;
    +        joinType = type;
    +        joinConditions = null;
    +        return this;
    +    }
    +
    +    @Override
    +    public final SelectJoinStep crossJoin(TableLike<?> table) {
    +        return simpleJoin0(table, JoinType.CROSS_JOIN);
    +    }
    +
    +    @Override
    +    public final SelectImpl naturalJoin(TableLike<?> table) {
    +        return simpleJoin0(table, JoinType.NATURAL_JOIN);
    +    }
    +
    +    @Override
    +    public final SelectImpl naturalLeftOuterJoin(TableLike<?> table) {
    +        return simpleJoin0(table, JoinType.NATURAL_LEFT_OUTER_JOIN);
    +    }
    +
    +    @Override
    +    public final SelectImpl naturalRightOuterJoin(TableLike<?> table) {
    +        return simpleJoin0(table, JoinType.NATURAL_RIGHT_OUTER_JOIN);
    +    }
    +
    +    private final SelectImpl simpleJoin0(TableLike<?> table, JoinType type) {
    +        getQuery().addJoin(table, type);
    +        joinTable = null;
    +        joinType = null;
    +        return this;
    +    }
    +
    +    @Override
    +    public final SelectImpl join(String sql) {
    +        return join(table(sql));
    +    }
    +
    +    @Override
    +    public final SelectImpl join(String sql, Object... bindings) {
    +        return join(table(sql, bindings));
    +    }
    +
    +    @Override
    +    public final SelectImpl leftOuterJoin(String sql) {
    +        return leftOuterJoin(table(sql));
    +    }
    +
    +    @Override
    +    public final SelectImpl leftOuterJoin(String sql, Object... bindings) {
    +        return leftOuterJoin(table(sql, bindings));
    +    }
    +
    +    @Override
    +    public final SelectImpl rightOuterJoin(String sql) {
    +        return rightOuterJoin(table(sql));
    +    }
    +
    +    @Override
    +    public final SelectImpl rightOuterJoin(String sql, Object... bindings) {
    +        return rightOuterJoin(table(sql, bindings));
    +    }
    +
    +    @Override
    +    public final SelectOnStep fullOuterJoin(String sql) {
    +        return fullOuterJoin(table(sql));
    +    }
    +
    +    @Override
    +    public final SelectOnStep fullOuterJoin(String sql, Object... bindings) {
    +        return fullOuterJoin(table(sql, bindings));
    +    }
    +
    +    @Override
    +    public final SelectJoinStep crossJoin(String sql) {
    +        return crossJoin(table(sql));
    +    }
    +
    +    @Override
    +    public final SelectJoinStep crossJoin(String sql, Object... bindings) {
    +        return crossJoin(table(sql, bindings));
    +    }
    +
    +    @Override
    +    public final SelectImpl naturalJoin(String sql) {
    +        return naturalJoin(table(sql));
    +    }
    +
    +    @Override
    +    public final SelectImpl naturalJoin(String sql, Object... bindings) {
    +        return naturalJoin(table(sql, bindings));
    +    }
    +
    +    @Override
    +    public final SelectImpl naturalLeftOuterJoin(String sql) {
    +        return naturalLeftOuterJoin(table(sql));
    +    }
    +
    +    @Override
    +    public final SelectImpl naturalLeftOuterJoin(String sql, Object... bindings) {
    +        return naturalLeftOuterJoin(table(sql, bindings));
    +    }
    +
    +    @Override
    +    public final SelectImpl naturalRightOuterJoin(String sql) {
    +        return naturalRightOuterJoin(table(sql));
    +    }
    +
    +    @Override
    +    public final SelectImpl naturalRightOuterJoin(String sql, Object... bindings) {
    +        return naturalRightOuterJoin(table(sql, bindings));
    +    }
    +
    +    /**
    +     * The {@link SelectImpl} current condition step
    +     * <p>
    +     * This enumeration models the step that is currently receiving new
    +     * conditions via the {@link SelectImpl#and(Condition)},
    +     * {@link SelectImpl#or(Condition)}, etc methods
    +     *
    +     * @author Lukas Eder
    +     */
    +    private static enum ConditionStep {
    +
    +        /**
    +         * Additional conditions go to the <code>JOIN</code> clause that is
    +         * currently being added.
    +         */
    +        ON,
    +
    +        /**
    +         * Additional conditions go to the <code>WHERE</code> clause that is
    +         * currently being added.
    +         */
    +        WHERE,
    +
    +        /**
    +         * Additional conditions go to the <code>CONNECT BY</code> clause that
    +         * is currently being added.
    +         */
    +        CONNECT_BY,
    +
    +        /**
    +         * Additional conditions go to the <code>HAVING</code> clause that is
    +         * currently being added.
    +         */
    +        HAVING
    +    }
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/impl/SelectQueryAsExistsCondition.java b/jOOQ/src/main/java/org/jooq/impl/SelectQueryAsExistsCondition.java
    new file mode 100644
    index 00000000000..658c120b745
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/impl/SelectQueryAsExistsCondition.java
    @@ -0,0 +1,103 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +
    +package org.jooq.impl;
    +
    +import java.util.List;
    +
    +import org.jooq.Attachable;
    +import org.jooq.BindContext;
    +import org.jooq.RenderContext;
    +import org.jooq.Select;
    +
    +/**
    + * @author Lukas Eder
    + */
    +class SelectQueryAsExistsCondition extends AbstractCondition {
    +
    +    private static final long    serialVersionUID = 5678338161136603292L;
    +
    +    private final Select<?>      query;
    +    private final ExistsOperator operator;
    +
    +    SelectQueryAsExistsCondition(Select<?> query, ExistsOperator operator) {
    +        this.query = query;
    +        this.operator = operator;
    +    }
    +
    +    @Override
    +    public final List<Attachable> getAttachables() {
    +        return getAttachables(query);
    +    }
    +
    +    @Override
    +    public final void toSQL(RenderContext context) {
    +
    +        // If this is already a subquery, proceed
    +        if (context.subquery()) {
    +            context.keyword(operator.toSQL())
    +                   .sql(" (")
    +                   .formatIndentLockStart()
    +                   .sql(query)
    +                   .formatIndentLockEnd()
    +                   .sql(")");
    +        }
    +        else {
    +            context.keyword(operator.toSQL())
    +                   .sql(" (")
    +                   .subquery(true)
    +                   .formatIndentLockStart()
    +                   .sql(query)
    +                   .formatIndentLockEnd()
    +                   .subquery(false)
    +                   .sql(")");
    +        }
    +    }
    +
    +    @Override
    +    public final void bind(BindContext context) {
    +
    +        // If this is already a subquery, proceed
    +        if (context.subquery()) {
    +            context.bind(query);
    +        }
    +        else {
    +            context.subquery(true)
    +                   .bind(query)
    +                   .subquery(false);
    +        }
    +    }
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/impl/SelectQueryAsField.java b/jOOQ/src/main/java/org/jooq/impl/SelectQueryAsField.java
    new file mode 100644
    index 00000000000..0579a289e6d
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/impl/SelectQueryAsField.java
    @@ -0,0 +1,113 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +
    +package org.jooq.impl;
    +
    +import java.util.List;
    +
    +import org.jooq.Attachable;
    +import org.jooq.BindContext;
    +import org.jooq.DataType;
    +import org.jooq.Field;
    +import org.jooq.RenderContext;
    +import org.jooq.Select;
    +
    +/**
    + * @author Lukas Eder
    + */
    +class SelectQueryAsField<T> extends AbstractField<T> {
    +
    +    private static final long serialVersionUID = 3463144434073231750L;
    +
    +    private final Select<?>   query;
    +
    +    SelectQueryAsField(Select<?> query, DataType<T> type) {
    +        super("select", type);
    +
    +        this.query = query;
    +    }
    +
    +    @Override
    +    public final List<Attachable> getAttachables() {
    +        return getAttachables(query);
    +    }
    +
    +    @Override
    +    public final Field<T> as(String alias) {
    +        return new FieldAlias<T>(this, alias);
    +    }
    +
    +    @Override
    +    public final void bind(BindContext context) {
    +
    +        // If this is already a subquery, proceed
    +        if (context.subquery()) {
    +            context.bind(query);
    +        }
    +        else {
    +            context.subquery(true)
    +                   .bind(query)
    +                   .subquery(false);
    +        }
    +    }
    +
    +    @Override
    +    public final void toSQL(RenderContext context) {
    +
    +        // If this is already a subquery, proceed
    +        if (context.subquery()) {
    +            context.sql("(")
    +                   .formatIndentLockStart()
    +                   .sql(query)
    +                   .formatIndentLockEnd()
    +                   .sql(")");
    +        }
    +        else {
    +            context.sql("(")
    +                   .subquery(true)
    +                   .formatIndentLockStart()
    +                   .sql(query)
    +                   .formatIndentLockEnd()
    +                   .subquery(false)
    +                   .sql(")");
    +        }
    +    }
    +
    +    @Override
    +    public final boolean isNullLiteral() {
    +        return false;
    +    }
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/impl/SelectQueryAsSubQueryCondition.java b/jOOQ/src/main/java/org/jooq/impl/SelectQueryAsSubQueryCondition.java
    new file mode 100644
    index 00000000000..6e2ba223ae6
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/impl/SelectQueryAsSubQueryCondition.java
    @@ -0,0 +1,111 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +
    +package org.jooq.impl;
    +
    +import java.util.List;
    +
    +import org.jooq.Attachable;
    +import org.jooq.BindContext;
    +import org.jooq.Field;
    +import org.jooq.RenderContext;
    +import org.jooq.Select;
    +
    +/**
    + * @author Lukas Eder
    + */
    +class SelectQueryAsSubQueryCondition extends AbstractCondition {
    +
    +    private static final long      serialVersionUID = -402776705884329740L;
    +
    +    private final Select<?>        query;
    +    private final Field<?>         field;
    +    private final SubQueryOperator operator;
    +
    +    SelectQueryAsSubQueryCondition(Select<?> query, Field<?> field, SubQueryOperator operator) {
    +        this.query = query;
    +        this.field = field;
    +        this.operator = operator;
    +    }
    +
    +    @Override
    +    public final List<Attachable> getAttachables() {
    +        return getAttachables(query, field);
    +    }
    +
    +    @Override
    +    public final void toSQL(RenderContext context) {
    +
    +        // If this is already a subquery, proceed
    +        if (context.subquery()) {
    +            context.sql(field)
    +                   .sql(" ")
    +                   .keyword(operator.toSQL())
    +                   .sql(" (")
    +                   .formatIndentLockStart()
    +                   .sql(query)
    +                   .formatIndentLockEnd()
    +                   .sql(")");
    +        }
    +        else {
    +            context.sql(field)
    +                   .sql(" ")
    +                   .keyword(operator.toSQL())
    +                   .sql(" (")
    +                   .subquery(true)
    +                   .formatIndentLockStart()
    +                   .sql(query)
    +                   .formatIndentLockEnd()
    +                   .subquery(false)
    +                   .sql(")");
    +        }
    +    }
    +
    +    @Override
    +    public final void bind(BindContext context) {
    +
    +        // If this is already a subquery, proceed
    +        if (context.subquery()) {
    +            context.bind(field).bind(query);
    +        }
    +        else {
    +            context.bind(field)
    +                   .subquery(true)
    +                   .bind(query)
    +                   .subquery(false);
    +        }
    +    }
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/impl/SelectQueryAsTable.java b/jOOQ/src/main/java/org/jooq/impl/SelectQueryAsTable.java
    new file mode 100644
    index 00000000000..79fd71f80c6
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/impl/SelectQueryAsTable.java
    @@ -0,0 +1,110 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +
    +package org.jooq.impl;
    +
    +import java.util.List;
    +
    +import org.jooq.Attachable;
    +import org.jooq.BindContext;
    +import org.jooq.Record;
    +import org.jooq.RenderContext;
    +import org.jooq.Select;
    +import org.jooq.Table;
    +
    +/**
    + * @author Lukas Eder
    + */
    +class SelectQueryAsTable<R extends Record> extends AbstractTable<R> {
    +
    +    private static final long serialVersionUID = 6272398035926615668L;
    +
    +    private final Select<R>   query;
    +
    +    SelectQueryAsTable(Select<R> query) {
    +        super("select");
    +
    +        this.query = query;
    +    }
    +
    +    @Override
    +    public final List<Attachable> getAttachables0() {
    +        return getAttachables(query);
    +    }
    +
    +    @Override
    +    public final Table<R> as(String alias) {
    +        return new TableAlias<R>(this, alias, true);
    +    }
    +
    +    @Override
    +    protected final FieldList getFieldList() {
    +        return new FieldList(query.getSelect());
    +    }
    +
    +    @Override
    +    public final Class<? extends R> getRecordType() {
    +        return query.getRecordType();
    +    }
    +
    +    @Override
    +    public final void bind(BindContext context) {
    +
    +        // If this is already a subquery, proceed
    +        if (context.subquery()) {
    +            context.bind(query);
    +        }
    +        else {
    +            context.subquery(true)
    +                   .bind(query)
    +                   .subquery(false);
    +        }
    +    }
    +
    +    @Override
    +    public final void toSQL(RenderContext context) {
    +
    +        // If this is already a subquery, proceed
    +        if (context.subquery()) {
    +            context.sql(query);
    +        }
    +        else {
    +            context.subquery(true)
    +                   .sql(query)
    +                   .subquery(false);
    +        }
    +    }
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/impl/SelectQueryImpl.java b/jOOQ/src/main/java/org/jooq/impl/SelectQueryImpl.java
    new file mode 100644
    index 00000000000..17cab9bc111
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/impl/SelectQueryImpl.java
    @@ -0,0 +1,345 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +
    +package org.jooq.impl;
    +
    +import java.util.Arrays;
    +import java.util.Collection;
    +
    +import org.jooq.Condition;
    +import org.jooq.Configuration;
    +import org.jooq.Field;
    +import org.jooq.ForeignKey;
    +import org.jooq.JoinType;
    +import org.jooq.Operator;
    +import org.jooq.Record;
    +import org.jooq.SelectQuery;
    +import org.jooq.Table;
    +import org.jooq.TableField;
    +import org.jooq.TableLike;
    +import org.jooq.exception.DataAccessException;
    +
    +/**
    + * @author Lukas Eder
    + */
    +class SelectQueryImpl extends AbstractSubSelect<Record> implements SelectQuery {
    +
    +    private static final long serialVersionUID = 1555503854543561285L;
    +
    +    SelectQueryImpl(Configuration configuration) {
    +        this(configuration, null);
    +    }
    +
    +    SelectQueryImpl(Configuration configuration, boolean distinct) {
    +        this(configuration, null, distinct);
    +    }
    +
    +    SelectQueryImpl(Configuration configuration, TableLike<?> from) {
    +        this(configuration, from, false);
    +    }
    +
    +    SelectQueryImpl(Configuration configuration, TableLike<?> from, boolean distinct) {
    +        super(configuration, from, distinct);
    +    }
    +
    +    @Override
    +    public final void addFrom(Collection<? extends TableLike<?>> from) {
    +        for (TableLike<?> provider : from) {
    +            getFrom().add(provider.asTable());
    +        }
    +    }
    +
    +    @Override
    +    public final void addFrom(TableLike<?>... from) {
    +        addFrom(Arrays.asList(from));
    +    }
    +
    +    @Override
    +    public final void addConnectBy(Condition condition) {
    +        getConnectBy().addConditions(condition);
    +    }
    +
    +    @Override
    +    public final void addConnectByNoCycle(Condition condition) {
    +        getConnectBy().addConditions(condition);
    +        setConnectByNoCycle(true);
    +    }
    +
    +    @Override
    +    public final void setConnectByStartWith(Condition condition) {
    +        setStartWith(condition);
    +    }
    +
    +    @Override
    +    public final void addGroupBy(Collection<? extends Field<?>> fields) {
    +        getGroupBy().addAll(fields);
    +    }
    +
    +    @Override
    +    public final void addGroupBy(Field<?>... fields) {
    +        addGroupBy(Arrays.asList(fields));
    +    }
    +
    +    @Override
    +    public final void addHaving(Condition... conditions) {
    +        addHaving(Arrays.asList(conditions));
    +    }
    +
    +    @Override
    +    public final void addHaving(Collection<Condition> conditions) {
    +        getHaving().addConditions(conditions);
    +    }
    +
    +    @Override
    +    public final void addHaving(Operator operator, Condition... conditions) {
    +        getHaving().addConditions(operator, conditions);
    +    }
    +
    +    @Override
    +    public final void addHaving(Operator operator, Collection<Condition> conditions) {
    +        getHaving().addConditions(operator, conditions);
    +    }
    +
    +    @Override
    +    public final void addJoin(TableLike<?> table, Condition... conditions) {
    +        addJoin(table, JoinType.JOIN, conditions);
    +    }
    +
    +    @Override
    +    public final void addJoin(TableLike<?> table, JoinType type, Condition... conditions) {
    +        // TODO: This and similar methods should be refactored, patterns extracted...
    +
    +        int index = getFrom().size() - 1;
    +        Table<?> joined = null;
    +
    +        switch (type) {
    +            case JOIN:
    +                joined = getFrom().get(index).join(table).on(conditions);
    +                break;
    +            case LEFT_OUTER_JOIN:
    +                joined = getFrom().get(index).leftOuterJoin(table).on(conditions);
    +                break;
    +            case RIGHT_OUTER_JOIN:
    +                joined = getFrom().get(index).rightOuterJoin(table).on(conditions);
    +                break;
    +            case FULL_OUTER_JOIN:
    +                joined = getFrom().get(index).fullOuterJoin(table).on(conditions);
    +                break;
    +
    +            // These join types don't take any ON clause. Ignore conditions.
    +            case CROSS_JOIN:
    +                joined = getFrom().get(index).crossJoin(table);
    +                break;
    +            case NATURAL_JOIN:
    +                joined = getFrom().get(index).naturalJoin(table);
    +                break;
    +            case NATURAL_LEFT_OUTER_JOIN:
    +                joined = getFrom().get(index).naturalLeftOuterJoin(table);
    +                break;
    +            case NATURAL_RIGHT_OUTER_JOIN:
    +                joined = getFrom().get(index).naturalRightOuterJoin(table);
    +                break;
    +        }
    +
    +        getFrom().set(index, joined);
    +    }
    +
    +    @Override
    +    public final void addJoinOnKey(TableLike<?> table, JoinType type) throws DataAccessException {
    +        // TODO: This and similar methods should be refactored, patterns extracted...
    +
    +        int index = getFrom().size() - 1;
    +        Table<?> joined = null;
    +
    +        switch (type) {
    +            case JOIN:
    +                joined = getFrom().get(index).join(table).onKey();
    +                break;
    +            case LEFT_OUTER_JOIN:
    +                joined = getFrom().get(index).leftOuterJoin(table).onKey();
    +                break;
    +            case RIGHT_OUTER_JOIN:
    +                joined = getFrom().get(index).rightOuterJoin(table).onKey();
    +                break;
    +            case FULL_OUTER_JOIN:
    +                joined = getFrom().get(index).fullOuterJoin(table).onKey();
    +                break;
    +
    +            // These join types don't take any ON clause. Ignore conditions.
    +            case CROSS_JOIN:
    +                joined = getFrom().get(index).crossJoin(table);
    +                break;
    +            case NATURAL_JOIN:
    +                joined = getFrom().get(index).naturalJoin(table);
    +                break;
    +            case NATURAL_LEFT_OUTER_JOIN:
    +                joined = getFrom().get(index).naturalLeftOuterJoin(table);
    +                break;
    +            case NATURAL_RIGHT_OUTER_JOIN:
    +                joined = getFrom().get(index).naturalRightOuterJoin(table);
    +                break;
    +        }
    +
    +        getFrom().set(index, joined);
    +    }
    +
    +    @Override
    +    public final void addJoinOnKey(TableLike<?> table, JoinType type, TableField<?, ?>... keyFields) throws DataAccessException {
    +        // TODO: This and similar methods should be refactored, patterns extracted...
    +
    +        int index = getFrom().size() - 1;
    +        Table<?> joined = null;
    +
    +        switch (type) {
    +            case JOIN:
    +                joined = getFrom().get(index).join(table).onKey(keyFields);
    +                break;
    +            case LEFT_OUTER_JOIN:
    +                joined = getFrom().get(index).leftOuterJoin(table).onKey(keyFields);
    +                break;
    +            case RIGHT_OUTER_JOIN:
    +                joined = getFrom().get(index).rightOuterJoin(table).onKey(keyFields);
    +                break;
    +            case FULL_OUTER_JOIN:
    +                joined = getFrom().get(index).fullOuterJoin(table).onKey(keyFields);
    +                break;
    +
    +            // These join types don't take any ON clause. Ignore conditions.
    +            case CROSS_JOIN:
    +                joined = getFrom().get(index).crossJoin(table);
    +                break;
    +            case NATURAL_JOIN:
    +                joined = getFrom().get(index).naturalJoin(table);
    +                break;
    +            case NATURAL_LEFT_OUTER_JOIN:
    +                joined = getFrom().get(index).naturalLeftOuterJoin(table);
    +                break;
    +            case NATURAL_RIGHT_OUTER_JOIN:
    +                joined = getFrom().get(index).naturalRightOuterJoin(table);
    +                break;
    +        }
    +
    +        getFrom().set(index, joined);
    +    }
    +
    +    @Override
    +    public final void addJoinOnKey(TableLike<?> table, JoinType type, ForeignKey<?, ?> key) {
    +        // TODO: This and similar methods should be refactored, patterns extracted...
    +
    +        int index = getFrom().size() - 1;
    +        Table<?> joined = null;
    +
    +        switch (type) {
    +            case JOIN:
    +                joined = getFrom().get(index).join(table).onKey(key);
    +                break;
    +            case LEFT_OUTER_JOIN:
    +                joined = getFrom().get(index).leftOuterJoin(table).onKey(key);
    +                break;
    +            case RIGHT_OUTER_JOIN:
    +                joined = getFrom().get(index).rightOuterJoin(table).onKey(key);
    +                break;
    +            case FULL_OUTER_JOIN:
    +                joined = getFrom().get(index).fullOuterJoin(table).onKey(key);
    +                break;
    +
    +            // These join types don't take any ON clause. Ignore conditions.
    +            case CROSS_JOIN:
    +                joined = getFrom().get(index).crossJoin(table);
    +                break;
    +            case NATURAL_JOIN:
    +                joined = getFrom().get(index).naturalJoin(table);
    +                break;
    +            case NATURAL_LEFT_OUTER_JOIN:
    +                joined = getFrom().get(index).naturalLeftOuterJoin(table);
    +                break;
    +            case NATURAL_RIGHT_OUTER_JOIN:
    +                joined = getFrom().get(index).naturalRightOuterJoin(table);
    +                break;
    +        }
    +
    +        getFrom().set(index, joined);
    +    }
    +
    +    @Override
    +    public final void addJoinUsing(TableLike<?> table, Collection<? extends Field<?>> fields) {
    +        addJoinUsing(table, JoinType.JOIN, fields);
    +    }
    +
    +    @Override
    +    public final void addJoinUsing(TableLike<?> table, JoinType type, Collection<? extends Field<?>> fields) {
    +        // TODO: This and similar methods should be refactored, patterns extracted...
    +
    +        int index = getFrom().size() - 1;
    +        Table<?> joined = null;
    +
    +        switch (type) {
    +            case JOIN:
    +                joined = getFrom().get(index).join(table).using(fields);
    +                break;
    +            case LEFT_OUTER_JOIN:
    +                joined = getFrom().get(index).leftOuterJoin(table).using(fields);
    +                break;
    +            case RIGHT_OUTER_JOIN:
    +                joined = getFrom().get(index).rightOuterJoin(table).using(fields);
    +                break;
    +            case FULL_OUTER_JOIN:
    +                joined = getFrom().get(index).fullOuterJoin(table).using(fields);
    +                break;
    +
    +            // These join types don't take any USING clause. Ignore fields
    +            case CROSS_JOIN:
    +                joined = getFrom().get(index).crossJoin(table);
    +                break;
    +            case NATURAL_JOIN:
    +                joined = getFrom().get(index).naturalJoin(table);
    +                break;
    +            case NATURAL_LEFT_OUTER_JOIN:
    +                joined = getFrom().get(index).naturalLeftOuterJoin(table);
    +                break;
    +            case NATURAL_RIGHT_OUTER_JOIN:
    +                joined = getFrom().get(index).naturalRightOuterJoin(table);
    +                break;
    +        }
    +
    +        getFrom().set(index, joined);
    +    }
    +
    +    @Override
    +    public final void addHint(String hint) {
    +        setHint(hint);
    +    }
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/impl/SequenceFunction.java b/jOOQ/src/main/java/org/jooq/impl/SequenceFunction.java
    new file mode 100644
    index 00000000000..50e556e5a44
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/impl/SequenceFunction.java
    @@ -0,0 +1,126 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq.impl;
    +
    +import static org.jooq.SQLDialect.CUBRID;
    +import static org.jooq.impl.Factory.field;
    +
    +import org.jooq.Configuration;
    +import org.jooq.Field;
    +import org.jooq.RenderContext;
    +import org.jooq.exception.SQLDialectNotSupportedException;
    +
    +/**
    + * @author Lukas Eder
    + */
    +class SequenceFunction<T extends Number> extends AbstractFunction<T> {
    +
    +    /**
    +     * Generated UID
    +     */
    +    private static final long     serialVersionUID = 2292275568395094887L;
    +
    +    private final SequenceImpl<T> sequence;
    +    private final String          method;
    +
    +    SequenceFunction(SequenceImpl<T> sequence, String method) {
    +        super(method, sequence.type);
    +
    +        this.sequence = sequence;
    +        this.method = method;
    +    }
    +
    +    @Override
    +    final Field<T> getFunction0(Configuration configuration) {
    +        switch (configuration.getDialect()) {
    +            case DB2:
    +            case INGRES:
    +            case ORACLE:
    +            case SYBASE: {
    +                String field = getQualifiedName(configuration) + "." + method;
    +                return field(field, getDataType());
    +            }
    +            
    +            case H2:
    +            case POSTGRES: {
    +                String field = method + "('" + getQualifiedName(configuration) + "')";
    +                return field(field, getDataType());
    +            }
    +
    +            case DERBY:
    +            case HSQLDB: {
    +                if ("nextval".equals(method)) {
    +                    String field = "next value for " + getQualifiedName(configuration);
    +                    return field(field, getDataType());
    +                }
    +                else {
    +                    throw new SQLDialectNotSupportedException("The sequence's current value functionality is not supported for the " + configuration.getDialect() + " dialect.");
    +                }
    +            }
    +
    +            case CUBRID: {
    +                String field = getQualifiedName(configuration) + ".";
    +
    +                if ("nextval".equals(method)) {
    +                    field += "next_value";
    +                }
    +                else {
    +                    field += "current_value";
    +                }
    +
    +                return field(field, getDataType());
    +            }
    +
    +            // Default is needed for hashCode() and toString()
    +            default: {
    +                String field = getQualifiedName(configuration) + "." + method;
    +                return field(field, getDataType());
    +            }
    +        }
    +    }
    +
    +    private final String getQualifiedName(Configuration configuration) {
    +        RenderContext local = create(configuration).renderContext();
    +
    +        if (sequence.schema != null && configuration.getDialect() != CUBRID) {
    +            local.sql(Util.getMappedSchema(configuration, sequence.schema));
    +            local.sql(".");
    +        }
    +
    +        local.literal(sequence.name);
    +        return local.render();
    +    }
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/impl/SequenceImpl.java b/jOOQ/src/main/java/org/jooq/impl/SequenceImpl.java
    new file mode 100644
    index 00000000000..0fbc26cf543
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/impl/SequenceImpl.java
    @@ -0,0 +1,95 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq.impl;
    +
    +import org.jooq.DataType;
    +import org.jooq.Field;
    +import org.jooq.Schema;
    +import org.jooq.Sequence;
    +
    +/**
    + * A common base class for sequences
    + * <p>
    + * This type is for JOOQ INTERNAL USE only. Do not reference directly
    + *
    + * @author Lukas Eder
    + */
    +public class SequenceImpl<T extends Number> implements Sequence<T> {
    +
    +    /**
    +     * Generated UID
    +     */
    +    private static final long serialVersionUID = 6224349401603636427L;
    +
    +    final String              name;
    +    final Schema              schema;
    +    final DataType<T>         type;
    +
    +    public SequenceImpl(String name, Schema schema, DataType<T> type) {
    +        this.name = name;
    +        this.schema = schema;
    +        this.type = type;
    +    }
    +
    +    @Override
    +    public final String getName() {
    +        return name;
    +    }
    +
    +    @Override
    +    public final Schema getSchema() {
    +        return schema;
    +    }
    +
    +    @Override
    +    public final DataType<T> getDataType() {
    +        return type;
    +    }
    +
    +    @Override
    +    public final Field<T> currval() {
    +        return getSequence("currval");
    +    }
    +
    +    @Override
    +    public final Field<T> nextval() {
    +        return getSequence("nextval");
    +    }
    +
    +    private final Field<T> getSequence(final String sequence) {
    +        return new SequenceFunction<T>(this, sequence);
    +    }
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/impl/Sign.java b/jOOQ/src/main/java/org/jooq/impl/Sign.java
    new file mode 100644
    index 00000000000..716757f85cb
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/impl/Sign.java
    @@ -0,0 +1,77 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq.impl;
    +
    +import static org.jooq.impl.Factory.function;
    +import static org.jooq.impl.Factory.one;
    +import static org.jooq.impl.Factory.zero;
    +
    +import org.jooq.Configuration;
    +import org.jooq.Field;
    +
    +/**
    + * @author Lukas Eder
    + */
    +class Sign extends AbstractFunction<Integer> {
    +
    +    /**
    +     * Generated UID
    +     */
    +    private static final long serialVersionUID = -7273879239726265322L;
    +
    +    private final Field<?>    argument;
    +
    +    Sign(Field<?> argument) {
    +        super("sign", SQLDataType.INTEGER, argument);
    +
    +        this.argument = argument;
    +    }
    +
    +    @SuppressWarnings("unchecked")
    +    @Override
    +    final Field<Integer> getFunction0(Configuration configuration) {
    +        switch (configuration.getDialect()) {
    +            case SQLITE:
    +                return Factory.decode()
    +                    .when(((Field<Integer>) argument).greaterThan(zero()), one())
    +                    .when(((Field<Integer>) argument).lessThan(zero()), one().neg())
    +                    .otherwise(zero());
    +
    +            default:
    +                return function("sign", getDataType(), argument);
    +        }
    +    }
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/impl/SimpleSelectImpl.java b/jOOQ/src/main/java/org/jooq/impl/SimpleSelectImpl.java
    new file mode 100644
    index 00000000000..7979363188f
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/impl/SimpleSelectImpl.java
    @@ -0,0 +1,355 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq.impl;
    +
    +import static org.jooq.impl.Factory.condition;
    +import static org.jooq.impl.Factory.exists;
    +import static org.jooq.impl.Factory.notExists;
    +
    +import java.util.Collection;
    +
    +import org.jooq.Condition;
    +import org.jooq.Configuration;
    +import org.jooq.Field;
    +import org.jooq.Operator;
    +import org.jooq.Param;
    +import org.jooq.Record;
    +import org.jooq.Select;
    +import org.jooq.SelectQuery;
    +import org.jooq.SimpleSelectConditionStep;
    +import org.jooq.SimpleSelectForUpdateOfStep;
    +import org.jooq.SimpleSelectOffsetStep;
    +import org.jooq.SimpleSelectQuery;
    +import org.jooq.SimpleSelectWhereStep;
    +import org.jooq.SortField;
    +import org.jooq.Table;
    +
    +/**
    + * A wrapper for a {@link SelectQuery}
    + *
    + * @author Lukas Eder
    + */
    +class SimpleSelectImpl<R extends Record> extends AbstractDelegatingSelect<R>
    +    implements
    +
    +    // Cascading interface implementations for typed Select behaviour
    +    SimpleSelectWhereStep<R>,
    +    SimpleSelectConditionStep<R>,
    +    SimpleSelectOffsetStep<R>,
    +    SimpleSelectForUpdateOfStep<R> {
    +
    +    /**
    +     * Generated UID
    +     */
    +    private static final long        serialVersionUID = -5425308887382166448L;
    +
    +    /**
    +     * The limit that has been added in a limit(int).offset(int) construct
    +     */
    +    private transient Integer        limit;
    +    private transient Param<Integer> limitParam;
    +
    +    SimpleSelectImpl(Configuration configuration) {
    +        this(new SimpleSelectQueryImpl<R>(configuration));
    +    }
    +
    +    SimpleSelectImpl(Configuration configuration, Table<R> table) {
    +        this(configuration, table, false);
    +    }
    +
    +    SimpleSelectImpl(Configuration configuration, Table<R> table, boolean distinct) {
    +        this(new SimpleSelectQueryImpl<R>(configuration, table, distinct));
    +    }
    +
    +    SimpleSelectImpl(Select<R> query) {
    +        super(query);
    +    }
    +
    +    @Override
    +    public final SimpleSelectQuery<R> getQuery() {
    +        return (SimpleSelectQuery<R>) getDelegate();
    +    }
    +
    +    @Override
    +    public final SimpleSelectImpl<R> where(Condition... conditions) {
    +        getQuery().addConditions(conditions);
    +        return this;
    +    }
    +
    +    @Override
    +    public final SimpleSelectImpl<R> where(Collection<Condition> conditions) {
    +        getQuery().addConditions(conditions);
    +        return this;
    +    }
    +
    +    @Override
    +    public final SimpleSelectImpl<R> where(String sql) {
    +        return where(condition(sql));
    +    }
    +
    +    @Override
    +    public final SimpleSelectImpl<R> where(String sql, Object... bindings) {
    +        return where(condition(sql, bindings));
    +    }
    +
    +    @Override
    +    public final SimpleSelectImpl<R> whereExists(Select<?> select) {
    +        return andExists(select);
    +    }
    +
    +    @Override
    +    public final SimpleSelectImpl<R> whereNotExists(Select<?> select) {
    +        return andNotExists(select);
    +    }
    +
    +    @Override
    +    public final SimpleSelectImpl<R> and(Condition condition) {
    +        getQuery().addConditions(condition);
    +        return this;
    +    }
    +
    +    @Override
    +    public final SimpleSelectImpl<R> and(String sql) {
    +        return and(condition(sql));
    +    }
    +
    +    @Override
    +    public final SimpleSelectImpl<R> and(String sql, Object... bindings) {
    +        return and(condition(sql, bindings));
    +    }
    +
    +    @Override
    +    public final SimpleSelectImpl<R> andNot(Condition condition) {
    +        return and(condition.not());
    +    }
    +
    +    @Override
    +    public final SimpleSelectImpl<R> andExists(Select<?> select) {
    +        return and(exists(select));
    +    }
    +
    +    @Override
    +    public final SimpleSelectImpl<R> andNotExists(Select<?> select) {
    +        return and(notExists(select));
    +    }
    +
    +    @Override
    +    public final SimpleSelectImpl<R> or(Condition condition) {
    +        getQuery().addConditions(Operator.OR, condition);
    +        return this;
    +    }
    +
    +    @Override
    +    public final SimpleSelectImpl<R> or(String sql) {
    +        return or(condition(sql));
    +    }
    +
    +    @Override
    +    public final SimpleSelectImpl<R> or(String sql, Object... bindings) {
    +        return or(condition(sql, bindings));
    +    }
    +
    +    @Override
    +    public final SimpleSelectImpl<R> orNot(Condition condition) {
    +        return or(condition.not());
    +    }
    +
    +    @Override
    +    public final SimpleSelectImpl<R> orExists(Select<?> select) {
    +        return or(exists(select));
    +    }
    +
    +    @Override
    +    public final SimpleSelectImpl<R> orNotExists(Select<?> select) {
    +        return or(notExists(select));
    +    }
    +
    +    @Override
    +    public final SimpleSelectImpl<R> orderBy(Field<?>... fields) {
    +        getQuery().addOrderBy(fields);
    +        return this;
    +    }
    +
    +    @Override
    +    public final SimpleSelectImpl<R> orderBy(SortField<?>... fields) {
    +        getQuery().addOrderBy(fields);
    +        return this;
    +    }
    +
    +    @Override
    +    public final SimpleSelectImpl<R> orderBy(Collection<SortField<?>> fields) {
    +        getQuery().addOrderBy(fields);
    +        return this;
    +    }
    +
    +    @Override
    +    public final SimpleSelectImpl<R> orderBy(int... fieldIndexes) {
    +        getQuery().addOrderBy(fieldIndexes);
    +        return this;
    +    }
    +
    +    @Override
    +    public final SimpleSelectImpl<R> limit(int numberOfRows) {
    +        this.limit = numberOfRows;
    +        this.limitParam = null;
    +        getQuery().addLimit(numberOfRows);
    +        return this;
    +    }
    +
    +    @Override
    +    public final SimpleSelectImpl<R> limit(Param<Integer> numberOfRows) {
    +        this.limit = null;
    +        this.limitParam = numberOfRows;
    +        getQuery().addLimit(numberOfRows);
    +        return this;
    +    }
    +
    +    @Override
    +    public final SimpleSelectImpl<R> limit(int offset, int numberOfRows) {
    +        getQuery().addLimit(offset, numberOfRows);
    +        return this;
    +    }
    +
    +    @Override
    +    public final SimpleSelectImpl<R> limit(int offset, Param<Integer> numberOfRows) {
    +        getQuery().addLimit(offset, numberOfRows);
    +        return this;
    +    }
    +
    +    @Override
    +    public final SimpleSelectImpl<R> limit(Param<Integer> offset, int numberOfRows) {
    +        getQuery().addLimit(offset, numberOfRows);
    +        return this;
    +    }
    +
    +    @Override
    +    public final SimpleSelectImpl<R> limit(Param<Integer> offset, Param<Integer> numberOfRows) {
    +        getQuery().addLimit(offset, numberOfRows);
    +        return this;
    +    }
    +
    +    @Override
    +    public final SimpleSelectImpl<R> offset(int offset) {
    +        if (limit != null) {
    +            getQuery().addLimit(offset, limit);
    +        }
    +        else if (limitParam != null) {
    +            getQuery().addLimit(offset, limitParam);
    +        }
    +
    +        return this;
    +    }
    +
    +    @Override
    +    public final SimpleSelectImpl<R> offset(Param<Integer> offset) {
    +        if (limit != null) {
    +            getQuery().addLimit(offset, limit);
    +        }
    +        else if (limitParam != null) {
    +            getQuery().addLimit(offset, limitParam);
    +        }
    +
    +        return this;
    +    }
    +
    +    @Override
    +    public final SimpleSelectImpl<R> forUpdate() {
    +        getQuery().setForUpdate(true);
    +        return this;
    +    }
    +
    +    @Override
    +    public final SimpleSelectImpl<R> of(Field<?>... fields) {
    +        getQuery().setForUpdateOf(fields);
    +        return this;
    +    }
    +
    +    @Override
    +    public final SimpleSelectImpl<R> of(Collection<Field<?>> fields) {
    +        getQuery().setForUpdateOf(fields);
    +        return this;
    +    }
    +
    +    @Override
    +    public final SimpleSelectImpl<R> of(Table<?>... tables) {
    +        getQuery().setForUpdateOf(tables);
    +        return this;
    +    }
    +
    +    @Override
    +    public final SimpleSelectImpl<R> wait(int seconds) {
    +        getQuery().setForUpdateWait(seconds);
    +        return this;
    +    }
    +
    +    @Override
    +    public final SimpleSelectImpl<R> noWait() {
    +        getQuery().setForUpdateNoWait();
    +        return this;
    +    }
    +
    +    @Override
    +    public final SimpleSelectImpl<R> skipLocked() {
    +        getQuery().setForUpdateSkipLocked();
    +        return this;
    +    }
    +
    +    @Override
    +    public final SimpleSelectImpl<R> forShare() {
    +        getQuery().setForShare(true);
    +        return this;
    +    }
    +
    +    @Override
    +    public final Select<R> union(Select<R> select) {
    +        return new SimpleSelectImpl<R>(getQuery().union(select));
    +    }
    +
    +    @Override
    +    public final Select<R> unionAll(Select<R> select) {
    +        return new SimpleSelectImpl<R>(getQuery().unionAll(select));
    +    }
    +
    +    @Override
    +    public final Select<R> except(Select<R> select) {
    +        return new SimpleSelectImpl<R>(getQuery().except(select));
    +    }
    +
    +    @Override
    +    public final Select<R> intersect(Select<R> select) {
    +        return new SimpleSelectImpl<R>(getQuery().intersect(select));
    +    }
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/impl/SimpleSelectQueryImpl.java b/jOOQ/src/main/java/org/jooq/impl/SimpleSelectQueryImpl.java
    new file mode 100644
    index 00000000000..3c68736802a
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/impl/SimpleSelectQueryImpl.java
    @@ -0,0 +1,62 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq.impl;
    +
    +import org.jooq.Configuration;
    +import org.jooq.Record;
    +import org.jooq.SimpleSelectQuery;
    +import org.jooq.TableLike;
    +
    +class SimpleSelectQueryImpl<R extends Record> extends AbstractSubSelect<R> implements
    +    SimpleSelectQuery<R> {
    +
    +    /**
    +     * Generated UID
    +     */
    +    private static final long serialVersionUID = 3200508777418108686L;
    +
    +    SimpleSelectQueryImpl(Configuration configuration) {
    +        this(configuration, null);
    +    }
    +
    +    SimpleSelectQueryImpl(Configuration configuration, TableLike<R> from) {
    +        this(configuration, from, false);
    +    }
    +
    +    SimpleSelectQueryImpl(Configuration configuration, TableLike<R> from, boolean distinct) {
    +        super(configuration, from, distinct);
    +    }
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/impl/Sinh.java b/jOOQ/src/main/java/org/jooq/impl/Sinh.java
    new file mode 100644
    index 00000000000..a4aad2b277d
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/impl/Sinh.java
    @@ -0,0 +1,82 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq.impl;
    +
    +import static org.jooq.impl.Factory.function;
    +import static org.jooq.impl.Factory.one;
    +import static org.jooq.impl.Factory.two;
    +
    +import java.math.BigDecimal;
    +
    +import org.jooq.Configuration;
    +import org.jooq.Field;
    +
    +/**
    + * @author Lukas Eder
    + */
    +class Sinh extends AbstractFunction<BigDecimal> {
    +
    +    /**
    +     * Generated UID
    +     */
    +    private static final long             serialVersionUID = -7273879239726265322L;
    +
    +    private final Field<? extends Number> argument;
    +
    +    Sinh(Field<? extends Number> argument) {
    +        super("sinh", SQLDataType.NUMERIC, argument);
    +
    +        this.argument = argument;
    +    }
    +
    +    @Override
    +    final Field<BigDecimal> getFunction0(Configuration configuration) {
    +        switch (configuration.getDialect()) {
    +            case ASE:
    +            case CUBRID:
    +            case HSQLDB:
    +            case INGRES:
    +            case MYSQL:
    +            case POSTGRES:
    +            case SQLSERVER:
    +            case SYBASE:
    +                return Factory.exp(argument.mul(two())).sub(one()).div(Factory.exp(argument).mul(two()));
    +
    +            default:
    +                return function("sinh", SQLDataType.NUMERIC, argument);
    +        }
    +    }
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/impl/SortFieldImpl.java b/jOOQ/src/main/java/org/jooq/impl/SortFieldImpl.java
    new file mode 100644
    index 00000000000..85475d02e0d
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/impl/SortFieldImpl.java
    @@ -0,0 +1,179 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq.impl;
    +
    +import static org.jooq.impl.Factory.nvl2;
    +import static org.jooq.impl.Factory.one;
    +import static org.jooq.impl.Factory.zero;
    +
    +import java.util.List;
    +
    +import org.jooq.Attachable;
    +import org.jooq.BindContext;
    +import org.jooq.Field;
    +import org.jooq.RenderContext;
    +import org.jooq.SortField;
    +import org.jooq.SortOrder;
    +
    +class SortFieldImpl<T> extends AbstractNamedTypeProviderQueryPart<T> implements SortField<T> {
    +
    +    /**
    +     * Generated UID
    +     */
    +    private static final long serialVersionUID = 1223739398544155873L;
    +
    +    private final Field<T>    field;
    +    private final SortOrder   order;
    +    private boolean           nullsFirst;
    +    private boolean           nullsLast;
    +
    +    SortFieldImpl(Field<T> field, SortOrder order) {
    +        super(field.getName(), field.getDataType());
    +
    +        this.field = field;
    +        this.order = order;
    +    }
    +
    +    @Override
    +    public final SortOrder getOrder() {
    +        return order;
    +    }
    +
    +    @Override
    +    public final SortField<T> nullsFirst() {
    +        nullsFirst = true;
    +        nullsLast = false;
    +        return this;
    +    }
    +
    +    @Override
    +    public final SortField<T> nullsLast() {
    +        nullsFirst = false;
    +        nullsLast = true;
    +        return this;
    +    }
    +
    +    @Override
    +    public final List<Attachable> getAttachables() {
    +        return getAttachables(field);
    +    }
    +
    +    @Override
    +    public final void toSQL(RenderContext context) {
    +        toSQLReference0(context, false);
    +    }
    +
    +    final void toSQLInAnalyticClause(RenderContext context) {
    +        toSQLReference0(context, true);
    +    }
    +
    +    private final void toSQLReference0(RenderContext context, boolean inAnalyticClause) {
    +        if (nullsFirst || nullsLast) {
    +            switch (context.getDialect()) {
    +
    +                // DB2 supports NULLS FIRST/LAST only in OLAP (window) functions
    +                case DB2:
    +
    +                // These dialects don't support this syntax at all
    +                case ASE:
    +                case CUBRID:
    +                case INGRES:
    +                case MYSQL:
    +                case SQLITE:
    +                case SQLSERVER:
    +                case SYBASE: {
    +                    if (!inAnalyticClause) {
    +                        Field<Integer> ifNull = nullsFirst ? zero() : one();
    +                        Field<Integer> ifNotNull = nullsFirst ? one() : zero();
    +
    +                        context.sql(nvl2(field, ifNotNull, ifNull));
    +                        context.sql(", ");
    +
    +                        toSQLReference1(context, inAnalyticClause);
    +                        break;
    +                    }
    +                    else {
    +                        // Fall through to default
    +                    }
    +                }
    +
    +                // DERBY, H2, HSQLDB, ORACLE, POSTGRES
    +                default: {
    +                    toSQLReference1(context, inAnalyticClause);
    +
    +                    if (nullsFirst) {
    +                        context.keyword(" nulls first");
    +                    }
    +                    else {
    +                        context.keyword(" nulls last");
    +                    }
    +
    +                    break;
    +                }
    +            }
    +        }
    +        else {
    +            toSQLReference1(context, inAnalyticClause);
    +        }
    +    }
    +
    +    private final void toSQLReference1(RenderContext context, boolean inAnalyticClause) {
    +        switch (context.getDialect()) {
    +            case SQLSERVER:
    +            case SYBASE: {
    +                if (inAnalyticClause) {
    +                    context.literal(field.getName());
    +                    break;
    +                }
    +                else {
    +                    // Fall through to default
    +                }
    +            }
    +            default: {
    +                context.sql(field);
    +                break;
    +            }
    +        }
    +
    +        context.sql(" ");
    +        context.keyword(order.toSQL());
    +    }
    +
    +    @Override
    +    public final void bind(BindContext context) {
    +        context.bind(field);
    +    }
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/impl/SortFieldList.java b/jOOQ/src/main/java/org/jooq/impl/SortFieldList.java
    new file mode 100644
    index 00000000000..94bf19b6ca8
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/impl/SortFieldList.java
    @@ -0,0 +1,69 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +
    +package org.jooq.impl;
    +
    +import java.util.ArrayList;
    +import java.util.List;
    +
    +import org.jooq.Field;
    +import org.jooq.SortField;
    +
    +/**
    + * @author Lukas Eder
    + */
    +class SortFieldList extends QueryPartList<SortField<?>> {
    +
    +    private static final long serialVersionUID = -1825164005148183725L;
    +
    +    SortFieldList() {
    +        this(new ArrayList<SortField<?>>());
    +    }
    +
    +    SortFieldList(List<SortField<?>> wrappedList) {
    +        super(wrappedList);
    +    }
    +
    +    void addAll(Field<?>... fields) {
    +        List<SortField<?>> list = new ArrayList<SortField<?>>();
    +
    +        for (Field<?> field : fields) {
    +            list.add(field.asc());
    +        }
    +
    +        addAll(list);
    +    }
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/impl/Sqrt.java b/jOOQ/src/main/java/org/jooq/impl/Sqrt.java
    new file mode 100644
    index 00000000000..902055b10ed
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/impl/Sqrt.java
    @@ -0,0 +1,73 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq.impl;
    +
    +import static org.jooq.impl.Factory.function;
    +
    +import java.math.BigDecimal;
    +
    +import org.jooq.Configuration;
    +import org.jooq.Field;
    +
    +/**
    + * @author Lukas Eder
    + */
    +class Sqrt extends AbstractFunction<BigDecimal> {
    +
    +    /**
    +     * Generated UID
    +     */
    +    private static final long             serialVersionUID = -7273879239726265322L;
    +
    +    private final Field<? extends Number> argument;
    +
    +    Sqrt(Field<? extends Number> argument) {
    +        super("sqrt", SQLDataType.NUMERIC, argument);
    +
    +        this.argument = argument;
    +    }
    +
    +    @Override
    +    final Field<BigDecimal> getFunction0(Configuration configuration) {
    +        switch (configuration.getDialect()) {
    +            case SQLITE:
    +                return Factory.power(argument, 0.5);
    +
    +            default:
    +                return function("sqrt", SQLDataType.NUMERIC, argument);
    +        }
    +    }
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/impl/SubQueryOperator.java b/jOOQ/src/main/java/org/jooq/impl/SubQueryOperator.java
    new file mode 100644
    index 00000000000..1ca999cb799
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/impl/SubQueryOperator.java
    @@ -0,0 +1,88 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +
    +package org.jooq.impl;
    +
    +/**
    + * Any operator used in a {@link SubQueryCondition}
    + *
    + * @author Lukas Eder
    + */
    +enum SubQueryOperator {
    +
    +    IN("in"),
    +    NOT_IN("not in"),
    +    EQUALS("="),
    +    EQUALS_ANY("= any"),
    +    @Deprecated
    +    EQUALS_SOME("= some"),
    +    EQUALS_ALL("= all"),
    +    NOT_EQUALS("<>"),
    +    NOT_EQUALS_ANY("<> any"),
    +    @Deprecated
    +    NOT_EQUALS_SOME("<> some"),
    +    NOT_EQUALS_ALL("<> all"),
    +    LESS("<"),
    +    LESS_THAN_ANY("< any"),
    +    @Deprecated
    +    LESS_THAN_SOME("< some"),
    +    LESS_THAN_ALL("< all"),
    +    LESS_OR_EQUAL("<="),
    +    LESS_OR_EQUAL_ANY("<= any"),
    +    @Deprecated
    +    LESS_OR_EQUAL_SOME("<= some"),
    +    LESS_OR_EQUAL_ALL("<= all"),
    +    GREATER(">"),
    +    GREATER_THAN_ANY("> any"),
    +    @Deprecated
    +    GREATER_THAN_SOME("> some"),
    +    GREATER_THAN_ALL("> all"),
    +    GREATER_OR_EQUAL(">="),
    +    GREATER_OR_EQUAL_ANY(">= any"),
    +    @Deprecated
    +    GREATER_OR_EQUAL_SOME(">= some"),
    +    GREATER_OR_EQUAL_ALL(">= all"), ;
    +
    +    private final String sql;
    +
    +    private SubQueryOperator(String sql) {
    +        this.sql = sql;
    +    }
    +
    +    public String toSQL() {
    +        return sql;
    +    }
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/impl/Substring.java b/jOOQ/src/main/java/org/jooq/impl/Substring.java
    new file mode 100644
    index 00000000000..7105d8d47fd
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/impl/Substring.java
    @@ -0,0 +1,89 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq.impl;
    +
    +import static org.jooq.impl.Factory.function;
    +import static org.jooq.impl.Factory.literal;
    +
    +import org.jooq.Configuration;
    +import org.jooq.Field;
    +
    +/**
    + * @author Lukas Eder
    + */
    +class Substring extends AbstractFunction<String> {
    +
    +    /**
    +     * Generated UID
    +     */
    +    private static final long             serialVersionUID = -7273879239726265322L;
    +
    +    Substring(Field<?>... arguments) {
    +        super("substring", SQLDataType.VARCHAR, arguments);
    +    }
    +
    +    @Override
    +    final Field<String> getFunction0(Configuration configuration) {
    +        String functionName = "substring";
    +
    +        switch (configuration.getDialect()) {
    +            // Sybase ASE and SQL Server requires 3 arguments
    +            case ASE:
    +            case SQLSERVER: {
    +                if (getArguments().length == 2) {
    +                    return function(functionName,
    +                        SQLDataType.VARCHAR, getArguments()[0],
    +                        getArguments()[1],
    +                        literal(Integer.MAX_VALUE));
    +                }
    +
    +                // Default behaviour
    +                else {
    +                    break;
    +                }
    +            }
    +
    +            case DB2:
    +            case DERBY:
    +            case ORACLE:
    +            case SQLITE:
    +                functionName = "substr";
    +                break;
    +        }
    +
    +        return function(functionName, SQLDataType.VARCHAR, getArguments());
    +    }
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/impl/TableAlias.java b/jOOQ/src/main/java/org/jooq/impl/TableAlias.java
    new file mode 100644
    index 00000000000..3d47b38b44d
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/impl/TableAlias.java
    @@ -0,0 +1,123 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +
    +package org.jooq.impl;
    +
    +import java.util.List;
    +
    +import org.jooq.Attachable;
    +import org.jooq.BindContext;
    +import org.jooq.Field;
    +import org.jooq.ForeignKey;
    +import org.jooq.Record;
    +import org.jooq.RenderContext;
    +import org.jooq.Table;
    +
    +/**
    + * @author Lukas Eder
    + */
    +class TableAlias<R extends Record> extends AbstractTable<R> {
    +
    +    private static final long                 serialVersionUID = -8417114874567698325L;
    +
    +    private final AliasProviderImpl<Table<R>> aliasProvider;
    +    private FieldList                         aliasedFields;
    +
    +    TableAlias(Table<R> table, String alias) {
    +        this(table, alias, false);
    +    }
    +
    +    TableAlias(Table<R> table, String alias, boolean wrapInParentheses) {
    +        super(alias, table.getSchema());
    +
    +        this.aliasProvider = new AliasProviderImpl<Table<R>>(table, alias, wrapInParentheses);
    +    }
    +
    +    @Override
    +    public final List<ForeignKey<R, ?>> getReferences() {
    +        return aliasProvider.getAliasProvider().getReferences();
    +    }
    +
    +    @Override
    +    public final List<Attachable> getAttachables0() {
    +        return getAttachables(aliasProvider, aliasedFields);
    +    }
    +
    +    @Override
    +    public final void toSQL(RenderContext context) {
    +        context.sql(aliasProvider);
    +    }
    +
    +    @Override
    +    public final void bind(BindContext context) {
    +        context.bind(aliasProvider);
    +    }
    +
    +    @Override
    +    public final Table<R> as(String alias) {
    +        return aliasProvider.as(alias);
    +    }
    +
    +    @Override
    +    public final boolean declaresTables() {
    +        return true;
    +    }
    +
    +    @Override
    +    protected FieldList getFieldList() {
    +        if (aliasedFields == null) {
    +            aliasedFields = new FieldList();
    +
    +            for (Field<?> field : aliasProvider.getAliasProvider().getFields()) {
    +                registerTableField(field);
    +            }
    +        }
    +
    +        return aliasedFields;
    +    }
    +
    +    /**
    +     * Register a field for this table alias
    +     */
    +    private <T> void registerTableField(Field<T> field) {
    +        aliasedFields.add(new TableFieldImpl<R, T>(field.getName(), field.getDataType(), this));
    +    }
    +
    +    @Override
    +    public Class<? extends R> getRecordType() {
    +        return aliasProvider.getAliasProvider().getRecordType();
    +    }
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/impl/TableFieldImpl.java b/jOOQ/src/main/java/org/jooq/impl/TableFieldImpl.java
    new file mode 100644
    index 00000000000..ff8714bf0aa
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/impl/TableFieldImpl.java
    @@ -0,0 +1,95 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +
    +package org.jooq.impl;
    +
    +import java.util.Collections;
    +import java.util.List;
    +
    +import org.jooq.Attachable;
    +import org.jooq.BindContext;
    +import org.jooq.DataType;
    +import org.jooq.Record;
    +import org.jooq.RenderContext;
    +import org.jooq.Table;
    +import org.jooq.TableField;
    +
    +/**
    + * A common base type for table fields.
    + *
    + * @author Lukas Eder
    + */
    +class TableFieldImpl<R extends Record, T> extends AbstractField<T> implements TableField<R, T> {
    +
    +    private static final long serialVersionUID = -2211214195583539735L;
    +
    +    private final Table<R>    table;
    +
    +    TableFieldImpl(String name, DataType<T> type, Table<R> table) {
    +        super(name, type);
    +
    +        this.table = table;
    +
    +        // [#1199] The public API of Table returns immutable field lists
    +        if (table instanceof TableImpl) {
    +            ((TableImpl<?>) table).getFieldList().add(this);
    +        }
    +    }
    +
    +    @Override
    +    public final List<Attachable> getAttachables() {
    +    	// Don't return Table, as Table returned TableField already
    +        return Collections.emptyList();
    +    }
    +
    +    @Override
    +    public final Table<R> getTable() {
    +        return table;
    +    }
    +
    +    @Override
    +    public final void toSQL(RenderContext context) {
    +        context.sql(table).sql(".").literal(getName());
    +    }
    +
    +    @Override
    +    public final void bind(BindContext context) {}
    +
    +    @Override
    +    public final boolean isNullLiteral() {
    +        return false;
    +    }
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/impl/TableImpl.java b/jOOQ/src/main/java/org/jooq/impl/TableImpl.java
    new file mode 100644
    index 00000000000..8fa53c32ecb
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/impl/TableImpl.java
    @@ -0,0 +1,157 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +
    +package org.jooq.impl;
    +
    +import java.util.List;
    +
    +import org.jooq.Attachable;
    +import org.jooq.BindContext;
    +import org.jooq.Record;
    +import org.jooq.RenderContext;
    +import org.jooq.Schema;
    +import org.jooq.Table;
    +
    +/**
    + * A common base type for tables
    + * <p>
    + * This type is for JOOQ INTERNAL USE only. Do not reference directly
    + *
    + * @author Lukas Eder
    + */
    +public class TableImpl<R extends Record> extends AbstractTable<R> {
    +
    +    private static final long                 serialVersionUID = 261033315221985068L;
    +
    +    private final FieldList                   fields;
    +    private final AliasProviderImpl<Table<R>> alias;
    +
    +    public TableImpl(String name) {
    +        this(name, null);
    +    }
    +
    +    public TableImpl(String name, Schema schema) {
    +        this(name, schema, null);
    +    }
    +
    +    public TableImpl(String name, Schema schema, Table<R> aliased) {
    +        super(name, schema);
    +
    +        this.fields = new FieldList();
    +
    +        if (aliased != null) {
    +            alias = new AliasProviderImpl<Table<R>>(aliased, name);
    +        }
    +        else {
    +            alias = null;
    +        }
    +    }
    +
    +    @Override
    +    public final List<Attachable> getAttachables0() {
    +        if (alias != null) {
    +            return getAttachables(alias, fields);
    +        }
    +        else {
    +            return getAttachables(fields);
    +        }
    +    }
    +
    +    @Override
    +    public final void bind(BindContext context) {
    +        if (alias != null) {
    +            alias.bind(context);
    +        }
    +    }
    +
    +    @Override
    +    protected final FieldList getFieldList() {
    +        return fields;
    +    }
    +
    +    @Override
    +    public final void toSQL(RenderContext context) {
    +        if (alias != null) {
    +            alias.toSQL(context);
    +        }
    +        else {
    +            if (Util.getMappedSchema(context, getSchema()) != null) {
    +                context.sql(Util.getMappedSchema(context, getSchema()));
    +                context.sql(".");
    +            }
    +
    +            context.literal(Util.getMappedTable(context, this).getName());
    +        }
    +    }
    +
    +    /**
    +     * Subclasses may override this method to provide custom aliasing
    +     * implementations
    +     * <p>
    +     * {@inheritDoc}
    +     */
    +    @Override
    +    public Table<R> as(String as) {
    +        if (alias != null) {
    +            return alias.as(as);
    +        }
    +        else {
    +            return new TableAlias<R>(this, as);
    +        }
    +    }
    +
    +    /**
    +     * Subclasses must override this method if they use the generic type
    +     * parameter <R> for other types than {@link Record}
    +     * <p>
    +     * {@inheritDoc}
    +     */
    +    @SuppressWarnings("unchecked")
    +    @Override
    +    public Class<? extends R> getRecordType() {
    +        return (Class<? extends R>) RecordImpl.class;
    +    }
    +
    +    @Override
    +    public boolean declaresTables() {
    +        if (alias != null) {
    +            return true;
    +        }
    +        else {
    +            return super.declaresTables();
    +        }
    +    }
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/impl/TableList.java b/jOOQ/src/main/java/org/jooq/impl/TableList.java
    new file mode 100644
    index 00000000000..9dc3cd689f2
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/impl/TableList.java
    @@ -0,0 +1,86 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +
    +package org.jooq.impl;
    +
    +import java.util.List;
    +
    +import org.jooq.Field;
    +import org.jooq.RenderContext;
    +import org.jooq.Table;
    +
    +/**
    + * @author Lukas Eder
    + */
    +class TableList extends NamedQueryPartList<Table<?>> {
    +
    +    private static final long serialVersionUID = -8545559185481762229L;
    +
    +    TableList() {
    +        super();
    +    }
    +
    +    TableList(List<? extends Table<?>> wrappedList) {
    +        super(wrappedList);
    +    }
    +
    +    @Override
    +    protected void toSQLEmptyList(RenderContext context) {
    +        context.sql(new Dual());
    +    }
    +
    +    @Override
    +    public final boolean declaresTables() {
    +        return true;
    +    }
    +
    +    /**
    +     * Get a list of names of the <code>NamedQueryParts</code> contained in this
    +     * list.
    +     */
    +    final void toSQLFieldNames(RenderContext context) {
    +        String separator = "";
    +
    +        for (Table<?> table : this) {
    +            for (Field<?> field : table.getFields()) {
    +                context.sql(separator);
    +                context.literal(field.getName());
    +
    +                separator = ", ";
    +            }
    +        }
    +    }
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/impl/TableRecordImpl.java b/jOOQ/src/main/java/org/jooq/impl/TableRecordImpl.java
    new file mode 100644
    index 00000000000..a0541d7ed9c
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/impl/TableRecordImpl.java
    @@ -0,0 +1,237 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq.impl;
    +
    +import static org.jooq.impl.Factory.val;
    +
    +import java.util.Collection;
    +import java.util.LinkedHashSet;
    +
    +import org.jooq.ConditionProvider;
    +import org.jooq.DeleteQuery;
    +import org.jooq.Field;
    +import org.jooq.Identity;
    +import org.jooq.InsertQuery;
    +import org.jooq.SimpleSelectQuery;
    +import org.jooq.StoreQuery;
    +import org.jooq.Table;
    +import org.jooq.TableField;
    +import org.jooq.TableRecord;
    +import org.jooq.UpdateQuery;
    +import org.jooq.exception.InvalidResultException;
    +
    +/**
    + * A record implementation for a record originating from a single table
    + * <p>
    + * This type is for JOOQ INTERNAL USE only. Do not reference directly
    + *
    + * @author Lukas Eder
    + */
    +public class TableRecordImpl<R extends TableRecord<R>> extends TypeRecord<Table<R>> implements TableRecord<R> {
    +
    +    /**
    +     * Generated UID
    +     */
    +    private static final long serialVersionUID = 3216746611562261641L;
    +
    +    public TableRecordImpl(Table<R> table) {
    +        super(table);
    +    }
    +
    +    /*
    +     * This method is overridden covariantly by UpdatableRecordImpl
    +     */
    +    @Override
    +    public Table<R> getTable() {
    +        return getType0();
    +    }
    +
    +    @Override
    +    public final int storeUsing(TableField<R, ?>... keys) {
    +        boolean executeUpdate = false;
    +
    +        for (TableField<R, ?> field : keys) {
    +
    +            // If any primary key value is null or changed, execute an insert
    +            if (getValue(field) == null || getValue0(field).isChanged()) {
    +                executeUpdate = false;
    +                break;
    +            }
    +
    +            // If primary key values are unchanged, updates are possible
    +            else {
    +                executeUpdate = true;
    +            }
    +        }
    +
    +        int result = 0;
    +
    +        if (executeUpdate) {
    +            result = storeUpdate(keys);
    +        }
    +        else {
    +            result = storeInsert();
    +        }
    +
    +        for (Value<?> value : getValues()) {
    +            value.setChanged(false);
    +        }
    +
    +        return result;
    +    }
    +
    +    @SuppressWarnings("unchecked")
    +    private final int storeInsert() {
    +        InsertQuery<R> insert = create().insertQuery(getTable());
    +
    +        for (Field<?> field : getFields()) {
    +            if (getValue0(field).isChanged()) {
    +                addValue(insert, (TableField<R, ?>) field);
    +            }
    +        }
    +
    +        // [#814] Refresh identity and/or main unique key values
    +        // [#1002] Consider also identity columns of non-updatable records
    +        Collection<Field<?>> key = getReturning();
    +        insert.setReturning(key);
    +        int result = insert.execute();
    +
    +        // If an insert was successful try fetching the generated IDENTITY value
    +        if (!key.isEmpty() && result > 0) {
    +            if (insert.getReturnedRecord() != null) {
    +                for (Field<?> field : key) {
    +                    setValue0(field, new Value<Object>(insert.getReturnedRecord().getValue(field)));
    +                }
    +            }
    +        }
    +
    +        return result;
    +    }
    +
    +    /**
    +     * Subclasses may override this method to provide an identity
    +     */
    +    Collection<Field<?>> getReturning() {
    +        Collection<Field<?>> result = new LinkedHashSet<Field<?>>();
    +
    +        Identity<R, ?> identity = getTable().getIdentity();
    +        if (identity != null) {
    +            result.add(identity.getField());
    +        }
    +
    +        return result;
    +    }
    +
    +    @SuppressWarnings("unchecked")
    +    private final int storeUpdate(TableField<R, ?>... keys) {
    +        UpdateQuery<R> update = create().updateQuery(getTable());
    +
    +        for (Field<?> field : getFields()) {
    +            if (getValue0(field).isChanged()) {
    +                addValue(update, (TableField<R, ?>) field);
    +            }
    +        }
    +
    +        for (Field<?> field : keys) {
    +            addCondition(update, field);
    +        }
    +
    +        return update.execute();
    +    }
    +
    +    @Override
    +    public final int deleteUsing(TableField<R, ?>... keys) {
    +        try {
    +            DeleteQuery<R> delete = create().deleteQuery(getTable());
    +
    +            for (Field<?> field : keys) {
    +                addCondition(delete, field);
    +            }
    +
    +            return delete.execute();
    +        }
    +
    +        // [#673] If store() is called after delete(), a new INSERT should
    +        // be executed and the record should be recreated
    +        finally {
    +            for (Field<?> field : getFields()) {
    +                getValue0(field).setChanged(true);
    +            }
    +        }
    +    }
    +
    +    @Override
    +    public final void refreshUsing(TableField<R, ?>... keys) {
    +        SimpleSelectQuery<R> select = create().selectQuery(getTable());
    +
    +        for (Field<?> field : keys) {
    +            addCondition(select, field);
    +        }
    +
    +        if (select.execute() == 1) {
    +            AbstractRecord record = (AbstractRecord) select.getResult().get(0);
    +
    +            for (Field<?> field : getFields()) {
    +                setValue0(field, record.getValue0(field));
    +            }
    +        }
    +        else {
    +            throw new InvalidResultException("Exactly one row expected for refresh. Record does not exist in database.");
    +        }
    +    }
    +
    +    /**
    +     * Extracted method to ensure generic type safety.
    +     */
    +    @SuppressWarnings("unchecked")
    +    private final <T> void setValue0(Field<T> field, Value<?> value) {
    +        setValue(field, (Value<T>) value);
    +    }
    +
    +    /**
    +     * Extracted method to ensure generic type safety.
    +     */
    +    private final <T> void addCondition(ConditionProvider provider, Field<T> field) {
    +        provider.addConditions(field.equal(getValue(field)));
    +    }
    +
    +    /**
    +     * Extracted method to ensure generic type safety.
    +     */
    +    private final <T> void addValue(StoreQuery<?> store, Field<T> field) {
    +        store.addValue(field, val(getValue(field), field));
    +    }
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/impl/Tanh.java b/jOOQ/src/main/java/org/jooq/impl/Tanh.java
    new file mode 100644
    index 00000000000..2275cfffd35
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/impl/Tanh.java
    @@ -0,0 +1,82 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq.impl;
    +
    +import static org.jooq.impl.Factory.function;
    +import static org.jooq.impl.Factory.one;
    +import static org.jooq.impl.Factory.two;
    +
    +import java.math.BigDecimal;
    +
    +import org.jooq.Configuration;
    +import org.jooq.Field;
    +
    +/**
    + * @author Lukas Eder
    + */
    +class Tanh extends AbstractFunction<BigDecimal> {
    +
    +    /**
    +     * Generated UID
    +     */
    +    private static final long             serialVersionUID = -7273879239726265322L;
    +
    +    private final Field<? extends Number> argument;
    +
    +    Tanh(Field<? extends Number> argument) {
    +        super("tanh", SQLDataType.NUMERIC, argument);
    +
    +        this.argument = argument;
    +    }
    +
    +    @Override
    +    final Field<BigDecimal> getFunction0(Configuration configuration) {
    +        switch (configuration.getDialect()) {
    +            case ASE:
    +            case CUBRID:
    +            case HSQLDB:
    +            case INGRES:
    +            case MYSQL:
    +            case POSTGRES:
    +            case SQLSERVER:
    +            case SYBASE:
    +                return Factory.exp(argument.mul(two())).sub(one()).div(Factory.exp(argument.mul(two())).add(one()));
    +
    +            default:
    +                return function("tanh", SQLDataType.NUMERIC, argument);
    +        }
    +    }
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/impl/Term.java b/jOOQ/src/main/java/org/jooq/impl/Term.java
    new file mode 100644
    index 00000000000..556c0933e6f
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/impl/Term.java
    @@ -0,0 +1,215 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq.impl;
    +
    +import org.jooq.SQLDialect;
    +
    +/**
    + * The term dictionary enumerates standard expressions and their
    + * dialect-specific variants if applicable
    + *
    + * @author Lukas Eder
    + */
    +enum Term {
    +
    +    ATAN2 {
    +        @Override
    +        public String translate(SQLDialect dialect) {
    +            switch (dialect) {
    +                case ASE:
    +                case SQLSERVER:
    +                    return "atn2";
    +            }
    +
    +            return "atan2";
    +        }
    +    },
    +    BIT_LENGTH {
    +        @Override
    +        public String translate(SQLDialect dialect) {
    +            switch (dialect) {
    +                case ASE:
    +                    return "8 * datalength";
    +
    +                case DB2:
    +                case DERBY:
    +                case INGRES:
    +                case SQLITE:
    +                case SYBASE:
    +                    return "8 * length";
    +
    +                case SQLSERVER:
    +                    return "8 * len";
    +
    +                case ORACLE:
    +                    return "8 * lengthb";
    +            }
    +
    +            return "bit_length";
    +        }
    +    },
    +    CHAR_LENGTH {
    +        @Override
    +        public String translate(SQLDialect dialect) {
    +            switch (dialect) {
    +                case DB2:
    +                case DERBY:
    +                case INGRES:
    +                case ORACLE:
    +                case SQLITE:
    +                case SYBASE:
    +                    return "length";
    +
    +                case SQLSERVER:
    +                    return "len";
    +            }
    +
    +            return "char_length";
    +        }
    +    },
    +    LIST_AGG {
    +        @Override
    +        public String translate(SQLDialect dialect) {
    +            switch (dialect) {
    +                case CUBRID:
    +                case H2:
    +                case HSQLDB:
    +                case MYSQL:
    +                    return "group_concat";
    +
    +                // DB2 needs to do some rather complex XML manipulation to
    +                // achieve the same results. XMLAGG() itself cannot do it
    +                case DB2:
    +                    return "xmlagg";
    +
    +                case ORACLE:
    +                    return "listagg";
    +
    +                case POSTGRES:
    +                    return "string_agg";
    +
    +                case SYBASE:
    +                    return "list";
    +            }
    +
    +            return "listagg";
    +        }
    +    },
    +    OCTET_LENGTH {
    +        @Override
    +        public String translate(SQLDialect dialect) {
    +            switch (dialect) {
    +                case DB2:
    +                case DERBY:
    +                case INGRES:
    +                case SQLITE:
    +                case SYBASE:
    +                    return "length";
    +
    +                case SQLSERVER:
    +                    return "len";
    +
    +                case ORACLE:
    +                    return "lengthb";
    +            }
    +
    +            return "octet_length";
    +        }
    +    },
    +    STDDEV_POP {
    +        @Override
    +        public String translate(SQLDialect dialect) {
    +            switch (dialect) {
    +                case DB2:
    +                    return "stddev";
    +
    +                case SQLSERVER:
    +                    return "stdevp";
    +            }
    +
    +            return "stddev_pop";
    +        }
    +    },
    +    STDDEV_SAMP {
    +        @Override
    +        public String translate(SQLDialect dialect) {
    +            switch (dialect) {
    +                case DB2:
    +                    return "stddev";
    +
    +                case SQLSERVER:
    +                    return "stdev";
    +            }
    +
    +            return "stddev_samp";
    +        }
    +    },
    +    VAR_POP {
    +        @Override
    +        public String translate(SQLDialect dialect) {
    +            switch (dialect) {
    +                case DB2:
    +                    return "variance";
    +
    +                case SQLSERVER:
    +                    return "varp";
    +            }
    +
    +            return "var_pop";
    +        }
    +    },
    +    VAR_SAMP {
    +        @Override
    +        public String translate(SQLDialect dialect) {
    +            switch (dialect) {
    +                case DB2:
    +                    return "variance";
    +
    +                case SQLSERVER:
    +                    return "var";
    +            }
    +
    +            return "var_samp";
    +        }
    +    },
    +
    +    ;
    +
    +    /**
    +     * Translate the term to its dialect-specific variant
    +     */
    +    abstract String translate(SQLDialect dialect);
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/impl/TimestampDiff.java b/jOOQ/src/main/java/org/jooq/impl/TimestampDiff.java
    new file mode 100644
    index 00000000000..7aef9f19b6d
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/impl/TimestampDiff.java
    @@ -0,0 +1,125 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq.impl;
    +
    +import static org.jooq.impl.Factory.field;
    +import static org.jooq.impl.Factory.function;
    +import static org.jooq.impl.SQLDataType.INTEGER;
    +
    +import java.sql.Timestamp;
    +
    +import org.jooq.Configuration;
    +import org.jooq.Field;
    +import org.jooq.exception.SQLDialectNotSupportedException;
    +import org.jooq.types.DayToSecond;
    +
    +/**
    + * @author Lukas Eder
    + */
    +class TimestampDiff extends AbstractFunction<DayToSecond> {
    +
    +    /**
    +     * Generated UID
    +     */
    +    private static final long serialVersionUID = -4813228000332771961L;
    +
    +    private final Field<Timestamp> timestamp1;
    +    private final Field<Timestamp> timestamp2;
    +
    +    TimestampDiff(Field<Timestamp> timestamp1, Field<Timestamp> timestamp2) {
    +        super("timestampdiff", SQLDataType.INTERVALDAYTOSECOND, timestamp1, timestamp2);
    +
    +        this.timestamp1 = timestamp1;
    +        this.timestamp2 = timestamp2;
    +    }
    +
    +    @Override
    +    final Field<DayToSecond> getFunction0(Configuration configuration) {
    +        switch (configuration.getDialect()) {
    +
    +            // Sybase ASE's datediff incredibly overflows on 3 days' worth of
    +            // microseconds. That's why the days have to be leveled at first
    +            case ASE:
    +
    +                // The difference in number of days
    +                Field<Integer> days = field("{datediff}(day, {0}, {1})", INTEGER, timestamp2, timestamp1);
    +
    +                // The intra-day difference in number of milliseconds
    +                Field<Integer> milli = field("{datediff}(ms, {0}, {1})", INTEGER, timestamp2.add(days), timestamp1);
    +                return (Field) days.mul(86400000).add(milli);
    +
    +            // CUBRID's datetime operations operate on a millisecond level
    +            case CUBRID:
    +                return (Field) timestamp1.sub(timestamp2);
    +
    +            // Fun with DB2 dates. Find some info here:
    +            // http://www.ibm.com/developerworks/data/library/techarticle/0211yip/0211yip3.html
    +            case DB2:
    +                return (Field) function("days", INTEGER, timestamp1).sub(
    +                               function("days", INTEGER, timestamp2)).mul(86400000).add(
    +                               function("midnight_seconds", INTEGER, timestamp1).sub(
    +                               function("midnight_seconds", INTEGER, timestamp2)).mul(1000));
    +
    +            case DERBY:
    +                return (Field) field("1000 * {fn {timestampdiff}({sql_tsi_second}, {0}, {1}) }", INTEGER, timestamp2, timestamp1);
    +
    +            case H2:
    +            case HSQLDB:
    +                return field("{datediff}('ms', {0}, {1})", getDataType(), timestamp2, timestamp1);
    +
    +            case INGRES:
    +                throw new SQLDialectNotSupportedException("Date time arithmetic not supported in Ingres. Contributions welcome!");
    +
    +            // MySQL's datetime operations operate on a microsecond level
    +            case MYSQL:
    +                return field("{timestampdiff}(microsecond, {0}, {1}) / 1000", getDataType(), timestamp2, timestamp1);
    +
    +            case SQLSERVER:
    +            case SYBASE:
    +                return field("{datediff}(ms, {0}, {1})", getDataType(), timestamp2, timestamp1);
    +
    +            case SQLITE:
    +                return field("({strftime}('%s', {0}) - {strftime}('%s', {1})) * 1000", getDataType(), timestamp1, timestamp2);
    +
    +            case ORACLE:
    +            case POSTGRES:
    +                return field("{0} - {1}", getDataType(), timestamp1, timestamp2);
    +        }
    +
    +        // Default implementation for equals() and hashCode()
    +        return timestamp1.sub(timestamp2).cast(DayToSecond.class);
    +    }
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/impl/Trim.java b/jOOQ/src/main/java/org/jooq/impl/Trim.java
    new file mode 100644
    index 00000000000..66652ccee01
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/impl/Trim.java
    @@ -0,0 +1,73 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq.impl;
    +
    +import static org.jooq.impl.Factory.function;
    +
    +import org.jooq.Configuration;
    +import org.jooq.Field;
    +
    +/**
    + * @author Lukas Eder
    + */
    +class Trim extends AbstractFunction<String> {
    +
    +    /**
    +     * Generated UID
    +     */
    +    private static final long   serialVersionUID = -7273879239726265322L;
    +
    +    private final Field<String> argument;
    +
    +    Trim(Field<String> argument) {
    +        super("trim", SQLDataType.VARCHAR, argument);
    +
    +        this.argument = argument;
    +    }
    +
    +    @Override
    +    final Field<String> getFunction0(Configuration configuration) {
    +        switch (configuration.getDialect()) {
    +            case ASE:
    +            case INGRES:
    +            case SQLSERVER:
    +                return Factory.ltrim(Factory.rtrim(argument));
    +
    +            default:
    +                return function("trim", SQLDataType.VARCHAR, argument);
    +        }
    +    }
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/impl/TrueCondition.java b/jOOQ/src/main/java/org/jooq/impl/TrueCondition.java
    new file mode 100644
    index 00000000000..102bc8b8266
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/impl/TrueCondition.java
    @@ -0,0 +1,67 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +
    +package org.jooq.impl;
    +
    +import java.util.Collections;
    +import java.util.List;
    +
    +import org.jooq.Attachable;
    +import org.jooq.BindContext;
    +import org.jooq.RenderContext;
    +
    +/**
    + * @author Lukas Eder
    + */
    +class TrueCondition extends AbstractCondition {
    +
    +    private static final long serialVersionUID = 775364624704563687L;
    +
    +    @Override
    +    public final void bind(BindContext context) {}
    +
    +    @Override
    +    public final void toSQL(RenderContext context) {
    +        context.sql("1 = 1");
    +    }
    +
    +    @Override
    +    public final List<Attachable> getAttachables() {
    +        return Collections.emptyList();
    +    }
    +
    +    TrueCondition() {}
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/impl/TruncateImpl.java b/jOOQ/src/main/java/org/jooq/impl/TruncateImpl.java
    new file mode 100644
    index 00000000000..a4c881247e9
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/impl/TruncateImpl.java
    @@ -0,0 +1,101 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq.impl;
    +
    +import java.util.List;
    +
    +import org.jooq.Attachable;
    +import org.jooq.BindContext;
    +import org.jooq.Configuration;
    +import org.jooq.RenderContext;
    +import org.jooq.SQLDialect;
    +import org.jooq.Table;
    +import org.jooq.TableRecord;
    +import org.jooq.Truncate;
    +
    +/**
    + * @author Lukas Eder
    + */
    +class TruncateImpl<R extends TableRecord<R>> extends AbstractQuery implements Truncate<R> {
    +
    +    /**
    +     * Generated UID
    +     */
    +    private static final long serialVersionUID = 8904572826501186329L;
    +
    +    private final Table<R>    table;
    +
    +    public TruncateImpl(Configuration configuration, Table<R> table) {
    +        super(configuration);
    +
    +        this.table = table;
    +    }
    +
    +    @Override
    +    public final void toSQL(RenderContext context) {
    +        switch (context.getDialect()) {
    +
    +            // These dialects don't implement the TRUNCATE statement
    +            case INGRES:
    +            case SQLITE: {
    +                context.sql(create(context).delete(table));
    +                break;
    +            }
    +
    +            // All other dialects do
    +            default: {
    +                context.keyword("truncate table ");
    +                context.sql(table);
    +
    +                if (context.getDialect() == SQLDialect.DB2) {
    +                    context.keyword(" immediate");
    +                }
    +
    +                break;
    +            }
    +        }
    +    }
    +
    +    @Override
    +    public final void bind(BindContext context) {
    +        context.bind(table);
    +    }
    +
    +    @Override
    +    public final List<Attachable> getAttachables() {
    +        return getAttachables(table);
    +    }
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/impl/TypeRecord.java b/jOOQ/src/main/java/org/jooq/impl/TypeRecord.java
    new file mode 100644
    index 00000000000..97517537a69
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/impl/TypeRecord.java
    @@ -0,0 +1,56 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq.impl;
    +
    +import org.jooq.Type;
    +
    +abstract class TypeRecord<T extends Type<?>> extends AbstractRecord {
    +
    +    /**
    +     * Generated UID
    +     */
    +    private static final long serialVersionUID = -4613985511514503387L;
    +
    +    public TypeRecord(T table) {
    +        super(table);
    +    }
    +
    +    @SuppressWarnings("unchecked")
    +    T getType0() {
    +        // We can be sure about that cast, as this is the only possibility
    +        return (T) getMetaData();
    +    }
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/impl/UDTConstant.java b/jOOQ/src/main/java/org/jooq/impl/UDTConstant.java
    new file mode 100644
    index 00000000000..823d1927151
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/impl/UDTConstant.java
    @@ -0,0 +1,189 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +
    +package org.jooq.impl;
    +
    +import static org.jooq.impl.Factory.val;
    +
    +import java.util.List;
    +
    +import org.jooq.Attachable;
    +import org.jooq.BindContext;
    +import org.jooq.Field;
    +import org.jooq.RenderContext;
    +import org.jooq.UDT;
    +import org.jooq.UDTRecord;
    +import org.jooq.exception.SQLDialectNotSupportedException;
    +
    +/**
    + * @author Lukas Eder
    + */
    +class UDTConstant<R extends UDTRecord<R>> extends AbstractField<R> {
    +
    +    private static final long  serialVersionUID = 6807729087019209084L;
    +
    +    private final UDTRecord<?> record;
    +
    +    UDTConstant(UDTRecord<R> value) {
    +        super(value.toString(), value.getUDT().getDataType());
    +
    +        this.record = value;
    +    }
    +
    +    @Override
    +    public final List<Attachable> getAttachables() {
    +        return getAttachables(record);
    +    }
    +
    +    @Override
    +    public final void toSQL(RenderContext context) {
    +        switch (context.getDialect()) {
    +
    +            // Oracle supports java.sql.SQLData, hence the record can be bound
    +            // to the CallableStatement directly
    +            case ORACLE: {
    +                if (context.inline()) {
    +                    toSQLInline(context);
    +                } else {
    +                    context.sql("?");
    +                }
    +
    +                return;
    +            }
    +
    +            // Due to lack of UDT support in the Postgres JDBC drivers, all UDT's
    +            // have to be inlined
    +            case POSTGRES: {
    +                toSQLInline(context);
    +                return;
    +            }
    +
    +            // DB2 supports UDT's but this is only experimental in jOOQ
    +            case DB2: {
    +
    +                // The subsequent DB2 logic should be refactored into toSQLInline()
    +                context.sql(getInlineConstructor(context));
    +                context.sql("()");
    +
    +                String separator = "..";
    +                for (Field<?> field : record.getFields()) {
    +                    context.sql(separator);
    +                    context.sql(field.getName());
    +                    context.sql("(");
    +                    context.sql(val(record.getValue(field)));
    +                    context.sql(")");
    +                }
    +
    +                return;
    +            }
    +
    +            // Assume default behaviour if dialect is not available
    +            default:
    +                toSQLInline(context);
    +                return;
    +        }
    +    }
    +
    +    private void toSQLInline(RenderContext context) {
    +        context.sql(getInlineConstructor(context));
    +        context.sql("(");
    +
    +        String separator = "";
    +        for (Field<?> field : record.getFields()) {
    +            context.sql(separator);
    +            context.sql(val(record.getValue(field), field));
    +            separator = ", ";
    +        }
    +
    +        context.sql(")");
    +    }
    +
    +    private String getInlineConstructor(RenderContext context) {
    +        // TODO [#884] Fix this with a local render context (using ctx.literal)
    +        switch (context.getDialect()) {
    +            case POSTGRES:
    +                return "ROW";
    +
    +            case ORACLE:
    +            case DB2:
    +
    +            // Assume default behaviour if dialect is not available
    +            default: {
    +                UDT<?> udt = record.getUDT();
    +
    +                if (Util.getMappedSchema(context, udt.getSchema()) != null) {
    +                    return Util.getMappedSchema(context, udt.getSchema()) + "." + udt.getName();
    +                }
    +                else {
    +                    return udt.getName();
    +                }
    +            }
    +        }
    +    }
    +
    +    @Override
    +    public final void bind(BindContext context) {
    +        switch (context.getDialect()) {
    +
    +            // Oracle supports java.sql.SQLData, hence the record can be bound
    +            // to the CallableStatement directly
    +            case ORACLE:
    +                context.bindValues(record);
    +                break;
    +
    +            // Is the DB2 case correct? Should it be inlined like the Postgres case?
    +            case DB2:
    +
    +            // Postgres cannot bind a complete structured type. The type is
    +            // inlined instead: ROW(.., .., ..)
    +            case POSTGRES: {
    +                for (Field<?> field : record.getFields()) {
    +                    context.bind(val(record.getValue(field)));
    +                }
    +
    +                break;
    +            }
    +
    +            default:
    +                throw new SQLDialectNotSupportedException("UDTs not supported in dialect " + context.getDialect());
    +        }
    +    }
    +
    +    @Override
    +    public final boolean isNullLiteral() {
    +        return record == null;
    +    }
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/impl/UDTDataType.java b/jOOQ/src/main/java/org/jooq/impl/UDTDataType.java
    new file mode 100644
    index 00000000000..6d5c2580bfa
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/impl/UDTDataType.java
    @@ -0,0 +1,56 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq.impl;
    +
    +import org.jooq.SQLDialect;
    +import org.jooq.UDT;
    +import org.jooq.UDTRecord;
    +
    +/**
    + * @author Lukas Eder
    + */
    +class UDTDataType<R extends UDTRecord<R>> extends AbstractDataType<R> {
    +
    +    /**
    +     * Generated UID
    +     */
    +    private static final long serialVersionUID = 3262508265391094581L;
    +
    +    @SuppressWarnings("deprecation")
    +    UDTDataType(UDT<R> udt) {
    +        super(SQLDialect.SQL99, null, udt.getRecordType(), udt.getName());
    +    }
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/impl/UDTFieldImpl.java b/jOOQ/src/main/java/org/jooq/impl/UDTFieldImpl.java
    new file mode 100644
    index 00000000000..3f7b154f7a8
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/impl/UDTFieldImpl.java
    @@ -0,0 +1,95 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +
    +package org.jooq.impl;
    +
    +import java.util.Collections;
    +import java.util.List;
    +
    +import org.jooq.Attachable;
    +import org.jooq.BindContext;
    +import org.jooq.DataType;
    +import org.jooq.RenderContext;
    +import org.jooq.UDT;
    +import org.jooq.UDTField;
    +import org.jooq.UDTRecord;
    +
    +/**
    + * A common base type for UDT attributes / fields
    + *
    + * @author Lukas Eder
    + */
    +class UDTFieldImpl<R extends UDTRecord<R>, T> extends AbstractField<T> implements UDTField<R, T> {
    +
    +    private static final long serialVersionUID = -2211214195583539735L;
    +
    +    private final UDT<R>      udt;
    +
    +    UDTFieldImpl(String name, DataType<T> type, UDT<R> udt) {
    +        super(name, type);
    +
    +        this.udt = udt;
    +
    +        // [#1199] The public API of UDT returns immutable field lists
    +        if (udt instanceof UDTImpl) {
    +            ((UDTImpl<?>) udt).getFieldList().add(this);
    +        }
    +    }
    +
    +    @Override
    +    public final List<Attachable> getAttachables() {
    +        // Don't return UDT, as UDT returned UDTField already
    +        return Collections.emptyList();
    +    }
    +
    +    @Override
    +    public final UDT<R> getUDT() {
    +        return udt;
    +    }
    +
    +    @Override
    +    public final void toSQL(RenderContext context) {
    +        context.literal(getName());
    +    }
    +
    +    @Override
    +    public final void bind(BindContext context) {}
    +
    +    @Override
    +    public final boolean isNullLiteral() {
    +        return false;
    +    }
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/impl/UDTImpl.java b/jOOQ/src/main/java/org/jooq/impl/UDTImpl.java
    new file mode 100644
    index 00000000000..a859fa593cd
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/impl/UDTImpl.java
    @@ -0,0 +1,141 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq.impl;
    +
    +import java.sql.SQLException;
    +import java.util.HashMap;
    +import java.util.List;
    +import java.util.Map;
    +
    +import org.jooq.Attachable;
    +import org.jooq.BindContext;
    +import org.jooq.DataType;
    +import org.jooq.Field;
    +import org.jooq.QueryPart;
    +import org.jooq.Record;
    +import org.jooq.RenderContext;
    +import org.jooq.Schema;
    +import org.jooq.UDT;
    +import org.jooq.UDTField;
    +import org.jooq.UDTRecord;
    +
    +/**
    + * A common base type for UDT's
    + * <p>
    + * This type is for JOOQ INTERNAL USE only. Do not reference directly
    + *
    + * @author Lukas Eder
    + */
    +public class UDTImpl<R extends UDTRecord<R>> extends AbstractType<R> implements UDT<R> {
    +
    +    private static final long               serialVersionUID = -2208672099190913126L;
    +
    +    private final FieldList                 fields;
    +    private transient DataType<R>           type;
    +    private transient Map<String, Class<?>> typeMapping;
    +
    +    public UDTImpl(String name, Schema schema) {
    +        super(name, schema);
    +
    +        this.fields = new FieldList();
    +    }
    +
    +    @Override
    +    public final List<Attachable> getAttachables0() {
    +        return getAttachables(fields);
    +    }
    +
    +    @Override
    +    protected final FieldList getFieldList() {
    +        return fields;
    +    }
    +
    +    /**
    +     * Subclasses must override this method if they use the generic type
    +     * parameter <R> for other types than {@link Record}
    +     */
    +    @Override
    +    public Class<? extends R> getRecordType() {
    +        throw new UnsupportedOperationException();
    +    }
    +
    +    @Override
    +    public final synchronized Map<String, Class<?>> getTypeMapping() throws SQLException {
    +        if (typeMapping == null) {
    +            typeMapping = new HashMap<String, Class<?>>();
    +            typeMapping.put(getName(), getRecordType());
    +
    +            // Recursively add nested UDT types
    +            for (Field<?> field : getFieldList()) {
    +                if (UDTRecord.class.isAssignableFrom(field.getType())) {
    +                    typeMapping.putAll(FieldTypeHelper.getTypeMapping(field.getType()));
    +                }
    +            }
    +        }
    +
    +        return typeMapping;
    +    }
    +
    +    @Override
    +    public final DataType<R> getDataType() {
    +        if (type == null) {
    +            type = new UDTDataType<R>(this);
    +        }
    +
    +        return type;
    +    }
    +
    +    @Override
    +    public final void toSQL(RenderContext context) {
    +        context.literal(getName());
    +    }
    +
    +    @Override
    +    public final void bind(BindContext context) {
    +        context.bind((QueryPart) fields);
    +    }
    +
    +    /**
    +     * Subclasses may call this method to create {@link UDTField} objects that
    +     * are linked to this table.
    +     *
    +     * @param name The name of the field (case-sensitive!)
    +     * @param type The data type of the field
    +     */
    +    protected static final <R extends UDTRecord<R>, T> UDTField<R, T> createField(String name, DataType<T> type, UDT<R> udt) {
    +        return new UDTFieldImpl<R, T>(name, type, udt);
    +    }
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/impl/UDTRecordImpl.java b/jOOQ/src/main/java/org/jooq/impl/UDTRecordImpl.java
    new file mode 100644
    index 00000000000..0dbcd2b3cbe
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/impl/UDTRecordImpl.java
    @@ -0,0 +1,98 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq.impl;
    +
    +import java.sql.SQLException;
    +import java.sql.SQLInput;
    +import java.sql.SQLOutput;
    +
    +import org.jooq.Configuration;
    +import org.jooq.Field;
    +import org.jooq.UDT;
    +import org.jooq.UDTRecord;
    +
    +/**
    + * A record implementation for a record originating from a single UDT
    + * <p>
    + * This type is for JOOQ INTERNAL USE only. Do not reference directly
    + *
    + * @author Lukas Eder
    + */
    +public class UDTRecordImpl<R extends UDTRecord<R>> extends TypeRecord<UDT<R>> implements UDTRecord<R> {
    +
    +    /**
    +     * Generated UID
    +     */
    +    private static final long serialVersionUID = 5671315498175872799L;
    +
    +    public UDTRecordImpl(UDT<R> udt) {
    +        super(udt);
    +    }
    +
    +    @Override
    +    public final UDT<R> getUDT() {
    +        return getType0();
    +    }
    +
    +    @Override
    +    public final String getSQLTypeName() throws SQLException {
    +        return getUDT().getName();
    +    }
    +
    +    @Override
    +    public final void readSQL(SQLInput stream, String typeName) throws SQLException {
    +        Factory configuration = Factory.getNewFactory(getUDT().getDataType().getDialect());
    +
    +        for (Field<?> field : getUDT().getFields()) {
    +            setValue(configuration, stream, field);
    +        }
    +    }
    +
    +    private final <T> void setValue(Configuration configuration, SQLInput stream, Field<T> field) throws SQLException {
    +        setValue(field, FieldTypeHelper.getFromSQLInput(configuration, stream, field));
    +    }
    +
    +    @Override
    +    public final void writeSQL(SQLOutput stream) throws SQLException {
    +        for (Field<?> field : getUDT().getFields()) {
    +            setValue(stream, field);
    +        }
    +    }
    +
    +    private final <T> void setValue(SQLOutput stream, Field<T> field) throws SQLException {
    +        FieldTypeHelper.writeToSQLOutput(stream, field, getValue(field));
    +    }
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/impl/Union.java b/jOOQ/src/main/java/org/jooq/impl/Union.java
    new file mode 100644
    index 00000000000..b81eb2e7e3b
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/impl/Union.java
    @@ -0,0 +1,132 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq.impl;
    +
    +import java.util.ArrayList;
    +import java.util.List;
    +
    +import org.jooq.Attachable;
    +import org.jooq.BindContext;
    +import org.jooq.Configuration;
    +import org.jooq.Field;
    +import org.jooq.Record;
    +import org.jooq.RenderContext;
    +import org.jooq.Select;
    +
    +/**
    + * A union is a <code>SELECT</code> statement that combines several sub-selects
    + * with a <code>UNION</code> or a similar operator.
    + *
    + * @author Lukas Eder
    + */
    +class Union<R extends Record> extends AbstractSelect<R> {
    +
    +    private static final long     serialVersionUID = 7491446471677986172L;
    +
    +    private final List<Select<R>> queries;
    +    private final CombineOperator operator;
    +
    +    Union(Configuration configuration, Select<R> query1, Select<R> query2, CombineOperator operator) {
    +        super(configuration);
    +
    +        this.operator = operator;
    +        this.queries = new ArrayList<Select<R>>();
    +        this.queries.add(query1);
    +        this.queries.add(query2);
    +    }
    +
    +    @Override
    +    public final List<Attachable> getAttachables() {
    +        return getAttachables(queries);
    +    }
    +
    +    @Override
    +    public final Class<? extends R> getRecordType() {
    +        return queries.get(0).getRecordType();
    +    }
    +
    +    @Override
    +    public final List<Field<?>> getSelect() {
    +        return queries.get(0).getSelect();
    +    }
    +
    +    @Override
    +    public final void toSQL(RenderContext context) {
    +        for (int i = 0; i < queries.size(); i++) {
    +            if (i != 0) {
    +                context.formatSeparator()
    +                       .keyword(operator.toSQL(context.getDialect()))
    +                       .formatSeparator();
    +            }
    +
    +            wrappingParenthesis(context, "(");
    +            context.sql(queries.get(i));
    +            wrappingParenthesis(context, ")");
    +        }
    +    }
    +
    +    private final void wrappingParenthesis(RenderContext context, String parenthesis) {
    +        switch (context.getDialect()) {
    +            // Sybase ASE, SQLite and DERBY have some syntax issues with unions.
    +            // Check out https://issues.apache.org/jira/browse/DERBY-2374
    +            case SQLITE:
    +            case DERBY:
    +            case ASE:
    +
    +            // [#288] MySQL has a very special way of dealing with UNION's
    +            // So include it as well
    +            case MYSQL:
    +                return;
    +        }
    +
    +        if (")".equals(parenthesis)) {
    +            context.formatIndentEnd()
    +                   .formatNewLine();
    +        }
    +
    +        context.sql(parenthesis);
    +
    +        if ("(".equals(parenthesis)) {
    +            context.formatIndentStart()
    +                   .formatNewLine();
    +        }
    +    }
    +
    +    @Override
    +    public final void bind(BindContext context) {
    +        context.bind(queries);
    +    }
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/impl/UniqueKeyImpl.java b/jOOQ/src/main/java/org/jooq/impl/UniqueKeyImpl.java
    new file mode 100644
    index 00000000000..c80de4136ac
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/impl/UniqueKeyImpl.java
    @@ -0,0 +1,70 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq.impl;
    +
    +import java.util.ArrayList;
    +import java.util.Collections;
    +import java.util.List;
    +
    +import org.jooq.ForeignKey;
    +import org.jooq.Record;
    +import org.jooq.Table;
    +import org.jooq.TableField;
    +import org.jooq.UniqueKey;
    +
    +/**
    + * @author Lukas Eder
    + */
    +class UniqueKeyImpl<R extends Record> extends AbstractKey<R> implements UniqueKey<R> {
    +
    +    /**
    +     * Generated UID
    +     */
    +    private static final long   serialVersionUID = 162853300137140844L;
    +
    +    final List<ForeignKey<?, R>> references;
    +
    +    UniqueKeyImpl(Table<R> table, TableField<R, ?>... fields) {
    +        super(table, fields);
    +
    +        this.references = new ArrayList<ForeignKey<?, R>>();
    +    }
    +
    +    @Override
    +    public final List<ForeignKey<?, R>> getReferences() {
    +        return Collections.unmodifiableList(references);
    +    }
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/impl/UpdatableRecordImpl.java b/jOOQ/src/main/java/org/jooq/impl/UpdatableRecordImpl.java
    new file mode 100644
    index 00000000000..6e036f5c0f6
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/impl/UpdatableRecordImpl.java
    @@ -0,0 +1,119 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq.impl;
    +
    +import java.util.Collection;
    +
    +import org.jooq.Field;
    +import org.jooq.Record;
    +import org.jooq.UniqueKey;
    +import org.jooq.UpdatableRecord;
    +import org.jooq.UpdatableTable;
    +
    +/**
    + * A record implementation for a record holding a primary key
    + * <p>
    + * This type is for JOOQ INTERNAL USE only. Do not reference directly
    + *
    + * @author Lukas Eder
    + */
    +public class UpdatableRecordImpl<R extends UpdatableRecord<R>> extends TableRecordImpl<R> implements UpdatableRecord<R> {
    +
    +    /**
    +     * Generated UID
    +     */
    +    private static final long serialVersionUID = -1012420583600561579L;
    +
    +    public UpdatableRecordImpl(UpdatableTable<R> table) {
    +        super(table);
    +    }
    +
    +    @Override
    +    public final UpdatableTable<R> getTable() {
    +        return (UpdatableTable<R>) super.getTable();
    +    }
    +
    +    @Override
    +    final UniqueKey<R> getMainKey() {
    +        return getTable().getMainKey();
    +    }
    +
    +    @Override
    +    public final int store() {
    +        return storeUsing(getMainKey().getFieldsArray());
    +    }
    +
    +    @Override
    +    public final int delete() {
    +        return deleteUsing(getMainKey().getFieldsArray());
    +    }
    +
    +    @Override
    +    public final void refresh() {
    +        refreshUsing(getMainKey().getFieldsArray());
    +    }
    +
    +    @Override
    +    Collection<Field<?>> getReturning() {
    +        Collection<Field<?>> result = super.getReturning();
    +        result.addAll(getMainKey().getFields());
    +        return result;
    +    }
    +
    +    @Override
    +    public final R copy() {
    +        R copy = create().newRecord(getTable());
    +
    +        // Copy all fields. This marks them all as isChanged, which is important
    +        for (Field<?> field : getFields()) {
    +            setValue(copy, field);
    +        }
    +
    +        // Remove key values again
    +        for (Field<?> field : getMainKey().getFields()) {
    +            copy.setValue(field, null);
    +        }
    +
    +        return copy;
    +    }
    +
    +    /**
    +     * Extracted method to ensure generic type safety.
    +     */
    +    private final <T> void setValue(Record record, Field<T> field) {
    +        record.setValue(field, getValue(field));
    +    }
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/impl/UpdatableTableImpl.java b/jOOQ/src/main/java/org/jooq/impl/UpdatableTableImpl.java
    new file mode 100644
    index 00000000000..916737e594c
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/impl/UpdatableTableImpl.java
    @@ -0,0 +1,98 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq.impl;
    +
    +import java.util.Collections;
    +import java.util.List;
    +
    +import org.jooq.ForeignKey;
    +import org.jooq.Record;
    +import org.jooq.Schema;
    +import org.jooq.Table;
    +import org.jooq.UniqueKey;
    +import org.jooq.UpdatableTable;
    +
    +/**
    + * A table implementation for a table holding a primary key
    + * <p>
    + * This type is for JOOQ INTERNAL USE only. Do not reference directly
    + *
    + * @author Lukas Eder
    + */
    +public class UpdatableTableImpl<R extends Record> extends TableImpl<R> implements UpdatableTable<R> {
    +
    +    /**
    +     * Generated UID
    +     */
    +    private static final long serialVersionUID = 8214807990871116060L;
    +
    +    public UpdatableTableImpl(String name) {
    +        this(name, null);
    +    }
    +
    +    public UpdatableTableImpl(String name, Schema schema) {
    +        super(name, schema);
    +    }
    +
    +    public UpdatableTableImpl(String name, Schema schema, Table<R> aliased) {
    +        super(name, schema, aliased);
    +    }
    +
    +    /**
    +     * {@inheritDoc}
    +     * <p>
    +     * Subclasses should override this method
    +     */
    +    @Override
    +    public UniqueKey<R> getMainKey() {
    +        return null;
    +    }
    +
    +    /**
    +     * {@inheritDoc}
    +     * <p>
    +     * Subclasses should override this method
    +     */
    +    @Override
    +    public List<UniqueKey<R>> getKeys() {
    +        return Collections.emptyList();
    +    }
    +
    +    @Override
    +    public final <O extends Record> List<ForeignKey<O, R>> getReferencesFrom(Table<O> other) {
    +        return other.getReferencesTo(this);
    +    }
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/impl/UpdateImpl.java b/jOOQ/src/main/java/org/jooq/impl/UpdateImpl.java
    new file mode 100644
    index 00000000000..4c7875e4cef
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/impl/UpdateImpl.java
    @@ -0,0 +1,205 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq.impl;
    +
    +import static org.jooq.impl.Factory.condition;
    +import static org.jooq.impl.Factory.exists;
    +import static org.jooq.impl.Factory.notExists;
    +
    +import java.util.Collection;
    +import java.util.Map;
    +
    +import org.jooq.Condition;
    +import org.jooq.Configuration;
    +import org.jooq.Field;
    +import org.jooq.Operator;
    +import org.jooq.Query;
    +import org.jooq.Record;
    +import org.jooq.Select;
    +import org.jooq.Table;
    +import org.jooq.UpdateConditionStep;
    +import org.jooq.UpdateQuery;
    +import org.jooq.UpdateSetMoreStep;
    +
    +/**
    + * A wrapper for an {@link UpdateQuery}
    + *
    + * @author Lukas Eder
    + */
    +final class UpdateImpl<R extends Record>
    +    extends AbstractDelegatingQueryPart<UpdateQuery<R>>
    +    implements
    +
    +    // Cascading interface implementations for Update behaviour
    +    UpdateSetMoreStep<R>,
    +    UpdateConditionStep<R> {
    +
    +    /**
    +     * Generated UID
    +     */
    +    private static final long    serialVersionUID = -2444876472650065331L;
    +
    +    UpdateImpl(Configuration configuration, Table<R> table) {
    +        super(new UpdateQueryImpl<R>(configuration, table));
    +    }
    +
    +    @Override
    +    public final int execute() {
    +        return getDelegate().execute();
    +    }
    +
    +    @Override
    +    public final Query bind(String param, Object value) {
    +        return getDelegate().bind(param, value);
    +    }
    +
    +    @Override
    +    public final Query bind(int index, Object value) {
    +        return getDelegate().bind(index, value);
    +    }
    +
    +    @Override
    +    public final <T> UpdateImpl<R> set(Field<T> field, T value) {
    +        getDelegate().addValue(field, value);
    +        return this;
    +    }
    +
    +    @Override
    +    public final <T> UpdateImpl<R> set(Field<T> field, Field<T> value) {
    +        getDelegate().addValue(field, value);
    +        return this;
    +    }
    +
    +    @Override
    +    public final UpdateImpl<R> set(Map<? extends Field<?>, ?> map) {
    +        getDelegate().addValues(map);
    +        return this;
    +    }
    +
    +    @Override
    +    public final UpdateImpl<R> where(Condition... conditions) {
    +        getDelegate().addConditions(conditions);
    +        return this;
    +    }
    +
    +    @Override
    +    public final UpdateImpl<R> where(Collection<Condition> conditions) {
    +        getDelegate().addConditions(conditions);
    +        return this;
    +    }
    +
    +    @Override
    +    public final UpdateImpl<R> where(String sql) {
    +        return where(condition(sql));
    +    }
    +
    +    @Override
    +    public final UpdateImpl<R> where(String sql, Object... bindings) {
    +        return where(condition(sql, bindings));
    +    }
    +
    +    @Override
    +    public final UpdateImpl<R> whereExists(Select<?> select) {
    +        return andExists(select);
    +    }
    +
    +    @Override
    +    public final UpdateImpl<R> whereNotExists(Select<?> select) {
    +        return andNotExists(select);
    +    }
    +
    +    @Override
    +    public final UpdateImpl<R> and(Condition condition) {
    +        getDelegate().addConditions(condition);
    +        return this;
    +    }
    +
    +    @Override
    +    public final UpdateImpl<R> and(String sql) {
    +        return and(condition(sql));
    +    }
    +
    +    @Override
    +    public final UpdateImpl<R> and(String sql, Object... bindings) {
    +        return and(condition(sql, bindings));
    +    }
    +
    +    @Override
    +    public final UpdateImpl<R> andNot(Condition condition) {
    +        return and(condition.not());
    +    }
    +
    +    @Override
    +    public final UpdateImpl<R> andExists(Select<?> select) {
    +        return and(exists(select));
    +    }
    +
    +    @Override
    +    public final UpdateImpl<R> andNotExists(Select<?> select) {
    +        return and(notExists(select));
    +    }
    +
    +    @Override
    +    public final UpdateImpl<R> or(Condition condition) {
    +        getDelegate().addConditions(Operator.OR, condition);
    +        return this;
    +    }
    +
    +    @Override
    +    public final UpdateImpl<R> or(String sql) {
    +        return or(condition(sql));
    +    }
    +
    +    @Override
    +    public final UpdateImpl<R> or(String sql, Object... bindings) {
    +        return or(condition(sql, bindings));
    +    }
    +
    +    @Override
    +    public final UpdateImpl<R> orNot(Condition condition) {
    +        return or(condition.not());
    +    }
    +
    +    @Override
    +    public final UpdateImpl<R> orExists(Select<?> select) {
    +        return or(exists(select));
    +    }
    +
    +    @Override
    +    public final UpdateImpl<R> orNotExists(Select<?> select) {
    +        return or(notExists(select));
    +    }
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/impl/UpdateQueryImpl.java b/jOOQ/src/main/java/org/jooq/impl/UpdateQueryImpl.java
    new file mode 100644
    index 00000000000..352126b0460
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/impl/UpdateQueryImpl.java
    @@ -0,0 +1,147 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +
    +package org.jooq.impl;
    +
    +import java.util.Collection;
    +import java.util.List;
    +import java.util.Map;
    +
    +import org.jooq.Attachable;
    +import org.jooq.BindContext;
    +import org.jooq.Condition;
    +import org.jooq.Configuration;
    +import org.jooq.Field;
    +import org.jooq.Operator;
    +import org.jooq.Record;
    +import org.jooq.RenderContext;
    +import org.jooq.Table;
    +import org.jooq.UpdateQuery;
    +
    +/**
    + * @author Lukas Eder
    + */
    +class UpdateQueryImpl<R extends Record> extends AbstractStoreQuery<R> implements UpdateQuery<R> {
    +
    +    private static final long           serialVersionUID = -660460731970074719L;
    +
    +    private final FieldMapForUpdate     updateMap;
    +    private final ConditionProviderImpl condition;
    +
    +    UpdateQueryImpl(Configuration configuration, Table<R> table) {
    +        super(configuration, table);
    +
    +        this.condition = new ConditionProviderImpl();
    +        this.updateMap = new FieldMapForUpdate();
    +    }
    +
    +    @Override
    +    protected final List<Attachable> getAttachables0() {
    +        return getAttachables(updateMap, condition);
    +    }
    +
    +    @Override
    +    protected final FieldMapForUpdate getValues() {
    +        return updateMap;
    +    }
    +
    +    @Override
    +    public final void setRecord(R record) {
    +        for (Field<?> field : record.getFields()) {
    +            if (((AbstractRecord) record).getValue0(field).isChanged()) {
    +                addValue(record, field);
    +            }
    +        }
    +    }
    +
    +    @Override
    +    public final void addValues(Map<? extends Field<?>, ?> map) {
    +        updateMap.set(map);
    +    }
    +
    +    @Override
    +    public final void bind(BindContext context) {
    +        context.bind(getInto()).bind(updateMap).bind(condition);
    +    }
    +
    +    @Override
    +    public final void addConditions(Collection<Condition> conditions) {
    +        condition.addConditions(conditions);
    +    }
    +
    +    @Override
    +    public final void addConditions(Condition... conditions) {
    +        condition.addConditions(conditions);
    +    }
    +
    +    @Override
    +    public final void addConditions(Operator operator, Condition... conditions) {
    +        condition.addConditions(operator, conditions);
    +    }
    +
    +    @Override
    +    public final void addConditions(Operator operator, Collection<Condition> conditions) {
    +        condition.addConditions(operator, conditions);
    +    }
    +
    +    final Condition getWhere() {
    +        return condition.getWhere();
    +    }
    +
    +    @Override
    +    public final void toSQL(RenderContext context) {
    +        context.keyword("update ")
    +               .declareTables(true)
    +               .sql(getInto())
    +               .declareTables(false)
    +               .formatSeparator()
    +               .keyword("set ")
    +               .formatIndentLockStart()
    +               .sql(updateMap)
    +               .formatIndentLockEnd();
    +
    +        if (!(getWhere() instanceof TrueCondition)) {
    +            context.formatSeparator()
    +                   .keyword("where ")
    +                   .sql(getWhere());
    +        }
    +    }
    +
    +    @Override
    +    protected boolean isExecutable() {
    +        return updateMap.size() > 0;
    +    }
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/impl/Util.java b/jOOQ/src/main/java/org/jooq/impl/Util.java
    new file mode 100644
    index 00000000000..2cb607ee39f
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/impl/Util.java
    @@ -0,0 +1,980 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq.impl;
    +
    +import static java.lang.Boolean.FALSE;
    +import static java.lang.Integer.toOctalString;
    +import static org.jooq.impl.Factory.escape;
    +import static org.jooq.impl.Factory.getDataType;
    +import static org.jooq.impl.Factory.nullSafe;
    +import static org.jooq.impl.Factory.val;
    +import static org.jooq.tools.StringUtils.leftPad;
    +
    +import java.lang.reflect.Constructor;
    +import java.lang.reflect.Method;
    +import java.lang.reflect.Modifier;
    +import java.sql.Connection;
    +import java.sql.PreparedStatement;
    +import java.sql.ResultSet;
    +import java.sql.SQLException;
    +import java.sql.Statement;
    +import java.util.ArrayList;
    +import java.util.Collection;
    +import java.util.List;
    +import java.util.Map;
    +import java.util.concurrent.ConcurrentHashMap;
    +
    +import javax.persistence.Column;
    +import javax.persistence.Entity;
    +
    +import org.jooq.ArrayRecord;
    +import org.jooq.Attachable;
    +import org.jooq.AttachableInternal;
    +import org.jooq.Configuration;
    +import org.jooq.Cursor;
    +import org.jooq.DataType;
    +import org.jooq.ExecuteContext;
    +import org.jooq.ExecuteListener;
    +import org.jooq.Field;
    +import org.jooq.FieldProvider;
    +import org.jooq.NamedQueryPart;
    +import org.jooq.Param;
    +import org.jooq.QueryPart;
    +import org.jooq.QueryPartInternal;
    +import org.jooq.Record;
    +import org.jooq.RenderContext;
    +import org.jooq.Schema;
    +import org.jooq.Table;
    +import org.jooq.Type;
    +import org.jooq.exception.DataAccessException;
    +import org.jooq.tools.Convert;
    +import org.jooq.tools.LoggerListener;
    +import org.jooq.tools.StopWatchListener;
    +import org.jooq.tools.StringUtils;
    +
    +/**
    + * General jOOQ utilities
    + *
    + * @author Lukas Eder
    + */
    +final class Util {
    +
    +    /**
    +     * The default escape character for <code>[a] LIKE [b] ESCAPE [...]</code>
    +     * clauses.
    +     */
    +    static final char                          ESCAPE            = '!';
    +
    +    /**
    +     * Indicating whether JPA (<code>javax.persistence</code>) is on the
    +     * classpath.
    +     */
    +    private static Boolean                     isJPAAvailable;
    +
    +    /**
    +     * A cache for {@link ExecuteListener} classes
    +     */
    +    private static final Map<String, Class<?>> EXECUTE_LISTENERS = new ConcurrentHashMap<String, Class<?>>();
    +
    +    /**
    +     * Create a new Oracle-style VARRAY {@link ArrayRecord}
    +     */
    +    static final <R extends ArrayRecord<?>> R newArrayRecord(Class<R> type, Configuration configuration) {
    +        try {
    +            return type.getConstructor(Configuration.class).newInstance(configuration);
    +        }
    +        catch (Exception e) {
    +            throw new IllegalStateException(
    +                "ArrayRecord type does not provide a constructor with signature ArrayRecord(FieldProvider) : " + type
    +                    + ". Exception : " + e.getMessage());
    +
    +        }
    +    }
    +
    +    /**
    +     * Create a new record
    +     */
    +    static final <R extends Record> R newRecord(Class<R> type) {
    +        return newRecord(type, null);
    +    }
    +
    +    /**
    +     * Create a new record
    +     */
    +    static final <R extends Record> R newRecord(Class<R> type, FieldProvider provider) {
    +        return newRecord(type, provider, null);
    +    }
    +
    +    /**
    +     * Create a new record
    +     */
    +    static final <R extends Record> R newRecord(Type<R> type) {
    +        return newRecord(type, null);
    +    }
    +
    +    /**
    +     * Create a new record
    +     */
    +    static final <R extends Record> R newRecord(Type<R> type, Configuration configuration) {
    +        return newRecord(type.getRecordType(), type, configuration);
    +    }
    +
    +    /**
    +     * Create a new record
    +     */
    +    @SuppressWarnings("unchecked")
    +    static final <R extends Record> R newRecord(Class<R> type, FieldProvider provider, Configuration configuration) {
    +        try {
    +            R result;
    +
    +            // An ad-hoc type resulting from a JOIN or arbitrary SELECT
    +            if (type == RecordImpl.class || type == Record.class) {
    +                result = (R) new RecordImpl(provider);
    +            }
    +
    +            // Any generated record
    +            else {
    +                Constructor<R> constructor = type.getDeclaredConstructor();
    +
    +                // [#919] Allow for accessing non-public constructors
    +                if (!constructor.isAccessible()) {
    +                    constructor.setAccessible(true);
    +                }
    +
    +                result = constructor.newInstance();
    +            }
    +
    +            result.attach(configuration);
    +            return result;
    +        }
    +        catch (Exception e) {
    +            throw new IllegalStateException("Could not construct new record", e);
    +        }
    +    }
    +
    +    /**
    +     * [#1005] Convert values from the <code>VALUES</code> clause to appropriate
    +     * values as specified by the <code>INTO</code> clause's column list.
    +     */
    +    static final Object[] convert(List<Field<?>> fields, Object[] values) {
    +        if (values != null) {
    +            Object[] result = new Object[values.length];
    +
    +            for (int i = 0; i < values.length; i++) {
    +
    +                // TODO [#1008] Should fields be cast? Check this with
    +                // appropriate integration tests
    +                if (values[i] instanceof Field<?>) {
    +                    result[i] = values[i];
    +                }
    +                else {
    +                    result[i] = Convert.convert(values[i], fields.get(i).getType());
    +                }
    +            }
    +
    +            return result;
    +        }
    +        else {
    +            return null;
    +        }
    +    }
    +
    +    /**
    +     * Useful conversion method
    +     */
    +    static final Class<?>[] getClasses(Field<?>[] fields) {
    +        return getClasses(getDataTypes(fields));
    +    }
    +
    +    /**
    +     * Useful conversion method
    +     */
    +    static final Class<?>[] getClasses(DataType<?>[] types) {
    +        if (types == null) {
    +            return null;
    +        }
    +
    +        Class<?>[] result = new Class<?>[types.length];
    +
    +        for (int i = 0; i < types.length; i++) {
    +            if (types[i] != null) {
    +                result[i] = types[i].getType();
    +            }
    +            else {
    +                result[i] = Object.class;
    +            }
    +        }
    +
    +        return result;
    +    }
    +
    +    /**
    +     * Useful conversion method
    +     */
    +    static final Class<?>[] getClasses(Object[] values) {
    +        if (values == null) {
    +            return null;
    +        }
    +
    +        Class<?>[] result = new Class<?>[values.length];
    +
    +        for (int i = 0; i < values.length; i++) {
    +            if (values[i] instanceof Field<?>) {
    +                result[i] = ((Field<?>) values[i]).getType();
    +            }
    +            else if (values[i] != null) {
    +                result[i] = values[i].getClass();
    +            }
    +            else {
    +                result[i] = Object.class;
    +            }
    +        }
    +
    +        return result;
    +    }
    +
    +    /**
    +     * Useful conversion method
    +     */
    +    static final DataType<?>[] getDataTypes(Field<?>[] fields) {
    +        if (fields == null) {
    +            return null;
    +        }
    +
    +        DataType<?>[] result = new DataType<?>[fields.length];
    +
    +        for (int i = 0; i < fields.length; i++) {
    +            if (fields[i] != null) {
    +                result[i] = fields[i].getDataType();
    +            }
    +            else {
    +                result[i] = getDataType(Object.class);
    +            }
    +        }
    +
    +        return result;
    +    }
    +
    +    /**
    +     * Useful conversion method
    +     */
    +    static final DataType<?>[] getDataTypes(Class<?>[] types) {
    +        if (types == null) {
    +            return null;
    +        }
    +
    +        DataType<?>[] result = new DataType<?>[types.length];
    +
    +        for (int i = 0; i < types.length; i++) {
    +            if (types[i] != null) {
    +                result[i] = getDataType(types[i]);
    +            }
    +            else {
    +                result[i] = getDataType(Object.class);
    +            }
    +        }
    +
    +        return result;
    +    }
    +
    +    /**
    +     * Useful conversion method
    +     */
    +    static final DataType<?>[] getDataTypes(Object[] values) {
    +        return getDataTypes(getClasses(values));
    +    }
    +
    +    /**
    +     * Create SQL
    +     */
    +    static final void toSQLReference(RenderContext context, String sql, List<Param<?>> bindings) {
    +
    +        // Replace bind variables by their associated bind values
    +        if (context.inline()) {
    +
    +            // [#1031] [#1032] Skip ? inside of string literals, e.g.
    +            // insert into x values ('Hello? Anybody out there?');
    +            int bindIndex = 0;
    +            char[] sqlChars = sql.toCharArray();
    +            boolean stringLiteral = false;
    +
    +            for (int i = 0; i < sqlChars.length; i++) {
    +
    +                // String literal delimiter
    +                if (sqlChars[i] == '\'') {
    +
    +                    // Delimiter is actually an escaping apostrophe
    +                    if (i + 1 < sqlChars.length && sqlChars[i + 1] == '\'') {
    +
    +                        // Skip subsequent character
    +                        context.sql(sqlChars[i++]);
    +                        context.sql(sqlChars[i]);
    +                    }
    +
    +                    else {
    +                        stringLiteral = !stringLiteral;
    +                        context.sql(sqlChars[i]);
    +                    }
    +                }
    +
    +                // Replace bind variables only outside of string literals
    +                else if (sqlChars[i] == '?' && !stringLiteral && bindIndex < bindings.size()) {
    +                    context.sql(bindings.get(bindIndex++));
    +                }
    +
    +                // Any other character
    +                else {
    +                    context.sql(sqlChars[i]);
    +                }
    +            }
    +        }
    +
    +        // If not inlining, just append the plain SQL the way it is
    +        else {
    +            context.sql(sql);
    +        }
    +    }
    +
    +    /**
    +     * Create {@link Param} objects from bind values
    +     */
    +    static final List<Param<?>> bindings(Object... bindings) {
    +        // [#724] When bindings is null, this is probably due to API-misuse
    +        // The user probably meant new Object[] { null }
    +        if (bindings == null) {
    +            return bindings(new Object[] { null });
    +        }
    +        else {
    +            List<Param<?>> result = new ArrayList<Param<?>>();
    +
    +            for (Object binding : bindings) {
    +                Class<?> type = binding != null ? binding.getClass() : Object.class;
    +                result.add(new Val<Object>(binding, Factory.getDataType(type)));
    +            }
    +
    +            return result;
    +        }
    +    }
    +
    +    /**
    +     * Create SQL wrapped in parentheses
    +     *
    +     * @see #toSQLReference(RenderContext, String, List)
    +     */
    +    static final void toSQLReferenceWithParentheses(RenderContext context, String sql, List<Param<?>> bindings) {
    +        context.sql("(");
    +        toSQLReference(context, sql, bindings);
    +        context.sql(")");
    +    }
    +
    +    /**
    +     * Render a list of names of the <code>NamedQueryParts</code> contained in
    +     * this list.
    +     */
    +    static final void toSQLNames(RenderContext context, Collection<? extends NamedQueryPart> list) {
    +        String separator = "";
    +
    +        for (NamedQueryPart part : list) {
    +            context.sql(separator).literal(part.getName());
    +
    +            separator = ", ";
    +        }
    +    }
    +
    +    /**
    +     * Combine a field with an array of fields
    +     */
    +    static final Field<?>[] combine(Field<?> field, Field<?>... fields) {
    +        if (fields == null) {
    +            return new Field[] { field };
    +        }
    +        else {
    +            Field<?>[] result = new Field<?>[fields.length + 1];
    +            result[0] = field;
    +            System.arraycopy(fields, 0, result, 1, fields.length);
    +
    +            return result;
    +        }
    +    }
    +
    +    /**
    +     * Combine a field with an array of fields
    +     */
    +    static final Field<?>[] combine(Field<?> field1, Field<?> field2, Field<?>... fields) {
    +        if (fields == null) {
    +            return new Field[] { field1, field2 };
    +        }
    +        else {
    +            Field<?>[] result = new Field<?>[fields.length + 2];
    +            result[0] = field1;
    +            result[1] = field2;
    +            System.arraycopy(fields, 0, result, 2, fields.length);
    +
    +            return result;
    +        }
    +    }
    +
    +    /**
    +     * Combine a field with an array of fields
    +     */
    +    static final Field<?>[] combine(Field<?> field1, Field<?> field2, Field<?> field3, Field<?>... fields) {
    +        if (fields == null) {
    +            return new Field[] { field1, field2, field3 };
    +        }
    +        else {
    +            Field<?>[] result = new Field<?>[fields.length + 3];
    +            result[0] = field1;
    +            result[1] = field2;
    +            result[2] = field3;
    +            System.arraycopy(fields, 0, result, 3, fields.length);
    +            return result;
    +        }
    +    }
    +
    +    /**
    +     * Translate a {@link SQLException} to a {@link DataAccessException}
    +     */
    +    static final DataAccessException translate(String task, String sql, SQLException e) {
    +        String message = task + "; SQL [" + sql + "]; " + e.getMessage();
    +        return new DataAccessException(message, e);
    +    }
    +
    +    /**
    +     * Safely close a statement
    +     */
    +    static final void safeClose(ExecuteListener listener, ExecuteContext ctx) {
    +        safeClose(ctx.resultSet());
    +        safeClose(ctx.statement());
    +        listener.end(ctx);
    +    }
    +
    +    /**
    +     * Safely close a statement
    +     */
    +    static final void safeClose(Statement statement) {
    +        if (statement != null) {
    +            try {
    +                statement.close();
    +            }
    +            catch (Exception ignore) {}
    +        }
    +    }
    +
    +    /**
    +     * Safely close a result set
    +     */
    +    static final void safeClose(ResultSet resultSet) {
    +        if (resultSet != null) {
    +            try {
    +                resultSet.close();
    +            }
    +            catch (Exception ignore) {}
    +        }
    +    }
    +
    +    /**
    +     * Safely close a cursor
    +     */
    +    static final void safeClose(Cursor<?> cursor) {
    +        if (cursor != null) {
    +            try {
    +                cursor.close();
    +            }
    +            catch (Exception ignore) {}
    +        }
    +    }
    +
    +    /**
    +     * Safely close a result set and / or a statement
    +     */
    +    static final void safeClose(ResultSet resultSet, PreparedStatement statement) {
    +        safeClose(resultSet);
    +        safeClose(statement);
    +    }
    +
    +    /**
    +     * Extract an underlying connection
    +     */
    +    static final Connection getDriverConnection(Configuration configuration) {
    +        if (configuration != null) {
    +            Connection connection = configuration.getConnection();
    +
    +            if (connection != null) {
    +
    +                // If the connection is wrapped by jOOQ, extract the underlying
    +                // connection
    +                if (connection.getClass() == ConnectionProxy.class) {
    +                    connection = ((ConnectionProxy) connection).getDelegate();
    +                }
    +
    +                // [#1157] TODO: If jOOQ's extended tracing / logging feature
    +                // allows for further wrapping a connection, this must be
    +                // treated here...
    +
    +                return connection;
    +            }
    +        }
    +
    +        throw new DataAccessException("Cannot get a JDBC driver connection from configuration: " + configuration);
    +    }
    +
    +    /**
    +     * Check if JPA classes can be loaded. This is only done once per JVM!
    +     */
    +    private static final boolean isJPAAvailable() {
    +        if (isJPAAvailable == null) {
    +            try {
    +                Class.forName(Column.class.getName());
    +                isJPAAvailable = true;
    +            }
    +            catch (Throwable e) {
    +                isJPAAvailable = false;
    +            }
    +        }
    +
    +        return isJPAAvailable;
    +    }
    +
    +    /**
    +     * Check whether <code>type</code> has any {@link Column} annotated members
    +     * or methods
    +     */
    +    static final boolean hasColumnAnnotations(Class<?> type) {
    +        if (!isJPAAvailable()) {
    +            return false;
    +        }
    +
    +        // An @Entity or @Table usually has @Column annotations, too
    +        if (type.getAnnotation(Entity.class) != null ||
    +            type.getAnnotation(javax.persistence.Table.class) != null) {
    +            return true;
    +        }
    +
    +        for (java.lang.reflect.Field member : getInstanceMembers(type)) {
    +            if (member.getAnnotation(Column.class) != null) {
    +                return true;
    +            }
    +        }
    +
    +        for (Method method : getInstanceMethods(type)) {
    +            if (method.getAnnotation(Column.class) != null) {
    +                return true;
    +            }
    +        }
    +
    +        return false;
    +    }
    +
    +    /**
    +     * Get all members annotated with a given column name
    +     */
    +    static final List<java.lang.reflect.Field> getAnnotatedMembers(Class<?> type, String name) {
    +        List<java.lang.reflect.Field> result = new ArrayList<java.lang.reflect.Field>();
    +
    +        for (java.lang.reflect.Field member : getInstanceMembers(type)) {
    +            Column annotation = member.getAnnotation(Column.class);
    +
    +            if (annotation != null) {
    +                if (name.equals(annotation.name())) {
    +                    result.add(member);
    +                }
    +            }
    +        }
    +
    +        return result;
    +    }
    +
    +    /**
    +     * Get all members matching a given column name
    +     */
    +    static final List<java.lang.reflect.Field> getMatchingMembers(Class<?> type, String name) {
    +        List<java.lang.reflect.Field> result = new ArrayList<java.lang.reflect.Field>();
    +
    +        for (java.lang.reflect.Field member : getInstanceMembers(type)) {
    +            if (name.equals(member.getName())) {
    +                result.add(member);
    +            }
    +            else if (StringUtils.toCamelCaseLC(name).equals(member.getName())) {
    +                result.add(member);
    +            }
    +        }
    +
    +        return result;
    +    }
    +
    +    /**
    +     * Get all setter methods annotated with a given column name
    +     */
    +    static final List<Method> getAnnotatedSetters(Class<?> type, String name) {
    +        List<Method> result = new ArrayList<Method>();
    +
    +        for (Method method : getInstanceMethods(type)) {
    +            Column annotation = method.getAnnotation(Column.class);
    +
    +            if (annotation != null && name.equals(annotation.name())) {
    +
    +                // Annotated setter
    +                if (method.getParameterTypes().length == 1) {
    +                    result.add(method);
    +                }
    +
    +                // Annotated getter with matching setter
    +                else if (method.getParameterTypes().length == 0) {
    +                    String m = method.getName();
    +
    +                    if (m.startsWith("get") || m.startsWith("is")) {
    +                        try {
    +                            Method setter = type.getMethod("set" + m.substring(3), method.getReturnType());
    +
    +                            // Setter annotation is more relevant
    +                            if (setter.getAnnotation(Column.class) == null) {
    +                                result.add(setter);
    +                            }
    +                        }
    +                        catch (NoSuchMethodException ignore) {}
    +                    }
    +                }
    +            }
    +        }
    +
    +        return result;
    +    }
    +
    +    /**
    +     * Get the first getter method annotated with a given column name
    +     */
    +    static final Method getAnnotatedGetter(Class<?> type, String name) {
    +        for (Method method : getInstanceMethods(type)) {
    +            Column annotation = method.getAnnotation(Column.class);
    +
    +            if (annotation != null && name.equals(annotation.name())) {
    +
    +                // Annotated getter
    +                if (method.getParameterTypes().length == 0) {
    +                    return method;
    +                }
    +
    +                // Annotated setter with matching getter
    +                else if (method.getParameterTypes().length == 1) {
    +                    String m = method.getName();
    +
    +                    if (m.startsWith("set")) {
    +                        try {
    +                            Method getter = type.getMethod("get" + m.substring(3));
    +
    +                            // Getter annotation is more relevant
    +                            if (getter.getAnnotation(Column.class) == null) {
    +                                return getter;
    +                            }
    +                        }
    +                        catch (NoSuchMethodException ignore) {}
    +
    +                        try {
    +                            Method getter = type.getMethod("is" + m.substring(3));
    +
    +                            // Getter annotation is more relevant
    +                            if (getter.getAnnotation(Column.class) == null) {
    +                                return getter;
    +                            }
    +                        }
    +                        catch (NoSuchMethodException ignore) {}
    +                    }
    +                }
    +            }
    +        }
    +
    +        return null;
    +    }
    +
    +    /**
    +     * Get all setter methods matching a given column name
    +     */
    +    static final List<Method> getMatchingSetters(Class<?> type, String name) {
    +        List<Method> result = new ArrayList<Method>();
    +
    +        for (Method method : getInstanceMethods(type)) {
    +            if (method.getParameterTypes().length == 1) {
    +                if (name.equals(method.getName())) {
    +                    result.add(method);
    +                }
    +                else if (StringUtils.toCamelCaseLC(name).equals(method.getName())) {
    +                    result.add(method);
    +                }
    +                else if (("set" + name).equals(method.getName())) {
    +                    result.add(method);
    +                }
    +                else if (("set" + StringUtils.toCamelCase(name)).equals(method.getName())) {
    +                    result.add(method);
    +                }
    +            }
    +        }
    +
    +        return result;
    +    }
    +
    +
    +    /**
    +     * Get the first getter method matching a given column name
    +     */
    +    static final Method getMatchingGetter(Class<?> type, String name) {
    +        for (Method method : getInstanceMethods(type)) {
    +            if (method.getParameterTypes().length == 0) {
    +                if (name.equals(method.getName())) {
    +                    return method;
    +                }
    +                else if (StringUtils.toCamelCaseLC(name).equals(method.getName())) {
    +                    return method;
    +                }
    +                else if (("get" + name).equals(method.getName())) {
    +                    return method;
    +                }
    +                else if (("get" + StringUtils.toCamelCase(name)).equals(method.getName())) {
    +                    return method;
    +                }
    +                else if (("is" + name).equals(method.getName())) {
    +                    return method;
    +                }
    +                else if (("is" + StringUtils.toCamelCase(name)).equals(method.getName())) {
    +                    return method;
    +                }
    +            }
    +        }
    +
    +        return null;
    +    }
    +
    +    private static final List<Method> getInstanceMethods(Class<?> type) {
    +        List<Method> result = new ArrayList<Method>();
    +
    +        for (Method method : type.getMethods()) {
    +            if ((method.getModifiers() & Modifier.STATIC) == 0) {
    +                result.add(method);
    +            }
    +        }
    +
    +        return result;
    +    }
    +
    +    private static final List<java.lang.reflect.Field> getInstanceMembers(Class<?> type) {
    +        List<java.lang.reflect.Field> result = new ArrayList<java.lang.reflect.Field>();
    +
    +        for (java.lang.reflect.Field field : type.getFields()) {
    +            if ((field.getModifiers() & Modifier.STATIC) == 0) {
    +                result.add(field);
    +            }
    +        }
    +
    +        return result;
    +    }
    +
    +    /**
    +     * Type-safely copy a value from one record to another
    +     */
    +    static final <T> void setValue(Record target, Field<T> targetField, Record source, Field<?> sourceField) {
    +        setValue(target, targetField, source.getValue(sourceField));
    +    }
    +
    +    /**
    +     * Type-safely set a value to a record
    +     */
    +    static final <T> void setValue(Record target, Field<T> targetField, Object value) {
    +        target.setValue(targetField, targetField.getDataType().convert(value));
    +    }
    +
    +    /**
    +     * Map a {@link Schema} according to the configured {@link org.jooq.SchemaMapping}
    +     */
    +    @SuppressWarnings("deprecation")
    +    static final Schema getMappedSchema(Configuration configuration, Schema schema) {
    +        if (configuration.getSchemaMapping() != null) {
    +            return configuration.getSchemaMapping().map(schema);
    +        }
    +        else {
    +            return schema;
    +        }
    +    }
    +
    +    /**
    +     * Map a {@link Table} according to the configured {@link org.jooq.SchemaMapping}
    +     */
    +    @SuppressWarnings("deprecation")
    +    static final Table<?> getMappedTable(Configuration configuration, Table<?> table) {
    +        if (configuration.getSchemaMapping() != null) {
    +            return configuration.getSchemaMapping().map(table);
    +        }
    +        else {
    +            return table;
    +        }
    +    }
    +
    +    static final List<ExecuteListener> getListeners(Configuration configuration) {
    +        List<ExecuteListener> result = new ArrayList<ExecuteListener>();
    +
    +        if (!FALSE.equals(configuration.getSettings().isExecuteLogging())) {
    +            result.add(new StopWatchListener());
    +            result.add(new LoggerListener());
    +        }
    +
    +        for (String listener : configuration.getSettings().getExecuteListeners()) {
    +            result.add(getListener(listener));
    +        }
    +
    +        return result;
    +    }
    +
    +    private static final ExecuteListener getListener(String name) {
    +        try {
    +            Class<?> type = EXECUTE_LISTENERS.get(name);
    +
    +            if (type == null) {
    +                type = Class.forName(name);
    +                EXECUTE_LISTENERS.put(name, type);
    +            }
    +
    +            return (ExecuteListener) type.newInstance();
    +        }
    +        catch (Exception e) {
    +            throw new RuntimeException(e);
    +        }
    +    }
    +
    +    /**
    +     * Wrap a piece of SQL code in parentheses, if not wrapped already
    +     */
    +    static final String wrapInParentheses(String sql) {
    +        if (sql.startsWith("(")) {
    +            return sql;
    +        }
    +        else {
    +            return "(" + sql + ")";
    +        }
    +    }
    +
    +    /**
    +     * Expose the internal API of an {@link Attachable}
    +     */
    +    static final AttachableInternal internal(Attachable part) {
    +        return part.internalAPI(AttachableInternal.class);
    +    }
    +
    +    /**
    +     * Expose the internal API of a {@link QueryPart}
    +     */
    +    static final QueryPartInternal internal(QueryPart part) {
    +        return part.internalAPI(QueryPartInternal.class);
    +    }
    +
    +    /**
    +     * Return a non-negative hash code for a {@link QueryPart}, taking into
    +     * account FindBugs' <code>RV_ABSOLUTE_VALUE_OF_HASHCODE</code> pattern
    +     */
    +    static final int hash(Object object) {
    +        return 0x7FFFFFF & object.hashCode();
    +    }
    +
    +    // ------------------------------------------------------------------------
    +    // XXX This section is taken from the H2 Database
    +    // ------------------------------------------------------------------------
    +
    +    private static final char[] HEX = "0123456789abcdef".toCharArray();
    +
    +    /**
    +     * Convert a byte array to a hex encoded string.
    +     *
    +     * @param value the byte array
    +     * @return the hex encoded string
    +     */
    +    static final String convertBytesToHex(byte[] value) {
    +        return convertBytesToHex(value, value.length);
    +    }
    +
    +    /**
    +     * Convert a byte array to a hex encoded string.
    +     *
    +     * @param value the byte array
    +     * @param len the number of bytes to encode
    +     * @return the hex encoded string
    +     */
    +    static final String convertBytesToHex(byte[] value, int len) {
    +        char[] buff = new char[len + len];
    +        char[] hex = HEX;
    +        for (int i = 0; i < len; i++) {
    +            int c = value[i] & 0xff;
    +            buff[i + i] = hex[c >> 4];
    +            buff[i + i + 1] = hex[c & 0xf];
    +        }
    +        return new String(buff);
    +    }
    +
    +    /**
    +     * Postgres uses octals instead of hex encoding
    +     */
    +    static final String convertBytesToPostgresOctal(byte[] binary) {
    +        StringBuilder sb = new StringBuilder();
    +
    +        for (byte b : binary) {
    +            sb.append("\\\\");
    +            sb.append(leftPad(toOctalString(b), 3, '0'));
    +        }
    +
    +        return sb.toString();
    +    }
    +
    +    /**
    +     * Utility method to escape strings or "toString" other objects
    +     */
    +    static final Field<String> escapeForLike(Object value) {
    +        if (value != null && value.getClass() == String.class) {
    +            return val(escape("" + value, ESCAPE));
    +        }
    +        else {
    +            return val("" + value);
    +        }
    +    }
    +
    +    /**
    +     * Utility method to escape string fields, or cast other fields
    +     */
    +    @SuppressWarnings("unchecked")
    +    static final Field<String> escapeForLike(Field<?> field) {
    +        if (nullSafe(field).getDataType().isString()) {
    +            return escape((Field<String>) field, ESCAPE);
    +        }
    +        else {
    +            return field.cast(String.class);
    +        }
    +    }
    +}
    \ No newline at end of file
    diff --git a/jOOQ/src/main/java/org/jooq/impl/Val.java b/jOOQ/src/main/java/org/jooq/impl/Val.java
    new file mode 100644
    index 00000000000..00c5768001f
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/impl/Val.java
    @@ -0,0 +1,544 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq.impl;
    +
    +import static java.util.Arrays.asList;
    +import static org.jooq.SQLDialect.ASE;
    +import static org.jooq.SQLDialect.CUBRID;
    +import static org.jooq.SQLDialect.DB2;
    +import static org.jooq.SQLDialect.DERBY;
    +import static org.jooq.SQLDialect.H2;
    +import static org.jooq.SQLDialect.HSQLDB;
    +import static org.jooq.SQLDialect.INGRES;
    +import static org.jooq.SQLDialect.MYSQL;
    +import static org.jooq.SQLDialect.ORACLE;
    +import static org.jooq.SQLDialect.POSTGRES;
    +import static org.jooq.SQLDialect.SQLITE;
    +import static org.jooq.SQLDialect.SQLSERVER;
    +import static org.jooq.SQLDialect.SYBASE;
    +import static org.jooq.impl.Factory.field;
    +
    +import java.math.BigDecimal;
    +import java.sql.Date;
    +import java.sql.Time;
    +import java.sql.Timestamp;
    +import java.util.Arrays;
    +import java.util.Collections;
    +import java.util.List;
    +
    +import org.jooq.ArrayRecord;
    +import org.jooq.Attachable;
    +import org.jooq.BindContext;
    +import org.jooq.Converter;
    +import org.jooq.DataType;
    +import org.jooq.EnumType;
    +import org.jooq.MasterDataType;
    +import org.jooq.Param;
    +import org.jooq.RenderContext;
    +import org.jooq.SQLDialect;
    +import org.jooq.UDTRecord;
    +import org.jooq.tools.StringUtils;
    +import org.jooq.types.Interval;
    +
    +/**
    + * @author Lukas Eder
    + */
    +class Val<T> extends AbstractField<T> implements Param<T>, BindingProvider {
    +
    +    private static final long serialVersionUID = 6807729087019209084L;
    +    private final String      paramName;
    +    private T                 value;
    +
    +    Val(T value, DataType<T> type) {
    +        this(value, type, null);
    +    }
    +
    +    Val(T value, DataType<T> type, String paramName) {
    +        super(name(value, paramName), type);
    +
    +        this.paramName = paramName;
    +        this.value = value;
    +    }
    +
    +    private static String name(Object value, String paramName) {
    +        return paramName == null ? String.valueOf(value) : paramName;
    +    }
    +
    +    // ------------------------------------------------------------------------
    +    // Field API
    +    // ------------------------------------------------------------------------
    +
    +    @Override
    +    public final List<Attachable> getAttachables() {
    +        return Collections.emptyList();
    +    }
    +
    +    @Override
    +    public final void toSQL(RenderContext context) {
    +
    +        // Casting can be enforced or prevented
    +        switch (context.castMode()) {
    +            case NEVER:
    +                toSQL(context, getValue(), getType());
    +                return;
    +
    +            case ALWAYS:
    +                toSQLCast(context);
    +                return;
    +
    +            case SOME:
    +
    +                // This dialect must cast
    +                if (context.cast()) {
    +                    toSQLCast(context);
    +                }
    +
    +                // In some cases, we should still cast
    +                else if (shouldCast(context)) {
    +                    toSQLCast(context);
    +                }
    +                else {
    +                    toSQL(context, getValue(), getType());
    +                }
    +
    +                return;
    +        }
    +
    +        // See if we "should" cast, to stay on the safe side
    +        if (shouldCast(context)) {
    +            toSQLCast(context);
    +        }
    +
    +        // Most RDBMS can infer types for bind values
    +        else {
    +            toSQL(context, getValue(), getType());
    +        }
    +    }
    +
    +    private boolean shouldCast(RenderContext context) {
    +
    +        // In default mode, casting is only done when parameters are NOT inlined
    +        if (!context.inline()) {
    +
    +            // Generated enums should not be cast...
    +            if (!(getValue() instanceof EnumType) && !(getValue() instanceof MasterDataType)) {
    +                switch (context.getDialect()) {
    +
    +                    // These dialects can hardly detect the type of a bound constant.
    +                    case DB2:
    +                    case DERBY:
    +
    +                    // These dialects have some trouble, when they mostly get it right.
    +                    case H2:
    +                    case HSQLDB:
    +
    +                    // [#722] TODO This is probably not entirely right.
    +                    case INGRES:
    +
    +                    // [#1261] There are only a few corner-cases, where this is
    +                    // really needed. Check back on related CUBRID bugs
    +                    case CUBRID:
    +
    +                    // [#1029] Postgres and [#632] Sybase need explicit casting
    +                    // in very rare cases.
    +                    case POSTGRES:
    +                    case SYBASE: {
    +                        return true;
    +                    }
    +                }
    +            }
    +        }
    +
    +        // [#566] JDBC doesn't explicitly support interval data types. To be on
    +        // the safe side, always cast these types in those dialects that support
    +        // them
    +        if (getDataType().isInterval()) {
    +            switch (context.getDialect()) {
    +                case ORACLE:
    +                case POSTGRES:
    +                    return true;
    +            }
    +        }
    +
    +        return false;
    +    }
    +
    +    /**
    +     * Render the bind variable including a cast, if necessary
    +     */
    +    private void toSQLCast(RenderContext context) {
    +        SQLDataType<T> type = getDataType(context).getSQLDataType();
    +
    +        // [#822] Some RDBMS need precision / scale information on BigDecimals
    +        if (getValue() != null && getType() == BigDecimal.class && asList(CUBRID, DB2, DERBY, HSQLDB).contains(context.getDialect())) {
    +
    +            // Add precision / scale on BigDecimals
    +            int scale = ((BigDecimal) getValue()).scale();
    +            int precision = scale + ((BigDecimal) getValue()).precision();
    +
    +            toSQLCast(context, getDataType(context), precision, scale);
    +        }
    +
    +        // [#1028] Most databases don't know an OTHER type (except H2, HSQLDB).
    +        else if (SQLDataType.OTHER == type) {
    +
    +            // If the bind value is set, it can be used to derive the cast type
    +            if (value != null) {
    +                toSQLCast(context, FieldTypeHelper.getDataType(context.getDialect(), value.getClass()), 0, 0);
    +            }
    +
    +            // [#632] [#722] Current integration tests show that Ingres and
    +            // Sybase can do without casting in most cases.
    +            else if (asList(INGRES, SYBASE).contains(context.getDialect())) {
    +                context.sql(getBindVariable(context));
    +            }
    +
    +            // Derby and DB2 must have a type associated with NULL. Use VARCHAR
    +            // as a workaround. That's probably not correct in all cases, though
    +            else {
    +                toSQLCast(context, FieldTypeHelper.getDataType(context.getDialect(), String.class), 0, 0);
    +            }
    +        }
    +
    +        // [#1029] Postgres generally doesn't need the casting. Only in the
    +        // above case where the type is OTHER
    +        // [#1125] Also with temporal data types, casting is needed some times
    +        // [#1130] TODO type can be null for ARRAY types, etc.
    +        else if (context.getDialect() == POSTGRES && (type == null || !type.isTemporal())) {
    +            toSQL(context, getValue(), getType());
    +        }
    +
    +        // In all other cases, the bind variable can be cast normally
    +        else {
    +            toSQLCast(context, getDataType(context), 0, 0);
    +        }
    +    }
    +
    +    private void toSQLCast(RenderContext context, DataType<?> type, int precision, int scale) {
    +        context.sql("cast(");
    +        toSQL(context, getValue(), getType());
    +        context.sql(" as ")
    +               .sql(type.getCastTypeName(context, precision, scale))
    +               .sql(")");
    +    }
    +
    +    /**
    +     * Get a bind variable, depending on value of
    +     * {@link RenderContext#namedParams()}
    +     */
    +    private final String getBindVariable(RenderContext context) {
    +        if (context.namedParams()) {
    +            int index = context.nextIndex();
    +
    +            if (StringUtils.isBlank(getParamName())) {
    +                return ":" + index;
    +            }
    +            else {
    +                return ":" + getName();
    +            }
    +        }
    +        else {
    +            return "?";
    +        }
    +    }
    +
    +    /**
    +     * Inlining abstraction
    +     */
    +    private void toSQL(RenderContext context, Object val) {
    +        if (val == null) {
    +            toSQL(context, val, Object.class);
    +        }
    +        else {
    +            toSQL(context, val, val.getClass());
    +        }
    +    }
    +
    +    /**
    +     * Inlining abstraction
    +     */
    +    @SuppressWarnings({ "unchecked", "rawtypes" })
    +    private void toSQL(RenderContext context, Object val, Class<?> type) {
    +        SQLDialect dialect = context.getDialect();
    +
    +        // [#650] Check first, if we have a converter for the supplied type
    +        Converter<?, ?> converter = DataTypes.converter(type);
    +        if (converter != null) {
    +            val = ((Converter) converter).to(val);
    +            type = converter.fromType();
    +        }
    +
    +        if (context.inline()) {
    +            if (val == null) {
    +                context.keyword("null");
    +            }
    +            else if (type == Boolean.class) {
    +
    +                // [#1153] Some dialects don't support boolean literals
    +                // TRUE and FALSE
    +                if (asList(ASE, DB2, ORACLE, SQLSERVER, SQLITE, SYBASE).contains(dialect)) {
    +                    context.sql(((Boolean) val) ? "1" : "0");
    +                }
    +                else {
    +                    context.keyword(val.toString());
    +                }
    +            }
    +
    +            // [#1154] Binary data cannot always be inlined
    +            else if (type == byte[].class) {
    +                byte[] binary = (byte[]) val;
    +
    +                if (asList(ASE, SQLSERVER, SYBASE).contains(dialect)) {
    +                    context.sql("0x")
    +                           .sql(Util.convertBytesToHex(binary));
    +                }
    +                else if (dialect == DB2) {
    +                    context.keyword("blob")
    +                           .sql("(X'")
    +                           .sql(Util.convertBytesToHex(binary))
    +                           .sql("')");
    +                }
    +                else if (asList(DERBY, H2, HSQLDB, INGRES, MYSQL, SQLITE).contains(dialect)) {
    +                    context.sql("X'")
    +                           .sql(Util.convertBytesToHex(binary))
    +                           .sql("'");
    +                }
    +                else if (asList(ORACLE).contains(dialect)) {
    +                    context.keyword("hextoraw('")
    +                           .sql(Util.convertBytesToHex(binary))
    +                           .sql("')");
    +                }
    +                else if (dialect == POSTGRES) {
    +                    context.sql("E'")
    +                           .sql(Util.convertBytesToPostgresOctal(binary))
    +                           .keyword("'::bytea");
    +                }
    +
    +                // This default behaviour is used in debug logging for dialects
    +                // that do not support inlining binary data
    +                else {
    +                    context.sql("X'")
    +                           .sql(Util.convertBytesToHex(binary))
    +                           .sql("'");
    +                }
    +            }
    +
    +            // Interval extends Number, so let Interval come first!
    +            else if (Interval.class.isAssignableFrom(type)) {
    +                context.sql("'")
    +                       .sql(val.toString())
    +                       .sql("'");
    +            }
    +
    +            else if (Number.class.isAssignableFrom(type)) {
    +                context.sql(val.toString());
    +            }
    +
    +            // [#1156] Date/Time data types should be inlined using JDBC
    +            // escape syntax
    +            else if (type == Date.class) {
    +
    +                // Sybase ASE needs explicit casting to DATE
    +                if (dialect == ASE) {
    +                    context.sql(field("{d '" + val + "'}").cast(Date.class));
    +                }
    +
    +                // The SQLite JDBC driver does not implement the escape syntax
    +                else if (dialect == SQLITE) {
    +                    context.sql("'").sql(val.toString()).sql("'");
    +                }
    +
    +                // These dialects implement SQL standard date literals
    +                else if (dialect == CUBRID) {
    +                    context.keyword("date '").sql(val.toString()).sql("'");
    +                }
    +
    +                // Fallback: Apply JDBC escape syntax
    +                else {
    +                    context.keyword("{d '").sql(val.toString()).sql("'}");
    +                }
    +            }
    +            else if (type == Timestamp.class) {
    +
    +                // Sybase ASE needs explicit casting to DATETIME
    +                if (dialect == ASE) {
    +                    context.sql(field("{ts '" + val + "'}").cast(Timestamp.class));
    +                }
    +
    +                // The SQLite JDBC driver does not implement the escape syntax
    +                else if (dialect == SQLITE) {
    +                    context.sql("'").sql(val.toString()).sql("'");
    +                }
    +
    +                // CUBRID timestamps have no fractional seconds
    +                else if (dialect == CUBRID) {
    +                    context.keyword("datetime '").sql(val.toString()).sql("'");
    +                }
    +
    +                // Fallback: Apply JDBC escape syntax
    +                else {
    +                    context.keyword("{ts '").sql(val.toString()).sql("'}");
    +                }
    +            }
    +            else if (type == Time.class) {
    +
    +                // The SQLite JDBC driver does not implement the escape syntax
    +                if (dialect == SQLITE) {
    +                    context.sql("'").sql(val.toString()).sql("'");
    +                }
    +
    +                // CUBRID timestamps have no fractional seconds
    +                else if (dialect == CUBRID) {
    +                    context.keyword("time '").sql(val.toString()).sql("'");
    +                }
    +
    +                // Fallback: Apply JDBC escape syntax
    +                else {
    +                    context.keyword("{t '").sql(val.toString()).sql("'}");
    +                }
    +            }
    +            else if (type.isArray()) {
    +
    +                // H2 renders arrays as tuples
    +                if (dialect == H2) {
    +                    context.sql(Arrays.toString((Object[]) val).replaceAll("\\[([^]]*)\\]", "($1)"));
    +                }
    +
    +                // By default, render HSQLDB / POSTGRES syntax
    +                else {
    +                    context.keyword("ARRAY")
    +                           .sql(Arrays.toString((Object[]) val));
    +                }
    +            }
    +            else if (ArrayRecord.class.isAssignableFrom(type)) {
    +                context.sql(val.toString());
    +            }
    +            else if (EnumType.class.isAssignableFrom(type)) {
    +                toSQL(context, ((EnumType) val).getLiteral());
    +            }
    +            else if (MasterDataType.class.isAssignableFrom(type)) {
    +                toSQL(context, ((MasterDataType<?>) val).getPrimaryKey());
    +            }
    +            else if (UDTRecord.class.isAssignableFrom(type)) {
    +                context.sql("[UDT]");
    +            }
    +
    +            // Known fall-through types:
    +            // - Blob, Clob (both not supported by jOOQ)
    +            // - String
    +            else {
    +                context.sql("'")
    +                       .sql(val.toString().replace("'", "''"))
    +                       .sql("'");
    +            }
    +        }
    +
    +        // In Postgres, some additional casting must be done in some cases...
    +        // TODO: Improve this implementation with [#215] (cast support)
    +        else if (dialect == SQLDialect.POSTGRES) {
    +
    +            // Postgres needs explicit casting for array types
    +            if (type.isArray() && byte[].class != type) {
    +                context.sql(getBindVariable(context));
    +                context.sql("::");
    +                context.keyword(FieldTypeHelper.getDataType(dialect, type).getCastTypeName(context));
    +            }
    +
    +            // ... and also for enum types
    +            else if (EnumType.class.isAssignableFrom(type)) {
    +                context.sql(getBindVariable(context));
    +
    +                // [#968] Don't cast "synthetic" enum types (note, val can be null!)
    +                String name = ((EnumType) type.getEnumConstants()[0]).getName();
    +                if (!StringUtils.isBlank(name)) {
    +                    context.sql("::");
    +                    context.literal(name);
    +                }
    +            }
    +
    +            else {
    +                context.sql(getBindVariable(context));
    +            }
    +        }
    +
    +        else {
    +            context.sql(getBindVariable(context));
    +        }
    +    }
    +
    +    @Override
    +    public final void bind(BindContext context) {
    +        context.bindValue(getValue(), getType());
    +    }
    +
    +    @Override
    +    public final boolean isNullLiteral() {
    +        return getValue() == null;
    +    }
    +
    +    // ------------------------------------------------------------------------
    +    // Param API
    +    // ------------------------------------------------------------------------
    +
    +    @Override
    +    public final void setValue(T value) {
    +        setConverted(value);
    +    }
    +
    +    @Override
    +    public final void setConverted(Object value) {
    +        this.value = getDataType().convert(value);
    +    }
    +
    +    @Override
    +    public final T getValue() {
    +        return value;
    +    }
    +
    +    @Override
    +    public final String getParamName() {
    +        return paramName;
    +    }
    +
    +    // ------------------------------------------------------------------------
    +    // BindingProvider API
    +    // ------------------------------------------------------------------------
    +
    +    @Override
    +    public final List<Param<?>> getBindings() {
    +        return Arrays.<Param<?>>asList(this);
    +    }
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/impl/Value.java b/jOOQ/src/main/java/org/jooq/impl/Value.java
    new file mode 100644
    index 00000000000..821140204bb
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/impl/Value.java
    @@ -0,0 +1,135 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq.impl;
    +
    +import java.io.Serializable;
    +
    +class Value<T> implements Serializable {
    +
    +    /**
    +     * Generated UID
    +     */
    +    private static final long serialVersionUID = -9065797545428164533L;
    +    private T                 value;
    +    private boolean           isChanged;
    +
    +    Value(T value) {
    +        this.value = value;
    +    }
    +
    +    T getValue() {
    +        return value;
    +    }
    +
    +    T getValue(T defaultValue) {
    +        return value != null ? value : defaultValue;
    +    }
    +
    +    void setValue(T val) {
    +
    +        // The flag is always set to true:
    +        // [#945] To avoid bugs resulting from setting the same value twice
    +        // [#948] To allow for controlling the number of hard-parses
    +        //        To allow for explicitly overriding default values
    +        setValue(val, false);
    +    }
    +
    +    void setValue(T val, boolean primaryKey) {
    +
    +        // [#948] Force setting of val in most cases, to allow for controlling
    +        // the number of necessary hard-parses, and to allow for explicitly
    +        // overriding default values with null
    +        if (!primaryKey) {
    +            isChanged = true;
    +        }
    +
    +        // [#979] Avoid modifying isChanged on unchanged primary key values
    +        else {
    +
    +            // [#945] Be sure that isChanged is never reset to false
    +            if (value == null) {
    +                isChanged |= val != null;
    +            }
    +            else {
    +                isChanged |= !value.equals(val);
    +            }
    +        }
    +
    +        value = val;
    +    }
    +
    +    boolean isChanged() {
    +        return isChanged;
    +    }
    +
    +    void setChanged(boolean isChanged) {
    +        this.isChanged = isChanged;
    +    }
    +
    +    @Override
    +    public boolean equals(Object obj) {
    +        if (obj instanceof Value<?>) {
    +            Value<?> other = (Value<?>) obj;
    +
    +            if (value == null) {
    +                return other.getValue() == null;
    +            }
    +
    +            return value.equals(other.getValue());
    +        }
    +
    +        return false;
    +    }
    +
    +    @Override
    +    public int hashCode() {
    +        if (value == null) {
    +            return 0;
    +        }
    +
    +        return value.hashCode();
    +    }
    +
    +    @Override
    +    public String toString() {
    +        if (isChanged) {
    +            return "*" + value;
    +        }
    +        else {
    +            return "" + value;
    +        }
    +    }
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/impl/WrappedList.java b/jOOQ/src/main/java/org/jooq/impl/WrappedList.java
    new file mode 100644
    index 00000000000..b662c979668
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/impl/WrappedList.java
    @@ -0,0 +1,77 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq.impl;
    +
    +import java.util.List;
    +
    +import org.jooq.Attachable;
    +import org.jooq.BindContext;
    +import org.jooq.QueryPart;
    +import org.jooq.RenderContext;
    +
    +/**
    + * @author Lukas Eder
    + */
    +class WrappedList extends AbstractQueryPart {
    +
    +    /**
    +     * Generated UID
    +     */
    +    private static final long      serialVersionUID = -6722573826107165561L;
    +
    +    private final QueryPartList<?> wrapped;
    +
    +    WrappedList(QueryPartList<?> wrapped) {
    +        this.wrapped = wrapped;
    +    }
    +
    +    @Override
    +    public final void toSQL(RenderContext context) {
    +        context.sql("(")
    +               .sql(wrapped)
    +               .sql(")");
    +    }
    +
    +    @Override
    +    public final void bind(BindContext context) {
    +        context.bind((QueryPart) wrapped);
    +    }
    +
    +    @Override
    +    public final List<Attachable> getAttachables() {
    +        return getAttachables(wrapped);
    +    }
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/tools/Convert.java b/jOOQ/src/main/java/org/jooq/tools/Convert.java
    new file mode 100644
    index 00000000000..a8f0a8b72b0
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/tools/Convert.java
    @@ -0,0 +1,509 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq.tools;
    +
    +import static org.jooq.tools.unsigned.Unsigned.ubyte;
    +import static org.jooq.tools.unsigned.Unsigned.uint;
    +import static org.jooq.tools.unsigned.Unsigned.ulong;
    +import static org.jooq.tools.unsigned.Unsigned.ushort;
    +
    +import java.lang.reflect.Array;
    +import java.math.BigDecimal;
    +import java.math.BigInteger;
    +import java.sql.Date;
    +import java.sql.Time;
    +import java.sql.Timestamp;
    +import java.util.ArrayList;
    +import java.util.Arrays;
    +import java.util.Calendar;
    +import java.util.Collections;
    +import java.util.HashSet;
    +import java.util.List;
    +import java.util.Set;
    +
    +import org.jooq.Converter;
    +import org.jooq.EnumType;
    +import org.jooq.exception.DataTypeException;
    +import org.jooq.tools.unsigned.UByte;
    +import org.jooq.tools.unsigned.UInteger;
    +import org.jooq.tools.unsigned.ULong;
    +import org.jooq.tools.unsigned.UShort;
    +
    +/**
    + * Utility methods for type conversions
    + * <p>
    + * This class provides less type-safety than the general jOOQ API methods. For
    + * instance, it accepts arbitrary {@link Converter} objects in methods like
    + * {@link #convert(List, Converter)} and {@link #convert(Object, Class)}, trying
    + * to retrofit the <code>Object</code> argument to the type provided in
    + * {@link Converter#fromType()} before performing the actual conversion.
    + *
    + * @author Lukas Eder
    + */
    +public final class Convert {
    +
    +    public static final Set<String> TRUE_VALUES;
    +    public static final Set<String> FALSE_VALUES;
    +
    +    static {
    +        Set<String> trueValues = new HashSet<String>();
    +        Set<String> falseValues = new HashSet<String>();
    +
    +        trueValues.add("1");
    +        trueValues.add("y");
    +        trueValues.add("Y");
    +        trueValues.add("yes");
    +        trueValues.add("YES");
    +        trueValues.add("true");
    +        trueValues.add("TRUE");
    +        trueValues.add("on");
    +        trueValues.add("ON");
    +        trueValues.add("enabled");
    +        trueValues.add("ENABLED");
    +
    +        falseValues.add("0");
    +        falseValues.add("n");
    +        falseValues.add("N");
    +        falseValues.add("no");
    +        falseValues.add("NO");
    +        falseValues.add("false");
    +        falseValues.add("FALSE");
    +        falseValues.add("off");
    +        falseValues.add("OFF");
    +        falseValues.add("disabled");
    +        falseValues.add("DISABLED");
    +
    +        TRUE_VALUES = Collections.unmodifiableSet(trueValues);
    +        FALSE_VALUES = Collections.unmodifiableSet(falseValues);
    +    }
    +
    +    /**
    +     * Convert an array into another one using a converter
    +     * <p>
    +     * This uses {@link #convertArray(Object[], Class)} to convert the array to
    +     * an array of {@link Converter#fromType()} first, before converting that
    +     * array again to {@link Converter#toType()}
    +     *
    +     * @param from The array to convert
    +     * @param converter The data type converter
    +     * @return A converted array
    +     * @throws DataTypeException - When the conversion is not possible
    +     */
    +    @SuppressWarnings("unchecked")
    +    public static <U> U[] convertArray(Object[] from, Converter<?, U> converter) throws DataTypeException {
    +        if (from == null) {
    +            return null;
    +        }
    +        else {
    +            Object[] arrayOfT = convertArray(from, converter.fromType());
    +            Object[] arrayOfU = (Object[]) Array.newInstance(converter.toType(), from.length);
    +
    +            for (int i = 0; i < arrayOfT.length; i++) {
    +                arrayOfU[i] = convert(arrayOfT[i], converter);
    +            }
    +
    +            return (U[]) arrayOfU;
    +        }
    +    }
    +
    +    /**
    +     * Convert an array into another one by these rules
    +     * <p>
    +     * <ul>
    +     * <li>If <code>toClass</code> is not an array class, then make it an array
    +     * class first</li>
    +     * <li>If <code>toClass</code> is an array class, then create an instance
    +     * from it, and convert all elements in the <code>from</code> array one by
    +     * one, using {@link #convert(Object, Class)}</li>
    +     * </ul>
    +     *
    +     * @param from The array to convert
    +     * @param toClass The target array type
    +     * @return A converted array
    +     * @throws DataTypeException - When the conversion is not possible
    +     */
    +    @SuppressWarnings("unchecked")
    +    public static Object[] convertArray(Object[] from, Class<?> toClass) throws DataTypeException {
    +        if (from == null) {
    +            return null;
    +        }
    +        else if (!toClass.isArray()) {
    +            return convertArray(from, Array.newInstance(toClass, 0).getClass());
    +        }
    +        else if (toClass == from.getClass()) {
    +            return from;
    +        }
    +        else {
    +            final Class<?> toComponentType = toClass.getComponentType();
    +
    +            if (from.length == 0) {
    +                return Arrays.copyOf(from, from.length, (Class<? extends Object[]>) toClass);
    +            }
    +            else if (from[0] != null && from[0].getClass() == toComponentType) {
    +                return Arrays.copyOf(from, from.length, (Class<? extends Object[]>) toClass);
    +            }
    +            else {
    +                final Object[] result = (Object[]) Array.newInstance(toComponentType, from.length);
    +
    +                for (int i = 0; i < from.length; i++) {
    +                    result[i] = convert(from[i], toComponentType);
    +                }
    +
    +                return result;
    +            }
    +        }
    +    }
    +
    +    /**
    +     * Convert an object to a type.
    +     *
    +     * @param from The source object
    +     * @param converter The data type converter
    +     * @return The target type object
    +     * @throws DataTypeException - When the conversion is not possible
    +     */
    +    public static <U> U convert(Object from, Converter<?, U> converter) throws DataTypeException {
    +        return convert0(from, converter);
    +    }
    +
    +    /**
    +     * Conversion type-safety
    +     */
    +    private static <T, U> U convert0(Object from, Converter<T, U> converter) throws DataTypeException {
    +        ConvertAll<T> all = new ConvertAll<T>(converter.fromType());
    +        return converter.from(all.from(from));
    +    }
    +
    +    /**
    +     * Convert an object to a type. These are the conversion rules:
    +     * <ul>
    +     * <li><code>null</code> is always converted to <code>null</code>,
    +     * regardless of the target type.</li>
    +     * <li>Identity conversion is always possible</li>
    +     * <li>All types can be converted to <code>String</code></li>
    +     * <li>All types can be converted to <code>Object</code></li>
    +     * <li>All <code>Number</code> types can be converted to other
    +     * <code>Number</code> types</li>
    +     * <li>All <code>Number</code> or <code>String</code> types can be converted
    +     * to <code>Boolean</code>. Possible (case-insensitive) values for
    +     * <code>true</code>:
    +     * <ul>
    +     * <li><code>1</code></li>
    +     * <li><code>y</code></li>
    +     * <li><code>yes</code></li>
    +     * <li><code>true</code></li>
    +     * <li><code>on</code></li>
    +     * <li><code>enabled</code></li>
    +     * </ul>
    +     * <p>
    +     * Possible (case-insensitive) values for <code>false</code>:
    +     * <ul>
    +     * <li><code>0</code></li>
    +     * <li><code>n</code></li>
    +     * <li><code>no</code></li>
    +     * <li><code>false</code></li>
    +     * <li><code>off</code></li>
    +     * <li><code>disabled</code></li>
    +     * </ul>
    +     * <p>
    +     * All other values evaluate to <code>null</code></li>
    +     * <li>All <code>Date</code> types can be converted into each other</li>
    +     * <li><code>byte[]</code> can be converted into <code>String</code>, using
    +     * the platform's default charset</li>
    +     * <li><code>Object[]</code> can be converted into any other array type, if
    +     * array elements can be converted, too</li>
    +     * <li><b>All other combinations that are not listed above will result in a
    +     * {@link DataTypeException}</b></li>
    +     * </ul>
    +     *
    +     * @param from The object to convert
    +     * @param toClass The target type
    +     * @return The converted object
    +     * @throws DataTypeException - When the conversion is not possible
    +     */
    +    public static <T> T convert(Object from, Class<? extends T> toClass) throws DataTypeException {
    +        return convert(from, new ConvertAll<T>(toClass));
    +    }
    +
    +    /**
    +     * Convert a list of objects to a list of <code>T</code>, using
    +     * {@link #convert(Object, Class)}
    +     *
    +     * @param list The list of objects
    +     * @param type The target type
    +     * @return The list of converted objects
    +     * @throws DataTypeException - When the conversion is not possible
    +     * @see #convert(Object, Class)
    +     */
    +    public static <T> List<T> convert(List<?> list, Class<? extends T> type) throws DataTypeException {
    +        return convert(list, new ConvertAll<T>(type));
    +    }
    +
    +    /**
    +     * Convert a list of objects to a list of <code>T</code>, using
    +     * {@link #convert(Object, Converter)}
    +     *
    +     * @param list The list of objects
    +     * @param converter The data type converter
    +     * @return The list of converted objects
    +     * @throws DataTypeException - When the conversion is not possible
    +     * @see #convert(Object, Converter)
    +     */
    +    public static <U> List<U> convert(List<?> list, Converter<?, U> converter) throws DataTypeException {
    +        return convert0(list, converter);
    +    }
    +
    +    /**
    +     * Type safe conversion
    +     */
    +    private static <T, U> List<U> convert0(List<?> list, Converter<T, U> converter) throws DataTypeException {
    +        ConvertAll<T> all = new ConvertAll<T>(converter.fromType());
    +        List<U> result = new ArrayList<U>();
    +
    +        for (Object o : list) {
    +            result.add(convert(all.from(o), converter));
    +        }
    +
    +        return result;
    +    }
    +
    +    /**
    +     * No instances
    +     */
    +    private Convert() {}
    +
    +    /**
    +     * The converter to convert them all.
    +     */
    +    private static class ConvertAll<U> implements Converter<Object, U> {
    +
    +        /**
    +         * Generated UID
    +         */
    +        private static final long        serialVersionUID = 2508560107067092501L;
    +
    +        private final Class<? extends U> toClass;
    +
    +        ConvertAll(Class<? extends U> toClass) {
    +            this.toClass = toClass;
    +        }
    +
    +        @SuppressWarnings("unchecked")
    +        @Override
    +        public U from(Object from) {
    +            if (from == null) {
    +
    +                // [#936] If types are converted to primitives, the result must not
    +                // be null. Return the default value instead
    +                if (toClass.isPrimitive()) {
    +
    +                    // Characters default to the "zero" character
    +                    if (toClass == char.class) {
    +                        return (U) Character.valueOf((char) 0);
    +                    }
    +
    +                    // All others can be converted from (int) 0
    +                    else {
    +                        return convert(0, toClass);
    +                    }
    +                }
    +                else {
    +                    return null;
    +                }
    +            }
    +            else {
    +                final Class<?> fromClass = from.getClass();
    +
    +                // No conversion
    +                if (toClass == fromClass) {
    +                    return (U) from;
    +                }
    +
    +                // [#1155] Do this early: identity-conversion into Object
    +                else if (toClass == Object.class) {
    +                    return (U) from;
    +                }
    +                else if (fromClass == byte[].class) {
    +
    +                    // This may not make much sense. Any other options?
    +                    return convert(Arrays.toString((byte[]) from), toClass);
    +                }
    +                else if (fromClass.isArray()) {
    +                    return (U) convertArray((Object[]) from, toClass);
    +                }
    +
    +                // All types can be converted into String
    +                else if (toClass == String.class) {
    +                    if (from instanceof EnumType) {
    +                        return (U) ((EnumType) from).getLiteral();
    +                    }
    +
    +                    return (U) from.toString();
    +                }
    +
    +                // Various number types are converted between each other via String
    +                else if (toClass == Byte.class || toClass == byte.class) {
    +                    return (U) Byte.valueOf(new BigDecimal(from.toString().trim()).byteValue());
    +                }
    +                else if (toClass == Short.class || toClass == short.class) {
    +                    return (U) Short.valueOf(new BigDecimal(from.toString().trim()).shortValue());
    +                }
    +                else if (toClass == Integer.class || toClass == int.class) {
    +                    return (U) Integer.valueOf(new BigDecimal(from.toString().trim()).intValue());
    +                }
    +                else if (toClass == Long.class || toClass == long.class) {
    +                    if (java.util.Date.class.isAssignableFrom(fromClass)) {
    +                        return (U) Long.valueOf(((java.util.Date) from).getTime());
    +                    }
    +                    else {
    +                        return (U) Long.valueOf(new BigDecimal(from.toString().trim()).longValue());
    +                    }
    +                }
    +
    +                // ... this also includes unsigned number types
    +                else if (toClass == UByte.class) {
    +                    return (U) ubyte(new BigDecimal(from.toString().trim()).shortValue());
    +                }
    +                else if (toClass == UShort.class) {
    +                    return (U) ushort(new BigDecimal(from.toString().trim()).intValue());
    +                }
    +                else if (toClass == UInteger.class) {
    +                    return (U) uint(new BigDecimal(from.toString().trim()).longValue());
    +                }
    +                else if (toClass == ULong.class) {
    +                    if (java.util.Date.class.isAssignableFrom(fromClass)) {
    +                        return (U) ulong(((java.util.Date) from).getTime());
    +                    }
    +                    else {
    +                        return (U) ulong(new BigDecimal(from.toString().trim()).toBigInteger().toString());
    +                    }
    +                }
    +
    +                // ... and floating point / fixed point types
    +                else if (toClass == Float.class || toClass == float.class) {
    +                    return (U) Float.valueOf(from.toString().trim());
    +                }
    +                else if (toClass == Double.class || toClass == double.class) {
    +                    return (U) Double.valueOf(from.toString().trim());
    +                }
    +                else if (toClass == BigDecimal.class) {
    +                    return (U) new BigDecimal(from.toString().trim());
    +                }
    +                else if (toClass == BigInteger.class) {
    +                    return (U) new BigDecimal(from.toString().trim()).toBigInteger();
    +                }
    +                else if (toClass == Boolean.class || toClass == boolean.class) {
    +                    String s = from.toString().toLowerCase().trim();
    +
    +                    if (TRUE_VALUES.contains(s)) {
    +                        return (U) Boolean.TRUE;
    +                    }
    +                    else if (FALSE_VALUES.contains(s)) {
    +                        return (U) Boolean.FALSE;
    +                    }
    +                    else {
    +                        return null;
    +                    }
    +                }
    +                else if (toClass == Character.class || toClass == char.class) {
    +                    if (from.toString().length() != 1) {
    +                        throw fail(from, toClass);
    +                    }
    +
    +                    return (U) Character.valueOf(from.toString().charAt(0));
    +                }
    +
    +                // Date types can be converted among each other
    +                else if (java.util.Date.class.isAssignableFrom(fromClass)) {
    +                    return toDate(((java.util.Date) from).getTime(), toClass);
    +                }
    +
    +                // Long may also be converted into a date type
    +                else if ((fromClass == Long.class || fromClass == long.class) && java.util.Date.class.isAssignableFrom(toClass)) {
    +                    return toDate((Long) from, toClass);
    +                }
    +            }
    +
    +            throw fail(from, toClass);
    +        }
    +
    +        @Override
    +        public Object to(U to) {
    +            return to;
    +        }
    +
    +        @Override
    +        public Class<Object> fromType() {
    +            return Object.class;
    +        }
    +
    +        @SuppressWarnings("unchecked")
    +        @Override
    +        public Class<U> toType() {
    +            return (Class<U>) toClass;
    +        }
    +
    +        /**
    +         * Convert a long timestamp to any date type
    +         */
    +        @SuppressWarnings("unchecked")
    +        private static <X> X toDate(long time, Class<X> toClass) {
    +            if (toClass == Date.class) {
    +                return (X) new Date(time);
    +            }
    +            else if (toClass == Time.class) {
    +                return (X) new Time(time);
    +            }
    +            else if (toClass == Timestamp.class) {
    +                return (X) new Timestamp(time);
    +            }
    +            else if (toClass == java.util.Date.class) {
    +                return (X) new java.util.Date(time);
    +            }
    +            else if (toClass == Calendar.class) {
    +                Calendar calendar = Calendar.getInstance();
    +                calendar.setTimeInMillis(time);
    +                return (X) calendar;
    +            }
    +
    +            throw fail(time, toClass);
    +        }
    +
    +        private static DataTypeException fail(Object from, Class<?> toClass) {
    +            return new DataTypeException("Cannot convert from " + from + " (" + from.getClass() + ") to " + toClass);
    +        }
    +    }
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/tools/JooqLogger.java b/jOOQ/src/main/java/org/jooq/tools/JooqLogger.java
    new file mode 100644
    index 00000000000..13e6561f9b0
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/tools/JooqLogger.java
    @@ -0,0 +1,288 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq.tools;
    +
    +import java.util.logging.Level;
    +
    +
    +
    +
    +/**
    + * The jOOQ logger abstraction
    + *
    + * @author Lukas Eder
    + */
    +public final class JooqLogger {
    +
    +    private org.slf4j.Logger slf4j;
    +    private org.apache.log4j.Logger log4j;
    +    private java.util.logging.Logger util;
    +
    +    public static JooqLogger getLogger(Class<?> clazz) {
    +        JooqLogger result = new JooqLogger();
    +
    +        // Prioritise slf4j
    +        try {
    +            result.slf4j = org.slf4j.LoggerFactory.getLogger(clazz);
    +        }
    +
    +        // If that's not on the classpath, try log4j instead
    +        catch (Throwable e1) {
    +            try {
    +                result.log4j = org.apache.log4j.Logger.getLogger(clazz);
    +            }
    +
    +            // If that's not on the classpath either, ignore most of logging
    +            catch (Throwable e2) {
    +                result.util = java.util.logging.Logger.getLogger(clazz.getName());
    +            }
    +        }
    +
    +        return result;
    +    }
    +
    +    public boolean isTraceEnabled() {
    +        if (slf4j != null) {
    +            return slf4j.isTraceEnabled();
    +        }
    +        else if (log4j != null) {
    +            return log4j.isTraceEnabled();
    +        }
    +        else {
    +            return util.isLoggable(Level.FINER);
    +        }
    +    }
    +
    +    public void trace(Object message) {
    +        trace(message, (Object) null);
    +    }
    +
    +    public void trace(Object message, Object details) {
    +        if (slf4j != null) {
    +            slf4j.trace(getMessage(message, details));
    +        }
    +        else if (log4j != null) {
    +            log4j.trace(getMessage(message, details));
    +        }
    +        else {
    +            util.finer("" + getMessage(message, details));
    +        }
    +    }
    +
    +    public void trace(Object message, Throwable t) {
    +        trace(message, null, t);
    +    }
    +
    +    public void trace(Object message, Object details, Throwable t) {
    +        if (slf4j != null) {
    +            slf4j.trace(getMessage(message, details), t);
    +        }
    +        else if (log4j != null) {
    +            log4j.trace(getMessage(message, details), t);
    +        }
    +        else {
    +            util.log(Level.FINER, "" + getMessage(message, details), t);
    +        }
    +    }
    +
    +
    +    public boolean isDebugEnabled() {
    +        if (slf4j != null) {
    +            return slf4j.isDebugEnabled();
    +        }
    +        else if (log4j != null) {
    +            return log4j.isDebugEnabled();
    +        }
    +        else {
    +            return util.isLoggable(Level.FINE);
    +        }
    +    }
    +
    +    public void debug(Object message) {
    +        debug(message, (Object) null);
    +    }
    +
    +    public void debug(Object message, Object details) {
    +        if (slf4j != null) {
    +            slf4j.debug(getMessage(message, details));
    +        }
    +        else if (log4j != null) {
    +            log4j.debug(getMessage(message, details));
    +        }
    +        else {
    +            util.fine("" + getMessage(message, details));
    +        }
    +    }
    +
    +    public void debug(Object message, Throwable t) {
    +        debug(message, null, t);
    +    }
    +
    +    public void debug(Object message, Object details, Throwable t) {
    +        if (slf4j != null) {
    +            slf4j.debug(getMessage(message, details), t);
    +        }
    +        else if (log4j != null) {
    +            log4j.debug(getMessage(message, details), t);
    +        }
    +        else {
    +            util.log(Level.FINE, "" + getMessage(message, details), t);
    +        }
    +    }
    +
    +
    +    public boolean isInfoEnabled() {
    +        if (slf4j != null) {
    +            return slf4j.isInfoEnabled();
    +        }
    +        else if (log4j != null) {
    +            return log4j.isInfoEnabled();
    +        }
    +        else {
    +            return util.isLoggable(Level.INFO);
    +        }
    +    }
    +
    +    public void info(Object message) {
    +        info(message, (Object) null);
    +    }
    +
    +    public void info(Object message, Object details) {
    +        if (slf4j != null) {
    +            slf4j.info(getMessage(message, details));
    +        }
    +        else if (log4j != null) {
    +            log4j.info(getMessage(message, details));
    +        }
    +        else {
    +            util.info("" + getMessage(message, details));
    +        }
    +    }
    +
    +    public void info(Object message, Throwable t) {
    +        info(message, null, t);
    +    }
    +
    +    public void info(Object message, Object details, Throwable t) {
    +        if (slf4j != null) {
    +            slf4j.info(getMessage(message, details), t);
    +        }
    +        else if (log4j != null) {
    +            log4j.info(getMessage(message, details), t);
    +        }
    +        else {
    +            util.log(Level.INFO, "" + getMessage(message, details), t);
    +        }
    +    }
    +
    +    public void warn(Object message) {
    +        warn(message, (Object) null);
    +    }
    +
    +    public void warn(Object message, Object details) {
    +        if (slf4j != null) {
    +            slf4j.warn(getMessage(message, details));
    +        }
    +        else if (log4j != null) {
    +            log4j.warn(getMessage(message, details));
    +        }
    +        else {
    +            util.warning("" + getMessage(message, details));
    +        }
    +    }
    +
    +    public void warn(Object message, Throwable t) {
    +        warn(message, null, t);
    +    }
    +
    +    public void warn(Object message, Object details, Throwable t) {
    +        if (slf4j != null) {
    +            slf4j.warn(getMessage(message, details), t);
    +        }
    +        else if (log4j != null) {
    +            log4j.warn(getMessage(message, details), t);
    +        }
    +        else {
    +            util.log(Level.WARNING, "" + getMessage(message, details), t);
    +        }
    +    }
    +
    +
    +    public void error(Object message) {
    +        error(message, (Object) null);
    +    }
    +
    +    public void error(Object message, Object details) {
    +        if (slf4j != null) {
    +            slf4j.error(getMessage(message, details));
    +        }
    +        else if (log4j != null) {
    +            log4j.error(getMessage(message, details));
    +        }
    +        else {
    +            util.severe("" + getMessage(message, details));
    +        }
    +    }
    +
    +    public void error(Object message, Throwable t) {
    +        error(message, null, t);
    +    }
    +
    +    public void error(Object message, Object details, Throwable t) {
    +        if (slf4j != null) {
    +            slf4j.error(getMessage(message, details), t);
    +        }
    +        else if (log4j != null) {
    +            log4j.error(getMessage(message, details), t);
    +        }
    +        else {
    +            util.log(Level.SEVERE, "" + getMessage(message, details), t);
    +        }
    +    }
    +
    +    private String getMessage(Object message, Object details) {
    +        StringBuilder sb = new StringBuilder();
    +
    +        sb.append(StringUtils.rightPad("" + message, 25));
    +
    +        if (details != null) {
    +            sb.append(": ");
    +            sb.append(details);
    +        }
    +
    +        return sb.toString();
    +    }
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/tools/LoggerListener.java b/jOOQ/src/main/java/org/jooq/tools/LoggerListener.java
    new file mode 100644
    index 00000000000..6df874356fd
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/tools/LoggerListener.java
    @@ -0,0 +1,90 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq.tools;
    +
    +import org.jooq.ExecuteContext;
    +import org.jooq.ExecuteListener;
    +import org.jooq.impl.DefaultExecuteListener;
    +
    +/**
    + * A default {@link ExecuteListener} that just logs events to java.util.logging,
    + * log4j, or slf4j using the {@link JooqLogger}
    + *
    + * @author Lukas Eder
    + */
    +public class LoggerListener extends DefaultExecuteListener {
    +
    +    private static final JooqLogger log   = JooqLogger.getLogger(LoggerListener.class);
    +
    +    @Override
    +    public void renderEnd(ExecuteContext ctx) {
    +        if (log.isDebugEnabled()) {
    +            if (ctx.query() != null) {
    +
    +                // Actual SQL passed to JDBC
    +                log.debug("Executing query", ctx.sql());
    +
    +                // [#1278] DEBUG log also SQL with inlined bind values, if
    +                // that is not the same as the actual SQL passed to JDBC
    +                String inlined = ctx.query().getSQL(true);
    +                if (!ctx.sql().equals(inlined)) {
    +                    log.debug("-> with bind values", inlined);
    +                }
    +            }
    +            else if (!StringUtils.isBlank(ctx.sql())) {
    +                log.debug("Executing query", ctx.sql());
    +            }
    +        }
    +    }
    +
    +    @Override
    +    public void recordEnd(ExecuteContext ctx) {
    +        if (log.isTraceEnabled() && ctx.record() != null)
    +            log.trace("Record fetched", ctx.record());
    +    }
    +
    +    @Override
    +    public void resultEnd(ExecuteContext ctx) {
    +        if (log.isDebugEnabled() && ctx.result() != null) {
    +            String comment = "Fetched result";
    +
    +            for (String line : ctx.result().format(5).split("\n")) {
    +                log.debug(comment, line);
    +                comment = "";
    +            }
    +        }
    +    }
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/tools/StopWatch.java b/jOOQ/src/main/java/org/jooq/tools/StopWatch.java
    new file mode 100644
    index 00000000000..0c01e08e46a
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/tools/StopWatch.java
    @@ -0,0 +1,154 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq.tools;
    +
    +
    +
    +/**
    + * A time measuring device
    + *
    + * @author Lukas Eder
    + */
    +public final class StopWatch {
    +
    +    private static final JooqLogger log = JooqLogger.getLogger(StopWatch.class);
    +    private long             start;
    +    private long             split;
    +
    +    /**
    +     * Initialise the stop watch
    +     */
    +    public StopWatch() {
    +        this.start = System.nanoTime();
    +        this.split = start;
    +    }
    +
    +    /**
    +     * Split the time and trace log a message, if trace logging is enabled
    +     */
    +    public void splitTrace(String message) {
    +        if (log.isTraceEnabled()) {
    +            log.trace(message, splitMessage());
    +        }
    +    }
    +
    +    /**
    +     * Split the time and debug log a message, if trace logging is enabled
    +     */
    +    public void splitDebug(String message) {
    +        if (log.isDebugEnabled()) {
    +            log.debug(message, splitMessage());
    +        }
    +    }
    +
    +    /**
    +     * Split the time and info log a message, if trace logging is enabled
    +     */
    +    public void splitInfo(String message) {
    +        if (log.isInfoEnabled()) {
    +            log.info(message, splitMessage());
    +        }
    +    }
    +
    +    private String splitMessage() {
    +        final long temp = split;
    +        split = System.nanoTime();
    +
    +        if (temp == start) {
    +            return "Total: " + format(split - start);
    +        }
    +        else {
    +            return "Total: " + format(split - start) + ", +" + format(split - temp);
    +        }
    +    }
    +
    +    private static String format(long nanoTime) {
    +
    +        // If more than one minute, format in HH:mm:ss
    +        if (nanoTime > (60L * 1000L * 1000000L)) {
    +            return formatHours(nanoTime / (1000L * 1000000L));
    +        }
    +
    +        // If more than one second, display seconds with milliseconds
    +        else if (nanoTime > (1000L * 1000000L)) {
    +            return ((nanoTime / 1000000L) / 1000.0) + "s";
    +        }
    +
    +        // If less than one second, display milliseconds with microseconds
    +        else {
    +            return ((nanoTime / 1000L) / 1000.0) + "ms";
    +        }
    +    }
    +
    +    private static String formatHours(long seconds) {
    +        long s = seconds % 60L;
    +        long m = (seconds / 60L) % 60L;
    +        long h = (seconds / 3600L);
    +
    +        StringBuilder sb = new StringBuilder();
    +
    +        if (h == 0) {
    +            // nop
    +        }
    +        else if (h < 10) {
    +            sb.append("0");
    +            sb.append(h);
    +            sb.append(":");
    +        }
    +        else {
    +            sb.append(h);
    +            sb.append(":");
    +        }
    +
    +        if (m < 10) {
    +            sb.append("0");
    +            sb.append(m);
    +            sb.append(":");
    +        } else {
    +            sb.append(m);
    +            sb.append(":");
    +        }
    +
    +        if (s < 10) {
    +            sb.append("0");
    +            sb.append(s);
    +        } else {
    +            sb.append(s);
    +        }
    +
    +        return sb.toString();
    +    }
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/tools/StopWatchListener.java b/jOOQ/src/main/java/org/jooq/tools/StopWatchListener.java
    new file mode 100644
    index 00000000000..2a496beedef
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/tools/StopWatchListener.java
    @@ -0,0 +1,130 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq.tools;
    +
    +import org.jooq.ExecuteContext;
    +import org.jooq.ExecuteListener;
    +
    +/**
    + * A default {@link ExecuteListener} that just logs events to java.util.logging,
    + * log4j, or slf4j using the {@link JooqLogger}
    + *
    + * @author Lukas Eder
    + */
    +public class StopWatchListener implements ExecuteListener {
    +
    +    private final StopWatch watch = new StopWatch();
    +
    +    @Override
    +    public void start(ExecuteContext ctx) {
    +        watch.splitTrace("Initialising");
    +    }
    +
    +    @Override
    +    public void renderStart(ExecuteContext ctx) {
    +        watch.splitTrace("Rendering query");
    +    }
    +
    +    @Override
    +    public void renderEnd(ExecuteContext ctx) {
    +        watch.splitTrace("Query rendered");
    +    }
    +
    +    @Override
    +    public void prepareStart(ExecuteContext ctx) {
    +        watch.splitTrace("Preparing statement");
    +    }
    +
    +    @Override
    +    public void prepareEnd(ExecuteContext ctx) {
    +        watch.splitTrace("Statement prepared");
    +    }
    +
    +    @Override
    +    public void bindStart(ExecuteContext ctx) {
    +        watch.splitTrace("Binding variables");
    +    }
    +
    +    @Override
    +    public void bindEnd(ExecuteContext ctx) {
    +        watch.splitTrace("Variables bound");
    +    }
    +
    +    @Override
    +    public void executeStart(ExecuteContext ctx) {
    +        watch.splitTrace("Executing query");
    +    }
    +
    +    @Override
    +    public void executeEnd(ExecuteContext ctx) {
    +        watch.splitDebug("Query executed");
    +    }
    +
    +    @Override
    +    public void fetchStart(ExecuteContext ctx) {
    +        watch.splitTrace("Fetching results");
    +    }
    +
    +    @Override
    +    public void resultStart(ExecuteContext ctx) {
    +        watch.splitTrace("Fetching result");
    +    }
    +
    +    @Override
    +    public void recordStart(ExecuteContext ctx) {
    +        watch.splitTrace("Fetching record");
    +    }
    +
    +    @Override
    +    public void recordEnd(ExecuteContext ctx) {
    +        watch.splitTrace("Record fetched");
    +    }
    +
    +    @Override
    +    public void resultEnd(ExecuteContext ctx) {
    +        watch.splitTrace("Result fetched");
    +    }
    +
    +    @Override
    +    public void fetchEnd(ExecuteContext ctx) {
    +        watch.splitTrace("Results fetched");
    +    }
    +
    +    @Override
    +    public void end(ExecuteContext ctx) {
    +        watch.splitDebug("Finishing");
    +    }
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/tools/StringUtils.java b/jOOQ/src/main/java/org/jooq/tools/StringUtils.java
    new file mode 100644
    index 00000000000..9800745e6c6
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/tools/StringUtils.java
    @@ -0,0 +1,1185 @@
    +/*
    + * 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.
    + */
    +package org.jooq.tools;
    +
    +import java.util.ArrayList;
    +import java.util.Iterator;
    +import java.util.regex.Matcher;
    +import java.util.regex.Pattern;
    +
    +
    +/**
    + * <p>
    + * Operations on {@link java.lang.String} that are <code>null</code> safe.
    + * </p>
    + * <ul>
    + * <li><b>IsEmpty/IsBlank</b> - checks if a String contains text</li>
    + * <li><b>Trim/Strip</b> - removes leading and trailing whitespace</li>
    + * <li><b>Equals</b> - compares two strings null-safe</li>
    + * <li><b>startsWith</b> - check if a String starts with a prefix null-safe</li>
    + * <li><b>endsWith</b> - check if a String ends with a suffix null-safe</li>
    + * <li><b>IndexOf/LastIndexOf/Contains</b> - null-safe index-of checks
    + * <li><b>IndexOfAny/LastIndexOfAny/IndexOfAnyBut/LastIndexOfAnyBut</b> -
    + * index-of any of a set of Strings</li>
    + * <li><b>ContainsOnly/ContainsNone/ContainsAny</b> - does String contains
    + * only/none/any of these characters</li>
    + * <li><b>Substring/Left/Right/Mid</b> - null-safe substring extractions</li>
    + * <li><b>SubstringBefore/SubstringAfter/SubstringBetween</b> - substring
    + * extraction relative to other strings</li>
    + * <li><b>Split/Join</b> - splits a String into an array of substrings and vice
    + * versa</li>
    + * <li><b>Remove/Delete</b> - removes part of a String</li>
    + * <li><b>Replace/Overlay</b> - Searches a String and replaces one String with
    + * another</li>
    + * <li><b>Chomp/Chop</b> - removes the last part of a String</li>
    + * <li><b>LeftPad/RightPad/Center/Repeat</b> - pads a String</li>
    + * <li><b>UpperCase/LowerCase/SwapCase/Capitalize/Uncapitalize</b> - changes the
    + * case of a String</li>
    + * <li><b>CountMatches</b> - counts the number of occurrences of one String in
    + * another</li>
    + * <li><b>IsAlpha/IsNumeric/IsWhitespace/IsAsciiPrintable</b> - checks the
    + * characters in a String</li>
    + * <li><b>DefaultString</b> - protects against a null input String</li>
    + * <li><b>Reverse/ReverseDelimited</b> - reverses a String</li>
    + * <li><b>Abbreviate</b> - abbreviates a string using ellipsis</li>
    + * <li><b>Difference</b> - compares Strings and reports on their differences</li>
    + * <li><b>LevensteinDistance</b> - the number of changes needed to change one
    + * String into another</li>
    + * </ul>
    + * <p>
    + * The <code>StringUtils</code> class defines certain words related to String
    + * handling.
    + * </p>
    + * <ul>
    + * <li>null - <code>null</code></li>
    + * <li>empty - a zero-length string (<code>""</code>)</li>
    + * <li>space - the space character (<code>' '</code>, char 32)</li>
    + * <li>whitespace - the characters defined by
    + * {@link Character#isWhitespace(char)}</li>
    + * <li>trim - the characters &lt;= 32 as in {@link String#trim()}</li>
    + * </ul>
    + * <p>
    + * <code>StringUtils</code> handles <code>null</code> input Strings quietly.
    + * That is to say that a <code>null</code> input will return <code>null</code>.
    + * Where a <code>boolean</code> or <code>int</code> is being returned details
    + * vary by method.
    + * </p>
    + * <p>
    + * A side effect of the <code>null</code> handling is that a
    + * <code>NullPointerException</code> should be considered a bug in
    + * <code>StringUtils</code> (except for deprecated methods).
    + * </p>
    + * <p>
    + * Methods in this class give sample code to explain their operation. The symbol
    + * <code>*</code> is used to indicate any input including <code>null</code>.
    + * </p>
    + *
    + * @see java.lang.String
    + * @author Apache Software Foundation
    + * @author <a href="http://jakarta.apache.org/turbine/">Apache Jakarta
    + *         Turbine</a>
    + * @author <a href="mailto:jon@latchkey.com">Jon S. Stevens</a>
    + * @author Daniel L. Rall
    + * @author <a href="mailto:gcoladonato@yahoo.com">Greg Coladonato</a>
    + * @author <a href="mailto:ed@apache.org">Ed Korthof</a>
    + * @author <a href="mailto:rand_mcneely@yahoo.com">Rand McNeely</a>
    + * @author <a href="mailto:fredrik@westermarck.com">Fredrik Westermarck</a>
    + * @author Holger Krauth
    + * @author <a href="mailto:alex@purpletech.com">Alexander Day Chaffee</a>
    + * @author <a href="mailto:hps@intermeta.de">Henning P. Schmiedehausen</a>
    + * @author Arun Mammen Thomas
    + * @author Gary Gregory
    + * @author Phil Steitz
    + * @author Al Chou
    + * @author Michael Davey
    + * @author Reuben Sivan
    + * @author Chris Hyzer
    + * @author Scott Johnson
    + * @since 1.0
    + * @version $Id: StringUtils.java 911986 2010-02-19 21:19:05Z niallp $
    + */
    +public final class StringUtils {
    +
    +    /**
    +     * The empty String {@code ""}.
    +     * @since 2.0
    +     */
    +    public static final String EMPTY = "";
    +
    +    /**
    +     * <p>The maximum size to which the padding constant(s) can expand.</p>
    +     */
    +    private static final int PAD_LIMIT = 8192;
    +
    +    // Defaults
    +    // -----------------------------------------------------------------------
    +    /**
    +     * <p>
    +     * Returns either the passed in String, or if the String is
    +     * <code>null</code>, an empty String ("").
    +     * </p>
    +     *
    +     * <pre>
    +     * StringUtils.defaultString(null)  = ""
    +     * StringUtils.defaultString("")    = ""
    +     * StringUtils.defaultString("bat") = "bat"
    +     * </pre>
    +     *
    +     * @see String#valueOf(Object)
    +     * @param str the String to check, may be null
    +     * @return the passed in String, or the empty String if it was
    +     *         <code>null</code>
    +     */
    +    public static String defaultString(String str) {
    +        return str == null ? "" : str;
    +    }
    +
    +    /**
    +     * <p>Returns either the passed in String, or if the String is
    +     * <code>null</code>, the value of <code>defaultStr</code>.</p>
    +     *
    +     * <pre>
    +     * StringUtils.defaultString(null, "NULL")  = "NULL"
    +     * StringUtils.defaultString("", "NULL")    = ""
    +     * StringUtils.defaultString("bat", "NULL") = "bat"
    +     * </pre>
    +     *
    +     * @see String#valueOf(Object)
    +     * @param str  the String to check, may be null
    +     * @param defaultStr  the default String to return
    +     *  if the input is <code>null</code>, may be null
    +     * @return the passed in String, or the default if it was <code>null</code>
    +     */
    +    public static String defaultString(String str, String defaultStr) {
    +        return str == null ? defaultStr : str;
    +    }
    +
    +    /**
    +     * <p>Returns either the passed in String, or if the String is
    +     * empty or <code>null</code>, the value of <code>defaultStr</code>.</p>
    +     *
    +     * <pre>
    +     * StringUtils.defaultIfEmpty(null, "NULL")  = "NULL"
    +     * StringUtils.defaultIfEmpty("", "NULL")    = "NULL"
    +     * StringUtils.defaultIfEmpty("bat", "NULL") = "bat"
    +     * </pre>
    +     *
    +     * @see StringUtils#defaultString(String, String)
    +     * @param str  the String to check, may be null
    +     * @param defaultStr  the default String to return
    +     *  if the input is empty ("") or <code>null</code>, may be null
    +     * @return the passed in String, or the default
    +     */
    +    public static String defaultIfEmpty(String str, String defaultStr) {
    +        return StringUtils.isEmpty(str) ? defaultStr : str;
    +    }
    +
    +    // Empty checks
    +    // -----------------------------------------------------------------------
    +    /**
    +     * <p>
    +     * Checks if a String is empty ("") or null.
    +     * </p>
    +     *
    +     * <pre>
    +     * StringUtils.isEmpty(null)      = true
    +     * StringUtils.isEmpty("")        = true
    +     * StringUtils.isEmpty(" ")       = false
    +     * StringUtils.isEmpty("bob")     = false
    +     * StringUtils.isEmpty("  bob  ") = false
    +     * </pre>
    +     * <p>
    +     * NOTE: This method changed in Lang version 2.0. It no longer trims the
    +     * String. That functionality is available in isBlank().
    +     * </p>
    +     *
    +     * @param str the String to check, may be null
    +     * @return <code>true</code> if the String is empty or null
    +     */
    +    public static boolean isEmpty(String str) {
    +        return str == null || str.length() == 0;
    +    }
    +
    +    /**
    +     * <p>
    +     * Checks if a String is whitespace, empty ("") or null.
    +     * </p>
    +     *
    +     * <pre>
    +     * StringUtils.isBlank(null)      = true
    +     * StringUtils.isBlank("")        = true
    +     * StringUtils.isBlank(" ")       = true
    +     * StringUtils.isBlank("bob")     = false
    +     * StringUtils.isBlank("  bob  ") = false
    +     * </pre>
    +     *
    +     * @param str the String to check, may be null
    +     * @return <code>true</code> if the String is null, empty or whitespace
    +     * @since 2.0
    +     */
    +    public static boolean isBlank(String str) {
    +        int strLen;
    +        if (str == null || (strLen = str.length()) == 0) {
    +            return true;
    +        }
    +        for (int i = 0; i < strLen; i++) {
    +            if ((Character.isWhitespace(str.charAt(i)) == false)) {
    +                return false;
    +            }
    +        }
    +        return true;
    +    }
    +
    +    // Count matches
    +    // -----------------------------------------------------------------------
    +    /**
    +     * <p>
    +     * Counts how many times the substring appears in the larger String.
    +     * </p>
    +     * <p>
    +     * A <code>null</code> or empty ("") String input returns <code>0</code>.
    +     * </p>
    +     *
    +     * <pre>
    +     * StringUtils.countMatches(null, *)       = 0
    +     * StringUtils.countMatches("", *)         = 0
    +     * StringUtils.countMatches("abba", null)  = 0
    +     * StringUtils.countMatches("abba", "")    = 0
    +     * StringUtils.countMatches("abba", "a")   = 2
    +     * StringUtils.countMatches("abba", "ab")  = 1
    +     * StringUtils.countMatches("abba", "xxx") = 0
    +     * </pre>
    +     *
    +     * @param str the String to check, may be null
    +     * @param sub the substring to count, may be null
    +     * @return the number of occurrences, 0 if either String is
    +     *         <code>null</code>
    +     */
    +    public static int countMatches(String str, String sub) {
    +        if (isEmpty(str) || isEmpty(sub)) {
    +            return 0;
    +        }
    +        int count = 0;
    +        int idx = 0;
    +        while ((idx = str.indexOf(sub, idx)) != -1) {
    +            count++;
    +            idx += sub.length();
    +        }
    +        return count;
    +    }
    +
    +    // Padding
    +    // -----------------------------------------------------------------------
    +    /**
    +     * <p>Right pad a String with spaces (' ').</p>
    +     *
    +     * <p>The String is padded to the size of <code>size</code>.</p>
    +     *
    +     * <pre>
    +     * StringUtils.rightPad(null, *)   = null
    +     * StringUtils.rightPad("", 3)     = "   "
    +     * StringUtils.rightPad("bat", 3)  = "bat"
    +     * StringUtils.rightPad("bat", 5)  = "bat  "
    +     * StringUtils.rightPad("bat", 1)  = "bat"
    +     * StringUtils.rightPad("bat", -1) = "bat"
    +     * </pre>
    +     *
    +     * @param str  the String to pad out, may be null
    +     * @param size  the size to pad to
    +     * @return right padded String or original String if no padding is necessary,
    +     *  <code>null</code> if null String input
    +     */
    +    public static String rightPad(String str, int size) {
    +        return rightPad(str, size, ' ');
    +    }
    +
    +    /**
    +     * <p>Right pad a String with a specified character.</p>
    +     *
    +     * <p>The String is padded to the size of <code>size</code>.</p>
    +     *
    +     * <pre>
    +     * StringUtils.rightPad(null, *, *)     = null
    +     * StringUtils.rightPad("", 3, 'z')     = "zzz"
    +     * StringUtils.rightPad("bat", 3, 'z')  = "bat"
    +     * StringUtils.rightPad("bat", 5, 'z')  = "batzz"
    +     * StringUtils.rightPad("bat", 1, 'z')  = "bat"
    +     * StringUtils.rightPad("bat", -1, 'z') = "bat"
    +     * </pre>
    +     *
    +     * @param str  the String to pad out, may be null
    +     * @param size  the size to pad to
    +     * @param padChar  the character to pad with
    +     * @return right padded String or original String if no padding is necessary,
    +     *  <code>null</code> if null String input
    +     * @since 2.0
    +     */
    +    public static String rightPad(String str, int size, char padChar) {
    +        if (str == null) {
    +            return null;
    +        }
    +        int pads = size - str.length();
    +        if (pads <= 0) {
    +            return str; // returns original String when possible
    +        }
    +        if (pads > PAD_LIMIT) {
    +            return rightPad(str, size, String.valueOf(padChar));
    +        }
    +        return str.concat(padding(pads, padChar));
    +    }
    +
    +    /**
    +     * <p>Right pad a String with a specified String.</p>
    +     *
    +     * <p>The String is padded to the size of <code>size</code>.</p>
    +     *
    +     * <pre>
    +     * StringUtils.rightPad(null, *, *)      = null
    +     * StringUtils.rightPad("", 3, "z")      = "zzz"
    +     * StringUtils.rightPad("bat", 3, "yz")  = "bat"
    +     * StringUtils.rightPad("bat", 5, "yz")  = "batyz"
    +     * StringUtils.rightPad("bat", 8, "yz")  = "batyzyzy"
    +     * StringUtils.rightPad("bat", 1, "yz")  = "bat"
    +     * StringUtils.rightPad("bat", -1, "yz") = "bat"
    +     * StringUtils.rightPad("bat", 5, null)  = "bat  "
    +     * StringUtils.rightPad("bat", 5, "")    = "bat  "
    +     * </pre>
    +     *
    +     * @param str  the String to pad out, may be null
    +     * @param size  the size to pad to
    +     * @param padStr  the String to pad with, null or empty treated as single space
    +     * @return right padded String or original String if no padding is necessary,
    +     *  <code>null</code> if null String input
    +     */
    +    public static String rightPad(String str, int size, String padStr) {
    +        if (str == null) {
    +            return null;
    +        }
    +        if (isEmpty(padStr)) {
    +            padStr = " ";
    +        }
    +        int padLen = padStr.length();
    +        int strLen = str.length();
    +        int pads = size - strLen;
    +        if (pads <= 0) {
    +            return str; // returns original String when possible
    +        }
    +        if (padLen == 1 && pads <= PAD_LIMIT) {
    +            return rightPad(str, size, padStr.charAt(0));
    +        }
    +
    +        if (pads == padLen) {
    +            return str.concat(padStr);
    +        } else if (pads < padLen) {
    +            return str.concat(padStr.substring(0, pads));
    +        } else {
    +            char[] padding = new char[pads];
    +            char[] padChars = padStr.toCharArray();
    +            for (int i = 0; i < pads; i++) {
    +                padding[i] = padChars[i % padLen];
    +            }
    +            return str.concat(new String(padding));
    +        }
    +    }
    +
    +    /**
    +     * <p>Left pad a String with spaces (' ').</p>
    +     *
    +     * <p>The String is padded to the size of <code>size<code>.</p>
    +     *
    +     * <pre>
    +     * StringUtils.leftPad(null, *)   = null
    +     * StringUtils.leftPad("", 3)     = "   "
    +     * StringUtils.leftPad("bat", 3)  = "bat"
    +     * StringUtils.leftPad("bat", 5)  = "  bat"
    +     * StringUtils.leftPad("bat", 1)  = "bat"
    +     * StringUtils.leftPad("bat", -1) = "bat"
    +     * </pre>
    +     *
    +     * @param str  the String to pad out, may be null
    +     * @param size  the size to pad to
    +     * @return left padded String or original String if no padding is necessary,
    +     *  <code>null</code> if null String input
    +     */
    +    public static String leftPad(String str, int size) {
    +        return leftPad(str, size, ' ');
    +    }
    +
    +    /**
    +     * <p>Left pad a String with a specified character.</p>
    +     *
    +     * <p>Pad to a size of <code>size</code>.</p>
    +     *
    +     * <pre>
    +     * StringUtils.leftPad(null, *, *)     = null
    +     * StringUtils.leftPad("", 3, 'z')     = "zzz"
    +     * StringUtils.leftPad("bat", 3, 'z')  = "bat"
    +     * StringUtils.leftPad("bat", 5, 'z')  = "zzbat"
    +     * StringUtils.leftPad("bat", 1, 'z')  = "bat"
    +     * StringUtils.leftPad("bat", -1, 'z') = "bat"
    +     * </pre>
    +     *
    +     * @param str  the String to pad out, may be null
    +     * @param size  the size to pad to
    +     * @param padChar  the character to pad with
    +     * @return left padded String or original String if no padding is necessary,
    +     *  <code>null</code> if null String input
    +     * @since 2.0
    +     */
    +    public static String leftPad(String str, int size, char padChar) {
    +        if (str == null) {
    +            return null;
    +        }
    +        int pads = size - str.length();
    +        if (pads <= 0) {
    +            return str; // returns original String when possible
    +        }
    +        if (pads > PAD_LIMIT) {
    +            return leftPad(str, size, String.valueOf(padChar));
    +        }
    +        return padding(pads, padChar).concat(str);
    +    }
    +
    +    /**
    +     * <p>Left pad a String with a specified String.</p>
    +     *
    +     * <p>Pad to a size of <code>size</code>.</p>
    +     *
    +     * <pre>
    +     * StringUtils.leftPad(null, *, *)      = null
    +     * StringUtils.leftPad("", 3, "z")      = "zzz"
    +     * StringUtils.leftPad("bat", 3, "yz")  = "bat"
    +     * StringUtils.leftPad("bat", 5, "yz")  = "yzbat"
    +     * StringUtils.leftPad("bat", 8, "yz")  = "yzyzybat"
    +     * StringUtils.leftPad("bat", 1, "yz")  = "bat"
    +     * StringUtils.leftPad("bat", -1, "yz") = "bat"
    +     * StringUtils.leftPad("bat", 5, null)  = "  bat"
    +     * StringUtils.leftPad("bat", 5, "")    = "  bat"
    +     * </pre>
    +     *
    +     * @param str  the String to pad out, may be null
    +     * @param size  the size to pad to
    +     * @param padStr  the String to pad with, null or empty treated as single space
    +     * @return left padded String or original String if no padding is necessary,
    +     *  <code>null</code> if null String input
    +     */
    +    public static String leftPad(String str, int size, String padStr) {
    +        if (str == null) {
    +            return null;
    +        }
    +        if (isEmpty(padStr)) {
    +            padStr = " ";
    +        }
    +        int padLen = padStr.length();
    +        int strLen = str.length();
    +        int pads = size - strLen;
    +        if (pads <= 0) {
    +            return str; // returns original String when possible
    +        }
    +        if (padLen == 1 && pads <= PAD_LIMIT) {
    +            return leftPad(str, size, padStr.charAt(0));
    +        }
    +
    +        if (pads == padLen) {
    +            return padStr.concat(str);
    +        } else if (pads < padLen) {
    +            return padStr.substring(0, pads).concat(str);
    +        } else {
    +            char[] padding = new char[pads];
    +            char[] padChars = padStr.toCharArray();
    +            for (int i = 0; i < pads; i++) {
    +                padding[i] = padChars[i % padLen];
    +            }
    +            return new String(padding).concat(str);
    +        }
    +    }
    +
    +    /**
    +     * <p>Returns padding using the specified delimiter repeated
    +     * to a given length.</p>
    +     *
    +     * <pre>
    +     * StringUtils.padding(0, 'e')  = ""
    +     * StringUtils.padding(3, 'e')  = "eee"
    +     * StringUtils.padding(-2, 'e') = IndexOutOfBoundsException
    +     * </pre>
    +     *
    +     * <p>Note: this method doesn't not support padding with
    +     * <a href="http://www.unicode.org/glossary/#supplementary_character">Unicode Supplementary Characters</a>
    +     * as they require a pair of <code>char</code>s to be represented.
    +     * If you are needing to support full I18N of your applications
    +     * consider using {@link #repeat(String, int)} instead.
    +     * </p>
    +     *
    +     * @param repeat  number of times to repeat delim
    +     * @param padChar  character to repeat
    +     * @return String with repeated character
    +     * @throws IndexOutOfBoundsException if <code>repeat &lt; 0</code>
    +     * @see #repeat(String, int)
    +     */
    +    private static String padding(int repeat, char padChar) throws IndexOutOfBoundsException {
    +        if (repeat < 0) {
    +            throw new IndexOutOfBoundsException("Cannot pad a negative amount: " + repeat);
    +        }
    +        final char[] buf = new char[repeat];
    +        for (int i = 0; i < buf.length; i++) {
    +            buf[i] = padChar;
    +        }
    +        return new String(buf);
    +    }
    +
    +    // Abbreviating
    +    //-----------------------------------------------------------------------
    +    /**
    +     * <p>Abbreviates a String using ellipses. This will turn
    +     * "Now is the time for all good men" into "Now is the time for..."</p>
    +     *
    +     * <p>Specifically:
    +     * <ul>
    +     *   <li>If <code>str</code> is less than <code>maxWidth</code> characters
    +     *       long, return it.</li>
    +     *   <li>Else abbreviate it to <code>(substring(str, 0, max-3) + "...")</code>.</li>
    +     *   <li>If <code>maxWidth</code> is less than <code>4</code>, throw an
    +     *       <code>IllegalArgumentException</code>.</li>
    +     *   <li>In no case will it return a String of length greater than
    +     *       <code>maxWidth</code>.</li>
    +     * </ul>
    +     * </p>
    +     *
    +     * <pre>
    +     * StringUtils.abbreviate(null, *)      = null
    +     * StringUtils.abbreviate("", 4)        = ""
    +     * StringUtils.abbreviate("abcdefg", 6) = "abc..."
    +     * StringUtils.abbreviate("abcdefg", 7) = "abcdefg"
    +     * StringUtils.abbreviate("abcdefg", 8) = "abcdefg"
    +     * StringUtils.abbreviate("abcdefg", 4) = "a..."
    +     * StringUtils.abbreviate("abcdefg", 3) = IllegalArgumentException
    +     * </pre>
    +     *
    +     * @param str  the String to check, may be null
    +     * @param maxWidth  maximum length of result String, must be at least 4
    +     * @return abbreviated String, <code>null</code> if null String input
    +     * @throws IllegalArgumentException if the width is too small
    +     * @since 2.0
    +     */
    +    public static String abbreviate(String str, int maxWidth) {
    +        return abbreviate(str, 0, maxWidth);
    +    }
    +
    +    /**
    +     * <p>Abbreviates a String using ellipses. This will turn
    +     * "Now is the time for all good men" into "...is the time for..."</p>
    +     *
    +     * <p>Works like <code>abbreviate(String, int)</code>, but allows you to specify
    +     * a "left edge" offset.  Note that this left edge is not necessarily going to
    +     * be the leftmost character in the result, or the first character following the
    +     * ellipses, but it will appear somewhere in the result.
    +     *
    +     * <p>In no case will it return a String of length greater than
    +     * <code>maxWidth</code>.</p>
    +     *
    +     * <pre>
    +     * StringUtils.abbreviate(null, *, *)                = null
    +     * StringUtils.abbreviate("", 0, 4)                  = ""
    +     * StringUtils.abbreviate("abcdefghijklmno", -1, 10) = "abcdefg..."
    +     * StringUtils.abbreviate("abcdefghijklmno", 0, 10)  = "abcdefg..."
    +     * StringUtils.abbreviate("abcdefghijklmno", 1, 10)  = "abcdefg..."
    +     * StringUtils.abbreviate("abcdefghijklmno", 4, 10)  = "abcdefg..."
    +     * StringUtils.abbreviate("abcdefghijklmno", 5, 10)  = "...fghi..."
    +     * StringUtils.abbreviate("abcdefghijklmno", 6, 10)  = "...ghij..."
    +     * StringUtils.abbreviate("abcdefghijklmno", 8, 10)  = "...ijklmno"
    +     * StringUtils.abbreviate("abcdefghijklmno", 10, 10) = "...ijklmno"
    +     * StringUtils.abbreviate("abcdefghijklmno", 12, 10) = "...ijklmno"
    +     * StringUtils.abbreviate("abcdefghij", 0, 3)        = IllegalArgumentException
    +     * StringUtils.abbreviate("abcdefghij", 5, 6)        = IllegalArgumentException
    +     * </pre>
    +     *
    +     * @param str  the String to check, may be null
    +     * @param offset  left edge of source String
    +     * @param maxWidth  maximum length of result String, must be at least 4
    +     * @return abbreviated String, <code>null</code> if null String input
    +     * @throws IllegalArgumentException if the width is too small
    +     * @since 2.0
    +     */
    +    public static String abbreviate(String str, int offset, int maxWidth) {
    +        if (str == null) {
    +            return null;
    +        }
    +        if (maxWidth < 4) {
    +            throw new IllegalArgumentException("Minimum abbreviation width is 4");
    +        }
    +        if (str.length() <= maxWidth) {
    +            return str;
    +        }
    +        if (offset > str.length()) {
    +            offset = str.length();
    +        }
    +        if ((str.length() - offset) < (maxWidth - 3)) {
    +            offset = str.length() - (maxWidth - 3);
    +        }
    +        if (offset <= 4) {
    +            return str.substring(0, maxWidth - 3) + "...";
    +        }
    +        if (maxWidth < 7) {
    +            throw new IllegalArgumentException("Minimum abbreviation width with offset is 7");
    +        }
    +        if ((offset + (maxWidth - 3)) < str.length()) {
    +            return "..." + abbreviate(str.substring(offset), maxWidth - 3);
    +        }
    +        return "..." + str.substring(str.length() - (maxWidth - 3));
    +    }
    +
    +    // ContainsAny
    +    //-----------------------------------------------------------------------
    +    /**
    +     * <p>Checks if the String contains any character in the given
    +     * set of characters.</p>
    +     *
    +     * <p>A <code>null</code> String will return <code>false</code>.
    +     * A <code>null</code> or zero length search array will return <code>false</code>.</p>
    +     *
    +     * <pre>
    +     * StringUtils.containsAny(null, *)                = false
    +     * StringUtils.containsAny("", *)                  = false
    +     * StringUtils.containsAny(*, null)                = false
    +     * StringUtils.containsAny(*, [])                  = false
    +     * StringUtils.containsAny("zzabyycdxx",['z','a']) = true
    +     * StringUtils.containsAny("zzabyycdxx",['b','y']) = true
    +     * StringUtils.containsAny("aba", ['z'])           = false
    +     * </pre>
    +     *
    +     * @param str  the String to check, may be null
    +     * @param searchChars  the chars to search for, may be null
    +     * @return the <code>true</code> if any of the chars are found,
    +     * <code>false</code> if no match or null input
    +     * @since 2.4
    +     */
    +    public static boolean containsAny(String str, char... searchChars) {
    +        if (str == null || str.length() == 0 || searchChars == null || searchChars.length == 0) {
    +            return false;
    +        }
    +        for (int i = 0; i < str.length(); i++) {
    +            char ch = str.charAt(i);
    +            for (int j = 0; j < searchChars.length; j++) {
    +                if (searchChars[j] == ch) {
    +                    return true;
    +                }
    +            }
    +        }
    +        return false;
    +    }
    +
    +    /**
    +     * <p>
    +     * Replaces all occurrences of Strings within another String.
    +     * </p>
    +     *
    +     * <p>
    +     * A <code>null</code> reference passed to this method is a no-op, or if
    +     * any "search string" or "string to replace" is null, that replace will be
    +     * ignored. This will not repeat. For repeating replaces, call the
    +     * overloaded method.
    +     * </p>
    +     *
    +     * <pre>
    +     *  StringUtils.replaceEach(null, *, *)        = null
    +     *  StringUtils.replaceEach("", *, *)          = ""
    +     *  StringUtils.replaceEach("aba", null, null) = "aba"
    +     *  StringUtils.replaceEach("aba", new String[0], null) = "aba"
    +     *  StringUtils.replaceEach("aba", null, new String[0]) = "aba"
    +     *  StringUtils.replaceEach("aba", new String[]{"a"}, null)  = "aba"
    +     *  StringUtils.replaceEach("aba", new String[]{"a"}, new String[]{""})  = "b"
    +     *  StringUtils.replaceEach("aba", new String[]{null}, new String[]{"a"})  = "aba"
    +     *  StringUtils.replaceEach("abcde", new String[]{"ab", "d"}, new String[]{"w", "t"})  = "wcte"
    +     *  (example of how it does not repeat)
    +     *  StringUtils.replaceEach("abcde", new String[]{"ab", "d"}, new String[]{"d", "t"})  = "dcte"
    +     * </pre>
    +     *
    +     * @param text
    +     *            text to search and replace in, no-op if null
    +     * @param searchList
    +     *            the Strings to search for, no-op if null
    +     * @param replacementList
    +     *            the Strings to replace them with, no-op if null
    +     * @return the text with any replacements processed, <code>null</code> if
    +     *         null String input
    +     * @throws IndexOutOfBoundsException
    +     *             if the lengths of the arrays are not the same (null is ok,
    +     *             and/or size 0)
    +     * @since 2.4
    +     */
    +    public static String replaceEach(String text, String[] searchList, String[] replacementList) {
    +        return replaceEach(text, searchList, replacementList, false, 0);
    +    }
    +
    +    /**
    +     * <p>
    +     * Replaces all occurrences of Strings within another String.
    +     * </p>
    +     *
    +     * <p>
    +     * A <code>null</code> reference passed to this method is a no-op, or if
    +     * any "search string" or "string to replace" is null, that replace will be
    +     * ignored.
    +     * </p>
    +     *
    +     * <pre>
    +     *  StringUtils.replaceEach(null, *, *, *) = null
    +     *  StringUtils.replaceEach("", *, *, *) = ""
    +     *  StringUtils.replaceEach("aba", null, null, *) = "aba"
    +     *  StringUtils.replaceEach("aba", new String[0], null, *) = "aba"
    +     *  StringUtils.replaceEach("aba", null, new String[0], *) = "aba"
    +     *  StringUtils.replaceEach("aba", new String[]{"a"}, null, *) = "aba"
    +     *  StringUtils.replaceEach("aba", new String[]{"a"}, new String[]{""}, *) = "b"
    +     *  StringUtils.replaceEach("aba", new String[]{null}, new String[]{"a"}, *) = "aba"
    +     *  StringUtils.replaceEach("abcde", new String[]{"ab", "d"}, new String[]{"w", "t"}, *) = "wcte"
    +     *  (example of how it repeats)
    +     *  StringUtils.replaceEach("abcde", new String[]{"ab", "d"}, new String[]{"d", "t"}, false) = "dcte"
    +     *  StringUtils.replaceEach("abcde", new String[]{"ab", "d"}, new String[]{"d", "t"}, true) = "tcte"
    +     *  StringUtils.replaceEach("abcde", new String[]{"ab", "d"}, new String[]{"d", "ab"}, *) = IllegalArgumentException
    +     * </pre>
    +     *
    +     * @param text
    +     *            text to search and replace in, no-op if null
    +     * @param searchList
    +     *            the Strings to search for, no-op if null
    +     * @param replacementList
    +     *            the Strings to replace them with, no-op if null
    +     * @param repeat if true, then replace repeatedly
    +     *       until there are no more possible replacements or timeToLive < 0
    +     * @param timeToLive
    +     *            if less than 0 then there is a circular reference and endless
    +     *            loop
    +     * @return the text with any replacements processed, <code>null</code> if
    +     *         null String input
    +     * @throws IllegalArgumentException
    +     *             if the search is repeating and there is an endless loop due
    +     *             to outputs of one being inputs to another
    +     * @throws IndexOutOfBoundsException
    +     *             if the lengths of the arrays are not the same (null is ok,
    +     *             and/or size 0)
    +     * @since 2.4
    +     */
    +    private static String replaceEach(String text, String[] searchList, String[] replacementList,
    +                                      boolean repeat, int timeToLive)
    +    {
    +
    +        // mchyzer Performance note: This creates very few new objects (one major goal)
    +        // let me know if there are performance requests, we can create a harness to measure
    +
    +        if (text == null || text.length() == 0 || searchList == null ||
    +            searchList.length == 0 || replacementList == null || replacementList.length == 0)
    +        {
    +            return text;
    +        }
    +
    +        // if recursing, this shouldnt be less than 0
    +        if (timeToLive < 0) {
    +            throw new IllegalStateException("TimeToLive of " + timeToLive + " is less than 0: " + text);
    +        }
    +
    +        int searchLength = searchList.length;
    +        int replacementLength = replacementList.length;
    +
    +        // make sure lengths are ok, these need to be equal
    +        if (searchLength != replacementLength) {
    +            throw new IllegalArgumentException("Search and Replace array lengths don't match: "
    +                + searchLength
    +                + " vs "
    +                + replacementLength);
    +        }
    +
    +        // keep track of which still have matches
    +        boolean[] noMoreMatchesForReplIndex = new boolean[searchLength];
    +
    +        // index on index that the match was found
    +        int textIndex = -1;
    +        int replaceIndex = -1;
    +        int tempIndex = -1;
    +
    +        // index of replace array that will replace the search string found
    +        // NOTE: logic duplicated below START
    +        for (int i = 0; i < searchLength; i++) {
    +            if (noMoreMatchesForReplIndex[i] || searchList[i] == null ||
    +                searchList[i].length() == 0 || replacementList[i] == null)
    +            {
    +                continue;
    +            }
    +            tempIndex = text.indexOf(searchList[i]);
    +
    +            // see if we need to keep searching for this
    +            if (tempIndex == -1) {
    +                noMoreMatchesForReplIndex[i] = true;
    +            } else {
    +                if (textIndex == -1 || tempIndex < textIndex) {
    +                    textIndex = tempIndex;
    +                    replaceIndex = i;
    +                }
    +            }
    +        }
    +        // NOTE: logic mostly below END
    +
    +        // no search strings found, we are done
    +        if (textIndex == -1) {
    +            return text;
    +        }
    +
    +        int start = 0;
    +
    +        // get a good guess on the size of the result buffer so it doesnt have to double if it goes over a bit
    +        int increase = 0;
    +
    +        // count the replacement text elements that are larger than their corresponding text being replaced
    +        for (int i = 0; i < searchList.length; i++) {
    +            int greater = replacementList[i].length() - searchList[i].length();
    +            if (greater > 0) {
    +                increase += 3 * greater; // assume 3 matches
    +            }
    +        }
    +        // have upper-bound at 20% increase, then let Java take over
    +        increase = Math.min(increase, text.length() / 5);
    +
    +        StringBuffer buf = new StringBuffer(text.length() + increase);
    +
    +        while (textIndex != -1) {
    +
    +            for (int i = start; i < textIndex; i++) {
    +                buf.append(text.charAt(i));
    +            }
    +            buf.append(replacementList[replaceIndex]);
    +
    +            start = textIndex + searchList[replaceIndex].length();
    +
    +            textIndex = -1;
    +            replaceIndex = -1;
    +            tempIndex = -1;
    +            // find the next earliest match
    +            // NOTE: logic mostly duplicated above START
    +            for (int i = 0; i < searchLength; i++) {
    +                if (noMoreMatchesForReplIndex[i] || searchList[i] == null ||
    +                    searchList[i].length() == 0 || replacementList[i] == null)
    +                {
    +                    continue;
    +                }
    +                tempIndex = text.indexOf(searchList[i], start);
    +
    +                // see if we need to keep searching for this
    +                if (tempIndex == -1) {
    +                    noMoreMatchesForReplIndex[i] = true;
    +                } else {
    +                    if (textIndex == -1 || tempIndex < textIndex) {
    +                        textIndex = tempIndex;
    +                        replaceIndex = i;
    +                    }
    +                }
    +            }
    +            // NOTE: logic duplicated above END
    +
    +        }
    +        int textLength = text.length();
    +        for (int i = start; i < textLength; i++) {
    +            buf.append(text.charAt(i));
    +        }
    +        String result = buf.toString();
    +        if (!repeat) {
    +            return result;
    +        }
    +
    +        return replaceEach(result, searchList, replacementList, repeat, timeToLive - 1);
    +    }
    +
    +    // Joining
    +    //-----------------------------------------------------------------------
    +    /**
    +     * <p>Joins the elements of the provided array into a single String
    +     * containing the provided list of elements.</p>
    +     *
    +     * <p>No separator is added to the joined String.
    +     * Null objects or empty strings within the array are represented by
    +     * empty strings.</p>
    +     *
    +     * <pre>
    +     * StringUtils.join(null)            = null
    +     * StringUtils.join([])              = ""
    +     * StringUtils.join([null])          = ""
    +     * StringUtils.join(["a", "b", "c"]) = "abc"
    +     * StringUtils.join([null, "", "a"]) = "a"
    +     * </pre>
    +     *
    +     * @param <T> the specific type of values to join together
    +     * @param elements  the values to join together, may be null
    +     * @return the joined String, {@code null} if null array input
    +     * @since 2.0
    +     * @since 3.0 Changed signature to use varargs
    +     */
    +    public static <T> String join(T... elements) {
    +        return join(elements, null);
    +    }
    +
    +    /**
    +     * <p>Joins the elements of the provided array into a single String
    +     * containing the provided list of elements.</p>
    +     *
    +     * <p>No delimiter is added before or after the list.
    +     * Null objects or empty strings within the array are represented by
    +     * empty strings.</p>
    +     *
    +     * <pre>
    +     * StringUtils.join(null, *)               = null
    +     * StringUtils.join([], *)                 = ""
    +     * StringUtils.join([null], *)             = ""
    +     * StringUtils.join(["a", "b", "c"], ';')  = "a;b;c"
    +     * StringUtils.join(["a", "b", "c"], null) = "abc"
    +     * StringUtils.join([null, "", "a"], ';')  = ";;a"
    +     * </pre>
    +     *
    +     * @param array  the array of values to join together, may be null
    +     * @param separator  the separator character to use
    +     * @return the joined String, {@code null} if null array input
    +     * @since 2.0
    +     */
    +    public static String join(Object[] array, char separator) {
    +        if (array == null) {
    +            return null;
    +        }
    +
    +        return join(array, separator, 0, array.length);
    +    }
    +
    +    /**
    +     * <p>Joins the elements of the provided array into a single String
    +     * containing the provided list of elements.</p>
    +     *
    +     * <p>No delimiter is added before or after the list.
    +     * Null objects or empty strings within the array are represented by
    +     * empty strings.</p>
    +     *
    +     * <pre>
    +     * StringUtils.join(null, *)               = null
    +     * StringUtils.join([], *)                 = ""
    +     * StringUtils.join([null], *)             = ""
    +     * StringUtils.join(["a", "b", "c"], ';')  = "a;b;c"
    +     * StringUtils.join(["a", "b", "c"], null) = "abc"
    +     * StringUtils.join([null, "", "a"], ';')  = ";;a"
    +     * </pre>
    +     *
    +     * @param array  the array of values to join together, may be null
    +     * @param separator  the separator character to use
    +     * @param startIndex the first index to start joining from.  It is
    +     * an error to pass in an end index past the end of the array
    +     * @param endIndex the index to stop joining from (exclusive). It is
    +     * an error to pass in an end index past the end of the array
    +     * @return the joined String, {@code null} if null array input
    +     * @since 2.0
    +     */
    +    public static String join(Object[] array, char separator, int startIndex, int endIndex) {
    +        if (array == null) {
    +            return null;
    +        }
    +        int noOfItems = (endIndex - startIndex);
    +        if (noOfItems <= 0) {
    +            return EMPTY;
    +        }
    +
    +        StringBuilder buf = new StringBuilder(noOfItems * 16);
    +
    +        for (int i = startIndex; i < endIndex; i++) {
    +            if (i > startIndex) {
    +                buf.append(separator);
    +            }
    +            if (array[i] != null) {
    +                buf.append(array[i]);
    +            }
    +        }
    +        return buf.toString();
    +    }
    +
    +    /**
    +     * <p>Joins the elements of the provided array into a single String
    +     * containing the provided list of elements.</p>
    +     *
    +     * <p>No delimiter is added before or after the list.
    +     * A {@code null} separator is the same as an empty String ("").
    +     * Null objects or empty strings within the array are represented by
    +     * empty strings.</p>
    +     *
    +     * <pre>
    +     * StringUtils.join(null, *)                = null
    +     * StringUtils.join([], *)                  = ""
    +     * StringUtils.join([null], *)              = ""
    +     * StringUtils.join(["a", "b", "c"], "--")  = "a--b--c"
    +     * StringUtils.join(["a", "b", "c"], null)  = "abc"
    +     * StringUtils.join(["a", "b", "c"], "")    = "abc"
    +     * StringUtils.join([null, "", "a"], ',')   = ",,a"
    +     * </pre>
    +     *
    +     * @param array  the array of values to join together, may be null
    +     * @param separator  the separator character to use, null treated as ""
    +     * @return the joined String, {@code null} if null array input
    +     */
    +    public static String join(Object[] array, String separator) {
    +        if (array == null) {
    +            return null;
    +        }
    +        return join(array, separator, 0, array.length);
    +    }
    +
    +    /**
    +     * <p>Joins the elements of the provided array into a single String
    +     * containing the provided list of elements.</p>
    +     *
    +     * <p>No delimiter is added before or after the list.
    +     * A {@code null} separator is the same as an empty String ("").
    +     * Null objects or empty strings within the array are represented by
    +     * empty strings.</p>
    +     *
    +     * <pre>
    +     * StringUtils.join(null, *)                = null
    +     * StringUtils.join([], *)                  = ""
    +     * StringUtils.join([null], *)              = ""
    +     * StringUtils.join(["a", "b", "c"], "--")  = "a--b--c"
    +     * StringUtils.join(["a", "b", "c"], null)  = "abc"
    +     * StringUtils.join(["a", "b", "c"], "")    = "abc"
    +     * StringUtils.join([null, "", "a"], ',')   = ",,a"
    +     * </pre>
    +     *
    +     * @param array  the array of values to join together, may be null
    +     * @param separator  the separator character to use, null treated as ""
    +     * @param startIndex the first index to start joining from.  It is
    +     * an error to pass in an end index past the end of the array
    +     * @param endIndex the index to stop joining from (exclusive). It is
    +     * an error to pass in an end index past the end of the array
    +     * @return the joined String, {@code null} if null array input
    +     */
    +    public static String join(Object[] array, String separator, int startIndex, int endIndex) {
    +        if (array == null) {
    +            return null;
    +        }
    +        if (separator == null) {
    +            separator = EMPTY;
    +        }
    +
    +        // endIndex - startIndex > 0:   Len = NofStrings *(len(firstString) + len(separator))
    +        //           (Assuming that all Strings are roughly equally long)
    +        int noOfItems = (endIndex - startIndex);
    +        if (noOfItems <= 0) {
    +            return EMPTY;
    +        }
    +
    +        StringBuilder buf = new StringBuilder(noOfItems * 16);
    +
    +        for (int i = startIndex; i < endIndex; i++) {
    +            if (i > startIndex) {
    +                buf.append(separator);
    +            }
    +            if (array[i] != null) {
    +                buf.append(array[i]);
    +            }
    +        }
    +        return buf.toString();
    +    }
    +
    +    private StringUtils() {}
    +
    +    // -------------------------------------------------------------------------
    +    // Custom additions to StringUtils. The following methods are not part of
    +    // Apache's commons-lang library
    +    // -------------------------------------------------------------------------
    +
    +    /**
    +     * Convert a string to camel case
    +     */
    +    public static String toCamelCase(String string) {
    +        StringBuilder result = new StringBuilder();
    +
    +        for (String word : string.split("_")) {
    +
    +            // Uppercase first letter of a word
    +            if (word.length() > 0) {
    +
    +                // [#82] - If a word starts with a digit, prevail the
    +                // underscore to prevent naming clashes
    +                if (Character.isDigit(word.charAt(0))) {
    +                    result.append("_");
    +                }
    +
    +                result.append(word.substring(0, 1).toUpperCase());
    +                result.append(word.substring(1).toLowerCase());
    +            }
    +
    +            // If no letter exists, prevail the underscore (e.g. leading
    +            // underscores)
    +            else {
    +                result.append("_");
    +            }
    +        }
    +
    +        return result.toString();
    +    }
    +
    +    /**
    +     * Convert a string to camel case starting with a lower case letter
    +     */
    +    public static String toCamelCaseLC(String string) {
    +        String cc = toCamelCase(string);
    +        return cc.substring(0, 1).toLowerCase() + cc.substring(1);
    +    }
    +
    +    /**
    +     * A custom adaptation of {@link Pattern#split(CharSequence, int)}.
    +     * <p>
    +     * This is useful if the matched split-tokens should be returned as well.
    +     * For example: <code><pre>
    +     * split("e", "hello world")    // ["h", "e", "llo world"]
    +     * split("o", "hello world")    // ["hell", "o", " w", "o", "rld"]
    +     * split("[eo]", "hello world") // ["h", "e", "ll", "o", " w", "o", "rld"]
    +     * </pre></code>
    +     * <p>
    +     * The result will always be an odd-length array.
    +     */
    +    public static String[] split(String regex, CharSequence input) {
    +        int index = 0;
    +        ArrayList<String> matchList = new ArrayList<String>();
    +        Matcher m = Pattern.compile(regex).matcher(input);
    +
    +        // Add segments before each match found
    +        while (m.find()) {
    +            matchList.add(input.subSequence(index, m.start()).toString());
    +            matchList.add(input.subSequence(m.start(), m.end()).toString());
    +
    +            index = m.end();
    +        }
    +
    +        // If no match was found, return this
    +        if (index == 0)
    +            return new String[] { input.toString() };
    +
    +        // Add remaining segment
    +        matchList.add(input.subSequence(index, input.length()).toString());
    +
    +        // Construct result
    +        Iterator<String> it = matchList.iterator();
    +        while (it.hasNext()) {
    +            if ("".equals(it.next())) {
    +                it.remove();
    +            }
    +        }
    +
    +        String[] result = new String[matchList.size()];
    +        return matchList.toArray(result);
    +    }
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/tools/csv/CSVParser.java b/jOOQ/src/main/java/org/jooq/tools/csv/CSVParser.java
    new file mode 100644
    index 00000000000..1360bcff25a
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/tools/csv/CSVParser.java
    @@ -0,0 +1,345 @@
    +/**
    + Copyright 2005 Bytecode Pty Ltd.
    +
    + Licensed 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.
    + */
    +package org.jooq.tools.csv;
    +
    +import java.io.IOException;
    +import java.util.ArrayList;
    +import java.util.List;
    +
    +/**
    + * A very simple CSV parser released under a commercial-friendly license. This
    + * just implements splitting a single line into fields.
    + *
    + * @author Glen Smith
    + * @author Rainer Pruy
    + */
    +public class CSVParser {
    +
    +    private final char          separator;
    +    private final char          quotechar;
    +    private final char          escape;
    +    private final boolean       strictQuotes;
    +
    +    private String              pending;
    +    private boolean             inField                           = false;
    +
    +    private final boolean       ignoreLeadingWhiteSpace;
    +
    +    /**
    +     * The default separator to use if none is supplied to the constructor.
    +     */
    +    public static final char    DEFAULT_SEPARATOR                 = ',';
    +    public static final int     INITIAL_READ_SIZE                 = 128;
    +
    +    /**
    +     * The default quote character to use if none is supplied to the
    +     * constructor.
    +     */
    +    public static final char    DEFAULT_QUOTE_CHARACTER           = '"';
    +
    +    /**
    +     * The default escape character to use if none is supplied to the
    +     * constructor.
    +     */
    +    public static final char    DEFAULT_ESCAPE_CHARACTER          = '\\';
    +
    +    /**
    +     * The default strict quote behavior to use if none is supplied to the
    +     * constructor
    +     */
    +    public static final boolean DEFAULT_STRICT_QUOTES             = false;
    +
    +    /**
    +     * The default leading whitespace behavior to use if none is supplied to the
    +     * constructor
    +     */
    +    public static final boolean DEFAULT_IGNORE_LEADING_WHITESPACE = true;
    +
    +    /**
    +     * This is the "null" character - if a value is set to this then it is
    +     * ignored. I.E. if the quote character is set to null then there is no
    +     * quote character.
    +     */
    +    public static final char    NULL_CHARACTER                    = '\0';
    +
    +    /**
    +     * Constructs CSVParser using a comma for the separator.
    +     */
    +    public CSVParser() {
    +        this(DEFAULT_SEPARATOR, DEFAULT_QUOTE_CHARACTER, DEFAULT_ESCAPE_CHARACTER);
    +    }
    +
    +    /**
    +     * Constructs CSVParser with supplied separator.
    +     *
    +     * @param separator the delimiter to use for separating entries.
    +     */
    +    public CSVParser(char separator) {
    +        this(separator, DEFAULT_QUOTE_CHARACTER, DEFAULT_ESCAPE_CHARACTER);
    +    }
    +
    +    /**
    +     * Constructs CSVParser with supplied separator and quote char.
    +     *
    +     * @param separator the delimiter to use for separating entries
    +     * @param quotechar the character to use for quoted elements
    +     */
    +    public CSVParser(char separator, char quotechar) {
    +        this(separator, quotechar, DEFAULT_ESCAPE_CHARACTER);
    +    }
    +
    +    /**
    +     * Constructs CSVReader with supplied separator and quote char.
    +     *
    +     * @param separator the delimiter to use for separating entries
    +     * @param quotechar the character to use for quoted elements
    +     * @param escape the character to use for escaping a separator or quote
    +     */
    +    public CSVParser(char separator, char quotechar, char escape) {
    +        this(separator, quotechar, escape, DEFAULT_STRICT_QUOTES);
    +    }
    +
    +    /**
    +     * Constructs CSVReader with supplied separator and quote char. Allows
    +     * setting the "strict quotes" flag
    +     *
    +     * @param separator the delimiter to use for separating entries
    +     * @param quotechar the character to use for quoted elements
    +     * @param escape the character to use for escaping a separator or quote
    +     * @param strictQuotes if true, characters outside the quotes are ignored
    +     */
    +    public CSVParser(char separator, char quotechar, char escape, boolean strictQuotes) {
    +        this(separator, quotechar, escape, strictQuotes, DEFAULT_IGNORE_LEADING_WHITESPACE);
    +    }
    +
    +    /**
    +     * Constructs CSVReader with supplied separator and quote char. Allows
    +     * setting the "strict quotes" and "ignore leading whitespace" flags
    +     *
    +     * @param separator the delimiter to use for separating entries
    +     * @param quotechar the character to use for quoted elements
    +     * @param escape the character to use for escaping a separator or quote
    +     * @param strictQuotes if true, characters outside the quotes are ignored
    +     * @param ignoreLeadingWhiteSpace if true, white space in front of a quote
    +     *            in a field is ignored
    +     */
    +    public CSVParser(char separator, char quotechar, char escape, boolean strictQuotes, boolean ignoreLeadingWhiteSpace) {
    +        if (anyCharactersAreTheSame(separator, quotechar, escape)) {
    +            throw new UnsupportedOperationException("The separator, quote, and escape characters must be different!");
    +        }
    +        if (separator == NULL_CHARACTER) {
    +            throw new UnsupportedOperationException("The separator character must be defined!");
    +        }
    +        this.separator = separator;
    +        this.quotechar = quotechar;
    +        this.escape = escape;
    +        this.strictQuotes = strictQuotes;
    +        this.ignoreLeadingWhiteSpace = ignoreLeadingWhiteSpace;
    +    }
    +
    +    private static boolean anyCharactersAreTheSame(char separator, char quotechar, char escape) {
    +        return isSameCharacter(separator, quotechar) || isSameCharacter(separator, escape)
    +            || isSameCharacter(quotechar, escape);
    +    }
    +
    +    private static boolean isSameCharacter(char c1, char c2) {
    +        return c1 != NULL_CHARACTER && c1 == c2;
    +    }
    +
    +    /**
    +     * @return true if something was left over from last call(s)
    +     */
    +    public boolean isPending() {
    +        return pending != null;
    +    }
    +
    +    public String[] parseLineMulti(String nextLine) throws IOException {
    +        return parseLine(nextLine, true);
    +    }
    +
    +    public String[] parseLine(String nextLine) throws IOException {
    +        return parseLine(nextLine, false);
    +    }
    +
    +    /**
    +     * Parses an incoming String and returns an array of elements.
    +     *
    +     * @param nextLine the string to parse
    +     * @param multi
    +     * @return the comma-tokenized list of elements, or null if nextLine is null
    +     * @throws IOException if bad things happen during the read
    +     */
    +    private String[] parseLine(String nextLine, boolean multi) throws IOException {
    +
    +        if (!multi && pending != null) {
    +            pending = null;
    +        }
    +
    +        if (nextLine == null) {
    +            if (pending != null) {
    +                String s = pending;
    +                pending = null;
    +                return new String[] { s };
    +            }
    +            else {
    +                return null;
    +            }
    +        }
    +
    +        List<String> tokensOnThisLine = new ArrayList<String>();
    +        StringBuilder sb = new StringBuilder(INITIAL_READ_SIZE);
    +        boolean inQuotes = false;
    +        if (pending != null) {
    +            sb.append(pending);
    +            pending = null;
    +            inQuotes = true;
    +        }
    +        for (int i = 0; i < nextLine.length(); i++) {
    +
    +            char c = nextLine.charAt(i);
    +            if (c == this.escape) {
    +                if (isNextCharacterEscapable(nextLine, inQuotes || inField, i)) {
    +                    sb.append(nextLine.charAt(i + 1));
    +                    i++;
    +                }
    +            }
    +            else if (c == quotechar) {
    +                if (isNextCharacterEscapedQuote(nextLine, inQuotes || inField, i)) {
    +                    sb.append(nextLine.charAt(i + 1));
    +                    i++;
    +                }
    +                else {
    +                    // inQuotes = !inQuotes;
    +
    +                    // the tricky case of an embedded quote in the middle:
    +                    // a,bc"d"ef,g
    +                    if (!strictQuotes) {
    +                        if (i > 2 // not on the beginning of the line
    +                            && nextLine.charAt(i - 1) != this.separator // not
    +                                                                        // at
    +                                                                        // the
    +                                                                        // beginning
    +                                                                        // of an
    +                                                                        // escape
    +                                                                        // sequence
    +                            && nextLine.length() > (i + 1) && nextLine.charAt(i + 1) != this.separator // not
    +                                                                                                       // at
    +                                                                                                       // the
    +                                                                                                       // end
    +                                                                                                       // of
    +                                                                                                       // an
    +                                                                                                       // escape
    +                                                                                                       // sequence
    +                        ) {
    +
    +                            if (ignoreLeadingWhiteSpace && sb.length() > 0 && isAllWhiteSpace(sb)) {
    +                                sb.setLength(0); // discard white space leading
    +                                                 // up to quote
    +                            }
    +                            else {
    +                                sb.append(c);
    +                                // continue;
    +                            }
    +
    +                        }
    +                    }
    +
    +                    inQuotes = !inQuotes;
    +                }
    +                inField = !inField;
    +            }
    +            else if (c == separator && !inQuotes) {
    +                tokensOnThisLine.add(sb.toString());
    +                sb.setLength(0); // start work on next token
    +                inField = false;
    +            }
    +            else {
    +                if (!strictQuotes || inQuotes) {
    +                    sb.append(c);
    +                    inField = true;
    +                }
    +            }
    +        }
    +        // line is done - check status
    +        if (inQuotes) {
    +            if (multi) {
    +                // continuing a quoted section, re-append newline
    +                sb.append("\n");
    +                pending = sb.toString();
    +                sb = null; // this partial content is not to be added to field
    +                           // list yet
    +            }
    +            else {
    +                throw new IOException("Un-terminated quoted field at end of CSV line");
    +            }
    +        }
    +        if (sb != null) {
    +            tokensOnThisLine.add(sb.toString());
    +        }
    +        return tokensOnThisLine.toArray(new String[tokensOnThisLine.size()]);
    +
    +    }
    +
    +    /**
    +     * precondition: the current character is a quote or an escape
    +     *
    +     * @param nextLine the current line
    +     * @param inQuotes true if the current context is quoted
    +     * @param i current index in line
    +     * @return true if the following character is a quote
    +     */
    +    private boolean isNextCharacterEscapedQuote(String nextLine, boolean inQuotes, int i) {
    +        return inQuotes // we are in quotes, therefore there can be escaped
    +                        // quotes in here.
    +            && nextLine.length() > (i + 1) // there is indeed another character
    +                                           // to check.
    +            && nextLine.charAt(i + 1) == quotechar;
    +    }
    +
    +    /**
    +     * precondition: the current character is an escape
    +     *
    +     * @param nextLine the current line
    +     * @param inQuotes true if the current context is quoted
    +     * @param i current index in line
    +     * @return true if the following character is a quote
    +     */
    +    protected boolean isNextCharacterEscapable(String nextLine, boolean inQuotes, int i) {
    +        return inQuotes // we are in quotes, therefore there can be escaped
    +                        // quotes in here.
    +            && nextLine.length() > (i + 1) // there is indeed another character
    +                                           // to check.
    +            && (nextLine.charAt(i + 1) == quotechar || nextLine.charAt(i + 1) == this.escape);
    +    }
    +
    +    /**
    +     * precondition: sb.length() > 0
    +     *
    +     * @param sb A sequence of characters to examine
    +     * @return true if every character in the sequence is whitespace
    +     */
    +    protected boolean isAllWhiteSpace(CharSequence sb) {
    +        boolean result = true;
    +        for (int i = 0; i < sb.length(); i++) {
    +            char c = sb.charAt(i);
    +
    +            if (!Character.isWhitespace(c)) {
    +                return false;
    +            }
    +        }
    +        return result;
    +    }
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/tools/csv/CSVReader.java b/jOOQ/src/main/java/org/jooq/tools/csv/CSVReader.java
    new file mode 100644
    index 00000000000..9a8dd5da596
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/tools/csv/CSVReader.java
    @@ -0,0 +1,239 @@
    +/**
    + Copyright 2005 Bytecode Pty Ltd.
    +
    + Licensed 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.
    + */
    +package org.jooq.tools.csv;
    +
    +import java.io.BufferedReader;
    +import java.io.Closeable;
    +import java.io.IOException;
    +import java.io.Reader;
    +import java.util.ArrayList;
    +import java.util.List;
    +
    +/**
    + * A very simple CSV reader released under a commercial-friendly license.
    + *
    + * @author Glen Smith
    + */
    +public class CSVReader implements Closeable {
    +
    +    private BufferedReader  br;
    +    private boolean         hasNext            = true;
    +    private CSVParser       parser;
    +    private int             skipLines;
    +    private boolean         linesSkiped;
    +
    +    /**
    +     * The default line to start reading.
    +     */
    +    public static final int DEFAULT_SKIP_LINES = 0;
    +
    +    /**
    +     * Constructs CSVReader using a comma for the separator.
    +     *
    +     * @param reader the reader to an underlying CSV source.
    +     */
    +    public CSVReader(Reader reader) {
    +        this(reader, CSVParser.DEFAULT_SEPARATOR, CSVParser.DEFAULT_QUOTE_CHARACTER, CSVParser.DEFAULT_ESCAPE_CHARACTER);
    +    }
    +
    +    /**
    +     * Constructs CSVReader with supplied separator.
    +     *
    +     * @param reader the reader to an underlying CSV source.
    +     * @param separator the delimiter to use for separating entries.
    +     */
    +    public CSVReader(Reader reader, char separator) {
    +        this(reader, separator, CSVParser.DEFAULT_QUOTE_CHARACTER, CSVParser.DEFAULT_ESCAPE_CHARACTER);
    +    }
    +
    +    /**
    +     * Constructs CSVReader with supplied separator and quote char.
    +     *
    +     * @param reader the reader to an underlying CSV source.
    +     * @param separator the delimiter to use for separating entries
    +     * @param quotechar the character to use for quoted elements
    +     */
    +    public CSVReader(Reader reader, char separator, char quotechar) {
    +        this(reader, separator, quotechar, CSVParser.DEFAULT_ESCAPE_CHARACTER, DEFAULT_SKIP_LINES,
    +            CSVParser.DEFAULT_STRICT_QUOTES);
    +    }
    +
    +    /**
    +     * Constructs CSVReader with supplied separator, quote char and quote
    +     * handling behavior.
    +     *
    +     * @param reader the reader to an underlying CSV source.
    +     * @param separator the delimiter to use for separating entries
    +     * @param quotechar the character to use for quoted elements
    +     * @param strictQuotes sets if characters outside the quotes are ignored
    +     */
    +    public CSVReader(Reader reader, char separator, char quotechar, boolean strictQuotes) {
    +        this(reader, separator, quotechar, CSVParser.DEFAULT_ESCAPE_CHARACTER, DEFAULT_SKIP_LINES, strictQuotes);
    +    }
    +
    +    /**
    +     * Constructs CSVReader with supplied separator and quote char.
    +     *
    +     * @param reader the reader to an underlying CSV source.
    +     * @param separator the delimiter to use for separating entries
    +     * @param quotechar the character to use for quoted elements
    +     * @param escape the character to use for escaping a separator or quote
    +     */
    +
    +    public CSVReader(Reader reader, char separator, char quotechar, char escape) {
    +        this(reader, separator, quotechar, escape, DEFAULT_SKIP_LINES, CSVParser.DEFAULT_STRICT_QUOTES);
    +    }
    +
    +    /**
    +     * Constructs CSVReader with supplied separator and quote char.
    +     *
    +     * @param reader the reader to an underlying CSV source.
    +     * @param separator the delimiter to use for separating entries
    +     * @param quotechar the character to use for quoted elements
    +     * @param line the line number to skip for start reading
    +     */
    +    public CSVReader(Reader reader, char separator, char quotechar, int line) {
    +        this(reader, separator, quotechar, CSVParser.DEFAULT_ESCAPE_CHARACTER, line, CSVParser.DEFAULT_STRICT_QUOTES);
    +    }
    +
    +    /**
    +     * Constructs CSVReader with supplied separator and quote char.
    +     *
    +     * @param reader the reader to an underlying CSV source.
    +     * @param separator the delimiter to use for separating entries
    +     * @param quotechar the character to use for quoted elements
    +     * @param escape the character to use for escaping a separator or quote
    +     * @param line the line number to skip for start reading
    +     */
    +    public CSVReader(Reader reader, char separator, char quotechar, char escape, int line) {
    +        this(reader, separator, quotechar, escape, line, CSVParser.DEFAULT_STRICT_QUOTES);
    +    }
    +
    +    /**
    +     * Constructs CSVReader with supplied separator and quote char.
    +     *
    +     * @param reader the reader to an underlying CSV source.
    +     * @param separator the delimiter to use for separating entries
    +     * @param quotechar the character to use for quoted elements
    +     * @param escape the character to use for escaping a separator or quote
    +     * @param line the line number to skip for start reading
    +     * @param strictQuotes sets if characters outside the quotes are ignored
    +     */
    +    public CSVReader(Reader reader, char separator, char quotechar, char escape, int line, boolean strictQuotes) {
    +        this(reader, separator, quotechar, escape, line, strictQuotes, CSVParser.DEFAULT_IGNORE_LEADING_WHITESPACE);
    +    }
    +
    +    /**
    +     * Constructs CSVReader with supplied separator and quote char.
    +     *
    +     * @param reader the reader to an underlying CSV source.
    +     * @param separator the delimiter to use for separating entries
    +     * @param quotechar the character to use for quoted elements
    +     * @param escape the character to use for escaping a separator or quote
    +     * @param line the line number to skip for start reading
    +     * @param strictQuotes sets if characters outside the quotes are ignored
    +     * @param ignoreLeadingWhiteSpace it true, parser should ignore white space
    +     *            before a quote in a field
    +     */
    +    public CSVReader(Reader reader, char separator, char quotechar, char escape, int line, boolean strictQuotes,
    +        boolean ignoreLeadingWhiteSpace) {
    +        this.br = new BufferedReader(reader);
    +        this.parser = new CSVParser(separator, quotechar, escape, strictQuotes, ignoreLeadingWhiteSpace);
    +        this.skipLines = line;
    +    }
    +
    +    /**
    +     * Reads the entire file into a List with each element being a String[] of
    +     * tokens.
    +     *
    +     * @return a List of String[], with each String[] representing a line of the
    +     *         file.
    +     * @throws IOException if bad things happen during the read
    +     */
    +    public List<String[]> readAll() throws IOException {
    +
    +        List<String[]> allElements = new ArrayList<String[]>();
    +        while (hasNext) {
    +            String[] nextLineAsTokens = readNext();
    +            if (nextLineAsTokens != null)
    +                allElements.add(nextLineAsTokens);
    +        }
    +        return allElements;
    +
    +    }
    +
    +    /**
    +     * Reads the next line from the buffer and converts to a string array.
    +     *
    +     * @return a string array with each comma-separated element as a separate
    +     *         entry.
    +     * @throws IOException if bad things happen during the read
    +     */
    +    public String[] readNext() throws IOException {
    +
    +        String[] result = null;
    +        do {
    +            String nextLine = getNextLine();
    +            if (!hasNext) {
    +                return result; // should throw if still pending?
    +            }
    +            String[] r = parser.parseLineMulti(nextLine);
    +            if (r.length > 0) {
    +                if (result == null) {
    +                    result = r;
    +                }
    +                else {
    +                    String[] t = new String[result.length + r.length];
    +                    System.arraycopy(result, 0, t, 0, result.length);
    +                    System.arraycopy(r, 0, t, result.length, r.length);
    +                    result = t;
    +                }
    +            }
    +        }
    +        while (parser.isPending());
    +        return result;
    +    }
    +
    +    /**
    +     * Reads the next line from the file.
    +     *
    +     * @return the next line from the file without trailing newline
    +     * @throws IOException if bad things happen during the read
    +     */
    +    private String getNextLine() throws IOException {
    +        if (!this.linesSkiped) {
    +            for (int i = 0; i < skipLines; i++) {
    +                br.readLine();
    +            }
    +            this.linesSkiped = true;
    +        }
    +        String nextLine = br.readLine();
    +        if (nextLine == null) {
    +            hasNext = false;
    +        }
    +        return hasNext ? nextLine : null;
    +    }
    +
    +    /**
    +     * Closes the underlying reader.
    +     *
    +     * @throws IOException if the close fails
    +     */
    +    @Override
    +    public void close() throws IOException {
    +        br.close();
    +    }
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/tools/json/JSONArray.java b/jOOQ/src/main/java/org/jooq/tools/json/JSONArray.java
    new file mode 100644
    index 00000000000..768c0f0e518
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/tools/json/JSONArray.java
    @@ -0,0 +1,89 @@
    +/*
    + * $Id: JSONArray.java,v 1.1 2006/04/15 14:10:48 platform Exp $
    + * Created on 2006-4-10
    + */
    +package org.jooq.tools.json;
    +
    +import java.io.IOException;
    +import java.io.Writer;
    +import java.util.Iterator;
    +import java.util.List;
    +
    +/**
    + * A JSON array. JSONObject supports java.util.List interface.
    + *
    + * @author FangYidong<fangyidong@yahoo.com.cn>
    + */
    +public class JSONArray {
    +
    +    /**
    +     * Encode a list into JSON text and write it to out. If this list is also a
    +     * JSONStreamAware or a JSONAware, JSONStreamAware and JSONAware specific
    +     * behaviours will be ignored at this top level.
    +     *
    +     * @see JSONValue#writeJSONString(Object, Writer)
    +     * @param list
    +     * @param out
    +     */
    +    public static void writeJSONString(List<?> list, Writer out) throws IOException {
    +        if (list == null) {
    +            out.write("null");
    +            return;
    +        }
    +
    +        boolean first = true;
    +        Iterator<?> iter = list.iterator();
    +
    +        out.write('[');
    +        while (iter.hasNext()) {
    +            if (first)
    +                first = false;
    +            else
    +                out.write(',');
    +
    +            Object value = iter.next();
    +            if (value == null) {
    +                out.write("null");
    +                continue;
    +            }
    +
    +            JSONValue.writeJSONString(value, out);
    +        }
    +        out.write(']');
    +    }
    +
    +    /**
    +     * Convert a list to JSON text. The result is a JSON array. If this list is
    +     * also a JSONAware, JSONAware specific behaviours will be omitted at this
    +     * top level.
    +     *
    +     * @see JSONValue#toJSONString(Object)
    +     * @param list
    +     * @return JSON text, or "null" if list is null.
    +     */
    +    public static String toJSONString(List<?> list) {
    +        if (list == null)
    +            return "null";
    +
    +        boolean first = true;
    +        StringBuffer sb = new StringBuffer();
    +        Iterator<?> iter = list.iterator();
    +
    +        sb.append('[');
    +        while (iter.hasNext()) {
    +            if (first)
    +                first = false;
    +            else
    +                sb.append(',');
    +
    +            Object value = iter.next();
    +            if (value == null) {
    +                sb.append("null");
    +                continue;
    +            }
    +            sb.append(JSONValue.toJSONString(value));
    +        }
    +        sb.append(']');
    +        return sb.toString();
    +    }
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/tools/json/JSONObject.java b/jOOQ/src/main/java/org/jooq/tools/json/JSONObject.java
    new file mode 100644
    index 00000000000..15ffad591eb
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/tools/json/JSONObject.java
    @@ -0,0 +1,111 @@
    +/*
    + * $Id: JSONObject.java,v 1.1 2006/04/15 14:10:48 platform Exp $
    + * Created on 2006-4-10
    + */
    +package org.jooq.tools.json;
    +
    +import java.io.IOException;
    +import java.io.Writer;
    +import java.util.Iterator;
    +import java.util.Map;
    +
    +/**
    + * A JSON object. Key value pairs are unordered. JSONObject supports
    + * java.util.Map interface.
    + *
    + * @author FangYidong<fangyidong@yahoo.com.cn>
    + */
    +public class JSONObject {
    +
    +    /**
    +     * Encode a map into JSON text and write it to out. If this map is also a
    +     * JSONAware or JSONStreamAware, JSONAware or JSONStreamAware specific
    +     * behaviours will be ignored at this top level.
    +     *
    +     * @see JSONValue#writeJSONString(Object, Writer)
    +     */
    +    public static void writeJSONString(Map<?, ?> map, Writer out) throws IOException {
    +        if (map == null) {
    +            out.write("null");
    +            return;
    +        }
    +
    +        boolean first = true;
    +        Iterator<?> iter = map.entrySet().iterator();
    +
    +        out.write('{');
    +        while (iter.hasNext()) {
    +            if (first)
    +                first = false;
    +            else
    +                out.write(',');
    +            Map.Entry<?, ?> entry = (Map.Entry<?, ?>) iter.next();
    +            out.write('\"');
    +            out.write(escape(String.valueOf(entry.getKey())));
    +            out.write('\"');
    +            out.write(':');
    +            JSONValue.writeJSONString(entry.getValue(), out);
    +        }
    +        out.write('}');
    +    }
    +
    +    /**
    +     * Convert a map to JSON text. The result is a JSON object. If this map is
    +     * also a JSONAware, JSONAware specific behaviours will be omitted at this
    +     * top level.
    +     *
    +     * @see JSONValue#toJSONString(Object)
    +     * @return JSON text, or "null" if map is null.
    +     */
    +    public static String toJSONString(Map<?, ?> map) {
    +        if (map == null)
    +            return "null";
    +
    +        StringBuffer sb = new StringBuffer();
    +        boolean first = true;
    +        Iterator<?> iter = map.entrySet().iterator();
    +
    +        sb.append('{');
    +        while (iter.hasNext()) {
    +            if (first)
    +                first = false;
    +            else
    +                sb.append(',');
    +
    +            Map.Entry<?, ?> entry = (Map.Entry<?, ?>) iter.next();
    +            toJSONString(String.valueOf(entry.getKey()), entry.getValue(), sb);
    +        }
    +        sb.append('}');
    +        return sb.toString();
    +    }
    +
    +    private static String toJSONString(String key, Object value, StringBuffer sb) {
    +        sb.append('\"');
    +        if (key == null)
    +            sb.append("null");
    +        else
    +            JSONValue.escape(key, sb);
    +        sb.append('\"').append(':');
    +
    +        sb.append(JSONValue.toJSONString(value));
    +
    +        return sb.toString();
    +    }
    +
    +    public static String toString(String key, Object value) {
    +        StringBuffer sb = new StringBuffer();
    +        toJSONString(key, value, sb);
    +        return sb.toString();
    +    }
    +
    +    /**
    +     * Escape quotes, \, /, \r, \n, \b, \f, \t and other control characters
    +     * (U+0000 through U+001F). It's the same as JSONValue.escape() only for
    +     * compatibility here.
    +     *
    +     * @see JSONValue#escape(String)
    +     */
    +    public static String escape(String s) {
    +        return JSONValue.escape(s);
    +    }
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/tools/json/JSONValue.java b/jOOQ/src/main/java/org/jooq/tools/json/JSONValue.java
    new file mode 100644
    index 00000000000..b746e89cd76
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/tools/json/JSONValue.java
    @@ -0,0 +1,196 @@
    +/*
    + * $Id: JSONValue.java,v 1.1 2006/04/15 14:37:04 platform Exp $
    + * Created on 2006-4-15
    + */
    +package org.jooq.tools.json;
    +
    +import java.io.IOException;
    +import java.io.Writer;
    +import java.util.List;
    +import java.util.Map;
    +
    +/**
    + * @author FangYidong<fangyidong@yahoo.com.cn>
    + */
    +public class JSONValue {
    +
    +    /**
    +     * Encode an object into JSON text and write it to out.
    +     * <p>
    +     * If this object is a Map or a List, and it's also a JSONStreamAware or a
    +     * JSONAware, JSONStreamAware or JSONAware will be considered firstly.
    +     * <p>
    +     * DO NOT call this method from writeJSONString(Writer) of a class that
    +     * implements both JSONStreamAware and (Map or List) with "this" as the
    +     * first parameter, use JSONObject.writeJSONString(Map, Writer) or
    +     * JSONArray.writeJSONString(List, Writer) instead.
    +     *
    +     * @see JSONObject#writeJSONString(Map, Writer)
    +     * @see JSONArray#writeJSONString(List, Writer)
    +     */
    +    public static void writeJSONString(Object value, Writer out) throws IOException {
    +        if (value == null) {
    +            out.write("null");
    +            return;
    +        }
    +
    +        if (value instanceof String) {
    +            out.write('\"');
    +            out.write(escape((String) value));
    +            out.write('\"');
    +            return;
    +        }
    +
    +        if (value instanceof Double) {
    +            if (((Double) value).isInfinite() || ((Double) value).isNaN())
    +                out.write("null");
    +            else
    +                out.write(value.toString());
    +            return;
    +        }
    +
    +        if (value instanceof Float) {
    +            if (((Float) value).isInfinite() || ((Float) value).isNaN())
    +                out.write("null");
    +            else
    +                out.write(value.toString());
    +            return;
    +        }
    +
    +        if (value instanceof Number) {
    +            out.write(value.toString());
    +            return;
    +        }
    +
    +        if (value instanceof Boolean) {
    +            out.write(value.toString());
    +            return;
    +        }
    +
    +        if (value instanceof Map) {
    +            JSONObject.writeJSONString((Map<?, ?>) value, out);
    +            return;
    +        }
    +
    +        if (value instanceof List) {
    +            JSONArray.writeJSONString((List<?>) value, out);
    +            return;
    +        }
    +
    +        out.write(value.toString());
    +    }
    +
    +    /**
    +     * Convert an object to JSON text.
    +     * <p>
    +     * If this object is a Map or a List, and it's also a JSONAware, JSONAware
    +     * will be considered firstly.
    +     * <p>
    +     * DO NOT call this method from toJSONString() of a class that implements
    +     * both JSONAware and Map or List with "this" as the parameter, use
    +     * JSONObject.toJSONString(Map) or JSONArray.toJSONString(List) instead.
    +     *
    +     * @see JSONObject#toJSONString(Map)
    +     * @see JSONArray#toJSONString(List)
    +     * @return JSON text, or "null" if value is null or it's an NaN or an INF
    +     *         number.
    +     */
    +    public static String toJSONString(Object value) {
    +        if (value == null)
    +            return "null";
    +
    +        if (value instanceof String)
    +            return "\"" + escape((String) value) + "\"";
    +
    +        if (value instanceof Double) {
    +            if (((Double) value).isInfinite() || ((Double) value).isNaN())
    +                return "null";
    +            else
    +                return value.toString();
    +        }
    +
    +        if (value instanceof Float) {
    +            if (((Float) value).isInfinite() || ((Float) value).isNaN())
    +                return "null";
    +            else
    +                return value.toString();
    +        }
    +
    +        if (value instanceof Number)
    +            return value.toString();
    +
    +        if (value instanceof Boolean)
    +            return value.toString();
    +
    +        if (value instanceof Map)
    +            return JSONObject.toJSONString((Map<?, ?>) value);
    +
    +        if (value instanceof List)
    +            return JSONArray.toJSONString((List<?>) value);
    +
    +        // Patched original according to issue 27 of JSON-simple
    +        // http://code.google.com/p/json-simple/issues/detail?id=27
    +        return "\"" + escape(value.toString()) + "\"";
    +    }
    +
    +    /**
    +     * Escape quotes, \, /, \r, \n, \b, \f, \t and other control characters
    +     * (U+0000 through U+001F).
    +     */
    +    public static String escape(String s) {
    +        if (s == null)
    +            return null;
    +        StringBuffer sb = new StringBuffer();
    +        escape(s, sb);
    +        return sb.toString();
    +    }
    +
    +    /**
    +     * @param s - Must not be null.
    +     */
    +    static void escape(String s, StringBuffer sb) {
    +        for (int i = 0; i < s.length(); i++) {
    +            char ch = s.charAt(i);
    +            switch (ch) {
    +                case '"':
    +                    sb.append("\\\"");
    +                    break;
    +                case '\\':
    +                    sb.append("\\\\");
    +                    break;
    +                case '\b':
    +                    sb.append("\\b");
    +                    break;
    +                case '\f':
    +                    sb.append("\\f");
    +                    break;
    +                case '\n':
    +                    sb.append("\\n");
    +                    break;
    +                case '\r':
    +                    sb.append("\\r");
    +                    break;
    +                case '\t':
    +                    sb.append("\\t");
    +                    break;
    +                case '/':
    +                    sb.append("\\/");
    +                    break;
    +                default:
    +                    // Reference: http://www.unicode.org/versions/Unicode5.1.0/
    +                    if ((ch >= '\u0000' && ch <= '\u001F') || (ch >= '\u007F' && ch <= '\u009F')
    +                        || (ch >= '\u2000' && ch <= '\u20FF')) {
    +                        String ss = Integer.toHexString(ch);
    +                        sb.append("\\u");
    +                        for (int k = 0; k < 4 - ss.length(); k++) {
    +                            sb.append('0');
    +                        }
    +                        sb.append(ss.toUpperCase());
    +                    }
    +                    else {
    +                        sb.append(ch);
    +                    }
    +            }
    +        }// for
    +    }
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/tools/reflect/Reflect.java b/jOOQ/src/main/java/org/jooq/tools/reflect/Reflect.java
    new file mode 100644
    index 00000000000..299495b680f
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/tools/reflect/Reflect.java
    @@ -0,0 +1,638 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOR" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq.tools.reflect;
    +
    +import java.lang.reflect.Constructor;
    +import java.lang.reflect.Field;
    +import java.lang.reflect.InvocationHandler;
    +import java.lang.reflect.Method;
    +import java.lang.reflect.Modifier;
    +import java.lang.reflect.Proxy;
    +import java.util.LinkedHashMap;
    +import java.util.Map;
    +
    +/**
    + * A wrapper for an {@link Object} or {@link Class} upon which reflective calls
    + * can be made.
    + * <p>
    + * An example of using <code>Reflect</code> is <code><pre>
    + * // Static import all reflection methods to decrease verbosity
    + * import static org.joor.Reflect.*;
    + *
    + * // Wrap an Object / Class / class name with the on() method:
    + * on("java.lang.String")
    + * // Invoke constructors using the create() method:
    + * .create("Hello World")
    + * // Invoke methods using the call() method:
    + * .call("toString")
    + * // Retrieve the wrapped object
    + *
    + * @author Lukas Eder
    + */
    +public class Reflect {
    +
    +    // ---------------------------------------------------------------------
    +    // Static API used as entrance points to the fluent API
    +    // ---------------------------------------------------------------------
    +
    +    /**
    +     * Wrap a class name.
    +     * <p>
    +     * This is the same as calling <code>on(Class.forName(name))</code>
    +     *
    +     * @param name A fully qualified class name
    +     * @return A wrapped class object, to be used for further reflection.
    +     * @throws ReflectException If any reflection exception occurred.
    +     * @see #on(Class)
    +     */
    +    public static Reflect on(String name) throws ReflectException {
    +        return on(forName(name));
    +    }
    +
    +    /**
    +     * Wrap a class.
    +     * <p>
    +     * Use this when you want to access static fields and methods on a
    +     * {@link Class} object, or as a basis for constructing objects of that
    +     * class using {@link #create(Object...)}
    +     *
    +     * @param clazz The class to be wrapped
    +     * @return A wrapped class object, to be used for further reflection.
    +     */
    +    public static Reflect on(Class<?> clazz) {
    +        return new Reflect(clazz);
    +    }
    +
    +    /**
    +     * Wrap an object.
    +     * <p>
    +     * Use this when you want to access instance fields and methods on any
    +     * {@link Object}
    +     *
    +     * @param object The object to be wrapped
    +     * @return A wrapped object, to be used for further reflection.
    +     */
    +    public static Reflect on(Object object) {
    +        return new Reflect(object);
    +    }
    +
    +    // ---------------------------------------------------------------------
    +    // Members
    +    // ---------------------------------------------------------------------
    +
    +    /**
    +     * The wrapped object
    +     */
    +    private final Object  object;
    +
    +    /**
    +     * A flag indicating whether the wrapped object is a {@link Class} (for
    +     * accessing static fields and methods), or any other type of {@link Object}
    +     * (for accessing instance fields and methods).
    +     */
    +    private final boolean isClass;
    +
    +    // ---------------------------------------------------------------------
    +    // Constructors
    +    // ---------------------------------------------------------------------
    +
    +    private Reflect(Class<?> type) {
    +        this.object = type;
    +        this.isClass = true;
    +    }
    +
    +    private Reflect(Object object) {
    +        this.object = object;
    +        this.isClass = false;
    +    }
    +
    +    // ---------------------------------------------------------------------
    +    // Fluent Configuration API
    +    // ---------------------------------------------------------------------
    +
    +    // TODO: Allow for accessing non-public members, methods, etc
    +
    +    // ---------------------------------------------------------------------
    +    // Fluent Reflection API
    +    // ---------------------------------------------------------------------
    +
    +    /**
    +     * Get the wrapped object
    +     *
    +     * @param <T> A convenience generic parameter for automatic unsafe casting
    +     */
    +    @SuppressWarnings("unchecked")
    +    public <T> T get() {
    +        return (T) object;
    +    }
    +
    +    /**
    +     * Set a field value.
    +     * <p>
    +     * This is roughly equivalent to {@link Field#set(Object, Object)}. If the
    +     * wrapped object is a {@link Class}, then this will set a value to a static
    +     * member field. If the wrapped object is any other {@link Object}, then
    +     * this will set a value to an instance member field.
    +     *
    +     * @param name The field name
    +     * @param value The new field value
    +     * @return The same wrapped object, to be used for further reflection.
    +     * @throws ReflectException If any reflection exception occurred.
    +     */
    +    public Reflect set(String name, Object value) throws ReflectException {
    +        try {
    +
    +            // Try setting a public field
    +            Field field = type().getField(name);
    +            field.set(object, unwrap(value));
    +            return this;
    +        }
    +        catch (Exception e1) {
    +            boolean accessible = true;
    +            Field field = null;
    +
    +            // Try again, setting a non-public field
    +            try {
    +                field = type().getDeclaredField(name);
    +                accessible = field.isAccessible();
    +                if (!accessible)
    +                    field.setAccessible(true);
    +
    +                field.set(object, unwrap(value));
    +                return this;
    +            }
    +            catch (Exception e2) {
    +                throw new ReflectException(e2);
    +            }
    +            finally {
    +                if (field != null && !accessible) {
    +                    field.setAccessible(false);
    +                }
    +            }
    +        }
    +    }
    +
    +    /**
    +     * Get a field value.
    +     * <p>
    +     * This is roughly equivalent to {@link Field#get(Object)}. If the wrapped
    +     * object is a {@link Class}, then this will get a value from a static
    +     * member field. If the wrapped object is any other {@link Object}, then
    +     * this will get a value from an instance member field.
    +     * <p>
    +     * If you want to "navigate" to a wrapped version of the field, use
    +     * {@link #field(String)} instead.
    +     *
    +     * @param name The field name
    +     * @return The field value
    +     * @throws ReflectException If any reflection exception occurred.
    +     * @see #field(String)
    +     */
    +    public <T> T get(String name) throws ReflectException {
    +        return field(name).<T>get();
    +    }
    +
    +    /**
    +     * Get a wrapped field.
    +     * <p>
    +     * This is roughly equivalent to {@link Field#get(Object)}. If the wrapped
    +     * object is a {@link Class}, then this will wrap a static member field. If
    +     * the wrapped object is any other {@link Object}, then this wrap an
    +     * instance member field.
    +     *
    +     * @param name The field name
    +     * @return The wrapped field
    +     * @throws ReflectException If any reflection exception occurred.
    +     */
    +    public Reflect field(String name) throws ReflectException {
    +        try {
    +
    +             // Try getting a public field
    +            Field field = type().getField(name);
    +            return on(field.get(object));
    +        }
    +        catch (Exception e1) {
    +            Field field = null;
    +            boolean accessible = true;
    +
    +            // Try again, getting a non-public field
    +            try {
    +                field = type().getDeclaredField(name);
    +                accessible = field.isAccessible();
    +
    +                if (!accessible)
    +                    field.setAccessible(true);
    +
    +                return on(field.get(object));
    +            }
    +            catch (Exception e2) {
    +                throw new ReflectException(e2);
    +            }
    +            finally {
    +                if (field != null && !accessible) {
    +                    field.setAccessible(false);
    +                }
    +            }
    +        }
    +    }
    +
    +    /**
    +     * Get a Map containing field names and wrapped values for the fields'
    +     * values.
    +     * <p>
    +     * If the wrapped object is a {@link Class}, then this will return static
    +     * fields. If the wrapped object is any other {@link Object}, then this will
    +     * return instance fields.
    +     * <p>
    +     * These two calls are equivalent <code><pre>
    +     * on(object).field("myField");
    +     * on(object).fields().get("myField");
    +     * </pre></code>
    +     *
    +     * @return A map containing field names and wrapped values.
    +     */
    +    public Map<String, Reflect> fields() {
    +        Map<String, Reflect> result = new LinkedHashMap<String, Reflect>();
    +
    +        for (Field field : type().getFields()) {
    +            if (!isClass ^ Modifier.isStatic(field.getModifiers())) {
    +                String name = field.getName();
    +                result.put(name, field(name));
    +            }
    +        }
    +
    +        return result;
    +    }
    +
    +    /**
    +     * Call a method by its name.
    +     * <p>
    +     * This is a convenience method for calling
    +     * <code>call(name, new Object[0])</code>
    +     *
    +     * @param name The method name
    +     * @return The wrapped method result or the same wrapped object if the
    +     *         method returns <code>void</code>, to be used for further
    +     *         reflection.
    +     * @throws ReflectException If any reflection exception occurred.
    +     * @see #call(String, Object...)
    +     */
    +    public Reflect call(String name) throws ReflectException {
    +        return call(name, new Object[0]);
    +    }
    +
    +    /**
    +     * Call a method by its name.
    +     * <p>
    +     * This is roughly equivalent to {@link Method#invoke(Object, Object...)}.
    +     * If the wrapped object is a {@link Class}, then this will invoke a static
    +     * method. If the wrapped object is any other {@link Object}, then this will
    +     * invoke an instance method.
    +     * <p>
    +     * Just like {@link Method#invoke(Object, Object...)}, this will try to wrap
    +     * primitive types or unwrap primitive type wrappers if applicable. If
    +     * several methods are applicable, by that rule, the first one encountered
    +     * is called. i.e. when calling <code><pre>
    +     * on(...).call("method", 1, 1);
    +     * </pre></code> The first of the following methods will be called:
    +     * <code><pre>
    +     * public void method(int param1, Integer param2);
    +     * public void method(Integer param1, int param2);
    +     * public void method(Number param1, Number param2);
    +     * public void method(Number param1, Object param2);
    +     * public void method(int param1, Object param2);
    +     * </pre></code>
    +     *
    +     * @param name The method name
    +     * @param args The method arguments
    +     * @return The wrapped method result or the same wrapped object if the
    +     *         method returns <code>void</code>, to be used for further
    +     *         reflection.
    +     * @throws ReflectException If any reflection exception occurred.
    +     */
    +    public Reflect call(String name, Object... args) throws ReflectException {
    +        Class<?>[] types = types(args);
    +
    +        // Try invoking the "canonical" method, i.e. the one with exact
    +        // matching argument types
    +        try {
    +            Method method = type().getMethod(name, types);
    +            return on(method, object, args);
    +        }
    +
    +        // If there is no exact match, try to find one that has a "similar"
    +        // signature if primitive argument types are converted to their wrappers
    +        catch (NoSuchMethodException e) {
    +            for (Method method : type().getMethods()) {
    +                if (method.getName().equals(name) && match(method.getParameterTypes(), types)) {
    +                    return on(method, object, args);
    +                }
    +            }
    +
    +            throw new ReflectException(e);
    +        }
    +    }
    +
    +    /**
    +     * Call a constructor.
    +     * <p>
    +     * This is a convenience method for calling
    +     * <code>create(new Object[0])</code>
    +     *
    +     * @return The wrapped new object, to be used for further reflection.
    +     * @throws ReflectException If any reflection exception occurred.
    +     * @see #create(Object...)
    +     */
    +    public Reflect create() throws ReflectException {
    +        return create(new Object[0]);
    +    }
    +
    +    /**
    +     * Call a constructor.
    +     * <p>
    +     * This is roughly equivalent to {@link Constructor#newInstance(Object...)}.
    +     * If the wrapped object is a {@link Class}, then this will create a new
    +     * object of that class. If the wrapped object is any other {@link Object},
    +     * then this will create a new object of the same type.
    +     * <p>
    +     * Just like {@link Constructor#newInstance(Object...)}, this will try to
    +     * wrap primitive types or unwrap primitive type wrappers if applicable. If
    +     * several constructors are applicable, by that rule, the first one
    +     * encountered is called. i.e. when calling <code><pre>
    +     * on(C.class).create(1, 1);
    +     * </pre></code> The first of the following constructors will be applied:
    +     * <code><pre>
    +     * public C(int param1, Integer param2);
    +     * public C(Integer param1, int param2);
    +     * public C(Number param1, Number param2);
    +     * public C(Number param1, Object param2);
    +     * public C(int param1, Object param2);
    +     * </pre></code>
    +     *
    +     * @param args The constructor arguments
    +     * @return The wrapped new object, to be used for further reflection.
    +     * @throws ReflectException If any reflection exception occurred.
    +     */
    +    public Reflect create(Object... args) throws ReflectException {
    +        Class<?>[] types = types(args);
    +
    +        // Try invoking the "canonical" constructor, i.e. the one with exact
    +        // matching argument types
    +        try {
    +            Constructor<?> constructor = type().getConstructor(types);
    +            return on(constructor, args);
    +        }
    +
    +        // If there is no exact match, try to find one that has a "similar"
    +        // signature if primitive argument types are converted to their wrappers
    +        catch (NoSuchMethodException e) {
    +            for (Constructor<?> constructor : type().getConstructors()) {
    +                if (match(constructor.getParameterTypes(), types)) {
    +                    return on(constructor, args);
    +                }
    +            }
    +
    +            throw new ReflectException(e);
    +        }
    +    }
    +
    +    /**
    +     * Create a proxy for the wrapped object allowing to typesafely invoke
    +     * methods on it using a custom interface
    +     *
    +     * @param proxyType The interface type that is implemented by the proxy
    +     * @return A proxy for the wrapped object
    +     */
    +    @SuppressWarnings("unchecked")
    +    public <P> P as(Class<P> proxyType) {
    +        final InvocationHandler handler = new InvocationHandler() {
    +            @Override
    +            public Object invoke(Object proxy, Method method, Object[] args) throws Throwable {
    +                return on(object).call(method.getName(), args).get();
    +            }
    +        };
    +
    +        return (P) Proxy.newProxyInstance(proxyType.getClassLoader(), new Class[] { proxyType }, handler);
    +    }
    +
    +    // ---------------------------------------------------------------------
    +    // Object API
    +    // ---------------------------------------------------------------------
    +
    +    /**
    +     * Check whether two arrays of types match, converting primitive types to
    +     * their corresponding wrappers.
    +     */
    +    private boolean match(Class<?>[] declaredTypes, Class<?>[] actualTypes) {
    +        if (declaredTypes.length == actualTypes.length) {
    +            for (int i = 0; i < actualTypes.length; i++) {
    +                if (!wrapper(declaredTypes[i]).isAssignableFrom(wrapper(actualTypes[i]))) {
    +                    return false;
    +                }
    +            }
    +
    +            return true;
    +        }
    +        else {
    +            return false;
    +        }
    +    }
    +
    +    /**
    +     * {@inheritDoc}
    +     */
    +    @Override
    +    public int hashCode() {
    +        return object.hashCode();
    +    }
    +
    +    /**
    +     * {@inheritDoc}
    +     */
    +    @Override
    +    public boolean equals(Object obj) {
    +        if (obj instanceof Reflect) {
    +            return object.equals(((Reflect) obj).get());
    +        }
    +
    +        return false;
    +    }
    +
    +    /**
    +     * {@inheritDoc}
    +     */
    +    @Override
    +    public String toString() {
    +        return object.toString();
    +    }
    +
    +    // ---------------------------------------------------------------------
    +    // Utility methods
    +    // ---------------------------------------------------------------------
    +
    +    /**
    +     * Wrap an object created from a constructor
    +     */
    +    private static Reflect on(Constructor<?> constructor, Object... args) throws ReflectException {
    +        try {
    +            return on(constructor.newInstance(args));
    +        }
    +        catch (Exception e) {
    +            throw new ReflectException(e);
    +        }
    +    }
    +
    +    /**
    +     * Wrap an object returned from a method
    +     */
    +    private static Reflect on(Method method, Object object, Object... args) throws ReflectException {
    +        boolean accessible = method.isAccessible();
    +
    +        try {
    +            if (!accessible)
    +                method.setAccessible(true);
    +
    +            if (method.getReturnType() == void.class) {
    +                method.invoke(object, args);
    +                return on(object);
    +            }
    +            else {
    +                return on(method.invoke(object, args));
    +            }
    +        }
    +        catch (Exception e) {
    +            throw new ReflectException(e);
    +        }
    +        finally {
    +            if (!accessible) {
    +                method.setAccessible(false);
    +            }
    +        }
    +    }
    +
    +    /**
    +     * Unwrap an object
    +     */
    +    private static Object unwrap(Object object) {
    +        if (object instanceof Reflect) {
    +            return ((Reflect) object).get();
    +        }
    +
    +        return object;
    +    }
    +
    +    /**
    +     * Get an array of types for an array of objects
    +     *
    +     * @see Object#getClass()
    +     */
    +    private static Class<?>[] types(Object... values) {
    +        if (values == null) {
    +            return new Class[0];
    +        }
    +
    +        Class<?>[] result = new Class[values.length];
    +
    +        for (int i = 0; i < values.length; i++) {
    +            result[i] = values[i].getClass();
    +        }
    +
    +        return result;
    +    }
    +
    +    /**
    +     * Load a class
    +     *
    +     * @see Class#forName(String)
    +     */
    +    private static Class<?> forName(String name) throws ReflectException {
    +        try {
    +            return Class.forName(name);
    +        }
    +        catch (Exception e) {
    +            throw new ReflectException(e);
    +        }
    +    }
    +
    +    /**
    +     * Get the type of the wrapped object.
    +     *
    +     * @see Object#getClass()
    +     */
    +    public Class<?> type() {
    +        if (isClass) {
    +            return (Class<?>) object;
    +        }
    +        else {
    +            return object.getClass();
    +        }
    +    }
    +
    +    /**
    +     * Get a wrapper type for a primitive type, or the argument type itself, if
    +     * it is not a primitive type.
    +     */
    +    private static Class<?> wrapper(Class<?> type) {
    +        if (boolean.class == type) {
    +            return Boolean.class;
    +        }
    +        else if (int.class == type) {
    +            return Integer.class;
    +        }
    +        else if (long.class == type) {
    +            return Long.class;
    +        }
    +        else if (short.class == type) {
    +            return Short.class;
    +        }
    +        else if (byte.class == type) {
    +            return Byte.class;
    +        }
    +        else if (double.class == type) {
    +            return Double.class;
    +        }
    +        else if (float.class == type) {
    +            return Float.class;
    +        }
    +        else if (char.class == type) {
    +            return Character.class;
    +        }
    +        else {
    +            return type;
    +        }
    +    }
    +
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/tools/reflect/ReflectException.java b/jOOQ/src/main/java/org/jooq/tools/reflect/ReflectException.java
    new file mode 100644
    index 00000000000..966954cadfc
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/tools/reflect/ReflectException.java
    @@ -0,0 +1,79 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOR" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq.tools.reflect;
    +
    +import java.lang.reflect.InvocationTargetException;
    +
    +/**
    + * A unchecked wrapper for any of Java's checked reflection exceptions:
    + * <p>
    + * These exceptions are
    + * <ul>
    + * <li> {@link ClassNotFoundException}</li>
    + * <li> {@link IllegalAccessException}</li>
    + * <li> {@link IllegalArgumentException}</li>
    + * <li> {@link InstantiationException}</li>
    + * <li> {@link InvocationTargetException}</li>
    + * <li> {@link NoSuchMethodException}</li>
    + * <li> {@link NoSuchFieldException}</li>
    + * <li> {@link SecurityException}</li>
    + * </ul>
    + *
    + * @author Lukas Eder
    + */
    +public class ReflectException extends RuntimeException {
    +
    +    /**
    +     * Generated UID
    +     */
    +    private static final long serialVersionUID = -6213149635297151442L;
    +
    +    public ReflectException(String message) {
    +        super(message);
    +    }
    +
    +    public ReflectException(String message, Throwable cause) {
    +        super(message, cause);
    +    }
    +
    +    public ReflectException() {
    +        super();
    +    }
    +
    +    public ReflectException(Throwable cause) {
    +        super(cause);
    +    }
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/tools/unsigned/UByte.java b/jOOQ/src/main/java/org/jooq/tools/unsigned/UByte.java
    new file mode 100644
    index 00000000000..0e23a706dbc
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/tools/unsigned/UByte.java
    @@ -0,0 +1,168 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOU" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq.tools.unsigned;
    +
    +/**
    + * The <code>unsigned byte</code> type
    + *
    + * @author Lukas Eder
    + */
    +public final class UByte extends UNumber implements Comparable<UByte> {
    +
    +    /**
    +     * Generated UID
    +     */
    +    private static final long serialVersionUID = -6821055240959745390L;
    +
    +    /**
    +     * A constant holding the minimum value an <code>unsigned byte</code> can
    +     * have, 0.
    +     */
    +    public static final short MIN_VALUE        = 0x00;
    +
    +    /**
    +     * A constant holding the maximum value an <code>unsigned byte</code> can
    +     * have, 2<sup>8</sup>-1.
    +     */
    +    public static final short MAX_VALUE        = 0xff;
    +
    +    /**
    +     * The value modelling the content of this <code>unsigned byte</code>
    +     */
    +    private final short       value;
    +
    +    /**
    +     * Create an <code>unsigned byte</code>
    +     *
    +     * @throws NumberFormatException If <code>value</code> does not contain a
    +     *             parsable <code>unsigned byte</code>.
    +     * @see UByte#UByte(String)
    +     */
    +    public static UByte valueOf(String value) throws NumberFormatException {
    +        return new UByte(value);
    +    }
    +
    +    /**
    +     * Create an <code>unsigned byte</code> by masking it with <code>0xFF</code>
    +     * i.e. <code>(byte) -1</code> becomes <code>(ubyte) 255</code>
    +     *
    +     * @see UByte#UByte(byte)
    +     */
    +    public static UByte valueOf(byte value) {
    +        return new UByte(value);
    +    }
    +
    +    /**
    +     * Create an <code>unsigned byte</code>
    +     *
    +     * @throws NumberFormatException If <code>value</code> is not in the range
    +     *             of an <code>unsigned byte</code>
    +     * @see UByte#UByte(short)
    +     */
    +    public UByte(short value) throws NumberFormatException {
    +        this.value = value;
    +        rangeCheck();
    +    }
    +
    +    /**
    +     * Create an <code>unsigned byte</code> by masking it with <code>0xFF</code>
    +     * i.e. <code>(byte) -1</code> becomes <code>(ubyte) 255</code>
    +     */
    +    public UByte(byte value) {
    +        this.value = (short) (value & MAX_VALUE);
    +    }
    +
    +    /**
    +     * Create an <code>unsigned byte</code>
    +     *
    +     * @throws NumberFormatException If <code>value</code> does not contain a
    +     *             parsable <code>unsigned byte</code>.
    +     */
    +    public UByte(String value) throws NumberFormatException {
    +        this.value = Short.parseShort(value);
    +        rangeCheck();
    +    }
    +
    +    private void rangeCheck() throws NumberFormatException {
    +        if (value < MIN_VALUE || value > MAX_VALUE) {
    +            throw new NumberFormatException("Value is out of range : " + value);
    +        }
    +    }
    +
    +    @Override
    +    public int intValue() {
    +        return value;
    +    }
    +
    +    @Override
    +    public long longValue() {
    +        return value;
    +    }
    +
    +    @Override
    +    public float floatValue() {
    +        return value;
    +    }
    +
    +    @Override
    +    public double doubleValue() {
    +        return value;
    +    }
    +
    +    @Override
    +    public int hashCode() {
    +        return Short.valueOf(value).hashCode();
    +    }
    +
    +    @Override
    +    public boolean equals(Object obj) {
    +        if (obj instanceof UByte) {
    +            return value == ((UByte) obj).value;
    +        }
    +
    +        return false;
    +    }
    +
    +    @Override
    +    public String toString() {
    +        return Short.valueOf(value).toString();
    +    }
    +
    +    @Override
    +    public int compareTo(UByte o) {
    +        return (value < o.value ? -1 : (value == o.value ? 0 : 1));
    +    }
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/tools/unsigned/UInteger.java b/jOOQ/src/main/java/org/jooq/tools/unsigned/UInteger.java
    new file mode 100644
    index 00000000000..d16d10f9096
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/tools/unsigned/UInteger.java
    @@ -0,0 +1,169 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOU" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq.tools.unsigned;
    +
    +/**
    + * The <code>unsigned int</code> type
    + *
    + * @author Lukas Eder
    + */
    +public final class UInteger extends UNumber implements Comparable<UInteger> {
    +
    +    /**
    +     * Generated UID
    +     */
    +    private static final long serialVersionUID = -6821055240959745390L;
    +
    +    /**
    +     * A constant holding the minimum value an <code>unsigned int</code> can
    +     * have, 0.
    +     */
    +    public static final long  MIN_VALUE        = 0x00000000;
    +
    +    /**
    +     * A constant holding the maximum value an <code>unsigned int</code> can
    +     * have, 2<sup>32</sup>-1.
    +     */
    +    public static final long  MAX_VALUE        = 0xffffffffL;
    +
    +    /**
    +     * The value modelling the content of this <code>unsigned int</code>
    +     */
    +    private final long        value;
    +
    +    /**
    +     * Create an <code>unsigned int</code>
    +     *
    +     * @throws NumberFormatException If <code>value</code> does not contain a
    +     *             parsable <code>unsigned int</code>.
    +     * @see UInteger#UInteger(String)
    +     */
    +    public static UInteger valueOf(String value) throws NumberFormatException {
    +        return new UInteger(value);
    +    }
    +
    +    /**
    +     * Create an <code>unsigned int</code> by masking it with
    +     * <code>0xFFFFFFFF</code> i.e. <code>(int) -1</code> becomes
    +     * <code>(uint) 4294967295</code>
    +     *
    +     * @see UInteger#UInteger(int)
    +     */
    +    public static UInteger valueOf(int value) {
    +        return new UInteger(value);
    +    }
    +
    +    /**
    +     * Create an <code>unsigned int</code>
    +     *
    +     * @throws NumberFormatException If <code>value</code> is not in the range
    +     *             of an <code>unsigned int</code>
    +     */
    +    public UInteger(long value) throws NumberFormatException {
    +        this.value = value;
    +        rangeCheck();
    +    }
    +
    +    /**
    +     * Create an <code>unsigned int</code> by masking it with
    +     * <code>0xFFFFFFFF</code> i.e. <code>(int) -1</code> becomes
    +     * <code>(uint) 4294967295</code>
    +     */
    +    public UInteger(int value) {
    +        this.value = value & MAX_VALUE;
    +    }
    +
    +    /**
    +     * Create an <code>unsigned int</code>
    +     *
    +     * @throws NumberFormatException If <code>value</code> does not contain a
    +     *             parsable <code>unsigned int</code>.
    +     */
    +    public UInteger(String value) throws NumberFormatException {
    +        this.value = Long.parseLong(value);
    +        rangeCheck();
    +    }
    +
    +    private void rangeCheck() throws NumberFormatException {
    +        if (value < MIN_VALUE || value > MAX_VALUE) {
    +            throw new NumberFormatException("Value is out of range : " + value);
    +        }
    +    }
    +
    +    @Override
    +    public int intValue() {
    +        return (int) value;
    +    }
    +
    +    @Override
    +    public long longValue() {
    +        return value;
    +    }
    +
    +    @Override
    +    public float floatValue() {
    +        return value;
    +    }
    +
    +    @Override
    +    public double doubleValue() {
    +        return value;
    +    }
    +
    +    @Override
    +    public int hashCode() {
    +        return Long.valueOf(value).hashCode();
    +    }
    +
    +    @Override
    +    public boolean equals(Object obj) {
    +        if (obj instanceof UInteger) {
    +            return value == ((UInteger) obj).value;
    +        }
    +
    +        return false;
    +    }
    +
    +    @Override
    +    public String toString() {
    +        return Long.valueOf(value).toString();
    +    }
    +
    +    @Override
    +    public int compareTo(UInteger o) {
    +        return (value < o.value ? -1 : (value == o.value ? 0 : 1));
    +    }
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/tools/unsigned/ULong.java b/jOOQ/src/main/java/org/jooq/tools/unsigned/ULong.java
    new file mode 100644
    index 00000000000..ebbc4e580f0
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/tools/unsigned/ULong.java
    @@ -0,0 +1,182 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOU" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq.tools.unsigned;
    +
    +import java.math.BigInteger;
    +
    +/**
    + * The <code>unsigned long</code> type
    + *
    + * @author Lukas Eder
    + */
    +public final class ULong extends UNumber implements Comparable<ULong> {
    +
    +    /**
    +     * Generated UID
    +     */
    +    private static final long      serialVersionUID = -6821055240959745390L;
    +
    +    /**
    +     * A constant holding the minimum value an <code>unsigned long</code> can
    +     * have, 0.
    +     */
    +    public static final BigInteger MIN_VALUE        = BigInteger.ZERO;
    +
    +    /**
    +     * A constant holding the maximum value an <code>unsigned long</code> can
    +     * have, 2<sup>64</sup>-1.
    +     */
    +    public static final BigInteger MAX_VALUE        = new BigInteger("18446744073709551615");
    +
    +    /**
    +     * A constant holding the maximum value + 1 an <code>signed long</code> can
    +     * have, 2<sup>63</sup>.
    +     */
    +    public static final BigInteger MAX_VALUE_LONG   = new BigInteger("9223372036854775808");
    +
    +    /**
    +     * The value modelling the content of this <code>unsigned long</code>
    +     */
    +    private final BigInteger       value;
    +
    +    /**
    +     * Create an <code>unsigned long</code>
    +     *
    +     * @throws NumberFormatException If <code>value</code> does not contain a
    +     *             parsable <code>unsigned long</code>.
    +     * @see ULong#ULong(String)
    +     */
    +    public static ULong valueOf(String value) throws NumberFormatException {
    +        return new ULong(value);
    +    }
    +
    +    /**
    +     * Create an <code>unsigned long</code> by masking it with
    +     * <code>0xFFFFFFFFFFFFFFFF</code> i.e. <code>(long) -1</code> becomes
    +     * <code>(uint) 18446744073709551615</code>
    +     *
    +     * @see ULong#ULong(long)
    +     */
    +    public static ULong valueOf(long value) {
    +        return new ULong(value);
    +    }
    +
    +    /**
    +     * Create an <code>unsigned long</code>
    +     *
    +     * @throws NumberFormatException If <code>value</code> is not in the range
    +     *             of an <code>unsigned long</code>
    +     */
    +    public ULong(BigInteger value) throws NumberFormatException {
    +        this.value = value;
    +        rangeCheck();
    +    }
    +
    +    /**
    +     * Create an <code>unsigned long</code> by masking it with
    +     * <code>0xFFFFFFFFFFFFFFFF</code> i.e. <code>(long) -1</code> becomes
    +     * <code>(uint) 18446744073709551615</code>
    +     */
    +    public ULong(long value) {
    +        if (value >= 0) {
    +            this.value = BigInteger.valueOf(value);
    +        }
    +        else {
    +            this.value = BigInteger.valueOf(value & Long.MAX_VALUE).add(MAX_VALUE_LONG);
    +        }
    +    }
    +
    +    /**
    +     * Create an <code>unsigned long</code>
    +     *
    +     * @throws NumberFormatException If <code>value</code> does not contain a
    +     *             parsable <code>unsigned long</code>.
    +     */
    +    public ULong(String value) throws NumberFormatException {
    +        this.value = new BigInteger(value);
    +        rangeCheck();
    +    }
    +
    +    private void rangeCheck() throws NumberFormatException {
    +        if (value.compareTo(MIN_VALUE) < 0 || value.compareTo(MAX_VALUE) > 0) {
    +            throw new NumberFormatException("Value is out of range : " + value);
    +        }
    +    }
    +
    +    @Override
    +    public int intValue() {
    +        return value.intValue();
    +    }
    +
    +    @Override
    +    public long longValue() {
    +        return value.longValue();
    +    }
    +
    +    @Override
    +    public float floatValue() {
    +        return value.floatValue();
    +    }
    +
    +    @Override
    +    public double doubleValue() {
    +        return value.doubleValue();
    +    }
    +
    +    @Override
    +    public int hashCode() {
    +        return value.hashCode();
    +    }
    +
    +    @Override
    +    public boolean equals(Object obj) {
    +        if (obj instanceof ULong) {
    +            return value.equals(((ULong) obj).value);
    +        }
    +
    +        return false;
    +    }
    +
    +    @Override
    +    public String toString() {
    +        return value.toString();
    +    }
    +
    +    @Override
    +    public int compareTo(ULong o) {
    +        return value.compareTo(o.value);
    +    }
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/tools/unsigned/UNumber.java b/jOOQ/src/main/java/org/jooq/tools/unsigned/UNumber.java
    new file mode 100644
    index 00000000000..f6397353f56
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/tools/unsigned/UNumber.java
    @@ -0,0 +1,59 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOU" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq.tools.unsigned;
    +
    +import java.math.BigInteger;
    +
    +/**
    + * A base type for unsigned numbers.
    + *
    + * @author Lukas Eder
    + */
    +public abstract class UNumber extends Number {
    +
    +    /**
    +     * Generated UID
    +     */
    +    private static final long serialVersionUID = -7666221938815339843L;
    +
    +    /**
    +     * Get this number as a {@link BigInteger}. This is a convenience method for
    +     * calling <code>new BigInteger(toString())</code>
    +     */
    +    public BigInteger toBigInteger() {
    +        return new BigInteger(toString());
    +    }
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/tools/unsigned/UShort.java b/jOOQ/src/main/java/org/jooq/tools/unsigned/UShort.java
    new file mode 100644
    index 00000000000..e11292f22ed
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/tools/unsigned/UShort.java
    @@ -0,0 +1,169 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOU" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq.tools.unsigned;
    +
    +/**
    + * The <code>unsigned short</code> type
    + *
    + * @author Lukas Eder
    + */
    +public final class UShort extends UNumber implements Comparable<UShort> {
    +
    +    /**
    +     * Generated UID
    +     */
    +    private static final long serialVersionUID = -6821055240959745390L;
    +
    +    /**
    +     * A constant holding the minimum value an <code>unsigned short</code> can
    +     * have, 0.
    +     */
    +    public static final int   MIN_VALUE        = 0x0000;
    +
    +    /**
    +     * A constant holding the maximum value an <code>unsigned short</code> can
    +     * have, 2<sup>16</sup>-1.
    +     */
    +    public static final int   MAX_VALUE        = 0xffff;
    +
    +    /**
    +     * The value modelling the content of this <code>unsigned short</code>
    +     */
    +    private final int         value;
    +
    +    /**
    +     * Create an <code>unsigned short</code>
    +     *
    +     * @throws NumberFormatException If <code>value</code> does not contain a
    +     *             parsable <code>unsigned short</code>.
    +     * @see UShort#UShort(String)
    +     */
    +    public static UShort valueOf(String value) throws NumberFormatException {
    +        return new UShort(value);
    +    }
    +
    +    /**
    +     * Create an <code>unsigned short</code> by masking it with
    +     * <code>0xFFFF</code> i.e. <code>(short) -1</code> becomes
    +     * <code>(ushort) 65535</code>
    +     *
    +     * @see UShort#UShort(short)
    +     */
    +    public static UShort valueOf(short value) {
    +        return new UShort(value);
    +    }
    +
    +    /**
    +     * Create an <code>unsigned short</code>
    +     *
    +     * @throws NumberFormatException If <code>value</code> is not in the range
    +     *             of an <code>unsigned short</code>
    +     */
    +    public UShort(int value) throws NumberFormatException {
    +        this.value = value;
    +        rangeCheck();
    +    }
    +
    +    /**
    +     * Create an <code>unsigned short</code> by masking it with
    +     * <code>0xFFFF</code> i.e. <code>(short) -1</code> becomes
    +     * <code>(ushort) 65535</code>
    +     */
    +    public UShort(short value) {
    +        this.value = value & MAX_VALUE;
    +    }
    +
    +    /**
    +     * Create an <code>unsigned short</code>
    +     *
    +     * @throws NumberFormatException If <code>value</code> does not contain a
    +     *             parsable <code>unsigned short</code>.
    +     */
    +    public UShort(String value) throws NumberFormatException {
    +        this.value = Integer.parseInt(value);
    +        rangeCheck();
    +    }
    +
    +    private void rangeCheck() throws NumberFormatException {
    +        if (value < MIN_VALUE || value > MAX_VALUE) {
    +            throw new NumberFormatException("Value is out of range : " + value);
    +        }
    +    }
    +
    +    @Override
    +    public int intValue() {
    +        return value;
    +    }
    +
    +    @Override
    +    public long longValue() {
    +        return value;
    +    }
    +
    +    @Override
    +    public float floatValue() {
    +        return value;
    +    }
    +
    +    @Override
    +    public double doubleValue() {
    +        return value;
    +    }
    +
    +    @Override
    +    public int hashCode() {
    +        return Integer.valueOf(value).hashCode();
    +    }
    +
    +    @Override
    +    public boolean equals(Object obj) {
    +        if (obj instanceof UShort) {
    +            return value == ((UShort) obj).value;
    +        }
    +
    +        return false;
    +    }
    +
    +    @Override
    +    public String toString() {
    +        return Integer.valueOf(value).toString();
    +    }
    +
    +    @Override
    +    public int compareTo(UShort o) {
    +        return (value < o.value ? -1 : (value == o.value ? 0 : 1));
    +    }
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/tools/unsigned/Unsigned.java b/jOOQ/src/main/java/org/jooq/tools/unsigned/Unsigned.java
    new file mode 100644
    index 00000000000..a43bcbf467c
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/tools/unsigned/Unsigned.java
    @@ -0,0 +1,186 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOU" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq.tools.unsigned;
    +
    +import java.math.BigInteger;
    +
    +/**
    + * A utility class for static access to unsigned number functionality.
    + * <p>
    + * It essentially contains factory methods for unsigned number wrappers. In
    + * future versions, it will also contain some arithmetic methods, handling
    + * regular arithmetic and bitwise operations
    + *
    + * @author Lukas Eder
    + */
    +public final class Unsigned {
    +
    +    /**
    +     * Create an <code>unsigned byte</code>
    +     *
    +     * @throws NumberFormatException If <code>value</code> does not contain a
    +     *             parsable <code>unsigned byte</code>.
    +     * @see UByte#UByte(String)
    +     */
    +    public static UByte ubyte(String value) throws NumberFormatException {
    +        return value == null ? null : new UByte(value);
    +    }
    +
    +    /**
    +     * Create an <code>unsigned byte</code> by masking it with <code>0xFF</code>
    +     * i.e. <code>(byte) -1</code> becomes <code>(ubyte) 255</code>
    +     *
    +     * @see UByte#UByte(byte)
    +     */
    +    public static UByte ubyte(byte value) {
    +        return new UByte(value);
    +    }
    +
    +    /**
    +     * Create an <code>unsigned byte</code>
    +     *
    +     * @throws NumberFormatException If <code>value</code> is not in the range
    +     *             of an <code>unsigned byte</code>
    +     * @see UByte#UByte(short)
    +     */
    +    public static UByte ubyte(short value) throws NumberFormatException {
    +        return new UByte(value);
    +    }
    +
    +    /**
    +     * Create an <code>unsigned short</code>
    +     *
    +     * @throws NumberFormatException If <code>value</code> does not contain a
    +     *             parsable <code>unsigned short</code>.
    +     * @see UShort#UShort(String)
    +     */
    +    public static UShort ushort(String value) throws NumberFormatException {
    +        return value == null ? null : new UShort(value);
    +    }
    +
    +    /**
    +     * Create an <code>unsigned short</code> by masking it with
    +     * <code>0xFFFF</code> i.e. <code>(short) -1</code> becomes
    +     * <code>(ushort) 65535</code>
    +     *
    +     * @see UShort#UShort(short)
    +     */
    +    public static UShort ushort(short value) {
    +        return new UShort(value);
    +    }
    +
    +    /**
    +     * Create an <code>unsigned short</code>
    +     *
    +     * @throws NumberFormatException If <code>value</code> is not in the range
    +     *             of an <code>unsigned short</code>
    +     * @see UShort#UShort(int)
    +     */
    +    public static UShort ushort(int value) throws NumberFormatException {
    +        return new UShort(value);
    +    }
    +
    +    /**
    +     * Create an <code>unsigned int</code>
    +     *
    +     * @throws NumberFormatException If <code>value</code> does not contain a
    +     *             parsable <code>unsigned int</code>.
    +     * @see UInteger#UInteger(String)
    +     */
    +    public static UInteger uint(String value) throws NumberFormatException {
    +        return value == null ? null : new UInteger(value);
    +    }
    +
    +    /**
    +     * Create an <code>unsigned int</code> by masking it with
    +     * <code>0xFFFFFFFF</code> i.e. <code>(int) -1</code> becomes
    +     * <code>(uint) 4294967295</code>
    +     *
    +     * @see UInteger#UInteger(int)
    +     */
    +    public static UInteger uint(int value) {
    +        return new UInteger(value);
    +    }
    +
    +    /**
    +     * Create an <code>unsigned int</code>
    +     *
    +     * @throws NumberFormatException If <code>value</code> is not in the range
    +     *             of an <code>unsigned int</code>
    +     * @see UInteger#UInteger(long)
    +     */
    +    public static UInteger uint(long value) throws NumberFormatException {
    +        return new UInteger(value);
    +    }
    +
    +    /**
    +     * Create an <code>unsigned long</code>
    +     *
    +     * @throws NumberFormatException If <code>value</code> does not contain a
    +     *             parsable <code>unsigned long</code>.
    +     * @see ULong#ULong(String)
    +     */
    +    public static ULong ulong(String value) throws NumberFormatException {
    +        return value == null ? null : new ULong(value);
    +    }
    +
    +    /**
    +     * Create an <code>unsigned long</code> by masking it with
    +     * <code>0xFFFFFFFFFFFFFFFF</code> i.e. <code>(long) -1</code> becomes
    +     * <code>(uint) 18446744073709551615</code>
    +     *
    +     * @see ULong#ULong(long)
    +     */
    +    public static ULong ulong(long value) {
    +        return new ULong(value);
    +    }
    +
    +    /**
    +     * Create an <code>unsigned long</code>
    +     *
    +     * @throws NumberFormatException If <code>value</code> is not in the range
    +     *             of an <code>unsigned long</code>
    +     * @see ULong#ULong(BigInteger)
    +     */
    +    public static ULong ulong(BigInteger value) throws NumberFormatException {
    +        return new ULong(value);
    +    }
    +
    +    /**
    +     * No instances
    +     */
    +    private Unsigned() {}
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/types/DayToSecond.java b/jOOQ/src/main/java/org/jooq/types/DayToSecond.java
    new file mode 100644
    index 00000000000..9ce4ae24304
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/types/DayToSecond.java
    @@ -0,0 +1,495 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq.types;
    +
    +import java.util.regex.Matcher;
    +import java.util.regex.Pattern;
    +
    +import org.jooq.Field;
    +import org.jooq.SQLDialect;
    +import org.jooq.tools.Convert;
    +import org.jooq.tools.StringUtils;
    +
    +/**
    + * An implementation for the SQL standard <code>INTERVAL DAY TO SECOND</code>
    + * data type.
    + * <p>
    + * <code>DayToSecond</code> is a {@link Number} whose {@link Number#intValue()}
    + * represents the (truncated) number of milliseconds of the interval,
    + * {@link Number#doubleValue()} represents the approximative number of
    + * milliseconds (including hours, minutes, seconds, nanoseconds) of the
    + * interval.
    + * <p>
    + * Note: only a few databases actually support this data type on its own. You
    + * can still use it for date time arithmetic in other databases, though, through
    + * {@link Field#add(Field)} and {@link Field#sub(Field)} Databases that have
    + * been observed to natively support <code>INTERVAL</code> data types are:
    + * <ul>
    + * <li> {@link SQLDialect#HSQLDB}</li>
    + * <li> {@link SQLDialect#INGRES}</li>
    + * <li> {@link SQLDialect#ORACLE}</li>
    + * <li> {@link SQLDialect#POSTGRES}</li>
    + * </ul>
    + * <p>
    + * These dialects have been observed to partially support <code>INTERVAL</code>
    + * data types in date time arithmetic functions, such as
    + * <code>TIMESTAMPADD</code>, and <code>TIMESTAMPDIFF</code>:
    + * <ul>
    + * <li> {@link SQLDialect#CUBRID}</li>
    + * <li> {@link SQLDialect#MYSQL}</li>
    + * </ul>
    + *
    + * @author Lukas Eder
    + * @see Interval
    + */
    +public final class DayToSecond extends Number implements Interval, Comparable<DayToSecond> {
    +
    +    /**
    +     * Generated UID
    +     */
    +    private static final long    serialVersionUID = -3853596481984643811L;
    +    private static final Pattern PATTERN          = Pattern.compile("(\\+|-)?(?:(\\d+) )?(\\d+):(\\d+):(\\d+)(?:\\.(\\d+))?");
    +
    +    private final boolean        negative;
    +    private final int            days;
    +    private final int            hours;
    +    private final int            minutes;
    +    private final int            seconds;
    +    private final int            nano;
    +
    +    /**
    +     * Create a new day-hour interval.
    +     */
    +    public DayToSecond(int days) {
    +        this(days, 0, 0, 0, 0, false);
    +    }
    +
    +    /**
    +     * Create a new day-hour interval.
    +     */
    +    public DayToSecond(int days, int hours) {
    +        this(days, hours, 0, 0, 0, false);
    +    }
    +
    +    /**
    +     * Create a new day-hour interval.
    +     */
    +    public DayToSecond(int days, int hours, int minutes) {
    +        this(days, hours, minutes, 0, 0, false);
    +    }
    +
    +    /**
    +     * Create a new day-hour interval.
    +     */
    +    public DayToSecond(int days, int hours, int minutes, int seconds) {
    +        this(days, hours, minutes, seconds, 0, false);
    +    }
    +
    +    /**
    +     * Create a new day-hour interval.
    +     */
    +    public DayToSecond(int days, int hours, int minutes, int seconds, int nano) {
    +        this(days, hours, minutes, seconds, nano, false);
    +    }
    +
    +    private DayToSecond(int days, int hours, int minutes, int seconds, int nano, boolean negative) {
    +
    +        // Perform normalisation. Specifically, Postgres may return intervals
    +        // such as 24:00:00, 25:13:15, etc...
    +        if (nano >= 1000000000) {
    +            seconds += (nano / 1000000000);
    +            nano %= 1000000000;
    +        }
    +        if (seconds >= 60) {
    +            minutes += (seconds / 60);
    +            seconds %= 60;
    +        }
    +        if (minutes >= 60) {
    +            hours += (minutes / 60);
    +            minutes %= 60;
    +        }
    +        if (hours >= 24) {
    +            days += (hours / 24);
    +            hours %= 24;
    +        }
    +
    +        this.negative = negative;
    +        this.days = days;
    +        this.hours = hours;
    +        this.minutes = minutes;
    +        this.seconds = seconds;
    +        this.nano = nano;
    +    }
    +
    +    /**
    +     * Parse a string representation of a <code>INTERVAL DAY TO SECOND</code>
    +     *
    +     * @param string A string representation of the form
    +     *            <code>[+|-][days] [hours]:[minutes]:[seconds].[fractional seconds]</code>
    +     * @return The parsed <code>INTERVAL DAY TO SECOND</code> object, or
    +     *         <code>null</code> if the string could not be parsed.
    +     */
    +    public static DayToSecond valueOf(String string) {
    +        if (string != null) {
    +            // Accept also doubles as the number of days
    +            try {
    +                return valueOf(Double.valueOf(string));
    +            }
    +            catch (NumberFormatException e) {
    +                Matcher matcher = PATTERN.matcher(string);
    +
    +                if (matcher.find()) {
    +                    boolean negative = "-".equals(matcher.group(1));
    +
    +                    int days = Convert.convert(matcher.group(2), int.class);
    +                    int hours = Convert.convert(matcher.group(3), int.class);
    +                    int minutes = Convert.convert(matcher.group(4), int.class);
    +                    int seconds = Convert.convert(matcher.group(5), int.class);
    +                    int nano = Convert.convert(StringUtils.rightPad(matcher.group(6), 9, "0"), int.class);
    +
    +                    return new DayToSecond(days, hours, minutes, seconds, nano, negative);
    +                }
    +            }
    +        }
    +
    +        return null;
    +    }
    +
    +    /**
    +     * Load a {@link Double} representation of a <code>INTERVAL DAY TO SECOND</code>
    +     *
    +     * @param milli The number of milliseconds as a fractional number
    +     * @return The loaded <code>INTERVAL DAY TO SECOND</code> object
    +     */
    +    public static DayToSecond valueOf(double milli) {
    +        double abs = Math.abs(milli);
    +
    +        int n = (int) ((abs % 1000) * 1000000.0); abs = Math.floor(abs / 1000);
    +        int s = (int) (abs % 60); abs = Math.floor(abs / 60);
    +        int m = (int) (abs % 60); abs = Math.floor(abs / 60);
    +        int h = (int) (abs % 24); abs = Math.floor(abs / 24);
    +        int d = (int) abs;
    +
    +        DayToSecond result = new DayToSecond(d, h, m, s, n);
    +
    +        if (milli < 0) {
    +            result = result.neg();
    +        }
    +
    +        return result;
    +    }
    +
    +    // -------------------------------------------------------------------------
    +    // XXX Number API
    +    // -------------------------------------------------------------------------
    +
    +    @Override
    +    public final int intValue() {
    +        return (int) doubleValue();
    +    }
    +
    +    @Override
    +    public final long longValue() {
    +        return (long) doubleValue();
    +    }
    +
    +    @Override
    +    public final float floatValue() {
    +        return (float) doubleValue();
    +    }
    +
    +    @Override
    +    public final double doubleValue() {
    +        return getTotalMilli();
    +    }
    +
    +    // -------------------------------------------------------------------------
    +    // XXX Interval API
    +    // -------------------------------------------------------------------------
    +
    +    @Override
    +    public final DayToSecond neg() {
    +        return new DayToSecond(days, hours, minutes, seconds, nano, !negative);
    +    }
    +
    +    @Override
    +    public final DayToSecond abs() {
    +        return new DayToSecond(days, hours, minutes, seconds, nano, false);
    +    }
    +
    +    /**
    +     * Get the day-part of this interval
    +     */
    +    public final int getDays() {
    +        return days;
    +    }
    +
    +    /**
    +     * Get the hour-part of this interval
    +     */
    +    public final int getHours() {
    +        return hours;
    +    }
    +
    +    /**
    +     * Get the minute-part of this interval
    +     */
    +    public final int getMinutes() {
    +        return minutes;
    +    }
    +
    +    /**
    +     * Get the second-part of this interval
    +     */
    +    public final int getSeconds() {
    +        return seconds;
    +    }
    +
    +    /**
    +     * Get the (truncated) milli-part of this interval
    +     */
    +    public final int getMilli() {
    +        return nano / 1000000;
    +    }
    +
    +    /**
    +     * Get the (truncated) micro-part of this interval
    +     */
    +    public final int getMicro() {
    +        return nano / 1000;
    +    }
    +
    +    /**
    +     * Get the nano-part of this interval
    +     */
    +    public final int getNano() {
    +        return nano;
    +    }
    +
    +    /**
    +     * Get the whole interval in days
    +     */
    +    public final double getTotalDays() {
    +        return getSign() * (
    +            nano / (24.0 * 3600.0 * 1000000000.0) +
    +            seconds / (24.0 * 3600.0) +
    +            minutes / (24.0 * 60.0) +
    +            hours / 24.0 +
    +            days);
    +    }
    +
    +    /**
    +     * Get the whole interval in hours
    +     */
    +    public final double getTotalHours() {
    +        return getSign() * (
    +            nano / (3600.0 * 1000000000.0) +
    +            seconds / 3600.0 +
    +            minutes / 60.0 +
    +            hours +
    +            24.0 * days);
    +    }
    +
    +    /**
    +     * Get the whole interval in minutes
    +     */
    +    public final double getTotalMinutes() {
    +        return getSign() * (
    +            nano / (60.0 * 1000000000.0) +
    +            seconds / 60.0 +
    +            minutes +
    +            60.0 * hours +
    +            60.0 * 24.0 * days);
    +    }
    +
    +    /**
    +     * Get the whole interval in seconds
    +     */
    +    public final double getTotalSeconds() {
    +        return getSign() * (
    +            nano / 1000000000.0 +
    +            seconds +
    +            60.0 * minutes +
    +            3600.0 * hours +
    +            3600.0 * 24.0 * days);
    +     }
    +
    +    /**
    +     * Get the whole interval in milli-seconds
    +     */
    +    public final double getTotalMilli() {
    +        return getSign() * (
    +            nano / 1000000.0 +
    +            1000.0 * seconds +
    +            1000.0 * 60.0 * minutes +
    +            1000.0 * 3600.0 * hours +
    +            1000.0 * 3600.0 * 24.0 * days);
    +    }
    +
    +    /**
    +     * Get the whole interval in micro-seconds
    +     */
    +    public final double getTotalMicro() {
    +        return getSign() * (
    +            nano / 1000.0 +
    +            1000000.0 * seconds +
    +            1000000.0 * 60.0 * minutes +
    +            1000000.0 * 3600.0 * hours +
    +            1000000.0 * 3600.0 * 24.0 * days);
    +    }
    +
    +    /**
    +     * Get the whole interval in nano-seconds
    +     */
    +    public final double getTotalNano() {
    +        return getSign() * (
    +            nano +
    +            1000000000.0 * seconds +
    +            1000000000.0 * 60.0 * minutes +
    +            1000000000.0 * 3600.0 * hours +
    +            1000000000.0 * 3600.0 * 24.0 * days);
    +    }
    +
    +    @Override
    +    public final int getSign() {
    +        return negative ? -1 : 1;
    +    }
    +
    +    // -------------------------------------------------------------------------
    +    // XXX Comparable and Object API
    +    // -------------------------------------------------------------------------
    +
    +    @Override
    +    public final int compareTo(DayToSecond that) {
    +        if (days < that.days) {
    +            return -1;
    +        }
    +        if (days > that.days) {
    +            return 1;
    +        }
    +
    +        if (hours < that.hours) {
    +            return -1;
    +        }
    +        if (hours > that.hours) {
    +            return 1;
    +        }
    +
    +        if (minutes < that.minutes) {
    +            return -1;
    +        }
    +        if (minutes > that.minutes) {
    +            return 1;
    +        }
    +
    +        if (seconds < that.seconds) {
    +            return -1;
    +        }
    +        if (seconds > that.seconds) {
    +            return 1;
    +        }
    +
    +        if (nano < that.nano) {
    +            return -1;
    +        }
    +        if (nano > that.nano) {
    +            return 1;
    +        }
    +
    +        return 0;
    +    }
    +
    +    @Override
    +    public final int hashCode() {
    +        final int prime = 31;
    +        int result = 1;
    +        result = prime * result + days;
    +        result = prime * result + hours;
    +        result = prime * result + minutes;
    +        result = prime * result + nano;
    +        result = prime * result + seconds;
    +        return result;
    +    }
    +
    +    @Override
    +    public final boolean equals(Object obj) {
    +        if (this == obj)
    +            return true;
    +        if (obj == null)
    +            return false;
    +        if (getClass() != obj.getClass())
    +            return false;
    +        DayToSecond other = (DayToSecond) obj;
    +        if (days != other.days)
    +            return false;
    +        if (hours != other.hours)
    +            return false;
    +        if (minutes != other.minutes)
    +            return false;
    +        if (nano != other.nano)
    +            return false;
    +        if (seconds != other.seconds)
    +            return false;
    +        return true;
    +    }
    +
    +    @Override
    +    public final String toString() {
    +        StringBuilder sb = new StringBuilder();
    +
    +        sb.append(negative ? "-" : "+");
    +        sb.append(days);
    +        sb.append(" ");
    +
    +        if (hours < 10)
    +            sb.append("0");
    +        sb.append(hours);
    +        sb.append(":");
    +
    +        if (minutes < 10)
    +            sb.append("0");
    +        sb.append(minutes);
    +        sb.append(":");
    +
    +        if (seconds < 10)
    +            sb.append("0");
    +        sb.append(seconds);
    +        sb.append(".");
    +        sb.append(StringUtils.leftPad("" + nano, 9, "0"));
    +
    +        return sb.toString();
    +    }
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/types/Interval.java b/jOOQ/src/main/java/org/jooq/types/Interval.java
    new file mode 100644
    index 00000000000..584d306c625
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/types/Interval.java
    @@ -0,0 +1,174 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq.types;
    +
    +import java.io.Serializable;
    +
    +import org.jooq.Field;
    +import org.jooq.SQLDialect;
    +
    +/**
    + * A substitute for JDBC's missing <code>java.sql.Interval</code> data type.
    + * <p>
    + * JDBC lacks an important data type that is present in most SQL databases:
    + * <code>INTERVAL</code>. The SQL:2008 standard states that there are two types
    + * of intervals: <blockquote> 4.6.3 Intervals
    + * <p>
    + * There are two classes of intervals. One class, called year-month intervals,
    + * has an express or implied datetime precision that includes no fields other
    + * than YEAR and MONTH, though not both are required. The other class, called
    + * day-time intervals, has an express or implied interval precision that can
    + * include any fields other than YEAR or MONTH. </blockquote>
    + * <p>
    + * <code>INTERVAL</code> can be combined with date time data types according to
    + * the following operation table:
    + * <table border="1">
    + * <tr>
    + * <th>Operand 1</th>
    + * <th>Operator</th>
    + * <th>Operand 2</th>
    + * <th>Result Type</th>
    + * </tr>
    + * <tr>
    + * <td>Datetime</td>
    + * <td>–</td>
    + * <td>Datetime</td>
    + * <td>Interval</td>
    + * </tr>
    + * <tr>
    + * <td>Datetime</td>
    + * <td>+ or –</td>
    + * <td>Interval</td>
    + * <td>Datetime</td>
    + * </tr>
    + * <tr>
    + * <td>Interval</td>
    + * <td>+</td>
    + * <td>Datetime</td>
    + * <td>Datetime</td>
    + * </tr>
    + * <tr>
    + * <td>Interval</td>
    + * <td>+ or –</td>
    + * <td>Interval</td>
    + * <td>Interval</td>
    + * </tr>
    + * <tr>
    + * <td>Interval</td>
    + * <td>* or /</td>
    + * <td>Numeric</td>
    + * <td>Interval</td>
    + * </tr>
    + * <tr>
    + * <td>Numeric</td>
    + * <td>*</td>
    + * <td>Interval</td>
    + * <td>Interval</td>
    + * </tr>
    + * </table>
    + * <p>
    + * Interval implementations can be expected to also also extend {@link Number}.
    + * <p>
    + * Note: only a few databases actually support this data type on its own. You
    + * can still use it for date time arithmetic in other databases, though, through
    + * {@link Field#add(Field)} and {@link Field#sub(Field)} Databases that have
    + * been observed to natively support <code>INTERVAL</code> data types are:
    + * <ul>
    + * <li> {@link SQLDialect#HSQLDB}</li>
    + * <li> {@link SQLDialect#INGRES}</li>
    + * <li> {@link SQLDialect#ORACLE}</li>
    + * <li> {@link SQLDialect#POSTGRES}</li>
    + * </ul>
    + * <p>
    + * These dialects have been observed to partially support <code>INTERVAL</code>
    + * data types in date time arithmetic functions, such as
    + * <code>TIMESTAMPADD</code>, and <code>TIMESTAMPDIFF</code>:
    + * <ul>
    + * <li> {@link SQLDialect#CUBRID}</li>
    + * <li> {@link SQLDialect#MYSQL}</li>
    + * </ul>
    + *
    + * @author Lukas Eder
    + */
    +public interface Interval extends Serializable {
    +
    +    /**
    +     * Negate the interval (change its sign)
    +     */
    +    Interval neg();
    +
    +    /**
    +     * Get the absolute value of the interval (set its sign to positive)
    +     */
    +    Interval abs();
    +
    +    /**
    +     * The sign of the interval
    +     *
    +     * @return <code>1</code> for positive or zero, <code>-1</code> for negative
    +     */
    +    int getSign();
    +
    +    /**
    +     * @see Number#doubleValue()
    +     */
    +    double doubleValue();
    +
    +    /**
    +     * @see Number#floatValue()
    +     */
    +    float floatValue();
    +
    +    /**
    +     * @see Number#longValue()
    +     */
    +    long longValue();
    +
    +    /**
    +     * @see Number#intValue()
    +     */
    +    int intValue();
    +
    +    /**
    +     * @see Number#byteValue()
    +     */
    +    byte byteValue();
    +
    +    /**
    +     * @see Number#shortValue()
    +     */
    +    short shortValue();
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/types/YearToMonth.java b/jOOQ/src/main/java/org/jooq/types/YearToMonth.java
    new file mode 100644
    index 00000000000..71a93588afe
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/types/YearToMonth.java
    @@ -0,0 +1,247 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq.types;
    +
    +import java.util.regex.Matcher;
    +import java.util.regex.Pattern;
    +
    +import org.jooq.Field;
    +import org.jooq.SQLDialect;
    +
    +/**
    + * An implementation for the SQL standard <code>INTERVAL YEAR TO MONTH</code>
    + * data type.
    + * <p>
    + * <code>YearToMonth</code> is a {@link Number} whose {@link Number#intValue()}
    + * represents the number of months of the interval.
    + * <p>
    + * Note: only a few databases actually support this data type on its own. You
    + * can still use it for date time arithmetic in other databases, though, through
    + * {@link Field#add(Field)} and {@link Field#sub(Field)} Databases that have
    + * been observed to natively support <code>INTERVAL</code> data types are:
    + * <ul>
    + * <li> {@link SQLDialect#HSQLDB}</li>
    + * <li> {@link SQLDialect#INGRES}</li>
    + * <li> {@link SQLDialect#ORACLE}</li>
    + * <li> {@link SQLDialect#POSTGRES}</li>
    + * </ul>
    + * <p>
    + * These dialects have been observed to partially support <code>INTERVAL</code>
    + * data types in date time arithmetic functions, such as
    + * <code>TIMESTAMPADD</code>, and <code>TIMESTAMPDIFF</code>:
    + * <ul>
    + * <li> {@link SQLDialect#CUBRID}</li>
    + * <li> {@link SQLDialect#MYSQL}</li>
    + * </ul>
    + *
    + * @author Lukas Eder
    + * @see Interval
    + */
    +public final class YearToMonth extends Number implements Interval, Comparable<YearToMonth> {
    +
    +    /**
    +     * Generated UID
    +     */
    +    private static final long    serialVersionUID = 1308553645456594273L;
    +    private static final Pattern PATTERN          = Pattern.compile("(\\+|-)?(\\d+)-(\\d+)");
    +
    +    private final boolean        negative;
    +    private final int            years;
    +    private final int            months;
    +
    +    /**
    +     * Create a new year-month interval.
    +     */
    +    public YearToMonth(int years) {
    +        this(years, 0, false);
    +    }
    +
    +    /**
    +     * Create a new year-month interval.
    +     */
    +    public YearToMonth(int years, int months) {
    +        this(years, months, false);
    +    }
    +
    +    private YearToMonth(int years, int months, boolean negative) {
    +
    +        // Perform normalisation. Specifically, Postgres may return intervals
    +        // such as 0-13
    +        if (months >= 12) {
    +            years += (months / 12);
    +            months %= 12;
    +        }
    +
    +        this.negative = negative;
    +        this.years = years;
    +        this.months = months;
    +    }
    +
    +    /**
    +     * Parse a string representation of a <code>INTERVAL YEAR TO MONTH</code>
    +     *
    +     * @param string A string representation of the form
    +     *            <code>[+|-][years]-[months]</code>
    +     * @return The parsed <code>YEAR TO MONTH</code> object, or
    +     *         <code>null</code> if the string could not be parsed.
    +     */
    +    public static YearToMonth valueOf(String string) {
    +        if (string != null) {
    +            Matcher matcher = PATTERN.matcher(string);
    +
    +            if (matcher.find()) {
    +                boolean negative = "-".equals(matcher.group(1));
    +                int years = Integer.parseInt(matcher.group(2));
    +                int months = Integer.parseInt(matcher.group(3));
    +
    +                return new YearToMonth(years, months, negative);
    +            }
    +        }
    +
    +        return null;
    +    }
    +
    +    // -------------------------------------------------------------------------
    +    // XXX Interval API
    +    // -------------------------------------------------------------------------
    +
    +    @Override
    +    public final YearToMonth neg() {
    +        return new YearToMonth(years, months, !negative);
    +    }
    +
    +    @Override
    +    public final YearToMonth abs() {
    +        return new YearToMonth(years, months, false);
    +    }
    +
    +    public final int getYears() {
    +        return years;
    +    }
    +
    +    public final int getMonths() {
    +        return months;
    +    }
    +
    +    @Override
    +    public final int getSign() {
    +        return negative ? -1 : 1;
    +    }
    +
    +    // -------------------------------------------------------------------------
    +    // XXX Number API
    +    // -------------------------------------------------------------------------
    +
    +    @Override
    +    public final int intValue() {
    +        return (negative ? -1 : 1) * (12 * years + months);
    +    }
    +
    +    @Override
    +    public final long longValue() {
    +        return intValue();
    +    }
    +
    +    @Override
    +    public final float floatValue() {
    +        return intValue();
    +    }
    +
    +    @Override
    +    public final double doubleValue() {
    +        return intValue();
    +    }
    +
    +    // -------------------------------------------------------------------------
    +    // XXX Comparable and Object API
    +    // -------------------------------------------------------------------------
    +
    +    @Override
    +    public final int compareTo(YearToMonth that) {
    +        if (years < that.years) {
    +            return -1;
    +        }
    +        if (years > that.years) {
    +            return 1;
    +        }
    +
    +        if (months < that.months) {
    +            return -1;
    +        }
    +        if (months > that.months) {
    +            return 1;
    +        }
    +
    +        return 0;
    +    }
    +
    +    @Override
    +    public final int hashCode() {
    +        final int prime = 31;
    +        int result = 1;
    +        result = prime * result + months;
    +        result = prime * result + years;
    +        return result;
    +    }
    +
    +    @Override
    +    public final boolean equals(Object obj) {
    +        if (this == obj)
    +            return true;
    +        if (obj == null)
    +            return false;
    +        if (getClass() != obj.getClass())
    +            return false;
    +        YearToMonth other = (YearToMonth) obj;
    +        if (months != other.months)
    +            return false;
    +        if (years != other.years)
    +            return false;
    +        return true;
    +    }
    +
    +    @Override
    +    public final String toString() {
    +        StringBuilder sb = new StringBuilder();
    +
    +        sb.append(negative ? "-" : "+");
    +        sb.append(years);
    +        sb.append("-");
    +        sb.append(months);
    +
    +        return sb.toString();
    +    }
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/util/ase/ASEDataType.java b/jOOQ/src/main/java/org/jooq/util/ase/ASEDataType.java
    new file mode 100644
    index 00000000000..011d1f6248b
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/util/ase/ASEDataType.java
    @@ -0,0 +1,132 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq.util.ase;
    +
    +import java.math.BigDecimal;
    +import java.math.BigInteger;
    +import java.sql.Date;
    +import java.sql.Time;
    +import java.sql.Timestamp;
    +
    +import org.jooq.DataType;
    +import org.jooq.SQLDialect;
    +import org.jooq.impl.AbstractDataType;
    +import org.jooq.impl.SQLDataType;
    +
    +/**
    + * Supported data types for the {@link SQLDialect#ASE} dialect
    + *
    + * @see <a href="http://infocenter.sybase.com/help/topic/com.sybase.infocenter.dc36271.1550/html/blocks/X31825.htm">http://infocenter.sybase.com/help/topic/com.sybase.infocenter.dc36271.1550/html/blocks/X31825.htm</a>
    + * @author Lukas Eder
    + */
    +public class ASEDataType<T> extends AbstractDataType<T> {
    +
    +    /**
    +     * Generated UID
    +     */
    +    private static final long                      serialVersionUID           = -4442303192680774346L;
    +
    +    // -------------------------------------------------------------------------
    +    // Default SQL data types and synonyms thereof
    +    // -------------------------------------------------------------------------
    +
    +    public static final ASEDataType<Byte>       TINYINT                    = new ASEDataType<Byte>(SQLDataType.TINYINT, "tinyint");
    +    public static final ASEDataType<Short>      SMALLINT                   = new ASEDataType<Short>(SQLDataType.SMALLINT, "smallint");
    +    public static final ASEDataType<Short>      UNSIGNEDSMALLLINT          = new ASEDataType<Short>(SQLDataType.SMALLINT, "unsigned smallint");
    +    public static final ASEDataType<Integer>    INT                        = new ASEDataType<Integer>(SQLDataType.INTEGER, "int");
    +    public static final ASEDataType<Integer>    INTEGER                    = new ASEDataType<Integer>(SQLDataType.INTEGER, "integer");
    +    public static final ASEDataType<Integer>    UNSIGNEDINT                = new ASEDataType<Integer>(SQLDataType.INTEGER, "unsigned int");
    +    public static final ASEDataType<Long>       BIGINT                     = new ASEDataType<Long>(SQLDataType.BIGINT, "bigint");
    +    public static final ASEDataType<Long>       UNSIGNEDBIGINT             = new ASEDataType<Long>(SQLDataType.BIGINT, "unsigned bigint");
    +    public static final ASEDataType<Double>     DOUBLE_PRECISION           = new ASEDataType<Double>(SQLDataType.DOUBLE, "double precision");
    +    public static final ASEDataType<Double>     FLOAT                      = new ASEDataType<Double>(SQLDataType.FLOAT, "float");
    +    public static final ASEDataType<Float>      REAL                       = new ASEDataType<Float>(SQLDataType.REAL, "real");
    +    public static final ASEDataType<BigDecimal> DECIMAL                    = new ASEDataType<BigDecimal>(SQLDataType.DECIMAL, "decimal");
    +    public static final ASEDataType<BigDecimal> DEC                        = new ASEDataType<BigDecimal>(SQLDataType.DECIMAL, "dec");
    +    public static final ASEDataType<BigDecimal> NUMERIC                    = new ASEDataType<BigDecimal>(SQLDataType.NUMERIC, "numeric");
    +    public static final ASEDataType<Boolean>    BIT                        = new ASEDataType<Boolean>(SQLDataType.BIT, "bit");
    +    public static final ASEDataType<String>     VARCHAR                    = new ASEDataType<String>(SQLDataType.VARCHAR, "varchar");
    +    public static final ASEDataType<String>     CHAR                       = new ASEDataType<String>(SQLDataType.CHAR, "char");
    +    public static final ASEDataType<String>     LONGVARCHAR                = new ASEDataType<String>(SQLDataType.LONGVARCHAR, "text");
    +    public static final ASEDataType<String>     NCHAR                      = new ASEDataType<String>(SQLDataType.NCHAR, "nchar");
    +    public static final ASEDataType<String>     NVARCHAR                   = new ASEDataType<String>(SQLDataType.NVARCHAR, "nvarchar");
    +    public static final ASEDataType<String>     TEXT                       = new ASEDataType<String>(SQLDataType.CLOB, "text");
    +    public static final ASEDataType<Date>       DATE                       = new ASEDataType<Date>(SQLDataType.DATE, "date");
    +    public static final ASEDataType<Time>       TIME                       = new ASEDataType<Time>(SQLDataType.TIME, "time");
    +    public static final ASEDataType<Timestamp>  DATETIME                   = new ASEDataType<Timestamp>(SQLDataType.TIMESTAMP, "datetime");
    +    public static final ASEDataType<Timestamp>  TIMESTAMP                  = new ASEDataType<Timestamp>(SQLDataType.TIMESTAMP, "datetime");
    +    public static final ASEDataType<byte[]>     BINARY                     = new ASEDataType<byte[]>(SQLDataType.BINARY, "binary");
    +    public static final ASEDataType<byte[]>     VARBINARY                  = new ASEDataType<byte[]>(SQLDataType.VARBINARY, "varbinary");
    +
    +    // -------------------------------------------------------------------------
    +    // Compatibility types for supported SQLDataTypes
    +    // -------------------------------------------------------------------------
    +
    +    protected static final ASEDataType<byte[]>  __BLOB                     = new ASEDataType<byte[]>(SQLDataType.BLOB, "binary");
    +    protected static final ASEDataType<byte[]>  __LONGVARBINARY            = new ASEDataType<byte[]>(SQLDataType.LONGVARBINARY, "varbinary");
    +    protected static final ASEDataType<Boolean> __BOOLEAN                  = new ASEDataType<Boolean>(SQLDataType.BOOLEAN, "bit");
    +    protected static final ASEDataType<String>  __LONGNVARCHAR             = new ASEDataType<String>(SQLDataType.LONGNVARCHAR, "unitext");
    +
    +    // -------------------------------------------------------------------------
    +    // Compatibility types for supported Java types
    +    // -------------------------------------------------------------------------
    +
    +    protected static final ASEDataType<BigInteger> __BIGINTEGER = new ASEDataType<BigInteger>(SQLDataType.DECIMAL_INTEGER, "decimal");
    +
    +    // -------------------------------------------------------------------------
    +    // Dialect-specific data types and synonyms thereof
    +    // -------------------------------------------------------------------------
    +
    +    public static final ASEDataType<String>     UNICHAR               = new ASEDataType<String>(SQLDataType.NCHAR, "unichar");
    +    public static final ASEDataType<String>     UNITEXT               = new ASEDataType<String>(SQLDataType.NCLOB, "unitext");
    +    public static final ASEDataType<String>     UNIVARCHAR            = new ASEDataType<String>(SQLDataType.NVARCHAR, "univarchar");
    +    public static final ASEDataType<String>     SYSNAME               = new ASEDataType<String>(SQLDataType.VARCHAR, "sysname");
    +    public static final ASEDataType<String>     LONGSYSNAME           = new ASEDataType<String>(SQLDataType.VARCHAR, "longsysname");
    +    public static final ASEDataType<BigDecimal> MONEY                 = new ASEDataType<BigDecimal>(SQLDataType.DECIMAL, "money");
    +    public static final ASEDataType<BigDecimal> SMALLMONEY            = new ASEDataType<BigDecimal>(SQLDataType.DECIMAL, "smallmoney");
    +    public static final ASEDataType<Timestamp>  SMALLDATETIME         = new ASEDataType<Timestamp>(SQLDataType.TIMESTAMP, "smalldatetime");
    +    public static final ASEDataType<Timestamp>  BIGDATETIME           = new ASEDataType<Timestamp>(SQLDataType.TIMESTAMP, "bigdatetime");
    +    public static final ASEDataType<Time>       BIGTIME               = new ASEDataType<Time>(SQLDataType.TIME, "bigtime");
    +    public static final ASEDataType<byte[]>     IMAGE                 = new ASEDataType<byte[]>(SQLDataType.BINARY, "image");
    +
    +
    +    private ASEDataType(SQLDataType<T> sqlDataType, String typeName) {
    +        super(SQLDialect.ASE, sqlDataType, sqlDataType.getType(), typeName);
    +    }
    +
    +    public static <T> DataType<T> getDataType(Class<? extends T> type) {
    +        return getDataType(SQLDialect.ASE, type);
    +    }
    +
    +    public static DataType<Object> getDefaultDataType(String typeName) {
    +        return getDefaultDataType(SQLDialect.ASE, typeName);
    +    }
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/util/ase/ASEFactory.java b/jOOQ/src/main/java/org/jooq/util/ase/ASEFactory.java
    new file mode 100644
    index 00000000000..19213289238
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/util/ase/ASEFactory.java
    @@ -0,0 +1,89 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq.util.ase;
    +
    +import java.sql.Connection;
    +
    +import org.jooq.SQLDialect;
    +import org.jooq.SchemaMapping;
    +import org.jooq.conf.Settings;
    +import org.jooq.impl.Factory;
    +
    +/**
    + * A {@link SQLDialect#ASE} specific factory
    + *
    + * @author Lukas Eder
    + */
    +@SuppressWarnings("deprecation")
    +public class ASEFactory extends Factory {
    +
    +    /**
    +     * Generated UID
    +     */
    +    private static final long serialVersionUID = 6530433807914995633L;
    +
    +    /**
    +     * Create a factory with connection and a schema mapping configured
    +     *
    +     * @param connection The connection to use with objects created from this
    +     *            factory
    +     * @param mapping The schema mapping to use with objects created from this
    +     *            factory
    +     * @deprecated - 2.0.5 - Use {@link #ASEFactory(Connection, Settings)}
    +     *             instead
    +     */
    +    @Deprecated
    +    public ASEFactory(Connection connection, SchemaMapping mapping) {
    +        super(connection, SQLDialect.ASE, mapping);
    +    }
    +
    +    /**
    +     * Create a factory with connection and a settings configured
    +     *
    +     * @param connection The connection to use with objects created from this
    +     *            factory
    +     * @param settings The runtime settings to apply to objects created from
    +     *            this factory
    +     */
    +    public ASEFactory(Connection connection, Settings settings) {
    +        super(connection, SQLDialect.ASE, settings);
    +    }
    +
    +    /**
    +     * Create a factory with connection
    +     *
    +     * @param connection The connection to use with objects created from this
    +     *            factory
    +     */
    +    public ASEFactory(Connection connection) {
    +        super(connection, SQLDialect.ASE);
    +    }
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/util/cubrid/CUBRIDDataType.java b/jOOQ/src/main/java/org/jooq/util/cubrid/CUBRIDDataType.java
    new file mode 100644
    index 00000000000..87b3b3733d9
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/util/cubrid/CUBRIDDataType.java
    @@ -0,0 +1,141 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +
    +package org.jooq.util.cubrid;
    +
    +import java.math.BigDecimal;
    +import java.math.BigInteger;
    +import java.sql.Date;
    +import java.sql.Time;
    +import java.sql.Timestamp;
    +
    +import org.jooq.DataType;
    +import org.jooq.SQLDialect;
    +import org.jooq.impl.AbstractDataType;
    +import org.jooq.impl.SQLDataType;
    +
    +/**
    + * Supported data types for the {@link SQLDialect#CUBRID} dialect
    + *
    + * @author Lukas Eder
    + */
    +public class CUBRIDDataType<T> extends AbstractDataType<T> {
    +
    +    /**
    +     * Generated UID
    +     */
    +    private static final long                     serialVersionUID = -5677365115109672781L;
    +
    +    // -------------------------------------------------------------------------
    +    // Default SQL data types and synonyms thereof
    +    // -------------------------------------------------------------------------
    +
    +    public static final CUBRIDDataType<Integer>    INT                      = new CUBRIDDataType<Integer>(SQLDataType.INTEGER, "int");
    +    public static final CUBRIDDataType<Integer>    INTEGER                  = new CUBRIDDataType<Integer>(SQLDataType.INTEGER, "integer");
    +    public static final CUBRIDDataType<Short>      SHORT                    = new CUBRIDDataType<Short>(SQLDataType.SMALLINT, "short");
    +    public static final CUBRIDDataType<Short>      SMALLINT                 = new CUBRIDDataType<Short>(SQLDataType.SMALLINT, "smallint");
    +    public static final CUBRIDDataType<Long>       BIGINT                   = new CUBRIDDataType<Long>(SQLDataType.BIGINT, "bigint");
    +    public static final CUBRIDDataType<BigDecimal> DECIMAL                  = new CUBRIDDataType<BigDecimal>(SQLDataType.DECIMAL, "decimal");
    +    public static final CUBRIDDataType<BigDecimal> DEC                      = new CUBRIDDataType<BigDecimal>(SQLDataType.DECIMAL, "dec");
    +    public static final CUBRIDDataType<BigDecimal> NUMERIC                  = new CUBRIDDataType<BigDecimal>(SQLDataType.DECIMAL, "numeric");
    +    public static final CUBRIDDataType<Float>      FLOAT                    = new CUBRIDDataType<Float>(SQLDataType.REAL, "float");
    +    public static final CUBRIDDataType<Float>      REAL                     = new CUBRIDDataType<Float>(SQLDataType.REAL, "real");
    +    public static final CUBRIDDataType<Double>     DOUBLE                   = new CUBRIDDataType<Double>(SQLDataType.DOUBLE, "double");
    +    public static final CUBRIDDataType<Double>     DOUBLEPRECISION          = new CUBRIDDataType<Double>(SQLDataType.DOUBLE, "double precision");
    +
    +    public static final CUBRIDDataType<String>     VARCHAR                  = new CUBRIDDataType<String>(SQLDataType.VARCHAR, "varchar");
    +    public static final CUBRIDDataType<String>     CHARVARYING              = new CUBRIDDataType<String>(SQLDataType.VARCHAR, "char varying");
    +    public static final CUBRIDDataType<String>     CHARACTERVARYING         = new CUBRIDDataType<String>(SQLDataType.VARCHAR, "character varying");
    +    public static final CUBRIDDataType<String>     CHAR                     = new CUBRIDDataType<String>(SQLDataType.CHAR, "char", "varchar");
    +    public static final CUBRIDDataType<String>     CHARACTER                = new CUBRIDDataType<String>(SQLDataType.CHAR, "character", "varchar");
    +    public static final CUBRIDDataType<String>     STRING                   = new CUBRIDDataType<String>(SQLDataType.VARCHAR, "string");
    +    public static final CUBRIDDataType<String>     NCHAR                    = new CUBRIDDataType<String>(SQLDataType.NCHAR, "nchar");
    +    public static final CUBRIDDataType<String>     NCHARVARYING             = new CUBRIDDataType<String>(SQLDataType.NVARCHAR, "nchar varying");
    +    public static final CUBRIDDataType<String>     NATIONALCHARVARYING      = new CUBRIDDataType<String>(SQLDataType.NVARCHAR, "national char varying");
    +    public static final CUBRIDDataType<String>     NATIONALCHARACTERVARYING = new CUBRIDDataType<String>(SQLDataType.NVARCHAR, "national character varying");
    +    public static final CUBRIDDataType<String>     CLOB                     = new CUBRIDDataType<String>(SQLDataType.CLOB, "clob");
    +
    +    public static final CUBRIDDataType<Date>       DATE                     = new CUBRIDDataType<Date>(SQLDataType.DATE, "date");
    +    public static final CUBRIDDataType<Time>       TIME                     = new CUBRIDDataType<Time>(SQLDataType.TIME, "time");
    +    public static final CUBRIDDataType<Timestamp>  DATETIME                 = new CUBRIDDataType<Timestamp>(SQLDataType.TIMESTAMP, "datetime");
    +    public static final CUBRIDDataType<Timestamp>  TIMESTAMP                = new CUBRIDDataType<Timestamp>(SQLDataType.TIMESTAMP, "timestamp");
    +
    +    public static final CUBRIDDataType<byte[]>     BITVARYING               = new CUBRIDDataType<byte[]>(SQLDataType.VARBINARY, "bitvarying");
    +    public static final CUBRIDDataType<byte[]>     BIT                      = new CUBRIDDataType<byte[]>(SQLDataType.BINARY, "bit");
    +    public static final CUBRIDDataType<byte[]>     BLOB                     = new CUBRIDDataType<byte[]>(SQLDataType.BLOB, "blob");
    +
    +    // -------------------------------------------------------------------------
    +    // Compatibility types for supported SQLDataTypes
    +    // -------------------------------------------------------------------------
    +
    +    protected static final CUBRIDDataType<Boolean>    __BOOL                = new CUBRIDDataType<Boolean>(SQLDataType.BOOLEAN, "bit", "bit(1)");
    +    protected static final CUBRIDDataType<Boolean>    __BIT                 = new CUBRIDDataType<Boolean>(SQLDataType.BIT, "bit", "bit(1)");
    +    protected static final CUBRIDDataType<String>     __LONGNVARCHAR        = new CUBRIDDataType<String>(SQLDataType.LONGNVARCHAR, "nvarchar");
    +    protected static final CUBRIDDataType<String>     __NCLOB               = new CUBRIDDataType<String>(SQLDataType.NCLOB, "clob");
    +    protected static final CUBRIDDataType<String>     __LONGVARCHAR         = new CUBRIDDataType<String>(SQLDataType.LONGVARCHAR, "varchar");
    +    protected static final CUBRIDDataType<byte[]>     __LONGVARBINARY       = new CUBRIDDataType<byte[]>(SQLDataType.LONGVARBINARY, "blob");
    +    protected static final CUBRIDDataType<Byte>       __TINYINT             = new CUBRIDDataType<Byte>(SQLDataType.TINYINT, "smallint");
    +    protected static final CUBRIDDataType<Double>     __FLOAT               = new CUBRIDDataType<Double>(SQLDataType.DOUBLE, "double");
    +    protected static final CUBRIDDataType<BigDecimal> __NUMERIC             = new CUBRIDDataType<BigDecimal>(SQLDataType.NUMERIC, "decimal");
    +
    +    // -------------------------------------------------------------------------
    +    // Compatibility types for supported Java types
    +    // -------------------------------------------------------------------------
    +
    +    protected static final CUBRIDDataType<BigInteger> __BIGINTEGER = new CUBRIDDataType<BigInteger>(SQLDataType.DECIMAL_INTEGER, "decimal", "decimal");
    +
    +    // -------------------------------------------------------------------------
    +    // Dialect-specific data types and synonyms thereof
    +    // -------------------------------------------------------------------------
    +
    +    public static final CUBRIDDataType<Double> MONETARY             = new CUBRIDDataType<Double>(SQLDataType.DOUBLE, "monetary");
    +
    +    private CUBRIDDataType(SQLDataType<T> sqlDataType, String typeName) {
    +        super(SQLDialect.CUBRID, sqlDataType, sqlDataType.getType(), typeName);
    +    }
    +
    +    private CUBRIDDataType(SQLDataType<T> sqlDataType, String typeName, String castTypeName) {
    +        super(SQLDialect.CUBRID, sqlDataType, sqlDataType.getType(), typeName, castTypeName);
    +    }
    +
    +    public static <T> DataType<T> getDataType(Class<? extends T> type) {
    +        return getDataType(SQLDialect.CUBRID, type);
    +    }
    +
    +    public static DataType<Object> getDefaultDataType(String typeName) {
    +        return getDefaultDataType(SQLDialect.CUBRID, typeName);
    +    }
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/util/cubrid/CUBRIDFactory.java b/jOOQ/src/main/java/org/jooq/util/cubrid/CUBRIDFactory.java
    new file mode 100644
    index 00000000000..f1c4433a4a9
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/util/cubrid/CUBRIDFactory.java
    @@ -0,0 +1,87 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq.util.cubrid;
    +
    +import java.sql.Connection;
    +
    +import org.jooq.SQLDialect;
    +import org.jooq.conf.Settings;
    +import org.jooq.impl.Factory;
    +
    +/**
    + * A {@link SQLDialect#CUBRID} specific factory
    + *
    + * @author Lukas Eder
    + */
    +public class CUBRIDFactory extends Factory {
    +
    +    /**
    +     * Generated UID
    +     */
    +    private static final long serialVersionUID = 6530433807914995633L;
    +
    +    /**
    +     * Create a factory with connection and a schema mapping configured
    +     *
    +     * @param connection The connection to use with objects created from this
    +     *            factory
    +     * @param mapping The schema mapping to use with objects created from this
    +     *            factory
    +     * @deprecated - 2.0.5 - Use {@link #CUBRIDFactory(Connection, Settings)}
    +     *             instead
    +     */
    +    @Deprecated
    +    public CUBRIDFactory(Connection connection, org.jooq.SchemaMapping mapping) {
    +        super(connection, SQLDialect.CUBRID, mapping);
    +    }
    +
    +    /**
    +     * Create a factory with connection and a settings configured
    +     *
    +     * @param connection The connection to use with objects created from this
    +     *            factory
    +     * @param settings The runtime settings to apply to objects created from
    +     *            this factory
    +     */
    +    public CUBRIDFactory(Connection connection, Settings settings) {
    +        super(connection, SQLDialect.CUBRID, settings);
    +    }
    +
    +    /**
    +     * Create a factory with connection
    +     *
    +     * @param connection The connection to use with objects created from this
    +     *            factory
    +     */
    +    public CUBRIDFactory(Connection connection) {
    +        super(connection, SQLDialect.CUBRID);
    +    }
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/util/db2/DB2DataType.java b/jOOQ/src/main/java/org/jooq/util/db2/DB2DataType.java
    new file mode 100644
    index 00000000000..2fec877c097
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/util/db2/DB2DataType.java
    @@ -0,0 +1,132 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq.util.db2;
    +
    +import java.math.BigDecimal;
    +import java.math.BigInteger;
    +import java.sql.Date;
    +import java.sql.Time;
    +import java.sql.Timestamp;
    +
    +import org.jooq.DataType;
    +import org.jooq.SQLDialect;
    +import org.jooq.impl.AbstractDataType;
    +import org.jooq.impl.SQLDataType;
    +
    +/**
    + * Supported data types for the {@link SQLDialect#DB2} dialect
    + *
    + * @see <a href="http://publib.boulder.ibm.com/infocenter/db2luw/v9/index.jsp?topic=/com.ibm.db2.udb.apdv.java.doc/doc/rjvjdata.htm">http://publib.boulder.ibm.com/infocenter/db2luw/v9/index.jsp?topic=/com.ibm.db2.udb.apdv.java.doc/doc/rjvjdata.htm</a>
    + * @author Espen Stromsnes
    + */
    +public class DB2DataType<T> extends AbstractDataType<T> {
    +
    +    /**
    +     * Generated UID
    +     */
    +    private static final long                   serialVersionUID   = -5677365115109672781L;
    +
    +    // -------------------------------------------------------------------------
    +    // Default SQL data types and synonyms thereof
    +    // -------------------------------------------------------------------------
    +
    +    public static final DB2DataType<Short>      SMALLINT    = new DB2DataType<Short>(SQLDataType.SMALLINT, "smallint");
    +    public static final DB2DataType<Integer>    INTEGER     = new DB2DataType<Integer>(SQLDataType.INTEGER, "integer");
    +    public static final DB2DataType<Long>       BIGINT      = new DB2DataType<Long>(SQLDataType.BIGINT, "bigint");
    +    public static final DB2DataType<Float>      REAL        = new DB2DataType<Float>(SQLDataType.REAL, "real");
    +    public static final DB2DataType<Double>     DOUBLE      = new DB2DataType<Double>(SQLDataType.DOUBLE, "double");
    +    public static final DB2DataType<BigDecimal> DECIMAL     = new DB2DataType<BigDecimal>(SQLDataType.DECIMAL, "decimal");
    +    public static final DB2DataType<BigDecimal> DECFLOAT    = new DB2DataType<BigDecimal>(SQLDataType.DECIMAL, "decfloat");
    +    public static final DB2DataType<String>     VARCHAR     = new DB2DataType<String>(SQLDataType.VARCHAR, "varchar", "varchar(32672)");
    +    public static final DB2DataType<String>     CHAR        = new DB2DataType<String>(SQLDataType.CHAR, "char", "varchar(32672)");
    +    public static final DB2DataType<String>     CHARACTER   = new DB2DataType<String>(SQLDataType.CHAR, "character", "varchar(32672)");
    +    public static final DB2DataType<String>     LONGVARCHAR = new DB2DataType<String>(SQLDataType.LONGVARCHAR, "long varchar");
    +    public static final DB2DataType<String>     CLOB        = new DB2DataType<String>(SQLDataType.CLOB, "clob");
    +    public static final DB2DataType<byte[]>     BLOB        = new DB2DataType<byte[]>(SQLDataType.BLOB, "blob");
    +    public static final DB2DataType<Date>       DATE        = new DB2DataType<Date>(SQLDataType.DATE, "date");
    +    public static final DB2DataType<Time>       TIME        = new DB2DataType<Time>(SQLDataType.TIME, "time");
    +    public static final DB2DataType<Timestamp>  TIMESTAMP   = new DB2DataType<Timestamp>(SQLDataType.TIMESTAMP, "timestamp");
    +
    +    // -------------------------------------------------------------------------
    +    // Compatibility types for supported SQLDataTypes
    +    // -------------------------------------------------------------------------
    +
    +    protected static final DB2DataType<byte[]>     __BINARY        = new DB2DataType<byte[]>(SQLDataType.BINARY, "blob");
    +    protected static final DB2DataType<Boolean>    __BIT           = new DB2DataType<Boolean>(SQLDataType.BIT, "smallint");
    +    protected static final DB2DataType<Boolean>    __BOOLEAN       = new DB2DataType<Boolean>(SQLDataType.BOOLEAN, "smallint");
    +    protected static final DB2DataType<byte[]>     __LONGVARBINARY = new DB2DataType<byte[]>(SQLDataType.LONGVARBINARY, "blob");
    +    protected static final DB2DataType<String>     __NCHAR         = new DB2DataType<String>(SQLDataType.NCHAR, "char", "varchar(32672)");
    +    protected static final DB2DataType<String>     __NCLOB         = new DB2DataType<String>(SQLDataType.NCLOB, "clob");
    +    protected static final DB2DataType<String>     __LONGNVARCHAR  = new DB2DataType<String>(SQLDataType.LONGNVARCHAR, "long varchar");
    +    protected static final DB2DataType<BigDecimal> __NUMERIC       = new DB2DataType<BigDecimal>(SQLDataType.NUMERIC, "decimal", "decimal");
    +    protected static final DB2DataType<String>     __NVARCHAR      = new DB2DataType<String>(SQLDataType.NVARCHAR, "varchar", "varchar(32672)");
    +    protected static final DB2DataType<Byte>       __TINYINT       = new DB2DataType<Byte>(SQLDataType.TINYINT, "smallint");
    +    protected static final DB2DataType<byte[]>     __VARBINARY     = new DB2DataType<byte[]>(SQLDataType.VARBINARY, "blob");
    +
    +    // -------------------------------------------------------------------------
    +    // Compatibility types for supported Java types
    +    // -------------------------------------------------------------------------
    +
    +    protected static final DB2DataType<BigInteger> __BIGINTEGER = new DB2DataType<BigInteger>(SQLDataType.DECIMAL_INTEGER, "decimal", "decimal(31)");
    +
    +    // -------------------------------------------------------------------------
    +    // Dialect-specific data types and synonyms thereof
    +    // -------------------------------------------------------------------------
    +
    +    public static final DB2DataType<String> XML               = new DB2DataType<String>(SQLDataType.CLOB, "xml");
    +    public static final DB2DataType<String> DBCLOB            = new DB2DataType<String>(SQLDataType.CLOB, "dbclob");
    +    public static final DB2DataType<String> GRAPHIC           = new DB2DataType<String>(SQLDataType.CLOB, "graphic");
    +    public static final DB2DataType<String> VARGRAPHIC        = new DB2DataType<String>(SQLDataType.CLOB, "vargraphic");
    +    public static final DB2DataType<byte[]> CHARFORBITDATA    = new DB2DataType<byte[]>(SQLDataType.BLOB, "char for bit data");
    +    public static final DB2DataType<byte[]> VARCHARFORBITDATA = new DB2DataType<byte[]>(SQLDataType.BLOB, "varchar(32672) for bit data");
    +    public static final DB2DataType<byte[]> ROWID             = new DB2DataType<byte[]>(SQLDataType.BLOB, "rowid");
    +
    +
    +    private DB2DataType(SQLDataType<T> sqlDataType, String typeName) {
    +        super(SQLDialect.DB2, sqlDataType, sqlDataType.getType(), typeName);
    +    }
    +
    +    private DB2DataType(SQLDataType<T> sqlDataType, String typeName, String castTypeName) {
    +        super(SQLDialect.DB2, sqlDataType, sqlDataType.getType(), typeName, castTypeName);
    +    }
    +
    +    public static <T> DataType<T> getDataType(Class<? extends T> type) {
    +        return getDataType(SQLDialect.DB2, type);
    +    }
    +
    +    public static DataType<Object> getDefaultDataType(String typeName) {
    +        return getDefaultDataType(SQLDialect.DB2, typeName);
    +    }
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/util/db2/DB2Factory.java b/jOOQ/src/main/java/org/jooq/util/db2/DB2Factory.java
    new file mode 100644
    index 00000000000..bcaa2c758a7
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/util/db2/DB2Factory.java
    @@ -0,0 +1,94 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq.util.db2;
    +
    +import java.sql.Connection;
    +
    +import org.jooq.SQLDialect;
    +import org.jooq.SchemaMapping;
    +import org.jooq.conf.Settings;
    +import org.jooq.impl.Factory;
    +
    +/**
    + * A {@link SQLDialect#DB2} specific factory
    + *
    + * @author Lukas Eder
    + */
    +@SuppressWarnings("deprecation")
    +public class DB2Factory extends Factory {
    +
    +    /**
    +     * Generated UID
    +     */
    +    private static final long serialVersionUID = -5683650832655465156L;
    +
    +    /**
    +     * Create a factory with connection and a schema mapping configured
    +     *
    +     * @param connection The connection to use with objects created from this
    +     *            factory
    +     * @param mapping The schema mapping to use with objects created from this
    +     *            factory
    +     * @deprecated - 2.0.5 - Use {@link #DB2Factory(Connection, Settings)}
    +     *             instead
    +     */
    +    @Deprecated
    +    public DB2Factory(Connection connection, SchemaMapping mapping) {
    +        super(connection, SQLDialect.DB2, mapping);
    +    }
    +
    +    /**
    +     * Create a factory with connection and a settings configured
    +     *
    +     * @param connection The connection to use with objects created from this
    +     *            factory
    +     * @param settings The runtime settings to apply to objects created from
    +     *            this factory
    +     */
    +    public DB2Factory(Connection connection, Settings settings) {
    +        super(connection, SQLDialect.DB2, settings);
    +    }
    +
    +    /**
    +     * Create a factory with connection
    +     *
    +     * @param connection The connection to use with objects created from this
    +     *            factory
    +     */
    +    public DB2Factory(Connection connection) {
    +        super(connection, SQLDialect.DB2);
    +    }
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/util/derby/DerbyDataType.java b/jOOQ/src/main/java/org/jooq/util/derby/DerbyDataType.java
    new file mode 100644
    index 00000000000..794a0b76620
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/util/derby/DerbyDataType.java
    @@ -0,0 +1,145 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +
    +package org.jooq.util.derby;
    +
    +import java.math.BigDecimal;
    +import java.math.BigInteger;
    +import java.sql.Date;
    +import java.sql.Time;
    +import java.sql.Timestamp;
    +
    +import org.jooq.DataType;
    +import org.jooq.SQLDialect;
    +import org.jooq.impl.AbstractDataType;
    +import org.jooq.impl.SQLDataType;
    +
    +/**
    + * Supported data types for the {@link SQLDialect#DERBY} dialect
    + *
    + * @author Lukas Eder
    + * @see <a href="http://db.apache.org/derby/docs/10.7/ref/crefsqlj31068.html">http://db.apache.org/derby/docs/10.7/ref/crefsqlj31068.html</a>
    + */
    +public class DerbyDataType<T> extends AbstractDataType<T> {
    +
    +    /**
    +     * Generated UID
    +     */
    +    private static final long                     serialVersionUID           = 9064795517702394227L;
    +
    +    // -------------------------------------------------------------------------
    +    // Default SQL data types and synonyms thereof
    +    // -------------------------------------------------------------------------
    +
    +    public static final DerbyDataType<Short>      SMALLINT                   = new DerbyDataType<Short>(SQLDataType.SMALLINT, "smallint");
    +    public static final DerbyDataType<Integer>    INT                        = new DerbyDataType<Integer>(SQLDataType.INTEGER, "int");
    +    public static final DerbyDataType<Integer>    INTEGER                    = new DerbyDataType<Integer>(SQLDataType.INTEGER, "integer");
    +    public static final DerbyDataType<Long>       BIGINT                     = new DerbyDataType<Long>(SQLDataType.BIGINT, "bigint");
    +    public static final DerbyDataType<Double>     DOUBLE                     = new DerbyDataType<Double>(SQLDataType.DOUBLE, "double");
    +    public static final DerbyDataType<Double>     DOUBLEPRECISION            = new DerbyDataType<Double>(SQLDataType.DOUBLE, "double precision");
    +    public static final DerbyDataType<Double>     FLOAT                      = new DerbyDataType<Double>(SQLDataType.FLOAT, "float");
    +    public static final DerbyDataType<Float>      REAL                       = new DerbyDataType<Float>(SQLDataType.REAL, "real");
    +    public static final DerbyDataType<BigDecimal> DECIMAL                    = new DerbyDataType<BigDecimal>(SQLDataType.DECIMAL, "decimal");
    +    public static final DerbyDataType<BigDecimal> DEC                        = new DerbyDataType<BigDecimal>(SQLDataType.DECIMAL, "dec");
    +    public static final DerbyDataType<BigDecimal> NUMERIC                    = new DerbyDataType<BigDecimal>(SQLDataType.NUMERIC, "numeric");
    +    public static final DerbyDataType<String>     VARCHAR                    = new DerbyDataType<String>(SQLDataType.VARCHAR, "varchar", "varchar(32672)");
    +    public static final DerbyDataType<String>     LONGVARCHAR                = new DerbyDataType<String>(SQLDataType.LONGVARCHAR, "long varchar");
    +    public static final DerbyDataType<String>     CHAR                       = new DerbyDataType<String>(SQLDataType.CHAR, "char", "varchar(32672)");
    +    public static final DerbyDataType<String>     CHARACTER                  = new DerbyDataType<String>(SQLDataType.CHAR, "character", "varchar(32672)");
    +    public static final DerbyDataType<String>     CLOB                       = new DerbyDataType<String>(SQLDataType.CLOB, "clob");
    +    public static final DerbyDataType<String>     CHARACTERLARGEOBJECT       = new DerbyDataType<String>(SQLDataType.CLOB, "character large object");
    +    public static final DerbyDataType<String>     CHARVARYING                = new DerbyDataType<String>(SQLDataType.VARCHAR, "char varying", "char varying(32672)");
    +    public static final DerbyDataType<String>     CHARACTERVARYING           = new DerbyDataType<String>(SQLDataType.VARCHAR, "character varying", "character varying(32672)");
    +    public static final DerbyDataType<Boolean>    BOOLEAN                    = new DerbyDataType<Boolean>(SQLDataType.BOOLEAN, "boolean");
    +    public static final DerbyDataType<Date>       DATE                       = new DerbyDataType<Date>(SQLDataType.DATE, "date");
    +    public static final DerbyDataType<Time>       TIME                       = new DerbyDataType<Time>(SQLDataType.TIME, "time");
    +    public static final DerbyDataType<Timestamp>  TIMESTAMP                  = new DerbyDataType<Timestamp>(SQLDataType.TIMESTAMP, "timestamp");
    +    public static final DerbyDataType<byte[]>     BLOB                       = new DerbyDataType<byte[]>(SQLDataType.BLOB, "blob");
    +    public static final DerbyDataType<byte[]>     BINARYLARGEOBJECT          = new DerbyDataType<byte[]>(SQLDataType.BLOB, "binary large object");
    +
    +    // -------------------------------------------------------------------------
    +    // Compatibility types for supported SQLDataTypes
    +    // -------------------------------------------------------------------------
    +
    +    protected static final DerbyDataType<byte[]>     __BINARY                = new DerbyDataType<byte[]>(SQLDataType.BINARY, "blob");
    +    protected static final DerbyDataType<Boolean>    __BIT                   = new DerbyDataType<Boolean>(SQLDataType.BIT, "boolean");
    +    protected static final DerbyDataType<byte[]>     __LONGVARBINARY         = new DerbyDataType<byte[]>(SQLDataType.LONGVARBINARY, "blob");
    +    protected static final DerbyDataType<String>     __NCHAR                 = new DerbyDataType<String>(SQLDataType.NCHAR, "char", "varchar(32672)");
    +    protected static final DerbyDataType<String>     __NCLOB                 = new DerbyDataType<String>(SQLDataType.NCLOB, "clob");
    +    protected static final DerbyDataType<String>     __LONGNVARCHAR          = new DerbyDataType<String>(SQLDataType.LONGNVARCHAR, "long varchar");
    +    protected static final DerbyDataType<String>     __NVARCHAR              = new DerbyDataType<String>(SQLDataType.NVARCHAR, "varchar", "varchar(32672)");
    +    protected static final DerbyDataType<Byte>       __TINYINT               = new DerbyDataType<Byte>(SQLDataType.TINYINT, "smallint");
    +    protected static final DerbyDataType<byte[]>     __VARBINARY             = new DerbyDataType<byte[]>(SQLDataType.VARBINARY, "blob");
    +
    +    // -------------------------------------------------------------------------
    +    // Compatibility types for supported Java types
    +    // -------------------------------------------------------------------------
    +
    +    protected static final DerbyDataType<BigInteger> __BIGINTEGER            = new DerbyDataType<BigInteger>(SQLDataType.DECIMAL_INTEGER, "decimal", "decimal(31)");
    +
    +    // -------------------------------------------------------------------------
    +    // Dialect-specific data types and synonyms thereof
    +    // -------------------------------------------------------------------------
    +
    +    public static final DerbyDataType<byte[]>     CHARFORBITDATA             = new DerbyDataType<byte[]>(SQLDataType.BINARY, "char for bit data");
    +    public static final DerbyDataType<byte[]>     CHARACTERFORBITDATA        = new DerbyDataType<byte[]>(SQLDataType.BINARY, "character for bit data");
    +    public static final DerbyDataType<byte[]>     LONGVARCHARFORBITDATA      = new DerbyDataType<byte[]>(SQLDataType.BINARY, "long varchar for bit data");
    +    public static final DerbyDataType<byte[]>     VARCHARFORBITDATA          = new DerbyDataType<byte[]>(SQLDataType.VARBINARY, "varchar for bit data", "varchar(32672) for bit data");
    +    public static final DerbyDataType<byte[]>     CHARVARYINGFORBITDATA      = new DerbyDataType<byte[]>(SQLDataType.VARBINARY, "char varying for bit data", "char varying(32672) for bit data");
    +    public static final DerbyDataType<byte[]>     CHARACTERVARYINGFORBITDATA = new DerbyDataType<byte[]>(SQLDataType.VARBINARY, "character varying for bit data", "character varying (32672) for bit data");
    +    public static final DerbyDataType<String>     ORGAPACHEDERBYCATALOGTYPEDESCRIPTOR
    +                                                                             = new DerbyDataType<String>(SQLDataType.CLOB, "org.apache.derby.catalog.TypeDescriptor");
    +    public static final DerbyDataType<String>     ORGAPACHEDERBYCATALOGINDEXDESCRIPTOR
    +                                                                             = new DerbyDataType<String>(SQLDataType.CLOB, "org.apache.derby.catalog.IndexDescriptor");
    +    public static final DerbyDataType<String>     JAVAIOSERIALIZABLE         = new DerbyDataType<String>(SQLDataType.CLOB, "java.io.Serializable");
    +
    +
    +    private DerbyDataType(SQLDataType<T> sqlDataType, String typeName) {
    +        super(SQLDialect.DERBY, sqlDataType, sqlDataType.getType(), typeName);
    +    }
    +
    +    private DerbyDataType(SQLDataType<T> sqlDataType, String typeName, String castName) {
    +        super(SQLDialect.DERBY, sqlDataType, sqlDataType.getType(), typeName, castName);
    +    }
    +
    +    public static <T> DataType<T> getDataType(Class<? extends T> type) {
    +        return getDataType(SQLDialect.DERBY, type);
    +    }
    +
    +    public static DataType<Object> getDefaultDataType(String typeName) {
    +        return getDefaultDataType(SQLDialect.DERBY, typeName);
    +    }
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/util/derby/DerbyFactory.java b/jOOQ/src/main/java/org/jooq/util/derby/DerbyFactory.java
    new file mode 100644
    index 00000000000..139012312dd
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/util/derby/DerbyFactory.java
    @@ -0,0 +1,94 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq.util.derby;
    +
    +import java.sql.Connection;
    +
    +import org.jooq.SQLDialect;
    +import org.jooq.SchemaMapping;
    +import org.jooq.conf.Settings;
    +import org.jooq.impl.Factory;
    +
    +/**
    + * A {@link SQLDialect#DERBY} specific factory
    + *
    + * @author Lukas Eder
    + */
    +@SuppressWarnings("deprecation")
    +public class DerbyFactory extends Factory {
    +
    +    /**
    +     * Generated UID
    +     */
    +    private static final long serialVersionUID = -6387408751125022685L;
    +
    +    /**
    +     * Create a factory with connection and a schema mapping configured
    +     *
    +     * @param connection The connection to use with objects created from this
    +     *            factory
    +     * @param mapping The schema mapping to use with objects created from this
    +     *            factory
    +     * @deprecated - 2.0.5 - Use {@link #DerbyFactory(Connection, Settings)}
    +     *             instead
    +     */
    +    @Deprecated
    +    public DerbyFactory(Connection connection, SchemaMapping mapping) {
    +        super(connection, SQLDialect.DERBY, mapping);
    +    }
    +
    +    /**
    +     * Create a factory with connection and a settings configured
    +     *
    +     * @param connection The connection to use with objects created from this
    +     *            factory
    +     * @param settings The runtime settings to apply to objects created from
    +     *            this factory
    +     */
    +    public DerbyFactory(Connection connection, Settings settings) {
    +        super(connection, SQLDialect.DERBY, settings);
    +    }
    +
    +    /**
    +     * Create a factory with connection
    +     *
    +     * @param connection The connection to use with objects created from this
    +     *            factory
    +     */
    +    public DerbyFactory(Connection connection) {
    +        super(connection, SQLDialect.DERBY);
    +    }
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/util/h2/H2DataType.java b/jOOQ/src/main/java/org/jooq/util/h2/H2DataType.java
    new file mode 100644
    index 00000000000..43f31119f3f
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/util/h2/H2DataType.java
    @@ -0,0 +1,158 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq.util.h2;
    +
    +import java.math.BigDecimal;
    +import java.math.BigInteger;
    +import java.sql.Date;
    +import java.sql.Time;
    +import java.sql.Timestamp;
    +
    +import org.jooq.DataType;
    +import org.jooq.Record;
    +import org.jooq.Result;
    +import org.jooq.SQLDialect;
    +import org.jooq.impl.AbstractDataType;
    +import org.jooq.impl.SQLDataType;
    +
    +/**
    + * Supported data types for the {@link SQLDialect#H2} dialect
    + *
    + * @author Lukas Eder
    + * @see <a href="http://www.h2database.com/html/datatypes.html">http://www.h2database.com/html/datatypes.html</a>
    + */
    +public class H2DataType<T> extends AbstractDataType<T> {
    +
    +    /**
    +     * Generated UID
    +     */
    +    private static final long                  serialVersionUID      = -5677365115109672781L;
    +
    +    // -------------------------------------------------------------------------
    +    // Default SQL data types and synonyms thereof
    +    // -------------------------------------------------------------------------
    +
    +    public static final H2DataType<Byte>       TINYINT               = new H2DataType<Byte>(SQLDataType.TINYINT, "tinyint");
    +    public static final H2DataType<Short>      SMALLINT              = new H2DataType<Short>(SQLDataType.SMALLINT, "smallint");
    +    public static final H2DataType<Short>      INT2                  = new H2DataType<Short>(SQLDataType.SMALLINT, "int2");
    +    public static final H2DataType<Integer>    INT                   = new H2DataType<Integer>(SQLDataType.INTEGER, "int");
    +    public static final H2DataType<Integer>    INTEGER               = new H2DataType<Integer>(SQLDataType.INTEGER, "integer");
    +    public static final H2DataType<Integer>    MEDIUMINT             = new H2DataType<Integer>(SQLDataType.INTEGER, "mediumint");
    +    public static final H2DataType<Integer>    INT4                  = new H2DataType<Integer>(SQLDataType.INTEGER, "int4");
    +    public static final H2DataType<Integer>    SIGNED                = new H2DataType<Integer>(SQLDataType.INTEGER, "signed");
    +    public static final H2DataType<Boolean>    BOOLEAN               = new H2DataType<Boolean>(SQLDataType.BOOLEAN, "boolean");
    +    public static final H2DataType<Boolean>    BOOL                  = new H2DataType<Boolean>(SQLDataType.BOOLEAN, "bool");
    +    public static final H2DataType<Boolean>    BIT                   = new H2DataType<Boolean>(SQLDataType.BIT, "bit");
    +    public static final H2DataType<Long>       BIGINT                = new H2DataType<Long>(SQLDataType.BIGINT, "bigint");
    +    public static final H2DataType<Long>       INT8                  = new H2DataType<Long>(SQLDataType.BIGINT, "int8");
    +    public static final H2DataType<BigDecimal> DECIMAL               = new H2DataType<BigDecimal>(SQLDataType.DECIMAL, "decimal");
    +    public static final H2DataType<BigDecimal> DEC                   = new H2DataType<BigDecimal>(SQLDataType.DECIMAL, "dec");
    +    public static final H2DataType<BigDecimal> NUMBER                = new H2DataType<BigDecimal>(SQLDataType.NUMERIC, "number");
    +    public static final H2DataType<BigDecimal> NUMERIC               = new H2DataType<BigDecimal>(SQLDataType.NUMERIC, "numeric");
    +    public static final H2DataType<Double>     DOUBLE                = new H2DataType<Double>(SQLDataType.DOUBLE, "double");
    +    public static final H2DataType<Double>     FLOAT                 = new H2DataType<Double>(SQLDataType.FLOAT, "float");
    +    public static final H2DataType<Double>     FLOAT4                = new H2DataType<Double>(SQLDataType.FLOAT, "float4");
    +    public static final H2DataType<Double>     FLOAT8                = new H2DataType<Double>(SQLDataType.FLOAT, "float8");
    +    public static final H2DataType<Float>      REAL                  = new H2DataType<Float>(SQLDataType.REAL, "real");
    +    public static final H2DataType<Time>       TIME                  = new H2DataType<Time>(SQLDataType.TIME, "time");
    +    public static final H2DataType<Date>       DATE                  = new H2DataType<Date>(SQLDataType.DATE, "date");
    +    public static final H2DataType<Timestamp>  TIMESTAMP             = new H2DataType<Timestamp>(SQLDataType.TIMESTAMP, "timestamp");
    +    public static final H2DataType<Timestamp>  DATETIME              = new H2DataType<Timestamp>(SQLDataType.TIMESTAMP, "datetime");
    +    public static final H2DataType<byte[]>     BINARY                = new H2DataType<byte[]>(SQLDataType.BINARY, "binary");
    +    public static final H2DataType<byte[]>     VARBINARY             = new H2DataType<byte[]>(SQLDataType.VARBINARY, "varbinary");
    +    public static final H2DataType<byte[]>     LONGVARBINARY         = new H2DataType<byte[]>(SQLDataType.LONGVARBINARY, "longvarbinary");
    +    public static final H2DataType<byte[]>     BLOB                  = new H2DataType<byte[]>(SQLDataType.BLOB, "blob");
    +    public static final H2DataType<Object>     OTHER                 = new H2DataType<Object>(SQLDataType.OTHER, "other");
    +    public static final H2DataType<String>     VARCHAR               = new H2DataType<String>(SQLDataType.VARCHAR, "varchar");
    +    public static final H2DataType<String>     VARCHAR2              = new H2DataType<String>(SQLDataType.VARCHAR, "varchar2");
    +    public static final H2DataType<String>     CHAR                  = new H2DataType<String>(SQLDataType.CHAR, "char");
    +    public static final H2DataType<String>     CHARACTER             = new H2DataType<String>(SQLDataType.CHAR, "character");
    +    public static final H2DataType<String>     LONGVARCHAR           = new H2DataType<String>(SQLDataType.LONGVARCHAR, "longvarchar");
    +    public static final H2DataType<String>     CLOB                  = new H2DataType<String>(SQLDataType.CLOB, "clob");
    +    public static final H2DataType<String>     NVARCHAR              = new H2DataType<String>(SQLDataType.NVARCHAR, "nvarchar");
    +    public static final H2DataType<String>     NVARCHAR2             = new H2DataType<String>(SQLDataType.NVARCHAR, "nvarchar2");
    +    public static final H2DataType<String>     NCHAR                 = new H2DataType<String>(SQLDataType.NCHAR, "nchar");
    +    public static final H2DataType<String>     NCLOB                 = new H2DataType<String>(SQLDataType.NCLOB, "nclob");
    +
    +    // -------------------------------------------------------------------------
    +    // Compatibility types for supported SQLDataTypes
    +    // -------------------------------------------------------------------------
    +
    +    protected static final H2DataType<String>         __LONGNVARCHAR = new H2DataType<String>(SQLDataType.LONGNVARCHAR, "longvarchar");
    +    protected static final H2DataType<Result<Record>> __RESULT       = new H2DataType<Result<Record>>(SQLDataType.RESULT, "result_set");
    +
    +    // -------------------------------------------------------------------------
    +    // Compatibility types for supported Java types
    +    // -------------------------------------------------------------------------
    +
    +    protected static final H2DataType<BigInteger> __BIGINTEGER       = new H2DataType<BigInteger>(SQLDataType.DECIMAL_INTEGER, "decimal");
    +
    +    // -------------------------------------------------------------------------
    +    // Dialect-specific data types and synonyms thereof
    +    // -------------------------------------------------------------------------
    +
    +    public static final H2DataType<Short>      YEAR                  = new H2DataType<Short>(SQLDataType.SMALLINT, "year");
    +    public static final H2DataType<Long>       IDENTITY              = new H2DataType<Long>(SQLDataType.BIGINT, "identity");
    +    public static final H2DataType<Timestamp>  SMALLDATETIME         = new H2DataType<Timestamp>(SQLDataType.TIMESTAMP, "smalldatetime");
    +    public static final H2DataType<byte[]>     RAW                   = new H2DataType<byte[]>(SQLDataType.BLOB, "raw");
    +    public static final H2DataType<byte[]>     BYTEA                 = new H2DataType<byte[]>(SQLDataType.BLOB, "bytea");
    +    public static final H2DataType<byte[]>     TINYBLOB              = new H2DataType<byte[]>(SQLDataType.BLOB, "tinyblob");
    +    public static final H2DataType<byte[]>     MEDIUMBLOB            = new H2DataType<byte[]>(SQLDataType.BLOB, "mediumblob");
    +    public static final H2DataType<byte[]>     LONGBLOB              = new H2DataType<byte[]>(SQLDataType.BLOB, "longblob");
    +    public static final H2DataType<byte[]>     IMAGE                 = new H2DataType<byte[]>(SQLDataType.BLOB, "image");
    +    public static final H2DataType<byte[]>     OID                   = new H2DataType<byte[]>(SQLDataType.BLOB, "oid");
    +    public static final H2DataType<String>     VARCHAR_CASESENSITIVE = new H2DataType<String>(SQLDataType.VARCHAR, "varchar_casesensitive");
    +    public static final H2DataType<String>     VARCHAR_IGNORECASE    = new H2DataType<String>(SQLDataType.VARCHAR, "varchar_ignorecase");
    +    public static final H2DataType<String>     UUID                  = new H2DataType<String>(SQLDataType.VARCHAR, "uuid");
    +    public static final H2DataType<String>     TINYTEXT              = new H2DataType<String>(SQLDataType.CLOB, "tinytext");
    +    public static final H2DataType<String>     TEXT                  = new H2DataType<String>(SQLDataType.CLOB, "text");
    +    public static final H2DataType<String>     MEDIUMTEXT            = new H2DataType<String>(SQLDataType.CLOB, "mediumtext");
    +    public static final H2DataType<String>     LONGTEXT              = new H2DataType<String>(SQLDataType.CLOB, "longtext");
    +    public static final H2DataType<String>     NTEXT                 = new H2DataType<String>(SQLDataType.NCLOB, "ntext");
    +
    +
    +    private H2DataType(SQLDataType<T> sqlDataType, String typeName) {
    +        super(SQLDialect.H2, sqlDataType, sqlDataType.getType(), typeName);
    +    }
    +
    +    public static <T> DataType<T> getDataType(Class<? extends T> type) {
    +        return getDataType(SQLDialect.H2, type);
    +    }
    +
    +    public static DataType<Object> getDefaultDataType(String typeName) {
    +        return getDefaultDataType(SQLDialect.H2, typeName);
    +    }
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/util/h2/H2Factory.java b/jOOQ/src/main/java/org/jooq/util/h2/H2Factory.java
    new file mode 100644
    index 00000000000..009c76c8d3c
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/util/h2/H2Factory.java
    @@ -0,0 +1,94 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq.util.h2;
    +
    +import java.sql.Connection;
    +
    +import org.jooq.SQLDialect;
    +import org.jooq.SchemaMapping;
    +import org.jooq.conf.Settings;
    +import org.jooq.impl.Factory;
    +
    +/**
    + * A {@link SQLDialect#H2} specific factory
    + *
    + * @author Lukas Eder
    + */
    +@SuppressWarnings("deprecation")
    +public class H2Factory extends Factory {
    +
    +    /**
    +     * Generated UID
    +     */
    +    private static final long serialVersionUID = -9107771365147317008L;
    +
    +    /**
    +     * Create a factory with connection and a schema mapping configured
    +     *
    +     * @param connection The connection to use with objects created from this
    +     *            factory
    +     * @param mapping The schema mapping to use with objects created from this
    +     *            factory
    +     * @deprecated - 2.0.5 - Use {@link #H2Factory(Connection, Settings)}
    +     *             instead
    +     */
    +    @Deprecated
    +    public H2Factory(Connection connection, SchemaMapping mapping) {
    +        super(connection, SQLDialect.H2, mapping);
    +    }
    +
    +    /**
    +     * Create a factory with connection and a settings configured
    +     *
    +     * @param connection The connection to use with objects created from this
    +     *            factory
    +     * @param settings The runtime settings to apply to objects created from
    +     *            this factory
    +     */
    +    public H2Factory(Connection connection, Settings settings) {
    +        super(connection, SQLDialect.H2, settings);
    +    }
    +
    +    /**
    +     * Create a factory with connection
    +     *
    +     * @param connection The connection to use with objects created from this
    +     *            factory
    +     */
    +    public H2Factory(Connection connection) {
    +        super(connection, SQLDialect.H2);
    +    }
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/util/hsqldb/HSQLDBDataType.java b/jOOQ/src/main/java/org/jooq/util/hsqldb/HSQLDBDataType.java
    new file mode 100644
    index 00000000000..a02d1fad954
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/util/hsqldb/HSQLDBDataType.java
    @@ -0,0 +1,141 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +
    +package org.jooq.util.hsqldb;
    +
    +import java.math.BigDecimal;
    +import java.math.BigInteger;
    +import java.sql.Date;
    +import java.sql.Time;
    +import java.sql.Timestamp;
    +
    +import org.jooq.DataType;
    +import org.jooq.Record;
    +import org.jooq.Result;
    +import org.jooq.SQLDialect;
    +import org.jooq.impl.AbstractDataType;
    +import org.jooq.impl.SQLDataType;
    +
    +/**
    + * Supported data types for the {@link SQLDialect#HSQLDB} dialect
    + *
    + * @author Lukas Eder
    + * @see <a href="http://hsqldb.org/doc/guide/ch09.html#datatypes-section">http://hsqldb.org/doc/guide/ch09.html#datatypes-section</a>
    + * @see <a href="http://hsqldb.org/doc/2.0/guide/sqlgeneral-chapt.html#sqlgeneral_types_ops-sect">http://hsqldb.org/doc/2.0/guide/sqlgeneral-chapt.html#sqlgeneral_types_ops-sect</a>
    + */
    +public class HSQLDBDataType<T> extends AbstractDataType<T> {
    +
    +    /**
    +     * Generated UID
    +     */
    +    private static final long                      serialVersionUID      = -5677365115109672781L;
    +
    +    // -------------------------------------------------------------------------
    +    // Default SQL data types and synonyms thereof
    +    // -------------------------------------------------------------------------
    +
    +    public static final HSQLDBDataType<Byte>       TINYINT               = new HSQLDBDataType<Byte>(SQLDataType.TINYINT, "tinyint");
    +    public static final HSQLDBDataType<Short>      SMALLINT              = new HSQLDBDataType<Short>(SQLDataType.SMALLINT, "smallint");
    +    public static final HSQLDBDataType<Integer>    INT                   = new HSQLDBDataType<Integer>(SQLDataType.INTEGER, "int");
    +    public static final HSQLDBDataType<Integer>    INTEGER               = new HSQLDBDataType<Integer>(SQLDataType.INTEGER, "integer");
    +    public static final HSQLDBDataType<Long>       BIGINT                = new HSQLDBDataType<Long>(SQLDataType.BIGINT, "bigint");
    +    public static final HSQLDBDataType<Double>     DOUBLE                = new HSQLDBDataType<Double>(SQLDataType.DOUBLE, "double");
    +    public static final HSQLDBDataType<Double>     DOUBLEPRECISION       = new HSQLDBDataType<Double>(SQLDataType.DOUBLE, "double precision");
    +    public static final HSQLDBDataType<Double>     FLOAT                 = new HSQLDBDataType<Double>(SQLDataType.FLOAT, "float");
    +    public static final HSQLDBDataType<Float>      REAL                  = new HSQLDBDataType<Float>(SQLDataType.REAL, "real");
    +    public static final HSQLDBDataType<Boolean>    BOOLEAN               = new HSQLDBDataType<Boolean>(SQLDataType.BOOLEAN, "boolean");
    +    public static final HSQLDBDataType<Boolean>    BIT                   = new HSQLDBDataType<Boolean>(SQLDataType.BIT, "bit");
    +    public static final HSQLDBDataType<BigDecimal> DECIMAL               = new HSQLDBDataType<BigDecimal>(SQLDataType.DECIMAL, "decimal");
    +    public static final HSQLDBDataType<BigDecimal> NUMERIC               = new HSQLDBDataType<BigDecimal>(SQLDataType.NUMERIC, "numeric");
    +    public static final HSQLDBDataType<String>     VARCHAR               = new HSQLDBDataType<String>(SQLDataType.VARCHAR, "varchar", "varchar(32672)");
    +    public static final HSQLDBDataType<String>     LONGVARCHAR           = new HSQLDBDataType<String>(SQLDataType.LONGVARCHAR, "longvarchar");
    +    public static final HSQLDBDataType<String>     CHAR                  = new HSQLDBDataType<String>(SQLDataType.CHAR, "char");
    +    public static final HSQLDBDataType<String>     CHARACTER             = new HSQLDBDataType<String>(SQLDataType.CHAR, "character");
    +    public static final HSQLDBDataType<String>     CHARACTERVARYING      = new HSQLDBDataType<String>(SQLDataType.VARCHAR, "character varying", "character varying(32672)");
    +    public static final HSQLDBDataType<String>     CLOB                  = new HSQLDBDataType<String>(SQLDataType.CLOB, "clob");
    +    public static final HSQLDBDataType<String>     CHARLARGEOBJECT       = new HSQLDBDataType<String>(SQLDataType.CLOB, "char large object", "clob");
    +    public static final HSQLDBDataType<String>     CHARACTERLARGEOBJECT  = new HSQLDBDataType<String>(SQLDataType.CLOB, "character large object", "clob");
    +    public static final HSQLDBDataType<Date>       DATE                  = new HSQLDBDataType<Date>(SQLDataType.DATE, "date");
    +    public static final HSQLDBDataType<Time>       TIME                  = new HSQLDBDataType<Time>(SQLDataType.TIME, "time");
    +    public static final HSQLDBDataType<Timestamp>  TIMESTAMP             = new HSQLDBDataType<Timestamp>(SQLDataType.TIMESTAMP, "timestamp");
    +    public static final HSQLDBDataType<Timestamp>  DATETIME              = new HSQLDBDataType<Timestamp>(SQLDataType.TIMESTAMP, "datetime");
    +    public static final HSQLDBDataType<byte[]>     LONGVARBINARY         = new HSQLDBDataType<byte[]>(SQLDataType.LONGVARBINARY, "longvarbinary");
    +    public static final HSQLDBDataType<byte[]>     VARBINARY             = new HSQLDBDataType<byte[]>(SQLDataType.VARBINARY, "varbinary", "varbinary(32672)");
    +    public static final HSQLDBDataType<byte[]>     BINARY                = new HSQLDBDataType<byte[]>(SQLDataType.BINARY, "binary");
    +    public static final HSQLDBDataType<byte[]>     BLOB                  = new HSQLDBDataType<byte[]>(SQLDataType.BLOB, "blob");
    +    public static final HSQLDBDataType<byte[]>     BINARYLARGEOBJECT     = new HSQLDBDataType<byte[]>(SQLDataType.BLOB, "binary large object", "blob");
    +    public static final HSQLDBDataType<Object>     OTHER                 = new HSQLDBDataType<Object>(SQLDataType.OTHER, "other");
    +
    +    // -------------------------------------------------------------------------
    +    // Compatibility types for supported SQLDataTypes
    +    // -------------------------------------------------------------------------
    +
    +    protected static final HSQLDBDataType<String> __NCHAR                = new HSQLDBDataType<String>(SQLDataType.NCHAR, "char");
    +    protected static final HSQLDBDataType<String> __NCLOB                = new HSQLDBDataType<String>(SQLDataType.NCLOB, "clob");
    +    protected static final HSQLDBDataType<String> __LONGNVARCHAR         = new HSQLDBDataType<String>(SQLDataType.LONGNVARCHAR, "longvarchar");
    +    protected static final HSQLDBDataType<String> __NVARCHAR             = new HSQLDBDataType<String>(SQLDataType.NVARCHAR, "varchar", "varchar(32672)");
    +
    +    // -------------------------------------------------------------------------
    +    // Compatibility types for supported Java types
    +    // -------------------------------------------------------------------------
    +
    +    protected static final HSQLDBDataType<BigInteger> __BIGINTEGER       = new HSQLDBDataType<BigInteger>(SQLDataType.DECIMAL_INTEGER, "decimal");
    +
    +    // -------------------------------------------------------------------------
    +    // Dialect-specific data types and synonyms thereof
    +    // -------------------------------------------------------------------------
    +
    +    public static final HSQLDBDataType<String>         VARCHARIGNORECASE = new HSQLDBDataType<String>(SQLDataType.VARCHAR, "varchar_ignorecase", "varchar_ignorecase(32672)");
    +    public static final HSQLDBDataType<Object>         OBJECT            = new HSQLDBDataType<Object>(SQLDataType.OTHER, "object");
    +    public static final HSQLDBDataType<Result<Record>> ROW               = new HSQLDBDataType<Result<Record>>(SQLDataType.RESULT, "row");
    +
    +
    +    private HSQLDBDataType(SQLDataType<T> sqlDataType, String typeName) {
    +        super(SQLDialect.HSQLDB, sqlDataType, sqlDataType.getType(), typeName);
    +    }
    +
    +    private HSQLDBDataType(SQLDataType<T> sqlDataType, String typeName, String castTypeName) {
    +        super(SQLDialect.HSQLDB, sqlDataType, sqlDataType.getType(), typeName, castTypeName);
    +    }
    +
    +    public static <T> DataType<T> getDataType(Class<? extends T> type) {
    +        return getDataType(SQLDialect.HSQLDB, type);
    +    }
    +
    +    public static DataType<Object> getDefaultDataType(String typeName) {
    +        return getDefaultDataType(SQLDialect.HSQLDB, typeName);
    +    }
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/util/hsqldb/HSQLDBFactory.java b/jOOQ/src/main/java/org/jooq/util/hsqldb/HSQLDBFactory.java
    new file mode 100644
    index 00000000000..5155c819813
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/util/hsqldb/HSQLDBFactory.java
    @@ -0,0 +1,94 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq.util.hsqldb;
    +
    +import java.sql.Connection;
    +
    +import org.jooq.SQLDialect;
    +import org.jooq.SchemaMapping;
    +import org.jooq.conf.Settings;
    +import org.jooq.impl.Factory;
    +
    +/**
    + * A {@link SQLDialect#HSQLDB} specific factory
    + *
    + * @author Lukas Eder
    + */
    +@SuppressWarnings("deprecation")
    +public class HSQLDBFactory extends Factory {
    +
    +    /**
    +     * Generated UID
    +     */
    +    private static final long serialVersionUID = -2018237718414421677L;
    +
    +    /**
    +     * Create a factory with connection and a schema mapping configured
    +     *
    +     * @param connection The connection to use with objects created from this
    +     *            factory
    +     * @param mapping The schema mapping to use with objects created from this
    +     *            factory
    +     * @deprecated - 2.0.5 - Use {@link #HSQLDBFactory(Connection, Settings)}
    +     *             instead
    +     */
    +    @Deprecated
    +    public HSQLDBFactory(Connection connection, SchemaMapping mapping) {
    +        super(connection, SQLDialect.HSQLDB, mapping);
    +    }
    +
    +    /**
    +     * Create a factory with connection and a settings configured
    +     *
    +     * @param connection The connection to use with objects created from this
    +     *            factory
    +     * @param settings The runtime settings to apply to objects created from
    +     *            this factory
    +     */
    +    public HSQLDBFactory(Connection connection, Settings settings) {
    +        super(connection, SQLDialect.HSQLDB, settings);
    +    }
    +
    +    /**
    +     * Create a factory with connection
    +     *
    +     * @param connection The connection to use with objects created from this
    +     *            factory
    +     */
    +    public HSQLDBFactory(Connection connection) {
    +        super(connection, SQLDialect.HSQLDB);
    +    }
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/util/ingres/IngresDataType.java b/jOOQ/src/main/java/org/jooq/util/ingres/IngresDataType.java
    new file mode 100644
    index 00000000000..0e7f6df5319
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/util/ingres/IngresDataType.java
    @@ -0,0 +1,156 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +
    +package org.jooq.util.ingres;
    +
    +import java.math.BigDecimal;
    +import java.math.BigInteger;
    +import java.sql.Date;
    +import java.sql.Time;
    +import java.sql.Timestamp;
    +
    +import org.jooq.DataType;
    +import org.jooq.SQLDialect;
    +import org.jooq.impl.AbstractDataType;
    +import org.jooq.impl.SQLDataType;
    +
    +/**
    + * Supported data types for the {@link SQLDialect#INGRES} dialect
    + *
    + * @author Lukas Eder
    + * @see <a href="http://docs.ingres.com/ingres/9.3/quel-reference-guide/1240-data-types">http://docs.ingres.com/ingres/9.3/quel-reference-guide/1240-data-types</a>
    + * @see <a href="http://docs.ingres.com/ingres/10.0/sql-reference-guide/2638-storage-formats-of-data-types">http://docs.ingres.com/ingres/10.0/sql-reference-guide/2638-storage-formats-of-data-types</a>
    + */
    +public class IngresDataType<T> extends AbstractDataType<T> {
    +
    +    /**
    +     * Generated UID
    +     */
    +    private static final long                      serialVersionUID             = -5677365115109672781L;
    +
    +    // -------------------------------------------------------------------------
    +    // Default SQL data types and synonyms thereof
    +    // -------------------------------------------------------------------------
    +
    +    public static final IngresDataType<Byte>       TINYINT                      = new IngresDataType<Byte>(SQLDataType.TINYINT, "tinyint");
    +    public static final IngresDataType<Byte>       INTEGER1                     = new IngresDataType<Byte>(SQLDataType.TINYINT, "integer1");
    +    public static final IngresDataType<Byte>       I1                           = new IngresDataType<Byte>(SQLDataType.TINYINT, "i1");
    +    public static final IngresDataType<Short>      SMALLINT                     = new IngresDataType<Short>(SQLDataType.SMALLINT, "smallint");
    +    public static final IngresDataType<Short>      INTEGER2                     = new IngresDataType<Short>(SQLDataType.SMALLINT, "integer2");
    +    public static final IngresDataType<Short>      I2                           = new IngresDataType<Short>(SQLDataType.SMALLINT, "i2");
    +    public static final IngresDataType<Integer>    INTEGER                      = new IngresDataType<Integer>(SQLDataType.INTEGER, "integer");
    +    public static final IngresDataType<Integer>    INTEGER4                     = new IngresDataType<Integer>(SQLDataType.INTEGER, "integer4");
    +    public static final IngresDataType<Integer>    I4                           = new IngresDataType<Integer>(SQLDataType.INTEGER, "i4");
    +    public static final IngresDataType<Long>       BIGINT                       = new IngresDataType<Long>(SQLDataType.BIGINT, "bigint");
    +    public static final IngresDataType<Long>       INTEGER8                     = new IngresDataType<Long>(SQLDataType.BIGINT, "integer8");
    +    public static final IngresDataType<Long>       I8                           = new IngresDataType<Long>(SQLDataType.BIGINT, "i8");
    +    public static final IngresDataType<Double>     FLOAT                        = new IngresDataType<Double>(SQLDataType.FLOAT, "float");
    +    public static final IngresDataType<Double>     FLOAT8                       = new IngresDataType<Double>(SQLDataType.DOUBLE, "float8");
    +    public static final IngresDataType<Double>     DOUBLEPRECISION              = new IngresDataType<Double>(SQLDataType.DOUBLE, "double precision");
    +    public static final IngresDataType<Float>      REAL                         = new IngresDataType<Float>(SQLDataType.REAL, "real");
    +    public static final IngresDataType<Float>      FLOAT4                       = new IngresDataType<Float>(SQLDataType.REAL, "float4");
    +    public static final IngresDataType<Boolean>    BOOLEAN                      = new IngresDataType<Boolean>(SQLDataType.BOOLEAN, "boolean");
    +    public static final IngresDataType<BigDecimal> DECIMAL                      = new IngresDataType<BigDecimal>(SQLDataType.DECIMAL, "decimal", "decimal(38, 19)");
    +    public static final IngresDataType<String>     VARCHAR                      = new IngresDataType<String>(SQLDataType.VARCHAR, "varchar");
    +    public static final IngresDataType<String>     CHARACTERVARYING             = new IngresDataType<String>(SQLDataType.VARCHAR, "character varying");
    +    public static final IngresDataType<String>     LONGVARCHAR                  = new IngresDataType<String>(SQLDataType.LONGVARCHAR, "long varchar");
    +    public static final IngresDataType<String>     CHAR                         = new IngresDataType<String>(SQLDataType.CHAR, "char");
    +    public static final IngresDataType<String>     CHARACTER                    = new IngresDataType<String>(SQLDataType.CHAR, "character");
    +    public static final IngresDataType<String>     C                            = new IngresDataType<String>(SQLDataType.CHAR, "c");
    +    public static final IngresDataType<String>     CLOB                         = new IngresDataType<String>(SQLDataType.CLOB, "clob");
    +    public static final IngresDataType<String>     CHARLARGEOBJECT              = new IngresDataType<String>(SQLDataType.CLOB, "char large object");
    +    public static final IngresDataType<String>     CHARACTERLARGEOBJECT         = new IngresDataType<String>(SQLDataType.CLOB, "character large object");
    +    public static final IngresDataType<String>     NVARCHAR                     = new IngresDataType<String>(SQLDataType.NVARCHAR, "nvarchar");
    +    public static final IngresDataType<String>     LONGNVARCHAR                 = new IngresDataType<String>(SQLDataType.LONGNVARCHAR, "long nvarchar");
    +    public static final IngresDataType<String>     NCHAR                        = new IngresDataType<String>(SQLDataType.NCHAR, "nchar");
    +    public static final IngresDataType<String>     NCLOB                        = new IngresDataType<String>(SQLDataType.NCLOB, "nclob");
    +    public static final IngresDataType<String>     NCHARLARGEOBJECT             = new IngresDataType<String>(SQLDataType.NCLOB, "nchar large object");
    +    public static final IngresDataType<String>     NATIONALCHARACTERLARGEOBJECT = new IngresDataType<String>(SQLDataType.NCLOB, "national character large object");
    +    public static final IngresDataType<Date>       DATE                         = new IngresDataType<Date>(SQLDataType.DATE, "date");
    +    public static final IngresDataType<Time>       TIME                         = new IngresDataType<Time>(SQLDataType.TIME, "time");
    +    public static final IngresDataType<Timestamp>  TIMESTAMP                    = new IngresDataType<Timestamp>(SQLDataType.TIMESTAMP, "timestamp");
    +    public static final IngresDataType<byte[]>     BLOB                         = new IngresDataType<byte[]>(SQLDataType.BLOB, "blob");
    +    public static final IngresDataType<byte[]>     BINARYLARGEOBJECT            = new IngresDataType<byte[]>(SQLDataType.BLOB, "binary large object");
    +    public static final IngresDataType<byte[]>     BINARY                       = new IngresDataType<byte[]>(SQLDataType.BINARY, "binary");
    +    public static final IngresDataType<byte[]>     VARBINARY                    = new IngresDataType<byte[]>(SQLDataType.VARBINARY, "varbinary");
    +    public static final IngresDataType<byte[]>     LONGBYTE                     = new IngresDataType<byte[]>(SQLDataType.LONGVARBINARY, "long byte");
    +
    +    // -------------------------------------------------------------------------
    +    // Compatibility types for supported SQLDataTypes
    +    // -------------------------------------------------------------------------
    +
    +    public static final IngresDataType<Boolean>    BIT                          = new IngresDataType<Boolean>(SQLDataType.BIT, "boolean");
    +    public static final IngresDataType<BigDecimal> NUMERIC                      = new IngresDataType<BigDecimal>(SQLDataType.NUMERIC, "decimal", "decimal(38, 19)");
    +
    +    // -------------------------------------------------------------------------
    +    // Compatibility types for supported Java types
    +    // -------------------------------------------------------------------------
    +
    +    protected static final IngresDataType<BigInteger> __BIGINTEGER              = new IngresDataType<BigInteger>(SQLDataType.DECIMAL_INTEGER, "decimal", "decimal(38, 0)");
    +
    +    // -------------------------------------------------------------------------
    +    // Dialect-specific data types and synonyms thereof
    +    // -------------------------------------------------------------------------
    +
    +    public static final IngresDataType<String>     TEXT                         = new IngresDataType<String>(SQLDataType.CLOB, "text");
    +    public static final IngresDataType<Date>       ANSIDATE                     = new IngresDataType<Date>(SQLDataType.DATE, "ansidate");
    +    public static final IngresDataType<Date>       INGRESDATE                   = new IngresDataType<Date>(SQLDataType.DATE, "ingresdate");
    +    public static final IngresDataType<Time>       TIMEWITHTIMEZONE             = new IngresDataType<Time>(SQLDataType.TIME, "time with time zone");
    +    public static final IngresDataType<Time>       TIMEWITHOUTTIMEZONE          = new IngresDataType<Time>(SQLDataType.TIME, "time without time zone");
    +    public static final IngresDataType<Time>       TIMEWITHLOCALTIMEZONE        = new IngresDataType<Time>(SQLDataType.TIME, "time with local time zone");
    +    public static final IngresDataType<Timestamp>  TIMESTAMPWITHTIMEZONE        = new IngresDataType<Timestamp>(SQLDataType.TIMESTAMP, "timestamp with time zone");
    +    public static final IngresDataType<Timestamp>  TIMESTAMPWITHOUTTIMEZONE     = new IngresDataType<Timestamp>(SQLDataType.TIMESTAMP, "timestamp without time zone");
    +    public static final IngresDataType<Timestamp>  TIMESTAMPWITHLOCALTIMEZONE   = new IngresDataType<Timestamp>(SQLDataType.TIMESTAMP, "timestamp with local time zone");
    +    public static final IngresDataType<byte[]>     BYTE                         = new IngresDataType<byte[]>(SQLDataType.BINARY, "byte");
    +    public static final IngresDataType<byte[]>     VARBYTE                      = new IngresDataType<byte[]>(SQLDataType.VARBINARY, "varbyte");
    +
    +
    +    private IngresDataType(SQLDataType<T> sqlDataType, String typeName) {
    +        super(SQLDialect.INGRES, sqlDataType, sqlDataType.getType(), typeName);
    +    }
    +
    +    private IngresDataType(SQLDataType<T> sqlDataType, String typeName, String castTypeName) {
    +        super(SQLDialect.INGRES, sqlDataType, sqlDataType.getType(), typeName, castTypeName);
    +    }
    +
    +    public static <T> DataType<T> getDataType(Class<? extends T> type) {
    +        return getDataType(SQLDialect.INGRES, type);
    +    }
    +
    +    public static DataType<Object> getDefaultDataType(String typeName) {
    +        return getDefaultDataType(SQLDialect.INGRES, typeName);
    +    }
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/util/ingres/IngresFactory.java b/jOOQ/src/main/java/org/jooq/util/ingres/IngresFactory.java
    new file mode 100644
    index 00000000000..0fc67d47f1d
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/util/ingres/IngresFactory.java
    @@ -0,0 +1,94 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq.util.ingres;
    +
    +import java.sql.Connection;
    +
    +import org.jooq.SQLDialect;
    +import org.jooq.SchemaMapping;
    +import org.jooq.conf.Settings;
    +import org.jooq.impl.Factory;
    +
    +/**
    + * A {@link SQLDialect#INGRES} specific factory
    + *
    + * @author Lukas Eder
    + */
    +@SuppressWarnings("deprecation")
    +public class IngresFactory extends Factory {
    +
    +    /**
    +     * Generated UID
    +     */
    +    private static final long serialVersionUID = -2018237718414421677L;
    +
    +    /**
    +     * Create a factory with connection and a schema mapping configured
    +     *
    +     * @param connection The connection to use with objects created from this
    +     *            factory
    +     * @param mapping The schema mapping to use with objects created from this
    +     *            factory
    +     * @deprecated - 2.0.5 - Use {@link #IngresFactory(Connection, Settings)}
    +     *             instead
    +     */
    +    @Deprecated
    +    public IngresFactory(Connection connection, SchemaMapping mapping) {
    +        super(connection, SQLDialect.INGRES, mapping);
    +    }
    +
    +    /**
    +     * Create a factory with connection and a settings configured
    +     *
    +     * @param connection The connection to use with objects created from this
    +     *            factory
    +     * @param settings The runtime settings to apply to objects created from
    +     *            this factory
    +     */
    +    public IngresFactory(Connection connection, Settings settings) {
    +        super(connection, SQLDialect.INGRES, settings);
    +    }
    +
    +    /**
    +     * Create a factory with connection
    +     *
    +     * @param connection The connection to use with objects created from this
    +     *            factory
    +     */
    +    public IngresFactory(Connection connection) {
    +        super(connection, SQLDialect.INGRES);
    +    }
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/util/mysql/MySQLDataType.java b/jOOQ/src/main/java/org/jooq/util/mysql/MySQLDataType.java
    new file mode 100644
    index 00000000000..e3a4d6f49d9
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/util/mysql/MySQLDataType.java
    @@ -0,0 +1,146 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +
    +package org.jooq.util.mysql;
    +
    +import java.math.BigDecimal;
    +import java.math.BigInteger;
    +import java.sql.Date;
    +import java.sql.Time;
    +import java.sql.Timestamp;
    +
    +import org.jooq.DataType;
    +import org.jooq.SQLDialect;
    +import org.jooq.impl.AbstractDataType;
    +import org.jooq.impl.SQLDataType;
    +import org.jooq.tools.unsigned.UByte;
    +import org.jooq.tools.unsigned.UInteger;
    +import org.jooq.tools.unsigned.ULong;
    +import org.jooq.tools.unsigned.UShort;
    +
    +/**
    + * Supported data types for the {@link SQLDialect#MYSQL} dialect
    + *
    + * @author Lukas Eder
    + * @see <a href="http://dev.mysql.com/doc/refman/5.5/en/data-types.html">http://dev.mysql.com/doc/refman/5.5/en/data-types.html</a>
    + * @see <a href="http://dev.mysql.com/doc/refman/5.5/en/cast-functions.html#function_cast">http://dev.mysql.com/doc/refman/5.5/en/cast-functions.html#function_cast</a>
    + */
    +public class MySQLDataType<T> extends AbstractDataType<T> {
    +
    +    /**
    +     * Generated UID
    +     */
    +    private static final long                     serialVersionUID = -5677365115109672781L;
    +
    +    // -------------------------------------------------------------------------
    +    // Default SQL data types and synonyms thereof
    +    // -------------------------------------------------------------------------
    +
    +    public static final MySQLDataType<Byte>       TINYINT          = new MySQLDataType<Byte>(SQLDataType.TINYINT, "tinyint", "signed");
    +    public static final MySQLDataType<UByte>      TINYINTUNSIGNED  = new MySQLDataType<UByte>(SQLDataType.TINYINTUNSIGNED, "tinyintunsigned", "unsigned");
    +    public static final MySQLDataType<Short>      SMALLINT         = new MySQLDataType<Short>(SQLDataType.SMALLINT, "smallint", "signed");
    +    public static final MySQLDataType<UShort>     SMALLINTUNSIGNED = new MySQLDataType<UShort>(SQLDataType.SMALLINTUNSIGNED, "smallintunsigned", "unsigned");
    +    public static final MySQLDataType<Integer>    INT              = new MySQLDataType<Integer>(SQLDataType.INTEGER, "int", "signed");
    +    public static final MySQLDataType<UInteger>   INTUNSIGNED      = new MySQLDataType<UInteger>(SQLDataType.INTEGERUNSIGNED, "intunsigned", "unsigned");
    +    public static final MySQLDataType<Integer>    MEDIUMINT        = new MySQLDataType<Integer>(SQLDataType.INTEGER, "mediumint", "signed");
    +    public static final MySQLDataType<UInteger>   MEDIUMINTUNSIGNED= new MySQLDataType<UInteger>(SQLDataType.INTEGERUNSIGNED, "mediumintunsigned", "unsigned");
    +    public static final MySQLDataType<Integer>    INTEGER          = new MySQLDataType<Integer>(SQLDataType.INTEGER, "integer", "signed");
    +    public static final MySQLDataType<UInteger>   INTEGERUNSIGNED  = new MySQLDataType<UInteger>(SQLDataType.INTEGERUNSIGNED, "integerunsigned", "unsigned");
    +    public static final MySQLDataType<Long>       BIGINT           = new MySQLDataType<Long>(SQLDataType.BIGINT, "bigint", "signed");
    +    public static final MySQLDataType<ULong>      BIGINTUNSIGNED   = new MySQLDataType<ULong>(SQLDataType.BIGINTUNSIGNED, "bigintunsigned", "unsigned");
    +    public static final MySQLDataType<Double>     DOUBLE           = new MySQLDataType<Double>(SQLDataType.DOUBLE, "double", "decimal");
    +    public static final MySQLDataType<Double>     FLOAT            = new MySQLDataType<Double>(SQLDataType.FLOAT, "float", "decimal");
    +    public static final MySQLDataType<Float>      REAL             = new MySQLDataType<Float>(SQLDataType.REAL, "real", "decimal");
    +    public static final MySQLDataType<Boolean>    BOOLEAN          = new MySQLDataType<Boolean>(SQLDataType.BOOLEAN, "boolean", "unsigned");
    +    public static final MySQLDataType<Boolean>    BOOL             = new MySQLDataType<Boolean>(SQLDataType.BOOLEAN, "bool", "unsigned");
    +    public static final MySQLDataType<Boolean>    BIT              = new MySQLDataType<Boolean>(SQLDataType.BIT, "bit", "unsigned");
    +    public static final MySQLDataType<BigDecimal> DECIMAL          = new MySQLDataType<BigDecimal>(SQLDataType.DECIMAL, "decimal", "decimal");
    +    public static final MySQLDataType<BigDecimal> DEC              = new MySQLDataType<BigDecimal>(SQLDataType.DECIMAL, "dec", "decimal");
    +    public static final MySQLDataType<String>     VARCHAR          = new MySQLDataType<String>(SQLDataType.VARCHAR, "varchar", "char");
    +    public static final MySQLDataType<String>     CHAR             = new MySQLDataType<String>(SQLDataType.CHAR, "char", "char");
    +    public static final MySQLDataType<String>     TEXT             = new MySQLDataType<String>(SQLDataType.CLOB, "text", "char");
    +    public static final MySQLDataType<byte[]>     BLOB             = new MySQLDataType<byte[]>(SQLDataType.BLOB, "blob", "binary");
    +    public static final MySQLDataType<byte[]>     BINARY           = new MySQLDataType<byte[]>(SQLDataType.BINARY, "binary", "binary");
    +    public static final MySQLDataType<byte[]>     VARBINARY        = new MySQLDataType<byte[]>(SQLDataType.VARBINARY, "varbinary", "binary");
    +    public static final MySQLDataType<Date>       DATE             = new MySQLDataType<Date>(SQLDataType.DATE, "date", "date");
    +    public static final MySQLDataType<Time>       TIME             = new MySQLDataType<Time>(SQLDataType.TIME, "time", "time");
    +    public static final MySQLDataType<Timestamp>  TIMESTAMP        = new MySQLDataType<Timestamp>(SQLDataType.TIMESTAMP, "timestamp", "datetime");
    +    public static final MySQLDataType<Timestamp>  DATETIME         = new MySQLDataType<Timestamp>(SQLDataType.TIMESTAMP, "datetime", "datetime");
    +
    +    // -------------------------------------------------------------------------
    +    // Compatibility types for supported SQLDataTypes
    +    // -------------------------------------------------------------------------
    +
    +    protected static final MySQLDataType<String>     __NCHAR         = new MySQLDataType<String>(SQLDataType.NCHAR, "char", "char");
    +    protected static final MySQLDataType<String>     __NCLOB         = new MySQLDataType<String>(SQLDataType.NCLOB, "clob", "char");
    +    protected static final MySQLDataType<String>     __LONGNVARCHAR  = new MySQLDataType<String>(SQLDataType.LONGNVARCHAR, "varchar", "char");
    +    protected static final MySQLDataType<BigDecimal> __NUMERIC       = new MySQLDataType<BigDecimal>(SQLDataType.NUMERIC, "decimal", "decimal");
    +    protected static final MySQLDataType<String>     __NVARCHAR      = new MySQLDataType<String>(SQLDataType.NVARCHAR, "varchar", "char");
    +    protected static final MySQLDataType<String>     __LONGVARCHAR   = new MySQLDataType<String>(SQLDataType.LONGVARCHAR, "varchar", "char");
    +    protected static final MySQLDataType<byte[]>     __LONGVARBINARY = new MySQLDataType<byte[]>(SQLDataType.LONGVARBINARY, "varbinary", "binary");
    +
    +    // -------------------------------------------------------------------------
    +    // Compatibility types for supported Java types
    +    // -------------------------------------------------------------------------
    +
    +    protected static final MySQLDataType<BigInteger> __BIGINTEGER = new MySQLDataType<BigInteger>(SQLDataType.DECIMAL_INTEGER, "decimal", "decimal");
    +
    +    // -------------------------------------------------------------------------
    +    // Dialect-specific data types and synonyms thereof
    +    // -------------------------------------------------------------------------
    +
    +    public static final MySQLDataType<String>     MEDIUMTEXT       = new MySQLDataType<String>(SQLDataType.CLOB, "mediumtext", "char");
    +    public static final MySQLDataType<String>     LONGTEXT         = new MySQLDataType<String>(SQLDataType.CLOB, "longtext", "char");
    +    public static final MySQLDataType<String>     ENUM             = new MySQLDataType<String>(SQLDataType.VARCHAR, "enum", "char");
    +    public static final MySQLDataType<String>     SET              = new MySQLDataType<String>(SQLDataType.VARCHAR, "set", "char");
    +    public static final MySQLDataType<byte[]>     TINYBLOB         = new MySQLDataType<byte[]>(SQLDataType.BLOB, "tinyblob", "binary");
    +    public static final MySQLDataType<byte[]>     MEDIUMBLOB       = new MySQLDataType<byte[]>(SQLDataType.BLOB, "mediumblob", "binary");
    +    public static final MySQLDataType<byte[]>     LONGBLOB         = new MySQLDataType<byte[]>(SQLDataType.BLOB, "longblob", "binary");
    +    public static final MySQLDataType<Date>       YEAR             = new MySQLDataType<Date>(SQLDataType.DATE, "year", "date");
    +
    +
    +    private MySQLDataType(SQLDataType<T> sqlDataType, String typeName, String castTypeName) {
    +        super(SQLDialect.MYSQL, sqlDataType, sqlDataType.getType(), typeName, castTypeName);
    +    }
    +
    +    public static <T> DataType<T> getDataType(Class<? extends T> type) {
    +        return getDataType(SQLDialect.MYSQL, type);
    +    }
    +
    +    public static DataType<Object> getDefaultDataType(String typeName) {
    +        return getDefaultDataType(SQLDialect.MYSQL, typeName);
    +    }
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/util/mysql/MySQLFactory.java b/jOOQ/src/main/java/org/jooq/util/mysql/MySQLFactory.java
    new file mode 100644
    index 00000000000..373edce092f
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/util/mysql/MySQLFactory.java
    @@ -0,0 +1,368 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq.util.mysql;
    +
    +import java.sql.Connection;
    +
    +import org.jooq.EnumType;
    +import org.jooq.Field;
    +import org.jooq.SQLDialect;
    +import org.jooq.SchemaMapping;
    +import org.jooq.conf.Settings;
    +import org.jooq.impl.Factory;
    +
    +/**
    + * A {@link SQLDialect#MYSQL} specific factory
    + *
    + * @author Lukas Eder
    + */
    +@SuppressWarnings("deprecation")
    +public class MySQLFactory extends Factory {
    +
    +    /**
    +     * Generated UID
    +     */
    +    private static final long serialVersionUID = -8433470252008110069L;
    +
    +    /**
    +     * Create a factory with connection and a schema mapping configured
    +     *
    +     * @param connection The connection to use with objects created from this
    +     *            factory
    +     * @param mapping The schema mapping to use with objects created from this
    +     *            factory
    +     * @deprecated - 2.0.5 - Use {@link #MySQLFactory(Connection, Settings)}
    +     *             instead
    +     */
    +    @Deprecated
    +    public MySQLFactory(Connection connection, SchemaMapping mapping) {
    +        super(connection, SQLDialect.MYSQL, mapping);
    +    }
    +
    +    /**
    +     * Create a factory with connection and a settings configured
    +     *
    +     * @param connection The connection to use with objects created from this
    +     *            factory
    +     * @param settings The runtime settings to apply to objects created from
    +     *            this factory
    +     */
    +    public MySQLFactory(Connection connection, Settings settings) {
    +        super(connection, SQLDialect.MYSQL, settings);
    +    }
    +
    +    /**
    +     * Create a factory with connection
    +     *
    +     * @param connection The connection to use with objects created from this
    +     *            factory
    +     */
    +    public MySQLFactory(Connection connection) {
    +        super(connection, SQLDialect.MYSQL);
    +    }
    +
    +    // -------------------------------------------------------------------------
    +    // MySQL-specific compression and encryption functions
    +    // -------------------------------------------------------------------------
    +
    +    /**
    +     * Get the MySQL-specific <code>DECODE()</code> function
    +     * <p>
    +     * Don't mix this up with the various {@link Factory#decode()} methods!
    +     */
    +    public static Field<String> decode(String cryptString, String keyString) {
    +        return decode(val(cryptString), val(keyString));
    +    }
    +
    +    /**
    +     * Get the MySQL-specific <code>DECODE()</code> function
    +     * <p>
    +     * Don't mix this up with the various {@link Factory#decode()} methods!
    +     */
    +    public static Field<String> decode(Field<String> cryptString, Field<String> keyString) {
    +        return function("decode", String.class, cryptString, keyString);
    +    }
    +
    +    /**
    +     * Get the MySQL-specific <code>ENCODE()</code> function
    +     */
    +    public static Field<String> encode(String string, String keyString) {
    +        return encode(val(string), val(keyString));
    +    }
    +
    +    /**
    +     * Get the MySQL-specific <code>ENCODE()</code> function
    +     */
    +    public static Field<String> encode(Field<String> string, Field<String> keyString) {
    +        return function("encode", String.class, string, keyString);
    +    }
    +
    +    /**
    +     * Get the MySQL-specific <code>AES_DECRYPT()</code> function
    +     */
    +    public static Field<String> aesDecrypt(String cryptString, String keyString) {
    +        return aesDecrypt(val(cryptString), val(keyString));
    +    }
    +
    +    /**
    +     * Get the MySQL-specific <code>AES_DECRYPT()</code> function
    +     */
    +    public static Field<String> aesDecrypt(Field<String> cryptString, Field<String> keyString) {
    +        return function("aes_decrypt", String.class, cryptString, keyString);
    +    }
    +
    +    /**
    +     * Get the MySQL-specific <code>AES_ENCRYPT()</code> function
    +     */
    +    public static Field<String> aesEncrypt(String string, String keyString) {
    +        return aesEncrypt(val(string), val(keyString));
    +    }
    +
    +    /**
    +     * Get the MySQL-specific <code>AES_ENCRYPT()</code> function
    +     */
    +    public static Field<String> aesEncrypt(Field<String> string, Field<String> keyString) {
    +        return function("aes_encrypt", String.class, string, keyString);
    +    }
    +
    +    /**
    +     * Get the MySQL-specific <code>DES_DECRYPT()</code> function
    +     */
    +    public static Field<String> desDecrypt(String cryptString) {
    +        return desDecrypt(val(cryptString));
    +    }
    +
    +    /**
    +     * Get the MySQL-specific <code>DES_DECRYPT()</code> function
    +     */
    +    public static Field<String> desDecrypt(Field<String> cryptString) {
    +        return function("des_decrypt", String.class, cryptString);
    +    }
    +
    +    /**
    +     * Get the MySQL-specific <code>DES_DECRYPT()</code> function
    +     */
    +    public static Field<String> desDecrypt(String cryptString, String keyString) {
    +        return desDecrypt(val(cryptString), val(keyString));
    +    }
    +
    +    /**
    +     * Get the MySQL-specific <code>DES_DECRYPT()</code> function
    +     */
    +    public static Field<String> desDecrypt(Field<String> cryptString, Field<String> keyString) {
    +        return function("des_decrypt", String.class, cryptString, keyString);
    +    }
    +
    +    /**
    +     * Get the MySQL-specific <code>DES_ENCRYPT()</code> function
    +     */
    +    public static Field<String> desEncrypt(String string) {
    +        return desEncrypt(val(string));
    +    }
    +
    +    /**
    +     * Get the MySQL-specific <code>DES_ENCRYPT()</code> function
    +     */
    +    public static Field<String> desEncrypt(Field<String> string) {
    +        return function("des_encrypt", String.class, string);
    +    }
    +
    +    /**
    +     * Get the MySQL-specific <code>DES_ENCRYPT()</code> function
    +     */
    +    public static Field<String> desEncrypt(String string, String keyString) {
    +        return desEncrypt(val(string), val(keyString));
    +    }
    +
    +    /**
    +     * Get the MySQL-specific <code>DES_ENCRYPT()</code> function
    +     */
    +    public static Field<String> desEncrypt(Field<String> string, Field<String> keyString) {
    +        return function("des_encrypt", String.class, string, keyString);
    +    }
    +
    +    /**
    +     * Get the MySQL-specific <code>COMPRESS()</code> function
    +     */
    +    public static Field<String> compress(String string) {
    +        return compress(val(string));
    +    }
    +
    +    /**
    +     * Get the MySQL-specific <code>COMPRESS()</code> function
    +     */
    +    public static Field<String> compress(Field<String> string) {
    +        return function("compress", String.class, string);
    +    }
    +
    +    /**
    +     * Get the MySQL-specific <code>UNCOMPRESS()</code> function
    +     */
    +    public static Field<String> uncompress(String string) {
    +        return uncompress(val(string));
    +    }
    +
    +    /**
    +     * Get the MySQL-specific <code>UNCOMPRESS()</code> function
    +     */
    +    public static Field<String> uncompress(Field<String> string) {
    +        return function("uncompress", String.class, string);
    +    }
    +
    +    /**
    +     * Get the MySQL-specific <code>UNCOMPRESSED_LENGTH()</code> function
    +     */
    +    public static Field<Integer> uncompressedLength(String string) {
    +        return uncompressedLength(val(string));
    +    }
    +
    +    /**
    +     * Get the MySQL-specific <code>UNCOMPRESSED_LENGTH()</code> function
    +     */
    +    public static Field<Integer> uncompressedLength(Field<String> string) {
    +        return function("uncompressed_length", Integer.class, string);
    +    }
    +
    +    /**
    +     * Get the MySQL-specific <code>MD5()</code> function
    +     */
    +    public static Field<String> md5(String string) {
    +        return md5(val(string));
    +    }
    +
    +    /**
    +     * Get the MySQL-specific <code>MD5()</code> function
    +     */
    +    public static Field<String> md5(Field<String> string) {
    +        return function("md5", String.class, string);
    +    }
    +
    +    /**
    +     * Get the MySQL-specific <code>SHA1()</code> function
    +     */
    +    public static Field<String> sha1(String string) {
    +        return sha1(val(string));
    +    }
    +
    +    /**
    +     * Get the MySQL-specific <code>SHA1()</code> function
    +     */
    +    public static Field<String> sha1(Field<String> string) {
    +        return function("sha1", String.class, string);
    +    }
    +
    +    /**
    +     * Get the MySQL-specific <code>SHA2()</code> function
    +     */
    +    public static Field<String> sha2(String string, int hashLength) {
    +        return sha2(val(string), val(hashLength));
    +    }
    +
    +    /**
    +     * Get the MySQL-specific <code>SHA2()</code> function
    +     */
    +    public static Field<String> sha2(Field<String> string, Field<Integer> hashLength) {
    +        return function("sha2", String.class, string, hashLength);
    +    }
    +
    +    /**
    +     * Get the MySQL-specific <code>PASSWORD()</code> function
    +     */
    +    public static Field<String> password(String string) {
    +        return password(val(string));
    +    }
    +
    +    /**
    +     * Get the MySQL-specific <code>PASSWORD()</code> function
    +     */
    +    public static Field<String> password(Field<String> string) {
    +        return function("password", String.class, string);
    +    }
    +
    +    // -------------------------------------------------------------------------
    +    // Other utilities
    +    // -------------------------------------------------------------------------
    +
    +    /**
    +     * Get a field based {@link EnumType} by its MySQL-specific index
    +     * <p>
    +     * If your MySQL enum type contains these three values: <code>A, B, C</code>
    +     * , then this will be the mapping of indexes to values:
    +     * <table border="1">
    +     * <tr>
    +     * <th>Enum literal as in {@link Enum#name()}</th>
    +     * <th>Enum ordinal as in {@link Enum#ordinal()}</th>
    +     * <th>MySQL index</th>
    +     * </tr>
    +     * <tr>
    +     * <td><code>null</code></td>
    +     * <td><code>-</code></td>
    +     * <td><code>0</code></td>
    +     * </tr>
    +     * <tr>
    +     * <td><code>A</code></td>
    +     * <td><code>0</code></td>
    +     * <td><code>1</code></td>
    +     * </tr>
    +     * <tr>
    +     * <td><code>B</code></td>
    +     * <td><code>1</code></td>
    +     * <td><code>2</code></td>
    +     * </tr>
    +     * <tr>
    +     * <td><code>C</code></td>
    +     * <td><code>2</code></td>
    +     * <td><code>3</code></td>
    +     * </tr>
    +     * </table>
    +     * <p>
    +     * See <a
    +     * href="dev.mysql.com/doc/refman/5.5/en/enum.html">dev.mysql.com/doc/
    +     * refman/5.5/en/enum.html</a> for more details about MySQL enum types
    +     */
    +    public static <E extends java.lang.Enum<E> & org.jooq.EnumType> E enumType(Class<E> type, int index) {
    +        if (index <= 0) {
    +            return null;
    +        }
    +
    +        E[] values = type.getEnumConstants();
    +        if (index > values.length) {
    +            return null;
    +        }
    +
    +        return values[index - 1];
    +    }
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/util/oracle/OracleDataType.java b/jOOQ/src/main/java/org/jooq/util/oracle/OracleDataType.java
    new file mode 100644
    index 00000000000..5ff729f07ca
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/util/oracle/OracleDataType.java
    @@ -0,0 +1,167 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +
    +package org.jooq.util.oracle;
    +
    +import java.math.BigDecimal;
    +import java.math.BigInteger;
    +import java.sql.Date;
    +import java.sql.Time;
    +import java.sql.Timestamp;
    +
    +import org.jooq.DataType;
    +import org.jooq.Record;
    +import org.jooq.Result;
    +import org.jooq.SQLDialect;
    +import org.jooq.impl.AbstractDataType;
    +import org.jooq.impl.SQLDataType;
    +import org.jooq.types.DayToSecond;
    +import org.jooq.types.YearToMonth;
    +
    +/**
    + * Supported data types for the {@link SQLDialect#ORACLE} dialect
    + *
    + * @author Lukas Eder
    + * @see <a href="http://www.techonthenet.com/oracle/datatypes.php">http://www.techonthenet.com/oracle/datatypes.php</a>
    + * @see <a href="http://download.oracle.com/docs/cd/B19306_01/appdev.102/b14261/datatypes.htm">http://download.oracle.com/docs/cd/B19306_01/appdev.102/b14261/datatypes.htm</a>
    + */
    +public class OracleDataType<T> extends AbstractDataType<T> {
    +
    +    /**
    +     * Generated UID
    +     */
    +    private static final long                        serialVersionUID       = -5677365115109672781L;
    +
    +    // -------------------------------------------------------------------------
    +    // Default SQL data types and synonyms thereof
    +    // -------------------------------------------------------------------------
    +
    +    public static final OracleDataType<BigDecimal>   NUMBER                 = new OracleDataType<BigDecimal>(SQLDataType.NUMERIC, "number", true);
    +    public static final OracleDataType<BigDecimal>   NUMERIC                = new OracleDataType<BigDecimal>(SQLDataType.NUMERIC, "numeric", true);
    +    public static final OracleDataType<BigDecimal>   DECIMAL                = new OracleDataType<BigDecimal>(SQLDataType.DECIMAL, "decimal", true);
    +    public static final OracleDataType<BigDecimal>   DEC                    = new OracleDataType<BigDecimal>(SQLDataType.DECIMAL, "dec", true);
    +    public static final OracleDataType<String>       VARCHAR2               = new OracleDataType<String>(SQLDataType.VARCHAR, "varchar2", "varchar2(4000)");
    +    public static final OracleDataType<String>       VARCHAR                = new OracleDataType<String>(SQLDataType.VARCHAR, "varchar", "varchar2(4000)");
    +    public static final OracleDataType<String>       CHAR                   = new OracleDataType<String>(SQLDataType.CHAR, "char", "varchar2(4000)");
    +    public static final OracleDataType<String>       CLOB                   = new OracleDataType<String>(SQLDataType.CLOB, "clob");
    +    public static final OracleDataType<String>       NVARCHAR2              = new OracleDataType<String>(SQLDataType.NVARCHAR, "nvarchar2", "varchar2(4000)");
    +    public static final OracleDataType<String>       NVARCHAR               = new OracleDataType<String>(SQLDataType.NVARCHAR, "nvarchar", "varchar2(4000)");
    +    public static final OracleDataType<String>       NCHAR                  = new OracleDataType<String>(SQLDataType.NCHAR, "nchar", "varchar2(4000)");
    +    public static final OracleDataType<String>       NCLOB                  = new OracleDataType<String>(SQLDataType.NCLOB, "nclob");
    +    public static final OracleDataType<Date>         DATE                   = new OracleDataType<Date>(SQLDataType.DATE, "date");
    +    public static final OracleDataType<Timestamp>    TIMESTAMP              = new OracleDataType<Timestamp>(SQLDataType.TIMESTAMP, "timestamp");
    +    public static final OracleDataType<byte[]>       BLOB                   = new OracleDataType<byte[]>(SQLDataType.BLOB, "blob");
    +    public static final OracleDataType<YearToMonth>  INTERVALYEARTOMONTH    = new OracleDataType<YearToMonth>(SQLDataType.INTERVALYEARTOMONTH, "interval year to month");
    +    public static final OracleDataType<DayToSecond>  INTERVALDAYTOSECOND    = new OracleDataType<DayToSecond>(SQLDataType.INTERVALDAYTOSECOND, "interval day to second");
    +
    +    // -------------------------------------------------------------------------
    +    // Compatibility types for supported SQLDataTypes
    +    // -------------------------------------------------------------------------
    +
    +    protected static final OracleDataType<byte[]>    __BINARY               = new OracleDataType<byte[]>(SQLDataType.BINARY, "blob");
    +    protected static final OracleDataType<Long>      __BIGINT               = new OracleDataType<Long>(SQLDataType.BIGINT, "number", "number(19)");
    +    protected static final OracleDataType<Boolean>   __BIT                  = new OracleDataType<Boolean>(SQLDataType.BIT, "number", "number(1)");
    +    protected static final OracleDataType<Boolean>   __BOOLEAN              = new OracleDataType<Boolean>(SQLDataType.BOOLEAN, "number", "number(1)");
    +    protected static final OracleDataType<Double>    __DOUBLE               = new OracleDataType<Double>(SQLDataType.DOUBLE, "number");
    +    protected static final OracleDataType<Double>    __FLOAT                = new OracleDataType<Double>(SQLDataType.FLOAT, "number");
    +    protected static final OracleDataType<Integer>   __INTEGER              = new OracleDataType<Integer>(SQLDataType.INTEGER, "number", "number(10)");
    +    protected static final OracleDataType<byte[]>    __LONGVARBINARY        = new OracleDataType<byte[]>(SQLDataType.LONGVARBINARY, "blob");
    +    protected static final OracleDataType<String>    __LONGVARCHAR          = new OracleDataType<String>(SQLDataType.LONGVARCHAR, "varchar2", "varchar2(4000)");
    +    protected static final OracleDataType<String>    __LONGNVARCHAR         = new OracleDataType<String>(SQLDataType.LONGNVARCHAR, "varchar2", "varchar2(4000)");
    +    protected static final OracleDataType<Float>     __REAL                 = new OracleDataType<Float>(SQLDataType.REAL, "number");
    +    protected static final OracleDataType<Short>     __SMALLINT             = new OracleDataType<Short>(SQLDataType.SMALLINT, "number", "number(5)");
    +    protected static final OracleDataType<Time>      __TIME                 = new OracleDataType<Time>(SQLDataType.TIME, "timestamp");
    +    protected static final OracleDataType<Byte>      __TINYINT              = new OracleDataType<Byte>(SQLDataType.TINYINT, "number", "number(3)");
    +    protected static final OracleDataType<byte[]>    __VARBINARY            = new OracleDataType<byte[]>(SQLDataType.VARBINARY, "blob");
    +
    +    // -------------------------------------------------------------------------
    +    // Compatibility types for supported Java types
    +    // -------------------------------------------------------------------------
    +
    +    protected static final OracleDataType<BigInteger>   __BIGINTEGER        = new OracleDataType<BigInteger>(SQLDataType.DECIMAL_INTEGER, "number");
    +
    +    // -------------------------------------------------------------------------
    +    // Dialect-specific data types and synonyms thereof
    +    // -------------------------------------------------------------------------
    +
    +    public static final OracleDataType<Result<Record>>  REF_CURSOR          = new OracleDataType<Result<Record>>(SQLDataType.RESULT, "ref cursor");
    +
    +    public static final OracleDataType<String>       LONG                   = new OracleDataType<String>(SQLDataType.CLOB, "long");
    +    public static final OracleDataType<byte[]>       RAW                    = new OracleDataType<byte[]>(SQLDataType.BLOB, "raw");
    +    public static final OracleDataType<byte[]>       LONGRAW                = new OracleDataType<byte[]>(SQLDataType.BLOB, "longraw");
    +    public static final OracleDataType<byte[]>       BFILE                  = new OracleDataType<byte[]>(SQLDataType.BLOB, "bfile");
    +
    +    // PL/SQL data types
    +    public static final OracleDataType<Integer>      BINARY_INTEGER         = new OracleDataType<Integer>(SQLDataType.INTEGER, "binary_integer");
    +    public static final OracleDataType<Integer>      PLS_INTEGER            = new OracleDataType<Integer>(SQLDataType.INTEGER, "pls_integer");
    +    public static final OracleDataType<Integer>      NATURAL                = new OracleDataType<Integer>(SQLDataType.INTEGER, "natural");
    +    public static final OracleDataType<Integer>      NATURALN               = new OracleDataType<Integer>(SQLDataType.INTEGER, "naturaln");
    +    public static final OracleDataType<Integer>      POSITIVE               = new OracleDataType<Integer>(SQLDataType.INTEGER, "positive");
    +    public static final OracleDataType<Integer>      POSITIVEN              = new OracleDataType<Integer>(SQLDataType.INTEGER, "positiven");
    +    public static final OracleDataType<Integer>      SIGNTYPE               = new OracleDataType<Integer>(SQLDataType.INTEGER, "signtype");
    +    public static final OracleDataType<Double>       REAL                   = new OracleDataType<Double>(SQLDataType.DOUBLE, "real");
    +    public static final OracleDataType<Double>       DOUBLE_PRECISION       = new OracleDataType<Double>(SQLDataType.DOUBLE, "double_precision");
    +    public static final OracleDataType<Double>       BINARY_DOUBLE          = new OracleDataType<Double>(SQLDataType.DOUBLE, "binary_double");
    +    public static final OracleDataType<BigDecimal>   FLOAT                  = new OracleDataType<BigDecimal>(SQLDataType.DECIMAL, "float");
    +    public static final OracleDataType<BigDecimal>   BINARY_FLOAT           = new OracleDataType<BigDecimal>(SQLDataType.DECIMAL, "binary_float");
    +    public static final OracleDataType<BigInteger>   INTEGER                = new OracleDataType<BigInteger>(SQLDataType.DECIMAL_INTEGER, "integer");
    +    public static final OracleDataType<BigInteger>   INT                    = new OracleDataType<BigInteger>(SQLDataType.DECIMAL_INTEGER, "int");
    +    public static final OracleDataType<BigInteger>   SMALLINT               = new OracleDataType<BigInteger>(SQLDataType.DECIMAL_INTEGER, "smallint");
    +    public static final OracleDataType<Boolean>      BOOLEAN                = new OracleDataType<Boolean>(SQLDataType.BOOLEAN, "boolean");
    +
    +    private OracleDataType(SQLDataType<T> sqlDataType, String typeName) {
    +        this(sqlDataType, typeName, false);
    +    }
    +
    +    private OracleDataType(SQLDataType<T> sqlDataType, String typeName, String castTypeName) {
    +        this(sqlDataType, typeName, castTypeName, false);
    +    }
    +
    +    private OracleDataType(SQLDataType<T> sqlDataType, String typeName, boolean hasPrecisionAndScale) {
    +        super(SQLDialect.ORACLE, sqlDataType, sqlDataType.getType(), typeName, hasPrecisionAndScale);
    +    }
    +
    +    private OracleDataType(SQLDataType<T> sqlDataType, String typeName, String castTypeName, boolean hasPrecisionAndScale) {
    +        super(SQLDialect.ORACLE, sqlDataType, sqlDataType.getType(), typeName, castTypeName, hasPrecisionAndScale);
    +    }
    +
    +    public static <T> DataType<T> getDataType(Class<? extends T> type) {
    +        return getDataType(SQLDialect.ORACLE, type);
    +    }
    +
    +    public static DataType<Object> getDefaultDataType(String typeName) {
    +        return getDefaultDataType(SQLDialect.ORACLE, typeName);
    +    }
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/util/oracle/OracleFactory.java b/jOOQ/src/main/java/org/jooq/util/oracle/OracleFactory.java
    new file mode 100644
    index 00000000000..ca605cf0868
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/util/oracle/OracleFactory.java
    @@ -0,0 +1,132 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq.util.oracle;
    +
    +import java.sql.Connection;
    +
    +import org.jooq.Field;
    +import org.jooq.SQLDialect;
    +import org.jooq.SchemaMapping;
    +import org.jooq.conf.Settings;
    +import org.jooq.impl.Factory;
    +import org.jooq.impl.SQLDataType;
    +
    +/**
    + * A {@link SQLDialect#ORACLE} specific factory
    + *
    + * @author Lukas Eder
    + */
    +@SuppressWarnings("deprecation")
    +public class OracleFactory extends Factory {
    +
    +    /**
    +     * Generated UID
    +     */
    +    private static final long serialVersionUID = -1934939784130217163L;
    +
    +    /**
    +     * Create a factory with connection and a schema mapping configured
    +     *
    +     * @param connection The connection to use with objects created from this
    +     *            factory
    +     * @param mapping The schema mapping to use with objects created from this
    +     *            factory
    +     * @deprecated - 2.0.5 - Use {@link #OracleFactory(Connection, Settings)}
    +     *             instead
    +     */
    +    @Deprecated
    +    public OracleFactory(Connection connection, SchemaMapping mapping) {
    +        super(connection, SQLDialect.ORACLE, mapping);
    +    }
    +
    +    /**
    +     * Create a factory with connection and a settings configured
    +     *
    +     * @param connection The connection to use with objects created from this
    +     *            factory
    +     * @param settings The runtime settings to apply to objects created from
    +     *            this factory
    +     */
    +    public OracleFactory(Connection connection, Settings settings) {
    +        super(connection, SQLDialect.ORACLE, settings);
    +    }
    +
    +    /**
    +     * Create a factory with connection
    +     *
    +     * @param connection The connection to use with objects created from this
    +     *            factory
    +     */
    +    public OracleFactory(Connection connection) {
    +        super(connection, SQLDialect.ORACLE);
    +    }
    +
    +    // -------------------------------------------------------------------------
    +    // General pseudo-columns
    +    // -------------------------------------------------------------------------
    +
    +    /**
    +     * Retrieve the Oracle-specific <code>ROWNUM</code> pseudo-field
    +     */
    +    public static Field<Integer> rownum() {
    +        return field("rownum", Integer.class);
    +    }
    +
    +    /**
    +     * Retrieve the Oracle-specific <code>ROWID</code> pseudo-field
    +     */
    +    public static Field<String> rowid() {
    +        return field("rowid", String.class);
    +    }
    +
    +    // -------------------------------------------------------------------------
    +    // Oracle-specific functions
    +    // -------------------------------------------------------------------------
    +
    +    /**
    +     * The Oracle-specific <code>SYS_CONTEXT</code> function
    +     */
    +    public static Field<String> sysContext(String namespace, String parameter) {
    +        return function("sys_context", SQLDataType.VARCHAR, val(namespace), val(parameter));
    +    }
    +
    +    /**
    +     * The Oracle-specific <code>SYS_CONTEXT</code> function
    +     */
    +    public static Field<String> sysContext(String namespace, String parameter, int length) {
    +        return function("sys_context", SQLDataType.VARCHAR, val(namespace), val(parameter), val(length));
    +    }
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/util/postgres/PGIntervalConverter.java b/jOOQ/src/main/java/org/jooq/util/postgres/PGIntervalConverter.java
    new file mode 100644
    index 00000000000..68f604f2910
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/util/postgres/PGIntervalConverter.java
    @@ -0,0 +1,127 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq.util.postgres;
    +
    +import static org.jooq.tools.reflect.Reflect.on;
    +
    +import org.jooq.tools.reflect.Reflect;
    +import org.jooq.types.DayToSecond;
    +import org.jooq.types.YearToMonth;
    +
    +/**
    + * A converter for <code>org.postgresql.util.PGInterval</code>
    + * <p>
    + * Postgres returns an undisclosed internal type for intervals. This converter
    + * takes care of converting the internal type to jOOQ's interval data types
    + * {@link DayToSecond} and {@link YearToMonth}
    + * <p>
    + * Note, that Postgres uses some non-standard ways of describing negative
    + * intervals. Negative intervals have a sign before every date part!
    + *
    + * @author Lukas Eder
    + */
    +public class PGIntervalConverter {
    +
    +    /**
    +     * Convert a jOOQ <code>DAY TO SECOND</code> interval to a Postgres representation
    +     */
    +    public static Object toPGInterval(DayToSecond interval) {
    +        return on("org.postgresql.util.PGInterval").create(0, 0,
    +            interval.getSign() * interval.getDays(),
    +            interval.getSign() * interval.getHours(),
    +            interval.getSign() * interval.getMinutes(),
    +            interval.getSign() * interval.getSeconds() +
    +            interval.getSign() * interval.getNano() / 1000000000.0).get();
    +    }
    +
    +    /**
    +     * Convert a jOOQ <code>YEAR TO MONTH</code> interval to a Postgres representation
    +     */
    +    public static Object toPGInterval(YearToMonth interval) {
    +        return on("org.postgresql.util.PGInterval").create(
    +            interval.getSign() * interval.getYears(),
    +            interval.getSign() * interval.getMonths(),
    +            0, 0, 0, 0.0).get();
    +    }
    +
    +    /**
    +     * Convert a Postgres interval to a jOOQ <code>DAY TO SECOND</code> interval
    +     */
    +    public static DayToSecond toDayToSecond(Object pgInterval) {
    +        boolean negative = pgInterval.toString().contains("-");
    +
    +        Reflect i = on(pgInterval);
    +        if (negative) {
    +            i.call("scale", -1);
    +        }
    +
    +        Double seconds = i.call("getSeconds").<Double>get();
    +        DayToSecond result = new DayToSecond(
    +            i.call("getDays").<Integer>get(),
    +            i.call("getHours").<Integer>get(),
    +            i.call("getMinutes").<Integer>get(),
    +            seconds.intValue(),
    +            (int) (1000000000 * (seconds - seconds.intValue())));
    +
    +        if (negative) {
    +            result = result.neg();
    +        }
    +
    +        return result;
    +    }
    +
    +    /**
    +     * Convert a Postgres interval to a jOOQ <code>YEAR TO MONTH</code> interval
    +     */
    +    public static YearToMonth toYearToMonth(Object pgInterval) {
    +        boolean negative = pgInterval.toString().contains("-");
    +
    +        Reflect i = on(pgInterval);
    +        if (negative) {
    +            i.call("scale", -1);
    +        }
    +
    +        YearToMonth result = new YearToMonth(
    +            i.call("getYears").<Integer>get(),
    +            i.call("getMonths").<Integer>get());
    +
    +        if (negative) {
    +            result = result.neg();
    +        }
    +
    +        return result;
    +    }
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/util/postgres/PGobjectParser.java b/jOOQ/src/main/java/org/jooq/util/postgres/PGobjectParser.java
    new file mode 100644
    index 00000000000..24537d7e347
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/util/postgres/PGobjectParser.java
    @@ -0,0 +1,179 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq.util.postgres;
    +
    +import java.util.ArrayList;
    +import java.util.List;
    +
    +/**
    + * A parser for Postgres PGobject anonymous types
    + *
    + * @author Lukas Eder
    + */
    +public class PGobjectParser {
    +
    +    /**
    +     * Tokenize a PGObject input string
    +     */
    +    @SuppressWarnings("null")
    +    public List<String> parse(String input) {
    +        List<String> values = new ArrayList<String>();
    +        int i = 0;
    +        int state = 0;
    +        StringBuilder sb = null;
    +
    +        while (i < input.length()) {
    +            char c = input.charAt(i);
    +
    +            switch (state) {
    +                // Initial state
    +                case 0:
    +
    +                    // Consume the opening parenthesis
    +                    if (c == '(') {
    +                        state = 1;
    +                    }
    +
    +                    break;
    +
    +                // Before a new value
    +                case 1:
    +                    sb = new StringBuilder();
    +
    +                    // Consume "empty"
    +                    if (c == ',') {
    +                        values.add(null);
    +                        state = 1;
    +                    }
    +
    +                    // Consume "empty"
    +                    else if (c == ')') {
    +                        values.add(null);
    +                        state = 5;
    +                    }
    +
    +                    // Consume the opening quote
    +                    else if (c == '"') {
    +                        state = 2;
    +                    }
    +
    +                    // Consume "null"
    +                    else if ((c == 'n' || c == 'N') && (i + 4 < input.length())
    +                        && input.substring(i, i + 4).equalsIgnoreCase("null")) {
    +                        values.add(null);
    +                        i += 3;
    +                        state = 4;
    +                    }
    +
    +                    // Consume a character
    +                    else {
    +                        sb.append(c);
    +                        state = 3;
    +                    }
    +
    +                    break;
    +
    +                // A "value" is being created
    +                case 2:
    +
    +                    // Consume a quote
    +                    if (c == '"') {
    +
    +                        // Consume an escaped quote
    +                        if (input.charAt(i + 1) == '"') {
    +                            sb.append(c);
    +                            i++;
    +                        }
    +
    +                        // Consume the closing quote
    +                        else {
    +                            values.add(sb.toString());
    +                            state = 4;
    +                        }
    +                    }
    +
    +                    // Consume any other character
    +                    else {
    +                        sb.append(c);
    +                    }
    +
    +                    break;
    +
    +                // A value is being created
    +                case 3:
    +
    +                    // Consume the closing parenthesis
    +                    if (c == ')') {
    +                        values.add(sb.toString());
    +                        state = 5;
    +                    }
    +
    +                    // Consume the value separator
    +                    else if (c == ',') {
    +                        values.add(sb.toString());
    +                        state = 1;
    +                    }
    +
    +                    // Consume any other character
    +                    else {
    +                        sb.append(c);
    +                    }
    +
    +                    break;
    +
    +                // A value was just added
    +                case 4:
    +
    +                    // Consume the closing parenthesis
    +                    if (c == ')') {
    +                        state = 5;
    +                    }
    +
    +                    // Consume the value separator
    +                    else if (c == ',') {
    +                        state = 1;
    +                    }
    +
    +                    break;
    +            }
    +
    +            // Consume next character
    +            i++;
    +        }
    +
    +        return values;
    +    }
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/util/postgres/PostgresDataType.java b/jOOQ/src/main/java/org/jooq/util/postgres/PostgresDataType.java
    new file mode 100644
    index 00000000000..c9b8bb5b4b7
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/util/postgres/PostgresDataType.java
    @@ -0,0 +1,162 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +
    +package org.jooq.util.postgres;
    +
    +import java.math.BigDecimal;
    +import java.math.BigInteger;
    +import java.sql.Date;
    +import java.sql.Time;
    +import java.sql.Timestamp;
    +
    +import org.jooq.DataType;
    +import org.jooq.Record;
    +import org.jooq.Result;
    +import org.jooq.SQLDialect;
    +import org.jooq.impl.AbstractDataType;
    +import org.jooq.impl.SQLDataType;
    +import org.jooq.types.DayToSecond;
    +import org.jooq.types.YearToMonth;
    +
    +/**
    + * Supported data types for the {@link SQLDialect#POSTGRES} dialect
    + *
    + * @author Lukas Eder
    + * @see <a href="http://www.postgresql.org/docs/9.0/interactive/datatype.html">http://www.postgresql.org/docs/9.0/interactive/datatype.html</a>
    + */
    +public class PostgresDataType<T> extends AbstractDataType<T> {
    +
    +    /**
    +     * Generated UID
    +     */
    +    private static final long                        serialVersionUID         = -5677365115109672781L;
    +
    +    // -------------------------------------------------------------------------
    +    // Default SQL data types and synonyms thereof
    +    // -------------------------------------------------------------------------
    +
    +    public static final PostgresDataType<Short>        SMALLINT                 = new PostgresDataType<Short>(SQLDataType.SMALLINT, "smallint");
    +    public static final PostgresDataType<Short>        INT2                     = new PostgresDataType<Short>(SQLDataType.SMALLINT, "int2");
    +    public static final PostgresDataType<Integer>      INT                      = new PostgresDataType<Integer>(SQLDataType.INTEGER, "int");
    +    public static final PostgresDataType<Integer>      INTEGER                  = new PostgresDataType<Integer>(SQLDataType.INTEGER, "integer");
    +    public static final PostgresDataType<Integer>      INT4                     = new PostgresDataType<Integer>(SQLDataType.INTEGER, "int4");
    +    public static final PostgresDataType<Long>         BIGINT                   = new PostgresDataType<Long>(SQLDataType.BIGINT, "bigint");
    +    public static final PostgresDataType<Long>         INT8                     = new PostgresDataType<Long>(SQLDataType.BIGINT, "int8");
    +    public static final PostgresDataType<Double>       DOUBLEPRECISION          = new PostgresDataType<Double>(SQLDataType.DOUBLE, "double precision");
    +    public static final PostgresDataType<Double>       FLOAT8                   = new PostgresDataType<Double>(SQLDataType.FLOAT, "float8");
    +    public static final PostgresDataType<Float>        REAL                     = new PostgresDataType<Float>(SQLDataType.REAL, "real");
    +    public static final PostgresDataType<Float>        FLOAT4                   = new PostgresDataType<Float>(SQLDataType.REAL, "float4");
    +    public static final PostgresDataType<Boolean>      BOOLEAN                  = new PostgresDataType<Boolean>(SQLDataType.BOOLEAN, "boolean");
    +    public static final PostgresDataType<Boolean>      BOOL                     = new PostgresDataType<Boolean>(SQLDataType.BOOLEAN, "bool");
    +    public static final PostgresDataType<BigDecimal>   NUMERIC                  = new PostgresDataType<BigDecimal>(SQLDataType.NUMERIC, "numeric");
    +    public static final PostgresDataType<BigDecimal>   DECIMAL                  = new PostgresDataType<BigDecimal>(SQLDataType.DECIMAL, "decimal");
    +    public static final PostgresDataType<String>       VARCHAR                  = new PostgresDataType<String>(SQLDataType.VARCHAR, "varchar");
    +    public static final PostgresDataType<String>       CHARACTERVARYING         = new PostgresDataType<String>(SQLDataType.VARCHAR, "character varying");
    +    public static final PostgresDataType<String>       CHAR                     = new PostgresDataType<String>(SQLDataType.CHAR, "char");
    +    public static final PostgresDataType<String>       CHARACTER                = new PostgresDataType<String>(SQLDataType.CHAR, "character");
    +    public static final PostgresDataType<String>       TEXT                     = new PostgresDataType<String>(SQLDataType.CLOB, "text");
    +    public static final PostgresDataType<Date>         DATE                     = new PostgresDataType<Date>(SQLDataType.DATE, "date");
    +    public static final PostgresDataType<Time>         TIME                     = new PostgresDataType<Time>(SQLDataType.TIME, "time");
    +    public static final PostgresDataType<Timestamp>    TIMESTAMP                = new PostgresDataType<Timestamp>(SQLDataType.TIMESTAMP, "timestamp");
    +    public static final PostgresDataType<byte[]>       BYTEA                    = new PostgresDataType<byte[]>(SQLDataType.BLOB, "bytea");
    +    public static final PostgresDataType<YearToMonth>  INTERVALYEARTOMONTH      = new PostgresDataType<YearToMonth>(SQLDataType.INTERVALYEARTOMONTH, "interval year to month");
    +    public static final PostgresDataType<DayToSecond>  INTERVALDAYTOSECOND      = new PostgresDataType<DayToSecond>(SQLDataType.INTERVALDAYTOSECOND, "interval day to second");
    +
    +    // -------------------------------------------------------------------------
    +    // Compatibility types for supported SQLDataTypes
    +    // -------------------------------------------------------------------------
    +
    +    protected static final PostgresDataType<byte[]>     __BINARY                = new PostgresDataType<byte[]>(SQLDataType.BINARY, "bytea");
    +    protected static final PostgresDataType<Boolean>    __BIT                   = new PostgresDataType<Boolean>(SQLDataType.BIT, "boolean");
    +    protected static final PostgresDataType<byte[]>     __LONGVARBINARY         = new PostgresDataType<byte[]>(SQLDataType.LONGVARBINARY, "bytea");
    +    protected static final PostgresDataType<String>     __LONGVARCHAR           = new PostgresDataType<String>(SQLDataType.LONGVARCHAR, "varchar");
    +    protected static final PostgresDataType<String>     __NCHAR                 = new PostgresDataType<String>(SQLDataType.NCHAR, "char");
    +    protected static final PostgresDataType<String>     __NCLOB                 = new PostgresDataType<String>(SQLDataType.NCLOB, "text");
    +    protected static final PostgresDataType<String>     __LONGNVARCHAR          = new PostgresDataType<String>(SQLDataType.LONGNVARCHAR, "varchar");
    +    protected static final PostgresDataType<String>     __NVARCHAR              = new PostgresDataType<String>(SQLDataType.NVARCHAR, "varchar");
    +    protected static final PostgresDataType<Byte>       __TINYINT               = new PostgresDataType<Byte>(SQLDataType.TINYINT, "smallint");
    +    protected static final PostgresDataType<byte[]>     __VARBINARY             = new PostgresDataType<byte[]>(SQLDataType.VARBINARY, "bytea");
    +
    +    // -------------------------------------------------------------------------
    +    // Compatibility types for supported Java types
    +    // -------------------------------------------------------------------------
    +
    +    protected static final PostgresDataType<BigInteger> __BIGINTEGER            = new PostgresDataType<BigInteger>(SQLDataType.DECIMAL_INTEGER, "decimal");
    +
    +    // -------------------------------------------------------------------------
    +    // Dialect-specific data types and synonyms thereof
    +    // -------------------------------------------------------------------------
    +
    +    public static final PostgresDataType<Integer>    SERIAL                     = new PostgresDataType<Integer>(SQLDataType.INTEGER, "serial");
    +    public static final PostgresDataType<Integer>    SERIAL4                    = new PostgresDataType<Integer>(SQLDataType.INTEGER, "serial4");
    +    public static final PostgresDataType<Long>       BIGSERIAL                  = new PostgresDataType<Long>(SQLDataType.BIGINT, "bigserial");
    +    public static final PostgresDataType<Long>       SERIAL8                    = new PostgresDataType<Long>(SQLDataType.BIGINT, "serial8");
    +    public static final PostgresDataType<BigDecimal> MONEY                      = new PostgresDataType<BigDecimal>(SQLDataType.DECIMAL, "money");
    +    public static final PostgresDataType<String>     BITVARYING                 = new PostgresDataType<String>(SQLDataType.VARCHAR, "bit varying");
    +    public static final PostgresDataType<String>     VARBIT                     = new PostgresDataType<String>(SQLDataType.VARCHAR, "varbit");
    +    public static final PostgresDataType<String>     BIT                        = new PostgresDataType<String>(SQLDataType.CHAR, "bit");
    +    public static final PostgresDataType<String>     BPCHAR                     = new PostgresDataType<String>(SQLDataType.CHAR, "bpchar");
    +    public static final PostgresDataType<Time>       TIMEWITHOUTTIMEZONE        = new PostgresDataType<Time>(SQLDataType.TIME, "time without time zone");
    +    public static final PostgresDataType<Time>       TIMEWITHTIMEZONE           = new PostgresDataType<Time>(SQLDataType.TIME, "time with time zone");
    +    public static final PostgresDataType<Time>       TIMETZ                     = new PostgresDataType<Time>(SQLDataType.TIME, "timetz");
    +    public static final PostgresDataType<Timestamp>  TIMESTAMPWITHOUTTIMEZONE   = new PostgresDataType<Timestamp>(SQLDataType.TIMESTAMP, "timestamp without time zone");
    +    public static final PostgresDataType<Timestamp>  TIMESTAMPWITHTIMEZONE      = new PostgresDataType<Timestamp>(SQLDataType.TIMESTAMP, "timestamp with time zone");
    +    public static final PostgresDataType<Timestamp>  TIMESTAMPTZ                = new PostgresDataType<Timestamp>(SQLDataType.TIMESTAMP, "timestamptz");
    +    public static final PostgresDataType<Result<Record>> REFCURSOR              = new PostgresDataType<Result<Record>>(SQLDataType.RESULT, "refcursor");
    +
    +    // Meta-table types
    +    public static final PostgresDataType<Long>       OID                        = new PostgresDataType<Long>(SQLDataType.BIGINT, "oid");
    +    public static final PostgresDataType<Long>       OIDVECTOR                  = new PostgresDataType<Long>(SQLDataType.BIGINT, "oidvector");
    +    public static final PostgresDataType<Long>       XID                        = new PostgresDataType<Long>(SQLDataType.BIGINT, "xid");
    +    public static final PostgresDataType<Long>       TID                        = new PostgresDataType<Long>(SQLDataType.BIGINT, "tid");
    +    public static final PostgresDataType<Long>       CID                        = new PostgresDataType<Long>(SQLDataType.BIGINT, "cid");
    +    public static final PostgresDataType<String>     ACLITEM                    = new PostgresDataType<String>(SQLDataType.VARCHAR, "aclitem");
    +    public static final PostgresDataType<String>     NAME                       = new PostgresDataType<String>(SQLDataType.VARCHAR, "name");
    +    public static final PostgresDataType<String>     REGPROC                    = new PostgresDataType<String>(SQLDataType.VARCHAR, "regproc");
    +
    +
    +    private PostgresDataType(SQLDataType<T> sqlDataType, String typeName) {
    +        super(SQLDialect.POSTGRES, sqlDataType, sqlDataType.getType(), typeName);
    +    }
    +
    +    public static <T> DataType<T> getDataType(Class<? extends T> type) {
    +        return getDataType(SQLDialect.POSTGRES, type);
    +    }
    +
    +    public static DataType<Object> getDefaultDataType(String typeName) {
    +        return getDefaultDataType(SQLDialect.POSTGRES, typeName);
    +    }
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/util/postgres/PostgresFactory.java b/jOOQ/src/main/java/org/jooq/util/postgres/PostgresFactory.java
    new file mode 100644
    index 00000000000..071de171ba1
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/util/postgres/PostgresFactory.java
    @@ -0,0 +1,94 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq.util.postgres;
    +
    +import java.sql.Connection;
    +
    +import org.jooq.SQLDialect;
    +import org.jooq.SchemaMapping;
    +import org.jooq.conf.Settings;
    +import org.jooq.impl.Factory;
    +
    +/**
    + * A {@link SQLDialect#POSTGRES} specific factory
    + *
    + * @author Lukas Eder
    + */
    +@SuppressWarnings("deprecation")
    +public class PostgresFactory extends Factory {
    +
    +    /**
    +     * Generated UID
    +     */
    +    private static final long serialVersionUID = 3722639614267896473L;
    +
    +    /**
    +     * Create a factory with connection and a schema mapping configured
    +     *
    +     * @param connection The connection to use with objects created from this
    +     *            factory
    +     * @param mapping The schema mapping to use with objects created from this
    +     *            factory
    +     * @deprecated - 2.0.5 - Use {@link #PostgresFactory(Connection, Settings)}
    +     *             instead
    +     */
    +    @Deprecated
    +    public PostgresFactory(Connection connection, SchemaMapping mapping) {
    +        super(connection, SQLDialect.POSTGRES, mapping);
    +    }
    +
    +    /**
    +     * Create a factory with connection and a settings configured
    +     *
    +     * @param connection The connection to use with objects created from this
    +     *            factory
    +     * @param settings The runtime settings to apply to objects created from
    +     *            this factory
    +     */
    +    public PostgresFactory(Connection connection, Settings settings) {
    +        super(connection, SQLDialect.POSTGRES, settings);
    +    }
    +
    +    /**
    +     * Create a factory with connection
    +     *
    +     * @param connection The connection to use with objects created from this
    +     *            factory
    +     */
    +    public PostgresFactory(Connection connection) {
    +        super(connection, SQLDialect.POSTGRES);
    +    }
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/util/sqlite/SQLiteDataType.java b/jOOQ/src/main/java/org/jooq/util/sqlite/SQLiteDataType.java
    new file mode 100644
    index 00000000000..31eccbd3f6c
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/util/sqlite/SQLiteDataType.java
    @@ -0,0 +1,131 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq.util.sqlite;
    +
    +import java.math.BigDecimal;
    +import java.math.BigInteger;
    +import java.sql.Date;
    +import java.sql.Time;
    +import java.sql.Timestamp;
    +
    +import org.jooq.DataType;
    +import org.jooq.SQLDialect;
    +import org.jooq.impl.AbstractDataType;
    +import org.jooq.impl.SQLDataType;
    +
    +/**
    + * Supported data types for the {@link SQLDialect#SQLITE} dialect
    + *
    + * @author Lukas Eder
    + * @see <a href="http://www.sqlite.org/datatype3.html">http://www.sqlite.org/datatype3.html</a>
    + */
    +public class SQLiteDataType<T> extends AbstractDataType<T> {
    +
    +    /**
    +     * Generated UID
    +     */
    +    private static final long                      serialVersionUID = -5677365115109672781L;
    +
    +    // -------------------------------------------------------------------------
    +    // Default SQL data types and synonyms thereof
    +    // -------------------------------------------------------------------------
    +
    +    public static final SQLiteDataType<Byte>       TINYINT          = new SQLiteDataType<Byte>(SQLDataType.TINYINT, "tinyint");
    +    public static final SQLiteDataType<Short>      SMALLINT         = new SQLiteDataType<Short>(SQLDataType.SMALLINT, "smallint");
    +    public static final SQLiteDataType<Short>      INT2             = new SQLiteDataType<Short>(SQLDataType.SMALLINT, "int2");
    +    public static final SQLiteDataType<Integer>    INT              = new SQLiteDataType<Integer>(SQLDataType.INTEGER, "int");
    +    public static final SQLiteDataType<Integer>    INTEGER          = new SQLiteDataType<Integer>(SQLDataType.INTEGER, "integer");
    +    public static final SQLiteDataType<Integer>    MEDIUMINT        = new SQLiteDataType<Integer>(SQLDataType.INTEGER, "mediumint");
    +    public static final SQLiteDataType<Long>       INT8             = new SQLiteDataType<Long>(SQLDataType.BIGINT, "int8");
    +    public static final SQLiteDataType<BigInteger> BIGINT           = new SQLiteDataType<BigInteger>(SQLDataType.DECIMAL_INTEGER, "bigint");
    +    public static final SQLiteDataType<BigInteger> UNSIGNEDBIGINT   = new SQLiteDataType<BigInteger>(SQLDataType.DECIMAL_INTEGER, "unsigned big int");
    +    public static final SQLiteDataType<Double>     DOUBLE           = new SQLiteDataType<Double>(SQLDataType.DOUBLE, "double");
    +    public static final SQLiteDataType<Double>     DOUBLEPRECISION  = new SQLiteDataType<Double>(SQLDataType.DOUBLE, "double precision");
    +    public static final SQLiteDataType<Float>      REAL             = new SQLiteDataType<Float>(SQLDataType.REAL, "real");
    +    public static final SQLiteDataType<Float>      FLOAT            = new SQLiteDataType<Float>(SQLDataType.REAL, "float");
    +    public static final SQLiteDataType<BigDecimal> NUMERIC          = new SQLiteDataType<BigDecimal>(SQLDataType.NUMERIC, "numeric");
    +    public static final SQLiteDataType<BigDecimal> DECIMAL          = new SQLiteDataType<BigDecimal>(SQLDataType.DECIMAL, "decimal");
    +    public static final SQLiteDataType<String>     LONGVARCHAR      = new SQLiteDataType<String>(SQLDataType.LONGVARCHAR, "longvarchar");
    +    public static final SQLiteDataType<String>     CHAR             = new SQLiteDataType<String>(SQLDataType.CHAR, "char");
    +    public static final SQLiteDataType<String>     CHARACTER        = new SQLiteDataType<String>(SQLDataType.CHAR, "character");
    +    public static final SQLiteDataType<String>     VARCHAR          = new SQLiteDataType<String>(SQLDataType.VARCHAR, "varchar");
    +    public static final SQLiteDataType<String>     VARYINGCHARACTER = new SQLiteDataType<String>(SQLDataType.VARCHAR, "varying character");
    +    public static final SQLiteDataType<String>     NCHAR            = new SQLiteDataType<String>(SQLDataType.NCHAR, "nchar");
    +    public static final SQLiteDataType<String>     NATIVECHARACTER  = new SQLiteDataType<String>(SQLDataType.NCHAR, "native character");
    +    public static final SQLiteDataType<String>     NVARCHAR         = new SQLiteDataType<String>(SQLDataType.NVARCHAR, "nvarchar");
    +    public static final SQLiteDataType<String>     CLOB             = new SQLiteDataType<String>(SQLDataType.CLOB, "clob");
    +    public static final SQLiteDataType<String>     TEXT             = new SQLiteDataType<String>(SQLDataType.CLOB, "text");
    +    public static final SQLiteDataType<Boolean>    BOOLEAN          = new SQLiteDataType<Boolean>(SQLDataType.BOOLEAN, "boolean");
    +    public static final SQLiteDataType<Date>       DATE             = new SQLiteDataType<Date>(SQLDataType.DATE, "date");
    +    public static final SQLiteDataType<Timestamp>  DATETIME         = new SQLiteDataType<Timestamp>(SQLDataType.TIMESTAMP, "datetime");
    +    public static final SQLiteDataType<byte[]>     LONGVARBINARY    = new SQLiteDataType<byte[]>(SQLDataType.LONGVARBINARY, "longvarbinary");
    +    public static final SQLiteDataType<byte[]>     BLOB             = new SQLiteDataType<byte[]>(SQLDataType.BLOB, "blob");
    +
    +    // -------------------------------------------------------------------------
    +    // Compatibility types for supported SQLDataTypes
    +    // -------------------------------------------------------------------------
    +
    +    protected static final SQLiteDataType<byte[]>  __BINARY         = new SQLiteDataType<byte[]>(SQLDataType.BINARY, "longvarbinary");
    +    protected static final SQLiteDataType<Boolean> __BIT            = new SQLiteDataType<Boolean>(SQLDataType.BIT, "boolean");
    +    protected static final SQLiteDataType<Double>  __FLOAT          = new SQLiteDataType<Double>(SQLDataType.FLOAT, "double");
    +    protected static final SQLiteDataType<String>  __NCLOB          = new SQLiteDataType<String>(SQLDataType.NCLOB, "nclob");
    +    protected static final SQLiteDataType<String>  __LONGNVARCHAR   = new SQLiteDataType<String>(SQLDataType.LONGNVARCHAR, "nvarchar");
    +    protected static final SQLiteDataType<Time>    __TIME           = new SQLiteDataType<Time>(SQLDataType.TIME, "datetime");
    +    protected static final SQLiteDataType<byte[]>  __VARBINARY      = new SQLiteDataType<byte[]>(SQLDataType.VARBINARY, "longvarbinary");
    +
    +    // -------------------------------------------------------------------------
    +    // Compatibility types for supported Java types
    +    // -------------------------------------------------------------------------
    +
    +    // -------------------------------------------------------------------------
    +    // Dialect-specific data types and synonyms thereof
    +    // -------------------------------------------------------------------------
    +
    +    public static final SQLiteDataType<Object>     NULL             = new SQLiteDataType<Object>(SQLDataType.OTHER, "null");
    +
    +
    +    private SQLiteDataType(SQLDataType<T> sqlDataType, String typeName) {
    +        super(SQLDialect.SQLITE, sqlDataType, sqlDataType.getType(), typeName);
    +    }
    +
    +    public static <T> DataType<T> getDataType(Class<? extends T> type) {
    +        return getDataType(SQLDialect.SQLITE, type);
    +    }
    +
    +    public static DataType<Object> getDefaultDataType(String typeName) {
    +        return getDefaultDataType(SQLDialect.SQLITE, typeName);
    +    }
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/util/sqlite/SQLiteFactory.java b/jOOQ/src/main/java/org/jooq/util/sqlite/SQLiteFactory.java
    new file mode 100644
    index 00000000000..20809e81bc7
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/util/sqlite/SQLiteFactory.java
    @@ -0,0 +1,111 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq.util.sqlite;
    +
    +import java.sql.Connection;
    +
    +import org.jooq.Field;
    +import org.jooq.SQLDialect;
    +import org.jooq.SchemaMapping;
    +import org.jooq.conf.Settings;
    +import org.jooq.impl.Factory;
    +
    +/**
    + * A {@link SQLDialect#SQLITE} specific factory
    + *
    + * @author Lukas Eder
    + */
    +@SuppressWarnings("deprecation")
    +public class SQLiteFactory extends Factory {
    +
    +    /**
    +     * Generated UID
    +     */
    +    private static final long serialVersionUID = -351817568648116452L;
    +
    +    /**
    +     * Create a factory with connection and a schema mapping configured
    +     *
    +     * @param connection The connection to use with objects created from this
    +     *            factory
    +     * @param mapping The schema mapping to use with objects created from this
    +     *            factory
    +     * @deprecated - 2.0.5 - Use {@link #SQLiteFactory(Connection, Settings)}
    +     *             instead
    +     */
    +    @Deprecated
    +    public SQLiteFactory(Connection connection, SchemaMapping mapping) {
    +        super(connection, SQLDialect.SQLITE, mapping);
    +    }
    +
    +    /**
    +     * Create a factory with connection and a settings configured
    +     *
    +     * @param connection The connection to use with objects created from this
    +     *            factory
    +     * @param settings The runtime settings to apply to objects created from
    +     *            this factory
    +     */
    +    public SQLiteFactory(Connection connection, Settings settings) {
    +        super(connection, SQLDialect.SQLITE, settings);
    +    }
    +
    +    /**
    +     * Create a factory with connection
    +     *
    +     * @param connection The connection to use with objects created from this
    +     *            factory
    +     */
    +    public SQLiteFactory(Connection connection) {
    +        super(connection, SQLDialect.SQLITE);
    +    }
    +
    +    // -------------------------------------------------------------------------
    +    // General pseudo-columns
    +    // -------------------------------------------------------------------------
    +
    +    /**
    +     * Retrieve the SQLite-specific <code>_rowid_</code> pseudo-field.
    +     * <code>_rowid_</code> was chosen over <code>rowid</code> as it is less
    +     * likely to be used as an actual table column in client code.
    +     *
    +     * @see <a
    +     *      href="http://www.sqlite.org/lang_createtable.html#rowid">http://www.sqlite.org/lang_createtable.html#rowid</a>
    +     */
    +    public static Field<Long> rowid() {
    +        return field("_rowid_", Long.class);
    +    }
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/util/sqlserver/SQLServerDataType.java b/jOOQ/src/main/java/org/jooq/util/sqlserver/SQLServerDataType.java
    new file mode 100644
    index 00000000000..628200f4533
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/util/sqlserver/SQLServerDataType.java
    @@ -0,0 +1,134 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq.util.sqlserver;
    +
    +import java.math.BigDecimal;
    +import java.math.BigInteger;
    +import java.sql.Date;
    +import java.sql.Time;
    +import java.sql.Timestamp;
    +
    +import org.jooq.DataType;
    +import org.jooq.SQLDialect;
    +import org.jooq.impl.AbstractDataType;
    +import org.jooq.impl.SQLDataType;
    +
    +/**
    + * Supported data types for the {@link SQLDialect#SQLSERVER} dialect
    + *
    + * @author Lukas Eder
    + * @see <a href="http://msdn.microsoft.com/en-us/library/aa258271%28v=sql.80%29.aspx">http://msdn.microsoft.com/en-us/library/aa258271%28v=sql.80%29.aspx</a>
    + */
    +public class SQLServerDataType<T> extends AbstractDataType<T> {
    +
    +    /**
    +     * Generated UID
    +     */
    +    private static final long                         serialVersionUID = -5677365115109672781L;
    +
    +    // -------------------------------------------------------------------------
    +    // Default SQL data types and synonyms thereof
    +    // -------------------------------------------------------------------------
    +
    +    public static final SQLServerDataType<Byte>       TINYINT          = new SQLServerDataType<Byte>(SQLDataType.TINYINT, "tinyint");
    +    public static final SQLServerDataType<Short>      SMALLINT         = new SQLServerDataType<Short>(SQLDataType.SMALLINT, "smallint");
    +    public static final SQLServerDataType<Integer>    INT              = new SQLServerDataType<Integer>(SQLDataType.INTEGER, "int");
    +    public static final SQLServerDataType<Long>       BIGINT           = new SQLServerDataType<Long>(SQLDataType.BIGINT, "bigint");
    +    public static final SQLServerDataType<Double>     FLOAT            = new SQLServerDataType<Double>(SQLDataType.FLOAT, "float");
    +    public static final SQLServerDataType<Float>      REAL             = new SQLServerDataType<Float>(SQLDataType.REAL, "real");
    +    public static final SQLServerDataType<BigDecimal> NUMERIC          = new SQLServerDataType<BigDecimal>(SQLDataType.NUMERIC, "numeric");
    +    public static final SQLServerDataType<BigDecimal> DECIMAL          = new SQLServerDataType<BigDecimal>(SQLDataType.DECIMAL, "decimal");
    +    public static final SQLServerDataType<Boolean>    BIT              = new SQLServerDataType<Boolean>(SQLDataType.BIT, "bit");
    +    public static final SQLServerDataType<Date>       DATE             = new SQLServerDataType<Date>(SQLDataType.DATE, "date");
    +    public static final SQLServerDataType<Timestamp>  DATETIME         = new SQLServerDataType<Timestamp>(SQLDataType.TIMESTAMP, "datetime");
    +    public static final SQLServerDataType<Time>       TIME             = new SQLServerDataType<Time>(SQLDataType.TIME, "time");
    +    public static final SQLServerDataType<String>     VARCHAR          = new SQLServerDataType<String>(SQLDataType.VARCHAR, "varchar");
    +    public static final SQLServerDataType<String>     CHAR             = new SQLServerDataType<String>(SQLDataType.CHAR, "char");
    +    public static final SQLServerDataType<String>     TEXT             = new SQLServerDataType<String>(SQLDataType.CLOB, "text");
    +    public static final SQLServerDataType<String>     NVARCHAR         = new SQLServerDataType<String>(SQLDataType.NVARCHAR, "nvarchar");
    +    public static final SQLServerDataType<String>     NCHAR            = new SQLServerDataType<String>(SQLDataType.NCHAR, "nchar");
    +    public static final SQLServerDataType<String>     NTEXT            = new SQLServerDataType<String>(SQLDataType.NCLOB, "ntext");
    +    public static final SQLServerDataType<byte[]>     VARBINARY        = new SQLServerDataType<byte[]>(SQLDataType.VARBINARY, "varbinary", "varbinary(max)");
    +    public static final SQLServerDataType<byte[]>     BINARY           = new SQLServerDataType<byte[]>(SQLDataType.BINARY, "binary");
    +
    +    // -------------------------------------------------------------------------
    +    // Compatibility types for supported SQLDataTypes
    +    // -------------------------------------------------------------------------
    +
    +    protected static final SQLServerDataType<byte[]>  __BLOB           = new SQLServerDataType<byte[]>(SQLDataType.BLOB, "binary");
    +    protected static final SQLServerDataType<Boolean> __BOOLEAN        = new SQLServerDataType<Boolean>(SQLDataType.BOOLEAN, "bit");
    +    protected static final SQLServerDataType<Double>  __DOUBLE         = new SQLServerDataType<Double>(SQLDataType.DOUBLE, "float");
    +    protected static final SQLServerDataType<byte[]>  __LONGVARBINARY  = new SQLServerDataType<byte[]>(SQLDataType.LONGVARBINARY, "varbinary", "varbinary(max)");
    +    protected static final SQLServerDataType<String>  __LONGVARCHAR    = new SQLServerDataType<String>(SQLDataType.LONGVARCHAR, "varchar");
    +    protected static final SQLServerDataType<String>  __NCLOB          = new SQLServerDataType<String>(SQLDataType.NCLOB, "text");
    +    protected static final SQLServerDataType<String>  __LONGNVARCHAR   = new SQLServerDataType<String>(SQLDataType.LONGNVARCHAR, "varchar");
    +
    +    // -------------------------------------------------------------------------
    +    // Compatibility types for supported Java types
    +    // -------------------------------------------------------------------------
    +
    +    protected static final SQLServerDataType<BigInteger> __BIGINTEGER  = new SQLServerDataType<BigInteger>(SQLDataType.DECIMAL_INTEGER, "numeric");
    +
    +    // -------------------------------------------------------------------------
    +    // Dialect-specific data types and synonyms thereof
    +    // -------------------------------------------------------------------------
    +
    +    public static final SQLServerDataType<Timestamp>  SMALLDATETIME    = new SQLServerDataType<Timestamp>(SQLDataType.TIMESTAMP, "smalldatetime");
    +    public static final SQLServerDataType<Timestamp>  DATETIME2        = new SQLServerDataType<Timestamp>(SQLDataType.TIMESTAMP, "datetime2");
    +    public static final SQLServerDataType<Timestamp>  DATETIMEOFFSET   = new SQLServerDataType<Timestamp>(SQLDataType.TIMESTAMP, "datetimeoffset");
    +    public static final SQLServerDataType<BigDecimal> MONEY            = new SQLServerDataType<BigDecimal>(SQLDataType.DECIMAL, "money");
    +    public static final SQLServerDataType<BigDecimal> SMALLMONEY       = new SQLServerDataType<BigDecimal>(SQLDataType.DECIMAL, "smallmoney");
    +    public static final SQLServerDataType<byte[]>     IMAGE            = new SQLServerDataType<byte[]>(SQLDataType.BINARY, "image");
    +    public static final SQLServerDataType<String>     UNIQUEIDENTIFIER = new SQLServerDataType<String>(SQLDataType.VARCHAR, "uniqueidentifier");
    +    public static final SQLServerDataType<Long>       ROWVERSION       = new SQLServerDataType<Long>(SQLDataType.BIGINT, "rowversion");
    +    public static final SQLServerDataType<Long>       TIMESTAMP        = new SQLServerDataType<Long>(SQLDataType.BIGINT, "timestamp");
    +
    +    private SQLServerDataType(SQLDataType<T> sqlDataType, String typeName) {
    +        super(SQLDialect.SQLSERVER, sqlDataType, sqlDataType.getType(), typeName);
    +    }
    +
    +    private SQLServerDataType(SQLDataType<T> sqlDataType, String typeName, String castTypeName) {
    +        super(SQLDialect.SQLSERVER, sqlDataType, sqlDataType.getType(), typeName, castTypeName);
    +    }
    +
    +    public static <T> DataType<T> getDataType(Class<? extends T> type) {
    +        return getDataType(SQLDialect.SQLSERVER, type);
    +    }
    +
    +    public static DataType<Object> getDefaultDataType(String typeName) {
    +        return getDefaultDataType(SQLDialect.SQLSERVER, typeName);
    +    }
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/util/sqlserver/SQLServerFactory.java b/jOOQ/src/main/java/org/jooq/util/sqlserver/SQLServerFactory.java
    new file mode 100644
    index 00000000000..ca808bb937a
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/util/sqlserver/SQLServerFactory.java
    @@ -0,0 +1,94 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq.util.sqlserver;
    +
    +import java.sql.Connection;
    +
    +import org.jooq.SQLDialect;
    +import org.jooq.SchemaMapping;
    +import org.jooq.conf.Settings;
    +import org.jooq.impl.Factory;
    +
    +/**
    + * A {@link SQLDialect#SQLSERVER} specific factory
    + *
    + * @author Lukas Eder
    + */
    +@SuppressWarnings("deprecation")
    +public class SQLServerFactory extends Factory {
    +
    +    /**
    +     * Generated UID
    +     */
    +    private static final long serialVersionUID = -351817568648116452L;
    +
    +    /**
    +     * Create a factory with connection and a schema mapping configured
    +     *
    +     * @param connection The connection to use with objects created from this
    +     *            factory
    +     * @param mapping The schema mapping to use with objects created from this
    +     *            factory
    +     * @deprecated - 2.0.5 - Use {@link #SQLServerFactory(Connection, Settings)}
    +     *             instead
    +     */
    +    @Deprecated
    +    public SQLServerFactory(Connection connection, SchemaMapping mapping) {
    +        super(connection, SQLDialect.SQLSERVER, mapping);
    +    }
    +
    +    /**
    +     * Create a factory with connection and a settings configured
    +     *
    +     * @param connection The connection to use with objects created from this
    +     *            factory
    +     * @param settings The runtime settings to apply to objects created from
    +     *            this factory
    +     */
    +    public SQLServerFactory(Connection connection, Settings settings) {
    +        super(connection, SQLDialect.SQLSERVER, settings);
    +    }
    +
    +    /**
    +     * Create a factory with connection
    +     *
    +     * @param connection The connection to use with objects created from this
    +     *            factory
    +     */
    +    public SQLServerFactory(Connection connection) {
    +        super(connection, SQLDialect.SQLSERVER);
    +    }
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/util/sybase/SybaseDataType.java b/jOOQ/src/main/java/org/jooq/util/sybase/SybaseDataType.java
    new file mode 100644
    index 00000000000..9a5884be9ee
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/util/sybase/SybaseDataType.java
    @@ -0,0 +1,132 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq.util.sybase;
    +
    +import java.math.BigDecimal;
    +import java.math.BigInteger;
    +import java.sql.Date;
    +import java.sql.Time;
    +import java.sql.Timestamp;
    +
    +import org.jooq.DataType;
    +import org.jooq.SQLDialect;
    +import org.jooq.impl.AbstractDataType;
    +import org.jooq.impl.SQLDataType;
    +
    +/**
    + * Supported data types for the {@link SQLDialect#SYBASE} dialect
    + *
    + * @see <a href="http://infocenter.sybase.com/help/topic/com.sybase.help.sqlanywhere.12.0.0/dbreference/rf-datatypes.html">http://infocenter.sybase.com/help/topic/com.sybase.help.sqlanywhere.12.0.0/dbreference/rf-datatypes.html</a>
    + * @author Espen Stromsnes
    + */
    +public class SybaseDataType<T> extends AbstractDataType<T> {
    +
    +    /**
    +     * Generated UID
    +     */
    +    private static final long                      serialVersionUID           = -4442303192680774346L;
    +
    +    // -------------------------------------------------------------------------
    +    // Default SQL data types and synonyms thereof
    +    // -------------------------------------------------------------------------
    +
    +    public static final SybaseDataType<Byte>       TINYINT                    = new SybaseDataType<Byte>(SQLDataType.TINYINT, "tinyint");
    +    public static final SybaseDataType<Short>      SMALLINT                   = new SybaseDataType<Short>(SQLDataType.SMALLINT, "smallint");
    +    public static final SybaseDataType<Short>      UNSIGNEDSMALLLINT          = new SybaseDataType<Short>(SQLDataType.SMALLINT, "unsignedsmallint");
    +    public static final SybaseDataType<Integer>    INT                        = new SybaseDataType<Integer>(SQLDataType.INTEGER, "int");
    +    public static final SybaseDataType<Integer>    INTEGER                    = new SybaseDataType<Integer>(SQLDataType.INTEGER, "integer");
    +    public static final SybaseDataType<Integer>    UNSIGNEDINT                = new SybaseDataType<Integer>(SQLDataType.INTEGER, "unsignedint");
    +    public static final SybaseDataType<Long>       BIGINT                     = new SybaseDataType<Long>(SQLDataType.BIGINT, "bigint");
    +    public static final SybaseDataType<Long>       UNSIGNEDBIGINT             = new SybaseDataType<Long>(SQLDataType.BIGINT, "unsignedbigint");
    +    public static final SybaseDataType<Double>     DOUBLE                     = new SybaseDataType<Double>(SQLDataType.DOUBLE, "double");
    +    public static final SybaseDataType<Double>     FLOAT                      = new SybaseDataType<Double>(SQLDataType.FLOAT, "float");
    +    public static final SybaseDataType<Float>      REAL                       = new SybaseDataType<Float>(SQLDataType.REAL, "real");
    +    public static final SybaseDataType<BigDecimal> DECIMAL                    = new SybaseDataType<BigDecimal>(SQLDataType.DECIMAL, "decimal");
    +    public static final SybaseDataType<BigDecimal> NUMERIC                    = new SybaseDataType<BigDecimal>(SQLDataType.NUMERIC, "numeric");
    +    public static final SybaseDataType<Boolean>    BIT                        = new SybaseDataType<Boolean>(SQLDataType.BIT, "bit");
    +    public static final SybaseDataType<String>     VARCHAR                    = new SybaseDataType<String>(SQLDataType.VARCHAR, "varchar");
    +    public static final SybaseDataType<String>     CHAR                       = new SybaseDataType<String>(SQLDataType.CHAR, "char");
    +    public static final SybaseDataType<String>     LONGNVARCHAR               = new SybaseDataType<String>(SQLDataType.LONGNVARCHAR, "long nvarchar");
    +    public static final SybaseDataType<String>     LONGVARCHAR                = new SybaseDataType<String>(SQLDataType.LONGVARCHAR, "long varchar");
    +    public static final SybaseDataType<String>     NCHAR                      = new SybaseDataType<String>(SQLDataType.NCHAR, "nchar");
    +    public static final SybaseDataType<String>     NTEXT                      = new SybaseDataType<String>(SQLDataType.NCLOB, "ntext");
    +    public static final SybaseDataType<String>     NVARCHAR                   = new SybaseDataType<String>(SQLDataType.NVARCHAR, "nvarchar");
    +    public static final SybaseDataType<String>     TEXT                       = new SybaseDataType<String>(SQLDataType.CLOB, "text");
    +    public static final SybaseDataType<Date>       DATE                       = new SybaseDataType<Date>(SQLDataType.DATE, "date");
    +    public static final SybaseDataType<Time>       TIME                       = new SybaseDataType<Time>(SQLDataType.TIME, "time");
    +    public static final SybaseDataType<Timestamp>  DATETIME                   = new SybaseDataType<Timestamp>(SQLDataType.TIMESTAMP, "datetime");
    +    public static final SybaseDataType<Timestamp>  TIMESTAMP                  = new SybaseDataType<Timestamp>(SQLDataType.TIMESTAMP, "timestamp");
    +    public static final SybaseDataType<byte[]>     BINARY                     = new SybaseDataType<byte[]>(SQLDataType.BINARY, "binary");
    +    public static final SybaseDataType<byte[]>     LONGBINARY                 = new SybaseDataType<byte[]>(SQLDataType.LONGVARBINARY, "long binary");
    +    public static final SybaseDataType<byte[]>     VARBINARY                  = new SybaseDataType<byte[]>(SQLDataType.VARBINARY, "varbinary");
    +
    +    // -------------------------------------------------------------------------
    +    // Compatibility types for supported SQLDataTypes
    +    // -------------------------------------------------------------------------
    +
    +    protected static final SybaseDataType<byte[]>  __BLOB                     = new SybaseDataType<byte[]>(SQLDataType.BLOB, "binary");
    +    protected static final SybaseDataType<Boolean> __BOOLEAN                  = new SybaseDataType<Boolean>(SQLDataType.BOOLEAN, "bit");
    +
    +    // -------------------------------------------------------------------------
    +    // Compatibility types for supported Java types
    +    // -------------------------------------------------------------------------
    +
    +    protected static final SybaseDataType<BigInteger> __BIGINTEGER = new SybaseDataType<BigInteger>(SQLDataType.DECIMAL_INTEGER, "decimal");
    +
    +    // -------------------------------------------------------------------------
    +    // Dialect-specific data types and synonyms thereof
    +    // -------------------------------------------------------------------------
    +
    +    public static final SybaseDataType<BigDecimal> MONEY                 = new SybaseDataType<BigDecimal>(SQLDataType.DECIMAL, "money");
    +    public static final SybaseDataType<BigDecimal> SMALLMONEY            = new SybaseDataType<BigDecimal>(SQLDataType.DECIMAL, "smallmoney");
    +    public static final SybaseDataType<String>     UNIQUEIDENTIFIERSTR   = new SybaseDataType<String>(SQLDataType.VARCHAR, "uniqueidentifierstr");
    +    public static final SybaseDataType<String>     XML                   = new SybaseDataType<String>(SQLDataType.VARCHAR, "xml");
    +    public static final SybaseDataType<String>     UNIQUEIDENTIFIER      = new SybaseDataType<String>(SQLDataType.VARCHAR, "uniqueidentifier");
    +    public static final SybaseDataType<Timestamp>  DATETIMEOFFSET        = new SybaseDataType<Timestamp>(SQLDataType.TIMESTAMP, "datetimeoffset");
    +    public static final SybaseDataType<Timestamp>  SMALLDATETIME         = new SybaseDataType<Timestamp>(SQLDataType.TIMESTAMP, "smalldatetime");
    +    public static final SybaseDataType<Timestamp>  TIMESTAMPWITHTIMEZONE = new SybaseDataType<Timestamp>(SQLDataType.TIMESTAMP, "timestampwithtimezone");
    +    public static final SybaseDataType<byte[]>     IMAGE                 = new SybaseDataType<byte[]>(SQLDataType.BINARY, "image");
    +    public static final SybaseDataType<byte[]>     VARBIT                = new SybaseDataType<byte[]>(SQLDataType.VARBINARY, "varbit");
    +    public static final SybaseDataType<byte[]>     LONGVARBIT            = new SybaseDataType<byte[]>(SQLDataType.LONGVARBINARY, "longvarbit");
    +
    +
    +    private SybaseDataType(SQLDataType<T> sqlDataType, String typeName) {
    +        super(SQLDialect.SYBASE, sqlDataType, sqlDataType.getType(), typeName);
    +    }
    +
    +    public static <T> DataType<T> getDataType(Class<? extends T> type) {
    +        return getDataType(SQLDialect.SYBASE, type);
    +    }
    +
    +    public static DataType<Object> getDefaultDataType(String typeName) {
    +        return getDefaultDataType(SQLDialect.SYBASE, typeName);
    +    }
    +}
    diff --git a/jOOQ/src/main/java/org/jooq/util/sybase/SybaseFactory.java b/jOOQ/src/main/java/org/jooq/util/sybase/SybaseFactory.java
    new file mode 100644
    index 00000000000..201e31633ab
    --- /dev/null
    +++ b/jOOQ/src/main/java/org/jooq/util/sybase/SybaseFactory.java
    @@ -0,0 +1,89 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq.util.sybase;
    +
    +import java.sql.Connection;
    +
    +import org.jooq.SQLDialect;
    +import org.jooq.SchemaMapping;
    +import org.jooq.conf.Settings;
    +import org.jooq.impl.Factory;
    +
    +/**
    + * A {@link SQLDialect#SYBASE} specific factory
    + *
    + * @author Espen Stromsnes
    + */
    +@SuppressWarnings("deprecation")
    +public class SybaseFactory extends Factory {
    +
    +    /**
    +     * Generated UID
    +     */
    +    private static final long serialVersionUID = 6530433807914995633L;
    +
    +    /**
    +     * Create a factory with connection and a schema mapping configured
    +     *
    +     * @param connection The connection to use with objects created from this
    +     *            factory
    +     * @param mapping The schema mapping to use with objects created from this
    +     *            factory
    +     * @deprecated - 2.0.5 - Use {@link #SybaseFactory(Connection, Settings)}
    +     *             instead
    +     */
    +    @Deprecated
    +    public SybaseFactory(Connection connection, SchemaMapping mapping) {
    +        super(connection, SQLDialect.SYBASE, mapping);
    +    }
    +
    +    /**
    +     * Create a factory with connection and a settings configured
    +     *
    +     * @param connection The connection to use with objects created from this
    +     *            factory
    +     * @param settings The runtime settings to apply to objects created from
    +     *            this factory
    +     */
    +    public SybaseFactory(Connection connection, Settings settings) {
    +        super(connection, SQLDialect.SYBASE, settings);
    +    }
    +
    +    /**
    +     * Create a factory with connection
    +     *
    +     * @param connection The connection to use with objects created from this
    +     *            factory
    +     */
    +    public SybaseFactory(Connection connection) {
    +        super(connection, SQLDialect.SYBASE);
    +    }
    +}
    diff --git a/jOOQ/src/main/resources/META-INF/LICENSE.txt b/jOOQ/src/main/resources/META-INF/LICENSE.txt
    new file mode 100644
    index 00000000000..fd12d44afa0
    --- /dev/null
    +++ b/jOOQ/src/main/resources/META-INF/LICENSE.txt
    @@ -0,0 +1,33 @@
    +  Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    +  All rights reserved.
    + 
    +  This software is licensed to you under the Apache License, Version 2.0
    +  (the "License"); You may obtain a copy of the License at
    +
    +     http://www.apache.org/licenses/LICENSE-2.0
    + 
    +  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 "jOOQ" 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 COPYRIGHT OWNER 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.
    \ No newline at end of file
    diff --git a/jOOQ/src/main/resources/META-INF/README.txt b/jOOQ/src/main/resources/META-INF/README.txt
    new file mode 100644
    index 00000000000..3e6e227e05b
    --- /dev/null
    +++ b/jOOQ/src/main/resources/META-INF/README.txt
    @@ -0,0 +1,2 @@
    +Thanks for downloading jOOQ.
    +Please visit http://www.jooq.org for more information.
    \ No newline at end of file
    diff --git a/jOOQ/src/main/resources/xsd/jooq-export-1.6.2.xsd b/jOOQ/src/main/resources/xsd/jooq-export-1.6.2.xsd
    new file mode 100644
    index 00000000000..c46283a0359
    --- /dev/null
    +++ b/jOOQ/src/main/resources/xsd/jooq-export-1.6.2.xsd
    @@ -0,0 +1,45 @@
    +<?xml version="1.0" encoding="UTF-8"?>
    +<schema
    +    xmlns="http://www.w3.org/2001/XMLSchema"
    +    xmlns:jooq-export="http://www.jooq.org/xsd/jooq-export-1.6.2.xsd"
    +    targetNamespace="http://www.jooq.org/xsd/jooq-export-1.6.2.xsd">
    +
    +    <element name="result" type="jooq-export:Result"/>
    +
    +    <complexType name="Result">
    +         <sequence>
    +             <element name="fields" type="jooq-export:Fields" maxOccurs="1" minOccurs="1"/>
    +             <element name="records" type="jooq-export:Records" maxOccurs="1" minOccurs="1"/>
    +         </sequence>
    +    </complexType>
    +
    +    <complexType name="Fields">
    +        <sequence>
    +            <element name="field" type="jooq-export:Field" maxOccurs="unbounded" minOccurs="0"/>
    +        </sequence>
    +    </complexType>
    +
    +    <complexType name="Field">
    +        <attribute name="name" type="string"/>
    +    </complexType>
    +
    +    <complexType name="Records">
    +        <sequence>
    +            <element name="record" type="jooq-export:Record" maxOccurs="unbounded" minOccurs="0"/>
    +        </sequence>
    +    </complexType>
    +
    +    <complexType name="Record">
    +        <sequence>
    +            <element name="value" type="jooq-export:Value" maxOccurs="unbounded" minOccurs="0"/>
    +        </sequence>
    +    </complexType>
    +
    +    <complexType name="Value">
    +        <simpleContent>
    +            <extension base="string">
    +                <attribute name="field" type="string"/>
    +            </extension>
    +        </simpleContent>
    +    </complexType>
    +</schema>
    \ No newline at end of file
    diff --git a/jOOQ/src/main/resources/xsd/jooq-querypart-2.0.0.xsd b/jOOQ/src/main/resources/xsd/jooq-querypart-2.0.0.xsd
    new file mode 100644
    index 00000000000..a90ec57a244
    --- /dev/null
    +++ b/jOOQ/src/main/resources/xsd/jooq-querypart-2.0.0.xsd
    @@ -0,0 +1,45 @@
    +<?xml version="1.0" encoding="UTF-8"?>
    +<schema
    +    xmlns="http://www.w3.org/2001/XMLSchema"
    +    xmlns:jooq-querypart="http://www.jooq.org/xsd/jooq-querypart-1.6.2.xsd"
    +    targetNamespace="http://www.jooq.org/xsd/jooq-querypart-1.6.2.xsd">
    +
    +    <element name="select" type="jooq-querypart:SelectType"/>
    +
    +    <complexType name="SelectType">
    +           <sequence>
    +               <element name="select" type="jooq-querypart:FieldType" minOccurs="0" maxOccurs="1"/>
    +               <element name="where" type="jooq-querypart:ConditionType" minOccurs="0" maxOccurs="1"/>
    +           </sequence>
    +    </complexType>
    +
    +    <complexType name="FieldType">
    +          <choice>
    +              <!-- Framework fields -->
    +               <element name="val" type="string"/>
    +               <element name="literal" type="string"/>
    +               <element name="sql" type="jooq-querypart:SQLType"/>
    +
    +               <!-- Functions -->
    +               <element name="ascii" type="jooq-querypart:FieldType"/>
    +               <element name="bit_count" type="jooq-querypart:FieldType"/>
    +               <element name="ceil" type="jooq-querypart:FieldType"/>
    +               <element name="concat" type="jooq-querypart:FieldType"/>
    +           </choice>
    +    </complexType>
    +
    +    <complexType name="ConditionType">
    +        <choice>
    +            <!-- Combined conditions -->
    +            <element name="and" type="jooq-querypart:ConditionType"/>
    +        </choice>
    +    </complexType>
    +
    +    <complexType name="SQLType">
    +        <sequence>
    +            <element name="val" type="string"/>
    +        </sequence>
    +        <attribute name="sql" type="string"/>
    +    </complexType>
    +
    +</schema>
    \ No newline at end of file
    diff --git a/jOOQ/src/main/resources/xsd/jooq-runtime-2.0.5.xsd b/jOOQ/src/main/resources/xsd/jooq-runtime-2.0.5.xsd
    new file mode 100644
    index 00000000000..eb66ec3ec08
    --- /dev/null
    +++ b/jOOQ/src/main/resources/xsd/jooq-runtime-2.0.5.xsd
    @@ -0,0 +1,105 @@
    +<?xml version="1.0" encoding="UTF-8"?>
    +<schema
    +	xmlns="http://www.w3.org/2001/XMLSchema"
    +	xmlns:jooq-runtime="http://www.jooq.org/xsd/jooq-runtime-2.0.5.xsd"
    +	xmlns:jaxb="http://java.sun.com/xml/ns/jaxb"
    +    xmlns:xjc="http://java.sun.com/xml/ns/jaxb/xjc"
    +    jaxb:version="1.0" jaxb:extensionBindingPrefixes="xjc"
    +	targetNamespace="http://www.jooq.org/xsd/jooq-runtime-2.0.5.xsd">
    +
    +	<annotation>
    +	    <appinfo>
    +	        <jaxb:globalBindings>
    +	            <xjc:serializable uid="205"/>
    +	        </jaxb:globalBindings>
    +	    </appinfo>
    +	</annotation>
    +
    +    <element name="settings" type="jooq-runtime:Settings"/>
    +
    +	<complexType name="Settings">
    +		<all>
    +			<!-- Configure render mapping for runtime schema / table rewriting in
    +			     generated SQL -->
    +			<element name="renderMapping" type="jooq-runtime:RenderMapping" minOccurs="0" maxOccurs="1"/>
    +
    +			<!-- The type of statement that is to be executed -->
    +			<element name="statementType" type="jooq-runtime:StatementType" minOccurs="0" maxOccurs="1" default="PREPARED_STATEMENT"/>
    +
    +			<!-- When set to true, this will add jOOQ's default logging ExecuteListeners -->
    +			<element name="executeLogging" type="boolean" minOccurs="0" maxOccurs="1" default="true"/>
    +
    +			<!-- The event listeners to be notified upon execution events -->
    +			<element name="executeListeners" type="jooq-runtime:ExecuteListeners" minOccurs="0" maxOccurs="1"/>
    +		</all>
    +	</complexType>
    +
    +	<complexType name="RenderMapping">
    +		<all>
    +			<!-- The default schema as defined in org.jooq.Schema.getName()
    +			     This schema will be omitted in rendered SQL -->
    +			<element name="defaultSchema" type="string" minOccurs="0" maxOccurs="1"/>
    +
    +			<!-- The mapped schemata configuration -->
    +			<element name="schemata" type="jooq-runtime:MappedSchemata" minOccurs="0" maxOccurs="1"/>
    +		</all>
    +	</complexType>
    +
    +	<complexType name="MappedSchemata">
    +		<sequence>
    +			<element name="schema" type="jooq-runtime:MappedSchema" minOccurs="0" maxOccurs="unbounded"/>
    +		</sequence>
    +	</complexType>
    +
    +	<complexType name="MappedSchema">
    +		<all>
    +			<!-- The input schema as defined in org.jooq.Schema.getName() -->
    +			<element name="input" type="string" minOccurs="1" maxOccurs="1"/>
    +
    +			<!-- The output schema as it will be rendered in SQL
    +			     When this is omitted, you can still apply table mapping -->
    +			<element name="output" type="string" minOccurs="0" maxOccurs="1"/>
    +
    +			<!-- Configure table mapping for runtime table rewriting in
    +			     generated SQL -->
    +			<element name="tables" type="jooq-runtime:MappedTables" minOccurs="0" maxOccurs="1"/>
    +		</all>
    +	</complexType>
    +
    +	<complexType name="MappedTables">
    +		<sequence>
    +			<element name="table" type="jooq-runtime:MappedTable" minOccurs="0" maxOccurs="unbounded"/>
    +		</sequence>
    +	</complexType>
    +
    +	<complexType name="MappedTable">
    +		<all>
    +			<!-- The input schema as defined in org.jooq.Table.getName() -->
    +			<element name="input" type="string" minOccurs="1" maxOccurs="1"/>
    +
    +			<!-- The output schema as it will be rendered in SQL -->
    +			<element name="output" type="string" minOccurs="1" maxOccurs="1"/>
    +		</all>
    +	</complexType>
    +
    +	<simpleType name="StatementType">
    +		<restriction base="string">
    +
    +			<!-- Execute statements with inlined bind values, avoiding JDBC's
    +			     PreparedStatements -->
    +			<enumeration value="STATIC_STATEMENT"/>
    +
    +			<!-- Execute statements with bind values, using JDBC's
    +			     PreparedStatements -->
    +			<enumeration value="PREPARED_STATEMENT"/>
    +		</restriction>
    +	</simpleType>
    +
    +	<complexType name="ExecuteListeners">
    +		<sequence>
    +
    +			<!-- An event listener implementing org.jooq.ExecuteListener -->
    +			<element name="executeListener" type="string" minOccurs="0" maxOccurs="unbounded"/>
    +		</sequence>
    +	</complexType>
    +</schema>
    \ No newline at end of file
    diff --git a/jOOQ/src/main/resources/xsd/jooq-runtime-2.1.0.xsd b/jOOQ/src/main/resources/xsd/jooq-runtime-2.1.0.xsd
    new file mode 100644
    index 00000000000..4147bfda11b
    --- /dev/null
    +++ b/jOOQ/src/main/resources/xsd/jooq-runtime-2.1.0.xsd
    @@ -0,0 +1,160 @@
    +<?xml version="1.0" encoding="UTF-8"?>
    +<schema
    +  xmlns="http://www.w3.org/2001/XMLSchema"
    +  xmlns:jooq-runtime="http://www.jooq.org/xsd/jooq-runtime-2.1.0.xsd"
    +  xmlns:jaxb="http://java.sun.com/xml/ns/jaxb"
    +  xmlns:xjc="http://java.sun.com/xml/ns/jaxb/xjc"
    +  jaxb:version="1.0" jaxb:extensionBindingPrefixes="xjc"
    +  targetNamespace="http://www.jooq.org/xsd/jooq-runtime-2.1.0.xsd">
    +
    +  <annotation>
    +    <appinfo>
    +      <jaxb:globalBindings>
    +        <xjc:serializable uid="205"/>
    +      </jaxb:globalBindings>
    +    </appinfo>
    +  </annotation>
    +
    +  <element name="settings" type="jooq-runtime:Settings"/>
    +
    +  <complexType name="Settings">
    +    <all>
    +      <!-- Configure render mapping for runtime schema / table rewriting in
    +           generated SQL -->
    +      <element name="renderMapping" type="jooq-runtime:RenderMapping" minOccurs="0" maxOccurs="1"/>
    +
    +      <!-- Whether rendered schema, table, column names, etc should be quoted
    +           in rendered SQL, or transformed in any other way.
    +           This is set to "QUOTED" by default for backwards-compatibility -->
    +      <element name="renderNameStyle" type="jooq-runtime:RenderNameStyle" minOccurs="0" maxOccurs="1" default="QUOTED"/>
    +
    +      <!-- Whether SQL keywords should be rendered with upper or lower case -->
    +      <element name="renderKeywordStyle" type="jooq-runtime:RenderKeywordStyle" minOccurs="0" maxOccurs="1" default="LOWER"/>
    +
    +      <!-- Whether rendered SQL should be pretty-printed -->
    +      <element name="renderFormatted" type="boolean" minOccurs="0" maxOccurs="1" default="false"/>
    +
    +      <!-- The type of statement that is to be executed -->
    +      <element name="statementType" type="jooq-runtime:StatementType" minOccurs="0" maxOccurs="1" default="PREPARED_STATEMENT"/>
    +
    +      <!-- When set to true, this will add jOOQ's default logging ExecuteListeners -->
    +      <element name="executeLogging" type="boolean" minOccurs="0" maxOccurs="1" default="true"/>
    +
    +      <!-- The event listeners to be notified upon execution events -->
    +      <element name="executeListeners" type="jooq-runtime:ExecuteListeners" minOccurs="0" maxOccurs="1"/>
    +    </all>
    +  </complexType>
    +
    +  <complexType name="RenderMapping">
    +    <all>
    +      <!-- The default schema as defined in org.jooq.Schema.getName()
    +           This schema will be omitted in rendered SQL -->
    +      <element name="defaultSchema" type="string" minOccurs="0" maxOccurs="1"/>
    +
    +      <!-- The mapped schemata configuration -->
    +      <element name="schemata" type="jooq-runtime:MappedSchemata" minOccurs="0" maxOccurs="1"/>
    +    </all>
    +  </complexType>
    +
    +  <complexType name="MappedSchemata">
    +    <sequence>
    +      <element name="schema" type="jooq-runtime:MappedSchema" minOccurs="0" maxOccurs="unbounded"/>
    +    </sequence>
    +  </complexType>
    +
    +  <complexType name="MappedSchema">
    +    <all>
    +      <!-- The input schema as defined in org.jooq.Schema.getName() -->
    +      <element name="input" type="string" minOccurs="1" maxOccurs="1"/>
    +
    +      <!-- The output schema as it will be rendered in SQL
    +           When this is omitted, you can still apply table mapping -->
    +      <element name="output" type="string" minOccurs="0" maxOccurs="1"/>
    +
    +      <!-- Configure table mapping for runtime table rewriting in
    +           generated SQL -->
    +      <element name="tables" type="jooq-runtime:MappedTables" minOccurs="0" maxOccurs="1"/>
    +    </all>
    +  </complexType>
    +
    +  <complexType name="MappedTables">
    +    <sequence>
    +      <element name="table" type="jooq-runtime:MappedTable" minOccurs="0" maxOccurs="unbounded"/>
    +    </sequence>
    +  </complexType>
    +
    +  <complexType name="MappedTable">
    +    <all>
    +      <!-- The input schema as defined in org.jooq.Table.getName() -->
    +      <element name="input" type="string" minOccurs="1" maxOccurs="1"/>
    +
    +      <!-- The output schema as it will be rendered in SQL -->
    +      <element name="output" type="string" minOccurs="1" maxOccurs="1"/>
    +    </all>
    +  </complexType>
    +
    +  <simpleType name="StatementType">
    +    <restriction base="string">
    +
    +      <!-- Execute statements with inlined bind values, avoiding JDBC's
    +           PreparedStatements -->
    +      <enumeration value="STATIC_STATEMENT"/>
    +
    +      <!-- Execute statements with bind values, using JDBC's
    +           PreparedStatements -->
    +      <enumeration value="PREPARED_STATEMENT"/>
    +    </restriction>
    +  </simpleType>
    +
    +  <simpleType name="RenderNameStyle">
    +    <restriction base="string">
    +
    +      <!-- Render object names quoted, as defined in the database. Use this
    +           to stay on the safe side with case-sensitivity and special
    +           characters. For instance:
    +           Oracle    : "SYS"."ALL_TAB_COLS"
    +           MySQL     : `information_schema`.`TABLES`
    +           SQL Server: [INFORMATION_SCHEMA].[TABLES] -->
    +      <enumeration value="QUOTED"/>
    +
    +      <!-- Render object names, as defined in the database. For instance:
    +           Oracle    : SYS.ALL_TAB_COLS
    +           MySQL     : information_schema.TABLES
    +           SQL Server: INFORMATION_SCHEMA.TABLES -->
    +      <enumeration value="AS_IS"/>
    +
    +      <!-- Force rendering object names in lower case. For instance:
    +           Oracle    : sys.all_tab_cols
    +           MySQL     : information_schema.tables
    +           SQL Server: information_schema.tables -->
    +      <enumeration value="LOWER"/>
    +
    +      <!-- Force rendering object names in upper case. For instance:
    +           Oracle    : SYS.ALL_TAB_COLS
    +           MySQL     : INFORMATION_SCHEMA.TABLES
    +           SQL Server: INFORMATION_SCHEMA.TABLES -->
    +      <enumeration value="UPPER"/>
    +    </restriction>
    +  </simpleType>
    +
    +  <simpleType name="RenderKeywordStyle">
    +    <restriction base="string">
    +
    +      <!-- Keywords are rendered in lower case. For instance:
    +           select .. from .. where .. -->
    +      <enumeration value="LOWER"/>
    +
    +      <!-- Keywords are rendered in upper case. For instance:
    +           SELECT .. FROM .. WHERE .. -->
    +      <enumeration value="UPPER"/>
    +    </restriction>
    +  </simpleType>
    +
    +  <complexType name="ExecuteListeners">
    +    <sequence>
    +
    +      <!-- An event listener implementing org.jooq.ExecuteListener -->
    +      <element name="executeListener" type="string" minOccurs="0" maxOccurs="unbounded"/>
    +    </sequence>
    +  </complexType>
    +</schema>
    \ No newline at end of file
    diff --git a/jOOQ/src/test/java/org/jooq/test/Table1.java b/jOOQ/src/test/java/org/jooq/test/Table1.java
    new file mode 100644
    index 00000000000..bb796bddcc0
    --- /dev/null
    +++ b/jOOQ/src/test/java/org/jooq/test/Table1.java
    @@ -0,0 +1,68 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq.test;
    +
    +import java.sql.Date;
    +
    +import org.jooq.Table;
    +import org.jooq.TableField;
    +import org.jooq.impl.TableImpl;
    +
    +/**
    + * @author Lukas Eder
    + */
    +public class Table1 extends TableImpl<Table1Record> {
    +
    +    /**
    +     * Generated UID
    +     */
    +    private static final long serialVersionUID = 7621282509163949636L;
    +
    +    public static final Table<Table1Record>               TABLE1      = new Table1();
    +
    +    public static final TableField<Table1Record, Integer> FIELD_ID1   = createField("ID1", TestDataType.INTEGER_TYPE, TABLE1);
    +    public static final TableField<Table1Record, String>  FIELD_NAME1 = createField("NAME1", TestDataType.STRING_TYPE, TABLE1);
    +    public static final TableField<Table1Record, Date>    FIELD_DATE1 = createField("DATE1", TestDataType.DATE_TYPE, TABLE1);
    +
    +    public Table1() {
    +        super("TABLE1");
    +    }
    +
    +    @Override
    +    public Class<Table1Record> getRecordType() {
    +        return Table1Record.class;
    +    }
    +}
    \ No newline at end of file
    diff --git a/jOOQ/src/test/java/org/jooq/test/Table1Record.java b/jOOQ/src/test/java/org/jooq/test/Table1Record.java
    new file mode 100644
    index 00000000000..cdd7726da19
    --- /dev/null
    +++ b/jOOQ/src/test/java/org/jooq/test/Table1Record.java
    @@ -0,0 +1,53 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq.test;
    +
    +import org.jooq.impl.TableRecordImpl;
    +
    +/**
    + * @author Lukas Eder
    + */
    +public class Table1Record extends TableRecordImpl<Table1Record> {
    +
    +    /**
    +     * Generated UID
    +     */
    +    private static final long serialVersionUID = 7621282509163949636L;
    +
    +    public Table1Record() {
    +        super(Table1.TABLE1);
    +    }
    +}
    diff --git a/jOOQ/src/test/java/org/jooq/test/Table2.java b/jOOQ/src/test/java/org/jooq/test/Table2.java
    new file mode 100644
    index 00000000000..9971ee015d3
    --- /dev/null
    +++ b/jOOQ/src/test/java/org/jooq/test/Table2.java
    @@ -0,0 +1,68 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq.test;
    +
    +import java.sql.Date;
    +
    +import org.jooq.Table;
    +import org.jooq.TableField;
    +import org.jooq.impl.TableImpl;
    +
    +/**
    + * @author Lukas Eder
    + */
    +public class Table2 extends TableImpl<Table2Record> {
    +
    +    /**
    +     * Generated UID
    +     */
    +    private static final long serialVersionUID = 7621282509163949636L;
    +
    +    public static final Table<Table2Record>               TABLE2      = new Table2();
    +
    +    public static final TableField<Table2Record, Integer> FIELD_ID2   = createField("ID2", TestDataType.INTEGER_TYPE, TABLE2);
    +    public static final TableField<Table2Record, String>  FIELD_NAME2 = createField("NAME2", TestDataType.STRING_TYPE, TABLE2);
    +    public static final TableField<Table2Record, Date>    FIELD_DATE2 = createField("DATE2", TestDataType.DATE_TYPE, TABLE2);
    +
    +    public Table2() {
    +        super("TABLE2");
    +    }
    +
    +    @Override
    +    public Class<Table2Record> getRecordType() {
    +        return Table2Record.class;
    +    }
    +}
    \ No newline at end of file
    diff --git a/jOOQ/src/test/java/org/jooq/test/Table2Record.java b/jOOQ/src/test/java/org/jooq/test/Table2Record.java
    new file mode 100644
    index 00000000000..65552b6e379
    --- /dev/null
    +++ b/jOOQ/src/test/java/org/jooq/test/Table2Record.java
    @@ -0,0 +1,53 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq.test;
    +
    +import org.jooq.impl.TableRecordImpl;
    +
    +/**
    + * @author Lukas Eder
    + */
    +public class Table2Record extends TableRecordImpl<Table2Record> {
    +
    +    /**
    +     * Generated UID
    +     */
    +    private static final long serialVersionUID = 7621282509163949636L;
    +
    +    public Table2Record() {
    +        super(Table2.TABLE2);
    +    }
    +}
    diff --git a/jOOQ/src/test/java/org/jooq/test/Table3.java b/jOOQ/src/test/java/org/jooq/test/Table3.java
    new file mode 100644
    index 00000000000..4693a8e4c4e
    --- /dev/null
    +++ b/jOOQ/src/test/java/org/jooq/test/Table3.java
    @@ -0,0 +1,68 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq.test;
    +
    +import java.sql.Date;
    +
    +import org.jooq.Table;
    +import org.jooq.TableField;
    +import org.jooq.impl.TableImpl;
    +
    +/**
    + * @author Lukas Eder
    + */
    +public class Table3 extends TableImpl<Table3Record> {
    +
    +    /**
    +     * Generated UID
    +     */
    +    private static final long serialVersionUID = 7621282509163949636L;
    +
    +    public static final Table<Table3Record>               TABLE3      = new Table3();
    +
    +    public static final TableField<Table3Record, Integer> FIELD_ID3   = createField("ID3", TestDataType.INTEGER_TYPE, TABLE3);
    +    public static final TableField<Table3Record, String>  FIELD_NAME3 = createField("NAME3", TestDataType.STRING_TYPE, TABLE3);
    +    public static final TableField<Table3Record, Date>    FIELD_DATE3 = createField("DATE3", TestDataType.DATE_TYPE, TABLE3);
    +
    +    public Table3() {
    +        super("TABLE3");
    +    }
    +
    +    @Override
    +    public Class<Table3Record> getRecordType() {
    +        return Table3Record.class;
    +    }
    +}
    \ No newline at end of file
    diff --git a/jOOQ/src/test/java/org/jooq/test/Table3Record.java b/jOOQ/src/test/java/org/jooq/test/Table3Record.java
    new file mode 100644
    index 00000000000..79e7a926366
    --- /dev/null
    +++ b/jOOQ/src/test/java/org/jooq/test/Table3Record.java
    @@ -0,0 +1,53 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq.test;
    +
    +import org.jooq.impl.TableRecordImpl;
    +
    +/**
    + * @author Lukas Eder
    + */
    +public class Table3Record extends TableRecordImpl<Table3Record> {
    +
    +    /**
    +     * Generated UID
    +     */
    +    private static final long serialVersionUID = 7621282509163949636L;
    +
    +    public Table3Record() {
    +        super(Table3.TABLE3);
    +    }
    +}
    diff --git a/jOOQ/src/test/java/org/jooq/test/TestDataType.java b/jOOQ/src/test/java/org/jooq/test/TestDataType.java
    new file mode 100644
    index 00000000000..57215f7f1ab
    --- /dev/null
    +++ b/jOOQ/src/test/java/org/jooq/test/TestDataType.java
    @@ -0,0 +1,61 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +package org.jooq.test;
    +
    +import java.sql.Date;
    +
    +import org.jooq.DataType;
    +import org.jooq.SQLDialect;
    +import org.jooq.impl.AbstractDataType;
    +
    +/**
    + * @author Lukas Eder
    + */
    +public final class TestDataType<T> extends AbstractDataType<T> {
    +
    +    /**
    +     * Generated UID
    +     */
    +    private static final long             serialVersionUID = 7621282509163949636L;
    +
    +    public static final DataType<Integer> INTEGER_TYPE     = new TestDataType<Integer>(Integer.class);
    +    public static final DataType<String>  STRING_TYPE      = new TestDataType<String>(String.class);
    +    public static final DataType<Date>    DATE_TYPE        = new TestDataType<Date>(Date.class);
    +
    +    protected TestDataType(Class<? extends T> type) {
    +        super(SQLDialect.ORACLE, null, type, type.getSimpleName());
    +    }
    +}
    diff --git a/jOOQ/src/test/java/org/jooq/test/jOOQTest.java b/jOOQ/src/test/java/org/jooq/test/jOOQTest.java
    new file mode 100644
    index 00000000000..6af29c26dd0
    --- /dev/null
    +++ b/jOOQ/src/test/java/org/jooq/test/jOOQTest.java
    @@ -0,0 +1,2330 @@
    +/**
    + * Copyright (c) 2009-2012, Lukas Eder, lukas.eder@gmail.com
    + * All rights reserved.
    + *
    + * This software is licensed to you under the Apache License, Version 2.0
    + * (the "License"); You may obtain a copy of the License at
    + *
    + *   http://www.apache.org/licenses/LICENSE-2.0
    + *
    + * 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 "jOOQ" 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 COPYRIGHT OWNER 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.
    + */
    +
    +package org.jooq.test;
    +
    +import static junit.framework.Assert.assertEquals;
    +import static junit.framework.Assert.assertTrue;
    +import static org.jooq.JoinType.LEFT_OUTER_JOIN;
    +import static org.jooq.impl.Factory.avg;
    +import static org.jooq.impl.Factory.condition;
    +import static org.jooq.impl.Factory.count;
    +import static org.jooq.impl.Factory.countDistinct;
    +import static org.jooq.impl.Factory.decode;
    +import static org.jooq.impl.Factory.exists;
    +import static org.jooq.impl.Factory.falseCondition;
    +import static org.jooq.impl.Factory.field;
    +import static org.jooq.impl.Factory.max;
    +import static org.jooq.impl.Factory.min;
    +import static org.jooq.impl.Factory.param;
    +import static org.jooq.impl.Factory.replace;
    +import static org.jooq.impl.Factory.round;
    +import static org.jooq.impl.Factory.sum;
    +import static org.jooq.impl.Factory.trueCondition;
    +import static org.jooq.impl.Factory.val;
    +import static org.jooq.test.Table1.FIELD_DATE1;
    +import static org.jooq.test.Table1.FIELD_ID1;
    +import static org.jooq.test.Table1.FIELD_NAME1;
    +import static org.jooq.test.Table1.TABLE1;
    +import static org.jooq.test.Table2.FIELD_ID2;
    +import static org.jooq.test.Table2.TABLE2;
    +import static org.jooq.test.Table3.FIELD_ID3;
    +import static org.jooq.test.Table3.TABLE3;
    +
    +import java.math.BigDecimal;
    +import java.sql.Connection;
    +import java.sql.Date;
    +import java.sql.PreparedStatement;
    +import java.sql.SQLException;
    +import java.util.ArrayList;
    +import java.util.Arrays;
    +import java.util.regex.Matcher;
    +import java.util.regex.Pattern;
    +
    +import org.jooq.BindContext;
    +import org.jooq.Case;
    +import org.jooq.CaseConditionStep;
    +import org.jooq.CaseValueStep;
    +import org.jooq.CaseWhenStep;
    +import org.jooq.Condition;
    +import org.jooq.DatePart;
    +import org.jooq.DeleteQuery;
    +import org.jooq.Field;
    +import org.jooq.Insert;
    +import org.jooq.InsertQuery;
    +import org.jooq.Merge;
    +import org.jooq.Operator;
    +import org.jooq.Param;
    +import org.jooq.Query;
    +import org.jooq.RenderContext;
    +import org.jooq.Select;
    +import org.jooq.SelectFinalStep;
    +import org.jooq.SelectQuery;
    +import org.jooq.SimpleSelectQuery;
    +import org.jooq.Table;
    +import org.jooq.Truncate;
    +import org.jooq.UpdateQuery;
    +import org.jooq.conf.RenderKeywordStyle;
    +import org.jooq.conf.RenderNameStyle;
    +import org.jooq.impl.CustomCondition;
    +import org.jooq.impl.CustomField;
    +import org.jooq.impl.Factory;
    +import org.jooq.types.DayToSecond;
    +import org.jooq.types.Interval;
    +import org.jooq.types.YearToMonth;
    +import org.jooq.util.oracle.OracleDataType;
    +import org.jooq.util.oracle.OracleFactory;
    +
    +import org.jmock.Expectations;
    +import org.jmock.Mockery;
    +import org.junit.After;
    +import org.junit.Before;
    +import org.junit.BeforeClass;
    +import org.junit.Test;
    +
    +/**
    + * A test suite for basic jOOQ functionality
    + *
    + * @author Lukas Eder
    + */
    +public class jOOQTest {
    +
    +    private Mockery context;
    +    private PreparedStatement statement;
    +    private Factory create;
    +
    +    @BeforeClass
    +    public static void init() throws Exception {
    +
    +        // [#650] Due to a lacking data type registry, the types need to be
    +        // loaded statically
    +        Class.forName(OracleDataType.class.getName());
    +    }
    +
    +    @Before
    +    public void setUp() throws Exception {
    +        context = new Mockery();
    +        statement = context.mock(PreparedStatement.class);
    +        create = new OracleFactory((Connection) null);
    +    }
    +
    +    @After
    +    public void tearDown() throws Exception {
    +        statement = null;
    +        context = null;
    +    }
    +
    +    protected final BindContext b_ref() {
    +        return create.bindContext(statement);
    +    }
    +
    +    protected final BindContext b_dec() {
    +        return b_ref().declareFields(true).declareTables(true);
    +    }
    +
    +    protected final BindContext b_decF() {
    +        return b_ref().declareFields(true);
    +    }
    +
    +    protected final BindContext b_decT() {
    +        return b_ref().declareTables(true);
    +    }
    +
    +    protected final RenderContext r_ref() {
    +        return create.renderContext();
    +    }
    +
    +    protected final RenderContext r_dec() {
    +        return r_ref().declareFields(true).declareTables(true);
    +    }
    +
    +    protected final RenderContext r_decF() {
    +        return r_ref().declareFields(true);
    +    }
    +
    +    protected final RenderContext r_decT() {
    +        return r_ref().declareTables(true);
    +    }
    +
    +    protected final RenderContext r_refI() {
    +        return r_ref().inline(true);
    +    }
    +
    +    protected final RenderContext r_decI() {
    +        return r_dec().inline(true);
    +    }
    +
    +    protected final RenderContext r_decIF() {
    +        return r_decF().inline(true);
    +    }
    +
    +    protected final RenderContext r_decIT() {
    +        return r_decT().inline(true);
    +    }
    +
    +    protected final RenderContext r_refP() {
    +        return r_ref().namedParams(true);
    +    }
    +
    +    @Test
    +    public void testNullPointerExceptionSafety() throws Exception {
    +        // Functions created from a field
    +        // ------------------------------
    +        assertEquals(
    +            FIELD_ID1.add((Integer) null),
    +            FIELD_ID1.add((Field<Integer>) null));
    +        assertEquals(
    +            FIELD_ID1.between((Integer) null, null),
    +            FIELD_ID1.between((Field<Integer>) null, null));
    +        assertEquals(
    +            FIELD_ID1.div((Integer) null),
    +            FIELD_ID1.div((Field<Integer>) null));
    +        assertEquals(
    +            FIELD_ID1.equal((Integer) null),
    +            FIELD_ID1.equal((Field<Integer>) null));
    +        assertEquals(
    +            FIELD_ID1.greaterOrEqual((Integer) null),
    +            FIELD_ID1.greaterOrEqual((Field<Integer>) null));
    +        assertEquals(
    +            FIELD_ID1.greaterThan((Integer) null),
    +            FIELD_ID1.greaterThan((Field<Integer>) null));
    +        assertEquals(
    +            FIELD_ID1.in((Integer) null),
    +            FIELD_ID1.in((Field<Integer>) null));
    +        assertEquals(
    +            FIELD_ID1.lessOrEqual((Integer) null),
    +            FIELD_ID1.lessOrEqual((Field<Integer>) null));
    +        assertEquals(
    +            FIELD_ID1.lessThan((Integer) null),
    +            FIELD_ID1.lessThan((Field<Integer>) null));
    +        assertEquals(
    +            FIELD_ID1.mod((Integer) null),
    +            FIELD_ID1.mod((Field<Integer>) null));
    +        assertEquals(
    +            FIELD_ID1.mul((Integer) null),
    +            FIELD_ID1.mul((Field<Integer>) null));
    +        assertEquals(
    +            FIELD_ID1.notEqual((Integer) null),
    +            FIELD_ID1.notEqual((Field<Integer>) null));
    +        assertEquals(
    +            FIELD_ID1.notIn((Integer) null),
    +            FIELD_ID1.notIn((Field<Integer>) null));
    +        assertEquals(
    +            FIELD_ID1.sub((Integer) null),
    +            FIELD_ID1.sub((Field<Integer>) null));
    +
    +        // Standalone functions created from the factory
    +        // ---------------------------------------------
    +        assertEquals(
    +            Factory.abs((Integer) null),
    +            Factory.abs((Field<Integer>) null));
    +        assertEquals(
    +            Factory.acos((Integer) null),
    +            Factory.acos((Field<Integer>) null));
    +        assertEquals(
    +            Factory.asin((Integer) null),
    +            Factory.asin((Field<Integer>) null));
    +        assertEquals(
    +            Factory.atan((Integer) null),
    +            Factory.atan((Field<Integer>) null));
    +        assertEquals(
    +            Factory.atan2((Integer) null, (Integer) null),
    +            Factory.atan2((Field<Integer>) null, (Field<Integer>) null));
    +        assertEquals(
    +            Factory.atan2((Integer) null, (Integer) null),
    +            Factory.atan2((Field<Integer>) null, (Integer) null));
    +        assertEquals(
    +            Factory.atan2((Integer) null, (Integer) null),
    +            Factory.atan2((Integer) null, (Field<Integer>) null));
    +        assertEquals(
    +            Factory.bitAnd((Integer) null, (Integer) null),
    +            Factory.bitAnd((Integer) null, (Field<Integer>) null));
    +        assertEquals(
    +            Factory.bitAnd((Integer) null, (Integer) null),
    +            Factory.bitAnd((Field<Integer>) null, (Integer) null));
    +        assertEquals(
    +            Factory.bitAnd((Integer) null, (Integer) null),
    +            Factory.bitAnd((Field<Integer>) null, (Field<Integer>) null));
    +        assertEquals(
    +            Factory.bitCount((Integer) null),
    +            Factory.bitCount((Field<Integer>) null));
    +        assertEquals(
    +            Factory.bitLength((String) null),
    +            Factory.bitLength((Field<String>) null));
    +        assertEquals(
    +            Factory.bitNand((Integer) null, (Integer) null),
    +            Factory.bitNand((Integer) null, (Field<Integer>) null));
    +        assertEquals(
    +            Factory.bitNand((Integer) null, (Integer) null),
    +            Factory.bitNand((Field<Integer>) null, (Integer) null));
    +        assertEquals(
    +            Factory.bitNand((Integer) null, (Integer) null),
    +            Factory.bitNand((Field<Integer>) null, (Field<Integer>) null));
    +        assertEquals(
    +            Factory.bitNor((Integer) null, (Integer) null),
    +            Factory.bitNor((Integer) null, (Field<Integer>) null));
    +        assertEquals(
    +            Factory.bitNor((Integer) null, (Integer) null),
    +            Factory.bitNor((Field<Integer>) null, (Integer) null));
    +        assertEquals(
    +            Factory.bitNor((Integer) null, (Integer) null),
    +            Factory.bitNor((Field<Integer>) null, (Field<Integer>) null));
    +        assertEquals(
    +            Factory.bitOr((Integer) null, (Integer) null),
    +            Factory.bitOr((Integer) null, (Field<Integer>) null));
    +        assertEquals(
    +            Factory.bitOr((Integer) null, (Integer) null),
    +            Factory.bitOr((Field<Integer>) null, (Integer) null));
    +        assertEquals(
    +            Factory.bitOr((Integer) null, (Integer) null),
    +            Factory.bitOr((Field<Integer>) null, (Field<Integer>) null));
    +        assertEquals(
    +            Factory.bitXNor((Integer) null, (Integer) null),
    +            Factory.bitXNor((Integer) null, (Field<Integer>) null));
    +        assertEquals(
    +            Factory.bitXNor((Integer) null, (Integer) null),
    +            Factory.bitXNor((Field<Integer>) null, (Integer) null));
    +        assertEquals(
    +            Factory.bitXNor((Integer) null, (Integer) null),
    +            Factory.bitXNor((Field<Integer>) null, (Field<Integer>) null));
    +        assertEquals(
    +            Factory.bitXor((Integer) null, (Integer) null),
    +            Factory.bitXor((Integer) null, (Field<Integer>) null));
    +        assertEquals(
    +            Factory.bitXor((Integer) null, (Integer) null),
    +            Factory.bitXor((Field<Integer>) null, (Integer) null));
    +        assertEquals(
    +            Factory.bitXor((Integer) null, (Integer) null),
    +            Factory.bitXor((Field<Integer>) null, (Field<Integer>) null));
    +        assertEquals(
    +            Factory.ceil((Integer) null),
    +            Factory.ceil((Field<Integer>) null));
    +        assertEquals(
    +            Factory.charLength((String) null),
    +            Factory.charLength((Field<String>) null));
    +        assertEquals(
    +            Factory.coalesce((Integer) null, (Integer) null),
    +            Factory.coalesce((Field<Integer>) null, (Field<Integer>) null));
    +        assertEquals(
    +            Factory.coalesce((Integer) null, (Integer) null, (Integer) null),
    +            Factory.coalesce((Field<Integer>) null, (Field<Integer>) null, (Field<Integer>) null));
    +        assertEquals(
    +            Factory.coalesce((Integer) null, (Integer) null, (Integer[]) null),
    +            Factory.coalesce((Field<Integer>) null, (Field<Integer>) null, (Field<?>[]) null));
    +        assertEquals(
    +            Factory.coalesce((Integer) null, (Integer) null, (Integer) null, (Integer) null),
    +            Factory.coalesce((Field<Integer>) null, (Field<Integer>) null, (Field<Integer>) null, (Field<Integer>) null));
    +        assertEquals(
    +            Factory.concat((String) null, (String) null),
    +            Factory.concat((Field<String>) null, (Field<String>) null));
    +        assertEquals(
    +            Factory.cos((Integer) null),
    +            Factory.cos((Field<Integer>) null));
    +        assertEquals(
    +            Factory.cosh((Integer) null),
    +            Factory.cosh((Field<Integer>) null));
    +        assertEquals(
    +            Factory.cot((Integer) null),
    +            Factory.cot((Field<Integer>) null));
    +        assertEquals(
    +            Factory.coth((Integer) null),
    +            Factory.coth((Field<Integer>) null));
    +        assertEquals(
    +            Factory.decode((Integer) null, null, null),
    +            Factory.decode((Field<Integer>) null, null, null));
    +        assertEquals(
    +            Factory.decode((Integer) null, null, null),
    +            Factory.decode((Field<Integer>) null, null, null));
    +        assertEquals(
    +            Factory.deg((Integer) null),
    +            Factory.deg((Field<Integer>) null));
    +        assertEquals(
    +            Factory.exp((Integer) null),
    +            Factory.exp((Field<Integer>) null));
    +        assertEquals(
    +            Factory.extract((java.util.Date) null, DatePart.DAY),
    +            Factory.extract((Field<java.util.Date>) null, DatePart.DAY));
    +        assertEquals(
    +            Factory.year((java.util.Date) null),
    +            Factory.year((Field<java.util.Date>) null));
    +        assertEquals(
    +            Factory.month((java.util.Date) null),
    +            Factory.month((Field<java.util.Date>) null));
    +        assertEquals(
    +            Factory.day((java.util.Date) null),
    +            Factory.day((Field<java.util.Date>) null));
    +        assertEquals(
    +            Factory.hour((java.util.Date) null),
    +            Factory.hour((Field<java.util.Date>) null));
    +        assertEquals(
    +            Factory.minute((java.util.Date) null),
    +            Factory.minute((Field<java.util.Date>) null));
    +        assertEquals(
    +            Factory.second((java.util.Date) null),
    +            Factory.second((Field<java.util.Date>) null));
    +        assertEquals(
    +            Factory.floor((Integer) null),
    +            Factory.floor((Field<Integer>) null));
    +        assertEquals(
    +            Factory.greatest((Integer) null),
    +            Factory.greatest((Field<Integer>) null));
    +        assertEquals(
    +            Factory.greatest((Integer) null, (Integer[]) null),
    +            Factory.greatest((Field<Integer>) null, (Field[]) null));
    +        assertEquals(
    +            Factory.greatest((Integer) null, (Integer) null, (Integer) null),
    +            Factory.greatest((Field<Integer>) null, (Field<Integer>) null, (Field<Integer>) null));
    +        assertEquals(
    +            Factory.greatest((Integer) null, (Integer) null),
    +            Factory.greatest((Field<Integer>) null, (Field<Integer>) null));
    +        assertEquals(
    +            Factory.lag((Field<Integer>) null, 1, (Integer) null),
    +            Factory.lag((Field<Integer>) null, 1, (Field<Integer>) null));
    +        assertEquals(
    +            Factory.lead((Field<Integer>) null, 1, (Integer) null),
    +            Factory.lead((Field<Integer>) null, 1, (Field<Integer>) null));
    +        assertEquals(
    +            Factory.least((Integer) null),
    +            Factory.least((Field<Integer>) null));
    +        assertEquals(
    +            Factory.least((Integer) null, (Integer) null),
    +            Factory.least((Field<Integer>) null, (Field<Integer>) null));
    +        assertEquals(
    +            Factory.least((Integer) null, (Integer[]) null),
    +            Factory.least((Field<Integer>) null, (Field[]) null));
    +        assertEquals(
    +            Factory.least((Integer) null, (Integer) null, (Integer) null),
    +            Factory.least((Field<Integer>) null, (Field<Integer>) null, (Field<Integer>) null));
    +        assertEquals(
    +            Factory.length((String) null),
    +            Factory.length((Field<String>) null));
    +        assertEquals(
    +            Factory.ln((Integer) null),
    +            Factory.ln((Field<Integer>) null));
    +        assertEquals(
    +            Factory.log((Integer) null, 2),
    +            Factory.log((Field<Integer>) null, 2));
    +        assertEquals(
    +            Factory.lower((String) null),
    +            Factory.lower((Field<String>) null));
    +        assertEquals(
    +            Factory.ltrim((String) null),
    +            Factory.ltrim((Field<String>) null));
    +        assertEquals(
    +            Factory.nullif((Integer) null, (Integer) null),
    +            Factory.nullif((Field<Integer>) null, (Integer) null));
    +        assertEquals(
    +            Factory.nullif((Integer) null, (Integer) null),
    +            Factory.nullif((Integer) null, (Field<Integer>) null));
    +        assertEquals(
    +            Factory.nullif((Integer) null, (Integer) null),
    +            Factory.nullif((Field<Integer>) null, (Field<Integer>) null));
    +        assertEquals(
    +            Factory.nvl((Integer) null, (Integer) null),
    +            Factory.nvl((Integer) null, (Field<Integer>) null));
    +        assertEquals(
    +            Factory.nvl((Integer) null, (Integer) null),
    +            Factory.nvl((Field<Integer>) null, (Integer) null));
    +        assertEquals(
    +            Factory.nvl((Integer) null, (Integer) null),
    +            Factory.nvl((Field<Integer>) null, (Field<Integer>) null));
    +        assertEquals(
    +            Factory.nvl2((Field<Integer>) null, (Integer) null, (Integer) null),
    +            Factory.nvl2((Field<Integer>) null, (Field<Integer>) null, (Integer) null));
    +        assertEquals(
    +            Factory.nvl2((Field<Integer>) null, (Integer) null, (Integer) null),
    +            Factory.nvl2((Field<Integer>) null, (Integer) null, (Field<Integer>) null));
    +        assertEquals(
    +            Factory.nvl2((Field<Integer>) null, (Integer) null, (Integer) null),
    +            Factory.nvl2((Field<Integer>) null, (Field<Integer>) null, (Field<Integer>) null));
    +        assertEquals(
    +            Factory.octetLength((String) null),
    +            Factory.octetLength((Field<String>) null));
    +        assertEquals(
    +            Factory.position((String) null, (String) null),
    +            Factory.position((String) null, (Field<String>) null));
    +        assertEquals(
    +            Factory.position((String) null, (String) null),
    +            Factory.position((Field<String>) null, (String) null));
    +        assertEquals(
    +            Factory.position((String) null, (String) null),
    +            Factory.position((Field<String>) null, (Field<String>) null));
    +        assertEquals(
    +            Factory.power((Integer) null, (Integer) null),
    +            Factory.power((Field<Integer>) null, (Field<Integer>) null));
    +        assertEquals(
    +            Factory.power((Integer) null, (Integer) null),
    +            Factory.power((Field<Integer>) null, (Integer) null));
    +        assertEquals(
    +            Factory.power((Integer) null, (Integer) null),
    +            Factory.power((Integer) null, (Field<Integer>) null));
    +        assertEquals(
    +            Factory.rad((Integer) null),
    +            Factory.rad((Field<Integer>) null));
    +        assertEquals(
    +            Factory.repeat((String) null, (Field<Integer>) null),
    +            Factory.repeat((Field<String>) null, (Field<Integer>) null));
    +        assertEquals(
    +            Factory.replace((Field<String>) null, (String) null),
    +            Factory.replace((Field<String>) null, (Field<String>) null));
    +        assertEquals(
    +            Factory.replace((Field<String>) null, (String) null, (String) null),
    +            Factory.replace((Field<String>) null, (Field<String>) null, (Field<String>) null));
    +        assertEquals(
    +            Factory.round((Integer) null),
    +            Factory.round((Field<Integer>) null));
    +        assertEquals(
    +            Factory.round((Integer) null, 1),
    +            Factory.round((Field<Integer>) null, 1));
    +        assertEquals(
    +            Factory.rtrim((String) null),
    +            Factory.rtrim((Field<String>) null));
    +        assertEquals(
    +            Factory.shl((Integer) null, (Integer) null),
    +            Factory.shl((Integer) null, (Field<Integer>) null));
    +        assertEquals(
    +            Factory.shl((Integer) null, (Integer) null),
    +            Factory.shl((Field<Integer>) null, (Integer) null));
    +        assertEquals(
    +            Factory.shl((Integer) null, (Integer) null),
    +            Factory.shl((Field<Integer>) null, (Field<Integer>) null));
    +        assertEquals(
    +            Factory.shr((Integer) null, (Integer) null),
    +            Factory.shr((Integer) null, (Field<Integer>) null));
    +        assertEquals(
    +            Factory.shr((Integer) null, (Integer) null),
    +            Factory.shr((Field<Integer>) null, (Integer) null));
    +        assertEquals(
    +            Factory.shr((Integer) null, (Integer) null),
    +            Factory.shr((Field<Integer>) null, (Field<Integer>) null));
    +        assertEquals(
    +            Factory.sign((Integer) null),
    +            Factory.sign((Field<Integer>) null));
    +        assertEquals(
    +            Factory.sin((Integer) null),
    +            Factory.sin((Field<Integer>) null));
    +        assertEquals(
    +            Factory.sinh((Integer) null),
    +            Factory.sinh((Field<Integer>) null));
    +        assertEquals(
    +            Factory.sqrt((Integer) null),
    +            Factory.sqrt((Field<Integer>) null));
    +        assertEquals(
    +            Factory.tan((Integer) null),
    +            Factory.tan((Field<Integer>) null));
    +        assertEquals(
    +            Factory.tanh((Integer) null),
    +            Factory.tanh((Field<Integer>) null));
    +        assertEquals(
    +            Factory.trim((String) null),
    +            Factory.trim((Field<String>) null));
    +        assertEquals(
    +            Factory.upper((String) null),
    +            Factory.upper((Field<String>) null));
    +    }
    +
    +    @Test
    +    public void testTruncate() throws Exception {
    +        Truncate<Table1Record> t = create.truncate(TABLE1);
    +
    +        assertEquals("truncate table \"TABLE1\"", r_dec().render(t));
    +        assertEquals("truncate table \"TABLE1\"", r_ref().render(t));
    +    }
    +
    +    @Test
    +    public void testAliasing() throws Exception {
    +        assertEquals("\"TABLE1\"", r_decT().render(TABLE1));
    +        assertEquals("\"TABLE1\"", r_decF().render(TABLE1));
    +        assertEquals("\"TABLE1\"", r_ref().render(TABLE1));
    +
    +        assertEquals("\"TABLE1\" \"t1\"", r_decT().render(TABLE1.as("t1")));
    +        assertEquals("\"t1\"",            r_decF().render(TABLE1.as("t1")));
    +        assertEquals("\"t1\"",            r_ref().render(TABLE1.as("t1")));
    +
    +        assertEquals("\"TABLE1\".\"ID1\"", r_decF().render(TABLE1.getField(FIELD_ID1)));
    +        assertEquals("\"TABLE1\".\"ID1\"", r_decT().render(TABLE1.getField(FIELD_ID1)));
    +        assertEquals("\"TABLE1\".\"ID1\"", r_ref().render(TABLE1.getField(FIELD_ID1)));
    +
    +        assertEquals("\"TABLE1\".\"ID1\" \"f1\"", r_decF().render(TABLE1.getField(FIELD_ID1).as("f1")));
    +        assertEquals("\"f1\"",                    r_decT().render(TABLE1.getField(FIELD_ID1).as("f1")));
    +        assertEquals("\"f1\"",                    r_ref().render(TABLE1.getField(FIELD_ID1).as("f1")));
    +
    +        assertEquals("\"t1\".\"ID1\"", r_decF().render(TABLE1.as("t1").getField(FIELD_ID1)));
    +        assertEquals("\"t1\".\"ID1\"", r_decT().render(TABLE1.as("t1").getField(FIELD_ID1)));
    +        assertEquals("\"t1\".\"ID1\"", r_ref().render(TABLE1.as("t1").getField(FIELD_ID1)));
    +
    +        assertEquals("\"t1\".\"ID1\" \"f1\"", r_decF().render(TABLE1.as("t1").getField(FIELD_ID1).as("f1")));
    +        assertEquals("\"f1\"",                r_decT().render(TABLE1.as("t1").getField(FIELD_ID1).as("f1")));
    +        assertEquals("\"f1\"",                r_ref().render(TABLE1.as("t1").getField(FIELD_ID1).as("f1")));
    +
    +        context.checking(new Expectations() {{
    +            oneOf(statement).setInt(1, 2);
    +            oneOf(statement).setInt(1, 4);
    +        }});
    +
    +        int f1 = b_ref().bind(val(1).as("c1")).peekIndex();
    +        int f2 = b_decF().bind(val(2).as("c2")).peekIndex();
    +        int f3 = b_decT().bind(val(2).as("c2")).peekIndex();
    +        int t1 = b_ref().bind(create.select(val(3)).asTable("t1")).peekIndex();
    +        int t2 = b_decF().bind(create.select(val(4)).asTable("t2")).peekIndex();
    +        int t3 = b_decT().bind(create.select(val(4)).asTable("t2")).peekIndex();
    +
    +        assertEquals(1, f1);
    +        assertEquals(2, f2);
    +        assertEquals(1, f3);
    +
    +        assertEquals(1, t1);
    +        assertEquals(1, t2);
    +        assertEquals(2, t3);
    +
    +        context.assertIsSatisfied();
    +    }
    +
    +    @Test
    +    public void testMultipleCombinedCondition() throws Exception {
    +        Condition c1 = FIELD_ID1.equal(10);
    +        Condition c2 = FIELD_ID2.equal(20);
    +        Condition c3 = FIELD_ID1.equal(30);
    +        Condition c4 = FIELD_ID2.equal(40);
    +
    +        Condition c = c1.and(c2).or(c3.and(c4));
    +        assertEquals("((\"TABLE1\".\"ID1\" = 10 and \"TABLE2\".\"ID2\" = 20) or (\"TABLE1\".\"ID1\" = 30 and \"TABLE2\".\"ID2\" = 40))", r_refI().render(c));
    +        assertEquals("((\"TABLE1\".\"ID1\" = ? and \"TABLE2\".\"ID2\" = ?) or (\"TABLE1\".\"ID1\" = ? and \"TABLE2\".\"ID2\" = ?))", r_ref().render(c));
    +
    +        c = c1.and(c2).or(c3).and(c4);
    +        assertEquals("(((\"TABLE1\".\"ID1\" = 10 and \"TABLE2\".\"ID2\" = 20) or \"TABLE1\".\"ID1\" = 30) and \"TABLE2\".\"ID2\" = 40)", r_refI().render(c));
    +        assertEquals("(((\"TABLE1\".\"ID1\" = ? and \"TABLE2\".\"ID2\" = ?) or \"TABLE1\".\"ID1\" = ?) and \"TABLE2\".\"ID2\" = ?)", r_ref().render(c));
    +
    +        c = c1.and(c2).and(c3).or(c4);
    +        assertEquals("((\"TABLE1\".\"ID1\" = 10 and \"TABLE2\".\"ID2\" = 20 and \"TABLE1\".\"ID1\" = 30) or \"TABLE2\".\"ID2\" = 40)", r_refI().render(c));
    +        assertEquals("((\"TABLE1\".\"ID1\" = ? and \"TABLE2\".\"ID2\" = ? and \"TABLE1\".\"ID1\" = ?) or \"TABLE2\".\"ID2\" = ?)", r_ref().render(c));
    +
    +        c = c1.and(c2).and(c3).and(c4);
    +        assertEquals("(\"TABLE1\".\"ID1\" = 10 and \"TABLE2\".\"ID2\" = 20 and \"TABLE1\".\"ID1\" = 30 and \"TABLE2\".\"ID2\" = 40)", r_refI().render(c));
    +        assertEquals("(\"TABLE1\".\"ID1\" = ? and \"TABLE2\".\"ID2\" = ? and \"TABLE1\".\"ID1\" = ? and \"TABLE2\".\"ID2\" = ?)", r_ref().render(c));
    +
    +        context.checking(new Expectations() {{
    +            oneOf(statement).setInt(1, 10);
    +            oneOf(statement).setInt(2, 20);
    +            oneOf(statement).setInt(3, 30);
    +            oneOf(statement).setInt(4, 40);
    +        }});
    +
    +        int i = b_ref().bind(c).peekIndex();
    +        assertEquals(5, i);
    +
    +        context.assertIsSatisfied();
    +    }
    +
    +    @Test
    +    public void testBetweenCondition() throws Exception {
    +        Condition c = FIELD_ID1.between(1, 10);
    +        assertEquals("\"TABLE1\".\"ID1\" between 1 and 10", r_refI().render(c));
    +        assertEquals("\"TABLE1\".\"ID1\" between ? and ?", r_ref().render(c));
    +
    +        c = FIELD_ID1.notBetween(1, 10);
    +        assertEquals("\"TABLE1\".\"ID1\" not between 1 and 10", r_refI().render(c));
    +        assertEquals("\"TABLE1\".\"ID1\" not between ? and ?", r_ref().render(c));
    +
    +        context.checking(new Expectations() {{
    +            oneOf(statement).setInt(1, 1);
    +            oneOf(statement).setInt(2, 10);
    +        }});
    +
    +        int i = b_ref().bind(c).peekIndex();
    +        assertEquals(3, i);
    +
    +        context.assertIsSatisfied();
    +    }
    +
    +    @Test
    +    public void testInCondition() throws Exception {
    +        Condition c = FIELD_ID1.in(new Integer[0]);
    +        assertEquals(falseCondition(), c);
    +
    +        c = FIELD_ID1.notIn(new Integer[0]);
    +        assertEquals(trueCondition(), c);
    +
    +        c = FIELD_ID1.in(1, 10);
    +        assertEquals("\"TABLE1\".\"ID1\" in (1, 10)", r_refI().render(c));
    +        assertEquals("\"TABLE1\".\"ID1\" in (?, ?)", r_ref().render(c));
    +
    +        context.checking(new Expectations() {{
    +            oneOf(statement).setInt(1, 1);
    +            oneOf(statement).setInt(2, 10);
    +        }});
    +
    +        int i = b_ref().bind(c).peekIndex();
    +        assertEquals(3, i);
    +
    +        context.assertIsSatisfied();
    +    }
    +
    +    @Test
    +    public void testInSelectCondition() throws Exception {
    +        Condition c = FIELD_ID1.in(create.selectFrom(TABLE1).where(FIELD_NAME1.equal("x")));
    +        assertEquals("\"TABLE1\".\"ID1\" in (select \"TABLE1\".\"ID1\", \"TABLE1\".\"NAME1\", \"TABLE1\".\"DATE1\" from \"TABLE1\" where \"TABLE1\".\"NAME1\" = 'x')", r_refI().render(c));
    +        assertEquals("\"TABLE1\".\"ID1\" in (select \"TABLE1\".\"ID1\", \"TABLE1\".\"NAME1\", \"TABLE1\".\"DATE1\" from \"TABLE1\" where \"TABLE1\".\"NAME1\" = ?)", r_ref().render(c));
    +
    +        c = FIELD_ID1.notIn(create.selectFrom(TABLE1).where(FIELD_NAME1.equal("x")));
    +        assertEquals("\"TABLE1\".\"ID1\" not in (select \"TABLE1\".\"ID1\", \"TABLE1\".\"NAME1\", \"TABLE1\".\"DATE1\" from \"TABLE1\" where \"TABLE1\".\"NAME1\" = 'x')", r_refI().render(c));
    +        assertEquals("\"TABLE1\".\"ID1\" not in (select \"TABLE1\".\"ID1\", \"TABLE1\".\"NAME1\", \"TABLE1\".\"DATE1\" from \"TABLE1\" where \"TABLE1\".\"NAME1\" = ?)", r_ref().render(c));
    +
    +        context.checking(new Expectations() {{
    +            oneOf(statement).setString(1, "x");
    +        }});
    +
    +        int i = b_ref().bind(c).peekIndex();
    +        assertEquals(2, i);
    +
    +        context.assertIsSatisfied();
    +    }
    +
    +    @Test
    +    public void testCompareCondition() throws Exception {
    +        Condition c = FIELD_ID1.equal(10);
    +        assertEquals("\"TABLE1\".\"ID1\" = 10", r_refI().render(c));
    +        assertEquals("\"TABLE1\".\"ID1\" = ?", r_ref().render(c));
    +
    +        context.checking(new Expectations() {{
    +            oneOf(statement).setInt(1, 10);
    +        }});
    +
    +        int i = b_ref().bind(c).peekIndex();
    +        assertEquals(2, i);
    +
    +        context.assertIsSatisfied();
    +    }
    +
    +    @Test
    +    public void testNotCondition() throws Exception {
    +        Condition c = FIELD_ID1.equal(10).not();
    +        assertEquals("not(\"TABLE1\".\"ID1\" = 10)", r_refI().render(c));
    +        assertEquals("not(\"TABLE1\".\"ID1\" = ?)", r_ref().render(c));
    +
    +        assertEquals("not(not(\"TABLE1\".\"ID1\" = 10))", r_refI().render(c.not()));
    +        assertEquals("not(not(\"TABLE1\".\"ID1\" = ?))", r_ref().render(c.not()));
    +
    +        context.checking(new Expectations() {{
    +            oneOf(statement).setInt(1, 10);
    +        }});
    +
    +        int i = b_ref().bind(c).peekIndex();
    +        assertEquals(2, i);
    +
    +        context.assertIsSatisfied();
    +    }
    +
    +    @Test
    +    public void testLikeCondition() throws Exception {
    +        Condition c1 = FIELD_NAME1.like("%a%");
    +        assertEquals("\"TABLE1\".\"NAME1\" like '%a%'", r_refI().render(c1));
    +        assertEquals("\"TABLE1\".\"NAME1\" like ?", r_ref().render(c1));
    +
    +        Condition c2 = FIELD_NAME1.notLike("%a%");
    +        assertEquals("\"TABLE1\".\"NAME1\" not like '%a%'", r_refI().render(c2));
    +        assertEquals("\"TABLE1\".\"NAME1\" not like ?", r_ref().render(c2));
    +
    +        Condition c3 = FIELD_NAME1.like("%a%", '!');
    +        assertEquals("\"TABLE1\".\"NAME1\" like '%a%' escape '!'", r_refI().render(c3));
    +        assertEquals("\"TABLE1\".\"NAME1\" like ? escape '!'", r_ref().render(c3));
    +
    +        Condition c4 = FIELD_NAME1.notLike("%a%", '!');
    +        assertEquals("\"TABLE1\".\"NAME1\" not like '%a%' escape '!'", r_refI().render(c4));
    +        assertEquals("\"TABLE1\".\"NAME1\" not like ? escape '!'", r_ref().render(c4));
    +    }
    +
    +    @Test
    +    public void testPlainSQLCondition() throws Exception {
    +        Condition c1 = condition("TABLE1.ID = 10");
    +        Condition c2 = condition("TABLE1.ID = ? and TABLE2.ID = ?", 10, "20");
    +
    +        assertEquals("(TABLE1.ID = 10)", r_refI().render(c1));
    +        assertEquals("(TABLE1.ID = 10)", r_ref().render(c1));
    +
    +        assertEquals("(TABLE1.ID = 10 and TABLE2.ID = '20')", r_refI().render(c2));
    +        assertEquals("(TABLE1.ID = ? and TABLE2.ID = ?)", r_ref().render(c2));
    +
    +        context.checking(new Expectations() {{
    +            oneOf(statement).setInt(1, 10);
    +            oneOf(statement).setString(2, "20");
    +        }});
    +
    +        int i = b_ref().bind(c2).peekIndex();
    +        assertEquals(3, i);
    +
    +        context.assertIsSatisfied();
    +    }
    +
    +    @Test
    +    public void testPlainSQLDebugLogging() throws Exception {
    +        // Some corner case for correct tokenisation of string literals and bind variables
    +        Field<?> f = field("Hello ? 'Hello ?' Is there anybody '' ? ' out there '' ? '", "A", "B");
    +        assertEquals("Hello 'A' 'Hello ?' Is there anybody '' 'B' ' out there '' ? '", r_refI().render(f));
    +    }
    +
    +    @Test
    +    public void testCustomCondition() throws Exception {
    +        Condition c = new CustomCondition() {
    +            private static final long serialVersionUID = 6302350477408137757L;
    +
    +            @Override
    +            public void toSQL(RenderContext ctx) {
    +                if (ctx.inline()) {
    +                    ctx.sql("1 = 1");
    +                } else {
    +                    ctx.sql("? = ?");
    +                }
    +            }
    +
    +            @Override
    +            public void bind(BindContext ctx) {
    +                try {
    +                    ctx.statement().setInt(ctx.nextIndex(), 1);
    +                    ctx.bindValues(1);
    +                }
    +                catch (SQLException ignore) {}
    +            }
    +        };
    +
    +        assertEquals("1 = 1", r_refI().render(c));
    +        assertEquals("? = ?", r_ref().render(c));
    +
    +        context.checking(new Expectations() {{
    +            oneOf(statement).setInt(1, 1);
    +            oneOf(statement).setInt(2, 1);
    +        }});
    +
    +        int i = b_ref().bind(c).peekIndex();
    +        assertEquals(3, i);
    +
    +        context.assertIsSatisfied();
    +    }
    +
    +    @Test
    +    public void testPlainSQLField() throws Exception {
    +        Field<?> f1 = field("DECODE(TABLE1.ID, 1, 'a', 'b')");
    +        Field<?> f2 = field("DECODE(TABLE1.ID, 1, ?, ?)", "a", "b");
    +
    +        assertEquals("DECODE(TABLE1.ID, 1, 'a', 'b')", r_refI().render(f1));
    +        assertEquals("DECODE(TABLE1.ID, 1, 'a', 'b')", r_ref().render(f1));
    +
    +        assertEquals("DECODE(TABLE1.ID, 1, 'a', 'b')", r_refI().render(f2));
    +        assertEquals("DECODE(TABLE1.ID, 1, ?, ?)", r_ref().render(f2));
    +
    +        context.checking(new Expectations() {{
    +            oneOf(statement).setString(1, "a");
    +            oneOf(statement).setString(2, "b");
    +        }});
    +
    +        int i = b_ref().bind(f2).peekIndex();
    +        assertEquals(3, i);
    +
    +        context.assertIsSatisfied();
    +    }
    +
    +    @Test
    +    public void testCustomField() throws Exception {
    +        Field<?> f = new CustomField<Integer>("test", TestDataType.INTEGER_TYPE) {
    +            private static final long serialVersionUID = 1L;
    +
    +            @Override
    +            public void toSQL(RenderContext ctx) {
    +                if (ctx.inline()) {
    +                    ctx.sql("1");
    +                } else {
    +                    ctx.sql("?");
    +                }
    +            }
    +
    +            @Override
    +            public void bind(BindContext ctx) {
    +                ctx.bindValues(1);
    +            }
    +        };
    +
    +        assertEquals("1", r_refI().render(f));
    +        assertEquals("?", r_ref().render(f));
    +
    +        context.checking(new Expectations() {{
    +            oneOf(statement).setInt(1, 1);
    +        }});
    +
    +        int i = b_ref().bind(f).peekIndex();
    +        assertEquals(2, i);
    +
    +        context.assertIsSatisfied();
    +    }
    +
    +    @Test
    +    public void testIsNullCondition() throws Exception {
    +        Condition c1 = FIELD_ID1.isNull();
    +        assertEquals("\"TABLE1\".\"ID1\" is null", r_refI().render(c1));
    +        assertEquals("\"TABLE1\".\"ID1\" is null", r_ref().render(c1));
    +
    +        Condition c2 = FIELD_ID1.isNotNull();
    +        assertEquals("\"TABLE1\".\"ID1\" is not null", r_refI().render(c2));
    +        assertEquals("\"TABLE1\".\"ID1\" is not null", r_ref().render(c2));
    +
    +        int i = b_ref().bind(c1).peekIndex();
    +        assertEquals(1, i);
    +
    +        int j = b_ref().bind(c2).peekIndex();
    +        assertEquals(1, j);
    +    }
    +
    +    @Test
    +    public void testCaseValueFunction() throws Exception {
    +        Case decode = decode();
    +        CaseValueStep<Integer> value = decode.value(FIELD_ID1);
    +        CaseWhenStep<Integer, String> c = value.when(1, "one");
    +
    +        assertEquals("case \"TABLE1\".\"ID1\" when 1 then 'one' end", r_refI().render(c));
    +        assertEquals("case \"TABLE1\".\"ID1\" when ? then ? end", r_ref().render(c));
    +        assertEquals("case \"TABLE1\".\"ID1\" when 1 then 'one' end", r_decI().render(c));
    +        assertEquals("case \"TABLE1\".\"ID1\" when ? then ? end", r_dec().render(c));
    +
    +        c.otherwise("nothing");
    +        assertEquals("case \"TABLE1\".\"ID1\" when 1 then 'one' else 'nothing' end", r_refI().render(c));
    +        assertEquals("case \"TABLE1\".\"ID1\" when ? then ? else ? end", r_ref().render(c));
    +        assertEquals("case \"TABLE1\".\"ID1\" when 1 then 'one' else 'nothing' end", r_decI().render(c));
    +        assertEquals("case \"TABLE1\".\"ID1\" when ? then ? else ? end", r_dec().render(c));
    +
    +        c.when(2, "two").when(3, "three");
    +        assertEquals("case \"TABLE1\".\"ID1\" when 1 then 'one' when 2 then 'two' when 3 then 'three' else 'nothing' end", r_refI().render(c));
    +        assertEquals("case \"TABLE1\".\"ID1\" when ? then ? when ? then ? when ? then ? else ? end", r_ref().render(c));
    +        assertEquals("case \"TABLE1\".\"ID1\" when 1 then 'one' when 2 then 'two' when 3 then 'three' else 'nothing' end", r_decI().render(c));
    +        assertEquals("case \"TABLE1\".\"ID1\" when ? then ? when ? then ? when ? then ? else ? end", r_dec().render(c));
    +
    +        context.checking(new Expectations() {{
    +            oneOf(statement).setInt(1, 1);
    +            oneOf(statement).setString(2, "one");
    +            oneOf(statement).setInt(3, 2);
    +            oneOf(statement).setString(4, "two");
    +            oneOf(statement).setInt(5, 3);
    +            oneOf(statement).setString(6, "three");
    +            oneOf(statement).setString(7, "nothing");
    +        }});
    +
    +        int i = b_ref().bind(c).peekIndex();
    +        assertEquals(8, i);
    +
    +        context.assertIsSatisfied();
    +    }
    +
    +    @Test
    +    public void testCaseConditionFunction() throws Exception {
    +        Case decode = decode();
    +        CaseConditionStep<String> c = decode.when(FIELD_ID1.equal(1), "one");
    +
    +        assertEquals("case when \"TABLE1\".\"ID1\" = 1 then 'one' end", r_refI().render(c));
    +        assertEquals("case when \"TABLE1\".\"ID1\" = ? then ? end", r_ref().render(c));
    +        assertEquals("case when \"TABLE1\".\"ID1\" = 1 then 'one' end", r_decI().render(c));
    +        assertEquals("case when \"TABLE1\".\"ID1\" = ? then ? end", r_dec().render(c));
    +
    +        c.otherwise("nothing");
    +        assertEquals("case when \"TABLE1\".\"ID1\" = 1 then 'one' else 'nothing' end", r_refI().render(c));
    +        assertEquals("case when \"TABLE1\".\"ID1\" = ? then ? else ? end", r_ref().render(c));
    +        assertEquals("case when \"TABLE1\".\"ID1\" = 1 then 'one' else 'nothing' end", r_decI().render(c));
    +        assertEquals("case when \"TABLE1\".\"ID1\" = ? then ? else ? end", r_dec().render(c));
    +
    +        c.when(FIELD_ID1.equal(2), "two").when(FIELD_ID1.equal(3), "three");
    +        assertEquals("case when \"TABLE1\".\"ID1\" = 1 then 'one' when \"TABLE1\".\"ID1\" = 2 then 'two' when \"TABLE1\".\"ID1\" = 3 then 'three' else 'nothing' end", r_refI().render(c));
    +        assertEquals("case when \"TABLE1\".\"ID1\" = ? then ? when \"TABLE1\".\"ID1\" = ? then ? when \"TABLE1\".\"ID1\" = ? then ? else ? end", r_ref().render(c));
    +        assertEquals("case when \"TABLE1\".\"ID1\" = 1 then 'one' when \"TABLE1\".\"ID1\" = 2 then 'two' when \"TABLE1\".\"ID1\" = 3 then 'three' else 'nothing' end", r_decI().render(c));
    +        assertEquals("case when \"TABLE1\".\"ID1\" = ? then ? when \"TABLE1\".\"ID1\" = ? then ? when \"TABLE1\".\"ID1\" = ? then ? else ? end", r_dec().render(c));
    +
    +        context.checking(new Expectations() {{
    +            oneOf(statement).setInt(1, 1);
    +            oneOf(statement).setString(2, "one");
    +            oneOf(statement).setInt(3, 2);
    +            oneOf(statement).setString(4, "two");
    +            oneOf(statement).setInt(5, 3);
    +            oneOf(statement).setString(6, "three");
    +            oneOf(statement).setString(7, "nothing");
    +        }});
    +
    +        int i = b_ref().bind(c).peekIndex();
    +        assertEquals(8, i);
    +
    +        context.assertIsSatisfied();
    +    }
    +
    +    @Test
    +    public void testNullFunction() throws Exception {
    +        Field<?> f = val((Object) null);
    +        assertEquals("null", r_refI().render(f));
    +        assertEquals("?", r_ref().render(f));
    +
    +        context.checking(new Expectations() {{
    +            oneOf(statement).setObject(1, null);
    +        }});
    +
    +        int i = b_ref().bind(f).peekIndex();
    +        assertEquals(2, i);
    +
    +        context.assertIsSatisfied();
    +    }
    +
    +    @Test
    +    public void testConstantFunction() throws Exception {
    +        Field<Integer> f1 = val(Integer.valueOf(1));
    +        assertEquals(Integer.class, f1.getType());
    +        assertEquals("1", r_refI().render(f1));
    +        assertEquals("?", r_ref().render(f1));
    +        assertEquals("1", r_decI().render(f1));
    +        assertEquals("?", r_dec().render(f1));
    +
    +        Field<String> f2 = val("test's");
    +        assertEquals(String.class, f2.getType());
    +        assertEquals("'test''s'", r_refI().render(f2));
    +        assertEquals("?", r_ref().render(f2));
    +        assertEquals("'test''s'", r_decI().render(f2));
    +        assertEquals("?", r_dec().render(f2));
    +
    +        Field<Integer> f3 = val(Integer.valueOf(1)).as("value");
    +        assertEquals(Integer.class, f3.getType());
    +        assertEquals("\"value\"", r_refI().render(f3));
    +        assertEquals("\"value\"", r_ref().render(f3));
    +        assertEquals("1 \"value\"", r_decI().render(f3));
    +        assertEquals("? \"value\"", r_dec().render(f3));
    +
    +        context.checking(new Expectations() {{
    +            oneOf(statement).setInt(1, 1);
    +            oneOf(statement).setString(1, "test's");
    +            oneOf(statement).setInt(1, 1);
    +        }});
    +
    +        int i = b_decF().bind(f1).peekIndex();
    +        int j = b_decF().bind(f2).peekIndex();
    +        int k = b_decF().bind(f3).peekIndex();
    +
    +        assertEquals(2, i);
    +        assertEquals(2, j);
    +        assertEquals(2, k);
    +
    +        context.assertIsSatisfied();
    +    }
    +
    +    @Test
    +    public void testArithmeticSumExpressions() throws Exception {
    +        Field<Integer> sum1 = FIELD_ID1.add(FIELD_ID1).add(1).add(2);
    +        assertEquals(Integer.class, sum1.getType());
    +        assertEquals("(\"TABLE1\".\"ID1\" + \"TABLE1\".\"ID1\" + 1 + 2)", r_refI().render(sum1));
    +        assertEquals("(\"TABLE1\".\"ID1\" + \"TABLE1\".\"ID1\" + ? + ?)", r_ref().render(sum1));
    +        assertEquals("(\"TABLE1\".\"ID1\" + \"TABLE1\".\"ID1\" + 1 + 2)", r_decI().render(sum1));
    +        assertEquals("(\"TABLE1\".\"ID1\" + \"TABLE1\".\"ID1\" + ? + ?)", r_dec().render(sum1));
    +
    +        Field<Integer> sum2 = sum1.as("s");
    +        assertEquals(Integer.class, sum2.getType());
    +        assertEquals("\"s\"", r_refI().render(sum2));
    +        assertEquals("\"s\"", r_ref().render(sum2));
    +
    +        assertEquals("(\"TABLE1\".\"ID1\" + \"TABLE1\".\"ID1\" + 1 + 2) \"s\"", r_decI().render(sum2));
    +        assertEquals("(\"TABLE1\".\"ID1\" + \"TABLE1\".\"ID1\" + ? + ?) \"s\"", r_dec().render(sum2));
    +
    +        context.checking(new Expectations() {{
    +            oneOf(statement).setInt(1, 1);
    +            oneOf(statement).setInt(2, 2);
    +        }});
    +
    +        int i = b_decF().bind(sum2).peekIndex();
    +        assertEquals(3, i);
    +
    +        context.assertIsSatisfied();
    +    }
    +
    +    @Test
    +    public void testArithmeticDifferenceExpressions() throws Exception {
    +        Field<Integer> difference1 = FIELD_ID1.sub(FIELD_ID1).sub(1).sub(2);
    +        assertEquals(Integer.class, difference1.getType());
    +        assertEquals("(((\"TABLE1\".\"ID1\" - \"TABLE1\".\"ID1\") - 1) - 2)", r_refI().render(difference1));
    +        assertEquals("(((\"TABLE1\".\"ID1\" - \"TABLE1\".\"ID1\") - ?) - ?)", r_ref().render(difference1));
    +        assertEquals("(((\"TABLE1\".\"ID1\" - \"TABLE1\".\"ID1\") - 1) - 2)", r_decI().render(difference1));
    +        assertEquals("(((\"TABLE1\".\"ID1\" - \"TABLE1\".\"ID1\") - ?) - ?)", r_dec().render(difference1));
    +
    +        Field<Integer> difference2 = difference1.as("d");
    +        assertEquals(Integer.class, difference2.getType());
    +        assertEquals("\"d\"", r_refI().render(difference2));
    +        assertEquals("\"d\"", r_ref().render(difference2));
    +        assertEquals("(((\"TABLE1\".\"ID1\" - \"TABLE1\".\"ID1\") - 1) - 2) \"d\"", r_decI().render(difference2));
    +        assertEquals("(((\"TABLE1\".\"ID1\" - \"TABLE1\".\"ID1\") - ?) - ?) \"d\"", r_dec().render(difference2));
    +
    +
    +        context.checking(new Expectations() {{
    +            oneOf(statement).setInt(1, 1);
    +            oneOf(statement).setInt(2, 2);
    +        }});
    +
    +        int i = b_decF().bind(difference2).peekIndex();
    +        assertEquals(3, i);
    +
    +        context.assertIsSatisfied();
    +    }
    +
    +    @Test
    +    public void testArithmeticProductExpressions() throws Exception {
    +        Field<Integer> product1 = FIELD_ID1.mul(FIELD_ID1).mul(1).mul(2);
    +        assertEquals(Integer.class, product1.getType());
    +        assertEquals("(\"TABLE1\".\"ID1\" * \"TABLE1\".\"ID1\" * 1 * 2)", r_refI().render(product1));
    +        assertEquals("(\"TABLE1\".\"ID1\" * \"TABLE1\".\"ID1\" * ? * ?)", r_ref().render(product1));
    +        assertEquals("(\"TABLE1\".\"ID1\" * \"TABLE1\".\"ID1\" * 1 * 2)", r_decI().render(product1));
    +        assertEquals("(\"TABLE1\".\"ID1\" * \"TABLE1\".\"ID1\" * ? * ?)", r_dec().render(product1));
    +
    +        Field<Integer> product2 = product1.as("p");
    +        assertEquals(Integer.class, product2.getType());
    +        assertEquals("\"p\"", r_refI().render(product2));
    +        assertEquals("\"p\"", r_ref().render(product2));
    +        assertEquals("(\"TABLE1\".\"ID1\" * \"TABLE1\".\"ID1\" * 1 * 2) \"p\"", r_decI().render(product2));
    +        assertEquals("(\"TABLE1\".\"ID1\" * \"TABLE1\".\"ID1\" * ? * ?) \"p\"", r_dec().render(product2));
    +
    +
    +        context.checking(new Expectations() {{
    +            oneOf(statement).setInt(1, 1);
    +            oneOf(statement).setInt(2, 2);
    +        }});
    +
    +        int i = b_decF().bind(product2).peekIndex();
    +        assertEquals(3, i);
    +
    +        context.assertIsSatisfied();
    +    }
    +
    +    @Test
    +    public void testArithmeticDivisionExpressions() throws Exception {
    +        Field<Integer> division1 = FIELD_ID1.div(FIELD_ID1).div(1).div(2);
    +        assertEquals(Integer.class, division1.getType());
    +        assertEquals("(((\"TABLE1\".\"ID1\" / \"TABLE1\".\"ID1\") / 1) / 2)", r_refI().render(division1));
    +        assertEquals("(((\"TABLE1\".\"ID1\" / \"TABLE1\".\"ID1\") / ?) / ?)", r_ref().render(division1));
    +        assertEquals("(((\"TABLE1\".\"ID1\" / \"TABLE1\".\"ID1\") / 1) / 2)", r_decI().render(division1));
    +        assertEquals("(((\"TABLE1\".\"ID1\" / \"TABLE1\".\"ID1\") / ?) / ?)", r_dec().render(division1));
    +
    +        Field<Integer> division2 = division1.as("d");
    +        assertEquals(Integer.class, division2.getType());
    +        assertEquals("\"d\"", r_refI().render(division2));
    +        assertEquals("\"d\"", r_ref().render(division2));
    +        assertEquals("(((\"TABLE1\".\"ID1\" / \"TABLE1\".\"ID1\") / 1) / 2) \"d\"", r_decI().render(division2));
    +        assertEquals("(((\"TABLE1\".\"ID1\" / \"TABLE1\".\"ID1\") / ?) / ?) \"d\"", r_dec().render(division2));
    +
    +
    +        context.checking(new Expectations() {{
    +            oneOf(statement).setInt(1, 1);
    +            oneOf(statement).setInt(2, 2);
    +        }});
    +
    +        int i = b_decF().bind(division2).peekIndex();
    +        assertEquals(3, i);
    +
    +        context.assertIsSatisfied();
    +    }
    +
    +    @Test
    +    public void testFunctions() {
    +        Field<String> f = replace(FIELD_NAME1, "a", "b");
    +        assertEquals("replace(\"TABLE1\".\"NAME1\", 'a', 'b')", r_refI().render(f));
    +        assertEquals("replace(\"TABLE1\".\"NAME1\", ?, ?)", r_ref().render(f));
    +    }
    +
    +    @Test
    +    public void testArithmeticExpressions() {
    +        Field<? extends Number> f;
    +
    +        f = FIELD_ID1.add(1).sub(2).add(3);
    +        assertEquals("(((\"TABLE1\".\"ID1\" + 1) - 2) + 3)", r_refI().render(f));
    +        assertEquals("(((\"TABLE1\".\"ID1\" + ?) - ?) + ?)", r_ref().render(f));
    +
    +        f = FIELD_ID1.add(1).add(2).sub(3);
    +        assertEquals("((\"TABLE1\".\"ID1\" + 1 + 2) - 3)", r_refI().render(f));
    +        assertEquals("((\"TABLE1\".\"ID1\" + ? + ?) - ?)", r_ref().render(f));
    +
    +        f = FIELD_ID1.add(1).sub(val(2).add(3));
    +        assertEquals("((\"TABLE1\".\"ID1\" + 1) - (2 + 3))", r_refI().render(f));
    +        assertEquals("((\"TABLE1\".\"ID1\" + ?) - (? + ?))", r_ref().render(f));
    +
    +        f = FIELD_ID1.mul(1).div(2).mul(3);
    +        assertEquals("(((\"TABLE1\".\"ID1\" * 1) / 2) * 3)", r_refI().render(f));
    +        assertEquals("(((\"TABLE1\".\"ID1\" * ?) / ?) * ?)", r_ref().render(f));
    +
    +        f = FIELD_ID1.mul(1).mul(2).div(3);
    +        assertEquals("((\"TABLE1\".\"ID1\" * 1 * 2) / 3)", r_refI().render(f));
    +        assertEquals("((\"TABLE1\".\"ID1\" * ? * ?) / ?)", r_ref().render(f));
    +
    +        f = FIELD_ID1.mul(1).div(val(2).mul(3));
    +        assertEquals("((\"TABLE1\".\"ID1\" * 1) / (2 * 3))", r_refI().render(f));
    +        assertEquals("((\"TABLE1\".\"ID1\" * ?) / (? * ?))", r_ref().render(f));
    +    }
    +
    +    @Test
    +    public void testArithmeticFunctions() throws Exception {
    +        Field<BigDecimal> sum1 = sum(FIELD_ID1);
    +        assertEquals(BigDecimal.class, sum1.getType());
    +        assertEquals("sum(\"TABLE1\".\"ID1\")", r_refI().render(sum1));
    +        assertEquals("sum(\"TABLE1\".\"ID1\")", r_ref().render(sum1));
    +        assertEquals("sum(\"TABLE1\".\"ID1\")", r_decI().render(sum1));
    +        assertEquals("sum(\"TABLE1\".\"ID1\")", r_dec().render(sum1));
    +        assertEquals(1, b_ref().bind(sum1).peekIndex());
    +
    +        Field<BigDecimal> sum2 = sum(FIELD_ID1).as("value");
    +        assertEquals(BigDecimal.class, sum2.getType());
    +        assertEquals("\"value\"", r_refI().render(sum2));
    +        assertEquals("\"value\"", r_ref().render(sum2));
    +        assertEquals("sum(\"TABLE1\".\"ID1\") \"value\"", r_decI().render(sum2));
    +        assertEquals("sum(\"TABLE1\".\"ID1\") \"value\"", r_dec().render(sum2));
    +        assertEquals(1, b_ref().bind(sum2).peekIndex());
    +
    +        Field<BigDecimal> avg1 = avg(FIELD_ID1);
    +        assertEquals(BigDecimal.class, avg1.getType());
    +        assertEquals("avg(\"TABLE1\".\"ID1\")", r_refI().render(avg1));
    +        assertEquals("avg(\"TABLE1\".\"ID1\")", r_ref().render(avg1));
    +        assertEquals("avg(\"TABLE1\".\"ID1\")", r_decI().render(avg1));
    +        assertEquals("avg(\"TABLE1\".\"ID1\")", r_dec().render(avg1));
    +        assertEquals(1, b_ref().bind(avg1).peekIndex());
    +
    +        Field<BigDecimal> avg2 = avg(FIELD_ID1).as("value");
    +        assertEquals(BigDecimal.class, avg2.getType());
    +        assertEquals("\"value\"", r_refI().render(avg2));
    +        assertEquals("\"value\"", r_ref().render(avg2));
    +        assertEquals("avg(\"TABLE1\".\"ID1\") \"value\"", r_decI().render(avg2));
    +        assertEquals("avg(\"TABLE1\".\"ID1\") \"value\"", r_dec().render(avg2));
    +        assertEquals(1, b_ref().bind(avg2).peekIndex());
    +
    +        Field<Integer> min1 = min(FIELD_ID1);
    +        assertEquals(Integer.class, min1.getType());
    +        assertEquals("min(\"TABLE1\".\"ID1\")", r_refI().render(min1));
    +        assertEquals("min(\"TABLE1\".\"ID1\")", r_ref().render(min1));
    +        assertEquals("min(\"TABLE1\".\"ID1\")", r_decI().render(min1));
    +        assertEquals("min(\"TABLE1\".\"ID1\")", r_dec().render(min1));
    +        assertEquals(1, b_ref().bind(min1).peekIndex());
    +
    +        Field<Integer> min2 = min(FIELD_ID1).as("value");
    +        assertEquals(Integer.class, min2.getType());
    +        assertEquals("\"value\"", r_refI().render(min2));
    +        assertEquals("\"value\"", r_ref().render(min2));
    +        assertEquals("min(\"TABLE1\".\"ID1\") \"value\"", r_decI().render(min2));
    +        assertEquals("min(\"TABLE1\".\"ID1\") \"value\"", r_dec().render(min2));
    +        assertEquals(1, b_ref().bind(min2).peekIndex());
    +
    +        Field<Integer> max1 = max(FIELD_ID1);
    +        assertEquals(Integer.class, max1.getType());
    +        assertEquals("max(\"TABLE1\".\"ID1\")", r_refI().render(max1));
    +        assertEquals("max(\"TABLE1\".\"ID1\")", r_ref().render(max1));
    +        assertEquals("max(\"TABLE1\".\"ID1\")", r_decI().render(max1));
    +        assertEquals("max(\"TABLE1\".\"ID1\")", r_dec().render(max1));
    +        assertEquals(1, b_ref().bind(max1).peekIndex());
    +
    +        Field<Integer> max2 = max(FIELD_ID1).as("value");
    +        assertEquals(Integer.class, max2.getType());
    +        assertEquals("\"value\"", r_refI().render(max2));
    +        assertEquals("\"value\"", r_ref().render(max2));
    +        assertEquals("max(\"TABLE1\".\"ID1\") \"value\"", r_decI().render(max2));
    +        assertEquals("max(\"TABLE1\".\"ID1\") \"value\"", r_dec().render(max2));
    +        assertEquals(1, b_ref().bind(max2).peekIndex());
    +
    +        Field<Integer> count1 = count();
    +        assertEquals(Integer.class, count1.getType());
    +        assertEquals("count(*)", r_refI().render(count1));
    +        assertEquals("count(*)", r_ref().render(count1));
    +        assertEquals("count(*)", r_decI().render(count1));
    +        assertEquals("count(*)", r_dec().render(count1));
    +        assertEquals(1, b_ref().bind(count1).peekIndex());
    +
    +        Field<Integer> count1a = count().as("cnt");
    +        assertEquals(Integer.class, count1a.getType());
    +        assertEquals("\"cnt\"", r_refI().render(count1a));
    +        assertEquals("\"cnt\"", r_ref().render(count1a));
    +        assertEquals("count(*) \"cnt\"", r_decI().render(count1a));
    +        assertEquals("count(*) \"cnt\"", r_dec().render(count1a));
    +        assertEquals(1, b_ref().bind(count1a).peekIndex());
    +
    +        Field<Integer> count2 = count(FIELD_ID1);
    +        assertEquals(Integer.class, count2.getType());
    +        assertEquals("count(\"TABLE1\".\"ID1\")", r_refI().render(count2));
    +        assertEquals("count(\"TABLE1\".\"ID1\")", r_ref().render(count2));
    +        assertEquals("count(\"TABLE1\".\"ID1\")", r_decI().render(count2));
    +        assertEquals("count(\"TABLE1\".\"ID1\")", r_dec().render(count2));
    +        assertEquals(1, b_ref().bind(count2).peekIndex());
    +
    +        Field<Integer> count2a = count(FIELD_ID1).as("cnt");
    +        assertEquals(Integer.class, count2a.getType());
    +        assertEquals("\"cnt\"", r_refI().render(count2a));
    +        assertEquals("\"cnt\"", r_ref().render(count2a));
    +        assertEquals("count(\"TABLE1\".\"ID1\") \"cnt\"", r_decI().render(count2a));
    +        assertEquals("count(\"TABLE1\".\"ID1\") \"cnt\"", r_dec().render(count2a));
    +        assertEquals(1, b_ref().bind(count2a).peekIndex());
    +
    +        Field<Integer> count3 = countDistinct(FIELD_ID1);
    +        assertEquals(Integer.class, count3.getType());
    +        assertEquals("count(distinct \"TABLE1\".\"ID1\")", r_refI().render(count3));
    +        assertEquals("count(distinct \"TABLE1\".\"ID1\")", r_ref().render(count3));
    +        assertEquals("count(distinct \"TABLE1\".\"ID1\")", r_decI().render(count3));
    +        assertEquals("count(distinct \"TABLE1\".\"ID1\")", r_dec().render(count3));
    +        assertEquals(1, b_ref().bind(count3).peekIndex());
    +
    +        Field<Integer> count3a = countDistinct(FIELD_ID1).as("cnt");
    +        assertEquals(Integer.class, count3a.getType());
    +        assertEquals("\"cnt\"", r_refI().render(count3a));
    +        assertEquals("\"cnt\"", r_ref().render(count3a));
    +        assertEquals("count(distinct \"TABLE1\".\"ID1\") \"cnt\"", r_decI().render(count3a));
    +        assertEquals("count(distinct \"TABLE1\".\"ID1\") \"cnt\"", r_dec().render(count3a));
    +        assertEquals(1, b_ref().bind(count3a).peekIndex());
    +    }
    +
    +    @Test
    +    public void testInsertQuery1() throws Exception {
    +        InsertQuery<Table1Record> q = create.insertQuery(TABLE1);
    +
    +        q.addValue(FIELD_ID1, 10);
    +        assertEquals("insert into \"TABLE1\" (\"ID1\") values (10)", r_refI().render(q));
    +        assertEquals("insert into \"TABLE1\" (\"ID1\") values (?)", r_ref().render(q));
    +        assertEquals(q, create.insertInto(TABLE1, FIELD_ID1).values(10));
    +        assertEquals(q, create.insertInto(TABLE1).set(FIELD_ID1, 10));
    +
    +        context.checking(new Expectations() {{
    +            oneOf(statement).setInt(1, 10);
    +        }});
    +
    +        int i = b_ref().bind(q).peekIndex();
    +        assertEquals(2, i);
    +
    +        context.assertIsSatisfied();
    +    }
    +
    +    @Test
    +    public void testInsertQuery2() throws Exception {
    +        InsertQuery<Table1Record> q = create.insertQuery(TABLE1);
    +
    +        q.addValue(FIELD_ID1, 10);
    +        q.addValue(FIELD_NAME1, "ABC");
    +        q.addValue(FIELD_DATE1, new Date(0));
    +        assertEquals("insert into \"TABLE1\" (\"ID1\", \"NAME1\", \"DATE1\") values (10, 'ABC', {d '1970-01-01'})", r_refI().render(q));
    +        assertEquals("insert into \"TABLE1\" (\"ID1\", \"NAME1\", \"DATE1\") values (?, ?, ?)", r_ref().render(q));
    +        assertEquals(q, create.insertInto(TABLE1, FIELD_ID1, FIELD_NAME1, FIELD_DATE1).values(10, "ABC", new Date(0)));
    +        assertEquals(q, create.insertInto(TABLE1).set(FIELD_ID1, 10).set(FIELD_NAME1, "ABC").set(FIELD_DATE1, new Date(0)));
    +
    +        context.checking(new Expectations() {{
    +            oneOf(statement).setInt(1, 10);
    +            oneOf(statement).setString(2, "ABC");
    +            oneOf(statement).setDate(3, new Date(0));
    +        }});
    +
    +        int i = b_ref().bind(q).peekIndex();
    +        assertEquals(4, i);
    +
    +        context.assertIsSatisfied();
    +    }
    +
    +    @Test
    +    public void testInsertSelect1() throws Exception {
    +        InsertQuery<Table1Record> q = create.insertQuery(TABLE1);
    +
    +        q.addValue(FIELD_ID1, round(val(10)));
    +        q.addValue(FIELD_NAME1, create.select(FIELD_NAME1).from(TABLE1).where(FIELD_ID1.equal(1)).<String> asField());
    +        assertEquals("insert into \"TABLE1\" (\"ID1\", \"NAME1\") values (round(10), (select \"TABLE1\".\"NAME1\" from \"TABLE1\" where \"TABLE1\".\"ID1\" = 1))", r_refI().render(q));
    +        assertEquals("insert into \"TABLE1\" (\"ID1\", \"NAME1\") values (round(?), (select \"TABLE1\".\"NAME1\" from \"TABLE1\" where \"TABLE1\".\"ID1\" = ?))", r_ref().render(q));
    +
    +        context.checking(new Expectations() {{
    +            oneOf(statement).setInt(1, 10);
    +            oneOf(statement).setInt(2, 1);
    +        }});
    +
    +        int i = b_ref().bind(q).peekIndex();
    +        assertEquals(3, i);
    +
    +        context.assertIsSatisfied();
    +    }
    +
    +    @Test
    +    public void testInsertSelect2() throws Exception {
    +        Insert<Table1Record> q = create.insertInto(TABLE1).select(create.selectQuery());
    +
    +        assertEquals("insert into \"TABLE1\" (\"ID1\", \"NAME1\", \"DATE1\") select 1 from dual", r_refI().render(q));
    +        assertEquals("insert into \"TABLE1\" (\"ID1\", \"NAME1\", \"DATE1\") select 1 from dual", r_ref().render(q));
    +
    +        // [#1069] Allow for specifying custom fields
    +        q = create.insertInto(TABLE1, FIELD_ID1).select(create.selectQuery());
    +
    +        assertEquals("insert into \"TABLE1\" (\"ID1\") select 1 from dual", r_refI().render(q));
    +        assertEquals("insert into \"TABLE1\" (\"ID1\") select 1 from dual", r_ref().render(q));
    +
    +        // [#1069] Allow for specifying custom fields
    +        q = create.insertInto(TABLE1, FIELD_ID1, FIELD_NAME1).select(create.selectQuery());
    +
    +        assertEquals("insert into \"TABLE1\" (\"ID1\", \"NAME1\") select 1 from dual", r_refI().render(q));
    +        assertEquals("insert into \"TABLE1\" (\"ID1\", \"NAME1\") select 1 from dual", r_ref().render(q));
    +
    +        q = create.insertInto(TABLE1).select(create.select(val(1), FIELD_NAME1).from(TABLE1).where(FIELD_NAME1.equal("abc")));
    +
    +        assertEquals("insert into \"TABLE1\" (\"ID1\", \"NAME1\", \"DATE1\") select 1, \"TABLE1\".\"NAME1\" from \"TABLE1\" where \"TABLE1\".\"NAME1\" = 'abc'", r_refI().render(q));
    +        assertEquals("insert into \"TABLE1\" (\"ID1\", \"NAME1\", \"DATE1\") select ?, \"TABLE1\".\"NAME1\" from \"TABLE1\" where \"TABLE1\".\"NAME1\" = ?", r_ref().render(q));
    +
    +        context.checking(new Expectations() {{
    +            oneOf(statement).setInt(1, 1);
    +            oneOf(statement).setString(2, "abc");
    +        }});
    +
    +        int i = b_ref().bind(q).peekIndex();
    +        assertEquals(3, i);
    +
    +        context.assertIsSatisfied();
    +    }
    +
    +    @Test
    +    public void testUpdateQuery1() throws Exception {
    +        UpdateQuery<Table1Record> q = create.updateQuery(TABLE1);
    +
    +        q.addValue(FIELD_ID1, 10);
    +        assertEquals("update \"TABLE1\" set \"ID1\" = 10", r_refI().render(q));
    +        assertEquals("update \"TABLE1\" set \"ID1\" = ?", r_ref().render(q));
    +        assertEquals(q, create.update(TABLE1).set(FIELD_ID1, 10));
    +
    +        context.checking(new Expectations() {{
    +            oneOf(statement).setInt(1, 10);
    +        }});
    +
    +        int i = b_ref().bind(q).peekIndex();
    +        assertEquals(2, i);
    +
    +        context.assertIsSatisfied();
    +    }
    +
    +    @Test
    +    public void testUpdateQuery2() throws Exception {
    +        UpdateQuery<Table1Record> q = create.updateQuery(TABLE1);
    +
    +        q.addValue(FIELD_ID1, 10);
    +        q.addValue(FIELD_NAME1, "ABC");
    +        assertEquals("update \"TABLE1\" set \"ID1\" = 10, \"NAME1\" = 'ABC'", r_refI().render(q));
    +        assertEquals("update \"TABLE1\" set \"ID1\" = ?, \"NAME1\" = ?", r_ref().render(q));
    +        assertEquals(q, create.update(TABLE1).set(FIELD_ID1, 10).set(FIELD_NAME1, "ABC"));
    +
    +        context.checking(new Expectations() {{
    +            oneOf(statement).setInt(1, 10);
    +            oneOf(statement).setString(2, "ABC");
    +        }});
    +
    +        int i = b_ref().bind(q).peekIndex();
    +        assertEquals(3, i);
    +
    +        context.assertIsSatisfied();
    +    }
    +
    +    @Test
    +    public void testUpdateQuery3() throws Exception {
    +        UpdateQuery<Table1Record> q = create.updateQuery(TABLE1);
    +        Condition c = FIELD_ID1.equal(10);
    +
    +        q.addValue(FIELD_ID1, 10);
    +        q.addValue(FIELD_NAME1, "ABC");
    +        q.addConditions(c);
    +        assertEquals("update \"TABLE1\" set \"ID1\" = 10, \"NAME1\" = 'ABC' where \"TABLE1\".\"ID1\" = 10", r_refI().render(q));
    +        assertEquals("update \"TABLE1\" set \"ID1\" = ?, \"NAME1\" = ? where \"TABLE1\".\"ID1\" = ?", r_ref().render(q));
    +        assertEquals(q, create.update(TABLE1).set(FIELD_ID1, 10).set(FIELD_NAME1, "ABC").where(c));
    +
    +        context.checking(new Expectations() {{
    +            oneOf(statement).setInt(1, 10);
    +            oneOf(statement).setString(2, "ABC");
    +            oneOf(statement).setInt(3, 10);
    +        }});
    +
    +        int i = b_ref().bind(q).peekIndex();
    +        assertEquals(4, i);
    +
    +        context.assertIsSatisfied();
    +    }
    +
    +    @Test
    +    public void testUpdateQuery4() throws Exception {
    +        UpdateQuery<Table1Record> q = create.updateQuery(TABLE1);
    +        Condition c1 = FIELD_ID1.equal(10);
    +        Condition c2 = FIELD_ID1.equal(20);
    +
    +        q.addValue(FIELD_ID1, 10);
    +        q.addValue(FIELD_NAME1, "ABC");
    +        q.addConditions(c1);
    +        q.addConditions(c2);
    +        assertEquals("update \"TABLE1\" set \"ID1\" = 10, \"NAME1\" = 'ABC' where (\"TABLE1\".\"ID1\" = 10 and \"TABLE1\".\"ID1\" = 20)", r_refI().render(q));
    +        assertEquals("update \"TABLE1\" set \"ID1\" = ?, \"NAME1\" = ? where (\"TABLE1\".\"ID1\" = ? and \"TABLE1\".\"ID1\" = ?)", r_ref().render(q));
    +        assertEquals(q, create.update(TABLE1).set(FIELD_ID1, 10).set(FIELD_NAME1, "ABC").where(c1, c2));
    +
    +        context.checking(new Expectations() {{
    +            oneOf(statement).setInt(1, 10);
    +            oneOf(statement).setString(2, "ABC");
    +            oneOf(statement).setInt(3, 10);
    +            oneOf(statement).setInt(4, 20);
    +        }});
    +
    +        int i = b_ref().bind(q).peekIndex();
    +        assertEquals(5, i);
    +
    +        context.assertIsSatisfied();
    +    }
    +
    +    @Test
    +    public void testUpdateQuery5() throws Exception {
    +        UpdateQuery<Table1Record> q = create.updateQuery(TABLE1);
    +        Condition c1 = FIELD_ID1.equal(10);
    +        Condition c2 = FIELD_ID1.equal(20);
    +
    +        q.addValue(FIELD_ID1, 10);
    +        q.addValue(FIELD_NAME1, "ABC");
    +        q.addConditions(c1);
    +        q.addConditions(c2);
    +        q.addConditions(c2, c1);
    +        assertEquals("update \"TABLE1\" set \"ID1\" = 10, \"NAME1\" = 'ABC' where (\"TABLE1\".\"ID1\" = 10 and \"TABLE1\".\"ID1\" = 20 and \"TABLE1\".\"ID1\" = 20 and \"TABLE1\".\"ID1\" = 10)", r_refI().render(q));
    +        assertEquals("update \"TABLE1\" set \"ID1\" = ?, \"NAME1\" = ? where (\"TABLE1\".\"ID1\" = ? and \"TABLE1\".\"ID1\" = ? and \"TABLE1\".\"ID1\" = ? and \"TABLE1\".\"ID1\" = ?)", r_ref().render(q));
    +        assertEquals(q, create.update(TABLE1).set(FIELD_ID1, 10).set(FIELD_NAME1, "ABC").where(c1).and(c2).and(c2).and(c1));
    +
    +        context.checking(new Expectations() {{
    +            oneOf(statement).setInt(1, 10);
    +            oneOf(statement).setString(2, "ABC");
    +            oneOf(statement).setInt(3, 10);
    +            oneOf(statement).setInt(4, 20);
    +            oneOf(statement).setInt(5, 20);
    +            oneOf(statement).setInt(6, 10);
    +        }});
    +
    +        int i = b_ref().bind(q).peekIndex();
    +        assertEquals(7, i);
    +
    +        context.assertIsSatisfied();
    +    }
    +
    +    @Test
    +    public void testMergeQuery() throws Exception {
    +        Merge<Table1Record> q =
    +        create.mergeInto(TABLE1)
    +              .using(create.select(FIELD_ID2).from(TABLE2))
    +              .on(FIELD_ID2.equal(FIELD_ID1))
    +              .and(FIELD_ID1.equal(1))
    +              .or(FIELD_ID2.equal(2))
    +              .whenMatchedThenUpdate()
    +              .set(FIELD_NAME1, "name")
    +              .set(FIELD_DATE1, new Date(0))
    +              .whenNotMatchedThenInsert(FIELD_ID1, FIELD_NAME1, FIELD_DATE1)
    +              .values(1, "name", new Date(0));
    +
    +        assertEquals("merge into \"TABLE1\" using (select \"TABLE2\".\"ID2\" from \"TABLE2\") on ((\"TABLE2\".\"ID2\" = \"TABLE1\".\"ID1\" and \"TABLE1\".\"ID1\" = 1) or \"TABLE2\".\"ID2\" = 2) when matched then update set \"NAME1\" = 'name', \"DATE1\" = {d '1970-01-01'} when not matched then insert (\"ID1\", \"NAME1\", \"DATE1\") values (1, 'name', {d '1970-01-01'})", r_refI().render(q));
    +        assertEquals("merge into \"TABLE1\" using (select \"TABLE2\".\"ID2\" from \"TABLE2\") on ((\"TABLE2\".\"ID2\" = \"TABLE1\".\"ID1\" and \"TABLE1\".\"ID1\" = ?) or \"TABLE2\".\"ID2\" = ?) when matched then update set \"NAME1\" = ?, \"DATE1\" = ? when not matched then insert (\"ID1\", \"NAME1\", \"DATE1\") values (?, ?, ?)", r_ref().render(q));
    +
    +        context.checking(new Expectations() {{
    +            oneOf(statement).setInt(1, 1);
    +            oneOf(statement).setInt(2, 2);
    +            oneOf(statement).setString(3, "name");
    +            oneOf(statement).setDate(4, new Date(0));
    +            oneOf(statement).setInt(5, 1);
    +            oneOf(statement).setString(6, "name");
    +            oneOf(statement).setDate(7, new Date(0));
    +        }});
    +
    +        int i = b_ref().bind(q).peekIndex();
    +        assertEquals(8, i);
    +
    +        context.assertIsSatisfied();
    +    }
    +
    +    @Test
    +    public void testDeleteQuery1() throws Exception {
    +        DeleteQuery<Table1Record> q = create.deleteQuery(TABLE1);
    +
    +        assertEquals("delete from \"TABLE1\"", r_refI().render(q));
    +        assertEquals("delete from \"TABLE1\"", r_ref().render(q));
    +        assertEquals(q, create.delete(TABLE1));
    +    }
    +
    +    @Test
    +    public void testDeleteQuery2() throws Exception {
    +        DeleteQuery<Table1Record> q = create.deleteQuery(TABLE1);
    +
    +        q.addConditions(falseCondition());
    +        assertEquals("delete from \"TABLE1\" where 1 = 0", r_refI().render(q));
    +        assertEquals("delete from \"TABLE1\" where 1 = 0", r_ref().render(q));
    +        assertEquals(q, create.delete(TABLE1).where(falseCondition()));
    +    }
    +
    +    @Test
    +    public void testDeleteQuery3() throws Exception {
    +        DeleteQuery<Table1Record> q = create.deleteQuery(TABLE1);
    +        Condition c1 = FIELD_ID1.equal(10);
    +        Condition c2 = FIELD_ID1.equal(20);
    +
    +        q.addConditions(c1);
    +        q.addConditions(c2);
    +        assertEquals("delete from \"TABLE1\" where (\"TABLE1\".\"ID1\" = 10 and \"TABLE1\".\"ID1\" = 20)", r_refI().render(q));
    +        assertEquals("delete from \"TABLE1\" where (\"TABLE1\".\"ID1\" = ? and \"TABLE1\".\"ID1\" = ?)", r_ref().render(q));
    +        assertEquals(q, create.delete(TABLE1).where(c1, c2));
    +
    +        context.checking(new Expectations() {{
    +            oneOf(statement).setInt(1, 10);
    +            oneOf(statement).setInt(2, 20);
    +        }});
    +
    +        int i = b_ref().bind(q).peekIndex();
    +        assertEquals(3, i);
    +
    +        context.assertIsSatisfied();
    +    }
    +
    +    @Test
    +    public void testDeleteQuery4() throws Exception {
    +        DeleteQuery<Table1Record> q = create.deleteQuery(TABLE1);
    +        Condition c1 = FIELD_ID1.equal(10);
    +        Condition c2 = FIELD_ID1.equal(20);
    +
    +        q.addConditions(c1);
    +        q.addConditions(c2);
    +        q.addConditions(c2, c1);
    +        assertEquals("delete from \"TABLE1\" where (\"TABLE1\".\"ID1\" = 10 and \"TABLE1\".\"ID1\" = 20 and \"TABLE1\".\"ID1\" = 20 and \"TABLE1\".\"ID1\" = 10)", r_refI().render(q));
    +        assertEquals("delete from \"TABLE1\" where (\"TABLE1\".\"ID1\" = ? and \"TABLE1\".\"ID1\" = ? and \"TABLE1\".\"ID1\" = ? and \"TABLE1\".\"ID1\" = ?)", r_ref().render(q));
    +        assertEquals(q, create.delete(TABLE1).where(c1, c2).and(c2).and(c1));
    +
    +        context.checking(new Expectations() {{
    +            oneOf(statement).setInt(1, 10);
    +            oneOf(statement).setInt(2, 20);
    +            oneOf(statement).setInt(3, 20);
    +            oneOf(statement).setInt(4, 10);
    +        }});
    +
    +        int i = b_ref().bind(q).peekIndex();
    +        assertEquals(5, i);
    +
    +        context.assertIsSatisfied();
    +    }
    +
    +    @Test
    +    public void testConditionalSelectQuery1() throws Exception {
    +        Select<?> q = create.selectQuery();
    +        Select<?> s = create.select();
    +
    +        assertEquals("select 1 from dual", r_refI().render(q));
    +        assertEquals("select 1 from dual", r_ref().render(q));
    +        assertEquals(q, s);
    +    }
    +
    +    @Test
    +    public void testConditionalSelectQuery2() throws Exception {
    +        SelectQuery q = create.selectQuery();
    +
    +        q.addConditions(falseCondition());
    +        assertEquals("select 1 from dual where 1 = 0", r_refI().render(q));
    +        assertEquals("select 1 from dual where 1 = 0", r_ref().render(q));
    +        assertEquals(q, create.select().where(falseCondition()));
    +    }
    +
    +    @Test
    +    public void testConditionalSelectQuery3() throws Exception {
    +        SelectQuery q = create.selectQuery();
    +
    +        q.addConditions(falseCondition());
    +        q.addConditions(trueCondition());
    +        assertEquals("select 1 from dual where (1 = 0 and 1 = 1)", r_refI().render(q));
    +        assertEquals("select 1 from dual where (1 = 0 and 1 = 1)", r_ref().render(q));
    +        assertEquals(q, create.select().where(falseCondition().and(trueCondition())));
    +    }
    +
    +    @Test
    +    public void testConditionalSelectQuery4() throws Exception {
    +        SelectQuery q = create.selectQuery();
    +        Condition c1 = FIELD_ID1.equal(10);
    +        Condition c2 = FIELD_ID1.equal(20);
    +
    +        q.addConditions(c1);
    +        q.addConditions(c2);
    +        q.addConditions(c2, c1);
    +        assertEquals("select 1 from dual where (\"TABLE1\".\"ID1\" = 10 and \"TABLE1\".\"ID1\" = 20 and \"TABLE1\".\"ID1\" = 20 and \"TABLE1\".\"ID1\" = 10)", r_refI().render(q));
    +        assertEquals("select 1 from dual where (\"TABLE1\".\"ID1\" = ? and \"TABLE1\".\"ID1\" = ? and \"TABLE1\".\"ID1\" = ? and \"TABLE1\".\"ID1\" = ?)", r_ref().render(q));
    +        assertEquals(q, create.select().where(c1.and(c2).and(c2.and(c1))));
    +
    +        context.checking(new Expectations() {{
    +            oneOf(statement).setInt(1, 10);
    +            oneOf(statement).setInt(2, 20);
    +            oneOf(statement).setInt(3, 20);
    +            oneOf(statement).setInt(4, 10);
    +        }});
    +
    +        int i = b_ref().bind(q).peekIndex();
    +        assertEquals(5, i);
    +
    +        context.assertIsSatisfied();
    +    }
    +
    +    @Test
    +    public void testConditionalSelectQuery5() throws Exception {
    +        SelectQuery q = create.selectQuery();
    +        Condition c1 = condition("\"TABLE1\".\"ID1\" = ?", "10");
    +        Condition c2 = condition("\"TABLE2\".\"ID2\" = 20 or \"TABLE2\".\"ID2\" = ?", 30);
    +
    +        q.addConditions(c1);
    +        q.addConditions(c2);
    +        assertEquals("select 1 from dual where ((\"TABLE1\".\"ID1\" = '10') and (\"TABLE2\".\"ID2\" = 20 or \"TABLE2\".\"ID2\" = 30))", r_refI().render(q));
    +        assertEquals("select 1 from dual where ((\"TABLE1\".\"ID1\" = ?) and (\"TABLE2\".\"ID2\" = 20 or \"TABLE2\".\"ID2\" = ?))", r_ref().render(q));
    +        assertEquals(q, create.select().where(c1, c2));
    +
    +        context.checking(new Expectations() {{
    +            oneOf(statement).setString(1, "10");
    +            oneOf(statement).setInt(2, 30);
    +        }});
    +
    +        int i = b_ref().bind(q).peekIndex();
    +        assertEquals(3, i);
    +
    +        context.assertIsSatisfied();
    +    }
    +
    +    @Test
    +    public void testDistinctSelectQuery() throws Exception {
    +        SelectQuery q = create.selectQuery();
    +        q.addSelect(FIELD_ID1, FIELD_ID2);
    +        q.setDistinct(true);
    +
    +        assertEquals("select distinct \"TABLE1\".\"ID1\", \"TABLE2\".\"ID2\" from dual", r_refI().render(q));
    +        assertEquals("select distinct \"TABLE1\".\"ID1\", \"TABLE2\".\"ID2\" from dual", r_ref().render(q));
    +        assertEquals(q, create.selectDistinct(FIELD_ID1, FIELD_ID2));
    +
    +        int i = b_ref().bind(q).peekIndex();
    +        assertEquals(1, i);
    +    }
    +
    +    @Test
    +    public void testProductSelectQuery() throws Exception {
    +        SelectQuery q = create.selectQuery();
    +
    +        q.addFrom(TABLE1);
    +        q.addFrom(TABLE2);
    +        q.addFrom(TABLE3);
    +        assertEquals("select \"TABLE1\".\"ID1\", \"TABLE1\".\"NAME1\", \"TABLE1\".\"DATE1\", \"TABLE2\".\"ID2\", \"TABLE2\".\"NAME2\", \"TABLE2\".\"DATE2\", \"TABLE3\".\"ID3\", \"TABLE3\".\"NAME3\", \"TABLE3\".\"DATE3\" from \"TABLE1\", \"TABLE2\", \"TABLE3\"", r_refI().render(q));
    +        assertEquals("select \"TABLE1\".\"ID1\", \"TABLE1\".\"NAME1\", \"TABLE1\".\"DATE1\", \"TABLE2\".\"ID2\", \"TABLE2\".\"NAME2\", \"TABLE2\".\"DATE2\", \"TABLE3\".\"ID3\", \"TABLE3\".\"NAME3\", \"TABLE3\".\"DATE3\" from \"TABLE1\", \"TABLE2\", \"TABLE3\"", r_ref().render(q));
    +        assertEquals(q, create.select().from(TABLE1, TABLE2, TABLE3));
    +
    +        int i = b_ref().bind(q).peekIndex();
    +        assertEquals(1, i);
    +    }
    +
    +    @Test
    +    public void testJoinSelectQuery() throws Exception {
    +        SelectQuery q = create.selectQuery();
    +
    +        q.addFrom(TABLE1);
    +        q.addJoin(TABLE2);
    +        assertEquals("select \"TABLE1\".\"ID1\", \"TABLE1\".\"NAME1\", \"TABLE1\".\"DATE1\", \"TABLE2\".\"ID2\", \"TABLE2\".\"NAME2\", \"TABLE2\".\"DATE2\" from \"TABLE1\" join \"TABLE2\" on 1 = 1", r_refI().render(q));
    +        assertEquals("select \"TABLE1\".\"ID1\", \"TABLE1\".\"NAME1\", \"TABLE1\".\"DATE1\", \"TABLE2\".\"ID2\", \"TABLE2\".\"NAME2\", \"TABLE2\".\"DATE2\" from \"TABLE1\" join \"TABLE2\" on 1 = 1", r_ref().render(q));
    +        assertEquals(q, create.select().from(TABLE1).join(TABLE2).on());
    +
    +        int i = b_ref().bind(q).peekIndex();
    +        assertEquals(1, i);
    +    }
    +
    +    @Test
    +    public void testJoinOnConditionSelectQuery() throws Exception {
    +        SelectQuery q = create.selectQuery();
    +        q.addFrom(TABLE1);
    +        q.addJoin(TABLE2, FIELD_ID1.equal(FIELD_ID2));
    +
    +        assertEquals("select \"TABLE1\".\"ID1\", \"TABLE1\".\"NAME1\", \"TABLE1\".\"DATE1\", \"TABLE2\".\"ID2\", \"TABLE2\".\"NAME2\", \"TABLE2\".\"DATE2\" from \"TABLE1\" join \"TABLE2\" on \"TABLE1\".\"ID1\" = \"TABLE2\".\"ID2\"", r_refI().render(q));
    +        assertEquals("select \"TABLE1\".\"ID1\", \"TABLE1\".\"NAME1\", \"TABLE1\".\"DATE1\", \"TABLE2\".\"ID2\", \"TABLE2\".\"NAME2\", \"TABLE2\".\"DATE2\" from \"TABLE1\" join \"TABLE2\" on \"TABLE1\".\"ID1\" = \"TABLE2\".\"ID2\"", r_ref().render(q));
    +        assertEquals(q, create.select().from(TABLE1).join(TABLE2).on(FIELD_ID1.equal(FIELD_ID2)));
    +
    +        q.addJoin(TABLE3, FIELD_ID2.equal(FIELD_ID3));
    +        assertEquals("select \"TABLE1\".\"ID1\", \"TABLE1\".\"NAME1\", \"TABLE1\".\"DATE1\", \"TABLE2\".\"ID2\", \"TABLE2\".\"NAME2\", \"TABLE2\".\"DATE2\", \"TABLE3\".\"ID3\", \"TABLE3\".\"NAME3\", \"TABLE3\".\"DATE3\" from \"TABLE1\" join \"TABLE2\" on \"TABLE1\".\"ID1\" = \"TABLE2\".\"ID2\" join \"TABLE3\" on \"TABLE2\".\"ID2\" = \"TABLE3\".\"ID3\"", r_refI().render(q));
    +        assertEquals("select \"TABLE1\".\"ID1\", \"TABLE1\".\"NAME1\", \"TABLE1\".\"DATE1\", \"TABLE2\".\"ID2\", \"TABLE2\".\"NAME2\", \"TABLE2\".\"DATE2\", \"TABLE3\".\"ID3\", \"TABLE3\".\"NAME3\", \"TABLE3\".\"DATE3\" from \"TABLE1\" join \"TABLE2\" on \"TABLE1\".\"ID1\" = \"TABLE2\".\"ID2\" join \"TABLE3\" on \"TABLE2\".\"ID2\" = \"TABLE3\".\"ID3\"", r_ref().render(q));
    +        assertEquals(q, create.select().from(TABLE1)
    +                                      .join(TABLE2).on(FIELD_ID1.equal(FIELD_ID2))
    +                                      .join(TABLE3).on(FIELD_ID2.equal(FIELD_ID3)));
    +
    +        int i = b_ref().bind(q).peekIndex();
    +        assertEquals(1, i);
    +    }
    +
    +    @Test
    +    public void testJoinComplexSelectQuery() throws Exception {
    +        SelectQuery q = create.selectQuery();
    +
    +        q.addFrom(TABLE1);
    +        q.addJoin(TABLE2,
    +                FIELD_ID1.equal(FIELD_ID2),
    +                FIELD_ID1.equal(1),
    +                FIELD_ID2.in(1, 2, 3));
    +        q.addConditions(FIELD_ID1.equal(5));
    +
    +        assertEquals("select \"TABLE1\".\"ID1\", \"TABLE1\".\"NAME1\", \"TABLE1\".\"DATE1\", \"TABLE2\".\"ID2\", \"TABLE2\".\"NAME2\", \"TABLE2\".\"DATE2\" from \"TABLE1\" join \"TABLE2\" on (\"TABLE1\".\"ID1\" = \"TABLE2\".\"ID2\" and \"TABLE1\".\"ID1\" = 1 and \"TABLE2\".\"ID2\" in (1, 2, 3)) where \"TABLE1\".\"ID1\" = 5", r_refI().render(q));
    +        assertEquals("select \"TABLE1\".\"ID1\", \"TABLE1\".\"NAME1\", \"TABLE1\".\"DATE1\", \"TABLE2\".\"ID2\", \"TABLE2\".\"NAME2\", \"TABLE2\".\"DATE2\" from \"TABLE1\" join \"TABLE2\" on (\"TABLE1\".\"ID1\" = \"TABLE2\".\"ID2\" and \"TABLE1\".\"ID1\" = ? and \"TABLE2\".\"ID2\" in (?, ?, ?)) where \"TABLE1\".\"ID1\" = ?", r_ref().render(q));
    +
    +        // Join using a single condition
    +        assertEquals(q, create.select().from(TABLE1)
    +                                       .join(TABLE2)
    +                                       .on(FIELD_ID1.equal(FIELD_ID2)
    +                                       .and(FIELD_ID1.equal(1))
    +                                       .and(FIELD_ID2.in(1, 2, 3)))
    +                                       .where(FIELD_ID1.equal(5)));
    +
    +        // Join using several conditions
    +        assertEquals(q, create.select().from(TABLE1)
    +                                       .join(TABLE2)
    +                                       .on(FIELD_ID1.equal(FIELD_ID2))
    +                                       .and(FIELD_ID1.equal(1))
    +                                       .and(FIELD_ID2.in(1, 2, 3))
    +                                       .where(FIELD_ID1.equal(5)));
    +
    +        q.addJoin(TABLE3, FIELD_ID2.equal(FIELD_ID3));
    +        assertEquals("select \"TABLE1\".\"ID1\", \"TABLE1\".\"NAME1\", \"TABLE1\".\"DATE1\", \"TABLE2\".\"ID2\", \"TABLE2\".\"NAME2\", \"TABLE2\".\"DATE2\", \"TABLE3\".\"ID3\", \"TABLE3\".\"NAME3\", \"TABLE3\".\"DATE3\" from \"TABLE1\" join \"TABLE2\" on (\"TABLE1\".\"ID1\" = \"TABLE2\".\"ID2\" and \"TABLE1\".\"ID1\" = 1 and \"TABLE2\".\"ID2\" in (1, 2, 3)) join \"TABLE3\" on \"TABLE2\".\"ID2\" = \"TABLE3\".\"ID3\" where \"TABLE1\".\"ID1\" = 5", r_refI().render(q));
    +        assertEquals("select \"TABLE1\".\"ID1\", \"TABLE1\".\"NAME1\", \"TABLE1\".\"DATE1\", \"TABLE2\".\"ID2\", \"TABLE2\".\"NAME2\", \"TABLE2\".\"DATE2\", \"TABLE3\".\"ID3\", \"TABLE3\".\"NAME3\", \"TABLE3\".\"DATE3\" from \"TABLE1\" join \"TABLE2\" on (\"TABLE1\".\"ID1\" = \"TABLE2\".\"ID2\" and \"TABLE1\".\"ID1\" = ? and \"TABLE2\".\"ID2\" in (?, ?, ?)) join \"TABLE3\" on \"TABLE2\".\"ID2\" = \"TABLE3\".\"ID3\" where \"TABLE1\".\"ID1\" = ?", r_ref().render(q));
    +        assertEquals(q, create.select().from(TABLE1)
    +                                .join(TABLE2).on(FIELD_ID1.equal(FIELD_ID2)
    +                                            .and(FIELD_ID1.equal(1))
    +                                            .and(FIELD_ID2.in(1, 2, 3)))
    +                                .join(TABLE3).on(FIELD_ID2.equal(FIELD_ID3))
    +                                .where(FIELD_ID1.equal(5)));
    +
    +        context.checking(new Expectations() {{
    +            oneOf(statement).setInt(1, 1);
    +            oneOf(statement).setInt(2, 1);
    +            oneOf(statement).setInt(3, 2);
    +            oneOf(statement).setInt(4, 3);
    +            oneOf(statement).setInt(5, 5);
    +        }});
    +
    +        int i = b_ref().bind(q).peekIndex();
    +        assertEquals(6, i);
    +
    +        context.assertIsSatisfied();
    +    }
    +
    +    @Test
    +    public void testJoinSelf() throws Exception {
    +        Table<Table1Record> t1 = TABLE1.as("t1");
    +        Table<Table1Record> t2 = TABLE1.as("t2");
    +
    +        SelectQuery q = create.selectQuery();
    +        q.addFrom(t1);
    +        q.addJoin(t2, t1.getField(FIELD_ID1).equal(t2.getField(FIELD_ID1)));
    +
    +        assertEquals("select \"t1\".\"ID1\", \"t1\".\"NAME1\", \"t1\".\"DATE1\", \"t2\".\"ID1\", \"t2\".\"NAME1\", \"t2\".\"DATE1\" from \"TABLE1\" \"t1\" join \"TABLE1\" \"t2\" on \"t1\".\"ID1\" = \"t2\".\"ID1\"", r_refI().render(q));
    +        assertEquals("select \"t1\".\"ID1\", \"t1\".\"NAME1\", \"t1\".\"DATE1\", \"t2\".\"ID1\", \"t2\".\"NAME1\", \"t2\".\"DATE1\" from \"TABLE1\" \"t1\" join \"TABLE1\" \"t2\" on \"t1\".\"ID1\" = \"t2\".\"ID1\"", r_ref().render(q));
    +        assertEquals(q, create.select().from(t1)
    +                                .join(t2).on(t1.getField(FIELD_ID1).equal(
    +                                             t2.getField(FIELD_ID1))));
    +
    +        int i = b_ref().bind(q).peekIndex();
    +        assertEquals(1, i);
    +    }
    +
    +    @Test
    +    public void testJoinTypeSelectQuery() throws Exception {
    +        SelectQuery q = create.selectQuery();
    +        q.addFrom(TABLE1);
    +        q.addJoin(TABLE2, LEFT_OUTER_JOIN, FIELD_ID1.equal(FIELD_ID2));
    +        assertEquals("select \"TABLE1\".\"ID1\", \"TABLE1\".\"NAME1\", \"TABLE1\".\"DATE1\", \"TABLE2\".\"ID2\", \"TABLE2\".\"NAME2\", \"TABLE2\".\"DATE2\" from \"TABLE1\" left outer join \"TABLE2\" on \"TABLE1\".\"ID1\" = \"TABLE2\".\"ID2\"", r_refI().render(q));
    +        assertEquals("select \"TABLE1\".\"ID1\", \"TABLE1\".\"NAME1\", \"TABLE1\".\"DATE1\", \"TABLE2\".\"ID2\", \"TABLE2\".\"NAME2\", \"TABLE2\".\"DATE2\" from \"TABLE1\" left outer join \"TABLE2\" on \"TABLE1\".\"ID1\" = \"TABLE2\".\"ID2\"", r_ref().render(q));
    +        assertEquals(q, create.select().from(TABLE1).leftOuterJoin(TABLE2).on(FIELD_ID1.equal(FIELD_ID2)));
    +
    +        int i = b_ref().bind(q).peekIndex();
    +        assertEquals(1, i);
    +    }
    +
    +    @Test
    +    public void testGroupSelectQuery() throws Exception {
    +        SelectQuery q = create.selectQuery();
    +        q.addFrom(TABLE1);
    +
    +        q.addGroupBy(FIELD_ID1);
    +        assertEquals("select \"TABLE1\".\"ID1\", \"TABLE1\".\"NAME1\", \"TABLE1\".\"DATE1\" from \"TABLE1\" group by \"TABLE1\".\"ID1\"", r_refI().render(q));
    +        assertEquals("select \"TABLE1\".\"ID1\", \"TABLE1\".\"NAME1\", \"TABLE1\".\"DATE1\" from \"TABLE1\" group by \"TABLE1\".\"ID1\"", r_ref().render(q));
    +        assertEquals(q, create.select().from(TABLE1).groupBy(FIELD_ID1));
    +
    +        q.addGroupBy(FIELD_ID2, FIELD_ID3);
    +        assertEquals("select \"TABLE1\".\"ID1\", \"TABLE1\".\"NAME1\", \"TABLE1\".\"DATE1\" from \"TABLE1\" group by \"TABLE1\".\"ID1\", \"TABLE2\".\"ID2\", \"TABLE3\".\"ID3\"", r_refI().render(q));
    +        assertEquals("select \"TABLE1\".\"ID1\", \"TABLE1\".\"NAME1\", \"TABLE1\".\"DATE1\" from \"TABLE1\" group by \"TABLE1\".\"ID1\", \"TABLE2\".\"ID2\", \"TABLE3\".\"ID3\"", r_ref().render(q));
    +        assertEquals(q, create.select().from(TABLE1).groupBy(FIELD_ID1, FIELD_ID2, FIELD_ID3));
    +
    +        q.addHaving(FIELD_ID1.equal(1));
    +        assertEquals("select \"TABLE1\".\"ID1\", \"TABLE1\".\"NAME1\", \"TABLE1\".\"DATE1\" from \"TABLE1\" group by \"TABLE1\".\"ID1\", \"TABLE2\".\"ID2\", \"TABLE3\".\"ID3\" having \"TABLE1\".\"ID1\" = 1", r_refI().render(q));
    +        assertEquals("select \"TABLE1\".\"ID1\", \"TABLE1\".\"NAME1\", \"TABLE1\".\"DATE1\" from \"TABLE1\" group by \"TABLE1\".\"ID1\", \"TABLE2\".\"ID2\", \"TABLE3\".\"ID3\" having \"TABLE1\".\"ID1\" = ?", r_ref().render(q));
    +        assertEquals(q, create.select().from(TABLE1)
    +                                  .groupBy(FIELD_ID1, FIELD_ID2, FIELD_ID3)
    +                                  .having(FIELD_ID1.equal(1)));
    +
    +        q.addHaving(Operator.OR, FIELD_ID1.equal(2));
    +        assertEquals("select \"TABLE1\".\"ID1\", \"TABLE1\".\"NAME1\", \"TABLE1\".\"DATE1\" from \"TABLE1\" group by \"TABLE1\".\"ID1\", \"TABLE2\".\"ID2\", \"TABLE3\".\"ID3\" having (\"TABLE1\".\"ID1\" = 1 or \"TABLE1\".\"ID1\" = 2)", r_refI().render(q));
    +        assertEquals("select \"TABLE1\".\"ID1\", \"TABLE1\".\"NAME1\", \"TABLE1\".\"DATE1\" from \"TABLE1\" group by \"TABLE1\".\"ID1\", \"TABLE2\".\"ID2\", \"TABLE3\".\"ID3\" having (\"TABLE1\".\"ID1\" = ? or \"TABLE1\".\"ID1\" = ?)", r_ref().render(q));
    +        assertEquals(q, create.select().from(TABLE1)
    +                                  .groupBy(FIELD_ID1, FIELD_ID2, FIELD_ID3)
    +                                  .having(FIELD_ID1.equal(1))
    +                                  .or(FIELD_ID1.equal(2)));
    +
    +        q.addHaving(Operator.OR, FIELD_ID1.equal(3));
    +        assertEquals("select \"TABLE1\".\"ID1\", \"TABLE1\".\"NAME1\", \"TABLE1\".\"DATE1\" from \"TABLE1\" group by \"TABLE1\".\"ID1\", \"TABLE2\".\"ID2\", \"TABLE3\".\"ID3\" having (\"TABLE1\".\"ID1\" = 1 or \"TABLE1\".\"ID1\" = 2 or \"TABLE1\".\"ID1\" = 3)", r_refI().render(q));
    +        assertEquals("select \"TABLE1\".\"ID1\", \"TABLE1\".\"NAME1\", \"TABLE1\".\"DATE1\" from \"TABLE1\" group by \"TABLE1\".\"ID1\", \"TABLE2\".\"ID2\", \"TABLE3\".\"ID3\" having (\"TABLE1\".\"ID1\" = ? or \"TABLE1\".\"ID1\" = ? or \"TABLE1\".\"ID1\" = ?)", r_ref().render(q));
    +        assertEquals(q, create.select().from(TABLE1)
    +                                  .groupBy(FIELD_ID1, FIELD_ID2, FIELD_ID3)
    +                                  .having(FIELD_ID1.equal(1))
    +                                  .or(FIELD_ID1.equal(2))
    +                                  .or(FIELD_ID1.equal(3)));
    +
    +        q.addHaving(FIELD_ID1.in(1, 2, 3));
    +        assertEquals("select \"TABLE1\".\"ID1\", \"TABLE1\".\"NAME1\", \"TABLE1\".\"DATE1\" from \"TABLE1\" group by \"TABLE1\".\"ID1\", \"TABLE2\".\"ID2\", \"TABLE3\".\"ID3\" having ((\"TABLE1\".\"ID1\" = 1 or \"TABLE1\".\"ID1\" = 2 or \"TABLE1\".\"ID1\" = 3) and \"TABLE1\".\"ID1\" in (1, 2, 3))", r_refI().render(q));
    +        assertEquals("select \"TABLE1\".\"ID1\", \"TABLE1\".\"NAME1\", \"TABLE1\".\"DATE1\" from \"TABLE1\" group by \"TABLE1\".\"ID1\", \"TABLE2\".\"ID2\", \"TABLE3\".\"ID3\" having ((\"TABLE1\".\"ID1\" = ? or \"TABLE1\".\"ID1\" = ? or \"TABLE1\".\"ID1\" = ?) and \"TABLE1\".\"ID1\" in (?, ?, ?))", r_ref().render(q));
    +        assertEquals(q, create.select().from(TABLE1)
    +                                  .groupBy(FIELD_ID1, FIELD_ID2, FIELD_ID3)
    +                                  .having(FIELD_ID1.equal(1))
    +                                  .or(FIELD_ID1.equal(2))
    +                                  .or(FIELD_ID1.equal(3))
    +                                  .and(FIELD_ID1.in(1, 2, 3)));
    +
    +        context.checking(new Expectations() {{
    +            oneOf(statement).setInt(1, 1);
    +            oneOf(statement).setInt(2, 2);
    +            oneOf(statement).setInt(3, 3);
    +            oneOf(statement).setInt(4, 1);
    +            oneOf(statement).setInt(5, 2);
    +            oneOf(statement).setInt(6, 3);
    +        }});
    +
    +        int i = b_ref().bind(q).peekIndex();
    +        assertEquals(7, i);
    +
    +        context.assertIsSatisfied();
    +    }
    +
    +    @Test
    +    public void testOrderSelectQuery() throws Exception {
    +        SimpleSelectQuery<Table1Record> q = create.selectQuery(TABLE1);
    +
    +        q.addOrderBy(FIELD_ID1);
    +        assertEquals("select \"TABLE1\".\"ID1\", \"TABLE1\".\"NAME1\", \"TABLE1\".\"DATE1\" from \"TABLE1\" order by \"TABLE1\".\"ID1\" asc", r_refI().render(q));
    +        assertEquals("select \"TABLE1\".\"ID1\", \"TABLE1\".\"NAME1\", \"TABLE1\".\"DATE1\" from \"TABLE1\" order by \"TABLE1\".\"ID1\" asc", r_ref().render(q));
    +        assertEquals(q, create.selectFrom(TABLE1).orderBy(FIELD_ID1));
    +
    +        q.addOrderBy(FIELD_ID2.desc());
    +        assertEquals("select \"TABLE1\".\"ID1\", \"TABLE1\".\"NAME1\", \"TABLE1\".\"DATE1\" from \"TABLE1\" order by \"TABLE1\".\"ID1\" asc, \"TABLE2\".\"ID2\" desc", r_refI().render(q));
    +        assertEquals("select \"TABLE1\".\"ID1\", \"TABLE1\".\"NAME1\", \"TABLE1\".\"DATE1\" from \"TABLE1\" order by \"TABLE1\".\"ID1\" asc, \"TABLE2\".\"ID2\" desc", r_ref().render(q));
    +        assertEquals(q, create.selectFrom(TABLE1).orderBy(
    +                                    FIELD_ID1.asc(),
    +                                    FIELD_ID2.desc()));
    +
    +        int i = b_ref().bind(q).peekIndex();
    +        assertEquals(1, i);
    +    }
    +
    +    @Test
    +    public void testCompleteSelectQuery() throws Exception {
    +        SelectQuery q = create.selectQuery();
    +        q.addFrom(TABLE1);
    +        q.addJoin(TABLE2, FIELD_ID1.equal(FIELD_ID2));
    +        q.addSelect(FIELD_ID1, FIELD_ID2);
    +        q.addGroupBy(FIELD_ID1, FIELD_ID2);
    +        q.addHaving(FIELD_ID1.equal(1));
    +        q.addOrderBy(FIELD_ID1.asc());
    +        q.addOrderBy(FIELD_ID2.desc());
    +
    +        assertEquals("select \"TABLE1\".\"ID1\", \"TABLE2\".\"ID2\" from \"TABLE1\" join \"TABLE2\" on \"TABLE1\".\"ID1\" = \"TABLE2\".\"ID2\" group by \"TABLE1\".\"ID1\", \"TABLE2\".\"ID2\" having \"TABLE1\".\"ID1\" = 1 order by \"TABLE1\".\"ID1\" asc, \"TABLE2\".\"ID2\" desc", r_refI().render(q));
    +        assertEquals("select \"TABLE1\".\"ID1\", \"TABLE2\".\"ID2\" from \"TABLE1\" join \"TABLE2\" on \"TABLE1\".\"ID1\" = \"TABLE2\".\"ID2\" group by \"TABLE1\".\"ID1\", \"TABLE2\".\"ID2\" having \"TABLE1\".\"ID1\" = ? order by \"TABLE1\".\"ID1\" asc, \"TABLE2\".\"ID2\" desc", r_ref().render(q));
    +        assertEquals(q, create.select(FIELD_ID1, FIELD_ID2)
    +                          .from(TABLE1)
    +                          .join(TABLE2).on(FIELD_ID1.equal(FIELD_ID2))
    +                          .groupBy(FIELD_ID1, FIELD_ID2)
    +                          .having(FIELD_ID1.equal(1))
    +                          .orderBy(
    +                              FIELD_ID1.asc(),
    +                              FIELD_ID2.desc()));
    +
    +        context.checking(new Expectations() {{
    +            oneOf(statement).setInt(1, 1);
    +        }});
    +
    +        int i = b_ref().bind(q).peekIndex();
    +        assertEquals(2, i);
    +
    +        context.assertIsSatisfied();
    +    }
    +
    +    @Test
    +    public void testCombinedSelectQuery() throws Exception {
    +        Select<?> combine = createCombinedSelectQuery();
    +
    +        assertEquals("(select \"TABLE1\".\"ID1\", \"TABLE1\".\"NAME1\", \"TABLE1\".\"DATE1\" from \"TABLE1\" where \"TABLE1\".\"ID1\" = 1) union (select \"TABLE1\".\"ID1\", \"TABLE1\".\"NAME1\", \"TABLE1\".\"DATE1\" from \"TABLE1\" where \"TABLE1\".\"ID1\" = 2)", r_refI().render(combine));
    +        assertEquals("(select \"TABLE1\".\"ID1\", \"TABLE1\".\"NAME1\", \"TABLE1\".\"DATE1\" from \"TABLE1\" where \"TABLE1\".\"ID1\" = ?) union (select \"TABLE1\".\"ID1\", \"TABLE1\".\"NAME1\", \"TABLE1\".\"DATE1\" from \"TABLE1\" where \"TABLE1\".\"ID1\" = ?)", r_ref().render(combine));
    +        assertEquals(combine, createCombinedSelect());
    +
    +        combine = create
    +            .select(createCombinedSelectQuery().getField(FIELD_ID1))
    +            .from(createCombinedSelectQuery())
    +            .orderBy(FIELD_ID1);
    +
    +        Pattern p = Pattern.compile("\"alias_\\d+\"");
    +        Matcher m = p.matcher(r_ref().render(combine));
    +        m.find();
    +        String match = m.group();
    +
    +        assertEquals("select " + match + ".\"ID1\" from ((select \"TABLE1\".\"ID1\", \"TABLE1\".\"NAME1\", \"TABLE1\".\"DATE1\" from \"TABLE1\" where \"TABLE1\".\"ID1\" = 1) union (select \"TABLE1\".\"ID1\", \"TABLE1\".\"NAME1\", \"TABLE1\".\"DATE1\" from \"TABLE1\" where \"TABLE1\".\"ID1\" = 2)) " + match + " order by \"TABLE1\".\"ID1\" asc", r_refI().render(combine));
    +        assertEquals("select " + match + ".\"ID1\" from ((select \"TABLE1\".\"ID1\", \"TABLE1\".\"NAME1\", \"TABLE1\".\"DATE1\" from \"TABLE1\" where \"TABLE1\".\"ID1\" = ?) union (select \"TABLE1\".\"ID1\", \"TABLE1\".\"NAME1\", \"TABLE1\".\"DATE1\" from \"TABLE1\" where \"TABLE1\".\"ID1\" = ?)) " + match + " order by \"TABLE1\".\"ID1\" asc", r_ref().render(combine));
    +
    +        combine = createCombinedSelectQuery();
    +        combine = create.select()
    +            .from(createCombinedSelectQuery())
    +            .join(TABLE2).on(FIELD_ID1.equal(FIELD_ID2))
    +            .orderBy(FIELD_ID1);
    +        assertEquals("select " + match + ".\"ID1\", " + match + ".\"NAME1\", " + match + ".\"DATE1\", \"TABLE2\".\"ID2\", \"TABLE2\".\"NAME2\", \"TABLE2\".\"DATE2\" from ((select \"TABLE1\".\"ID1\", \"TABLE1\".\"NAME1\", \"TABLE1\".\"DATE1\" from \"TABLE1\" where \"TABLE1\".\"ID1\" = 1) union (select \"TABLE1\".\"ID1\", \"TABLE1\".\"NAME1\", \"TABLE1\".\"DATE1\" from \"TABLE1\" where \"TABLE1\".\"ID1\" = 2)) " + match + " join \"TABLE2\" on \"TABLE1\".\"ID1\" = \"TABLE2\".\"ID2\" order by \"TABLE1\".\"ID1\" asc", r_refI().render(combine));
    +        assertEquals("select " + match + ".\"ID1\", " + match + ".\"NAME1\", " + match + ".\"DATE1\", \"TABLE2\".\"ID2\", \"TABLE2\".\"NAME2\", \"TABLE2\".\"DATE2\" from ((select \"TABLE1\".\"ID1\", \"TABLE1\".\"NAME1\", \"TABLE1\".\"DATE1\" from \"TABLE1\" where \"TABLE1\".\"ID1\" = ?) union (select \"TABLE1\".\"ID1\", \"TABLE1\".\"NAME1\", \"TABLE1\".\"DATE1\" from \"TABLE1\" where \"TABLE1\".\"ID1\" = ?)) " + match + " join \"TABLE2\" on \"TABLE1\".\"ID1\" = \"TABLE2\".\"ID2\" order by \"TABLE1\".\"ID1\" asc", r_ref().render(combine));
    +
    +        context.checking(new Expectations() {{
    +            oneOf(statement).setInt(1, 1);
    +            oneOf(statement).setInt(2, 2);
    +        }});
    +
    +        int i = b_ref().bind(combine).peekIndex();
    +        assertEquals(3, i);
    +
    +        context.assertIsSatisfied();
    +    }
    +
    +    private Select<?> createCombinedSelectQuery() {
    +        SelectQuery q1 = create.selectQuery();
    +        SelectQuery q2 = create.selectQuery();
    +
    +        q1.addFrom(TABLE1);
    +        q2.addFrom(TABLE1);
    +
    +        q1.addConditions(FIELD_ID1.equal(1));
    +        q2.addConditions(FIELD_ID1.equal(2));
    +
    +        return q1.union(q2);
    +    }
    +
    +    private Select<?> createCombinedSelect() {
    +        SelectFinalStep q1 = create.select().from(TABLE1).where(FIELD_ID1.equal(1));
    +        SelectFinalStep q2 = create.select().from(TABLE1).where(FIELD_ID1.equal(2));
    +
    +        return q1.union(q2);
    +    }
    +
    +    @Test
    +    public void testInnerSelect1() throws Exception {
    +        SimpleSelectQuery<Table1Record> q1 = create.selectQuery(TABLE1);
    +        SimpleSelectQuery<Table1Record> q2 = create.selectQuery(q1.asTable().as("inner_temp_table"));
    +        SimpleSelectQuery<Table1Record> q3 = create.selectQuery(q2.asTable().as("outer_temp_table"));
    +
    +        assertEquals("select \"inner_temp_table\".\"ID1\", \"inner_temp_table\".\"NAME1\", \"inner_temp_table\".\"DATE1\" from (select \"TABLE1\".\"ID1\", \"TABLE1\".\"NAME1\", \"TABLE1\".\"DATE1\" from \"TABLE1\") \"inner_temp_table\"", r_refI().render(q2));
    +        assertEquals("select \"inner_temp_table\".\"ID1\", \"inner_temp_table\".\"NAME1\", \"inner_temp_table\".\"DATE1\" from (select \"TABLE1\".\"ID1\", \"TABLE1\".\"NAME1\", \"TABLE1\".\"DATE1\" from \"TABLE1\") \"inner_temp_table\"", r_ref().render(q2));
    +
    +        assertEquals("select \"outer_temp_table\".\"ID1\", \"outer_temp_table\".\"NAME1\", \"outer_temp_table\".\"DATE1\" from (select \"inner_temp_table\".\"ID1\", \"inner_temp_table\".\"NAME1\", \"inner_temp_table\".\"DATE1\" from (select \"TABLE1\".\"ID1\", \"TABLE1\".\"NAME1\", \"TABLE1\".\"DATE1\" from \"TABLE1\") \"inner_temp_table\") \"outer_temp_table\"", r_refI().render(q3));
    +        assertEquals("select \"outer_temp_table\".\"ID1\", \"outer_temp_table\".\"NAME1\", \"outer_temp_table\".\"DATE1\" from (select \"inner_temp_table\".\"ID1\", \"inner_temp_table\".\"NAME1\", \"inner_temp_table\".\"DATE1\" from (select \"TABLE1\".\"ID1\", \"TABLE1\".\"NAME1\", \"TABLE1\".\"DATE1\" from \"TABLE1\") \"inner_temp_table\") \"outer_temp_table\"", r_ref().render(q3));
    +    }
    +
    +    @Test
    +    public void testInnerSelect2() throws Exception {
    +        SelectQuery q1 = create.selectQuery();
    +        SelectQuery q2 = create.selectQuery();
    +
    +        q1.addFrom(TABLE1);
    +        q2.addFrom(TABLE2);
    +
    +        q1.addSelect(FIELD_ID1.as("inner_id1"));
    +        q2.addSelect(FIELD_ID2.as("outer_id2"));
    +        q2.addSelect(q1.asField().as("outer_id1"));
    +
    +        assertEquals("select \"TABLE2\".\"ID2\" \"outer_id2\", (select \"TABLE1\".\"ID1\" \"inner_id1\" from \"TABLE1\") \"outer_id1\" from \"TABLE2\"", r_refI().render(q2));
    +        assertEquals("select \"TABLE2\".\"ID2\" \"outer_id2\", (select \"TABLE1\".\"ID1\" \"inner_id1\" from \"TABLE1\") \"outer_id1\" from \"TABLE2\"", r_ref().render(q2));
    +    }
    +
    +    @Test
    +    public void testInnerSelect3() throws Exception {
    +        SelectQuery q1 = create.selectQuery();
    +        SelectQuery q2 = create.selectQuery();
    +
    +        q1.addFrom(TABLE1);
    +        q2.addFrom(TABLE2);
    +
    +        q2.addSelect(FIELD_ID2);
    +        q1.addConditions(FIELD_ID1.in(q2));
    +
    +        assertEquals("select \"TABLE1\".\"ID1\", \"TABLE1\".\"NAME1\", \"TABLE1\".\"DATE1\" from \"TABLE1\" where \"TABLE1\".\"ID1\" in (select \"TABLE2\".\"ID2\" from \"TABLE2\")", r_refI().render(q1));
    +        assertEquals("select \"TABLE1\".\"ID1\", \"TABLE1\".\"NAME1\", \"TABLE1\".\"DATE1\" from \"TABLE1\" where \"TABLE1\".\"ID1\" in (select \"TABLE2\".\"ID2\" from \"TABLE2\")", r_ref().render(q1));
    +    }
    +
    +    @Test
    +    public void testInnerSelect4() throws Exception {
    +        SelectQuery q1 = create.selectQuery();
    +        SelectQuery q2 = create.selectQuery();
    +
    +        q1.addFrom(TABLE1);
    +        q2.addFrom(TABLE2);
    +
    +        q2.addSelect(FIELD_ID2);
    +        q1.addConditions(FIELD_ID1.equal(q2));
    +
    +        assertEquals("select \"TABLE1\".\"ID1\", \"TABLE1\".\"NAME1\", \"TABLE1\".\"DATE1\" from \"TABLE1\" where \"TABLE1\".\"ID1\" = (select \"TABLE2\".\"ID2\" from \"TABLE2\")", r_refI().render(q1));
    +        assertEquals("select \"TABLE1\".\"ID1\", \"TABLE1\".\"NAME1\", \"TABLE1\".\"DATE1\" from \"TABLE1\" where \"TABLE1\".\"ID1\" = (select \"TABLE2\".\"ID2\" from \"TABLE2\")", r_ref().render(q1));
    +    }
    +
    +    @Test
    +    public void testInnerSelect5() throws Exception {
    +        SelectQuery q1 = create.selectQuery();
    +        SelectQuery q2 = create.selectQuery();
    +
    +        q1.addFrom(TABLE1);
    +        q2.addFrom(TABLE2);
    +
    +        q2.addSelect(FIELD_ID2);
    +        q1.addConditions(FIELD_ID1.greaterThanAny(q2));
    +
    +        assertEquals("select \"TABLE1\".\"ID1\", \"TABLE1\".\"NAME1\", \"TABLE1\".\"DATE1\" from \"TABLE1\" where \"TABLE1\".\"ID1\" > any (select \"TABLE2\".\"ID2\" from \"TABLE2\")", r_refI().render(q1));
    +        assertEquals("select \"TABLE1\".\"ID1\", \"TABLE1\".\"NAME1\", \"TABLE1\".\"DATE1\" from \"TABLE1\" where \"TABLE1\".\"ID1\" > any (select \"TABLE2\".\"ID2\" from \"TABLE2\")", r_ref().render(q1));
    +    }
    +
    +    @Test
    +    public void testInnerSelect6() throws Exception {
    +        SelectQuery q1 = create.selectQuery();
    +        SelectQuery q2 = create.selectQuery();
    +
    +        q1.addFrom(TABLE1);
    +        q2.addFrom(TABLE2);
    +
    +        q2.addSelect(FIELD_ID2);
    +        q1.addConditions(exists(q2));
    +
    +        assertEquals("select \"TABLE1\".\"ID1\", \"TABLE1\".\"NAME1\", \"TABLE1\".\"DATE1\" from \"TABLE1\" where exists (select \"TABLE2\".\"ID2\" from \"TABLE2\")", r_refI().render(q1));
    +        assertEquals("select \"TABLE1\".\"ID1\", \"TABLE1\".\"NAME1\", \"TABLE1\".\"DATE1\" from \"TABLE1\" where exists (select \"TABLE2\".\"ID2\" from \"TABLE2\")", r_ref().render(q1));
    +    }
    +
    +    @Test
    +    public void testNamedParams() throws Exception {
    +        Query q1 = create.select(val(1)).from(TABLE1).where(FIELD_ID1.equal(val(2)));
    +        Query q2 = create.select(param("p1", 1)).from(TABLE1).where(FIELD_ID1.equal(param("p2", 2)));
    +        Query q3 = create.select(param("p1", 1)).from(TABLE1).where(FIELD_ID1.equal(2));
    +        Query q4 = create.select(val(1)).from(TABLE1).where(FIELD_ID1.equal(param("p2", 2)));
    +
    +        assertEquals("select 1 from \"TABLE1\" where \"TABLE1\".\"ID1\" = 2", r_refI().render(q1));
    +        assertEquals("select :1 from \"TABLE1\" where \"TABLE1\".\"ID1\" = :2", r_refP().render(q1));
    +        assertEquals("select ? from \"TABLE1\" where \"TABLE1\".\"ID1\" = ?", r_ref().render(q1));
    +
    +        assertEquals("select 1 from \"TABLE1\" where \"TABLE1\".\"ID1\" = 2", r_refI().render(q2));
    +        assertEquals("select :p1 from \"TABLE1\" where \"TABLE1\".\"ID1\" = :p2", r_refP().render(q2));
    +        assertEquals("select ? from \"TABLE1\" where \"TABLE1\".\"ID1\" = ?", r_ref().render(q2));
    +
    +        assertEquals("select 1 from \"TABLE1\" where \"TABLE1\".\"ID1\" = 2", r_refI().render(q3));
    +        assertEquals("select :p1 from \"TABLE1\" where \"TABLE1\".\"ID1\" = :2", r_refP().render(q3));
    +        assertEquals("select ? from \"TABLE1\" where \"TABLE1\".\"ID1\" = ?", r_ref().render(q3));
    +
    +        assertEquals("select 1 from \"TABLE1\" where \"TABLE1\".\"ID1\" = 2", r_refI().render(q4));
    +        assertEquals("select :1 from \"TABLE1\" where \"TABLE1\".\"ID1\" = :p2", r_refP().render(q4));
    +        assertEquals("select ? from \"TABLE1\" where \"TABLE1\".\"ID1\" = ?", r_ref().render(q4));
    +
    +        // Param / Val queries should be equal as toString() doesn't consider params
    +        assertEquals(q1, q2);
    +        assertEquals(q1, q3);
    +        assertEquals(q1, q4);
    +
    +        // Params
    +        Param<?> p11 = q1.getParam("1");
    +        Param<?> p21 = q2.getParam("p1");
    +        Param<?> p31 = q3.getParam("p1");
    +        Param<?> p41 = q4.getParam("1");
    +
    +        Param<?> p12 = q1.getParam("2");
    +        Param<?> p22 = q2.getParam("p2");
    +        Param<?> p32 = q3.getParam("2");
    +        Param<?> p42 = q4.getParam("p2");
    +
    +        assertEquals(Arrays.asList("1", "2"), new ArrayList<String>(q1.getParams().keySet()));
    +        assertEquals(Arrays.asList("p1", "p2"), new ArrayList<String>(q2.getParams().keySet()));
    +        assertEquals(Arrays.asList("p1", "2"), new ArrayList<String>(q3.getParams().keySet()));
    +        assertEquals(Arrays.asList("1", "p2"), new ArrayList<String>(q4.getParams().keySet()));
    +
    +        // Types
    +        assertEquals(Integer.class, p11.getType());
    +        assertEquals(Integer.class, p21.getType());
    +        assertEquals(Integer.class, p31.getType());
    +        assertEquals(Integer.class, p41.getType());
    +
    +        assertEquals(Integer.class, p12.getType());
    +        assertEquals(Integer.class, p22.getType());
    +        assertEquals(Integer.class, p32.getType());
    +        assertEquals(Integer.class, p42.getType());
    +
    +        // Values
    +        assertEquals(Integer.valueOf(1), p11.getValue());
    +        assertEquals(Integer.valueOf(1), p21.getValue());
    +        assertEquals(Integer.valueOf(1), p31.getValue());
    +        assertEquals(Integer.valueOf(1), p41.getValue());
    +
    +        assertEquals(Integer.valueOf(2), p12.getValue());
    +        assertEquals(Integer.valueOf(2), p22.getValue());
    +        assertEquals(Integer.valueOf(2), p32.getValue());
    +        assertEquals(Integer.valueOf(2), p42.getValue());
    +
    +        // Param replacement
    +        p11.setConverted(3);
    +        p21.setConverted(3);
    +        p31.setConverted(3);
    +        p41.setConverted(3);
    +
    +        p12.setConverted(4);
    +        p22.setConverted(4);
    +        p32.setConverted(4);
    +        p42.setConverted(4);
    +
    +        assertEquals("select 3 from \"TABLE1\" where \"TABLE1\".\"ID1\" = 4", r_refI().render(q1));
    +        assertEquals("select :1 from \"TABLE1\" where \"TABLE1\".\"ID1\" = :2", r_refP().render(q1));
    +        assertEquals("select ? from \"TABLE1\" where \"TABLE1\".\"ID1\" = ?", r_ref().render(q1));
    +
    +        assertEquals("select 3 from \"TABLE1\" where \"TABLE1\".\"ID1\" = 4", r_refI().render(q2));
    +        assertEquals("select :p1 from \"TABLE1\" where \"TABLE1\".\"ID1\" = :p2", r_refP().render(q2));
    +        assertEquals("select ? from \"TABLE1\" where \"TABLE1\".\"ID1\" = ?", r_ref().render(q2));
    +
    +        assertEquals("select 3 from \"TABLE1\" where \"TABLE1\".\"ID1\" = 4", r_refI().render(q3));
    +        assertEquals("select :p1 from \"TABLE1\" where \"TABLE1\".\"ID1\" = :2", r_refP().render(q3));
    +        assertEquals("select ? from \"TABLE1\" where \"TABLE1\".\"ID1\" = ?", r_ref().render(q3));
    +
    +        assertEquals("select 3 from \"TABLE1\" where \"TABLE1\".\"ID1\" = 4", r_refI().render(q4));
    +        assertEquals("select :1 from \"TABLE1\" where \"TABLE1\".\"ID1\" = :p2", r_refP().render(q4));
    +        assertEquals("select ? from \"TABLE1\" where \"TABLE1\".\"ID1\" = ?", r_ref().render(q4));
    +    }
    +
    +    @Test
    +    public void testRenderNameStyle() {
    +        Query q = create.select(val(1)).from(TABLE1).where(FIELD_ID1.equal(2));
    +
    +        RenderContext r_refI = r_refI();
    +        RenderContext r_refP = r_refP();
    +        RenderContext r_ref = r_ref();
    +
    +        r_refI.getSettings().setRenderNameStyle(RenderNameStyle.AS_IS);
    +        r_refP.getSettings().setRenderNameStyle(RenderNameStyle.AS_IS);
    +        r_ref.getSettings().setRenderNameStyle(RenderNameStyle.AS_IS);
    +
    +        assertEquals("select 1 from TABLE1 where TABLE1.ID1 = 2", r_refI.render(q));
    +        assertEquals("select :1 from TABLE1 where TABLE1.ID1 = :2", r_refP.render(q));
    +        assertEquals("select ? from TABLE1 where TABLE1.ID1 = ?", r_ref.render(q));
    +
    +        r_refI.getSettings().setRenderNameStyle(RenderNameStyle.LOWER);
    +        r_refP.getSettings().setRenderNameStyle(RenderNameStyle.LOWER);
    +        r_ref.getSettings().setRenderNameStyle(RenderNameStyle.LOWER);
    +
    +        assertEquals("select 1 from table1 where table1.id1 = 2", r_refI.render(q));
    +        assertEquals("select :1 from table1 where table1.id1 = :2", r_refP.render(q));
    +        assertEquals("select ? from table1 where table1.id1 = ?", r_ref.render(q));
    +
    +        r_refI.getSettings().setRenderNameStyle(RenderNameStyle.UPPER);
    +        r_refP.getSettings().setRenderNameStyle(RenderNameStyle.UPPER);
    +        r_ref.getSettings().setRenderNameStyle(RenderNameStyle.UPPER);
    +
    +        assertEquals("select 1 from TABLE1 where TABLE1.ID1 = 2", r_refI.render(q));
    +        assertEquals("select :1 from TABLE1 where TABLE1.ID1 = :2", r_refP.render(q));
    +        assertEquals("select ? from TABLE1 where TABLE1.ID1 = ?", r_ref.render(q));
    +
    +        r_refI.getSettings().setRenderNameStyle(RenderNameStyle.QUOTED);
    +        r_refP.getSettings().setRenderNameStyle(RenderNameStyle.QUOTED);
    +        r_ref.getSettings().setRenderNameStyle(RenderNameStyle.QUOTED);
    +
    +        assertEquals("select 1 from \"TABLE1\" where \"TABLE1\".\"ID1\" = 2", r_refI.render(q));
    +        assertEquals("select :1 from \"TABLE1\" where \"TABLE1\".\"ID1\" = :2", r_refP.render(q));
    +        assertEquals("select ? from \"TABLE1\" where \"TABLE1\".\"ID1\" = ?", r_ref.render(q));
    +    }
    +
    +    @Test
    +    public void testRenderKeywordStyle() {
    +        Query q = create.select(val(1)).from(TABLE1).where(FIELD_ID1.equal(2));
    +
    +        RenderContext r_refI = r_refI();
    +        RenderContext r_refP = r_refP();
    +        RenderContext r_ref = r_ref();
    +
    +        r_refI.getSettings().setRenderKeywordStyle(RenderKeywordStyle.UPPER);
    +        r_refP.getSettings().setRenderKeywordStyle(RenderKeywordStyle.UPPER);
    +        r_ref.getSettings().setRenderKeywordStyle(RenderKeywordStyle.UPPER);
    +
    +        assertEquals("SELECT 1 FROM \"TABLE1\" WHERE \"TABLE1\".\"ID1\" = 2", r_refI.render(q));
    +        assertEquals("SELECT :1 FROM \"TABLE1\" WHERE \"TABLE1\".\"ID1\" = :2", r_refP.render(q));
    +        assertEquals("SELECT ? FROM \"TABLE1\" WHERE \"TABLE1\".\"ID1\" = ?", r_ref.render(q));
    +
    +        r_refI.getSettings().setRenderKeywordStyle(RenderKeywordStyle.LOWER);
    +        r_refP.getSettings().setRenderKeywordStyle(RenderKeywordStyle.LOWER);
    +        r_ref.getSettings().setRenderKeywordStyle(RenderKeywordStyle.LOWER);
    +
    +        assertEquals("select 1 from \"TABLE1\" where \"TABLE1\".\"ID1\" = 2", r_refI.render(q));
    +        assertEquals("select :1 from \"TABLE1\" where \"TABLE1\".\"ID1\" = :2", r_refP.render(q));
    +        assertEquals("select ? from \"TABLE1\" where \"TABLE1\".\"ID1\" = ?", r_ref.render(q));
    +    }
    +
    +    @Test
    +    public void testYearToMonth() {
    +        for (int i = 0; i <= 5; i++) {
    +            intervalChecks(i * 12, new YearToMonth(i));
    +            intervalChecks(i * -12, new YearToMonth(i).neg());
    +            intervalChecks(i, new YearToMonth(0, i));
    +        }
    +    }
    +
    +    @Test
    +    public void testDayToSecond() {
    +        for (double i = -1394892834972.0; i <= 23487289374987.0; i += 283749827.3839293) {
    +            intervalChecks(i, DayToSecond.valueOf(i));
    +        }
    +
    +        for (int i = 0; i <= 5; i++) {
    +            intervalChecks(i * 1000 * 86400.0, new DayToSecond(i));
    +            intervalChecks(i * 1000 * 3600.0, new DayToSecond(0, i));
    +            intervalChecks(i * 1000 * 60.0, new DayToSecond(0, 0, i));
    +            intervalChecks(i * 1000, new DayToSecond(0, 0, 0, i));
    +            intervalChecks(i / 1000000.0, new DayToSecond(0, 0, 0, 0, i));
    +        }
    +    }
    +
    +    private <I extends Number & Interval> void intervalChecks(Number expected, I interval) {
    +        // Allow some floating point arithmetic inaccuracy
    +        assertTrue(Math.abs(Double.doubleToLongBits(expected.doubleValue()) - Double.doubleToLongBits(interval.doubleValue())) < 50);
    +        assertTrue(Math.abs(Float.floatToIntBits(expected.floatValue()) - Float.floatToIntBits(interval.floatValue())) < 5);
    +
    +        assertEquals(expected.byteValue(), interval.byteValue());
    +        assertEquals(expected.shortValue(), interval.shortValue());
    +        assertEquals(expected.intValue(), interval.intValue());
    +        assertEquals(expected.longValue(), interval.longValue());
    +
    +        if (interval instanceof YearToMonth) {
    +            YearToMonth y = YearToMonth.valueOf(interval.toString());
    +            assertEquals(interval, y);
    +        }
    +        else {
    +            DayToSecond m = DayToSecond.valueOf(interval.toString());
    +            assertEquals(interval, m);
    +            assertEquals(m.getDays(),
    +                m.getSign() * (int) m.getTotalDays());
    +            assertEquals(m.getDays() * 24 + m.getHours(),
    +                m.getSign() * (int) m.getTotalHours());
    +            assertEquals(m.getDays() * 24 * 60 + m.getHours() * 60 + m.getMinutes(),
    +                m.getSign() * (int) m.getTotalMinutes());
    +        }
    +    }
    +}
    
    +
  • Check out the codebase from sourceforge: SVN. GitHub is also available but may be incomplete
  • +
  • Import the five jOOQ projects into Eclipse
  • +
  • Use the Eclipse formatting settings that have been checked in with the projects. Keeps the code nice and clean. Your code should not change (not much), if formatted with Ctrl-Shift-F. But don't format jOOQ DSL query code!
  • +
  • Write code that does not need comments. Otherwise write comments where necessary. And NO Javadoc for self-explanatory things (e.g. getters/setters)
  • +
  • Keep code DRY!
  • +
  • Add specification (interfaces, API)
  • +
  • Add unit tests
  • +
  • Add integration tests
  • +
  • Add functionality (yes, it's called test-driven development. You'll love it!)
  • +
  • Run unit tests and database integration tests. Ideally, you will test your code against all supported databases
  • +
  • Send me your changes directly to the user group or in a trac ticket.
  • +
  • Send your changes as an Eclipse-compatible .patch file (or the sum of the modified Java classes). Ideally, the .patch file can be applied to the latest version of jOOQ on the SVN trunk.
  • +
  • I'll review, audit your changes and it goes into the repository with the next release, if I'm happy :-) AND: you'll make it to the hall of fame. Provide me with links to your webpage / blog / etc, if you would like to see that mentioned.
  • +
  • If you are a committer on sourceforge, please commit with the following comment scheme:
    [#Trac-ID] Trac-Ticket-Title - Your specific comment
  • +